From 7ecd6d87ddba2d80a63d344896f44c02a14b3ef8 Mon Sep 17 00:00:00 2001 From: Benjamin Gilbert Date: Sun, 24 Sep 2023 13:04:20 -0500 Subject: [PATCH] patterns/tiff: Support BigTIFF and tiled TIFF; bugfixes and cleanups (#159) * patterns/tiff: show TIFF tag name/number in DirectoryEntry array Don't require unfolding the array entry to see what tag it contains. * patterns/tiff: show IFD number in IFD list * patterns/tiff: add JPEGTables tag; correct name of ICC Profile tag * patterns/tiff: add TIFFRational type Rationals, uniquely, are primitives with two fields. Add a struct to represent this, rather than inlining them. * patterns/tiff: use correct types for fields smaller than 4 bytes Small fields are always left-aligned in the 4-byte Value Offset. On little-endian TIFFs we currently cheat this by declaring a 32-bit value and letting little-endianness handle the semantics. However, this adds some extra conditionals, and misrepresents the resulting field as 32 bits. Drop the cheat. * patterns/tiff: add ValueOffset abstraction We were using the field type to make assumptions about whether the Value Offset is a Value or an Offset, which is incorrect. If the Count multiplied by the field size is larger than 4, the field is an Offset; otherwise it's a Value. Add display sugar for single-element arrays to avoid extra nesting. * patterns/tiff: drop dead code get_ifds_offsets() and BIG/LITTLE aren't used at all. get_total_IFDs() is only used for declaring the length of TIFFFile.IFDs, and isn't needed because IFDs are structured as a linked list. * patterns/tiff: drop set_endian() The call in TIFFFile is redundant. Drop both calls and open-code the check at the top level, before executing any code. The BigTIFF check will eventually be added alongside this one. Fail if we don't recognize the magic number. * patterns/tiff: minor cleanups * patterns/tiff: drop strip offset/byte count arrays from struct IFD They're redundant with the fields in the DirectoryEntry array. Also they're buggy: they assume the field Value Offsets are always offsets, which isn't true for single-strip IFDs, and they ignore a partial last strip in multiple-strip IFDs. * patterns/tiff: rewrite strip array generation We're making extra work for ourselves by avoiding the type system. Also, by calculating the number of strips we expect rather than the number of strips we actually have, we're miscounting and omitting any partial last strip. Instead, read the strip offsets and byte counts directly from the IFDEntry array. * patterns/tiff: add ImageData array for tiled IFDs * patterns/tiff: increase variable widths for BigTIFF Use 64-bit temporary variables for values that can be 64 bits in BigTIFF. * patterns/tiff: support BigTIFF * tests/patterns/test_data: add more TIFF tests --- patterns/tiff.hexpat | 300 +++++++----------- .../patterns/test_data/bigtiff-be-tiled.tiff | Bin 0 -> 37328 bytes .../test_data/bigtiff-le-stripped.tiff | Bin 0 -> 21028 bytes .../test_data/classic-be-stripped.tiff | Bin 0 -> 20718 bytes .../patterns/test_data/classic-le-tiled.tiff | Bin 0 -> 36714 bytes .../classic-le-stripped.tiff} | Bin 6 files changed, 118 insertions(+), 182 deletions(-) create mode 100644 tests/patterns/test_data/bigtiff-be-tiled.tiff create mode 100644 tests/patterns/test_data/bigtiff-le-stripped.tiff create mode 100644 tests/patterns/test_data/classic-be-stripped.tiff create mode 100644 tests/patterns/test_data/classic-le-tiled.tiff rename tests/patterns/test_data/{tiff.hexpat.tiff => tiff.hexpat/classic-le-stripped.tiff} (100%) diff --git a/patterns/tiff.hexpat b/patterns/tiff.hexpat index 8f44f31..0ca3821 100644 --- a/patterns/tiff.hexpat +++ b/patterns/tiff.hexpat @@ -9,89 +9,45 @@ #include #include -#define BIG 1 -#define LITTLE 2 +char Magic[2] @ 0 [[hidden]]; +match (Magic) { + ("II"): std::core::set_endian(std::mem::Endian::Little); + ("MM"): std::core::set_endian(std::mem::Endian::Big); + (_): std::error(std::format("Unrecognized magic number: {}", Magic)); +} - -u32 stripCount = 0; -s32 current_strip = 0; - -fn get_next_strip_index(){ - if (current_strip <= stripCount) { - current_strip = current_strip + 1; - return current_strip - 1; - } else { - return stripCount+1; +u16 Version @ 2 [[hidden]]; +u32 ValueOffsetSize; +match (Version) { + (42): ValueOffsetSize = 4; + (43): ValueOffsetSize = 8; + (_): std::error(std::format("Unrecognized version: {}", Version)); +} +struct Big { + match (Version) { + (42): T V; + (43): u64 V; + (_): std::error(std::format("Unrecognized version: {}", Version)); } +} [[sealed, format_read("format_read_big"), format_write("format_write_big"), transform("transform_big")]]; +fn format_read_big(Big v) { + return std::format("{} (0x{:X})", v, v); }; - -fn reset_counter_strip(){ - current_strip = 0; - stripCount = 0; +fn format_write_big(str v) { + return std::string::parse_int(v, 0); }; - -fn start_counter_strip(u32 total){ - current_strip = 0; - stripCount = total; +fn transform_big(Big v) { + return v.V; }; -fn set_endian(str magic) { - if (std::string::starts_with(magic, "II")) { - std::core::set_endian(std::mem::Endian::Little); - } else if (std::string::starts_with(magic, "MM")) { - std::core::set_endian(std::mem::Endian::Big); - } -}; - -fn get_total_IFDs(u32 first_offset){ - u32 ifd_count = 0; - u32 current_offset = first_offset; - while (current_offset != 0) { - u16 ifd_entries_count = std::mem::read_unsigned(current_offset, 2, std::core::get_endian()); - current_offset = std::mem::read_unsigned(current_offset + 2 + ifd_entries_count * 12, 4, std::core::get_endian()); - ifd_count = ifd_count + 1; - } - return ifd_count; -}; - -fn get_ifds_offsets(u32 first_offset) { - u32 total_ifds = get_total_IFDs(first_offset); - u32 index = 0; - u32 current_offset = first_offset; - u32 ifd_offsets[total_ifds]; - while (current_offset != 0) { - ifd_offsets[index] = current_offset; - u16 ifd_entries_count = std::mem::read_unsigned(current_offset, 2, std::core::get_endian()); - current_offset = std::mem::read_unsigned(current_offset + 2 + ifd_entries_count * 12, 4, std::core::get_endian()); - index = index + 1; - } - return ifd_offsets; -}; -using TIFFFieldType; -using TIFFTag; -fn get_entry_value(u32 offset, TIFFTag Tag){ - u16 count = std::mem::read_unsigned(offset, 2, std::core::get_endian()); - u8 step = 12; - offset = offset + 2; - while (count != 0) { - if (std::mem::read_unsigned(offset, 2, std::core::get_endian()) == Tag) { - if (std::mem::read_unsigned(offset + 2, 2, std::core::get_endian()) == TIFFFieldType::SHORT) { - return std::mem::read_unsigned(offset + 8, 2, std::core::get_endian()); - } else if (std::mem::read_unsigned(offset + 2, 2, std::core::get_endian()) == TIFFFieldType::LONG) { - return std::mem::read_unsigned(offset + 8, 4, std::core::get_endian()); - } - } - count = count - 1; - offset = offset + step; - } -}; - - struct TIFFHeader { char Magic[2]; - set_endian(Magic); u16 Version; - u32 Offset; + if (Version > 42) { + u16 OffsetSize; + padding[2]; + } + Big Offset; }; enum TIFFFieldType : u16 { @@ -106,7 +62,18 @@ enum TIFFFieldType : u16 { SLONG = 9, SRATIONAL = 10, FLOAT = 11, - DOUBLE = 12 + DOUBLE = 12, + LONG8 = 16, + SLONG8 = 17, +}; + +struct TIFFRational { + T Numerator; + T Denominator; +} [[format_read("format_read_rational")]]; + +fn format_read_rational(auto r) { + return std::format("{}/{}", r.Numerator, r.Denominator); }; enum TIFFTag : u16 { @@ -170,6 +137,7 @@ enum TIFFTag : u16 { SMinSampleValue = 0x0154, SMaxSampleValue = 0x0155, TransferRange = 0x0156, + JPEGTables = 0x015B, JPEGProc = 0x0200, JPEGInterchangeFormat = 0x0201, JPEGInterchangeFormatLngth = 0x0202, @@ -184,137 +152,105 @@ enum TIFFTag : u16 { YCbCrPositioning = 0x0213, ReferenceBlackWhite = 0x0214, Copyright = 0x8298, - InterColorProfile = 0x8773 + ICCProfile = 0x8773 }; +struct ValueArray { + if (Count > 1) { + T Values[Count]; + } else { + T Values[Count] [[hidden, no_unique_address]]; + T Value; + } +} [[inline]]; + +struct ValueOffset { + u64 Size = sizeof(T) * Count; + if (Size <= ValueOffsetSize) { + ValueArray ValueArray; + padding[ValueOffsetSize - Size]; + } else { + Big Offset; + ValueArray ValueArray @ Offset; + } +} [[inline]]; struct IFDEntry { TIFFTag Tag; TIFFFieldType Type; - u32 Count; + Big Count; match (Type) { - (TIFFFieldType::BYTE): { - if (std::core::get_endian() == BIG){ - u8 Value; - padding[3]; - } else { - u32 Value; - } - } - (TIFFFieldType::ASCII): { - u32 value_offset[[hidden]]; - char Value[Count] @ value_offset; - } - (TIFFFieldType::SHORT): { - if (std::core::get_endian() == BIG){ - u16 Value; - padding[2]; - } else { - u32 Value; - } - } - (TIFFFieldType::LONG): u32 Value; - (TIFFFieldType::RATIONAL): { - u32 value_offset[[hidden]]; - u32 Numerator @ value_offset; - u32 Denominator @ value_offset + 4; - } - (TIFFFieldType::SBYTE): { - if (std::core::get_endian() == BIG){ - s8 Value; - padding[3]; - } else { - s32 Value; - } - } - (TIFFFieldType::UNDEFINED): { - u32 value_offset[[hidden]]; - u8 Value[Count] @ value_offset; - } - (TIFFFieldType::SSHORT): { - if (std::core::get_endian() == BIG){ - s16 Value; - padding[2]; - } else { - s32 Value; - } - } - (TIFFFieldType::SLONG): s32 Value; - (TIFFFieldType::SRATIONAL): { - u32 value_offset[[hidden]]; - s32 Numerator @ value_offset; - s32 Denominator @ value_offset + 4; - } - (TIFFFieldType::FLOAT): float Value; - (TIFFFieldType::DOUBLE): { - u32 value_offset[[hidden]]; - double Value @ value_offset; - } + (TIFFFieldType::BYTE): ValueOffset ValueOffset; + (TIFFFieldType::ASCII): ValueOffset ValueOffset; + (TIFFFieldType::SHORT): ValueOffset ValueOffset; + (TIFFFieldType::LONG): ValueOffset ValueOffset; + (TIFFFieldType::RATIONAL): ValueOffset, Count> ValueOffset; + (TIFFFieldType::SBYTE): ValueOffset ValueOffset; + (TIFFFieldType::UNDEFINED): ValueOffset ValueOffset; + (TIFFFieldType::SSHORT): ValueOffset ValueOffset; + (TIFFFieldType::SLONG): ValueOffset ValueOffset; + (TIFFFieldType::SRATIONAL): ValueOffset, Count> ValueOffset; + (TIFFFieldType::FLOAT): ValueOffset ValueOffset; + (TIFFFieldType::DOUBLE): ValueOffset ValueOffset; + (TIFFFieldType::LONG8): ValueOffset ValueOffset; + (TIFFFieldType::SLONG8): ValueOffset ValueOffset; (_): { - padding[4]; - std::print("TIFFFieldType not supported"); + padding[ValueOffsetSize]; + std::print(std::format("TIFFFieldType {} not supported", u16(Type))); } - } +} [[name(std::string::replace(std::core::formatted_value(Tag), "TIFFTag::", ""))]]; + +fn get_field(ref auto entries, TIFFTag tag) { + for (u64 i = 0, i < std::core::member_count(entries), i = i + 1) { + if (entries[i].Tag == tag) { + return i; + } + } + std::error(std::format("Tag {} not found in directory", tag)); }; +struct ImageData { + u64 Index = std::core::array_index(); + u64 Offset = parent.DirectoryEntry[parent.OffsetField].ValueOffset.ValueArray.Values[Index]; + u64 ByteCount = parent.DirectoryEntry[parent.ByteCountField].ValueOffset.ValueArray.Values[Index]; + std::mem::Bytes ImageData @ Offset [[name(std::format("{} {}", Desc, Index))]]; +} [[inline]]; -struct StripList { - u16 entry_count [[hidden]]; - u32 ImageLength = get_entry_value(addressof(this), TIFFTag::ImageLength); - u32 RowsPerStrip = get_entry_value(addressof(this), TIFFTag::RowsPerStrip); - u32 StripByteCounts = get_entry_value(addressof(this), TIFFTag::StripByteCounts); - u32 StripOffsets = get_entry_value(addressof(this), TIFFTag::StripOffsets); - - s32 next_strip_index = get_next_strip_index(); - if ((ImageLength/RowsPerStrip) > 1) { - u32 StripOffsetsArray[ImageLength/RowsPerStrip] @ StripOffsets [[hidden]]; - u32 StripByteCountsArray[ImageLength/RowsPerStrip] @ StripByteCounts [[hidden]]; - u8 Strip[StripByteCountsArray[next_strip_index]] @ StripOffsetsArray[next_strip_index]; - } else { - u8 Strip[StripByteCounts] @ StripOffsets; - } - - if (current_strip < stripCount) { - StripList strips @ addressof(this); - } else { - reset_counter_strip(); - break; - } - -}[[inline]]; - - +u64 currentIFD = 0; struct IFD { - u16 NumberDirectoryEntries; + u64 Number = currentIFD; + Big NumberDirectoryEntries; IFDEntry DirectoryEntry[NumberDirectoryEntries]; - u32 NextIFD; - u32 ImageLength = get_entry_value(addressof(this), TIFFTag::ImageLength); - u32 RowsPerStrip = get_entry_value(addressof(this), TIFFTag::RowsPerStrip); - u32 StripByteCounts = get_entry_value(addressof(this), TIFFTag::StripByteCounts); - u32 StripOffsets = get_entry_value(addressof(this), TIFFTag::StripOffsets); - u32 StripOffsetsArray[ImageLength/RowsPerStrip] @ StripOffsets; - u32 StripByteCountsArray[ImageLength/RowsPerStrip] @ StripByteCounts; - start_counter_strip(ImageLength/RowsPerStrip); - StripList ImageData[] @ addressof(this); -}; + Big NextIFD; + + try { + u64 OffsetField = get_field(DirectoryEntry, TIFFTag::StripOffsets); + u64 ByteCountField = get_field(DirectoryEntry, TIFFTag::StripByteCounts); + u64 Count = std::core::member_count(DirectoryEntry[OffsetField].ValueOffset.ValueArray.Values); + ImageData<"Strip"> Strips[Count]; + } catch {} + + try { + u64 OffsetField = get_field(DirectoryEntry, TIFFTag::TileOffsets); + u64 ByteCountField = get_field(DirectoryEntry, TIFFTag::TileByteCounts); + u64 Count = std::core::member_count(DirectoryEntry[OffsetField].ValueOffset.ValueArray.Values); + ImageData<"Tile"> Tiles[Count]; + } catch {} +} [[name(std::format("IFD {}", Number))]]; struct IFDS { IFD IFD; if (IFD.NextIFD > 0) { - IFDS IFD_tmp @ IFD.NextIFD; - }else { - break; + currentIFD += 1; + IFDS IFD_tmp @ IFD.NextIFD; } -}[[inline]]; +} [[inline]]; struct TIFFFile { TIFFHeader Header; - set_endian(Header.Magic); - u32 total_ifds = get_total_IFDs(Header.Offset); - IFDS IFDs[total_ifds] @ Header.Offset; + IFDS @ Header.Offset; }; - TIFFFile File @ 0x00; diff --git a/tests/patterns/test_data/bigtiff-be-tiled.tiff b/tests/patterns/test_data/bigtiff-be-tiled.tiff new file mode 100644 index 0000000000000000000000000000000000000000..1e43c4c0170bc4fa8b733c3626c2beff59eb3713 GIT binary patch literal 37328 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 literal 0 HcmV?d00001 diff --git a/tests/patterns/test_data/bigtiff-le-stripped.tiff b/tests/patterns/test_data/bigtiff-le-stripped.tiff new file mode 100644 index 0000000000000000000000000000000000000000..20ab8287e7cf4c4e37c170bdc06dda2e079effd0 GIT binary patch literal 21028 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
    PWKn>i%yWIl9ft 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 z znNre3x8h4FJrB)WxHEb_Qh)Cv(2h&m=szb-!)N@)+D~V%57~ z>7Tqf{yN!u^>603yRG5zQLENz|Ka$Bw`&XzxtyQA+hH!K?ZI3#rpRnub&Ps`0j9nd zTV=<_hpd}3re*aJN$|MR&+%C>YB~K<+)cgKtivb%Fw(E+*{$M;KP+LBr#Z?C ze0KQ6C)_+~X6^+^w50b3cpL3w>Mcpq{`jd-FW*ws1_zq#xVio_5uM9g%{M_%_aWiC zA749dbH=;ee55eh?sy?L=r;}ii?r|2KJ9capsH8(QJeFMRd&cb-)21FxA?|@cWSLk z>&XmU-`6m_=DA<-*f=cb!Y*sle$lerGDd6k5WX{@z-uEOUH{5eb-r;5Fp8Ppt37h= zA%q(9Au;rD#Gd+VYcpJ`NRi!OW;w_yzwR0{T`13EK!}-;;dQSYpA*Uc$t^^ zw!AP!EPHnHHh(NAsQIo-m!aMfOue$oFi|6?>_PC2> z5x@+7o>qCje0xXUc#A_Hubz2`<$8;ky(e4CzFtC zrcq?#QCOEz#(tpGY@^Cpp|T#Kj_IP-T%yTHqp?1sjq#w>e4@+Hp|ioEkD;K~yrITp zhmhd`XHgkvG0>c_Q3H8E!yhQh>?BS+z+OBM!eZXJN<7V$M23RL8Z(G2mVL z;IkEf%$B`7Rb4t2;m_9N2LW-6jd5y!0Iy@x98+gzN9chG*t2PfFo|r+-GpqsgibRY zP80i1$8@!ecuvlocAV#IYjjS#Sn-D#vsd&$Gt}98>}w}d$neM5G=%*uQe{6ZDKXEXQ}ly2Wlw zTc?g!z(zG`&k2?!uXCfm4$Y}Tq5YXa1IFI~2~L2u7@bWBK^C|mFzt;ps)`rIbT77Re~B=00tSO>K7^w0pwdkzguH&RUB3h7v@r&; zJT4KG*R+88pK4dud@Vo5P(DUWz6u9_ z!d!;Spn&R{J;$oR{N7H&#J=jG;Aj)d?i-0n4J_#wQX?h2-BH0i*o@m}p#=mHgfUW5 z000~C0f7Fu%>&|Jf&5oN{f8lJ{!{%g`~PFe|MI_c9NrL6|Dyw7{^_v)%aH#V@qhWB z5eVS_*@TAx{XaU^|MEXe5ZM325dX1{^Z$)!7lXk6kLCZ&heHQ~;Q#nL1mXWq8~|8W2Sp!lx8BsE#o)NBGVuv|`+ejV&IU|RibLFB1 zLM+^ag+>`){TUq2Mpzd(P7V(N91kb#WeNbDps>mny^S)Dt75h?$*a5o*~wH3o4?9) zRLpWssmgV7PrJDKh!g|?HEc&qL_TaX%e2&>i>NkyOP?5a z$-h+|SPFLoBEZrpSpef=<)AawQuqf$uKN>&lb&K;r;cXz{sZPsq!YHfvKN2|jEU}vjO+s()8&(;n0 zYtO^Ex7#j!rpDXIbi1D0?KV*FJ1jHl(V62{_Vtzm;DCU@IDpgPZ~!!be`PNK;LfYu z198S*ZT=ON=vsLzU(Rkl+%Nms#R4hRUn{%YS7WmVscJVX-kjenZ)dR5SN({$47GN<~%({P%AZ<`c zlRCC#8-)va>iiILxPLF|8mZg;PZmnXrWR?aB8!V^9FdS3gSdk zYI9KYp+zVt!bJfPZyddtqQ8_G!%%knF!MR3e#I-$qkqZ5B=( z%hCz4Q9);?0RR0j)kSm2LQgZ?N{q>Y;HVE17c($GdXruWJcWs!zpi~7Cvg~fkJS2O z=5_28Mq5PsA>cD|Ap_!`6-CV0;Par_0|)4OG>?Fq*>hcTQ|U}!Y4n=17VMRjyhw3r ziAc#7!h=*~WF<>+0eLkiVM*TP>c1Q2^6M2M$GvSNY3_W})Y21_5H*DV9&G+@xC>d3 zA>z*;um%s1jj77m2wDxi7I2mX&&foK&^{v-VbWL5v^8VUS!om;TBxB#9pdx!+BJxUTmy9mLo*Bs9q&bpN(FQqeNfi zU8fG)zJwSrfJ7C5j`ej)l@HG1jBzb}5pj6w2G5Lsu%r=Np|zj>NuA+ZwFVnDT}u{* zoRNQ^id$oBrVYb}Nxi7iiFrAR@4H%MmVB`X^ZHV2En|tDMzheBU7!6ZaYt!1%aAbkvUl`5b zi>TXc8M*=aD4X;=z6DzZRxT`z&t*7op*#3T!q)F1y*MhJ+d4@MQg)af?tgA&3Er)a zxw^{EMC$28Cl28_5A}WpS75`DLk8h|e`8a(jXvpV9p}}z!^yV|{WW!u{cJpmrP1Iz zI@7u=yEnv=EraSqi&tE4-ruqZe?g2reSeGAZ zazO|$h)=7S>16T#marW5bbvC}*ATnU?kH~;%+ZX_7q24f=zP&RIXO=YX>cQ6p`12O zV3L-rCAJ;2C6K(>(2Zp7nrusvDX{Z9EObcTnOnh-xvXR<OXFEb>V?Jj|BYw>=x(;4@wWO0vLB9x8YQG)3G6$?*IkfX96t(bY* zRlAol?6BE+Khc~dzMuXX{r7^;+Y>vq$Q4I%_jsFSq}YGJmp|fmgQ2QX8vW0^n9prl z{peRW$DOq0tn>E8s%H__L-Fop`zVJtuP}@y&1&5v@5;!RYPB8CODnr-j*{I<)^1>2=xrlZ@sXdqTz8?zS@BdngVU}%konjkckD&X;wM; zJXe<=_$N1?Oa?y7}>Q#IwpI;7e8e@~dXf z{U^bVn{B{jVf{9^JLsw|Yc7eh@hYp!I6~2AClRItN zQ~ig^;e<-@VrUw5;`=7#cXh~o0mzF)XLK$ohq|sk)?J4V3dPK=sq9rp%w<+XSX4V$ zdd#^BrM@fMS#;+OayY1;0#JQ?ke4CQEUnJdZ}c-MtjYz6pEl~A?i_}7g%)(JSZ%>;W) zIKW<<*+D`l7sA>}tlC*3HX)+#)R1Ibq&wuK*L&R8Cjj6dQm0E2wma@U6cVRT;yxe= z+Xd4vSa?k5m+gjGT`&{tW;ElCoWs#qW~!QBXK-liko^0Na?H1;{~g zBu=N4bsS`MFqCyXR4M}0AZ04B3E6inYEcI2d|v80H*%0ZwX+tLvlum)xI(#({>F*& z#)ryTp5`Wv${9??u1*2grJgGypM9szC!*^Upl45^WB*O7!bQd2&;*L1pDQ3!>81tc zP~BKCv6s@TY}3!dF#xZb=jez*_snw{RBW%L@kcCk&y+X&G%Am@AQP6GT2}TvmfdZ( z1O$3;KkeK%MzApj1_~3nl^%4&Tn|TgOThu&C!4!xyBTJ^S?8$ZV4Bxt1fMd4FG=ck z*_HQc5^T6{Wr^qU=v}jUT$LWmQJSn7XssT}eq{Ni;EqDZJ@Oz0Kl z5D~1e7pULnNbuof&-xd%DOf+sJMSl2-zcQU z!ae7}HD4f#VZpQjBYHb5)Mj$ z+9~^2S&nlcj&oG5WLNHPCfapT-f~jDVIzujSAn)!!Sy&I@m%3JO_B5Nm)bM^T^J3! zh>TjSsH+pJ%BoZnP|%f%SS^~V!A|N{h!-SCb~{Fv#LSNQDGs9H<=~Owlc&*#jk@7Eay%q8jAbtcRmu zHmaOAL{Dog8Pc-U!o_ut8`%`WDDT)h|jc|_jll1q~i-!YE{F;)lOVYiW zBEFjdsod%_L@lIKj{X-heVi(~iD}x1wZK(5I19tH0p=2jGrD=#=sRUxf~&KZ5%CZb z$Mh(h59FyxM|Apgl`x+2N>f<#_3WUug&R&kr127=J|3YBIrchFEG9|=8qi@R7|hAb zHH=}=gx4jrox-<5EtDKLp6E30fs)`5XSAh`Bh*>$dRlUrc(T7ECn7HpOECq+ zLN~HHqueCp+mjFw`*wKu?T4grc$$0@K%0L;#)TfHpcEoCkOcR=>C>8}Cz}V0-l>nBuT$|PO@%t5XEJEVfnPev#Wz3qA->xR8E+}Icyu%QYhhThoCQhjE zOIVRhXI_6|&^&oAxc5nbS(EM~s5c)Z@QKW-^7T;*EpmlSZLQj@VC0ZN{#Oxz?^ z(0d`r;rII4Wg=`ZL8TXgP%dtk3m>rn##T-vABfD9 zY2eoINKs|{@LvLX0;KdJpa;wY+~L!z#;VHKeJddG_s2*z$S0uhg*D5BnrB#fkXThg ztpjK{n>mP49;r?8LQAv!o5ccJ6f0gES$>_T_A5TrHK?Gg)icqFC#384dDrjuF#fis z2|0QnH>iTb!E*snA8x~LcTfSy6zm_x)`Bv%s8PPb41>pc6g&j+h%AO=!A)I6FM*f* za%bq2MLHYS+}3JXXrc>hrR7dEBe(Av>}fTy)JB1DGbDfZ$*dDuu`FB5w)Fc2!DVe+ zCzfLq!kWHshSp{ZlNWN47mJ1wGK7GtmSxpBr@it$69D(Tk^Myo~P&!570%gNm;{A3I)a*#Upq=ZQw43+&Ds{WH#0@U!}N6 z?ghWn{Uj#YP>f7i>2lFvh7%i*N28n#SVY*%#hGCMV5*H;&(C2JZCe?gzRo~joNY5; zX8a*^d{bwdRn_8`ef;-p=bMv#8*l2^Cgkr&rY%CoDt49k}7tN+RAvjHob%IIs4& z;Mr3I_^;@ej*5(k;DG{-r!AHZvw6r(VHlB%k{KXhNJ=kpZ$y#)d~HCUz)v^X_CeMb z6;1w*65+a@W$2k)o%6a_r206noTzU+OQ)H*Jz3tATT$+PKQp(&@STSQdmu5DppDhs zg-<=u<>R+arft`vYnz-c>01l!rxH2gbD2*;EAH}EeEICBB`@EsynhGSh}V}lHu}Jd zf4n)-uw`5jzZYrbsvsEa?mSy^fz{a#SY+ZppYqsL=3wPSeNji3;xt~wi9YYZif@kP z#tnBBF4=9(QMN<)dLETc^}(`py>gT5M<_ctaf^jg656AZ?3MD^kBo%+uPF3 z%I!JYDrXApEp}oOjxJ?R?RUBjFUuhm>7^bkVPbP-vhECAtF*kfiH6r@Ii`-D#`WL) zquHdzb=j`J=)jYh=J`)d_I0uSGPDWJmLj+xKcdw2#*qTy@oo2xt9}B}KZ3eldKXtB zqivEcQ<~vdTYmI@pgo*iplW73K>HSqudJZX1#t;>6C<0`Lr?o;>xvfTkqN8>3Ct5>ql^yzCk>Re+g+E5qt zH0_5zjCN<8+&cG!MkDGC2hDn)q7hewg;c^1$!d?@Yd1SQU>#QX{rKeI+wf^Jkm!Jvgclkk z$++@!C`l4k21TaRMA4E=h6tO?>)A64ka)T6ng<-;zyRQEnNbPZIRX^ny%>E3adR!! z6+g_6cjd2aCt@NGizH)sl43V4^wj~W?ou{#>00;-cD6SgkruVe;2tdj=l6`SI=}6f#%X3P*4SV(O}@4@eRFs-U4qTKj5} z4jeu|d+o;>gJtx}p}L2CB@h!n*WOU)efZ56!iBKD&{p;yBBX^8KN_wxFCzPuy}HE> zkp+0aZ&**2efwcWB%~N$c!B#2|HihmJ(@9pu`VLycKxu`1(?`Etf9Nya%@a$Cl4R_ zr^1#G8+&N*BXx?@2%ehRW$pD#+1k6&m}S3f`E{Qu3aij+*!hRKU}vUa;HO)e;RztSt)%eQ5Ql%n3eh z|MAkhYD-hd>2>M-OQ_d}lLGhNy3cp=lXXM`okCBCL}~jCJCuJasNXet@Vu%73PT6V zPZ3PcQHce0xT!Wo)bb@&xEB>i3Z05_@J)@4t|iITsrkLN=jb#k=^bk@tDL(kzZXFu z?|nc0@y9hlU^*oG*5DDe7CHdJY;caSE_jx9vG&ld`oWA>C^FygfEpD8Y(0%ad#EgL zJ*thk;8{m?7o9(NMrmri;x(``Nd0(K>5Vw9IyxY0^`J)b!S`jZ-zlMzSuc(CzC1;# zqFRC|-x;E}{x08nMc2r7(Db&#SqC=UG)U`D^M;si@D9QloNEl?1kG32!p#os>&QzQ zcHMO#scx&Li~sZ?`lFS@=bRr57n}U62hTS=ej)8L9enuwd81V3df9WA8-c=icd4wa z%k@gtA3d@odjE-;3hj8|uHTyJPF4Q*W~$TmTQmLF`QMu9iOzq_)b7qdW@<dxG`-T$pS+kZ3D|58i;2aFshGov_B9h4VSp%;nNP^&BaDB#;d;49QbPmmGoo z$EO=1aq3y^D+mglx{HS zs(=KZPSMR9_HhjwuQfM082&cRnKPrTL=Q<<=$p~r|RLPnU@ldIY0TB%8 zVQwYVKny(woWU7tpwke&pB-T}j7^MlK~SD2x`eYW5t%%?DH5eTy+I-sd6Gd$u)?hH zXXEy`+o4{b2Us^PQd0LrnC;+A)lFGljz3_141|zqR6W9URUcJof7WGYM7ZKj~ySx zq0hS+mkUI}zj$R*e`Hd;C0h_^>1KX^@H9!;&m8s2GJA;g$Suy?SIxF2WK_+!TH#HJ zwjrcVFD(#swD@itK~4@2`J1))$MM&$x*)qx``@kYzb+_!J6y$0uOlSlHEOW+)k-F2s7@eBMDD+jHTks z2wnM&==s6*FR)nCtwpwPJ;IHuonvsJo_u=yotuZN*bpN6RWy-tPXgb8wR=_j+-1dp zG`XMGM*PgDkQH@!LlBF7sNV0G`m=zawOb8!8UAh-W%3NCb4kLR$p3Z9A7`uYf!%*{ zF?f8(UZ6%rm_lp7saLVE7tN?1<@DYc6AkSX-ri-e2+1F-DxR}YKL|3mQdgw?TmQVH zA*LX7MmUoXf8Ho+prK!j(79nldx4S&usspxJv~Y#luV{>;m>tE;`AGvAQDd_)xomm$h(uiEa}uWJ*%9L3h=P+1Rw5^UZDR;f za{a&)rqGzh5rx3I!V;%&$3Ew!0COUUt29s|$WDYNrn#15S2D-qTAEBK&7~X>>k%}p zi>QGkC~U2WZ&@@|()N93G#9YToUKWCV(q`D(?-tgFGeYB87(#;1{;0D#fiyYN)t)R zSmrg%PSI`hFN$B`&8djhYwB!>CNKT-KE26dI#N~_VFpqSno)-G4EY2(jqza-0Uqnk zhV4%4@-j!UM%E&aDMp8)P{A8`Ns2KB^fXsN2H#n6gN?mJCVWlO2iKyu`J*IaDe)Oq zz40Oc1d^L9b#XcEwv^C>Z~V!*jkeI)*N)z6wPZ@C;*S$f*(JbL2sO}g{F1Rx5a1GF z-8z|EWc>#>Ey~J9Ry^onQ7bg%W2S6)+MXbLbAo=W!GO$3KJzuLF&_XgN!J>oPTqz7R%=RL(;ci6R)&eUJFtGv{otfAUK{FYXX6ZU^Z$ylvOzB=*1zkgjFHdQXHbIMRDvrT*M0K(>GDAs5YKtso%R=C{vA z9oC6;z@kj6Z+CU`?6VOc$&z0nT(;z<8eAYX%{_YaFG&Nld+$@1(+)Y}m#n$IFV(3* zqCqqeoBA_BQ`yECxIdd&iwnGDBFgh)E@g!W7{~~Vp#ze~s#u18Zz~k_V#n3- za>>{UV%pu23@Sig6nnx$jg*ht;D3F(|&Cqc9v?ynm3lxHvX;~fOCku=q z_oa8kITZb-pb)s^chhXKmQqzl1n~FV>2h7v12K-ErT4dJgRhT*ClP+~A6&oYK>zrJ zzF5rg8_Y|`xv!%_??Gm55S?GNtt28ysYo|SlXX)Pt++hJ8x>+0=-w4He#OIDR>)9n zKAAQw2`?`GziGz)81(EU)Tkj!eWFPt{%+iCztC>ZqTb&q8MQM*Ou6aOv|)kRL=}Lj zNeb_j{+sp#jDLtpjaP-azs{hugko?ltQZya$et^D%%nb1ZftqR89sx&E7^<<`Bw+o zIE)JLZ(cQ-V2VK)dejfAh8Y}PZPPg2j`h z2J8-6j=OpJsizk5_3zxs<5nDqm9CTM*RPYl6yT5!^qZyL{zx2SnY(e(0GvYvg zL+8d0mOwWkf$g0JQNZ`qWHUfWPPg9}OC^9mpyH$7K%z^lt|?%4)d~ae2i5fFa0jP| zjYA@!AOfmiD12#uWHMLQx0G2p^eQbD*ZaLPTJso@GR% zFXr5}VHmM4>IfZoJ?W(@x|)XM%$u#_V^-RF-eOSEK+fVCo~a`d7<22>-~mLiK*dkH z8NBdLUymPit2P*nNYB)7i-@aZOMi-*1u?JlYk(?YRLN6LNyPfUYa+&iK)X|*NpK?< z5I9e~qd--gBcnIp@M0k&$74aDGk?2IWw7M&D50-~BS@#8uZ5gwq;`j6WlDYUi1cxp zYgWK&0sf@Zk|MQO%CYbgI>&;_OJqc6%Cp$RUQfMp(X2mRb4OBN9A?niaFOIZ0H04r z&8HZ*p_*o5wDUeBzd0l{phN>?x?`%7Wfg2XCCe03|7RsXjN*O`B}VU$%ysz4%?5?_ zZWGUQ#F9W5Kxw_zV>x($?{+JZim%B#5|9=Ou%Gdg4dxouz0>|S?@co&_51#1)7D0} z(dUQiG9_9@p}R*1QO7*j=8{xX-zujW%iHQSub(nI2sY0-v z*2%qWsUd*@H;Ld&k%H@thl3aJAne|&JJjhTF)B4t=-{r)1F?!W+vkY`$2Jm@!Vi_; z_1g@R*hRb6#&fURS2Envk-eFR7lKXgYPQpR^8hkpqp8EtC;#)e-1&n)uT@UZ5KTQm z!bPZ_F=h^N za4FOjk?<)llh6n$FzN`1sS?4K#?rsDHArP^3AyivU7?Uj-I;5oQ|=iJBa_0zf6{PF3N-?u*pb+u=Y{sCg2bN4x)7|;8k-@2WVo*)aH zp(-II(3O#3dM<1!U>MoWX%KoZDyWe1YYOs_q!LcJ(E42vanKkpp#fL}F3L(cd6$x@ zII$^XiMPr6+F)JtSw7*SXj=xIHj9sN87y6vA&3Amu6Q2AOllzFWws zPu}dA0JJ<(m7_G~q|2EWIIspDMCkq9H0Bx!u|Sj{&6v1lEWe;)&F?a)df-%l$2he) zhpO0VtxsWrf&b>(x+@)*TNv^_YjC z3hXkzWEGRc&_YQMu{@xORQ|7=s(tsb!yjzEYOWw)PX7>x9-S%FsL(PG`ZAr+WXVM} zx(DY>4baOiNt;$s#)HQ+--axP z&s&g79?L=YP}HYm#`_UoZ@S!D2^9*p{RO#3U%et9ZOixzyDB+hLI-MyjC_~<&*VK* z#ZLE^-SHKOujJ=XS3!aj-UU=hQV1aZ zd^mh*l+=Q}Kz*{s`7kiLIk)#n8+Hp^sp^(2>cgvX1Y*_ zaR*{KwOxPm5A@epFrgIQCDhUV7+MAtuot2zxRf=4{D~IavJu$(kS+08L3uG+xFHWm zb_5ruNFTb@3efq|X=`;r$@JpinPRr_B@xogKq1t>HV6iRea_{e;6`sdzZrMuTJUv$iw5I@k5YNcCC6rcp{E!B{thS+GR zQ4A`CYfu$U7iwyTCl*)$ra@M)8`rUp&Lo2m1Kufn6!hUpl)sk9gL}Nw(1U<(=Qcg@ zErj^63q7M;ICn>=79SvLgP0?z%E;W-;Z3wmiGE+QA0-X2FFB=BUj>8i(m#zrG(%c*U+0GNy4AWOFtOFkqJ`_3**AN@&}o;!`^ z3jJeHU}hRi1XVAkmYuw=f!XijLq^&N>Q+p??BZIzxD{A-XvEAOcv|U%{yKD_cxi2u zW%8GNYyz?aYxmD2HsriCh-UI<^05|~0U@|Ofz;MW1@JctH_xM(e|@d6LSzsmw_My$ z0Z(0%^BX(?@?D<`RP+$|?GUu!2U0?a@XU+=$Zn^N;8$wzZ74X#M?JV@>jZI53`u88 zR7!f@Xo)~c7;h9PDiB);`X3q?w*?By0rNOXVd@|qQLF+3G1SC>Ftiy&XZdmCcpy5b zTniip#2R#bLIBjyaTbV+J_2-a8fq4)}A1>nX`XRhfw%1G&zQ{v~TW=sk z!iyoem=Vge*Av7+#6?0Rpuy0WVVZq6VelkvFp_u;wCVhihp&NwSCOEn^gCF#4uMFL zT_16)fgkBhge3GIILP1#_7L({T2yc#dC;`wup~bn)Gu|EF9RIG5IP`>L`uRBK!->P zQaUN}qF`!b00aHT!56gU)l;u0+k#t?~J4#IuW9W8oJNe2OYv1 zFPIXYMjRiRL?VVf0)w0RfV`Ptr@&Q3f*e8|c#8Z5ULvyAMgXQ~nuP1lIHLCzN-od> zUJ_jeNq3l4HcBWz2|_yl7rOBGgix%46<0Jwfb6g75n`&}QfSlY>=Fs6Mg4tAv!8(b zHk!=E;J!=^8w=&bPX1!|rt~?&FYLA=5{B6O1sbEtW2d@sqk6&I zij6wsgdRVSYpE7K56BLqq9SF$SZmru|7g&tl1{QQ@Mwjd$(y~3XR;D3SZ-ME;T+3T z(1rVWYebd$aD$_RwR+QT2MS~o}EMG4~oQ<|-#|upTfqe&yJ*vf=%8yxKIW{wz&c%)h zBb*t(^L*5<(WqymB!Yn1mzVAVCJ0Jln80CK7~vK&XmopQcXmq@@(kf$Tf{V>D3-Xr zEyj~u6&T^j5|Duq%OF#c?YC+G*t>tNELnF-);n%m4P7|JYSpC2^WD3F^r_pd(YA;2g$r-ka?FUa zu)^^j+O_%f#H++2J!)~S8?~;uoG|g*T1%NX8X!1pdh^(7St?Pnq;R`z7`MPvzv^h_ z8@q7F(y{4mDvXMU>-%ZNrA1gp8!2;Q)9sO{DqYoK{@6N*q)Qa8zVx5XFEH^-mHgs)s@O3%YRXag{i^{OZ6BN9M;BG}$>X$trn z=WP0J$?3KS{iu6#3V`a91 zw8)(Q2t0Qls9CjHg2Xd0Gm925P{{#>Y8f|j|cj=f-|&!n7r+^|-g z7LFv}KCOSFCd%KrG4cBL&B=-CWam#8nOJGK!|ii`2^-qM@$*|=_0|@Ic>FjFR4-aK z8gy?wF&=CmsxTRRUo40Yu^)Mt4Y@zMf)8~7iTOS2jN+EV97L#4#U700*2W!zmo~y5 z3WT~NvYS2s@yQJf}@W*EJy zXl0?`9L3`xPp0l?8<~>?Z~-_@+KB*H1K_V?T;^i}lN#>5!oyrAsX_{FIgp|%93DvG zQwrc?VU-)@PC4b9Py~@N_fR<5-kVMgM)KK|P;$Tx^aKEuV!!w zWF$26V3ZWp>u-AX=TrM4#kIJFuPGKiDt$mY^Tqy}Q@1~CjCDYRh5EV+iCenM9utZ7 zD=Cf1PWovU432XNNDp-R2{=41hB*E|IaZoZlD%e{bHb%`8eW8S^js=TTsLP}Ap-~a zNfA(gEeUglYyqnX!ut3FC}6jBvazDJr&&2-dhj>+-^`YtQ37^>MSPy41XQ&iGY=?+ zz>kqK8jcnTC3auev_tzp?eR?-!tUS4S-Dv)Ygv8S!wS9j)mt?GTx{(Vis!H0M(g3B zf18?GslD<|mF@SvXmhPyJ8bU9V}kV&%cCsI)&}c&-cI1jBJ5m?-c#Cf^_1>VR@$EK z7|y$c@cLB@fe#pl|6VSlH6AG^e~V9)!ectNOK4F-L(J35d}n`*cW!=gcfuB&&coVJN68BS{j((!GenxcSk%z z2pJvp?;)Ndmss~-O^Af ziDZgZE!p`8IU~`^KqVl?fdUV@w7F88c9MWr?C;AK3-lc;^SUh>hiPN6A0^y7^lUt% z8qX%2k|(Otb#En~Li)BYaD87M4dsG=UN$q)XftUTD|6uKZP@W)jZCr<_}zZWN~}2K z!8rE(Y*@Wy@2M}m(QMPa=IEv0V!3i^*?Uq#;J=9`)jWI2(x|MWq#Csg@)jaQQx%)< zv=hjB{VWu{ykS=B8_VXav0AkCxZL$q%I$Q|u0j+Ut&qU((Sd*I4K)h>PZL^jTs7_a z3Cf3FbRmD}-UNH%0SRY68ic<1r&Gj!^sz_p_fSg&t=V~N3tc*q$pk}sMj6y1gJEEZ zSAbz}LNMr(VnZ~L*x*9a&jI!!>r=b=Lea~K9ZA)}$(=~kj0wu5YvOdzXQ+2gDPtN; zI3kBvidd^;g~GgPh*ZXWZe^l!WB$oKeyw-RBkhpV6EUO_vIMW7(a_90NpF4=uX;iQ z6+P`d@FqAF8;Te@bz^WZ3>b^q50V3CKypi@2>+B*2LTXNA+YxdfI#(A2KiZVrE-`W z_LnVwP3|ZvfNCRVy^2~RjhHsqZODU>c53HmlW`sqJ44lZ7=2|Ru8f>9nAd~MQp=NC z##mE}k;ZOiUZ&W31=rAmZ}oN}UuY#QhYx75Fwv?FY#dDWSi1*3*={t$th+4pjc$2v zq~n|g>7(!MxNdlp^m3SJ4-p8JHV04zXf4inI;dpuw1W1hIrg1Ij8_VKd$Gv{v)`*zL?A_Ir%lyTflb4C-x?EhD-8WUN zxC^iI!VMq%ocMV2RZpfR_vfl|C6jL(sWf?i;U^6R@e17=B$0uP4$Vt~8q&LU$zLRk zhZEGhJw05+%SVzRO~v5@9Uw)T_>-!(mAgsRY^7P}62)Rx04yC#r%8qO5h>#!O4s7W?V7t6LHy|QciotAF*bow zv%G8Jvvfcy*w#%Dpw;{iKMRj^2UIkg>h^=1MgJxzv(FpL8F(GCcuIpkwgN;|BBin3 zUtD;bMY>AU=l7S*iO0{b=yI1=IRwwTp1c??uUgl#?`4k<*Q|Xrb6I~LuiiVo8FlZs z_r3O@BSSZdT@a&u=$U55fa#5m+=A<^iJ@MUI0&Ib>PH@DLhesET1M%gL6(jjz#s;o zN!JQ%A`NmF7{bcb`dL5@ab(-S%GP$cFUfJN`GJ4dK8H*Wa}vk&%hw5~bdGR%Q_vM8 z#(aZUWDoknP{f&%OPgPpoy;b24b4KLEMGLpS>Prq#6vM>KF2aTXRyUlbPZakn7roR zPnf(OZx(I*&JU6()1@kom~H+I0h)Ij zi%r;7$5lxBxh$$iVxeo`khV9IW|A?u{LKc(a=8QWSr=cEvTdeuA9itrB`jLkn2_Wx z|Mwq1n3Be}&?oox^c=b}TL5nz*v{Rv%xObsy)^IFilu+GNt1_}$9xtqQiF}hD@BpR z^4`y4;|!Hb4JThMwxZKE!*1V?czaXEs}051f@}J;hqdd?d{}+1z6UgIi#4ywHJ5xt zxBi#Dv70|kvdLIRPYvPNO4$Xwsb<|jRU>uX`o}Yjdm5ZO)So}~Z4Eoz1RTtHW{8$H ztPth;=9vA4|EEyI4iqQr$zZpZW<){`siAO|7nY?%i|XHb-;86DkVMFn*FIoNVzZ|x zSg5y}yF&NG4w`7trvzE|W=-VR>)LyAi9je&&kgTx0NL}@ZPfXRZJh*iRSs|%reD+1 zGUuu5A3QM2=~CuT)LZ?Aih%{o$6A6hdNcObGxYaJMILX|r7I^3$MXvecFpVTaSS!P0fn`hMyozL@!}`pv+52878B^-@pGauaeDmg%xLsHFIN7oncI}p! zi_NS;YK|=0+F;R4{3lmf2xGzNJ|dfzp4=pzi=lSgF6PAkRv$j&&bd9ItHdj|vlm~v z5_fu%rKg?UH+@9YZk9T{cN57aEBWkpyXyBw){fV|b|jX7sP`sP8iMj3H!4T1m}%Y#&i!2|CLq5HMYN)Kp%{1bE)-F?--Tk#$-7WQ=6)B7(dJf!KM_Gr z#6Kg=y-0@!bj-W(s9JE5cy~e)eVxdMz3OISQHhY>tTzNo=d5e z;@$ZeDXxX1k(4x~=V<`-2Ic&da3SlQ#ctUBoXVKyf1V|h!7qZ-Am#_QX?Ye50SGL= zO0g-oik}Li4JZT@;$TGt00g!ngTyTO1xH?$hf-5TBVJRAY@T~vK~)J`1fUI4V9|@y z#K}fdUepXZl+#Y3@zvF8IQ3xD`F-kUIE@;@gxO>>tAZJoTgc;vr?b^B(92i zI%sF$#VAC#HZwTmK9p{_jBmK;r|Z3;CUf{{AieVv-AH>)AYgNP2r{rQgA@VYcuAPY zxlpq`I^0A@$s@w}PqIdoi2{zcl|DFo+37oOu~hud(&?7ORA#QzGga@piwnrsqs$R!|D$8ONJG1Sh~IqA#P5|k(Xn&-D9uE?B&zv3eoQQXfx4FO_Qo4>|1X}H0ZhuByy46AHBDN?RT`5@`=c_>^VRqY3k zU=eS+Xa>+yQx`|E)u>8y?*AV}TUtkjUAnQ8t`+p|Q= zzWF!c8X-LA7Za}H1|>q+Pjlm@aol%O8!>my7z>c&$Q-ad7s!4MMkr{u=5Dh)D}+m$ zKW6=U(nMue*W$p{>eIBt6P12?md$b-%rMa6%HQ}=^j>pvZ?m<|(2A)LczDvb{z=ZN zeEQ7bX~l6f%wy-^R(Mqu+HTC~{&D|XEM4&4&|PpBkJ07^@R1j-{&`=F?WpvFxZR^( zg#@B95p)4^0R~)2LJ@hnc;#;jl)e#RA*6g&VqSQuqZ1f(7U!{fjDd1tRczr)btGJw zV{UzX@0{N9X6`kb82N6p7>Sy!wPW1{6m=?~0 z1A0l!WFO`+wV0NBrAg&E&H^qh2cC%tzqS5xbmjd%l^Wu+ZdJCMyRNC~j@M2gTPp0< zBvuRuS2sx6S58e0x#~(CI|@T;?52`ASOW_*0vH8bAcljTcmx|k)hH?r^Q?Q?L>ih9 zklHghFXo9_NhA*XML46aT5Y#iKi*Hp|0J$xz<7fVkt|GlPtX71l@kx4Y4I4}%Rw3f zMS{9;>43i#y*nztgs}s#APp`+JbR`L)MoyQ#Gj~Pt0~ArSqQ4ovh=XUvF$WU(q_gL zqBb40Xwb6+Kcf6tx2az}(|n4ZJO#C_pM%;b&R(RtHZL?PP|;90`nE3B{Z!aUh=+Er z)coR9SujWUu7PWlPJB627B_^%-{KYG=WH%N;k~3y-Z!oq-VL_#!Jmkgf2{qYj(W!t{Cbl-trl^d73cdhC7F&nRN zS@hobAeSr+Yw>p7|BYyK@jURgdy*IuqGg&Gez#{@C=QZ3fg!xm7oq)<=sJF^EO3#M+qK?*8&(MtRIUX7{D>CnnZ#9we;ZcnKK7IE znUC_eh7R``9A)n0-^?e>A3aoUJB5&iH%F#$wh;XY`6^etLg|P{QTnb`scOMqOMphP z13hv1$AXeYQ>k@{1oJ|9Y}=`0%-|`{BTU%&=ZfV5p0VO5$ncV1W&HB?l#3C=<|h2l zY1&jNW0p=2F$Jm-WG!S4<=@KMPt`i`$-h`go(U*1b0dw-fStW8bxHnaO8qXGxSfw zujy=G=MLrx*3~1mLgs$tBZ@e-Ygeh1q!FeDb@Nq#P7?GSO6c@L4IuECQe=eo+k zTlS7Rd7CyF@tHtvhmPT!6$?!32N>9c2FLhB!h*?&qd+DCXIMgAjGrc~0*{uQc-bLp z*StDua%e$|mY07zE#B~C->HvBJ1^PgO@;hsz6Th=|{O&tz zqcyyhyAq{b$VYLqp>U$Pol{H2bLld&TqU0} zOJUZfB#j{N%zO|SZm+oRREUB2oZp2=q<+7H4KKZ!EI@8Cg z*{9F;6COgBN-Mw3@p!dTpYk1MG%bq8L_BY22-Z^D5#Fb32q%; zScyV*LWk1I^-pUyiN_0$?KMO14dtj4OqE9X1N^3_I|qTdto&|`_1#j7)-Vs2bDgFg z<{clvNXMQAD~A8!sw`2=NLy5I(b-x+ZjbFJE0#XzY%i4bg|-s^Hn&f-LPJJbLrz@> zYjz{)ZV%O+T+r0gC!;ao{~v($RmY2VvV%$K`02&z~j-OZq+93}|(jVrFllb0wU>_$q8D-UG&! zIvJv@>xo?^E-l_wstAZZMvfl#lW0ml!!~t)3=K3yO51HO2$h>$G4jXl?Aj}};@)!0 zocVCO@IE*t?O4`6`&lyiPvmQ~_=~bh@u`hUG#O-^U8indcw4tS;iXR;KzMbMcAJ;Z zpZ@Xl?NUu&JjJ|!c{A$rEdBG=gLd-a9d_dgA3AEdF<@GOAOg7W3GNgKMbjw^NQD;- z94G}fU;(rO^cx9`@~ImItinWWHJm}!op7AC%Mc@c&Z^{u_I7qG4$Ri*- z^Ph}LT-;;SqqWa-JhJs6>s(_lyPm(N)UIVj0M~s8NJ@35$d_uUdpI&3n6VTHv!HA; z#bVS64jv5~sTJPg(D*vkTAzYSH%f!Dj;0D)WgRGm)D95EfO z`g$J&U@A7*NSr2NwDOF*0=u83aN!a{Mf`f?ifgM~_(elRNl$ISFm6BzsBW<^P) znNv$670zq^%mT?n?~;eWV`G8l*T%*|R>P!9?aB2QqdTcZpILCIR7iKmNBp;~B|qHz zO~rYS&)TUQaM5Ni#5ta;b?dE(<7s|kz+ZfYYRT+e9TX`l0x01bJNG0{uo{>PtkVX3 zmICgU5B@c^mb$kOKGw^ylotakCD9H>e4Y-JhXPuqpVYY0bnz`68$F_S6rNXePWZ=p z{~?Be{6u{y(EpF7v=$Alw@l$bo6-qVRG9zdaj9L`O!Fo~wg|<2EPNaYRGORhO(Nq7B$XS{dprhNbdyLJ7H9)&NBI=``77fZLcUk6j ziw-S-BW?cVyg`S!~7s(WF~&vuQ~D6%MJIwckeuYJaaq$ zB1Vk1cpmoDJzDVZ#=yVWh-tbISrM{uIqH9~FInWE>1DRo$kMV>D|0&I#Hp*`ZT!ntK}qhj4E~1 z!a>(B&5Flz((HQq2{xQ4Y*znfNrbedvb@*M1H2wardD5b>g3BZNagWq!^v9csT(fT zv~%*(vPoj`!$*#`@wmuOBoPe| zzIPqzTahtg#dq+TiJ-l#+%@@G<Whk=_3>A%HMiFrpT{D&PQqQ^N z@Ke_(#|u&?*M|x-P3?m7hvsGpB>1qlB_w&>IYs|t0RGn-fd9E9Eyiqp9~@|@O8f6F zD#?uJ?-h#-;xm7-T)=N^LF&3tnId&F@Fz{)9E=i;BTar0*)r|Y`Er~#8QWH)+{Fr9 zfx)N|tMuhc+*X+%%T9@_Re1b+qlaG6s!n+Au}2S|+cssWP~aS)37M&({m&G+5o>0&wGci|4d?2s5Xp3{B^c=?H&?^~2OvpYkp_490sj zhuC}7v%FqO^=!@a*H7}%){cc;w9Zb3a23y`I0)nf41Q=`&$|-F?RtxI+q(w%lV;{t zFWX%D9>1Qa67Aep_={nFUOZEL?H)VMf+%-}hA-~A5X|}@A-_fdTlj7O`uc49{@p~8 zHU&C|XhB~@4w-Oxga5iGd2@As16PHA-V(F_s{7YH0T10L$#CFh4zT2jF}>iv_LX8D z5#KrCgs3rKu5iDiNI-ySr=yrnDKvk~Q-ZBo1oL(CwT`CkpgC(zD^;xL8FP|mQ0kWL znx32`k&N189o3X3`VQ@zrmAbQ;?R(6y+8Kge~;sWi5S{E&LG;C>`!ak;KKDAoDvFX zmte;~p+$rIGHcqX#Vl&4nzv|v)B5}ojUj$%=~U>eds^U5g?zat!- z8`Av#Lx&(7nbXYnxx1nLFSYMA$R?fCn;77g^iu8p>TU)LhUyr*!Hp!XCGf%rXzi};(u z!KeJy^X~e1#T*7E1no}mYoQ{P0OXi|lu|Za#q9pd3)k6Y8ho-0Zesjw(wZ41;P#EEW@m zMyx*F$gF)y!f+k8g#9XTuhp?1_oWw6pV!=%X!J+Um`({FK-Ii1-S9IrwU?`eFRgZ} zjji7O?u6wE-f5-(%G@atXg+n~#f*7wuP{tIjf77Fps}7SFpDkYZ?2JHVd7KC`;8-N zjLjobX^B6TiJrN6K2&el@k}$yq@`UyrHe;aKVG@jKQ+WGmDVXw*DEYMW+si5`PwQu z%&%=%N5m-b7eSoZSL?^(slYXDVv4HcsdcWB6ZW&-x}J8C)xwVmfJ^+7ct_Pn@%Dhh zVh8yDw?_8AO$~`4EPm-BBrbS>v9r&>5eH&6p!i0RcqmvXQ+fNw=Y^U=saT!%7BA!u zO|n4C!riurGE+HRhc0!MM6_71L7_a&)y0r2Xqht#9$Fl``8NPlmB?PMxer z_s?o?Xz>$-R}U|0Y^v4kD0fe<`nkCaOqWmZ@pJCy^FO!UQ%_S6J*vbAQ0*7O=%>9v z{i=&*>l@05hDtrgRr1)rs*|EKd)oN^-+q!c4HL<@D+6VAR2TyoObXaVm&iJagLZQX zGeZ*{&dWnJ_5AZJE`sGmk{H2cs4Oa!TX?m#S6}cH(HodZ80yT+Fcqet6KO^{vFX9` z>gF8_LUlrB1VuI1Bpl>w*-Y$X_4YfQKTn10Dgo*#2iz*-A*t*#nD#FelV?TE^j(SE ziR3_zlb>8HU}g4@-YVilIMIem_JcXlYP!nYqzG)gx;sE}M*X;hN>pMVT3>QT6QGg{ zxK8mAFXDPJVd&>rSAI~zw67Ljm?!?WyvSLxDA29Nk|POpGauvAb)C>v(Y>vh64&=w zi1||Bi*(x4-CF(rpHb+UJGK0zWo+d2G=ouEqT~rdW4wk(HBcRAS zj{_)v&NM{g$S0bMAiWnv{&nr}?mE!X->(p(|A|3GLx-271nLan@G5fD`m}0EK$b@O)G5Ltu$e+ZbhIoe!|no zL;dRYlZ@zn-rJ8Yn#NaI{;nd5z2?OPF;#Q~-h*ZhdLp#xfaK}JTfI)pX1uERewLp8 zO3p2MNx>!sR9IgCNTk7D=N49rXprEfK*YvqM~#(siTplh10K@C10~@9^)Ik2aQYy|l z7}%4i6DAni@ya{O>IpXlAg){LOS2{|oMJZOwL3M2xn4W1!z&YWI)X0Splt?9>US$G0!Tv}&xV%4z_$u`C8tG(nBf z-}vf-CAjM~Z^lT$+@aHZmNn2JjS6vqNZmP)&d`rwT~^-=8+e0A3XKZNzbZrmo*Lm7 zM2MvE7kF-39GEXs1;7@26$-e>zrE>y?9l$Yz!X9TjM%;%4xN*49H{9EwC@&r!GSVa zW`_&Efm4m}n=+loCmP&XxzwKD?hH3wWPmuJ&DE%kR;6~liY?Yk5oNJKF8G8enkKDW zuWF8g^YIUqCQa>fm9{`*$)Q)rN9$(0`Ma0Tv77Ap!ZbTDp#!G2OP_98#hk+RT+y>} znhN6vbzN(ei-){2nq^MwPO_;8^5Ly)ma}M`G)krvxWA&128&fg*xaTlr$sx|ZE786 zZQyRq)UMC`$@Vvh3vS%r`6Mi;t(q*K=5~LzUg}jkeRB8sH1e9pQ#$6}>O~sz*<&a1 zQTSt(Omx<-$0dPoq|F2110VcOKSUGS>fr}^w5&gwofihggAz4<)V+P|+031iH67f2 zJ$8E1*Zc`Le28LG0~lD+GlVb5EmPO5C4(FqSg=iwb?U!5ou$neI^$Mn6GSSI4N2ND zj=N!GF2+AoGG30Id>ygADWsLJ?r@>#<)|-XQc^ECL@j5n=!qM50Cn^$VF`niWReZm zApu-|dlYgS*{7T;Tpj1UQyP8`q7!Z}kX+Ls;xftUSsD!KA&?;f#thhxM}8LA$e`E< z>g0ga0Ifc}i!TxhU@H%a`~qlRm_m3Sl%uOPJMV9zyr7vQptk^iaWMdEuKTDj&cCP` zFKM0}fmM*q1fa?;G3Nz2u~;$=Sv+HE(dFkjB~O*qB-5SbFGCVPtR@gY5Ux#18vNUu z!$01f`LD`K>^%_Si_JKXA(U^q-PgaeOW3aWE5sEl5O2Di1)E`Lfo8qXUEd|+p7Uz5 zDSuQ03*cY6hOxOr`g%gBH~KG$VM}`054Ye%6G1qTGKnFepdnST0-mh3upN5W@BhTX z|A~YD3->`Xnk1AmfL7TF_B03uav{ub1at^DQe=4&K?IP~wZ9q$fCD_JQZvws4gXh1 z1Q9*tU87l>lT#puK~PM8&qgIeh?X{<{td=tzz^-EN?c-=6vFXVq`{OIrqm_>{B$_-;<%%$HWF+=Y@w>Vr_kKEMfb^3fsKG)||Dzk?5DOa#lZ%LPiol zZ0@QnT%ygAIJ9@I+p+H@k{f2}PWV@>WzE?96>C++X4CfEDdm&R4us(S-;EBuV@};k zYo4AYRptIYo5#nvj;OTdZtbT6E&gbT?ZJEQ?8MA0j$E_-%8vo8Rdn?hm)mXguT!Nq z(L+y9B$Gz{aA%MAZ^Gy1i}+P(0%9w5XU`ECxQ<>9QrVLLu_jd=zT8k638-%t1DOEFH;D} zg%ha}aOs?slPQH}>=NllF=J906qCx6F-B*{8>aZ)U$9`Sy*laT7*FCJ{#k8POr~~^m z$g6`p36$qRG6E{oDK8S@AWh;2b@1Gv8fY@rP?ukG-fvlFK|{tyZ@jV7g=0~3t^4ER z?D`kuFwVG z&=D3Cz>6I+t66#up}>rnphjPo{-}hVD7};PVBclLlr>UZ&k%FOL;Y>+J4dAOYa~zp z=q{G6a$nR%b|3@xW6WfhTH(}D!^(IZ9zq1r7W}Z6lx|u+T;YjtPU%G(xq3L;o|;zb zQm9_#`J1F*RlQ?lFN0w4#~dhc-ASjzlJEaKW5wHYspFPz?`O>OHfqY+{oN2aNfd)^ zJ@h(7tN%8}dD=-z7D6p&PwrMbE6qgms{1d5@jL5!^-`Vd?olw;&GUs~>lTZq50+;53~H>&lse_I{c6>&PgdMX<; zv%LR5+ItJAx|(fWaN+Lm1b26LcQ&p;f=h4`VpxJpHZCDpaCdk2jf9}Vg1d(#Z}GqX zoO|x;+vAPC-95(Z*B3@nvnETcYR#G@-&gFF5W+taRRVAbr4i~Aow5_7O^2*1FiERP~BZVj2NE1jA~N9fFF4Xs|eMAs(3?Z9kOIk6 zDuX1shK>~9Y3pAt58Wtx5!`T_Kp2_Lze0RJqbrp81`V0`&bbLLd1jP5E0x#xx=t;y zS9F;OtGoEVYw#KLS23#Z7+g)lI-?#;&f1uu?#r^+gv7zwH+HrGcxC1{T!EMUAKo=pf@60FT>5-$Q_b zDsO}PRX_^^HA;e>=hhBim^7@%dYa`>42dR8)lLrxErTQcI8rb(#Q0PQyOKF&W~i% zUzVCEwIdt&`zwWUXic!=q=UNOH?nn$rG$%^6$kX)vq!b!$joGML*~_il%TCm8B;%l zWoA2wa`ryE_y*cqnn2j&ckrx{yJ!IfE=d-eJ*}TSx*=M6mFHVrYAbwaiG5@^~OWuEe#410-W481CAlyas{tr~~p_(6~yX zNS#rfVU+M>D6GokvVSM8(Gk$Nmeu93B5Xhm(?-Rz6*S-`blS^oAr;t6T@8}$? zRy)2>Wq+_BElFtWAC60D&tkU9=s?*0<#cA%?G2-HC_29KzDZCe2r1qQd1#d$KU$2r7vvP01 zo-xMQx<3==*(6b-h;Num3bFi3<`&wxd5f$w^ptbeHm#-r*;m!-YqsYAmKc`$%O8g^ zEPN)S*O608=@u91d$9S>MH6?_#VY$R+BVA$^qoLPL(^kQLb4xB{k2Dg?#<8B{>|H1 zvbZXBT5?}&I(}Jky7{-aK`Vy^A0Qiyt70cah8ixHi@OWOrXq=KqvHu6e8x)|+MRnA zpzwl~Heuuu+0Z~k3@F*n?0%JF=7p*=d9#iQ1q!9A6@qqpCPq1V{Kus+N3g$E_B4I% zHw)wpnfQ77t4J!#G?gl2d!J%Lu}<`qf&9}}fu2w1HA9Ct6q@b^R@IjF3sH}~=`L$e zBen({toMC3p8jKok1YYfoA&qxSPzf5G(N1{mzs=ipNf&MCMIN6J2MlN6N_s~6|D;z zVi``FeVCd&ZfIs~`Rv+bTHyDAA?1zTy8HEA%yo@&->`SU@_usgm)XjvFWSw2r__(` zc($%`jX(Riu($k^0^9G+XaAF15pm7fO4!-)E5CXz>AcfBmScI+@zzqa;{%Df+KtAp zQ~Cpd+v9-wARm zwc&x#y_z!+x>th-Lieg4p?g(&Aat*?288al@rC9uD9&V-<*UxL)ird3-UiF)1$r;X zm|op5--y1%H1oK=d5X~ZjKp`5A@9sRnh98&zr>_&+nv+^*qbH+d(%d8Q_~>p=Ri$4 znK0O!-d35>FK1PoBy8uEgh7^nX~AZ(WOb&Js8r===Ol?Ba}d{7!=dfrTwg={c+fFT zD)+Uh5il>a%VeI$eEkj?)egmIbo?W$F)>kutqGAW{(snC{;#Qx|D~rk3c%vkR0CGu z&?t4;U~9p8*+84XaQ<1lYa2~o=h7uiROBL8RYe4ns01$WCjou~hyWY_0PtV{;1K?j zT|fog-|}lvh6iN?@ZST*0D$nf9tlh%|1CeBi~hI#crE;Yk%|76AI~R;L;CCbh2V84 z{+261netzbr~X^t0P1P}mODV1fVEa z{$KR(KzSV0ser-bZ@mc^+kt6R@H+5dU<2hfP=^XWUM!eC2L*gg01&_i05@C!cpwI! zg%kh=DF8r;1^|la03eAG07{tw;FJXbEZG2HjuQZycmQCT7XZrm0pLsk0JwwzfLRm( zD#QU`S^@w*O98-+Gypirg4b36fFLCRI8X+FR#gBXR0n_nO#pbS0|3GL;57^YAnZUF ze4@8N?^V%b#=(z|X*|Yo|2=*S{GEo6>$!T=;|i1KJjU?s@6o}C7UYP2iz}dk{ZDpU zJa~nW*o~YmF;0?bxg?duMS~17a9Qz4eoLe@9aPQQR`8{q0e1rCSC_@mc^-cI@vs={961M!5iDZE(R4YL9HeE^D9sH0Jp)ulHP4PPJb+Mz48QqFr5wA#DN^iSGuk18onp1D0A~-z>FAI zGSuaL%Q^~o#@G+<=3gSxitp$5u9-0%Mb08nPyBOUbK@cmuTcY%RKHJZM}J(rxQz}F zIf=QliCtgwMA-#?OKXpw06CL2CSM$2e<59c7N8uWSNem0*z!YG@8nDoQ zQFT~;qc})^TP&$Yu$3mQN{IMgR)vt^rMxmk!9!6AYGm(2<$%Ud-pznBkb;$DGAarg$sbtQ*8oA;v2T%VUBG4Iv z>xP>F!C!J~G(8e#4@+NgZj~hk;E|5eUWHlH24E6n|3dEh&K)3w%!SO4v^2dxd{(RAD@Nqqg{o zOkQ}8+5gwpr%$sXx4-k^9)K7b9db_it|2HMVlHqC;8LQ3082TRXr>S-DufE7H@*Z5 zyC(r11@klQtqdT?E5VK{dwPyR{6wb(3;zk@9UP%z5v2i@;`76RV8sNe75YFznY*X* z^Rc8SDtPB4ObRZvfQ%|$pFhJ8&t)ymXd;ITYffTWId4C2UkbDQg+f~>=kqpQ_OThv zO=czBwn!c&N6IDP9B+R7_^hvoX)ko!FVw`~D$RO{aK+bf9%jL9JXD{K@@$EKv)*C)G8f05c7bS+ z=c^&nw9Pl3m^J|NL2|{^fF$O#lkQFXh2LjA$zN|R{q~6@o*1n-xvn+-Y5**E!>L|d z8Zt(N(Fe2-2iTBg`bU1hupx`fY0CUgY4_nZxBnLLJdX5svlk8YDVfFL`|pXrJw7}O zm@xie?Z{=7`b@~rA${rAncn)D3AWOQA58^Vdbz}|{RKAU_6rJxte%q^K80Iv_POmW!Ir#QxqW}UTd=Mm%$(#=N8Y$g?FtvAu`gcwCJA-(?t>v0Nz9;}7a6IPHY?Jn?eAonvlOCP!48)I7IBDr7Hp?B95px?qb$Uw z{`41=->5z`RhXhk=p3yh%te^2{S7uw*Sg0|kh?TL@5owDV9+WD&QpZFo(qXsfBEv7 zWB<3*)C*CSNZ-x@Y8>sx@s&>jpQ$w$U@L2P&m~@Gr)+lolsp;1{?rziaeF9+%bvLP z8TdJW^#sd@bYBiv0ST_7GUNuS9UH>5|781tFI+^c^cPmI&I1KXp5~IxMQ2fz-spg9 z&g<#g>E7&^0UT3r6vddlK^oy2hWFSl(=TmyzdR==VHW1Lga6aYIh(GdsFzENw=D#$!ovWoqNQ@AQY7GCPYWgNSws!r!_5Ek+*WP&g93A6e*gSLcrmB1ek z2?F}Z$)x|J{rX3FsxMrm*}@01TTgCdiVZ z9Z)*JcM#ib$9c#8Ob?b^`-~&76xpjayWElOo-OAO(i>RUSvV?RuyWaaU&yJZ4~|KF zu&XcyD)k0V%i2l9R8(__MPu06TgviA4DX5HbI~>}E1J(}JHAh;QjPeV-)#B|zs0(F z?>}+oM!V`ZMkFhK?Q{3=d-6^F`OnjbUo^oXZQrFTFPwkMa7B%rOS#l;Jal41$&lMB zCD6BX98v$*$U9w9rHadgG0PkEj{eHaXiOs%#h$*ZOAZZX66t|H-ixtlX=c%pUcL+0 zF>Yc0iJsaEEKFu)?wKBe^KlItBlh|3`tz8WZ^dBVZT*nQ}T$Jo8;{6K$%_5?fQA*5BCT;M<&7s8DxQ)PMvg+iU=JzJx)|( zZyVa;3J~JzUD#(*?c}(PulMK!LdXnUv`nKaqL=F;pJh$Z5GgSgEM&%$tGsPi+I53b zBUn{PgF1pUxN>%U^Mc@kH{F0RF46>!cdJDxL*E!CoumACil;Z<;&K1F?4I4X!9&admJ=G$KFp0vGf2rD9HA5oTINX)rQfoFY8( z8|+Xo*QYrfXZSa?KdKMqa%`7X032%_!cbI%W`%d3RH?qusy91+jsL!ua2led(;Y6s3#c12t{p}S26GLKbJxxRb zkkzNNJ;#l% zG523kiD>hTG(>u1ol8s=nPEIHhhuM2Y>?+bn;e$rY;w(5m|*5tP;R?~%Gr^;)Zh!X z3MWD8dAEF{IqdtbfpOZ`!ryJrb9Ld>I$$M~bo1KM$oJQ)wPLDK5QV?}Cp7O?G9;Yt ztFP||x~3$DNV?Q|lW01TIo4P@(#!4mC!+Y>iBHJ*@}RVLdSS`5i(Ve7w9Scb>9lDz z7MZkxGiKQU*||ZEqbhYo*t&3gb>4cq=2d`GdU)2meYvC`UshYv!QSaxfM)Cr7yh5l zKNYH@OiuhQxIqlohpzQU;4~Fk#9+Q24`Q$|15`18Ce2RIh%;4g`+_W=+(9sP{0IKx z?6JP&Csh_gG9v5<&&2pYvTd@T9kuP zoZu^R|K$Q>0x}|qxFQffVj#Sa5H}!Sr<>qie-|!GnE@QihrTDrsC|CoY7(dH05{e-)d5h=kN8>uXiJ^$4PO`zo zu+XbH%O}|DcNvuGpB5@|cz^q4IjvUIb>ufBm_4l?ynGD(8B{p;D$AnchIHi`&%IZ* z(ny1t2`g&Q7G#a)?_^C0*{&t4LUs{NnRGZ8qatQjE$G<0B91YvXe?jQZ=fJ2o^%pf za@)?xn)MHCk93sdF+Wv~Lfky34HBVY79XAQ=3nMCB1fAC{KTkUbD7o8ANhG(#OBk) zd_B2&ncb-!iSd2s=jHD=G^LFR2irw>eJL>e)&~Bo|L;_hV#cS?*yB zJ6f523>$*}z3=!U{$iZ#u%2UV>gR!A-*d#TXX+o9ark?@w@xIcKGtK&ba~FU%6CAC zsFbIx@~eT?kFWzWjmsE8p^?OoKM@tDEck_IF3`pGb$#U6A*|q{VeT$uaI^x`Iz-NT z1eJk_0y|9h>FEa@cnpMa#r5ZoKEy~k(Tdh*#fZuLRACBR=c0(@(hLc5;9@89LZc@M zgZBC#G&*dBlEc24G$&v_FWrL(W7{(dI%I;62LG|p-Qw%u_#Tk=d zKC3fzonlpFQ`D_l=FnBm3V)(exRhHbUf#jz+n~-aXg0U=^JQgE6(1$X4~p2{Dek7$ z?bz+)?(f`Z<`$)rpIRLS49kw=G;L<~uJo8+S6WEVA6)BX#ZKDSFS#^QWEq|W7Or_* zno|?MiRiBf(S)%^T%+SZjPI$)2epf@8BeLFm!4G!;K z1_nvG?=&v-UB8v0q+VzO?xnPUUOtGQwCEwy#1UfyTLVv`kdTY^oCncD1drt_>Z{)dybkP+~F`bANb@HtU`lj<)@nyM28=nZp z9<);^RYBA-hxs7D!Dqdo&-5cM8U-K&VQ9_4sC$0P?&z^k&-R$R!pO$hG2zTw>v=vI zQ(LW1F^v{ZXdco49(0XDxyt7Ul9XrJdr2jNPy;fp8qD3>sVX<}+m1SgSJV^b%S-e_ zv#w^!UDbU_h>g>>YZ9sgP=5w3r~$jYp3hc0vqrvEas+bKg3V?BK79 zVwu4&>3cK^W9X=)@K{J8va`5FGVl~=;k_F?D&}mQ@R161)sA-VG?ed^^SnqiEm818 z-!kZtsRrw#C5-04NX?b>F{0HOFPcHG8#_sR`+TqL-jXJAaMy<%(hwyVuk{7`Axtg= zrBvg92wh;rFUJZbj1Xsx?FCskT$2Ocock3Tmn!(g?VJnbf?-YzFZ-pie9Nc5r0j>i zL{e|I=1w(dyuOm}v8lcoX*a!i-`@M&ux!U)IBUwp`<{x?Ou1lIedRvO-pr`{t8;_6 zh)}0f)sov)M%H{@VEc^6Ejcy`j%fd;X&_|=H+P!t5AOp>>f}~qyl>sD0M?{O^S4#R zmlc1A^G1NPz=z*4Zz@+duU%ffp+Q+Vx;}IMWs$x1vEx#l_2h7@wIovvaxW3ccJ^X&pOl2a)Ne%;~-YOq? zL?t{z49bqtvqg3 z7-AZ)sy=-wW~qg-zbY zOdDDGTzQ03F$py%))ckRSLo3dtyUEaY`m>V$%;0)CQJmT3`)gpjdGj>8ITuAbcL%d zm+XQsviu8{j!CMJCJcPzmpn;swaE29glT_Yz$6w^jPF?Vf|X79p=3lqQijtc6Wkmnj8HhbL;_4p%;c_n~^$>ywVyiQYxs`GDV2+S0Jr^NZG>4>WHwR&%Abec&HD zxnK{!q$W8Cugj|B$l$u-Igk)?PY#ig+vDUe)D zQN@~3_iA(Y8@8jFdcV?Dwv>{X^Q_ke>#U?~T=-$(pEj6NizoQpV$)5I^eB_HkdlVC zn8=D>dzoZs>~NZ*DJ6b195wajX&3ltrZMY$omBdT3EKNZ~Nv z^*)^z$tPwc`ila(&I<&z%7bLim~?1NQNxV7CIW0otVv^b$9Jx|_QD}@Of`3X*Zw%! z+RrZT>e20SKTI(|oXi_66bn^ZXHi3Y@`Otbb_COBOPVbb77p<-h+-w}Yn8xJgYk+* zqDHd~e+nr1o^P;?F1TmOR4dRHGOky-U18nHCuowu4{!1edd1*o{VKy#>Zr zD8xlV9d-mQh^W>IruRF@fOLUK(s($wvJ zUnIF3FqP{$^WSp{jVe^n?CYtOSA?kKo4Wc$x%Gsww=NaI)Mp#IZHg94zp@{h!KpVW zo*6euij&2C*sLKFF;r(wsd&b(l<9>L1g8-ow8J-#T(kL;|!=xmOgoNw=_pm=@S#r=SJFFgrG-D;`WuSe`G z83n3jxLR{o%XoTqv3Nb(c;e+eU-BK$Rrd0=b{){=Je0+aCJ;(TWjOZ8sEYp}Vy}>I zyJO|1%gkiuMZn&ZJk2CRtwi6ytZdh)MM4-pw<+4K_%X^`oUZ!8b$!C+uq{Wc6zUizvENrfDI1xEz%T`) z|B2iB{E(rnZ8oYfn`3AW`(~ulyrxV?-`P#G-&<0VXY8`2s&F>34?}MF779jt2S%^K9e$(}0fz)xD%<1Lk`ZSUEFIUj?NqsIs9?TR0f5a z@YAG%LxGFYp(!w0i7})A#f&Lw>W= zg+n3HwwTr@W#Ml1#9xBarCHn5gzGiusZ(55M;#tAKvu!AWUqTjTc`9FwS%+gUb}1Z z35&~yCv90*zkeDZ?0&D6#wo$EJaTSt6&r*}hQ?q9` zIBw#?B+Y2y(w|Bz(b`PHD4w`KtS)BD2#*J;PU#Nioew#hWmTfW54a`|#W59}T9y!c zJw^gPmFSe&{SrLeG^0^Isf|t<(EIkpT`u)^S?rS6iDY7acApyi z=+{*Vw-zEcjfApyh(#ChH%JP+dONpD7>HFj5~mV}?JBh*09bYat=28!KevsfL&N%K z*?s7@#cSFk7Nm+-%sVGz5K?A@$`|l8L9$I)Q`EO=$)Mp*g0bU2@S10jxg|d->=KfW zkP(h#Q2P_^S&1~6$^pXgkc*@ftay+8Oce{Xzy5=ygsFu zI0}fdb;QGE$IHn4i&=VXb=8p2Kge(3fmWCdJF?!wJJh_>L#C) zM4<7~gAp;N29gN_XF1V$>kkYv95UX3?S93r2by9ds9zAjZST-X&79nZFP zfi7(ci;S-lynMU1BqF3mRW1-Yn|&EV|Ob=hx@ zHLKE;(|})67GGZAfwPzY!$`~jCXMXhrsdzYI)6XW;Cyyj0SpBVHtBPZYyv-S3ce2wj?Hi2gp_x6GYV@?rxQL9rFN zR?W(pGJ%&=#G~@HQ=I$<=EqAcr~_{2FQbWnFtp6EosN!SpU`)VdiakfW0Sn=9O5N) z)KNN$$l0V5MN`s?NsQRx7cH_hO~{ ze5%6}jZT92UVa0_U`x@1E`yEkBL@aTtit!tq#WofKvb^`ei28uCS%eNlWv3^zA|>Q zDl;D0SizbkROwkwv%oQ#Y_1$rotQ>AjeL?0)9HvWmnhp8x&1k{ZLN=-`9?ca`(td4 zR>f1a*CpGLtghL^JCKpX`=Z#VO#-&1hB(WhDbS5kV za?*c|616dTOQMZCY<{C6bWtrB*%#E8v`o=1k8%}U;w0{LLS1q@`B}E}Bd~03_g3`P z^`EG=&C^4X82ga~uWSX*T6e@&aagy>o?uJZj`u>PUz^cVSwp3Cno1D=r2Ws)lf5}+ zvo_AC!PmzIrx$;A{PM3`aa_*3S|`t~e|B-#4%N4?p&wSa@*p(A$sXpa9k*acVeYhO zkngN>9qVi2(O0N@5C}!FXA#N`K@8A%iwRUo+DBki#C3R)m%T;Y8D)2+#fWbYn0O)b zs4OLse#bp7USG(SUD9KSh7rr(cDmt`<=u@HXdEayJ#xlljZkKpKv^WlF| zaJGNM&c+3OhcC$Aqll}m8GRoqJY#1sk#|X;PO0PKt@b}QeE&i16ro3mQ=xr+il{?R z7ORk>7f1mvf%!PP!^f&&YDAr)^h`gZ?Aue3lu<|hyF){H+C;ETRAVGIKuVorhJN$W z!qQEi*!4BGTdmdmJmnH!BAJ|`R{r&SL#aLAk~!3Dw~+!mzvmlkae`Mmcl_#g_L?Ui zB{6n+c-scANa+q}JUh2o?>Mscc$0gc@!gdidyDII8`qJuOJ)c=h3*OBs;;|UKuMVZ?!znFrJ?9try4sw$f4M^Mb0qTwhxO zbosL;u_(eAHUhU`=_I*Nk(PXG);PYv7_WzXpIl~JES#1IxdaR3bg@(9r*NXH&##KI zd+n?hYi%0eO5niY*IIe#bPh$M#&{}A-3Uca4{mhH*Y4+*B0_ickn z1xx32Wig)DNKC_?6t$Elvy1=?I*v2RE=MP5dYb@1tVI^ph7U|5#Gsf(4t0bv10o72>hyG*kFfkDeQaWl9jQkjrA)r(<=Y?IG0afOjuq@wQ6hQ;M2n^djK z95CirGYKzSEQ@Xq4qyCnNwRTnVh__=^y*oqPa*3U+IG#~{wzxRTg!t#(YQMGL%6eU z==h3VlO)x`lcEKc{fl2(^Y1HrZ7-8v?!Z`M8+T5HVws|%217mn8VDaAAKeinW6?&w z(Ak?l5UpstXtjd51(6+WITu6?88S%zvdc4SoH)L!Z~fDu-*R~vAg#@G?s#1{F{(6@ zTZ!SCQ9FvU|3~5|6S?@aCqZU;k52k0^qx@-z8~_q-z2enCp6?X`|v1Y2so@j^Ap6rShHQ^-&E2~)}QZgJAcc_E4ti=H#+({tbxq%ewNhkV^EVR6kuY<4rn zVQte3rOc8TKbVLrcdjL!s=Yw$NtMLqz&#dn6}K1uazSs0ngb45^>Cd6@F++jJ+$$T z=EPKw3%7Jdpy=dy!M#u8i}FEEuIL^+-2ihYS!SqWUP7~Zx-NI@2smp++2cl-CY#4E zy1e=dH%5C`?;Z;~hB|k8PnTSiD-(!O|6+iuaBYHJth;fg)|YIL5N*U(_l?Ls!@5%K z(C2Ii7aw1usay78gTGYGKiOs?)U`!s+javUp=`Mu;f_yIJlGQCrMo?TswSx79>H# zbpva@K6))CUH;?3=8vE!Lg=L=4_yQTBafUmoY1MBEHeM8mo%zuS*~BS*pb?2Oo4F$ zk%2E&Kh4v*$}rNy+0?!6w-p`r{=e5adD5Fq{@4&>>q1bafb|OU|1vi-Lt8kY^<0l` zK&fAHv$!WO%y4L2T@w)3T*i3cxUttPQO-=0MDbrO+5cvJuqNsX@-GXnwp#bzfjxTP zlp6(N8aAZi9_>5WXF)>_?zTP^Vc=auN9_f0tr3}M2qXJ)PXqGVNQh#Fo+RwnMKYo! z4sGHq2l-jByi>40M-8R3V9ivqt`%|BqIiH?_ddN{DyG7w3TE6xPZX{z(%&YvBJp$H4 z3?$nmCHD&_$c{;9;>2@su2M=cCP&XPaafQ#;^RmAXY&vJotn|p_CG{2U*|fBeRc6Y z8_$04g4?CRBVv9yi1MmsS;UB%hPa@6)ANop<2`rUQ*bt`ojS>*c&_y7Cz0iXN8IYx zO%UN9lDLSSoqG{WE5jd4u$xOMAsmOsgZ-cP(o!C4ardXv$CvO&UG9D8`(4LS{2$%! zcI2lW9-(vxa-R8Yhdrl#e8=*hTVf}@`wu*{gm;R9v)+K&lcVX${K0VHEi+V`(8Y=`%b6`(3s-IaW z5&~lkkNuVtK&C|?n3l1@B%)zADEgs$hkvFmyn!`!(5m_ttC0GFe%!n~UED2s(7W@* zRlI|!F`|FXOVotRN;q!3+DFv&oh5NwW|Da^6tR7uBie+E4=F@8ojPyPks+hiVI&Moh{zw z1f|roCGtuNr;QV}i6{LNTyK;QU4KoSxx#Aikk=eITXvs8T3F4Og(x@eOdG9~pq@n{ zrJWfgMAd;c92V<7QTQ%1%_YEr}mM*T##+R z^=k?AB512l6MYdZKs|;1GOde|#{vYX)=?R7=@9@~FfSF@$WK80VKpix7d>)BFKv}W zke)E!d!^5bsF#VHM4>AA3Acxl28`fj2i~wmi@i{&nvITX<}n39ybjazz-4qsu@qUy zgciG+jK>13i_`>Nv|>XSgUA)XcB=|w4nwi5$P|;P#l40X1#C;t8o&LhZjCAVZjlb# zCJHDguY4V8MNjC=QAibBAoJN+RSI36qknaW=ck`I)~jK=!jE@5(j;=R_Fm~^Lhv4Z z8B2Ad?dHz*=?RmbcanA+M)}{Yg-Ok?Zph46xA;99#)YmL`HNr7Sw+_{2-Ul|Nn+w3p7@A z;Ob1yRcC+ez&R`&-ukn*A6Nw&!2MsqVu3)PzmPuv5frc z43z&PES4Oo{|6RJ4V3>QEEe4V2^PyV?%%LjY@qxVfj(k2M$` zpZOm#DE^iHN4x@e3O@xW0jC2u3%?26!%@H!z%Rkkz)b@u00n#-To-^1$`c^c3fy`6 zFZm3pg)@UY1m&-Q4O}-|Ih-sU2^iyHKKg^`tN;Mu3k0D|FG2iM5SRzA y06_CK08qaH&wUF3J?{X3Dg-<)6aYxV0N?}+y6-{MRs;ZaMuKk^{eK@l_1^%~VDoAK literal 0 HcmV?d00001 diff --git a/tests/patterns/test_data/tiff.hexpat.tiff b/tests/patterns/test_data/tiff.hexpat/classic-le-stripped.tiff similarity index 100% rename from tests/patterns/test_data/tiff.hexpat.tiff rename to tests/patterns/test_data/tiff.hexpat/classic-le-stripped.tiff