From a4ce93c6b85a9baf18b481dac8d11d535de3398d Mon Sep 17 00:00:00 2001 From: Roy Marmelstein Date: Thu, 14 Jan 2016 22:32:30 +0100 Subject: [PATCH] Updating minizip --- Zip.xcodeproj/project.pbxproj | 188 ++-- Zip/minizip/ChangeLog | 140 +++ Zip/minizip/LICENSE | 17 + Zip/minizip/Makefile | 37 + Zip/minizip/Makefile.am | 43 + Zip/minizip/README.md | 81 ++ Zip/minizip/aes/Makefile | 19 + Zip/{ => minizip}/aes/aes.h | 396 +++---- Zip/{ => minizip}/aes/aes_via_ace.h | 1082 ++++++++++---------- Zip/{ => minizip}/aes/aescrypt.c | 588 +++++------ Zip/{ => minizip}/aes/aeskey.c | 1096 ++++++++++---------- Zip/{ => minizip}/aes/aesopt.h | 1478 +++++++++++++-------------- Zip/{ => minizip}/aes/aestab.c | 782 +++++++------- Zip/{ => minizip}/aes/aestab.h | 346 +++---- Zip/{ => minizip}/aes/brg_endian.h | 252 ++--- Zip/{ => minizip}/aes/brg_types.h | 438 ++++---- Zip/{ => minizip}/aes/entropy.c | 2 +- Zip/{ => minizip}/aes/entropy.h | 30 +- Zip/{ => minizip}/aes/fileenc.c | 287 +++--- Zip/{ => minizip}/aes/fileenc.h | 242 ++--- Zip/{ => minizip}/aes/hmac.c | 290 +++--- Zip/{ => minizip}/aes/hmac.h | 206 ++-- Zip/{ => minizip}/aes/prng.c | 310 +++--- Zip/{ => minizip}/aes/prng.h | 164 +-- Zip/{ => minizip}/aes/pwd2key.c | 386 +++---- Zip/{ => minizip}/aes/pwd2key.h | 114 +-- Zip/{ => minizip}/aes/sha1.c | 516 +++++----- Zip/{ => minizip}/aes/sha1.h | 146 +-- Zip/minizip/configure.ac | 32 + Zip/minizip/crypt.h | 21 +- Zip/minizip/ioapi.c | 6 +- Zip/minizip/ioapi.h | 2 +- Zip/minizip/ioapi_buf.c | 514 ++++++++++ Zip/minizip/ioapi_buf.h | 54 + Zip/minizip/ioapi_mem.c | 192 ++++ Zip/minizip/ioapi_mem.h | 51 + Zip/minizip/iowin32.c | 585 +++++++++++ Zip/minizip/iowin32.h | 33 + Zip/minizip/miniunz.c | 573 +++++++++++ Zip/minizip/miniunz.vcproj | 394 +++++++ Zip/minizip/minizip.c | 439 ++++++++ Zip/minizip/minizip.pc.in | 12 + Zip/minizip/minizip.sln | 26 + Zip/minizip/minizip.vcproj | 394 +++++++ Zip/minizip/unzip.c | 906 ++++++++-------- Zip/minizip/unzip.h | 83 +- Zip/minizip/zip.c | 941 +++++++++-------- Zip/minizip/zip.h | 12 +- examples/Sample/Sample/master.zip | Bin 1871650 -> 100881 bytes 49 files changed, 9433 insertions(+), 5513 deletions(-) create mode 100755 Zip/minizip/ChangeLog create mode 100755 Zip/minizip/LICENSE create mode 100755 Zip/minizip/Makefile create mode 100755 Zip/minizip/Makefile.am create mode 100755 Zip/minizip/README.md create mode 100755 Zip/minizip/aes/Makefile rename Zip/{ => minizip}/aes/aes.h (97%) rename Zip/{ => minizip}/aes/aes_via_ace.h (96%) rename Zip/{ => minizip}/aes/aescrypt.c (97%) rename Zip/{ => minizip}/aes/aeskey.c (96%) rename Zip/{ => minizip}/aes/aesopt.h (97%) rename Zip/{ => minizip}/aes/aestab.c (95%) rename Zip/{ => minizip}/aes/aestab.h (96%) rename Zip/{ => minizip}/aes/brg_endian.h (97%) rename Zip/{ => minizip}/aes/brg_types.h (97%) rename Zip/{ => minizip}/aes/entropy.c (95%) rename Zip/{ => minizip}/aes/entropy.h (92%) rename Zip/{ => minizip}/aes/fileenc.c (66%) rename Zip/{ => minizip}/aes/fileenc.h (97%) rename Zip/{ => minizip}/aes/hmac.c (97%) rename Zip/{ => minizip}/aes/hmac.h (96%) rename Zip/{ => minizip}/aes/prng.c (97%) rename Zip/{ => minizip}/aes/prng.h (97%) rename Zip/{ => minizip}/aes/pwd2key.c (96%) rename Zip/{ => minizip}/aes/pwd2key.h (97%) rename Zip/{ => minizip}/aes/sha1.c (97%) rename Zip/{ => minizip}/aes/sha1.h (96%) create mode 100755 Zip/minizip/configure.ac create mode 100755 Zip/minizip/ioapi_buf.c create mode 100755 Zip/minizip/ioapi_buf.h create mode 100755 Zip/minizip/ioapi_mem.c create mode 100755 Zip/minizip/ioapi_mem.h create mode 100755 Zip/minizip/iowin32.c create mode 100755 Zip/minizip/iowin32.h create mode 100755 Zip/minizip/miniunz.c create mode 100755 Zip/minizip/miniunz.vcproj create mode 100755 Zip/minizip/minizip.c create mode 100755 Zip/minizip/minizip.pc.in create mode 100755 Zip/minizip/minizip.sln create mode 100755 Zip/minizip/minizip.vcproj diff --git a/Zip.xcodeproj/project.pbxproj b/Zip.xcodeproj/project.pbxproj index a1edad5..43283b9 100644 --- a/Zip.xcodeproj/project.pbxproj +++ b/Zip.xcodeproj/project.pbxproj @@ -7,6 +7,28 @@ objects = { /* Begin PBXBuildFile section */ + 3430BB261C484A65001143B5 /* aes.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430BB101C484A65001143B5 /* aes.h */; }; + 3430BB271C484A65001143B5 /* aes_via_ace.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430BB111C484A65001143B5 /* aes_via_ace.h */; }; + 3430BB281C484A65001143B5 /* aescrypt.c in Sources */ = {isa = PBXBuildFile; fileRef = 3430BB121C484A65001143B5 /* aescrypt.c */; }; + 3430BB291C484A65001143B5 /* aeskey.c in Sources */ = {isa = PBXBuildFile; fileRef = 3430BB131C484A65001143B5 /* aeskey.c */; }; + 3430BB2A1C484A65001143B5 /* aesopt.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430BB141C484A65001143B5 /* aesopt.h */; }; + 3430BB2B1C484A65001143B5 /* aestab.c in Sources */ = {isa = PBXBuildFile; fileRef = 3430BB151C484A65001143B5 /* aestab.c */; }; + 3430BB2C1C484A65001143B5 /* aestab.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430BB161C484A65001143B5 /* aestab.h */; }; + 3430BB2D1C484A65001143B5 /* brg_endian.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430BB171C484A65001143B5 /* brg_endian.h */; }; + 3430BB2E1C484A65001143B5 /* brg_types.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430BB181C484A65001143B5 /* brg_types.h */; }; + 3430BB2F1C484A65001143B5 /* entropy.c in Sources */ = {isa = PBXBuildFile; fileRef = 3430BB191C484A65001143B5 /* entropy.c */; }; + 3430BB301C484A65001143B5 /* entropy.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430BB1A1C484A65001143B5 /* entropy.h */; }; + 3430BB311C484A65001143B5 /* fileenc.c in Sources */ = {isa = PBXBuildFile; fileRef = 3430BB1B1C484A65001143B5 /* fileenc.c */; }; + 3430BB321C484A65001143B5 /* fileenc.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430BB1C1C484A65001143B5 /* fileenc.h */; }; + 3430BB331C484A65001143B5 /* hmac.c in Sources */ = {isa = PBXBuildFile; fileRef = 3430BB1D1C484A65001143B5 /* hmac.c */; }; + 3430BB341C484A65001143B5 /* hmac.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430BB1E1C484A65001143B5 /* hmac.h */; }; + 3430BB351C484A65001143B5 /* Makefile in Sources */ = {isa = PBXBuildFile; fileRef = 3430BB1F1C484A65001143B5 /* Makefile */; }; + 3430BB361C484A65001143B5 /* prng.c in Sources */ = {isa = PBXBuildFile; fileRef = 3430BB201C484A65001143B5 /* prng.c */; }; + 3430BB371C484A65001143B5 /* prng.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430BB211C484A65001143B5 /* prng.h */; }; + 3430BB381C484A65001143B5 /* pwd2key.c in Sources */ = {isa = PBXBuildFile; fileRef = 3430BB221C484A65001143B5 /* pwd2key.c */; }; + 3430BB391C484A65001143B5 /* pwd2key.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430BB231C484A65001143B5 /* pwd2key.h */; }; + 3430BB3A1C484A65001143B5 /* sha1.c in Sources */ = {isa = PBXBuildFile; fileRef = 3430BB241C484A65001143B5 /* sha1.c */; }; + 3430BB3B1C484A65001143B5 /* sha1.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430BB251C484A65001143B5 /* sha1.h */; }; 3430F6201C45C805007473A6 /* libz.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = 3430F61F1C45C805007473A6 /* libz.tbd */; }; 3430F62D1C45C851007473A6 /* crypt.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430F6221C45C851007473A6 /* crypt.h */; }; 3430F62E1C45C851007473A6 /* include.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430F6231C45C851007473A6 /* include.h */; }; @@ -19,27 +41,6 @@ 3430F6351C45C851007473A6 /* zip.c in Sources */ = {isa = PBXBuildFile; fileRef = 3430F62B1C45C851007473A6 /* zip.c */; }; 3430F6361C45C851007473A6 /* zip.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430F62C1C45C851007473A6 /* zip.h */; }; 3430F6381C45C89A007473A6 /* Common.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430F6371C45C89A007473A6 /* Common.h */; }; - 3430F64F1C45C8AD007473A6 /* aes.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430F63A1C45C8AD007473A6 /* aes.h */; }; - 3430F6501C45C8AD007473A6 /* aes_via_ace.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430F63B1C45C8AD007473A6 /* aes_via_ace.h */; }; - 3430F6511C45C8AD007473A6 /* aescrypt.c in Sources */ = {isa = PBXBuildFile; fileRef = 3430F63C1C45C8AD007473A6 /* aescrypt.c */; }; - 3430F6521C45C8AD007473A6 /* aeskey.c in Sources */ = {isa = PBXBuildFile; fileRef = 3430F63D1C45C8AD007473A6 /* aeskey.c */; }; - 3430F6531C45C8AD007473A6 /* aesopt.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430F63E1C45C8AD007473A6 /* aesopt.h */; }; - 3430F6541C45C8AD007473A6 /* aestab.c in Sources */ = {isa = PBXBuildFile; fileRef = 3430F63F1C45C8AD007473A6 /* aestab.c */; }; - 3430F6551C45C8AD007473A6 /* aestab.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430F6401C45C8AD007473A6 /* aestab.h */; }; - 3430F6561C45C8AD007473A6 /* brg_endian.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430F6411C45C8AD007473A6 /* brg_endian.h */; }; - 3430F6571C45C8AD007473A6 /* brg_types.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430F6421C45C8AD007473A6 /* brg_types.h */; }; - 3430F6581C45C8AD007473A6 /* entropy.c in Sources */ = {isa = PBXBuildFile; fileRef = 3430F6431C45C8AD007473A6 /* entropy.c */; }; - 3430F6591C45C8AD007473A6 /* entropy.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430F6441C45C8AD007473A6 /* entropy.h */; }; - 3430F65A1C45C8AD007473A6 /* fileenc.c in Sources */ = {isa = PBXBuildFile; fileRef = 3430F6451C45C8AD007473A6 /* fileenc.c */; }; - 3430F65B1C45C8AD007473A6 /* fileenc.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430F6461C45C8AD007473A6 /* fileenc.h */; }; - 3430F65C1C45C8AD007473A6 /* hmac.c in Sources */ = {isa = PBXBuildFile; fileRef = 3430F6471C45C8AD007473A6 /* hmac.c */; }; - 3430F65D1C45C8AD007473A6 /* hmac.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430F6481C45C8AD007473A6 /* hmac.h */; }; - 3430F65E1C45C8AD007473A6 /* prng.c in Sources */ = {isa = PBXBuildFile; fileRef = 3430F6491C45C8AD007473A6 /* prng.c */; }; - 3430F65F1C45C8AD007473A6 /* prng.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430F64A1C45C8AD007473A6 /* prng.h */; }; - 3430F6601C45C8AD007473A6 /* pwd2key.c in Sources */ = {isa = PBXBuildFile; fileRef = 3430F64B1C45C8AD007473A6 /* pwd2key.c */; }; - 3430F6611C45C8AD007473A6 /* pwd2key.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430F64C1C45C8AD007473A6 /* pwd2key.h */; }; - 3430F6621C45C8AD007473A6 /* sha1.c in Sources */ = {isa = PBXBuildFile; fileRef = 3430F64D1C45C8AD007473A6 /* sha1.c */; }; - 3430F6631C45C8AD007473A6 /* sha1.h in Headers */ = {isa = PBXBuildFile; fileRef = 3430F64E1C45C8AD007473A6 /* sha1.h */; }; 347E3A781C1DFFB500A11FD3 /* Zip.h in Headers */ = {isa = PBXBuildFile; fileRef = 347E3A771C1DFFB500A11FD3 /* Zip.h */; settings = {ATTRIBUTES = (Public, ); }; }; 347E3A7F1C1DFFB500A11FD3 /* Zip.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 347E3A741C1DFFB500A11FD3 /* Zip.framework */; }; 347E3A841C1DFFB500A11FD3 /* ZipTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 347E3A831C1DFFB500A11FD3 /* ZipTests.swift */; }; @@ -57,6 +58,28 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ + 3430BB101C484A65001143B5 /* aes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = aes.h; sourceTree = ""; }; + 3430BB111C484A65001143B5 /* aes_via_ace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = aes_via_ace.h; sourceTree = ""; }; + 3430BB121C484A65001143B5 /* aescrypt.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = aescrypt.c; sourceTree = ""; }; + 3430BB131C484A65001143B5 /* aeskey.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = aeskey.c; sourceTree = ""; }; + 3430BB141C484A65001143B5 /* aesopt.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = aesopt.h; sourceTree = ""; }; + 3430BB151C484A65001143B5 /* aestab.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = aestab.c; sourceTree = ""; }; + 3430BB161C484A65001143B5 /* aestab.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = aestab.h; sourceTree = ""; }; + 3430BB171C484A65001143B5 /* brg_endian.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = brg_endian.h; sourceTree = ""; }; + 3430BB181C484A65001143B5 /* brg_types.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = brg_types.h; sourceTree = ""; }; + 3430BB191C484A65001143B5 /* entropy.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = entropy.c; sourceTree = ""; }; + 3430BB1A1C484A65001143B5 /* entropy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = entropy.h; sourceTree = ""; }; + 3430BB1B1C484A65001143B5 /* fileenc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = fileenc.c; sourceTree = ""; }; + 3430BB1C1C484A65001143B5 /* fileenc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fileenc.h; sourceTree = ""; }; + 3430BB1D1C484A65001143B5 /* hmac.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = hmac.c; sourceTree = ""; }; + 3430BB1E1C484A65001143B5 /* hmac.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hmac.h; sourceTree = ""; }; + 3430BB1F1C484A65001143B5 /* Makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = Makefile; sourceTree = ""; }; + 3430BB201C484A65001143B5 /* prng.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = prng.c; sourceTree = ""; }; + 3430BB211C484A65001143B5 /* prng.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = prng.h; sourceTree = ""; }; + 3430BB221C484A65001143B5 /* pwd2key.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = pwd2key.c; sourceTree = ""; }; + 3430BB231C484A65001143B5 /* pwd2key.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = pwd2key.h; sourceTree = ""; }; + 3430BB241C484A65001143B5 /* sha1.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sha1.c; sourceTree = ""; }; + 3430BB251C484A65001143B5 /* sha1.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sha1.h; sourceTree = ""; }; 3430F61F1C45C805007473A6 /* libz.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = usr/lib/libz.tbd; sourceTree = SDKROOT; }; 3430F6221C45C851007473A6 /* crypt.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = crypt.h; sourceTree = ""; }; 3430F6231C45C851007473A6 /* include.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = include.h; sourceTree = ""; }; @@ -70,27 +93,6 @@ 3430F62B1C45C851007473A6 /* zip.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = zip.c; sourceTree = ""; }; 3430F62C1C45C851007473A6 /* zip.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = zip.h; sourceTree = ""; }; 3430F6371C45C89A007473A6 /* Common.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Common.h; sourceTree = ""; }; - 3430F63A1C45C8AD007473A6 /* aes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = aes.h; sourceTree = ""; }; - 3430F63B1C45C8AD007473A6 /* aes_via_ace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = aes_via_ace.h; sourceTree = ""; }; - 3430F63C1C45C8AD007473A6 /* aescrypt.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = aescrypt.c; sourceTree = ""; }; - 3430F63D1C45C8AD007473A6 /* aeskey.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = aeskey.c; sourceTree = ""; }; - 3430F63E1C45C8AD007473A6 /* aesopt.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = aesopt.h; sourceTree = ""; }; - 3430F63F1C45C8AD007473A6 /* aestab.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = aestab.c; sourceTree = ""; }; - 3430F6401C45C8AD007473A6 /* aestab.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = aestab.h; sourceTree = ""; }; - 3430F6411C45C8AD007473A6 /* brg_endian.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = brg_endian.h; sourceTree = ""; }; - 3430F6421C45C8AD007473A6 /* brg_types.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = brg_types.h; sourceTree = ""; }; - 3430F6431C45C8AD007473A6 /* entropy.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = entropy.c; sourceTree = ""; }; - 3430F6441C45C8AD007473A6 /* entropy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = entropy.h; sourceTree = ""; }; - 3430F6451C45C8AD007473A6 /* fileenc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = fileenc.c; sourceTree = ""; }; - 3430F6461C45C8AD007473A6 /* fileenc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = fileenc.h; sourceTree = ""; }; - 3430F6471C45C8AD007473A6 /* hmac.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = hmac.c; sourceTree = ""; }; - 3430F6481C45C8AD007473A6 /* hmac.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = hmac.h; sourceTree = ""; }; - 3430F6491C45C8AD007473A6 /* prng.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = prng.c; sourceTree = ""; }; - 3430F64A1C45C8AD007473A6 /* prng.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = prng.h; sourceTree = ""; }; - 3430F64B1C45C8AD007473A6 /* pwd2key.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = pwd2key.c; sourceTree = ""; }; - 3430F64C1C45C8AD007473A6 /* pwd2key.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = pwd2key.h; sourceTree = ""; }; - 3430F64D1C45C8AD007473A6 /* sha1.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = sha1.c; sourceTree = ""; }; - 3430F64E1C45C8AD007473A6 /* sha1.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = sha1.h; sourceTree = ""; }; 347E3A741C1DFFB500A11FD3 /* Zip.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Zip.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 347E3A771C1DFFB500A11FD3 /* Zip.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = Zip.h; sourceTree = ""; }; 347E3A791C1DFFB500A11FD3 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; @@ -120,9 +122,39 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ + 3430BB0F1C484A65001143B5 /* aes */ = { + isa = PBXGroup; + children = ( + 3430BB101C484A65001143B5 /* aes.h */, + 3430BB111C484A65001143B5 /* aes_via_ace.h */, + 3430BB121C484A65001143B5 /* aescrypt.c */, + 3430BB131C484A65001143B5 /* aeskey.c */, + 3430BB141C484A65001143B5 /* aesopt.h */, + 3430BB151C484A65001143B5 /* aestab.c */, + 3430BB161C484A65001143B5 /* aestab.h */, + 3430BB171C484A65001143B5 /* brg_endian.h */, + 3430BB181C484A65001143B5 /* brg_types.h */, + 3430BB191C484A65001143B5 /* entropy.c */, + 3430BB1A1C484A65001143B5 /* entropy.h */, + 3430BB1B1C484A65001143B5 /* fileenc.c */, + 3430BB1C1C484A65001143B5 /* fileenc.h */, + 3430BB1D1C484A65001143B5 /* hmac.c */, + 3430BB1E1C484A65001143B5 /* hmac.h */, + 3430BB1F1C484A65001143B5 /* Makefile */, + 3430BB201C484A65001143B5 /* prng.c */, + 3430BB211C484A65001143B5 /* prng.h */, + 3430BB221C484A65001143B5 /* pwd2key.c */, + 3430BB231C484A65001143B5 /* pwd2key.h */, + 3430BB241C484A65001143B5 /* sha1.c */, + 3430BB251C484A65001143B5 /* sha1.h */, + ); + path = aes; + sourceTree = ""; + }; 3430F6211C45C83F007473A6 /* minizip */ = { isa = PBXGroup; children = ( + 3430BB0F1C484A65001143B5 /* aes */, 3430F6371C45C89A007473A6 /* Common.h */, 3430F6221C45C851007473A6 /* crypt.h */, 3430F6231C45C851007473A6 /* include.h */, @@ -139,34 +171,6 @@ path = minizip; sourceTree = ""; }; - 3430F6391C45C8AD007473A6 /* aes */ = { - isa = PBXGroup; - children = ( - 3430F63A1C45C8AD007473A6 /* aes.h */, - 3430F63B1C45C8AD007473A6 /* aes_via_ace.h */, - 3430F63C1C45C8AD007473A6 /* aescrypt.c */, - 3430F63D1C45C8AD007473A6 /* aeskey.c */, - 3430F63E1C45C8AD007473A6 /* aesopt.h */, - 3430F63F1C45C8AD007473A6 /* aestab.c */, - 3430F6401C45C8AD007473A6 /* aestab.h */, - 3430F6411C45C8AD007473A6 /* brg_endian.h */, - 3430F6421C45C8AD007473A6 /* brg_types.h */, - 3430F6431C45C8AD007473A6 /* entropy.c */, - 3430F6441C45C8AD007473A6 /* entropy.h */, - 3430F6451C45C8AD007473A6 /* fileenc.c */, - 3430F6461C45C8AD007473A6 /* fileenc.h */, - 3430F6471C45C8AD007473A6 /* hmac.c */, - 3430F6481C45C8AD007473A6 /* hmac.h */, - 3430F6491C45C8AD007473A6 /* prng.c */, - 3430F64A1C45C8AD007473A6 /* prng.h */, - 3430F64B1C45C8AD007473A6 /* pwd2key.c */, - 3430F64C1C45C8AD007473A6 /* pwd2key.h */, - 3430F64D1C45C8AD007473A6 /* sha1.c */, - 3430F64E1C45C8AD007473A6 /* sha1.h */, - ); - path = aes; - sourceTree = ""; - }; 347E3A6A1C1DFFB500A11FD3 = { isa = PBXGroup; children = ( @@ -189,7 +193,6 @@ 347E3A761C1DFFB500A11FD3 /* Zip */ = { isa = PBXGroup; children = ( - 3430F6391C45C8AD007473A6 /* aes */, 3430F6211C45C83F007473A6 /* minizip */, 347E3A771C1DFFB500A11FD3 /* Zip.h */, 347E3A791C1DFFB500A11FD3 /* Info.plist */, @@ -214,25 +217,25 @@ isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 3430F65D1C45C8AD007473A6 /* hmac.h in Headers */, - 3430F65F1C45C8AD007473A6 /* prng.h in Headers */, - 3430F6561C45C8AD007473A6 /* brg_endian.h in Headers */, + 3430BB341C484A65001143B5 /* hmac.h in Headers */, + 3430BB371C484A65001143B5 /* prng.h in Headers */, + 3430BB2D1C484A65001143B5 /* brg_endian.h in Headers */, 347E3A781C1DFFB500A11FD3 /* Zip.h in Headers */, 3430F6361C45C851007473A6 /* zip.h in Headers */, - 3430F6631C45C8AD007473A6 /* sha1.h in Headers */, - 3430F6551C45C8AD007473A6 /* aestab.h in Headers */, + 3430BB3B1C484A65001143B5 /* sha1.h in Headers */, + 3430BB2C1C484A65001143B5 /* aestab.h in Headers */, 3430F62D1C45C851007473A6 /* crypt.h in Headers */, - 3430F65B1C45C8AD007473A6 /* fileenc.h in Headers */, + 3430BB321C484A65001143B5 /* fileenc.h in Headers */, 3430F62E1C45C851007473A6 /* include.h in Headers */, 3430F6341C45C851007473A6 /* unzip.h in Headers */, - 3430F6531C45C8AD007473A6 /* aesopt.h in Headers */, - 3430F6591C45C8AD007473A6 /* entropy.h in Headers */, + 3430BB2A1C484A65001143B5 /* aesopt.h in Headers */, + 3430BB301C484A65001143B5 /* entropy.h in Headers */, 3430F6301C45C851007473A6 /* ioapi.h in Headers */, - 3430F64F1C45C8AD007473A6 /* aes.h in Headers */, - 3430F6501C45C8AD007473A6 /* aes_via_ace.h in Headers */, - 3430F6611C45C8AD007473A6 /* pwd2key.h in Headers */, + 3430BB261C484A65001143B5 /* aes.h in Headers */, + 3430BB271C484A65001143B5 /* aes_via_ace.h in Headers */, + 3430BB391C484A65001143B5 /* pwd2key.h in Headers */, 3430F6321C45C851007473A6 /* mztools.h in Headers */, - 3430F6571C45C8AD007473A6 /* brg_types.h in Headers */, + 3430BB2E1C484A65001143B5 /* brg_types.h in Headers */, 3430F6381C45C89A007473A6 /* Common.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; @@ -334,20 +337,21 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 3430F6621C45C8AD007473A6 /* sha1.c in Sources */, - 3430F65E1C45C8AD007473A6 /* prng.c in Sources */, - 3430F65C1C45C8AD007473A6 /* hmac.c in Sources */, + 3430BB3A1C484A65001143B5 /* sha1.c in Sources */, + 3430BB361C484A65001143B5 /* prng.c in Sources */, + 3430BB291C484A65001143B5 /* aeskey.c in Sources */, + 3430BB2B1C484A65001143B5 /* aestab.c in Sources */, 3430F62F1C45C851007473A6 /* ioapi.c in Sources */, 3430F6331C45C851007473A6 /* unzip.c in Sources */, 347E3AD81C1E04C900A11FD3 /* Zip.swift in Sources */, - 3430F6581C45C8AD007473A6 /* entropy.c in Sources */, - 3430F6521C45C8AD007473A6 /* aeskey.c in Sources */, - 3430F6541C45C8AD007473A6 /* aestab.c in Sources */, + 3430BB331C484A65001143B5 /* hmac.c in Sources */, + 3430BB351C484A65001143B5 /* Makefile in Sources */, + 3430BB2F1C484A65001143B5 /* entropy.c in Sources */, 3430F6351C45C851007473A6 /* zip.c in Sources */, + 3430BB281C484A65001143B5 /* aescrypt.c in Sources */, + 3430BB311C484A65001143B5 /* fileenc.c in Sources */, + 3430BB381C484A65001143B5 /* pwd2key.c in Sources */, 3430F6311C45C851007473A6 /* mztools.c in Sources */, - 3430F6511C45C8AD007473A6 /* aescrypt.c in Sources */, - 3430F6601C45C8AD007473A6 /* pwd2key.c in Sources */, - 3430F65A1C45C8AD007473A6 /* fileenc.c in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/Zip/minizip/ChangeLog b/Zip/minizip/ChangeLog new file mode 100755 index 0000000..7cdefb5 --- /dev/null +++ b/Zip/minizip/ChangeLog @@ -0,0 +1,140 @@ +More changes since 1.1 +- Added support for AE-2 zip files +- Fixed error in AE-1 not testing CRC32 + + Credits + + Steven Christy + +Changes since 1.1 +- Added PKZIP spanning support +- Added AES encryption support +- Added I/O buffering +- Clean up & changed unzLocateFile to support custom comparison function +- Clean up, removed zipRemoveExtraInfoBlock + + Credits + + Nathan Moinvaziri + +Change in 1.1 +- Added ZIP64 support for unzip ( by Even Rouault ) +- Added ZIP64 support for zip ( by Mathias Svensson ) +- Reverted some changed that Even Rouault did. +- Bunch of patches received from Gulles Vollant that he received for MiniZip from various users. +- Added unzip patch for BZIP Compression method (patch create by Daniel Borca) +- Added BZIP Compress method for zip +- Did some refactoring and code cleanup + + Credits + + Gilles Vollant - Original MiniZip author + Even Rouault - ZIP64 unzip Support + + 2007-2008 + - Addition of cpl_unzGetCurrentFileZStreamPos + - Decoration of symbol names unz* -> cpl_unz* + - Remove old C style function prototypes + - Add unzip support for ZIP64 + + Daniel Borca - BZip Compression method support in unzip + Mathias Svensson - ZIP64 zip support ( http://result42.com ) + + Oct-2009 unzip.c + - Removed cpl_* from symbol names + - Fixed problem if uncompressed size was > 4G and compressed size was <4G + should only read the compressed/uncompressed size from the Zip64 format if + the size from normal header was 0xffffffff + - Applied some bug fixes from patches received from Gilles Vollant + - Applied support to unzip files with compression method BZIP2 (bzip2 lib is required) + Patch created by Daniel Borca + + Oct-2009 zip.c + - Remove old C style function prototypes + - Added Zip64 Support when creating new file archives + - Did some code cleanup and refactoring to get better overview of some functions. + - Added zipRemoveExtraInfoBlock to strip extra field data from its ZIP64 data + It is used when recreting zip archive with RAW when deleting items from a zip. + ZIP64 data is automaticly added to items that needs it, and existing ZIP64 + data need to be removed. + - Added support for BZIP2 as compression mode (bzip2 lib is required) + + Oct-2009 ioapi.x + - Defined ZPOS64_T to fpos_t on windows and u_int64_t on linux. + - Change to fseeko64, ftello64 and fopen64 so large files would work on linux. + More if/def section may be needed to support other platforms + - Defined fxxxx64 calls to normal fopen/ftell/fseek so they would compile on windows. + (but you should use iowin32.c for windows instead) + +Change in 1.01e (12 feb 05) +- Fix in zipOpen2 for globalcomment (Rolf Kalbermatter) +- Fix possible memory leak in unzip.c (Zoran Stevanovic) + +Change in 1.01b (20 may 04) +- Integrate patch from Debian package (Mark Brown) +- Add tools mztools from Xavier Roche + +Change in 1.01 (8 may 04) +- Fix buffer overrun risk in unzip.c (Xavier Roche) +- Fix a minor buffer insecurity in minizip.c (Mike Whittaker) + +Change in 1.00: (10 sept 03) +- Rename to 1.00 +- Cosmetic code change + +Change in 0.22: (19 May 03) +- Crypting support (unless you define NOCRYPT) +- Append file in existing zipfile + +Change in 0.21: (10 Mar 03) +- Bug fixes + +Change in 0.17: (27 Jan 02) +- Bug fixes + +Change in 0.16: (19 Jan 02) +- Support of ioapi for virtualize zip file access + +Change in 0.15: (19 Mar 98) +- Fix memory leak in minizip.c + +Change in 0.14: (10 Mar 98) +- Fix bugs in minizip.c sample for zipping big file +- Fix problem in month in date handling +- Fix bug in unzlocal_GetCurrentFileInfoInternal in unzip.c for comment handling + +Change in 0.13: (6 Mar 98) +- Fix bugs in zip.c +- Add real minizip sample + +Change in 0.12: (4 Mar 98) +- Add zip.c and zip.h for creates .zip file +- Fix change_file_date in miniunz.c for Unix (Jean-loup Gailly) +- Fix miniunz.c for file without specific record for directory + +Change in 0.11: (3 Mar 98) +- Fix bug in unzGetCurrentFileInfo for get extra field and comment +- Enhance miniunz sample, remove the bad unztst.c sample + +Change in 0.10: (2 Mar 98) +- Fix bug in unzReadCurrentFile +- Rename unzip* to unz* function and structure +- Remove Windows-like hungary notation variable name +- Modify some structure in unzip.h +- Add somes comment in source +- Remove unzipGetcCurrentFile function +- Replace ZUNZEXPORT by ZEXPORT +- Add unzGetLocalExtrafield for get the local extrafield info +- Add a new sample, miniunz.c + +Change in 0.4: (25 Feb 98) +- Suppress the type unzipFileInZip. + Only on file in the zipfile can be open at the same time +- Fix somes typo in code +- Added tm_unz structure in unzip_file_info (date/time in readable format) + +Change unknown? +- Added unzGetOffset (RX '2004) +- Added unzGetFilePos & unzGoToFilePos (Ryan Haksi) +- Added unzGetCurrentFileZStreamPos64 (GDAL) + diff --git a/Zip/minizip/LICENSE b/Zip/minizip/LICENSE new file mode 100755 index 0000000..086295a --- /dev/null +++ b/Zip/minizip/LICENSE @@ -0,0 +1,17 @@ +Condition of use and distribution are the same as zlib: + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgement in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. \ No newline at end of file diff --git a/Zip/minizip/Makefile b/Zip/minizip/Makefile new file mode 100755 index 0000000..8766861 --- /dev/null +++ b/Zip/minizip/Makefile @@ -0,0 +1,37 @@ +CC=cc +CFLAGS=-O -I../.. -DHAVE_AES + +UNZ_OBJS = miniunz.o unzip.o ioapi.o ../../libz.a libaes.a +ZIP_OBJS = minizip.o zip.o ioapi.o ../../libz.a libaes.a +TEST_FILES = test.zip readme.old readme.txt + +.c.o: + $(CC) -c $(CFLAGS) $*.c + +all: miniunz minizip + +libaes.a: + cd aes; $(MAKE) $(MFLAGS) + +miniunz: $(UNZ_OBJS) libaes.a + $(CC) $(CFLAGS) -o $@ $(UNZ_OBJS) + +minizip: $(ZIP_OBJS) libaes.a + $(CC) $(CFLAGS) -o $@ $(ZIP_OBJS) + +.PHONY: test clean + +test: miniunz minizip + @rm -f $(TEST_FILES) + @cp README.md readme.txt + @touch -t 200712301223.44 readme.txt + ./minizip test.zip readme.txt + ./miniunz -l test.zip + mv readme.txt readme.old + ./miniunz test.zip + @diff -q README.md readme.txt || echo "Test failed: files differ" + @[[ "$$(stat -c %Y readme.txt)" = "$$(stat -c %Y readme.old)" ]] || echo "Test failed: timestamp not preserved" + @rm -f $(TEST_FILES) + +clean: + /bin/rm -f *.o *~ minizip miniunz $(TEST_FILES) diff --git a/Zip/minizip/Makefile.am b/Zip/minizip/Makefile.am new file mode 100755 index 0000000..d83fee7 --- /dev/null +++ b/Zip/minizip/Makefile.am @@ -0,0 +1,43 @@ +lib_LTLIBRARIES = libminizip.la + +if COND_DEMOS +bin_PROGRAMS = miniunzip minizip +endif + +zlib_top_srcdir = $(top_srcdir)/../.. +zlib_top_builddir = $(top_builddir)/../.. + +AM_CPPFLAGS = -I$(zlib_top_srcdir) +AM_LDFLAGS = -L$(zlib_top_builddir) + +if WIN32 +iowin32_src = iowin32.c +iowin32_h = iowin32.h +endif + +libminizip_la_SOURCES = \ + ioapi.c \ + unzip.c \ + zip.c \ + ${iowin32_src} + +libminizip_la_LDFLAGS = $(AM_LDFLAGS) -version-info 1:0:0 -lz + +minizip_includedir = $(includedir)/minizip +minizip_include_HEADERS = \ + crypt.h \ + ioapi.h \ + unzip.h \ + zip.h \ + ${iowin32_h} + +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = minizip.pc + +EXTRA_PROGRAMS = miniunzip minizip + +miniunzip_SOURCES = miniunz.c +miniunzip_LDADD = libminizip.la + +minizip_SOURCES = minizip.c +minizip_LDADD = libminizip.la -lz diff --git a/Zip/minizip/README.md b/Zip/minizip/README.md new file mode 100755 index 0000000..b44c177 --- /dev/null +++ b/Zip/minizip/README.md @@ -0,0 +1,81 @@ +Minizip zlib contribution that includes: + +- AES encryption +- I/O buffering +- PKWARE disk spanning +- Visual Studio 2008 project files + +It also has the latest bug fixes that having been found all over the internet including the minizip forum and zlib developer's mailing list. + +*AES Encryption* + ++ Requires #define HAVE_AES ++ Requires AES library files + +When zipping with a password it will always use AES 256-bit encryption. +When unzipping it will use AES decryption only if necessary. + +*I/O Buffering* + +Improves I/O performance by buffering read and write operations. +``` +zlib_filefunc64_def filefunc64 = {0}; +ourbuffer_t buffered = {0}; + +fill_win32_filefunc64(&buffered->filefunc64); +fill_buffer_filefunc64(&filefunc64, buffered); + +unzOpen2_64(filename, &filefunc64) +``` + +*PKWARE disk spanning* + +To create an archive with multiple disks use zipOpen3_64 supplying a disk_size value in bytes. + +``` +extern zipFile ZEXPORT zipOpen3_64 OF((const void *pathname, int append, + ZPOS64_T disk_size, zipcharpc* globalcomment, zlib_filefunc64_def* pzlib_filefunc_def)); +``` +The central directory is the only data stored in the .zip and doesn't follow disk_size restrictions. + +When unzipping it will automatically determine when in needs to span disks. + +*I/O Memory* + +To unzip from a zip file in memory use fill_memory_filefunc and supply a proper ourmemory_t structure. +``` +zlib_filefunc_def filefunc32 = {0}; +ourmemory_t unzmem = {0}; + +unzmem.size = bufsize; +unzmem.base = (char *)malloc(unzmem.size); +memcpy(unzmem.base, buffer, unzmem.size); + +fill_memory_filefunc(&filefunc32, &unzmem); + +unzOpen2("__notused__", &filefunc32); +``` + +To create a zip file in memory use fill_memory_filefunc and supply a proper ourmemory_t structure. It is important +not to forget to free zipmem->base when finished. If grow is set, zipmem->base will expand to fit the size of the zip. +If grow is not set be sure to fill out zipmem.base and zipmem.size. + +``` +zlib_filefunc_def filefunc32 = {0}; +ourmemory_t zipmem = {0}; + +zipmem.grow = 1; + +fill_memory_filefunc(&filefunc32, &zipmem); + +zipOpen3("__notused__", APPEND_STATUS_CREATE, 0, 0, &filefunc32); +``` + +*BZIP2* + ++ Requires #define HAVE_BZIP2 ++ Requires BZIP2 library + +*Windows RT* + ++ Requires #define IOWIN32_USING_WINRT_API diff --git a/Zip/minizip/aes/Makefile b/Zip/minizip/aes/Makefile new file mode 100755 index 0000000..d7e3234 --- /dev/null +++ b/Zip/minizip/aes/Makefile @@ -0,0 +1,19 @@ +CC=cc +CFLAGS=-O -DHAVE_AES +OBJS=aescrypt.o aeskey.o aestab.o entropy.o fileenc.o hmac.o prng.o pwd2key.o sha1.o +ARFLAGS=rv + +.c.o: + $(CC) -c $(CFLAGS) $*.c + +libaes.a: $(OBJS) + $(ECHO) $(AR) $(ARFLAGS) ../libaes.a $? + $(AR) $(ARFLAGS) ../libaes.a $? + $(RANLIB) ../libaes.a + +all: libaes.a + +.PHONY: clean + +clean: + rm *.o *.a \ No newline at end of file diff --git a/Zip/aes/aes.h b/Zip/minizip/aes/aes.h similarity index 97% rename from Zip/aes/aes.h rename to Zip/minizip/aes/aes.h index 44682c3..40927fb 100755 --- a/Zip/aes/aes.h +++ b/Zip/minizip/aes/aes.h @@ -1,198 +1,198 @@ -/* ---------------------------------------------------------------------------- -Copyright (c) 1998-2010, Brian Gladman, Worcester, UK. All rights reserved. - -The redistribution and use of this software (with or without changes) -is allowed without the payment of fees or royalties provided that: - - source code distributions include the above copyright notice, this - list of conditions and the following disclaimer; - - binary distributions include the above copyright notice, this list - of conditions and the following disclaimer in their documentation. - -This software is provided 'as is' with no explicit or implied warranties -in respect of its operation, including, but not limited to, correctness -and fitness for purpose. ---------------------------------------------------------------------------- -Issue Date: 20/12/2007 - - This file contains the definitions required to use AES in C. See aesopt.h - for optimisation details. -*/ - -#ifndef _AES_H -#define _AES_H - -#include - -/* This include is used to find 8 & 32 bit unsigned integer types */ -#include "brg_types.h" - -#if defined(__cplusplus) -extern "C" -{ -#endif - -#define AES_128 /* if a fast 128 bit key scheduler is needed */ -#define AES_192 /* if a fast 192 bit key scheduler is needed */ -#define AES_256 /* if a fast 256 bit key scheduler is needed */ -#define AES_VAR /* if variable key size scheduler is needed */ -#define AES_MODES /* if support is needed for modes */ - -/* The following must also be set in assembler files if being used */ - -#define AES_ENCRYPT /* if support for encryption is needed */ -#define AES_DECRYPT /* if support for decryption is needed */ -#define AES_REV_DKS /* define to reverse decryption key schedule */ - -#define AES_BLOCK_SIZE 16 /* the AES block size in bytes */ -#define N_COLS 4 /* the number of columns in the state */ - -/* The key schedule length is 11, 13 or 15 16-byte blocks for 128, */ -/* 192 or 256-bit keys respectively. That is 176, 208 or 240 bytes */ -/* or 44, 52 or 60 32-bit words. */ - -#if defined( AES_VAR ) || defined( AES_256 ) -#define KS_LENGTH 60 -#elif defined( AES_192 ) -#define KS_LENGTH 52 -#else -#define KS_LENGTH 44 -#endif - -#define AES_RETURN INT_RETURN - -/* the character array 'inf' in the following structures is used */ -/* to hold AES context information. This AES code uses cx->inf.b[0] */ -/* to hold the number of rounds multiplied by 16. The other three */ -/* elements can be used by code that implements additional modes */ - -typedef union -{ uint_32t l; - uint_8t b[4]; -} aes_inf; - -typedef struct -{ uint_32t ks[KS_LENGTH]; - aes_inf inf; -} aes_encrypt_ctx; - -typedef struct -{ uint_32t ks[KS_LENGTH]; - aes_inf inf; -} aes_decrypt_ctx; - -/* This routine must be called before first use if non-static */ -/* tables are being used */ - -AES_RETURN aes_init(void); - -/* Key lengths in the range 16 <= key_len <= 32 are given in bytes, */ -/* those in the range 128 <= key_len <= 256 are given in bits */ - -#if defined( AES_ENCRYPT ) - -#if defined( AES_128 ) || defined( AES_VAR) -AES_RETURN aes_encrypt_key128(const unsigned char *key, aes_encrypt_ctx cx[1]); -#endif - -#if defined( AES_192 ) || defined( AES_VAR) -AES_RETURN aes_encrypt_key192(const unsigned char *key, aes_encrypt_ctx cx[1]); -#endif - -#if defined( AES_256 ) || defined( AES_VAR) -AES_RETURN aes_encrypt_key256(const unsigned char *key, aes_encrypt_ctx cx[1]); -#endif - -#if defined( AES_VAR ) -AES_RETURN aes_encrypt_key(const unsigned char *key, int key_len, aes_encrypt_ctx cx[1]); -#endif - -AES_RETURN aes_encrypt(const unsigned char *in, unsigned char *out, const aes_encrypt_ctx cx[1]); - -#endif - -#if defined( AES_DECRYPT ) - -#if defined( AES_128 ) || defined( AES_VAR) -AES_RETURN aes_decrypt_key128(const unsigned char *key, aes_decrypt_ctx cx[1]); -#endif - -#if defined( AES_192 ) || defined( AES_VAR) -AES_RETURN aes_decrypt_key192(const unsigned char *key, aes_decrypt_ctx cx[1]); -#endif - -#if defined( AES_256 ) || defined( AES_VAR) -AES_RETURN aes_decrypt_key256(const unsigned char *key, aes_decrypt_ctx cx[1]); -#endif - -#if defined( AES_VAR ) -AES_RETURN aes_decrypt_key(const unsigned char *key, int key_len, aes_decrypt_ctx cx[1]); -#endif - -AES_RETURN aes_decrypt(const unsigned char *in, unsigned char *out, const aes_decrypt_ctx cx[1]); - -#endif - -#if defined( AES_MODES ) - -/* Multiple calls to the following subroutines for multiple block */ -/* ECB, CBC, CFB, OFB and CTR mode encryption can be used to handle */ -/* long messages incremantally provided that the context AND the iv */ -/* are preserved between all such calls. For the ECB and CBC modes */ -/* each individual call within a series of incremental calls must */ -/* process only full blocks (i.e. len must be a multiple of 16) but */ -/* the CFB, OFB and CTR mode calls can handle multiple incremental */ -/* calls of any length. Each mode is reset when a new AES key is */ -/* set but ECB and CBC operations can be reset without setting a */ -/* new key by setting a new IV value. To reset CFB, OFB and CTR */ -/* without setting the key, aes_mode_reset() must be called and the */ -/* IV must be set. NOTE: All these calls update the IV on exit so */ -/* this has to be reset if a new operation with the same IV as the */ -/* previous one is required (or decryption follows encryption with */ -/* the same IV array). */ - -AES_RETURN aes_test_alignment_detection(unsigned int n); - -AES_RETURN aes_ecb_encrypt(const unsigned char *ibuf, unsigned char *obuf, - int len, const aes_encrypt_ctx cx[1]); - -AES_RETURN aes_ecb_decrypt(const unsigned char *ibuf, unsigned char *obuf, - int len, const aes_decrypt_ctx cx[1]); - -AES_RETURN aes_cbc_encrypt(const unsigned char *ibuf, unsigned char *obuf, - int len, unsigned char *iv, const aes_encrypt_ctx cx[1]); - -AES_RETURN aes_cbc_decrypt(const unsigned char *ibuf, unsigned char *obuf, - int len, unsigned char *iv, const aes_decrypt_ctx cx[1]); - -AES_RETURN aes_mode_reset(aes_encrypt_ctx cx[1]); - -AES_RETURN aes_cfb_encrypt(const unsigned char *ibuf, unsigned char *obuf, - int len, unsigned char *iv, aes_encrypt_ctx cx[1]); - -AES_RETURN aes_cfb_decrypt(const unsigned char *ibuf, unsigned char *obuf, - int len, unsigned char *iv, aes_encrypt_ctx cx[1]); - -#define aes_ofb_encrypt aes_ofb_crypt -#define aes_ofb_decrypt aes_ofb_crypt - -AES_RETURN aes_ofb_crypt(const unsigned char *ibuf, unsigned char *obuf, - int len, unsigned char *iv, aes_encrypt_ctx cx[1]); - -typedef void cbuf_inc(unsigned char *cbuf); - -#define aes_ctr_encrypt aes_ctr_crypt -#define aes_ctr_decrypt aes_ctr_crypt - -AES_RETURN aes_ctr_crypt(const unsigned char *ibuf, unsigned char *obuf, - int len, unsigned char *cbuf, cbuf_inc ctr_inc, aes_encrypt_ctx cx[1]); - -#endif - -#if defined(__cplusplus) -} -#endif - -#endif +/* +--------------------------------------------------------------------------- +Copyright (c) 1998-2010, Brian Gladman, Worcester, UK. All rights reserved. + +The redistribution and use of this software (with or without changes) +is allowed without the payment of fees or royalties provided that: + + source code distributions include the above copyright notice, this + list of conditions and the following disclaimer; + + binary distributions include the above copyright notice, this list + of conditions and the following disclaimer in their documentation. + +This software is provided 'as is' with no explicit or implied warranties +in respect of its operation, including, but not limited to, correctness +and fitness for purpose. +--------------------------------------------------------------------------- +Issue Date: 20/12/2007 + + This file contains the definitions required to use AES in C. See aesopt.h + for optimisation details. +*/ + +#ifndef _AES_H +#define _AES_H + +#include + +/* This include is used to find 8 & 32 bit unsigned integer types */ +#include "brg_types.h" + +#if defined(__cplusplus) +extern "C" +{ +#endif + +#define AES_128 /* if a fast 128 bit key scheduler is needed */ +#define AES_192 /* if a fast 192 bit key scheduler is needed */ +#define AES_256 /* if a fast 256 bit key scheduler is needed */ +#define AES_VAR /* if variable key size scheduler is needed */ +#define AES_MODES /* if support is needed for modes */ + +/* The following must also be set in assembler files if being used */ + +#define AES_ENCRYPT /* if support for encryption is needed */ +#define AES_DECRYPT /* if support for decryption is needed */ +#define AES_REV_DKS /* define to reverse decryption key schedule */ + +#define AES_BLOCK_SIZE 16 /* the AES block size in bytes */ +#define N_COLS 4 /* the number of columns in the state */ + +/* The key schedule length is 11, 13 or 15 16-byte blocks for 128, */ +/* 192 or 256-bit keys respectively. That is 176, 208 or 240 bytes */ +/* or 44, 52 or 60 32-bit words. */ + +#if defined( AES_VAR ) || defined( AES_256 ) +#define KS_LENGTH 60 +#elif defined( AES_192 ) +#define KS_LENGTH 52 +#else +#define KS_LENGTH 44 +#endif + +#define AES_RETURN INT_RETURN + +/* the character array 'inf' in the following structures is used */ +/* to hold AES context information. This AES code uses cx->inf.b[0] */ +/* to hold the number of rounds multiplied by 16. The other three */ +/* elements can be used by code that implements additional modes */ + +typedef union +{ uint_32t l; + uint_8t b[4]; +} aes_inf; + +typedef struct +{ uint_32t ks[KS_LENGTH]; + aes_inf inf; +} aes_encrypt_ctx; + +typedef struct +{ uint_32t ks[KS_LENGTH]; + aes_inf inf; +} aes_decrypt_ctx; + +/* This routine must be called before first use if non-static */ +/* tables are being used */ + +AES_RETURN aes_init(void); + +/* Key lengths in the range 16 <= key_len <= 32 are given in bytes, */ +/* those in the range 128 <= key_len <= 256 are given in bits */ + +#if defined( AES_ENCRYPT ) + +#if defined( AES_128 ) || defined( AES_VAR) +AES_RETURN aes_encrypt_key128(const unsigned char *key, aes_encrypt_ctx cx[1]); +#endif + +#if defined( AES_192 ) || defined( AES_VAR) +AES_RETURN aes_encrypt_key192(const unsigned char *key, aes_encrypt_ctx cx[1]); +#endif + +#if defined( AES_256 ) || defined( AES_VAR) +AES_RETURN aes_encrypt_key256(const unsigned char *key, aes_encrypt_ctx cx[1]); +#endif + +#if defined( AES_VAR ) +AES_RETURN aes_encrypt_key(const unsigned char *key, int key_len, aes_encrypt_ctx cx[1]); +#endif + +AES_RETURN aes_encrypt(const unsigned char *in, unsigned char *out, const aes_encrypt_ctx cx[1]); + +#endif + +#if defined( AES_DECRYPT ) + +#if defined( AES_128 ) || defined( AES_VAR) +AES_RETURN aes_decrypt_key128(const unsigned char *key, aes_decrypt_ctx cx[1]); +#endif + +#if defined( AES_192 ) || defined( AES_VAR) +AES_RETURN aes_decrypt_key192(const unsigned char *key, aes_decrypt_ctx cx[1]); +#endif + +#if defined( AES_256 ) || defined( AES_VAR) +AES_RETURN aes_decrypt_key256(const unsigned char *key, aes_decrypt_ctx cx[1]); +#endif + +#if defined( AES_VAR ) +AES_RETURN aes_decrypt_key(const unsigned char *key, int key_len, aes_decrypt_ctx cx[1]); +#endif + +AES_RETURN aes_decrypt(const unsigned char *in, unsigned char *out, const aes_decrypt_ctx cx[1]); + +#endif + +#if defined( AES_MODES ) + +/* Multiple calls to the following subroutines for multiple block */ +/* ECB, CBC, CFB, OFB and CTR mode encryption can be used to handle */ +/* long messages incremantally provided that the context AND the iv */ +/* are preserved between all such calls. For the ECB and CBC modes */ +/* each individual call within a series of incremental calls must */ +/* process only full blocks (i.e. len must be a multiple of 16) but */ +/* the CFB, OFB and CTR mode calls can handle multiple incremental */ +/* calls of any length. Each mode is reset when a new AES key is */ +/* set but ECB and CBC operations can be reset without setting a */ +/* new key by setting a new IV value. To reset CFB, OFB and CTR */ +/* without setting the key, aes_mode_reset() must be called and the */ +/* IV must be set. NOTE: All these calls update the IV on exit so */ +/* this has to be reset if a new operation with the same IV as the */ +/* previous one is required (or decryption follows encryption with */ +/* the same IV array). */ + +AES_RETURN aes_test_alignment_detection(unsigned int n); + +AES_RETURN aes_ecb_encrypt(const unsigned char *ibuf, unsigned char *obuf, + int len, const aes_encrypt_ctx cx[1]); + +AES_RETURN aes_ecb_decrypt(const unsigned char *ibuf, unsigned char *obuf, + int len, const aes_decrypt_ctx cx[1]); + +AES_RETURN aes_cbc_encrypt(const unsigned char *ibuf, unsigned char *obuf, + int len, unsigned char *iv, const aes_encrypt_ctx cx[1]); + +AES_RETURN aes_cbc_decrypt(const unsigned char *ibuf, unsigned char *obuf, + int len, unsigned char *iv, const aes_decrypt_ctx cx[1]); + +AES_RETURN aes_mode_reset(aes_encrypt_ctx cx[1]); + +AES_RETURN aes_cfb_encrypt(const unsigned char *ibuf, unsigned char *obuf, + int len, unsigned char *iv, aes_encrypt_ctx cx[1]); + +AES_RETURN aes_cfb_decrypt(const unsigned char *ibuf, unsigned char *obuf, + int len, unsigned char *iv, aes_encrypt_ctx cx[1]); + +#define aes_ofb_encrypt aes_ofb_crypt +#define aes_ofb_decrypt aes_ofb_crypt + +AES_RETURN aes_ofb_crypt(const unsigned char *ibuf, unsigned char *obuf, + int len, unsigned char *iv, aes_encrypt_ctx cx[1]); + +typedef void cbuf_inc(unsigned char *cbuf); + +#define aes_ctr_encrypt aes_ctr_crypt +#define aes_ctr_decrypt aes_ctr_crypt + +AES_RETURN aes_ctr_crypt(const unsigned char *ibuf, unsigned char *obuf, + int len, unsigned char *cbuf, cbuf_inc ctr_inc, aes_encrypt_ctx cx[1]); + +#endif + +#if defined(__cplusplus) +} +#endif + +#endif diff --git a/Zip/aes/aes_via_ace.h b/Zip/minizip/aes/aes_via_ace.h similarity index 96% rename from Zip/aes/aes_via_ace.h rename to Zip/minizip/aes/aes_via_ace.h index cb2aa1b..bb7a9cf 100755 --- a/Zip/aes/aes_via_ace.h +++ b/Zip/minizip/aes/aes_via_ace.h @@ -1,541 +1,541 @@ -/* -Copyright (c) 1998-2010, Brian Gladman, Worcester, UK. All rights reserved. - -The redistribution and use of this software (with or without changes) -is allowed without the payment of fees or royalties provided that: - - source code distributions include the above copyright notice, this - list of conditions and the following disclaimer; - - binary distributions include the above copyright notice, this list - of conditions and the following disclaimer in their documentation. - -This software is provided 'as is' with no explicit or implied warranties -in respect of its operation, including, but not limited to, correctness -and fitness for purpose. ---------------------------------------------------------------------------- -Issue Date: 20/12/2007 -*/ - -#ifndef AES_VIA_ACE_H -#define AES_VIA_ACE_H - -#if defined( _MSC_VER ) -# define INLINE __inline -#elif defined( __GNUC__ ) -# define INLINE static inline -#else -# error VIA ACE requires Microsoft or GNU C -#endif - -#define NEH_GENERATE 1 -#define NEH_LOAD 2 -#define NEH_HYBRID 3 - -#define MAX_READ_ATTEMPTS 1000 - -/* VIA Nehemiah RNG and ACE Feature Mask Values */ - -#define NEH_CPU_IS_VIA 0x00000001 -#define NEH_CPU_READ 0x00000010 -#define NEH_CPU_MASK 0x00000011 - -#define NEH_RNG_PRESENT 0x00000004 -#define NEH_RNG_ENABLED 0x00000008 -#define NEH_ACE_PRESENT 0x00000040 -#define NEH_ACE_ENABLED 0x00000080 -#define NEH_RNG_FLAGS (NEH_RNG_PRESENT | NEH_RNG_ENABLED) -#define NEH_ACE_FLAGS (NEH_ACE_PRESENT | NEH_ACE_ENABLED) -#define NEH_FLAGS_MASK (NEH_RNG_FLAGS | NEH_ACE_FLAGS) - -/* VIA Nehemiah Advanced Cryptography Engine (ACE) Control Word Values */ - -#define NEH_GEN_KEY 0x00000000 /* generate key schedule */ -#define NEH_LOAD_KEY 0x00000080 /* load schedule from memory */ -#define NEH_ENCRYPT 0x00000000 /* encryption */ -#define NEH_DECRYPT 0x00000200 /* decryption */ -#define NEH_KEY128 0x00000000+0x0a /* 128 bit key */ -#define NEH_KEY192 0x00000400+0x0c /* 192 bit key */ -#define NEH_KEY256 0x00000800+0x0e /* 256 bit key */ - -#define NEH_ENC_GEN (NEH_ENCRYPT | NEH_GEN_KEY) -#define NEH_DEC_GEN (NEH_DECRYPT | NEH_GEN_KEY) -#define NEH_ENC_LOAD (NEH_ENCRYPT | NEH_LOAD_KEY) -#define NEH_DEC_LOAD (NEH_DECRYPT | NEH_LOAD_KEY) - -#define NEH_ENC_GEN_DATA {\ - NEH_ENC_GEN | NEH_KEY128, 0, 0, 0,\ - NEH_ENC_GEN | NEH_KEY192, 0, 0, 0,\ - NEH_ENC_GEN | NEH_KEY256, 0, 0, 0 } - -#define NEH_ENC_LOAD_DATA {\ - NEH_ENC_LOAD | NEH_KEY128, 0, 0, 0,\ - NEH_ENC_LOAD | NEH_KEY192, 0, 0, 0,\ - NEH_ENC_LOAD | NEH_KEY256, 0, 0, 0 } - -#define NEH_ENC_HYBRID_DATA {\ - NEH_ENC_GEN | NEH_KEY128, 0, 0, 0,\ - NEH_ENC_LOAD | NEH_KEY192, 0, 0, 0,\ - NEH_ENC_LOAD | NEH_KEY256, 0, 0, 0 } - -#define NEH_DEC_GEN_DATA {\ - NEH_DEC_GEN | NEH_KEY128, 0, 0, 0,\ - NEH_DEC_GEN | NEH_KEY192, 0, 0, 0,\ - NEH_DEC_GEN | NEH_KEY256, 0, 0, 0 } - -#define NEH_DEC_LOAD_DATA {\ - NEH_DEC_LOAD | NEH_KEY128, 0, 0, 0,\ - NEH_DEC_LOAD | NEH_KEY192, 0, 0, 0,\ - NEH_DEC_LOAD | NEH_KEY256, 0, 0, 0 } - -#define NEH_DEC_HYBRID_DATA {\ - NEH_DEC_GEN | NEH_KEY128, 0, 0, 0,\ - NEH_DEC_LOAD | NEH_KEY192, 0, 0, 0,\ - NEH_DEC_LOAD | NEH_KEY256, 0, 0, 0 } - -#define neh_enc_gen_key(x) ((x) == 128 ? (NEH_ENC_GEN | NEH_KEY128) : \ - (x) == 192 ? (NEH_ENC_GEN | NEH_KEY192) : (NEH_ENC_GEN | NEH_KEY256)) - -#define neh_enc_load_key(x) ((x) == 128 ? (NEH_ENC_LOAD | NEH_KEY128) : \ - (x) == 192 ? (NEH_ENC_LOAD | NEH_KEY192) : (NEH_ENC_LOAD | NEH_KEY256)) - -#define neh_enc_hybrid_key(x) ((x) == 128 ? (NEH_ENC_GEN | NEH_KEY128) : \ - (x) == 192 ? (NEH_ENC_LOAD | NEH_KEY192) : (NEH_ENC_LOAD | NEH_KEY256)) - -#define neh_dec_gen_key(x) ((x) == 128 ? (NEH_DEC_GEN | NEH_KEY128) : \ - (x) == 192 ? (NEH_DEC_GEN | NEH_KEY192) : (NEH_DEC_GEN | NEH_KEY256)) - -#define neh_dec_load_key(x) ((x) == 128 ? (NEH_DEC_LOAD | NEH_KEY128) : \ - (x) == 192 ? (NEH_DEC_LOAD | NEH_KEY192) : (NEH_DEC_LOAD | NEH_KEY256)) - -#define neh_dec_hybrid_key(x) ((x) == 128 ? (NEH_DEC_GEN | NEH_KEY128) : \ - (x) == 192 ? (NEH_DEC_LOAD | NEH_KEY192) : (NEH_DEC_LOAD | NEH_KEY256)) - -#if defined( _MSC_VER ) && ( _MSC_VER > 1200 ) -#define aligned_auto(type, name, no, stride) __declspec(align(stride)) type name[no] -#else -#define aligned_auto(type, name, no, stride) \ - unsigned char _##name[no * sizeof(type) + stride]; \ - type *name = (type*)(16 * ((((unsigned long)(_##name)) + stride - 1) / stride)) -#endif - -#if defined( _MSC_VER ) && ( _MSC_VER > 1200 ) -#define aligned_array(type, name, no, stride) __declspec(align(stride)) type name[no] -#elif defined( __GNUC__ ) -#define aligned_array(type, name, no, stride) type name[no] __attribute__ ((aligned(stride))) -#else -#define aligned_array(type, name, no, stride) type name[no] -#endif - -/* VIA ACE codeword */ - -static unsigned char via_flags = 0; - -#if defined ( _MSC_VER ) && ( _MSC_VER > 800 ) - -#define NEH_REKEY __asm pushfd __asm popfd -#define NEH_AES __asm _emit 0xf3 __asm _emit 0x0f __asm _emit 0xa7 -#define NEH_ECB NEH_AES __asm _emit 0xc8 -#define NEH_CBC NEH_AES __asm _emit 0xd0 -#define NEH_CFB NEH_AES __asm _emit 0xe0 -#define NEH_OFB NEH_AES __asm _emit 0xe8 -#define NEH_RNG __asm _emit 0x0f __asm _emit 0xa7 __asm _emit 0xc0 - -INLINE int has_cpuid(void) -{ char ret_value; - __asm - { pushfd /* save EFLAGS register */ - mov eax,[esp] /* copy it to eax */ - mov edx,0x00200000 /* CPUID bit position */ - xor eax,edx /* toggle the CPUID bit */ - push eax /* attempt to set EFLAGS to */ - popfd /* the new value */ - pushfd /* get the new EFLAGS value */ - pop eax /* into eax */ - xor eax,[esp] /* xor with original value */ - and eax,edx /* has CPUID bit changed? */ - setne al /* set to 1 if we have been */ - mov ret_value,al /* able to change it */ - popfd /* restore original EFLAGS */ - } - return (int)ret_value; -} - -INLINE int is_via_cpu(void) -{ char ret_value; - __asm - { push ebx - xor eax,eax /* use CPUID to get vendor */ - cpuid /* identity string */ - xor eax,eax /* is it "CentaurHauls" ? */ - sub ebx,0x746e6543 /* 'Cent' */ - or eax,ebx - sub edx,0x48727561 /* 'aurH' */ - or eax,edx - sub ecx,0x736c7561 /* 'auls' */ - or eax,ecx - sete al /* set to 1 if it is VIA ID */ - mov dl,NEH_CPU_READ /* mark CPU type as read */ - or dl,al /* & store result in flags */ - mov [via_flags],dl /* set VIA detected flag */ - mov ret_value,al /* able to change it */ - pop ebx - } - return (int)ret_value; -} - -INLINE int read_via_flags(void) -{ char ret_value = 0; - __asm - { mov eax,0xC0000000 /* Centaur extended CPUID */ - cpuid - mov edx,0xc0000001 /* >= 0xc0000001 if support */ - cmp eax,edx /* for VIA extended feature */ - jnae no_rng /* flags is available */ - mov eax,edx /* read Centaur extended */ - cpuid /* feature flags */ - mov eax,NEH_FLAGS_MASK /* mask out and save */ - and eax,edx /* the RNG and ACE flags */ - or [via_flags],al /* present & enabled flags */ - mov ret_value,al /* able to change it */ -no_rng: - } - return (int)ret_value; -} - -INLINE unsigned int via_rng_in(void *buf) -{ char ret_value = 0x1f; - __asm - { push edi - mov edi,buf /* input buffer address */ - xor edx,edx /* try to fetch 8 bytes */ - NEH_RNG /* do RNG read operation */ - and ret_value,al /* count of bytes returned */ - pop edi - } - return (int)ret_value; -} - -INLINE void via_ecb_op5( - const void *k, const void *c, const void *s, void *d, int l) -{ __asm - { push ebx - NEH_REKEY - mov ebx, (k) - mov edx, (c) - mov esi, (s) - mov edi, (d) - mov ecx, (l) - NEH_ECB - pop ebx - } -} - -INLINE void via_cbc_op6( - const void *k, const void *c, const void *s, void *d, int l, void *v) -{ __asm - { push ebx - NEH_REKEY - mov ebx, (k) - mov edx, (c) - mov esi, (s) - mov edi, (d) - mov ecx, (l) - mov eax, (v) - NEH_CBC - pop ebx - } -} - -INLINE void via_cbc_op7( - const void *k, const void *c, const void *s, void *d, int l, void *v, void *w) -{ __asm - { push ebx - NEH_REKEY - mov ebx, (k) - mov edx, (c) - mov esi, (s) - mov edi, (d) - mov ecx, (l) - mov eax, (v) - NEH_CBC - mov esi, eax - mov edi, (w) - movsd - movsd - movsd - movsd - pop ebx - } -} - -INLINE void via_cfb_op6( - const void *k, const void *c, const void *s, void *d, int l, void *v) -{ __asm - { push ebx - NEH_REKEY - mov ebx, (k) - mov edx, (c) - mov esi, (s) - mov edi, (d) - mov ecx, (l) - mov eax, (v) - NEH_CFB - pop ebx - } -} - -INLINE void via_cfb_op7( - const void *k, const void *c, const void *s, void *d, int l, void *v, void *w) -{ __asm - { push ebx - NEH_REKEY - mov ebx, (k) - mov edx, (c) - mov esi, (s) - mov edi, (d) - mov ecx, (l) - mov eax, (v) - NEH_CFB - mov esi, eax - mov edi, (w) - movsd - movsd - movsd - movsd - pop ebx - } -} - -INLINE void via_ofb_op6( - const void *k, const void *c, const void *s, void *d, int l, void *v) -{ __asm - { push ebx - NEH_REKEY - mov ebx, (k) - mov edx, (c) - mov esi, (s) - mov edi, (d) - mov ecx, (l) - mov eax, (v) - NEH_OFB - pop ebx - } -} - -#elif defined( __GNUC__ ) - -#define NEH_REKEY asm("pushfl\n popfl\n\t") -#define NEH_ECB asm(".byte 0xf3, 0x0f, 0xa7, 0xc8\n\t") -#define NEH_CBC asm(".byte 0xf3, 0x0f, 0xa7, 0xd0\n\t") -#define NEH_CFB asm(".byte 0xf3, 0x0f, 0xa7, 0xe0\n\t") -#define NEH_OFB asm(".byte 0xf3, 0x0f, 0xa7, 0xe8\n\t") -#define NEH_RNG asm(".byte 0x0f, 0xa7, 0xc0\n\t"); - -INLINE int has_cpuid(void) -{ int val; - asm("pushfl\n\t"); - asm("movl 0(%esp),%eax\n\t"); - asm("xor $0x00200000,%eax\n\t"); - asm("pushl %eax\n\t"); - asm("popfl\n\t"); - asm("pushfl\n\t"); - asm("popl %eax\n\t"); - asm("xorl 0(%esp),%edx\n\t"); - asm("andl $0x00200000,%eax\n\t"); - asm("movl %%eax,%0\n\t" : "=m" (val)); - asm("popfl\n\t"); - return val ? 1 : 0; -} - -INLINE int is_via_cpu(void) -{ int val; - asm("pushl %ebx\n\t"); - asm("xorl %eax,%eax\n\t"); - asm("cpuid\n\t"); - asm("xorl %eax,%eax\n\t"); - asm("subl $0x746e6543,%ebx\n\t"); - asm("orl %ebx,%eax\n\t"); - asm("subl $0x48727561,%edx\n\t"); - asm("orl %edx,%eax\n\t"); - asm("subl $0x736c7561,%ecx\n\t"); - asm("orl %ecx,%eax\n\t"); - asm("movl %%eax,%0\n\t" : "=m" (val)); - asm("popl %ebx\n\t"); - val = (val ? 0 : 1); - via_flags = (val | NEH_CPU_READ); - return val; -} - -INLINE int read_via_flags(void) -{ unsigned char val; - asm("movl $0xc0000000,%eax\n\t"); - asm("cpuid\n\t"); - asm("movl $0xc0000001,%edx\n\t"); - asm("cmpl %edx,%eax\n\t"); - asm("setae %al\n\t"); - asm("movb %%al,%0\n\t" : "=m" (val)); - if(!val) return 0; - asm("movl $0xc0000001,%eax\n\t"); - asm("cpuid\n\t"); - asm("movb %%dl,%0\n\t" : "=m" (val)); - val &= NEH_FLAGS_MASK; - via_flags |= val; - return (int) val; -} - -INLINE int via_rng_in(void *buf) -{ int val; - asm("pushl %edi\n\t"); - asm("movl %0,%%edi\n\t" : : "m" (buf)); - asm("xorl %edx,%edx\n\t"); - NEH_RNG - asm("andl $0x0000001f,%eax\n\t"); - asm("movl %%eax,%0\n\t" : "=m" (val)); - asm("popl %edi\n\t"); - return val; -} - -INLINE volatile void via_ecb_op5( - const void *k, const void *c, const void *s, void *d, int l) -{ - asm("pushl %ebx\n\t"); - NEH_REKEY; - asm("movl %0, %%ebx\n\t" : : "m" (k)); - asm("movl %0, %%edx\n\t" : : "m" (c)); - asm("movl %0, %%esi\n\t" : : "m" (s)); - asm("movl %0, %%edi\n\t" : : "m" (d)); - asm("movl %0, %%ecx\n\t" : : "m" (l)); - NEH_ECB; - asm("popl %ebx\n\t"); -} - -INLINE volatile void via_cbc_op6( - const void *k, const void *c, const void *s, void *d, int l, void *v) -{ - asm("pushl %ebx\n\t"); - NEH_REKEY; - asm("movl %0, %%ebx\n\t" : : "m" (k)); - asm("movl %0, %%edx\n\t" : : "m" (c)); - asm("movl %0, %%esi\n\t" : : "m" (s)); - asm("movl %0, %%edi\n\t" : : "m" (d)); - asm("movl %0, %%ecx\n\t" : : "m" (l)); - asm("movl %0, %%eax\n\t" : : "m" (v)); - NEH_CBC; - asm("popl %ebx\n\t"); -} - -INLINE volatile void via_cbc_op7( - const void *k, const void *c, const void *s, void *d, int l, void *v, void *w) -{ - asm("pushl %ebx\n\t"); - NEH_REKEY; - asm("movl %0, %%ebx\n\t" : : "m" (k)); - asm("movl %0, %%edx\n\t" : : "m" (c)); - asm("movl %0, %%esi\n\t" : : "m" (s)); - asm("movl %0, %%edi\n\t" : : "m" (d)); - asm("movl %0, %%ecx\n\t" : : "m" (l)); - asm("movl %0, %%eax\n\t" : : "m" (v)); - NEH_CBC; - asm("movl %eax,%esi\n\t"); - asm("movl %0, %%edi\n\t" : : "m" (w)); - asm("movsl; movsl; movsl; movsl\n\t"); - asm("popl %ebx\n\t"); -} - -INLINE volatile void via_cfb_op6( - const void *k, const void *c, const void *s, void *d, int l, void *v) -{ - asm("pushl %ebx\n\t"); - NEH_REKEY; - asm("movl %0, %%ebx\n\t" : : "m" (k)); - asm("movl %0, %%edx\n\t" : : "m" (c)); - asm("movl %0, %%esi\n\t" : : "m" (s)); - asm("movl %0, %%edi\n\t" : : "m" (d)); - asm("movl %0, %%ecx\n\t" : : "m" (l)); - asm("movl %0, %%eax\n\t" : : "m" (v)); - NEH_CFB; - asm("popl %ebx\n\t"); -} - -INLINE volatile void via_cfb_op7( - const void *k, const void *c, const void *s, void *d, int l, void *v, void *w) -{ - asm("pushl %ebx\n\t"); - NEH_REKEY; - asm("movl %0, %%ebx\n\t" : : "m" (k)); - asm("movl %0, %%edx\n\t" : : "m" (c)); - asm("movl %0, %%esi\n\t" : : "m" (s)); - asm("movl %0, %%edi\n\t" : : "m" (d)); - asm("movl %0, %%ecx\n\t" : : "m" (l)); - asm("movl %0, %%eax\n\t" : : "m" (v)); - NEH_CFB; - asm("movl %eax,%esi\n\t"); - asm("movl %0, %%edi\n\t" : : "m" (w)); - asm("movsl; movsl; movsl; movsl\n\t"); - asm("popl %ebx\n\t"); -} - -INLINE volatile void via_ofb_op6( - const void *k, const void *c, const void *s, void *d, int l, void *v) -{ - asm("pushl %ebx\n\t"); - NEH_REKEY; - asm("movl %0, %%ebx\n\t" : : "m" (k)); - asm("movl %0, %%edx\n\t" : : "m" (c)); - asm("movl %0, %%esi\n\t" : : "m" (s)); - asm("movl %0, %%edi\n\t" : : "m" (d)); - asm("movl %0, %%ecx\n\t" : : "m" (l)); - asm("movl %0, %%eax\n\t" : : "m" (v)); - NEH_OFB; - asm("popl %ebx\n\t"); -} - -#else -#error VIA ACE is not available with this compiler -#endif - -INLINE int via_ace_test(void) -{ - return has_cpuid() && is_via_cpu() && ((read_via_flags() & NEH_ACE_FLAGS) == NEH_ACE_FLAGS); -} - -#define VIA_ACE_AVAILABLE (((via_flags & NEH_ACE_FLAGS) == NEH_ACE_FLAGS) \ - || (via_flags & NEH_CPU_READ) && (via_flags & NEH_CPU_IS_VIA) || via_ace_test()) - -INLINE int via_rng_test(void) -{ - return has_cpuid() && is_via_cpu() && ((read_via_flags() & NEH_RNG_FLAGS) == NEH_RNG_FLAGS); -} - -#define VIA_RNG_AVAILABLE (((via_flags & NEH_RNG_FLAGS) == NEH_RNG_FLAGS) \ - || (via_flags & NEH_CPU_READ) && (via_flags & NEH_CPU_IS_VIA) || via_rng_test()) - -INLINE int read_via_rng(void *buf, int count) -{ int nbr, max_reads, lcnt = count; - unsigned char *p, *q; - aligned_auto(unsigned char, bp, 64, 16); - - if(!VIA_RNG_AVAILABLE) - return 0; - - do - { - max_reads = MAX_READ_ATTEMPTS; - do - nbr = via_rng_in(bp); - while - (nbr == 0 && --max_reads); - - lcnt -= nbr; - p = (unsigned char*)buf; q = bp; - while(nbr--) - *p++ = *q++; - } - while - (lcnt && max_reads); - - return count - lcnt; -} - -#endif +/* +Copyright (c) 1998-2010, Brian Gladman, Worcester, UK. All rights reserved. + +The redistribution and use of this software (with or without changes) +is allowed without the payment of fees or royalties provided that: + + source code distributions include the above copyright notice, this + list of conditions and the following disclaimer; + + binary distributions include the above copyright notice, this list + of conditions and the following disclaimer in their documentation. + +This software is provided 'as is' with no explicit or implied warranties +in respect of its operation, including, but not limited to, correctness +and fitness for purpose. +--------------------------------------------------------------------------- +Issue Date: 20/12/2007 +*/ + +#ifndef AES_VIA_ACE_H +#define AES_VIA_ACE_H + +#if defined( _MSC_VER ) +# define INLINE __inline +#elif defined( __GNUC__ ) +# define INLINE static inline +#else +# error VIA ACE requires Microsoft or GNU C +#endif + +#define NEH_GENERATE 1 +#define NEH_LOAD 2 +#define NEH_HYBRID 3 + +#define MAX_READ_ATTEMPTS 1000 + +/* VIA Nehemiah RNG and ACE Feature Mask Values */ + +#define NEH_CPU_IS_VIA 0x00000001 +#define NEH_CPU_READ 0x00000010 +#define NEH_CPU_MASK 0x00000011 + +#define NEH_RNG_PRESENT 0x00000004 +#define NEH_RNG_ENABLED 0x00000008 +#define NEH_ACE_PRESENT 0x00000040 +#define NEH_ACE_ENABLED 0x00000080 +#define NEH_RNG_FLAGS (NEH_RNG_PRESENT | NEH_RNG_ENABLED) +#define NEH_ACE_FLAGS (NEH_ACE_PRESENT | NEH_ACE_ENABLED) +#define NEH_FLAGS_MASK (NEH_RNG_FLAGS | NEH_ACE_FLAGS) + +/* VIA Nehemiah Advanced Cryptography Engine (ACE) Control Word Values */ + +#define NEH_GEN_KEY 0x00000000 /* generate key schedule */ +#define NEH_LOAD_KEY 0x00000080 /* load schedule from memory */ +#define NEH_ENCRYPT 0x00000000 /* encryption */ +#define NEH_DECRYPT 0x00000200 /* decryption */ +#define NEH_KEY128 0x00000000+0x0a /* 128 bit key */ +#define NEH_KEY192 0x00000400+0x0c /* 192 bit key */ +#define NEH_KEY256 0x00000800+0x0e /* 256 bit key */ + +#define NEH_ENC_GEN (NEH_ENCRYPT | NEH_GEN_KEY) +#define NEH_DEC_GEN (NEH_DECRYPT | NEH_GEN_KEY) +#define NEH_ENC_LOAD (NEH_ENCRYPT | NEH_LOAD_KEY) +#define NEH_DEC_LOAD (NEH_DECRYPT | NEH_LOAD_KEY) + +#define NEH_ENC_GEN_DATA {\ + NEH_ENC_GEN | NEH_KEY128, 0, 0, 0,\ + NEH_ENC_GEN | NEH_KEY192, 0, 0, 0,\ + NEH_ENC_GEN | NEH_KEY256, 0, 0, 0 } + +#define NEH_ENC_LOAD_DATA {\ + NEH_ENC_LOAD | NEH_KEY128, 0, 0, 0,\ + NEH_ENC_LOAD | NEH_KEY192, 0, 0, 0,\ + NEH_ENC_LOAD | NEH_KEY256, 0, 0, 0 } + +#define NEH_ENC_HYBRID_DATA {\ + NEH_ENC_GEN | NEH_KEY128, 0, 0, 0,\ + NEH_ENC_LOAD | NEH_KEY192, 0, 0, 0,\ + NEH_ENC_LOAD | NEH_KEY256, 0, 0, 0 } + +#define NEH_DEC_GEN_DATA {\ + NEH_DEC_GEN | NEH_KEY128, 0, 0, 0,\ + NEH_DEC_GEN | NEH_KEY192, 0, 0, 0,\ + NEH_DEC_GEN | NEH_KEY256, 0, 0, 0 } + +#define NEH_DEC_LOAD_DATA {\ + NEH_DEC_LOAD | NEH_KEY128, 0, 0, 0,\ + NEH_DEC_LOAD | NEH_KEY192, 0, 0, 0,\ + NEH_DEC_LOAD | NEH_KEY256, 0, 0, 0 } + +#define NEH_DEC_HYBRID_DATA {\ + NEH_DEC_GEN | NEH_KEY128, 0, 0, 0,\ + NEH_DEC_LOAD | NEH_KEY192, 0, 0, 0,\ + NEH_DEC_LOAD | NEH_KEY256, 0, 0, 0 } + +#define neh_enc_gen_key(x) ((x) == 128 ? (NEH_ENC_GEN | NEH_KEY128) : \ + (x) == 192 ? (NEH_ENC_GEN | NEH_KEY192) : (NEH_ENC_GEN | NEH_KEY256)) + +#define neh_enc_load_key(x) ((x) == 128 ? (NEH_ENC_LOAD | NEH_KEY128) : \ + (x) == 192 ? (NEH_ENC_LOAD | NEH_KEY192) : (NEH_ENC_LOAD | NEH_KEY256)) + +#define neh_enc_hybrid_key(x) ((x) == 128 ? (NEH_ENC_GEN | NEH_KEY128) : \ + (x) == 192 ? (NEH_ENC_LOAD | NEH_KEY192) : (NEH_ENC_LOAD | NEH_KEY256)) + +#define neh_dec_gen_key(x) ((x) == 128 ? (NEH_DEC_GEN | NEH_KEY128) : \ + (x) == 192 ? (NEH_DEC_GEN | NEH_KEY192) : (NEH_DEC_GEN | NEH_KEY256)) + +#define neh_dec_load_key(x) ((x) == 128 ? (NEH_DEC_LOAD | NEH_KEY128) : \ + (x) == 192 ? (NEH_DEC_LOAD | NEH_KEY192) : (NEH_DEC_LOAD | NEH_KEY256)) + +#define neh_dec_hybrid_key(x) ((x) == 128 ? (NEH_DEC_GEN | NEH_KEY128) : \ + (x) == 192 ? (NEH_DEC_LOAD | NEH_KEY192) : (NEH_DEC_LOAD | NEH_KEY256)) + +#if defined( _MSC_VER ) && ( _MSC_VER > 1200 ) +#define aligned_auto(type, name, no, stride) __declspec(align(stride)) type name[no] +#else +#define aligned_auto(type, name, no, stride) \ + unsigned char _##name[no * sizeof(type) + stride]; \ + type *name = (type*)(16 * ((((unsigned long)(_##name)) + stride - 1) / stride)) +#endif + +#if defined( _MSC_VER ) && ( _MSC_VER > 1200 ) +#define aligned_array(type, name, no, stride) __declspec(align(stride)) type name[no] +#elif defined( __GNUC__ ) +#define aligned_array(type, name, no, stride) type name[no] __attribute__ ((aligned(stride))) +#else +#define aligned_array(type, name, no, stride) type name[no] +#endif + +/* VIA ACE codeword */ + +static unsigned char via_flags = 0; + +#if defined ( _MSC_VER ) && ( _MSC_VER > 800 ) + +#define NEH_REKEY __asm pushfd __asm popfd +#define NEH_AES __asm _emit 0xf3 __asm _emit 0x0f __asm _emit 0xa7 +#define NEH_ECB NEH_AES __asm _emit 0xc8 +#define NEH_CBC NEH_AES __asm _emit 0xd0 +#define NEH_CFB NEH_AES __asm _emit 0xe0 +#define NEH_OFB NEH_AES __asm _emit 0xe8 +#define NEH_RNG __asm _emit 0x0f __asm _emit 0xa7 __asm _emit 0xc0 + +INLINE int has_cpuid(void) +{ char ret_value; + __asm + { pushfd /* save EFLAGS register */ + mov eax,[esp] /* copy it to eax */ + mov edx,0x00200000 /* CPUID bit position */ + xor eax,edx /* toggle the CPUID bit */ + push eax /* attempt to set EFLAGS to */ + popfd /* the new value */ + pushfd /* get the new EFLAGS value */ + pop eax /* into eax */ + xor eax,[esp] /* xor with original value */ + and eax,edx /* has CPUID bit changed? */ + setne al /* set to 1 if we have been */ + mov ret_value,al /* able to change it */ + popfd /* restore original EFLAGS */ + } + return (int)ret_value; +} + +INLINE int is_via_cpu(void) +{ char ret_value; + __asm + { push ebx + xor eax,eax /* use CPUID to get vendor */ + cpuid /* identity string */ + xor eax,eax /* is it "CentaurHauls" ? */ + sub ebx,0x746e6543 /* 'Cent' */ + or eax,ebx + sub edx,0x48727561 /* 'aurH' */ + or eax,edx + sub ecx,0x736c7561 /* 'auls' */ + or eax,ecx + sete al /* set to 1 if it is VIA ID */ + mov dl,NEH_CPU_READ /* mark CPU type as read */ + or dl,al /* & store result in flags */ + mov [via_flags],dl /* set VIA detected flag */ + mov ret_value,al /* able to change it */ + pop ebx + } + return (int)ret_value; +} + +INLINE int read_via_flags(void) +{ char ret_value = 0; + __asm + { mov eax,0xC0000000 /* Centaur extended CPUID */ + cpuid + mov edx,0xc0000001 /* >= 0xc0000001 if support */ + cmp eax,edx /* for VIA extended feature */ + jnae no_rng /* flags is available */ + mov eax,edx /* read Centaur extended */ + cpuid /* feature flags */ + mov eax,NEH_FLAGS_MASK /* mask out and save */ + and eax,edx /* the RNG and ACE flags */ + or [via_flags],al /* present & enabled flags */ + mov ret_value,al /* able to change it */ +no_rng: + } + return (int)ret_value; +} + +INLINE unsigned int via_rng_in(void *buf) +{ char ret_value = 0x1f; + __asm + { push edi + mov edi,buf /* input buffer address */ + xor edx,edx /* try to fetch 8 bytes */ + NEH_RNG /* do RNG read operation */ + and ret_value,al /* count of bytes returned */ + pop edi + } + return (int)ret_value; +} + +INLINE void via_ecb_op5( + const void *k, const void *c, const void *s, void *d, int l) +{ __asm + { push ebx + NEH_REKEY + mov ebx, (k) + mov edx, (c) + mov esi, (s) + mov edi, (d) + mov ecx, (l) + NEH_ECB + pop ebx + } +} + +INLINE void via_cbc_op6( + const void *k, const void *c, const void *s, void *d, int l, void *v) +{ __asm + { push ebx + NEH_REKEY + mov ebx, (k) + mov edx, (c) + mov esi, (s) + mov edi, (d) + mov ecx, (l) + mov eax, (v) + NEH_CBC + pop ebx + } +} + +INLINE void via_cbc_op7( + const void *k, const void *c, const void *s, void *d, int l, void *v, void *w) +{ __asm + { push ebx + NEH_REKEY + mov ebx, (k) + mov edx, (c) + mov esi, (s) + mov edi, (d) + mov ecx, (l) + mov eax, (v) + NEH_CBC + mov esi, eax + mov edi, (w) + movsd + movsd + movsd + movsd + pop ebx + } +} + +INLINE void via_cfb_op6( + const void *k, const void *c, const void *s, void *d, int l, void *v) +{ __asm + { push ebx + NEH_REKEY + mov ebx, (k) + mov edx, (c) + mov esi, (s) + mov edi, (d) + mov ecx, (l) + mov eax, (v) + NEH_CFB + pop ebx + } +} + +INLINE void via_cfb_op7( + const void *k, const void *c, const void *s, void *d, int l, void *v, void *w) +{ __asm + { push ebx + NEH_REKEY + mov ebx, (k) + mov edx, (c) + mov esi, (s) + mov edi, (d) + mov ecx, (l) + mov eax, (v) + NEH_CFB + mov esi, eax + mov edi, (w) + movsd + movsd + movsd + movsd + pop ebx + } +} + +INLINE void via_ofb_op6( + const void *k, const void *c, const void *s, void *d, int l, void *v) +{ __asm + { push ebx + NEH_REKEY + mov ebx, (k) + mov edx, (c) + mov esi, (s) + mov edi, (d) + mov ecx, (l) + mov eax, (v) + NEH_OFB + pop ebx + } +} + +#elif defined( __GNUC__ ) + +#define NEH_REKEY asm("pushfl\n popfl\n\t") +#define NEH_ECB asm(".byte 0xf3, 0x0f, 0xa7, 0xc8\n\t") +#define NEH_CBC asm(".byte 0xf3, 0x0f, 0xa7, 0xd0\n\t") +#define NEH_CFB asm(".byte 0xf3, 0x0f, 0xa7, 0xe0\n\t") +#define NEH_OFB asm(".byte 0xf3, 0x0f, 0xa7, 0xe8\n\t") +#define NEH_RNG asm(".byte 0x0f, 0xa7, 0xc0\n\t"); + +INLINE int has_cpuid(void) +{ int val; + asm("pushfl\n\t"); + asm("movl 0(%esp),%eax\n\t"); + asm("xor $0x00200000,%eax\n\t"); + asm("pushl %eax\n\t"); + asm("popfl\n\t"); + asm("pushfl\n\t"); + asm("popl %eax\n\t"); + asm("xorl 0(%esp),%edx\n\t"); + asm("andl $0x00200000,%eax\n\t"); + asm("movl %%eax,%0\n\t" : "=m" (val)); + asm("popfl\n\t"); + return val ? 1 : 0; +} + +INLINE int is_via_cpu(void) +{ int val; + asm("pushl %ebx\n\t"); + asm("xorl %eax,%eax\n\t"); + asm("cpuid\n\t"); + asm("xorl %eax,%eax\n\t"); + asm("subl $0x746e6543,%ebx\n\t"); + asm("orl %ebx,%eax\n\t"); + asm("subl $0x48727561,%edx\n\t"); + asm("orl %edx,%eax\n\t"); + asm("subl $0x736c7561,%ecx\n\t"); + asm("orl %ecx,%eax\n\t"); + asm("movl %%eax,%0\n\t" : "=m" (val)); + asm("popl %ebx\n\t"); + val = (val ? 0 : 1); + via_flags = (val | NEH_CPU_READ); + return val; +} + +INLINE int read_via_flags(void) +{ unsigned char val; + asm("movl $0xc0000000,%eax\n\t"); + asm("cpuid\n\t"); + asm("movl $0xc0000001,%edx\n\t"); + asm("cmpl %edx,%eax\n\t"); + asm("setae %al\n\t"); + asm("movb %%al,%0\n\t" : "=m" (val)); + if(!val) return 0; + asm("movl $0xc0000001,%eax\n\t"); + asm("cpuid\n\t"); + asm("movb %%dl,%0\n\t" : "=m" (val)); + val &= NEH_FLAGS_MASK; + via_flags |= val; + return (int) val; +} + +INLINE int via_rng_in(void *buf) +{ int val; + asm("pushl %edi\n\t"); + asm("movl %0,%%edi\n\t" : : "m" (buf)); + asm("xorl %edx,%edx\n\t"); + NEH_RNG + asm("andl $0x0000001f,%eax\n\t"); + asm("movl %%eax,%0\n\t" : "=m" (val)); + asm("popl %edi\n\t"); + return val; +} + +INLINE volatile void via_ecb_op5( + const void *k, const void *c, const void *s, void *d, int l) +{ + asm("pushl %ebx\n\t"); + NEH_REKEY; + asm("movl %0, %%ebx\n\t" : : "m" (k)); + asm("movl %0, %%edx\n\t" : : "m" (c)); + asm("movl %0, %%esi\n\t" : : "m" (s)); + asm("movl %0, %%edi\n\t" : : "m" (d)); + asm("movl %0, %%ecx\n\t" : : "m" (l)); + NEH_ECB; + asm("popl %ebx\n\t"); +} + +INLINE volatile void via_cbc_op6( + const void *k, const void *c, const void *s, void *d, int l, void *v) +{ + asm("pushl %ebx\n\t"); + NEH_REKEY; + asm("movl %0, %%ebx\n\t" : : "m" (k)); + asm("movl %0, %%edx\n\t" : : "m" (c)); + asm("movl %0, %%esi\n\t" : : "m" (s)); + asm("movl %0, %%edi\n\t" : : "m" (d)); + asm("movl %0, %%ecx\n\t" : : "m" (l)); + asm("movl %0, %%eax\n\t" : : "m" (v)); + NEH_CBC; + asm("popl %ebx\n\t"); +} + +INLINE volatile void via_cbc_op7( + const void *k, const void *c, const void *s, void *d, int l, void *v, void *w) +{ + asm("pushl %ebx\n\t"); + NEH_REKEY; + asm("movl %0, %%ebx\n\t" : : "m" (k)); + asm("movl %0, %%edx\n\t" : : "m" (c)); + asm("movl %0, %%esi\n\t" : : "m" (s)); + asm("movl %0, %%edi\n\t" : : "m" (d)); + asm("movl %0, %%ecx\n\t" : : "m" (l)); + asm("movl %0, %%eax\n\t" : : "m" (v)); + NEH_CBC; + asm("movl %eax,%esi\n\t"); + asm("movl %0, %%edi\n\t" : : "m" (w)); + asm("movsl; movsl; movsl; movsl\n\t"); + asm("popl %ebx\n\t"); +} + +INLINE volatile void via_cfb_op6( + const void *k, const void *c, const void *s, void *d, int l, void *v) +{ + asm("pushl %ebx\n\t"); + NEH_REKEY; + asm("movl %0, %%ebx\n\t" : : "m" (k)); + asm("movl %0, %%edx\n\t" : : "m" (c)); + asm("movl %0, %%esi\n\t" : : "m" (s)); + asm("movl %0, %%edi\n\t" : : "m" (d)); + asm("movl %0, %%ecx\n\t" : : "m" (l)); + asm("movl %0, %%eax\n\t" : : "m" (v)); + NEH_CFB; + asm("popl %ebx\n\t"); +} + +INLINE volatile void via_cfb_op7( + const void *k, const void *c, const void *s, void *d, int l, void *v, void *w) +{ + asm("pushl %ebx\n\t"); + NEH_REKEY; + asm("movl %0, %%ebx\n\t" : : "m" (k)); + asm("movl %0, %%edx\n\t" : : "m" (c)); + asm("movl %0, %%esi\n\t" : : "m" (s)); + asm("movl %0, %%edi\n\t" : : "m" (d)); + asm("movl %0, %%ecx\n\t" : : "m" (l)); + asm("movl %0, %%eax\n\t" : : "m" (v)); + NEH_CFB; + asm("movl %eax,%esi\n\t"); + asm("movl %0, %%edi\n\t" : : "m" (w)); + asm("movsl; movsl; movsl; movsl\n\t"); + asm("popl %ebx\n\t"); +} + +INLINE volatile void via_ofb_op6( + const void *k, const void *c, const void *s, void *d, int l, void *v) +{ + asm("pushl %ebx\n\t"); + NEH_REKEY; + asm("movl %0, %%ebx\n\t" : : "m" (k)); + asm("movl %0, %%edx\n\t" : : "m" (c)); + asm("movl %0, %%esi\n\t" : : "m" (s)); + asm("movl %0, %%edi\n\t" : : "m" (d)); + asm("movl %0, %%ecx\n\t" : : "m" (l)); + asm("movl %0, %%eax\n\t" : : "m" (v)); + NEH_OFB; + asm("popl %ebx\n\t"); +} + +#else +#error VIA ACE is not available with this compiler +#endif + +INLINE int via_ace_test(void) +{ + return has_cpuid() && is_via_cpu() && ((read_via_flags() & NEH_ACE_FLAGS) == NEH_ACE_FLAGS); +} + +#define VIA_ACE_AVAILABLE (((via_flags & NEH_ACE_FLAGS) == NEH_ACE_FLAGS) \ + || (via_flags & NEH_CPU_READ) && (via_flags & NEH_CPU_IS_VIA) || via_ace_test()) + +INLINE int via_rng_test(void) +{ + return has_cpuid() && is_via_cpu() && ((read_via_flags() & NEH_RNG_FLAGS) == NEH_RNG_FLAGS); +} + +#define VIA_RNG_AVAILABLE (((via_flags & NEH_RNG_FLAGS) == NEH_RNG_FLAGS) \ + || (via_flags & NEH_CPU_READ) && (via_flags & NEH_CPU_IS_VIA) || via_rng_test()) + +INLINE int read_via_rng(void *buf, int count) +{ int nbr, max_reads, lcnt = count; + unsigned char *p, *q; + aligned_auto(unsigned char, bp, 64, 16); + + if(!VIA_RNG_AVAILABLE) + return 0; + + do + { + max_reads = MAX_READ_ATTEMPTS; + do + nbr = via_rng_in(bp); + while + (nbr == 0 && --max_reads); + + lcnt -= nbr; + p = (unsigned char*)buf; q = bp; + while(nbr--) + *p++ = *q++; + } + while + (lcnt && max_reads); + + return count - lcnt; +} + +#endif diff --git a/Zip/aes/aescrypt.c b/Zip/minizip/aes/aescrypt.c similarity index 97% rename from Zip/aes/aescrypt.c rename to Zip/minizip/aes/aescrypt.c index 99141cf..6095f41 100755 --- a/Zip/aes/aescrypt.c +++ b/Zip/minizip/aes/aescrypt.c @@ -1,294 +1,294 @@ -/* ---------------------------------------------------------------------------- -Copyright (c) 1998-2010, Brian Gladman, Worcester, UK. All rights reserved. - -The redistribution and use of this software (with or without changes) -is allowed without the payment of fees or royalties provided that: - - source code distributions include the above copyright notice, this - list of conditions and the following disclaimer; - - binary distributions include the above copyright notice, this list - of conditions and the following disclaimer in their documentation. - -This software is provided 'as is' with no explicit or implied warranties -in respect of its operation, including, but not limited to, correctness -and fitness for purpose. ---------------------------------------------------------------------------- -Issue Date: 20/12/2007 -*/ - -#include "aesopt.h" -#include "aestab.h" - -#if defined(__cplusplus) -extern "C" -{ -#endif - -#define si(y,x,k,c) (s(y,c) = word_in(x, c) ^ (k)[c]) -#define so(y,x,c) word_out(y, c, s(x,c)) - -#if defined(ARRAYS) -#define locals(y,x) x[4],y[4] -#else -#define locals(y,x) x##0,x##1,x##2,x##3,y##0,y##1,y##2,y##3 -#endif - -#define l_copy(y, x) s(y,0) = s(x,0); s(y,1) = s(x,1); \ - s(y,2) = s(x,2); s(y,3) = s(x,3); -#define state_in(y,x,k) si(y,x,k,0); si(y,x,k,1); si(y,x,k,2); si(y,x,k,3) -#define state_out(y,x) so(y,x,0); so(y,x,1); so(y,x,2); so(y,x,3) -#define round(rm,y,x,k) rm(y,x,k,0); rm(y,x,k,1); rm(y,x,k,2); rm(y,x,k,3) - -#if ( FUNCS_IN_C & ENCRYPTION_IN_C ) - -/* Visual C++ .Net v7.1 provides the fastest encryption code when using - Pentium optimiation with small code but this is poor for decryption - so we need to control this with the following VC++ pragmas -*/ - -#if defined( _MSC_VER ) && !defined( _WIN64 ) -#pragma optimize( "s", on ) -#endif - -/* Given the column (c) of the output state variable, the following - macros give the input state variables which are needed in its - computation for each row (r) of the state. All the alternative - macros give the same end values but expand into different ways - of calculating these values. In particular the complex macro - used for dynamically variable block sizes is designed to expand - to a compile time constant whenever possible but will expand to - conditional clauses on some branches (I am grateful to Frank - Yellin for this construction) -*/ - -#define fwd_var(x,r,c)\ - ( r == 0 ? ( c == 0 ? s(x,0) : c == 1 ? s(x,1) : c == 2 ? s(x,2) : s(x,3))\ - : r == 1 ? ( c == 0 ? s(x,1) : c == 1 ? s(x,2) : c == 2 ? s(x,3) : s(x,0))\ - : r == 2 ? ( c == 0 ? s(x,2) : c == 1 ? s(x,3) : c == 2 ? s(x,0) : s(x,1))\ - : ( c == 0 ? s(x,3) : c == 1 ? s(x,0) : c == 2 ? s(x,1) : s(x,2))) - -#if defined(FT4_SET) -#undef dec_fmvars -#define fwd_rnd(y,x,k,c) (s(y,c) = (k)[c] ^ four_tables(x,t_use(f,n),fwd_var,rf1,c)) -#elif defined(FT1_SET) -#undef dec_fmvars -#define fwd_rnd(y,x,k,c) (s(y,c) = (k)[c] ^ one_table(x,upr,t_use(f,n),fwd_var,rf1,c)) -#else -#define fwd_rnd(y,x,k,c) (s(y,c) = (k)[c] ^ fwd_mcol(no_table(x,t_use(s,box),fwd_var,rf1,c))) -#endif - -#if defined(FL4_SET) -#define fwd_lrnd(y,x,k,c) (s(y,c) = (k)[c] ^ four_tables(x,t_use(f,l),fwd_var,rf1,c)) -#elif defined(FL1_SET) -#define fwd_lrnd(y,x,k,c) (s(y,c) = (k)[c] ^ one_table(x,ups,t_use(f,l),fwd_var,rf1,c)) -#else -#define fwd_lrnd(y,x,k,c) (s(y,c) = (k)[c] ^ no_table(x,t_use(s,box),fwd_var,rf1,c)) -#endif - -AES_RETURN aes_encrypt(const unsigned char *in, unsigned char *out, const aes_encrypt_ctx cx[1]) -{ uint_32t locals(b0, b1); - const uint_32t *kp; -#if defined( dec_fmvars ) - dec_fmvars; /* declare variables for fwd_mcol() if needed */ -#endif - - if( cx->inf.b[0] != 10 * 16 && cx->inf.b[0] != 12 * 16 && cx->inf.b[0] != 14 * 16 ) - return EXIT_FAILURE; - - kp = cx->ks; - state_in(b0, in, kp); - -#if (ENC_UNROLL == FULL) - - switch(cx->inf.b[0]) - { - case 14 * 16: - round(fwd_rnd, b1, b0, kp + 1 * N_COLS); - round(fwd_rnd, b0, b1, kp + 2 * N_COLS); - kp += 2 * N_COLS; - case 12 * 16: - round(fwd_rnd, b1, b0, kp + 1 * N_COLS); - round(fwd_rnd, b0, b1, kp + 2 * N_COLS); - kp += 2 * N_COLS; - case 10 * 16: - round(fwd_rnd, b1, b0, kp + 1 * N_COLS); - round(fwd_rnd, b0, b1, kp + 2 * N_COLS); - round(fwd_rnd, b1, b0, kp + 3 * N_COLS); - round(fwd_rnd, b0, b1, kp + 4 * N_COLS); - round(fwd_rnd, b1, b0, kp + 5 * N_COLS); - round(fwd_rnd, b0, b1, kp + 6 * N_COLS); - round(fwd_rnd, b1, b0, kp + 7 * N_COLS); - round(fwd_rnd, b0, b1, kp + 8 * N_COLS); - round(fwd_rnd, b1, b0, kp + 9 * N_COLS); - round(fwd_lrnd, b0, b1, kp +10 * N_COLS); - } - -#else - -#if (ENC_UNROLL == PARTIAL) - { uint_32t rnd; - for(rnd = 0; rnd < (cx->inf.b[0] >> 5) - 1; ++rnd) - { - kp += N_COLS; - round(fwd_rnd, b1, b0, kp); - kp += N_COLS; - round(fwd_rnd, b0, b1, kp); - } - kp += N_COLS; - round(fwd_rnd, b1, b0, kp); -#else - { uint_32t rnd; - for(rnd = 0; rnd < (cx->inf.b[0] >> 4) - 1; ++rnd) - { - kp += N_COLS; - round(fwd_rnd, b1, b0, kp); - l_copy(b0, b1); - } -#endif - kp += N_COLS; - round(fwd_lrnd, b0, b1, kp); - } -#endif - - state_out(out, b0); - return EXIT_SUCCESS; -} - -#endif - -#if ( FUNCS_IN_C & DECRYPTION_IN_C) - -/* Visual C++ .Net v7.1 provides the fastest encryption code when using - Pentium optimiation with small code but this is poor for decryption - so we need to control this with the following VC++ pragmas -*/ - -#if defined( _MSC_VER ) && !defined( _WIN64 ) -#pragma optimize( "t", on ) -#endif - -/* Given the column (c) of the output state variable, the following - macros give the input state variables which are needed in its - computation for each row (r) of the state. All the alternative - macros give the same end values but expand into different ways - of calculating these values. In particular the complex macro - used for dynamically variable block sizes is designed to expand - to a compile time constant whenever possible but will expand to - conditional clauses on some branches (I am grateful to Frank - Yellin for this construction) -*/ - -#define inv_var(x,r,c)\ - ( r == 0 ? ( c == 0 ? s(x,0) : c == 1 ? s(x,1) : c == 2 ? s(x,2) : s(x,3))\ - : r == 1 ? ( c == 0 ? s(x,3) : c == 1 ? s(x,0) : c == 2 ? s(x,1) : s(x,2))\ - : r == 2 ? ( c == 0 ? s(x,2) : c == 1 ? s(x,3) : c == 2 ? s(x,0) : s(x,1))\ - : ( c == 0 ? s(x,1) : c == 1 ? s(x,2) : c == 2 ? s(x,3) : s(x,0))) - -#if defined(IT4_SET) -#undef dec_imvars -#define inv_rnd(y,x,k,c) (s(y,c) = (k)[c] ^ four_tables(x,t_use(i,n),inv_var,rf1,c)) -#elif defined(IT1_SET) -#undef dec_imvars -#define inv_rnd(y,x,k,c) (s(y,c) = (k)[c] ^ one_table(x,upr,t_use(i,n),inv_var,rf1,c)) -#else -#define inv_rnd(y,x,k,c) (s(y,c) = inv_mcol((k)[c] ^ no_table(x,t_use(i,box),inv_var,rf1,c))) -#endif - -#if defined(IL4_SET) -#define inv_lrnd(y,x,k,c) (s(y,c) = (k)[c] ^ four_tables(x,t_use(i,l),inv_var,rf1,c)) -#elif defined(IL1_SET) -#define inv_lrnd(y,x,k,c) (s(y,c) = (k)[c] ^ one_table(x,ups,t_use(i,l),inv_var,rf1,c)) -#else -#define inv_lrnd(y,x,k,c) (s(y,c) = (k)[c] ^ no_table(x,t_use(i,box),inv_var,rf1,c)) -#endif - -/* This code can work with the decryption key schedule in the */ -/* order that is used for encrytpion (where the 1st decryption */ -/* round key is at the high end ot the schedule) or with a key */ -/* schedule that has been reversed to put the 1st decryption */ -/* round key at the low end of the schedule in memory (when */ -/* AES_REV_DKS is defined) */ - -#ifdef AES_REV_DKS -#define key_ofs 0 -#define rnd_key(n) (kp + n * N_COLS) -#else -#define key_ofs 1 -#define rnd_key(n) (kp - n * N_COLS) -#endif - -AES_RETURN aes_decrypt(const unsigned char *in, unsigned char *out, const aes_decrypt_ctx cx[1]) -{ uint_32t locals(b0, b1); -#if defined( dec_imvars ) - dec_imvars; /* declare variables for inv_mcol() if needed */ -#endif - const uint_32t *kp; - - if( cx->inf.b[0] != 10 * 16 && cx->inf.b[0] != 12 * 16 && cx->inf.b[0] != 14 * 16 ) - return EXIT_FAILURE; - - kp = cx->ks + (key_ofs ? (cx->inf.b[0] >> 2) : 0); - state_in(b0, in, kp); - -#if (DEC_UNROLL == FULL) - - kp = cx->ks + (key_ofs ? 0 : (cx->inf.b[0] >> 2)); - switch(cx->inf.b[0]) - { - case 14 * 16: - round(inv_rnd, b1, b0, rnd_key(-13)); - round(inv_rnd, b0, b1, rnd_key(-12)); - case 12 * 16: - round(inv_rnd, b1, b0, rnd_key(-11)); - round(inv_rnd, b0, b1, rnd_key(-10)); - case 10 * 16: - round(inv_rnd, b1, b0, rnd_key(-9)); - round(inv_rnd, b0, b1, rnd_key(-8)); - round(inv_rnd, b1, b0, rnd_key(-7)); - round(inv_rnd, b0, b1, rnd_key(-6)); - round(inv_rnd, b1, b0, rnd_key(-5)); - round(inv_rnd, b0, b1, rnd_key(-4)); - round(inv_rnd, b1, b0, rnd_key(-3)); - round(inv_rnd, b0, b1, rnd_key(-2)); - round(inv_rnd, b1, b0, rnd_key(-1)); - round(inv_lrnd, b0, b1, rnd_key( 0)); - } - -#else - -#if (DEC_UNROLL == PARTIAL) - { uint_32t rnd; - for(rnd = 0; rnd < (cx->inf.b[0] >> 5) - 1; ++rnd) - { - kp = rnd_key(1); - round(inv_rnd, b1, b0, kp); - kp = rnd_key(1); - round(inv_rnd, b0, b1, kp); - } - kp = rnd_key(1); - round(inv_rnd, b1, b0, kp); -#else - { uint_32t rnd; - for(rnd = 0; rnd < (cx->inf.b[0] >> 4) - 1; ++rnd) - { - kp = rnd_key(1); - round(inv_rnd, b1, b0, kp); - l_copy(b0, b1); - } -#endif - kp = rnd_key(1); - round(inv_lrnd, b0, b1, kp); - } -#endif - - state_out(out, b0); - return EXIT_SUCCESS; -} - -#endif - -#if defined(__cplusplus) -} -#endif +/* +--------------------------------------------------------------------------- +Copyright (c) 1998-2010, Brian Gladman, Worcester, UK. All rights reserved. + +The redistribution and use of this software (with or without changes) +is allowed without the payment of fees or royalties provided that: + + source code distributions include the above copyright notice, this + list of conditions and the following disclaimer; + + binary distributions include the above copyright notice, this list + of conditions and the following disclaimer in their documentation. + +This software is provided 'as is' with no explicit or implied warranties +in respect of its operation, including, but not limited to, correctness +and fitness for purpose. +--------------------------------------------------------------------------- +Issue Date: 20/12/2007 +*/ + +#include "aesopt.h" +#include "aestab.h" + +#if defined(__cplusplus) +extern "C" +{ +#endif + +#define si(y,x,k,c) (s(y,c) = word_in(x, c) ^ (k)[c]) +#define so(y,x,c) word_out(y, c, s(x,c)) + +#if defined(ARRAYS) +#define locals(y,x) x[4],y[4] +#else +#define locals(y,x) x##0,x##1,x##2,x##3,y##0,y##1,y##2,y##3 +#endif + +#define l_copy(y, x) s(y,0) = s(x,0); s(y,1) = s(x,1); \ + s(y,2) = s(x,2); s(y,3) = s(x,3); +#define state_in(y,x,k) si(y,x,k,0); si(y,x,k,1); si(y,x,k,2); si(y,x,k,3) +#define state_out(y,x) so(y,x,0); so(y,x,1); so(y,x,2); so(y,x,3) +#define round(rm,y,x,k) rm(y,x,k,0); rm(y,x,k,1); rm(y,x,k,2); rm(y,x,k,3) + +#if ( FUNCS_IN_C & ENCRYPTION_IN_C ) + +/* Visual C++ .Net v7.1 provides the fastest encryption code when using + Pentium optimiation with small code but this is poor for decryption + so we need to control this with the following VC++ pragmas +*/ + +#if defined( _MSC_VER ) && !defined( _WIN64 ) +#pragma optimize( "s", on ) +#endif + +/* Given the column (c) of the output state variable, the following + macros give the input state variables which are needed in its + computation for each row (r) of the state. All the alternative + macros give the same end values but expand into different ways + of calculating these values. In particular the complex macro + used for dynamically variable block sizes is designed to expand + to a compile time constant whenever possible but will expand to + conditional clauses on some branches (I am grateful to Frank + Yellin for this construction) +*/ + +#define fwd_var(x,r,c)\ + ( r == 0 ? ( c == 0 ? s(x,0) : c == 1 ? s(x,1) : c == 2 ? s(x,2) : s(x,3))\ + : r == 1 ? ( c == 0 ? s(x,1) : c == 1 ? s(x,2) : c == 2 ? s(x,3) : s(x,0))\ + : r == 2 ? ( c == 0 ? s(x,2) : c == 1 ? s(x,3) : c == 2 ? s(x,0) : s(x,1))\ + : ( c == 0 ? s(x,3) : c == 1 ? s(x,0) : c == 2 ? s(x,1) : s(x,2))) + +#if defined(FT4_SET) +#undef dec_fmvars +#define fwd_rnd(y,x,k,c) (s(y,c) = (k)[c] ^ four_tables(x,t_use(f,n),fwd_var,rf1,c)) +#elif defined(FT1_SET) +#undef dec_fmvars +#define fwd_rnd(y,x,k,c) (s(y,c) = (k)[c] ^ one_table(x,upr,t_use(f,n),fwd_var,rf1,c)) +#else +#define fwd_rnd(y,x,k,c) (s(y,c) = (k)[c] ^ fwd_mcol(no_table(x,t_use(s,box),fwd_var,rf1,c))) +#endif + +#if defined(FL4_SET) +#define fwd_lrnd(y,x,k,c) (s(y,c) = (k)[c] ^ four_tables(x,t_use(f,l),fwd_var,rf1,c)) +#elif defined(FL1_SET) +#define fwd_lrnd(y,x,k,c) (s(y,c) = (k)[c] ^ one_table(x,ups,t_use(f,l),fwd_var,rf1,c)) +#else +#define fwd_lrnd(y,x,k,c) (s(y,c) = (k)[c] ^ no_table(x,t_use(s,box),fwd_var,rf1,c)) +#endif + +AES_RETURN aes_encrypt(const unsigned char *in, unsigned char *out, const aes_encrypt_ctx cx[1]) +{ uint_32t locals(b0, b1); + const uint_32t *kp; +#if defined( dec_fmvars ) + dec_fmvars; /* declare variables for fwd_mcol() if needed */ +#endif + + if( cx->inf.b[0] != 10 * 16 && cx->inf.b[0] != 12 * 16 && cx->inf.b[0] != 14 * 16 ) + return EXIT_FAILURE; + + kp = cx->ks; + state_in(b0, in, kp); + +#if (ENC_UNROLL == FULL) + + switch(cx->inf.b[0]) + { + case 14 * 16: + round(fwd_rnd, b1, b0, kp + 1 * N_COLS); + round(fwd_rnd, b0, b1, kp + 2 * N_COLS); + kp += 2 * N_COLS; + case 12 * 16: + round(fwd_rnd, b1, b0, kp + 1 * N_COLS); + round(fwd_rnd, b0, b1, kp + 2 * N_COLS); + kp += 2 * N_COLS; + case 10 * 16: + round(fwd_rnd, b1, b0, kp + 1 * N_COLS); + round(fwd_rnd, b0, b1, kp + 2 * N_COLS); + round(fwd_rnd, b1, b0, kp + 3 * N_COLS); + round(fwd_rnd, b0, b1, kp + 4 * N_COLS); + round(fwd_rnd, b1, b0, kp + 5 * N_COLS); + round(fwd_rnd, b0, b1, kp + 6 * N_COLS); + round(fwd_rnd, b1, b0, kp + 7 * N_COLS); + round(fwd_rnd, b0, b1, kp + 8 * N_COLS); + round(fwd_rnd, b1, b0, kp + 9 * N_COLS); + round(fwd_lrnd, b0, b1, kp +10 * N_COLS); + } + +#else + +#if (ENC_UNROLL == PARTIAL) + { uint_32t rnd; + for(rnd = 0; rnd < (cx->inf.b[0] >> 5) - 1; ++rnd) + { + kp += N_COLS; + round(fwd_rnd, b1, b0, kp); + kp += N_COLS; + round(fwd_rnd, b0, b1, kp); + } + kp += N_COLS; + round(fwd_rnd, b1, b0, kp); +#else + { uint_32t rnd; + for(rnd = 0; rnd < (cx->inf.b[0] >> 4) - 1; ++rnd) + { + kp += N_COLS; + round(fwd_rnd, b1, b0, kp); + l_copy(b0, b1); + } +#endif + kp += N_COLS; + round(fwd_lrnd, b0, b1, kp); + } +#endif + + state_out(out, b0); + return EXIT_SUCCESS; +} + +#endif + +#if ( FUNCS_IN_C & DECRYPTION_IN_C) + +/* Visual C++ .Net v7.1 provides the fastest encryption code when using + Pentium optimiation with small code but this is poor for decryption + so we need to control this with the following VC++ pragmas +*/ + +#if defined( _MSC_VER ) && !defined( _WIN64 ) +#pragma optimize( "t", on ) +#endif + +/* Given the column (c) of the output state variable, the following + macros give the input state variables which are needed in its + computation for each row (r) of the state. All the alternative + macros give the same end values but expand into different ways + of calculating these values. In particular the complex macro + used for dynamically variable block sizes is designed to expand + to a compile time constant whenever possible but will expand to + conditional clauses on some branches (I am grateful to Frank + Yellin for this construction) +*/ + +#define inv_var(x,r,c)\ + ( r == 0 ? ( c == 0 ? s(x,0) : c == 1 ? s(x,1) : c == 2 ? s(x,2) : s(x,3))\ + : r == 1 ? ( c == 0 ? s(x,3) : c == 1 ? s(x,0) : c == 2 ? s(x,1) : s(x,2))\ + : r == 2 ? ( c == 0 ? s(x,2) : c == 1 ? s(x,3) : c == 2 ? s(x,0) : s(x,1))\ + : ( c == 0 ? s(x,1) : c == 1 ? s(x,2) : c == 2 ? s(x,3) : s(x,0))) + +#if defined(IT4_SET) +#undef dec_imvars +#define inv_rnd(y,x,k,c) (s(y,c) = (k)[c] ^ four_tables(x,t_use(i,n),inv_var,rf1,c)) +#elif defined(IT1_SET) +#undef dec_imvars +#define inv_rnd(y,x,k,c) (s(y,c) = (k)[c] ^ one_table(x,upr,t_use(i,n),inv_var,rf1,c)) +#else +#define inv_rnd(y,x,k,c) (s(y,c) = inv_mcol((k)[c] ^ no_table(x,t_use(i,box),inv_var,rf1,c))) +#endif + +#if defined(IL4_SET) +#define inv_lrnd(y,x,k,c) (s(y,c) = (k)[c] ^ four_tables(x,t_use(i,l),inv_var,rf1,c)) +#elif defined(IL1_SET) +#define inv_lrnd(y,x,k,c) (s(y,c) = (k)[c] ^ one_table(x,ups,t_use(i,l),inv_var,rf1,c)) +#else +#define inv_lrnd(y,x,k,c) (s(y,c) = (k)[c] ^ no_table(x,t_use(i,box),inv_var,rf1,c)) +#endif + +/* This code can work with the decryption key schedule in the */ +/* order that is used for encrytpion (where the 1st decryption */ +/* round key is at the high end ot the schedule) or with a key */ +/* schedule that has been reversed to put the 1st decryption */ +/* round key at the low end of the schedule in memory (when */ +/* AES_REV_DKS is defined) */ + +#ifdef AES_REV_DKS +#define key_ofs 0 +#define rnd_key(n) (kp + n * N_COLS) +#else +#define key_ofs 1 +#define rnd_key(n) (kp - n * N_COLS) +#endif + +AES_RETURN aes_decrypt(const unsigned char *in, unsigned char *out, const aes_decrypt_ctx cx[1]) +{ uint_32t locals(b0, b1); +#if defined( dec_imvars ) + dec_imvars; /* declare variables for inv_mcol() if needed */ +#endif + const uint_32t *kp; + + if( cx->inf.b[0] != 10 * 16 && cx->inf.b[0] != 12 * 16 && cx->inf.b[0] != 14 * 16 ) + return EXIT_FAILURE; + + kp = cx->ks + (key_ofs ? (cx->inf.b[0] >> 2) : 0); + state_in(b0, in, kp); + +#if (DEC_UNROLL == FULL) + + kp = cx->ks + (key_ofs ? 0 : (cx->inf.b[0] >> 2)); + switch(cx->inf.b[0]) + { + case 14 * 16: + round(inv_rnd, b1, b0, rnd_key(-13)); + round(inv_rnd, b0, b1, rnd_key(-12)); + case 12 * 16: + round(inv_rnd, b1, b0, rnd_key(-11)); + round(inv_rnd, b0, b1, rnd_key(-10)); + case 10 * 16: + round(inv_rnd, b1, b0, rnd_key(-9)); + round(inv_rnd, b0, b1, rnd_key(-8)); + round(inv_rnd, b1, b0, rnd_key(-7)); + round(inv_rnd, b0, b1, rnd_key(-6)); + round(inv_rnd, b1, b0, rnd_key(-5)); + round(inv_rnd, b0, b1, rnd_key(-4)); + round(inv_rnd, b1, b0, rnd_key(-3)); + round(inv_rnd, b0, b1, rnd_key(-2)); + round(inv_rnd, b1, b0, rnd_key(-1)); + round(inv_lrnd, b0, b1, rnd_key( 0)); + } + +#else + +#if (DEC_UNROLL == PARTIAL) + { uint_32t rnd; + for(rnd = 0; rnd < (cx->inf.b[0] >> 5) - 1; ++rnd) + { + kp = rnd_key(1); + round(inv_rnd, b1, b0, kp); + kp = rnd_key(1); + round(inv_rnd, b0, b1, kp); + } + kp = rnd_key(1); + round(inv_rnd, b1, b0, kp); +#else + { uint_32t rnd; + for(rnd = 0; rnd < (cx->inf.b[0] >> 4) - 1; ++rnd) + { + kp = rnd_key(1); + round(inv_rnd, b1, b0, kp); + l_copy(b0, b1); + } +#endif + kp = rnd_key(1); + round(inv_lrnd, b0, b1, kp); + } +#endif + + state_out(out, b0); + return EXIT_SUCCESS; +} + +#endif + +#if defined(__cplusplus) +} +#endif diff --git a/Zip/aes/aeskey.c b/Zip/minizip/aes/aeskey.c similarity index 96% rename from Zip/aes/aeskey.c rename to Zip/minizip/aes/aeskey.c index 0378f0c..3633641 100755 --- a/Zip/aes/aeskey.c +++ b/Zip/minizip/aes/aeskey.c @@ -1,548 +1,548 @@ -/* ---------------------------------------------------------------------------- -Copyright (c) 1998-2010, Brian Gladman, Worcester, UK. All rights reserved. - -The redistribution and use of this software (with or without changes) -is allowed without the payment of fees or royalties provided that: - - source code distributions include the above copyright notice, this - list of conditions and the following disclaimer; - - binary distributions include the above copyright notice, this list - of conditions and the following disclaimer in their documentation. - -This software is provided 'as is' with no explicit or implied warranties -in respect of its operation, including, but not limited to, correctness -and fitness for purpose. ---------------------------------------------------------------------------- -Issue Date: 20/12/2007 -*/ - -#include "aesopt.h" -#include "aestab.h" - -#ifdef USE_VIA_ACE_IF_PRESENT -# include "aes_via_ace.h" -#endif - -#if defined(__cplusplus) -extern "C" -{ -#endif - -/* Initialise the key schedule from the user supplied key. The key - length can be specified in bytes, with legal values of 16, 24 - and 32, or in bits, with legal values of 128, 192 and 256. These - values correspond with Nk values of 4, 6 and 8 respectively. - - The following macros implement a single cycle in the key - schedule generation process. The number of cycles needed - for each cx->n_col and nk value is: - - nk = 4 5 6 7 8 - ------------------------------ - cx->n_col = 4 10 9 8 7 7 - cx->n_col = 5 14 11 10 9 9 - cx->n_col = 6 19 15 12 11 11 - cx->n_col = 7 21 19 16 13 14 - cx->n_col = 8 29 23 19 17 14 -*/ - -#if defined( REDUCE_CODE_SIZE ) -# define ls_box ls_sub - uint_32t ls_sub(const uint_32t t, const uint_32t n); -# define inv_mcol im_sub - uint_32t im_sub(const uint_32t x); -# ifdef ENC_KS_UNROLL -# undef ENC_KS_UNROLL -# endif -# ifdef DEC_KS_UNROLL -# undef DEC_KS_UNROLL -# endif -#endif - -#if (FUNCS_IN_C & ENC_KEYING_IN_C) - -#if defined(AES_128) || defined( AES_VAR ) - -#define ke4(k,i) \ -{ k[4*(i)+4] = ss[0] ^= ls_box(ss[3],3) ^ t_use(r,c)[i]; \ - k[4*(i)+5] = ss[1] ^= ss[0]; \ - k[4*(i)+6] = ss[2] ^= ss[1]; \ - k[4*(i)+7] = ss[3] ^= ss[2]; \ -} - -AES_RETURN aes_encrypt_key128(const unsigned char *key, aes_encrypt_ctx cx[1]) -{ uint_32t ss[4]; - - cx->ks[0] = ss[0] = word_in(key, 0); - cx->ks[1] = ss[1] = word_in(key, 1); - cx->ks[2] = ss[2] = word_in(key, 2); - cx->ks[3] = ss[3] = word_in(key, 3); - -#ifdef ENC_KS_UNROLL - ke4(cx->ks, 0); ke4(cx->ks, 1); - ke4(cx->ks, 2); ke4(cx->ks, 3); - ke4(cx->ks, 4); ke4(cx->ks, 5); - ke4(cx->ks, 6); ke4(cx->ks, 7); - ke4(cx->ks, 8); -#else - { uint_32t i; - for(i = 0; i < 9; ++i) - ke4(cx->ks, i); - } -#endif - ke4(cx->ks, 9); - cx->inf.l = 0; - cx->inf.b[0] = 10 * 16; - -#ifdef USE_VIA_ACE_IF_PRESENT - if(VIA_ACE_AVAILABLE) - cx->inf.b[1] = 0xff; -#endif - return EXIT_SUCCESS; -} - -#endif - -#if defined(AES_192) || defined( AES_VAR ) - -#define kef6(k,i) \ -{ k[6*(i)+ 6] = ss[0] ^= ls_box(ss[5],3) ^ t_use(r,c)[i]; \ - k[6*(i)+ 7] = ss[1] ^= ss[0]; \ - k[6*(i)+ 8] = ss[2] ^= ss[1]; \ - k[6*(i)+ 9] = ss[3] ^= ss[2]; \ -} - -#define ke6(k,i) \ -{ kef6(k,i); \ - k[6*(i)+10] = ss[4] ^= ss[3]; \ - k[6*(i)+11] = ss[5] ^= ss[4]; \ -} - -AES_RETURN aes_encrypt_key192(const unsigned char *key, aes_encrypt_ctx cx[1]) -{ uint_32t ss[6]; - - cx->ks[0] = ss[0] = word_in(key, 0); - cx->ks[1] = ss[1] = word_in(key, 1); - cx->ks[2] = ss[2] = word_in(key, 2); - cx->ks[3] = ss[3] = word_in(key, 3); - cx->ks[4] = ss[4] = word_in(key, 4); - cx->ks[5] = ss[5] = word_in(key, 5); - -#ifdef ENC_KS_UNROLL - ke6(cx->ks, 0); ke6(cx->ks, 1); - ke6(cx->ks, 2); ke6(cx->ks, 3); - ke6(cx->ks, 4); ke6(cx->ks, 5); - ke6(cx->ks, 6); -#else - { uint_32t i; - for(i = 0; i < 7; ++i) - ke6(cx->ks, i); - } -#endif - kef6(cx->ks, 7); - cx->inf.l = 0; - cx->inf.b[0] = 12 * 16; - -#ifdef USE_VIA_ACE_IF_PRESENT - if(VIA_ACE_AVAILABLE) - cx->inf.b[1] = 0xff; -#endif - return EXIT_SUCCESS; -} - -#endif - -#if defined(AES_256) || defined( AES_VAR ) - -#define kef8(k,i) \ -{ k[8*(i)+ 8] = ss[0] ^= ls_box(ss[7],3) ^ t_use(r,c)[i]; \ - k[8*(i)+ 9] = ss[1] ^= ss[0]; \ - k[8*(i)+10] = ss[2] ^= ss[1]; \ - k[8*(i)+11] = ss[3] ^= ss[2]; \ -} - -#define ke8(k,i) \ -{ kef8(k,i); \ - k[8*(i)+12] = ss[4] ^= ls_box(ss[3],0); \ - k[8*(i)+13] = ss[5] ^= ss[4]; \ - k[8*(i)+14] = ss[6] ^= ss[5]; \ - k[8*(i)+15] = ss[7] ^= ss[6]; \ -} - -AES_RETURN aes_encrypt_key256(const unsigned char *key, aes_encrypt_ctx cx[1]) -{ uint_32t ss[8]; - - cx->ks[0] = ss[0] = word_in(key, 0); - cx->ks[1] = ss[1] = word_in(key, 1); - cx->ks[2] = ss[2] = word_in(key, 2); - cx->ks[3] = ss[3] = word_in(key, 3); - cx->ks[4] = ss[4] = word_in(key, 4); - cx->ks[5] = ss[5] = word_in(key, 5); - cx->ks[6] = ss[6] = word_in(key, 6); - cx->ks[7] = ss[7] = word_in(key, 7); - -#ifdef ENC_KS_UNROLL - ke8(cx->ks, 0); ke8(cx->ks, 1); - ke8(cx->ks, 2); ke8(cx->ks, 3); - ke8(cx->ks, 4); ke8(cx->ks, 5); -#else - { uint_32t i; - for(i = 0; i < 6; ++i) - ke8(cx->ks, i); - } -#endif - kef8(cx->ks, 6); - cx->inf.l = 0; - cx->inf.b[0] = 14 * 16; - -#ifdef USE_VIA_ACE_IF_PRESENT - if(VIA_ACE_AVAILABLE) - cx->inf.b[1] = 0xff; -#endif - return EXIT_SUCCESS; -} - -#endif - -#if defined( AES_VAR ) - -AES_RETURN aes_encrypt_key(const unsigned char *key, int key_len, aes_encrypt_ctx cx[1]) -{ - switch(key_len) - { - case 16: case 128: return aes_encrypt_key128(key, cx); - case 24: case 192: return aes_encrypt_key192(key, cx); - case 32: case 256: return aes_encrypt_key256(key, cx); - default: return EXIT_FAILURE; - } -} - -#endif - -#endif - -#if (FUNCS_IN_C & DEC_KEYING_IN_C) - -/* this is used to store the decryption round keys */ -/* in forward or reverse order */ - -#ifdef AES_REV_DKS -#define v(n,i) ((n) - (i) + 2 * ((i) & 3)) -#else -#define v(n,i) (i) -#endif - -#if DEC_ROUND == NO_TABLES -#define ff(x) (x) -#else -#define ff(x) inv_mcol(x) -#if defined( dec_imvars ) -#define d_vars dec_imvars -#endif -#endif - -#if defined(AES_128) || defined( AES_VAR ) - -#define k4e(k,i) \ -{ k[v(40,(4*(i))+4)] = ss[0] ^= ls_box(ss[3],3) ^ t_use(r,c)[i]; \ - k[v(40,(4*(i))+5)] = ss[1] ^= ss[0]; \ - k[v(40,(4*(i))+6)] = ss[2] ^= ss[1]; \ - k[v(40,(4*(i))+7)] = ss[3] ^= ss[2]; \ -} - -#if 1 - -#define kdf4(k,i) \ -{ ss[0] = ss[0] ^ ss[2] ^ ss[1] ^ ss[3]; \ - ss[1] = ss[1] ^ ss[3]; \ - ss[2] = ss[2] ^ ss[3]; \ - ss[4] = ls_box(ss[(i+3) % 4], 3) ^ t_use(r,c)[i]; \ - ss[i % 4] ^= ss[4]; \ - ss[4] ^= k[v(40,(4*(i)))]; k[v(40,(4*(i))+4)] = ff(ss[4]); \ - ss[4] ^= k[v(40,(4*(i))+1)]; k[v(40,(4*(i))+5)] = ff(ss[4]); \ - ss[4] ^= k[v(40,(4*(i))+2)]; k[v(40,(4*(i))+6)] = ff(ss[4]); \ - ss[4] ^= k[v(40,(4*(i))+3)]; k[v(40,(4*(i))+7)] = ff(ss[4]); \ -} - -#define kd4(k,i) \ -{ ss[4] = ls_box(ss[(i+3) % 4], 3) ^ t_use(r,c)[i]; \ - ss[i % 4] ^= ss[4]; ss[4] = ff(ss[4]); \ - k[v(40,(4*(i))+4)] = ss[4] ^= k[v(40,(4*(i)))]; \ - k[v(40,(4*(i))+5)] = ss[4] ^= k[v(40,(4*(i))+1)]; \ - k[v(40,(4*(i))+6)] = ss[4] ^= k[v(40,(4*(i))+2)]; \ - k[v(40,(4*(i))+7)] = ss[4] ^= k[v(40,(4*(i))+3)]; \ -} - -#define kdl4(k,i) \ -{ ss[4] = ls_box(ss[(i+3) % 4], 3) ^ t_use(r,c)[i]; ss[i % 4] ^= ss[4]; \ - k[v(40,(4*(i))+4)] = (ss[0] ^= ss[1]) ^ ss[2] ^ ss[3]; \ - k[v(40,(4*(i))+5)] = ss[1] ^ ss[3]; \ - k[v(40,(4*(i))+6)] = ss[0]; \ - k[v(40,(4*(i))+7)] = ss[1]; \ -} - -#else - -#define kdf4(k,i) \ -{ ss[0] ^= ls_box(ss[3],3) ^ t_use(r,c)[i]; k[v(40,(4*(i))+ 4)] = ff(ss[0]); \ - ss[1] ^= ss[0]; k[v(40,(4*(i))+ 5)] = ff(ss[1]); \ - ss[2] ^= ss[1]; k[v(40,(4*(i))+ 6)] = ff(ss[2]); \ - ss[3] ^= ss[2]; k[v(40,(4*(i))+ 7)] = ff(ss[3]); \ -} - -#define kd4(k,i) \ -{ ss[4] = ls_box(ss[3],3) ^ t_use(r,c)[i]; \ - ss[0] ^= ss[4]; ss[4] = ff(ss[4]); k[v(40,(4*(i))+ 4)] = ss[4] ^= k[v(40,(4*(i)))]; \ - ss[1] ^= ss[0]; k[v(40,(4*(i))+ 5)] = ss[4] ^= k[v(40,(4*(i))+ 1)]; \ - ss[2] ^= ss[1]; k[v(40,(4*(i))+ 6)] = ss[4] ^= k[v(40,(4*(i))+ 2)]; \ - ss[3] ^= ss[2]; k[v(40,(4*(i))+ 7)] = ss[4] ^= k[v(40,(4*(i))+ 3)]; \ -} - -#define kdl4(k,i) \ -{ ss[0] ^= ls_box(ss[3],3) ^ t_use(r,c)[i]; k[v(40,(4*(i))+ 4)] = ss[0]; \ - ss[1] ^= ss[0]; k[v(40,(4*(i))+ 5)] = ss[1]; \ - ss[2] ^= ss[1]; k[v(40,(4*(i))+ 6)] = ss[2]; \ - ss[3] ^= ss[2]; k[v(40,(4*(i))+ 7)] = ss[3]; \ -} - -#endif - -AES_RETURN aes_decrypt_key128(const unsigned char *key, aes_decrypt_ctx cx[1]) -{ uint_32t ss[5]; -#if defined( d_vars ) - d_vars; -#endif - cx->ks[v(40,(0))] = ss[0] = word_in(key, 0); - cx->ks[v(40,(1))] = ss[1] = word_in(key, 1); - cx->ks[v(40,(2))] = ss[2] = word_in(key, 2); - cx->ks[v(40,(3))] = ss[3] = word_in(key, 3); - -#ifdef DEC_KS_UNROLL - kdf4(cx->ks, 0); kd4(cx->ks, 1); - kd4(cx->ks, 2); kd4(cx->ks, 3); - kd4(cx->ks, 4); kd4(cx->ks, 5); - kd4(cx->ks, 6); kd4(cx->ks, 7); - kd4(cx->ks, 8); kdl4(cx->ks, 9); -#else - { uint_32t i; - for(i = 0; i < 10; ++i) - k4e(cx->ks, i); -#if !(DEC_ROUND == NO_TABLES) - for(i = N_COLS; i < 10 * N_COLS; ++i) - cx->ks[i] = inv_mcol(cx->ks[i]); -#endif - } -#endif - cx->inf.l = 0; - cx->inf.b[0] = 10 * 16; - -#ifdef USE_VIA_ACE_IF_PRESENT - if(VIA_ACE_AVAILABLE) - cx->inf.b[1] = 0xff; -#endif - return EXIT_SUCCESS; -} - -#endif - -#if defined(AES_192) || defined( AES_VAR ) - -#define k6ef(k,i) \ -{ k[v(48,(6*(i))+ 6)] = ss[0] ^= ls_box(ss[5],3) ^ t_use(r,c)[i]; \ - k[v(48,(6*(i))+ 7)] = ss[1] ^= ss[0]; \ - k[v(48,(6*(i))+ 8)] = ss[2] ^= ss[1]; \ - k[v(48,(6*(i))+ 9)] = ss[3] ^= ss[2]; \ -} - -#define k6e(k,i) \ -{ k6ef(k,i); \ - k[v(48,(6*(i))+10)] = ss[4] ^= ss[3]; \ - k[v(48,(6*(i))+11)] = ss[5] ^= ss[4]; \ -} - -#define kdf6(k,i) \ -{ ss[0] ^= ls_box(ss[5],3) ^ t_use(r,c)[i]; k[v(48,(6*(i))+ 6)] = ff(ss[0]); \ - ss[1] ^= ss[0]; k[v(48,(6*(i))+ 7)] = ff(ss[1]); \ - ss[2] ^= ss[1]; k[v(48,(6*(i))+ 8)] = ff(ss[2]); \ - ss[3] ^= ss[2]; k[v(48,(6*(i))+ 9)] = ff(ss[3]); \ - ss[4] ^= ss[3]; k[v(48,(6*(i))+10)] = ff(ss[4]); \ - ss[5] ^= ss[4]; k[v(48,(6*(i))+11)] = ff(ss[5]); \ -} - -#define kd6(k,i) \ -{ ss[6] = ls_box(ss[5],3) ^ t_use(r,c)[i]; \ - ss[0] ^= ss[6]; ss[6] = ff(ss[6]); k[v(48,(6*(i))+ 6)] = ss[6] ^= k[v(48,(6*(i)))]; \ - ss[1] ^= ss[0]; k[v(48,(6*(i))+ 7)] = ss[6] ^= k[v(48,(6*(i))+ 1)]; \ - ss[2] ^= ss[1]; k[v(48,(6*(i))+ 8)] = ss[6] ^= k[v(48,(6*(i))+ 2)]; \ - ss[3] ^= ss[2]; k[v(48,(6*(i))+ 9)] = ss[6] ^= k[v(48,(6*(i))+ 3)]; \ - ss[4] ^= ss[3]; k[v(48,(6*(i))+10)] = ss[6] ^= k[v(48,(6*(i))+ 4)]; \ - ss[5] ^= ss[4]; k[v(48,(6*(i))+11)] = ss[6] ^= k[v(48,(6*(i))+ 5)]; \ -} - -#define kdl6(k,i) \ -{ ss[0] ^= ls_box(ss[5],3) ^ t_use(r,c)[i]; k[v(48,(6*(i))+ 6)] = ss[0]; \ - ss[1] ^= ss[0]; k[v(48,(6*(i))+ 7)] = ss[1]; \ - ss[2] ^= ss[1]; k[v(48,(6*(i))+ 8)] = ss[2]; \ - ss[3] ^= ss[2]; k[v(48,(6*(i))+ 9)] = ss[3]; \ -} - -AES_RETURN aes_decrypt_key192(const unsigned char *key, aes_decrypt_ctx cx[1]) -{ uint_32t ss[7]; -#if defined( d_vars ) - d_vars; -#endif - cx->ks[v(48,(0))] = ss[0] = word_in(key, 0); - cx->ks[v(48,(1))] = ss[1] = word_in(key, 1); - cx->ks[v(48,(2))] = ss[2] = word_in(key, 2); - cx->ks[v(48,(3))] = ss[3] = word_in(key, 3); - -#ifdef DEC_KS_UNROLL - cx->ks[v(48,(4))] = ff(ss[4] = word_in(key, 4)); - cx->ks[v(48,(5))] = ff(ss[5] = word_in(key, 5)); - kdf6(cx->ks, 0); kd6(cx->ks, 1); - kd6(cx->ks, 2); kd6(cx->ks, 3); - kd6(cx->ks, 4); kd6(cx->ks, 5); - kd6(cx->ks, 6); kdl6(cx->ks, 7); -#else - cx->ks[v(48,(4))] = ss[4] = word_in(key, 4); - cx->ks[v(48,(5))] = ss[5] = word_in(key, 5); - { uint_32t i; - - for(i = 0; i < 7; ++i) - k6e(cx->ks, i); - k6ef(cx->ks, 7); -#if !(DEC_ROUND == NO_TABLES) - for(i = N_COLS; i < 12 * N_COLS; ++i) - cx->ks[i] = inv_mcol(cx->ks[i]); -#endif - } -#endif - cx->inf.l = 0; - cx->inf.b[0] = 12 * 16; - -#ifdef USE_VIA_ACE_IF_PRESENT - if(VIA_ACE_AVAILABLE) - cx->inf.b[1] = 0xff; -#endif - return EXIT_SUCCESS; -} - -#endif - -#if defined(AES_256) || defined( AES_VAR ) - -#define k8ef(k,i) \ -{ k[v(56,(8*(i))+ 8)] = ss[0] ^= ls_box(ss[7],3) ^ t_use(r,c)[i]; \ - k[v(56,(8*(i))+ 9)] = ss[1] ^= ss[0]; \ - k[v(56,(8*(i))+10)] = ss[2] ^= ss[1]; \ - k[v(56,(8*(i))+11)] = ss[3] ^= ss[2]; \ -} - -#define k8e(k,i) \ -{ k8ef(k,i); \ - k[v(56,(8*(i))+12)] = ss[4] ^= ls_box(ss[3],0); \ - k[v(56,(8*(i))+13)] = ss[5] ^= ss[4]; \ - k[v(56,(8*(i))+14)] = ss[6] ^= ss[5]; \ - k[v(56,(8*(i))+15)] = ss[7] ^= ss[6]; \ -} - -#define kdf8(k,i) \ -{ ss[0] ^= ls_box(ss[7],3) ^ t_use(r,c)[i]; k[v(56,(8*(i))+ 8)] = ff(ss[0]); \ - ss[1] ^= ss[0]; k[v(56,(8*(i))+ 9)] = ff(ss[1]); \ - ss[2] ^= ss[1]; k[v(56,(8*(i))+10)] = ff(ss[2]); \ - ss[3] ^= ss[2]; k[v(56,(8*(i))+11)] = ff(ss[3]); \ - ss[4] ^= ls_box(ss[3],0); k[v(56,(8*(i))+12)] = ff(ss[4]); \ - ss[5] ^= ss[4]; k[v(56,(8*(i))+13)] = ff(ss[5]); \ - ss[6] ^= ss[5]; k[v(56,(8*(i))+14)] = ff(ss[6]); \ - ss[7] ^= ss[6]; k[v(56,(8*(i))+15)] = ff(ss[7]); \ -} - -#define kd8(k,i) \ -{ ss[8] = ls_box(ss[7],3) ^ t_use(r,c)[i]; \ - ss[0] ^= ss[8]; ss[8] = ff(ss[8]); k[v(56,(8*(i))+ 8)] = ss[8] ^= k[v(56,(8*(i)))]; \ - ss[1] ^= ss[0]; k[v(56,(8*(i))+ 9)] = ss[8] ^= k[v(56,(8*(i))+ 1)]; \ - ss[2] ^= ss[1]; k[v(56,(8*(i))+10)] = ss[8] ^= k[v(56,(8*(i))+ 2)]; \ - ss[3] ^= ss[2]; k[v(56,(8*(i))+11)] = ss[8] ^= k[v(56,(8*(i))+ 3)]; \ - ss[8] = ls_box(ss[3],0); \ - ss[4] ^= ss[8]; ss[8] = ff(ss[8]); k[v(56,(8*(i))+12)] = ss[8] ^= k[v(56,(8*(i))+ 4)]; \ - ss[5] ^= ss[4]; k[v(56,(8*(i))+13)] = ss[8] ^= k[v(56,(8*(i))+ 5)]; \ - ss[6] ^= ss[5]; k[v(56,(8*(i))+14)] = ss[8] ^= k[v(56,(8*(i))+ 6)]; \ - ss[7] ^= ss[6]; k[v(56,(8*(i))+15)] = ss[8] ^= k[v(56,(8*(i))+ 7)]; \ -} - -#define kdl8(k,i) \ -{ ss[0] ^= ls_box(ss[7],3) ^ t_use(r,c)[i]; k[v(56,(8*(i))+ 8)] = ss[0]; \ - ss[1] ^= ss[0]; k[v(56,(8*(i))+ 9)] = ss[1]; \ - ss[2] ^= ss[1]; k[v(56,(8*(i))+10)] = ss[2]; \ - ss[3] ^= ss[2]; k[v(56,(8*(i))+11)] = ss[3]; \ -} - -AES_RETURN aes_decrypt_key256(const unsigned char *key, aes_decrypt_ctx cx[1]) -{ uint_32t ss[9]; -#if defined( d_vars ) - d_vars; -#endif - cx->ks[v(56,(0))] = ss[0] = word_in(key, 0); - cx->ks[v(56,(1))] = ss[1] = word_in(key, 1); - cx->ks[v(56,(2))] = ss[2] = word_in(key, 2); - cx->ks[v(56,(3))] = ss[3] = word_in(key, 3); - -#ifdef DEC_KS_UNROLL - cx->ks[v(56,(4))] = ff(ss[4] = word_in(key, 4)); - cx->ks[v(56,(5))] = ff(ss[5] = word_in(key, 5)); - cx->ks[v(56,(6))] = ff(ss[6] = word_in(key, 6)); - cx->ks[v(56,(7))] = ff(ss[7] = word_in(key, 7)); - kdf8(cx->ks, 0); kd8(cx->ks, 1); - kd8(cx->ks, 2); kd8(cx->ks, 3); - kd8(cx->ks, 4); kd8(cx->ks, 5); - kdl8(cx->ks, 6); -#else - cx->ks[v(56,(4))] = ss[4] = word_in(key, 4); - cx->ks[v(56,(5))] = ss[5] = word_in(key, 5); - cx->ks[v(56,(6))] = ss[6] = word_in(key, 6); - cx->ks[v(56,(7))] = ss[7] = word_in(key, 7); - { uint_32t i; - - for(i = 0; i < 6; ++i) - k8e(cx->ks, i); - k8ef(cx->ks, 6); -#if !(DEC_ROUND == NO_TABLES) - for(i = N_COLS; i < 14 * N_COLS; ++i) - cx->ks[i] = inv_mcol(cx->ks[i]); -#endif - } -#endif - cx->inf.l = 0; - cx->inf.b[0] = 14 * 16; - -#ifdef USE_VIA_ACE_IF_PRESENT - if(VIA_ACE_AVAILABLE) - cx->inf.b[1] = 0xff; -#endif - return EXIT_SUCCESS; -} - -#endif - -#if defined( AES_VAR ) - -AES_RETURN aes_decrypt_key(const unsigned char *key, int key_len, aes_decrypt_ctx cx[1]) -{ - switch(key_len) - { - case 16: case 128: return aes_decrypt_key128(key, cx); - case 24: case 192: return aes_decrypt_key192(key, cx); - case 32: case 256: return aes_decrypt_key256(key, cx); - default: return EXIT_FAILURE; - } -} - -#endif - -#endif - -#if defined(__cplusplus) -} -#endif +/* +--------------------------------------------------------------------------- +Copyright (c) 1998-2010, Brian Gladman, Worcester, UK. All rights reserved. + +The redistribution and use of this software (with or without changes) +is allowed without the payment of fees or royalties provided that: + + source code distributions include the above copyright notice, this + list of conditions and the following disclaimer; + + binary distributions include the above copyright notice, this list + of conditions and the following disclaimer in their documentation. + +This software is provided 'as is' with no explicit or implied warranties +in respect of its operation, including, but not limited to, correctness +and fitness for purpose. +--------------------------------------------------------------------------- +Issue Date: 20/12/2007 +*/ + +#include "aesopt.h" +#include "aestab.h" + +#ifdef USE_VIA_ACE_IF_PRESENT +# include "aes_via_ace.h" +#endif + +#if defined(__cplusplus) +extern "C" +{ +#endif + +/* Initialise the key schedule from the user supplied key. The key + length can be specified in bytes, with legal values of 16, 24 + and 32, or in bits, with legal values of 128, 192 and 256. These + values correspond with Nk values of 4, 6 and 8 respectively. + + The following macros implement a single cycle in the key + schedule generation process. The number of cycles needed + for each cx->n_col and nk value is: + + nk = 4 5 6 7 8 + ------------------------------ + cx->n_col = 4 10 9 8 7 7 + cx->n_col = 5 14 11 10 9 9 + cx->n_col = 6 19 15 12 11 11 + cx->n_col = 7 21 19 16 13 14 + cx->n_col = 8 29 23 19 17 14 +*/ + +#if defined( REDUCE_CODE_SIZE ) +# define ls_box ls_sub + uint_32t ls_sub(const uint_32t t, const uint_32t n); +# define inv_mcol im_sub + uint_32t im_sub(const uint_32t x); +# ifdef ENC_KS_UNROLL +# undef ENC_KS_UNROLL +# endif +# ifdef DEC_KS_UNROLL +# undef DEC_KS_UNROLL +# endif +#endif + +#if (FUNCS_IN_C & ENC_KEYING_IN_C) + +#if defined(AES_128) || defined( AES_VAR ) + +#define ke4(k,i) \ +{ k[4*(i)+4] = ss[0] ^= ls_box(ss[3],3) ^ t_use(r,c)[i]; \ + k[4*(i)+5] = ss[1] ^= ss[0]; \ + k[4*(i)+6] = ss[2] ^= ss[1]; \ + k[4*(i)+7] = ss[3] ^= ss[2]; \ +} + +AES_RETURN aes_encrypt_key128(const unsigned char *key, aes_encrypt_ctx cx[1]) +{ uint_32t ss[4]; + + cx->ks[0] = ss[0] = word_in(key, 0); + cx->ks[1] = ss[1] = word_in(key, 1); + cx->ks[2] = ss[2] = word_in(key, 2); + cx->ks[3] = ss[3] = word_in(key, 3); + +#ifdef ENC_KS_UNROLL + ke4(cx->ks, 0); ke4(cx->ks, 1); + ke4(cx->ks, 2); ke4(cx->ks, 3); + ke4(cx->ks, 4); ke4(cx->ks, 5); + ke4(cx->ks, 6); ke4(cx->ks, 7); + ke4(cx->ks, 8); +#else + { uint_32t i; + for(i = 0; i < 9; ++i) + ke4(cx->ks, i); + } +#endif + ke4(cx->ks, 9); + cx->inf.l = 0; + cx->inf.b[0] = 10 * 16; + +#ifdef USE_VIA_ACE_IF_PRESENT + if(VIA_ACE_AVAILABLE) + cx->inf.b[1] = 0xff; +#endif + return EXIT_SUCCESS; +} + +#endif + +#if defined(AES_192) || defined( AES_VAR ) + +#define kef6(k,i) \ +{ k[6*(i)+ 6] = ss[0] ^= ls_box(ss[5],3) ^ t_use(r,c)[i]; \ + k[6*(i)+ 7] = ss[1] ^= ss[0]; \ + k[6*(i)+ 8] = ss[2] ^= ss[1]; \ + k[6*(i)+ 9] = ss[3] ^= ss[2]; \ +} + +#define ke6(k,i) \ +{ kef6(k,i); \ + k[6*(i)+10] = ss[4] ^= ss[3]; \ + k[6*(i)+11] = ss[5] ^= ss[4]; \ +} + +AES_RETURN aes_encrypt_key192(const unsigned char *key, aes_encrypt_ctx cx[1]) +{ uint_32t ss[6]; + + cx->ks[0] = ss[0] = word_in(key, 0); + cx->ks[1] = ss[1] = word_in(key, 1); + cx->ks[2] = ss[2] = word_in(key, 2); + cx->ks[3] = ss[3] = word_in(key, 3); + cx->ks[4] = ss[4] = word_in(key, 4); + cx->ks[5] = ss[5] = word_in(key, 5); + +#ifdef ENC_KS_UNROLL + ke6(cx->ks, 0); ke6(cx->ks, 1); + ke6(cx->ks, 2); ke6(cx->ks, 3); + ke6(cx->ks, 4); ke6(cx->ks, 5); + ke6(cx->ks, 6); +#else + { uint_32t i; + for(i = 0; i < 7; ++i) + ke6(cx->ks, i); + } +#endif + kef6(cx->ks, 7); + cx->inf.l = 0; + cx->inf.b[0] = 12 * 16; + +#ifdef USE_VIA_ACE_IF_PRESENT + if(VIA_ACE_AVAILABLE) + cx->inf.b[1] = 0xff; +#endif + return EXIT_SUCCESS; +} + +#endif + +#if defined(AES_256) || defined( AES_VAR ) + +#define kef8(k,i) \ +{ k[8*(i)+ 8] = ss[0] ^= ls_box(ss[7],3) ^ t_use(r,c)[i]; \ + k[8*(i)+ 9] = ss[1] ^= ss[0]; \ + k[8*(i)+10] = ss[2] ^= ss[1]; \ + k[8*(i)+11] = ss[3] ^= ss[2]; \ +} + +#define ke8(k,i) \ +{ kef8(k,i); \ + k[8*(i)+12] = ss[4] ^= ls_box(ss[3],0); \ + k[8*(i)+13] = ss[5] ^= ss[4]; \ + k[8*(i)+14] = ss[6] ^= ss[5]; \ + k[8*(i)+15] = ss[7] ^= ss[6]; \ +} + +AES_RETURN aes_encrypt_key256(const unsigned char *key, aes_encrypt_ctx cx[1]) +{ uint_32t ss[8]; + + cx->ks[0] = ss[0] = word_in(key, 0); + cx->ks[1] = ss[1] = word_in(key, 1); + cx->ks[2] = ss[2] = word_in(key, 2); + cx->ks[3] = ss[3] = word_in(key, 3); + cx->ks[4] = ss[4] = word_in(key, 4); + cx->ks[5] = ss[5] = word_in(key, 5); + cx->ks[6] = ss[6] = word_in(key, 6); + cx->ks[7] = ss[7] = word_in(key, 7); + +#ifdef ENC_KS_UNROLL + ke8(cx->ks, 0); ke8(cx->ks, 1); + ke8(cx->ks, 2); ke8(cx->ks, 3); + ke8(cx->ks, 4); ke8(cx->ks, 5); +#else + { uint_32t i; + for(i = 0; i < 6; ++i) + ke8(cx->ks, i); + } +#endif + kef8(cx->ks, 6); + cx->inf.l = 0; + cx->inf.b[0] = 14 * 16; + +#ifdef USE_VIA_ACE_IF_PRESENT + if(VIA_ACE_AVAILABLE) + cx->inf.b[1] = 0xff; +#endif + return EXIT_SUCCESS; +} + +#endif + +#if defined( AES_VAR ) + +AES_RETURN aes_encrypt_key(const unsigned char *key, int key_len, aes_encrypt_ctx cx[1]) +{ + switch(key_len) + { + case 16: case 128: return aes_encrypt_key128(key, cx); + case 24: case 192: return aes_encrypt_key192(key, cx); + case 32: case 256: return aes_encrypt_key256(key, cx); + default: return EXIT_FAILURE; + } +} + +#endif + +#endif + +#if (FUNCS_IN_C & DEC_KEYING_IN_C) + +/* this is used to store the decryption round keys */ +/* in forward or reverse order */ + +#ifdef AES_REV_DKS +#define v(n,i) ((n) - (i) + 2 * ((i) & 3)) +#else +#define v(n,i) (i) +#endif + +#if DEC_ROUND == NO_TABLES +#define ff(x) (x) +#else +#define ff(x) inv_mcol(x) +#if defined( dec_imvars ) +#define d_vars dec_imvars +#endif +#endif + +#if defined(AES_128) || defined( AES_VAR ) + +#define k4e(k,i) \ +{ k[v(40,(4*(i))+4)] = ss[0] ^= ls_box(ss[3],3) ^ t_use(r,c)[i]; \ + k[v(40,(4*(i))+5)] = ss[1] ^= ss[0]; \ + k[v(40,(4*(i))+6)] = ss[2] ^= ss[1]; \ + k[v(40,(4*(i))+7)] = ss[3] ^= ss[2]; \ +} + +#if 1 + +#define kdf4(k,i) \ +{ ss[0] = ss[0] ^ ss[2] ^ ss[1] ^ ss[3]; \ + ss[1] = ss[1] ^ ss[3]; \ + ss[2] = ss[2] ^ ss[3]; \ + ss[4] = ls_box(ss[(i+3) % 4], 3) ^ t_use(r,c)[i]; \ + ss[i % 4] ^= ss[4]; \ + ss[4] ^= k[v(40,(4*(i)))]; k[v(40,(4*(i))+4)] = ff(ss[4]); \ + ss[4] ^= k[v(40,(4*(i))+1)]; k[v(40,(4*(i))+5)] = ff(ss[4]); \ + ss[4] ^= k[v(40,(4*(i))+2)]; k[v(40,(4*(i))+6)] = ff(ss[4]); \ + ss[4] ^= k[v(40,(4*(i))+3)]; k[v(40,(4*(i))+7)] = ff(ss[4]); \ +} + +#define kd4(k,i) \ +{ ss[4] = ls_box(ss[(i+3) % 4], 3) ^ t_use(r,c)[i]; \ + ss[i % 4] ^= ss[4]; ss[4] = ff(ss[4]); \ + k[v(40,(4*(i))+4)] = ss[4] ^= k[v(40,(4*(i)))]; \ + k[v(40,(4*(i))+5)] = ss[4] ^= k[v(40,(4*(i))+1)]; \ + k[v(40,(4*(i))+6)] = ss[4] ^= k[v(40,(4*(i))+2)]; \ + k[v(40,(4*(i))+7)] = ss[4] ^= k[v(40,(4*(i))+3)]; \ +} + +#define kdl4(k,i) \ +{ ss[4] = ls_box(ss[(i+3) % 4], 3) ^ t_use(r,c)[i]; ss[i % 4] ^= ss[4]; \ + k[v(40,(4*(i))+4)] = (ss[0] ^= ss[1]) ^ ss[2] ^ ss[3]; \ + k[v(40,(4*(i))+5)] = ss[1] ^ ss[3]; \ + k[v(40,(4*(i))+6)] = ss[0]; \ + k[v(40,(4*(i))+7)] = ss[1]; \ +} + +#else + +#define kdf4(k,i) \ +{ ss[0] ^= ls_box(ss[3],3) ^ t_use(r,c)[i]; k[v(40,(4*(i))+ 4)] = ff(ss[0]); \ + ss[1] ^= ss[0]; k[v(40,(4*(i))+ 5)] = ff(ss[1]); \ + ss[2] ^= ss[1]; k[v(40,(4*(i))+ 6)] = ff(ss[2]); \ + ss[3] ^= ss[2]; k[v(40,(4*(i))+ 7)] = ff(ss[3]); \ +} + +#define kd4(k,i) \ +{ ss[4] = ls_box(ss[3],3) ^ t_use(r,c)[i]; \ + ss[0] ^= ss[4]; ss[4] = ff(ss[4]); k[v(40,(4*(i))+ 4)] = ss[4] ^= k[v(40,(4*(i)))]; \ + ss[1] ^= ss[0]; k[v(40,(4*(i))+ 5)] = ss[4] ^= k[v(40,(4*(i))+ 1)]; \ + ss[2] ^= ss[1]; k[v(40,(4*(i))+ 6)] = ss[4] ^= k[v(40,(4*(i))+ 2)]; \ + ss[3] ^= ss[2]; k[v(40,(4*(i))+ 7)] = ss[4] ^= k[v(40,(4*(i))+ 3)]; \ +} + +#define kdl4(k,i) \ +{ ss[0] ^= ls_box(ss[3],3) ^ t_use(r,c)[i]; k[v(40,(4*(i))+ 4)] = ss[0]; \ + ss[1] ^= ss[0]; k[v(40,(4*(i))+ 5)] = ss[1]; \ + ss[2] ^= ss[1]; k[v(40,(4*(i))+ 6)] = ss[2]; \ + ss[3] ^= ss[2]; k[v(40,(4*(i))+ 7)] = ss[3]; \ +} + +#endif + +AES_RETURN aes_decrypt_key128(const unsigned char *key, aes_decrypt_ctx cx[1]) +{ uint_32t ss[5]; +#if defined( d_vars ) + d_vars; +#endif + cx->ks[v(40,(0))] = ss[0] = word_in(key, 0); + cx->ks[v(40,(1))] = ss[1] = word_in(key, 1); + cx->ks[v(40,(2))] = ss[2] = word_in(key, 2); + cx->ks[v(40,(3))] = ss[3] = word_in(key, 3); + +#ifdef DEC_KS_UNROLL + kdf4(cx->ks, 0); kd4(cx->ks, 1); + kd4(cx->ks, 2); kd4(cx->ks, 3); + kd4(cx->ks, 4); kd4(cx->ks, 5); + kd4(cx->ks, 6); kd4(cx->ks, 7); + kd4(cx->ks, 8); kdl4(cx->ks, 9); +#else + { uint_32t i; + for(i = 0; i < 10; ++i) + k4e(cx->ks, i); +#if !(DEC_ROUND == NO_TABLES) + for(i = N_COLS; i < 10 * N_COLS; ++i) + cx->ks[i] = inv_mcol(cx->ks[i]); +#endif + } +#endif + cx->inf.l = 0; + cx->inf.b[0] = 10 * 16; + +#ifdef USE_VIA_ACE_IF_PRESENT + if(VIA_ACE_AVAILABLE) + cx->inf.b[1] = 0xff; +#endif + return EXIT_SUCCESS; +} + +#endif + +#if defined(AES_192) || defined( AES_VAR ) + +#define k6ef(k,i) \ +{ k[v(48,(6*(i))+ 6)] = ss[0] ^= ls_box(ss[5],3) ^ t_use(r,c)[i]; \ + k[v(48,(6*(i))+ 7)] = ss[1] ^= ss[0]; \ + k[v(48,(6*(i))+ 8)] = ss[2] ^= ss[1]; \ + k[v(48,(6*(i))+ 9)] = ss[3] ^= ss[2]; \ +} + +#define k6e(k,i) \ +{ k6ef(k,i); \ + k[v(48,(6*(i))+10)] = ss[4] ^= ss[3]; \ + k[v(48,(6*(i))+11)] = ss[5] ^= ss[4]; \ +} + +#define kdf6(k,i) \ +{ ss[0] ^= ls_box(ss[5],3) ^ t_use(r,c)[i]; k[v(48,(6*(i))+ 6)] = ff(ss[0]); \ + ss[1] ^= ss[0]; k[v(48,(6*(i))+ 7)] = ff(ss[1]); \ + ss[2] ^= ss[1]; k[v(48,(6*(i))+ 8)] = ff(ss[2]); \ + ss[3] ^= ss[2]; k[v(48,(6*(i))+ 9)] = ff(ss[3]); \ + ss[4] ^= ss[3]; k[v(48,(6*(i))+10)] = ff(ss[4]); \ + ss[5] ^= ss[4]; k[v(48,(6*(i))+11)] = ff(ss[5]); \ +} + +#define kd6(k,i) \ +{ ss[6] = ls_box(ss[5],3) ^ t_use(r,c)[i]; \ + ss[0] ^= ss[6]; ss[6] = ff(ss[6]); k[v(48,(6*(i))+ 6)] = ss[6] ^= k[v(48,(6*(i)))]; \ + ss[1] ^= ss[0]; k[v(48,(6*(i))+ 7)] = ss[6] ^= k[v(48,(6*(i))+ 1)]; \ + ss[2] ^= ss[1]; k[v(48,(6*(i))+ 8)] = ss[6] ^= k[v(48,(6*(i))+ 2)]; \ + ss[3] ^= ss[2]; k[v(48,(6*(i))+ 9)] = ss[6] ^= k[v(48,(6*(i))+ 3)]; \ + ss[4] ^= ss[3]; k[v(48,(6*(i))+10)] = ss[6] ^= k[v(48,(6*(i))+ 4)]; \ + ss[5] ^= ss[4]; k[v(48,(6*(i))+11)] = ss[6] ^= k[v(48,(6*(i))+ 5)]; \ +} + +#define kdl6(k,i) \ +{ ss[0] ^= ls_box(ss[5],3) ^ t_use(r,c)[i]; k[v(48,(6*(i))+ 6)] = ss[0]; \ + ss[1] ^= ss[0]; k[v(48,(6*(i))+ 7)] = ss[1]; \ + ss[2] ^= ss[1]; k[v(48,(6*(i))+ 8)] = ss[2]; \ + ss[3] ^= ss[2]; k[v(48,(6*(i))+ 9)] = ss[3]; \ +} + +AES_RETURN aes_decrypt_key192(const unsigned char *key, aes_decrypt_ctx cx[1]) +{ uint_32t ss[7]; +#if defined( d_vars ) + d_vars; +#endif + cx->ks[v(48,(0))] = ss[0] = word_in(key, 0); + cx->ks[v(48,(1))] = ss[1] = word_in(key, 1); + cx->ks[v(48,(2))] = ss[2] = word_in(key, 2); + cx->ks[v(48,(3))] = ss[3] = word_in(key, 3); + +#ifdef DEC_KS_UNROLL + cx->ks[v(48,(4))] = ff(ss[4] = word_in(key, 4)); + cx->ks[v(48,(5))] = ff(ss[5] = word_in(key, 5)); + kdf6(cx->ks, 0); kd6(cx->ks, 1); + kd6(cx->ks, 2); kd6(cx->ks, 3); + kd6(cx->ks, 4); kd6(cx->ks, 5); + kd6(cx->ks, 6); kdl6(cx->ks, 7); +#else + cx->ks[v(48,(4))] = ss[4] = word_in(key, 4); + cx->ks[v(48,(5))] = ss[5] = word_in(key, 5); + { uint_32t i; + + for(i = 0; i < 7; ++i) + k6e(cx->ks, i); + k6ef(cx->ks, 7); +#if !(DEC_ROUND == NO_TABLES) + for(i = N_COLS; i < 12 * N_COLS; ++i) + cx->ks[i] = inv_mcol(cx->ks[i]); +#endif + } +#endif + cx->inf.l = 0; + cx->inf.b[0] = 12 * 16; + +#ifdef USE_VIA_ACE_IF_PRESENT + if(VIA_ACE_AVAILABLE) + cx->inf.b[1] = 0xff; +#endif + return EXIT_SUCCESS; +} + +#endif + +#if defined(AES_256) || defined( AES_VAR ) + +#define k8ef(k,i) \ +{ k[v(56,(8*(i))+ 8)] = ss[0] ^= ls_box(ss[7],3) ^ t_use(r,c)[i]; \ + k[v(56,(8*(i))+ 9)] = ss[1] ^= ss[0]; \ + k[v(56,(8*(i))+10)] = ss[2] ^= ss[1]; \ + k[v(56,(8*(i))+11)] = ss[3] ^= ss[2]; \ +} + +#define k8e(k,i) \ +{ k8ef(k,i); \ + k[v(56,(8*(i))+12)] = ss[4] ^= ls_box(ss[3],0); \ + k[v(56,(8*(i))+13)] = ss[5] ^= ss[4]; \ + k[v(56,(8*(i))+14)] = ss[6] ^= ss[5]; \ + k[v(56,(8*(i))+15)] = ss[7] ^= ss[6]; \ +} + +#define kdf8(k,i) \ +{ ss[0] ^= ls_box(ss[7],3) ^ t_use(r,c)[i]; k[v(56,(8*(i))+ 8)] = ff(ss[0]); \ + ss[1] ^= ss[0]; k[v(56,(8*(i))+ 9)] = ff(ss[1]); \ + ss[2] ^= ss[1]; k[v(56,(8*(i))+10)] = ff(ss[2]); \ + ss[3] ^= ss[2]; k[v(56,(8*(i))+11)] = ff(ss[3]); \ + ss[4] ^= ls_box(ss[3],0); k[v(56,(8*(i))+12)] = ff(ss[4]); \ + ss[5] ^= ss[4]; k[v(56,(8*(i))+13)] = ff(ss[5]); \ + ss[6] ^= ss[5]; k[v(56,(8*(i))+14)] = ff(ss[6]); \ + ss[7] ^= ss[6]; k[v(56,(8*(i))+15)] = ff(ss[7]); \ +} + +#define kd8(k,i) \ +{ ss[8] = ls_box(ss[7],3) ^ t_use(r,c)[i]; \ + ss[0] ^= ss[8]; ss[8] = ff(ss[8]); k[v(56,(8*(i))+ 8)] = ss[8] ^= k[v(56,(8*(i)))]; \ + ss[1] ^= ss[0]; k[v(56,(8*(i))+ 9)] = ss[8] ^= k[v(56,(8*(i))+ 1)]; \ + ss[2] ^= ss[1]; k[v(56,(8*(i))+10)] = ss[8] ^= k[v(56,(8*(i))+ 2)]; \ + ss[3] ^= ss[2]; k[v(56,(8*(i))+11)] = ss[8] ^= k[v(56,(8*(i))+ 3)]; \ + ss[8] = ls_box(ss[3],0); \ + ss[4] ^= ss[8]; ss[8] = ff(ss[8]); k[v(56,(8*(i))+12)] = ss[8] ^= k[v(56,(8*(i))+ 4)]; \ + ss[5] ^= ss[4]; k[v(56,(8*(i))+13)] = ss[8] ^= k[v(56,(8*(i))+ 5)]; \ + ss[6] ^= ss[5]; k[v(56,(8*(i))+14)] = ss[8] ^= k[v(56,(8*(i))+ 6)]; \ + ss[7] ^= ss[6]; k[v(56,(8*(i))+15)] = ss[8] ^= k[v(56,(8*(i))+ 7)]; \ +} + +#define kdl8(k,i) \ +{ ss[0] ^= ls_box(ss[7],3) ^ t_use(r,c)[i]; k[v(56,(8*(i))+ 8)] = ss[0]; \ + ss[1] ^= ss[0]; k[v(56,(8*(i))+ 9)] = ss[1]; \ + ss[2] ^= ss[1]; k[v(56,(8*(i))+10)] = ss[2]; \ + ss[3] ^= ss[2]; k[v(56,(8*(i))+11)] = ss[3]; \ +} + +AES_RETURN aes_decrypt_key256(const unsigned char *key, aes_decrypt_ctx cx[1]) +{ uint_32t ss[9]; +#if defined( d_vars ) + d_vars; +#endif + cx->ks[v(56,(0))] = ss[0] = word_in(key, 0); + cx->ks[v(56,(1))] = ss[1] = word_in(key, 1); + cx->ks[v(56,(2))] = ss[2] = word_in(key, 2); + cx->ks[v(56,(3))] = ss[3] = word_in(key, 3); + +#ifdef DEC_KS_UNROLL + cx->ks[v(56,(4))] = ff(ss[4] = word_in(key, 4)); + cx->ks[v(56,(5))] = ff(ss[5] = word_in(key, 5)); + cx->ks[v(56,(6))] = ff(ss[6] = word_in(key, 6)); + cx->ks[v(56,(7))] = ff(ss[7] = word_in(key, 7)); + kdf8(cx->ks, 0); kd8(cx->ks, 1); + kd8(cx->ks, 2); kd8(cx->ks, 3); + kd8(cx->ks, 4); kd8(cx->ks, 5); + kdl8(cx->ks, 6); +#else + cx->ks[v(56,(4))] = ss[4] = word_in(key, 4); + cx->ks[v(56,(5))] = ss[5] = word_in(key, 5); + cx->ks[v(56,(6))] = ss[6] = word_in(key, 6); + cx->ks[v(56,(7))] = ss[7] = word_in(key, 7); + { uint_32t i; + + for(i = 0; i < 6; ++i) + k8e(cx->ks, i); + k8ef(cx->ks, 6); +#if !(DEC_ROUND == NO_TABLES) + for(i = N_COLS; i < 14 * N_COLS; ++i) + cx->ks[i] = inv_mcol(cx->ks[i]); +#endif + } +#endif + cx->inf.l = 0; + cx->inf.b[0] = 14 * 16; + +#ifdef USE_VIA_ACE_IF_PRESENT + if(VIA_ACE_AVAILABLE) + cx->inf.b[1] = 0xff; +#endif + return EXIT_SUCCESS; +} + +#endif + +#if defined( AES_VAR ) + +AES_RETURN aes_decrypt_key(const unsigned char *key, int key_len, aes_decrypt_ctx cx[1]) +{ + switch(key_len) + { + case 16: case 128: return aes_decrypt_key128(key, cx); + case 24: case 192: return aes_decrypt_key192(key, cx); + case 32: case 256: return aes_decrypt_key256(key, cx); + default: return EXIT_FAILURE; + } +} + +#endif + +#endif + +#if defined(__cplusplus) +} +#endif diff --git a/Zip/aes/aesopt.h b/Zip/minizip/aes/aesopt.h similarity index 97% rename from Zip/aes/aesopt.h rename to Zip/minizip/aes/aesopt.h index 8851425..fd8db2e 100755 --- a/Zip/aes/aesopt.h +++ b/Zip/minizip/aes/aesopt.h @@ -1,739 +1,739 @@ -/* ---------------------------------------------------------------------------- -Copyright (c) 1998-2010, Brian Gladman, Worcester, UK. All rights reserved. - -The redistribution and use of this software (with or without changes) -is allowed without the payment of fees or royalties provided that: - - source code distributions include the above copyright notice, this - list of conditions and the following disclaimer; - - binary distributions include the above copyright notice, this list - of conditions and the following disclaimer in their documentation. - -This software is provided 'as is' with no explicit or implied warranties -in respect of its operation, including, but not limited to, correctness -and fitness for purpose. ---------------------------------------------------------------------------- -Issue Date: 20/12/2007 - - This file contains the compilation options for AES (Rijndael) and code - that is common across encryption, key scheduling and table generation. - - OPERATION - - These source code files implement the AES algorithm Rijndael designed by - Joan Daemen and Vincent Rijmen. This version is designed for the standard - block size of 16 bytes and for key sizes of 128, 192 and 256 bits (16, 24 - and 32 bytes). - - This version is designed for flexibility and speed using operations on - 32-bit words rather than operations on bytes. It can be compiled with - either big or little endian internal byte order but is faster when the - native byte order for the processor is used. - - THE CIPHER INTERFACE - - The cipher interface is implemented as an array of bytes in which lower - AES bit sequence indexes map to higher numeric significance within bytes. - - uint_8t (an unsigned 8-bit type) - uint_32t (an unsigned 32-bit type) - struct aes_encrypt_ctx (structure for the cipher encryption context) - struct aes_decrypt_ctx (structure for the cipher decryption context) - AES_RETURN the function return type - - C subroutine calls: - - AES_RETURN aes_encrypt_key128(const unsigned char *key, aes_encrypt_ctx cx[1]); - AES_RETURN aes_encrypt_key192(const unsigned char *key, aes_encrypt_ctx cx[1]); - AES_RETURN aes_encrypt_key256(const unsigned char *key, aes_encrypt_ctx cx[1]); - AES_RETURN aes_encrypt(const unsigned char *in, unsigned char *out, - const aes_encrypt_ctx cx[1]); - - AES_RETURN aes_decrypt_key128(const unsigned char *key, aes_decrypt_ctx cx[1]); - AES_RETURN aes_decrypt_key192(const unsigned char *key, aes_decrypt_ctx cx[1]); - AES_RETURN aes_decrypt_key256(const unsigned char *key, aes_decrypt_ctx cx[1]); - AES_RETURN aes_decrypt(const unsigned char *in, unsigned char *out, - const aes_decrypt_ctx cx[1]); - - IMPORTANT NOTE: If you are using this C interface with dynamic tables make sure that - you call aes_init() before AES is used so that the tables are initialised. - - C++ aes class subroutines: - - Class AESencrypt for encryption - - Construtors: - AESencrypt(void) - AESencrypt(const unsigned char *key) - 128 bit key - Members: - AES_RETURN key128(const unsigned char *key) - AES_RETURN key192(const unsigned char *key) - AES_RETURN key256(const unsigned char *key) - AES_RETURN encrypt(const unsigned char *in, unsigned char *out) const - - Class AESdecrypt for encryption - Construtors: - AESdecrypt(void) - AESdecrypt(const unsigned char *key) - 128 bit key - Members: - AES_RETURN key128(const unsigned char *key) - AES_RETURN key192(const unsigned char *key) - AES_RETURN key256(const unsigned char *key) - AES_RETURN decrypt(const unsigned char *in, unsigned char *out) const -*/ - -#if !defined( _AESOPT_H ) -#define _AESOPT_H - -#if defined( __cplusplus ) -#include "aescpp.h" -#else -#include "aes.h" -#endif - -/* PLATFORM SPECIFIC INCLUDES */ - -#include "brg_endian.h" - -/* CONFIGURATION - THE USE OF DEFINES - - Later in this section there are a number of defines that control the - operation of the code. In each section, the purpose of each define is - explained so that the relevant form can be included or excluded by - setting either 1's or 0's respectively on the branches of the related - #if clauses. The following local defines should not be changed. -*/ - -#define ENCRYPTION_IN_C 1 -#define DECRYPTION_IN_C 2 -#define ENC_KEYING_IN_C 4 -#define DEC_KEYING_IN_C 8 - -#define NO_TABLES 0 -#define ONE_TABLE 1 -#define FOUR_TABLES 4 -#define NONE 0 -#define PARTIAL 1 -#define FULL 2 - -/* --- START OF USER CONFIGURED OPTIONS --- */ - -/* 1. BYTE ORDER WITHIN 32 BIT WORDS - - The fundamental data processing units in Rijndael are 8-bit bytes. The - input, output and key input are all enumerated arrays of bytes in which - bytes are numbered starting at zero and increasing to one less than the - number of bytes in the array in question. This enumeration is only used - for naming bytes and does not imply any adjacency or order relationship - from one byte to another. When these inputs and outputs are considered - as bit sequences, bits 8*n to 8*n+7 of the bit sequence are mapped to - byte[n] with bit 8n+i in the sequence mapped to bit 7-i within the byte. - In this implementation bits are numbered from 0 to 7 starting at the - numerically least significant end of each byte (bit n represents 2^n). - - However, Rijndael can be implemented more efficiently using 32-bit - words by packing bytes into words so that bytes 4*n to 4*n+3 are placed - into word[n]. While in principle these bytes can be assembled into words - in any positions, this implementation only supports the two formats in - which bytes in adjacent positions within words also have adjacent byte - numbers. This order is called big-endian if the lowest numbered bytes - in words have the highest numeric significance and little-endian if the - opposite applies. - - This code can work in either order irrespective of the order used by the - machine on which it runs. Normally the internal byte order will be set - to the order of the processor on which the code is to be run but this - define can be used to reverse this in special situations - - WARNING: Assembler code versions rely on PLATFORM_BYTE_ORDER being set. - This define will hence be redefined later (in section 4) if necessary -*/ - -#if 1 -# define ALGORITHM_BYTE_ORDER PLATFORM_BYTE_ORDER -#elif 0 -# define ALGORITHM_BYTE_ORDER IS_LITTLE_ENDIAN -#elif 0 -# define ALGORITHM_BYTE_ORDER IS_BIG_ENDIAN -#else -# error The algorithm byte order is not defined -#endif - -/* 2. VIA ACE SUPPORT */ - -#if !defined(__APPLE__) && defined( __GNUC__ ) && defined( __i386__ ) \ - || defined( _WIN32 ) && defined( _M_IX86 ) \ - && !(defined( _WIN64 ) || defined( _WIN32_WCE ) || defined( _MSC_VER ) && ( _MSC_VER <= 800 )) -# define VIA_ACE_POSSIBLE -#endif - -/* Define this option if support for the VIA ACE is required. This uses - inline assembler instructions and is only implemented for the Microsoft, - Intel and GCC compilers. If VIA ACE is known to be present, then defining - ASSUME_VIA_ACE_PRESENT will remove the ordinary encryption/decryption - code. If USE_VIA_ACE_IF_PRESENT is defined then VIA ACE will be used if - it is detected (both present and enabled) but the normal AES code will - also be present. - - When VIA ACE is to be used, all AES encryption contexts MUST be 16 byte - aligned; other input/output buffers do not need to be 16 byte aligned - but there are very large performance gains if this can be arranged. - VIA ACE also requires the decryption key schedule to be in reverse - order (which later checks below ensure). -*/ - -#if 1 && defined( VIA_ACE_POSSIBLE ) && !defined( USE_VIA_ACE_IF_PRESENT ) -# define USE_VIA_ACE_IF_PRESENT -#endif - -#if 0 && defined( VIA_ACE_POSSIBLE ) && !defined( ASSUME_VIA_ACE_PRESENT ) -# define ASSUME_VIA_ACE_PRESENT -# endif - -/* 3. ASSEMBLER SUPPORT - - This define (which can be on the command line) enables the use of the - assembler code routines for encryption, decryption and key scheduling - as follows: - - ASM_X86_V1C uses the assembler (aes_x86_v1.asm) with large tables for - encryption and decryption and but with key scheduling in C - ASM_X86_V2 uses assembler (aes_x86_v2.asm) with compressed tables for - encryption, decryption and key scheduling - ASM_X86_V2C uses assembler (aes_x86_v2.asm) with compressed tables for - encryption and decryption and but with key scheduling in C - ASM_AMD64_C uses assembler (aes_amd64.asm) with compressed tables for - encryption and decryption and but with key scheduling in C - - Change one 'if 0' below to 'if 1' to select the version or define - as a compilation option. -*/ - -#if 0 && !defined( ASM_X86_V1C ) -# define ASM_X86_V1C -#elif 0 && !defined( ASM_X86_V2 ) -# define ASM_X86_V2 -#elif 0 && !defined( ASM_X86_V2C ) -# define ASM_X86_V2C -#elif 0 && !defined( ASM_AMD64_C ) -# define ASM_AMD64_C -#endif - -#if (defined ( ASM_X86_V1C ) || defined( ASM_X86_V2 ) || defined( ASM_X86_V2C )) \ - && !defined( _M_IX86 ) || defined( ASM_AMD64_C ) && !defined( _M_X64 ) -# error Assembler code is only available for x86 and AMD64 systems -#endif - -/* 4. FAST INPUT/OUTPUT OPERATIONS. - - On some machines it is possible to improve speed by transferring the - bytes in the input and output arrays to and from the internal 32-bit - variables by addressing these arrays as if they are arrays of 32-bit - words. On some machines this will always be possible but there may - be a large performance penalty if the byte arrays are not aligned on - the normal word boundaries. On other machines this technique will - lead to memory access errors when such 32-bit word accesses are not - properly aligned. The option SAFE_IO avoids such problems but will - often be slower on those machines that support misaligned access - (especially so if care is taken to align the input and output byte - arrays on 32-bit word boundaries). If SAFE_IO is not defined it is - assumed that access to byte arrays as if they are arrays of 32-bit - words will not cause problems when such accesses are misaligned. -*/ -#if 1 && !defined( _MSC_VER ) -# define SAFE_IO -#endif - -/* 5. LOOP UNROLLING - - The code for encryption and decrytpion cycles through a number of rounds - that can be implemented either in a loop or by expanding the code into a - long sequence of instructions, the latter producing a larger program but - one that will often be much faster. The latter is called loop unrolling. - There are also potential speed advantages in expanding two iterations in - a loop with half the number of iterations, which is called partial loop - unrolling. The following options allow partial or full loop unrolling - to be set independently for encryption and decryption -*/ -#if 1 -# define ENC_UNROLL FULL -#elif 0 -# define ENC_UNROLL PARTIAL -#else -# define ENC_UNROLL NONE -#endif - -#if 1 -# define DEC_UNROLL FULL -#elif 0 -# define DEC_UNROLL PARTIAL -#else -# define DEC_UNROLL NONE -#endif - -#if 1 -# define ENC_KS_UNROLL -#endif - -#if 1 -# define DEC_KS_UNROLL -#endif - -/* 6. FAST FINITE FIELD OPERATIONS - - If this section is included, tables are used to provide faster finite - field arithmetic (this has no effect if FIXED_TABLES is defined). -*/ -#if 1 -# define FF_TABLES -#endif - -/* 7. INTERNAL STATE VARIABLE FORMAT - - The internal state of Rijndael is stored in a number of local 32-bit - word varaibles which can be defined either as an array or as individual - names variables. Include this section if you want to store these local - varaibles in arrays. Otherwise individual local variables will be used. -*/ -#if 1 -# define ARRAYS -#endif - -/* 8. FIXED OR DYNAMIC TABLES - - When this section is included the tables used by the code are compiled - statically into the binary file. Otherwise the subroutine aes_init() - must be called to compute them before the code is first used. -*/ -#if 1 && !(defined( _MSC_VER ) && ( _MSC_VER <= 800 )) -# define FIXED_TABLES -#endif - -/* 9. MASKING OR CASTING FROM LONGER VALUES TO BYTES - - In some systems it is better to mask longer values to extract bytes - rather than using a cast. This option allows this choice. -*/ -#if 0 -# define to_byte(x) ((uint_8t)(x)) -#else -# define to_byte(x) ((x) & 0xff) -#endif - -/* 10. TABLE ALIGNMENT - - On some sytsems speed will be improved by aligning the AES large lookup - tables on particular boundaries. This define should be set to a power of - two giving the desired alignment. It can be left undefined if alignment - is not needed. This option is specific to the Microsft VC++ compiler - - it seems to sometimes cause trouble for the VC++ version 6 compiler. -*/ - -#if 1 && defined( _MSC_VER ) && ( _MSC_VER >= 1300 ) -# define TABLE_ALIGN 32 -#endif - -/* 11. REDUCE CODE AND TABLE SIZE - - This replaces some expanded macros with function calls if AES_ASM_V2 or - AES_ASM_V2C are defined -*/ - -#if 1 && (defined( ASM_X86_V2 ) || defined( ASM_X86_V2C )) -# define REDUCE_CODE_SIZE -#endif - -/* 12. TABLE OPTIONS - - This cipher proceeds by repeating in a number of cycles known as 'rounds' - which are implemented by a round function which can optionally be speeded - up using tables. The basic tables are each 256 32-bit words, with either - one or four tables being required for each round function depending on - how much speed is required. The encryption and decryption round functions - are different and the last encryption and decrytpion round functions are - different again making four different round functions in all. - - This means that: - 1. Normal encryption and decryption rounds can each use either 0, 1 - or 4 tables and table spaces of 0, 1024 or 4096 bytes each. - 2. The last encryption and decryption rounds can also use either 0, 1 - or 4 tables and table spaces of 0, 1024 or 4096 bytes each. - - Include or exclude the appropriate definitions below to set the number - of tables used by this implementation. -*/ - -#if 1 /* set tables for the normal encryption round */ -# define ENC_ROUND FOUR_TABLES -#elif 0 -# define ENC_ROUND ONE_TABLE -#else -# define ENC_ROUND NO_TABLES -#endif - -#if 1 /* set tables for the last encryption round */ -# define LAST_ENC_ROUND FOUR_TABLES -#elif 0 -# define LAST_ENC_ROUND ONE_TABLE -#else -# define LAST_ENC_ROUND NO_TABLES -#endif - -#if 1 /* set tables for the normal decryption round */ -# define DEC_ROUND FOUR_TABLES -#elif 0 -# define DEC_ROUND ONE_TABLE -#else -# define DEC_ROUND NO_TABLES -#endif - -#if 1 /* set tables for the last decryption round */ -# define LAST_DEC_ROUND FOUR_TABLES -#elif 0 -# define LAST_DEC_ROUND ONE_TABLE -#else -# define LAST_DEC_ROUND NO_TABLES -#endif - -/* The decryption key schedule can be speeded up with tables in the same - way that the round functions can. Include or exclude the following - defines to set this requirement. -*/ -#if 1 -# define KEY_SCHED FOUR_TABLES -#elif 0 -# define KEY_SCHED ONE_TABLE -#else -# define KEY_SCHED NO_TABLES -#endif - -/* ---- END OF USER CONFIGURED OPTIONS ---- */ - -/* VIA ACE support is only available for VC++ and GCC */ - -#if !defined( _MSC_VER ) && !defined( __GNUC__ ) -# if defined( ASSUME_VIA_ACE_PRESENT ) -# undef ASSUME_VIA_ACE_PRESENT -# endif -# if defined( USE_VIA_ACE_IF_PRESENT ) -# undef USE_VIA_ACE_IF_PRESENT -# endif -#endif - -#if defined( ASSUME_VIA_ACE_PRESENT ) && !defined( USE_VIA_ACE_IF_PRESENT ) -# define USE_VIA_ACE_IF_PRESENT -#endif - -#if defined( USE_VIA_ACE_IF_PRESENT ) && !defined ( AES_REV_DKS ) -# define AES_REV_DKS -#endif - -/* Assembler support requires the use of platform byte order */ - -#if ( defined( ASM_X86_V1C ) || defined( ASM_X86_V2C ) || defined( ASM_AMD64_C ) ) \ - && (ALGORITHM_BYTE_ORDER != PLATFORM_BYTE_ORDER) -# undef ALGORITHM_BYTE_ORDER -# define ALGORITHM_BYTE_ORDER PLATFORM_BYTE_ORDER -#endif - -/* In this implementation the columns of the state array are each held in - 32-bit words. The state array can be held in various ways: in an array - of words, in a number of individual word variables or in a number of - processor registers. The following define maps a variable name x and - a column number c to the way the state array variable is to be held. - The first define below maps the state into an array x[c] whereas the - second form maps the state into a number of individual variables x0, - x1, etc. Another form could map individual state colums to machine - register names. -*/ - -#if defined( ARRAYS ) -# define s(x,c) x[c] -#else -# define s(x,c) x##c -#endif - -/* This implementation provides subroutines for encryption, decryption - and for setting the three key lengths (separately) for encryption - and decryption. Since not all functions are needed, masks are set - up here to determine which will be implemented in C -*/ - -#if !defined( AES_ENCRYPT ) -# define EFUNCS_IN_C 0 -#elif defined( ASSUME_VIA_ACE_PRESENT ) || defined( ASM_X86_V1C ) \ - || defined( ASM_X86_V2C ) || defined( ASM_AMD64_C ) -# define EFUNCS_IN_C ENC_KEYING_IN_C -#elif !defined( ASM_X86_V2 ) -# define EFUNCS_IN_C ( ENCRYPTION_IN_C | ENC_KEYING_IN_C ) -#else -# define EFUNCS_IN_C 0 -#endif - -#if !defined( AES_DECRYPT ) -# define DFUNCS_IN_C 0 -#elif defined( ASSUME_VIA_ACE_PRESENT ) || defined( ASM_X86_V1C ) \ - || defined( ASM_X86_V2C ) || defined( ASM_AMD64_C ) -# define DFUNCS_IN_C DEC_KEYING_IN_C -#elif !defined( ASM_X86_V2 ) -# define DFUNCS_IN_C ( DECRYPTION_IN_C | DEC_KEYING_IN_C ) -#else -# define DFUNCS_IN_C 0 -#endif - -#define FUNCS_IN_C ( EFUNCS_IN_C | DFUNCS_IN_C ) - -/* END OF CONFIGURATION OPTIONS */ - -#define RC_LENGTH (5 * (AES_BLOCK_SIZE / 4 - 2)) - -/* Disable or report errors on some combinations of options */ - -#if ENC_ROUND == NO_TABLES && LAST_ENC_ROUND != NO_TABLES -# undef LAST_ENC_ROUND -# define LAST_ENC_ROUND NO_TABLES -#elif ENC_ROUND == ONE_TABLE && LAST_ENC_ROUND == FOUR_TABLES -# undef LAST_ENC_ROUND -# define LAST_ENC_ROUND ONE_TABLE -#endif - -#if ENC_ROUND == NO_TABLES && ENC_UNROLL != NONE -# undef ENC_UNROLL -# define ENC_UNROLL NONE -#endif - -#if DEC_ROUND == NO_TABLES && LAST_DEC_ROUND != NO_TABLES -# undef LAST_DEC_ROUND -# define LAST_DEC_ROUND NO_TABLES -#elif DEC_ROUND == ONE_TABLE && LAST_DEC_ROUND == FOUR_TABLES -# undef LAST_DEC_ROUND -# define LAST_DEC_ROUND ONE_TABLE -#endif - -#if DEC_ROUND == NO_TABLES && DEC_UNROLL != NONE -# undef DEC_UNROLL -# define DEC_UNROLL NONE -#endif - -#if defined( bswap32 ) -# define aes_sw32 bswap32 -#elif defined( bswap_32 ) -# define aes_sw32 bswap_32 -#else -# define brot(x,n) (((uint_32t)(x) << n) | ((uint_32t)(x) >> (32 - n))) -# define aes_sw32(x) ((brot((x),8) & 0x00ff00ff) | (brot((x),24) & 0xff00ff00)) -#endif - -/* upr(x,n): rotates bytes within words by n positions, moving bytes to - higher index positions with wrap around into low positions - ups(x,n): moves bytes by n positions to higher index positions in - words but without wrap around - bval(x,n): extracts a byte from a word - - WARNING: The definitions given here are intended only for use with - unsigned variables and with shift counts that are compile - time constants -*/ - -#if ( ALGORITHM_BYTE_ORDER == IS_LITTLE_ENDIAN ) -# define upr(x,n) (((uint_32t)(x) << (8 * (n))) | ((uint_32t)(x) >> (32 - 8 * (n)))) -# define ups(x,n) ((uint_32t) (x) << (8 * (n))) -# define bval(x,n) to_byte((x) >> (8 * (n))) -# define bytes2word(b0, b1, b2, b3) \ - (((uint_32t)(b3) << 24) | ((uint_32t)(b2) << 16) | ((uint_32t)(b1) << 8) | (b0)) -#endif - -#if ( ALGORITHM_BYTE_ORDER == IS_BIG_ENDIAN ) -# define upr(x,n) (((uint_32t)(x) >> (8 * (n))) | ((uint_32t)(x) << (32 - 8 * (n)))) -# define ups(x,n) ((uint_32t) (x) >> (8 * (n))) -# define bval(x,n) to_byte((x) >> (24 - 8 * (n))) -# define bytes2word(b0, b1, b2, b3) \ - (((uint_32t)(b0) << 24) | ((uint_32t)(b1) << 16) | ((uint_32t)(b2) << 8) | (b3)) -#endif - -#if defined( SAFE_IO ) -# define word_in(x,c) bytes2word(((const uint_8t*)(x)+4*c)[0], ((const uint_8t*)(x)+4*c)[1], \ - ((const uint_8t*)(x)+4*c)[2], ((const uint_8t*)(x)+4*c)[3]) -# define word_out(x,c,v) { ((uint_8t*)(x)+4*c)[0] = bval(v,0); ((uint_8t*)(x)+4*c)[1] = bval(v,1); \ - ((uint_8t*)(x)+4*c)[2] = bval(v,2); ((uint_8t*)(x)+4*c)[3] = bval(v,3); } -#elif ( ALGORITHM_BYTE_ORDER == PLATFORM_BYTE_ORDER ) -# define word_in(x,c) (*((uint_32t*)(x)+(c))) -# define word_out(x,c,v) (*((uint_32t*)(x)+(c)) = (v)) -#else -# define word_in(x,c) aes_sw32(*((uint_32t*)(x)+(c))) -# define word_out(x,c,v) (*((uint_32t*)(x)+(c)) = aes_sw32(v)) -#endif - -/* the finite field modular polynomial and elements */ - -#define WPOLY 0x011b -#define BPOLY 0x1b - -/* multiply four bytes in GF(2^8) by 'x' {02} in parallel */ - -#define gf_c1 0x80808080 -#define gf_c2 0x7f7f7f7f -#define gf_mulx(x) ((((x) & gf_c2) << 1) ^ ((((x) & gf_c1) >> 7) * BPOLY)) - -/* The following defines provide alternative definitions of gf_mulx that might - give improved performance if a fast 32-bit multiply is not available. Note - that a temporary variable u needs to be defined where gf_mulx is used. - -#define gf_mulx(x) (u = (x) & gf_c1, u |= (u >> 1), ((x) & gf_c2) << 1) ^ ((u >> 3) | (u >> 6)) -#define gf_c4 (0x01010101 * BPOLY) -#define gf_mulx(x) (u = (x) & gf_c1, ((x) & gf_c2) << 1) ^ ((u - (u >> 7)) & gf_c4) -*/ - -/* Work out which tables are needed for the different options */ - -#if defined( ASM_X86_V1C ) -# if defined( ENC_ROUND ) -# undef ENC_ROUND -# endif -# define ENC_ROUND FOUR_TABLES -# if defined( LAST_ENC_ROUND ) -# undef LAST_ENC_ROUND -# endif -# define LAST_ENC_ROUND FOUR_TABLES -# if defined( DEC_ROUND ) -# undef DEC_ROUND -# endif -# define DEC_ROUND FOUR_TABLES -# if defined( LAST_DEC_ROUND ) -# undef LAST_DEC_ROUND -# endif -# define LAST_DEC_ROUND FOUR_TABLES -# if defined( KEY_SCHED ) -# undef KEY_SCHED -# define KEY_SCHED FOUR_TABLES -# endif -#endif - -#if ( FUNCS_IN_C & ENCRYPTION_IN_C ) || defined( ASM_X86_V1C ) -# if ENC_ROUND == ONE_TABLE -# define FT1_SET -# elif ENC_ROUND == FOUR_TABLES -# define FT4_SET -# else -# define SBX_SET -# endif -# if LAST_ENC_ROUND == ONE_TABLE -# define FL1_SET -# elif LAST_ENC_ROUND == FOUR_TABLES -# define FL4_SET -# elif !defined( SBX_SET ) -# define SBX_SET -# endif -#endif - -#if ( FUNCS_IN_C & DECRYPTION_IN_C ) || defined( ASM_X86_V1C ) -# if DEC_ROUND == ONE_TABLE -# define IT1_SET -# elif DEC_ROUND == FOUR_TABLES -# define IT4_SET -# else -# define ISB_SET -# endif -# if LAST_DEC_ROUND == ONE_TABLE -# define IL1_SET -# elif LAST_DEC_ROUND == FOUR_TABLES -# define IL4_SET -# elif !defined(ISB_SET) -# define ISB_SET -# endif -#endif - -#if !(defined( REDUCE_CODE_SIZE ) && (defined( ASM_X86_V2 ) || defined( ASM_X86_V2C ))) -# if ((FUNCS_IN_C & ENC_KEYING_IN_C) || (FUNCS_IN_C & DEC_KEYING_IN_C)) -# if KEY_SCHED == ONE_TABLE -# if !defined( FL1_SET ) && !defined( FL4_SET ) -# define LS1_SET -# endif -# elif KEY_SCHED == FOUR_TABLES -# if !defined( FL4_SET ) -# define LS4_SET -# endif -# elif !defined( SBX_SET ) -# define SBX_SET -# endif -# endif -# if (FUNCS_IN_C & DEC_KEYING_IN_C) -# if KEY_SCHED == ONE_TABLE -# define IM1_SET -# elif KEY_SCHED == FOUR_TABLES -# define IM4_SET -# elif !defined( SBX_SET ) -# define SBX_SET -# endif -# endif -#endif - -/* generic definitions of Rijndael macros that use tables */ - -#define no_table(x,box,vf,rf,c) bytes2word( \ - box[bval(vf(x,0,c),rf(0,c))], \ - box[bval(vf(x,1,c),rf(1,c))], \ - box[bval(vf(x,2,c),rf(2,c))], \ - box[bval(vf(x,3,c),rf(3,c))]) - -#define one_table(x,op,tab,vf,rf,c) \ - ( tab[bval(vf(x,0,c),rf(0,c))] \ - ^ op(tab[bval(vf(x,1,c),rf(1,c))],1) \ - ^ op(tab[bval(vf(x,2,c),rf(2,c))],2) \ - ^ op(tab[bval(vf(x,3,c),rf(3,c))],3)) - -#define four_tables(x,tab,vf,rf,c) \ - ( tab[0][bval(vf(x,0,c),rf(0,c))] \ - ^ tab[1][bval(vf(x,1,c),rf(1,c))] \ - ^ tab[2][bval(vf(x,2,c),rf(2,c))] \ - ^ tab[3][bval(vf(x,3,c),rf(3,c))]) - -#define vf1(x,r,c) (x) -#define rf1(r,c) (r) -#define rf2(r,c) ((8+r-c)&3) - -/* perform forward and inverse column mix operation on four bytes in long word x in */ -/* parallel. NOTE: x must be a simple variable, NOT an expression in these macros. */ - -#if !(defined( REDUCE_CODE_SIZE ) && (defined( ASM_X86_V2 ) || defined( ASM_X86_V2C ))) - -#if defined( FM4_SET ) /* not currently used */ -# define fwd_mcol(x) four_tables(x,t_use(f,m),vf1,rf1,0) -#elif defined( FM1_SET ) /* not currently used */ -# define fwd_mcol(x) one_table(x,upr,t_use(f,m),vf1,rf1,0) -#else -# define dec_fmvars uint_32t g2 -# define fwd_mcol(x) (g2 = gf_mulx(x), g2 ^ upr((x) ^ g2, 3) ^ upr((x), 2) ^ upr((x), 1)) -#endif - -#if defined( IM4_SET ) -# define inv_mcol(x) four_tables(x,t_use(i,m),vf1,rf1,0) -#elif defined( IM1_SET ) -# define inv_mcol(x) one_table(x,upr,t_use(i,m),vf1,rf1,0) -#else -# define dec_imvars uint_32t g2, g4, g9 -# define inv_mcol(x) (g2 = gf_mulx(x), g4 = gf_mulx(g2), g9 = (x) ^ gf_mulx(g4), g4 ^= g9, \ - (x) ^ g2 ^ g4 ^ upr(g2 ^ g9, 3) ^ upr(g4, 2) ^ upr(g9, 1)) -#endif - -#if defined( FL4_SET ) -# define ls_box(x,c) four_tables(x,t_use(f,l),vf1,rf2,c) -#elif defined( LS4_SET ) -# define ls_box(x,c) four_tables(x,t_use(l,s),vf1,rf2,c) -#elif defined( FL1_SET ) -# define ls_box(x,c) one_table(x,upr,t_use(f,l),vf1,rf2,c) -#elif defined( LS1_SET ) -# define ls_box(x,c) one_table(x,upr,t_use(l,s),vf1,rf2,c) -#else -# define ls_box(x,c) no_table(x,t_use(s,box),vf1,rf2,c) -#endif - -#endif - -#if defined( ASM_X86_V1C ) && defined( AES_DECRYPT ) && !defined( ISB_SET ) -# define ISB_SET -#endif - -#endif +/* +--------------------------------------------------------------------------- +Copyright (c) 1998-2010, Brian Gladman, Worcester, UK. All rights reserved. + +The redistribution and use of this software (with or without changes) +is allowed without the payment of fees or royalties provided that: + + source code distributions include the above copyright notice, this + list of conditions and the following disclaimer; + + binary distributions include the above copyright notice, this list + of conditions and the following disclaimer in their documentation. + +This software is provided 'as is' with no explicit or implied warranties +in respect of its operation, including, but not limited to, correctness +and fitness for purpose. +--------------------------------------------------------------------------- +Issue Date: 20/12/2007 + + This file contains the compilation options for AES (Rijndael) and code + that is common across encryption, key scheduling and table generation. + + OPERATION + + These source code files implement the AES algorithm Rijndael designed by + Joan Daemen and Vincent Rijmen. This version is designed for the standard + block size of 16 bytes and for key sizes of 128, 192 and 256 bits (16, 24 + and 32 bytes). + + This version is designed for flexibility and speed using operations on + 32-bit words rather than operations on bytes. It can be compiled with + either big or little endian internal byte order but is faster when the + native byte order for the processor is used. + + THE CIPHER INTERFACE + + The cipher interface is implemented as an array of bytes in which lower + AES bit sequence indexes map to higher numeric significance within bytes. + + uint_8t (an unsigned 8-bit type) + uint_32t (an unsigned 32-bit type) + struct aes_encrypt_ctx (structure for the cipher encryption context) + struct aes_decrypt_ctx (structure for the cipher decryption context) + AES_RETURN the function return type + + C subroutine calls: + + AES_RETURN aes_encrypt_key128(const unsigned char *key, aes_encrypt_ctx cx[1]); + AES_RETURN aes_encrypt_key192(const unsigned char *key, aes_encrypt_ctx cx[1]); + AES_RETURN aes_encrypt_key256(const unsigned char *key, aes_encrypt_ctx cx[1]); + AES_RETURN aes_encrypt(const unsigned char *in, unsigned char *out, + const aes_encrypt_ctx cx[1]); + + AES_RETURN aes_decrypt_key128(const unsigned char *key, aes_decrypt_ctx cx[1]); + AES_RETURN aes_decrypt_key192(const unsigned char *key, aes_decrypt_ctx cx[1]); + AES_RETURN aes_decrypt_key256(const unsigned char *key, aes_decrypt_ctx cx[1]); + AES_RETURN aes_decrypt(const unsigned char *in, unsigned char *out, + const aes_decrypt_ctx cx[1]); + + IMPORTANT NOTE: If you are using this C interface with dynamic tables make sure that + you call aes_init() before AES is used so that the tables are initialised. + + C++ aes class subroutines: + + Class AESencrypt for encryption + + Construtors: + AESencrypt(void) + AESencrypt(const unsigned char *key) - 128 bit key + Members: + AES_RETURN key128(const unsigned char *key) + AES_RETURN key192(const unsigned char *key) + AES_RETURN key256(const unsigned char *key) + AES_RETURN encrypt(const unsigned char *in, unsigned char *out) const + + Class AESdecrypt for encryption + Construtors: + AESdecrypt(void) + AESdecrypt(const unsigned char *key) - 128 bit key + Members: + AES_RETURN key128(const unsigned char *key) + AES_RETURN key192(const unsigned char *key) + AES_RETURN key256(const unsigned char *key) + AES_RETURN decrypt(const unsigned char *in, unsigned char *out) const +*/ + +#if !defined( _AESOPT_H ) +#define _AESOPT_H + +#if defined( __cplusplus ) +#include "aescpp.h" +#else +#include "aes.h" +#endif + +/* PLATFORM SPECIFIC INCLUDES */ + +#include "brg_endian.h" + +/* CONFIGURATION - THE USE OF DEFINES + + Later in this section there are a number of defines that control the + operation of the code. In each section, the purpose of each define is + explained so that the relevant form can be included or excluded by + setting either 1's or 0's respectively on the branches of the related + #if clauses. The following local defines should not be changed. +*/ + +#define ENCRYPTION_IN_C 1 +#define DECRYPTION_IN_C 2 +#define ENC_KEYING_IN_C 4 +#define DEC_KEYING_IN_C 8 + +#define NO_TABLES 0 +#define ONE_TABLE 1 +#define FOUR_TABLES 4 +#define NONE 0 +#define PARTIAL 1 +#define FULL 2 + +/* --- START OF USER CONFIGURED OPTIONS --- */ + +/* 1. BYTE ORDER WITHIN 32 BIT WORDS + + The fundamental data processing units in Rijndael are 8-bit bytes. The + input, output and key input are all enumerated arrays of bytes in which + bytes are numbered starting at zero and increasing to one less than the + number of bytes in the array in question. This enumeration is only used + for naming bytes and does not imply any adjacency or order relationship + from one byte to another. When these inputs and outputs are considered + as bit sequences, bits 8*n to 8*n+7 of the bit sequence are mapped to + byte[n] with bit 8n+i in the sequence mapped to bit 7-i within the byte. + In this implementation bits are numbered from 0 to 7 starting at the + numerically least significant end of each byte (bit n represents 2^n). + + However, Rijndael can be implemented more efficiently using 32-bit + words by packing bytes into words so that bytes 4*n to 4*n+3 are placed + into word[n]. While in principle these bytes can be assembled into words + in any positions, this implementation only supports the two formats in + which bytes in adjacent positions within words also have adjacent byte + numbers. This order is called big-endian if the lowest numbered bytes + in words have the highest numeric significance and little-endian if the + opposite applies. + + This code can work in either order irrespective of the order used by the + machine on which it runs. Normally the internal byte order will be set + to the order of the processor on which the code is to be run but this + define can be used to reverse this in special situations + + WARNING: Assembler code versions rely on PLATFORM_BYTE_ORDER being set. + This define will hence be redefined later (in section 4) if necessary +*/ + +#if 1 +# define ALGORITHM_BYTE_ORDER PLATFORM_BYTE_ORDER +#elif 0 +# define ALGORITHM_BYTE_ORDER IS_LITTLE_ENDIAN +#elif 0 +# define ALGORITHM_BYTE_ORDER IS_BIG_ENDIAN +#else +# error The algorithm byte order is not defined +#endif + +/* 2. VIA ACE SUPPORT */ + +#if !defined(__APPLE__) && defined( __GNUC__ ) && defined( __i386__ ) \ + || defined( _WIN32 ) && defined( _M_IX86 ) \ + && !(defined( _WIN64 ) || defined( _WIN32_WCE ) || defined( _MSC_VER ) && ( _MSC_VER <= 800 )) +# define VIA_ACE_POSSIBLE +#endif + +/* Define this option if support for the VIA ACE is required. This uses + inline assembler instructions and is only implemented for the Microsoft, + Intel and GCC compilers. If VIA ACE is known to be present, then defining + ASSUME_VIA_ACE_PRESENT will remove the ordinary encryption/decryption + code. If USE_VIA_ACE_IF_PRESENT is defined then VIA ACE will be used if + it is detected (both present and enabled) but the normal AES code will + also be present. + + When VIA ACE is to be used, all AES encryption contexts MUST be 16 byte + aligned; other input/output buffers do not need to be 16 byte aligned + but there are very large performance gains if this can be arranged. + VIA ACE also requires the decryption key schedule to be in reverse + order (which later checks below ensure). +*/ + +#if 1 && defined( VIA_ACE_POSSIBLE ) && !defined( USE_VIA_ACE_IF_PRESENT ) +# define USE_VIA_ACE_IF_PRESENT +#endif + +#if 0 && defined( VIA_ACE_POSSIBLE ) && !defined( ASSUME_VIA_ACE_PRESENT ) +# define ASSUME_VIA_ACE_PRESENT +# endif + +/* 3. ASSEMBLER SUPPORT + + This define (which can be on the command line) enables the use of the + assembler code routines for encryption, decryption and key scheduling + as follows: + + ASM_X86_V1C uses the assembler (aes_x86_v1.asm) with large tables for + encryption and decryption and but with key scheduling in C + ASM_X86_V2 uses assembler (aes_x86_v2.asm) with compressed tables for + encryption, decryption and key scheduling + ASM_X86_V2C uses assembler (aes_x86_v2.asm) with compressed tables for + encryption and decryption and but with key scheduling in C + ASM_AMD64_C uses assembler (aes_amd64.asm) with compressed tables for + encryption and decryption and but with key scheduling in C + + Change one 'if 0' below to 'if 1' to select the version or define + as a compilation option. +*/ + +#if 0 && !defined( ASM_X86_V1C ) +# define ASM_X86_V1C +#elif 0 && !defined( ASM_X86_V2 ) +# define ASM_X86_V2 +#elif 0 && !defined( ASM_X86_V2C ) +# define ASM_X86_V2C +#elif 0 && !defined( ASM_AMD64_C ) +# define ASM_AMD64_C +#endif + +#if (defined ( ASM_X86_V1C ) || defined( ASM_X86_V2 ) || defined( ASM_X86_V2C )) \ + && !defined( _M_IX86 ) || defined( ASM_AMD64_C ) && !defined( _M_X64 ) +# error Assembler code is only available for x86 and AMD64 systems +#endif + +/* 4. FAST INPUT/OUTPUT OPERATIONS. + + On some machines it is possible to improve speed by transferring the + bytes in the input and output arrays to and from the internal 32-bit + variables by addressing these arrays as if they are arrays of 32-bit + words. On some machines this will always be possible but there may + be a large performance penalty if the byte arrays are not aligned on + the normal word boundaries. On other machines this technique will + lead to memory access errors when such 32-bit word accesses are not + properly aligned. The option SAFE_IO avoids such problems but will + often be slower on those machines that support misaligned access + (especially so if care is taken to align the input and output byte + arrays on 32-bit word boundaries). If SAFE_IO is not defined it is + assumed that access to byte arrays as if they are arrays of 32-bit + words will not cause problems when such accesses are misaligned. +*/ +#if 1 && !defined( _MSC_VER ) +# define SAFE_IO +#endif + +/* 5. LOOP UNROLLING + + The code for encryption and decrytpion cycles through a number of rounds + that can be implemented either in a loop or by expanding the code into a + long sequence of instructions, the latter producing a larger program but + one that will often be much faster. The latter is called loop unrolling. + There are also potential speed advantages in expanding two iterations in + a loop with half the number of iterations, which is called partial loop + unrolling. The following options allow partial or full loop unrolling + to be set independently for encryption and decryption +*/ +#if 1 +# define ENC_UNROLL FULL +#elif 0 +# define ENC_UNROLL PARTIAL +#else +# define ENC_UNROLL NONE +#endif + +#if 1 +# define DEC_UNROLL FULL +#elif 0 +# define DEC_UNROLL PARTIAL +#else +# define DEC_UNROLL NONE +#endif + +#if 1 +# define ENC_KS_UNROLL +#endif + +#if 1 +# define DEC_KS_UNROLL +#endif + +/* 6. FAST FINITE FIELD OPERATIONS + + If this section is included, tables are used to provide faster finite + field arithmetic (this has no effect if FIXED_TABLES is defined). +*/ +#if 1 +# define FF_TABLES +#endif + +/* 7. INTERNAL STATE VARIABLE FORMAT + + The internal state of Rijndael is stored in a number of local 32-bit + word varaibles which can be defined either as an array or as individual + names variables. Include this section if you want to store these local + varaibles in arrays. Otherwise individual local variables will be used. +*/ +#if 1 +# define ARRAYS +#endif + +/* 8. FIXED OR DYNAMIC TABLES + + When this section is included the tables used by the code are compiled + statically into the binary file. Otherwise the subroutine aes_init() + must be called to compute them before the code is first used. +*/ +#if 1 && !(defined( _MSC_VER ) && ( _MSC_VER <= 800 )) +# define FIXED_TABLES +#endif + +/* 9. MASKING OR CASTING FROM LONGER VALUES TO BYTES + + In some systems it is better to mask longer values to extract bytes + rather than using a cast. This option allows this choice. +*/ +#if 0 +# define to_byte(x) ((uint_8t)(x)) +#else +# define to_byte(x) ((x) & 0xff) +#endif + +/* 10. TABLE ALIGNMENT + + On some sytsems speed will be improved by aligning the AES large lookup + tables on particular boundaries. This define should be set to a power of + two giving the desired alignment. It can be left undefined if alignment + is not needed. This option is specific to the Microsft VC++ compiler - + it seems to sometimes cause trouble for the VC++ version 6 compiler. +*/ + +#if 1 && defined( _MSC_VER ) && ( _MSC_VER >= 1300 ) +# define TABLE_ALIGN 32 +#endif + +/* 11. REDUCE CODE AND TABLE SIZE + + This replaces some expanded macros with function calls if AES_ASM_V2 or + AES_ASM_V2C are defined +*/ + +#if 1 && (defined( ASM_X86_V2 ) || defined( ASM_X86_V2C )) +# define REDUCE_CODE_SIZE +#endif + +/* 12. TABLE OPTIONS + + This cipher proceeds by repeating in a number of cycles known as 'rounds' + which are implemented by a round function which can optionally be speeded + up using tables. The basic tables are each 256 32-bit words, with either + one or four tables being required for each round function depending on + how much speed is required. The encryption and decryption round functions + are different and the last encryption and decrytpion round functions are + different again making four different round functions in all. + + This means that: + 1. Normal encryption and decryption rounds can each use either 0, 1 + or 4 tables and table spaces of 0, 1024 or 4096 bytes each. + 2. The last encryption and decryption rounds can also use either 0, 1 + or 4 tables and table spaces of 0, 1024 or 4096 bytes each. + + Include or exclude the appropriate definitions below to set the number + of tables used by this implementation. +*/ + +#if 1 /* set tables for the normal encryption round */ +# define ENC_ROUND FOUR_TABLES +#elif 0 +# define ENC_ROUND ONE_TABLE +#else +# define ENC_ROUND NO_TABLES +#endif + +#if 1 /* set tables for the last encryption round */ +# define LAST_ENC_ROUND FOUR_TABLES +#elif 0 +# define LAST_ENC_ROUND ONE_TABLE +#else +# define LAST_ENC_ROUND NO_TABLES +#endif + +#if 1 /* set tables for the normal decryption round */ +# define DEC_ROUND FOUR_TABLES +#elif 0 +# define DEC_ROUND ONE_TABLE +#else +# define DEC_ROUND NO_TABLES +#endif + +#if 1 /* set tables for the last decryption round */ +# define LAST_DEC_ROUND FOUR_TABLES +#elif 0 +# define LAST_DEC_ROUND ONE_TABLE +#else +# define LAST_DEC_ROUND NO_TABLES +#endif + +/* The decryption key schedule can be speeded up with tables in the same + way that the round functions can. Include or exclude the following + defines to set this requirement. +*/ +#if 1 +# define KEY_SCHED FOUR_TABLES +#elif 0 +# define KEY_SCHED ONE_TABLE +#else +# define KEY_SCHED NO_TABLES +#endif + +/* ---- END OF USER CONFIGURED OPTIONS ---- */ + +/* VIA ACE support is only available for VC++ and GCC */ + +#if !defined( _MSC_VER ) && !defined( __GNUC__ ) +# if defined( ASSUME_VIA_ACE_PRESENT ) +# undef ASSUME_VIA_ACE_PRESENT +# endif +# if defined( USE_VIA_ACE_IF_PRESENT ) +# undef USE_VIA_ACE_IF_PRESENT +# endif +#endif + +#if defined( ASSUME_VIA_ACE_PRESENT ) && !defined( USE_VIA_ACE_IF_PRESENT ) +# define USE_VIA_ACE_IF_PRESENT +#endif + +#if defined( USE_VIA_ACE_IF_PRESENT ) && !defined ( AES_REV_DKS ) +# define AES_REV_DKS +#endif + +/* Assembler support requires the use of platform byte order */ + +#if ( defined( ASM_X86_V1C ) || defined( ASM_X86_V2C ) || defined( ASM_AMD64_C ) ) \ + && (ALGORITHM_BYTE_ORDER != PLATFORM_BYTE_ORDER) +# undef ALGORITHM_BYTE_ORDER +# define ALGORITHM_BYTE_ORDER PLATFORM_BYTE_ORDER +#endif + +/* In this implementation the columns of the state array are each held in + 32-bit words. The state array can be held in various ways: in an array + of words, in a number of individual word variables or in a number of + processor registers. The following define maps a variable name x and + a column number c to the way the state array variable is to be held. + The first define below maps the state into an array x[c] whereas the + second form maps the state into a number of individual variables x0, + x1, etc. Another form could map individual state colums to machine + register names. +*/ + +#if defined( ARRAYS ) +# define s(x,c) x[c] +#else +# define s(x,c) x##c +#endif + +/* This implementation provides subroutines for encryption, decryption + and for setting the three key lengths (separately) for encryption + and decryption. Since not all functions are needed, masks are set + up here to determine which will be implemented in C +*/ + +#if !defined( AES_ENCRYPT ) +# define EFUNCS_IN_C 0 +#elif defined( ASSUME_VIA_ACE_PRESENT ) || defined( ASM_X86_V1C ) \ + || defined( ASM_X86_V2C ) || defined( ASM_AMD64_C ) +# define EFUNCS_IN_C ENC_KEYING_IN_C +#elif !defined( ASM_X86_V2 ) +# define EFUNCS_IN_C ( ENCRYPTION_IN_C | ENC_KEYING_IN_C ) +#else +# define EFUNCS_IN_C 0 +#endif + +#if !defined( AES_DECRYPT ) +# define DFUNCS_IN_C 0 +#elif defined( ASSUME_VIA_ACE_PRESENT ) || defined( ASM_X86_V1C ) \ + || defined( ASM_X86_V2C ) || defined( ASM_AMD64_C ) +# define DFUNCS_IN_C DEC_KEYING_IN_C +#elif !defined( ASM_X86_V2 ) +# define DFUNCS_IN_C ( DECRYPTION_IN_C | DEC_KEYING_IN_C ) +#else +# define DFUNCS_IN_C 0 +#endif + +#define FUNCS_IN_C ( EFUNCS_IN_C | DFUNCS_IN_C ) + +/* END OF CONFIGURATION OPTIONS */ + +#define RC_LENGTH (5 * (AES_BLOCK_SIZE / 4 - 2)) + +/* Disable or report errors on some combinations of options */ + +#if ENC_ROUND == NO_TABLES && LAST_ENC_ROUND != NO_TABLES +# undef LAST_ENC_ROUND +# define LAST_ENC_ROUND NO_TABLES +#elif ENC_ROUND == ONE_TABLE && LAST_ENC_ROUND == FOUR_TABLES +# undef LAST_ENC_ROUND +# define LAST_ENC_ROUND ONE_TABLE +#endif + +#if ENC_ROUND == NO_TABLES && ENC_UNROLL != NONE +# undef ENC_UNROLL +# define ENC_UNROLL NONE +#endif + +#if DEC_ROUND == NO_TABLES && LAST_DEC_ROUND != NO_TABLES +# undef LAST_DEC_ROUND +# define LAST_DEC_ROUND NO_TABLES +#elif DEC_ROUND == ONE_TABLE && LAST_DEC_ROUND == FOUR_TABLES +# undef LAST_DEC_ROUND +# define LAST_DEC_ROUND ONE_TABLE +#endif + +#if DEC_ROUND == NO_TABLES && DEC_UNROLL != NONE +# undef DEC_UNROLL +# define DEC_UNROLL NONE +#endif + +#if defined( bswap32 ) +# define aes_sw32 bswap32 +#elif defined( bswap_32 ) +# define aes_sw32 bswap_32 +#else +# define brot(x,n) (((uint_32t)(x) << n) | ((uint_32t)(x) >> (32 - n))) +# define aes_sw32(x) ((brot((x),8) & 0x00ff00ff) | (brot((x),24) & 0xff00ff00)) +#endif + +/* upr(x,n): rotates bytes within words by n positions, moving bytes to + higher index positions with wrap around into low positions + ups(x,n): moves bytes by n positions to higher index positions in + words but without wrap around + bval(x,n): extracts a byte from a word + + WARNING: The definitions given here are intended only for use with + unsigned variables and with shift counts that are compile + time constants +*/ + +#if ( ALGORITHM_BYTE_ORDER == IS_LITTLE_ENDIAN ) +# define upr(x,n) (((uint_32t)(x) << (8 * (n))) | ((uint_32t)(x) >> (32 - 8 * (n)))) +# define ups(x,n) ((uint_32t) (x) << (8 * (n))) +# define bval(x,n) to_byte((x) >> (8 * (n))) +# define bytes2word(b0, b1, b2, b3) \ + (((uint_32t)(b3) << 24) | ((uint_32t)(b2) << 16) | ((uint_32t)(b1) << 8) | (b0)) +#endif + +#if ( ALGORITHM_BYTE_ORDER == IS_BIG_ENDIAN ) +# define upr(x,n) (((uint_32t)(x) >> (8 * (n))) | ((uint_32t)(x) << (32 - 8 * (n)))) +# define ups(x,n) ((uint_32t) (x) >> (8 * (n))) +# define bval(x,n) to_byte((x) >> (24 - 8 * (n))) +# define bytes2word(b0, b1, b2, b3) \ + (((uint_32t)(b0) << 24) | ((uint_32t)(b1) << 16) | ((uint_32t)(b2) << 8) | (b3)) +#endif + +#if defined( SAFE_IO ) +# define word_in(x,c) bytes2word(((const uint_8t*)(x)+4*c)[0], ((const uint_8t*)(x)+4*c)[1], \ + ((const uint_8t*)(x)+4*c)[2], ((const uint_8t*)(x)+4*c)[3]) +# define word_out(x,c,v) { ((uint_8t*)(x)+4*c)[0] = bval(v,0); ((uint_8t*)(x)+4*c)[1] = bval(v,1); \ + ((uint_8t*)(x)+4*c)[2] = bval(v,2); ((uint_8t*)(x)+4*c)[3] = bval(v,3); } +#elif ( ALGORITHM_BYTE_ORDER == PLATFORM_BYTE_ORDER ) +# define word_in(x,c) (*((uint_32t*)(x)+(c))) +# define word_out(x,c,v) (*((uint_32t*)(x)+(c)) = (v)) +#else +# define word_in(x,c) aes_sw32(*((uint_32t*)(x)+(c))) +# define word_out(x,c,v) (*((uint_32t*)(x)+(c)) = aes_sw32(v)) +#endif + +/* the finite field modular polynomial and elements */ + +#define WPOLY 0x011b +#define BPOLY 0x1b + +/* multiply four bytes in GF(2^8) by 'x' {02} in parallel */ + +#define gf_c1 0x80808080 +#define gf_c2 0x7f7f7f7f +#define gf_mulx(x) ((((x) & gf_c2) << 1) ^ ((((x) & gf_c1) >> 7) * BPOLY)) + +/* The following defines provide alternative definitions of gf_mulx that might + give improved performance if a fast 32-bit multiply is not available. Note + that a temporary variable u needs to be defined where gf_mulx is used. + +#define gf_mulx(x) (u = (x) & gf_c1, u |= (u >> 1), ((x) & gf_c2) << 1) ^ ((u >> 3) | (u >> 6)) +#define gf_c4 (0x01010101 * BPOLY) +#define gf_mulx(x) (u = (x) & gf_c1, ((x) & gf_c2) << 1) ^ ((u - (u >> 7)) & gf_c4) +*/ + +/* Work out which tables are needed for the different options */ + +#if defined( ASM_X86_V1C ) +# if defined( ENC_ROUND ) +# undef ENC_ROUND +# endif +# define ENC_ROUND FOUR_TABLES +# if defined( LAST_ENC_ROUND ) +# undef LAST_ENC_ROUND +# endif +# define LAST_ENC_ROUND FOUR_TABLES +# if defined( DEC_ROUND ) +# undef DEC_ROUND +# endif +# define DEC_ROUND FOUR_TABLES +# if defined( LAST_DEC_ROUND ) +# undef LAST_DEC_ROUND +# endif +# define LAST_DEC_ROUND FOUR_TABLES +# if defined( KEY_SCHED ) +# undef KEY_SCHED +# define KEY_SCHED FOUR_TABLES +# endif +#endif + +#if ( FUNCS_IN_C & ENCRYPTION_IN_C ) || defined( ASM_X86_V1C ) +# if ENC_ROUND == ONE_TABLE +# define FT1_SET +# elif ENC_ROUND == FOUR_TABLES +# define FT4_SET +# else +# define SBX_SET +# endif +# if LAST_ENC_ROUND == ONE_TABLE +# define FL1_SET +# elif LAST_ENC_ROUND == FOUR_TABLES +# define FL4_SET +# elif !defined( SBX_SET ) +# define SBX_SET +# endif +#endif + +#if ( FUNCS_IN_C & DECRYPTION_IN_C ) || defined( ASM_X86_V1C ) +# if DEC_ROUND == ONE_TABLE +# define IT1_SET +# elif DEC_ROUND == FOUR_TABLES +# define IT4_SET +# else +# define ISB_SET +# endif +# if LAST_DEC_ROUND == ONE_TABLE +# define IL1_SET +# elif LAST_DEC_ROUND == FOUR_TABLES +# define IL4_SET +# elif !defined(ISB_SET) +# define ISB_SET +# endif +#endif + +#if !(defined( REDUCE_CODE_SIZE ) && (defined( ASM_X86_V2 ) || defined( ASM_X86_V2C ))) +# if ((FUNCS_IN_C & ENC_KEYING_IN_C) || (FUNCS_IN_C & DEC_KEYING_IN_C)) +# if KEY_SCHED == ONE_TABLE +# if !defined( FL1_SET ) && !defined( FL4_SET ) +# define LS1_SET +# endif +# elif KEY_SCHED == FOUR_TABLES +# if !defined( FL4_SET ) +# define LS4_SET +# endif +# elif !defined( SBX_SET ) +# define SBX_SET +# endif +# endif +# if (FUNCS_IN_C & DEC_KEYING_IN_C) +# if KEY_SCHED == ONE_TABLE +# define IM1_SET +# elif KEY_SCHED == FOUR_TABLES +# define IM4_SET +# elif !defined( SBX_SET ) +# define SBX_SET +# endif +# endif +#endif + +/* generic definitions of Rijndael macros that use tables */ + +#define no_table(x,box,vf,rf,c) bytes2word( \ + box[bval(vf(x,0,c),rf(0,c))], \ + box[bval(vf(x,1,c),rf(1,c))], \ + box[bval(vf(x,2,c),rf(2,c))], \ + box[bval(vf(x,3,c),rf(3,c))]) + +#define one_table(x,op,tab,vf,rf,c) \ + ( tab[bval(vf(x,0,c),rf(0,c))] \ + ^ op(tab[bval(vf(x,1,c),rf(1,c))],1) \ + ^ op(tab[bval(vf(x,2,c),rf(2,c))],2) \ + ^ op(tab[bval(vf(x,3,c),rf(3,c))],3)) + +#define four_tables(x,tab,vf,rf,c) \ + ( tab[0][bval(vf(x,0,c),rf(0,c))] \ + ^ tab[1][bval(vf(x,1,c),rf(1,c))] \ + ^ tab[2][bval(vf(x,2,c),rf(2,c))] \ + ^ tab[3][bval(vf(x,3,c),rf(3,c))]) + +#define vf1(x,r,c) (x) +#define rf1(r,c) (r) +#define rf2(r,c) ((8+r-c)&3) + +/* perform forward and inverse column mix operation on four bytes in long word x in */ +/* parallel. NOTE: x must be a simple variable, NOT an expression in these macros. */ + +#if !(defined( REDUCE_CODE_SIZE ) && (defined( ASM_X86_V2 ) || defined( ASM_X86_V2C ))) + +#if defined( FM4_SET ) /* not currently used */ +# define fwd_mcol(x) four_tables(x,t_use(f,m),vf1,rf1,0) +#elif defined( FM1_SET ) /* not currently used */ +# define fwd_mcol(x) one_table(x,upr,t_use(f,m),vf1,rf1,0) +#else +# define dec_fmvars uint_32t g2 +# define fwd_mcol(x) (g2 = gf_mulx(x), g2 ^ upr((x) ^ g2, 3) ^ upr((x), 2) ^ upr((x), 1)) +#endif + +#if defined( IM4_SET ) +# define inv_mcol(x) four_tables(x,t_use(i,m),vf1,rf1,0) +#elif defined( IM1_SET ) +# define inv_mcol(x) one_table(x,upr,t_use(i,m),vf1,rf1,0) +#else +# define dec_imvars uint_32t g2, g4, g9 +# define inv_mcol(x) (g2 = gf_mulx(x), g4 = gf_mulx(g2), g9 = (x) ^ gf_mulx(g4), g4 ^= g9, \ + (x) ^ g2 ^ g4 ^ upr(g2 ^ g9, 3) ^ upr(g4, 2) ^ upr(g9, 1)) +#endif + +#if defined( FL4_SET ) +# define ls_box(x,c) four_tables(x,t_use(f,l),vf1,rf2,c) +#elif defined( LS4_SET ) +# define ls_box(x,c) four_tables(x,t_use(l,s),vf1,rf2,c) +#elif defined( FL1_SET ) +# define ls_box(x,c) one_table(x,upr,t_use(f,l),vf1,rf2,c) +#elif defined( LS1_SET ) +# define ls_box(x,c) one_table(x,upr,t_use(l,s),vf1,rf2,c) +#else +# define ls_box(x,c) no_table(x,t_use(s,box),vf1,rf2,c) +#endif + +#endif + +#if defined( ASM_X86_V1C ) && defined( AES_DECRYPT ) && !defined( ISB_SET ) +# define ISB_SET +#endif + +#endif diff --git a/Zip/aes/aestab.c b/Zip/minizip/aes/aestab.c similarity index 95% rename from Zip/aes/aestab.c rename to Zip/minizip/aes/aestab.c index 6d193af..9671a7d 100755 --- a/Zip/aes/aestab.c +++ b/Zip/minizip/aes/aestab.c @@ -1,391 +1,391 @@ -/* ---------------------------------------------------------------------------- -Copyright (c) 1998-2010, Brian Gladman, Worcester, UK. All rights reserved. - -The redistribution and use of this software (with or without changes) -is allowed without the payment of fees or royalties provided that: - - source code distributions include the above copyright notice, this - list of conditions and the following disclaimer; - - binary distributions include the above copyright notice, this list - of conditions and the following disclaimer in their documentation. - -This software is provided 'as is' with no explicit or implied warranties -in respect of its operation, including, but not limited to, correctness -and fitness for purpose. ---------------------------------------------------------------------------- -Issue Date: 20/12/2007 -*/ - -#define DO_TABLES - -#include "aes.h" -#include "aesopt.h" - -#if defined(FIXED_TABLES) - -#define sb_data(w) {\ - w(0x63), w(0x7c), w(0x77), w(0x7b), w(0xf2), w(0x6b), w(0x6f), w(0xc5),\ - w(0x30), w(0x01), w(0x67), w(0x2b), w(0xfe), w(0xd7), w(0xab), w(0x76),\ - w(0xca), w(0x82), w(0xc9), w(0x7d), w(0xfa), w(0x59), w(0x47), w(0xf0),\ - w(0xad), w(0xd4), w(0xa2), w(0xaf), w(0x9c), w(0xa4), w(0x72), w(0xc0),\ - w(0xb7), w(0xfd), w(0x93), w(0x26), w(0x36), w(0x3f), w(0xf7), w(0xcc),\ - w(0x34), w(0xa5), w(0xe5), w(0xf1), w(0x71), w(0xd8), w(0x31), w(0x15),\ - w(0x04), w(0xc7), w(0x23), w(0xc3), w(0x18), w(0x96), w(0x05), w(0x9a),\ - w(0x07), w(0x12), w(0x80), w(0xe2), w(0xeb), w(0x27), w(0xb2), w(0x75),\ - w(0x09), w(0x83), w(0x2c), w(0x1a), w(0x1b), w(0x6e), w(0x5a), w(0xa0),\ - w(0x52), w(0x3b), w(0xd6), w(0xb3), w(0x29), w(0xe3), w(0x2f), w(0x84),\ - w(0x53), w(0xd1), w(0x00), w(0xed), w(0x20), w(0xfc), w(0xb1), w(0x5b),\ - w(0x6a), w(0xcb), w(0xbe), w(0x39), w(0x4a), w(0x4c), w(0x58), w(0xcf),\ - w(0xd0), w(0xef), w(0xaa), w(0xfb), w(0x43), w(0x4d), w(0x33), w(0x85),\ - w(0x45), w(0xf9), w(0x02), w(0x7f), w(0x50), w(0x3c), w(0x9f), w(0xa8),\ - w(0x51), w(0xa3), w(0x40), w(0x8f), w(0x92), w(0x9d), w(0x38), w(0xf5),\ - w(0xbc), w(0xb6), w(0xda), w(0x21), w(0x10), w(0xff), w(0xf3), w(0xd2),\ - w(0xcd), w(0x0c), w(0x13), w(0xec), w(0x5f), w(0x97), w(0x44), w(0x17),\ - w(0xc4), w(0xa7), w(0x7e), w(0x3d), w(0x64), w(0x5d), w(0x19), w(0x73),\ - w(0x60), w(0x81), w(0x4f), w(0xdc), w(0x22), w(0x2a), w(0x90), w(0x88),\ - w(0x46), w(0xee), w(0xb8), w(0x14), w(0xde), w(0x5e), w(0x0b), w(0xdb),\ - w(0xe0), w(0x32), w(0x3a), w(0x0a), w(0x49), w(0x06), w(0x24), w(0x5c),\ - w(0xc2), w(0xd3), w(0xac), w(0x62), w(0x91), w(0x95), w(0xe4), w(0x79),\ - w(0xe7), w(0xc8), w(0x37), w(0x6d), w(0x8d), w(0xd5), w(0x4e), w(0xa9),\ - w(0x6c), w(0x56), w(0xf4), w(0xea), w(0x65), w(0x7a), w(0xae), w(0x08),\ - w(0xba), w(0x78), w(0x25), w(0x2e), w(0x1c), w(0xa6), w(0xb4), w(0xc6),\ - w(0xe8), w(0xdd), w(0x74), w(0x1f), w(0x4b), w(0xbd), w(0x8b), w(0x8a),\ - w(0x70), w(0x3e), w(0xb5), w(0x66), w(0x48), w(0x03), w(0xf6), w(0x0e),\ - w(0x61), w(0x35), w(0x57), w(0xb9), w(0x86), w(0xc1), w(0x1d), w(0x9e),\ - w(0xe1), w(0xf8), w(0x98), w(0x11), w(0x69), w(0xd9), w(0x8e), w(0x94),\ - w(0x9b), w(0x1e), w(0x87), w(0xe9), w(0xce), w(0x55), w(0x28), w(0xdf),\ - w(0x8c), w(0xa1), w(0x89), w(0x0d), w(0xbf), w(0xe6), w(0x42), w(0x68),\ - w(0x41), w(0x99), w(0x2d), w(0x0f), w(0xb0), w(0x54), w(0xbb), w(0x16) } - -#define isb_data(w) {\ - w(0x52), w(0x09), w(0x6a), w(0xd5), w(0x30), w(0x36), w(0xa5), w(0x38),\ - w(0xbf), w(0x40), w(0xa3), w(0x9e), w(0x81), w(0xf3), w(0xd7), w(0xfb),\ - w(0x7c), w(0xe3), w(0x39), w(0x82), w(0x9b), w(0x2f), w(0xff), w(0x87),\ - w(0x34), w(0x8e), w(0x43), w(0x44), w(0xc4), w(0xde), w(0xe9), w(0xcb),\ - w(0x54), w(0x7b), w(0x94), w(0x32), w(0xa6), w(0xc2), w(0x23), w(0x3d),\ - w(0xee), w(0x4c), w(0x95), w(0x0b), w(0x42), w(0xfa), w(0xc3), w(0x4e),\ - w(0x08), w(0x2e), w(0xa1), w(0x66), w(0x28), w(0xd9), w(0x24), w(0xb2),\ - w(0x76), w(0x5b), w(0xa2), w(0x49), w(0x6d), w(0x8b), w(0xd1), w(0x25),\ - w(0x72), w(0xf8), w(0xf6), w(0x64), w(0x86), w(0x68), w(0x98), w(0x16),\ - w(0xd4), w(0xa4), w(0x5c), w(0xcc), w(0x5d), w(0x65), w(0xb6), w(0x92),\ - w(0x6c), w(0x70), w(0x48), w(0x50), w(0xfd), w(0xed), w(0xb9), w(0xda),\ - w(0x5e), w(0x15), w(0x46), w(0x57), w(0xa7), w(0x8d), w(0x9d), w(0x84),\ - w(0x90), w(0xd8), w(0xab), w(0x00), w(0x8c), w(0xbc), w(0xd3), w(0x0a),\ - w(0xf7), w(0xe4), w(0x58), w(0x05), w(0xb8), w(0xb3), w(0x45), w(0x06),\ - w(0xd0), w(0x2c), w(0x1e), w(0x8f), w(0xca), w(0x3f), w(0x0f), w(0x02),\ - w(0xc1), w(0xaf), w(0xbd), w(0x03), w(0x01), w(0x13), w(0x8a), w(0x6b),\ - w(0x3a), w(0x91), w(0x11), w(0x41), w(0x4f), w(0x67), w(0xdc), w(0xea),\ - w(0x97), w(0xf2), w(0xcf), w(0xce), w(0xf0), w(0xb4), w(0xe6), w(0x73),\ - w(0x96), w(0xac), w(0x74), w(0x22), w(0xe7), w(0xad), w(0x35), w(0x85),\ - w(0xe2), w(0xf9), w(0x37), w(0xe8), w(0x1c), w(0x75), w(0xdf), w(0x6e),\ - w(0x47), w(0xf1), w(0x1a), w(0x71), w(0x1d), w(0x29), w(0xc5), w(0x89),\ - w(0x6f), w(0xb7), w(0x62), w(0x0e), w(0xaa), w(0x18), w(0xbe), w(0x1b),\ - w(0xfc), w(0x56), w(0x3e), w(0x4b), w(0xc6), w(0xd2), w(0x79), w(0x20),\ - w(0x9a), w(0xdb), w(0xc0), w(0xfe), w(0x78), w(0xcd), w(0x5a), w(0xf4),\ - w(0x1f), w(0xdd), w(0xa8), w(0x33), w(0x88), w(0x07), w(0xc7), w(0x31),\ - w(0xb1), w(0x12), w(0x10), w(0x59), w(0x27), w(0x80), w(0xec), w(0x5f),\ - w(0x60), w(0x51), w(0x7f), w(0xa9), w(0x19), w(0xb5), w(0x4a), w(0x0d),\ - w(0x2d), w(0xe5), w(0x7a), w(0x9f), w(0x93), w(0xc9), w(0x9c), w(0xef),\ - w(0xa0), w(0xe0), w(0x3b), w(0x4d), w(0xae), w(0x2a), w(0xf5), w(0xb0),\ - w(0xc8), w(0xeb), w(0xbb), w(0x3c), w(0x83), w(0x53), w(0x99), w(0x61),\ - w(0x17), w(0x2b), w(0x04), w(0x7e), w(0xba), w(0x77), w(0xd6), w(0x26),\ - w(0xe1), w(0x69), w(0x14), w(0x63), w(0x55), w(0x21), w(0x0c), w(0x7d) } - -#define mm_data(w) {\ - w(0x00), w(0x01), w(0x02), w(0x03), w(0x04), w(0x05), w(0x06), w(0x07),\ - w(0x08), w(0x09), w(0x0a), w(0x0b), w(0x0c), w(0x0d), w(0x0e), w(0x0f),\ - w(0x10), w(0x11), w(0x12), w(0x13), w(0x14), w(0x15), w(0x16), w(0x17),\ - w(0x18), w(0x19), w(0x1a), w(0x1b), w(0x1c), w(0x1d), w(0x1e), w(0x1f),\ - w(0x20), w(0x21), w(0x22), w(0x23), w(0x24), w(0x25), w(0x26), w(0x27),\ - w(0x28), w(0x29), w(0x2a), w(0x2b), w(0x2c), w(0x2d), w(0x2e), w(0x2f),\ - w(0x30), w(0x31), w(0x32), w(0x33), w(0x34), w(0x35), w(0x36), w(0x37),\ - w(0x38), w(0x39), w(0x3a), w(0x3b), w(0x3c), w(0x3d), w(0x3e), w(0x3f),\ - w(0x40), w(0x41), w(0x42), w(0x43), w(0x44), w(0x45), w(0x46), w(0x47),\ - w(0x48), w(0x49), w(0x4a), w(0x4b), w(0x4c), w(0x4d), w(0x4e), w(0x4f),\ - w(0x50), w(0x51), w(0x52), w(0x53), w(0x54), w(0x55), w(0x56), w(0x57),\ - w(0x58), w(0x59), w(0x5a), w(0x5b), w(0x5c), w(0x5d), w(0x5e), w(0x5f),\ - w(0x60), w(0x61), w(0x62), w(0x63), w(0x64), w(0x65), w(0x66), w(0x67),\ - w(0x68), w(0x69), w(0x6a), w(0x6b), w(0x6c), w(0x6d), w(0x6e), w(0x6f),\ - w(0x70), w(0x71), w(0x72), w(0x73), w(0x74), w(0x75), w(0x76), w(0x77),\ - w(0x78), w(0x79), w(0x7a), w(0x7b), w(0x7c), w(0x7d), w(0x7e), w(0x7f),\ - w(0x80), w(0x81), w(0x82), w(0x83), w(0x84), w(0x85), w(0x86), w(0x87),\ - w(0x88), w(0x89), w(0x8a), w(0x8b), w(0x8c), w(0x8d), w(0x8e), w(0x8f),\ - w(0x90), w(0x91), w(0x92), w(0x93), w(0x94), w(0x95), w(0x96), w(0x97),\ - w(0x98), w(0x99), w(0x9a), w(0x9b), w(0x9c), w(0x9d), w(0x9e), w(0x9f),\ - w(0xa0), w(0xa1), w(0xa2), w(0xa3), w(0xa4), w(0xa5), w(0xa6), w(0xa7),\ - w(0xa8), w(0xa9), w(0xaa), w(0xab), w(0xac), w(0xad), w(0xae), w(0xaf),\ - w(0xb0), w(0xb1), w(0xb2), w(0xb3), w(0xb4), w(0xb5), w(0xb6), w(0xb7),\ - w(0xb8), w(0xb9), w(0xba), w(0xbb), w(0xbc), w(0xbd), w(0xbe), w(0xbf),\ - w(0xc0), w(0xc1), w(0xc2), w(0xc3), w(0xc4), w(0xc5), w(0xc6), w(0xc7),\ - w(0xc8), w(0xc9), w(0xca), w(0xcb), w(0xcc), w(0xcd), w(0xce), w(0xcf),\ - w(0xd0), w(0xd1), w(0xd2), w(0xd3), w(0xd4), w(0xd5), w(0xd6), w(0xd7),\ - w(0xd8), w(0xd9), w(0xda), w(0xdb), w(0xdc), w(0xdd), w(0xde), w(0xdf),\ - w(0xe0), w(0xe1), w(0xe2), w(0xe3), w(0xe4), w(0xe5), w(0xe6), w(0xe7),\ - w(0xe8), w(0xe9), w(0xea), w(0xeb), w(0xec), w(0xed), w(0xee), w(0xef),\ - w(0xf0), w(0xf1), w(0xf2), w(0xf3), w(0xf4), w(0xf5), w(0xf6), w(0xf7),\ - w(0xf8), w(0xf9), w(0xfa), w(0xfb), w(0xfc), w(0xfd), w(0xfe), w(0xff) } - -#define rc_data(w) {\ - w(0x01), w(0x02), w(0x04), w(0x08), w(0x10),w(0x20), w(0x40), w(0x80),\ - w(0x1b), w(0x36) } - -#define h0(x) (x) - -#define w0(p) bytes2word(p, 0, 0, 0) -#define w1(p) bytes2word(0, p, 0, 0) -#define w2(p) bytes2word(0, 0, p, 0) -#define w3(p) bytes2word(0, 0, 0, p) - -#define u0(p) bytes2word(f2(p), p, p, f3(p)) -#define u1(p) bytes2word(f3(p), f2(p), p, p) -#define u2(p) bytes2word(p, f3(p), f2(p), p) -#define u3(p) bytes2word(p, p, f3(p), f2(p)) - -#define v0(p) bytes2word(fe(p), f9(p), fd(p), fb(p)) -#define v1(p) bytes2word(fb(p), fe(p), f9(p), fd(p)) -#define v2(p) bytes2word(fd(p), fb(p), fe(p), f9(p)) -#define v3(p) bytes2word(f9(p), fd(p), fb(p), fe(p)) - -#endif - -#if defined(FIXED_TABLES) || !defined(FF_TABLES) - -#define f2(x) ((x<<1) ^ (((x>>7) & 1) * WPOLY)) -#define f4(x) ((x<<2) ^ (((x>>6) & 1) * WPOLY) ^ (((x>>6) & 2) * WPOLY)) -#define f8(x) ((x<<3) ^ (((x>>5) & 1) * WPOLY) ^ (((x>>5) & 2) * WPOLY) \ - ^ (((x>>5) & 4) * WPOLY)) -#define f3(x) (f2(x) ^ x) -#define f9(x) (f8(x) ^ x) -#define fb(x) (f8(x) ^ f2(x) ^ x) -#define fd(x) (f8(x) ^ f4(x) ^ x) -#define fe(x) (f8(x) ^ f4(x) ^ f2(x)) - -#else - -#define f2(x) ((x) ? pow[log[x] + 0x19] : 0) -#define f3(x) ((x) ? pow[log[x] + 0x01] : 0) -#define f9(x) ((x) ? pow[log[x] + 0xc7] : 0) -#define fb(x) ((x) ? pow[log[x] + 0x68] : 0) -#define fd(x) ((x) ? pow[log[x] + 0xee] : 0) -#define fe(x) ((x) ? pow[log[x] + 0xdf] : 0) - -#endif - -#include "aestab.h" - -#if defined(__cplusplus) -extern "C" -{ -#endif - -#if defined(FIXED_TABLES) - -/* implemented in case of wrong call for fixed tables */ - -AES_RETURN aes_init(void) -{ - return EXIT_SUCCESS; -} - -#else /* Generate the tables for the dynamic table option */ - -#if defined(FF_TABLES) - -#define gf_inv(x) ((x) ? pow[ 255 - log[x]] : 0) - -#else - -/* It will generally be sensible to use tables to compute finite - field multiplies and inverses but where memory is scarse this - code might sometimes be better. But it only has effect during - initialisation so its pretty unimportant in overall terms. -*/ - -/* return 2 ^ (n - 1) where n is the bit number of the highest bit - set in x with x in the range 1 < x < 0x00000200. This form is - used so that locals within fi can be bytes rather than words -*/ - -static uint_8t hibit(const uint_32t x) -{ uint_8t r = (uint_8t)((x >> 1) | (x >> 2)); - - r |= (r >> 2); - r |= (r >> 4); - return (r + 1) >> 1; -} - -/* return the inverse of the finite field element x */ - -static uint_8t gf_inv(const uint_8t x) -{ uint_8t p1 = x, p2 = BPOLY, n1 = hibit(x), n2 = 0x80, v1 = 1, v2 = 0; - - if(x < 2) - return x; - - for( ; ; ) - { - if(n1) - while(n2 >= n1) /* divide polynomial p2 by p1 */ - { - n2 /= n1; /* shift smaller polynomial left */ - p2 ^= (p1 * n2) & 0xff; /* and remove from larger one */ - v2 ^= v1 * n2; /* shift accumulated value and */ - n2 = hibit(p2); /* add into result */ - } - else - return v1; - - if(n2) /* repeat with values swapped */ - while(n1 >= n2) - { - n1 /= n2; - p1 ^= p2 * n1; - v1 ^= v2 * n1; - n1 = hibit(p1); - } - else - return v2; - } -} - -#endif - -/* The forward and inverse affine transformations used in the S-box */ -uint_8t fwd_affine(const uint_8t x) -{ uint_32t w = x; - w ^= (w << 1) ^ (w << 2) ^ (w << 3) ^ (w << 4); - return 0x63 ^ ((w ^ (w >> 8)) & 0xff); -} - -uint_8t inv_affine(const uint_8t x) -{ uint_32t w = x; - w = (w << 1) ^ (w << 3) ^ (w << 6); - return 0x05 ^ ((w ^ (w >> 8)) & 0xff); -} - -static int init = 0; - -AES_RETURN aes_init(void) -{ uint_32t i, w; - -#if defined(FF_TABLES) - - uint_8t pow[512], log[256]; - - if(init) - return EXIT_SUCCESS; - /* log and power tables for GF(2^8) finite field with - WPOLY as modular polynomial - the simplest primitive - root is 0x03, used here to generate the tables - */ - - i = 0; w = 1; - do - { - pow[i] = (uint_8t)w; - pow[i + 255] = (uint_8t)w; - log[w] = (uint_8t)i++; - w ^= (w << 1) ^ (w & 0x80 ? WPOLY : 0); - } - while (w != 1); - -#else - if(init) - return EXIT_SUCCESS; -#endif - - for(i = 0, w = 1; i < RC_LENGTH; ++i) - { - t_set(r,c)[i] = bytes2word(w, 0, 0, 0); - w = f2(w); - } - - for(i = 0; i < 256; ++i) - { uint_8t b; - - b = fwd_affine(gf_inv((uint_8t)i)); - w = bytes2word(f2(b), b, b, f3(b)); - -#if defined( SBX_SET ) - t_set(s,box)[i] = b; -#endif - -#if defined( FT1_SET ) /* tables for a normal encryption round */ - t_set(f,n)[i] = w; -#endif -#if defined( FT4_SET ) - t_set(f,n)[0][i] = w; - t_set(f,n)[1][i] = upr(w,1); - t_set(f,n)[2][i] = upr(w,2); - t_set(f,n)[3][i] = upr(w,3); -#endif - w = bytes2word(b, 0, 0, 0); - -#if defined( FL1_SET ) /* tables for last encryption round (may also */ - t_set(f,l)[i] = w; /* be used in the key schedule) */ -#endif -#if defined( FL4_SET ) - t_set(f,l)[0][i] = w; - t_set(f,l)[1][i] = upr(w,1); - t_set(f,l)[2][i] = upr(w,2); - t_set(f,l)[3][i] = upr(w,3); -#endif - -#if defined( LS1_SET ) /* table for key schedule if t_set(f,l) above is*/ - t_set(l,s)[i] = w; /* not of the required form */ -#endif -#if defined( LS4_SET ) - t_set(l,s)[0][i] = w; - t_set(l,s)[1][i] = upr(w,1); - t_set(l,s)[2][i] = upr(w,2); - t_set(l,s)[3][i] = upr(w,3); -#endif - - b = gf_inv(inv_affine((uint_8t)i)); - w = bytes2word(fe(b), f9(b), fd(b), fb(b)); - -#if defined( IM1_SET ) /* tables for the inverse mix column operation */ - t_set(i,m)[b] = w; -#endif -#if defined( IM4_SET ) - t_set(i,m)[0][b] = w; - t_set(i,m)[1][b] = upr(w,1); - t_set(i,m)[2][b] = upr(w,2); - t_set(i,m)[3][b] = upr(w,3); -#endif - -#if defined( ISB_SET ) - t_set(i,box)[i] = b; -#endif -#if defined( IT1_SET ) /* tables for a normal decryption round */ - t_set(i,n)[i] = w; -#endif -#if defined( IT4_SET ) - t_set(i,n)[0][i] = w; - t_set(i,n)[1][i] = upr(w,1); - t_set(i,n)[2][i] = upr(w,2); - t_set(i,n)[3][i] = upr(w,3); -#endif - w = bytes2word(b, 0, 0, 0); -#if defined( IL1_SET ) /* tables for last decryption round */ - t_set(i,l)[i] = w; -#endif -#if defined( IL4_SET ) - t_set(i,l)[0][i] = w; - t_set(i,l)[1][i] = upr(w,1); - t_set(i,l)[2][i] = upr(w,2); - t_set(i,l)[3][i] = upr(w,3); -#endif - } - init = 1; - return EXIT_SUCCESS; -} - -#endif - -#if defined(__cplusplus) -} -#endif - +/* +--------------------------------------------------------------------------- +Copyright (c) 1998-2010, Brian Gladman, Worcester, UK. All rights reserved. + +The redistribution and use of this software (with or without changes) +is allowed without the payment of fees or royalties provided that: + + source code distributions include the above copyright notice, this + list of conditions and the following disclaimer; + + binary distributions include the above copyright notice, this list + of conditions and the following disclaimer in their documentation. + +This software is provided 'as is' with no explicit or implied warranties +in respect of its operation, including, but not limited to, correctness +and fitness for purpose. +--------------------------------------------------------------------------- +Issue Date: 20/12/2007 +*/ + +#define DO_TABLES + +#include "aes.h" +#include "aesopt.h" + +#if defined(FIXED_TABLES) + +#define sb_data(w) {\ + w(0x63), w(0x7c), w(0x77), w(0x7b), w(0xf2), w(0x6b), w(0x6f), w(0xc5),\ + w(0x30), w(0x01), w(0x67), w(0x2b), w(0xfe), w(0xd7), w(0xab), w(0x76),\ + w(0xca), w(0x82), w(0xc9), w(0x7d), w(0xfa), w(0x59), w(0x47), w(0xf0),\ + w(0xad), w(0xd4), w(0xa2), w(0xaf), w(0x9c), w(0xa4), w(0x72), w(0xc0),\ + w(0xb7), w(0xfd), w(0x93), w(0x26), w(0x36), w(0x3f), w(0xf7), w(0xcc),\ + w(0x34), w(0xa5), w(0xe5), w(0xf1), w(0x71), w(0xd8), w(0x31), w(0x15),\ + w(0x04), w(0xc7), w(0x23), w(0xc3), w(0x18), w(0x96), w(0x05), w(0x9a),\ + w(0x07), w(0x12), w(0x80), w(0xe2), w(0xeb), w(0x27), w(0xb2), w(0x75),\ + w(0x09), w(0x83), w(0x2c), w(0x1a), w(0x1b), w(0x6e), w(0x5a), w(0xa0),\ + w(0x52), w(0x3b), w(0xd6), w(0xb3), w(0x29), w(0xe3), w(0x2f), w(0x84),\ + w(0x53), w(0xd1), w(0x00), w(0xed), w(0x20), w(0xfc), w(0xb1), w(0x5b),\ + w(0x6a), w(0xcb), w(0xbe), w(0x39), w(0x4a), w(0x4c), w(0x58), w(0xcf),\ + w(0xd0), w(0xef), w(0xaa), w(0xfb), w(0x43), w(0x4d), w(0x33), w(0x85),\ + w(0x45), w(0xf9), w(0x02), w(0x7f), w(0x50), w(0x3c), w(0x9f), w(0xa8),\ + w(0x51), w(0xa3), w(0x40), w(0x8f), w(0x92), w(0x9d), w(0x38), w(0xf5),\ + w(0xbc), w(0xb6), w(0xda), w(0x21), w(0x10), w(0xff), w(0xf3), w(0xd2),\ + w(0xcd), w(0x0c), w(0x13), w(0xec), w(0x5f), w(0x97), w(0x44), w(0x17),\ + w(0xc4), w(0xa7), w(0x7e), w(0x3d), w(0x64), w(0x5d), w(0x19), w(0x73),\ + w(0x60), w(0x81), w(0x4f), w(0xdc), w(0x22), w(0x2a), w(0x90), w(0x88),\ + w(0x46), w(0xee), w(0xb8), w(0x14), w(0xde), w(0x5e), w(0x0b), w(0xdb),\ + w(0xe0), w(0x32), w(0x3a), w(0x0a), w(0x49), w(0x06), w(0x24), w(0x5c),\ + w(0xc2), w(0xd3), w(0xac), w(0x62), w(0x91), w(0x95), w(0xe4), w(0x79),\ + w(0xe7), w(0xc8), w(0x37), w(0x6d), w(0x8d), w(0xd5), w(0x4e), w(0xa9),\ + w(0x6c), w(0x56), w(0xf4), w(0xea), w(0x65), w(0x7a), w(0xae), w(0x08),\ + w(0xba), w(0x78), w(0x25), w(0x2e), w(0x1c), w(0xa6), w(0xb4), w(0xc6),\ + w(0xe8), w(0xdd), w(0x74), w(0x1f), w(0x4b), w(0xbd), w(0x8b), w(0x8a),\ + w(0x70), w(0x3e), w(0xb5), w(0x66), w(0x48), w(0x03), w(0xf6), w(0x0e),\ + w(0x61), w(0x35), w(0x57), w(0xb9), w(0x86), w(0xc1), w(0x1d), w(0x9e),\ + w(0xe1), w(0xf8), w(0x98), w(0x11), w(0x69), w(0xd9), w(0x8e), w(0x94),\ + w(0x9b), w(0x1e), w(0x87), w(0xe9), w(0xce), w(0x55), w(0x28), w(0xdf),\ + w(0x8c), w(0xa1), w(0x89), w(0x0d), w(0xbf), w(0xe6), w(0x42), w(0x68),\ + w(0x41), w(0x99), w(0x2d), w(0x0f), w(0xb0), w(0x54), w(0xbb), w(0x16) } + +#define isb_data(w) {\ + w(0x52), w(0x09), w(0x6a), w(0xd5), w(0x30), w(0x36), w(0xa5), w(0x38),\ + w(0xbf), w(0x40), w(0xa3), w(0x9e), w(0x81), w(0xf3), w(0xd7), w(0xfb),\ + w(0x7c), w(0xe3), w(0x39), w(0x82), w(0x9b), w(0x2f), w(0xff), w(0x87),\ + w(0x34), w(0x8e), w(0x43), w(0x44), w(0xc4), w(0xde), w(0xe9), w(0xcb),\ + w(0x54), w(0x7b), w(0x94), w(0x32), w(0xa6), w(0xc2), w(0x23), w(0x3d),\ + w(0xee), w(0x4c), w(0x95), w(0x0b), w(0x42), w(0xfa), w(0xc3), w(0x4e),\ + w(0x08), w(0x2e), w(0xa1), w(0x66), w(0x28), w(0xd9), w(0x24), w(0xb2),\ + w(0x76), w(0x5b), w(0xa2), w(0x49), w(0x6d), w(0x8b), w(0xd1), w(0x25),\ + w(0x72), w(0xf8), w(0xf6), w(0x64), w(0x86), w(0x68), w(0x98), w(0x16),\ + w(0xd4), w(0xa4), w(0x5c), w(0xcc), w(0x5d), w(0x65), w(0xb6), w(0x92),\ + w(0x6c), w(0x70), w(0x48), w(0x50), w(0xfd), w(0xed), w(0xb9), w(0xda),\ + w(0x5e), w(0x15), w(0x46), w(0x57), w(0xa7), w(0x8d), w(0x9d), w(0x84),\ + w(0x90), w(0xd8), w(0xab), w(0x00), w(0x8c), w(0xbc), w(0xd3), w(0x0a),\ + w(0xf7), w(0xe4), w(0x58), w(0x05), w(0xb8), w(0xb3), w(0x45), w(0x06),\ + w(0xd0), w(0x2c), w(0x1e), w(0x8f), w(0xca), w(0x3f), w(0x0f), w(0x02),\ + w(0xc1), w(0xaf), w(0xbd), w(0x03), w(0x01), w(0x13), w(0x8a), w(0x6b),\ + w(0x3a), w(0x91), w(0x11), w(0x41), w(0x4f), w(0x67), w(0xdc), w(0xea),\ + w(0x97), w(0xf2), w(0xcf), w(0xce), w(0xf0), w(0xb4), w(0xe6), w(0x73),\ + w(0x96), w(0xac), w(0x74), w(0x22), w(0xe7), w(0xad), w(0x35), w(0x85),\ + w(0xe2), w(0xf9), w(0x37), w(0xe8), w(0x1c), w(0x75), w(0xdf), w(0x6e),\ + w(0x47), w(0xf1), w(0x1a), w(0x71), w(0x1d), w(0x29), w(0xc5), w(0x89),\ + w(0x6f), w(0xb7), w(0x62), w(0x0e), w(0xaa), w(0x18), w(0xbe), w(0x1b),\ + w(0xfc), w(0x56), w(0x3e), w(0x4b), w(0xc6), w(0xd2), w(0x79), w(0x20),\ + w(0x9a), w(0xdb), w(0xc0), w(0xfe), w(0x78), w(0xcd), w(0x5a), w(0xf4),\ + w(0x1f), w(0xdd), w(0xa8), w(0x33), w(0x88), w(0x07), w(0xc7), w(0x31),\ + w(0xb1), w(0x12), w(0x10), w(0x59), w(0x27), w(0x80), w(0xec), w(0x5f),\ + w(0x60), w(0x51), w(0x7f), w(0xa9), w(0x19), w(0xb5), w(0x4a), w(0x0d),\ + w(0x2d), w(0xe5), w(0x7a), w(0x9f), w(0x93), w(0xc9), w(0x9c), w(0xef),\ + w(0xa0), w(0xe0), w(0x3b), w(0x4d), w(0xae), w(0x2a), w(0xf5), w(0xb0),\ + w(0xc8), w(0xeb), w(0xbb), w(0x3c), w(0x83), w(0x53), w(0x99), w(0x61),\ + w(0x17), w(0x2b), w(0x04), w(0x7e), w(0xba), w(0x77), w(0xd6), w(0x26),\ + w(0xe1), w(0x69), w(0x14), w(0x63), w(0x55), w(0x21), w(0x0c), w(0x7d) } + +#define mm_data(w) {\ + w(0x00), w(0x01), w(0x02), w(0x03), w(0x04), w(0x05), w(0x06), w(0x07),\ + w(0x08), w(0x09), w(0x0a), w(0x0b), w(0x0c), w(0x0d), w(0x0e), w(0x0f),\ + w(0x10), w(0x11), w(0x12), w(0x13), w(0x14), w(0x15), w(0x16), w(0x17),\ + w(0x18), w(0x19), w(0x1a), w(0x1b), w(0x1c), w(0x1d), w(0x1e), w(0x1f),\ + w(0x20), w(0x21), w(0x22), w(0x23), w(0x24), w(0x25), w(0x26), w(0x27),\ + w(0x28), w(0x29), w(0x2a), w(0x2b), w(0x2c), w(0x2d), w(0x2e), w(0x2f),\ + w(0x30), w(0x31), w(0x32), w(0x33), w(0x34), w(0x35), w(0x36), w(0x37),\ + w(0x38), w(0x39), w(0x3a), w(0x3b), w(0x3c), w(0x3d), w(0x3e), w(0x3f),\ + w(0x40), w(0x41), w(0x42), w(0x43), w(0x44), w(0x45), w(0x46), w(0x47),\ + w(0x48), w(0x49), w(0x4a), w(0x4b), w(0x4c), w(0x4d), w(0x4e), w(0x4f),\ + w(0x50), w(0x51), w(0x52), w(0x53), w(0x54), w(0x55), w(0x56), w(0x57),\ + w(0x58), w(0x59), w(0x5a), w(0x5b), w(0x5c), w(0x5d), w(0x5e), w(0x5f),\ + w(0x60), w(0x61), w(0x62), w(0x63), w(0x64), w(0x65), w(0x66), w(0x67),\ + w(0x68), w(0x69), w(0x6a), w(0x6b), w(0x6c), w(0x6d), w(0x6e), w(0x6f),\ + w(0x70), w(0x71), w(0x72), w(0x73), w(0x74), w(0x75), w(0x76), w(0x77),\ + w(0x78), w(0x79), w(0x7a), w(0x7b), w(0x7c), w(0x7d), w(0x7e), w(0x7f),\ + w(0x80), w(0x81), w(0x82), w(0x83), w(0x84), w(0x85), w(0x86), w(0x87),\ + w(0x88), w(0x89), w(0x8a), w(0x8b), w(0x8c), w(0x8d), w(0x8e), w(0x8f),\ + w(0x90), w(0x91), w(0x92), w(0x93), w(0x94), w(0x95), w(0x96), w(0x97),\ + w(0x98), w(0x99), w(0x9a), w(0x9b), w(0x9c), w(0x9d), w(0x9e), w(0x9f),\ + w(0xa0), w(0xa1), w(0xa2), w(0xa3), w(0xa4), w(0xa5), w(0xa6), w(0xa7),\ + w(0xa8), w(0xa9), w(0xaa), w(0xab), w(0xac), w(0xad), w(0xae), w(0xaf),\ + w(0xb0), w(0xb1), w(0xb2), w(0xb3), w(0xb4), w(0xb5), w(0xb6), w(0xb7),\ + w(0xb8), w(0xb9), w(0xba), w(0xbb), w(0xbc), w(0xbd), w(0xbe), w(0xbf),\ + w(0xc0), w(0xc1), w(0xc2), w(0xc3), w(0xc4), w(0xc5), w(0xc6), w(0xc7),\ + w(0xc8), w(0xc9), w(0xca), w(0xcb), w(0xcc), w(0xcd), w(0xce), w(0xcf),\ + w(0xd0), w(0xd1), w(0xd2), w(0xd3), w(0xd4), w(0xd5), w(0xd6), w(0xd7),\ + w(0xd8), w(0xd9), w(0xda), w(0xdb), w(0xdc), w(0xdd), w(0xde), w(0xdf),\ + w(0xe0), w(0xe1), w(0xe2), w(0xe3), w(0xe4), w(0xe5), w(0xe6), w(0xe7),\ + w(0xe8), w(0xe9), w(0xea), w(0xeb), w(0xec), w(0xed), w(0xee), w(0xef),\ + w(0xf0), w(0xf1), w(0xf2), w(0xf3), w(0xf4), w(0xf5), w(0xf6), w(0xf7),\ + w(0xf8), w(0xf9), w(0xfa), w(0xfb), w(0xfc), w(0xfd), w(0xfe), w(0xff) } + +#define rc_data(w) {\ + w(0x01), w(0x02), w(0x04), w(0x08), w(0x10),w(0x20), w(0x40), w(0x80),\ + w(0x1b), w(0x36) } + +#define h0(x) (x) + +#define w0(p) bytes2word(p, 0, 0, 0) +#define w1(p) bytes2word(0, p, 0, 0) +#define w2(p) bytes2word(0, 0, p, 0) +#define w3(p) bytes2word(0, 0, 0, p) + +#define u0(p) bytes2word(f2(p), p, p, f3(p)) +#define u1(p) bytes2word(f3(p), f2(p), p, p) +#define u2(p) bytes2word(p, f3(p), f2(p), p) +#define u3(p) bytes2word(p, p, f3(p), f2(p)) + +#define v0(p) bytes2word(fe(p), f9(p), fd(p), fb(p)) +#define v1(p) bytes2word(fb(p), fe(p), f9(p), fd(p)) +#define v2(p) bytes2word(fd(p), fb(p), fe(p), f9(p)) +#define v3(p) bytes2word(f9(p), fd(p), fb(p), fe(p)) + +#endif + +#if defined(FIXED_TABLES) || !defined(FF_TABLES) + +#define f2(x) ((x<<1) ^ (((x>>7) & 1) * WPOLY)) +#define f4(x) ((x<<2) ^ (((x>>6) & 1) * WPOLY) ^ (((x>>6) & 2) * WPOLY)) +#define f8(x) ((x<<3) ^ (((x>>5) & 1) * WPOLY) ^ (((x>>5) & 2) * WPOLY) \ + ^ (((x>>5) & 4) * WPOLY)) +#define f3(x) (f2(x) ^ x) +#define f9(x) (f8(x) ^ x) +#define fb(x) (f8(x) ^ f2(x) ^ x) +#define fd(x) (f8(x) ^ f4(x) ^ x) +#define fe(x) (f8(x) ^ f4(x) ^ f2(x)) + +#else + +#define f2(x) ((x) ? pow[log[x] + 0x19] : 0) +#define f3(x) ((x) ? pow[log[x] + 0x01] : 0) +#define f9(x) ((x) ? pow[log[x] + 0xc7] : 0) +#define fb(x) ((x) ? pow[log[x] + 0x68] : 0) +#define fd(x) ((x) ? pow[log[x] + 0xee] : 0) +#define fe(x) ((x) ? pow[log[x] + 0xdf] : 0) + +#endif + +#include "aestab.h" + +#if defined(__cplusplus) +extern "C" +{ +#endif + +#if defined(FIXED_TABLES) + +/* implemented in case of wrong call for fixed tables */ + +AES_RETURN aes_init(void) +{ + return EXIT_SUCCESS; +} + +#else /* Generate the tables for the dynamic table option */ + +#if defined(FF_TABLES) + +#define gf_inv(x) ((x) ? pow[ 255 - log[x]] : 0) + +#else + +/* It will generally be sensible to use tables to compute finite + field multiplies and inverses but where memory is scarse this + code might sometimes be better. But it only has effect during + initialisation so its pretty unimportant in overall terms. +*/ + +/* return 2 ^ (n - 1) where n is the bit number of the highest bit + set in x with x in the range 1 < x < 0x00000200. This form is + used so that locals within fi can be bytes rather than words +*/ + +static uint_8t hibit(const uint_32t x) +{ uint_8t r = (uint_8t)((x >> 1) | (x >> 2)); + + r |= (r >> 2); + r |= (r >> 4); + return (r + 1) >> 1; +} + +/* return the inverse of the finite field element x */ + +static uint_8t gf_inv(const uint_8t x) +{ uint_8t p1 = x, p2 = BPOLY, n1 = hibit(x), n2 = 0x80, v1 = 1, v2 = 0; + + if(x < 2) + return x; + + for( ; ; ) + { + if(n1) + while(n2 >= n1) /* divide polynomial p2 by p1 */ + { + n2 /= n1; /* shift smaller polynomial left */ + p2 ^= (p1 * n2) & 0xff; /* and remove from larger one */ + v2 ^= v1 * n2; /* shift accumulated value and */ + n2 = hibit(p2); /* add into result */ + } + else + return v1; + + if(n2) /* repeat with values swapped */ + while(n1 >= n2) + { + n1 /= n2; + p1 ^= p2 * n1; + v1 ^= v2 * n1; + n1 = hibit(p1); + } + else + return v2; + } +} + +#endif + +/* The forward and inverse affine transformations used in the S-box */ +uint_8t fwd_affine(const uint_8t x) +{ uint_32t w = x; + w ^= (w << 1) ^ (w << 2) ^ (w << 3) ^ (w << 4); + return 0x63 ^ ((w ^ (w >> 8)) & 0xff); +} + +uint_8t inv_affine(const uint_8t x) +{ uint_32t w = x; + w = (w << 1) ^ (w << 3) ^ (w << 6); + return 0x05 ^ ((w ^ (w >> 8)) & 0xff); +} + +static int init = 0; + +AES_RETURN aes_init(void) +{ uint_32t i, w; + +#if defined(FF_TABLES) + + uint_8t pow[512], log[256]; + + if(init) + return EXIT_SUCCESS; + /* log and power tables for GF(2^8) finite field with + WPOLY as modular polynomial - the simplest primitive + root is 0x03, used here to generate the tables + */ + + i = 0; w = 1; + do + { + pow[i] = (uint_8t)w; + pow[i + 255] = (uint_8t)w; + log[w] = (uint_8t)i++; + w ^= (w << 1) ^ (w & 0x80 ? WPOLY : 0); + } + while (w != 1); + +#else + if(init) + return EXIT_SUCCESS; +#endif + + for(i = 0, w = 1; i < RC_LENGTH; ++i) + { + t_set(r,c)[i] = bytes2word(w, 0, 0, 0); + w = f2(w); + } + + for(i = 0; i < 256; ++i) + { uint_8t b; + + b = fwd_affine(gf_inv((uint_8t)i)); + w = bytes2word(f2(b), b, b, f3(b)); + +#if defined( SBX_SET ) + t_set(s,box)[i] = b; +#endif + +#if defined( FT1_SET ) /* tables for a normal encryption round */ + t_set(f,n)[i] = w; +#endif +#if defined( FT4_SET ) + t_set(f,n)[0][i] = w; + t_set(f,n)[1][i] = upr(w,1); + t_set(f,n)[2][i] = upr(w,2); + t_set(f,n)[3][i] = upr(w,3); +#endif + w = bytes2word(b, 0, 0, 0); + +#if defined( FL1_SET ) /* tables for last encryption round (may also */ + t_set(f,l)[i] = w; /* be used in the key schedule) */ +#endif +#if defined( FL4_SET ) + t_set(f,l)[0][i] = w; + t_set(f,l)[1][i] = upr(w,1); + t_set(f,l)[2][i] = upr(w,2); + t_set(f,l)[3][i] = upr(w,3); +#endif + +#if defined( LS1_SET ) /* table for key schedule if t_set(f,l) above is*/ + t_set(l,s)[i] = w; /* not of the required form */ +#endif +#if defined( LS4_SET ) + t_set(l,s)[0][i] = w; + t_set(l,s)[1][i] = upr(w,1); + t_set(l,s)[2][i] = upr(w,2); + t_set(l,s)[3][i] = upr(w,3); +#endif + + b = gf_inv(inv_affine((uint_8t)i)); + w = bytes2word(fe(b), f9(b), fd(b), fb(b)); + +#if defined( IM1_SET ) /* tables for the inverse mix column operation */ + t_set(i,m)[b] = w; +#endif +#if defined( IM4_SET ) + t_set(i,m)[0][b] = w; + t_set(i,m)[1][b] = upr(w,1); + t_set(i,m)[2][b] = upr(w,2); + t_set(i,m)[3][b] = upr(w,3); +#endif + +#if defined( ISB_SET ) + t_set(i,box)[i] = b; +#endif +#if defined( IT1_SET ) /* tables for a normal decryption round */ + t_set(i,n)[i] = w; +#endif +#if defined( IT4_SET ) + t_set(i,n)[0][i] = w; + t_set(i,n)[1][i] = upr(w,1); + t_set(i,n)[2][i] = upr(w,2); + t_set(i,n)[3][i] = upr(w,3); +#endif + w = bytes2word(b, 0, 0, 0); +#if defined( IL1_SET ) /* tables for last decryption round */ + t_set(i,l)[i] = w; +#endif +#if defined( IL4_SET ) + t_set(i,l)[0][i] = w; + t_set(i,l)[1][i] = upr(w,1); + t_set(i,l)[2][i] = upr(w,2); + t_set(i,l)[3][i] = upr(w,3); +#endif + } + init = 1; + return EXIT_SUCCESS; +} + +#endif + +#if defined(__cplusplus) +} +#endif + diff --git a/Zip/aes/aestab.h b/Zip/minizip/aes/aestab.h similarity index 96% rename from Zip/aes/aestab.h rename to Zip/minizip/aes/aestab.h index 21fc736..de68567 100755 --- a/Zip/aes/aestab.h +++ b/Zip/minizip/aes/aestab.h @@ -1,173 +1,173 @@ -/* ---------------------------------------------------------------------------- -Copyright (c) 1998-2010, Brian Gladman, Worcester, UK. All rights reserved. - -The redistribution and use of this software (with or without changes) -is allowed without the payment of fees or royalties provided that: - - source code distributions include the above copyright notice, this - list of conditions and the following disclaimer; - - binary distributions include the above copyright notice, this list - of conditions and the following disclaimer in their documentation. - -This software is provided 'as is' with no explicit or implied warranties -in respect of its operation, including, but not limited to, correctness -and fitness for purpose. ---------------------------------------------------------------------------- -Issue Date: 20/12/2007 - - This file contains the code for declaring the tables needed to implement - AES. The file aesopt.h is assumed to be included before this header file. - If there are no global variables, the definitions here can be used to put - the AES tables in a structure so that a pointer can then be added to the - AES context to pass them to the AES routines that need them. If this - facility is used, the calling program has to ensure that this pointer is - managed appropriately. In particular, the value of the t_dec(in,it) item - in the table structure must be set to zero in order to ensure that the - tables are initialised. In practice the three code sequences in aeskey.c - that control the calls to aes_init() and the aes_init() routine itself will - have to be changed for a specific implementation. If global variables are - available it will generally be preferable to use them with the precomputed - FIXED_TABLES option that uses static global tables. - - The following defines can be used to control the way the tables - are defined, initialised and used in embedded environments that - require special features for these purposes - - the 't_dec' construction is used to declare fixed table arrays - the 't_set' construction is used to set fixed table values - the 't_use' construction is used to access fixed table values - - 256 byte tables: - - t_xxx(s,box) => forward S box - t_xxx(i,box) => inverse S box - - 256 32-bit word OR 4 x 256 32-bit word tables: - - t_xxx(f,n) => forward normal round - t_xxx(f,l) => forward last round - t_xxx(i,n) => inverse normal round - t_xxx(i,l) => inverse last round - t_xxx(l,s) => key schedule table - t_xxx(i,m) => key schedule table - - Other variables and tables: - - t_xxx(r,c) => the rcon table -*/ - -#if !defined( _AESTAB_H ) -#define _AESTAB_H - -#if defined(__cplusplus) -extern "C" { -#endif - -#define t_dec(m,n) t_##m##n -#define t_set(m,n) t_##m##n -#define t_use(m,n) t_##m##n - -#if defined(FIXED_TABLES) -# if !defined( __GNUC__ ) && (defined( __MSDOS__ ) || defined( __WIN16__ )) -/* make tables far data to avoid using too much DGROUP space (PG) */ -# define CONST const far -# else -# define CONST const -# endif -#else -# define CONST -#endif - -#if defined(DO_TABLES) -# define EXTERN -#else -# define EXTERN extern -#endif - -#if defined(_MSC_VER) && defined(TABLE_ALIGN) -#define ALIGN __declspec(align(TABLE_ALIGN)) -#else -#define ALIGN -#endif - -#if defined( __WATCOMC__ ) && ( __WATCOMC__ >= 1100 ) -# define XP_DIR __cdecl -#else -# define XP_DIR -#endif - -#if defined(DO_TABLES) && defined(FIXED_TABLES) -#define d_1(t,n,b,e) EXTERN ALIGN CONST XP_DIR t n[256] = b(e) -#define d_4(t,n,b,e,f,g,h) EXTERN ALIGN CONST XP_DIR t n[4][256] = { b(e), b(f), b(g), b(h) } -EXTERN ALIGN CONST uint_32t t_dec(r,c)[RC_LENGTH] = rc_data(w0); -#else -#define d_1(t,n,b,e) EXTERN ALIGN CONST XP_DIR t n[256] -#define d_4(t,n,b,e,f,g,h) EXTERN ALIGN CONST XP_DIR t n[4][256] -EXTERN ALIGN CONST uint_32t t_dec(r,c)[RC_LENGTH]; -#endif - -#if defined( SBX_SET ) - d_1(uint_8t, t_dec(s,box), sb_data, h0); -#endif -#if defined( ISB_SET ) - d_1(uint_8t, t_dec(i,box), isb_data, h0); -#endif - -#if defined( FT1_SET ) - d_1(uint_32t, t_dec(f,n), sb_data, u0); -#endif -#if defined( FT4_SET ) - d_4(uint_32t, t_dec(f,n), sb_data, u0, u1, u2, u3); -#endif - -#if defined( FL1_SET ) - d_1(uint_32t, t_dec(f,l), sb_data, w0); -#endif -#if defined( FL4_SET ) - d_4(uint_32t, t_dec(f,l), sb_data, w0, w1, w2, w3); -#endif - -#if defined( IT1_SET ) - d_1(uint_32t, t_dec(i,n), isb_data, v0); -#endif -#if defined( IT4_SET ) - d_4(uint_32t, t_dec(i,n), isb_data, v0, v1, v2, v3); -#endif - -#if defined( IL1_SET ) - d_1(uint_32t, t_dec(i,l), isb_data, w0); -#endif -#if defined( IL4_SET ) - d_4(uint_32t, t_dec(i,l), isb_data, w0, w1, w2, w3); -#endif - -#if defined( LS1_SET ) -#if defined( FL1_SET ) -#undef LS1_SET -#else - d_1(uint_32t, t_dec(l,s), sb_data, w0); -#endif -#endif - -#if defined( LS4_SET ) -#if defined( FL4_SET ) -#undef LS4_SET -#else - d_4(uint_32t, t_dec(l,s), sb_data, w0, w1, w2, w3); -#endif -#endif - -#if defined( IM1_SET ) - d_1(uint_32t, t_dec(i,m), mm_data, v0); -#endif -#if defined( IM4_SET ) - d_4(uint_32t, t_dec(i,m), mm_data, v0, v1, v2, v3); -#endif - -#if defined(__cplusplus) -} -#endif - -#endif +/* +--------------------------------------------------------------------------- +Copyright (c) 1998-2010, Brian Gladman, Worcester, UK. All rights reserved. + +The redistribution and use of this software (with or without changes) +is allowed without the payment of fees or royalties provided that: + + source code distributions include the above copyright notice, this + list of conditions and the following disclaimer; + + binary distributions include the above copyright notice, this list + of conditions and the following disclaimer in their documentation. + +This software is provided 'as is' with no explicit or implied warranties +in respect of its operation, including, but not limited to, correctness +and fitness for purpose. +--------------------------------------------------------------------------- +Issue Date: 20/12/2007 + + This file contains the code for declaring the tables needed to implement + AES. The file aesopt.h is assumed to be included before this header file. + If there are no global variables, the definitions here can be used to put + the AES tables in a structure so that a pointer can then be added to the + AES context to pass them to the AES routines that need them. If this + facility is used, the calling program has to ensure that this pointer is + managed appropriately. In particular, the value of the t_dec(in,it) item + in the table structure must be set to zero in order to ensure that the + tables are initialised. In practice the three code sequences in aeskey.c + that control the calls to aes_init() and the aes_init() routine itself will + have to be changed for a specific implementation. If global variables are + available it will generally be preferable to use them with the precomputed + FIXED_TABLES option that uses static global tables. + + The following defines can be used to control the way the tables + are defined, initialised and used in embedded environments that + require special features for these purposes + + the 't_dec' construction is used to declare fixed table arrays + the 't_set' construction is used to set fixed table values + the 't_use' construction is used to access fixed table values + + 256 byte tables: + + t_xxx(s,box) => forward S box + t_xxx(i,box) => inverse S box + + 256 32-bit word OR 4 x 256 32-bit word tables: + + t_xxx(f,n) => forward normal round + t_xxx(f,l) => forward last round + t_xxx(i,n) => inverse normal round + t_xxx(i,l) => inverse last round + t_xxx(l,s) => key schedule table + t_xxx(i,m) => key schedule table + + Other variables and tables: + + t_xxx(r,c) => the rcon table +*/ + +#if !defined( _AESTAB_H ) +#define _AESTAB_H + +#if defined(__cplusplus) +extern "C" { +#endif + +#define t_dec(m,n) t_##m##n +#define t_set(m,n) t_##m##n +#define t_use(m,n) t_##m##n + +#if defined(FIXED_TABLES) +# if !defined( __GNUC__ ) && (defined( __MSDOS__ ) || defined( __WIN16__ )) +/* make tables far data to avoid using too much DGROUP space (PG) */ +# define CONST const far +# else +# define CONST const +# endif +#else +# define CONST +#endif + +#if defined(DO_TABLES) +# define EXTERN +#else +# define EXTERN extern +#endif + +#if defined(_MSC_VER) && defined(TABLE_ALIGN) +#define ALIGN __declspec(align(TABLE_ALIGN)) +#else +#define ALIGN +#endif + +#if defined( __WATCOMC__ ) && ( __WATCOMC__ >= 1100 ) +# define XP_DIR __cdecl +#else +# define XP_DIR +#endif + +#if defined(DO_TABLES) && defined(FIXED_TABLES) +#define d_1(t,n,b,e) EXTERN ALIGN CONST XP_DIR t n[256] = b(e) +#define d_4(t,n,b,e,f,g,h) EXTERN ALIGN CONST XP_DIR t n[4][256] = { b(e), b(f), b(g), b(h) } +EXTERN ALIGN CONST uint_32t t_dec(r,c)[RC_LENGTH] = rc_data(w0); +#else +#define d_1(t,n,b,e) EXTERN ALIGN CONST XP_DIR t n[256] +#define d_4(t,n,b,e,f,g,h) EXTERN ALIGN CONST XP_DIR t n[4][256] +EXTERN ALIGN CONST uint_32t t_dec(r,c)[RC_LENGTH]; +#endif + +#if defined( SBX_SET ) + d_1(uint_8t, t_dec(s,box), sb_data, h0); +#endif +#if defined( ISB_SET ) + d_1(uint_8t, t_dec(i,box), isb_data, h0); +#endif + +#if defined( FT1_SET ) + d_1(uint_32t, t_dec(f,n), sb_data, u0); +#endif +#if defined( FT4_SET ) + d_4(uint_32t, t_dec(f,n), sb_data, u0, u1, u2, u3); +#endif + +#if defined( FL1_SET ) + d_1(uint_32t, t_dec(f,l), sb_data, w0); +#endif +#if defined( FL4_SET ) + d_4(uint_32t, t_dec(f,l), sb_data, w0, w1, w2, w3); +#endif + +#if defined( IT1_SET ) + d_1(uint_32t, t_dec(i,n), isb_data, v0); +#endif +#if defined( IT4_SET ) + d_4(uint_32t, t_dec(i,n), isb_data, v0, v1, v2, v3); +#endif + +#if defined( IL1_SET ) + d_1(uint_32t, t_dec(i,l), isb_data, w0); +#endif +#if defined( IL4_SET ) + d_4(uint_32t, t_dec(i,l), isb_data, w0, w1, w2, w3); +#endif + +#if defined( LS1_SET ) +#if defined( FL1_SET ) +#undef LS1_SET +#else + d_1(uint_32t, t_dec(l,s), sb_data, w0); +#endif +#endif + +#if defined( LS4_SET ) +#if defined( FL4_SET ) +#undef LS4_SET +#else + d_4(uint_32t, t_dec(l,s), sb_data, w0, w1, w2, w3); +#endif +#endif + +#if defined( IM1_SET ) + d_1(uint_32t, t_dec(i,m), mm_data, v0); +#endif +#if defined( IM4_SET ) + d_4(uint_32t, t_dec(i,m), mm_data, v0, v1, v2, v3); +#endif + +#if defined(__cplusplus) +} +#endif + +#endif diff --git a/Zip/aes/brg_endian.h b/Zip/minizip/aes/brg_endian.h similarity index 97% rename from Zip/aes/brg_endian.h rename to Zip/minizip/aes/brg_endian.h index 82e48f0..0f12fbb 100755 --- a/Zip/aes/brg_endian.h +++ b/Zip/minizip/aes/brg_endian.h @@ -1,126 +1,126 @@ -/* ---------------------------------------------------------------------------- -Copyright (c) 1998-2010, Brian Gladman, Worcester, UK. All rights reserved. - -The redistribution and use of this software (with or without changes) -is allowed without the payment of fees or royalties provided that: - - source code distributions include the above copyright notice, this - list of conditions and the following disclaimer; - - binary distributions include the above copyright notice, this list - of conditions and the following disclaimer in their documentation. - -This software is provided 'as is' with no explicit or implied warranties -in respect of its operation, including, but not limited to, correctness -and fitness for purpose. ---------------------------------------------------------------------------- -Issue Date: 20/12/2007 -*/ - -#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) */ - -/* 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 - -/* 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 0 /* **** 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 126 or 128 in brg_endian.h to set the platform byte order -#endif - -#endif - -#endif +/* +--------------------------------------------------------------------------- +Copyright (c) 1998-2010, Brian Gladman, Worcester, UK. All rights reserved. + +The redistribution and use of this software (with or without changes) +is allowed without the payment of fees or royalties provided that: + + source code distributions include the above copyright notice, this + list of conditions and the following disclaimer; + + binary distributions include the above copyright notice, this list + of conditions and the following disclaimer in their documentation. + +This software is provided 'as is' with no explicit or implied warranties +in respect of its operation, including, but not limited to, correctness +and fitness for purpose. +--------------------------------------------------------------------------- +Issue Date: 20/12/2007 +*/ + +#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) */ + +/* 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 + +/* 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 0 /* **** 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 126 or 128 in brg_endian.h to set the platform byte order +#endif + +#endif + +#endif diff --git a/Zip/aes/brg_types.h b/Zip/minizip/aes/brg_types.h similarity index 97% rename from Zip/aes/brg_types.h rename to Zip/minizip/aes/brg_types.h index 40d4af5..a1d7483 100755 --- a/Zip/aes/brg_types.h +++ b/Zip/minizip/aes/brg_types.h @@ -1,219 +1,219 @@ -/* ---------------------------------------------------------------------------- -Copyright (c) 1998-2010, Brian Gladman, Worcester, UK. All rights reserved. - -The redistribution and use of this software (with or without changes) -is allowed without the payment of fees or royalties provided that: - - source code distributions include the above copyright notice, this - list of conditions and the following disclaimer; - - binary distributions include the above copyright notice, this list - of conditions and the following disclaimer in their documentation. - -This software is provided 'as is' with no explicit or implied warranties -in respect of its operation, including, but not limited to, correctness -and fitness for purpose. ---------------------------------------------------------------------------- -Issue Date: 20/12/2007 - - The unsigned integer types defined here are of the form uint_t where - is the length of the type; for example, the unsigned 32-bit type is - 'uint_32t'. These are NOT the same as the 'C99 integer types' that are - defined in the inttypes.h and stdint.h headers since attempts to use these - types have shown that support for them is still highly variable. However, - since the latter are of the form uint_t, a regular expression search - and replace (in VC++ search on 'uint_{:z}t' and replace with 'uint\1_t') - can be used to convert the types used here to the C99 standard types. -*/ - -#ifndef _BRG_TYPES_H -#define _BRG_TYPES_H - -#if defined(__cplusplus) -extern "C" { -#endif - -#include - -#if defined( _MSC_VER ) && ( _MSC_VER >= 1300 ) -# include -# define ptrint_t intptr_t -#elif defined( __ECOS__ ) -# define intptr_t unsigned int -# define ptrint_t intptr_t -#elif defined( __GNUC__ ) && ( __GNUC__ >= 3 ) -# include -# define ptrint_t intptr_t -#else -# define ptrint_t int -#endif - -#ifndef BRG_UI8 -# define BRG_UI8 -# if UCHAR_MAX == 255u - typedef unsigned char uint_8t; -# else -# error Please define uint_8t as an 8-bit unsigned integer type in brg_types.h -# endif -#endif - -#ifndef BRG_UI16 -# define BRG_UI16 -# if USHRT_MAX == 65535u - typedef unsigned short uint_16t; -# else -# error Please define uint_16t as a 16-bit unsigned short type in brg_types.h -# endif -#endif - -#ifndef BRG_UI32 -# define BRG_UI32 -# if UINT_MAX == 4294967295u -# define li_32(h) 0x##h##u - typedef unsigned int uint_32t; -# elif ULONG_MAX == 4294967295u -# define li_32(h) 0x##h##ul - typedef unsigned long uint_32t; -# elif defined( _CRAY ) -# error This code needs 32-bit data types, which Cray machines do not provide -# else -# error Please define uint_32t as a 32-bit unsigned integer type in brg_types.h -# endif -#endif - -#ifndef BRG_UI64 -# if defined( __BORLANDC__ ) && !defined( __MSDOS__ ) -# define BRG_UI64 -# define li_64(h) 0x##h##ui64 - typedef unsigned __int64 uint_64t; -# elif defined( _MSC_VER ) && ( _MSC_VER < 1300 ) /* 1300 == VC++ 7.0 */ -# define BRG_UI64 -# define li_64(h) 0x##h##ui64 - typedef unsigned __int64 uint_64t; -# elif defined( __sun ) && defined( ULONG_MAX ) && ULONG_MAX == 0xfffffffful -# define BRG_UI64 -# define li_64(h) 0x##h##ull - typedef unsigned long long uint_64t; -# elif defined( __MVS__ ) -# define BRG_UI64 -# define li_64(h) 0x##h##ull - typedef unsigned int long long uint_64t; -# elif defined( UINT_MAX ) && UINT_MAX > 4294967295u -# if UINT_MAX == 18446744073709551615u -# define BRG_UI64 -# define li_64(h) 0x##h##u - typedef unsigned int uint_64t; -# endif -# elif defined( ULONG_MAX ) && ULONG_MAX > 4294967295u -# if ULONG_MAX == 18446744073709551615ul -# define BRG_UI64 -# define li_64(h) 0x##h##ul - typedef unsigned long uint_64t; -# endif -# elif defined( ULLONG_MAX ) && ULLONG_MAX > 4294967295u -# if ULLONG_MAX == 18446744073709551615ull -# define BRG_UI64 -# define li_64(h) 0x##h##ull - typedef unsigned long long uint_64t; -# endif -# elif defined( ULONG_LONG_MAX ) && ULONG_LONG_MAX > 4294967295u -# if ULONG_LONG_MAX == 18446744073709551615ull -# define BRG_UI64 -# define li_64(h) 0x##h##ull - typedef unsigned long long uint_64t; -# endif -# endif -#endif - -#if !defined( BRG_UI64 ) -# if defined( NEED_UINT_64T ) -# error Please define uint_64t as an unsigned 64 bit type in brg_types.h -# endif -#endif - -#ifndef RETURN_VALUES -# define RETURN_VALUES -# if defined( DLL_EXPORT ) -# if defined( _MSC_VER ) || defined ( __INTEL_COMPILER ) -# define VOID_RETURN __declspec( dllexport ) void __stdcall -# define INT_RETURN __declspec( dllexport ) int __stdcall -# elif defined( __GNUC__ ) -# define VOID_RETURN __declspec( __dllexport__ ) void -# define INT_RETURN __declspec( __dllexport__ ) int -# else -# error Use of the DLL is only available on the Microsoft, Intel and GCC compilers -# endif -# elif defined( DLL_IMPORT ) -# if defined( _MSC_VER ) || defined ( __INTEL_COMPILER ) -# define VOID_RETURN __declspec( dllimport ) void __stdcall -# define INT_RETURN __declspec( dllimport ) int __stdcall -# elif defined( __GNUC__ ) -# define VOID_RETURN __declspec( __dllimport__ ) void -# define INT_RETURN __declspec( __dllimport__ ) int -# else -# error Use of the DLL is only available on the Microsoft, Intel and GCC compilers -# endif -# elif defined( __WATCOMC__ ) -# define VOID_RETURN void __cdecl -# define INT_RETURN int __cdecl -# else -# define VOID_RETURN void -# define INT_RETURN int -# endif -#endif - -/* These defines are used to detect and set the memory alignment of pointers. - Note that offsets are in bytes. - - ALIGN_OFFSET(x,n) return the positive or zero offset of - the memory addressed by the pointer 'x' - from an address that is aligned on an - 'n' byte boundary ('n' is a power of 2) - - ALIGN_FLOOR(x,n) return a pointer that points to memory - that is aligned on an 'n' byte boundary - and is not higher than the memory address - pointed to by 'x' ('n' is a power of 2) - - ALIGN_CEIL(x,n) return a pointer that points to memory - that is aligned on an 'n' byte boundary - and is not lower than the memory address - pointed to by 'x' ('n' is a power of 2) -*/ - -#define ALIGN_OFFSET(x,n) (((ptrint_t)(x)) & ((n) - 1)) -#define ALIGN_FLOOR(x,n) ((uint_8t*)(x) - ( ((ptrint_t)(x)) & ((n) - 1))) -#define ALIGN_CEIL(x,n) ((uint_8t*)(x) + (-((ptrint_t)(x)) & ((n) - 1))) - -/* These defines are used to declare buffers in a way that allows - faster operations on longer variables to be used. In all these - defines 'size' must be a power of 2 and >= 8. NOTE that the - buffer size is in bytes but the type length is in bits - - UNIT_TYPEDEF(x,size) declares a variable 'x' of length - 'size' bits - - BUFR_TYPEDEF(x,size,bsize) declares a buffer 'x' of length 'bsize' - bytes defined as an array of variables - each of 'size' bits (bsize must be a - multiple of size / 8) - - UNIT_CAST(x,size) casts a variable to a type of - length 'size' bits - - UPTR_CAST(x,size) casts a pointer to a pointer to a - varaiable of length 'size' bits -*/ - -#define UI_TYPE(size) uint_##size##t -#define UNIT_TYPEDEF(x,size) typedef UI_TYPE(size) x -#define BUFR_TYPEDEF(x,size,bsize) typedef UI_TYPE(size) x[bsize / (size >> 3)] -#define UNIT_CAST(x,size) ((UI_TYPE(size) )(x)) -#define UPTR_CAST(x,size) ((UI_TYPE(size)*)(x)) - -#if defined(__cplusplus) -} -#endif - -#endif +/* +--------------------------------------------------------------------------- +Copyright (c) 1998-2010, Brian Gladman, Worcester, UK. All rights reserved. + +The redistribution and use of this software (with or without changes) +is allowed without the payment of fees or royalties provided that: + + source code distributions include the above copyright notice, this + list of conditions and the following disclaimer; + + binary distributions include the above copyright notice, this list + of conditions and the following disclaimer in their documentation. + +This software is provided 'as is' with no explicit or implied warranties +in respect of its operation, including, but not limited to, correctness +and fitness for purpose. +--------------------------------------------------------------------------- +Issue Date: 20/12/2007 + + The unsigned integer types defined here are of the form uint_t where + is the length of the type; for example, the unsigned 32-bit type is + 'uint_32t'. These are NOT the same as the 'C99 integer types' that are + defined in the inttypes.h and stdint.h headers since attempts to use these + types have shown that support for them is still highly variable. However, + since the latter are of the form uint_t, a regular expression search + and replace (in VC++ search on 'uint_{:z}t' and replace with 'uint\1_t') + can be used to convert the types used here to the C99 standard types. +*/ + +#ifndef _BRG_TYPES_H +#define _BRG_TYPES_H + +#if defined(__cplusplus) +extern "C" { +#endif + +#include + +#if defined( _MSC_VER ) && ( _MSC_VER >= 1300 ) +# include +# define ptrint_t intptr_t +#elif defined( __ECOS__ ) +# define intptr_t unsigned int +# define ptrint_t intptr_t +#elif defined( __GNUC__ ) && ( __GNUC__ >= 3 ) +# include +# define ptrint_t intptr_t +#else +# define ptrint_t int +#endif + +#ifndef BRG_UI8 +# define BRG_UI8 +# if UCHAR_MAX == 255u + typedef unsigned char uint_8t; +# else +# error Please define uint_8t as an 8-bit unsigned integer type in brg_types.h +# endif +#endif + +#ifndef BRG_UI16 +# define BRG_UI16 +# if USHRT_MAX == 65535u + typedef unsigned short uint_16t; +# else +# error Please define uint_16t as a 16-bit unsigned short type in brg_types.h +# endif +#endif + +#ifndef BRG_UI32 +# define BRG_UI32 +# if UINT_MAX == 4294967295u +# define li_32(h) 0x##h##u + typedef unsigned int uint_32t; +# elif ULONG_MAX == 4294967295u +# define li_32(h) 0x##h##ul + typedef unsigned long uint_32t; +# elif defined( _CRAY ) +# error This code needs 32-bit data types, which Cray machines do not provide +# else +# error Please define uint_32t as a 32-bit unsigned integer type in brg_types.h +# endif +#endif + +#ifndef BRG_UI64 +# if defined( __BORLANDC__ ) && !defined( __MSDOS__ ) +# define BRG_UI64 +# define li_64(h) 0x##h##ui64 + typedef unsigned __int64 uint_64t; +# elif defined( _MSC_VER ) && ( _MSC_VER < 1300 ) /* 1300 == VC++ 7.0 */ +# define BRG_UI64 +# define li_64(h) 0x##h##ui64 + typedef unsigned __int64 uint_64t; +# elif defined( __sun ) && defined( ULONG_MAX ) && ULONG_MAX == 0xfffffffful +# define BRG_UI64 +# define li_64(h) 0x##h##ull + typedef unsigned long long uint_64t; +# elif defined( __MVS__ ) +# define BRG_UI64 +# define li_64(h) 0x##h##ull + typedef unsigned int long long uint_64t; +# elif defined( UINT_MAX ) && UINT_MAX > 4294967295u +# if UINT_MAX == 18446744073709551615u +# define BRG_UI64 +# define li_64(h) 0x##h##u + typedef unsigned int uint_64t; +# endif +# elif defined( ULONG_MAX ) && ULONG_MAX > 4294967295u +# if ULONG_MAX == 18446744073709551615ul +# define BRG_UI64 +# define li_64(h) 0x##h##ul + typedef unsigned long uint_64t; +# endif +# elif defined( ULLONG_MAX ) && ULLONG_MAX > 4294967295u +# if ULLONG_MAX == 18446744073709551615ull +# define BRG_UI64 +# define li_64(h) 0x##h##ull + typedef unsigned long long uint_64t; +# endif +# elif defined( ULONG_LONG_MAX ) && ULONG_LONG_MAX > 4294967295u +# if ULONG_LONG_MAX == 18446744073709551615ull +# define BRG_UI64 +# define li_64(h) 0x##h##ull + typedef unsigned long long uint_64t; +# endif +# endif +#endif + +#if !defined( BRG_UI64 ) +# if defined( NEED_UINT_64T ) +# error Please define uint_64t as an unsigned 64 bit type in brg_types.h +# endif +#endif + +#ifndef RETURN_VALUES +# define RETURN_VALUES +# if defined( DLL_EXPORT ) +# if defined( _MSC_VER ) || defined ( __INTEL_COMPILER ) +# define VOID_RETURN __declspec( dllexport ) void __stdcall +# define INT_RETURN __declspec( dllexport ) int __stdcall +# elif defined( __GNUC__ ) +# define VOID_RETURN __declspec( __dllexport__ ) void +# define INT_RETURN __declspec( __dllexport__ ) int +# else +# error Use of the DLL is only available on the Microsoft, Intel and GCC compilers +# endif +# elif defined( DLL_IMPORT ) +# if defined( _MSC_VER ) || defined ( __INTEL_COMPILER ) +# define VOID_RETURN __declspec( dllimport ) void __stdcall +# define INT_RETURN __declspec( dllimport ) int __stdcall +# elif defined( __GNUC__ ) +# define VOID_RETURN __declspec( __dllimport__ ) void +# define INT_RETURN __declspec( __dllimport__ ) int +# else +# error Use of the DLL is only available on the Microsoft, Intel and GCC compilers +# endif +# elif defined( __WATCOMC__ ) +# define VOID_RETURN void __cdecl +# define INT_RETURN int __cdecl +# else +# define VOID_RETURN void +# define INT_RETURN int +# endif +#endif + +/* These defines are used to detect and set the memory alignment of pointers. + Note that offsets are in bytes. + + ALIGN_OFFSET(x,n) return the positive or zero offset of + the memory addressed by the pointer 'x' + from an address that is aligned on an + 'n' byte boundary ('n' is a power of 2) + + ALIGN_FLOOR(x,n) return a pointer that points to memory + that is aligned on an 'n' byte boundary + and is not higher than the memory address + pointed to by 'x' ('n' is a power of 2) + + ALIGN_CEIL(x,n) return a pointer that points to memory + that is aligned on an 'n' byte boundary + and is not lower than the memory address + pointed to by 'x' ('n' is a power of 2) +*/ + +#define ALIGN_OFFSET(x,n) (((ptrint_t)(x)) & ((n) - 1)) +#define ALIGN_FLOOR(x,n) ((uint_8t*)(x) - ( ((ptrint_t)(x)) & ((n) - 1))) +#define ALIGN_CEIL(x,n) ((uint_8t*)(x) + (-((ptrint_t)(x)) & ((n) - 1))) + +/* These defines are used to declare buffers in a way that allows + faster operations on longer variables to be used. In all these + defines 'size' must be a power of 2 and >= 8. NOTE that the + buffer size is in bytes but the type length is in bits + + UNIT_TYPEDEF(x,size) declares a variable 'x' of length + 'size' bits + + BUFR_TYPEDEF(x,size,bsize) declares a buffer 'x' of length 'bsize' + bytes defined as an array of variables + each of 'size' bits (bsize must be a + multiple of size / 8) + + UNIT_CAST(x,size) casts a variable to a type of + length 'size' bits + + UPTR_CAST(x,size) casts a pointer to a pointer to a + varaiable of length 'size' bits +*/ + +#define UI_TYPE(size) uint_##size##t +#define UNIT_TYPEDEF(x,size) typedef UI_TYPE(size) x +#define BUFR_TYPEDEF(x,size,bsize) typedef UI_TYPE(size) x[bsize / (size >> 3)] +#define UNIT_CAST(x,size) ((UI_TYPE(size) )(x)) +#define UPTR_CAST(x,size) ((UI_TYPE(size)*)(x)) + +#if defined(__cplusplus) +} +#endif + +#endif diff --git a/Zip/aes/entropy.c b/Zip/minizip/aes/entropy.c similarity index 95% rename from Zip/aes/entropy.c rename to Zip/minizip/aes/entropy.c index 5840a97..d065a4c 100755 --- a/Zip/aes/entropy.c +++ b/Zip/minizip/aes/entropy.c @@ -42,7 +42,7 @@ int entropy_fun(unsigned char buf[], unsigned int len) int rlen = 0; if (frand != -1) { - rlen = (int)read(frand, buf, len); + rlen = read(frand, buf, len); close(frand); } return rlen; diff --git a/Zip/aes/entropy.h b/Zip/minizip/aes/entropy.h similarity index 92% rename from Zip/aes/entropy.h rename to Zip/minizip/aes/entropy.h index 306620c..34d59d2 100755 --- a/Zip/aes/entropy.h +++ b/Zip/minizip/aes/entropy.h @@ -1,16 +1,16 @@ - -#ifndef _ENTROPY_FUN_H -#define _ENTROPY_FUN_H - -#if defined(__cplusplus) -extern "C" -{ -#endif - + +#ifndef _ENTROPY_FUN_H +#define _ENTROPY_FUN_H + +#if defined(__cplusplus) +extern "C" +{ +#endif + int entropy_fun(unsigned char buf[], unsigned int len); - -#if defined(__cplusplus) -} -#endif - -#endif + +#if defined(__cplusplus) +} +#endif + +#endif diff --git a/Zip/aes/fileenc.c b/Zip/minizip/aes/fileenc.c similarity index 66% rename from Zip/aes/fileenc.c rename to Zip/minizip/aes/fileenc.c index 5057036..1533dd0 100755 --- a/Zip/aes/fileenc.c +++ b/Zip/minizip/aes/fileenc.c @@ -1,144 +1,143 @@ -/* - --------------------------------------------------------------------------- - Copyright (c) 2002, Dr Brian Gladman < >, Worcester, UK. - All rights reserved. - - LICENSE TERMS - - The free distribution and use of this software in both source and binary - form is allowed (with or without changes) provided that: - - 1. distributions of this source code include the above copyright - notice, this list of conditions and the following disclaimer; - - 2. distributions in binary form include the above copyright - notice, this list of conditions and the following disclaimer - in the documentation and/or other associated materials; - - 3. the copyright holder's name is not used to endorse products - built using this software without specific written permission. - - ALTERNATIVELY, provided that this notice is retained in full, this product - may be distributed under the terms of the GNU General Public License (GPL), - in which case the provisions of the GPL apply INSTEAD OF those given above. - - 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: 24/01/2003 - - This file implements password based file encryption and authentication - using AES in CTR mode, HMAC-SHA1 authentication and RFC2898 password - based key derivation. - - */ - -#include - -#include "fileenc.h" - -#if defined(__cplusplus) -extern "C" -{ -#endif - -/* subroutine for data encryption/decryption */ -/* this could be speeded up a lot by aligning */ -/* buffers and using 32 bit operations */ - -static void encr_data(unsigned char data[], unsigned long d_len, fcrypt_ctx cx[1]) -{ - unsigned long i = 0, pos = cx->encr_pos; - - while (i < d_len) { - if (pos == AES_BLOCK_SIZE) { - unsigned int j = 0; - /* increment encryption nonce */ - while (j < 8 && !++cx->nonce[j]) - ++j; - /* encrypt the nonce to form next xor buffer */ - aes_encrypt(cx->nonce, cx->encr_bfr, cx->encr_ctx); - pos = 0; - } - - data[i++] ^= cx->encr_bfr[pos++]; - } - - cx->encr_pos = (unsigned int)pos; -} - -int fcrypt_init( - int mode, /* the mode to be used (input) */ - const unsigned char pwd[], /* the user specified password (input) */ - unsigned int pwd_len, /* the length of the password (input) */ - const unsigned char salt[], /* the salt (input) */ -#ifdef PASSWORD_VERIFIER - unsigned char pwd_ver[PWD_VER_LENGTH], /* 2 byte password verifier (output) */ -#endif - fcrypt_ctx cx[1]) /* the file encryption context (output) */ -{ - unsigned char kbuf[2 * MAX_KEY_LENGTH + PWD_VER_LENGTH]; - - if (pwd_len > MAX_PWD_LENGTH) - return PASSWORD_TOO_LONG; - - if (mode < 1 || mode > 3) - return BAD_MODE; - - cx->mode = mode; - cx->pwd_len = pwd_len; - - /* derive the encryption and authentication keys and the password verifier */ - derive_key(pwd, pwd_len, salt, SALT_LENGTH(mode), KEYING_ITERATIONS, - kbuf, 2 * KEY_LENGTH(mode) + PWD_VER_LENGTH); - - /* initialise the encryption nonce and buffer pos */ - cx->encr_pos = AES_BLOCK_SIZE; - /* if we need a random component in the encryption */ - /* nonce, this is where it would have to be set */ - memset(cx->nonce, 0, AES_BLOCK_SIZE * sizeof(unsigned char)); - - /* initialise for encryption using key 1 */ - aes_encrypt_key(kbuf, KEY_LENGTH(mode), cx->encr_ctx); - - /* initialise for authentication using key 2 */ - hmac_sha_begin(cx->auth_ctx); - hmac_sha_key(kbuf + KEY_LENGTH(mode), KEY_LENGTH(mode), cx->auth_ctx); - -#ifdef PASSWORD_VERIFIER - memcpy(pwd_ver, kbuf + 2 * KEY_LENGTH(mode), PWD_VER_LENGTH); -#endif - - return GOOD_RETURN; -} - -/* perform 'in place' encryption and authentication */ - -void fcrypt_encrypt(unsigned char data[], unsigned int data_len, fcrypt_ctx cx[1]) -{ - encr_data(data, data_len, cx); - hmac_sha_data(data, data_len, cx->auth_ctx); -} - -/* perform 'in place' authentication and decryption */ - -void fcrypt_decrypt(unsigned char data[], unsigned int data_len, fcrypt_ctx cx[1]) -{ - hmac_sha_data(data, data_len, cx->auth_ctx); - encr_data(data, data_len, cx); -} - -/* close encryption/decryption and return the MAC value */ - -int fcrypt_end(unsigned char mac[], fcrypt_ctx cx[1]) -{ - hmac_sha_end(mac, MAC_LENGTH(cx->mode), cx->auth_ctx); - return MAC_LENGTH(cx->mode); /* return MAC length in bytes */ -} - -#if defined(__cplusplus) -} -#endif +/* + --------------------------------------------------------------------------- + Copyright (c) 2002, Dr Brian Gladman < >, Worcester, UK. + All rights reserved. + + LICENSE TERMS + + The free distribution and use of this software in both source and binary + form is allowed (with or without changes) provided that: + + 1. distributions of this source code include the above copyright + notice, this list of conditions and the following disclaimer; + + 2. distributions in binary form include the above copyright + notice, this list of conditions and the following disclaimer + in the documentation and/or other associated materials; + + 3. the copyright holder's name is not used to endorse products + built using this software without specific written permission. + + ALTERNATIVELY, provided that this notice is retained in full, this product + may be distributed under the terms of the GNU General Public License (GPL), + in which case the provisions of the GPL apply INSTEAD OF those given above. + + 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: 24/01/2003 + + This file implements password based file encryption and authentication + using AES in CTR mode, HMAC-SHA1 authentication and RFC2898 password + based key derivation. + +*/ + +#include + +#include "fileenc.h" + +#if defined(__cplusplus) +extern "C" +{ +#endif + +/* subroutine for data encryption/decryption */ +/* this could be speeded up a lot by aligning */ +/* buffers and using 32 bit operations */ + +static void encr_data(unsigned char data[], unsigned long d_len, fcrypt_ctx cx[1]) +{ unsigned long i = 0, pos = cx->encr_pos; + + while(i < d_len) + { + if(pos == AES_BLOCK_SIZE) + { unsigned int j = 0; + /* increment encryption nonce */ + while(j < 8 && !++cx->nonce[j]) + ++j; + /* encrypt the nonce to form next xor buffer */ + aes_encrypt(cx->nonce, cx->encr_bfr, cx->encr_ctx); + pos = 0; + } + + data[i++] ^= cx->encr_bfr[pos++]; + } + + cx->encr_pos = pos; +} + +int fcrypt_init( + int mode, /* the mode to be used (input) */ + const unsigned char pwd[], /* the user specified password (input) */ + unsigned int pwd_len, /* the length of the password (input) */ + const unsigned char salt[], /* the salt (input) */ +#ifdef PASSWORD_VERIFIER + unsigned char pwd_ver[PWD_VER_LENGTH], /* 2 byte password verifier (output) */ +#endif + fcrypt_ctx cx[1]) /* the file encryption context (output) */ +{ unsigned char kbuf[2 * MAX_KEY_LENGTH + PWD_VER_LENGTH]; + + if(pwd_len > MAX_PWD_LENGTH) + return PASSWORD_TOO_LONG; + + if(mode < 1 || mode > 3) + return BAD_MODE; + + cx->mode = mode; + cx->pwd_len = pwd_len; + + /* derive the encryption and authentication keys and the password verifier */ + derive_key(pwd, pwd_len, salt, SALT_LENGTH(mode), KEYING_ITERATIONS, + kbuf, 2 * KEY_LENGTH(mode) + PWD_VER_LENGTH); + + /* initialise the encryption nonce and buffer pos */ + cx->encr_pos = AES_BLOCK_SIZE; + /* if we need a random component in the encryption */ + /* nonce, this is where it would have to be set */ + memset(cx->nonce, 0, AES_BLOCK_SIZE * sizeof(unsigned char)); + + /* initialise for encryption using key 1 */ + aes_encrypt_key(kbuf, KEY_LENGTH(mode), cx->encr_ctx); + + /* initialise for authentication using key 2 */ + hmac_sha_begin(cx->auth_ctx); + hmac_sha_key(kbuf + KEY_LENGTH(mode), KEY_LENGTH(mode), cx->auth_ctx); + +#ifdef PASSWORD_VERIFIER + memcpy(pwd_ver, kbuf + 2 * KEY_LENGTH(mode), PWD_VER_LENGTH); +#endif + + return GOOD_RETURN; +} + +/* perform 'in place' encryption and authentication */ + +void fcrypt_encrypt(unsigned char data[], unsigned int data_len, fcrypt_ctx cx[1]) +{ + encr_data(data, data_len, cx); + hmac_sha_data(data, data_len, cx->auth_ctx); +} + +/* perform 'in place' authentication and decryption */ + +void fcrypt_decrypt(unsigned char data[], unsigned int data_len, fcrypt_ctx cx[1]) +{ + hmac_sha_data(data, data_len, cx->auth_ctx); + encr_data(data, data_len, cx); +} + +/* close encryption/decryption and return the MAC value */ + +int fcrypt_end(unsigned char mac[], fcrypt_ctx cx[1]) +{ + hmac_sha_end(mac, MAC_LENGTH(cx->mode), cx->auth_ctx); + return MAC_LENGTH(cx->mode); /* return MAC length in bytes */ +} + +#if defined(__cplusplus) +} +#endif diff --git a/Zip/aes/fileenc.h b/Zip/minizip/aes/fileenc.h similarity index 97% rename from Zip/aes/fileenc.h rename to Zip/minizip/aes/fileenc.h index ba64a7c..9c0250e 100755 --- a/Zip/aes/fileenc.h +++ b/Zip/minizip/aes/fileenc.h @@ -1,121 +1,121 @@ -/* - --------------------------------------------------------------------------- - Copyright (c) 2002, Dr Brian Gladman < >, Worcester, UK. - All rights reserved. - - LICENSE TERMS - - The free distribution and use of this software in both source and binary - form is allowed (with or without changes) provided that: - - 1. distributions of this source code include the above copyright - notice, this list of conditions and the following disclaimer; - - 2. distributions in binary form include the above copyright - notice, this list of conditions and the following disclaimer - in the documentation and/or other associated materials; - - 3. the copyright holder's name is not used to endorse products - built using this software without specific written permission. - - ALTERNATIVELY, provided that this notice is retained in full, this product - may be distributed under the terms of the GNU General Public License (GPL), - in which case the provisions of the GPL apply INSTEAD OF those given above. - - 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: 24/01/2003 - - This file contains the header file for fileenc.c, which implements password - based file encryption and authentication using AES in CTR mode, HMAC-SHA1 - authentication and RFC2898 password based key derivation. -*/ - -#ifndef _FENC_H -#define _FENC_H - -#include "aes.h" -#include "hmac.h" -#include "pwd2key.h" - -#define PASSWORD_VERIFIER - -#define MAX_KEY_LENGTH 32 -#define MAX_PWD_LENGTH 128 -#define MAX_SALT_LENGTH 16 -#define KEYING_ITERATIONS 1000 - -#ifdef PASSWORD_VERIFIER -#define PWD_VER_LENGTH 2 -#else -#define PWD_VER_LENGTH 0 -#endif - -#define GOOD_RETURN 0 -#define PASSWORD_TOO_LONG -100 -#define BAD_MODE -101 - -/* - Field lengths (in bytes) versus File Encryption Mode (0 < mode < 4) - - Mode Key Salt MAC Overhead - 1 16 8 10 18 - 2 24 12 10 22 - 3 32 16 10 26 - - The following macros assume that the mode value is correct. -*/ - -#define KEY_LENGTH(mode) (8 * (mode & 3) + 8) -#define SALT_LENGTH(mode) (4 * (mode & 3) + 4) -#define MAC_LENGTH(mode) (10) - -/* the context for file encryption */ - -#if defined(__cplusplus) -extern "C" -{ -#endif - -typedef struct -{ unsigned char nonce[AES_BLOCK_SIZE]; /* the CTR nonce */ - unsigned char encr_bfr[AES_BLOCK_SIZE]; /* encrypt buffer */ - aes_encrypt_ctx encr_ctx[1]; /* encryption context */ - hmac_ctx auth_ctx[1]; /* authentication context */ - unsigned int encr_pos; /* block position (enc) */ - unsigned int pwd_len; /* password length */ - unsigned int mode; /* File encryption mode */ -} fcrypt_ctx; - -/* initialise file encryption or decryption */ - -int fcrypt_init( - int mode, /* the mode to be used (input) */ - const unsigned char pwd[], /* the user specified password (input) */ - unsigned int pwd_len, /* the length of the password (input) */ - const unsigned char salt[], /* the salt (input) */ -#ifdef PASSWORD_VERIFIER - unsigned char pwd_ver[PWD_VER_LENGTH], /* 2 byte password verifier (output) */ -#endif - fcrypt_ctx cx[1]); /* the file encryption context (output) */ - -/* perform 'in place' encryption or decryption and authentication */ - -void fcrypt_encrypt(unsigned char data[], unsigned int data_len, fcrypt_ctx cx[1]); -void fcrypt_decrypt(unsigned char data[], unsigned int data_len, fcrypt_ctx cx[1]); - -/* close encryption/decryption and return the MAC value */ -/* the return value is the length of the MAC */ - -int fcrypt_end(unsigned char mac[], /* the MAC value (output) */ - fcrypt_ctx cx[1]); /* the context (input) */ - -#if defined(__cplusplus) -} -#endif - -#endif +/* + --------------------------------------------------------------------------- + Copyright (c) 2002, Dr Brian Gladman < >, Worcester, UK. + All rights reserved. + + LICENSE TERMS + + The free distribution and use of this software in both source and binary + form is allowed (with or without changes) provided that: + + 1. distributions of this source code include the above copyright + notice, this list of conditions and the following disclaimer; + + 2. distributions in binary form include the above copyright + notice, this list of conditions and the following disclaimer + in the documentation and/or other associated materials; + + 3. the copyright holder's name is not used to endorse products + built using this software without specific written permission. + + ALTERNATIVELY, provided that this notice is retained in full, this product + may be distributed under the terms of the GNU General Public License (GPL), + in which case the provisions of the GPL apply INSTEAD OF those given above. + + 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: 24/01/2003 + + This file contains the header file for fileenc.c, which implements password + based file encryption and authentication using AES in CTR mode, HMAC-SHA1 + authentication and RFC2898 password based key derivation. +*/ + +#ifndef _FENC_H +#define _FENC_H + +#include "aes.h" +#include "hmac.h" +#include "pwd2key.h" + +#define PASSWORD_VERIFIER + +#define MAX_KEY_LENGTH 32 +#define MAX_PWD_LENGTH 128 +#define MAX_SALT_LENGTH 16 +#define KEYING_ITERATIONS 1000 + +#ifdef PASSWORD_VERIFIER +#define PWD_VER_LENGTH 2 +#else +#define PWD_VER_LENGTH 0 +#endif + +#define GOOD_RETURN 0 +#define PASSWORD_TOO_LONG -100 +#define BAD_MODE -101 + +/* + Field lengths (in bytes) versus File Encryption Mode (0 < mode < 4) + + Mode Key Salt MAC Overhead + 1 16 8 10 18 + 2 24 12 10 22 + 3 32 16 10 26 + + The following macros assume that the mode value is correct. +*/ + +#define KEY_LENGTH(mode) (8 * (mode & 3) + 8) +#define SALT_LENGTH(mode) (4 * (mode & 3) + 4) +#define MAC_LENGTH(mode) (10) + +/* the context for file encryption */ + +#if defined(__cplusplus) +extern "C" +{ +#endif + +typedef struct +{ unsigned char nonce[AES_BLOCK_SIZE]; /* the CTR nonce */ + unsigned char encr_bfr[AES_BLOCK_SIZE]; /* encrypt buffer */ + aes_encrypt_ctx encr_ctx[1]; /* encryption context */ + hmac_ctx auth_ctx[1]; /* authentication context */ + unsigned int encr_pos; /* block position (enc) */ + unsigned int pwd_len; /* password length */ + unsigned int mode; /* File encryption mode */ +} fcrypt_ctx; + +/* initialise file encryption or decryption */ + +int fcrypt_init( + int mode, /* the mode to be used (input) */ + const unsigned char pwd[], /* the user specified password (input) */ + unsigned int pwd_len, /* the length of the password (input) */ + const unsigned char salt[], /* the salt (input) */ +#ifdef PASSWORD_VERIFIER + unsigned char pwd_ver[PWD_VER_LENGTH], /* 2 byte password verifier (output) */ +#endif + fcrypt_ctx cx[1]); /* the file encryption context (output) */ + +/* perform 'in place' encryption or decryption and authentication */ + +void fcrypt_encrypt(unsigned char data[], unsigned int data_len, fcrypt_ctx cx[1]); +void fcrypt_decrypt(unsigned char data[], unsigned int data_len, fcrypt_ctx cx[1]); + +/* close encryption/decryption and return the MAC value */ +/* the return value is the length of the MAC */ + +int fcrypt_end(unsigned char mac[], /* the MAC value (output) */ + fcrypt_ctx cx[1]); /* the context (input) */ + +#if defined(__cplusplus) +} +#endif + +#endif diff --git a/Zip/aes/hmac.c b/Zip/minizip/aes/hmac.c similarity index 97% rename from Zip/aes/hmac.c rename to Zip/minizip/aes/hmac.c index c71b14e..7600a4e 100755 --- a/Zip/aes/hmac.c +++ b/Zip/minizip/aes/hmac.c @@ -1,145 +1,145 @@ -/* - --------------------------------------------------------------------------- - Copyright (c) 2002, Dr Brian Gladman, Worcester, UK. All rights reserved. - - LICENSE TERMS - - The free distribution and use of this software in both source and binary - form is allowed (with or without changes) provided that: - - 1. distributions of this source code include the above copyright - notice, this list of conditions and the following disclaimer; - - 2. distributions in binary form include the above copyright - notice, this list of conditions and the following disclaimer - in the documentation and/or other associated materials; - - 3. the copyright holder's name is not used to endorse products - built using this software without specific written permission. - - ALTERNATIVELY, provided that this notice is retained in full, this product - may be distributed under the terms of the GNU General Public License (GPL), - in which case the provisions of the GPL apply INSTEAD OF those given above. - - 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: 26/08/2003 - - This is an implementation of HMAC, the FIPS standard keyed hash function -*/ - -#include "hmac.h" -#include "brg_types.h" - -#if defined(__cplusplus) -extern "C" -{ -#endif - -/* initialise the HMAC context to zero */ -void hmac_sha_begin(hmac_ctx cx[1]) -{ - memset(cx, 0, sizeof(hmac_ctx)); -} - -/* input the HMAC key (can be called multiple times) */ -int hmac_sha_key(const unsigned char key[], unsigned long key_len, hmac_ctx cx[1]) -{ - if(cx->klen == HMAC_IN_DATA) /* error if further key input */ - return HMAC_BAD_MODE; /* is attempted in data mode */ - - if(cx->klen + key_len > HASH_INPUT_SIZE) /* if the key has to be hashed */ - { - if(cx->klen <= HASH_INPUT_SIZE) /* if the hash has not yet been */ - { /* started, initialise it and */ - sha_begin(cx->ctx); /* hash stored key characters */ - sha_hash(cx->key, cx->klen, cx->ctx); - } - - sha_hash(key, key_len, cx->ctx); /* hash long key data into hash */ - } - else /* otherwise store key data */ - memcpy(cx->key + cx->klen, key, key_len); - - cx->klen += key_len; /* update the key length count */ - return HMAC_OK; -} - -/* input the HMAC data (can be called multiple times) - */ -/* note that this call terminates the key input phase */ -void hmac_sha_data(const unsigned char data[], unsigned long data_len, hmac_ctx cx[1]) -{ unsigned int i; - - if(cx->klen != HMAC_IN_DATA) /* if not yet in data phase */ - { - if(cx->klen > HASH_INPUT_SIZE) /* if key is being hashed */ - { /* complete the hash and */ - sha_end(cx->key, cx->ctx); /* store the result as the */ - cx->klen = HASH_OUTPUT_SIZE; /* key and set new length */ - } - - /* pad the key if necessary */ - memset(cx->key + cx->klen, 0, HASH_INPUT_SIZE - cx->klen); - - /* xor ipad into key value */ - for(i = 0; i < (HASH_INPUT_SIZE >> 2); ++i) - ((uint_32t*)cx->key)[i] ^= 0x36363636; - - /* and start hash operation */ - sha_begin(cx->ctx); - sha_hash(cx->key, HASH_INPUT_SIZE, cx->ctx); - - /* mark as now in data mode */ - cx->klen = HMAC_IN_DATA; - } - - /* hash the data (if any) */ - if(data_len) - sha_hash(data, data_len, cx->ctx); -} - -/* compute and output the MAC value */ -void hmac_sha_end(unsigned char mac[], unsigned long mac_len, hmac_ctx cx[1]) -{ unsigned char dig[HASH_OUTPUT_SIZE]; - unsigned int i; - - /* if no data has been entered perform a null data phase */ - if(cx->klen != HMAC_IN_DATA) - hmac_sha_data((const unsigned char*)0, 0, cx); - - sha_end(dig, cx->ctx); /* complete the inner hash */ - - /* set outer key value using opad and removing ipad */ - for(i = 0; i < (HASH_INPUT_SIZE >> 2); ++i) - ((uint_32t*)cx->key)[i] ^= 0x36363636 ^ 0x5c5c5c5c; - - /* perform the outer hash operation */ - sha_begin(cx->ctx); - sha_hash(cx->key, HASH_INPUT_SIZE, cx->ctx); - sha_hash(dig, HASH_OUTPUT_SIZE, cx->ctx); - sha_end(dig, cx->ctx); - - /* output the hash value */ - for(i = 0; i < mac_len; ++i) - mac[i] = dig[i]; -} - -/* 'do it all in one go' subroutine */ -void hmac_sha(const unsigned char key[], unsigned long key_len, - const unsigned char data[], unsigned long data_len, - unsigned char mac[], unsigned long mac_len) -{ hmac_ctx cx[1]; - - hmac_sha_begin(cx); - hmac_sha_key(key, key_len, cx); - hmac_sha_data(data, data_len, cx); - hmac_sha_end(mac, mac_len, cx); -} - -#if defined(__cplusplus) -} -#endif +/* + --------------------------------------------------------------------------- + Copyright (c) 2002, Dr Brian Gladman, Worcester, UK. All rights reserved. + + LICENSE TERMS + + The free distribution and use of this software in both source and binary + form is allowed (with or without changes) provided that: + + 1. distributions of this source code include the above copyright + notice, this list of conditions and the following disclaimer; + + 2. distributions in binary form include the above copyright + notice, this list of conditions and the following disclaimer + in the documentation and/or other associated materials; + + 3. the copyright holder's name is not used to endorse products + built using this software without specific written permission. + + ALTERNATIVELY, provided that this notice is retained in full, this product + may be distributed under the terms of the GNU General Public License (GPL), + in which case the provisions of the GPL apply INSTEAD OF those given above. + + 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: 26/08/2003 + + This is an implementation of HMAC, the FIPS standard keyed hash function +*/ + +#include "hmac.h" +#include "brg_types.h" + +#if defined(__cplusplus) +extern "C" +{ +#endif + +/* initialise the HMAC context to zero */ +void hmac_sha_begin(hmac_ctx cx[1]) +{ + memset(cx, 0, sizeof(hmac_ctx)); +} + +/* input the HMAC key (can be called multiple times) */ +int hmac_sha_key(const unsigned char key[], unsigned long key_len, hmac_ctx cx[1]) +{ + if(cx->klen == HMAC_IN_DATA) /* error if further key input */ + return HMAC_BAD_MODE; /* is attempted in data mode */ + + if(cx->klen + key_len > HASH_INPUT_SIZE) /* if the key has to be hashed */ + { + if(cx->klen <= HASH_INPUT_SIZE) /* if the hash has not yet been */ + { /* started, initialise it and */ + sha_begin(cx->ctx); /* hash stored key characters */ + sha_hash(cx->key, cx->klen, cx->ctx); + } + + sha_hash(key, key_len, cx->ctx); /* hash long key data into hash */ + } + else /* otherwise store key data */ + memcpy(cx->key + cx->klen, key, key_len); + + cx->klen += key_len; /* update the key length count */ + return HMAC_OK; +} + +/* input the HMAC data (can be called multiple times) - */ +/* note that this call terminates the key input phase */ +void hmac_sha_data(const unsigned char data[], unsigned long data_len, hmac_ctx cx[1]) +{ unsigned int i; + + if(cx->klen != HMAC_IN_DATA) /* if not yet in data phase */ + { + if(cx->klen > HASH_INPUT_SIZE) /* if key is being hashed */ + { /* complete the hash and */ + sha_end(cx->key, cx->ctx); /* store the result as the */ + cx->klen = HASH_OUTPUT_SIZE; /* key and set new length */ + } + + /* pad the key if necessary */ + memset(cx->key + cx->klen, 0, HASH_INPUT_SIZE - cx->klen); + + /* xor ipad into key value */ + for(i = 0; i < (HASH_INPUT_SIZE >> 2); ++i) + ((uint_32t*)cx->key)[i] ^= 0x36363636; + + /* and start hash operation */ + sha_begin(cx->ctx); + sha_hash(cx->key, HASH_INPUT_SIZE, cx->ctx); + + /* mark as now in data mode */ + cx->klen = HMAC_IN_DATA; + } + + /* hash the data (if any) */ + if(data_len) + sha_hash(data, data_len, cx->ctx); +} + +/* compute and output the MAC value */ +void hmac_sha_end(unsigned char mac[], unsigned long mac_len, hmac_ctx cx[1]) +{ unsigned char dig[HASH_OUTPUT_SIZE]; + unsigned int i; + + /* if no data has been entered perform a null data phase */ + if(cx->klen != HMAC_IN_DATA) + hmac_sha_data((const unsigned char*)0, 0, cx); + + sha_end(dig, cx->ctx); /* complete the inner hash */ + + /* set outer key value using opad and removing ipad */ + for(i = 0; i < (HASH_INPUT_SIZE >> 2); ++i) + ((uint_32t*)cx->key)[i] ^= 0x36363636 ^ 0x5c5c5c5c; + + /* perform the outer hash operation */ + sha_begin(cx->ctx); + sha_hash(cx->key, HASH_INPUT_SIZE, cx->ctx); + sha_hash(dig, HASH_OUTPUT_SIZE, cx->ctx); + sha_end(dig, cx->ctx); + + /* output the hash value */ + for(i = 0; i < mac_len; ++i) + mac[i] = dig[i]; +} + +/* 'do it all in one go' subroutine */ +void hmac_sha(const unsigned char key[], unsigned long key_len, + const unsigned char data[], unsigned long data_len, + unsigned char mac[], unsigned long mac_len) +{ hmac_ctx cx[1]; + + hmac_sha_begin(cx); + hmac_sha_key(key, key_len, cx); + hmac_sha_data(data, data_len, cx); + hmac_sha_end(mac, mac_len, cx); +} + +#if defined(__cplusplus) +} +#endif diff --git a/Zip/aes/hmac.h b/Zip/minizip/aes/hmac.h similarity index 96% rename from Zip/aes/hmac.h rename to Zip/minizip/aes/hmac.h index 643037c..419cc15 100755 --- a/Zip/aes/hmac.h +++ b/Zip/minizip/aes/hmac.h @@ -1,103 +1,103 @@ -/* - --------------------------------------------------------------------------- - Copyright (c) 2002, Dr Brian Gladman, Worcester, UK. All rights reserved. - - LICENSE TERMS - - The free distribution and use of this software in both source and binary - form is allowed (with or without changes) provided that: - - 1. distributions of this source code include the above copyright - notice, this list of conditions and the following disclaimer; - - 2. distributions in binary form include the above copyright - notice, this list of conditions and the following disclaimer - in the documentation and/or other associated materials; - - 3. the copyright holder's name is not used to endorse products - built using this software without specific written permission. - - ALTERNATIVELY, provided that this notice is retained in full, this product - may be distributed under the terms of the GNU General Public License (GPL), - in which case the provisions of the GPL apply INSTEAD OF those given above. - - 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: 26/08/2003 - - This is an implementation of HMAC, the FIPS standard keyed hash function -*/ - -#ifndef _HMAC_H -#define _HMAC_H - -#include - -#if defined(__cplusplus) -extern "C" -{ -#endif - -#define USE_SHA1 - -#if !defined(USE_SHA1) && !defined(USE_SHA256) -#error define USE_SHA1 or USE_SHA256 to set the HMAC hash algorithm -#endif - -#ifdef USE_SHA1 - -#include "sha1.h" - -#define HASH_INPUT_SIZE SHA1_BLOCK_SIZE -#define HASH_OUTPUT_SIZE SHA1_DIGEST_SIZE -#define sha_ctx sha1_ctx -#define sha_begin sha1_begin -#define sha_hash sha1_hash -#define sha_end sha1_end - -#endif - -#ifdef USE_SHA256 - -#include "sha2.h" - -#define HASH_INPUT_SIZE SHA256_BLOCK_SIZE -#define HASH_OUTPUT_SIZE SHA256_DIGEST_SIZE -#define sha_ctx sha256_ctx -#define sha_begin sha256_begin -#define sha_hash sha256_hash -#define sha_end sha256_end - -#endif - -#define HMAC_OK 0 -#define HMAC_BAD_MODE -1 -#define HMAC_IN_DATA 0xffffffff - -typedef struct -{ unsigned char key[HASH_INPUT_SIZE]; - sha_ctx ctx[1]; - unsigned long klen; -} hmac_ctx; - -void hmac_sha_begin(hmac_ctx cx[1]); - -int hmac_sha_key(const unsigned char key[], unsigned long key_len, hmac_ctx cx[1]); - -void hmac_sha_data(const unsigned char data[], unsigned long data_len, hmac_ctx cx[1]); - -void hmac_sha_end(unsigned char mac[], unsigned long mac_len, hmac_ctx cx[1]); - -void hmac_sha(const unsigned char key[], unsigned long key_len, - const unsigned char data[], unsigned long data_len, - unsigned char mac[], unsigned long mac_len); - -#if defined(__cplusplus) -} -#endif - -#endif +/* + --------------------------------------------------------------------------- + Copyright (c) 2002, Dr Brian Gladman, Worcester, UK. All rights reserved. + + LICENSE TERMS + + The free distribution and use of this software in both source and binary + form is allowed (with or without changes) provided that: + + 1. distributions of this source code include the above copyright + notice, this list of conditions and the following disclaimer; + + 2. distributions in binary form include the above copyright + notice, this list of conditions and the following disclaimer + in the documentation and/or other associated materials; + + 3. the copyright holder's name is not used to endorse products + built using this software without specific written permission. + + ALTERNATIVELY, provided that this notice is retained in full, this product + may be distributed under the terms of the GNU General Public License (GPL), + in which case the provisions of the GPL apply INSTEAD OF those given above. + + 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: 26/08/2003 + + This is an implementation of HMAC, the FIPS standard keyed hash function +*/ + +#ifndef _HMAC_H +#define _HMAC_H + +#include + +#if defined(__cplusplus) +extern "C" +{ +#endif + +#define USE_SHA1 + +#if !defined(USE_SHA1) && !defined(USE_SHA256) +#error define USE_SHA1 or USE_SHA256 to set the HMAC hash algorithm +#endif + +#ifdef USE_SHA1 + +#include "sha1.h" + +#define HASH_INPUT_SIZE SHA1_BLOCK_SIZE +#define HASH_OUTPUT_SIZE SHA1_DIGEST_SIZE +#define sha_ctx sha1_ctx +#define sha_begin sha1_begin +#define sha_hash sha1_hash +#define sha_end sha1_end + +#endif + +#ifdef USE_SHA256 + +#include "sha2.h" + +#define HASH_INPUT_SIZE SHA256_BLOCK_SIZE +#define HASH_OUTPUT_SIZE SHA256_DIGEST_SIZE +#define sha_ctx sha256_ctx +#define sha_begin sha256_begin +#define sha_hash sha256_hash +#define sha_end sha256_end + +#endif + +#define HMAC_OK 0 +#define HMAC_BAD_MODE -1 +#define HMAC_IN_DATA 0xffffffff + +typedef struct +{ unsigned char key[HASH_INPUT_SIZE]; + sha_ctx ctx[1]; + unsigned long klen; +} hmac_ctx; + +void hmac_sha_begin(hmac_ctx cx[1]); + +int hmac_sha_key(const unsigned char key[], unsigned long key_len, hmac_ctx cx[1]); + +void hmac_sha_data(const unsigned char data[], unsigned long data_len, hmac_ctx cx[1]); + +void hmac_sha_end(unsigned char mac[], unsigned long mac_len, hmac_ctx cx[1]); + +void hmac_sha(const unsigned char key[], unsigned long key_len, + const unsigned char data[], unsigned long data_len, + unsigned char mac[], unsigned long mac_len); + +#if defined(__cplusplus) +} +#endif + +#endif diff --git a/Zip/aes/prng.c b/Zip/minizip/aes/prng.c similarity index 97% rename from Zip/aes/prng.c rename to Zip/minizip/aes/prng.c index 2f91090..14fc09d 100755 --- a/Zip/aes/prng.c +++ b/Zip/minizip/aes/prng.c @@ -1,155 +1,155 @@ -/* - --------------------------------------------------------------------------- - Copyright (c) 2002, Dr Brian Gladman < >, Worcester, UK. - All rights reserved. - - LICENSE TERMS - - The free distribution and use of this software in both source and binary - form is allowed (with or without changes) provided that: - - 1. distributions of this source code include the above copyright - notice, this list of conditions and the following disclaimer; - - 2. distributions in binary form include the above copyright - notice, this list of conditions and the following disclaimer - in the documentation and/or other associated materials; - - 3. the copyright holder's name is not used to endorse products - built using this software without specific written permission. - - ALTERNATIVELY, provided that this notice is retained in full, this product - may be distributed under the terms of the GNU General Public License (GPL), - in which case the provisions of the GPL apply INSTEAD OF those given above. - - 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: 24/01/2003 - - This file implements a random data pool based on the use of an external - entropy function. It is based on the ideas advocated by Peter Gutmann in - his work on pseudo random sequence generators. It is not a 'paranoid' - random sequence generator and no attempt is made to protect the pool - from prying eyes either by memory locking or by techniques to obscure - its location in memory. -*/ - -#include -#include "prng.h" - -#if defined(__cplusplus) -extern "C" -{ -#endif - -/* mix a random data pool using the SHA1 compression function (as */ -/* suggested by Peter Gutmann in his paper on random pools) */ - -static void prng_mix(unsigned char buf[]) -{ unsigned int i, len; - sha1_ctx ctx[1]; - - /*lint -e{663} unusual array to pointer conversion */ - for(i = 0; i < PRNG_POOL_SIZE; i += SHA1_DIGEST_SIZE) - { - /* copy digest size pool block into SHA1 hash block */ - memcpy(ctx->hash, buf + (i ? i : PRNG_POOL_SIZE) - - SHA1_DIGEST_SIZE, SHA1_DIGEST_SIZE); - - /* copy data from pool into the SHA1 data buffer */ - len = PRNG_POOL_SIZE - i; - memcpy(ctx->wbuf, buf + i, (len > SHA1_BLOCK_SIZE ? SHA1_BLOCK_SIZE : len)); - - if(len < SHA1_BLOCK_SIZE) - memcpy(((char*)ctx->wbuf) + len, buf, SHA1_BLOCK_SIZE - len); - - /* compress using the SHA1 compression function */ - sha1_compile(ctx); - - /* put digest size block back into the random pool */ - memcpy(buf + i, ctx->hash, SHA1_DIGEST_SIZE); - } -} - -/* refresh the output buffer and update the random pool by adding */ -/* entropy and remixing */ - -static void update_pool(prng_ctx ctx[1]) -{ unsigned int i = 0; - - /* transfer random pool data to the output buffer */ - memcpy(ctx->obuf, ctx->rbuf, PRNG_POOL_SIZE); - - /* enter entropy data into the pool */ - while(i < PRNG_POOL_SIZE) - i += ctx->entropy(ctx->rbuf + i, PRNG_POOL_SIZE - i); - - /* invert and xor the original pool data into the pool */ - for(i = 0; i < PRNG_POOL_SIZE; ++i) - ctx->rbuf[i] ^= ~ctx->obuf[i]; - - /* mix the pool and the output buffer */ - prng_mix(ctx->rbuf); - prng_mix(ctx->obuf); -} - -void prng_init(prng_entropy_fn fun, prng_ctx ctx[1]) -{ int i; - - /* clear the buffers and the counter in the context */ - memset(ctx, 0, sizeof(prng_ctx)); - - /* set the pointer to the entropy collection function */ - ctx->entropy = fun; - - /* initialise the random data pool */ - update_pool(ctx); - - /* mix the pool a minimum number of times */ - for(i = 0; i < PRNG_MIN_MIX; ++i) - prng_mix(ctx->rbuf); - - /* update the pool to prime the pool output buffer */ - update_pool(ctx); -} - -/* provide random bytes from the random data pool */ - -void prng_rand(unsigned char data[], unsigned int data_len, prng_ctx ctx[1]) -{ unsigned char *rp = data; - unsigned int len, pos = ctx->pos; - - while(data_len) - { - /* transfer 'data_len' bytes (or the number of bytes remaining */ - /* the pool output buffer if less) into the output */ - len = (data_len < PRNG_POOL_SIZE - pos ? data_len : PRNG_POOL_SIZE - pos); - memcpy(rp, ctx->obuf + pos, len); - rp += len; /* update ouput buffer position pointer */ - pos += len; /* update pool output buffer pointer */ - data_len -= len; /* update the remaining data count */ - - /* refresh the random pool if necessary */ - if(pos == PRNG_POOL_SIZE) - { - update_pool(ctx); pos = 0; - } - } - - ctx->pos = pos; -} - -void prng_end(prng_ctx ctx[1]) -{ - /* ensure the data in the context is destroyed */ - memset(ctx, 0, sizeof(prng_ctx)); -} - -#if defined(__cplusplus) -} -#endif - +/* + --------------------------------------------------------------------------- + Copyright (c) 2002, Dr Brian Gladman < >, Worcester, UK. + All rights reserved. + + LICENSE TERMS + + The free distribution and use of this software in both source and binary + form is allowed (with or without changes) provided that: + + 1. distributions of this source code include the above copyright + notice, this list of conditions and the following disclaimer; + + 2. distributions in binary form include the above copyright + notice, this list of conditions and the following disclaimer + in the documentation and/or other associated materials; + + 3. the copyright holder's name is not used to endorse products + built using this software without specific written permission. + + ALTERNATIVELY, provided that this notice is retained in full, this product + may be distributed under the terms of the GNU General Public License (GPL), + in which case the provisions of the GPL apply INSTEAD OF those given above. + + 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: 24/01/2003 + + This file implements a random data pool based on the use of an external + entropy function. It is based on the ideas advocated by Peter Gutmann in + his work on pseudo random sequence generators. It is not a 'paranoid' + random sequence generator and no attempt is made to protect the pool + from prying eyes either by memory locking or by techniques to obscure + its location in memory. +*/ + +#include +#include "prng.h" + +#if defined(__cplusplus) +extern "C" +{ +#endif + +/* mix a random data pool using the SHA1 compression function (as */ +/* suggested by Peter Gutmann in his paper on random pools) */ + +static void prng_mix(unsigned char buf[]) +{ unsigned int i, len; + sha1_ctx ctx[1]; + + /*lint -e{663} unusual array to pointer conversion */ + for(i = 0; i < PRNG_POOL_SIZE; i += SHA1_DIGEST_SIZE) + { + /* copy digest size pool block into SHA1 hash block */ + memcpy(ctx->hash, buf + (i ? i : PRNG_POOL_SIZE) + - SHA1_DIGEST_SIZE, SHA1_DIGEST_SIZE); + + /* copy data from pool into the SHA1 data buffer */ + len = PRNG_POOL_SIZE - i; + memcpy(ctx->wbuf, buf + i, (len > SHA1_BLOCK_SIZE ? SHA1_BLOCK_SIZE : len)); + + if(len < SHA1_BLOCK_SIZE) + memcpy(((char*)ctx->wbuf) + len, buf, SHA1_BLOCK_SIZE - len); + + /* compress using the SHA1 compression function */ + sha1_compile(ctx); + + /* put digest size block back into the random pool */ + memcpy(buf + i, ctx->hash, SHA1_DIGEST_SIZE); + } +} + +/* refresh the output buffer and update the random pool by adding */ +/* entropy and remixing */ + +static void update_pool(prng_ctx ctx[1]) +{ unsigned int i = 0; + + /* transfer random pool data to the output buffer */ + memcpy(ctx->obuf, ctx->rbuf, PRNG_POOL_SIZE); + + /* enter entropy data into the pool */ + while(i < PRNG_POOL_SIZE) + i += ctx->entropy(ctx->rbuf + i, PRNG_POOL_SIZE - i); + + /* invert and xor the original pool data into the pool */ + for(i = 0; i < PRNG_POOL_SIZE; ++i) + ctx->rbuf[i] ^= ~ctx->obuf[i]; + + /* mix the pool and the output buffer */ + prng_mix(ctx->rbuf); + prng_mix(ctx->obuf); +} + +void prng_init(prng_entropy_fn fun, prng_ctx ctx[1]) +{ int i; + + /* clear the buffers and the counter in the context */ + memset(ctx, 0, sizeof(prng_ctx)); + + /* set the pointer to the entropy collection function */ + ctx->entropy = fun; + + /* initialise the random data pool */ + update_pool(ctx); + + /* mix the pool a minimum number of times */ + for(i = 0; i < PRNG_MIN_MIX; ++i) + prng_mix(ctx->rbuf); + + /* update the pool to prime the pool output buffer */ + update_pool(ctx); +} + +/* provide random bytes from the random data pool */ + +void prng_rand(unsigned char data[], unsigned int data_len, prng_ctx ctx[1]) +{ unsigned char *rp = data; + unsigned int len, pos = ctx->pos; + + while(data_len) + { + /* transfer 'data_len' bytes (or the number of bytes remaining */ + /* the pool output buffer if less) into the output */ + len = (data_len < PRNG_POOL_SIZE - pos ? data_len : PRNG_POOL_SIZE - pos); + memcpy(rp, ctx->obuf + pos, len); + rp += len; /* update ouput buffer position pointer */ + pos += len; /* update pool output buffer pointer */ + data_len -= len; /* update the remaining data count */ + + /* refresh the random pool if necessary */ + if(pos == PRNG_POOL_SIZE) + { + update_pool(ctx); pos = 0; + } + } + + ctx->pos = pos; +} + +void prng_end(prng_ctx ctx[1]) +{ + /* ensure the data in the context is destroyed */ + memset(ctx, 0, sizeof(prng_ctx)); +} + +#if defined(__cplusplus) +} +#endif + diff --git a/Zip/aes/prng.h b/Zip/minizip/aes/prng.h similarity index 97% rename from Zip/aes/prng.h rename to Zip/minizip/aes/prng.h index f934b51..9a77426 100755 --- a/Zip/aes/prng.h +++ b/Zip/minizip/aes/prng.h @@ -1,82 +1,82 @@ -/* - --------------------------------------------------------------------------- - Copyright (c) 2002, Dr Brian Gladman < >, Worcester, UK. - All rights reserved. - - LICENSE TERMS - - The free distribution and use of this software in both source and binary - form is allowed (with or without changes) provided that: - - 1. distributions of this source code include the above copyright - notice, this list of conditions and the following disclaimer; - - 2. distributions in binary form include the above copyright - notice, this list of conditions and the following disclaimer - in the documentation and/or other associated materials; - - 3. the copyright holder's name is not used to endorse products - built using this software without specific written permission. - - ALTERNATIVELY, provided that this notice is retained in full, this product - may be distributed under the terms of the GNU General Public License (GPL), - in which case the provisions of the GPL apply INSTEAD OF those given above. - - 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: 24/01/2003 - - This is the header file for an implementation of a random data pool based on - the use of an external entropy function (inspired by Peter Gutmann's work). -*/ - -#ifndef _PRNG_H -#define _PRNG_H - -#include "sha1.h" - -#define PRNG_POOL_LEN 256 /* minimum random pool size */ -#define PRNG_MIN_MIX 20 /* min initial pool mixing iterations */ - -/* ensure that pool length is a multiple of the SHA1 digest size */ - -#define PRNG_POOL_SIZE (SHA1_DIGEST_SIZE * (1 + (PRNG_POOL_LEN - 1) / SHA1_DIGEST_SIZE)) - -#if defined(__cplusplus) -extern "C" -{ -#endif - -/* A function for providing entropy is a parameter in the prng_init() */ -/* call. This function has the following form and returns a maximum */ -/* of 'len' bytes of pseudo random data in the buffer 'buf'. It can */ -/* return less than 'len' bytes but will be repeatedly called for more */ -/* data in this case. */ - -typedef int (*prng_entropy_fn)(unsigned char buf[], unsigned int len); - -typedef struct -{ unsigned char rbuf[PRNG_POOL_SIZE]; /* the random pool */ - unsigned char obuf[PRNG_POOL_SIZE]; /* pool output buffer */ - unsigned int pos; /* output buffer position */ - prng_entropy_fn entropy; /* entropy function pointer */ -} prng_ctx; - -/* initialise the random stream generator */ -void prng_init(prng_entropy_fn fun, prng_ctx ctx[1]); - -/* obtain random bytes from the generator */ -void prng_rand(unsigned char data[], unsigned int data_len, prng_ctx ctx[1]); - -/* close the random stream generator */ -void prng_end(prng_ctx ctx[1]); - -#if defined(__cplusplus) -} -#endif - -#endif +/* + --------------------------------------------------------------------------- + Copyright (c) 2002, Dr Brian Gladman < >, Worcester, UK. + All rights reserved. + + LICENSE TERMS + + The free distribution and use of this software in both source and binary + form is allowed (with or without changes) provided that: + + 1. distributions of this source code include the above copyright + notice, this list of conditions and the following disclaimer; + + 2. distributions in binary form include the above copyright + notice, this list of conditions and the following disclaimer + in the documentation and/or other associated materials; + + 3. the copyright holder's name is not used to endorse products + built using this software without specific written permission. + + ALTERNATIVELY, provided that this notice is retained in full, this product + may be distributed under the terms of the GNU General Public License (GPL), + in which case the provisions of the GPL apply INSTEAD OF those given above. + + 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: 24/01/2003 + + This is the header file for an implementation of a random data pool based on + the use of an external entropy function (inspired by Peter Gutmann's work). +*/ + +#ifndef _PRNG_H +#define _PRNG_H + +#include "sha1.h" + +#define PRNG_POOL_LEN 256 /* minimum random pool size */ +#define PRNG_MIN_MIX 20 /* min initial pool mixing iterations */ + +/* ensure that pool length is a multiple of the SHA1 digest size */ + +#define PRNG_POOL_SIZE (SHA1_DIGEST_SIZE * (1 + (PRNG_POOL_LEN - 1) / SHA1_DIGEST_SIZE)) + +#if defined(__cplusplus) +extern "C" +{ +#endif + +/* A function for providing entropy is a parameter in the prng_init() */ +/* call. This function has the following form and returns a maximum */ +/* of 'len' bytes of pseudo random data in the buffer 'buf'. It can */ +/* return less than 'len' bytes but will be repeatedly called for more */ +/* data in this case. */ + +typedef int (*prng_entropy_fn)(unsigned char buf[], unsigned int len); + +typedef struct +{ unsigned char rbuf[PRNG_POOL_SIZE]; /* the random pool */ + unsigned char obuf[PRNG_POOL_SIZE]; /* pool output buffer */ + unsigned int pos; /* output buffer position */ + prng_entropy_fn entropy; /* entropy function pointer */ +} prng_ctx; + +/* initialise the random stream generator */ +void prng_init(prng_entropy_fn fun, prng_ctx ctx[1]); + +/* obtain random bytes from the generator */ +void prng_rand(unsigned char data[], unsigned int data_len, prng_ctx ctx[1]); + +/* close the random stream generator */ +void prng_end(prng_ctx ctx[1]); + +#if defined(__cplusplus) +} +#endif + +#endif diff --git a/Zip/aes/pwd2key.c b/Zip/minizip/aes/pwd2key.c similarity index 96% rename from Zip/aes/pwd2key.c rename to Zip/minizip/aes/pwd2key.c index 80a4760..d3c6abb 100755 --- a/Zip/aes/pwd2key.c +++ b/Zip/minizip/aes/pwd2key.c @@ -1,193 +1,193 @@ -/* - --------------------------------------------------------------------------- - Copyright (c) 2002, Dr Brian Gladman, Worcester, UK. All rights reserved. - - LICENSE TERMS - - The free distribution and use of this software in both source and binary - form is allowed (with or without changes) provided that: - - 1. distributions of this source code include the above copyright - notice, this list of conditions and the following disclaimer; - - 2. distributions in binary form include the above copyright - notice, this list of conditions and the following disclaimer - in the documentation and/or other associated materials; - - 3. the copyright holder's name is not used to endorse products - built using this software without specific written permission. - - ALTERNATIVELY, provided that this notice is retained in full, this product - may be distributed under the terms of the GNU General Public License (GPL), - in which case the provisions of the GPL apply INSTEAD OF those given above. - - 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: 26/08/2003 - - This is an implementation of RFC2898, which specifies key derivation from - a password and a salt value. -*/ - -#include -#include "hmac.h" - -#if defined(__cplusplus) -extern "C" -{ -#endif - -void derive_key(const unsigned char pwd[], /* the PASSWORD */ - unsigned int pwd_len, /* and its length */ - const unsigned char salt[], /* the SALT and its */ - unsigned int salt_len, /* length */ - unsigned int iter, /* the number of iterations */ - unsigned char key[], /* space for the output key */ - unsigned int key_len)/* and its required length */ -{ - unsigned int i, j, k, n_blk; - unsigned char uu[HASH_OUTPUT_SIZE], ux[HASH_OUTPUT_SIZE]; - hmac_ctx c1[1], c2[1], c3[1]; - - /* set HMAC context (c1) for password */ - hmac_sha_begin(c1); - hmac_sha_key(pwd, pwd_len, c1); - - /* set HMAC context (c2) for password and salt */ - memcpy(c2, c1, sizeof(hmac_ctx)); - hmac_sha_data(salt, salt_len, c2); - - /* find the number of SHA blocks in the key */ - n_blk = 1 + (key_len - 1) / HASH_OUTPUT_SIZE; - - for(i = 0; i < n_blk; ++i) /* for each block in key */ - { - /* ux[] holds the running xor value */ - memset(ux, 0, HASH_OUTPUT_SIZE); - - /* set HMAC context (c3) for password and salt */ - memcpy(c3, c2, sizeof(hmac_ctx)); - - /* enter additional data for 1st block into uu */ - uu[0] = (unsigned char)((i + 1) >> 24); - uu[1] = (unsigned char)((i + 1) >> 16); - uu[2] = (unsigned char)((i + 1) >> 8); - uu[3] = (unsigned char)(i + 1); - - /* this is the key mixing iteration */ - for(j = 0, k = 4; j < iter; ++j) - { - /* add previous round data to HMAC */ - hmac_sha_data(uu, k, c3); - - /* obtain HMAC for uu[] */ - hmac_sha_end(uu, HASH_OUTPUT_SIZE, c3); - - /* xor into the running xor block */ - for(k = 0; k < HASH_OUTPUT_SIZE; ++k) - ux[k] ^= uu[k]; - - /* set HMAC context (c3) for password */ - memcpy(c3, c1, sizeof(hmac_ctx)); - } - - /* compile key blocks into the key output */ - j = 0; k = i * HASH_OUTPUT_SIZE; - while(j < HASH_OUTPUT_SIZE && k < key_len) - key[k++] = ux[j++]; - } -} - -#ifdef TEST - -#include - -struct -{ unsigned int pwd_len; - unsigned int salt_len; - unsigned int it_count; - unsigned char *pwd; - unsigned char salt[32]; - unsigned char key[32]; -} tests[] = -{ - { 8, 4, 5, (unsigned char*)"password", - { - 0x12, 0x34, 0x56, 0x78 - }, - { - 0x5c, 0x75, 0xce, 0xf0, 0x1a, 0x96, 0x0d, 0xf7, - 0x4c, 0xb6, 0xb4, 0x9b, 0x9e, 0x38, 0xe6, 0xb5 - } - }, - { 8, 8, 5, (unsigned char*)"password", - { - 0x12, 0x34, 0x56, 0x78, 0x78, 0x56, 0x34, 0x12 - }, - { - 0xd1, 0xda, 0xa7, 0x86, 0x15, 0xf2, 0x87, 0xe6, - 0xa1, 0xc8, 0xb1, 0x20, 0xd7, 0x06, 0x2a, 0x49 - } - }, - { 8, 21, 1, (unsigned char*)"password", - { - "ATHENA.MIT.EDUraeburn" - }, - { - 0xcd, 0xed, 0xb5, 0x28, 0x1b, 0xb2, 0xf8, 0x01, - 0x56, 0x5a, 0x11, 0x22, 0xb2, 0x56, 0x35, 0x15 - } - }, - { 8, 21, 2, (unsigned char*)"password", - { - "ATHENA.MIT.EDUraeburn" - }, - { - 0x01, 0xdb, 0xee, 0x7f, 0x4a, 0x9e, 0x24, 0x3e, - 0x98, 0x8b, 0x62, 0xc7, 0x3c, 0xda, 0x93, 0x5d - } - }, - { 8, 21, 1200, (unsigned char*)"password", - { - "ATHENA.MIT.EDUraeburn" - }, - { - 0x5c, 0x08, 0xeb, 0x61, 0xfd, 0xf7, 0x1e, 0x4e, - 0x4e, 0xc3, 0xcf, 0x6b, 0xa1, 0xf5, 0x51, 0x2b - } - } -}; - -int main() -{ unsigned int i, j, key_len = 256; - unsigned char key[256]; - - printf("\nTest of RFC2898 Password Based Key Derivation"); - for(i = 0; i < 5; ++i) - { - derive_key(tests[i].pwd, tests[i].pwd_len, tests[i].salt, - tests[i].salt_len, tests[i].it_count, key, key_len); - - printf("\ntest %i: ", i + 1); - printf("key %s", memcmp(tests[i].key, key, 16) ? "is bad" : "is good"); - for(j = 0; j < key_len && j < 64; j += 4) - { - if(j % 16 == 0) - printf("\n"); - printf("0x%02x%02x%02x%02x ", key[j], key[j + 1], key[j + 2], key[j + 3]); - } - printf(j < key_len ? " ... \n" : "\n"); - } - printf("\n"); - return 0; -} - -#if defined(__cplusplus) -} -#endif - -#endif +/* + --------------------------------------------------------------------------- + Copyright (c) 2002, Dr Brian Gladman, Worcester, UK. All rights reserved. + + LICENSE TERMS + + The free distribution and use of this software in both source and binary + form is allowed (with or without changes) provided that: + + 1. distributions of this source code include the above copyright + notice, this list of conditions and the following disclaimer; + + 2. distributions in binary form include the above copyright + notice, this list of conditions and the following disclaimer + in the documentation and/or other associated materials; + + 3. the copyright holder's name is not used to endorse products + built using this software without specific written permission. + + ALTERNATIVELY, provided that this notice is retained in full, this product + may be distributed under the terms of the GNU General Public License (GPL), + in which case the provisions of the GPL apply INSTEAD OF those given above. + + 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: 26/08/2003 + + This is an implementation of RFC2898, which specifies key derivation from + a password and a salt value. +*/ + +#include +#include "hmac.h" + +#if defined(__cplusplus) +extern "C" +{ +#endif + +void derive_key(const unsigned char pwd[], /* the PASSWORD */ + unsigned int pwd_len, /* and its length */ + const unsigned char salt[], /* the SALT and its */ + unsigned int salt_len, /* length */ + unsigned int iter, /* the number of iterations */ + unsigned char key[], /* space for the output key */ + unsigned int key_len)/* and its required length */ +{ + unsigned int i, j, k, n_blk; + unsigned char uu[HASH_OUTPUT_SIZE], ux[HASH_OUTPUT_SIZE]; + hmac_ctx c1[1], c2[1], c3[1]; + + /* set HMAC context (c1) for password */ + hmac_sha_begin(c1); + hmac_sha_key(pwd, pwd_len, c1); + + /* set HMAC context (c2) for password and salt */ + memcpy(c2, c1, sizeof(hmac_ctx)); + hmac_sha_data(salt, salt_len, c2); + + /* find the number of SHA blocks in the key */ + n_blk = 1 + (key_len - 1) / HASH_OUTPUT_SIZE; + + for(i = 0; i < n_blk; ++i) /* for each block in key */ + { + /* ux[] holds the running xor value */ + memset(ux, 0, HASH_OUTPUT_SIZE); + + /* set HMAC context (c3) for password and salt */ + memcpy(c3, c2, sizeof(hmac_ctx)); + + /* enter additional data for 1st block into uu */ + uu[0] = (unsigned char)((i + 1) >> 24); + uu[1] = (unsigned char)((i + 1) >> 16); + uu[2] = (unsigned char)((i + 1) >> 8); + uu[3] = (unsigned char)(i + 1); + + /* this is the key mixing iteration */ + for(j = 0, k = 4; j < iter; ++j) + { + /* add previous round data to HMAC */ + hmac_sha_data(uu, k, c3); + + /* obtain HMAC for uu[] */ + hmac_sha_end(uu, HASH_OUTPUT_SIZE, c3); + + /* xor into the running xor block */ + for(k = 0; k < HASH_OUTPUT_SIZE; ++k) + ux[k] ^= uu[k]; + + /* set HMAC context (c3) for password */ + memcpy(c3, c1, sizeof(hmac_ctx)); + } + + /* compile key blocks into the key output */ + j = 0; k = i * HASH_OUTPUT_SIZE; + while(j < HASH_OUTPUT_SIZE && k < key_len) + key[k++] = ux[j++]; + } +} + +#ifdef TEST + +#include + +struct +{ unsigned int pwd_len; + unsigned int salt_len; + unsigned int it_count; + unsigned char *pwd; + unsigned char salt[32]; + unsigned char key[32]; +} tests[] = +{ + { 8, 4, 5, (unsigned char*)"password", + { + 0x12, 0x34, 0x56, 0x78 + }, + { + 0x5c, 0x75, 0xce, 0xf0, 0x1a, 0x96, 0x0d, 0xf7, + 0x4c, 0xb6, 0xb4, 0x9b, 0x9e, 0x38, 0xe6, 0xb5 + } + }, + { 8, 8, 5, (unsigned char*)"password", + { + 0x12, 0x34, 0x56, 0x78, 0x78, 0x56, 0x34, 0x12 + }, + { + 0xd1, 0xda, 0xa7, 0x86, 0x15, 0xf2, 0x87, 0xe6, + 0xa1, 0xc8, 0xb1, 0x20, 0xd7, 0x06, 0x2a, 0x49 + } + }, + { 8, 21, 1, (unsigned char*)"password", + { + "ATHENA.MIT.EDUraeburn" + }, + { + 0xcd, 0xed, 0xb5, 0x28, 0x1b, 0xb2, 0xf8, 0x01, + 0x56, 0x5a, 0x11, 0x22, 0xb2, 0x56, 0x35, 0x15 + } + }, + { 8, 21, 2, (unsigned char*)"password", + { + "ATHENA.MIT.EDUraeburn" + }, + { + 0x01, 0xdb, 0xee, 0x7f, 0x4a, 0x9e, 0x24, 0x3e, + 0x98, 0x8b, 0x62, 0xc7, 0x3c, 0xda, 0x93, 0x5d + } + }, + { 8, 21, 1200, (unsigned char*)"password", + { + "ATHENA.MIT.EDUraeburn" + }, + { + 0x5c, 0x08, 0xeb, 0x61, 0xfd, 0xf7, 0x1e, 0x4e, + 0x4e, 0xc3, 0xcf, 0x6b, 0xa1, 0xf5, 0x51, 0x2b + } + } +}; + +int main() +{ unsigned int i, j, key_len = 256; + unsigned char key[256]; + + printf("\nTest of RFC2898 Password Based Key Derivation"); + for(i = 0; i < 5; ++i) + { + derive_key(tests[i].pwd, tests[i].pwd_len, tests[i].salt, + tests[i].salt_len, tests[i].it_count, key, key_len); + + printf("\ntest %i: ", i + 1); + printf("key %s", memcmp(tests[i].key, key, 16) ? "is bad" : "is good"); + for(j = 0; j < key_len && j < 64; j += 4) + { + if(j % 16 == 0) + printf("\n"); + printf("0x%02x%02x%02x%02x ", key[j], key[j + 1], key[j + 2], key[j + 3]); + } + printf(j < key_len ? " ... \n" : "\n"); + } + printf("\n"); + return 0; +} + +#if defined(__cplusplus) +} +#endif + +#endif diff --git a/Zip/aes/pwd2key.h b/Zip/minizip/aes/pwd2key.h similarity index 97% rename from Zip/aes/pwd2key.h rename to Zip/minizip/aes/pwd2key.h index 99c1ecc..d95a5b9 100755 --- a/Zip/aes/pwd2key.h +++ b/Zip/minizip/aes/pwd2key.h @@ -1,57 +1,57 @@ -/* - --------------------------------------------------------------------------- - Copyright (c) 2002, Dr Brian Gladman, Worcester, UK. All rights reserved. - - LICENSE TERMS - - The free distribution and use of this software in both source and binary - form is allowed (with or without changes) provided that: - - 1. distributions of this source code include the above copyright - notice, this list of conditions and the following disclaimer; - - 2. distributions in binary form include the above copyright - notice, this list of conditions and the following disclaimer - in the documentation and/or other associated materials; - - 3. the copyright holder's name is not used to endorse products - built using this software without specific written permission. - - ALTERNATIVELY, provided that this notice is retained in full, this product - may be distributed under the terms of the GNU General Public License (GPL), - in which case the provisions of the GPL apply INSTEAD OF those given above. - - 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: 26/08/2003 - - This is an implementation of RFC2898, which specifies key derivation from - a password and a salt value. -*/ - -#ifndef PWD2KEY_H -#define PWD2KEY_H - -#if defined(__cplusplus) -extern "C" -{ -#endif - -void derive_key( - const unsigned char pwd[], /* the PASSWORD, and */ - unsigned int pwd_len, /* its length */ - const unsigned char salt[], /* the SALT and its */ - unsigned int salt_len, /* length */ - unsigned int iter, /* the number of iterations */ - unsigned char key[], /* space for the output key */ - unsigned int key_len); /* and its required length */ - -#if defined(__cplusplus) -} -#endif - -#endif +/* + --------------------------------------------------------------------------- + Copyright (c) 2002, Dr Brian Gladman, Worcester, UK. All rights reserved. + + LICENSE TERMS + + The free distribution and use of this software in both source and binary + form is allowed (with or without changes) provided that: + + 1. distributions of this source code include the above copyright + notice, this list of conditions and the following disclaimer; + + 2. distributions in binary form include the above copyright + notice, this list of conditions and the following disclaimer + in the documentation and/or other associated materials; + + 3. the copyright holder's name is not used to endorse products + built using this software without specific written permission. + + ALTERNATIVELY, provided that this notice is retained in full, this product + may be distributed under the terms of the GNU General Public License (GPL), + in which case the provisions of the GPL apply INSTEAD OF those given above. + + 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: 26/08/2003 + + This is an implementation of RFC2898, which specifies key derivation from + a password and a salt value. +*/ + +#ifndef PWD2KEY_H +#define PWD2KEY_H + +#if defined(__cplusplus) +extern "C" +{ +#endif + +void derive_key( + const unsigned char pwd[], /* the PASSWORD, and */ + unsigned int pwd_len, /* its length */ + const unsigned char salt[], /* the SALT and its */ + unsigned int salt_len, /* length */ + unsigned int iter, /* the number of iterations */ + unsigned char key[], /* space for the output key */ + unsigned int key_len); /* and its required length */ + +#if defined(__cplusplus) +} +#endif + +#endif diff --git a/Zip/aes/sha1.c b/Zip/minizip/aes/sha1.c similarity index 97% rename from Zip/aes/sha1.c rename to Zip/minizip/aes/sha1.c index 0fbf05e..bb54742 100755 --- a/Zip/aes/sha1.c +++ b/Zip/minizip/aes/sha1.c @@ -1,258 +1,258 @@ -/* - --------------------------------------------------------------------------- - Copyright (c) 2002, Dr Brian Gladman, Worcester, UK. All rights reserved. - - LICENSE TERMS - - The free distribution and use of this software in both source and binary - form is allowed (with or without changes) provided that: - - 1. distributions of this source code include the above copyright - notice, this list of conditions and the following disclaimer; - - 2. distributions in binary form include the above copyright - notice, this list of conditions and the following disclaimer - in the documentation and/or other associated materials; - - 3. the copyright holder's name is not used to endorse products - built using this software without specific written permission. - - ALTERNATIVELY, provided that this notice is retained in full, this product - may be distributed under the terms of the GNU General Public License (GPL), - in which case the provisions of the GPL apply INSTEAD OF those given above. - - 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: 01/08/2005 - - This is a byte oriented version of SHA1 that operates on arrays of bytes - stored in memory. -*/ - -#include /* for memcpy() etc. */ - -#include "sha1.h" -#include "brg_endian.h" - -#if defined(__cplusplus) -extern "C" -{ -#endif - -#if defined( _MSC_VER ) && ( _MSC_VER > 800 ) -#pragma intrinsic(memcpy) -#endif - -#if 0 && defined(_MSC_VER) -#define rotl32 _lrotl -#define rotr32 _lrotr -#else -#define rotl32(x,n) (((x) << n) | ((x) >> (32 - n))) -#define rotr32(x,n) (((x) >> n) | ((x) << (32 - n))) -#endif - -#if !defined(bswap_32) -#define bswap_32(x) ((rotr32((x), 24) & 0x00ff00ff) | (rotr32((x), 8) & 0xff00ff00)) -#endif - -#if (PLATFORM_BYTE_ORDER == IS_LITTLE_ENDIAN) -#define SWAP_BYTES -#else -#undef SWAP_BYTES -#endif - -#if defined(SWAP_BYTES) -#define bsw_32(p,n) \ - { int _i = (n); while(_i--) ((uint_32t*)p)[_i] = bswap_32(((uint_32t*)p)[_i]); } -#else -#define bsw_32(p,n) -#endif - -#define SHA1_MASK (SHA1_BLOCK_SIZE - 1) - -#if 0 - -#define ch(x,y,z) (((x) & (y)) ^ (~(x) & (z))) -#define parity(x,y,z) ((x) ^ (y) ^ (z)) -#define maj(x,y,z) (((x) & (y)) ^ ((x) & (z)) ^ ((y) & (z))) - -#else /* Discovered by Rich Schroeppel and Colin Plumb */ - -#define ch(x,y,z) ((z) ^ ((x) & ((y) ^ (z)))) -#define parity(x,y,z) ((x) ^ (y) ^ (z)) -#define maj(x,y,z) (((x) & (y)) | ((z) & ((x) ^ (y)))) - -#endif - -/* Compile 64 bytes of hash data into SHA1 context. Note */ -/* that this routine assumes that the byte order in the */ -/* ctx->wbuf[] at this point is in such an order that low */ -/* address bytes in the ORIGINAL byte stream will go in */ -/* this buffer to the high end of 32-bit words on BOTH big */ -/* and little endian systems */ - -#ifdef ARRAY -#define q(v,n) v[n] -#else -#define q(v,n) v##n -#endif - -#define one_cycle(v,a,b,c,d,e,f,k,h) \ - q(v,e) += rotr32(q(v,a),27) + \ - f(q(v,b),q(v,c),q(v,d)) + k + h; \ - q(v,b) = rotr32(q(v,b), 2) - -#define five_cycle(v,f,k,i) \ - one_cycle(v, 0,1,2,3,4, f,k,hf(i )); \ - one_cycle(v, 4,0,1,2,3, f,k,hf(i+1)); \ - one_cycle(v, 3,4,0,1,2, f,k,hf(i+2)); \ - one_cycle(v, 2,3,4,0,1, f,k,hf(i+3)); \ - one_cycle(v, 1,2,3,4,0, f,k,hf(i+4)) - -VOID_RETURN sha1_compile(sha1_ctx ctx[1]) -{ uint_32t *w = ctx->wbuf; - -#ifdef ARRAY - uint_32t v[5]; - memcpy(v, ctx->hash, 5 * sizeof(uint_32t)); -#else - uint_32t v0, v1, v2, v3, v4; - v0 = ctx->hash[0]; v1 = ctx->hash[1]; - v2 = ctx->hash[2]; v3 = ctx->hash[3]; - v4 = ctx->hash[4]; -#endif - -#define hf(i) w[i] - - five_cycle(v, ch, 0x5a827999, 0); - five_cycle(v, ch, 0x5a827999, 5); - five_cycle(v, ch, 0x5a827999, 10); - one_cycle(v,0,1,2,3,4, ch, 0x5a827999, hf(15)); \ - -#undef hf -#define hf(i) (w[(i) & 15] = rotl32( \ - w[((i) + 13) & 15] ^ w[((i) + 8) & 15] \ - ^ w[((i) + 2) & 15] ^ w[(i) & 15], 1)) - - one_cycle(v,4,0,1,2,3, ch, 0x5a827999, hf(16)); - one_cycle(v,3,4,0,1,2, ch, 0x5a827999, hf(17)); - one_cycle(v,2,3,4,0,1, ch, 0x5a827999, hf(18)); - one_cycle(v,1,2,3,4,0, ch, 0x5a827999, hf(19)); - - five_cycle(v, parity, 0x6ed9eba1, 20); - five_cycle(v, parity, 0x6ed9eba1, 25); - five_cycle(v, parity, 0x6ed9eba1, 30); - five_cycle(v, parity, 0x6ed9eba1, 35); - - five_cycle(v, maj, 0x8f1bbcdc, 40); - five_cycle(v, maj, 0x8f1bbcdc, 45); - five_cycle(v, maj, 0x8f1bbcdc, 50); - five_cycle(v, maj, 0x8f1bbcdc, 55); - - five_cycle(v, parity, 0xca62c1d6, 60); - five_cycle(v, parity, 0xca62c1d6, 65); - five_cycle(v, parity, 0xca62c1d6, 70); - five_cycle(v, parity, 0xca62c1d6, 75); - -#ifdef ARRAY - ctx->hash[0] += v[0]; ctx->hash[1] += v[1]; - ctx->hash[2] += v[2]; ctx->hash[3] += v[3]; - ctx->hash[4] += v[4]; -#else - ctx->hash[0] += v0; ctx->hash[1] += v1; - ctx->hash[2] += v2; ctx->hash[3] += v3; - ctx->hash[4] += v4; -#endif -} - -VOID_RETURN sha1_begin(sha1_ctx ctx[1]) -{ - ctx->count[0] = ctx->count[1] = 0; - ctx->hash[0] = 0x67452301; - ctx->hash[1] = 0xefcdab89; - ctx->hash[2] = 0x98badcfe; - ctx->hash[3] = 0x10325476; - ctx->hash[4] = 0xc3d2e1f0; -} - -/* SHA1 hash data in an array of bytes into hash buffer and */ -/* call the hash_compile function as required. */ - -VOID_RETURN sha1_hash(const unsigned char data[], unsigned long len, sha1_ctx ctx[1]) -{ uint_32t pos = (uint_32t)(ctx->count[0] & SHA1_MASK), - space = SHA1_BLOCK_SIZE - pos; - const unsigned char *sp = data; - - if((ctx->count[0] += len) < len) - ++(ctx->count[1]); - - while(len >= space) /* tranfer whole blocks if possible */ - { - memcpy(((unsigned char*)ctx->wbuf) + pos, sp, space); - sp += space; len -= space; space = SHA1_BLOCK_SIZE; pos = 0; - bsw_32(ctx->wbuf, SHA1_BLOCK_SIZE >> 2); - sha1_compile(ctx); - } - - memcpy(((unsigned char*)ctx->wbuf) + pos, sp, len); -} - -/* SHA1 final padding and digest calculation */ - -VOID_RETURN sha1_end(unsigned char hval[], sha1_ctx ctx[1]) -{ uint_32t i = (uint_32t)(ctx->count[0] & SHA1_MASK); - - /* put bytes in the buffer in an order in which references to */ - /* 32-bit words will put bytes with lower addresses into the */ - /* top of 32 bit words on BOTH big and little endian machines */ - bsw_32(ctx->wbuf, (i + 3) >> 2); - - /* we now need to mask valid bytes and add the padding which is */ - /* a single 1 bit and as many zero bits as necessary. Note that */ - /* we can always add the first padding byte here because the */ - /* buffer always has at least one empty slot */ - ctx->wbuf[i >> 2] &= 0xffffff80 << 8 * (~i & 3); - ctx->wbuf[i >> 2] |= 0x00000080 << 8 * (~i & 3); - - /* we need 9 or more empty positions, one for the padding byte */ - /* (above) and eight for the length count. If there is not */ - /* enough space, pad and empty the buffer */ - if(i > SHA1_BLOCK_SIZE - 9) - { - if(i < 60) ctx->wbuf[15] = 0; - sha1_compile(ctx); - i = 0; - } - else /* compute a word index for the empty buffer positions */ - i = (i >> 2) + 1; - - while(i < 14) /* and zero pad all but last two positions */ - ctx->wbuf[i++] = 0; - - /* the following 32-bit length fields are assembled in the */ - /* wrong byte order on little endian machines but this is */ - /* corrected later since they are only ever used as 32-bit */ - /* word values. */ - ctx->wbuf[14] = (ctx->count[1] << 3) | (ctx->count[0] >> 29); - ctx->wbuf[15] = ctx->count[0] << 3; - sha1_compile(ctx); - - /* extract the hash value as bytes in case the hash buffer is */ - /* misaligned for 32-bit words */ - for(i = 0; i < SHA1_DIGEST_SIZE; ++i) - hval[i] = (unsigned char)(ctx->hash[i >> 2] >> (8 * (~i & 3))); -} - -VOID_RETURN sha1(unsigned char hval[], const unsigned char data[], unsigned long len) -{ sha1_ctx cx[1]; - - sha1_begin(cx); sha1_hash(data, len, cx); sha1_end(hval, cx); -} - -#if defined(__cplusplus) -} -#endif +/* + --------------------------------------------------------------------------- + Copyright (c) 2002, Dr Brian Gladman, Worcester, UK. All rights reserved. + + LICENSE TERMS + + The free distribution and use of this software in both source and binary + form is allowed (with or without changes) provided that: + + 1. distributions of this source code include the above copyright + notice, this list of conditions and the following disclaimer; + + 2. distributions in binary form include the above copyright + notice, this list of conditions and the following disclaimer + in the documentation and/or other associated materials; + + 3. the copyright holder's name is not used to endorse products + built using this software without specific written permission. + + ALTERNATIVELY, provided that this notice is retained in full, this product + may be distributed under the terms of the GNU General Public License (GPL), + in which case the provisions of the GPL apply INSTEAD OF those given above. + + 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: 01/08/2005 + + This is a byte oriented version of SHA1 that operates on arrays of bytes + stored in memory. +*/ + +#include /* for memcpy() etc. */ + +#include "sha1.h" +#include "brg_endian.h" + +#if defined(__cplusplus) +extern "C" +{ +#endif + +#if defined( _MSC_VER ) && ( _MSC_VER > 800 ) +#pragma intrinsic(memcpy) +#endif + +#if 0 && defined(_MSC_VER) +#define rotl32 _lrotl +#define rotr32 _lrotr +#else +#define rotl32(x,n) (((x) << n) | ((x) >> (32 - n))) +#define rotr32(x,n) (((x) >> n) | ((x) << (32 - n))) +#endif + +#if !defined(bswap_32) +#define bswap_32(x) ((rotr32((x), 24) & 0x00ff00ff) | (rotr32((x), 8) & 0xff00ff00)) +#endif + +#if (PLATFORM_BYTE_ORDER == IS_LITTLE_ENDIAN) +#define SWAP_BYTES +#else +#undef SWAP_BYTES +#endif + +#if defined(SWAP_BYTES) +#define bsw_32(p,n) \ + { int _i = (n); while(_i--) ((uint_32t*)p)[_i] = bswap_32(((uint_32t*)p)[_i]); } +#else +#define bsw_32(p,n) +#endif + +#define SHA1_MASK (SHA1_BLOCK_SIZE - 1) + +#if 0 + +#define ch(x,y,z) (((x) & (y)) ^ (~(x) & (z))) +#define parity(x,y,z) ((x) ^ (y) ^ (z)) +#define maj(x,y,z) (((x) & (y)) ^ ((x) & (z)) ^ ((y) & (z))) + +#else /* Discovered by Rich Schroeppel and Colin Plumb */ + +#define ch(x,y,z) ((z) ^ ((x) & ((y) ^ (z)))) +#define parity(x,y,z) ((x) ^ (y) ^ (z)) +#define maj(x,y,z) (((x) & (y)) | ((z) & ((x) ^ (y)))) + +#endif + +/* Compile 64 bytes of hash data into SHA1 context. Note */ +/* that this routine assumes that the byte order in the */ +/* ctx->wbuf[] at this point is in such an order that low */ +/* address bytes in the ORIGINAL byte stream will go in */ +/* this buffer to the high end of 32-bit words on BOTH big */ +/* and little endian systems */ + +#ifdef ARRAY +#define q(v,n) v[n] +#else +#define q(v,n) v##n +#endif + +#define one_cycle(v,a,b,c,d,e,f,k,h) \ + q(v,e) += rotr32(q(v,a),27) + \ + f(q(v,b),q(v,c),q(v,d)) + k + h; \ + q(v,b) = rotr32(q(v,b), 2) + +#define five_cycle(v,f,k,i) \ + one_cycle(v, 0,1,2,3,4, f,k,hf(i )); \ + one_cycle(v, 4,0,1,2,3, f,k,hf(i+1)); \ + one_cycle(v, 3,4,0,1,2, f,k,hf(i+2)); \ + one_cycle(v, 2,3,4,0,1, f,k,hf(i+3)); \ + one_cycle(v, 1,2,3,4,0, f,k,hf(i+4)) + +VOID_RETURN sha1_compile(sha1_ctx ctx[1]) +{ uint_32t *w = ctx->wbuf; + +#ifdef ARRAY + uint_32t v[5]; + memcpy(v, ctx->hash, 5 * sizeof(uint_32t)); +#else + uint_32t v0, v1, v2, v3, v4; + v0 = ctx->hash[0]; v1 = ctx->hash[1]; + v2 = ctx->hash[2]; v3 = ctx->hash[3]; + v4 = ctx->hash[4]; +#endif + +#define hf(i) w[i] + + five_cycle(v, ch, 0x5a827999, 0); + five_cycle(v, ch, 0x5a827999, 5); + five_cycle(v, ch, 0x5a827999, 10); + one_cycle(v,0,1,2,3,4, ch, 0x5a827999, hf(15)); \ + +#undef hf +#define hf(i) (w[(i) & 15] = rotl32( \ + w[((i) + 13) & 15] ^ w[((i) + 8) & 15] \ + ^ w[((i) + 2) & 15] ^ w[(i) & 15], 1)) + + one_cycle(v,4,0,1,2,3, ch, 0x5a827999, hf(16)); + one_cycle(v,3,4,0,1,2, ch, 0x5a827999, hf(17)); + one_cycle(v,2,3,4,0,1, ch, 0x5a827999, hf(18)); + one_cycle(v,1,2,3,4,0, ch, 0x5a827999, hf(19)); + + five_cycle(v, parity, 0x6ed9eba1, 20); + five_cycle(v, parity, 0x6ed9eba1, 25); + five_cycle(v, parity, 0x6ed9eba1, 30); + five_cycle(v, parity, 0x6ed9eba1, 35); + + five_cycle(v, maj, 0x8f1bbcdc, 40); + five_cycle(v, maj, 0x8f1bbcdc, 45); + five_cycle(v, maj, 0x8f1bbcdc, 50); + five_cycle(v, maj, 0x8f1bbcdc, 55); + + five_cycle(v, parity, 0xca62c1d6, 60); + five_cycle(v, parity, 0xca62c1d6, 65); + five_cycle(v, parity, 0xca62c1d6, 70); + five_cycle(v, parity, 0xca62c1d6, 75); + +#ifdef ARRAY + ctx->hash[0] += v[0]; ctx->hash[1] += v[1]; + ctx->hash[2] += v[2]; ctx->hash[3] += v[3]; + ctx->hash[4] += v[4]; +#else + ctx->hash[0] += v0; ctx->hash[1] += v1; + ctx->hash[2] += v2; ctx->hash[3] += v3; + ctx->hash[4] += v4; +#endif +} + +VOID_RETURN sha1_begin(sha1_ctx ctx[1]) +{ + ctx->count[0] = ctx->count[1] = 0; + ctx->hash[0] = 0x67452301; + ctx->hash[1] = 0xefcdab89; + ctx->hash[2] = 0x98badcfe; + ctx->hash[3] = 0x10325476; + ctx->hash[4] = 0xc3d2e1f0; +} + +/* SHA1 hash data in an array of bytes into hash buffer and */ +/* call the hash_compile function as required. */ + +VOID_RETURN sha1_hash(const unsigned char data[], unsigned long len, sha1_ctx ctx[1]) +{ uint_32t pos = (uint_32t)(ctx->count[0] & SHA1_MASK), + space = SHA1_BLOCK_SIZE - pos; + const unsigned char *sp = data; + + if((ctx->count[0] += len) < len) + ++(ctx->count[1]); + + while(len >= space) /* tranfer whole blocks if possible */ + { + memcpy(((unsigned char*)ctx->wbuf) + pos, sp, space); + sp += space; len -= space; space = SHA1_BLOCK_SIZE; pos = 0; + bsw_32(ctx->wbuf, SHA1_BLOCK_SIZE >> 2); + sha1_compile(ctx); + } + + memcpy(((unsigned char*)ctx->wbuf) + pos, sp, len); +} + +/* SHA1 final padding and digest calculation */ + +VOID_RETURN sha1_end(unsigned char hval[], sha1_ctx ctx[1]) +{ uint_32t i = (uint_32t)(ctx->count[0] & SHA1_MASK); + + /* put bytes in the buffer in an order in which references to */ + /* 32-bit words will put bytes with lower addresses into the */ + /* top of 32 bit words on BOTH big and little endian machines */ + bsw_32(ctx->wbuf, (i + 3) >> 2); + + /* we now need to mask valid bytes and add the padding which is */ + /* a single 1 bit and as many zero bits as necessary. Note that */ + /* we can always add the first padding byte here because the */ + /* buffer always has at least one empty slot */ + ctx->wbuf[i >> 2] &= 0xffffff80 << 8 * (~i & 3); + ctx->wbuf[i >> 2] |= 0x00000080 << 8 * (~i & 3); + + /* we need 9 or more empty positions, one for the padding byte */ + /* (above) and eight for the length count. If there is not */ + /* enough space, pad and empty the buffer */ + if(i > SHA1_BLOCK_SIZE - 9) + { + if(i < 60) ctx->wbuf[15] = 0; + sha1_compile(ctx); + i = 0; + } + else /* compute a word index for the empty buffer positions */ + i = (i >> 2) + 1; + + while(i < 14) /* and zero pad all but last two positions */ + ctx->wbuf[i++] = 0; + + /* the following 32-bit length fields are assembled in the */ + /* wrong byte order on little endian machines but this is */ + /* corrected later since they are only ever used as 32-bit */ + /* word values. */ + ctx->wbuf[14] = (ctx->count[1] << 3) | (ctx->count[0] >> 29); + ctx->wbuf[15] = ctx->count[0] << 3; + sha1_compile(ctx); + + /* extract the hash value as bytes in case the hash buffer is */ + /* misaligned for 32-bit words */ + for(i = 0; i < SHA1_DIGEST_SIZE; ++i) + hval[i] = (unsigned char)(ctx->hash[i >> 2] >> (8 * (~i & 3))); +} + +VOID_RETURN sha1(unsigned char hval[], const unsigned char data[], unsigned long len) +{ sha1_ctx cx[1]; + + sha1_begin(cx); sha1_hash(data, len, cx); sha1_end(hval, cx); +} + +#if defined(__cplusplus) +} +#endif diff --git a/Zip/aes/sha1.h b/Zip/minizip/aes/sha1.h similarity index 96% rename from Zip/aes/sha1.h rename to Zip/minizip/aes/sha1.h index bace6af..65ee6d3 100755 --- a/Zip/aes/sha1.h +++ b/Zip/minizip/aes/sha1.h @@ -1,73 +1,73 @@ -/* - --------------------------------------------------------------------------- - Copyright (c) 2002, Dr Brian Gladman, Worcester, UK. All rights reserved. - - LICENSE TERMS - - The free distribution and use of this software in both source and binary - form is allowed (with or without changes) provided that: - - 1. distributions of this source code include the above copyright - notice, this list of conditions and the following disclaimer; - - 2. distributions in binary form include the above copyright - notice, this list of conditions and the following disclaimer - in the documentation and/or other associated materials; - - 3. the copyright holder's name is not used to endorse products - built using this software without specific written permission. - - ALTERNATIVELY, provided that this notice is retained in full, this product - may be distributed under the terms of the GNU General Public License (GPL), - in which case the provisions of the GPL apply INSTEAD OF those given above. - - 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: 01/08/2005 -*/ - -#ifndef _SHA1_H -#define _SHA1_H - -#include -#include "brg_types.h" - -#define SHA1_BLOCK_SIZE 64 -#define SHA1_DIGEST_SIZE 20 - -#if defined(__cplusplus) -extern "C" -{ -#endif - -/* type to hold the SHA256 context */ - -typedef struct -{ uint_32t count[2]; - uint_32t hash[5]; - uint_32t wbuf[16]; -} sha1_ctx; - -/* Note that these prototypes are the same for both bit and */ -/* byte oriented implementations. However the length fields */ -/* are in bytes or bits as appropriate for the version used */ -/* and bit sequences are input as arrays of bytes in which */ -/* bit sequences run from the most to the least significant */ -/* end of each byte */ - -VOID_RETURN sha1_compile(sha1_ctx ctx[1]); - -VOID_RETURN sha1_begin(sha1_ctx ctx[1]); -VOID_RETURN sha1_hash(const unsigned char data[], unsigned long len, sha1_ctx ctx[1]); -VOID_RETURN sha1_end(unsigned char hval[], sha1_ctx ctx[1]); -VOID_RETURN sha1(unsigned char hval[], const unsigned char data[], unsigned long len); - -#if defined(__cplusplus) -} -#endif - -#endif +/* + --------------------------------------------------------------------------- + Copyright (c) 2002, Dr Brian Gladman, Worcester, UK. All rights reserved. + + LICENSE TERMS + + The free distribution and use of this software in both source and binary + form is allowed (with or without changes) provided that: + + 1. distributions of this source code include the above copyright + notice, this list of conditions and the following disclaimer; + + 2. distributions in binary form include the above copyright + notice, this list of conditions and the following disclaimer + in the documentation and/or other associated materials; + + 3. the copyright holder's name is not used to endorse products + built using this software without specific written permission. + + ALTERNATIVELY, provided that this notice is retained in full, this product + may be distributed under the terms of the GNU General Public License (GPL), + in which case the provisions of the GPL apply INSTEAD OF those given above. + + 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: 01/08/2005 +*/ + +#ifndef _SHA1_H +#define _SHA1_H + +#include +#include "brg_types.h" + +#define SHA1_BLOCK_SIZE 64 +#define SHA1_DIGEST_SIZE 20 + +#if defined(__cplusplus) +extern "C" +{ +#endif + +/* type to hold the SHA256 context */ + +typedef struct +{ uint_32t count[2]; + uint_32t hash[5]; + uint_32t wbuf[16]; +} sha1_ctx; + +/* Note that these prototypes are the same for both bit and */ +/* byte oriented implementations. However the length fields */ +/* are in bytes or bits as appropriate for the version used */ +/* and bit sequences are input as arrays of bytes in which */ +/* bit sequences run from the most to the least significant */ +/* end of each byte */ + +VOID_RETURN sha1_compile(sha1_ctx ctx[1]); + +VOID_RETURN sha1_begin(sha1_ctx ctx[1]); +VOID_RETURN sha1_hash(const unsigned char data[], unsigned long len, sha1_ctx ctx[1]); +VOID_RETURN sha1_end(unsigned char hval[], sha1_ctx ctx[1]); +VOID_RETURN sha1(unsigned char hval[], const unsigned char data[], unsigned long len); + +#if defined(__cplusplus) +} +#endif + +#endif diff --git a/Zip/minizip/configure.ac b/Zip/minizip/configure.ac new file mode 100755 index 0000000..827a4e0 --- /dev/null +++ b/Zip/minizip/configure.ac @@ -0,0 +1,32 @@ +# -*- Autoconf -*- +# Process this file with autoconf to produce a configure script. + +AC_INIT([minizip], [1.2.8], [bugzilla.redhat.com]) +AC_CONFIG_SRCDIR([minizip.c]) +AM_INIT_AUTOMAKE([foreign]) +LT_INIT + +AC_MSG_CHECKING([whether to build example programs]) +AC_ARG_ENABLE([demos], AC_HELP_STRING([--enable-demos], [build example programs])) +AM_CONDITIONAL([COND_DEMOS], [test "$enable_demos" = yes]) +if test "$enable_demos" = yes +then + AC_MSG_RESULT([yes]) +else + AC_MSG_RESULT([no]) +fi + +case "${host}" in + *-mingw* | mingw*) + WIN32="yes" + ;; + *) + ;; +esac +AM_CONDITIONAL([WIN32], [test "${WIN32}" = "yes"]) + + +AC_SUBST([HAVE_UNISTD_H], [0]) +AC_CHECK_HEADER([unistd.h], [HAVE_UNISTD_H=1], []) +AC_CONFIG_FILES([Makefile minizip.pc]) +AC_OUTPUT diff --git a/Zip/minizip/crypt.h b/Zip/minizip/crypt.h index 46c63fb..8705208 100755 --- a/Zip/minizip/crypt.h +++ b/Zip/minizip/crypt.h @@ -31,7 +31,7 @@ /*********************************************************************** * Return the next byte in the pseudo-random sequence */ -static int decrypt_byte(unsigned long* pkeys, const unsigned long* pcrc_32_tab) +static int decrypt_byte(unsigned long* pkeys) { unsigned temp; /* POTENTIAL BUG: temp*(temp^1) may overflow in an * unpredictable manner on 16-bit systems; not a problem @@ -44,14 +44,14 @@ static int decrypt_byte(unsigned long* pkeys, const unsigned long* pcrc_32_tab) /*********************************************************************** * Update the encryption keys with the next byte of plain text */ -static int update_keys(unsigned long* pkeys,const unsigned long* pcrc_32_tab,int c) +static int update_keys(unsigned long* pkeys, const unsigned long* pcrc_32_tab, int c) { (*(pkeys+0)) = CRC32((*(pkeys+0)), c); (*(pkeys+1)) += (*(pkeys+0)) & 0xff; (*(pkeys+1)) = (*(pkeys+1)) * 134775813L + 1; { - register int keyshift = (int)((*(pkeys+1)) >> 24); - (*(pkeys+2)) = CRC32((*(pkeys+2)), keyshift); + register int keyshift = (int)((*(pkeys+1)) >> 24); + (*(pkeys+2)) = CRC32((*(pkeys+2)), keyshift); } return c; } @@ -61,22 +61,23 @@ static int update_keys(unsigned long* pkeys,const unsigned long* pcrc_32_tab,int * Initialize the encryption keys and the random header according to * the given password. */ -static void init_keys(const char* passwd,unsigned long* pkeys,const unsigned long* pcrc_32_tab) +static void init_keys(const char* passwd, unsigned long* pkeys, const unsigned long* pcrc_32_tab) { *(pkeys+0) = 305419896L; *(pkeys+1) = 591751049L; *(pkeys+2) = 878082192L; - while (*passwd != 0) { + while (*passwd != 0) + { update_keys(pkeys,pcrc_32_tab,(int)*passwd); passwd++; } } #define zdecode(pkeys,pcrc_32_tab,c) \ - (update_keys(pkeys,pcrc_32_tab,c ^= decrypt_byte(pkeys,pcrc_32_tab))) + (update_keys(pkeys,pcrc_32_tab,c ^= decrypt_byte(pkeys))) #define zencode(pkeys,pcrc_32_tab,c,t) \ - (t=decrypt_byte(pkeys,pcrc_32_tab), update_keys(pkeys,pcrc_32_tab,c), t^(c)) + (t=decrypt_byte(pkeys), update_keys(pkeys,pcrc_32_tab,c), t^(c)) #ifdef INCLUDECRYPTINGCODE_IFCRYPTALLOWED @@ -99,8 +100,8 @@ static int crypthead(const char* passwd, /* password string */ unsigned char header[RAND_HEAD_LEN-2]; /* random header */ static unsigned calls = 0; /* ensure different random header each time */ - if (bufSizefile = file; - ioposix->filenameLength = (int)strlen(filename) + 1; + ioposix->filenameLength = strlen(filename) + 1; ioposix->filename = (char*)malloc(ioposix->filenameLength * sizeof(char)); strncpy(ioposix->filename, filename, ioposix->filenameLength); return (voidpf)ioposix; @@ -176,7 +176,7 @@ static voidpf ZCALLBACK fopendisk64_file_func (voidpf opaque, voidpf stream, int strncpy(diskFilename, ioposix->filename, ioposix->filenameLength); for (i = ioposix->filenameLength - 1; i >= 0; i -= 1) { - if (diskFilename[i] != '.') + if (diskFilename[i] != '.') continue; snprintf(&diskFilename[i], ioposix->filenameLength - i, ".z%02d", number_disk + 1); break; @@ -201,7 +201,7 @@ static voidpf ZCALLBACK fopendisk_file_func (voidpf opaque, voidpf stream, int n strncpy(diskFilename, ioposix->filename, ioposix->filenameLength); for (i = ioposix->filenameLength - 1; i >= 0; i -= 1) { - if (diskFilename[i] != '.') + if (diskFilename[i] != '.') continue; snprintf(&diskFilename[i], ioposix->filenameLength - i, ".z%02d", number_disk + 1); break; diff --git a/Zip/minizip/ioapi.h b/Zip/minizip/ioapi.h index 742fae5..f0edcac 100755 --- a/Zip/minizip/ioapi.h +++ b/Zip/minizip/ioapi.h @@ -59,7 +59,7 @@ #ifdef HAVE_64BIT_INT_CUSTOM typedef 64BIT_INT_CUSTOM_TYPE ZPOS64_T; #else -# ifdef HAS_STDINT_H +# ifdef HAVE_STDINT_H # include "stdint.h" typedef uint64_t ZPOS64_T; # else diff --git a/Zip/minizip/ioapi_buf.c b/Zip/minizip/ioapi_buf.c new file mode 100755 index 0000000..521a6d9 --- /dev/null +++ b/Zip/minizip/ioapi_buf.c @@ -0,0 +1,514 @@ +/* ioapi_buf.h -- IO base function header for compress/uncompress .zip + files using zlib + zip or unzip API + + This version of ioapi is designed to buffer IO. + + Copyright (C) 1998-2003 Gilles Vollant + (C) 2012-2014 Nathan Moinvaziri + + This program is distributed under the terms of the same license as zlib. + See the accompanying LICENSE file for the full text of the license. +*/ + + +#include +#include +#include +#include + +#include "zlib.h" +#include "ioapi.h" + +#include "ioapi_buf.h" + +#if defined(_WIN32) +# include +# define PRINTF _cprintf +# define VPRINTF _vcprintf +#else +# define PRINTF printf +# define VPRINTF vprintf +#endif + +//#define IOBUF_VERBOSE + +#ifdef __GNUC__ +#ifndef max +#define max(x,y) ({ \ +const typeof(x) _x = (x); \ +const typeof(y) _y = (y); \ +(void) (&_x == &_y); \ +_x > _y ? _x : _y; }) +#endif /* __GNUC__ */ + +#ifndef min +#define min(x,y) ({ \ +const typeof(x) _x = (x); \ +const typeof(y) _y = (y); \ +(void) (&_x == &_y); \ +_x < _y ? _x : _y; }) +#endif +#endif + +typedef struct ourstream_s { + char readBuffer[IOBUF_BUFFERSIZE]; + uInt readBufferLength; + uInt readBufferPos; + uInt readBufferHits; + uInt readBufferMisses; + char writeBuffer[IOBUF_BUFFERSIZE]; + uInt writeBufferLength; + uInt writeBufferPos; + uInt writeBufferHits; + uInt writeBufferMisses; + ZPOS64_T position; + voidpf stream; +} ourstream_t; + +#if defined(IOBUF_VERBOSE) +# define print_buf(o,s,f,...) print_buf_internal(o,s,f,__VA_ARGS__); +#else +# define print_buf(o,s,f,...) +#endif + +void print_buf_internal(voidpf opaque, voidpf stream, char *format, ...) +{ + ourstream_t *streamio = (ourstream_t *)stream; + va_list arglist; + PRINTF("Buf stream %p - ", streamio); + va_start(arglist, format); + VPRINTF(format, arglist); + va_end(arglist); +} + +voidpf fopen_buf_internal_func (opaque, stream, number_disk, mode) + voidpf opaque; + voidpf stream; + int number_disk; + int mode; +{ + ourstream_t *streamio = NULL; + if (stream == NULL) + return NULL; + streamio = (ourstream_t *)malloc(sizeof(ourstream_t)); + if (streamio == NULL) + return NULL; + memset(streamio, 0, sizeof(ourstream_t)); + streamio->stream = stream; + print_buf(opaque, streamio, "open [num %d mode %d]\n", number_disk, mode); + return streamio; +} + +voidpf ZCALLBACK fopen_buf_func (opaque, filename, mode) + voidpf opaque; + const char* filename; + int mode; +{ + ourbuffer_t *bufio = (ourbuffer_t *)opaque; + voidpf stream = bufio->filefunc.zopen_file(bufio->filefunc.opaque, filename, mode); + return fopen_buf_internal_func(opaque, stream, 0, mode); +} + +voidpf ZCALLBACK fopen64_buf_func (opaque, filename, mode) + voidpf opaque; + const char* filename; + int mode; +{ + ourbuffer_t *bufio = (ourbuffer_t *)opaque; + voidpf stream = bufio->filefunc64.zopen64_file(bufio->filefunc64.opaque, filename, mode); + return fopen_buf_internal_func(opaque, stream, 0, mode); +} + +voidpf ZCALLBACK fopendisk_buf_func (opaque, stream_cd, number_disk, mode) + voidpf opaque; + voidpf stream_cd; + int number_disk; + int mode; +{ + ourbuffer_t *bufio = (ourbuffer_t *)opaque; + ourstream_t *streamio = (ourstream_t *)stream_cd; + voidpf *stream = bufio->filefunc.zopendisk_file(bufio->filefunc.opaque, streamio->stream, number_disk, mode); + return fopen_buf_internal_func(opaque, stream, number_disk, mode); +} + +voidpf ZCALLBACK fopendisk64_buf_func (opaque, stream_cd, number_disk, mode) + voidpf opaque; + voidpf stream_cd; + int number_disk; + int mode; +{ + ourbuffer_t *bufio = (ourbuffer_t *)opaque; + ourstream_t *streamio = (ourstream_t *)stream_cd; + voidpf stream = bufio->filefunc64.zopendisk64_file(bufio->filefunc64.opaque, streamio->stream, number_disk, mode); + return fopen_buf_internal_func(opaque, stream, number_disk, mode); +} + +long fflush_buf OF((voidpf opaque, voidpf stream)); +long fflush_buf (opaque, stream) + voidpf opaque; + voidpf stream; +{ + ourbuffer_t *bufio = (ourbuffer_t *)opaque; + ourstream_t *streamio = (ourstream_t *)stream; + uInt totalBytesWritten = 0; + uInt bytesToWrite = streamio->writeBufferLength; + uInt bytesLeftToWrite = streamio->writeBufferLength; + int bytesWritten = 0; + + while (bytesLeftToWrite > 0) + { + if (bufio->filefunc64.zwrite_file != NULL) + bytesWritten = bufio->filefunc64.zwrite_file(bufio->filefunc64.opaque, streamio->stream, streamio->writeBuffer + (bytesToWrite - bytesLeftToWrite), bytesLeftToWrite); + else + bytesWritten = bufio->filefunc.zwrite_file(bufio->filefunc.opaque, streamio->stream, streamio->writeBuffer + (bytesToWrite - bytesLeftToWrite), bytesLeftToWrite); + + streamio->writeBufferMisses += 1; + + print_buf(opaque, stream, "write flush [%d:%d len %d]\n", bytesToWrite, bytesLeftToWrite, streamio->writeBufferLength); + + if (bytesWritten < 0) + return bytesWritten; + + totalBytesWritten += bytesWritten; + bytesLeftToWrite -= bytesWritten; + streamio->position += bytesWritten; + } + streamio->writeBufferLength = 0; + streamio->writeBufferPos = 0; + return totalBytesWritten; +} + +uLong ZCALLBACK fread_buf_func (opaque, stream, buf, size) + voidpf opaque; + voidpf stream; + void* buf; + uLong size; +{ + ourbuffer_t *bufio = (ourbuffer_t *)opaque; + ourstream_t *streamio = (ourstream_t *)stream; + uInt bytesToRead = 0; + uInt bufLength = 0; + uInt bytesToCopy = 0; + uInt bytesLeftToRead = size; + uInt bytesRead = -1; + + print_buf(opaque, stream, "read [size %ld pos %lld]\n", size, streamio->position); + + if (streamio->writeBufferLength > 0) + { + print_buf(opaque, stream, "switch from write to read, not yet supported [%lld]\n", streamio->position); + } + + while (bytesLeftToRead > 0) + { + if ((streamio->readBufferLength == 0) || (streamio->readBufferPos == streamio->readBufferLength)) + { + if (streamio->readBufferLength == IOBUF_BUFFERSIZE) + { + streamio->readBufferPos = 0; + streamio->readBufferLength = 0; + } + + bytesToRead = IOBUF_BUFFERSIZE -(streamio->readBufferLength - streamio->readBufferPos); + + if (bufio->filefunc64.zread_file != NULL) + bytesRead = bufio->filefunc64.zread_file(bufio->filefunc64.opaque, streamio->stream, streamio->readBuffer + streamio->readBufferPos, bytesToRead); + else + bytesRead = bufio->filefunc.zread_file(bufio->filefunc.opaque, streamio->stream, streamio->readBuffer + streamio->readBufferPos, bytesToRead); + + streamio->readBufferMisses += 1; + streamio->readBufferLength += bytesRead; + streamio->position += bytesRead; + + print_buf(opaque, stream, "filled [read %d/%d buf %d:%d pos %lld]\n", bytesRead, bytesToRead, streamio->readBufferPos, streamio->readBufferLength, streamio->position); + + if (bytesRead == 0) + break; + } + + if ((streamio->readBufferLength - streamio->readBufferPos) > 0) + { + bytesToCopy = min(bytesLeftToRead, (streamio->readBufferLength - streamio->readBufferPos)); + memcpy((char *)buf + bufLength, streamio->readBuffer + streamio->readBufferPos, bytesToCopy); + + bufLength += bytesToCopy; + bytesLeftToRead -= bytesToCopy; + + streamio->readBufferHits += 1; + streamio->readBufferPos += bytesToCopy; + + print_buf(opaque, stream, "emptied [copied %d remaining %d buf %d:%d pos %lld]\n", bytesToCopy, bytesLeftToRead, streamio->readBufferPos, streamio->readBufferLength, streamio->position); + } + } + + return size - bytesLeftToRead; +} + +uLong ZCALLBACK fwrite_buf_func (opaque, stream, buf, size) + voidpf opaque; + voidpf stream; + const void* buf; + uLong size; +{ + ourbuffer_t *bufio = (ourbuffer_t *)opaque; + ourstream_t *streamio = (ourstream_t *)stream; + uInt bytesToWrite = size; + uInt bytesLeftToWrite = size; + uInt bytesToCopy = 0; + int retVal = 0; + + print_buf(opaque, stream, "write [size %ld len %d pos %lld]\n", size, streamio->writeBufferLength, streamio->position); + + if (streamio->readBufferLength > 0) + { + streamio->position -= streamio->readBufferLength; + streamio->position += streamio->readBufferPos; + + streamio->readBufferLength = 0; + streamio->readBufferPos = 0; + + print_buf(opaque, stream, "switch from read to write [%lld]\n", streamio->position); + + if (bufio->filefunc64.zseek64_file != NULL) + retVal = bufio->filefunc64.zseek64_file(bufio->filefunc64.opaque, streamio->stream, streamio->position, ZLIB_FILEFUNC_SEEK_SET); + else + retVal = bufio->filefunc.zseek_file(bufio->filefunc.opaque, streamio->stream, (uLong)streamio->position, ZLIB_FILEFUNC_SEEK_SET); + + if (retVal != 0) + return -1; + } + + while (bytesLeftToWrite > 0) + { + bytesToCopy = min(bytesLeftToWrite, (IOBUF_BUFFERSIZE - min(streamio->writeBufferLength, streamio->writeBufferPos))); + + if (bytesToCopy == 0) + { + if (fflush_buf(opaque, stream) <= 0) + return 0; + + continue; + } + + memcpy(streamio->writeBuffer + streamio->writeBufferPos, (char *)buf + (bytesToWrite - bytesLeftToWrite), bytesToCopy); + + print_buf(opaque, stream, "write copy [remaining %d write %d:%d len %d]\n", bytesToCopy, bytesToWrite, bytesLeftToWrite, streamio->writeBufferLength); + + bytesLeftToWrite -= bytesToCopy; + + streamio->writeBufferPos += bytesToCopy; + streamio->writeBufferHits += 1; + if (streamio->writeBufferPos > streamio->writeBufferLength) + streamio->writeBufferLength += streamio->writeBufferPos - streamio->writeBufferLength; + } + + return size - bytesLeftToWrite; +} + +ZPOS64_T ftell_buf_internal_func (opaque, stream, position) + voidpf opaque; + voidpf stream; + ZPOS64_T position; +{ + ourstream_t *streamio = (ourstream_t *)stream; + streamio->position = position; + print_buf(opaque, stream, "tell [pos %llu readpos %d writepos %d err %d]\n", streamio->position, streamio->readBufferPos, streamio->writeBufferPos, errno); + if (streamio->readBufferLength > 0) + position -= (streamio->readBufferLength - streamio->readBufferPos); + if (streamio->writeBufferLength > 0) + position += streamio->writeBufferPos; + return position; +} + +long ZCALLBACK ftell_buf_func (opaque, stream) + voidpf opaque; + voidpf stream; +{ + ourbuffer_t *bufio = (ourbuffer_t *)opaque; + ourstream_t *streamio = (ourstream_t *)stream; + ZPOS64_T position = bufio->filefunc.ztell_file(bufio->filefunc.opaque, streamio->stream); + return (long)ftell_buf_internal_func(opaque, stream, position); +} + +ZPOS64_T ZCALLBACK ftell64_buf_func (opaque, stream) + voidpf opaque; + voidpf stream; +{ + ourbuffer_t *bufio = (ourbuffer_t *)opaque; + ourstream_t *streamio = (ourstream_t *)stream; + ZPOS64_T position = bufio->filefunc64.ztell64_file(bufio->filefunc64.opaque, streamio->stream); + return ftell_buf_internal_func(opaque, stream, position); +} + +int fseek_buf_internal_func (opaque, stream, offset, origin) + voidpf opaque; + voidpf stream; + ZPOS64_T offset; + int origin; +{ + ourstream_t *streamio = (ourstream_t *)stream; + + print_buf(opaque, stream, "seek [origin %d offset %llu pos %lld]\n", origin, offset, streamio->position); + + switch (origin) + { + case ZLIB_FILEFUNC_SEEK_SET: + + if (streamio->writeBufferLength > 0) + { + if ((offset >= streamio->position) && (offset <= streamio->position + streamio->writeBufferLength)) + { + streamio->writeBufferPos = (uLong)(offset - streamio->position); + return 0; + } + } + if ((streamio->readBufferLength > 0) && (offset < streamio->position) && (offset >= streamio->position - streamio->readBufferLength)) + { + streamio->readBufferPos = (uLong)(offset - (streamio->position - streamio->readBufferLength)); + return 0; + } + if (fflush_buf(opaque, stream) < 0) + return -1; + streamio->position = offset; + break; + + case ZLIB_FILEFUNC_SEEK_CUR: + + if (streamio->readBufferLength > 0) + { + if (offset <= (streamio->readBufferLength - streamio->readBufferPos)) + { + streamio->readBufferPos += (uLong)offset; + return 0; + } + offset -= (streamio->readBufferLength - streamio->readBufferPos); + streamio->position += offset; + } + if (streamio->writeBufferLength > 0) + { + if (offset <= (streamio->writeBufferLength - streamio->writeBufferPos)) + { + streamio->writeBufferPos += (uLong)offset; + return 0; + } + offset -= (streamio->writeBufferLength - streamio->writeBufferPos); + } + + if (fflush_buf(opaque, stream) < 0) + return -1; + + break; + + case ZLIB_FILEFUNC_SEEK_END: + + if (streamio->writeBufferLength > 0) + { + streamio->writeBufferPos = streamio->writeBufferLength; + return 0; + } + break; + } + + streamio->readBufferLength = 0; + streamio->readBufferPos = 0; + streamio->writeBufferLength = 0; + streamio->writeBufferPos = 0; + return 1; +} + +long ZCALLBACK fseek_buf_func (opaque, stream, offset, origin) + voidpf opaque; + voidpf stream; + uLong offset; + int origin; +{ + ourbuffer_t *bufio = (ourbuffer_t *)opaque; + ourstream_t *streamio = (ourstream_t *)stream; + int retVal = -1; + if (bufio->filefunc.zseek_file == NULL) + return retVal; + retVal = fseek_buf_internal_func(opaque, stream, offset, origin); + if (retVal == 1) + retVal = bufio->filefunc.zseek_file(bufio->filefunc.opaque, streamio->stream, offset, origin); + return retVal; +} + +long ZCALLBACK fseek64_buf_func (opaque, stream, offset, origin) + voidpf opaque; + voidpf stream; + ZPOS64_T offset; + int origin; +{ + ourbuffer_t *bufio = (ourbuffer_t *)opaque; + ourstream_t *streamio = (ourstream_t *)stream; + int retVal = -1; + if (bufio->filefunc64.zseek64_file == NULL) + return retVal; + retVal = fseek_buf_internal_func(opaque, stream, offset, origin); + if (retVal == 1) + retVal = bufio->filefunc64.zseek64_file(bufio->filefunc64.opaque, streamio->stream, offset, origin); + return retVal; +} + +int ZCALLBACK fclose_buf_func (opaque, stream) + voidpf opaque; + voidpf stream; +{ + ourbuffer_t *bufio = (ourbuffer_t *)opaque; + ourstream_t *streamio = (ourstream_t *)stream; + int retVal = 0; + fflush_buf(opaque, stream); + print_buf(opaque, stream, "close\n"); + if (streamio->readBufferHits + streamio->readBufferMisses > 0) + print_buf(opaque, stream, "read efficency %.02f%%\n", (streamio->readBufferHits / ((float)streamio->readBufferHits + streamio->readBufferMisses)) * 100); + if (streamio->writeBufferHits + streamio->writeBufferMisses > 0) + print_buf(opaque, stream, "write efficency %.02f%%\n", (streamio->writeBufferHits / ((float)streamio->writeBufferHits + streamio->writeBufferMisses)) * 100); + if (bufio->filefunc64.zclose_file != NULL) + retVal = bufio->filefunc64.zclose_file(bufio->filefunc64.opaque, streamio->stream); + else + retVal = bufio->filefunc.zclose_file(bufio->filefunc.opaque, streamio->stream); + free(streamio); + return retVal; +} + +int ZCALLBACK ferror_buf_func (opaque, stream) + voidpf opaque; + voidpf stream; +{ + ourbuffer_t *bufio = (ourbuffer_t *)opaque; + ourstream_t *streamio = (ourstream_t *)stream; + if (bufio->filefunc64.zerror_file != NULL) + return bufio->filefunc64.zerror_file(bufio->filefunc64.opaque, streamio->stream); + return bufio->filefunc.zerror_file(bufio->filefunc.opaque, streamio->stream); +} + + +void fill_buffer_filefunc (pzlib_filefunc_def, ourbuf) + zlib_filefunc_def* pzlib_filefunc_def; + ourbuffer_t *ourbuf; +{ + pzlib_filefunc_def->zopen_file = fopen_buf_func; + pzlib_filefunc_def->zopendisk_file = fopendisk_buf_func; + pzlib_filefunc_def->zread_file = fread_buf_func; + pzlib_filefunc_def->zwrite_file = fwrite_buf_func; + pzlib_filefunc_def->ztell_file = ftell_buf_func; + pzlib_filefunc_def->zseek_file = fseek_buf_func; + pzlib_filefunc_def->zclose_file = fclose_buf_func; + pzlib_filefunc_def->zerror_file = ferror_buf_func; + pzlib_filefunc_def->opaque = ourbuf; +} + +void fill_buffer_filefunc64 (pzlib_filefunc_def, ourbuf) + zlib_filefunc64_def* pzlib_filefunc_def; + ourbuffer_t *ourbuf; +{ + pzlib_filefunc_def->zopen64_file = fopen64_buf_func; + pzlib_filefunc_def->zopendisk64_file = fopendisk64_buf_func; + pzlib_filefunc_def->zread_file = fread_buf_func; + pzlib_filefunc_def->zwrite_file = fwrite_buf_func; + pzlib_filefunc_def->ztell64_file = ftell64_buf_func; + pzlib_filefunc_def->zseek64_file = fseek64_buf_func; + pzlib_filefunc_def->zclose_file = fclose_buf_func; + pzlib_filefunc_def->zerror_file = ferror_buf_func; + pzlib_filefunc_def->opaque = ourbuf; +} diff --git a/Zip/minizip/ioapi_buf.h b/Zip/minizip/ioapi_buf.h new file mode 100755 index 0000000..2feb777 --- /dev/null +++ b/Zip/minizip/ioapi_buf.h @@ -0,0 +1,54 @@ +/* ioapi_buf.h -- IO base function header for compress/uncompress .zip + files using zlib + zip or unzip API + + This version of ioapi is designed to buffer IO. + + Copyright (C) 1998-2003 Gilles Vollant + (C) 2012-2014 Nathan Moinvaziri + + This program is distributed under the terms of the same license as zlib. + See the accompanying LICENSE file for the full text of the license. +*/ + +#ifndef _IOAPI_BUF_H +#define _IOAPI_BUF_H + +#include +#include +#include + +#include "zlib.h" +#include "ioapi.h" + +#define IOBUF_BUFFERSIZE (64 * 1024) + +#ifdef __cplusplus +extern "C" { +#endif + +voidpf ZCALLBACK fopen_buf_func OF((voidpf opaque,const char* filename,int mode)); +voidpf ZCALLBACK fopen64_buf_func OF((voidpf opaque,const char* filename,int mode)); +voidpf ZCALLBACK fopendisk_buf_func OF((voidpf opaque, voidpf stream_cd, int number_disk, int mode)); +voidpf ZCALLBACK fopendisk64_buf_func OF((voidpf opaque, voidpf stream_cd, int number_disk, int mode)); +uLong ZCALLBACK fread_buf_func OF((voidpf opaque,voidpf stream,void* buf,uLong size)); +uLong ZCALLBACK fwrite_buf_func OF((voidpf opaque,voidpf stream,const void* buf,uLong size)); +long ZCALLBACK ftell_buf_func OF((voidpf opaque,voidpf stream)); +ZPOS64_T ZCALLBACK ftell64_buf_func OF((voidpf opaque, voidpf stream)); +long ZCALLBACK fseek_buf_func OF((voidpf opaque,voidpf stream,uLong offset,int origin)); +long ZCALLBACK fseek64_buf_func OF((voidpf opaque, voidpf stream, ZPOS64_T offset, int origin)); +int ZCALLBACK fclose_buf_func OF((voidpf opaque,voidpf stream)); +int ZCALLBACK ferror_buf_func OF((voidpf opaque,voidpf stream)); + +typedef struct ourbuffer_s { + zlib_filefunc_def filefunc; + zlib_filefunc64_def filefunc64; +} ourbuffer_t; + +void fill_buffer_filefunc OF((zlib_filefunc_def* pzlib_filefunc_def, ourbuffer_t *ourbuf)); +void fill_buffer_filefunc64 OF((zlib_filefunc64_def* pzlib_filefunc_def, ourbuffer_t *ourbuf)); + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/Zip/minizip/ioapi_mem.c b/Zip/minizip/ioapi_mem.c new file mode 100755 index 0000000..aaea039 --- /dev/null +++ b/Zip/minizip/ioapi_mem.c @@ -0,0 +1,192 @@ +/* ioapi_mem.h -- IO base function header for compress/uncompress .zip + files using zlib + zip or unzip API + + This version of ioapi is designed to access memory rather than files. + We do use a region of memory to put data in to and take it out of. We do + not have auto-extending buffers and do not inform anyone else that the + data has been written. It is really intended for accessing a zip archive + embedded in an application such that I can write an installer with no + external files. Creation of archives has not been attempted, although + parts of the framework are present. + + Based on Unzip ioapi.c version 0.22, May 19th, 2003 + + Copyright (C) 1998-2003 Gilles Vollant + (C) 2003 Justin Fletcher + + This file is under the same license as the Unzip tool it is distributed + with. +*/ + + +#include +#include +#include + +#include "zlib.h" +#include "ioapi.h" + +#include "ioapi_mem.h" + +#ifndef IOMEM_BUFFERSIZE +# define IOMEM_BUFFERSIZE (64 * 1024) +#endif + +voidpf ZCALLBACK fopen_mem_func (opaque, filename, mode) + voidpf opaque; + const char* filename; + int mode; +{ + ourmemory_t *mem = (ourmemory_t *)opaque; + if (mem == NULL) + return NULL; /* Mem structure passed in was null */ + + if (mode & ZLIB_FILEFUNC_MODE_CREATE) + { + if (mem->grow) + { + mem->size = IOMEM_BUFFERSIZE; + mem->base = (char *)malloc(mem->size); + } + + mem->limit = 0; /* When writing we start with 0 bytes written */ + } + else + mem->limit = mem->size; + + mem->cur_offset = 0; + + return mem; +} + +voidpf ZCALLBACK fopendisk_mem_func (opaque, stream, number_disk, mode) + voidpf opaque; + voidpf stream; + int number_disk; + int mode; +{ + /* Not used */ + return NULL; +} + +uLong ZCALLBACK fread_mem_func (opaque, stream, buf, size) + voidpf opaque; + voidpf stream; + void* buf; + uLong size; +{ + ourmemory_t *mem = (ourmemory_t *)stream; + + if (size > mem->size - mem->cur_offset) + size = mem->size - mem->cur_offset; + + memcpy(buf, mem->base + mem->cur_offset, size); + mem->cur_offset += size; + + return size; +} + + +uLong ZCALLBACK fwrite_mem_func (opaque, stream, buf, size) + voidpf opaque; + voidpf stream; + const void* buf; + uLong size; +{ + ourmemory_t *mem = (ourmemory_t *)stream; + char *newbase = NULL; + uLong newmemsize = 0; + + if (size > mem->size - mem->cur_offset) + { + if (mem->grow) + { + newmemsize = mem->size; + if (size < IOMEM_BUFFERSIZE) + newmemsize += IOMEM_BUFFERSIZE; + else + newmemsize += size; + newbase = (char *)malloc(newmemsize); + memcpy(newbase, mem->base, mem->size); + free(mem->base); + mem->base = newbase; + mem->size = newmemsize; + } + else + size = mem->size - mem->cur_offset; + } + memcpy(mem->base + mem->cur_offset, buf, size); + mem->cur_offset += size; + if (mem->cur_offset > mem->limit) + mem->limit = mem->cur_offset; + + return size; +} + +long ZCALLBACK ftell_mem_func (opaque, stream) + voidpf opaque; + voidpf stream; +{ + ourmemory_t *mem = (ourmemory_t *)stream; + return mem->cur_offset; +} + +long ZCALLBACK fseek_mem_func (opaque, stream, offset, origin) + voidpf opaque; + voidpf stream; + uLong offset; + int origin; +{ + ourmemory_t *mem = (ourmemory_t *)stream; + uLong new_pos; + switch (origin) + { + case ZLIB_FILEFUNC_SEEK_CUR: + new_pos = mem->cur_offset + offset; + break; + case ZLIB_FILEFUNC_SEEK_END: + new_pos = mem->limit + offset; + break; + case ZLIB_FILEFUNC_SEEK_SET: + new_pos = offset; + break; + default: + return -1; + } + + if (new_pos > mem->size) + return 1; /* Failed to seek that far */ + mem->cur_offset = new_pos; + return 0; +} + +int ZCALLBACK fclose_mem_func (opaque, stream) + voidpf opaque; + voidpf stream; +{ + /* Even with grow = 1, caller must always free() memory */ + return 0; +} + +int ZCALLBACK ferror_mem_func (opaque, stream) + voidpf opaque; + voidpf stream; +{ + /* We never return errors */ + return 0; +} + +void fill_memory_filefunc (pzlib_filefunc_def, ourmem) + zlib_filefunc_def* pzlib_filefunc_def; + ourmemory_t *ourmem; +{ + pzlib_filefunc_def->zopen_file = fopen_mem_func; + pzlib_filefunc_def->zopendisk_file = fopendisk_mem_func; + pzlib_filefunc_def->zread_file = fread_mem_func; + pzlib_filefunc_def->zwrite_file = fwrite_mem_func; + pzlib_filefunc_def->ztell_file = ftell_mem_func; + pzlib_filefunc_def->zseek_file = fseek_mem_func; + pzlib_filefunc_def->zclose_file = fclose_mem_func; + pzlib_filefunc_def->zerror_file = ferror_mem_func; + pzlib_filefunc_def->opaque = ourmem; +} diff --git a/Zip/minizip/ioapi_mem.h b/Zip/minizip/ioapi_mem.h new file mode 100755 index 0000000..fdbcd1e --- /dev/null +++ b/Zip/minizip/ioapi_mem.h @@ -0,0 +1,51 @@ +/* ioapi_mem.h -- IO base function header for compress/uncompress .zip + files using zlib + zip or unzip API + + This version of ioapi is designed to access memory rather than files. + We do use a region of memory to put data in to and take it out of. + + Copyright (C) 1998-2003 Gilles Vollant + (C) 2003 Justin Fletcher + + This program is distributed under the terms of the same license as zlib. + See the accompanying LICENSE file for the full text of the license. +*/ + +#ifndef _IOAPI_MEM_H +#define _IOAPI_MEM_H + +#include +#include +#include + +#include "zlib.h" +#include "ioapi.h" + +#ifdef __cplusplus +extern "C" { +#endif + +voidpf ZCALLBACK fopen_mem_func OF((voidpf opaque,const char* filename,int mode)); +voidpf ZCALLBACK fopendisk_mem_func OF((voidpf opaque, voidpf stream, int number_disk, int mode)); +uLong ZCALLBACK fread_mem_func OF((voidpf opaque,voidpf stream,void* buf,uLong size)); +uLong ZCALLBACK fwrite_mem_func OF((voidpf opaque,voidpf stream,const void* buf,uLong size)); +long ZCALLBACK ftell_mem_func OF((voidpf opaque,voidpf stream)); +long ZCALLBACK fseek_mem_func OF((voidpf opaque,voidpf stream,uLong offset,int origin)); +int ZCALLBACK fclose_mem_func OF((voidpf opaque,voidpf stream)); +int ZCALLBACK ferror_mem_func OF((voidpf opaque,voidpf stream)); + +typedef struct ourmemory_s { + char *base; /* Base of the region of memory we're using */ + uLong size; /* Size of the region of memory we're using */ + uLong limit; /* Furthest we've written */ + uLong cur_offset; /* Current offset in the area */ + int grow; /* Growable memory buffer */ +} ourmemory_t; + +void fill_memory_filefunc OF((zlib_filefunc_def* pzlib_filefunc_def, ourmemory_t *ourmem)); + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/Zip/minizip/iowin32.c b/Zip/minizip/iowin32.c new file mode 100755 index 0000000..59cd420 --- /dev/null +++ b/Zip/minizip/iowin32.c @@ -0,0 +1,585 @@ +/* iowin32.c -- IO base function header for compress/uncompress .zip + Version 1.1, February 14h, 2010 + part of the MiniZip project + + Copyright (C) 1998-2010 Gilles Vollant + http://www.winimage.com/zLibDll/minizip.html + Modifications for Zip64 support + Copyright (C) 2009-2010 Mathias Svensson + http://result42.com + + This program is distributed under the terms of the same license as zlib. + See the accompanying LICENSE file for the full text of the license. +*/ + +#include +#include + +#include "zlib.h" +#include "ioapi.h" +#include "iowin32.h" + +#ifndef INVALID_HANDLE_VALUE +# define INVALID_HANDLE_VALUE (0xFFFFFFFF) +#endif + +#ifndef INVALID_SET_FILE_POINTER +# define INVALID_SET_FILE_POINTER ((DWORD)-1) +#endif + +#if defined(WINAPI_FAMILY_PARTITION) && (!(defined(IOWIN32_USING_WINRT_API))) +# if !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) +# define IOWIN32_USING_WINRT_API 1 +# endif +#endif + +voidpf ZCALLBACK win32_open_file_func OF((voidpf opaque, const char* filename, int mode)); +uLong ZCALLBACK win32_read_file_func OF((voidpf opaque, voidpf stream, void* buf, uLong size)); +uLong ZCALLBACK win32_write_file_func OF((voidpf opaque, voidpf stream, const void* buf, uLong size)); +ZPOS64_T ZCALLBACK win32_tell64_file_func OF((voidpf opaque, voidpf stream)); +long ZCALLBACK win32_seek64_file_func OF((voidpf opaque, voidpf stream, ZPOS64_T offset, int origin)); +int ZCALLBACK win32_close_file_func OF((voidpf opaque, voidpf stream)); +int ZCALLBACK win32_error_file_func OF((voidpf opaque, voidpf stream)); + +typedef struct +{ + HANDLE hf; + int error; + void *filename; + int filenameLength; +} WIN32FILE_IOWIN; + + +static void win32_translate_open_mode(int mode, + DWORD* lpdwDesiredAccess, + DWORD* lpdwCreationDisposition, + DWORD* lpdwShareMode, + DWORD* lpdwFlagsAndAttributes) +{ + *lpdwDesiredAccess = *lpdwShareMode = *lpdwFlagsAndAttributes = *lpdwCreationDisposition = 0; + + if ((mode & ZLIB_FILEFUNC_MODE_READWRITEFILTER) == ZLIB_FILEFUNC_MODE_READ) + { + *lpdwDesiredAccess = GENERIC_READ; + *lpdwCreationDisposition = OPEN_EXISTING; + *lpdwShareMode = FILE_SHARE_READ; + } + else if (mode & ZLIB_FILEFUNC_MODE_EXISTING) + { + *lpdwDesiredAccess = GENERIC_WRITE | GENERIC_READ; + *lpdwCreationDisposition = OPEN_EXISTING; + } + else if (mode & ZLIB_FILEFUNC_MODE_CREATE) + { + *lpdwDesiredAccess = GENERIC_WRITE | GENERIC_READ; + *lpdwCreationDisposition = CREATE_ALWAYS; + } +} + +static voidpf win32_build_iowin(HANDLE hFile) +{ + WIN32FILE_IOWIN *iowin = NULL; + + if ((hFile != NULL) && (hFile != INVALID_HANDLE_VALUE)) + { + iowin = (WIN32FILE_IOWIN *)malloc(sizeof(WIN32FILE_IOWIN)); + if (iowin == NULL) + { + CloseHandle(hFile); + return NULL; + } + memset(iowin, 0, sizeof(WIN32FILE_IOWIN)); + iowin->hf = hFile; + } + return (voidpf)iowin; +} + +voidpf ZCALLBACK win32_open64_file_func (voidpf opaque, const void* filename, int mode) +{ + DWORD dwDesiredAccess,dwCreationDisposition,dwShareMode,dwFlagsAndAttributes ; + HANDLE hFile = NULL; + WIN32FILE_IOWIN *iowin = NULL; + + win32_translate_open_mode(mode, &dwDesiredAccess, &dwCreationDisposition, &dwShareMode, &dwFlagsAndAttributes); + + if ((filename != NULL) && (dwDesiredAccess != 0)) + { +#ifdef IOWIN32_USING_WINRT_API +#ifdef UNICODE + hFile = CreateFile2((LPCTSTR)filename, dwDesiredAccess, dwShareMode, dwCreationDisposition, NULL); +#else + WCHAR filenameW[FILENAME_MAX + 0x200 + 1]; + MultiByteToWideChar(CP_ACP, 0, (const char*)filename, -1, filenameW, FILENAME_MAX + 0x200); + hFile = CreateFile2(filenameW, dwDesiredAccess, dwShareMode, dwCreationDisposition, NULL); +#endif +#else + hFile = CreateFile((LPCTSTR)filename, dwDesiredAccess, dwShareMode, NULL, dwCreationDisposition, dwFlagsAndAttributes, NULL); +#endif + } + + iowin = win32_build_iowin(hFile); + if (iowin == NULL) + return NULL; + iowin->filenameLength = _tcslen(filename) + 1; + iowin->filename = (void*)malloc(iowin->filenameLength * sizeof(TCHAR)); + _tcsncpy(iowin->filename, filename, iowin->filenameLength); + return iowin; +} + + +voidpf ZCALLBACK win32_open64_file_funcA (voidpf opaque, const void* filename, int mode) +{ + DWORD dwDesiredAccess, dwCreationDisposition, dwShareMode, dwFlagsAndAttributes ; + HANDLE hFile = NULL; + WIN32FILE_IOWIN *iowin = NULL; + + win32_translate_open_mode(mode, &dwDesiredAccess, &dwCreationDisposition, &dwShareMode, &dwFlagsAndAttributes); + + if ((filename != NULL) && (dwDesiredAccess != 0)) + { +#ifdef IOWIN32_USING_WINRT_API + WCHAR filenameW[FILENAME_MAX + 0x200 + 1]; + MultiByteToWideChar(CP_ACP, 0, (const char*)filename, -1, filenameW, FILENAME_MAX + 0x200); + hFile = CreateFile2(filenameW, dwDesiredAccess, dwShareMode, dwCreationDisposition, NULL); +#else + hFile = CreateFileA((LPCSTR)filename, dwDesiredAccess, dwShareMode, NULL, dwCreationDisposition, dwFlagsAndAttributes, NULL); +#endif + } + + iowin = win32_build_iowin(hFile); + if (iowin == NULL) + return NULL; + iowin->filenameLength = strlen(filename) + 1; + iowin->filename = (void*)malloc(iowin->filenameLength * sizeof(char)); + strncpy(iowin->filename, filename, iowin->filenameLength); + return iowin; +} + + +voidpf ZCALLBACK win32_open64_file_funcW (voidpf opaque,const void* filename,int mode) +{ + DWORD dwDesiredAccess, dwCreationDisposition, dwShareMode, dwFlagsAndAttributes; + HANDLE hFile = NULL; + WIN32FILE_IOWIN *iowin = NULL; + + win32_translate_open_mode(mode, &dwDesiredAccess, &dwCreationDisposition, &dwShareMode, &dwFlagsAndAttributes); + + if ((filename != NULL) && (dwDesiredAccess != 0)) + { +#ifdef IOWIN32_USING_WINRT_API + hFile = CreateFile2((LPCWSTR)filename, dwDesiredAccess, dwShareMode, dwCreationDisposition, NULL); +#else + hFile = CreateFileW((LPCWSTR)filename, dwDesiredAccess, dwShareMode, NULL, dwCreationDisposition, dwFlagsAndAttributes, NULL); +#endif + } + + iowin = win32_build_iowin(hFile); + if (iowin == NULL) + return NULL; + if (iowin->filename == NULL) + { + iowin->filenameLength = wcslen(filename) + 1; + iowin->filename = (void*)malloc(iowin->filenameLength * sizeof(WCHAR)); + wcsncpy(iowin->filename, filename, iowin->filenameLength); + } + return iowin; +} + +voidpf ZCALLBACK win32_open_file_func (voidpf opaque,const char* filename,int mode) +{ + DWORD dwDesiredAccess, dwCreationDisposition, dwShareMode, dwFlagsAndAttributes ; + HANDLE hFile = NULL; + WIN32FILE_IOWIN *iowin = NULL; + + win32_translate_open_mode(mode, &dwDesiredAccess, &dwCreationDisposition, &dwShareMode, &dwFlagsAndAttributes); + + if ((filename != NULL) && (dwDesiredAccess != 0)) + { +#ifdef IOWIN32_USING_WINRT_API +#ifdef UNICODE + hFile = CreateFile2((LPCTSTR)filename, dwDesiredAccess, dwShareMode, dwCreationDisposition, NULL); +#else + WCHAR filenameW[FILENAME_MAX + 0x200 + 1]; + MultiByteToWideChar(CP_ACP, 0, (const char*)filename, -1, filenameW, FILENAME_MAX + 0x200); + hFile = CreateFile2(filenameW, dwDesiredAccess, dwShareMode, dwCreationDisposition, NULL); +#endif +#else + hFile = CreateFile((LPCTSTR)filename, dwDesiredAccess, dwShareMode, NULL, dwCreationDisposition, dwFlagsAndAttributes, NULL); +#endif + } + + iowin = win32_build_iowin(hFile); + if (iowin == NULL) + return NULL; + iowin->filenameLength = _tcslen((TCHAR*)filename) + 1; + iowin->filename = (void*)malloc(iowin->filenameLength * sizeof(TCHAR)); + _tcsncpy(iowin->filename, (TCHAR*)filename, iowin->filenameLength); + return iowin; +} + +voidpf ZCALLBACK win32_opendisk64_file_func (voidpf opaque, voidpf stream, int number_disk, int mode) +{ + WIN32FILE_IOWIN *iowin = NULL; + TCHAR *diskFilename = NULL; + voidpf ret = NULL; + int i = 0; + + if (stream == NULL) + return NULL; + iowin = (WIN32FILE_IOWIN*)stream; + diskFilename = (TCHAR*)malloc(iowin->filenameLength * sizeof(TCHAR)); + _tcsncpy(diskFilename, iowin->filename, iowin->filenameLength); + for (i = iowin->filenameLength - 1; i >= 0; i -= 1) + { + if (diskFilename[i] != _T('.')) + continue; + _sntprintf(&diskFilename[i], iowin->filenameLength - i, _T(".z%02d"), number_disk + 1); + break; + } + if (i >= 0) + ret = win32_open64_file_func(opaque, (char*)diskFilename, mode); + free(diskFilename); + return ret; +} + +voidpf ZCALLBACK win32_opendisk64_file_funcW (voidpf opaque, voidpf stream, int number_disk, int mode) +{ + WIN32FILE_IOWIN *iowin = NULL; + WCHAR *diskFilename = NULL; + voidpf ret = NULL; + int i = 0; + + if (stream == NULL) + return NULL; + iowin = (WIN32FILE_IOWIN*)stream; + diskFilename = (WCHAR*)malloc((iowin->filenameLength + 10) * sizeof(WCHAR)); + wcsncpy(diskFilename, iowin->filename, iowin->filenameLength); + for (i = iowin->filenameLength - 1; i >= 0; i -= 1) + { + if (diskFilename[i] != L'.') + continue; + _snwprintf(&diskFilename[i], (iowin->filenameLength + 10) - i, L".z%02d", number_disk + 1); + break; + } + if (i >= 0) + ret = win32_open64_file_funcW(opaque, diskFilename, mode); + free(diskFilename); + return ret; +} + +voidpf ZCALLBACK win32_opendisk64_file_funcA (voidpf opaque, voidpf stream, int number_disk, int mode) +{ + WIN32FILE_IOWIN *iowin = NULL; + char *diskFilename = NULL; + voidpf ret = NULL; + int i = 0; + + if (stream == NULL) + return NULL; + iowin = (WIN32FILE_IOWIN*)stream; + diskFilename = (char*)malloc(iowin->filenameLength * sizeof(char)); + strncpy(diskFilename, iowin->filename, iowin->filenameLength); + for (i = iowin->filenameLength - 1; i >= 0; i -= 1) + { + if (diskFilename[i] != '.') + continue; + _snprintf(&diskFilename[i], iowin->filenameLength - i, ".z%02d", number_disk + 1); + break; + } + if (i >= 0) + ret = win32_open64_file_funcA(opaque, diskFilename, mode); + free(diskFilename); + return ret; +} + +voidpf ZCALLBACK win32_opendisk_file_func (voidpf opaque, voidpf stream, int number_disk, int mode) +{ + WIN32FILE_IOWIN *iowin = NULL; + TCHAR *diskFilename = NULL; + voidpf ret = NULL; + int i = 0; + + if (stream == NULL) + return NULL; + iowin = (WIN32FILE_IOWIN*)stream; + diskFilename = (TCHAR*)malloc(iowin->filenameLength * sizeof(TCHAR)); + _tcsncpy(diskFilename, iowin->filename, iowin->filenameLength); + for (i = iowin->filenameLength - 1; i >= 0; i -= 1) + { + if (diskFilename[i] != _T('.')) + continue; + _sntprintf(&diskFilename[i], iowin->filenameLength - i, _T(".z%02d"), number_disk + 1); + break; + } + if (i >= 0) + ret = win32_open_file_func(opaque, (char*)diskFilename, mode); + free(diskFilename); + return ret; +} + +uLong ZCALLBACK win32_read_file_func (voidpf opaque, voidpf stream, void* buf,uLong size) +{ + uLong ret = 0; + HANDLE hFile = NULL; + if (stream != NULL) + hFile = ((WIN32FILE_IOWIN*)stream)->hf; + + if (hFile != NULL) + { + if (!ReadFile(hFile, buf, size, &ret, NULL)) + { + DWORD dwErr = GetLastError(); + if (dwErr == ERROR_HANDLE_EOF) + dwErr = 0; + ((WIN32FILE_IOWIN*)stream)->error = (int)dwErr; + } + } + + return ret; +} + +uLong ZCALLBACK win32_write_file_func (voidpf opaque,voidpf stream,const void* buf,uLong size) +{ + uLong ret = 0; + HANDLE hFile = NULL; + if (stream != NULL) + hFile = ((WIN32FILE_IOWIN*)stream)->hf; + + if (hFile != NULL) + { + if (!WriteFile(hFile, buf, size, &ret, NULL)) + { + DWORD dwErr = GetLastError(); + if (dwErr == ERROR_HANDLE_EOF) + dwErr = 0; + ((WIN32FILE_IOWIN*)stream)->error = (int)dwErr; + } + } + + return ret; +} + +static BOOL win32_setfilepointer_internal(HANDLE hFile, LARGE_INTEGER pos, LARGE_INTEGER *newPos, DWORD dwMoveMethod) +{ +#ifdef IOWIN32_USING_WINRT_API + return SetFilePointerEx(hFile, pos, newPos, dwMoveMethod); +#else + LONG lHigh = pos.HighPart; + BOOL ret = TRUE; + DWORD dwNewPos = SetFilePointer(hFile, pos.LowPart, &lHigh, dwMoveMethod); + if ((dwNewPos == INVALID_SET_FILE_POINTER) && (GetLastError() != NO_ERROR)) + ret = FALSE; + if ((newPos != NULL) && (ret)) + { + newPos->LowPart = dwNewPos; + newPos->HighPart = lHigh; + } + return ret; +#endif +} + +long ZCALLBACK win32_tell_file_func (voidpf opaque,voidpf stream) +{ + long ret = -1; + HANDLE hFile = NULL; + if (stream != NULL) + hFile = ((WIN32FILE_IOWIN*)stream)->hf; + if (hFile != NULL) + { + LARGE_INTEGER pos; + pos.QuadPart = 0; + if (!win32_setfilepointer_internal(hFile, pos, &pos, FILE_CURRENT)) + { + DWORD dwErr = GetLastError(); + ((WIN32FILE_IOWIN*)stream)->error = (int)dwErr; + ret = -1; + } + else + ret = (long)pos.LowPart; + } + return ret; +} + +ZPOS64_T ZCALLBACK win32_tell64_file_func (voidpf opaque, voidpf stream) +{ + ZPOS64_T ret = (ZPOS64_T)-1; + HANDLE hFile = NULL; + if (stream != NULL) + hFile = ((WIN32FILE_IOWIN*)stream)->hf; + + if (hFile) + { + LARGE_INTEGER pos; + pos.QuadPart = 0; + if (!win32_setfilepointer_internal(hFile, pos, &pos, FILE_CURRENT)) + { + DWORD dwErr = GetLastError(); + ((WIN32FILE_IOWIN*)stream)->error = (int)dwErr; + ret = (ZPOS64_T)-1; + } + else + ret = pos.QuadPart; + } + return ret; +} + + +long ZCALLBACK win32_seek_file_func (voidpf opaque,voidpf stream,uLong offset,int origin) +{ + DWORD dwMoveMethod = 0xFFFFFFFF; + HANDLE hFile = NULL; + long ret = -1; + + if (stream != NULL) + hFile = ((WIN32FILE_IOWIN*)stream)->hf; + + switch (origin) + { + case ZLIB_FILEFUNC_SEEK_CUR: + dwMoveMethod = FILE_CURRENT; + break; + case ZLIB_FILEFUNC_SEEK_END: + dwMoveMethod = FILE_END; + break; + case ZLIB_FILEFUNC_SEEK_SET: + dwMoveMethod = FILE_BEGIN; + break; + default: + return -1; + } + + if (hFile != NULL) + { + LARGE_INTEGER pos; + pos.QuadPart = offset; + if (!win32_setfilepointer_internal(hFile, pos, NULL, dwMoveMethod)) + { + DWORD dwErr = GetLastError(); + ((WIN32FILE_IOWIN*)stream)->error = (int)dwErr; + ret = -1; + } + else + ret = 0; + } + return ret; +} + +long ZCALLBACK win32_seek64_file_func (voidpf opaque, voidpf stream,ZPOS64_T offset,int origin) +{ + DWORD dwMoveMethod = 0xFFFFFFFF; + HANDLE hFile = NULL; + long ret = -1; + + if (stream != NULL) + hFile = ((WIN32FILE_IOWIN*)stream)->hf; + + switch (origin) + { + case ZLIB_FILEFUNC_SEEK_CUR: + dwMoveMethod = FILE_CURRENT; + break; + case ZLIB_FILEFUNC_SEEK_END: + dwMoveMethod = FILE_END; + break; + case ZLIB_FILEFUNC_SEEK_SET: + dwMoveMethod = FILE_BEGIN; + break; + default: + return -1; + } + + if (hFile) + { + LARGE_INTEGER pos; + pos.QuadPart = offset; + if (!win32_setfilepointer_internal(hFile, pos, NULL, dwMoveMethod)) + { + DWORD dwErr = GetLastError(); + ((WIN32FILE_IOWIN*)stream)->error = (int)dwErr; + ret = -1; + } + else + ret = 0; + } + return ret; +} + +int ZCALLBACK win32_close_file_func (voidpf opaque, voidpf stream) +{ + WIN32FILE_IOWIN* iowin = NULL; + int ret = -1; + + if (stream == NULL) + return ret; + iowin = ((WIN32FILE_IOWIN*)stream); + if (iowin->filename != NULL) + free(iowin->filename); + if (iowin->hf != NULL) + { + CloseHandle(iowin->hf); + ret=0; + } + free(stream); + return ret; +} + +int ZCALLBACK win32_error_file_func (voidpf opaque, voidpf stream) +{ + int ret = -1; + if (stream == NULL) + return ret; + ret = ((WIN32FILE_IOWIN*)stream)->error; + return ret; +} + +void fill_win32_filefunc (zlib_filefunc_def* pzlib_filefunc_def) +{ + pzlib_filefunc_def->zopen_file = win32_open_file_func; + pzlib_filefunc_def->zopendisk_file = win32_opendisk_file_func; + pzlib_filefunc_def->zread_file = win32_read_file_func; + pzlib_filefunc_def->zwrite_file = win32_write_file_func; + pzlib_filefunc_def->ztell_file = win32_tell_file_func; + pzlib_filefunc_def->zseek_file = win32_seek_file_func; + pzlib_filefunc_def->zclose_file = win32_close_file_func; + pzlib_filefunc_def->zerror_file = win32_error_file_func; + pzlib_filefunc_def->opaque = NULL; +} + +void fill_win32_filefunc64(zlib_filefunc64_def* pzlib_filefunc_def) +{ + pzlib_filefunc_def->zopen64_file = win32_open64_file_func; + pzlib_filefunc_def->zopendisk64_file = win32_opendisk64_file_func; + pzlib_filefunc_def->zread_file = win32_read_file_func; + pzlib_filefunc_def->zwrite_file = win32_write_file_func; + pzlib_filefunc_def->ztell64_file = win32_tell64_file_func; + pzlib_filefunc_def->zseek64_file = win32_seek64_file_func; + pzlib_filefunc_def->zclose_file = win32_close_file_func; + pzlib_filefunc_def->zerror_file = win32_error_file_func; + pzlib_filefunc_def->opaque = NULL; +} + +void fill_win32_filefunc64A(zlib_filefunc64_def* pzlib_filefunc_def) +{ + pzlib_filefunc_def->zopen64_file = win32_open64_file_funcA; + pzlib_filefunc_def->zopendisk64_file = win32_opendisk64_file_funcA; + pzlib_filefunc_def->zread_file = win32_read_file_func; + pzlib_filefunc_def->zwrite_file = win32_write_file_func; + pzlib_filefunc_def->ztell64_file = win32_tell64_file_func; + pzlib_filefunc_def->zseek64_file = win32_seek64_file_func; + pzlib_filefunc_def->zclose_file = win32_close_file_func; + pzlib_filefunc_def->zerror_file = win32_error_file_func; + pzlib_filefunc_def->opaque = NULL; +} + +void fill_win32_filefunc64W(zlib_filefunc64_def* pzlib_filefunc_def) +{ + pzlib_filefunc_def->zopen64_file = win32_open64_file_funcW; + pzlib_filefunc_def->zopendisk64_file = win32_opendisk64_file_funcW; + pzlib_filefunc_def->zread_file = win32_read_file_func; + pzlib_filefunc_def->zwrite_file = win32_write_file_func; + pzlib_filefunc_def->ztell64_file = win32_tell64_file_func; + pzlib_filefunc_def->zseek64_file = win32_seek64_file_func; + pzlib_filefunc_def->zclose_file = win32_close_file_func; + pzlib_filefunc_def->zerror_file = win32_error_file_func; + pzlib_filefunc_def->opaque = NULL; +} diff --git a/Zip/minizip/iowin32.h b/Zip/minizip/iowin32.h new file mode 100755 index 0000000..466e1d2 --- /dev/null +++ b/Zip/minizip/iowin32.h @@ -0,0 +1,33 @@ +/* iowin32.h -- IO base function header for compress/uncompress .zip + Version 1.1, February 14h, 2010 + part of the MiniZip project + + Copyright (C) 1998-2010 Gilles Vollant + http://www.winimage.com/zLibDll/minizip.html + Modifications for Zip64 support + Copyright (C) 2009-2010 Mathias Svensson + http://result42.com + + This program is distributed under the terms of the same license as zlib. + See the accompanying LICENSE file for the full text of the license. +*/ + +#ifndef _IOWIN32_H +#define _IOWIN32_H + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +void fill_win32_filefunc OF((zlib_filefunc_def* pzlib_filefunc_def)); +void fill_win32_filefunc64 OF((zlib_filefunc64_def* pzlib_filefunc_def)); +void fill_win32_filefunc64A OF((zlib_filefunc64_def* pzlib_filefunc_def)); +void fill_win32_filefunc64W OF((zlib_filefunc64_def* pzlib_filefunc_def)); + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/Zip/minizip/miniunz.c b/Zip/minizip/miniunz.c new file mode 100755 index 0000000..9a9e982 --- /dev/null +++ b/Zip/minizip/miniunz.c @@ -0,0 +1,573 @@ +/* miniunz.c + Version 1.1, February 14h, 2010 + sample part of the MiniZip project + + Copyright (C) 1998-2010 Gilles Vollant + http://www.winimage.com/zLibDll/minizip.html + Modifications of Unzip for Zip64 + Copyright (C) 2007-2008 Even Rouault + Modifications for Zip64 support + Copyright (C) 2009-2010 Mathias Svensson + http://result42.com + + This program is distributed under the terms of the same license as zlib. + See the accompanying LICENSE file for the full text of the license. +*/ + +#if (!defined(_WIN32)) && (!defined(WIN32)) && (!defined(__APPLE__)) +# ifndef __USE_FILE_OFFSET64 +# define __USE_FILE_OFFSET64 +# endif +# ifndef __USE_LARGEFILE64 +# define __USE_LARGEFILE64 +# endif +# ifndef _LARGEFILE64_SOURCE +# define _LARGEFILE64_SOURCE +# endif +# ifndef _FILE_OFFSET_BIT +# define _FILE_OFFSET_BIT 64 +# endif +#endif + +#ifdef __APPLE__ +/* In darwin and perhaps other BSD variants off_t is a 64 bit value, hence no need for specific 64 bit functions */ +# define FOPEN_FUNC(filename, mode) fopen(filename, mode) +# define FTELLO_FUNC(stream) ftello(stream) +# define FSEEKO_FUNC(stream, offset, origin) fseeko(stream, offset, origin) +#else +# define FOPEN_FUNC(filename, mode) fopen64(filename, mode) +# define FTELLO_FUNC(stream) ftello64(stream) +# define FSEEKO_FUNC(stream, offset, origin) fseeko64(stream, offset, origin) +#endif + +#include +#include +#include +#include +#include +#include + +#ifdef _WIN32 +# include +# include +#else +# include +# include +# include +#endif + +#ifdef _WIN32 +# define MKDIR(d) _mkdir(d) +# define CHDIR(d) _chdir(d) +#else +# define MKDIR(d) mkdir(d, 0775) +# define CHDIR(d) chdir(d) +#endif + +#include "unzip.h" + +#define WRITEBUFFERSIZE (8192) +#define MAXFILENAME (256) + +#ifdef _WIN32 +# define USEWIN32IOAPI +# include "iowin32.h" +#endif + +void change_file_date(const char *filename, uLong dosdate, tm_unz tmu_date) +{ +#ifdef _WIN32 + HANDLE hFile; + FILETIME ftm, ftLocal, ftCreate, ftLastAcc, ftLastWrite; + + hFile = CreateFileA(filename, GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL); + if (hFile != INVALID_HANDLE_VALUE) + { + GetFileTime(hFile, &ftCreate, &ftLastAcc, &ftLastWrite); + DosDateTimeToFileTime((WORD)(dosdate>>16),(WORD)dosdate, &ftLocal); + LocalFileTimeToFileTime(&ftLocal, &ftm); + SetFileTime(hFile, &ftm, &ftLastAcc, &ftm); + CloseHandle(hFile); + } +#else +#if defined unix || defined __APPLE__ + struct utimbuf ut; + struct tm newdate; + + newdate.tm_sec = tmu_date.tm_sec; + newdate.tm_min = tmu_date.tm_min; + newdate.tm_hour = tmu_date.tm_hour; + newdate.tm_mday = tmu_date.tm_mday; + newdate.tm_mon = tmu_date.tm_mon; + if (tmu_date.tm_year > 1900) + newdate.tm_year = tmu_date.tm_year - 1900; + else + newdate.tm_year = tmu_date.tm_year ; + newdate.tm_isdst = -1; + + ut.actime = ut.modtime = mktime(&newdate); + utime(filename,&ut); +#endif +#endif +} + +int check_file_exists(const char* filename) +{ + FILE* ftestexist = FOPEN_FUNC(filename,"rb"); + if (ftestexist == NULL) + return 0; + fclose(ftestexist); + return 1; +} + +int makedir(const char *newdir) +{ + char *buffer = NULL; + char *p = NULL; + int len = (int)strlen(newdir); + + if (len <= 0) + return 0; + + buffer = (char*)malloc(len+1); + if (buffer == NULL) + { + printf("Error allocating memory\n"); + return UNZ_INTERNALERROR; + } + + strcpy(buffer, newdir); + + if (buffer[len-1] == '/') + buffer[len-1] = 0; + + if (MKDIR(buffer) == 0) + { + free(buffer); + return 1; + } + + p = buffer + 1; + while (1) + { + char hold; + while(*p && *p != '\\' && *p != '/') + p++; + hold = *p; + *p = 0; + + if ((MKDIR(buffer) == -1) && (errno == ENOENT)) + { + printf("couldn't create directory %s (%d)\n", buffer, errno); + free(buffer); + return 0; + } + + if (hold == 0) + break; + + *p++ = hold; + } + + free(buffer); + return 1; +} + +void display_zpos64(ZPOS64_T n, int size_char) +{ + /* To avoid compatibility problem we do here the conversion */ + char number[21] = {0}; + int offset = 19; + int pos_string = 19; + int size_display_string = 19; + + while (1) + { + number[offset] = (char)((n%10) + '0'); + if (number[offset] != '0') + pos_string = offset; + n /= 10; + if (offset == 0) + break; + offset--; + } + + size_display_string -= pos_string; + while (size_char-- > size_display_string) + printf(" "); + printf("%s",&number[pos_string]); +} + +void do_banner() +{ + printf("MiniUnz 1.01b, demo of zLib + Unz package written by Gilles Vollant\n"); + printf("more info at http://www.winimage.com/zLibDll/minizip.html\n\n"); +} + +void do_help() +{ + printf("Usage : miniunz [-e] [-x] [-v] [-l] [-o] [-p password] file.zip [file_to_extr.] [-d extractdir]\n\n" \ + " -e Extract without pathname (junk paths)\n" \ + " -x Extract with pathname\n" \ + " -v list files\n" \ + " -l list files\n" \ + " -d directory to extract into\n" \ + " -o overwrite files without prompting\n" \ + " -p extract crypted file using password\n\n"); +} + +int do_list(unzFile uf) +{ + int err = unzGoToFirstFile(uf); + if (err != UNZ_OK) + { + printf("error %d with zipfile in unzGoToFirstFile\n", err); + return 1; + } + + printf(" Length Method Size Ratio Date Time CRC-32 Name\n"); + printf(" ------ ------ ---- ----- ---- ---- ------ ----\n"); + + do + { + char filename_inzip[256] = {0}; + unz_file_info64 file_info = {0}; + uLong ratio = 0; + const char *string_method = NULL; + char charCrypt = ' '; + + err = unzGetCurrentFileInfo64(uf, &file_info, filename_inzip, sizeof(filename_inzip), NULL, 0, NULL, 0); + if (err != UNZ_OK) + { + printf("error %d with zipfile in unzGetCurrentFileInfo\n", err); + break; + } + + if (file_info.uncompressed_size > 0) + ratio = (uLong)((file_info.compressed_size*100) / file_info.uncompressed_size); + + /* Display a '*' if the file is encrypted */ + if ((file_info.flag & 1) != 0) + charCrypt = '*'; + + if (file_info.compression_method == 0) + string_method = "Stored"; + else if (file_info.compression_method == Z_DEFLATED) + { + uInt iLevel = (uInt)((file_info.flag & 0x6) / 2); + if (iLevel == 0) + string_method = "Defl:N"; + else if (iLevel == 1) + string_method = "Defl:X"; + else if ((iLevel == 2) || (iLevel == 3)) + string_method = "Defl:F"; /* 2:fast , 3 : extra fast*/ + } + else if (file_info.compression_method == Z_BZIP2ED) + { + string_method = "BZip2 "; + } + else + string_method = "Unkn. "; + + display_zpos64(file_info.uncompressed_size, 7); + printf(" %6s%c", string_method, charCrypt); + display_zpos64(file_info.compressed_size, 7); + printf(" %3lu%% %2.2lu-%2.2lu-%2.2lu %2.2lu:%2.2lu %8.8lx %s\n", ratio, + (uLong)file_info.tmu_date.tm_mon + 1, (uLong)file_info.tmu_date.tm_mday, + (uLong)file_info.tmu_date.tm_year % 100, + (uLong)file_info.tmu_date.tm_hour, (uLong)file_info.tmu_date.tm_min, + (uLong)file_info.crc, filename_inzip); + + err = unzGoToNextFile(uf); + } + while (err == UNZ_OK); + + if (err != UNZ_END_OF_LIST_OF_FILE && err != UNZ_OK) { + printf("error %d with zipfile in unzGoToNextFile\n", err); + return err; + } + + return 0; +} + +int do_extract_currentfile(unzFile uf, int opt_extract_without_path, int* popt_overwrite, const char *password) +{ + unz_file_info64 file_info = {0}; + FILE* fout = NULL; + void* buf = NULL; + uInt size_buf = WRITEBUFFERSIZE; + int err = UNZ_OK; + int errclose = UNZ_OK; + int skip = 0; + char filename_inzip[256] = {0}; + char* filename_withoutpath = NULL; + const char* write_filename = NULL; + char* p = NULL; + + err = unzGetCurrentFileInfo64(uf, &file_info, filename_inzip, sizeof(filename_inzip), NULL, 0, NULL, 0); + if (err != UNZ_OK) + { + printf("error %d with zipfile in unzGetCurrentFileInfo\n",err); + return err; + } + + p = filename_withoutpath = filename_inzip; + while (*p != 0) + { + if ((*p == '/') || (*p == '\\')) + filename_withoutpath = p+1; + p++; + } + + /* If zip entry is a directory then create it on disk */ + if (*filename_withoutpath == 0) + { + if (opt_extract_without_path == 0) + { + printf("creating directory: %s\n", filename_inzip); + MKDIR(filename_inzip); + } + return err; + } + + buf = (void*)malloc(size_buf); + if (buf == NULL) + { + printf("Error allocating memory\n"); + return UNZ_INTERNALERROR; + } + + err = unzOpenCurrentFilePassword(uf, password); + if (err != UNZ_OK) + printf("error %d with zipfile in unzOpenCurrentFilePassword\n", err); + + if (opt_extract_without_path) + write_filename = filename_withoutpath; + else + write_filename = filename_inzip; + + /* Determine if the file should be overwritten or not and ask the user if needed */ + if ((err == UNZ_OK) && (*popt_overwrite == 0) && (check_file_exists(write_filename))) + { + char rep = 0; + do + { + char answer[128]; + printf("The file %s exists. Overwrite ? [y]es, [n]o, [A]ll: ", write_filename); + if (scanf("%1s", answer) != 1) + exit(EXIT_FAILURE); + rep = answer[0]; + if ((rep >= 'a') && (rep <= 'z')) + rep -= 0x20; + } + while ((rep != 'Y') && (rep != 'N') && (rep != 'A')); + + if (rep == 'N') + skip = 1; + if (rep == 'A') + *popt_overwrite = 1; + } + + /* Create the file on disk so we can unzip to it */ + if ((skip == 0) && (err == UNZ_OK)) + { + fout = FOPEN_FUNC(write_filename, "wb"); + /* Some zips don't contain directory alone before file */ + if ((fout == NULL) && (opt_extract_without_path == 0) && + (filename_withoutpath != (char*)filename_inzip)) + { + char c = *(filename_withoutpath-1); + *(filename_withoutpath-1) = 0; + makedir(write_filename); + *(filename_withoutpath-1) = c; + fout = FOPEN_FUNC(write_filename, "wb"); + } + if (fout == NULL) + printf("error opening %s\n", write_filename); + } + + /* Read from the zip, unzip to buffer, and write to disk */ + if (fout != NULL) + { + printf(" extracting: %s\n", write_filename); + + do + { + err = unzReadCurrentFile(uf, buf, size_buf); + if (err < 0) + { + printf("error %d with zipfile in unzReadCurrentFile\n", err); + break; + } + if (err == 0) + break; + if (fwrite(buf, err, 1, fout) != 1) + { + printf("error %d in writing extracted file\n", errno); + err = UNZ_ERRNO; + break; + } + } + while (err > 0); + + if (fout) + fclose(fout); + + /* Set the time of the file that has been unzipped */ + if (err == 0) + change_file_date(write_filename,file_info.dosDate, file_info.tmu_date); + } + + errclose = unzCloseCurrentFile(uf); + if (errclose != UNZ_OK) + printf("error %d with zipfile in unzCloseCurrentFile\n", errclose); + + free(buf); + return err; +} + +int do_extract_all(unzFile uf, int opt_extract_without_path, int opt_overwrite, const char *password) +{ + int err = unzGoToFirstFile(uf); + if (err != UNZ_OK) + { + printf("error %d with zipfile in unzGoToFirstFile\n", err); + return 1; + } + + do + { + err = do_extract_currentfile(uf, opt_extract_without_path, &opt_overwrite, password); + if (err != UNZ_OK) + break; + err = unzGoToNextFile(uf); + } + while (err == UNZ_OK); + + if (err != UNZ_END_OF_LIST_OF_FILE) + { + printf("error %d with zipfile in unzGoToNextFile\n", err); + return 1; + } + return 0; +} + +int do_extract_onefile(unzFile uf, const char* filename, int opt_extract_without_path, int opt_overwrite, + const char* password) +{ + if (unzLocateFile(uf, filename, NULL) != UNZ_OK) + { + printf("file %s not found in the zipfile\n", filename); + return 2; + } + if (do_extract_currentfile(uf, opt_extract_without_path, &opt_overwrite, password) == UNZ_OK) + return 0; + return 1; +} + +int main(int argc, const char *argv[]) +{ + const char *zipfilename = NULL; + const char *filename_to_extract = NULL; + const char *password = NULL; + int i = 0; + int ret = 0; + int opt_do_list = 0; + int opt_do_extract = 1; + int opt_do_extract_withoutpath = 0; + int opt_overwrite = 0; + int opt_extractdir = 0; + const char *dirname = NULL; + unzFile uf = NULL; + + do_banner(); + if (argc == 1) + { + do_help(); + return 0; + } + + /* Parse command line options */ + for (i = 1; i < argc; i++) + { + if ((*argv[i]) == '-') + { + const char *p = argv[i]+1; + + while (*p != 0) + { + char c = *(p++); + if ((c == 'l') || (c == 'L')) + opt_do_list = 1; + if ((c == 'v') || (c == 'V')) + opt_do_list = 1; + if ((c == 'x') || (c == 'X')) + opt_do_extract = 1; + if ((c == 'e') || (c == 'E')) + opt_do_extract = opt_do_extract_withoutpath = 1; + if ((c == 'o') || (c == 'O')) + opt_overwrite=1; + if ((c == 'd') || (c == 'D')) + { + opt_extractdir = 1; + dirname = argv[i+1]; + } + + if (((c == 'p') || (c == 'P')) && (i+1 < argc)) + { + password = argv[i+1]; + i++; + } + } + } + else + { + if (zipfilename == NULL) + zipfilename = argv[i]; + else if ((filename_to_extract == NULL) && (!opt_extractdir)) + filename_to_extract = argv[i]; + } + } + + /* Open zip file */ + if (zipfilename != NULL) + { +#ifdef USEWIN32IOAPI + zlib_filefunc64_def ffunc; + fill_win32_filefunc64A(&ffunc); + uf = unzOpen2_64(zipfilename, &ffunc); +#else + uf = unzOpen64(zipfilename); +#endif + } + + if (uf == NULL) + { + printf("Cannot open %s\n", zipfilename); + return 1; + } + + printf("%s opened\n", zipfilename); + + /* Process command line options */ + if (opt_do_list == 1) + { + ret = do_list(uf); + } + else if (opt_do_extract == 1) + { + if (opt_extractdir && CHDIR(dirname)) + { + printf("Error changing into %s, aborting\n", dirname); + exit(-1); + } + + if (filename_to_extract == NULL) + ret = do_extract_all(uf, opt_do_extract_withoutpath, opt_overwrite, password); + else + ret = do_extract_onefile(uf, filename_to_extract, opt_do_extract_withoutpath, opt_overwrite, password); + } + + unzClose(uf); + return ret; +} diff --git a/Zip/minizip/miniunz.vcproj b/Zip/minizip/miniunz.vcproj new file mode 100755 index 0000000..fd52a18 --- /dev/null +++ b/Zip/minizip/miniunz.vcproj @@ -0,0 +1,394 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Zip/minizip/minizip.c b/Zip/minizip/minizip.c new file mode 100755 index 0000000..0f8bb2a --- /dev/null +++ b/Zip/minizip/minizip.c @@ -0,0 +1,439 @@ +/* minizip.c + Version 1.1, February 14h, 2010 + sample part of the MiniZip project + + Copyright (C) 1998-2010 Gilles Vollant + http://www.winimage.com/zLibDll/minizip.html + Modifications of Unzip for Zip64 + Copyright (C) 2007-2008 Even Rouault + Modifications for Zip64 support + Copyright (C) 2009-2010 Mathias Svensson + http://result42.com + + This program is distributed under the terms of the same license as zlib. + See the accompanying LICENSE file for the full text of the license. +*/ + +#if (!defined(_WIN32)) && (!defined(WIN32)) && (!defined(__APPLE__)) +# ifndef __USE_FILE_OFFSET64 +# define __USE_FILE_OFFSET64 +# endif +# ifndef __USE_LARGEFILE64 +# define __USE_LARGEFILE64 +# endif +# ifndef _LARGEFILE64_SOURCE +# define _LARGEFILE64_SOURCE +# endif +# ifndef _FILE_OFFSET_BIT +# define _FILE_OFFSET_BIT 64 +# endif +#endif + +#ifdef __APPLE__ +/* In darwin and perhaps other BSD variants off_t is a 64 bit value, hence no need for specific 64 bit functions */ +# define FOPEN_FUNC(filename, mode) fopen(filename, mode) +# define FTELLO_FUNC(stream) ftello(stream) +# define FSEEKO_FUNC(stream, offset, origin) fseeko(stream, offset, origin) +#else +# define FOPEN_FUNC(filename, mode) fopen64(filename, mode) +# define FTELLO_FUNC(stream) ftello64(stream) +# define FSEEKO_FUNC(stream, offset, origin) fseeko64(stream, offset, origin) +#endif + +#include +#include +#include +#include +#include +#include + +#ifdef _WIN32 +# include +# include +#else +# include +# include +# include +# include +#endif + +#include "zip.h" + +#ifdef _WIN32 +# define USEWIN32IOAPI +# include "iowin32.h" +#endif + +#define WRITEBUFFERSIZE (16384) +#define MAXFILENAME (256) + +uLong filetime(const char *filename, tm_zip *tmzip, uLong *dostime) +{ + int ret = 0; +#ifdef _WIN32 + FILETIME ftLocal; + HANDLE hFind; + WIN32_FIND_DATAA ff32; + + hFind = FindFirstFileA(filename, &ff32); + if (hFind != INVALID_HANDLE_VALUE) + { + FileTimeToLocalFileTime(&(ff32.ftLastWriteTime), &ftLocal); + FileTimeToDosDateTime(&ftLocal,((LPWORD)dostime)+1,((LPWORD)dostime)+0); + FindClose(hFind); + ret = 1; + } +#else +#if defined unix || defined __APPLE__ + struct stat s = {0}; + struct tm* filedate; + time_t tm_t = 0; + + if (strcmp(filename,"-") != 0) + { + char name[MAXFILENAME+1]; + int len = strlen(filename); + if (len > MAXFILENAME) + len = MAXFILENAME; + + strncpy(name, filename, MAXFILENAME - 1); + name[MAXFILENAME] = 0; + + if (name[len - 1] == '/') + name[len - 1] = 0; + + /* not all systems allow stat'ing a file with / appended */ + if (stat(name,&s) == 0) + { + tm_t = s.st_mtime; + ret = 1; + } + } + + filedate = localtime(&tm_t); + + tmzip->tm_sec = filedate->tm_sec; + tmzip->tm_min = filedate->tm_min; + tmzip->tm_hour = filedate->tm_hour; + tmzip->tm_mday = filedate->tm_mday; + tmzip->tm_mon = filedate->tm_mon ; + tmzip->tm_year = filedate->tm_year; +#endif +#endif + return ret; +} + +int check_file_exists(const char* filename) +{ + FILE* ftestexist = FOPEN_FUNC(filename, "rb"); + if (ftestexist == NULL) + return 0; + fclose(ftestexist); + return 1; +} + +int is_large_file(const char* filename) +{ + ZPOS64_T pos = 0; + FILE* pFile = FOPEN_FUNC(filename, "rb"); + + if (pFile == NULL) + return 0; + + FSEEKO_FUNC(pFile, 0, SEEK_END); + pos = FTELLO_FUNC(pFile); + fclose(pFile); + + printf("File : %s is %lld bytes\n", filename, pos); + + return (pos >= 0xffffffff); +} + +/* Calculate the CRC32 of a file, because to encrypt a file, we need known the CRC32 of the file before */ +int get_file_crc(const char* filenameinzip, void *buf, unsigned long size_buf, unsigned long* result_crc) +{ + FILE *fin = NULL; + unsigned long calculate_crc = 0; + unsigned long size_read = 0; + int err = ZIP_OK; + + fin = FOPEN_FUNC(filenameinzip,"rb"); + if (fin == NULL) + err = ZIP_ERRNO; + else + { + do + { + size_read = (int)fread(buf,1,size_buf,fin); + + if ((size_read < size_buf) && (feof(fin) == 0)) + { + printf("error in reading %s\n",filenameinzip); + err = ZIP_ERRNO; + } + + if (size_read > 0) + calculate_crc = crc32(calculate_crc,buf,size_read); + } + while ((err == ZIP_OK) && (size_read > 0)); + } + + if (fin) + fclose(fin); + + printf("file %s crc %lx\n", filenameinzip, calculate_crc); + *result_crc = calculate_crc; + return err; +} + +void do_banner() +{ + printf("MiniZip 1.1, demo of zLib + MiniZip64 package, written by Gilles Vollant\n"); + printf("more info on MiniZip at http://www.winimage.com/zLibDll/minizip.html\n\n"); +} + +void do_help() +{ + printf("Usage : minizip [-o] [-a] [-0 to -9] [-p password] [-j] file.zip [files_to_add]\n\n" \ + " -o Overwrite existing file.zip\n" \ + " -a Append to existing file.zip\n" \ + " -0 Store only\n" \ + " -1 Compress faster\n" \ + " -9 Compress better\n\n" \ + " -j exclude path. store only the file name.\n\n"); +} + +int main(int argc, char *argv[]) +{ + zipFile zf = NULL; +#ifdef USEWIN32IOAPI + zlib_filefunc64_def ffunc = {0}; +#endif + char *zipfilename = NULL; + const char* password = NULL; + void* buf = NULL; + int size_buf = WRITEBUFFERSIZE; + int zipfilenamearg = 0; + int errclose = 0; + int err = 0; + int i = 0; + int opt_overwrite = APPEND_STATUS_CREATE; + int opt_compress_level = Z_DEFAULT_COMPRESSION; + int opt_exclude_path = 0; + + do_banner(); + if (argc == 1) + { + do_help(); + return 0; + } + + /* Parse command line options */ + for (i = 1; i < argc; i++) + { + if ((*argv[i]) == '-') + { + const char *p = argv[i]+1; + + while ((*p) != '\0') + { + char c = *(p++);; + if ((c == 'o') || (c == 'O')) + opt_overwrite = APPEND_STATUS_CREATEAFTER; + if ((c == 'a') || (c == 'A')) + opt_overwrite = APPEND_STATUS_ADDINZIP; + if ((c >= '0') && (c <= '9')) + opt_compress_level = (c - '0'); + if ((c == 'j') || (c == 'J')) + opt_exclude_path = 1; + + if (((c == 'p') || (c == 'P')) && (i+1 < argc)) + { + password=argv[i+1]; + i++; + } + } + } + else + { + if (zipfilenamearg == 0) + zipfilenamearg = i; + } + } + + if (zipfilenamearg == 0) + { + do_help(); + return 0; + } + zipfilename = argv[zipfilenamearg]; + + buf = (void*)malloc(size_buf); + if (buf == NULL) + { + printf("Error allocating memory\n"); + return ZIP_INTERNALERROR; + } + + if (opt_overwrite == 2) + { + /* If the file don't exist, we not append file */ + if (check_file_exists(zipfilename) == 0) + opt_overwrite = 1; + } + else if (opt_overwrite == 0) + { + /* If ask the user what to do because append and overwrite args not set */ + if (check_file_exists(zipfilename) != 0) + { + char rep = 0; + do + { + char answer[128]; + printf("The file %s exists. Overwrite ? [y]es, [n]o, [a]ppend : ", zipfilename); + if (scanf("%1s", answer) != 1) + exit(EXIT_FAILURE); + rep = answer[0]; + + if ((rep >= 'a') && (rep <= 'z')) + rep -= 0x20; + } + while ((rep != 'Y') && (rep != 'N') && (rep != 'A')); + + if (rep == 'A') + opt_overwrite = 2; + else if (rep == 'N') + { + do_help(); + free(buf); + return 0; + } + } + } + +#ifdef USEWIN32IOAPI + fill_win32_filefunc64A(&ffunc); + zf = zipOpen2_64(zipfilename, opt_overwrite, NULL, &ffunc); +#else + zf = zipOpen64(zipfilename, opt_overwrite); +#endif + + if (zf == NULL) + { + printf("error opening %s\n", zipfilename); + err = ZIP_ERRNO; + } + else + printf("creating %s\n", zipfilename); + + /* Go through command line args looking for files to add to zip */ + for (i = zipfilenamearg + 1; (i < argc) && (err == ZIP_OK); i++) + { + FILE *fin = NULL; + int size_read = 0; + const char* filenameinzip = argv[i]; + const char *savefilenameinzip; + zip_fileinfo zi = {0}; + unsigned long crcFile = 0; + int zip64 = 0; + + /* Skip command line options */ + if ((((*(argv[i])) == '-') || ((*(argv[i])) == '/')) && (strlen(argv[i]) == 2) && + ((argv[i][1] == 'o') || (argv[i][1] == 'O') || (argv[i][1] == 'a') || (argv[i][1] == 'A') || + (argv[i][1] == 'p') || (argv[i][1] == 'P') || ((argv[i][1] >= '0') && (argv[i][1] <= '9')))) + continue; + + /* Get information about the file on disk so we can store it in zip */ + filetime(filenameinzip, &zi.tmz_date, &zi.dosDate); + + if ((password != NULL) && (err == ZIP_OK)) + err = get_file_crc(filenameinzip, buf, size_buf, &crcFile); + + zip64 = is_large_file(filenameinzip); + + /* Construct the filename that our file will be stored in the zip as. + The path name saved, should not include a leading slash. + If it did, windows/xp and dynazip couldn't read the zip file. */ + + savefilenameinzip = filenameinzip; + while (savefilenameinzip[0] == '\\' || savefilenameinzip[0] == '/') + savefilenameinzip++; + + /* Should the file be stored with any path info at all? */ + if (opt_exclude_path) + { + const char *tmpptr = NULL; + const char *lastslash = 0; + + for (tmpptr = savefilenameinzip; *tmpptr; tmpptr++) + { + if (*tmpptr == '\\' || *tmpptr == '/') + lastslash = tmpptr; + } + + if (lastslash != NULL) + savefilenameinzip = lastslash + 1; /* base filename follows last slash. */ + } + + /* Add to zip file */ + err = zipOpenNewFileInZip3_64(zf, savefilenameinzip, &zi, + NULL, 0, NULL, 0, NULL /* comment*/, + (opt_compress_level != 0) ? Z_DEFLATED : 0, + opt_compress_level,0, + -MAX_WBITS, DEF_MEM_LEVEL, Z_DEFAULT_STRATEGY, + password, crcFile, zip64); + + if (err != ZIP_OK) + printf("error in opening %s in zipfile (%d)\n", filenameinzip, err); + else + { + fin = FOPEN_FUNC(filenameinzip, "rb"); + if (fin == NULL) + { + err = ZIP_ERRNO; + printf("error in opening %s for reading\n", filenameinzip); + } + } + + if (err == ZIP_OK) + { + /* Read contents of file and write it to zip */ + do + { + size_read = (int)fread(buf, 1, size_buf, fin); + if ((size_read < size_buf) && (feof(fin) == 0)) + { + printf("error in reading %s\n",filenameinzip); + err = ZIP_ERRNO; + } + + if (size_read > 0) + { + err = zipWriteInFileInZip(zf, buf, size_read); + if (err < 0) + printf("error in writing %s in the zipfile (%d)\n", filenameinzip, err); + } + } + while ((err == ZIP_OK) && (size_read > 0)); + } + + if (fin) + fclose(fin); + + if (err < 0) + err = ZIP_ERRNO; + else + { + err = zipCloseFileInZip(zf); + if (err != ZIP_OK) + printf("error in closing %s in the zipfile (%d)\n", filenameinzip, err); + } + } + + errclose = zipClose(zf, NULL); + if (errclose != ZIP_OK) + printf("error in closing %s (%d)\n", zipfilename, errclose); + + free(buf); + return err; +} diff --git a/Zip/minizip/minizip.pc.in b/Zip/minizip/minizip.pc.in new file mode 100755 index 0000000..69b5b7f --- /dev/null +++ b/Zip/minizip/minizip.pc.in @@ -0,0 +1,12 @@ +prefix=@prefix@ +exec_prefix=@exec_prefix@ +libdir=@libdir@ +includedir=@includedir@/minizip + +Name: minizip +Description: Minizip zip file manipulation library +Requires: +Version: @PACKAGE_VERSION@ +Libs: -L${libdir} -lminizip +Libs.private: -lz +Cflags: -I${includedir} diff --git a/Zip/minizip/minizip.sln b/Zip/minizip/minizip.sln new file mode 100755 index 0000000..98f7ac6 --- /dev/null +++ b/Zip/minizip/minizip.sln @@ -0,0 +1,26 @@ + +Microsoft Visual Studio Solution File, Format Version 10.00 +# Visual Studio 2008 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "miniunz", "miniunz.vcproj", "{8D770B0A-A853-4FB7-8E71-5BDDC16A8C11}" +EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "minizip", "minizip.vcproj", "{9C3AFF9E-022F-4A42-BCDC-C705AEE00DEB}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Release|Win32 = Release|Win32 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {8D770B0A-A853-4FB7-8E71-5BDDC16A8C11}.Debug|Win32.ActiveCfg = Debug|Win32 + {8D770B0A-A853-4FB7-8E71-5BDDC16A8C11}.Debug|Win32.Build.0 = Debug|Win32 + {8D770B0A-A853-4FB7-8E71-5BDDC16A8C11}.Release|Win32.ActiveCfg = Release|Win32 + {8D770B0A-A853-4FB7-8E71-5BDDC16A8C11}.Release|Win32.Build.0 = Release|Win32 + {9C3AFF9E-022F-4A42-BCDC-C705AEE00DEB}.Debug|Win32.ActiveCfg = Debug|Win32 + {9C3AFF9E-022F-4A42-BCDC-C705AEE00DEB}.Debug|Win32.Build.0 = Debug|Win32 + {9C3AFF9E-022F-4A42-BCDC-C705AEE00DEB}.Release|Win32.ActiveCfg = Release|Win32 + {9C3AFF9E-022F-4A42-BCDC-C705AEE00DEB}.Release|Win32.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/Zip/minizip/minizip.vcproj b/Zip/minizip/minizip.vcproj new file mode 100755 index 0000000..75790e1 --- /dev/null +++ b/Zip/minizip/minizip.vcproj @@ -0,0 +1,394 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Zip/minizip/unzip.c b/Zip/minizip/unzip.c index 09d13d1..a3b9834 100755 --- a/Zip/minizip/unzip.c +++ b/Zip/minizip/unzip.c @@ -14,29 +14,26 @@ This program is distributed under the terms of the same license as zlib. See the accompanying LICENSE file for the full text of the license. - */ - +*/ #include #include #include /*#ifndef NOUNCRYPT - # define NOUNCRYPT - #endif*/ +# define NOUNCRYPT +#endif*/ #include "zlib.h" #include "unzip.h" -#include "Common.h" - #ifdef STDC # include # include # include #endif #ifdef NO_ERRNO_H -extern int errno; + extern int errno; #else # include #endif @@ -49,8 +46,8 @@ extern int errno; # define AES_HEADERSIZE (11) # define AES_KEYSIZE(mode) (64 + (mode * 64)) -# include "aes.h" -# include "fileenc.h" +# include "aes/aes.h" +# include "aes/fileenc.h" #endif #ifndef NOUNCRYPT # include "crypt.h" @@ -87,14 +84,15 @@ extern int errno; # define ALLOC(size) (malloc(size)) #endif #ifndef TRYFREE -# define TRYFREE(p) {if (p) free(p); } +# define TRYFREE(p) {if (p) free(p);} #endif const char unz_copyright[] = - " unzip 1.01 Copyright 1998-2004 Gilles Vollant - http://www.winimage.com/zLibDll"; + " unzip 1.01 Copyright 1998-2004 Gilles Vollant - http://www.winimage.com/zLibDll"; /* unz_file_info_interntal contain internal info about a file in zipfile*/ -typedef struct unz_file_info64_internal_s { +typedef struct unz_file_info64_internal_s +{ ZPOS64_T offset_curfile; /* relative offset of local header 8 bytes */ ZPOS64_T byte_before_the_zipfile; /* byte before the zipfile, (>0 for sfx) */ #ifdef HAVE_AES @@ -105,7 +103,8 @@ typedef struct unz_file_info64_internal_s { } unz_file_info64_internal; /* file_in_zip_read_info_s contain internal information about a file in zipfile */ -typedef struct { +typedef struct +{ Bytef *read_buffer; /* internal buffer for compressed data */ z_stream stream; /* zLib stream structure for inflate */ @@ -138,7 +137,8 @@ typedef struct { } file_in_zip64_read_info_s; /* unz64_s contain internal information about the zipfile */ -typedef struct { +typedef struct +{ zlib_filefunc64_32_def z_filefunc; voidpf filestream; /* io structure of the current zipfile */ voidpf filestream_with_CD; /* io structure of the disk with the central directory */ @@ -155,27 +155,27 @@ typedef struct { unz_file_info64 cur_file_info; /* public info about the current file in zip*/ unz_file_info64_internal cur_file_info_internal; - /* private info about it*/ - file_in_zip64_read_info_s *pfile_in_zip_read; - /* structure about the current file if we are decompressing it */ + /* private info about it*/ + file_in_zip64_read_info_s* pfile_in_zip_read; + /* structure about the current file if we are decompressing it */ int isZip64; /* is the current file zip64 */ #ifndef NOUNCRYPT unsigned long keys[3]; /* keys defining the pseudo-random sequence */ - const unsigned long *pcrc_32_tab; + const unsigned long* pcrc_32_tab; #endif } unz64_s; /* Translate date/time from Dos format to tm_unz (readable more easily) */ -local void unz64local_DosDateToTmuDate(ZPOS64_T ulDosDate, tm_unz *ptm) +local void unz64local_DosDateToTmuDate (ZPOS64_T ulDosDate, tm_unz* ptm) { - ZPOS64_T uDate = (ZPOS64_T)(ulDosDate >> 16); + ZPOS64_T uDate = (ZPOS64_T)(ulDosDate>>16); - ptm->tm_mday = (uInt)(uDate & 0x1f); - ptm->tm_mon = (uInt)((((uDate) & 0x1E0) / 0x20) - 1); - ptm->tm_year = (uInt)(((uDate & 0x0FE00) / 0x0200) + 1980); - ptm->tm_hour = (uInt)((ulDosDate & 0xF800) / 0x800); - ptm->tm_min = (uInt)((ulDosDate & 0x7E0) / 0x20); - ptm->tm_sec = (uInt)(2 * (ulDosDate & 0x1f)); + ptm->tm_mday = (uInt)(uDate&0x1f); + ptm->tm_mon = (uInt)((((uDate)&0x1E0)/0x20)-1); + ptm->tm_year = (uInt)(((uDate&0x0FE00)/0x0200)+1980); + ptm->tm_hour = (uInt)((ulDosDate &0xF800)/0x800); + ptm->tm_min = (uInt)((ulDosDate&0x7E0)/0x20); + ptm->tm_sec = (uInt)(2*(ulDosDate&0x1f)); #define unz64local_in_range(min, max, value) ((min) <= (value) && (value) <= (max)) if (!unz64local_in_range(0, 11, ptm->tm_mon) || @@ -183,27 +183,30 @@ local void unz64local_DosDateToTmuDate(ZPOS64_T ulDosDate, tm_unz *ptm) !unz64local_in_range(0, 23, ptm->tm_hour) || !unz64local_in_range(0, 59, ptm->tm_min) || !unz64local_in_range(0, 59, ptm->tm_sec)) - /* Invalid date stored, so don't return it. */ - memset(ptm, 0, sizeof(tm_unz)); + /* Invalid date stored, so don't return it. */ + memset(ptm, 0, sizeof(tm_unz)); #undef unz64local_in_range } /* Read a byte from a gz_stream; Return EOF for end of file. */ -local int unz64local_getByte(const zlib_filefunc64_32_def *pzlib_filefunc_def, voidpf filestream, int *pi) +local int unz64local_getByte OF((const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream, int *pi)); +local int unz64local_getByte(const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream, int *pi) { unsigned char c; int err = (int)ZREAD64(*pzlib_filefunc_def, filestream, &c, 1); - if (err == 1) { + if (err == 1) + { *pi = (int)c; return UNZ_OK; } + *pi = 0; if (ZERROR64(*pzlib_filefunc_def, filestream)) return UNZ_ERRNO; return UNZ_EOF; } -local int unz64local_getShort OF((const zlib_filefunc64_32_def * pzlib_filefunc_def, voidpf filestream, uLong * pX)); -local int unz64local_getShort(const zlib_filefunc64_32_def *pzlib_filefunc_def, voidpf filestream, uLong *pX) +local int unz64local_getShort OF((const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream, uLong *pX)); +local int unz64local_getShort (const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream, uLong *pX) { uLong x; int i = 0; @@ -213,7 +216,7 @@ local int unz64local_getShort(const zlib_filefunc64_32_def *pzlib_filefunc_def, x = (uLong)i; if (err == UNZ_OK) err = unz64local_getByte(pzlib_filefunc_def, filestream, &i); - x |= ((uLong)i) << 8; + x |= ((uLong)i)<<8; if (err == UNZ_OK) *pX = x; @@ -222,8 +225,8 @@ local int unz64local_getShort(const zlib_filefunc64_32_def *pzlib_filefunc_def, return err; } -local int unz64local_getLong OF((const zlib_filefunc64_32_def * pzlib_filefunc_def, voidpf filestream, uLong * pX)); -local int unz64local_getLong(const zlib_filefunc64_32_def *pzlib_filefunc_def, voidpf filestream, uLong *pX) +local int unz64local_getLong OF((const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream, uLong *pX)); +local int unz64local_getLong (const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream, uLong *pX) { uLong x; int i = 0; @@ -233,13 +236,13 @@ local int unz64local_getLong(const zlib_filefunc64_32_def *pzlib_filefunc_def, v x = (uLong)i; if (err == UNZ_OK) err = unz64local_getByte(pzlib_filefunc_def, filestream, &i); - x |= ((uLong)i) << 8; + x |= ((uLong)i)<<8; if (err == UNZ_OK) err = unz64local_getByte(pzlib_filefunc_def, filestream, &i); - x |= ((uLong)i) << 16; + x |= ((uLong)i)<<16; if (err == UNZ_OK) err = unz64local_getByte(pzlib_filefunc_def, filestream, &i); - x += ((uLong)i) << 24; + x += ((uLong)i)<<24; if (err == UNZ_OK) *pX = x; @@ -248,8 +251,8 @@ local int unz64local_getLong(const zlib_filefunc64_32_def *pzlib_filefunc_def, v return err; } -local int unz64local_getLong64 OF((const zlib_filefunc64_32_def * pzlib_filefunc_def, voidpf filestream, ZPOS64_T * pX)); -local int unz64local_getLong64(const zlib_filefunc64_32_def *pzlib_filefunc_def, voidpf filestream, ZPOS64_T *pX) +local int unz64local_getLong64 OF((const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream, ZPOS64_T *pX)); +local int unz64local_getLong64 (const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream, ZPOS64_T *pX) { ZPOS64_T x; int i = 0; @@ -259,25 +262,25 @@ local int unz64local_getLong64(const zlib_filefunc64_32_def *pzlib_filefunc_def, x = (ZPOS64_T)i; if (err == UNZ_OK) err = unz64local_getByte(pzlib_filefunc_def, filestream, &i); - x |= ((ZPOS64_T)i) << 8; + x |= ((ZPOS64_T)i)<<8; if (err == UNZ_OK) err = unz64local_getByte(pzlib_filefunc_def, filestream, &i); - x |= ((ZPOS64_T)i) << 16; + x |= ((ZPOS64_T)i)<<16; if (err == UNZ_OK) err = unz64local_getByte(pzlib_filefunc_def, filestream, &i); - x |= ((ZPOS64_T)i) << 24; + x |= ((ZPOS64_T)i)<<24; if (err == UNZ_OK) err = unz64local_getByte(pzlib_filefunc_def, filestream, &i); - x |= ((ZPOS64_T)i) << 32; + x |= ((ZPOS64_T)i)<<32; if (err == UNZ_OK) err = unz64local_getByte(pzlib_filefunc_def, filestream, &i); - x |= ((ZPOS64_T)i) << 40; + x |= ((ZPOS64_T)i)<<40; if (err == UNZ_OK) err = unz64local_getByte(pzlib_filefunc_def, filestream, &i); - x |= ((ZPOS64_T)i) << 48; + x |= ((ZPOS64_T)i)<<48; if (err == UNZ_OK) err = unz64local_getByte(pzlib_filefunc_def, filestream, &i); - x |= ((ZPOS64_T)i) << 56; + x |= ((ZPOS64_T)i)<<56; if (err == UNZ_OK) *pX = x; @@ -287,10 +290,10 @@ local int unz64local_getLong64(const zlib_filefunc64_32_def *pzlib_filefunc_def, } /* Locate the Central directory of a zip file (at the end, just before the global comment) */ -local ZPOS64_T unz64local_SearchCentralDir OF((const zlib_filefunc64_32_def * pzlib_filefunc_def, voidpf filestream)); -local ZPOS64_T unz64local_SearchCentralDir(const zlib_filefunc64_32_def *pzlib_filefunc_def, voidpf filestream) +local ZPOS64_T unz64local_SearchCentralDir OF((const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream)); +local ZPOS64_T unz64local_SearchCentralDir(const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream) { - unsigned char *buf; + unsigned char* buf; ZPOS64_T file_size; ZPOS64_T back_read = 4; ZPOS64_T max_back = 0xffff; /* maximum size of global comment */ @@ -299,11 +302,12 @@ local ZPOS64_T unz64local_SearchCentralDir(const zlib_filefunc64_32_def *pzlib_f ZPOS64_T read_pos; int i; - buf = (unsigned char *)ALLOC(BUFREADCOMMENT + 4); + buf = (unsigned char*)ALLOC(BUFREADCOMMENT + 4); if (buf == NULL) return 0; - if (ZSEEK64(*pzlib_filefunc_def, filestream, 0, ZLIB_FILEFUNC_SEEK_END) != 0) { + if (ZSEEK64(*pzlib_filefunc_def, filestream, 0, ZLIB_FILEFUNC_SEEK_END) != 0) + { TRYFREE(buf); return 0; } @@ -313,7 +317,8 @@ local ZPOS64_T unz64local_SearchCentralDir(const zlib_filefunc64_32_def *pzlib_f if (max_back > file_size) max_back = file_size; - while (back_read < max_back) { + while (back_read < max_back) + { if (back_read + BUFREADCOMMENT > max_back) back_read = max_back; else @@ -321,19 +326,20 @@ local ZPOS64_T unz64local_SearchCentralDir(const zlib_filefunc64_32_def *pzlib_f read_pos = file_size - back_read; read_size = ((BUFREADCOMMENT + 4) < (file_size - read_pos)) ? - (BUFREADCOMMENT + 4) : (uLong)(file_size - read_pos); + (BUFREADCOMMENT + 4) : (uLong)(file_size - read_pos); if (ZSEEK64(*pzlib_filefunc_def, filestream, read_pos, ZLIB_FILEFUNC_SEEK_SET) != 0) break; if (ZREAD64(*pzlib_filefunc_def, filestream, buf, read_size) != read_size) break; - for (i = (int)read_size - 3; (i--) > 0; ) - if (((*(buf + i)) == (ENDHEADERMAGIC & 0xff)) && - ((*(buf + i + 1)) == (ENDHEADERMAGIC >> 8 & 0xff)) && - ((*(buf + i + 2)) == (ENDHEADERMAGIC >> 16 & 0xff)) && - ((*(buf + i + 3)) == (ENDHEADERMAGIC >> 24 & 0xff))) { - pos_found = read_pos + i; + for (i = (int)read_size-3; (i--) > 0;) + if (((*(buf+i)) == (ENDHEADERMAGIC & 0xff)) && + ((*(buf+i+1)) == (ENDHEADERMAGIC >> 8 & 0xff)) && + ((*(buf+i+2)) == (ENDHEADERMAGIC >> 16 & 0xff)) && + ((*(buf+i+3)) == (ENDHEADERMAGIC >> 24 & 0xff))) + { + pos_found = read_pos+i; break; } @@ -345,10 +351,10 @@ local ZPOS64_T unz64local_SearchCentralDir(const zlib_filefunc64_32_def *pzlib_f } /* Locate the Central directory 64 of a zipfile (at the end, just before the global comment) */ -local ZPOS64_T unz64local_SearchCentralDir64 OF((const zlib_filefunc64_32_def * pzlib_filefunc_def, voidpf filestream, - const ZPOS64_T endcentraloffset)); -local ZPOS64_T unz64local_SearchCentralDir64(const zlib_filefunc64_32_def *pzlib_filefunc_def, voidpf filestream, - const ZPOS64_T endcentraloffset) +local ZPOS64_T unz64local_SearchCentralDir64 OF((const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream, + const ZPOS64_T endcentraloffset)); +local ZPOS64_T unz64local_SearchCentralDir64(const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream, + const ZPOS64_T endcentraloffset) { ZPOS64_T offset; uLong uL; @@ -374,7 +380,7 @@ local ZPOS64_T unz64local_SearchCentralDir64(const zlib_filefunc64_32_def *pzlib /* Goto end of central directory record */ if (ZSEEK64(*pzlib_filefunc_def, filestream, offset, ZLIB_FILEFUNC_SEEK_SET) != 0) return 0; - /* the signature */ + /* the signature */ if (unz64local_getLong(pzlib_filefunc_def, filestream, &uL) != UNZ_OK) return 0; if (uL != ZIP64ENDHEADERMAGIC) @@ -383,7 +389,7 @@ local ZPOS64_T unz64local_SearchCentralDir64(const zlib_filefunc64_32_def *pzlib return offset; } -local unzFile unzOpenInternal(const void *path, zlib_filefunc64_32_def *pzlib_filefunc64_32_def) +local unzFile unzOpenInternal(const void *path, zlib_filefunc64_32_def* pzlib_filefunc64_32_def) { unz64_s us; unz64_s *s; @@ -393,7 +399,7 @@ local unzFile unzOpenInternal(const void *path, zlib_filefunc64_32_def *pzlib_fi ZPOS64_T number_entry_CD; int err = UNZ_OK; - if (unz_copyright[0] != ' ') + if (unz_copyright[0]!=' ') return NULL; us.filestream = NULL; @@ -416,7 +422,8 @@ local unzFile unzOpenInternal(const void *path, zlib_filefunc64_32_def *pzlib_fi /* Use unz64local_SearchCentralDir first. Only based on the result is it necessary to locate the unz64local_SearchCentralDir64 */ central_pos = unz64local_SearchCentralDir(&us.z_filefunc, us.filestream); - if (central_pos) { + if (central_pos) + { if (ZSEEK64(us.z_filefunc, us.filestream, central_pos, ZLIB_FILEFUNC_SEEK_SET) != 0) err = UNZ_ERRNO; @@ -428,7 +435,7 @@ local unzFile unzOpenInternal(const void *path, zlib_filefunc64_32_def *pzlib_fi err = UNZ_ERRNO; us.number_disk = uL; /* number of the disk with the start of the central directory */ - if (unz64local_getShort(&us.z_filefunc, us.filestream, &uL) != UNZ_OK) + if (unz64local_getShort(&us.z_filefunc, us.filestream,& uL) != UNZ_OK) err = UNZ_ERRNO; us.gi.number_disk_with_CD = uL; /* total number of entries in the central directory on this disk */ @@ -454,10 +461,12 @@ local unzFile unzOpenInternal(const void *path, zlib_filefunc64_32_def *pzlib_fi err = UNZ_ERRNO; if ((err == UNZ_OK) && - ((us.gi.number_entry == 0xffff) || (us.size_central_dir == 0xffff) || (us.offset_central_dir == 0xffffffff))) { + ((us.gi.number_entry == 0xffff) || (us.size_central_dir == 0xffff) || (us.offset_central_dir == 0xffffffff))) + { /* Format should be Zip64, as the central directory or file size is too large */ central_pos = unz64local_SearchCentralDir64(&us.z_filefunc, us.filestream, central_pos); - if (central_pos) { + if (central_pos) + { ZPOS64_T uL64; us.isZip64 = 1; @@ -497,21 +506,25 @@ local unzFile unzOpenInternal(const void *path, zlib_filefunc64_32_def *pzlib_fi /* offset of start of central directory with respect to the starting disk number */ if (unz64local_getLong64(&us.z_filefunc, us.filestream, &us.offset_central_dir) != UNZ_OK) err = UNZ_ERRNO; - } else + } + else err = UNZ_BADZIPFILE; } - } else + } + else err = UNZ_ERRNO; if ((err == UNZ_OK) && (central_pos < us.offset_central_dir + us.size_central_dir)) err = UNZ_BADZIPFILE; - if (err != UNZ_OK) { + if (err != UNZ_OK) + { ZCLOSE64(us.z_filefunc, us.filestream); return NULL; } - if (us.gi.number_disk_with_CD == 0) { + if (us.gi.number_disk_with_CD == 0) + { /* If there is only one disk open another stream so we don't have to seek between the CD and the file headers constantly */ filestream = ZOPEN64(us.z_filefunc, path, ZLIB_FILEFUNC_MODE_READ | ZLIB_FILEFUNC_MODE_EXISTING); @@ -520,24 +533,26 @@ local unzFile unzOpenInternal(const void *path, zlib_filefunc64_32_def *pzlib_fi } /* Hack for zip files that have no respect for zip64 - if ((central_pos > 0xffffffff) && (us.offset_central_dir < 0xffffffff)) + if ((central_pos > 0xffffffff) && (us.offset_central_dir < 0xffffffff)) us.offset_central_dir = central_pos - us.size_central_dir;*/ us.byte_before_the_zipfile = central_pos - (us.offset_central_dir + us.size_central_dir); us.central_pos = central_pos; us.pfile_in_zip_read = NULL; - s = (unz64_s *)ALLOC(sizeof(unz64_s)); - if (s != NULL) { + s = (unz64_s*)ALLOC(sizeof(unz64_s)); + if (s != NULL) + { *s = us; unzGoToFirstFile((unzFile)s); } return (unzFile)s; } -extern unzFile ZEXPORT unzOpen2(const char *path, zlib_filefunc_def *pzlib_filefunc32_def) +extern unzFile ZEXPORT unzOpen2(const char *path, zlib_filefunc_def* pzlib_filefunc32_def) { - if (pzlib_filefunc32_def != NULL) { + if (pzlib_filefunc32_def != NULL) + { zlib_filefunc64_32_def zlib_filefunc64_32_def_fill; fill_zlib_filefunc64_32_def_from_filefunc32(&zlib_filefunc64_32_def_fill, pzlib_filefunc32_def); return unzOpenInternal(path, &zlib_filefunc64_32_def_fill); @@ -545,9 +560,10 @@ extern unzFile ZEXPORT unzOpen2(const char *path, zlib_filefunc_def *pzlib_filef return unzOpenInternal(path, NULL); } -extern unzFile ZEXPORT unzOpen2_64(const void *path, zlib_filefunc64_def *pzlib_filefunc_def) +extern unzFile ZEXPORT unzOpen2_64(const void *path, zlib_filefunc64_def* pzlib_filefunc_def) { - if (pzlib_filefunc_def != NULL) { + if (pzlib_filefunc_def != NULL) + { zlib_filefunc64_32_def zlib_filefunc64_32_def_fill; zlib_filefunc64_32_def_fill.zfile_func64 = *pzlib_filefunc_def; zlib_filefunc64_32_def_fill.ztell32_file = NULL; @@ -569,10 +585,10 @@ extern unzFile ZEXPORT unzOpen64(const void *path) extern int ZEXPORT unzClose(unzFile file) { - unz64_s *s; + unz64_s* s; if (file == NULL) return UNZ_PARAMERROR; - s = (unz64_s *)file; + s = (unz64_s*)file; if (s->pfile_in_zip_read != NULL) unzCloseCurrentFile(file); @@ -592,33 +608,35 @@ extern int ZEXPORT unzClose(unzFile file) local int unzGoToNextDisk OF((unzFile file)); local int unzGoToNextDisk(unzFile file) { - unz64_s *s; - file_in_zip64_read_info_s *pfile_in_zip_read_info; + unz64_s* s; uLong number_disk_next = 0; - s = (unz64_s *)file; + s = (unz64_s*)file; if (s == NULL) return UNZ_PARAMERROR; - pfile_in_zip_read_info = s->pfile_in_zip_read; number_disk_next = s->number_disk; - if ((pfile_in_zip_read_info != NULL) && (pfile_in_zip_read_info->rest_read_uncompressed > 0)) + if ((s->pfile_in_zip_read != NULL) && (s->pfile_in_zip_read->rest_read_uncompressed > 0)) /* We are currently reading a file and we need the next sequential disk */ number_disk_next += 1; else /* Goto the disk for the current file */ number_disk_next = s->cur_file_info.disk_num_start; - if (number_disk_next != s->number_disk) { + if (number_disk_next != s->number_disk) + { /* Switch disks */ if ((s->filestream != NULL) && (s->filestream != s->filestream_with_CD)) ZCLOSE64(s->z_filefunc, s->filestream); - if (number_disk_next == s->gi.number_disk_with_CD) { + if (number_disk_next == s->gi.number_disk_with_CD) + { s->filestream = s->filestream_with_CD; - } else { - s->filestream = ZOPENDISK64(s->z_filefunc, s->filestream_with_CD, (unsigned int)number_disk_next, - ZLIB_FILEFUNC_MODE_READ | ZLIB_FILEFUNC_MODE_EXISTING); + } + else + { + s->filestream = ZOPENDISK64(s->z_filefunc, s->filestream_with_CD, number_disk_next, + ZLIB_FILEFUNC_MODE_READ | ZLIB_FILEFUNC_MODE_EXISTING); } if (s->filestream == NULL) @@ -630,12 +648,12 @@ local int unzGoToNextDisk(unzFile file) return UNZ_OK; } -extern int ZEXPORT unzGetGlobalInfo(unzFile file, unz_global_info *pglobal_info32) +extern int ZEXPORT unzGetGlobalInfo(unzFile file, unz_global_info* pglobal_info32) { - unz64_s *s; + unz64_s* s; if (file == NULL) return UNZ_PARAMERROR; - s = (unz64_s *)file; + s = (unz64_s*)file; /* to do : check if number_entry is not truncated */ pglobal_info32->number_entry = (uLong)s->gi.number_entry; pglobal_info32->size_comment = s->gi.size_comment; @@ -643,23 +661,23 @@ extern int ZEXPORT unzGetGlobalInfo(unzFile file, unz_global_info *pglobal_info3 return UNZ_OK; } -extern int ZEXPORT unzGetGlobalInfo64(unzFile file, unz_global_info64 *pglobal_info) +extern int ZEXPORT unzGetGlobalInfo64(unzFile file, unz_global_info64* pglobal_info) { - unz64_s *s; + unz64_s* s; if (file == NULL) return UNZ_PARAMERROR; - s = (unz64_s *)file; + s = (unz64_s*)file; *pglobal_info = s->gi; return UNZ_OK; } extern int ZEXPORT unzGetGlobalComment(unzFile file, char *comment, uLong comment_size) { - unz64_s *s; + unz64_s* s; uLong bytes_to_read = comment_size; if (file == NULL) return (int)UNZ_PARAMERROR; - s = (unz64_s *)file; + s = (unz64_s*)file; if (bytes_to_read > s->gi.size_comment) bytes_to_read = s->gi.size_comment; @@ -667,23 +685,24 @@ extern int ZEXPORT unzGetGlobalComment(unzFile file, char *comment, uLong commen if (ZSEEK64(s->z_filefunc, s->filestream_with_CD, s->central_pos + 22, ZLIB_FILEFUNC_SEEK_SET) != 0) return UNZ_ERRNO; - if (bytes_to_read > 0) { + if (bytes_to_read>0) + { *comment = 0; if (ZREAD64(s->z_filefunc, s->filestream_with_CD, comment, bytes_to_read) != bytes_to_read) return UNZ_ERRNO; } if ((comment != NULL) && (comment_size > s->gi.size_comment)) - *(comment + s->gi.size_comment) = 0; + *(comment+s->gi.size_comment) = 0; return (int)bytes_to_read; } /* Get Info about the current file in the zipfile, with internal only info */ local int unz64local_GetCurrentFileInfoInternal(unzFile file, unz_file_info64 *pfile_info, - unz_file_info64_internal *pfile_info_internal, char *filename, uLong filename_size, void *extrafield, - uLong extrafield_size, char *comment, uLong comment_size) + unz_file_info64_internal *pfile_info_internal, char *filename, uLong filename_size, void *extrafield, + uLong extrafield_size, char *comment, uLong comment_size) { - unz64_s *s; + unz64_s* s; unz_file_info64 file_info; unz_file_info64_internal file_info_internal; ZPOS64_T bytes_to_read; @@ -697,14 +716,15 @@ local int unz64local_GetCurrentFileInfoInternal(unzFile file, unz_file_info64 *p if (file == NULL) return UNZ_PARAMERROR; - s = (unz64_s *)file; + s = (unz64_s*)file; if (ZSEEK64(s->z_filefunc, s->filestream_with_CD, - s->pos_in_central_dir + s->byte_before_the_zipfile, ZLIB_FILEFUNC_SEEK_SET) != 0) + s->pos_in_central_dir + s->byte_before_the_zipfile, ZLIB_FILEFUNC_SEEK_SET) != 0) err = UNZ_ERRNO; /* Check the magic */ - if (err == UNZ_OK) { + if (err == UNZ_OK) + { if (unz64local_getLong(&s->z_filefunc, s->filestream_with_CD, &uMagic) != UNZ_OK) err = UNZ_ERRNO; else if (uMagic != CENTRALHEADERMAGIC) @@ -758,29 +778,34 @@ local int unz64local_GetCurrentFileInfoInternal(unzFile file, unz_file_info64 *p lSeek += file_info.size_filename; - if ((err == UNZ_OK) && (filename != NULL)) { - if (file_info.size_filename < filename_size) { - *(filename + file_info.size_filename) = 0; + if ((err == UNZ_OK) && (filename != NULL)) + { + if (file_info.size_filename < filename_size) + { + *(filename+file_info.size_filename) = 0; bytes_to_read = file_info.size_filename; - } else + } + else bytes_to_read = filename_size; if ((file_info.size_filename > 0) && (filename_size > 0)) - if (ZREAD64(s->z_filefunc, s->filestream_with_CD, filename, (uLong)bytes_to_read) != bytes_to_read) + if (ZREAD64(s->z_filefunc, s->filestream_with_CD,filename, (uLong)bytes_to_read) != bytes_to_read) err = UNZ_ERRNO; lSeek -= (uLong)bytes_to_read; } /* Read extrafield */ - if ((err == UNZ_OK) && (extrafield != NULL)) { + if ((err == UNZ_OK) && (extrafield != NULL)) + { if (file_info.size_file_extra < extrafield_size) bytes_to_read = file_info.size_file_extra; else bytes_to_read = extrafield_size; - if (lSeek != 0) { + if (lSeek != 0) + { if (ZSEEK64(s->z_filefunc, s->filestream_with_CD, lSeek, ZLIB_FILEFUNC_SEEK_CUR) == 0) - lSeek = 0; + lSeek=0; else err = UNZ_ERRNO; } @@ -789,13 +814,16 @@ local int unz64local_GetCurrentFileInfoInternal(unzFile file, unz_file_info64 *p if (ZREAD64(s->z_filefunc, s->filestream_with_CD, extrafield, (uLong)bytes_to_read) != bytes_to_read) err = UNZ_ERRNO; lSeek += file_info.size_file_extra - (uLong)bytes_to_read; - } else + } + else lSeek += file_info.size_file_extra; - if ((err == UNZ_OK) && (file_info.size_file_extra != 0)) { - if (lSeek != 0) { + if ((err == UNZ_OK) && (file_info.size_file_extra != 0)) + { + if (lSeek != 0) + { if (ZSEEK64(s->z_filefunc, s->filestream_with_CD, lSeek, ZLIB_FILEFUNC_SEEK_CUR) == 0) - lSeek = 0; + lSeek=0; else err = UNZ_ERRNO; } @@ -808,7 +836,8 @@ local int unz64local_GetCurrentFileInfoInternal(unzFile file, unz_file_info64 *p if (ZSEEK64(s->z_filefunc, s->filestream_with_CD, current_pos, ZLIB_FILEFUNC_SEEK_SET) != 0) err = UNZ_ERRNO; - while ((err != UNZ_ERRNO) && (acc < file_info.size_file_extra)) { + while((err != UNZ_ERRNO) && (acc < file_info.size_file_extra)) + { uLong headerid; uLong datasize; @@ -818,26 +847,31 @@ local int unz64local_GetCurrentFileInfoInternal(unzFile file, unz_file_info64 *p err = UNZ_ERRNO; /* ZIP64 extra fields */ - if (headerid == 0x0001) { + if (headerid == 0x0001) + { /* Subtract size of ZIP64 field, since ZIP64 is handled internally */ file_info.size_file_extra_internal += 2 + 2 + datasize; - if (file_info.uncompressed_size == 0xffffffff) { + if (file_info.uncompressed_size == 0xffffffff) + { if (unz64local_getLong64(&s->z_filefunc, s->filestream_with_CD, &file_info.uncompressed_size) != UNZ_OK) err = UNZ_ERRNO; } - if (file_info.compressed_size == 0xffffffff) { + if (file_info.compressed_size == 0xffffffff) + { if (unz64local_getLong64(&s->z_filefunc, s->filestream_with_CD, &file_info.compressed_size) != UNZ_OK) err = UNZ_ERRNO; } - if (file_info_internal.offset_curfile == 0xffffffff) { + if (file_info_internal.offset_curfile == 0xffffffff) + { /* Relative Header offset */ if (unz64local_getLong64(&s->z_filefunc, s->filestream_with_CD, &uL64) != UNZ_OK) err = UNZ_ERRNO; file_info_internal.offset_curfile = uL64; file_info.disk_offset = uL64; } - if (file_info.disk_num_start == 0xffffffff) { + if (file_info.disk_num_start == 0xffffffff) + { /* Disk Start Number */ if (unz64local_getLong(&s->z_filefunc, s->filestream_with_CD, &file_info.disk_num_start) != UNZ_OK) err = UNZ_ERRNO; @@ -845,7 +879,8 @@ local int unz64local_GetCurrentFileInfoInternal(unzFile file, unz_file_info64 *p } #ifdef HAVE_AES /* AES header */ - else if (headerid == 0x9901) { + else if (headerid == 0x9901) + { /* Subtract size of AES field, since AES is handled internally */ file_info.size_file_extra_internal += 2 + 2 + datasize; @@ -856,16 +891,16 @@ local int unz64local_GetCurrentFileInfoInternal(unzFile file, unz_file_info64 *p if (uL != 1 && uL != 2) err = UNZ_ERRNO; file_info_internal.aes_version = uL; - if (unz64local_getByte(&s->z_filefunc, s->filestream_with_CD, (int *)&uL) != UNZ_OK) + if (unz64local_getByte(&s->z_filefunc, s->filestream_with_CD, &uL) != UNZ_OK) err = UNZ_ERRNO; if ((char)uL != 'A') err = UNZ_ERRNO; - if (unz64local_getByte(&s->z_filefunc, s->filestream_with_CD, (int *)&uL) != UNZ_OK) + if (unz64local_getByte(&s->z_filefunc, s->filestream_with_CD, &uL) != UNZ_OK) err = UNZ_ERRNO; if ((char)uL != 'E') err = UNZ_ERRNO; /* Get AES encryption strength and actual compression method */ - if (unz64local_getByte(&s->z_filefunc, s->filestream_with_CD, (int *)&uL) != UNZ_OK) + if (unz64local_getByte(&s->z_filefunc, s->filestream_with_CD, &uL) != UNZ_OK) err = UNZ_ERRNO; file_info_internal.aes_encryption_mode = uL; if (unz64local_getShort(&s->z_filefunc, s->filestream_with_CD, &uL) != UNZ_OK) @@ -873,8 +908,9 @@ local int unz64local_GetCurrentFileInfoInternal(unzFile file, unz_file_info64 *p file_info_internal.aes_compression_method = uL; } #endif - else { - if (ZSEEK64(s->z_filefunc, s->filestream_with_CD, datasize, ZLIB_FILEFUNC_SEEK_CUR) != 0) + else + { + if (ZSEEK64(s->z_filefunc, s->filestream_with_CD,datasize, ZLIB_FILEFUNC_SEEK_CUR) != 0) err = UNZ_ERRNO; } @@ -887,14 +923,18 @@ local int unz64local_GetCurrentFileInfoInternal(unzFile file, unz_file_info64 *p else file_info_internal.byte_before_the_zipfile = 0; - if ((err == UNZ_OK) && (comment != NULL)) { - if (file_info.size_file_comment < comment_size) { - *(comment + file_info.size_file_comment) = 0; + if ((err == UNZ_OK) && (comment != NULL)) + { + if (file_info.size_file_comment < comment_size) + { + *(comment+file_info.size_file_comment) = 0; bytes_to_read = file_info.size_file_comment; - } else + } + else bytes_to_read = comment_size; - if (lSeek != 0) { + if (lSeek != 0) + { if (ZSEEK64(s->z_filefunc, s->filestream_with_CD, lSeek, ZLIB_FILEFUNC_SEEK_CUR) != 0) err = UNZ_ERRNO; } @@ -903,7 +943,8 @@ local int unz64local_GetCurrentFileInfoInternal(unzFile file, unz_file_info64 *p if (ZREAD64(s->z_filefunc, s->filestream_with_CD, comment, (uLong)bytes_to_read) != bytes_to_read) err = UNZ_ERRNO; lSeek += file_info.size_file_comment - (uLong)bytes_to_read; - } else + } + else lSeek += file_info.size_file_comment; if ((err == UNZ_OK) && (pfile_info != NULL)) @@ -915,16 +956,17 @@ local int unz64local_GetCurrentFileInfoInternal(unzFile file, unz_file_info64 *p return err; } -extern int ZEXPORT unzGetCurrentFileInfo(unzFile file, unz_file_info *pfile_info, char *filename, - uLong filename_size, void *extrafield, uLong extrafield_size, char *comment, uLong comment_size) +extern int ZEXPORT unzGetCurrentFileInfo(unzFile file, unz_file_info * pfile_info, char *filename, + uLong filename_size, void *extrafield, uLong extrafield_size, char* comment, uLong comment_size) { unz_file_info64 file_info64; int err; err = unz64local_GetCurrentFileInfoInternal(file, &file_info64, NULL, filename, filename_size, - extrafield, extrafield_size, comment, comment_size); + extrafield, extrafield_size, comment, comment_size); - if ((err == UNZ_OK) && (pfile_info != NULL)) { + if ((err == UNZ_OK) && (pfile_info != NULL)) + { pfile_info->version = file_info64.version; pfile_info->version_needed = file_info64.version_needed; pfile_info->flag = file_info64.flag; @@ -949,18 +991,18 @@ extern int ZEXPORT unzGetCurrentFileInfo(unzFile file, unz_file_info *pfile_info return err; } -extern int ZEXPORT unzGetCurrentFileInfo64(unzFile file, unz_file_info64 *pfile_info, char *filename, - uLong filename_size, void *extrafield, uLong extrafield_size, char *comment, uLong comment_size) +extern int ZEXPORT unzGetCurrentFileInfo64(unzFile file, unz_file_info64 * pfile_info, char *filename, + uLong filename_size, void *extrafield, uLong extrafield_size, char* comment, uLong comment_size) { return unz64local_GetCurrentFileInfoInternal(file, pfile_info, NULL, filename, filename_size, - extrafield, extrafield_size, comment, comment_size); + extrafield, extrafield_size, comment,comment_size); } /* Read the local header of the current zipfile. Check the coherency of the local header and info in the end of central directory about this file store in *piSizeVar the size of extra info in local header (filename and size of extra field data) */ -local int unz64local_CheckCurrentFileCoherencyHeader(unz64_s *s, uInt *piSizeVar, ZPOS64_T *poffset_local_extrafield, - uInt *psize_local_extrafield) +local int unz64local_CheckCurrentFileCoherencyHeader(unz64_s* s, uInt* piSizeVar, ZPOS64_T *poffset_local_extrafield, + uInt *psize_local_extrafield) { uLong uMagic, uL, uFlags; uLong size_filename; @@ -977,10 +1019,11 @@ local int unz64local_CheckCurrentFileCoherencyHeader(unz64_s *s, uInt *piSizeVar return err; if (ZSEEK64(s->z_filefunc, s->filestream, s->cur_file_info_internal.offset_curfile + - s->cur_file_info_internal.byte_before_the_zipfile, ZLIB_FILEFUNC_SEEK_SET) != 0) + s->cur_file_info_internal.byte_before_the_zipfile, ZLIB_FILEFUNC_SEEK_SET) != 0) return UNZ_ERRNO; - if (err == UNZ_OK) { + if (err == UNZ_OK) + { if (unz64local_getLong(&s->z_filefunc, s->filestream, &uMagic) != UNZ_OK) err = UNZ_ERRNO; else if (uMagic != LOCALHEADERMAGIC) @@ -1041,18 +1084,18 @@ local int unz64local_CheckCurrentFileCoherencyHeader(unz64_s *s, uInt *piSizeVar } /* - Open for reading data the current file in the zipfile. - If there is no error and the file is opened, the return value is UNZ_OK. - */ -extern int ZEXPORT unzOpenCurrentFile3(unzFile file, int *method, int *level, int raw, const char *password) + Open for reading data the current file in the zipfile. + If there is no error and the file is opened, the return value is UNZ_OK. +*/ +extern int ZEXPORT unzOpenCurrentFile3(unzFile file, int* method, int* level, int raw, const char* password) { int err = UNZ_OK; int compression_method; uInt iSizeVar; - unz64_s *s; - file_in_zip64_read_info_s *pfile_in_zip_read_info; + unz64_s* s; + file_in_zip64_read_info_s* pfile_in_zip_read_info; ZPOS64_T offset_local_extrafield; - uInt size_local_extrafield; + uInt size_local_extrafield; #ifndef NOUNCRYPT char source[12]; #else @@ -1061,7 +1104,7 @@ extern int ZEXPORT unzOpenCurrentFile3(unzFile file, int *method, int *level, in #endif if (file == NULL) return UNZ_PARAMERROR; - s = (unz64_s *)file; + s = (unz64_s*)file; if (!s->current_file_ok) return UNZ_PARAMERROR; @@ -1071,17 +1114,18 @@ extern int ZEXPORT unzOpenCurrentFile3(unzFile file, int *method, int *level, in if (unz64local_CheckCurrentFileCoherencyHeader(s, &iSizeVar, &offset_local_extrafield, &size_local_extrafield) != UNZ_OK) return UNZ_BADZIPFILE; - pfile_in_zip_read_info = (file_in_zip64_read_info_s *)ALLOC(sizeof(file_in_zip64_read_info_s)); + pfile_in_zip_read_info = (file_in_zip64_read_info_s*)ALLOC(sizeof(file_in_zip64_read_info_s)); if (pfile_in_zip_read_info == NULL) return UNZ_INTERNALERROR; - pfile_in_zip_read_info->read_buffer = (Bytef *)ALLOC(UNZ_BUFSIZE); + pfile_in_zip_read_info->read_buffer = (Bytef*)ALLOC(UNZ_BUFSIZE); pfile_in_zip_read_info->offset_local_extrafield = offset_local_extrafield; pfile_in_zip_read_info->size_local_extrafield = size_local_extrafield; pfile_in_zip_read_info->pos_local_extrafield = 0; pfile_in_zip_read_info->raw = raw; - if (pfile_in_zip_read_info->read_buffer == NULL) { + if (pfile_in_zip_read_info->read_buffer == NULL) + { TRYFREE(pfile_in_zip_read_info); return UNZ_INTERNALERROR; } @@ -1097,12 +1141,14 @@ extern int ZEXPORT unzOpenCurrentFile3(unzFile file, int *method, int *level, in if (method != NULL) *method = compression_method; - if (level != NULL) { + if (level != NULL) + { *level = 6; - switch (s->cur_file_info.flag & 0x06) { - case 6: *level = 1; break; - case 4: *level = 2; break; - case 2: *level = 9; break; + switch (s->cur_file_info.flag & 0x06) + { + case 6 : *level = 1; break; + case 4 : *level = 2; break; + case 2 : *level = 9; break; } } @@ -1127,10 +1173,12 @@ extern int ZEXPORT unzOpenCurrentFile3(unzFile file, int *method, int *level, in pfile_in_zip_read_info->stream.total_in = 0; pfile_in_zip_read_info->stream.next_in = NULL; - if (!raw) { - if (compression_method == Z_BZIP2ED) { + if (!raw) + { + if (compression_method == Z_BZIP2ED) + { #ifdef HAVE_BZIP2 - pfile_in_zip_read_info->bstream.bzalloc = (void *(*)(void *, int, int)) 0; + pfile_in_zip_read_info->bstream.bzalloc = (void *(*) (void *, int, int))0; pfile_in_zip_read_info->bstream.bzfree = (free_func)0; pfile_in_zip_read_info->bstream.opaque = (voidpf)0; pfile_in_zip_read_info->bstream.state = (voidpf)0; @@ -1143,15 +1191,18 @@ extern int ZEXPORT unzOpenCurrentFile3(unzFile file, int *method, int *level, in err = BZ2_bzDecompressInit(&pfile_in_zip_read_info->bstream, 0, 0); if (err == Z_OK) - pfile_in_zip_read_info->stream_initialised = Z_BZIP2ED; - else { + pfile_in_zip_read_info->stream_initialised=Z_BZIP2ED; + else + { TRYFREE(pfile_in_zip_read_info); return err; } #else pfile_in_zip_read_info->raw = 1; #endif - } else if (compression_method == Z_DEFLATED) { + } + else if (compression_method == Z_DEFLATED) + { pfile_in_zip_read_info->stream.zalloc = (alloc_func)0; pfile_in_zip_read_info->stream.zfree = (free_func)0; pfile_in_zip_read_info->stream.opaque = (voidpf)s; @@ -1161,7 +1212,8 @@ extern int ZEXPORT unzOpenCurrentFile3(unzFile file, int *method, int *level, in err = inflateInit2(&pfile_in_zip_read_info->stream, -MAX_WBITS); if (err == Z_OK) pfile_in_zip_read_info->stream_initialised = Z_DEFLATED; - else { + else + { TRYFREE(pfile_in_zip_read_info); return err; } @@ -1181,15 +1233,18 @@ extern int ZEXPORT unzOpenCurrentFile3(unzFile file, int *method, int *level, in pfile_in_zip_read_info->stream.avail_in = (uInt)0; s->pfile_in_zip_read = pfile_in_zip_read_info; + s->pcrc_32_tab = NULL; #ifndef NOUNCRYPT - if ((password != NULL) && ((s->cur_file_info.flag & 1) != 0)) { + if ((password != NULL) && ((s->cur_file_info.flag & 1) != 0)) + { if (ZSEEK64(s->z_filefunc, s->filestream, - s->pfile_in_zip_read->pos_in_zipfile + s->pfile_in_zip_read->byte_before_the_zipfile, - ZLIB_FILEFUNC_SEEK_SET) != 0) + s->pfile_in_zip_read->pos_in_zipfile + s->pfile_in_zip_read->byte_before_the_zipfile, + ZLIB_FILEFUNC_SEEK_SET) != 0) return UNZ_INTERNALERROR; #ifdef HAVE_AES - if (s->cur_file_info.compression_method == AES_METHOD) { + if (s->cur_file_info.compression_method == AES_METHOD) + { unsigned char passverify[AES_PWVERIFYSIZE]; unsigned char saltvalue[AES_MAXSALTLENGTH]; uInt saltlength; @@ -1205,18 +1260,19 @@ extern int ZEXPORT unzOpenCurrentFile3(unzFile file, int *method, int *level, in if (ZREAD64(s->z_filefunc, s->filestream, passverify, AES_PWVERIFYSIZE) != AES_PWVERIFYSIZE) return UNZ_INTERNALERROR; - fcrypt_init((int)s->cur_file_info_internal.aes_encryption_mode, (unsigned char *)password, (unsigned int)strlen(password), saltvalue, - passverify, &s->pfile_in_zip_read->aes_ctx); + fcrypt_init(s->cur_file_info_internal.aes_encryption_mode, password, strlen(password), saltvalue, + passverify, &s->pfile_in_zip_read->aes_ctx); - pfile_in_zip_read_info->rest_read_compressed -= saltlength + AES_PWVERIFYSIZE; - pfile_in_zip_read_info->rest_read_compressed -= AES_AUTHCODESIZE; + s->pfile_in_zip_read->rest_read_compressed -= saltlength + AES_PWVERIFYSIZE; + s->pfile_in_zip_read->rest_read_compressed -= AES_AUTHCODESIZE; s->pfile_in_zip_read->pos_in_zipfile += saltlength + AES_PWVERIFYSIZE; - } else + } + else #endif { int i; - s->pcrc_32_tab = (const unsigned long *)get_crc_table(); + s->pcrc_32_tab = (const unsigned long*)get_crc_table(); init_keys(password, s->keys, s->pcrc_32_tab); if (ZREAD64(s->z_filefunc, s->filestream, source, 12) < 12) @@ -1225,7 +1281,7 @@ extern int ZEXPORT unzOpenCurrentFile3(unzFile file, int *method, int *level, in for (i = 0; i < 12; i++) zdecode(s->keys, s->pcrc_32_tab, source[i]); - pfile_in_zip_read_info->rest_read_compressed -= 12; + s->pfile_in_zip_read->rest_read_compressed -= 12; s->pfile_in_zip_read->pos_in_zipfile += 12; } @@ -1240,12 +1296,12 @@ extern int ZEXPORT unzOpenCurrentFile(unzFile file) return unzOpenCurrentFile3(file, NULL, NULL, 0, NULL); } -extern int ZEXPORT unzOpenCurrentFilePassword(unzFile file, const char *password) +extern int ZEXPORT unzOpenCurrentFilePassword(unzFile file, const char* password) { return unzOpenCurrentFile3(file, NULL, NULL, 0, password); } -extern int ZEXPORT unzOpenCurrentFile2(unzFile file, int *method, int *level, int raw) +extern int ZEXPORT unzOpenCurrentFile2(unzFile file, int* method, int* level, int raw) { return unzOpenCurrentFile3(file, method, level, raw, NULL); } @@ -1261,212 +1317,208 @@ extern int ZEXPORT unzReadCurrentFile(unzFile file, voidp buf, unsigned len) { int err = UNZ_OK; uInt read = 0; - unz64_s *s; - file_in_zip64_read_info_s *pfile_in_zip_read_info; + unz64_s* s; if (file == NULL) return UNZ_PARAMERROR; - s = (unz64_s *)file; - pfile_in_zip_read_info = s->pfile_in_zip_read; + s = (unz64_s*)file; - if (pfile_in_zip_read_info == NULL) + if (s->pfile_in_zip_read == NULL) return UNZ_PARAMERROR; - if (pfile_in_zip_read_info->read_buffer == NULL) + if (s->pfile_in_zip_read->read_buffer == NULL) return UNZ_END_OF_LIST_OF_FILE; if (len == 0) return 0; - pfile_in_zip_read_info->stream.next_out = (Bytef *)buf; - pfile_in_zip_read_info->stream.avail_out = (uInt)len; - - if (pfile_in_zip_read_info->raw) { - if (len > pfile_in_zip_read_info->rest_read_compressed + pfile_in_zip_read_info->stream.avail_in) - pfile_in_zip_read_info->stream.avail_out = (uInt)pfile_in_zip_read_info->rest_read_compressed + - pfile_in_zip_read_info->stream.avail_in; - } else { - - // NOTE: - // This bit of code seems to try to set the amount of space in the output buffer based on the - // value stored in the headers stored in the .zip file. However, if those values are incorrect - // it may result in a loss of data when uncompresssing that file. The compressed data is still - // legit and will deflate without knowing the uncompressed code so this tidbit is unnecessary and - // may cause issues for some .zip files. - // - // It's removed in here to fix those issues. - // - // See: https://github.com/ZipArchive/ziparchive/issues/16 - // - - /* - - - FIXME: Upgrading to minizip 1.1 caused issues here, Uncommented the code that was commented before. 11/24/2015 - */ - - if (len > pfile_in_zip_read_info->rest_read_uncompressed) - pfile_in_zip_read_info->stream.avail_out = (uInt)pfile_in_zip_read_info->rest_read_uncompressed; - - - - } + s->pfile_in_zip_read->stream.next_out = (Bytef*)buf; + s->pfile_in_zip_read->stream.avail_out = (uInt)len; - while (pfile_in_zip_read_info->stream.avail_out > 0) { - if (pfile_in_zip_read_info->stream.avail_in == 0) { - uInt bytes_to_read = UNZ_BUFSIZE; - uInt bytes_not_read = 0; - uInt bytes_read = 0; - uInt total_bytes_read = 0; + if (s->pfile_in_zip_read->raw) + { + if (len > s->pfile_in_zip_read->rest_read_compressed + s->pfile_in_zip_read->stream.avail_in) + s->pfile_in_zip_read->stream.avail_out = (uInt)s->pfile_in_zip_read->rest_read_compressed + + s->pfile_in_zip_read->stream.avail_in; + } + else + { + if (len > s->pfile_in_zip_read->rest_read_uncompressed) + s->pfile_in_zip_read->stream.avail_out = (uInt)s->pfile_in_zip_read->rest_read_uncompressed; + } - if (pfile_in_zip_read_info->stream.next_in != NULL) - bytes_not_read = (uInt)(pfile_in_zip_read_info->read_buffer + UNZ_BUFSIZE - - pfile_in_zip_read_info->stream.next_in); + while (s->pfile_in_zip_read->stream.avail_out > 0) + { + if (s->pfile_in_zip_read->stream.avail_in == 0) + { + uLong bytes_to_read = UNZ_BUFSIZE; + uLong bytes_not_read = 0; + uLong bytes_read = 0; + uLong total_bytes_read = 0; + + if (s->pfile_in_zip_read->stream.next_in != NULL) + bytes_not_read = s->pfile_in_zip_read->read_buffer + UNZ_BUFSIZE - + s->pfile_in_zip_read->stream.next_in; bytes_to_read -= bytes_not_read; if (bytes_not_read > 0) - memcpy(pfile_in_zip_read_info->read_buffer, pfile_in_zip_read_info->stream.next_in, bytes_not_read); - if (pfile_in_zip_read_info->rest_read_compressed < bytes_to_read) - bytes_to_read = (uInt)pfile_in_zip_read_info->rest_read_compressed; - - while (total_bytes_read != bytes_to_read) { - if (ZSEEK64(pfile_in_zip_read_info->z_filefunc, pfile_in_zip_read_info->filestream, - pfile_in_zip_read_info->pos_in_zipfile + pfile_in_zip_read_info->byte_before_the_zipfile, - ZLIB_FILEFUNC_SEEK_SET) != 0) + memcpy(s->pfile_in_zip_read->read_buffer, s->pfile_in_zip_read->stream.next_in, bytes_not_read); + if (s->pfile_in_zip_read->rest_read_compressed < bytes_to_read) + bytes_to_read = (uInt)s->pfile_in_zip_read->rest_read_compressed; + + while (total_bytes_read != bytes_to_read) + { + if (ZSEEK64(s->pfile_in_zip_read->z_filefunc, s->pfile_in_zip_read->filestream, + s->pfile_in_zip_read->pos_in_zipfile + s->pfile_in_zip_read->byte_before_the_zipfile, + ZLIB_FILEFUNC_SEEK_SET) != 0) return UNZ_ERRNO; - bytes_read = (int)ZREAD64(pfile_in_zip_read_info->z_filefunc, pfile_in_zip_read_info->filestream, - pfile_in_zip_read_info->read_buffer + bytes_not_read + total_bytes_read, - bytes_to_read - total_bytes_read); + bytes_read = ZREAD64(s->pfile_in_zip_read->z_filefunc, s->pfile_in_zip_read->filestream, + s->pfile_in_zip_read->read_buffer + bytes_not_read + total_bytes_read, + bytes_to_read - total_bytes_read); total_bytes_read += bytes_read; - pfile_in_zip_read_info->pos_in_zipfile += bytes_read; + s->pfile_in_zip_read->pos_in_zipfile += bytes_read; - if (bytes_read == 0) { - if (ZERROR64(pfile_in_zip_read_info->z_filefunc, pfile_in_zip_read_info->filestream)) + if (bytes_read == 0) + { + if (ZERROR64(s->pfile_in_zip_read->z_filefunc, s->pfile_in_zip_read->filestream)) return UNZ_ERRNO; err = unzGoToNextDisk(file); if (err != UNZ_OK) return err; - pfile_in_zip_read_info->pos_in_zipfile = 0; - pfile_in_zip_read_info->filestream = s->filestream; + s->pfile_in_zip_read->pos_in_zipfile = 0; + s->pfile_in_zip_read->filestream = s->filestream; } } #ifndef NOUNCRYPT - if ((s->cur_file_info.flag & 1) != 0) { + if ((s->cur_file_info.flag & 1) != 0) + { #ifdef HAVE_AES - if (s->cur_file_info.compression_method == AES_METHOD) { - fcrypt_decrypt(pfile_in_zip_read_info->read_buffer, bytes_to_read, &s->pfile_in_zip_read->aes_ctx); - } else + if (s->cur_file_info.compression_method == AES_METHOD) + { + fcrypt_decrypt(s->pfile_in_zip_read->read_buffer, bytes_to_read, &s->pfile_in_zip_read->aes_ctx); + } + else #endif + if (s->pcrc_32_tab != NULL) { uInt i; - for (i = 0; i < total_bytes_read; i++) - pfile_in_zip_read_info->read_buffer[i] = - zdecode(s->keys, s->pcrc_32_tab, pfile_in_zip_read_info->read_buffer[i]); + for(i = 0; i < total_bytes_read; i++) + s->pfile_in_zip_read->read_buffer[i] = + zdecode(s->keys, s->pcrc_32_tab, s->pfile_in_zip_read->read_buffer[i]); } } #endif - pfile_in_zip_read_info->rest_read_compressed -= total_bytes_read; - pfile_in_zip_read_info->stream.next_in = (Bytef *)pfile_in_zip_read_info->read_buffer; - pfile_in_zip_read_info->stream.avail_in = (uInt)bytes_not_read + total_bytes_read; + s->pfile_in_zip_read->rest_read_compressed -= total_bytes_read; + s->pfile_in_zip_read->stream.next_in = (Bytef*)s->pfile_in_zip_read->read_buffer; + s->pfile_in_zip_read->stream.avail_in = (uInt)(bytes_not_read + total_bytes_read); } - if ((pfile_in_zip_read_info->compression_method == 0) || (pfile_in_zip_read_info->raw)) { + if ((s->pfile_in_zip_read->compression_method == 0) || (s->pfile_in_zip_read->raw)) + { uInt copy, i; - if ((pfile_in_zip_read_info->stream.avail_in == 0) && - (pfile_in_zip_read_info->rest_read_compressed == 0)) + if ((s->pfile_in_zip_read->stream.avail_in == 0) && + (s->pfile_in_zip_read->rest_read_compressed == 0)) return (read == 0) ? UNZ_EOF : read; - if (pfile_in_zip_read_info->stream.avail_out < pfile_in_zip_read_info->stream.avail_in) - copy = pfile_in_zip_read_info->stream.avail_out; + if (s->pfile_in_zip_read->stream.avail_out < s->pfile_in_zip_read->stream.avail_in) + copy = s->pfile_in_zip_read->stream.avail_out; else - copy = pfile_in_zip_read_info->stream.avail_in; + copy = s->pfile_in_zip_read->stream.avail_in; for (i = 0; i < copy; i++) - *(pfile_in_zip_read_info->stream.next_out + i) = - *(pfile_in_zip_read_info->stream.next_in + i); - - pfile_in_zip_read_info->total_out_64 = pfile_in_zip_read_info->total_out_64 + copy; - pfile_in_zip_read_info->rest_read_uncompressed -= copy; - pfile_in_zip_read_info->crc32 = crc32(pfile_in_zip_read_info->crc32, - pfile_in_zip_read_info->stream.next_out, copy); - - pfile_in_zip_read_info->stream.avail_in -= copy; - pfile_in_zip_read_info->stream.avail_out -= copy; - pfile_in_zip_read_info->stream.next_out += copy; - pfile_in_zip_read_info->stream.next_in += copy; - pfile_in_zip_read_info->stream.total_out += copy; + *(s->pfile_in_zip_read->stream.next_out+i) = + *(s->pfile_in_zip_read->stream.next_in+i); + + s->pfile_in_zip_read->total_out_64 = s->pfile_in_zip_read->total_out_64 + copy; + s->pfile_in_zip_read->rest_read_uncompressed -= copy; + s->pfile_in_zip_read->crc32 = crc32(s->pfile_in_zip_read->crc32, + s->pfile_in_zip_read->stream.next_out, copy); + + s->pfile_in_zip_read->stream.avail_in -= copy; + s->pfile_in_zip_read->stream.avail_out -= copy; + s->pfile_in_zip_read->stream.next_out += copy; + s->pfile_in_zip_read->stream.next_in += copy; + s->pfile_in_zip_read->stream.total_out += copy; read += copy; - } else if (pfile_in_zip_read_info->compression_method == Z_BZIP2ED) { + } + else if (s->pfile_in_zip_read->compression_method == Z_BZIP2ED) + { #ifdef HAVE_BZIP2 uLong total_out_before, total_out_after; const Bytef *buf_before; uLong out_bytes; - pfile_in_zip_read_info->bstream.next_in = (char *)pfile_in_zip_read_info->stream.next_in; - pfile_in_zip_read_info->bstream.avail_in = pfile_in_zip_read_info->stream.avail_in; - pfile_in_zip_read_info->bstream.total_in_lo32 = pfile_in_zip_read_info->stream.total_in; - pfile_in_zip_read_info->bstream.total_in_hi32 = 0; - pfile_in_zip_read_info->bstream.next_out = (char *)pfile_in_zip_read_info->stream.next_out; - pfile_in_zip_read_info->bstream.avail_out = pfile_in_zip_read_info->stream.avail_out; - pfile_in_zip_read_info->bstream.total_out_lo32 = pfile_in_zip_read_info->stream.total_out; - pfile_in_zip_read_info->bstream.total_out_hi32 = 0; + s->pfile_in_zip_read->bstream.next_in = (char*)s->pfile_in_zip_read->stream.next_in; + s->pfile_in_zip_read->bstream.avail_in = s->pfile_in_zip_read->stream.avail_in; + s->pfile_in_zip_read->bstream.total_in_lo32 = (uInt)s->pfile_in_zip_read->stream.total_in; + s->pfile_in_zip_read->bstream.total_in_hi32 = s->pfile_in_zip_read->stream.total_in >> 32; + + s->pfile_in_zip_read->bstream.next_out = (char*)s->pfile_in_zip_read->stream.next_out; + s->pfile_in_zip_read->bstream.avail_out = s->pfile_in_zip_read->stream.avail_out; + s->pfile_in_zip_read->bstream.total_out_lo32 = (uInt)s->pfile_in_zip_read->stream.total_out; + s->pfile_in_zip_read->bstream.total_out_hi32 = s->pfile_in_zip_read->stream.total_out >> 32; + + total_out_before = s->pfile_in_zip_read->bstream.total_out_lo32 + + (((uLong)s->pfile_in_zip_read->bstream.total_out_hi32) << 32); + buf_before = (const Bytef *)s->pfile_in_zip_read->bstream.next_out; - total_out_before = pfile_in_zip_read_info->bstream.total_out_lo32; - buf_before = (const Bytef *)pfile_in_zip_read_info->bstream.next_out; + err = BZ2_bzDecompress(&s->pfile_in_zip_read->bstream); - err = BZ2_bzDecompress(&pfile_in_zip_read_info->bstream); + total_out_after = s->pfile_in_zip_read->bstream.total_out_lo32 + + (((uLong)s->pfile_in_zip_read->bstream.total_out_hi32) << 32); - total_out_after = pfile_in_zip_read_info->bstream.total_out_lo32; - out_bytes = total_out_after - total_out_before; + out_bytes = total_out_after-total_out_before; - pfile_in_zip_read_info->total_out_64 = pfile_in_zip_read_info->total_out_64 + out_bytes; - pfile_in_zip_read_info->rest_read_uncompressed -= out_bytes; - pfile_in_zip_read_info->crc32 = crc32(pfile_in_zip_read_info->crc32, buf_before, (uInt)(out_bytes)); + s->pfile_in_zip_read->total_out_64 = s->pfile_in_zip_read->total_out_64 + out_bytes; + s->pfile_in_zip_read->rest_read_uncompressed -= out_bytes; + s->pfile_in_zip_read->crc32 = crc32(s->pfile_in_zip_read->crc32,buf_before, (uInt)(out_bytes)); read += (uInt)(total_out_after - total_out_before); - pfile_in_zip_read_info->stream.next_in = (Bytef *)pfile_in_zip_read_info->bstream.next_in; - pfile_in_zip_read_info->stream.avail_in = pfile_in_zip_read_info->bstream.avail_in; - pfile_in_zip_read_info->stream.total_in = pfile_in_zip_read_info->bstream.total_in_lo32; - pfile_in_zip_read_info->stream.next_out = (Bytef *)pfile_in_zip_read_info->bstream.next_out; - pfile_in_zip_read_info->stream.avail_out = pfile_in_zip_read_info->bstream.avail_out; - pfile_in_zip_read_info->stream.total_out = pfile_in_zip_read_info->bstream.total_out_lo32; + s->pfile_in_zip_read->stream.next_in = (Bytef*)s->pfile_in_zip_read->bstream.next_in; + s->pfile_in_zip_read->stream.avail_in = s->pfile_in_zip_read->bstream.avail_in; + s->pfile_in_zip_read->stream.total_in = s->pfile_in_zip_read->bstream.total_in_lo32; + s->pfile_in_zip_read->stream.next_out = (Bytef*)s->pfile_in_zip_read->bstream.next_out; + s->pfile_in_zip_read->stream.avail_out = s->pfile_in_zip_read->bstream.avail_out; + s->pfile_in_zip_read->stream.total_out = s->pfile_in_zip_read->bstream.total_out_lo32; if (err == BZ_STREAM_END) return (read == 0) ? UNZ_EOF : read; if (err != BZ_OK) break; #endif - } else { + } + else + { ZPOS64_T total_out_before, total_out_after; const Bytef *buf_before; ZPOS64_T out_bytes; - int flush = Z_SYNC_FLUSH; + int flush=Z_SYNC_FLUSH; - total_out_before = pfile_in_zip_read_info->stream.total_out; - buf_before = pfile_in_zip_read_info->stream.next_out; + total_out_before = s->pfile_in_zip_read->stream.total_out; + buf_before = s->pfile_in_zip_read->stream.next_out; /* - if ((pfile_in_zip_read_info->rest_read_uncompressed == + if ((pfile_in_zip_read_info->rest_read_uncompressed == pfile_in_zip_read_info->stream.avail_out) && (pfile_in_zip_read_info->rest_read_compressed == 0)) flush = Z_FINISH; - */ - err = inflate(&pfile_in_zip_read_info->stream, flush); + */ + err = inflate(&s->pfile_in_zip_read->stream,flush); - if ((err >= 0) && (pfile_in_zip_read_info->stream.msg != NULL)) + if ((err >= 0) && (s->pfile_in_zip_read->stream.msg != NULL)) err = Z_DATA_ERROR; - total_out_after = pfile_in_zip_read_info->stream.total_out; - out_bytes = total_out_after - total_out_before; + total_out_after = s->pfile_in_zip_read->stream.total_out; + out_bytes = total_out_after-total_out_before; - pfile_in_zip_read_info->total_out_64 += out_bytes; - pfile_in_zip_read_info->rest_read_uncompressed -= out_bytes; - pfile_in_zip_read_info->crc32 = - crc32(pfile_in_zip_read_info->crc32, buf_before, (uInt)(out_bytes)); + s->pfile_in_zip_read->total_out_64 += out_bytes; + s->pfile_in_zip_read->rest_read_uncompressed -= out_bytes; + s->pfile_in_zip_read->crc32 = + crc32(s->pfile_in_zip_read->crc32,buf_before, (uInt)(out_bytes)); read += (uInt)(total_out_after - total_out_before); @@ -1484,33 +1536,28 @@ extern int ZEXPORT unzReadCurrentFile(unzFile file, voidp buf, unsigned len) extern ZPOS64_T ZEXPORT unzGetCurrentFileZStreamPos64(unzFile file) { - unz64_s *s; - file_in_zip64_read_info_s *pfile_in_zip_read_info; - s = (unz64_s *)file; + unz64_s* s; + s = (unz64_s*)file; if (file == NULL) return 0; /* UNZ_PARAMERROR */ - pfile_in_zip_read_info = s->pfile_in_zip_read; - if (pfile_in_zip_read_info == NULL) + if (s->pfile_in_zip_read == NULL) return 0; /* UNZ_PARAMERROR */ - return pfile_in_zip_read_info->pos_in_zipfile + pfile_in_zip_read_info->byte_before_the_zipfile; + return s->pfile_in_zip_read->pos_in_zipfile + s->pfile_in_zip_read->byte_before_the_zipfile; } extern int ZEXPORT unzGetLocalExtrafield(unzFile file, voidp buf, unsigned len) { - unz64_s *s; - file_in_zip64_read_info_s *pfile_in_zip_read_info; + unz64_s* s; uInt read_now; ZPOS64_T size_to_read; if (file == NULL) return UNZ_PARAMERROR; - s = (unz64_s *)file; - pfile_in_zip_read_info = s->pfile_in_zip_read; - - if (pfile_in_zip_read_info == NULL) + s = (unz64_s*)file; + if (s->pfile_in_zip_read == NULL) return UNZ_PARAMERROR; - size_to_read = pfile_in_zip_read_info->size_local_extrafield - pfile_in_zip_read_info->pos_local_extrafield; + size_to_read = s->pfile_in_zip_read->size_local_extrafield - s->pfile_in_zip_read->pos_local_extrafield; if (buf == NULL) return (int)size_to_read; @@ -1518,17 +1565,17 @@ extern int ZEXPORT unzGetLocalExtrafield(unzFile file, voidp buf, unsigned len) if (len > size_to_read) read_now = (uInt)size_to_read; else - read_now = (uInt)len; + read_now = (uInt)len ; if (read_now == 0) return 0; - if (ZSEEK64(pfile_in_zip_read_info->z_filefunc, pfile_in_zip_read_info->filestream, - pfile_in_zip_read_info->offset_local_extrafield + pfile_in_zip_read_info->pos_local_extrafield, - ZLIB_FILEFUNC_SEEK_SET) != 0) + if (ZSEEK64(s->pfile_in_zip_read->z_filefunc, s->pfile_in_zip_read->filestream, + s->pfile_in_zip_read->offset_local_extrafield + s->pfile_in_zip_read->pos_local_extrafield, + ZLIB_FILEFUNC_SEEK_SET) != 0) return UNZ_ERRNO; - if (ZREAD64(pfile_in_zip_read_info->z_filefunc, pfile_in_zip_read_info->filestream, buf, read_now) != read_now) + if (ZREAD64(s->pfile_in_zip_read->z_filefunc, s->pfile_in_zip_read->filestream, buf, read_now) != read_now) return UNZ_ERRNO; return (int)read_now; @@ -1538,18 +1585,19 @@ extern int ZEXPORT unzCloseCurrentFile(unzFile file) { int err = UNZ_OK; - unz64_s *s; - file_in_zip64_read_info_s *pfile_in_zip_read_info; + unz64_s* s; + file_in_zip64_read_info_s* pfile_in_zip_read_info; if (file == NULL) return UNZ_PARAMERROR; - s = (unz64_s *)file; - pfile_in_zip_read_info = s->pfile_in_zip_read; + s = (unz64_s*)file; + pfile_in_zip_read_info=s->pfile_in_zip_read; if (pfile_in_zip_read_info == NULL) return UNZ_PARAMERROR; #ifdef HAVE_AES - if (s->cur_file_info.compression_method == AES_METHOD) { + if (s->cur_file_info.compression_method == AES_METHOD) + { unsigned char authcode[AES_AUTHCODESIZE]; unsigned char rauthcode[AES_AUTHCODESIZE]; @@ -1567,7 +1615,8 @@ extern int ZEXPORT unzCloseCurrentFile(unzFile file) #endif { if ((pfile_in_zip_read_info->rest_read_uncompressed == 0) && - (!pfile_in_zip_read_info->raw)) { + (!pfile_in_zip_read_info->raw)) + { if (pfile_in_zip_read_info->crc32 != pfile_in_zip_read_info->crc32_wait) err = UNZ_CRCERROR; } @@ -1591,17 +1640,17 @@ extern int ZEXPORT unzCloseCurrentFile(unzFile file) } extern int ZEXPORT unzGoToFirstFile2(unzFile file, unz_file_info64 *pfile_info, char *filename, - uLong filename_size, void *extrafield, uLong extrafield_size, char *comment, uLong comment_size) + uLong filename_size, void *extrafield, uLong extrafield_size, char *comment, uLong comment_size) { int err = UNZ_OK; - unz64_s *s; + unz64_s* s; if (file == NULL) return UNZ_PARAMERROR; - s = (unz64_s *)file; + s = (unz64_s*)file; s->pos_in_central_dir = s->offset_central_dir; s->num_file = 0; err = unz64local_GetCurrentFileInfoInternal(file, &s->cur_file_info, &s->cur_file_info_internal, - filename, filename_size, extrafield, extrafield_size, comment, comment_size); + filename,filename_size, extrafield,extrafield_size, comment,comment_size); s->current_file_ok = (err == UNZ_OK); if ((err == UNZ_OK) && (pfile_info != NULL)) memcpy(pfile_info, &s->cur_file_info, sizeof(unz_file_info64)); @@ -1614,24 +1663,24 @@ extern int ZEXPORT unzGoToFirstFile(unzFile file) } extern int ZEXPORT unzGoToNextFile2(unzFile file, unz_file_info64 *pfile_info, char *filename, - uLong filename_size, void *extrafield, uLong extrafield_size, char *comment, uLong comment_size) + uLong filename_size, void *extrafield, uLong extrafield_size, char *comment, uLong comment_size) { - unz64_s *s; + unz64_s* s; int err; if (file == NULL) return UNZ_PARAMERROR; - s = (unz64_s *)file; + s = (unz64_s*)file; if (!s->current_file_ok) return UNZ_END_OF_LIST_OF_FILE; if (s->gi.number_entry != 0xffff) /* 2^16 files overflow hack */ - if (s->num_file + 1 == s->gi.number_entry) - return UNZ_END_OF_LIST_OF_FILE; + if (s->num_file+1 == s->gi.number_entry) + return UNZ_END_OF_LIST_OF_FILE; s->pos_in_central_dir += SIZECENTRALDIRITEM + s->cur_file_info.size_filename + - s->cur_file_info.size_file_extra + s->cur_file_info.size_file_comment; + s->cur_file_info.size_file_extra + s->cur_file_info.size_file_comment; s->num_file++; - err = unz64local_GetCurrentFileInfoInternal(file, &s->cur_file_info, &s->cur_file_info_internal, - filename, filename_size, extrafield, extrafield_size, comment, comment_size); + err = unz64local_GetCurrentFileInfoInternal(file,&s->cur_file_info, &s->cur_file_info_internal, + filename, filename_size, extrafield,extrafield_size, comment,comment_size); s->current_file_ok = (err == UNZ_OK); if ((err == UNZ_OK) && (pfile_info != NULL)) memcpy(pfile_info, &s->cur_file_info, sizeof(unz_file_info64)); @@ -1645,19 +1694,19 @@ extern int ZEXPORT unzGoToNextFile(unzFile file) extern int ZEXPORT unzLocateFile(unzFile file, const char *filename, unzFileNameComparer filename_compare_func) { - unz64_s *s; + unz64_s* s; int err; unz_file_info64 cur_file_info_saved; unz_file_info64_internal cur_file_info_internal_saved; ZPOS64_T num_file_saved; ZPOS64_T pos_in_central_dir_saved; - char current_filename[UNZ_MAXFILENAMEINZIP + 1]; + char current_filename[UNZ_MAXFILENAMEINZIP+1]; if (file == NULL) return UNZ_PARAMERROR; if (strlen(filename) >= UNZ_MAXFILENAMEINZIP) return UNZ_PARAMERROR; - s = (unz64_s *)file; + s = (unz64_s*)file; if (!s->current_file_ok) return UNZ_END_OF_LIST_OF_FILE; @@ -1667,16 +1716,17 @@ extern int ZEXPORT unzLocateFile(unzFile file, const char *filename, unzFileName cur_file_info_saved = s->cur_file_info; cur_file_info_internal_saved = s->cur_file_info_internal; - err = unzGoToFirstFile2(file, NULL, current_filename, sizeof(current_filename) - 1, NULL, 0, NULL, 0); + err = unzGoToFirstFile2(file, NULL, current_filename, sizeof(current_filename)-1, NULL, 0, NULL, 0); - while (err == UNZ_OK) { + while (err == UNZ_OK) + { if (filename_compare_func != NULL) err = filename_compare_func(file, current_filename, filename); else err = strcmp(current_filename, filename); if (err == 0) return UNZ_OK; - err = unzGoToNextFile2(file, NULL, current_filename, sizeof(current_filename) - 1, NULL, 0, NULL, 0); + err = unzGoToNextFile2(file, NULL, current_filename, sizeof(current_filename)-1, NULL, 0, NULL, 0); } /* We failed, so restore the state of the 'current file' to where we were. */ @@ -1687,18 +1737,19 @@ extern int ZEXPORT unzLocateFile(unzFile file, const char *filename, unzFileName return err; } -extern int ZEXPORT unzGetFilePos(unzFile file, unz_file_pos *file_pos) +extern int ZEXPORT unzGetFilePos(unzFile file, unz_file_pos* file_pos) { unz64_file_pos file_pos64; - int err = unzGetFilePos64(file, &file_pos64); - if (err == UNZ_OK) { + int err = unzGetFilePos64(file,&file_pos64); + if (err == UNZ_OK) + { file_pos->pos_in_zip_directory = (uLong)file_pos64.pos_in_zip_directory; file_pos->num_of_file = (uLong)file_pos64.num_of_file; } return err; } -extern int ZEXPORT unzGoToFilePos(unzFile file, unz_file_pos *file_pos) +extern int ZEXPORT unzGoToFilePos(unzFile file, unz_file_pos* file_pos) { unz64_file_pos file_pos64; @@ -1706,40 +1757,40 @@ extern int ZEXPORT unzGoToFilePos(unzFile file, unz_file_pos *file_pos) return UNZ_PARAMERROR; file_pos64.pos_in_zip_directory = file_pos->pos_in_zip_directory; file_pos64.num_of_file = file_pos->num_of_file; - return unzGoToFilePos64(file, &file_pos64); + return unzGoToFilePos64(file,&file_pos64); } -extern int ZEXPORT unzGetFilePos64(unzFile file, unz64_file_pos *file_pos) +extern int ZEXPORT unzGetFilePos64(unzFile file, unz64_file_pos* file_pos) { - unz64_s *s; + unz64_s* s; if (file == NULL || file_pos == NULL) return UNZ_PARAMERROR; - s = (unz64_s *)file; + s = (unz64_s*)file; if (!s->current_file_ok) return UNZ_END_OF_LIST_OF_FILE; - file_pos->pos_in_zip_directory = s->pos_in_central_dir; + file_pos->pos_in_zip_directory = s->pos_in_central_dir; file_pos->num_of_file = s->num_file; return UNZ_OK; } -extern int ZEXPORT unzGoToFilePos64(unzFile file, const unz64_file_pos *file_pos) +extern int ZEXPORT unzGoToFilePos64(unzFile file, const unz64_file_pos* file_pos) { - unz64_s *s; + unz64_s* s; int err; if (file == NULL || file_pos == NULL) return UNZ_PARAMERROR; - s = (unz64_s *)file; + s = (unz64_s*)file; /* jump to the right spot */ s->pos_in_central_dir = file_pos->pos_in_zip_directory; s->num_file = file_pos->num_of_file; /* set the current file */ - err = unz64local_GetCurrentFileInfoInternal(file, &s->cur_file_info, &s->cur_file_info_internal, NULL, 0, NULL, 0, NULL, 0); + err = unz64local_GetCurrentFileInfoInternal(file,&s->cur_file_info, &s->cur_file_info_internal,NULL,0,NULL,0,NULL,0); /* return results */ s->current_file_ok = (err == UNZ_OK); return err; @@ -1757,11 +1808,11 @@ extern uLong ZEXPORT unzGetOffset(unzFile file) extern ZPOS64_T ZEXPORT unzGetOffset64(unzFile file) { - unz64_s *s; + unz64_s* s; if (file == NULL) return 0; /* UNZ_PARAMERROR; */ - s = (unz64_s *)file; + s = (unz64_s*)file; if (!s->current_file_ok) return 0; if (s->gi.number_entry != 0 && s->gi.number_entry != 0xffff) @@ -1777,63 +1828,120 @@ extern int ZEXPORT unzSetOffset(unzFile file, uLong pos) extern int ZEXPORT unzSetOffset64(unzFile file, ZPOS64_T pos) { - unz64_s *s; + unz64_s* s; int err; if (file == NULL) return UNZ_PARAMERROR; - s = (unz64_s *)file; - + s = (unz64_s*)file; s->pos_in_central_dir = pos; s->num_file = s->gi.number_entry; /* hack */ + err = unz64local_GetCurrentFileInfoInternal(file, &s->cur_file_info, &s->cur_file_info_internal, NULL, 0, NULL, 0, NULL, 0); + s->current_file_ok = (err == UNZ_OK); return err; } extern z_off_t ZEXPORT unztell(unzFile file) { - unz64_s *s; - file_in_zip64_read_info_s *pfile_in_zip_read_info; + unz64_s* s; if (file == NULL) return UNZ_PARAMERROR; - s = (unz64_s *)file; - pfile_in_zip_read_info = s->pfile_in_zip_read; - if (pfile_in_zip_read_info == NULL) + s = (unz64_s*)file; + if (s->pfile_in_zip_read == NULL) return UNZ_PARAMERROR; - return (z_off_t)pfile_in_zip_read_info->stream.total_out; + return (z_off_t)s->pfile_in_zip_read->stream.total_out; } extern ZPOS64_T ZEXPORT unztell64(unzFile file) { - - unz64_s *s; - file_in_zip64_read_info_s *pfile_in_zip_read_info; + unz64_s* s; if (file == NULL) return (ZPOS64_T)-1; - s = (unz64_s *)file; - pfile_in_zip_read_info = s->pfile_in_zip_read; - - if (pfile_in_zip_read_info == NULL) + s = (unz64_s*)file; + if (s->pfile_in_zip_read == NULL) return (ZPOS64_T)-1; + return s->pfile_in_zip_read->total_out_64; +} - return pfile_in_zip_read_info->total_out_64; +extern int ZEXPORT unzseek(unzFile file, z_off_t offset, int origin) +{ + return unzseek64(file, (ZPOS64_T)offset, origin); } -extern int ZEXPORT unzeof(unzFile file) +extern int ZEXPORT unzseek64(unzFile file, ZPOS64_T offset, int origin) { - unz64_s *s; - file_in_zip64_read_info_s *pfile_in_zip_read_info; + unz64_s* s; + ZPOS64_T stream_pos_begin; + ZPOS64_T stream_pos_end; + int isWithinBuffer; + ZPOS64_T position; + if (file == NULL) return UNZ_PARAMERROR; - s = (unz64_s *)file; - pfile_in_zip_read_info = s->pfile_in_zip_read; - if (pfile_in_zip_read_info == NULL) + s = (unz64_s*)file; + + if (s->pfile_in_zip_read == NULL) + return UNZ_ERRNO; + if (s->pfile_in_zip_read->compression_method != 0) + return UNZ_ERRNO; + + if (origin == SEEK_SET) + position = offset; + else if (origin == SEEK_CUR) + position = s->pfile_in_zip_read->total_out_64 + offset; + else if (origin == SEEK_END) + position = s->cur_file_info.compressed_size + offset; + else return UNZ_PARAMERROR; - if (pfile_in_zip_read_info->rest_read_uncompressed == 0) + if (position > s->cur_file_info.compressed_size) + return UNZ_PARAMERROR; + + stream_pos_end = s->pfile_in_zip_read->pos_in_zipfile; + stream_pos_begin = stream_pos_end; + + if (stream_pos_begin > UNZ_BUFSIZE) + stream_pos_begin -= UNZ_BUFSIZE; + else + stream_pos_begin = 0; + + isWithinBuffer = s->pfile_in_zip_read->stream.avail_in != 0 && + (s->pfile_in_zip_read->rest_read_compressed != 0 || s->cur_file_info.compressed_size < UNZ_BUFSIZE) && + position >= stream_pos_begin && position < stream_pos_end; + + if (isWithinBuffer) + { + s->pfile_in_zip_read->stream.next_in += position - s->pfile_in_zip_read->total_out_64; + s->pfile_in_zip_read->stream.avail_in = (uInt)(stream_pos_end - position); + } + else + { + s->pfile_in_zip_read->stream.avail_in = 0; + s->pfile_in_zip_read->stream.next_in = 0; + + s->pfile_in_zip_read->pos_in_zipfile = s->pfile_in_zip_read->offset_local_extrafield + position; + s->pfile_in_zip_read->rest_read_compressed = s->cur_file_info.compressed_size - position; + } + + s->pfile_in_zip_read->rest_read_uncompressed -= (position - s->pfile_in_zip_read->total_out_64); + s->pfile_in_zip_read->stream.total_out = (uLong)position; + s->pfile_in_zip_read->total_out_64 = position; + + return UNZ_OK; +} + +extern int ZEXPORT unzeof(unzFile file) +{ + unz64_s* s; + if (file == NULL) + return UNZ_PARAMERROR; + s = (unz64_s*)file; + if (s->pfile_in_zip_read == NULL) + return UNZ_PARAMERROR; + if (s->pfile_in_zip_read->rest_read_uncompressed == 0) return 1; return 0; } - diff --git a/Zip/minizip/unzip.h b/Zip/minizip/unzip.h index 02c4c58..217c202 100755 --- a/Zip/minizip/unzip.h +++ b/Zip/minizip/unzip.h @@ -14,13 +14,9 @@ See the accompanying LICENSE file for the full text of the license. */ -#include "Common.h" - #ifndef _UNZ_H #define _UNZ_H -#define HAVE_AES - #ifdef __cplusplus extern "C" { #endif @@ -29,7 +25,7 @@ extern "C" { #include "zlib.h" #endif -#ifndef _ZLIBIOAPI_H +#ifndef _ZLIBIOAPI_H #include "ioapi.h" #endif @@ -48,7 +44,6 @@ typedef unzFile__ *unzFile; typedef voidp unzFile; #endif - #define UNZ_OK (0) #define UNZ_END_OF_LIST_OF_FILE (-100) #define UNZ_ERRNO (Z_ERRNO) @@ -58,6 +53,78 @@ typedef voidp unzFile; #define UNZ_INTERNALERROR (-104) #define UNZ_CRCERROR (-105) +/* tm_unz contain date/time info */ +typedef struct tm_unz_s +{ + uInt tm_sec; /* seconds after the minute - [0,59] */ + uInt tm_min; /* minutes after the hour - [0,59] */ + uInt tm_hour; /* hours since midnight - [0,23] */ + uInt tm_mday; /* day of the month - [1,31] */ + uInt tm_mon; /* months since January - [0,11] */ + uInt tm_year; /* years - [1980..2044] */ +} tm_unz; + +/* unz_global_info structure contain global data about the ZIPfile + These data comes from the end of central dir */ +typedef struct unz_global_info64_s +{ + ZPOS64_T number_entry; /* total number of entries in the central dir on this disk */ + uLong number_disk_with_CD; /* number the the disk with central dir, used for spanning ZIP*/ + uLong size_comment; /* size of the global comment of the zipfile */ +} unz_global_info64; + +typedef struct unz_global_info_s +{ + uLong number_entry; /* total number of entries in the central dir on this disk */ + uLong number_disk_with_CD; /* number the the disk with central dir, used for spanning ZIP*/ + uLong size_comment; /* size of the global comment of the zipfile */ +} unz_global_info; + +/* unz_file_info contain information about a file in the zipfile */ +typedef struct unz_file_info64_s +{ + uLong version; /* version made by 2 bytes */ + uLong version_needed; /* version needed to extract 2 bytes */ + uLong flag; /* general purpose bit flag 2 bytes */ + uLong compression_method; /* compression method 2 bytes */ + uLong dosDate; /* last mod file date in Dos fmt 4 bytes */ + uLong crc; /* crc-32 4 bytes */ + ZPOS64_T compressed_size; /* compressed size 8 bytes */ + ZPOS64_T uncompressed_size; /* uncompressed size 8 bytes */ + uLong size_filename; /* filename length 2 bytes */ + uLong size_file_extra; /* extra field length 2 bytes */ + uLong size_file_comment; /* file comment length 2 bytes */ + + uLong disk_num_start; /* disk number start 2 bytes */ + uLong internal_fa; /* internal file attributes 2 bytes */ + uLong external_fa; /* external file attributes 4 bytes */ + + tm_unz tmu_date; + ZPOS64_T disk_offset; + uLong size_file_extra_internal; +} unz_file_info64; + +typedef struct unz_file_info_s +{ + uLong version; /* version made by 2 bytes */ + uLong version_needed; /* version needed to extract 2 bytes */ + uLong flag; /* general purpose bit flag 2 bytes */ + uLong compression_method; /* compression method 2 bytes */ + uLong dosDate; /* last mod file date in Dos fmt 4 bytes */ + uLong crc; /* crc-32 4 bytes */ + uLong compressed_size; /* compressed size 4 bytes */ + uLong uncompressed_size; /* uncompressed size 4 bytes */ + uLong size_filename; /* filename length 2 bytes */ + uLong size_file_extra; /* extra field length 2 bytes */ + uLong size_file_comment; /* file comment length 2 bytes */ + + uLong disk_num_start; /* disk number start 2 bytes */ + uLong internal_fa; /* internal file attributes 2 bytes */ + uLong external_fa; /* external file attributes 4 bytes */ + + tm_unz tmu_date; + uLong disk_offset; +} unz_file_info; /***************************************************************************/ /* Opening and close a zip file */ @@ -236,6 +303,10 @@ extern z_off_t ZEXPORT unztell OF((unzFile file)); extern ZPOS64_T ZEXPORT unztell64 OF((unzFile file)); /* return current position in uncompressed data */ +extern int ZEXPORT unzseek OF((unzFile file, z_off_t offset, int origin)); +extern int ZEXPORT unzseek64 OF((unzFile file, ZPOS64_T offset, int origin)); +/* Seek within the uncompressed data if compression method is storage */ + extern int ZEXPORT unzeof OF((unzFile file)); /* return 1 if the end of file was reached, 0 elsewhere */ diff --git a/Zip/minizip/zip.c b/Zip/minizip/zip.c index b88bd88..53fdf5a 100755 --- a/Zip/minizip/zip.c +++ b/Zip/minizip/zip.c @@ -12,7 +12,7 @@ This program is distributed under the terms of the same license as zlib. See the accompanying LICENSE file for the full text of the license. - */ +*/ #include #include @@ -27,7 +27,7 @@ # include #endif #ifdef NO_ERRNO_H -extern int errno; + extern int errno; #else # include #endif @@ -40,10 +40,10 @@ extern int errno; # define AES_VERSION (0x0001) # define AES_ENCRYPTIONMODE (0x03) -# include "aes.h" -# include "fileenc.h" -# include "prng.h" -# include "entropy.h" +# include "aes/aes.h" +# include "aes/fileenc.h" +# include "aes/prng.h" +# include "aes/entropy.h" #endif #ifndef NOCRYPT @@ -56,7 +56,7 @@ extern int errno; #endif /* compile with -Dlocal if your debugger can't find static symbols */ -#define SIZEDATA_INDATABLOCK (4096 - (4 * 4)) +#define SIZEDATA_INDATABLOCK (4096-(4*4)) #define DISKHEADERMAGIC (0x08074b50) #define LOCALHEADERMAGIC (0x04034b50) @@ -81,7 +81,7 @@ extern int errno; #endif #ifndef Z_BUFSIZE -# define Z_BUFSIZE (64 * 1024) +# define Z_BUFSIZE (64*1024) #endif #ifndef Z_MAXFILENAMEINZIP # define Z_MAXFILENAMEINZIP (256) @@ -91,7 +91,7 @@ extern int errno; # define ALLOC(size) (malloc(size)) #endif #ifndef TRYFREE -# define TRYFREE(p) {if (p) free(p); } +# define TRYFREE(p) {if (p) free(p);} #endif /* NOT sure that this work on ALL platform */ @@ -107,20 +107,23 @@ extern int errno; const char zip_copyright[] = " zip 1.01 Copyright 1998-2004 Gilles Vollant - http://www.winimage.com/zLibDll"; -typedef struct linkedlist_datablock_internal_s { - struct linkedlist_datablock_internal_s *next_datablock; - uLong avail_in_this_block; - uLong filled_in_this_block; - uLong unused; /* for future use and alignment */ +typedef struct linkedlist_datablock_internal_s +{ + struct linkedlist_datablock_internal_s* next_datablock; + uLong avail_in_this_block; + uLong filled_in_this_block; + uLong unused; /* for future use and alignment */ unsigned char data[SIZEDATA_INDATABLOCK]; } linkedlist_datablock_internal; -typedef struct linkedlist_data_s { - linkedlist_datablock_internal *first_block; - linkedlist_datablock_internal *last_block; +typedef struct linkedlist_data_s +{ + linkedlist_datablock_internal* first_block; + linkedlist_datablock_internal* last_block; } linkedlist_data; -typedef struct { +typedef struct +{ z_stream stream; /* zLib stream structure for inflate */ #ifdef HAVE_BZIP2 bz_stream bstream; /* bzLib stream structure for bziped */ @@ -129,36 +132,37 @@ typedef struct { fcrypt_ctx aes_ctx; prng_ctx aes_rng[1]; #endif - int stream_initialised; /* 1 is stream is initialized */ + int stream_initialised; /* 1 is stream is initialized */ uInt pos_in_buffered_data; /* last written byte in buffered_data */ ZPOS64_T pos_local_header; /* offset of the local header of the file currently writing */ - char *central_header; /* central header data for the current file */ + char* central_header; /* central header data for the current file */ uLong size_centralextra; uLong size_centralheader; /* size of the central header for cur file */ uLong size_centralextrafree; /* Extra bytes allocated to the central header but that are not used */ uLong size_comment; uLong flag; /* flag of the file currently writing */ - int method; /* compression method written to file.*/ - int compression_method; /* compression method to use */ - int raw; /* 1 for directly writing raw data */ + int method; /* compression method written to file.*/ + int compression_method; /* compression method to use */ + int raw; /* 1 for directly writing raw data */ Byte buffered_data[Z_BUFSIZE]; /* buffer contain compressed data to be writ*/ uLong dosDate; uLong crc32; - int zip64; /* Add ZIP64 extended information in the extra field */ + int zip64; /* Add ZIP64 extended information in the extra field */ uLong number_disk; /* number of current disk used for spanning ZIP */ ZPOS64_T pos_zip64extrainfo; ZPOS64_T total_compressed; ZPOS64_T total_uncompressed; #ifndef NOCRYPT unsigned long keys[3]; /* keys defining the pseudo-random sequence */ - const unsigned long *pcrc_32_tab; + const unsigned long* pcrc_32_tab; int crypt_header_size; #endif } curfile64_info; -typedef struct { +typedef struct +{ zlib_filefunc64_32_def z_filefunc; voidpf filestream; /* io structure of the zipfile */ voidpf filestream_with_CD; /* io structure of the zipfile with the central dir */ @@ -179,14 +183,15 @@ typedef struct { } zip64_internal; /* Allocate a new data block */ -local linkedlist_datablock_internal *allocate_new_datablock OF(()); -local linkedlist_datablock_internal *allocate_new_datablock() +local linkedlist_datablock_internal* allocate_new_datablock OF(()); +local linkedlist_datablock_internal* allocate_new_datablock() { - linkedlist_datablock_internal *ldi; + linkedlist_datablock_internal* ldi; - ldi = (linkedlist_datablock_internal *)ALLOC(sizeof(linkedlist_datablock_internal)); + ldi = (linkedlist_datablock_internal*)ALLOC(sizeof(linkedlist_datablock_internal)); - if (ldi != NULL) { + if (ldi != NULL) + { ldi->next_datablock = NULL; ldi->filled_in_this_block = 0; ldi->avail_in_this_block = SIZEDATA_INDATABLOCK; @@ -195,60 +200,64 @@ local linkedlist_datablock_internal *allocate_new_datablock() } /* Free data block in linked list */ -local void free_datablock OF((linkedlist_datablock_internal * ldi)); -local void free_datablock(linkedlist_datablock_internal *ldi) +local void free_datablock OF((linkedlist_datablock_internal* ldi)); +local void free_datablock(linkedlist_datablock_internal* ldi) { - while (ldi != NULL) { - linkedlist_datablock_internal *ldinext = ldi->next_datablock; + while (ldi != NULL) + { + linkedlist_datablock_internal* ldinext = ldi->next_datablock; TRYFREE(ldi); ldi = ldinext; } } /* Initialize linked list */ -local void init_linkedlist OF((linkedlist_data * ll)); -local void init_linkedlist(linkedlist_data *ll) +local void init_linkedlist OF((linkedlist_data* ll)); +local void init_linkedlist(linkedlist_data* ll) { ll->first_block = ll->last_block = NULL; } /* Free entire linked list and all data blocks */ -local void free_linkedlist OF((linkedlist_data * ll)); -local void free_linkedlist(linkedlist_data *ll) +local void free_linkedlist OF((linkedlist_data* ll)); +local void free_linkedlist(linkedlist_data* ll) { free_datablock(ll->first_block); ll->first_block = ll->last_block = NULL; } /* Add data to linked list data block */ -local int add_data_in_datablock OF((linkedlist_data * ll, const void *buf, uLong len)); -local int add_data_in_datablock(linkedlist_data *ll, const void *buf, uLong len) +local int add_data_in_datablock OF((linkedlist_data* ll, const void* buf, uLong len)); +local int add_data_in_datablock(linkedlist_data* ll, const void* buf, uLong len) { - linkedlist_datablock_internal *ldi; - const unsigned char *from_copy; + linkedlist_datablock_internal* ldi; + const unsigned char* from_copy; if (ll == NULL) return ZIP_INTERNALERROR; - if (ll->last_block == NULL) { + if (ll->last_block == NULL) + { ll->first_block = ll->last_block = allocate_new_datablock(); if (ll->first_block == NULL) return ZIP_INTERNALERROR; } ldi = ll->last_block; - from_copy = (unsigned char *)buf; + from_copy = (unsigned char*)buf; - while (len > 0) { + while (len > 0) + { uInt copy_this; uInt i; - unsigned char *to_copy; + unsigned char* to_copy; - if (ldi->avail_in_this_block == 0) { + if (ldi->avail_in_this_block == 0) + { ldi->next_datablock = allocate_new_datablock(); if (ldi->next_datablock == NULL) return ZIP_INTERNALERROR; - ldi = ldi->next_datablock; + ldi = ldi->next_datablock ; ll->last_block = ldi; } @@ -260,7 +269,7 @@ local int add_data_in_datablock(linkedlist_data *ll, const void *buf, uLong len) to_copy = &(ldi->data[ldi->filled_in_this_block]); for (i = 0; i < copy_this; i++) - *(to_copy + i) = *(from_copy + i); + *(to_copy+i) = *(from_copy+i); ldi->filled_in_this_block += copy_this; ldi->avail_in_this_block -= copy_this; @@ -270,25 +279,25 @@ local int add_data_in_datablock(linkedlist_data *ll, const void *buf, uLong len) return ZIP_OK; } -local uLong zip64local_TmzDateToDosDate OF((const tm_zip * ptm)); -local uLong zip64local_TmzDateToDosDate(const tm_zip *ptm) +local uLong zip64local_TmzDateToDosDate OF((const tm_zip* ptm)); +local uLong zip64local_TmzDateToDosDate(const tm_zip* ptm) { uLong year; #define zip64local_in_range(min, max, value) ((min) <= (value) && (value) <= (max)) /* Years supported: - * [00, 79] (assumed to be between 2000 and 2079) - * [80, 207] (assumed to be between 1980 and 2107, typical output of old + * [00, 79] (assumed to be between 2000 and 2079) + * [80, 207] (assumed to be between 1980 and 2107, typical output of old software that does 'year-1900' to get a double digit year) - * [1980, 2107] + * [1980, 2107] Due to the date format limitations, only years between 1980 and 2107 can be stored. - */ + */ if (!(zip64local_in_range(1980, 2107, ptm->tm_year) || zip64local_in_range(0, 207, ptm->tm_year)) || !zip64local_in_range(0, 11, ptm->tm_mon) || !zip64local_in_range(1, 31, ptm->tm_mday) || !zip64local_in_range(0, 23, ptm->tm_hour) || !zip64local_in_range(0, 59, ptm->tm_min) || !zip64local_in_range(0, 59, ptm->tm_sec)) - return 0; + return 0; #undef zip64local_in_range year = (uLong)ptm->tm_year; @@ -299,60 +308,65 @@ local uLong zip64local_TmzDateToDosDate(const tm_zip *ptm) else /* range [00, 79] */ year += 20; - return - (uLong)(((ptm->tm_mday) + (32 * (ptm->tm_mon + 1)) + (512 * year)) << 16) | + return (uLong)(((ptm->tm_mday) + (32 * (ptm->tm_mon+1)) + (512 * year)) << 16) | ((ptm->tm_sec / 2) + (32 * ptm->tm_min) + (2048 * (uLong)ptm->tm_hour)); } /* Inputs a long in LSB order to the given file: nbByte == 1, 2 ,4 or 8 (byte, short or long, ZPOS64_T) */ -local int zip64local_putValue OF((const zlib_filefunc64_32_def * pzlib_filefunc_def, voidpf filestream, - ZPOS64_T x, int nbByte)); -local int zip64local_putValue(const zlib_filefunc64_32_def *pzlib_filefunc_def, voidpf filestream, - ZPOS64_T x, int nbByte) +local int zip64local_putValue OF((const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream, + ZPOS64_T x, int nbByte)); +local int zip64local_putValue (const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream, + ZPOS64_T x, int nbByte) { unsigned char buf[8]; int n; - for (n = 0; n < nbByte; n++) { + for (n = 0; n < nbByte; n++) + { buf[n] = (unsigned char)(x & 0xff); x >>= 8; } - if (x != 0) { - /* data overflow - hack for ZIP64 (X Roche) */ - for (n = 0; n < nbByte; n++) { + if (x != 0) + { + /* Data overflow - hack for ZIP64 (X Roche) */ + for (n = 0; n < nbByte; n++) + { buf[n] = 0xff; } } - if (ZWRITE64(*pzlib_filefunc_def, filestream, buf, nbByte) != (uLong)nbByte) + if (ZWRITE64(*pzlib_filefunc_def,filestream,buf,nbByte)!=(uLong)nbByte) return ZIP_ERRNO; return ZIP_OK; } -local void zip64local_putValue_inmemory OF((void *dest, ZPOS64_T x, int nbByte)); -local void zip64local_putValue_inmemory(void *dest, ZPOS64_T x, int nbByte) +local void zip64local_putValue_inmemory OF((void* dest, ZPOS64_T x, int nbByte)); +local void zip64local_putValue_inmemory (void* dest, ZPOS64_T x, int nbByte) { - unsigned char *buf = (unsigned char *)dest; + unsigned char* buf =(unsigned char*)dest; int n; for (n = 0; n < nbByte; n++) { buf[n] = (unsigned char)(x & 0xff); x >>= 8; } - if (x != 0) { - /* data overflow - hack for ZIP64 */ - for (n = 0; n < nbByte; n++) { - buf[n] = 0xff; - } + if (x != 0) + { + /* data overflow - hack for ZIP64 */ + for (n = 0; n < nbByte; n++) + { + buf[n] = 0xff; + } } } -local int zip64local_getByte OF((const zlib_filefunc64_32_def * pzlib_filefunc_def, voidpf filestream, int *pi)); -local int zip64local_getByte(const zlib_filefunc64_32_def *pzlib_filefunc_def, voidpf filestream, int *pi) +local int zip64local_getByte OF((const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream, int *pi)); +local int zip64local_getByte(const zlib_filefunc64_32_def* pzlib_filefunc_def,voidpf filestream,int* pi) { unsigned char c; - int err = (int)ZREAD64(*pzlib_filefunc_def, filestream, &c, 1); - if (err == 1) { + int err = (int)ZREAD64(*pzlib_filefunc_def, filestream, &c,1); + if (err == 1) + { *pi = (int)c; return ZIP_OK; } @@ -361,8 +375,8 @@ local int zip64local_getByte(const zlib_filefunc64_32_def *pzlib_filefunc_def, v return ZIP_EOF; } -local int zip64local_getShort OF((const zlib_filefunc64_32_def * pzlib_filefunc_def, voidpf filestream, uLong * pX)); -local int zip64local_getShort(const zlib_filefunc64_32_def *pzlib_filefunc_def, voidpf filestream, uLong *pX) +local int zip64local_getShort OF((const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream, uLong *pX)); +local int zip64local_getShort (const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream, uLong* pX) { uLong x; int i = 0; @@ -381,8 +395,8 @@ local int zip64local_getShort(const zlib_filefunc64_32_def *pzlib_filefunc_def, return err; } -local int zip64local_getLong OF((const zlib_filefunc64_32_def * pzlib_filefunc_def, voidpf filestream, uLong * pX)); -local int zip64local_getLong(const zlib_filefunc64_32_def *pzlib_filefunc_def, voidpf filestream, uLong *pX) +local int zip64local_getLong OF((const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream, uLong *pX)); +local int zip64local_getLong (const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream, uLong* pX) { uLong x; int i = 0; @@ -407,8 +421,8 @@ local int zip64local_getLong(const zlib_filefunc64_32_def *pzlib_filefunc_def, v return err; } -local int zip64local_getLong64 OF((const zlib_filefunc64_32_def * pzlib_filefunc_def, voidpf filestream, ZPOS64_T * pX)); -local int zip64local_getLong64(const zlib_filefunc64_32_def *pzlib_filefunc_def, voidpf filestream, ZPOS64_T *pX) +local int zip64local_getLong64 OF((const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream, ZPOS64_T *pX)); +local int zip64local_getLong64 (const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream, ZPOS64_T *pX) { ZPOS64_T x; int i = 0; @@ -447,13 +461,13 @@ local int zip64local_getLong64(const zlib_filefunc64_32_def *pzlib_filefunc_def, } /* Gets the amount of bytes left to write to the current disk for spanning archives */ -local int zipGetDiskSizeAvailable OF((zipFile file, ZPOS64_T * size_available)); +local int zipGetDiskSizeAvailable OF((zipFile file, ZPOS64_T *size_available)); local int zipGetDiskSizeAvailable(zipFile file, ZPOS64_T *size_available) { - zip64_internal *zi; + zip64_internal* zi; ZPOS64_T current_disk_size; - zi = (zip64_internal *)file; + zi = (zip64_internal*)file; ZSEEK64(zi->z_filefunc, zi->filestream, 0, ZLIB_FILEFUNC_SEEK_END); current_disk_size = ZTELL64(zi->z_filefunc, zi->filestream); *size_available = zi->disk_size - current_disk_size; @@ -464,10 +478,10 @@ local int zipGetDiskSizeAvailable(zipFile file, ZPOS64_T *size_available) local int zipGoToSpecificDisk OF((zipFile file, int number_disk, int open_existing)); local int zipGoToSpecificDisk(zipFile file, int number_disk, int open_existing) { - zip64_internal *zi; + zip64_internal* zi; int err = ZIP_OK; - zi = (zip64_internal *)file; + zi = (zip64_internal*)file; if (zi->disk_size == 0) return err; @@ -475,8 +489,8 @@ local int zipGoToSpecificDisk(zipFile file, int number_disk, int open_existing) ZCLOSE64(zi->z_filefunc, zi->filestream); zi->filestream = ZOPENDISK64(zi->z_filefunc, zi->filestream_with_CD, number_disk, (open_existing == 1) ? - (ZLIB_FILEFUNC_MODE_READ | ZLIB_FILEFUNC_MODE_WRITE | ZLIB_FILEFUNC_MODE_EXISTING) : - (ZLIB_FILEFUNC_MODE_READ | ZLIB_FILEFUNC_MODE_WRITE | ZLIB_FILEFUNC_MODE_CREATE)); + (ZLIB_FILEFUNC_MODE_READ | ZLIB_FILEFUNC_MODE_WRITE | ZLIB_FILEFUNC_MODE_EXISTING) : + (ZLIB_FILEFUNC_MODE_READ | ZLIB_FILEFUNC_MODE_WRITE | ZLIB_FILEFUNC_MODE_CREATE)); if (zi->filestream == NULL) err = ZIP_ERRNO; @@ -488,17 +502,17 @@ local int zipGoToSpecificDisk(zipFile file, int number_disk, int open_existing) local int zipGoToFirstDisk OF((zipFile file)); local int zipGoToFirstDisk(zipFile file) { - zip64_internal *zi; + zip64_internal* zi; int number_disk_next; int err = ZIP_OK; - zi = (zip64_internal *)file; + zi = (zip64_internal*)file; if (zi->disk_size == 0) return err; number_disk_next = 0; if (zi->number_disk_with_CD > 0) - number_disk_next = (int)zi->number_disk_with_CD - 1; + number_disk_next = zi->number_disk_with_CD - 1; err = zipGoToSpecificDisk(file, number_disk_next, (zi->append == APPEND_STATUS_ADDINZIP)); if ((err == ZIP_ERRNO) && (zi->append == APPEND_STATUS_ADDINZIP)) err = zipGoToSpecificDisk(file, number_disk_next, 0); @@ -512,19 +526,20 @@ local int zipGoToFirstDisk(zipFile file) local int zipGoToNextDisk OF((zipFile file)); local int zipGoToNextDisk(zipFile file) { - zip64_internal *zi; + zip64_internal* zi; ZPOS64_T size_available_in_disk; int err = ZIP_OK; int number_disk_next; - zi = (zip64_internal *)file; + zi = (zip64_internal*)file; if (zi->disk_size == 0) return err; - number_disk_next = (int)zi->number_disk + 1; + number_disk_next = zi->number_disk + 1; - do { + do + { err = zipGoToSpecificDisk(file, number_disk_next, (zi->append == APPEND_STATUS_ADDINZIP)); if ((err == ZIP_ERRNO) && (zi->append == APPEND_STATUS_ADDINZIP)) err = zipGoToSpecificDisk(file, number_disk_next, 0); @@ -537,29 +552,31 @@ local int zipGoToNextDisk(zipFile file) zi->number_disk_with_CD = zi->number_disk + 1; number_disk_next += 1; - } while (size_available_in_disk <= 0); + } + while (size_available_in_disk <= 0); return err; } /* Locate the Central directory of a zipfile (at the end, just before the global comment) */ -local ZPOS64_T zip64local_SearchCentralDir OF((const zlib_filefunc64_32_def * pzlib_filefunc_def, voidpf filestream)); -local ZPOS64_T zip64local_SearchCentralDir(const zlib_filefunc64_32_def *pzlib_filefunc_def, voidpf filestream) +local ZPOS64_T zip64local_SearchCentralDir OF((const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream)); +local ZPOS64_T zip64local_SearchCentralDir(const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream) { - unsigned char *buf; + unsigned char* buf; ZPOS64_T file_size; ZPOS64_T back_read = 4; - ZPOS64_T max_back = 0xffff; /* maximum size of global comment */ - ZPOS64_T pos_found = 0; + ZPOS64_T max_back=0xffff; /* maximum size of global comment */ + ZPOS64_T pos_found=0; uLong read_size; ZPOS64_T read_pos; int i; - buf = (unsigned char *)ALLOC(BUFREADCOMMENT + 4); + buf = (unsigned char*)ALLOC(BUFREADCOMMENT+4); if (buf == NULL) return 0; - if (ZSEEK64(*pzlib_filefunc_def, filestream, 0, ZLIB_FILEFUNC_SEEK_END) != 0) { + if (ZSEEK64(*pzlib_filefunc_def, filestream, 0, ZLIB_FILEFUNC_SEEK_END) != 0) + { TRYFREE(buf); return 0; } @@ -569,27 +586,29 @@ local ZPOS64_T zip64local_SearchCentralDir(const zlib_filefunc64_32_def *pzlib_f if (max_back > file_size) max_back = file_size; - while (back_read < max_back) { + while (back_read < max_back) + { if (back_read + BUFREADCOMMENT > max_back) back_read = max_back; else back_read += BUFREADCOMMENT; - read_pos = file_size - back_read; - read_size = ((BUFREADCOMMENT + 4) < (file_size - read_pos)) ? - (BUFREADCOMMENT + 4) : (uLong)(file_size - read_pos); + read_pos = file_size-back_read; + read_size = ((BUFREADCOMMENT+4) < (file_size-read_pos)) ? + (BUFREADCOMMENT+4) : (uLong)(file_size-read_pos); if (ZSEEK64(*pzlib_filefunc_def, filestream, read_pos, ZLIB_FILEFUNC_SEEK_SET) != 0) break; if (ZREAD64(*pzlib_filefunc_def, filestream, buf, read_size) != read_size) break; - for (i = (int)read_size - 3; (i--) > 0; ) - if ((*(buf + i)) == (ENDHEADERMAGIC & 0xff) && - (*(buf + i + 1)) == (ENDHEADERMAGIC >> 8 & 0xff) && - (*(buf + i + 2)) == (ENDHEADERMAGIC >> 16 & 0xff) && - (*(buf + i + 3)) == (ENDHEADERMAGIC >> 24 & 0xff)) { - pos_found = read_pos + i; + for (i = (int)read_size-3; (i--) > 0;) + if ((*(buf+i)) == (ENDHEADERMAGIC & 0xff) && + (*(buf+i+1)) == (ENDHEADERMAGIC >> 8 & 0xff) && + (*(buf+i+2)) == (ENDHEADERMAGIC >> 16 & 0xff) && + (*(buf+i+3)) == (ENDHEADERMAGIC >> 24 & 0xff)) + { + pos_found = read_pos+i; break; } @@ -601,10 +620,10 @@ local ZPOS64_T zip64local_SearchCentralDir(const zlib_filefunc64_32_def *pzlib_f } /* Locate the Central directory 64 of a zipfile (at the end, just before the global comment) */ -local ZPOS64_T zip64local_SearchCentralDir64 OF((const zlib_filefunc64_32_def * pzlib_filefunc_def, voidpf filestream, - const ZPOS64_T endcentraloffset)); -local ZPOS64_T zip64local_SearchCentralDir64(const zlib_filefunc64_32_def *pzlib_filefunc_def, voidpf filestream, - const ZPOS64_T endcentraloffset) +local ZPOS64_T zip64local_SearchCentralDir64 OF((const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream, + const ZPOS64_T endcentraloffset)); +local ZPOS64_T zip64local_SearchCentralDir64(const zlib_filefunc64_32_def* pzlib_filefunc_def, voidpf filestream, + const ZPOS64_T endcentraloffset) { ZPOS64_T offset; uLong uL; @@ -613,24 +632,24 @@ local ZPOS64_T zip64local_SearchCentralDir64(const zlib_filefunc64_32_def *pzlib if (ZSEEK64(*pzlib_filefunc_def, filestream, endcentraloffset - SIZECENTRALHEADERLOCATOR, ZLIB_FILEFUNC_SEEK_SET) != 0) return 0; - /* read locator signature */ + /* Read locator signature */ if (zip64local_getLong(pzlib_filefunc_def, filestream, &uL) != ZIP_OK) return 0; if (uL != ZIP64ENDLOCHEADERMAGIC) return 0; - /* number of the disk with the start of the zip64 end of central directory */ + /* Number of the disk with the start of the zip64 end of central directory */ if (zip64local_getLong(pzlib_filefunc_def, filestream, &uL) != ZIP_OK) return 0; - /* relative offset of the zip64 end of central directory record */ + /* Relative offset of the zip64 end of central directory record */ if (zip64local_getLong64(pzlib_filefunc_def, filestream, &offset) != ZIP_OK) return 0; - /* total number of disks */ + /* Total number of disks */ if (zip64local_getLong(pzlib_filefunc_def, filestream, &uL) != ZIP_OK) return 0; /* Goto end of central directory record */ - if (ZSEEK64(*pzlib_filefunc_def, filestream, offset, ZLIB_FILEFUNC_SEEK_SET) != 0) + if (ZSEEK64(*pzlib_filefunc_def,filestream, offset, ZLIB_FILEFUNC_SEEK_SET) != 0) return 0; - /* the signature */ + /* The signature */ if (zip64local_getLong(pzlib_filefunc_def, filestream, &uL) != ZIP_OK) return 0; if (uL != ZIP64ENDHEADERMAGIC) @@ -639,23 +658,23 @@ local ZPOS64_T zip64local_SearchCentralDir64(const zlib_filefunc64_32_def *pzlib return offset; } -extern zipFile ZEXPORT zipOpen4(const void *pathname, int append, ZPOS64_T disk_size, zipcharpc *globalcomment, - zlib_filefunc64_32_def *pzlib_filefunc64_32_def) +extern zipFile ZEXPORT zipOpen4(const void *pathname, int append, ZPOS64_T disk_size, const char ** globalcomment, + zlib_filefunc64_32_def* pzlib_filefunc64_32_def) { zip64_internal ziinit; - zip64_internal *zi; + zip64_internal* zi; #ifndef NO_ADDFILEINEXISTINGZIP ZPOS64_T byte_before_the_zipfile; /* byte before the zipfile, (>0 for sfx)*/ - ZPOS64_T size_central_dir = 0; /* size of the central directory */ - ZPOS64_T offset_central_dir = 0; /* offset of start of central directory */ - ZPOS64_T number_entry_CD = 0; /* total number of entries in the central dir */ + ZPOS64_T size_central_dir; /* size of the central directory */ + ZPOS64_T offset_central_dir; /* offset of start of central directory */ + ZPOS64_T number_entry_CD; /* total number of entries in the central dir */ ZPOS64_T number_entry; ZPOS64_T central_pos; ZPOS64_T size_central_dir_to_read; uLong uL; - uLong size_comment = 0; + uLong size_comment; size_t buf_size = SIZEDATA_INDATABLOCK; - void *buf_read; + void* buf_read; #endif int err = ZIP_OK; int mode; @@ -676,12 +695,13 @@ extern zipFile ZEXPORT zipOpen4(const void *pathname, int append, ZPOS64_T disk_ if (ziinit.filestream == NULL) return NULL; - if (append == APPEND_STATUS_CREATEAFTER) { + if (append == APPEND_STATUS_CREATEAFTER) + { /* Don't support spanning ZIP with APPEND_STATUS_CREATEAFTER */ if (disk_size > 0) return NULL; - ZSEEK64(ziinit.z_filefunc, ziinit.filestream, 0, SEEK_END); + ZSEEK64(ziinit.z_filefunc,ziinit.filestream,0,SEEK_END); } ziinit.filestream_with_CD = ziinit.filestream; @@ -689,153 +709,161 @@ extern zipFile ZEXPORT zipOpen4(const void *pathname, int append, ZPOS64_T disk_ ziinit.number_disk = 0; ziinit.number_disk_with_CD = 0; ziinit.disk_size = disk_size; - ziinit.begin_pos = ZTELL64(ziinit.z_filefunc, ziinit.filestream); + ziinit.begin_pos = ZTELL64(ziinit.z_filefunc,ziinit.filestream); ziinit.in_opened_file_inzip = 0; ziinit.ci.stream_initialised = 0; ziinit.number_entry = 0; ziinit.add_position_when_writting_offset = 0; init_linkedlist(&(ziinit.central_dir)); - zi = (zip64_internal *)ALLOC(sizeof(zip64_internal)); - if (zi == NULL) { - ZCLOSE64(ziinit.z_filefunc, ziinit.filestream); + zi = (zip64_internal*)ALLOC(sizeof(zip64_internal)); + if (zi == NULL) + { + ZCLOSE64(ziinit.z_filefunc,ziinit.filestream); return NULL; } #ifndef NO_ADDFILEINEXISTINGZIP /* Add file in a zipfile */ ziinit.globalcomment = NULL; - if (append == APPEND_STATUS_ADDINZIP) { + if (append == APPEND_STATUS_ADDINZIP) + { /* Read and Cache Central Directory Records */ - central_pos = zip64local_SearchCentralDir(&ziinit.z_filefunc, ziinit.filestream); - /* disable to allow appending to empty ZIP archive (must be standard zip, not zip64) + central_pos = zip64local_SearchCentralDir(&ziinit.z_filefunc,ziinit.filestream); + /* Disable to allow appending to empty ZIP archive (must be standard zip, not zip64) if (central_pos == 0) err = ZIP_ERRNO; - */ + */ - if (err == ZIP_OK) { - /* read end of central directory info */ - if (ZSEEK64(ziinit.z_filefunc, ziinit.filestream, central_pos, ZLIB_FILEFUNC_SEEK_SET) != 0) + if (err == ZIP_OK) + { + /* Read end of central directory info */ + if (ZSEEK64(ziinit.z_filefunc, ziinit.filestream, central_pos,ZLIB_FILEFUNC_SEEK_SET) != 0) err = ZIP_ERRNO; - /* the signature, already checked */ + /* The signature, already checked */ if (zip64local_getLong(&ziinit.z_filefunc, ziinit.filestream, &uL) != ZIP_OK) err = ZIP_ERRNO; - /* number of this disk */ + /* Number of this disk */ if (zip64local_getShort(&ziinit.z_filefunc, ziinit.filestream, &ziinit.number_disk) != ZIP_OK) err = ZIP_ERRNO; - /* number of the disk with the start of the central directory */ + /* Number of the disk with the start of the central directory */ if (zip64local_getShort(&ziinit.z_filefunc, ziinit.filestream, &ziinit.number_disk_with_CD) != ZIP_OK) err = ZIP_ERRNO; - /* total number of entries in the central dir on this disk */ + /* Total number of entries in the central dir on this disk */ number_entry = 0; if (zip64local_getShort(&ziinit.z_filefunc, ziinit.filestream, &uL) != ZIP_OK) err = ZIP_ERRNO; else number_entry = uL; - /* total number of entries in the central dir */ + /* Total number of entries in the central dir */ number_entry_CD = 0; if (zip64local_getShort(&ziinit.z_filefunc, ziinit.filestream, &uL) != ZIP_OK) err = ZIP_ERRNO; else number_entry_CD = uL; - if (number_entry_CD != number_entry) + if (number_entry_CD!=number_entry) err = ZIP_BADZIPFILE; - /* size of the central directory */ + /* Size of the central directory */ size_central_dir = 0; if (zip64local_getLong(&ziinit.z_filefunc, ziinit.filestream, &uL) != ZIP_OK) err = ZIP_ERRNO; else size_central_dir = uL; - /* offset of start of central directory with respect to the starting disk number */ + /* Offset of start of central directory with respect to the starting disk number */ offset_central_dir = 0; if (zip64local_getLong(&ziinit.z_filefunc, ziinit.filestream, &uL) != ZIP_OK) err = ZIP_ERRNO; else offset_central_dir = uL; - /* zipfile global comment length */ + /* Zipfile global comment length */ if (zip64local_getShort(&ziinit.z_filefunc, ziinit.filestream, &size_comment) != ZIP_OK) err = ZIP_ERRNO; - if ((err == ZIP_OK) && ((number_entry_CD == 0xffff) || (offset_central_dir == 0xffffffff))) { + if ((err == ZIP_OK) && ((number_entry_CD == 0xffff) || (offset_central_dir == 0xffffffff))) + { /* Format should be Zip64, as the central directory or file size is too large */ central_pos = zip64local_SearchCentralDir64(&ziinit.z_filefunc, ziinit.filestream, central_pos); - if (central_pos) { + if (central_pos) + { ZPOS64_T sizeEndOfCentralDirectory; if (ZSEEK64(ziinit.z_filefunc, ziinit.filestream, central_pos, ZLIB_FILEFUNC_SEEK_SET) != 0) err = ZIP_ERRNO; - /* the signature, already checked */ + /* The signature, already checked */ if (zip64local_getLong(&ziinit.z_filefunc, ziinit.filestream, &uL) != ZIP_OK) err = ZIP_ERRNO; - /* size of zip64 end of central directory record */ + /* Size of zip64 end of central directory record */ if (zip64local_getLong64(&ziinit.z_filefunc, ziinit.filestream, &sizeEndOfCentralDirectory) != ZIP_OK) err = ZIP_ERRNO; - /* version made by */ + /* Version made by */ if (zip64local_getShort(&ziinit.z_filefunc, ziinit.filestream, &uL) != ZIP_OK) err = ZIP_ERRNO; - /* version needed to extract */ + /* Version needed to extract */ if (zip64local_getShort(&ziinit.z_filefunc, ziinit.filestream, &uL) != ZIP_OK) err = ZIP_ERRNO; - /* number of this disk */ + /* Number of this disk */ if (zip64local_getLong(&ziinit.z_filefunc, ziinit.filestream, &ziinit.number_disk) != ZIP_OK) err = ZIP_ERRNO; - /* number of the disk with the start of the central directory */ + /* Number of the disk with the start of the central directory */ if (zip64local_getLong(&ziinit.z_filefunc, ziinit.filestream, &ziinit.number_disk_with_CD) != ZIP_OK) err = ZIP_ERRNO; - /* total number of entries in the central directory on this disk */ + /* Total number of entries in the central directory on this disk */ if (zip64local_getLong64(&ziinit.z_filefunc, ziinit.filestream, &number_entry) != ZIP_OK) err = ZIP_ERRNO; - /* total number of entries in the central directory */ + /* Total number of entries in the central directory */ if (zip64local_getLong64(&ziinit.z_filefunc, ziinit.filestream, &number_entry_CD) != ZIP_OK) err = ZIP_ERRNO; - if (number_entry_CD != number_entry) + if (number_entry_CD!=number_entry) err = ZIP_BADZIPFILE; - /* size of the central directory */ + /* Size of the central directory */ if (zip64local_getLong64(&ziinit.z_filefunc, ziinit.filestream, &size_central_dir) != ZIP_OK) err = ZIP_ERRNO; - /* offset of start of central directory with respect to the starting disk number */ + /* Offset of start of central directory with respect to the starting disk number */ if (zip64local_getLong64(&ziinit.z_filefunc, ziinit.filestream, &offset_central_dir) != ZIP_OK) err = ZIP_ERRNO; - } else + } + else err = ZIP_BADZIPFILE; - } + } } - if ((err == ZIP_OK) && (central_pos < offset_central_dir + size_central_dir)) + if ((err == ZIP_OK) && (central_pos 0) { - ziinit.globalcomment = (char *)ALLOC(size_comment + 1); - if (ziinit.globalcomment) { + if (size_comment > 0) + { + ziinit.globalcomment = (char*)ALLOC(size_comment+1); + if (ziinit.globalcomment) + { size_comment = ZREAD64(ziinit.z_filefunc, ziinit.filestream, ziinit.globalcomment, size_comment); ziinit.globalcomment[size_comment] = 0; } } - byte_before_the_zipfile = central_pos - (offset_central_dir + size_central_dir); + byte_before_the_zipfile = central_pos - (offset_central_dir+size_central_dir); ziinit.add_position_when_writting_offset = byte_before_the_zipfile; /* Store central directory in memory */ size_central_dir_to_read = size_central_dir; buf_size = SIZEDATA_INDATABLOCK; - buf_read = (void *)ALLOC(buf_size); - if (buf_read == NULL) - err = ZIP_INTERNALERROR; + buf_read = (void*)ALLOC(buf_size); if (ZSEEK64(ziinit.z_filefunc, ziinit.filestream, - offset_central_dir + byte_before_the_zipfile, ZLIB_FILEFUNC_SEEK_SET) != 0) + offset_central_dir + byte_before_the_zipfile, ZLIB_FILEFUNC_SEEK_SET) != 0) err = ZIP_ERRNO; - while ((size_central_dir_to_read > 0) && (err == ZIP_OK)) { + while ((size_central_dir_to_read > 0) && (err == ZIP_OK)) + { ZPOS64_T read_this = SIZEDATA_INDATABLOCK; if (read_this > size_central_dir_to_read) read_this = size_central_dir_to_read; @@ -854,7 +882,7 @@ extern zipFile ZEXPORT zipOpen4(const void *pathname, int append, ZPOS64_T disk_ ziinit.number_entry = number_entry_CD; if (ZSEEK64(ziinit.z_filefunc, ziinit.filestream, - offset_central_dir + byte_before_the_zipfile, ZLIB_FILEFUNC_SEEK_SET) != 0) + offset_central_dir+byte_before_the_zipfile, ZLIB_FILEFUNC_SEEK_SET) != 0) err = ZIP_ERRNO; } @@ -862,7 +890,8 @@ extern zipFile ZEXPORT zipOpen4(const void *pathname, int append, ZPOS64_T disk_ *globalcomment = ziinit.globalcomment; #endif - if (err != ZIP_OK) { + if (err != ZIP_OK) + { #ifndef NO_ADDFILEINEXISTINGZIP TRYFREE(ziinit.globalcomment); #endif @@ -872,24 +901,26 @@ extern zipFile ZEXPORT zipOpen4(const void *pathname, int append, ZPOS64_T disk_ *zi = ziinit; zipGoToFirstDisk((zipFile)zi); - return (zipFile)zi; + return(zipFile)zi; } -extern zipFile ZEXPORT zipOpen2(const char *pathname, int append, zipcharpc *globalcomment, - zlib_filefunc_def *pzlib_filefunc32_def) +extern zipFile ZEXPORT zipOpen2(const char *pathname, int append, const char ** globalcomment, + zlib_filefunc_def* pzlib_filefunc32_def) { - if (pzlib_filefunc32_def != NULL) { + if (pzlib_filefunc32_def != NULL) + { zlib_filefunc64_32_def zlib_filefunc64_32_def_fill; - fill_zlib_filefunc64_32_def_from_filefunc32(&zlib_filefunc64_32_def_fill, pzlib_filefunc32_def); + fill_zlib_filefunc64_32_def_from_filefunc32(&zlib_filefunc64_32_def_fill,pzlib_filefunc32_def); return zipOpen4(pathname, append, 0, globalcomment, &zlib_filefunc64_32_def_fill); } return zipOpen4(pathname, append, 0, globalcomment, NULL); } -extern zipFile ZEXPORT zipOpen2_64(const void *pathname, int append, zipcharpc *globalcomment, - zlib_filefunc64_def *pzlib_filefunc_def) +extern zipFile ZEXPORT zipOpen2_64(const void *pathname, int append, const char ** globalcomment, + zlib_filefunc64_def* pzlib_filefunc_def) { - if (pzlib_filefunc_def != NULL) { + if (pzlib_filefunc_def != NULL) + { zlib_filefunc64_32_def zlib_filefunc64_32_def_fill; zlib_filefunc64_32_def_fill.zfile_func64 = *pzlib_filefunc_def; zlib_filefunc64_32_def_fill.ztell32_file = NULL; @@ -899,21 +930,23 @@ extern zipFile ZEXPORT zipOpen2_64(const void *pathname, int append, zipcharpc * return zipOpen4(pathname, append, 0, globalcomment, NULL); } -extern zipFile ZEXPORT zipOpen3(const char *pathname, int append, ZPOS64_T disk_size, zipcharpc *globalcomment, - zlib_filefunc_def *pzlib_filefunc32_def) +extern zipFile ZEXPORT zipOpen3(const char *pathname, int append, ZPOS64_T disk_size, const char ** globalcomment, + zlib_filefunc_def* pzlib_filefunc32_def) { - if (pzlib_filefunc32_def != NULL) { + if (pzlib_filefunc32_def != NULL) + { zlib_filefunc64_32_def zlib_filefunc64_32_def_fill; - fill_zlib_filefunc64_32_def_from_filefunc32(&zlib_filefunc64_32_def_fill, pzlib_filefunc32_def); + fill_zlib_filefunc64_32_def_from_filefunc32(&zlib_filefunc64_32_def_fill,pzlib_filefunc32_def); return zipOpen4(pathname, append, disk_size, globalcomment, &zlib_filefunc64_32_def_fill); } return zipOpen4(pathname, append, disk_size, globalcomment, NULL); } -extern zipFile ZEXPORT zipOpen3_64(const void *pathname, int append, ZPOS64_T disk_size, zipcharpc *globalcomment, - zlib_filefunc64_def *pzlib_filefunc_def) +extern zipFile ZEXPORT zipOpen3_64(const void *pathname, int append, ZPOS64_T disk_size, const char ** globalcomment, + zlib_filefunc64_def* pzlib_filefunc_def) { - if (pzlib_filefunc_def != NULL) { + if (pzlib_filefunc_def != NULL) + { zlib_filefunc64_32_def zlib_filefunc64_32_def_fill; zlib_filefunc64_32_def_fill.zfile_func64 = *pzlib_filefunc_def; zlib_filefunc64_32_def_fill.ztell32_file = NULL; @@ -923,22 +956,22 @@ extern zipFile ZEXPORT zipOpen3_64(const void *pathname, int append, ZPOS64_T di return zipOpen4(pathname, append, disk_size, globalcomment, NULL); } -extern zipFile ZEXPORT zipOpen(const char *pathname, int append) +extern zipFile ZEXPORT zipOpen(const char* pathname, int append) { - return zipOpen3((const void *)pathname, append, 0, NULL, NULL); + return zipOpen3((const void*)pathname,append,0,NULL,NULL); } -extern zipFile ZEXPORT zipOpen64(const void *pathname, int append) +extern zipFile ZEXPORT zipOpen64(const void* pathname, int append) { - return zipOpen3(pathname, append, 0, NULL, NULL); + return zipOpen3(pathname,append,0,NULL,NULL); } -extern int ZEXPORT zipOpenNewFileInZip4_64(zipFile file, const char *filename, const zip_fileinfo *zipfi, - const void *extrafield_local, uInt size_extrafield_local, const void *extrafield_global, - uInt size_extrafield_global, const char *comment, int method, int level, int raw, int windowBits, int memLevel, - int strategy, const char *password, uLong crcForCrypting, uLong versionMadeBy, uLong flagBase, int zip64) +extern int ZEXPORT zipOpenNewFileInZip4_64(zipFile file, const char* filename, const zip_fileinfo* zipfi, + const void* extrafield_local, uInt size_extrafield_local, const void* extrafield_global, + uInt size_extrafield_global, const char* comment, int method, int level, int raw, int windowBits, int memLevel, + int strategy, const char* password, uLong crcForCrypting, uLong versionMadeBy, uLong flagBase, int zip64) { - zip64_internal *zi; + zip64_internal* zi; uInt size_filename; uInt size_comment = 0; uInt i; @@ -962,10 +995,11 @@ extern int ZEXPORT zipOpenNewFileInZip4_64(zipFile file, const char *filename, c (method != Z_DEFLATED)) return ZIP_PARAMERROR; - zi = (zip64_internal *)file; + zi = (zip64_internal*)file; - if (zi->in_opened_file_inzip == 1) { - err = zipCloseFileInZip(file); + if (zi->in_opened_file_inzip == 1) + { + err = zipCloseFileInZip (file); if (err != ZIP_OK) return err; } @@ -979,7 +1013,8 @@ extern int ZEXPORT zipOpenNewFileInZip4_64(zipFile file, const char *filename, c if (zipfi == NULL) zi->ci.dosDate = 0; - else { + else + { if (zipfi->dosDate != 0) zi->ci.dosDate = zipfi->dosDate; else @@ -999,14 +1034,16 @@ extern int ZEXPORT zipOpenNewFileInZip4_64(zipFile file, const char *filename, c zi->ci.flag |= 4; if (level == 1) zi->ci.flag |= 6; - if (password != NULL) { + if (password != NULL) + { zi->ci.flag |= 1; #ifdef HAVE_AES zi->ci.method = AES_METHOD; #endif } - if (zi->disk_size > 0) { + if (zi->disk_size > 0) + { if ((zi->number_disk == 0) && (zi->number_entry == 0)) err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)DISKHEADERMAGIC, 4); @@ -1032,50 +1069,47 @@ extern int ZEXPORT zipOpenNewFileInZip4_64(zipFile file, const char *filename, c if (zi->ci.method == AES_METHOD) zi->ci.size_centralextrafree += 11; /* Extra space reserved for AES extra info */ #endif - zi->ci.central_header = (char *)ALLOC((uInt)zi->ci.size_centralheader + zi->ci.size_centralextrafree + size_comment); - if (zi->ci.central_header == NULL) - return ZIP_INTERNALERROR; - + zi->ci.central_header = (char*)ALLOC((uInt)zi->ci.size_centralheader + zi->ci.size_centralextrafree + size_comment); zi->ci.number_disk = zi->number_disk; /* Write central directory header */ zip64local_putValue_inmemory(zi->ci.central_header, (uLong)CENTRALHEADERMAGIC, 4); - zip64local_putValue_inmemory(zi->ci.central_header + 4, (uLong)versionMadeBy, 2); - zip64local_putValue_inmemory(zi->ci.central_header + 6, (uLong)20, 2); - zip64local_putValue_inmemory(zi->ci.central_header + 8, (uLong)zi->ci.flag, 2); - zip64local_putValue_inmemory(zi->ci.central_header + 10, (uLong)zi->ci.method, 2); - zip64local_putValue_inmemory(zi->ci.central_header + 12, (uLong)zi->ci.dosDate, 4); - zip64local_putValue_inmemory(zi->ci.central_header + 16, (uLong)0, 4); /*crc*/ - zip64local_putValue_inmemory(zi->ci.central_header + 20, (uLong)0, 4); /*compr size*/ - zip64local_putValue_inmemory(zi->ci.central_header + 24, (uLong)0, 4); /*uncompr size*/ - zip64local_putValue_inmemory(zi->ci.central_header + 28, (uLong)size_filename, 2); - zip64local_putValue_inmemory(zi->ci.central_header + 30, (uLong)size_extrafield_global, 2); - zip64local_putValue_inmemory(zi->ci.central_header + 32, (uLong)size_comment, 2); - zip64local_putValue_inmemory(zi->ci.central_header + 34, (uLong)zi->ci.number_disk, 2); /*disk nm start*/ + zip64local_putValue_inmemory(zi->ci.central_header+4, (uLong)versionMadeBy, 2); + zip64local_putValue_inmemory(zi->ci.central_header+6, (uLong)20, 2); + zip64local_putValue_inmemory(zi->ci.central_header+8, (uLong)zi->ci.flag, 2); + zip64local_putValue_inmemory(zi->ci.central_header+10, (uLong)zi->ci.method, 2); + zip64local_putValue_inmemory(zi->ci.central_header+12, (uLong)zi->ci.dosDate, 4); + zip64local_putValue_inmemory(zi->ci.central_header+16, (uLong)0, 4); /*crc*/ + zip64local_putValue_inmemory(zi->ci.central_header+20, (uLong)0, 4); /*compr size*/ + zip64local_putValue_inmemory(zi->ci.central_header+24, (uLong)0, 4); /*uncompr size*/ + zip64local_putValue_inmemory(zi->ci.central_header+28, (uLong)size_filename, 2); + zip64local_putValue_inmemory(zi->ci.central_header+30, (uLong)size_extrafield_global, 2); + zip64local_putValue_inmemory(zi->ci.central_header+32, (uLong)size_comment, 2); + zip64local_putValue_inmemory(zi->ci.central_header+34, (uLong)zi->ci.number_disk, 2); /*disk nm start*/ if (zipfi == NULL) - zip64local_putValue_inmemory(zi->ci.central_header + 36, (uLong)0, 2); + zip64local_putValue_inmemory(zi->ci.central_header+36, (uLong)0, 2); else - zip64local_putValue_inmemory(zi->ci.central_header + 36, (uLong)zipfi->internal_fa, 2); + zip64local_putValue_inmemory(zi->ci.central_header+36, (uLong)zipfi->internal_fa, 2); if (zipfi == NULL) - zip64local_putValue_inmemory(zi->ci.central_header + 38, (uLong)0, 4); + zip64local_putValue_inmemory(zi->ci.central_header+38, (uLong)0, 4); else - zip64local_putValue_inmemory(zi->ci.central_header + 38, (uLong)zipfi->external_fa, 4); + zip64local_putValue_inmemory(zi->ci.central_header+38, (uLong)zipfi->external_fa, 4); if (zi->ci.pos_local_header >= 0xffffffff) - zip64local_putValue_inmemory(zi->ci.central_header + 42, (uLong)0xffffffff, 4); + zip64local_putValue_inmemory(zi->ci.central_header+42, (uLong)0xffffffff, 4); else - zip64local_putValue_inmemory(zi->ci.central_header + 42, - (uLong)zi->ci.pos_local_header - zi->add_position_when_writting_offset, 4); + zip64local_putValue_inmemory(zi->ci.central_header+42, + (uLong)zi->ci.pos_local_header - zi->add_position_when_writting_offset, 4); for (i = 0; i < size_filename; i++) - zi->ci.central_header[SIZECENTRALHEADER + i] = filename[i]; + zi->ci.central_header[SIZECENTRALHEADER+i] = filename[i]; for (i = 0; i < size_extrafield_global; i++) - zi->ci.central_header[SIZECENTRALHEADER + size_filename + i] = - ((const char *)extrafield_global)[i]; + zi->ci.central_header[SIZECENTRALHEADER+size_filename+i] = + ((const char*)extrafield_global)[i]; /* Store comment at the end for later repositioning */ for (i = 0; i < size_comment; i++) - zi->ci.central_header[zi->ci.size_centralheader + - zi->ci.size_centralextrafree + i] = comment[i]; + zi->ci.central_header[zi->ci.size_centralheader+ + zi->ci.size_centralextrafree+i] = comment[i]; if (zi->ci.central_header == NULL) return ZIP_INTERNALERROR; @@ -1088,7 +1122,8 @@ extern int ZEXPORT zipOpenNewFileInZip4_64(zipFile file, const char *filename, c /* Write the local header */ err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)LOCALHEADERMAGIC, 4); - if (err == ZIP_OK) { + if (err == ZIP_OK) + { if (zi->ci.zip64) err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)45, 2); /* version needed to extract */ else @@ -1105,13 +1140,15 @@ extern int ZEXPORT zipOpenNewFileInZip4_64(zipFile file, const char *filename, c if (err == ZIP_OK) err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)0, 4); /* crc 32, unknown */ - if (err == ZIP_OK) { + if (err == ZIP_OK) + { if (zi->ci.zip64) err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)0xFFFFFFFF, 4); /* compressed size, unknown */ else err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)0, 4); /* compressed size, unknown */ } - if (err == ZIP_OK) { + if (err == ZIP_OK) + { if (zi->ci.zip64) /* uncompressed size, unknown */ err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)0xFFFFFFFF, 4); else /* uncompressed size, unknown */ @@ -1119,7 +1156,8 @@ extern int ZEXPORT zipOpenNewFileInZip4_64(zipFile file, const char *filename, c } if (err == ZIP_OK) err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)size_filename, 2); - if (err == ZIP_OK) { + if (err == ZIP_OK) + { ZPOS64_T size_extrafield = size_extrafield_local; if (zi->ci.zip64) size_extrafield += 20; @@ -1127,19 +1165,22 @@ extern int ZEXPORT zipOpenNewFileInZip4_64(zipFile file, const char *filename, c if (zi->ci.method == AES_METHOD) size_extrafield += 11; #endif - err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)size_extrafield, 2); + err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)size_extrafield,2); } - if ((err == ZIP_OK) && (size_filename > 0)) { + if ((err == ZIP_OK) && (size_filename > 0)) + { if (ZWRITE64(zi->z_filefunc, zi->filestream, filename, size_filename) != size_filename) err = ZIP_ERRNO; } - if ((err == ZIP_OK) && (size_extrafield_local > 0)) { + if ((err == ZIP_OK) && (size_extrafield_local > 0)) + { if (ZWRITE64(zi->z_filefunc, zi->filestream, extrafield_local, size_extrafield_local) != size_extrafield_local) err = ZIP_ERRNO; } /* Write the Zip64 extended info */ - if ((err == ZIP_OK) && (zi->ci.zip64)) { + if ((err == ZIP_OK) && (zi->ci.zip64)) + { short headerid = 1; short datasize = 16; ZPOS64_T compressed_size = 0; @@ -1157,7 +1198,8 @@ extern int ZEXPORT zipOpenNewFileInZip4_64(zipFile file, const char *filename, c } #ifdef HAVE_AES /* Write the AES extended info */ - if ((err == ZIP_OK) && (zi->ci.method == AES_METHOD)) { + if ((err == ZIP_OK) && (zi->ci.method == AES_METHOD)) + { int headerid = 0x9901; short datasize = 7; @@ -1175,7 +1217,7 @@ extern int ZEXPORT zipOpenNewFileInZip4_64(zipFile file, const char *filename, c #ifdef HAVE_BZIP2 zi->ci.bstream.avail_in = (uInt)0; zi->ci.bstream.avail_out = (uInt)Z_BUFSIZE; - zi->ci.bstream.next_out = (char *)zi->ci.buffered_data; + zi->ci.bstream.next_out = (char*)zi->ci.buffered_data; zi->ci.bstream.total_in_hi32 = 0; zi->ci.bstream.total_in_lo32 = 0; zi->ci.bstream.total_out_hi32 = 0; @@ -1189,8 +1231,10 @@ extern int ZEXPORT zipOpenNewFileInZip4_64(zipFile file, const char *filename, c zi->ci.stream.total_out = 0; zi->ci.stream.data_type = Z_BINARY; - if ((err == ZIP_OK) && (!zi->ci.raw)) { - if (method == Z_DEFLATED) { + if ((err == ZIP_OK) && (!zi->ci.raw)) + { + if (method == Z_DEFLATED) + { zi->ci.stream.zalloc = (alloc_func)0; zi->ci.stream.zfree = (free_func)0; zi->ci.stream.opaque = (voidpf)zi; @@ -1202,7 +1246,9 @@ extern int ZEXPORT zipOpenNewFileInZip4_64(zipFile file, const char *filename, c if (err == Z_OK) zi->ci.stream_initialised = Z_DEFLATED; - } else if (method == Z_BZIP2ED) { + } + else if (method == Z_BZIP2ED) + { #ifdef HAVE_BZIP2 zi->ci.bstream.bzalloc = 0; zi->ci.bstream.bzfree = 0; @@ -1217,9 +1263,11 @@ extern int ZEXPORT zipOpenNewFileInZip4_64(zipFile file, const char *filename, c #ifndef NOCRYPT zi->ci.crypt_header_size = 0; - if ((err == Z_OK) && ((zi->ci.flag & 1) != 0)) { + if ((err == Z_OK) && ((zi->ci.flag & 1) != 0)) + { #ifdef HAVE_AES - if (zi->ci.method == AES_METHOD) { + if (zi->ci.method == AES_METHOD) + { unsigned char passverify[AES_PWVERIFYSIZE]; unsigned char saltvalue[AES_MAXSALTLENGTH]; uInt saltlength; @@ -1233,7 +1281,7 @@ extern int ZEXPORT zipOpenNewFileInZip4_64(zipFile file, const char *filename, c prng_rand(saltvalue, saltlength, zi->ci.aes_rng); prng_end(zi->ci.aes_rng); - fcrypt_init(AES_ENCRYPTIONMODE, (unsigned char *)password, (unsigned int)strlen(password), saltvalue, passverify, &zi->ci.aes_ctx); + fcrypt_init(AES_ENCRYPTIONMODE, password, strlen(password), saltvalue, passverify, &zi->ci.aes_ctx); if (ZWRITE64(zi->z_filefunc, zi->filestream, saltvalue, saltlength) != saltlength) err = ZIP_ERRNO; @@ -1241,7 +1289,8 @@ extern int ZEXPORT zipOpenNewFileInZip4_64(zipFile file, const char *filename, c err = ZIP_ERRNO; zi->ci.crypt_header_size = saltlength + AES_PWVERIFYSIZE + AES_AUTHCODESIZE; - } else + } + else #endif { unsigned char bufHead[RAND_HEAD_LEN]; @@ -1264,75 +1313,75 @@ extern int ZEXPORT zipOpenNewFileInZip4_64(zipFile file, const char *filename, c return err; } -extern int ZEXPORT zipOpenNewFileInZip4(zipFile file, const char *filename, const zip_fileinfo *zipfi, - const void *extrafield_local, uInt size_extrafield_local, const void *extrafield_global, - uInt size_extrafield_global, const char *comment, int method, int level, int raw, int windowBits, - int memLevel, int strategy, const char *password, uLong crcForCrypting, uLong versionMadeBy, uLong flagBase) +extern int ZEXPORT zipOpenNewFileInZip4(zipFile file, const char* filename, const zip_fileinfo* zipfi, + const void* extrafield_local, uInt size_extrafield_local, const void* extrafield_global, + uInt size_extrafield_global, const char* comment, int method, int level, int raw, int windowBits, + int memLevel, int strategy, const char* password, uLong crcForCrypting, uLong versionMadeBy, uLong flagBase) { return zipOpenNewFileInZip4_64(file, filename, zipfi, extrafield_local, size_extrafield_local, - extrafield_global, size_extrafield_global, comment, method, level, raw, windowBits, memLevel, - strategy, password, crcForCrypting, versionMadeBy, flagBase, 0); + extrafield_global, size_extrafield_global, comment, method, level, raw, windowBits, memLevel, + strategy, password, crcForCrypting, versionMadeBy, flagBase, 0); } -extern int ZEXPORT zipOpenNewFileInZip3(zipFile file, const char *filename, const zip_fileinfo *zipfi, - const void *extrafield_local, uInt size_extrafield_local, const void *extrafield_global, - uInt size_extrafield_global, const char *comment, int method, int level, int raw, int windowBits, - int memLevel, int strategy, const char *password, uLong crcForCrypting) +extern int ZEXPORT zipOpenNewFileInZip3(zipFile file, const char* filename, const zip_fileinfo* zipfi, + const void* extrafield_local, uInt size_extrafield_local, const void* extrafield_global, + uInt size_extrafield_global, const char* comment, int method, int level, int raw, int windowBits, + int memLevel, int strategy, const char* password, uLong crcForCrypting) { return zipOpenNewFileInZip4_64(file, filename, zipfi, extrafield_local, size_extrafield_local, - extrafield_global, size_extrafield_global, comment, method, level, raw, windowBits, memLevel, - strategy, password, crcForCrypting, VERSIONMADEBY, 0, 0); + extrafield_global, size_extrafield_global, comment, method, level, raw, windowBits, memLevel, + strategy, password, crcForCrypting, VERSIONMADEBY, 0, 0); } -extern int ZEXPORT zipOpenNewFileInZip3_64(zipFile file, const char *filename, const zip_fileinfo *zipfi, - const void *extrafield_local, uInt size_extrafield_local, const void *extrafield_global, - uInt size_extrafield_global, const char *comment, int method, int level, int raw, int windowBits, - int memLevel, int strategy, const char *password, uLong crcForCrypting, int zip64) +extern int ZEXPORT zipOpenNewFileInZip3_64(zipFile file, const char* filename, const zip_fileinfo* zipfi, + const void* extrafield_local, uInt size_extrafield_local, const void* extrafield_global, + uInt size_extrafield_global, const char* comment, int method, int level, int raw, int windowBits, + int memLevel, int strategy, const char* password, uLong crcForCrypting, int zip64) { return zipOpenNewFileInZip4_64(file, filename, zipfi, extrafield_local, size_extrafield_local, - extrafield_global, size_extrafield_global, comment, method, level, raw, windowBits, memLevel, strategy, - password, crcForCrypting, VERSIONMADEBY, 0, zip64); + extrafield_global, size_extrafield_global, comment, method, level, raw, windowBits, memLevel, strategy, + password, crcForCrypting, VERSIONMADEBY, 0, zip64); } -extern int ZEXPORT zipOpenNewFileInZip2(zipFile file, const char *filename, const zip_fileinfo *zipfi, - const void *extrafield_local, uInt size_extrafield_local, const void *extrafield_global, - uInt size_extrafield_global, const char *comment, int method, int level, int raw) +extern int ZEXPORT zipOpenNewFileInZip2(zipFile file, const char* filename, const zip_fileinfo* zipfi, + const void* extrafield_local, uInt size_extrafield_local, const void* extrafield_global, + uInt size_extrafield_global, const char* comment, int method, int level, int raw) { return zipOpenNewFileInZip4_64(file, filename, zipfi, extrafield_local, size_extrafield_local, - extrafield_global, size_extrafield_global, comment, method, level, raw, -MAX_WBITS, DEF_MEM_LEVEL, - Z_DEFAULT_STRATEGY, NULL, 0, VERSIONMADEBY, 0, 0); + extrafield_global, size_extrafield_global, comment, method, level, raw, -MAX_WBITS, DEF_MEM_LEVEL, + Z_DEFAULT_STRATEGY, NULL, 0, VERSIONMADEBY, 0, 0); } -extern int ZEXPORT zipOpenNewFileInZip2_64(zipFile file, const char *filename, const zip_fileinfo *zipfi, - const void *extrafield_local, uInt size_extrafield_local, const void *extrafield_global, - uInt size_extrafield_global, const char *comment, int method, int level, int raw, int zip64) +extern int ZEXPORT zipOpenNewFileInZip2_64(zipFile file, const char* filename, const zip_fileinfo* zipfi, + const void* extrafield_local, uInt size_extrafield_local, const void* extrafield_global, + uInt size_extrafield_global, const char* comment, int method, int level, int raw, int zip64) { return zipOpenNewFileInZip4_64(file, filename, zipfi, extrafield_local, size_extrafield_local, - extrafield_global, size_extrafield_global, comment, method, level, raw, -MAX_WBITS, DEF_MEM_LEVEL, - Z_DEFAULT_STRATEGY, NULL, 0, VERSIONMADEBY, 0, zip64); + extrafield_global, size_extrafield_global, comment, method, level, raw, -MAX_WBITS, DEF_MEM_LEVEL, + Z_DEFAULT_STRATEGY, NULL, 0, VERSIONMADEBY, 0, zip64); } -extern int ZEXPORT zipOpenNewFileInZip64(zipFile file, const char *filename, const zip_fileinfo *zipfi, - const void *extrafield_local, uInt size_extrafield_local, const void *extrafield_global, - uInt size_extrafield_global, const char *comment, int method, int level, int zip64) +extern int ZEXPORT zipOpenNewFileInZip64(zipFile file, const char* filename, const zip_fileinfo* zipfi, + const void* extrafield_local, uInt size_extrafield_local, const void*extrafield_global, + uInt size_extrafield_global, const char* comment, int method, int level, int zip64) { return zipOpenNewFileInZip4_64(file, filename, zipfi, extrafield_local, size_extrafield_local, - extrafield_global, size_extrafield_global, comment, method, level, 0, -MAX_WBITS, DEF_MEM_LEVEL, - Z_DEFAULT_STRATEGY, NULL, 0, VERSIONMADEBY, 0, zip64); + extrafield_global, size_extrafield_global, comment, method, level, 0, -MAX_WBITS, DEF_MEM_LEVEL, + Z_DEFAULT_STRATEGY, NULL, 0, VERSIONMADEBY, 0, zip64); } -extern int ZEXPORT zipOpenNewFileInZip(zipFile file, const char *filename, const zip_fileinfo *zipfi, - const void *extrafield_local, uInt size_extrafield_local, const void *extrafield_global, - uInt size_extrafield_global, const char *comment, int method, int level) +extern int ZEXPORT zipOpenNewFileInZip(zipFile file, const char* filename, const zip_fileinfo* zipfi, + const void* extrafield_local, uInt size_extrafield_local, const void*extrafield_global, + uInt size_extrafield_global, const char* comment, int method, int level) { return zipOpenNewFileInZip4_64(file, filename, zipfi, extrafield_local, size_extrafield_local, - extrafield_global, size_extrafield_global, comment, method, level, 0, -MAX_WBITS, DEF_MEM_LEVEL, - Z_DEFAULT_STRATEGY, NULL, 0, VERSIONMADEBY, 0, 0); + extrafield_global, size_extrafield_global, comment, method, level, 0, -MAX_WBITS, DEF_MEM_LEVEL, + Z_DEFAULT_STRATEGY, NULL, 0, VERSIONMADEBY, 0, 0); } /* Flushes the write buffer to disk */ -local int zip64FlushWriteBuffer OF((zip64_internal * zi)); -local int zip64FlushWriteBuffer(zip64_internal *zi) +local int zip64FlushWriteBuffer OF((zip64_internal* zi)); +local int zip64FlushWriteBuffer(zip64_internal* zi) { int err = ZIP_OK; uInt written = 0; @@ -1341,33 +1390,39 @@ local int zip64FlushWriteBuffer(zip64_internal *zi) uInt max_write = 0; ZPOS64_T size_available = 0; - if ((zi->ci.flag & 1) != 0) { + if ((zi->ci.flag & 1) != 0) + { #ifndef NOCRYPT #ifdef HAVE_AES - if (zi->ci.method == AES_METHOD) { + if (zi->ci.method == AES_METHOD) + { fcrypt_encrypt(zi->ci.buffered_data, zi->ci.pos_in_buffered_data, &zi->ci.aes_ctx); - } else + } + else #endif { uInt i; int t; - for (i = 0; i < zi->ci.pos_in_buffered_data; i++) - zi->ci.buffered_data[i] = zencode(zi->ci.keys, zi->ci.pcrc_32_tab, zi->ci.buffered_data[i], t); + for (i = 0;i < zi->ci.pos_in_buffered_data; i++) + zi->ci.buffered_data[i] = zencode(zi->ci.keys, zi->ci.pcrc_32_tab, zi->ci.buffered_data[i],t); } #endif } write = zi->ci.pos_in_buffered_data; - do { + do + { max_write = write; - if (zi->disk_size > 0) { + if (zi->disk_size > 0) + { err = zipGetDiskSizeAvailable((zipFile)zi, &size_available); if (err != ZIP_OK) return err; - if (size_available == 0) { + if (size_available == 0) + { err = zipGoToNextDisk((zipFile)zi); if (err != ZIP_OK) return err; @@ -1377,25 +1432,29 @@ local int zip64FlushWriteBuffer(zip64_internal *zi) max_write = (uInt)size_available; } - written = (unsigned int)ZWRITE64(zi->z_filefunc, zi->filestream, zi->ci.buffered_data + total_written, max_write); + written = ZWRITE64(zi->z_filefunc, zi->filestream, zi->ci.buffered_data + total_written, max_write); - if (ZERROR64(zi->z_filefunc, zi->filestream)) { + if (ZERROR64(zi->z_filefunc, zi->filestream)) + { err = ZIP_ERRNO; break; } total_written += written; write -= written; - } while (write > 0); + } + while (write > 0); zi->ci.total_compressed += zi->ci.pos_in_buffered_data; #ifdef HAVE_BZIP2 - if (zi->ci.compression_method == Z_BZIP2ED) { + if (zi->ci.compression_method == Z_BZIP2ED) + { zi->ci.total_uncompressed += zi->ci.bstream.total_in_lo32; zi->ci.bstream.total_in_lo32 = 0; zi->ci.bstream.total_in_hi32 = 0; - } else + } + else #endif { zi->ci.total_uncompressed += zi->ci.stream.total_in; @@ -1407,14 +1466,14 @@ local int zip64FlushWriteBuffer(zip64_internal *zi) return err; } -extern int ZEXPORT zipWriteInFileInZip(zipFile file, const void *buf, unsigned int len) +extern int ZEXPORT zipWriteInFileInZip(zipFile file,const void* buf,unsigned int len) { - zip64_internal *zi; + zip64_internal* zi; int err = ZIP_OK; if (file == NULL) return ZIP_PARAMERROR; - zi = (zip64_internal *)file; + zi = (zip64_internal*)file; if (zi->in_opened_file_inzip == 0) return ZIP_PARAMERROR; @@ -1422,18 +1481,23 @@ extern int ZEXPORT zipWriteInFileInZip(zipFile file, const void *buf, unsigned i zi->ci.crc32 = crc32(zi->ci.crc32, buf, (uInt)len); #ifdef HAVE_BZIP2 - if ((zi->ci.compression_method == Z_BZIP2ED) && (!zi->ci.raw)) { - zi->ci.bstream.next_in = (void *)buf; + if ((zi->ci.compression_method == Z_BZIP2ED) && (!zi->ci.raw)) + { + zi->ci.bstream.next_in = (void*)buf; zi->ci.bstream.avail_in = len; err = BZ_RUN_OK; - while ((err == BZ_RUN_OK) && (zi->ci.bstream.avail_in > 0)) { - if (zi->ci.bstream.avail_out == 0) { + while ((err == BZ_RUN_OK) && (zi->ci.bstream.avail_in > 0)) + { + if (zi->ci.bstream.avail_out == 0) + { if (zip64FlushWriteBuffer(zi) == ZIP_ERRNO) err = ZIP_ERRNO; zi->ci.bstream.avail_out = (uInt)Z_BUFSIZE; - zi->ci.bstream.next_out = (char *)zi->ci.buffered_data; - } else { + zi->ci.bstream.next_out = (char*)zi->ci.buffered_data; + } + else + { uLong uTotalOutBefore_lo = zi->ci.bstream.total_out_lo32; uLong uTotalOutBefore_hi = zi->ci.bstream.total_out_hi32; @@ -1445,14 +1509,17 @@ extern int ZEXPORT zipWriteInFileInZip(zipFile file, const void *buf, unsigned i if (err == BZ_RUN_OK) err = ZIP_OK; - } else + } + else #endif { - zi->ci.stream.next_in = (Bytef *)buf; + zi->ci.stream.next_in = (Bytef*)buf; zi->ci.stream.avail_in = len; - while ((err == ZIP_OK) && (zi->ci.stream.avail_in > 0)) { - if (zi->ci.stream.avail_out == 0) { + while ((err == ZIP_OK) && (zi->ci.stream.avail_in > 0)) + { + if (zi->ci.stream.avail_out == 0) + { if (zip64FlushWriteBuffer(zi) == ZIP_ERRNO) err = ZIP_ERRNO; zi->ci.stream.avail_out = (uInt)Z_BUFSIZE; @@ -1462,22 +1529,25 @@ extern int ZEXPORT zipWriteInFileInZip(zipFile file, const void *buf, unsigned i if (err != ZIP_OK) break; - if ((zi->ci.compression_method == Z_DEFLATED) && (!zi->ci.raw)) { + if ((zi->ci.compression_method == Z_DEFLATED) && (!zi->ci.raw)) + { uLong total_out_before = zi->ci.stream.total_out; err = deflate(&zi->ci.stream, Z_NO_FLUSH); zi->ci.pos_in_buffered_data += (uInt)(zi->ci.stream.total_out - total_out_before); - } else { - uInt copy_this, i; + } + else + { + uInt copy_this,i; if (zi->ci.stream.avail_in < zi->ci.stream.avail_out) copy_this = zi->ci.stream.avail_in; else copy_this = zi->ci.stream.avail_out; for (i = 0; i < copy_this; i++) - *(((char *)zi->ci.stream.next_out) + i) = - *(((const char *)zi->ci.stream.next_in) + i); + *(((char*)zi->ci.stream.next_out)+i) = + *(((const char*)zi->ci.stream.next_in)+i); - zi->ci.stream.avail_in -= copy_this; + zi->ci.stream.avail_in -= copy_this; zi->ci.stream.avail_out -= copy_this; zi->ci.stream.next_in += copy_this; zi->ci.stream.next_out += copy_this; @@ -1493,12 +1563,12 @@ extern int ZEXPORT zipWriteInFileInZip(zipFile file, const void *buf, unsigned i extern int ZEXPORT zipCloseFileInZipRaw(zipFile file, uLong uncompressed_size, uLong crc32) { - return zipCloseFileInZipRaw64(file, uncompressed_size, crc32); + return zipCloseFileInZipRaw64 (file, uncompressed_size, crc32); } extern int ZEXPORT zipCloseFileInZipRaw64(zipFile file, ZPOS64_T uncompressed_size, uLong crc32) { - zip64_internal *zi; + zip64_internal* zi; ZPOS64_T compressed_size; uLong invalidValue = 0xffffffff; uLong i = 0; @@ -1507,17 +1577,21 @@ extern int ZEXPORT zipCloseFileInZipRaw64(zipFile file, ZPOS64_T uncompressed_si if (file == NULL) return ZIP_PARAMERROR; - zi = (zip64_internal *)file; + zi = (zip64_internal*)file; if (zi->in_opened_file_inzip == 0) return ZIP_PARAMERROR; zi->ci.stream.avail_in = 0; - if (!zi->ci.raw) { - if (zi->ci.compression_method == Z_DEFLATED) { - while (err == ZIP_OK) { + if (!zi->ci.raw) + { + if (zi->ci.compression_method == Z_DEFLATED) + { + while (err == ZIP_OK) + { uLong total_out_before; - if (zi->ci.stream.avail_out == 0) { + if (zi->ci.stream.avail_out == 0) + { if (zip64FlushWriteBuffer(zi) == ZIP_ERRNO) err = ZIP_ERRNO; zi->ci.stream.avail_out = (uInt)Z_BUFSIZE; @@ -1527,16 +1601,20 @@ extern int ZEXPORT zipCloseFileInZipRaw64(zipFile file, ZPOS64_T uncompressed_si err = deflate(&zi->ci.stream, Z_FINISH); zi->ci.pos_in_buffered_data += (uInt)(zi->ci.stream.total_out - total_out_before); } - } else if (zi->ci.compression_method == Z_BZIP2ED) { + } + else if (zi->ci.compression_method == Z_BZIP2ED) + { #ifdef HAVE_BZIP2 err = BZ_FINISH_OK; - while (err == BZ_FINISH_OK) { + while (err == BZ_FINISH_OK) + { uLong total_out_before; - if (zi->ci.bstream.avail_out == 0) { + if (zi->ci.bstream.avail_out == 0) + { if (zip64FlushWriteBuffer(zi) == ZIP_ERRNO) err = ZIP_ERRNO; zi->ci.bstream.avail_out = (uInt)Z_BUFSIZE; - zi->ci.bstream.next_out = (char *)zi->ci.buffered_data; + zi->ci.bstream.next_out = (char*)zi->ci.buffered_data; } total_out_before = zi->ci.bstream.total_out_lo32; err = BZ2_bzCompress(&zi->ci.bstream, BZ_FINISH); @@ -1554,13 +1632,15 @@ extern int ZEXPORT zipCloseFileInZipRaw64(zipFile file, ZPOS64_T uncompressed_si if (err == Z_STREAM_END) err = ZIP_OK; /* this is normal */ - if ((zi->ci.pos_in_buffered_data > 0) && (err == ZIP_OK)) { + if ((zi->ci.pos_in_buffered_data > 0) && (err == ZIP_OK)) + { if (zip64FlushWriteBuffer(zi) == ZIP_ERRNO) err = ZIP_ERRNO; } #ifdef HAVE_AES - if (zi->ci.method == AES_METHOD) { + if (zi->ci.method == AES_METHOD) + { unsigned char authcode[AES_AUTHCODESIZE]; fcrypt_end(authcode, &zi->ci.aes_ctx); @@ -1570,15 +1650,18 @@ extern int ZEXPORT zipCloseFileInZipRaw64(zipFile file, ZPOS64_T uncompressed_si } #endif - if (!zi->ci.raw) { - if (zi->ci.compression_method == Z_DEFLATED) { + if (!zi->ci.raw) + { + if (zi->ci.compression_method == Z_DEFLATED) + { int tmp_err = deflateEnd(&zi->ci.stream); if (err == ZIP_OK) err = tmp_err; zi->ci.stream_initialised = 0; } #ifdef HAVE_BZIP2 - else if (zi->ci.compression_method == Z_BZIP2ED) { + else if (zi->ci.compression_method == Z_BZIP2ED) + { int tmperr = BZ2_bzCompressEnd(&zi->ci.bstream); if (err == ZIP_OK) err = tmperr; @@ -1596,21 +1679,22 @@ extern int ZEXPORT zipCloseFileInZipRaw64(zipFile file, ZPOS64_T uncompressed_si #endif /* Update current item crc and sizes */ - if (compressed_size >= 0xffffffff || uncompressed_size >= 0xffffffff || zi->ci.pos_local_header >= 0xffffffff) { - zip64local_putValue_inmemory(zi->ci.central_header + 4, (uLong)45, 2); /* version made by */ - zip64local_putValue_inmemory(zi->ci.central_header + 6, (uLong)45, 2); /* version needed */ + if (compressed_size >= 0xffffffff || uncompressed_size >= 0xffffffff || zi->ci.pos_local_header >= 0xffffffff) + { + zip64local_putValue_inmemory(zi->ci.central_header+4, (uLong)45, 2); /* version made by */ + zip64local_putValue_inmemory(zi->ci.central_header+6, (uLong)45, 2); /* version needed */ } - zip64local_putValue_inmemory(zi->ci.central_header + 16, crc32, 4); /* crc */ + zip64local_putValue_inmemory(zi->ci.central_header+16, crc32, 4); /* crc */ if (compressed_size >= 0xffffffff) - zip64local_putValue_inmemory(zi->ci.central_header + 20, invalidValue, 4); /* compr size */ + zip64local_putValue_inmemory(zi->ci.central_header+20, invalidValue, 4); /* compr size */ else - zip64local_putValue_inmemory(zi->ci.central_header + 20, compressed_size, 4); /* compr size */ + zip64local_putValue_inmemory(zi->ci.central_header+20, compressed_size, 4); /* compr size */ if (zi->ci.stream.data_type == Z_ASCII) - zip64local_putValue_inmemory(zi->ci.central_header + 36, (uLong)Z_ASCII, 2); /* internal file attrib */ + zip64local_putValue_inmemory(zi->ci.central_header+36, (uLong)Z_ASCII, 2); /* internal file attrib */ if (uncompressed_size >= 0xffffffff) - zip64local_putValue_inmemory(zi->ci.central_header + 24, invalidValue, 4); /* uncompr size */ + zip64local_putValue_inmemory(zi->ci.central_header+24, invalidValue, 4); /* uncompr size */ else - zip64local_putValue_inmemory(zi->ci.central_header + 24, uncompressed_size, 4); /* uncompr size */ + zip64local_putValue_inmemory(zi->ci.central_header+24, uncompressed_size, 4); /* uncompr size */ /* Add ZIP64 extra info field for uncompressed size */ if (uncompressed_size >= 0xffffffff) @@ -1623,8 +1707,9 @@ extern int ZEXPORT zipCloseFileInZipRaw64(zipFile file, ZPOS64_T uncompressed_si datasize += 8; /* Add Extra Information Header for 'ZIP64 information' */ - if (datasize > 0) { - char *p = zi->ci.central_header + zi->ci.size_centralheader; + if (datasize > 0) + { + char* p = zi->ci.central_header + zi->ci.size_centralheader; if ((uLong)(datasize + 4) > zi->ci.size_centralextrafree) return ZIP_BADZIPFILE; @@ -1634,15 +1719,18 @@ extern int ZEXPORT zipCloseFileInZipRaw64(zipFile file, ZPOS64_T uncompressed_si zip64local_putValue_inmemory(p, datasize, 2); p += 2; - if (uncompressed_size >= 0xffffffff) { + if (uncompressed_size >= 0xffffffff) + { zip64local_putValue_inmemory(p, uncompressed_size, 8); p += 8; } - if (compressed_size >= 0xffffffff) { + if (compressed_size >= 0xffffffff) + { zip64local_putValue_inmemory(p, compressed_size, 8); p += 8; } - if (zi->ci.pos_local_header >= 0xffffffff) { + if (zi->ci.pos_local_header >= 0xffffffff) + { zip64local_putValue_inmemory(p, zi->ci.pos_local_header, 8); p += 8; } @@ -1651,13 +1739,14 @@ extern int ZEXPORT zipCloseFileInZipRaw64(zipFile file, ZPOS64_T uncompressed_si zi->ci.size_centralheader += datasize + 4; zi->ci.size_centralextra += datasize + 4; - zip64local_putValue_inmemory(zi->ci.central_header + 30, (uLong)zi->ci.size_centralextra, 2); + zip64local_putValue_inmemory(zi->ci.central_header+30, (uLong)zi->ci.size_centralextra, 2); } #ifdef HAVE_AES /* Write the AES extended info */ - if (zi->ci.method == AES_METHOD) { - char *p = zi->ci.central_header + zi->ci.size_centralheader; + if (zi->ci.method == AES_METHOD) + { + char* p = zi->ci.central_header + zi->ci.size_centralheader; datasize = 7; @@ -1683,13 +1772,13 @@ extern int ZEXPORT zipCloseFileInZipRaw64(zipFile file, ZPOS64_T uncompressed_si zi->ci.size_centralheader += datasize + 4; zi->ci.size_centralextra += datasize + 4; - zip64local_putValue_inmemory(zi->ci.central_header + 30, (uLong)zi->ci.size_centralextra, 2); + zip64local_putValue_inmemory(zi->ci.central_header+30, (uLong)zi->ci.size_centralextra, 2); } #endif /* Restore comment to correct position */ for (i = 0; i < zi->ci.size_comment; i++) - zi->ci.central_header[zi->ci.size_centralheader + i] = - zi->ci.central_header[zi->ci.size_centralheader + zi->ci.size_centralextrafree + i]; + zi->ci.central_header[zi->ci.size_centralheader+i] = + zi->ci.central_header[zi->ci.size_centralheader+zi->ci.size_centralextrafree+i]; zi->ci.size_centralheader += zi->ci.size_comment; if (err == ZIP_OK) @@ -1697,22 +1786,25 @@ extern int ZEXPORT zipCloseFileInZipRaw64(zipFile file, ZPOS64_T uncompressed_si free(zi->ci.central_header); - if (err == ZIP_OK) { + if (err == ZIP_OK) + { /* Update the LocalFileHeader with the new values. */ ZPOS64_T cur_pos_inzip = ZTELL64(zi->z_filefunc, zi->filestream); uLong cur_number_disk = zi->number_disk; /* Local file header is stored on previous disk, switch to make edits */ if (zi->ci.number_disk != cur_number_disk) - err = zipGoToSpecificDisk(file, (int)zi->ci.number_disk, 1); + err = zipGoToSpecificDisk(file, zi->ci.number_disk, 1); if (ZSEEK64(zi->z_filefunc, zi->filestream, zi->ci.pos_local_header + 14, ZLIB_FILEFUNC_SEEK_SET) != 0) err = ZIP_ERRNO; if (err == ZIP_OK) - err = zip64local_putValue(&zi->z_filefunc, zi->filestream, crc32, 4); /* crc 32, unknown */ + err = zip64local_putValue(&zi->z_filefunc, zi->filestream,crc32,4); /* crc 32, unknown */ - if (uncompressed_size >= 0xffffffff || compressed_size >= 0xffffffff) { - if (zi->ci.pos_zip64extrainfo > 0) { + if (uncompressed_size >= 0xffffffff || compressed_size >= 0xffffffff) + { + if (zi->ci.pos_zip64extrainfo > 0) + { /* Update the size in the ZIP64 extended field. */ if (ZSEEK64(zi->z_filefunc, zi->filestream, zi->ci.pos_zip64extrainfo + 4, ZLIB_FILEFUNC_SEEK_SET) != 0) err = ZIP_ERRNO; @@ -1721,18 +1813,21 @@ extern int ZEXPORT zipCloseFileInZipRaw64(zipFile file, ZPOS64_T uncompressed_si err = zip64local_putValue(&zi->z_filefunc, zi->filestream, uncompressed_size, 8); if (err == ZIP_OK) /* uncompressed size, unknown */ err = zip64local_putValue(&zi->z_filefunc, zi->filestream, compressed_size, 8); - } else + } + else err = ZIP_BADZIPFILE; /* Caller passed zip64 = 0, so no room for zip64 info -> fatal */ - } else { - if (err == ZIP_OK) /* compressed size, unknown */ - err = zip64local_putValue(&zi->z_filefunc, zi->filestream, compressed_size, 4); - if (err == ZIP_OK) /* uncompressed size, unknown */ - err = zip64local_putValue(&zi->z_filefunc, zi->filestream, uncompressed_size, 4); + } + else + { + if (err == ZIP_OK) /* compressed size, unknown */ + err = zip64local_putValue(&zi->z_filefunc, zi->filestream,compressed_size, 4); + if (err == ZIP_OK) /* uncompressed size, unknown */ + err = zip64local_putValue(&zi->z_filefunc, zi->filestream,uncompressed_size, 4); } /* Now switch back again to the disk we were on before */ if (zi->ci.number_disk != cur_number_disk) - err = zipGoToSpecificDisk(file, (int)cur_number_disk, 1); + err = zipGoToSpecificDisk(file, cur_number_disk, 1); if (ZSEEK64(zi->z_filefunc, zi->filestream, cur_pos_inzip, ZLIB_FILEFUNC_SEEK_SET) != 0) err = ZIP_ERRNO; @@ -1749,9 +1844,9 @@ extern int ZEXPORT zipCloseFileInZip(zipFile file) return zipCloseFileInZipRaw(file, 0, 0); } -extern int ZEXPORT zipClose(zipFile file, const char *global_comment) +extern int ZEXPORT zipClose(zipFile file, const char* global_comment) { - zip64_internal *zi; + zip64_internal* zi; int err = 0; uLong size_centraldir = 0; uInt size_global_comment = 0; @@ -1762,7 +1857,7 @@ extern int ZEXPORT zipClose(zipFile file, const char *global_comment) if (file == NULL) return ZIP_PARAMERROR; - zi = (zip64_internal *)file; + zi = (zip64_internal*)file; if (zi->in_opened_file_inzip == 1) err = zipCloseFileInZip(file); @@ -1772,7 +1867,8 @@ extern int ZEXPORT zipClose(zipFile file, const char *global_comment) global_comment = zi->globalcomment; #endif - if (zi->filestream != zi->filestream_with_CD) { + if (zi->filestream != zi->filestream_with_CD) + { if (ZCLOSE64(zi->z_filefunc, zi->filestream) != 0) if (err == ZIP_OK) err = ZIP_ERRNO; @@ -1783,10 +1879,13 @@ extern int ZEXPORT zipClose(zipFile file, const char *global_comment) centraldir_pos_inzip = ZTELL64(zi->z_filefunc, zi->filestream); - if (err == ZIP_OK) { - linkedlist_datablock_internal *ldi = zi->central_dir.first_block; - while (ldi != NULL) { - if ((err == ZIP_OK) && (ldi->filled_in_this_block > 0)) { + if (err == ZIP_OK) + { + linkedlist_datablock_internal* ldi = zi->central_dir.first_block; + while (ldi!= NULL) + { + if ((err == ZIP_OK) && (ldi->filled_in_this_block > 0)) + { write = ZWRITE64(zi->z_filefunc, zi->filestream, ldi->data, ldi->filled_in_this_block); if (write != ldi->filled_in_this_block) err = ZIP_ERRNO; @@ -1802,88 +1901,94 @@ extern int ZEXPORT zipClose(zipFile file, const char *global_comment) pos = centraldir_pos_inzip - zi->add_position_when_writting_offset; /* Write the ZIP64 central directory header */ - if (pos >= 0xffffffff || zi->number_entry > 0xffff) { + if (pos >= 0xffffffff || zi->number_entry > 0xffff) + { ZPOS64_T zip64eocd_pos_inzip = ZTELL64(zi->z_filefunc, zi->filestream); uLong zip64datasize = 44; err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)ZIP64ENDHEADERMAGIC, 4); - /* size of this 'zip64 end of central directory' */ + /* Size of this 'zip64 end of central directory' */ if (err == ZIP_OK) err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (ZPOS64_T)zip64datasize, 8); - /* version made by */ + /* Version made by */ if (err == ZIP_OK) err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)45, 2); - /* version needed */ + /* Version needed */ if (err == ZIP_OK) err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)45, 2); - /* number of this disk */ + /* Number of this disk */ if (err == ZIP_OK) err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)zi->number_disk_with_CD, 4); - /* number of the disk with the start of the central directory */ + /* Number of the disk with the start of the central directory */ if (err == ZIP_OK) err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)zi->number_disk_with_CD, 4); - /* total number of entries in the central dir on this disk */ + /* Total number of entries in the central dir on this disk */ if (err == ZIP_OK) err = zip64local_putValue(&zi->z_filefunc, zi->filestream, zi->number_entry, 8); - /* total number of entries in the central dir */ + /* Total number of entries in the central dir */ if (err == ZIP_OK) err = zip64local_putValue(&zi->z_filefunc, zi->filestream, zi->number_entry, 8); - /* size of the central directory */ + /* Size of the central directory */ if (err == ZIP_OK) err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (ZPOS64_T)size_centraldir, 8); - if (err == ZIP_OK) { - /* offset of start of central directory with respect to the starting disk number */ + if (err == ZIP_OK) + { + /* Offset of start of central directory with respect to the starting disk number */ ZPOS64_T pos = centraldir_pos_inzip - zi->add_position_when_writting_offset; err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (ZPOS64_T)pos, 8); } if (err == ZIP_OK) err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)ZIP64ENDLOCHEADERMAGIC, 4); - /* number of the disk with the start of the central directory */ + /* Number of the disk with the start of the central directory */ if (err == ZIP_OK) err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)zi->number_disk_with_CD, 4); - /*relative offset to the Zip64EndOfCentralDirectory */ - if (err == ZIP_OK) { + /* Relative offset to the Zip64EndOfCentralDirectory */ + if (err == ZIP_OK) + { ZPOS64_T pos = zip64eocd_pos_inzip - zi->add_position_when_writting_offset; err = zip64local_putValue(&zi->z_filefunc, zi->filestream, pos, 8); } - /* number of the disk with the start of the central directory */ + /* Number of the disk with the start of the central directory */ if (err == ZIP_OK) - err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)zi->number_disk_with_CD + 1, 4); + err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)zi->number_disk_with_CD+1, 4); } /* Write the central directory header */ - /* signature */ + /* Signature */ if (err == ZIP_OK) err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)ENDHEADERMAGIC, 4); - /* number of this disk */ + /* Number of this disk */ if (err == ZIP_OK) err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)zi->number_disk_with_CD, 2); - /* number of the disk with the start of the central directory */ + /* Number of the disk with the start of the central directory */ if (err == ZIP_OK) err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)zi->number_disk_with_CD, 2); - /* total number of entries in the central dir on this disk */ - if (err == ZIP_OK) { + /* Total number of entries in the central dir on this disk */ + if (err == ZIP_OK) + { if (zi->number_entry >= 0xffff) err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)0xffff, 2); /* use value in ZIP64 record */ else err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)zi->number_entry, 2); } - /* total number of entries in the central dir */ - if (err == ZIP_OK) { + /* Total number of entries in the central dir */ + if (err == ZIP_OK) + { if (zi->number_entry >= 0xffff) err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)0xffff, 2); /* use value in ZIP64 record */ else err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)zi->number_entry, 2); } - /* size of the central directory */ + /* Size of the central directory */ if (err == ZIP_OK) - err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)size_centraldir, 4); - /* offset of start of central directory with respect to the starting disk number */ - if (err == ZIP_OK) { + err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)size_centraldir,4); + /* Offset of start of central directory with respect to the starting disk number */ + if (err == ZIP_OK) + { ZPOS64_T pos = centraldir_pos_inzip - zi->add_position_when_writting_offset; if (pos >= 0xffffffff) err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)0xffffffff, 4); @@ -1897,7 +2002,8 @@ extern int ZEXPORT zipClose(zipFile file, const char *global_comment) size_global_comment = (uInt)strlen(global_comment); if (err == ZIP_OK) err = zip64local_putValue(&zi->z_filefunc, zi->filestream, (uLong)size_global_comment, 2); - if (err == ZIP_OK && size_global_comment > 0) { + if (err == ZIP_OK && size_global_comment > 0) + { if (ZWRITE64(zi->z_filefunc, zi->filestream, global_comment, size_global_comment) != size_global_comment) err = ZIP_ERRNO; } @@ -1912,4 +2018,3 @@ extern int ZEXPORT zipClose(zipFile file, const char *global_comment) return err; } - diff --git a/Zip/minizip/zip.h b/Zip/minizip/zip.h index 10bbf26..60208a3 100755 --- a/Zip/minizip/zip.h +++ b/Zip/minizip/zip.h @@ -15,8 +15,6 @@ #ifndef _ZIP_H #define _ZIP_H -#define HAVE_AES - #ifdef __cplusplus extern "C" { #endif @@ -79,8 +77,6 @@ typedef struct uLong external_fa; /* external file attributes 4 bytes */ } zip_fileinfo; -typedef const char* zipcharpc; - #define APPEND_STATUS_CREATE (0) #define APPEND_STATUS_CREATEAFTER (1) #define APPEND_STATUS_ADDINZIP (2) @@ -107,18 +103,18 @@ extern zipFile ZEXPORT zipOpen64 OF((const void *pathname, int append)); you must open a zipfile, and create another. Of course, you can use RAW reading and writing to copy the file you did not want delete. */ -extern zipFile ZEXPORT zipOpen2 OF((const char *pathname, int append, zipcharpc* globalcomment, +extern zipFile ZEXPORT zipOpen2 OF((const char *pathname, int append, const char ** globalcomment, zlib_filefunc_def* pzlib_filefunc_def)); -extern zipFile ZEXPORT zipOpen2_64 OF((const void *pathname, int append, zipcharpc* globalcomment, +extern zipFile ZEXPORT zipOpen2_64 OF((const void *pathname, int append, const char ** globalcomment, zlib_filefunc64_def* pzlib_filefunc_def)); extern zipFile ZEXPORT zipOpen3 OF((const char *pathname, int append, ZPOS64_T disk_size, - zipcharpc* globalcomment, zlib_filefunc_def* pzlib_filefunc_def)); + const char ** globalcomment, zlib_filefunc_def* pzlib_filefunc_def)); /* Same as zipOpen2 but allows specification of spanned zip size */ extern zipFile ZEXPORT zipOpen3_64 OF((const void *pathname, int append, ZPOS64_T disk_size, - zipcharpc* globalcomment, zlib_filefunc64_def* pzlib_filefunc_def)); + const char ** globalcomment, zlib_filefunc64_def* pzlib_filefunc_def)); extern int ZEXPORT zipOpenNewFileInZip OF((zipFile file, const char* filename, const zip_fileinfo* zipfi, const void* extrafield_local, uInt size_extrafield_local, const void* extrafield_global, diff --git a/examples/Sample/Sample/master.zip b/examples/Sample/Sample/master.zip index 1548e6f02f06c89b8f11e3fb8a1d5c104e66962c..96e2d453dd67d621da39661bb46496df30a6db63 100644 GIT binary patch literal 100881 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 literal 1871650 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

Bi@0NIGm^|H-K`lrMpnN4`g|( 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

fmCr^-QSExrZoXQQ6*VG zC5;@n7RxO-VFQS3s;pIrp=*e5q|2OUb8lv-#+HjFskJAbvAw^R)_NT z=FW10W4mlB(SotyUsP8yIP&vo)DGbRDoqF*J!bu)-t-(;s9! z_o}MhMRL1aP3N@`*om&Lw=Q<|*;cFsu0h6yrWaH&mt0v| zkw+*60X3qY7G+c21!9i3l_Z8yF;v<%xEfVH`=O?S(xE1Ggck%_z@9~Dc6~geN@fW} z!plIJ0nU}$xx8O$BhX8Mo|2e4!z{}(nL-c<3g}MK%x`;&9O|ATV4Z1kS%Ib8MrUXF zxkRqA0XQwTy!tK9nJGnERa)MD^iy#QM$Y6YXlQL9uWR~6SXJbZ(sC^&2t**z(>MB5 z6r+34&8d(ifGTJxYENlaC9#RtGEEe%DCV`ki?ZI{{itz=(bAv1m&}vBDeBy!Basqs zV{8T-OqhzKCFNGFxE;#P3;uy@$5x{~X=Qj~Tdo8W zR@Wc`K&W6hH?|Wgdm1su$djY_hBffhFSQF`)UId_>Jl>mpD1;JTIE4fY6&~3540YS zq{1eGCGR9;4PkC|$*D)!E{VX2ifeId?J(Q{ZI)GE3|xi=Tg!DXR+gZk=IlJ0BQ<9X zvYOyXRt^xH{nlk(QES3al{QiNu~evH4WS(W0I4s@y-|ZC)!DlqHqk|W8VUnK1Cep= zBeS&#=xHoxs;bn6YYODV1^t+om!l>UKs7)~TD3v-TiLoLu=q5W)VQH{BoH&P*ZnrP zJmNf-sBCdDEOxG$!R}L8bg8D&KxhpIF$}gKx{z2B#r6YRYh9Yf!$pNq>Q%bgj9Jaw z6zt32wGMFFDUB2ZU@KBZ6-C=w_eNReq;1EEU7?%k_m*#R95~^Yq@n`cEZM|{6IVkA zV91I{G#p~QS1lt#m4s<>n`jw(!3qH&cA0@WKx)#&Sab(hEX+h_nAHpvu>c<0uV&Z;pGj%7 zNgx6$ZmqjY(Wz)XSyf=IQY%tVbSFf_I3xr&FkRaxiq-7G`b$xR%&NQEKm?i}q^r6W!|GJb zlvRKv5?EA^RkZ!6r#sz(@HMuK)1%N+Pmn*V-=!ZGH_RrHL9O=mx?-{Olm^mae)*ULW)=v zyn@TM)=+M*Yr_;Sl6p8$Q9}d_ONGpZEyKd5(dmx%E~|si=ILI}aneXDxP#1`?xzeV zDt%}R04j4lDkAx;T9GnHyn@o$kQ^-(Hw~>6JtK#-kUW4r{;2HY$fUGz^5b!BGBZtJ z*cJ-Fp*N`<{){%k;wAzONF#9-1Vg(AFT1`QyyhQW2qQBZ>d}GdcPmfNYN&QO)UY() z+O@L%m}4@V<h**$`pGeX zQYFlnLKuVwV|tmtnk=&?VLwG#gARJdAxSI(DZ6Q%SR3-$x&{6KrZdsn%}His%1MHy zTH|qAf4A>)Xl10-}twOf;SzvayS|Tu-3$3}-Q6-RO5Y{@a+f1X`x)Gm@MQgCeX$SxhI4eDP zo2z9TBk07=hsMk@+E7AVj!H|q4lc1*iY)jYL=vSW(i&3}RhG;h1vb8QTQ$4h*^6?n zNaK1b%Kc=rXUr2Gsse?z=s0$kf+sY8RV8ehB5MkZSiPky#L}5hXOis;qDoe%iT6&K ziNeSOAP&L;y_L7M+`Qs1Lus$krtM5zM79NO060{;idxK|sfpcXcGm$krVVB(X>Bo- zOkS`v-7%&3o83D%M9v=ph7$V0hnTFQ(6a+sPxl#=o1J)t-I%T7wTJ@!LNv8^Cuk^O zjlE^6*54~&vbFAdBQC?D(upvOn!H*1yfAdwx1p}GVCP|&I960NWOiGS2ijF>i<1@~ z7_jQryU&|0VxzLlWGgvKj;yg>B}L&h+|d;)r6+lxJta~3>5NB9=uR1!Q!ZebX*of?5Um>8(A&Sm7pWTX zM7G(KtR$IlE?#a`Xv;r3U2PS1ykABsO3IS*c80F#11wtBl`Q2Z^ zgQ^`{9%wzko>A)}SR!D+pYaAO0?X|7M6%G2FFKeHsts?KwgHweg5A)QLM}h7EbGn+ z2ls*n>_iRU8pC&JYPt>kn}=2k?k|RxUL{#7dBk zHyPdWh?%Webuj+`kqu@vYe~?DO^C3hB+cat7K9zYHHIcH$eh=N*nenHerpLn=wjfM zB>vB;69N>3UJlB4;6{6Yk2r7C{t)Tc*$LYQwhaxMOe%}`Lct(xAAiO!=!_z-Dvz$G z@PjD-03J|lKKgx7a-V>JY_uFCIaQ$kq6r}~g{=HCfO4X!FvDeBsgTI$UMNyTlkn#U z!^!%)q0&mH*H~MTX?PDM0Ojz9GRO6&(uCnt-IOJAt>D2500#B4>R)kV%-2WJZZ%_2>A*Y1of0ef!}vh=$KP545iBi_D%s z3PLYBztRwyKfVL3gY6dDY%@)S{{XEi%tBLUW&U6eBQHFF^YuYh6xd0wA+xq$fIGOM zN@w-LZok?ZmW8(bAcbma)XKh82lt|fuR8J6 z%gA0_l~g2waoSd9P7&&fDvE9JGAYT>ev%PoY zXY_?hWfrsrfCjr&*}K2@qPK$9xw6eefl)#RK#ni1d{8sa@;$0AvX;3Gu7IS%hM=hf zB5hjud_}qJ#eJll$pu$>ad@#caDcW6^05U8+jkCk- zjPj+x=y=l^8%%2c84ucr z8cso0HJ}7spc;!03qgNHU;{D`gk(siU?uFrLVu!p{xRs4l_4lIG3W~lnHM%-u;eRG zsvuffAHpQW{P*R$z0jUAc-$$wGf&xuIXB2lM0`1yqZo?i-vknWJK@B^-12XXcf_`<)S9^>8dhHzMlN{qy&`>|fb=x1tx4)O`7F3-jt;&h8B6eo2FlsCdfUu+RtLmsd2sW75p`?*8juDqc` zDxaLp9p^8u9ZQxEBk_QLA)sW4eIil*&^UY-w{bKPFNDBX`ce|wLt_#?RGQP` z50p7fA&E&EJP*es4-No*(3d2~B*@uGm-UC3P=4-E^k4^fvXFJcdw!?}(80RRKaTiP z;(v`{MZrPS5BTndvTzKc{o!~8T7O9MpJ>mV4TYgVd3l&TvLUt5H}^nTBGWvh%6-2W zAe-#&-@XklXS3Pg6=l$0BG!pI=RMOk%2W*^=H9b4>#?ulebDkLAPg;hTd z@S+|0M6%M@*;M&c?}FL+Fyt=(0Irae2(;)SB4M5-vN_VAii1Ku)`i-4DiTjE#tJZN zT9Hz60E?AD+1ZL<_$j(eL&yeOhX!QA7GpD#=B>pl<3+FwwqrBXI>6I0)J6*;OOWmf z0&AmjOY%d$-Im&k-jg(oPic5*OVyck9cE%PMOH0p$dvt}z}$GUie@hbI||P(OQrIZ zw8J$v3c6a;WiuMptHiur-Ifg@v5k=3BWbBkH6{Gw^{lM(Zlk2TzgaHY{s9%Iax zFf-Lsm$jXhUk|$zm~9TSFP$^1aL+)FrIFi-rLy<-ghkBJmFrl_pmB7yJOZt9%Uejx zx-vML)RQA|@|9U;319+Ml~rs}O|7L-vRFhstX#Ued#+|AC>dtovur=p7$Gbku(w=o zuvX+@+Wy;72(tKz1XmzD#Ak8X^|DFrxIIqD6aZAH?Qufb$@1vWESWYRs&> zL-Vr*(H0xkfhbUnxRs9#$#D-dMT}QGw-PCEJ*#`57a=u6>H2AmlvYqIa>3O=U>k>P zwGA-XRy886ypl;f;l3LkZ!$qSgP+p&L!pYHIqdJt&)tHe>Vx6r0!g^21L9lhL*b)C z%<9#Zwr&JwrMptuyW%-kr(_#W@&O|_B>XE&D#Em=D$8Cj%nL>Q11>-WwS}!UWvCmr zdp;PR&^l^SnDXb`l4l};F?Y*;C78#3J11rdgu<-M%Qfw^)Sz3BWtY_pOx3w_gOqTO zEHPy@rpopeMH|CxCH#y+dPe~+St4AOQglh+3MYp!)ULGHON|_Q!t-!c(KuU$-bsOl__hQMbGo;w^Cre}364K@|3uD_=X>R$Y-s>ws zcTj0Q3YMy29^yqPD{^^wm3t@E6U(55P_d#+4r{ohD{!~H5mEz7HKt10sU%z!{cUtu zzd@NgQ_N7HOC4g%2Bnd+Q)MVM+Bj}NLIOTbXF6PQBF zodZ*9-Kdl3)=Cy(IS*G#)U}R>#CSlIdb5KAk3eb`2SVs!&YXo4lYYU3sYW9_uktKw{ zvr^{2a+V^Q4$rm$%gY}aTPCOKxtAhao+hCQU8I(O)pcG?7R(lpkeE^^I>IO%9ha~A zmoE@e^rAjSCWV54Z$U1HFaiGnj5Zo7V_KZMO%rZ1m$mMP7tIagwg8LdbA)V z2x6kUyETL~eu^^YIiO+<7NYW_#;e~J-5;xFT)C8$F+vbYw2jNO&EdP%6PmfIHIgPh zEtqP9GQy2%>pz4pSrS8|j@eMv>?xTsoY$)r1cnv3c$e^tRt*D7*$)?sER;)yXl(&T(=^^}B10RcExLi`I2C14Qb6BxRDRSBuIYg@ zYI+G$Z6aE-(7Ek2{{Y~zkSbzLB4KIJyB*8e7(8BCQbhF3+`?3RpsKCC<2?aG^rGaXn?3? zb6QoXa;Jrs9OH07YC@VE$sT-LFw+O1f!t^b%}J$T!fnzk`pt+vOIS*p)RD}1wzy)6 zp>!#8)-3~}GzUA`ztm>R-=i9Sv1lWhp-{jA2^Rew@TP~~}g& zsp#|FS4qjqx<>|8h!x8!8uH?XlQ321Me`ZfG!0|bd5KoYiU1DaSom&=eEBS<))|Tr zJW=U!-yI2cI z8L6)mG)Em(n=I`l#i6KWCWq9lpS=z4PeyeXiA-h=gbL?Oijt*i{^G=@J47>JQd>&| ztisafsSH_OrKQbdpFEZzl!i{Mii*^bP4)KIccv%xM?q~CMlOi2e4^yN)|+N^Y(QYX zn5&>@r(*Oh$!%L0Q12Oj(w(6RJ|v!G5nO>bx2o33V#y~~nqmoo-33Urwe@SZwixVt zzqSKop1{>`M7y*gtG}qC{f#Lk%GMrJ)E~9jlqL zF$1M~AI5cM)>2Ih0WB_JcMHU;)whUxVR3Oq$ugfeP9=`1LXK-zTU|R_E!_}-MrW*- zFFF9gn}>^LuFGA1CY3<}&kEo??R8d~(o)Q~7meNnbNS~I)yCNW~QU`bq* zp|oYf-&`$*p7RN67CBU?rK80Q;_#?IWCtJvDa-!=+Dn8mIcBU-(<&NngXI)xTC1(E zB3+WoOjb8N>Qt+h3Ocr0UD@Kh+Y;IeWa;IVKobsmAunj!*=0Mu?4pZ>(~}gc-lp-L z>KSwKTSHj5=q(^EDb|Th#NRb4Eo*jFIjG@YFS-)-!Y|<6x*+MZ8-rwAYs|!8mC5TaUNS?dLW&B^L=F1eXahQp%(ne&8n;KCAts5%N@;Tp-4~1s#1c#4%lNIzsk6kb zv*#7c`Tqbvs0}oBS}(Fa)xugg8!lwDnJt9La}+eU2BDPrS#tE4as(-qs86f=k2p=1 z9TWYG6o|B18^; z{V0)`KfE@Yu*B&QV=*`G-O3v%i3gSOgpL*sGLV2UVJ;me11MZ!viMRdvLT$gepSyX zb0$xhwj9fmN@tWiL>$Mk_rm*%X^ljPQ82a6qMv*y>-{t33Mx=<9pVAX%b*bl_JyFb z#eS$%A7}A^Y$dKj1^(58z?83jJInw(;*mUsXZ-iU3qU(VdGmRB8W^&J&ct^@7ejl9 z`l|`HBfIK6pz6xlyUq6b2t-bTw8Kp4z8iJ)ubeV5&=vAKo4dc1G@CZwe{>`(dUoz~-b^xVNFNw&i^um+4q$miJ}*mh-%Dt;&FVK3EF^Dr5%MQ08rqYYJe>*Y3>hQkgqO@tpCHjyU z11?&TF#}AtsX$1$o+e?!A}z3JMKVWXS(xT6-)h~G=MQwbRhuz*${Jj9xD1=@#2zYm zb5Y$&9{ww%ko4L$Euw!$i6T+7mYGljzEwAD+S{nyq7iQs2q4t4B~(|*ygZ8fC4Z{vHVhc@Sg`vSD zF#wV&nDu(NVn-LFo?|rGwA#`-Tx z5VRDa8P}hy=*5FW8D?N+19fXkl{`$#`QeC9{7Tln`++$xyZ-=ak&}j0md3e&K(8~! zYPV`L@a=LE`3G2ZX`M98$pHaCBO`AMeJDd2p(e70XH!A2wKSmg)3{n8gsn8ypgSZ0 z0Tlptz3abbB{5SERd^&3XarD`R<~*y88-Gpu5RX}5s?(#Orz0ildST<0i^=NdAR0a zVcpBv13aAn0MZc+U+WI^rW)2DXTGP|;e@csk@}*L^b0xeKLG(cWof(N4pSBYr;!J~ z89V;~NVMMtc?^@v{{R>qG~!K39mc!A%r<6$llk^Uq!B9kl^%XZ85~x7fagw7l-XyT zIKp9Tza{VU@WH3LDuQ*NU28$#79A5Tu(;4r`N8K zVu)v1vUyNt17EP?bJgJ>C{{Yq-Ptb}@b3Rn0N65z- z@5;N5;}Yjc3TN>resC2e^Z>N90RoT+8D|V}6GXh0wI-xj_o1t4HelPOw`Y;Bd_Tcs)KyJs-$+t!1sqjrzJ!d)FmRKLDu#G@Pro)B zjbdX)$|oVn5_5#wYp5Hj2I_D3q5h^$24fRW?Z(g#rC_%Egd;5>P(6`b@KC(5U(b9zkl)%EqWAsK;UD4LU|B4EGJH1uA`)|6?cZ60 z05L$$zeKAB!%Uf2@)AF^c}KJ12DT*>84s7X4zm9Mj_)`sr}>8x*ZgvUZ^3s!0Z-^5 z!jH*-l(4e*cl~i-y|dDO8}kt5VXB|1zkDw&_rMXYiliwte~30zf~XbyqUp{AB>1e!w8o;+rB2IeT;VM}oob_Ix19nS5YE97quR4=Z=y4REq)5;#d>gq~cX zG7bovz+tigfup~z3@R`{4qe0;kYvx0_`!O*{wA?jk#t7?0OPCm z69h~T^oeDYLC@iwDw0J$6{RAr7Dq~v$^=R8hk{S_qDH1K1%K zKF;`r^I-t~8{@=5U7mGJ0rreC}sZuk;p_QvJ}`-M{1(ABW4b)tE5yl%L6u9Mt-hl6wH=gg4)Q% zg55Dx?HcU{Rc|=UI$+b+Dx|yZd5p74t?kvzZT>eOFMS2Q-8X_A&ir)BFOta`1o!Br(z<`=D_!^C3itdhS*#a^ak-znLZ z+JzY!?ygf%Wlh{s7p&T?Hy2sE66cvoF(u1-8v@*~HCJw|n>R*gn(%0gPnKr-OAt)Q z4DRx-s3hfb?6a#ko!<04(UOUkvh{ivR4s5tCuZeZ@k31=dTdNn)qI(*2RQOs}dq*tcmOSk>%2n%eUD=(hSADS~rL>TpS;PruSxIu`15`UV zGcvcAhB8caT@}nM%So+wQ~}-m&`l)Q1!C7Rs1AEdH~pBAeFW^LUXk0)ds~W6t6l_fHsmhuc*g~0Pf#U zXQt@35*5R>xr2}tE8-rQlf+JLtT3#}W`NOiQ`%Xc61^6A(gT!T8x(QLQ3Q{K_QgVpqif-yc!p5aC+uYxS*#9{_V~Y zz@>MR2&f~Q4@*Lr#684MYKB5pfl@#;H6E_$uX2og3k&5iDxlK4J}8dENJBXl zDhNx-0E#kjs*m+OPKQ+LrfqFC=Hd?=HBZ@i>ex=474wpQBn$l?yC9vqB~VJ zH2$@TW^q<(RM(4%jA*!XKqx9m$ZpCxnR058(8Gycu@RxAty?>fF}j0=Vi#DPxl~0g z!y?<27mJC!UYM|)HAudc0GmO~n|4;PY#J#HY@sJIe7xfyaj&sGa8M@d?9IqTx`S~m zb1;cr1AtjeYpTp7k}kNKpZ3?Y7W@V+Kp?3tT(ZmSg_j1bNgydBDh@ z6GmZNvz(Pd001{tdsdjR;c!eUT4msjg|q^`>=z1Aa-krKR+$)iB`ZzfcOK|lW|+o> z5Tz+XDV2*PJZLpTjc?A`?ux?>R!#k3&1Nhi9Q3DON`g3kV0~wBh9mPqZ08rom z0M^UJ6LTaiEpC`* zO}K0=5x(N}Abz-YfQI^M0cQai}vh72mletqf z&LP`eq?w4tSsvORse=;8)vLVVcGF6(!yB1 zHHM~!;02gc?B~!V3UhD%0f(r?xXUo3BHR?bn z@)5^tuWbJSYA5twv}q|8I!%`l~m1;#aTdeEHK*^ z?X1ad#D3DodnXxtOq)UmigYtj%3vtYNOgB+ zyXMN~qPv#e(MZ#p5v8%twKcbWRPeO6?Fey-nAx)vxC9EhSJbdLN1Rod%P%YeQ@pKw zE54DU8V1uN6BNSGMtiqVQ-&m2Jci?t6fnydD(Wz(J;OS|u#?U}{7LfhG&k@nwk?9f zmS6@zkQkipuMN>RWVvL4Ji7t_P_zWL%Qem6f@pmf7}ZUL3$ry22WQfIq8CWvO3W>3 z0m-QF6P2y+LhjvIQRLJ0Pf5&Gn5`)%2T%;jq`R!5w#@35yCbxGO>9W$jBM1LWfnxj zJ#0r6`M27Z%bgVVZf4^9QJ3hQD#0vfB3%mPX>QjGH)wieM9_HIuO(CFnFwT*bYx@NMZ3$h1FPAcs(LTK`DuPNB;)`&!J2n) zH1FjVEnC+k)_#kLM3sw7j^Qq94hgayxUL&k_F~NK-~J+~mM-V;gk7N{h=xw>kcHy zq$@5|D5(W#f(KUj0na~=C@v~+1C$ccR1mOU{{SF+;x2xXq4@F<>{cSZ{!t${>-NK{ z)`){+F?{p(RwL(PiQo8cg5qa+{30%HAoD)Vxki{lQ8o@U5>8c!>4U%Oq#kx7`a@Tl z8WKqo!aU#U3Bibj+6Rr2z<5N$&jlcVNMS-wpPqDzp0#O~mQ*aGGa?Mi8YOp2`b2%0 zw>gLx*13IuP)Q7;w;Ee>aIL=%FLpEKYN@)gmGWY9wF-OnvtFo4d4XxXXKLS&Td8jk z6ja%5RW#p`B;;Gu9T~3rE@a6LvdtWf>eQ+R;cq7N@cSd4HK{F_vdE#73Yuq`Zq>fn z^Zix@jp*HrCE5$4vEgnFK~QaADnULkKIo9e$}-g^Bbv5V96*{iu^XVYS(?Fe8Rkei zj@7I_`oudc^Wv4{KnvO5hZ}bP*WjOTJwZP zE0qVfJkuJq6|W+Hm)(G-{1o-b>q=m9ps6I#0a}{)VN5=XnJfn&tpFqepB1}J5AR(*VAG8)9k7w=2o-Gu?0tWv8&zyLOFqiQ29q=rw0-ua3zYp&P68``mW)+tvCkUXhx{t_! z7-(}Z4fuQ_Q3R!-^7Dn2f2~}ZJD}2dRPT zVM$BAS(=)Dpwj)W{{R?FoWHygT!PFXCXcERGrtNzwCEz&0UiiMdEOh$Xe3m$g&Ju4p{(bE zkqJx&h8U2Bz?nbtVlI9l3e`ak%;rJt?N??TPJi$0hLZpwsTBtzA&F2fM1GgVD`A)l z8VV3pP!(>~(NO6NLcHN3cqx7zYiYP6BGHvsd9T?KH6^AMohXF{SW>PSP^-4fHOFh- z?}nOFS%B)u4rmOylI$k6TUo8#!@Ft=x7YnyNVy6o8- zYwWLz2SMrKHcZS|>gD1ksYh0F4B0mAN|e3p#2I#>Jtd-DT6#;kq{L>Hi?-+o6t!O( z_*dZ&@1f>?jE;zU`Hr&0va}_ehHEQu+s^1r86)1Vp}egh$dlLx^`EpWzB7lW=pfBhiGlA(-Mm=(yuP?NnSB-%PVhe;tLZhQI-f| z95RPcO&BuqOH<+J68QE;n5#1Ks8xE(5=GzcEh|s8-w{}?7OOO=VAL!L4YGSm%i;5k zQfSzS;?9+|*-12|#H%RbyTt;t_p>OpkPE8rVg8#hX6R2BFjr&}Hxe^Z>V>6grb+=z zNINA(52=dh2_C({I#OVl)oht%t^t%5Q~vE}ws3WG~U&Xqr1YYm(ni5W2=NgPAd;)zv~C^sCz6f`+@tzJ;BCmmKS6dKThO_X8b zUdZ=gY`P;Rf(Y5nb34AwDJFk)ej{;$%(&FC8_wiA`>}JwXi}=KcRB_D9KiJ}L@ujf%U&h}WiFuEp$%%P``l5bV01Y$?_pCy z5omMwyjgBo=H;2y!vejlcs{avmEe{GOf{*aHp=Y9;~AjblQo!7I-(+qv9Aj(Fx1Tk zs9o4NF7|b1t5Ca2*6)ka!tOze8fJR2m_QbXiL%E~ZamWFXJ{ad@ z$!ALxDcNd~vMIShpd5$MgG)QkUBL6C1`W>UPF#qjIqC&>a@;pY2{W$<>qK(OB>Q)o zRMI8YKppvaLsphSAPQwnxx$Y%h@}qf%q{FBs>4ac4fOLBgs~Wm{uIl0aHOmYHu69N zF8FyP1x@rk>S9rLlB5$y=+IWAkZX|g@mmiRQ`x$r0cFDKrkv@|x*!i;LrIm)8rOG} zDvwS1^U4gkdJX)mmna-MS9LeiwSq{_wwC)9Jf}Gn_!M)ckd@Cc_4doJB>e<4702?DhN4e-g{9J66aPI z3ydlb%92K8=TCM81xC@gnDc|l!jW?lH;Mo^gXapg#GtqlodB-U^(+yc$y;d=^sev5 z4zsJoD^0?gd(h@)5EHXdJo!OR98!SRpr2t7G&{XCH0nX_9#QVA+3|&?XwX2ZJNE-a zQ3jlVRFg^y0CKEG7k>1}`LZ{|A%qbAYt&`rVK-6jg|usgnp8&2ll5|sEXr~{`3mO` z+ErkpTnO&_R7qfQnJuEZRD+lBg;lPvATj{bwe-UTkbBQ~rt)H1Oplus1&wzTMz5+g z#;E3GsJlR5us{wWxSjPR#AZJPvj)&C7NUnJla+`8g3y-k8RrgWTT`E~4*viTwhPUO zQ>SM;bfc<4u=5tZV@*2Ax|nxhPK32PGEEy;RHhqqTLvMTZP~ zZVC#31w30(%N-`Ol#86O?K+wf>n4`ckObH&MdB|^V#s3mWI=^)FZ1*v4Ogyt}@(qRkJI17qS}Z zsjD(=&mc^91PZZBkZ|m&rq`+@HIqa2WZ5m`yZ*5P*d2e}w{?9>6}h@nt+eH66e&4c zqr>sqjnHZB9LYhhMtV;|plzvZEky{IcwjtBGd<1WioTSdfRkg(Es+68mTB6Q)ZIvV ziNgUlreSnqSg=F(Tg_l`80m@t3=Fa;QHDeo?6XGby&2@FueOl4fx`pDtTU+aw`MI9 zG{l#XDjb$5rA-4fw##))xvH-bx*{YiNodKFB}`Xmc4K6Ac4D88(^W$#)KGwrFCwDu(yu1xY&yc}d6MwmUu2p9ML|Qv+v{4y z0>}i{F_$ci5?AilbMvZ~dXFO`zV+pyWx+`fi5U z>@Yh>rA9!hJDar9{6ZMMO3@*VY7)UktZEcwt6n8vb|p1;Lr9r0EW z%yuc>yipT`P8BpH<^_FRKG>9*geZ1u4px9@z#WsczsnTgg6hV239}@#Y}J9aff+Ib zn)*+vV)cvAlCcu{%s3%tN@aersbh{QQrErtGktW3JqxB4g|96dWUxRa0Is)fEcNmF zxVgie766&c)z(tEG(zkVO}tBOF5Sg#&<~pisHHvyrL#+QD$B&Dc-a>1c8ds=(WqKo zz_3|lfCEs5=F-=4`_S)LuqA^|VlEBUGF(eLhPLHZ@`#-uBQteZEWz(T@`l@J9oepE zy={C*6IB3w3L!v3kvWTOtkvxXqgFbvpk9;bPLpAsDJDF|0z~YVS+{BAHuaU^O`y9& zYB+OM^}%FLmv~_=;AX1OhXZ99SGE(2-j1B;Pf5v4e1M=CSe2P3TL!BmpPXK?jY7Jx zW${s|>VfU8P%`&Adr0WCGjQR;yuuwCXxdj-TllxBR~Ij(nvppoX2{==x9sfy00?D@ za;n7Cstc93oWG1Yk}?!I9jfy;ZA3yI*fSGzpLXtX3abluvoXuwf|-zDo&d{0tP#gRFvkzA$Bz_-=}_!Yn2Q za)pZfJhR>JK~#G;d}6`25vBhCNF>GlVQGR31c-vF54$foHQ(Gq1;4a;o+T70@BMxd z+0V0|??Qxr75G7S<(JnMQxkUlc^EXe{P#zuOQ$j4Ph=n_595)8plm)U{{U!aR=?gC zoYnq@8=vv*f=QHtRHu3J?t-(A>q7u$e|Tj&ZhX1r&J8EQPh*@;EN&b5nnMgk+Kxj% zx)W!H_{>lo`9q@+0?uj*et4oM6^{eI`ommiHou=Zj-5B|jd6y9{EA}nb%t#|4CWD2 z4O-9*gmtVUSM%o%9dh$9nOGtTH|IDhSXGCz5@QgEC+3{svqneR3R?sp$0&@nQT3Br zCtT9xA=wozLt2i?vE`N9F;dmdUN1b%n#{9vaxEE*muJF1cG%dAv7JE74EJt^&4f_p z!hpn4nw2Ck4%enIO9O7(v7QX?O?0u<&UG@uR7+F?MrXJEM(%GEXVPt(Gps-r*t<+t zH3VJi@Wt0%wMD1mfR`*F-tGmUhFg|ht;BNT?ERRK)7pj>NHW5!g+zRXLi(9_g?F@K z$sCz3_K?d_;Gtn;G{PMyfRGa^REFAiv}}*wiw>AvG^tk1Q8Czy$OW3#+G}&AJu9^p zd=@rq?8{IDvcZ^Al?-jR?j7Bq6b=hm2GYwmeHi>EEI;6 zM7kh$0a~;nhlef8&3jQ-()dZAKGPI3D5A4$n)YR`=Ax)8vO@5+(d}T-ono5^E`SxNp&%~G-PyZ_ z?~G-iY;6pUwq)8%K{}Cr0X3i*|-?|&Vk8R^WZcs6omO-Ik^BzbSQZheR zbP5p)*Yec4-(|4#)NEN9Dm8k7y8u4e07UQ!nOmdUwM8o5fnb4XN2Jv5dA8OXI z07+t0Znt>L#m{Ofm?^;QfN~YBVrK`2reqD(1Ah3;{A{B&C8{IDs+p{4+;Ery6aduc zmRvhaz8#hF_HzBG%`iH6twNDn)Q)+ryHK=^bC|Ui%9(cpd@rm~fMcL1nNYk|R zX$^=~pr{74p*h#X{{UDvFA@=1jc5VP46E6Urw^wqFgq4%8qk`Of0)F!l-7>13JQfJ z76h7-I9v0&B)w&J%9TF=u94cZ{h;)iaZ^E+Kn9@ry!L(AoK^V$0BFYW8g$DPTGpW5 z%r9wGyE#R{HT70VdJ;&cbuYuR&2NeirS)jI)ZW3#(>u|4OgKEF(`0@?h`mhHMs&NF z0kx0@rk$v?%aQl)j`l38BvVgDIYGtKBE}eZa^DKdlTPS-xPKwPBUm)KApZauYiWvT zYh)`e4)4YsiC$k+I#m4ff$k^dV`vrl=gJmE8}i-0zL-$qy_uSrGE4IIWt3HwN0m>P z!W3B_p7=0W5Ivqlx+yXM5P5gxJG)S~QTY&5ACn79=iL-lo)Z1O$WTl8N0tn<&XHDF zqQ`*zV1WJ*ar}2cg~)Ird3F9Ug16+ts$vGTI746IpL8uPeUOBdg+qu2pCPGPA%vUc zeX${j#&Y~30dXhHcS6$fKVRbl<7$iUOM=4MLY?qc#FO6<0~7urWaB%lx)$JHacP$~ z`@lTW{h|^^JC#p#I}cyR5a2R0UP%>k-|&YkG9tP2i5xim)&a#J`-jOs9m}8W?l8jW zQe4jXOBk6du0Npf5V)BUi!!v&c2Mai{v6?M*kiejH^E5ud1t@q!UPx=PVLm+-xAA5 zv1Sn?f87d95R~oF5kUw78??|rgnD88A-vVg>w-Y-2Q$arz8K7%ncYqBXM~zb{_w=K z18ttfVmqN0oA_>noG(9wAmWv$ceWUWyBlJr=Rv%U-O$bCw|VwkSbu^{tCd?acl)rb z2sN=q6JD_|FR7bLQ>5n=7hNRD zMhu{<0<0KR6=m91Sk3g-h?eC+R+iGkETWkss_iRo+Pj4R05lp!DXSt|SW;dhie<1$ zF?Kf!mD-UnE&l68M_RPwOPG^U%*J_);#(UKf~V&e(Xv(kzUW6!=?7_sSe9PZ0h(GG zBe!N{Dir0#vk>}Te8JS2lGVhrS20CJxLU8`ftuEhP)YJ3t@>VLOLJ=i%U5nS&uOGw zw6x`Ks6|dh$&Ny-w!M@UQI!DUnJ(^8bk>YP62%aryIw$gqp9s$*(!Hi5L2;KlS)ik zuP~eGLXyV{t1fhI8+c=%JZ|R1rp{YAQuMCK=+I=BeL7Tsx%d^7Fy!+xK4wn;=BDo$_f$kX?u(~S+b93ZK8_gnn zLCg~7J5sIz3Vl~?L39p|EW|GI0+3GXwK%)tT{JyriC|QyA%M!PIGXR;jF~61W-M)v zHGcvoOfLB-txy63w`Xg#YrZ6L8a#sbf+c_k?iM>;o)~eUuq?X(T%nH8+^53PWWt(| zgdEzYqadMe-yG@WI@s|Kbx#9)uo!^kP$12i4X&}gF?P}7w3Mz8idD@lmZNEw>W#Rn z=xrM@ivR*5g1u!xV^;L%N=4pYfl{Fn8qj#vYV6$FV|tI-j($mRXHyP0TP8GIz-CL` zGS;*bZY0-xQ4b^Atg{4UzRe`(N2y>|T#&d6t4rWUBKuUoRlmg6(WY}_dLZ~wQVE}h~ zVZxf9&gift8DV8l$G!+i&!2IFD)+%qmOFW3oR6JzFmSto*&OrV4VRZK{Ne10c|oLQ zm)e0@Ro(T&ofygv+JjuK8C&XvuBjOS0io|A9tnHO)UH{d+JmDeM{2#pqUP4Hr82H{ z0v5weqMU&zDv^?pOfsAHeV@$^GocyKiW5!W`$18fOItm8%b2YO=o#}FSXDu;S&h)7 zj2JYbr3HUCLX%{XypiqBr_&OJ+HQnjX{kd_dF5Da*jrmF_taJ-ByZ2_?l7F&m9wD) zR-?GYuV9p^(i+JC)a8)KZmEM!9O^R8gl0r}_wJxPgeNgO_tzuk0>-XJQ__Z`na?fI zfltYYZYc<{`=Kn^7ojEp01zTy_4dNdz5dYyWj{OMOYQ1zb*=+$q8H1if-J~`Q#hOoqfx|7z7%M3o?gM{@9HBXy4cXLEwEi%8xqwAH z$UD!w3E_)vZ`@9FhS|@y(O$;NS($)Mrnc@Xf233N_OBwB>kvG-ibJT{R#q9SdG|MF zE(%B{U^%hO9mIRS$YG~2;$*i3RM3^Df4c&uOzEWS@N#ao>Z4$%KUR#`b9}`PLqAt= z+PlzuUkIdQ^enlI%#$Y}VQ?nhGE1RIdR)(rm1Okn@+J#%TnUXJT2P0oMl?ypvhxYRG2{_O;+{n zw5z_&(YDIb65dZ)E@3kjXvhdGt=Y@|s}=oX&{HuIM8IY|)Y&Q)Sq!6#t8A_QXzF5} zJ2^QbwwZ?EF-2$!uIdoZ64B~rsD`@1gH4-AVL_6;!tT>dZ%->?&!seBWa=g=g%47sgqEqIG=W%pxJ<3?9RHY)_V?Jhu& zMQ$|V;qgS?jMDQZsuEZR3QB`&x_DWuwQ}s;#SJy1S9+QKT(VteRG_BPo2_MUcAQab z#A?j5g_=6x{{W-QSEA8^vt-hlmo+|^jj9qtX$%8Tn8sYYRHZ_Lcv3&pQn_s%(H@$= zYSozExXNUhuBXD;Z-nIOaW3AktWs1Ng5sn%idj>;-i7ArS(Q@QiIh7^S*vN}v0ET? z(B%ZNHe1V<=BmYWZ=%%UXt#gxd2b<%&aEe*Q7j|T-cV~+V=u2~ZrEdo)4gQWTwK>H zT3ui^Azhno8zH&1u@8iwWXG7Kkgm$5iDFRIRa?XlP)EC6QWUv@3}hpdf-C4#fz zRapo|rAt!TmgRH(n38V3N@|MEx9B4(%T=0M3K^Et=Vr^SE0@}ahZYLnOD#7V6}r1W zHr?HumMr?^tYTq$7I_l@Hrs0V;)#qSC-|nl%9c7G<qW%G@t^2czjB& z{LtNNxp8c?mGQKkcGt!M}!w{Y6EqgCiHS?$s|GUTfMnI-L0L`|)>WbdG5 zyTcg7r($yq2&g+IwH=o5{V2QibEM`5Npk2OQyfYXD8Z4c%XWJd@T?Nh652ke&T!?5 zm1L_7sB1>GmJ4p`Wt9M|R{A&ARm5O$(=7_^EC(P_UD2&(+2+S;EI6z{6kP5iv>lc4 zLU>}VP^afA!gTiiP!h1+qrB7Lz8GEXd0&J#GNG1LDiNpl5K}G{ zbb$%w1!C&NNP@zT3B{HpGG_Q@!m#PYCdmYvK#WAJ;9Ct3KR+1oSY?4j57Fb@N4MD$ zP5dD+k#LSsZsp}Wg9f|P}remlFNGC#B$27);5gouS0encYEAhy9`E~ogxDgB`BFnPjk z+x@V_ofIq9^QS5U4W__Oo_Az>hbU&#kHhb*8i*D+bL{%zv$y03Z!-`%!+E&w?caPd zF-(KgHW2+Zenc^RSGF6rE87fFqG)+H9tY#`hBI;B#Qy*^GM$Ov3})iL7-V1zW4ZcN z`TH`6$+*I6{9z}X?B}`@nqlb!z?)3`AtKOwf20+g`a=;yGe`JZXKn!>9t0hTC&Az*}mV+)mn)07$t##o&ofQ2jr6OdzVel3(HaU#5k-BFnP zP}@sr<$TJ5#85HbgR;?)Vmd~hDr-w%2uEN};%#l2mhW#AVa?QiH}`SiY$D`qPplI9 z;V2!tRjLJwIJTR0esKNgL$U1u8f&TzW*{d$HtAt@ttST6qkRnoLt|>~Z zEe|TG{n*bsJJaH1qO%o8RswCvhtoQCQ2zi>7p(=mS@>Gtr3aZ~nzYeSZY;^>Y8=3GqJ$(7LsBl;Wo_*iJQjoj z48$Zj2GSae88*ANbKeei*GP?-XvX#d+=IfMnQDDr7_Z3EB|(;QsI&pRhTpZnd~kAQ zc&Dxny^2bhiieq5lSz6K3ll}H+$y{2^kLc4>XPkSuW~~Y+&!CNr(QypBA^m!%PttN zPGz{7ouioW);ZFXo3_mnjU=eBOvNdw$ZpEH*TW34OK~Ect4?|NZibR@mpK^=Xli-a z!qDw;0-;ACn^X2+60Qs6g8dl&L<~KhfdraNBg(s@(92~}Rx{5$yo@Zff&M(9dAJ}= zNhEtX>N23;zcEAEhPqb@ zz~#&u4d=rVGce4%!5-dl_@ws8gG`xI`K%UDr}u~Y9$t0Gjnq8r4|KK#R1!07`SJ(D z4DLzMWGMbQm{HJjA`%8Y20=_bx|$B^#GujSbKjjJK1_!M8X9vn-V93&Sro`0Z|=gT z{fHWVj$i?&DuZ7y=?(53`}dO)czk($nu9#3IR%GUOa!oM*_^033V5=FInvoLLG*1U zjKS~S>4Y(wa;Acyax|n%lu4U`G~Q1L^sGZ^i3+4;mf}Z$iV&J_e3X@sv`#1iUHRrt z@FI3@Hd_slDn$u7MMtdwW!=l4y$#bByyseSJ@CaF*fdLHF*INRrg@XNFAmfws!ryh z?-|5C6BHPbYmlW$g_}vL?1FQyWOFcX4ydMBrs6=&sySpUoxD&QI~FDqf}tu6PT{r0 z(N!~;o^<7(??m1oN(7b_2H87a-qzGDF4DVMwP*}%j56DKsVk79(3PdlZ;SR~>4nm$ zMQ#+JCZ$2l7TI3b=;wV6qzR)o;kuke{V18zde}$^c2h7EZ>ejpX5O*Y#p<%gnyw5p z>ARiTvugIV%bZDBx$4BaM$x2+aE>4}s>w`@Qe4xQTtm_J+1LfW9j}Rl!oc4m1gRH#2 zgn3uv3dN$Bi%af;g!2CYFyycCfD)pt5i}p4qXz;80b&pXGrM(n!k2t9-giPWiS|=> zoGn3>eX(2+Jip0>KCh}1LH;1^`4AypBh~Vx9a;$|Og!V$qCx3J(R8u}s zT!Y#%n=gN|BEr(W>G8sKnUHFaP0P?8y#(?_5xaF%uNcB z*_O@Cyeq{CVo>$0NnFqX0XYEMEX@>+FDI^;9o>wTs8p6}1BSNds3D7UW>|ev&=F0s zt7{oyHe7|UO`1Vw6qv|T-Ie>l$I5$QPYXNIfYnT_%+9rid5|^jwBZb zV@qOO1{*8>+b3tm!)!Iv4#N`D<}!6`0I)S0&J|T(&9Ki-XxnFlbq%fw8#3AZD|dT- z^dX7S6H;E-XX_NyP_v=ztDE>tZ95@%t;}#pdi(9@ZI;vFDtZk@kW@! zRzm6;oX>yJx&+LvYgVYJHQf)L3sUeF;Xnrr$20x-8m#cha6k(bAR zICCmibsV=si7XBN%0sDgzYn?rwmK*bGh}O8lf0bay$jv1h)`ZmOQ=5G#vS^(YSlYP&E+@EuR)$!89?nH5EfqBx5f=R$ zFRNBP<1ysF@{HLe(xhv}3wFnghe=^(%E+<-LN|f3+dcJ#G&YaAWkVX1a~@vqHEmB}Txeb#h6| zJ{4~EhL}tvyAKF8H9I5I^s5&2A#6no0Awr%WRb+XQG#+v>cbml?+L4^EKBAXARy796jcoKMGiu$w()vxiXMfU)8?U7Du_i`t-v_!s_v~jF{S9-Em^V`8Ym}- zSBbqN(;U37SjO@J%Q1e1D}{1i5@MeV=ho6Y#V@~B7l7_6iYOsSTNp2xnuzJ!xA|8 z^0&r_%oYfiqR`ORr-ak8u<~v&8H^YKl7mCe9w-VZ2trOqnS=iTXlIMTBMw&s$kC6f zmMxk4`<<}~xO~94fYtWy@kgfNTPhs4Q1bP6!DY!cp&*cIx$cA5Lj#>CckZ~w4Zo2G zdIA_wjKLhi?Lh#bIoEbX)}Lw|;)%|=_rfiOBxUds2Suv3C5muBBYr@Q(9&ex{{VD& zrd`Ag>E8vJ%Xc_aHNhEUIW(4Lkhd{H3WThaumTHpHTm0_T-$-?PID3`W7;IW>E|FmY`e=d_&< z20oe7B6khdfh@-3xX_R}Q<}p}K^<778AfDRFa#XUsH&4nP=mgn6@s%jV(^AdGc58n z-3_rb2pI@G!QJ0MUQkt>Gp=+L%X})$@r@#rtvVF3A;@KLSwJ~0KhutW*1nH~voV^6 zQ#E(mQ1G<5jqHw`(-H#%;sBA~8J@9WRe@QGD8Q2}n%_?gcUCrGn?_vlt(@DZB#bQN zc`O=K(Q5{)06TqKFBV(8FqSJHE@e_%nQn?%0}_{kwQRo;Xt`^qfpH~-wMmlD5XyFD zCu^*f+nd8|XBt;lXDAaXP@rVBxf0&iRLVQ}GA6cgI*f0WRCTiw&QjtoS_8A0xZAYR z53M>5TNJU0aG+4Ip%-mhtIxF&x^hg#nr?+K*{LVM_tFv73UJe<6#z^`M<;sUcZMz6Q%}o9GZYT8 ztg`7!2MhYitC3+%-*={ikDAjIOm}IHO$~b^w6?D*#@M#`Fvy>ur&Ydwpff29NClOd ztz}zyZiqb{i)HIkD0;y{J0xATF}zm7xIG*Mn!A8p)TMJ>t3}GW*R^y*X))E5BBZDW zp^Ar4M-{xF(o9(IP2=vDEeZ~@St?y9iv_C2w;dcLUS|-c?0h>Fw+`StZRi9 zp=hIW?CmbkoHoJYclVP}M*O&K@WFPv&?}vn+-^16QihfTp;=%h13fsVGjHA5h`F{> zs#=?w7>nvSTHVyFE}GF?Dvy2y3}Au?s@mJ!kQQy%u8&|PhsYer+5{iRz6v7RWNggG zDps`a`=QK@4>73gEr_N>Q2y@>D>noK6}TosrK?Q;0OcN%mS0D0>a<5RWIRo4ab>a@ zVZJmji3O6Qb|@6+WJ*kn$Vgln6ipqtJW1FrL65sHP)`8V{lF$&0;Fx;oCRbUFbH|r(K z@Rixw?EM()eG#k)HEv2!k_f0`j6c(vZ#b`mE421Gb!ze=o%AFAP+{yob%QI^^7ui& ztQr?VeyByI!iC^#1f^vR=1cmZA!(#}LIuPcWl`yyzX1qB(dJ0K_$+G4{vkFyBC!Tr1J_*7ABmrEY*8UJuBG<_* zDkL8+=rWi}WXP~WOoo%pD>>^8r$4iPaKuw|5Z64ne+WsY3PMkmsn*zR^La)ynL-wkI@%PK<$o8MnL2zreQY>|9bVVue5&*2HppWXMv zR+|h+p?}h=zq*6r2uz;{7W{IC^XGdEF(R9x!NkKk*xu^=AdK*nLnt2LuZSia)B4sG zA^@1Zm0~1rg1G+x5O#tS66~=uJ+PB6`Gv~M z$zTMdxuY6w3wT*u+rBiOkaSbbmGfX`RY?OjAMO6^Ri$AU4!=82D^1FBC44=TZus+^ zRw*g9dN*T|q|C<$pi3zw?QFwg8a-v#6pe`zWFsCXX7$!*Kb@7CimXzxsjfZ3vw`F_V zmxdxGYOK_@U?31d&53)M?6Y~-YTw}!xNS?t%B^tsickPU5d2FrTMzwWLjkK;nT=V9 z=m7)@P!<3oK;FMQE3&8P{irXhtCD>$WHXbY?Y?B$ia`eAD{yj05B*jm=E+{LvbEsw zk~38umi_CaU(w$sJt>JLu=q*E7S&?(P_EzpP@r4BlxP~e{{ZIX((@EN$B`zYq%_rH z6zy=z>j2+CAip^u3}emI#j3Hm@VmBiPw00`YBqHQ16|P@h0#iGxC`nnA-DFfj`P*; z{{S{%pfmKC10Yshr*PHc+Gm&U@W!dDKmKn`4Jw9f;&Bw-8Nx4xcm-+dx;d|?ONMFs zE$I1$kHcEKJ4`^jf}*F2)?W;J0imZjAtlUg>5>yu#JoNz`w^jjOqv=_OQWQlKm)91 znn>|X>j}8~-|>sqiPfw$lnE+CsYnF?mnvFQYU{Q@HSccMI1l2fRai>}`93e;x*5`L zipzqYRfR!WZ9+Vxs4|<%krG|6 zxAtPehrnbHesmkD>W0b*7CO=RkZWA&S{hb@9Zi=l_tTvTBELo=<*h6E$`hH2^7hsh z+iyiN^I;{g2o>E@YD_00Pkjilwj=)lNvA(O{GpC797)KK2&P1cbYR(3DWuAl%9P!f z@1+f;OU!#=3irget_sY|0x45ibiUZK=$6Fcrdyb$00Ow`W1jLi!DJQ}48YKL(2_C$_L?U8fPmJSRFl7aN-jBR%Hjwj zl|GebioTLo8|!Z|%zM#MZd{OC2c(+08Us)%{ND(a{{Y7Iia|E!bEQskU&4*Y&Lt7| z8q?T&qU5V+gg%wgZ!CZfRPHA%{Z_I7&LGgP9wTg?@}N=8uAy z<3ngMXumRZpvua?Vx%Gym?OTMsr{iD_`1whQfXQ?d7lpqNKeD13X(3R2`4=JQH{yn zuy$6lnozbvqMNCZG~sBJO)R+*E0C!tYbET%dD;hNs=~a*YFle%tJ#G0Z&uo4P}B^` z9O>cuM`kz22YOV2l#)d1X$k;y7t?-Jr;0Q#j5KxAgYOlg1acc&EfmZys~MA4R(ruU z=SH`y{P9NRtD3ZuRYHN5`WlrdWtCgulJbt9L+SH*6rPeW=gk!wvdG6jF6dcW8YBMz zm=QjNeOvj*vGQ>n9xHzsQBU9B4GiDNg;Iav_d%6omoucTwu(@ZKDnZNt0D%d+(0>>zm?{G3a*epcmFL~dz7Ui${;;AL zTMawd;#q~|v^0|E`a_u_zkMKCX_FW>%b$6PTp5b~9&dN#M7|1SB1m)@Ci6c#qsslz zfSFiU5YeGA(3=aZ*ZM;xi7YKYCKkq^(&hgESXEQo3QLv0@P(!PAufi*PE4=y9vE!m zQwty*{-{ytAa&p>A{tFQ;T_xl_?Vk09O^!}X);g%)}M%riChhyXo&1iB>pgLRw9+8 zL}M{^{?PbF%+s9&#?G$#d`v~-aR-$vP2vxV#C{PRW^>EhV@zUUoUA1L;tladdfk%5 zISM&&jhmuR6^N#MxsesjemP9XRjIu|6kgrCP3@#TAxmU@`O})_Ky4t0Bmz|j63X!( zSJx4G6AwvFqG523K|-NyOG##Hb7P+qf7UGNq@|z|%Nm6OfpazSTjJ*xEj@>MY$i*f zF2N=THAhpjw_BQ(h-i;AXL#K))XgP{nJTqbMFL>218n$AH_#Jaaek^BTyDT>C0W^nMt7B5?|CR-yZaZ(mxs0@R| z$~Lm?ELn8^f>~0G`^3_vNS5hUH#N5^sW%oLD1z2AFRC*`b!Msru)rk^E>&NT3}u_N zIuxFYW}48iEm{{T^~t*P%@6^Z~wxzJS5WT(RxEiaF)7+On$Dsy{y zZMU)(Atg(<06>MQlq9LtpmwrGm6x)G5)vZ3>bDz(qb zJmZ(bB&1=fK|{Dy7+jqXj6+~#h0lFPUQr`1Yi_Pt&=Fn!7z`dBrk&M3&vqW7RQx%J z%O~!1amQ3GqcDW+b`*+{{{R@e;WS-ol@yAW?gzsSb!S9|$nb%h?k1}jVSy|F6vzN; z+!tm!xo5U@u;b92ya!h-4$UYs+G5?RJHIzdrevEfr~TsUu`;+Of*XJsn(l=%3J|t36s!?Og0eRXH?YbbN&w(xjS@H$*NI zM+&I`1sNV>pA}-*l7P$(Rj-tDXFJih5NJwl#;)%_C{qkgYX&a|S_nm&k{n`Z-2}ri zAJRQCoT=yE0F9CFg|W$!Qe2uJ^9wxVoHD~qJGW&AoroNw4DQhBCDeKE_(9Zt-f)Hy zxBDSN;C~)*89WMG=kS9Q%P;Q{^QIc*_dyZhlO@`)K56S!na5mqh=+<_X_Ubb>Uc<%>HtpbAu;VxYjtm_ZxJ?i-`n zd4$k&<=i1LKyD<{FaYsD(SGTnr1T`VRLtiQ=ewUX5-%-)&$LOP-Uq4}%v}5T{qUI^ z@jVUP@Ag4PUFNi`8>^xGJm5&DoqM@LO<#aYZu{WQe6k{hLTLF@GecNanzZld5ErgP z$Ofa?k%gwssJ5P7W)PRSZ{Bl&oKEpfz7>crt?W|^E}2%88To+=Oqz1vPseH+tJm>0 zftdWO%CJ^fZLsrNry;yZh^x9NXq>2Jg=wmJSeh{|J7~<913y6>yat53E zQ`H&1wCL(Lc%^PRjK9NoXF09DYLQ5%an;!pu_&_UtlTp)(qL=oovW2a zHhnimK_%Ko?ngZ9>Gm{Pv6@kOut-wG0u@%(KsIe&TS6~)peU^Ay&kgKVU}B}zLMDO zT%IQPp&1jXRl?SU8WEB7_e6y4DQwGzYE4QLk@Wgtn7uO77+-3k$$}*)zx{U|lMLDc zt&=z{BPqjNgc1u97%d8}%(d}d4lpZl`J|Xl4a!Jk>FV=}_{2&^AwwB-qUIUyw~72Y z{>(3X~q^U)+LlO(a5pOaWiFhP==p? z?)e+(%>tZmttB>96d-SUW80F5iI}a`^=ekeYL^0qh}pTDdc^d}wYf~jnYe;Q!`)rn z;x%w0yG@k{qOH4JTTI{ahDS?ax+LtwO%f$dzDPx2_=<(QvWlyn-fYX+uWBnAT12rh zqEoAvl0Dl_IF@5KYUqC}LlQ||u&rrnQs+L-&0*Bt4=Djjon*PB<|Zi$igrUf&=t>X z!|z4fTCr~0(F-ROI=5PZm?%IdtQUvrY{iRGb*f^wS!zF40Cg!wuhGTp@rYU{PZR*GJMfu#ry2I-(x*{b5SqAck%q|`mi)l*AVx65uzmdWKE zBdA(VT))wr)>=+rq081oE7J95T-DUwPR%2crs(Qs0kz)H!H7%MZe{TOsJ>{dOQsrH zO=l(8nM5-bU8{PwTG1VSJ{Zs6+DS*a?p!{!Nm_w1ax^CDRQhYh3xD#-8~WLF%R9OF zS~+J%=-D$R2W(p-fJ2ImiuiXQXEwSk=3Kg(PJQH5v8nh%{{V+^fDh%L$^3;Xn#tBoaz$J!qCX1vDNz=zeze&#T(Cp5 z!%8X10qrv_bBupL{F$-yrjt2S3Y09R=7wNL4$6{tx$MTdsa+i5u;4W8Y^k`hRSF)e z6?Rosch~6U^q{fzNwlunQ^VS=7O5MvsWr^f6sNQBj~D*{6^Q(Pl~m1`0m`R&9vJDT zXv6MEO#c8G!*-kb5g#K=EY1>2?ys2QhXuWm#0v$?53zcDmFXY3L0kOQshVvog$%c~+KRltU z26*_Lir6bMZs}0QvaF4J6wI zdV9USA1?8F&pGj7WZv@Fs0t;UK)c0H+WVsUr+O5|;sODJpE!b9R3mLOsI^+rR?B4g zW9hbt)SNV*)nRb*hVmuIl9fIyl?HJraNu$Rl%)X5n=5a-9Ea<2l9X!O_h!Y>B-8dj zT^1wma*ivRGQM+a@*iZieHY~}LFU4sD6`*4+9Jr>++i;dB zqTbgP!^Iy%Ez5AGR2zg9karEl0zCcL<;$+f?eJ|_VsVy%{{ZuAXsKlc+4zaJfJh3c z9lc7zVNvPd8a&^To`_XdTs*-=v=NAzcZTM=p-<7aH`$WMc6sg@3ZH}~FoSR=wBAKN z)v=lNGnU+##f~e4b54=@6yQ4zi%#MvD*<2s0B05KXULvjeO@+t9EiGDb6>j+T->XG}0n;az7c)Nu8IONGz1wF;(y)`>N< z6^5QU3d^A@*fONHwzR3o?Avr5{!?07U+c6i+^LwCJ$JU%&DD`sj+?YoDtY(#c3}z9LFMc_ z`Q6S3>aQ_h)V|u`oZ!DLnQDG>N8%;!4O&%xi&@Xqu`i?kT6#69e7r&uXuzO0`?M#N zZcU<8gS$FZ6{zm*L@qz0>@>huW*$S=FkV!)KeUIGTAVzp{Yg^h{{W$%C(83gQ}xa~ zjHjsf>_?*1dJ({X{T37d0Q5`#kT5ro+5Y6Id><4fVuoj*IEm6aOtHw&S9sn`A=WoA zM|C;ESca*~$a`bbD5TCX{{RJ!JjvZk9{3zyIDyYS{lXh66ZU?>!nm~6{`9$qk zWDdGnfFr)3lfD{UPkGOlaQU!+itg|75NtjvR8uX~2Y=dwRJcST9dkUn{9(kcAa`=5 zGT#KnP6XF2`-bX5C^N_tqO?ik5CUQ<&$JA<4J`+XQCj@HOerYfI_73B*^#@=a4ic+R3Q!yUjGo4HXx#puX z1!2ESL@k*73l0?|Wm;uQ?82H53XAF#5-4|*3Fw_?xRg7oksbb~?uD^az^N49&vkrJ zou;(WD3H?lfV5${fKVLaeHEku1C~a$-!EKFYmyR&NlP1uK0rinmc^C@R-hd6-hZ?~%Eyh%nXM{C2fg&7a}G)j^ULw@z|Zw3sW;tdG3aD@Fr&JZlOH=*giiUVu@-`4GFGv^!dOy zZ{&!Q)w#0TQKt}4>R*SV+%hW`K;yA&-4hBB{au45+NY546# zwx(&HpS_3`AdpWX9UhxIgO2o>pC&%!=;$mSjFzMjiU=H3t5+@-Xpxko^Zx)J*@{-N zbcZTjqEOyVLgij9&1(7X`~6IH16-P5ezC<=kw)GHyDfG@f4v^U9-)TRFO!D)dDD|z z8Y+(=%nFkMbvv`?5T{zD+!myhm;q~$*}0-}RK;z^wG{+zKZJELWQ4z!*_KLCoBCrob%lXG{0ndzs+}W#8d@~2KM>Fmw#wMT#o2ePX6%)_X`Y9^c01q zO#ES${>|{LrpmA_S$*EavHU*>6=-kP*T2pc2QFK=K+!Bz)17xgrOSkC@ymP~TjdtX zr04?Yx|G~c?h z{{ZUoI+^>WO@^BD*k0Lo~p+qk??(sq`d zvjWY-G_XS(!v{)^%ChDAQ17W2w3xr8Caoe*O3eAZslpPyv~!K%oNI7FNC!&hApFIt*Iol2PCmpxoCV$w6rgVB6X)pJhF_he8OnJl`PJFJ0~!WN^`HwQLD!!BcQYrRof z$4;>CP|7xf?kB>n+CA~g&6mPDSaCJBHPRW`P09!aoX?B88zBe3bs%w5s&gYTUtl~d z5A^DP?x&q$LYdHje208x zZ)V7?3}s8?H*)X#Q1V2N?+Zx4k&)+~d#MXyu(dwGK=#6$Mu?^)lB&ZaO6T7ab0wPP z>@jD9?6Gq^$VKB+zEV)6S7QqouQDm{Yv-polFGfw`$u zXr@5zQZzgU3=3#CZXe9e9GtSFwTe0ktJ(z2YOPJQt#=0@6YDX%Vv*7TGPC#aAO(UB*S+x@y6An=TBRbc=F3e6W%JTB0L}Bqj4qT#J4d0iR zafV!);u_xkphCc33R?keVxS#+zUT=}$^eRg2tsHlaimKn(EZ%OK!n4Zd^4;NIUmLZ zyClJ&_*W?M&&q)LoS_MCm+*w9EiS{IV1PcNnxwToRILZCaFK0Phux zE&~N<0`3vNE^%AX*oAPzHDG8Ijo@~oYXduYVskkXBScPTQEt*?t`!)Z&PRW+cA-pc z%-8{PPz7PQ5!q;MhGV*-gNB1Yr34e(H3aX>cSBBNgKqtWCSrGe^zQXXnaRmP@2_+w zsYWNfQnbpE>4Xm1BYy4BHXSbk43>T1+gend&(Vius1)+021n^bQb3{ljdFzMf-_Jv z-bu{;7`>L`W4S9$)$^&W4Qr7AcMm@l1c~`@=f1u0+GBGjhjFgxr@>K;wh5J~0(Rf*?o$<;+x=RhFIpWSW>sj(>oJ zn%2SgL9qV-hT?gcN2|`hXP-dG&Ohp zX%MKZ4Ew(rBQ}3+M-R(n0s%@>eMl-Hfz0(3;EzJ}G zS2XOho@*U^9>)tV?#!27r81N<*u0V$<-Jt#G{s(P;#kdfhd?y7d9vQ15LrQ^qCX7F zdzi)3STP1%zOq|UWw`)8O`Th-n7yx~8MeCP%Ki)J=dmkMOF?x9JF7Q!2gXOlz{ zIY!Si7#a+&0PQOK(Dy{(M8;a11!_q-W!YxzhUU>Br?pmlOt{&&1ObIC?Apu46~>uc zF1nGXrOquO$wO6}DFV`ti)$-0R_`_KM(L?t7YWkoI$|nJUb0yXS*5zLR$8t|)GF4u z{G*liV+%f1fwt8B?~v-9Hk z#$2iRVK0+)=<}j|8hYiJxSU+nm{o+Ova4vaVzy)Uqe{Z+UI|4c=%aFhYhoNBC&bFc zhCb@XBcOUnGcgS_3e6=9kX;s+GqaXwnQ$SEEnlM(lQDDVP&CQ&0TohRfEC)=Wu>vn zoE`0&6Gkti{rdkHK-HgLqI#`^4Q0 zNqQ5KvEE6k^<3HAcQ|i1qvbU$#F|uFkY7tLY6Gcg%mZ`pf9$s#Lczk_Pw!@Yv!6w6iat;nL0ECXXQ z2HBZ4t47ai=+}WL$w`>APsfv~boWRSq>{B0CQy)yz<_wZaIXmO?L;1hz>G~M%$e3v zi89peqww`}7kY|r;Xkz)3DzTdqkvm51+G9oBTcKLQ0SgS$+acIDWbZ|sB-DT(>ytU zXzN2VlcNn$t6{{o*%UwyK}R@|0ua%9u#(3%YLZxzNw1Scu$Dc!M!*^w1^gfwL#LMn zr{M;jfHs1ah04Jke|R#G-GnAn^W6(P!TfWE(=lVp2nO^LYJXb8IkTWA<7v;HT%tO5 zIvog$V~M!G!*ny7G7y=F{FrL^m~u@5hfj#6^W_K`o^aZ0dBbNv#Agg#lslh_%kePH zrok9~e`W~VtCx4x??a=nBIpUTp|cN+EV9YmE95hzJ;CbK*QK(iFg(H%KGajo2=gRG z2|pG`E7Q6QHgJn>8=`D%&Kx`MreG=0+IynYqy9|z#^NZ0ok?aD@T!>4KD!P+WQND4 z$u1&eGk!kEZ!*8aI!6KWN+#OYMoPAEvjlUpU@Fu}_J zB#CqY015*`^?fL_*YbJCz7dXnW?6G5`;L!K1^)o$2+Gk?*M?lR9KxcgpzP&HRa9~V z;guuH19$k0bIT{oY&8{nK%eWr2JgCnKwkyxeUP8#7`)hOSMUAk0zIEza6>cMNMWV$ z=47&=iZu5PFu(Z;&S!NT@+1?<9X+|l0I%`g>yLd}6T!HKpwEH}vUW>IkV%raZ$41F zG#2m370xfYBnOc`qqt|?UsQMl;SjN3!V#FhROMRI1+>DZork!7Zh(T=dxUx`L0S3r zpFRZ5S_*g6o^^=4P9mn9fy>OoNb&BJ4?audG?1YKGDS1x>WGw@JpTZ^5vEkZVB-{# zXnQwE5-H|tYX~FL@c2TQc@^>$txoTDJ&2M9?(e=Ywu%cTRdVvJVQVe+?*^B`ytX|YnS295h&9oj%A7(kB4}Pog0XEBo?g(;y%nl$(CzF zMXfjT9w@aYB3z+RE<3AS&%OLMVL3RY3mi z>lT>|>q=*oBZkm*+9sY=B*J3^w#y_Ak-S&|%+Obe`h6lKw0@21z%5Jaa^FStv^CKf zKnbhbXliMi_-*%u6G@gCqml;ml}NXWIykUJ!o)c==@viyX<=5`rAV%APA(qq=nWl; ztyNSI4Q~Er`k{uc=|`C@gI0)WSma1ND%}47mL6d=*Q@iz1N2j>doQ}V zESkBY+H}>SCd0K>+P8_eyPJn*Hq0ct005v+02JIJlhIa#wO(NW7o`E-7VVZ+_;C88 zLIe26s`SpC;)8N~XA7&yr0ESxK!t~DgZsyw1a}e6LtA6XC%&ImAaKt2?n?7%*UJj!0drpe7ovkt0VKu7EG(=AVc>>pje0Zfmv|7kHDBO)fcZKtSA-k zfhc!!uP6?qzsn)#2MwO@tGXo<@B;jMsS8W~B+?3hjee;0e7QujtXA)20<|~S+D1kZ zn12fSL79eo_hcd>cX%A3h1MF$Y7fF3%Ki~dmqPMB>O_p6@e$IdQWacvJK;?YO;Il; zsrBa$df}W!OUC)YPMu!(U3d?;mt7z~wINiV2>uZVDrJ8NbB3HpfB1l))X7Phs((n2 z#?39ra>$&h8WroS4YZ5UA7w>1*V6&pWbbFR{+K;d^=Jc*K$G;A-?bTzuyj{4bkvv& zBav4w)}TF=mNK`_FL*q7T7nBTNg$iEw%wnEOUT6B2suzzgwUU}8E1>N+BQQqs$_1h z;%7^iB@-;Xus|fUi$`g4d7GEh>5 zl!H(x9;JAdqC8r(0?L!3(TmeHQlU^}Hid3Gy#D}}Bil$g71$tdqUL*BOsBOFIK4W( zQMD!+gwaqfe$i7;r3|$vS*8%_JS78@Xdga+w$ifhWbSViCEBG!Q@eIraQZ@I!YxT; zgSaMNOE^k)u(~m#OS^EY8$tB{0PPP(wn>&BtCsCCmVuo@qOe_^n$+jvikr?P*DA3r zY2IUIJT~o_XO_5jL2Fi%m}V<%)XYaJ1poqpm2=$+>vlQXQc%l8Qfr>o9c|fKo2~jV z&t6M)H!73WurvVO^t>V>hMJ(3^JT2bj5cM~>nZ;L*OqKY6d%)#@H#VYDoA_!T_q~4 zptjm?m?)DL?VD9|Z2pW^HNyl{Ea1Ue8s-6Llx{0kxU%f{Vp~t?GG&*aG3B74S#s1X z2e)BWn?JJ@Tt)(9;0w(m6p4(iS*8T+?JiYe{o>r3;E;{GY>m=dc+{-53>#_YlqIDS zYSQFgz!&V8hsW#VOP12+AeVxL7+k2hAR&!d z<+8n-dABI#JhI$bxnYf|1=2cD5t(bMb0(yN#dkksLN+SnkQwgy4lis3W0A77L;n}Zvvzc6|IsG6OEpd9k9aN259 z`U4sMO_BB($dE@eXay_X4&~*@QnfVS11W2tEQUkB!wO9x1K-`w6C-2OR}6-A1m|BAWy<9mA1^ zOC&73s&@?c`gWp6Le9@B9LG9RotWmzP1)JTlF?_-G7?>A1=QIjXH&$?-OCpZ7_}tt zcc5mfYslW5RQEN;C=~XrZmst>=1JKW=8C*4Di#zs5z1-0fcmt5WUnO zgI?&A73h`f*==FM*&h77FnO4oF{OC}%A=aYEG8+6ik~n$q23n=80LKbF+{%vnSYyR zrfY2nxBf8ZQ&eYN!iRiC%qKDJ1Vok+aG(P^01aS}eagv2oK%5K>)%rfx|)&!EP2+E68Nlx zWIVj#U()v*hmfd?vpdGyv^kha8$i?=)F0)8yy}6myl>r?sbHU_Tr)JMm1<$S%F2HG_Mq&L-A&Lcs4qzIt zLI~#~Dr#~R5NXqxC=@1{d?MSjlBRiqWfuWKQ9x-(ZjKb1WnJSl3p~TzcV%AqK@WCq z&b*;)WLANmnOsQjr#NnM&wMz>CO}hvKIn;)CSYdTsK^3$52FffbT)_T--UA!Nqh6% zPF?U>n;;WXNu>vT72hv}2*j^}SHyRH@YZu>{AnH&GVjln1VPF)1hP*4?fvErIfWn# z{{WaxhqUvlVoNZc{>pbiOc`(IlpAp8@P=Qc=0j(mL<)PcT@I}+8nA4Tg4ZRCx+_#rsZSS(MF&gIVkSy{APo-)YH+l>xPwNFe3)`t zD>G)3h`2UWE~*{MLfgMSE-1`2mW=A=Oq9fyl>K6r;b3-`FHnsKRdH)`%bEywG*z^# z)Nr??dZMGQvk9Dx%29f=D9i$tD#ev%wtH*%ZjQDs9Gs>TuD`8*va3MmSX8PgeXpIg z5U14{HnL;G$(Eoh^?S(8oR-;*qh7FPlnT#tRE@!vcy49lx-m^+mKI|vS_7FItv!`n zW7G7FG>f3ieOk6d`9X}o=yupW%BugL}DpvFjcUduOw(H{AUg)72 zby@^mfDFv1VEArWZHdPevdN6jrlj1~jm)U3+(W;<7gimv34BYpCYH)5R28GB_gjkY zcR}AvPN7=>Op2*R41HH`r=}bYZ)uccDMM1y!6{SX@`UknTdTaOnbqzBpta3y)$drJ zl5wNhO=5a=eMVxTo`kt4v({20G5AHH*>OzBaA?GyIe+zwCW*xLompTdEVU(tLpu)5 z+q3N55n9iu7G+Xg%T~DtN-7oXt1WK3`C?Ydc8Da=N^%NsAhM}^+iPo!%W4tP^B9IH zMW$pCQ*VmaUS*;)!S4MmNN#+KuN0$fDe_ocACBYn0KZpD$R74Fqvd24O)VK+iQF$!wqKW#v-9^ z3NxXm)!Qn*ETWiqqFpeKB_~*+7z!w1o1tx%Yj}Jo>)DN`qOBn<eCSRV znJ=3o9@l(hdIu0`Ys+bgTY>{uSIUiZ9t8u1V*7)~w7IgFEWWU=NQy}+%eB_3(%VMS zjI-ELUQJ`7Eg>rpkDDRf8E-5!wt8HSTIH0?xi!G&>W#1e0G(mwsWmT4fC@XfdbM8{ ziaDoJXDrFnLt*8-!%2b3J0jzD&3E@ktTb3)$_X5SrqCAgep)$sV zK5j#^14CSvzn$?;(;YZsIfH){N>KY9jts zeHr2ORLOxR35r!(T&aiWP&Vm{XrqeVR@sI0@48gM%#;dlP5=e__Kio@f{8$c=K0jw_AoWB0}=tjxl zbkhgj4d&v7Ic|ul*u$THaE4}eaup=x02MX&RvM{tEvEP+-$+9Vx?exK9Lm*fL-5L& zc~XaehiWA7eGuZ`{UW*UV?*luF>f|C%#tV5o8l#MewE%c&*Ks27GqMu{GMmG9K}&y zK$8|M56Q|{&E}KjqQAWemtBTDI~clLkHLY=Zu)-+Z#4bf`A1P;dI!QU5NG$Bf4s3^ z!E|GUK|vx}8-QVOr-y1Y&(*QV`BjaNLnq5P_X&Y{m9a~Ope04wpLQlNdV`9YLb4`M z?j>nmt9wz{m`wvJSOF!=KsN+7t(kuEqqueaM2`IVNfJEZx^j;MJcLe|+ zqY5AK1!w&ID9bFfleX-7jAFEpP0MZQurdjm-K>`f)>m3Po)EP5_T(h=CDG4CKE>g01@X#@8hrCifhUj|n)qA(QOw;we4=Ql1%xdwYrUA6y}5GK+R`QXUHSM$-Y7?> zo{;g_S&owNY6Q!IBB)u2r)8N>;L*&OS+$u~C5d9p%++RU++CY{7}1Xpcii~!W}Zg0 zj zS2n7hhZ!`lk`F=aQI(6EE@=o_fz&?0W>D)g#6b zq*Znlt8oQZ?9;UhmN)#|rTZ{#wMRj8Q>1aH3Od2zd?$An)PAIEA6br>E@Ke zbuw$Cf6)4G3yPLHxuMV-L06)ZyEfgQ588~rZ$MZ)S(k~LhD5@wvn8MmT?3U_lNo`v z+r{qki{66Obi=f{5~ZxEDil;znZ=^kW@_B;PZtzF4nD_r)~WI1$U9HqyI`>EFJVdC zNCecL_Jx}c4R_SF0%74>k zrqIuezat#^si+;N zF`qC3Ks8poT_BF~oVPRMk&?zLOAD;Hj=S1h*@2Qn`F{379!FIR8R z`-J%5VftsY>ku&+rM2$|CSyyO$R;f=9oHyz{gx5vXYmmK0K~7S@_v1o!C)E$2>Kzw z4K7|{7MieGJLA}j!Ik6*bBL#PcSGDv6$b7_02?5I-IWOE zNUqMCpEH~`3dkyq&Oj9{xK#f1NY2q#0LGcuI6i{H49OYSB2Mq3u%?xpcRuX7RCcX{ zz0%;eLrk7)+&jDB7ka|8%}qWB%)@!BNOCCitPy3CmVXEkhLH0CD=Zp39<|F!}TH19>pI z;MsE^fnISrg3#nq=m;c$Yn^>C-%ZMM-?DN5XP=4>y)uPXdN2f$P&am}IAN>e%N+dT zKlEZZgHJywRz%FlcRx6;-yrOt(V8f+tpNlY6Oa^%S&~_Epr9GTSb21nyl$w@pGFqJ zV?!_uXa;8}M6K+UIl}2gZZybzPrd9|e}&O##^6X%P)7WZr|^Y8K$psu2DzU7rrCx% zPe?4WMJH;t19`7&*#NS%sW51ik%tNhms*ojNX+(1?D%+LCD37rBpZVRx`2h+SYxW# z@&T<#B;~y2+E)HpoX6>-N+k&bj8Q!nL<-PwtdiBsom{8@D<$s;VVc!9 z+NDJ(4J+DQ=({^H8F#XgA)xe{%bE)i0|!!SC_FyyekjY-$|-H6&0RJ*IdIw<;$?Y} zN`vRw{t&|y?1H3KY6V7QSHvOCmD1`98j1!WQ#y|nLt?eHcVyU zmuLYIIITT0Rf{aOn?l)?G_Ph`F9`I;9G<0)^mMU$eAH=?I^C^nGpkgV$E+wxn3Q#K zw99bH&d&@m#A`I!jny8iT98b_6tu-r>fD!bi=m{gGR-xbVJa0^7bh}K*AU|JhFGjh z?>2)oY0YTCS7klW)QmFqH^N5fbV@w2SJkx&?=Xfl85K!jT-B{rR&D^JirnE{DS(pm z8B$+YDpC|BO~u)NSv9<=;fPH<;jrZAL7EelDBYiX_hP-Ibh{Z2t!jdVC8UR9Kh$Qf z?)b{OiAviv{UnGyMlY_JGL%GGtgD4XB6hv44m5TqSLn*_{aecpSOB5ihS`-YZ*QWp zUBhX!C|aNvVVP{gf!SD#mnli92YH|;WFFP45k1-ps9#KJ7n)4RCYzN>Bmg`sxlJ~V zMUn0AtUt%%3CK_YC_LedH?!Cx+xIB3=sYkcyu~R`IMOse5`(*#&va7tUjz!N+-pK< z-2fXvKVo)&3r!YsHN86P%r||H? zO^`xqvtH&E-=0v?V^`t29q9~0F&$bI0YEBFbsSByVL5W^LrklkAy11n!EGT-HWc#T zLVgA>dO5yrE8zpo)5Q>23^m4^jVn%3JBC^ccVq-}vdYe$7|?c|%g%sAhK^FZRNAN% zJD|8l13DYG6Tf^)sHjoAfm-`x3wkfOl0>>JX%v)*YC^3yS$wEN-oxzzr# zo=G!wAGvDK)2J=X=Uwq@(U_g%btpx5n9lGTL{wT%?8f7iS+r&&b5`c5s`CJLnla=? zsIx%9V=~X{F+Za*D@?f@z|2J+Ml@t=yLj%erU1%7HNPhGev(jWT345Oj8axPGTvsX zrgY|Du6w??j**E3iv2`GnRtx(Tl@?o$X0r3{yF<$1(yydIQIJ?wA%SooJuOenKp+n zss>!@l02#pwhYq28E*o)n2$4t{OV09-SnbSO_B*Rhv8A|hlXv`B;~r18fJq|@F`y? z@tA3sdEJ~wU6PB4IquJK9$qMShMDAk9Q{!gnC!CxgK_5$FwI_M55fVWcTq7gf-;No^Q2m$yPeq~hQ%Gmg4)oHkY*$kbPS zG#3g`)NdpMNL)=fa~V_txWr9_nC^7S8q^cG0onC3!>M!06$%A+)Y87ChSr0bpk^HR zm}!ivTb*fAX_=wof&xU`tVP*1paYSm3@W5h=ey5;(TLn0G&tE-^CW@$*}xqT3A(3# zRXGC|g*3bpD>R&_H&Uh*mox*NDZ71PunkI7SG;FXBf?t`%>+vYq{lN4etBg`Y?FvN zfw+=J{{SdnQv6P4qah8mCpvpa{Gb^kmeK4+ERJ4u8Smk`5?0GPSA93-2boh*%#HBX z<=gEi_D6~o%@Iq0vu99Oc-~-+m0IP$FbznB-bF=ezjq@+2{h_umzV>2g^pX`NA!%T zknR-EC?C=}d`X7FU?zi?cfG?N6Epbd?SXb^?M!x}5vkAa&J$_8tIiQ8I{i>fWmRl) zMqdLF%DLydpj7XqIP1+bB84q_p2>^q4HnCYlG9fCUDZqP5M{ z_>4enjwuU?xi%VNh5!SU&eF2vFKwu`YX*x(JxsYzLNFu(cG3GwwZj;OxoY4wQ!F#fJze2|LR*UK zc)jS_u^4`)YRe2&CbJbKtrqrCyiXa%x5zT*OjZ^g%9h|D?Jc(P78{y7JuKREa`VMg zFxlEJ!$ub7K&t|zuNAGiqRXqg%lbG095S(^2BiT#rd7?Y<+Tp+EiBx#C6<;+WB}Uo z-rw~6o0_yz6APKUEa_F|w{2}ldM?(_JCYmGVAdTbCNmA?h+q*2TSm&-y_uG2iKyn6E{%B_!6|W=xA1?D# zGEpT+RSk10_@=7m_Mr_WqnTGXmh>X1oMXbw(N)Dsw9r&3HK?dz>0+=lv9^#lfH|?u z)OfA$g6;AZuLX|_iDqgOK}rN0fZ^P{;hr*UOSwbLD_Rw}i>t!SyS8Btt97hcIW%yk zcz<@@aK0xBa;Y04l_sX1uQ-|qWTt{bWVNM3(26mlvhQYQ?@_WXSdGTv3bhFp0a>Vb zU7pv%9$_?O%2=coG&_tH?l=^Ky8Z^C~5+VmZI@1 zH~zOl^ph$uKpTZ=R;|o5E$648R2iSd;+ox58lZu|N@33~5jfWc$8ww_$K6 zgPQC}%moAjqTg44(TPnTgL)R1aBQl@`PS{0Xo{UV&S4!;ngL<7H@pXYU3Di%8JLMu z)OC(Z1p_4nw$nGe3!ec+wrjezCQ?k2^3umib(~E|cV)I>vuAar<=M6`nj>0+u$Cn) zSHm3*s=p*zGRSj@W;7v) zO|ov{V_lQqveCfK>F{jELG(YR@K|-7GZt1`pe-qyqSOoimSb(JZM~@C{{WQtOyf#v zZoXPMl_p>4^6I&=p*GBAULw`v;qH&3nBS6?0%09-oiq)~T%w;6uu-|a=&)#SlZJ_v znqVZ?k#)S~?-L1(?-(+9?Herqo0%Rk)1Ov z9Puphu|fjvZ12lxe^~nIqjgUYC{kV?OtF?rE?VyQL`s28zyZh#0rq1<>L$>iqZW^y z8Xx3`q{u3`V1lBBjITEd*zYVKjv+PtNE9VHIfg-`cP(71|!}?N|!@ zVLz%3NQDD;@Pe28Kbi`|&){Rl$KCv52AwSiF9CnD5@v#|N-BjJ^5q^41+<>+)q@9$ zWjkt*SAVb(_Mtodo$zA+0EHnoSQM|4*Ruf3K3-ekAQ^r>P!<0G6fnoei}*m?eja_@ zsKmNK=?@oxoLX}h!(wJSN}#zVD)_Ac?E{+aaIqd3+tm*sa?ZKL2E255nArwQ&@3#k zQO1m|b<&!K+qh4?6P{LyE3F)htlFzH9X?l6I8UEAwNa>vAu?rFp2nLZ`mMJuy{n@y z*BuaW*q6h$Zz-Bw!YWmrTGqC-%CX*hYoVzhqXffCTr|l*JgJh!u3Z-8>t<%`9PhcK zhB{P3`gFqgb<9}e0}2(K7=~MYLe{x>uBQ z!+5*OmNvG`bY`afpg&ArtYF^o4eYN(2ejM4@i*me;yfEr`#DCPsQoG?7Y#5fvf_Hn zklS>*h*>^vYc~N+rW-7+?Om+hRuwI!Y#2$e!P2@<+1lFgUTgRG zu}QkXgavApMJj-ss2h&e?A;aVlajSul(iHc;1k6fS4gFO%H96}Phnm3w07Qv>FP!y zb|o-sR3lSx*|nHuv+r=lS5EYb(JXKyC$LF<~^nI=N@G)dUovS4R2K0hKohdbvharzX-iUHwkY#8_=z+E%Y=V-8GCDYd^J28hYYq*%3& zQ?R&}0(7K#mQh%O9aJ^e%VnXZcCCo*ROqVK+*;d@I=0^PSo9y#pTVEJ;y@wnoG7J!?r@B$74P_R_o7BpPyyv1Pi*Ir z-vhs#1jn!Nhj`=X4U$z)wiz9wopMNMyeMqjaNYpl?)^~n7mo)m$}$w*X$2SyR03!X zC^_fC%?zjE^8jXd&~Fh_gJ3Bu9N@8(-Cgze#G_)a9J$4PfnE7`#lt}8K+9Sd%B$RV zc%vi7+|pc)@ni(qdm&nHZQz~4y{n?PG3k{K?1=A# zM(Tzwl2hi>Wl63?k;r;smLhIPGx6W*hTVDm?}VJ6Y&Al;F2!X`QN>f;NJDx2E4q+r ztTOg)gsz4pQ8kCcflAPfjcG_z5~{nsqLCJHNomC^%YJmqo}HL;h|(!8RVWL(kN_Eq zuFFh{D`M(NC(eU#KA4LNmdIR}O%Rz91t~&z!Ws)$ok`4)PGsgO?260jAZQOGQ}$u( zj6#5O?>qA_&!DQBA#lXwgUw58l}l64vlfXu&dV>Wt)nnN8^P^dxvB4pF00~rjkPqT zYq@(%Z@0AvLc!SP)g%xz01g;rdO20WiIYoAoRzFYt`gNr9imQj?OPX#dhn8x#6YHl zXDZXPwYj2?fzXts!JCnoQBp?|!cLUKrJn25fD#>Hh$8Jf#U~ zmR%dHk24aPkXeB_*Bpq8VXDnfVZ2sQY`29$bj)@^gTv`GX}X^~bur`TJn)EAWab zg|-1x@r9N~Q0Z`cy_=#HLsUpGmkwp&KCeCSujpTdOD!fb1^^Cz*n9dNKcpb?bLC9p z5`==msrfLXFY(R+W&SY=6AQWyhKJz>Q3e7jm9`m#cr*YIpkFAWn4%E{`k+U~Za^#yG0^xl^&l_@$#uc0wg=2bgKH7%9Y?5fAH zngVWiw7PO!?x+6%V$w70E-`~4yrBlAiJ(w;nk@L;ewY68T}lGAsHYCsdFOO^zN4$^ zB|GkEGt}eg@j)d-r0o+eY1YnFT4n`#Q`&!KA~868ETv{H&1k3vjTrWBwlmE)rOV8A z>uv`+gOx|8vusypW0=;iPJQ$QdX^TYl3&dx$1d3LjSm&BGQ|j%4(eR>r)u8#VWsuZ zveiPbG6GbfE5x}*e>LbqT8-q6A`ktb%FW(LJ@ClK$wc(+X6IRzJ=p`{h@B~?+F)Jb zfvrj9>8FdFCnFJQDp$Idrzm10WKwAcC9XTmITWEin^!H6u-_7w zwZxiMfDEq7wdLuAap31|Lmb|xG#!;+HiojXg{lDI6*<%o6GIRV!s%(ZWEhlO_tis< zn^)c8iguHj%)n=01Oi1Zul%B8P3drj3oN!3E^-8V zV@z}|kc8YqfK+Bk05Ked5=6T|dqET=6T?Fa{{Z6X2Qa{p25o0%V|&n~z#XN_ORWS7 z6OgYL*$~$2fGXJ!Jp*UwPzK=*)?H}5=D!GYq|jW-l_;cu#Er5xPs6$c4l`5SKqJa7 z-52m^+NCO?Edq)_q0G|X)-+!xemsOg>YfNtWOo7p6waJY{{R@WPLtgkWyz`vv_s=x zm)8uj6KxbA?No!^4s?U&bLIi|#C|l_p5a=1U>U9mM9Qy!ca%tIoE=FNH2@#38R4a# z?cAcpq6KT+kn^aFxg|*5jc&;e8!I|<^6vFSq`3m4@rDv5Q2F^pt`=Q+8fW$RW1BbR z=|fs1q)4qlgg!DwdGF8J4KSvkS2%knZeN6Cm78P0-S9*m^#qbUggKVxpkUT`Pl$yNjG7N7P_FISh_mS2MKb^#s6eJ)N-8ZpsK^6e{ORh64G)Z{&b0^G zSX7mxR3x}9vT;VEXn@2G*%RSrixvgyYnJW6ZlqQ)7@)$rb2I~Y(TN;9&Brn2T2w|k zL~>=uUX$7c?w|y3H1w=ZHZ@4fyRs2P!eVpou34Cw!o8-sZ_IBopSNLIFu2p%1oAb7 zq|Gh7if*7E@-Wt0f^w*!sSt~43U^Yxx0n)l5?OuOL{>KuN4Mi&Y%4OQYLzE4LCDZ{ zVWP~vs#J=KP>NEK32X`2@;6kT;7uUuieb9BoX55v$WcHt`m=^OyeShmnp7Vzb$n4& z6^|!O%HLtAG@*x@HxL5Sr+)5Kh#Y>Jq{Lbc>RT*=dVEGDvFt4@twT+aC@WY7iO(eV z6EmGC23hZky&a8~K?dN%F+r6**rjN#G|C7lC~_=nSbMFyCNP+gC_y8gX`Maj4guh| z406!s_l_D00S;y3)stvk;BPhksIJPIT!1T4nW&&6-ifRZA23Ph$W#xdNR|%lnZPwh zW|bKaWIh;r?^1Helb_L8hMK!oGX*J{jO*^ioWZg{EZpmGtXgvo<_NC%kTUwRZQe7R7Q zojs6CMK$4$W@0P5e}5n$6Ti>9$_Ehi9J9|TW4|HH(6KZi_*MmyDOQJy+y3ulHN}IQ z6O}Xe_ElC6MWdYnsXNUe^AJ!2Q_nv5Qy8@DM>-1g8F>$O8<`d7K~fK#JDovI`EU5c zEODt6G*QTJsfD^58}J}@ScL<1NrsGj$2y-ll`?$!Lm;`+@b2+I8WTcjnfxjNftr*b zgfB8!?$0Wcc?dJj0B5)k>X@|XlHh8I%=`r*DY7fSzu^k?!c`J1?2XP~Xq0wm>ax2+X(l|Vduq>6e ziOsF-w7Ac;n^)Bs+Ci5?Ry;`Ep0&G2xuaai=Qpd#O)3em_UB88J_ zExO;G@So+4c;!sPB+PGGG(*f=L#SYCq>6=MvaGH+Vug&CFkjZ2<_(ci#=JKxFxvN{ zUD8@0FmWuaAyxo}s+MjZsiM0tR@P|}%K-AxhzxUP3&SbBG1tX3wsZ2r`7j+dp);Fv zgf`rvvlkA{+m`MT6ln#B++tx>_vj+jtFHK<0}v zQ#N!UparhAPio$F?8b$L!6eeuS!m7(3O1eCf2gau5xLvhgmkU~ZV^?cOqXK<1eG@_ z9;>sfedaYOG|Ub*jF%0Gp}5m3?iI}Cv*Ly{QA=*ACb?zq#O9d6hAha8ir_M<4$0;*Ki2_2R5g6`E7+B})8f=r_+Wuce?jIJ#$~$LQH*6w^x1CRvQ) zfQ2M&0YC@4?!^9$(#2%7x5K4qNSp{R+gmp_WlHjniq@}@zA8nnhnFUCmPsb&1(&eR zDUB=NZP!L6teU4XOv1Bp(VenODk%-Iw@C?vrB^uE9q|d?u`*G476h`1|U=vqoa0}uFk6*ZlbQ!-h(IJ&ZMD9-|~2|$MYmI~ z_J2qqG3))26$h}zkMZ+>Z}4EhSHQ=aq9AFr#iPW)Rs^^CizfiVFM|D1;D5M*W&E(k zpqIdt3A07`BMo#7{{ZF+7ugBC&ty?N3YPPNmW08AlNPxu^eZxF=CD&T0z410D_be- zQvU#}lmLQ%Snz-FH^9+rfWXI#{{Vlr1DWK0ukQvJW9-X(Mhih%{g6hP3nq>{&$bjz z8a)2Enhh!$w9jQAOZh|ez^`}L2N-ZU2%_ncgUB7jaD|2xpD&C^0sbJYA{6hGHC!AR zVSfl+AVWX`uR*Ki)lb5VQ@nv{rzcDn1neZ>(`A z%Qponbfl7q7G%sSywVgXawa-Un9RIJg41+%*)C?4fCS02&N>N#XKq1K9^Vzd=ORCJx?Bb3K)NO8=ho35BumekKu-$t0 zrMJ93_|uS`y=(h}U{{TxG*^O?lRwns4i45eGa=R@{8EkrT;<}c$?-rM< zT`V8b7aAn0&5{sLvZ}L_^;0G?_HKQm-&Rr1$%;`)r_P70$=YLXk#&tQILVUJ5OFIt zdexAuzcB93qC<6L+#ChjWmdP(X|Vp4`c1?FlBVKk57K3@nTILV$ypZ;tA>|{aMv?u zvbnbk?^@rW@GP@5&K#~%#L2jOKxcfepCNk_d)Zdj+BIFM=G=ZdPA?rd9i$PaNpJ=q z4zHc5M3*Vb5LFQ_V{1#j^RE;SPc+S`zYFXj@w)6}3e(p$a#OtV`<7 zhg*3Wj19z!*bisF+R*bwK( zOvx;%eYdkW);t}IK_fDEnv+f@`ca{3WY7Nq4ulT%B>n8MPS^byCCoXNCWMkHne@Z0 zRMvvBOuI%#s(IA*V}+hQle*!ZOmDg$lxUd!7uHJ1im4|vK~8J!iq?wJEX_=oT}Wa^ zc`pjD;S##Ht%)!&G)5FG8@5i(%kUgF#I(6eO~8t5kxpl{(dlBLnMO;Ki6-FMDjIWE z8t8oSRw+bxkTTY(|d@kX_?C=6`F4d^5-B+5t{yKPb>OuSP1dr72KB?GitN_+p=? zrv%<}%86X-;%^9!PFy{Wr{L&g$=y^$VsueeyFWVR5pgGr$Gpl6fE+3-Puk)z-foI@ z-Uu9t1Ox8IO7=9SyuFRUftL#YjqLWph6wVed$aF=dJPFNrf?53B(VCkFz=#{_B0>% z`Y>j}%1$@FnGk@INcA>RRzyRr8Z0_XMayX`GFUd|2s}WK6|r86TL^HjDf!I65ecb< zB}>olhyd#b;8W_XIZ0X6cho~cDEoY&NvPBuv*rH)SW#?|m5SwG;SY{1T081;@`~nT zd(XQHa6r&m^SjCK1f2eiMTuMTJI;KfTOB!9WKy)>%8)uG7kdhhKx94U zhDSv5Lo}nmGtQu8lzLpqp3*oXLq19?S`E}al~}Kl4NlQ0oxskuH=1W!WN3JEi9H*v zGQgt-2fP~GJzjAOA!?Kv<;oLNpO)&K)rMn~p|mD&O;LK4uCAF&QAPkUe9a4N+i!+1 zeHv&v%{a_(Lev7lQmf&YZ->1bB&Yh)7Lwk`pMna3`SwBKCU4{HgI)M%3uNR}H{st3iCKRLL^LR~xkVSiV<+3^ z2>y%9E%|pCa?^dgpuqkHk!iAqFDl>TNCo=0!|Ori&o3x3LA&mP?j;NmXOs&k^oKv7 z$DU8O&IZAuu}>~t@Og6J;AQ7s)reg+tm`bOD8{}TWlwq&lPqAaPeUi7ykgr zWttXEn&#Hra`9W7d7QmoT$gRrJw6_n9yF3l(EfgM$pGYPKnHP%F^MBKBvPg%^yaY3 zX;w*khct0*4FazdHw;&LqIZ+bMl}7+RF;t`q_xeaC|gtkxPU5s=!a>URM7X<6I?cQ z&)Z5sOp(9ti=+>Yglcj*AI1{G&J~~)JF0h99m~RsXP-QdP$vpG1HYF40JRg~1`vbY zzn=d9-G!xLo0!~l9KMToqDx0&g5{SpQ@DMoCND`TtP!U|bmML1%LkZwi8dD-G z3qKS+Z`^E5tCGXnu!$N!&9Bc-09)F$$T)? z$Riw11gN(=-Ktb(%7?XYswZV=d+AcPge;(&fJE8aQ%CBwI0}$(g!N;ByR4AMY+YVjUneU}4IT%G6 zqb4|PVEED%!(!T%6rnUV=SYp4h5!u4dw|UQ%?6OsnNn3zE?I$g|)v!^~t&c@q%4)Hrd9W$*)?40<>e45fHkUjl0oMZQbQb=a@++^?8Ojl zGI*~lM#p%H{8nb30;s=}5U07wG45xBtxKs3sMML8VnpV@_54o=GCY6<>m87eqx zD_YcVq&6(VX(KU^CcKXou}hF&1d=? z2QL&718h$O>@y$$c2z;GDcXl7a24EZnS`dx@Ai)236~*A@5quj4@^eeD!hrRhc{G# z_W(OF>I3Eh%Dm&l3zqzbLcQMXC)c)g0D;WpC?Hs9HX|8OK^Bd`)9r7B?khsh2;`x6 zj?UB+C^XLM@})xm0LDEwS+6QoP*9!T7!Z|s6=~qq8uySn2uP~#&pp8Jg;Jz~R*Z5d zvu)cp!6qrG$X2wkkbr3oPuMdyM04CB88~7AG|zQ;kq-o#569UJ=S|Bk)Fvsfa?|z` zQ{UZ`ChQ5OUDSk3!*YOb=H8JHCgH&!n!wO@hErq{-P}B>0VYqkySNB;m}9wpwK>9} za-rY6@~lKn5yuZ&fymGko^c6_z#Ys5YrJoZB;}yWf~Pb802pD2TesJ^5__V+lC)Gb z?g`3J8;CasCf7h3?UvsVv-N~10%C_0AhQbbZ2aodFLUKqpyXIkpG-pO9SAwC!kJ~h z9~l_s3fYrsZA_(R%A!;fRWnu`S2Ff~j8QdztW(yGHfSx`mCeRYOhGA{{V@Y^3@87ZWOw^ zU9_|LsP%YbKsXgih1qXy!lJ4x+H11eite7#@;b^rW!`SQZ~{9`;U1XlW5}AOa%YaV ziq5l1skY!l5<@O%7qYU~v*#6gxHsXUeqaI#QhPg5X485N<;s#r1#)tRv~BF!(!JiO8JZSgqX}kWu^zOyuH}2i61POsb>n0tkVZ&S1%JIjMsZE~W99z;lYY{ko`@~lD%T=V} zwBQ#E>E8N*QR|Z-xaIb)S4q!Wy~_BG66P46HvgAK{YiSEp^eB>IX^Kb(TX+DRWd76bae3<*&W}0JLa2 zJ5S4UN=!ls1ch+hME)^zO`cU21#dX>G&hxs8|o=qSI!j^2b3p)m*6om;?NE7g54BV zhq?eim&O2}$b!@R7>ew$8f*b34`c}VMJ62v4#Tg~l2U`Y8PGh))zW znBSVg0@uDI1hM7ufeYj!T@|;YJV`&?!IuhRM!%5*1KeAS8Kw}ztAiir7mr>2;x8nj zF^3((JSC3d2L?RGC@M)F1_l6_0%8*A6^~s2#tL2`D#akBzak17f3iFt17r>w3eXJx zPz1y+h9}wV{{XBIe~1_tF-)d_5BcwpK}&tm1-!n#aeR>n4eXB&?(E?^yuYk@oAO|N z$O}L8j!5}mYBoM)xTje&aCl(Krb@7%DqO}(n--146ouMNmFI73tr&h!lvlOW4vm4u zEX<|89(b5XBr+dqS0Ul2(Sn2Rc7@4WK4jzZvmH?$WXDNiy0m95lEZC3RIS5*5w;oG z@yZpFwHa=vRo_Tk2ZSuZC?$yjKm?L~A!Dy}bJ)I%(CsjVT5S*kISTrjxMInynxQWZ zF3FBt5Z1cb!KIWfw5`s)pxZs1o3j<8F{KSCYf=a~QIy-YY<9;(of1fwDpn$YSBS(+ zM0t0Gb(D;^EV)%1Sv{qj;hoWoHdhv(^!E#sgjWpAMWVGd0-OEVZ#QJJo#4>_05o1Y zU?xtL$0Dq`VQ~`~7FkwARy9>ya#Px|cpE6q{{TtOq?6uGWSWzO1q+VtRub3H)4Wx?^QAkzl?Eq1BmhSax#s>H`EE_wiN&~P#@h^O79UbeADuV>G zCG|5^<&ii5h>WG0WVyT4tyzZ>-O909RmZ#A`w+NlmaTr9g?Vi-%O+qliK`+#*L>pT zaA0lO+Ev{K=mf(~agcP}EGM%xS+_!JY$2xy? z#w~A)L!lnsvF<-!-gYv0Gv0i%Sftkk%yIsjvoHlh@bIq;be5*;9ver>lK7?%g~nlC zTY#NnURLIpGE&s2ZKe04oV99fzOqch zwRTB>iKv%xHX2^os_iZN{n*FUtw$U4{&F%3+h-{B(b7JSnI$FQX5$CWUifxJ7BmmB@Dfe3J{hNC=8AD%{;g)oo zPQu|G{6&zIE$$vhm>PM}^6r!I9#_&!}x*~d5!u;tw>uIeiL2OjCB-$_; zXUzGz z`j?WJzG%HWB4DOV%++nFJ(X{6)xD_9a2iF7t4fkoji4^5w}rgoX=H)`L~7Q%W`ef; zYvPLO^Zf;CSMW^OUPs63Xj)N~Qt4+fD?)Z^JXdC+qO&7krX81{8JZ2(d)xM+xHMee z6EskQ2)d+?4XYE{zo{!Q+S3Wj<4lF8vv&Ugr4P&MvZdRvad7B=^4VV2eP|tH6{9f} zrsYH8U--o`T&9@(*_ixEF|g@u1`bsvq6cb=ob40&=Mf+Hxm&`Knamqlj%)0We7cvB z+eWzHP+Aw&EfXS1R+v^~$_gkUksGshxiM3}`Gh~$3@2PJNo0jm8Oqv$hpBR_dSIhS z%T)-nm&kxCUlTPeUwNW$52xyuxFaf2M#``C@8VeL$En2Q*wq~Q;mLi-%=B)6Mn)}L zl;k&E>i$?{aDf|rX`LyTyBGa4qSJi3+(jrWo!z^C7^%L4nRRS5CpwJkJuS*P`K28w zn=wXDkTso8R*tpXRb$+sY_wEmV2f@BmEH$48kUIBVdXTrgCr!1cOK2r6{K_@RaON+ zBn1OMIGCZ_w)7TBcDhANuW54LTPfN#TJ~C-S1+<5@at3Uiw2gNeM#gh0R7m9OaoHj z4F+}HN<@-L=qR?<#|K7d{122CY`~_J&vEjJn)Q;!pcev_<_~JvgT>0U(1Tp}{{YG= zsQ{hwJCQdoUQpqN%JAjU~X!Fd6V7Yi~3fyMKmd;w1cn!(wnk8Kycj=h_(CTe-oj$YC$S8 z1a1&GOWf%q6|_&Ny~et^iB)E~OH=>=oeBHjQb@z8hiu ztUZ~KJ(PuxhQ4YQ&oPl11I4uoy3-}uC(&*-<@K5s$5h~4+Pta(-QKrG zYpU2e5@^gr%%KL+PzP&ezdgb<+#VrVDFkgOARXX)y`Qrlo6~A3r0&l-*0$Ph59PEg zC}*4_Btp^KT%5zx5OR+s8t4Gt$fiTeDt-{Ol<%hg_(?MQj4v#G@fib6{u#hZAIE$R zejY*$Kew_1ir^4Gv=}S{A8vin2*cyLB@+Gxt%Vf9KBzN4=X6RXim3RARY3Ci!$hCV z`P0sj*GXx_L75{e^K0)>4`=jx6RQ|hWNvF!9cKcyzG zCqBl2`fBQw%vXOi^kI%RWizc!Dk^F3EzJ}uQl?2X4qOlj1&OUVdd&X-W)RYtxsRR9 zMR-RD9_)GSy;SnQx!K;w(!(12RSxv-l9t5m)}t~24nXxo1;;N`swz!bP_;^q%Uq*s z?+iD28B~vf-aXh;0=AlpWNItA5kq{Dvvg$2&>Ka5Gg^JKJ++QHQLIV=eU|gej`i* zXuzdOw4K>_p{r{GgJ@vGeq5`+$)IVnCQE4?LJ+nRXevjj_I*(vX7`NuX9I=ODV<1B zUB`b96gi!aN@caofGTP2?L}=9o5QDk^fwL}bDga_%F#2ouSmiKgRS z)Xc(ItP6|Os|#`?yJxd^lv{c{(GQ57E?lw!$b#E}^;;W1NFOJMOeD$XYBM0I3tHE- z&O1RzW(CT$!CuD`>lQg(%&}a`gFp&{#I1K~B=9;FM$T6o1qEo!ZOqdTXD-Y&Iy>hk zEiRdJGLR@3U2WT0?Qsa4!Dx_Fsd~DafH#iStlh5+X|+HDr50Ey0na*7sucqIe(0|0 z4`8;S00_E}ujt=8<%yOPW}C@#wQtoCI!= znZ4*jbix*u9mBj1E*ME`Q}y?n`k}rn5L>$;kmsMf8c?o89k=f_%CTtFi4~jx%P*~t zOBHH;aeC<24@rkA<_SB%Sh;Bh9!+lxySpKmoD9MT*G_TiBQL@|HAN}$K2eRER){Qn z@BHTx@)s)9d5&Y=hj`um_wyX#ypfsN^RFWdG^N2Mg4rCi?}=Ot+GSHtL(VJGn>_OX zR-nY@4M7#iP-JVqG0)`Pjp~UfmOsoETJFz3JmI^~6gi84tSN%WsUCSyQ#0y}l3Fz; zJDWYX6X#Kor>59b^q%8h@N$M&%vNCciV%52d6cwu^zQVzO8?3j5qq znoCBg%FAS&MYPVK^BIam!-xlj6P-K6Kwva|DN;`|2H<{_NK2hVN|9Z|zB0I>mqg5& z^xu&i#d8K8VBad_b0&wo!w?FUJN=~RSal;D+m@}E6a)95Xd=Ta9K`QXHxLG5AK@`Z z*2q*E15DZ@G;D@baRB8^%}5@Yo>rv|H<}6!(6U%uP7dLkikcekKS~|w>=6OBO(-Y_ zc!cI@9Jd^@xbDldbV%s@MaXRx_EbV!Af}GdS7%XCLKF=A;%i6Atw%aklU`k$VTJ`6 zckd#(a)}HalYV5Hnt@#4LqVicyTLnvre8`Xq#KUW1Cb{vBNokwT!hJ;dtlH{5I2470paW5CMP6Krf zcMtub%5C@&brcOjQb471pz!X4fC10CqN5`TPLZ8URBr@iDtj>GH8~4tYI)WnV)#jb zjgjTtAm;~C1!Ug`-Le_d7;@9`sq&SHhss+xmVq`D7za< zz}ho4si`9>`e5@D(ob*{%k4t*q=uzyk;^`D>1|SX)0ABmZ7UJ#>Gfm;9i$wy%9)=( z3@+0BzFfCK)pF0gbNf&#97?euQy?>^d^W|%Va!lxPdJoW!l6JQ(=vIO39>=U@ZKU9$qLi^RtA>FYp%K#z(yR284Qhk zF|lIsByKr*#2%Kxk_aGDgb+nRuWBC&v}K%5dDjg{6Y!43*7O9cqS4j=0NcBM%woDX zLv@oZF3U29YGy&zc&0Z$V@F2mEnAx=X3Gm049Ey_fblbV zFQz8-=MQTMLbOFD>f}`I1@^24J4lbwLrX?1$ZA7m)Lp4;zMgU4$0X^afs!p+Wd?SF zn0BRFK{aJ1Yqi4C*L@Zsbi(YXJ)%h~l~wpvm~QX)Vo+kqLM)6kw7HvGe7&6c1Nbz=*Cua+G}Iq{!Ct786^d!NCN1hUDNpi!!-TWZx_{wl^~+7Pfd&=FeKnDIs&Nktyd6I6y+ zS-XWz0Hr;#H-VkcDuM_+>u=)~>5>W&QA+MRgL|;^4LsJFQ@j2x>4(Za$m`*oi{A$G z(MG=&rTvl=0(O`dyM%C`RCTXMn#(BuvW+TWqXI5fC2h5r)52rtZidFRxrp`LXnZs~ zH!`mgSm|Dh_0SL%h$`(xB9tWX^^Lhqa=-egZ-D(rqmNUDNqIW^9npRUY_L*V%gUh3 zB{FTMxqDw`D)`@%{RwP7D6K)smuQ=|Rat3h^+k(NwUAAh)wKhlpr+?u9xStqmI`^G z@+3!QIV~ohkBD_WJHe7z=D0A|!D(zY+Yac0l@xR;J5ud8?(svt9n);o0MEmaHv$1t ze$e0aqjg+S?kCv@;-yP*M@4L@Mo>rJ2jB5#WfkF+0MtM$zYP`BP8MY<#$8Pf)u8v8 za*J*QPs*4olM(W*0|IFfnpdHm6xyDy!bbUSPy^zza{ZX9PWe08oQzAWRFQh0-j+d% zwD~Kwuai}mIB)v9qrvOlzs@lE+8aw@szuXK5_U?=1w}hGzuDS@;QDEwEA`lBr8m%_ zKBl-+=*9Nm45aImZ~Wx}T1IQ5dUV4-71GUVn5aIjn&lS#AFh%nX0s53xQ5>owXM-D zJ_)!RVL5oEJBjZ6+X~!2IY8Hz9i_?PDm=2ikYGPGf%>3Gfy?_rkijmf{C?DUG(vC~ zKgJXW5sw%D02GN^D$u!a$bz@V6S@R9w-b67si2n10I62enb}U zY*!(zp!t4xz`|vqOT=WSS`1zQyc6p7L2iK~;84H$5COh0R%j`i7K-HuV+B@^G{_^g zUxLJ`JY)pQB zrh?4)^B@fBJv{!*MWzc@eDvvqqb0!U2g1t}da$U{-fmAdT?Nx6vVa&Vxi)+;S=GHV z_({_7CSA)c)k6v+HM=UU-(BA9Y@aOLY5xGp$VO|GFsf7oP_ENn>%1o=j0N#!meS_H zc2Jy#`)#|1+O&0X!OAJWCpvDMNPnhv(rntR1W9IW$*V0C3mM$ER;}E%w%-lD6@%zb zk#TrwrhKW>1i>uJ1hH!omfK~iu1m|q5g7UMmR!47iI+E69Dupf)s^w_Lt=O3%PwLK z_N^o>JLFAf7TRJ2sP&JhWR`+GN7Ys;I$PWv~Y0Lz3?1Sw_@k%b7+l#wBbfGe*lZDI~d< zXd?Pvt^U(CL5l3xv&db=8ka^L4^G8PzFMOpG;$mk7SijNuyecAx$Q-BQE`|gpEInN zIqE==3n*G}x9Mu4wWiRuc)LBQ>fVQXFv3chxa=g!omAOujUkQ5uDdfXX3c_;mDgLm zWgO?8QhloUyZ87X7@>)EysymgzD~so09Mvplt#IHOY8YOh?EYL=?~ZL`dMAnJoO zyk;hOo{cVR3>>+v%84Pd7d9GPxrtM7K;B01QaRx;o2il!CT7x@TdLXl~h9Z(p7;QH?ik zEqM782eU@$59IjRhM6-Dj}qii5h11AsWQ;Et1UJki-oqCv!roexL_u}Iq(t>TK#E~ z?JDX_dxG^#&5=mA&7)e?j+XHYqOiDqA2w{=Cx|aCrKZ~=b&pxIZUq(93M#eNF4LaO zY@Z}glapYs#$yrJ7{$OzfDtKQX{OznXJA`tTP?2@&5H+7^!vNsu9Bs1=kfAv?NX{7 zYFEgw0WS+BF-4yesq>{6s$N*Nh&zxFmFI1F$D^e`K~ufua?dT_N+0mjtxXFOYhA)8G@dMtqe@VKDZZR4zHt=#Va+H4 zjKLKqzVv3Ec}*lXIAWV(QnesPu03Fca)}MzsKglYFlC_P1%oCnMo4wd~g4RI8=Q1@Q zQ!`Ijh8xVm*L5rADU>mpg{EgLxpzTng3C0GJ1h!R=e`cjEr6-0HKlo&r?h~1nsPnx z;!caZAjExVFBDp}!v?RxH#7lLe$*$Y^;M=2WrY+QM4hH1(+9xm z;xZz=#GL8w!lzn`IaL;bD{)=^mGgr7j;RamM5eFwS2k*0vV}!+tqn7^ZOXLTibkK& zE@l~i6Iu+w`dz5drgV;XT490sqUi3McQbns;&}Ciac9t~9(sHS{VH>jp=)}f_#NmX#u!RksiWaWNvefSN zep%mMQB;sWMLtab07G>v9P7*hS`VX@#w2v7Me1esfPiU|R+o;;D|TR~)VU>KN2jLD z=;=3eRs(Pp0)Wya<>{6HTA)yj#`ClM(0N*;F>@$QGo?5BeNiztSKeR*Evr%(QiM~q z%iPg|adwo%_>PC)q4ATiOxB}J5wyyd<7|Qi`S4x|LickuY zNl_XY*F{TGmo)`T9i};4?Qh*|ZuI`57^K{t9Nx18q`uT>75?6Eq__M(7^&m6(Nb6^ zihzXx)E^JkwZjiIcC&_6cA&eEH9no4^zUX>k5wMG44SEOdHHnNBEOZEA|X`ex*;X& z6uz(}Ma@e<&bMT-U=s4(p5sW|q@=AGoLb~8seAe5Ut}vSe;8Fo2i=qh)x5-8C@Qb8 zd}GR=<_zDH1{;okdGd<~o(k@}%(hK#uv8M&0@5>ETYk`p4N=z=A%jdL-9SjGBHOO^ zLHba{Uo1+rl0bDJ8U`JfXwS4pgmpI+E0rkO8v0f|uc&o%#g%*-smyqr@r3l|w5er8A+DuO za#Pyc_Cv*xOtL!Eebq$TD_x<(9Gsb_Ew^V|9ymcNib7b8VntodT7rYKQ^RvaCMQi3 zLzvE_1CgW?NNANz+4r5*qYqWTgg=&K(SB*j6csH}-YCl1qk;$j03gpZxMVli_jsby zBSU0Km>0{L_f{q3ytGgy%3l1`WmWNK5n4>XY!z03o!L-!SHxNuZM_sBiNFAr%;!p; zb@yT>Y}yQkO>zYC@k1H9+c4E?0H$J<9`(DTJuwBj{YSnv#X8uB$uK75Yj3b;5V*Hu zawJdyC~1@{K1&V2=eYTLV3H*t>jl9=V+zEImT!2I*@qZy7oBpTIf0d7*H>)~8OBrq zRMbMKYIq14XXbrAn3h2w&=wwHw1`ZtC&&%|0BRh(t^2+(-H7i1^6vXFL>Qb>u|GCf zm^BAKQm+gj2`rPi4&ri!-wsVk-UfTOLFD02GyHyxRe|SXlK0Z%<`syq;R~D~?)H2>{a}pJqE>TeK%xqg~L1 zoRXQ8w*!V-T2$W=a9LHmku^3=YA6Yzt=wJl+ghoNX_#qpCLsakQJq+|Pi57q zRkjx=YQRfp&TVeM+loQ~MWdlCC=ujE*Nwsnxf>IDKci<&oRo5v5D&GQ$fPA)w#E-Ahno|FtiN701Z@8c9+}k#*LzN zdRoeu^DB7*-mwi4ZrPZtzONNtk)G*Q0TNuPiW<>JW@WW)$Bgf4dGF7hd7zxWZ|gBJ5KTH&?p3WCdXIWR8D~H&a1P=Wxq#JWE(qCPIgI zIDsxlv!>Rb%(8=FaWwDlBa{XeYrND~GBTwhX^Y8yf})lBP_{lKwiQb)#)>LH70iL! zi7YgnxT{(W&SD^Ncs3cD`1gUfcdF2DtRA*DqAqv?!ME(MV z7N}#EbQZn6GG-WV<6mMMXG=W+n01HWI@CTH}yWS`SnUAvL3MQruF9 ze&!Sv^!dZ76+mcBE0-vMlB@u!1IwS-cNOWq8Fx2O_l|1u2dj_mQm)yTmv2Z&7!p)tDzhwDzzhoiX7qE&*T9BjEOnr z;aEBby@qp5Xfgvb2IKC);U-mks7NE3go)0fOAu&Dpb+(zhT;em+;Ruqh)WA9XK>HB z?)y+Hi>T+mo3aKCDpMNeMLaa7aHO0q2?m*ustl&ZaMMW#E?E%?*UV%yG^vAV`D79* z2(I&5m~k@-GaIYFzAlA#Q)q0WqP(kGo@N(OT=U(Pcf#0NMwI%XX9LQfbp5F8Wl~ z6999l9FLqvfsDMdoxj=>nJe4oVa&ui(v$}{MPK_ucr>Tw5m>o)*UXAjdYnJc*U?xr*vk*s^YfR4S#WEwwzs%N#4L(fJ-5io%?? zP#VzgXn1A{kTazT@~j$SgGeG(qMxkVuh#-rib1Y?HQ`%CbLO|nnI@|?S~`YcO}7(8 z?A?;x$~u;28npp{HQal=Q9;+;0*xt{?pl%p+)X=F?2h<;Dbv}PBxxLrtU85;n=h=C z_OlG-huTW)+Opd}Y-Tw5IGizbbh=PmR-^-KcBN>s=N(AOnaG-48AdZlq7tcdOURZWn@Q}mQ*>DHnp$9^)?BqlTP3Ip zCJxq1#A(`yso2?>$s|i)8C)pA*Tf{vvT@&s~xda-PDl%q1CLH2Z z2n@+6Ewx#Kq{bB%t5Kz|I>It&*VClkFp^L^tEsB10su7HR^g7#=m`yo_y$EF{mo^SHX3*Y-FWXJwU7eFj7Brq?LadOFjYiFW`c?Ikj} zo+fL#sfu2k&{Hte9}h7K%toZjjEP;9>hszZ+PPr5FB4-arAQ{wHv)TJuXZ$K?V7ZD zoHFi>9o48B%t%KBnq(+NO*Ttx#^a;3y9HCdPS8Hz_{S4;L#?bV+7tvUS9MSNYwq}? zu{tZ#D>hroZRti|b@;ysu9{TbS@ZAum!YVv$$S?aCZ7i*_r$EcQk}<^=!e8;E@BzB z9oN1$Yr*q`Sz16lvhxriH+VkSfRT@35;%P;{$e!Aen~Z--(QAe2{jS2V6EiJ54UBZ zIat7Q_|gwZ9fi)(Q_}qpU}olIggNIenGSxH%l2ZIrM^w;O31`A9Oxzsho@~QV`1#a zrA|EQ-v{2;3>sd?JI>TiEr&Hi(-)AI_l&$q+5MPAbhnMen`g;w#+RcZAU4&lxvh?k zIML3%+n|%@OKh6P@?Z}C0D28g`3JE+8I0&JlsuOoI2jKhHorecE;=`*3_QwGYUfG@ zHn6XX?ihKcdLF>dt2P}0JK9+&bN6!nn5F4IlN^SxS3YdLKA|8pc&bZEkw3MP+Ox2hdH45bm0qJgW6^PfZD}()Pr)3#dVq7!qt0ivo zXq~ZqGMj5`>JGQr1}hxzp}ta0{dVlb^Ta7}&KnUy-U<__WxL>NzNLv=%>oB8jLGyedHKsU3P-yTEx zALb+Ar|>ur?2i_NiKG;^{{XrIi`5EU_(y|5Rfq6^EF#LVOMi$0W6WdA14YHxC$Bx< zbR4u0m>7&IN2~4n;6o4T2?m2ev|S+gKo^A6$C@H0!xII%3QkZb_*c#>pO8yIS_HHf z@9ZMDDLT+MKvFy)Aa>DVm0+x6*N-o3Cr@e5DrW+cqH(~d=k}uw`B3z+iNRr{rWo~e zF)rZF3K+{oRJvTdxLvEo?|mJ@!$XnX-5kI2)I&@FJFcEU+zBf$Yirue48)U`#m?!` z%J`Y?^BJZWcVbzlF)q%`+f2;dP~L2+*Vz&?WsklcYVM~`#mqAB=pDkAAiAIcFk6|X z5EnA5#T_@1CCwNdc4RoI{cPt~CS8VsZrY$?F15T-7}~_rrZP$2rMB>|R=uM`o!{|}i^B{y6GzIGDozs-GZiRIGno~!5*_6u zGWCmGl$$~_@hcPAw?0(lwa9T!$!$TwdGL#IKT(cFO zZnaBA1 zlT-@^O2t>yE~ghQTwCV<06MS1r8O1uSg<(kLeFVM9+ix0Zu8`+TLM6#kw4pC^ z5#Mt$h}=fG&0@yY4tJKTp&sj3HRa)hlxI4(`+u4h^)$&1a~N?j96Zx8P*&zfLjM5$ zcK-k~Z8vhmZ40C3P9REZgeCg6BoupU*4>kR7}PZf5Pfsb476K2E(eVYEcNQsQvT zaZc#S>J%}S%lf<9G!-{&@m-vCysne+Er*veFmqq5RdB=ts*blSGby7A723Oo?+kp> z(mF@3#JveX>cLFWkWjom?cx!${GTy;U1dDUGqDebmZq}WZSw3uReHG-$qbn?l}lRH zuVtf`m!a-|QA(TU+uww~4S2G&shw4c)-5LNStsD-qfn|kmUI*wF4Z+Yap=ir^!F^2 zOegL0=l9kE8T>Y1Z|J|=e|kP>%*A&D>?V+$oIxGi_xC~}zchng{v+!&a`p`LXUeC_ zyuB;og)rD2X1nt9FbRw0Pre*9+`FQ-SOL^-r=36L2^qP;IL8K8+m&P0kf+1)LN#r*|#-Ec3wEpNT%=7w$LLeS^8F$v7 z2#&^0uYYt2IrBN?oCNXZ@q!~7kMZq;H1anR0TkazIFNk(oS-Jk%yafdqJ+%j{VSX; zhhk5|>xKUSMDrEzg|OH|?anAA$Pb4!uW;Twp?NhToVj_!$xE|Jc~tp&VSFTj1qCTL2&e`j@iJAI)mUekukyu*6U=fWoguuuBL4tVO@C@7l|(ixLMs7n zqn|QQ+K&wq>Ht<5dW}AeP8nmoet2O8Y99UZEtN!TXqmugFjKnYm%9rtlbC{`1JijR zkzW&A;)w~9syTZpx*7(^@22D3?!~4`6v1oU&eXM~O$Zdr(|0(Om#*q_Yxh$;!jB59 zL-iSQKG9l1reIWozqrul`!O3tMZ*WK(#n7w47b-XPrZ~jpRG!S8`Z0j6{}_0ipCE_ zC2B#X2&H+5v0?QhL0+)T8>$kuYWisz=Qziak;d6<(VE9BrBq&CgaMEh?M!Mzi8wVZ z%s>ZyPh@&qwHfQ`oXU|XJB1Y>k}2U;w}#l8(R~?XCIQv7!BL$_pg&&tM6yD;C(>_( zU0*<5MlF#P1R9t$$x_nYqHW|3*SgBTW+QZOK{`#X7fqO_BB-oL98JUF=Np!%e4H_o z#l27=!iSkLYDE`j+rIw*6lZ-zW3WQposbFQ0^D&absoE0Wti*O(eYss8ucq~k zaK@9i&o`gbB{{a8BR6?;-^f%$X?UfrGCAc#Qc3i}y&&tp4Q3R>yE9u-S!yfUx564T zG}5fB(*YN`xTrffHum~4)c*kGaj2;+*^B=Gjhk&R9!o~IYocMT45gXDG!@t$DW3O+ zA+Y@>qb(Ip$0{+kLim@(_M*L}vG;9EH@FN|;Zg?^L?nz%x8+Q?jHtfsax;3SNjih1 zb+GzwIHlaJmpopSGb+^tR)88&J=lWMc)Y4f0eMq1UKL+@Bcx)&@STjwsor4NtsyP4 zqa4LgBS_-TQj@mq>qaUnk{k^yvyyT-6aHc=N@9Z!8XE7dK!*vXlnX?>s6b;%io-{9 zOu#+RDbQOZe?}*Alixv?+J|~S4&tRtB}EMlq=63b^3Nkm@1}7hDSd!KGIl`_XInzNO9!9^j6ZIvD zp{by+e*Wl?5@pT7J||=>1E?Jphw1f_Ji%1Rr`8EQxsztbl2i84x?` zln+!0qY33;0hL3ud`M(AmdXhEejAxQ-ISI#=Sp?zGzVz9tX!<3sXLcR4J zWj1=rP5Ag@L(zJvB|$Q@e8OoX@ zoo@8UE&QQ%25`kp$I5@wCCd`}#pTf2QB?6>xPaHbqbxMe1d$Pzcigt1)ms5{7p z7<@^gP<|qr!@MJR5>Fsu5;Z~4{{RVxAk~0icM8%Sq>S z;@6{;1D5J%UQrB~Dg#;*l`R>>&V-j*WJYw)B54_COxcf2wBcKE<-086QwKFcHOP0v zT@{0=HwpkM0Om|dNYMg>?NDbyLQlIHUd9HpwV@tkeSR@1g2+-Mx{F%0prFW#o3sIV&14EE8CyAP&M#u)Vxs50y zyGlgP3T?@5S#A{0o~U~#3ry+Gf{|OpO}9Fnz|3xo9*oD_C{M?cKB$Qoc1qy!1TH`m zyZ|!yS{KD*er#^OqM!}l>@$%!x|{2lC_-M6x@8ywD?m4YNIEIBiHt5G8lgeDl{FdH z-G@e502-EB8iUBgS`=!66p=s~YDj>Siy#%ww^e`}G(H$4fVPMDRM-`$@Y9?GxrMSd z6w5J9(d;HR)v2Ak_j15yErK&IV~aB^MiKu~~c8U{kssaAoH|K$$WYK`K<|py zBU$7)3K*9F+QCRtfBPAs944KyDp=c?A$#lMf$?GU@LFX~9J8U$yT{iBnJ@~{hbqvV zqPr(d0xCBe)~6#03C&I50%`!Ieb}vrps$hS{USzHBpl5-9}luTX72jw0gwZ}l_R<% zmSC$NF=!CBjZvgYOgSD|R$@Z&NoLTD?x6j9yrtViKxkuHSpC5f-p zu=7W?!sa{80Ne#4(OtskO+*zJG2IJ3=xk2?{{REZA!^u3a)P__2hW@ypz`IEHkUU# zQ!hSn;h!(Mkw`I_a-_8j0x6bc1H}28s= zZKg^fDKx790J^=aVsgn+K)ww+T`=ulD#6Er2!K|5EV;g)X0^Nnwy%Kugs<|tPiUmOexgwq^cJHs+imn3?CE}2p6jv2uX+`l}-5nThXu&H% zWnhZXOt>NvN-cMm?Qe|}Qn5*joh=jul!Z|$J68);ZOKb>X6(dvnd;_sj#a=Tw9yb#@+Z%A4tB}N?+aSWt|HA_@7^_K93y<;}kEp8L1EXiypIsnFi*ruY@RovctQPf`~ z?G*h^C8nSg9${uA0<6xrFIUZNOIPT}pXx0{^xZq{X`*vgHA$uB)!YFCA@5u5i`D^X zDco|eaf^NjLm>pv6JBF1wqhSlN>$}vL{d2NzD~w0z0zn(T=7ldLW2@J!HV`LNC92l z`3=z@FG}ZdBBz~l_n>Us^whR8=~tpTIzmxL7EA#3bCglg{{Z$j_7TNe<)0GqiZ=tBK?8IKbbax{ihG|npML||t2S*$)Ew{sCIyzl1 zQt-anZGU5qx;)2~G!@w(j#WHL*7mo@Ve}KMHJdDwNnmBY4qP`b&!opDX)cdv;IS_* zVEM8|lXIhk!m|8cei+_59LL(y+LQ{*P;-aZEenUDgnrh6XJ^bP83W zq^%*}4yEGOtl=!s8T-2s9w%K^c83p|!)y_`z8R zclUuV!sE4D4>3x-nNFlof{U2?F+$USCyWcV%8x556_)18_^8#3=Ttn$cK9_n~e zhIci?DbrjStnZUgYECSGNuZdSk4?%%Gs5(9rKH`}%nqt5D>k=~yDKeb581jmbtjk} zR2hCS=2XF$&%VCcKJYtf9OsJZcOQi|;;`+yqU5r@o+YX_aW|p9QnFgnGFv7_rD)VX zrCioF++2%=3Z%i@z&Gr+QB=}h6JVy?W?<#3u{Ct6HBW@80b={2*3n(B!y9O>mavlr zMAR7rMj=n_MVk$#Ww@%ku*#)KU@O^-%SwEhFs)v$bm>`Sw+8@^Q)fu2Vt!A!`9SqJ zg?bu_J0l&QF7HfNY+sU7UJiu2*-WTJc!=iVjni0a-70gaBRd4t1JcTC_MzOblx8AX zr1=Lez^hAQJxaj9_Fo$++DAjvC^E)PqCQcWN8=8RM&q=j-euwZ_@d#Wx=g~%p-Hmy zC?S`^+nl@^{j#SPT>pi|ux@cmm6lDJZG2kE+eoPwQ!YcJl zsM`RDDfV*ng;rVnpxsa517)_vGw%3DihoFSlDWcDa5X(6kSggryDYhLJt5s`XWvF(xbUA9@E1EF0W12HV zPMF^@hb|O~kf*Cdbo2BYO5=o<;)ccF&~be*c8TJTbT z`1HIoJd|#*62+z{C0Md?E!4CvVGIQMz#>aU9gxr8cNW(Tq9rj0&pOhZ>-1srXxWn4 zI@xb6W(6o_AxqGkdf7#(cwS7c4W^YadrE#QP^OuLyQ@qjoPlCJDx)o!wrZzASgG>b zV=~K?EYYSmP6efwV#=-TnOa#_XW4XHq{&PkEr@YAOR<9$0J1uU?3WeJ+pcKU+ePUN zY`ZjljVt#3k zfx9iv&2?OK4rZjSWS?~_J}!PBb1 zqcEttb!N2+=B%>`O|Nn^zM*XiYV~DG6rc%VTY9^9Qk|GY>8=OI4RX()9WH2@dQ(MV zvGQfCyiNgA4~v&901g}|UbfZcEZV`m6F8|ZE`KAWl{Ik~S+ne7g=NbRYs^MlnqsSS zL$$M;T^V;w7<@dPA&irOnCA%01jG((F0FLQ3%ESAaJI8u!@e>cW+kQ1EUw6DRb*lv zL0fHBjvfd6&`*bI{4a0ZT)x>IOQwEI+EFIVRg{wvS%Ns6pgLD!sKgLT(x8DuQOX7} zEgRDolM>V}l*KB5D7|#ek;rktM_>4f`$zUKzCO?Q{{VxOe_uEWlSkdkA!0>8A_+QQwmb|d1!?WhF2PhMFYko}xLimO zNv}^oIIAnkR03K|!rKL?ww#mFM+AT$7hB`a_jL_wF$CB|nT>`7W6k zE=4)PjHq<-JpAcQ{n%d*qsgxS06J%viYdt=;x@sGe+ok55y@#@b%Kl$!5N~s(zZPelMMau*7IhZJB zOq75MuxA2*cCK3Ugub#1L98MH1?R~4jT5pfmSY+tpgdILNphx8ni?r;SF^i*YqJ_YuY8WDoTe$4m=`ku zK9+TC{3{Sz!ScVHSkiQ~8B|MAmd}YrTkS@Br#@78iJRumdgWDiP^-nV-k7?}CF~8s z8`Auhq)4Hkh>)~w)tuIr-E%7dc881pF!uq`-iX5z?}VPK@QIdMyFwY_W3=&IuN?t6kR11f^M>)L`{JlgxDPpX#)?p!Xq=v+CdlQLnT z1Cr&M^_I}JzN@{EOh?M64J#>FJUp?T3jwq|T%C{S#T*GYSZ22r*@Od?7>awm;dRlI z9Aq8t0DuW%LE&YH`bhb9PplJ=KI@e23ZZx4EoD#xLV>0=8@ z*~U@LDedUv$(dt#LBh%kjjrU#pY+ObW zrQxvdU4c?tVp=JxwW^u1rqH_B#k77q5hxH5Hic@zY2mwzvkR6*;f34oKt3IpkX~EX5P5_GEASDgV0sA0%%{zfPz?plPuYvk zgZU+5h!+zsqO1rRf$L+lae?}&a>`M6M>)yBInIWiy)h$z)I3Y%vR`#7a?i6Jy`ywgfl(_1IEnx|+fg#%=3(Y1Of8ldU zYV}g9xXV&V^zBeZHvF>FUd7)5(Z(G>vjs7Lr8>q{Rj0E!lbtQ)=S&QMqLp)dC>vWX zQOYt5Znfg3*6c*vNFao36xD5I+2q6375O?8vv4~TnJ;r1`kCNT`6c@swB2}+e_5nu zflSswQIPQ4Qx&{cz2LK_>3D(;SF<7zcy^ekQANXQ%ko7}GAPIB_I}hD>U6?$eV*a_ zT=rt=_$u1uwNL3pAR<-{N*ZL&!I&M_GN7-~yEuo(bi0cp&azanf7_Qv_ikfP*^gm$ zE?CXUatNhZ+I%-E=MURgB!Vh{(~+S4mW%Dz1>Nvh-%3xID%h+`?*uE9LOt1Z{itm( zLpz$-?ndJ|VafQ%ixSRR+1mcKfmslC^SX@D&F# zAjeXRg2l)=&<*3&Y((iknq-Fxf!vcoKo*v*w*LU_7Cc5SbITL~3xSX~G6S{j-4y#$ z(Flvgu$V^cn3MU9{HcaQC8}tomkjwI!wysw&K? zD?q$0m+r=Kis^iFa>JM}OuZ}o(6y2eg=0RHypY=arj|x87@^NsCR5T`QtDpf+e_N) zw~9F{Pd#Sd{jywz6dCaB`y+DKeQ6T}<)N&_6*VN9c!|!8Ew6lF`bchSlbNMWcXn6G zJAE@vS~FyeMe9M~Wj+_GasZ=sMJi3qF6(FcuFA$<N;ksxW_+HPFaT+m;3DtQ$e|?ADzcJB^2hx@R8k}^ zQE${Dddg;V1b{c5&liWq7e66KM$s~7-bJ4Lra)*8GA-z6Mg)>yM#PY2la-yrWwLnsW2vcLH0v-C%@YsXQ2L&Lf_lY1&}PP zv-6}bXHa?fLPzt;6hy36k#xtnDcM)fhKF~j=|q+p%`0ghW+8C1tvtM|5~6Vx10kJgW1l%$(u`>y z8Y?cy+(k2q6u{&gc^$%pL!2b_GQa>9=0M#@Sj{6bo>U{sGY(8D&t=alkw7=s(+{*> zo+7mrHLiPwA}C1b@y-!RrK&QgeKVv3jf~{I<7cT*!K+cciqOP*0y5uTVjyr+iUV^N z6vzm1gwpwd2?LlkFcqRz7Fjd1Q(BRgzs&{4IjK-Up{WCLgcyTs0Bg94Qa=YPujXEAYIXa z{WYu2a{wK{!q|L#voKv%rt&I9d`oYNDtKLFGZfuHX`wX~&xdHz=q@WuDz6aTQ_a4O zyisW}Z{*PB>71@48%+gTtWu^O+7jWwiK4&$tHYI0kypz$)U=+Csy zv@0I2T=zn?+9*^xJ{gS=v-O6`Y?<>I(9CBh+HmbJ6fLI9j`=m28g^XE+$pgI#Fe(2 zH(a-I2wOn(iz;vk3V}ixI)zd$+UnW3qc2Tubp&-uF^K?xNL8;BJ2w@+8)MS7?ph0F z$yt+wXF))T>Bw{47NW@XX)C8Cq{)Suii(h^#47kzS90AF`Y%opFbZu~`BOrnJBjTDwfG&%&Ws@Q2!4UAIb>iIAZnTvdkts-7QqFSVlA!K|HVxb7yE zpdgH)G}8=f!3INXI{hfeC+R80l2~V1lq|%x2}9{@_F+fTlU|aNwI^z0IZy#URV@P3 z2{-O+i>83K;x@COu=E8m9b{voS@54F-G0{{VIs{V=Gs3X_pE%zY?_!RrVj;(!{8ijpdR z5cdzH*zQA4@N@mBQ&bw2lWQzm2c1u{9^oW_DW390Gv5)?YC+$X05q;}_CnBAiQhm0 z$dMALH6liAp+VmeYdF<~DMClIM1MAjsFC>c0NoABXqH!}i^X!e7%{0aqTd`%LXG1T3?VisGSlaZ)j0L5M zV5Gw=gD})1Fxui{M#|N-VyHAsnz}kN&sLxkz+2e*m=PU(c_`z`46Ev}Wn*%VtN@@m z+5q@fzj`!G49R1x6hfI5Bm+WL)3w?Q>4>R^=jL_4Hp>7WK;ge76e$->V`x=-lv8MJ z7+<4}S(!3wE&l*AtZp{cE4I?hW^R6%PF#s5%{@G2Dn^mfuBJ`NY%UqEm=p#HcM7$+ z?%IyP=%)y9*m;6wZkRy?idYuEHn(|OR*dIR^g_y2rEeumlG)S3-sp+WnzfnaU=igJ zb4^7g_)3=k5#=-Ha%~>3r|Ipe`83w)URtXuU@geh(vd;d-kIg_sjhjEx}GY>HYT^t zb|skZ&W4Hr;#Ls!V)Cdp-Aw8PCNXc5zYdNu*|es+UzsEdZaET6B>K#|#ZM{&7}9BX zU8;(JO%7nz9X__T2Yo7O%WH<^jS2~lSlZGytsSiv(zUA$xs&N;i?)K+(AhRwRQw~E za5~$a2x?OzTWaCjYrf21bw^mMMW{418SnSJ)&fv#W0W;a);0T6<>O=&YKC2@WMomt z4$|`PiU&rr+FKcO0TwYvHuD=RcfA@8tLaczHy3wTKXw@7@PRR1W_C;qUPAR-f8zj~ zO+R4UxJwh^@N}+##a|{{ccT1h5)n=4>qwIzDK)W}14>X9xG&Wfp*B0w+Oy;RUOvpT zkI3Q*UJ^4Pq{aRWspweDg7uJ*Z)A8kwkISO4<4A%i${w^6>KvoJie$&u)y+zhl3X$ zQGX%Et7AvN!fk;(zZiZ`_JaqBWFlTu2rubuKdelec^C(j4ftKFCS8Qz-tJLvhfJxP{M z^C{T{d{*WngQosT)CA$NObrgi)ybQ9`NTC}3Atl@HxBddgG$F&m%-Wp4_0N*mIBdkU!LZP6(t@4TV{h7_W zBjrtLwsf0F1X?PzBed5K*|sk_ALSE*m<35rM)5@-N-uh6P_VPfGjP(TG2X=%^Y1dy z{?t;nhvem><^ycDkl7H@-IN2`*lWhrRl)e8lw`PNuSWEThL|dorJg`s15ohsM9hsS zgj6siybw%t&Nt+pGWKaW(5XNaOhzsb6|Bld!m(M>T_0(@C2dBWfD%lXzP9kQE=ScD z^y2trx8)sem-T_C_U9aNgZV;Zq>{4{g{4D@h(S_6)7k@wMax2btx%twmU75|ZK?4u zEuL$1Q^PM{dybQ-^7`O~{J)H4+85;qf|*Lp30$^_8U8-Si=L0yY&^kLnuj_7TR*a} zrv|(i+)rQS<(v)vXV1zSrZ^fch7ILWDo zcap;SX5tCRsC=DF&^+IO2*wQARLhzVnTt*}0&GqJSRm9SAoT<-Lb6GcvL zsf7jQb!j*^S=KTw6BUv;xS>67IYa8i;~kh3v!QsU?Ja(0R|##$SmqTrjk z?QphN&@W4_+Ekou#hCNuI*F{3(1%4f+{;acOV-u#Ms2Qmm7R-ufz)-3P?Man$ZTnn z*>bU|lSFQq)qsFBxsve?hVar!HUw*0T-9o9I5zCON|&Gb8x?$+zek@Y3=SSlztSZpBND6~<`Tg}Z|ap) z*vP#0cDv&3uH6^mv8yd7rPAfhNs`n6849hvRHojt+;2tMiyjcTS~*+!g%ks7>u#@R z3{T&@!#3UD`S3oHTo_iD)J!fHPhstmDe(B|JzrGFEtfed^YYcXGFesaGfd|iW~KCI zm^@x0WSXRj>a5a38xnABsgf5f5r_7+*qg;_{I{Jhb0ua;3=r2PzR>M&X#VU;v-2Nz z`gUM@ZSD9Ca8-Iz=$j9uWQlV@mo*L2aR>mLCC1XUx8BL#jMlfL?L`k#wbvVk#J&$m zqRr~oQpv>2OImcMV=ZR0E=(4Sa@wq>>h@Y@(9_L7u5g=Lc$6{ZN`ggOvzLC<98!v> zvc6d9(L-qbW6EP$ za}QaEm`NsNr(?v_qdHR7{{XVHVmea*^CkcW<7hnXyNce`yyNN5PyGwX(zr`zIK#}t zmYFLM04kJUoRvSDBU3wVWo1%3O58oJ+N*=XOTtaVV&54wO+$!cmPu6&w6c|f%C@c7 zHQUHu809QKPEDtG@%_x1Ay43_XugTDPc2z+^I1)3%9AZ%7_H0XX#*X^I%~&Jby8#* zcCDlrp%#uFt*xbN!;}m!_=W!fiv7y$kI(FUd~Cn00?m&!8CZWv`in3CsqOmmgE#nr zEdVBeScrh%_&{Cx5Los8$bkL@LH?B81xo(_SoEjz_EdLo+J(^xrt@5Y^NMXE(dCqU zz9I!p2iL!pNhXan+;Bb901vR&4+`&L+PidSpH~I{0O)LR z&G3vE=*kX9BU23q58J;XzB@wll>yc zgXn)2^a4!I>f2o7chdg=D7-YfnK(>5urAtl4O7CcxLcOjX=0V6zEx8*`N=?om{k=c z(yBjp*dMQ&Tq+4;#<^k|pYmVC%`}(i`J6{*m{svO~-U?R52rd-Xye+ggyjxLJ(|;@% z86rqU+$~BG+HU)<=lDk(&crhsw8w1wOku&2wB7gr05mo|JXa#6o==0MG~deK5cRhZ z^rZ+vZ9Us5pYp{6PW+;0Os&s4VYYy~k=nZ3l+{FL0}=*8z0j5;2wOebbIPI}95G%6 z_qWR|dPAi-u6RvoMN4w}KfMt6y>Oh>+Y7jwZ{gyI%uX1o<-2gso)~7$_4D>dnBq%- zd!LbMno?onnK1n$3{2Bp$v$M5J09)uX8hJ3poO**sOJeV_<4IF$v(m5x+OJhR{H6I zLkiRrQ$@G6cbbSTA!^wTnWa7*)rsv5sk3I}5t#3y?f~qsS>cU42dEfHCh3oR_D~#% z?A*EW9iAAsX#E*JV%aWI;iXV8XIou`yh^J=#+$DC<2%Zi1LF^KJ<**M%a#jIbtZrb zYHH+`@prEd%KT#Qp>Ry9I=M?JO+lG4YcQ{Ct4~h|<@TB^S|?PfX=6-%=3|1??EKm` zOXU-bsQ8(Ni7A+zxK957Q$}fIv7Lzx^$%EPV5S+8C(IKXw}&93T(o6n$Wys{Fuu5a zq4A`Uvk}hFq9U@Rc$t`Y#e+rspK-21b$V8yB(r6`tC^|)0AHmR>?g@>TD@$=l%N7w zx}X&Cc#qPI?rA&ZryEB&+X0GaZ&+__IJ_v;^6Jb#hlRONkYs?5SVBx;oDRt1|b?z!kU(oI|Mp0QYNL zy-_f9d6X_@z+uIAlv3-nvuiop{n!rrVH}a6IsnBoeyH5Ww*)UtwpVA0F4_m=tv!O7 zg-}(vh)1XA_G4($y5ojZNt#98gEWu@52bps{LvkW=?_P!7N#!{`HIYHDe*HinlIUl z?r)OsMM_`Eg9s?oF>+9-6ar<&gNo%-v}@V_0E}34cSYJZPzqjb@+e1FFFO0pme<*Y zru3|eL6w7&4GntAH|-^U)HTO+xr$;f>Sd1PP2X(5@7%8Mb3>JimK9Q7kDNl#DV}Ab zu)B$=U)k)$qvNJa3VOT-9e3@Um~8Q1Q5^fFwTg4+GHmC}&|XzXiq%>L9_%B9(9JYl zRhuk~!e4iVTCqwfmd#^XI!+SF52R3MPOl7#^#{Vrg#Oe~HHV}bGc5}DN%sjyAdkWm(Wm+hMOW76O@-)Ef2$p_p2P-}8Ig2%Twv}si zNKEMm6uB!(m7Zc$y}){!9!b?%e90tpukOR2{6v*JAevWb@{8<##V7JspG{(BFf%bz z-y=m1QEBe21Vs&B+9bbyvHdMjWkobK z4Ah_;Oy9!Tmlew;H^MGbwPIMz)RRG&%A?(ZOu5%KlTWFm4APxCJIq8$fi7SL zqM!oXP4t9oSUe5NtY%DWl}$sMaQb4LqPSLHWW2J``fRo4qmc%ctTV-Hgru&}<&x*W z-K=36?W|%%=NC0;T6pQ{@1?O##PpEnp;YEG2P5wjwQpppezwNQIjuNS)<S~~t?6+#@M{{p%D8XG&Z6nf1834`7;MMvq zbX7FozPYGdf{{W201!Mp)WauJPH@EN>YVq^E+ShIy@0Q_I}@YbahEDvO2kb`Qstm&WT~swYRhti zpS-Y~fUNk(u-EiWz zHLPsn!kn|H8|m*ZaLY?-;=F>Ui(qC_1qz-mt9)GJvD3}Qk&h~~HPJY*Buo!zG-3(J z?C{H%@$ki238sGEj6KqG2sZAf@Hv=c_4yw-^iW!}nDoV@fxkNUa*H;p%-lQN8V&Sc z;IUYd%={u}R~X*C*9uc2Y5XFlv=m;=?OQ6-cp1cYJr47@47}?PFi%upF<&9shI&L- zb!nDf$mdDZHbaq#&1vVw<>7{tq|-d%*=&yQgd>SxK2VnLgGxgc{ygA}53@X}3Lbm? zkR*SI8)4X0Kc4s-4)2Xb8B_Dh4I?x6Rwa@=f~K4IQ11~dqU9E*@O=BdP{n>8bmtPf zHh2V6d8n@;>40vPnjv;f;IRR6rNX)Lul887V02gkx3D>Hs(@lM1m@BxH|`6WC$kfp zBLOmmTR~jLMEx%eV4RMYINu___^YTCgD^gULEb|HxO#4Yp_&GK@~CP> z+=1NQ?Xekv#J5lsJ7Mcm&d*5L%QiPSZqcJ;P+zbq|yyK2ZRbIc_6#w07+rhroA288%_mMvo!-jR2atR%5feWI+z zhzvmRtzu4AkW(m3nB+<~1W;I&uX}o7s}m6{sh3f$GRY-WqELWb)!dH?_D8)4<9bbTWVs3Rl>wONMe#2x#!7Xa zUaUw8yv|v6nUq5zt}2As#>U8;)cefM${F-*OtPeJcutXKAa!yk)Plgj2pySfpMKON zn(`)0I}0fQ1QOs{!?U|;=)o6V($};xBbaK3989aaC9r)aN;2$Q(TLgs11)L8b42kPJ+S#5<<+1eG0mLKWNRoheVTO8;A0Lz5{ zQs`*aDNERPS$v_yy*QHP^^+z~p&%d|Eadifc%Z+B(O+E~oc$n81B3##BDT9z!*SY) zJr|~>ngWQK5D!@_DQ{Bmj1@KC4KsYaM8XIF%zc4gB~`6g=|ijmS(B`nEZ7t?l?0Sd z(=#_U7wodllqf^FdH<}y=2#C}wyxDzAogjbn6BIXBEE3B{U?>)xEUnrr5DTZ| zDv=;LmZ~Tm3)#C&zVYot{TVUls)q#?$zm3yDD0~@XuwiK6SB>rvFwV5WZ)ErET9%< zZw=I|7(NNiveRfK76jf@GolX)wR3M2G|>tkbg~qVtWgw=_WuB=!Msr~rZA0&oV5h4 z0dk{d5q53*QJ!pa(H*Opb1~-P8e@V*s$9{E4%0H8(cG&S9afhvTHP^Avz&uaQoF6X z7(R@b)*z*bn?}$`YHW#2u(qF{E@Fh1g_^rfO0sxm%WuV@RubNj&r6`0IB>g?39)FX zqhu|6SweV>PggW;o=jA=sH?+sD)Cw)*o_48z*QhS3V^1ngS7KzQ|gA2G!qgAb0#?g zq})L5Z8TMetK7M0U2{`7T0xafrXqkhWxM^6XVCb8GGp5@%C2QiZO_9QoW&9^N(Y!& zDufpXWB!!2YF+PkV)3gX(m+C?9=9=Fwq`6_=NWiHjh-k>sJ$d#@VJ!(ZL;PlD_Wlv zJD%fl1m|!ho!%>Ao}rYh)H7s4jDY)4`$x|t+j*%Zxu_S;l{$`&MfLu@D`>#uw*ZgB=u3)SXNbtwtsu(yU8R+XuTP?~c; z52_1*TC~hNqXsDhFWl)RN3qt?L$A<+yP)Om#BYOqTOfLofkUt3O#*;#+t_ z9iQzEx)sw)hsI2lWrasuN}`4hFq>9vwd|*S25H<{3#L^iqjA;64K7;-3^E7CHhW(5 zCDY3TqL2RomX<09JmPx~sp}*JN{~&=#MbBSTj3s+h`yLKb^0=G0jj*R6l5}LUH8YE zler$V2AXFu$@=S=6#U&1`a2VqHw@36VzYZB_wDLDs%m__qlV5IC?u1%yP{f)W7N~nFWp@%75x+6^V&AIRx{?Sc+{yAB zKWoJl%p|?%+4aTGQYqH4?gE36t3b$ai#J_PYLp<2z>r4O4~3%Jthh?58fF|3PdKmY zUJwcz3eZsh04!Xzysw)*;C@yzKPG1+nl1en<8qjt;TQ_$2-$0+LqKU6KSo%aXAfEs zMKi8Uts1nc*?$P`U}?cK=Dx2E-l4y6z{i?BbO=~+#RBN{&}B;UgMNu#{{Sei3PM-F z28ROy=L;qTL_|X?y^-bo)+9z4cL*?)JA_$u$nzwgP@>?EmwZS^pcqs$ToLad2vKm< z?}riS5~&D@A`TPE4<3kJAOgU^TLTqkjPV*J8<6^<7Zaq23z-$}g0z<9Ph=>wRPHc(en$Acmc#*X zW?P|AF!_5Ad>Q^fR3t=SB%w)Iq1;Ep90rD9{{T;H0e|U~PryO3x)xl(M9Fg8Fd*ED z)d$)lsie9R(eo*G5>`NgMYkjF#hIs`Usodrm!wZHJ`ie66{pFE>p#f@2{SnpW=L*8 zo6vo%)O)c?#{87A($=!EGMtLhOUy!hnOUkfyfM|I5Dy}I;Oj7dm@lm)xdG#gIF5R0 zj1e7VxxoliSbDq@hKl|yx^%gK$@?Qq9Sbh)NF zy&H*OhG8<K?*b{qcp#>#M40^dz>=dgFqi>3Xw9&%77UN}N zaTs}+*^VrjlFK6It9{bee>yYoWxMuc=xgb@Qq)}X<;zg2relRdf|fM5Vs06&8tmhr zha^ScFrF(CstI;fMGnl&!BtUK=9t$JXi>Fw(5KHKtsrqAFd%?dgfJqjL&U7PTsz|v z){cR+L*{Ud9JR$|&X}@^yM>mtRP>^)z41rs7v)ALOcL-V(o#$&W+8xHyo#!1CAlgXb8E12Zr??OogbFpS;NUutO!ZA(VIqjgxzmWeN^mWZKI0y6|q zD64&QAa6bOk3twNV#GQt6_HjIJ73xYIbT`(AiE@dQX~9At0%~F-OJvNmeHRk*$Y;i zijsnafX)tKc5m?g7*1ZNXsL5TywK@FOCY9d+e>v17Z7Or1M4FH0F^iRMla#o1A|>@mm?2&Wf{Iy7t6hLMtCUTX!QFG8e`-upR1IFFQm9$2J|B$;*I zStYT{vi5=d-^~E}oR5ey{*+fTF`XUI&L(FJrXsYcQp6vl7Y!ToR>i%wmPNv#njizj z%*0y~I#=aiKAQ$ipb7n2FFz)&(M!`GDGXE8ev>wbcvmZ5v&+*9a?LI&e&qiEwz)Md z2gx9+t4y0E0*bgUYyd87&IZU{acR+=3}~4jt;NfkaIF!B$yUv!vfp-ImD=%a$17ZFX};Y6SHOMEdwibxsyN?IULIPm8|Cq zH_8VED!on)T96n9Byjj?W$bdze*P%o=GM9Gx?vUMH$!Q-xrZ|C<_jO|75p9l05qHZ zOIhoLk=hzZ<$BdNOOq@Sywd7jwAWUR`SnJBrhZkk*pP8AxPT?>B7?KDZ7#|=rc|$K z@2+sXw5~vWDGiTDjd%s-lQryb$_8_bZ=B;W33~71;^8ggiqCM6h{Mm`DS5c@k z19m_U-h#dy_hsJlm@Gl9s4Z;a_$M)Gqp0_(BOVas&@JDV%wKQ4H)}31gXZ z^W9&@Bqd8MG6eE9+#)DDRBq3B0+fka4#$z*p70GKs*6s<<=~i;T7QUZI!z5e1PGSV z_(me@Nd(Xln4~R&)v1n2>e#6!nG;s^Lfq2jm)hFWAr}TWik?~LoJh#P{N7_c$Q=DE zY-su$q6}2aNlO%(RH#Bei)RvNp!uNfxTR^9W~a3orPRS`v9ZA?x-nUp0w{9$eYvkqZ>D6HMY z1DHE7oZVNLa!GGqWx3OfDBm|}(o$@i0 zC@pcaWHq^$nzd5Pw6^w#W-*Lb3S_cvnDX4zRb7?o;bv1CKS!GDgh?ttMC)fNfii67 z1Q!cdYnwVZ7Z0*2&Q0BjaZ%wG-Bsv|M`8G;Eb~PLrOTN%W3urqwrz#+290}HHBSn{ zqX~(31RtDLORBp&E1es{v6f2dp~0lT(WTH3Y+H#OrQJ@?IQBoKjBD`XT>%SDtXROG zSE?4%ZrcOBt`X1@GzmemgOGx`nXWnbm;O+OFH5olCSx#obpe1`DK6@Ec#qcGG0ijd zrWM+28aw_NSOJK*J45gxJy8^uZHjaqEcS1${Xt0b2O)F9ZSPX zUc&oGtsvuz;2!JpRHtL-w;m%AGdk0(YktbmFVThY`VE?<#wMVW)oZ;~a~3JuZc290 zWcN9mbNHU9Bt_iIIgHnA<1=yD?q}yV0HC_9adDNJEx~NFay_C)gjn={zqFZD+ ziVAqH?uu5D>3PLK3MgnnH9qqD&^Hy!u+(PwMvH~j*<*Poo5|%*c98U7<*3LF-qY%g z6Ccww%>Hpf-9eE6_O_yxr#fGmPz2e8a{<3<<>C=)QSgiGmy@d-Ny%O8fBqAGt%O`QVsIiKkm=SaFy(-i6(AXrdtpl=LOv3h!8JVu?vApzen z3^j^AP1jCzx>tO_mE4NLzVhW1C+TWr+)TMMRTWSuQEk~)@m>Ckef3*+t?0S@k7%80EGblXe_mcRcIzfYW5U~=}yPr zt+JqsTfB{(nTziT20Ipj!PruBGWTP0}5dR&xFErDff z3aJ8sDdAsHSfQC_yu0^rjX$PM9c25m0hK@iZl?D7Ml;MrumK)hyx>;DToJgOFd*g) zK?Fm66@&>gSpbR^%y(T9aP5s?#rz_%ubSN^T&5O{tcVH|KMKG&wzN``e4PpMbJZDBa7yzia2pMO>35%Mbm77KYPz7!lx4CJT*B!o^R`z7c9%#zCSkw>EP93(( zO;$6Quqr2=rj;pZEeZ^0vryOWq-(u2X&0S6jb3G}t_4ddMqVjv*^HiY^B)>Vr@J))z@zvwn5N)t+e0TtaI z#f-OCmi^Hms?GC2S8xWACp-9V^NwuR&9PfdiFH4b1jU@G%qe^NO-)Zp)Q({Q6_kAk!b&24Py$EVsp~WyBQ!00Ozh z{)NL3K%lE+Yq>}Jkrkt)sHfLc%*6bhQ0^oFm=L*bQ2cLuFPb|>tg)8SIg)b$yi(!z z4-i+G&zas&swh(QlWz_{p~#)lESh4WYB)wj9LVuEiZDtH>OyF^t`%5^JAvGC&LldJ z1#-@!gL#U6157UFZeXc9vx$Yqii1;cGHXgkR~B!Kl@mBe3^E~2X+uD2AuK?lARDQX zrhi5varm%i62)u)1qvuB;>(;PGa3_wniEn%pw0m%A9^MZAnvcQM2?Tg14T6lop)9s zF;h1&$PrL$#p+o014>lWEV-TZ_oAf|Mtd%p3|%H{n({Q=NSI4lGBpT0z~Ap(-xW+2 zWH{Uj6&Z@dm&K534MzGO<`J32*`t+VbgmrBm{Q3%ovl!V^LP(+g^K*(uyXI z#hl0|%o1omj5@|?f^vFMa}*ip6yjHME&4B6`WvBwHyoSh+3{>Z1 z!tjs@sRU*+`=TfR0F$=Tk|=TnZ>NctD*8tsY7trhz|_{9TVHA!9BfqcBITlV(Rq%n zMNonX%(3^PBS`5&*yjZ0MHSt?Pr=6Ue7(V{q6 zo>_~|n$ilBKs2E!NgV3d?D(P&T=j>on9|gOsxx46LE)CZKU72Me0}oeziX0%lBn%O zOuR(21?!t{HLDVPF!IPueg{k6LF3NfW+bkNq z(;jBbrg|LcO{wDR9jF!^>FjKv%+Ad22m)G6y%gJPHOs?qrXw+ZBXyWwpv!4Zb;4w) zwMzD-%~b%f`cYoPVMQvm-clF-w8)F7{CXPU*RYjovarc~)} zj3`=KihRn7{GEGf;QGC^`IV&!Xchmv6pHy@5dm5vynqrw?8!imM z0^|Tf_$9P0g_YHtLlO>b0p;qpA@Ea|KCy~5GCR-@SDYIUrlnp{2zKVx$d1!p7}=+i z*@D8$ZqpK{Ha-3uVNE5Amn{vm1?)fo3b6HC*@~7Y6i;ZW<_1*|ju@qRu{=k4sqr&H zSV|sQH$NJv0;4mz%(EW;6}P$^XxXA#n$g*fTCG9=;o9uPNWrZMW;>{Wa&Hqud?t-| zHK__RC&lisY5}p7y~zz1iMne{%J68kJ0KOcR$BWvv|6xQM%(igs52ZIpLKoSaYt-9 zS(_?px};@DJ~K$L7Op{s3Fb$IVJ(KDnV}}0mcUv@`U7^?(P*C3-3aS*J67^Y9F+$O zw}{47tLj4s707@A8#(r)SWIR4`BJWn9AcI z7255)v#OZw4wH2&4%i1MLB*}FF02EhtKBh`Yrx4I(X5y$b1^dA<*g;CRwH}4+F6a_ zwmNtki%GstY}1l&*vau4LFLUwU|oO&2IL=QTWdOYh0%7@Tr$hYp_%iD$N+RBW!#2V z^$y93rY1{G7@7T9Hq5jPnA$)m4dv8ao3M zgbaX@nt(GK{Yw>{Y0>5Ic!dJLHspIk-FLPwI=hBv!OOT(U{O$a*4`M2z@;WKxS%^F zPdmLa=jQulcd$E1;LK(Tl(t1`YnbF<5@kEjEVA7lp{<`Myfz>f0Lycp$)d6U0PK!^ z*4~3B$Z3R2XO;*m%A|k}%U%1?(#M%KOzA1D)7hNM#Qpiw7M7Lg=0|lPlQcVmK}J%f ziV;Ck;kuVYyez-tN=A(}Xl1l3B5CgP%epT*g@(D0u}{FAn5IjW_|l#6qx5B?i#r|k zG$0Ju)d`-FtvijI_N7Rw<|#@5X}`m4SoD~p)5|Y7ZL0W9kUOcAJkw{Fu#aGje%K6ZAF^e)Fz9mM#T)dN$Zy;ZesR_5pW8={^~Aoc zU%CM>z;Y0wK?5F*R(Xm7*ckK$(L0Mg&=KhLOCjj=8VeLaZjW679*Jcj(dZ@6A>ypC z(dbU-Fle%@GzHKR=!E3-dJP1+DUoZCW6|g?x-+^Z zF8m|cMW;n;$qI0Ue+V*8YHvSRswJ2X;RO90dpx3vUc*^f!{_mZ7Zc@3SM*T{Ov8I3 zkTx2i?jj2EjSVSYM3_yad3$5u7_!s8L(7zDwMz4*@1q2;cSn`~0K^HI&jLG!>Svx_7{$6t`7vQJ25k9P;pbTHC8Y$1m=^1qRVugB zJ9+0$E4Fa~fA@=vYspO}shkm^x(m`+g)1uyF>6roG<9iJZWU>i&NEFVqb5k5GEBuO zGE=m-Q@lF08{pi#C1dIdm`^%Vl#XcmWNHDJxO`lx1)U3~B4o6y6tpzClkFARqfy)0 z421W-7@1>FgOV{O;6VbF{H!2X$Yqd@h3LcN`6o%}<1uD79~CNVBRvbsnJj?m)~5A5 zTT0!W*J=k5@+`-K_RWw`R@N>>^z_oIedy5{rrP!s^q;ZMvZjD@=4ffWRNHd-#n)N7 z6TtNnzeUE+#p4~3odPn-maM&FEyNPGlBz9cJXI0Vnv?QNlP3u|v3AeIJf||1K_W|u zWs#MaiR*9X=*2oa(=%maLLiot31lL2+N#U5wAor$YBJ}VmmWWZC7c=MyHSyG`wkXQT~qnb*D@@eeXwhGdmAG{Y`pBU-I3YqA_0zT+KX ztvv&2Df1G1)R5{*7BZ=MN_uK&s200ld~8xaO!_u-seOF3nB^3PP$b$dA2%&!<+HZU9-|$x$Ls$JJ!i}HLE?d86|G_ewE#9dU?fRT3X^7 zQ_GsJ(x)q{%bXDHOqNiRr?a%TZ7$4dDe_3sB2iD#724wJ?!>sK463aKoszcgc&io7 zWBDXt@pIMYNEk^;Es;|S^k;TE6Xsn|yL;R|6?NIqulmZ+Y zReQUaozZ^K-7(;%(vy%9NCAzY(~8#J88(jj8p@E;y891p<8)>C5JygL> z_iZP58;lD1b<3 zMA~V4InlNh_?Bkw%x4-O<()7aX3JJk1!^rM_^zhtWh#DWl{Yvt>6)ZAdK7Zi8042y;HKd4%7Iv6Ri-rxmYVYqSj~4OaLO7t zu8cL;Ma#m=moX(tnuwxjStloZcBV?1LvU^(Z?ZD~0F+Lgm5!Z*nS`vz2{9%GU8*$1 zX&XM${_J!YMOpz{10``17WryH6D6w^1-4e_2ZU_LKdRJXo8Ra9mj$-bM8suqv~HxE)FA;W4v~fcR7+2WB|)_F`F;E zpJjK#mgXx0B>j8f(nzKtB#0!%rs#aqsUCbOAo8c(Si2}_rWIT%FtoiMd-re1(jJW( z#8gzB)B**~FD1~xr~VvG~{C0gy`0DP=un81x`SN z+PW1ikzPYlz7a-~EO&Ft9jT`wjg3UWD&#F zw|f{Ls^s|#wIo?|UbD(+2qj4bDyX4Vrb-3(Qmk0QxNR*oaH6d$cxz90aEgAT<9f9y zYE4N5e(%wX#tRVcs_L0vX&gr_ruSneRO4psRMBYF3~cvm%sE#vKr*+AF6p0{%nJ9y z8nxA;Da&;Tr6@j>7fWkQwK-FLCbo~X-7C78PvxP?#@u|1o!$~56=aw(+VgtQj7OI3fG zW)EmJAOaU@e)yWvSg|p0L<^fK1XhH2o8uK7SD^`9*m_+#7ZHFssJfkWIJA?9cK@8XwB9J>tR@k#nChz;Xuu1BGxd5i%B24hNUJFZ>#diW$fcUM3+R?4^q^NQh+7b!g3GA}PAEA9QNpCE@ z7&QPnn@QPa_qbwTrT3U{=VgelM%|H3t)`3mvTm766j4{wT`x?(Y5Kg1khCBkE3Q1^ zv!r@ia!%W~aaPFt%M=`1RM6C#?>XlMNmL)k8m;*m*pVrv`bl=W(A$V4pR&snJql}a zIPrRd3Yz?Qcksm<6@U%(We@ce0#_9*1I4pik(uFEh|;SUPR_~FT2vWrxKUeiuJIhJ ztlCEDkF-M!ff;0DsI+B&M&VG&E`%KSEem>$HlvqylLKt&m91_hig)nFc=sype!OAk6T86j)Nn%d; zwyvN|A{4u4{^Fs9My3In%ZDqKeX~ z{i9&%i$Re!SS>?}k_Af@3hLTaX<9v`(9tsBsWCAX+hMrDnpQFe0eK|3RAv}<~iiLM@7Ed^0Y zG!JK$e^4C{dLQ z3jLMm5PCzV3_9260iYQHQpEOEyD=WgZ<1$SIyg*OLd{`OLO{)c-E>D`IuOCA+pFc7 zt)L$lJEE

E2Cp6Avl^05M+1^wT+s66K<;GFPjy9xCqoFdTAPx52aFwMz#thFWAY z&bNElaTtEMxl+c&v_%7WK&S0Cam{%Bc*VVba=_U&ss#t8BW2yyd_Bt*jV05b9A+jK&XiRr_M-)vgQ=|x8W1Z}U!=w+^iHNu zm;)rHV0i`M1GLbWnla^$SQ{_;N2hRWWVffPf~5AB!xjA{(^U2ZA}VoKyG>K-?AsDp zK7(;nDf2}|0lBgQza6NZ#QdJ-C^UI>BO#cn9;$DJ{{R<_ay4|)GQ4KIV`h#pg0v=C zq54eGQf(gdCjj$bzO3YdO10Vk>~s#UbO|wqW-ymhK~2tS!p-E|QHu1zs)j`8mv}ai zDx`uz_hH!c$0ewWo)-mpR84&~aRR$3eA!_v7&QsVWr2?k?Gnbn1ziiP1b_jeg`?f{Gw;No zmU*tC9kY@WnmfKE{{Sp|2zPhXdDaVe;rGD-rhZis((y)hu1%*>F=3^)UB-tq>Wc*N z{cGP8UXAhf2DKFcXW!ZTQGA`aW#2>p04V0<(`MXzM0EB1E9DIlcDXfn z98lMnmUN8QvsjRonE>vgtvA*e>bd>!oijVRZaJDk+jrGpBLc`GC0uK`a}e)G;cCHY zQrQ4I;WlpUvl;h@I&a=;GX!t?F)WC5a8|P}Ra}oU4~7ZXHFixq>zJpz3eb>qsoqJ< z=i0gvOi<^@(v*rF6+@Mpb3OabH^klwLl7<`3RDVbLE4J(#CAb6g}VO$S=~SjAF~U5 z4veUtlZv6ODa=>O9_Za9Sdd8>_ls%bSdPF=3Za9o*ANh`*?6PUQlyZ}Qga)#^ui?@ zHo|PRJxHifMJNb0+_4oS5@cZ7VHL=S0Iy_01yEnkr|!}T|E29ymV#u^b*QYcC1NQcMc#e$p0M4jJ8DL{`SME;D^19{macqe4S*xe=w z-bXr-kugk@r3Y~z8p5CXPAszJL%uJt1(N_DK;XZ7B&K30b3S?H5xBiEv`$1CW_OOu zFVTp+cAC2)qKlXy?PubMyiS%Ip^<|?%P9Wn#~Rarv_`CO_c2awvRnTEB+3(YR1s2O5^i1h8j>@}#BMViL74Uq zP=*H{NT@jyM(*f$Z3}kEY)QC*Q$Q$3oJQ$MgbGv>QI~KYm_}Y9yZMk$wi`6i9Q!lp znTDle_AF;P~uZ#v=0M0Yxrap6XXGvkfKU7-j$mks`FGYSRw%mbA{A6(&p* zC84TpDiuBzvxr0g_(0KqF1|U=#9^nGGg2O!ffy;CrM1XU)l=#vGx(!Cd z$d(D;Pz@?_tUM@Jx`u?%RvXKbe7-QfGV{wb3U0@wqP9rj@WqG#=f8LFMZZO8`kFIY zK~hQI6b9BnoFF!N(C+$B>9wk3R?tAph*XbvKGY&{v^8&oVvhrieHPgKwdZC{x+;kMows%gKI=_IIGv&Z7ZwMKnKjXhQEAf+LQ99EOv6eQryx0R;_XF~52nxs z%q=&PcbLkw29TXR+aVd3adHSnrq!(bs?nqBwxB8nd8e$Ha{#J9Rlg`W7QLH$MiTiA zq?aYzL?qdnrs{7av*}igh93$jxe#)#bFDm4UeUO-kmLXvWkD7>Z%mbesRYn%3ix4> zS`>vEXDSiMRB{lDNTH~%V>ptWqcStd03jKPmi|yJ4UC3mpq*dgNBMH}CM^$Zum0gm) z2IH4CyV&k%=^ZVjgM+@b01?V6n9U7KS%SK$A%UfH{{W0KGI4fhapdHE51=r;bIX}J zbb)ooi*&m9S(nAnW**_NFEyAe4y_m&b5gV`FKJct+PaGp{Ud6HnAwV?B)NoHl}i>| zxOa1i-BF&{d7%L$IAmpER8?ikl~;t;Hg|U`71*xMw&<%#iL%x6wt!kqcEas5H?}6V zn?dK+DB4`fj4>TzY5IrjY7ah4>6r%9MzH&aCTC(UYMxQ@A8R9 zWnn`~6H{F4NTqavA*C>|8wsf+a-R>dI}7BHQDAY^co6GdMK87m>ZxY(I|*C5Qq}d=!E3-0fB%f2FjqY z4A5&}EQ?7N!qPo|;T|LVK(PEG=oW$rk>;HqRe&NX6NBA!37H8I9=q8W$^}~wd<-T8 zd0HhPw6w*qj|cw%5Su}+iAASDi+@NKFh)O<08in{27r?f^+&G%01!ZbCIJ5cXp|Ck zgIxrHwmeta>=ASh!7c2M5e0!S?12u#teW>hOrK;Z8`%ZF`-p)FIv?vuAp}Cj;7fZV zs2UNEb-mz1tUaHT17Q2P#Q7x+`sMTTqWQ<8G6N9VHy_K8~Ak$jo7 z#vzt;xyv+53WYCL3byRB+}=S~XNhODE5uA=4(RystQd z!gRl-u})33rCs(6-bDwAS%n&nSqV9(!?T%w=%{{WDpl6q{G#B?L29F}c8 zJsGnom{7>3oHF09mrywy7ug<(>?cXA>Z~z1H4Fg?^NPCEZkU{pcz}*S)PCR4eSemG zN$S7HbUKxTu0RvWW&1I+Pt}|->{7KG>VF8C(Rw~zv`K5SIEsSAj}^i`kovu89QD(0 zlLf_SX@e^pFb!#y4-K&Q0jX2iU2O*{jxTmK4L_yoRCQob5O!&GcDtamXUt(+KmZO| zQ?tbr_?KK3utxbQ+9RWRkDC<(%+W~nv|IFlM3To8z)p1vO=}XkY&#iblg}_R`!JlG z6BDv3Ig|PAMk!^Jzq*Yv#{|EWWj{gTB%4@*!#hE!^xbbh^@IkSkf&l+Zv58SbHIB9E{rFRPQA{))t8E9x&Tq#fvbTLc0@PM>N zNYrE%qSq|Ld3a&^YLv0q708Mr7Cx30OJ+xX0-L2HqZb_2b@Q?jm(^(Q==?;=kdy*`g^0H91%*< znpqoQXk-gG8do|{nhNnMx4j!S4+;W;Ig5=2Gck{=l$fPJtwpsQ{n)=~i8!XAW+6!A zG6T~b-l{uWIz2qT)>&|Z#>|=;gI3EpJ_80O76O&$p6awMCq)-PtxAEs?>|Lhw1Tn? zNu_I$8L(ZgnC4Nc{mHy0ucFks^8kM}(FLrSWy~tGoQVS@O|B;Y0E|ABtYTrNc2gon zDt*{SW}0I#C`^f=C%d%UFex2s1x4;oRohT|UdH7IkM5F)xoI<)HSZF$ zF*8^ig2aLa2dXUn2xC{SGWR*5QhBcnDzAMuq6ZzL*D6xG%||ohZq!9++;NjRCN4!t zsPv8{`cdjBICi6o(@xpYeKqJiaLDUhRIsfx4Qt@qpVcZ*vId>YQcB<;|kqt-5g~ z;pR-CYeq;n=i2s0MXNm{CMIuI(gr%HixFsaWwc3}=K!ctX7Ax@H1usn+a z`^yN4m5bIZql{F>*p$UX5UfV}Y_m6)swA{;K$w;$>L37JQWn4dPsI)@{F#Nn;KYuC zT27SPt(c;;$P*hrjrlmQZgSF~kO3s03pe~?$D{fc!X+*)=C!4574-9pY=y%_N(`#m zZ2?d-87RB$aYhHyPOLg&p44_$VnG0rn(8}p8+g8fEIhejdwm@J$PjnkoR5f{mMtuZ`hP=` zB*p@wr)H2Qs^ko-*{gpsgk@tSORW(XE%pk~ z_*tWy@x3GB+MhTSR=X${e`f9MA|_^)oiOc9m`OQ{jVa-aRmo{TCr)E}L6o2BDh<^x z0s1js#&pjh9Hw1LgKb`?!m)wjG*dll38A3`+;fS{7NkufZI*K+0co$j3YKWa)r?r1 z@M@Y*rSzhN4p`+}ad&=b1?D}HWg84U0 zV_A%;kTfh!Tf?)%8Q)U@ivxU_z9XdkTa&h{UEx=9j?6^O(=+B1blH{Nlbpfq+PtHo zv~S6_Q2k@w%!Q~U)6VF&V7d~)B@K+nDiVKs7W%(rHFW17;j~+GxSEnHRxvpvRi-eg zmhH^ZPC)R-Utl#C4KIdFyon%{3~TDU_hMrYhE>T?K<)?xA@wqR4pG*iPY_x`h?tQsdOKuI-Msh@@$CT zS~kpmZPc0f$VMkNRUmjpvGJor=?0gHl+~eGfYco6cMZ|?&!Fuy)?nqHb}2PAAlfUn z?Tvj>y_hk&v{SY01jMkW@@w(!MN3HAv>K%xQH63O_FKt>Xk9O8`b`bZx8)Q+(JClN zr8k~Y#JXo)Z6Qgo$^xr$U4T4zDS8uOfi9K}bSV*%CtSy_Ud=m@4{ zdSh_WSisW70NE6%H4JI_Si_l7w+ydGohkJ~Rfn^e?}oiyJi+^;4V%{kV3f~xbS4fr zZrwu$3BPuG{G-gi+=UOES3Hy_G2_nM>C5VZ%_Kr<-+`<`mn4E?GPKZV$`K37pzqAX zSN!wN3pWwu4KsnEoz_ZB#x?oo@;QXcgfN0(nP_R4=0|)p!_I1&5PaBIA=>pszJkMwIA%~u z*#Hy2wd{ed4UD!kGmBQ6sY;xUA$Z+I^&$YIFv;U`<|o`BRl3lF>llN>`jcd1I@o z@8u2O2U-KT<|6xwrQmHfE11rQa1^inpsA3l-h1KqP-)#w!@NO;9B-!(q*{_haIz^< zx#y9n9IFmS2y^z(WlF>Tq$vKdoY|Rf=MwLL)Dl+0E*~yKy0AEj;d3XJaUG;Ipi@ol zO4GW&D2l@Z=QCW$9#Bdyt(DxkM4a7V-)J60=bxq#wWd!RpbRShqBgy zo?D3Sg6-CYxqE|v(clm(znv=@rlRSL9I2PjLo;E5s7jLkp0#rLMqi?)RMc)=;P+i^ z(O|*_S?F8!RZwaxvdgsA`b;WOZBQ#Ji!Zt#q^W{u>gENOOO!bjP9}7Qe>r)j0Ft9%W~~N=-foPOp@8wT7vTCFUqgEqv=Tg3|FdS=BVp)yEkP*eoT z)bO&~UVEawr}W~ZN}S_{+Hf7Lotj=xj#;1ko83uDFJJg$00H7%U0CB(L6S@nc=@QtM z1nwXcS`oi#zvCGu`<=9F?^Q^K!Rs|PWuQbOH3|_vjg-zN@OZ{*8a88i8#zUr3!r5s zdbAX!Pcsr&Y#7K>>Jgu@wo~>(8V3T-Hw6_nCMR@!f~1N9K&T^eg|IScC@DZ`Q41!G zHL0&2G;%L@`BD?`GR=?x+JDyhDt{5#F!)D!h&+oD#f_i5y*=9 zeEZ_6Hf;0Lih zZ0kr0O&l82l_I65W*KG4t)u`CB1BE;Y1Xm9EE=TQduGqWM-GZK>o zwOcNsaJdIpJ3lzfp6I3Myb-bHWc^tr*_$I31SqB?efS%k1rob2uL!R#xN@$r%#`8i!%gPhia|vBScR_Y?>RAsaCG4W zS$GN~e!t?EsnS7^|I_rViJnkZh#1XnHIFM2FG zO9BZ8&by%&lm>qaa*0DA?F?|Qbm?h9oW!UZfwkF<`atrhAUvZF=>Gsi^_bOmRO*8_0X6w z0%S`j#Us!_U_(VRE&(qdx(jr8G*J*@@BzOj3P-cq0}z0!`y<4`Nq{B^Iz$ew1c5^Y za{@*WOgU6te=!HF?*GI080sJGu zf3ylM1uyvL1-tQqXe)kmf*>Tvqs<)MALifQhfmx9mb_^C2v&j8X<&t}hP$F;@ z{{RrU!k;gU17S~f`%^41~i>$Ua7qUDB6JH%nqF zYE)*m_hBDeogtl?E%b!3Sg@j}zL^TdHjUGzvT9c<@~_c{__-Au{Ycq zmnvC#lMxUKmUjxE4Xy1Ac^_@Desn}>8DLJA-g9Dei3zhPSwTI*hLx}Rj&JE><%@!m zHkfu8hEYPm+JVC!7NuBvm179k-<9Sg62z>>L6{QcrK*Z}R%15Xm=CFMNK~>_qpiAN z(>Ph0I}(#|GS!eP%LTx3I$cW3L|U4+1*_uU84j*|p=3*yEX)%cWva6ZfB<3IW^w}t zj%(HV80>V^mxjZe*?04s#N!_ij>No^C@V~st#i6IYt%CA zHeIc&Vesyf_FS2}q~3>m$FEuSEBRiV{FvBWzH zg4dv_spL0Pcftz+*&lcN{{YC}r6Y%=XpqBhqnHc6AEp}IhFr)S&deTD<^?yJRQKB! zIT|up6(ljtR2-}6`lF=hT%9PvG*)n!btICY<(VS8ygnF)($m0Vz1a$Pc7DuH>3Pbn zYF9eud470=SEk4$lTu0EX$_0Lu}@kV%8_)yO=-S>#wKXQ7B~8R_UCx{~`9oF3D?(q~^vdRq*9padY_DWc3i3Qr z(|E6wo*^);FoMLObhmpWF3Q`T*7$Z~n{=ikV4FlhDKjHwNvDQBopc|jdi@)Qb^`9G z1I&V(EAh!=lh*YT!`kAs`7~n2q@~@uK5FYmgPASaW&?jPE3?_U*rPU%Wtl<^X;WOy zW3YZx+Mm_p(ZC=Q;f_M$t+Kz(?#2P8v>suA<^itr{{XCd4wEvR6ur(aRHG({&0E6N zmm)TYET|i8eY{b>bdk{Pxma$tUBooBm=84tMb|3vT4Nv47*ag5xMjYaQP&exP0=!2 zBe2S7YIts6`9^-GZZnN=HyTbX>c@x8*sy9X2Gcc~uF!Ajm0 z!6KIs*0 zT^S2yLJdf%r@I>5y)3GzIA{m3*R|iZ8E%_eQ~+`$0&>VjhezUi(6)xD6k>Mb@m1n+RAX&w$Tt!ErZrtz>DZ|qYBjY4 zn%0{!mz^GY14?I>=m{8H`Fvm}jZ19=n_L|wg6TI4IjBlzXcWo7Fg zN&ppN0LU%1S&eTd8-P@KY(#VviYu$^N;mV1UrAzu#EaYni6N%%SLifpMQ5yS!Tx2hdV z)(O)kt2E~Xihvw|JX|ox3*GW2-O@VS8PYtVP|q!BNFcCUH@g+gcTEx(wpxUZg)AG@ zb4NJK!JX_`i501<6ZWD{52I){K_u^>CZ6;nQc?0gFq7RI4kxFiskJ5$E4+oTsd9)s zXH8g!;g>9Lp=y?-RIpm5J+l(r`Gv|XSPqME4Z2$$#+0EZ6D-hPO%cN<$`QqMiHdPc z!mjcWb3aNTu{vI3aZQ+V-Ejl##;u}0PgsXLK#YeLKzNnC*tzKMlS0vY*Bt9j^bNAA z-OU-L)x{5wO(t_o=b5W{nv!V_aJW`InpATXts|`P{Q%(*W=YE;GBGED=)(ywbf8Gx zQ*}>@Ge1yX5cSe~vyvp}DU3$JIe-Apu{(k2^AyBeC4eV+2S0W?rcSR*QZ1H(hmwQ* zBGmYBvcb#AKms$%t(3S!S4$r(&f5;m!G9J?{S z;_)p*O5`XEGm#*l?+JZO-z+tT327PMLAnxORO)3bJh`r{>@Fsa>fsqi%_B#s+^P*~ zD4+o`^;*$!sPAS7__Q^B=_>9A!oK5X$>}##@j0Q)Pa;$ zv0W_T6q?RYgID)N6i^T3x~hI3Tqy1MMpKUI>OjdBWAC9=$^Mf>MlYr*@A|AWk(jxw zO89nQsfx60%{THPAJahJ?f6DC+J8w*ww6n+YCzco)XZTyI6JC*@1^BbKDZ$2xthZ1!| z4hS}G%#vye^>czzz3drDFC*FgI!XqKE@a9RkQA*y?)~2?A)c2_kF&fT;wY$5!lEdSMQsN>WXs7(dbp2w|b1StjP$QTHfIc1Ou}jvy z5s4w1W-*T@3df&^cMqm48e^njyfVuHPzf{)M{3^a&hecgJl6_UDR?AMlkYdc#+dX| zdubsrsgDVhy#`8oI!$hJ;$kv_%t--Mw`-hrW!Zc`80BprH>;m2V5ZBaewNw)05R0K zIoBxm497U-^;q0wj*bZ_BC*nblx4%JF8QTU_xi1f{dLvAbYr5Evn^SO&X(;r^F_l; z=oFYyn|!iL4plomFyBdF2URh1A(e$WZj9LF+R*tcRB#5c$+BS})Pr!K-A1}Tl>CtO zm`uP+re=yfzR#zeeC^ka09nt=HWa2=GIW^>qgt2C*txlMMh`lIRo zk#TNh9_oNaeTF$}TsjVXYiSO(*%fUvmVh=P)~u||yh4K|_hYl^-ActXFISJg6mYgB zt3%F&QoNzOSaqjXjESu+g$nK<*6M7x+2M!@iAsA6d)Q4$CXX#BIJ#n(IhL>_5&_&d z`^wR=Y6dJeLm_D-R-_QyEA*on4^CcjdDJa4Y|N=p6cBT&cA0(H&z>!-8-=SiY)a;S z{{Sdp-`Cj^_=#ekV>+JbjQ?KaC;PJ)UsK7l@^4{vf$2*h&6JyjBtq z1_V=`clj7@)4x2R>dF?F(1^?Udto%5GbeXCK_+Phu0;J=RxX)VJCTbO%;(+(1W90U z^B(ewT%fst6(Mf6=C|7wtWJ_cypT_Ds3s>gE|r-k>5^tVyQP_LN;S&-OSR9{yCMVi0lfL2dJx9W8B&zY zj`)@}F-bUp4%J8%$QnV@8A^~d^W70sCcvwCpU`Ve^>eQHZ12DCf|2ZqzDl=S5YiL(nh~8h?}n4{Bv20O zlfE3{W^SlCgHG=_LFDfCZZP%0Do3Q^tH|Vc_rMvI_SZVWT2%q>2BH_kxuNr+-MGaU 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 4I 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%0AB&jym~q^b99TIO%G}WUvFOCCv5h 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

    IP(Q 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

    441A?2^Wk>h@}2wn;6*MWqM7`c}4f z^lff^sI;*yGBqnAr7}9bF(Id>u)bn$Yx#n@MEh-?dIu8LjbC1ag^-qM^xc!QmENH* zIfdx}K4S1?aoI(YY4P$@s*Std!`K6dXPihX>xJ{Oq#Ip3%Oe%VX+KfHKS()VFu5OnU}n zYv**iv%5X9APXef3(Lre$jQ%dZL5CTTvA`r^1OC(;v<>7Ng)yG)Mb!Ah5`&Zw3VCN zE=%xjSkz4Z=Rc6zBD;`YIs%@S_bSL>xVZazkY*LdBZ>1zX+uE3HM7Y{Zl7P{w{(=|U5eeh=kQ zU)6pW@pmSCPt<_xi>Fmzpxqqv%1P>rpX!egy@@E3)kMd$tN>C$_(7=Wu!(lBy4tY1 zL9c@5TWOUSV)9L*;w9p!d=W&NG*_xT4_;9yUsL%lyrxIMJ6J4j1T&EIT#^M}@qiqJGtcIekf5h2NBs(u;`)rkk9o5C{*Toz) z#hSiit+L?l@=zdKrNLVz!8>IjGjG&+6Yiol z`Mf3h1TakN7XD!cvvmj^-c&2jvmNUH;)7bA~eTh_2*J8*7BV9D|}BuTyTBJaZTWEnGaZYd#BX9#TDc3jBz&=a59EF=prmN;KnL^dh-0La(pVX zyehKXD)LfDzk zJru~jnIUynq;*|tbk}H0dErFqbiVxPblmTBG2(GH69FP-NW?taa`WAKJ7am6JU>dE z`SRQB^Pl6bw65Tb7Tfc3-Kz}ojZog>MA@4h?VDoz)3V5ul8CLiy7N!!>tgN%NK z$TqBf1IDsO$TD3(KZZvIhce8PbZ%0K8q}>MI=whCcypujmZH@4o6PgyPoi(f|mU=7a~DVHsf9e?C}u zSc>_y-=Y zpbhINa0({7K!G(62eSHMtNsV_c(~a|wDGr?hK)h@Bg1UQ1O^s%JaqVg5UiemM^5*< z9gL_ zlidq@(?f*sbscr3O=VSWwGA&?E1%RBH#gE@R>Yo(XHkCBB*0i+O*S9uQHP%!$*VMMv)jg}L?Wn4M z3F_swEhTkNDoPtFYT6pA+ZrpMG`Dtj5H_bzDF>vxT{2^Z!dRjIwhBHeuIZaA`-J9~ zb#Xb_(OEeWAnZ3M2VY;8R*bJ`t?C>3bb3mlP}ZpwA`LjCXhfzhhXxkqUcSCvzPTlm zz!SoB63tO>fmH^4WH3EGe@nnzEg)boi*?wK9Q2Spe#{;}Hc%a)%tN1#j%Ax_z_Hh4 z0Nsl;#^UYW+%;|D=k3lNWqWIQQl#CZdh5V5+L3^S=r zJLOnw`AAbqH+>OHO{9rBpRp>hA%<5AA*dydwRMrq_E#?Tm#p(bHn<=voF%e7Wb+*` zjuvn!XJN?#RlznZkOoHVxdGyd4)T?a#1~K1-U$7nG|TxSx1CD=!15 zE6#J!QLh^W?dt12Q&OywlqnOJDwGhxmfqDF87M*8Ra|U;Okxcxt|JQ+w^A^44Abv%lUz zgxO@G1F*ZSmjvxqMIP409@WR5HpXAHBmg;Sh~2FW+pP%QDG%AH2-&R+-LDScs{%k1 zv{f1i%KhrFWji#U5?g2TPo0jwd!Tg}Co zPequFhZ&9r>kkEL_xY=R^HKinsqocHsXtI-Jj!Sx*=9Y*Wv9?{yTEfJ$8`noxR&D# zvh7{fhf`W&NsUp=))xwe3@7Q#pap{XXIq=HaX5|C3s$jb4{ zN%P7{b4w}lAeFcUO$2!SWO%d9L_WC5zjc&+p@nG?;V*!58uP>AtmJy~?Y3In2GZ2} z{CSDV5{LO3*JZ{(TO7z8_LNSitB;PS{f?KzZs(KX*Yokz#eBw6>(A9^jKx06bRTu< z{ckhvjN$sLCXbyQoh_W~aWHztg?qDe4rTc#5k$imX2lesbmY@zD0! zoF;x)KKh$f=yOqTAa9jpzv<&gP0N;zo@`mYIM?YStG=bFbp0mx^f!g)ziBo6W>9fw zPzk@v)TS!*@P`0#xTO{}E(G06LK!eFAAx$Y=qX4InrG zYM5oVVTRX00(2_~WC6>vX!g{v@kJ$ZXK(;70B|KojJ#8@W`ca)ta;)2j4q;LVs{wNWnIrSa zTgN)~*LXhaifzGyVB@|S(_6Sb;iWo(o(di$j=<2%Y*d%0R!_1Iqjw z==*ap!3=}aletb51dNujm-);TB|CwWuWa(CYF0A!+@LvU^57SUy-7S@nB7$(e)E)qr;XGWJM z#+N4t3B40*!|Uh7eahC<#^{fQk-_=lG2+zh#?lyZc3^gRXnu5Lacq=0I<+>raj`JH zIq>w;^Mt(0`0TQ{oZ2XS4Zfo8{lLq8(mMH$Kw*rNY2ysq0uU;B`IfdxyInsx9qAu= zl2x4_nU@=1R2Yd*4@yp`ecm#@G`V}RGru}MLmZhR^vx{v5|#(27JJ6#K2I$4OfL@r z8C&dU%KX>y`Oni!-^U08Q_CZxOGAT%{;_4? z%M;~I<ZjDAEkV&)P=>-BH=7zp} zLno5xi$H*DiFP|nrT<4!hGn^7JsvDS5%eIjOrUJz=O5~z!94~+B=oyu!GGEnY3!Oj zPNUD#?+73*;ZM@h?b+V;(9A%^htA~Y7w%79y0pKt|K4FrY}B4jl{g6IUvq>lnsO|e za}iBAKN)bm(1ktGhSh0t)F{FV6kz#kunHYms}8Ki9{$x^cq~e3Da-62&*~&lZNOXz ztZV>+Re-Z8iBHguL)egC#6%2jCJLsu^0=$Q{M2CKx&V4Wg}<;uJy?+$XO#oI)l2+| zuSP+jPKmo#oP~miwurSF+Cmv=CJI*j{HsWLJtl2Tdn3i&F^|377K z;T1=>E&Af_?%ue&H4QZG?m+?xngD?yK|-(y5t0xfAqgab03if-cXy{9_8#Y+v+p_Q zzV{crSzXZZ<@@%2=Z-N)jn!4FR{5I0o^!6bGE|lCD9NQLNTw-D-BXv&)0HnaRDNWr zT&OFb3s|Eha$iZb03%bXt6ZwBRHP=Ct0I}D4mKF63{|na$|Arqxtdbh>VQEaIclO0 zb>&`IYd$qst1yr+(UK@s6Dd*?F4dNJY#{gCMCp~e%4oR)9+$1TN$UEItTWE)H5R4O=e_U3nNd|G;+|rWd&HF_Ggj znd>#3?=x56w^$sw@+f4jENr7ZVzVN0vodm_AYd-vf1xmNp)hC`3I&17#UU%jA#-_t zBX?b35`*!Z`2Gl+UqNO+157&njX|K$9bz#Uh3yXq$CK4ygw04ab|TJxI>Bk?w)1SF z%Uq%>$Y?aKD-eu2dX0Fs4|a+mpB+`2-8Fv(81#mj58kjEiM1KMX*+rgJDKb-p8;dG zefElj_evn4aNtT7WCVs79mknlcGC&inFQO}Th<^mFe^fW&18bzNF45)r&gJLUw2X9^n3xX_p9>qeC%1sNgnWRarjL@AwWNv# z49^x;(&kst;Fi^5SI}ga*JD#QVpr4W#;Ay>DGRBn2#Kl+a;pgNsPYM^@CwTFh)Hux zN^yyab8|@Waw&7M8Nh7tazcgrN>41ctMw#b$*|-JFzK)`xv5J&yJ0z4O z6D2mAqPCl7Onr(!dVxK8V}ICSzuRno(B`z?8FJhkO&YvM9ePF`eMueqMCkrN=zK~3 z`RK6e{${4_WT?`Fo7fswXwHmt#!O+^R%g}4X~{qNFgEYxM*T^|H$v!7s?RjVv7co8 z`dIVfmTLZjYW9Y9!JhfkLz`Fo7O%GSs@JrhA8Wm%>U^Z?HBhyxshTgT24z&E0*b-C zW1|}clbA(pz^Jq5th3*NS|oWuKXi7ox)#Z~Ik3Uz&oygW)= z8zSxwQ;sJHP)o9HNm{PDZkij1*9h9)s^hi;^SOSmxG{Mly1 z_$LYd@D(v!a20Yb451Uo1qS@_=KQ|$iV#o_-JduHp*PgkbGbzC!*9)^?VJ!nM~r}+ zkU%@YziT)g@;ELD2C1cKKj!{p4WzU~l&aZK4dBCVc~R|u3fFtO|t<`2os$JF&B z%GwTTWt+GRKMB-T5_RL0x_3<7*(R++w%>Ka@&R>m^K^0x5&@I?4k-gC)KNg0rR~A5 zolWTvAjw`<)SbMj%&d@%WWSV~&)z?qUY$50uN|L^@9hr($`B#g_GsV;#w(oyz91+A z%Olb#$SDyaPCV+iH?0fwEYj$m|_p7(AFRJanJ~0@`Q*4XmpY&!Ov1cAKXBo3# z8#iJ8pvUw=o2f#Vxx|3A48xqGz?81Yl&#KGqQz8h%lXNfuhmbwCthzl#bn7_<%_w% zV|BJ11@>eFWq53vg$)5^q(rQwMXl91JvEvAwU{CdnC=@gRp9ni;rBDpqxl^D7qH z5pDY^$f^{l7q2AX!o%v!!{#d@5H2khCM6jrEF2~z7$GEdLs%qAP$)rC{I0TMwuZ_* zi~^ucCPu2rP`TV(qs&;f#6YP~OEw=P2~wh^@YoRZ*Z}iLOQ}#pE?-X}S6dcP=8lqZ zhKgvOwoJZ`>;o<7VqM6k3aRjPL0(v5%JpP&mH0Cx*|O!hN;Je?m@2=uRA*`suNPq1X#j6+fDAepIo#WoHakWX@Bw7ZwWAI3pV>6X!6BJztKy#$w#-@ z->?}1Q=)A867XZG9zZjTxd_dyKa5x}iCBLazFZKrR1gTV2qul9z}1qVwMW6QTrLg( z!_|1U`)IcNM2_c7zRx_JW|kfXEk6uiE(u3$2TUNebqz%)ZQ?0Unj0Bb>f#z|q8N;bxS9};3O~0pw}28i zKTO*s!y_flEiS~yBF)dE%EPY3!DP(Md{c}wPebN~mgqYr_7ZU>Z5AdAan5WP<@OAl zU-xXk`th^|@C?UFZ)NLKAKM>3w>^1{J3>$fx8I82?Fc&Rxj`Dpqzyi$jl7@@ekAoY zkN{=c3b)_i-MWXJkHXA(ORr;vCJkBpHH5|t6c_C6mIG3bk0dVOS8e`H!mGH9R~G|`NkX!`GHI|9MDxK-A;gbDj16Pay?=~ zxUPC(m+QOJdE&yn&FCZnK`sdfv@IOssz+sXuxR0O^b=y#Vc2!hT^Rl9wZb2Ib;k8F z3fI*=AOd6kzb-KLqJseghAyyyzV&)ja4pD91G(NTVQ z152dvKS3GrFI_AvkP!@{Q( zF#BWat0zTOWd%1&%}sShHO@`53aZ$@!N&D*inj(y6)A*uJ^ zwEYVo!9y&vvAD-OGtbmQKgnC$eMnRnncn!DS#j+PEc z>xZOSNDvG`Dtp9U5M)F*k{WJek37FmSv;Ul?vn?02>m-B5EYGc6*eAR^^qRA%lih#ji0>YM9YJ(`1DeBe|9 zIoj_bp7aypH9a0Wh8)2VFHD>`B8?xDQIvt15FiK+-VeIHY#)tjuSs&Ec%a>ZQvPsL6awgDF9Y zBUY9(N|G}`M8H~I#Ya!YQ&rSPg2h0U1+T^Crp=?F$tR$~EiA#MErkSNdbvuZg=-YW zVIKO5-qGcD7U$HF;?a=dWmgs9jI~i~N%vi^&7QBhwf-?}tvze0H+Q)^XR9S`zCL=a z(zo}X-M0k8cQ*`Ph3n;dVS>!1Y!z5F1ei62*(@Z4oF(P(;xfLx(t$iOVf@ljg5n|E z0^$6EHzlP~l@!v||xvJX4`!cgYt~!q)R<{J*O7m$ zE>)o>QK=^JL_?~^T%p!d>Aj6=gB|7*PUEwqW|Nc7S2w*DPlGle<2GO8c0ZGjK(o#e z%dRj09rK?-roTchdT-bc-E`;yhKR=X$Ki)>xxl2>6RGZ#;Brd$n#uBB$njq(3|cD= zUVRv}SmZmK=Q;bpbFtWWtt@D>G8E>uUMUS+E)85M3t9y!4_+$|UM&w=DGOXG4FH*c z=r>>NH~-Lo;i3OxNx*Vh$ZBQy+T)0o^3a7xLCd-Rt6Bc5_xzUAedd9p5?#g$4?oS`Py?8=X)eWKJ=<&dLEu)7-$s_( zMwaVVw)1W-e*3=TYKHYfs@dc%l-8H(Z`y}Cz{Db z(!D|#1FC^e zK;>U?%%95);-RAqV%h;iIP~7Xb+Zg_{`HRi@_ZN3F!)z=y5q0JOn6nft>Vx7_CDA zy(;7w=q7Y|d5VZh2jtS`gA6eTLB=#8vsl4EbHv#M<{4N6wEK_$-v7`4=L7+oYgU;* zqRh!Ps|;$GfhAaFjxRVnFe zqQ|v`rLXhg=kpJhPirg7UsqPuJ%94YkRqE~|L===sOWXCKNdYahM% z^yKlor;p!NJ*|87wC+vi+gH!(-#n>(_4wV3H(%ZjEsS)Ica&5Y$J|YhN-c;?EeN@t zm0Iw)ruoavPWL`_?vMzEgdeBG9?Izy>3H(=XyWt)<^dQd(0(0JehjX6KX3nV`%!j4 zQha!NO4Oa?l$`9R?_NzU4Q?MVACh3S&fq>|YNB+XQovg@v`-n@B@OSA=k_S`ht%-{ za_`n@=PqSd@eHTiMGeF{w!r$wgs_ zCGmL=AAYFnSb*6mm$ryYdxRMxahwd1ZihXjlRgq1WsvC(5PJ+nzyZpP0nMBOOu%c0 z@c91^%FruZfC%a{qA$l``P*0YfAe#gNNuOmI*Ek7Xt1Ve zvB&Ch_-e6u8Zt-dGesD)rs8?u`bjlm1!|1hpXss}tMjDDvc!sU+Y0gOiE`=4v+5{u z=xeh%8nS!ovj=Lh+*D(VQRKTJD;y~%;KR(J{io67FYjWZRICc0qRU`yCWJEb#b;T>g%!jKI7eA-% z{J6i~oj2Q;JKdEv_c^}*xqo{et|>vkI!H0kRU*Yk#8+3qNP$a3j7dR=Syi0VKvLLR zMA|}7!i!5blwUPUSowyaL>P~75I0{azhI1*XtIK221X%EOa8u&JQ!U{j8&>^b>HHR z>s-v`;9TC-a@<1T&u=N?Uk-lm4@tN6^RNJ(N~62)ke~9Ol01e$i6j|eQPdXXRZ9v z9@FHa-R!Q{?5^AFq1)oA*W#uB-P@qWOBbX)z^Eqz($G2dL}EL`tUE%iU~ExGnAML^ z^R{4ACx87dAzGpe4F3btah zhJxZ6Jc5ulK#q%FhFd^}S4c)cP)eLbQI20vmD56l%~FHQQdz)Qh6^LfEho++Day$q z#L6wkAtWFp!mcjPtZc_5A0lFurzHDam8n3M#Y~h>gO|fkOZY{EVSjO8+YPx|H_mSX z0#hj}8~KJ?Ps|Qp+XBk$G~4Yo+wZgl9(6>Ke%+&WJ*V}&piLAJ2ky>)3~kJ_EQ^x; z8ELVR5lFt5ObSX{HT61@izZ1XQY7!uL@R01&xz7+jwRllNWG&eHBse0QdK{YRcndL zZ>Vb3RQ0!H%@-u?7i8nN6uXZ!`_BaDucscZ1n;(8&oApPANSnqPCVWbJl+!V=Jtqh%jvPN&{ZgdWb58O$?U@eG{@0(bku{pz4-xfI$>Fs=QG(iZ*rG_yxyY z)8B|q2o>m5(IFIc$I!*7rR!bsZz#j4#sC`B9s{ji>ys}!Gq2SNymjt-ZXz@QD( zzjLwmcQeNy7zMqw%jE@gz)iR$9+X9{a}44Vc93V`C(#+;=7cdRnHOM#f zAOF37VV=1J8c39PX_fg`C<6q82t)z@=h5H(vA1x#Sc1RgFIN32W^J`$TV_@p%$lR~7`OdzHmci-oV~ZUl z^FIcrz7Nm+=pFwtINdciKQKBs+&9rPG(9jpGYB#^Ke)Uz_vUMDazT1{%I)a%+#7du zLlf`ZE3Itof|!-b1KP?V;+lcrk`cn`)afahWTpr(st88+k-JYQ-D`xY&bjXL_fJBT zW5QBnZ=~J2nVxd5IQM;X-Q4EP?&$(#-8~}B9D!?)IC@GMhrpL35=5R49g)XRXybdN zfu(~Vb2}aLdoY9Rz#erHP-f-y*Dhu7fI6^8?%pH!9+Jm54*FZV-se2Zi%z~7osyM& zzqGujx_!K5jkE+AkoQSom6-&(B9SKur-MWS%%=@m^&m0^;C<{E64Sx406`#_7p{VY zMBOqzt=~R?-+rRi(9ecI83#FqrY^tC|J%YTX^2SvPNn@I68a%7@8oETM%bbrt)I;O zSZpb5uZ*6k%p7=-_%5J0L!~y9=aDPhm>cV=6Z@qd`6UZQIv9)6L%zr-By5IgNIdKnvY*WSjbwAH^E%| z)lHk9PeSGz)8<-pM_O{aKcsyx4}X2f@lmM3eJ91+=EDA(TzFYFV-Z$Wel`_8HdSas zjN3p|z>HtWgjc|sS3E#WF;qf6L|7z5NF-2zKY*VvRG2?bM&ypVe725Kj-FD!zS1Kj zl_!>3)pq*t9F6MnCLf*5n%u2gy>UPN@tuKAZNd1TVJ_W~kni7TINpCWKAR-_#?o=) z8TQlJPIGx~3;FI#g`TS=K3f%m>!to{kNjY{Sst)e5wuYru=2=vvDj;&$aCqT_iBOf zTE5>}zW;ij|5~2kT8{5Zw$DPQ2TZ^;k>m&gE5k7m{OdRw?+m`AiJMNN(GEkAcEb_4 z(J1?YV4FUFtD#`q@o@XeNXLl?`;idaK3}t+?t1Mm+U+h{EqF|WrA)1<*n3OK&se!H z4hl{7@?RYlzq_cmx~sQ&Yjy`4PTjO#yX(A{>v@pxzLyK;8HcTG`_&A)nM8|`7{i_j z!`>*;oDN8(ZaluLP9YTQt|Ri zF=|?oN*GUBWjirx6Fy-LZhkdR9%W8mMJ`@>9v%r{PFV>)4FyhPbxtc?ew=}bjgEi; zh8Ls2tsuoAF3uq;#xB7pBEcpj#VldMEaD=ldQ)EdK88PCRmfG6&xD)JS6Q$kz^LzG zWY=Az*FM7aUOWS_Qp?#o`xV%emoA6(PFqd5tuOYQtzP?GLB#Gs2!npH2+z@PAQB%d)9|E`+=Y-3_7J9ifEx#|4j2+(5+da7K_3IWC`8IQi7sTy z1epplNTv?ZmqTRg5QR2Mp^Z^!6BODsg*J6UoFtH^$p5vU5P)J0PzekO63xAnDvOWsXdpCsAfj zV0_T=5FGlLJhQex+Bx_+>tSkqdSu+)xVZFNH!~8GbMLhc_AKtK?GcZT$wvprbKCnc z)AbaMI!Oi7$liAgM27$J4iuU^?#jJ27cl$*=2Pj!t&~L85Oq`f^{r(AVB|I(%Hb>*(A6+c&^?_0bOi zT_Rt_r7%95-*#ktLjUsufefKMUum>vGG*|DuyAxdOQX&cjz^crpAR<0^nZ+*e)nkb zNx}1w@))JpenJ&KJbivVlir*I?yNt&xqi8@ymeuI<;?urf%%Oc(<@7+=jKdRCg5yh z$%pB$)tQpjnQj|%Ww}Z`brFB!!d>gk{=tc@(TS}ih-=J6{I!X|Jq!zwhnqIHw<^26 z3OiPV*I7%@SDw{Tk=sUr+f<4}U7UwUMo>^*OhQ3iN?t@kp5I(a*h-#LN09}i%&8^D zrzS0|WiA!!uTmVY^~hH`)|$gZiN#2WO+|!VSs9`-g;Z>%g#DG7Vof-5!!+yi-J2iB zHtnPc9 z!F#MujU}emLhXaK#z#Bt4-VS(IL%K^dToAIgV8Rt$$oPw{!>ZbV+roVH(dr}o!SE} zKe_3=b5MPQQ>w-(y}~NIvQv0tuT*2NQe&Z1Z>{MssMUbiZgkOW_5`n!`44}~Hb09dH|-C2wRc#>SC-OMrs6NnBx`Ks z8XVQWx$Cs~8uf-+(=)!{#$xf)x7_9uJ?4`Bi3N7PzrW5-fTF|bSlYu zCe?O2*?KD33TAm+%XMDQbKb~z-Y#@Ic;t0j>3{mf|G3ikpxkS}%=56^YrVvCq0nvq zfh(ZTMycOcY2bP>40rOF$#R{$?>2eIX*9`kJQ+Wk>^za=43kX`#@NB2r~XLnaJ2mh z#3{$y4d28L+_3r;V%!;I)D>*n7iQ5HY})B-(CMw;>8TGu^W7fv4Xg6iM)`}C@>gr+ zcAQ4Hi{4MLR5_}CwO4L+!Sn|j&)&psrhDvV`)+4>Y-G5uraLX&!ObLE4aMm9M`;ho z>dmB>u4Z9p@0bn7X|)8YR(oK|uu=s^qItT)IocxG81Ym&{@c=mw`IiAl;yMa4Dada z-%{5KkyUgP61CvwHDTw_XJgl4Wy7#@NW!FyeEgC^>MmK3tw^fREFmDgF>kkb+9vXcOCdP+5aOf!FZW?6G)Qwu_~ zdP_5DJTquLGx|=o_(U;p*tP$(=J93MqlISqlV;dL&}-e-Y28q7oK}5&gm0l$FPyFI zQq zWGMCT^Z)jbZN%k-pbWA^<}pAL{?g^Y&|G3kk6Z?HS+w}P7sj@x}q>Y^{f=hbsU?mr<9oRHwcM}dtF zPe5RN^3(}o?&xF&CImP-S=ihf9~^3VS6iNxpB;J!GR~#N=Vc}2WyNKs<~=QG?D{sp zGrPDqzkWD(Kw2T5Z4hWn`$$?8NLUA{WyXobQ3_>Zp8&IAFKp~he)#?-EiWPVP7I(- zd}dNaQbNJAih=3T?bH3uqYap(noQdulctF$1EkabGg3G0v~%mAqjRdR?A@J&`#v|b zys|5zYg-@9Z2vr_Eo_q~)=ow?PR7CevQ1cM`tdHSC^a@Y>R!R!*Yz(4C;B$`r{Fzf zyy*150#}3%Z#j{Qd`ln<)Ifg%0-`G!?=ItwXRKiq&}Pvc8B0cke_3Eu`*VRv896&^ zJv(cmz_2Xh!pZ3zjXb@*-Z|0zsJ}6KvNd_F>BT_hgEH@e5Xq;0!j%F1LqP(w{=6ez z9GyN~UEZt>zHIg0?C;&!-a9e9gPC%zm|vN*JTYV|)ML)mWJ=XwN;G88bPy_cmwN6m z_9a;CN4QvjocMCO%2BXtqqSH*c%#(W-L<&ARM{O=IqU#sH2A%xS#U7Rfi#Z} z7iL$J=GD{?RMrz$$18|NXtN}kbH&&TM%xR8Sc!Y-OFO9xTgmYlh_Y$%vtW3b)wn@8 z)wsD3;o`z@a|6og3-TKa@tXi6K-|9z@mdJ+*@+7{%Zj;32|4kzy9jc6i}D1^2*;>M zC21+7Xe*_vNhc|ar6|ByB*_v3=>wR+2sic+Ui+)NVXH6Xh_i($9(yC~VQQq# zAe;68)9=29Up#c0(m0&}06+jqL_t&+5g=!1w7p4+b#-h&*ML<3|V%mKS`@?O4 zV^;3^uio`vN%Mu}PIl;NQS4!H&{m%3awdK*4L1i9RwvtxCYTPy81zQ#4&F4JPP3Z6 zV>OX%HlAcMmu|hD@3{BK{p7JPu_}=ABKY)W_};V7jWWN*0{8hm*X06FK$(q){woE( z^Y`7S?z)VpIE^Jaj@`zC0Ll!<*~5I31CT~9+I}boI~<3dxa}~Nh#!f=_C;891)FpS zn+%3oj7Hf`#n{irI8K9eDjYi+WZCCw^utjLQ0A+pQj3jBqm@E~mCSd%TB|eWtG(h^ z2gObwt+@o;W`^5FhRb?}^ZGrfxn$e1c;k^cgRum|sU%~N@!R^t@!H)n`ro2pj&X}x zFa2^W`CJ{*JT2)*#wx{z8d>T}DT=ap)wS;H8D+yoQPbKr`B60$Kt>7;auw7FKmOb}I>? zKm)a8dy^DpjzDfES8is1MS=T{x?eJ^8&V8Egi5pp@XV%S4ssj_58RJmcpSEPl79Mc zb~|nMI~@{%6m{-&E8_u-9(saKNP2LlX>$k8UR@^@CxHr?R zf1R0ikc~Tz4LbI8nrAUjw@vGah23Wpi?kKMneP3wUq{q_P=ctwxTevrQ07AAT_{8} zDCBA@bhbx`4F>IUukZr8O6WgHP2qx)l+IvWxBb_ZC0Jsp~y%{G_Cy8Vj?F=cg z$G}u`L|T|y?XUe(b>~4!bXv^K%-iwzQe)GTtLmx;XMkpQ$h5tK)768cNr=p)Ql`$S zBQ#?F#@1v@=dbL-q8qp3K@#pH6+bEI8ty)(9PX2M_Q~6O#LfBbspjs_1(n%}_u}pq z-KqapGqy0aeYAE=TBg512)24?`FY z{<#2^0iphx5UArPXM;zy{!_{nnY2PCE}b3s!-VBi?Kx9lVt4y;4_X>~A3iE}d=w^H z7cKcYR%AIwXe*L$CXA~mf~Pl}?`H&mM<{=XA5Xgn+c!tHPj;*g)~s*M*d7}*m+LX* z=`dv*Fz4BDmib84Ml19rD37J8E#>Ku%FL-T8k6?IP5Lb5>ddz_S(21l{ggS~RC(Q1 z1f9fLEQFZ#gjlsi*fmACltj6d#JRPkcnoBC&1E^=WH?;q*=!YAOcj_dlvv#LAy2$y zmX~~)vt*tTw?Br(S&>y!ky~6{NXk&2$68as!&oB3N;bq&)(azHE6!yi!e%JOt|!b2 z5TnkEK#VFEiwY-;G6%a7JDVCOmo~3}4xgZrfPk5Zu%(EQwJ@KhAdj6e4_;irRb0SB zh}TVk%R_+6SA;KAN;pnY;+CpRl9FViyx477p%iKUOeL{mEtx0AFnn6G-d3j`t5avC zQDdg^1_mNosk|~(s4|iPd0{H|#!3l{C@tP5033tSPCXFx8sjv2%WX2nbLOt^LT2E6 zW+3=JMsB(G$2bf};s?VV`hxAc18utet$zhrcluj_{Ped3fmx|Rx`J)N4Abgk29_8g zn66N}t}we_q1c`X+ujJ^A^qM?3G%*l2AB;- zV!_1&IeEd?GXrFk=DU&Qy`JT{n(4Nj?hLY&?zC{naW(}vm1H}aWHXzJ1v|}DlGQ|_ z`S@+Kv0J9&iDolt)~olO_KLmt$^s4^ha5c(KYSdzS>m@|1j%`QHy`@LaxvFqDaT_e z%VRFXWjf7iDiuGKf}cnRtig@O9*@ylKV0wjES@x@G)s~(D-Jn4D!`h>9e)mdvnPK3#l)5imgtn?QWPK z?&`gPx)agnOUd>dV3+hrrIo~+03U}P9zwQ#~V!EHX2Vf?@O@ijx+xeZt}%f zrw*_B(h{bpkbPzf1??A>dgZ42kIjurER1uFbW=1`!sI1=MERWrIBmJvOgY(L)RGb} zr#v^CEH|?pFSCLOi>4gpnGv=zmd2UOTk47#sPgH`aq392Yl*SKyQj>~tS`jvsxBL6 zV|d?CF+pC~Ly*IUpUq1_xH3}bTfWn`WSzz!p00S=g>;Lp9EbfX_mgIST4%&Tr~grJ zFuCUrwXNc)A@4B9X*^J&3oAHeEA5HisM_F(<`b=$%$RwiFF>qDxYXw zNVX^?S(K73pHZ!=X|^>K>yIRh_Y|WVn%--g{ws>X6S7|AuKAO7-1B|MnlsBU=ayf| zz)Xf;PYpkBs+Vu5m+szvN9gRME-!6U+IP;{4yf>77tw2=(Js~51*y=jGN?NOu?L`A z|F{HIg6I(t)M50;zm8};FN6&s6DOfFN76@YLsJ)anm>1yj5W|_qGjlQ8ApK#RFpH2 zBVOy7(aMZX;Hf~lhhFWX_l9$$SGZ{556xb)@gQ}eCcQG!+h6Q;!8Z)}_zg;cBCcZt z${!b%;XKI~jKSFb&xOBifzi%yTN%e~$=x%>rGIpc?-G_U`kgEsGu+5-A zgM`k|qi4_n8oJ8~p_xs@pwhK_0Q>=sfX!{3NSP$jrpUBu5_Jk(QAi92VFVsL#1Vrf z1~>)^C>Sx=2wFo3hMpt`JsJ9mUAWwSKYzpw(+9?wQ~1XZa^a=Bc)A1_qD+}RB~5Sb z3=WQbdf!l1^&+S8Nk&=4or1z!IpsOol?C@JALLX%xL=W%T?&&oW#w097gyacd7k_6 z`-{=p_T7_7(ix0qf^2mN$576o!O5*&K6&eiya*ov`c5;Jum*tR zk|dyT#UBh10jmsDyZUC(@AC>=E^IdF*LBe#VlRa!hzPX9*!1TDf->|vNM$y!a4EjM!kPP_G|%hYM%3Bl{OS_V)?xD=%p(x-W!EPbQqAS3v zDafuR$d2J-RS{&>73VOQ;lass`OC2T$g?^quvjWH;yABWFNUpms;_qtFd~h zu(+vn>*@$g=}SmhsIxek^7vRw`B=(3>4@2i2pVy)Yq0~qFoCFYF{vU2u*$F_!o>v~ zqshakFCbzlC~7V&Vl5_y6&J;d3RnyAU>#8Q-{?y5*-D2m=wk;qdOD^iy%*Ohy1ruH5@O*Yy!=4!7^l-^h{t5tw8`~I)bd*{4JWjO@0QMcf-i% zC`dzRKO75w9DBf;jzH69Z~Z0+pus8E*?@~mzRp(R15V{L9`n^ztJPD#(+^BR7JcES zgHdK9F_thmXd>QvCedy_)o~#WKbLAhorIlEwgsA5xNE9BAYH*woyFxIgDhW^M+ zlbICj>AQA|xvsmV0jJL*j-Q4fREF-ChwPQXkods$LZ8h-zfH(enB%#4&wU}&Z6U*T zF5PA3juRxfo4eyOlj<~?=rDH6ZVZyg#M!_UOMPKxT|q{@Atu97R%178CZe!2aSqG3 zT~~o-;$5aA>;`;Ix;^x}-Ss=1HNWAM8g1m8Y~`EnRoY!JKRq-M@lyZgt2q>AIDg9; zWH}YPk?FXZg{Mc)m`~j{nM*dCO|=?HwC;&9?zv&w7j4lMZvMqx|E0O?OEZ;^jz-@+ zZEGE^KwjEgR@j&pnCjgzP>)xW4U`sg7T~btWKrkmROjPV<>gT1W|QM&k>X)i6z0;D z=Qq|8w=t5#naP^z2pK4I!uTc~X(lZp z8A)u~V<>ix=eF+WCV}S~iDw{c<>%_v=i2Yj4Zfe7{5ZGzevWNDw{JejH=H|uICuPX zX7_<+{ef!x?Ht!iwXY}JSCbr`lJNJBu<6Iv_XsvQWZMF&O*z%3f@b^t%0r2TN)@ZpMO>5lc&Gt>HW^N(bcPXxoyM5B)f+7(->MO)D? zj#__G*H+hwE$h^8dz4=cHTh>=LI1J;vn6OolqVQHEfoIP`ymtp-~t*A;vzukJ_N+& z1gP=Hnpd{--`4*I6Yvu%piG0-MEh_k!^t34qAPC{-~~cF*8z)hhJSg^|GFEe9}Xfr zuZ$}M3M1+T(Z3gR84AO&zA!c+EOA-wQWqnRClE#*MuAZQ3MZG&EXG!}z{L2CRHB%H_e(YS&PP;kCM?8Spe+CIm$NWPmc)%rh6`o9IA;1O)?~0L_4hh%TLIbTA+e zBA3P+V3!L);)szJATkDlS;q8KbYBu;j6%GaaL(w{`old%uM4>}$`FA9@j639Dh!hu zL40*|wTkFe(7vR}Q!)}UvwJW+JKy%JySD8|^^c!#I=gCr{CxYZ`}4QnuZZ+CHTQmL z@Bh}?*VNqI@U5%1t*@bXv}t~=Yo9PhJexfvK?avG(9LApB%sVGoE3Fqj|lneMvlP! zL|Nz>Z>xM)4m1;&k$5vRDfaGdm`LGEXY=y*%+B%Z5n<_sID34Gq<*20APvlVci&WT z>8qr)`^k555>nD{rQOXbDz0z((Av}f?N{^L&#z0K7iX7bJgcp2?{Askn%*I89ME=P zxlfu$Uq||zirg9W-9@gKVHdeFrCb?TfNzj51dUm{SYGT4Aj0@s(2oaPys+k~LAulG zV$)@~*nHxi zU;eR^M4modj4YGA8mF6)sEMVFqJ^xKwKj{BIk%IUgtfMmjuf{62bUomw-y__5(kqq zT~s)k)VNsHc{nurxV8ECb@&Ag1cgn7#7%|8ZN$WIl9G;6;&=&RoCv>z5I0_!$4!*a z2S!zi3HpifdkgY-@p1a{vIh!r$4UtS%4A~Xa@1w>wG;|9Wr{SU9%@QI(^sgm)cjzp z^T9?NY%_H>7?4^UHB@SBki>T{&E%dNOTRLg|Lm&!0k2tW4_SQ`Us}mknM=K}lzZ=_ z@gvw`D9#B?G9yt=<1wxiv2L&&i*X%~bsdX!1%erjbnFYm^@Cw1!l5_Z9%u&qRzHJm zzWbVecGa(U&;Vrl5oiiDGZ<|@p5Q!r+jZiW3(Wa97>(Ii;gHfi#F=pfORP(p|NFx@rG#(QL(I+MF<* z9$NkW20eZ{?e3~Sz0`)o^e1D?mXd8ZG90(EoYph#m(pw&QY=B{Q>`YGtp?+a24YM` z;w<3kT|uUw9aTSIF->^=7I*W{&JcTK{mBDc=Vn`twJ`uiBXmU3txz`jDwVzxd2C~33p3rz}PeIwq*IwH$+EL^*4$f_g;AJzV|t93a0ej zCU+;SzrOJ^-sdS!yWL8()0DT@NNC1HVarjE;^1*+=SwpWr|R9I=-(mhKA{-YP|ZG4 zY+9*yKWNS^XYSw6y}zCNeK_;3Klge|bA3*Acum8#o;kEr9BPTUDuP`J(J|rJE|y@M zM8>AmaQDw~WpsIZ?(p*5;q4jjE5){vYEeTqeNHucO4E5n(J0#0E?Cts+BPgb(|vnx z_?~R=k)Z#HsNX=;etLu{-;a8I@~w-yzP(ClU!}C}!Why^H3^#TI<@>+@xdB~>ZBKt z9`cWJVWdI-6T&7a09&Aj8M<;rqCDwVng1!uT#2}-b5W5RK zQW#xcm~-ex9c0H#lBL5e0!gT#R=&&E4gnfE)1c4qg169`6XWkC z-ONZzFU)G{Xx!LeJE3mx6PLFRrcVg7r^Hzz`CxT@x9MxggQBvu^!o`(sWAx&(FyS> z_fiVV3ku2~93EQj3D{H5#JCyAs+A>@n{dK&0Q{gAPqa+$4 zP`Gya*I#1fRsQ2=311HK@xXdId0g3DkTn-8uiQpR2pfZAu9xX6(Uut%&~pHOLOveq z)EaGd?R?`HG6$|t%=dknZ^)c_n>bY+wNw*&@HLgx{If6rS&_}-Xwk1}%6<1_jGc?~rBL1}AFfePjv-gh9tX}g9D9ou^Lq=X8Z)M9Yqr;6 zvfUY4tM{}vGB6w2sz+(Eo8clvcP;{!dD@V_i6LV89}-#m=wH$*csz&Z5N5tjfWr&c&s} z$7d)cY$_^lDJE$vCS@xsMADaCd%tB%IhJ*>nX_NBf=jbDikCp z6f7zjD#9No${#Hu5HBs9EH9d=ELotVTyCgVrmy@+TfR(F=Ba^ljfLh1to|o^gU=2+ zjd;DU&IZk{#@{_mTfNM_xER!7)m|7&KQoX3^Gq#Pt=>WXy`x4AR=L7JI9G`?PlW>t zbvV@)ccbqf#;u+vKYYx(0<4FloMsZdW)poT<2{C=@V%jS;9%+pl!5q|P`l1xh>x-S z=4ssEr2WoL?VGoLTYyO?WTlI=9gcNCX$A!vD39NC8i>Sp_!&1jX#mjF+bX`tDuK%h zmUTAr^|o@K9hAPgU|QTYo82_pJheOh47vi0I{iSetHZJzEG5Cl!%-IVN%+l7ukCE# z^$gF2WT(lS*s*xap_?ZCF-F7jri+>QgA#wzlL$&x6zN$w@oCseMerebpdR_}Kl0ms z=(GO7ZSlV2+&#PbEc+FRCVt?xn&UMMqo{7#P9)-HQXFR?K=>AJB-VO3#tLYrC&;)b z$OxEbG}3A+#%?CoVJZeU8HJsS!j1v7`J43n8g+T-wmWOI;njY)sCRklbo*%k^49$2 zrQYqUF&1t#7jLzgXuF(@T}{KT-^H!p!7ZoQEGAnnrkR0ECm0P!X!QkR1_E_PLk)U; z^uWOL-c0&EgyZ0KI(#fU1F)?=R_~pSsw`9sv?cE<^2JE9;e}Wn1(|L5cuYC@^;me7 zn8ZNj*ac;I`ISWk4YdVK^aV}zIgNFh^wpX46`8bUm^4HX+l&euvmG~&v!D=OO4?dR z#z2VQR)yt#Nyzla*uFBehGeItrmC%!F2|5j31BlSk(dF-e2 zo3E+SFV7a#$UqzLz$4utpeIqxM6lF6goULd_w{@pnB<*S-wB2^~IzEs)L@r4}FwAQigZ z1-02+hnuSyVW^Duf&XmzTUSZ1hIZGNk;075_OgSe^AmCi^dBso68#J>PLlCAlHT$a zfx%B`9PQ6ZG>EvM_w&~~@ayG2-V;>G(qm8IVv&LCAlJ0*h5hF8_FkxF29coaPw7gN zUS{0e->fPKL0(k8L?!em6T>cq{=P&RIEjBMjKiaaKhq2yXn;2_;*b#s&^1#E!Zb%$ z0W`mX3%d2UB}y%fmGqxT%0DR3EkJ093>ww^2Yk7Hs&Ii|Cb<&Oo#K3k-ogNJDL z7#Y|+Mmhse8K4023;<=0;Y*;5Q~x%9dJc0bj2%)|*N+x{j&xiE@W$!d^1 zXz$%uI|2ZTk|6sFP@TC}EI1nUnct|eM#-=^h_jlC@W}zqNQ)ZFh*`^s;AMECWO#2V z@x`n0C#vzsD{~_#qr@7n&ws~Bx;#a?>#kgXxZDe@@GW&_Zy9#1uC$-Etf{@UjGc^x zp$dz-ER(b-r?4QuxPYK8vzRWEh%S$St|*VL2#<~sueJb>jsUN|kf5=ssHK#&t(=0R zg0icksRQBFt@8P7od!fh=8{+pRW*KfQVq2gh-5xc&w~M zoV0MXIA62~cY-MQ9eI&FHK}4vIY1dmdG}Ob>4l;4Dj`jc$7F0p{J|*dIaWHFip+x&pb%Z22mj)uytwR?1)- z_-L=$gx6{HH0}+7h!&U`zRQ+t3#N3i+N z5Q|@sS2x_cH^K%yO<<3qJDVIv;v7fgAQ;7IBHnp4#sPBHb@&=LyXyeffJx?~y-E{a zwb@m@)dO5kS}ksxfHFUQ^?&&rcKYeHg3HENx7|zYtFy`{d)Y?3LYtRHZ-~)&tPP+H z0L@yK+uR)-a7^C~17MnoBpCN(w{#D`Rp>={5=wa+g7i2sTY&sBR z*6VN7?PJjGt>5owG!$U^%R}dvyH1anewT+%i-U5ViRcGQu~uiLE^mzz^ptLRi>mv?)%>MDr7_&4DcYkh+T&@k<5hR-V-$mOoO+az za;UBxLruk5UX`*-$y`#~bf>1iq>{F@tgf7lq4rK&oGgtj?QAFEK-ghtzJqMMgQz26 zqbzA9yMrdNleTlGgS-MzwXM7yNn_`YzhXbs7tcNnso#h1+GjU?hB1FTdaWjl_pXxP zP~E=Q`xs3-Q(7udL8g|VG2&zSIhgh%zzV|pmwY=yz zyp(sm)c3sX27dl)e$gv_;XQ8lO+cCTSU{OWEZ=5cz+1M@omG!BEAD%kegR-?Mm*0a zlkZo|_dCk>J;L)l!Sg@O^S{hxyh3Qk{q~B>g`W;*_|_-*xT9;9M;0s(FIpU7n*zJs zWLiI1!arItzs=M?%{9ODJ?!$Q(@!{U6JOT4zVf;kx#H%MUq9ow{Ohmle|4o;HH&c! zd`@GHJE#*B2E<^Z2vXmopKTZ@Am4RpXIrTK5c|z5VO250NeG3&F4!j@ERlSKCagk5 zwLN@B3b#krY}MgN4p=^DR>)q+(YM)eM?v!!*U!Hvz@LiUD<))YCjs~iHUN|nI$U9Y zr7fVrHo&MuyhN!3%K6K679RympxOQdoB+yf?J3>|-CBHKe^0=_i1LBx9|$)9f^9zs zkw60XPuQ7iyF7zIiExQ94K^*MFiaR=<(Caa(hHUY)^3HR;SoXFmBgL05Iqnp48$)Z z&1rw00-{E+hyKAt`UKoy2-e~7$2okMZW_XLAb)6w8iMd0&}pFUX$91pwZY{zXpI6r zV|Wc>dO+B~ggE4ZfYFVh^{Su48)kC>jNobRTxa+HWOpw^S1DF6i$A%*>|bP0&a-Ad zERA%Gw_kX0zT#+Q?w-Qz%Dmh?`G+qascCsO@nvX*_kErJZI%0VVQm-!hS;2m<>i6t zPtC(qb$w$sokLGMh9O+0<-@n$xy7-C^_d^+&yC$Lk6u2US6xtcsN(FM%MIOcXTE_# zh&;X`jKE$4@yj3-QAF>9@Wl|lDj?eop#ltShWv%Dhvn~b4*C}+^8mmhhKMUD{ruY! zdwIk!)%KiMIm2Ih<6rp`D@&t`18@88o$viCed=WXk6R_{H5J^ZBm8$QUmrYqmT|Yj z@@|gq<#O%5W4Lb@NGlh~OXrD;Cu~?p@T|Wq*2;~R@-#lDsC-CNnu%AQj8++mR2&MF zZu6FC^4{4HDD@^*wX4W*YurFiMvWIBx4LE z7}~OC21-^&DlWz<3}dA*Q>ij@nF=eJ3Tx?dYneP-xnMA7m5M-vYsvU0l~(n|CePyy zs=d@;cs(}@1+tyKhl38$PF0_*s%@?*X{fS8TS;D91v)_KQ4};t(#m)lS)9ByUQv#u zqD)m+chu5y)zR}bF!DDs4>q@ou&|CYw+c5l57*ZZ*VPHv)(q274pNp2Qrra=p(2-{ zsTQNA9HXKbr>dN+sg|XynWL|rr>CByt&*p$T&ky9s;gRQpnAYu=M=&8sssL}GvTJA z^>us88xFWfZup0;RuA2*o_gB83b1<{>)w+V(3=*}k;rI`achpDH%2sm1yP|h_5%;#417%>sXol1G193u&J6-(26BT( ziXui!qA(jNjvOos@5>MA$na`QbAOitvo*Oi$HUA`j!khiWEt<+oZ$36kq%P|^k@4H zWcz|V(;Djt9hzVc$X7vx+5nqp(9Gloq+)?2ye(?{@by82H(`{P2)m|mN-Hcw$*=tI zPuxxJIqKfF*ShPd`^?jkji>b2} zj;o0xzq;P-F3G- zOEoCRYZscTChKZMsH*wODLKe$Q6$xHyA%v|$>{Bp(vaO@q9tW(CPTH6wX>14!^x7( zq{)UdBpq2>4QUFfgOaQU!SwM{Q)fm>I} zYuNYsXwE%`ZH1<6{w|rn)bwge#F0SXPmxg{gCeK>LOwC#KY1s9@y(hKty+rMx14xt zJ@YE3=nkjyK703lPSp+WKCr8-J*QTR4=rb;&L@P1>G?lN)DR;*vH;GT1JuknrV%(z?}&b`5XF!X)(;~acGaiB#Wadw~$fcp@eaOF17 zEq0V5#|JUL@ZpNM05DV$!IoI#04yOlsE3jI6RSeEiQ))th^pv+NWhMevv_yd5v^vC z_(CiBSi(Pab zknT0`6Iyl9C4w?w;1j_Q!sq=u2TdS-uz!aNSo7Nj-@c9bFD$YBFL4?{8L=>fL>CK9 zSP1cU+Y@l7p~U}SDA~YSi3wvH%?LxmQ5{7nqF^|JE|E1@1dNDU&^2g}Bv^xOgX9JS z<{R!_iP1bLtO1xdX4a?y1h}&u;8Fu{W=}Fs(GRU|;cxE5~29zL@zw z!Q?NlaK9}g0p!grZaa(DxyEh($!=d_wtZi1{kqz=%pF)0Os?`^iYVxqJ@d5bUisnD z_`D?OY*l__|CPu0xM8M(CbN$qoo2o(7zRf*QnWErbTyP`7|MhiOH`OjR+>wcSxA&v?aHxJ40hFu2{t;O zh_A^dH|)kg&(ggSrjg^On&}{BF6CSt{p-c8-H|zV(7I&S@AJ8pp{2;W}^?j`8+ZgxeNTeeY#PD`! z_;#i<+Ecu`(m^i?0HApt;qbrl>|sXh<|t^)qQ3CKKk+bs=mw+Om^^eddFo|Ra~2Fy&1UjPF8x?N4~+WBuI2;-RzAeVYCQC&Op%=5IprT}jlDTnMmbOcZzw zWI+!pN@ohGJB!+%OPj24|FqBN%K^W+V}XmO!bPXvBB=KJNi@5h4yANB`- zIuHsryDw<|6rnlXrX|9*CCnBS zl-@YU;S_hUfkc;{IESuiyS7L|YbgFrfLXndVV#d*Lx6E>7+{J`FNDsd*^lQq%@n!; z%1o8o&6GQQD07-FbQsAbb;Vh|18pYUvMZX<1Cv>Xl3D|8>KT?VJj|ban7{O~Z49P1 zhC0*-+dcLn9Je!rd9})LMp*_1ahh5TRRg-5rmc*Uv6QU7uGcwt}nOwhO9s`1AF0OiC{o#3a-suwG;>A(XDo5|qy4Fpm&TSU1hDB*%Q(O6_PX!jwN2wRuqs}tV!&mXrH}2vBdm5|E(Iw^z zk-A+h6@X{K4E5Z?4{4!~Lk5e({1E~%2-BdSktkjuHLwUlu1K5+hEl=Rx?AjEUIiVFhaf_;SjK+xWb3SLBA6=5BktxQ3S#O8c`v)iYf*#C^K^C zZFTZC?;tMfRs!{^LU=%3Fd}MT&KEo{(jgjQ3B(H{D8m8Ax@EvLuu^Q8rxss)@T3Uz zpoVQDcIE#eu>*D!{f*o<%wP?y|2KnwVKec4{WYe)O$?9XV2RPh87OY=K*1%6D2Og0wxae%&5ZJniW&mgaYk+3pFD9>dl?#(s zcdhY;mq4W9PA;>jzcVKmcwZO!-?}F|Z`a)3cV<5bDmi;{i}n{DyL9-~+ZUhaC+C@; ze?m!kZ(#z2Rqi_`zn#VJUgvc$bK2+GUCX?_75?ZVcYJPbXpTAE(DmZ*rGr_!b91Zm zvnz{_UOD%+w;p*1&_@$R88OWWc?G2tG%ccUlw*WwvK?iR_Yg%oY`L|gkb3~>hQx-_ z40Z@)i5yy#KcrC;(iK`N1e-+r4nx}<$h^z^LDtgHYG3Qb?epW+1=D*Aznm_bzg@ii zpz`O-JDj%quXo#nqPmwVQGd~Uzz8#}3?z8z`Vg5DGU^Y&@ zKUDU;H;e@=djhl>GZ|kqIbRbQKO-q$L&*@+9r8#vzLO5~N2>4fR*Z6%rQ1o_+sfm}D%J#5b4x`%BPn%l83jEB1w$njLnSo>d1bsD z3>Bk7QB@_YsnWEyJq(N(rsn=;xBwFiKSNVL9YY^2eLqdzKy__DW%WQs#Xv=c5GDC= zC0Vd&71=m-`FJ&jcx8nob(IV)jVxX5Ts@sUJuR?8U5z4L^>PEPy{5Xm4K#M^sZ<%L z9Wd2CVX1${#^f@^;+7+fE<=9dO{!&3o_P`;xLDqGG=Jb~Sp$)zfp*YZ@yy%yk%tw0 z-}j{Z_Gbt7X8QGH`VHg+^=A3MPjs&fr9N=CcmU(zxx+NkmcTSm7}j8qVN5&*jJanE z6HG#=FU0(|r!v}78ShiPVcD7K*P9nSToN%`9rtlx{D*z<(|e*vOGEqf1G=*r?P(rw zlj)$!w7~=dsqXF2RXg74bvUIyj0|xz@8V&)N7uGQdP67$Xy&np`F%Q|jM-B!%jXPy zjgR#!e?mhr<+VSt-jCP-qtb;y4JOk^At*S@dn$)9ne9E6;W3=*JdjLlkFo`nsqxUM@zMdBc^6^X6=&O% zNE}S1j%Pbf6*^CpI!u>4eXO8=D5FmnI1Z&#J7TTghT~d8aPPycdtw|qA}CFPwzXas zkLgAaT}+;PTGa=FOy&G0!sU)P<)S0*0Kv4(!XVp7J3?R2S6R&-;5?X3y= z_{@LqMc~i6Y}Si?9}maeAmjg1*EyzXde_S7wR7OdxFTlZVSe#3cE;Y7gtG4;Su-B7 zQ=YNk!n4?EmCS-_Zp9(N{u6?ur+7!ej`0p1=Iqr@>+9ASf?khyT>!V;@I99T=&Bq_rpKEPXF+}us}aA zz+DhnfL-RBUgqjwSl7O`rgfEN^_1uGR^Z+yAl3*7&&QoEbjF`uyV5nk`28E_2lUAh z`;P4iv0KF4v&hk4&P&+xfI243C4narlLsb^Koy77a;S-=6rtb2>O)K;K_LcE=2zRQ zz=iohZ7I$T%UOgnTlx)D)IdB)FIq&rL5>C4!ch>$0^JB*qG^#-Bcv$g(3miT73{ad zh%_6-M{I)(1RLP8U?H|*^27WuN)ebO13dSe{Z2C&ia^eYii4UMcYaO$1DpWLY-RU9 zO^X;v3`0l)P6=TbFp)fik{}H0BBUIYTDJP@Z}08|nhpGm4OEOiOxSft7zI&cU@0<` zT7G92^lA!e4ASD_p-2dq9suPxNe1Cr>}GGf%Gd?zTV?mIvU^bLg~4Z8%ub=Py4b89 z#MnJ7)R>&U?Y0g|3}V9jx5nvN<8-ZYx>q^_V;``_#XlC4|HD1d)|Lr>O?Hcd>Pj1@^2PB#9WnRw` zZ*YM#@|_9p|I_ft&f71pl^rh6t;$O-%s6uC)cgMWZ4aXG?Lz5c`wND>9{-n1q~|$e zJj_N!38AhddiVb8qrh{&%&cYe8u?#ZmR~;|I=+9pqH4Oda^_&g^!bvpGX=Bv_x^0V z#%g>ycdqtb-r3r~hFZV(b>Xuwqq+C}e?Ic$-E!n#Ah3_)){dI595iR|H)B_ua`u=B zs&Rr+6MnuvJ40h3R(>L6XMe=5wq%u_LZi{Wwi5>_v(U1JpBJ zb$uMv+-R~+P7*XnNvgA)nX8foNgZdRX=b2etRri#C2eLbt%{eGv{jVGt1DV-Dm!Rv zdFUB>=^ObPm;k{97?=j=8Nq~+zABnt@~S>^%0cof!3ru73JQ@53NZ?D35v2w%JOOI z3RzmpIiSAiXk=@t zEe%fN4bNH|pR+c;LNa^gf`1)AYYBC240NjTB0cl4dF4ZS7 z-LfInz9Z3VAUkL{FLXE;LSdkrlHdDycVL%m4*FN@bnnnjK$W@WY<$z%_yJ5v6l&KT z=L!bFG4GPSI?{dKr!krn-5cZRZ{l5BlRdk0d`8N`X7|N?KA7}jfBZ~U%v5F6SXtO$ zVPJO_bkAlC04!NzH){EkU$KKWeR;^<$dZBPZPlj_UVmYEN9XnuBrO2@sy* zIF#u$kmWF#<2aa2>q)1yC0Vy7;@VQJyR!&`1(b;jr!R+mR?kJSFDJ4urL3JxSUMT~ z<7oJ|L!omALcqQq3`OifC`=VOR^-v2?KA**1YM0XXzvrr@8gM`$<%=i=ZRde&t<`1 z%7P|yy@%83Bk8Wwd5pOE&(%Jk_Aq8jy@sSlX}puNvRzQR-{-BdbKW2cw$4rgTvM-?e^X$2EWIeiHQ9Z6+<85Ii+ zRidG;gN2S0Uc=E+gRHNCQ$dEMu~Ji_80cv3l8l8Q@tg5;BL$P~$={oT7n_3D>vI;b zR5VA?F6r9bHFjyDg^h>iunUj#i|z~Z9tyH<3NkJT($29XN){MNb6#PKp+SPwBtdba zpfXvoFHLYHQ*b<6a5#^@H=rRkGL)Ox1nvtMQqyV_%q`7FZM8n;MY7iERdc z8gnQZ*`V$TzNLln6{zdMH~{^4LuG!9Gtk-(lSa1V%T^kN3~*am6^(r6iM$f#o3=g_ zF&IL#-KtAb=D>2>&On%!gM68zAE-!H*p8yih2<2lhkqdr+XL}{RD%rnhYZ7kjQa<1 zKWO|0A~nI`U`wQbE)v!wbp6;h!5{{%(*G1Be%oH`xUmHMEB4MK4m2WwU!( z9L)Ye8SWO!tpAEKD=5k=LEJoNdVxE=!vD6wnVVi1Yae^}pyA$;O9%6-b27?ODvy?3 zd32#~;@J|jVHu3|<|n5aP-dOq$rN<23kJYectZ=^k!Ah_Q}APQZs7i_TNOul=T+yY zm*yP5dbWL_Vf#}qenYSa5uQa6+W#*S!i$E!8_4cxQRaGx%?LgAgZVV|~UpCa&25(GzW1qW<44p?s#8*#F=*HTq~#L6Kk6TG7( zQmQpot+N6*bd>hxm}Adz=l3U_$BsMj50iOiI9`VCdZfy@x6*A_*{fuU0{o6>o1JkE z(pj!bMP3RAd=*azsa}jwzY(Hz#ap`6RU(nTD~6=tXeC7!zXOs;=#(s^y`g>7lIQ zrJ(91ui`7O5~QFKqNEn1q7tvBnyjvxuA!2tt)8Q+manf-XsBIms8^`3Q>3p`VxU)H zY*=k>vfs-5pq1G{OVfimOS7Qk65<%;tt>z`7)=iqhQ-*bG481SIe zF#Ka>!ccB-OSB6F2;T;XaWuR`H+|rVg9fG-fiM$-Q)jyGP(c{P%Jk<3_vQu-6auM) zb>{@OCVRY&acE9*?#T4&%l8{73LGwmxd=i4WxznBflf^QIlf|p4ow3&zF>p7e#3bI z@8ew?!|dyVD7F5?7rwRtCP3N0PdqFixR^b3HLvw0yo;tc1=C*pQR*1Pm)06m zq}M*=dT&ylCjn>%#;JQk*M8)z`Or!Ik&DK2FWrV9)AunpJ!#aT9LLdo=Mk8mI@`WG zi`11t=t#%6rQyIjGV#56#OW%}`C}0)r(>BHl2{j$*3TxaoQz#O7PW9R5|%#>MF7f7 zl`+PPJrOJN9L{s=O0#cIB)2D!-p3N(M-lsy9fwj~29liyQ~FT;`Tzhx07*naRGh{# z-9Hxje<}6(4Pk5|H9zEPLrjs zvlSj6cf)vkzB47BKw#}LgyvABUpH7&ux-7c)eBE^;Fw3QX3stG^?sz5FsH6K-{ugP z2i~?99E}dzs%PWm6Z9nfH6-b(k~C!)T3X#oLDfW7RaZ(yTT)R^PTEXO31%0wGgqeJ z)a{J43EHZbs)|;sN(3DZT^R{q2g6&Z0zMDsPIspKY>QrL4PCq!JG&>QA&lBg59#ww zpNTGBNZ%_cJ0mE(C&<1hNWZp`c5Wm6ydYr@Gc4z4a3V7{QjnRtQIWQ>FMZ>$jE#e- z8+#LZrEzOHVN1z@3o!vdqWoZrgM}oqwA7`_bMfkX`iy_T8^U35dr?hhQ-kh-02O=iyKy#1(vr2X4jW- z*A}Vw1RgI1j`ueRSHJk2ovMDoYx?kQ<~< z3cu8@!d9LweA!kr3y}h?OEKCItJK28FIjDA*yz7o5sgqM|8xG^PzI@fx1-FjDhpDp zL&3o9f^35d5Qvn38QN+FzIZzuiN5(oK!aQ&(N%(v(to^A|BIEV6Bo)kOfGzf1MU4o z<~y(!so$3Wxg7BCpWDMq%-}GX&?Igx!yXHCy-9};XZ z;26%9iKcUc8J!S=R;TUlf=q7jI=5$?+q(wQE!+WUGx`bBNO4D(xf5V3yxA4rr)BQP zAL}y{bA2tnwKt!hKX9g^bbn6C{+x4H4%fYY*gx3%V_}lT`NrmbUt@h8;NKgpGs^Oj{6x2{RbtApfG|v^~%5X;Gf=a`y2AH9Wy{*65>|t0!ynQim#! zywBc!H!k{WdcfOb`5k8xhp%VOoGF?p%54Y@xkoIjcRke<{JJjkLrdb<#$e_P&-Htb z%hxDN*Qv|b9C(-Q_-BaxLso))ro1u(ey#>9MR7h#dNO3kaKMg6zn!%qGBwFswZ)cg zmBhgV4pS%GzMo@oFZc>hda(D~FP7k^(~Ub4bz35o>-?pjcZGObuBPd#qVB4oLYG%^lU4MRRrHZp4pLAKRaA{uQBP9S zOx4uM(Lts}E;i6FH`1>#HmEewuQD~*Yi_jP!g!y#@jf%7edb07EKH7AnH{&qohDkI zCF9Q$El=B+og?BdlP#}N@z?FZtgcZkuTw2=P_3?$%`aQ)T)=5w!fW3o8$EKis`Vtj z_Oow`@)*esoyd)B4t08g$TP;5iP~4lI?!LKE{NI|@7@nUlN&No95r1UGhP%43Qbd# z(~AJoivVJ65Vu2_7g2=*fX;9ep}d-QOj;fFuJzGhPx3Hd+)sk{>u)5Y(IL^FGO~35M?r zqt=B`UIvn0_}V=8v3?mqYzn6}1lhgz2W^H_??bHfAs{G&(oCZ-rO}sK&#&+l_rP_8RTel@z^=6UB zOX(l084E{3S0O<7Y#j4!{Q8;LwbO{Lo{C*Q7XAGoXfpvb6^zMJ&oLN%IL~D$*Lg4( zLT9M0Q8sOH#I`sDYue+8y~%c?+0a_#F;(a}UFbPe=rNw{GMHuu?MfZ7(4ooVZMa!m z6s|kowl{^`nNI1+vLDQK8Y^;}DQA4C4*a|)U;?JtOm#pZiS#at*cw5410AFM@ipF7 zFT5;k88&bcnu6@x!`-^0y;`Fjp9kPBJ8D$fN|u=IOw!vKthUojZkLOqrjxt|Nmdsp zrEjuRQ*W2Np^TEbs)Dt?0@+lJWUgszs&1{LY^|nfqpoPBB3lWrtZd8T~_J;Cy2dw7#{Ydlr8V_QO-?te5wUh)_N-8^|l<)F@X@84H z`Aa}971*b4cu+RH>;&$9Y^Tr_YVaI6?mIQ%2P8-yU##61ae?cE@HxBqX~&c=4jBSm z!G=Y?z-qU^_OA`n;SJ)c4V&Xjwo?49i~igSUBDbId@748F)Z71Y3!9U~WkVSY)EzAB24NS}gnAFQJ=O??o;XG`zbr8} zKra`H1Y4I>=+My~*GLS_e=splV3&7Gl>s06KSY^-1|QK)74j)sT;XZ_hhmBUg7QK7 zPvHHxHK<@EI)9X4#94_GqH~5~Y`<{OHiQ&%+a(a+&fgM%IIx-MW^nqDKwW4s;zFNl z#2^92V)Y<2gK-QrEp6i%NV9--U>mV<23Xq++%tsBtn>QTcmrUoyrEUz@G5WQCvO~V z8G0virdGH!KY1UQxwBta#)fCwUbj8IeDB18)8+dPRvkNf^7{2#_4W0=y}grD-V3tGjqc|V{h*~yHs_wIKL|W$c4QRUfme`(!0W$5)p=wV7A@? zKGFsx{`Y^8*!KQlnPY89TQAr)lo5Vg{P&L1%i%l{2%hk#pMJb`_E~n);NH_c<;U-* zrJYF$s6CK9aWDT{ZTZyk4Q!`&ik`&MGEdlb8m*PUG!f%;r8Q@;k3)eLDG~YX{e{5ZlI(|l%=^!hkMJ1`6=7`D3I~W`WosATI$M%D!L}B24qzw zH5WKz5p@rQe7c2RvtcC z88u!JK2#jko9EY`>jx+U!M|@4oO?2%t8)-=%rFe2m*Y1G@=RVpPqt5cs>gc>ok@0Y zPx5#hM{f*ws0$*!3M9Vtg=k+woiFjVFJKwD0VNn{V0zC6i8|bCbR?*>V0qz zXxcYOO1H>L51lk?ybWLZnzV#jb;Xkg(`jRQF5~(1@qCxDeCM$|r=e_z-c(X|8lg9f zG?Z^YQR@1s+GqYy@XGOs)l*S`HLEA1)%);UDFM9(&RQk^D_W8KS_fr+j zujD^j;yIA%)SKqekwkePPk0w=+a71zokZ?WcNofY8qaf`E%KNybf3(38O^2*rcrtm z30-mco&?*06mowW#PPs1lhp2X`@T#X;L${h*L1nhWU&{-FZZQ8b|*P>#M`}x?&#s< z#$dwh07AXLZJi&n&JVc)&Hna1(Vo3Y^tUm@Cq4#eo#l^Eq>FJ<3A($26(!x})ZOGX zXmW-`Su<-XLt|+*BPkVQ1vxVfX}rFowVA4og&M(7m7t+yttv-S+eK29DvHFnKac;~ zQ$BUitLF^iJ&fJw>pvP1%g%nVkzX$;c*rX}$1lFf%zL<;`EWVq)_T%qcG@*T%3*HY z9#&KqpbR@MVl~NaHQi+`$91)UzMSj$Jk!44w(!2`<7ol6wHnO{k9g0saVy(ZoL2VKdCj0Lq9y+mL#7TlFa9hTmnFZQ+A}5x-K%pW@1P;Q0N! z5vy0xBMM#HuRybfGNLWfA|W&*Jdl`U&>e-yg~~HnlbLXQcI*@&_!0vh^u!U@iJDL~ z5&abTQ$!#TBg>X6$1bn9eM+1Vu19@0Mi<*N2R#A|*8k((0aZp^h~E<8QvRO6j`5F6 z^w$0kI#8NlHpXNq^tOd=m6k&cr{CrHGTMB9@@n^Pp4Gi2NIRN@r}@+EuH1*+{ivduXX z{ycDuo$U=r(p^`(`)>C4TqyVH)CY9ReP_}gn$0bHt2++(hc2Y&9`-e!c28Zb?@~=~ z!h{Ay!&_vdTO^|!1pPa9#!p>gSbe9-+=%JCsPUZez7)TfaObC9`1^G8#~zk1{h^yN zts%^zDGEYyJqNRcrb?qfR3=Q7$Bq_7KnLtz2ouf@gjksu!Q>|agxWB>mL!j^EdTz3 z(Baa^v5J_P>e#W0@WEo3-6?pgD*Dr3iAV@=RrL7o2*4VMl7Tj+o-FUK3{O~MElqt{ zjGlB)2nX)TX7uFx^yT>t7ec&k=y-A1K#qS~qFZCQeO)lA7ACOtv3cohTMsnj4_%q4 zZvv=|{?rCv@@pSbOAzH<81-Ekr8$W3(#!m@v)(;>jXQQ~x9wH#IH*3RYt{K0zl*f# zOR<9(n$c|M$$Yn&Vo*)oN3)y;GpT)9B(VN0@<_hJbeZetD#o|{{yz=`em@Yfa42Nu zSj5lcQ7gxy77vHd9|~JI6t;Xc5)6KRhe(>L!09sY;e2`@L>Z@1JCjKrz$?k5zH~bX ze3>YqPZqjP6}nCqxJ=|Zjb=LxXV`&_WZDm9+V`Z}^`zT(r&2qTNbQM)j$~4Qro(6+ zeWK8PBHw)|!=)$5zAc*45=M9vV%rogyAo;8qv~;x z$xTnKBX;UV=8B1$QVfs)Wt3cGwd~~$Df0T33L0jzsz&m1Mk-P;)0l;kf~Bc4$xw}| zrDm%lPf?b&mf02OqWkoW&s=9!&l!goMOt-H)Ugci5(H#70obM$rC^fWJ0^&uoO9 z7X((V($l`;L+A9pe;D~rn)wV``Ay+NSSATvvt*`a?y616s&(m4v$6%l!fC7geoAg1 zF>{iVu;yPPICf#9w^6V#y1;5(;I%FzQ@{PFuV z8CL0Si65vQ^Bc#ghV2eWW?KxF$+^} z5YRyk)oHd77?LMeNCb4Y^d3aW!NP~J6GvSw;$%_7JTK-_x6+uWMqN3kW?>gi=yt{a z_m6}y2gHG*l!AJ5By*8|fg%JZVX*uD8D%g65S0%r<@P03)~zsOwAVQL6QvgH^w8z6 z5Q8!rc4Gg!#6V{Y<-}v`VC`_fbCNh8I71e1h{cCT3T&&ikQS{0l?7=n`ok~*Mttf2 zF(K;0gT|t>I74jcvyBRU@ZdrMe*T-m2GGYC41L7KOL$h0Lb3!S?2R#&V04W$jEt}c zoxOQu?2T#8<_wcR`F-)@@Yr-?^Sf)eZXZ8&`p~f>M@}3*cIwFClhyl=l9J)e!&aznqSK!F4%vafHxM)mw97~)TjQQFdIoB5Qt=a!$t=G>d^p)EV>lcU{r}2U+ z!;Mm%jXaI@M5Qkgl9S;IZzEOTgsVRFmOo0_Sw>b$vDZrUFf5A1UCeQQa>Qr$S~&Yr z0>3VCqb_l?K3VW8kyDen^gLtaVN&0@katzCwb?cgB6VLd6mB^vCRoYY8tpJQ-f2Nr zvv<+*a8`9AN|7vg>exsdSSe{*s3}^gDOjpWgAr7us7g}y%Cb&M+Ahj^o{DPz3JM`A zDzTbcNqYL3hDP}&CM6aY)s|L&;cbo)h-b-^a}>&X3i&*lbe>E+Pa<3(6E9IoSL`V_ zXw=(I)LV|^oA$)(RNHG5>uVJJO?%sWPNYY!)F*ECPh6?b-0hybQ=ht$A2|~qI$1w- zvU%=GdgWzb=WSo(N~m!qV)lY=`_vi#(B9&noyi@l(L+b`ra)SMqTg&m%v?qC$CCKL zw7|EKbfg6*kn$$f;eDb#%~=KJ>+_yfv}?T&!3-w*rZCMzSy%EN$T0B9z6N6hSr z{!kq|T^Ti89Mqoxb3ly0>)V?JeZsv!ssWv*Dbb-V({%`@7(4h(JbpQzr2E%>nW%I(_s==Sw987)_NP^zlO+g@9*gSJHyJM$) zm7sW)pmc+veBVy9#@)EdAO9|d*cC+`NOT%YbDv1}7)_y%XE{z5I85Z*kL6KEb0{O( zQa>*KRP^ekjLoB%d~3;51p}GF42UhDMwsm+?H>a29na z1Dc|o$8%hUGicojgw}Ag#$bci2(#W4!bG0qOp)t&j&ol!`CX*-n_!E^K#Qheh?}u_ z4J}Px7SG*H>%8&Jfu!~bT5mkPKgqo_k=__Wf*C4Kk#zPLE5yi4gh}o6mfGbaBjXHR zuT@m66ckJp6bzIU4OA2ibaxpUNE7s6lxr=DvI=#V3TdZeu$kJKEXPmv2YQdV-%rqZ z9q70aePA>H#%5yIX2J+7xp67u(t7Uom7H@cxo26~mo|W7GH-4q-q?t_vJrV^Bk~Z~ zdU)<|XaG>`{WbkZS{6a|q`@o@%lV>*fKibT@&yP5>?znG}T)`$6Y}gfS zI+tv^S8RG!ZUkK22zj;{{&F*}Z8N!NGq#rPdvS@fXWlsGyFt`vi||i`hhAaMv(qcSl}(1 zfP(_xAk95khfv56qoqH4l>&l@w-KWZT0E>y7I6>K@C5S)is1$;zp&nhN*<#eF*(7; zum(^DRb`MCA{0IlcPT;zq3Z;v{0l+|@SBODdE*tjUh7kYV^bU-4ep`y% zKZXUrFQMFj0MvHE!n6>q1b?Cow&m72i&+Fqpv;BsCDdR<#}a1yTT#V7q0DSPxL7bD z&7fz2=rP#oh$WVPNeH(@?+S7(48=r87ppkPBa5&LN-#naM}NYa-;4tT?jfVp3^T#I zBW*g{4c4RO1dU{4jI%k;-WUg(Sz!&WutByNV<9v%yUtnqxz1TxW6dwE%zXOXKRnpl z-dflAvbNz-Z6nx&*R78_23}8p?M8;nTN+wo!ALW+yp3=C&F{R84=BnYG$SmhsE5%X zYlPnuzi#%QR)Vf0GSGO0hV71^+g9`p@_PIavgHkKY<4iY4V<-Z-j~6j-3^?PasJ#q zfAt5K^^vzaxzTs~d9n8yoHBwkvJy2?`gJm9&vm_PoU3Ot9?ztGnMz$ANnGxVTx|CL z^xSRnzT?6T>d*6pO+cAS{f%7ka#fM&UN2oi?%_PDNC4EeH zh1p8wIVn^|Xg7pCwhR?>`ptVQgOV8pKUgb{KW{+Qu?%D5AmxaF{tnrw> z>k>&i(p(yExYN{ZmzABSlbf!Wv#PtTBmuWWn;>Iot)h+7P_|H4#HmSJs7T@!B#3en zR7GhgB`vzDzPE~Ikg{^5re?CfL8hr$fd#JA(y{`N-*0Vm$d+)7KsZGpoF)*@5D90A z#B(Gf$}!|?H2a&*j(1#WcU|o6I8krY$hRCwx9o|xX~eru(hjES7^55=)FMKNPJVT0)by~&K8WCqN&G?*I<{j`B&U?e@jn%+#9@F;S;G-{|I z6q!;x4`N?JyR!pY65U@$IJ}B-1Z}1}HxPuGfuf+UT%YzVug+}m{z90EIuv4MKx={a zrZ@34=)^Q$7WQdh{MQ3Xz%;@@8E9b2_3KLae4kG5%<&j1@t@ig{&9cwhrQ7=dm^WH zhfh~T&Q?al?Ad+k-W`cB>VO#5ouk*2a#jt|Wp;cpGBV6-DWfqYcD6_9w$MNyNzl z``Hp_V4A@ULT3W*eT-RGGJZIlGL%Ib$RLm9(LR*9&sF=*{}r?V1alzx`~IMB`vT_n z2Yfvc1U7dl`1|3|Z-+v@?DL;2_ZTT~90Zifu^Y~{A1iR2EOLgieIbWW6`miXW-Qxfy1;EB58`R49Wbs;lto*NMQ6Nae=2D*j}9v#1Q;5~nnEmFVEE$@ z+XjC;^v!_IeeiEX$USi`y(u1Vqa2?2+Fo@wKTg!kGt@{_mGzU8c9xc= zNyE%vik9;7CJOR^GKMOO+8Po%+B>Z@wW#Vi$OvG!I7jvd}Odtvj!<;{JMHnZ;t!cMcC_OICO;Zln? z?F%=ZiZ|WL0A={Tm-#_YHp5?SCUkD5_H8EA2|}*3T@EwxX-j7DbNHw^O7yZr%7$I> zreitJ^)HskQ6~KmleljQS21Xn`Iem0@0L5{pFHHBGRgnww?Z)Aba5!7W1}@=^v-sm;-_PO0n8HIG{s0*0 z5W*lEM35Nb3PylGSbR9p5KMQl!WmiSjxBLU7Fa{`FvIrR;QY$Kw}sxh`K~Vu9dip^ zKbHCy)&^F&6N~F3E3Aoi-t14-6o>zn$@$FWBB~4~%!nV^|7QunBh0p52JxE!m=9NP z>!w}v=Cj~!7HrKv$*1oT^zW#*Z=+*I=I|oksTc6UD zYLJwumE74Xq1+~+_Cn75rk-buQ`$gS>qyMlQ1nz!#O(XP@p|v?&t1RYqb*;6u1uE9 z3T<|=1~*@0Jy~@Q!exTx-UKVv1}fk4P&h!@S!y5|r@kvxOUlPUhGHt`V6Wuis}mA$ zkynbpw%6|d5r;P?X`QF(9cTSpPWv?Nrr$^*90)Ngp=)H3W#i1GLiMBqjCc9lOZmAg zhr4Ri>@@YEZ-|kCqPeQ7jj}pPL4&BEidT}hRFK5U%UjB85R^2%mE{99lq0n?5_NUc zjEwTk%!+W9WtNteINTmfh>5X0YHfYO+WM3={*0~71tQ@RnRJy(x#3`c$I0=&8~u@| z`(qFKV^{l!bh}5+)JHDVC$9F-JsfMjU0yL<>U?17{K|{=+Q<2gKfO87ttAMt=0Mlx z0GDQe=Vm`Jr?-K0Fi13b+rRdvHu~5%_}JBXkzaZc8~p4*n0XgY?~3yrNbw)bf>_}2 zsl14({D_IXaG3jgsw@VSn90)Uo(#X%csCeEuQw}TFfRnGCmRBI1N!qrV0ho5;_%LF zf8dzb6wjXAps79aAND6qR7MVfnv&<+SKvQd7B*fUK3EjkmhKKi zRris--cy=>jf+v8n^}{$)%yTqcbNTPjB`(nZC8T%a3*28z+n=`o=GQkCE(g)OuG^- z2Q!I7nWTYqVt+buFq1NxYd@avGy&tm6gtnAx_{Zj_*Bi9uJ-z{-{;don9C{P^8vpP zdl?fjB|@P?Zw?tka0YX!BQOs(bWl`Nf}5ccE{OtMB&@QZQh1hHTmNj7-n@|rY{*5 zPw0kEoJ?!oY+C}Hx+DBMLVX(jU7mST?zrGj(Tw)sloEBN{8S{|6(k6XF#ngNiLAVV zytvMgCvg{GiM-(}=1Vc;UG6lJM?J;!hQRMh)ohvCFHLCWpF3u^z4 zo%}oQ8!xSIHTOO=EwSSFb7L#{5&JiMj_{oK@U0H;O#k8;?d9oLbM^LcZ7R5w3YJsp zs(&FTx|)}Nd}GgrzYkpd`_Rq54_yDd;3+Tu5!3(ds&mPTV-cH{&v(q{IhAwhX9b>@ z*#56sA-$aNVOG@aTI4Jzq>JNQ&vL!bBUP_il`i1(7l`?5b`_hnlbiH&e4ks~pvSy` z#{##zJlgd+_p@Vu$A8$qeV6rmruWYwz)LUMh58+s|8|D`I{ewb{4VQ25*A6 zTlA|Q+!^AnFmwRI5GO>mA#x)BL@?MkP+?*_qJjq^y#T?$8cf~6fJVIBo-OQ%VG4#C z*zzAY09e85TQRjj=13hbY%V}5?d>uQmaQmrtV-X8YaEbg5Ul}DT#Paz#|`VD2?^6| z;NR^VY%$8ebIdPF#Fi`nCv3nPo-mvMltJ#tZ?=sOwjW!V#!4(gB&@8zEMWu8&|@Hv z2zsZnGv9uOzwCu%h%g7ZK)7UZ`$aT^UJI;9;&T4`h1hz$wwDl5Vt75M{RuP(%5Vh3 zn4zK$@_dMHEz&x;${AVZj)JXmVcN(sCJ$^JjKxKa%^l_ZW}H!u*m&b?-Xxnh!RC*F zarh%#Ar8Z~o*M=Jll@s@1+@^ zQIY77lxWz?@syJT^bh^aW^zb_bpF6Bj11N__EIRU4uvaOZVC5^iQ|#zMaJV z+^74cP-QtwekED%d$jCKl=jqAQ(@Q%Lug zO9FFLv$55XvQUxGSC!URld+UnBJENmNvY!HrSJ;7td!L8s%BIzi%4CiBxAKqbAx;w zt{9K6u(sZ9ZCz<)RfV$vJ8Wrj9B*~X27lHDe}QOwjY_%YV1Liq>7kqJ6Hkw4KHe|< zd}@3=UwAk^cXxR1=1}YDSnuQ76zKIf#OG}&qcz04CCIZS(7iRt<883}yAY4}VP5Uw z-e4W!UL9ec?V%p+A?_Wao}FP{sCjlqcy@$)w1v983vy`);ilU30Zdm=~6!;pxX;vndQJqp@PNpOFGKd3U@SzbUhLxq78<>52CBWEfi zryw-AG;FdgY+_HycvaBIZvXyb@2))8&TQB2T=)J0@6l42Ng!l)cjSlNQL}(P#i7GF ze!a;a?J-U*VRmnVC=G$+`T$ZrFiilZ!JiBrd|>$|fYKaj*8)vu{-js#md|L$kL?T| zQ+1y?7}Pi#*SVNAx?8^UCH96n0?PCxm=C7nN3%#^!x@CZRGa=3d|xVlAkAhdgE*K$ z>`BIVCt3HU5&F|fV7;k?p)Bf534OZ4eXP=TYOm+?KCj7YkMTWj^M~lKm(yLj-dDSCR%renGeKRk0cQ%(y7zg_Op42jb{-D zk}dm^aATPyu+a?iP%5!E-liiQ-x_Gv86OFH$vpI=vS zaC?YvbAVf&FYR$K;exYniM2wEp`^bCO!zKgCA-r|N={Ek!$3h(Lqk$qN6J`H+D1Z- zCadKuXX7eqN|R7#sLPeRTMh0D?%(Y-otnvwx$}4CtH0yE{2jf>O&nOtd@z@IoflgA zcW}<%3=mW*`IdQ`TGgAX`!`h%{H=I+L+&77XD`pNnrX3n*{*2ay?QO`5G(B@C+8eH z{~SB#3^(E4TJXI^&y!1z*~?BjET>$qV=l*O_qxjszUO^za34GJ6D#7&QpmSCpV>wC zuAi>W>n<-h?N6|653CXPu2c7MosMnNZ~X0fZzHHy5ZSyD+48r4R}^C+6%> zPq(d4lcG87wh4LGH^o z`-2=f{TRxKIaHkZ2Z9kF^$(Q6jv>xnoQe3@A}B!!4ju*cDkJ@qyO3VWXkTcU$8n7f z&Ul!`NAwaToJBaw9Nb87nf*+DFI&)$gu);;xMc_(BiaTNOw{cN_C-g9LAoQMhW14Q zV&HE#m=vjp#fK$iD?}N#01ANIbp&NFqQY{3VH0^HVC#S~yiq2942%VaC@y1c-l)h% zV612`&Nc&8hK)!vU>M4b0?nWX!psnFV}!c_yC7%5;X@l4@csbwoMH=x_|WR~_u$&! zz0A#i*5&|fv!5yGU*p4|dA+O9ABx|HjxIB_#vfvCOsqlXf*CF!rjQ)x^1rY-pI97F zWdLi&*#d~jLC#TVNIMr=cy?!tVqA@S~G->vRJlFdHv?|skto<23z)z#I-(Dj*nZ&eA| zYy2V3+TiMP|GMzq{Oa(BwZS?5$cJU-({^&Zm)Ti0nU_*BPo!k2((1j^%74jgUQseW zL(n}W6L(B0|EzY^71OrscE_$e{qnuz?Mv484;#E`Rew^a#H>^tC{^q)RAH5A4cA!H z8l3y89iQb|T#HjbZmmGlm(MU(iZfStG*PiLlQ*)E)v=Ya^p=helqV)AH>9Z^NmDzV zrnw&!tw9b_P4`hs@=%X;R*JBePqb0W_RuVd(Z~*0PW4i?b5vKfQI$7QlQ&Y4wUm>0 zkWzAzQF2z2@laRr)iDS$vX8TLA={YMI$Ab3*)=;kwz@dCySVIga@uEa-)3vmZfA4M z-u9G}J?t}l+1=%9A5ZWl{Tvc_Ga}?Sz?ay_KZ&vTQWEYb#oUVx`71i;ZgkMYxX@=w zQLi%+y0VixvlBZq<2%x0UuWQod7TmSIy2@?R$OORTvtw9cTRjyZhTKpTu*i^s5d9B zFE_3?H?Aiq7Sx-Ij$PSNomr8c*+|{F(Uih?MoAL8JZ-o-YqTzBcu!7$Lq>l+a7OlI zd(q?p(%_zK1}q*^O{CQ%QEQSI05K4gTLYdWFwZ2?>XISdSr+}QAoxvb1ngQc(2_m~ zE}^CrKo&+r60DLpaVY=&@nZI#G-_>p4;XB!V;GG|5IVzdN$qb2%T4k?YZ_}`GOInA z*_K4x6W>`A{-QMSX_4QvBL9xk;O>eDT2(B&K54iqZL}%9zdDg#8r=t8t(@SFbpNMG z;BWGP%?+NV`aDndL0cTeyFHF~dz#?>BGKb{qQ?^m77n$!?Pq$^L+@8l{olL|fA=xI z<7fIH#QIs3>?$8dnFoko>fV*_(3xl7OLC!> zx>1TKqjEjio|$$3L^ zzRwk&_Z6Q1H9kO0==XxipMU-8qu>zp z+V$DtZvMi^!UAJ?rGEttK-**1=Lzhm^|lcLA79~hCqbDl?+-GlEFg0Q0-FDhFQ1*o zFWKfHoEvax*nWRX64-t+|9rcmvpc4jonMk$B|o7VC=8^sZ6=3bo_KrkX5fv7GEe|3 ziD(Abc9ZaDha+^_w&h~0LvWPAjTd+UeDaM1Q2u9=1aguf;Wi7z3|o8&x4=V`uv_m? z2Za4@f7nSt%eKMgiwV5x|Cb}U#9;aiNcdt!bbm$oY#H$ZY!xxOy!v)|eRxIi0*Ma` z!F8|jAar>g3DUyHE5he1e98)+y29&QhJhT-aPC>+b}w-76rt7hnVr3f=!3!^mXp2HBGSBds;QZpQ4)Rt21x8l6 z-1czNjmSrP4nh>9en%?N2zBHE;gHX{PQVa%=c zbRDQU>S29aS>chC(sL>G=LDHvS=FcV%KwogTq6+9$q`P=5>Cp1q|V68o|LydA@6WP zG5myT)dk(A<7!`jrTfPvi;fHS1Ly77r(LOMyr?HUU$;2?TB3I)P`=QS5NAt>HIar5 z3S#vXVzm`xwH0Cw6yr@)iFOLfo+?=(+C}kN&?@o{v(lt4x}|d}Nq% zP`GMfsD^j2x|grIgS)Dkqk^8byn=cjYj;V2_jcvW7bE}{A)ZY z=r%F*uZ-wN`H9c-iLWwapQlGZON)Au5#5m;-<6-#Q;^)5M|_nX2kOix_K;HhN;4?r zjNa1puHw`;MaiJf;?%Cd~Z<_r8uPruFWU* z<`XG}$qZ5&yEJ>aB5$;+V63`uw5EX7n8DtYHQ16f)RHsUoW*KLW7NS$OGJ8YBBPGj zU!OeK1f~?&OOn`A5!G27+F2adRSJScNH-~>w>XMY8cVNC9H>tlZONK!&zm|_IC-RS z>S)pE!Q8?2EY`ksdTTPZg-F?#Olwc2A4q2$N@pHUryt6u9?YWb&!Dzv(Dr9C+A=A7 zQeIcbJShsgm+kW?%eS*QoK>4N1RzC@VU|RXRwcb{$e5^3q2`9ZO!s`8;`}(-`FV=# zs|=49NiGkfZT<{3dk}8XL3Hj-b?<_y+7VWFeD!a8YTx$O`NL2D&j3R>{^qUodx-Jl zWH7@7(aE82VEgMV4_N7LqA~tMd&=9Egt7Vvc7=a0nnZ0!DRgF%-PthFso0rLa$+Ce$#e#FX1jFfxY3J!hpWTb zm7yKEUfqTModw>oip+~Fr_MrGHh7wvLx&oJ*mb`Bbw0ETH(G@|3p`)-0jwIBDi0fm zo8O5uyc2EsAky;pK!cn9hBpIEZ--bw0L>GkYgdLFHOr+p-JzFg@jAxnPO#opSJgwN z(s{Z{$tp5I3d&Bhn$}V(`m$2SN>XNO>Sk)j7ApDy@-pFy1RqU;odLncSoU~|&ky7{ zTJ|AP)JsuPwB0L43y?fk&yxt3u>aDRLn%IJM3?ANk;O zc|88bd^Uw!!d}a#F2vmBd7R<8pB6Zs=G&ZHw>i7)aZeE0C5jmoMT`o=sB3YzxWwB6 z;!RQFPonsnqKFPr97UAQ5aqGCrA+35Ta%X_&UN-IEwNWuhu+PjD8nUqk8KUu|NjYm zXot{~Z3y`92}BIL?(!MX{PQEU1id7&z=PdyPRR=sZA}2w1tYzLU2yo=e*J#-Alvzn zfRd;}h}4AHAu#&{3whiw0MCV;#X=NzrjJNo>~MCwW=JDp4+V|EXKOh;%F8J3c-u|}l=5FoUPLq7C?kBi0upp$CHGc#1lZ7Wdt!WtoAPRdUmOM z88#={5q#`f0qYJQnK3X50kZ^}D}-qaWrTn-AcQhVr~nQt7-^w2lmu@M6zJSJE2#vp z3QD49S>fXX3IPKNh`L))tpsH-s|@lqA%7F_#1Im1Xbr>%fhht*86j}Y7Rm^zOTZ`? z%5V_M4D#28`D;U54xr2cjxul-$^gnN@oCVRD;x%Qb%47vxQ!qp7|Kv*#Jf;NOq&wZKZqC$BF4wHzR^pEPy0H4rL6QEqGV(> z`()H!Ny+~uC-b9{^f%I$!B~Z8uAbrqHW>BX zP@UpLo$_q+rY!U31l`II}HCq6DndX}5`Dl4wLAcLq7%m!x%-q;!`O zd&o(>rAa+NGo-}Mf`rZji0VzG6erWk>HX!|{bgAoc3IXydCo{>{#aEZa13aqI-gz# z+e4&wrcN7LZ%kg=W z4^wHvIt#+PNRfTySY{1zuqh1|jfJfY#t!C99V>c!oHTj7X!KbA;GrzW{&e6N*5S;d zleyz(NkgZKSV!~e2eWDInSe6%whU@ZYIj{iM|tEkSa~no7q+5=MS(}^QwOSvtkPIk zNz4E_ZlpYMxIB?k6!JRP=T(;1%QQDwA@@mw!;?7s$Fa7LBds1rSUe0h2ab6Y@7R;% z+7ajQAjI@HFYO!d>cBB~gN$zl7~BXlyc=uth-iO5-sVZNLtlX}LYcPYcP$BT_ry-O z#?9=Ff43)MxZ0mt>P9PaL>xnQ>j$O*e^Y@AwFojj=p;`@3Al&+hO2`n8Y14e#DXU3 zBZn%38O6T6`5tewoL{EdKZkuKGo2^}Uj5}ELv?W=W@T7+k%pc>-apw?rEIeA3=t+w`V8vhqBb>2|af>u2#+H-nANIjNSJ>ttywg{i8$D(KqDs2M3p87dHrlvGVs zjqJ2cBGhD}R0!T01Y3QAtBFigi1oR2zfR&FQP@*4u}hr$7ccFnm6)#_AI++ zuehczddAN9_`Ub?UUu+VvGtm_37ND`o3KjdXyu93ik6JC*NnGd}_AAWr$^y{^ti);Q@MDBlz{ho*ud&Nb={MymUvyVPr zf4$sCUxD`|XY|7oYk@Pg3~#W1#9D0SVCI2sgZ(ZRfe{@av$u!#FDAAbWxM?LRe0jR z9MRB@rn79(2G$Jpw#0Y>x1dOXW~(vVwPE+&HljtUx3U5{kM4?e==?N&|(^z*V#^U|<69M8f?$2tUzT+M1wmP0)*u zd$unRs}nP%E5Dl3HK{) z`(v2G{um=++4Y*o;OXa<*{1Mw4QY>hJxfi+0N?sZWIrdR8tSJ0Am z;2ZAf8fOFvk5)$A)s3lZ4QfMw9jrHa>~%gg9s~)j)6n-1!hLpN<-e!5zvYlXb#m#j zVJC>QPUEb>{4d%9pRphSC_vZ0U@i)nOG4HXER_7pP z`+4_E*TdiZ9K-rHr2mvlf4fC@lExW7xjI)VvZYiO$V?%{R5{5)g=ni9@2ElaRnG|1 z%!$@2O4h6@vS=&eOJ{8W06+jqL_t)vJesQC9;Q?mpw#TA*chUk8mrV$vV=@p>i z>8I`Jt83$@Z|!Gn@E{BBCjqwK`z1u3scX|G7B&kK_u<;LI7 zj((IG-H{Uy_`<5lVO8eR%d&clQ@ab3DdbF6O+LG}fL4(WqF3cIYYW&7q`~Hr!KM;s zT_LqPmr|KUtIhyXt1_sS>6D7JzOqzGSt_kOol%+DU!61BKpLqp8mTK9t}Ps?EgGvU z#zY#cEgG&VVAiJh*JlniW)C&z4ukgO3^yaM(`ZXBh+Urs=9d1t6h?I-wLFee7DFwI zrIy9?k)wKwBYKJ=yYjFt>eFy6GJQW}Zf)v+Dr5l{2|UlatwA~XYa z#9@f7sfwqSMD!K}(~80dE8>{t5%jVUN^xLEru*F(%Rj?SA4FR|Pq2TP;P5cQ@==(@ zizwS}qAM-Kr!N)4N*wM5oBrml`>Ut+EpOdlytRM!)A=>X;8u_UY<+M$#PD%~4QvKE zQWHL2A2rbsHC`Vv(GdBz8EL#egkA34m+#nD;7BiaWtMs{N<0B&dh(pQavZyXMT!7% ze8=iS-tCEc-x4#`7&TrOK2#OVECrfzdzEhgIKkp^g88!~>(^N>&|qjbqdXWkE9fis z?j^xoDsOg;-)K|t2%t=*2gDusmN@s7KxmE!L>v#)!V-T0^m1Pc$+IWj^j^8)(C{Cd(Izw%zH@^h{@FmP>br>!W!4p8|~9olGl@)zh@pLshhV7>a89xaUFRz9k zn)9vu;9dREsqmv+&YXShjDzbtJLd&!^F>Re_m<}U)(%W7yA>@rp{nPSq3fWV{iv7o zjJwmUi~XXVv)IgEY!xhU$`QDiiQH?%&aGmHCXVgFb-R-s*Ym3ox*L0&7j=Eb@7%22 zzIolkS?z)qgA$%awaBSe6!?`m`kFZ4s>tO6-|57%M;&OY}UT~qy6Dk_pf*f zzlzG=2=>utuRdA&sbi(9cWss-SRPzhhIj_aFprP5|2)DlEE#dJ;1z7C6=V*9l5pxX zeRerMa^uI(%Htn*zXm@`e?Gut_rl-va4ppN|A8_Pc)H^r+HM=P`LlbWk6Y#$NJD|` z)?#yFFe?uBZs))PBD>C_S2sQsZgmB^5bv3-Q+S2=Rd^d9{h7Agw(Gt-b{fdUI$T02 z7-iyqKor43_}{Y#LY(a&+5dF{j7Z!eBthqz@Y$N+^%{2&w7NFAx;nkOKEB59M&eOW z!yw9J{VfutVGQQKS>-U0wz>fCKK%IEkO_Uw5wf_#ey#w-2Cc)mi-hcH>&RXQPeH|w z@ErxQIs5@kgB(5xKK642OpbsC`tOek#Ipr4Ur4}RAfA^4M;;xt&VyJP2>u0aHwote z3CdvnL|+q9K!7sKLh6c;#^o`&Tqd8x60WmBkl=Bl20ECF!0fbyPzEeju(A$vNpjb~ z$He5U4Xv$DK+wz@zX$d9wm8Eme;Z{4ee1%`b>W+J(Q72&Dug&=>)a6}en09i2u2q6 zVCr5McA*5H4k12RFAZ@8gB$^yBS77S*pUy>Kdk>B?f#QV{)k+7uP2KyN`nMERt}7~htFCxaj&Mm@?V^;%S%StX zg4Rib<{^S+J3+lgTD3t=wOK*EN>P_Ar(Gm#QKS^wXpnls@tdoD&%O&}UUK_*(q<~( z@MfgiNgugZJE>x8LXo9hx|LG0ol3HcTAZ6^Vu)5ov}R7MMnQ^tHQD-bncev;qf=4J zZ9z&$f>n-1XyrxehDGXzgy{JO>-q%hy965A2O8N0nwfwC40Hl?)kF0)6ZAC_^)=FT zG;*{w^R=}rbPa0_Oq(st_d8e~b9ea4+wH86+c|HyOTO-32YLSx;eR70`1iz!2kCJy z@>06U*}au{Jry}`O4FYg5Fh8pJu!yEcVUnaHe6WK|{gS0}Nmh|G#a226A+j_!t?4S;5Hf?nr`b`?eR zlA~drUut!He^csUO9lYV*x|gXfJXU~_H}jcjGMo2s46clIMx`Z<1Y}$J)J&wSOJw^d`Z%ljzcwOXpD{Nk&9!(aD?pU#h78b5fc-}KkM7j5uhOkMGHk%#gwc%8P<6maP4Gxf$Y@OnB*59kEb-~db$ym( z^&rmVUbN9&*kdx@>S>C@n_P&$fw&xh*kF=g=EJJ=8LAH$ZG=^ceHaxUy~R#%@@-$| z+V+xM`>S9-?V$du0N9O^ndkK^+U$0K-Y-5nzxe6@>~93SXa5;tem~0mag1eesslaK zm6Gk*k>>tqwCy=R`*u6S5@Wq2E!{{JH9J)$6FC`O88tmcGix2YAbr&UEm>DBXNg;k>)qf{WRTot4L~KF`@Mtk;7L4&octQ3w)1*Yj$-DMx>8wN%JbiRh=|}S-#kTEbyx2dRKAnD>x>l zYsLlhmWdy&5@#$DCQV|;jN-@5$+M32t8tfvRS$#*JLkW7ym0;L{IeH}V_kxI=E_Rf z%32rNaAwO*^UnkfI`F>2#$z;~BEtjnp}?^EIS_0QPmuVm9{d!J1^;F6`s~HHyFxs@ zT`j^R%)zvsv%4^4q5_z(fqy4}W_K}^#y|uc7I%JyLOxzCUKkp@-LTJ5=HEJD7suew z`}uvhhI0HyyPLXQ^0N!EpUU_TY2+Znqg)_P=Kq8;Ta$hM`vCvtvj}AnyR7lM)`Tz6 z_=JDbg)(3rc>|Y7PzKQq7F`Qizy~y8agbopl_U^_@NtO2 zI7T?Y6Ao}B=zxl0fT#098otCB(QGb3I@0WgfciUV&sPq2RDO#@%Sm??EKr{zXsNKq0GiI zUA#g^<|uH?3Hp~s{Qxwg85-@z`5P(Gmo&A{si@sj()?Xf2E2G>buiUJtQYNcHl2Oi+)=iUg$RIeCDp&3^JAc~w&$CYb z$E_)4R=1N4FNdfcbdo8vBam!lGwc-8oK(_0)snn5Qlhl-;x!B7)kvvowbgc~YF)lA zw73wjelSe!Sfu93XuX0MgYZcGkPv;JAYHEjJtseX8()1(9|L`FeO)h2RUdW5AZ?X+ z9n~ZQ&1?hhB7NNw1N~YJ>9 zi?=PR&Up~3NV(LKU z6dcwQJ9)4=m0g*{AjeaRV|qzZeX#LlSscAGfl-sl ztW9D!ruM^x>PA>GFJ)kF#@M0UwjY;2nvQtqdm-jGJ+*)G(D>O~ z>!zR1tpL3nzS=){sD1CMblqL$cCgOlc+2NWHef+{kz(7Oqz(NDjGqfT%ItgqxUj1aB!3zH&2%V`20Gfe%o+Vk{ zk1_f^RQE=p_N`F;`|;)-Sxyv^7oF@4n;X!{9s@PLfHI>EfrGVv)DoAMnU;@}ji04i z!eTSbG9L!n2mD#Ae9x|ATL=NZ;j8nFi}EE0&ly$s#$o$9;lj%ZrTd=y7I323S={x z{VtkMJYs}iCpMzL768Y1G`@GP{NPc&uC~96SVqPWugG$I- zO`rGLev{e(!_ucK^F80O5 zXEozSrrjO>&&nnB;Dhznpp5(^_%tAhmHD!R39KNv7v@VxL;z^c@YZp60>QyQgcrv1 zc`OcR2#E&+d^Z~4@sH~hoVB-{^>J+A2LlGoSY~m!1Dy3KBrc!{OkIYp09flB5Q>52 zaM@hmATAz%h|2>>K5k_W@c5uXzF?3C!|kVMxx4``4{F%fAXM@XK_;q%%V%);w0{?! z%ik>~m%mE_m}1?-6~IP`6in2udhko2X1wrr4Ldhl6H-@22x#CE9-k)Q(!?AjAs3|~ z6N4Vwst{>iAh{6Eico<;9(Rhzo#Y8vJOO=2ym83qf;f{%=0AALa{& z`9c<7$l!};d{NJ~c%nX@fPutkbD?v1{a7XVU8r2(FyzJivf%5!n`R{6elX`Cj~;Ts z;Z_;on2lw|#tKu&VF}tkBm915iu2hpMR+7t*Q6>^(QVEVE z)u<-plEb#Ajys;Kb^amS^1EoQ<6d%A;AV1{$@7-a4OGgHRLYB1DM(YR%2cUMSE|iY z+1G4;t<~e_3cIh<_%Zp4pd~YN>drdNpw;Yt2AY}GJUKjd!jCPsy=V3A%CJF zcdRaZ6ee}oWPrx%Gbfs|C-&q_wB$^-GT=$%xUt>8S>oOijU{3=Fe43pCpYP%$_`)GqyitU=NYi5YKK(9BLu5 zo8u`};V%okAEY_mOSXQLX8Q_lH|-63Ezyd6`f@$HfNxTqJCmJW#XA7OK*Y@5K$Ckx zrjNs{o=4fgh;e)t?f5vt9<$A;-0)Dl?W=t!K<~Dn&MzKn|8bQ6)=B;c57k=%IuD~Q zda^yJ1wL;wT{^QM!Z&DsfBNe2{Er7R!2Q%;>dhdz_vJbFja_} zxG+c_P;9W=cc{XTRq6$km0qS;K8ZJd7-RZZxWQlH`VV7FUL;$+fo&$U?5Ks#gXP|n z^}+A=guiVHWtVxq$*_75qjx`A|8=@GCEtZs=uXLVrf1pGvcQ*Q|0ve%Cm*#l*3uUo z6n^m4{XN3sZnX8oD68l3cCV70J5pR>f#drLp0~mrE_<3CveK^AQw-Nq^;cE2SJXC; zGu4+dvQpA=)X;O$)^X8RbJJ9AFqA%KDgW5UnQNaf_ODrXCcU@Fcxzqw(PytH=JbZ| zUjo+$0{cs1ixQq*&b*G*l&U&ITlu+-N|&qdoSpfisqs4loe@LLDRccbD@UQVhu9); z!ys|PkSMk+5n5I8%oIAWIz=vxI)v2_e(U`jS{3#Da(!(Hcv*%v^r)TXz|$PF?9+CGG2SnmKTpApIQyO=ZGS<`_Zx zn6%ts1^Iodh-NC4q>AJSS<=!eQgUeog%pBAnzU~Kh(LG0obqSP)MEag&c3Z~Cf$Z@k`O~LL0c931R?nX;dwZ;4 z_EhownUcBF#UD--zCDyPc_3qaf7<9im`;_zs*C9(2Xy4SJ;qu;>CC<9CbWCJ<$BKQ7MuYodOR*5IAz_kY!zDsj>9A|zv z!r*SC!NXYNXGGH%$rf)ito!mD`pF(|n?l|-hmBVI!^fwI#(**}lFYla9jN)Pa5*!_ zzBkRXGu7rL*k+>5zVp_;=_NS5e3B_73l}2vKAid*RF>X&VAH{4samaq9swn!){02!=jyHmYzdA4eIu_3nC* zD@FoLI5uI&&k+#XiBM(-KZFd9kU>CUC|}Yxwfql>-4++P!Dk=8Ku-|9ifk%iV!_-l zFdie|;POUzyfH3s7<0kUFslrB7Qpl}f&>;Cna<@cQ{YHVB4x%sbP^5mJ$`;2XRiRMiduZChn_640NkB8Z!T`T=FALLOy<+b8By zAOYf{IaXMFv5>JUWFVBmtS=%ybpr}RGf=ON@Bl|}BMN@x4fA-TTo9rbNI;)#Ll^@i zOUN9Npo|d5AR159yQMy!kjfYK^B@Qb{o#=34nrBZ3#^4hQ5&PcjWtqOAGa_afg>gfcvB!Xs|v|fU= zex#IMgp_fjykmjBXS!)YoMCyGMnRx*MzBg&w0eGmW>J!6X}W54hH6cL`o3cIgCzBX zCAvosxLrRSe7(u%e1UZ<(Yz$aC_mUB+(*~dUBli<#l%6$$Vo-tO+(*X$1p%oJ5XOc z(oj3WSUcH7C*MS;$Xvh5(zw~iyxr0E6zoOd>G^e__w{hE@54NQ2=%-X?SC&N@^wKn zwLAv`U%CpDVM6t@^r%P4VfT}Q9;b!9%8TtGC)27j`YO{p$;3`_N^ezmUv&{Zz&mWs~A60`xcBVr}w-+wFi#xPVaeps(I>UrfmqklV?1*=K5NdwMALd{i0?qst zX!cjI#ob`bXHnKKV=Nzr82;g-^_!>qukNZh+*E#YQT*OX{y$FgS8QZ1Sjv3ks0@)b z;JdjSW${;(<^5Reu3Vqdy7-yaqz|nzvwP#__QlQajeQSs!L=a(GypC=Ird#yU}drG z%X6gWgKY+A#+gBKWy7L1WnOS(6uEV0*uP2w;4pm}XYxG3^ktIyOQQLUM3d)<#+_-F zLuFnQH38$*0sY19o#|Fj;tZc97{5ugrsOy=3tam1Yu00*ga2h>PT{Xlj8Y`==Lzu{+6HFH!iw$c80~KT5)>%Zm?pc zthSZBwymdUtX5nIG<8fI_m zq>1$_L5a)KPRS9bW#zd9OOc9;P$yhql*~8JSnw(5gf)utzTIekv2lPZIyTKe zFu8E5|Km>s8?Qc!=7)vLgPc_~E9c*|g)(UAUTpapDoj5HT)^!vkb{BF&RNLct_n9= zY*}Rx&A@wa7cP79!J@=+SUDKs7@80=a! zYM@hFptjuuSX1$SgVsW<%#O7MXBxu4k_te{zv&Br@&$v>ztoI*jsQ(~5H$jH0;4Y) z6cIEa{|;acK9IxU%0#0qZg+t+GG=TQMweiig37~a`l-bQRW-m94Df}x*f8$$g#a}8 zhz^{Ad`3JpqGLk$9o#aaz>RQw0}Sx^P(2KQ1+gI5pbK4zLT9j+Kx2>*0uzldp!4}4 z1|}Atk2pra8vt>I^mS3+x`-k{85rpy^khqjiav2pNj~y;bPz<*u8EM~E_?ydN#6#q z7bN2MK^mb9nluj6zkvW?FDC?8&?-19=JyIwwOIe4-oqXWKO+9aNDjA$A(R1|%9h|1 zTD`3ljmHkj58N`C>ZuJw|qye~|=b@bCH- z%^+Zh30(7=^tny?;s#??%mgiq`(f_VoQU;a%$gRlIHF;WU`X(uHvPxX-=xOhHgde9 zVe>-Cl1?z{Bk0{B$o@tk+>|2xAWZ;I(ezKHN zinK|rtZJC7T(FFEh#UcCnTDvl`>BTcDuo0ngomle5;e2ZwF@#eOLLSObCeoLDu>9b zC&}t3$a=>Qy8duD_-d2i;R4%=1k1Q^{ZKD0S0{CA2UQCPRoLv>#6#QIPv0ca$TZYY zH^e|YLRURrPd&{w=`cJUSPmx}~#|Pd|jeMD# z08uZrvdlhM_a!&(d3wZ?l+b6X;m@-oJMv;WixPTDiM?gXJ!Q$=Wl23S^Qbm4)4bx=0wx`(|e}BY6W2g(=>6i5j1(K2_WYE+1Bavd#5k#gX7G(*13yqA203y zc=^Em#r+@7?VCQ^I&*gK?D;nMxOnLhXyM{vT#FZvEL=D=clN-{83Z&7NA}GfXqjni zoNldu-&!}*T8q?DGu>SIzNuomvEpqVd8(#(vbt!ZvT&p{r@tVLo=arp68j5M*rmyA za`FHcq{R#5h4Updr}HO{ zW(*%l8QPyTb&xo*FNR$gOe^yRF-m>uMc#dR?v!kIdY(5U*N2+n)k$=I9BF+w*yPUu z<39sT{tPs|6KDo{7;5@F!sK~`>9cUt$H7K-{dIr$()iU~OXjCedn$LyHwr`GJcuv!6*(GsSE(C%*VEbR7>Os$Qre-_#X4rM5S$C#dy-BfrMKpUFqklhK z>rs?$UzY7)iN|=Q-!R#W3fnU!7(I#6dzoko0w!#p_h7Ckdv%h8q6p zul>EB-nTw_Uwi8O=xcZ@*!*6E&9hjCjzkxjh28@JL$P)*!p#5jH$3HT)@r4d1K(jS zBOeuA2Nfe*B|~RLEnj7oFm;V)Md_1TGQaCgHW)0n=_J!i=vs%3cZ5?(l*s z%O2Dy!KsL#mj2)-|DCgxd$x-CawA=a-E_+ng=W!g>X%y#pbD- zMx;&MyiM)eO`X;aZL3(bfoGzaS)LF^ zRv0p|kY2ES2mo0i4rYi8^MSe82#ufwMaJ-jAix(W3FVQHQ3t^ggmggk%n)CIY!4i4 z%;pPV3r4sX+!wdFz!8c`P=>>W;d21Y0}um?jlPHsu$DkaQMoY8L$#P;21gkl4^W0J z;13A-LjrJk34ukZAdZO66)`}NgJU8jP(A2L0o{N+cB~_OUw7~RqM4JZaJ$5Ezd z17S*^Pyi?c9K%>e90P0RL2N8^9db*F_`M=tHy>PhXr2@k>r4sCKpG}bA>SNAz#$HR z2oM{NhNv?ke+bWq{^UTk4eCJPR0>DX%NKzOs*fX}@I(xOXbAPN0E{;yh-LuYptnT~ zz8GkR0loBz;5&_fvnAi}-Df4Zg8>b5O^8rtev`4Z!Cc*7u54f^BLb9Rz85j4Ma*^a z@G>|V-%}Qz{dvE+^0u|dJrlQ1Jy*884Mp1Ip0ws)G8%u#sos!N_(?|Y8x@%=s#2$v zWLo4Enq;I3q*QXHG_$33lVuEuQu;A+YEkk^5eo7lN>YLH((bYr&eG1V(k?!-UZHA1 zNt%fnI_cS3dAZ6J*@|T()xBjJN6NI0lo}jralF*xbG*{6A=4r!(%9c$)744I(nb;X zIxu!pGj!KB_cJgLGBOJ?Gzrnu3er&zQCEyoS4c6?EH&4wvN3M5HQQ%re!$WCw2Q-e z57!Hx_E&vve~$FJpBnKZFR_c1LMctBm1R&%(_pE(?)=2={Dj`Zq~7ABo?^6?T~~2p zFFA=`1M9ft4YrU5_L2wom5m&z0?*O(>6ZBm?TeQWe!O&G?qWMY$<(Q)$&-!afHD}z z%v{(vdujjdkWQ$n;Kt32@Ba5X(Ehx_^4BKMOPN zPPFSuwC{+qd=z4M$5-pNuht*_y1)7A{N$njt)s$a8`%q1(q}EC&S1Lcta2m35GFdk zO0lHoyNp!_&+Uy{I*_!upE%tdHC*9KFLZgGZuvC9s4L5cQRKoZac33-&46LXxxdtH zu*?&TF2fK&Q|#Ff0m9&i%CzeQlu0yw8f)+%TL0C^pI8G{#Uyd*7zXVX^&JAfEM+71O;-`n7zW zf(^qGfoTEXs!-rsz8c-iPddblYg-7aed~}rrxo>1C3IZXWLQ;hQdvzPsSD_Qrb;|H{?#avv=_-%vqbhBY*vuS?y;KahE(TzI`>+gny%VWIt!B6cdk|BI6 z6B%G2jROh{^BBsYtp?`NUfDRxY#D4M9;F?~fU9;h2R@L)>m3;(;3dD?E&^P#<%g1t z_dBqHS0WkU@s>!cl32ART!IWOcs*Ozal{i_mT%0$At3|o#fyW*F53*o5L*wvg)*oa zJ5PbV(%Eptjq8&7(e2PHeFtT>8wLs7T7v@+Y7c%#s1r2?yNb;h55TpEb)Z{5MKmab z*=(Tvr?7zq{}S+AV2*9i6BqM5ZGZe?f(xd8OmG(G6{rWT?1I+Q11BQdr~*eBD6mr) zuNj6q7^2V`Yv2=Mal{M|Zrr-~bxl{QDh$lZBQK=5_J@?gK$F!RDYqJhCo;g>i@1grmz` zw49w_V;ok5gDJ{F@vuNN2y?&yNBAfJ7UoNXZ3c`J3@(Qu;Pr2ahBw9Iymerp!4=WK zvVgrR9^`J0ayN%ph5ZX0+7ir~7PEz$!@`XrL`YmPy#PFcTMZJd&COB10DB_gsPOM8 z(I#?K@%TL=Vb|tHA79WX5K_1z);d@z#3QTXv9*oyH4&_{hm1xW8#FHG_3HX-SY{Ab zKt_lIUk*&ry^9>whwy-0G3>|Y?CHFjk4 z#OzNf=Tqo`Yr!6~2q?43T!Mrc#DvB1=7fw7Liz^*{oOj{qlnGp4lN9J+`Dw}s)zq& zOV=mXLGR3B=qlc?l%n3KCp}jWy{%yRGr{N=9nEjl<&Ve`YNQG6s)RxrLY^!kOI{{M zRv}JKDMDF2P(j&SPToUF&RbQ{O-aQ?LDfxO#Ya{pP)Q?R)ht8HK3CVfKqDqsHL6Un zxZ0?`!l6OV7ktThCif-9u5y zUqL2VSw3DvDML>^&rpkOs8MdDS#PS-W^H)P+48KL?N_cgm%VI%2yyx?*5`go$dk;- zS2;1=1@Y9<6nbeYwK$noo-tURLn}#sofrKwH?p$`X8NQLHRX@)Ego+x8EGdE9;lc& z-Y|Q9-y*=r*GCqw9i9g$0ZhU4;Zi#ifD7o#{<*6M=dK<4`1Rq1Z;l{c10DT%^~n5{ z!*iDp&R#k=cli*cA#?fL6Kmg}UHR_J;@2nVuN<4bcx2|np$``i&t5z_cj@@Tr4yWU zCs)rLTRL%g;mCpc!|e-)aJ4NQ-1qT7>xY*5_l?z)wdG@#B_m};BjkeNlDt7u?m!_h zO$G(l!pVv4%K@N4qUI&g3ldpHNdv_xgC(g$C8;CibkJ~VN`Fxz6}C-C3+YS=>Pijn z$q4Pr4q=kxCK@x}wdM`irqW8IDJ7BgikN|h#Nj>3Bdsa@jq$w|p|6VldMZQ54x}!e zFJ8S;KJ!%`dtcn(p6G%4Fd8h&OY)+W_^>O3hik$HD?{iItDENdifI2L&gMy!#p4Kz zXVErKqOI?Tng1SOc-v3^Ziwj}AFVs?N)P?DIwDQF+=j>=!zJ!)2=XPl4uIJv$G$to z;!ToS7j}FZZ}dFI@I{>QYoaMF+kT|fbByfWkzo8FOygC85i=J8Weiw(7K}VwTCN=> z$F4KW>2|R8WheQwb_!SBG_Seo{v2d^Kicsn(d{+StvA}LJHos-)Q}pYOA9lk6P=y} z8eMYKYBEzRgVnEfjRRHnL*JR9W8SwcM-X$`^u) ziOu>MPR7Ies2`Vn4s6&Yb4_9fO^jct$^RfjID+YSW7qz`jD@J;Wv3*nl5?-JO}~!Q zI}<;SMdYS?`rn2Pe`_2R>$R<0Rf9g*RE}Dd44abQSsxSzUgO2zTp|88mwaQq_{MbQ zAM>Q&r_+C#4F7h?@|y{*Q&io^P9sB_f#r%ygh-bNHlDvVOEz^%#5OgX9((@|zq%1~ zQxyKoW)^L;cyy(O_3<22cx&pzcn_BYKW+zcPY^b;qQMmhf^8EB9(}S4O7OYLfH;!4 z8JsQtc?1HGR0XTaBOlh*)F*ss7s5(oh&&{o8Vp>vO%!0mfH58o?KqumjqcdEj`H!_ zNjPbHAq>oqgI~D&RSY>ef&ek_H{fUXcJwiZKDc`bgAeSEJM^H^rU#qq4NN0J8Q~7f03<;%*hv7P3H-re z?zE^MxCFKcKvkSAb!L9&Cf{hWbco;_6bs_8k0PFX|_{|iE2Spo$!i|33CPOG@2sgpbf$ccG z0$WJJ7k6ldi-zqL4vfTuf(@o%gCW|auZz1su5~WKMo7pEGbY%W;)uo<*4Ybd@aGv` z!ek8szZhGEXe2++(T#IB-U4p@LP z>o6W~3;DXu!UtE}B&ZP?k{p%e1;u>Rt14{ryunwIsVu(c44RMbc zB5(!00T|x-ldWjV!IP zXBXjX4YRc;V50-50Ui@=9M7ddx1;ahmeBts{w>GahW%$^U;R%Z2Ire?lmVatlv&zB znRyXoR*1A99+-h8s+JkTX~taNLuOUOFCHO3Yumk)w|OaTdr#W$sbcg~)!;u>>~6}K zeWR#&PEP8OG@(I;P%A^omm*|K5mKe3qon1cW#mH?lmir${S*~_)Rg?xl>ud(T>R?vJT3s zHcHyC-?bCOMQZ4IsA+ksr~=9aD9VPaDkf^HW*cZ0n&?!S>eO2rwAq`TbhEwa=X%ZG z?TU}{WpBH0{q25@_I#KY_97>yvoN6#CjO99LA2sz3Mq*~BK8(0_K*_#N|P8>83PTl zc1zJnD`}*)XzV~a#Kg>;Z3QP0pv>acLm#gk1e960dT8nEBg@|$T>xsib{N=Y{_8{Y z*AAiM*XScA#4(FsBLUNVyn1;4>S4f|#cz(Se0Or~`_t>!&#nIFtL1M`FI+n@cljvL z%-p3TbC-|JUpcXOHo*tTX;p)y?_6MQqtWaje>-VNJ&VGbax}&-5sKUiiq8f z(%mt1cMmf#3Euz0?>aMp+@J5~yPjvQ=eO3i&f0Tk*EutD_G{kPwfEl3&)UsN-_A_g zOi$WOOWHy#aVs@pGbMg2F?u~NVmb2OLTKP@uUrsAz96Rby~%>ZQ@yskIGqH`g-Bk^X_88!=P)(gp& zvyhH59=&%9P-f8Q2CNFx?*{6~wSJdtz4mJDR+pPCF11)(f_3wL7)k@geAE_&1@yqL zRIe-eTUYR>Hh-OtK(moV_Z@{k8>NQZQm@rHU#PIZxyJiSo#&YvPxTe9M@k$Oifj+$ zS<2*?OJyN6n6X-!{+TKh0L|xH{7rYH2i;YtgS4lEwa5IfqrI;Vd#QIi$TwL@G~boz zu$Sp|QRsD+?{bvww3qI(m+5nq8*o+_^}GT$=yItG0)A~}y6t3uW}3`JTkl+KFcJA_ z$X9P71n0**VFLCgcneUb$y}(#lDFSUV$fB7(CyNo8^jb}g_ZXnU*#-RU@ipYy2SPP zn#hM+vcFB00A;$2W!i3uwQ2Ep-sJAm=4&^SuGbN(z9yD(NjOA|!%R^87LTYg8;=bO ziz6#r1}9rFFK0OyO9jihY7XYHn?X3Ar=-v}oX^Cr`^e6nk6R|Sd)k>KMcZ9L{cdiq zuT1A2pF?HPBle72rswLNt=rx>b^AWHD=qZm?H44`T$fgPuLI4HIQ;=-K$RgXL|`NX z7cTltN%_png>I|llMJ7doqv#gnu&qU2T9F@)HY&NGuG$(mem`g@{1Lb(g8u^79qh- zUhy?XZ7j!a5{KO(n;V7GZC~7%tPqA*%i7nfA{)KNS+=bkH_mxAEEf-ve_^&)hOm2R z2;w{$ZV{aTQA!YQKxQ7nBbuhcfd7aFBD7KYM5Un3PNJ4NrU4+KV>md@gS>=#{)P`z z0SM7}pcN`M(PBs7C5(*78LCQwxMPq%y2wAn6Bz?}7e-zr0~odVaSbPYgQyqOA_(i8 zG3rSwf6)F|(gYQ1&8O7zx9ssVoJuyx-Jo3p?S{aJ@b4y|CrEA7E*+GhtuYM(NL zAxuI73laqp_Hsfa#6TFv!mS|>VkzL8=*Cfc_DF-<`y*R8&=2PJiOc(>MI3QxP@8to{&C_ zUt+qT%*3S0%3v(W<{-)CCdK0>Dc~x4(M?RsUO?5HT~&`>@haWr8;q(q*%fbc$=u)) z*Wh8*AkGH?z{VGQsPVyp^7`la{cV9J?AHxfB&T zA09j(8Zdv)e=fvtF4%V_$a}=cVc5rR$lG?v(`L}adce)9&o?w!iU0sW07*naRP|1u zvqhhi8Q7q!#fbZzQO~>MUe;qE(s)>oxS9_+n+`e}gEd%a)S0T+TU>9m)$VhHU6zdd zJdJuh40^o{h5}87Lrf>5?k*%dE~Yt-Mwz$y-u&gFTIZtD^vn2s$FvAwp9FKB>6>O?3;naZ$t5B z1JOo(kzYCjfHF-+;(#&(c30ZWb*5EqiYY^R+} zmjiNavzBbRBid#q(rqU>?4~&4et7^8$5y(>UbfE>NwnRO=(sCgZ!G*xkLRl%cY}%W zp!20^|LbUX{dao<+NR_=zfhkX#xkQok z={4bxw`6~rTy8g#YS0mBxX#sl^+M}4wsuW{E^U#Yy5bO0lOuD%MMTJ&U%-`{JCK7t zgp)Iei$9N(Kb?&=i4B#*$JnPIfw}jN6g!CVonLYo-n{c}+p-pCkVRCsUFFxR=i+?B ze6H#|eeOAy%yWztjF;OkyKdc%JJ1a6;V}4gUiuT`#a8yqv)otLMRf_>o`(YQhtlyR z1OBN|qs6BUl%ZA3 zZpRL`br;u#V8s7o)bSV`OviyT@RFJnp$Zt45pbaZGv(@*j^HbV9|BW8gsYAGd-mVM@(;dPE3-R`xU-wf?giXl{MlUrH*1 zP*Lf);7QFV^&kal*N9x^i7fQDiN6p0zyDy*s3`~t!ZlJ2Nh38-Zx^+yQ*@(VGPP;y zmC`uo_=do(rdD!X4DeWBY(f|c zaRk6+XiP4c$$E;z- zzA#w5<^Y)i-i;x3V-EpY&|CYX8{m||!f^~k9>9V+1s?<+xidQlGrRaj3}G2dSjFtG z?BGVXumd1Lt?x~3Bdw3`983Z2?E^63C*bp1+Z|b0A6#4;pIR84TNz#1oZiALUN$frgg{r&>RCmF6}21b)2hP_OIrPQkW>`$jzKV)8ke1e8z=iYJzlErE?O z0EO~nMtL%#9GOse*->{`P&&*^S}g3^93nS3)vvLusIc-Yv#_eMG3oKrSzcuJP-5~| zWAwekna1=WqP4&Y*IIQrEl_G)Zh`h!NZ{~z^yGTq$w<-At-p0 zpI1wOU!R}vHXpAsAJ1K04qJY14`IGQF~NHmg=3|Kk`%xCj758lMY*G6JVxU@ zCsPCG^P-nvI#O{w;!!G&hXjxfq}T2zZ9GWX1eeo8sxJwlne_E4#5QOKpaUFJk+ofs z4Ft1OnX_A!2TmpI)8hTw(u3METumAFY3Xit@%H1w&8mWp%46HCD%`Ft#FiIg$_jRh zbGHk!H}f*LXqJ<{m7Thkm9m?avYno|o*cUz7r77}x)>1*{-#B+FtEVM5RZvqxA8z% z*q;*Z>p0?VKj?1L?{cTt5!^|py$&XQj;8%iW<$>A!!8yhF6JYUa5NpVHy*GxYQL+~ zXnv#K)K8ENJ^XV9y`DFX)IP0M>;|@RVM)#|A zPRc(VF4sFLx4NtM_}v_ZeFmaU=VQ$0qs(T)jHiMOCIa-(UN?tauMa@{ugkR|ca1@} z>ktmyWGVO4MDmBRWIe>Y=!^W;LxdSfv=~danMt>q$+VftwwlTQye0NtgZJ$%rENZdbbOWIAl5I&Gyp09NjbH(T@{B0us zMvK2v=|ZMBeYPZHi9Gw$t3Wd{P5KgbT0(W|Z1q>@8&nwERoMr%gnEo5e(8%qbaR-D zh?kf^Fh6%ZH)jGjS0<}K8WV3M(}e&wRJ0&tlYYc@*hf<07$#t2(P?tq=KYRU4bCtf zuWYrzr}2Y_=LH*m6$4WtiaQf^p@Q*7hw{B0^TGqY^e)c3&(F)(FiQR6xH7|kV^#bX zp5Nn0IGQ3IzJJkb`oi@twi`p@=Bt{~IH%u~upvVHDj^k1&OIPi>=Pbf$yr;(=%sz1 zX_DUTf_!_2sONV9={jEN!3&qhI8;~IZeT8GV_9|gxlGA|)&wbUoN^TIdgA!4v@wJ9 znWzVwU+X9{(>r^xyWh{eDV$V&BzoQ}lhX9UqZ8sVGCsKm~}uv_vb2yhSa3 z{4Nz`XqpPVb@DEiGpG{FNtaIaa#|iLkr?Tm1B;5K4$`B`cO0$ITmB6;V)G3fY0Oq%4lvXs066x z*r-fH4H>545e;RIYl9$|*^Q>ok=LC=-+M=z#^yVAz*R&U!5sEt4!dBH{@K;u;pwLS z@trwN5NH4^A`>O*NtCf2@P+3gTeMlUw`fiG}v@`L^My=Kit9f$^rX zxlZ&<``BFj+$!u-I*!2u*1%vtybT_~!;u|w&+Nv}(fK;`Y|F@W^Wb>bz*u)5y0v?_ zzJIi7eChYZa^3t^!xpif3OxV{utD_H{MrP1y6?k}SI<9Gzx)28zWvMKWXH-58cUo# zpnyVy28R&{Kk!K)-$?u*k%A@=M+t;65^0=5nI;g%H?ec$OX#M)->-kvzWi46wfS}X z@Xzt(?hTk2MOnZf&EY6hpwNJK3ABVZ?%`h_zrTFZkUK4CK84ZkniCDvP>T`le}*ec$_@4dpNd6 z9$5u&B+Qfdrpcq-#802LpHySBYX)5sDlQoWGVleUc%$irBI)=d>Dgm0Fx^9)54u3- z&4hAgMmcbytXWaFm>Kj~+4MMtG}td)WtCTD<5A^cyTNn8ScJ}2fi>_3Tl6i?NL?-; z6;>OGa|XN@G+0j=x=6p*^gC3KC0MU$69gOBGbFRvOm*L6+~OlVl(b;l0!d--LCDjCqik*5k}$dy={JC<~EcDzbO0axjl_ z_a5hCpA_Pr79Z4>5?+)OUp_dfE#H53A6rv~IR+YFnq%8}RI>M=2y?%1w=^H2nWCKS z!fargZ2+2_w5^;}OitQPR?22t!WzWQ#6?2r%u@8d<>-4W(V<}Tk$$rgJ~N?SQ^6iE zXM5b=nMyO(Ak6eQn04D3ciG9HtM*m+hVEN zVtKRKO0(JOMw69Blg;&3yBl3@x**RC_}?B5F&>Ywn2fnI7HvLo&#=u~qs~$Jlcn@~ zGl@?YQgt?p?H<=ggZ1Yl&0wbVLb&O4u)&0%?wHq2w8xEMj~jqBXfMq{w`<)FS6Xcp zTdWmY%%vOjg}-U?{LtcSHWF_$x!7nV{!>@5>9*vMgIf39%XRwV-*sW~wg6}|HA*ax z6`7wXUU+te{nb_2!il?9h2^mVeYq4}sW_@k0#zYHSEI!EQl0h9b@or%JoTnx{Z7hr zLE6jV`g6hB5X0MPD+55&=cL%@B-egdsL`CK#Zs`-TD;RnqQyd_$y^v#i|Kb%=mWQu zsc3_-NTZ2JgE0~}1A#K59xBs**8p^W8}oJ8NDR3tqTLkw?Ju@l3UyeD^n%i3DfPub zq(+TBN0K33^jx+$eW^VA^XniuiT>0Q{&kJxw+h4WD-5kF9Q`+i`;DdA%`Se^6-rZ+ zzb7jmDa4!1&5_K_nMltaL&qL)juC!PfjkUfZv?CbyduY=@%Og3z2oE#OS8u z6zVpDCiz-2zcis}bn-3yq2uVBStUXfM9-(xXoUuuXT_y$2 z9T`tAUTW+T_V~>!-^8OZ%zAm0LuHXweUtgx_65y7PGgebU9v&|?n>mce9*8#!lri> zzVa)%r<*cAxsCY+OV8tAL38SOOw|C6eHk!(!cYq5fhP_~2%tb38Cemh$+1WSX($3i z0F3>R4W4O`la?952r5`m6Evj(@id(^s2|}Tn)Cu4p!MNI|A2RCcyR(N2=O2dooFXe zmiiPuh9Me%oKgif8||$Vg@dMuP!WOJTUygdp5x3&g^0mRT3i41h`f8&XgxnU(z-#r z_WyZ=i-H~=pFeK*ER7-Q{#5Q-M!U}?1dM1-C8`GsshnCIiY#xn|7d$r^e8d!eqL#1<(n^WC)c_*A*hxzyiMtw z+wT0<@U`$kL3~zZVMY4y&UZ`L&YsB+wI3^Uiu2O)Q;Q#`bPRu6+8tZQOm>epl|CxW zDa}aBPl2~Gi!xL5Qj@ZiQgWg4tlAINJ!8%5xY>iF^@GFZE#lN7rsreBgMx~r)V##> zf|Q)%()_ZAImN{p1z9;Id6^~A_iNJXI%=0NUBshV+~M-V_E>XILuJjgq|B_)gt+je zgxHMa)cmy4CuQH7-;Xc$VTcRFqs2Y&kx?Kn7%&2fVm<(rp^Om^$4Q411c)iw?)%mD ztMu8k_`DqdxQKwb$gtF?q{8I#7iEooUsrHbyN3(gr0GrkI0hn@iQ@+l@;ysYNLXd5NjTx%pM)Z+^ZR zobK4d&uzkXjHH46qtR7dZ&Uw^(#M5a#aS7J8EJXxsd;H1em@>xZrLJ?E$sAvYpp4% zEXyh=%qlE`8c|Pd^EIsG`$I7)O&-Zjo~B0!qHOa z!jH=5K~5f`A_gcrH%1{(dJ#`LK7SNfAc`jd#pr{g^Q1?4u%MjiQI^aoD^3OrZWb+8 zR?Q0+R9Vlf^DyX$Fj>f=oYd$eOc>K0*i!7-z4gu;UPN8tLCLbCWH}h+d4yF(rLT%e zsqhFZuy80d(5bU9sjx69F*7PNGhAn8)Zt_|<>k67z+)%K=PAJBBg`Kt%o{4q8zs)4 ze33s*Mle%WFk4PAS6-;_vT&)Y#0x{!ItTp*m)mUsG45tCoe>qrFnmAocl(se3KSqhoY4u=`n%Z0J4#V~z30cKFI!UQFdXG#-b zjuHqnAjxc1q-|AY>^#cceUi2NBpb1(Ify;U*{R6ct<1wdD!@H1#62n62ac&J!9Twb z97B5bknp?$|NP;8?E_qGIrdpO=Gpz-nzG%e_jkam%eE_vwknFY9u#br=WpE4+bGN1 zD9v3j%38}$U&~M1Da_i=&j6;`$VgmGjax~MT26{wNsL@eiUM1R4VsIF)o6UDLcPa9 zp$T*!^>Z2avLA50+v{xE?_}BUXxV3P)@NhfV|}~d=Jo*925oMGjk(^PaJL z01etheKo>xJ^J>z_q9P6WweLdnD>=_XR&%y_6Ad~4r}3Fd&zby@!z-kn$1CCk?VK7 z)L|vvVlD~VOpAp$(9BOm-Yy%dQ4eLbyHb}etVSc;X(u=0syOB%H)t!_Zz(unCDdUq z^79t&OEu;PmpJn!88Sr9=SW_tP=*j@ab%5S9pU;LoOM^(8&!llu1ogb67M$^>M{|j z)Vq|bB$^_~n!|cNhm|4Wyl@zb&;C5K?gf+?H~kYOrx}k*QgqK@$TGou>d>zD;C2J% z`u%Mg=P6#(&jMnPIhd;%SU;ddzo9OUDg9HxGZS2E?}_9p|Qw#WsX^Mk;7m?$Yw+-c2PSU>-n1;GjWtSf0Vv`l(BP^ynYnB zcoZ^zWYe&y{us^YKE$kpX4M|&Ri5Bep5eJP&#kb?b7e=s6fa?Opc=5E8q_0c*Xr1nqK;Gn~9jlcs2Q<8){^0B=B$zb$q0F5>?|qI*vbJ~bq026aLt{|nHZkjlSV zXAnxA+A;C`D<>6${&fbS87Q)}+4iNWCN|SAG&VFUF}dtf`N(_=aK`Q-8c=3xqwVFV zmvQNFe&HVJMX?RtA9u*ZUE}ZWKh2Lwh=C%hg<+i|KQ?jT_?Yh+X#^;VP6@vk8xj%| z5}ptqkr)x55g(rs8=V>vn-*E|yr>J^xVksFO`KWU9bUopzxWD}6ciE@7#4poG9f8C zF)b`ME;uSQDk(NF+9kCx^mF5*mAxL~(cH@Jc>B<=nzv6c$_`7U8T6$ny zTwr`uSZYE@Qg~o|P-I3#)$8Kk$>ufih>>Tv2os<)fxqkk<^ka+MyBeD9z;hax&*~| zN2bS@*FK!v=-a{r%0S>PC{+Xd6!ed#imZ~D;Dq3S*uZ;9u`yYxk6u3-m}omV+<c;+gUy*@|L$m&6J#i54r1 zKe#6KL|gHL#f{$(&FXB_=zP1u+32@}!7p3A-*&g!+)Vpn!Ie-KK$)>H1Z74eJtpIP z=Td{0vceX#!xyr{m-3=ki{e)b3AJS)$&g+F%2W_uAcm*f!HWvqi-*|f z5B6#w>^*ycd0M_xRkBl6yj@YW{jd&Je_JVbIjIhKXiNs^ z&4n1u2J6oT-LyA3jDey*kC9MGy^E} z>y}XSZHNMv@3B(ox&!mHCBA9%zg1&@ewpco67y@=rwIw8;eL9VwMv%p!Nqg;B~WFc z&4`1uiLO%aTx%}XmWqm<7+aP7;sUZ4ZOJ$uD=v^3v`-EKXtT+bh9OQvjuOD zz4)-JT(7-Mqp4t{sc`$9i+%PA!!B1k@5;28BOC(`rti178cl^jk{R>70+XJa?nt!T z$P78jjXEPJ(`CZlWz5}XBG_Og^hKMeT3w)2jx}41Aw!g*P@46HDlaT>{7YM?{svdw zRgQ)$f=wzSt(yGZhCDr{qO~Sh^RLTfi*x6*Gvu-|WV6e}Fo@XEv1rhvbeZT2#m)Qg z=3|4KNPe?>t|Jud?gOKSz3b)MGAnJ{81UxiV6*98-+Y4H6W_Yf7C#eaHwd4=s>5>@MEAkfh}71 zXb6R5MxOS^s{FB9kHj0C`5${C0-eO76`650mH7q_MEIu(fCeAM`^4X`#vE?qz;qoeW`hESgxb$qF zka)j)iD7ZskqLQWiQ%D%fuV`PVTqxEF@f*uUe9ezZR6L6=6Y*BJc>$-^pErp1`JJ3 zPA@2kNlOWg4EGHWj!KJq{N{20bjJpMc8|P3`nNhG5Pb4P_{MJx5RjWq5TZZ2G>bY<;o*WO6B43dt2VOf3dNn>eNfvr>R%U5#ZW(?V89r%wZXpE@ zo=dRoDc3nIUV0rqHXS}LJw7gDejW>9L0b_)ClLWx5rF^^fqRl7NeWWgO0t=XQaK7@ z`IjV$l_ks7q$;k-R%>7Uo)ZYige>JmuH_>u^TIw#a9jt!5<)Ww$^g)SHnUZpvRj$4_c$9M=HOXA{&@l6 zMIqru5g7hO(ZTb={n`RtZ9cB1;Gnt~UsFnaRz|A5PpT~^J%51M%ZKDw739~I#21yM zmsP}9$A*7Zwg0jb_o5P8TLCn)^Q3J1aq0G>5-{*L?N*fl)@u|I_m8> z>|uxYupM=`MZ4Lcova4!%?E6Z`|bkG7!6q89GE+p8GN8afRFl=$Y z{>@VHld%+_%vWQn-xe~kIY5_#@_>u#i08FQf6ciN-G%U5bD=up0k9mfVv7xEA<}&| zmxdix2JK-TIq60tu?9ntrrY9h{I1RSOHZ)XShCYhrss})m!&MYpXzUke7(W*L5=P0 zl?$&`*k7pdJiWyJNS3)m8ffNxnK)gEC<>fS52fg;;V0i|C)i;l*y{*$kz{%uq+9NQk4d!2Osw5XYRFZk+g82>*8ioV z%nt(|5N28|MF(9J#(mU!ot4{c<@@YpMjWJvY$du3+1vCkv>EZXn~63Vi$1?0QmM?9 zFU^uF%9tiXUoOL3tH$?9gYUZr=NEO3FPBBXUY4l4%G;vD)^S_ljhXsG9mNOoLX~_h zWgN^!{Hlq}a`p^d>MSUA#`8&BH|zDH*IeI{UHT8~I}goU2>Nx{YlT~~R-;^+FS$4# zveUh1XPM-?xTmCvx#@w`55?#P&8s*yacLGX^CdB{RxsHkJ3kVBiI*L2>)gZ6&X;@H7)c)kH}obm?*#85RGny7<-$bT4Zygxmj zc|20Z8>B_VlR}GirMCMoprLjN$pG0-q#&dq4Is|QA;*-1Knb-ENQ)=TarVhf%Ruc9 ztsX=u`j1|n#TO8${yyXZHBSGm()>ZRdD>J)fozbO04tk-oe49bV$E?x(MdxHKOuI) zE>QL~{Wn2`9{!zgMB^BcS^#CBrJ;jU@;G4{YHld-Ukr*NTtX{FJ<@8R5e!sFpg^6} zYR|Z(pa^8x!VPs#bSCDXuV6P;uv@KzJuzt+;YlfB38^uuxfw+dQ}W8P zN-EO|O5vn?P>63tNI_*;eRuN`W_kZ;e+@rh{qaF$T69oMTxddae8$6q^7kcG?+PA1 zD|_;)_({o=_m5hJey`%Ew+IUjJ&lD`Wg&41-oYu6NhNs?YbsuSD6f5$T3mE5DKRKM zI6gP7=2O+^ayw86hBAQ#lsOtdID#ocBL{~tGkkP;qy1MyWlDxeXkuJwT48KndG6z9 z<*z>!J$(|NpXDDH<{#%DmlxMG@N*qMy-AqC|5*Wb3PYLMJQ(dpe@n{?icEA3jtdG+ zNy@D#n_h>o<+(jF%zJ{VSc8N=^FLairWGdy#Dc~X8Jv{t6CImbUf9&%fIZsXf(^GJ zeCKd#esAPk`|H?@tb1{3_u|rnqf`CD6KcQIj4btTl2#Tmv!9yYC1v0D56cRQ%uC66 zT3Yp`{MnPzr)5QtO9~&CbicU7N-QqhlV6Xq!#8>zkUDVSN)?` zuhWZ)LgHh5BLh;4(tmb-h3IDd(Hb6^*-o<)Pt(bl68Qm;!A{QqM}jnhB|;4K*cxSY z`VV^M4|?v;5E!hL2a?Rue(#^{u0L3qls<@oRcG+s8}&vcYt8>)OT1DD6muh!ad{B~CxXr{r@sM*D|-NSMq$YCxnLXVY$V+1`_~-A5%`4+}Q# z=d6}wt{0|l6s2z$W$YAYY!#$!<|M6W#sko7AQr!#7QLJlJ|7zlJ047h`_6><&fN2z z4)&V#cOCO_8uPLr_i~s7^RORtu^zU!7_c!Jur?mDHW{`x>$5WMwlwUrFzB){?6pGN zPyM#W{kBHEb_QUBE=IkMw_5I8`);K0QCIrCuEb|UsRk?MK`-5fNUOzohnYCL(J;$? zKm9h>8%=g<^>>wiStyZhFQL8ECn0z?IUZN%EG#b7DC22+vWCc>RIvfXy_9oEv#7UK0L z!oOfgNj=UVhFl#s;-lUwBi=V!Z4`Q7e**{UaYyNX6V5hW#&!d)ZgbI23(42oV$ZG% zmMQV1OR^*g(&dPpd#K3qN{#E|HI8?x94}?X-YQ6aRpqVMWNgyod}DIunW6Ga^^32? zc^~t#l?Yu=WmR$I5YXU9U12#F%5>??756F7T5OsqcCAOozll0u_tdl2qz#7HmEQ1Q zs1-#uOI+B!C`?gNz-kz6->_J{YCNT^+bMFnjE6mmjjn|8Tss|OKNH(87WQxKoNcVa z%XBI`OqwKi^FQ47M`EtT>j6h*Nq;=6Dc&y$)=vq#?{==%tSRKJNF^=FMlGt_%&Aym z`Mv&}4<$4BtbwmeKyO7tdqqxbUEXj*(rr!LwS(XOtB_02&6t@dFY$dt_?3xW%<$gc zD0X)ahgrnpCJ-{94#u?c{&aw+fyFU8P^F9GK^KN_+9*zq>IJV81kgY{FLl{pWS?zn z7!5Vl<^&*4>!h&-)O^|~jYZ%{%R_7Q#FKSGMbx<6<7vz=Gl=SbIza&%${>6|!wwk! zX`&0YLWE|JoF}*dk77ul_J@jV$8r&zq~)Yh5$#BQbRR#rX(;peCQx-LT%c8W45>;lCRaG@TD@e~@$9ODtKLK^x&o}K;S{;8hi{Dk1REFNAMS@HNBBoT;7dk%^~a{}>5-ZB;putw?85lc@c457{0@4PI6bq~UkiS&tTexf z=#aQvV4R-u>8Z8#zRB^oKfk0G<@!bk`Njt2J<9EwsK-%Ou;fWBd3679?BHk&i+pA< z3u$C_vGMua0{_sv&Orf@*=04~>IWBRCbw4G(Y=q~)&hVG!m(dv+fw4(}G0FasNxl&YufD$= zTZUbY7U#FezBa!}&3_mi1NzGSiszr(2WLkYCdU>>&~roRxxwL?z9r1;4tZ^Ib@cJO zr-AVyA&F7Rh1t(Oy_s5_TgI#pPLIF+_BE{_-#0ugBrf*(x7vxdp@Tnb;NChl!XcV) zIEok&MTD^Ve{jsdP#syd2@SSR9+~?yJa;s_a5MAbM3;;HDVAzA(KuAH5bQgBAy~9v6!VH@l@EuY(Yuhlrq` zq-d<%#dHIWj`!D$>uil-?R$`)scH-AenLmDU%_8=oySzTMIM zZ4dLYO**~q^!nM1gt|<{c+bZB&j7^4`OhQ;&8OXiZL62_qE}&$q{4)?B7m5rjk2W8 zvZU*hwaSKcIKn@7Le$* zG-@~2X*JU7GSlz10-!PIvAWfBSFayv##XP_R=3Aar^{Be*+T7`f$V#2@eexUzf2W+ z9B+(;m`}pGz+sj{0Y*Jux;^e%J#Ly^F4wypRa$K?H<(Mo9O-&f@g@s#n6cdJq&VWO zIvIFW@cMw$R>a_dyac9;3J96!}#eZlCy;0+PuFUmRk?pbUg-R*La*1;#!gQsgbmbC&GKf4= zECSIpsAtMdZ?3Vuxz6%Zjp>Izf4|e^*}&^_AMFn#>7z^p? zzMMn-I#2hW{@e$a3$1KI%M9w<>{m4T;bPQ71UjkGFZ86ysC6(UdnGm#Pc_w$7k_- zy#|F7<#pTj6WEFQz0GMH!~$;55cih|_$g#erHHXmqmAEiMAQXp4N&K?xN_=0ItB;?BmTa75|l#&sbh7ArrA(u z^w9c-kO!^j)Fz-I@VF1LUFI1f<{zBhoJ9OzQ}l(RvO?#EC>xUTE?R z;w(bkL$oLf?2?EU6zPMDiq=I0SJXdz5MH(F}z&O4#ci z82T1dQs|W!=Nyxm_T*LbW@x3N9?t?7+>e5yxchDSn*S5iuBNmprQA@MpQM1tg+0pM;oz z)CAYWVArIe__Ey3&CR<j?c^6i`<)=HgM8zu;dLZf69{I9AqHP=WcLZEmTE|GSjY$YEg?p$?SME;-t9l! z?kDaKuHZUsd>4Suvv`P^h?b=lsvpdowUNGSS~=KX-?ZG0#lxW60fCen!#P zIc@proP;<%#DsiRdG0x*@?y?qC5w5w^J}OvOA88f0>?0MDzXcy^N8#5Na%8l>vFT| z@|@GSc+{D^jU4LMh_Bd2*r; zlrKI~mwSFg>AkM{_uED7`suFum*cQ7RGND1IMJSl_#%1NQR~GU$C(h%3(+vR z=lT0D3b4-$cAvqq2=}sd|8?2H>-z_9?&IH<6W&!2-&YdfR~@{2MELN8__3PwxrXxP z8RbhY`O7oXryAnNr=(9$55Lw@zEaP8t|5G^#=n2E|Lzg)P1WA(3M{yvK0L+0tKNV8 z2=}rI`=W9m>^b0vOl)Ha+l4ePLNwHrJGD8TFoW8 z?@Et2E6sRcTkzAI^t?LgsMKRC-)$o|?0jX)TVuvgbKLW4pPhUw?1*%W_q!HngMmP& zrNofEJlYvtQS$w^(tUR?_TRnOZYl<{&6gWouaqu4kv?B3fvS?Edm>H$Sc zUAg$VG7(gnDC(gkU9|$^D|I&TH+|OT{i4GQ(hJ&4aW+V8%1^n^0lY|@KW<%UGUaZw z;BPVIX)uCDx$1P;nvD26%tV1s>h<}5>+{v?3;fXL{-(tVmw$X|pumV(+mKX`p6%dzJkOY`Gwb$`d}9FG61?&GATC18RPiRMe@*vu)_a@bGaOX-xUp3Od{}(8Ak@$ ze^lcSWZf6VbcflMTiN*gghUqQm2p?Jx8$ypq)iSbEl3g;1Su>0MXMnRl`kB8mFF3< zSx_ass2U#B8(zAvysT}UQeC`q(`>ia*{!iWZhv^g{}GA%M>_c*sf2$d!j2St);LTi zd2b90t4_#h;O*_V%*^oDtSQpA7?IoKqUzI<8fazv!5g8yH)7r?J$x*YUn)^kAoZhA zwy{KW^OFl{An$17=i#3T(w~EcLkyaPJ07j6k0501gvSnTNIrhlP+8%4;HUY3kl8^0 zimCzNKy(!993=!|PKM{x;T);_1Tvs1+SpHPi#CM+3r(nf_^SpX(>akx>)HH}{y!S> zoIGU<&tNH3SdwoK~_JnqswEF{Z(e5hkBrpwLexvWlrh@T7q2y<`*Z6OL78I65Ns#qRVpY`aZ4_XYhwJINZ?S$gkvrLZ65z zh_rqA=I!G00tvq|G|-S$QRtEs^IXytw4U@3$NHRT6oMLWEg1BYSWaN3#^t7!lLcKlnAWxX?2x(Jdh@`}v2?`LX>! zjeAGGapdly(f5Edo>4g-k=d1>-Vd!$VE)-4{?m#f{DP3-)y?4#KWkm%(!5e~y^=G% zl2fCLO4|m8)-X6&pznaxMmX#t{`MYwqRSvlo6 z1=aW@H3g-O_@xYZCG>e&_4!b@co}uM#dNqtO?de3@^jk>@wtf!cwH0;k`@gIlu?jK zRuD}CnvoaHl@l#dmU^r%S99aiYi*U!`Vh~d+hk#gn59nho$Jk(*IR6~x}6OMd@RsG zHshfVNc#>`!EIJn5uMSj#70t zrY09#i*U@r%fkH^McC)X`!7qW5K|5iL$wD8%De-Vd4&J)1Q-Q41_%bI#7|EVl=(nKnYUHgHF*H>NFKNCfB#Z`VX0Q4_=27Wx zW$_LY5nQnIpb%{Pe!+HG-d0I2CO>m0I~CRlUQ3Q!ijQ87jaZBhTZn+AfrIDn1%eiqTz9}s7igyE z_RRrP?IAPmK{KsBQ_UV@jZS^_RvqPr8wz#mGT&7%e$nlV#Lp|*X?GP z)Ab$~jR7|e*t?+LNo~+cb;w0+z(J|qQo7L?LSckDEF^{kZzQmzbZx+$Bl6r!ow+3aqsXY)|D_s-zeIXi9`o#X>01X`U!Dyt&Hp zRhRFVk;r#_f%i92SYi?Y06+jqL_t*9TCIe}JQXH=E)6o<>kQvCS(*&^+D$}$-{SjrlcP?Dr~Z~eqoGinnb?qn;<&5wnDgZ!TiGF-i^Db- zdo4v;47uvGpoqXP9i9)@IchF5Ka{2`7H2GxV7@QQRe4$Xsfy@ZWybec7{95q|GdKe zS%I}qnZHv@rbS2Qi-yQ+6`u0T>^V{lsiNnTgcuU}8Iu?;B+*}};FjuEvN>=}J<>`3 zM>%p|+Idd+W*@U+Gc#`wuh6X2rQJ)K+X@;K8S_7qcMc^i$x_ybvUc-|+MVKZ?|8Y3 z_)*0IsAqhrH+-m1JQteS#ap?g#+bF2m@RhM9RIKd|HB=z&*rhqWQS$7I}pCR%&a#n zcw=7f=7y%}pYVHRAI~E_C$hBFu86^;#I*%^opE*7-s_=FSHhmil-w7|%NBf+F8V!R zu02b6z2MsRgF6fFqnAdW5qD?$D0`zM0xaBhj0G_I!l((HL0$OnI39&I(4HQt0tsjd z#~vcufQ^)*8YEzRg$hrHc6gv2KiO!HvJ$Zj~@gIGo$V4)qRxkITvNj*N&&Nq+nB z!^-+HnYcPU*pOXW)gQqkF>M!%A)K3z9L9>cQ*(~mjVi+7}yCS*o1Vq zbc3XHcL{<>cQ+~sDh*eH_xlgLduA?>`@WywyWaJC*4k^VG}WOofinTSVT9#$R!aI)_Cshz#H4bsOgeDAK%;e7QR}5tw{V6CDUluq|9Dv^7I2@=lW4QHRB20=&gskM| z&WUp0_>?E^K2~qMgHv)_hB{Zt&A*6Ez&$82+Ya$6$I<5-;kv8UGb+M2X{T-00)tU??-irfMkd?NY+;-OAM{sJ6pcG2nS5F%Q$sFW2P7HQ zDiiGnbHirf7;~fMOZu%>wA-%fw%18rur@Exu= zW2Y#6yC8Kd?;U6}+j%KlxhbH{U`fFn>GA8S6q@;!7_pWVg;-+bYC^=XxUkjmz@MS0 zFyrg-&D(X+!}**0o3F_5Gq2|zUoO0QI{(6U{+Z33t=077htrSlO+L6iaqrf|9RQje z<2NslSeg%5oa?<{)NOXA*ZgeXMWgRJE!^p@uL_o!Drh(s>7D7`^Vhy1n=H1|I4UKGN-fpxu2-rRV0UfxBvh_f$JA z9A68l9hZbVu1fXYQW}G#U@OhRdn!OP&~<3sT4UN)Ytlvo#G5vA;c7j$ zGEMqAL$(%E=5|l0vJBbsOxX%7 zS#r#&l5}xGRDd!OywJJnc&aQ-fjVoIAz!5-Po4%{ffiluIgYLyV#5#R2kuBWnR3+| zv3@k;>bxS|ubD9e*9$Ca;4Tcko) zqQqD#$5<@GP$|#Rs3y>;En2H9Qm!G8d73LufiXms#)psEU*P0hHg+!>+5l?Sd>*xF zlP6nRFLBCGSER2E@T+~G6{(_QYT#h&780J8Qdp2z*-z5XzITEA z`61$siE4u}8oxpmm;BU5-ku-Iw_6%0=-3?ng8Mo9r+q~NA4py;rafRy??0EwXlfKY zL<%J4g7OEfV2$okd;vFwe0`zL@K2kK5)bSTrD0%nNC~hfY{!2717*-Z9klK^R6Bt$ zdC*QsBM{SvlOj7{HGw7Ogwan&it|Lj6*2kbk2^&+qCOe@D;$L#c(?;bc$g4%SRd?i zV4p*dfeOGz>~=xr(XoADHU`Z8mK$_xqh&um+zyA3=K0FZVjE&h* z;P`LWfsL?!*Z-kp0^r`*_m!E9%=lM9K7caz5rHKwxnBWg$g`_!eQlj(4t~CXGVcC< zrIi)me=HL5i$nd5!O4;Lyxgq)y<8$gn@0KpEH*bkqpD0Ws4~yod;*fPL6yM~`|!jr zNWATtXb6mTzwaJ&*DdsIdTRIR$Bn(EZ}_qFs^~XCkfQ?urnk9OfHLE2#IGB8&@je8 z&e`2ciuc?cLu#_w;v52yYmN-b3SCzz6uz)z#jj!ne@&5S;P}2i7+wb?$A1@GUOQ|et37SqqiSanFuQ{4{ML0h@9%)`B~h4*B0sX4t{WG zs46Zg$lB?xl|x8EVL{KA;a`9<MrM5cj3;;F_ZMrM^E|_S9=SR{_4Ts$ceL`ecMJv9duJ-627@?WytU zzOd*3Yj>x|-tJHR{hxRR+;eivFD?XCW*5J>y4g|R9E${)P*sM4GQ=qy9^!gqJF5fa zo$*c5=T*{&?x`}LxY#G|Zq{$SLz44ahI-b?pEvh9@O$&aOUN!LH=Y2^}dz+EYl9}F&`J^@r)df+OH)o_HZfM2c(+<5Z?PSQ|e1<3Z zs%+eI>1e-WQNG9SUZYWxqvmEk!9mL`#v^!&k6%kbz(7#gj8E(wm+(0*W>apO3p`Bb zJfh}2VwSwTclbFU2ys6V<$We0;2#3+79L(PGjuF(wp)m>s~EJg}IZe6ToNVFIo=5m%f9 zwp*OMgD!C;DY(+qowD=;%h)Za01dt}3y%T~x`NV7MJ5Gk%F?%iX-d-oYXD^+#9G)+{e!B3|ZvNR5M4qvEIAeVuB27~u&)mN~b;ol2#^vEF z7y2)r>oqs-yJ*~h$)w)`%&6~@QMajn*E!uz6P!5gxDkQ!{n4m8ts zNwCF)t3rdm@eCJOr7mZl3iCT@>R2(lcu7DRwsYOn$41ogFL4q`K{JcTTEPf{#W9S5{B@Gsp?yM<2n3KNn ziC3xt2D`{|5fPxrr?cj;af`_WWmQsY&n!t{=+_~j)L|yrYIK3;b=|?=1$>|LywBI=$N7B1+NI+5&}Rt(g+w9 z34$Gv`k*ue2V$NR9O+RPidOhfJrBPjF@O7K&x50oOF)7_2*6>LK`MEO9mqf==!YnZ zGL$_JZzFay4-%`9iv6AT{^9N6=h3F&usML!A*Vh#FY+;rfY$&Fkq6no5CiJlhB?zpv_ z^vKWtb%<|bUcva%5{fcI8@rRkb} zL*yg7fS`AgAI58z$vxs~vAX&hN$-fl266v*$80>>Bk3P7_#)J2V@`$5* zB2EGQZuk#N+yHL9hq&ImzSTXu-8%B4ZmKP-F2ObFzFDAz=nDqA8;rD9Sr|-NXth{R zn2EBw7|X@oGf1&H8+k|3!GO*8l5m`rN{W+wgb!7q%Q1^{$K@oB^RrWP(y>VJ3M=#S zY4Gvr3kaI>ik{;VI?u&&ft&UsFN+1Q7}zx)?prWnBuum<%KJh}&{N zbgZUax}I{bfy#SbrEE>PTy2FC1C<&Rtp+o_22=ey6Wu0r-S+Exoi`18ADWKXU72`w zbJFqdjPrw8?3sjCb6_CS3|JWV zTNw9&He+T8fhVAu&u2A18J=#@Q)$u$VMe||L#|R+x=33rPhBuyU7*51^5dmbJ$H0R zt&OH^ji>EQMnRjod%EwoDsW8K4Fwo|uJ@)~$2G}@b37&5^o1JqrP{1@MtrRo#k(!# z2JfC4dvtojT4U&*a+jr4-woN(d&(nsls;b+uGC>FK21}l%k=r8Q14Z7K$+I_e4j1| z^6=ck0%FyR1u;eMS6=WrK7biA@e>7sR(V?r;V{A5JYc=7j(`N^ifjpkV(`>0S zG%=zlW5sCWB$(qQ*<;0-(`2b~luzc!p3IY^tx#sKQQ|I@VXaW&s?ijzIL!wWZ5HVA zr>k&9OEZUw(j^G-#c=b4GjfJeaYs?{kBVLRCVPEU>}(yoXzp?5JO-K~wv*-T^!04a zp9FZm$!hPOHYXe2+&8n@zihYn*qZ$8;V;|Eo%a>WOt`AGm}^w&YvdU}i1L8-3Mftp z>MV#D{SvfT6}r5{Yr3XzXV1cw^w{H@rbWB_>2?k6FSl;*z4c#u^<>D{vR%QfMebs? z{KG1_2N|O7VVrM$7=m0F-}`cvL`t{3(-_RspH4T}%sWray|kNbx*Vc27=O2*FMeXB ze-=R*N^l&30Hn=EBRiBP977pw2MjDwow5f+F08$yyJA9}mn z_Sc;>yp$$s z0}Vj@pA269)egc&_YS^yiP$;0+A#DnH81Ri&lMe8e$Fd2$4yunOnBJN@G@!g(3r_` z2j0*rbiP&Mc{A4L^b12)zX#0mZ+Mct_=DY9oNTGis?$sJ(+jiF@iVZ?@rkPOacc9k zoDt$O=NB^N;lIGic8QbeG8fx5Za%PET&(wb7_9|ZUx;uyO7VNi3k4~QMW{=sXv?PS zE9Re7DLSi~r>B^!DP5o~S7xAGYogv@s?~5#yUtj%$z1!BrT*vZ2A%iL4cJ(WzPvf< zbbs3A(X^M%y#G@qQ6})!Vz@JemVUx~*D>D9QIIR+`6JeEH6d^#HDoJ0Y&$n%H!l)b z5REU4#TUkd?G{3AFT|CQ(9&*E0=_hfP?ka{e@84&BUPl6D$_|-8Ki0?qC^1{EQ*AP zG#OwB;*@6~5Q7=I8@lHK%^=yq6x)TQ8C0I301evL377kB2WTcMaWf-+BQ0(#Ep9V4 z7MKPUn$@JpjfC*^_%P_)^eZyxM|i-GP`~9M?1o^NIyUd-4(pLcli)e*5p zhiBhj+bz7XnR{wAWBYK<>i!JKGk0!`+_*Y;_0quQi~W}_^j$LRyJXsX5y<8|s5N~T zjC)Mab{OloozZU5*J##J{h)cOQA4@nv{bRGSc$4wxw?3jwsei2bp09GkLQ(ouWL+M z8-IIg{`HmFl#OBk9hDAC`A$pOo||$2H0{?Un=S}e8*-LtF&C;c6lpM38E}1o`5-MM zyDVh~ZYx4Y@ZfF5K1-Pyh&NfOg8);l$5N_6Tcgj?Y|ITQEFVFkF&F5CL3nS<4_L~6 zz93oyBLXX(d@oCrC36xYO(~)$GG*v;l~{9?*|X%C-$~NO2_1{(M=VP4c&sFCr7?8E z6373@ zCE1ds*Zi9CfD!s#ST*HF!!jxQn&;^0frgl{sRC z*NGAXJO3933_)@EUzPr?En0^%L~ zVqN00^SWnuZrxjcaJNBOAwx#I?5xhD{Zqi@PWz|XMpxsM%;S`Agvh#j3cYy76#kGZ z--^2UDRY}6??8}TU#xm}oO)lp>SXqrAEg&@g=T~#t)J;;BYke`-|#E!yzCWa1J9gt!V!aYcVl%I%t0Y=#q+L*!xhhc^C8jv)-}5<%>u*uTJNbbVu{p)t=jBH*r@^RqzD)Y7E+&6%COuZ!Qi z%W5*LoE&UioZrSrwsbUa?*1g>zYX`-ho(dU$~-whnP0nzD$_qu;QKb%9#F>JCon1d z^Vk%LJd7uH|Jv?tAFlF=bOw}p;29p7oe9JFZ|^TJ5k?V|35Jp44p3$pPzF?)aX=Xo zxtB=nBtjYr5duuLVJONx^YC(u4{03lUfxDVp4}ymZGtL;qRe%VfLGyRMfE7kkS0iY zK$#)P`Q6+@QDz-fnMy|#WgdG3N9EM?&(9P0`fF4fM80#Y8@O6J+Zd@x&+C+S>;NmH3Rz+3(+XNORlx)@?!us4{>u z0kJ_(JUyOxxdX~P@P29M1Eb_+4$Q&Kj$_-T;gz+~&z-IA-Y!yP$mLFnTi9HAb(70g>E-FK{a@R@@pcP* zmtS4~6UGDFo7^Cc^^BIqr25&sa=}6vVXS~Hs zYr@WWhKog?n?Z~Jq`4x0f~|RL#OtPTyQs%%FVC_CJ!VOA=SlVz2=(N6a+^wBmRf}U zgb>R~VP-BRAt@~(UIP(!6H#6ZA(0Eb0vEYBEI3&p)z^}n59}Tv$74Y@I}uKM30@aj zAzww&P*sU&O_@|3xlBW)0wYxvWfbx>Wr}p=E6=LbpVw?O({41?0h(#C(C@f)w)6Jc z?gyqrPp(Y7zCG>yaMsOw#@lAj&kj%q5@nXcT~=Z|!Iq;vzejnkfF6?&u#p_Rl^(VO z5R)H;FN`4;#Sx3+i6x1I;sjg~B*y^F#O)Ns;SiKbCX}a;DpG-C$dwu7>dd{Gti9T7 zQgsd(vHC!LK?E2iqJ-IzyqP~?CLF5SK)i`i{vNe#SRz;hsWXT+leSxshAT+J=cgew zgG8DVAku`O3@Xnc@usAxt>mb!#E6Xpn)wB@901KA;{v;V^LCkYdO7F#@{7}}#W$~( zoL?`$dAa2H9BAeXLNnG2HV+r9?$18BJ9+2k=*?@x*DeoUxiny5-fv;nXJIyY*=*3l zbl}qYJ~QL)b7$I(bXyHjl+jRbIIUE5TDt7C1XzWJWR;dwrItj6ws^I!#0O*P&zF?P z9_i0NKR0V0g|6!|o!4amW!f%_eJ~ZQHsC7OWGXmK4>VJ($qZJe&Dvxt z2#LT$ca-|C%Z%Pt8h@ZNd`Ge8n&hVo&_9T?T8F7zovuQIu2zq!*_gB20s=j9gE!jcHvY^kl)qE?i-L6E(kkG+wDtAU-fS5|)cyczMq zgViSwhs}+}9N_CP7CAT_$_M}QdlZLx;9UVV z;4DxA9EH>zO*e+07;_xd?I;jX>VWMJOU%booc4j=Mu6tPMI+?{L!d_Sx`ZRSI6y`J zxH$(-8)Xhmj5(03C_7WU`eA9vjXJ8hV>bl7CukuEkYP+lxuV0{g5GL4oYI2{0S;6| z`R{=SAO=So!fcm>0L>2A0Up7K{@XjVZEeLK(Ltcf*adhb<|oXq&A>ECvkRZ|N|PTr zyt4IhiFy~?-Uspnpv=NhUu|e|Rw?}U-e>Ts7}cNAqp5LIS*e2x5dlQ;nb;}Xfe1Y!pTWxm&j$H&`) zDubX*aN~F<%viKd9N8s|Zmjp0l!QME3B2wZ@G2s_xIPb586tu*ka0Y;L7v(Ilz~YD z);szJDiD+2gD7eDd!>o#c)(te=_6aM#7Lu;XbOpuL- z2M9Bd{hc5B*xPuz2FAVXnwVb4jqi{~7k>;ler$N-{s!5{$JfT&A5aD?yD)EVVT!ni zs512}(T<2J11J*|R}nZ*9@r*L;|a4k+yZ`Q8MpI&g9Ip3yRcSU(U$KT`s%r>kE2&? zQg-3oul`ly+{WHS|8#l6dtW<8J9`iN#Js4ksit)@@D?Rcwc3q9H-kuDW0v7PyKF5zA|ACe#H>)&lu;=9pEfxd5&71pH_&0 zNtB6A8s>}?kuebEF&1Mr73aJn$ZyWWb%}%RDhJyQZqEC>{15pB?1XtJ-)ftgqb{2rvb|UI=kqjBr7R!t+>+^jM1a`Wf%Po*c6I z4hD>g*e!^`6~z(&VoDQ8rAZ{9mJ-N`N!USX2Fdotl_cTIQiv6)#L9GHWd^A#lUxlP z^PXIrjX+FI4hgIlESFrH3rpC7Y(FqUH4=_&yVA`$71i@w(NfQPD%0a9$2M;s@ z+DuUz(9CXO8m=fEK^cfNp~B2oM#5G`JSEtaiU>0hY1&MQUQdc#ix2x18@d_|6H>zT z+J4`IycYf47u+4^T^+u-I($RSe$n~WH>Ve09G)$_vYmVRWWo0F7aQw&>qj#W?@!*l zGk)vl$aTx1Yga&_0j3$ea&hqT#Q}>8{pRO;OpQB@4cZKKnswA0HB{xflpi?o=^_1#b(xu-L3tvmWid+?rG&uzud>#}WEV7wO5 z<_jW?CW1AFJQcbeWn$cG+7EKiZmEt5`fOj5}?XJ2x;Jk-1vQ!sYhziX{gge zw84O_T%ES))QJM+6UC~u^#*KRmqbQxDU9AZ)p<#xQj6og?8$dx$5X|rfN7vZ6Qls= zC_<77Yo;vII|;fZQR--c6G1%G!92&}CFpb1xQlf7vQ9Bai%_M?ovbwy?7Mvm1fh=0 zl8r{3bq35IP1yS^_<>+r&d|4>rT=Wg+F-!`$&?>tAqYP~CJoYq$x^({jJHmosZyH` zP^R9HqtS@J{;Xhy4tJI!bD}tPqBvc;97m2SZ-N3%j2u;*Bvpdg3E-+s5&Aqy)>3(n z>Qg)o8iJpUC8{*Ia+R2}V9HE2_Dn_I3O z(emmOAB^EE()BpR}={j=I56Z_C@`CcEIT`ZGdjD#c`=;M#o6t?h=p_{MwW zhP%J(ZtvAu|7v}?Jzg>oL&88eV@Qs{U;oMH>g^VnnbS;H@x<1yrr?)&(G_LhtHe0kQ5?`aN4ZpZKS5PmP$eJt>e3bb(tl<}|)0%7KjwY#f#L}J^}_}cC`Zg29-_o0f~ zN(UDwJ0Cw={~#NmKr5I(!871}VeZWQ1fIOOy4_aa8s!)mX6+hb9||ZFG*2GfBG2Lo zb2$7rJbra+YXwkd>v!GCPDA@>genrDF5Lv(4vrc5`DWc~{osjD)z=xR_PgY4wE|E!D)zJgq0w z{ThR}H%ymsprA+1T%L^VkUrz7Q30ln`*0;`NZ>_mLCuQxFPO7LHOCfhm?UG$r5b$`t6y z73#?5X-F1mh{FhDbw(;p=QTf?X}6f^elpi@yK2yW>rD6kbI^Bb^7Spql9_R{p7Vg{ z((|Raj!WS%JAw0e7|%D_^IN3HHyBGM)^{x>WIH{4HzQ&G6=g#QO8vryTme+=^ zUKzY{dGPY3flKCn7fgH38+V*FXw}pHprziRuG*k}s$Na8Rz_nQx$qXs__j1fRitO16Y#Gwb@5Jd7 z#b{$iY5iD_2e8AOO^i9JJh|#z36iu464byDHAcccH{@a9KFHB&Hi1YMN6$r`&*#{h z^-nhIp8%lwaE1da&~%og!GNVsj|o;fFA74m3w{=>o~Y7ch8RSPL3Lyk31jVJLGL$o|~oa{+BU6j!AWWkd;Qf!5?>?N|SRmxng2EvUxyd^5kner#o zWlyFnvZpI?zEj{yl;cm7*bBQ8dxfDaA z0#~Pw*s!VMoTb(mJH793jF#NbjJm0IzL5NMkL}ZKhK@TdeYd!KZ*lcq=Iu7)=`i7J zGlY|JbX*i4xp#W*<@p)!hilOe>zNU&Md@Gj(&__3UTEoWgIBF`IoFnLC1=l9Q#k&){4?-8cvCtCA!6Ffr0-9y6i z8*;{0KCkah;CH(A_lABh57k$f!q|aNJiI(&;=K}+UWbQUdwRO~`}d7cY!PRP`(32p zeZ=3(HBEV55s>!l{>01kS*W+Qzq6H_3(N`L)HAfYGfvo_o?jd&DlfKoc6{z1_&hk& z&OaD3Zy;R;RGF#SaUAIzf-)^pPC?<15tIpzM^OgG5ylhe@q|SJVGU4blhn5TyJ4N! zI{K|8{GF?-fAA}paR2axk9`fZKgTzbadZa1Zgx&B^?u)i=@%xKVP;VL1oEh%?=8H~ zc=8B-ZxoieLqpT-kyrij!v%fcD9`2JwH9O}r6>e|u=n=Jql~?)l;u9YZ-2XsgzH}0 zY401(PV~J0#7OpvIJ+em>qTaIV<8@O9#%CDIwMiG+wev1Z#S9lTj6!{q4tS4mv|z5 zXrsf9`MEPZzbAZ3^n@rqiv+#UDK04;VHsUeWrWzy2%a<+pf%@WJkLgVk(uE-EBiw} zzE|R6Z)Bw1WJNq=`Mu=@{S_cfMkGu{Bt}gXP$ped;=PV^uC_FAOtzY6-f2-lnR;W@ zCR0Eet(FTqZ5Q>CS)H%yblx={w7W8Ce|!4PgDICsKr;&gFIFO*e?+@~hmK3JUdyrG z-(f_VSf8JXf!i4ogzOk%P86(}9Fs&UM^Oe6VoG7qm&Bdo1OOU***juI8VM0& zGAJlh2{e-hG=s0o+%8YwsmQ>=&zc+{nEi$Vu)PM9X6o~PHx`2JH^N2=;sD=JWE)U! z0AgzM$#wbUntae^4p1hYf-?DkPzGpb7d41CVL$^k16{S(-bJq^N3AABtwW!t`0!sb zp+6%7SHfUEZLjYE9!tJ%-#lUBN&ERX5N~=m>+ozIwJ%R?zuMY?875G_{{tx}b!))cEy7b#KUEm7mC(h+Pl5o^DqFmO+O+(viuiQdq|(~t$+ensZ9 zh1BOuQlHEvTFlTX3rqwc@Xg+7?J`l{rBr4$TI z*M5P&LW4F7Qcr}By_Y>+tIN`JS#s=-a^E%iHZ$>Zb&e#V;|Va@ufVZnkrNqG41h9u z%ADEq>_9Wg;&f5MCn5!phw&YI%X=(BkSbA%Hba>;Q;F%F>`CaeU8=>}c};fkwmfuY zYB|T*Y{*!zd$L}Os!8ue>sf}Tvz)a$Om%w9_4>?JTJ(^BQmf1O(U=nwgiF*;RA@1l zYcf{pu-6;%H=Y$P*W%5RqX(2plV-{}#hIeY6sveLNr53nmI+WMQGg~}iY-@)B}bID zK#H+Sg{@hSzd?^5h6YZNfLbvmN+G?Uk`)9BbmY^-d80V!Ls_W8IgiH)(j_p=rfjvbm?h3jj31a-LGVttp(d3arHgs8nG3eeJVBg zOnUyY{M-Zi>ASL%x8x>n%8uMUHEIRpFP|NDxwR1ZWH8X7*~32n=_9vu=7ucn+SCdL zCr$LI&2^|=7%{q-F=d%EeZ0ina-HSVUGA=@qP0#kd2R~DF*==vSHCn`ZFRgL4Z7@4 zgpy|>_ZB~XL!(PQ(1;#F3Fdzgw}TP`y8NRJ{|z!wEd*(64?g6uCYG`Vbz+FeLk-G- z-45DsiuwZQg)OlC$e$?e0u4EYx1e2zmj3TFgS6%Uvr(!I1w!E{768YfS-{AN5G=sX z1q_4%1Z;%T4)h+By--aZyf>Zp}6vjgQHdX>~&B`^IZ&kyvKha`qS0{Owq%Q+&XWny?0H?_OdF)~`}864mUGa|YB_$R(^pO_}? z4UzVGVG5+4$p%nmAi#9rBRukbX75Dn#@^z0+(1@ksB?hJGv^QougKh*qTz4DkZ-$A zp8km&TitHoA$Ae=q0?6Px0Qz2loTh=5Kv{j5`r2>KmWpw>_F2?Kqf3KDSrDrG~lMU zzkO6#Nn`F0{8v12luYO+5TOUtI2egEOxWz~9VmMp9%}95@fd2IliEAiyZ?I-L?goP zFn)7vb#-*|$IQga^ukX6cXH>?y-qTz>-T=|@?uX-MS;7!!$ap6LFsYfxmj;wqVGAw z#G7HC2L{%5CIMx3iJiFpMNnnDBLb}5JYM(*zKMPNIKa)?-Q6QJuBg6cWgX~YYHF_M zeSWUJ^P8uB{!URb4iPcdUI8~9-15tc=D$vZD)VdWQ*~3Adw86!N34BlXhK!k6o?|k z1tRJDF5&yy_A+sQ8;1JbBscB+?poP~`8D5q1o*ym@^$kKPRUQ3`}ySuacXsMbbTMW z>J2iG&BP9A2ERXp>64V@!P|?y!w_l0UJ2x_K>H0Id{|K68iD;I1`j$s?#NdHs@WbK zi-6JJ&Vpz^!~6LDz4gze)lZu%O`RX(Vr(zlsf%A1WV^=BdYOeumxEcAok5F}!CZvx zp_*iS$g|mG=ORbb`?^#PmzjM%sNY5%^KxgnqAw)FbwY}kTY*kWlS9r#L`t7mNQ0R{ zi~0CjPO2+>G}i^`AMkNJ;S+czBH|?@7KBVqAnGf_>nqI@BF`UlS|V9f`kjVkqN>Qd zQvw;MMRGMI^3=sLl?Ad@genabK3>rLY@z$i5JNB)|j)fC739 z1}=y&1ISXB3lM|R%;6FP9aOo=C)E`Y>+*@U`M@-UsvLa9``xmv-O^0R0)|f7kTJ81 z(ThX5vOh!g?A^cYt(pLYO8Y>}O2KN>tElM9^w@z^}J{ zKZBvGw)=N)mqpJv-`pL)y1oWmeEoXq)$7HVuf9BcG55r7_OZ>ZHOMno)A#R>-MTe; z9cac9XlCHz#l8y{de5KlHa2cQW7w*v)2yxeLG@IlvLaZ+DTO*Exk`D7QW@bA8KH7z z;W~B6%G1I?GsUNPicWJ^>j}49knO#BdfZBX%GPk|iDA!8|~fAj7LnJB+8H>$&@3-lqbVnrpR2Tz}TR}3sX(OU^&sk)G=Zw z5@ZKXxIqaX5>K3l^rIypnyU-911~52+hF#dt?94 z6CtOgM1>B%>nQa+tT4(q2Ly&R_6LVuVoR2Z$>;q5}|hE~J<$q79gd-r3=#tZ`2a?qkExiW{*tHTxI-ss-mPMVSs1Wyt$|M^Oe#`vsKQ+*|rZ9?7eVa1U{Z?o0Nb5r8tI zFw8D_X>)IGWp{Lw(1YLa!|%gQ?EJRU7@wL7DD%R@6HumUtQ|oaGTi!+_4U4zlCUEv zlZTDeC+1=DlphRDatn3^Rb7ATX1Y{RpavdF!030YX;Hr^+M6aYB}!?-Zk)Hm8D#u!J7Bz-b0L4aQ@}TvRuO=^se3 zJ(UoAB`WS9Cgve2QOpczQ}MUe%IB>|@V^`YqZheFU`uox4HGC(sFLp7UxM4>^AR9}Et zT|UH^2-UeD%mB^cVd{gjEPQDu9@1qB)A5i3oSzDjCR|R+E@s)uu(I_&`47!Nhiz>5 znZyXloB0tPycQL_9vQqA9dUOP2-9|n)nAHJ{A zeNDdgf;h~H-F#jIR)A)jO+^}v`RdN_)Suz4H{hw(VXxLW+v2qS-j_pMAt>p zb~B-_i^6@EMZ3%eYPEr8PGm|PD^@<)ZpuG$Q(^43a^F?CrnADp5Xr(PVtI~%B?>~k zi8e=$qfAYxTvIexg*QctIa-J&oS!NjXh!HnlrT+9l}+ z9qBLlTlnc{Rg(o7}t zjFrkP^;+BzCTl$}nx)JVBT5q`4u`P8oCdk-LOCk@$b2z`e<3mXT6+As z^u!C#tr6o#BMhg=Q2-ki<1G4j^gs#|pgJ^4Jm~iuNE&~z<{$KcaL*rac|bx?4#F`gGhtA2Py)LB$VI{7l${TP zN*G?i5)Q=bgSlUQ0d?%z)$3&;N~Fsa&V&# z*p7m0NF`A=I{E=jDS>h`hYoXP{zx(hAtw}WFvR)i@_!^11X;*KP{RLY#Jv$Rd1QI{ zV|-z-U$Dfr_x?$j6@E zwm!aqGOZKCYxpVLZs+J&+22uShP*$7pbTjk0!)}HbI^n76QIm8ZZM}R%q7tEsZ;PP zx3Jur5)ehUey{HSURoo~?m(W+?;-sD;0CVy>&l0?)HElL&=>BWUhzR6$2(W?qq~R< zFtV}UTT=4&1)|CX*hhtzGy=+eBM?UcWrznTLnaRswmSO|RR%#B8y}~Lyrk~APV(L` zbYddn$B4LT9DZ(vw6wPWxv?zfT2J->hVf0^$rDad-`{PL08v&8bO)VeaS zl;ry^&K|+R^=)lStAm8S4x|Uu@9&MDihZMk9=mzH4hr>2Pk0{YXX6QXGdiQBc6n`t zxIaHO)tQu*^3us3M%Z&pOnMU?530;9N7uaa!nvEL!uu!N4yLUPO6Dn z01DY#ArOD;5|_8gh;8o=Zjw88_WB5W)06X!iD~h!UcL_Q9?k*YS!IQjE5ob%^FPT` z(3@%ZuUW$W6plEyga0EfV)*=zCH7<=St7dSA)sLI&*8gq@Jb+W^#KO`*%^7V;U%E} z{?PtT=id4!(yx})nX1}c&%i6XPh|OEa;2Lb95>k5&v3JAakJ`kGhPv9w%1q8wl-{X zv8eSiOY~Iqv*Qa1p!W}^vU^OcFUc#zLaV|gpvxv_#4C3}NW_SnN1uiMEE~;b0Xi#b zrl-oBPVyoyQj*T%BJM&w?n2x?5D|>0nK2rf?!Q!!5$dO zE@UK)CZ9|}nF3Nn0TDr&0thpKFhhilnW`K}nju0ua78x0BomBKoB>ROD})YBsYh)) z=iOFz3XG(OX)~K?@f+`A*OQ~LEa3H+w;R!+2+f2A{0#N|8R&`9j0-|D9!@JR&MR-6 zm+T!Dp1+uUY%^tLJ#B40V{JWaZ8iPy!Q|b$6Sr@V-?%w;?HYuc0B8ox%|V;#GCJFC zsNb%u-L9$rNnNew^r?@k%8e@WwTjYJ^5T_>qP41$HEQCOY9i$-f<-F4h05GTs@&z8 z{PkzVKVMYryP+}uPMTjB(o+oZC!iV7X8Nwm zH=PkEfS3{VTH*s?=6I6eiTBbh#VUMN+R(LIBL5UmiX>AkOe}y1Gl)DBE=UzFL3I1TJ(*2%pVL`8_*aN&`gyM1B^rS z$&{}~mkrpfR*$pMkhj@L;Ddoc#c8&DS=tN{$c#A_B}Nq^MI9$i7bD3KE=&{5b3BOa zcmyw1qA*Q{6jPxbWBDo8N;Q}Ofve}TY^{;VJ6VQEQR)aOx**{bsY;wV>H=A+TuIV& zVFEB4!!a1QChrtOg$8TA0dFgS*9Ax|6905juo3jC3mo;Axf(3FtFEyYn$cF@V6MN* z_TfHfyR}fatys66)WA!Hu{Wp3J@kfLG)H{R2K_JBzC7ckEqayrq&_q2X?h+NS^-rS zZ4C~6b%r|{CtvF@I%zXI>9V;Pa)cOh#)DnpjK40N@lZ0!PB!YLQlhhJp`Tt&5F3!|zBSkNv01AQyM`m|Hbs9JwQWPqCfa9eUg%yapQ1F(A z1~hQ=LY#dA@%A)~mXsd}(WJ_xG2-elLs-RYW95J@)j4 z^i`O+pmlO&4dw~Lb&idfAps^tm4P`9vpXgMWrp|m`?g6V{}E-Dw)@|ghr0N?K64DU zcaL~qRXq50d}Vj(7jAxecY1ZVZ-+dH+aKP<_kI1*9GjBv=>GPFySI0I@W(L<%D{cx z*yt@S4LwAe(#E`>fHI^p6lI1t$P-|IGQ{nUzQNMh5y95J?pEHfL$agWr(5CL38Vo$ zegeNcvxA>q*_&VcYw6ej8Tj#kT2}vRgDzBizXztL+H&8gIXJzr@_d^4p&+NV&OamV zfvbyaKtRQZ4_|)(Qgi~!5dK>J&{pCb75v!U+dlYhaBjLoOsK85kE3s7Qcl^@uMyJz zm*MgD=)~CPj<4QCMtY^DI>*Lad;8ycr9mws-}FYipOljm`NO>RTCCgRZV-(S|ZhDs{3{e%7NU7cQdxCO<>bWL?H zlNNuFzpRrccYe>3e@{VhZ5P*%pvnKY5%xf80vjXjkHHH15dV2&k?(-Nz1XN|iR}-E z?2Q2fq0cw+ZtU%J>~DYGU;DH^US6K$;BTV#OoHbjANzeSp1T~}XSvw5IGGJN=qv^3 zob}{lEo7=+7_^326ea5iIq`=EGr4<>#<;BnGFU}n*FMvP{pp24WtRjEXDZ#YUq8X|} z$qL->8M z)oPUMuQ=#^?Y!t+5 z#z0yO#FdEEnIOIF)#vUvKuRyrOfCr^23Q0G6m$tc(JlG=9}53!E(ZJER0Qk$9}0dq z!Lo3#F&~ZsBcg|6C6F5nhz$jV`g|hTL6`|>1`M)*NmaRoviF3tEJA4(0hk5>8iZ*G zMHxh}!i=5#G-Q%(pcypMw3U%ap_wEIGevC1g>S}&Z$!TZnpq7CSPg+O^bnd^_HhMy z=7)#d4_DVEC#QuMFDGqmCQ+1`wRt=TS-?Ou5AI_$GjZeknB}$6t5<<$`Y)LEoHOn; zI@4pQ-=nMDsioeo0pqHvwW_N$sVUYg%hoDO)~iU@sz4&J7+ATgNQtsQp(0Nq3<{^l zU#}<8dQNfVj`qS+qXoOO;}5htEM%L`34=TXc{31l0)^(&1+h=2B8_KwtF&1vH2*JW z?;RCI67_$hC^_ex!;o_}Va}_oYsQS^Jmj2n&N)fW8ANgr5D_IPDk3Opm>H7p@89=! z_YAQ6?C$fN_ndqBG~LzRHBEQbr@!~sEf%l}J(xX!tJzqf@DyL=D7eB}@EdFCHJ<9*LiG=%URtWYay>Na ze{R_K^l<3S4&Q6ZcXiJQFl!#%ufZs&!6K*1q@>DmMw#uj2J=H5CP!Un2Q8LoI&5YJ z9F9hu?uR(tPx1I%mx?miO7=9)4!KyKbZg+b`9zK9)XUh9W6!_MjX_}F0`q$ftBPj;FwwBe%kxD@i(Bd#DogBc10NXLu;1cnQk zhJlJ1RJ_MqYqK;8%9f1 zc0nt)2W6<0!5mCfaKQwXbAi1SA?$Zy{Y_zQq(`u)txKf6dsJLrMi~r79%yWPRnLHSQhh80=fmtEabvP~u-QK}(A3)8B{s$@J>4NX7EtDvgG+XC?)da5Vf`bb$~1@C1w=e_ zjf7keZeS)|Rb4m;@5npX>O%vD0+d6B*V?wPQZOoh< z?R~sT+bYJtzx}rPX?|@KG98mP->w5&tPSkCfp+{s|F-gX;z6Er^yQ(v+dFR~_U6DY zc#D9OfP07=ufc$R;BADr1>OYma{K1W%Z-J$*};O$poh*zicchX?g?<+;pM-{#dCz4 zU7M5Hh?D-RFoUh0Y}i?;2Ky6($#=@LP6j!P1^TmD+8j7_&gFm_1^ zP(~bQ<}9WG;5D*)}PdFK5Gc7OxMj*{ZB4K zX1q~rNb-Ak!u9b-Kg(}nPIJ+a6VK&qwA);q_k03yjQ>Jv&|*f|N_Ny*9z@9`U?>B6 z3}O_gQWBQ_4mgGcR+$cB3~FS z5SjsP2K6*8rNu3!#zKm-A27cGWSxl#U5pM{j0|235BMJH_dUo9XlBmG^{bcjS5N0T z7w4}|PM_`VKUi9hKY23#@Zq~hk0u}l`0>Mc5AKiOy)$;}*4T|3W7n^ZUb{Ma<;w7- zOM?(MbLvE=@zK7chx-m0cIoTB)Ya^#=SfvQ)R%PjbjAo4!D_Og!Uzf9n1h%jv8N?wos|ASfQqHx&l{(7=s`8 zK2J^>Pi}-}{P}4@MQLNCXp?dDxf*QskZbnZO+;i7>8`=ccp0A-Ry52Q*SDAfc`66yR+rR6*>LzBl-aG$RTjR!AHxHNN` zI!~qsPnfE{V7OF5Z4!vil)!*h*vEQGd)y@0GQB z>r?5fdqQP5`6_M+)!mn9GgAVNnGU=BHTnLR#Cwy8Pn+B?`<#-}XWFMhyHAHzOqWYl zi$hbH?JSPzq&m|B9pD&78x{Ho>Wq(dSZ(#$T@2Y>PjY$xArDAWa2yq3bliZ1lMO_=1R6vc}Ksbgf9$+*>5fu;-0u5fF_-mk} zMZUOp4UH7RS~lqQF$~&i=nyj4Q+Ss)C~YH#7YIP?&;#XEXro6Bn!$WAyRNZ+L?z0} zsh@&KL%pX3Myi2)IwF{bRPrC1;@xVXEi>g$>QAGpGP`~&>Pe`;fgJ_q|9TUUpZ2%= z03|8E7p=zLpZu3&sdo=XFku{nIG9jI83b7cB^BzQ2)O*k(C`{6{ZLcL>_o%-w}T0$ zNm^NM-P-IeXet2F;x69a*4MYDyX*bzL`_Snt%vnp7c-amfR^FfS;Ff@^7!_~yVtKk zl?i?5?EVx{We}8ESbIxART)4TTdFG4@#fw7=BxG1z9sTd&o0V@gk@1sW_IOOW^s_C zC*IU1=&_Z*0Ixt$zrC-wQ=qq#Kg5?a)MDO%qAO8>C*+`oQ<~*I+QFnz+=l zqsrWOw++mRd-<-5us*(mR|mT~8>6EV zENtwac-t3s*O&IS2j*nnb9S_Lb;&Gx{(ib+eX|G6EAzRgrO-Xp7f{9~ASAxJ%rh;) z+}qzAALtvEI`Oe@h4{Xsx7I7b!_?Z;Cp9r3FUu)5#>Cy@wzG3qan|_sFk$1v{7QRO zOQ@ZH)FbEkr(OYOLFP_zc%KkY{{ZjsIG^WDQQtsa+nQV|nw zJ9}9_!`oZB;UhCMI>z4o*dqKOe)zWXp0qx?wJ|^@fpmlkE&t0BeUYf|1|q%eLJT~| zI~0#R;@E49zGLuw!!FQchzQM~!VI7cGIS6clou<+wxw?k?_Q=xx&CgiDf2{_+k}_% z20PbPCe|a|ta?1m#{7(Tq?sKIr7|9>jV0Wfs(zN0ujdyetD3*8XlxGBhaTUg+(n8*VuelvyrmMV14iab6_V!^7?iE8pGno6EOWqM`Q@&*L_PT(I-xto6UwfY+D0J(kVVqj_lulYpZ`6NH!m>=mN$-uk>F>Cp8 zyj|wp@L!#szBt*>*ji6mm`#{Hoiu~_4PcP=gaIdc__Fs^y)#J#Kr%jdE50e}<9^vUa4|7)II?qbi842VmGbf3|h#{I7 zfqn5p`_sh_6hdH%7Js=8#Io?G$a6%9AnqPd9vXKp8dnY)U;cd|kfm4hV1gWDo;pX( zQLz_iWxFroI?hQp7&2FA9Vpe<2+=5iILVnzB?DY_IXx&&F~7?{Z&I0?~1o!!f9Z1G8 zMT;SMit`m2%eA>X&cSq*>J^71A|x5W`Q;AdtzgD)b)Ga$fh1L)WJRuI97l>GdzJ=g zv5`pGNui2!B2||~t8a)knaH-AD)-oE4dD&PJd7tmckw^d<$1gnf2i5<$P1U_UA~t` zqD-dKtv}?uyiK*8SS+Eg)Vp_RNk)w{VcKwO3? z-Y5ivkP2$pmL0)^vJur_uy~HWTVNfL7Ep<0r}=^v3=xnorL{+I0wT}v-VLmh zD8pgrL4H2vw`2DZ&VbczN0mWiWhlt(mnt=uf{x|(^WhIYJd{)VJ`83U9V9V$am2JiON-3w5rbqqt9&XLg) z3}v374yKN=U6koXP{!#F-tUeJf--$$ZJ^40TN}wO4|VZ%w{(awwGFcI@-%mIdgA!( ziM@%f$Fq{^n0Fr<38Xiq^>@>s+d?7|Z5=~w-TZvwL+kobl-YnMU@yveT89TxP=-9T zK}JyK$NFn91Z9>x`UZGI5XH{Y*R`Jn(vC>1b|eXXWN=lTzySmE6Cw4oUeYRtYeP z!8D{Rg!G2(U1cHBUQeBDO`U9=0)vX1UwmF&S|)#9Se+)3Mz+Yk>wq#q82@1?=ukNZ zr4Z~@MBhdP&ylx_8W4kgH&DM7FqEMPGZdPk_?Qryfgx`%mxyh1pDO!nB77}RS*eIW zMN#HDE5~Je#v@!TfHEfpneNN8;txyLxt^LUvzuzMPRLLRh!FAc6u$WftByQ_8oh`i zH|~n4*ewZxKZLojaWmZ#WPczb`cziVQc2QLo5e+s-B(K_L{lbGOFmUgF+*21NgEfX zCK0M29F7x+Ru+v@5e1ZqlIM-X@ujMYAt+NrK^Xv=zo87NEQ?f{Nh--CA;JuTGKer!K(+kz z)x5Oj?3AU?`3Fn0>1R*hJ$f+lz-011qyxS)dFSTD?Hd!f{&@Gt z?{BVL9=>=UXa-QG+ejDi<%N!VyPhV-G%Z>xb?UfUHF?acRb(raCCim0%9JHal_g4) z#ETWgp5sIdlwp_>YneVz>lx|c+uBp6$3US0tm*w7=ERn4J|Wt8Ot{8~uTr10%7ClN z0H!)(FVkTGlqu0*tk&ab1J}<9iJsF^eP^Zn&&vSHbe|Tj(Pz(7IG823zgUBz;Rtuv zIjO!&avf)+YhfgjGIKHv2oj))=B0_}qe&N|&6Q^99(E-ZTXtC96bJS?E=P9yf$S}rBGe$}?N64`F$*{VK z(c=a7JMq!D2<(fNI+!3spCEBCRpLOADqG_*$<~u{HAkhhGz1_p*;{OXfGlIA5_^IQ zPogSssxogfjw@M#JyV0T{HR39NuiQ6f@PP4t8R)lKa_7bQ|YqNdWAQ9=X-iK;_8=_ z`%_8x#-eYGM&5cCXEK#$F`MtaQ0o1;)NeGyu_?^b``Y1S0xT-5e41Rsa*Qfcbcf`a z&qy?#C^Fo{(fy8NxTwW_s7H(*Q15;*BYXKtBb$dmG|&% zt^0IO;_PJE(%fh(@kr6|oCJzm7;L6qG@LY!|<%egAItkV;aB1Zi*g z81hX>B@${=yo**8*#=`W?DLZPkx7BGzc325-NtH*1RhbnPEc&mMG+R+{rcU5GDzc3 zxgk*gFPGRo9K{{-5Q;K;yhw;11FFn_8xqy~7oFy>e?qLxzZZ$3ic8-s@ z<78**;#&5iePH}mVR^Qti^V-RbN}qoA|uo1dHS-VB$8C4@b~dziX=qbM`H zur^L0biPJV#>dvx^_epgD}$m8;6mRrd6&=V4(V{?sba z&fD9;-^tJdC2u;E#>hVCx&NNGQr!p|LXeA+g`{%z@7^R{ZnChn~Lv zmadNGj_&4~SG83G)y?kc~}N})x7R$7#oT#F1+vJ zWaeNWosvBAwq;|pZuBVjjBrKlFZT8er+- z?c(n4<`?FYQ|~{!-n~ScSSEZV5I(N2eju-Y*w~nPKLtsdW34>!Pn~R@;@zXOO9mz& z4e?hn(%P#{;>%5PH|F~JmnHI~Qn(vo6zbzneScsJ+-E3&i7u$_LUkcg-V@~Aqdxt6 z&bB_Zve`XPYMq=YYAWz{xNl&lAZ#kk^MH>VQ05Xn(;+S<9UjJG{PcHanca@d^+a4- zY;bzh_#`Av$~#8T2`_TxJe!sjvjMC8X(8wR>nqI-C0}N z=P0lLasE&vi3lBO76XKG0n=*txw zDu9(DK%)i|Fx8yWM^NU<$?h8$1|MC8fZuoacc)w*&v==A_Ot#HX!kY5aW2|@A;J4c zivJ>rF`1z&*`UWnujR**3KPlClQxP{z{thPgtA1iH6+d#MVZPp7_tO<45=mqP=;KK zg!hslRt6$t0A=bS#wCXc@iBlY;7e*M+-N8Oi3QPV>hm{Il!1+yZ8jDF{UG5oPym1i z{8OOlz(V`L;)A46VVW06lIWznYDt9 zy(qJs9uKyX7PpcTvz!#Y5+AV=7rq)BMu-VrjS5}~4_pfI`w{5<-OmGPX5Q0f-os_y z-T9k~;}=J}FZR}7>|j`v#f-V>dl(U_3AjFnFbAodUb_rW!W+XiDG%NVtMfroJ6St zm?W&^;yAOE7z#Dnigh^44fxv5%DlO!H*0<7qnYum8)`5SLCXoT`Xd4mbONeOjS)|c z5f^APaxKbU0e{d0Gs3%Qg7&7{eu*z+2=i%jPQ1;2=P2%R^(& zOA{&vvq90vOB_rRp)F8iDb?aF*Ab{Rk|;YQ6D!T^Cr#%k&k%xRjl^-rD)XeM2qY`= zB`I>Js&f||k;p$GSa?>b^r~2uiFETb$YFm%ql`n$0wuOg9~ke=rjJ zXgt|$GTZ4>5pYbvSb<-AtWET@D>t=d)L0pmI3%ZY>qO!-;|7ZJ@h={TxH0q@~~4a$yfUe%!cdz-oHwn z``FdCHa$rCF+%;~-~IGQ-~iEQi(mn|5ygcaCP2Dp zFq90CHjsic=tgAwZa=-t8GHM3YCREhqIUL3PY>G>#KH6=bh%p+(=({eEV7+iHwsl? zRoZduAay`1yn|UgUzLCTX%xcPtuxxHQ@%fUMnX|B5xG%VqzlEVgk2rGA;=QF3bukp zPwwd~cJBsq>rlfEgmu)xL`4~tNd7mDK`H0IU(R~-Q9ySb1NfxWf87E9%eS7Pb>mF!y{sHGE$1Nk_!_P3*vi6 zD!+X1U0r_*8Chn&c1Ff#*gA$;Ir;d+hPJ=%`%WDBN0cdU$Oe=lk%u?QeUQ}#Lz#_T zl<|Gw;dIBTL)X&7x1;Ty{ zx?V(;KgWm1nB#-(Ji`WGw@%G;SJdXPWDkB|)w;tRqZ#MZ}oubW&{wsTMc}Nqh$}E^9zDKp_nXf)J{+Ku{so z7i<8^G#7%W2{w}Jb76^iotg__BN%8l8;$v}WygSoc8uJRPpm_X1O`KyYN-RW(a;$f z)3i~QyAB3GQ5 z-u-a@?)3dTAMV|ny8Xwy>sQ|Vc47F!*^x8GLnjXPAJgwStkZo+yUP$fO=>NgN{t!{ zO`3|08cOwQiZ#k|Koci%Fh_~K%0Qs! zj6m-hffvWQAzY?Z^FWd2fl33GszdDMhO9+8j73^7cL9uS;;J#=DA!^xSEaAgU~14| zZ!_R|VZ`5{D^jA!nJmp5F3B7w&EhT3?kvG*D@bd}Lu1WL6CgqZ4x~vO%)>Ed z$S~#LAPNU^?cj3Ng#vKQJ_<|$3T&bBToH=ANh%`A%EEDqyfMlg$y)qLhq$xO2o_zJ zEPpIlYo^p_quGu(?DsnH#{cqo@YSA>Kk9uhm*CG7+Mg|TzEtURyFTPeeVAFHuW5|s zl{-c%x`JE^tgLdJ3Ti@{vK%MH7%z!2U6*Ee5T>(`X8T>9%UFu#uq30gJlh!+)(0vK zHmY>CXE{SGHOu^t*M^;}2r;e*JKhq1zB}zs?{k~sw%`vFjU8+6-;;m5-|3YpD;OM5 znE*On=>AdVV^{V7&;iP!5W^mnK|lc;;)L!+J8U2W_=?-{jAMEO(mn6Ahe!j6G69sw z4B5NOJ(Rv2*@ayT-HRQyvvDt@?EH|O6|AZhQ3pk?olERg1G^$+xzk+33Q|2Zgax}Z zRDgpk?wkbsQiVU!JAg(Jp*Ilj8(bQy0lQ$iQ%P7s>joPUgS|Unvq&$1MG;`V1{L-G zQax(l@ei>w|BWfg-haUqD!vSpHviSuHwS-icKzDwZX0RxPLI3eWb@F$v8cJVrMEpL zC(#^l{=nTbswC~r=RO$RySP63bNl`Ho65+f$fwTU=AM2IVS%k8(43s7ZdmxuBzB0K|p?C`PnF0ok^6@%07 zXNe2n$g>}pCg+xhmx!Z)GRwr*pTBj*BxZqw$=t!yJ36F$eE0|HHDMDTxS=15y+y@= z=7HYV-MwwXgNhq+=7=9i>%*JteJ~V!apN@@f-)Y3y>orz%a5h^<>j^RZgE!j0rpWLty5ziGm}Zx z<&WH*AKO^_M@94v)xr?1<+Tpd&o2!xiXiOQ#KFbVFR-ZhWn6WMOH`~mKFG!`xOb@e z?PN!BRi=}tgSE3&MpIRCL!}D^W!y4Lvfjq9^?)bEzhc{1(-xK9{$j^Qk=C5XEy}-a|$i<||O>e+Odrh1n z=r@hg%zHCs_givL24su7Ch(Y<2|~J1JxR`sA_jL9Pd`zVcq-5GM4I`T1gDFJl!c7U zGf72zWt^80yZ0duKP?_#MQ(2yj$l!~P;r3}83FJvMX89zD2swH6Qd-YrYTi;Sf%2) zdbzP`@gc?M2J*=4OU4>7dE|>L#xJg(1na%~+qlL3N&APuF_ZWQA3RKF{jKLi9T%cp zf5f=Y$9sKG@>xy~CgesD^P(}1*(gp1g4rsi*m`Lyp)?7TWUwe1;21IzB9lR`%Oux9 zbPI&*X0AaZnc5r-SrC+gz!ym43jr}ylmXDePzL1~1aVN5LE>rl8j3X(pdmLDB355O zMuBF%HlK{8nSuPj)wx@>`CB#ln?N(=*@&kJMl(@_8EhOApiKHo4(eb^Pgns-CLK^F zo{+i+W#Ry35MhQ88N3okMHxTOML&-vKaWKp_XQ8%RvNWA~ zg3dSj;Lfzk?I{ybWo}O1x;}pGx6#Yzht8jQbN=L;bH*d5j=VZ_s1BrrJonfxha}^ zORVsoO!-sgI!o;)3;miWnqim4ZH!nSs_wrjOLH5y@17dVBVFFd`a*wb2pWsgsj%)> zVr5k4;ge>Sm*-THW<4&(cv*t^hKhifG@GLw=S_Le6OznFL}(97&>PDhysbcMsm+YP zCz~05btwM#o`}=cp(mi&p>PQ7JZlK;4ME*h5 z9pt)LQ@lY@(_ss;mnvT&cYw+6-KZWmMxtH4e@(LZ;qL<7Dg zG>jL?j|b}rrfd!)_Mf~0#s1CE1L5$0HlTrJ;?U;L_dRdxqjQ6vxtp3e*=5vJl(cn3 zWj=rA?Ecu^w79W+@>}=fR{!$$5b5W1&+GEg#3*yTuZ5eRT|{8x*w8#_l(5$PYBbLy zAki8h_RJ~JFFv>P&AZLb-mT4!71B`un-;$)w|j0*cio)BG7|>IItkkgUr7VmRsPQY zjuwuAR`|gDnym4;!KJN_D;v`*>(j)wPo&jP>!bw4Mt?rm~;k(r0ReSlj_M_m;lR6>M_o5w9D2>UI1|8Z(< z>(jT@n%bAX)_(pEoI~*eVR?Cp-@i{UZhl7?0sAQ=Q=!~ zh@lTIw!ZWJ>^$O>GH6L;FV!tg-tPS}U)@*fSMb=_LV@9tAP0Dtt_pDK2{3E(Fc`4& z8?Xo-<>dH7mcjQojmk9Tjt1rGQe1enkhedZ<4w^=1_IaRS#OB2n@ICn%JJLC@>+^> zne(%QSqO6DrNsj^m7)(Rhv>-q!vqB~`~floQF6kuII(1P=`=0bBsIx6oKUnZf0BYw zj;17dl*&Ml(UvOEmMqqngXDPi=k%H`7&Klw)O6)o`^__bPp^;Kn2g~czx6Pk@Ui?D zXg3>%{}v4)GM@ACo^y#_-;%r+GlSL&qew7SWN93!ES^-JK&(huE015ROe9t%lB$v+ zGG@IheWN-9v6{@yTFkOGYqQ`_G(R4;J!`Wrd#f%R+rCkgwE^M4i0-nhwIHetc$XmZ z7pw)b%_hXhMDakOd#PlD4RJye&rpVQqw_ay)F3(ZHX+*{BN#W zVsRQQNrS;YLzwcHFsP8uOAbu}Y-H9cuHEny`!VJR_cF+OrJE@Ck@{CjjL z49s2#51bG4p9}Gu3-+CZM8IG{UUU8)UyuZP&M-pzBi?St-fG&`eA>cv$`nR3J(#$E z_uakQ@9*4rckBAwKdz2l{cZHOOK-1S7`uFS`25L%)5rQw9_c%AxYzhl_fdm(Bb_#V ztri{iCJmJaHKke=T&03+g}iiytW<@ZRF#}`wY*H3yjY>UK)x(rt_*jMG*^x^N3JYK zp#o2(u5j})+5X=&CLSD_vpVcO@{oNq2mPTy1tV$!V)7umn_eiqQ>HmMusaqJ~-0mAR2X860=G47-CMy#?pK zyZj8dgjw%M^FGj!u{G9qJ!9y4N*{kz(^+51Nk`$bnxKvhlLG%fDHa-O)_roUZ1ODJ z^2~fVMoC3xX(c9QWhM_of*yt9xUWm+hty+HDwEgYn`f@MY z@$d1fpr`@eEh4=@PYhi+1mt0a@lQ*H5~%32+euR)23jo)4v-~^Ea(XlT0&3&a>N7Z zP(K2pVT3YB0dyBuF$7*g4i89(^X8kzzN$aBIA`nU`&7K}6SN*T%+= z@$vrh)`IZd0EaLKQ-9BUZjM25ex2PV1kx1Y&(CjXyQ2&8A9_TadW9rpczyWVHS=w_ zye{9?&EkQ#ty4l^S$pm0`5E%h}YL6E{12m`_h%Q)7K$NL;vytH&)z=j@V__a8q3%FGk0YhQZV`1?I@4tDkr zd7hKFw)kmrYij=IyQR(PP15`pd0~CKXZ=?*`By7pyM1ZB8K7^e6|{H5mrai>mpFVhyz- zWyNCQVf@}+%nnzCp6K%5#2sjnxPf|vcXVhhh{Ke5=t`&(15`f)GY;?O)fHiy9v{23LuOIOQweo@J7Oc*HPO* zCUQbhX1g|Tvl`q?dr$^w1~{fPom`qhq@oNl4^SqZkd;Qrq|!`!;&L(!Wr|u#fcW2t z?=fLNqC>t%2F*tVehUkj1E2}@oeTAu3-Or?^!noO{>9sM#smM+#eT-o=7YTz5&~>) zI`#AsM9cuqOx(To{`Mc^H?Kjs4A9J*D;Hj0Ix}?cWdEsSy?`<&kMy57+I#$P*Abu@ z-FAKL7rL4)T96J{xmFohg_Et6l`fZ&tdK^mR93V|PWZX3P=PFet`u*MBxjBkN1iNK zp)yaYhCr>M*vqrH(OdeHPmJE&)9U>l*LFd)`K(aW8G-tfymcq|YflK3ALh;1V#!cC zn1MTxufkjoDS8bB>kWn4j*0c1k$Gt>+Nj4~qe0)O!`OF%d*XNL@yo(}#;gqn39~IOtDPNNsMgCjBK&|2Vmx-1f_!k8gy>*`^-fdAM&$4;bpbunksFYG7XwyRhs8&`@r#3qRp7E z&Xumfk}AiZp}=3DAyRF`S96HB(txK_n**j#%1~lTl%)$1rFG-oZ^uGo#kS9m=b)<) zqmLMiza)F2EJKbeTe%i{qc&567E|qUnKU)N2ywbt3A#)r&J1OkcAFuA0(AEwv|_s%FaakL9I|aRN$`ERwtjgqRM9Fw;peaZ4}= zNYDw((BTxBRg{@^m6;5c7!D~MJcB!M8h79irGpRE7|gYpJoH$-l^8wc=sgvf+~n!* zYH*ky=8V3;Q~N-+GxYrHsLO9-ua1PB>u}PldMwrRShC+rw=n!cdRN-e#_Y>Km)h4? zyAdqdqxC|cigc5xh5<{ICw3*_y?;V63@MP#ey>q61(*XdYEy|msBD3roQf34d7y#C3hy?XR4EAiQ3%Rlq=m7_ChFFw z0?keZb_-+53W^#SUceGVik<6XKLNI5mEXZ8h(zAeW)L3Qxz$i@>PfJ3VyA*7*xs8) z`7KaAOx8m7QlJn{Nb}F?%fEYwzt4YjT75WqtMYCiy)Cqs)G*K~cuW$_-SRwC3UIdGO(F zcPwr9ekKfLRfahFgqhk!xCX=*H5AVgzpehnP^O2piQ3P;#r5{?*ClTL5mtB~Gf(@l z{OF#^o?pLyEGgHRB7hZvMIE1mn z+60eK4>P=-m8(loLgv84ms#@H`Crou+waI*qyJ_I;!wXl{&8jJ%K&+lcOG$S6M#Is z=tk^8hr+wX;00TIIX0G68~-fvyn=-|%_Bk1`@Gzj_}H}sm^Anq4cP?^nS_t9aa@(6 z_q?c*6DM3%&i_15C_G5O%azII0{=rTzB@QJ6G@gwvK+SZ0#5S6csUVwIdLCF>0nKz zAaw;#oP>)MznhGpkE~#ToM5PeNRp~#j=oZ?qDY7oPZUltQ5kZ{h-a!xN;FVd5#I;z}sR;TUik(YlQ@4R!i@6nYv)^{h}o_+GM`RHd095WN*@HNt9A=dK; z#K$E2Ev5KuX$A&n zLzVQGohPoXF zI_-K|Kr@IoqbLu0Ou4i~nWT8BglMs}NRg~C*mF6-0vY~1X`UP@&TL7JY+18R`2X89({4U>qNuuSPNYh!7hBKly#|29CIrB7_b5$7&)mTck zIV*LzE3~<4bh%p&2>{BxJi^zc$JVIB^wNlR_^i}BJQR4H)@jv4{@Ea%HF$P+l1N+sP=?r+- zjtcUekr2KjCviho{E{f2o)iyGj8&Y6UYMCll$Ax2MM#=iT$)izo>5hqO-qH@P=)ER z3Ztr3KSC!k zT@Qf8zZ%jvLx+l#+-uZ6dk0)7D}O;5lvgMSg$fdA(}(rkP@dZH?;^{t)&kkikO`qF z@icJA+6I<$ixOqB(^~GftJLlvK@B9A3UVy8v`7I!8I)s?lVHVQx*im#fJl&P0De&m zqb)GyT1Z2UUU#Qi-f5XJ)damc=$%3D5^^5&RM>CCDuA5?tp@s)`#(_zNxi#Edr*>s zGRT}lfHIpy2zhKF(JinJWP>Ry|A8Y&$^URa{Vy2wdUfM1pv?G}&g`mKaJAgCw+hQj zi_I@{k4Sss$-@IKQK$(>H^Ia=H->q(rt!<5OkY?5iFni_r##Z;&Z`BCOcmT?{xJ70(4}bhl99rA% zTG{HGB@Eo2=rm%92#S~>eZ zb9W5QjqRD}{q^hX*2bqFo8uktD?+mU?zwoHxO#;qM0a#GED=7f{W<+&q{uHl*2E*k z)HgV5ud&sQ=|$4a68R$_ zVE?TGZyW>L|L-V+ybKt%P=IF7XASyHV~;iR z=pzq3^6rsV+eiA7ii7V)8cSMA&^(5b*nGSfdDyl18MXNt^;vlI8Tbyfvi>g3;Cn?q zCk`YT-n>lya9=@pI|hqWAb0cKQ{;Rk%V~<^vBwEH%Zs|<#C?=xf;AKa)a3n?WqcGR zJ>-Sm|iS4OOEPv9Sa^s)XDVE;MD;Zum?EE?wv9J8F_zmgWPk{-B} z6$FyZYF;=AP^JV?Wp+?zts-u%I)Ml%QjfgIoJcB4SJM4n-4gC4DKKoaF z&aZ~tUyZvn6#$oPB7>MH27hir#yrUUi_Kk7i=@{>HzFKEDGW1aL)tyqMU`ZBgqaf(}bXm_pComYv4BP&s_{E}VLG_V~bQ@ zTxFW<#i}e26kM&v-ekzvewgot5qGNr`wK(X&ZC@tC%6VqakUEX<17cY4(?N6*ssid zK%S9Sk(FMHhs{WUQ0d(5QoPRu5csv5ETYr8Cnk+S|>&N+gcotZYZR>pBf6gKJIoh z-RWpTz?C?!3trcy?_3dcy)5ePbTPCswc+PyP~>|yzxNQAcVz>#qeZ%HlwD8>0fUnN zTq1rGFvJ%_Ne7Go(EmJys>fgy0@tDxLpkX$eLRX&)V)9wRGQg~0+`-IUG8l&_pW2@ zK$Thh6GfS=KH^p%>8~jB)XgC@H?D88Z+r9e2KmFv_C)V=O-Q!y4SVPN zZr&mBQ7=2|SBYQ9|8J(gH`^m2{I-k#Q}4iv#=?c=nN{+9&(I6M2(NqYHV=IrQ%ZB+ zeR#LFxdbTF-Wll|<$50vC=*sYSkpJtnOmOW=w#yrQN~%hNwtk`3GsKFtU_~BCO^Gt zZY%eR3c7`Nx$EklS6=ac56ak~DC3HtOah<`Fv^c#(BnJ zKga+4bCR_Ed3pWw()!1hUz4+hq0G``CqKNIvn@nkrxjO?&5pxV3|}Fg@&A7Z6XspQ z82=xZ$a7D9qu>hw`Ha|cRBeoqSKIqKqO(1(1{(?6Nbi3p#($rm?*b2-79Rtkj1B{b z&H?VjtSo=XF^1jNFHDvwE#k>e^K*o%mZcar#K!nC4NT*5f_}8D^A>7 zLCRl6-c452T~^djMJ7l?CO}OpN=r7yNGbcMdbXZI3{EJ=P^tW^LB(19@>4p`kErJB z%jfIL6za>CA6BeAq1JxcXyDe#VUu%1k1vmyULCc(`Oe|N2e)T4zSf`oYyo9v!=2}& z-M`0sFDLu0rUeo*f(V(xD>nk6igKCwA@&O%UzAxZRLvgm6q{Y!-ECSlhjM=ftr$+sMC^w%4Nrt!D zn78^UU*#d53PTva-vRj$QRs=-zcN`^XXi84dAI%At5SGO^Lk1=%f-<%G`x=ZG>x@`n*2yAu zjyxsibXlfEF@`u1+UM$wkRYe_5HE}{FV$gxuEX_QmpfgZJ5+|%g$E=V8Y`~-Hr)H| zxc58o()tSQ3y0BFIJy#bB#%zIE?2IxXu&bDOl{s2HI5Wjoje$Q>x#6OmG_%yG1wg8_Bt&Xe?}-lk26f3-dkdyogD2ACB{3~ z<&!H)XwV$@vG|P3bA^`L(#QHru_u*iT-CNevO2 z0R;m11M6b34j9(|fk^(wDAX{TT~%gJ0m?>=4>(e4@R(E*syk|+ZqB!pcZ;RZzN z7)JJ@@(I@Z?NkX?cFG_nQN3ojL6GHN?B5QA?FhFbzvQH@cds^~)BV}Jx;{if88;Wmq!ON)I`rlh z>F3%!c|4~g!r9N=!XeZG#z)sBzgy^B`Z>0|H3Y#f>+A2yr1zUJ{%EUncA+9N$p=&! zYd2Sqi0sy(&x@qj5X?*18u&`+&#er``vjTU1-l1El{6O2lfJC}8X^AK3u4UL7Np08 z_@1F38(m$a70!WC7B0TeTwP-FGe&VQ1pyknlWvY!Xmrb?fKw zi_OqY-CyZkn z`1*Zpl{E8h>C<<@JYjo&aeH*>=bPHDeE)b?Ggs4RPOknjiG33z3)|lpHb4KTD)X;{ zn|4?mc>(^(;K@dwdsI!u-Ya;Vu%poB$olt|?%Kc<+cSRJ{B}|YpNR{Z@C#hz=FsD1 z1~X*jFgnO(%+7L4i7DpM;o?-8(gL2GM7}r=ao5N6PmQ?mDe>P|;4_sMuv8MkD@nL1 zO1j}B+~vePAXXVMJF_iPHN{LQ_nF} z%+!_3gpK;LB}bL&&T6$?G3vf~V(|XC5tyC80%j+;@z%j)!tLqI|Hs;UM@5lz@!tbT z9CAi-&N&GtbY0WByYA|)SrjCrWQLq!$T{bnqhJ;=p&}VnRE!{bm?5Lj`_Fr;dqCEG zc7MO~yze>p^l5sktE-!ts!xCKy;Xq@uS1<)hdGa+H40FO%y?ShR7S{jcGz@I_)KoZ zbV1}yVdQLa44@3H0-+2ILz%hSBuY)vTwU^9eG0WceZDSh0it2(0WpYXFqFwbWYd%j z>Iv# zhG+(+@h|3A4qzyoH)vT6H!JLS!INraWV=EQ3-8D3du;fNU1F z`M@z56l8!hsbJI`%(8)I5-I5kl+@Unl<4WCsHvpLsYLQbT-fKBkTF<2J3QcHs4toY z7$%zufDCQY7%&awG{HZxbvnL0!;NO8ie;fGo*Z$+b^!G>3nDa$xVneY@}P-EnW1>AfA>+P516&D=54yQ!yrO-sE=O}So4zE)ngLSDL5 zUJ5gb5_$1r`K?8Aq6MhM|%XP)d^~7`4g=588A|aJYf{-G|n4!dyt4>T;5{ZQ6 zz&Kf~mh?keF=BlWQhgxNB>YHZf6+J4KT} zQCozpBN1;b?_nT+Muu+>FQXPWqYfXlG?7t=nL%I+g9yi#t(>gFTtt3OB0oEq5Q~r) zhp04%k{nS}fvBg-zFnPjmlpevdc>a$xqj1UKdr%dOoL!nMW>JZNHlJh&L~0R{>Pl`xb6 zkV45m(9vO-f_g%Hu>bE{Si1Ocipa*14N#z;yHObHT~VL8h#5{Z7>;b5`5P|GbWY~eo~P7h$|!ZPpeEJ>rpQAm6AmcTKiWFJ z+%vKGWNN9CHa|e4LJrik`K7k^2xX9i$h1hWd5}Lz%hN4$5LDvenMd^Y`c|LkhC;^h_wq?|V0}w)UJl_XN_Q?hhA7 z75biX2{R`}lM^!U-f5ef8Jk_}DZ5Q}Pxd<-7-$(1oR*(obM<%@ z{%&baGiC)$p_rrYIblSni%)>w7qOHK8EHmSkz=>gnVc zc&(%D|1SR59rOjo4F8>ME`xu$;r9vO;O{=ge^*m)8m^U)VlVFS z*5JJ?v*nV6=oulABLaLT!d%+~iMu!j%-Dr~3XucAj#}dsX=kR#&?hHx_|12j`IhfUHYZV;g3G& z(}SKDhyCr|hdIBG_Iw}hfrt7c*HT9CbXF+nF~Bjid1S;fMNyQJn7MKsWs+z$$+X&J z5N3d8Fpf!~0m|Tky?;R)%?1HL5iD1jkirYRTqE&OiDf&LYcYTR4_mp8qiF33KbJ(C~2{?fHKK|GGrWO#$!T0M+J>V1bzzh z8x8gy#iq_13m^f_eDZMl;Bxuh6^C~YHgD`MjaXfLV{slPm_a_K6UPQl{5EjnSD=}} zG$##MEdMrDOM1-WWP*>Xjh zG6m@pIf-I9@nX5HMe<@`1qy-%@&Z}XoN1D5S+c}@6^NVRE7pYI68@TPVz&+|KRsbI zbZO^H`|bUfhEGmuwEiM@b+1U(Hl8Aw8BdF)6e3IXIU5Xls&!x*J?3g{mS!W)HZ#FT zKZ-s0L8xsP@10$|H}?pXYB6RhGUussm*|QV>2FO_=7tGf;-v`5vJ9DWTk=&oa+JlA zr9^}IIUU%UY*+{u+yo0@g1s=okDCy{%Mi>@2p3|A-pZJv$XKFFtT*Lq-p$>-i?c?b zp~0BBc{{OX2lrJ|E?5}~+(U&bEIIO9vSb<4WC;c8TPpO4KtCADa2M!sq-hYNlsST= zm~43n*4zYJJ_dV1MhBRwPk=xYW(bpJN>gJiG8RfQ=87}sNZZbrzf&|`lPyk#n5He5 ztScI(Arh@86}CsmQAg&mD7zYwphjer<6#l!ViD%pBEZ2c%*7_a$;n6L;^*KMVH4X* zl#n5+%5&-{aT=-DjDPMHARU)a`9mT42ce%__L1r%(_Y>vebZX^{C4Y$JNG_zch7x%yFC4A zdg2*nx@%^(6S;@hT|(c`0R^Lci_-me93QaPxA>6!{ioP_7rcF8zM*e(Nzlh{t8b}Ub zCjOh-D5zF2*+-1@O-Nzh4?_ zDk^|$NSN3I4Teh~l=0|qXPTTiO|<2=k=9WMv_ zI0cbyy}})Qf|GNTdtUWS%=gWJDzo@#ZtdlRzS@|K1V<7=88>pqjjoZ;bHkLm+fRFn zd?Ml;NWoSl@1Tt2w!w~tl{PRNI(plKV*}57K|Z!mbWT=h&l4I#nW2K(c+VhT zJC{g6nL-R@KCg6-FG6MW3i6Gb>$`wTE-7k12~?$W~#_-v{kIbx4%~l=1LNC@AcG11K{vPkTJRbnpIf zesrPFX_v@z?lF;x`R#2TQ!^72YmW=B1v$lgobvZR@9*Om9vMiE4v!@VNBCYLIbIBK zJLByXo1gWpAKW*T#pUknH)8{${LZ_DTKh)U-f!&t+}qNAH8eEH#m(h%M6`Qix@}mf zb*Ojljk?j~@NX!y^n7xqe`=`*ZiKqr zGr!vTY5Laf`*~rJfuZDpuxN61Q{(W*=Tob_ldHW0pIUS4V;%i2S-W{yxw@BMYj`#J zfwDUF{{>}mY{$3oZAK`AzdE38H~ss)@sn7mBJ|Csb&d^GG-O^5KWX5mOthC`G#7&f zv4wx)=i31&Bfw$CDewbP_>d6Kc}OI2I#`*hT$sh3PUcQ_lXd@N%W-AqpT#*&$nsk& zZoRA_L()+2)ll$Jlk-)U0@sqavP7V!Y=nVwEG(&Qq8w)=pJ*hPx=kV1L@|H6at2_H zo@|1Sbh3_ArlCT?c9n`fnzj4&T7EXZeQam@sUIGhA9`kew8!bxp!@k3zE*ESu6&Gg z|CHbZdDo*!e!wvh=L;M&n-dNYGn-GQ6adFW1IJKGQTh_CGJ#h87nGrbB-4`^29snqP-Z+Tc$|!cnXyp6 zF`$`1Z{QekFnt7+fl2e69p7KJed}QT&en3o>cXpwXJ4Emg$osg@_}Y#xRS+KlEs;`~`-f2iL)CtmixuT{=VNtX zV=(6?oDn2k5+aaz7`=HJeRvuCcnLuQgcwOemO5L75oZ%x!GN#97}m{Zfok z!HBy`hrL7^U3C37OmJA)xRvNlJ&GDoU9e~Ok!q`F9yhG^W6 z`T;xC&&Uhvaxtkg6O{Ofa)O-VyzJZ@th_{aUJg!P4sL!TzX*qf7^kE(QB96hSBc9= zopZMamzf^-VI%Hejkta{nRT%W-3YGhVBPrU0pjmh!P`tPkM;lbc48a@<>`(2E6rdig9ZE|m4zNRgZxeZ zVhC~m!S{q8|F?4&kt72sLs=Pa@2(3t1B&Rg%`MaT6h}Bqm zJiXLGT^oMXR~w5^CfJb_>K>7E^V!Goxi^%#JDoknKI9k&QlOO=DKIm!ZRpX$%H4&P zo73|>9lZ~OV?)hJD6Td(JL_4`;~bJC}%prqsT%*3W<)kZ`oz zF}K(^H{VYKd1m?UyU$fIX#pT;HbG&wVbPa@0xw4g6}2{x z&waSl-WUiOOg{dAGISKuE6 zX;~0<-SuwbcH@m~Csz+x}Gpn#-@Xd?awSlpvXCst{)pt|e!)@$Ho|Z1o8Rf-Y zZ(h!>&Tjsuez%X4_~x(gU-!R>miSK*%73c?bI{`DHxAOj+31zx>E~x9jS044zw05#wT=`k8hVCmkAHsZZ__H>;gwbxG$RW6#4v8m#) z3Bn;E)|1i#_R3PunhIVTihk;fergcvD;KCPAEYG*922)gGhw%Sl!;=jp-hsoOqz*& zhM^2Z0K{oa#Oum{r5VcS?Nl$_t5vmMxAvg^)t`-S0?M5I@rm^>y;uGm^fZ6zYY7Wq zzacw+i1qxK?E4Awu2TcXGlC{TkI9XoU=TxrP+yE==1>}T++0OGtttV$OY^muDpLo- zOcJ0BZ5?GW@6txB%(rCh_4r>p&CnrcU8g~gr{+S)V?qWH(*!$(aAdi;2*POS)?9=g zfxw#LFV{=gu9v_LIt!JDbBmUnidMj`7K1Ir5y)M_v>Ct`L@)?quCl6%A^)%Pz%zj2xZc!IVsfaBx+XT9B@o}EG0E&COK*vp-cqWL~Pi2 zOz3!Y$V6oD=ZL`ZumBuofMY)Sx_|U^`2dsVxm^C>WdHuM-FpY?w|17Vt;}Km-=T9S z2TuJyaPsKjso#c9{RTVz$A9kq?QqvG8z{5;k=YI;%z&H8#HiIs|F*sk2s76-)LPV4 zu4XeigJC{!xQl*vh!LgfsRXQwX z>WtOe%-6T`-7yoqxs&hKF24KwgxdD-R~ZvC)wU!kFvO`dXBqPp7;?dUGwHGngMF`nfn9OEaP6<~1X-Qvd2;>pM4$xHC!L(6E#E3oG25G%Lw z)bA9yzMH?!n7vw$xmKUKX&c8i6PU`6y+VCUu_8mhJV-u-6nR3n3PXuDbG0#Njj zUDh;pmRJ?GD990#V7V;BWW&c`!ArQr2W}?tXEAw6Fo(&r#cA-Sm~bW$iv1#WG8ZRad7hz zc?CFyML4BJxMU=WkeaQh$Zf37Wv0$;X2k!q3EyubnB?!T-AbR&pLfH86h)rZM19 zvcWX)C*I?s@f*j8O&%p^CtApP9l4-R`n5K_?9nj=lP>U!LK&zNb)icr)pVl^-F)sw z2a5_|3_)+eW;VjEOTRisNSkj8_P^Z=rXHc|LVu236sn~y^=udlzQM18!h{if!RhG6 z7Xd|jXv;m{3cz#Nuyqd?)Jy<^!4sG8R3;ikjVyN|`)8W@KcEa2dGk-FqXsSYQxo*ohxa^5w}k`&SO`1&wq_9P`1IP7{D1_P%f7xg9X*4u7A3pEvdCSZ6VyOvEu=H)T#cNyd|c{J-%C9^&QQDL^zN zZZTnEGh^mHBEn;1CRiJGs-?`JFq<#lkDYv8?3@APej&m^LAFz}LRZw~Ty>NIWqec> zeAVP3aVbnkC3TNc+7Cvtrs@%fa#7n96Sm36=}Sgx2uCXOMXLzJYKa5KBT zX;=KHTXR6K?vO#tuO@d-?0IZ?r0>d~FFnt{_O~7hvKt9?93eZuk8yvW;Qc<)dlXIS zi~LH!F>?ixbA{2=;ux^G(pbpBM!8D}Wl*3Dpv-(-GHo-;Kn4>YE7O3fGI-=Krp+LE z1~Rehvteh$wFFVX$mN79G*~`19c2*EAdUfoS-n=gdaVQuA~P z;~t<#oVDnYkfHI5K$UvCEwHc6S7AgvmmFF*%=Fv)W z=Zmwbg_%@bmB~w^LX=Ea(p+Z3Tt?h1=3Sae296<5CPaWu#D)UOOvHptMumVdgQE<@ z$^gfF@OJy;>GH|l`JB|~l5Iz1N(_0UWeCC2jG0E<<=X{|^fgyCi^R7SOY)RT3+Ky;kYxn` zT+Z04Nh6NFYlxq$)EOXfszDbG9AW3JV%kXfsu6GXcun z+6C9*f>i1fD4;+{Qy?VE5z-Y1g&JFGjJayI^OYKKWPrCwjU!Ht7^WsjlIE}zWHRR@ zfZ6gPl<}5g30GtXlu0mPO*CdnHRi}Q<}2APmY~2MCc+pa%L5MCR2|7c4eIX#a`Bwy6Z zb>AOX=z6`su61tkI%Vkk+@~AUA6h0pwoXoTQK^Fy^WBt{0qP0}-bjjoE(j!nztGG^ z%*Q5-_%>{>iyY`&3^+DAG3cG}j&8lP!le!jO4h4_!W*Arr(*%Un2v(08XH~Z=E{*Y zf>FhW@__^-8ss3u6~A2+?=$h6+SDq-3>UtT;NY9J>?T7g928SE0Ad8_l|#N5a%<<`Te z+3rE$b@H?F@e0UJZhi4|Y4s`0OACuRcl37pM~0no_d4b76`7IJ+10+hI{k6Fzpy&N zCp7r7dxEVqxv)8N@bkmZs{@~xyJo)(!nDFu)WIq08B-4 zWQ*X#>X#Kbtt6QL5EA)?S9CuQ|1LgGGXb7Gti(e^{y$^|?GKC9#hoq9Qq4@`j`QXU zIxJ|V&G@s(mS4qqEtI7^bX7fdRlU^ZeN^Rww3OmZwKDc?%lOeK$xJ(Xn{t?ebhx2( zq`nkcXKRFpNQ|0jyq0*Jwj`iTvY|YnO#Uv7vc1|M$+R3bZ9DzL6U!q#j>iXFPCfTH zJLF?A9BBPI{PLR^xAzHN?^1l;1Ofq@=_ z3^K7XgUDZuX6EZt<{MHM8Zz*(7|gqbVtzL;1$N-iO@a;fDHb=gLeIy}hkWc+6#rYe z0)}#$zzUYZ!1r`DAEpLgg7QE=Ehuvv!h~T9A1$KD8;Bh)S;bHWR2d+c<%R+X^~K_2 zav=d5K@3JPIL9o(KFBiwF^FTbX=T~e(rj8uHmx|DT9gH<46?!uT0t7vTy`QQGoF$W z2PgwZ%ZQ_<$52v1m?2LlhEK+ZPDF>`4yJK(;ABM5L|DLhurG@F_4W7ws*JnS2e&I9 zTpZpbVaEEcz2zI5i?1%7AGSRA^5Ur%7fuYF|6}m%vHsJ)^`H2)_xO=+5N5E1Cdkc3 z;W8l1U^H{z#OR)}VY{Jzo1X4nUF{p%npZW|8zHAjO}R!{p;A${OkN5+O@*?e`7$8P zKthu!Sgx#4rW9YA1ON?ZssvYtG;g+?K%OdZu|8L&i9qu{se8X`be}VZWt;lVw>>_t z-g;QJX{TVh9($!ev1O;=wcSFshMf6|ggga?Is?v|WZuKaGr}`!9%cu+-zYc zUupITHNhk;=Dcmh(w%~(+e8Zu1&egV^3+5!l?BsOgfdixBNX{#G{xggRlH5rj|;IH z@^Gkfawu~1NeasHvI_8W@bPmA2=R#GC?mzGE=$x=;4)O_-l@fFwoUNxcEMkad5;*d zAJu33)qv%U5sQTpi?tDxixG>n5z$GX=%C4Lr9v>*W3@XV7OPy1zAk1L7LYP~GK0+h!5*}ajEeZrz8Zg-a zbDFHbbggs7`f!eQVyJ&ZV>Tv!KtYq3$8% zhFdisrr*x34bH7Sq^u&8>3VrJDkaL+#oO5@!ZkSSVGLC8002M$NklF$TAhWN}NM^76Y zHh_6Eh>zvxC!=!Es7|UM1N(EF7lnBZY=kT+11yz66w+U4AsX)Va9!YMKft z1DOA~t*eF<7GX#7f_eWE3aa|wzFJ**N~PYPTE6#SIFFp~dD=Pgf@gYIOkvyIr!#X? z&qgcA1(&SDZ7+oR`DDRdIKw^9-}XH3YkhbvqcG(nME(Z2dq+pqU2UN(P*+w5@7zfZ ziVi;SO1ATlZ|b=5eEMbA%dVp0d_WlsAAiVHGWR9b8WH;Y1gff)Rl$F<$tIsEv`llAUXsd%0v}doz?zXg+dHIJs zID5I00A+5xdjAnn=JRsz%-V~G1NG!gUu$%11zl|p2X*u3= zN|N^4O5O$ zOCm*2CQ(l&L0>l2NHN<~C4Z+npbSVdH;(OmaQ?tE>tFk?{5j-y=DFv&AzzDEK{jv5 zPH*EqKc@J6NDugs5jdV3N{{e`ylX(2G7M!ZHaI46z8V<~%V2`AUs_!XaLhtO>SANs zQd8yzy8xi9HlysMO-2`B;3GWv7x|dzmWLFYmI54Q5X~T7!8ryTPx$~b8ytg`0ksBD z1}Fy*2l=qTorDMm$uP*Nv|Nu+W~nX@Y_T?PGsghUEP*ytnGJ@aOcu2?i&}zNaV8Z( z49+p>wEQ$$e(GFy0wpsJM;U5n{Cs8{Ei-m5EqW#y!hXZ2;=(3lLP3(5hztT%W||y4 z6%jNU>i;>&d(_`^)Z2ZOLF$a`+b?NM|<*DaDGv|&EocSGu znSm2W`@qeFvYGaGLT>gxvyQzxAMM`$V5iALQ{xBQjP4m3wCn4(;wYn~(F8Q3u3D#} zRHYyNI9HkkPlgm2ow~=W8_OE7xKzRAH>tVXZUdY%$?! z+ri(qQ=sjz*zF@CRlB*PRSEtuql_F=9?VIjD_A2hP$tEdFUp)NvL#mvLQ({yWjU^h zF`wmUJj2CsiIdTekIhwt=qX0@5N31ZA-Hf6`~_h`8sTup}T)tXGjN(g1*WsoqFr@p0T8y9%E8g~hloA4#8vqj1>Mr#R&sPMT;uv_vo znPVtp$%_)2JhrlgDDx+(Z^<)aFWW9qW-MB$Cs3*Sx=jCT-wF$V8-ROi_6oH-9d}lQiI7tonT?W>ad?b`nY(}Ntx19a(NaS z=laDxtGo7jq;Y1nd1~_BB&CaN}}sm{)FE9Jv-p;K~u=jJb_jkMO zAMD^0=0lFX-hTDd%sa?T#!+T&ZK&&IQ%q{KgPWh5f22oP&h?JBpJ!iEX}7xi3cVx9 zAbVJPfhv>U`m%d=@$vE(_`kk;_^jJ6oP5^Z>w-@}N^y4IK-<*p@C0qBv_8=*IKa+1 z*48De_*&ufiLS}DH=kFBCceCwS$s3U@@a8xn7VR*lyW^f&Hu8Otv$)jFDC2O)0bn@ z?Uaqe7&o4ZiSbfw!To94(bIv`<+#@+GI&E3@;{FGjk`8VfH4dqOg{XJlw?Q!}8<>e};Lw^ITlAy$TL;~Ur5 zaea99)!^HKs;V+)H>Zm}zGuCCF8Y%~a$S(+Z3S$;FV`f_6B#mvfc$b=uC?|w7he&c?XZ*YX2le-Hkw7Bxd zs}G+jUtUkF3{9;L-|ugV%z`O@NEXh{G1^)=E8-k~37W}LonNA`hT zIR{L$_8CVRD+lXH1!+qL>q>+fNRdI6(UpvZ5E(7WWIfqreYs=<`7~pt98;CTT^bep zbQ_Nt-}+A;I2aX-bjPVM_VlKdbvIy zGsHBo0~*X?RrWW-AZD>LYq2700aBSZP^Ktz4vUhR12G05CNCLTcEVg%{9GoIWT=^O z2xT%blu3bDnXu{j@afp_DU4<&qk?B5LlDh`1xy6{j0Jj)`;o?dJ;%M>$4TI6y7JN4 z?!BYch@Hi2>kGqH=U-c&du4Uz#YGTijt`zYHgxvb(CObHr>Xb1pPv1^|JmVvod@Y3)7x6`gae?lxVXSs54gTbHF0i^~T(lx@=|I%*Eo+EUUjP(NUD`0w>`D2ZI$a z%M~FGH&IS^Q4Tjg24`-9HzYKPGo~oBR~rj7?F5t&sMcpM)7(<8&vwvLWMV6mCsw2+fJDE0vF*DFQ_sE zJAQ(T@D_hLo&;s4Z0#*Y2Hd5FqQ&|`McU$pniBaMTXWS#VO0cJ(>oEA8$;Qs-I_s$ z3I_yvby!%{Sb5~Q<)n$y!ki+4+(N?KTeot{fk_e7WjJ)?IrLOGOw_q{=y2^Z;M!-% zb-;l5vmX0TM(n3{@!0Gaas5Ry>^B+mE`B#{7E5);3mODVBR0na0#ScT6`3nnUr??) zr&xVuPeO`I;*-kOiMK73&o^eK9?eh(Aedod<6#51yfJqVh8jQ;>o7qdWzj&3Mr#BL7}p@< zP;F!~+1Ay#0c*^X@)}FXiCsmlvNV-ZbBS z=;0rJ@`~$OcT#Fm+VhvUXXgf{<_AjZ;yeRg%V8FCQSF zgt9m>xAJCk;r_?zTTyBLE&-0tfuz8Mj2ln-#;Fs_Uum?p$(NJeDJ79k{{H5dJxLKE z&5tVHQGvR8s4I`>mO7V~Ud>Sl7gl>GsO_)@Q&4ocgQxRFcaMm?qDLbcX=twh1ybT!w>WZKZpVYC)cL87mt_Ho<`=v!*@T6q)YeYUOw$(T7glE8eeSQl zQED0Ne#YmrYiMA3P2J?|)Y_Nlx9_9`$An(=i~&`qv7_Y;<;|1zL1ll939IZV9VmB z$$3GH;fxgT1!c)Ay2^p3I*~t^WE|X`cX&_k!JX-5dhy%TLUm+dMwt*@=`bT%@;3P> zL%B#@X|k4NjJjmJmQ1pqT&kf$hOttviAwQq&FcO7&A*!7J-PSMg+rZIzw|quK!Gwo z7Oz5V-;u9;i1+xI>ian}@N-`1cz*aqLBv!cdAcZarWi}TE<-3ogZLQCyEI>&v{0M8 zP@A$?hgm%mV{lt)`Y$N6!7dok6n(jdTOptfrpG`Y6J$BzsoFUh1_9q-$xSc`4RSnz zw1e{yI`QlEZw3`&m0&eA6_^XL6tKmFK!Xy3B~dpmzXH1l}Z_Kxi)54RcJH_&g_ zgNPZ;8@lS(b<|q4RIh3%HK-}ns>oI;N|!50mdQhU_SQlfu>xt)JZa%v%(A6~GbIGl z#QBm%x#LCI<0M&A6}j^utw~3?L|>%RSnTQ^`HthdFD{wAw%OZrTEE#$v_yx!NQzS2nq6A;*|x1CHWn>7*Dek%(@rO| z1g`E8uP_k{6=4XLVU1Mb4OZfF7AIP85v=(bAe9MnvmFJPNRpg!&=@5`o+d|`fmper zc%FuMjvAnhM3ENKW>S^8laz>w8iGltO4&bXpA{E1W92Z~!mG}%q|K!!&M5&gzrvhb z#ffrY(i|GH?79jZ`l=k;G&oJQh`V%&d-OQ>=@AdRLePL92K|Wy6}nu3@eO=LZwW>fH~?V<=pj4MRGenM-(vaOII*q6 z+&Z6O&A{p5U*1;{vTV92ouAfQg=lG$eMdIvMsQK;U$*NH5Wj0^2>~ExakY1Gtrxbi zkJtr?H1vp>|KCvtYF=FKU;XlY>Feu}@s8SC`Bwrx0A+wkU|NqreNq8s2FClwzkZth`tkGX zySbGKSlfuQ{CaBf{`<)rNqOP!L09a(U0gz<3mR^`pZKu+g*vk^`egWSbatREi3BJU z5EpfCpk;LF#Vlknt#r^R}%taq-hsen6t5+vyW+1I;nmYRWV|V?n za+`3kbNkF#FxWexSi@7~c?A?&vSLzx(B-z0x>YJElN%;<;l z#kZf=M#fi1CYMHlW@ukWV7kJak7|8G!t7jJ-F(8bit0Lto>Ttwaq&OnpBLU<@2C$> z46^s~KIh<=U7gqa;n~#c+y9+omVv6Vuox^dhR!sbsR(3MI?8k}g31L74N^_J;eBHG zP4lfd2l7!J8+9IY2{xdaUqvPN3rLyq2=3$|{vgEnyNKvnNohM1#UMw$>hyEz$+E$r z%&zAcY~>hE@)3@UaGq1x>ZGR{N-}rWmCs3n&wxl;gf~rslv$V!pNDTsM(TeEYvq{z9M11GGQKzl9{hb z0*G0vPes;{w$zvo1hdJqP*g8wz$h4tY`BoX*|gzr!e+_CiY+!^^Xb)R!45(b6atLk z1~XIxNIO6<|G81TVP9_)!x2Ck_y~&{Mps;yVGzM=_?75eb|Hlx3@wq$?Gr%M>Irni0*F63&qn%8?SvmJ$M#N!`kuB*GOX$QmZZm>|QJ zt;(CP!Jn%R3r&N+iN9s9bjLC6=N3EO+U*%QZ+!QVOoah4M}?5D$^@a^Dd#A`(xMO7#rXWgKm$WzZ40vkPlUp_{sAb1#rohv%Xh?p&cy;{=;-#B_G97`T6T&qL_s}J$!2ESXykw0 zfopw#QQSp^j^iOU==oqe5QHkPYdqiG=BCF&zi~Q9eSd)0X>XZeczSer~p2K2H7-aoPC;ue+w^ zN9R`i=D$2#{Mt$TI@tB1J~lPV-o+av0l%n>2mSA6=AYB%o4fjRJVL|ly!@^G!dw%w zld79qZkIOSEPzni;K;1Y9$}Y!{T;%>iW+j>f4Z^!rEhw%yR0F~E7;e;HPMNbl2n>g z`{3%`{s--Y9e4X4JnHFw)<5w2Q$NgiH%{xQzFrUz?PcX=XYENMXJj_rx&64e`(F3M zl56=su^!f5UN&Aq0IEP$ztOoFog;TY!t}Tck72Qbr7wM7R!69mfyI?)3#*S_y}zDU zoZ;wdbHUTaEh#>?xvu~DqmlQ$PhQ>0y_V!0?P}o{bB+`d8k=~p?e_G{hucpI0%I>( zdtY{sO|87szOeXtVPSNB`O~NA!JCij9ix3N2D>4l2?p< zKwQnehS#&hAE)28-@6eQ;%yn=bs@mpCE7oyK67;W-OAd#hxg0LNrC6R-OhSCm)6z1 zdH-&44HChc>+blvkmD?TQ`~|Rv(nQ#?%!|ixpQaW*4^H_ZJqZY^*$b%>iIO^^W^!h zxXgG*lB2DgM@VdH-ObxCKR+L(e(ZlYRNPSM5#n#>;eFZLzpl0N4W)DX%X1W~`@h)= zd=LAPVUaNlDBu_QS@GJC7=xn>=3|0b8G5nRKKR)@A8x!Fd@=NZ$|Ys4GZJiPCE522 ziSOVMH{s;p&dIS?knfnN@Hr_7`<+Ump2ii~XOdIo{6krs&oDX2u$c=oSSko#)>HD` zsT2F7Nz&n6nTK{}AK0F?e_Q4cdTG10!gQqqHMfQv$VQtg$Lvsz-KG*_pct*I5U;HS zmZT$}sw_y~?bqEj~Pz@KX^`CqRW{^thJ z4Bg<*uh&4TfhZh$`Q^r(4U~Z$K$+!QWJ@)@1mH-VN5C=-uRCL;!nmKj6Kh^D4TQBujX$>DQ}#XKY3jK;A;Qg+2-99>k*{QTzF-3_POQB z!3%#3oIn2D{Ez40X*&H|-?5*b{d%D9*F%H99_~MKp!dKJKr>x?cRw@R`DBM_$2Mc2 znRX-HyGB}f3^i}+fi|Pstfkbbp-`_TSEDLZts-5eB2%s;15@YaNr_}j2xUnKW@45m zCXg)5n;^;?E6y7u#uc}fBT0%YLjizBuuNaPa+_$4sp##4ih~zS-q`IOxUlWcVcBv+ zt~_<7VjZ?JJ&s~6RsfU?Va5`9Vx{_)MnmS-ANaa{m%n#VG*6j3n48&~jWJw|ElE)z zS&c1Tg&{_ckObkn3JmE|ycy!6(V_yUi43PXAj62!nvdnOFo%aIyQ?s(J0Ft=H^GOG z5G%o$qt08dFHmj7SE9_ttSvI#}+KX8ml9mzgIQLQ161c%s~#(ot#=bxwI9zl*PFe z#5t8DIW(n+nsV%h3hX9I9NSgdcdK#i)?nMC$+lOMZJ!47K~0uJ`ovQ^1#I_Axc?*_ z`jbqUDX)trlcg4u}6EUOXwCe%HJ( z+cQrcnVK5-M7=S))<#`@jN}tA3@-o?&=|iyz{8-6D-DQsFap4bVMG!bSYU;*keYS3 z6krfe67UgL3<)OyCGhrzs}$I^aD4(VKo258;e(iO9p3BU%?&G$JW4qIphj+B0e1Bb zWde^o{A=awZX>Lb*sZNgIQY%3-!gt*_^si0jkTXXPYk+QdJS}-*|-t>cD~!<&jc~b zhT8~-HuUt?A1ua;P&1T4w}5-iHr*z65dY}g7H1kLjEo)tgx+SqS7kQbOvvl>PX@&E zF9wdPe+jsONScMNMF;{~8~Q})y#1uwJ;D!sOjhomj=rHud4(fm5VrDp4hFEb2aEsd zgrFI4FvX-q+B!cv4bIUVdVJx=$R*+UJs$mzM`QA+MqO z#pKiR)mM`XkHNvT`gP#z$_RA^=Gl9)wEF1Ncx!!gxwpTwg|`c2BzYx87nNpJ)fHz| zC;6tjTl(8v3W`1D5ll`>e%#SEHT|~nZiaWbxrMufM@(96+ry=$k4uXmmR3JaP+r`5 z(r8QeJnQEG@zJT-nf)*NmR9;&+fpGJ`=V!*Lr{F(gT|3rSmp84)6RBsOt4ju_jx~0 zx7dK+QgNOH|zQLL*(n%q>)!ld_ZIwYmV3}N z%}g`SSTRILGFV3fWn!BuN0}%`87f8UD@5rk#AzwVYAPja%K^${8YmQ)z~p#3O+RhB zbKLCFxkFu6zx3JtKIDArmDh!Lfz}@)uZ+dJe@^ip%LqUylMg6Eo-T=+EsX(=nX8DS zRmRU(B`$&zQv*&VWVj@QbIfW}#_H9KmF7%DGq^U>2q;6J+ZT3lWn~>@aJgk2VnDNL z!u&^Q;R3p?wSYSbl$e~ACLo(^*nvMWlmTI;aNQ8Zz(G{_>Uv?|AVs33n|4$6$KQa%J{%WzKR{-V#_v?qYfNd}-Ev5lkwRM$J#5<|WPL zB?8LOK%2>moy&*;1CGH_W)4s$C4!n1NllET0?oulfRAaK43Z2TWq@WT1HF+jpte?0x0v|)$Xkm#xV|-BaRnG?9G8@US2v4ZYBttd13x1M9d7rY6i!S4E}y(=;%)a zzZ~j6^kdI~AA0uf=?0qFz2oV2lgAJ=vrWHkn@+2-Hqgv1eV`c?oM!6O@#G<*$_SS1@c=8C`; zCjq7_e2hVSglJ(xsv@z#P^xUZLb9erl%jC7l0cHCV5*KtAzEgV7%agYsm_~eDjmCf zyOWB>Z@kibICXZisjKs9%JFN;@@mO(8OUJg7TbX6I8p|FH*1Z}m z`_!2aX|n!gz z*ZE41p61B=L$$A_-dtarYF(a#RfONpObv}vZ%i)Vnq7j$fHzPEZ~>2i!BGGy2Y)At zO+z)EZ-81bAqUrTu)twV7r{&7%z^3w!{cVKt02}vBRWDE=;Gj=4PM@$TSKpESlT8w zW@9vi4dGA>2a63tq8HduWl;U!m~3-l#1@z<3S$v0=4PE9(Cy=Qy=jZJoQ`W7^}r4e zA9SSnn`L#Gfoeb*2N!QA&j3<*e0vYXvG!0G>U)QBAluo|C&;5c2428&Y`4)#QdAr``$kSuvq)rH9>n^))3(n>gV8^WaAWL?d@^N+sPX8!2P`~ zJzXzdcJ~X7Yr0iGz1Xwz|Ga+rsk`D@QD9t_fa2*;rK+WYmdW?oLvK6dv$j7y5J z4)#9l>+Y2pRM%QMw)AG6Hu#{eFg7*FD$whkr&D2N*~{0%w3WAGwC2Y4ASZI%SbVz_8y+aO_?u8A5P4_df498;cn&ZamB~iBg8u- zfeblZ_8wj~Zk|5j(M7dQeIGg|zV^<3MQrge_V1tr1Oq={%+@Qxv>7DNzzYgW=EvSt z0A-*gCgH&G@tKF6U1bHAfA-wA^}G!0331jFTUmDU3hQ$S8?f{4;O0EIRrIJZ{~scP zHap}Z19ui={1KZdA1VQCj{4E0|SE(5+IO- zxVyW%2X`A_W*7!{f)m^Z4M{rfNoLOXy|s6DC&A7+_xtYuuDjN=_Nv}eyY{9@{rY*| zs@kltw#h~}!ow;p(4~C3Z~fc}ZF45H%-xAH~m zx>xz(Z%d-zRwlfuO?it@CKIw`J_5>YE%>wzp-dmdm39Hjl(R92k#G$6KsClOwfsX! zT<~LH_!7jM_Co;?3>Taj%#1<2f*}jaj6vhEu|pWg@G*!%sli9^)Lr{9ue#r zJPK;TB|f1MIED|bgNX;0k0{T#nYXV6#NXE3Vgtt-A&w`BAUU>m^$DX-p&R- zP!4d+jz%%c)Uw)Z`dh2|S}OXQ%YkNCKr@grgSj%j7{{<+TbL{Wa)BU!_`)rK%SR3!MGTv@(&~B{Ttk101q1R|r z!IG)eBv&%XwLnv?fT2>zR4&z1sx(rsHCL{;Qf{_U+2%t0ZK~;&MNYR? zz?w}iXJ%XMbSE}i$~0NYwpb`MXe+kptF{@+Y%?Vsa#FZ3iFs$9*&h>a+H7<)sfr;= zQpq|h>87&jW`rzLgfb<1gbI>k6Nyr*&D^L%=xsA5q3DJ zAMw*XMOm;8+|CD9_rDK zilGj2Ax`p}T$MuHm6!RE)-1J)%U)2oGv@5U=#PynAGd{_`=j#Wn^SKFd(IB_onrS~ z>;3TX)5m-7*uQ2WMTgn??qcOr{IY~F~QDmfFU5V#kr z4Lc1d0I{1Qt^_~fYg_DXNN{B2MWOv)2yZjG`&dc#k9rB{)}nVSevmOo$8r*0q4+5f z$KY-~3NS$+38F%WmoSuh$LYF!|3q4O zZgfskNPJRsdSUDC{lGE({P#VO?aVs`DAUX9x^{P8MSW>xe0pqZZdz&8nOpbYpa~FR z_WhRBqO!>JypZ&=HEFf0lS;y4Hb=ySL?>j#r_`n9G?(w%_3NFRPkSJ6_6Kk9%)5cJ zJCEe17p6xiHAW@YZB9*F6BoHQK5j!&`p;1b8zR!P3Y(6eJn^2@B^ZA8y081<-9I}H zwkH*5uZsWt)WqH)acpJjY0^v;|=K;6> z4u^f7$N!Vfx%lE`*Xc6{^4coa<|QqQ-x3lYv3BF8)zKTb6vP#7t!+JdD!jO~q^{)L znS)QCUTN7;m;fs~B`4)J>^pVi;o#t7A^$#`|M0I*w@=?V5>^twHfIaqS$SRMm9C3? z!L2iA>$6I;R>$RqXIJb!v+wSQTd(_`+_-tJqNX4uCwV0d6|c`bd3FDL9?;c|3#VGE z8?z(w(}PoDw(i-{{kXfI|Kt_x$kB7zF(oy@8O@uLOCuv=V`CD6lR{UggapIz__&Oa z=(LW*jrU)}N?1?3-*@f%V{3j*SyXCzaAeeqkPT}i!dHbvZiq-t&aJ55y8Hai`_KBj z-VI;;I0Ww9y9IC|y zktW!KCD2r(SPuw`C;_|hA#YbCET30=RCMStm@8nhAetFG+B$T!wzfXyKp9C2*5wBx5zlhlIG;H0Y&1)Wp{QNX@_4Dx6 z&q9BG7P9hD@KQh-2rxnB?}H`tA1+();Kw<4=gqt`XZoEPQ*KS0bZg4QTazYqjURVC zzz=BVf{*K2Z->)f_NP37W^8|Tu{!Q#an!-=pq=RfTa&#AWx$v*+=kIilRmRnn~p3Q zItfswgigt)(~FtRQf=5mSv7|$n@f``)0eBWP-(DIX|z<>r{hwMZz)I#1ceNXnbWzJkrl-f*_i8PQ( zuq0$!p=n@>bqP%*l^tr-7CJN9QZHCX12TV?DiKzxNrzDZWmIEm@-ZYSK$&<|LKZ`& zRA08vOuofNd7Crj9m_RaNde8Y*~zwh7&N=;*H~$k=t<|$2-#|cCS&=1Zlt6BT8Dg@ z73Qiry0V%2%9$pV6a(T0HJM;lLMT~w3r%625+PcJkWMA!>dO~elB%4v%3-+=SJMnT z%@ixuOnXwJKcmJ&EyqGS*-)m`iBvN&AkQaYy`jTIMY}*b8z-`-72Vg8;%lKEV6N_O ztv1<4b()RJG#ka~*7DPA6=pgr&v8{>;7(fZL0;iW-rz|NbJqxSQjD~g-s~tJ;ieSh zsu<>^FwdW|e1&UB=8viMn_3#zT&i4hW^eN8JG*bgsyRcwC;1-^^}RXM^X5M5Q+L1M zG;8owAB;l9d=XK1i}$ahkkBYffWCROVS`u)*$=4OhW(Q0i8wL^jtlG;K?a5hV>@H4 zW|5nM+y&G(kIfE*%f&tS*k)jqASMzK;*6Y$RfQu0x+B(3(NXLcVEo{%`tP@*02!+7 z8^?;Ojo&yYANycKvoZtExCEBPTpLJ0c@3 zzAU9;SMA|TS8l)Uc{j-F8GiPc;6cCeI%n`Qmw%nlx;Mz_7Jx$|JR=;uE)c$X|KY)& zbH_5bH^x;Kre@_t#=%5#sdWci&OEtspTjHPf3Rg&>y2x_z5j53-?4^@#+1C;nx+G1 zuRi)~Q23D53tzQ+kcoWn<)xxMHR&D28P)j>ZB18iUJ?lIUAfX;*IAcZwXLvi-|72j zUa_CE1RtKgxVv+2TXtJ*Qe#Eq;r6a4r#VBfxvbkaF7D{qS(({T5mTIV;Mn08uby*< zUcO@=|KmnUcFVTpx+A%DyUWU|Dl2RAno4s!N(MeYn9TI3w3IDLSvh4*+YkMI_Qu_JY|h7_hi`{2ycb^l4vruq`3}l_ z1ArtI!nGXXEnph>9>ae{6msIgBv%(7zc}&R$(rKD-s>%i3z*XLwd4V1yh#ivH7z%F zS|E)QWMr^FS96grV`HFsVeW+bs<{~j%#axARY5WvHB~lit4BB(CXaI}n(5atcYOI& zuUrqyWGn4hV`{t!Imv>S<6>CoWme#2p6PCy>SUNXUnH-6n-%h|II5>S?qhWlaLl{9w0F%} zA7S89N8X3de4J(gW%_oOh_YnFF(yD3?*2-^7i7#}8jUg>h$~^CB^+pwB_kH_jpQh1 z&p;{+iZOuzcZ7$Vhkt1uK86VjNEq1w!5oI8Vj+BK;2%W7X-0UcaS*OO(m4b=+%a^p zeeggV&fix5kRnMcN2eSBNkM`{Ft4Mz%jzz&A>4%$dZB35+uriCDT^f z*II#4rU_7{6i{YBj52)^l&Q%Rp-g1~r?QY;Q3y2CTb%PTF9YV4d7qWsla>4lrkTNF zOz)Co-X%r>%KQ}*`YI~qdBlci;lU7QdKR|kdD!abp+7(0wCd5iCHGb=xV>a9we?}vu{TeE?8j`E&iY;2w+YJeO z%m@dqr2q6Jo|)uuax7tWUfT_bl zw!_nCyPrjaEv*=)vC$@EC=<#xkuh^DK>LWlcD)@XS5H1eS1HSsnr=)ER*_kwMA%G{ zji4*8mM2815Yk|bm5xl7u}Y~Ot;Wx$+{Ze{Q76elIn7$F&YM#2tx;g37_Tc+=0d5N z=wCX1a)h^?ZvJOC1-ja9R`L-CVok zLRaf+{!QM{(}CgMlY_m#@IGA``1GW|=fQi{uOB$ad)TK(GF34&!TV#p$A!N$;(ip% zmX%BgCyouFqj-|ds0f5A7%(*a0Ef;i|7RB zBvH>TJ}T+&MSljd?jLIa!V9<;RD}*GWGi!J#2&v8j_gck+`w?I7u*B`z-{owhjdr$uCet!Pddx&%02cZ|uzY2-8 z9N}$vq0e5Qd+_AU!)Iq7zBvD`|876}XSnc*b-w%g*?UjU+{G1;l-P-zdqjmz`5Ticr+lm!{%S%2(Gbt_g=lZ`0&Yv?ngHsKI!UycK-g8GY_7g zefa!5Y#%&6^W^!(zup7(-rx%Eas&^#g2#RA?pJSbK6rBe()A{Nv|mKK4M+?as?LXCFQLz5D5zr>}2(=zqY2 zYB^wE-DPvTKe6sSe0Aae^K8sf^E-c$Eq zT)6xE@`L9WA3Z(&=;@gUFaCV+>d)?%@Ma)$`P^SUmp(zB3UDX?b`QJj)rYGOpP#*c z=h*2>yU$(Sck%k+TMzzt`ug%)2&?fQ4G8bBgf~EV+~@0CJfHX55vYEcbBGVHa+AY{ zsT8ksc@Ryz!r{Zv>uV4L1(&W5rcdN`^#BdS*I?iRk9I{os&_MJ_e(#KnFFi>60 zR0`73n4zWap+jE#cY-jxpd!0N7y)svm zYER2L534E{vsx#kHV^YX}eemArjbV8h@U zGdRcKA0fsxu)iAVKs6hpP7r%KT*o_H&pT4jKZ3UKakS7O{OHjJ;nAj{Bdws}qiv&v z_6)%wro%0QgCi0iY!w~?wSfi?wGSTZ7(UcFc(6mbzg@7ejlUQ9F|Y-i;q7VR?QZ7p z0apeI%G})mHxO?^I|XnioVKlwzqJ;`>!{(hS8-Y^*)5fvmP&4G6|b$D+g!Py+Rr2{pktm=~fs^Y$?qW;Q){>pr$ioD)3NCD3JSeWqvO)vw~<)ysONO+eP z|1LG|eKN|J`70J;Okpozf|)H4X@b#A!LP&Cyxg?v`TFIL*ZlNo)uQed3m+`|p&MM8 zB|kh|H1ENJ*>~s8xIJSE1ehTC_r|2a8xsQ|%yeV?xXXcl=L5XY`gxv)Weq%BPP#h& z?(A^F!S)wep~=ePpoQsvGvj@x#(PYSb{ZLU>g%*bH8gS+MWc*PF3_UpGRRpp zVmethm8_CXQBI+%q|z1B7>Zd;g#tZ=DhpDF6J@st11RC_G=tlV>~G95IpIz0u#~Pd zk*hV9t}`Um!upQ-gcdXDgB}{ErkGs_ay&87ywXH5i!K$XMo4E!S6V1Gf{CIlQ=_Ze zphv3KC+1kGXIrXm(UM=LBK3ou^fC?Q4LbBtZCa?N#%78t07o)Ks(?wTg5lOC(yf-# zFq2KIjeN6>LbI(xvy<|6A4;1uz1&D6iz<_<1_P!DrG~O??rMjoXf=Ci^WOKF{t zQt)JI8_-BeHj)V2TsKmbWZK~ziMq*W2en)W@vdV~G?G3OopO1#4Az1-J#?Ep|fufJ1& zS5M#d53DoqS$}?HoyQ>qj}svTfnU_(U;n7r$8Z7R2u37u6wX1yO&XRcs|MeR_qccs zI0{H=7&#=aAOC@e{V>CVNBAvpk`Q|p2pz;IfR}NAK+rH6fUwi>L#V-coAH9k4uL_+ z_!R1hW<(SvsX=@u{+O^uRpIv)gAx89IIN6r34SJiGTJX``KTIjgn}&&F^FTZ%Ez29 zegxD8%uEtN6<*<}_kbQ;ECLQL|K%1SMwD^+KUqLsB`5Ri=XyIkIb zujw9_2f`l#nt=kG+(LXD|H|))aGcZOG{-3}hc*&9%j@SR$ zKhuBy5rvTWw?P=nz^lH-<6YwOE^_%0w7NRLzxD~H#S`A?<=^@Q-(dJY44e~iFYx#REIsNpEe#JCU})j^w0Bm2ad_`v`ca}i?Y!TGp9#b(Gr|=3;nDBW%4~u zvK@7@9JC7^b<150s@#lg-HdD8jGNp{w)t4?pX73UmhXumU!a*&3nyM)8FV*n$>NDMfpZK7F*wS!B9sA$L0Hp@ zPzKQqwiWLLlo{O7FtojXa9f?Qvxe7R#RZOOt^h%S*ILDGs^m0QavCbw_2sO(vVod0 z>Z>Z~t<3AI%mb9^E6?pKgR$9J9}Cg}W!@u{NqnE40N%_8$e2lrg;Cis`7f->^b%HO ziU|E{%Z9%~*Sri_^*ngllQm18{Ji+_szr}hEPS-|hlfBjU!n}6nekmfGZO=^jE8lz z{m%G#|LNs%(%toU7w6xd98cKW9kaGRYGHBM%Zdyy~akn4Gp&G>9%Pzn;5h@ z8o8QGETfYObf`I+8tF9k6tYSpNhO}F8c$J8peiR&l@clPDO8z!J(X5FSV>#+ptt64 z0kkW#jBm{`yfl$^$PMU3rqNoe&WunA`Mi3BDnqGG2gPIKv@Zl%ottU7%ZXf}Ba^B^ z$RJ8p=qt3?P-{)qs*Kbs4b{qEw6mpRiH&lczT!%CnfbEP3)GZ<)@E$b(cH+SZKM(- zRiqNgQn?I5g*E|3eK*2#OBT{F0=&^$vEE9)-d3vJO`*ksTxLK?)sRVoX@U_j5lXFO zxB9EK`luIL%BAWkr)Xr?c!H zXBk-ZAkTprqo+H`rLRUZr21MZjki-BBI3>!@1EfgAnIi$9jypuL<6}|?+Yi0nP5zhj&^>2 zE&3~pdDYOb!;MBNm!J$&Oyd~inC`fu%j!=SJw=f_8hygOVkAxuRHWw;^ zm>PId{A=*j9|M{$*a@`36Wrwq0BC?_9zb#rn+qqv~Y|U#FD(9|FQtD z8vXD3mM|j}{w?5D^M~&6hws7`y>{#_@Xp8lGmWLse|P963r#6>2S*tcvqLCziOavj z2478ZtxtHHHFU3k@J=89CQEn=(vtX`bFBBr?wv2I&YTnHroT~Fb*Z*`kUnji7RgJE z=Ao)No(Ohokl)1=%dyV_nN|%y2!}W93=G)7yFeFF1n&t$!6^!%D@pH}c zaZLBLOLR7kwAKwb*NnDdrnngu`db(ISwiM7TCc!Kx5!zq)LFmG*`V6h2xj>0@U_}C z&i=q;*P}DMewpEQVvhgmMU$_snfoAO`SXNzfHE&KHoeLYds!6mrVP0u z{;oCsLu=Njw%mR|nQg`F?HI>^C9|^>=NJy80HXm-WhfC?JfH~=IU%NjS@Mq5iiGf` zhJy2Ti zwz@F(dozFWrT#ij^Xx>;OH-JCjHmB(Re@EInk=Mhj0lzbgbF=Ey{Xh5H`1vo#usMW z93N*`XC$9PCZwwqa%r-4<{F(&+Vz&yG6U5TL*;TCl`?DPWJBfk6#1VNq~UygB7F8*jU?zh?D54WenS>gBpc$z~3%Pm=g&H&2YD+?sgG`;3YOyXcO+y-T zgcDQ=i7->JKB3B9y48nR;eh6bNzrDc>S)GmYDG~QTd1nx3_=)PY9(D|2~Bk~LjlHe zH`vK-bCB8NBG>6oDstA2H&D!QFwAkY%yrN!FjXqCRI7KQZ{wh z@bafm571cQqq=lFF?=#9VG1c>Dk**rGyMmh;ve;@7wXo|q%{OFnkG^6JXNCXWLDX$ zPOw!D^i-ZYL2dR#;w&Gc=M>L>PNXA-YA5nKcx?2@f!Wf!Ct1=_FK?Lxbd4LlDzVmC> z0^Eqb3e>OT_d+~@L5~PW#Fu{tMqtguJAHf0BcxY zgaYq78oa^>!R2rjeu>}`TnKvx|Go~}?_A48E&S?xhJS)lnb+tv&^7cpBZAB)3CVp? z_%7VQmqz@m@fSX33)RA#;o%T7EP@#PhXqUz`0q5PsxR(x69R%D7{LS_gHVQlna`J? z%=LbVVGZAB4c+Y*-U3&K%RbL#o%!&5-=$+2`7sltopeKV)tBpP1nJYkmGM@md#Eu3 zNtD?P#UQ%kbh743OPAawfxBxxw^q0mM(GF7R$1tzxZXl5)!#8Iz%|p?Io-=4#lt4S z#Uk3)Fx)~r%$yl(rM8`rGcC z;B;t;+tKNszs(Iew`5vZ@PclLF2%2Xmc0IX8W=O7uL>jILfUUl(uc;>kIm^H+A==0 zWqxeS?rqEK??foW*-^^H%oso!?yhp)?g{`Jm@5xSoDR$Zhh}dDZp5FCm78< zTr~Io{8yOVl}MGz)s=@F+ih-|2Yq0v*l*uBt5-G7w{` z23JNGZQHFC5Bo4qPd7U^%eLKCr9?+M4MrrX!o+kcySz=C?6r#w)eH2MYHd_1Efum& zRHL<&Af;xmEa4|rg*9}I4NS^^9CLb(J2RSbo6s&o>OkO0eTGYR>oQmsDZMh~?jOJa&PErCHw($PxLVn#F6Bj|)^ zrt~VR(lV-QC_@3J?5i}F>adgE>#DTfi&pNcn_{G#3IC_;jkBzng=Q*Mc9aHJ-F9EI zw(*XIejaP+BtIo{4|T6`)EVP7*7&QgoJfqAMoFGYPo2p~o}-n%P`_xYY0XlzhIzX6 zvotHmlaf6YH#*4ta>@`)xf1b{yA548Vde6yNx~erj?#%Z3m$#4fK0C$! zaFNTp#vQmez(xaUAxX54ccqVa84`YBVlV(2#4!*j!i1YEn7@JtSw?&j5oZ8u00xZ^ z4El&r134&|hk^MVct1U2tKf`+U5mpIY=Hn!&y7jqQovnAmE$LWeLKoB!EPspAyI;` zzAUPVv7L;-mjFLTDzsJ9<3a2|y5o zIWZ&KuQd;G%oiv#C_)*I@DirW91+TNaR(u80;q&g29|b0;35`+k3kT|D1%o}`P(Ri zgAO2zaQGTr!Vz3#^Dclm7|j6XeD_)al&?Jt{!b=OY~lzc9CHP=U!?D%3BBh*FQe}(2GQsn{BM(`zFRYnGKiMI>yn_10Lyj~T!(pv`UdZ^1|ccuRv*6$ zP=?)m>c#!7Cw4?8Z}iw=r-`G?OkK)EnhKzdr<&F{5@i-m0Z?W(LuZ|xXVI$3`x zRk{|%7>3MOUFNAA?qHNX(IYp|J=4cI+07=-$t)6aj82%jR-~0qii=4>fJ1SB9SmQ} zb%Qb3+Sv{|;L23E8P#~1HTqZr$~3#1wz-?`3a|r|IX=th)Pe~Ym(RSpe!=}M%N|9q zdYrKKS?UH9V=9V#S04AFHW^2mkH9hQnV;Ho`r7kZTMIecOMqi|yUHP`gj+JaJs8Sh zGymd?F@Z6|*@rj=qDv@g2BpZL7!yR7Bai z8R51%@MDHx3mG#V)x5S!PHQ>41&PyI0RbkiIKTuz17Rj08(w3Tpb1c>4p0U-hE<)< zt}a9ZnkmogE6)0qkJ4oz^S3uAwJ$fV9}18QoSN_+R%MEd{409P>!|S8VZpC9{rqy{ z$``>1WuA*s<|&3UkoF5Gb8qg9yO8-CH0|!JX?JH%y$wJE1GCYjd4ZQEjJq(-@0_pq zX)n*y9`1j-x&Gno^t-+NueP?w#5A+t#CVUP!FD}eK$#XzdOe*|OC=$cVGsdjvS{j= zRP}VKdJ2u0L{X0=D@AK4#AwLIlcnQGgm|J<7E`9qQU#{p-Q`Mx&7jbtkf zq{?8H8goL8g-VqP6=)_`OEHZiokSs|Xc6*Eq*}Z++Wg3s4zyGqdJIJ^%|I{JKtE24 z6hW7Y)s_L2Sx!?8r7LDL2}K4lQH|6-H|1SEjA{?VEDMbc8{K3}ofH#Ffr(O$1HH~! zyUoX>W1@4##DGnD%<<~hUPNyZ%BZXuuNFR?nleu(d!a$@Lc`o8rWLDgn%CI1FEnhP zPAm6Sj&+t<=PbWGKxgJSy`VtSxEYkd6_)cu{TCE2jo6x!@q2USonyP++&}*D@k!P@ z_~ipAgNB~4(ci0U{d^2%U~)XPh@Qxm!Mz#S;uZ@ag$P8xW{uzm208~9q6BeJ2KO_@ zx-z3}74fym%fT3E!~%hjz%e*fp=Nwr$OyrNlMrn2k9acx8gQCH^neinvO2^rh`7xd zg&_PA+b0-Oh%Us>7vBOZLHjYD!0(8z`m7D28;v+Iz%e51z^+BThD2X@|A>vS02ZoW zd^@=5==S5c9=#>Nc%}bdqar)s{c$gXssI1Zfv)%eL!HoU5HJcjF4wupdI4SG4qf67 zUg98K#AycGd7U?O18MLkh{K0Dd`AQ;dvhQ?1%gn*dwj@x5#EJN;cp6#;sTK3-)8eb z;;K-D3+nmKwLodmV2SXSL*tP!0|o~dATSXA6yhzIG~b2>Aj0pwNrX7xxfTv#K#A7? zXX5yR_yfyW`i7H)UG@EH;eQC`%5Wgj2L=8h7LmY~G zLkJ6qemeE!M)QIC;MkQ8p;q(|U0Ah%1kt4cqJpO?&5Ni#o`D9mLl{h)2Q$=Sbb z_4EUcew}4bMN#^j=c_LFP!6>*NcD5d4sa8pjH7w9ok_Hvajb($qKkQ^mvzB7rvg8_ zJTI$kHyBW=m1?b-=b&5ZY1TB(wl%=E-pjnf&A8nY(taHwzyyghe=Haet_%d2?u7o- z9kJqJ-0CMO>j7o{DvtV4nb1?0($kdosW}}`rl&otw*!wZ6>)cz@^+Q+cUJ(x0L{Rb zzqb+!F!`@2z_b@Q20;uT8_gtu>GBTM0LtJTBSslSEx<8@#~WeGKRUuOIM4vi;3&fz zL7B!upcxcwlAsLuF(Q;11vKrFj2Uoch9vn{_Ta9pA zwQyU_;MQtEXBDpjkr+W47f7DH0-+a{;Gohs(e;;0gf^p z@Mgf6Darm+n9-A;-kX=!pO?-8<)-yzr+k93*^vJW>lnmFfL@2MM>)S6S3D11{&bzl zm4O)3lNCQgjH!F^y!#7g-@|EU&WwArr{4>jh6ZM1D06L6;N^({m&W^D@b^9|S~uJE zPgmzZoE(04usdO6{fnjf5eu^erp9}X40h=2bm%Z!nY2a*rJhc%VvvfN8bzAwc?@C> zotQ}{rqW5tRAMYeC5og7#!M_lA%-l!MMWx>D3zzL*y2cQchPLMSKsPPg5@4hP1HT^ z&)Dap)?q2vU`VLZCDiE?8jPeGjiozn)qb61dSZfcnNmCA`DWuT|IogCKOX=M%U>7m!Jq=3jY1vkq$;Q+qebpQT z#R^+mmAz(@hf(Kvr=}?Z@uqsS=`Q1`<0jF9CTj$bS6e+%b;}HD>O%dzWmW}CE%R5} zmacQES>sSMM>o$;DGK};2bsBk8jF{?FA15jezonCpN(8Y9sJ|Qk84=_^WnVM^PRa5 zPSk&RypQ|tS6<&~E=>A0aDm0S%;H|@=VBbgz0}9O(8oRhiG2~!VZ@BV@j}8V|8W5W zlyBzBi0ENdZQ$iVg3hM_NXo&0MjV8Kmf#u0-{Ba1XU6*1dsI~ z?_4Z^12|I@MZ&Me-3~ltgNF5>KkRTmT#MHU_2X;=hp_!)?g&hSHvpIe%3|Y3bPIH? z*k!?g0OP3i=xNPI8+j<6++>Lw-q<-aXpcEx7_o&S-Kl7tw{ zh7kvqFuuVI24vWb^w6I-2{-^lfuU<$B!C#uWrQ+A7{>t0AfSOgS9n9$c*8i&bn%9O z_U^+fH&6Hw#6`oMy1yk@MG^!@;SyZH5y0cYqGJfczM^X*uVVCTk(57wKjQZZ`z7amqre-wjRH)NA~SRcyeq^mh;LBF z672ju*f;t{p9TIt51-v)3-5veWq1O}OafizBQp#FXMk=1=0F+0*U|VU2o4V3<$*E7 zxjxLf#Q$`v`%>NZl4TK#EJDmFA-WoXGE*2t9~Bu-HJT4ecM^?0M^oVk9hG@Zy^Z!h zB`YWIuJLTnx6Tb^ZkVmK%uQ*NrCx%&O)7+z-0c#aEn^+b;vCHrT`ZH`tPth3!M(w&S_tQmH1j;-~u0QHIr72noNuoxm~Wd?1)Tm1w)SQn0TI zwrCI&iYQfJL$YClnQFno8sVW@;o(}r;aZsd7tiPA9}&fp1fSyza%gaYTLVCYPzJ7o z8ZcL85Dl(w8p2Qp*)tGbIyizdLS)P!4ML1b9A*-s%;*4}vW< zg6%cJ?bUxd06H~;)1WF?GX zdKSFw*}7%m&7h2#6+b>&w&3AU^SghX3xk-DH#2YM{W&x42Ti{_bIR>$lfae1QRX6s zGUt3f&U(9_^>97y=6uT8;iRM8uXfhQtu29O4w*x`jKNL=-A+Abn>M|fNo~@k)G*1V zS{lVnA__Axh*@-vGzJNbnK-IyG+8-|bJB>Mc3T^gO()uYH!IRV?rjwHA>trpl z%>BtCXOUUf5{sP0W;v57v92=fYzVWR0e$J(SL@<|nG4*jS^l{FA8UU2RkOJkqNJ2&5 zuw*0vfnfw5VZn_MxE5)wk1~c}KD(9;tKo_e3S9*#gMwD#xrSMnL=}ELz$Bs{oJg?l zAJ01(F?bM#p!xR^X8?bQ&;iTSz;~kkUqB4}NymSn0=pm#!qEXUS5OUN#6hTpyd3c@ zuoxCX8GxiwxQ6oAy;3j|Q0e`5QH`vV;K0sI_5D72C_B(4S^4YnvXLN~2xYK@Xh0dh@Cu*|PmD4wG~W9Tcj%q~ z!c6Sze{(MLdrsXuQ`wR=fAd_U^~R(S9nx}L%49mxOG(;Wo#9V0oXpS!lv$vwI+H~I z+1xqrr*YfLoT}4|Q`eE#PLp5athC8OKOW*r&Q>uFW>I#gQFbOV4uCRN$-p-rHmUBG z$*wS+jAe$ad9s~;f;lbOijfZqzdn`?0k#c378TA0o&Gk5r+XX=@`Z%oV?jR0X8WG} zA@Cv$#@@6D1(@R3Ae6}teOnsysVWJfOk)}tGap+sa90M8F7bDj3wBos_EZY?Rsz8Y z_f-k^R|C!P_Eqvn%ov&2E~|At_)xejxw!-Xc#uG_MyY=LkBysTp2V>31-8CWL^*& zjE%-!H$edjoAZ~mtC6#Fv>HZG2AF1R6|VzO262oiU8b=VM;T6)LOtVAdS8tpdH+orGGp`+QVO>fbn)oD@6 zwMnH+Vj+ey*?=;1QYu0jH9(my>hhaaWFkq5u~eW6*#w$whPGURv0Ak)rP+nq?nLdh zl0D{2KRwCdw*cmD2bDTKLOF~%f-GHK0<6%~YNK*A&~UepK1}qIqbnb-O4y`GNYPQx zv!EB4kjfxtq$^!(Nvg4D7Fp6ZF_eFjm;O;f3Iaf32IL5Br3h`sSO!G6q~fuRnS6$H zDO0Y3DPN%_S7j;#%Q-glMORR8=*{;8X<;4NT3rk3<$NZuwO(gFVYbfH>9n93j|uDGz4#cK5nqlDA+{KGE$14_$ianp1-lWJf`hD@e`gM1pfl1WFIEZ`h zaEGDG1l`|KYSkqUg@YF8v}!PV0;sI@UBpJx4-Yo->i%Lx4+*yQB)s0 zb>kGRwfe-3x|9`q^vMj8my)cXhISy`bP7XjHbZ{Cw#sB>^<{=O*$aI-iyg`n_2QSS zt(*Y%v`VO@af+vNl!JMgjUke?QJ9T!gq>-$gL$l@WxS(BoP&9Whi#gRMXaT6oEbgK z$*9cBvf9_W(%Yia-Kg5rWcviiBQw2z3Gz7_sa$H8mlE9cj!>vbxO+&{UhfXvB&4^IuP&EXn1`h+uGz=ZV zI0jG#*I@`YLH10e-~bXhG>B#n0m_Ipbhr&P48yZwo?lp_0H(s*(*zUZp*itjempcq zUL(E}3S1CcTC#pbuzUeHF1ew2pG6Q8utfDMHng0CrzMNDvlqoeHPzH>d zo|O1r$eW1`eG{?nb@*DK8L($yR5kz&3}t%!Gn!xqVoXmkZ|1>5EX*`-=G{4HNv5u8 z6K_nNaBXtn6)eDXF~H}%pXYfWkMmxbG2`NN%EZB1 zZ=uM=X{qK|YL+<})Yxk_o678WBcBY^`y){AusfyQTpC;%9A)Z_r0PxOcDd1Z`x>;l zX%!l)gcAuHl?ahE#WWLYktL%NFhUn5^Hs02rdC*5tgXSZq!i@)lm)8 zRfC1BAqnQLU|!6>bZzvqjkKM-Sbypq`i%MXjf-`{ zXHg<2sB8&P-srEf%3F1r5AjET>W=}`MV`uYy;bK05T{S1OrE7Pb+t?2de6zRu6C&o z+9{4&sR25BH%+}%z5f3G_@^f_U*E3pf3cn2a{?@xfr0bl6{leYQx~X@4U>_I=C4CY zfp@)l7Ai$fmBqWIQTcs&sJ5uYqV0sMR{$!6p(*iO8vZ*2h) zum+EWnMNEG>=vR6CC@Snq2SgdTp~ss%r6lIp+t=wdm3smRx?5w3G3jGBR&&%O;A-> zwUQSiX^iCYMGX+672bp6oeTPfEJm5pHVo<-uxP+%TLSJn{Fhs(3pYsqr?>oJ82XC| zqZ7=V5gP#L=RWF3B|;srxSennceqQeo7`cE&`u5rAx;+u(qf>W#(+c2F86rD_eNs} zIy#C@*a&6No^J_Gz|KL0gbOhcwiBVuw=cvh6tNUeR2W)~+z49B9s~#jUH?*G=Zw5A z$$JwQ#=N@Ej1%mm35<-Rk*xVYv4k=hgA6hqB8<$E_YmS*@oQqDx(6pgC2O z;;Sk@j-oe_X+BL;JBThfm#H{SjkMa_v1r-&U6rntN%}EMl$ZEREwoYIY;Kt9=^W!^ zxy9Zj+}3!rmEi_6-HoQYp%w;U(j+=trMTPX`#ER2S;bgr$D1=syshgeIMw>wmbe+KU9_D*&_FxBy=Zhc3RmW$A;MRZmlb0cAdv#r0Ju z_aT%)u1rr$#;3MS9AzL;1}qujo=V}~D&)uPs~X&2J#?T3(aeEr5C$<~OXd&+n2=Dq z44N&bmX8fq0!$givSff-aBvZd^JXM_Mx)Ho(MHhl(dOZ!Eh7>G4Hz?+5Xu0@-~=Pu z9zrNH1e5&2G6kbi2B(?bjU!|uMj19NExDr(*Faktr@agahQGB^09eym31x0aIS2}Z z_G)2!ji9ZX*HQ&QgVPMVp_~KxzmP7|P|B_^2AUawl_smucx;3+6?yFPJWhGuKyfx0 zGk`L^*{L641QVc4a@@z1IN+H6^rW7I@b^(0-bMz$319nH*cuqk^lIZu+?aW^@<&Mi zeFjN0OMdA7an8LTu%S$Irr!>l3InqNWv)*de|>V`)rkR@1AT#JF8O&~^zj6mIp^+j z2BVpi4tBrU+5BQ{0Wqe%CI&l=bhqhibzn5ph@niWCb597o=Z{9q^PA*i78~YSh6ah zOf*?Ff}$F%D7Bd=7eP~rpek)vmkKA#rW$JGSTf43$emX5JM5GXx{;6jXdd%s>~&IY zGLk}JCLNeDPpZ~LrrAmfT$!z2dL?FRktD(vA|Z?7%v=)^piG*MVgiE@O(txl$_G;w zLP)ZJGBDx^P^QsFvED|d*@b>&noY3!IU$r0ni3=xCf+kU? zPGwA3Xzsee%w?^yPNWGj!H%9bPIuRaNoPt|-P{rR_;|*Lhpob%LxO=n*z9v`_62Oc zM);L~vk%09lo6Qs_Bt>DO7+Do8Pw^DQ2>RFz7U)sA{cT1Ex`gwXD{lxC72?vWc0Nn za{@CePz(i`K;m=|JmVEP94LJAb)jisP>cy{Fgi!lD!hQV3g;V94cINv6JZmke|G-p zkEk|y377#hnoeLR9KuirMS|cKBli-!Ecg#y97o_BH~}t!JL17IRI}LTfdZU>Vo8_~ z%|MqbPSX*y4mt`uvA*N$uK!q+L9q;!1&mA@EU@y8?e|<6to3-HL42B+C%)_yzufbs zfAG~kV=k0Lkv=Poy)PTQ0f>qG(=GVtA*_c0>7^|G9hk0{3&Eq|ha3n1!Q{MxZnoed zh$F=Hh$BE^4P9joUli%@i!6}jh4@lP{q2$6N?|(9VIsL6^QI4p>1$ zPe9y3T#vYe4@aq+Exg~)19Sl1>gEkS080a&3!aWQ3=eg01Z6~dE#h$7XD{l@kE36m z_^8BFfv*~FMM42FGCsS^&>e_33I4tdHYyPxW8}@_H@u5+-E|gA%Br7C_eZ zrx;D7(1WNl^E4G^5-A(3-O5%>+)?IKnWz`FP;o^7VVQ%<7ITv{cjq`4n`mdtNJsO{ zR>o_Mw1Z7_!fZ_9Tx?T391~q(#yqPeM~ehI<9KteQeTJWsh)M?915Kc%iWFICOLKn z+I9L{?+CQpJIVRbbc8Zzewut`_3WFQe!LsL z@K+AkKtxHxF?b*eK@3s@zzuNB@QLQXe?@}A&~aqX3>|Cy` zn5lqU1q&J!u!^(#3ex*9SLPE0m@*PSVlk!<$+4h!aiMQxHoT4A@Fp_&uPtj|g|3E3 z6XgFs!d#h$%NIOc3N!!C>s~bH-h!Ze^Jk)&e`im-HEYVvnUimUW=!guHvamgfU6Vy zu8i}!;_r3I$K!&h>sb_LvOnnnF(#{Dtj!LY!?eE!yG`_V8tH5`V0P$fHtEu;bVwCU zVi7|Mv+v*$*P-)%9}|lo5?C6B&BugavL-hwlLM>^r^X~ zlol(MR%_Mm_Qbuew1Xau{jQ`=E5!ywX`q=(Z9=&YOw=pe>B`vVrQhJBnQoxEMMHYM z3IUJ>5Miq=9ddZf^c4YRT3qxhT=nC$6;`Pb7AX)`sLO2BQUyWOX%iJWDADTDu|(-) zqI9N)bPh$PfGJ(Tlr1w4CGRovauw>MzZu;4e532Qk&HYF`CkaCJNQos!a~0ZSIVNfkrj9lx#hvM2376 zLt!&XD$R&oWUE)>X4>Irvn|j*)pb&+{j3dE3s)P5ZM2SAZ=bu=G;=C#lbcGAH~ELj z1`DT~ESRi6XFOv%Xc8@8GR0#u#c>u>Z;p=P1_Mf>iBhT!v0#$kfsNx&7cRZAH5^=- zcikQQ4~KdErw0Zu!$|Bt&fPxl{eJEP7N?uVelWnk$70{@8|V@_9HU(svBiRQ>R*eq zU_Cw7ua6pFjJXkC!i~g@7}Jqs$TGqNxaT1O2*^qi*M_db0c#Z5AQuONB%EeO*9>L& zLyfl$$^Z}|AyC7(2dizQRp0rD6C1`Hk{_rDKCnC$yz#IV^$Qqt;C(dW0TGvofCeWy z$wQ%n*pvJer{45Pp>eWk%oSvofj&cYUBG7%+|S7IKVG&M$%$lq(||!GusoaG52z$`U|s z5XAdn7Unww&dovYt$+1ic-yt(_l7O`%UxEuC~YvJu49rGF-TJx)JarQ07cK2WH6pY z38G5P)0Cf0qHnhIEMGBcTaiOWf^O6Th1KH;Yur?$EX`7!9ROvboWYne3$Zj>XQI2_ zTtCd#EXEn;n6Zm>w2rnhiM2INv^R}2*Dm(4Z=CF2?QaJeGnHN@ZId0_$Jw^~T5b!l z-95n(jG5ze{Qg`t>C&oMH$oNy%0RBn%e0U;koH>?1;$KIHKfa=_BEyVwPvx}vj;{{ zrj(CHFaga-PzEdPuNpj9Gjya5gz)8HH4I{cE#%4|l)>hY!8rzxBEc4-POt}ryE3q6 z7-$Ai=C>A%W{_tye7xzOV=ez214{-_2JodGWdY;DXhr}WBSINS3U2xPs0d{shlane z2_qPQ7>r{MwEc6q6ZE&(s=-m_>s#QPZ50^D0Lma?1cNvR92%q!NCXCyK^z0(w^rc- zpaF+wpb_JkhGOt$*!4x++9GZZsE}KYgrQ7EKcvg#p%@d&{LR3^Ov$nDlVaW{guRd7 z^gb@+UChQeQNgdn(IN&j$@Vupt7Fz?M=VVam>cdj zLo~D9P`guKvssT;qf4&TB9>?p3+d|lbYhMsDT|?zOw))bt6?akzJ;tFN>L9XsRk33 z)~GA2B`R)&d0ChmDSE_OQ^iJ0)ec*Y9gdVeF4TQ4q@DJvZRWCd`ce>PDuM8gzEqPf zsnbKZ%|oxqiXKIg4OS+sQJYNP?}6INqUVcVZACLoGP8ACtGf**6c*x z<)wKrK(E<}o~N&rK$neVDsNDiN-?Aq*y>lins)kG?4Dqs;^ep4X3{3>dFxC!h1o?% zcoqjc7S7fSb0^O9qt6?sJ$;B+{@47pA?~ZVK&-C|S?Pp#8#D4IJ)7{T`#9}{Y4Lo8EJYccz z_oGSkz~R6ovPQs`5DPO8P@nz3AjBfj`+iF!#s*FmBfUF5j0pAgNa)sBCD>`GVL&9K z9U~FV;6#Gi9%9<}7 zv%vq<^s1SRkf0snRo`x^yJpOxWTfnP59uH)BAz9*cop$vO0%JBJj206Ee0A+g4|8=GF zcvVQwV*6zd^6L#K>zL%lnv`iw`V1Ilz3*pe39JK4WAlPmMXl!4_bBN1Q%$~*$fY+mqW$I_R1t7?na*6mtf zzk6f-{?}2)Qp99-Wk|-1@k}vfU_`ThNy0Bl+ARXgAhd+E7-GGcd4G!fWHbAg#$8S2U)bq1~sNs)miqdmD>`_V4_$-ST% z6VRO6*K~$)Wk~jnIpkzYpfTmp5TAyaH0t9enj?9dBe@n?P=?t-c{XaAEGVPdhiL{d zW{^F@`faM4Hy5 zK2KZleD!?L47{1&79}BL=E3YqKg}Eun!yl*ds9Z=L(&Z97>onW3_+Ob8Z~BsGS`Rn zzdpEM%|NsO?or;yj51x?{n(-Pg|>;`wvPKcG3LwosLx`;K8_4N8xeRa3^e0=JkaZi zzxzI4d9jbIz*C&s}Nt*%83o5iBTf>$5FFvcT10B8N56$#$lTbCR4pTh2>y<)_HFi$v^2 zLc3)Gn>2yVIoavpK9KQoGDh{;u}! zdpmjMM)S7#+imc)T_?9&C1IuF9;9|andwff*&^0jPuuOG++7$l)xq^lckhF3-FE~z zua?^{lshHyZC3e7GGcs-+J+qM8g{a8Tv|-)q<}Wl{d!FEo3ifOTDTHG?}wvXZZbBI*WJAMDB+^9VQ>J(m z4kMtzpa#M~EwDn}9ka(nuV(UltoMm?L!x828Wm2b6hcv>B_S7F!n_X*fialEFaX(7 zXN5qR`CDi?fIiC{^UBt0i6N)|1!YV(NvMwaK+L&sKpE0}`hV{o~w*6-Xw+o`I}Cpk3YxhZ<5OJq`~;OMTXzhhF__EQ5$}# zYxt>7{ga^?$NWq_WN7Z;J2L$FSog=H#y=h#o8j4*q0s6LvHY-Jdy8KE(&`6c^|Lnp zWNA>zavf&J#NZak#p*2UBXJn>tN9wx;Bj&o@~ll=c1*5JgASG07hgjeo%VW@x~5rO z^XHTAe)(?CxvUwRhJ{a#vQP4n&2W>AmdpCP%lo>y_H^~{CJpE%aRJHA z=)WK$Y+-oF!qA}9(0~=;ep}nc?&uJ;y!sK`1%G^ku_!C^2btyoZXFHbG<*!zhtW)gXsN9pT+`n0MU<+|&koJrI zc*hW9qOD~RV=@~v$dze2R|=HTo3nk5=SmyTW99$}HUVV_tXOdjFY^+( zm{H|t0%erhn~^c2r1`(_X6iSut4&XPxt`F>i*<`%tX=p3J3z$0EN#J)6?1-Dn*8gc znLwHQDU*JJF*9@APcz1$nhDK+@1r&wk*2Z3ZjKsqeFQOPYK9KDKD7Uhp?$9n>Qz0U zdqv+a<-Iyx?a|?K*LD{>wz|+R;rq7n-?fSTIx+f-_=rzqLe578orw%M8RqwXi1)D| zkNy5`CBCkOUeX+Q@eVnuW6E@wZk3DIxe8ZH`75OSr7ohyQn)hwIb!ZCq4RV|;51d> zJXMG<9hXXMw+0D|VqMGPCp@yCo9)`8?JvN7e#? z-Npc?lD3iq-8_pEdD}wl(mid~qbabMwZz?ij?8u%pEZ%onvP6iFZ)fQ{K9zg@pgif zU1Y~P$_v7{Y3}y3U7aTLY*Ky1=`sF=9l}277JPm{%!ZiI86KYFrGew+@1%r`of?`v z+9BZlyBI<1NI_s2-z}Ugk9Try#dGh%b?e1->nD)EC*_ZIm!|shHwJMsqD3Wx z!~U82?v?ymH$O`I?VFuXembdq@{ju3AD`D(J+H5Rs<`t^dH1D~a7%+SF29F}uU~bZ#af>j8#!Lb5~3Tk2N7#kjQdb#&n?w#k?-=lfDV&2o!Z( z7~kcuTZ$$C6e8yS8B>bc(hHjJpS}=|$3@}N4m!SE0n>?#Dow26Oec1;bzXVPvn1QO>5ifKfwB2#wf-I^JYT!}Rr$5g%CCK1ee;{^cfY@O2fFYkRo}T( zedqFV*Q)Pmn;+F{?$k9P*mU!6-w+EL{_V5OgKzplFuX#U!^}GL=S3c8_?2$o@$KN^GJiB&`}6VFKmD`#qfL|64GfwTX*bGPj%Us{*f zf-;JIn?N&4Qo)qPq|2DP#-SpbYYV8IHk@_GB4BnNtWYwb0BP zQ3i)mS z;{-=zxqCw$v)x&ngsd$xo5CR8;Wl1}I)!G3N|s94Guf=^_N;{>+wIZrd2#OBLIoRq z9Ck#Aa${uc{J1Fs+lh9p@lH0=L>!LId)V!abw1eLYi|c>ZnVQzUz-gscB_#|Bej_=X3Y?S zV{DRL9hQ5uHv~K9L~#$qJA!78b&wZD@YZz zBY0lJ_}wSCy*ofOw4>v|M28;Wm}q{h2>z=m!*lP=bMG&78zB>n^N=m}f<)AwAuqvjgUQJ-oye@>W+M5kD`WCb$gNTldLVHbQ+|o* zL~16P9F#XlzL?jtT*`DmIG$e6LP+?M9BCGFS;`!y7sdC&ctv=1#*Zl}y$xkd%NP?^des$Zfg3B6z7p^SWwXtw_dUnCu?Rjggl(sz&TD?7Q6|^lk zBQtmVo3t%=$F{sTDl>P-n@*&Uzwty|b9;XJj{Mbsqk@$?3RY(2F3ZYWmRpjxWyiwo zg5_sE+x6h_kNQ7;QR?s3Hrzl`v-NxXAMO8(9|V31%ukl7BV!uL5F9bZo-9AFzwVe( zhWWiT<)sr0H)Y`<{B#|{VN9;fYp#qE?UM0*HPkezs{aJa{PN|Uk8@9?jb7hBV0t8b zx~F8aRP>%i+}lOgOD5|s^@S_bN9HP)39ih%=(gKNbw02;yl{p0viCT1`mh#t z5wD4kUlJ5PCoEugq~F|_poQ@fsjZ??6JzGbMx{iArG$jc4hfkP95~zGcaFc$>ZqXf z*3ny9g=V!2E9wz<;N8}{ddKeW76Ftwga8xjnBHyo$?&dUjqUTp)IkU^)hrlyd+C(> zX-SVZ&iy@Wac%CZ`r@^UvJJ{z8x?!gl_Xtes{#XmGrJ0drV)oeKXf|_u&;rEQu8CkLDdkm??&j zc}y81)@Bha*W2+>yvy-U!6i{H>*Nme99h%tSd)dUg}%Ivk+RGf*_LqO)&NJ0J=)~& zyja4XV#6A1&zi>P%yLDtynL3MEJ??6Zk0Q1#-suto16&F z&PWdCM=p2aEflcl3)pad&_yOA%wb;_mqT48rL8#G!Sl<3yp|Y!5+NlwV%^&|{sv&h-o1(LQ*N zzig~XI$GL(s&~)6f}V+Xog(eyBluwv{LpZrJWRw77x3b_yw*ZdH-V&|KsHb$9V_Ea z@sup}=Whyj2Fer;3jJ(B|BHD^H-Iu13ZFeZqkQ&79p*%;s-CN=pQ&y_wJP+cx~5cJ z(CRhG25U1z8`uGSP*iGhRtQ5dxi6+IAsCAYYFGfv?0lFO zd&YDzhjl2L&=XBW#bn-?l5hTsSqzL)Z55Ns4rs;Q^EpQ)%b-y)KZT%y7q)UaZv4lJxktYoihtMTgFh3tp5Mp4uvU zVM64B_-LTa+~~-;;StHfAt^zDv;2H#17)H^HY7%EX&si`DXO%0t9=6!clV9k+au~g z_oyR%;y!w(&Do)y{xP!0*W>ykSLX7p;T0((NsMXL%wIOld7PR0B8SvtD@xZZK{JRk z?cJnc#$pp=hJ=}3Lm9Nl)1RX0GMN5&rWoz=l<)6UzMq5UzX&-Ilp+0Nh%9aKT6~xD zB_wHvW&y*VVW7u!Jlq-@rDC#)>6QQutz*Iql^V|AOEj3F1x+*;_;r*q(+Ofp5Rj$u z^gbg*A7^NWgqf@&O&}YFd-U%Y>fQ&<6lei7&@rl``8q0+F>@#%h1n?BhLAUdEMRQm z&46YYsn8dgacGLOP?BAjN9JR{%-K|zy{SHXGm?LmD9J{;3>xKaUi$(KW>Ck3beVOF zpRHT?Z0&-lY4d+yHTU=BDZejGW~!NfTR8LQ6!e&xfHpHQX6{cNgW7CFn$T(HrwJpG zJ#%;T;9JA{-x$*O+PfsiRMod@W$!M;nCU`{nIAh4W9GXyabLBH{vsjbv$(MHF~O%J z2+AA{bUzs2u_wT*)YrWLRoNcW91rPsiZUDJ!ZkA93bFHIk@I4q6HsOjP)2~XU+3w3 zrzvn{fHGYB$z0YHSQj$;HGcf8aA{GbC@+jx7U6U_UU)oFv^Us3$JJ)52>HKud&Bw1 z+WGB^bIbI0UdpqbVb2=DV~rKtFA3ytjd#t8cTM-U-QvgI;*UHPrw&x$}D%#uLsUX5}o4eCm0c*aDHCx7->0&q8)oF^{c{b8wJlPup>~}@l z9&6`(xSa^Yp;md=O#;eD9A>!jmPhzxw+%kj&h=~`n4JNO!^BhFBvZXR&5!6m%)MU+ zr!LX#m@vLyu(NllKoBZ&2otd5d5*0`+#W)~0FijGL_E=jH^WQ1Jivr91p`Aqp4a!n z&KcJ~TKnXOqUXPyQ#|{kw*JSbs!Aed^;2cd3q@7EqC%mp(4ak)@&}db(*Fv|U{z*Z zZLG~$r!6LpB?-m^D`u~S!VN<+uO_%K@g0+U(NbGvvP>*I)N&X_5QcdEc8g0<&!Z(7 z!0PiV^B|!XOBl%NVDi0~$&9A&kUSfJ$iIU!3F>Bh{Tf!`cpGSGT# zI)3O4-SgfY2{P7L3TG@k%#ul#)&Gki(VN!Yf9G+$G@8fg|G1%Ty8cvovEtUr@2?!c zSn<)-nsb*b&wcg7iA$BAT&ey?i)uc-LiEX%nvbE2)nETu{r&%hE>?ekvHHTBbgBA_ z%hl%@U8y;LwdUii*FK>-fAt!4uKdRNnmeDBUq4rI^ZdO>-@H&)Yntw=jJMV3FKoQg zVv10{wEQ@*W8urcefJ1Bw}dlE7RzggSqO=F3Fc4H>>QdZ*IHiP3WLn94E;+p|LU7x zi$tm3jxq{O6}mw*C@YPM$|gmn;pVyWBOCY3?Z2{%TT%pjn!9+i1SlivfGseexn8angN6@k!p@qx63Rie79p;$agSDuWbW5uan-e=MZxxf;8XOY= zj+qx5HZLY}UQE=y=%{&-QFFp0=7xsM4)C87=$957wxLzjw)Rm4-Q#!lYg5)c7Bq99 zPu$_&aVPq>IyI>M$HTjPF}mkBG?)R(AjSmm1j#WV7&0RJL^g(FGp>w@U}($;RoRSC)&#+N zF`&;cW7U`dexnPxZ1o;kHg|3Q)dgF-!Mh60WLc!7y# z7^XS$N~alQ0qYMH>JAptvL*nHDQ^arOkGJTrC_}r; zV6G%V8B&rBj#=?^P3jXs%<6gIn8zzpkS_Dv;-p85X8eMx?0M53&YtuDgPD>hJfz0V zgQ;T?X}UjY6w$;{_r?sl{oVi)V;a~CF{bK%-Kt>B^z3xCYx~Qc+fZXB;k&kRUo$bL z`0$ToLrzBom{2Crb8nD$nV(0Yw<|GbJf%B4Wm)dxbh&V?jJHyZkp-w8a#|qb&J{W* z^PQ&iIn#KKKpDiCCi5L8^KHg+STlL7#cq!2L4w>ceohFtILz@t4DWa%sb(tiwcRdb zZFgZ6`8ynpcR!TikryOdBX&q;vj#b{-gRUpdvMZYWZM(nH+kD`_OZ(hga4kiy|`m&G;lNalp87f}o zCRrlkFA_T?bL{4DS!rH2dGQYWI&$~6=M+afXM6KDh-?*)0$F4J-4+E*xy=mwog!Dw}2H<;v{cr zQb3pG34DD0w-#}F2>Am&dyt18LZso|1B+AwxA5*7&^WHTXI*Xa%<|=m|U5b zu#VY5K^%$+01=yqAq?^qffzITSaA$FfY=@uN_cI@Y?+gV;MH;@TEY4{%2;_Mc#5D5 z92ACT@alM7@7oo+Vrt-oa6gqCm08qTm}v@A@o_&RTJW&SUUv9ZXJC9~*e;f{kN~auU+T0FHu1LQv1EK@uKFBa_yg0nm?+Hf8J~Q z^Fi~UzZjc;QK4B&iL|4&Hy=Y_XO)r7`< zx7Cd%;Z8s*nr7$@q%z)6=&x&=?->5Lr)|EiG}hE=%3m~GVM1xTCJafiB2H_>H2*|i zdzUOZ1$0R~1h0zND>WMyTCn7vThd2SSJwP?(oG2+x3ucCx?MtQtMEC|fwRH` zQlf(AL`Texj+z@4H7_bQH9m21OzfhFh}7_~^{t}P+r{nd-l}Xs``rWD7j%s{_-@-H z{aYRF8-HQ|L7DTzyL>*n=hqYa|1fRPmE`x(TISZ$$q&+I!Ik+fW6`thWiRtr*A=f- z?%JT*yGe~)nFCuf8N2=>Lg1v1zUhX_Uus3~4G;OgqZtVK_E~7!zrlhX<)2 zgD!atzF2Q5%8-x~{21miQ#6XE2^&E(v{wx{hDMso8qXufL=uWA+>|z*-%E@cQ;Z3G z(~<=Yn$dj(Mk#4{zqsN3BFzUS`jfkir}s3T+1rF#r!#wvr{U9}%E@v}F^^WU@TC4w5ts%jgBX)y*N*zq ztlFZ?mjzp2=5MXd->S&ZP-4s^p_#v;3~^;ZGYrarW}bj%R?hit+3ZJ)lO8UZ{&3C| zB>z6Z90NMafSH($Fp~*oCXz0|_r?sp^WHnRhV{EK2Cf9L7wpr!2=)w%r{?Oqi0*T`hK6 zD&#B^Ii*T?^F_|H`JCy_j#D}8DcHiB5jsr}JB;GmOyIJTB=*a^IGI7tJHmuT;ZD0F z9S_CvPq&pF40p(Lx7jXX<+|DL4Hq9v@Yo&hk|}qd=fvvHWp#IEjd!(M8p7WglyG{wbbl1x0w#c8S=cbc3%S&C9^)-ty3CJ{z?J7My` zR$tcUKvqr+2SKitZZ1n?qWJ>nS&jr{R=TscMY2i~Y|2{Mltgp#{DhljcFVo(=eyfZ zMUI--VYrw*Noq68oxRGBT^zt6Sp1etJ5evdQP7LYS->pYmUUVqm)t@5@6tIINtWYs4p3iD6w(TiGzbM`? z34e+Uf0n0onV<8QCC1VQfP_F|24`1gP41}UG z-IaCo7zzi>VvpM(K83Yi1x5oRM5$>xIc`|Nk#2gCrYWbA{%QtE#3e z%0}p_%7|$`HT7CF%DVuwKuo`-Kyy69Pin(`wGp~UbysbK?hukd3HKit>;L@je@Jg5 zq(-#rzo|kO97e`lz?z0e(A6yn5Yy0j`(;B_t)^0mKDn5v&~y#0XdoqRDEta={C@;x zUaw$c8aNW_r+54J6-*YCQKH)~MHyY~Ro#or^;b`PRkS!~Vuu9@f~i3^)iJ6^Sm-O#+U`V&U z13Tt*3OzEo!;t~44)=~d-Y>xvU>eoqn@Iy;$yCi7b2D`!#z{V0lZ;%M$CofvDB z0pGMdYwie)NE4GIOkz*ek6}0l`M=GiX`Tsa5N!H;lsQ!fj?sKn%5aSOL=gm_0ofQ% z?WQyXpxM)O7C^HH;6e|>F@=_Yy8L41_mcr|JVvTdLnd{A770k;G6XZn*vx9{hKD^a3Hbois zG?8$!Ogd2_nk3^;lyR6OVU2fYEwN>#3;7$RPU~C=%B1_VvZImjB3eOEMm&e>kmO(k zlv(b^+7iObjbs(YvWlae3IfC#a);$!c5~%6lO?vpMC=h#$LVhDxjs&50i66GR!KN( zU!rqSltY>?P{tWFGe*o#36yV1^xfZD^x44B{qF>=i5E|hI1FIBj1mRBD{I?L*gnxI zBA6!&;z~m$j-f8B2pKC;#A+k8>m}k4lo9hMOSv;WBujlc8-nbCGDU+!K3&-NV&TkN zAFqE=QTpunGtZx$f2R26spiU)hRaXXSAJJrevSzS%5RmbZ}qCr4eHMu)ZhK@pbQP} zV9jPSOBg?fv1H6Mn3xP6Q^B@5z(nm9>pCN1y-;JuDq8e^g))rCLurQjWNYoUfM$r8 zn`fd|jOAk~aWZ3&wc}!{OCkvMMiDHd-wVBY@*Pp@h#voMq73OJ^R}Rp<=MAI5a7y~ zKD*=NyG1m|g*;`ruGQbAx~J7!>$Vmx-3-@t#%iL*N?l_G*&6Z4b)Dgs&Tt1?ePe~b zv0RS>aHQcHk^Y(%9r_IwS`rka(qGeHY9s1*47etAgSj7|jJEj-=3ScxG-4_t8sq9} zG`ec7;hI)|LyJ>%w=}vtM9j!*!%fpT0vt?oQL%+xVRkIY%xW~$r(-D_uQm`}pMA@udfk56l?);88)r`!`_m42&|a|sISrSH1`5Uf#j@V6?tR_7db|1daPjFW zb?GN_en-w9?IjuSBb}eB58om!}P`OdfG#-nhF{X>&d1C&vz`V-MO;1AgvAo zrakGX#D)|Hx7HubM9*Kv;cdzz7?HhQeIi@)!A{+Wc?LAcLswt8FC^7BSN&0L!^u4D zsRG>@OfW#&Z-E{x^2r{ek9X_O@6w$u)0`<`q&-urJ6o!?k`8_Fkl2fccxa3F>E6aq z_n7OOXn8hR2ObZqyU~abX*B0c^=EN~5~4Fi=5%0^5sdaT)RifP*FudMm@dE+;=AB+ zm@&W_vnzvR;M}xG^M0}NNFJmvue>`OgMoVH6Q--2ot1^G9GH;6_XOkj3U9lrwNv344uiLt= zcFUTVn^wO_U-e?+s+SvA)I#Yi>Nc);xqjKRwA9~M%zLyr`IiMVe@2XH?$lrAOnEeC z>aTOA{G5zxCM5rkygTW=dlQHKG->!xV+Y?G@y;EBGQA1P4Cr3n4|PnPuJmYssaxA0 zyR^PY)aF8`#IM>!|06!^e00$12)~n|J|6~q9S`<86ykLt$YYPcTbYk*u@`#G$nxC9 zS#H7%SN=u`ceT(dP2{v(!bQ@|e1YRE9(#tf-E^M)48Fq@f#WE?;|QL^Xs-PP0j2>s zt@Pq=40g>45#|RumxXdq$BWJ;N{)v(mdS1ML^j19_Q%472g0QJ-rSW!RzIZ6i0wy+ zY{$7eEees9B#82&oN_}Qas$|#JlW%%g(DrD$8&kpB;r{vlGy_L`BM92ckVbjcNo_u z$%(a4%wF!oUgK_;?!(^fZI|I|pYH9L=H|50l`~glH^a#WDak1qMd`=h5$>EHjqwQ1 z7_7YwqqgNXi;*rPww)lfA1|<*A+?|9$y@8s%MWH3M{xGU^UGp+n}azsQ`6v7P?d}(n-o|6P7q=VRp%;hSLEsg~_lw|qg}QhLNjyTt;!qJcT)=6~ zv+W>u=p$ec3?i0uO&4d}m%qRYu1R=;f(5xZrecVWGI-@S z7}}sOVYxDM0AsOGw}Xa$nDiGjrjTbDADsyXng5LwAH|F#%&S|zYuwtK*RXgS4OIqR4W!qh(Dx3J z?v571Kmf9+SLihN^y-KDh6nnFdqkQ$dd+RU=B8d-L!<{KT+kKWKwwRS|niRn#>f+gZ5ILTfwd;*F25?4GwXwO%&{Sz`DmOG< z)#EKPkP$`9x6kk##S6lks>aIt=Btpp=}JS>6`+hke-F~3r;hO+Mp`PGe}L-$xB#h| zFY6i+8LVkGl>cccZ!+S&x&+amMHNLx{B$7T=1m>mc6}v8Ul9`@tMFzLY47T^Kk0OL znV&n*g#4aS576XH(mx6E9a;bWSfdPX+ccV>M%z%OQCI1dm3n2RMvcE!)bd@e)nBPK zTv2H*>6Jg~>wkFq`L2&vP0Z{QyEfQmu_tekRN5OHBbE1Z_3Z2B)5qPXm)xt5T>g%S zWQebPv=48bkJG$Z*ZiUJhoFpD;dvz}A)v>5ctAY-3d%MPe@NSn6`n5gL zGwuVl`t8@|vmsr+8P)5Das4k%8dyGkSWWV%yQz~Or6oV#vZyv^MSbonW}+le2CaV4 zC9nR#mij{(1Z56oDi3dCP)7T~PW?xDMzr)jRiHhYrvb-&xKsVnPR+?Y-I)Tzxgti0 z2N^%!+xW>o2s?&zyLD&Ew5Q9oK#j8?n_c+QBqZ>n@f`w2n7H)u-X@&#>0bS3yL6wH zL7I4A9VH5M#n& z7U&@k&CC5cFZb`PI|!gDP#-JSoG8(pD5WZCKm)y_McN}R0@gGfDrf-29LQIrnrTmt zW>2a*6@Z(CQJv9@;Wn%d22FE_7d z^kU=6=j&IzpnAS`+0)gjkC)GXv^a&L%#5GsP6N$6nmhGZI5e{-KAbuB{?w6oCl9|j zY3NUrhut4H`2NUu@4nan){s8e2lc%6PWS5mT`T%@y4;l5|Wd`^dWe-PqzB*gP@u*d#D_dR~{GH;h+Pidi>i0PPz)Y^4I zq{?zuh)ASqp};Xk=rEgapTxJHDX^a+a2UaN8qVX4;5v@sJ581F7P<+R`?+TL3wH+a zF|-|>u`YMfnZ^YAAf_?ey|;DoRB?)XEzih5rW-zwGrmU zIOK=f76hRv$$qRzKG2>w($RUkNI1t;x`1o5M8KNu#vA1>dY5Z6k&hB2)!`y3l^EoVUi8pBwB@81B3)R=6i#loifPaf2tsnuY{nH{0bw?2>l8E5fM62U?o7>6Cy7_)Hv-h1H$4(C}5kv)|6v*M9y~^TRL3ibwkLXR3;4 z%8FXW6=nU83dN5vHQ&9|efP5AhZhQFI5q_u)n!wU78<@`f1t7uv!KG))+bJ@XG1#{jKN zK!*EgE^A>UGtJQZCwV^vlISs}*QGr*2u9HQZSsod*Cjl`xGbhjTiOVhJo5LVSi`s} zf4hA>#$abZVWO(40DHC7(6;~$sLX1Iu+9l7c_GVqQ21`EtvxaLxp%MG#Lf& z!(FWbXAzVk(J_3>jWvd*YC}_%*_yhlGXQ0XD9Ye{165#}G|h)c5?N!F^3O_0gUDKQ zIbhD9zYD?N(i#w%s!=rm2-W`qn!y+;pbX5g>Sja5pZfAf_%ThFAVPjdpiGTUe~XH` zGJ2R{6%hSl0U|5#W)f*{6PnQh%P5f1TsD&{Ls_2u1)}e@nWO(^M_-M?D@d)W2FGYr zl>}u}RhkC;A)(z>1&0@nSl>Bhxvy}68)u+c(nl=oBbE1Y z_3H28*U!VRue(ow50Am#uI~kSj`87-^Wn^kamgJVduU4c%zmNE+qy1k>$;{_a9Yox z)Xvd!+C|T56_L~`I;CBFa+`#yF;Sy~0)}~c4)gMu=i;Z);OtZcVM* zxw1ZQbsZg!jV^hFWA<;V+rPPv7&94)!x+Ytr9Qqx^L~!*qdY)N<7w0`!IdF2)9}$w z7&F>a`G&JajUS^WOli|6rN;AR1W=Hl`|)1m`Mub|mpWv(09?-PhO9Y;97$1z(hppj zy@r46Ci-lb9zgSnsdXM=Qb?~M`NGtjq1zHYGKeiLhH0}t3Mj8|4D1#&$1vUuNsB>@ z2|xo`Xa)f(Ym{j?4wNa?zF(#@OMA5VFDO&kf--w^w0o#_fo6a*m|c*mLVziMiz0V( z-S!Q&fEb2jGSZQWKPf->utKU=r#*_x$Kq1A9@7W}$&&Mym-9?qYE%wNng zAWA{f%!G$YV;{^Ib${B3`%{KP4<-zKIA+jKBj3F?@X94y2~&qb0E-tub+IEj|pXR+(hV@mm%Y?7dcau z;Vcz8E)qJ<6*Fi1ZB_|W*&Oa1oN`PMY%!Fn56)eS?9vSv?ffcoFR6=0YI5KuH4n$ z+#UY5JA>F|F&JVX+7ZE@>)`-en(o4yq8+xyN7m2`7rwYOs> z2*gohmoSlQh?{@7S5SnDXP8hL!4tIO+IJB+mXSG-M2#PE9dn|LHGjOePp|X05JMhhE@Ih|gRPK=EE%*Z zJRZkAw_qGIGl9|!Sz?&=g;`CkTjc$hPzFN>No)whqDVjDGg}f@!r-TJ4Ki~f<0Xyp zvc`DD6!3yOLLxp0FkvCDf<>Vx*D=W)V5-ni0|S8=EfWm^#1Nr>{|#N!4NddahNjD! zCK6*p=maaV9+4D7h0%bOyQ0xp1sUP@7_UQ2#xV)jG*v+eX&K;ZkZl!JrJ=C`qEvy! zo^g_>dqM7serqr=C=!vF8VL`9Q7T(Rf5t1+&QIz4#eSk0{gQRvNbfx;U2GTVXyG3ujZqyS3gM9+G3BN05{Vf zQbY4q=Dlq)RQ;i^!h51_`T=SnVJ5t>miqx0<0iqH7pZ>GHeS#ge<0jxysRVk49JrC zc3$!A7@#q4U&%Ztw@N^VNe8P^Xloz~%79}Gsw!;*o<$*F#Y+ZdG?%sY7nD!Fyz}9X z-LnU-YU{VeiwBe$B9`7RJi+ z2E`tm)+={#TzYr^bzS{7_6c9tGh|W6$eHn>6C?b_h4@X544xJn1y^Q#STJ0f_k6r3 z1qRFt3tJc)4V203+HPmp*14VH^E$@v=@x%%K&PWU6OMF^1kDhX8QS%mQN4*PGx6Q4 z(}q^h8u`oS|ltI?Zxl+w(gn`U717qg=9uu$79l|tL`dgG~{G1sxNyi<~;%%hS zkeN-N>>~P@$pt2T`H-E1G#y4Hob&-f8A>n=#4rISaEuvcm?U2sY_bkW)g8*KKa{69 zT%bBy1eDPpFV&wYW28G?sykZDh+!Jt;UeuJ8d^dm;SzbF$9!(x@ytm74v^xGW#Kl zvFA?*$B=e;$rB#T8vk(CIMB?)nWG=f7e=qcZf$@v7wPuvb}^qPhJO+p{BcYW12i9o`yL7Pf-7?{&|{w;nJ!uC zDJyal=emirU4@x4{sytrI-%oop~DgZJ5|VDAmJidW@NUj+}P{9oHM)}Gd$So?)E?##E<66Y^L#87=SQ|Ycoe~m+tShJ(RyQ z&?(P@wM}YrWl~WLCE-jK*aKxS=4qv;6B-ADW=f;^`w}HN(V_+3PBW!8GhJ8`#|RlYz&Jc=?(<;CZkZ=Y+weWAYa7FULtE0$;xsam2#9BCgKOI{0OhhU3GEV;UG zBp9~f!E}u$2V2FAz)V0H=6=XMsIM@HKu6mO1Py7C5{IiN|70^OCJ(fMstb;nDjJP1`bWb$$ZsEMW7k*ijhW+ z5IiCd4WdrOry(YdwOUXH&wjE80VcRICX~Ur12e}ka}WMKlmX3vU`jwL=AaTWW8lF6 zXkf-*pAkhFQ^gbTg#?ly8d}o9mBBtDO-G9xjua7&IaXqk{z$QfW{@jmjWU|D?V6IT zhGGlKY*poLQRQw{?%brzPA8G3ZR_hZ*VSdLtKYg7G*h=3`M)cltzGtH_2MUKOP;S; z@?y=BXR8V=cA~f@G@^A)a?v8xtHjJ5J zeLyqS1G`uD?^52U)1@Bmz%d9gVf$@|xPP{e{6|6%-{W2GO3@FGA;_bs&>`=#3F}!neybr=TCGM<3Ijhu&gaGb)i8RF#7 zkIx+;<*p5M$Y~|dkKh*gv2y&`seaz$xt!tlNW>A&aFx%K*ro_r)1~%PJUCO_IpeuD z=&(0OVza{4eyt~QWwySGGBX6MNlri+R5azKD-m6vlCMVXQ)?%qUkZj2<=kC*Ifo8)FU+sk29D7OqK)5p7@tKasHek)_$ z2Z-2hZEfJn0A<2OF1|vyXrIt{PyZMfk65wPgfbGRkuuI$S7%f_5tNA(0%bO}l@@ex z|73i}s`N>Z53W*wk^Ah?sh3YbexmyB7yVTRWnL;P>y=lPii-@&Jkx&r{9mGsB|!5U z%1|@L64rq?V{v5|+rwncF!sz}wghDu`+?ddrnFyr5rP`T(P1EiQi~<+#wsTU$KWE& zkqpX!W5{i&uYiFlRlL$dh9L>lDVF;&y^1+^m^qOeKPISR;K}?ZSgy=m|L?YMc4e%* z7Unu+6`)2GSsm!YfiJNrSc4Zq9~w$CtuJ(yu`DA0eUu^Y%U?yQ1?++p4I)hw?3oHg zc97CRh4fp5EdVH#2}~{pS)r*+4-)sqB$KT|%@xyw4b7EEZf$5{l5>gWgD@7-arDLt zgRzoHbJ3A1bRuM~G(aRR7nMOsq^)SVL);`0V9O+8^U%8`;}M9_f-2}+8l=Bq?6%=< zgAv~a+#q~Y6;y~=0WYwvKsGL31*oCHOEBlYy0y-mrW{}@T2>PWvPITETJwID(pXj7 zM5H#5oMreW225epUPES&PLE7y*fz*Du2eObE1TiLAOcm6ccV#P)r_N;wMKX|7f9lczFZ5adNqV(iZ_{aV(1+b zl%~Ihj2XiioA^!rdz8_cQKn9R1t?RexKRJ(%jZ9Ta`X7My>kYy>lC~?P`cb#G}_f| zn5*Y-ci;ECgGc&?4)qBhH1I4K^?%91K4^QY``d+)tKH+H{ zd=@3TCr60J`b!6Ui2BR8eZ<@WE`q@xuETx2M*91X3Gg2u95^!~9GSn%TPLP>NZj11 z^|lUi*&Sl@fHK_^4)<-hzjM_7_94f*MV}qe?yHf#E`nob469Bad1L-KSTet^O(BUg zS-#2p?+UF(tedkwyBS9*MMUXTKXUt(Ip7EGT3TA%xwU~FdT!N z-_!X(89)rkM)Cd*#rrwR4+|SkBA3OCGDw1<9K&SKkT8=K%@CA1w;PB9)-im%hvdZ2 z8I#0=!4OK)Y=+i1eXG&1QyKk_2RwO+hCMbsrW}mFPc$N)4cvlV!$J zD9PT1trl6pAK(Dfv)I9x8YI)8l<7pF_We>Fy3rt_1c*6-=D(%dV@Q!99HT~(@39g+ ze41mW21Z9qEHndqM!PRZyLX3n&kpUb?G2^d8cH%7iZj$jTUCWyAa(v0Ro-S*?j}_Z zl7H9NXRWK>24e=%r8KB^^J>JHo~~O)T$!}R&ww&(mpo5PeX?R6jG12-VU7VcW@b-B zuFS6~lYW~6P5d=^ENJH8l=mKtAM(@KL3c*Ib8AHZo5TCw7}n?7kX}^-yH^b8dbv-> zi#^-Hp1Ih)&3B#RziJor&o)tCw2ox#nNyMe$HRS&fo6ie7-MFak1LFsd=E)3rZTyS zwz>*7Nx7@UoE2iua;fuDSN>ub?mP)+79WWwb|d)?qmcZ|a~$E!9>K92Tm+a{vtYw`vonA)ft-9#7Mk3oNm(nT ztc6nh=~5J7v1f`M=E!*~yqq(ASlfJU3L~8MB#QImq)YsT=$>annGkMiJK@n@o<&`K zc6Rn#m*_xhaYXg9BOmNat^XwJ>BA3epPYND{N|DV z@~^rpFH{vTRRm>JipxsHrRSRO{ymgo>;cLaj4MN8OeD-iw{+k9ID;?LR4|2aT1*IY zpvU?V05L$$zu*Osg%~P|OE2n4%8m&~tka6Eu!A5AeO=}yOvFPNiw+84&Qe_=)M6HM zOQtOa7t0Np;D#Q_5ChP}gcp|F049cIz8Xc4H^R!B+trX$a4thIAOX@>gja;ly0hV96&D4b%jo?xsSG@*LweDpUa7 zfXwM8SomqRjtON*b&u8vWI-&683zpugh@RC>)=`VG}jxNtJP@J0+eaGq;9;}Kq6U} z043lm#8zmO3ZWBIgNdry2c6*}a(5W_#k3{dY1MZa z4h`ekFidUrcS3)~D;0lrWe{M}AR7*ZRH-nQBlGuV{dX@PfBxkDx$DO=_M{A2*C}Xq zfMl7EaJ-wxXm_76UV&r$LdW`tzvmM~WHhtFtVuSp?+NkQ`DAnB4Aj~%@t50C4y zcXa2R0dZ?P`Y(ucn;9Z_&y)X-3wMBwaLl`M@emI=vSi)^&G`C^_V)XX|ZWEQ&E{Z{!1HIZD=n{RnQ}_ox<3AnT`TKGGu1p_Nl|1s=+%dOPCp}y_^YO-c z&odX-?pR)nS(3$T>nX>)EL~f>dxK*CCe`6g5?2DpoXDXlvlI9NZwAsZ`fw+V87=%6 zQnFNtTp0k3>VurR<5_jbvsFNuQzb1ZW42^SE-+05)}OVa8Ja-D&tK>e5U#!!bpK zV<2T-x?<-BMfL`8OkLL6x@~LfGS}2)fMZtIXAqQmzH#M~b;};7Eq;suQ`+L^YZgCS zZ9 z`mjDVpqW8EuJ-SIsdtCVy*pg&(eC>$iQjaL`>K7+SM8!<&%l^D9Ubs~q~D1M-(#UZ zhl9N^$6$}I8W+mA63RlpboNUJP?B+;pm$|dkeVvMe97{r+_J?y0M{*8DI_(JtOxR?5*zfdp##rov z2;nM`-55T%7gyNZ$!WZVy(H2rJ3_EKgjE*C&W?0nCUqFg;S6+^jFh-db`gvhbEb;z z=DOLW`r1w6vnC5z$s$bHwq5DwknYCb?C!9^ot@@pztYuquFNh;WHS}V@X_#wmF8&= zYy!#@P?SOa_G&pR)s;Qdg*!#$fQ*^huFgxrL!PWHUaZ_O$6fKlyg1p?0MTqYJ4tRg z+tXoHuyaWp{^9QKCEa`qy7_Nz=RMw6+{NBD!Pz-ZB#sb>ld}x03Eil${tH_sx>Qw+iPxKfC40{S&pnpLweM z>XH89uewVVWh&~GBY^)49&we9nXYa;Bc7JcW{Lkuf?3zYhf31tFMY;1c3>N z!3z^%(2N;;)HLNPm~#Lau&_Gvjo;MUQHG$2RdNi&OxEjy32Vq2@d~wA%p2SrbK90% z`rkkq;)T3UGcY+cRP;lC1#tolRaiI`hU-)}6o#AVuwp6#!g5IKeayUq-nB@ZB|#;c zKZ_#pDo8`j6$o)0FwhP3Tv0Wl^9q*j%j(8U4UL4H;I-(Gc>`Raxxh#Yp-u@v3JW$s zszzzN1<|vJbpfWKSOa!pM2dqb$5gzEGPfwr+-)%2wL%%R=Bw5=*Jzs2{RLcwqU$TD z%~l%FJf>2qzhNabh5MnS_!C=vi2IDPslu_fx4A9L619D%;vn{A+s8JZJ zUr;G^H`Th^h$}VfY9IrtwXQ_Ik*4t`q;9^ZY_7pKNKnRj#i*@r)F2_cTG>=i)QES0 za3p;pOccLHtHklm{s3v3z9Ae#Q0806gfhhLV(_bF%U})j3u*x!@+Hvw6`HC1Ypx7p zOqN_3Wm9FH;cBho`cgAMX1%kzo&O47;Sw+YL=Vq#o_^zfgU1I%ObCo1 z#*9b6PiaIi`=b`aEi-)$|+#`HxYoEDME+f5!gWLo| zJS4+?o7O67Lqb?)n~40*@%wtV+TW}7 z;qGxKy2qaB-}ayH^&pl^(t9;2qhZP1T{`ubwB#q77QWcF^yQA_XpW~SURPhXp|))O z3%D}7Hz*HmX*ja20ja(W%AgGUee{*dX`mwe;Fyzn2s0t51c))7FNOd#2sTkyW+yBe zEdoqtuZ2neWdckDWth|%;?0Ek$NT2%=uC> zuF@7b}IXC7_unX{kt;d9rFDO0s`jn(}x_ z^6!ghJzkXb`-16I)1J(q`un`ezt5fc``ih?CXM-d>WBxEhW#{Q$epnR?~Hl(_NaGm zj_6NlW@xX9ce-Bb+wn@@PRIhj(6#kskIT+rqhf!+|pPJ0s<*T^+_dbKc=dh6!CJxCqCHohKtjS7wvy zWjjS=Gg)La3saoLHcMUX*1OuJ%k9^>*{^o9U*T$-BDDp|OcSuC2v{>EEKDKT9N?Ud z&M}^>EE#K~2Wy=tYpI7rlAJ$9>^M!tMj1J}6>oHBrF*clgX~LV1-U?(Krv8ermO8N z5B7>6PH`*VfiA9P-F=I@2V{2in;Gif+rci;i4!LjMhV4k4uSxYTeOQug50BxtGtJV z2fZuijF581yYXlHNP#k`VWQ>Hy!D9$WsVJu`R9UnYIY_)Il1xi-J`XSPd`kFY2X|#TzU2lq<^O$@L4b(_ zGN=cDsu?CT<}zvbLd*#?Q$bfc^s)U(X?y@F8X4VJG~QPj?<@2VA<{Lju?kW*S2aNB z8fSchZvhg;SLq%f+2m_9Y26m4AzRvJK zt0&Ts(jH=ms2Z;+(P*ymp2F}uq-?scY`&{(zN17_-R9e>=9{YK8>;5(s^)7%AS4=x zB2DUuZm59>j5lM%@t2f;e5?BNqWX{94S(Ee_~Twf^G|AWok~ShMLkNUjaBuA>-D-v zR(e=(sHw-W1(JXaO9||9lh`m|7xMnxRX06oXnv?}dZ=oA0I3^MTzwa<^E8dOAT3U5 z{6EaS2UJvN*Zxg!!%&9ao6=DfdyG+&m}q)27E};HdhfmW-kTHw0kOxHXzU7tfYL;o zh|@hrdXivqleTBd5O4_$Ec!!?frZtwj z%E#9zozPY_)73QBUvttx*TT@?l#zjzk)frb0jM(e2KpWwje%o)jdeqewd1xJWbNK` z_UmmBe!!Y?v;|IGf5SPN5ej(hB0KXX2=Nv6DH`li5*|S&@^Ok!+Mn z4Vy>~MS%eg5@xV~G!q3fO)){^P@5g;j~p{0-ortNW(EUX2mPD}{hWrp?T0<>M!XG7_Ok3QXSf1A;tfHKBwuB_L*yiNnO8OSu1Yoj#NS#|k*b-7$M z*$idq{41HLAQ7uXidK{iSCj}+5ciiA^^_*SoFjV)L32qVh!Z4{W0F8KLPtdfAWn+$ zSWEJ_$nb_M@njfEX6XoLXz*mO;V;`DowHUbMvf;&o-b>SaEUHz1Z*iu{7RJcg|OHc z!UDf4$cF0>3k`U3w7Ijig`#D7EJO(hL}b1r%Ks*(__MUEnV5)+7?+0(mxUCsISENG z&Jx`2kk3Li1D;=gZ~^!E$sy5;nP;O31LZdw1a1D_J4WVR3u4ochm@-eWDz}$1 z%#sv82{|V4{m2m9#_J0lN&pkEU?eMncgi(#3mK3-+ic z?@)GIr~D&aFpSkkbNvb2}WQDESBSM zIts=y|MH1A$Nsx!vy3wMg;u$6@J|6}U|$#eI0$8y?+~l%!rw&~V#oh7%G9zT#e?-P zVWZ4^^VC8Q1asjXW8pmneG!j7`r72Fu+5$I#}U(?Muq zy)$uXPP?r7^Wq^th%77@sTx@49!YqQ}RWZO^>|idwnVNr%Wye;b3?R#V zH~jlB7yB3s?^dA<(98W4D{w%g)*qY@oJQT zhC0A8ohT5>^!^=XKn-dIj`>%VnS1fkzzPs)K#9Sr1(qwIgC(Bu?bu%!Kr^pa_m!FA z^p#;iUl}IqD+7`YpbYetp^ZHn>Am%;G$QNNK0q0;{rYK;EEE-2P)1YlD26h>DX5-M zRk2#T)?tmJ6UwG5#cW@b|J~N2Uv_1Gw=HguQNUJh-%VOxJJ!2@ve9|#dfSagR_pXE z*BP8PUT3>;gZ(BGJClv4^>pp@|AsP&+l=zQ*jE1Crw|oiZmRlxP=IDKqv&9l$pps?*kvLpDeO$sWMT*<0V0?Z7Xo!mD58VOkpbgj zKBFO?BamYXbQ=wF8}W4-^>!HZah&jV81=Rrc0Y}wj5(mpu!aVYQRaue4c~kQ0j8Piy<4B|-V8MJ=+liD%IE;fT*YVxv>8YDpHY3q+mq}Kp8J-g1eN6leCDHEYVU%)Lfc)oJ24c z7dj#;0AVJ|1B!^f1b3hePo|MnmX1i88c(LCK*c7xd|eo4%^M@npS@P3Xf02cGS_J- z;(jsduS6yG3h;eLk_cHNQlQV9smYzWMj%$6$4Z>|t*HDD;tGcqRSwE3n2Qk{30y9c z+^3}ZPD=AxOYk^h!c3qPcZdvcupAp@PD6G{9B~Zfp)4f0yybYp)P&>J1(OuGq9nOO zmAQjexIC2vtmVbcNkSGRL2Fr24@KcfWv*zj%cyf_84yy}Nr5V3E5mCk&3#&q&s#$% z!&szXJLxQjGATQheM~fdljPej%)eP&Y>TuEa14a5sKh#P(l!~HujNSlWdL(_5TrN*hsM=%wT#6yu@jPj_QWkf%$E5p!vVE1f*Ct#~^CqU=U6xfE~DR z237!iK!<=|m48zyrr8q@V1K|JgeIIyW_Y<0e@~F%SOaGR^ntS>r5y7z!m+Rg_yDej ze>8MjjLFc>s}e&<5kZvpFM)RcFR?;GaDEJ}ko9NTI*tC_@P;?5KQGph45>1lGh-Zs zZU8>!zpFCrj%|>p`Oj$j$jJH8%m2(TtZYI3c~LPoR$2@NN+8DI9der(fDY5I2gcf) zJDxUo*1qm-YJb=Ks;joC`$hBH=j|U}^i9BI_V@JJad?oEXI>4_LFZ_CPkz|;_I_(; zb@%(m?mn2D{0@>P)R||LnWxlQh$oPvAyeDiJ03Q7H8!-@x4fCP3eKU0dISrta$IuJ-!2rsnR(S6we&b=Ed_*S_kk zY3h3XcDRAe>Y7>v`2>a^fd&Kk0uOi`XpmDF8n-ZJTOh`#pH9v`C9~?rf#+!8wJZ|dztEHoDP15fLF zAJ=t1?0WxtoI1p0^??IsW*UmgYpL`H14EBHyBb^Dp16@yoJ*230L{aU8ii)+iwu`Qs zhn`BHv1aO?btON4mjA=2iF=KMH*5QBTpO@i&wtk@zdhT0cW?LpY=_6rEiT))IBnhH zuz8ciCKG#vGJ4j!y3XqieK+X&Zq$$1te^7fhP-{-%f9`j^qWu4eQt7LugT5tK7C~R z%?qnvUpbhzx|(-*TfGZ&9**}OP4*v62^dWa9L)-z$PFi-iJT}vFL`YyBzGd zupRJ?kYK{v`?4h#`u0m(eje=iq7(luylleLU8vsbfcP-H<&Bb3RSxs*M7Id|>~ z&`B<=z)Khp$pmUSpFVRr2LfhBP664RPiLG@hb6oPqp+tgz@&m~7Bu;V#=aF9jPi75 zc?JaITsosHjb4_@C`q9gC)0|PXhkR(#mS7bDX^p!CQ=I$K$4*q#6eKc#8UEOD7n#; zoM=jR6eTMXf{`7~Kr|CcOOK$Yg;7(&sL7#}q>#ykAaZ;l^v$EhhXT+*K@(InO+-Tf zU!Sp1ud!e-&A1QyIu3c+4SU;9o1iKdj{If?oAIrG5%|-;Vl#0Ya7-g znpvlH$xyvYPZemU3<|R~5zRoFDOFJlB0*Uy4ulycQkWts1ky~hL~l?sqzQJiqBhbZ z7E+=oBmrfFkBA8$hBT8X4~$7VMdb39;f~Q3OVc5wtr1AoI-$0Q58;56iim) zD^lk^qr&APC-###>1$!a=LF(j5m9#)!8C2&WDV|24c=r$ZbvENkD}7w3X={hsvlI+ zFc%khf~f`4+$W{@%%S5==58HVR^HiXvf3TruiApvq+G z6Vlep1nA1y$?{uBa$C#s`)UfOuM^7MBv!mjp=_^8{vM66?Q2gd3hp8DZy^eAmJrtw zCutGHbwr3pViMb=Wq@P8QI!5gPW-T}D5x^l%2E#Ma*kR=XKg_rL(#OYayO6ec)6!H-v;b4R>SB_edOqR71_R7lHR$(2I*w3q8~Dy_dc#O-<>~-2xb(&N z7nE7uW9FaMaWCzP6Jmu_{=+2k@ml~fsC6%NX@kQ7lAwqNZ`BV{O2;U*^=aMxqI0>q zXY-3H%Fb4m=al6YR2CLi<(<1;c;`H+KFxwb(Z>*)Yj^ z{b8u}!Q*>{XV07|%D-{zdRr&VENrLDc06mkUVc3*?_Bnoa~HFVD+(&g&y<(upDQk^ zD9$TAQ&gFEuli=+NZZsx{|NmJWg2oWpjEuaQ3gvO)p z8C_l7wSU~dkW-!=k{l9|5*eNp5tSMPpZZbVlg_@D5o#}W`aM1q3OS14zYn?rVLg$d zuMaepfxz{^6?{QdWdlaGDowNc4ORm?+)V56jXLQ3|8tdfc>lJtJsU6X-E{kh-A_(@-(YjN z+4;n4&r@Cgc70Lq!-;;QX+dKd!Q)vWV>w~tdEpahBFTl(lSMI<;#dgCF#*T0Q3iw= z$T8uL8C;bClz|#-7+HV?F3jK!f9G!Iq5+W0DDx4xAfUm>2Irf9SVCqBEHVgXnAgBN z424nHTqnpM;f7z127}Yg+|?YQ83Z&}vQQw7$pMa;=LEcj36a>a>kL@OULv@e!Z?Oe znZ~F{rB|fFa{7E0Ov9e40D=LINt>!jhkzB}7+NWSOELp-Od_=~0Rq;U*cLpsL@$iT zgH{+vEr_M%$5QiRsJYS9oG40mBqJw^ksU?PjG(251Io}+L#Zi%GQkrGf#Y%hILe^% zY-pVaC==xmLkz~lya8oK0$qoE90t8?hX7(cZLkEB6{s?RG9T=Z_1PWmb1;49cs+G}&T%ktMZCw^!({kG-s{^o;Uz5MBm`fqpF?*H`pSD(~;x&7JaTOaQ-dGLwx zpIZ&CZ`A&MNO@oJqVsl7KQo{_v8->nh1}QWPW^o@1gsheWtc ziCm82V3!e!*Cb}Bi-d@B1t@a+sc<pN)>zLpf+Dk^9qDxwD{ zBP^;TL@*K+-zp{jwVdQPiZZ{-OB|IGJFXypT8U(0Szu4!Gi!lA*d{{GY%y4;lwQ>v~&WQWkD&XJhYR7oQeW+w_b!_a2N#BU9C#z0a=S zER9VLcJy~T>0;sN=i(OR=^EhS>gN#>7g2uY?CT!r{WC%ZEo$Zs5@xVkGj?Y`)S4N* zM}OB~Fo?l_64*;l;u8@JCfmRY=SO8V%5b{xk@%A#%xB6cdu<}&hTa>}Q*^zF2bEHw4a)b)<5XdP2fG*eM=&{TwMx{tm} z+;+XZ{o6CX+Lo|;WAvvRqIPeM*}FaJ>(9dX?+)GfS>Wfpe2_4+-DTT0$1R)j1e4)BJs({JZm{*2_GEmBd3bP@{ghnrcGX_gA zLDM{}jtLS>SiLkym05){9NndWJ-z@RV(`)OcWAGNAO?#}SmGvMNGc(e0iXe1K^hFo zG0j3?95ah^%;l^(;Fy03#5Y*1piC9gX%Na_!K_T1smg+2RU(>!n6Au(U{z*Jm8Ub# zfhxnM8G3ONy(kfuKr@V@BtRK@VFJAfk9a^C%9$8yehf7)nvxp@C8C}NkEzSfU#IVNHb9r!$Ft;sM&n?X0L z0pJ*C^L{7u0nlR{kH2?34k*(LG_wk2x~&erG5@jc*mtc*4z&FCb@Q)Zz5Ma>hVOR2 zIIyest4{!BK$v;7YvbMRMmIO<+%VC(zG3aP^;(yWG%lcOCgn1yX3|mwVJ2HuE(@PA zsVtqKEFGgF9jQnPRuB)sgc)a`8Iq6{iEvVqU zn~B9D6?KR$Uq5DiGwnPbR!`^nRC13ukP2n_?2mamB231T4j zMe%GA2W8l-fCC3dnSe(-?2P4KFpmrC<=;Nhs`@4z0`N}(7eXI|bBE}yWe~wM8{8cX zB!N^Jyw-_>O0XxK1mii3>ac%6&TXvn*(@7wuoaw35XWFT5JDO39~J=(_A#+f!8x2G z7onYT-RPh2=zkt%UQbQ+vZmglhW$`rjGV1dblpgUdYt**_hW4ru3Zg_iS`HxbM=jI z@eQ%}@wD}FxAk$b53q3vaJ2LEPs}NJ&~ST*(a2irp)a*vy`L5m?`h}e?CR@TcE0rO zhaNh(NtT|`7oW10s##0VkVMg0pMNIR+9lM&AuKd0{*Rg}=F$)utg;L5+PYum7gbu@ zdDuAkq-GS?Hojmj4X_pmZa%#bmga{p?Uv-?n`!G7VC&}X;OXt);cn>wDC1Fnsido~ zb#`fDW^s%G##`jZg{mUd1qbUHgK}qhdGqAl^NEF;_JMoJS=pX}fzDq35pii(|AdbK zr9(Y;sw<tG|2|>?WAC5Bmrj`b$7T`|0W*0jfnl2_6hM5OAoCImd0XBT6`T!satW|=@Qq4It7&OrEK(Q?ulwjvuKrmO5g+E{}Kg)eI)oS7y2nxBd3DUwN3}8T;FI7eg6$1z~3y0efX7 z3mG|cIYk>ST?btw%QXhz|2?6ic~n;Jn7o3ef|Q+#jF+xz>~_PfecMyN0F>Dhw|i^c zm%C!W_%vwOR_`4f-L|ZE*kEL1q<7j--^#$i%Fw_PY`;c^uA4V`ZQJUxX@lo_Z4aZh zK^wK>KUtUg#g?K2+aS(;vFXy6Fi3LGW3%rY?T^0pvg{6acpv3HnCyr2nC#H;-0<=J{pYe$fm8_6#QI_WO^j3>#&x zpMm10e+%Z-9Qq}ghk%XR20aGSNeE&%k_?n7;nac?%<}R|*6d{zz$-|4xs(k`3?!0} zNOLJ0i8NR97Ov)@w~$DaJ$)gQ1xY20W&mPPoKFW;hQl#Pj{%OEJ)boLKvR*y0-dHL zg?Tn*ssshD&@hS;IRRJ$aFakQiU&z%5&f>nW^bL3zja15^VY%it;5kCyCa>}zqMQZ+-mki%h7LI4(*2kZRXX_ zUp9Qd2eg@IUv7K4cgy45o9^vg|HoF{+go&Q0nlvF2Aa8Kpi!j@{$G{SwaUd>if1$x zkZDFuE=^S?Sw$L|W|T+~3KAi*V*b(uPibLyC}x%vIW0jrB}qIkMLI^3G=(AX62iwN z1Z+uAZ6p$qWM9rL8Yo+9q1AZ{wmyIWXnmmuMg z7{9BENVuMKraE_;GMBHckeR6P&%As;NGbj-r*@nuZZ8aC57%)?-Xr2XrzH6tNc?u< z+#X`w{!#*7BtAzXmxCA=q_<8Gd5?+l942xdli;=&=kk&hh*l${0m?{l`781Gsqi=} z3LKXv91`a@lNLE8M|6-ChQUms&_hp?A5@vtb&z0EvXv1!Db8afE9kE!nrg3$dL4#5^;~D@OGk*kvK_Dgs3YZWGE!ESxoFJDe-UQ0cA+0@{-3D zBrO#rtQ1KO8e%Tm1TQ@zG&R0)Waneo?`lI1HK(0^{Wx)`{p`r_jY0auVftgrWF2*~ z9w3GZ!VI->l=Wg5dT&DhnvDx9HWAF&%XZYRJZ`bP4|@EwB^iV=IL9nYGKgjXWhRkA z1AMdcut$er9D~Ui_))L}tiVa&EjG%qi3+{Mo^b$tE@uVYVThgwP?Jd-#WykI#vr3=TA_ zZk~PMM?3$^Y5!MH=G{M`Ob4LMyOEZX%1ZyxP*s$i#@$5C<#I z)3zRd{!s~4f0T9(KV&R+j?ccV`ZFOk!OPXx%P%ab>Pl7rNIz?_7y7u6XC6>zA51Mi zo1S~~?p^cQk{tKIWCyRr$h4GO)#s^8A4XYkX!E@ty{#qX*IYb;T|GmS(~BQeLkH`Q zQRbVg56UAl0-XbVoxC%ALW?4ka^o{{lXLP@a&qF*(y|INZ$G%v-47Y1fe9v5_ke8{ zmG&&74Bk%V(;9uemDQjct7-*KGQY5_>Q$SG&wWaG0>bgycsJ4db&TqqFsGL$`BEQhYG2el#x9tuVlMc z-%)QJpp3bO?r~)eQ#pC4(>|>v>!z(5xz#A|z^BDOeUb6i&iKzZMef`f_UYE(9VYIZ zjGQ;X1;kKrhjk2q$$FlqugrZ@&- z@@y;wwG8#gTZxZQ=1Tg^wagi;c4_7YD#nJq5@z_##(*Z5ZIt0iGON5YXc*JKaSUu{ zT*;kv3C^ zXlCkcGV^Q_LYcyNkYvcYQRJM+$(%?GWuj@h(X?!+%8sOFL{QShAV8a;XGGA`!)dAD zo55yG!XzfFyUa+K?Ny(XF%j%O0YKyLH0)(N;BNK7)#8K8$$poUz%fH^ z79U*AdtFwejOkmuBV9I!IxK&Aeex%iV>+}S3YuOY`KI-^{otE<@y)L4ecPXYz7=TZ z!LAK=w(0-5Rqys@y_+UFzZVMO7w2MH);q zkYfs!6$=2AkrG;sGAE>^5Y0#tO-UlhB?O_u$VEXYT!WCXh5#rN17+Ay)1)qxp)Q=R z%%3aAl`hE@t48usl`<#teB62FH8p96+6Cy+%3q0A8?_i;%cJ5=<<9|;YJ z)kPwpHd~3?7ekq2(jvbR`Hn-+Um1eEjF6uc7YH*r$|M^~`|BtG%2-J7*vKK2Ni!7A z-atIJQ~LL>RIYueTX4WQe1oj1n&g)<#GMiZ=@I3h7s}!r&hjBx%i$_Op4ly2$FrHA+ z$O42iY*l8e4p3%{iFtUJRhbo-fCoILjvz4rp7F?^fusn8G5{Z#B*PI`07?+eU^%8S zkY_NOfsH8tg6+I=2pqV46o+HjFtMua2%`%2ML8U^l4C*y!xmA{K5YJA0}VnDgkP(J z^AXUeU}BY1%O3$&IGPH)g&(zAFTsflhZr_3{pa~P*8&PzUAg_yIyyPJ6LzfT9wgYH zSULP75<+PvPBqi&mH%m!L7i|xl3{@=gIf1Of{6ybRUqc!x!%(^)>3}?l22%eox7iV zP;7Gk*&9#p-F$lg{N2jLk|?K8M?0@@N8jk2imVqsx5$fcM(19hzmpV_=hAGfJJ+1i#*)D#`cAiNQX{onrDkm5FhNfD`a~-Wc zuL?`AIJyP7dPO9smppp@Y;vZXJkxpQL0MRaucN<@vu|#A;-wq+A3SMz`t;?~>ZT{p zUOujCebn*3VU*UzoQI;SF4_!am!OdhR81rQ5DU$d0!s=^$p&xAOUgp+?HSaKNnz*AWx?tkB1F^4ba|E=ldzsontgWnV!1( z%J}@SlObLfAwH))qEpY@tZM}`a_cy~es-b0z2{tUdAzGfoSj2hNPOnQhUU?k(f6#{ zCvU34Q$n46JY0jkL(^j)wmfg@?W%5VD!+LxFfQ84&BfWz*;&tJn!$EMc~c}g;wZz!Cu3vdBteydagrFy z4AY*0M~{r5OjlFoAMp;M-*2$f5qCx?!)L1`XCW(Vsif?nYv^pS-g1q;xw`HNRV{NB zHS0CnZhC8iO$?LwZU>Gz`}4lkFLy@mGzr?W-pgd2lYzFij)t|KhMkeNqp^|m#&wPx zH#ltEh)`zh7S|oyolQ2nY~0|v*(6}=x_~X~!nPX3eX=ffk4fH_CTG6dT>16(o8NtQ z@3*gOPW{^KY}V;#`!3wIKh}F7C15x`cqBV?6eOAa$gzT`@gjhjSjyRWN=ZDmG=Wx{ zNIS;prjHME+LKqkp>1fgW6+fB ze^q4wWvCZYXcwWIFrZ8Z^zcPVB|I>f%->K3#26qOHpgU4U(A@UN}s-vF#~Zi6A#$J zssdg~gJ5sGkOBL^MpjiCwoFGy!OMy?CM1%|QW#~)jB_ch^0aBtW-8KQg;|yYD8njA znJ!D60m>;&VM3Y-@=AsA%%VgVLK#qH;;DtPlrzy2d65%25fJ2@2uf}wEia0i9YM(q zr(^)fgiJbx}NB9Io{)RtjEc;$I-OM;b@oL;m*?s-&p?AcKrL6 z!w1?-zil`DuI=!FreF4fX{P2Y%>VoO)<>Uh{A-8d-5myhZq>iNS@*_9?Q7uwHBhgF z!ff#WYO9>pRsovH(NF+kCRJ4?QAGw&CQ@D^OqLiVE#fOF=q=9gC@x|vPOy>?J0UH7 zTuSPgl=xAS=rIW)OEGSH8G&F`;aE*VoVrMiELWTYcbckDmO24?{$|MXCQEQ9s)$CY z5}hRYJ{J<+D=55Qkl$2V%tv22Tbn;agF9SR$VFP%Oo;afajAo{O6DXn$QHTCahuBs z9g*NQ7w5G_D8ub8#^Xy8aK}+boacln&j~R;Q!(Dd2xWLdwsDu?i%=0s(;!4jbNMN8 z`>66bDG45vCj2VO3w9ZE84)`fAs-S~fGk(MreM0BXrjK9pSC=p%qdA8TR<62KpCMd zW6^Wl#jkxXckLUk!UOA~H_4l8Ngt3C`%IExEJ-pDB^n3`8-Xe#O8inn^jkTpLyFQT zl%>s;r9qN`9Fwh@sPkG;9|OsR4bUQQ<6XOb)q%gfOg`0eKW3!8cw+SCDC6-s<0*{- zeST4D3A{3}KFq8eWY&(*ku-wTkyV}&PPsLz;=v#P@R&y;1l#Gt=9uL}meWRfr#mFK za1<9@bU^^b3HHtiCRU8D*o9Ue^YFY!yu#rpTs46kzzGK5j@GeYZ|A&(cb9Qt)d~(h z=$!1ctx7QAr$xMir*bgnSh>nFEg@Bgqt>jJNzg_t!?lV9S$#KP-K53<5j!koN< zU3@|cO3wGZA7;+?GneY9i_aKKPp6ljGiSQrbhKq;W!SjITe&2Lr=|W;2dYfp@O1OU z{OhLf`n=+cw$A>JZeaXoukaY5$3yb z);r2vKeVW!qJ}QrQ2z{WWd<01P_hgvvsxflCSzmkFt3rkSOX}NlvCj97Ywf7O*oX1dt>o&XgpF|*`JecLdVMV_XQ&R35uJfqG+K@b`#MV{(_E<3cv zq2Z~)y3V@bxnk$=&ptt2Oza;l9@H?%q*h zd6&=j(TB+ktbY2$X5+-<$=lFuYmH{YYobV6X=^O}KX*z7V5J%!t0R^@7x z!2t!nj>~Y3zO@*&ASDLpYs~+J?X$YC4A_1V%0S>=849x=P-c_~1qjvT!F!#rDsIKv zg?wjhuOs0mFYF>GXs;q~r66acrsisB>}IsV3R7iHYUo(6)p0X63E65Ay>oNY-tAdm z@66b@BYNkipv~*NjP>mF)*e@uKcXmgOhwj0OT}7G+tyImN?*@HSNEijj=7%hDFc1; zHCm_Eu5mQd_cqb@+hP>D)ga~*qvYKiaz5Xf2bI|Scl`0=-iJrNt+PJd=60$p(D7ZQ zM}M48e`?@hdhl>|*l=FNXnxdaLG*YLC@}yriL|mL`Z@F-QYC8wR?|VDaDaWi{CV%228RWpH68W9kabd*aku z!^)M+k5T3_WRXCR!8qmu5J}q1h4k5r8FQC1=PzZ#5?->-r!p&&8Rbd%yRd|SjS%=c z>;o}f3DlB0buNW@E(MlAHn3%R<5Wo!t2B8AP^K&uRuH=sfz>yTS(v~oPGl6v)4(fT z7&BQAHIWwq6=4%OC?<0wD0z{zoCs=GI5jhjngJ*iO3w^qAesSfCXAXELQV`Giwzo$ z4j75>gBXqQ9gXlA4fh5~W+d2sG|+W4z!^|x%-4Pda*h`C002M$Nklq3+@pB?m`k>L-AD+0>MfYF!>p^UPisSM#~QJy0b{AL)+c$2vNWVm8A z1XFbg@p>emHBiAMYz2C%ybz#Fs)1nUdcwJF#NYQy|Grv}sfCR!9N~w(+iERjm7s#L0@74)lEC?ijaI8tIcPf`93ojp zC0JqK`6{@9vtjxThDSIgaX5+d7KSOyo)`{Dt%46s>0#gMN-_(6vEu-Qt1LLR{NwWf zfHGLqKg3=bQNhCko)q{q1rrPYe}po<7|OsC8c?QzHeUllg+_CWU47%tmDjI%hXz}@ zdU=GzmRz|pJWHl5utpXJo^=0_a5mP#C(*(wJR&pZPGjZhLOWxr=jOA5n9LYAzX*5# z$fB|fJ$=KBxetsb=t_rBhP70~obCdY$;{5Oc8#@iNr=cuyIX&OzVu;iu61&uy``t| zOvz;jw;+3$kf`|l`_CTH7rV#i+s^%w;}z>*;pXVzm6KlhuzRSRJo|oPx|clL%Um2_ zEq#Eta^uXFacE8eop#a80W^JyjWW|P=V&F!b2SqS&pHPmrsWrV1&2F(hejsmfy^^H z*F3rS=FjIPp{e#(9)}z~L*vp4pEm)rEYcSl6HCv@OEs*;mW73`IcTYey5aRw=K*Dg z8oC<-5~6H;J#76vA*{Syu06c=ZUWM3!{GjbJ?9tSHa1;KE{?Sb54MU5cL>N1OTK#Z z(G%d93D&Eb#fI0t<%Jc=POd3VuF0{P<+W|y6N}^y>a(KT@h%~rr`@xp}GMukCo3(LZ zM_F_6ZdqM)GD;I9yvC-P#LUJWytsEp@i7>oU?;zo=upp28g zl(z~ITI4yaE7>S3I%sKm8gGKI)-gJ@#^AKJfuq4XzwMty@7fW$!z5&rVaP`9;0BEW& z7Fz1g2AZD6IzgLsqP80(eP*1!cSFt>8v$kh{OOA)$9`zEKi1)8{WjRSFUqq&&UYX! zXgD);BsXFtKXUX;)M#PMcyZihNdm?(DU9+ICaUO3MiorwI05Sw3Dn9&Hqd}+2CHCV zLSGrM{bIfHpj{q2pg%82FPQoQLnZNmIR zmrqxfO9q+&^RJR*l!AD;tZ1;LP=GkUn*_m8oMljllN6v$8(PFE66k>O90;*FQ(Nl@eoRp9?ljJQuwU^gG{*J4CV4W+cT zg30PUG3o*V3WByGJU@sK4w9tJNCayM7^}o%p&$w<16d?%6g-ex0+ex+;IqR}##}-G zQ0A~G@2?^VWuU{2yR1OCDgj3sA4M)7HC|^GAwZd*2;4`+`4Gy;!h|U?t*Q9A!=`i8yMBfGQKICt9#)%~i8c9(sRQpJ3i} zH)6b_ggXAm1oO!x^BJASMj1L(Fp*yj(h?PtAO!L4c3Jw!sD8soZMa!-HV?gs_664}4_&uUwqombb5<4C;N48ho(-0RDTL>3?38X=Adw055=JU|0bI zB$E{nLZ}^BvFLT~9q9=N6b}>zNjv zlX9!RvTv$seDU>#dzpc;A=Xa8PM(qFRk!>4#~JhQX^S~Lh zSnab@Z|0^tAgJ>-lS_{}2JXgZ=GeJ=S=hPzhbLdT^T#NRL0D{i__8$ajH6@V5%++| zgp7i^mUimgEO~ZfWbw|#5|mR_Q|N%bEg;E|r@BU%eZ3R!o;KIGg@;&pxY_vmI0X4y z`*@b$Jpa1CeT4CDl>TOt)dj=A8=5Y}6~r9$_x;U3;G}1UV_*qLTsqNhpvv*%~eqc?!8he;h73>imY#$I3lAd&>=IZ;I_x&?NgL9*=KD1_> z%dzsbv2Z&PlN0*r<&DX?HV7(Aqnv{o+RMe*P{Gu)x`GM5b4Y-JuQjGd;@{xquk1gf z3_cl~N`FO1T^|~llMPcK0#o6qw{DVAH$;0j#;QdqGkCAPq3l|ORnRx<0A--B41}we zs-3D58)Y_Zveh%T)?II_x6WyuF`!Jy){TDab=`H<+_aTF^;DtFjFXOn`&qrR#W>`S@|bLg@X$6N0pV#)KzS>6diTdeAjD6Zq);n z$=Yk2v1dIbnC|@i<+Bq%H9MJi``Wz=b^Q?SHJIQ(lodLbA2oI+8uXYk;FzM=2}muK zCQ{EO(?E|ohiC>8Oq6qRt0JCKj)Dy|RY~*<$q=-Q5Gl*^v2muEx|WT21q*~PS90*6 zU(QBxC1?5F|6Bo-0f@mkCXE4Uri(CtI~@;T8XRT79|JLmaSTEk;24lzu)y^doMu3h z!BrVtgTe6yUxG*jv6^OPs?z7GGH0tYahd^qnFW-o%$S87)45bu8KjoLD3d&O7C{We zR8bg{aY8bnK}70jxu1EY58T} z%O5^({B}3A0Diu2+q2I%J>6^a1b}Ae`g_|A?`+Y(1!<=BP@AoF(Ll38PqR#0wLnWb zPXmM*`7|~86ct(Im{FFBkr$7Y5)Ol**^;6zl0UXCY4o##V# zxs0fToCt6Xs4~%Ne2H3u(QC!LwPc(Wi6F^1DT@NiBlU8Zuo*v-$SuYavpdcY`i zr<(gljbqwM-zbqbkx2T&;Q2+WjERWwZV`d6B#8&*B+XQ0aFjVEFKMYHY_BEkZ6F!C zRyb?BO4VVLzg)knjXv6VJ7m1Qm^yZQobh;q@dVn*fJ=sfim_kPCL4zt^@EHT!?ZfK z%>^^NaI}`c(+r0yfE!j&21_BWC@vUb;9!As4BI+Gd5+GBXRrQ-9hlh`&dfm>4#%Km z4SKF~F8a?Xg9FX-McHTOpbY17*s<6pu-p)ywLwBS=66AWg4KuPRJ5{0muB+{{@WY& zT;Zox@8ZAJSKT@LcRv1`|Dz?FW3W#Lr$t9$&j?JyS<&zD?YMZ)R{AlH!T#>WEj264 z{}q(!{2R(FKAL(VOn%~v|%GkLFxcG#}q~zbLzDHkrLtbpT z@Gv(p-RZQilf6$)=GjLbBhM*|^>CBqh1#*1YOudh7wcdm0d2mPwFHA0KSr5Z)*B3E zI_IW3Cug5cEI#NOyqlU=;N~9$Boh{wb^ZR`v4sZ8QuDpWqL@58hk!$XGO=m-HBGG( ztf|qdk>Q0uC`vU~& zwJg@a#3fA|BSWzLI+$#<*Zbp_iecl_gTj z;vgo=VzG#uJcoh}G$7AZB~h!AC|FPt)1*L;8H6%0BKul4n_aHtu<_+`HVxuZ77C1J z0BHUtvY~tlJij2x0LRcTq(b08gQE(noJ3*fdx2igvP-Td>HFTY1!fa|{AQL}GL&6k_2_d*xo4G(s%|7)Ak zADi@UYyfR$?Pa4i=k>M9b=8a3s^)8gFr$#6p#U_Kq=wOqqGYrTA(ABQBPHerE*2?C z3mFBVnPbv2N2CB{#LUI`P7t_VNZg^&p-xjQMOiRGjyFY)FHMd=RZbv5Ry0{bJenww zD9M$g#%C%kiJ=T(CsFQadF5msA|OS|8lePL0jRY;D9mq45<4j^Y#{~x@c?Bcjz|a| zBk))fxKE4nxQX+6kp!GUp&@YDiSxk7Ye1QU!aP3-aGQ$r0m`5eOKPI2>V$A9E>8t6 zFV&AwhUg$q0FLpOg^DUZK&YrSL{Md%m5BBV!cHm(WfFB@ERGju$DmD zX8H18*8k!7d3E@q7uN$v+X~4eH%Dm?$7zpg)l5J$%hnly3_LKe3@+6msRMv!m1waV9q`kx zW+r@p*arn>MqaJ=!2ZkRgr6UA13s((lQdSN4D0}B#y|M-63zf8M8C8#+JM91D(JMU z{5^(5=i>J=Jt+QZEwJhbRa`QXfJ^5R?SVn@^4>uIH-C%q$1dPl~cNdsYEeC91AdTu-@ z4owcT^$l1Gv>m{4-PdkDs8 zznYqdY0@y~vVj2>mbsTmjG22mGuJdd+cXXR_#u$t7yY}f_9angp3~=QdIs(%7N)s` zdfIpg2PYO?yZ;ChPmIOJ2hXeG(n6fPZEgMhqH}VdynZ@7*E>4fNreH8^Ur4HT4rXt zrl#Ac78{vM^_2Opj-l68cd8si0_}q!f~@`ht^It{N;8|^w~!Zlp=Tfy#woCR>Kkt- z6{Q^u2|5u1D3fRxkeX6h(%23ew{aMl(AZU;cP`PvJ;uf*GAy~|NpsiO!bJPz!}JRQ zK2f1|9)W=|(KjAlo|qXLn};b*uU`*7&#NkM3U;;e_KeQT{p-c!iG{ZDg*M7UHFe+m}&8p;u2#KAs$VG}d>gwWj!*&&lvT>s+*D-PNSr zRHYoy_-ie@HEUgU4czn$Jl5)YuQl+|(f8HW@z>Y$)z$JhSQ7#b?zXLq+`c~4#4yNM zKWM#SsPP5}-%T6cO^lt43~coDAnex}JDY5A+q&I-+YYyFJ6ugRIj=W%HZpY5)o{|& z@LjJJzF8-Bhe7fudg;5@l^xh|>(JNFP9JLVw(bsbc^BjTAt_)uBXqPNhI}?*qBLO|Vi38)Io_<7lM` z^s+?yxg>fym{F3Mm8rPFmI*FetcD2s>OxapG$o)i4VJWuG+G5r3_#Ny=~Y<_7%6Zu zhj}p<#f2Qkg&g{YY}$oP`o%2fC3q{FaUqM2_QZxI!7xaeqjVvA`XUrm=geGy$eyW! zF-fS18mps*B5KHvA;kp(%rQ(nDiWtE5?Pf=Q{@R$<%!rbfmN|8%Hvt(@vzTSMFJC| z93mceW0u7;O5tNhQ;H%PC2`ENadc#eiH4w~h=HILL{sylsAoc{XF^~}gO&VHYHlc+ z(3urX&Ip=F4fE{U(Kw@qmspabe`R(8)OH`5Q`wCA9sG z41k8eLxFB10pOK!8S!@>@pBmRwj0EpzhM3yawHL zi}U;n#uq6;GbtfU2|)`90W%rVqmsf$B>0Ys1FUe{Nb)$z2slXzI1u^lM7b>`gv`YR ze--9EAk6(MiO*V=&q+xrM1_#1BpgHHa#!GURTXkp6Sb5l92Dj<72&lc2|3CLdPs5m z$nwI7gP1kMa4nddCJJp7Jd}hyRYU?bL}GPC5)H*lKb5|`PyW(=wX*#>`MXuax2d@p z$(w0Nd?hcrOI*lAkl$EPXtN066H$@flHxzeNgh#_KA|dOsVrutDsHYUd{Rx=Nn0Xv ztyua7#dF^n+_C!XMeuLcRqp*S(nmgA9HiVGr9Gfc*3rli^)xbcmw7qNdNnltY7B2T zhl?DmEHCJ}&e1jyOnel$CkC=e%MM>`XEqIBumW!_S2MAJ29sx2xaXsDV#y#JK9B?g zfpZ4uD(w5gryL+H2L(nmSpEw?1V3u|%(#^Y*M6qZ^aBVs1L4Qw9b!0Y6HZ<5Dd5t8 zFF3Ejl8s7u)4yf#TEP*7H5{5@-xz*-tC#3kJv!u{gANY`>;Zv2BhZrq>Gzy1a4fnX zEZ9#C>^y)n|G*{qlX&?p)*Ln+aK4p2TL+ufy!`I}qZJq!iRF?SnX{ePIKxi7Vwth< zlCjkMe!QXl+HJSM@KbKi?hygS*NTQ%&*1UQT4;XLbv5T~kXcZmslQ)re#+Aqe^OZe zGfP9a@0|-t2{{$$W*^~Gc=KHAXcuk%-NJn9!d%N7tA1g+fictG)b|{WBd3G?Eduhuex7JhCPejZ`D8TT6RFkndJT=R`Px58r*tUP=y!=t0h z&-V`2t~T?|Ot;Rmqh%Ji#UR6P6V5lZ`9}DR)P;J=;tL4Ibp6cq%ijJ6(M6H=;kKuI zg8dT8FWq}enRz_BSpVe7?WBZk7Z1OaJ}%LPSr5Bz_b=6sEjG-|yqKMNF*DshJ@uBs zfYFt=Xp1*!OHJ*Aug+Y|b_xx)4Ggpm3bqaiw(<`M&5W$=u0?FI1YVzN8ngdJ!{emF z>=VHO7GbbMppAcURC?yU$B(8L=Bab9n|iLCDNlq>IW|zZm0D2U(mAm()=jxrdOIQ@ zJk-f8I4CUg!qs95bAUWwOIdu}Id~UP#v#D@lxtXI+LZv^cXuldwjTAE$HGDh3v4k^VugXbi~fw)+cezW!0&m|#((gB z@IgD&@;LYUIQIuRkC?PujLutqUv9KMEWhk&m%7j*XzJv^sX9T%x?VFZJS;7J%q;?^ zn)n({iO|uH)iH?G)r;2A3fEK%(bI@D(TkgD5;t!e&`jJ6vv>=$#Oc$Lr%sDAnCfq8 z>TYIs*u>Ojipe2EV<=0x8k@UMxAd}{>pN#bz^r+Jv*rX^TKZ2j@-v$fYHko=p%*nn zFVRvLYD`s|7GAR1PaqrY76+7 z25JiMRn@SknpX|`lKzA;04|)WWOh{|yDEWGmB6b?`hRV=GImR%Fasf|afiDOm9Fv_F)OC$P@g)vH_nWZs|W1wjI(I`eq6a$u39gSfg zjb#GX6os-1gV;sE>_RvRVdYbqxuJ~gkp8TY{>)%{CKZw~^b82cME0YV1(EdBC`MW| zBQ2Jh7RN}5r6zdd66+Qs^n^S)OH_q5vYYCW){ z#d_ZuoHLNw( zKW3y;WT=&^uaRM(mZqnYprahCtrV+CNr162%HrV)QlWBE0TdYzIr$@GiakZanxX(S zvqPS;nIN-^Fv(s~%3F&PKUpRU&H0^}K^96=oDiih8m1&1K^BQ6OC%}~;uYk4L`Bw% z3C$)5tx=iisZXR%SIsb1&rzpPWkt3Sg*KC6NQ~G)87Vty7;Ps3{oXs}#J0!@Zzc)Z zP=pQ6UrL4%Jb0$qR7ZbCTl$s?YGoMUeuT0sl zF1K5Qd;nHg>d5X>m)xN$VXq~ds7J{*Q?Fh=<%Z4trl4)NOAoc(P5kz;y1oB$7waa2 z{+QlZPw#om=z(d!%^kew-v^#|bDRG}52Gj`KpB*q8P!v0pF2u8*J!!y|a|-?0chj?ib6vHtx85Cs1D zIwrUg2<`==CoJ>?f!N%q9G*a2@MZvIm`~`;1_s3pxQOX1x9ifd1lD z|Ms*$p$s23Gr#2xJ^^t?QKsq~piJ~ZA1}YS@bU}g9sGy%AI+SRXRqF#%PU1FvnMDh zzAz1;4EHPl$M@fFREDL8*@bu>it;c1t>Sqn>hu{Nd@(%ue29yo%;4+iU+UA#68{^N z`G`>F`IrXyFGlrzfd3p1`SJ$9#6km+SqNni%|J~G^glzH;8B#h(*E-?hB6I<0}T+n z;j%xlSg__Ap$z;gUbZ*p)nvIqX(=?sH9W$Z8sQKW9G(^R;LSrwD>HuHW&e1@;(lvr zyqi*zYeNk_7!w7!a|q%uscGkazr^6N`v+T|e>``zHqF&1(8W6-I=$rnbA&Q&tlQ@w zWQE7ac=&_|goNc4r_$(OdWY+oKkmQzdOf2o%Q?{Hkbi7S;iWrIUjfR{5X#(S{Jg*% zxz7KEGM@ltn6N1WQZgVYZ6a@P6qhk?kIVlP%?MBiXa)gI6Px**#dyx|YaXUGB9s|; z_+jYbH~s_YJAk|%k8z*VcbC_9pVfJ{^-;xTFZ;Yz^HUeiEL^|5a>vHJT{|;(?8w+) zmA-U&{G55I(=1Yq&EgFVBec{5mE?WZ6@&FOBFqecW1?o6L|d3dPcw-!o*Jb;g*sX9 zh`xc7p@E};!9l$#NcvM94NaVlrn#7!yPD1LwwUE_Iop563?EZNuc>;0raIJV+7aeD z2{Uy7WokArzGA!SfxFGiu*2`;d_ScIf6b2QER5|gPwuTu?WqQi$>=?v*^SXmcTHL^ zhBAF8vH)=aWfW)*OUOzx0Jw7@jjp8e7`0He2VpbAMN!n%JY4U z_s4kuPl`l_=TwYfkrAO?11!*1$RMf_96oLWGcd_WnT zW&mXn&D7*0psC5j3rS<)7+wuHF)3iNaH6GlLu;&2Wpc90-&jm=T*jXD`VNC z9K)@RN2-ZuSH&_bq8a6pKr_HGxNw@mIA#oGVwr$1g+Z*sU{*m0Qa+WH2Q))v=1>`+ ztZ*DAGxTKOn5e#l$o_a(!xT=BkD$ke_r-+5CZ_Iiw22AzV^i_z zGVa}hZe9K^NC7T1bPjL>YbK9$1sv({bNlLZsLjjiy@$hlFNY7_2j6?xy>Yd9eQ4in z$33kMyIO5Al-aehY0H`?R?wKeym9T)M=KUQTsjwN$=rJj=iHoSer2ZF<(Z}zEKE*M zGdf{vSZ1tOJViU-P%Fz&BST*;Nmn&qM>$?gK0!k!R#h@wNj5}Y#$S%$F0XKyB4;nB zu#cj!ha$IKp0bf3vqKiToh3Xph;dqgG7^dM6VpgSDe}SyWt1lX%EXYw6Xaz9W&A`% ztR^9pS*iuB*L|cu?F&yIwas2e`QhNm>@OL5KV+KX%;HQ3zaHYDA%mjtXZd9 zx?DYVo+{OpbVNsTw>n{)lH_7p$r+Qxr;CbB6BV6HBwDG+@6eFnp-Qk;5&@L4(Ujhy zB4Mo}5v3`c1t_z^=-S@75529f7TC4jNdT1j+WUJK^A85S9#E#g=W#!+p})83JNIcj z?`apO32xE?nnA7%GGK6y8KskdLYeW^B7`ZJuY+?20+CUB1`!X=F{A4t;jaG=D1&nY z{sg!P4orxOMgoU+|I;R@o6S4gQfvSp@xbn1KW*$mhVHi6v(6pITtd zjLSX?I0i#HxTe5>!EKm-IgSqqk4G!)97h?PVBm<83WhA`U%438`~%7~1H@n)gIxUo zYm`Ag&FHWYIRABX8oNvV&rUc)P*G~+j5P5E-|+b#`2%nGgHJ%*VW^C}_|nr<0Vop| z>*OC0kPugXvGzOfN#Bp>u&4UPn~OQ6kv5?ry8{E`3R3GHU+L$5<&Av1biIO_Mzsz0 zI27quc)tAU_g63&W^mxy5NI6AWRxfUHz@PI^B%-jI71D*LHOiN_`n$0XT;|}!vy_G z_>N4-wLmu$^fbYCN#GA84!>!D-`LiE^KV?4E2+u(9^N6g{@!sV1-IYcX#eq)_5)Dq z`5-_N_ce$0j>&w<7`n#%akYQ=MRQwYMp=eaP=E_H)IB=JEi%SFATT5~>h8;jUHn(f zpRi){37hx*NyFWw!km2}q0aH~PN7ui5Nbe7+_9?a?>)V}{8!K0E*(9Q;p*@2;^!Zk zR#^A!bvMwDz)g+ zotu3lFG2Jlb&Q|aS;KdEycQ6O2jK-KjAH;|kj4=(viCs1d}zf11Z&_A_bCTRoYTx^ zH(`QG({l#<8IRsP($h51+wgVZ@u#8sPTnIZEiu>+IK6kdy?6Qj4;USHTI(zCMR;6t z+H>u&ZBvB*hxE7)nVE0XGG4~UHw1;;bUSj{X8*}en~N4LOf)tMQd99(k`K^S4V$7D zX<-sI!!+2!#Mjiw-ALbAPsd@hrp;unecIaAI=a@n2K)78DZb^qPj~GXqBnG z)oDG*l0hg#JDvf?3;<2fiOjxJ*?j;v)oCzbhFu&>%L?sG3;dek^C9B!t3apL0LNGU zPA|OeUwR#E^>%)G*sk7r-$TbekDRR=-0YuvI5vAaHF`KTdOAGyvug=*dQEkC8|L;Q z(&J0KUw0ano*Ts~h~*T;bBYqji(8z;D@o>+r0|cXagL?+mZ$Yrr1w{5(yOvSjOuJ= z4OFS}xUjkUQ~@lt#*~9CyUv9**C5UbP!1Hc2FEpKqp>l^p;IXp)r@MAKwKy!)g<$4 zlE9L|#jggRCZ1mz%d7fVl;I(oi36GeZ-!MF%_@s!mI?$k!vy_uWnx){RAxaiQho>{ zKZKbV3Mj+M3uEPlv-885*`p|v5j75FqHu4fKRL1|F`R~`7FDN#+CmN0Y zrG@*_!n{GfRBsyW$_|FfzehR)4gnm4a**s!ABYUx9(#dT}v-&r~L_KG>Tm(9Mp zc-ED9(=W|3yI^U0&cfu>w5i8Ur<6}MC^6J6(AUnL0)l>ywWy#r7dy_8|CEI$jWY#5!*wNa8V^hYRE*WOUEmSBol?= z$-cTmJOlP7E<2w9Vb#-q$3lC&d9db^Ampv*ebg#8K=oK+_Q%H*p_ zWrHQ7AaY1W{IHq;Wo!Ut$f6#KVxICM0qW9#GT_QYf-9pWf{Ymz5ntsA0cxT#Q-~Qe z)e7e;mM>GTS)+A)gMP&-t@Qb7R5S8n9f`f_vb$8J)+i9?$;z0EikeOko=+rfRF&VR zM%k<&wSz3=pebdmMcAz-y-!J;stTL8)vJ~p{l0V7Eti$QrR{!qE$Z8wif`Q)Y5mvf z{SW*59`w;3_0k^q^*;H=Zfxf?c40*vJRXaI$o~b(AXvd><>BOkUOrmo0ZM>#{JVnZ zAkYz5GI%WpCzZc+Wk$b+tQ~kcU=XrQupLj(Z`IX{gmqn^6b?KA-WrFDF`B`d2EK&% zf^Wfxfoq~qg3%R@K?0N+eFFX*oVv!I2CssPW1j~h-5CAg4D>HY`0hXGuTTcv4sZd= zjAs;#c)-F(g8KzZBa9=M{{hP2cOZPZF$OWeVmMGq`JaKyzdsEkI0$8in|J^*e}yvT zXMgt!i*xc13`mSGzj*u`_i@h%piE24yUTgyG1lWyrjPT5JN)h9^>S(|LK){szk;)+ z&EH!4`0ru=GtkT+=gBY+axKV}`7crCT^FFt6AWbQaq*5Jp-w>|9@OxR zyn=V1pr!oPi%-AfC<8PTky>!~>Fb{1p6^4CTDvc&7o__HhI;u2Mg#n02!7z`g~3e`39Cu zK@9C^Voz0SFK`SdKp7wy;24B5*f~7jQIXtL6y22`^fA`sHP!j4?}3LdJ8#==ymi3p zuI=WV)>gNzH{G?_c5~0BYdhCp-MRky?u|FCx7|6g>$dIgTL*Uiv486g+YPr5ZoccZ z?cSm74_tROc+CJ1Pz8){5cFB%mYGf-*j3i3b(j6ZB;f}SS#PH<&>p{>akR%b(!rhOD; zK6*KTKDgVyce8niq0B2lnf-t=o1X1hkD<)+`VC9&TP?i1Zr<%xb8fAe{l`+v>x*Vy zo;wXV=KKufGv-rInoX@WHY_#LD>l&1*PEQJtCgXxk*uYbprI0_t{9|22~Z_@Dv{mf zNzQU4J2{2@Bnos*ZzRcCktplQB>b5XBsoq{G#uBh+Q$6+{yWLa{{Q2z8Ng zwTY2(qS1s&F(k=YIZBA6#CDkp^NB($D8jDl;{Jw|L|ugpWdfBTvW+YRD6>mOlXN+MAP zvYD3Z1@jb2mnZ_toUk&eTBDu5Kn)5^hcrcZsz~lsmRzqaw^UAUu8i~y@ktBGqzx)^ zTa<|#$l_aMg>00?_G`-Q)sWqY7 zS6IBGAGFdWl>T<&GrOT1c^hwA-rvlxNU{zI#$B1a^;a;IX}@@_JTx^FN16OH$C}z( zdU@{<%78GG;S9ch@%1sFjMIOSm3iBBk2TW3LdHxZh>N@#=vw-PGLW9ZjF}c5Otc$- z$^EZE*pA899A5L^xH5HvKN{=muBIjxdU#W9{ruxfN^ZZo-TtG6_5*%7ub~Z!&wa;b zzh|>s*+1^Ef83(+p5K4@AUZ3~-rvV3J~lijConbL*5BVJHtf=an_uWJ**_atKLNJ7 zo;2J^%+KB%M0JdgcSOFM9!cQ^L^eD;mk(E9z}v$k6et&dwiy!{34!SueXlbdF%Vf-&-G7bXI5emBCt{!l85J zgJ;WsoICUL{CUuib7zN6on%*(wr8d`2KrpsyR&HN!dRmz;o90^y1Kyz`a$}7u6o)B zG}U&fDy~;ou+mW4p*?x8uHIgKgS`e*_8A!MGc?|3V6s<#>K;9#-MUkDY3l6Lg61au zLweBkq#rzeN{ppR(mWWEXIZ;-23c$$n_J|{adtecS2Bq3YC=+$;*iy%ugIDN*Oqs#w5cpeln29plg|UX#wO&0rnRWS`7ppUh;RK;pn$8Eo<||8zF*R2Jt1WRTO?H4sTo zVpSy|RmQU_;@K5(oQhb1%40d@G2HTKPDM1c5{U)Wf)oo7gM>H+p$xk$78lSAs}u<{ zW@4BnF^uA9PH_aM7-$B(87d<$l#v^Xs!O?4RxUDT0A;X2GJrCXbl8cV23Z+g2xy=g zyE`GcD?YF@HlQQMzbiJ778le5f|Hnlt_WDhkK8~M&V;}$!{T0*2q$p%aE7Ll2(vNOJrqMONnlR zRYwYvL8?+z4cS=5N$~{XNP=*f>cj|j(P;TefHF}8@fZq;Dh-RZMHY~RmXU;=RYbk@ z2=UsK3?)K1QFJ>+7*J-X%*6eYVm6XuI|-9^lEk->L^l$Jtz?Dv5{2wBl<_2ryGl+x zM3!+T%R)wHm5lIu*r6>q!9h_ZKuIi9VNwctqAO(rpbQk44y#D*6~|F#;t_cf54nlp z%7kjlMrad5G^9K!LS7UhZv`QDI8hLZ)RzI2$(tj0bdh}3Dvgs?hPCT-vlgm{8p|G1 zpSV*=e3y!(l`>_OqT(_+xdkNRVmZosMe-&^Su3*mR#*k4AY!d5wO5^Br!E_=MNFKc zTrh9)Nh{MU4vWvkY<_yex2>t*+qd&Qw5teZz?kW+@9S;o?{Dm2HGXF`bd9A+#-R-E zg$N2U0=yU-@DI0tfskD>3LiLa2#^Q|Be*ik`3gF*5gh!Pc>V**perMo7?Z%5>3azH zf^!To4RUB;E)KrK5`R1JPOvi27|;OI{EIg;%550RK#ggvP6Wg=N+F0##u7Ow0fVA2 z7|Q(m4UGLN@DuE{7_t4!Yw_!|QOspr(gmOdH(masz=W~RpYR2@XTYJsUWI7p?@3Ldl_PQ4}(ZM&wJ1(*0{Hc%3=FZ_a z{ljf9-`C|;r2mC0bM2Qa11QsoqYUp~Q6{q@`M*J#H(iiEZe)%$vM_Omuns0{I{^R< z=AeL&(!%Grf_VJbJpNk{7sls+xbTF(EHK?eD0BB(YErR>SGcWTa9nZO?br9)N8Zpz zJ`8Z%2DxoOdwlK(4(AnYV1OApU7VML?zs)d(_SP@Z#gG!rDwHe|Kkp zkFb=Cx@RqbGF?OUUBmU~uT(|HhaL9yI}(;bO)GD1d)z(T+CB23|Hli)&z2t6TRP_} zZ>XI&fN#KVVh=oF4>YlPt!#cPY%pM{*FyF0xX91E*xThm6^u5GE5FM zMmBeFni=$_L0SW^2L^FI`pS9OO~1$Jxy$Ie!|A@uqt!9HZg+h8{cUp%<6JTKB=|8! zyi>*O+We8~il4Q$KTn_hdEv~@i|0lzonoCVYtKu2Mh&=e$i8IZqLitoQM!gfn!0|f zTDI!y+m#j9C{h+^$S>7Z*{ZL*+rV(Q;gns5Mmr6r?9?{~?a-ULU2h7Krp|6HT|50L zZc_|AO^w55n8nSWo;=?oZ;55~rWF@$Hr{pJ^DO8PRF}SIAxoyKB)+FCxu;ryGI&vG z%$0#Jq0;odGWpZd*!Ri4E&c}{9@_fHzBRvXURbkyM%g@5P|ZS%s(I6^=9<^evplh2 z&Y8uF&M#Z~+lm#xtz3D2#me)mR{yqY&2MX0U9ehyY4fU!n^vCRu6RS?F=!}2i@k;x8)pbW%iaFoGlCK47&(oymk7ebky-?{U7M z&UpXs_`vS?AX;2tcPyHfhr+)RezXXf|LfO9_3aGt=?L;h3ikdUc(~o)`KzDP7hgx{ zV-g6unY`>j0?HgY@WIsvnwZ`??0RLp{gurYK$#ai)<506x^d&mN1K-3-MaA3mIXIA z%)7Q`*5ws5FD{*Vev$d9AyZ*iQ=mX z!W$?e)^Zc<E=k^)x-P$pPi z%7cWXjPMxBWX;mZnME#|Pp({{cFM}|q?JM560HbRqML@uZWW2WYSJ4NiK`Xl*D5Qo zR8m?76D$=-n-yd?!=@+jjpQfpRuJE%EN!Pw4AUmZ7$|1VQmG*uMuk(YN%?|(oKmbWZK~xI84?~&0$Nhbcbb3=a8&#KRV<>|sW^hAgELnn}1b0gQ z31tw+jGKvv*Mm@{<}dr3FpEV%HrVyy{NG)fG1?gQIRup^yv#Hfn!!)TzZYBzUV@lo z9MGUj6CPy2+NwvdIr_A5G=p9>4qOnypk5(l@IXiED9!wJAxUsq9Dwi-F!plz0N?<@ znoKOWi!sfgOd8y18E?$|`5bZ2SiA;zYv3h+HwaqfmE zHPPND*ef=%_#B|j)6U_yeM4=}-rUJ9OZkVa3;-=a(!VM&okImC+?5&2%HXcde~mKG zb&SHi(47Rrc3-1}FW!BPMSuZiz?d0BnKwNC8!n=mw_NVuxiaHXCSn}QyrqqNL@2{) z8{`4aeBg3l^M5>o)tDX3=Qrwa1;vK}%0%X6=bSvAaO@bM%wcLs_2r9iI+~b2o9I89 z28O#IH{1f0u?~#1qsDs0#CXR<9tjTd3yrEhd+~e!+vgu{71U$^%775cJO`BN?t}q= zBTwp|-pDOT^9%}d2}yGcO~3j4+9w#gF!-!*5T|wXc)?{A9R5wL%T!o zzTNxf8nfdTtNTt*`}MY#Q{3On0A*OvcTIR|_VTXX$L1|co@y4PuH&Vkx=&GQ6NS8zLYS{Ew@goMi@xqIeS@9)2HW)v zw&@yd)iKAZ!^>InbYFun5Qh5S+Hz&?Uq%S z4{W&)ncq;iFR3A2IZ@q3@w8)!z2zyr)#-gT8OW76p3!?U3j{PHuw-h|+AESi7DvBM z@OR?fY& zVacr>Yaj04+6;+Qw*&9J9KQx0fk`T~*ud`02oNnRvNtEXKQESEn7}AXgs!N*lK5WO zaC8(lctbOJLSF^Uxk;keB-3k=7{^mUtmEmpn6)si7>51<^uTnSczQ(~9q^?R88hI@ zurXJLTLHaGalFbneiagiG6Ien0~!o#5Ywj5IPzG9=jz-gqqv(Z^efbfr z!f>p{G=?&v^z2YNv@c--lz|-u%q&<_ForVW{VAYG5G^SfP^L4%zXLXX#`|_9z@(WV zT0#&FfF?GeJK7(%OZG+wB1HxCLn{JTPZLEWK#9l`Dx${>ybe1Vp1jAk4@dpmsc zvTt(-l(By6y!Va6P85`}#!zPGhG$#XHg8&0zj;~Rw#9YZ7Tw;s;KtfHS5{hHTsHH! z#TIAgo7c`VshEy9rr1a?M_(sHM=M23GhRa@MpZRJNtr6Ictnn}Sx&}^B()A%FVf2; zWtK>g7EL0|7MGndNqVNZ^lTaFxqvbZ=wgb{5?LWTd7;Ca644rjbVb=n@}yk~B2Y`(0n3#DWuzwU zAWYgpoCGMdURG$Ww9qbDAzKA8*HM&lCP9HofHGDTQESSC0~BFz@`PmKgm@VtXQGgk z@+3eRcQqO7@hAhXjG7c=Wg>M+AsEU)fyqyKqL%`Ur4flXBxKLg%(f)u&moj8Qvr@S zv&pDI~cyr+)1jfTttE#g{=%yJTOt+LW;73CF*idIULt;)o0iqd;1!hkZ{$rHCy z#P+L5hfXF&=*p$fP^n&LbOlf*YI9@h;rI74zkNK_^ZinP?|pD(U_Um!zlqLh?%^Ps zK`1jW;);qaSe*s4AJDp@|AaDFoCOP@2xw-EVE)W8fF?Ncj6u&oxH4m?fmny!xC2i>JXBz6K`3+nrYAMY-Y3i}F0JJJZ=cw2JBPn?^V{oR z)Fl_D*!*J$Q{nkCEcW|hXyEw}bTIK6ehfg@_ZuiM{g)`y+V!+|_+9_-Tl&x&5OeSq zL}9S~k;rC1ecC841FcLb1w5{Rg0jFoUgJNyGS^d+N?;GQt#4RdQPu5NkK2bo(MH+_ z*xv_1yia`ITMoB{2c1yE_3eEvm+S8OMus~CcqJUoJ9g<@Mop!CpucMnwd~x*mM>3X zB2FKCp5d`Y_iz79?^#%<89c2vpEzD^3^1HQlZ`JIjDOx5Ga+96pRCmgP zQBRnoLRqS#YNeySRY!M=j{asH!%f--R@#Q^CmXEO)L*BryGBiCt)luS6|KG6`p)|L zM~scB=4Nr0(^KZoEM7AA)RwhZ?Y2GiI?x*7-kupoD*y;c>?=#@uT1N!&Fnj#g(qYB zPv`WV$?ZLz-E%6t=VVs*@r-X6%DhSTc^+v0@W`$@$1OK()?L`T?BtsH$5+ldxnf@R zBFpkQ7Ns*Sj#*4EHlJQ-W>#QomTxjW&v;s%iFux>Mcy>?JPY$e%Nd0;X5>wumSbj` zJI%Dv!u+V^jAOHBmd>78Hruj#!MxK;7yq_u`S0siUE8$o*0xO#_wH!2wQhBFXbW)r z6m;ZEsK+;04IL+_Kryl+`eD+4Rv0}$l35VND1vtAXv7xffF_uLQNVqvNkvu-9IIi( zAL1A^-w)#$Kp9R&0tcR49>*?=VVA~$D+4scuZSC{iW{tkWXxzS3BUzh8BCnY7+lO_ z(NIx>cNCxuWPV3ErYARy4*g2dfSn%(M}aGYP$slL6Y1YjCY%nVWm3XmktC=)IiM@q zr!(27Bgv;T$rrw)B?opV1$4#xcgFg5LK!aFuO}t|qBB4W zVBxv1{d>>-Z{1-;p3O(tmF;Ew*~|8mr)}Gj{U2Pc-#YDiZNIZ+|JIg$TUz#Pez9xg zvu*34AN%p<756qTzPDxZZL5XXR?oh;eCD|&GtMlwsF^>#)Y3SAnqm4>{S*V8Xg!^< z$y&i08h+{;-YTj`6qQ}%75B=^FH(?OAV;1@B+rp0&5|a~l#-tzNimZo8%q$4C1j^d z%UF`gi-}SziQ=0`;x2NNd^AWAsxpv|2_gvjQG}uFc}SM~9B+Mi{5w z&u)T~Uc4AI7Rbe11VOCrJ0$z+&h{l31qoecwbOj&`JRI}uX=BC=RzkwAgW9UG zEHGl7QJO*jGzFBwmo#Bd_|u!>FTt)aV52`X5HjgeZRl6b1!okTW1!0#z8te*Fpd$R z49-0m=%Cl)e$1Fd^VcXdde;&3(EcyZl>t{~3}t?dN1359l)2>@mTd1E?j4_T?Bb=b zypLTY?Va4Obxk*8vf}_{{%)>}OLRcdZxzovUei%C_H!g&BSM*>{}q&h-IE{shTqeN z-hr5dCj?9RLF@3%M|xBJ_#e|>-MO>-spLJ_+vv;Sxkqd19QkvUkH zF;bE{Qd2VcTh++r;{&(O^6#AGUq8h=Th(7(LQhJ2OkSa+xlUPgo2H(%p3xx#12?0o zL8en9ry0X!nw+^7)$5jDwcYmE*Zy_1*Y}*r-eOo733qq!Dl%Yl49t(|JDJsYDw_eD zsL$p1pUuO7Ca3#ECKQ<3N@6~w1-uD&dFpT1?7jc-;XQZlwp`n_?$VZ(mo~0Avufd~ z*euIp3yWN1K&eoTlz=xfm7Hb47!UI$(u-rMTB z`!y_*JOXl^8&$n-Qx^-Rsrsa367Tn#q z@aFpYP+dB=c>1Y@(@!p#Rx!u4*upT=ST{j`a*Vb{sFp^6nyR<5@)0FvS9t|TvYZ`} zyq!dzryw^+jy#)4wv;8!lqOq9%bQEdnMzTnN|L5Z5KJYdEy;3A$TBNQ5>}*1&SX(< zbz(T64A?USA#W0(jAXJFF&=g~NsEL@N#ZE8LSAS&pbS~aO%0(;rlM@DoaA1WNt-AW zwhK^3e4DH|LK#_+wK76$B!zZJ1ImaBP)1tBi7e|#K`66AMtC)G!Y-1~ez^&Liej0{ zk{L=82MJJb5`}(jH$WLl3}wh7MS+AnJM_X-=mcka; z^du>?izK{DPHa0xd>2K`Lro%dihSA}jbp0~YIj)FxGjF1aqz>{#P2UFdq14%?z+{} zTh~i})XRW$DmX3(W%`(?JqNg9{0$f%oq}%XP>%VB0uxRfqs)Ob4bCoOM|5$FOAr=} z&ddd423bLngZY~R6TAd{9;`=N&|QU(-^Cpc3}OUU2LyXD=VRQs7gP+wSp1h-qp-W`2xNbJJKOF$ow`9 zabF8u8UEuzem!>(hR3|bT^SE*l7nA_XG~gV_3;O9?>2s_zyIP+)!FiZ*pNLzu6L6>wV5(7tEExo3UZ8j7t=tO!+gID>Kvvb7i2wG{}82!WW=SMp>d$c!*tSNNjdC z8j&|L#N<9hBl12!$Ua$NALQi_>>H7vd86?v@5d|7NXu_mE=0wr9109|j7bPCJbL-j z)%w=E^{uy`wBCC4`Ed^$Q060x|AxVN${T9s4?Z6lgnK-qG(JiMH*yD{ji`}7+{_(p z6#aJ6KFHU}kD66> zqVYBC=6plrKIaX8d)#;>DL>oBKlVUiTuNDfdPNR3IpMHRL_k0|4OminWRNM#ho z({rP_xp4!Djb!UcdL#65Tz=hi3ydqjiOv7HslQWiO zsu~5V=(@N8CWm$+v!gooYkA_=f`~6^0q+yM-bQ=0gt<2RIn*DvsdL(O z$9DUTeVcCV-h5-nmWx*FjxS$QI&V(l%o+LS7J1Vx@+@ZN&#=riGmqDw3QE9~WMG^& z)hv73j9l}XdFGbcX69*z#u-MYSyRojj7@V)%nHmc%I3~HxpevY)oXuWx9;ltm7qU1 zuf4x#OS8ki*X{>D`nrA&KGGiM3HNncA}lQm>P-vo&wwHh1XIG9sJ;`)E{r-)bPQ@k(Eu@=vRE#9B!*KK%`1-{s6+{04uoSW zk)YVbE(b-83P#98LH9N5Xbc;S84wJ|16QUXqAxGJCnt=S8PuB<)SnXqmJE0^DC(ON zM$ZPCK^nI|GORC++Mfyv?Mn&mO+xBU_5+UTPW7dw`6H!*E92jl=m#j%8Ry#-qlSvx1Khy-1Y#E)Kjc@{?Lrh0LPlS6bg1GUtSsH-?DDcH%w)@#ac5@|b;xRpRyLnK}gq^YgE21v)kd={il@@iP5S-=7J4uquq=i<>2=Adxv{MobP?pG0lt_^i zvy&FyPoC(kBJQdxWdng+aUpxz32q9aKB^J{nle;vLWricx1y*UxH5_p{8UA}l_vP8 zOr+{dr_4~vwj>wMA(t&tIk{f{#5%pwReEW&mHqW3_Q;Fas)}z_kX}QQULh;FlpwQC zQDK*+@;)uaT`I(#MA4l@;XU#ayXC>55ryf)0s54rS*nFAbSgHR);KPxi{8_6g4+JL znEv)Ojdq*XTSucm>;bkw#f}C#@Wfbk2_D2ECQxd@Z^>}PQ2+yuKezLY;>(!lfpZLg z9D5L*j0Hz9n*^SK8#9PzaJ(4H=m>hA(G%bu5y!y0pilJ+h7f0rC0E9}lW>m&zBM}5 z1)o+Y`1}H3!mtUu6n+Jqbr7kHW_#fgBy=4?m2Ldz$KQJFH-n$x4+>s5_Hz6LJL1@c zV-N@RU8A0lUpE3Y>Rpfp9(7-S5zIK0fd>)9;2JY#z?=DNl!050pl=rMp8fL?|F`x3 z6UTsu0VvbVB#~HU7e>>bCdyp)rchL0MYf$cq>68%k=<91f(~csmuHue{P+S9ax$Ly(uF zZ+Lu8#lxqMIm2yTY*-)q>2cGgL9do`JC!@7%c4{Gj-B zsbjG7!62u|oQ(S|fHJ)_$hiD$fwm)v!C$?1)-5W-Avob+fPY+G<{wY4G2pwy&FrB% z-q0-`{AlbK7|ML)vc7OQ(9qP%gy!>+2FA~a%pZ>dUw-M&xhqKi!k?XhW3WG87W@Un z$Rn8Eh|QI1A87bGh?r)W_GF+NGXIad84sYgjiF2(yQdCPGVSlrzk6Bp>_H(7I+>FL z`xAqPQzL)m#1G`e4i_d5Rc3O|%``J^l0M`JXq={wyiwC1!j+9B^y# z<`NCF1Wn^GRRecL&7JZ}yA@ToD64N#pS*3d-d1hHO`1S6;LS|gqHDZW&t#Lf(RQ6F zd-Twx88^czho>0%8R}Dw^b;&hOBc^Ozj^&14m+EIoWH=jpJE7_!0u~=GO(8bM&Z#< zPptte9tq~qDHMrT&xyi?| z(ZlhHtK)sg12?R9{kC=E@ii;Umo7QFa6$3H1tp6X=FXazXf!ice|nUTNu;)Mw61A_ z!L%eJ^Q0-}35L_)JkelUijhSMJYr~;WH>F|WM+Zo!mxWd!wPf@4Hw0aq17 zu<{}p+2J_HFo3tRVAL-_4B8(FdzX3u#gcSO!VnU z@a~F-4lh4ioIfqbAB>srRPXi>&-P%?Z$Vz|L0(@2J-_%vb;;$Ezr#DP{ou-g-g)c* zv_MP0|LASs20dc#2VTQEbQkEvKJezy{@0GyuMX~QvD@=}|E{LJTOV!TbZ_(edmC2X zTf5}$>P6RAEWEUM&dGT*j#*C2Gc|}e(v39G3e-_Qtfl6nu56>KxKn|=i9%dWBCeE` zSq=#p0$~A>XhtHL5{V`Z(c%Rwaf|#J!}2Jjg=f+7j{5o-HpOO@g?LRH%fwgQEC)7131$A$y{b3#<`PlFCvh zCMwD9QWCWy3B&q=JyK%3r9`*Nh;Nh>-5@j3iacSnoX9Ssur)=*Sx&-(DCHt0<|Ict zq$IzKEWK1xXt}hIwSt(FnslIwR0>5bMq0>5Ldcpp0pc>QYErgjq1~eB5f?cTKXoZ@ z74Z-)nE+LBPx%S%(1Q&_WmG15D+&9kP7HZHKk^icKIs3yoDNJ zMua^i;e%=tI~8TDC{SjST|*(Qlc#J`k=v^&zh6tJa9h0M zgEIt%4nPn8SpqJ>h-5sM;7$hI?6Cj}!U7CRuwEoAn)53zgZu1SeUZ~pP} z`+Md<2ZR5O&TG4Rt0pol5}L6c!+i?R{lBA(Q&?a`e%AGdE8L&0klHzS={#~}0z#}q z!)+s?4~O`>`FptdxOxU3$t%ll{ZP;0e;XWbXL13~UNKmYnXGya?=g$_fW^DdA}^m9=MZSIjyxFb z0|N+UU`jG)_*v7dhk514UHyY?{as2g*WPS-RQ1ON#}J=`K4HacI*iQj*_{^)k$$)kWW4ndAM%D`NiE`B4R40re? z{5SC6*^RK=3LC#j$AEy~q`0b!z3ptF8sJWNeMi?9D7}%`Ep#oxao1Y`cNk4mcW` zZP7E{r8jk-KAM>4W@w0`OxRR|L<_UhB?x719^BO&;_?-iFqb6KkHNx7R9(VcnM@pI zfMdXq=|7*31ShyLb2790L`H8-YJX)?FAV%GiTj=(^))l>b8_&9c)#~izV9Nu--Y?U z3-Nmu;MMHm_R!h>=Kj5xc5FLswZ3}wsiY3|KrrUXQ>G^xnk5=eOEaF4Yca2Q_TrK`OODN&Uuj`pYGzt$YEnLZ zTJ_8sC+5yNyk7Lhl#_HeT5PIMM!iwDG2W?2)`W4GWl3L!d?m3E%F- z02)#ta16AgcO@ZLMu0MDfHJ;ai9VePK8Rxy{Q+elE7KL}3ziHf-_B6q?_kUXd3_1+ z_!8*)CD8GsuN^?lTX&oH;Kz8{z4x$v>t_Ax&>mP>@Y>ntwG(j6zE+35FYWd`+rRV4 z?#=hNY`C>y^{q8aZ>?BxW7*sb3um32J-y7_ILAakMNczKTQyKq$wO7aK}pU|fwEhH zyiJa1MJB8w5?08{ER~g6EF&{lR@RI}G$9a7q>09o1gI!Yl^}uuWsCr2qyc5b$53Vi zS;|IsqKgV42xx{Pfl!7b6gF8RP7Q|RNksw5NJ#?998?tFpenYSD0DzZ$cZ8xp(p{a zOro+ZxH6EH*-jAICo^e}^dvwTD+!VH(!%Rut_*qN4(P`wO>`trIwC7^NJ`9Ej(kW_ ze&;C4*eFc;JCuRtlxTN>BtjWqHAycO@zBY#LF%v&YNDrtu%D_J6qtZ!{M1FlV7=u` z)eLjld`m+45|z^%3;<;+SL+uo)sC4acR*3ZL3PqjMQK2p^<ah(*Cv4|l@mTXH+qLa_2ItkOe)_#$ z#(f&=Q8%}thug?t)HC}31Iqj*N&I>c8}=`V#X!h+EExkBG-`EVK!D=Iz((kWqZK7o zV1o0%dgj>Ee$}?did=#dbp3zOFUto*rLhl#fMe9Tfe(hRfcr-O8D-Gt|2LtW%|D{d zFOEU=Cc%&xR3U;J0cNhC^e$AL0CC{HfbS(3XV3g{V&FMgH3~HUI9KNHjG6z^ zm4S&Y9DXC8^Lmi;aR@bIKjQNrum_*8N1lD{X|6nX-7757IWWpOIQmd9)jh)Pfaku0 z9(G53+&n{k9b;lD@7;UX^94|b#%$~7e!OJ{iwP?q2F?h%{UJ~Z-;GXQa!SJ1}zR-{8F|8msO(@fWRO39zdP#6P=it`PXBQS7Df*Kczoy1<>bTy zZ(nd_Vh;FF?E>BHgYE78YyoBRGm=`KUmk!-Hauune+jM5kDlI3FRD7^8|)Z*sP@+J z`yc90-aGFc?&;ta7M5IcuxLBzU^EmTXu;1P(sj;+}M%I^dGf3{By+vzn6_% zss4HO&^1d|(+^ct4gv$J0A& zQah_sI?9vUkH&p1jQN}s`7tBxQ!2GBIplp@;F}1)SK&S{LOh=a9&Ye)d2r<5ACCJj z?Av;3`?}fm`KHtJAX98=c60_bfzLU;Z1L|< zINP-L&W?@s*4v&s?0xMDDOaa&fk$XmA86|Ci1P(p0RIC<(lKFOKz0}%lEOJqhYDk& z6^~*4d13weRC-Z3>u3}k)+!y1q?d%#!Fnmh%oyayL}F&lcuOXnc@$PfMnXl2RT9k^ z6{{!;P=-+ug_6kmKrm5kOmNP~8ILj{u!D)70lOrFQNlOTuNweGAOISFC@_H&L&F4d z8GxA1IFNUDoDU7ABuD#nMR*~FBXx(v!zDa(<|6%SeprTy3wtrBNnofoe5k*7+ySo*z1Ejk=&-1P4UElitYhCMJ!*EZa!2RRe*WUXOQPdD8eiS2SfEC*% zJ_AxRJ8{B$i8BvkgpT5c&GDiR7;zg3Q9v0R8to7Pvra+?YD_2SV%G8)A6ZNsSu7kQ zd_oF#ISE@bV10p<8F>aWT1HC9mLlRVC*i^nV=7~Plin8&AGZw<;o8A^IPYfTrOj$AYmar;|Nv4fP_I>x+p{g8Tt`< z+A%ruQ3n15P27YbWkkUoC14KY#38$5A~VZlE+%%l^yyt1w+xp*w%(K%vsA3H4+6 zDPWX%K0#$_5b~*D_Ve3E{u9dlwJ7l4){+FN;lDl{=E@)_!{b&BAY< zGdASj`Qit@5C%t42KE)8yCi#|KHXQ`I#k>;RNU8FG|^GSN11{SSXnZOGOf)|+ghJ@ zwLNRCzxU-$X04x1!I7N>JJ!`~UEi>0+jp~rP0psB!OpCdpuy9zFlB%6&gqf+=f>_| z0!>`GIC1&%SWaG_e?-Z_6OYzzzpA||7fcJqIUy8T2Sqg-^#zVvi(PbAx-MSjxMYpp z;?*{~D=l@FTWBvenX73$d#<_KT&Fp6T<6UT&`^)onxD2}$<6H>pB>rv&i+JMuoFy_ zVVzB2pM$2JWLPoXd;JukOwWx|-JqMGG{Bdx+k64X+&qPF%x@`eSCd*UCp2G*Zvm7! z6Wy2_)tCu11NKbF&*b3mF@6;x9$$mp$^%`?k)vCwziW|~{ToNKCzi(^9zS$f|GOkYWOQ_2F+d=Hdi-7V`;?v z25P^`QlAx}{0fLznq>RDT>CFiRf`QUfe{MJ&`7{#_9aVi<;lMFKGYH2( zD*03pxH2GqjVTBg7xborG2`ErfV3uc#`$!|L*fTfSDa4=xH55`?a;my>)sOW+8p89 z9PZi@?%EdN)*k5&b+oo%*VZ7Hwm?Mffv&(Yt^O{}zK%b=ASh#1<6&OoZdUDT_RZP! z8|;sCKse^Btr4KiC-b8PCk}luJoxt5ftQC3o*dZwP=Dvm?VB!bSaW9eveQd+a<#NF zH8c|D%!yD`^kXobX%ssm-h@mrB;yZ}@Owxwua>ZtLfS}%)C&=|B*J!~rFg;;JV6&w z1~>*Qr6Yyak-%z8z!9%2NzlO%b+9CDEMbwP#9};lBMGyOB)OX)W+*kohK}==CioB~ zo%tx^uOt>GBN0K82*ppKjO0EAu{~sD+=~TPD3ByTnd5R21~dd^jspr{W*Okb0cEyJ zpeQ2(C)7L1u&mox6W*((V?jvJ%<0W>GaDXyL73jz1$Va4cMpSWg zS*!^i5C5cwWXw^jupxb>qspvsU2@Kjxwnrmhe3HS0*`(<>(}`zySe3Yd(TT4yxGeA z*f#K?zx(|l>qFnaN14fbkbqH8QkixXSTe9!0A(8fh5@8d^~-~q1R(UDX-CxLKv@K3 z4uMbeHyAV>iTEoBP+*z_nkk2dU)F)BGXF&b zGA$5;TrAL#B_CzV5t0^e8-x*X$h6;l-r)Pb;R0BW z{j;;^?9GSH{^8c%LGBUp$rmoXuXyqD^B<32-8*w3+bhWDkf*0pV#4J=Zq_t>9vEro zjtZvzf-7Sm?)$$%8HoKNo3V@kgv>8&#s-v$j7zd-20>QFFYEN<_b&>|J`|O`|5Wkr zdt(`^zjk1_zJI8?j|=TWRlJe1UT`V7MZEDcSmMo_s2H61HZWG%Jy_Z|QVC5=Bg174 zEpMXFMmdDrTl!A9GB1b6KfFaYW5W)nKx<}bKuXrNm-pY*zW!MKwygMFUFGMVE=Ul+ z@8`WA8n5E;N}s=f5}ufC<>u=eflwdMr($~KM#);^o@L~V|_mVD2*8%ZR;NF=;I%s8C~)7OB*l0XZ#fed;3SeAsVXh z=K;^vK*o7sum}isfLGMdEAAco{7d{H(dejX^oV{(@&jL=k!1x?X_}-Na1=WRi`!sU z4F^RTWYPnmOgGrS-7skUeM|fEwysy~?pNJSk1FzWn*3}(AJ|^JZh6fT-I}F~%eJkp z+PAIF^kB26^+1I8KxXvd`IM0>nWNY9#%|<|UpY7N+vSOi=Z6xKY8;$D>^t&&%dQ8j zHeAuvImJ+NlUKD>nd>xnq1&S6UW-?`FJ0>lG^4Y^V&P&lO&!y@nlK;FYR)_tbu|x| z8mu`tURyJJ^|JfBx4bqy_|e()YnV%G8f-%Zl!3mUUnqmjlDTmTz@-b=UazFRwYUD>?l?AmqN%U7i6E=kbRj+(0(sH7I4 zsK!*B$$ zTSu&CPm(W8dFf6?m=LNI!f_hE|!VL~E%_O@ZP7LU@KEh=X0j(~2ABqv9S$1Ej_A({@68MYj$wf%16B}UNKocfa9> zATa~-?TkZ0zF@|*M!GkLyEKQnG>0N;4RvV?b8QcCZ3}W~4RC7lcW7bSw=x~t{2W?* z?VG%98$E5lyIEAZm?CmAt#CA{us8W?Yg}e!^w|P9=2*Vr!50Vho*3-Dzjyns9h< z))9zn@Pt)(;z}H0IhM#5emPbWv_eX1g(PN$BzC1Few7qq1(vWJ2Pfc{U?f)Hv0F$| zJ4h0H@UxCf3R}~#-gJTwL4Yz$#aW>Y@o8>t`QU3 zj1@MKk+f03dCN$}5NCx-2?4kO%9ztdZDl1aURIbmm<#CU6p`aJ z%mE5^7glU5PEuc*a!i442%E9NmEog|IfG;d(P;+RkRf`EKGQ~FX3#=>=GHlPk1qSu zblo%W1BGd>Eq|o`Xn4@t{i419eJk%{>p*^g*W00<{Qm!hGQVJjk15kXM6)$$N@hCi zphNeimu7LZ1PBp%S!_t!K$^ui%jwv6on$^-t)bJn zf2_E%tKi(N2d+WkHa-DfQE{hlUT@>ob`8}xch)?A@h~JN*pSII^k<&Blv7^)acI1| zZ>Zt^}wzH>loyf4-CHQM+`*57FbuH2lsE9pl7au|e{f}xG86y1b`oV^mH;GX`ii@F zMO}l1Tt3Q-brg2>7IyR&bn5_oUb5PK@hXRfODyIuf{2XeJWU&o1@`mi zd(NBVqd6}^YhLo=1$pb1Kiae9z0tv9H}fheRb+$%$FR>%p-fu$Z^&3YWR?v0G2q19 zM$~Z&L78?w%CuciZo8J;dIeGYrKGkCiEU@&TXSQZvLa#o0qk;WN)Bp_Xa0!ssf%#0 z4Rxsrb*>3@`WEa^&b0pIW%kL%q}0}=#M0=!@sSrt3?Aw4fa~bx4Xg52Ez4ZCI7Mes ztfpq<+_@oY>H(^1Oy$`=imKiqB{g3ab#K*quCp~f=PvY{ufx>T_0w47H+McLSVJ>h zb3x3)MW+@oPG7P#Yw41lrHgZ6P|XtEbIX<>9o?&z-&nWukL{~p>TmjZY|j_-Lsj-h zHEw1NKGw~_jvdjEr$G|6T}i$@r*$e;FX|P@js!QO?phCPE4q#1k02G*z z7V9`~U>7iBQ1L5GJ{>VW?NMH>;qEP=ZY?3Me7Up+JGTWpw+A`52RgMf?VEk98@()> zyeykNEt@e;fcf0)Bg78fhPugZg1c6 z+ottr)~(81u_Q@%QS?I1Fb#EobyXiVWfvs{YZ*BUI>U%YKSHAHClFz7?;ZkiCyBh1 zLfKBCZX#1Rk|^s4rZN~C1-utSDw-e~Dk)@wK^7gDQfFE*#LQ_TCou3p zh!~4_$V++1OHR5nGaV>GPE;WmX(2b68J_YYfHJ`v_^{ccfHJu&sh2h>0L@(9s(N9I zYW6y%FdaDyiii;%bC8PNg%RBZkz@)ikE9wYPz_~?#&iiY8H}YY)kaRvMnT3z5gM{Y zE#+qT&Bvr}P`SHb_t}ZH&)p0P6CIoHCf3#6ZS8vAKJdPE=wr*k`~J??L*4KC{%!0R z;f!e>%)i`*&%#w4E$$$gf_fovinA}H~oecEvRRqKHy3R+R(w`U_S&BvfA3IPy7g~H0z5jo-C=`WrQoC)t_ zie~s`3~l^4E9-aN$)$WlW-0^naNOx)3$Hepm(~#i9-rn)2Q;W-A_m8x7 z^;Sa%Q*>60eT1Jypxb{P`$bVEA~*e2>2p9C*5Iexcn#bq002M$NklUpE>y+c1aJOpK+g2NlD;f+@DMqxi<*~oYmZ@7G5sC;z1zN`OpUF(N$ zP5IT$AHOx1z?&TWw56em|7OJ-nXPTreu1?>}!-Q&&U!|d@v*6uACKH?mr5G`02@H$zi1nI+cW;Dd*mC4 zJygpX{Engw(996*ix_|vm}P&-%J6rQPLIpLcOg1d;IAkHp&7()>_$+gXbNRuZq*dZ zz#NFq{tr;$?&^BpTyvxN>B$yX)5^V@E0-^BR-a$5GUu!A!m?%BUsf;uylq|WzFpsK zPPFaOxwvf4#wg|(J0(2Tv7j?*Gt7p+CWG0cUUQH$oME?snP!^%JOw&kBV z^x4y@7RnjfQBYkHxH8w%`fj8{bqUGJK+g9b68P=Do6!X+8K^Pw3rr}`0LrvnPHMfJ z)OPV?>-ogiGx04sF-@6~&1s=csll+(sX4*FA=c-6xZAg2r>a2v%0RoX{x)TPR$qL~ z%RMZsU2Q5IExy>A7MLFgf9T0Uy$5)EC>af(a?<7)J$BUm8`WORZBB% z;et#p%^dB8XBKN;T)O!33djgAxU*gt0UCqN`NwvbSRANuFs$`5{~2W08sX9u>CzVG z(UIiSb;_?RjoFnI04T%C4eHJf0F>#;3FyfM1+w_!jjZsXi$Po3^*|z zu&H1YWm?1BTf^L-sMH$b3MkVO=-3+I2xd&9xAhNqvpQGfIv3-5XMyURPE^_(eYQDX zVtKUC^zerh2i_mw_vWx3)ZPBrz3st{O~0*QeP-F>ES-gk3pAqCRfC|pT2anZj^Qjz zcVHlwd_yAXIG%V2Pu!0q=;H{$F;ghBje>B@1|oSap1c~1pbR1`X$^+54olmBBX1>Q zK-&m7M0mnBJPEX!K-xqkZ6p$aV>Xa*JE7)6lGuwCJuWV6LzzOEnSe5W3L?SMVqs*7 zaFS#=4u_x&O?S)yGjor1i*vb=>V z-bhZ|LT;wV9P!u{jNf)^K0dbcsf*sn1pCI@@in!#S~{O~aA7EDA*`zHgLNofZ~IvJ zQ$`DFbxaSpPSVCSOqt@9$>t-texvq=;AB1}psX+nH^`7Z6k-5|(3eA~X!1^eECziE z!JU9df-((Stoa{DzQuxsR8TKuDwu*6iTKMCzW_-f*%#=In&geK$$`rG~^3M;F~FkL30QI zHz3r=fqNz&E3kG@N9XSgOh~iI|F{DEx(7j=|4c1^drtpw8E2%N4Y5$DO7MR0hN^iZ z?+1q8^^U&p8!u?=%D;H$zIRxpoiEcPEF$~b#ZI`s4%KmoTfbEmW}Z%g5qXEaJR>s` z-WEQFb&{-s?+>4xk4TTO4fBD;1^;#I7e$%K(-|+nJcrnC54Ys*@ApF@<19UVEW)Ay zW$HSLIlM10grK{>5Vi~T4}apqq_{D#WJ(7h`UCwtyz*XN)xbz|>9^N69$m@3l9PAs z?2SJj)U-Bo`oWc{XlQ=-7gy%_OU~%C;qiB`U*C<3O>%VgGWYcj$;fzK@%raTbt9yq zxotyzEkm$DdgNs<_XTgPs*P1}>(LFb;CLGkzwliDw{=gx^S-{Q{*#&J>);pd7L=NM z^-}rw*TWO7eZwUmznn|Xi?;9zKH=(FQQ>d3 zeXlyl%i2e)I>xGchJj|j^$mR;8Y&nZ`ZzjJHr`h?3iE#_dza7~g5IUcR;Edy7IfmF zJF$@(6Bsk_gTyOh@rrot;)(X+vG&65zQT^af{tDY|9))ed}!`_*T{L(()MS=*DD_$ z#2!^Eh^-4TY?kDpHMK6A1; zH?Ao&x+yjMTeMH5gGHI~(ei@^l^Zv|($tEUpY23dup`S^)0JG6=X+@_^;x_MDow7s zD_nGzyJ|0SU8L)-wUDVfFL2R+ zZF{i7dVi^fezD1({NuY`AKv=x;I=rXSm$$4wvvx_wGM$s!3!*jD15}jVrRk1j zl0AuNNu?c>RX(aT$4FV-NO_Kt;%qYoRZC@cJLTDSipq|PDt@Z!%-M5;XU_>!n-e)l zJzjn8Nf^+#Kr4HZcAk#*MXlLawbgGd)x5Vx_s=aWUm9#GIKKO{<$(&P<24?pwfJ=hj%khYgo0NGWP79CTOuJA;`J(t0mB-i3#0Fwm&>!H>3$ny{mROT4j5<%I08|&4Eg*{a-B%%FOi&Pw2fly7$Gw zT~GA4|GsDQ!=0P%Ze4$U{i=&Am*g#8cxr)0ocf$7RaJjwMQ?c-S6OL$8M>`B#ez;T zgW)Sw%62+!JB_xLP6utK(Kpg)8)?+_G}?M9Z9Rp)frMx?k+Frq*h*mR#L4W$%k06) z?ZwIK;pvca1??l^5E1YOc%nX@u$zG2Nrb60xUB@KZ6vH71*1=rFo4b-aba5&Wr!FT z%uE-WkPjba!YQy88xw)Y1Ik!Z#SCOc^(jJ@I3Zg=8PcpIvQ#ux>L`rJqs{@t37Crw zpCgi}DVDB_%Uw>nyiwuoI{BPcjP#YV39D3H6vQCjdw>sZTQReC;wAP|vBwxhBRLXS zGJrB>bdn{5VWTKxrbaMQk}{VQaZ(lu(!!lvt8`ya`?1ZA{0PgsOJQZ@ml|4sZyR{m z1}MY(Fwp*bxbtm4>%)IQndxZq*V}Nh7hKNyBViCU`DL!~(F8pop&x@=8GnL_%T{wtJ0mID5-P=>`vnSoy@^Olb?AAfeeKY#0vM{uZ}kFR%B^x50L zaYh?DxYd2U#_FnqoU>_wGDm!TBGThueR#wgXdE1Ax&OyGzc@c*U#I^~R%XhTfdW(S zaA`NU_~DaB5wRz&y_g8fT)k1-_JK2qTxAi68HKUUMZJRsaO94D29$vf2EBt7{X?|_ zLv8Ph{y3SH;1%NM9~GK;@nUsLOYZYhAAUanF;exq?rC7AzXLPI z#Xl+I{FzUc&j4k5hl>i!&ZnM@G4~2KboR`+8Cu@*u!-~i#fM5aW~{S+jAvMqXLPuI zgsrikk>APK7o}yL!@ZsT-`PVyhsH{V$KG?tp0USoaVH*pt|&cy?hh~jWIL~LYxj_g ze`c3;K4~8>YaOX<8?Edfu3`;U^$wK}4}TmQ`ZzXFKG9b_I#Bg%s0<94`PXk1WO2cy zF~bjY0db>o83D>5|IUMdMVaR=BnR{A18D>8vod}>8Fl1 zM?tNXDp#*GyJ60}CN1sO6{}erHaG6s-F)ystBrYEnD20UJfKX|>9~f>$j0>WZ}EPW zP8KlyT#uQtZD!LBgpxA%Nv-<1@Y^V@qhm3uQ|@J@E`-K@U* z*}V^PP?P~z1~{huW@_v8l$PI;TCRa$sbpg7Sw!u5iEXD7+H>OCGoxBgg|{XLwVd>C ziuL{(;no=8_A}h6KE$pjz^cN>a&q2ac7N4C5= zu;JJ z1F}j77>dUjipC1FEfiENCU^oPW$nWRWA>0dS|$^z+Au7<@h%rv)W*r`Y6YraW2ito*fy? z?wr8R+<^9MzwT^*6lKukG*<>OX8Lj=A_FLc&B~gYzI~bDs2|gn64(X! zI9Xld8#BHL%0M87pNZiYn7le6=NkhkEZ51?U63|kJ#n^Dgo0d!KAsLg22WXTn4C$?~ zGe}kzv`I#01B0<%n!bigTTP*^A=5UHr8iO-+bQz9sET?t<^5C@&_RmoA+qX0vfM!m z4s@78I7}uSA`xN!?*Rf)kBB6Nca!kji5OT*q))*bkR|v16=hs8Go2?0n)G?6F~MV34Q&Del4M3KW7(F2k*kI@j6*$xFJJRfE7 zGY(=Q1S4XH6-Q7;nr2QW?U4{)Ap$5PYNmikP)1rZ0xLk7qXZ-_0~}*a5<*Z0FXRZL zepLznYGhw!tcR?aGi{~=SqKEijJxa%PX$pQ6)`_GNkEx|`Lj|NNo6i3T-qRiW{qs- zGTNzS(#dP*c&SQ3*Y|#cm_8nMPKkr`iIRtCI71mCWPZVzF{a>5C=?4>x~Uq$SOse? zFKQ<*?4>p@^m<4zOjRqIGW8&t+S-;8#>ANaQ@Gu@&2 zyW2<_7exf%0|bdC!@nplOkLnn%0W*+7C^EP!8&U=AI^klKzRl50?t8CKu-P#!9!5O zKn)edK0)8c6gly4Ox^!4pM|GIUi7ahgS>%BBANb`{%4e#_9)b6f-eVo6jZw=Yh(h4 z2>}trgGZehlwc;~GH_9tE&;)y;DTB>Q~nLyfXDv7ab*UE%VFd{Oor_r{K^}ufZiY8 z=o>Cvt)Yo`{PWMQq6@blxCVsUdIkDLCSSb$pns^dr@tB6WNNG4oXJZu_l-C4iiu25 zd0z0KXZYv9c*EVNxxUf9rtWSoA;Eb!u6=F%!5R7iqg=SK*J<$G@JK%NOIOqvrk_c) z3y84vjfhB1d;azbZ@d?>Abn#W%In``T)k@Pqe^>BlWKx8k zr;}@dck-Fsnzk0!U@f$-e{Xpkdpgl6#LdbpoEdxV#?$-`Frp?tJ3JtRkW}5kVG2>!hl@zmvyV+c5k^*C?5*#3C!s;LYy?^Ktq?GRc`7}5-(atZ_ z)Ws+1Qu4dnXRR>3X5<@)HCzVq-oBwvgW$@*)aHTmk^btTfhx3&DDY-bdvD5;0ZR{1 z8195_CgAkRmh35;k<9~?Demtr=5-fwy9(KyLYTtIVi&O4aQxW9e%-`+)z(m98)BF+1+K#Cc)8JmZ~Jx^ZCQ7E@zPMW`Cc+gjx>39IaP0{ylCq9YUz4v z>3A*F_0ZIE*O(81U;p{)VY*r=D|OCpUUl1G+dI>P<*pX>G2ZRDk?c!}z1LDWSCf0M zr}p1YAGnv@*T;96+{KgfzYnG%e z)r!(k4TNzf@^m*@X-iop3mHXIy6g$6^a%>xl+Lh}mA96Yx002yU`Sh0;m>ZWC7EnR zBHEBi&J+sF)c2K>4^&hRRZ)poQHoPmNKjEoR#VB;oO^EZf~%`^Z*N@waL4K=dK=#! z-(75RpxoK0#?Rtsh(k-PTUU}#H&mL^nVo6A-I>guEdL$=nrtXM1+a4k(HRy$K!XH? zb3>tziIvTtOp^)Qpg@2%(2^a-N(<>u4eo+nSIL2J?1lz-ewnE|IiM3FG6{arxPE`TuWm%1T~Y3xVJ__9b{yz88YAsm`O8?rIBRJF$(nvnW9IdZINYc2FWlsF&LX*rL(m3 zMml{HjlP*m+e)GDAWQF}$QaP%57HHnNGloAl#Wvs4JnF-WW{4-#t{ns2!(JAM8+S5 zwMRq{&VY#1gDeXHw}XJ)MIz{v@%luJ0apBk<3OQheTnRJ0$RbRNs4s1nEkn|jH1h~{=01$b0i5V@8d+aT ze3#VB-9!<6@~k70!iG}9mRJ!-te7KC+ybJtRQxWfS!+dwcM?QxWpK{2I8VBSKXImq zgwSEU&_2@4qa+bi{LB-On}J*~d8UJmIFy!x)QCQck{+_6j*J=RbRiI+3~ZG2g6T3! zV!mopq3W|@=ZhsT!e%cfo>@UXyGlA|DfQH1%E>h zeG2XX4R1olnMo7Ps6_CJtYA)$JkC@eYb7sfuPEW6hKbc7=WJBH0)0$gdPT{$MUP{C zmY(Z|71;y%9PY;f)<+(zu#fYXa4uZnQELIYfd+EqGQ}VK zH}fy=8F^j7SH%Bv&~s3Jf)_w3<{@n_LGu(o#XYLK^hf!3*b{B7<4?OMo|e_U$hmOa)-}N1 zH7YLo+KYm>-4mZWCyH;qxDk*L0tF@~W=2xppLMP8`p5DIMnCdK3PD3dpN0oN4-b|P z^Qu9}q_}|w9=Dk@&|XmTCN?$J+0V^0#P8(U?5g(0_K_;q#HXs3Hwjr8E&)tyw*>#F zd)NQ`(lB1$G4cIg;YI%}C-VSP3zwwW^hfW?DmsSRy2l#3CSG+;ynqQVg9GpTIB&rH23zz8l%cs&KfAa)_E_gy>dReSs6#_!iZy-lr)uq!azRke26pn^sZRk=bzxm;DP zYJpbGij|EUHq`9eS*x%2{n*huTkCdrS6*DyXiDO6Qfz-*SVxF&qmO-!vuU~YkrJal z`G>Y%UcdUJ*1`~F6(5FtfPzZM9F5R<3xbjOh-Q$cR>1uE%z1PD=c$J*oENuTCu7s{ z3wzezKDzsr-O!_nS`#aUDTc{fD6 zw+1@?^s#AnwrI3Bt+O$%vNS3+KAdlK=&jMAS4Z|fGuZS*Z^Q3<*52Q->dv<1H#RT1 zzG?Bbjk;Gi>Rei{eRlQ2b8EEEt=B!bK{s!mcGju|sY~X>El`S_D;uUF6E3G1OqcN{ zQ{4ze7Xrb7N^+!;ZKcUp46>y(*^EIop^**wS5PAg!9tp5ry%RBq~xZe>N$H(z+5fg z+4KEX=Y^_i#LQom4l`*MX`j{AzPe2J_L>#HZ(8+g&*q|Idf#l1H+$K1ggUdLJ=pQy ztVCbdN#CAyKUM~lmF3UM4q)d50>L1iO?g4x0)=*+4(ZAX?#v46$O`Pt4D8AZ>d6Xb zXTxsG@a|I~U4SyFa1^LBCAc#=s52=5Q3A3+3i`vlB0W1JJ$fSCS>bN1P*--KQ%`_n zbCBH+Fp2`Ke)wAa@Uv+2wP^A-Yj8hNZ+EO3N@K?RN{{U=+`r@Xt}V~DuK#26`gsKCYy6R8jeulJZdn zl_T=XhvbyO<=RJ=H=xMskr>-)((7gD>ln24H0nAk0H#1$zj*_NyqQAXN~P_g(ef@#M;G}k7@Vf~lJpySjj$nYnm|&r|2=7Xj^dO145rn;{LjJNsG4xr9BuM_wGFQM@ zC}N$c60VXWj-o;y;zCTkhy!h=iHwky?931b!525nNJ4lQX2t=)9U9p{LR=3kYCsj! zhhZ}_gssJAIAKNHu%b>Fk>hf>eGJK+Sdpz_!uv_H+^HBJ3dWNv?o1UimlE2B6W&G@ zKS+@>mzZ@zRQM=yh9P5?t(=6PoOp-|&PPEE!ZCL8Gma<-9hMhzm6_=;BkC(R%Uwy_ zR~;WRS29XdDp`kcW*H@2OX|XM+W94vv_<&X6*6%vWlyL{ZKTauNfg#5i!PVJY-SL4 zP>H)pctae)oC-xfnu9dOj!rfwVJyfPJ2`@j8r5sQwEq%v^hU+pqYLl4u74H2zwDwL z`*qSt?X9t{*JJE_PVZ+{?-$s_G({%@UYRTgfpq~_eH1w0HhS%!GFniM>Eb}t=AQ*i z5;*zYy&rmdKeGCuW&{QdjPV7&;fvqmgdz*VD}1s+{StU`ft7-mocM18MHv{&4mbF3 z1NBk<=7_wve-hvLLHG%+g-uQB<6ArMqEq}aSxyqb3JN#K5p`VnLuh^_i_uEfuV4-G zi~U~&!`xAnK>-Ejn5in#R2qgKrbK9l4>Tz5AZ^=Id;<@JXZUxn%>MzA{FenLF05eu ze}pp5eyKK|sbQ%Zzkj$3DAP9atOr4vm$?^i+qnh)-$R*>(JJ=D=jxWXiP@R1f&Mn` zi2>2~ZagXdIq|h~qV9gtrGRW_i$F6A*W|d2-`|&4b`H1qj5l{ryzZKK**o-_+y8Em zTQD(R|LMz}l#G*3Zei|z5ivQ@kBc7V*W}-Mdp|Ti#@YX*wR>C?7*2%`*<&rdiN^Pz z@1iJkIN0X&m7Hom%5=1S`Tb#@Q;?^%zo%_rq@{0`Z9r~BVp8!Jz{++O=WTWE?Sirw z`DOVP^>0{xzxVN;^o~}R)xSA?Bg@90Y3b|h78!Q&@q_B_AFR>up#G5(-bg;IYk)md zKr>u!Id|Y2m;0YkhVRor^B3~n&kx)4q5eOk%m}-%kNc6;|DMHq(b06TvM8rD!L8J8 zfBlv!^ZD>cGvIUS8sT{-qyO+&4m*l%uR?MIvK-D zj9^6uwg$NT@UW_OI8kYNu+&8V_Rg*8OP5B@nd>j76s$BmY~F%!%|&6F3j^mb0EH}E z6tZw(u$E?|?tAqcm80>twd()jQ%WiF2^4ogt%d54{uh7U_s-C-8 zElXE5Q%5CJcXsAt^~}X{GndWFT&|I^eBP<0bCY#vCoWQr(^8JpP)V4r9;>1juBaR+ zC+{sS?L?>8Q;3!nyeS1|Ovb{fvExJ>po}q{Y#}G@pd|00q~HLVN?ADvS$W^t8Xk&j z9x_VaGK&84Dp88cPkJGSL>1b7I`nT*rZ+c&l^)iU77FS+U0}lm*wh7D)iTY$dzsXFn$&w3*Si~icRp5YeW=oG zU-6;suXnBcbK~+mD|CO;U2t)c<{2%G?0M>`Dzg*h75$Z!9o1BAl@-ku! z73GW+qRARlWlbmya}pg;#*9D(@lgiG5yVPhE~YdJp3 z;Khukg!kfS9HL4XQ4y5U$IaSD6E`43hJpLjC8tp4>=JUGHX&sJCT2M!VYR&3Jp2}h$SRWXLgLKDH1Ume z9H7i@n9zeGn3AawMh29zrIE~tl4e9H8(Ez5Y>KA_-A|VkwLu~4(EO`5%O84g&Cj&z zd=@)gb91!w)kxPH7Q3W(pqw)RH1o@AK>=mDl_I$6PxTh@Pv%1p;>Y|uj)4sc?DwE4 znwf+cAe#?8eMpfA@iPP^s$U)niVJAB^R&+*K^%m8_~LsfNcYg+3C#lkD@jacTu>8e z@@qt(XWFyzH%Fo=3GHuLX&}@LQA6KTRjO=kH%s@K}CnX_7*aT?Bk;L0y?& zncsgvnO`UK=|^Da{C!sD|02o^RdNR#U`i}+2qxqf4#Q~w@fY0D=diw~cf8_f_vcFw z?mGtt*m(K-L?oTNagROF+RJMn9;vRYy?G`t*w!u6#w{y4Bkjqj+nwXJo#UVHyh#g5 z46yg`^9%?-f8};feJgvgo;~`W1=&@;D+5z#tG^eVKAY^!OtA4v2s?G^5rQ)9trO3? zC!Uwqz0A3E)7G77=N=lHdhvPT%dUx{j){VsFMsn-47T+0cJfb4KJ!Oy+xuRawlY=- zlYBwEVc4n&g1wlqQtAtjSIOml14LtSn?8Pi7Lyk3$aHZJ^-DaPTiM>+1@l)XzSOn6 zP03F64D@nzj}DE#ara44>sT3kqV|u%3t`!gb^*qAuJK73_X^5OS;I|z;|-jNSL}%w z9N6VFP%u3FWn!Y~eZh@{)I=wbC|BPouUMa`(@}Bf5<)T~-D8-}fnYc#1}7%pe|@Wa zq!nsR?>^m+%!@b{>~zH6{>$iKq-Hbe$ofMs(cIDog#@2fSLvJ}FHT9jPcV67G4+^#o2($_CJ9X{ir-rZW z(K^roWS>Vq@`fSvi)_v0^2%Xc5SLep8Zc;hp5K7SAC3nd_>&NWa17s)nf$&7e-i!H zM*?N+ff5$9GC|0?x3CwC-<~2at7wQ-G|VaPg-|f}BfIx)SKH&7vWso$%u+YQ>Rp@q z<}7Mv0Lmy;sH#+I%&T6qq2R&PHF2z&6yiLcV6tmMRD3XF^jY#7A_25s1>(tN!;?q zunIeV*}}}tt1j%_aO2SSMCimV-?Y(oV7hIXUzfh+4 zA%uU^+4oMd?xeDA!w6u$D|0mgT$#?Z@!dIzT{(%+gWZ@FRi7U6Eyb@a&i!kMeOaJ& zxw}c3<>BHJ21SSVe%!a~jsDI*_in$xZNrtV>n?6to40Od+H&30rP_%)TCoc?BInNu zRaXg`tr(yx&jhK+`>81TsVe!XDtW6adaEcRM^!~1Rb?Ml6>n7)cV$&iRW(nwIqtL7 zoRw9ql@u)GWXnemHX)PEC=?qC&5lZUph`QDrJbn^4+SMxS$Q{U zh9_Oxmmw1&D-)}zcuGzA%>3Dxv^B2lYTR3?{pXeyZw)qoKA{hLq~VQ2YsvZ1;Z%sw3gpTkDozT)HStYhI$dN|c&%sH$?1 zvZ9ZIf`_cE9fM&iO*f`dk5R}+Ah1G)B?ILB6tX^*s!yZp)9HHBjJ< z!QKEFycbRsX29&l&pb$xFeDTAONbkQ10*fEk0NF=OV}1O6HvxQYUUKm?81rc5Swv` zEapkW`cknTGzkZ~h#6LB7h&dZy2Me6q?M$osVEYfF`|pwFks*0tRN*^@NAs7{47hF z&;e0vGaMnjShq>PP(Lj?)|t zfh&X5YtX9D2QXd!UK}u5_$b4k#xziPnlx!ppF;pElP|%i3N*uuV9KvICdje~JQxIn z{#nQ`*nigld_}>F@}Ce5xCqiMXkiF_D)e_XS~Hq9Ge+RD^H(qZn-_&oq0@e+DoRrg zt!Qh~^dlPko#w>+g?s-0fHKg#1SnI)N12y=lquwle{JageDUF3ry!=ax1V=p!kHVl zAmPF0H4lweeE)teFVElBJ>AAFBRb>MlTWvPq0C8tdk=f@nPbc@tu;}0J{aM&HR?3;E`Lpmsc$R}*zzI8-*rfD3 zg=L>1d)qfw4=BT#c+off9#(I{=55|^-LuyhW0MnHyyIMaqwInlt(aEkepVJtTbn=^ zJKsbr_XPjg#G6mAbq=-g#@pVO+yj(39_)OWiJ;8)x+*TWh1FBq)c7GLH`Xr9-Q1sP z>YHrhlN6SiSnvfH|3~qc>&a;@t^uBQK7PqLvDJ0gp?Jg|u4(P7eOdCtD<;k%D8$0o zD<&`NZAAfl_&W#*K@TG+!y76BAt(b#H-$3DY~RU20&s(mGAQ2&zUc*}rN3|t@-u*- zOi6biOn)lwV-@$aicypqVnc$guxH>SyYF33=hOPC-{8;pN{E;0ZR5<X94$ae$gsZHa8_h+XOMTZuXBUDO}&F@ zwT;_>DLq6HBgc*+S9*^ElJWXM{{%2~>R*&u5oCu^!GXQ8TSHCx$A zS;0a<&Vs=(r_#*G6l((6mPBy-sZ~@6OvACd7aVSL!;l6hVcfHWt z0vvNjXF<9KG$JVm%R?%N;VCEMAF9n3$*i9nuCJ=WaJxYW;!ID1ke{?rpqx-7O(dEi5`dp!E+b(jC*?wg zO_L%{V9DTT_~L~fslrzBGaQw~0;F;7P&twi+KrvDk2vcn0e3)BVn0z5+?Rb+F>^^_ zI~)XMW;#pGaE7jLIUL+S4P|hCfHHIm2Wb>k53f%sq68V-!hiNm27z!Y4>Gjin)r zBj&>p3sE72&LMcqLHZa$nG?#wKJv4IWySpE#5|QHebunc*&?ADvl4Z%Il8!0nqpb= z#WU1Jlhj0G7LiV^l=skP996+?rOeQh6k3E4UPX}DL?LXalJ*k_kcKuS;mv6T3p&vh zHfxfhp-IY024kmy^-z}xTPmHjRXIyv?aa{yH+;60opb3d$l*0V9_x9-?)${%mU6hC ze=z}?`Irt6XxU}z9)W|xkJlgt8mJTTEtbDK0Uren>t0@FY3VEWgtlmEJ$ z^gkXrRLSH09N_-o4VJ-nq2bZO!SPqz(U-7^kTYK1&{J~Z(M_iiA1fbE$rx2|>Z z>bnPja7Rn4zhBNd<74ZQY~!91m6`nH)6I^FnvU_$x8J4(pJdv3dV2(hT)1|t_Gc@5 zxPd+Pku{p%H~zAJ;#KePr>gJyIp-3c0-|kvV#3l=AANklp6F~Hf89OtrnLSwiZXT{ zL9wUKJui9=u1qK5%3Sw98Di<}9a1n>nn~KF-(7>*-EW9%f7*bN^&xpM;3yq@ps&rZg3o-HlFku=Vn=@bFK_OsuN8 zH85Dn9;)l&{Ve=e7?GLf5EN|T;~AEj@@LVDo}n60-%!cG&P5+sRz_o(#J08XP0nU#e*O= z{1_K?4-~Nb^Ltn?f7ab)U5@(}YF~R)uY2LL8U?jVCB?6b@@1;ZUo|yQx!5SEjFBm9=3_)~2g_ufwJzmwK?7vUJxm4TEDA7!$T#EbxCCS4iG%3O+V&x>lyh-gg@Z%hlR zPYJ9|@TrJ&DGsnMayEQ#ec-Lp-nRzZpY7c6`^Gi**Q~gHoLYIM*fH8?|h$kM$;*UsT4@qJ`2PH83#jzj*F^v8!DLqk1fo8#nSUoZ9P6^4~ zQkcCsygq@bPXdF1vX4$X$bh{zGKPxs{~vSj0Te}|_3@I!#O}#6M2b5Lp6qW2aST`C7H->^IUD1P~;7F%CF&OSlh7XhB&t^uj=+O$S z6lHd%8t1U4(s6C2Gy3Y6XXxEBHGZ<%^v#Y{Zx3w!>}lN+?9v4;7MSUn0yN{>l@Y+p z4u*EXyu5H2qumX2ny^t#fHL7-x#69M!#XkZZ+Lf3L=SLGPGs-lC|-7SPgYEKR&-Zp zROg|{_VlpUw2+pRV2ooR;)Ez8RAs(}xdF;FL$?@z`z9}&FYZ=#F8gbpY(6+z*VyfQ zYqO_f?~a1)8=tISackMatERJar%g`MQj1bi@Ks=WGO5l?x;+cL7ffpwYaf%jheqE` zrS75t%22i-2!I8gx3y&QY7Av)D=3tu2(lDKm!Q<8C~YZ)ZcbsCQ<=-CP?rR}qPUT% zj0H=115+97z3b_UYpCoMD1DTB$cQTfb z;t>p~2(qL{opF-eC6FBD84X+9-7U1(ey!5!rKSmQ;X(jIRd4UyJ0Y zDHWn8lQ4~tX^1-rRoObyhcqQpG^OJ7$r-a1f{c}{wW(_v(ndIOLpib81X)uG$(&AE zheE3!WHW_m!65BZpjfdHOD55hf!j-$+sBY`R+i#UrNz%zNMELs^PBcbhxsp)_txJ{ z?5Vpk()|K%rSP{?7r0QzTphx@`@g1aeh~u(0YEcC@(?9@{#Pi|^|H0|1w>mHCen1k zbUE-5`8sM`f2R)`>Vuy z3}xVIEaI3^M)?bui2mjry>yE%;NwdX31PC$zlkxA%fHYGn0!awFcWu8Tpv?nMr)vi zwqMKw{NGP7y&LFn5cGZNAE+7}Djk9@CO@Ep>8TK9Dn54>9RKr-W4N1jfU`$j2=s|* z9(va@{GRutsJiY%=5bFuuQ*%Jxah3JyQP;}f7Z18EWPsl5I4o&-rLiY8+`J@mD+}H z-NOytKZ?4(zv2CS-uv@;_fTnd-HWW_2~NS`Hhy8Dhf;rsLhhfPO+Q|BjJz(de*q|C z>)~(j6%>Ey$fKeM9U_!@aw#w+e7~=^6E`{K#EtjO(BHPY>qlkJk5UMjuf+fUy6^id z!S|OCP}u|q*xunvxVyh9|05$CK%c%MLL7q{Su zsN=u?`K*1gL@@I1;j3dY>GsZkI~|=v)6<mc8leujdbcggHk%$dP?7fs!Jq^ls(7 zzj7-tEH2L3JHgdIF7j|}?D6=7lgaTXQbIFh4+v4lCo2BL&Exf5b^IS~&r9#d9!;_2 z2JH0pJbL0-UF`=!?^j+|>F~h&bN5epC427;@URSw-{Bn@mYVdsqNtt!t*Gj5WTLx$ zK$u-%(!rxgYd_xW>#yt?Z0s0lF0ZdVboQ)WK!A;(S7>_D&1bhd`fDJ1`iuGfFj?~z z=J|!e;4nJ_`s4Kj)nOT>QHU8+AmQOC%?MpGf1w%dfBfjEj^5r9h#r1v7o@KFrM*3+ z{GL)lcga9kaesGlS6^{^Utwq8n~vV+Um9I5@U=`Ly~4v;+ix3kYoT4`>PWZw>To_V;e|aQWz9 z`)1Fshg&z@UcdIr%H`*lE zofncJC)IK?_FFD=^$luB3;2@kR~PT~A<`9Iv&dslf%PV+1A6@1vIpjiZ!MgAY0j)O z#zr}YQxo*{!Zp;~)fAmnIeR&rbrglQ2zxb&xq?7nj;Afd(ahzjOXYo_LFGCa0~ zSSrt4BF8Y3r7xDDnaWY-;)xK@4u3WTo-mh4oKGg3B4jfZSx%*HW^=YFDp@J3I;d*6 zYE1G~n*?ow{gpIf=C&V4733c`4%3^>@MTbaXlO8n7)m3@G0`+O<&YvRPla(pgL7`O z+O-*z@0!khwsvvJ&b2kRI~zRqw+1-2#Jaa7dUd4ucBcpQW^tkP8U`)F{K%doSajz_ zjz(@ocWy+_;m95!n8Q(gVf182cW1|RWkq*pMztS`XiE=kP7C>#9Q-XQuqiR%Tb%D` zf(bg{g}JxDK&3#ZufBF)J@$Wg*;i+`|KouJwKg_2*4EXQmc`q*JzKZ-kHw2l&oa)N zsvoPS62PK+)2ViJ+5sxMmkxs-89SNGElk#CCJPFYc0!vwl(H3aJ!EtP83C~bVilFP znnni-Sx6);0uZ6l%;=1z47NE_!JMVIjHR@UrM#M^xRK1+Kw_^avept9tMK&YII6iE zx=5a6DoFLA{ZVlr7!|1?9-=4_%8&{sNqP~)_cLVe zICwWe8KRU6PCS?)>x)RhEF@P|S#M3E7mH|%liVUFwwfTZjwB5nvlWluLL~so{6>?p zB1zaHQnq+WdpQYLRBjiCw26gVLy%f6Be8=5C_@&hGWIOVJw&k$sKiEwj0IKJUS0~q ziY{%%k#$m#4^kw?XtTn!D4rbI{WP&%O5)a9Ql2b{0GfCJM>;@@1mUA86*yTY+7Oqj zFO#M(b4Xh7)3yREcM8cjS7NCtp8`D!3aI#lw9o;+gZqSCZ zGXc$IXGXf7!JViR(mma;{*x+$F~OK3f~g?FjL#U&2n&?PJiH<&?}X(qRR&N7R2d=4 zV5-b7l=)@O6)7d7I?Z_T6tIpk@q}fyCeRFg;9o^g$WHQz~f8NSrR^NZ2HpJwSD{|FHA52e~dbLMdFGGN}#6cUufnp zQVpQY_%nsx;ZXHA(@|Mls= zqD_i+`o`}m9~yXnx8#qIoX~wio)-SGTiioKk`kVmurK}5Z!{J-v0c*p$s2T21_kru3lk? zx^9cCVM5c4h;p#K6R2NAJg{*h%Jh}}1!cO5p{xlS%(U_H+j^cgeEkzVD0S%ppByba z&6d?nHLB52tyW~0DRD|Q)jv*~`pMk9W#gvyJ$st%?Ax7P+Wq|70)m?T0vddLzj%9p z^Y?8F4(JFDX!FBprr65z>CSBrwru)i!@8@hS6qOGxyzTFU9sfc8uN?mSL7|3mp;$< zpvkmD3#J}hZgO$clG~Q+@?9)GM!0rohVxD*@-C(EuciaX^xeqd-^}D;&KS%q(|uD^ z!~_YZ3@B>?&o3BdpwOxPTp|=bHJ^xX$_WLI`IPMYG2ZiCq)R2&4ki-3aM=2E=jwaE zncXsq1mpkcCwa62)H*`i~|g)J0)+YQh;ODAna8n=1L-CB>{p7v4Y52 zNrGUnAVR-2h1H1S8dPZws=NkOSw&V_PT-j1SWEB>Q-rdR42@+;bMS;&^0?V}Y|zhK zJZ?T7XG*}YfV(3C{tW6K8goBO(T$_xrK}O8svWKlETsn)oIp+WU^V4H1(q+J5=h1e zql9Q0DTRp~WK*&gC>YI5Qao>kYp#aK2ETd4DP^jiKI<&uA%49EP za+WeUW;8Z5j4?%-O9-@;vXm7v=rU>YQc04TB*9b|3#9Q2WbyOl2qriJ(9A3Xeg+;l z9WOT(Cv6}vsV^@%1t(=BFFRk3v_PJ`2uCo(6P6Oe97BLuMuz6UKsFf4EGJV}5eTb< zD06@$<;o)YGXZ5Jd=T+aB}qV;5V~X#QNj}^ZcT%#X(7tM)9@I|co8LBXcBH}a=w$u zUQB|myyP}{@wFsLXxy?%9)?O1w$h1EskDwF1t@cXEO`JYVJ9QuhRW?=6Tl9<8ZWs@ zT4FmY>&+m6?bm}LXUCL;E;1V_lAD;afHDq3l(A;W0LnPBs0+eJ=k}Q*fJ^xZTR=K4q$8uMFmx0X?P*%Px&ufT5rXbL{?AYXP-Gv;{r@R$(McISI)I`$!_L5@x~1 z>yQ3nh4<#);fQGaxN3qu9Me>=_x;C=6((6>PZJ#_eA+*pCG5LE&zOmd&R?(dn9_r( zGQUs;m_`^_ZFV=W5OxWr7px2$^q7g(8Cd^6gEB+a{h|t{!SX>EC5@>vF9pNUBCi;; z{dN|gxO3hSb8@)3#fN8IKhrq)`RmY^jvwzzKVCa{EZELF!qzJ?Iy>oZ$+gyz`j(Nm zSDxi^lY{KNy*#+w6Bn=6HnwyRw|0Gh*Ew9>JyO#1v!rY2ZB<=<=J7;_AntzOppb)U zH(!9^xBu%16ONv)YVK?s z{L1_Bv9_ro^>Dmbu#1yNP^* z2ZTbl?p4*BW`1MA+lL|X?sfsO`~B0Ca!=QOd^tGurF)>YW3c0WQ{Ax}SNFI%+xokQ zrN>=;bhSh99-;^9Zuf>SC=kw)EELKx6}^ya6Ix^@aEy>x1VeAyIw+w>M17W7Lue+p`SJ2e`s;TGY*Pdtf-|n_PIP&gTL`{JG*G<2b zo6fJ%)_AAHE>~igYN&iL(5qj(xMlr@P7BL+2j^ZlFMd#XFE_FyAoQzGz-M=#22bB_ zzJaX)!EOFQ&A$HC4z`8X7B4NfKiszA?#4BLLTp-dd-Iw*UnRf+~WPoD?H#7f^GGLbx8fAK*NL$D;UFVab za=YzhY|F9ero$l(hy3bOJU>ReybZCf^xjwMu=C}f^^ez?|G9MjHItd=pvYNQFLjc3 zyt)QgRn0|7=>VO+m4iFmo8w6< zage+qZ^a`P6sA2}#Zy%~VAAA}$y$+yy75!>;wMjv)>4gAX2mPB(v%sQO0-N+WfW;g zmFXwcS!Z>Wt{7_FUNG&&8q+9_;n!OG*MYuG_xVI&Ecc%IGW^lm-!_STE&5P_g z64`^{OH}ufXowzB*LxN{ij)yLOgr+nT>_?Y*Uo zFV8kUqBkj7Ss{i=3#P&}X_6;Oa-gCxw%VFXv1HIJ8T6ej&;ZywX^fpHbq503B`U;b zDq|C!wSmrDMQ5&{(U;MojV~xM&@F~-%3#f>F-<7+*<|WW5_Ja5BEV4=%TgA}QcPvh zg)+zjS!9763Na6l!lVKdB07smosQzj4<^G77Ylx0H{ zr32|w-b4v!m^6t>IWckWP>fBMav?}?*>WBv2{)Rgk18%$o8rPI?!`%N#!0Rt$--Fd zEwZvZafEF&;(C_+Dnw!rS=<_tw33&wk&$$x;dZhJ8){vBHT@AnB1q0HNFAKQjoI)=Y?4c9}!?1kR%kY*}^W-|~x zK$-7=GUXjZA6{Z86YUt_=^n;SIC{3Kxf}Y#^!)hzp{Y1EH^GbR>f{v^9((l0z2|L1 zZ}}si?!P`4mEqy&zt`S9G$rfoo616H{nzuOp$ohNtEC;*K7)3=FdH z^~=pYT>t*<$l$l(en{55dEfae=l5i%SWioC_zu6IsI27tDi{yjSoHo$SdzCxaFR_x zR($s9>bK7Z2EVrVHFpkleQ5rC^!jBBS4aB*_voyI-=E#+?5}~~fn!Th2q73OhJd_M z?;vECfM$gL7~u@FQBiR$%_KsWaWl<0**&~Y<#+V z%L~hG&n>q-wAk?Hwlyc0%sxEd@aSUWlgnnFTQlz_w4`&`3S%8R4}}gLOB9?Jx@4{& z0*;x8GF_s2Y$3|OlPOn;w0>w=NtF`dcTYMQaC8WBpWzKY6r3JQCvv<*~bEtR~S!Cb)6oX^&n$5Nlm zRD+nu5C*KU)aSD_=QAfQWb2r6bWIg>VYz^%Z9>zSMOK|bP&UGIrV;2fQH}{+c`ieF z4o%UR%rGKSrxPhN5$YV2HkU}AM?xU4u^f-A#F2lKBW@<3yU7e|D)fR=;p%C`8tbRe znGW-xGiMqeo~n~QMJrcFHBW<+qr%8jpdP_!hIT@od0tof`YgRC%S_6)udcJ*)#7RU zHO%>2v|DSuS7+)d%Jk(%@$;g2N1}R;M2S#F$T2ZJM`L(L;&^!wB9w{k%8BdDiR*yK zj%@>)$%t${6y9<$v?Yz(oEi)$(-`I57~u(XA{)6bP5vOs*nM)d{%F7Z{ekV3mODy! zZZF!p<@ImtA1yP#F>m&%sgpC*mE&0S2nv}?Ljq~2FBO4S$c|LhhDO=PpzdSRce6Pb z9EE)fO4b~ueJlkF=qSik*v(Pisi?9|L3u4(VI_kF<<_QD+CmC-E`>G+rOZMoGsu(~ zByvI#g9W*+3>|itNd0_+y5IL{-ToRmu1%><9xD4^8Gq z7G)_;3Q%Uctkf)moC%e*kVRd_CamGeu4T)ur^#(%5%wxlY?bH-*oZwv!kI4Z!IBD8 zm5nu|rLNFCxqIdn{|%4xJnA2%w|=_a-<{uw*dm3Mo1?jpuv<6>}7@J*`l|Dy%R&Ie2k*Z-$3VY4@dE9 z0-{aaGR`HUx5M61=m8Qv=Px7&9f8NBAkkMAUD!vz``E{WR{#zZNizQ#WhTlkLi6t^ zolI0~08oU=pA(6?H?)`fabZw1p~wR(3_-pxQzGX z-RF*ylXot;MEY6cw(U9a2M;{-LVD6bKzgO3PZRRz%_I+#>)Hd-;ngylp12yj(ijQ8%aN-8-^Y-?O zPdInyUSl7>d9c2*uliZpiKUr!|ELiBDC!-4!y7IF6yyD6_N!54|Ie_g-I$%Jgvxv~lnZ zPs}{?qP(DG;B&_hptri#;o26#+m3#qnYx;$;>4UV7k@vGz~qFCQ}5a<8U|~dzJIRc ze|S{&$Tunjy8Su_apQAiU%!9ZHrV*A>~8Fl)II)wyS=@S9m}hKUp*{n80;$)^uB56 zFFE%l$0ONin~(2SZ=dk=*q0SATKXEwK0Zr19A+OFZ|!?9I{oea z`F-}~(^lTjb^*=_c}Wio?{p8;K=Av^1^vZ>0pOSt2>wu6FE;rcOE6(HGm0{!|Feah zj@e}ZSw=(X4i;g}ILh>6C{xl4UKv3d*kyY7Wj!Fw0LOHfKy>w&we=OZ3JP2LUpIC= z?Rs;e{`$essX^_|2Woe1ZZJ0ZsG(f0%q~(@tk%_fZ!-7msx@7^_x8GY4*LZDh)5WY zNaS;)Tl_-4xck+)0L^%RcJpoW3TW{SZuIr4^K`;!#>S$+YG<+So^r>1CH9uj_HDks zdHG4R8F>p0Pnpj;zjofW&1U!Ztt<4j{1oHKI~@J}Oj`e?gHX66$}WL0(+f!@QG!W? zGQx*F*V4fv1F0pDWV+5Jb(~3PKOWn1B=VaGWl}wABOELJtxBDD6x?& zPdhewa;B!vLFjX%su`rD=B}t>t*B(dWI+M&DjLO%&YZ(iox@a_#ZaC}SAv*DSBCZ3 zOqJQ#cD30I^*Kxph}jSf^_eua>8SEFlA<9&!4S`$E>AZ>6c;koOj#Q98LBf8mJxww zh)1UpQDYKCC>5ZlB#Ie{Vh*-b0ZNyzDD~rgnKq}UB3i6K^Md?o(Jk&_JK{O+Inm0?#+eUHon@l?%A5< ze=eSXX{O;ZJ&i-EY_Rx5QHkL+atIv>q9I;%iYE$LF$2`EmZIhMwON>g7vD+{ z+d-Aw&62gD%DTx*0nJ#W5_>4(`w?+ZR4P;%4NxJwF=hAD#kVVnZRdzNlEs2(G7)Oz zP*8>#lHTf4{<_kE+ERcriBn{<4P;Lk5spnGCaX(DbHwBHSkVT`-WrT;Y%n{^%$Jv% zAu9=KrWs^;6B^N+gTu$gxnUkOBA9EmyqFrT}ER}{`ntLOTuK6uxjZSpn&26TR?yTa2bVvuLp)+_YPI|4A<1R zm7chD*&{mGCLqu~HaY3k`KwQ#=YObuQ1B}E>~WtkuCpK4!8hTYWrv;F*^ zCqk3L-2wvK1A~vByZ-oPX;D>0*@x1qy7E_*4@y2f`_l35bNjn%_b+%v1n={7b>@bq z9lQ9ds{V7^=i(1<&fUBg5|atZo&7GJ$1h%a-%!o_S<^Z4_S&QSeldx*KA{0|ha(Q2 zdRbXr-T0;Q%ZKWQ%IYtbAHKe6>MG?8z8(Bg1+$rY21{WGrQpYh4#CHww+}N|1G7Th-h4_Z7`mrJwR^zZG;1)K`9a9g*hm?C0$hlAMrv>`UL<=8>A# zk&j;o-oL4P5*&ZX!6(|z$15x~@M+oou7Rc(W%pw9k}Q0^cY3&;KX(E?cz@4_zV7EE zgD@DO^iKJi(A6#?S94zxMHNPJLcvYlvr^yG^^RseU+?1A;1b&jVxmms3x8eGl`6m}oJHFWP+{#(kHZQ)vckL_J-PK$t$Y}77Cj7XNIdCNdP^S0V zAsz&jFF~K*34!S`*I-0;Dm0$yJeSygHmT=qQump}uH&)oN1~b!hkOB5Ce`C(m}8~S zzGA!WFSo6`z1;NT%$djZ^wTx86V!APHFN{DCVQw(vQ^gDrJ}w=S#^z)@)Ef1(HPSi z93uwXh|ZoyXBpDjh75&iOhqG>(sZ`+G=`!+%9@NY^-xi;^iZ}gnFRqW(-6f4c;zLi zra4o`oTCf5r+GA$S!B*M5`8L(YDl6^BcMju{TP`=MobV2Om8-4u&~Z3H0Bx#bvIew zhDq_!P>MCw%ULk{^3sJjRxG|{zTnSAb8an|d2g=KpR=dlG}eRc(j^0p>oas7nawQS zvhuUt?oJ`4#p%Z}{Ji|soa*LN(Qe?k<=y(h5f!6FGJTk(!3^&U^@ zJDv*BeJrW-Xj12q#7@APBZ)mnlDcyfFoh-~q6KIsDYz-dzaiWUMl99)IerF7#vQ7b zEZ^DesMxz1%GzIUS@~?k(uXS-{%$(s!VKNxlU1_RnW+kBGK&<)AjZIyB04FQK?!33 zen5f0QbRaQuChXiic+wedXSpByZR(MbsZbkNqbc__b97xVJoeoGR*MgxsdcBAtq#W zCJ~*ECr`zZ3~;2W1aumlKoWH-kursV>JurGNi;no6_ybCB$@%4J{4gap^WJi=5&++ zxHAK#&!IBs(mC@PoP`X|0y=vh70Xf?qYOQS4WUnl11SaoNkqbQ5@9BpG>eR-rRI?+ z^GTHDL?~_|Z=;YMsPfKqydPDHi;8h+5+MrmflO(4x|A(h!dhP34UzR@Bkoi=2cnn@ zq@Pp>9*CqbLpD;A8ao;0SIDjhG$G+O!l-RosU6aCmhyycD1HrHW+fuA5hu1?D9qR+ zQg$ddp?VV{y+KxNyNrYtg7c%30%$}hn(R(0Hnji-Fj+EW92xT7L|J!vKpAWjlMO|} ziy;@LPV-hGxU%JJSW=r=VjCG^E>v+YOEy%Q;IE4FWJ?81lK0n<^Vg6J*AR=-lR7j- zCf86d*HAufk~Ehp9yf^*tH<$CMs_nv+faF!C^;V|Geb(uKvrxzQECxgdKE_oXl6Yd z53!X=vS6at9GaUV>ZL;SRtBtUSy8R&;vs%iY25SD+}s z-5R@*Lupda8|bd62e}2^c^ul2n(SU z1RLQik2W0^es?$!+ckD_Mo)rp7ltx@qy6;8l^Ee=f7Deo?#LNm`FAKIGR+8+N~0(v z+A_vB6N{V1Q%>cg@j?H$Q0Bw8!t}F89Jt>5eEsY~qCDb~ed7}YQ&Rn7quhgh?7iIF zgTe!%63+c`xvH_OefS$R?LBkr2sa_rJut}CFTl>#FEBhIJU%WWDLgtgGCbKg=S7{Tz_#fB;DUW$lk^?)F~h)BrPr`FDf)6BqBR1JS#HkXymmAM{8ROO6y(#$~gIY z`G%!tow(Q}_|P~|-7rx7Sx{B<`FYgAJlDVkCx5@FLm@9JAGHrQ+<$#N`f$R5P_Biy z=lQcIzSh0}(f@f^@cR2eLEA{#%lez?R}b1og;|9KM`lF5s(RWr{Pk07@$Dz4y&}`B zypkP!BSRv5?>xBitmw(@XSXxYWIJ$Oce?KNh;+aF@O&e$=0Bp0kWobS*kjWPMpI7X zb{U~B7|SmG3SkGDag^bgbO=$VlUFhkWx52VZM}speV|+EKk7i5TcUTDA{eA{V{)|015}h^>n$Q&#-5wCx>>JkT z72Mzv*yP1+^9yec@^1QET=pl>J45`d%G!}4-FxZB4&J-$3A7xBN7h;*&6I@bykKtJ6)BXqQZ(*h8{Tz zu^Or|+L|%iT49s4xf+@t8rrsM+ItmLw=y^zDU8(!&76oXg5o0rlzkzy2qZ&U{1j<9 z9Z5ND30WN}d0iR8WO<>-r7{3zAZAin|A;a(pxkK!$}A(2){;mto5`Lc=QNHoR0%Fe&Yv#nMwPTB0m@)@ zU4ITLLK#<70_edLmGooEMQKr^_1L>%%p`^~^3Z>8m8{e*S^2#<;x-C~GOJL@O?a^# zWGu%7C}WFA@1o;2lBG7viS3Y;+>he@8RUs517oo*nSe4lAClZel<}m?hNw}!6!9)B z+5Jq(Uns+r301<2P{vn7#z#xqPeVLH6GNG_$&y)9q_d{Tq-jZqF~nmusZrWYUu9&k z0%Z>iSx+Y~CgbMFNgB$F&mhYH%B)~Xtz=5CWyr5%;kGh~fHM176h|h(nML$cBm}7v zLbS*sMrhI^m8=~zF8FVFo$LAOt|DjWG@w+bi5MrlVjeAiTkk z>Mp=B05PKY-=U1~K%uc$_@+W=5GIetvO?JV{>K<+m%puuJ}|~%W5_a!M`PO0C?pAK zW}I@yj~b^d5v+(DJU}g?7a4!e{}(7D6kxE75-`m~tP#0q#`cb@G80#@qeKUexo7@= zLm6nMQV6}~g!7DE300Xl14D0M%p`xP=5uSw>EADSM?%rBk8KdwB`nH0DBQu1>*($8 z>h0&@AK>Qa5qB{0-izA}osgYrIF-H^L`4$lcGw)z{V0 z%PKaF`!N4TGq0whqdMbkx^JA1y|3p1w;(tFNZ&Ajk6?EvZ%;?J05|WD6BkaGzAtU- ztLqslZytPoY)Zje_*h;L-DcZj=#*MX22*UP_W)qZ*YeWZ5y z$A|u5=#N*$A9&Y0__?*`?URCgsktc*J}$c*9UKDuJ)*ci09!Eg(r34opG9C|^o2W* zKD4%U{cP$Q`F8vD)u`+sw{T~d;BW}na4&~YXneQVG1SXG#M2|fG3Q)VS^dM;Z|{UA zyW6a(`TWy|w?{CM@BR0_=YzdZ+P)W7w%t4SXSP+a_bwlo@YKN96?gl7)OQO?E8gEs zJ9^ZOo8aIR;K%hy&4`Q7j1EiTdPTb1`0sOzbV@l9`LN{L*WOC_vJirS%KrX}{sE9- zpp$PI3>EJgF6RxGgXl6bg#;XfNiU)pC>u|vVw#Omsu^G5_k$!;IK(UL?JI2WFKiPO zw8Jna_~G>w^>twZ7I*jyriJ&ax&Jlfm^y2IfA=7}>S);KXs=J{y)PLe#U3~jLjI1NbL(vB$qz<3U?7xx;*(IzDdn`nKWk#9iT6)iwgIM>xi>bT|DZF#ZQ1R4tBDOs*vh8sA z*X)qGgML-9t|eakpB>nCZ`-=xSD2rjXOc5@ddj59VJee6IT{`cnpTP$yV#J?P+G-S zUd2{2V<|46u^~4x9i>f2sYVE88X28RM5YkPdN_iPJYHKKr-LKvktjNNWDH1WVXXv^JMmE#PtOYWhML4C!B-KTT>H@OzY!YV{kv)^bnZ;0=%~YC((x;NC(-7(m zD&2(1Uch9}qcIlH7>nub<Thvn%*Jtq%#9ZT&vlH8e>*l{=>OfxMoOFS*C zIT2H38pFMWDC6+S%MQ9Z*VylQYqh=HV)KiQ%O0#=aCiCKTV^w^%`><>OZU8y))@n} zQ8YNYqIp7J6YM?*wNwsjsix^_rB2pK($$X8)C^Wua#U8^rKq-%#$G|9EF&Oh z1jLj;hC1rmSjLAugNPV`5<@@?23>DodNj z)}gUUBaRI{KqvUnq=Ts9!BDuwk_Uyxi6&)*O6(&@ zz>LWdHpLTE8M2rwRU%kP-h(0m&xzBZMQJg%(xg`t#Mct#*O7>;WMnL5@z(OB?I?Z~ zLuLgD=KD*O4tF)pwc_3avOuR+`vG1QJYQ``FS> zEID7YtOriQnkun}DsD{?cc;n(sZiV$@D5Cwy$s0>EHMaYnnVy&maByKQI&I7kn~oO z^?|vPs?y}&od zj|N9!7j2=$jscA@#y|5o==>7kN0s=0tIG7iN$bU$!3d$`?=?yQG-Iiyi4Ze!{TIzZ zYN;R60)rL*ZB>RpT*@1H(=+l0nz9JT_vH7(Q01Y5zQHQ~U`<17>G|82e4_%az1*#R z{2YTrU4tT=1HxQ=xjunmVbO6ZnTgkKUw&6t)-(7`@Uy*dq~*rFGm(iQz%K57o}PX| z{(v%pfo{GYZoYsiHqpt!cb;Bu>V6A-^B$Mo$-0o{7ad~n&UNtMy7&T=I5>NG_y>%Ff>Mp8k*h!wt2Kl~?av0_o>~x0_>tw_T8zZIGu;pwnL8 z9ll9!$8TPEQ&an`pV$7Qq5Egktyh=BGoVh&-YJOd8WQFh;(8#+(k5`9ON75&u$M=K zQ_i`_qMAETORh&9^m6oZ42+Dsa{G4MKzZj#8AR()QB~7}jAKW=g2Nqs>_d}W{(Nz^ zv8Uuk#kJH^@irlDyL}FvIF?fPHh-93^`q};fA@p7;n%giCzqa`aEuJH3iOQ63W1I? z{Xaeqe6MKfe17xcoy43IzG306-uB*suC752&Oz|mY+b@_WAnnVJv~v?_`DNy$y7rK zCl!EQ21_SF^bD1C4VU!{mx%^nU^FAlH2soZgoR7ke|@1QiTy&Lx=;ASzkTb#%RM>B;}rpWiz0y6fYu>W5jSdE5`t z9`&(a0~T9a7S5@dJn5x|YN3wSt7+5A7c6eryra)O;Ac$g&-hG0nIBOH`@>WCA&EV~ z@tuJ&9sW_kG2MaDouR=UVF5rhEnLs90j>@Hj&1d9yjk{OS&E_s+d19J?n9t6*C@1-;hWgx+H zGQRUzOgo54IpGb5g5D*0m4rLIcG>%2@1|QDS6^Ma0#RAQdcOayFslO$d2AnP`cSZ5i|+WyJ*j$;W0J-!PkZ zcg5m|%jQ2{wYcE7Wu;qIRcu>ZzGF?b#rj&CtzTR$TYPN4gt>i<@o7m4>O2HJd_j*% z5FAeuoJ#IHlPWlyh7rt#EWyR>{!2LnmvdkV>#(KwTqf^qX5YE&zOz}p(}%i_r?nqV z?ifRv*7V5cwD3`siSTX+a;^7ssQ0j~b+&qEYf-g#TiLEnFE*GzShe8pvN?Y&o_=k< z!Ijy1myES98fjfLoOEHT)&(Qob4Ge6rcBD#)6CLQPuJB-(b0<2gaK6wK6DziMP5&Z z`gV#Lo&>R&h%6)`^KitOIN}T((Fl@Cc=9wN1#(6pv>1}nUz#Y0F*7L*dA2aT?Uojj>v2vNNkl8hbc=gbTpVn38WJ3DKeXB&{Rfj zCpHX0+F6J)o_NgmyN4!WO_6Y;$^p)d?_Mkj)*Tuq}R}Kn^?$pHXUeYH-g(vkl9a_^;RKqb?E*&xZo+IxJ9bDyJp|? zTwjpw(e?ZY|MOiKG(Ay@5M7$!Vg)yQ*gn>?ZcOCh7m6-l!h1Y;bz%OZF#4dfdIHK| zWlFF9LxKr<(u@<#cxnj)1$a{-HjV2g|G0uZXFQAaw-o>{OmP`=+la&%;k6h0f>#6Ab@wu_L@>%8YC$64|P00?5hz|(&503In zNJ}_*_WXkj1+eLENUNqQ``3N%IzD6 z@{T5D#T-5x^{DVdV^2}($2({59f>#^ACePw=k}?lPetGRDt`!`4DuepAz%7mKCb>F z?fkLGy!5lzGT+rb77V|I=F9zq1(hGmZ#{W>_|&oR*ucOrFYjudqoMRG5_y)f(g99!ruV)QxX1d zg{J+{p8-G%)z{&{c+E~v4s~zo2P2U~{>ncdFEJ6GOV zJ@4`=ldJ3I|FLDseXI45U8;easf-9PaP*(c8oGG6|5|q64UA^SQ3mtJ2pj%_Fat&z zY?=X}45%{alY2mt5xQi6V_LI9>r?&9qFwU?Z64e1{C&r|%WIaOTeLWD*6gIoMiJ_I zE-cj@B-T~}V;PAKebN@fAL|Hn9)&fR!iE6f=qv&<6HhkAksxLgP!kHnl%=>-Rb!== z&Pr`PGj;9ROvR}PeF~XsfY1%741I(KGJrnHG(uQ&s1U^D(cOrs~QuS zQ}MK^B>FUvZ79qsLbnH)IcC#2b7}0EB-$(@bsoxGN>|uGp>Cv5w?V6TGO`CjU8s~m z73DO2-7|BHuba)kyJYTT5N6h!7X!-dTwlHCw;Josb@n^HxLSVmw)qn70i{N*Dcr71 zFv`RWP9*oAO6@ECbZ|owPi%N9ExmCGn_U%q zwv_DHkiTL1lU0lEFPr!0q8T^mO}jqZ;OflDSB&*8PuII-qb2k*wMZmA5`Hq7Foi^%N+KDN5h(edMWQSu zkd_jNYso|_vaBtPb)?Az(WQdu(*87APiSq2N?1_D_aTzd$uN>l^`^-?qT+xuerzds zs(6?pF-e^ksz_Q-kz9p{uLjRAj<8l9zh9noKptonw~{Wsk|wng7284)vp~gd5J?+U zdMijd6WXc2F?4pXVV~VY3i#gFH{29{z99d6gX?GGoMVzmqOt89SxVBu3u2kX_ zspP4$N&2#3s^TH406o%fba5+0WO^YsMYyX&o;P%JI9 z#RxMp05Nb2hg085c-^6!@LfyYNn{%u8wU&55xSbk~(Gfi;D2uEatGX^uqU=tXG=p&>Y>{|UV z00id*z(w>@!czoaSyZ_6zowbL*n6?dzEFw5=tLNQ7hooC6uM`yHhNfK2aY;_|LZ98 zy}avZY1areWhw3(E)onD4Gt6!4wQgKBmn1cf90pPlClqvia$In{`j)E_GQuAm&Nb$ z%ireL)D|^0S3|Fn;U6D=jC>Ld)^zgA1wTH1`j%hz_HJSMpJi_!6<0hjseD;d`Kq+K zu(GD4{QdLF+81Bi3VXj-4*mSVhbrsgf{)F`FAEDV-@I}9!r?17Pdv}R^Rd3NtLJO) zz}vpzDn2yU8@bo}^L|5nMR`rZtFp)W<&R!hK7LjGDF5xFH}4*nynj&q?mmxN#jodw0+0kFw*jWf_%8f@yj$O$*e(mV>M`vGDp83#v zzh|(%|9eLllv4LV=~HDpzofSDQDNop1?A7HJ`@$dzf4F5qVH!uf8<5Sz_XhA%ChRR;_Am`AAbMv^&!-X zH*~%%th;}w`p%yfx9aPk3wqxE94!CY|9C|32wEq%3>DP%l$JKUe_Z*x;{Cn0jyL`N zh5h_{Bg0R5f{%@@wG}mmkMr+bxPJ1;#q<+5GH<>(Q~2dx<4^@}5Ysta21}8XSNIDr70Hs=QWSy`AXyNC#_Py%qeLc`!FxXSr-wQ=paHV+FDtOs0$nR;mQ~4z8#bMvqp$AH% zoCG$zJJu|#nK!3o#*EULGhfe|SGs8V=dG4}uMnXmlle0`^GEcdArNN5k_DlOg0RH? z@Wg?L#QuoH-q;yy2>hqV}dYe zkmyE4+B72FkVrSi(`OPGCQ#WcLtZRLSwf(%KsoE!>RZ(HEhZaV8P7XlvdC)I!cBTc zOB6I_BFyO|nlW^ap()OwDa>RjnJB0)R-Uv*Nq4KZv4!EhU50Zv=opzQXd07Q1|SbW zRW^1@Rsh@qk!A)0y=N2`qDu2foCQSABC_H#s>&J)YaNZVg~r)VVQoj~)+DkMgBhl- zmT5TU^t{=(mdwAuV)3(eOW$l+QMP-1we`ji_S@=Rb~kwLYx1@E9O=~NK+!wRmefQn_s>J*IpJAx!PG*>)I|Tz90}!O7OG-+_L{wDlF6{2^j;|Z)+F-|q zyYA}RQqu+aoO|yuV1B>Pe*eG!^E~@Hulu@l=hgu0eb487&N);z7;6x34H*enNKP?% z5(ZaBXUJ$YM;g_QMslZGL5W$N(Nd;lC!9F!3X~7UTE;G`QIk+HxtUibsrOS%k9* zgJ`yZGI3;D5s^`BLrb9&BRH0TGVyF&0vngkg6=Y4O%t#y zS!C#26VJuPad1NgxI&5LD3SF9DE21f@;DY*e2ZMJWhuwDT*55k+vczcDJ=XTJ}%l0 zH=Jit!LuAMvKnn~ImX^{l09vbh(19`oMca^a{} z(Og^}83!Y{^Vqg|0&2E^n!qDQGYH`n+(0rC1E@%jDMrAIx8o17<0bH@u`FUNiI7IM zER~YWovkOj6K8kkuITTyIo9t~S=93l6YFdDys5teA_qLA;c<>&1iFr(3~GaIS7q8z z29YALY6j#VHyCycPxLlPMg>UJ-v9T1Tb02i8B}HY1W-PC`Bh1#!?DOdSYFJ`G$^AW zID)qLgLloU3@YRx|2~`G2|WaMFmDHZfuBhSltBa@Ou_27{Dw9IXoBHO2Z%BEl|d3u zsLvPET@Y9?gAQzm%oLiOGT{!qg_&ml??M^10XnHXZPfoEH@=cLziTwUX*9f%8{a8( zZ?w91#^(1*{UdGjuS(tHI>p`hO?ULIf9YHP(i)#ZT1O8Pp^Xh1L%qt-pfWURn&qnI zR}Gp!>oku+Dp0mOY;3&^P4g7Ze=BslMzyLz`J!I&tV#J&qpdeK%XKZk>so)&w%*o# zxM=)vS=;hjX{eJM-pY+{6mSDZ=)4Cb5nd>b&sE0fa_uioYM7+@08(^FA(`s7RtwWH zAE^uv8`XE@hR48I+Lk|I`qJ-jum3H7Qm1vi3S z8pDTL-G`gH)>|55lh&x!8Q+1j)u6klZ~a|qd<-)mo*SP%H~yv5{?V-Yy;*g;MfLp$ z?L}4V-G&c$8(ROYZ`Qof*2^`&>W#k`pqg6wFQe{9UGoc-vA#+Bre687PWiH4^EVWq zztKN=X?*ZZd$+#jQPYRVO)bDKP;vc0t9_``Jc1?mQf{~p38p4vTT9=LePue-F~R=^ z=D&FCYYmoNf`1guC?i*0eWSVZT6Ou2>grqdHM#O8a13~80A=)$N!8W@%DhuuR=ha( z=+e5M){Vb3Df{}=e06@hA};EA|Gq!>?D;Sxq^4W%2mJ@VNYB$wn2Dmy+7I*Bw$5MM zJa3h5R<(BKQr)bjhB?*7xyuZ5mTDHwS1*~XUOZd5a9YFcNiV02Mo}jDLVCp6A$?CJ zgq}?eyO?tQcKnDpm6Ec+G)?0PWWx!=-bnV|1d7+P+r`YL4B8nbXw@|yU5FLp_kuGuiz?=pfV@l zWU*@u$G#`Hagn|+96vJKo5=LHVFnV}fHDIqyeO79QR0&2=2zg~t+ZR{sGb8y_6Z-^ zH=?k6XrfoAenN*%R4B1#1wlhRzO=j0p_kOPzl--^j{xA94DYTPej&+Tog*E*y7Q!+ zXoy-9%oBGNN&#g$F@>GzfI&b}0)%52;=T+?KPJ>YNy4e@C?+3JCLMys&!;hp*_=u{ z(Gpju4S~KV`gA)tu=j<*q1O_^Zl^~-$cg>6DCy6#j2Gp(uO}5@DD$>@IyCK7ZCa$- zz7&kTsy!nb&zRl+O@J_`|`$Z)j%`# z8y90J^ST4dJe^SbWYn<7MVa?j~4Lq8T1U2ZGtTlQ50H#I=deo>5tr#N)I8^Iuj{DL`pD& z)txWwZ71y`aq1&+>?w8%5z3$*J{U!r&Ma{kw#0`cHlYliC!(^2WR@M74K(9G=Q%U^ z&U7whpqwa7R~j2=2J%f{4Mqx`s1V2&;1~&mBc;)$RH_4&>_Q>BQc0dv3ZRTH4Qjuc z5Isn=PzueAGGjQzNgQjCWXvd&!6iVe-#HxSJU+XeWeX?+X`NAQ+(;H~j)Yz?r_N5IH#dsYG08XE2;F>rt~F=7N| z#&a#p1(u^FgfUVp6lG}R`8E}H_$dz7)7>rR_*pLOWINB#y3!Fp%bhaQgWa7!@~=Y7xP-j^ff{1l)KLH;GRNni)c|N`Y*bz_QF9 zU+!!*)t5G}n_$HNrvv$+kCvAHeR1R8uP*>7z=Ihc@UQ|Z1tL*k&wIpxV$LyrRQQ7c z4U#2?d{YNK#>6p5K@-HkK^XuGlm3Bd)ut=9<(M$Y_}UUyP&88i9kdM&j%lVjQ zfK;%+?gZ`uIcLX=Rfl7NW?%=5X+GkZwvITk@mnZ^$}nb{!9*7z7+@6e610&Df;$+d zAP-rzs~(CnwdQ>=;=wXg|G%RQG_h@c(Ae@o*?doBxU1IR)q~ShcUPyst22Pd;$DN{ z4wTx~8}8K`??b3sf7X3?qSifDYaZ&Ly=ajL-<~uEucJ z*mB>{e9vIKqt(_ZRo9x-*VKkuP0Jm13osK5Pq+ocELFxoRfd;J{U6%a>u(kRlB@6N zbblC(zc;r&P%5ve6j!zCn>u)kD}OT@o-6f0LYH-|_f>{>YGa+M1v>vetk>Urue}ZZ zROH%cDs5Av>Q$ZY2UW{Y>Xu6iR=Fl-CXN z8Y7@g(+#5rI@#3LsV~2kUr@gM*UwirTwFi?UlkeOjn9zhXQ+~gydE6+WWaz2J$v5h z-seGB^y{HThRO3jEMEIz;kpkC)_+*Au4Ue8-Hc_L>5D*;(a&CDn7vpxbD@0htcLm1 z8zJURt(#T(V#?@W#}2z)oOUHQ=3-{#_gRq_p>Szr=A&t4FP2WJ+q6izdyVekCf(5; z`lCCvCpKwLu7yyaT#ITmNT#V>l|dyLC|^P(84P7M&VIhU^6|_OH^=9k8=kr+D|XG` zJ_~{arnv!s1QE`9CX z`b)hAxdudgbQJ*c`2^n z^^`$1nUVK$V}BW*{H#3t&D7%O(2#fWWa!e{upS!8ELQHQR_^%$hDU2ol5qk zQoX6*(P8>SVv$S_r7&Qmb~b}DjLRIwA&+OmjxD*;L zn}W-s;S+2Tl*yskjAk()4OhiyO{5VE=rDQ-2X#rgVv9nlWtqrw91TB`h|A_!Wbz5Q zd>C~}sc_)sac$CQ_;@-loQI1R<4X7zWHn)U0kCBHpA1HugU zMGFyTnviS@_SiN(=~0@&xZz`!!UQo`{s>C4u|OdP>oH@Z8EgkM>x49$LB`b3E_zXa4UBghw5K0zF8pY}_bv;3HUv3+S$W#IhCwL02p+R{((jTHG( z+NQ^#FbDFCDR1>{l!3toZN}dAq!KE|0L@@1gQSo?K^XuS6n7AmX`>m_Za_2tM^NSw z%w>efo(i#r-qS;NMt4^aCga$2l8x1v$&9(JN)M!53(|)+8&;Tgh)EjTBn=eCX zns4e_?&@2>lW|)OtYEkUPi_TLCi6t4d!p3-snqj9M%*dq4>vH4OM&p&H z)@$ky0A9b#)lVCh4-6kJ%XQzWHMg{?M;hh553P5!D(K5}#h|-s)ZI}w-8X1|Q|q9Z z>yi;jNcFc;^Rh|zD@>iN)7@z@+tAE|7 zc&Si7fg5X3-_W%@Q0O3wbnoxh-(G$AU90<9uX>_Q80jReKVWWk@?_!?Q-+Yb08pz1BW{p}q@k1K+gVZfLz--%?X=xQUhW z>vfL|fHJzr8a)z_FKcRfAa6GHjA>6ZnMnoQ!BFdjwaA0^zL=i|^#WskWz;%AnJWh6 zPfY+Znv1X17f_VBqEKBoDr%Y`yHtO*S$$gzD5Lu6b;I|7GQVEibZJAynex~EuU^+e`aB4ad7C%9W!l0IOV@u`hz6j{+*O*Y#mcGkRMX~bW-Qdr zSfHLZ_f1vh%V`r{&zSgj=EOJCCp@1#>NoJplxEfzC*3SeyizdaMrrE9i3NWym{7N7 zj$+3O_5KaILt6l4bVqk0D06BZMl+^N6ZmFO=P%M`2FjNXR3l~ByB8y|V`1HfSx*;_ zubq(lU19w0l(6cEo-;%IDqWq&O2lJ?l5&yLc(F@~#4}&ymLziRFL3I?6#GDj7?!{f zloI&HFOc;WxkO04677BRMBb%NohJqkoZBa1`QV(j$;BJeO4pWTuwCj&CeXk~kT}=(E$%=ebocO#Vr+!x1i-i+kFROx1Fijg5sJ1Nyj#2Gd zrQC~h%z-ru;FzPE6cEQYDUNSe9^axmu}yt)JA~#G{Is_s8NCCW5SrP&R=#sp!?x=8 z8yCG>J?GVmnXeXCL4xV!oQWosDa(I2EaP@oVr_EFjl`%M;ZfImM_df)e?GX^*}(26 z14E7mbUok~yv4_FgNN5LH;*~aE>mR=!(oUfmzT_DN3+;bFj` ziVP5-ccn4Gp#p_V0bq-U>=KiUHHiVcbQi7!)UObp4D^^ls?gV#>rUi4Q3Z|^z5|&r zBk^P;u8ho)k-0Jo7ih+T#&cjGA!Bk(!9rH-nUGpyOPFjCg9#y~Q6*HeluB}@*g8{* zZd9@dmEuLE`H~sX#-ut8CVYCD$AtP}~Wc+3e@+hH^WWnkWQp1nnp%yNW~FqVoRVS|J6r3?Wf zS72Qxq)l)Vk2+~0*hY3p-dFpRN9j& z90?QL@RPkPrucxAf~)c%O?M|xkXn|qEb`$_$oL#O2u?P+B5Ix;EuCkRz_f^CScEgI z2hyzi(TJfio{7VV<}>2#*dW^^GVnvFxLhV~q{MQPo9!$=T6GV*gUMa5jEcLpbK3pK zM_#TeDV^#0l4}X0s|NG5+fKyN3M@Zb&xt+WQje2OgkfwtA7xnXUJi`bn`>#rG}x5 z4v}Q;p{mSXo$7fh<@P0GEegx zh32_j^Rr6-i`Mv?&Iqc{FZz~S#@3qV)@#PrAJnbqRK|PS<|o>g-yjEshz%|G8(Z!H z$7os~XILZK%5R{Ow0eRyVbPfciN3QxEqCx$j9`dh- zd)n5Y8@0FPy5BU0*DBpJn47I`xuR~ltcJPbE!T9-&lT!FRoY*)&F~|-V`zqQush&r zdEN5pZOhM4GHuX3G8*qTx7=vfUuo1`Z!pv}7=NxeylybOMyin1w{+U;M&pl0AT2HQ z?fpe#fGpTw3jH%h^B?at4_>Km)wkRQhfPCsZDUKVy!kd-|8`%edx!obaQ~mT-`O|yll{(cm zx$1^iS)&7BZ@8jS*Qm7cug0af4d1I?oc-hGmMhyTPgSPvFN=O%l&;86uggq+9vAnh zf4`f(`ag~w^1g6X%j{*XOV_t9-q5mWeapNxEz_&j6X&VMO;?SZ1~wX1`BcTY$*;>w z|18P-qcHnvQTB_nf|p~9{vK2CM_JCJvW$l#(rZVg-!0GmedefFD`&{JELQJXqdTxk ze`t&T$PUAi9l8^nw5QfVXily}(oCoYSaobQR-vsryh5?RTE2IweD`7~UxG^PhRt)I zRZqGDR^JiH`_m&aj8%L z??QSbdQ4#F!vVqj{W|UR_FwDiy~@>nzO!qU%yGO(oX;0#!T4(yCzivHg|2`C5fqaM6H5ZiYRL zA)(R4REn5F0d2;fMscLkosohjrVokXOJ;T_QU_4zu}s!57PXMW7{wx%Gp)z5tjBU} zM$jyB=oXnA%i(<6Wn9)m25l_EssK2KPspd^iaGc>Qr0p%&S+a)1cMMQBt437A{U?Q3M$uE@3zq zUuuUREwdiQBaLEH#)5uhZ(AWHj+GL|I^rr^ag`qU@y_@vcXE|0WxT{1+VK_8tcH>- zGRe?x*fLi@DG)QV_@rdERRYU0l3^WAA@rwMg;H(9nB-_4J;9CxL$ecEmT?pdn3X+T zVmscIT;;=9(A92xbl{oXunS8@*8Z^Z)vu>D@>&>I2eyGGWsMxll(e@R(Tb!dD7RKZ z3Bt`LnAU`iAW+<>Q{Jdk-Ka;?Nnqeb0z(t?WNZX+fB;b6OxuciPv96dOq77gGZ-6T z@(ebs64PwHvP1yo8-b;(+LA$-lmZ}vKoS~lPy$5K0cF~HYBkW^AHL1)&IlG86RkkaMYLM z+n)%og&l~ssfAkwMWHDK~3@Ov5rt$>prz!KJB3v7qqi&6`} z8Z@w97V`T-UZUIYAiur1{>w4_ z!Js#0UdOIwx@YXpJ1pV+P0H(yifc{s>+tUdgj@lE{0q{cM&h073Rq+sls_pHmlX1g z+P_b|xV@$3(6r<8hORB^e}7cU3rJy<<-ETdvO-sY)wpOfQ6}i;w>^wCBBG|Jp#`KL_-!&rDX8cbO7sX3M-+tEWC)QgLtk@XKSf&KD=1&5k*j z9eW`s5oSOAm==E$MsxSS+$qP z=3xH=y}O)^>~}3WvNj|3L0-ZiWtnwTM!cClv2pPX<;wZ0^-I+om&vy-SM6M-+P6*# zsingkAd7@*Fgr9ScWF-T(!%n@4$ZOc+9TUEhqoDyZZ#g+qCdP@dk|1&P5t)eZ#OS_ zy-wew%EnfG$(jKAhh`F;BMUn|NUjxK&&TJW$i_ij$ct>naO@v%Qd^gG?R+u@MF z-JN`Q1$b`{@Y(F=z0TWnnWyJc50B}NF5|_rkpl5hF5>=4=Gi3(r3oTgl+Zq$3qB#c z&SY_*t)LT06at0oY{yPCiH8;2*^1>!5qQyr-b_(vJLi6G0g?XQq651}`g93(@#`jX z4rEILV6qjF7+_=LMYQ!K5#1;xCkDldPH~{q5c>;-4u%*P3d@DWMuNxWfXM7=O^PB>(^#xBHf02h3?r5x zvonTCD1<>s96~k;UqB&L@=04*^ktTWu{2zPm{2UUN#){lBv!K=_=|b`Vgf#qO-$gC z!x+|m=r)7-G#G+i0=&Y&g>rGBP+v{O<+H3n_882w45Q-`DY$f)=tQ@jO{L9av4+6} zN1;_3(mckpm`@xjvKT9|7$LL({R3t#e9jS0uoXlG^6;t@8xL5_`%hN82))b(y`zC@F5NBYuLDVig{|~*@jxxrFW~%s4uhoVlU!s|> zf{5wlZO57~+Ric99K>&+Oh@SXeEr)P^k1M1Dp{Fu#LOihtzeXcp^P3%3U8YOfTNv( z+IB!F1PwTe8C*VJ`7coh1Q;ZgHx-KZXo7M86lLD4!0mgb0Sv#2OG?Eh{j0OD?`^+* zWXAFNL)Vn{yHObZds*tM(xG+PLtmz)K8Z>BD>1u%!~_IomTgckTH82xWz*z^z%liC z6Pi+n*T?3)ipuySBJoMsko#S_T=j51FSR=*7F=|9z8Bj4c}nd2qO515^Zpu@`}2gN zC$q-BUNOCX`!eO;)nNG5AJ}L-xcS4uZ4ky|8}+A5D1%ItJcgi*2IUwGWi(x~+R!)7ktn$hH@?WQq`gv;EZ%QF0bGFESGDk3pC#n+J1Io;FcAqM9E*D53syqT#_lw+@mVcyp{K0~; zyGthSA3g2Rgt^0&`SnTW+M`aBm-g$C^0*MW&mX%bjNq{4G@|G8&rGO zHtkwfx2^i!<|XgeFMP9Z!K-C6pUrPanMcEiJt)YzJv9Ah;*iTRgJDAFiQb(LcJT*} z+2QZC#n)@Sm-`A==Xs7!a~&KeOJrjN;!>_Kiz~`t3zB(aK$&;}!ZD$AZU{xtg(~U6 zbnGK=?<@4^!E*_s+xrmt?j)WkMd-t@^XJ+Ji=0C2-MdRYx{6(ccrssxoi~;5P2mH| zbfwWcQ=xpC>O-Y?(y7i&Dxi#vN|lhw4ph1alw>2VnYnHht}BK23Cg&UXs$%6ghUq* zX&e%bMrG3JY!02nqw~N!3>*W|%Z40Hp{29gW|S$X_GUzXESj599)jT8m2NO zvnSOHSR(=0MY{JmmiARoS*?_#14wElM#8N4BoEv9OkZg57zl}+K501-xxOq;) zoukHQ7j^I93l$U`TyNA~uhU*@R9#gnkkB+;#ZabEaRuT(MHv)y03gsD4O&n1{}sw$ zl<>7>`%~YfotPvUOz-*MLK&py95N(#u#B5YfceUG0h=(}FUC)wpbVm>AnJ=b;AMND z9D}5dz7)3sgUpvUp$w`g{S#FNO*wVYBtCgOfAiV=pJK_ivzMFafjw}D>SVVn6(E$-=Oo2)=uo09JfDc43 zF%gDo1>0_V3lY`65FnFa6kM zaMJs=bDDOqP#svSJ-88a9EQVNnh$MlKDb4HYy;>qNSs)!K_NzSbd~1FDlHa=S85Kf zQ0+rd1_Dq6oMwxqGbN65WG=HDU1vJF%#ymyv2&g!be!+vzaeD6ftZYA*`rS7 zjXODV+WE@G7w4=!zhM3P;)&%E30XnCpfEee-FuLe+hA9>L|@;bodOHIJPW9y9!YfGT_z8=B@P)WFUJ?XnKc1XWme5sZ&<3?RIS{;LcMzppo#kEX7#bniep<8C$=h2ZdaY$sRmW% z^lsfLBn&5a=}+v^9NMHluu+4C3du38Y23M@ZtJr58y3A?x8U`%S z#}qvtp8sIj&|8_w*W#luM24LS?Rm6&@V+3w9sb_id_6aLd#-VFUFzU4%U(7^ESV^@ zAH$c7;M(Q#BspAhI^RA?AdTaS!DRerW#bB_xbdCTr zP&BruHPzde9!jLd(HNPW4k*LGkA-;!0vqV*l1sstFs!DCC>vO`#g>He419^ivc%px z6)Yoe%;{3jR0^fg(jtXV9Sr^wl0_)ZCYnbpq1zUd35hg3aLhnxj>oVZ#RT!1eX;tII9Ogb)y4Q*yDlbIGt zEX!0OB~3&fL?T3xEMn+{M3xnZH2D(BP`(v3o+%Q6p$DG{vnScs!-T})5~~t10kTdb zCAe`8_)2H1DXz8?9Vw%Q;PtV{r`r}Vh*=b?RH8*H2@WCV3uyTwYOa8s%_BlH;$*sI zJe3ejBg8YHaUVHVKu?G6zpD#SY|v4rne%4?X91XE=& z-NGz>V1f+@Fdv}|WL0g-CW7&=}nE$2&^q?ry&Mv?-ZTQl@ zf~hsARAVv%W4i&$eEeZei1t5#GDwG*eZ2g;9V8)Tpfd)aD&(GFj z3-XCRrYP9b@qYfNJ~E=p02Y|?L;xSC=7DJ~ZCKEzlwfa}w3Dyn0+!rCQ0D8f0tqaw z@je8y4^mn7aiZ#D?lD~v!xYoa{Bx91>TW4@wJPl`wfYu9GpgDSD08C@X_|+iOq1fG zTyfFx_T1Y?yKfzvb#Qk2f}Ad=()-pF#yuOAs~$a4S3b6(u&ge>tZD2N-J;bf%B*-d zZQf~}kY`E#_T*YfE$NQ00Wk(R zMtuYc6V0F~15IT>k^z(fj?wO`*6m*oOIWYpy5QCN*{{~k2G{DdB~$;LGx3k9;~rOx zcrc>yc0tb7jI{4#VvqIfzcska8gJhf9zNBceh>@Yz2`c+FK~2U?%=h;!E2do;A-FQ zTY5$9ACmt=;e?+m7vGq(wsy(ZYb$r1nz3S0c4fizWF|WL)|@7oZXV#yfXbdW%vardIrQgd&N8ZL`mJlc@Bek4k?bllX?wWomRLl zXT*loVT&S?X7n0d(J8ddC8$v3p3Ro!(}V>KyHOl*rO08nqx%{#(gt+e6yU!l&}VnI zPN&0rUWgC7nI7|KSn9K}1+QmLXjn8I5=&L4IaUdgA4nLEnY-JJBoTV3)w%fxg>(y|(&zZuIh4?drN%1{`BQO(X`C z87GvE7D$Ukjs-%8ETJrkZy(1NLBpPKrZAE%O_X>K^XX9*5?2`wFTg>H4-g@2(xt{(VWUtW`rgMpx6IuLYoKgrRTB>vH*Z;202WAP){G^Im!NtrC{#{3esg z(Vt^YCUP|90SDD!R&&e47LN7Y5Ibnw*%AsJCwm_rcHxEGfD`xAnq1) za6#LtK1CUfb+FygG!xPZ5b4{Fxf@|jO;F^F^^QVF2hM1xkpBi{zWIsZ zqy6I#1>^+&p09;j=K13JQJ<_C3(VOf)0Q?d2HlPtp3IVVefo&M9b-ExFo#k*3(&>B1q^&I4 z9;xVbur&N0;Ft|MaGoCBW;nL3`Pg;<8vXH&x)bZP$Jc6) zAt-}!42Cj5GaB&98~|0OT8Y?YmT7=v4y@20T&df?Lc4Ey)6OMtw=8(OdH&nAb6+f< z@qFRbXR{~$QC0q1c^S~m^`RNx#l)Np3qR1i@6M1OTRVqr3hK7jKX|F9?|f(X#SU)k z9DTO92d;JRyuvkTrEkxz1ClQmOsJi{^8TVN_p5i_TC=Za^`4#MXHJYxO$!K#^9fAw z503HjjdJ&lbMwe?_b&GDROBC=^`;+5>?o8=dr<=-{cJ1D``FTvR_(#|!K@0cX@ z8reB?Wn%8$lJN(M%eQA1uZ&Jx6dFIRb6ACY*D|qp5!ZP*%f6H?E$7LmiJj*;d#&>e z+}x@2mQI0N1ATXP4m{p3qx++O{;efqO|^=I}PPXo&AF`n3IJiZ;wznVjvm7vP( zUE8>`9cA7vpYwY0^uK3M`m1vEuj5L7Db2s1mvJLC{$fU!V@d|#TIqy6)Sb`MdJmNm|dwHz?6Pshe&6SSWn-Y-QlrmU$3?`p$Mj5t{!I4lH?iRLwBzicNp3Gur^Ee|BuM7!88JMqB z#Iw$0;PatUi47=2TTZi`O8}H1lu9g%MT9I4eo80F6ftXzg++;_1&9`5wwC>fR^cp4 z9G^LyLn|O#$CL5>>G()CA(u@Al*wRQ#WHbGWLy>%I`3JHWfEu5NL5r~J{WsB_-qy) zh9s2nZJ;O#B$;d$_-UXL8=u0mNC1@K*reIfhj45M(-4%2q7ssUIi$>VzI7V31Lj*5 z*jZr4(Yk54KP5c7GqIUHgZ%Q}r|l>&{4nN~?G>tvQq8kY#^rz`;_i)Wh(7G@~S zX5w@CmS6!clafZdvL|+NS(Vi9#DY;zPOWeJ?VPIVh6dWJXm7sP-mKHys8?NwXi|WU z&xA4!@@sX9YtVcgY`<+xfRG2OteE^Lz%dBQe3W1^u?w~vEZa+#5Cd;Vnn9SR?Wb)u%>6ac71TuB zjxrsw24NAjg$yVzSdIxK8PpSF8Z8MXUq~$hxPWh_q3LEr6PT=TVjddAUSn=iX0EqF zOU(WW%7E?nb78~0<=fBZFFvsU!;QcbNGUH89g;g8*S`%MUr#WZZ~kj5aEJdG)R1#x zKIJbhzy0Gfqf7?^K*ShSsxdDS+Ay<78_mGG?HkSSnpaGW(m`%9zlC^;VLN)24%cmW z(tJC01^J_oZ||d*9Z&cf10l&WsB(wUfM}$>1Hz121;Yve$w6gBI!%Ej^A5fP$$zSE z1eCdGsQa<;>9NP(SD&mdTw2m+b9~nWDSdv*j{B>4n6h$$di)gixT*SS^IKPK`mkn; zZo#UCsSDnZsBBCs`g>3YaLlXVu%~`KAGrJ1I(YoV7k|g#oTf4l(HRG6jIC_O77=%^ zm(%I!zV}NqpU<0Eziz&A`*J0W1Uj-wb9}4zLy9Dg^ z=(g3h%O;QR+qy-6pIA~;zToG%8-H82^U>P@qp5aH|{=HxlZ z%_qsHQ&B*-(%_!Ofjx7)x}-SyCp!73dvqS^69SRy8WbyZAIx`2m-&qA+z&YBWZC31 zqpOY=mG8?e+7g$wzW0#DfnhUTx=j@Mj^ntOvmGlqPE+_!v+SG~$UIiM`)u&-w8cMg ztH1yDz<@)&x}F=<|7tRzOvdvuB`>E})GerzulN{cj%?PR+@?FVU3+e~?))D8`F;BD z4nP>rAJG46pAMm!J-X9-TF&lmIlWtdY@6!Prlx)Cns%>g+yV92%NsW>t>3V?Vdeby zOJ=^BGx_=CF;B(~|D`nVUS8Vul$Z;V{m+DUKN8Y;U#Ebbem+~hy*7J#tabCKc66OD zmQ52%r;DUj_AXOo9+gs$u?}8kV%J=rESVunpbAoWj`@zhV|_!Wb?rZ|@8IRpsnvs1 zruGicb@L0Oa=KZOdy*KTOkTLiKHk|q#n(UC$1m2+BTVYhS7_H?Y(L1+37Yo|kb3r) zdiIpMbrCuEbL_wz16E&e223>vj&TYTdxc5728ukOX1*I;;!omxTeCgLTu(Z149|&9 zhk7MDI)hKAb7*u1g8@k_sZa8f8B%m|WBv||p(u)tTA?j2&p=t?AkQ&jz zsuSQ@i*QMYK+;2P{pApEFNQK`F*EFjWuVMr42Cl1=6G#*@ok8~-bJ9~YXKC30S97m zK_^K87-4~28Y-B+jWTU#Hq#8KGRVUh{n`)f$jQGFSO%&C!64;P=4eYWAzqm_jsYF9B3M;SD!WI`E} z&j#g~4)smQEqy)y3zUIIL1^f1gDQidjIvgRsEa0)d8@br0jf+x)5RwFrRJueG_TG* zzp?r9wu-HjJj}spx>{aUGF%1-LQAP$Q7NZu})DLM_KHXJi&gkaF3(pNPy@0Ap@c9@9V`= zn>H>|LD?|O27-s~ad_zNG@RK50Y$<(s9-v=9-|pR8O>49W;)OeiZU3%=nk*J0$u{g zsP-<07Pk%iR=nTcjxw*8&V0FO`qRnfcS;L>NJ%&r7Ivh6e^6z1ckj8qb2mU47@EDx z+i$t2&pH?H-7=p;Zb8R_`k(3^b-Y*X-ad)@`=y-79CNi|;lqWSAFVy`=k`-~Hy=7V zd&T0M5jj2jhe}+!a_xHAISh98On36m_6W%F>O9mVIL##>!O?GsgKxadCr;`eZRZim zaY}OvoX~U7y7Zz`UXMd$l-3m z7|H<0tao);;pDQ|-f=E?s72D5VuzWI9@CwCDrFv{?A?n64q0q*5?u(9W#=}+tIO1` z0~UnFEDgbeB0>NFKmbWZK~zszmzcdNZP?P-)UjRr3=ul?CNq0enEly;D2YRYt7j^p zj5mTZ;WEbo68i`Tr&xE7SP#D_sBCf#2zB!6CU%16Kw$C(l<{ZVb%Ek-nde}~fJg_w z2#I%pzH4`;G?0RHqwyf~JZOA(=m^YU0L_S*Od*rWV=`Ije|!c*NN0f6#?OY-nZ_JU zX9CLPa9F@G&>ydyWd$fRnt_KzOb!J>nNeJusbbnJ5`GE+SI#1g5Ly;-Ek;O*RRMP8 z0$M2nKY|Fk7@KfwiwKyEEnp|war4>q45C%EEgn!Nj!VqrQgWEKsbD>UrZO~KK7%lv zN37tHr?sIB6e|_7U=jjhEZ@3-59SqI8XX792cXOl1|E97BnwCxGEO9&5XGpLt*T1L~CgLW}X4w|-NF^ee8Hq3A;XsucC$j*KneIuM=tu?C zCy$2Dq5`SdrZa4SV<3QI(s;xiP-|Eg!&n617@(Ovjy3eK$>CUMu*@_AHQ_dScBCAU zZ59u-99$X$(oFb#p;f6PV}dU@X8hL_#(uY~;_>;7FaJ2JtOGa9jW_D+Z`3#5X>UT* zs}a*4e64DN*-1!!fn&{Q!-N?$<@C=`=Ko9u6EFdms565h z#uH{K<-b6ge?vm;9D^bVT-SV2P+XAP_&Uvea_pxszl}0j(KSE=>hMKsp)r~PltF|O zQ)&s;5l0K=ed&-A>PRY|tOJO&pUuQZ=0p{eUBYCWj=Tbw#sbw&K6cM^P>ZL1Xb$V&rk;bWw~Cjge*1KWiGeKujt?X_~!ne+CwwBebuTIMZnS-D=fbd_#iwPM-=`KZa7w34?`nRVSGU-|X^ z-7V;WquXtX;}xF$1*Yg6Q*ewgJS&kM^Kw7cHSl6&zgxpIU(Fg{w|cI8>oOR+q&mD2 z1_P;2Y}K6Jp*_1xeRj9v^iJ)`&4!a33@0`K&44hYJq9#m0vd#A4x<{(q1C!0Yq8KC zUZXjLNHwYhFq>(0)6sQ}hu75aUjBOPqBk2BykEEQ?do}d&91yRuHAFSE?uW8jw(@Tmvg~m(0BZV%51)3knfu=(sh-SHi&gPZ01)+_g{Q|?}?*s)5vxw>iN68Wn6bxUTvnl-$@eJQl3K*OOnG7XEMY?S<)h@_jsR>IU(UI2PAA5oUuEj_;CK{okNE&j!GKo z*DYS;7|sxebL^tU&WX-mDW3jG9)59PnwGgl*gHi#dn9@LC;0>q@$3@k9vtTE*Hh%u z2^tM@%qEld;*e8(A*brhC)1Jw2q0wP}LJtNjmQGJ+&~sR{QB2}kE@eFEC3O5K8oq>SnMcMK zQE=mUwp9{(B?VV*jVotcjTTxB=Mc)B=#xFTWn5B$Euolh6HT;;u)+1M_J<|$(D&6N-me0MYjQ0N-`O7zyKtT5)dZ{$&Oexnon~X~%@l}p=@fH*fvLCnGS{?4lY|j zD3*}RT?Mncc&tnxc&e)8_P!;5-8rOwc?lr^?X5cPt+&v3RCf!S(bs8iH9&#}=}TLy zl-H`{wQ_k|-#ko-F{>}A_yNSwjxwku^EDj>)CCjGd?cBef#dTPOj-HLvTb%Z0v2r} z1u#@H0nNWh8MAnUunwFAv=EGDP>3;UB$!gtaS6L2=+hR+&TaY)@(@P{5wsD^M-|sd z3JIxQLev^8{e%`bne-bo%3#+*&0#$?~TZ3HP0>@YQbxn<%H z3}sN7F{vrgc*f+?Me<4jE*&Z4^L6xuaJIG+wr7PfjmHc|ShA_Z2~qB8mvB1dwy=%= zCCVuDH4sW|jS5=fscIm*)KQfIdtJSzrbz>xX0A5MuQWGZ(Z9d&?$Q3cC*~iiF1$Ev z*tznQGx@Ps(ue#$x>!DWiebi_)`iPjR;|}AS)rP_u(5JhQ`tmaTJihA84cYBz47h& z)Ft4d%;m0Fc9ko=$dsIC*&XHEow0X38yt9baM-U!*)Qi#RIOd0*t}G+18FA%!+@aB zMs;GV3M?IGcgfG~Zalq1b83s>oUr!`Xv;4_ed6dC-B|ld9Fiv?ui1gWRZ80&?`~knJ)1! za0@993R@JGzH{i9^P^{6o3!BC#CexTP5HjK{A6bFzL<=yp>f-TBiDHJSt9GaSkh^Q zQ@71NeYW|BZuafD&Len@Tj1{C9_I(eUQfxmk&^afbnKb%fu{!c`wl^wq~A&lpH3e0 zYR;s(r87Z9QEgZ%-@XEVupgn!g@eY6hm4nwHeWj0^3$;vSYABZa^XnJkB2|}c%eDUT zzt>RruIbJ}i4q^^r#yfm?LmWHK0JRi$A`jpr!r*>I)ojIDP%JRY?gq-hLEtBGA6@~ zP7k5bdNbK^bXq!{lEa_?%8cVu0cDVh0Tg^G%QBw?U48Kt0@5^lW(5@ot?Y#Bc&0P$rg6N)m8WguE0wHP+fH(h46}#WY+o0|#@R$^}*xBAaZ!CG^#equ}DeUCXhKqTr)w zghT-)Rm$yWiw`B@2T&{{S;Tlg6|g3jZ3E5gkd`*K08%(e7-h0Zxja$<%sSveGaFnn z4>ww3QR!?m&BLV1u2exB?cg1Y{?H^+=KJ z2%$|8G&^SF^Vk--Y>OP2h$*lhE~Az@(h8--p*)ziiOUjLY6LNGRmB7_1<7X#@X{)7FQcruG1`CA)hw)T}4%WNx3Gu;9X>T zLrBCM-ySH+IN!CC{lt;{@W0r53#h2}@Be!SraKtA5fv5b?(Xhxq(cxC0kOL~5EMng zKsqE$1VoJ6>GgWA*P=VrXP=oN%wK$ezvusdp7mX8ud_aL=FB+<5zdSEe(${*k_{}0 zD`Jv$@`~5ZO@4?7>f4w#Ua)Vf_~;1eF&B=FT|7Bj0mCB;hM~l!wrIHiTz~!fUM|W^ zRp$fEa8ZUQ%pkrQUW{Lb=QKaY5RT!+QCLh=93Q-T>`nR6UO<`4$6l8ld~$;3*>#}~&TJ=j>$`48Lk7J@cLxQilxRe?hpHxvjB){;WsLVc&7>xqty$8P5yxDuOlz&SKa z$1Z8PN%TUUP+4_o;2R>X7Amb4t*Dc!X|v7B_qb=w<;cv&lufrYw%$(L*b<+0Eh4!- zG@-&P?3}gxab4>|73(94hWn&7_ep6SQ`A4NVO6GUU!rYUsA_O>iB_Sic7vVEy?~Gh zp<#EteVUvc>g{b>TpjNP`Tmj=3n=sV<~6VPZ0I|(15jr0+~KjZ6XO*HV|7In4d*9X zN+(+{PF}w}d9!@#*44MSE8g9%gm`}oqT>CH%6H9Irt3<_E6$BvE*vY%AGvU1@XVq9 z6T4p>+6GF`>mBR&1!nRu~ob)TZX14UW$-a|~5fbrO=bW=cAW$h*ldahG4_Cb!gCM#)KfvD*S= zpCuZ;OSQcgX}c+?+ej`kV$15%B@NiJ*3wG@mg&dnSjA~uMJ+K1UZ4eV=_;gX!;mqi ziyKfx)TtbpQm#a0%Ft*sbecGWCd#BE!D5Io8B%nb9G$8}qZv}DW=xhlof=3ZhchUt z(C1f}mMMf!qoI??=tLHF1#IbpYedQGq#5ZnR0;`|A&koq!=(se)-MrRB~6K92!>Jw z!m)RHT56|^e{<0gy+H%vGk70E=$2ni&JVu52)B#233gg6llh%_rW zg3&NmlZ}oN#m37}k`(Ci@{~vkY!Fm{3quQFbOZyNCNH$XY zC7uw?h6hPpisBLyzo-f|?*aDF!))dm`N^N%-0Ix_3U+**F#a!i7l4CLi!-o-pb2;V zAK(%9=0DCE&7NfD40GA257i(Z27Tocv$o$ae47xem@kk3#~|qW*$fUCX=lHcd^Ze2 zLjT>E|G(v<^#`{!cTw)u;c_1&wvbx|xCYX{KR60MBwhVu9sT1SgQK0mG0<&uWUzC1 zpmPvfUUIAQdf-PFNhiav18CCFHr#V-`1Q?Kzf?YIJaF+qTt!|$Wwvi=xJ`kndbz84 zPj2?RJ$onj?H}5^Z+PGSfel+_*2Jj;(2Wf$euts!2^0XA7mQV$8Hes|z%g}2L-pr+8_z?G z)}EPy98*>Pc;(5_tKj_Q$9Tm_C~iXPn<`JjdaUBa>|3ygfStqD`Te!0`>Id%T|L=* z`FL;Xk)Cr0Ul#0v9Mj+Xp-W2c@9Q#u%~|y%d)1Sy^dC~<+X8*dObrh!E!rw6zC%{} z*z#rh8fquiH4iRb4n^9hbWG|!0&a%HHwVPjc}F++Cp878wyntNh|9YdzwvSEu3xea zf0MfFe%$7kh_waYvBzA(_gnkzGV|PF;=a?!?Wle5rQp>1*zD%`+}jCxO_8e`f|Bd~ z-K=)$I;RELPMd~Uo&)e@pA15_Jy`}zvry{Ytx#SyVv&}-8out0BN0k1$@(I z#(`t56_2-;jbFbwcKy=Gjmx7quT0!3pSoQ!eW&u>ovQb3Ra}%QpQ^t&QB^z&gFG)5 zj$Al3boR*Li9NkXcD&h{_j2>vfATV(u8RM5MezMVkGq}@*PSdHEcCAGtCpxM7eT8V zrNyAi9F~Pl7 z>?pPbww`k8z6zRtvTE*PODw6(PWCKuwbYpQx3c`bgDRwB1WZ%(I~KxqmUL-$jW4r5f*1brg%|^ zAu!F6NlxdGGev2c!h|%20H90?(#1|NjfKk+C9jpB#)HDa0F=RIaj+RI+@9q!Yb7a> zECHCT&FTx2D7j>qQ?MQehJjN4`^(7Jfs2E>p`41dJLB}u!K-7V0 z12FqKMG7A;DzE~a#Z18r2~vg>1(HoJ6qFMk1uV$|t~9(4ixMbIfk6jBAfhnQD>$eWNhn_;ZCJ|4 zlBXvM6Tr(HM8}3fi8T|+UO7@xPC{rGVUU6ZAo&$8B$yyhN|YogNstmn@$no?91LpU zMm!*nFx036)1ae81!JV~adM<^38->HBkhdo=oM_iq=l><7AnPwUN?{DJZmcK`K@uH zw{v{-VgLBUen6SA2QNTnL282^j7@wyG5pO)?}Ppxm{QCwQ<|w%;+G3?GfhAhJkUV| z8|1GtzD&Z07(fa{fcbpzVFfu4zcw3zo0%~Juz1yb_f_9rzUsqGZ-G7pFJULVh3ua% z6wOi89B0e|$Hxn9sq>cvBsh4MT0Xl#&c-tiBiMv|$=p*R*99B_F$OpWfQB~%2ez>0 zd43_U^kH!m|H#qt$8Z=Vr}(gi+yElXaP^)?|3(=;lYL26`3h&uzV$Dm%qRNLeD#Ri zjqoE-_~_*a-0)vOnJK;-hOgqx>MsAu#hirm(fz>74{qsWl;OeFJZXn7`^^B&mrw@G zUqCZ}GQEH@$Ve0}%JkkId2{Q{Z`I$m9JzWdrD{WPZC+q`j8n0-?qw&FzcbS(ckY@# zaB%d%p}{@-dU7^CPh0aMDyiQ!n1?d2RE_>v3<)NMZgHub!m=&G3eD1s8dWtO+dBNY zGI8+Wj&~*bZ=pcxaz1osgPF`@Fv}1OzX-~l14)L5GCd9dG0O0P20H1@3*OGrn$v^z z1wbXQc)DM)vN^h3ZL7?Jt@2BbsOc3L+7(;6mD>1}!qe9+>Sp-rj@Whg z;x{}<+Wu|&p02pfZ4tTGqjG8z)?HnZbtNJLiSUfeq3IQos~Z#6H6^TTjLp6tn|&=Z z6HunkH>S!n0^t~Q=QH}2r!|dFs~Ht9H9IAzb3kO-ZuY{xoW%zvmmQH&IV8JmpY)>L z5(+yd<;x7r?)dmWii)})7Iw$q`?{AK#N9ye$1&l6GN8)5+Pwi#W~>0ROD87F3#Mv{ zfMcecOQ&yMnZ6D9a&_WP#bjIMG{hYw-rh#y{q>4>%^#r5XvwMJqN776_x2s-qRghO zzjM={tc-mW70~JLdfVN$#onymOs8CT`2}@lC|^Q^8Kos4%p6^~=%n)Uvsyamz;$F| zzIU10S~1yFhDZ!qD1k1TEF_aEvLH=t;cDq+>l8J2X;_{x_bzdZtPV|Yj?2BhY8#-; zo$NhTE7zY5Pu*nW6TQsHOG4R#CT&6%H>XKk3n|(OFS6k*v}P}`V#wLhWE|NGT*Z`p zWK|=Tjna*sH#h`rvVlq{w{&%@1Vz0lY4sqnCBB@6?wkd-B68+T2|yVQ21gm0mHh$A z0LMVcQ^|{H6csAP7>Bo_(!8mpP&z4^MM)DPWr)%;gm5dls!R$4n@B~kV&m6}QC5qR z05am3sB|I0EDp>u!0l0y$&w&PFa^B8q(VkH;ZV*n@0yOFOrV&k6P097!n+V~K194f zl@!Fl2hcGgG?=>t71x*~VN8k$7EmTZ90U(kEESc)5=<8(q=^&YD$W2#Gy!KO#*u-6 zetNcaj02nCC`7Vm;Ef3=W1;|{j1_}uCq!`&rrEJcR&=ZdMZkiDwxkHU@KA6F}VvV8<#P&7qC*r$k9y18VrR_fHKY$v^@!B4<+Jkv=>w)LHRcrWjNS4 zQ9`0Pj8GsXiQ*H51>=R#2^=UChw0py7!d&&rw}2Gjzq>q;i6;+;gV3I1-)tjWiT-^ zM=k+aH`kyIfmC*k2{orM>BKRa=PEjRsXdTi z&>NV1V2D@LHf;{nyAi40yLW{=n zpBbty9IQG$c=goar4zju4);Nt>D2C5hqt}nx4GxQw!!_|Uv6FZU25DlPv;^d?J_gN zMpwtS(15n6(53+IGp0uSmM`1AY}pY_ox>VByOq>-EmqsVROg6_$tf+XO54Ee-tqUt zGJi?j@_hCFKT>x58o%Y6xDD46*EYwlzLl8Mk+!jG)s}my8{3oe?!>Nb4qaL28-Ft} z=|*7EE&te?zEQ0np^f%lSIrzQ8(3b}H@~cFUb0lbKwkZ*#F7KTiu*VUyG7)83Crye zmEA5bvqM65tAtdszTpiYpYG^Lh;|sl5a4~o-}6qe&x6?TC%I|hm4T}1{$snw3lEK7 zJULxaI9+#cs=4It^^0%YuD)%reA{02wxi}<0GdE$zh~{cj+*KA>Z!KMDIlBM;Fzg+ z+gv_be`&n(!bthK@r#9H7fy|wJvwq?-@uVwJ=^nMZdmiz+SK2ZqaKF&ba*@7a<*)? zF{(4szKWpCGH5DuUTyhV73EV)7N1gHc1BCH#K^GJ%iD1`D4=La*kKa>S@GS`vEiMhc@> zLOU5D%qB_7K4s}_QBp7iZBIi%*E?q{%AF|S!vIBu6CfgNLnT^K@NOi0Fp(HWql7@K zUluN$E*KAx#1c#v!K8}g;v}#kVrYLhh&=)+Y+SMkA(q?82J%EUG(iw!Z0T4lihwm8 zXU8VmvPl+nya5hnKoBsY;4E1bTVc8_hi=Ito6>N`WQ+*~YevI6Fi7rfs<$x3p94kO z=wN8OCxT9u!R0QZZd}IBRb;12fb*9SEka!(O7myItR=J^0cA@=+0jw13^Yu}hPeb# zvJ@(ekAdk2pv_2U;iP>d~nVWndyHSWq8RZUh(#v!G#MYU!|FU z4Q0Nr^dMK~nv{7Bg%P(hw@?f4Xn3N#cdWfuRIu0dmm7y z7fCR|k7fIC@7>Yfy93XfpL7+sUffc-EvRl=VEt;Zt3GChw(9L6KCjnhy*+YZ>g0*O z-MjwD$$OHP`DawZ8~5NpZ9QKY+Wf6y^vhE9?gb0)O35_ID77xqY&Woc6cpUQZvDi$ zQ*Y}py=%ETb^Xd%QyDbTAF4b%T6J!+^4wHaF*G=VMzlPXd4r%#;UoepbBQEw{^%sa zE)58^EKdnmYN{zeh?r>OF1ER>%?240fK0K8d zF4-u(V4JMcUIn#Xvdd2?n_Mz*X>knuE+q3=(&k?ya=#DE?DR{i_K&Xgjckor*_o8{ za3yFq>)KbWZuX16>JU_F?pa~!Rb%Vd?>ejA-K%-uRsa5eJ#620)=sro zP2Q;-zkPMOwPLENe4_5sc*TX0E9b_`5R@4`du;T?{=p-=djVzgRzF*v{A)t^gAlKF z54)QVW=&QGbtYPsda5NF%Zk;NOSDwaYpR`9RW8!fC^I&?YGrxR!n{ydXS0l48jY1q zrYBLDX$(#VTOw0P3Sy10%sL6h&GKrymlz$Xq$nM99Zj-)1o101uMOoOQf3n}yk6q-DlDo-XW z(8voJR24c^lTJ0DQXGg-_(Kb(kykLt@hr+pAp%4SG{J+mcvOKbsLdt{tQDr@ic^yq zf{;iG7Z*(B2(0Je_b3SMUm~@Z1NGHt3o6QrjB>@Hyhs>-CM}4=@e^WOP;ll{ygQi? zP9jCosiDwxP6!{x#3Vs&6jHu~St*H+mVkn46g16?Wnoh|gm@ub81(982-rZ6U>XLr z7DR5L3R*FcT#^kS3l*=6Md{)NjH!4_HqBOqWzC_RF-S%foFN%&M8TWViM9-qGxX>a zB6|r5c);u@766ApiYz{75pDfa)>?UHniwTfm>4I{jF(^qbBJL3bpVv1BH>6!J2TNP z43KBg{zAA&F+#i~DN%}?DnUpF3ovjD8~j741P&@mR3H(W>xjc_2Xw3?CP|)@EK5w3 zz$Ac91Jz98*yKfw4dzN0VqLq6HuZH~ntXO+_|2W6*SBHtH8Kxw7%8`Y+1u9N(>c=L zJv7)o2ORTQfhU0gaPX;xC%w$%lDJ@j7=gczGThYC3;=y7sK5u|y7K@9u>&L5;vx&Y zg+L51X3WU*QHDoFU)myk^C4IL=U?)3RbN9Hp6K$Cx0kQP%t|sK%y3niS(HJ1HvD2J ze)%_Fq4~EeGea}8gfZX4%k=^ycHpminZJ%QU;pga1)+Z}!Gv(kJo$u+GXJ4tcP7C! ztHFG__>WYX`4|0k{b7X^R}kW!kne8p8M_P7Khn-qWk!d(AVz>=hN1ayci%|&Je27e z?rR@|Kb8Ku@%)=BowfU`b_CaM^}m+wQxj}`%5qtQo6XZz$y0~+PM<#2yL;!W^&6jM zuKg<}`L##LQ#;S+MmEnhjeb_ve6U!lLtdd}!SXw5#@{)5JxfoYK6Ln9W$D|NimBGC zW7jW(Z)3Qw7-$CO8ctUgPgh@SQ3g?EY6`(9!%G-(oiV^P+~A@NA7ZNW z$EqLzWdLGM1H>RvSAd{QBzmZHsMir$=myRbZ8#TZy*ANh90i`qpLkzV*J*ErIdPJ}c_n z!^+IvPit8pQ#L*UZTD16FX~#=m^w6Cx?VGPtTD8z(lxEpHLlS!tv9f`ZsByp+O^5t zu}aUPOxv(j+u*Fa*3l))_9`qmuBuYyVAl~D`dw<`4{1r?B*)y34ey8!z84enZEDQZ zyj4()J*&!$l_9DOpv-h@*?T~lyIhp%s(pXI;r)X~h<9D}(;YRFcM+7CYOR=TDj%=A zI973Cn2$2~qi2qd9p691Lz#7%e`X~992eRh*;5*>}priL|kHuX*pmn_YXtE;S+kW8a7S5g@;dpv_JvW6p(B`m#GSUOi!Zlm;~ z9SUmulnf3pH$A3lb3(_yz{LH6Lr|qpOl??NLsVu{Tux*By2^;m6941^w-twNgLj&E zZ`5&KujRNw+i9Dg(_RCI1IErrEj>@#`JJ-!KW5>*ThDQahV^ze%WbL_Tb7ySF3?Yw zRbL^Y94NNfQB2-~A*M!SFDBC$k*Kg$qA(Uwfo7-+$drXN@)9OplR?*I&`szx7ZTZ> zMhm4=Vi=SJHf1FnpUT1|F$ChNs3fXjjxc2Jj#~}{dVa=LL46k!-ObkM#Xwi2vKD63P2eSA((@YW?@q3 z=v1a4lyd{hM2KUYg-{L*R2=XVC?!m+KMfrOC_@!A2k#3^bV9ZmYZl2?h-%HIm{9RL zSdLt3DIpuS(ZX{V;WJPgoQAq5=`ijY$Dn*NRBK55E2Bmeu)wjOpzmGFQVlt zF;+>Ep>uIO8=oM~N|xq?i&4G7E<-^(&{1|kGc-tMq3!8tH@biq8yg~wj|R`L1SwU5 zxKe_cB8*97qT-=wTnM#N9J5jipDc-mZo(_X&AlkfV+x@8_+TgaQTqEpIqn`F?w;$V%N1R?stL#* zGcD}6HrsjL5pMh48RqyBOd$JtU3$5I!q-s{r37)D@Cu$0TH*)7F*Cv2$!%{lquIa> z&m76mF>znce&mw{f=&O;;N9W8uNP5(xEc@l&Jok}{25FitmkaMeDQ`a+kle>$wNW# zp3A^A2+eR&X0-d?D8oaUxxyu+>K&=?;@83Ra&qu*_u14EZ|A>)GW_q#%wP-T>hpr@ z$^DcD=I{9+n*&TR&-M$4&3EBI;^_^Eg*F3&) zs(MdQdQ_`}%d zH*MqZ)U@v@FKbg;+@h-8Y2o-JBDQDm&bOuKr<%*hZeAU_ak=N#rT(_^fu@qdI!G!N zzpK6g@fJGh*Fy8z;=YFSef8%@YtBqn7ED#1=EY>?=?QK?>%8&mg7GSd(_>YqN2{PA zP5wyr>CxH(ZWNByodJ{?Z9F&Ha1QEsps@}qo}GU!2a+>Ow{0zFv zuerFF=olSQTzXVN`P4$SbIN*Gv@OeZtP2-vACXvgKyu0c1xvR}EjXpDU8-ks$?86~Y#a?4N3F3*=%E|ga-Rnn|fGicN`YcVjprfb}wWze9hSEs3WRa@_-jYFrq z=Uq3C>kdw>Zm#!&f;vKjntk1`*jbc2+uV)_{BBhO;McFYX+N$`e3%k>FFv#@A?&+V zu}{}${IfOtH56kX+cj2raJ1~iT(mYlq@uJzN-T@R z&KBn6ii+ilOKg;s-Yg}%O-6pNywagX%k!7%oKrPAuV!4NVRBx}?1G-vB~!-=Yxi;o z-*N}PYPZk^@2EP@$Xc%z^**unK5^9^F_#^~N~{8k&3%i_Jc~_T&YL)&GjS<0b}lq< zJgIGaSk?T9ip2?ao1<#hyOfMK$Y>>rEsbC=@M1_?FvSf?kXoWIq|rc?fe}lpWae@T zV=0Ncgos#u)fo&U2HlKKv!+sf$Rs~1HIhb3V3JdWC~0g0_+t{l&O$|j;di|VeKi%k zL6p8um>Nq&IkQnA3WRhq>>f#4p^DrdIpHiC)}4aVrK1eNE`vt}&Amn?zx7ZWfOL78*VD}+f2LZlD|7Bmts zCeDJ6gYnuXG-PYW0BWJx2s12&Xht-G77nG27c`=gEICXoQML(-rb{7ek#O2%ydI5Y z$e84#rLifp*mwz4s-$3sEIvb)kReOVTPjo(Zu`TDb))U2@BV6i_jl_+56rS{ z9{^Q&_&!;n5JcYKx_!9{%G~5gpp7pD90}yX zQ%blTgP;rqavmP>a4(IVa3%@G+dqph{LjwhjNl&rWt2g_iqFP>0%iC#0}fwqhn`uQ z`9Q6Kk|kc*_S|-M4%7!I^Wfho^8w0mIR-%)z&!+Fxc^sR`@e@WGgpL*el8FenM07z zt-p*i@WC00Wj+#d>zig9)pR5EM4!fZ_lFoXABlMDuiw=d-vxro!9kvrvm$B#inZaBm4$-ZG2mJV({?Z!CkvvZP@rv%Bt6X;lDe1|7mLX zho0F_n)(mb)w)!ccN&`i;t@2Ev39!PDm$mWuO?l?i_T?o2=k-4A9JEWx-?>62LJNH859b4rPF5M)@d%aLjl; zpiI#m%G4E&Lz_5285pdHpv>{1bB6$BhR^JOv3LEqS&7}LQ9rFo?Ag7(f7gb;)~)JJ zjJOu;1vK+$WqfxsJV8AQ4D^aEOmF!Iv71b*>%*)kGDpU=tHH;c` zOaWz@_03xJO|(JV=iGAv59G#?>#k=e*gsX%=NB0A;`{!$p~i+gB#; zUY+W!n!aE6?qTEmhmC+T(_M8_oi*d_l~XsXCt51T>M!$9W~{7m^nCts!O@W;dj<~d z=-HC{JR3Z}aX&=|Jqq^h^s>L@WY%J1&}gpHXs%sltaa6p8zwr9c4oJ{UD|_uZu@&) zb+9_6qjo@9Y5!8CL(7*PRZ}~vrhZga{g|r8Np-EWAUGLXlp)HKMVXFesh(9CNLhxq zWybcU#`Z18)3z!waxAg&D|ZepcMiK~7hG)VUuqp#?htm##veGQ*u?p~ zscVsm%Nawbd|mtFn%2kEtd6Q$?Nu^aFQt(wq!dY)^CyZs6NHT@96bUPPzKt@ETPhu z6B+7MAypb{8HElgvz$WKWHF7I3_uwhD%F=l@u$(E=;TBeB}It3l7$C?iKikclfpny zCYwdd6QO3Yh${#vH(@{-e5M5cfGqors=`(YMg|GvMndV)QO0zX2LT;OCx!~KLRdmx z6pB6(@jBZapYB6z?UCKd*U6(k5_VF+c01Tj+-mnI~T%0{ILq0>YKR)XFmDv%&1 z2&ttcDNKTtK&%*oGFc1AtK~^6C9x}|aNBK^Ycd0WyRvuWm)f__T3{?T{9YP_-&CXb zfM&q7*AKnO2j^K~K1ncrL^E?J!xvrV6;$&Sl+SJ(Oi^4Q2Jj&nGb8T;Z*Zuz6SHT^}mENb2zcUJr$Q-xUKnS5NfUx8`|GZwD(W84~`>!Wgy0f?vD-L9~p#6OuU42 z_iN}z1^!=dvI*?KBSZH_dhYi9(e!Iq$(@3P`d!{F8@%qOd0g<&IB%-b9_;pdYxY#( z(Xo>UhxhM&vt{ecRcm@eVxD>g{%z~}mzmvf#unci89da}d0_AIXJo?omL2aeo_}9` zWvKZ|?~N-xx30WuFMr)$KG1q`_*&^$W9j=^B;M6R`}~rLn&SStbN#h2hN)n(B7a7e zDVVA%n5qW%Od)U#4`s%x3m~AA9ugqQ)D@1^L+$a|iN>Pw#&hEh=f>;LjRVI(W0l&X ziR!a3AbRx5$)StK28$03p4mT8xc9|@jlXQl_-S40vn{I!4sPz-v;NP#^v5aDcOyf( zCo2-g0ob>*jjL)#Zk>(=A`mZ(<^UTp9oE%2+V;JWh{&vOeSa z_S}DVuKR0S_8%Kp{g9RLI6eBC^cBBkCnKKUoq4?nwhSEK4YpstDgz@6T1(%8Ds!iN zvb|!evwFI_{v9Nk9yY!Ml(}CweXn-1qk8&Q%|vVESi_aEs?wqI^JArjBj-*IojyEr zcz6H4?Qb?^|Gg&lx8xN+Mg}|z^6c_jhow5KH$+V=??5LCg3MG(Aji!^5Sd>%_ zbtM~@ND}~#iGvn048c4h>Us_}M~IY8!9?Rx?&7Eb1?*}m;!%0wv&-c-3XxXf1l-6d zT^7oSiSi-}1~W+EY*r|f?L{K%5zrrVO&RFvD7yY0jd+9t{jihln+1 zPyl7jg;{!3q9zfiNyKYYNV;4jvp$Vr#2}b4@wP0KBTT6T^NJiUSrIsfoF+q90bOu# zs8GB>1RWpCp+<^Q0cAqO$iCuu7be<>Ca6Kj=`soCP~FWUIx}&Qe)4DIV%UNS!q6BH zpCyjO8Zqo@QA~!I;3{!Uh6FZE3I~xaEf_D2j*~)VNMmypNI7z(H4?Z?3G7B4=>l)V zTRRi~zF9E#edTEHoiV6L;7+#%(@a13W`>~P8L4^Z+i!UeTpm@-!y3MNG4pf>$pnE9 zE`NMUi9z;5A@}Sw%1>wpp`tl;hmS^E8-G<&#G7VV-7fGy61h$I&jQa?uv^tvsd|eft(E?n9rjO zs4@eS9RpJxL*w^GM!UEu(=|TWH3}#*$VZu1P%JPA{$Kcu1)3H>eiLlcPn0WUj3`>Qg3V7a8ucMJa3yrj}7H>ot<2(`yBZ|L0QweyqE zPo?2JLNoP66Lm$CH89kvaJ2m7(4}L;rAJ1J4-cN*-+O$=i-Q|q>|6h4|N6dzn_ll; z_t&P3pEHxbON@J(l?ko$TD?4)JzO6|hCWG8`7S2vuAldHch@^!Ubj6xABILe3XQz& z>3h}0>a?=P2_>}>ZIcFT$0kdw`~`|dit1+3S4;>m zi}W}n_P6!ve{Em;_s-nEc4Ys#b@eanQhvya|7mRk%ou;MJ*Q{)hW+7Si$_ZfhXG~s z4-G?hY45hz8?v5dB>$2S`F*$_pv--5$2MmRK$#{>?Pe>TMr-|gNH*CRwmMsO1-Lzm z@_!f|&=KZ+J_2XryEoc_jyI zzc|P)L1}ax9hJfq$Yqf>i7>Jlgk(HA5_-l+p?u^8)<~0%D~J>>mCd7L(*@D4fHFcT zBR1NbBpAX&89K|80R9!UDI4q0Bqo!I@gy9KWAp>t(0iT?002M$Nkl@Ws>zs7^Ejo%{fd{Ats11>I9r7iJ(KJ=+J2zWRf18Xv89!vB4>fb`r$}Nnv9Zh$)MxpvtV2 z#>FxPB8Y%8=uk2yiUC8Hh#?~6P;rXC1bAx%4Cz=k22le6DY!1do{95h;rsxz7y{8u z!DKeH3dH5fkT=Rx*UOS~WC&|z2-&iPHFCsE8T?9FOrnBd$^uNbJYk&zDNl~HUYfW; zj=V`tY_G|}vUun2;*D?aoE>`6Iy!K75E+Qw27|KuMqwmV`)e4H&Fv`j*S8yt%PMho3nRUZ_D9ONQ=O>tE$OdVV$4xMG4NP`I z3?Va^5R@4k>KYsDf~F2oBLLAmc%P@rfN5p`&>m)>4BZ>*z1#b&^~pEo-&N$c9tpX* z-TzTuaQzCaVoSAFAKO23S5BTj{O;`WiDO3w_U`T5uxT(k^F?%GUtnaPcknBB-@lw( z|FCoXB{1wwX3qP=M-h~%xY%D`+H?I<|DCIE+ROjGaiOodWTdHd>{{vDx)NSY*It;Y zIX_f;Zm_0k3=&M-yb_|vAn^gpAi@j;SbC9+(%JC_P-2S4fn%DBA*PxxOf_DZx(3_g z$;RTThT^HZ^Aj*2y5jWkm6M~FPfT1oIZ|?T<1_Y5B2@#f&BSG(7}*pc(+ zhRomBtbDmC_uGUOH~qbC`FnjE7x{fcbZ4+%XOQoM(4a?QArC`>e_RpsL)40Ueu4Ei z4j1)|F6tRK+B$c7`FFUul&Pv-Qc=I6s(DonIL7prnSG6#!KKCORm!?;#`bN-cI_s1 z_sku-t(+g(I6t;^`NrP$dnflF+`PJd{qFnucLxMM3JG}}9@ZTdc0V$-D<O6x3_Dju2+vYUKy(_8M=IKwB+KN2$ z>t8c8Z85WHHnpxZFuS6uU!tOQK~?9Xra{p%?ZYxlb_mIAVMy=fEZ8Tp^nmp8z2ZxE z3NPHwQQRZ0bVz*$hMWYHYD)E3c&n}io;)1@=W5@{6aWP*4&Sv-U);lq@) z6_&7I2y4(G$3$CBrs%hlo=Z6woCDtk6w_n1(F679VAZ zIy8z7jjBl|=`)B%Y?8SU!9hsSRg4fSO^jEdrYvNn$x#v|pk5jiK@$ifp#sPPA#`jo z8y_M}3>75@i{iZ*0^rfnp%JwyI6bm}Aq{KIz&f*W9zys)2AGl2kR40qV6tVYTNW}m zD>61HQ1j$T5IG9OELq$td2HGuT!s=cZy|Y|0ulCaR-o=!%-W(RxD2}rhttQ5aHvgq*4K68fo zcgQ;l-^0rthJZj7pKRt_8Nf8W{X8{j_IRKW9;SdW1Ng%2B7Bq4C{l0%{8We$o2mkGh{*cQu`i zuHPQeu{EMK$FI;vqs+nJacb1NlZW5uADJjPIdJ0Wt9^T(Zr=1`_S(ObGM-1Lz6?qj zc8eKsj`}Mxy?5L8xA~{uUoL?h)AW_IZ>!F~Z!CR#y%fk}toi&{Yw>9F`O&5#h%sJD zs1|z6oSmpVJ5hCZvKl-th|L8AmGR2LiAtzxIs-9Pjl4ApGoRt$hVuX`6HON;T1v(t z;LO)cCtFJ2HkG|=x%95}();U|A>OuJoV->tUI%XCqS4ATBUcMX%1@76JT-9PSbx#s z-qZVE9NYQg(6;CMxBR^)@7cEW#~BgralRdKz7Lave@Kn|CNcD3lz(@)_x%vB2Z3Hc zMF&5Li}*P@YcrqZWk21N{d8;gA6wS`wmI|HO&Py$&3w9J&0o87o*&ro z^2nAqCwKIp**ALO@Yt1n_*a?+p1XeOJ#>z_Tl21??tK^Jm73o_YJLCc`rC)Clif{Y z_Zo*g>Zfnjy=|$Qth+RN~sr{n|w)F1EeVLQ?EIt0W#K`X>0khmY zyqwzH>~A{Tv^ZF|*jqI_TQ@pe);pRvx!bk}dvr$zbVUTThj_P#`#y*bc@Q0XKRmcA zG_XCu_qvB`lcU2mJG(|3+XgF}T62p^6Z5Mk7FFifb>?=pX13Kv))jh|m$gkVYnffr zG`pZ`d{kC72QQL|71=JjmXs7?KfzWJ0D|Qea#W z)t*Xrq2OJpcyB7kk17~Q6^x__M$s{eY#0|n&Jd%3S0eE>|G=>_9s*EG*FopEk!a7X0CXKF6p{kRK8f2m-g{VU% z>e9)EESwP=W6s97GI3raln60aoCGIULMT#{7Aiyv6eW2J<6M|X*_68oCPbV771xpA zhM@>1(Xas|oFg7*gB8>#3K)_Fbs2(MYyll1L1PZuLJaFBiVYUVM2O*62@9?j$LC4n zHc4YP$zV6iqBqE(vgHLb6tSxp;&K-f)+rL!D-t#`-RyRuev8tZ+Wi?8m+7 zqa7vhp0-TBz6~@3@p7{3#k=mFvHK%EoufUSLw%hC{hj^XW}W~sFGudZ7`^w;Xy@NU z?GVrV?>_Hq`=__Hy=%SfHJfFk}3oI!842kH^2wEx)JXV`H%!&U6@Wa8}Jfv1h9kG%MM(+ zTq5BYSI^)Gzor@pX11U2Y~3}FW&mQ~RL~8TcV^ycXDA1;0E1nIdp3Sq6VxTtS$LOHRCwEb~F(Q>Njf z%m?@~A0y^aY(AgOq70vY<|LNcJK^2HN2i+Y5Q8kHf&ch;Hy@{Fv26CUpGBEb$X-Dp zGy^{dU30>4wMYcpbRW}`r2N+y7BCadz%i9Gurfn4(1V``F~}3T z=Ij(4_GOfrYAJiyeDVD!C^J!CJchV%&W=_TA~bU;f2j1t!1*Kng$Li9+WY3%u2)BP zygIn)pIxhe%!zxP7WPeg_>Y;|6Kp@TND%xA&diJ#_BCcqxq7JUv}g^!8fG^o`31%CuE~ z24(IyjoxcOQ08VWf-?1&$I6TPOFl-K=UFLFQe%FK3;ib4r_lKw& z%PXc!%f(4ZM~g{Ch)ah^$_0o?d9cMCC~PYd-IPoDXD6NfRNh68!*Wvc>4RBD9T?Y#0RX%t86GP}}JOo5|=yiee|!6*nyqac09zM?qJD zfTsZ38;1!Hr6VW<6RH^~Kp9^QDvW{$lyQ|HJ8@Aaf&~5X_$Xt?M4L1DDB~`QkD`*I z@OVE0#*vB$GbU7`0fl5hA?s5q2+GizdUU2Xl@2JgoIuuLu=Q9R*nSpe447C$mVg;c z(3ydS8Ixh6%os7D6=JLi5u{C@pD^B&gW;i!ix4_c1RE}bj}*csQZb1XOdy5eLL}PZ zu?8do1G1nN4XwsNYckP>Y?Qee)>Q-($Po+^#(?K{wFo9x0<%#H12nTy76rjY84S=& zwgNU+5x;Q}X}c0_=Q74l6`@_KoZWiT$6Pd9GXs9Qv~!@Vbo|ezq5eCgL+vjo@BKB| z`D(ZWIEIHZgIttB#F(MZ7bCzi_nwb*{yp3Q@nW#!kIzRUa3z0OVf2w#mv6|OtGJ$(Vc?>CO@%A`@NQ}L zP7rS|f-*=4c3!}GKFt7p0GdGBh--y`-`MkgFb}z6%xuXL^6vbA^8m-dmU}|pXZb=7 z4`q0o4VP(nKm!vG9{t~kGM~#U&CBV`u*Ltp0Q1!||DQq`ZX#(Orf?MzUUuo@w>~DP zucHit5g*1ZVZefi9kUrFSnv);0Eo*{kSBsYGarFV^VtP?7X+R;68gxI0~*ZS2f0`I zSd{^knWGslzJLo&DFKTsUzLHZO3Ou%WZqrB{O$%4Z(A=- zHkVE`LctV_MBvg)p5r@S9$5EeTlz2SlYU#D z{KtmWr+KMAWyXA$6#6JO5VV;`;r_qGNB*7|{X=v}SAf@Tccte?}ee_fUH>*}1}*W^CQ$$gTy?&*fSCmV8}ZpwYSHTUWE zoIkc@|GsU_@7uGU?#ljqU+&988(tmV(tC0Tc$tUKADSrRqYO`#c?(ku0A<>1-`#8A zsWR^#U7vo?GQmTc_PXgCHE)|Mc_=ebnm<}}Y_#z3=*fK}`#1M&&v~{w>DQ#FA65iI z`BI0Ea~l_BZaLfDaI(GbWP8KI{)U%*tEXLyr~M5dr<;DRxBT61`n%l<^1K`BdpFpx zEzs|7pnsdc-wiL%>u&DXUECmUIJ&jiIXBxnHrqI~*gCe_I5k^2G@08qnc7}6wrMi4 zYc_SL(y=I7qFk$P-YT(ZJx6XmM|P|Df<1Ce4=q+byjXRg z;<9bB3pY#3Z$k01Gj=M7{kD(2oY9^kTXQcE1B3hB07W zl=Tv<2vNKv8|BSFZKDf-Fmq(F#1R$w9BHN_Q^1}n04U=nDBw%L1&Y!G#Ti~g1Q<^Z zC=-Yih@?O?0dg~l(2h)$6AR_T76|5G!#TJ( z8a4(7OoCp8&kI~3=OwTOQ$=v#>Rl&=&6B}x zkQ3Y>Cy=8ckhwr0LqTAzoWME-?3P8O-An2Fmb3P%3hhx5+NmMB*L>l{5c3=Rlb+PmR=2azU0OWWP9&5cPI3cKsW$o z44ApiYhuoqWVnC=>@q_wGa!PX1`jgkC}*CZ<|`<}C!u)>DSo1dYt-eQ|C21z%$a9z zgSVKunHe_Xa}2^{5ImFtZ~;sK)r1Q%2#dh}*|&JTWM+~|^HJurYhKm~7--J(i&QXi zAqh@012ph1BGvrgg)(1H3C#k{mlj-?$ybTwzYReDhfrn?5fE1R*olG=!#u3{c>R%Q zkK)wlHLhgyD%J33QkXqt)bbucf$U3*ZdUNab?e-qm&?u6@w}>d8Kd)M3;uMU~n02gr2;7NoKIVaHzI$xaQ1obs?xGV<5(G zVFjcYAehi=;KTi=_x2py{QN-f-@CJ(?_T@Q zuC>p%X8x9&^iz8D_bK7uLKBzRu-{k4JxPuGF*dwA#IM8O^FE9Y2no0!1p=HKXNxbUAN)S4I7?q-uTznO@D65`*T~~pF8rN z?ppW9&fF(E*Z#3P=dXS1UL4x+`q-A&$F}vI+&Rca8Bk@$%JY$A9N2za${@!yeW&Uz z7iHdZ6HM2%lKq0Qalj=K}YZ7;{$zK*wi9dGzJwt6|VdOKbBak=T|b}P^e34ia~{=Rnt z{M!8eZ~6G#^7H|tbepH&T{piwEzJOzcV_Vx|Z=Q<$`pAsA1Dnb@cd7B*XioFzoc6Jvx4 z;5QjQy$%7#12DO%YtcHaf9ICDnRJrnK}A zic_Siif|J7Nce2z&g{E?jWXo^>|3Y{RjL=VP7GeiejXf^Ow+`YVe3InOcd0Qln|o^ z9hK3-Qp;C142wAGBMU=pP3mioAxy)N5Np*mIz71Te;UesH%SA;`92K&>(BnDP=+x% zlrz4o*RKCbxoHPXmRo7BuKM??>sO%O|`R!r|OaoX^0Sy5i_Hi=n1s5<4 zM=F{j%+zSf;H|$VDzf_;*Z-Y}!Sg+oVXYUYkff|Gu|T7?WRR69!9M~r3yN-##0<_c z*P-YJ%1i|x5?|i;x|_WFrqAZv{#(<`=Y~xknlNYV^Ieum{?PqT}3~S7=C{vpnP6qQM)ytqv?ZuedOR-g#iE6NQsL_&P zQ08(%EsU89u~p||s?Wt#pN&SbsT#9}j|HR5R2t(~9PLvY>0KJ(T@re@Fko-4k5leZ zhg?sG+{1QR`;kzwc)fkYD;v`nTh~6_xcaT-hBp>wPfb@oz!<&d3m&go_IQoS1Cu3p z7cF=&f5E-E^KQ?cb92`0TeD{0nKS?X{6!BIp*myoXxWMfi&y-%bmgPvYkpt3{>f^y z=j+U0ZLoN^+2+&MonLJ1KiTj7?BM#vasL;m{hu9OKRNCB=;-pn+3CX`r;mG`Ke{@8 z-0%4DfWvz zl67V7o@=;&q5l5G+Pe(OWS%a$ky?E*x%S-gn$rnY$0JJPgDWC@fik7O2TKk)u_EH|I=;(&tW2pFcTc!BkY2F3tY+(rg$r)2=Th zo1v~Om~~~|?5p#DGV?PQEV@2#LB`yLne$*}ExR*s*{#`2ZqAr@bK1-sQ>JH3oOX5G zZpm=M^8#0Gx_|`(Z`Gj$9C@@XEZRW-;ksM!{Yl7jp;KuxJN&ab_T9k zP1U^P{?=W*x*CV{864Jsh@Vma10A~V>(Ke2K{xlFMhA_0J9p`7*}9#ne)H8jdM3Kf zOmv$s(P_R&(QJ-FZ;FoYG+q7KdU|v9^ycg7EY_AmCJL-n6s=YW*UNbuv;`J=Vr#fE zdZNuTO;ZtPBTz=c+omtJ(H5b`v_yxG{X{?+XBpS4ox-#z(HJS$Lgr?=F11ikx;oiEQeVZNVtMAxP-)%(4pmpQZy|%u+?4R@cRPm<^+44kQEvh+!5gVO0Y3 z)hcYIqtmpmq&&w9(a7Djms`yx1ZdbsZhRyqDv?(yBREV7hXiq$wN1Eyy`Fp?@{!2g zUScdU^ag5S)W|3R3)nNvvtN~;zAiSgAi^?@(v@Lvg_om{#ENlTnz}NiZiV}(xrZ%X z;rRbh=AUzM{!=KUF5Hl$Z4;Cs{mi6T^EFa@_2d5<%BW$5DFA(gGN75pwj%-}e?l4N zvo(IgzvUQ$MBhajlJ+GkyItHwglWj*|9(mhhO<90@byQ$oLU_aR==zknniDYxgC3ad^Eu7DA8+^_5eS^CJfPgk9bs5}>rxprjF08j?)OR3?N z%p@3$=&fW#`f;EWB=bvBAgST?ry}Z4N7klA)t-y4y+Amo?s8o96{4EU@yLkOvAU92 zcQvv0YGTcmgzC!)RhQ$5OK~wCd7A1oQAh!o9t$c-2q=p4EspU8&=f@+DF{7~7rZ|Y zK;yS3+so;TyB+cetZpIe(h+O+oWdXsymCOCOyzV_bwmA6+d zzqe}5gEea(tXcQl+Vv0Dt$(!M^s%Yg;|&{sH#h%%5q*T&o*1V*lPRI zdi!hJo$q$of86Et$$rnLy$8Oy9?U-AmVMAY`=HyGg9kqC-}hnv-uL_Wd^mte@}5tJ z_k29;{Nb?Udv}NTM;tyLb^7A7C)eLKKj>h-ziUz8!IDt-Qe=K(y~~rZXfwF-RCvWX z)ZOB$uN|+=NU6Jdy8cdD!@cwM_b$}lIbU`2Y}t)dr5UMJ7f#fq9j`f)P?H?RqD)!P zkrM9%#Ru)PoozpF+w^YBx))|9f2>%5X}@>pProw{nsI0TEa=9(sTm8VWG{2ZN&>3_aQ!_;$fQ%OBzf4vXwR*w?U^XJ-SiuHBAy>)~c#xW8lP z-EG_1HgB;-Pv1;O-&9+7osRxmon|m;=4pR#Qxw$>4Bk#IK%Ih!c1m4dfjPrOZ=+O8v6B`>0VNqu|m;DTc@|Swvk-cQ;NNqR1ZqnlNK3C#Jy!0WK3g39vYFx$%Rwo zq8YmMJYCrW9obxMdX`);L&pDAqVX$?8D0JqeI6_&)WT*cH0SFJO!UP|bp+S|wM@=g zgvA9qhz4u@qTmgbYV{Fudx`nIktvplhfC;DGRX{?Xud9H($E`PQ=8jMtviZrJBe*O z@oizrbmrK1;yQHXI(6Xg?Vxd>3*V!s%(tKZkpa#2_0!uwu-W06{ZDRR@G#2p)19dD zm#2z8UoOteD8xRdirY|5`R$yt+l&E2j2YM=#Fi+$nO~4uP?(vIbFd52CuLYjc_+7& zTnY1rHAU2QoPQ(AWanqFz1(a&H*siKW+Dy^ff!bdCG$1Pu$kh&M;R4QD2aqMQPfAE zh6-^A@u*mbT+BEt#9U#;q+|%1FrY)O{65O4Tp2aZC=H(fekjwVDf-V_82_%c#6JFi zUV(}6KM297M1m%)CBv8~U$M(KSo3|90a6gVg{d(SO9pJjPJAKW49Y_Um6XqxlQwA> zGwRE}K`7>p)D3^jE9PRbY9Wrv8ejg`1;g@ zx}=zj$k1YcpTfiL+57jub+U(}0F{>!IOcN7mhDDi%Gm+q!IxK%iMF~#K<+z%w z@kCb`lmW!Bx|&pXEeSM3faWTBupW=2t?67W2?C!CtH6$KG&IHgqo;{%Hi&dD3U@0C zIZzPjn&-PG@2FF@hkc&AeSy1u?tZ(E_O>4#w!OErezkqea~tez+WdNl#j9-=&#gB- zwJ?9a#p0!f)m#{4?FBX?Q;BV2Yhk< zZ14QVVQ;pRYqsE0Bz3Zvr@TLCXY?#-Cv|cnY;65++8sH{=zx87R><1+*~~4=F-`>md(DkeEw~dg|}BM zzP)0}trbgdE?;(Q`HH(MSKnW`{;tW|dnTq2R&0Eyyw=YAM^VaV`{!+yRnbU2dK(5Zog;(Ho} z8TJe?H1_Jy&8Jh3ke>ab`VEfkHz=UHv6q1%Iz!fijjl;23&aGqIHp ze>2Tdqs%sfGPI3cyg;Ib-PiLJ92dDpP}dem3|sANDO*KAgfm6~l+l_a5H6HT7BpAP z(xxU+S`&dXQZ8oItc5Eh6Hb?FO_gXYl4`BcrGPRfa&#(jhx0ijD9$)-EpQBIW-7&> zBG4Qygdd|Z2q6`T7$`FkJ1?b@KD3x{3?=SKQ9Y&7UNS;6Msj&CnY4$5>PCsWi3OmU zUJ?%g3ey>ke8# znH^oYj$JezI&mG_ah%(5_O{n>>qdL`(e)nG>hO@(t^@QPMtAl%`6ca;>C=lo6)#Vh zW?w7Hxt>>$kyUvI%Bi@MQ+_A6>~X|G8=#pyRWB0k8GsI=Gi-WBol0S> z9aR{GDF(s0A=PDT$n{@e+33o!=mYM-Yt=~9LAafx_2$mv0#2t1DGFLKx*c zQV|Br8R{#^t?*u$0rNG}D1nBoHBeHN>NAky6nimYAc8)P^h5B4B_!tafBjnaDfUAW zT4G>@l#P^PI7a2lu+KKK4gnfQI4La2%r86t@>A@?JKlGbUCxJErtdXNT01Rp>d^S< zW4;{RT@v6?8Rl0V6I^{PvMxEME;+U;DXJ_cv^X>%H^3{)<52eDg9Y9mWg$MbF(GKi zMu7>$P?YFXdd#o*gnwyD5c0ohXsW#!RedfJTa&QMx-;(%7oM; zht!@7txpYaI33w=CJIeD_2*;iFUHniimQhi1Bf9?fCp2HxGV4l5Oe)lZThjA>q_BA zkWC%<1_7G$v833(y#cP|JzSQvPqAYgy7|Nauc{lz}6 zg&zCz+?=xyIDB!n|LnT^%YOUM`|UsNv;Vkv_j~8v?;PykIXJv`aD49wIel<+`sn2R z(Z%HxmR0T9`vtJF??5)J7uN$>t_ScVd4zFdat>mVf?Kxx;T#W-+#^SFJ&)vgx0o}yAyQfjJ6s-pv@+he=2!qa zyy{Lz)}4=mJ5_(}7z#`^*H6~oI8}G+Y{Q*%b$8C!+)As=JX4mQT5|1VMOsqT8G`Lkx{0jQT|y_Y3aU%eRYxcjwNY z9Xq+TYY$N&7GjlpQI15MBs zjnEPQC=>Li#m3lOB^D3B6l01WLklO!sF~U#EXc%$ChWmp--^Gbt>(54++CeDojPkd zb<%Wd&vj|T+0&MDu#4bG4~h4HX5Pcv9v;-f;itB4Q;lORW@JX#m)=jP`go=4%k|>? zj4#!9pd3Oow{x-6033sVk0B3Rm`Rk6*6SPjg*Wmb445e)Lf;cY!8v660r5zPO`@U} zB~>sm(e$ZC6GfG7`8$qbQHC9wN7}iY(vQjqQf742$f8aMt0;<%#ju}>1se7d01bmO zEOW3BLwckc&S2v#U=+1+!j8XV(dQfJ`3hy2niMf+n!L6tFo9;2z{JiAW*i#j8~sm0 zneR}J5_J9{k^IXS{D)8mprFJHrKQ0Fgwmv8FhYp}DqLv%kpYXp3#>577#55O^fXcn zn{mM-q!CHEoKoe`5TiwzoB0Munvf8|k#8&+_Wt;^DsM?ypKAK~nO{?lG7PLR1`PZd zl$J>T7nLbM5+NHhP6i_W4HKGSIR+?`TYllim-ycw20p%U_S;;$0dYSd|b~m5j{;u@%YD7#dp;8&VwVR~+D76yQ~iVS3R))d|6s z37F>MSCrrllqovqTY@#$r$d1W3LPKFeNW=;gdi~+=8Eg}(9U8+qE ztveZ3e=@A$R0NAM^=Z)!=VKc##x-Do%H?4yl)Fa}J`wZxk1Nj2b@jN^?;KSto@ zI%p;l-}JQ?<7yBGJ{tv~K}H7%Rd&peD8aWh)~h($vn28eR37eu4U`ojN2-FoihbP* zj_xn?I#A?$sL1b7p4a}|qxMf%st|X z^X$Wizqq-5I^_2Gkb4#km?NHfN4;{7dJ=gZ$?@{Y_VUO&>Xz;0p6%_P<99eOz#}in zBRBAHcA#5U;KA&mgE_$mb3>p*tT0XnZP;Z%nFOFrAUeG2&qUUr$9%j*G-Cs0s;?*4 z+(@mxb+(?M%(-fy%#G9KjVO~?dnU0iB?kT2RV>OJbuDn+g|W`>t;}9+T=it_(nrhY zGAJ|S{(_mmEuQ;$`Jz8e7XQ9_;cu(v-dRpi=KiYr57sQbhnaq>mfl^n^6^H~$L5bu{J$IE*>irjgyKeN*K|?iL`)7%Kud+K-gt0jm_H{N-9e8 zTgz6r6t2_dE@y&4GiBUKI@n}Mk5GvF$z**b5@RuKETa30>0y-cXDKyNE<){Wj-GId zp4ReaS{qtvZU@SA(sJ(1bMD03(?N4zJ1%sfqsF1mJP#w8_uy83L)-2f-p+MYXYYkW zQ}(R>lIC0a{A~S)tL1qapKESI*;Ti5DsN$EUO_2pNjHm%GK&juKqUn?iVJQO6lUZV zVlHq-cF7GWt1L6C{ALcKHb4hPP2CqYg#c>^!LXpi90}-rH7xkAT^Tm*+th1eNl1PC z#-t&ifyvO2m=3dokmPB;X~t%82bU?0nXeoamMv7Zr$&@vxren_zIJ6A{TmPr+wR01 z*_srNU)ew3yq0xn7zgOTVOHk51*UIpm~Srrmr3OxzVKU=AwgHBNBSSnl_5nUaES{iJEED9*Np(VR1nXE6O)gH99rD9*}_v zF>Krz=j>BTKw(lfYA8`Y%a}J!sf(Pe@QWY|IEMKn;K=?+j*RPr56oW4e!Qj;nWh{= z+OUB#s!9_ZslktIDGJpnpiFk@xtCdqFP}xc&hWn)zx#K;T~~Il44w6}_fX>pTUTct zbSgS}u)xPHFUYeb!ms=ohU&&vr^Z*N#Fd|jsfmxMiU=+Z@huARE{_bTj0>!YM;*tn zIKjIt$q(L4(Q)7M)Zp6lk#!fMFr^nLQ=A%7m>gVmGPn%e9~qP(ehfAv9uKZP5mJ{N zTAvc$kQ$*znTB&QL@Jc2znTEmUL`0)%1J<(YmF#Vi|x=iPSj$GKS7yeuq*1XCXr$j zqBG}XYty1@&O~8h6WLXXO;0BPQvMZ*e(*VG{eAQOymEa!fiho?x@CE}Wy6p0Kb#+UBtQ5_ zUht9J;KMn=Zn+_Dd7*CkVQzU)D4`jkOmX;O5|oMeVNj;gm0?kaab*~kxt#`-fh$v$ zd8R!5l**MMC{xd%3|yJgK#xMtefj%#e0H#WXJz&hD6?kC!)0?&V7k9(*2Bef9xt2! zWW~~FtCv4ROV_%E_g2ily?pkA)eC-Gx9mO|yH+o|w{F#wEgPS1wS2nO=Gj)#UjB!< z&F>p*o^06u+w&ABd8CdneN?# zyBdUaGYsq5Gq_tfUqjTJ3_QCS95ygK)UmU3oA!3iTiWWk*wUhnMa#BUEm3=FZH-5o z>D%b*+3Lw`^(3}Bl#QIA%A zLb9M43=*x;TAYyr&IB26iXJsZUou`U98U3uiZp)^YxS1!j47>t49XZ$!tNrzp+L(} zBm&A9(h>uS)PRCldo@#?zv4lyIDwKTgCOCq`nI zKT#$ej~TvblA^d{q}=fef-++y+%YtFvNmsi8~N(i;`MqOCUVY92^TTv$vVQZdXkYk z^bZO}f0?Yem^KoKdke*bh5VtEa5T-IjQy8b(xk1iNJn#B3k{og-0dAS9Xi65;qC3j z+uu>kwS%T>d+xsWoc#s@_dYuQ!`dDCrIX9>c6%rG2-q)mDb36-znNWeE4PA#YKhowN~B0j?Z`iG=~3%;hJirPm_RmOB6H?j*eTSeU+&3s9#yOF;=A>aDUw>X)B zixIty7)l^eLJ)^-Q)&|IW$A>a0dlTF0o;d(iO%40_Ri`Dm589M=D?m&zEBMf43VgP z8s>sV00LO3kb)@&vG0N-Uam$B;<%tMy7C_REmXD*b6fIST#4(IzY&8h%BL8tQ9f1u zpedXwiKmf!NV~OKY%?}XE#&wWxR5XnF=<#ai1Vf3+^76ASszY*x)*gb+4W_Z%N^HE zCss}k895+z?u48@yDG7%$9*qCsd?Uq%HuG+E)H{JOHapFrX8zGiLXkCD2njU2|AJ& zaukh1)yG0=(Tsh}zZ69r#+#`)8HnEO>a_4mWM$yWoC+;W34w}_1(YVh8u6=0@UKh^ zs7eZ~ITl=ZB7|5nO=za>Y!r+c)R+*LL5->5N&QM{Y*(L)#wyARW))?5N(fAv%466=2?z_Qi1V+A4XB6- zD2wzfiNJ7M|!AL80o=UMmee(dD)qkl~sIpN&M3Fm*A zaOS5mse^|n4;-32;K$?vgOdCIaJ*mtq~3iJjC;o!8^;(KMfU7T;Ks0JQ_JS|%@n(Is2vL7E*;TsJ=(q*y;E0c zCDnu_W6I~4QyNu4=h zXwK3WPS&O;$f=*?@*z@be~P#=y+u?Xk)W?wFqq>1Ea8t)h^Fa?XX(?+keg}2HEYSW zY^AXcBY-;!_jMNTHxTXbthKKL*QEo;rL&g1k<|5vW_t%U-}iIJqjP^u+p*+rqFcp- zyc_o>J*n?Yfw;ccOD!D~08ODz(DawS3m>z|ERF_JLfHI6LbFFaQR| z)EETDQ@EI1iSBE5J%akqEccMcB{r-3%~44?s%O9Xkz5S2Ve&4dU<5kBfICL)`F$2^ z)HNnH8N&h%-wet8D9C$HGi5T+!Sue_j(f> zM&($jz(V=dw-CdikCHs_1dkWE9d7?mqS{1|WyE5@Fw%OEsU z2Ycpf66ttScQ#=SLK>DgG21B76MiBTG*gK-@`S+3_@Jt|po*Bl@@W53eC0>_7ULM@ zkNR3!Oi)R5P=07&9&$n<{yD(_IKLc_4Z|^b93qs%B2Iu0AO@^MI0gd-Ljnpy0}4a^ z3PXJJRX~#)d=vr#=7%0F2=gik^DGEIS{UJ380lFU1Z8Se&DeiJnQb3;H$j;d^HF2MCZ;DQ3!kl8 z`f}}xSL;_jH(UPHY{?&{OMYL!^bfP8Ps~?8+hY0x>nE+ZJhw)-m(^1%+ZVPwUvGDO zwawwBwZjWb`xjdsUR%1nv)T7{+rihi2VYvbKDTgrw#E7R7N-}`X2<87c0Jv=0hq*KGc6*}6LmSKOMr^ybWk7)X;oW!AMxGq3+T+| zMw}Zq0)|cMpur~w3{33XH@T4+tI0QCx_M@ z99p(DXM`4iOn`@ortpp_zn58Ecs)f-+_Tf-;uc!fkqz?Q(jv zKy$X3gAsYlTN9Ky+*Zd{SGWoVBLR1`E*~f}krK?8$QCKIr%?QHJnjTOX9~rgCDmFk z7OtYj%W2UfO0bX?%xXbTZ6+Km*Bl0v5ppI{49aNJleFovG=Ct?>m$}Org#Kpq(Wn) zWF+EVG(nl}Vi8cLi-@31XG+qAmUfjZI!k3N%5ZjFbw;D8%D|GN?dF1>+=W%i^Qs8XPlHg3u4|SF(wTw?>~q8Evfv za_$T{f07*IbHu~t@?jWngK@)@6y8i9u>dslgP1p*=8cjGr)Z02=+Vf{tkL7F)#q$( z#<6OpxvQ;~a|hm@j(qenxwPXrw&gf>&~P;rI`)>^_fgmnYO!x(uh{jI?)&d7yc}Nf z`aDY~`K8#EeGC8JRaSntwCqk<@vYJ#OwS`6qePjK%mScH8BumQ3QRZw$~4W&upSBV zW|Vms)uKw)p1~2+LJS)w()%UvPbj16OHz|cqwhlKLl&ShJ8~ySfO!;S?QlX5JV5%Ro zOh%SUk`0mn29yE5urxzRh?JQKf3V;JI8aH6KJ2$XO9RTM{z;T!0D{2+hImvzstgjP zD+6nU=}TfJ$|(D~+24^F*Q){!C0;Z#4WT7`Y}QF?M42YFB=s-F{%U`5BzJ4f^fW!k zhg5?L8--Elf0+`}O*CMu#b6ET#ActuF~8($R>AqK_o<&A#N0c3_(jy-hhEz**(^(( zH7erQAy2JLiw-!JA_?oUFYAzVPLOALQh422kip5iD=Af}aV2q~Ibl8@{M|lckZzb~ zX{;Zhq$XSno8jYFAIwV41%$y_1Us7he5)W5~)Qr%n1VAB~-y~#ym8B)ZG0AG6sk?E4 zr5RM3;9j74Tj|YQj76(<4Kp3M5>w_Na`jCV<_ zcS(#FQS4EuEXJ!08^2?{P!X#|`_h?+T1?zI7tQWqs%=D>^9{Gs8g9XxIbVP4Ts4C- zwFG5O06@{f#AapS%H(_O!F;?=_Lht*vl4S<(2V_f`Mf_&7Cc+I_~qK=uT59KHCyw_ zeANr{70=C0o^D+6)O_W0Y-_UGh<%(dw_8HbtSz5fTff-0IzHI~|7Q0K3%e)g+kaob^|#gL z4@}G+EM0qd(W*Q1m$O)NW9sbdlV)5QKl##_iI>JqxIB8?rBP!qjQBZi=&)0unf?Qg z_3amL+&iY1QDhHzGd)8Ly9XE;`gSt#?9k;v`!23+JMC-L*0oie{jFOcXw%BIbqkl~ z+77ys-8y1>J<1U%)12O^C$y4jZV+?GTp5YRRvm$@KD|v&Z{lmr5^{dkW?Y#L`fhEs z(X+im#F@wEj@A?WB-fZg3+76s^X2kMV%}JwjDUlFrCBoG5;5OIB3>>LFUI-;nm?t5 zc)Y$~ghFEw&H0h$;NqE5(F}!TvRpC-WI*wIQd&J|eh;a*CsH!sq70=(85%_;X&0%i z6D{pX(H+HNpiC#RsFO(0Su6m`z?B)Lr#n$cceG6Y6HTGvXb3GFDisX_j>tsArJ^x% zpbRxuB1F)5yhJcoCKxT_jg)HrEY}*PBbe7ru(COSxjt{PHWoW*%$D+|O9WFT!m%>R zSh)m?Ezw%lpAz+^_{L&hKe5&znva{0k<$}&WV3Y9)5ODT*EQ4J*otr6R$$j&VBb;b z)Ir0k9oL~P$G#mGabP<`;jZrDoxSCbKXnM0`{Om|^;wA?6%URVix0EP{QEqAGKSCMexTwoa;1c52Ffm>{u57nP zgA&sorNkGu%)}Txctma0u&#{SZXr)8t4rUajPhOB3KVlU=3;Uy<)>B6m0`2G-yB)% z=`D^s~RK&C}|QO{x(63mjHDB%rXCEDD&TQ`M~#qrU}Y4LQLfY zb~ASA{~wfLtO&+FX{;r&ZVLI5~N?@)$N1#@$9WLz0sNzj2M z4~99&9n_DgJQ6|-%qD83D?`A701EEI@)k~%rJp8@LT;->F6D=0KVDN7Vc(kdU6_ki zWTyH}@s#r8De>qlroo#kJDA|LF!2{8U>XH8rU}ZBxiU@KmvC88DU8;O*&j}Qd6e+z zvd^E<= zLTFZm&-(!Pcm8hKAs$%YSRU_>XeuHd2-U)ysW|3el^R@gnxIVS+3=#%p?RqxxhcU# zNd#reTjmiWSptE zno@W1WZn5>04O?`Fz~l3iezQ-kL=0YyB)D#WMvTheZGGA(^ZQ=Gf!78da-)x>-8(Z zG4D36d%I=r8;doswyb#pS*(3&wc)kx<~KXGzTRa8J+rlZYGd_s$M&~&4)5$8-`Y97 z+2#Ctr_XP=HE=r?!%{9V3LWc!PDnlpFHF0q-mHMe0{>?tK%>-c=Y+< z@Meaj4*UV>;H2JtV8)47&SwHuUV+)uVlv!)@BTw{Gj+y0v?o zmWNt3-`8B*Sx@4qOF8OOPR(eb%nm)FrA*U|;;a{QHcB-tbopf1jEpkpY0M-j!!>Ek z_w3Z{P#c9M0=xpw93FQRPzJjTXu%v>GDj+%AkrMe<4zQEr%N?w%lQjLyk!#6GO2h8 zP=?}-Z!Y{rPwPhox4(=t2(#%Z!5j%aOD3Hxm5vb#dQtqYG!NJnU; z?qUj=Ujq?E3QQE;85|>FIY!cnMzIMcC#s`J*ilGO1_h?xdh(HadgHbAev!%tQ`8S) z5k}Nt1n^)5Jya$hA{C92QDddlXi7Ln#2b$!4T?>2;V5iyeteJTC`iD;Nq`m;hYNk=jtJGAvh zCe8S3T8TEb#ky?a_6}mKHE?LJ0gl<-mILkRsIjvPZ%22^u77inu{}<2nfKbyzUWGL z{=4%PIoGQTZ&nuED9cMP%}=i^xmAX3xUgZ0(({Tlpxlzb5Xk1ALYXE_)NECV9E)$U z6YxlzH{gZ|zOauorVdHKG{Ogy>QxrAm~_tfQ3hRZ1A@`F0lrZOha0O!s!k>4ngaG!xEKtCdei?VltH59JFP~<^Y}he{HLC6 ziZV=r46DNl$5fz)i1`XvR*?vf5L<=BWteaDM#}l?0uxIue|N<9I+Mdyexm~pm@AbV zuvu349?B@$LWMg`eiO9&JL&>F>Oy@AkGN(BxR)k|G@L(PfBkgL<&)KC6U$CS=EVel z4)OdDbT|upjv|iY%NXCg5NQrVK_t<)A|70N`jD8puD8m=ZbTs?-kYdwlbKpB#ZQKJk~V*BUr@LT6TF)yasebG$ybl zI-r;V8Zb>!lrK~q?Tek4aIIf1pf(=U&8q*=FoFo7cYFu;Rtq zrB7EcdcJxIR%yO5UHNvy+V|$`-)~+2&T{>mt?OQGUH95@{c9WZx7#h=?Xr5i+Xi~E z9W-P8YUlR1yB*M%{=vcJz5Sl|yZ5}egZ93$JM_x#$m`vnZ|ptaI2?WJh$Dc;?Zr;l zXWRBZvvql4>-@~x@u|hmKQ?cBveD+Lnbi~1t-r6?^l0UV`%6~cnzQKUtOYk_%*mKG z`^L0cnNwz@|BCHb<1YUEOWLrX(C7r3Io`K_B62gJ8Kd4YJ&mGz7)NwB3O4NN)1|vt zC&Qy1Iv;7*!J}>4!);puWn5cmyXZ@u^k^1kb~mH8>GCb48sHdcgH&USE+2agtR z(Gp59PpmaYpZ^oKOv^ZZWt_n}+-bCEu2eExE}H_B5nwP3uPe>(CKLD4mKp0PjHUFS zP=+=@bxDG*B{?9bBRB>TV5yYQj9AoBB1b5 z46bkFjHccRTM~l#(d1(GUC3Lg^<7t{kz<&Wmf8v;C&kLuOHJ2FvJk@nN23ArmrTQ; z47;|8tu(QzUNy=nqcZ>+RgV%I$01%$6ZBDLf#Kpn|Na6KV5Mnb_S+d=36p3B>ohfQ2w*iyv@{YAW2Lanfg|(y*R~4d_b7wCYMN1T3=juWSv#zO zL|(3BCPGekniiNEQ@yHque#p!mnZo!Y>Tev=3dTwpZ5B3{Noh&TM>@wo?Fk^EcTo} zFm?IV7mi!XgWT(}hA{AOVYqk2iO7bF$qngeVa(KBOs+bcP;w$7KPDh6!aEmHk4UeQ zXm9ikLq(BCilaP{?I=GP*c4@QPK9Kr1{W~}CgREvl<}*I_pd?DhM^ha%`lZFM1bos z^A|NHB!3xKhH1%0@|QswhGqaL4e7@LE07v!;KzVt8Zx2e1_ouwHP?^hVw9z7t`OB; zOsqK{U!4|LbtbOjbWBxhbk)fys5&_Ys!WbX&v`l8&c9aCi6|m4&GE>hW06IP5rqli z1@WQz@gW8AA;s~*jDm{e1B>DUOITrZ0;96HfU;PBmRdkCYKXz$J~F!xW=ssM7bVJ+ zgJa;$Fb`s^UnTO<@xB!azLm!VYEwc;b&1`wsYIEShMNq^AoB~9$xLg=OvAA@<4o1H z)cVUnnUka}$QGCwSEk^I5@oO%`@O~bH|DEftzQnBd5INN>r4pBn5_ZLeAsIG!P@kl z)%w>~rf;mx-eNTHPK)<;mT&E?p%*)?p6{@FWw-5(&!|~~M`zN+`Pb|0pVPW%Rv(-~` z%O@Kw{#du^@tTbfR;<6XWYx_@CO79TxjA?7tvL&C&zhGxeRlehUb}L^hPzTtj1yh%>!8Z(V1ZmqF|OtrVE5w*)97 z(D+4PG)#v#K`Nd_OJ`8@SUymO4F8=as!Uu&Q)*I1j= zLx?R2)zlgdnnC?YF2?+r;X23#i>K;Rv-G7)^`*=7Wh=F*RZ{+P zT5}Q2T}X4M%QVI-G)Bp|0~MNmq+BCft0yh&MPmb$yf3Yd4c?=rqH%I+sJ9%475 z)h&7JS_>>%bFJENcC^O`V2vHEIosNDc6HR;Wx(HVNZA|711I;tv}x`WpIsj>g;qXH zt^07b{&RZu=W8X|*D5hf22IyR*FP6t{al(3eSu2Svq}ioK%ksL2qVkCk1|Zg)5r`pTqPt3zVJL^Z1n8r}CN)2)Pt^CsWdIj~HQ1cM1awG7 zCqIK-?#-GjKoeDH<{v=J*RD*{8WU4yV#dZG0$g56#1xypr5U&~EW3Pj{4YV7%G$?& zCo%x$`$+MhdbTObFv(?-lKFQOm>B=2iG|bX;t+#}0SIDXup;&eqkpQvq^!{}6{V&Y zi1H39SBA~#)F_*$kl01^m`xw60?6tSGL2(w)E|lE6(znXtr})>jB1iExjvfu??A#M$m%VF6_eNQ}&;0_TR@`Wp_6qz4GM79E zu<&}(mx~`?BtJjreJ^hBEx&Eo9oGae8JW0n{5|W{`QCdQqW$Y4d@ACCYEohvF2UzW zYq*gHZ>H{2a@Cpm^5fw}3Bko!+z5{$+M5JaqYz?sFO2Yjset5f^{J2wRe>qzRB(1` zP+=0jzsc7&zO$jqIREPSfUjtVRGP>}Nz8(4M48K^gQ?+a5^-f%!E0gc8C05>0W)OA z45=%zehfH9i83dYD03yL`f?&va{&YN;;YZaSDyvV#8#g|lX*;aN=)_1Sg7)33{-J4 zru1ZNDLE3AoQx?>jxNSYG8A2MBD(Z=bjh*E;$sm-NnyoFq$b4(!-a!O6NAeV7-4K+ zVj!BN%Hso6)S~uaV7(w$6hNK=xDb?S6vze;QyT4!KPihc;KD|f!KhzmYXMxDhK!Vk zTW4U&pna)6^Gtmvp_%#{XMr-6C@`r|2C?7r#8B*DVzV-=D}%)aA1uw@Zd&u&)a2zl zaLjU4m)@AJQlgBd=|>y0_tvK0pv)V4Yv`4o^-DXO*Y?}rIN7~(+5KUU<45e1a>3X@ zr;iNEytg~}(ZTJLv&WY`M?UZI_~7F9>N5N7q*ldtdH$d9lms*$(^XHankMZhK~7 z^J0tj^UYSzH*9@sx&<_I-(=n0Wozy%GP$#G`P~Iev9OcS%+zVuC;ob6%-Bmm|AI=> zSq5lQei(FO;Gp9Jen{#&Frjz6IMlFvP!|Kgjvc+)wf1P${7_4s1I^|8 znn}Ph4tm1vx;#s{239Yv7I9WHC}XCpwOLnSDHH-_=F^b{FKteD zU2fmz7@8+qK+$t0vZ=Iu9Iq+L==RptH8h*#Ug~kmVW+M3rr;H%jA3s zqkv;n%)#CV4}t@fB_#GKa*YybSVZ{S0u%8?)FKt4CS@!_C+hpKU_?HNsvDf883Hs- zJ{$XXEP^OmO6k@RMqvSk%?q>SLC}QtW>hFcES7&H_A`^q7`S0M2C;u4rWc9uN>h|k zj>sc}^3*6pA~mXsz)S^-`TeqE+5ngq%{x!$3vpTj8?Mv6;0bB&lG+a%syNF0>Tt!M$#WAF1vAfZyEDA$t zu_avJ|4yl(>?Uv4mq(WCOS50ga;}Ipt z!;!ElKaM>Kq2y0-EVu$2sgi;i1!6T7+Pheqfia_2IXb}62M&}$VUEaGEkZWnLV|`~ z#F9aci9wmV)KF$M6&8laAodHAYiMj=0183%zG6`3##wMo9Z)9yv>Ig)`>i<7Fn5(mK#3VYjypx5>`uN}6%cHI8PdFMNqT_5(?f868vVUNQHXNUJ#YJt5CyIr##59GMGd&w-E5t{+_Xy@#ClymNGZvm0UIT`z66zp}D@V`=+(tIeA&)~`2NJu}<#5Z=rx zv-``}-dno*{*o0B7A?CAnwc^C#*}I46DOsQn{aK+I7DYqZ#qBx=d@uzpC0m4%AjE< z1`J8+Hz>aMfLNn`Q9X^qyLAid(%H8|o1<-89B!?9sFh-W3z<_hF;Hfku9k(IEX2k- zg4Gmft&D4?r?p8}uvtrMBbU1nTMOC=H+I)O+O@TlKDAD)xezEL;=+;{qOCa|g%uUb zj1y>1rFpaEKpFlFOqao;X_`MzpgDub8KkGtSC`vEhhwP6?cG9inn*BTM9raOQ^m4z zS|USQ*ok#z6xgq%XG}|2l<6T7cNd8b#S+j=S4w6;E4oUwyHIkR7{Zl7u?cNWVzHrw z?x~RX(bMUxuhU;d4djakiZNtQ+E*?$(w6kprj4}e{t9{^`kNH833A1+a>W!%GJ!7~ zE#Qw5^G8X9;FzH@{xFKPZKL~op#qCAB`f8^wUj2>wM-}uG*`x%qTozaaEIt>4bsu* zs}S^((LHFYhe*4JP`i&%@}pSvlaxk>6mm1O^+ZdXX_>U(Z*0Zg(gyQpG#ol<>}to^ z*`8z9Nn6)k-wh8VqL0~Wn-~$u_C#Jak z9+7(39fKw;$27sCZv($7rcoBBKr_rsnzT&;W%ARpPl}1|DtoO__W@)uAVSJLY+;Cb zWlHCIt{~wX4E%ihtQB8|Ezz%EAur0{HZbf|Gs8y79apFO?ZW1N8{s+ zi9)c00Ug2PQ5-ca*Wb+VM&F|2qtwU^@m}vVL66HA{JuEd`!|=t(q1?Xogra z>~xt@RHo2%r6L%DFU*hz97%45i35KI%9P*CEzS6xeg5N@wD*r3qdgV{!S1#30kz3kHyu@(8dHApME#wMsA4pLX|AR;Ts&Tzh7~`NRY}3+ zaeifyo~0O$5^@MML*g>W{go(_7G7|Mpv)HrWk4`$RmA#Lf@YBaWxN^E&BRR1Q|^^i z7nq1E1C&W@xXg$-Ck;)EFgFkF*<^76jG2t%^+XKHq$Av;EHE)B1DZ*yxtLUYA*uF! zBGI|TI!3i;6RJ}aYEsFu>J(As>4b_?@#Uuy%2E?bQ{v&uFenpSmcl4CrZgqG>||tF zazxpQ@CtCuiLgpc);S(hc|4filv#;MfJuRsiBOQ5W>9G&B9;tN(h%m^_!5EY)B@H- zgA2VO24#HIC{vdfRY$gL#v;E=+@?%6^Q&}a>TaB2QKp7PnM)~k7m|T8$N*uTWOIdM|PxQW-tVBz-oOFxfE`)TCqAwL6X zj`tsYtltl)Iz?mfjG;k5=e9oWTOMgg+Nu$JacP0LjA)xKZ;PC3Msrrdn4vjq6e9ipxEBa1Q;xH1x0GUJ6>*iQtM znI+{_AKs}A#dfe{190Pr>Q47tfeEvMXc(zD7MJOGoDeOuMJ4i(a zQb{i<_C)F^QAQ;0AtdT1k{F7mhLj8(V<^!!U{I#3MA3zkb`*#^V}Kq;@oFpj>FM;* z)$S*z2k^!HM6{7q(pxSw(v|hpll9V-_K{Oq(lm@l`;zQex%PC4Vv>j+ClZYj3r9;t zKLKUrf+3V(7$qJfmoAXgi?yYzr9v|?$q%iQaMnvXi{+f@azZo1^)-j;X$;U287X8v zB$93-y{-b?o&s4v5j9968zra5>By$(iWlhd7B?5HZ^_-%mTTKl!=bar?v7mh&Kiye zTJ~Ld+dF7kwZ`KjhaNinM;Q7n8+Y1n^^=4{#di|x-Xk=VUYU12zvOye#f{vm%nw!R z(C12`?DF)&5~8xA^ol|pzmGD1Q3(QDsM!VOo<=c?mI%#YgdH>Nj!e3%xKAeCv2%N2 zv8W41m_zgT1ttPCtns6CaR@3kmYE8%%9kxFv2$XS5W^q{NxA?v)M)bO6UKK@CSw>_ zVY`+H^e{;D4XLOH;;|=xedoVM8S)SM?+O3n$4rsGQPppymFTh@XB#0UEXhazXKJaBvzW&u#jf!}bpu+-6(<1{b?0-0hobbP3 zW$QIb7BjbEU#t9&%YqAYTjIemp8-em!5IIBoU2g=DHf)Go5c=-GAITylYiL)lM+xE zONP8lCH^(Ql#MXg4q|p|vxtMomBI~~XUSwtX3jU6kIBr5QM)hd0uu`~N&^OMO@v^` zj2TsLHfpySUka~dWH`!9;FwQY=fAu-{wy>2;VHL=5%y^Z)o!zF{K6`5s zXE_m3aV)I(SXj~7gxbt=_35YUucy{uOKrHE+;HJo{ppyRLK3U`^GOi0u{Ea> zYfmTEoKCEU&Lmc0h|cMR^3#dsrxMFjE5PN+tTIWDLy%!{Cm%9R18Aolxuy^txs5b;Jod<%g%S;7^m&fJLjG6UF<%9W?byv zIoo}9bj)$woA0u}aNohgeTVY*9mv_|nhlz9-G^PIIs096T=x;0vA2J>YuEc7J3nsU z@p0RZPqsTg*=+w{v*V4`&X*S3UYJ`xGqZTM-u(Gmv!|=p|FLYv<3&p!&Rh7~>^b*m z&b~Ko#+@nCZcPHyOu0UG;-!(}&W#v-X6Vl;gNG*nFyvVO0rAGhk=+f04LbODY~$6w zxo0~)w>H{MP)1_|O)Qx;G-sVcV}m{)C}YayKv=K1u)WBoZ`1QBm4mM&rTorFJ)=1rIKXNt9EYH=rPatG>Z_F+**kJGD} z#$+B4M>tbRPZCH*YY4iC1??q*&Tu$rc~6PL2y=Bs;$95ObQg*Y#k3(M?MllGqzXi2 z5R_pg>nx%=2t-|k!X6U3w?ffRN6|+i8$d}12i8A?gx%OmQI-a7&(&8~vYJ?8;lR`91A{;KE#ww)q71Saf$ts!9l-4wrXqqXw z8+15JwJ~W13!At<>udd_r#VOm5gd6hf-<^Y`8wTs5+lA4AT?Yf9x10M$^|nO8gq5E zR_Sw1TXL=1Yub0wvd4xd1D;Dafs>)gu8VM6drjL8!kq?^U42{Fk2eloJ0-(sTh7Ih z+UIAha;{ZmUCAxFnpb%vx8~;i>U8K6P^O|0WlD?E%L>y=(TUllTBODcrUrzK1dUM` z;*Ky!iHnU8@}P7s8#Nl0Ocjk$auWz@vO6p{$ju-AWGLQ)b8>(Hp_=kMVz?G8t;aS8PrhG3|seM@rZf(-+Taa zhd=*EY)UFPSAQ4+B@E)=h;tUd*bmu=EDXD-A7t@`m^#c0i7~@EJy?0IvSe8Ih3#D; zg(THT-#?>_sy&;aOi|vIqTEY)d6z%uU-_JO`PIABTlc~)ojG_R+&0C}JlSeS!m80} zW>em}nAgR5)F%bi#G_&oUVP?6(dpxbX)(p;qsuSGR$q)qD^1PWs7mZtO7O+JT5J*e z;Op|yZ%G=R*t9g0fEey+7^q@vL9L2{h@T<=DF%6H}tSDq_4Uu{t33 z|6}hhprbn5cK;-!TW2PM)LkgXQ9eD6AEt!wSIXJ*eNOq{d1d?Z|dEV3m%vgLSG z%ZccglQAusu`O9~EvMsK&Kzzzhv;#FN&1V4`b(GvoZNg_5|%}iiNH1hG|F7H=~z2Os!nxBB2j6oO%AI`0<47A zCx}`TtPPh&SLTZ| zq=QMC_WQ;8=DX(_Z=Y$nl~sQuv-!di{prM}6S4IuVmS;I=i-b!)B*QI0E7uIsiuH^)48^my;c^>E5YnaRid5#$T`Wc&K$`1$7g z`Q?FN0{nCRd~>|Lv%S3@d3iqcKrgr3Lsz#4F0S{TUG6(O-*wj8n|MTkAKdxN)Yp+T9sb?@XU^d)nliA5FYEdCaBp zBhHN;nmKIHi9!93_wJF_rBh0WcT?VeGvT#YB4242@}lkDwi*u`m8(X!%|@}&M!r^K zwM0!~ziV}h4Q-fp#DK9_&R8w6Mt8BW?ll|N_SRdp%zRNcS+JPQTFkVvSb)6*I%bSk zHJq`UtX9qt`6*g)w1^qI>LDUOSl~yp>;x4vf#n8TGrcv6uA)^((W0xyastOr<%NlY zW;i0cO7)vO^O}ZzTNFC-+D^Q#hg#^V#k>URW8t5f%8nEnhqOvMaWvAr4VE^6CODqSa~*jcUZ!E1Vp+CHM#n^pEu$*|^W zsFoRJCyr~U8*L{J*Rq3oI5DcB8g7)Wc7#?vT$GIzWfMiq53QAR?bHj~vY)r(7PnDj zY4&I6wYFA$EXu}liqWiW7{?6c#r~YwO|9*u5Z_Yrudw1O^&*Z+J<|L3{Tl-O-YTrVMJDDULR)z|x9WCY1xCVv zKW-IQU|cT|{-T4hjgrc6r}U6?#FbRoObL|1h`j4K7M9+?b|>^hVVW?WPX9gx`k>ng zJ=Hf0%Wf2uUWafQ&dHTPC_oIQC{PX=HX~((jYkv8m|xQxIwsS8Np9EFvP9h%sk9^= zpIKT0vKV8+(u;giW;Ue;uOs0LMI4hQ^AE559F#Ht+Fg15q#V;oQKtS}DpZFqr?aV0-I?T?%)?X(wOI+Z znF$z3Lqut&CL^x)1X0b2I0MRnX3T{2Obx0|bh2OG6i#G@GL&P0 zGK6MolT9cS(Rd=V;Z$rBrsSO?o3Tj`7inLjDD&lcvbDg7GW9pJ>VPumQ{Zf2#TDvz zq+AuVuOe(`@jjnIf0rDuZ4Vsn|Ju0X4~M0{um1ekRg3;yz3Beh#g818#s(?(mw1(+kHS8Yo&`|wbfd_0VpF{0%ewS77o_R zO>NlqHtHoRi)D=EQft+U7ld^$TRXMYZqlef)mTjwEhaG*b1je&R?gC?F)DW`V>yMv z$2>n-D~=HO!3+k|325pW&T`|`?0AkJsAKzRl-&fYPJ%^O%n0VW4|!p{pc%@G{gf&R zWl&)1$Z4UTYO%LU=&t5FvV>;d6xr9c?5o!7i+0RQZP*uW)i2qqU$a5Sllpxv(~D#J zG0Xs!dYDWJ^=53kvTZx7Z96NqomJW%tfn_F_Tl;7jG~9qvM(zetWgcODa*t%J4uLex$W#lr=L_D;ptNj=>N=oqU#^dO>?`(F^<{G->N(^Q;v>nVF(&0;e3u zC`NF=Ak837)05S8Q)%8&i!bxqH*~gLtZlm4*!0$jgLr1Bz)sVs=Gt*f+Vl1=vg=>r zo!;cUI_P{mS^IpzyS%B`_KM|}mn=5CE_di6xD0wJVS4{>w#+Y%@ou`4)biVz!itLz z>o5M%aQVBI>)*B9xNk%mX(dxZWu$sNc`3X?8Qhvyl)+8uN-&DCdCCwIMn+f?u*QTk2GF4uD+BJJCCV`7&cGtn zP%&qhCyGRm-TXVsn3D|xG>@Z<;km~A&0{Y`-5_$$zlAdRP=9uFFHDHP8wRF(@VWkX zf-&9meERP78mtk@HQGBdOF8|Z}6T!#wY}32uwU-mOS+)80DW)#;|7c zsjkfPP{#B>gW)^GESVboL`gL!vyB9j8AIEbNOcL{60S6xF(YMVjFV;v%~X|Lt1P}; zT5<&qkfh91bm_-G(!aPFdh?j)x%jQu{1%^dn0#{ixF5EDRv+c9PYu(jMb{sVFFTP| zkd|0@G_p87yfi(c3VuUIY-2`TtXmV>AOZ<}BeD z68AZKr12aPEE$8&A89}|_(B?jHMoZmOjbf&R-!?f33U?CoCMIs*JTh9nmHZ|nyEP^ z2@znN0Ba(pEHFYdk}CsCrYR*F^8D2n|AksldHH$$rf5DG&SemnbMc#&$dFaH3C9`R5_7-Z%I09uhP-A9Oo-=4>3s5HC zWm|qL#Ox^aaDoavouOPbH2M4H1o-9#`sW7)6zmKv+7(2!dnb;CxF-OWCVx_CqQ#~H zlAZz3c;$F{=6HDIxVt}cb$#gMbl=hO-j*$YZQA(z`gOmpUG>YVWj`-p^2^fCfBbyG z_X|Gx_S4zl%$xbmCo{gB{n70ildex4duhVRvm=Qyli43*^tz>Y{viFmcT(ScJ@(ZX zB3`oF-%bmZaTYAM>f{^IjBP}jb=Im)ZMgL|%o3%=GPUJWopMEce%(ttr#9M+f@+>% zHBrF)7>iFR%FNWMM`FGlMVaXWKT#tL6SzT)YM@3KAo9ammY@tvP^Py?Q3kGzh{1Xi z%7{Zbp|1icqkaup8G-M_X*#l+P68x$6od{u|2|JvEWJa7Fb(q#%o|?y4zGG&PpqxSI~^$`i6Yli7QyI+Rm;v#|Om2L4u;-mWUSRakL57sgCEQnc4#tC*mKzz6V!?$9>5 zDTYU>^&+tdxrWL>Hh>r+Bw)yH1f#V>sffNHUWx#d!2y!Y8>uCVCVZuZ21ZK;$U@8* zYTHQDfej&I;{_CD(7|MmGKOLktv7vBg|g8zgbPe|&fia-iZW6_n7;DYPkq^c6J<>B z@%IyIAw2W*6(7vc!Jz*OQ3h|D{X zLi0B1c&a;%ZInrvs%H=e(g14!G^dE_Av$WW4)zRbWr{V>46r60ecF+r88kGJ{4Xsq z!FMsB42&7-$}~`p!JQOkP*)1ACPI)XxZy}>K=P*Q@WGm>eH9@=MSHyRe0Dr=+XPqU{^nJGZCLTA z{Zj0eyl=mRSTgHZzAhCzg!k`n>Jnm<>5N?%0s)B+<;)0$0aE>cqf| zDe`bC@^m5cc7=d4kNmuWGWkLNg*yX^b_W&j*;$O^ZU7C88UK8LU(ifZfPZnIKaPmb z6!`h%dXp@0j+bY?w^y#0XP%pTj*CmSlhdQ^0GiEzthfJl?aE)*toUQ~@?Tdh`Dw|5 z9~RB~e!<-DKb!USCo}HOoN{y8_$!k}pC3K^%W*T?Q{l|(aJXJ2+E)tdj)T?&PKJlEkT*Z3X5ebnn&S|002M$NklZdS3BW$aIZVNNROfXf;X#7fLXMW5_R3lSt8udOW0tWndkGJ0zZHJ^*n* zj=v6=)|gC7nrKYe{f(0>JBtHi9 zLq@`oOzv~3k;Z!Plvb1>{X~WwE=jjMOaEn*F{2r&a%4o7XVOgT5FN>t0bo7Fl`(Es zLjITHi(v!yvrtBIXr4eB7&8y@&;Rm6(syTfT~2ZNIm+>-=YrE~Cf{5=JuhfO{ow;G zM`Ih)6UvUJ@+zO)t zYg2-2Gs3G*g&9!hRA|Lf3{W{#m2?msgSF39hxb*-6V=A=uRDBz7&FNs2+fes@3b&{ zgg3#BI3C%Enf=ho$i`EVO_@g{}a-sz6CxSOaX(pAdDY%r{ zC6=)SGQW8QPmIp-dgEG5sB7aF2vCMvfsgQwK{1Z^bbZlp!dS zi2{?sl`)_Uf-+wLWiCi4(|G3$ESc(S8C6$K)Srq+FBKMDAwFCYzrQMSPkC@);cia^ zW$wFfdWfc^t!uD}iG+Xcm)^Hu3RmXQx@87!S`AAkciTE}Og@4#Mw-cS+6bB{aNSnq zw!P4Od!fgUB2TAcPnTjZ*Aj2H5+C;xU-w)e_Xob7+5X;nfqnoN;0tJ`a91F(1~>Bp z(8uIc5a3%B2$TsZ2?_wv6cS^`JIBi-*W0te*Qdb8yTH@4z{4Zo-7U|>nb6Fp^?$5e z^QXh=dk(7!%`E@?rzM~L>+^a4S~%z1Pe1;0_J_BpPrNpH?8Px7V9cBy*gvax&y(G{ zWOR5x?d>-Yzy4D6%k2)frzpc)ZqZn6&|2AxBq*~|uvib2X~V6vR(~$HSgN#Gs!=R& z%Q?KDakLiJGm5z!%0m=oEG?E`W(AV_#i?Ew)$bDE&_Hi#h1abG6UuZXD8qGSxtOO#YEy*mid`|!qr-CsvinAQcSxn(A=4h=Jzo_2yCWi)W?=H4` zdbK+=;FbNo+6HwJ-8yiaI*A)Q30_^=?Ct$($mmXo7mWJKZ}rdD4&^*ZFD$!ozwR1T zh#u^xp$xHPOsG((C_#<6=+_mgy#*o92JC$sNKGnCX1RYALrOdtY$F&ZZ%)I#qE+z=Vb zrWH`kul)P@b2vu&D&`lM&i^0E{1?+R|6N%bQf-0V@(hs*k(6;U$IxW-&nP3+ z0Zm;<#!U&zWx2t~emqm19`KcI{RE>9p7iTz3iCj6L5E!M`w3<<};aY3(j z84dQ5s?#%F8O&*@D7{u(ay7pU1t#(*NOr-c-+wyt{rUZuQ{4YZ^!R$$>hqgsTv_$e z?_MjbqJs2k*ewuWeI&8uaCCh_L}PqNee}VGi2aQb2lSB#Tfz@C9@<^C)4SNm<&oRg zhe(F{yOf0ZHN+oiJQ~_?BCPg!Ncr*L@)IGIM<~ZoO9n$|(7atuRU5ajE`EPQ!ojA* zLrpX{1E6W7hC~xS$kVZT8wzhajt}*S<`Yqn{$w;MJV~{utk~wPc*7FPvq}1M$t_5V zTu4P;gy>vy^Vt+VQ08=M%jqL60GiWBz%dfa5RL)Rz?(TuMgU`O9#94X)_`WfF=YIV zL@*R(Of*9rnk=H`tfZ#Q#Kuzz4H;PKgpE!VWsYG{WlZhS=xR7ISiYSW2?q;Xxa(8G zNw$|3m{4OvX^B*qq_l66AtEDHmvF?0JY#h!64q3GW-O-t8s^Htm64jU3C$2!rUhA< z+h-8?t+|>}b?JEh$v9Xtv`PM8MeM%H@Li>c{0nyh7Yr!#V9T0&8(02?(K7Z+(Utwc zVd;Z)%OqiXUd~qgT*r0!+t)*R@MCrmW2O~lh#9k^$io>NQ{v@X>f>JK<5BA81?BsC zKJxX-@$=3P@GAt$>-rpmM!>k@u&YunU6*obA&qvwPRf4>}xs`>ll6UXFgL?V)x$FB`Rs31tL?d@WW978@j# z(WyU|QIydVl(BCwZo{H%wR|pXi2@U1zn@xJEKw_`kp)KbK|GSY>Pb8^oLBeZlzmv` zAgwTv7MRAVn6V7oPsjAoD7uKUjv84Ptzs<4P2vQg%utr=uTZ?hDc=%Q9R#*JCqQot z$j5N-V>$?s(3RtR@Io&RgIjorOu$pIebfwafh>0vS(KSNfn%)IP$z3u7oDP$R`G$T z>>w(zn5lzS_&_UupwV{FpbR8*Mt>743}X3VqIRN2_mQakNYG4ItEVay6Sdsfwwf_^ zs5GfYYcR-IHbo{! zBlJ|WJylF^M%9;7_D80ew;aSOgS2nNDkLj`oS+QQaM7vg?ckEY$VS{@?-F*WUde=hA!eZA7+6&rD(7j z$C#>4WNWvHV;(~psfme1XC!Zi3<#EDF$87k_8yZfL+%H-JZ-p(2`u2*NP7&Vqm-nP zxCiWFy6pKUM#>=(91}A=>*T)yWu(61r+ExgW#QlQRQ}ifoByG%4D1#Ito%Kei+hZ; zArS*9&zZlmq=fX(t_&p}5@3>E4KP7ChVDW#fyk351g-wLz-0RB>3>cb>0ml^M=Nx~ml-`gEPX@lBMI}5+K!>Wl^jcZ*l_L1DrPm6| zNmV$f@bbN1(|^7aawFa6UaI%M4sN)*W8T#@)4toWu<)QqLsD?_vAEhJiDieQYhy!d zBllN_?5^4$Sh+8tW?x|Ko`9;IKBYdcC^tNG-u%F2bFPn5(E;!J*nN#@Aq~gF>e55X z(+^b~53Wqb5ZeQl*wcjl2Jw3CdJi(cr3d{B2+C|nfeBfedswcto>(%(m2p`1 zaQ*T}8&+g*SV4}PC6sZ<-?6@6#|DZrXksFkOrA4!Wz12=+pWyUz1-Kc%-7MWIn(g9rf7_-%HaYyc(f-~>`#;vL`fc@+pO-KEY03N_7k%>G{8?X-xXk41Q^s8$ zJLXZ~^L=>2Yaohl<@;zSpwy5ri)C(_wS}?u$4HAywP$5E{s5>w8B+*@Q z04G2Q+YaG10|l{mh1yj-a(YVuVLQT@*RLO zI_r+sHl27)XGZMKiUV0;h@c(MYp3$sk9f_;YG%4pISGrF+Uv%**G_6HjI&|JiSh}Y zK;Wrx;}TG7M^A76uDO3@QeByEl~FGWe|VDpZo=bW23#^CYL z$grVp$~lrt_)pb0H6WBfK-Yp${-L!Od9Ib7$AnaHIipjQhcSP=yFl{=Nd58f+Vs$}^kAqW z72BE)RMP5FdE6e%p{a@?s*c%H6SJo-ZXcnU_yhHXW)7m>)PS%EEwZ4_LItZPgd}Nb zG`KlE3en(ZglSHo*9ilH6ZDx0%|wTBY|2V(J`Jo%)}Kw*pGlGY7(k39QfVTievLJz ztmFm=Oaps{atwN!^cRn{TuRqpJSw>|O=nV?sR-848dD=?>cEwuDAPn;nR@KmMst2q)@kH9au zji3zDLNQOEj2?>%uuk&s87cNlQRZv|GQU?dsxKXHI2m6LR|Y5(yT2@QS9wTK=>b2u zGRVq2bl-B1#(w_<%D|OzSoQ!Mvk^mnSLI-3!KRfIW!7T3LH>?)1y1Ypoi^k-Z6tEu zM4Onl6}s&xa(6PgG6ZEj%Kf~`{e7U4Ab)}{y8}yh1(s6bq-1A6F&rACXAqR}h4tcH z%>+Ww^|0j%@wab55 zx%lU03x8fR|A&Qh5&r#R=G0qLCte#j`ts3 z(DpWdcC5Q7+bR{9jIPXjYvo28wY{i7foYlAYMD;8qP<|>Ub9uh+p7r5OcE_Vh7WvDDweO##%X! z<0o_CcwQXAaf6h~4!q)BjSBmc&}syAQ8S%YOcw@4CB7Sc8bRnG67|&ZP+x0pKN}s6 zeRM)^E#FJS^%PmGb?nY7yK{dPf>@Z?7@dFul0K@cSRegCS)K9d6hM+4- zYdOJIHpk9#L3_oTSJcjL^8Q`hMfQ6=bwr2cDLta*_79)cXXn7zo!%3-yv4b8Yj7TvRh@?WJF`X`NmKSp%WrQg~$;8eKOcf9;KNW zV#yevg0^i_UFoszCy9aZQa~kgF{v&YgmXGd_^~;{k2N$IjTyjA9|HdTE|5TKre#Wy3OeT(@fQWyBVOf&oui(+=yqN??9($`>vBQ8Y&-l+r z{~JBGqn^?gd2y-QMZYUTGX`Vkc_>3HD5KRxxrYqDAt)mim}p%I`542HUsy-L9gNY# z4kMV9`*e$%JEjO<-VY@K%W9{w>&rJ9Ov!XJGMUBw&}sv4fh;3 z+;`fP?X^9BuUAdf-g@keJRVV#9$t1lv@|`Wg1R!;HwjCoEOvKA%xLzITqcL9z&E7-;$Zw zawwSUU!trYJ)=Cb7v_U}`#<(0C%gK0QvVE7hbCj;T2kS%qy=coXOjaBQ2x z+t`o-hzV^<3Tr~r2*Z@|#^TN+M2NOPHEChhY2*kmill{3L}8aCoTrA>{eQ|;8lBA=4fig{}4mTj9gUoNtzS8iW2+CkBHc%$t*D2d`8wU8^L+p3s%6scq z{I!0?gN-X55rSDI3A-e-x30-`w5KSuF5hW=p7Vx0=Z$$Tq=SiMeqDDIxtUM~)g{kz zKkssX-|_&z@?8OCdxOgM1eNU$EZY@O3hneS3Gyo@@-6cBDe(1zihNA+L^+96l)OFi zy*={0J#xL=^9aPa<$1d1dbnh}IX!UR`q%c2_Z&AqblmjU=5>FrTmAc*<-e|4^6TP4<2m6&UNeyw zM{(Q`rLrS0?|@cq4Fb7rf1VvEV+L8V1LRy^72i)yAf}s!@2utDw?-9-?Pw=-Y9n@S zBlfZtpn*DJ5N6nL>~OVum`XK_vl=E?4CXER3Ko4hi>|z)GnPIIC^PBc%5>J)brsum z7j63qS_qyHM&wNputrM#vB-`UnPFOXl#MXKPMl~bPO@PqYLycN`DET=iU68X%&}F? zvc_fx*~eNrXa;4bkFA*xwW>+Hd_0Q|Z3Y^_GQ-e|&MN!x3aGbM)<-8Fppy;NS&p!g zO|!N9q`h+aOX{t!FfQ+C4|aVaVbHrrru9u-HU7B6l*o^IdG&d5>-!qV53HR!+wGg# z@6O&0HMbI59$jvEbfvc7T2;~YiW0I78+d`CGLNdsXc>woQV#b?l#wW;)w98`K_mJ| zC*-A`kXiq>)b|8``U#XF7-T>h!xTP4vy!1byLD-$q0$7bp&WxqjpXH&(-4fY^g}EY z^M-2pG2j@AGQ^dUCeRo;2I%w81S4JZcaHgo0u%jAG8J)J8-NX;dB#81|BE;O+fasl zmj9DX|B5G0{?DS!-!S68{+70eW6V$n6In267u`UQ!OCM~L!A}#d#Fi6F%M>e{brfNP*1 z{9|F#0C$YFB-k(nVkA++rU;{=@-Gw>UPM*~WoG;eC`Y3p7M|r@Df%V-ue))-r1^Xo zz5VX)HCMLG&RjkDE9d2T2R-VOf`Kx%iBV0lVT}=oY7XtG*y*3|<(BQT{r@s63xU@nt?Zi+zh@h zAO^*z^a2zNTOHfAQ7zt&t zDpEoj>;R`I(@0Q;atw~RhYAk?W$MzxYpH6EhC>ZBC-h8|xqgBgGpI31{n!`ucg~Tu z*jG>1Tsi@iX+-A~T$z}CC1F8jhXP74RA#3Knz1ogCfj+#BS(9(lwi}U`x{q2+_du1 z=2f7XhZ|QAZC;6WlDUp+|Bf=4D^o~OrqIo)(A^nsT#2^);V#;FvybG(&8(!>qN#H6mVW z6vvJfFyqc*m}oITwCKxQbmJ7AITe;ZzAtJzXtiCmcHOmYdur_Zi$EF8P?jCVs>k!p zbb*@kCm`PYCsgX+@GhMWtfkd#iYPKCW+m4@R zjfN&A+Ox-_4GJ%adJ~5Y3F^Lr0_vlc_qA34Wrk=iKrYeXd zNB4d$X-dzuH50FSEIhMzYV7pBL4)6N?%HDwQrVzxOW}!9oHjAh;dpn;v+LW zu=4PMinP$O?Wv3*ehfIKCX%Q=dT&$A{-#)>#+ZHe zz?ztS4RQM$6Am^fg)}FIG$jN#C5GseLiI^u`s6TuN_b0ZWJ?;nnV6Onhg(i2x1309 zIexh1c)UJ6zWF%pnS>VX^v;y3OKB}xsd}7~o2j%b`zTBreO5|SW->NPHfAQ*6D8GU zqR|?{37W3yJt)?kN&vN>uGD-wS&t(u8B~-`VmsAgct6c26Pq&N${fa$hlXRZ^+#js zptNWbkpavhzYM`xN)2sFfnYBgggg+rGc6p2B&hBf2qv^DEu=Cn7y<=0oQSMH5m^Ui zMAl};)}J}ta3QG?t>)K`5{|i*N#Zhhv4-h<%iRlDkJWrVtMSUo`im#(vEGsfWhx?f zmxcyXl<_Uv0s9Lg)2R zJ}enhW7>e~QlZ<{5)Y?RPuF61=K^=%1*{+s41vt^RH0(%+VS{_E1ue_8O^_j6`{{n1BX zPn`J0xN&!e47=95?}aX1&v*FX^gHh!d*k)QmtTlzXA{(h_tmPlYh)V)OMBL06=$(l zuyoMMfii0~iiK*c6M`avukeW*4=$ncjsZ<-P~F_Qj6Lo z29%NJ+8Iam8rra>F?!MvJknE51Y|MIn=#aq$o&TA2Cqhf!&C+;q7UI$ZaLjN14c2p zEan>t=r&3`B=s)QWQ=jM0VszK1tt%X)@uWfNPY|j8Uij51sW+UL*gj)yy-A051=vJery@v)T#z-C} zW2Ti^jqqx`l5mVP4+d_^)5=5U_76Cw{+m|MhED7?G7z3iUI*W#B#Cc~j}og!A{c`W zBmD_t{J{gz;Af9=4Bd=P2bU+-x2=!-TnhI36h-fut2u+kF|B`3o2GD31Qf=hrh z;FtumcoIRGCs8J9Ph<4n#^`-bG5c`R5Dk>s+kouw;e-0bV4zHMLWn*wv?VFLC7DQ% zV`>CN8I+mgTaG8Rq(g^s4wTV@X$Zn_EM~OfT3Q3e>2+Cw7la{5E3H2HA^(RotYDF0sGmXb$4KzbhMoRfm zjv?L>I0mi~shYuUN(!zgd7uzDfRU(0m^uL z5|r`sETJMWL{X-gqD%on8A>y)DC3yzvMtAHYYtEbbUdYgO{cP)3CzE9#+ks=<$=Ob4Z9Z%$57MqtOX+z7S0 z8?WfdTD`|wzAae3FUm%<>_nCa%Ak20G}BwB>ZVin0m?9nVT^K&nj5WPMkv(776x1FY^4bxq#=q|{60#MXegH%={IpqW`H^W9ZyIq?_ZMem@iq9~s zSF4!DS&d<3Lm8_9YO5ZY_RA=`bBNS%Jp`_oh(!wQ08uqqR1VXqMr)PmS{i4=kGIuM zu+>hq5rHxz8QE}!1vFNTrY-q2onn@)YEBzwuAS;*9hPNU&BD+;TlJ@HSZJ;_Gh1Y4 z3F;{#Gm%$~5L9^aeuA=>PSwjs-N#zhPp9aw129=mLMxN4Y*jn?hF5uy*TsOhb-Vh# z8uICYGfs2A-DCe{z^aq$rtO{3WkV<3)}HNmPwsx&d120_=;q(g*OuNY!$7>UYme$~ z=QP}XPLtEQY`9Dvcw0v2CE_dT!wr^kV~Pa863+W*!XeXP}IMW~6llMwF3W zQ)+|4Q9>DbGvwDS?R&y6VMEObTb77DW0Y}!lN9omoESsfHZg1rD-Iq<8B$#`N0}#p zhN28?b#s)Fg23eX1j+z(Oprt$YK;|3BqX7Xw7}^bo}k6Uq>p0dPn%kj>++46a8bANff@^AVL1 zfar@DeHU||#`J=?p8SlNAO;*G{h?s^VJ1^#2+dF@hJXtdHDgeFBIPF{sbL!^V_aDv z6`l%XA2o9$jbOue`#F8NuB|1o^AtPRo zGSQOzGWs=yh(Uk$p+&QPed8X;g zsrn1YYtJ2PI2K)(98w(*l-W}jwi8o-$`AOL?)ED7cggqOp6#^$AuTY0V=yc4{-%}p zH?6?&!RD0@w*X~UW^Y@W1DbJMle2A2_O`V-+Z_;>DRkRb>g817<5uD80hRlDL4;%c z{D}Mm%b`FCVo*r(E(st`Ol6RN)y@DM%i+oZYka+7!vJN9y*!{2PmfYBk1}tsa?p&A zSE;v0iI-cEhYPA#1s=}%p3Zq#hTy(E+l`_OB3X``9&TQDfBo8fYggS{vFx|Si+=fZ z{*SZgem`x-w-YCQJ#NBR!$#cdH{fdbo|ijzIse`VC*FD^>E#z9+u7{2ei9&5GOnw=}kKe16Qe?hy3QLa+S=kit`YKbeeKra7Wshp~TE2AEa zSuBidgj&^?Rdr$&9o1I7czIt@IaFZA0A(1)fHE9V#_BymK1!vYpynoU{CJV5zYW_9 zANGQLs7f|eDI26#3`7qUqa4hsFmP|UhQqq)(bmFPTX9?)?RZ;pw3Zo$8kW*xfZSrJ z8Z%%Nxa-`B?l*(cpgT##0G@X35t#Y=F zat@+1IwB04S1=I(@&@Fk0lSH)dZbv zrj2}QTgBQ}1(!EO?{{>*yT#o-%DG2wDTL;A!W_9 zA5()Ge>eq{!CaZ#@@o$p?qoOKeNcm}%$@vN`YX}s%1E(aQeC3W*uWRGVdfTHk*4Gk znlTzJh7&q|2ImG|c>-m?J(Ob}Lm8=+31xli%8-ST#Fa7Dn`ouU^bpC=5E;9ijBVS< z%9wzInkWQHOf)0;H1rl}3@!v2;C- z|4As*TGucYI37QFE;Rf{qReCeWE!uLj2VON@ela&gbic#U}zjz@@x!8>dHvn*AgcY z@<86U)uA!(W+E&_xE{SlMxbdW9?CH$a3PUiBkmYZs*xINEhjz6F?d0f8S^B>(B368 zb}{B=Zk8a_24QGs(S^K%vv~y<^9!yO72PN={j#F$>&ntEDhqFv=U>bFIrWb_;oqMQ zxE-@OYxk0~o{O&fEcD;QWU)VexT>?o;&XQ zyXEfnEezgS61lfH@nGeV@QRaBWm(b1Sy9Qf^nfe7w$78A0t%f-(UU+IQ_sbu2 zKKb@rDKEbm+16&49Uq`mJ89$_QCH%KD+83V7iBPJR%zrjIm`Jr49X}oZB(DXpjp8v zmnmhlIjboe%Z~)0jN)^JYAT|#Hfneqs3JlAIHn6?wydHjFY6;JhX~AQ31tLDM_%?G zZ}qky1Imn4s3xe`NgO{(BTmwaL+rSIHtK;qaY2U3ExPlTUA3}aTF{1~9}f#hF-c@* z=!8$T;yjJ8K&$;s6lQbk4;lF+rPXNGawKmxQX?B?D;sVnpRbj#(kfQNMrzBiX(ude zFD`7u&$Us1sFhC?WI&T)jOB37awu;B4G}Dcik8E*veCAx@$I;=I@K6KK2C(kqn>2V zPO@eu!m1JFMZe--P7`8mnnq#Z*x- zPNN#8<%VeB{gAG!-Xhme!}ZtlBSiUFtpam|7qn3+ zXUUIYTfaZBF>CW||M4An^nTHEz#Czo48O8(OYPk>Oq9VC@|=q651Q^0Ro=|0yj@g7 zecbqmgFF#ki8})~>)GnNL9(BhA2QA!Q?qEQX8=Wf#L!O!Xt_ zMZhc15#<PO;}J>a6r`||C*3M6U|6K(;Ty39|xK_ zq(2-&X@(F?OJamRF}yjEY?f}uUdH6ehNQ@*lqXOospSMju|`VCNJnrC2FyqzahX(# zGPKc&Zk?2tW|Q4aK$$EOjsd~wX|obSzNGs)D+xF0oymH{Wik#opE%q^gE9?LN+uP{ zk0R?*Fh%ANsz|NE!l?wKa4t2R6IUj*E{znG2+EuYuai*bRCFVN<`jnGVW><@!`Z`4 z*vxP_6)4kk5-9oOcPa*{*N_SHF#aAn}lfN54`JFdZ<`7RrZ+#O53(1uOg zmr6Wc0VRY>yuC_1y-U1cxA<512bKBzfn$pO5RUNz%9IECRtCYC@vA^-2^>R>96YNP zWjx$UAp^}APzG5XLNlH&gn=cBBblQcs)}OY~&eCz?uxEg=7{Xc% z(prvaqxeLyS}w?dG7c|lH^1Iy!&@)dztw)l>uo-L#d^*Q;uKqEoK87LBOfkW4ihYg zQH~jDtr%^i8e<2`L=M&&!^?p(AKD4i+G(b>6F;=$CTa=Ij7Io|v6#SGASi>S*(fT_ zvr*0zEavjE1=etYl%I$eb3_E9RNSU6G|c95XPeyDCd)01cViY#abD1)y)RVV+{ zMz;6`cGIhz^V=H7_qCh5>vm84;Mlqkzu3L@=g@6;{Z>WH8{#?mO_$y;2Tbgq;MkrRbtCcr8ykA;?lrki~#9Gz;8{GUaf`TPs9n7K`CdsW4QQS15jG@eAv|$Lr7+;oL{QpqqzkS;8v+1f8HJ){ikvwSh1dL*Ip``1{ z%~o)E0_(xO zhK!pePcd9ZdzYjO=&==Lq(TxU7*n=KRL)sfgYM zl&J_0st60L4hev&4*FFc@U1x%PzP@&Y-dCGuEy})O%Z#VqxR~f_cz5HY=}G56pzGA z7}S&y)_6Fy;c!TO0uWr}3QxT1s(T$lgL|Ir_5Z8DfJHV6m2+9yk<{wa|IX$)+6KfKJYoqs7MeME#-Bo=k zsA8XQS&%#8GP$lm85;Wq%{baW+P)Ub-eI5XWYP>q&cKE##W-M! zKIJ%id!ndR;^79Bx>I?$m3g{Xdb(G8x>k9(lzX_8c{rERQNqO@E(Pv8@-VdsvEOZ* z{@P%F-+oQ@I{Q2ahy0am{#y9?pL0I@bJqOdr_KIx!sMSOO!;~A_#cLj{AR%5uY2{o z-KEEw_ufl;_2uYxw!7L00oIJOR=$b1TxTpW*^5?iWmbr?4|&U3w#*c*e5#ESiPyy{ zt3?XS8JPAfT7Jk|Es`sjDAdzLX1KL_2x>8EH8hZ8d*H*HRrO#kdkeB5f@%!9ia4g5 zM%__RyvNJl5@qj+@{uZLf|{QQS4QL}iri3GGB%3gqHH|&II1mrYAkx#TK2QG8mzJE z$61V4Sx(^?SK)MGenDNJX*>vr)sRGYUL#)#gQU2TBDw%Rm`-p`n0`z<*Vuq zZwp)B)3|id1oeG6a#sIyj&r}?z3%&+>yE9QvUg-hkM1vd4}Ldl#fRBP_m@AqP*!!j zsOna3!`+0+cJ(r%4=Ova4C zl`(v+e?}QVOe@DoI}I>V#%RnuA7xAkV!{+7c90^JWX4eEMnaa>ijo8<^cr%R@k+x5 z^wmf&H!k}RM;YU1x#>gQ{N!0cK=1z#c4Z7@ATyM~zZ(Cje?S>rV@PmgRTF_83PuLw z#6%wCL<;Jf7oG@hw7N2edXsUY9iGzqwzrOxF@|i&Wpsuwv1E)WV{~P3kD(QdP9JWq zK$)&IKn$qgI1P`)dr@Pi!Cq;cjM0fP&&mLFDzLZ!D!Wx)dZ(i7E~ze+eOp=nbydZe zP-W@moCn8$`6lA)b3T`kY`YM=CM$69S)V0e1Z?;{%>7}^-om7as-yVWK3tm`TNNKx z5VHIJPOp2uu6cWWtD+9p#fJiAN)irMq=Z%;kE+g!t2!N5logeGBCI6kAm;p{eF=eI z(uN&DIHn>rpeooOeoW;7-^%^I)d&4+g9GbAg6aV@p*tJGb~Z)qZjRjB5Vfy1`apf` zA*@Z1)PVg7alv)*!F7j28eq?)#55m?(;r3b*N8I56ZPpy&Bqd(jwLju12_`(gl3W; znwud^qnAocl27ya_H1b)aPw(WR5I0-P*Fm&Qd7oZh_o!7K<_t^p|oVqF)5KX$zipL z`)d>T)jLytnS~-rB=^akDYykO5`VL+jH+Ytloi(?hC`hg4;R)tm|k$~0xh zG=XEz#9?tJEEzpEWnPm|=EP&JjIqE3S4Ju@5tK=dXh;aDiy;e`YQmm@GAJ_fXY|f6ZC& z*Gz&kKTnwQ%ft_V88hL>;iJDBIP}}z{qJ<`dG7u9kG}d!Ogp>XZN)%>G71yQtl?2( z!agS1a*YhpkePPOWUYLPjq;QB{3500LWPBdGE>p2txzphGSfv?LYa{&H4-p`IF{^1 zVpZK3%U-+{8k>>o14XXJU_7Z>)K}b*bXVn#@%rH{2Tu@ryQmSkL~8!?M2sKukM{Y{D(02 z++Q=0m4PvnQ+Ed{!+z|d+ZDwUm$Vu)QVHHfA*6&PRgsL;0<1CAnDCpBU=5XI=d`*z zhDaiL9SSrAWuzLDk!DC;$rOS?vFV9=li^Vs^`(>XTAQ&E4X!ZuU>oe2R+j~gVq^|t zrI_L`CYmu`KngYYz!%2bU#(xtgN_ES$?~+>ClzmlE{zV0uF>^UD_v9Zx#r^BX z?pvoluE%XTzi-tU|E1S`)_lEt^UnvoA4csjNy0{<__`x;wTY1>;rp`p_+>^fl|RCgHKTL*}ts*NWo12rTcgfY{2 zG^8Ot6dN9Dj)y|kCqk=E0%hRJP>!K1Gxg^ah$V9+wS`od(pzqwXt`yK{obJ+Ot;VJ zub*zda@tzav$Fcl$Lx0%Kd`M{ewz< zeSk8OD+8c`83TxsPzI4+1ba;=1AGC>NRnu#!risn&AHmuxx&q<+zlw>T#8+l$p5-J z<~nc5*|9li+onfbHe|1JAVHZ`t8Dr&%givvDaRSZEv@SqKpec87s+^c?@MVvX9%aleF?lNV&G>7aCD!lEw;U zlqE{_G8H=mMH6dgD6bf$QjG@6uoPt&RX4R|PcxM1re!+*f9$;lbX51+_C4+zSKOhL zx&bZF7D_1vin~h)BoOyx;_mLm6A123ftD6Zy{E27Y-Zxg#NO+__snFVl%DgP=dAa9 z>wDL_*Q}k%o{2DI|K_@{>%L{Yu~N=x8D}gM3%+nJAN#1q^Tf#e2!S%wEx2!jNMxM% z6o?ctr(p_t`?rObB`ewJ}o$~ddQ4GR7y1%IQQw^6~{Y$n)hEkbQV$4ALo zDP=DbuoenfOU3N93id_|zLO1qw>^K41JB)ogYp|G3K%8w8p_{o$9J-3Z?zIo?qK0c zxp&sMs~M!e8cxWJ6}j-34tNtP^X#g8!CMHd`*8E>*rPl4Cl~RI&V3sqziEWVS*wPr+ZL zWGpdft+Qcnb>w)A6vd2F#!fJgnKlf<%xTOM588Bm*TUS{PendyA2h`-cK!=jB3yp> zxV*9P3dHHVtsmTPztN_>+1>C_d;JGAZ5Xu~8fA>4i)lc~=#l~4ko&dQ4I0c~f6CaX zq7RH$`D|B5M>^K9z2BR7(Cnmml{mC1pfamj7{k-27ECpD<<-Z z34fTf2zC5dC_^!akyP{treP>5^=&+XLK#C?iPBDhBc`GbPB5HI+Dr!Yp^U?{?Uy{t zP?&v3_oV1xHl^QCDvmxgWr{L-F@}N|T7aSF$B<(xiA@KZsDw6UvLUL>wN~woHn?Qe zH(S-WQE<#)#ti<;X<89zJpJ3R2Y&oA|FaL1KRFWiexb*?TiM{7tO-;e4)T8#!1K^X+I>4Fy+AD#rk&_na|3k?X? zz&-Oo!5s{{Ow9ncACLtIh;~<_#{@|R(QD8Q%`r5}kXbSm%7A0qtMUoT&;pDBV!BGP zpCP5QG^L}AR2N!K)tS25Y~A6!o}>Al5Mz$zwV%juJ6X_isu2DdYV~(%@452+3l)%L z2Hrm~aP1K3E`4}x0Hc0Mg2@oZzHxrw`kDUsPxfG_%=yFphf6Vcr>8u-t0=8KKe;m} zsUs6Rv-Az7x=`pVSP$t&M$7o?RT-l&1C;s0XWMUHTYmA_@|)*2GG@l#^*%N8_g)Yp z+1QL7*ogUfG|EKBw8HQk6R(XTG+|I;a7(wAXrl~`GR+7s8BsCVO- zcUN!uZRz?S7cT$yodqZwWxj+eV?dcB!-kgGTBTaa5|l!qjF;3DWtb3Vw#(QMA(mK+ z=9zKlA+uvA-N0vV;4zknnLruLi`y;`?GTEWLVHk(W=QyN@c3_X`O}1=XGNl?1rMOi z8xrADN~}rZjgxUl6QJSEbH0-Kwt_iV&UjnFn2+9&1$!Ab09dfsn{zi=@^@K^_F9VFEyUhRk(WZaLN1sm z7hneQQWBPCZ!}|Ww_xnDVt80HylfaDL)j4{IbkEXK|_Up_FNBZp{u#bSs~gcS8i7* z*UE)UW$Y#37#WJa$c(qxO1R8Uy4+E@VyHQ3HdzW6S&0^z^WKrMuuyZ6khxR}Rfe|? zbY;WaI)t;qma*J|vqZ^SpcK5Vl)t5r&6Jr>7n@BLDyE5)uSqRtE97sP$>u51wqqzZqOLvbNYDZ}&G|d=LMsNN#x_b3JCd&Rox=xf-^S3DTfRFgm zC_?~+q^zlp1au3DMj47}D4#EUGY0Dnx$^;(Ay{Le3b2J$L!E6d* z$aLVAc9P%LYOiTES6eh6fMZ(JAGb7p(%kroR(+EmJ=xrLwW;|+eciEpKUMtjMc%jP z6K_@pUC!KdIdbRu&~0aZojwTl{ysgXXtggb$=Dd`; zyo9Erl;-N3j-$mi$~0nqLG=SD(~Ry?jvi%NGKe12nHdX?0nN0fMYp9zq1w}<(Qkq< z^DxSk=k}E6>&o-HD)PH3^Sdiy`z?Yn(^Fg8d&qz?#}5pgs2wpNdQaItcLNHVnp*AG#W%tI)1e&D0?10S62zj~_g@^R2i|B;7Lrad#hB{fQ$ zpn_MXAq*WNEL8FUnh<#=fY@blOV=NMPT-iI-8cQXcO&W-kL`#x!TEbX7`qER8bkfn z5KBm2TGbRDhSn01WTNAmB4X=9qkuA4DoMt}goQwiAx)*2$hNrX);JP(YC(9LYB1?h zMirt4$IulTLZeJuP(Vv?z#~xx98>S_Q}5{sl=)@r_CGdkzq@J2-8EZ(UApdv1hDQs0X$cnd5zbLFfzVVV&$05ll9yHL(p zY0d`6ptdVGa45Sf_1lTje zhO;9_2_i--RKq3Sc9K07;$3Fqo#vJ<*0$U2%s1M})>@0<5Q5VgIirOZ{KeLyr4DkS z%u;*#5?kpCN99U;*+M1v9RXuL7c|2_q-&*wwb6>ZZ76qx9o$9i_Y}-`6?~w~T%~-b z%mOF_jzP_kSkY*FGM&BEvDaX)1 zdf-!-em>YydYmwWr~1=ZF{(29X)y?354MmfRR&%e5KM#i!v+miT09B9v40I^Op-@> zn)zFlF=CB@R0tlK7R5J%90OVc%6#5#C>;ND^_V^m`a7Tf&GeVYOzfri5}2IO+55SE zwo32kxGGaEB)XCG=UaWV18@2tQN(ES=ZBcwgC~DX{jKmy-MCa!iAD{& zKSer6h9U_j+WAX)Ztz9BbYGx4yFYL5`i$z8eu5zccy(%xEZ+(d zT^E_&ND@rO7`AbKjL8TYV>=0_5$>Vn86XY>niyOR@t}bGj3Fdo=JA830Ys`Jg;`^>@%+KeID*yUl872lF(Wh zug#8b%Yb~6*qf8qmzma)noyS%(Uca`Ql8m;Y+v`O(z=uRcQEa@CbOd=v%NgCy(GQ0 zIJLDPsg;`E)|?)rCF~N@nI6}b5#N~+*Pa^F3g=B~Ob71CO3>vbb>}5x>P&Y*imouN zrzpLrIHRWoF5v8*%G|!H{N5_e?xS{1*A(e6mAJN~_fQ$-kHN&3%HE@uJx8j0q0Jnv z={r`_51r;@EvZun`c45>YGLxFtN&ar6~^A*e-7IWNcEoEk9FDIXRtS$49&wJVBLv| zZZcG+T!$VLnJZJ?dldY%ulHaPs%L*eXC(%@WObBfbyZ~P&|NA`>L{ir8W$yZ7NvC* zrnVQPwil*%6lb&-XLgokcfqz?Q_y!1dofG;j+OSED8-`hzLRDBXDa&7R-*dORrZ~) z)LpLbxq6`Y!$Z9{kM@0Xyzi4!eYa2d-##;N`z)zX5XnB>_rY=9mBXDEYr78>cUMEK zLIW+6asGQWB5 z_}Ojqk9#)#ym#}j?%VEo?Y!@^yUy3O-p{Qm&_f;UqY3fTr~=fXK^kIbQBlKSLNTSc z9#ep$Lp5>X+V}{RCN@kR6RO5Nm_rjA(T+4zOe9<~B!F!&{Axo(QRR)u%x`DV9&?ceu)^hR3cd<7S9(5 z=AgmEBw*6f`Y?Cna{4m0Lfd=EL76%s@O3^vB_4nO2J+xVXlxd@u@BL!cBJKRc4&`q^$X9SIOA( z5Lpr-7{z%*!g*7QCK`W^g%CB{g8!x&cdoT?zJqjygK(Q2!^wf=IZhJ!l0(+)3H#oj zk~MQo+%wi;6XZb?7MD;P(SiBcL<**?;Z$aX--mreM?Gj1gswU&{bG z21hW3GE`d6Fg(WCQKA3{;9~sGK>kZS2s#wXeA%T#eSxuz)EEHFqNY$r?-Uz+aZ}Ay z@}i{49S4sNV;h~nEguq;F^tY5G(%AiS;>T@k{H_nh@l9kPJR8p=GuMDRTRc+qBPp8 z&}^C;FSp)3*YwMYhA(S>zE6-P;TU%sGz#|Fimkv$6?3}`|h94zjrcMdmy_598;D-P^KugB|oVp zhYX@6D3co93Y1BU1I?h?Q({_^qgyDNX~#VoFajqcq}`pL+?}7I%TMhtOzSRA?2I$hm)s;cuuMc1*i&SPa=M@zep zmg=y&@+ef9eLV*YduvezSh3Vu0glN4Lv&*)CK^op659(B+K@TVPi)UmZOct=%}r^` zPwyzo>?q3a+?U&34hSp4h`)iOWdp~sfuVfhBvogs2F_LiWqQw6^q#Bix>T*Zx?lI< zLEWt*y|<6|eR{g@(=+{_o*DS`EUDXP`){4<{qR`#l|vmD4`A9aR&94x=XSucRFbAG zh;Pb{tWQ_fr3Tie1l)=C_$|!!w-A@#1A#KmKp7;l0Wo*HU4Hl44H@RAy_=EXyUEK-?djF%?$O}tdf(ak?v5RIwr%}w^QK=mtp9QCnjcoK{NcSN-@Lo<>$l!U z9{aNyvu?fg%9Y7ePLCdabm-9icD9A)id?xQUMf%t*}i-O%E*{IlcDu}sKVDPgPzK!7vMd0Q;_+bo6K ztwcL*Iq27T4j1_kmtbXMpgm7z&yR2v#ybdN?S$cGoNy&G+L9S-&yKTaM>?=V9jO}0 zj2y#_7$*)HE%qJ4bGKo+SurnCTA)=i_BuxAd56JByim^r3s@rzgD zT<%>c?)&*lSHrE2`yXqYKW}XPs-fjmI*#xF-nR=S#(*+P=>f({+m!{(1r8hua5X#j4yf` zR*aGi&Lk*9&BvpFh5$Z<8Df#43jYKKRR$=dUz35?AKl=@tJbswO0hOxh;$JN@$XQ^ zz%hoM26~i%Dx>{Cqq(8h+-Rb-P)IU$1ZA$#9D`f6_L@d>Roi%_<=%Pq?`PEC9sT2G z`4^{BFBSUM#B4p{_HNm#7gFbpNqT)u`O2x++*bY+?XJy=(7{-m9^D!r*@A^Tkt%Fr zx*HSRP>_fOmks!GbEYpcx`5Eb6QL@R2gV6sj;1D zv0Z6#9Vszw$yQJ%10|^SjFRk096I1F6=MKN&Csj``KY`DeFn zkYv7h+4!T&#$VmG-tpXd&uiCxuiZeICV%&)0MDiXFLjVlQ;5F?b`~l!4Vr0;Bn2e~ z9HWU3Q^%^*F)B?=s5SbCn82pM zKy_fCHZVvN5CD#;_w=Z9bF1I8mz0Z3-L75top;`M+WyDZEkKzc)~x<+`SR};zW3ET z?|wP^ttJ&6^ZyIF_OuUZ7?tf!*=;Il|rD*A~Vq9d3?%A4j35J{(LN>?}rQBji0pL`%talE543TFHVvKS75?R1x5N3=tL%*#h z=TkL!Kiy8E-q{XbIH+rcvAbm4{bamHfAAkcnFrv*q+9gQ+;60r!IS?QUre!vfCy!b zHHr-n9uQJ7J^!KO$37Mq^lze!0UGc<7=9u2PfC5;{})sl0Eh86VEVJuEJ&jaEkY8} zg&u-O`bQ+|1gv=gbZC^JquQOf+B$EewS+Qm{Gx;zNH2O`p%qADvy(nBksQ%`GA>%8 zJu!4Dn^=7TE_D0JxSnaS$Ar(q-b?=HV7dH_M)imF+Us?s^fc3?y{6V+(wYs^Gv`f=eQiYYn`28By>w>Fg3tZ7*F^_5#)W92 zRS3}5hXs;lOi@Ag`3c$sIW5Nu@0`lLcP3whEs13rEv0EKMJby6L`_b-CNox(5z~?u z14*V0$dVili0MKllj=;0?nsQnZFfp+cP2?_qY%dF%1s8)fM%f0bQY&0Z`@s)g&8ws z(hLU7VC?S!$RrfaU=7nTf-*48^dGM!9CMsPnbSa-gZ(ED^qznfrn(z8UYL0iQ-T!+ zk_=Gh?0#&+#sa49Q&qY%dXyo{CJm}g_t6sF(S5oj7$gJxbAD%aE+mj{Y`w0^?JCde zEKTn!OV^d9cNNCB=f$+-#Avfov6}1zbymDOCrJx=rZ}^`G`F(?WAutJjfSw-35YQj z1E&Eo)a@x4li}v695@Z8sp`FOp#Rdr{;Nm&ZX6%@=)}OSGo-16x_yq+tqa&)FmUZ; z-^C-ka|f|a6TgIRxR1-Snv2pjdGU?e(GBV04JpCsG2M;!`Xk)!k1)48A#Q(!?7bW0 zhA}h0`?&n-vFqo(JAd4>^mA|Ub#LF)COaqiT%{M>WTUHbn%%WHX2|VXBt! zu(pT@6lez8Of#BIDwS4+22+SOI9Ll|CLplU*B9oPdv1F%NTy-W-p0LdO?&q??b*}l z>e9H|`QDCgzi!;{!|GMvE?f4G1&h9%H~$NCmu9{3*=sXzzxc|v$xodhGw#%gkw=CM zDYLOGHdm%7B~hfuLq(!iMeR0Qm|6S-yr5~k_xuUS=$thZAu1!#>tZHY|Yzk%im?o zcedd^(T}eLJJKp6uS`3##kopCrZe9@KX<63#cv z%oITxJi~tmWggw5`P(KAIpG168GN3{Q3!oW{%=PaO7$V%DvdIRpY*>DWhf&KbQfBT zp$##AMwy2`OY|6nFayvr?8u;(Weg6SrkMt>#fM(IG{?~Y69}n17G)@3u;Cm?rc{p! zh@)*m7@G=Rld%MZW*W%mHWQT5&?s}YrT#Li^X|pwpHBRKv;6kagtLXdmqOQ{c9~bT zZd%T}PsPm`8TI^-#8*a_&U@+dh9$RlZT#M2_s^btzIEGm+s)~FWOs97TMi5EnYN^;w!}!_OILEVk!EzMaeWzyJ=uv}IiQ(% zgmFMKoq5SH0(TZ5)0Em#oYuK7y>nk?S4mc9c`l5=-PKr0T@0Erw3#qM<}Xo3cf7jm z80;^g8EW_SnVP<{HN9tQuzg8)x{B0eQ3k3EjWXCo-Cdn)M48S~xMWg03*y>xqnfj# zG+EJ_tQd7xTvKM8Iw!HYAg#S5yR*CiZe`tm(heiby@?(JaH-Uz%*o0D6pb=xs{4#6 z^Wm}nze5=e1B5iyRh8dXnyD#FQRl`rWJT4dhk;{I_oBV-M7ZA#cfT7->RvE0{{m%x zadZCBb;ozRH-5cy%~#u3eZ76n_q#U!x@X%RkDX9u8hrPn!32(}_i=0R^QaH-ZVL8O zhhp+CH2{V}nfi#JdsvMg?q3(?51P@$s9IvffHJt%Mys??W$5v~^h~^n@b<{aj;P4? z$f&l6NGLSGn)b+u_VDmF2sSEJb5Iaarq0s?C<9eS(_m^YUQ^}mwvx!@z?LX`_-JeU%dY2XRpor^rflSr#y3U{Dd>3MjsnCtisN^#L7I) zTox_k!!84k!BWYcQsxdhYnK_%(@M5W!d)k1E*GK4#Cp$?x6qvPj)FB;#+-}LGM}|X z!UxK%RVY`<X2=9D$OX^I_|Kz}BtpMQ2$Y#2m%R#wMk0DiBzQ@} zCyS88oEcb2Z6RJ_0jI5at(kbMLcHBvx=qR6Dran#F*eB0WEo=> zsiUQ-qeVcO{HHATy#yrgIu@DTRjI9V9v(|X9V51|Zs zDoQiZ-~Q?R!LRl2p$vst2ED{6oD3fPJE{!aFb@bq4vgD>Yp4b-)|Y^0u4Qjg2&Nx2r%|ml%?Vta~)varOOblw?pVM`^ zwC-#nQDqM1kagMR8O_D1>ViZyrOIeCV%yS4L67N7jB1aM=!gyPjE(3*#YA+*g!jZn z^{2%5WF!zTPIi2Ec2ajva(6B<&2$%}b{3|>OG{}p6v~w5bd{5q4KdB^r#ejsOEGDt zA8ucGevgvd0VJDFBH4t3Z>G8zo3W2q>PS`Sj+evLt2_B%D=EV-j53H}m-HOj*L$R-9|veK)#MS5smbjF(3EF%mVmBOI*XIL@-fIbswFE* zn;DG)#}JgsO=^MRw<5ozx)7_Zy0C!~qxJ|$p_ha&S_x+iI!Z`=lRAYE_al)0hJEwwz^(ICT^zV|ap2~~0pzi-p6 z35}Vt4QY|}$*Q`<;Cs>j_ac4oMflc*`P>ilsZ;sf3-bEI*X?I_mmgere&f9H^X;oX z-Msv>P0PR8vG!+|Eq}NJWn5^KsrT7?-)m2uk6T@UXJfFBT15*p!Rp9hbrb|S|GOdH zb)mkE5drF`AWd{IA(&_tR2k3=R%&C#k~WM~bA+ljGQ2%Hl2l|QEzi)m?Eo6k44gE< z!A*Ytjo#k%9v*PXfMe9|9*|@j&|`9TzQ1Gp@0&OMymrlZD^`5BY}rpsm&5k^kGb<; z`~70Z>z}h;#9+LZ#i1Uh&i<%)8&5}xHK%S8Zr-}KmK&=sRUKX;Zi?BY4yHLSfY9?H3F4}G` zaki501d%|J0mn#4IVqSfRvdSGf%i~}-*B0yqsYyc?`qB6Wx;k*GI81#31c%*h7@y$ zgt1%B+-t%1wBdW%3Oubj?v_k<3x=l^!^f5tV8aQq=SB_ZCyx=OjhAMQmt;?nEphzg%KD}Ko;?>V!$ae^QRR-gkrcsNfrQV=p$8aiG9 ztO=Q97Cb@eKUU#0TJAbTw9SgM#e%ubio4rUI ziF3x4yDj>vIC~|OeO%x2aUID7kv!$ul(BsL9(!VDkGlmD*% z{3ydcBz0vJg#LU$1-t$QtM7vzVG_d9m!Vl^{LxICI}dim{)w*B1BCSOubui5`X`~< zMs#~9;YD1?|m zGfl+&`#!2ebFH=ha>LIjfBK~I_QmY4ivmB6*m}ZsLCMN#$#W)#Kj#oQ$ufAnW%PLa z$Z>YblSZaZ9F;hJc;ZuI4=tMWd6-92Wk%PjlKW>1&|_)>%3vX71rcU6g-M#+1Z`Fv z8ceOoE2YMCqKlLi-5wj>7Nu&B3T=;6wPJvMNI50><<_%o>J^RtNV9wOz6ojT>~D4wd)e(tem!ABN@~+dpsuIc*eKFp0^( zJrvC#lmw*cI#$|!qO|8!dH>m}f%7%}=Simt3XLhs;5492FNHD#$4Yw-Vr?XaGS#{L z)j2w#%)Zo)qU4T3s7JAF*-_1zQQC|sO-6KMMl4E`m)ur@?ULwB6(c3yjrlYfB8(kR zAg6QHz2~a1qX3&DDU_jx_#rEP_F(^|!vj~24qQ7pv(orF(xQ8aQ;}| z8O)Wb?yV{7Dlcp;%F^VeX>yX#*lJ9VZb%NROAM)t4XTR{sEZ1ykMOS#_iG6C$Ly9n zeq@&J4|{ff?Y!~Rtt)SBT>8oSC0}k`^~0`BzwdRr=SjRWjec%*-h1wOy59HRd*9!^ zA;_yKga|WeGpW%(iVUs~^8*+)hWl#>#{_|9&{slfqC!A3Kp7AWp_y{7qfbkjz)reV( zq})|iC&ZB(IYN*$MwC2O zoH|;NHj{c{|V-9!zH`yc)RUEBx3Jz=6(|_y(UfW*Ab+6G{@k6f-=--J6f2b zu?Dw9Tp^Dl>|)}EdFXi18Dm5oy`_fIW(dLPUA=%9J* zA7%cQCmwSGz`}?Txc1W*WBNjit1K>-xW@n=|GNhU)G#u~LkItcDuawS{X-F&p-@Ku z8~7gwmy8d5>~Dkq?a_E-2Y~9$}|(Z%!ep?QFcS~ zb*M7+EqYa^UVD|GO!GAj{J+|(ZJO(?P4BDkoWJ|+k?(I;{&XPb^OQXo1J@jMnpd#m zm4un&RZrOmjJFIQV-qpfCSsVi%GNB5%blO+aFWqOWPAY6@563Hc7*m<8tIFxGqEQB&uOtMQI&)*%vLahDBDLvJn)IlK^q2;q zOn!2Ec`m#xUD*F{q@1Whr>gK(de7JNU8w0jU#$bmoW~>^a11r`23hg*hx#uc9k_bD z|N4o(8>jj|K5fD=mj-TK8n}6B;Kqf4t7rNz9Pc@Mr2kNLZ*^H$Sy5Y2PIG=nOI|9x z#+uCdrqsy##L$MgkcQachUlP%$iVuDz{c>v`VjxS0p7oPx&P$0=bK%dKi#_O=7yy= z*Dn5i^UCjcZv54C`yF@Z`=A+b*L$8WcimlxFay&JEWp9O5N42OQio$JQ&3ZQ060b+ z8K{LG69v8rB=>{`;6M`<+#IO_$~1#xD3rk}?AEAoQW0?ehQcDF4hkYMY(NaWGVuKR z2Q>NlX?=a0{rsAJd^PT#YB%>r7uP!HUH6@wpvv6Yy5;wc8$mO_tX^Y+GIPJ4_2w5- zU;PLhB_~b3JbuF2(W4Izb*!ua>Cvl3O6cj$e&woN#Fh#QOIYrqkHWkzDbDy<{A1{d<#Sd^~`q(mk9Jqla zMBx+U5tEc*6BS`kn1?-St$M;DaJ<5IjMR6u%x|1BaDs*ZL`$FX=HBBhJjYtP4wpMQ zh_~4a;i`d6c%vl`24O1KE!#C*wsWXtmjh-KbN4#(;LE`(1E@0T(}(5Golv~$<VjD${09?#F`#L8Q_b)Ixwx{HWEyxsthQ^^l!e&-*a+51un*Sw)(&MG|iZvNxz%@ z)2;rQalR3f{``dh8I&vXRuuJv&4o#WYm93v>xT%Dz@%xEr2Qx{Qo znXK5xG|X)ynV0rB(oSlN27sv8T}OcUD*Jd>Y|<+tavP=tLI=j_83qb z4A5yJGk-C723rWoB7&nOJx5D=kC*nIEbk|VmFj_WK$-o0r>lEWpp6riJ;$-K0ES;k zGR1wU!^H!KiXq8#Rb+ORr|T**`v5d$8C~cu6(x2Q#CK*#wP!@Mq(^GgA~k7|b!jlH z#5Cn6w_zRTq0-JH5P>SX(YFFELH0*uUVs-b$s%|X7CR-E^^`AT3f8of$rK7!s zV@~$nINfveOz*9;{hwUy|Kw8tCzl84x^;Qrql^95&h}nB*?sO<|DgkYRh7E3l8)m1 zw!+-@!mKs`O-_m?J+>h^vMC|F32V$_R1IheMTRtlht#Wr?gsk*?(6f5r{}jW+dtpF z=GKN~H`grwY}3kbcWn51_txL`?6|Yn>8_jeJ-1!=++FHC_rNjJj5743_0=0mf$e`v(BE~#OGodY!h-6cSUyPFpCL9Aj1{|aI^KbI; zZS?kmBmYtabK!^!*WxkpH*4MM% z_;Tv2H=lXo`s63COqh6n>{txSJLu?8Xk(e8ltzlVULvMDpRpS>AZF}DXGg|FZKXUb z8)XdmTi3}MtKq-F(zq91r*JbQCunIuLoR5gLfU#b}+GZ}?ZN}Pb$?~w~c-nB> zESatfs4R><3Wk>@X56s??3lq0oX}x{h*8p*vC8PNW|5;6p~Iztjv`-Mp0^p>UBYys z2ITCOGu*7$?si;H2cFk3p5G{8z({_;a8AHbc9p6_DA_ONFMkCDYaZ<{%DWYNMY6`Q74ZhrMl z?4}=2#CLpK+uCrUqv?{i?SqE)5Aj~>e}FPH&CuG6UT854r!oDIh8v1z2*>E-8pxmO z>rW^{qD*u=n;tVWX#Q;`1Vh*Dmd@K46-J9FhFdz0^w6#Tk3asln`-kkkvxPl4_-A$ zdV?E0vzN%4QRX4uhbpH}) zrsI>U`$rOPXS$yYTEE|ALGI#LqNj}we$qbniJ>Xaj)@)P5N2-{Y^zX>u&$gl^F*M2?t?0%ECG1hcq&qU9j^-H5bOFjB(}bM%<4~rrwy>)*yS+5M zy%c*QGx{p9@X`cjvZC73!<*B>HK`FzDdG21BkR(m3CbWkewgBzNbrzBgP=?Tq z5oP+%VsPK#0c;_-cx2%6vHoi(`ad}JucA!nzJiXT{LbRs&Z2A#vuVjpXiAAzCq}5_ z!wAhptMn)n8hk%E;Etc)Z{A)%?A`g*&h@u9t+=&z$!8l^{A2sNADuV<0-ABz_B-U6 zz0O9IY4r1G3i56WAvB`~&4l`aU4Sx8@cgQ6TFduk|@Y1p;9&dG^1m^N+v zdCi*dSFHGc=`#IXnK^U6dSmvNGhYAl6&huxypJB!`0*!3jXX5OvB=IU&0H2G;d_f& z9#kaT84V^0a~q}2Y?Cv$$e9FX|N%pT^20wA^eyr)@f5mrcE6cImOm% zm>30)@f)S|9c2cB@fare9%&XZ4!$~vpeKg~PZ=IK(Z+kE!p%|OY0n87ElqsUK7Y>m zvZc=fWy&^8Jr%Y7r;`aiKOODTzTcs~tfoACb@*HK>n-zw002M$Nkl4 zl%f9SlN1OZOLGivjjD_hWehQ>N1%-1c?Rc@(bo}NI3A5MWd1Kkwf)3zYQ%RW6NgnQ;+C9QQy@A4&sMlg+>`lm7&@|q!~2$ zo%|apL#F*2#UA>rkXwU`h0-?YpNsm@9xw$Deh+vC>QS^1LN$!2Av#8@3iZnw{1>5` zS;p_*&|oqd7EAzXC)gA!%ACIt_geCCT7F2JRs%2kd z0cA8-n>6pE8gZ+AAH34oe7ymN-&Rs}+V^RiX=uTnM7C+d`Rc2U4evM9U+MVfXv3xa zFU!L&CG0*HvY~3{g46}i2R%PjHQp-m`H=||9b-mVMGm)&7;9Jd#*5cHHvO6tp*fIs z_joP_{x%)T)zoBR6H{|px_V!V2F~B?IH)q3gm7G0TVg`nqf}63y24f6;VNC2N*5B` z6%^PR;NKk>*om%Fd{}2oK`>M6?Bq4r_ZBmo+f zt`se&!k+ylz57eCI=ip7jM|=EIdA|oK+L}cOAJUM?9+F=y#GW+KiN(|C7-E*E(2$% zFcBuZoUZCSRoQp4qW3t&o06Wx#kxa#acoJX=?p*;A3xTbbEknc0gB zHo8lBajn_W?djpD=G5>em{bx}Kp9PLVjH%3A1K1wrtT9}x>MCU*ox29^jz5Adx@@^ z-b>ZJP-xB{M69~|!lAB9hr6#F?Ye$k_u)z1%`>{&=XyRn-}C7u-R+Crw=U>DKCioZ zp`Yq8^?!K2_sZ$c3&;BoAMCHG>8q&dDJ||QF6b)C?JUS@%S~&^O3fBu#JonUjxYl{PH2UmqfP2Po?|t9Bbph^8A>L}0k2=&x6Y8rC^J|XqZ;cFUiwbUy z42CcR*+vc7CM-xB9^4!e(gH73RA_5d7{~@LV0CCPV%R1wnc(KYpyq%;tzUo^ttD@7 zt*4h34W>PAkYwt1?7X*a``s;@f8V&_mo;mDTD9uu6)S&*S7y=T@7{jr+u3vfF>CfW z(_Xvv>SD@;Ip=K*I48vE0S1JrdS#33H2t3HQlH z5o5E2iGcKG1$zU=!HF5G#AKk$a>RB7jQ7xH0?H^k8!Uut72MSl)@l)RrHJ`9Hd;%V zbH&WLLdIKs##>xca|FyeV)k27?rbIhEeqj1OVPVlqIWHYOO@QEa?UClXS0mAT?ti& z<7&=!vtW5zvb?N0{x|^%`yIGsenunAFXl?`F^S8Nv-5DT;X7 zB5lU-f(1_&u6?m$+l-6J+kZKm)c)-O&AroYjpwz7ze{u$i6|)eBSwoWMsqHeS28uY z3?hsEO#R*iy^V(6l}(yQ)VOwo0HcpGQFCP|xS?${R0dlgu_j&_(qJ+a$v5eJ!PNZU zc3de)YYCD}D~b%)Ab;46I06v$`v_d1?;N~r8?WCF9{kN?4cB<%#s1*~1Ip+PDE}JD=mFy4 z=cK>r4WZL3aa$KY7>OLuibO3tsNVW8(S6 zj)IQcv><7GHPbIs>Xs&+o2~7nT1e@aD;a49yh5mjbeaZ>z6ZAy$6RUBTxrx?0m{G@ zgLYCQL7A&4y1@it1{~7}Z3Z+0kp>b@)3wH?Yn?xw)Z8fl;b`)W9N)8X&PTmh=dYO+ zIb&StBD&yzsu;hMzJ+)ioJ+kLBJwp4WIVM_rSpuFBK` zWlBs?CNZKZ9?N=wGDMgG%AjrAvuLJX@C*ugge4 z5p4!2lb708kb&wc%<3s5D=neT=&Llhr-Is>y}tw~(~knp94a3;RMCH=Vt@>u!5BTN zPE-sKph1ygySVMg_JC96fSA6M<$Wj0pxF?VIaH*B&-Xw9nTbaR$-p9m8GRW&<>@`; zX}x7>x{{PmjQ7onX~~RiO$lvF4b!HCH6*I)5<<{jYA;IH)fDy~DeJ{TN^s0+GEkVH z%=!Jj7g04REWz%*RHM6aPzR2=c&GzY@2(u_xPH9r#>wuRr@L;S)qQrp`}W1oTjx7I zKG*rt*{+Yy^?iJy|KkgNAD-*cqs*a!{RjFhD|<`#b?+$ZDa zwxGN88*P+Xx$4(tE52Xw-gk4~`EK^yZ(pDD?ev*s4bziPfAqwZYZIS1Gjh~1Oqa2< z$u?Ic%0wYDUZ9xcDQ52#vs}>Yk#mp<0?OcatBkc3+Zmv7W{WD z1-c~t(yHc>nlILc{b+_aYl(Aw5+OQEj3U%OwW0su*D|!ew+L04s&r;bk z0xcPS=A;5FnP45213%JH5;GJ)qX-)+4YcLETd;O3na)bqZY#!KJGPrG)7^&QY0C(( zVTRbVVjMXs!}wXF#6@GICF2#P;{}zIcn6*mgJ!BH3o0h@E1nQmKP9PoPG0@2tl}AI z$y4IuDWZMPN~>P6sGVV7JJYdxx^2meW(Cj6QlAh-jpj#;IaA+y)!h?SUv!kp<<8WO84PPR~sJW99L^7I$Zw| zg5ZhLm=|p_=8h}g_{veYcW&gn{c$m^^_%LZJIC7^&o#GQYihgR(0ujrC_@nEuZp0L ze(R(u%8-td0cG?MLnXIKDx0DuN(X{RcyN}C-v3LxfT>&4{gF5m>zRmG1~k)2Xr_fg z3|)HX0EHt)OwqTN41ebz_|W7MV00bmABay;qcjF38R{A6)94Gtqi_F5DDzlVhPwJb zEG;~E=VLL5y7bZ);78v+4mkdE&-`D7GW1a6hk%CGPK>_+gQ`T!HU^X-q7I>%L2ZoO zW8y}lv=%bY*Jzp{G(%j#^cOYwV+^XyBTdtE4EAhInOKA-ck6 z_W|V&zOKgRCiV4>U(PmvQTzMlg3qcVFJ^k2Qf)4CnxFjcvr*3tjd}!WQ${3D z8WR7+(9$I8NmL)0rna>IAb_>#IYf38kUEeLl>@G{|DoO6zm(*RH)LEF&o)-&A zrUfpUq!5%kQPq&3YDfxI=OlEOWg}G8f4s7vl4N>LVWu!>rW#8UVE83<0V8Bc^HhR=*C*#XZk_A=_-yw_sB?WEo$tSKuJ8Jp zp3A4YFCOndqDPs&vVFRJMY^KA?!xTO{EUvgly=M-PLFFzjcG}VX-|F+1$j_9C{=->`CnBbCuT_()GIXtj65_$|N2s2cn z$3z#|zJv+C>VN=D_|*mkLX`o^kn;0~QKs3;n;2z?D&tb`wDbP<9d%o`-rcxp3n=s5Yp;Lt;?&#EJpaj4&)%3kg+#J3UBtM$TNP z2V1wz(4LZA$ptujN%m?dV;ma*Pea^{=! zfHJEv`(Mf1BIlx9%(;6lfihfAOAcn-1z59#Z8@QK><9-|lp{OBmKkot2(xCWs0sm; z*f4{vnSK@wA2Wu^h95grmN?oxcC=FEAi#h-Z(F999m~y@;cUj(jlGiQjJ@UzPbG%U zFoG=^kv6P&M{fEsVb(}V-Y9PISa#V&e$|uW>M4?%r(`ux%WIyI*F3L4)xK<5JJqWC zMf1uR71b}B@1JJ1|5cmnX;zg}Evlwjmb`3{`@Aw^iX>%{DD??(#uRz>vlcmsK21?3 zPLjrrmn1!*%zt@E;k1!y&)7x47i`b-vf=vJu}Q$nLF_q9?lDZ}f(=k+j9unTH(Qpc zBiDBfKkR8`>g-WvTVJ~vyyARo4=}R{NqGx!#NH9I<yyZ zw!)bBb{`5T=|6mcX6UIi_`^uij6vz4^&Sd|Oi{*Q`!#l&j0Yeaf-=-LY{Ey9m>!~8KUvfs*DNE7_}L4DKV`_qs)U@;y;Iw zaa}iFGXH$=*i8m?+n*RHz6%oT1{ZFC{#TNSSP_N1i zw$BFT5CVBb-J#)QkS%D)z^AC+41J4d!vPI0MpDr~#DFqJS&KqO6WxetIpA)+fo5># zFFj+1-W>VYD1-A&RKdaBVARWwyvp%XHvK1(?21j?bL8nl@jw3q9(m+G~b8?;v%n%{41xoTR_U|#oeoZN)OT= z$f!G!d;fS&Lv0pNrm-?zU7FgkFS#*4p)o7AJ}ru%3{;ueu=bd+_UN##$WT;wL}*Vq zslJFXR8Mr6Ec#f#s^Z@2;yx?tT{eN8yDCV7u1*#qDhHpD@^UJE+kSANheif#4vUykfb;4IA^MnnW77; zmj=#N^>9Mj!6uDf}%>yuO6w@-K7I)g&LsrTcvsQw#g`#(6{ zfA!?RDgD*QRB7@o^16v~eA=R{m z2ed{6wS)(1!-L3dJ>;H3$uT9>purRjh#~1~G?n}VS^|RFgF;Xp0f8O<0d3yC&2Ao= zJ#J0AT^e>e*Y9v@*tWfH%a(f^Hr`pg{?`?&eps~RAM+Oyl%Z4^pv+eK;pzC&9p?uSR`dEmNHh$nH$WxTg`aeq@0Z+<~l3>Dswg&cMH}LGM0(S!9o!O zVWrtT#!LZY7MKPDaAl17W~>$FTnc5l_*xsp2w*c21$Q;$cvxUuFFz0{W6f6CUi+9s$}djBM#y{Qc@l=hOd$lXvGY(A*X56`kaILp3zx^>|* z(yU3m?8(BCmn>>uA6ogEL+&$*l!>C0Cu9XL*%nV9n*XwW=Cf8QQ_K^dP^gA+-OX99 zW?Zi!BA;OrH(T~@bH+}Dwg}KL+=sJ5pO&Z28MSZowCm9u|8XGf&XvsiPs{H8a!hmY zT)q0rebVfH#Fiy64dEMNbD>7U{FN$0oj{*MFo^;i7^li z*^F&0EWxHrFV7f~+vEfQjec^B9$buXT=Dmuddo_K4*jS8;ai{y^@bKw&EThK{f4F- z(_5Nj=+EL7Ux-{L{#5@DW%LyFe+^{}GKne57-HLW99`ceG6fDJqYyfw;f6vP!abDY zLQuw}g=Da{=uf6_XOP%TpPA4S^;ifqG|e=_DfWNZJMXZj?zjIZfe=CxlCY5>xV5#8 zR$HsBRXc38weF3mD5&hccYuVww;(F+S+})n-QBHS*1BbeBs+6loSc9ja$b4g@B6-~gew>Y$s>|WqOHDkR*Txwd*}ocMqbmlFU@5~ELsp| zXq2Jgom{@!OJC=rq|ICu&FG>GO)Bb)5>>B+@dd5ls`F4Z>rft=m!k{}H1Gm9sNe{` zOxHlcI4oCOlsAxQsXO0VbGGsJ@v3htub<5Rt|I1Sl3Tg!Cz&%|iG9OXjWS~gri`}R z{O)U~HZHoE72dcvSAM({G$TJiRGEgIdCKiM4Ha36&FPB5WI3voDHkeQsI|!??J`MM zQhXO|zlrfZ3GuxN@sAQD2%th1{|YBnI1TD&>!#AE(~3IjQ)5)nXmTs0%gt}ASiR`i|(sOd%ii={T<<$ zo}W**e|x;`o8z6|ob37LRL`|jy_Zk)UOe9W_0dP?juMnPa`^H7{f~F=epI=wdrMh& zS#j6q!cM3%#YB|>%CuqpcwTC2c1lx*v^fJ4uTt7FQ(Mzg8f8i7$y*x{^q1F$pVm74 zxMt;b7pFgvW7@Fx?k3l2ANN{c4ax-jG-^<$DKZc!(-Irn7>!|*0jik5rr40?_^?(< zIGCn2Ap$7VEI~woW13LYgmDM)Kp8Zofm#EUp=bs*Yb3iA*%%%Pmkjh68f7{nqbQUK zY4r71dHX3mfHEHPjhh$F zZ~Zv#4dj@<8aDjYpuzhF+E)y)Dlj*ZnhD~Bh9NwCKSP2t>&*;ZOxP}{$EHxmmB(_W zQHIZ4C15TVGM0#$i-gR1e8MQp(ALG=a3cmfiaG00&}7D5j)~S{z2!nW^p^_s=JT1e zjToPx=`D}(0mdux7&G~dStyAT>tX)lD$Ka1P-cxG0|pm&V`hM%%IHxMD!%K9LYcq7BkddI|OhsYCfG!;Iq{4Z|=; z$&5i7zH7d3iplOt!aZ*b54>w~aJto@59|(oXutbitIgy2 zK$*>N2zS3{yYGF+o$uM@jSw-n1@x+qUq{0omisGRBx>j4@4p%|i03 zRop0xPzSD$1qT*o5iyQ$NZOHiBJ- z^2(^SnJ3!DAdv(yrXOX{5RX1s-46JBdWximGw_j4=Y7tThv>U!qak$j$T3pmHwb1 zMrV&M^bjiyAs8y2ND@)7qD}eXt;u<``6CS*Y3T%}8SQBJ{}9Twp|La^EwF15UID~t zP=;LG+ROAsD5F(n;FZypWT2p+dgDStU+FSS8jTDUPfm@R##C@cL_1g^pzJqswjT6wWM!bX*c@jVE{EuGiW)ptE_L& zmPdQH^zGZyx4-<+fh~^@RiLK&(IFCjfR#gKj}Djj0c8+hZ0S3)mBbeny@$%l1nhk! z-Fu6B&GgL2`rkprcW=vyRlrklv0YH-_X)jLe+g17) zDJ`H3+V~!Wn|MzjW*{Q7=DUB&fjY;wK(P6j!Jb!gv z1C;rB&C1_god0rjx##Xy?c+hCOhbT|5-1bu+Zg887!Ga5zbPu9DJoDIfqav%GSa^> zIU4ZLmf`gp*`dQuI}X}E(0&`b%b1&{nhO(!+z5d|pb^WH%XAVO zAXXc**YfpUc={WR*od_}y;Vj`Og@4hvskR|nD-eb8}Jxw%naQv1U{JDBt$6_YXyq8 zP4pnutTAP;7IU10m`Q|Ic+Agvm_x+;m`}zlBCuF!%mnl}i}lxw^w){>U5)iO7_-rC z*w0iy#F{6u=gS<8Qyh6|_H3CAE7^vTJb)q9Xftt^tOQ$w+`0YzoI&W{na^ z9rY6jvNA{T3tltJd(|{`2tVGI9SiZsiWOBV zWymZUIgY&I5yH|}L?xqyWuuL^ziwLjy2*~$g}Ww*54>%1_#N{vrkWjm2U#bi7pXM`jGz^R~&>H~8h_d0Qt6D<_-nc*kPPB-4U%g6vm08Lx6OU*l$t z;b)BDr;X-ijTaTZZB;VWq2S$NnQso1j1q-A8iovHhYd0a9;oN*$P5^+A2Z3caOH&W zGdJ8nnNfeOO#btZnmb1oRi~?K&s8^Es#9I5ZMaaYxKO9ONYf0RSE3~uC@xPaE4mMH zBo3g1U)Qeb^6Y;x!9>}2w5NJ%@y}=eZ$laK>yY1?<|k~i zCb|eMt7sG#4Yl-pT-3+VM^XpVOrsTPz#>Fep@SNbggvy1qdh-B3dhsbLMu09t=~fOP;bIxiLqo%tD$Yp#}4LlF7Xdjq=));yM!J05oXz zOGR9#G`2e#X{IF5Oi#M3Cj*g8tTVZ(-8pHU*{R*R>7DtRT?N_Q#l$qzS629F3!$05 zttH*tN%T~bmNTH4zTM@Ih%i&$x38R{nexX6$_db*O_ zqrG^S?T?ONkOB!nOfQ+7u(S8b4!D3H!LM^<`(wn>N(9!Auti-J)#2vx`Gb!y9DaQ1 z$m6S|;cwU3{at7Fb)$pdX%d+7{rLDk()tg*jF0Ri2__n4c5dt2THdn-s!V=Iadull zT1#F^GiI3QN?UVfm={5zjEta6PAaq+RZ5aFF}5x`44r>}-{A7Y>J>k%T7G@C(+$_P zK$$9U_ZlDfdOr_EptmZ-r!mAwMbS(XXa-)H$N*)yA3>Q2KMG}n+v3AI5+XYjqdKM0 zow68MXMi&8(%ANt_|8;GXKF%cYGQkGLaQvkSsL4dQ3f%Xy9AVpRE34BLc>)dVI%@c zpI@b~Kj9cJAH^omh5+e67Qc<|ayKNHTx(s{QIZV2GRtl+SbS^#qFbMS{@2V|f6n;u zuXm>Z@%GeTCrtWj>>C7Sh5%&-A0WrxA|bPJJG#EUXURkpsD5o;-`ibQN@WA++8 z+l2>?G1zEifQ1v9{BlU6yoEyMd^G=%WyDAAIMI#V^N`(Y@;W&W+K59KR`dxo|`;GoH@!OZ;WaFSTR(P zywM~IMw=A8YLYurlsQz8>d2K0V8>ADsxS*ys5vvxoQb|QzGh5sGp3grGZdqm#Ed8* zBSs8VVyD|1W)CvT9l|df$uE0NR53=lbqs$y3^Wss4-%RYA9}}_aLl{Lr)HR*df)QY z`vXpYXnXo2`x7779-d~kXNu|eiN+OFRK8=rd%8`t3^y7}k zKlaz&J>Kx}bXCo{2Xz;!N6Aj8m%0t$Ii09NQk62(1~73OK0 zA+M#ehMZP|GK71G*rRSCLsu;!-$W;mXhRHkf@X+OhN@$tR2fp`Lr=S53 z{|yZKC+*~AfTfEIT5eDaFrWubUgm#Vm7!2Z_vcZg3_TWrh$R|gAbO1MFG#_e<{y*% z{95jzUPZA5QbO8LyLai|6f~m|V<-v%@zA(KS7_4@bt{{+5c5wcL(cQ0*oaFFOhYj> z?E-_`(huXBYgElNn%X5I$*A4FPb8Q$?R}|X1+dW&j?o;TR%M<*nF|DB8c8&%t~9Bx zHYu+(DlV%UE;Tk>X_Q~VwyEK2lj0hBZdSKksYOTNy02=gPB;9%|F2WIU*-7hb(>YP zbV}*Waa(4*R`LFr(sy3jGJWjPwR5f~`6((hDU>OpQAPz-1}L*Vr?EVR+S+#jzMKk} zkpVQ2YS7^ZQ@bBSp*erx@%aNiUt(T2ncdxUjKrfOX!p10F&Y^k+Wq+8uE+cLK$3a1 ztMXChmfniZNVg%oL=3-q$&L7@&Pr&?PH4_fY|fT8WhORfN?WptFw>lotV~X5kVMx; zhTaSE{d3d$@10kCw{q#vt5)1tPf!M4nHuj+KpAC_H{qCIZ)FG^GrrA{{wR%U`wnTWxA50x@0lk$*~v?a%Nq{MfmNZL~*ZQxfaW*QJxrZqOU zIVu`P8D(ggGB{Kj6rw<18NUDw#BT8RRd}K~p0|9Xd%fGndSaAWU%h6{1IqJzYvJO* zKA(Sc?)<-JeFod_AJaa#F=g7Hli&OO&B?!vpZLuyW6lj7erC{+g98Uv(kNq2p^Sio z91~Dxv9aD#k-;isgEc(%8b~r+gH1fc^?c4MBmHHD%(;BVd>Ca!C{|+5H6{&aRv7EK z3JrZt1it3NRU(#?h~X?^t`Y04HDRwaHAFa@a+aAIEEcmr6EbIEydn}zMkMB=IgOCD z+C+b&8OPI-=WQYIG~;=QI35@UC13`Lm=R|B@z(4VTYU&K83R#vq@U$zkm0~dwbPTJ zNZXPbWdXT`9c^VO8OX_ag$rMRrsVyhoQa{#GKf;O~ zj!6iZ(1c1NOMP!EwiiseW_pogR)mllVa$jY!H&a}+306D80HS;7L4GPj5OLj%CP)Z z?)I^UyWimNdy9YIZQjAj{9{vvUw&YAcBakQkL|yjX@B+;hx4-so&9w1$&VclzGqqa zwzy)VVCy849q-xfnm%Crd)DPs%!?b+U;r*w$<{St@W6JraSqVV?5# zYJrA0Y1DPvx(f}>^p{?%{kixCs}m%J^zwL-Dx>8g`j+veNb^66GA~vRC<)>JP(~*u zM0<7nC7FIzM(uRba0~@BPoNCVh|i*o27Q1sbQO}i770=ZRfq(LA*|W`vj$~I9*P!V zi0DEmq|j_e(^rO4UkF8Mg9te|O!G#7EnQUxD5EnOn^a%Zu%f*#Demq^crBIF07MfE zAco=?dQK#1e@A$Qgw6masw!Ju(}Z>N)qa!#%`~4?G@}XC*Q%xqP2iZui_NMl&8n-- ziYra>OO5px8|yD4n(FcJT64oU4;nAuX}kKc?J9(shjnKf@1CgramV!ova``^wy&SL zdG`1%AH24G=6G;S#f))BR)6|Sf{$WbdgIYD)sfAr{Y9w6Mqe3KC2{^jmBD=MhQegb zE>Ob!n=Vl%$05`M2r+{Yw>NdkE`TPsD=D@|7T=qa)SD{pO_Px{6Cx`Gjv1txfHGYa z%5>&ubrt6H6zBDn)c<_xwpJ?PgxIsnBAKn?b-Zz zPub(WWsi}K+P(QPgdC*64#Jzf74x1R9YqsA5|57V==-9w7iUAJY;OgM%pdRD{&;WY z<6YYy@7(%m`xb~Xy%nY1WksE(1s$b1twkA4c`4}B*N_nhl}MQpixP1#jVd#~5j2w} zMZf|qPmZgPi>!$ZxgYF*(_`b0tDU}Ix$GC`l}Io>^xCLZWt2fgl2M|FDcGwq+^01< zpd&80JvIn5(-`UB92M9c9oQNJlnHH52=7dc=#WNs%A()`2Fj35GYDx6qM1ZABpLi) zw1RciHk= z7$iAw!5^Q_f$bN?*nhnL(Qi{{fMXDUyfx+e_=(?*9(!@bsI!BI9&&I1%9NO!rke_- z0&X;q9m>`7=CT$EIZH6*(U|MZ<2ZBKt{ek*zLA?TZ>_*^g^@nQn9qgGxhPXI)1POe zkLlS%|5e%(yNV+?D2rOHK6g!q1EupBgh} z8zb4om}kU5&%Ko>k}}rYXkxHYY_w6#b4P<2A$yZR&)bNJIhP>h2ub<;+ zkmJb7a^z+VAUC`|~sH&VOQm zVYb7?IYTba9d_=s!N+FW9hh!W`Z_;-1iN&iVDHRgbKCo)@p-P`*2(FZq= zRoy!Npz7S+>aXus>7WdR8Myag=F@2>qu~!t6_Sp12E0OZPrr(z=^R79N}GPtEa;P{ zQAV!9%Q3D}ZSPfUGgO5(Wd!cG0Mou;U9x!rrl@H~iz8H~iT(!LzolRMB9x(;(-6r= z14g)6JdwT9`Swe4Pjvj(t1={cp>x}NcKv@S^FMg>MW(e+Dv=PzIy8f7SsAqggg?%#m+8l|2h z2N0p9Kl)JyG(!W8x}%JyQ65P=QI6n$M43jEDM5^p17a?!>Mkg2FCtWRmmBM@G}T|d ztGo!5sqXluPWknN+ArIxzHGmBwC2L*pR@e;d468<$=K5OMsEFZZ27dYpqax?vwn*6 zYS^0Ac&r>jp-i4~XPyeS->q4SvJ6FWDvFrEF_;acpixFf1}S6uU?T<)CdE)FLmH3( zWxAzty~&c^)TF*NSzo%WFC!Vzi)tnmX6K}VV{}j^ySpft&@6m-r?_KR zQOB-A8f7{wb2=%S>4H%P)z`G!w!Q5xYwX)<8OfO@|a%m3184 zOk!VI>+aH)%A%I71sG1*v%U0D<>trRH$SS_+*?-MUQ*Cnl;2XA+ftC#oR3Jy$byE< zgu2w|n&im()F?%IG-w7Kqezcc!Kg&WV4;*OpGYIrZPw{(I`{rwy}1- zTa62mWbQky!XU|;3m4s(JD*fy&zW~~)@OfwFjI>%P-T7|H{rWi$6gsV`ux!0haDXW z%9xp?nHVSXIgwobU{o-1Sc}EL4kITa*V%}(ilgt!VFP70iumhAJZEFhTyTttHP2Lk zzJX(B5qLQm2U{COni)o!8Agcpg89raV-!j00cB|UM`q2G zS};dOzTPrq+<`ojTV&2qRjZ}^3U zqs}iFapJSVyJrk2dc&yrP2s+e9ZxPEb8OLT71M3<-V)|b66L*Zk@1FQ;;X`lK?ae7 z4P+?fo@TfCL&xkHwrSI>Ge35OD)VLZ(!Ylf~z3K{r0F8h8_fWlnk&$_Epjq$>;~x@CT081<7xb-^ zf+0G+qE52t?AJ}f=&qmeqv$4dsPz*b9s1e+G#O>WeeTcmAK9sfIVzE)O>)t?2>G#T z?9)<$h83_MobfaWYBU)7U!ecxYIf|eW>PZ>t(Q<+wXv5zr|#SJXR;{M45hUYxS_L4 zv`#~I($-+25)sy+o+Ww@{ii~0X(0!%?Lv04>w0@9IOZqaYn{GW>5E%?;cC!Zjq_@i z1%H;53_}Q}rC*hyfkv~3C^3X%)L4U*FnYi%U97D~DZ!OG)n$ZId7+{1%)>wS{(e|?B*U#@?fZEjzm_#^MDf&76(5fO zV$G*NCwMD%q$^HtR-GzS9V~8yB-4*F=>%nHRVG)88!9F-HKxS3$cPEFB_XCo5{;pf z?eQ@k=$Mxz=}S&R^vaTYlcjyBvPbDDi0<^{u5?*9Ofy-j-I*yJh^*AE?6mIOjNbgL z-oosjLSRi!7mBn?^1C;a270K|?%i5MinPh#NfO;Vfi-B_TSQ0Ct|AgU5yaTrwmrKY z;6g?$<@HcqebGe*1k+iT-my8gt0c9vIHj{NxuZbZo|o8>lhB?mY0HdjOOI_yi)oNX zG^WI~<;%J&vLEd#Xy239xv!w>U}5K>g0}s+9lLYecja{M$n8cs_g2jJ&ZQ!+i<-bd zCVrRabZyD)*_zk4z2FfBJZ;bIsmSUsPwy&A>ncv^DoW`tOzkO1>&XYtr9aNic$}O0 zI4}EAUQTaza(6~T7y2V7$F|F2+GNqqiIFM^CMAWaB%zIo5lu-^O-Y#e7_CD8I%#aP zOwyd3&?rq%B*fLnM%KlI*G7dt2=e=Vqw6p0oPT#+d&_fUm9OUmACGEZ&$<9Fd617H zgoHBGR~7E3#h1oNs4{`gF~O~|p{;SD*tVdQDJG;j4m1Za%Z%A8jM?bJOQtLt>#Y*$uNJXaldYbM zDcf0u=}XL|eAaSfy=7wdQdnVx`U{Qqmxwri_9A~fp_`QvMnHdVz*uF#@-X29Sn>kQ zjNApRGe`Bb(l+Rvh%3W&7UnbUfGBa3j&GWDodfEzoEqK1B z+yE292ou8?3$APcH{Fhx?I_3}Dl8gdQZ!POKa8K@$Vsx%kF(H=w`50|=mql_n7|Mr zWF%T+<^VTyFfV-&H^sqFX2+4*8A$CpNe)H{_S~2O21qj@uM}p5NeH}XJASmCAjaM} zW}qn2Mu0kSUlTnau^!s=Mc8sBj>d_Dgz@%9iRi6o&&nCBUpm5I%d6aNuW+`FGT8Bo z;r=m#V{e&%InCzm`}Su(v^zc1261w>?a5DVPtLJF`kBqnX~tXL=I(e;c=!{WQ}c$N zoIB*ehc=Z{OiQPj^5o@$Xiju$&jKX!VFUaNiEJ9rZK7X#N8d2XsiPPj; z99cBAXxgB+P|0^pd_;ddWQb_Xi@G97lK`SjEfk1Qeeg&RU)mW%Z3*jW3zVoF6V*b7 z*kb6QnTG0>_uNbqTIA8r0f-`+k95!mk=yZ+jy+nvn7Gj}o@i!9Hq zwZ9SlGtl%yTXU#{5mcP#2c3-q$AI?<>{DL_XcY%LX;p@jWJm!vMbqTsrUMr`eZAsZ z$5WI-LnvMo->4-Pk}x6!LkGbcDxF0Bo^{&E;8`569?XQsDTT;+hTG&@sM7qvYV5R|a&vaE{U=!q!BG63l zu9CjpC4JcLf;v*vv%RouTV8ubM*G&xu5DS}+jF%2e7nmtx;LkRW55$63X;3>G3PR= zD?70>E1@F;y@})6Qsb1;D9nxOC`v&W;J#gXO}o-t_GGpn$Z9>1(YPzQeMf40WoqZv zwC*j0PC7SdA=)?Rv~A8qw3KAD6sNb9q<562cW%za+aY_^nV;C18{e4|-<1*5of+Gg zDS4EU@F*ReC+U+(9?23Pr^p_srS_%7^dvzh34vaM>`zmqzarG9KG>@+#EaN+qk@+hixznS-t|G=@?alDsIM~2UlmRV;TXCq8$D*);=)O%nb^=~01Zl+5=fhwHmOdi zIfkYgcxWh;iI0b41~k(ejbiMm)<}XfEkQv|ets$sFU2Mg#d^1fwd?9vudQFXx@MWv z!$nK)&tG_F?)+Pyef~FM7W&G}{C)b2U#GnD(_52%m^ktK32$6`ef(FijXpVY`0gQt z%Is|NtjuK=rV_Dngoqzx%=O}PFeh>upG9UZ30X@;tfgWmg48967^}t1jizi@SYc3@ zZNzlqGtnDnnVG?SGyPd6tWQNOcXO`)0HM3Rv6GGA0%Mkw9>bNZ=Pxvf6dQ({7_JrT zqqxc0L?2$@)oAi7Fm&Y^t`r%~vE+YlC0Jmlx5QlE$%?bin&)aO@U|BCTJZxcc;RN; z2y>$t6OP2xP-cZTFh;q9jSGhI3Wgfy41$M-m1@gMw9t<;(Tf%_!v!o@ULwVeSPQ*G z8_YW3qzy4j8O)VAa-;*<(t#YAgQ3)pBeB+xHe*GKnNcR}a7)85TcZejLCj#&m?5TN z1BJfUMjoaH-WHr-@XZj@gyH51!%U@vcu5XinVmtpEj!!Zuyl|?#c*!r2%|ltcn4k+ z9-d%we6r=qY1St`KtYq`;SWp>zArxXk;&m%X8S)9?U^n>9RA4s%Q+4g7LPbTfB30c zj(cX>7ReHS8jV`0;V22i5h~Kb2}jS1>7TOFruDSH}%lI3Oi9Di}-Iq znSU5p^m5DazlaOkyYh<{|9~?68qD*cfl^=ojh~G!P|~7IFF~27g_-AN|Ir`#Nt7W*V+v)|h1@`s=LUosN|hl%gCN-`y2PpD z2P&^b&kRFDync?MMMV%au0LFhIy6J{MjC5?CWKmONd|fhnk!Ii8f8fTUraNg9l_Lo zBFU(yOJ4lXqKq!hG&Wpos{ckQza~dFg_dvYnlIHfp0BArS^dlQA5NxzmAqlcx{q>Z zkIjE~MA7tD_bmV5+vp8-+fw8wiWR3yfilf|3JJ}SVr(Rs(i@6X<%P-M7&3_|E3paA z-&6@H%}tDL!*Fc0{na$e>q$%i#B?Vi60q$_miDH~5P%q*| zPewH5V*r8_(UK!+LUng~RC8)XOIl=mazsZ;WOqt*FC4YfsBTGAS6ozgTvT6t?4yME zuK3Wln1JR;Ul>`Gp%^l->7kG7Jx`Z=-s>LvZKw(Istxw73&r@Pfcmh&`iP+V$Pjr{ zs5~khQ4=1FhQBotArFK7|8#e|zJB%ZX!Yy4p~~O8I>4ve->b$SG~-zt=m|Dz0Lp~> zsUrNL$Dq4RGu2%N_@a)uFv2wGE|VAu&o6?gGBQmh$F!#aGCdq{FYdK7hvAnBiu| z@vsxPI~cnS;JR=L&8%ain+rP%T8o9DtC);ISZTy?!fXT~XPwx{$;4=$iQya}dlBBq zlm*#l6$-h{Iqnu*FAF1Ib8e8>AW*~(<}pKz7!d+SteBBxsh44=pEJlHe+Z{wm;oZm zLN89tl9;h1=BzkVW)wQ$i5StQ49NgyvV%d^2tnp>zRbZuVuSP(Cv^}n74pmgb~t*> za2URPrk@Eb(1IOi%ZqjtMGrO&cN7Q1Lt`fhaS%p03S$S06Gxb5j5JLdDwNq7;=K~h zS=ly>l0lrUBX~PU@hV3eZ69TbPQeE!iH}S-KmLK$p&2Io-ZS3w9)Ir)!NHHjM?N+` z`iaHy+16iv?r>qzu&c{n`*y|HGs{MAUofP2mQC?A^Wt|+OD3C?Oc3UwW_!FKf09|j z4Ey|fuO0WBbFDP+=E=;eYZdn(%-lTk@Xo1wcTV5Eee&L&Q=pmJ>hnMu!ZDC!NL*2= zt~5fM0ml%OAvB{2@{oMZYl1Jhe`?aRYvOLvDk~ZrFAnQ3P14FR&n{kyGP|InFrinO0)ntu~z`ZXIuQEC9vB$9M0r*!PSv}U8rI!7D}Gl||i{U&u3C z(mS_g5R}=L{b+mcqis2TrRlvTX}!g%J%uR{X1epFojHje5N0wZt?6-cX?SB=OnafM zcWY+f_N>+|(v~gKw(_Kw(s)&VRC`WLTUK;iMpSzmBDytQ(vlXhOpU9P#nvQ6*Cj{E zQ_0W+6Hmw?TA?59x>nwFI|C1hs_+wuJ_Eh6Z#olk=?&PPaEX-}iR8=eh2lCmD17&}U=|F+H<-G1+Qy43`F*N6Dk1_EU~Y6CoKgFWk^@r3!1 zk|i{iK?PGx5YkDs5(8}pc_kvo0AiA&P>J1@981?@6O>6t5fcqDu^p+1xX#qLj^z0E zg!oo;mx+yTj*e`Oi~z@ACblXdK;h@B^zmu(@_{e|lu-a>RObr>XROj^qPF5IuY?*k0CxI9v1hftDU-2FnbX3-n2qllMSgl(|uaG24g7TE}Is;V>468S~Ac z`mk0Tv78JU%W*1WQr*4G2wq@@s|lM_Xj^c7OgUa+eLu9$6EK1VjBwN$p$Ck$Ugkhd zg)}M}YE(RwmubsMv1H2t8D@+GQ$_+t6Ij43%#hkLlkHepLyfYAKv2<(w_?id*{IOY z9xhB9#6v}Qn2;I3XZrF0G^F25n3X}Ky&%$26h6>6(2f^iYZPQ_6l!M_F_0hcz)u`x zoHE!reK0R&pkazNQ)a=)uwfMpW)}}bi4(?83irGz-apv{o%9Y*Gx=hM>7i+&{ZskJ zJ~TTu+xqmU15SNvb9#>b`Gte8u6Xr(=W*9uC!X2#*6yXlw#~Gzm|?zkn#ERBIlUps z8qd$3Ak3L+oj325qduQpE%v=}EakzKlDpS;J@|d^y_;X$`TOXdn@4Z|ef<92)71~p z%IhuyWsqG`AQWVv3TTGH7XmKScRYLyUO_arT%|)(P_2rYt41vDC@7*HC?N1yn0`G z?w;~1piI;KqgB7}`fI=JoMhb==jl1qUXi`&SUBsAuY6WKERm>=7B!#T-10?f%l=}5 zGCT88!9=4>U4aaej69ok$y24oHzY+XVj~dE@zIcE2+d%+WNdUt90oJd9D|N|3EfCD zB@>iEf{ErBI>7`zrZY38Cp+y?e%9l{oX15ZfHK{AIoDZ;Fzu1FGraMSp-m~tx$>- zQg=nVszjnFj#C!K$aBN1QUm1DKzUN2A}L6f7_3SPK{iSujgm{FYo#$jnFo@Ps>HBb z8JY!0$T9su7TzEYl}m!^qkXHxJrz;Dswlt4NOY+4Bh6iceN}-zjR8I_0e-E}Fpx_M z*a(8T>%RK-##Mj2t^8~K@;_ac{<(hH-y2r`#Dyuthwv44nXt3cOxBD&{~3g zssg+p2KZD3`rh~Ry0LNn?>ZTI0i^!~kMwj=@@;V3I|*B_jyUbflHss1vBZWOW~LW}M!+J_4Ab9C-`~Q(-_pRx z%D~%_?QhKqurlxxld<8!rmO^Xof$65A7z^3XqartN-||6TQIZjS*0U6+r|oZO%U#V zO9+}dJl*uzhZZMhTAujW;?yjwlL*kvXSQeOJAS=r=+}#eot-!M%Vi@^xlKIkGVaKd zk^AR3?)=E6@?FaTADlkYl>-6@(UL=yZ}MnSL2x%=%HL6&~K_Kn%T;pbU5gKHOHA8p$L` z1Ukn6Wk?%e_)%V}yF8hzdIoFMo&ohYRSjgQ2?G!D*-q^waHIMB$AV5RX<MstkoP+Emoj3(7b14=6)1&C^C>BG^zULtn(y6--kzJ(S>Q-I^v`>-3eX z&5TkGFEzx_QzWU9Z1t2Sd?}$D{%Vs@1bXQ76P;|LP=@9hU7Eok|8s>IU7BgGzuH`L zRaJMTt_elm*Y2s#-%*`?sQgMZPnUJUD3hB3n&~Sb0k2F~URHO0b~lQ& zQQ1VPGC-N`t%cp&z%f)*7IyC-(X*qlcSiw<%6zCYJ=^noc947iIyDK9+lws}-K^yD++-iK*-}iH?3UsfD@U54Gs$@~}gm6Vtq)Hm8N{Ub;@}i0_5SIRe^4b5O-w=`n!0j0z8%e9*w@9h$bJeW^eBnA8%!VXSI*poej=6)-L;F z^^!l=EcwHE(Qm63{^~Rz+Z$_^++4ftZ zhDYAou=WO~7Pzjy>#-ggB}JH@BHULI?$Z$NBM1vJrZDba1IF{o*3j*n@Ii*AgL zR7HiWBEo<&%HUw7KS7xWFE5pcr(%=4!qrXg0|iZc>lxSrp@^E-FJVUJo)>#-u!05>zBrjIW=koP-geg!4-}Ji|huZ*;*%Am`0ii z0*$%uJkCNscLC3EE}!!mkNqi6f0jV+Qz3h> zU@Jo>bLIjeW2q5iJ(uY&)LUoFTq8gUH!0*sTj5n0&27wbGi7^Oa(!+10an}q3y#03 zevpU}EXM2tW`ZS42B4v$c!=?qQRWq|n3s<-DH_7hwAGhcG84_1i55(mH6z7_nQF^S zAE=i(*f57EG`uuN!xVdiGzVVxP*E0&p&X51poy{84=3$_nf@ju<>YO~@-buinv<=k znBis2@D?(HO!cDByU&52K3JGF%nTj;;xSHP03*eYl|6*Ld9=~aiJ}8jEWUWx^ow^* zPR_7AH_HxjX4ZhOX4{;fJMiM-p;woW_@8Fk;4SN*mdaqo})xBobB`^KR=w}3Jy zs~&t=Q+2kkhWLN$;r~Tna&+~CQ3l`Zh{G2nme9Z##SNFSAOmq*$@uI42+E)w2`JNy zq1Hf|w*NAep^PjMxn9_qWU_5j*# zseL0|35U?q|DlW;ah_2ro)j%!4jeCkwjX6EA1+-nq!B;xzAr0-daiLtv-9ORLg4HL z`7-*KCA^}EClwmhsVOw$&)325@LFbekC%fvNbJ78q%c z(Ljv0aU{htbP7qcB?1g3u7Y41lw^Vu0UEVJqg%O+zjh+M>V|HbNf%t6S_5=iWTDhK3gZjf@)J6XQKv0Yq=eKZ1<2!l>m%GB2Dmi%uB+L!>h|hI*B8#dHhcQ{ z+0!n~{qWnBbFXi5x)tCij}1YcQ489x0A=EW7105TDF22C@A_aka9!m7ZVd=uw+62b za!)s<=O&fsrbZ9awm(Tls z1!6AZ#;OH(*DtTyunO_Ob>&0Xl{K4ISG%vP_HeCocfG%9-EG&^f4e&0-mvC@mup>+ zhk~S&Fqgnr5#iGi=`D}&mPdLwM0qQsyp_>D$`~RPp+6p?F)9Ee4QVPvPzL6hs5ULf zU?D}&G(&BZqgqp%BToMWSBBsgE9gB4ZglW8Kt{>!^Vvb>s{+z*43?E zTeoUe^@^2MOO`%Zu;|Xb`8Vf${^#sZ|M+O;Z!_Ni^}T68nV;UC{N0-q;rYEV<~1$K zY#B7L$euzOOVdbG<3OR22j6g^fWLsxo5SbM=5anYVt>TfpJ~kgRLGetGF%|$t}r%O zDdemb8M=wN8%&Khm>arcK!J$0LcmzcXD+wmF1I#vGdBu06-3#XMUS+Oeq})LFq2I- zoYlrGUp6C*i?K)W&2Xdac^(ejwKfLpO!PJxF*b1-m?gPMtmj5tIC@B90cC(SYelRL z=4?+JUVxn-z=r3Kt}x&X5hDy%7!w8t4y2f~(k%7!2Xf1Xi?)w8-!;y1`)IS0Vf-AB zinU&{6{(|69l%JlVWiu!G6%8I_%3G{9}VWxJs%O?of&MdFR>S7jIc}{CY0DSV{I4`Ylh5@kuy}k zY&37@1d{`Ai4IK?9ec+Vb=qe?wE5~|>vOYhF3fefv}EWvD@I;kKK%UR!C%a^**4o^ z_k7z^%SL?dJm!+~xbsV2J@%R7u37fmXW8voIDDV`yBA^?{Ine?lV1OQS@mzbs(;&g z_qRQ_f7^TekNtOU17%J;xPPkZ;g{7_XR2$?*4Cb@N0lXJtu!K+L_Pq?r=MmV0qHu^ za#hiKO#zgFSLRupi)IfgZlV)R7)JnArcJHNK&^o=L+LKM?eCslKO@Fyg&eBrTDP7< zLo+1%qv0DuCp4g7C;iP9pZ}EZLJ)_3R>LvWLl*tzWp?k}xIpCj+y_z8g&xI1Lw4-sl z=!!{NOnLr7w~ufqR2ki$oF4!5v{a)#Iev1w-wc2TC&zyB78;Hrz8Q+FHHNI8H4yU) z)oezMGB^g8DUC8u)ZI~T7)&i7LD5V<%3!LW}d|tTCKqr z$FwQFX{&?t_eul)_*=hw*mC)9%Y}!{7Zj@VHFc*IzaO}Jrs!H(#M#I-<*R0FUi9vf z4fB4L`PFYtZrh*NcA%&k38uYNf(fe37J@SJ;uK}ROpzyT%*I^9MA&}mhH0p0!CXn8 zOiz-e2Q)*uWMKFO$MnJTn=I{?B_ZII(N$%@F~~6yRfeEUW^Z05UBT2>n2YEI$51GP zF8-vEe|c^P>Yumf(;Ne!>4ras1omiX240zM*&vuFP^LViy)?D0IJvb*)=`uUD@;cL z6+oH1BtkP(wB;lyGow{mF|GOW;FzZD=-LFohcRB&;hU-hkos||TDSbKrE{)+_|DPs zqqaH@$RB7?Get#vDIu37r~$_2kHne)@4 zPrv>AgUg@1cj=R<-+VUXwP5Gm7h-$gW$As_Rrg)j+;d%hd%ZK_&W1Jj zJl0kFY^V?RREGNySc&#kMES@ged;5<>m$A7QCew{w!`g_x^17#)?l)3u)xUa{I2Fe_xRGBAH zMi?aGc?!6Tg~kg7f;oJnPmDMpaoIC?dhheu9}5g-3k~Orjh2hJ%Zv@31O{u34P3=s zcS|F8OYVA9Xd4rc%Y0;r#QJN*1|DKVUrRygV3U|v2E@H;9WhMgZ^QB7GSMf-UjP)) zi?%n47$FKBZX94|=p|&XH(+=O^}S5ko~8yHP1vsJ0xVzxWmaQcrI_Vv&JGwT40aR+ z+3`ax4g5{@(9RD1d0_#TnK4r>^|J5F5kb0UWr4p$r9>=!aW!;_L+pjz$TC^bj%!7>Ze`1DV;5%%TwnJI5Iv zdP{V8lIZZ8f)nqUp8mk%%uK7ZpW2+C?{H=5u&b*^UUMFGe$|LCmJQxH$7=5^tK$m> zUs^TxhjnjVbAJ6xr?DrT#vWfc@mS!8mlGEMxXu68DOt@o#nr#=K-~Lv*PUN?-~N5y z?OR9g-adB!9-*0s4^BVCOoOU3HMM8!<>Z&+MOYBt#Ult`~36*YzE ziZ?XzU`xG3I{<+O8Z8x(Ta1>3aDKeq|1T&*>k!(T@iPn309QA6^VFIWPIPbf|A{qS zfDM`}mN{!_=KNgX#F?TOQ+nP*W(W2U)`!#b4T0%cUSm(eW>Uu7tix%8m*QeE4n zhmGgz@13~+-Jy8Kn8`-;z%+v>&gm-6?kde`FUxK(&+e?q?X4_CbXVqg zSLPvz60<$8w=%a6V$Aj&wDd*oQunrO_+uc+ke+zx@C%eFNde8Y70D2UW+7sPZqAQu$%{kByxJ(Q2ca8k{aouet+~Hu>4W*7|2lo@nO8?tnu~Ju84@NV zp2dhWWW*YyM;Z6f)HlCdKL5Ut8#Sphpdk=bsoiS5*VlWktMhV^d$`~vwQkO}>sHmc zILTesG$7Wlk*{7|x61kMTBlnsD-pNXIU)XXUi{O-*_S_=c6Rz(r>9Oh{Km+=uR88| zW#AX%hF+L9;g>nnZ!G-iuSGNeUi$H!6|?U;FTUfv{PwD4x15*Vb8&jO$)(n3gFMhf z9_FQt^ijq5DdYSUvA*(HpZXYYggn+;5$~f)@M}yAXp#gq#RWIVV=Q(E7EM^7IbLFT zXG(N;8oa%jz7&l>MhP+uq9r*}%`wsls4|e^nlLCkCPEn%ri=(xg#|Z+1j++^>U=%x zy*(739u4lB8eG@cyR5BSgJ09Bdd2bwOBUZ9UIGM+p zBH+GfZ1lc}Khwl`k*R3DNU(&@apJMp3SrCTp=#R8!f>OQ14jd#7cMyianQOs`G|`I^F(o2qqKST*B{RdC zku`u>V6V4zr1Aa5WPYNW)4&t3r4azjJk~6K`46Sg{#v>8mD1kD5u;Dp-o!|jEkwt_&U zy-e8wmaH%bR{RKV`m6l3k=ztVeayT}wPlnKXCIhg^2J2)p>ak>CkT&D79D?Ad;&9@ zW?5dCKk%~Cuy59m`hLUMZ`|KFy2yU_2jYDnn4FsD@ZFm6zi*oSgZH~vz23Rt``+2e z+1I3tzu)3{<7mvoi&@n_ZK?ZZTlKG%&}JU|vHS0v2X5aweD}_g`}dAMxPR=y{o^F6 zPClqUU0wH;#t5jHHb4mGsvLcOo3CJjgb_6W@;O`5R0d5)H5E)mztILI+x%N7qp9Se zNP@tGZcrcT(AvpI`twkRq?t58L(~^KsGYi|;C__BN$B%DNihBI`+q1y-~Rt+QAShV z42A%#JcUiV5C0+2^E@#|iy#D>G;j2r#Zz@j1gieaP)2k4l8#0+&CmoxJ$%CUOKUUq zWlC=e$7oUJDOCnDv32dh8jjKSl>zH$js5>wlxbIf+gfv_q3S}7{9?WG%Du*mcbYFg zXuDk3eyO_o>xKuXYJWX&=R(!k(>&pDD%Dk@ax!v2)vo5c9yBcLWDl!nA2+H%TnN*Mpnn8l;36v?6soTt; zc^yeS$yB+qpc$Y{b8c)yYG_rs``w`RRo*T&ZmaG%VfNuCKTMf)YUI#emL{bDkw9+0 z0#3G&lO^ON3)wNotVkY9V#=$WF#5aY^Xh{h(_5Ygay8y}V|%Q?0X8ExEg|e7J1cUn`f~a9(>GOZ!BMQW5uF7 zYgSabuao<`t3rK{S89y*Z;A_Olmw{a{go1bMZBL<0)p{xmIk&ahqR}Lw#iVkgwpG9 zwD$$dsA7XuaY4;!1e_YvmzCI)Dd|j$MYO{TovNW3nVM#hO2dCTXr>u`Zlc3gkrc`V z2h{s{*Lr&ZWmMi?pc#dmt9%_)8RuH3l@FIMy|-xL?fLU=&7FID-uxS%e)c;-nfI?x zoBr#2@BRGFJKs%u6Dafb*w;?II_lVnVL+L3NBcs%0jaS4T9^W5Ld1M;kzkpL*I!9bfM8lV!>iF@dA-xG0$KHS8t6m$HT(N2Mu7XF+s^-lZhTC zP_8s&&EqmY5isV8neMQ**zjZRg~@itQuJsUAq;Xf^s!(8Wl%08vtVc28YMgO!Uu5! zZS*~inC=FQO@@q(d_pts76uzEFpyFYC<8C>ay}V6>1o3S%0vw@mDma5EDfVg^kM~! z7(P>K%1F0jBZ+}&Q*!Bw6+^wT{<--jN9rVC4=_J|2M6xN%!61LQ zuynL}(GYHdJ*&`BKiAP9(~bp{k=g4@?b$JQ>@Z7ah?RbjH5;=hJ%ljyFulZj{uZ2& z0sL?~VT8R1Qcb`BM%X}B!XTD(h<@r|y-Y_|_8?ZtVCI(L`uoQTzMNul>TT1*ZwU^* z#XJ0t;P_0lujdcEuzb*k6@$;M7<|TQ*!eZ1&Mq5z>@%A~@Cbiucg^XwZ`|L$;yLA_ z-?WSI^S(`9`fZu}Z-*l8o=bc9Ls{MRZFPU_s=u+f`o_K+f9?g%+`0V)g))R=?%z9h z_ujEP_mAIucuH#!B(n%GEwU9EaP*8ID1+@kpbSMbKo$ZqnyeF9P)zghpp3Q{8=u?M zH&TK!^p{et%1%F|ZU-dm1a<+e(02iPOYNce_di7;j#_lloSAS8;u$eUjWT$n7Yr_V zS&utXm-H_un5g!8Pufs)>u7K{)fhpZv!Lf!)5p^(p{EXhaU(mT%DgnRstkEwomwaD ztNQQs+FQP6L5|V+Ey&9?KNz@#J|TS!ornQssDrS`%YHER@suQ^eG9cPqw%R|+2yH) z?rYUA(WZeYSx8$xO{+56^W#Uw@jB0{4KdpD<5{o~`4!YZm?pubndL-ZcED%)^2Jq4 zQ^Iv0?tA5==Tq8Az<8uMEvMw0j1o8M@Uk3^cIFQL2opg~&6{ z=9TC~683BJO7w!LHH{Zr8m_g}URBjzs%yAZuekg`b?IKyr3WpSt6MHrHD9c+K2v-1 z=!2j3JUCT&sU+-V?7GttYrd6v*On!9A1>}VycsB?*qz@{nIo^vrdrF8dTgS~6eg>3 zWoVz@n333;B59Vz(OvS;U8XZ37N!}*|Ksj0fZIr$y$vrPmM++aweLe{{8Q6 zybK#`zfg?b4;&K_3I#7+ks6gUR2V?xE)P{foNGr*4p$4p<6IDl#TljHkfNKl>YqWzJg?oW+01%TJC;BGED0Cl9X@7$peM_{(=Mus9F*SY)b>YGFSl3 zK$@vL6Gd-U3^dLAmW#E{%ZY=V9hu>xj8IW(h>#D()!t13yQ}tZt=hJ}a{bCrD;AZ_ z{qy<6@i#2Y&gf_z*HAs6t5T?~l%>T>(&8j(apN@<3#?79&zkme!>X3O+u9+&i{{IMn}hT$5o#lSA1Br?4`Zk ztr=5}4L8fsQjX~jg1>1yR@ce)ym3c z_GOD^FbRc=P)p%9M^71t@dL%KV&}@gZY_Jbj&XZS@!}wQyBM zKPAq71tzF64m{lh|uJc}`#!v8qy;zBgy{=uBM#AnP29-@pdq?|bw*j_2p6x$k3A}%Yu_nm{8O8<&w3Di8`bNm|JN~OE6=`n=&E{>47@( z-s(gTH8~G8vb(DM9wqWl9{6S`-dZdlU7Dv3(Nmk?r%4EeYAHQZk|82a(RW9Y}m(N0cfLQT{4C0aM_b#ATDzvEzX&(ZYmD&t$r^sg`0g;MP+ z3v@1nb!O|>C*HFjM=yUCx9UOGmd6Kny*cCm<#uBI)9lu_2ZbMwwSGQPU3RMS%ZbXb zC#x$?*HxcytiRk)cd54aQVnP`byoz?pj-rn3)oz17%k~HwS)-oau zR<#8Fm>zMLJiHQHs?CTWh^458fR2=Pew|GI{;{q9s_~tG-3q7s71^% z*o6SU1W0pCVpzer2W`s~d!uxcl!Ra#dm)^k(28Gf{zp(|NFGFbfkYesC{X|tV3%8o zj)D<`RKt)Uh(ubDaK=9%h|FDstzWR`5kCpWAK1(N~)a340GX62U7Dxl0D528jgQDf1aIX2NI&*acVwl0>MVuUMWL@(y7qw73wJuRja4Qh_;jtlRE`Pk6#7aHY71ouZE(+t*B20F?> zYZA}CElHA-Obg}f4U=0)CKm`ebDk1raw1s0NV2A z!hCEb*mPz`iZa66QbJl21DayITZ27nJl!f?*MD8R?8CAJ<#Xr0m^ksSjrBEC<7;Nd z7i>(XJKp6m$7mMfJ{$tAV;TGB2DhWJ#42vAkp`<7=vsBsH zC|E^W3Mb8Uu8lT-ICbRnnG@as%`BMyZsDBwix+%Ywg^<2Dv*4(Z)tXSYxCJH2!y=S zKEyFlJs!EgEea2hwkUUqb`%~RkpM29kY;L!2=#y!Zgxd_cSrm7#`^chVG--!9qZQ> zu|GH$+r-cjN&zt}D&$({_Wo96hktUd+smvYQVHYjU&YBt>G}h16*G|(` zkJeHPQ&sc@+phw12bZ~)r@V><2_`OvGK|qI<|rn^mcg*0(}&aOlWFuBJjKOI3M-X3 zD|n1`Y`HCpwC(DQz1mE7UCu5|<*mxx)e6-49O67CVLhGT$^&qrglo{Ebea2f<@V~! zdFjaoXpwwWN#SflELSd8ixzFcNwQT*FycgMQUjDo``Cn?G=d9@;LIU8E0UemlMg=GBDj~GZVxfc|T2dxV}=ffpV-iH$sgOt|S+(NQi(UZ2%f|Vycc@jv=MMgjQ@y zD>0)N7?JZ0gHrqpxBlh_q+(>6TKcYRps_MmuY>2cpLH{1tEswfeftb+wmUTJN+9?h1fr;5!hZ%u_6$ z3A<4Mmq;8fSa07U`6lG^MOI%)rb(P^!r2AKAj}X0PlC#`C4rT2V}9YmCzrm8cteUZ zuz}Icpm{}#8j|0%@S{}b_o}3?49-B!QO*dc@irzQb`6UDp-*( z2UBIbdf}{<$}qU}GI*BbXC9n)m+-%@~Bn#2vDY8^blrc*NIW)VROr!*1DUml~+WsPJF(a z{v_A$R%E_s=;9qBP$DbZk;>4}f%iUmLk zfph~zKh!ZrhQbO7Cagssl4n4b0k6zJR74+ExCD~ScMN6v5@JA=fi8I%%EaO*gHM_q zfa%#VaxyL9dlnx!=0EaNzrm2B{N(-ujAM{0gKCsefX^2u6+k*EKcOGy3CQM^UHPHZ3OF<9aW;HD!hN|X`NmKr8V3T}z_7le7&`R=aTv88;& z>W{0S*S_8B>C+#L8GYY&*u&8y?oA$jck<{PQ%7F?ZRCv^V{grweslJ3cjo@_WXar* zj>~IY9P78OuXA;*by-v6w5odJikgip>Nc%v+~m--d2RE?b&c!S)~;P$wQ6Pg@?~FE zFMDIZ;KA(Q&X2V%GSSysw3G_<)l2l%iuF{BbyW@nFdFP+BGYyRxB&GU-D(~!jJRqfM(v$ne%Se zEU?SGoj&d5q)AW4jd?g~#O>kM7c9-r3_%%H9A(@wlyT%Ktzq#bstjWkn>B*Tv|%tU z=?p6xeY8AvGK=#kkF!*PWzS=-W)j!3<(#0+zb0d!9@kYv!C95NUWKtjkqj1K2P({o z1g{AxP?HM%<@}B4?%Hzhssvv(Vz4$jQbjJ5LkdzPh3iu@MyTfw*Gx50h}5F_tB`$^ zAfZFp1d}G|1Se%VcVnKL7JV}`0%j7|$rCow340af1Au1q6ry!_k(!(cpe1Dz1PqUi zR3^r&5t20tX*z^#U1F}j9H2~z8TF7QvzglLlhR(v#wep>RrT2#n7xkF8p5(yGdd%#ko zfmE3QO+t`5Axw=BsR^?uiP>hC+jU=Y_NW_dHAbM!ym3TKQ~+T@LaX?Ys~KMnF=UVRkY*lDevcp_uR^Hxsv1d z{B%IYoz%M0yxM1l6(0`QemzlFeyXPYWKH?0hMEh)=Ig?in~e=uYpX9dHr{A%zTGN> zxpI%tgh-ee)B6lc6F`zdH41pD2r&neXArf>1g^VCEWNUmuEpD!w-;-g2Q!#t0z{gB zu5Xeim?YoigJ0Smu!h3w#?RxnHA<7*>Az@Im~NN>j2M@VXdR4L&ftP$269!%uxFts?+JsVKxTlJX_^e>y|WwTzb{PX3?h0m7R zJ++_za@9iU1XJs_zJABXx^3&KoK}6^VE@%|Ntxr4a>u3Mxv5^ivUdIInsuux)-3(nX(Euc+9v4ob2c_PRBC?P~Vh+Z5{28sR03@o9_m z5ypB8KxB&c5=46nqV@};_qWG*b;NpiMtMOxNg7Cx!8s-|=sQ28FFv3%%BLgBTZBin zcRP#?7Xyv2DAGp|;v)?45rx2TDDSoaFC1msy!W+v?GeHZ%k5j6w>dXDZ>rzCzJBA{ zhIOm!99CAZT2{GyN!gM`AMF-=w6ps-ckYKdbKcLK`R@1MUQC`;I(GEEk;8A;SYEI& zJ!4{cz(_AwPb*bhEmBK0L{-6CiM>yOv4hLl$mXqMuop4evly&tbfyiLYsF@pusH@S zt^t!{LZw@>IFq>C*$TY5irmFa(qaYy1~xgVQg`SpY&F-|Y@+I_$=%7JI#CI$=>#a! z-l$4+HK4d#a1u?GLX@d6D_}337@{E;X2A(GWdv)Iqj|(QWx0GS#e<{Ni$`f>+9*Zo z$nE11p+b8r=sH}&E)}A?7GsY(n2Y7WT)cq_qn!vlxiImO9-zeu)>RDGV@K#QBX#M~ zT9iml`51L5Ya;M9263DF z9CK3faN42KjDw>n`8I^& z;e?}O<PmXw(U*k7C$Z2?5Q2qWuOT|e+_1VVqleM3Z)s>wRHC*XvxhZJ8)=+)1 zzUE3({q@$CJ8f+bp}`EE)`9#B&<28!ztfDkE(tLW&NmXE!6*kAfx#mzmTK_35D&rg z3?|t z)4&FP;rRDL8Oilhf(1X%oBX??4Cci_fP#xjlJQCZ3d*3z!m}Zs_*-DFBFip6Z2zk$ zBlAJv)$xBCT&=+pNvPE?GTC4um1Iz5)89}=a%PK9Zv2dttV2)+9f_A=ON}xTl)+UQ zlxz|QCc|JY@^CLOcxW)V5zj7=iZS>GZj||l1k*pG43sqq1P_HxcYCU@H@`pqGI8TF<9;U&`w|o7Z+CQ*bD?6)KpZ;csDLOKzMnE4D2wu01WfBPp_-AJGN% z*fF6ni3t)+FutG%hDwG70m@)r8Pp;V@AmsGMv5}gzd)Hd&||)X3DKL^LZXh-8 zTl%0X^F2QqIHo_J--ibVE12jK+nXQTn-|lY8-r$F{|#j%q!JAqvLcPlb{s%YPhNaa zej-G7USd~nB8-RZNsntw2x|%UZgAgO<>p+q#^K|lC9mhqel_#=w{vE`Tm0uo`}rSM z*}Y%8;N$wm?;MxCaj<{0X30B8`>&f<*KS+iuw!Gx_6>EeYpb1CS8ZBRvEIIH?UJu+ zmXtXxt#(`qC{yXMqHN_dpqW<-=atU>%a>NH2g9$kVDFAruiY)ads_qCTf#lt zVqgw~pD5n1EzTFG89*7}n6_w73CehPMSxw#s~aE&BFd)+W<_C=%(uiKNH77%{1j!7 zDih_~7Ul;b3iTBQ`?LjmwfXHA__zzb_6YXx671Un*`;PTmnN6Z4O?VTW~F__vc+GQ zEF6L|vk=O>oHF_GxG_JVOpcybiq;^??By|baDIU@ERH^tqt9TO(wOE9);K0>CYL== ziD%E1UqmO`(*RjWThwSSX6mk%+WU+(d^DAIK@%D#aRm)Php>|D#Q#eQl61K zxM~W_X}PA5A(BfqM3vR4#^ekj5*v2ba9*kT(`RsL;tv ziQunB2-PM=8_2~P$;TUzV)aO=CRAuMlVJkMEMlIe{DG0Q!((X&M#&cqCl=ZeOGe5a zn@qbfQ{mPE&C=yY&m1hCuC;l%()^y&s5d^d>QdJWPI-&Y_|{wq{Cvjm^)b)KhrOSl z@c(cjrt(H=ZE0@p$3v}^r`l@HH&>npl&Si3tfAseOYNnW`YTP4W2(N~Sa+?Z={7XY zgK^ooAc0av*a!l#$3>h8!h{(al##g?9ghn(DC;EY{3}&uWI0BhwE9Ps!QC)F7-Fz* z^+C?SzvQtuj8lu)7c700gkykFq!)r8e8H&DN#+VNc%&@K0L}axqRg))iXn*@xU>(E zC9q5WFRuE3=YSvg3_g`CI^Z$}%J}?v{1C7}hYdO4?@6B_$IEibKdUmbD1*HjnHL(W z{rtc&aPwb88T8VFfnHadMZzX#qjVBZGZIM#nQxH82Kjb>w0B|WqF6A*PeCclU^fTv z!c$1%MA8sdMr@bCa!C@7!3&!3Ry5rp`M@yYU3QAiA zkYfUE=5dSgadX?_W)b*uo(e&&X}l|{x!zoMq2giT^OMnc@_n8a`c<9hw_ncdK3^a@ znI$-!)_N#KfKZ0tk{2%kl*x`0!Suvr3}xcOJ7dGTFz0VqL{Lu{&v#=!34Hns9-{p4C<1HQ07~5>_AHFx3u{0nTdbpfH0H% zEsx)q2OVM(5Obga_=rW38w1e`n35CSmlyl3kUvn6i2T2x%H$$d22)&+1_K-7^pn&Y zT$tDkNQ4Du7DlaWVA4|$L}6M_ewrvFp*1eNA=t0dYhT%xEpJz^d9irm(|NO=&7b{p z$(*;#=f87U@L|KE&ztSPI5~XYyynA(m2VyG-#RY+xPIxE%_}NhR@ZEEsNb;;(o9vG zSCk`p1~NhRRU1}SZ&+QqepQ*nichQTpUnRK{`5(ArcSs$dEBi@5Mysn7=3Nrh>N3a zfN9PSvpj8We$v9^goO!gUmk6HeZuHFQzkt8ecIF6GhYD~IIOO6-V774+rV`ju)j6P zvo#bn7(WpVgh~u*OALh8f5Ldb);M25jE^wJyA3HTzMV0?T`@l0(cp}Mz&2uhdSZQh zV*Pqy{$;#>4-CSL@#&25?uhYj$0OFeJ=Uiq4#Kx1#;-jh00jUI$TNYSLO=Hw@4c=2 zceS|hXxZx~*tM;ByG!%dO*qQbuUlQ?u%dG1((+}CzJR&M&hGvE`S0ic`EJhacT$uY zKj!`@+nd9z&RLkAHZ?3U(#ytBCPGsMS7i{&u<2WvtW9+KQU-GlojIM(wBqqBI2?U8 zPXmI<)o1YZ=v-?CYa)j;Lq&P9GRuxbUBDnMVPKP()ES$NR6Nae!i;r%w3XNMNcI%M z5-Qw9+^k8CF;+}9S4%We3DIKhV-cVso`)VI+C(ACNHtYgiLWc43{^#@tSl>T-f*Q< zOT{QXnzs^RJLH(i1ZOG{WEf9%x}Uy+mo|I50(moyxIvx(anK$SUcjYdBn8b;4CAtY%N5>*L&6=JFe zF;h=2&zK6ePCzsHW|V9bLZ%TR!w6DE@swp|egaYk-VHiTN z8X-WL;0psRl?fpl#0Wi7jFEhlAvr>y6l+9Iv7o0}F|(~1dBYfmw)6udXa`5qkBp!m zwxt{xPA(ZiIyH%Yd4?i1(0gcaRJz*o@fxegZsR`%%@^cu{dOa&?@Czn)rgua;pG>@ z-k%M7eKP3HiLm#lqd#BeSG>rp17YUtabd;j7O=~FI#%=ka19hURh$K&X{x!>Tzj>p z;bv>|oi@S!_I8*q37L1SoCl^5pt>Y9od5-%X2LT~nEE2VR{}bKGMFhCwf)717$8*! zM(Fr0LrvJ610>GTOJErpR@{}2!u~X?azdOHH~*$ zYOXa_Uaom{k_|M|58Y*8grp<@WiV9+4J*L=%78F~5=@xwSIjZV@koyW zl)+RP3ChHM&q(;5jcBGnH?cP-p(h82n7H122&BgVzM#mB=?7BDjRTZ{83hC2o5_oZ z0&IjbxhQ`G0o$O&AUkkjLN7oJ7Cpc*g$Y;*cT#^*Iz(@AMt4bOcS%-vah51AwKX-q zF*c$)#J_C&_P3ihJzu%(@uGQ;7R-6FWcJGy^WUyr_+itMFU~8IG8>eA+^M1!2B|2mqHr5kIUAS{U<#h5R64Vt^pQ zUl`}#2E!Sk3Ms}Pn#6#gwq5=uR~1GCE@}o%tI=83l6=SDT}t%u!TkDQGYh)M#8o8q=1= zo~)w0K$SONiEYP`U%(`wU=dcUGk5E&gc@lF8ELw~NG3(vax~6~u$)cwQK2UosiawJ z@h#Q-)oD&_q7#qgqef5DS1z>DOE;nM^`K0em~2SSv*G3rQ%*5u!~AL=9@!K8zjB1F z@&wReJT;g;TI{{*v~7y=Ti9|Nn1qc?f-{q}oh$F5N)OgyM;Iz57;=*g*eUwVOg#!j zt{yp04}=*~z5%h=gmlPK{;&=8pfx4moRDQi%+Qlh*P*0olhd?;W}x~>zR;XnY(*=! zCKp+e^Gr!OCd2{@xndhi$uLUsaB9(TTG23CffX&+f|6!TPSAyUPsC7FLXZ+-ngDfT zh_+mq0Xf2$5@{kIV@gRL#>uv2XAfuQ+R#dd(TEJA4vB| zl$D=f`?0J3za`2@s6z7oB^-lM7vPBW1O9#Ezlbu@3=VJuWO)!F{oslI`^|sBD+4cq zmoH(ui`eQbQC~1a3}%awGL0<9K#M#$ec|MjhE$}%PR&=?$vucKKb(j3}pm@Cqh6O z(KDd{Q087s?e(VWtBoH{SCkgMy_WLfeB77IeBqV6-it*Yr!nX6;Z)&)6hRSEWrQHf zi#d7wz#LN;KLB$d3ljzk;s+qL zlp71{-%$oP#NcaJZfp-Q5QZ;6FtE{65Rah@G}eRud+Gg!={-dmUBy{|GF=C9+6yz= zvXWbpV(X*Bsy+67cH8!LgX4=8OP(yXd$w%u>(vY1uV3=nX<6CURbO2k%Um}A(0q1U z{n~NK(-nU{wx9Lbe&*w4Gaz0ppY>w-Y>1c3=e$}m_w};*FP6-GY&Y}X?B8zwKKbUv zF}Ej<0enFyGi@TQuzhRd7*JoXj~{h@#IRG=mOwM7tgX(Eu)Q*V?5(MjAI$jUIXGwS zmwk40taNc|*u7Ke>(v?LFADP)M)(OL{afRM#3+*#EKCY+OA120j1vRf;{)5{0sv(? zVXP7eFmb-pz$6(^Wqidb6YtlT;NP3z-<{xxXeQnl=`jdpd?BPL(=LND%|lV9<>x4~ z@Y7;D9A)01Y~75PzyJ1X+SKQhCPIPQ* zFyV4Nc!8lO4U4#6iR`b*jM8By>akJ`SXuhCECX7uKDj_&t_aM(CZu9xVu3Ls--wV8 zs~Mrtl2~NHEHLF}8!!N6(qJ;BJ}KW+{(v=TC-h?@870>8c_xHxBSN+@p}>N4U^w;2 zXx7ou?1Q$fB5Qh{1vS%*nr?GEu>AY*R)$c4ZL##;$xmtxB=$5mWREIXI*?o9Nf^P!I~hQGU$T=%*JP^P2$LjC*0WiN}r zzACBycntb;w$xk(VWz3>dNa~y?gGt-M5P@aPdhrF;dU7b&EVi7aqMD>3x+1RvLXX0 z7}H?cC3G+%9^B^(9D|e_OtwMQPe19rhwqg5UBtylILBZ+k^Kd`1pGiVQV_xS|MUVe z$TUN*8iNN*1%9}2NM8;%{=HBJyVApj|L1}9iNSiGf1?BwyfK_nhM_Bl4WgOKRUZtJh9tJIJ^!T&CZHD7v=^_(#{2AH1xmOogM$lV9Z85$ z1|HJ$6dovZ7XEN*A|tRY%1Ajza#B78tpy8wPNdY>E7=&zF<3`n_-_M34pz1eqe-yI zky1>N-uzEdrn&t=WBY?93CgrVHBJMMwfo#>P2n{|-(tvIW{FcZX>j*^^?gSl--3IvDpS_-oob5d*55^BSP%LBYW@7?j< zdE<-qYhJIjf4_0XXXjOAuB*$pIec(h^Tl<2#g0uCJ2rmVy7v8M`tjSk@pKxjFxbu@n-?CXc^5e(a?&V=j&vb9wxPn^ULXn=z|&?)(=Em%LxTrfluT@-5EQ z+ua)X?QQk}m1Z3FDud_d!pctxemVn_M9UIYtbY1)DQPf%%6TZ>}oSPD$R52Tk)Rj#!Jl z1&VTx`s{#Vy5XaYLM=6X)EQf0-Zhi3oJDYgiHwHql(B|+R(f%&EDstH48q&l#AsbY zmX&PAxlDm5g}KfP;5pxVk39LR{r>K zD6u9VA1;4v7~=>OKv}VJ%%M}TT!a?E539=dGa?0B(xQg3V~2CXEofl|q)05=EmyJ3qf3bwag zjS}8VZoZXNeU)E(J-O*dX7lyz$}1^P&V`kp4S9Y!`pbii=J$s?E6=r+ov#0IwEPul zGY6Z?FEm$NY^u84SaY?x?s`kZ9YNE5Ve3PvQ4qB~7Ir{Lg_*yh4AylLSi#;P$G|UxL1QnZmLvot-avdK&MVVh=HjEFisLs2JA9`GXDpQztR%^N>BI;_sZlZ4dfv- zf%yZ_4+d6fAp^pURF&z^jqb~d?8}LkMH$p=M%q*cqn1vj%Eb4$Gy0d8Njkyy5Wp4aA z;l`W^*JqEvK5NqTS(9(hnsR&g^t*rl{^HL+UeEdcI%)(>F^O=7<{(btr>633y zo^X5WlsnU=-JSm1gPGvbv3tG5{@wDGpH{D}Shu-ui))SRw%VOLnmqO)lnH_Y@_?4e zfaa*c#<-y7gpd}#7-gWsT$CEtnH<)|59x>>iZU3%^e6ZaBnEur2SN;B(Vr9u0W>2; z8JuH8v0e~uQ9f;9;QaMPMwwu5NH7Wg-COe{s{t5@4su3TKcZ1I;ROFk@E00|~QnP=0cKAAY-(YUeqMvu5NV%YUzmV>Iy&roI? zmAX}4eie;wM`uV;MxCR`VJop13S7E^5?e)^r2r^nOs9`w$W2vX%u%KT%FKrm*>sX4 zmAH&eSg1@~rcQR%pzYD)`Wq=m8Y@SbsJduU92AM06o~sZY4Nt&#lwv<4b*~_>27R- zE0f^OA%v=+`PJDL@$^C#0n%CLY@gN$Cv{sQ)tF2fH0-zn~?HNh(%_^5)0ySTlteC;a~y)%@G^o5o_WB zb7G+}T2GCnL;Jf^BbAR0S17P%=UOt;ESU+GtQa$TpefnMP%hY<76T|_Nsl%q$AiPh zLO#!2F5g1_xHawKDDKrsO4p_;%@)k(48&si)!QeBG-KmbYET-rYO>s_&nV zV^+Q^*;{onyzypY-HnurOYxN#_;r`kYOiN}yq)y=YV7k%(XX#3l$Yi})4Z@0v6Qn_6$$pDvNmjH3vNIJm=Hn1_n;%C6F5jez% z#T(3@fc9Yh;?cwL$HJqei6_|$3ZTqC{j&eXy)+oS?(q24 z3XhWY+Ya3xlvOb4LQ+D79)i^n{XKp2!=533MoEH6#xW!N&WCJc9p@wlAaVCOl**B` zX%UMt;)D+Fw8d@6sPi6T8a%LM7W(YcJ(#g(@UJ1eA8Q+f2|Rd95@u-m$1oX|r*0y%^4A}4{$%?uIqr=3}1}*YX zz#LkLRssCnc>uq7pfJ0=^^vGW9Kx1|5N+^FsP(>}<*uONW)sYQ`+BzO-LbM)hg$9( z>bO!OJew~(n%R0dy{#m*y&$9PNj1q2g6kP+9P9^0Q0+n*UbkQLXT69-lp)B`3PDwX2F+xrdF6cothi*ii3PE)|| z&rj^lOX$gs@6L_u!Xq!fJ3qd=AfX$?80e>WFm>Q?+P5R=-;QLUIGXYOSmw85SzU*+ zx(;V`9?9-Jk^|9kBu8{OyZt~$dvThmAQ^IM!j#D7n1I?q_cBknFMBtC*|X{E-c4ou zP*m@CuHNrb<>6GhcT@T94HY{b%eJlgxMkU^wRWY;XWg@#dS~9`J98)9o-^_0tO{35yVr+!H;4N*M+Y>=1~$h9HN^)u zB?Pr31hysy3HU*6Nx`DzkoM%@j-;S=lx9MXnU45?uEZcby7|F9Ng=(-p?xW#y(mI@ zl7qXFf;tle+T(picqI6W5`5d@yzy2HH?FB%yS#k$(y~>Hzb;<{s?5g)b|2>c`DW(Km(!;| zn>6v!Sn&KJl(}JJeb(Icq>*8fzFwxbCSP4OTwOI-Nx_T9*~4aTW6~Vh)HN*1Vm9MX z7UMT2V;D!#g2B;da1|Lm9-YHt@HlKmWj0rx#nNIitr*miJl0et_H1SLTxIqO8hHhU zw1`EVuS8s;M&6)Ca?+IFr%4ahVn^vK2I%tktE2j(ttxW6by#uM>X~BU2(N=IyYCu~?Jhp`V^a1NTY^Gz9Xx>R2d5j397bfObi zev2B%S%V84vz14M*v6%9I>(g?Ks0F69 zVspkJOZs6e=0OwsK_mJh6UIR^dNJ63jmZV3az&ODFvJuMqk=i+fGwqDIHlNHuE>g1 zVkuW*MlLWS6&n$cSyE4qV4WPrJwAecXe9f<2v+`ZM!GdM(NsRdm=tDAj5L*tF{ebC zk>kurd`ohwrChohG0l`vXiYgWmUn)l>c#PDS0`(oo~Cweit>>uipPIfI{&BUttEz~ zYb>8^8u`F&!fVf&FH;;oAK6uNIiTupEJWQce&el_+B>PA?q__wm;T{i`ujVn5MLf; z3O*m}s5;yHpmT?FF)H@eX+UrN=yB%RuEc+lGM zP|#T_ga&#rD;qTeevEFSu?C=&V@V?LyI?JJVHKfYj3|Ee3nRe>C801qMy$%9q9=R~ zC4Mh<0PO6<3X7!a9*jH&@kQcg!O2GY<^O{ZM*Kq;Hy+5W(2@gPBQR3IpA%g>FjeL? z*n!c#SipOb2B6G8T;P9o7tqgtk7NGDN1>{mU%g@AgC8&CvKMc0M&_5F2+gk+SN+JC zaIx;g{n%Z<(u(j${pwx8eiJQ$H2|zhFf)2S1P`o`}F=~dH*$&P?pgi0?>`gS9g&9;%r{$q{YwA;Q?e&gh`-nBX380fTiWHWCFQn8^MF zh^W5Ah<<)VFF&F?F}#N#(U%{Dkj?{O?6c;Ech$$bk9+W!M8nN&SUMP_5mQm(ZO9$Q9e3 z9oqrjVshg<^AoxX5_?LL`wpb`A5I@Qn)&^B*7uV+5Z_K@L-ZZbYCD=KI-b>WJiGIF zPRFtAuA^uwc;~^?u9D=g;-rq;7-2?4Ge58{a({WyuCKn^zW8kY>a(@ncUz^OTW!F$ z8h_UsAD0?0=Nd1kdXFvDyElAwUHyK;l9y}dKUqAZbm4E0?501MH}&4!DWwa3d%kqm zYcS2MnES$h_S02MpRHZ>V%?gTSUg|1=BeYV#||s-c)D)&vkhyWZ(94(Y2BNx8$WD! z`m)QleBX|0&pmZM`ziz7%R@Y>!aZxFd>Uc{ngL%DLt6PEtx3VH{2&38FC_**5tE1? z1Vg{ulLFh5VfuG~DA6CHBPqBu1!jPUwI_vkB!_mUgmL+2mZ(E|Di0{|V_iIb=5yW``%|J!B5auDkbSE_6X`diyca!h-W^cC^Z#RLLTdVul z#@$;Qw{L84+feVizIKa4`MTv$hz{lGUzRWWXg43l+_~>(&wl;;@6c4{@wl-MM!^6k z=qqD$&dmIzp;3{Zex{}tUsWwaO)W%8$&1U|!(zEG>5IYmqDY;qz?jKlPGd1fuoSFm zEIk@qmCjb8vzaU|lf`4RIXn(aiNi8tLI#R6R+0C+isBqK6?-~$DTO?rLHtvZxJaGs zs7YF{N!p)=Z$?ZoCnj5y(}q(r zZK)YHpv{or35!OvkBnA2IZW-$2+bo?G>^>CJ~3P8)Snt>=4s!buk&)T;p>&=&)3_0 zbRAb3I{Qi5@;8T^-(B~uejFuynj(6V-uNi}!~LvJ4|B?&=6@~Cd3!tg`IYFZXSt%X zW1{k7_3uln-j&pSI$U3Ns-f~+V-?WM4MD^0wx;`{=0|NU(9H98W5=E5&ijI{N5byX zwjO8)Tq@{>@k|dP(3d$R{ZShj?1v)ics+aqS1wb!34Iry0zWg5U$d1v?Va7;K=B zXfQu~a53EA93yF42eJwhPH=SxmwYhW4I-N#PzIg)P!@#x)FFHkLyTC4k)X_vs*F^m zk)RABZpq1wPGTHoFnJK2>(Ucia;8d^N%ZPcVFquD2l#?e21pC@#7GGSZ#)%PxHVc)F?dxaiuU*7JpJ$8rQmvN{iBb{C{~<|G5h^kne?Xgbs55zu6! z!fZepQ9_6?E(k}N?wGJ1aQFhvAdZOwh#5$XLVg;MVUnZzlOlVQK$3~<1CB|F#84)( zFEz3^HM}P!tQUYLGX|nR3k5I@kPU(x7?uQL47g+<^1&Pfy?s%|HMn7<#$G7W9w>xS zP5j=x#Gc%QZXlT4_%4uVpj%8Kzo#fk7G=IkQ3j)#{^KwSJg4JiZs*C|t`oW4CvtjE zN%3pb11d@Kyp`poG3d=kQ&ky?^_$Wzb14KL~YpKhVXrj5$?_5dz!;`HwEu( z3f$h{zpc^BrFP%uiXDz$oL7F>X#Z;EyqC-We6eiK(FZ$!T{p>fZ=D&AX_+jm$ zcWV~B*|7TU=JoHKHoSM*2=Ufw!|N^UUTt#3j?)aR7{>rOM)jmeU^ElnjdD^U?fd{N{M(aI0Lrui%EWj=6JbGwyC7^I zijcjnfx8-g+?u>xo4uf%%1yX`ThksV#4*rf$8~+Zvt!kUl@*T5${p;#u3Y?a!Tb+) z^Q0()HI-SsK)=G?QRwC~KYi5hOO$3WFh8M$hl27DNa?oZ+%e3;iM-;83Wa0YS;OQrt;ku{ z@`X06!`4a%EO@yiImJ^{PR`N2w8-G{5~KTz44y4DdbY}}be+|+O}3Z!jyvx+^;(SG z{R7UGw}U&LrS`wdZF`>c@nO#U`BDaCvOps%B1 zX)(c|=}345wQNs3G0or=PxvaXZ<2~JpvOq$8MsSoi@_ji2&_oH-lgih_(CxBt6qve zVn)G47g^Z`JzV+|7e^)Z%%IBrEdKYP%-{uHdZiz_@ejg@IEy5K330kdj6UMr)Bhz^ zMnWf&G!~Q{VQ(AoLQEuxGsNtIe*_F-#9|LdAri8YeqKrCwit%Qeqod(!f6Kfiv!~r zDat^#TpExlW>SZD@rQiA;1Kf zL5Pvz7@(Hcp(q1~0ogRx-KeR!1j09dV2VWl|zU{Lr?9kj}V}uGo<7*iaB=dLfGx7l9-haMB=-iGg&|Kq^}Mu>gF* z0*Nt*V^YK5+Sv^o>5(AA0K|OHjsKpP@I5~fk8cu!L50?+uM7%68CZd4u+A~D{RK%7 zAk3f~6KFG#Y$`|si0Lg!0X+suG6&Q8j->ZPMo9)`22SSmpUmk!Q_yoNzvpCb4{V>x z9XOpoa4N4K1e+rn-3L=T3*+1Kp{GuyAU(7>C8#+mpqU@g!VhRo3KS$k?-n0nymuR1 zRBh3#qZ-(KzMT(M_U`Sx{X+tz;Axa{5frEk|Qd9`-Y^HuX-IV^m)!T$4>m0z7# z!}{K3!+X~)AKjcjZFhnA;O6vh+m^Skn<3t9+x&5-%ctG0pZ9G0;=a9X|ISM9J+=NG z4Z+?mVSa*$fTq~MhJ?Vz#Gqz=2$+0@05PeN9qHo944oMfooQhZ9jT!ZovCQ(Hy&MS zA+Sf39NLx?BH{;&z(WI0n$&OzK%9=0kgn9wp0v=el;F-}gg)&_0l+b$L|<}xy|xKFT9by=<|52nH<(s zCUY2*Yei$}(t%^RigYfAs|Yj$D8pvbIdrNfRZgEpv*xnKD{`l)DlJlEFW@ldv&r+h zgoO&kH9W#v1%fk=xL1L^UxntO%-qG6hpHuKW%4dNjy|=-n0m;ZdB~Cl6AYkB9#k-88?_$ zzO;GRRp${GoJXE>8hL5^ga^S3YYVn_T?zZ^K~nG2tcusguOFm;yp#I%cIuZK$sf)} zLR8&N6}&0#EI-j$b*jGdL{;Uf@~YF7Rp%P2ueH?O>Z-ffU-ziD@nNIzR-@>4bNfBe zU_h9`RGG)3p2wnY6zInu`XU8(5x1wq%csTbU==rxHJDB#9bW+VVp0vBb&_V95a@ue zGdPz3{R)-&)rt^ADzr$j27wD4hI0?bH0TmA^wNNQGg6>|2TCp$;w+W;c;J}+pTz$r zl#$TD4=xtz&0i;{WNbG>umD4c|Du=ZSE(y8bBOT>(?4XlrCuDQ{osKQ)5hA#Nbi*` zy_TSi4B|*XBeo%hA(UPEsVXBu8Puy+@|JLTLiB^wn&-Wc%z}WzZ-~AZ5QBprfhusI z`RR&KM#|%Z=#8Dkg-{Ah+yxtJu38 zqHK@bm)+YyfPqBPm))-A?mH^>@2c?J4G>f9yRR-_e{vH#1C#x z8iFz~QVNDlb!SEOWJY#pM0BNxcOa$-0fK?(P7m$LKzsungSyTnKqoyY-UgaMnI=$i zARz_WC>&xC$M6G0eE+sYUqL*~K=5pd@_+#dFru>JLpff= z_it^6*y~)qZC%->m0ve3FW;~NI0h0-kX`z`a?vOI1xS^dKM!Uwy`4Gp)o*yKU$H84 z-P%ef!K9s}uKshB;j(71SyLDcKp9IaQ-{V;Vepg~T*NVAlwoifG!3ep4xM7bq>bh< zCn|CmDzX>yn08$G`5b~Bhp+-ZrN-IKr8qH(8^G+MBEL^VZoeiu zRELsj!a6)!>)2F-!&CH%#;RvqbCZndd~FgRh8dyB1B6^7(qS9+x$){(rs-Xns(W~Z zLY@sL$A+6_&EcCeLezM#@ZSV=nYDzs#Ea=IERS68mcgbFBg$eMM)hE-%q&oU*a84v+zQuGnZ zWEvB4&4>qVsL)>TunoP)m{@2;fV%ENQ$#ZdY{eB9MPs5j16zy!g7}8yu*6{h*hbKAjZYF)W zmiXyv;@1nYpUy>nz8Y6?FQx899&k)u#qnz3n3{7{H5VGHt~OR*6II>rt9j7d@UTH} ztD)^yljts(W~4bLK$-TQCn(SlKM<{fW(LI=8C6DHhK-ujU<89q#O)|r+e;zfCV&f$ zGN?f?*oUDh-yq6JrF2=8LErfph#)kPTnliNK{O*1;vcja&`2*CvKWMZ4`V-lrH^_6 zSCH=hSAUQHRVX7)21%Jfb_4Ul{G%}QOBVSTABAOqe&UkBfd*g&*L(W^dW(lNpM~Sg z;D>@#7e+Za%HVp87`7zU;P?R;nIR^_=>$1r2H6D@dvK4A#21XelR=aLKU4xI7~kX~cWPjv0(^aJ2>o7qmlwMdnAB43=6NRAugghXx(idLN{k#@ZXT zRaXSB&bHk>)^fE(cq*^ucy`;t%=Ut`w%nx7%*5_&KA=ozWZVWt!M|Hc5*goz!#d|;PoT$SlhiRw*?=uM93NdYA$9A%W!AtL)TBKtF=2C|SI zGmwo?2G)Lv9LyyHonv6c5*9F^0Q&qwmpquh^t~hr4abIZq@qOB`>p_F7?{BX+YtOd zpq!HA{sSrfhX7(y`(Qns)_)XKnT&xGncq%ji{o_8w==ol&KLEaE$BI&*K;bj?{wbx zbA=ECr}KJ`XLcS=?K+s$d4S(plGsrc-(DEkUJxtFj}hg?wC6>mNDu8u2iYSO%q7jy zUbO+c%00K1?E@FEbG7@{ik*;b+El({na#>sEwxMd*mYO}z5S1P~D!ukp z`|PXnb%y|6sq)?n;8Nke2jPpqM@_)~n!x?FL7sIX-VI^CO_2eu(LutvP*FlyD?hY3 z2?Z2gw7FAWKaQ!`ObEnFSSh?G2eyxl0l#9R(@BDu_Y9M&H! z)?^qV$>f?-nOby?5`(9}0Hcfo6D63q92SemVrtMRnsllmgKEj74d*asDsyHlbLJ_~ z7O+Wn48n3MVHKUQ4hpcjSizARYnw8|MS<$VlXq2+-@zg7U=utP2%(x}z8QE&cqhjz z93RU&G?G(jMawpkPd6Z?>dB?SplM@Tp%wS=DAm&wv@TB7fjBow_2gLIk>QMD3rfB* zF-Dghq#@_81_QS#0h+WRU1p#T!%K~_okiG4B5Z;7deC)-M%cxIAp`P(nv8HgZj^yS zj6N?)mlLZ=P0%3nwTP*@q)ey)H-T=yj6#rSEE&aC%wkwA7$ugpJQHFLu#1`80c#3G zu{r6W75RXLToHycC6>g)!^uZSQIC$H!Pv-S6IrLGDIA}|Jur@ba02t_6z<92l+Mmj zJwH?J%Qr^z`P#aR4V9N_%PzEjz0zHIySM&+L+i~3!Oh0DJI$hd ztsM`9;Fv*qB|sUBX2cpc5>ceJOEMecrZRvs;<4Bgh-nc$f&iw0yHIBu@B;ro?7atY zQ+K!aD;M=H_fGGomjn`8=rtq+LV6>W9(pyn%Dt&r)xG!Lje$^-0D;g$=Gp6@;P%>CxPcjlQrTU)X$Ji_|uI$qGsUHB4NBpZx7309h=U zPmiCxm}&5@wZb5rgz#rJ(ae7a%2>0@-_G$5_;G3-+$rCU|AUp#~`c56qi8+gF83RT?FF6u|}glr-K=qDg-nZn!)Q$$fU6(fAL%} zhB8oNYJF1I^suJ$YH8OGxvjNn9fgXPTuEoTSd}Q~l*ItP0LOHjX$HprB9sw^b_+tf z5+sOrJ-n^uQCGKlwgVsoM5AVag>Pxn(0f8HYP{)Bt_!m?-0iT z*`&nu!d+=`eHrn6nb5Ta93$w>67*&Zdvis7dE&kT38=qN+FvB?FP8U}CYeyCP;M+z z_LnC1mneISAUBhs%@*pi<8@ha+RRvOdW1U>ZOfWX$LQwnYAL>=uIpb>bk6C|H9c zHGv>4BxA5@6jY!fPlIfjs3Sl#x)_tR(ML2=(CP1TSQ}W3l}zRvbjBPC4ceDR zk?AlC1C_fFpL;Cj21tFAsq)!j6>QKC#W$sEE#!jna`;OPSvw$rM@;r;|R)el-QAE zzL%|^v#lT6g+vVWAs_c7?RBu(LbZX>e6ace@;6^mV8Wj5E(h{{H^vb!wx2f_6yie- z_qGf5v|4;FdhjC{RLz&xOGlH0VpPPYpyo7GaM!eXsurlz~ri+~N595q;RdtiXho zfd+?T22dEwzOw)TKmbWZK~%;ZRk0w#-%tLDkl^~uQ3e149)P|VJ{a)XRcm_&=Mwy0 zIO5;e#3fK0ve+t?l#Gc{5W66hLH}y3WQGXFRFFb175iymFATjr^n{3G;0dwk#5%w5 zqSC+-N16Y^5$aIpx9=ct2Im;K3j$~u$5`s7=JzPRHVk<%Ry8IRok8R8u#^l|_Z`T} zphhPvoyUtuxE}+^0);0_?a6WzT`{*cS%-qnD05D0Mj6z{gtszbWSCX|tzPzD(@(ikviEGVNF^7R5fbSDA0bVmee!~D^j zNepH5fHGLi5=#5Vh4jP*cmEw_Bz(j%vhZh$h(Dk~2|O4XLK&!!fDD6C2FA(2h&-4p zgU|dmCPnrnMszE~^svgnw1ohs_X6LfgKO_Y`MStyN7$XJ~^d(PsY97XGo8Fu&Fas4Mw*MhAAq0KSB% z#C%mksF`5GyQLA`GV@As3}wKT(I;RuBMt(H!GH$Qj8+6F1Lawwb8Jm@&HI3z8~6`+5^9DKd}=~1`15=N8um%Z8LDp z{%_m%egi1;;M<_06@b5y~uGa`}ygm*&sI zwie7fGi_?aMBmD>WAcWN$N)P)#J}|Rk$ZZ^yShd?IR!X7`SG|o%6v_yZ{n~wu$U{E ztc7&OYzlP@jX4rfhQ{L3Icyr6LS+HUun@|yc`TM2o#slTdQwO}WP6~QnOy1|C+0E- z+FMNGTB^+kJHjS=!n;($MkZks+vYQ8+Gj5GFCD1gLSlwt|2@lQKhJ)@quuw8u;!W& z??Ff!Mo1rPmo*WJIFuA$rhF_-JdzSWoCY)l4NVE7S;-T*1v8y$77qP!<*>_ZhW)tA z?c{87@pxP1Sh8>oC2kZsayTi}$2P#z_PCqPQCFKoF7}69>~?XW#)S26!%$#*!e%nz zTZYXJuKgY->H)|Cdr|n_b|D@%d^bWEY?t(~iE)QeFhSr>5PQO+14{lxPVrQSf~oAh z$;`Z|%)Dug%t^4;z&357efDHh{uCIL2Ya1h2n|6w3JnE@R88_kn;e*ZH;-MsfLpYH zQ!tMWCE`|A=4{qf*T`%msRjzqZ+uU9U#!O3R zLu+SaTNlvG=?xS8=!N7EO+*t7W;D1)~qS!l)@Wu9KeIm5yn_{kuY!LS2? zi`8qx^TNO`Ci*emWqu5LwHVl0wmacZf}@Ptp23na1HKEgWd3V{*e@VCAPWZ912ki{ zWK6D%naV8>Fflk3l5mt6obWZJeQ~C-9I-^3seK7D!U#=J)E5~rfGltYfzIEU#@ec} z*sm#{0#3zNawoGwn zvY) zS19c(mi3j$`bz+16uqTNi~35H#u7zOvAnxTsw33Eh9>k9IH)=)heUalJM5JpvPgy?gbwB{rKMd$Mzr{+5PC)-lpRRnvWlNbY#y1 zC?R229{cTs>yH8sJ_$bD444w?*BW*l1Sid*$C|_ZKuzI(O%cc8_yki^eoTN?8~{Zz zwGgHN`*+2k0IA|nsN?zBUAO}avj#_*D@zw&dSf9>`@IAU zm|lGaP^NyOZv}=jSw2GmWpG!<-_`k;BX2L4vz^8Kn!$LF!`sN@tYC8H(OI)7^bvIC zPzue3#^f?MY&x4pWzp$SUE*+nW|(XTI?aJjb)r#RXe4(AWekrp(UtXvBkL_D?M*6a zgPjea3~ZWQ!6qzc5mvHn-gcsFcIE7Ia@_5}{hnsG1L{7oLCM)>o0r`IrcD4Bt*Vxc zCZ26o#vD>#VL7`WAa2t*qbdH27JTHoyrDP&vm-6YS`8FV=k`ps(zK8GTu%x z)-DN}oMF|`I8y8|+fYwJpc}#8(>B-bEj7WqX`OZB?2rZ$e%^2TEwea>;MZROBb+8 z<}*v*;8ZPhs#)#~$MQ8UCGUC^taqtgKjh@5F%2J2D*tSH`R6mrj;uZ_`szl;zFQdw zeofwega6st?JG(*PAypMQ?ztw?Z$BzzMOgaz{(%R+gr;bwCALn3-Y$J36IVv+&vX{ zqao@>W6Yf&1h--EOrzlUAEeEfQoC;Db^Ko3bTjwC&722!@|zx%wzk!^w%4_`)wi}c zw6&jX?`Z7kJk_Z>-KjYPzud4Xqws4GvNC9&fXSP|PzHd;v~1E8{>2;`+^4~gcwz?C zn8299cU2;52Xl9<=E_*3j3qpPeLK`Pg)z$Wf4f>d8~k3=YeQ)sBw!l2j(v!r%*}H_ zU}(nvU*Ey>U&-gbm^Mt_3H})m?g(D%!N<(}D_aG*9sf;~fm|&@8H_Ln8%w|__!t=6 zfH75qF!I1FK`*%%z672Y=N|N6Oy=i7R*l7*!O#b{WXz4(@L;PRY}5#iaSWt@alHg< z2BVA#P%P;!oN_RZ8N}&$b{&p*CI)fLAjbtk34jY;Y%-UeOpQ(!vcVa}!ZGMcu;+oN z0$CHxKvu>a2Uc~Vlng=^tegZ#R9(Vc87MgoLK)bBf;|R0o1ls5$%E>Sn-!fGi(AfQ zw^bxJ70cVRC0!}P4rQEH8m(8v_CPC>HOhz)%IHNVl7eRQRxu^tnCA_qxmxn@11~|r;f@r2EDFVzG z1To1`y{R#Mkef-5@6QlC%@jV%5{t+BjXqtdPZe}0#cAbH9U^{9 zwEv^fqYt4|I^f_V|AUZp!A95}?Fc&B>VN3T@dF^Zg4dD&Vp_wGn~av|Ah26HAp{c@ zfHn_A2X@2;wPR|F32cpqSWHk`d~mxUq(jK>5`}gpgsQ*_!chh|2HMV*(SR~A*BFc< zKpFUP>E*CW6RAhe*Gq$OngNv2VVPwOBxZz&X*76s36272+lB%Y8X=>NJqDHxa%EzV zYNKGQ_TJ9WJxKgLfHJNAJ54BaVrR#(9r#?Cjze49_kRbj%;T+}LI)GHFFoA+{{2rj z-g^-WU&8^G8{S^P=*0wz)Tqqn*ldjTpEQ(qdL+lE)0r0i#mcs9Ph$d z=*W7TMPEmwY_vxxvyMtw$|5Xb5>|2S-gG2=;y~ZU5Q7Wj%Sy7 zU0pZ)=EgB6mwFe@;iXTZ%Es79M%hZoQ{@xc(uv%daqO@W)PSLMKOe?nPugx*m^Wkh z1;gfJNbpc$-GLp9vDwPC+sPw*&m$aiu<-|o@gzmN+ebRv#PSI7js&3tLF#0a>SLES z+&+CIl#`&SM9G>=&74jve4ST1hg~v*Ts)0bG@Vp3i&_dR2xigprjoO!*k?_#D|(e$ zvxrx}%(-rvbJb#pibdSYr4DtgTLaeyg(I426ke~5xmh3o;HfhWAN^4v-@%p(laRe zi=}`E(F~TGvHnZ-xj$2J5Ha%#hEV2Ka4danLLBU2_`L{UFpe>GiNiVE3m+5KD1$T2 z|Ngl$FL7KFc#vVKm?FEJ%iFla#M z7`q_$!f69N#{A6I|B!)uac9NERpzRY*^)uLf}RumE*4wG%BnGaUwAy+YyK+qO)U>L zRhP^~D~JhW!+cT4HP*glf|x!_5ZG+ep!5v9;gHamU=dyXT?p@W^BWPy;z8yMFC;zh z)?oi7aNgL1y+ z4kpy=gh|zjIWd^sVy-1&eM~shU`G?>V7VEvWME2O%i~(e%0L9K^VhPLAM@L4(jJ#8 zT5=>Esls;nsFuYbR|ZfPwI5&y0s;Om9Y9UuJxNmf&fw=vl6~KTp(~2WE`WkRveU3VZT|`aEGz zzQ|B0?k$q^mPo;s=_{2PO5}ZI%KnPPrxi(X>@8OsO6B?z8K}Ehsw(&iMmj% zDiC)Sh`REHouE7cNS7(@2BnEKiLq@7VNEds55xT)@Q*wUKKvl)&_n-&Pf%PJwj&*H z4L%0J7r5CR1jQrB2*XU?fR31;E||>|&sPgV)k2e0qA-=%B%qc~Q78~hyD+3(#P1M? zb|!?Wq!B7}+TfogGpO60E*`9pG9D}-n;G;Bi$6KYw4qaKVI5S&EAF3J5G2+D--?c(o& z>Jp$#>+v0J$9F*N7v{=9jj7}CR)jK`D+A5gPrm!)@z)>WC}VPEHbQ}E&CNGgUtPKU z(&9IMnm_Nt+}D13ZT5xPubi1Nt$vbkIk+;Al^Hrz;q5K-@Q8ME4Rmuo?&P@NfxDB# z{+7ks#B$om;4NctU#GFAk!jvEh9?EA7bcs@VME{-f--b28_UgbXe@J{?Z$^4GxW+E?j0yA+8RRj%9PJ~DvA<_|+KH9@* znT#o{lGoiER*n7X-5Eb`m~?i{sOmR7@@8?W^(=0y5}X$!{8dnB8WXtrN5ZMLup+c|{2Y{CJc8AsbNXS*m@d!ehH$kkTp zXd~hgB+dk>J3;9Kb8g7FQO(O%%l+R{VzQ!t< zP0OD_%$-gwc!gFrk6FE#TfLZ9xrkG-h+VmaQ?uN$Zk6+?bsiVq8+QH6iPv|$c5TJ5^^u@JkP)nG0x6S#<}Wlo#@yS1af~TcVD{Rzt`Gb`tp24q z%9uTv0fHHP1pvj=sf41w(82Tql)*c+F?>M;W8wyIN)U9zyAz9g4NUko8#9P+;2e8{ z4ob=37ZJpuSqLxcQG%Kg7Md}6HfDS=)s@s|@uCt2F~Bi{Q3f_N!T4bHSzs4584sT* zg8>a(1jIooW2P2_EVwsgo%S`;44VAg+6b0RTT?w0n1E(F?$vhOs%*Jj)Yg#sutNDH zH=#9E(3%XcL#$37i`AG+D5DaFYJ_~9kPkFti02~%CLRnJzLi3-iW1B$K@}x5wj>S) zoM7EF&`Ki-0;>SjBLfA&(IDsJGAc|baI;6j*ULln3cfKhtS=?%|hV+=8jF{f6c!V-};{JTGF;8g774%@z=Lz)r0)2t7r$}rl zPB4~8dP}9Co)W3COx{BGr{hw8c^ls6?s;6-!mc5>=6; zt0}-ef$D?+wb)-JI-wGtP=f@=wE{n#00zlmC=+u8>PkIvM-6dD46%oMq7QaQ z9neMYSMm2Cjsf{?Z}HpS=C=b-28@}G!`q<1)Vddq`UPVKM&tp?paRn;8-M$7{hjyL zp}5RDYj3Pub9EI$nG5sho_~GLkAO0BUOh8&di~^y<>SWWju@Ubbcn*oN9gGp?d}%n z?t0uAP=*I)$#-nddo0(Dbf={Z-fSvs5(%O(bQcPh%YddOE{ey{cuX3XL*;NO94?j3 zp)o*Eb7C-POa|47Za2h@L>84bBG_yQ%-TsnC_Z4nUyh)k~G9t z?1U;l0WfcdLEyXCMGvJVOmI}bIyCEz@r|p;{DpC+ubh2!!G25PNd_G z_Izhzlm|J%gCusdPjI!9IN6FE2m&X9)Wa@i6g6iGyI>|SXBH=8Ix_=eJ>%_ieQon5 z+T~BOFPcs+f0bVKI=gHRy>KQmbFxjUuT9Q0yTUn?(z&$Kd9;%Gl;U}m(l_XpOW8lH zalO598ZUHod=h3{tlxO?Hnz;|v%eR7rm$q$F$soJ@+eCO(hLmPe-Z+(z`_(9s< z%VFY8M1sjfGcn6X~KW=kcVVNSN}iC;52|0 zTwclzFN2#Gqs()hfyfCtA{fU2!JrV&Gqj4~WjONEmxPR*{~44)&D&_Ei+NBUMlHZJ z0|h3$mC5473~&rW88c0T*J2uZ1Si;=8-X?sF@xX718_4KWuUHvZIr~u#(?R9J27|y z2K#FRpXY0`Tj08hV@xq&EEkM_E!N6}>Pna;gV79{m4{pz3(A-yGNv*U4m8-&LOH0k zge@)rR|e+FfHBkBRNryGuH$x9%a!8x#;k{xiA}kZ)-)lGGC(sp%0M?0eEPl!W%xai zn;8(?#41YI7+C-sZ1SwXR)}@eBm{O#0=uO_-BLIP>SaLyE=ENtCUnxP4C_k_?@dB7 zf&gWbBYMGxNr4aP2z_#xJ}ImxIUGlszRWmdMr;p;GRCa<{#@bHJZM%DA(R0p23Nii zaZG_oKL}-HfHH8naKRw@nUKr^!LQmM8?hD%c-Lo_qMG>B}v(O^AA zPo7+tA#PVhw+Q)9ATbji@Ho={QTXvEu-`H4IDkt>R3IGT9I&P(>_mH1pemN%70>Sy zhJptJ90SemCXSIts%4lkju}81acG-36i}v97NLS@jsgbvMQRhHw29GLfEYMeL_%&x z3qcv^^THBEs0N26iga>5K#Wcn1VY{nXfV)NPzJ{2sAExq3B_fi4|OA%AVwR$R};3U zGZOw)ItKKlB@`=4)u*za#2ynTDqx?39o zW!4~+S-s+yrHg-lW5G}J=l(qJHJ}+lnYzioWn)L@41XSF{G1%XmDz<{8TKZo%LcmB z5<2e{Dsv)<>Plz0K--cP%CIn$;ZZm+F>e56m^3Dn=E@>_@@P}pv}G*DS_du|FhDaa z88!>pgoPZ!dM?C1w zi5bn6O>zd5DVgP1F~==$0yTB0ZGxLkgabmEBd~rFj$E7Lp2YCcoYX0-qE|W93*3HK zJ?iqt$v*B_-JOducKhrFva}w%Ei;93#Y}-9v?Ji#Idnn z`+XP(yvYHhIZ@-BBgQyJ4QI#rFyegZ5-$o!=|fHOCQIFH;~i~c9cXjB9TVdGOJMOJ7ev^VPJ*?_T-g@T!|pAKeK1?EK+(YIm)w-Mg-0 z=c-d7AKXgW(^VSSUF7#Dar^b7Z`OS{Ien>j(&AB#o0nV{Z*QrJ=sYjJ_KOH~^K!y< z@MccMJgJOps)}zbkLxUrYp)bMIIn2Cl5y`|?yryYu06=T|9er(ld8`4ld8_sUEs%b zG^)GKXf)@vuz(30QGppVILcrn?|@yftc=BX!GQoVjg`rPJ0JL!7apy_<%Q?)s~%?& z%#yL>U{G!b=Mwl(uoC*?7N;3_HuKm13||X>7-JtOD3Ab;hvYAU7@T8pGK1ib;qrer z$^Z(OXyAVUWuE5@>|0nt51vOhzkq)*SN=ak8MGS`qZ#wQ0-RmUOoNAlEfpmzO9tgv z;Jt{w?FLW=TtRr7;_p#7dG1~ebnv$_>^vKAWlY5*pqal%cM+gq-l@4A3I4~LJR59S zFq{L~z(sIea3=;w7F1(07nRTnK5qtG8OX}uElb!DXy!S5dG03e&44`vYYo~T)wkTO zesaCE^@p7Mb;*wlWi1(^=G1tN0>Z7a-HO<5S&T*!1r-peeLxQ|nlKABCIOf+V97uZ zCiw5t385btX0-)qpxqay%|b;(?2jrP(g2ObA6K_5$jmW7Gkl{m6z~Pur9U<5Sz7c{ zR8azsfr?TD;EO&fv^z1hJ1G=y_NGPkWyBaW;|zc@88JPXv4*U;-dtf{t`MqAhI|ZV z5Wygh(HA0)(HDyiB@$yPm@%^6a+#q*W+<2Slu6-etW@;XB=yxK8>17u*ed9#Z04<&jNLW)kw7I&Z3 z0b3eOD6_5Q*tXVV+ksF(<9=5ox*VXp&s2Z#L) zi}McC?Jb(~e7eI_8k#7>V=}l5I+MkMni7Mf<{_TrM%0af663(!J%w+ zAZ>QB`^uHL35Er;xo^>FA2LbbxbaT-Fe65=6UK2M>Sh8q{ZIlZE zf;9(uFeJuir<462SBh{9HEj|tb1JjoRmYmeLr$$8b9(K#hE=00myRe~G(2G(lkZ_0 z>|uMt6DINzgND;XMzi^2xc;NKhka;AeW=HW(gTLG!bWhT$2vV^zs4+`O)Ho|%$R1AF^!Nt%eG)HsbnFocoDs55xsH&^XxpwYpaKy`fx(k z$K%UBo>2Dn%rpBI|GNLpYrEI}xNUj;SBo3JTXr&d)1{>C4@!@>)$yCFgYHYWo!z@C zd%bVs>mGS4##HTI`Kw|_YhA?eS0uk(7X5ZH;m%LuyJv;XP*OSa=)y-skW>2q^hk^)qYCTbw;N-*R8t%Qftnu(QiojO$fHM z31!qh7uAMK8pEZ50+Ut!2+zu(@{M)p_TSF2X6zUEF*w#(Si~HT!HERt7~HTQ_;kR4 z24xJ)G&2yd!BA!p&A_X|(#j~LjMjR?3I$-G|16Zj+jdMxQ}G3ngjp~1U0#Y5;H(T5 zR=qMmEmqutD<&J}xjA_M*P{%+Ez%T)!J{+4F?f>3j54Tq8VjaiIb5{DdH_~%?gkIW zj4}i7W+;5(d)sl8!9WM@MNeV^8Z54hJea}WjD>8_T|hbLUX%+qSu!S+L02qAB`{zB zVl1U7bZ!v_Luf=^=MT8>xiW*u#_Z6TfCl$(%ojVJG_>BUX}Ve7ej)$S$@JzDMQc_< z3+%^MB9zf7;&k$VL>U+`1G@?TCNy3aNeBWz1~>-w(cma!p&4*xkO!lLuBA{^W&(RA zF{~Fyne-T_EA>JlDK!#27(*%mO*pD9r6P{$&xq**e1YmxW-M?_Pga~EJKmTh0GdIT z44@1aj)8m()RmBm#XThnhEfT}F;G{M_f{%^W&mYC#!7jAZSvE))V|teLzS|-T;5%- zL?}}xSC`0C#o)vsjsb}2E>F@|BpYD7UTKQ4I7y!;?@AN4D`VQ^QEk$Qc5zsXfZrC+ z?+}D`3c^%^u+I35~DRqpeU6R?hON}6%ojrK_*QEjPKJW0_{a~Cx#=Gk@Gb;y8ylb$^hCxCBK+B z#*8vzf3@g1a7<_1(XQAdow0|zq7NdJK~rS*sxXM@;(y;6yt6ZCM@QiH_JAE0lxapN zvkgY%wH)38o!BrUuj%{Ez%dZ}ef-Tw559c=-e>RL{pg+B?_<@a4Qp}3{b|?BNDb2;3xyJUk>YQCVM@@ z?M;f)>ondZ3Ud?*{1`fj!D7K;Y&si58LAm&$Qa7Nx@-((XwaL@X1LJFL&>M@ ziwS$VKjks@IuMV!*oS!%<->^?zVz~$ysB9aCDVCXQ+dhbVaP8lcnIy7CuN@p0~G8= zjCQw+_qLagB&AKF=gj05zUETC(7SfUs55U(tXVm}XyM4TS3G0JvQN0%9dx!m>9{*7bU0h=>z*=wSlZ0tNxp8P;jCD9a-1ts}>}piV>6yUs~Y|deIEP7jm{QF>}0qwy%A`RB{PKWFRy%msPuvTf2}~v5;Ld zpI-Pn8Aq9#)sCk(dYymE`@%xkbMu{x*LW6g7+(D0xZ*FSmVZ6-{C96$|9;K2J?qYH zTXk;x>iWQqKS;j3mbK^iQonnpeovD2+>P9PVb7Yp^W;hPJ3PlzZfx;fuo6LOpQp-p$x_ZSg{5-JaC9HJ0CBct%sbFmk6vBGlc+% zSXcyQXs}NQWWxiy;GYgS%3wY{Zp`3yCG>^nCqZz7c{3N$7EBaXM#~d`X5gj%r=iS1 zaOA&%EdS1v;HU&K8q>g-KYs1~!!!gBF8<$&GVq4OT^SR~SlGoB@3kz%Hup}OX$G(c z%2N2-bl`~NHtxz;k~A2~Ts8DwMPV+ObAXaxP@FRDV6wJna8kjKmb5SAX>jg&;n9?~ z!KTO{CkE#jRA$0}2CFwAvN7NM*C=D!T3~8xGL6y0n5MnyWb=dCraP4#7mFXC$!ac7 zYR!=}rvu8wX%pjg%6~+e?)VUZ7%hxk8zeMIRxR*XV}1-Y10zWSk)(lI8InfkuaWxe z6~TR|mJ|klj6nernUEeO-2lNib+#tLa~rL3k`2X)-FdREbU{Z_Oh;mLha##&8qtb5E?weq6^s*vqX^gq0=#?>oOHrXQ7EVj zV!RTF#bB0AQD7Tz?yNFs((?egS3PTzzHriYqIYUS6{J=Y{jnzB;SgcYN{4;dw*7bB1_l z4I7&7<1O{}it}`jaB~5aIqJyU!{cmcv%X@o-(tA0p*YQ^a>tVy!$?$EwgiHW1r!b& z3QBA$7vwG%wkhnELS=mCg%B2Nn_~5$vpZ(7sgU|_6iu92i^>W zxQI$xOeHU)Q&%x)YgzP-Z1Q^?^2c1_X0FYbJll_)xbHjiKHxGwVG%!O61OsK_Hfb2 zy9jsNSRXs(XlfQrtDEIo{JKxUY>&h#PVr-yVMED*K9ry#)F4;8U?)Pjn@y~bZNf;R zd<yICg zy!yqYD<4j2Tr;d-jd#(;ku{%AKKb=5(1ovGzrJJX-Gguac5KtnJ6BfkU)jjt^s8dq z-GXDkez{98rT z-Kv;-NYQsIqpsIQ-D!-!dr|t}c1qLl+4pbdKl-hx`9Vd;lR8!FNlnLTP3LJaW;E&_ zG!U0jp9862(jD|vgP>&zlDtrz!HgNRD`Q3(+?%m54Z4Zn^@5|-4kq;1>2rD^h2VeU znm-E=wP5&yu*T}5sVs#75RO467=rHzpB)fhHnme(p$wG6{&NaU1MUmZ!(bD|;;H;Q zqyk`s!-@%6UijpAU1{*l7&FJbH1G0KH|Sqr(0?QLi?T9!4rbtpGtKj41H^+(f*Ck= z_ke|CDS{%JF~3bsZX{MKMIPfnxH1^Zn2SUMK!fc?1MdfzX+Wm$4*Mq2Me~DkUk7D} z5&f8QHW;!GWo^=^yG)i0T1tQo^L^fxF{2E+KKLznS?bX_TXaz3}E zDy21F)|??!C&p?18D+X5{3{6234*nPAS;>t7>&>$(iq^xKsW|Lj0}@JNT)#3Dgr?I z#NfW<@ZRJwLn6ON2|3?j5S$pGiUb#v!+OvORFuMuso}lpk$qV}Fj2;gNJDx=4=5|f zkQLLD6Klwg0~zz;L52c>p-^Zn5*bUyAVaCR2a};f0y0)gd#hx<)$-mtrJ-7;uatII z$_&+trx?mStxxT(P41~u0?HtoDO2i7l-goon#68km-5u!inPAUbVGTvp)9GVSgFgC zbY{eNro@84H39f&lb}{3C>Wt6FTjc<0;mPbNgxbg!aJcI300S{$6!%kC@{fIJmia` zj7lB}Azx6ZA`&Un;NT5j_yi~1Zk6Fx>I98x|AqQQlv^5s#5R~&?JTH zk|Vm4z^CDB6v1j)P?sb?B@56ff?#0JI4lx}O<{u#1DRj06N&3;&vhZ9a}Z>IiEIwgj0>6S zNo9C5X+CVyFb;W!6J?$kXN4!EfLTi!q$MQsQW9k`jk<_MTgqj;$)&vQK>ZN*7_jWV zVZ)AV@~1rdW(V4r9O9>R!Z!@UE(iO=Zsb6BlD`{~?`9h}jG8pbF>kh4{v7YDnXbu` zII^)c(P*-86e(&5G0Y1r9J?rQyZB+`gpm~KC^9%S@{#t+(e|aUxil^xacbqLy5%E^ z=elLg;3+3E#bc>a!^y!O#2{DuU{_+W8!6bG9OOni;cR!*(dLMQ&2bm|UTeA4;q@Io^{b^dJe`i6XFST!{(ZcJfg+N#pEO#}kvs!Yp9B)UkG%6Np*9_L<{t zb0-ta=P>KvaB5uTesYyt^>W9OC2UajI+ru=54rr^j2rt`ocm@@-6vD)KAn2z%UM5v zJLl(bW?%ez_AlSQc4zPMrl1e5>{?c{ZDGT~)xX4S{w?R&y}T2*a!%aJ4ZM|l=;!0> z)8C&IyK;!+opI&gFaK4%qqB&wZ4|4|%34l|u2w~YF4u%#ss)8ztqr?zGV1<0VcTUz z*NyZCw+bHJDQdn~-to9r-GWd?-44?tPC*11^1mw8Srz)Fch1ySjiF4J{$~}S49Ju? zvG!f8sm1#G^XLB(WiS@O5eNO|w{Q%cV1Km^+=bVq%&t7T4#@I1nM@jlGPo;)Fv~RL z2GTtLDJX+|>RX@zLl$#v#WX_?6^Z^`l)<{1u>|g*Kn(uO=A+fNOY_`b>&BuN2Y6rl zlK$sV295nShhxym0MI-ioq54s255S^0y5i%$Wg?rOSmh8dyKfd2s8tNN1DO>;-C&{ zQ>DpVZ|eThD!zl6MmWlt;RZt)^MftLDZJ4MYhSVs#~?ojBO5$AqZ*7af6vNv!EXn1 zi<54C=th)1UD1;`os|IksO`v~WNfV@@pKOK-jamoZ;pEEM(@i+W4MePt3*Zy6Mo5)5St05P}#W%{b+ef7%T zT7{uT0UTqjQ6iM7PwB5u0hBRRC*mlhF9U)>W=u~-ilHK{w=%uID&uK&rV(zIC*vs7 zl_^lA#j8@|)G4uQWi$j_w2Ek*B1R{V*2;yW}AnWvDJG zTn}CADG?Bn)+$2)WjZDP;L7Nf!8-IK#eS*)lwglZ!7%gF3Xf^ykLY3#YoP%47e^T<|!MDk*L(i;@=0tV#`7Hu_$^cIiuA&>kmhq#4H`jBS( zF`N9Q1MM3g`E!QNcd#DPne6Aq2=So@dQt;j>_S{^Bfac|!^uit=!JGIp6gva&pUgT zGc+qn#&cpvFv2|T`K~aT#$G;_kv5r^HO(PwGBbT5E!~%zJB?L7*R5g2$kS`aHm(_8 zvto3~!XcS++!Cj8g`-&!-t-Vx(s2iyqg=v4Henx=u!oM02RQ`bo9JQ8m|+aTP`YS1 zLpp+`7|xatV<~)?a&NkH2vIzgAoM1{dZzRV(5FqynM8pFlZs(zX?FT}+x+Rol2_>! z3pq7QooZLQ)U0u-UhQ19)~V`E=Tje#y}EDNts`r09$IyI*P?S@zk24AsXu%=_3S58 z&wMob?B_Et?^tqu->TDlR#bn#wEpN@7o|HM7X{xh4!xcea8bJJ$K&gZzMd^!H!@G(lOrgS?PI&ul`a!Mg(R0L}l!C}SCgXI_hq_hwsnXqzLz1IrCeSKw<0p$z_R z#^0}&x3!hEh#QQ^yuse?sIMCrYN)o3&H%~`9$;gdrw2(LGxV4qk40xtRz`asuP#CI zcVOA1$(una102(#g5K;iuo)ZSi&>_AY;zjMnqv^Y;14t3+uGXL)O@n}alQIhHMC^6 zH)OUKDVwvz>g0G$a=Z?VnHObcaFo%D(6#}K&^kktg3x?6=mAcEoG-EgpunM1AcC<- zuM7f+u@=}f$e}?T!v})F)eRrO7|nng12lsynY3^{95IgRD-hx`76=f^6bbuE#Qmj` zzH+2qToopcF;>ZpV9C@f`Wg~@fo4E;z%m zdsdb4M|IYpHCcbwX8&26(^s8_m6?)s1u|8(Sd%HzfzpM#O>f(weKP_H(e*WB3ug6c> z91l5gc5zu-Sd7mZtQ9o3MMTF*MAi@@&5cMQu^D78lgMS;aoI#Rn@iz>oJm}Fd#)Ri z$D=rKDGoG-gFV}U%;LJ)Q@u$HPbSTUOLpauMzU>uohb{Pnd=?68=M?gQy43Ww1pJv zD@-zIAmtFjF_K)xSo?Ab*e&fiBcZL?e>6Q29kW0H3{<3R%)NVbtd#uL-^&!h=ftQu@+-k>E0=BYEL@iP$Sg#--H3>tZd(aAtS z4BoHUMGLqLFgt=9XmrBEH(0?4n+=0ah%vP_S-CRUqHJX0;1Gkc3%D{?D1&w_K|}^H zrLFUHYsabf&ePW2*Wk*)y$EH{m>EDBY`m{|c+B&2Wz72uUf9QkP^P7^kwTN3(4C#olOr)?CG?~TVWEK`MPN)3 z0HgF^Oamuy6T5<4OpF7F=}i{&rHcB~#Beku3%V0yH3~#C7L);lN1Yfmpd?7i#C0Y{ zbtXk=(&BnDg@!B<9Cc}6)x@Y%A`#6bM`)75L4Y!tpwbiyD5C)>L%QSv9nuq>5K)3k z6A0@gQzsk;j#0-S(Z(Ov#U9c`?^lQIfxvGUSTaG|ag@>Xzt@EV-|Ry)6M)t*!CaX( z=wLd$6|yoGSH_f;`SN|d8T-x$Z^K*}Xkxm#VXX;e7A-h8@Abx4W>x~q4DrhL_9z%W zq-gXAK$#S9WjsA%+@437&ls%bG`BbG9ejx_AA71RkwQc$!vd7C<+AKyh2+anhUY<~ zd)dP%8nPpY^S(8O+dQQMNm?4tes9`8fJ}u|iz!0vrjkPBw`{ zh(*5S)34ZHm`llh)l2B>#rI(y;}Q-tZTz|R5$@!K5fHCo6u;tBIGvL z9%+|8jtFa>U}$;lA$Bx3Yy`vKleo``u#1CeW+#oX zpF;?6hGhukSTCB$lP>n4%iQR4H-^lIlrYjp4C9H15hO!x6(eEOBq?_)J%1VloM%k3Vp8sgZ{;H;-Qv*Sq8Ey`W^At^RK?|ivY+pY{v92 z9sKgFCjt*1i#KRo9=;9RbTn_899(sR!V~r-h;_{4-0-+J002M$Nklq1Nx3$|RzY`35oFObTBVFUjk zurYe(u`vKHrdSLX=><%|d$4hiK`3K2MFy3YoC`ycv9t0q(w73>&!EflZfb zKLst>9c_(mZKs-BQH@D;x32X@dHdPC*2?5Z`I7du_|9|z@@5naVEim@@d_hfQ!11P1p zA=Oxy+*_B@Uzhf@KI3UkCg@pp*0bvDKdN*7s?PhXCjYORg1>4DL4Q=|^;cx~mSh+U zQw;?vy?H6d++;&mq9I+bPnGtjDL}?lc~6QIWJr<0xiQV8{uJ5MRQasvFem)Slq1vB}YPH2Bd=+O(L3`hZZxz6ks`$MjG6e;I9IQ3=_1H>7X%QbV4gQ zssWUVJ*0~{h+LV-J*x2UyFz!WLU(lWx5H5#wo@It3u|cF1^M50|84EZx3(YK(s~%y zNq+Ts_ZN?Lpv*61Wgeo~?+5oj+w}WK8}Gco{`RJ~Zf$(?#`?8a*RJ|`#nOul7W_Ep zwbL_aR8O8zGgiK+V50zbGq1XK=}I z50m3SWjat8JQ~e`MRnoOhcQVb7^Gq<+L@?ts0I&V(I2o9#@yt#sQjNp_#w+PrUTvyo)`0iE=TGh?$iZ`&}3y~CJ0 zJn2Wdq+pJn$l12o%dU0|z2uc4xpPLQP4i3`#o#;J!7ir|M=(ol62}oUCS${Sr_ho{ z*(P||O1y0qLrIClsVO5FnPVODC%Ki(8Cte*M9KVN`Ez|TX1OXRbK}R-B8J%qdD{ef z+4woz9O9s=lOLB5dn)#-yJPo<(>TY$gB;%`J1K|eKf1|>xCzGul+gdtNS^}J8Pq! zR0m#6*;eoOcHviZli!{wnd2>)<5T{{;@eT%HARu_mr@@7kZ|c#%;{4RKQu;MJ{fhf zKJt1+*l$H4cgn)<{Fr$2yyEVq)Rx%xD3Wflg-ZZ%FuUj07ePG+KiYtl(i31UJ|f^NHzR)S3iBP7G$l3>+;G z^Bl_Hr6TOJ0D%skE5J?=zF@*XG6vlX*YW2^-wVAY6p_JSq~)dldnofSVd5nZuqwX5 zjJUx<1n^QH;wAT5K*Yi*rd3LK*!GWK(e;0Ra;(;aefFc^%ir|RU-**e{4d>QZ4M3o zX&?rA`D+FeGBd>APjGCqx{k3LhH*ID3;@a?hM z4N3%~CT(P^zzM1ifxBZK91JIL)07%E^>U+*ZXgmQQ&tysStDc_0Gfd)4E`8Ax{Lm= z;xfA|KrkS1VsL@=g8!Gs^D+1l#~mmzfxwA{jgq*an+X>Tn}H0CS!ZA(a2KfKOlQYw zP)GYIT*$pe0+_o*Lh!jO|j!Xyh=FHc~Bx z8MR?*kQ9?BR1?S7#Pf9m*fANd7l-#G;0o=LAQ>clBq^-C4mQeyd*!fw36mm3FAG$O zk7*>wfo7051Jxyn&LEV5ElUvwv~dY$@WZl#7-K4|TM|CY6#tnm`7=lUSFZBUT=^f_ z;y-f|{>YR3kuQ0gFX=6m^cAAj1TZ!RX5V#}N%Sy0rb^ydt9V+U__RI=j{S8YC?_Qv zPN(S`Q}hkVJttFpPo?)YW*QsPd+XDm)@S{35)7EaKkEwqtSR`TD*stU-k)Wl{6EVI z{wyo{v%Kif(xU#NyxzR*zPy}gh53IL=J)4j8#6Nu>1oD{^#05YP;W*$-0Vq9#f9J1 zo0;)Pdiq~!NPniK{h6BfM{4r3l%%K0%D!Z2Z<55ADAp?kT4@YSo#{#l*T`T8IBcGZ z=}C?SLA+O&1}GD)%ZveO(h8 zFyxkrgJIYY2yKuM!*eq_ookcAdZ2}*nl$k0cAdY@9u~1-hS_$ zn;YM{@y?sSzP0A^nw396`_jDm7iY~rJ8gRHv`Lkd#-~jiC7m`*GHIxM-0*}^KFO{= zscbJP(<6-K9Yl58%ywDFaa_c57|M0?WIDP6tdN+FM5Ysk?Ly-^(x9}&WRn?akPMZ@ zrkR9>$zXzhZ0OjAhk)RmOJ_PVSVO6_k#xpHI_(u2Wj2GhoXcIw<*s0}meXmA$>aqj z(tHwW0hRg&levV${=mWR3unT2&UW8Bkau!PTWOT9?d?CXwOviLTV-!Ik40MG!dNwg z_wH!t_r|*Jc4HmpQiB=f6gy%DnVL16TQt+7YTnSwdES|mSd!tycpn?VP(s2ef@HJ} ztTM=$LQfnE4b^1nP?FS}DfQsUJ$NZzp4lUYXHRv>eVtpf*tL9_N5Oo@^jQq$WRhgO zop`LRaFlJ_2>VEHVxY6#agJ?(gH4d5eISo=oP`v~WAUBn5w4_IPnvibiqS|%G9)8t z(vdXf7;=g)J$ouEe+CN{Hl-^t#?1ahS|7`-1wH$ zg%5}R^ri3FZL_Z&Tzn;XCY_2}IuHf56$*U)Z&Tv+)@@?Gq=Ka`Rx+9@ASNEUU z0{44fetZd^{WtFVA48eH0U7d6aNsZ<|CwMcg|HW&7y;xF%9wx#h{S4LC4#3xD1!jS z3T3cO2>1iwNwB-{IuTwQ0zkn=#bC`x7{{RN1FU2AY*0lBrsP4Bp?To1*^EISdGSEK^>!1aJ315IR`UJin zk~9)fFl=Aykp>xHES?N8jZq%lEe)`s45~CiZU%xfkOGF0zKLl4wN4%e+lA1_xtV63 zW{UsFlKz=3`zuHGSFYr*Jn3HrvOf!De-z64i;?=uukYn3rwH$u#CXjO<)&m z!IeML(-FZWr#wwe>QgFv74lw%tXC-mjscnh&!#U$VoVZYQJdHvRIZ8x0ms0`CCK(_ zQX{o#{||X@0o7L8^?fG+;)c7ILJMuFyBk!gQK#-gODPn0cPAmZ)TqmJ>N@Srbi6h- z9O4Pmb}BRXyRUPS5U9+&&;8u*x7Pj5+Uu+{3T>l-a96 z8EJ|yC^QIVVs{9mx3)!Y6^3tZ3)|8bw7E5KW3%6ST$O3ux(2B-8kF%~@DL=K1#^F# zJL@~o89zB$lPQ#m6v`wTZ3>g=%_6NeAZ&-0cP4a* zy=>+V3dKiHcRpEfo}TV#GI11BXR0yP%a*;|*(A`~Alh6%)sR(5rc~&Wb2%iw9rgGy z(`z%Gug`QoG1^ez3>DPGTn9phyI##;dJPC9gP1jL2IbC7z7-?ah?Z+eFS9g1-p{#q zxW&_F0vBewH8s&xC(V+P=V;1z zu}ZTr45E>Psl+%gA<2jc6DSMp8O6?=vi{uCejI_59?yYT=}J94%HZ^9gEOO1&&>q&8hnd0G*8KW*dnkR=y3Ov{^O zpE=IDV*cQ3dlx<^I?!|^q2+R3(;Y$mouWr~3LoAofOrIPv*5{%d_b88*K_NCtdKrC zA+9?uZ~6*Qrd@ecD!qmel?0TLeS|U{of`O1Ngz0OU|@k#LfQbKA&E~d5L;+-46JdX zrPo$-3|t&aJ$j-HG#>lELYdx{n*S=4QH=#qYbuzep`w$&Q#iVlO`6%mqo>qcMrRd;rgW(G%@SwyK z9IT=lggD3?qY`ZJtdsl>5KO!B9t1)eJmhx~%3y)XGasRhT9^?_@3cv7gY#EZcSZQ( zlJwzMlJ8D7U8`wCLECD-eQfDa^B}pA6$?X`* zK*ppK#$s1x|520o_F%#L!@Lhi_#bNd?@#hSoZ^2tUG(9!;5~>jFe(z}D}7b`_UqDj z7t7v!UHZqxGStTRGMITQK3u8#^J>*!SF8VZt>&+5H6N~5zlD;eD^(w^!pp;dT|4sU z<<1+VgXU3mpv z1%Gvm2 z{C?EvJHv)w8|r>(klWG0E*0*5%G?~wogIrEZOhE;O1U=qY^xZKO*q|r4aam2*JuJu z-8PH=On3`asHH`s<*#;~$Y?5ujU|Z7}_DrS= zli|*y4`DM#)5()KOiyEdFH@s=CWf;(tZ6jL6tdnFGG!WtI*UeH$RVsXCi|Lm{HzT8 zjrD!mjLkIiYO?N1UD9+CVKRw0jY9O)*I8sq+hWJr+sEjDqfxXKC&HYWXrh;-Pm1U0 zrW#ZDeV8@w`UeMdOI_$$mV`tDVwxE#&yG~&tXDCBQ#pVm=*!Nvp=F?MF)W^=aizOi z&2ZClcl{z)M(IHI!I35>CR(4GYpersv!(GI8AVPkfiq3uOf7e%9d>6PAFh9TEcfgr3sgt#$o&`|w}FXV+!=2zlEY^0wX!oqu-I zn3|;nO6NHi&#)|-Zc)3y`TF|NKZY!LDA?Un8!kK;R?qi)l(yy9s5M7dj7k}8mNe3| z%**}!-UYv2XElR~?dT?TQ;R=`{&VWs={LDekELeZY5UfL-+w2D*EqKW$@>8H_&uvg*0-@=hyR1CDgZXwf5Tmlf;J)2%4F(#d%f%sf$)3JiK>KsXVHqZ=I)_^s& zH_8+O$^ge`P$sR5pNa*BGW;YAWq@W7$7rJr01co_dr>q56b2)dDNg8s@rT8UsL?*G z5!OKa+Vn2OFVI9W`Eaco8sfdXT=n5{&0kl**n8;xh3a?b ztKOfhet*8^&GG6twSXy=uMSmo)|7QsmUWhwwwIMCOG*?a#gejOQK>*wQY0xA$ScY^ zsw+Edsyb`XwyUNJs70g1-~@x{r?R5Gyi8eE`bSa8+d{$XJbq_(zA__6k&&&;%IV0< zd&SEKnt5Bwe_O_X2MSFka18H#H4l8j7|KA;Wl&|n6N7{q&|st$X^3OWQvhgWRq2YF zOnFtNyfRac(o7l9Jr4#?Dq;Mj0J4E;5bX$Mk~K5~D1(bMV3$$mMJfPgvH@ivFqBEh zP$qS+G_@OLqzSvlv4ApL+ak8$stllvFlbBbe$?$3#da86;8Ta8%#-DdA1zt%VA1@a zz2@ATJ@byowC^WO_zpvv>qFcx4|1z@cd2rBssNO6axAvDEj6_*=2+)4Eu+}hAvDuf zY-3Nh!B{#6IL3^|HKDKpWgy37LgPY$$%LVA#NZmxVd#=7!KBJ70m=Zx;K5+i83uHQ zAqyG<1Io}jRy4XTgXzp<3}n)PW``9i8XQC>g*NxU%{EnEZaQ<{TVhbbNwU?KrFQA!w=i#u*dhjY(-%WQY`Vy)+9ljGs)m&`USh%`n%=w$dwffHr-!QWt8OvtE@O_3#jC z?Qq($5!7R7T(<79;kw61=$#m;dv+}Oh9~#xT$4+4OuqKA_%>L7g}fb4lYMUQ^Qc`hNHE^L(2G{tX3to3efH z>|a>q>5??UBy*BovG<580p5=U2U^c%NUjt-xs>(G+2kKCr2Kp%`{AAZpUx-WI}v;L zRNRkWr$4(ZXnJ%+-f+HMd_^GxyUY~{Ow5+ulEI`&)O+HtR1PSE(oB$J(qxD+U@gOxV59r8FD^ z>;F1cMwK*yXE}P(|6|Db{}5&V`G@R%Bn~LO2}a|dQK1YnB=tZU#4$h~pOs_)aWIqt zM)`DLDD!>$D?ECk47xIoGQC>PXrl}cDBz*N2nO}C1E#?fNjSKm1JwAUS;L|S%Am8b zP?uig5)SOd%CND-6JB?XZPCmoO-+*qWiSs7SZ5%?^l7gQ*kzy!K&tY`Xz)dQA(nsB zCcD!jydiA3(pG<2{_Jx5!>^_HPf0ITHJvVMIfQad;)-lJRM`}RFayqCq{@K#7ezs` znqyKsd7#SlMj3T&HlmrXB8YBbrV|kicz%)X7or0N&949XU)N;6 zIhgau;rw?;3f|Z9fMebt=b=`35bCbJFl7m*6QHq5FqZ(6Wd8WN3=1enD*y0x<)2?y z{dKYGUl*(Yb*To{AHJ&ia1O6@d)Z;q5ebd(phm+?DF`5h(v_F{fV z5x zmM($e2G9{$kRmOD0&f%wL27$(YP%psS(K~*ZH5mDO=3GQK><^;^CIOr;V@BBkrk@Q z3X*38%F_enY5Qg1|Ak2LlclI!z>>I~qL^)>sBI$5D}yJPTJ~*F&tO{D6J@*}ESmR| z*X(a*&$#6=_1g*Kzr|4I=3w`$1KdsybU8GjPfb6^3P(p6i!Cs*E#z3GF)e~P*86Ct zOISuzSo*_hY*XMED#sX5hRi}+cuD6PV<=;Y$t~KdOb?)8KnofJ1|3iaIs$X_>0EO< z(~8M*U@`l#=>6G@K~&vg49a*8V}>Ccw3&H^+&LW9EC$_^O7%d(3~@S*FrP_W#UXDr zVfmRE1ehE8n;PsfWbfqAH*m-+8Kebd!ZcmNG(Ca`gWzSTyTXdLp$}(kKci@S{VWHg zyuKzmj@)DmMv9qkjvcwgm3?TK{-I$80v7-ma+(D((S(p0bbw}3tw@Px1fUtL zc$*Y!0F8!qQ_S>IOm&isiAly7HdzvL?DX;-ba{?ML0_HH{-lZly48d94h?}IA0DcA zco-~n4i6#0B&PGzxMv|ejLt8#zOcyV{EEIew+?$4>e-sHMqaQ*lDp+)!m9iGJumnS zE1zjyFxH4S*0^N4O~n$|+O;FT5BGkVy}c>lw<&MWgZQ<_ea7ZYwoMshmOa(6cGdX1 zQETeU!)0eOUO>mZ<1u$nMtyT3;m51#zg$TD{#5)o$78-Z75~$v%x6DTh@PF4H(!v8 zF3CifCE{yR=?$42#+VITYM~+Kn-|CTT-u6P8`VO~J?xjDrp|V8Eya2Nz`T)eg1Q z7bh5vJcBPp@^4z@-!y~yx9M7I;}zMLpyc{=yi*?fqu zGx?oo3%bq~!Yl&JB?CDoAegdu7s}sVsCfTX%!bWit^u;6uv7hd|O%wWCMW;yeo6MDxoJ{ zHnjQ$0Y+8^7l*&u;BBePIitGqQR=6T7M3xZ*^OzK=f%239sLe)0C6oQ2jtSK? zCG3{O?GSg{em6AkTidv2ZMQ0e5=_YUi>WdQWq$OUeS7wd8y-`j68rAx(YJ>WzwPdR z-OcTstMhRe$0JS-Rd$YLmNtdPHd!3YIF{LNuGLn$$!wP4Xcl)MjR`(qV=CK-f(0yS z95Bil(Ye4ehKz1i26z5y+kTl04wGicq#CiP25fA;fiZ(+%3@owSq^N5BZuM2pbTJA zhA}DQSd>Znj5+$O`TA@x4%3THpG%=krIRMn3Dc;AxisPuE@hi3+t11{(8?&-loMdY z@He9Qa&*^GiSu;{9z?rQEc4=BT9x9E6awR z3Arb0y>x5c90whq3$1dfA!svarrI8#U{*SameU6^O@vH4LaG&NLKDU$gfa->EJ76U z5R^C>5@3D;08_j%ALHYhLAn(KNXJJr zj*q1uA4fkqi48P!dWJ#mbndA+Cf8Q>{cZ1r7a<;vF^hyrD}~8EFCvy+@)=$_**bru zF>j1%`9zD7ai$m7kNquj*^AVT4^r0smb~_guSc1eYwBo|%;CnR)B0T4F!gcVCV5p< z^H-_A*GAnr8gltW$enXB&#vb^x|I3-nZ(=2qVJrD{pot%iytdnpB|Tj|5tcfD!M8Y zUz6eHU&U>);tqra^l7|juJSufo5%f0GpzIPpY!VwMi85BO2ibvD#n{Leg9S=CVK!m4DHs(l;n^ir z(1ePWy4^6S+!`xWQmHRuRlO2eePIt!4t_Ac6@erpztbYQEo!*|G^41$*7@RU$CHa) z-=36Qs}Y_m5+2MG*5t}7pgn(nll^D~>1CGH_1~>+GLTV|glb_Tj zzys=)5g|90MURC6GmF6kLqXP39BId4<4-y~%L@xUo?q%1O78lEJLNR&om z5uGH9Ns+~+NE4Ig$tlw0WO-_eG9$e`H=`>*yQ?t!6+h>VAn#2{!P~MzXjB8jOjjk8 zGC^d)1Ot>&>WMNyGdR$Q%F@K8X&}!?N>U+Yh-09@J5|Pq2~bIL9^x2jL7X%{N}L0e zn8M}R5%MfFB3q3z2eeTJug#Vv?7~q-6uz}37?m&8?eVGG?W3N-glxYr)-8XwYU$%; ziymU-OFzt?1t@dVbL!oR6ErAu&DHg6|GvkZ9S=L&S6JH@n_J}>TBftiqUk0(Smqlk zh8}e82pZFsOh*s{1fvNW2WSS2GLSG*C79IZOF%Q-D1%Hh941wbGE@*|z+S^NVX`b) zOgk3ckc z90)0vgeZMN2%Qk1O9&#P(-Vw|Ddwa^Q>59%8xhhhP-H<5y*?yB8Q_@O(cIe6>?0$Y z2ZvIs+=+*V!A{+S!*vgjrW~EfI5du0I!dQ_6sde1<*290t#t!`^qu%H(DQlNg8G;h zKl{!4YT2;Evs|jCI{?b$4PhPf>UVwD^zVZgUJICWJ7nQCzuAYE4@)0smNbx^HrSwe zrt_t3o=-D(*Plszej@gpqao)G`CmF3)O4@7`CiH6t2uX1#$7oWdi`YF{VUl|?w7T` zIN2$=DivMb+5N1%C2~-mtHM$iJTe6xCL(!Du8Im2%UKI|yYka6$Q_o`Da?#^z(IUBIfgF-TBV z1&%UktMLVEr=LEf%Jf1RsJ@m$n;GaaqoEnu9U-6$g!Hyhh)S|0jn|a**OV`=bo_cw ze6P0ULTOWNLG#gkX-%%UGFuL#n2Xce1!-XKg}Q6VD0T4DAv%jPuz&^Z!JHXjlz}M1 zBcY=x9*vVk{+QTyehdWEU}KU@Tt_i<&x7u5>VS1gtgBO7- z!VD(VA1|}xbY|z7tXF42n91!r0|7u&_!@>4oQK)hCGXCbzCTy?=h=$CPFMbQs^VYA zEB~r3|Lbtsp9f3-tSEElpP_> zj)ah9g-J6)W$D3+)F65C0cBDkgaZ2iChviIY$(PSMsEYJ3{+w_2XAcjUsu0(P5o{k zycoNF%j&v~D_^YbMj1?%nR9!N$92!?cP7Ksg0Z(ojJ)kW_-cQ*3w@o>I6Bta+E-ZG z6`NS58d*hg&HY&>EA=fFGYrQuxNbD2BbjDMVHr_5h8VuU77CXjkl`0xGHQrnV-SNo zfAJg>Y}pJBhhoGb8?(uVESPiv!Q^n+Ttg1ql*=?XVA->24s0r#G)W^3W$I03kUd#6 zFE+!Q$ymZ<%waKRGUzj?w$hp>G~x zE}bx)PME+X3^qXF!6YuE5tp-dcUp472iPYLu#0sv4Yy>(nCqrFuzCITD+Ze!9%)%S z&f@TB)9R51<-^z|Lm2!)l)V0=R2yBGT99l(O@SFq#>5B?F_=yaWs*{?2!a9ZGIuVo zAIxAPrQ7HhLf2q-X2lRrQGZ&t9WmV!a#iGXJ35STisTYOp#ga&TAz?$LP)Y8BwG+* ziUO?BOT9Bdka1|F(TNF`XQu*MnU=cg@m+|5e#BBYVx>Fj@Gza@W2mPm(oRmG z92={5VgmiQ4FjL-9Q)(O;otZS{%+%hZ=vn)q9KQ8x*VElcY2gr?GS^b(`?TzbHB1_ z-0>}=Pi!6g)wW3|d`6UbIPwM==DBisgH4XjaJ{!}&f}te!lSW|PRCq3cHm;ozTYor zwtZXNbXV};V#ck*5kNCHYNPI7%B=gPrmO9;qV)>2nNf&u$Rsx*#IjrPcOCZk8~VFW z%`rVt24fC1CJEyYJmb>?Wq@PAZKLKGoP@U>cfQPny@ z+f}@eJYM?Lv)KE;OO?Sn1}P|**HzP31{N@t`pe47zk?K?7kmDmesI0y3x1a`T>Q%@ zgI8Q@T^UCoZ2Jyx*7sSI`2yv@TfjHH%CJ?{-D*h;@=7R|gdj$100O+kvQF5bN@U~3 zv>BD37oSMb1tuQ#eoTqMWE-tK6!P0i3Hj z1ziVc8g#s>QmMOM2~RdjkxK>wfCeB&6Ca_>?Pl5SR@ohq=oacO(|AqMa9vq!v;w0UMQJ>SGKtEH#P-VM&gyQO={l0GJel5p zDx>psR_E#Lj#ChMou?tw1S2Gi-kcS@K2h`rDzs0OemGwC{#fashf5)g^scf9e6@cF z3f|;ocBQ8%lM`f#vC{Y$No=$zDpC{`C5efZ$0f+3;^fisis(cj3g5%ml;uJwKlKl~qpeT7*oH8Oo9uY4NiIGPnC?XSN;qlV2SaC?SI4BB2av(|y z5fm*AjFtvKMBxEUqX@xhCOWAzHbohmq=-#a#3jlS5~cC+Vl1SIiHfx3j;!?dJn&X0 zBTN*eK_Ha{=%hGRQkEtyPZyRZw-zU~mL#^6qG&5k5<(!jNfwo*NJ~>el93j{@a;q~ zFHyovkQBy?^JCj`BU`e=h1n6392{lBF_Z~Wqs#$iq6%f8f=L*&ttDb}bJ!*%$pmd^ z+P}VW-?|20)KsQ!+v>W_t6pwc@qF#Frz^d2RYr|6o;N&aAe0$5_U1@HnIQ;eoSe_t zIn-L)mRr~gj4hK4EyFlwdsrsk`et4XgHd#j3zcD~M>WKfN+84FN(?{@R=C819(geQ zx>sIF!!ZbDz!Xe2hTs6oK!;!|lrnMHY_2|sZKTgMF<@G=skUsYGmGrb&>h0mn?%)} zK_|~;P?s?1OIgghEcPrW3tG<1r0dO~>CB-M7jj5zjC6g?$N{#@NGoQPIX&2zvd2Jg z2aB{+Uw6K~&UAg!FeB0seZn**aUO%Th@}g|DL0w3{VX{LtT-W7tXNB0f(o{{ay%5h|+ThkIubfe&0NH!TE zngPuQXa*FTcvBdsKuCe&a7Vo|clL=1Ru^ZvT=eVXC+p9*Nob6gQ+40~w>(fJx&W|)ZG{O9^ zr~S#L18UX`u2?njo8zaj#W9JLI-GW zuJ{K20R$Yu%qTd8;3|kJp#xHl22B8KF!wGRfdoPh-kj#kD5IsI;Fy9)MRUPV(hRie z!wE($z@W}FSRjIdc=PsG2#jWW6msJj1geZG^MZ50KivM!^Hob4`S^kwvE&mAEC-}I zMWZOFul9wTVsELH6-_M?Obk#5LK#(#NqtyP0S4VvbH|StUsOl_?t^s$P46G=;~Vwb zqyE`H{uQ^QMIO>-#OlBjOxjKwT$KTo5dz9U z9aHmlY2$TS{k4wYFUlUA6W%)1bgsDmL_zDpoYv|rX$2JeX0(^2qoV6Vlwi`J47NyX z=clyuQrh`YFM|irOadCigtwZ-PzDDYK$&(yw6Z8l4#AH^fv@o`z)dmIX4=c*+shLm zIv^?%J1di3RV8;FOi|XRD2}Gck3ggHHTs9N90+d>iE0Ur zYzzv=qbWF|IV7SvIHD;qtlmGkejgkb+!7cj@(Yvrg-iEE$o56RR_Y%i3y1_HQiR2| zN5m^4;^YyrvWQqoWVARUN)!nZEsly7$HqwG;$$hY@{BlTc0zl8atBzHc;Hw9<4cMJ z?7hXQ!lJ}heq3u&e5(M3usA_nk|-%nf~`=HASp@&e~b(u2E>@c1Sw>fFq9D@RVG51 z11J+E0aYdwP$o>C9;!?WQKSU7Cj}`J56Bb!L6Q;0?SS&7mWWL)VVhb*5Y03PY(OpY zeAfWSyx6kx#l{uS*DZUt23q|hlzD(PmAOCH^QPyF>ocd_nmqC5xG~p9jJPq-{c=Co zuN z)AT0O$sTm77oED0L7&fH&tq`rFqj?;%5<9UOgeEEi?E1GTx&?$WJWn)Ne{K42b<9Y zjp_RhsauU1>x}42^(h`)J>ZyWbmB}VX%1UwA)B;_qqByqyVZ!g$BYqTK?}8{ha2g_ zsK|ITBBYA)oG2v&nFmK0)Q&SfHs0ju7{i)T=4Hbycy0#SjNXqe^UVV32COnLncAc|ZK`2F?soY-mBv^Znk zSR*3f3%G-UV-f&m%n;4MHrbMx?VwjN)acX{#|tx^PfxZ56Hmn;Dx#VGFl3uh=0Z3G zeSwEU5Ne0(T%K-l(Zl>}Pm9ZQ9d0fgdTq(z<1?Kr$J#-@;Bc&GfeY;#bgY0ZMR9MPp~tPB3BS8@OrreQ}6^ zWAGC-5Q9%9#!~5^9^QCj)vZ}|estF3n z2Iw(~-TiM)#Kjox3hJI~wN&$QM_o+9`Lbs7g`f8yywwd)I4!9l18ec}H(w?qn}7IA z>3tY>7cJcd4Tn;HhZxo29|pFX&!h3X^j?6VqG2rTck~6>2F}Gh{HnLm=U46I#bHJ5 z;q8%N>bVnnXf$FBo=(E}1JhTqbdm~RKqgfujPNFS>gIUhg8{4oVFpe?D1#-cw45}k zV;*h_#+@|CEA#nKp$ulA!HqJwRD_f2FtEM7LUnH-&9Cz%(Ojx+Z&ZN%HK1 z)>mhUpn|466Fj6Hpb+FIA=|Gy#{>&yVTz(K2?8XUPC-gnaZ0Bk z8Bj*SgKl^+3SJDF#td^Mv1k{>f(#?$MMxnE!(o8~jf@|O_V6NL0cuT0NlZs+OnXVR zQV^vSM79@4cb3L>R>Ui6l4Mo!;_^6gdAz(bsqm%834(Gl(l=r$O7e*buF3b6& zIOi=t`)y&?`<(38>1iE_N%H7eNmztDAV{|VfOKD=cyEAckH2X5K6Sv_ziqppWLJP} z&jIa1U}jy z@SESh2mAbC{X96NE-d`{f#64e`+nQK=aH}9^ZkL%I|IZ!gJiy;ioIbn-w^Tc0}|gL zsb7dJAY2|8Aq@zZpa>HMgopzXR7pc4A;cjOqTq00M3^`xT$T`}NQ>>vOzg-(oe7nB zNwR`Od0~>cAYNDyE8@k8d9k9x7%@LiCPi?C=)5kjTVD2lNlk)h)`sNx2K0G(?UCvg4+{-Gz( z3?!IvlzF~>+0!-NPgi>*lv%nE>+|b*&vW|qX;ZFEn|x#9_^V?_UmiB>s_Ve7`}X_F z-uax3Q>~R_fvHW7p+%sniU|}0*rKn42Z${ z$k!5YLddWt6gujZ^rJwTbj<+zp;1OhCRrVsXjwhlxM(0F$5}VSk(6pjOtONxO9*I^ z&2%=YkT+cI~PLKjG5aRqLM5CzVxbQ^M# zxlWuh2{DZcArX>IR>TAgVvGqP+L(}TM-dD(sv2QYJOl`UR8CDree%J-vU;P_v@G%zQg)zB4Otn*Gha^B$M@zdWD#|W__XOe$79(%7g`re7S2bZ!%kB=)}oKrSl#N`>8=z6>CPNx!j zXx)`bZz-^!LZ{=X z1Y0-@`pw|fq7h)Q4m7w|rpH#}`GvFo|AI0qNk%Q$fJg&@vyPTpqkhtB9{K+(3-wLa zH^OmEO&(vo1qKl6BmXa%=5J62(TwWn#qXj98ZG+Km}x%3p#L$-fb@b<1=bq|n`xjX zp3m+<{L!Q6TJ4O{&Z!5-${-O{jWT$;>XRq~aw~)sO(Z~8-%o~0lKC9U0K~}d z0LnnmU!WPW=(Y@^?N)okHD%ou#c$^%caAiEUD|XcxA9=MxH=0^MqZNES(w~e08Q{z zstian8kAA;kRJ0-P(}%cZr=Xm=50T0*>->H_HVatySsVI z{hd31+_n2>U*F&M`aSaB|6tGFAGh!Le)HD*o45YFeP_eAeWD$Kl3l?7G_70rH*fW8 z-R>{k9Vqb+mF^E~+Z)upJD_owfBi1MMqmHteSvL(A>!b0acG1jG_oZms5vySEizab zA0|nPl%z&W(qkoAapK%KNj}nABz%Z?5ihniFS0d1N(ey1i-m1dPIy~Rlr%3EMSdJk zGXOM_{5TwCM7i*8j3hTomI=a4q#`4tJuOU`8lp@LQp5#HV)r19iP?suOl$aNG_@cE zsWN~vP{9PeA4mSNae5 z%E{%Nt847tGnKfUJ zJ)6RStdj<1rn3p4&CF&IR!|9B*rWqcXzgH;(bp#4-a6FG#FxWbPo??j>P@F1l$ppR zOlJ^gFbVS*ghdSEau#tDo3K@1$B#=4=oI@hQFb z;KB@gvZ@2WV6VeIdf6?0sIz80_MitgJiIZm(4Y*47g%aZ{apX(vi~mMAYj7tT-bbU z9B8z^qA%R>e+^}@->KG(ux~~!M`=Ec<_qt&fRCX%SAELgp^U0IFVbB!#nnigL0KmZ zP1N%TG}4QDfmLN|utw`TDp>^^$)stHr{#SC^+n~CQJZ;HMj1T8g!dH2iko1+N|M1! zwQ*Gjq0Hyw%c=|vE|5s>h{d->;#*?L9jO%Rq3+71ciTm`6m2)<&o7F8KG|@)y6FtR z{#ah?p=?QIhPX_VNJ?!lO7DPvvVsg)D6z2yP~QYCOt5i=Fnk~hW*NdDLpcvDGH5Jw zyC4n%&1Wu-Rg^}{OQPh0NIaCqQOaUSIYlV=VY0#yY3>1eUa$fSdF}yOc7Qa?UzWKa zMb-f+GOI?&aw6rq(e3%MuL=|2@RQ#arN0+szT;=13(E?mE@b?w%cHJh7#HZ`q=*od~PHr6d$+v2lDvT>(u^KS8m z9j$A&!b{k;t=-nPW~*fBR{8QBidDO$t9OZ4?r2@Ly=B$*##P&1tlaW+*@hRZx4!h* zR<~w*)4E-)8}|q|?rB@MyLHV@q0cVyTHlrpyIMEzZrie_ZL@FV`t1$twl#0uDcZhQ zwkJ^O7YtkRE`Q$2ad-eF zK-#~MI4VRM8zxB%lO=&zSxGWPAOks-D5P5R2B0f+SvtJbL+Zw$U z0uoH1%0PmtIcP&e;5xAV0?IV`t%trc4LjDp+_(}@=Eu0aoKg^kVZ|1Z+ zQ>WgVJo(y$@fXL8{%Y9J^KNb@`}RFy+vk|2Lxs6*lBs2!q3H&5v$>{56S(ZY9JU>u zW<#c1>oP3#nEFhvDxixDRA1wvHvDSzm`^P@9GU@_ZpeWyc??4)!+?sZGBg;^#A35J z978tCh|M%-((UL}2PS`%u6joCTQT47E;-EPG0twN4VE8B&V1UWyet-i(A&R|dowV>!&!%ivucJiE8JP-5JS0uTs1=tPPnnF>~*qj zi69`QIFVx9bRzo^Bl{Ag`;y|EbW*Hz3tU*GgG@>WndG>zLml-J25>5t4gWrEv*K*p zixctR3ijR1+jYMru>MSH>y`W$XVSi_3O|#%tt@=$IsU$9*ZJ+w&c1HB($R3SqwQLU z@VWv*eDf7_mqDF>QM)`$Wx+E(sx8hL+8hIG4a#WiDB2*RS@$~e|MI1(b_vf(VK-Hm zWFxT$(F`8g0V)elw^s&#R%xDUT8};TW9&cnu-Cd5mIlI{9O|dI3XJgl(HGJ{=#y)b zAfH;m;~9?m7-e9m>aG9K4~RehkqV+6|L9v)e+mB+VFuv{mY&181YHXMim)FOtu@i( z>q7U!PeEUcDzttJ*l(wI21=_K8~X35GDm6yuXch-jWX))cA7SKss%zEHO;6hw2|`$ zbJD;Ty@eZS0DaUzqgfz!(F!aZh0q7TAo9v!LJkm*8fB0kgGUdqjJ9tETZ7LR2{WHj zWu#(w_l`t-8)ycYMhYAwzo(GjYnR+nif=0$uF4*rZ~eYjc(JVUbYaWkY*g`EhU&4A zEv5*nnZN~{i2~6~8YVPn5c+HECB%!j6{s?Je=U+Y%4pAxaLGrGpQ)fLPzSe4Q$mt$Vg$Mg7t>@NV1c&2Rv|ziIh;IIL;eI^pa!(z)wp3pPm? zZI&$DEL^-u-y+ybL#mnUzUH~fjY=(Hg za{aRv>s|sp0aR_&YXUC>eM@v zCtsZ~{=%41=Y|eB>*jX6uhTIbB*~PRTE`fhMd%x?GBufItUrRyuwgOGsbouCnzato zg3Rhh8D=-id=njM4g%AmP3 z>BCu!u}u0nCVd8(I!lk{NujDxhNUx=MVbm}CN^OTi!hH(@M00X8N|(WJwIbss*PoV zqXW;*KHtb9g~8ciKv`g@GmlH0!z4h=XOq0xIt!Sjg;WCcq4Cxu`p`(5**bpur2R%Z zp$5co4pwc%B*d_gSd!#G%y1^a+!;VKVEEkBaLc?a1OfD4-KXr8Oo>~#ysRs ztr|qFa)&-N%&H-rvVrs>S88E@il85*#)(pFMTAOkXp@s*ONeqIMmiIsortl0N%2kq zPo!LDCK!Ntt_Io8?1(;;P&?g}@m42y&V0)Ae_k8=bJ>9#**k7#?|fJj*?2zd#i`Wa zj>KK(@2`nkRTjPK?%|l0A8I=5FF+_7FLes9cS&z|$nGfNUo$z>Np#bU21K+LJrYAI zlu>7(@H~_z8-<euSg8F5S8X z{)k17UX|13AE1op>Dyz0KiA=Lj$cYGlOVQ$o$$zq=eibA{co;S0MP>%w5aQg_x*QK zrkh3J+vr9a{39XI`EuY)gCC;}Mt}UI9#f#1SI~2z1s@oNbbDn`f=P`dpIr1n8P#?0 z`Ax_a+?|}#WSulHq^eO;O)9|r`8Y7C=tot=1bHaT9gK`J*i3AE3!Y!q=q1ezCanc> z#(W-SWa2w=@g126(F~3<&>dU`Gy_w$CAXE$*A*bl{CZk)qo(OAL33?xTUB~%Icl~B z!?BfWl<6$agy;~YLyvqEILZ{KCO^>wS)H>_OOuzX#^vbBxgYZ|?M z8kYDpEM8r|XjR>!l`j`8f3aZM3$JC*=P!Nex!}p%#m~H!K3}lxxz|$IU$+pqTrHfn2BLM|+Lrn28s_=@K5NBq(-%LQwd|qivIidC4`+Hm_FVR2 z&Z@e(KJ{~b8fLAk^IZ90uJ?n5%N~2L`hDr@M~hcJTD;Wy`)HoRQ99-@Brrp7g!8`o}WShE@4da-81^R*jZtlRiv!zPGln>Rh%w)y4GtuOa( zYw+LI7`VGBcuz~{-j-0`#-N>zLED>xceIA?Y75=f611Zwbf++Kk0f@V6pE`;gB6*f za_A)k9cA((Wd)$hM2ND(L|LKY^k8vXurxIoK@W~HvHJmKn!xRgP-Y9*ej9_=*X>{P z!f#dGUY`cPwV=vCi##Y|dcJ=7lhunKEnldGG9KT1%=m7~w7U~0Ul~8{{OFOVhYmh9 z!0l+?zK3lcYs_tVCYGVbCV^aog{FpMjM;8%swp(Kqw1OK(rt9umShf>#YF)e!{lRLW$?;utYGW(*e0X0l;0oawaw zpv|xtKrda*6%wUpcvxu{q#QAjMGAeNmTPM(n z6=!LZX=^30u`RN;39w*qG|}_n5~1tN5;|cCi?oET1F?vu<3-n*r%UwGAuOd5HZTd> z3}EuMPN0F#0e#&NHYtcngv3**5g{51j_e7!u9V^-?1~Zk6(bDFhOh+#=p_R|3(>D| zHz;-0&$p+fn~_qDi0LMJxt6R#Tm91h+;VqDL0_FrTSBgbZc#sa`5;b(J5*~k^7??H zqnl}~n{KU>YOR}LN6G2KEO6G(@5{|}V5V485Z_o6(rt+_C*jaY^HY=TPffHtIKrfA zFsEiH_vk3&6JyPQY{~~Qs)n$Rj5Itp#-w^EyV#Xd=u9efA{IO9=3A3eVaODil&uL- z4unX1LbL-h){&IZM>pACFQYF#-3fw`?!r!V<%HSkMY^&IJzTE%E%>$Mz{ASWZ}a!u z%-HsQ;l2k|k&g~WKRcfEs5aqxfnRCZvNKsbe?FTo`nC3T{Y6Fn*IljG{*Zn18hZY= zUX{vVnt^I6)5pS$8X&sqL<1HWzTg%ajj={$99AnODzW5aI)Odl2*!=QxCsW6SbEWn z23ET7{>e*eb`tPE%`rsK)(rl3{e_49zjdz4zk-!Ab+ZMQ6~YmxduLAw_#0x-kVH=~ z>OQOI)joHZ|G|F1gg)_635>2j`(^$+D1)7=#Y}3f!4(%xLA6$U7!8hK{q8h1 zO)!s1Jp@~`_%g~sO|>epjFOfrqp87$#M7q&O9SB|3Q!BEI~qv_I0j)5W(UR@2pMR4 z3Nu(`6G9ohY2GK^#r!mYGQBtkXhx3BTEgdGf4u#&Dx(nJX%~H?6yA}DZljQXBbMJ4 z$-aSx!b0&4Y3p@a!xho*=cV_KHeM-fJel8eFtZ8985TqBOtK7t3ra9`mSiE6Db9eF zGdRk?T-MjF=Ii}<$HK>37eC*)4x(=B#+KdNrThIlLxPn- zVB_^|f(QJDb@gl4z4Tf0a>c3_-YcFjURJjdMg9C`4Re>)&-HHbS`JY^Z|Tc9OPhomzs>dr{?&HV=c6M0T)Ztjy3gLSJm%Y)8xNF7_?OsxmyMWb4V0#WeuMhT$P)r&@%x3*y8&fDm}!mN z(j30AA!uElzt3|u%79k}ZuERJ7-hU4tz7tE*@B1O3n0Pti`SeV=X(C=0pH}b@5fEL zGH&eIQ6o+c9eixyfP*g1Rdx>L7B<$6#02o4@h4hIX|-V0kbvam6qZx6VEx0p;ii^X8Ue@qTcmt>%T1&0l}DyD%E1BEGr zYe8pO(%E(lh69u7%x1Z9*#iwYqd2-_IiyK!T~8+2lSx@Xr!JyVy=atqbjn;n96D(_ zi!_U?Ghd$o;R8^@(FryMTdP@xt7C?PQIr`qP+w;ogS0`9u#!qxMkg+1=`1v$EHb3d zqU+8elRPOzFDk*Ctpi!AohH;h=ClA)J%3}Jy-eaB3SmDq?S+(+BaJ`EpkkzH`JMu*ij$??^6iqUZOaW!pnFI62*#0z)V>?HCz$3}{B2hV~HBt%-R~w6eiQ zhsW4J1$EU(tKz{X{DFogLrf2ju`L^FRzBG9;7HRG-&o+K!aqM2&SMN7(8_+LIIeu`}FFVjO9aw&c|Q`c<9- zug0!@AP9u`A#cyOSv$YY@%@<}PCFjzM@elh#(1PQtH@NjPw24eO{D1pJS6Eba2?MzQNztYJn?^g802E`uDGhCjK)igWq;uFeBsLfCdz28 ztbH9^i2*24jf7M;?d_%$9AeZtBZM#N3D}xN_rcwRBsCk*tylflDriaf4uWahx;w@*oQ3eAVRZ2BAz5piI05W#s%AX%XTWQBj1D7ur@B zA}S1#6oyI)LZ!Ju(wqQs#y(--%gb4d zA(|Gf0FJ(xQC=ZQ1!kDc<}=t=iRPPj8-{H@_*ZwwuEeaMI#Lq^;k zJ^qIYQ{a(&f5Mb+M@^_3F{gRN{Kk>ft z4w-y&@T6PrlWq;3^!>2uzmA#xc>H|en8#!0-Wfmj_LOPgd(Qr8?t&lZc>U-(?+1^$ z_h-)ee#Y#3Q$4<$;(33{>>sDi`FZBt2eTJEndkj<{xXOsbG#qTUi@(Gk_Yp>A9yYO z&1>ne^OyWMf6;xfh4&XMyuaA%2k(VHuUP!snq`kStbDR@`NMVIzxgcub(PnzE9d{R zeBO`Vvw!jNdc0-n^Ifa!12(pVZflL&)f&H7lt6=wyvqy@I52DB#cZ%Ymk zr@+*L131darr3}*w1HA@#z2Eu~E zw$uHOqKv+w24!e0a~jizMzf>Somh`SuSSrcKZ8GY1f+( zUMwh*A}pX0Rxt^i^>ucckO5@^&B#F@(y$5s3>0BTghU&iY-ehr8>@H_yVRXi;7ozG zzj=K~JSQ@*j~>4drPzsH=E5rP$1Qb+3EMD5k^nvK4h>@;9L6ehqw@ObKvhwmgHE9n zx!9FeIoPCpkP**?3pGt(9|qqsj5~-kAtjjWCRymDp-wa80%v-G3xn66T|CIBa=1nD zVB>6OM!G#Y$BCZPmjR{V6+;YQw&lU0?D7HBayPwdcS_Y@dZ8=5pg%3og_6}rC&d;+ z88bozgaskeiV$H<2(u!DSQ5f*b>sUoQU@5u^r44a>qgmP2!Gnw}*Bg=!93WB|_l!taaKK;7sit^7tp$s-- z5;^hobR5eY2GPp1R{DBw(1$b07>rXBIA&z|VB7c7_c6aPBP;4jgJ1{XfJ(C8od;~$ZP+Khs@s>hGe`$pOb zqPDH{NSu9fXZO|c>)=^73}uk+f~G=ZfyPDxk*H-DoOLuW5sKle3<4T_z~m?3MngGp zFg|MuZ-|Fl%V=ves*#Z0BMUHg>GiVP_KV9f8iK*Q%V@Tk4Ab2-4}%qTTReQ40hnXd zl}!LKh-1_!gSuX##+Ry48G9j%^o970S4IKFN-eh)Ew{vNHzjSL#N0w0Be~TizTP0b z+R}Vk)Nol+f4TGFdC_-AMVHIOCkon*WXmct#LyHU(o8%s$EcmZ0@YXpWf4G3GHfx9 z`5ekbiHalJ1mQT!2n#}hW5oF(;Ew@&uOw}+D1N6fZo3c)fWtPl2Cr=ifTYIKXWJJ% z+Bo~?eX=*FO41tac#onyVE^>o;&~XV(+I*mOY-k@ZoH)M;>z@&z$qS z$K015^Xojl8a%ujXL{AonE%pa!SfmOpH7?mc=D{@#?SZx2xi#W+wLQ841j9k!58}W zKi|jYjDyoj8;9dowx?_z&-HPJx|{QToKHJARXY!?a2{0B*R9a8U#^`~x}#HCAE!h| z#|S%{1Lmdy=B5WM&4aBiLai+!;_U6yUHat>9K>@U%o{Yg%EkGZTmN%Ihh7>r`tq1D zS4WS%hQ;+!W3P@FeQVT&Z^lgeKkS`#cob*b_Sbi3cGh>}t|Yiq+?@i&JwQm15Qw|G zyL$o@FVtvpD^7W!r4&zyyC={V_^x|qcUdUV=WE~Reg62q<2a8w?wy&HEX&Ss&&w{4 zo^*B0sZ%pb>2|8e4+TT?#0HTBaUr_Q@EW$x7}vo23TZ^EVN z(=N}Ler?XoALq}#z39_Bi|5{4F!RP-0H#UTW=*_4bHcUh)HzMjTJC_Ak3*I*0mwYvp&hICf=ha&b=nqy*AdpA=aZg))Ukc<#pE~8o(G#x@ zA9HNP@Iylf?Hkm8cR!nAYl{M7lN=rWXoZ%8OtO}b4UuqkrA(=aiA!LhHD3>tm@;Js zETt<$c{5BECb=^#*z|aNt%%)R)OslaqKYWQZ{V{4q3pA z`8uM72J(42qFGYj3^98i^qvtjSIF2K<(y4gJYRibn4ZvI%Jmk|Kz?F+u$&R0%SQ^;9+_@L zOEyHKm-21!(m~+RK*hBp(~=*j#|)P#X(m)kk5JHIkW-o&J;fYa2D9Uh*@+fJMn8FK zKSi9CINX>Qs>ck|XT=yX6HHkt<}jR+nPtu>>OzkbZAkTti{UGC<1-plvB zo9lf$$Lps;|0nySA01BkHfD2?&$7KSn|}HxrTN~Molm}RFF)R1eX0janVMik9sIPT zGG^4RVw9P`Z==k+h1n`&MtL&n#~@3Fa$JB#)Zp^Ih0;p-fDNO@6to~wM#(WM7e~Dx zo=$m)LK&1P@`gNAR3N1~69J0y5&i-=G|qhQ3xKD(c4Oe&c_(8l_1?G0l6oH{T2{K<#~zNdvJVr8m=kL(L_BUXYxIAhBK8_Cu=KCG*zDNd2qbx))!4@cQt>NSAQt8Wp^s{ znFW+-$&PEwh2&qdh>1j*)?9M@GNKs@Wg;n8ru`jPCO@RUFu1NDur4>CE{Akw0A;fL znn{#tN^pS=vkj3>jUk&GgEln;Y-|9U@mN*iyyWrb1^4Y1{JL=Iy#-6|%w2eG+U&Dq zCVn?`)R+B-d_7>uu|dO*4<2#6|IqLI4LNQz@TARvGq!^+^&fU+;K&<;Ke;t{^sOOd zZVsPtWBB;%L&seiJo;k)5oc@%pRnq8%*^I%W2>VEW_uO7d*s?>5_usZ%E9>Ad?Jq! z<_nN=2w{X=D@dm0BaylYh1&^Yvyj*+yRJU3>-nQ`OJjvs%1 z;)EZjPP#IE%9R0PHe*CEO<3?NS8_Ip{ z0A(QU7s<^IQ0B4IYOrMPtzU9?^=Ch?SOBgJiY|RN@5gyFug#izb<(68BgbDJ^2ygj zhwdLdU{8PB(!SP(*5uqUe%Z zDvp6<7YH6HX-3`Q_s=MU2{Bv*6-y}01i>aDCIE@i^aH6JP=+Vd#^gGvyNX3ovG#UNp2 z_h77K0K3o@P=*F7w5AnV)5`iYKOe#^8^A4wB%3}EZ=z?L(KAeFsm3r!l9pl4%C*Kz z2TFGh)hQmJ$hH3uCOMF_z*m z18$HmGYDoW$We!zWCI$c$dvVC>>JD~9m0(ph{yEjC0KJ3&6$ZNj8tP*su45JkP)s= z57MQ18!@~L>E32+FAI*BDceVz5o(Mjnu(GP;g4l)?Z*w6q@TNH)KRwur-D{rOLY1% zW#{EYr)%l1Pxr@E98I}V5O6SJW4{0LBPq^Luk7loIN4o&rmga1XYCm%y=-WrPzHYT z{d1I|3=+f^A4eHg&W*AzNfU#}coPC0wK4N2ltD2mq_=wklL02G)K=wTP~3n>;v;&i z80YQen2+2G4v}fL=whiVpCOHwH_rvnu6$l)y3E^$-pQeP%hGsr<_BN7D#;fv%t$J* zfb-GoQH7k|vv})?K1d$#1sV!v$ov>GIR+j|^%fz7BHt6`oA91@_01cle#btzc<1$N zyk_-ZN5Kl(zLW4vnsdrOocgChdyv#8BcM@B6@F5_lW*VD=2{GV3LK|PQlW!NG z48)1vul7!q9Mc8azFjvuIy*Pf$&rq__u7GpIe+ zSPeQ`Uvstr*7XoU5%qU0->srTT2o)6*@#eA9e+fAfiw+OKjO_Cfw{ za$QkEQ(k;?K8z|vY6a!RLkrp#7`&Vt4da&~z|;oae)A%c@*~>|U>nhzAKn5LOwiA_ zFt|A%@?-oOvV0pdeVQ_S8X-%DEV^z=a&3wLs6bc0+u0bqqbbU%F=A^&802|us`iJA z=;|k~%O5+he70p%)i%eft55M<*<=^t^1Z3TNLS=lQ#Q`0&eOjiw zCHlL>x}}6x5l@=S5#_Q)d2C@mOIW}Z<}rnlxHJe8`?3i)25$$Q<3#6dW3U|=to01$ zIvUH4#G)E;Vv!Xz3^&HY`(S}_?^wr}^}v1y`}O(U#=5kRO`(Nlim_R=j-iK4 zdx1zii-%bXxKaT}NN`bBu2`UhNeo#MT@GZ)h@jjEi4Y2*SubAz3$*16#C(ASwm6aq zC*BsEKoCGMLP98jy9m&IAyXKJHv!7
    2G9&%;0a48zKjR_SPp@l<1lTcqQHj>Hu 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 z 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%0A(l{W_-;=cw&6z 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

    -6*QV<~TGj8) zLi4gY#syRL^2SOq-;_H-d}5R|YlI?cu4$8=S(f=z{yef1KCm}CtyPV1{5Z7JMmzzkICdRlP3 ztvK6MI%~yRb|U6ZsdOu!zn;Tf3ykAx+lh5H$yw_aoRw1cLY~ev4r3}uYciLKl-{vi z)^HwoC{|wc`2G08zF0~ike~)4X+|Izh6!!HXdtfhgfPcguz8kTz7=2CUnm(WmJSn3 zKNs-F@;H+@%-JmM`8?)oA$y}t;HcnwAp%EVd$*Yo<*Uze6lm|@Yq{zPyiMg^rZOje zjxulsDca ze~Q)BX&AuPPa7bNw_zvr<)#l7XAPG@m4RjW>U8TTYsWr!n~nP0cX377y1E0KD-Le2 zigK)tajT2>u7wFE-mfOwyYi?ZlI(L5;X>}j!I(fMB+_A2_81-c&$|RsVuOyPXiZ_Xm zr7lQT7p9^*i&7!abd@0a7iqs5Wd)4VQ3f9a@_g~u1$)GC8co14&|tbdN(5yHz7T4m zMwYrEru*S;^yx(^J;>5?qAsTbf2nkto{K%!84|vS&rcPVRYT{{08q%#H3ch~U3cK{ z#k^AQO6$6l)(PSv{M3_M1G4E=Bm^&=+EblIa(fZ)OR{9Bbp$=0UuZM`uIOQG5->x= z8!Wq~3g`5Yc4@r2B#u-utS6`>HSs5O?~~Ay7;cT^nO>_{Z3RVAm&bG z;q98j+aD14d*w#wg~G0Ld0lxK#PShyu_^jSYu1C7%U@NX3h!2z+^U5s_{1%B?v1Xq zCu>f`{+Sg}c40|q-r|s-{r7xGgl{wnno!G)bmaXYsSkNSntyeOW4?bv{oo`?0HUvV z-y%q=p;FK)iO!=_h`M7HkCS13ii5#41dB_uI!dxSu}u30rk^m0or9Ncn8Yr|vZqva z5q=wy?VE((%&uz~Uqae1Mwt@HJ|;?xp(Po0K9XZFql9)?VtZa<*F`eQM9pSnJUbC< z4b-%ahBDSr`VK{y-=$*xF4NcjKhz7CtSWBwz6~(r$3Xyi&CK45=>EX{`80W(*b=M7Cr{c4ARB zqIWcbd$<#Y^Gu-3zIR!{zs9)y7-|13YSY^!r}vr8bt&7ctxs~Q zirrqBwDVoM%Zo&Z@8Z{fo3Qp(o^#`^z!!NtuRBaVvwT#(-S|iDi(l;D_Sc?Gf9ziO zeD}K7dp4lnhHt2d*!Vhp!=J%xfA;zEmw+{Yg>Qa+V8`o&JD*2vB^#P{V=>bfvM$?y z!>``!e)d@Xqua{wU6x}p(+@6Kn!Wsc=P$8o^6MRozS_3%>DC2Lw#-L8-8%p4?F+x! zw&0Qd-1{45mam&$zIIyqnyGhIPr1G73)Ic!6U&y4FI@tZ`Mh}1n9@a`-&j2E#u5TF zWsAmMUoa+r-l)rSM_!ygJP#Z*bLjaQL(WYfe0nM%rvHg4{f|%SpEJ2{=7c_(6Ra~P zSf`G&Oc-r)bco)8zG9#Z{!;fbVEP)e{ERsPro13CKH}6uECr!ff*^B*k?44-v@qG^ zsjm&V*$3blWfnKaB4)H%)DXoU8{IG~IAIxKrdoT=bt0`er~{_#2m{>^1;by)2vlIM zhlN>RcZB*YV4A^OJ7bNAu}s96EY_MVX3P>Y7Kyd7D#%SG^0&}CWMi1v&p2(M>GA#s zSH{?09A%u-Pmp4%n>SXJHHekcU;Fe}!MzoI?ycy5Yq3qy9P|9C2InUzazB@6j1(si z7bgst#SfDm=r0X4VPR+W773y{QRoXk{+B=lG_6EEy zMgmV0*=}pYqkTF$XI8OlHt;a;WdD<-9me{QX4BIopohSI+C?K&LXkS z5|QpI5o@iKvtG_yFXOEivlsBSX0sSyaCOECbVhNt`f`~zD89f}r06Tw>nkv@;i-lQ zWn-j*&m{bj643~;aEMUYpU1Odv2EF$0erzQk$AL7f}Yd_K5rtAGnLDn$HjUC_G&R_ zgPgxpkL$0m<)dKiF%uu^qZe*0apmdm&_N!Lz|&CaZlu_z;Mq%9I}HU;u)Hmyt4Wa5 z96dlUeT2!Gu@)CcNzV@#UHD91Fv+N7hSl|HR_Dg(pBSxwYOK+z&yC`2dC}JF7#mJP ze}3{{QSv~3@<74qv8u9#gTCAH#gA??pZP3!5wha#p7qrSx6~YRtc`N2IpR`%%)K_o zvo6uEGREsIxFO!V0UILW*v$y8O!a%0>RX)=(3%t6k`>sT89-NKnr}^#XH}wmO^R1z zrhj8bU{iKz%kl8mlM&4)kck&kml0T-9#ESZT%S$GmoS5k?h>MYs}lX`s!k4ox&yaO zV=8DSs4*oF;t*AS^~pZ930^g^?v>H5Rk7|BF|Mzpkhy>ascp~0w*Iku+aLRP{+1S4 znRlq}@$se?*W0RYRyCHt!%|5MV>dmle*dt(`oa6UM+p3-H)B&X*z^J>;sR#W#Q4CT zgB+U=Nx`jYyF0Q7&2;8|f-+r~FoqqEd^`=x5T?;6G+-JH$`qyHjf4)E=_<(t&1jlL zHxPq{7^_fihT+Kt~B{fJP(XP>Y!$ zqG+=J|Nn$CO*fM2Z)#Ac@g@KwzV&)+TVY(+<>-#Q!!IuaWo~{~_V7{J-?s~1T)Xrx z?^4^<>*~VW1Z7I@0cAQ+G|CjwD08RzN?B)KVb|I7ooCYs%EVs!5Ob44nWyhAJ$Xw| z<~C5~eNLG=y{P?UPG!cSpAy`zoSh$dZPmU%LJu~lM0cJczT;N(*PvqoS*Wd_II8a* z2gj%%p8B^aL*ovBru}9PMKif{3K7Xvq&P-n8>di)<`@u+8dFP%pDD}j1S=P3{u5;= zjse7U&DAm6 z8-3Jw>mKj&-G13`|Hy0ELysjt2Cf0h{IT2ax1iO3 zhOT|HcjLSLo8N@3e;c;`WvJb=fK}hQE&R%D@ee*Le}g|}xBauwjem!2dx;Fa(5-)k zY(~b+GatKOz1IHZzUl|p6`&akWysQOESm()e7j@uHx7%x-o6MBLluFW$D8Nf-!SX0 z-Hf~IrrljjiUt}AWyY02m0A2b3JMK4=H}AzD4Y~6`uysG&p@2~+vzDJR3p8_Vq)GheRtcY*Mvsu}@5c-=(F!tPgc@ldut4?< z_kbBET%{8%X9SSa^3l^p2%Ec}E(l;70`z2z^)kj9h1Og{<_x9QOaWsSn=zlo*uZ8u zNLc=Q-2H~4BWAJ`3rYSM+q{uRIoM{4`5aj||aAl8UnoV^fSBavkhoay3)BnyYr0=&zRvW{Y&EiL_^k zb!SW1bLG6nO5svH@d}lAtxCAgKm@&Ho09Ej#0y7M@c?DCE$^tg4zl}_%(Zd{u*1yB zc7mPyto2Hkot(K#B?z|AKVoZq(n6VIEJ-tECYdmzObE)L9IZKE!)NHka^9xjuOmMg}}OqAp^G0V-%TZRQAx2;0qYbTR9t5hfx9XARj{Y8;;^kOWvJoF zF{VJ7yb+R%V-!~>8eX4bc4e~p*)jTPB;}4)We!(H8Z(ZV>&Du0lLm=Wkn;<}?@-Cb zFU;?+9Q~Wq>|ed+J`Y&(I&5|2{!KNJ$iZ_$)f{z!>`@o%RiETv9p_yU>sg8X7z$-- zGJ+}y%J@`e_&0-NGW?s;{obefqH2>pE8<+=#_p;}aH~lL`e3a=2<8x*PlPu?kI90E zCZIMwur@QKA$xZd2C%cj8`49ug9*Y6PzJ}E6zDoZBxf%*s3AE3U%f8L7ge9^Tc6Y$ zW!&CHySzTM^YvZ_pv<4UxBecw^>>(mQ~WE=Mb9~S7hB(knC;CmFpbQDh zBMN^v%20HIBs91ppvRmfD1*Yp3Z=eu_n2sufh2?LNPs0i-|nIz=KnR6=}j};vP~wH zDD(daW#FnIDh?JpQXM5C!_cY>btHPszgJ>3d#B`0alz~S zD^+>d+OA?>Qn~v2J*>j+D0zTY*e#{^YKrev0A-49HKVSSbmm=CpE|G3%_4C!$@w2r zZ?vAe*K+Ma)wTPT*YDOBmcP%x(~?uxm3+13bQ<W|%(Y9l+qKyw)d;?X6E=uvDwHbmk6uxKz6$!@>Nd_oGoa2yWx>Xqs z${>3Nzg=ZSn^DuM4E_}rqP3LNbq%31*uj+0emS1hrG$=4gl05AL!k^BMxgE`l zRQ^FTAe-(7x`mm%`1ZUwTA1lL1L*~wBZ_7y4Tez5nMATlyJw|#@5S2GdTqiq6x^tB zLL?c&G0;)E3u+2cWqQ#J4JhOa#W57h5Ne6*)Tlc|;OW+HG+>0!0FLRtNYovCIqdiD zK^YKC`w7JOq6o*(DASf3^-q*JexwIw+S2ybM|wT?-}0j~R#MOT(Q)pdPBVXZoc`yI z>3=)TdgD6(@0|NzJp?0tRSG@^X{W@UHpI$3|*g5|j$N8}IKKHl7o~FvZj&C9y zUWGeoXeOA@%x}JSKYOjgLWA$!D4KybLkjW?VHzkj-#byOvmKWJYiN{tuyOXi4Kwer zN6om8^^BMe!g`nup4(2Tc2+fxY>v5vEf>7=LYpr^A{PivD>XO%**T*_T4 zWH0737bC?^ptDBI!tzCXneKK4%g01;bhLHcDD&tcSP!I#?=Ltt-t_Ev<1=IQE>1GK zx!CsBlD?%2`&`3<$q5Lj5vPw3WqzhOG0E)Qbep6xrV&CTg2VH0neo^Y*!WWBL$lS;5&h6!rSCo?1ZDUS@0 zLTB1*q;=R>E4d%B_11=f%8Ub^WM0>GVd$~w^m4vxg#sO-qmO`pw&KGE7h-sXN{h5H- zU&yiHv8=EGo21Byt$9itzWyL=WfF0R30Q*#+@T`=Fo|dwp&2m>C^JSOpCFfwm59F( zaHjIvbA_xGV%8ctJinZ63a+yri_Sj`GU10?N`p$n33# zylp1D9Y!2?jAB`f!>vU}24b?z=-deTMbcd|E%*Z6CCdxr%}Y5BQK70FG%)^+7eHcvmL^W!&Dz zy1t8dt4i{sQRYL=?hoiLWs^MywdqKq3#!AAHX2Vk8kC_`8T6PyGc~{$8fCyVNdeG= zY7@LsbyzElJqZb(v?@~>Q*i z!<~2aw<;R3QSw1$9$DZe%dsO`O4lxi)J*k3|3;Fymn z1Fhw9Dyd7v977dNGenZ1inN(1RVIm6WvG|*MS?YSkBO$4&a(tuG)1c~gcT^1p$Vqv zNMEOp^z#%|zyw231}&kM>|-dZF+`d{l(<4*rB{(g65W2Hfd((}7`;C7wq^ux;dL?eT~JCYsP%Fe8kf)hkdhb#P=&kKVAIUkEJzo}2%CX{cRQM7hq!HUm|R*t>7Zqn^F<8QAXSH5=q!}SxMY?}OJAc{ zGC#V&H?xASA6-`b=)C+#=VjmSSOS!JvSr@GO>-V#>*U7SkEnXMVb+87Gw-6=v~u#T z<&yw3HxLjEj)9G4*(4kZ$}Aaoeeu|93&&iUKN{K$iZIRG5f=!}3?(!(eGoa$9DHi} zpxi0_Gbh=kjI}_I2{dzLh{2w|%H3AdKvT#w9CU(cl)`@6=uNPYr;hZ>*=Dw1eEcRBYaP1 zmx|?rjfMtH2Ls(LdU!7vu8|2>N%=^mMZW$jDSMTKy-KXJQmBO>mhEy~A1m3O0eT1e z%lB9dV)}_PMj4!)V1~Kh^W%()=Ud%eVtaE*-=cX|=O^i>4;Lg3VkZvfr;b!)jWtXk zZwbLEz=Z9pr;G2|LB`sl;O;V#dRQ6y^fg^$ELoz*n=fO7W6*4x$=9AMW-gI)SL=)H zjAfe*#db2*Iz9vIzJshJhX=@_Yz6yFb@!{Z4x8%kGv$Pv@cfOrTU6{-0rqpC{mAk)JXS;CCAf(;bg$rWzKQ3;BME~-K?#%MO$YTUmGa1NUXI?sI@|@ zvqs8ZC*!V>ahJd`BZg4KA}Awd0cHB|m=WrjW@cfXA!VTj)8Vbc6@MnzMt zi>BG+Pqa8S$}nS~G_DW#uo*MbSQnBEm?m?$0!F3uA(He#qBCO*%I5a})^6M%J7@jo zG55LeqSqm-DkC=3?6a>v;81gL2NHg(qg)8h#CTU9^Q?^atcv%k2VMY2(gJHz{cF?w z8#05MGW;RN&>T~r>{XNGRh8gbncxAAsY&r^%m{)i)0BfzCS(9!L7~3;LXsgv+5}~? z2+AN)=6z-u8cYylD&l?L#rfb^1sNta5b_VcR$ZchZK7`v$`G1K@T!gTs78+|#_cUu zK}9;E!Srg+_P@fm{SmVDxA5&h#(TXy9#L7I(fG%e)^}x9jdv>QZ);Gd;eKuP{f4?n z^^Fg^J-?a>CXfwu8V0&cRnguRhdth5IO?!ReY}55dRRM_803&1Q`_mo5N0~^qT4SK zVWtzUC1R+=8$&Emrh{rT^+Fl!#3m?%DH3>Px*JBM!9?sb@H*UtU547JL?O$+K^bZ< z5AE>nx!YU3`A-}}U;pnYgYFV-lp%&w)SVu$4CyibpHK!aVAy4d^Oq{hDAR*7M3up` z4sDKsBm;=)j>Wr$`J+Tc#SjB;572z1nNLxMeysPgjP}al2#!Ies7uhrOGBazs#f5LLU3-^*z5a4p*Y$FB z!2|WR2VDgZ+KL~(M`=`~mB~;0SeNPKUk$8~rP;l_GH5eVP8!-zLo7AD zX{PghB2i!H>P0OYSn0WflU@+hjWS6@yg3aoa2&{kmSoUlqUeMW301wlG8#(_1vEe( zY)T^f4W92JW?s#Qbesg=Q2ir?yYey+H`ZuAekraW>Ob!DjqqR)~> z8l;Re$Qo;MW=fxn)B9eY(Jy~y->WnG7R>HnG;d(>{6R(Y23?yy5UXkm<`28GYT|d> z=l|)o=55gC*WvI8?|8Gv@%0`@nr5B{+5hgp;TNBEpc(X-zNaJ^;LA^L*wD19 zyRQ5RFI`rA=ePuICYWX(Z=UVl zsF-dBFum%!8|wO*Ged27`}&Lb^%F-}^Foc7fruvo%9!%@nG1Fsa)R}lK1v-Axt6;^ zn|vVD9Yf|$1DzfEtgUj{W~szZB3vcnuMl#VN;s%R64n9MPF}Wqy8Q-!tQ^uFSG1S=8^=vcY9b23(qMmN7~aH-LG>R`;+i`)EHw>gT30 z!}Rysiv7)a?)p00CE7b=Ocz6ur=@|Hwc!>^y|t#&W%`2o64p!}V+NNoo3Fh<%vz=p ztWrrf8_VpJ{MCG&4LmIu18#(kbDd0i8zfrGc#P#j z9eWwuU%?B~6YNoOBMrIxO*noCAU4q2WvJ_H%yKqlISbfZbhKCSwH8UWfHGeS5zPl- zhP4(bBjd4 z%7{h7#G+AR;aCyIusM@i+S52Xi-b%&8GDOL=ma@RkLRk-@=!6{v17}S6==c_G!c5M z_)a3NEh3#QQr32T{&o|Iy$T#7*lfhzgq@&rEmvcXpD{b!N_cF5;>1w-3hgAI zF*E2rB$+f?lJTie_O46uA(iS|mj>srKit9a%Anq3O##+ulOb))BnH=Kg=$bHV>jJh z`iL^XmsE^-6OL__bck})l}W1QKqhm%wzXVFac$d1*}1tcZc2IM!LR> za)SjJJ*GC2E^`pVOzWvb?Prd(pFh@)eFYF^K1CVYG1CiWG^z}3`z0uYRuKrMjCu#c zn-G=!OEr={N-`Q@M&tISdr#zUFH>+PiOZveng0#Sbdf+d&1On@Sh=a$5J`gXx`BqsGu;pLXfWh~?qod8lXxB| zQyQlx+6?pd$1?p3Hi7>1KJ^>zhR{ zuNGG2U$4GY{QfdlVc%C@d#t|lsO#FpmZC>>#gFPr?^l5M*8b$rj`bo(X#Brjc}eQLR8r?tdVq$IN{>QA(@eJ{ z^YIoQz%4M)nIuRiz!6wm05nurNMi>kAVM}^Yl_xgXv6`;G-n-d&B2OCICf(?G0KFw zq?0l27-%}KDZK1D9j`tM*A7)+8gc^m!Z8-(OPE?}KY`Bxh>1d{spBM!+Xw>h%gh0m!xo>0aa$dIy$25U|>_IOSPB%Yv)z3w$FdDdG?EqGyh&c1NGA}G!d-|$^Eu{fwB2=<9qb)|$g-EP^&8WT9CTVl3TjB;Kv!g_?4LjF@hE+6dqC0u~qvwsYbCWh|7! z%gVd)w%S;kDZIa_SW zl@1V!hl}}x1)PC=NHYB4u*=A0pqb%f;sX9m#2+W%e9mJ{WopglK=skVwgg85p@#v_ zOU3gvV7VJGJPftG4VlCUWeQ*wVsANOZ?;I8*wD1uP`FW_x7k>*!GLWi*WM!2axvlh zm~ca_#D@pyJv5u_kPj5f zAS;hr$%GzLNIfyibfZjW7`!sQ8%(hM!t+Z^Ih5y@q8XpMM0|1|e2IE|i3BguOjVrw z+ZdPEM-b}mM53hjkf1!E%#YC?e`kcgD@(5b6)Ab8Sin?CqfEp7in_biRd?%aA5y9e z%`yL3m8pnw2g+bKcWdUJ)+|JiA8a{!2vgau=Z>^qi0*(AL!k_S=0AC5sAWu=2__n4 z2$Ym&w-#r%6lXLSr?-}5(w!rkROsaf-K0WXGTo+NGThX?`T(n~;in-jr~eJge9AE= z)OYcI37WxFb}yRg5n4VDG0_uD{{xh{nX0CXUQ+;Ap&CX2l#a4^4W@ujXhRH*GPgCV z%qJW}0S!@c{s$;SIEGX*A)DgN)~nf#7t$Ke&)%WjBBk?xo?vFZX~YD%~~D*n`=~C%%#@6jF#fKj+-gHg%$!XG|J#eqYT|| zqK`d5({pkcKN_lNj_IKp3TS#zrsaAHXa)&J^ujN)#1x}*RBH*{B^2?>T!&-kVTZjXL{YGmIoxv4i2k!1D(GY`|t$t&_=;fvbf7vhiZu#W&fxP@FroT9T@g{Ko%@utU2Z+;$ zsm_eI%AeN1cA2SZo|~C*CCmA5(;53KW|^~+;znp z-woBl*rAOeU?&ufG7x57gl@$&)9p@kbIs2lt9$Af4-Lvdm_hvjJFw$Yw3)h% zz>B_dfFpPjHRUw#DMXr$pqZKX*G&h_px*?AhA_=?(qp>0Y*N{>Nu^6C6jMM0g{F{d zIbB^iCV#zq0m>X3ZgOCtahQ!V&`j)SA_y=Qg;-+2q%yp( zepp|908NmklwggG5;PNFCH1qC_*zOlO$DS?1ow=bfpXK=@-tZqZH;WiQvLyo&4&%;>cVkq7!VeYgsaOi8e$wIl>P_jhEnJ?0v z1LLhg7k!xp82K@hZ!(szmGhUe7z-GTO?-xriE!TlgUEq;A?ExDsm?(WV=w-3tPq^T zS)->rSEx0INuvMkg{)vB2~Z|Pj}vCj3$x&Ps&rjcI=*JS-BxmEF$R|y3nYvMBF0ia zW0{ab87XI_jI&V2L5FLyh&f8AJB+Vm&C|8uXq&Q`CTxxw2jkWfE1qm1wq8pxsl*#1 z;tiJwN5~{V8MKy$i3Gz%g3&_WSU!6!k2Rg6HIJ{eLIUS9$H_?KZ6x$F#*qt@@iNx- z0m>M2g3N@0W>Pl=YpYm$o16_*X1$WLPR`nBz_rsy*AL_ITCS!%KQn$br*rXz06(cZ0ber-uX?a3jnDIv|NAs>+Yk`h>(gsEvb ze0}SZ5h>?Un~3rxE|z%Dx@4dC837-%A;uss?<2}!H&ag`{FjcI`H-^*IloO5%|M&! zDZ(*`*Gms+N(;sW6S4hLC__+*LYdllPpsyC1KaNrXJinAW-yYCpuFG0wtaup?Rjd@ z>ym`ppYmE>6>CtY9@@;kceUkJmE}-nh*#!gGTukK3{hn;k6m@t3*Dvaqh4q*eMk*y z$=K79wZAp{K+6dt%(R|G@-HRKBSE3Tm4vS1n68poTC-^@$ZEKFqUvmR#hJ@B7YctZ__4ICsj#^I zVo~G8;-*VCTQA-3yz)qW^=aGHr!Ci>G!{LoEPh-?sWO#?H|wsKc3dlI%e&Hb;#_B1 zUUNcGZN{w+kZNw1b=F z(%I&#X-#+ITkod=Wr#3CYcmjCdQgVum49WL9*)7ue?=Mmp5PazwJ42NWq>jeW+<8= zD1(Tju3klD1R(8~sv;`(7s8p1KyQ~*GsifA*)`K4h6iVIaxWqQ*L&U+|FBi?)z zX3${jI+xUiP2j!jTrw0F!~x^h$LpjCl|&v!VYrD_YiPvLn16{ahO+T$T1)>$l|f(W zqa#WgW!k9Ov!8It;ntQb4L^LiEf}vFzC^V=uC|uNdWk4_lWqQ-h$)o=TWm+>1 zHl*xtN;~)=C89Atu@o$a`e{q=mhx4MpT$iH$bXoel z^U~j(mi)F8C(E9@t$yXZu`*~|#a{dw=lpg*L7A5k4oIE(D|8ET^L~dgL(vRonoz%a zuft^1FP>{aGe1+p473?^oyc$#v>9}oFx<2Qxxg54(x43KG;N&yaQ#eJfHBr|Z|$`E zYo}8!rzz#DpwLXYwGso{lL0hkUrr>oY+~t`6N;9Ohlhp$&Ad?;=Zt_h1Jeu!nsUGB zmo*VRCX1xeCNY#M19tH<7I>-FyUK>TIsW1TDB_nQ-At%6y?PtjJR%v6k z6ILR)q4aUob(cv{&Pti1zI?k%zSc;wQeQGp$)6%+O&04+lXIslc{3?b?rLNCGOq3# z5yxJ_b5Y5|`dJ+8FHRY2a&FFmf-gs2UpDI6q9J)RZL`K92}S^624ms-t*{wN7&$<` z&lZTr^)h688u2`g1kQSFCri1bm13)zbiJWywUWD3%2_C8fn(+fv4WAcTu-{zNN=^i z>`NhgmbTVX7GtxL@6|^YJkZ3yufZXG_A#K0M9afS*T;;#$y~5d#hxKx%mnucbR6}h zz6N@JDtWk(B*Iu442(0>4KUL6Gu3s|(^@NKED#fvSt4L86)~1ebdf8wT*{s+<;)Z@ z$BS4aM6AJl9V@=B1y9F<&#@8;`-sK1BDt+lj6Co3AjV} zoM8gqX95l~X(sYnbGcfJ1-fg+OxS~9c1DCupaIvHs4`kUrr5!Rp9MF>RJ7Yn=B;4w z5bHQAdFZ=s)#Gkaa&{OCwi>YQjtZz%ae{(`WQzD}3{Ayx-s$;z|(^LaDZlVwH zr8dEnHsn^vd4O-;X9P88heC{@j552imaQ^y`uLYM3UGbhZaUNt6``E76hn;AYc@31oCZ>=r-$m{E zBgy}DVSN3Md2KI?v9+M8?sg?XnY-_5$}1|%>*^k2IrhJwU;@g}&R=+bYomP-HvAz4 zC=)@WO!J9I2s15bK1G>ppcyi|M3<())SWBSi9eK!&}pJkhI05)UKu2U(7OxJDuT+= z%`x<WV}prmMM0+l%4j%7^CWqU z=r=dw)MY@K7=kjTsZ{nLP$r9NHi2f4G!sJ#WK*2nay7Fy@A$h@S#Qr=t+{mL*TQGT zWi188P2iY|r7ah4w_SYDng2+AWkb_YhGQHHk5K;WTJhJ?zX8$|}NsqPXP zU!tm8o9Xe&puyDJD}$Ga`c2T~bj>n!Ck2+*QpZHC{ydT0BsjeN|#S6`Enu@8uXiB z1V)buD07O;F%e+~Jtm+`>`1eyVdmksdcH<{H-)aNT-Q^di$CT4Entq3`I$?-O(X%9 ziXa>PfIdJOg}0>~<3!Bi1Z8xAGFAd+9}(YHD(x?q_m}DQlPCs?ghK?Zp+fdBF>i!a zhyuzCTk}4TRG5} z7iuOBH<$ZDwvp(%sRUkTa%W?)labiXQs!(bbkJwH=rbX|VbihWMq&nUMI!#k%a0^D35bsMozZ#TjB0+f(&BynmKIHCspBvEt z&u>;ZIEF?U1k7M@0Yx)dVh~JrAf$&NB@gr16fnW5LsTEo5+<0cW5^`-tE0}ZqIN=( zA*u`-Od(r;3Euooq|>u_pH~I3^*@}aQKq^ZW!~1@si?eDTlcW0{{Fwul>y3-Lb^;e zlK6ZZ69Z|Kfh5zKL#Z-Ug9)k(dQ5GXVD*LP07YVdyJ<$FMrFOoh1L4ex~OZXeJfac`KQq z4CyHKpbXqFB*3@pRyWF!HWL(@Pf-Sv3>Ae(noy;LczTL{va2jsU3#pmG^V2@rM(!H zj%7m#x204WxMvd7CDH1lW9q`huIq_S`I+y|p8ESl?q6q1E3Q8JsrcpflD4abEf6=Q!Xy-xKnjlJC?*>LsJ6HLVX zOPGd=qS5Fy8k(VcOk_5@{ak$enS>5nfXVyFE?s$KzX92#P4;P1MO}e@^RZy5p{y{( zSVK*8gI#D+L8pmAnNLQk$yoJA+`&9HrMsL)tB6LKSQuq+5o%3K_F)wLKquNyr>KH; zhSqOR!&QS`5}hc64F+`4Q`z{as8-7GOWS_QF)Ok)<3LN={^r!Z?^E_xrtPoIifqU_ z(2x;PlM+&&=!Zg}=leL{hG_4`V*$Trp(t* z8mhc9W9Z}cvwm}4{>o=VZP<2H_3kZIyX|Wuwp4}L*Mx7W+q=DPpJPpgLq+Jex4~Q9 z25+qjbFAO*S{>Z&G7s!#LZqSVKJn1ZxVw7#omEqB zube^`Xr_#y%mkoJ!J^M$1impi}E*O`%)-_d>RiulD6lj)N)hmdZg0xVSY+qGkU&T>#!9hdTeibv)h;zh36m3nROn+s{ApPuN2Fd-T$+n{0p~`|UY`$9l z*)JO=|Gw#qKQ>K%wrSE2TPOdrW9l>K*?+n&_{)9qbC2aOyjH#NTlaV1CeTdfKBwvf zF4c!ztD@X0qg*QvyOHGI7=VQr^pb{T--Z;dYC`l2XvP}`8lVi~fQc%T8H}b9B$*G{ z;ba+8HdL8CG|e;}-`j{uY${g*pnd|K)1a=bTVn*k}@>YWALc{`O9h=eLlg9#g#ZYNSjwh(mQAT*;vlb!|> z?U&-`@$(O=hp{idYmYEf7I_0IFfE$7Qx^X{}>c-VURNyn9^@2@U^NgjrPooRXMRweH^kA0Li!e+YXk~&CcOnk?M`0lCfp5$LjmCF`eg=x_~kl(||HPS31rm^;9Q`s)Ja9;cYl+h(bevhKl#4 zPbjRRWte{+VTHkhBy6|tIvqnbj9{_>$7q&BVgV$*(YogfS-OOMOeYcYi{~Na&{4lQ zC!U88VDbnSa4CA5yVmX-`v9L_^A+itNaW>_b&q2dXpoR%b-i zriav|1|e0V2H6sc0S!rEweg{qvHlp*d>iZaZN$oQ-#OnOT=v7^C0VP?Qa>|>dG_1w zi=X>!s0<@*sfzGz6%pI25A47kY1Ki8DsptJI=Hg}YbN(QRqS`J+`p^(pj+)BkLttj zRrud=lF#gH~8w8f{B27Cu4XRB0qt4M2yOxM$p zA8f6F+a}aX3TFoT8dUzCF4FeA;rvyS?Ejq-tsVM0jw;=q1{^0to|6I35yQhW?j|wE zPQY0wD6#poV0bp<;=?bb+35u9Ck22BeNb{H|cXnJ)al5oXMTHi8H%v9F5lEY{i~U^s~xTV)IE)X`jO zC)ZsjW`brgyR_Uu4sx0&5zUi|7c1qfj8#jOvZ*ZQR9(grF=xA#p>sd;gJ%2$Lmf<9 z!`17p)Y@js+h{FaXC<4h5|3tS&tS1vh^5;NjCLEFgqfJ4#}r}6*=@w~HD!1jGVGO% zz+#+qDBBihR#BlwRnFD^Z zoA~F}nSXDe`EuLzza3`$xoh@cZgc1&_mZ+zFj^S65&wCP>w*2-{)x`VED zk@yeCtvbrB=CFIsF;B$IV1Yn=f=^?T-}}^nMx^m3BZ`+)Lt4Q5bQpdCF(ITfcSCf6 zCkB0`hRofF_r*!`@qHhT?|+}WuQ_)wyfQuAC7h6l!98e5Wro6(1J7@Lk{`S>)I2s3 zW@uFg!pyr^x0lD9UmV);ZZG!8I=+o?d>OLs_nc8hOrS4f?;gnORwtT7|ltqTfHA6=N&h)z%d;+ zFgQ(t3l$7Q>oJgFfF?bH4b3_PXi(j6ivQoCOxNvCQ3iXIy7xiigeWfm6O`%2F#sAO z;edPoJIa(GI`5eJ`jO77v2B;5Yw|K)oIU^N>AYVrJb7O5%hRH&D}`OC3uSE=Znj@2 zZ_9hwdhu~v{*%VuC{ui=q4-uqL21*atL>-r8Zm~A8SLzW=9C9-v%adieY@>xDM6V> zXfPG4FW%_NC~iqU^Ex@Q+0k4dPV<-WJ-a1KjlyIG(%s)9MvE!Vk zNJ<`w-=%4W3_a1h3#1oZM=uG6nBGOF{nAIu-iwwHPzI_@oEkl&lNek=&j?Zt=8|Ch z#b^@Q8HsgEIMTQ942?4CbFu1kaUbiW3mE&GqIyt9Gs={C5Pc=k%!iacO=TbT$+^sdzgTtQ~S)Xfv*QEFU9&n6)g_QW9h)2rz*Khl61v zKVzns3K=sDXE_6y4mZ{cG1Q7M zV})BHOofM-K5&eKfNXt2*2@kf-gaZrW&_?DC2zTmyA(Q*LbOCFnJwha;B)6mgewg6 zmK!MN@L03h$hAXmuVR~}!G2?IqLEItDJ#U3add1tSFwKQ_r4eC%$}M3{NCsN<2{b+SjWv`>E6%d?BU~io!5CnYcXYt4^W0kJxwGEOzRqV)t^fY|zyqz3Zf$3ewVZV$T50sLrr6`n@$RjO zCtH(GwxK@~m6J(?Hi$Df0l_owpczuelzy5Tf->!}_hPA(3C9d2%wz?%X9d$JgKyyj z)OLwTG8E1D5Q8v5nbU~KqfrLGGpQ^fD076UGF>S1Jaj)e=3VfCH~x;ldpRIl=BwZX zK$&MZ!rp(HrTn$zKT)Qx?g6dJ{1wW?xi`k2Y>GPxjzQXQYqF;z%}1F@a%KJ&Wyl>9 zwP5OAGZiIw7A50vz*sP$B3q5W{=%9{ZjPwjUaGi&DqzYY^#vdGE78x?$NtPTT~f^- z-q(T4M<~-pE#$Hq&)q}gj*eys(2(`S|FJ5gxtpfJj;YJ-tGS)3(_?NYX}~cbP=+j( zx&|HBaTuNLm)b57I-$~Kh!ut!yhE`LrOI?Im}p6cQe~pG6_K6gXK7WYwKT1z^n4rX zQ%ve4=h^6HiqMuss0(7-awA{mWd3x$@Rz*ue--`uMak=$l7^cl%3EdXn>EUtcT{=z z6}gYvb04?gdfZa*X>;+T){6VBWsqd56=ju*!ct{UzUoqT>$z;@`Rkn*O54wW_WJU_ zYwzAADD$vfbEjN;yIgytOp%dapOX4*`mxKwJI?0W`8;utQ6yc}UeD0pynq&Q#iyyt zM`XeDA>Nmc#e)(xBG$Yq3%(iynm5MGIR}7cRx9O@&2dRnv70_09E4#8yu5@ zQFjgbvK(hzNhoYrl_V;Q6I4Zss=^P0qU=trmb!+VFBPP9-qHy(*f;4sG1RT~#|2E} zecft_dZ1l3x(gR52N+6p*>NMSw3?3*|rVC|=Bt!3y$ZAQ4GPupA z&a>$#JZj|x#G!NWuudY?)&xziKxM%S38zdDSI*)ALw^?^z|e3*DkRD0ss2cCOimm% zT|h%=Gq}X2QHFBKkQ;1Tm;u~$qy}OXX~C*KShFHS&fcV`d3#cRY7Ol_nKHsFo1?s#}dR2dp&4!sIK@Dc(w zgc)kEZz9Vk&t1QI*yBQ*9@1}cV%v|$wxF;HUSKc{gc%ezVaL>sG7sz)0A=XB86wOe zG;jNSKn%q(3vj3X`Hn@OZ(sD;wuO(k%*Q<1g0t;;02*wXKr`gHY4uc`YLoM9s@wpz z2G?j|W=g+|iG9;1^ur{L?S1wWi-6uDcQb~IME|I)hnp$LgL}eCaNL4-#Ek1CXB~i7 zRKnONHg=FO9Ha~f83P&rdreqSWq>jV&A10lSPlsO7aBmG*)KMBhd0HVf5IB!G~D9| z6t-l#nHwLK_i&c#J4*C+NcHSwdb^-)$PD(%dpOELNSp(v!h@z#M^mZ2M7)j9Tgzpy z;IdYW_-n09H}6008lN)LJ8f>@)0>AoCJ$Ra>@to*JqHmA4fJ;j4PkdZU@6#XCfp!mE$0|5 z;j`D8h!^lVvslJ+ILxI|!AeuwD^|zAwT1$LwC4Rl7zP2K7Yw!&_(3}-&!;iBSC-;)3 z_LF4}Gr?q_=JOL1P)l5YVN73s!XRc-_RG?dSZwYtGL* zXa2Zj+D|)Y{B~sVOE-ctbsn1=ytg;_?r!wo+ZedNA^2cph!Y^DHR@P1T(IDnnB!=d zY>G$it9x_u$q$l@u3O+l6W|7CM_3P0)?KJF&|RRuV6Oy@X+4hxQ&2}%Fi@uTLLk%{ zpbP;WN}B=7&|VoVm~g>_t8WTrsN#Z;Q6~EEdw6A{ouSIS2y+C-ygzgBUBH3Y-ur&@ z+WTGb!KYEK&vHWEJ-VQJTHMrdx3;$W9Z_ZOqqv~9{sHDawP5-Slp!2L4Qb+zCq@~h z{n8P6|9~>xk__dT`QViS#~>jMwqJN zsk1CbTN(zGQ5M8B=Y+q=&iE;}^l8!EFUnp&EPh*F)R0%KxK*yszoWW!Po4ijnfs{i z#>3Y9ht0PhH5Wf@t+>}-cDtplQdv@_yj7&QmZ!XUtpzA^;f5xwtUc?CH&?%^yL(3o zN#;SBy1HCjS*Fb{YE8*`9UJ{9!67bkM|j2lz*l}ro#%42x6W$|FA|h_l&X9{p$v^I zv`YpwLn$$o6-L*})P3Sa^9@!@=xid*=eN`8qVkU;d`NFOJ=JNNDom=T5@Jm9pGH%z zqZw#3s0YW!^JA1z7ba^8Q!t%Hm{c9g6r|EL^C53Wcc4VyG10j)Xw}B&sX@jJasJZV zC0(ve7s?Q43^q+zDpC6;nrRRyoT|-BBd@u-9TSW))W;~t3>-E(Rfcx{b{l1Alp!g= z-HsW2vJ<#NB@2@%nyY9_ARN9Mj z-I?gGO%Bqgp3x?UXcNz968zMOUYcaD#_0VGQ4Z}_k2U5Td3xCtjH z^Cko+bC9AL01X-V2T`>98+jim+FLSY9+a3-?KdJB30!pDZeq$K|ga2Vo{l(N z*O>6P^pqbpWBOS$LveNvrAJ}_Fxo3I*lEgGY{8w*H<)CsKb6T?BH%lSBu=Jg5Ip?M z*uLgWPfI;?R2?wW-(jl1Ri=llY-H=LX5%E=V6D(-F)o;RhO;ExDRSXx0jn>^xDUsu zFNXn+>BnXcWUvM?S!2+5&1KHuv!@BUQ~2yj2*l&_5bryV#~s7rjAOATv6xdi?D_cb zEMUV_v{}f+*ztSpB+DjLU$J0FaxoPiGZVQDWHs%EU>3M&_*8A*Cb?sdDtMc zuz@BKDEb~~l04Mn{7|c`!B!WCT4s$h&l+WM5%<_5Ez*aXBn}kCAbhzmH>N*;MwC2A z47*I;^uBjjj``MZ&NK9c?4AFM{p_FYW*{Z++2O^%yDfj?zP9%Crh2b!4Su_u0vwux z4>W~3w}c-7$FxQtZ;3t*j)5ctlxajmbpre`C(!cPf{hZrV?wQc3bsq0t?6E^8Pw@@ zh8I*88fAzoLpDeL?H7n7Ll#Wu189`#0O)jSGf4hz0KuRh0d^U(U^>}|02@m6fe{C) z43hD{G58-iF0pke6Xf_FG=sB5pZ(9h9lj4f_$1=!lPf`Q?q@2W6ai)GYHM^TgB=q= znTP)kW#VwDb+RSl6v@Z?AD|3WnGb_gCa5yd@NvXchV1+_YSPJ>37K@{%8*7$x=!-H zpbUtIYR~@bSNtX)R!iU*BGOPaqtj;YBYq7T`49l8*chGpm!co?{J&IXD3l?33@yok zW4ci$vGX<=N{=BB(^(xyO>Ad1RzV>S_6>pH|gZ z7uOXPHslw#7nZ9E@2HCIs|y|~Z$50xebAEsprznpYsrK5iaW|uB>a}Eii%Zv1R#85w|5E#V+)b zYe;=Ws`g5bru2fQ>;hOsc|T2c52hl*D<2YN{)95rA_*VH&?ip#JkFiKF{JUJ2Bimo zpcw)&HT0yZD^pdKloA6UG_gV_k=L%Fgc%*p&?p0%AyY_Rfig7B5YI1ArYNnGw#yL5 zOll{h^K_R=OvWvUFHzhOf=9CrU`WX-ESW*w6SLTmC|NFGX!Oz z${gSNgWF~V&vbWBA{Y3pgR8%ET=}`fvQPIc`INHD5XTIbO;|J8ky--)4PhEPvS9j* zK+J;2Tjo99Jg-}o!IAdICn7-u(e4Z50@76Buko&!UL4m2?^)byv2@M7~xoT_u&QGB;gsW4+GSdWDtwLaAsWhp|pB zv9~eX*UM~gPZ|8G!DD)7&Kr4S#kicMW3J5`oH^O%>`<|%m659iDYr&GeT4yoOuPq} z!1jAcX1EviNgTZ$d;p5E(>@qh1z-+lH^Dl?)?ddlK)=;~8Q;lN=p^Mi^BJyE1o}yQtfjs-(x3sR zVMDE=hFisqw2B{Tl|Ircb9B$F5!RPJvAj6c?7}eV#o@AxBTO!gFg-UM8Vs^z1TlR% zk-b@Gd$W=TiL%C8mCPUV+2*Og>|6Z%p=HnZFMhgr-jm&Po;u8X?z;5l@s)2*u6ysX zsm^O#JyaPAWpIg&lsp_`x5dDWe*%}-&2jEc3Dm&F0=I9ndu!@xOiSvimXuR?Xv^?! z&-7_0R$mxjuru;$%k*ofs0H^*E$95(&Ih(#AV!&{On=yZ0Wm-s42TD+45DRFCyBIQ zQd~f~Bu_R`DAPz5SUCTtP$mj$s}nARoooPdVrRU3l-uny+u)Q52N5=NB~>mb8{ubd=ofD7~*Je$Y|ype_G?OToRi z!Ur9t_f!=%+R_SbNr|?gK%0A0bL9q9nYQycIM~7X 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⪼3)I?f%?x6R(>6S{o6y8-zGMkibbhW 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

    ; zqO>{O%p6U@Tr>vkFOI#lz z!g<6IgcBWv+W+XAhxUM}C+O@7%kPNs(I=cf^(=8Ie{9~>+0R*#@P_h2JwmiKAb+S< z*im8R%5b>}foI#C#Ra}~U&oV^Qhgp^GbA_qqQ-KFn9w{TT1fruE$LB&8l$Z;cF@M@0*A;e3c?*^t_5+R zS-(dY7!f=`_avy<#IFNfN7D5bo(l5Z{Z0(9ddH#(L2;mOztn0v%t4jWc8%~a@ewp; za;wu#5%-9ITni&BH}(xagut8IULllR&}@XGkXYnJgd35SaSQ~#G~(DTDt8*_LAw^I zZAILx?3mt)xQ$IlU-FF!(S}W-o7MGPN6C&7^lPnd3#OG9zF)+8*4ka<`*I6O1#Br0 z;Z#9ljfF%(+qN)}6_6pW5^mCZb%EG%MIQnUvuO}wy}YU`_&>B3$r6gDOo}QUz71g- zRKi}l+`3Y`cJciqBnkp))LM)pvtpi)xKYTOAoDj*D99R3uhIU z#zoLsS}z~y4_)&0BRNQ6H+b;}&u`v=xM(JGcAaN{HG$N^Ya5T#kVJg81o6YLXgO3I zV~!Ui3fNOZCbCBx5Y5F+X%yt9E!qh6`xwY`U_Rg*z(*AT9>@Vx`8JcNO_TaRa+i}3 zY7nXrvtqCVxG9*C)EMh5x=KpRBLZ}OyNhgYGeWf@2<)pf1kCg15*8hx=ZFLVoxL!? z{$Xy!aQ@L)xU_~6$4@rg;cYUNgk`h=GP6FOMuhprxBmbC1>iv2XQHHaX5$P|R7`@R z81xr7+83R{gZA?!mI5|CzSR&oaHkTJF+@YuOH9=<$5N>%gVu6PIfYZM6^1=UBIgjl z01}`3zPZ6r1M(8%NkRMqFS3eE9)g$Vq}egs`Uwmv^0A$MO6iu*UIp?eD(Gf1z)kU6 z1`B{J0?+z%eD(|wAJK}aWI!7X?*ZItGslfQTK^hWN;lZ61$wPcY=78vrw6Z0#h60%Yia zv&ak_GZ+8#j~3va)__r8_|QlHVG}s%0Xfg}Ix0WtL-2oN2O~S5 zO0Ys9a@oJ&8FEqbFjEFb9a)$1xa1YHWXy(_z{vM?A>t@QT`} z5XaQZuAqT@@r)(fe!+C=(ZYp%fdn*lS~QCypZ(OCp`~yvh+bSgK3JZ|Z$1nnQe>-Z zGo5~#CU$Dw+{Aj+hv!jJbNnIMl|F7j&uyeo+ap< zu06_=^_bfHR!@ga2p#)T{w0@y6bv-LEFNQk@)z_z&fPhjI7z|>Veb>Y4Qh}bs+FoJ zKu>BG(uhJ%-noAd$i7M1yTOT!wqJ;agAck?SCc2MoB)ih^UxQz0Oi*jCw{mdZ&m$! z)`&0~=`5Oz(1ysL+s%8*kKRg>2&*eV3zC3lV~3-lVS`J@DH z8%nXs<_sZRVgN2<4}Hug7^crJT{Jx7(k2}=ztxY%Pyk# zE08+TfiWi!xKhBi9(zR0F~$G^%z;q<3dz&#dRhKl^36Oh`OoBZfCg=aL{;*06aq_x zW@i~e)M-)#q$%|F+oGo@;a zYMf25jN|=}U5E7XOm$Ec=~3UD_UmkA6X)K9dp6fZ)) za|fKK5HC~}(l!e`a-qi->3^E}iuj-gd5`f-;8e(_QpoN^DZs*_X1Sbpvbh8R7y<^m z9rK*gH9h1<5^MyOT#M@jI(bAyvO%flw_>XGs5t&s93IJ>V&rkWt&z#QUVJPMKp$-Q zF`11*z}b;*CJH_7KrZgldn6Z0HRsQ5Er>7~z0QNasRv>0)XGL4jl8uj6v(uo&hAcrzmmXlDogZ(2J>Llht9se(GXFuc;7)u4phE0lONCxd6`xXiJu97bo-a}vO#r(JnTJ*KZ&Sg?*>jIYDwDCw2F7@ zG-1Y>3jHt!tQQC-8M0!~-{6|_k#BeB13%e`Hpz=b5_dmFd4P(dP3}P4_oDhDlsK_= zw4l=z@-w0dUYmjV*;4P+7k5OtLILW62;M|-9`6m#-=gE>31hAHF3aYf7z@fjT3S_t=he12M!{*J(B`$r8!C?Hr0B8ZaL~A4~px z92F#^j`C~a5aGmbPlE9*lAU+~$EBmNKJ^PG!VOwKVp8rid;LwZekz4UI{}W(g;qIiXhO9#9Lm{xH7)Jff?c%F zenv@4KupCy$Oi1m9mpdTZw3(hT*w!V2nwiKiBBZt{{&aSCQ%R?M43p=ETlWB(Z82M z*KWvvft*r8T|q?Lwc9Qz0dkKwF%0=rxFLi&x($I0Lv&z-IGgzDVjnNGbJML=vZ+v{ z-X`$&kGcz0U>55e7dwrO zSFSFCw_Cp;wpW9rk*H}1A9jY%L)W0S3Uej#_*H=}M42X)03a{OxznT-Y&!vtrgZmq z+|&Z{qg$9w0{Jft^7#i}E6!AxA)9zb6C!MCQ+W@s&4#Edd?7yi7}DrGxRwV4DM=#W)ch)oKVv|yq7q!Kz=Ofp3L6&AFc-?mAf9Y? zyBiC(O;Ce038B;^dhW(<@Zq0GKCGX+E_KuZgI@T4+>ef%++uiAG)UwuqKOr~3&G}Uk{DR+Nz=+Z;V^btiqpkIy1mm2}g#R z0D3zbMyz+mjZhcqFnz3>Z)R0cj{td+Bo2?TqvRm33zNhvwg<(R8o7V`pqWhVn!?m? zSsQ&eZIy^I)PaN_JeP~S`S~zm&(ITW?$*t9TL9{fPSy~DzGrlixc-W*ru1MMBCb(& z@-88jtTqIihgSgYiDrO5#o9|?LdAC*g!CXbLeMxyd4MC_*ljdwM0ijrhZBX2$|G9% zXp6=mJkgR+$Saaz&m-G{t~{bFfwB<-ei6nC?X@)0g4E2LstQ3hA=D?EHDZC_F$-a-Tk}UN(boA zok6H7JBtjK9t9D1{?ePpSHt)tW+1-4HiG@kl5s0rhS`%!!64H>UqnOg1bCkwz6ceC z8tyEFo@F5D9hB*x?*y`~NWag>Zr(PVd>(L8=M7i>R~O)%7&naUp^#J%9(9CM^PPU5 zI#Vf%`~Rdth0kaj+rM$HA)I_Vk`P@}0v$mozmmPlcVmoX>SdxM9S-NilQ#zs_&(UT zH`$RbKzAC7@BUNF*2#Hw1T#t?Q4JU2Uc>xg4Y2xhZ!~4PdMTGtk#i?K@XU+mWmoH! z#I+eJU@1cR=pxjxKJm6_!O0uYd+s+b-NE!%EP>nwmp|utNkn#cQOmc;ba<7Nk=3O; z*5n@`gE#ul{Tg`ovi@7-i|(54 zyRYjnyT$+f+#;FX(~NJueFGm0{*cQXu0-{1`+IS!0w`CaA#x@v|LGy@7Yb| zVa7yr`n1{2X|Q={$D_HmGxIc+%DSrKpG$m0Zm-$+47c`0K{13wH}7KsTbTq3zn$Qd z=ol#+y#S zG8Uk5Ya4W3w!i$4bx|j$pkT@MEBAq$^o8gHH)You{eGq(b=d4eFynxpSp$W~JN0Ps&(VDA-V};B zMp!^Uh0^z>J3Ov`q1f;H!~aEH#PK%V$NegU`4*%KVcP>LWB<+6%}}*>y#Gx;uf}9m z{P)PI&j!oQ=ZJUcuI}O;=Q8aRyPpuS@b?kTxU~%*K2I7LYR;e!!&O3RSHRihpV6^! z7n5+*=tqp^6%%<7)k|0r6SL-yEvQGRTZ!it;nl79wird^f{Er>N4TMvpbL%FoKEZ> zfM(F^jF2a>iaws>z8eh;>pb{9^ch@<1p_oXW=MRiBr)RUPH(mp=5n%scy^eGv1r!t zh8QRYPzjUGFGama=K%>HfVH%6-^xE5X&wzla1kKj^2x=mD?GgURH0|)&&F0x2WuH ztLsY7fBvC$ewK2Lga_>aSM6{m9Py1NZ_S( zUivm}QS3>MJ^Gw{3{TvjtE-%x`SF9#C!NDDaV-Y&L&R^`k8gq#%t~kZHmCbLO z?JQZ;mfaD$K0gT7Q0OjgZoPBI{&U-YSa@8l{(H~H0uttou+&p$cPWLZe)zOY5zQ0 zDWJXrMe5m*=UDvk$Dh+@&96FP1_%e(VHYQ4#IQQB*MZ!EHPi;b<(emTMUWN2;Bb*p zW<;*ChV7fwo9;BuuWq${+c-H+ass zU&zB?DKKkJS2Wp}Il*`MuhZ%pF~gH+4j|rHn-)XSkh@5$!cAB(K5){~fjoLKUVVE< zqzUabd9qFO{+EGEKr?Mo0&AH+TkUgtYPtLp5Ez`M957cWdonKwj%FUzaA)j+V%M5} z&3q|IJ{Fv|QBa})-f^zAYySQyHnscI9}~V2lXl&`MH1|CuH7hBzNnO37rh1y5`@B4 z3WRmc%E(jrLfazL;+)NwL(=>Yk=sLI^32Ok`)Yr;45wJp|CH8ooGkwmoW+0r!pq(H zt#-UE_fX5rJ*B9h{Z6@`-b~*5Yh<)1Cs8kN%*aW*qg~P0C@nYV9d~WzqvVgR%lJ^? zBxBzOW|$;7B)&P&5@)nhX;}cY%y?V9U(yonp6!ZK+%~_~1+(#U+xFO_%zk{bmXS}4 zitif^A<2De&rgk}E6XzzH)tbr8!ms zTI<7WkWoM4>t~BkISWDC1IXI!h4f%3{|r|sKb>r zoY$5orEy08I`|r3!rR*lY|NntBXy@DLmT|UQIFLRc%Sx(Vpi>s2)*#9W%LfWls3-mMbx@h{82Mpg0i^Gwd-r>B?RGsku%UcUYM+`yXb^W1Yg5DrRl!|p-l z&ntQ&lmTS{^|W?e_GOwHzC%{Q;A)n#90}7#P-Ul`fpTG6RjdOj8%9Qh9)i*x9Dnw# z36YA7+Or>7rVfma9KxNy;;9l9&{lpb+dnqp$Ds#j@G9_z)b3eHvZ_DonhwnswC+ry zk|Lmen0CSw7qPZEDx&*yCStq5q{L{n)_<)jfJq^w(~t$nT^X4}IaFS$QaCPF{BYYX zu{jqpp}u+4M%Y7dKdS;5Aq+No{ZYkDE*&3}j14QW;IHmX{Rk~l{Cnl-a!=g?}MXifauHdN)iGwc4{iC@CQ8+u!` z&LujALutSb+W05VGbJLG6pr*|nkAnFxLTK3Ad2xCp^iaw>@Ha216mz%02Ym0i5lbDc^rj&J)R>-LAv_I z+2_7I2|21fsML#m(~S{|G*}r%E<|2yYW?w1Sjlm=yvV^ueO)z@$~?Ghh8DR_0t0Q> z7C-tv!!wbif2v8=K~txTz61SArYU&D;oI5~LNh%G-oW%Plt@gU(|k;b&WAnd{`uvF zLWY0516){b{LnSRZR-0C3oKlSM>E@sjth_zxR;^4F3QyVOpoHHoC?90SYQwS#|nv#CD5+j z{FreMHrq~#U#=W(jU(CuDYUKs9t4EBc{*(bliHfkqUEf!K08_G*SR8x#ab-K8D zUUC9;@e>EwUf$j3H0KbKdd5u41oCJOaNJGWF-%M76h92S(YOcJIqP5qqQ)auhIezlc#b--uyMo>S9gGWUjdgK=-}&FF|247p zq*lguepg-*PHvK5&21y8rhh!KLg8PAqrU)qwQn1J^e8_uABUXTQZ$zvReX}a5_kOV z(cey7Ab)-nwg3)+tu6~wt^Yg#&RM}#PyS4ryD=^Wrh4#)2>I9DqXS(#F4>#bNKi@F zwkK;4hy{L<;(sLX`%~GfO0=Lq`>B{4?&9|KYpc*_!NK(jWeAOmXSDv1 zC|@o^y~Ytqzz2>+3{L&WvKlnIbquY|k!Yzp&&gSyaK@Ji`E?z>)$_H@{HUM~e6k;- zmy>APntT7+*`~M2`?uo~ww+BlnBOyR(!VDA19~Rg1*E&E<4Wv+pUlKlbGg7_{-#o- z)yf&~-QT-ifrW|;nd{_-UXjW@gBFu4L`~B6R&h79m z%?jsgQ17|tHh@P21(WR8x7&i}`nOqN4BFOYtFr3IU~2ZDAQ8}+zlU|gfTy8fkuh)6 zN+Bg-mB~mWyN^A4%J8xjxs>)&A4623&2VN9#}i`{&iT@}bYIQ@?$B`X<$g`;Qc3b5 zZJN@8Vktlu2*dK?IPW)cRE^cobT@!lZC24u=jXjy{Mg((4vb;Dw_f{mg9Kilxw5XH zmk!Ei8yNp`@`NiUM7qFl=-UKG$HvHO11+@S?DR{C?8ZBSVeGgF+P0uK0iMM!*Ur3}}!5wvmu zTf^)<+7nh-8Mq+^rN&!!1(gJoW}uLX^pFH0HE_<16Q(TZ!i%0mn@_Ey@&};L=--mv z9`1aupfovyqPlS1Wxux`w@92Bdr+S6MII zJeiSpr6Grc`PbgH?vqoXN=INe?1PD_CdUMcM;TV;Ek*tszxOQ>NFQzz;OB=c6vOWC zA$6QxNwvNR=$ySH22M5qVYu@Cojfd_=lAK&=KOFBSnvS&`pCH<*|A?ZrksAbCB1K= zKMxrV1)=aBBiW$wGUy$*0SU?2f4B)%tS?^f5<(gUz!`=`3&ClDgW6Rr4rAw-rQ0K33;=?=bdQLJ3Lv)1538L)C< zaQB6BVA8?&e)YP}+V>T}nt)E3nAJhnusMPw%^R(L$cAj~b~w>u98gLefTKqXTLaV3 zG<5Q?#NefxRt<7i(Knpi!@$AAu9y*}ZvD*33?Q!KEC@V|9FKg>BaCq#-u*mKwMlhJ zJ+S;#zH!c*#yiIGg`YT8!M8@_-k1;czO-q!WIyP+qBCJZSBQdC9&)c<_D7xLI>F}+ zEW8gTA${7S5pylzf zkTAnh?u%?v+xO?OMVQ977B^5_Tx1aF!c(mCF$}LJivyvY3`r_2Bun?lkA9negrHwHy>e#bNw~hN=PaaOh4-vlJ8FdgWR+8_~l6-ir z1Rrg=_uR`K*ga6Fgy~MXObJHILj*&}UfRfwO98erXQ`NE8aLRw*PJb(B*%g`_@i2^ zDVAxe4Ts%isL*NGob6*zko(?3O zppbd$!#SHO4{ePyytV!Lix$N4fOBJ70Nmd^n1)mQkS2ykA;1yFst`LSMc|^zdMYdnr}1o|63p1 zTY5HgyeRw?euS_I)K!`{D~G1I=AzNL8&_h9{Gm;w<-ic7a5a4Pb(-rAq`#x{9REsS zbp*O?y;+?xntxSeywV;U!Z*XwhfhO9jFh0$nfJkguV?t${Qs!Lf?r0yPFvI4#U!{h zPD4el?8`K3*vk@YnVDvQ(2SfJc)9mS^q-Ax;w9jLOeNSP+bVF+!k@2Vdqdx-N1;s7 zS)MhAI1jh<)S!29t;F+9N*H62YvNQ)@YR@?H?CHFDo8y0xm#ePlx#4jg4@Y?_9)DxiJr4}cmv~KWK48A2vpy=t>rTK4s91flD=Oi(6W8R zd_H4a5oRQ6XT|H!8)#2AuFc(XV=1s*`WYdlC5n$eK+pRjr1d&Yu7E>Ucm7Cj5WE{-bKim#^QKxkV2DvN@Vnj`x@8COJxC>x zOK=)!G>LRxQSWQbpO_vwvX&fJr8H3v9LR#Q5m0kv0mn3w{jgDq9NOuy&n97BX>ktn zTw}pywyHtfPaUVGJCi4MmDcu}w+Uwp$zI-Rxx9ika(j8aPI-(TYgWf8Kts-6J6jf> zxke}(BbpRpxFu~w6U&xaNhgPfvl6G=w^$k)5ld0S$@0at!33v)O*72T6*mriT|87$ z-e-N`ro?xmq5ozx`>E}qZB5FI9&Y~cRqLZ)at?$ZE*G>7V&`SSi6^8E}zh4L#EPCe`@Z$swyo%L4p)La09A^U2yY3wCQG*K2Ww zaWV(94Z$;lcM@aVhAFr!PxT^fez8supRA}k|Dbj9NNb>lCqt9arX$mh-b_1we`{5D zk-mOtHP$U>M6E*s%<-b~d0!N7VE`7P9B??EM8Z(Di4=bQL)#k{q8m~y+e+OTGfSF> ztDzO^6oc{HVkFO# zUXXDh`uNlS*wDTFft%CY?PLTub&4KpTx~w^(?`1lCP(j#T$CHhjQ4v|>ie_mJqIgB zSUFr#{bRT}V*Rx1%Gvh?B^U3#R%IyrUeY$SVAd51bBE_YfEUs9D-NBtn+t?&RhbTz zuWz^&#~I~NIWIdMIBiI@#EP-oOtPElWM&wyB$(j}4!$3(r~g>RhzrPuqqjL8qKYTa zEr&27Q7#ymunx>o@;>n%jpEdmkV7XZTzZp53q^b4ig&RTx$67muVsZzw0xZ0EuK=N z2ctPYSRX)#WibgGe}bA?`;FY$GD8V#;ins0%+r*&frATTYl4=E12V74PE<_s*fv3~ zjjN$V8###?W|G{fQSprnoLo7-YlG)2$my513!An|Ap>X&@#Tu|K6>EWNu0atv$Q>^ z#$!IDz7?|V| zoesTU9a3S(sQKbgoeSz*Wj0&@V!Gea&PBl~=HkAmk!49Lh3?Jla&LFA4axfA9`H>5t?Z*sGxJr}4a^lH6_(%B$Pe@Z)L=& zi+kbX!)#bOPoj+c4qenLKhCwqt$n(fH;eBejbZj?Tf%5%IU7vN(f~|wLQk|rC?!8u z1lyI>sU#cJH`ZAG1~@1+?f52@iA@5hMgAVl5MfQwcsV57dihkp2NLCwV{YJoTi)o5 zC^}b)ygI;!$_wpW-sg@TA*==ipQgBzo|2E@sxOU*ZO2>GlyXh{FxkhK~xXDd|-qP{AwFhD}HDE%U zF3$~aNIh6d5$9kl2jzE&X8=Am1FBIu_eNhd35Kvy1RQlPJ7mn zVL>W}RH0{*WEtk_pmxN~NSXd#)^ak>Q=}N@IK|`?+L5Q7_W#|y2^&m5L0puNw{e5u z27gqz@SlygTpIf4Y6DKz1aAXEb^1XR67Oj=|0+Q03?0>Yqa$Z7&L$j38o7zlfg5H~ z65IY3{g=-RA$4>ZKGpw}H*C9uAtNY)&ZF;{QLv%pphU+|l<~xzT};F{(&8r2L%@v% z*9mmb{CpWNrYeS=;_fk86EMgTBf(uF{AeRM7kr|W($uJ!lM41m@<^<2s6+w^#RYT7 z$dQU&Lnso%e&lPu&>Tc-OsqGA`8~8!4=hYb(3bmxRtG&gYl|u7Af&0q)s*Il=_TkRY^F=F;NR4#`$XC0 z&gT;x-RaFyk12ts;d5^M2NuswGZTXml&FL*(2l@f7FZSd1G7zzz#-6$#*)T-UARCb zb9GdR^4gJtV#vD&3U3UQy;!&VZjh#!*=iu4WEDbG4@yqBwUs;k zJ-y~}hKokF2H54me=Zsdg4`sTn5sLI%?Y%9m@gWpPv~-5bs0pkn93uDcQ)2Me#C}5 ziO5a-$qtK6$S#CVXv~|Hpm@z(6`1`@G2wM~;7~%E2g9=Y466bVBm->Pho$IlH~!9i zT2qw-YjgEiS3K?lLp@Pvcspv7bH>$6Wpq@9K| z!LCoTDvV!(?==tmH9xPR+OX@Y_5U_o|HDs=9@;_SD;lX&5eu7)?7p6bBGZVNis@~~ z-8G#uGy&aLY%%Ef0C;)oUk8BEm^L5vlGr* z_KDqlQHLeU03=_js08Fv&f1F- z<$&Y;zc<)LPY5#Xu%kk+G9Z#oun_O-7j?qv`OcHRZ*_=NzD13^x8Iy%!h9lNUg2W4 zEWWb^3B3{Ic6OaroBTN1fjoIXCQ85+W@qYG7bzZT4Vg8OmS&pP^|DLFQW8c#p@w zwHWiQDhA;4-k4_@Ks8Oakh~#)!h_M$9r^@w2`XFYmHNi+Xz1#HD?!D7SQT|L4esMCrxWAZzV!?)t$+hi=uDGg2Gh)i**|x0b|L5 zi_eb7iz-EuWNM|Add8PWyG~laSR{}6sG4mG7+eEJ{yDzytxUp5-pC@eZF1D`zof_z87vTs4$IYx3Zam#;Z>3FYn~yO&lBeL@qpiE2m&AIsg6;{Ko0 z=%asjzT+Z5V7!%ypdpeXJ@_L^9WoPTh^j*;TC@Y2rqEyk$_`Pu4Rm3puqyak-TMUo z9%LAhjr6I}t7tRdGmc*tCLT?GW)TJrB4um!?JQ=9@s- z2=WF*bN_!OH;HCrOe;pZYP(`usXGGH6Po;;k*l5^6h- zF@wfx$~_RsVbWPe$kk{V&*@?!(-QNM-t1nFWGj9VqOBtyB#rdoeH6s-(|}o}M^j9~ z8>Nqnq)60T7TfUwZDg14RRNlc;GH;(&ZlW0Dqn<0BHxWxTMIrJ^A#NeA+kEbd`wlM z3F$NKNHZ+j8Msxal#ZnD^eeV20op2>w zhXL-gS*L%9GwkJ)e!|!Lxf&)GPIW|$UPDg33~+QO?Q9M#&?zYcQfMPG9y_0f%x? zTe=(OXJ;rpjhoI2h^zapeA8tCAI`fc@dE$ESp*D{W;g_QQhJ~(l8To9a6?Fw2Yp&? zEyX>7gOsUvIo1L0>VZEB_#ctNoqoVxTe-$C*YaGy z2Y+YU2@c$qG^W?8jbv2mO4NJqiJ4-}_nb?CxEC>I>x(8!pK3n&hgiX0CdNs-c_iHc1}dRj*-5asiDyxrYKx^?N#;wtz|9(P8e4 z{;NuzwRTGU1ESK72Qn5DJ#BI>!%t(7m^V(H`_LV|2X(kz8G*w)hT>-Eb-%W3sD$vD zvsb5u$#k{7#Gwnjm!Fxt^LfVV?hG4pXnN@@o$Mot5={T}lUWic7G1PC{`)Hy`}7H~ zH1=S=q3*rZku!D0UIIK+I-dCTJOZXp`qs&Cued)q@SA(0@5r82?)YL8)vbYK)7!ku z9fRVXt%M33V&KjKZaX@`E)t=))Ve~lp#%1<2j8A-4BE(a)bl2(JW&}ihCM6O@l{|- z`QJOra&8P82oKd233Il@cuD$p-uKa#(+Z$C@LCD8XXkLbTBg6wlQmRBBXOZ>o(0C=pKv!dev#kT76Vu9om76bgT#cFX7MzTj#%oeRaiD>bpW5{%o$WFL8 z^?ugktfm>{&vbOuMsU>?UdQw=EFw+DRFc^=Yq%@*;QJ<%6habhq(^;Y>fW;MD3mDx z2KFwd`saSA z*qwF}u_x5FZRY=dif8-31yy-4uD6SMu=k({BJ_t z&b}Pr@O<U0?62JKD`=JO zf-~%*ll*cV@kqK0g`uz49RtN4OjKoMDbq?317q`EK9t4LK61;XLX@-Dfgw)LLNn7W za)Lb9RUetC$Yma2hD|LWV?Ucin^)J=gnx!g5uE0&W@3lmPr*H3Jr;o? z4wkdGa$kBdJ}jB^amKuXx5%@{r5NNrbA}UGg_j$t?;MIv_S|c9D55(v@aZR=<0QQH z<1O8~5hq*kJ%>i;72oQsV+nDmTri(MJuePH{oKE`|EE=cX12fL+3UhJbql;GBBgra5#UD&G!WcA-d0L-8Vct;c&i{bE2KW~`J|RT1!$kW(rr*g* zcO0> z@XK3yA96G+Iew|5@3CSoqDYzCMMS_K0pg;Sc2|{-oU`_ctX`3N6YT&;*FQV=`;Chd zy+bcDGi{;m{Myesh})Vsr=2EWMsOI>(03wmz3)H08BEIOqU`G@oWaQwGQJRsJ*?4a z^!$gykt2mZ2SU%BVBUVIBXy*+i;aA@9yuu5#;EPY;Od~%BA{&t#@*r^3A>Qn)%`mm@qSlg^l#$W zy6j~1y&qDNi`gQST@98-|F>o1GeW+eXWF83{nqii+!o32A*lBXDv%u+|)RWm+L} zEF*BTt(iOTe5H|34Bp`*Nx?`E{41dkTxun>*QnwwNa@!JUxTA%2@FRE&H0X?v4AUD zHrbB+;kyM}hOsT^m;Bk&uG%z5%xXe{HqniAL+45myer+395*G5~m2Q z8Td4rYmK7isW{kyx!1I0ihvA-Nv=6w-2%b>cET%m*k`9mwnPst+J@+TKhOnv?cW&~ z$6QjR@aGQA)I?1xmv5EbmLG8mKwvB_Cx_f$b{S1tdX9%LXVZ15yang^RB&6jc_jkc zMD1`j+(hPY&M~sBM)r*6pgdTtjxpoR>f_#B+!$w2DnsT|r`-Gk za%Bgb6w3c%cd7NQtdpze$y=VQtLP(K8DXp5bk>T|CO#1mU5V{>=eSB>LGmlp9tObp zBs-Kazmwy*6P%GE17ONi!bU%tp z!x6L*i(r9-6*obytMCX9m6{rozdth&a1uWJ2u0T%#%kjTo64mcgKSfv|wTk zr~H7s2K4N#_+OT;{Bo|&gP(c>k^P#xIbkQ$jf45&XVMb|ZBshcGBLAC zd{Z@2F{&Ozw9XC>xzdQLggm1q=g?y~>f+^5wkXD*iE}K3WC-g(-OaR~)V=9s2bHyg z4QzrcW9K%-0Gprf64*7yiL^Cv!#2{VJc1f__)4ah8$SX$!RC4Fgx#;@-!Uj9IXBXD z`l79({aXLb?N_`|ZrO@3Cn_OcsW(grxi zg6?QGL5*>RIM?m;fBy@h6N?L<=~B5j$7~odcei!KqWW zyhn=jO`N#IGz)RIzm!&WWm&Z5ngS9bZ}262l25f^`TmrlkWbwiwf&W~Ht2 zW9T5#6;1U{qg?^*_}lyk8}s!(THlMhph5UFkbaa^fqIYr_Wm$%xA`O$kDOp@x2$9^C&#q z^~j~k^xJ&h2?yosXY~@42qEfJ23Kw3O50ER_(3b|2AX-mVE;P4l;jS@On@#j5=oku zMn|<5#o*9$8KW;R4#wGysA0D9zsI7KU|VyBD`*bZh8c&~yJIgP`a&iB_XB}M8al|K zx0C8OCyij=tVxOGl!kSi{73HcgN7YL$lXl|!JdRy8DFKZ5u687=moEM8hE*n=%cz< zZx<_1xRXwkgA(zDD00WqKicdp>4^#;OH?;z(mezXY#Al>AnXu9A6z!X761t<9p7-R zj3@LFG~)tc*(3m~lAR&SMM1gt$Jj+C6XihVX;l0G%btf5>@hl7LtbV|7?)Uy?`xn9 z@~>lb5Lzh@5+EA(4CRO!b`WnPJ4ul%Bgk>=y3|0XZ;f#DGD6OUyh+4|_*FcSP_o$Y zd7zr^8i@dB)+Z+kdG4eG|IC$A4lM|7$jeer_G9Q8F2$fW)BoEO7lg&Yi0+p`9Ga47 z^+4o`M9ht9TXSsG)eIV|6g9?uEYu&m$)VL-_;zMoh25A%NKVD33;ljvd`SBs1LVk_6lw?zId!By6mmvLej=Dr2uXK`iWVXxgt|HcFAC$isO}lUCM>|E zSAocj+=33#mZssVQ~Z@_3O{m}N{vohJ|a3RTmQEg&R8(H793H?Ci6V3_?3j$?o<2b zHenCLXav?)(6bBQNSGTBC(j7IsMylJ+`CodFOky^++0Mrn%1r9C?9oH+cQ9RA^i2*(;N9)2*SQBrEj=un@X|x#7+* zZwvf_KGUa>2TMN!UNH%_z;k8t9_WE5>CySLNFi)D{vBP}XV$PWHtU7)#M{O|8R4Kk zAQhd98ou0L_O6RHh)a%Vx){psoZhBv^tDZMfpZ4cc=tTw4Q0S9Gke)zeu_7otrNB;YSF&Z7|ui z@rUu_vs=7Lo4v}>x(WZ(kIvJPK1cb^W z)KqV$yXTw&`0^90jbN*d%sB%fGm&NtJKSncq}$XSmQ>@3wHSEfiBFauV?v_D#IW_# z11%>VPcAORg2l#0zorW|z~(V1JD#*4D9`b`Y{;YP&TBzp$XxqyHEff9-Fu}Y<2{(H zidMUG`4m{1x#W~LuUN(lg3(GeJ6`a$KfO(tohB*x3FQF5opGEI2`PiJ26}Zb$f|6a zJ#q$M^P4Nvx}UQL7X$ZTRvRxl@Z5TpPQfY15HS$dfL*OYTxVf0_UmwMyr6bCmz+gL z@>?`tv;*6eh81HIMEkLEv@~=V-;S&Snku%Vr_gxO&XCi`(&F(e9;7bXa#76NEi53Y zYX$vqY+weR2IQn3oY_GtM{GrB>q?^LD8uEkQ8jHHoPwAUG>tCuNmkf+8h-acRd z$7x@^(HNQsxO1?XzyYJ#B&zewBE?I4Vh7`vL)*Jz&3o6^4ysl{?uOQ-5??ruTM0Sr zuymK7>{;m!oLnZ|0}(^3`8m;+@zus!=l^>^rcI6tRxx=vd+dW;ILW9$9&`Y;M+BcXf>EoK%*;m@Ft9NaN-Nct_kVA|{IpfjkjsJBG1DB7gD6G8rF_De7}h6vNY3(YZbtU3?|#_pIHOQl zJz;}!GSY$oHhmnSYAzDPV8UK>M>6J5$6yl8rXJHxD0&Sgapg;at;{eS?IYSEQ?xsu z8``Te!;O|CuL~$p%>A)Nn3?rNXV#i=;(Ez|PdJK&4zmy~`h_sZVxWDzAb}g=Na|LI z9ABY*$X5qDy~+UHt6{g1! z2vGCA8-lz*Sjnm(=2uG5?a}Cu?}W24$L3ENgU!9Y0iUNc9>hF%A?MExZefjoUU7-} zRNtJOW_|X`A^5VHlPr66(2o#OwNBV8jjQmWg{V}Xg)&A^x&WbMrEHzK3*X9k(P30l z1S(LSBJTD2WzBTT^tIO(A%1R$PUC6s(Q6SAx{iES4%JDE(EPSPBQOU*!XMuU<3pP> z$=(63IA8TtyX5pqjQn;%Olvb(;6z;qp66D+v231yIT8Nnr^g-|H}j~y=yKU@c&(i* zRXovr>YEdf{hnZ(*nMho%N+XEn&rMii0Z1A8|Qsbu6t0K|LT-ptDM}CAJZwcVk)of z%OT^m$Ad$=PM@zrG{o4^nKo**@IXrpalgdi5T)DK-nbS%D$fJ#qpIE-MSj1*+%7yf z-G9Nwcl2e==iJ-a)Pts7qvwH#v;wUM z4{6_ROCYOHW>a9%aG@E8axjBC|jd5>%ykF z(LOB?^$`B`HT=9~*E{IO_wueUh7S3iR-(CJ?mAu0 zTeuLycCILpGNeOP=X-e97ot8Qp_1Q!tABjPCgj%VfyXlYI@*!r$MVu zU72=6-@T&dkyKrOvU7rVIJGFrY^!cGu`Ov}n{M=##%et;>CXz*_&C?cil?IMC>N>? zOwA2X$QrqvX4gI3&HBKal_XO%)J+B7df`!H=%k5h=Pc^elC~i0IGsqwV?zFfd)Y`)0541LH(B+?mA3$y73=rTJ1m4 za)&l)C~oF*HU_fOCR))Czs+SFdcJM=Ug^2cbE_*nwYNF)zIpadOE~o%J~bW=PMO6f z|0`ICZ^XJ_Zqqbiw+KzDXj8EotQ*r3HlHN6*aAEVj{N;G``Yz+t%MiD1%7Iq^~0Wa zx?s#Q_iE6x;b=Lq9Z!oyjILdYNToj;uBrc5n*2>q)lximw3FO%XI;X2aTS; z&q{X6jnmmWas1c21OQBxBeQ8aO5Q|sadwQV-YtLKSFPTCf&j0D3kyed84Fd73i7yC zeD<^Js_B83;mLc)Io4pDpm1rRf}BeGu9=98ibb|eJ*Jn?{hl!MR?~trtJLweGsk#> zIyD*`?8y)CZ1_CqH3LL>E2MkNrf*4qtRFdGS2q|jebwsS7qiePiY#(VB=aL7JC(J) z@0ydgE?gU9FEzv%S;6Lcs`K2}@ei-%EXbrI6iVx&HF+?+A8JGhxkCxb zA^Z<$RQ@bZE=SO1=9j?e;=xdVM`-<(Ng3h1T%;h401r{#mYh@^$1H61$QBUl+w+Zx0?FYtdNQJU4tWn}|#9 ztNLAQ;ey!>`EP8wSdno~OYh5xJOBt7IT&L<@Ozt{Zm6tYM`en=N=q=GLTb78*$Fv)m!j<{>#Ae z-ENVg>GbR02Hi*vXVO;n&YRpcQtWSNF}8T?dG5MvclHz;D)Y!`Z*meaD_PW%(^mjxHCHZ4miql?$g<-YlKd4>{x;-Ij!{`KDm< zePF?v`Q^xb{FAEQzl{s?|8(m1x!SM2EL!q-zNd-pMv5eF05t?D^4wx2IUB_3rP+IB zJ60MqZXEFmBfn*o1!yN{E<9W!C5e`Vc)|O2ZxVdJ5W?RFqL`~ejsJew7YC;@WvIMg zHNSt2@J|V!9f+JT8_XO2apEexL2*grr&AQ`l%Zs1OT^Lc!r@$l7k7N0>8SoGdl{oS zXm{|fGMP!!=nYEUo9HNmigg~ci}^rdkf2gbCh*$xA$zY1b?o7BqoH_nJ1=5hbN~44 z!}~tbtCc!%;qHfqs!m=(!of8pG|RbSh6oA)QwBJ~O4Jv$YGzuo z@GX=zW47Ms;sISn8%*6p?+QPz0olbP;J1fg5<(F~Kza)*y@Ql|;a%(dHEUL8Zf4G$ zyZ1gb_wHL5*d6%#Q>uWzRKaWDG2eVX@ZBH1%$o@$tu?u5@4}cu^i0~dUb96go+fFHvr}r0j?UG<5%wCn z1&dc;V1h#mK)l^f7^5fla|LLg?z^x^8rE$7qac@~9!X@Y>a{;1ySQu2H1=v_upKT(#COm`~I^DCXf!H_Azs!uZfp*`M#H)!_NlWBcUvUNe5Y zW-N#zDV1yQ`7P21w7h3|JT-pYk;EVRI+uj033apdmk%TgtE)U7YZ*>CRc;|=Zd}CV zZL@=0JOfdu6ZI=ai`%2bBYT-A(|tL$U))C?u0C1g`ng_L6PrcmwB;SI-5O%(`03}? zSf)GPUxfaL48}-}as)A_no_S8)m1kJ&Is`RHPAdcOJX3%iYL(@(MbIJ)ik&NFt#O4 z=_w)}^XXShtILMgG%4K&M2lqW)%IgM2X)oi-W2*-)_s~+BletmkSz?rP>~H?YNe5j zR_!o7*SnR{d!JCzd=EFB+E4KeA%{*bERgv7i1@UnLT)@uTadCN{@+g6(0DD^(X;so zWyMh7`3rgL&hjnT1JnG1%2UonK#P60!dNzBcglaP01a@QYk>)6=u6r1k?`L;@U_nr zsvd6F2u8LEoK*}>Z9Ax+pC`fdV{;k>yLm%ewa#Nj-5Fp@#h^RLH}}AtsAtnw;puYR zKbro$591G(^%h-@XI|YJD=AhKibpX~Mptwji}c%)3??G3dJF~0q;8|g+0IF|23*T! z&;#`7ouS6f3^d^E?EFQY{&&!JhJeEzvCGaA8KOUysdWR3i?2x2}u7aAc{q`ZBhNgxbgK&rY*`{1<3e~h2oOVcFa zC8emtpl!P9y`Hx|E>2l78qA_HP~|b3>^7|$IgY*ADK$`X43P^o8Ga)#-AS>naJH(L zsklfyu8>N)hIUC8+;+5AGTLvh?qh3ZI(jx@SzQ?XDR0@EcHq7dc?9Kco(gISCg#=9 z5pE+f%#fi5C!;;Nx$;xzcDOa{0;*xsgLhu{(|e6Eytve^vXI3M+<4RGa^$m;$=P}C?oP4Q?sr(<2i{m)<&`o`Q>#j6L;kN&&Vywk3Ef6tC!a}~VSUBY2efE;e8OfR0hRaeb=45JOOn zACeHf56pA7nhUTu3bTvx#qyfJt#O?DV5*y3FDAZ#~`f4wDu8W8AEZP)7g?9VW{FqQLnf0EnK0i%U8 z5Q0ON8(>(F8Z-0ph#~Nmr3OOg)+9Xv^$Sx zA&nLQFp8E4(u<^;09Z?8_JxSeJp2Up$EZ1iD5VN>?GOC7qMJO3w*x3y4n;Y53Zo}1 z*JQJGuVh};+yM0)&G&;m$JFJ{yw9H*Iz?7f=B1L|q5TV0UdFk7egA)zs%=bW58i`T z)0&i*NA_2~wFdvD-H%d?q=Ov^U$Oqa7F-+hSRn^N*4BSS5G$Wi)thdzKFBPu5~550 zF0#E;Sb%)`Xtzr+Gg=yZu4ndyrTYhi7^8$2X6UN36UcNf~uk1*Ghq zQ?%rZUgtgb@nvi`v&i=D4nwbG)6B3LNbEI0ybaC=F3%Og%Xm@$ettZSj^)(HMN!i^ zYG|-3UGBSd^-SG_e@9Me;p4}TAM!(U;i%B&=RJBF1;Abh8uZTa}VbkH*Jsk!X2#5s`;=X_jgt$Cl9rxA8w0(!y)3~ayzoXkc>A2 zE$=d3y(`*aGs?QolVpJFnKYr-N{KeX`+-D;mWNa2QIXPtTJK0`3EncX$2${dAf9Uw zgb2GBXRPJpg^5bH$6HE~le%pX+NSI8KRlT|-$&Qd{^uPeYg`>x$~7m#eX_Jm_9a^F9!{`9>jkwoc}MiNYx`WXWTuw{H3>7l=ywE&}UX;XU#nLp4jCv!sDzboZ0i! z5tpaRmIn*RoU?hyEqrE=mNLad&VBju?$5kN?~4Aqk;r!#caEX19B^*%1*&6e#eKre7Y zlg)R2e!}%Db*oID4%%t!&2VM`f}c$6gZ_B-=v~yjT>FkhSX|RmLaKv}U;yg3QlzEb z^&P@(e0#w+6New(1|3i{Uwy^Z2s@4ug_E5qOM+CdlK-<=_v#|1bk9DU_<(mIHD(~p zEVlUJhk{a3V!^+}s%H^WDS;*~(e+=kaO)laC;ipjyzcRk4J zF_$07m&4NRlYLCogXDVhd!|{=5}L|U^UBdol}WIj4^g@_3f_C@Z8huthP~Z@@pNXj zZ9hFTge%tFuImlExW%QrjHj8N|NeXlKl1JsDF$7&Nh!K2>cM^r$y7D94Crnrf%I`> z!2ui6zsLR#`w(Wj^Zx5moCe3vCMg!7=bszNvY<-VEg3!L5s_YSDP5rkQ~V1LNO6YX ztzP+P+hu+W8%8bAC%IcNQy~$lh&$vL#`vt5y84HR(>md^{3o73(2)!HxI8053GDuBYQS&f|Fmk;B4t-drNqP|);xOZ49J}O@x zey8#7-ti|zsfDxFAB#gMJisbEmz5u@xL3>cqmuZ+u2YPLdsf|Cb&NF z^_YuZld~YGUZ;l-q-tcPeqLX!C=*+-gJ%)q2ED1M{azmi3~>e z=I!)-+M&UpzE6WeS+`Hh6dHr zn>o58?XJI*lFjQ&JeKkcNP_j*1ep($PiXU0s6uNwB<|1d=g$c;AKm^8?Jk2^ja>h^ ze)VW>yLpAEKJKm#Nv?c{_O@rh+791pN@s-o+Eqq!Sk^b`Hs++-=P8g!GQTMBK2b&N z1Q`~lG-}Gc_*sCK(6I+%qB22TW>ifyx<85lv4{})L zUVxpqGqhx3glnU&b!!)+rKVDi=nX{<%f%E>wQ>A^jOgVo`+FMp8(d;L?apae-lIEe z4j+R#?fOc#XXgwbm5%g@d9de^n&qbR4aq)rZLdw}L!UM7rPG}p1;IE}< zgzm&|O2fSW7Oi>7Y#S7y|PH+rG}dCND0GgzRq(=z7_=6 znm@_r8&glF+!e89qSzBAy8|Dl^}Q~K?HQ|M+RuR_6l#{cl)dTmLNFJH4=>32Xc(v_EuSbO^{ad8uUj#I5!9_SviCPT7` zo%5Vd4u7K7F(r?gUG8N)Zhdz(b$_pc`&%UCYQpe`76Wimw`o4;&9l}rs|%eQyFDKx zF4-Kk9&k!`RGnI<0t2LXq)nxdYL_|@xZ%|&o9mCKYqF&GI4otJJbEAhI@AUke`P}K z&*GY6f8eASYv?z*#;6?)-@ofHAbxIKO|kq#`>h5R zd@dz}_(H2(0hKLRYnSKzuUCP6sdG_5MIfd2QT`V z%xQQ0Z2HhiqHlF7Y!SLBLnJwUXX|3Q?c}f*wT=|ZZf!CLkkbK|F_6WwF}EjQOf}|q zYT&rfpB1uxZAqRiSR*!`{xL=azR#Mn1tZf-GzYgWmFKMLS;H^-{1e7X7fpvn}05@KfhYHQTR%A5qyNZ4Attqv3&T6 z4rW2nrWTMY65f(WAS(^xbr;)yC`r=;okXng_33YTo*Ix`NKM8W?Cd7PsYZ+S9Yqhc z0r;f@y!7d@&vJYj+%|S5<D=Nbq65|-Yn+syE=%>kd7+lw(%XM!Ok=SAr&YS28nMOHXJQS{nGuYP>+u!| zAD%l6>}kZbe=@TPIQ*FbMp-qlKH`VMVSK2N$3PLeiz5uU_1(d$fMuW27|holWVo$% z%9D{(kwWVF7#fvidOi6|qfLAGkg!+h#^wJ_i8NP=;;$oPi#<+!hwgl49{EPr8&}%? zp=@e#g{oUD(o)E~$N#YYGbtIID8Bk#_AclZ6xs1S*woU8nJ0YLq=4}z>Q2)Zixz15 zrKH7Gh43RWZ2S0fS<|cF8GIhAgK zPh(Kpo>;&w`y3GJ3PLd09F*7eVE?~`ep^=@@G0Q)QtKtteOF22NYm82QAl~URg={B z2yjrMTqsE5$uB?j1Dt{8m6_0TZE(nz$WdIXHu0Qvhp1{>i)jhe(>ostztWE!#q%fB zIZha!rk1t0d&SbQs@@x}<SK9c!>uIpz$D!h6_h`i>MD4(n0Y?$pvKRgYLpgg3R~g^y9kA1@wXeC%&($ zFpMoFEce^d->sP$7CAj9(QN{e?pQV5yXA4Q1XzSN*XOzL300`)d=N8sP*1HTLE{V* zR~yZf6i`!dx~6>Vw}2JJ>D<>H2@oCUW^_Lr4)jOm{jKWt#jgX_G*->g09TNzGfigcfP(IhcM zJIG<;;X}kWa+luk%lRbPN=l^iMU-S)_f$@(^_x(mrK=Bg1B>+L7H^`$%VuQ+hsK0A zf8{=kW7P)#g8qwbwpPyxn1`r~Jd}uQ#p<~0U0VY7Z4INCU>V7cJ#vT-~ z>VVy5B$WjWvc-^GqJjwWh{2=gB|i<28sCP3YUAg(l-94f1Ggmwp>#msoakyzNq1c;xU0A{#7ud zn0+^3YB#WlPk-iLBi?-*aFezdv`H(akIPA+r);(-yhA-m`V_9}e@P1$R8n#v>%vIU zLQ$Zb&uwBF)!ti%A05|7XbqzufSuoyn0IOpC?mj0F=0g{+@;dnJG~{w{Q_!W@_2mk z%Ss_l(|c&Fkx+Ax`Tn~kVjDC8duaDnTOZt`9m$afPXOhC1i(OY7_#Cyi2K_TaYjlu z1Z+1P)3t}z5rzzHw~OY&d(BoVtC>8BD>+g$)DuVpjyXR?=AFsa#q&fLY&#nKn!!~$ zbh1WIH`!^f3}5h|3GuOWd@bOUNlcVv^94-%N0a~iP3_pa=x`D2= zosLn-dxZD*cGh(D_Wrixrc|VxHbMUC$&D9E$>;4hVzWx^w&>tg)z~t(#o+e%&16e1 zsRhk&I}ySYn_Rz_{`l5<`$zMwY_8LfR&&`Gbtk-6Z*_5^BqY4b(uldqsWQY8&b><5 zEdvp$*&i%LpkKbegc+T#zyb4x z9Cl2Sbe*hvGiZCcuwZ~R71MD*@KSMdcu%UFTz;WI>n6sG9cxx`-~Ts7`4T}{P#;V3 zC9Z&#U--m{&T$1Y$xe+cK$w?Kjxuf0g%ep8w;i<#Ww*>6eJ``Dw*@oNx)GdS@ilb;mOt zFzcCe|0=TG)tTS{3h(Jt3m#QBr1u9sDKsHJgfrrl(v9$g&=2;ul~!QG!tF`FQz^+L zi{Fv>IjdQ>Ru2$+5y)W<^#xlzZ|p!hV3tOGG>t&A5ldEvaSDY`Z_751jSCTv8+@!5 zVSOT!`@|CN(I|z;taiK@#&-VPUhrxAt)I7OJ1Zj80PFs2{0{+Rhoj#LoRk%oA&~n~^T#&xE^0C^Kl7XP z{d0?>(f5`-`LB21sol>XZP1W%(yRD@>+$V0sEWQ#VItd`t_sF~j;VcKpL7REVEJ~r zU}`J6sGGzK>7L|cGArsD={7HLt{KP_l8-6vl$v`Y_p*CJ70F0B7F_Ik^UC(fo-0I| zFwhLBg+WNrM_8RQUHaKLIQS^rn*SEVkF>&-9PmA`WPGI#>iJ^uk_7Pb27ly+#gDCmxNyeGo?igWK)44_Y6jWV-7U4A{1_U}-f*(r#bM=&3_SU1D2a~c

    %Q)aY&S=D9s#b=A4)Dwl(Enz;2;(%ebu@uxl^@ymiM zcPv66{Bptwhd6lw$#ftcDMBonko$`~?SGlV!ImMAI>;Vg=WX?DVDay#gMMZ?d6pXR zQiWL@Bo~b(EZ9nH;8CF^nfH6Svr%`1+8# zIh^>KOx+k+S(DNhvXSYEwVT|>7l!t}s~@&myWS_>h5b(ab7;|gk#ZubiQ}F`=#CKV z%tpHGC=e5mfX1tTlr%j+BH>*S#6=E{3(Bq4p=R<&F@pt7>^QR$m%PY3DDvJ~9|Tci z)850x(L%CJWtTwv>db!aV&rHUwdDAZx@SB4RZ%#89&3v^&+O69%zv=#I&sAKUIbP> zr~Lc2*Xip*pgy2mwNqM{6=QVAVPkcF!V7lil}1ZN^Y3Imq*i@s^7i1y4Yssb)bxVF zShP_zoz!!fqoET<*V)n%@4=-O_Q>hw4?ilVMbtgMEpC@;{iGi*I9zWjFvhp$zRV|uj)>2- zW=bh(vVa<^X4=S2v>B~W(s_eGa*}gv%d{CGY%Lsw3cY5ai7svb*zT(&#d&BWl`8<% z!f`sdGGdhrIkVkue>_xknbNJVUiQdl5CU5-H9e?1t`CwB34c-reIB98^RRRMF&xbFv!e1k|WF@-h@oC(Zq?b~ zCz0@Z(@fw<>oUFF=r4_3q7-q4o<14)k#Orf6b(e%SNISwMBAPj-UnZA%{xcMHcdbl z>u*A(nVYiSAd#U@&-IdlQ{~ZdEf75_&EduPdMYl-pASYys2J0perxLfYuzGqh|f_E zJjGM(M)H_=yzy-JBT5p2=Lrw*8o3Kw%B&9DGSh)^*~z1%)H#N4oqbEK_zB|n@qEms z7#{39>%C`?@l9sFw#$As8^CA*@{zsn!ZX}f`h&970ZoS=6M!;@`^0l{UUAN3x$PCm zybInJ#0Wp;VI9$F)Rc_IDo6{zWkfLj!yHCs{0K}$Xg&u?vucIu_@ZwlS9+nL$v3Vc zr+HYfM@~k%xo)9o9Y$RS?j+?S?}7`#rET}+h4M``JxDtGxNE&;M&u-=L_ij^DZ(lr zDMQ$Ztuop<^k1%;crM;#?d$A3U7AJ>v)#soNhlwoU}tDY9pGb8%vvvU90D;a6!p;tIb8SfzBF+lsB zTF*bVEtZYeewQh78j}PDhfEXvZ%#vcR;STAkVuH5#aU^Wdtf;L5`i@tAKucNeucc& z))d$`)=H+Igyn*+h*TCJA{EI0k=!4O{Lg9d118Ktns`0Y(-<5Fc)(Xbm=tQ>7BZ&S zgZVOYL?S=t61G2v>Izo|6OLmEL}#b^3d~X7eu!61{PxPq8<@s zAC|YgF(UspbKMv(A2*D&w771F_XZ7-bRUXY&KTfbES7A;fGOpK)Gu=Xg6RhOx^ zInZQ!4?RyYOsf_U3MVm77@lw`ofj4F;3CU4KHPg7vRiSBw{cO(n%}?sotCF;4!GM zDhi&ipoV3ZBw7vUS+=rFg+1Z1OXRJ7*aS<2qc+0UOBxni=5pPXzkuX@Fe{- zkaEVJw;;Fd0+h0_{i$t^XNA%T2fftmUEo)=7K&Njt;-D;37uE;`HB(rb&{K{0?xz_ z>E99H(TJk^zv)hy{#@#_3DosQ^P)Ii_Tny8$X|AAx`O)3LrVQsH(TDDY8sr4x-oJ{$sn2; z7nZ#xz693UTbZcpmM6B?eP8Vw=>V(dTde6Vmt14e0#w0n;uG|)AQF37M(Y> zab4b6q3O&P<&7RN<_jb5gfHI}5oEOeHIfHWo`a*_7Jcx>`9*5BzmPP7Ew0Tmv(kA- z%849ULdS<%Yuu#&dCPlwF_kwP7Ov{Z%`aggdRaV0)?2V;dF}1*l7%AjNRN6IT(zsmCvE$bQFb z91nCoNa@+U2ky_PJX!LaEz`~FVCqQ=^3@kWwahXaHo7X=%I30_ER@1!0k`FYE@0Wi5TwaKgL1^AVH{awVM!%XpqL)DZ?V&4FH5Gp(BX}Pu zS>xplOb?NuxtD4(ol zw`YE5zGpJ%I1;T@x7hFvXkjltY>u%Co**!Z7I$653qn zQ+$mek4{}~KA}+fRKaqOLKFfMY15mzLmpROBcvaML4tgzJAJ-FFFAiWGoJh_QF^E< zE?Zyer4x%k!WXG4NcCRTt@gXJ9)zveW#A2 zG}d!)+@8-pRFFHGH{RbU4^cpUR!9zW&(s8$#7+L%bRQe6Mp$6aJCR#YSrmhN8|>*P zp4{_6rx48$^vKNxF4m>kdMHA3fXZB&U^1s6ne|;;r%3o;;}>BJnBp=cdJq5d`<^Mp z>uJSazns^n{nn#7{u+cF?e<-LRQhBmNS<7*D`|^?NFvBfnF{?@fijBqCPLz+{fKy8 zbE()c`i@Q6tK2)CGN!3*e^7qn%R_qkq{+2pIzPOf-MHjBy1j6&Aa!DHI#RiKu`&9g zypu{#=CRLaqoGa1FU#e~P}d}4MXhya`(7Z5hFIan^4R_~cyCN&(uN$gQD-eFm%RB3 z{Pz8UjA=X6EMk)~u4J`8u;L7oJ}~afZK<;k9>%SW6~OE&!IO&P#+oYa3;V>I8epr( zG&=Yi_gvqC0pDVA%JjkAG|0U`j|l&N}C{aJ7}&xAhCx zAmPu!OOLcwRoaC;gShH|U9pgh?(Md!9wu?36HwRc&@Jr{ne#^=eUDM@p7^!@KFMIx#|**6fdl0kNd&iPy-t|(D6d~Nc2sqn2l9qrLIs$V z6GaeF9BC<)2`x-}dYp&Ht!1x~qaPQh1!6Aq49)!gQBhj*;$g^+vs;n%Dg$2;w z8P4ZlV0|z4{<&Bm_m?g*vduVFsNwv2QWr7p^ulRA#Ar;r%1N&&81>96-j+kP&ZEQl z*5jXL!!uKfb?ov~p1mhER39+h2K^eRTQY1Kgz`pRAlf%Br8&R|6(f6>v&H`+3g_JF z4zQjQk6%3o8htO=^J$Jj)Ap9DpzpRnN3ZyheL7 zm{)7O-20VI=Ju0nQZNa+B9rHG5zp3?(!718kE3Nw*_VdPWz-%bt7gr4M z8rcLJ{ay@8APhv?R>i~uD;*ad62yUj9l12g*HBH{4-y@KqLr%!@Jn`EanxFj`D`Ln zhVHEn5mp&fp_p3hpU30dKQj&_|8teyStlFgFC$-a*4{P-3x7HE+5TAOb}-AfNwCX_ z7*f9|>$e%|FNRg4uXZ8XsK{6!TJ5o$Ub~)eBobaHpByK|z4c_{+E&`hFQ(Ahy#jei zxD9!<2ygKnI*R-N4?IL)r7*}h?#x#y)L)NLPJjqbwzE-e zSCVgFZPSg`+Q}3XR~WgSc*!}4_(HG6T=GSdEB5MkU479X5sAp1D@gAer;N)zqspVo z$BL3hq{L^~9VVUYrbxfnXhR!fm+%pdUHbj&78-!V zo{mfAk>KY$ultFTh~g&GB0 zs^Z;bYn>d` zhz9{mmYd>s^Jizs)jeNn?^O+sS3tz;7=Z2qLFrKo z5B-)GG55bh?lG}>fyg^(aihrIz2PfJ#}H+?q$d5Xfy|j7ED}Gbk_({C>4F_Oui`r==fKPezI zAAS1f?yzxMJn_g*zL=uy7o4Clg@cCQx(~QgmK$zWTLtMWU5yA#6;l4UA^C}8PDxe+ zynClx9x{JshCe`(>>>ZvD&EX__AR*J`Q=0HdR9gGlGkqrTN1)GO+*L+1v9Gm9&_p6 zSUs+=o`ay`lblK-Oz)U`ts4Q8D@fE?EFokt!W-LXT0q$$AylbZM(N?Ek$0xGNePvHsUu zzx7Mx%i}{8Lyw}>U{fv=^Y6GyiP*K1Z|bpkY7RX;W%WgLTqkJbr)Uqo+0XnTXQ zWNOrRKl(~QB5fiOg(i=Gao>tv+WUK~yJq3INLt)R;-j%(R6Yn^U1D8sN}TZ1eaywv z0r6IU{A-@#cht0&^`aXx0MY#W57BFGpq2`#45 z_qdZGVc8Fl4*%J8F*0^+GUgXN{Iay>Y^nG!dh=I^Gw~9&Htp;fjkZ0Q^JDvl_2fam zN52rR^;%2EIrO|XItB{AI_5No>_{2GQ0oohYUHomZ)Wxz?&Dtb&<@FCjhH*KM~yVq z(TW;Ex8rqgCVTQGy>zf3UVy|(at}%yYv}l)W2lAynZ=-jgQJrp+St_Y6|;5mVe8q% z$^~wene2QsaYUT1kl7eq>8?3htzx~uI~t}J#o@S?Ewz)8X+9b#-ex6O0n^vCY%jjG zv@$4}k+Oz++Y)Tns=f`Jj2jG`3r3vm9ZIu^ToB7*Yt*!D4JtKoEur5jm5Q~$`MHfFO5 z=ley}Zo}RU(_+TgAv5oKd`@%h%yaC9OkP}9N3PP1c;@{?2cC(8q|E~huwV7ttA~r+ z`&WeGf#WI~ehDkz?$Bk+y3TdWe{O$*u1AVb7#U9af<%%|?Siv_0niic{_KV-_jnCU zMOS{Ag(H6)pPe+(V`$@?P|)`31gSJ{XvuF~y3xB)PcUi*5MqV~t=q%6PzSz=gZOzS zKai|(K}>Tp6TF19P}7$?$WQ;}+p%tKAII@s}2c8fjXZ7)>c(pln* z5<#kWMusz1cqREJe&^AB&|U^1Zo$-}_1|y7Sqy_ShFK6C1+ZfnbWzg8= z>$G)^mpT37(ksCObxmSJeV*4%lb#oX5up8E;$h5wm5>nY6+HW5O z{d&DBsG`Xi9wBR`e`a;*)!=KB0Ky+htd2om10d-{n>3_XxOSu>eTGN-M!8qXYxfn% zyf9P%b*c9?LQ|>pzCz@CG?_CMP-E#30PheCsX(6em^ed{jkWKSKiOIApl86wG^%R; zpmuFYe9Sh>%5Np1J`=o{IJC1<2MncV!bgW6SFB}O4MfDD12@&d=CB15>!A+!=Zg^a z5I2b6lEjS?h6Z~U?Xwk*+}{#Eq-t?VhrbqLAYMx#;YHdHa&H8N^t!b+wJo@P`vNd1 z(iff?Ax0LWr9tv zGh50#iO_uD@l9kF@ofTHAGdNfy}D!cMb=i|@*UKG<~FIdYyqo~napg6zlwYz8XgyV zb6i|B;toC?_-hDek$%>Q_Ern4&%cRpHD#G>VMBc|!T;HN_>)rY=V)N{-`LbfzxU>S zCFcIsBdg3MvhwCBt@~%vtLW_k%m*h$T`~E&lG3>naYjaYD1(3qjE#=&Asg)5!b^df z+ahnOS4RbWcgsjMFuyBeuo1qHhjav1u;TMo(N)&qp`3%VWET|DVGdKw)jfbcKV6@G z!x)Fsd&h}Ceb#$8sSrrN^Yc2YOxe9+HjPHm9^O6^nA`9Jj6FZF@d_u3Jztgfs@-n{ zYWCVoW?mukw$vs9e5^YLWfjo<-I$9m1+$|TWL7R&ldO}AK#OTyBDA` z%kPa(=L&%78u8O*%0KJTjli#z1OE6-pP(ULIdy$nd;dV9ceSR4_ZsCS^v~bH1E#)Y zXT6^rE{vLs&~#uU(HW1n&GgG^yl*{-?dGX|v&i{|Dr;?S)GnnpHRMC)m!Mlrt)DMs zFs2oQG-Xn#u>Vb=Rn}a4tSwq87LWslvESYdrR?TV4rkvh)EEl69Nc1rXWa*9Q;%f( zdyLvAURqp8r(UoXUg806pRvShu&P@G=_I5FmeI%WJXmPHiK4+2M*;N$ilB4=n-G1T zkPpe@L13u&?ja(`Gh{=&h8epzlI#-)DT0qe*-VKUMF-kT znmImU45E6=e4z(e%Ax8muWNn%g^SOu=jm3|KI)PqTaQD}C6sKi^&sKBpYJ^P3_&x} z6AgMc-a^r*X^Qw9SAp;*`9%SQj9iEvZGIB{(X|c>+0Vzp>uxfum~pjVd<>~)52|$4iQ;%EM$Qb zSq8ru-~JYV$(#{9=-ITsLXZ=lUXOvWP>f#W9FiUjOd*oF{flvlhU~oCD}bv6L;^jV`6CHZ~8m zB5SNyXE>nNdHtC*>Yn5S zSeFP=p|H^ypBBT>kRhW{BZ z;^X$-`%|~S9DGPQvgSC>p)?gQG3WIiEcc99pDYg2iK3yr;p_KcA64-$m|sB+-qlX? zKod;xjL6RpKI-VhIX8><%(SU#AOaO1H9**udm6V^)0C2R6bqfg7!bJI8O+#9UO`CG zT~HDrnhm)N9)V7V1NsHs9w5@;>TO~^4?;XyAxNad1Ac;i_t=r~EWBK5U<|S$1t{P} zyrk|nyruT*dp&~6(;hqs9DqfRQrk>Q#&Kd85SkHC&hFPD^JHk3F?e$IlQq!z;b@eZ z+VRX?1T5whAxY!lc96S53_X%#c&m{ zWHRwJ4?++H5ZK;>TuG18-|^C>S3=b9MCPK?(W!-`W%38>6E(3jrvW)IyE3$W}lP*3i8pMjR=wcsY7;ay~PCgy73%HW{^H+ z9HJ%xxNm1&rM|2 z6{$LEF)dV$PhAVR@2nG_h{j)4= zh`g-gQs1M)g5io)2%+T4?KB>!1_GQ*&G!MQEJ~YjO+6$T`J0!nq3tF!tr!!!l(e2dxGdE%VrT=mauKYjxy9r^v52`&UM*Q{warXDOJENcI zO553Z=Pz*v-sVdex~Qi{ynijc+I}V5`WKZDH|%OJbNPca?!tY3xwCgiHzZmi?sBB< z1iLayi^sOSjarDM5?17-Sf18Ga09mfSsWs`*Kq(UVRxT1&*1xD;?Qvsc@KvNRkgafp~$L76TQjK3JCZeasQ+#vdwgl?a^C76UQY znazpKZVp>{4WX2L=-N%ARQUMV?-$glvl9VU4PXfBzS#Y{jN_E4PF08p?=;|JR1P16 zX6aCo_B@dam?dqUo^WR30w%^u)3`7b`HBjj2wD{JPGPNyPzuNCgL!NJjAk>Tk@%eBLA@A#b<^tje_T z2By233Pkc4Bdm^mWFaUGUkEzZeo8%M{!U~=jCdf*M|9{9)(8{h61mDL79V3Ml*=CK zr?!^%YB}Y;%tuXvk5O36e42h9XqGDC-~^u=C=0@CY4y@40_jNmB+1b(h5O~`rL^l* zz$G2Q2^FbYe;=hS=&G!m5@05>9Yt`y?)%l?GuZ3)O|+nLAA=D-&i;DZY!Q_|M2I{S zRe1Bzxa}ZMFZ7`gFO@|0{<-9XlqOvZSx`Sq+ukQ0lAhS_xE0p8-6mY3>WUaAdICPJ z|E^`Xn5Y^q=A+ml|K?uJ_Kv$$cW=V|BuVyUl5nI%cM(rQ(N>y=l={>Enf*(k&Pkga zF>I%4i>luTj%kus)80CKl&67KI;ADRn=yw;K;xai1)%DN3!!_?PH)iG z$gO8*ka?O9@1-leE2Z8?pq;p;m?mw#!-ONc+Si@@Dkz{Y0F;Oq$n*Z#guIYSBTZEX z!d>m8+v2u3h@p)a0(UnLbha4x^^B)j=3Z!DaVikvtn)CnNjvgc!kH!bEZ{q(L=hTbudhj@y-R!~-Fg3@s+_Kz}$JxFgMk|7ZdcuWjCXW|*_VUD0Xtz?&+wR~v<((lE!h1t z4y`{keaZzvP4Lrbar$l#9@;VVL}TYAhY9V-=kVvO85+3I!_t-}6V1;(8;o!bV{qnP z#sK=Ug^kny(e&-{OuqmBAxfr`%2pz$wUNVa$}xw?AuER|dCPG&L^+>NiA2_fVRJrC zIysd?&XMJA&MAj-2ty_0eE!}0d>_9*?|X;)-s`&V=i$0uuh-~izQwUQq;Dtz_8&0M ztlCUJG9ajfw?i3|L%isN=#DAgUPl0aLe7#BD)-e}F!U@}6 zG88$lJnS>TK!`g{f^bL;5(81cu5UwRK^z*22*h?2LwudU7%S7CObCR9G5N6eklq*Y z!djTlJ9Wj64pXza@ z(v&T6ZQ;ePSjPxnl#VmL!>N28ru*;IJ)I#2Q>U z%SAs%X;*}EhL+o6>Lrf&QC=+I`8l}l?eso{|D3=J-;7_N4C$7M5q!mNFowRtI zVj8O83Cf=pe{zk59#}mC;up5U`^?+=u>8fO$JCIO#Ot(!4i_MX5Gca#$E?3}C?;ig zoG^x%wi?0>os-ExtCoa-A)$bH*v;~!4>l1nWjr9l!0wnuS^NPA#mdm)tFkKW|75r| z4&5zB$A!H?I&6;G&vI11FBO?qrX@hfh6&V06q80;br}jg1dq3*{-w`vq%U$fEZi<8 z%~8A6ZGWpxa9*M!i?E`tc9+D_OD>mg&^yib@Q;=pBK1TeO&kq)Yudoh4=$zO4$0Id zu?e@$lpck@Ye+cZ&@fg2NTu_dM#sX}75Fgg_+wz}*`?8{rYH(V3zrNj$bagP34$!{ z0kLF57339K0sc@C5X7JKO7Ua?_AfO9xa9B&IqIh1cNdxE2QxwD(M(FPhcJFp0^TH3 zyKBmAIV3NVl)Pz7f;~*NEgv$~k09L-W1KJ|-09fQ7X1n+9fkse@X8aoq9EZgCVr`P zpzAv(Pzo;|tvM|CUueg&4Kjvb})g(^%My3^1@(kw z#-Cyw!sg2Bh3_4?X>r#%qBsNp0@vmTb4F%@pBhEcxOPkqLYR;kv!RgOKHcFq_gohe z&squ*NLvvlAxP`Ccwz%VgT7KUUKA-OUnV5(0H3y#X%9ZsOg*p_lIe64lsF2R8W)BE z2#+x>#tval5GX`9XjH#;;}>tc9(rC0J-j<&JX59=&$E4o6j4QS=m+X;-yXss2-nnz zkTJ28!gXR++{qUj>H8eT0r;MWySz*Dq+CR$?J&k3bS}}gQH_9*_@PBf*>gt?=~L8e zIHJ?z5=i>RsM8Ikmd+DqcpHhr`J*pQqP-v+@!f!^5Ng@(&pfOr%taPOxA-vabrF1+ z(~4yL6>hqP1@~8(8ds``RQvfdmE(SfASB2Ow=P${SLGw6Gh!izY9TpJ{*n|+PVm!i zjuPVXCP49Vl;9HiaR%$~90rNx1Z>XxNj;$12BDV7+t1zzwXjaC2bgU8fdaSRhh43w zBnYNm!?pQhooypnabco3D4g55z{1B2A%XBJLBZ~`3K0g;HwdbcK;5t2>Fr|x>!ak# z4O8e736-`%Q7{2TEVw@!6uLsmb$1Ak(f;a~T6VAFL=NnMo=bEjd_A3sd71-Z<$eN+ z@db4G-^!%qYy{k)iW~M)W9+Q(r9E^C9BC1lQ$8;xc5&sSvyc#vjD{s6)CL zqlhB`W(tqa_MHO@6erA(V^mc%1jCmp8_u0?1&uG;53X4F#*8;!A}HS3PE~dos~WuW z=QsuP7ylSXi?_+z{@Ko;IkmZ*zi1mc8y!49aMAPoy!#uzBZ-*zp!-&lDOOf^}+BgN)7Pkc~vX0m`xA(!N4T4~U6N)b2YrQ9W69r8vO~spi$|M7`_5~fV4eNgFL2bv>)?{u0r?_(|pR#A=R;m6UXMl(}%G0T^Wkw&%@&0RCni*+y$qN zq5uS>(yyZN%E>D`S-GGg^tS|T-nE+tp&zAu?2Tv5ogKwdV`Gi8a?;Gf&j z)@%cUJ|xtiU!7M7vtHdi^((Wr{0nxd>feXhS|i#}~Mz6`UjavO|s9dbXjxYg#zL&&nn>7C;-jsmX8 zZ))*Oi1bTykvCjc${$sctLy!{hJ)9tD{QmNrn4??Jc-LzUV3X4yjJ(lB0hY1e(mpa zdnM6w}t9YAoWDCRNHT;squLRf1K?JNJTq_TYoJrv|e0GX|=@#fG-3ys?PK2W@kAolU*7 zKG@5BzokSM+k(zt)sOxw-9C?SxMqqR7D5b}KERNcm^hlegV^sBp=zq8RO{F;NeC8W z(C=Pp1xm&_{Sj%2X?7i;Thy(oh+G<{ZHbJ*LnrUi_Ypu99xcdkZT@hN;SFy;8=1rF z3L)Nv8SOa{V6QjnNG17TFBikK5&ANd@uHC0NB?J6ezqltnP((7(?r0kRS69=jDJoE ztVKQzo_f`HR8j4``t02{Ppnw7y(zKhqYjh6-FW}*p2v{4g0UJxt1sl^#{-7tQ5u(` zAlLcCjOQ#@7c|DFPzrM;=b`cPn32S9E)Okt8x$}_(k*C@zhZCM{kQS=1QHr!T{D^x zrpKJ81s>4({ytopMb@alrQtOi|I*5b!5rC8$gW)o>1KY)j~`OoBj_k765LuJ;P(>} z$q-q?AW4$sh4qU>>yWM@==c*3O^`SHF2BxnA5QC-aF@{nVVYamPy#QhJh+oIyY?gW z?p|1A&^F<_jQ9l*PIfVu%0DV#Sv9Ffw~J`^!aCN;U8hm-Pw0>f{KAjy!qmw}3rXOY zuBIcWsLm0FYCJY>;HQA-Jgf_&n-W+RNdv3Nyspt6*z+dQQkQr^c_Bz(2{9C-0f{@? z@e+`aJCO%Dw}+HjlP&S^aQx1%Vf_b0y0HIpSNgC_hhi4+Da}2lBV92^#F_P(HOOyB zP)>kt^S@I!J4GcKATvN`M$_l{^jq2yyoyVM8GWNNfYn;$kHkCeh6c0@hW%^M_I2eFmX5r7JO)2)u5P9`se*U;d zID8ZAW_v$tEn2p%RsFqX9itM2>hyMVM~kdg_+F-F-Oy03r8v6c_amoUBYrKZ_xQqx z8^Rb-=ZEjVCytDEMoe!hARVon+W6^_wN-y4lr#5UdYWIQcJBSl5uu%hc`FO2 z@C8=%sLegwz=?|T zb_#P--;(R_;Y%5$i($SlTz77Pol$X}2N-n${Zs$=Fcz#G8ZH9pR$2TY`t=PBAOnL|@>cf^`bpp1`oGyTxP@$V!w`Y*P)lhgLfn5aX`WmLt zz#_mrBGwS`H$?sJa~O%%UhBy8FTvBzBG5q`Y9cC-5Pe~)r?~NC;uLjzpI+$3tBqtd z<8X$2j$B48SA1)#VdQ4`Iyi|{NCaH}zDIV8<2d-cAN@dWqTYJ?FEnGpZ=>>Rn0ZseyF+!vwr z?RD+eDd*WoTzj4ZTWcrfcDC*ZIu;bu{zGx~OXe`s@xosz8zIdkTKHv`D~%%_ND*I& z2BvU`s;=@+cSm2BX71?^YimeylIE|#hTm&-io6Y7m#3LzrLSe^iIf!i0#6*G`ju|h zYgeI;5RGsi6XMUs$OqyzL`Nxw>Aa-~z+Ln5e>m23zfAY4nxB@YLgGeXM|og)qmOxZ zmPd{XPuI4z-0(%0ZOxm*CBjlmi=X94nzQSVx0a)py2Q8CzZ9L%nC?{e9eqd>OT-L? zX$H9bqb89XtNe|X#iweD{JRbuSRK8z%bRD!Lx60o&em~~qXtb)=RD?X+@13qfqfaF zaYUUf`Qo&*xa`{3;iG4QSKvJ_8BarlM!H`f$T+jLI)U!V zG}!k0(m~~_tf1b%7W7==Gr+YizTvt1{8F$mreOM5sz|>`mPfRRKU06nwo?p|1{jIU z0IKPWa&}3S#g|44+=s9lgk`%?*G?5al)^+r!c{ZG+NN1q4e-i5I>u3BEhwyvoBC^8 z#*p^P6jEv~tt^9hpw57fl@joQ{Q+h5Y0vOu!G@p-x$M3zzN#eb^u5NDXK_@31SAcw zZrx(o941uy|8Y?#Q1I)NjnHX&@p)mc&f9ALD&4hg)Zfjy5->;bzEvnJO74$eajBo-(K$Ce&IUpTlNW&qHM42teU>CVDCA(;al}; zD>Ot=HcX`I@@|ekP3G(c(6MFlu$!%%+n2_!Bd)1;LATIlo6^spoifV(I~DCZ=1WRK z=N~!I&uSjjIBij)bhC&V@$K6U%~|CfCPVJJF66_??hSeBbLoE_^^J2rFw!u-buupH zNF!$h6A{v;ZGe*?_>s;ZJ5IJmW z7r`p5xWU!YMDR@lMyq6lUbvSm>YwFJrTXNP3=!7<-K}5Y(PHBCj|BXl?b*BQzU$JT zm?_XkR$HB!zM;Z_<}$bfHo5B`Q9X3D&+B)Ldy34y+K`%n)mOQxImC0HdMF!j-pyv~ zAE_?!@3MIFK4iWQp;=G$R#WTW6;HgLe^GomOfzjo%!D{;x+BvtApXzC z+E7)`JT>fg&17f9PBTU>zM3_mBFCZZSFae@#&2Oe`jRonbs(f~D9Re>MnzI;mZI?4 zbu-)Xth(iue^+1XYX*HYWE`3ApNQx)K8qRqbP+H7sBzD3b$QT#1UOOJ`#VNPpv|@8 zkL~-hU+gR3?$`Nsq`jMKMzc<0+zb4pF-ET8 z58hfg71&&R)Ej>tF-uh>yb^7MW;-{k!l_fSfN6Xt)fl0;&ns=-Lau!tGdHl@Lo)oJ zNE zK1<=T%|pR7pAu$ytveTptscub$nKcLPYL|T>{F)n$N6{L98?myfNCW2YwIz$Gea7hhm?`FVTbeu~#8K$Fsj)h>Y~BSz|VG5?CXlwRGm& z^pXP%Z1w%>>gcCVH~9{-M4YmC(kyq^TMQ5}jTJC^7peiLtp-5+8l z`(UPaR~Q3n_Bi6FoP6O%mXvb-o0?ykiMs7E1DW)zRB#`moWQ-oGI%Z>fhW%fwr(xi zR-*7H(%m2#Sj=99OgY5RMNPQSv^Dd;Bt!DVGBx})<<1gEpvC?cV6G#2>{a|%kmm+;7opUf~g)NaPP6E#xa#Q4BPwl3n5Q{xW@ZQMZSw!bQN#m(6QzGO`SQHnu(HiCiqJENXM(oX4C%Z5za2_r&YOmj_Ot_|( z9G(9v`{;CEu$)HKL`_e+2!fXqQL1kS*(Gg=@DMr7^A$E)pj+L%Uk(#YFA4Pr*SE34 zdw(Yvy*n=pgsm(x+a*z4cNe=JHfC-Oeiy7bH8yu9Z1~GzRhpO2p8t7rM^{wY{0(^R zRCDl{#j_4aN+5nmzc1^t+-LTnSNx*8J^<#8PYdQ^`#w%9S*y2R7UXwHbn3aPvuqjA zb5xm+q_CGKx;bh3bR53_=@;g&ja1u%O38l4r{gIb?*k7j6Mq^q&JKLJZ^kO>m(ik~ z=Lg^Z@Dn#7&ei*?QX(XX!&H5di)J(t3t4Uk>2&w}Q%~dPOY6TUT3ti}x41%sZoor$ z%y{01He-$~&vBn>N8uGW$ZAU^S~UM6W0(p3-sb^REt+R!*8?O0r_kX)>Sr`B{B!yE zG%?WTteR9lw$irv^xr!ha(5qXo>yTQZM! z;mR}cOz^FGkfsT-*SF;vu$3yap8>mE-u0v>Ue$?}S+$RFE?pZ8c~>_ZokTv+p;gPo zwM4%;z12EGR|&L6U!xgT{qPyCacZf#sOIz|sME44!#m|ZCH4eWR&%O#wTLlO@pBdv zP>IbPGvRrI&cu{zX7%wbb2X14Ja=odWoRW;?VYWnc=04`ery)>IKtA$V=Sc>CsJlfX8!DvEUoIw>Zvj+Pj0Q?R0OJ`E6 za(|eA{$eCo_tL+s!&rkD#vHjS)wkNr6np@ziCo?{a=qh^Yg)bc(0)()jR%rE@tK}d z&cxpectyfU*5s1y< z$#d^1)13t1S!+nS-B*07HEa&(p5v1NJpRH%h>(i0%E>*1U9?pt@*}=lS~U@Hr1EZX=Qa0jTN>+l)n4&ZD0OMUDc8{ZnSynUL)&`&1qWxQ6Bi$ zg|?RI-(anJDurFq-Bf z2n%}@{I85(;fi+%YPR?{v0Gq<&RFS7Jf}&!1jZGXi8k@ z3fIla^v%`iS|fos)dh3oTb1fdlU8!-YrE38^VWg1Y_RFIq*}6NTLBZIGY-NVA&*H` z>_mlv{WfvJEpwTagVh+QnyO$0-pk)p*&VXCfF{HDEd3@#_>a;%3MU8}|H->fzY=`C z1jeb^2AZlNGr;Xf#f1!SoMZjGCo%zPPM>nI0p5+qJ{AcVpe>xqX zQRIoRlC?9lC{bIEE5N3^4c&XZr`?ZpoHU{Uff8Jcq$Dt;mTnn^;oAHV=e%`O+_Ay> z$DIto>ZtT);6mngzMOykjmE?LEz68=`kGOc#bAPo{HEdCopLmne`=`(@pH?X0qFL? zoHdsI+rENhW-|5ZYs(T+T}i|PgywXF`?X>ACU)An^?1v=5l5&i`voZZmE*bgmQ z%CT?j6wA>0OeCR6G9PjY2CT;?I|ii10r-*|^OSsqsjzVOkvDSMI;3ursWm5AJ?Kx5 z7A=&|b`d2m6zTMROd$gB*1MCxk=PjH5^yhDHiTQq+e&k$#wMCV3z;H}QPCFGxxrzJ z;Bgb4AVLNwE)95DQE7WVIl}6z&elqVIcuqK$+wH0nu8=PZz)NqO=~J1M|mGs?C;EM zcHO$!(dbt~5@~M|tR{szbg82AhX`)q!Xd1qL`wlorQZV9Ds6-~*8U{}WHO|USbg6O zo&~L$AzqjwzXJkER%dJKbejD(RV4lbU;rY=Pk_jDo{u0 zmXts~Q+-fispn5Ik}#HcaU_#&M#B(&+l!bCZ~8+#%SL{H7QMDwk?#VIJ>*;|V1bSV z2=?u6z?6yqaya(>YsBJM72I+h1RK>A-Rj6pSH1gf(dfXV%8Ct>jb}fI~c2>_CL5exZ&9DVV3)o$kX_10rHsqK-P3Z{daL!GYZmqn(kS zfb`$`rO`7MR7&7dO;HmjUMN^`d+Q$fw%Pjrb=r?UWK6$NXmF_d)<+>sx2pJAE=u6v zpL{vi#D6DKbMRv-zg|JaW0f7+TL2?HubE!Q3xU{VZ-PTH^B19%<4`(uyw6q`4!}_r zGtCJP0Un1{*);w|COMUECsh&rHLj#_LH+yJuaxHYfEHurQ>Y38Sm6eKiVfs}{I_`_ z={@OnBw~vC@s@l=9dFQspT3go_da2Sz~^&Dv*t)kb8v~8hQ{?^me%aDOTu`Ba8bb6 z8E=2>IsV4mF27!I;>c7TspR4Vm=_jEeV8&GMQ}7|@xm6LOvHfL3=ebLnj3%~0zSs~ z@4>XTfr+E=(tMRtw@<{LqM8knxZGD86MH7|uw7oE1XZlXtOYe?91IwENVy|h7-vo{{p#;(C>dCz4 zAj6ak`(vHvzdL9`{LgpkT^f+x70!#|x=8OjXKTu}*o2X5sicS1`;&s1xiHeRi1~Zp zY`D8*j*Q3*J5R0@-j)(CntpVYi|mOO@Pj$)6#@eScnwh>nim*r4Ednt9xgju4$@<7 z&=H#a_z^qR(!i-@QKv{E(K>8A{$&c}-YsiGb{BHT;Ew^3jtovpV2It`T9Gklhn)o1 zqoT5+j0LUvtP+jgXLROcg`#}~VMwmd@lGfb>@t}6^Fn--!S&XbXgs?#fd`slkQX|r z=xwprV3jQ_qnLlRBD}p$a5oI0%z6{CvnEG-iB`C`Zj!_NGOlCKFL9SOT=@|fZOuVO z>mg>T2MHt8&AL~Zm0_f-;d6usGe#i3wsiVfoJh?Pw8D}|RkKIkZ)1(|xI#V(G39=? zhKs?xuujlg)T%uXfmGI*2#B_Z)aD^>w3{O%-~}-9&Pj4C4*3x70oj{Fn7G7Z*dr?U zR?7SHeE4q6BOGlbI2B$*8#4+>VX8M>Q=~#9S&D~&`;*{}+_x(`DFvjSf!{vu|H~&7 z5-Y}Lk_ScS9zN_bp5HW+NZy!yP5#qb>qsRh7{XYXSaa6On$sarON41ulsTELGM)Vt z=h$$k?C1c;dcY!OLR-ExX5U|-;SR3;2xUUSivF2jDE+AL;B*J z+Q5IMtj_dPv9*1nqe5%ctB50*=Ljqz=On8TXWYbfCe=iKAtUVHqDUvzS&c`rVmAFG zpJ;Nk8~t9Z2TF7NqTBP`KeUVeGV(w6jz}2I7_NeLrY`fZAk`<&%X(S3aTqBi!zGd~ zTVuB(^G&X9LH(1pmXy(Bn~;5+qQOXEw~G%OqeeeOeAL^#l=O+1F}Ht{@y%{FQDY-S zU1h{VwJi_(1@i=;+m-vPjQH<_`hU29h;ck+?OXF4rJ}zIDyNo307pYFLvpm*e`hi$ zADV1E-y3aJR|oRP>oE5zI*75)<-_iY{EhW=YmdKqXWnE1jtk=Ys~ik$6XV=;+XY2L6La6jbFmCb~xFT(hO(SR?>@gKnx<+j9FlyAup@qXvuYV}b71#?K%w)hqX5QlH z*4|UTei3L22x~cmMT1&!g%$d5ySjPF`k?ROBZFNw-cz5vJL_J#yU%Qgu7406eJi5} zY6*MK#WJ*C&Ufd>2mSeHg#6*NbI&RBFgb#=Z~K5goxXF$y4{0x=gv`o5}k>z56)6@ zK9}WvfIrHctXe96{7gju9h!mQ^tyWS zw1H(9H{y06HU-qOo=xqTlh(U)d1XDHLowjLXzMbO6b(?l?Hb{l88OnpVPvS(@%imL zrEua7BDhpDV4P;@v~%;!RAEwl@LbQjE$JNrc#LFjD`o>8yuV)-dOO`woLt-umIw#< z&!*wyvwYX)o^jb5L}FkU>`tp~gM3@7ZNH5c>ZV9Ii>JYy(${;;+x)Owi3N}u^T>m# zcjN+$)pfoMf8zBjly{{Oje-X{o>6ky$zK;3QD%rPj3Plw1u|voj0Z#%_)IS$kmQF& zrRRP-an6=`9`Sx4M!TQm&Mt~E9-hxNK+y3TE#R?l#?;{T-#%S_1m@x34$ckihR8l$4s-F7p=f+1;)4E&RKE zQ*NV8(%K@=w$3+^g4dNws`^w{!Asl?8y@l5=V*5h865vL`QJ01w$Wqf^I;G51gY5W z?FK^sHzVR6Opp#K;^MZgJnNh}LDW*`I^!PrstAX82>iaoaHQBP6Vt2xuL~jC9ph5I z)ShYo#F-@g@1<=MX0z!cYR35CjdMRRNsV=BbFxjch=30)dcC*prr(B`j{Lx?^ih0P zwuM~e4{pu3O47|^kC0uMGq2D9jp%4Sn?7~j{d$<+(t1y6!oF7zl&DMto)Oe^2!0n}t< zjlw8RrT>lu%{98Zc~X_OFNUCjNA*++P&!?V$dB0h_m4BA`v{al%dj`t9ZJtt$)!iu zb}wkaM>E7h;;Ve_d|NjVRqfap_Ef~ktj%TXCOJawx-X80xV6dfhrP;nlP8#$kgyJK z@qf%&FX@&7@qhR)H!d_T643ciuAPI2mKG{)P{bXTDJrFei%EcqUGIBPZ1ey30-&_p zkXWM!39TTfFQGlGOh_Dy|8DohrA;`-$xLtP>YY1g`WKr0$aK=qPgR~5b|+C2Bj#TF z^TQR<_&T|(&6DKZZ-xLGFUq4m5g@so|J~x5oU~SlJX*Z!RCQ(}7VPdXBn${msK;^& zC?w~iTRdQ7TG@Y&ANmV5(Oi}{?hd(kV{W1<(%;?i+WUK0h;=5sH$QBU91+{Z5>gK- zp#ezS41X(yddy~Fe zGUkO5Q9kKM!=FkM&EY1EP%QXRxx)juE_xa4lE{>$B`O{>=C0%CjxM zl10xZ{rBi8cq|Z>r5j<$hMsfO_Hx7UV0=% zc3K0E2EzO}9;1`koOU(k8IcwKVqTV8NT3jVN5PU?s#S2u+WwKlwaV&q1CmRgeRq^k z1`)1MFc-yldC*+xWph&lysZ!L*G!_v;mv|eQAIm?kZ_(oMOkF8Dq=>~>VEWGq+k^L zrYL1cE3V(8L1Kq`P}te1ij!aW1hZ~cs^tION}YH<@knaadm zB5=ku(`j}QykAeeTED1fo=>_;JLe!@fI&@&@(dB|tSePtG)Wv2PqlLeshOCzT6RXI zk$r-IaK*F9IxDg%H~pZ4$A^+0=?N7*v9^4sL$wh>*tOLCA<%}c`!e@ig77n@3@xCG zO$4%KtWoiyp0U>E<(}dwaYX??>=R&V?LwPGv|FZO0VI&^iv!fC|Nh#=Qq3r$8+my6 zzp7IN3h_1>eGL(fhi+zy>cP%_`-W>{*Izy@fF|@NRUqu?8st2v9R}S#GK7a@?LLDJ z^FnMdMk?9!ScPG$d?)WJh-z&`C;5<)K{peH@Q&q=fl5LG`B)HhjGg~=iptJOdt#!e z($))|<00gcV+(*9{82>;v3!>rg(sP}d6SNlt|MA7Kr&`5k)M%d3$)6kk|6avv2b;7 zMpe%YISXee_?faZ>J11NTK75MVYH&~$~-Bu7@nV34`GEMUVIqo_(ys$*BrXiSF9mJ z%UofvkF_18C2&EW!(sWDFX}%9)lg3xcKW(lF= z08{Mp5(dT^`@d4A$r$YpcnHQjttB1cWuQ9D^Ptxf0U^eI9Q1lFrvL-<@&9&3qVXRn zrdK7ct@GGj39du04mR0F<4+LG*ab(vSS^KzfC~c!7MvC5!&c(&=8&eSM+pZRua;Si z=PWo3zl@^;!UU2!^aJ5!UiOa2%i)nY1ZfX;lIje~E6EO$c~`&zvT53)kib21ne_E& ze79l&@is*JSPn3NJbMLHCg)!4JxBtdEbi zwfnUndV6s;Fi3REe;zdmivu>!N>;R6d`n*Dv$PWvqjlymIfgKKUEfq#Pk#@n-Ly0F zm4sO71|&rMtlJF;cR&v@nsY?41ffA3jsJs^M@^`-#W|Ww^;x4@d`MWr@xnp_c4|>= zl;iM67mhbq5Sfe_!Ak@bqZB=H6}TEih^hYgd*L+=s7oL4xO@iG%a}+>@hNM+pPDO9 zv(8g#Q}>XI4gb~H+-gKP2+HFSzc!CEJET1#4O3IT@KrPwScP^75{FAJ4=agCwB(Uk zaT_1-LqXfFWeS^Mw{Par;9#`xQ)8YsC)?boF@~XL}GQdSs z9wZph48#1g=t^w2tuxU30tGsN+5MI`*H%Dm)EV6jK3$)Jdw{2=w_cScJon zdxPfjC)YM-E^=?g-4R7w$OR5U(xU7lt{IY%cNj6h%)$_AbVTqo*kOi%aXf_PU#oV( zV%gXC2xigF>lcT@>fP8rq2TrDuwp$#FJ`prFXuNXNt+OP(gF-jT6`(zsU4iV4x5A?VR0ose%v%OgiL&Yz<2szI)F0P{2t zCfgBK-|{wYDXW0wfmH#Y|2Fc7FZL*b-82UXNjN=r|A3o?q%YWmnDxtvt<=VHGsJJ6 zqzm#0KSME|D*H14UO=J0RucT(P&Drj%}doERkJ!@6L?d&Wo(Onb70&^^M`qxFYJDT zB1-4T2ETFJ5?a6mLe}FD>mDXh@OHXcR(6NJ+ezsnFkWpW`-MzBY?x=UiBx{k=jt5H zQTzy_Qwx^~jJpwgQa^tjJi-_@&1t-yhSsMQ@@ZC~Chn7cQe^|{ffIL_0M5^~{m;fz z<+d9H(s%ChD;kBwE95eC%PCUZQ*GLnmA%1~ez8Y!{YP<}#uCs0I+fD5ghDS)NveN^B^Ek%03vbHym&%s@vK?8I9BeLw( zz9Se5J!kqU&}0$IqDnwc1L6F{Ob@cRc#~)k*nJ9f8a$Ct8ixmlqRDVbwFz4?jDw-e?9{lxxa#Z#KZN`)Y_0bcOL*TJrebf|+0oGl=gYAt%(AV~+I3 znk)P-V>=B3Nwh9PAt<(POYM-98PXs25SjD8<2cB7kd6oa z8xj5lL>nODrno-7-Z6|O~H*o07K`H9f+BEVYvf2BEuZk+O8iBz2hqLQC^=RML={VL`Ri#w`LSw02+al) zr!Yg91+Q~97QHe}4v}|XM|T|G_s;|HHmdQU5MG6D`hTq){IIuN zewsmS=LKYGL$}ASG8RYcAf`%lur3Vq+UC{*=5+0$?-sx@uKBI^r54eK2pb6;I=ML- zK5zL5_+Og@6k`D`5NrR+cFe#}H1H=x%u)a9(QdXLM&`dQz#%l)p4lycA}WUXM2s<~Z{d(00=3d8 zaX&-7$J@U~qj}oaFCv8r28ooUmMEe#R*gP{(05gsI(qM^rnLe zat6L?XIq448O1ohC`T-a0i07JsUz6hN!lvDu0(s2r}IM2l-T(lQ+>j7N7*gtdJKNdq8D>b!JbioO0u;* z#K)7IG?z%iMeC8=){{SrqpPV6E?f5^m1E8I#G^+WCkn4kW>!QVvMixP{U{3h&$3iOJhsJC3qzHIbXmpibY)UpKHlAKTlO~N* zOkUgy$&~9y>!|68@?4A*d>va9K@E^f5~l}9<>#ki~uTbn&=ooIKEWwMh&-t`21homA0xg(KJ?QrDfX^KS*tqr( zipQ9{B*B5)K7r7teaD!xokI71bdneLmfbZKnLr{bWcCH8z_Io(>ENep0_?^DPjg{$Xbr+xTuWwm zJkz|5kC<`Tb~}L%GgequHH-&N;t;knlY&Ts#*dzHku*Rr4yGEN4L)01JP6hqzDn9Q zxEJ@(Pl)8b)irJNhpts_gFq549aW+p=70=kE_yza>73wUwNG`!fMA<52il z7v%i}U#Wb$Mz}(529gdD4H!|Viov;LQ6X_NC>XC!AwJ<3_78;_(E(Agi63dDK*9g1 zw6(PUcg<-0-9Vi=arVfUU4sf!y?U!cNvt#Hy~bNoI;!l2sH@06m{MZGw^GYuk`b+& z6UoMSXf`yyD+o8Tu{~s}2W$1d@q^6Kw}5WxXNnpie3Q|W)cu4HX~i?t3;@=le0MSY z)eLloLUbT&ccVH=QMhi53;6ur057=zXyghq4iIH1#sEScltNM*9Dl|ShIuwxRuyuT${*lGA&6O2X*2{| zh445%Bgx(4UTly(TvMYAkKJyrY+Po zW<#FFZk|&FoNyT7f^@rjGVc^--MRqS{Guu*_mEnZR7~>1nu2z7=thS5GvHY31AH$f z0aE=Fs>IKCy^d6BL2e`6V)yWYUct4udxy#PrpOuUdlZEKU(-(z3S2&rF({p{$$y?2 zJ*S1tn>_)H_TF8~FqdM(zjFx`x=JE@l}|N(5!JWs`_h-4cIUvZb~}XkDMMeO?RO{* z);mT0>DSZ9e~!58WK=GG%jR)>)_8gl?*-|FC)cJ9VaMR14*nIjX@H1gM+6tY;vX9t z6Z4$5&$*X^(SpY0oP&u%3cg#Bqr@~w~M@iTEik|HCZV-NM>ZdCy%Y>s@xDq5t}1?O_pO3%I09OjCNP!(a6z6#~8KD zzU9SN`p|iS&TN?t8a9IDatJ1=YvuvRnOD+!)nu8yiq0slhTIur{7iAWfo!|l)j7wU za#~KuwaIQG6ogmB_lF`QJW4v*OzPZuv2N}?Kg7v!|bY7gMQ znA`A8DS24GxXOlaOJT_`@K2Y)k?L?siwOxDn>&ji1soe-^xT2bt1@mX1OI#&o)`Am z)vd*@x}iCm=q=9{w|om}l3M8aT+Uz{4wDm^`_OB-3dGks z&=n#vXVY9Fh51G_FWr92VBPS2Q2OB{*5w18R=EbL&aIH%KXblq z&i2JS>nEy`ZY{F7^%SxBxq?s}bMVhzkHIm`WN^S47kvRzQK9cXKa@R^m1f$Ve%>~yT%uO4P! zf4l0X!@&6>WVjvrqob)I+wwQP=eCv(n=G6 z&$^kgCYn^@Z}@3Caz&7+KJcb5ZVpzS4lm=dh-!ycF0@Lf%mtnk6|dsnOzD?RLz9E?l*l;(} zxjoEf9B>4CTJa^1$6DYq*O%y#lF|*K-}e>7Ve)=h&fnhF|0tJ;cV;^YYZ*5cw|)+O zctujU!t>nvVG?u{%oK zkGm|BGV=wzA1zeI?Av@sNfiee2S?1pn4~BAvo_+|wr_jy8%HAx@o3No{vqnWPswDkpHI-0$VwNzUcp!ihd$+$lhTnHW_aO977id1|UcJ6Um@ zZ?raq1GFS|26}jlBA-Jb8Fl+PozSQUS2)(RB_W1ZtjV1N^j5i0iuVaskioh2wf6Y8z@DbuLc}4T+#fOXt1Va#gdp(b7^}OSz$fdr zrV&-Eo?Z&R2UK&SzgRE1RQ{O8?O=uiq|TD`+EQGB)Gxwt9O<)TMF{(3=SoFyWUI9( zcbE_=awN=Q|GA8yo_G_?UNT#5Z$iS+`);A=4LKV=z@KEpqj%O*`R;JwF)XA${n?7n zvt0Ss2OQ`yTx!yJmTIo(|FHvg1ZDtP=iiYaN{UH^j`4N;RP5l@s|@j0QjE{!3Z|A0 z;)vZotp8B@B`50FFcAyKW9Rmo)KS!Go#gn!n&C%rt*0b@N+dyTtdjJ;X#PfZS&s3F zkkf9I_dm8a;{nw0Tw+q}9<)5a`+R3Zy~srVEhCY6Y96Xn0zZ#{ws(D;dhJek*ksZU z*OR1{h9kT$>F)hI8?6bX1&jfXxWa#oXZb@Vv>ZEOJCaJvc^2r&72H*OXO@ZlH)yCO#fYhzEJ?Q| zB(2Sc4;puRV9h3cKgtj}1Dn0Q}hkJ)gre$k*XeKF9*-#ky0(>0IFwdZgNd1N}36xd9!z)?mOQ z21V#B7&y{)=8IoJ*47(->Hx`zO^zwW4bb9K9wiMw1H&>8dX5v(r}Yl2|Khmo^Tvns zYxENS^J7;W-NZhbc&+k==93@UTPVdMC*sKnoU0dl1yixaXP0bOoy|D0wR_CG%Bv%2 zQ-KqySX3x~Cuz~;9)@q}@k@b)vz4^;$yL4-cOox0OiMuoHc?T|U#%4BgG;zbeVYgD z;!O$djSP6|gA+k(;K~X4W_VYvP%K>R+;+f;R3O3)j42+#W`RG-BzhwN94$<^Cjbpb z)6DzitCa|bM=+v^`&pYQ^G#g_m}7qZ%)42omUo!oj6G&1(1D^e@bGjI5pTa`Zk&2Z zMorDrlZ4uX)qSvve!2ROERy9**@f6h0bsJx?ad1!Fb?aMHMs5K6=vunwZR&66Q-HZ zKR&z147>*rXR_+QwDj?S0)N1HN8w{QplXKYRh!1kt{*trFNh+bwPNk9;xCH+*;WiD z74P)bRi8Sz25T7bsB-LB)vA&6My4U@wG*z9@9M_&+5>N2Rf+>-8VpPsZAwAxlnQvq>(pnVi|w8z2Z zOV9lg`QF>Jvk{D8F85Rt4Udr5yrNw432U8my7fSG%*g}%F(okv-dH{tiQ@`SVaD?$ zrn}f-BWa@+(~)p`4t=p3ZX}w^gV$MrGgWcz+blQeCNsKBJHvgj?7hra-f|>7DMWHi zhoi#yN0+5&#}On3|neBr)dl{lFK8x`k~%sF4p;>)Yn&YT;4_KRW?`e9&b% zotE|ee@>7)cg7HnJ4JmD{!3`>qhN+3%0sJefA9LOfLMo{n>T=#WW34DjaSx z>abjGyJqv2$*17z(G^Cm64Fiu8t=vEX51Npg-;P|Uc}h?Ha^2y{&dNJbSTbb+s@hO0X{iz{a5umL-g~d z7v+N0;t^`is~45}S;UHPx~u$vpj%RCCP!CQq8!ERvSo&NW=)kfwR1dhkDN#8Cy#yL zP+kIfmGG~BKI7#Ysg3tsza%hP4NVj1_aI5TXjaxg0<@FXJ8oNg=FR0~z9*NpG`ZsQ z>MvNybfjk0CWAuc(u^lpcW2f{E<$etS2v(Dsi~j}PZuy$z1^Ktf@m_0vHqIyB1x6% zl^dE*F0r`T$p2cQL%t-ih&3*ZlKlI^%Wf=goy8SE4P& zM?MWm>x@$333bKFTJL#oaz;c6pCj>0OUdu9y3>tAXB6h4?sA3NiIa`e$!XzumNZ!= zU1(BFC7m3#0!ZnH=epqi=xz4BSmNV{x8S`2Q(X=*e=g6dYrHV+n!a5^F`~;vsiSUp zG;HxM#9Jzf_7nwlhdKIvc^~^lvtcbB#<1RXFYG%b!*k%2k_QZ5#>j#H7_XJc?CY|> zQO?-3=9h&WIg$A>&ef)qin-#VsfeVuhfAvTrsP+x7iTFanl5JXfGmCanf+S!X$ECJ zbN-#4>x(dQxVDycmP7XyyoV!It(zK7Y%UNOxyqk1-Tq@}?Exh0O3jHyQmHQH0&gMt zFub#hjh8H!iiQDve@nYo!Y2Y|?(&pxvL=M#ZKLttzsvzF{uZT)nGLhmHrYVK4|9M> zJ4&?=F_)uZY0fXgC2U&-9(dqKDncbO&U|yi05}Z82LJCYEs8%Q!iYp2-^GT80gXDP zv>fpG`rQmT?JlLj|JAhteszQ|;N9ngFL7eI1BAX-+{;z0Qzvg*T@$`Y%_~FJt8K~~ z!tE6H6NKCpgP4OKz-s%Tq9_%m#*mI4(VW&ao?;QY@+@njKd`P?+gEiYJRlT_KOj2Qc2p8$!p#CtLt35wP{?O9 zIUWf{-0)uVPSAS4n|0Yq50jvLh3K?Zs0A=&t%3k>n*00&HBbFsijHReuf3z&4$%(! z<={UO&pZQ%<4J`^DLG}$XGXwmd$p*&9MhK_ZaZX~c?>+1K!=Kka{8(*Ac<=eM z<%Cu7D0%eOHDTay_|p22j*qW=NEz@XqthMX4lG02H0+Z#`R~#n66L%m+rNaJ^d03~ z)n>_kaZ2uPT1_#B?&2%#KvonXCHLlR4F8hTW92easyqR2Y_T_0~tSnvN>57S*z@J z%PN1EJzSjrhrD+@zdP*qwg+>O%rfHAY&|^EAgsF{uA>n1gth5se}r8>Pjj(TMPxB| zqeg3>DoMi&>iSWYWk{wMRQKjl9MZ!R1_$oH(J%VhruePk$P0jj%iAmob)fJPW@gj$aBUx!XOw%MjN&bN~!{CY6+d(=?;RXu=1 z+&p;u;!D?4Gnc-i?CjyO?1gUfDR`)g$41LN6wNafj@j#%<|UqRAxhV~FKN8AG5mtS zR+2?ZQt}A7?gELa3D*I2y|;9fz};wlron(bbS6hO?)KE*bB@flSmYnLe`yfi#SOl| z|FnB&5dZY!Z&usr@^J0?QGlwz@sNFbzgcx}LwE2{o&L^0`nX5nqu~5@C!o{Rk|F@e zT^@27xZV4A<$4;(;^*YXE}YTxZElI^tQ?kPEr#1aZQPhbtJ8TxXJ{GsafI7jufCL3 zOHAwbW8y$&5w7!?HzT3?!ZA1-%9mQ0Pc7p6JKe0h|nl4L)T34pS4= z5KnHmppklbN0&BImd}pp>5>5y>-A-QX!hY!HXdxFG8S+9nddC`ZK`ya7lG%9J51;t z-|N+^-E-^5-2$W=xT7zx?>DxIsvY}&VJmjqGOISYWtyP+s@H?zSL1WHW9LT!(K%xV zZp1%(zv87Ui>zBTxMK3A^}Z5#^D)se&(Ea{)X7@M<`%VBm;3S+=bAsubin0@{(Gsm zxymTZ-IR5J`4a%yD{;yTfrOo+prU4J&TU=6A*UVvCkkLg9Eg zpER}cZQly4c{&n0krzpEA-cjWy30W(a@dMyzG8O6bIaXd zIe|(y2*3GhbdrPjvW5_odv}o9Tj9^8~%QcRus)Htu-dB9H&0zPHg3<9>j5 z3S}Hg%hXr1H*gEUV|r^|R&JzX0XmRaZM$lHB@*O^Ee*8l1PZIA$2|(aHs<~#4Ygw_ zfJEwC{7r9u8GfxK(L8HBY!5tcHWzg(c|C5g=q1CY=pDR;uD9 zF6aQJcC@}*^(s{42F+nky%6%n%M|b7CjqKv0B&k3FcC7ac9jzn-N(74IoE{Lg?z>L z{w(lRlRRw&EaW>`Cup~9%bQ5xv+&7sddAmO=>b88@H4JyVE{#X&uq$AE-`% zbd`k-%_YPpCJq!8jtX1UR%}WowG;7X3$XXv zCLWkb#9Qa3f%9bnz85(`_U{x!@6yC*XeU7N`3G%aI2E zXJNh@-K1`qvvtnsL0-n+`#S-1<$}Y^T#AjET>o^i9f`XNgmNRJmgF!@-kGAz=L%l* z;vw_3cqChf@d`w9TapFc_`c(x5>Y_Qg@=Qm+I}TgohvytbSZd0ym1;MC`nA&R4Kvk|#P7w+~8Ba6k)uOa_g#;c|0v>*^0^RF83LoaOJ>-C?U& zCDk=&h8rElTKQ#Q$x|9db6PZ0p{ZtT_bpnxp@;+RUio~F*77BGZ)xq+nyXU|{m5G* zpu0$pl?TbYj|ZE}*c9f^S$LmU)#IeE+d>Zz6UuLCbAw}-}gB|+U4QPx6WozT3hjn+% zdz9dc=(R9t;1knA1SBbTdzsdNE0nm#jPN(v4XUb04zOVRsg^8O@&@Mk@jWAjqVSjS z@+0u7b#%t!#;x5yYWB8#Z^p-9tYWS5uXT_$Z;09tXAI&A@q-^Ep_Ms9A0#9B2`<4N z*jS#anf&KA25{Eg;GJ~Rc4FeLw#_N>e|uZR40yXG zcQV%S*uw$uzaM~xMBrNxf@bfi(+#d%VDPp|ltbiPc(OWL2S{wgcN4y-jG-gYEnUx|zHJaj_>u+Zj!)R7I=^Ux%H7gWbr^^mytNIIR7 zAYOl^e=5f8adOO*`9`J}w7%N*L?+SR6#VX?gjVfSy^+g`{j<&s)m>88>gu2vk@VWD z3Xo>zYbtlqk;!;EdqPYL-}^C>V;yt#?TZhY=Yjw~pFOsS1#Prm<_mmVJmL|oQqaAB z*vePq)@v4;sE&F^m8g^Xi?9PGfS;T3UB~qa=|Mo_uQq^Z|2P~rEoiKS3k}K`Xmu22 zhsasZ2&?81+bPpRtX7vh8w#s6LjxG<(qn@b!EJAD-WOHRghDE<$`6b=xQ$KOLuk zclOW!aoZEsv1M^6V)FQ6YhmLmD`QmwAWIebY5zK^!$XNI z_!cd-GwJIB=*=w;)Uo+CgJ8nOmeiSM1)5X*bWrGkT74C9bws&dqV^+J-bB*8JMYXa&+OUrt!&=bbDbD zGVflzxau>xi+I(aU?v}Xs9`Q;ns6p8evJ#QkWiR(GrcEg*v}r0KcH$bFMbyLxT-nQdg5n-mz9z3k!{3YE z%jlA9*xi9y;o{P+;^6e>| zNSh?axY(x8mXL(!#&HI`c0O5Zojv)3ZWb{yoTCzluU6u_TdBZf?-E2Ybl$W-%5_wK zqV-kY5-x4!sh(Zb{LTDaE76Wn(HWst+Am+7DyoO;RJ=^M-;7;-PILaVOfQ~=xeh|a zbRXp|-^nnS58w5+j0;Y$@zJjg;_LGr&-e;wx1{le^S)ZqJqHT^3wv*&N_18*PCnld z#mJoB8Wqr3BKk-kK~Jn$O?dfge$Qw|spW5jIeCs)ZE2|!-DOe8{`zc{8TH#Kx6-|4>QL7;o1(-FO^wl_}WPD>$A z_+Rdz5jG~)*0e^=p&)wGHibvB>wA|Tm3*nSI-GMB5L!QR074v`sHRR6NYJfg<6h=t~ z7hxC1a;s+fVZM2Go2X5(tsS37M^>g5!qNe(3m@W?wFCVum;E~< z4BP&cr$~Ao2!A-fgnJ*FR}Y2LNwK1OJALEMvs4#Xm^Y6k3ddvbp$d5ZbvepNTAqWT z5o%y%>0571Ry+9s)4Hkc07uSaxUk?)SyHUxLuQ$s4_9MAB;ssc)IL7---|J&fEq5wc;G!BV57Mj(~PpIVOhUAtRC)N2h;wjN)T zXP*Msth&2luS-Fe6!_9AUtzF+$I}*CP9Bw1h!B~o0S{MzASsT7jsL#$1TvvL!0i5~ zm@|=5QQcsHPYH2Wci|gt$Nz4$k(vUY&G@6Nx(!EWaUw+q|7?&3_QHE1= z;lQDYUt7adA|K4(_*&aQR(&%kz!W-8B^4u!^7X_mG#4Qg1B=CD0GfKKq|t}zMx=Q~ z=Sr-+3223Lf;Q%%CQG!<2*yo?t(fKC?PFno$k&r+#98jW9R&Rzc``errf(Ux05yof zKh=%a`S{D)_eDqfMxKxn^J!hStH@iPyg_sQ>atD_w3odxa9#GC+yerOuuqXuSzU82 zGo38;?zwWI6td&HSNf$Bn}}1W#c`asw~7#(liGfiVOfz9F<{2|Ddsf;@p7P?#KO~P zccK`nS)q{yx|A?qh zMo<7X4Z}xt)X}(UO9$rrmk{sZ;fQGDYmnR?&oXDLUGap(5PHr|oWpk@lW|B~%8;jI zUa#)Ib~Iyp_WzUXB6YIBelfswQlV%&pj%`7Ltalr&G{wp60`%)SgNpL;{`@|rA!<~ z#z}t%F!IV_S=I)^Rf;lh!n_z{76moU94yk!%r-)tk+K%)W^c} zn4|d8j{#*F!7(4nGuXS3N-DScp=^C~)dBFUt~h0}7jGX@bnZY_>&DG9PsV)AlgwBj zvfYGx0IZW&Ld3;C_JjUDX1)HNHzja&M{^8v6h6uK09U8#o#%;7A=M_NB5-DaKO)h~ zi!m8>7$g^;3onB&@t5nqKNitb{w{lo_5D2U#UW-o$VvXg3+K(`zIbkU8vLTNi!J(b z6I}V05Qe!8FmKxt!&Wlz|BgypMrGxK&3LtG^xnw%F`~L`9f79 z_vAcqoo3F$Lgo|Sv|JOlWrXXLz+Kn(=h1TXMFQ_ON#iTMH-j&l2kuD=seS&rJGTuk zc*Is|74MtdmtnVE@r0{dym&U?y+^rk=OXMcSv9Xo>(KAOOR^jqUe`gUc~yOXl6>2Aai?jPfN_RP)DSx2IV1)66&St@08c4zEs!pJl*DANDsQ zg+Y*+wD2)nKH>PL)$Hq8{U)(0s&~%fKQwP3?CA-qBibm|L062(*P~^ z5aweQZ!jm)mNjX`x~WYgW}(ParX5<8R;Bn&SJ&p7o3v4zoh$&273#Wt zQy+NeS=U`srN3{Ghj{?b#e7u(b*|s=x}!YUWWdQWahF!AqQ#icr6dDY&4V?V@o9Sy zL-YV1`3469asghd2!aO5cxil8I~CJB)K@6jj)eoufbS-arc%I0Hfhp+?#{`b5?tJY z0nk^y4Nk}NjLoD>-5d`zN^MXKp6iYF+2TR57Nv=K5FaB^rMdA96A-nVe3=vEWlh63 zlM&tb&X@BltL zb6>(cS@Lqc3NsqnD`{CqDnV{C9kK2a(RN}4aKc8fPByy946R7^H(Qv8k@MI(tiO$+ z&Jf;7pQ)RACU*>kPomUaPI4mCLylMz@v=y~zvye=wJpNOh2G}#=zKd$u_y&ceqs|--)1?wKM(J~ zZ%*yAqqu^PAL0?5&8y|{#xG$CVnv74UyU3w*620XY_}zfUnYvAE)F$G9 z;Pi5}ZN-lq_|Ms>bNoLgz-GAq;v-L^@p{BY4eml;%H#R`&6FVjjvK=z8r;hYWa>R; zHcV7&()#Qb(@;ls6bG;G+&l@5Xp0wTN%Ur0zR`6-A1<--h9Uw3F8gaZcVIzO zJwe&LCZenI-I2y6P$H)ukNR+-Bd{Xm%hk71rM1+Q>f#0;qM{*gI}hq5eDIaGZ-RX2 zc;-Zy74msj!&v$M_X42V^T(U6Hd@&4do~yOupufM@%LjLTGEp1VkVvZUY6ImOzTfh zz^3+wE5JdF&+Fx=o>!Pk9&~}skMyYmCe<|X%mH-0!@GMp zL7vu9YSYytZEUpJh_dY*aZq-7#m+7d`MA-gLa6#puI$L1XavP9Z19-JcdCo6zepKlUezfk;|EEEJtwCxnmN}{jeU-y6Q1>357{r@`e!iU>z z1+XUU03JHSCZ~jW#Ru+}8PRea2>T&v+kpvnm)TQET}U(F&j@uqUaBeLv1a_ZXoP;g z>h+ofC0IUrFRh}IVi0E_iyZ~Zbl9{x{KeV0>bu>SWQe?Gr%01`kw_U z8aV(?ckDbaO}ZZ57fiz}_~bXUHkXQ`kyL7NfQu-H<_@(Z+U?_050bgdKkgjMgg;r9 ziQY(mcjb0Lme z@lzE9u&SbhbS`CwC<}81a;ZEBFA1|ip9j1!^$A%S;eWw zhsm(2{Kw(*w~L#OZIWyK%7x0%#-upk#r-wW zmH1AmLK8JsL?>0G!}ydK)_aTR{}lgSG{&JyoiT$4Ko=W~Jgp&=dT|UNQ%3$@wuQ5c zgNj9z3HxL&6u{V>3$V1qoc`O_<&UYPhk(57Cg!DhTwf5jxe#e(`n7?D6V+W3tTvBr z&%!%;tR`+&nOGDHUiFAubP%Ab%eZNL%eNmzAzx|?(6Bru3+NSI0N(af zmdJcziEl2xI_e+`uM`cF?aY?qnIUXDR_R1DAdET92oO*e86~O>N{LgK{CUyk4BcUB zaUr#(UYqSc_IQ98K4{ZaNGye%uND$9)j#4$m2+UV)ovb1;EkCt#_RtEX|37=3$cOHt1 zX^EPAX({u5aZ*A(+~{}Xl3?8KhO@f-cUEoXq*Gy&bIPD~7F-8(IcYlOMbFdTGWY=h zouc(y!%T&b2imMb+2$IQb*H=T!hxmxqG>K$#Rd+tp?91@o?=8Y;@+FS=TU#?k=vc2 zqTPiL*?;~HJ)3#~b&p#y_6SR!q>ZRFQ<=iahi2u6M12ZbnYtBT4jph#To6TaQ?WGX z>YC}0X6To1e0O}uUAyv9Lu@m9@x|&5oHI>#z7j~haQTjxf~X)ypDRo+ta|Uc`_z)flVd(4U!-n&U@m_W z?}8SbVts9lKIxM|To-uwf$ZoNn7i%Rcm47w+StDjc#3)GQM(&<-)HmIp#2fh5n2$r zIO)rEmp``C04TAR{Z(Ly1q!4-2Oc{f+-Xeu?=gZJMT_9fhr|!$S}fUF{>mrn-9wGD zP!|)3>Kt}m9;Ay+Q)}YAjSf}KMbOQDgfmOhF9oxTk(jI!7kP2?FV0%bIE885mS0N-zB0mU}c}OFJyer zS_6fZiz3G^uJFHCE30{>rD$NjZnXSn3RvY^bY)Q8;P#mIybaIF;7#i8$w>H`;ChS1 zoFb%GHl~Gi2V5hEb!BEhyzrufsoPrHgFKQHeg?Fj#;=HhGkt}tMZ4FO!teI>k8!f$ zpUa~XCUefb!o3#|IRQr z|CrtX%uG8$wBhGWihX{Tn9XI`QrPk|ej;}Jmk#)zwOd2a8%|T7r&{k*{lUP4=JFLw z=6AvSt5%2wVG`|gna8=;fn)#qdC%B82ef}YxIyQ&%u~|hEYg^vW_~hplP53gRazP| ziS53UE08gN-52|oT7L5)X!FG!;F7o)N;h?Gx>~bvovXDUCK0D|2I#e`;aa!Po*xNA zpWNBdeCA=;Fru!QC?wZb7u@D=!p6i^x+MAVmQ#U;PlX&dr#M6Zm@O@md(iuA6;#IT zG^MLtgSiMZ5QDoSpum*IU7#>T564qHtt=j zd?_QNI?c^A5?%yZB8nT#2HrgxH5!)vFD|r}>S9ijV?+54vyWwxYnCo^;V5`_GLMC{ zuJnX9F<8snd<6rRk2b!qTc0brW0JA3cYkn)>lVsFX^T6u1SN}O2rb=-Bi{n5v`dk6 znM6=-p-OrIp|Z5be}C2O_iLva7u&d`2n$51WW4m^Ci9%2L!4C)Gu07ovAA@`rnKx5 z#r=HT`r~X47HvG`g((;EhT_sE>lht|uk(SqQim&GF+WTRj^D^evn4V3t|+Y<+7DZX zVL$`P)eYgMDsNPyy;f{W>$4SlqPAihm2XE_5|}M%H0GO9vakSgivq!Lf5Vn?7CH`V zt0zT7U>3$x3L=wX!!UygPc^yolaot?;4L*r94?B~Xp5$$&d$$H5NWg(_zC6ehDY`V zqCWCjV4p5wtFuou>i$~EQMK@6=}j?6TabJMFqkgSMVVi*1>*IC4g=lA#N>em$NhDV zeU#Nn*83iUeaQU%kfSt|Ljlx)M@udRXEk?weZj`SDyL)-@k$W;5@b+zK%fhJAr~%X zSVo|dYza18Ib0n_sj#V{ahGMMgb0H}!b)H%E!Cb71al#W-RVOynC1h^+RlQzp;3T* z>?->S*4O!IJk|AIkB726gdV6$8&|ayZZ|qPbi}W;v`&lS$6rk~->^58CxlvFDv_7u%MIaDxdvA2f_~Aa ztjc!A+mp=%r_fP-o2S?(33Y{C>3x9pL{#fcYU-|55w&vx8m)Hv-rDXbjL2msR;_4q zm)mzHX{*Nq;p)16bCz7ORN}X5@xe7Kq|Rr&o}Bj}c=|Zgcf@)<;IW?j>-rMnh}XW* zcF20ZWr%+Ux{GeR%;a0sNUrefwybjk+33j2_)E5;;j{LVn2q7!R{14qTw+DGz>qh_ zO@=SzQ&+f~O&PhF+nshz5ASwr#RydrA2FlzT2^LBuD&USbKv>_A}KzQuW>sl>JEA!E$u&$erlMbcB zkD0TnQv%W}qmLnfX%pi}IE0v1Y~BLa;tRw6WiYN5iJ0wo_dKJVSkW5jF|&ooa!_3J zsCFVAf;E9!tV94&K(4d)U5%`goLKcC1w}W%ym2M(P_nSB`#jHyA}CQ zpTBRF6d1j3iQnZ=(q8LC%tEivm-3F>PIQBenXY~<=WJ$dssyTOD+{z2lyjl!V9}0P ziEeRP&N9-yo1*FArAusD5C3yZ|X^b&xP)alD45O3c5IInf!4>F*kkfc9SU~5S3f|KA zYd)V{138K6&D^V*l~lFsGJdDUt~FeR6VVegI~jQprm1};${|^b7my<;2-6g|6cFz* ziyAC4JipbPQi|S_4+EnY^0IO!zZE>78u+HaE$i~{4PqKCXFE}f|3?YXEG-~`X*^1_ zDC*a;wEOvv7_M&M`6?3i$u3cIwu5i-h`F~EJeZR*=e9KKAm{kvwOF^futqMzn|M4n z&ues<^MrXpu>D8azEeQNWDKd&UB1`i{K@1uZ-Rz0=^%z?w5W zUzerufA(0BY$>VW8cnhxqYQOdiRis-KhS0D51G{RiPrb#e>LB6v>L`WVR~(C!!A() z@fBGD-m;-^B8MY|FO-5G+o|AbZQ2l`V=`si`4FL(yq)<;=#Kv+SXuYjv^-nkE*E)# zr|3Slsf4(Wf0GLlfM_&m4}1MS_+0cX`pMD(@{J1;H|Ujy;@zRDbQ;{-?wEKEagzVj z-PWDEZRp^cW>3eHjnvdFiXIa3_H`D5>8@BJXQ-kG$6=4A%BaaRxzKWS=47s|m$B-@ z0wBbyRp~SKTA#L4?OFcf+noYY?W*d%*wcB>dAhAX9+-dLTmnx+1Jt?wp+h6ya$oDa zM}w_D&B?dorosise60iVq(3rVq4CMvht9PbhpFZReahF*uOHwlwihE#I51VOk~Hp4 z>NU=J@y*M2U^BQ$ldwCo4)f31{)Q26Uy8H7hn)FCuJ#g;_LFbrR8!FIJcx|FHN7EtyzTBLIc-JgBLmqlomN8rw>x=9+>hM8+Amxm!RU(wrg??s znv$iPu!a@)n{VAGj+}UEq56|_6qqr#ALS0y7>k~@1ZtLLmO|O^1;K4c){M4JJU901 zbtdLod2^=@asZ%JyLg0Fyi|(#vR;@$1jgODpFG3YD~YR)L;^D|p!=!ZiRW4N3N!Qz z6m=Y?pUsj|ZZelqYsSls)BfcWoJC>Y3FQ2C{J1MmU?BiL*I%8sUmm->PXXVGzGj1t zEtCzsxN+D8ddi%#8p=|aKVZ|RNO~g$KesBLJc^Rl!#;HD;fD!f2hGFVSG>BGT|Z5o zENIn21SHXIl9+j?TVQG3+0L_w);Hs%x!lCeX|f^=KZG_*n}UwMPZ)c3l#6Tr`hCDkf%mz`ghr&cz|~r#@m5dNJmUuzGD{DDHVPJ?3L(y;vHsnLzfoN-DH6W z9>TpZqB5AqT)Y#)L|+DIVQN*9=pguVy3I~kfw+a_5op|IYdgGdZmARy)U#SmK>B{u zKmKT2gDz4}Fj^js3)ST2-50YXgt#IWKqoNSjOX^|fc7ZsLORme!J9(tC@lE_{?B|s z(u1e{S*9w-Z7x^;ZI&XIC>Ae7z_F4e-*NHzt8^ERO3QnYJjwfsq_9u^kmm9*pV8jV z@e`*UW{Q3Ah4I*E@~ARt7Batj&+ts4yl!gpm_zNVKT>> z9?M?&;Fi|rl_wLwWxxo4RGFk_4-}J7LZ=VDnQ?Vbpf4qwD93EPpjPHZDt~ou7a={I zoPea(!wOY%8IbBTt60)wpYck(1>(u=3wi)voHusy6EwkdnJ4@RAM>3*Hmas02>7Cq z54Io+ImLn6iF&PL61_ZUK&OgR61D?ts9m{Lv07b7AWT*KBM~GowG0|Gu%b~2_ z&=LHSGteQV?J$Y6zH|nbHk!89@uk# z38@5rTmC{ot1thjE*lceYM;CF6A(sFO8e?wHQvBNd!NtblU z8(gZk+Zod}+IUMDEhk?bR<=s=2R_rL^Z=Ll^6y*!9b|vlCR=6~faZ!KbN%L)L<*%? zL6&HDWL{(!;V-2_qjfPOhBoDdjd5GNOq@|AUJ1Lg@}YeOMe!W<@M zGdav)3*C2MVdeO~RiD!i-TTr0E2P5MT$(k9T_jl_T-tEJ2J=wccthv-AA;p>P_XrE zTB;oZv3^eN+st~=*uNS0HP(ARXKuHAus?Bf4Dq(Ggvb$`_JYo5+$VmJ87Yac$?@~Q z{XM*N;W9q8cw6vkC*U#Xm55dzc@~huKH2EAF8AEj=JJbH_m^<-41Fa;KjQbXPl?$1 zP##!u5!D%2V0iSIfn17GZh&H5#0oqsHB~}0?lc6Vsc)0QPjghj=*sw4+W(3(>-R+s zb*@PqS5*E!QwDuE&bh9eUqp1bUPmXzAjJ~--$`BBt=nPp!XuN_7PK9cK9euH()sH$ z-&<&_FRTH8o8qB3%VU|eK9o|t<%1X3Fud#0lL1|?v)*-O|F-$}{I-)0Zf9G0tQBn$ zYTo_Uik3Zlv1VO9sZ8{*zQi<6!>PA&9Ir$Es^OvC#|s z+J&+LKT3yH@zj=v<1cJcPqiyot`DG5@bAYB7t{K@MtF)?s_Q{3VyE~5uG_(akG%pwPQ1YLe*<=>I{oA&e`nGs+7u5{wqEk~HSkqLC;vO39Jtn5cv83UJ-Mvgpco;n zdsP9@vV-~QAQ?3qA>!?J4AEDiB2%9!k}Bg)OF*3MxHy%;2l+*Lg&cs&HsH1XIlw^( z2t{5{Ni70kfyDR0n`$mi1&rSo1ifGmm%>`;B%9UN8qD~8qGwF*A^79mx!m`yed1rQ z-~at^_Xl^f&1@Pe{onS;8%x5BiU4clvz{s0;8@O7bDJD@c{%?vzO5GMD@b{j@x9ev z6lg|S1)m;kUvg2x109M*L6TG6CfXvrHMxp@sd?d5MqTd@gQ`?DC!PPbBA>KFUJ192L z`I`J~e`2DBn#xv2eOR^kWy*u;v(8wkl2|$jMOJ9jsRvHRH0-4~@3*Hcmg^)a^k})v`9nh{otdaD^z<%Mrxpit0^=UzINN<_?Ie zm;o>1d#9hf`u1PT2wTa>hVU;(ytx!Ioh!QiemZ(ygZq+vbcUJ<19TS{jtZhyq8|dt zC)I{?7zxwuL?+0uwN3l(%q8+FiM9e)dC~CY9^SyK_d7Q1?hAzNv=m}m(=K9Sjtg|{ zLW%g_sk<049J#2*OAou9uVYqf`FidtxOt=$07;Mq6hSCM3ZR*2y9XiYm6B-KDr;em z%z*s~94LsEX&aG1`B3p7lTKiC&ji+2|>H}}B=iH}_&1Irs{^<=N`iErW z8l(Z)p4=)k`JM&Yy$Tq?S~an!v{_W=57`0W9&RMJUsw&rS>`F(PCc|x; zg;^L#{eBHPVAu^@ZoJ<)NZ9ed#>*$MY;LLaZL-6)f#1b{F zH?J=+rS)y5_&_?$cmJ@VcG2{_+K|>V3zS?y14e|kK1`S`}AQsxT2+9qd>eAki8#-Hux^H%=l|J(Sf&ewXd#;apRn;*+oVTzUei2vqTC6ukoF$puR^nU}P0_T5^G!{r6vR-?f#RQ!ykRe5 zjsSq6VgWh(9Eyn%6z#mmr3@O@rPU^?_MKgdZ)&l)l=(L6CCZnwczUr(&Aw+v2mk#$ zIxFbQ!r<|Ti@~qKE*j)KDlp6;*9IW z8yYvJ-T0F_r#_^2;orea7pLYNz%;}G;Bc{Gw=Ra1?~tK+2~=- zCL}M^0A18hu4rB{85Iu&-54J_lK3a<$k-37pkrzOnyJrw0snpA_W$wp?SV}FZ~R48 zGM|XD6DrZ#DD2ENx1=VS>y$1;<}9L+Nad2$qGpQ8M!B2Tg(O9}MwZhSp-^%y+GW%xL>$p8rI99x>N#CSHZ2>Y01euwtxlD(VPq zcoL*{;`Uhj6;ILi^;~3Tuk*nTBx!h6W%;+QI^nam4h!`w-?dkHrkNt$j+c;@@MZ(4=PBT zE)Fms28IICBgSpkLk~?U?uVPKVGcV>UmeYp%i*Z$(;O+C%u~ol>qpj3_3VJ{vC_YN z9=Lz=P=XKx{(Bex8^#&JzxcTtJNjLBGwD6*u=Nm{A(^U111x#MjZyPC_4S?=lf0_p z@s-_PXx%Qielz8iz0u+{X(p;MYJhw@e96s~ESm=|x6$p=?He{^Ro z{rPf_)}_)R0pe8<;F9<1%M^c%iW2L<(;5D zX{E|PcIR}`gTlTfqPE}<8ab1KMJH(WXnd#k9~#iJ+esUXmkRfj-5#Lu33?1C^9 z3NJO)_b%vaU(rKbV=T2;Hv8VA{OdE>8}DVf?5?m5=0xRqnYFn@W$0o?h1_+!$M2#V zWO}W`%6gA_7_U~le&4Wc2l%|uBYg43l42!hDb9~E|DqLZ&)b|BZE+(P#6jF!SbL!K z?y{qc$NgVkSL}YUc5T0L7^h<)Cm?DjF5%izL-~Pg;LFOTcpbCFpsr0lDAarUQPc1{XM*M2$ZG!kHqAgoq6A}DH^k(f8Ckl zP*NHwQ#7n$l8KF6nPjoaf%S%to)x&5S}Ag0WQu(0^v97)MG3s{ci#s=+TkPFC#eQd z>taJfgs3jqyzrgYRfm=>bc33w9)1IbzA3lTvJ%qTz9sSt)F4Bpf_y|!7sZ*S9E5kF)qjdNGyZ?l+7wygnCL(Y1xWP@$fa{R#0`-T^#8?S5b)A5Z*o>3 zN*A9iOpl6Ycl1Q*1o*=KBj**M>seq}$Y8;@;HWXUYI2b?vu_V9JJk5tsoU43TyQN=vF+lSNFL=Vcd)6Gm@hs;H&8Ae>H(Uc^nG`<5T|XFO-wt$TDA zr@{KyEqld2uT~s-ToyEj1_rD8omAszWsBawHGE|9y}0SR-%a_`XrbEXc+gtM{rP~*iKwYoTCD}t^`ke;29{&@ zqDsT%4m4&U_8K_8xbOT8?-&6qkac)V8iIz`b460rdeURTF5dI__?n%6A)SgKSZb9| zEZ-ID z@b|B8zWM1Fx~$EgMlI?o>)}~M1Ak#Plq5+7I!U#Afi$C2Bf~4mL+9*Ft!RAKG1Hfs z7C+1A6HgrO1kQJC%Lv~#zvR`&4ocW=c|&BEVr48XCn;l4NnZso^Elo8csglY`l=;k zg0ZyNNPr#XYCzXbG4HhZCg`Zes^RB9CG#(XpGbWJZ{9S=Iw?#ruYwm1ex;er%;`+4 z*UFrXxk7q((_>q5+4+xkzZTw42#{eSqvw~#qlTAp2Q{rs@HPnNvdaVWJXgd1ZlO=l zVs`^3=>jV6`EHlszPPFjZAX6{1|O`54@KDaRr(WR@yVK+X3{zW?U={S|23Wu+o+(( z4XnFFe~~2;(CKTGmFI4JH^2DBp>o?RT(MUL*b?AjWHuAfbtB_%XNkp3<$J0PZ(7{G zGp?xc?delX?rskSIy^0L{x?g2`^P%Fif`BA!hcHPSu6l?wY96KP{rF^Qf() zAhdGNiLGhnbJV37MI=v7+B>~S?J>7Ulwz@3h_I(AW-((W*`KzwB%WRJ}6%5 zv5+{b9tDSUvZ*lX7OJpvNK;`imE_7K=o+If&vzqJybCDtHlRISNOhr{axp;ITPE*0 zD?XyfDPL!CM7YVV!tq10hWhrlT27pCy{7JKlsj%*{fDn$ zKi&FyX>q_fMKM*4sIF3*g`J-}*BrMka$Gf_ENE)$vJDFLBY%l8O35!Wk#F^)+GPvH z7yn9WE+>?bBS%jcJJu5o#$>2__BNd6L|1HE`$zq|$qyY2NAMNrb9d(F(yZ0A^|$dG zk=LCt4fMd5%REL9D1OELbh&@yUW=x9*uQn|Sf0>H!Z7KVAE=16EpSdxywBYMtvq+q{N`P=^TrUV~^FQU8366~s4QE(+fH?%4;xF9I9mXYs(shRf2$@x- z4XDxS`K)-e?=}v1X8r{KIL3QLqQduEvXyR4eU3ePJ z7CII;ax{}APc3WM52-wHOi|V))&^sfz}B|iVm%74(cEp4(i!!de+i7Hd;2!1-4H8X zbf97QZ>ytzlJnC)sUntAcWD1rhJ^5@6kjbz6p?n@eSVT!B{oq6RlK8Lb$7t^&fpC-k2rJDbjCQ1#RY%hEFNr!@sZ7sXG6uaGg)A z3*QEQ?1v|ZyFUj1rmr(po`Fr(`&6Cgj zbmmgwA2O@U2Rsf~>^GhHkf%+ct4O9jBj!*i3X&Ys!|F}`+kQ9R2{DM2XyQJI!a;0K zoxaqWj$mj+f!Z|n-~yCco$HJSWgISiRgau(NN7)W3fVgGu*qVqy~Sa!;e>gXel1K_ z3`*s*O7C7Orbe+U;xtHI*86m0?s)cfZ#~Q;J#nSX6E1p{g9^19Z|D6Ifi*))Q;`mh@aFZ6T>D%%*ewEe9vKvofqc!DF`XO~7l5 z>&_VdSJGu*QrF-?wO%%>lxY(`d%$5%_u0-G?^n10$=Cd-OVWA?GmjvTc||NMXqS4U zmLNNE0XqP1wu0(9@+uuM%9_ER#t&X-T!b*%$hAiy%saB_E>QIiQLJsy3 zzyZB$b?*2+SxpU5ZP|?Mwt+X0^6jW0^^C|jR(+3SqlTOY-V}tqHJ@n=Sz#whO_i1bYCf`*OrC!G*#1hS#r%d@ z%xda&kSZP-91Tt}KPP)4rN^W2fX7Vu4ww^blM6n0H={EDy~iNtKIc7R6?#rpOr{GTAnUwC? zh3*?s856#m$)q-=rpyLDE0nqp-dBgkLc4`$4|+Z!PB50q>NS-Qt(#-G)n%gGnjwd{ zSd0qUoS<-W;A>IQcZ*ShOx47utBm#3s)(A&ogAm}nV9Z~`o3Qg_og)Kn)1ORMyJ^82{GM(HAH1wAp%2=ZdbIWw9=$R85-60)n$eqq_1%#w>M$L_rx zX^ad;Js-Qik<-D_!bxoy#r3>Jpg(4*YhKCC(Z7N-cjuW09-2Bfb;I?BOqxOX@PlLm z-I%!-XxMNalpry##ugEhLRnPkP;9iqCxgTHB2K|SvYTs0A22Has&*aNuW~%I+lgab z8nQRcOkpxHUlfFfyOKXeIv+_i#ydDHk!n-i7ayYh-hULL$yxNw$~jL#R0dsy>Vp`iOH0NiwO98mFB3{&%Gb{fXbw@A@5IT#0@8 zQVB0K*;Iro9T9X#D@H26DEAb=4(WlfzT6ZkO^i)ffCcmod~C9K55Ko;ll~y?x1Aa6 zBXpZe`W4QrEV|Q={bjO?_cnHzR~|4PCCb8P@vv|yy8+dsm500wS(>^4Tpr|){kU@D zQt3C3*@yD1j#ym%(I!Bl;PeH={Q*1S>Mv4EP?xZV5Ob2^G*DMWI^+;JnG-oPQydKn zq4mjIJfh(KjV5DnGpyxvjxs|*X?*cT z$|$klxWQ+!=X}c2{7M8TkEynFyI`_d_Xy{0&Ef~|8r(;9CA{S&l>6YYs11YdUB6!xXtU>}foC!u0g%we>nq66-EAheN&AxGFj z{&ujW9Tj!j$hKNN`y?1v)W^G$?SDS8?)Y}!SLv07sYlpk&cv}ZC(ADc#na{?$aJus!}ywI+k9C5@Osh z?|7#d~vwJJ+F(Rvpn^;SrQ@#qaz~3zDT*(?zjWj+aR=OZbZyVRN=H8|n z1T~ibw=1~w3UQNpi%)$%l`Fhw_<;ua-$VGRLS%p9ckUe*#ydyaKyE+V?+%z?JgRpG zoR~hRE4v9gbCMcD1FnNpa|Tn-7>+;hrA)Qmt7y|wun>CtVsfy*zs;x26X%D)UmoT^ zoG}k`-csweyO3e#4k;I$UmB0qhv*IaBb z?g|+EOPw+I>OgxsBk??I_LZ4!H0UeFGBktxu1IHueNIcu69pkCXR+d!H;pm0W8!8> zK$oL4^AYa|C;FX78ZlIpUKK!JY_79#3!7&+da&%Fgu)hFZE9~Gg1$~U zQ8GNUFF+^PaTCL(t9Bt+CK6lV0DJ7++aSC?DQ2xHU%6Pe^VdwH8P<$IF?~fkS@wK8 z&!3-*9pu)wjb5>ki3+cu>#{S#5OUTJaaRjip`t&BG$f71)lSTK?mnD?BZfKu?CfRV z0U*Hde!B}P*-|A(9`W59{%JKlD;QdL1E<-t51}qBO>)+8)_GrN;1?`ml4wb!Yuf$7 zDaYhp2GYPFVYM{gB>8;XV7_?%$F-jxq_!;4(A7Y-ydxSuPY|OzVBT}1;-Dxgg{~Ca z>%@;eq3OhAok-0RW%F8}c0WAEyOtg}FYHDY^;y{>*Dd?&m)?nKqZqrj)z`fyFG zTq>5dpKN6ZG*MUUg%BlcScgM3$v&LrosMV?14$v_$eLpn3w{n!_m>HIzqBi9JDDG; zmOwMG4lj zznlFs{#~_O42hFF0&6)Q>3=&COYD+|E#P4Y#XbXf?HmWTHlCkK-4tQ1#wWt_9TQ6#Ar=dfDx`y&!Bj{5eI7j) z5K*^+9p{TzM-#oy zVbj21KS#`asyiz4mn))goN5ZTn2-Lvo~kf0_H_?$mSemizh-I5y74kWDhTW5lR3Pf zLEpb`Ol-6d%I=^hac)^nyfCU!{FpEu@XDXR4sl1tQx=P|i-MRz9oNRvRV`FU#&zd` zp~0%l7E)1xqg6`}GKBZaz*t5T8a|AsgM=9ShT*Te2IRzE&TU0MU3hZJpBW+?H@292 zYf<vEH)2C6`Q~-;z6$h(M@Ok#~D8*E;R=sT17KnQyvk6HwtF{ zI5hZHoz_U&%UgMHrp>EXd6j3=w|wxB2HBG%ZSPgv;r~_l*&BN6g~|5zoUc1owYS_H zzD1`yy6<1l?V4^@@(6w3_|}A*nkiCV8gJA|oA&ssN{yzUe!Vl?sbwV1aNXTe<;oH7 zPddZ8&z{`)t3g?2NaYRRP^;4RxmgCf|AleGdV7GNLFetsP9b@M6XmLlhc6d*%pDX3 z>&NV5QlZm_jsMCdtj{mZul#;$OBs>TSC$5IYOcX9e8gad8M6tJmA6u(zq5ZuE_834 z8|aJX zTB5lwovqm-^2WKN3QMEKi{kb_1j(G=_=uT_OSls5Em17k8g3dv4((V@KXN=Q%_f$C zi35-Gh!)92l_b9CR>jMxSy!EysHDotE5cEaVn;vb8LT~T;lcOX!rDzUgIdQzS7ggy z2Yb?-$vzu%j=c~d-tGs<|4(zkoS6ZE?mMt3*5a3siZ@yOEZrVn$|1%8dAvD8ZQlHC zL+>R!4p>V6D$UpAWT~_)hve!A9j$zDR>)_J|VFrL(dF~s2z z1M|ZEi6+#v4?RvF1rOB*yf-Wk*S00U9Z>P~!J}!JIMWy><}erL82>5lH=m!adKp>2 z=QHVXAheHoW;f>jfdrdOf_;3I)474pB9UkM$-u zNrW%j9wX>Y)Cqri6fZMoxo>paO^{?8e~)vx)co}eD77#JH~~J2JR+<-@C&BCa^-Uj6-6RCdLrD&IAKBKJ!Hv9V||Lv~H9z zG>Y}rOU{zZ>B{+#Hx5PPzK$f?@t!g?5SACzbcjJi>RKFBnPhrJGAHOS3Veo+~89V;+w>I;C0a4=Lta} z2&+;*h51H=%lkRB$dLNazmAzs)Rf%#+8mNck)Z|&>u9_=R}opulsW2z(NmC&-^+_- z=pi&Mi1x3xM6ND2JF(&kVdChvjQQlh70S5io%|!36OU>3GvmAyo!~k6)QfxGF%%`P zo)?E9A^e(;Vk&89E!#J@I+sAZ%y1;;P-}CL1$afzBD`0oFG|jQ#~OORYSLbSO+S)N{X~lAgR+iz5uHP4 zFEzdxVN!_w&G|xvM(uku?d+NhdpEi=6-Uo5B;V)~7KMFe&`%%n;359OkV(&w5^9 zGC)*MrF*{kqO)Z0W-ueTcIU~0use>%m`kXV^@!1_y?X1KTBGA-l7j}TM%#0@e#~Y} zAngOGdc$oxTMZ^O`7h3#rT>SsgkDXya#SKtC=`XX@AoZsjo*N9XXO4B328MTp9h<~-qTVUAJWzR{)Z1&cfp zqi`QMV6opEif#zP+5y`VoI0@AKnIJ3rx{VR^q{)0&I3jH8B;Bd;hmeAd}RI4%XymK@mKQ+=^=`H`c9Bj zRKL8uxM*#$!sAk*`#8HwXEt2c%d_?@)-Be|krU^3bu_}|JH!9y@sUT<@wVkGzO2fq=|UUY4&`cYDdU*c=({)q<<=@!er zWD@BGSoP$NPR~N>7Z)o~%8&^2iwgw8 zBX?itiDW-6>-Ls;JgR8ID(Ze-RH%cSPl+v^Hbs zr#%X1wWe29KAx93F?Sq6#+wr@5%T;m$0Y2k#-uePWH9xvS)*2Kg6ppzL4@EBQ(Xr> z-wgToY$J_~MoI50;};dhRZz5`)1y*wZicU=GyT5G!j2U=b^l>V5>~kbfil0gUUp0*aZz?TYG_bBh{5H*R?$j-C)5YGO>7B#mh@6aE}#4y}_!e@uNO;p`4v#YH`z2w096YuCRSIlV|$#P0x3g zc_bH!S$x98!+cYq!1=|gn#m>ve#)Vz8$Kz-3z5oMqOWNKo_BB*o}c~`wky-WG{*=Nh)d3?mmq!z8(M*8oX%9N$qZ5bE8s`qqnEbZ=L z&d@lFg1h>I4;&Uwg-LI6Uwp8sSe5=qxNEJ|RT9Qf19Djtf53P5s8^M@!Tf5WE8@D+a)y$-Ix=?oVcfddVnP*s5fW*cv&+Y%8769p6NTL&(eYu~PU2vtVhNE(8 z<*6zk&50;`i&I^~cNaWAluMA-LlR<_9MR>Kqgon|%woWao~0VNcK_5v)AH&oA);KO zdH{z?V@y@N#c>XU!yC6J3LJRC^sqjq?wR#IuMe=xf}JEe#)Er;lGo1DcBmxT03PHO zP-!a9=rSvBR$r`Ly8t*)51^I9XOEx7ifV)LsA(%DGI1%f# zq_!8KEsAu=v-Ip+`22TsYqyt@O7gpw75^AXxEFQ1XKT1d5Z&GDl2Y=SS2%5G zdsF+#u_-C9R`S|>B}g{#C5Ce*k&x6(y#ju-89{r0Ir(+pv5owF*}{4J z($XV3+s2u1BzU?w04PQLU6YZ&h`)2kEB7C#yG3ycw~~sHTWEniL5;{QH^Dl8`n1W`-fbifvw-4zc%u2MbvU zMfNckgcH%=@Wykm#!i0v>hrdGB z4)`Fil3o+qwF;(2ud|;n>HZ;+^n1UzlYrGK+G;4qH%OecRMJU|{z@@o<^gtq)P_ml zb?Ni?ZUWTICjAtwNR4ZI=cuLrrHE+dM{#6E?>) zQ6Zl-%*7KFHZ%I21F5QT`NVX8)MTn__fEg&tdJYu643-F7I=hw7=?Bjh|?2rU|k{| zO{Z@r6}eE4*@W|(|dAnOR>@V%6EgrqkNkdPFLeN+EK<6M#e=;xY> z!#HYsEfSF8VeN(2YmQ&oxV`;Q?ECzZAT(R^NddF zL7@e?o3F4*ir-8sL#RHF%fNBof6EUgN=`PsXITT&xBd)MVHdXd=Cm3butNKwOyC&N zo_GHi_7eWRR?cebIDj6)n;{frPzlZDNrhPib?pS~`aawiu3#_V^N&70&jiRy`cs1;DU7x2vKaqvS2hIEyWi9tf?JPN7APO%VgJzeiVgGIpHVK+*V%v z$yginyNleup%LP9(S)ki2d;nNo+&E)JB@+h58*QCPz@^ucI(YxXl{s1vxNvHn}0=b zzxCRv@M|yMf}^G)>27HbO|zv5F`Fqx_)IF3e%~2$4m-JYhEQzTNjO|o{j}hmZ!GQ) ze=T(VbIR;)Ktz(X;YIBny(Lq(Ja6V&n-25pUhsFKEnrRlQPTd~*=-vyS2Q2&f2{*(&D6|^rx+l7-Epe@_Knm93Paq;~hrG=5-vs<(1J$7Ftl0vCeas(f-td>;B zh-0&v;)|f;K^z{f$VYnxAm(HXV;P#Bw6Dl_4`2WVidS$fRcHxdGJ5`(tlA=1goU3#3%=!{NiHzIB59awj_MZVii{g)D&9thrK934QgA6-Ee1#g?KN8L zqltl{YA56h9aBfIAtvloHu5|{R=|F;I{eiU^BysersC<~NMtCKIBK&DP1?YVR4F|2 zZw$B{8Jn7)T7j={lBt)#eHz6bX8aZ2S?fPdDenQpG>f}{jkG(A)mwO}f`2*Y)UdV6 zU9F?Zz#cgKN1Z~qg#l)m>=4;ETNu84tp zqV8dhU6~hgY2UaP5VKvIFB+BMcdSeiZM3Lyxr;`sa8mqzJl}8{)9eUEzb-I6vV|JV zu~e1R(V{VjX7;Y83O7L21W_Jy=0YQbXjQW{+#;7Ft%q1{_VMzfs@f!Ye!Qg6d@d-# zeZHvpzk(w@TlhIHd{wx*0Y7Z|OssU#1G!HQ)*S7iPU>nqS{IV24pY~uR{rP{CG*Hz z&n)}A7#oHA%(*SXY?^*sX}{Lqyyp7eBnS zbm`D;ve=37F5>O$wJFxj2j#%g&6FL=BphO?nmO`lb&HW#H3*H_zvwq7nMXwFtt$m;dFY^+;IQ04TXO}E$@EA5Psq^nTVp5X$H|<}* z0+|O40wM8dvBv8gL#Qbn8+kV7Tey3w4957dL2bd?-~jb5z@>xeB^7-uTh&Y9~Z6DM#AqR0BRxuUMO zIc5f1BnVo%v`Em!!83_zALjImk3&FB;A5num{xZ}#YX@*atlWFlIJWL*UjH zs%UFnMPiW$GTnwx9CS%&iH4g;wJ9s!k>UEsx2lcXoLEuAKCxyeWbn711ceriUX?LJ z{)%}(3L?fBz}0UfpDvts3-wmNaMzpU%Fz83x$+u#sIic%RZE2^oSHTC&mXpyD7o%C z^EvW7N1Ck@H>_dJk z!tdPd4I3aRMdPDZOe=Rb5q=W~KB8fUXVwKnN9>{9b@vRn!=7yU3h>TQGu&mc5$YM( zcUC`)JXH@_TM4VvWFOzB4gB7Dwnyjt&W659i9$Nx=g$Gzs-cFT$;PFcrA|){Y9jvm z_Pa_~ePNixyl&`9DgJU~y}k3m{42S~s)#7>=#77=1) zlC}u6SdnSt%*cANw>g+)%5pbLUJlPuf`+E4W@57u5OH>&f=a_r zWk^o^bQd51K1fk_BHrRZXclEC7=3jj{c&QaQECxIpRyPMi_m5-~SJ1lsoG05?F$ zzxT1rg>^&)OKJ?Kqf}8Y=U~4S{u_4}Ssvb3SAD8|eD}z00# zpWWUH{413{l0}6{qfYprTpZ-gjzc>lZ9z6YrqYp|{QfxAkW=&oxQ?KTBYbKWve`In zUoEsEjt^c3AyaZT0*xND@1fy`5VL`Ntw&CjbIbGfX_pZktN9w0asmQNm0igHK|OOE zr=E(rw%-8ys39sbj!c4qyV7P%*JBk)kK&6L)h|LyzknUO z$sNceNUOB0hHz}(7|^Efo=%Sxo{6xef3?p+R6FE_Z%MUxA7H$sl!u^@DI!|ShuR^8 zow1T&PKPKKTn;^D=)$>jE&iH0XaV0-Dz7|@uL*(rw4Hbw+1!yJ4r4o6Fn{`Tz+`pc ze)Sa^DhTqP>@>B%qq|@1!u>avW!x?6!APN4Fofzl+ zB8w$r>_+X=6>udPP3-jG$fI{h+zJD872J{r;NVz)z6=6X8i-^yj-`H!0o1gQ88LZe zU9yO_2W(g4??j+lOPHoY-0|{+a#PAe*uy+9o`%t8tS&hIsiZ)uV7UWSZvy@I;4nBq zJiPV#fzv4+EHu*=nR-SNfMd(H+~@GsN#VxBQ&(F8JUrK@BU_BD zD8M@MpD>u$z*0{ZW7ZaUo$~mzp?CZjl9eOhD94-M%ac9m3NBQYacWfQ2U5?VWZ-1V zd+R5*LYIBe-Jm$H&LL$Kb zNoHMi3J#f+J@PcQHpHvjm{9T&U-pDRSEGn$PUVa~--C5YVaH1(^>amNA+8HK z#|58=EHmG2$?rMuGyi$-OAG`>45OK5-#KwYa!?J|flN#a6g4^F4buT9{BEEhS7M0} za;h^Xl9Y-4iR=4O(m+2$tPR43UvmI%(=`yMip3#6R3s5Ron(b|mWkHwhJ0B{VM!<5T;6oRN zY|u)D6MK$*)wVgezw6-0&W3?C^x;KrbSCxvR=Ntg(ivDf;$KQQdba+GAJ9DWdHT5j z0oNxPJ~DxBx&tldP7FbGsfXv}|44Hr_qJ`=53LqH)=$dC4&wSY`X7vrJHxtAs2^iO`ETmL z0%?l;MJp%3V?P>HpzySw|M^`~axSj~J-S7v=v&%_=}+x1JCCHCs#8_R^f}pf zC)gQdx=c7~Dz!Unp7Ng;N5Glv=oDERCYaidD!KH>g26wJI^6(Q;#wkS)WWYdTUGWO<6KVr*H+gYBkf8pb=jY?Bj)WT$ zNoT32;7bg*rs;_>_Ewl$ajNpr-F%Q#SDGr1u+3uE`f%}kstiX^2;8*Wo}NYQU(LTF zGrKX*=I7fBoEmw$o>dG#la;f}Y;~TB^u}Vlpt>r2R3?PiJ)94GFvT(Du4Z zh`)?e!=Q18Ufij>23s&HWI4n>+$#3QdW?u~(*6ZO<)H0il{5s-x2%C5 zt01Gl^`sNK!43*<`s&1J?mEnnKSzCcX9Xv2yUC@vUp8XBJ;1lL?JwKaWJh|>`8guo z-UzyHjMw_dGU6QhXIT=m_W|>NIw6QPp`oz=RBuGHe>2_!?P}u8-@|G~aMEgF?k;5i z^Zsx8Cawva{I3+UWtS%1n7@SZ0P=q{pp7JUqWBHqa#{V{(=?u`uuh+THu0rAT9=OX z5@A}Xt)%NlK{f3eeW{3tUACc;VG36#93a-7VO>A*aJcZTZHgvZ9PB1XqEjS838XWL-bt^=!{sHvj;uz_i z;IG4%9N!C;pe_66_c2#7n$kTi60)BsB3;)W(dy2+}N z9$Nctr!YInK&nf-E{&)B_C<3n_)gK&FuAu;*w04{BF$j_MQTlcFK-bS(Esf1#$<>8PUugsDM>jUVHas1ahA5*2tD*gY{(GK0$@;Me24A+FSEL&bIy(h;q zS9H5;-od%Z6 zu?|amcsg^&^pmU*VDKpy%jS-+NZOfrcPCdh3!8;%*s=InNj)d{P^=S2ZCCJ^UGec- zMRx1|$wG}26ePC(wOgM0kx<*l8dTgkoQDP1BDr>Kt?MB$a~0!o;K z%b(E*d>#d2WUfQ8rCkEU&jArtwC6xxr~8N%--;}CALT>K{6 zc^?qg@0zMfqnu>!<%QKbe`}ed0g-vW;f{P{f$MPMHdQ~fu)AAhU{@3JDN-KJ90eD$ zu{$SH&f_kgT2p49Xza>-VVh{UWsPyo71{Ym=Ww5|kftauobm&6E0Q#K@V1=^7et+^ zTEo0nR6%bavL4ZR)_bEuT9xdxjq6``&nykh{@!+!sWZj2;hC%-52*jS20DFU-PT{k z&yliTt@S%gz3u&6^F`up3yizi8S@|GVrtFz`GaHoziQ{(6KY$r*TBPORmskPe1qd( z&tctqm&}_kOlx51$VgZ)Yv$=lB54$SEd3ec3Rv;UZz7NWx?lNEAag_pauinE{)Zm* zmskRu*?GL3Igw;-?Oh2vJDy9?rz+{G4$$L${6bEUUd&F$hw_*|gy5*KwJ(!g2D-Ku zKb~l}*N{xLBubJQo$o>N&m$uym_u|Key7fzcP*l)ChH&T!`m+OG+b9FLzVK|Os8Vs(|FFf+(VKoI>qI_cNA}ov*z-KKJ|yw& z#iN*O;EjYU3Q%jBxoSN|cyBA_n-kmjG8oJFl%XZbsX-&ddB7kSft+Q52zK;Y0U4#* zY@tLf52F5&ND5>fMwrauLz*!VIfNMFTc7#xHLPLTvIE**gM*F6uy%lwo~$EAum3WF5Oz^*0E|x`+POEY zS`WIH@FWiTpM9BG1e%y+ETHayHRN+>yj=PV+kc^kH)vPSb7(~IEm{P+PqTj~J^?JC z?;^Ws(v0x;f%jTTXQlNm5_R6~3$KK{7rUiXHheN=@Q1WRpC^SuiKsm4q~i~-!5#WJdF zB|vpj)Z{hvYr>Qs*^tW(AE=ui*j72U?I?2?=S%23@_pvY#7%!zf=3R~CTH%i2PXE& zP_1?Wr7x>@CdA*ZW14W;47Y8@_RheFoWi*R)?i|hVT=_J6iehz`60*!pNkERwb7er z%J?m3I5UPuCk|gLQY*LI8C9e}o%?Pl{U51_D7jF@@~r>;y5si%92V#D ztc{!#`moDTGRaJDgwKmxxKFxTLroK)X}O1a;A_&z0D~V{ z2X*O;`Z~k;IIxFniFRN`Y{7Q{D^N6@hyC_1Yv`wYVqi&bsqL9P04~*4Z~jwSbhgM$ zA9b;_cW=lEJq02?u2#;5$kFeki(?~#=Q?s6K>^QzP}{^(=Ni9g*PBa>*e;&Fh4rC0 z*Z;=|6v{z(jbtZb@t<4%vZ?dWx~VX={5b#6edXsm4s%qRA7V3TJn)+lk4c~%i*=6% zIrKixt<*TR`kzt^c2dWuw;`fkj?7T%U&O7E7YXV*$t)uZ4c$SEJ2cE?z%UK45MUkg zO{{LMnDtz$z4|qHpD_1-BDplmP700xe~9|>c%~me{tD}wB#JrmDXfjc4rhdDt~q8x zrKs7Qg-GNm$&jTm*(NvBN`wx|O_Q}bB6p4)zkM zHfayXKy8GC(q@6DT;7ex`GLI^h?0z08}dO4On>#u3v>c?p_ER7;e*bxqCyWCWZ!Ev7!xL+$Bp(SmLY!|y3OhT!9;#KZy;wO^>su^B;H!l7 zzBhduGD`ApK(ua2zuO#mAG#Fbdnz^TKPL+}Ip3~I3%6qySDZ4T9OH3LjD;exh_d-c zM1@{CK`GX-QosuWC*mLd0v2rDv-I+X#dwpfMx+fUpebmoGk7x#EXw_lpAh^zY4V&< zR}?$abCMI|!n~t||Bg7GI)PV1Wdk0pq`Sj60v-Ua@OX-xikVV~6b=6Tw%cngSn<4F zNk+Yv1BqUKwxpi|lPBVx>@&wVCOxV(t{oR*?#57$+0suRi`<)15!rO67JUU4`FG>u z^=js2%=P%$I&M{1EQee!t{A^HK-3!Q!a)|~%p!OF=Og4|EN>pZDD zS|Ai%X9^m4kN_O}v1C8>NE4);Qlud2s)B$|zbPo(_&DUV2g8audjK=al4OTu3qjBD z+YDLYQm(i-Z9^CH3H6AHOzFRtaj|51O%SinaWp9z>zUTDg=At6^Y-uyDuSr*ZYX#D zbn3|A%I(c`5dg?m=Zh-EBgal98f}YVg`rs6D^o6W+#4IhG|Y5!5(lre>ty^JFKzeq#B&#dXH&9$;RGlHEj$ig7CK-cos_& zU)Vq=Y5Vx{_otKLq5=urC;3RfMsyO#G2SB%d1QMB%YX50F*pWf_6pxEa9wPe6gN}g ztghNH4fvAW%>v2|C2l{0L*6)GwApQ316%ekOAVq-t1-WDfa5e6=D@}L!S2jhI{;Y_ zIgXiTHqb0cQ6BWA1Di>aZt2(ZPrPWaFZ_e{kWmb4S9DhcoLf@|_DTeNjK*JL0KsA8 zoXvHZJNYtvQOF1a3^=CZ-?S`#8(KsbHjDlNID_^%eumTuWyTTj;cDe!aX#iaW-H(v z6lB`@2`W1aBKBKTuIj=g+E!d42%e)(kP(o!1b8hptI3@K5$9*`+pr)2^fzULfACui zaoP^MH-MlF2A7|Gu=fOX~z#%4nf5Fe00G-SzFJ4Es@ z9^+0nguJ+g;a3`ZS$rHyLIJqkN`FF^?G3j7k*Y(TVERB!iJmyJ-=U9^30*shD(7yn z$K}|CSo+IYkLoaO3NHYhflSHiGSjetOzwhSQNqU|TX#(d{>#2?R`-Qml;qUbcfW9~ z@>FMUg%dTY?k)V+#>}K(k|(t|L!M*W6Qct0c|-s(hng*&QHwo^h*cSD@)-D10fKa0u ziKXjRcmPmmhvrV=lPo0gd3laxr(^ui_E8&Vv^)89M-?)Pqd4pY>nc{fE(Vd zuH6F>*9_(Kd#bpUXqJ3)xYg8cJ)WtHzj*)AspQe4Spcy5?14^F^1^U)S%!SAr}e5P zGA!w*WSPuIAXvl$=;;k%?JQmS-I5l7CIAYwJu^eCm95X>t_|EMpO4%B!HgK7W;6!a zWfF@LVNupb6^&_PVl(Mr&I+UU2D>v9p-EEJDXCHge9cZEXePu@#3Lg}H(_{BQs>Tq zGgqA9{u0^rAA(6abfNayKk9fH=lg2xf{P~fam(^YS@e^f{}@f#SnnF_hvBZJN7j&j zgxV$5NaQDB5HcN3n!05K(S}(^AqGnIT059n%w6yvcEJ+N=rj|~ajGo+Sp>Ug*Tni_ zhxrflYN$|AL^BEiBC-6&)mTY&67(d}~yBnuq;(GL3op+2Z?!y85^7+X_pD}zu zi;37PL$IH=HS_LO)nXU?I20+!?{b~gO)i#^SNHc-2YxL$TupwiVTn1KEEeu?F$K{S zY4PG5Teq^*;?v_VKX(v2zJ{UbRMG3`Iz;5QmY-B2vXEq6`yVwnoyXi3vv5C}1bC%J z+O4>~0H}HX0MtU74o3N_lm|C|y2fk1q{vs2hSc6imS@8Gz6Q66?l%|P$#{y!KSmzr zH&OsNMV`7KDo}7$3!o9(l4@{KF>7LCe1z&}JLoV#D+tG!b1aGh<-!}1R3;@5>`u<6 zMADR4l$Z1hJ9ZnEg3Kd)uq1{y7%0ih%S4OXksKTE+Re-<0^mi+M$f@E+uE*nWNrE6j0~NX9C( zgNU{OGwaC55*q_B+X|+kjR#ra9+{CW#|bN%@het{-o@oqc+UpP=Z@TBsmADJ+XJeXLl zTWI4bzo#n$*|Pwk%?Ty`o_W$y{L*Ugws>;6TRLV*ja2Dp$ST5`DINJ3Q498-?n^0|bK$tJs|!Id zlce5L6MDFrHlS}Aa8hyLW}t$GmFbcnywS zCRcQTpI)U@undG(-)8(9>;7>7icv!GC+*UdbLu7W1gUvDaxS=^^q+-Aj}TLe1vaN| zPN(v#lLKfhB(M=H0f07n5p>?qk)B(MKKfcjXdE)MaefZ=Jc;9U_kxJ?$B?ewFC`Ns zPN9b5kKJG&5Ft1)!Lu|5wWo7k7`%9^YlUAH`y~`;triu7^8u(E0%hM))KiKFLd$}B zX<)*Kg8xF-G!dfIh23MKRKGjKhf;XweOOZkc@p=em@-WTG~raFW)gxjxuo9mf(87XR{D2q4q8jk8V~(~khKAsQ0gp) zB%fGn&!n`1CumRMMmo$h+c`jTGV(<+8(0&5;Y@{*rNjunEDe@R5 zjdV?dR)g?NHle$7R(b$FZ-N4zP2L}Xz_0&v(Yk_Awzh?~a#yk`DCMFMfQguL>^iZQ z94cd29uwx@`AL^&mkpkfG=#jZC{vtj4A3w_Z)s@h`Cy%;St_vC8HTtf71Ub?mxss5 zM)b_D;zkq(tx-B5C6&`~Fb6t*eeUw%0_FG18*g9TCcYND#{JsEwZV^n6>fld`)gdv zM~XHESkj*pcA)ExA-#x9dMJmQ8EcCre?&R6+unYric!|e$n11js7wirdVqpJw42P*6n(48&Owm>w ze(PwZ9bh%BSlwjAUdz$XiJFV=h4@-Xc1i>ys@?)JELlpqTp`>E5i4PSw1bY(va+z^ zi1PsJO9!A$jGHYLCyW+B!tf2K?|Fb{Nn}y7De-P>5u$mcfrk7KdNXW9hnB5~?jkMF7V?z9$fFdXh2cc=1{g2s zew#ko({M1r7(ymss0p8#^}2kMGlyi+;{gIQ-knRCqs_v^w4j;Tr=(scmfY+)r8vQwN5lfs_(-dPX)+ZbP$U>gvWqTBgc{rW#sSEZ`jfev$0BvxE_GGJRn`n z$0{fD(Z>neUOeOsap_MY{x>IepQJz05kSZv6uw{!>;N+8mkF;ZGN|0k+$@2K1vD89 zQU(=s1_U1=TXg_ScU<3TO$-#1|Gi-c!nSMi^NEFiod?Ri;Es^!;%L?6iR;EDqmN*y zqNPtlhw%_9a{A+b(m<);r8u{NkpjqVRcL26q?1}Pu@X~p?gwYr?W;yayK_xZ456b`kN^SB3Kl3ohlleN%PN>7M`rBasnCqluP>%%1=^d-l zj2P%MEqq|RM{6Vv8AGyD#{Mops&kk3Hh~mL`HVV+93xRV&rz0Zf=Ls}S+M$6E;l44 zCiyFu5&~;{zMRKbxn|GEvVrggf6rSMB!nx#@aIvX0AK*_ilbU&E^>uC zc!$bL;&o(U$6TOE$UGM?@wGRUEP1%arOONoOPZjei6t^Q08KEv4^7~>Y6G}{Up6K1 zI~EG}uacwBE$Ja^?-b!l< z8pB*sGV{drCtlWqG9fn2*M@0=#2x53=F4+TqyeNDzz*3kfw{}P4uH2)0>GB^zHv*k z;sKQ?i=)?UP3Rpc?Tdi-ts-6IZ|fBjHiPJ=n%R)Kgy|r5+@+H6X-Tv%5X>`H45uxfF_#p4Zzs{0_xTdtmt*Hou>v51R>$oC2A$E08G3#SRCEd!qt6M>Gd*WXq5JWGmtu!W&W|wQT`#!s798^^x06 z&!v)LT&JU4QQG_&kmKndNyv-a84j>H@FnX_0*`i!|9iZLIAjj}VGsQzvEJm9HjIPH zHhm5nC+k&S&BX?p?EHs$`qVC>NjIT9*mEOoxk1KgY4wE~TlW=vK+F9DTx~TT0s@%M zF(u1JNr1Av;Oo0$SlB6kn$xNA3BylTUft-;CWv~0f$-nX#$VNq?C}p5w z)i&HSqgG@62!G4ghzSz#1E;G5-57QLUB9INs4c}Hfs<-e94Ru)=3X6eqWc9%_UXr- z(jf&DQ7Yk+=H_bSu~hmCJm{gNqZ;Z4+z6ano{Jo5wbyVML6oTyJ`H*6 z!@ZAfSZ7%M?5eCU=f4E-d6ySh2uVSHPUROgx!mdPTCa7%%xz=(PU(c7@|a?#7)R#9 zN1MwwPl8I|{(C+`E?vGbq`N!Bcp$9yZTEE>@~@4*eAjn8nl@bnN>dh)zvm;;wZUo~ zo>EarF0X8}1LbfP-#5=F6J72cy(Y0fmYeG42lsE+$_D>*#4l5?o(A1ycv8!c{FZ$C z!m55moaW0H@?;W*yuRB42sDy<>^L2#R2m#?T|oSNpB^+&cZ1D@wU4;7b!u~a!%O#J z4IocRohMy{P%kBR5FHs8)aMMXQOZAM!S)&B9PT6qNh2NP)Zm!^(F|?rquNj*sfU1f z3T@os<;!tl_(>5b)wlL>`gKeSJbS?U$t-d1p2p{Sy&+;P^rT(94s)WNiCVP^TL4s6(M|>RygoY`KeS)N~ngNi;}X5U+b@r3Wlh(JisBCpdQ(fF#r~b zewtL5lCw(;F{61F(u&=MwzPo?OPOuIWFS3wra;g(ZxxK+*%M&JFII3+-OwzL4>h^* zt}pYyX-49qS~N>r=w1e3uYa*b-6W%J)o=_y4-oH>}+km#ESSGBQ~v$pSLS z*Ljmq9wn*4Uw&(()aq6W6I_)3SHA*iPLoWdJIqD@_a@I zc$59afMPh`iJ^%wo-YjV&OAhXL;AqP8l%3!j65-acnva1FpYA+L_HFbw|>xr@|tWw z+g(Qi2J{#IKam01L((xLDs?2=DYS=0u)ut&6Nx6u9b)fvaxq*WWb{E`4hx)t49bI> z5uT}86M-wyam7#yF5wQKhNbzt8k>Eb~mr19f3Nab?TBxEj8%f$ejywwzBtwPL{aMa+? z@+%x}`ojDdsI>Bw|b{KKm4@qi~PRM^~K7jI`=G}?pr(D=y!R?6R;UIN*eLKY( z(t)_eSBVK+S~~~H{V5?8;nkenbFw!i$pXvRdml1;bsDD>c|Ij`pd)`*yOuR^4@brc z;tuttBwFgjB6*FG6Ud5kB-4UDKy^6s%cJ_oqpHVE-VfLJbv$!k>_|bdnw?+NG~{z- zxpo*?uM#xyw5^}_$F5MLY1kc+H(uL~|F{Hth#k=eWLoW=cGe7- z#!BbxAe!=Wm9~dpxi6mb&>4LFjIWe_5h>!2%wc)*WO71$Psq6<$6E*StB0n)+}Vd# zB=YBS#SAHHF?utab35Lh#p=V1j$_hzh1*N0vPbBNfWd6%i>HprM!Y@pl%`Bj4Yj}0 zy3`k11jP7)5+7zJML>#yWX{{sn5Xza<-A*Okt~}QrU^i7>_yc7EL(y2@TKCHKE)|p zrj$E+yHNRDSOA^0#Iv`c=JjS%zL|;TW7{O2;e9wtCq7kE6wo(Xd`f&kQvhzrF)(t6 zin3vi=wwdr4~QW>mv9qLFHmEME zv;{-DG2j$1UZ8yJ1nqa>Gzn(JMj02I*^&dmMkqEA4A(3mAH~Pi8;rv#Q@M5d;_lNR zDWz9?`CIfl!2_dSf&`7fAw&w{mp1_ZPXaekppo(LLt;*wF0z3m?_m-8SL<|+Ok8ivAlvZp#bwL(2U5R9J zjqMrzcFf1rVJ~t?+;Tb$wHhB`-aceQE~1xND1|<>0jYF$iY;RKbBB%*@JM6?X_`H- zGBB6S%HRmrg2TTb3VFy?vn91WJzAo%yd?PYS0X|P8m@%OrpPd&xs8!o!Ly;dD~M;0 zZ=XzeIkbE@bLz=$o`Qx0NbZzab8>z0MfwFQ{r?rw@w}=tJYquqS z{gZ5m)ic32Pc7+LkZAuTy&{E^J%$C79?={h#hO6MXnXgP##dS3VBz-uCf}&skH&pP z?;E}g4e#S%k6t*gf2fv{56QkvMjTf~z*;7g%VV`_NAr-He_59?ZM(lw3@N>KIpA?g z#91=qIAPL!0Fy%h5m>DMNfwXdXQw`_rre~^l0A0ZG=H%lu}?FeviV4+xYLbTmfDF^NEq56ZiU=I1ZO|flaaC0U? zOk70lC6~nbSX;I>#~9D9PK?c@NUp#9O>^g05R?Zrjd1MU!iJE;EivBAGSiY>L{k4p z9^sL`qVT^GK_teHmnis85UvBo)~iGzcR72o9#4<&ITOefzrm6`Y@&H&*f& z*228Htl-YRpd@C5&9j5f(r`)w@emyO9At(+_r%MEZI=?LjAQ&&MGHYtE6B>57`Nlp z3p!I(zt2uP0T9{@#|+@wuob~i z9p8}laXw389w6>RA9!1({lQ)GY! zDjf!p7Lrm@0C4-|Ij}~Beb}djZIcCa#2IFM$u~)AEWbVFEJ}R4@62;doMzsT%inc0 z5{Zl==@uD>cf{i|6BrW=WPt977n47@zTG2XM$gX9oiyJ`G|-rpSfNg+q!-KPETN!* zXX(fJDY`7cpgr+SifeWcw=4_%1;JlZL^7s}62DUYWZTjF@&g%p76l`|ap~pf3`B_r zsLgC_I;o86CnFyTL8ro3ekiD1QIfy=raE)!c=hlr*Ve>!p%eG^islTyv4%7tEb-*i zaxLAT`do-iGF;%qoA>KeoS8~rgvscF2tjU-zKL?T7bz zj^;{DKYt10afF+gO-^dDK%=V-scJIT?2H$VL~Mg4okaQB0`PfuS zPC9Ri^Q23yDQ-VD2h3l#c$;>5pRIKM1MyhbA$iSY;3^p@C7t)M%}BYB;4g|87`hQlhm4oZt^7_Zt?-yQjkGwsw>dV_r=rl(jV zm)kbu_4vNkSsq`aOE5k{)2xAF3rXU{NVUfxOXp1Rkf4d(DAOWv;L%iTi2M5ANC=cT ztKneUn>wUpc7_|_k z;@WwV?FpLeM{GJ_?JR_Y0NBIrqkYv)NxA9P)SS>wSr@gmCEg5 zjvmADN-pT~xDQK)h0~0UHr`#H4BTSuA47S7v}suv4jFI z`Q)1oCm|tMPbAm%fu$^nyBd9c>O1p`t{zwW3KLKT2oNmCKA;9`21z~HrWeKEs%_c` zRs*2LfA>To;60!td&XPeonQ937&y14c)RdIK;vZ8YZw2y4~ok^PJw&O_2=Kty!^I{ zx2Kf?Yd;D+yGPs`#Oc1G^1uJM(^vU==WHR%2mhBy@IgqVC;OqBDQ6`a3P74Bk7q&T zObWlSnF*0Y-$#1JDwoVed65h!BvstUEhAjW$-H@62+Ercp_+3&yt!Fsr4%Z)`%xA+tn1J$O$ATif$+T@F~VOG zkpt1m5~ar0efsx@BU^dx>Sbi40bTN1M}w~Rzj!=h(z_5V%HGo`6QMZrR6sgqpg3^h zpYRu-!Sad1L8m)IAC%|%LQWNg6n#7tUU9tj%D(!oaK5aPauKXFK%^jQ4=Ro8k>G6#GyKvV!iLd6M? zHiAHo_Z|>H@oJ!-oM(4njK$cJ<)ni|4E7hzKaIFAH3ZV?- zhLvs{u8X=OZwP!-&#)IBLq=!WO;)gmXe&kcZt8M&xbqwOBnkW^AtatajzH!S#NGGs z{uDbvXK1w+!~jWu*VF%zW`<|HW(VJFEZwqL@^QX9C+r|sG4jr6_w0o1o%!m=M_0G* z=sCWQkQ-JE6?87UHT9vdQ>DshLQjqxa3Ze7trTF4jiDV1;;P)Ywm`>$cD%Ex9nUZxjo9&l%zlP3q;kWzRF| zcV^RqaSH_BKT-xGBB>A%53EI`#ZTNr8mkeaRTe6(Av=Vb^l*NnHX?_jqy%q}>3z5M z?%RH!?r<;M{YWjuKA2io>{r_EX>CzfGWXhn*!{lX1MzR&=EwJPAC_mgX8(en zJ1|$r@BaI_#gH@9@Dy<-JNMk3cz4PERFLoDzAXBym;K%(W5_e4$;-nuS2}Ayr{IOA z1BS~>N~`Yle*#0{|28OOU^y{J{1nx%mx!IhX22q!HE29S4vcsHvjO=71l&n;(?Nf$ zzp;9~Sme}Jt)|co8_t7T%IrNB-r;xn`}+>Zs{xQuD{Ev~zh9a-nTs@RQJtk-<@Z=0 zp0wS?F7@FP(y8m5J&iSxycw^f{U0WWo+hu`pQ;#np=Tm;#^rV5TkV_k5vL0)LI*iQ zyER{Fy&>jZ@{q!jbHUm45`B#G36_-_3j^64#gD(9d|aII5)w`Ok2FO=DjUa9DxZv4 z_%^VH?MUMhin@I7(6)zS0}7QtfY6T1;GDEGqXaJ{BmcS6!JO%zIFKspJeJ6x6vwu~ z{Oc*ss;dKC)eFPRTSH=U1501zvZ;oi*i$wjSFtR!S(8RBz(>Z!DX^ksi4P@`r>#G# zsF^i_cLTAcM~DhnmzR-mhP?`R`NBzcXs+IT@g*c$#BJfz`pvodtiGZO@4<(`ne_Tg z56zQw+tJxr%63YXQbbn(fCVEHEQqqwh|EVCKpaqMIC38S6KeJxIugBgh`JYD>f8Gr z%W#V+MX7hLo<+_4$5ud>yJl4l`f#2EgN>2Gxyaq`UiJKo^qKkBv#O^RJ0rtx zK1-?Ny|&>Gv!KxYg=+?Q8;mZ z-M+Oldh^@olJB-(0#8%NO7!sQlOm}0k=7d?z1QD+zYp;?qteW93a2i#A>p7W#?3qS z9@LKBtvjTc8~scm!Swi(YX|<@d2qP*H@7z=qq60I*G#2V*|1)J;raK?dUN+PoR*5V zfWPT7s4M%n669oh*C&T`98j0}dxaTIhV3#y5V_fE4C7aoSdWqAq-)e-gLZS^uLCJw z#Z6X8+xc-}D@ZF=il1qsYq{U#{80&!e%Oh%fVY>f2*X%(+U3r2In~lFyt~&V?3+1srC&R&e>k|ELb5u^(A&%kk*i*e+Z>V0 zgBew7?qf|wd^O8jzMh8#06kow(eE)Yy<)Mrx=(NEY6?uQ)aYxvdpAUt#^1ZRfvw%CUiTN1`?U>p-s%@@l{2D6E|~bXJd^4)_n-^5c!65@f;*p@*IRkKg3Us`%{iv zG3mRgSGAy-+<^;XKf|VKPt5)MS{CB7AC`0qt+m$whb7W43;}00x|4#|+8+=6i)vaP zyhUn4Q7;~!o4QF^ofE%ru`;58gFd2}v$%ipyHyJ=-EsMvR4;PZYklyp7$+M$Bw3O( zdW)f>pS)KF^&4j7g#iH4cSsne?v)@x%vS9Gd-{1GUwJg7i@cI*w>aoA% zW9G*)11FSxon%p=CVd{wW!U{OO?Er9ayS5&6E}J>$HCYEVvXk`YMY?zhOG z|9!hYwEK(P>Qim9@M5+9zoqaXZNbIr?s=czc{tO{BFAi2d@#p|Dzd$Pp2O36)@QO0 zj@UwdvEEut3&<_crhf&S4|Ts?{C%bvWvM|taAV7NtMfKlGwplvs@x4H)mKOU$kpAQ z&zp&y^PY(kutd@(Y{{woKDnF&=)hfY)(|QpB zNT;9}*E{X^XwLhv@XoHPn^(s+6rAehIus=r2Z!qwHxwh0E1N-+*}Cjg!M}doU&BNE zVkX%8qX+xH?oUFTuG+fXhp<;_*QVC0BuAu@l)fwDb&`vV58Wl%k{lvK`ii0@|0d^R zk2J}2A84;~(|mPjy+00SqEr<+m52Iy$HD1HE%+JferZnxNk=!iN3XT}u>DGaU6-$K<@1Vr?#Lq#xQKf|XCgX|f>S0_qapWgY=eCcsZ z2E;sSkqyf&jBbT-HQ}5Fnfg}nB(3yCaKq~8ptAp;-X?*cohQl1oZIb6)N|azz4EY4 zuY?-Lg6a_0v#|Xt1J2sio^M*6#vB8$y~pXxw}sQEFZuudy8H0A`~Mb2^vi-uZh!kU zY$-PjdGHn_p9uK=T@A2K!59Q{7zcGn3Hvml38z$Sein}vdXJiFWJ9_THBtcK{yK;F z8(J21{x>a=K{g9L!~#2|oe)7xSXb2M+FN}vDe>dP-0Epk{(ZCdO$5?cx9=-9A4hJb zSVJWLoyr7aLWFwngoc=MviAFHSLTvLtnbdJH!5BeCsIh$p!Qk180jA`%qZ!o12v)r zALl0E#2&ac)wbGhsa864`mR6~gs~#HTjiI}H09$+1}nVKY_QVpHd!4cR5QQy%RD;{_=5m;jF9_i`t}aqy<6)r2ik)i;N|9T!Sj7 zCIEpj5>HOyy@rptGk+?zAZpTdU^yzgnhnHqD5<=xy?H{2sIFc8U=DAVz;>AcrDL*K+q{!K*d7d$^Qm+|t_y{(Ci@D)y5q!0Mj z$2X;N_aVO!t4Y;qgDwCZnUpxZl*~-b zenczwKGI$nxKfjPO+n0W)Ha5h4d!y1Nk1YI%z5KFEpd?0CGA?hSB2ITC)#rIPFPyO zTQV~4@2Q&606{>$zdf&wfUpS$NZ5-Ck{Guv2!Ig1%JgQHjE^=@l~lIgHCSobBz{NA z>R|Yu0T{35RPa1#c8ljb(!6yR6~}`7aXTNA^d@dufP##Y9r1)t(AI1L=EX)cwk1O< zI^PG*do7zxDMvc5bA|?~ucBwA3yP0c+vNM^oV2jz@5TSp`<@Oit)fof-eK(7#oan_TdLyb^n5L3#JVLdFtE13f4`fvBl>6E zwUaIo?usuj|kL#anuso4YP9GB2BcTMce+ zZsAS#_j|N4?%XKEyZy9ERv(*o!l}~l1ad5HRIW_BR;SZ9vY(r&2C2J!g%nt|(5YS1 zX8CT`I#J)6dXg%15Fy!@TUydhzb#x4o7U0r+GRiTxLIN9Gk4(vPx7`ayR6<(mVszy zO<2n{OxC=~uk6*If#cVidWTt+?di5}-Foq^mSLXD9r=OB{*D&1tY)75&V3<^Pe-fk z5>MJDHQo^M>>E8%*Q+zJx9A=APTfmhQhLqg0x#*=edzuxVsg>-rz6R9!y)H*er0r!&oY^6ymVz-i?U+4oCpe?JYJ ze*IxHZpvrtY|C|L$FM2qQ!973Hu|#!4Cr$IM)dDAnSU!vL>6V7DR=wbEjEAGJR|kr z*A2+eBV65Tm#63FlW~h~&rCemR#$HTw=mRkk(puQ$+#Eg&{{JuK5T22A(TJXze zz0*RkN?Wkn>s(iR9zE2))50J6@{V8gsKig~!>;}QP{TAjs;#I;tc9EIGWlnEZ#KzN zE2?V+Uuv9Yr|!S8w;(-3d*I~=irsh1n;rBb-byZi^79|R1RdSY2~%0dzX1F8be&(F z5gyiAZ|_bfF_$dEkT2oZv;JOl)Z!OQSV(HuXz{#$(~Cgsqc1&y*LE|{bUQoZn+U~s zt_79g`%dVIcD^%vY;^sv=Z}#~k-f+T#B<&i%OLO4^G0GvrH#Ed2$A7>I%)%|WqS%Q zhE?CKz=w?-6`ouV8` znEKN7YHAKV8GorOrAW1~I@00C)<(!*p&f>+A7=JXZLV#s^(l3v=vNOERbSa6=H99L z(=~Nt^X1$3|GqtJ*&6GwUTI&97STvRx&e>z{0d+aE!?!F9~BdB8L55;3<&$GZh8*< z@i(agft<+GrZDstK4o5^>D3lp z5WCWPi_|H2-bMU;xgE($OWnW18O6>p_Uw;^gzM=Oo?UKqqZmzf|H(fuoAxiDA|4wu zsg`rVGK|wv%d$Q@xM&Kfp1Qz#+g zv-W;d>zgAb`>qdH1h1`!8D77$mXLXL;LjUp>5MyqFQYZjjM>fMMNaHL3&eX2O5CY# znT#xHe>3FGrm9MnJ#$`_sSzT%bEO@d1bti-lPn=E2>G+9Q>H}EJZ@aGN)wFO5JO>& z7H}t`{MY2lG%qgy(YN_9JGMrF!g6THZTpie;w0%O?eDo+pgFPVxJSWc?g;m}=GwbKSrObvM+8ye8&8)rCe^EUodqjeMy4Q_F z8a6fKx)tsOxZJ;VBgu4`vVq>SlKk>Z_`8)`^F1tHCRfB>)n+C)*15dCMrf8JP^NpU zC54xIGQa$b8PPKz9Kd9x@q(y`=tOhf&!8~Inxgsl}Ei3~TNAm+Wx)`f673;B-uTd=(@81ZeT+h_N7f={m=WDUF zDjT0^I}l7jpn6A2)Ziu~;!CYteog9x$alg3;P{~x^o?&Hfp?4!docT{l+B_SHlTm6 zG)JYw)v3W%epl?9E*4w=So9A8Vm}pZnRWZXa>t8-f7}!ErBo zmLtb7hHw!E^xJ_4s>+EuFC5mpWS{*G2nR_w6CRh?L2qM~@pP?g7cJ>iYvC0Rnnn7p zr9UQN4}S3)EFrontM-KH$^zlE#rNGCr!4jNIF53{Q%L zo}*(?aE@bUEDm%!^^~YUydOL%#tjYdRYa>Jb!ThC4~Qk*;&;R@%lk;3bTd52QC^*Z zgEHy&sSBb6H1G}P+bz$#T2G3`)Ku)=E z$CdS!+dS#3Qq$mfY3-T%E>#8DkUxV;tviS(8yjFoi=Uoa&QOmX6o_A#T$_lTn>l(v zA!XR4DlLM9#FADc-3Y^}3fS2~+M}m)@-%p80E?j`wB<*)AT>JO_F*j{r8ua|@#vRQn zkE-W1Xf%W`u570QU330kb_0`g2XmJl8k?QV`GPZ|%X=>W&8t6st!Xmw(nP3+E4!pfOkww3UEF<-v z1)d})zNRf21@JwL+YYqvVPVP%>$17PNXfr0c+ko&J*I;_&mq42_3!fF!8-?c(bOM@ zN&J8aNk~$6_SYN^RaFTK48Sq}%_fF46=^@_Ih}wQt6n)o2;;#7GRp&R>Yq&3MH0^L zR;RgC+d6I(52_I3r|+49%(4IKe%!B29sJ(5b#3l&)1+( zBB=9uRpN52AnHXF^`G}n;?wGvDyz57v?pMXaMk$pH~d*uB<(5=q+_Yeb1b(AHNrpP ze0E_5C>aH&)VW~33xU7T{xc6Amv(-uK7wP9B6cvU{2t%CICQf@Y`>e-+vh?_aa*%f zAk9f@_s4K7aYz^yX?WLOF>>$Lt5nV#G7{TZ(_)Up6nsA8|Le!VDYqjn-xogL7I*(# z-|hBiXI?|3c8T~IwF8K#_@<{Oy>2NTi{Y-?OEEd%k|WYbu(J(Qre!jxKR~3}#HH(% zWnM#L5$dOZw)DOY=RKP0icmRxg4CfOz130p_vP&~nzE$uPdZKCyEC~FuO2CtB0zZ*;!C#D);KRe>(7n!f_{5kDgE6ddrnb{F{kn+ zS|U>BMV4FWuD*n$x}llz6Q-Pog9K8sR!pPthRF=?l zu>+(-@yFmJZ|DyQ^LCgh^aTxhnIu(?l?T}Za(gAk7hDn>o6G%J`6Y8&+j%3n9(fj} zhLNw6{MfK}#!jO?A1qH3rQ*)XHFXvX8`2Lk7H+1jI2>;3&d5*UMpSnCI(l>t_L~4< zQ6-GjcDouRR;9KJT!p(5fphi+2c-Qsgt%WUM$$yb)+?ly1NiDDN+A*i{=nN1Fe`K23fO;r1 zB$Sl`-q#)@yamPFOEu$*?_jCG$MaGVq%!#27!=qG5KU0xU-fflkWcFlBS# zi$|SakG@Gd+q$RmHCi4nz&K_wVuLA$9$=iM;yi?pw2a0Kd-8)kc`w7E>t?;=h_p0f ze6|1K&jVa~=&uX3`OEI-HD+Fx(0~4H3A)-Olhi&y_Gm??s{D1G6+k zBEA_h>6}~|w_L}FovuTk$+*0$ zkz&s==6Ao3(PZ6k@4eD_4uVYgkOBglF$`6<^sq2UNgy7lC=by|o^TeX7Nbk|9VAGI zwv1BE?qO_5QSjd%bot^%O5Wzcg~$hx$`Rroo_L&_xefb~+mY%vLb4U{Yo-|vS_p}d z{P-)W8-$pwo&OZ0au9I8J!1$hw_Pq?v*lPe262!FJhSzQ3wC=OgmKj**ZX4Q|rJx(`TFLM6q z*@)7x$C}FDl$_dFdgSHMBGdnVqGw_g#h$yMHZ{tKDiV36*rM|22FHeRjIU&Tm|Cme zE(3&&EEvB-AGjcalsx*k0dCRC3t1pq`hnAU^YEn8AcOi`;3buxBHY!3)#f-die&_t ztYoApPb(gt$kV!ip;T@C;sc~xir(q1K9SmFlz;WYH+-C1zHE+Tdnix*ZQSzuSE`|= z$%|ph<y2$<7E$9NVU*-BXR9ejE_dcFDj#aphQ zHZJccMUvLi=~Zs{79gOk%H8OH;=6j{vHDY&hKzq%ej_{wmFa=9!mS>UAzE4sPpc$! zV0GZIZ{S`~c+>1xm=*CMUk@b?7U|C1OWi9|p98)Jm039-rYP1#i_RsyA%$`d@=NPh zJ1-?rI3!=*um6n^hH{?xqi!hS3)&y>cmP@HpiD^~Zc$UOHzmS2EAhAmuqusZ1<^{b z9G$B=Gm;f@;ES>wAC&~WBVkmDSJW&Or-n&6+{F-SQ$*(}*_7(51Iq0;InR%_f7`sI zT6;P8lE$-%3xV!E6?*%BdZ(ix8>Y5@O)uEo(Y$B73U1rx9c&M!j<3Ssn)?#bld zL@5)F&KEmN3Lij6eou`SLhT{GPU>#h3sr{^?&`c!Y$xr53E+g!2u*uoD4&C(oZ?Ru zw)uawI0qBB4t+=Z3=-q=WFCk@g2%8XIHq~32i2A@tRyo=jrfF}#h5i9?xnUF(50i_ zIiG(0x4!a{%Ix%AqRULv+c*)`yEo>t-QKmN4rmfKYEXDh)lgC&N3oIo{+V9jueu4b zq6%NBeMhh8-1*hLbgIu@g)9f=(!Xkk_0RWvgh=qnc#HhblcDD_YU9r#uk+`cm8KN* z8i!aE$4c=dKP0ax$v-v!ePjJwbTI(;1Rf(hrJ(+ADcyEM$xbI&fogPX#HjR20PE4nk9i_=e=$@cao$+=f)<7qqfgd;K8S zDPrn3S@ZwUboTK~{r~^3WTmD^7Y4M0dW1>)qE?kzVS+U7B z$;Fs-<*L+MC8Eh`D@A1`6;g?EQM#nxIeosrzq;*q)7jZMuh--CxIbUd*Ynx*=S$l) zkD`v4ptf4vbi}iJ{Q(_f ztKQZz;@4cSE8Ajrb)X08zU@@5i;Df?y(*_71=Nt2)&O9x&!?Kp5z_wz%FeD#YeEQ% z2P*dso$(>HbH8Yh)x9}^P`oKYiDY((MXy_3h1L)o`KDYTx{Jr+&-cMA#<#A74+j^gu=nb{98q{(a64k)@Tk_H-FYNt~*WO_Sn{&v2&_ulFQo+R>vCF?D&r{H*p^}ZE8xT8OsVXM<42-qw_{dDZHkUO$ zElJH)Rq7rXuyPa4|Fxy!V4)XWbCt2I@k|~{&jb_f_(k0Mqtf<@p-WAIxiW8A(uZwh zXRerYsgZNaK*XSHk7Y%G(wHJ~;2*iN?Z@^l)lYNM!NDd~Me4Fk*=2cVKC^0vgQQzc z*vzv7j}%1<#u%94m1KZ!t=&ZYd^d%?Tfd$ zyoOw5>nVh3%8}&vbYn`#g?Q4;EX9)F30J+-`-J&C(ASc-fzr2@K;Pf@CXQSN+(+Ix zbc8#7dN^^#`c-Xzi`b>rZ*_7mU!z_xAp3dsqVZFg{inS&*mP-U{J~c_wYMJx>iYlw zJdu?b_pR9l#HNsg$%?=stEJAOCdQ;7dMQf;Hn3md8~86Meb(vExP8J5 zhB_%ryG(S(8?ng)f7D0B4CTESCWF&-=2Hj5!%$ZRj!jyT<~Bu|*>Z!M28Tzd1jndz zr~_Iy#aSGw9o!{Wvtf>At=1mzF5@b_-mK#`Hg_fHYt2U(^I@IiSCNUxV-W*m=Za6R z{oT`D|8`bd_@h1kYHEs#SdSosAN@M#U20m!E3SE9FY0>qz4?S^x30xD|6cpc?2G=N zs4u5=zIm=CKr9+u6_lQj#!w6y$)j43^k#^D-PafmxZRSaiXKkpP1f_Ux3)XY?W(9= zKoO$Y>MKxO%>oNbMKuDO2RHo&%KFrOTHO~XMLSyM+U)ufY#)Ew_*?8uCgajQ22M;* zPM~G zeGW#(ca*(S@tYt9yt?`G#nkHO-y?U~q`QfZ?9hoiyLJ_IM0blhwZliylqQ;Sym~Sy zecgnIUhvo^^K4yX_2AC5uH2<(gYK?Os;&+k+6^Ek`?ncWdsf;~`@#wT`7#uLFgNhC zYC$>i2PQ+d*ZPkb_&o?>-)VUY?sk_=^-l;>30e!kqTcjc8X=UKa*YsIc!?T9W z>i_|De&t1N+3!`a*&Fm!#G_A^{JQuu06hrB9dKJ`SOL9tf)Ibkx{-9m#B2I-3QvtK zccP%PTNjo<6vfC=l{*oZ@Qv?%Z7&mF#=7)yJmI65A#SS$gfn{XylXy^ugaMqHrxrH z28}b_>7ukU zL_c1gWZ^`c^8#`ZY1Q0a?a`7ir&7?61g<+QU%BQS<*4?zz5yTUwBQ#?r>1NJR56K>lNyZY)sdefRW6F#i)7WjPmeT=<8FumieTFd#8D`%+3 zh35%cSAbM-a4hh!G2a6?gM2MZnAjfCpKyCNf`-Y;pwHUQG|wW)mlnl7x9Wg5W4h2j8Z$6mbi^cQ$s(*%Nmaz zyx%J#!}q;diyv9PBnFQ{3{lw^hb0uI7}TM+M~g5(_Z?& z3zOSJ3NJ2cxZqKU%5o=xZA_>Z(Sgcq|fV`3ht<(r^V5fv{st(-JN;=@}~G<>5igR z=b9*zr4oxitK6E;ISg(I@o)+I&RdV6y4UUW4KxaVpuwB8_)&yL2GwP^tc=SIwL?!g z)4|+K8>xjLGmIog&r4p!Sn`XALdI^Ar|7~cF*1g9_DIDK0tp$EV$5XfB2{Pbof{1AviUN zaLnUJ4u0T$I($D!b|S>rvg2$JDH}bH@NFaulNvGioI)DX;D67#5kWfp$Kw0nf%(qn zX+8u-dTg4TeHFPw93-8fdG0ADQq4MsdXPG%lkFS8j$@|r9GS!b)-%E(7Jo^9{ z8_r2IPrE9*;4`oFc47sa4-iS}8|B$0WLt_^FP?`<=tU?Rw2~8}btj*0T1-F{>3xb&JJIeQsgATNK z6Q{H6IjO+skuP)3AeLvILRDm44YtX$>2-v}J?*C}xH@y{Y(1O$*YpG}Sn?#}ZQxFG zemkywcKL2$=@9&e%<4faZdoj`N;(gn-EN&x?AW)QpvN}J2t9idj`~-N{j^}ZVk`D{PRrzV4$bRw zSCjeAxTQq+ z?g&VL@gj-Nu&|_vA`uy2SM5~QDS{SKVY1dY_x^#`NGWI?tc^Ri1sRl$fa$r9OcFyx z4rc5zk&q4hL^*a@O)%XAT4sOi!~!RAJuNZACHXJU#wr%q>bJfmAAi` z4+mu8?M}{Meh*J?NzVukqHj%Qut?DgZVdMcM5K$sB49D+VBVdT9;u{LyCPaL-m7m5 zQ&j0f>7ea7iX)I{XGlmHN3?o{GdUUYBzMuVrjm$_mMxcvUH440v^(PG&{ZyFmV*P8 z_Z(Pf!E4FVI8+b|(U_v6?1h|e^8xPEb{zI8FM?_gZJKD9F>VJgSwb&sis7@6X}W?; zE1|E6Qz(syen2q)zMU4!Vi=Mx1H+i;3o)m;O3}guO!M&rx|l+2puPLoZ5rA@!%M7a z!&k8{DMhw>0u4wDOxr-Cwl3Ub`B?Cn7aa%ZNgxe*a@Y)o_9dfbb2w5D(XUV#-)iAB zbj>$B1^(83<%^9mZ62UdCy5k-O?c}jvdSIJ0x5nvQS1fW>gcy6NrC57JSG2rgwzX{ zToy1U1*~#0`~iRJdZ%~(^PNEz+)vtj{S=rPsG&-GC!jkoC+xUH3*MrQwu)oYcm z*{RJ=Qco2<<49M*CUIi-aPl8b!*3L%05>zbAB^D%O#8TCWv=#9 zA3@4l#fqDY);=b2-{_5W?J0*5rjv2_4W} zvdX8L+P1)PZ%S^;p_I!(vSqw#-Wp{sXq)T!kiFlcxjSI_CUcP;gOz?r`cbjvtMG)E1^`=td(aW^!kW{SJE-JR1qIWEX~kkGB2Jd>sUS z|GT|FIzvF&XZ})wq_zbfT5N6e=VD@`0x{vp&SXvM`FO2BOEH6;dDN`U-lqav?Oj+R z0s92rUupYBU@mnq4pY;PRrsK$7%t^^LT+fgLYnObEPaH*v!9~i&O**0UQy)9|8nZW zrI~`ZKG6w5n;y#_^IK=yej|t5TLzGsm<9LE{CdpfIWGGIO4REdDg3SL!cj`zQqpO&>WAEle-s_9`4 zWF{R`3J$W+o3R^Hr2dRdeEeMcCJni?4T$V0y#YKjjWF%ledxt=J3rmun^UXp{d|it zl1vqkQVjP#8n;~MTJWXB%fLx6#;*3f9()x+y-7NciUiaQ>U_m>=+!9k0ziV} zc@+hqf9nXPc|U|L{T};#FY_-w2?}OnMnk|p@5RakFH|l(+;dp4t=msQt{m50gt@vnvz9)-HDg1|4!Th^lE4& z&EhYU7p)^Dn$+6deDC*)Ecud4O#=rUFRdCG1nbQXHR4&b%K zn(RB$55|P4r{IIfvC10=lLhX+Kq!XF%fPBzZBMzebE`zc6=bb|;G*M*d8>xsgY!nR zDI>G|CMJN5z&7@qrc)uE`M+L5ius7PKy$888*guRp;xTQ`^c2G_okY`+Zm$E!4IEb zj4CK~3m%&Fxqr=oFv6zJ6OdD*w%;re?BYlb;3&nVP!3}#NB-RHg1(kJuvM^>L$K$n z3)JXr#h>j0;6ee|fLve_GMbCI-KQ=uUgF<W?^om8Z(j-W0^TR#6Ww&2@H>ycy&GY$t0dOnq|rnrwHM)1hJ=Nd9$2_9+IHTbds}18VP%>8itKSgJf)$lu)q~qLVrpzoS~b}J{pE;+1#%$&Z5&`-#uS< zc!LQCf%DU}T||0xP0T8-YBwUY@BLpHLZ+aN&d2xX@q}DwN^S4t`fUs7 zbofkQw~?s}u(WH{p-9Q49{5XJul^(H0r;gLVWkuCY`{L=nlcvV)=$0$nQ!e}70zUd zLt5eqIq5a^<8p?N)RwafyIh|h$DmduZK1^$hB1%l%eL;MMyV~Ejkf6VcU#(I05zmdDZT+(AdN9GtOfMpXCrvpL>734 z9fQYA@RCOHg6SVZvbp<+hjWyeKe>%27jYSoxdd&d-AQZc4ug!gCKvVynx z7U|CNFlWpn0lo2Y@h{i(Vqh0%#T(wMrz(xwy^t>S%?~rJ^U67*{j#4rFkOx9`=zan z_%v*=$XA*rh+gUxmhL86{pp548NoO*d_2f+;`9LtcgjQ>ayFQSSeybcX84kdphEqV z)NyKWG47*wF=esbXHcU3&J^8>JKO(%EdT<4kgke(H1k@KyI@;h9P}+>VDr-ry@waP z7vA~^419oYdU0O+3RZNMST5=+EU%8uxm-jXH=3AAukU$2<$UGWu|>+um__O&GJr$Q zGP?txFJYpbud_B5HUxKj%MKH?XwAC1@*swKON;&WJvYqIO>l^L-)@F}U`;68Qrm3? zTov^TxZ+%DVZM{%exJu~ciAr@-dAdOaQYIt?l?aFip+Vx}`P82&S?6-y zW?~;3)rK8t?+!sFP5n5cVw0|>F7#7SdYQ3Zp84E8*uBm8C-KVJr5n)b?IJuzjP`#Cwj9ivGx6LEKEWi=`7=FtP*j>A+k9oibh1+}k?m{b#AK9O^qN~H zWVn@qTP&Td87#&tE5ln0DvF1C>@;sXy9bJoa|jvif>ukvX<9{XcsY|8@xIoeq9%&d zBg~?ZWEDfJ&V5uxt;H27;OF6lXP&enFIJ-VO%rVN&oLnA8B&^`bLWe-;iEzQ{gnqf zD>>V{!|DMtwg&Tri_1YFJ2=Cq;jtjoM*0mCDrW}?g?&-=$Y-Wh5AGFzoQ4`XIN2aC z({=0VoYMsUKB6}^Ih8> z%FoyELTh=u?=&FAl>IK}T9>Hlz&g>lcc%OY?A*|NHs3KRU8{AEo>0bRa4!Pfe}~*k z5fBaGWri`lN&7KYVw$7W!{}B8X;|p^)4@#W9~;(avd^!Mfia*1V4f9WX-wAY;JS!f z$`aEC)< z$t~jcX@f#Fym&O8({i4+D=0y-JC>3QkL> zGhVPQP4tUwXrX0GIu$a9h0RT_H`-X1@OgEDe{17Yu*+S#xZ8C9fNQgUYNp*OXSB*d zWGMwX=92FVyi?nHzHqp%Xhc}o%e+onLz-J4&+qxJh^mu*A4VfcaNIYGxRSE@X1TUa zrQ1CQw9afaxORI9AlM}Z1JK#ZnY@ZZ@Fzh<0{nfGBbsZLkKXz;uf^JLvOcK>fkW`l z(INR2?k0UKsSxo;@BatfyjglKljXJ7q`4eQaeOnON+X@}nSZSuG!%e#iWtiN!<$rA z-=L+lg4dHSjYvh7Oyp4Ca<)3Z>spIx|A||?a{1@PAq`fb%24mq*+m%JE-d0MlegD` zUU+tT(2$j`z-RuC8#t^z``>0|P9Ny;Q!xGA5An85o8;!Hz`$*ApHG~sqLhNo$yb-( z?`8~`?KEfWY?@H%n|f`~TAQya&)6c+6NKr*s}u_}LSAH}8FsQOzWEg%cnheUKJ921 z{q66_wUX#kpn~X~UJOXt@;JAd^v^B{1v%(ft48XDKM|xT?yju);%9h3NQFiR^B>dh zblFIQadX2;w=&}w1fdqR1>`hO`PPfZA0-fGa1zQX43R(WXT{Km7ThMfYWGc2o)hbG zDSE%J9fa;h<~`OmHVwo4;57OfBxY_KM>cSB^6cdDb*geN*km{1O|QD5OYn9hIN~wT zRoR1neKMXE%nP%D^{|2DY|&8$ZS=;w)O9$cr4B3sIBR*Pqeq(5kSx(;)B9Sm#U1nG z56CKFM+YryMhauTVxg2Zi=ZHAhN8cy=@Io~a~CNeu)!9ntxmLiWPTdSQ52Mx zQXfH3@%${jThw*{dQ!pF?Xq5bwffW8-L+qh0vFFJyw@kvhD#E-*GC;v87$eBxxXSV z@lS-F@Fvh%n)D)3J6%7zrt)jG)Igxgqn1sWMz7ytZJM^0q$)OpUqBdiVQbvdM}i_E zhcGLv6UwKgt&k;?PKK6X540l~wJy>OuP&~+nAkikdfM7m{i&iq=5;09jL;Ii-V{N+ z5bji^wImEZ+-;uVH_fA6P|W4vQ4-UdS1!td9y<@3$LryzWh~JQ@#E{$SXKizO;XmJIXV2nmk}p+mx2r7ZoHvhDJDwEVM67< zR)VT|BkMK*5dn2Y+;_qaN@7Bo{ss{fKc(u+s!9lca&tV}iry^T1iU z<-*vaXzVylUE^S87UV++IH|rSQ}TS5<$msgjEW~} zQXfa)@Q>@a1u0AUM1@1|T}rf=;tIb}uhCn(b)}kM)FLgw1Y?t5>$j~FVo;Vb8L6Nfhqov{0J#*Pc#$0U1E!mo#cy7aPExJH86mLGzY9m#1y z=_2%pVA~7pcqYc|yzs+hg~=gf4r+ zm;n$x7QZzdIA*ARev6fGjtwCZ@*(ux6jx+{0`>`Jda>xSGY~t8nU`uNfKo^FBh4L6 zB<`O6wylK2=c zrg74XxP=N0>}NZ9GkRtW_53`^Vyw!SA28SS>lc|OU(QngBD30&6A0~R_E6B&bq#oi zVuT_wQ)m@PUc%&suHB-S(^~iXl-GNQkTfPnxId%o@bEluD}^K z&tj+dz043JJS)8XXir6eZ01;vzqg6KfA;RFkO!qw^6 zf4YzTfOtLbtHL~S*)V6Tvt2`KM{@g|sOHGy+@lx(z=PBX!i=>2QFn}{dD zd|l6S;;V=YC&7f;%o1)4_Zcy1i);tHoX#)h@diT#2%!nA?dNu}dA!_zvDBrNAAoiTFpJi{ULNS1XBV#$yaZ{}o!P zj*!LT6`Q#cmQOuI@LnQ2q|cT>*P2PgaB;1y{%_u1bC-W9(@=#k;~vd6C%P7RNqu|| z+KU+0irT3oGG|b!l8b7$`aYL)iisW6k=jewLhOt7NE@lE#kpbA;dyjSHv4u(;GkBcJ`JtdR5x{0xQRN0%OvcqZz3KTJCOD~XhC4MFGkt1cEXQu1EzQHS1*Se zT9y|I9m#!bgb@sL!xs=yk)av1#hkSww~3;1ecG%hY&p0+af!<@f4ok*T!^2wCh+$B z7VolQ1c;AkJ@`=prNkgntCZg=l*RlPG55F@&9R#lW2&nl?VQ? zA-&%T$f-YeyXAmm4+Aa6PrjqJ2N>u;RqaKa#hSD`J4atY7p=u@UbHfc4k9{J+(edq z`E$(xh~hel{>bcBouucghR=1xb??;B?BH(_6S&{5>5r*fmhOSF)aBWODn z!V>s=iM2F*M9nT2RmJ8c*co0A`4pg>8SIZdr1r+w(OiU=3!Q} z-`50c(P`z-bVbI0fPH@UD5TkP{y*Tht!~!VyLmQSE}bQ8_6m&?8whNAtmhgZ2=?3N z-@eB@Ru|fMz`}VrLQn0Yv0p!>6$8qX;Ny5{x~~j(4o+7227)$C$zJ(M7GcT+KXQ{1 zYT2z#8q>}Qi7_#x)J~;a0EV{iJ7GceOm-Tk97jPN`ab)*+uOmHXb3C45{QU3xRE%Fzx=mb7mRO`U-uuv!=wQMAJMG+BPZ}BKvOCkZ>jQ~n zXV?c=_cq@S+J1Vx`K-8CgzLTH_zd3E0gAJ5uJdAaQ{k1;A5?M>Vgp(PD?1f2cjsYdf~co_m=94{eIzAkIv}Tx9zOphA?N3Ff|l8rT_@ z9qu8fEDy5Q5Vd^|X^Xj*HQ{Bh=T(up;>}vpr&2DyGcsEte3mn*;Vtdz=2ilFW;?rc zjLn|4aC1C=)bgGX)4;}TAIwPR^^4AMCrPU8#P%}iDM9NE=1ejIZrN`xf%d8My9287 z>iuLy^uw%MO$%qzZZ`LMjF9%Fy1kuJZieZof8&3PQ`HVbjyuZQ=~(GJ&s&cJbSOow#M`Gtl3Zp6x#N7AeKZb$K=y4NLVU z?9;K&^@(JPM{h0oX$#`vD2gEET~}9P#2tm8gd2r1tetT5M{v^RT(E0bgq&&(SAAZv z0k}(@4gYZjENr#758h-$=4OTlz~-qI;y%kms{d*Pi@rZ?nDLum1Qh`TBa!!fW$MU+ z_rmT7>4%ZZ*GTXzTGYOm$&A9@hqZvkJZ>4dC{?6dX=tT5-9X(#LaBpCjuREmWUV=b zo{<6eP+_hpw^&2clUGDc!DK-!#%uZx@+O%pg+nw?%w#d88k`bwX4k#ntj%~NA4PV% z;z>vSO+zFmsR9s#K=1;Arj6$>^EmZduw_@oUFvnc1B_?E(=I%=ZQGvNv2EMtj;$Tr zwzXsJ*tX3b>o@ky@9zJ7Z@&B9n|xh4$?4>zQq}cza=QEJDjzQoIkpd$_mGN?7`;0w zr5I{?sJLHUunhTa5Hx_FmIo8k{jG;A_@w8it08ON)y}pBj#dVLY+Bf4ocT!0yG@Bt zg57x-4Va@efS^Pi*wK>@QryF-OK^&6YagE_FzcP&Sh=roaii?rxH(^1Na|cn1Z#4K zzmKOS{e_a#_$PH*BvR7g-dpBf2Y~BOn969>9^;Bo6Xb{|_uZ8pzuR!$rgXHN$PJ{Jfc>xq*c6)h#O%nF1On*-mK zN%^6WZfZR&tif19?|p*=NV@X4(QZIRRW&!>s9x`GM=|hYsUaBCIlPy(Ku?CU6xqFZ z>A%;n42vzlf$Cug-n;2J=fBDEHqmHeuqB7uL9(d)y{?O%e$ujO%a(51Y7~4LI?4@@ zzcZ9x+?jHSi!OyDw`(4tQq7sdlx_CQ8{*@lXVIN=yuvc;CEAGj#Lo;NwrE)YEy2?Y zr<;*-2471-k~WxcQ!lelT_mvXy`EXWG`}@uz76s*S+2x7t8dq%FU^Hk3}UOkNE79Z zmOX-uX8^(+XGownYK`-oPHQn7WlG_L2rUCR+>;yHKT+{1e(L|U+YM_r@jUm39W`4+ z;gHr>fytMW_e#N@wou#2J7In}Qd|Wn>6)?JB_d{3gvq(@3)LYA;F>BV|Ln7ts^9Hc znW%H;(zS*89N(-}GT0liEAb31ynZzqV423dY|T%Q?n78Vb?o}czBX8BoX;u3b`0uo z??v{$;|9I7|L}uB)Vm?CTyqm5GtEJI#v3^f&PdzdS}U2m*+zS8KU4xBcui!)D~%?A zw`-v6NduT-ZCP_@aT8TuaxRBCYhb*UTRk z&6j4J46S$Q!e^7cK3NghBQb}#gqXiqIeM(A4OEh~R&2)=vl@oAZNIP%S8%wB*}5HI zO7t3+bUc6L)n?RmCgZjGQ~bRghMoj0%w0k&v| z%{uZA^kc%NP}>d#-v(LUE3E(uVDWjV zJJg=1yvJM01LeG|v2xdVDWCs`4t=(s>|^0|4Z?=7T3P7w`@L!mhi2z< zDyzWtVs<6o!hw$8bQ*?nwd#v*P%Pn~D?!inl%X&kHla-hS*eVY3DLcs9G&TIuYN;J zWkUe-@9F@=KGbACX^VAnPJX0tS}fVfoy+$@i&fPWW17c7ZtCm`h>);|3r|fk9^F$! zbN|tp;_Pl1_F(afHTfeezNpSBC3g~wi9|9xw$8MWbWj*+s$=wDIncg5FMF* zm68#{m1DkSNJR})VA;IZ-G5t4X&Gnp25kFe#|t?Ke3FW4%6G^5^GC-HqpxBiZzbo8 zT|zkY2$Mcz-*Cv*)QIlGedzL*$^M;ZGSnk%@WYT5&Y&-4MiQ+lm=M72$9y)FQy2Rz zNX|V$U|I|-A9^7#t=TV$yw*{UjP+`)4ow|Cm=vMY7sf+LB6}`(!U*fi<{63Xx?`W$ zd!W}GcyV612-8N&ba!K%dqnZ(YEXec(1s|=)CL=#X9&D@wIlvDqDy~7Vt;I@ySvV4xb<>x%thWmMk}Y?jUd!I(oQ|~@f>2`LdfR)=8!+rgTdjIv_gdz}LuIp~S7BA_j*2ABLEA|XIC9<%N@uA1BhqmPNy1@1j>?om7b;(K`vvxst@mas0dm2s zsn8&tl1nVkrTInrR2}8~boRm%;z6(TQqar@Wxpb&1nFGw z+w$9|!ua!2Stz7JQg$QR870=?w2~Z#jxT5;YMjMZUxQGK#-pY9F z$!OdCE7O0;cF_GyxhC9qA{uLrm4SGs@>%6uAKs za3W0cdD;HnNXHs=+naLmeSn3!C)hA6I``QE0_)X*EqUFC?s24F&pnw?Yer@)tgrB= ze8Q8?2f^XZjP|S-uLMkM77noXFK_qQ&B90#@s9=ZE*$^YsP(ukBFI{-mW4b`7Dr~+ zDw5e!N^RcSGyy6kyNoC#SD23urs5jlrc!ItlJVwp0Vj?~UDe=_%L3MC+15?=jCSs$ z_(a$~@)(RB1Ld4a8_&oiex4bG)5u9_3S(7dm!SWXr>EXGVTgXgw#a)iTCAS#N7VOi7rA5tj7kD-;APA zUy#+3LoHl_4bYHOlYt>b5dI}w8pmc&QG6eBm}9}Cd#gA`+9D#posIqTvQCkB*a?aA z!23k+`ka@&(y8S^m@|w${Llf(f43Cb4Zl0>i;b7?hQM(fJA{^WR?+sFpvAfEhlYFF zNS~t41OgSU0pF_o82K`9$qX}vknkHrW{VWH0{7heGkEhrBf<3^_S&god@hq1S`J~z zH&JaDtKLT+%e3{=kq?zw;sx5<^*1_^d)<4kIc~&VegF%}zg@^JFijk~_VQNF;i*FA zx!%@{QF7AhM|pctd=$2kY<{}#^wb({?ZFZDjk|Zq5%X_Bd5$LUOhY(7lytZ@{ojw{ z<8zaAl@S4Dn}K;Dyi15P-%P61|E}hh{_t}4#@-LV&Q2+k|I|*#F+arJg4qM_uMwQq z+y*L{ldM}X(jPchSd_ECq%&8#o}~wi6*=}d{5(~1GTIzMq?1T;Dto!WF9iB`5lWQPMn$ii_Zo#OibPmL;$JQwp+?nn6kwUX0z5ig+j` zPjJQD5xlqF3JVP+HFdJKJgtnE z;1EP@hk+UstbPl(6>LcoOVvzrKpdS=FL3>*g=3Jh$6Y%~`^SXw!6jRZ@bUA;FDcP}?sJm+PW=t(L z;S6(7GU-XHH1*a|(9dlyIL#Zjb>^b&$}lsml(~^6HZk6?uhq z-lf~=b%Vr=$~@?2-f(2`@qzycNLl{J-}*ZRr!IfjpsdGmZmerPC7wMfbY!LDkSFmK%&A) zS~cP4cf<&eR8-L>Rc>Y6`7zlI`?lWN;u)uw{NM)8ZS{98H%4|&j=G^yRcWapupDl*lw-v zg^}Wb6%(qE4v8;~bdh|5=KdKNaL$kH1@?V{AlJ2O1KkPXU^ZwW)XdzMFVCE$i=5ADU`p1w$dGz#ua6q*ZB@rd@;hpUNtUZnvv>u(4Ldr8dl zDi@=DWD%ct%5XHY0Y$ubox|Nl)>XI4OJiyWufVmkUG6%JVSmoBBdjqb7NZk zZdoVD`tOcZMkutv-`9XqLlF=_N0PM>sXx|F&mC}5YLGg)BeFHSX0(+75w-~e3r)L~#NBt-SCt4EB$a_Tn+FRD zQS7_Z`xY((5@Y&Y-$gjB}RqQx{9$ZD;>}w~ayFAW~=pepIgda1!T=r0vGxSi|IA z=V z)V2SuV2E*bdD23}AuAyDcxY#y34i&8Gqw$fnLIy9{Uf_vnxDZ_@6UwT={CD;cv!p4 zreJ>6*cA~+b1(u74NUfSDA0TJs>H%28D)#v_R`TC@<;89+fAU8>~ z%A%AC>}yGFkWPz}DsG)IT#-`FpU$ZAfQIyWRYrU5ANKFKT$Ma@FlK2rs65zzkn1f? z%zME+97y}(i{>*^H)9rNA=kRmF6)&X8=dYkL!i7kv$E*;IeG0EbL-HbF2l~v_I{K% zC;fSIt1B4zT%mN4Y_V2&E88m>klVfX)^R(&n z4ut%EU%04+u|2eHHGvPad%f|N<_-ozsBJy3Q(vfRr8qZB{?&*&nUN63ud&p61wWp- z*KeJRj;Rx#Kkun&pV?!F{t;a$ph;*keDOTW2bDCtQ$BO4)Wf^B{S+tjYJT$C@38LG z_JtbeYG*2<+zEd>z_D4(<(2>V4lM|#Ly=K?o*D4}UILit&cSYS| zKxsRpNlBp`R%j7Gvu~@86qC=r)jbdb3!K~YA91|0(p)q@J{%5y69@t2@42PMyf{F;qr+{ z*?y@T$Yj*mfCGML+!u9imH23NcL?#k^hFJbUB3i&wA;vbur{`*GrIB&dZk0m!-Q0b zQthd2NT}`3r8|SBIrZ74pO#Jw6B;U5U^yNNjdQ^i2<+q z39VT|DVvS}?ivncM7J4==F$0AN!bIj7C%o@ijW&&eM?bNu;SVtvd7myl~iZBa`E0Y zwShNMz)5mAEp_IAGt2#>r(pw_x)5%jdWs9`Y*A9ecg+j?Fw zWPgZm2E=oliO~MGFap(@!wv45PS^ujv-fzbC6hf&@4#WU-bWx_LRB;)5{18CDu?AO zw`QIHH(=DNXe}|U0VE3hlRx}Tb|&q@)ZvqO9~J609xXbBl)OKTkOWDAG*ygs^wT1N zC1ogIqXrJR5l|sSLXvZTl0eiaNao-3Qwg!*V*AYWEW-^F9p^plEz>MMxy;^F8ZNmh zP0j7l8{*8f-nIC`SnW^ARE$FY@%98?eZ(H{&v4%3Yfsz<4;4mlA0mMI0*fgR!#unq zLm0j)1nGC(wX2~O$!C0F$kl=2{w#pc6PRB9>Mass`1zUY;yp9;%P6jbsuegah?Iv% zJI+S<2D8i&CO$cb(a{Kllw92<6m?9R*O@7~F^;5!<6-P&7gPX27@N?nzCs_u6fIyi zKeI3CLwkacjqw%oph5HKX}z&rnRt=+=y{z7+_eg@`Gek5OWm|4YTb6RU0U$vCFPI) z^#N;lu;~5+GHebDSbyusF#?FQi@>%RZm{^M|kKB9FDzry=wVqLTA6HspJr|Zmr zfJWJ}kfVM-mkgzWvQ|H2zcb(4J8A`h3v8B}KlKd^VDV=uEV&J|U}e*J_0{{#6Y~6i zKUW#(#Dw4}e)2nWbW-&z!X_}AAUnod1CtT~WurN0L*MW%gJx{)Ug9f4avA$(_Wiy| zg1-(-VDc5<^7AuFnOBGa;Z{wdvU$$XLwDWC1Kju#LOB?pZpve;m`W+nG@*vNJFtr& zIy4$H23IW1kxSlIuZAHfY1Dod*rvC&H3JCDqJ$~eAbFY&s8F$l;xkjAhAT*0Rw%bi zJ2cw6&Dm|pW$0sktd8S);!Qw(71W36RV55ZhS`$JxXBUTJ}q1}BK_B^`ncf%%f$Cc zVun3HzRT6QDox*C97{RImx8Jvqx`cPEu9iX=X9!9T{#uB*s16#GR;XeEz;dnIge3> zqZksy(t*+R1VKZr6k7aEAOiwhYhMZ%xDT|+1yTAhRF@{>Wd^(8?iI-RX zsOaoCFjX+pDAfi`Td|dcL(Uk(@*ZD&7GJZ}0xdlPvi!6I{FfG$M4`~%7%O`pzAO%g zhVL@M&eP)L9I2>lcRlBWP~Q1Z_95+!54_E zLWDCw9yn;%?`uuko39!ICdk{0(63G4U+Q=%#LZNBQ64mm^jMHHDbu+a%{q}TrGcB zNh_qYvq>81n&Y0Xmn&mX+9@pKY>nsQnon47hGK1^>e`tDu& zd>!!q#fy0JJ9*%L`I>g!OMq{(H(MR7>;Ee$0T$!zp>S$`j!6Q|Vd9p%2srx^Q0HBt zDBgV1bhH2gwPg1xl>YL6+4?16w32Xj+H(|}AGKnC%dV9@kG>I$Vp8!@c(rYPy0mx~ zgP-aF+g~8tOS>|ge77G#%ZG$PYMZ&`TYc>7<^jv&GdXQKemS?#B(gyqVqIpFWO!Km z3A$1L$X=N@@Y^)d56*OgZA#d>h2{pk`&$tNZZp+*!i{3%PbPRtz;` z_!YLjRm?~fF50Ba>yyc|_MX7>Q~KDsH~eIDaM*U#G0E96)5 zH!n#Dnbv)o(bnS_)sPcI9rW*IqMENpbM;nYc1 z&$;s-QT()hFeo9ct8~PR@}iRx#l+WgrEWx)Nd;Gfuh)tFA;u#-=ain979_zfh&%6> zGpkW(@!jQsLL3BL!k!cZ(p94ujhFToDC3L((l`eiVvc97`OO%Y z$(3W&}7 zSoR_mWEZ}*xep%DG`NNoOyqX02eCy_2L*S1KC&ir*;awMC+&g@A59w z-{OSd?CT#=rl8zNkM?UPXISS2qJ|t}&-g~r>4Qa+z30lx>DPENOPSA6GrAlyS@b@+ z(~agVR-TblZZTYy6Wlb=ifX6bjtfC%ANh;73+N`fgD;OMA3G$XcL6FWMH$SoD$TgZTxX0hL4VLVf9VWfV{k9$^10>!%pbpAZEjhN)=J zucmaITs(s8Oj8z2T1cq#-_(C8Irqs*sAO`#dSqi>hz$(=O+@y1-oRg8n=#iU>$VFe~Ap>WY@GRGdIOk@f!=0@s;dOrPcScx_#{PSt3ryzBc7DsP=_}$XFBT ziId0rSJAjcu`8fG!~WH9vkhIL$qL14+RaJ6S-vAp#9OJy9qCc0gousi2q@iK$S>PC z<$#m?Yl_dI(38;c{+j=Np+2TK5m0$82FWBQK(%g0k7`!_g{8r69{}ZOmBNCm8vLEevBFd z5N2mTZn+YmNoEY%wwJf*wEk|dhwh9Q{K{B$uTn=puem@cx>Q_P40+lG{jJ}qCRjdcd^yEeXoo&nZ!$94kdOnoZ^)( zxm6V{9U-4Qrsj6{Q{EO+$R#^Su?oco^6#|_VdDQN z&FLXG+$;h|-05-3JKbkXP1chCcrdfQfopxSW779(Ei##k>sX`qAXcN0Fqi&zw*LB& zp?)4!U{8f-Najl-ueEa5UWC<~XGnk>$hYvzJO-_5xDPD*%d6$E0f+g)1CGe40>L^n zYGB?kLipEBk`hmVzY&ory7FcZK=Yjg7LO>N)^{vT4UfI~*l!=Yb44;^27DkX|Hs#6mW$@DWt)-`sD#31=I{5f;@hsnEVR2A@7xJ z=CN&6Dr6H3!V;-`r-Pu9;}wTi(9`YKZBd?O-}Aj)P$rb1~4`z z0?T42*?*mUt(T}Ce_LzgK~m>T6j=*)8=gBZ*6o2a?2u7)lc0b){343k0fJu;+PPzyHeWAsFo(j;bQTX%7_Fxl@6yeuinS z$-ASa9i+ww96S;Mh(09(e{lP(;CrjkmBoJb4T=N!<`QyX63(5*B+Oht^{7;90$Xol zy)kTfI)C|5C{pvq7O#NrsKw!_!3{nB6s%iW=FM1ESQ&MNiGLvdmz3k+EOTHPBrU~B z%WZEfw;Ozvp%p8)b zFQ7|RlJUFv+-9&3_HB+JxlIPbwq29_JJipa-snCoGtqzOyHgsa$K(Wrt3T)gdL9mv z_wf}BjW}DTo9)*|t84H;MAo-59x?bhQ${`iV$#Ltg&X=6IpopDa$kBmeV+VgY`|v{ zFtXFlNO@ZQDm|cX8_2&`h>yd>W+6ytvq?gmX%BCMsI7w?DkN+l<9mum?5p7e2lkNM zZ^?VSI}F*T>&bB_IPc=pD|iS)UI*6n*4~5&*PbE3i=qb_o|bze__DXvDMw9&I(8dW zCm=x)2dyQQSlF2ju{bJM+KhGR&)WNhmUaqrp_61;j2Gkg4!b z)uef$V(d3`0~B-)dl!^rz1(-w?~HSh^fcVrq|YA2FseCBh8;RV-UVHO=})c0g57o_ z$y9T(>r*Gi?RC=BIV{jssi-eXr{x@{@Q2OFvQ65G;)Wv)q)8=->&$fT&5~>J3KyeF z=ZvQkn(?)yF|(=Ht6JC)Oku4ff)Rd%FBKoq_v$M^KNG*_a%t9nX$V2~`b?^(q!&*G z@z(D38;7A7u6zs#I?t}9Ujaa7TW$W-@O$^Cpic$dOtn*cUUBpVV;#T~XFipoY3Zg0+T){Lf4yB|b3DNi zpSIOxJ_ftHFfOez)aUS^4W?Mc$4^KJ;Esrh>7|FuiR>a$A&7NFfT3Q;g<8tm(FiE& zMA|8UH~p}|0WJ5 zz?*37WQKF?zth4z)(nnLR&5u~^5~Vy$B0W7-{ZOYHg;~;Kw(*c{~2FWb~F6Y-gKhA zd9%-yWDVhu+636U4QRr@de{r(^G_4x1=O=LreQF=i*rJ`Mo58ShoEZG z>l*JaS=2XKD9oQ_QfV>4`a03J)@iot2lL}9#wX!Bk4Pr?)lD_9ozi}1*Y9F(I5F@o zT0Ste*uin#zarXS76$Q{zQ(X3C42SYyD>@Ys&`8e8-fDP@zj%L3-nh!*Xh`v4Xh2S z4B)mZ&OLo5V$!Fxrpz9}Tp|IAgnSC09`Fwb)#dL36SQBAr|5$#v&g^mq$cgXc=v|n zr_xX)w?W<1n91fmKv1sn@s*+;_5~jp_~UVpY^e&N`RZMbd_n|1v7v&XYCm^JASF`8 z<*M-X&Fc1L(Gw9{MaM$|5%B~zJ#$Sf?#X&VB^NOx(1TG{nHpmUd5ELmTx^ej}%d?pN{R7m0?gW>Vh;Z+| z<=KU1R(^#2ThqN`gVm7T^v&OTF>CB%3_v7+3#a5nt(e>hicsE=yQBnrQ(byPhUYos7hDW>kN+KOv zGwG)3d_92URBkgxxORK%rwC-N_-}RzwV?^ws>#4n{|ShB95v+SOoJ@`*wu(lp_us1Q+Bp$wC&>)TPIsV=F*TClm=Pv6g>w%lxJ~7+LL)L z(joK$T@hoC8Rm(=!)Qv%n3hHDvROTPWBhzFIV|vOx223#?zKJO=BxiyYO0GMJeTgG zH(zkJjeW7{Sjmm0z=!$|YtybB@!f9eY;6BwqE79Tn+IM#mnN)Ecx0E&FVHh;}AttP_9L31ppg+alwaZI>kA9xYMzFLC|}R2FxfKS2{> z-wahHz$9nV%{wuKHov~tnUjHcut{NpZv^U1ZtPL~i$LJwpIV{5+ZsN5L&sSTufyrG z+Qd-_oZ32JL?O&S+(J9AGpSVcAd@`TW!}I5TLJ;Nf?FTp&uU-C!kWb5aC=SEn~X}3@TPp0$M=hnW35%ALuK_;HVrpe;YzH{K<+#nMt`7;kW^Sz!!h*&pM z9eE5Y1En!M#P6C^uzg64AO^IifTYUWfWt7b)ns4N*Pgq-6*Y#tRPu_S^r3%7d($34 zYG|p#cS6Jsupz&{6*2Ep>**ao)2F>wR`H|u03ZM}Rahs>j9Iuwf?by0WQ#shqb0$$9ztCnuHW8^x6XYGzW^D;E`aw zc$yfo(C?{IBXH19k9!v|WmrKtRdg^yHM5+p&slUrJ+bw*{x$yb+b{S$`1Yj&|E@)i zZ2k>0CkpM6FO@GyYMHYk>OR~t51hXySO~r**d|yuWBNju*io<%#X>|FLL9gLotQRH zFHM#f>hq?y5zC-S44WoSPskRYIyA6h`x=#pi|ZQ~ISa&lrqG!c3T)_yQjo0=oGC40G4>LF-sl)s(_}WW2a5Jpj^#LX}f7*_~R?pI`dc5-P;%+SbP_}v-#&L-< zTe!8Tg@v&XM1gLRV2|4Xnyu9QjX+kIR|J4@h2|g1sO2d@>SGf0Xt^TViowT{-Nai$G=k{GUHEC9*-%eZOVCCR|-&1Y6E9tUxm9M z=BDE!Rr-u%k@BE^rsBquUP3r9E=@8hXVqS2_i>{i`28!%5x% z7Ui;^J5Iz``;;^t-yiApwqks9=lFvIucteRugClJt>nX}t3!^l3Z=4sj5w5q7ZI>- zMka;NSxwOb!bHU}jLNdiF|k8;KY)7fFc}F+((zR6o)hUyUfc3GnpTGeTBiZe`(-SU4hcahQTxu{64F z;$+t`!M6e{1LY_y*&;iWc0cn~*;t%)4Gp;1GD(mFI0zj2WDurHiU5Qr{Z5-XqdIM1 zh9``+!Pm%s07GB;tLzc|sys+|ZRK3y+|TrCDeCL{uxG26ArnD;-HSfQq--r@G`4MNhLFpd^a&my{k8HVMixr=t95yplz zfvM*q8{G0C5{LaAKaVZX<2HS)c#!yAD<~+sY-r_6h@<{(zHc#Odx%ie&{a{Zyv!fG zscSZ$xu6uqXr}FP?BQ7O`FkXh7_CWdWLMpqQ8q%~h1uLdHjT&)X}{YZ4jt+eR&ts? zLWB}GB!0z$OYHpkGVF!2C+w6LYCdGa5guws44&&m>5M8vw3{V?-R-t#P{1)F4~+d| z9Aibwv?%LbdvlQ|0^q%aconH;t2SmTm+UyGaxwtd*~l+N^7a+;YMl=;3{;u14TD}FHw-pfbS*{blVC)=0(b|Ob}quPmg0sjfom}Mxg z<8Niw{W4Aty50i2vDax#UEL2Vw*8lOca$1(;69mAM;?+Yn`yO7t>NIs*;T)+idh^Q z7BpJ?a&v%SMUdv-zM9-szO-EzW^9M;%^3xMpe({`H>sUW|CF2}F?zwhBHXv_*WoCN z%TSiW;!O)4&@D{p+PlsT+&(RmTvSC>XZnpIFvZ8=IQo;znFP}?m01p=Pdr)n_Ak3$ zZio?^I!QHxiICOb^}1;VqJENvp$5EqdY4W2QdARwqedLE%*Ws!sQ3}LK(M34B<^RW z_tzHD>mL$S*0+gg7GheVk(7H}IE2)L%a(Y2CL_{z#p;X8=01P>t=<&bqScrxdIMgf zoRi(xuvkgi0xBN!7t(O;#^Y7beOH1UmA zLUZh(Ar$817rvj1w{|t~NYmY2tWwayaes~B4F>$E-STbOdaZ0VNHA&1K#YqlVMxId_uZ{iR@|C==~nTj6E>9YKJKAmx4Mj7Oi*f!PKizXg|2?qyz4|V zjeT|vHabN$a~aE8v}|?@NJW%-?C`=m9JdUOac^uPR+H zTM0V%Tp|&d#OxPgfFsW7xe%LBr%JevTP8qQ?GMvZIT|Xzx4(q^lz`5WBrU>NcBr`J z%?*}%CJJ{dRljP|ozJLZ_6Mv++-N-r_j5zfmM#P;BnSx*`v&L#3|@5gNBx9Oh6zgg zw%O5~Z28+Vdn9>^U6INW#pcm=9Ao|TuOZ+hUCMmF!Y5Dq4nem-Nx%B1v(q;%j2@H& z``{1dt*Jv%6Tc%Ac5|Y?N8DVuv%oo-O^-B8sd3*v2BanQOE)l{DM1A*KExOTi|9<$ z8x^(RIc|TiF$t~|4D>d&S_s(AA_-bBrcaV%hB5W^FuTX~jExoPQYXyVWHjBb1-Me>UD)@Iq z@?z!@KcHYELLQDQB|uo$Wc4L?e#LbtVFQZUfJ=MIN&ETIUzN2FV~6Sr**NqyeJfsJ z=SQ1LTf?k4-;J96>{u7EB}rF=0Ko8s7k2+eP~c%ui(!AEPm#S+upb)Wf;DieK<`m} z%<2Mel((UrmBUf-_Hk`V<5YrJep^!3EPd0Gb;P^0!Z?oWV!-aEHUlo^mRh?Fcsp~E zvCn*nf@p~Hk+&%Ald2N7X81if$tU%1?dalKnIYopPxOl{A>5~)hH2Mvwa`=lcIzMI zFbMV5>I?f!%q0_B1nZP`^?dw57zZN=!D)9i3`u0y|0FQxWI_cRE^X2M!g z?i=~AVMr^ zsj~>ydw35M7_v>MU$`M7x}eok+3lppH=HS&Nq3YV>J_YfGw^?R%muY%w0~Cs5YDRs zI~#{Li;3Qp`{0T^&l)U_Ov~HI0LBBM<_lwVd1!r{mr8{VHQQU$#%NI^tQNllxX$w)>)%7}xVhlNR5QA$G_0VF3Y zO_OszLGuap3DnFO)6B}))c96GUh@`NGg3JSED;Bs8U>$~g{2pCQCKjA09>V?m4X6h z5bWIe2-K96gK`?hIouWsYUSutzi0T@uUz$>?d9a*)Zt|D8haz`x#Z>T+t}q|_4eY= zZPP;4Q4bQ-iGJgFgB~SQRa-?r4;e|9cpb$6?*NJHByWkR4)1Cm)gm3+EZBA3QE1`8 z_+SwX6G;;rQx#J~8B0StF;x*oOXsNI0W!&QFVOG8Pg%&l;o|M(+{5JM>25zz+;Ea` zzi?S7NGPLl@o=(m{c!bgf^gGtG?KiD#0nBvb9xXRPy}3IcW+@8NGL?(R~wg~Q=)z| zu3GN{sj1yO+G?`UVT*3XSQ`37x0W>4ZVo0{<$qy^`LD41h$dOaE)`A?kx`Ii$%@UQp303XKS Ab^rhX -- 2.26.2

    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%0AhC!?T9Xt(djJ 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%0Avx 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