[geos-commits] [SCM] GEOS branch master updated. f1f6fab1b199d85b8a2f2208c58c8dc7e1a4486c

git at osgeo.org git at osgeo.org
Fri Sep 27 04:07:28 PDT 2019


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GEOS".

The branch, master has been updated
       via  f1f6fab1b199d85b8a2f2208c58c8dc7e1a4486c (commit)
       via  d935aaedc7b4d2b22ef2998eef3a595b23574961 (commit)
       via  5dbf4a96686079899848000c3263b23579f5cbd9 (commit)
       via  7edbe44cc096f5d1b28b05aa83e4f794b2043fc2 (commit)
       via  c464d45564993974441c521315bd32b71c869115 (commit)
       via  f16943ffaaa338863ed38c1ccdf487f92435d75a (commit)
      from  54c1b88be087e30cf3af17893803acb3c74095b6 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit f1f6fab1b199d85b8a2f2208c58c8dc7e1a4486c
Author: Daniel Baston <dbaston at gmail.com>
Date:   Fri Sep 27 05:51:22 2019 -0400

    Update expected result for issue-geos-392 test
    
    Bypassing cascaded union of lines produces a different but still correct
    result.

diff --git a/tests/xmltester/tests/issue/issue-geos-392.xml b/tests/xmltester/tests/issue/issue-geos-392.xml
index 1f30954..23bc2a1 100644
--- a/tests/xmltester/tests/issue/issue-geos-392.xml
+++ b/tests/xmltester/tests/issue/issue-geos-392.xml
@@ -10,14 +10,14 @@ http://trac.osgeo.org/geos/ticket/392
 TopologyException: found non-noded intersection between LINESTRING (146.593 -37.2263, 146.593 -37.2263) and LINESTRING (146.593 -37.2263, 146.593 -37.2263) at 146.593 -37.2263
   </desc>
   <a>
-01050000000600000001020000000300000035BEE5A0FA486240785C548B887F42C00619B787F34962403A8D599B6B7A42C035BEE5A0FA486240785C548B887F42C0010200000014010000A5AE6B6A0F516240EE23B726DD9B42C06AB3FB9F0D516240B5F81400E39B42C01A530B800C5162405AE95A20E69B42C06BB933130C516240EFBC9EF9E69B42C0984979520B516240D6468666E89B42C07DCB9C2E0B516240CA3CA87AE89B42C083013A820A516240E80D9CD8E89B42C01820D1040A516240946B651DE99B42C09FCA694F0951624012D5004AE89B42C0E47107A00751624072593B40E69B42C0881E42A6065162404ACC58D9E39B42C09D9ACB0D065162408C930C4AE29B42C03909A52F045162409BF749FFDC9B42C0B159E48D025162401A738D85D79B42C00B7A6F0C01516240F2A32B22D49B42C0EB6F09C0FF5062403BA41820D19B42C02D3185BDFF506240DC9BDF30D19B42C059A725B1FF506240ADE93015D19B42C027744D37FF5062407BE35AA3D49B42C04562821AFE506240158843DBD69B42C0ED7E15E0FB5062404055E0BFD49B42C0B86EEFBFFA506240A654D33FD29B42C0575EF23FF950624011058E5FD39B42C0A74E513FF95062406403E962D39B42C039002C3CF950624022426D65D39B42C08CA262F7F85062409F8B2BD3D49B42C0041E1840F850624
 0F0355F80D89B42C03C878D0DF8506240857F6CEDD89B42C0E0BDFE7FF75062404F667220DA9B42C04333F4F4F650624018A99C9BDB9B42C0E4FF441BF6506240C48A64D9DD9B42C0B2423635F5506240F3C64961DE9B42C0E2CC0AA0F35062400518963FDF9B42C081BC0D20F250624057C80160E19B42C0266CE45FF050624047BAB07FE89B42C05D8B16A0ED5062400F0E51E0F89B42C0D81A0060EB5062406ED113E0059C42C03B3A0900E9506240F73361A0109C42C0676902A0E55062406E6704C01D9C42C052DCA799E450624071D014F0219C42C085121C4DE45062404DF4F928239C42C09164B1A8E3506240FE64E7C8259C42C0FA6B68B9E25062407389D981299C42C0ABCC94D6DF506240F9F8DFA52F9C42C09274CDE4DB50624090436914379C42C0029EB470D9506240838F77FD389C42C097491E99D85062400CFDB8A2399C42C01426E71FD8506240950ED6FF399C42C0A0038184D75062404DA48F543A9C42C08119F8F6D3506240C977842E3C9C42C0EB54F99ED1506240A68D34023B9C42C0FE55911BCF506240859BE7E3359C42C0D66C8A6CCC506240AD61D0532E9C42C04285D9BACA5062409745178A2A9C42C007E92972C850624074EB353D289C42C0264A8CAFC7506240FED478E9269C42C0C528BE90C45062407D6DA23B2D9C42C0D4EBBBC7BE506240EB55
 6474409C42C08B0CBCA4BB506240F5E681D94E9C42C0D08547D1B95062408EB344C2529C42C025BE24DFB6506240A2C38DA5599C42C074925275B45062400B3AC6BA5D9C42C05A907758B2506240A0DFF76F5E9C42C0058DF4FDAF506240E6F516C5619C42C0081566EBAA506240D29B9B80709C42C02EA4688AA5506240443B5DCC859C42C06FF3C649A150624019575C1C959C42C09AACF6559E506240BAE70A009F9C42C028F5C0229A5062408D9B7521B19C42C0B04C09D2965062406DD5BF35C19C42C0B75D68AE9350624077D66EBBD09C42C098593AD5905062405D5727C2E19C42C0CFA67E398E5062402627C929F09C42C0C194DCBC8C50624097EB23A6FA9C42C0C19A14308B506240DE10F461079D42C09F292AD188506240F5DF394A149D42C0A0B998B08750624028DB1BD71A9D42C099428C7C83506240AC8FE2772E9D42C08E9DA68581506240A56D57433D9D42C02AE4A5F67D5062405930F147519D42C0178B95877B506240DA1F8370609D42C0AD6A49477950624055F08057709D42C0575EF23F79506240266CE45F709D42C042E504127950624060F426D0719D42C0FDD071DA785062407730BD58739D42C011001C7B765062404767AA71809D42C03521527875506240791AD58E879D42C0D9CAF044755062405494A69C8A9D42C0322DFBBF745062408014D09F9
 19D42C0217DEE5F7450624093D629A09A9D42C00CEDF71F7450624083CB1940AE9D42C0924FD9FA7350624020915B38B59D42C06BB015D973506240BED29E37BA9D42C0577FDF1A7350624083C366DBC49D42C0A7FC10C0725062408712D2BFC99D42C016EF117B72506240CD9EBAA8CC9D42C05E73FD717150624056D3F544D79D42C025242DF07050624031D7FDBEDA9D42C0266CE45F70506240B2D7BB3FDE9D42C0BE535CB06F50624045B9347EE19D42C083B174F46E506240D89AADBCE49D42C0FDB0EFD46D5062402F5E3D38E99D42C0B05EFBB86C506240B7F3588EEB9D42C0D53A16806B5062406E3B2300EE9D42C002E264D16A506240A3BE767AEF9D42C0ACC1A0F169506240C6600F37F19D42C05F5B3FFD675062405A76D20CF39D42C0F199EC9F67506240E88CDE5FF39D42C0648918C065506240C52CC59FF29D42C0015CDABA65506240ADEAF6A3F29D42C0AE5D7FB765506240846B49A2F29D42C089B08630635062407DEA58A5F49D42C01E8D9EB661506240AAE683AFF99D42C07171546E62506240647DB905019E42C0A44808A062506240A5F04520039E42C0170912806450624013C25900099E42C0AABF14D466506240691D554D109E42C0EC0AC73D6750624032326DA4119E42C0C7A1D9D068506240B3FEE08D169E42C0E7F05A536A50624055C3D9081F9E42
 C094933FCE6A506240815DA857259E42C0DBFAE93F6B506240CC9A58E02B9E42C0D53A16806B5062401EDE7360399E42C06DDAD6606B506240C1BC1127419E42C0D81A00606B50624049A01C60419E42C0C66AF3FF6A50624069E21DE0499E42C08E7AE3FF695062402AF40BC0509E42C0B5A91501695062409356D7FC539E42C0A2F4E04966506240279AACF6559E42C0828E56B56450624099E5FC5E549E42C00839EFFF635062400B45BA9F539E42C0EBC6BB236350624041A66BDC519E42C0F2D1E28C61506240E34D7E8B4E9E42C0DE5E2DD25F506240A456F3774A9E42C0BAE70A005F5062403A92CB7F489E42C032970AE05C5062401281EA1F449E42C03C5409055B50624061527C7C429E42C0E6EB8DB55A50624061F65734429E42C0D83274475A5062409723BFD9419E42C04C16F71F595062405620C4DF409E42C0F609A018595062407F9F71E1409E42C085AD7E11595062406D6292DB409E42C0FDE6B45D57506240E436D032419E42C07ADD223056506240F581E49D439E42C0C586133D55506240280D350A499E42C0A2F8E75854506240A8774C384F9E42C013550960545062401950148D5A9E42C01355096054506240E333D93F4F9E42C04E250340555062402E122400499E42C08615134056506240B3C068A0439E42C0D67503605750624032303C40419E42C0F60
 9A018595062407F9F71E1409E42C02207DB3E5A506240F02609D3419E42C0AB460AC05A50624085701640429E42C05DC0CB0C5B5062409C0E0984429E42C0867E5CD15C5062401281EA1F449E42C058BACCFA5E506240E793707C489E42C01F20A9CF5F506240921914724A9E42C054E8178061506240C0D3BF7F4E9E42C041D3122B63506240B81E85EB519E42C067583101645062400540CBA9539E42C005114EB0645062401C68F459549E42C08DA90540665062408CD5E6FF559E42C03B3A090069506240E7543200549E42C0B5A91501695062409356D7FC539E42C0D923D40C69506240C3DA73F4539E42C0A6D3BA0D6A506240FA6F6FC8509E42C00B3A6B016B506240EC6415DB499E42C0F36ACA5F6B506240449B2D6A419E42C0D81A00606B506240731FCA61419E42C0BDCA35606B50624014E97E4E419E42C0E749E3616B506240145F48E2409E42C0FEB9C3816B5062404E621058399E42C0AE84494C6B506240E9E115D22B9E42C00E034CCF6A506240CF561465259E42C0A02AF05F6A506240F0879FFF1E9E42C03E1AF3DF68506240D1459E7F169E42C0184D1D9A68506240782EE7AD159E42C0C5991540675062404A743BA0119E42C0C201E3CF665062401B24E93F109E42C08E812B8F645062405A88C4F3089E42C07DD756A262506240D574E217039E42C080A03770
 62506240C4B30419019E42C069780EC0615062409EAE939FF99D42C0CA880B4063506240006D50A0F49D42C0E70B10BB65506240ADEAF6A3F29D42C006CEBE97675062400C079D6BF39D42C095FBD3FC675062405A76D20CF39D42C08E7AE3FF695062402B9C4940F19D42C0E7919AD16A5062400EFF9F79EF9D42C08A66AF886B50624050F4650EEE9D42C0BC7FE2B66C5062409FB18A92EB9D42C0711B0DE06D5062406B1ACA3FE99D42C0C17BFDFF6E5062402B9908C0E49D42C01D739EB16F506240337C5578E19D42C08294336F7050624064DE4F32DE9D42C0ABB420EF70506240D7D3B3C5DA9D42C05B7C0A8071506240D955ED3FD79D42C0AAAEE87B72506240FC2257A0CC9D42C0309B00C372506240C2CE5EC7C99D42C04850FC18735062404835ECF7C49D42C0F75C01E0735062408F4E0240BA9D42C077FF0EFB73506240BB55212FB59D42C006E8082A74506240F4103235AE9D42C0D08C8F60745062400A4F43AF9A9D42C014E63DCE74506240F78CE9AE919D42C029BB4F4475506240B9CFE0A58A9D42C0568D14807550624002A2BB7F879D42C0A8CDEE7F765062402920ED7F809D42C02A5E1BE078506240B3EC4960739D42C042E504127950624060F426D0719D42C0AD6A49477950624055F08057709D42C05E3013A081506240E3C9C91F679D42C05F01F15F85506
 240D746E11F5B9D42C031F20DE0885062402222EB5F489D42C0B9420E008B50624079ED2D40369D42C04473F8FF8C5062404E250340159D42C0B73302E08E506240FCE1E7BF079D42C08EE4F21F9250624013BF1880FC9C42C0756506E0955062400CEDF71FF49C42C088BA0F40AA506240F1C5CD5FD79C42C0D32B0A60AF506240C9213DA0C79C42C05B7C0A80B1506240B63643609B9C42C0EE8B95E2B4506240C89EF3098F9C42C0BB270F0BB550624075E84F768E9C42C0B2AE1B00BB5062402D3E05C0789C42C0EB6F09C0BF5062408C68965F619C42C0D2C1FA3FC7506240F6F53240589C42C068A4EF7FD1506240DC61B8DF469C42C04B451960D5506240DBCE08803B9C42C01D818989D75062408F650B523A9C42C0D3646B22D8506240534D5A023A9C42C00EA8925CD95062408FC7670D399C42C0FAA6FADFDB506240B4BD2720379C42C0F5B704E0DF506240E7BB00A02F9C42C0BBB8E8BFE25062404A0A2C80299C42C0D63329AAE3506240EC2708C3259C42C07EC2D9ADE55062401A69A9BC1D9C42C02914330CE95062405C6F9BA9109C42C0D215116AEB5062408C18D1D1059C42C0EB45FEAAED5062404BCADDE7F89B42C052F98D65F0506240D0419770E89B42C0DAD6602BF2506240F28CC756E19B42C0002BD1A3F3506240E7D0D84DDF9B42C00E547C32F55062401D
 46F762DE9B42C07CCD1720F65062406B871AE0DD9B42C04333F4F4F650624018A99C9BDB9B42C0289B7285F750624025E7C41EDA9B42C04E098849F85062400E7D1C72D89B42C0CB55E2F0F8506240753A90F5D49B42C08CFE863FF95062406403E962D39B42C026BD14C3FA5062405F8E684CD29B42C0E14625D0FB506240FE9364C2D49B42C01CE3D418FE50624068869EDED69B42C04562821AFE506240158843DBD69B42C08D3FF61FFE50624092054CE0D69B42C0DC9FE63FFF50624028E5FF9FD49B42C02D3185BDFF506240DC9BDF30D19B42C0086C7308015162408D68F118D49B42C099000D80025162400936AE7FD79B42C01281EA1F045162402FB72000DD9B42C08641F4FF055162409298FB3FE29B42C0382EE3A606516240734B06DBE39B42C0B1C8659207516240C5579643E69B42C03D9D2B4A0951624000982144E89B42C08152FEFF0951624053AAE91FE99B42C01820D1040A516240946B651DE99B42C0A1BEC0070A516240E869C020E99B42C0E2EFCD250B51624047BAB07FE89B42C0CAF21A600B516240304AD05FE89B42C029F8B7150C516240723F96F4E69B42C035A3D57F0C5162407E63192CE69B42C09C5C9DAD0D516240B5F81400E39B42C010EF94690F516240AC623B29DD9B42C0DD7305800F516240184740E0DC9B42C0A5AE6B6A0F516240EE23B72
 6DD9B42C001020000004601000073FB9B06FB5262400567953E199D42C06A72E778FB5262406CC8E479159D42C0169F0260FC52624075A334400E9D42C0169F0260FC526240E90E62670A9D42C0525B8F67FC5262404FB2309F079D42C0383C73C5FB5262400633011A009D42C071AB2006FA526240AA76F28EF89C42C0E5A210B7F9526240E08FEC5BF79C42C0F54DF5BFF7526240B5FB5580EF9C42C0CF9AC4C5F65262409FC5F76AEC9C42C01AB7E22CF6526240CFC59569EA9C42C0C8DB0022F3526240840CE4D9E59C42C0E4C40DAEEF52624081334289E09C42C0A026440AEF526240F8C500E4DF9C42C0287BF07FEC5262405F97E13FDD9C42C0121A1C80E852624053A7A89FDC9C42C0CD4AA47EE8526240E8667FA0DC9C42C09CDB847BE5526240B4A1AC29DA9C42C0DCAEE133E3526240993E856DD59C42C06BCB25FAE15262401EB97F76D19C42C03953324AE1526240B2B15C80C79C42C0E5F27A8BE2526240D08547D1B99C42C07F52488DE4526240AA80D657B29C42C0245D33F9E65262408C721F6FA89C42C011178046E9526240B4249B06A09C42C051F70148ED526240186BC9F4959C42C0DD297865F2526240D4D6E3198F9C42C0819B2045F8526240B95917128B9C42C0B9B59613FE52624090566B17899C42C0EE4FF39FFF52624001124DA0889C42C0780778D202
 53624054F60258899C42C0FDED57A604536240D1FD41C9899C42C069CB14CE095362403605323B8B9C42C01A530B800C536240D6E253008C9C42C0938ECDE90D536240D6C8AEB48C9C42C0DFEB5A31125362405D30B8E68E9C42C0102D681015536240F1A19F04919C42C028CA4A38195362406B216D88969C42C0D19D16721B536240CF3CCAD2989C42C03B037EE81D5362403ABF72CE999C42C0DDFF6C5020536240ED69E278999C42C09E5DBEF5215362404DEE1C6F979C42C0CA856F0624536240E0505326909C42C0B700D99024536240373FB445889C42C023168CA5235362405B40683D7C9C42C05F62878C22536240C5B99745729C42C093A1CFEC1F536240F4763A46689C42C08284CDA51D5362404BBB873A629C42C0D7E7209E1B5362406D0CF093599C42C0E61604A01B5362407916CE7F599C42C05EC6038019536240B45318004F9C42C0F9D51C20185362402A615C60459C42C01DC6A4BF1753624025F213BD429C42C089658E4017536240AAF644323F9C42C0242A54371753624010F0FF3E3E9C42C0C4C5F6FF16536240D71D41E0379C42C08C2E6F0E17536240270FB0FB339C42C02721472917536240B8AD2D3C2F9C42C079D1B249195362404BE88942269C42C0AD93E9861C5362403868AF3E1E9C42C073C57BC41E536240EE2AFFB5179C42C0405E59B31F53624
 019E42EC2149C42C05AA8EB3F21536240D4D347E00F9C42C0B5F8140023536240E822CF3F0B9C42C01518570123536240412619390B9C42C059E7CE02235362405968E7340B9C42C0473426692353624078CF81E5089C42C01AE9FB5F24536240D4D00660039C42C055B9F53F25536240FC4E3860FC9B42C046CF2D74255362402DCBD765F89B42C0F551FCCE2553624095A828A8F29B42C034C0609225536240D554BBCBEA9B42C06A49EC7F255362400CEAB69FE79B42C06A49EC7F25536240B5824B6CE39B42C031B2648E25536240F60604DFD99B42C0E3B55C472653624031D4BC3ECE9B42C0B76DCE7726536240B5EC5A8CCB9B42C0B3E908E026536240CAB1AB7FC69B42C01FFC1FBB26536240988EEF41BE9B42C04864C4AA26536240B949B148B89B42C00D912E9126536240CE28A787B29B42C0A239FC7F26536240013BEDDFAB9B42C0676902A025536240BE0864C0A39B42C09DFB613A235362407A5AD9999D9B42C08C344CC822536240EB2F606E9C9B42C0A72E2AF320536240F98D65B0989B42C00A48FB1F205362408F256200979B42C07F1711201E53624021E4BCFF8F9B42C0EB9FF18E1D536240549ADE0F899B42C03B061A221D5362409382B8BC839B42C01AF67B621D5362400F817E3A799B42C00BF5AA841D536240224ECC1F789B42C094A707601E53624078AC
 BE5F719B42C05A07ACC120536240AD122C0E679B42C0D7C633C321536240CDF5C7C5629B42C04AE9995E2253624058EB7A585E9B42C0F0C80EE0235362400B45BA9F539B42C052D90B6025536240CFE11060479B42C069183E2226536240F2D654713E9B42C0CEC6A58526536240EE3F321D3A9B42C0E3288AA12653624026378AAC359B42C0B3E908E0265362407D9BB45F2D9B42C05DC6A8C62653624045813E91279B42C016D22BAF2653624032EDF6B41E9B42C0EC246C8926536240C0E61C3C139B42C0A239FC7F26536240A583F57F0E9B42C08D92FC2D26536240DC60A8C30A9B42C0C9C452C92553624086E5CFB7059B42C0A625564623536240476A46ABFF9A42C0CD960744235362401EEB98A9FF9A42C0CA880B4023536240B9AF5EA0FF9A42C0E407F87F1F53624066FFF27FFD9A42C0EE0912DB1D5362408A9356D7FC9A42C0B75384E519536240F0A6B62FFB9A42C0EF33D362155362409320B7BAF79A42C0BB46263B1153624019A1E936F29A42C00D4059E70E536240D26AED22F19A42C005C314400C536240FC4BF7DFEF9A42C0C286A7570A536240FDDB65BFEE9A42C061DBA2CC06536240DAAF9696EC9A42C058C9C7EE025362403B2064B4E99A42C0F4F8BD4DFF5262400D38A682E59A42C051F932ACFD526240DBB28D89DE9A42C01A6B7F67FB52624035C703DBD
 29A42C02D697BAAF9526240E269430FC69A42C036AD1402F95262400E153EB6C09A42C02D3E05C0F85262409EEF0280BE9A42C007FE0120F8526240311BAE1FAC9A42C0915D0E60F65262406C58F89FA19A42C0D11CFE3FF352624005C655C0989A42C0EC55BF2DF35262403B21CF89989A42C04F47B6A9F0526240E569AFF4909A42C0773469AEEE526240AD557199899A42C0B0164449ED52624034C86EB0819A42C0106734A8EC526240A5D0C31A789A42C09348EC24EC526240149161156F9A42C01CE7DB27EC526240ADB0CF52689A42C0E643ABEEEC5262402E6695E35F9A42C0D3A46F2DEE526240FD42D9A5579A42C08297CFA8EF526240D28668194E9A42C084E4AE6FF1526240F581E49D439A42C0D4B7CCE9F25262401BB226BB3E9A42C00CEDF71FF4526240D0DECFDF3A9A42C0AC826275F552624038D6C56D349A42C0C908032AF75262403693CA6F2C9A42C080C6962FF95262408625D4C21B9A42C026E88AADFB526240729648580A9A42C007CC43A6FC5262405268B4B0029A42C0554FE61FFD526240C52F0620FF9942C0D41F065FFD52624090508E5DFD9942C0C2C8810DFE526240C847E6ECF89942C01B6A6F4BFF5262404EB4AB90F29942C0C4FBBB880053624062314514EE9942C0387A466C01536240BFD6A546E89942C0F6B8CA6E015362407A0E76D4E29942
 C0F47F5880005362404CF8A57EDE9942C06616FC91FD526240944E7F51DD9942C0274D83A2F9526240C8DF0731E19942C0704D70A0F6526240FC427EECE49942C06A1D0BC0F5526240AEB9A3FFE59942C06B65C22FF5526240307E1AF7E69942C0D1EEEB1BF35262401DBF0177EA9942C046A7F809F15262407A4501ECED9942C0F96B0D00F0526240CD6B36A0EF9942C0A6FD20DCEE5262401FDA22C4F09942C0008E3D7BEE526240FBE99A24F19942C00F4D8F5CED526240BF9D9F3DF29942C0D4207134EC52624037D43950F19942C0BA63B14DEA5262400E5BC4C1EF9942C04273428DE7526240EC489AE4EC9942C04B862D87E75262403F47F5E7EC9942C0DA290C80E7526240048B68E0EC9942C0676902A0E55262403F5B62C0ED9942C0417452A9E3526240D75537CDF19942C02C29779FE3526240A2CCABDFF19942C07A281B20E2526240DD9CA5BFF29942C02DA814E0E052624072ECEA9FF19942C0E0247266E0526240CBD58F4DF29942C043B40C27DF5262409574DE10F49942C0D75DEA31DB5262403A652431F79942C0388600E0D8526240277E3100F99942C0ACC8433AD752624027367A90F99942C0B771D586D4526240B504CF73FA9942C011D77B3BD3526240A3C7EF6DFA9942C08B040940D2526240C10EAD5FFA9942C05803EF3FCD526240277E3100F99942C0468
 20420C9526240186D9F9FF39942C0D57036C2C7526240A85BD141F29942C071AE6186C6526240907B5F01F19942C0251D8AA7C3526240FCC1C073EF9942C009FCE1E7BF526240398ABD61EC9942C080327CFABE52624058BD0D7BEB9942C02B2FF99FBC52624053AAE91FE99942C08C6E1860BA526240142928A0E49942C007FE0120B85262407707C25FDD9942C08D77EC0CB852624018755204DD9942C0EAA5738FB6526240875DCAAFD59942C09149A187B5526240F6A79E16CD9942C05C4DE83FB5526240C2E2CB9FCA9942C01D9D0480B4526240CD3F55E0BF9942C01D9D0480B452624013DD6921B79942C0F72B5382B4526240690712CAB19942C091D6732DB5526240824CD7B8A39942C07610E099B55262404533AA679C9942C0F66DD27EB552624096027745959942C05F5BE443B5526240265305A3929942C0BB1006F9B4526240B583B641929942C01853FA53B45262403EDD8A0E929942C0BCB77DEAB35262405B66C7FC929942C07702AB34B35262402A60F18A969942C0B0822914B3526240B678C25C9C9942C0A54DD53DB25262407B832F4CA69942C0B365AF2DB252624063F9A9E0A69942C05E5CF45FB152624053EB5800AE9942C096804EF7B0526240DB807456B09942C02891E975B05262405768D608B39942C0A68AF381AE526240E645DC52BD9942C04138B066
 AE5262402DF2A1FABD9942C04BDB0940AD52624018B14F00C59942C0FB7A1920AC526240FC2257A0CC9942C0ECAAF69FAB52624024343800D19942C034153D4BAB526240632BC313D59942C0016C9B3DAB526240335F6FACD59942C0F02EBC37AB52624074345882D69942C0C66AF3FFAA52624053A7A89FDC9942C013EBF93FAC526240828AAA5FE99942C01B125212AD526240E5852AEBED9942C01EBEF15AAE5262406532C115F59942C0ED1C14DEAF526240DE077B6EFC9942C081EDBB7DB15262400E959059079A42C0CC1D47BDB1526240FC993050089A42C0EE04FBAFB35262404B4C61EF0F9A42C041A49531B4526240080FE4EA119A42C0217DEE5FB45262409DB415A0129A42C07FAD0100B652624032970AE01C9A42C0E39DE85FB75262405DC94400269A42C018AE0E80B8526240364B13002D9A42C0922EEC1FBA526240F3AB3940309A42C02E0FE37FBC52624046EC1340319A42C013BF1880BC52624046EC1340319A42C003E0E9DFBF5262400B1C1A60309A42C0A344A6D7C15262406B589DE62E9A42C09CE0F65FC2526240D009A1832E9A42C0E98E0FC4C3526240E24680892E9A42C09B36E334C45262405F06088B2F9A42C0D11B936AC4526240D5085806309A42C04AE4277AC55262401C0B0A83329A42C05FB939F0C552624066F2CD36379A42C05F5A796EC6526
 2401CB85E2E3D9A42C094111780C65262408D3FF61F3E9A42C097F10060C65262406110FD7F419A42C0748E4B66C6526240A2410A9E429A42C053399270C652624082BA922E479A42C0ACAF09C4C6526240C25B316D499A42C0C111EEDFC6526240C8A29F5F4A9A42C0E751F17FC75262409CE337E04E9A42C0F901FEDFC752624026D6F37F589A42C0DEB133E0C7526240BB95CA80589A42C0E1911DC0C75262407D51CC8B5D9A42C0B8150CF8C65262404184132C699A42C065BE28E6C552624072A7CF69719A42C095174FF3C4526240F211E797779A42C01661D4FFC3526240959460167F9A42C010035DFBC2526240C4BF19468B9A42C058288870C2526240FC71FBE5939A42C085E6DFD3C152624053B4CDE8A29A42C0C1D31A39C15262408946D2C9AD9A42C0BB44F5D6C0526240A8120AB6B69A42C0A9F00CBFC05262407E8D2441B89A42C053CDACA5C0526240593B40E6B99A42C032D7B331C052624068EA758BC09A42C0CDE33098BF5262409FE40E9BC89A42C0B323D577BE526240665710B9CF9A42C08D11E4FBBD526240D590B8C7D29A42C066FFF27FBD5262407B25DA9FD59A42C0E057F66EBD526240B094C041D69A42C07FA31D37BC526240CABD65F3DD9A42C0D3A7B0ADBA526240D2F1E20EE59A42C0E089B4E8B85262406AE67FA8EA9A42C03C4272D7B752624078
 F1D995F19A42C0C6CCF401B7526240F783CB74F99A42C01FCDA2C1B7526240D57A1A8B019B42C0E0A0BDFAB85262405070B1A2069B42C0001E51A1BA5262405890C1E50C9B42C0ED7E15E0BB526240B524F6BF129B42C0169F0260BC526240C4C5F6FF169B42C040BFEFDFBC5262400447B87F1B9B42C0A1CFEC5FBE52624013584AE0209B42C072906B9EBE5262406BB180AE229B42C0A7A32DF8BE5262403AC54F88259B42C006F1811DBF5262403B4ACA822E9B42C0C52F0620BF526240A06B5F402F9B42C0ADED3724BF526240E7A15B54309B42C00F327F3BBF5262407286E28E379B42C0FA87E3AFBF526240B177352F3D9B42C0EB6F09C0BF52624075CF15003E9B42C011B00C60C0526240EF906280449B42C049A01C60C15262400ED363004D9B42C05E3013A0C152624035E44460519B42C05E3013A0C1526240B4E6C75F5A9B42C03DF262BCC1526240ACE9D55B5E9B42C0C0A26CDBC1526240B56B425A639B42C073C009E0C15262402A3410CB669B42C073C009E0C1526240CF7A42C06B9B42C049A01C60C1526240849CF7FF719B42C03BD0F9DFC05262402D3E05C0789B42C01490F63FC05262405900AEBF809B42C000000000C05262402D414640859B42C003E0E9DFBF5262408F2221808A9B42C000000000C05262402DD4F59F909B42C011B00C60C052624015F7C4D
 F9B9B42C0CDF79D70C0526240AF9BAD179E9B42C0A994E876C0526240F5132928A09B42C0B2A7D370C052624072BF4351A09B42C0DC9FE63FBF5262401DC9E53FA49B42C05DE6CF12BF526240A04BDD3AA49B42C05491651CBE52624064613E0FA49B42C00417D0B0BD5262400573AA6BA39B42C03AFF1B20BD526240A728F27FA29B42C0DEAEF25FBB52624040964FA0999B42C007FE0120B8526240E613C31F8F9B42C07EECE4C2B752624087F71C588E9B42C02B39DD68B652624012B985538B9B42C0D4FCE71FB352624055E2957F889B42C0EA9BEA7FAF526240FEF0F3DF839B42C0593F0B9EAD5262409DE4954F809B42C001020000009D000000E23362A581526240000000E04F9D42C0C30C8D2782526240BF153F7C4F9D42C072A02C2184526240A891F1834E9D42C0C1E677F5855262406083CF204F9D42C09CF0B7E287526240DBFF5B24489D42C0E412471E88526240FEB220393E9D42C0430477FB8752624031F378B5379D42C0853BBC8C875262408D3CB59F319D42C0C4398F2F86526240076B52C02C9D42C089552877845262400392B06F279D42C0BC0166BE835262400B896A00259D42C09F477B728352624030E186CE219D42C081D2AB5C83526240BA5A385A1F9D42C03A0C416983526240BD440603199D42C0E946585484526240755B7DD00E9D42C0DC0BCC0A85
 526240D2EC702A089D42C04DD87E3286526240339C7CC4F99C42C0447DDCC8865262407AE9DCA3ED9C42C008371955865262409663682BE59C42C056BD570886526240128A085ADC9C42C021938C9C855262408CA438A2D69C42C0C4AF58C385526240D634947FD29C42C02B4CDF6B88526240B3D771B2C39C42C071659AFA8A526240D6E65A0FBA9C42C02540A8E68D52624059F047F6AD9C42C08CD99255915262402F7C8ED9A39C42C033A7261C95526240F7C374C69C9C42C02971C2299852624022F36D66999C42C0BC7DB1529C526240A8E96976939C42C0317491E79F52624064DFBA078D9C42C00CC050D1A25262404527F0F3849C42C099B3E32BA65262400A26A36F779C42C0B98C9B1AA8526240E65AB4006D9C42C00B57AC86A952624043064DA6659C42C0B1A94E62AB526240827E95325F9C42C0486E4DBAAD526240793073CB589C42C0163A6524B1526240E3A9A2D34E9C42C089E0C9B8B35262405FFE5426469C42C0C776082DB5526240DC8C89833A9C42C0F0DB10E3B552624092DF47DA329C42C0DB8D999FB6526240B926EEC2209C42C0A2F611AEB6526240ED7DAA0A0D9C42C01CBFA6BDB7526240711706D1FF9B42C04877C6ADB852624036864A6DF39B42C030044A54B95262409F55664AEB9B42C0F45B2A25BA5262404C0C1357DF9B42C09D6340F6BA52624
 05D3A41F6D59B42C0A09F4E1EBB526240C2EB4493D59B42C0DE639FB6BC526240298F13CBD29B42C004FD2A65BE526240AAE8B413CA9B42C0A7751BD4BE52624085CFD6C1C19B42C0892E5EE2BE526240A01518B2BA9B42C089CF9D60BF52624032E8DF89B49B42C0A31CCC26C0526240941C661EAF9B42C0D843FB58C15262402CC0D254AA9B42C076FC1708C2526240586BCDFBA49B42C096C4FE57C2526240A83462669F9B42C06D2E4844C252624033B44B659B9B42C0C3B068DFC1526240579B5A11909B42C037ED73C6C1526240E8537D9D8A9B42C017AFC3E2C1526240201DC308869B42C05BC3561AC2526240466172FE819B42C0D8F8A7AFC2526240C1C991297A9B42C04C040539C3526240BF243A70739B42C054CF38C3C3526240E09D7C7A6C9B42C09C95A3B6C3526240B50F1E12639B42C072D1DA7EC3526240EF46301F5A9B42C075DFD682C352624071E888D7509B42C016647039C3526240569F06674B9B42C0DB4E5B23C2526240EA077591429B42C0ACFB6C89C152624088E41A553C9B42C0F6459D14C1526240CC75BFAF369B42C035E213FCC0526240EE08A7052F9B42C0B528FDCEC05262407CE82741249B42C01B50CAFFBF526240A3F08FAD1D9B42C039F9E3ACBE5262409F877F7D199B42C0333CAC26BE5262407E4D7BEF149B42C08A79B18BBD5262400F90
 D4E70F9B42C02E9CB525BC526240D18A146F099B42C035D5EEB2BA526240D4884FF0039B42C0B58E05E0BA526240929B3CC0EE9A42C0ACD73E2EBB526240F810F9D3EB9A42C034A1A41BBC5262400C885AE4E89A42C01C87B0D0BD5262407BB889FFE09A42C0FD1F1620C05262408E401768D29A42C06D03D259C1526240519DB3AACA9A42C0CFFF6101C2526240B48185DDC19A42C07BD058A0C2526240C50BD8C4B89A42C055E9DD0EC35262407D5061B6AE9A42C0E35B0EAAC3526240CA4054D0A39A42C0AA65C636C45262400CBD0F51969A42C0F6211400C8526240B37CB83F729A42C0DF8211A0CB526240DF180280639A42C0F885FCD8C9526240E17261495E9A42C0E603029DC9526240CA4A38995D9A42C0FE73E2BCC9526240850C3F93589A42C0C2A04CA3C95262400C231862509A42C08B57B494C7526240D79FC4E74E9A42C0171E45E7C6526240F2214D614A9A42C0760F75C4C6526240165A8C70499A42C094111780C6526240A0015020479A42C0748E4B66C652624090042B98429A42C09AFFFC63C6526240858ABB8B419A42C0E80F7283C6526240B0B9B42B3E9A42C0440AAF6EC6526240DBF6E2303D9A42C08641F4FFC5526240CC2D0840379A42C05C210780C5526240C80CAF7F329A42C03C5CBC69C452624017CAD303309A42C0B6FC76C8C3526240E24680892
 E9A42C0E98E0FC4C3526240E24680892E9A42C0E68013C0C35262407D0B46802E9A42C09CE0F65FC25262407D0B46802E9A42C0E40522D5C152624094D74AE82E9A42C027439FD9BF526240CF5F8D58309A42C073DE5A81BC52624034AF343A319A42C0DC195C29BA5262405EEC623F309A42C0F54A5986B8526240DD47C9062D9A42C0D277126CB7526240D4415E0F269A42C0BA698E07B6526240389CF9D51C9A42C05C397B67B45262402C6FFDAA129A42C0B1E485CFB1526240D276A796089A42C05B7C0A80B1526240B5914660079A42C0FC4BF7DFAF526240FC4E3860FC9942C09B3BFA5FAE5262405F2DD21FF59942C012E85D06AD52624062A70EA8ED9942C066E95443AC52624053060E68E99942C0F913950DAB5262402A28FB9DDC9942C00A7F8637AB52624003EF3F8DD69942C0DBFAE93FAB5262407B25DA9FD59942C0FE74A84BAB5262407B6D910FD59942C08786C5A8AB526240D035DDFCD09942C09F69D322AC5262404A1CC3ADCC9942C09ED96443AD52624018B14F00C59942C04A4B9B60AE526240C2DF8A1FBE9942C0985B1080AE526240343F4860BD9942C0228CFA7FB052624086EC7200B39942C096804EF7B0526240DB807456B09942C02ED85768B1526240D66D50FBAD9942C01FA6D82CB252624033750DE9A69942C0992CEE3FB2526240C3499A3FA69942
 C044DD0720B55262407B6649809A9942C044DD0720B5526240BE0864C0A39942C01D9D0480B45262406F0C01C0B19942C01D9D0480B452624013DD6921B79942C0003F3E7CB452624038807EDFBF9942C0DFCFDF3AB55262405DA79196CA9942C0E1390087B5526240792A9611CD9942C0A8CDEE7FB65262407B25DA9FD59942C057D7570DB8526240D6B3D606DD9942C04BCD7921B85262407102D369DD9942C01A12F758BA5262401A2E1796E49942C064C68091BC5262407D299721E99942C08C5363F8BE526240997E8978EB9942C003E0E9DFBF526240100B1060EC9942C0E960FD9FC3526240B5FB5580EF9942C094111780C652624067FCB1FFF09942C0D57036C2C7526240A85BD141F29942C0010200000002000000D57036C2C7526240A85BD141F29942C046820420C9526240186D9F9FF39942C00102000000B7000000D57036C2C7526240A85BD141F29942C0C50D0929C9526240FA25E2ADF39942C0F0B9B832CD52624051FDDE01F99942C079DE324CD2526240BB09BE69FA9942C061C7DA3AD3526240A3C7EF6DFA9942C02BC5E97FD45262406E3E6480FA9942C0BE1C2C52D7526240EB79ED88F99942C0F3B688DED8526240CE7AE706F99942C0191F662FDB52624064E4D132F79942C0D257EB1FDF5262400CEDF71FF49942C0AE92D96AE0526240B998B047F29942C
 07B8A77DBE052624043684EA8F19942C04B8D7516E2526240BF55E8CDF29942C0539A289DE35262401F4AB4E4F19942C04779419FE3526240378C82E0F19942C0DC3818A0E3526240A2CCABDFF19942C050A335ABE3526240EF9705C9F19942C03AF361ACE552624062D520CCED9942C066D6F786E75262403F47F5E7EC9942C088BA0F40EA526240E4DB16C0EF9942C0DD4A6540EC52624031CF4A5AF19942C0A1FE6959ED5262407EDC2340F29942C02A9D595CED526240BF9D9F3DF29942C0634BEA5FED5262407EDC2340F29942C0B8C7D287EE52624043B00518F19942C0058DF4FDEF5262405B261EABEF9942C007DD6FFEF0526240D97B4CFFED9942C0D4FCE71FF352624082FA3B80EA9942C0B2423635F5526240CB42E0EDE69942C0AFEC82C1F5526240D7385101E69942C0E1928895F6526240493CEAF9E49942C0680EFF9FF95262403F582140E19942C0631F09A0FD5262407707C25FDD9942C02920ED7F0053624076775380DE9942C064F0E65F015362409E8834E0E29942C064F0E65F0153624018DAEF3FE89942C02920ED7F0053624086AB0320EE9942C0DC9FE63FFF526240C52CC59FF29942C075CF1500FE5262400F0E51E0F89942C0D41F065FFD52624090508E5DFD9942C0F221A81AFD52624048B2FD1AFF9942C067EB85A7FC526240ED2C7AA7029A42C0F33E
 E99FFB526240AD52D55F0A9A42C03FEE1120F9526240C8E64FC01B9A42C0CF0DF21FF75262402B5BDA5F2C9A42C032135674F5526240B553CE72349A42C071112917F45262406BA395D63A9A42C078A686ECF2526240B676ECB13E9A42C05E5CF45FF1526240B3C068A0439A42C0E7BB00A0EF52624079831E204E9A42C086AB0320EE526240EB05FA9F579A42C0392BFDDFEC526240DB673AE05F9A42C016CBE31FEC526240FAA93B60689A42C016CBE31FEC526240A34B49206F9A42C0249B06A0EC526240224ECC1F789A42C04BDB0940ED52624040005FC0819A42C0AFCBF09FEE526240545227A0899A42C01FAC10A0F052624009E46D00919A42C0FD929E33F35262400598439C989A42C0394F2B3BF3526240B8CCE9B2989A42C00EC40D53F6526240B31E6393A19A42C075351E11F85262409C5BD71EAC9A42C06FFF80BDF85262406F6B6688BE9A42C0A1ED3D01F9526240681888AFC09A42C0680EFF9FF95262406BF12900C69A42C0DEAEF25FFB526240B2440CE0D29A42C0631F09A0FD52624076775380DE9A42C0DC9FE63FFF5262404FF92180E59A42C0ABB019E0025362405E9A22C0E99A42C0A9A10DC0065362403FEBD09FEC9A42C0F7263C570A536240FDDB65BFEE9A42C0EF13515D0A53624050DAC0C2EE9A42C0A99AC5300C536240FC4BF7DFEF9A42C001F15FC50
 E536240C632FD12F19A42C05314F93F115362407EDC2340F29A42C04B45196015536240109EBFBFF79A42C0707610E019536240FCDEA63FFB9A42C0BE8575E31D536240DE91B1DAFC9A42C0DBF40C861F53624060FA038AFD9A42C0E8E6D143235362401EEB98A9FF9A42C0648918C025536240566133C0059B42C00702092F26536240959A3DD00A9B42C0AB4CE77926536240873C388E0E9B42C0077536892653624020EF552B139B42C09F5912A026536240C0A7DEBF1E9B42C05DC6A8C626536240987F9994279B42C0B9EEF7D526536240001EAC5A2D9B42C0AD88F5A1265362405BC0159A359B42C0A239FC7F26536240AC7EB61F3A9B42C05AE95A2026536240E6CC76853E9B42C07F4FAC5325536240881BA66C479B42C056ED3FD723536240F907DB99539B42C05C26796422536240B2C0B22D5E9B42C069780EC021536240BBB8E8BF629B42C0755776C12053624042D2020F679B42C07F5C2C561E53624090EE8C5B719B42C06B14ED851D5362409393E414789B42C05CB7F75F1D53624021BE5D40799B42C0472701201D536240E68013C0839B42C0A9DE75911D536240438B112E899B42C061B94A1C1E53624027E9ABF58F9B42C01F7CCD172053624083ED71F0969B42C09CB11EAD205362402355CA21989B42C0BBB8E8BF2253624009771D609C9B42C029A84D41235362
 40AF1177AB9D9B42C06D6EF195255362407642F9CCA39B42C0B45FD27326536240543948E3AB9B42C00D912E91265362407B2A4C84B29B42C09F5912A026536240E9CD4D40B89B42C01FFC1FBB26536240690A534ABE9B42C0D130C6D126536240AC6AEE8DC69B42C04B2DA5782653624092729C80CB9B42C08DA9054026536240C693933FCE9B42C06A49EC7F255362408AC6DADFD99B42C06A49EC7F25536240B5824B6CE39B42C08DACA1792553624054B02193E79B42C034C0609225536240ABD50DCAEA9B42C0648918C025536240C52CC59FF29B42C0611FF873255362401689096AF89B42C0E14ED83425536240618A7269FC9B42C04F89905F245362400455A357039C42C080E2B66C2353624084D95FD1089C42C094FF7F52235362402B8E5E68099C42C02F68210123536240D6E5EF390B9C42C015D9733E21536240AA549ADE0F9C42C013FFC1D11F5362403DD4B661149C42C0A65714C01E536240E82510C0179C42C021E7FD7F1C53624061E75C401E9C42C049360D40195362408DA90540269C42C0C1E50C2017536240A06B5F402F9C42C0A77E390E17536240210AC105349C42C06EB99FF816536240AE9E93DE379C42C08F6A7D36175362405DBB59283E9C42C0D955ED3F17536240F7EFB03F3F9C42C02CF587C11753624072EB7FCA429C42C06516461F18536240651
 DE967459C42C01FFC7A74195362404813EF004F9C42C0ADF545421B536240EB8F300C589C42C0D7E7209E1B5362406D0CF093599C42C026D6F37F1853624074FE37407A9C42C0F9D51C20185362405C210780859C42C05105ED1F15536240742497FF909C42C08B04094012536240B73302E08E9C42C0FFB7EDD60D536240708D74AB8C9C42C02982EE810C53624083E4F8FC8B9C42C08432E8DF09536240B3823A408B9C42C021510DA0045362406CC207C0899C42C03A3DEFC60253624096B77E55899C42C03C32569BFF5262401F590A92889C42C04562821AFE526240D117E714899C42C0554FE61FFD52624025726660899C42C0BD5DE5BFF6526240E68013C0839C42C0392BFDDFEC526240BF6F32607F9C42C07BF9F8DFE5526240FA3F2C40809C42C0BDC7F4DFDE52624001124DA0889C42C07356FABFD952624030F54E60959C42C023F609A0D85262408DD13AAA9A9C42C09E85F35FD65262407009C03FA59C42C0B524F6BFD2526240AA6FAAFFBD9C42C0B524F6BFD2526240AE934440CF9C42C0756506E0D5526240861854C0E29C42C00E661360D85262405B79C9FFE49C42C0BAE70A00DF52624020A9CF1FE49C42C0B2FAD97EE8526240E8667FA0DC9C42C068267387E852624024230CA8DC9C42C063207475EC526240C4D21B49DD9C42C0C17BFDFFEE526240FECAEFD9
 DF9C42C0E7BB00A0EF5262401CF80780E09C42C0D4FCE71FF35262409649C3DFE59C42C07CCD1720F65262406A8A5B60EA9C42C0B44AFAC5F65262403385CE6BEC9C42C0483547B1F7526240DF7A0382EF9C42C050E339B6F95262408D919158F79C42C07ABE0B00FA52624033FED87FF89C42C0F05EFFBFFB5262401870E01F009D42C0169F0260FC526240E47107A0079D42C0169F0260FC526240E90E62670A9D42C037F4BB55FC526240FE2A1B310E9D42C01A828879FB5262405A8B0574159D42C0B2AE1B00FB5262402EE64240199D42C0B86EEFBFFA52624056F723A01D9D42C0350DE59FF45262401F6BA1BF2B9D42C02CAFD096E0526240000000E04F9D42C0
+01050000007B00000001020000000200000035BEE5A0FA486240785C548B887F42C00619B787F34962403A8D599B6B7A42C0010200000002000000A5AE6B6A0F516240EE23B726DD9B42C01BAA5D670F516240D165B130DD9B42C00102000000040000001BAA5D670F516240D165B130DD9B42C06AB3FB9F0D516240B6F81400E39B42C01A530B800C5162405AE95A20E69B42C01336CF150C5162401D566AF4E69B42C00102000000030000001336CF150C5162401D566AF4E69B42C06BB933130C516240EFBC9EF9E69B42C062B933130C51624000BD9EF9E69B42C001020000000500000062B933130C51624000BD9EF9E69B42C0984979520B516240D6468666E89B42C07DCB9C2E0B516240CB3CA87AE89B42C084013A820A516240E80D9CD8E89B42C01820D1040A516240946B651DE99B42C001020000000A0000001820D1040A516240946B651DE99B42C09FCA694F0951624012D5004AE89B42C0E47107A00751624072593B40E69B42C0891E42A6065162404ACC58D9E39B42C09D9ACB0D065162408C930C4AE29B42C03909A52F045162409BF749FFDC9B42C0B159E48D025162401A738D85D79B42C00B7A6F0C01516240F2A32B22D49B42C0EB6F09C0FF5062403BA41820D19B42C02D3185BDFF506240DC9BDF30D19B42C00102000000040000002D3185BDFF506240DC9BD
 F30D19B42C059A725B1FF506240ADE93015D19B42C027744D37FF5062407BE35AA3D49B42C04562821AFE506240158843DBD69B42C001020000000B0000004562821AFE506240158843DBD69B42C0ED7E15E0FB5062404055E0BFD49B42C0B86EEFBFFA506240A654D33FD29B42C0575EF23FF950624011058E5FD39B42C0A74E513FF95062406403E962D39B42C039002C3CF950624022426D65D39B42C08DA262F7F85062409F8B2BD3D49B42C0041E1840F8506240F0355F80D89B42C03B878D0DF8506240857F6CEDD89B42C0E0BDFE7FF75062404F667220DA9B42C04333F4F4F650624017A99C9BDB9B42C00102000000350000004333F4F4F650624017A99C9BDB9B42C0E4FF441BF6506240C48A64D9DD9B42C0B2423635F5506240F3C64961DE9B42C0E1CC0AA0F35062400518963FDF9B42C081BC0D20F250624057C80160E19B42C0266CE45FF050624048BAB07FE89B42C05D8B16A0ED506240100E51E0F89B42C0D81A0060EB5062406ED113E0059C42C03B3A0900E9506240F73361A0109C42C0676902A0E55062406E6704C01D9C42C052DCA799E450624070D014F0219C42C085121C4DE45062404DF4F928239C42C09164B1A8E3506240FF64E7C8259C42C0FA6B68B9E25062407389D981299C42C0ABCC94D6DF506240F9F8DFA52F9C42C09274CDE4DB506240904369
 14379C42C0029EB470D9506240828F77FD389C42C097491E99D85062400CFDB8A2399C42C01426E71FD8506240950ED6FF399C42C09F038184D75062404DA48F543A9C42C08119F8F6D3506240C977842E3C9C42C0EB54F99ED1506240A68D34023B9C42C0FE55911BCF506240859BE7E3359C42C0D66C8A6CCC506240AD61D0532E9C42C04285D9BACA5062409745178A2A9C42C006E92972C850624074EB353D289C42C0264A8CAFC7506240FED478E9269C42C0C528BE90C45062407D6DA23B2D9C42C0D4EBBBC7BE506240EB556474409C42C08B0CBCA4BB506240F5E681D94E9C42C0D18547D1B95062408EB344C2529C42C025BE24DFB6506240A3C38DA5599C42C074925275B45062400A3AC6BA5D9C42C05A907758B2506240A0DFF76F5E9C42C0058DF4FDAF506240E6F516C5619C42C0081566EBAA506240D29B9B80709C42C02EA4688AA5506240443B5DCC859C42C06FF3C649A150624019575C1C959C42C09AACF6559E506240BBE70A009F9C42C028F5C0229A5062408E9B7521B19C42C0B04C09D2965062406ED5BF35C19C42C0B75D68AE9350624077D66EBBD09C42C098593AD5905062405D5727C2E19C42C0CFA67E398E5062402627C929F09C42C0C194DCBC8C50624096EB23A6FA9C42C0C19A14308B506240DE10F461079D42C09F292AD188506240F4DF394A149
 D42C0A0B998B08750624028DB1BD71A9D42C099428C7C83506240AC8FE2772E9D42C08E9DA68581506240A56D57433D9D42C02AE4A5F67D5062405930F147519D42C0178B95877B506240D91F8370609D42C0AD6A49477950624055F08057709D42C0010200000003000000AD6A49477950624055F08057709D42C0575EF23F79506240266CE45F709D42C042E504127950624061F426D0719D42C001020000001400000042E504127950624061F426D0719D42C0FDD071DA785062407630BD58739D42C011001C7B765062404767AA71809D42C03521527875506240791AD58E879D42C0D9CAF044755062405494A69C8A9D42C0322DFBBF745062408014D09F919D42C0217DEE5F7450624093D629A09A9D42C00CEDF71F7450624083CB1940AE9D42C0924FD9FA7350624020915B38B59D42C06BB015D973506240BED29E37BA9D42C0577FDF1A7350624083C366DBC49D42C0A8FC10C0725062408712D2BFC99D42C016EF117B72506240CD9EBAA8CC9D42C05E73FD717150624056D3F544D79D42C025242DF07050624031D7FDBEDA9D42C0266CE45F70506240B2D7BB3FDE9D42C0BE535CB06F50624045B9347EE19D42C083B174F46E506240D89AADBCE49D42C0FDB0EFD46D5062402F5E3D38E99D42C04E9702B96C506240E3BD498EEB9D42C00102000000030000004E9702B96C
 506240E3BD498EEB9D42C0B15EFBB86C506240B7F3588EEB9D42C0A97FE2B66C506240C7B18A92EB9D42C0010200000003000000A97FE2B66C506240C7B18A92EB9D42C0D53A16806B5062406E3B2300EE9D42C0C68DB8D36A5062405EB86C75EF9D42C0010200000003000000C68DB8D36A5062405EB86C75EF9D42C002E264D16A506240A3BE767AEF9D42C05FD945CF6A506240E4AFAD7EEF9D42C00102000000030000005FD945CF6A506240E4AFAD7EEF9D42C0ACC1A0F169506240C6600F37F19D42C0A478A4056850624056DAF004F39D42C0010200000003000000A478A4056850624056DAF004F39D42C05F5B3FFD675062405A76D20CF39D42C0AF0008F56750624015362214F39D42C0010200000012000000AF0008F56750624015362214F39D42C0F199EC9F67506240E88CDE5FF39D42C0648918C065506240C52CC59FF29D42C0025CDABA65506240AEEAF6A3F29D42C0AE5D7FB765506240846B49A2F29D42C089B08630635062407DEA58A5F49D42C01E8D9EB661506240AAE683AFF99D42C07171546E62506240647DB905019E42C0A44808A062506240A5F04520039E42C0170912806450624013C25900099E42C0AABF14D466506240691D554D109E42C0EC0AC73D6750624033326DA4119E42C0C7A1D9D068506240B3FEE08D169E42C0E7F05A536A50624055C3D
 9081F9E42C094933FCE6A506240815DA857259E42C0DBFAE93F6B506240CC9A58E02B9E42C0D53A16806B5062401EDE7360399E42C028B284626B50624001BD1ABC409E42C001020000000300000028B284626B50624001BD1ABC409E42C06DDAD6606B506240C1BC1127419E42C0240012606B50624012B85B5B419E42C0010200000005000000240012606B50624012B85B5B419E42C0D81A00606B50624049A01C60419E42C0C66AF3FF6A50624069E21DE0499E42C08E7AE3FF695062402AF40BC0509E42C0B5A91501695062409456D7FC539E42C001020000000E000000B5A91501695062409456D7FC539E42C0A2F4E04966506240279AACF6559E42C0828E56B56450624099E5FC5E549E42C00839EFFF635062400B45BA9F539E42C0EBC6BB236350624041A66BDC519E42C0F2D1E28C61506240E34D7E8B4E9E42C0DE5E2DD25F506240A456F3774A9E42C0BBE70A005F5062403A92CB7F489E42C032970AE05C5062401281EA1F449E42C03B5409055B50624061527C7C429E42C0E6EB8DB55A50624061F65734429E42C0D83274475A5062409723BFD9419E42C04C16F71F595062405620C4DF409E42C0F609A01859506240809F71E1409E42C001020000000C000000F609A01859506240809F71E1409E42C085AD7E11595062406D6292DB409E42C0FDE6B45D57506240E3
 36D032419E42C079DD223056506240F581E49D439E42C0C686133D55506240280D350A499E42C0A2F8E75854506240A8774C384F9E42C013550960545062401950148D5A9E42C01355096054506240E333D93F4F9E42C04E250340555062402E122400499E42C08615134056506240B3C068A0439E42C0D67503605750624032303C40419E42C0F609A01859506240809F71E1409E42C001020000000E000000F609A01859506240809F71E1409E42C02207DB3E5A506240F02609D3419E42C0AB460AC05A50624085701640429E42C05DC0CB0C5B5062409C0E0984429E42C0867E5CD15C5062401281EA1F449E42C058BACCFA5E506240E793707C489E42C01F20A9CF5F506240921914724A9E42C054E8178061506240C0D3BF7F4E9E42C041D3122B63506240B81E85EB519E42C066583101645062400540CBA9539E42C005114EB0645062401C68F459549E42C08DA90540665062408DD5E6FF559E42C03B3A090069506240E7543200549E42C0B5A91501695062409456D7FC539E42C0010200000007000000B5A91501695062409456D7FC539E42C0D923D40C69506240C3DA73F4539E42C0A6D3BA0D6A506240FA6F6FC8509E42C00B3A6B016B506240EC6415DB499E42C0F36ACA5F6B506240449B2D6A419E42C0D81A00606B506240731FCA61419E42C0240012606B50624012B
 85B5B419E42C0010200000004000000240012606B50624012B85B5B419E42C0BDCA35606B50624014E97E4E419E42C0E749E3616B506240145F48E2409E42C028B284626B50624001BD1ABC409E42C001020000001100000028B284626B50624001BD1ABC409E42C0FDB9C3816B5062404E621058399E42C0AE84494C6B506240E8E115D22B9E42C00E034CCF6A506240CF561465259E42C0A02AF05F6A506240F0879FFF1E9E42C03E1AF3DF68506240D1459E7F169E42C0184D1D9A68506240782EE7AD159E42C0C5991540675062404A743BA0119E42C0C201E3CF665062401B24E93F109E42C08E812B8F645062405A88C4F3089E42C07DD756A262506240D574E217039E42C080A0377062506240C4B30419019E42C069780EC0615062409EAE939FF99D42C0CA880B4063506240006D50A0F49D42C0E70B10BB65506240AEEAF6A3F29D42C007CEBE97675062400C079D6BF39D42C0AF0008F56750624015362214F39D42C0010200000003000000AF0008F56750624015362214F39D42C095FBD3FC675062405A76D20CF39D42C0A478A4056850624056DAF004F39D42C0010200000003000000A478A4056850624056DAF004F39D42C08E7AE3FF695062402B9C4940F19D42C05FD945CF6A506240E4AFAD7EEF9D42C00102000000030000005FD945CF6A506240E4AFAD7EEF9D42
 C0E7919AD16A5062400EFF9F79EF9D42C0C68DB8D36A5062405EB86C75EF9D42C0010200000003000000C68DB8D36A5062405EB86C75EF9D42C08A66AF886B5062404FF4650EEE9D42C0A97FE2B66C506240C7B18A92EB9D42C0010200000003000000A97FE2B66C506240C7B18A92EB9D42C0BC7FE2B66C5062409FB18A92EB9D42C04E9702B96C506240E3BD498EEB9D42C00102000000140000004E9702B96C506240E3BD498EEB9D42C0711B0DE06D5062406B1ACA3FE99D42C0C17BFDFF6E5062402B9908C0E49D42C01D739EB16F506240337C5578E19D42C08294336F7050624064DE4F32DE9D42C0ABB420EF70506240D8D3B3C5DA9D42C05B7C0A8071506240D955ED3FD79D42C0AAAEE87B72506240FD2257A0CC9D42C0309B00C372506240C2CE5EC7C99D42C04850FC18735062404835ECF7C49D42C0F75C01E0735062408F4E0240BA9D42C077FF0EFB73506240BB55212FB59D42C006E8082A74506240F4103235AE9D42C0D08C8F60745062400A4F43AF9A9D42C013E63DCE74506240F78CE9AE919D42C029BB4F4475506240B9CFE0A58A9D42C0568D14807550624002A2BB7F879D42C0A7CDEE7F765062402920ED7F809D42C02A5E1BE078506240B3EC4960739D42C042E504127950624061F426D0719D42C001020000000200000042E504127950624061F426D0719
 D42C0AD6A49477950624055F08057709D42C0010200000024000000AD6A49477950624055F08057709D42C05E3013A081506240E3C9C91F679D42C05F01F15F85506240D746E11F5B9D42C031F20DE0885062402222EB5F489D42C0B9420E008B50624079ED2D40369D42C04473F8FF8C5062404E250340159D42C0B73302E08E506240FCE1E7BF079D42C08FE4F21F9250624013BF1880FC9C42C0756506E0955062400CEDF71FF49C42C088BA0F40AA506240F1C5CD5FD79C42C0D32B0A60AF506240C9213DA0C79C42C05B7C0A80B1506240B63643609B9C42C0EE8B95E2B4506240C89EF3098F9C42C0BB270F0BB550624074E84F768E9C42C0B2AE1B00BB5062402D3E05C0789C42C0EB6F09C0BF5062408C68965F619C42C0D1C1FA3FC7506240F5F53240589C42C068A4EF7FD1506240DC61B8DF469C42C04B451960D5506240DACE08803B9C42C01D818989D75062408F650B523A9C42C0D3646B22D8506240534D5A023A9C42C00EA8925CD95062408FC7670D399C42C0FAA6FADFDB506240B4BD2720379C42C0F5B704E0DF506240E7BB00A02F9C42C0BAB8E8BFE25062404A0A2C80299C42C0D63329AAE3506240EC2708C3259C42C07DC2D9ADE55062401A69A9BC1D9C42C02A14330CE95062405C6F9BA9109C42C0D215116AEB5062408C18D1D1059C42C0EA45FEAAED5062
 404BCADDE7F89B42C052F98D65F0506240D1419770E89B42C0DAD6602BF2506240F28CC756E19B42C0002BD1A3F3506240E7D0D84DDF9B42C00E547C32F55062401D46F762DE9B42C07CCD1720F65062406B871AE0DD9B42C04333F4F4F650624017A99C9BDB9B42C00102000000090000004333F4F4F650624017A99C9BDB9B42C0289B7285F750624025E7C41EDA9B42C04E098849F85062400E7D1C72D89B42C0CB55E2F0F8506240753A90F5D49B42C08CFE863FF95062406403E962D39B42C026BD14C3FA5062405F8E684CD29B42C0E14625D0FB506240FE9364C2D49B42C01CE3D418FE50624068869EDED69B42C04562821AFE506240158843DBD69B42C00102000000040000004562821AFE506240158843DBD69B42C08D3FF61FFE50624092054CE0D69B42C0DC9FE63FFF50624028E5FF9FD49B42C02D3185BDFF506240DC9BDF30D19B42C001020000000A0000002D3185BDFF506240DC9BDF30D19B42C0086C7308015162408E68F118D49B42C09A000D80025162400936AE7FD79B42C01281EA1F045162402FB72000DD9B42C08641F4FF055162409298FB3FE29B42C0382EE3A606516240724B06DBE39B42C0B1C8659207516240C5579643E69B42C03D9D2B4A0951624000982144E89B42C08152FEFF0951624053AAE91FE99B42C01820D1040A516240946B651DE99B4
 2C00102000000050000001820D1040A516240946B651DE99B42C0A0BEC0070A516240E869C020E99B42C0E2EFCD250B51624048BAB07FE89B42C0CBF21A600B516240304AD05FE89B42C062B933130C51624000BD9EF9E69B42C001020000000300000062B933130C51624000BD9EF9E69B42C029F8B7150C516240723F96F4E69B42C01336CF150C5162401D566AF4E69B42C00102000000040000001336CF150C5162401D566AF4E69B42C035A3D57F0C5162407E63192CE69B42C09C5C9DAD0D516240B6F81400E39B42C01BAA5D670F516240D165B130DD9B42C00102000000040000001BAA5D670F516240D165B130DD9B42C010EF94690F516240AB623B29DD9B42C0DD7305800F516240184740E0DC9B42C0A5AE6B6A0F516240EE23B726DD9B42C001020000000400000073FB9B06FB5262400567953E199D42C06B72E778FB5262406CC8E479159D42C0169F0260FC52624075A334400E9D42C0169F0260FC526240E90E62670A9D42C0010200000006000000169F0260FC526240E90E62670A9D42C0525B8F67FC5262404FB2309F079D42C0383C73C5FB5262400633011A009D42C071AB2006FA526240AB76F28EF89C42C0E5A210B7F9526240E08FEC5BF79C42C0579710B7F9526240AD61EC5BF79C42C0010200000002000000579710B7F9526240AD61EC5BF79C42C09FD2
 36B6F9526240C0AB8558F79C42C00102000000180000009FD236B6F9526240C0AB8558F79C42C0F54DF5BFF7526240B5FB5580EF9C42C0CF9AC4C5F65262409FC5F76AEC9C42C01AB7E22CF6526240D0C59569EA9C42C0C8DB0022F3526240840CE4D9E59C42C0E4C40DAEEF52624081334289E09C42C0A026440AEF526240F7C500E4DF9C42C0287BF07FEC5262405F97E13FDD9C42C0121A1C80E852624052A7A89FDC9C42C0CE4AA47EE8526240E8667FA0DC9C42C09CDB847BE5526240B4A1AC29DA9C42C0DCAEE133E3526240993E856DD59C42C06BCB25FAE15262401EB97F76D19C42C03953324AE1526240B2B15C80C79C42C0E5F27A8BE2526240D18547D1B99C42C07F52488DE4526240AA80D657B29C42C0235D33F9E65262408C721F6FA89C42C010178046E9526240B4249B06A09C42C051F70148ED526240186BC9F4959C42C0DD297865F2526240D5D6E3198F9C42C0819B2045F8526240B95917128B9C42C0BAB59613FE52624090566B17899C42C0EE4FF39FFF52624002124DA0889C42C0B4E186C20253624073FA6E54899C42C0010200000003000000B4E186C20253624073FA6E54899C42C0770778D20253624055F60258899C42C032B540D70253624065632B59899C42C001020000000500000032B540D70253624065632B59899C42C0FCED57A604536240D1F
 D41C9899C42C069CB14CE095362403605323B8B9C42C01A530B800C536240D6E253008C9C42C01D5B0BC90D53624083D659A48C9C42C00102000000030000001D5B0BC90D53624083D659A48C9C42C0938ECDE90D536240D6C8AEB48C9C42C07DFCE9F90D536240AEAFF2BC8C9C42C001020000000F0000007DFCE9F90D536240AEAFF2BC8C9C42C0DFEB5A31125362405C30B8E68E9C42C0102D681015536240F1A19F04919C42C028CA4A38195362406C216D88969C42C0D19D16721B536240CE3CCAD2989C42C03B037EE81D5362403ABF72CE999C42C0DCFF6C5020536240ED69E278999C42C09E5DBEF5215362404DEE1C6F979C42C0CA856F0624536240E0505326909C42C0B700D99024536240373FB445889C42C023168CA5235362405B40683D7C9C42C05F62878C22536240C6B99745729C42C093A1CFEC1F536240F4763A46689C42C08284CDA51D5362404BBB873A629C42C0D7E7209E1B5362406D0CF093599C42C0010200000013000000D7E7209E1B5362406D0CF093599C42C0E61604A01B5362407916CE7F599C42C05EC6038019536240B45318004F9C42C0F8D51C20185362402A615C60459C42C01EC6A4BF1753624025F213BD429C42C089658E4017536240AAF644323F9C42C0242A54371753624010F0FF3E3E9C42C0C3C5F6FF16536240D81D41E0379C42C08C
 2E6F0E17536240270FB0FB339C42C02721472917536240B8AD2D3C2F9C42C079D1B249195362404BE88942269C42C0AD93E9861C5362403868AF3E1E9C42C073C57BC41E536240EE2AFFB5179C42C0405E59B31F53624019E42EC2149C42C05AA8EB3F21536240D4D347E00F9C42C0B6F8140023536240E822CF3F0B9C42C01518570123536240412619390B9C42C059E7CE02235362405A68E7340B9C42C067919A532353624047F40262099C42C001020000000300000067919A532353624047F40262099C42C0473426692353624078CF81E5089C42C05570EB7223536240D1AE8EAD089C42C00102000000040000005570EB7223536240D1AE8EAD089C42C01AE9FB5F24536240D3D00660039C42C055B9F53F25536240FC4E3860FC9B42C0A2FEEF7325536240734F8D6AF89B42C0010200000003000000A2FEEF7325536240734F8D6AF89B42C046CF2D74255362402CCBD765F89B42C055733674255362408FF14B65F89B42C001020000000300000055733674255362408FF14B65F89B42C0F451FCCE2553624095A828A8F29B42C06903899225536240E136F4D0EA9B42C00102000000030000006903899225536240E136F4D0EA9B42C034C0609225536240D554BBCBEA9B42C028C8389225536240B1B2DCC4EA9B42C001020000000300000028C8389225536240B1B2DCC4EA9
 B42C06A49EC7F255362400CEAB69FE79B42C06A49EC7F25536240B5824B6CE39B42C00102000000080000006A49EC7F25536240B5824B6CE39B42C031B2648E25536240F60604DFD99B42C0E3B55C472653624031D4BC3ECE9B42C0B76DCE7726536240B5EC5A8CCB9B42C0B4E908E026536240CAB1AB7FC69B42C01FFC1FBB26536240988EEF41BE9B42C04864C4AA26536240BA49B148B89B42C033824391265362403ADE5C8CB29B42C001020000000300000033824391265362403ADE5C8CB29B42C00D912E9126536240CE28A787B29B42C014C1199126536240AA35997FB29B42C001020000000400000014C1199126536240AA35997FB29B42C0A239FC7F26536240013BEDDFAB9B42C0676902A025536240BE0864C0A39B42C068DD7F43235362408F003EB19D9B42C001020000000300000068DD7F43235362408F003EB19D9B42C09CFB613A235362407A5AD9999D9B42C08042BB382353624093B483959D9B42C00102000000060000008042BB382353624093B483959D9B42C08C344CC822536240EC2F606E9C9B42C0A72E2AF320536240F98D65B0989B42C00A48FB1F205362408F256200979B42C07F1711201E53624021E4BCFF8F9B42C02B15B7931D536240D293414A899B42C00102000000030000002B15B7931D536240D293414A899B42C0EB9FF18E1D536240549A
 DE0F899B42C0C2BA9F8C1D536240069CD0F2889B42C0010200000019000000C2BA9F8C1D536240069CD0F2889B42C03C061A221D5362409382B8BC839B42C01AF67B621D5362400F817E3A799B42C00BF5AA841D536240224ECC1F789B42C094A707601E53624077ACBE5F719B42C05A07ACC120536240AE122C0E679B42C0D7C633C321536240CDF5C7C5629B42C04AE9995E2253624058EB7A585E9B42C0EFC80EE0235362400B45BA9F539B42C052D90B6025536240CEE11060479B42C06A183E2226536240F2D654713E9B42C0CFC6A58526536240EE3F321D3A9B42C0E3288AA12653624026378AAC359B42C0B4E908E0265362407C9BB45F2D9B42C05DC6A8C62653624045813E91279B42C016D22BAF2653624032EDF6B41E9B42C0EC246C8926536240BFE61C3C139B42C0A239FC7F26536240A583F57F0E9B42C08D92FC2D26536240DC60A8C30A9B42C0C9C452C92553624086E5CFB7059B42C0A725564623536240466A46ABFF9A42C0CD960744235362401EEB98A9FF9A42C0CA880B4023536240B9AF5EA0FF9A42C0E407F87F1F53624066FFF27FFD9A42C002EBBBE31D536240DA0DCFDAFC9A42C001020000000300000002EBBBE31D536240DA0DCFDAFC9A42C0EE0912DB1D5362408B9356D7FC9A42C02A3B08DB1D536240257A52D7FC9A42C00102000000240000002A3
 B08DB1D536240257A52D7FC9A42C0B75384E519536240EFA6B62FFB9A42C0EF33D362155362409320B7BAF79A42C0BB46263B1153624019A1E936F29A42C00D4059E70E536240D26AED22F19A42C005C314400C536240FC4BF7DFEF9A42C0C286A7570A536240FDDB65BFEE9A42C061DBA2CC06536240DAAF9696EC9A42C058C9C7EE025362403B2064B4E99A42C0F4F8BD4DFF5262400E38A682E59A42C052F932ACFD526240DCB28D89DE9A42C01A6B7F67FB52624035C703DBD29A42C02D697BAAF9526240E269430FC69A42C036AD1402F95262400F153EB6C09A42C02D3E05C0F85262409FEF0280BE9A42C007FE0120F8526240311BAE1FAC9A42C0915D0E60F65262406C58F89FA19A42C0D11CFE3FF352624005C655C0989A42C0EC55BF2DF35262403B21CF89989A42C04F47B6A9F0526240E569AFF4909A42C0773469AEEE526240AD557199899A42C0B0164449ED52624034C86EB0819A42C0106734A8EC526240A5D0C31A789A42C09348EC24EC526240159161156F9A42C01CE7DB27EC526240ADB0CF52689A42C0E643ABEEEC5262402E6695E35F9A42C0D4A46F2DEE526240FD42D9A5579A42C08297CFA8EF526240D28668194E9A42C084E4AE6FF1526240F581E49D439A42C0D4B7CCE9F25262401BB226BB3E9A42C00CEDF71FF4526240D0DECFDF3A9A42C0AC826275
 F552624039D6C56D349A42C0C908032AF75262403693CA6F2C9A42C081C6962FF95262408625D4C21B9A42C026E88AADFB526240729648580A9A42C0A05FB9A5FC526240FCFCF6B4029A42C0010200000003000000A05FB9A5FC526240FCFCF6B4029A42C007CC43A6FC5262405268B4B0029A42C0A36B13A8FC526240F9A11DA3029A42C0010200000003000000A36B13A8FC526240F9A11DA3029A42C0554FE61FFD526240C52F0620FF9942C0D41F065FFD52624090508E5DFD9942C0010200000011000000D41F065FFD52624090508E5DFD9942C0C2C8810DFE526240C847E6ECF89942C01B6A6F4BFF5262404EB4AB90F29942C0C4FBBB880053624062314514EE9942C0387A466C01536240BFD6A546E89942C0F6B8CA6E015362407A0E76D4E29942C0F47F5880005362404CF8A57EDE9942C06616FC91FD526240944E7F51DD9942C0274D83A2F9526240C8DF0731E19942C0704D70A0F6526240FC427EECE49942C06A1D0BC0F5526240AEB9A3FFE59942C06B65C22FF5526240317E1AF7E69942C0D1EEEB1BF35262401DBF0177EA9942C046A7F809F15262407A4501ECED9942C0F96B0D00F0526240CD6B36A0EF9942C0A7FD20DCEE5262401EDA22C4F09942C0608A808AEE5262406DD76815F19942C0010200000002000000608A808AEE5262406DD76815F19942C07BB80
 27DEE526240B6B5D722F19942C001020000000A0000007BB8027DEE526240B6B5D722F19942C0008E3D7BEE526240FBE99A24F19942C00F4D8F5CED526240BE9D9F3DF29942C0D5207134EC52624037D43950F19942C0BA63B14DEA5262400E5BC4C1EF9942C04273428DE7526240EC489AE4EC9942C04B862D87E75262403F47F5E7EC9942C0DA290C80E7526240048B68E0EC9942C0676902A0E55262403F5B62C0ED9942C09B6053AFE3526240964FD5C0F19942C00102000000030000009B6053AFE3526240964FD5C0F19942C0417452A9E3526240D75537CDF19942C0927F37A7E3526240AC7128D1F19942C0010200000007000000927F37A7E3526240AC7128D1F19942C02C29779FE3526240A2CCABDFF19942C07A281B20E2526240DD9CA5BFF29942C02DA814E0E052624073ECEA9FF19942C0E1247266E0526240CBD58F4DF29942C043B40C27DF5262409574DE10F49942C09737634FDB5262408DBADC19F79942C00102000000030000009737634FDB5262408DBADC19F79942C0D75DEA31DB5262403A652431F79942C07D879512DB526240FAED9149F79942C00102000000080000007D879512DB526240FAED9149F79942C0388600E0D8526240277E3100F99942C0ACC8433AD752624027367A90F99942C0B771D586D4526240B504CF73FA9942C011D77B3BD3526240
 A2C7EF6DFA9942C08B040940D2526240C10EAD5FFA9942C05803EF3FCD526240277E3100F99942C046820420C9526240186D9F9FF39942C001020000000200000046820420C9526240186D9F9FF39942C0D57036C2C7526240A85BD141F29942C0010200000005000000D57036C2C7526240A85BD141F29942C071AE6186C65262408F7B5F01F19942C0251D8AA7C3526240FDC1C073EF9942C009FCE1E7BF526240398ABD61EC9942C00A8F5209BF52624017BA7889EB9942C00102000000030000000A8F5209BF52624017BA7889EB9942C081327CFABE52624058BD0D7BEB9942C00725EAE8BE52624076FD7669EB9942C001020000000A0000000725EAE8BE52624076FD7669EB9942C02B2FF99FBC52624053AAE91FE99942C08C6E1860BA526240142928A0E49942C007FE0120B85262407707C25FDD9942C08D77EC0CB852624018755204DD9942C0EAA5738FB6526240875DCAAFD59942C09149A187B5526240F6A79E16CD9942C05C4DE83FB5526240C2E2CB9FCA9942C01D9D0480B4526240CD3F55E0BF9942C01D9D0480B452624013DD6921B79942C001020000000F0000001D9D0480B452624013DD6921B79942C0F72B5382B45262406A0712CAB19942C091D6732DB5526240834CD7B8A39942C07610E099B55262404533AA679C9942C0F66DD27EB552624096027745959
 942C05F5BE443B5526240265305A3929942C0BB1006F9B4526240B583B641929942C01853FA53B45262403EDD8A0E929942C0BCB77DEAB35262405B66C7FC929942C07702AB34B35262402A60F18A969942C0B0822914B3526240B678C25C9C9942C0A54DD53DB25262407B832F4CA69942C0B365AF2DB252624063F9A9E0A69942C05E5CF45FB152624053EB5800AE9942C095804EF7B0526240DB807456B09942C001020000000400000095804EF7B0526240DB807456B09942C02891E975B05262405768D608B39942C0A68AF381AE526240E545DC52BD9942C01CDD9867AE526240774A0AF5BD9942C00102000000030000001CDD9867AE526240774A0AF5BD9942C04238B066AE5262402DF2A1FABD9942C0208BE95DAE526240E9112D30BE9942C001020000001B000000208BE95DAE526240E9112D30BE9942C04BDB0940AD52624018B14F00C59942C0FB7A1920AC526240FD2257A0CC9942C0ECAAF69FAB52624024343800D19942C034153D4BAB526240632BC313D59942C0016C9B3DAB526240335F6FACD59942C0F02EBC37AB52624074345882D69942C0C66AF3FFAA52624052A7A89FDC9942C013EBF93FAC526240828AAA5FE99942C01C125212AD526240E6852AEBED9942C01EBEF15AAE5262406532C115F59942C0ED1C14DEAF526240DE077B6EFC9942C081EDBB7DB1
 5262400E959059079A42C0CC1D47BDB1526240FC993050089A42C0EE04FBAFB35262404B4C61EF0F9A42C040A49531B4526240080FE4EA119A42C0217DEE5FB45262409DB415A0129A42C07FAD0100B652624032970AE01C9A42C0E39DE85FB75262405DC94400269A42C018AE0E80B8526240364B13002D9A42C0922EEC1FBA526240F3AB3940309A42C02E0FE37FBC52624046EC1340319A42C013BF1880BC52624046EC1340319A42C003E0E9DFBF5262400B1C1A60309A42C0A344A6D7C15262406B589DE62E9A42C09DE0F65FC2526240D009A1832E9A42C0E98E0FC4C3526240E24680892E9A42C0010200000053000000E98E0FC4C3526240E24680892E9A42C09A36E334C45262405F06088B2F9A42C0D11B936AC4526240D4085806309A42C049E4277AC55262401C0B0A83329A42C05FB939F0C552624066F2CD36379A42C05F5A796EC65262401CB85E2E3D9A42C094111780C65262408D3FF61F3E9A42C098F10060C65262406110FD7F419A42C0748E4B66C6526240A2410A9E429A42C053399270C652624082BA922E479A42C0ACAF09C4C6526240C15B316D499A42C0C111EEDFC6526240C8A29F5F4A9A42C0E751F17FC75262409CE337E04E9A42C0F901FEDFC752624026D6F37F589A42C0DEB133E0C7526240BB95CA80589A42C0E1911DC0C75262407D51CC8B5D9A4
 2C0B8150CF8C65262404184132C699A42C065BE28E6C552624071A7CF69719A42C095174FF3C4526240F211E797779A42C01661D4FFC3526240959460167F9A42C010035DFBC2526240C4BF19468B9A42C058288870C2526240FC71FBE5939A42C085E6DFD3C152624053B4CDE8A29A42C0C1D31A39C15262408946D2C9AD9A42C0BB44F5D6C0526240A8120AB6B69A42C0A9F00CBFC05262407E8D2441B89A42C053CDACA5C0526240593B40E6B99A42C033D7B331C052624068EA758BC09A42C0CCE33098BF5262409FE40E9BC89A42C0B323D577BE526240665710B9CF9A42C08D11E4FBBD526240D590B8C7D29A42C066FFF27FBD5262407B25DA9FD59A42C0DF57F66EBD526240B094C041D69A42C07FA31D37BC526240CABD65F3DD9A42C0D3A7B0ADBA526240D2F1E20EE59A42C0E089B4E8B85262406AE67FA8EA9A42C03C4272D7B752624078F1D995F19A42C0C6CCF401B7526240F783CB74F99A42C01FCDA2C1B7526240D67A1A8B019B42C0E0A0BDFAB85262405070B1A2069B42C0001E51A1BA5262405890C1E50C9B42C0ED7E15E0BB526240B524F6BF129B42C0169F0260BC526240C3C5F6FF169B42C040BFEFDFBC5262400447B87F1B9B42C0A0CFEC5FBE52624013584AE0209B42C072906B9EBE5262406BB180AE229B42C0A7A32DF8BE5262403AC54F88259B42C006
 F1811DBF5262403C4ACA822E9B42C0C52F0620BF526240A06B5F402F9B42C0ADED3724BF526240E7A15B54309B42C00F327F3BBF5262407286E28E379B42C0FA87E3AFBF526240B177352F3D9B42C0EB6F09C0BF52624075CF15003E9B42C011B00C60C0526240EF906280449B42C049A01C60C15262400ED363004D9B42C05E3013A0C152624034E44460519B42C05E3013A0C1526240B4E6C75F5A9B42C03CF262BCC1526240ACE9D55B5E9B42C0C1A26CDBC1526240B56B425A639B42C073C009E0C15262402A3410CB669B42C073C009E0C1526240CF7A42C06B9B42C049A01C60C1526240849CF7FF719B42C03BD0F9DFC05262402D3E05C0789B42C01490F63FC05262405900AEBF809B42C000000000C05262402D414640859B42C003E0E9DFBF5262408F2221808A9B42C000000000C05262402DD4F59F909B42C011B00C60C052624015F7C4DF9B9B42C0CDF79D70C0526240AF9BAD179E9B42C0A994E876C0526240F6132928A09B42C0B2A7D370C052624072BF4351A09B42C0DC9FE63FBF5262401DC9E53FA49B42C05DE6CF12BF526240A04BDD3AA49B42C05491651CBE52624063613E0FA49B42C00417D0B0BD5262400573AA6BA39B42C03AFF1B20BD526240A728F27FA29B42C0DEAEF25FBB52624040964FA0999B42C007FE0120B8526240E613C31F8F9B42C07EECE4C
 2B752624088F71C588E9B42C02A39DD68B652624012B985538B9B42C0D4FCE71FB352624055E2957F889B42C0EA9BEA7FAF526240FEF0F3DF839B42C0593F0B9EAD5262409DE4954F809B42C001020000006E000000E23362A581526240000000E04F9D42C0C30C8D2782526240C0153F7C4F9D42C072A02C2184526240A891F1834E9D42C0C1E677F5855262406083CF204F9D42C09CF0B7E287526240DBFF5B24489D42C0E412471E88526240FEB220393E9D42C0430477FB8752624031F378B5379D42C0853BBC8C875262408D3CB59F319D42C0C4398F2F86526240076B52C02C9D42C088552877845262400392B06F279D42C0BB0166BE835262400B896A00259D42C09F477B728352624030E186CE219D42C081D2AB5C83526240BA5A385A1F9D42C03A0C416983526240BC440603199D42C0E946585484526240755B7DD00E9D42C0DC0BCC0A85526240D2EC702A089D42C04DD87E3286526240339C7CC4F99C42C0447DDCC8865262407BE9DCA3ED9C42C008371955865262409663682BE59C42C056BD570886526240128A085ADC9C42C021938C9C855262408CA438A2D69C42C0C4AF58C385526240D634947FD29C42C02B4CDF6B88526240B3D771B2C39C42C071659AFA8A526240D6E65A0FBA9C42C02640A8E68D52624058F047F6AD9C42C08CD99255915262402F7C8ED9A3
 9C42C033A7261C95526240F7C374C69C9C42C02971C2299852624022F36D66999C42C0BC7DB1529C526240A8E96976939C42C0317491E79F52624064DFBA078D9C42C00CC050D1A25262404527F0F3849C42C099B3E32BA65262400A26A36F779C42C0B98C9B1AA8526240E65AB4006D9C42C00B57AC86A952624043064DA6659C42C0B1A94E62AB526240827E95325F9C42C0486E4DBAAD526240793073CB589C42C0163A6524B1526240E2A9A2D34E9C42C089E0C9B8B35262405FFE5426469C42C0C776082DB5526240DC8C89833A9C42C0F0DB10E3B552624092DF47DA329C42C0DB8D999FB6526240B926EEC2209C42C0A3F611AEB6526240ED7DAA0A0D9C42C01CBFA6BDB7526240711706D1FF9B42C04877C6ADB852624036864A6DF39B42C030044A54B95262409F55664AEB9B42C0F45B2A25BA5262404C0C1357DF9B42C09D6340F6BA5262405D3A41F6D59B42C0A09F4E1EBB526240C2EB4493D59B42C0DE639FB6BC526240298F13CBD29B42C004FD2A65BE526240AAE8B413CA9B42C0A7751BD4BE52624085CFD6C1C19B42C08A2E5EE2BE526240A01518B2BA9B42C089CF9D60BF52624033E8DF89B49B42C0A31CCC26C0526240951C661EAF9B42C0D743FB58C15262402CC0D254AA9B42C076FC1708C2526240586BCDFBA49B42C095C4FE57C2526240A83462669F9B42C
 06D2E4844C252624033B44B659B9B42C0C4B068DFC1526240579B5A11909B42C037ED73C6C1526240E8537D9D8A9B42C017AFC3E2C1526240201DC308869B42C05BC3561AC2526240466172FE819B42C0D8F8A7AFC2526240C1C991297A9B42C04C040539C3526240BF243A70739B42C054CF38C3C3526240E09D7C7A6C9B42C09C95A3B6C3526240B50F1E12639B42C072D1DA7EC3526240EF46301F5A9B42C075DFD682C352624071E888D7509B42C016647039C3526240569F06674B9B42C0DB4E5B23C2526240EA077591429B42C0ACFB6C89C152624088E41A553C9B42C0F7459D14C1526240CC75BFAF369B42C035E213FCC0526240EE08A7052F9B42C0B528FDCEC05262407CE82741249B42C01B50CAFFBF526240A3F08FAD1D9B42C039F9E3ACBE5262409E877F7D199B42C0343CAC26BE5262407E4D7BEF149B42C08A79B18BBD5262400F90D4E70F9B42C02D9CB525BC526240D18A146F099B42C035D5EEB2BA526240D4884FF0039B42C0B58E05E0BA526240929B3CC0EE9A42C0ACD73E2EBB526240F810F9D3EB9A42C033A1A41BBC5262400C885AE4E89A42C01C87B0D0BD5262407BB889FFE09A42C0FD1F1620C05262408E401768D29A42C06D03D259C1526240519DB3AACA9A42C0CFFF6101C2526240B48185DDC19A42C07BD058A0C2526240C50BD8C4B89A42C055E9
 DD0EC35262407D5061B6AE9A42C0E35B0EAAC3526240CA4054D0A39A42C0AA65C636C45262400CBD0F51969A42C0F6211400C8526240B37CB83F729A42C0DF8211A0CB526240DF180280639A42C0F885FCD8C9526240E07261495E9A42C0E603029DC9526240CA4A38995D9A42C0FE73E2BCC9526240850C3F93589A42C0C3A04CA3C95262400C231862509A42C08B57B494C7526240D79FC4E74E9A42C0171E45E7C6526240F2214D614A9A42C0750F75C4C6526240165A8C70499A42C094111780C6526240A0015020479A42C0748E4B66C652624091042B98429A42C09AFFFC63C6526240858ABB8B419A42C0E80F7283C6526240AFB9B42B3E9A42C0440AAF6EC6526240DBF6E2303D9A42C08641F4FFC5526240CC2D0840379A42C05C210780C5526240C80CAF7F329A42C03C5CBC69C452624017CAD303309A42C0B5FC76C8C3526240E24680892E9A42C0E98E0FC4C3526240E24680892E9A42C0010200000019000000E98E0FC4C3526240E24680892E9A42C0E68013C0C35262407D0B46802E9A42C09DE0F65FC25262407D0B46802E9A42C0E40522D5C152624094D74AE82E9A42C027439FD9BF526240CF5F8D58309A42C073DE5A81BC52624034AF343A319A42C0DC195C29BA5262405EEC623F309A42C0F54A5986B8526240DD47C9062D9A42C0D277126CB7526240D4415E0
 F269A42C0BA698E07B6526240389CF9D51C9A42C05C397B67B45262402C6FFDAA129A42C0B1E485CFB1526240D276A796089A42C05B7C0A80B1526240B5914660079A42C0FC4BF7DFAF526240FC4E3860FC9942C09B3BFA5FAE5262405F2DD21FF59942C012E85D06AD52624062A70EA8ED9942C066E95443AC52624053060E68E99942C0F913950DAB5262402A28FB9DDC9942C00A7F8637AB52624003EF3F8DD69942C0DBFAE93FAB5262407B25DA9FD59942C0FE74A84BAB5262407B6D910FD59942C08786C5A8AB526240CF35DDFCD09942C09F69D322AC5262404A1CC3ADCC9942C09ED96443AD52624018B14F00C59942C0208BE95DAE526240E9112D30BE9942C0010200000003000000208BE95DAE526240E9112D30BE9942C04B4B9B60AE526240C2DF8A1FBE9942C01CDD9867AE526240774A0AF5BD9942C00102000000040000001CDD9867AE526240774A0AF5BD9942C0985B1080AE526240343F4860BD9942C0228CFA7FB052624086EC7200B39942C095804EF7B0526240DB807456B09942C001020000000800000095804EF7B0526240DB807456B09942C02ED85768B1526240D56D50FBAD9942C01FA6D82CB252624034750DE9A69942C0992CEE3FB2526240C3499A3FA69942C044DD0720B55262407B6649809A9942C044DD0720B5526240BE0864C0A39942C01D9D04
 80B45262406F0C01C0B19942C01D9D0480B452624013DD6921B79942C001020000000A0000001D9D0480B452624013DD6921B79942C0003F3E7CB452624037807EDFBF9942C0DFCFDF3AB55262405DA79196CA9942C0E1390087B5526240792A9611CD9942C0A7CDEE7FB65262407B25DA9FD59942C057D7570DB8526240D6B3D606DD9942C04BCD7921B85262407102D369DD9942C01A12F758BA5262401A2E1796E49942C064C68091BC5262407D299721E99942C00725EAE8BE52624076FD7669EB9942C00102000000030000000725EAE8BE52624076FD7669EB9942C08C5363F8BE526240997E8978EB9942C00A8F5209BF52624017BA7889EB9942C00102000000050000000A8F5209BF52624017BA7889EB9942C003E0E9DFBF526240100B1060EC9942C0E960FD9FC3526240B5FB5580EF9942C094111780C652624067FCB1FFF09942C0D57036C2C7526240A85BD141F29942C0010200000009000000D57036C2C7526240A85BD141F29942C0C50D0929C9526240FA25E2ADF39942C0F0B9B832CD52624051FDDE01F99942C078DE324CD2526240BB09BE69FA9942C061C7DA3AD3526240A2C7EF6DFA9942C02BC5E97FD45262406E3E6480FA9942C0BE1C2C52D7526240EB79ED88F99942C0F3B688DED8526240CE7AE706F99942C07D879512DB526240FAED9149F79942C0010
 2000000030000007D879512DB526240FAED9149F79942C0191F662FDB52624064E4D132F79942C09737634FDB5262408DBADC19F79942C00102000000090000009737634FDB5262408DBADC19F79942C0D257EB1FDF5262400CEDF71FF49942C0AE92D96AE0526240B898B047F29942C07B8A77DBE052624043684EA8F19942C04B8D7516E2526240BF55E8CDF29942C0539A289DE35262401F4AB4E4F19942C04779419FE3526240378C82E0F19942C0DC3818A0E3526240A2CCABDFF19942C0927F37A7E3526240AC7128D1F19942C0010200000003000000927F37A7E3526240AC7128D1F19942C050A335ABE3526240EF9705C9F19942C09B6053AFE3526240964FD5C0F19942C00102000000090000009B6053AFE3526240964FD5C0F19942C03AF361ACE552624061D520CCED9942C066D6F786E75262403F47F5E7EC9942C088BA0F40EA526240E3DB16C0EF9942C0DD4A6540EC52624031CF4A5AF19942C0A1FE6959ED5262407EDC2340F29942C02A9D595CED526240BE9D9F3DF29942C0634BEA5FED5262407EDC2340F29942C07BB8027DEE526240B6B5D722F19942C00102000000030000007BB8027DEE526240B6B5D722F19942C0B7C7D287EE52624043B00518F19942C0608A808AEE5262406DD76815F19942C0010200000010000000608A808AEE5262406DD76815F199
 42C0058DF4FDEF5262405B261EABEF9942C007DD6FFEF0526240D87B4CFFED9942C0D4FCE71FF352624082FA3B80EA9942C0B2423635F5526240CB42E0EDE69942C0AFEC82C1F5526240D7385101E69942C0E1928895F6526240493CEAF9E49942C0680EFF9FF95262403F582140E19942C0631F09A0FD5262407707C25FDD9942C02920ED7F0053624076775380DE9942C065F0E65F015362409E8834E0E29942C065F0E65F0153624018DAEF3FE89942C02920ED7F0053624086AB0320EE9942C0DC9FE63FFF526240C52CC59FF29942C075CF1500FE526240100E51E0F89942C0D41F065FFD52624090508E5DFD9942C0010200000003000000D41F065FFD52624090508E5DFD9942C0F121A81AFD52624048B2FD1AFF9942C0A36B13A8FC526240F9A11DA3029A42C0010200000003000000A36B13A8FC526240F9A11DA3029A42C067EB85A7FC526240ED2C7AA7029A42C0A05FB9A5FC526240FCFCF6B4029A42C0010200000025000000A05FB9A5FC526240FCFCF6B4029A42C0F33EE99FFB526240AD52D55F0A9A42C03FEE1120F9526240C8E64FC01B9A42C0CF0DF21FF75262402B5BDA5F2C9A42C032135674F5526240B653CE72349A42C071112917F45262406BA395D63A9A42C078A686ECF2526240B676ECB13E9A42C05E5CF45FF1526240B3C068A0439A42C0E7BB00A0EF5
 2624079831E204E9A42C086AB0320EE526240EB05FA9F579A42C0392BFDDFEC526240DB673AE05F9A42C016CBE31FEC526240FAA93B60689A42C016CBE31FEC526240A34B49206F9A42C0249B06A0EC526240224ECC1F789A42C04BDB0940ED5262403F005FC0819A42C0AECBF09FEE526240545227A0899A42C01FAC10A0F052624009E46D00919A42C0FC929E33F35262400598439C989A42C0394F2B3BF3526240B8CCE9B2989A42C00EC40D53F6526240B31E6393A19A42C075351E11F85262409C5BD71EAC9A42C06FFF80BDF85262406F6B6688BE9A42C0A1ED3D01F9526240681888AFC09A42C0680EFF9FF95262406BF12900C69A42C0DEAEF25FFB526240B2440CE0D29A42C0631F09A0FD52624076775380DE9A42C0DC9FE63FFF5262404FF92180E59A42C0ABB019E0025362405E9A22C0E99A42C0A9A10DC0065362403FEBD09FEC9A42C0F7263C570A536240FDDB65BFEE9A42C0EF13515D0A53624050DAC0C2EE9A42C0A99AC5300C536240FC4BF7DFEF9A42C001F15FC50E536240C632FD12F19A42C05314F93F115362407EDC2340F29A42C04B45196015536240109EBFBFF79A42C0707610E019536240FCDEA63FFB9A42C02A3B08DB1D536240257A52D7FC9A42C00102000000030000002A3B08DB1D536240257A52D7FC9A42C0BE8575E31D536240DE91B1DAFC9A42
 C002EBBBE31D536240DA0DCFDAFC9A42C001020000001700000002EBBBE31D536240DA0DCFDAFC9A42C0DBF40C861F53624061FA038AFD9A42C0E8E6D143235362401EEB98A9FF9A42C0648918C025536240566133C0059B42C00702092F26536240959A3DD00A9B42C0AB4CE77926536240873C388E0E9B42C0077536892653624020EF552B139B42C09F5912A026536240C0A7DEBF1E9B42C05DC6A8C626536240987F9994279B42C0BAEEF7D526536240FF1DAC5A2D9B42C0AD88F5A1265362405BC0159A359B42C0A239FC7F26536240AC7EB61F3A9B42C05AE95A2026536240E6CC76853E9B42C07F4FAC5325536240881BA66C479B42C056ED3FD723536240F907DB99539B42C05D26796422536240B2C0B22D5E9B42C069780EC021536240BAB8E8BF629B42C0755776C12053624042D2020F679B42C07F5C2C561E53624090EE8C5B719B42C06B14ED851D5362409393E414789B42C05CB7F75F1D53624021BE5D40799B42C0472701201D536240E68013C0839B42C0C2BA9F8C1D536240069CD0F2889B42C0010200000003000000C2BA9F8C1D536240069CD0F2889B42C0A9DE75911D536240438B112E899B42C02B15B7931D536240D293414A899B42C00102000000060000002B15B7931D536240D293414A899B42C061B94A1C1E53624027E9ABF58F9B42C01F7CCD1720536
 24083ED71F0969B42C09CB11EAD205362402355CA21989B42C0BAB8E8BF2253624009771D609C9B42C08042BB382353624093B483959D9B42C00102000000030000008042BB382353624093B483959D9B42C029A84D4123536240AF1177AB9D9B42C068DD7F43235362408F003EB19D9B42C001020000000400000068DD7F43235362408F003EB19D9B42C06D6EF195255362407542F9CCA39B42C0B45FD27326536240543948E3AB9B42C014C1199126536240AA35997FB29B42C001020000000300000014C1199126536240AA35997FB29B42C00D912E91265362407B2A4C84B29B42C033824391265362403ADE5C8CB29B42C001020000000800000033824391265362403ADE5C8CB29B42C09F5912A026536240E9CD4D40B89B42C01FFC1FBB26536240690A534ABE9B42C0D130C6D126536240AC6AEE8DC69B42C04A2DA5782653624092729C80CB9B42C08DA9054026536240C693933FCE9B42C06A49EC7F2553624089C6DADFD99B42C06A49EC7F25536240B5824B6CE39B42C00102000000030000006A49EC7F25536240B5824B6CE39B42C08CACA1792553624054B02193E79B42C028C8389225536240B1B2DCC4EA9B42C001020000000300000028C8389225536240B1B2DCC4EA9B42C034C0609225536240AAD50DCAEA9B42C06903899225536240E136F4D0EA9B42C0010200
 0000030000006903899225536240E136F4D0EA9B42C0648918C025536240C52CC59FF29B42C055733674255362408FF14B65F89B42C001020000000300000055733674255362408FF14B65F89B42C0611FF873255362401689096AF89B42C0A2FEEF7325536240734F8D6AF89B42C0010200000004000000A2FEEF7325536240734F8D6AF89B42C0E14ED83425536240618A7269FC9B42C04E89905F245362400455A357039C42C05570EB7223536240D1AE8EAD089C42C00102000000030000005570EB7223536240D1AE8EAD089C42C080E2B66C2353624084D95FD1089C42C067919A532353624047F40262099C42C001020000001200000067919A532353624047F40262099C42C093FF7F52235362402B8E5E68099C42C02E68210123536240D7E5EF390B9C42C015D9733E21536240AA549ADE0F9C42C013FFC1D11F5362403DD4B661149C42C0A65714C01E536240E82510C0179C42C021E7FD7F1C53624061E75C401E9C42C049360D40195362408DA90540269C42C0C0E50C2017536240A06B5F402F9C42C0A77E390E17536240210AC105349C42C06EB99FF816536240AE9E93DE379C42C08F6A7D36175362405DBB59283E9C42C0D955ED3F17536240F7EFB03F3F9C42C02CF587C11753624072EB7FCA429C42C06516461F18536240651DE967459C42C01FFC7A74195362404
 813EF004F9C42C0ACF545421B536240EB8F300C589C42C0D7E7209E1B5362406D0CF093599C42C0010200000006000000D7E7209E1B5362406D0CF093599C42C026D6F37F1853624074FE37407A9C42C0F8D51C20185362405C210780859C42C05105ED1F15536240742497FF909C42C08B04094012536240B73302E08E9C42C07DFCE9F90D536240AEAFF2BC8C9C42C00102000000030000007DFCE9F90D536240AEAFF2BC8C9C42C0FFB7EDD60D5362406F8D74AB8C9C42C01D5B0BC90D53624083D659A48C9C42C00102000000050000001D5B0BC90D53624083D659A48C9C42C02982EE810C53624083E4F8FC8B9C42C08432E8DF09536240B3823A408B9C42C021510DA0045362406CC207C0899C42C032B540D70253624065632B59899C42C001020000000300000032B540D70253624065632B59899C42C03A3DEFC60253624096B77E55899C42C0B4E186C20253624073FA6E54899C42C001020000001A000000B4E186C20253624073FA6E54899C42C03C32569BFF5262401F590A92889C42C04562821AFE526240D117E714899C42C0554FE61FFD52624025726660899C42C0BD5DE5BFF6526240E68013C0839C42C0392BFDDFEC526240BF6F32607F9C42C07CF9F8DFE5526240FA3F2C40809C42C0BCC7F4DFDE52624002124DA0889C42C07356FABFD95262402FF54E60959C
 42C023F609A0D85262408DD13AAA9A9C42C09E85F35FD65262407009C03FA59C42C0B524F6BFD2526240AA6FAAFFBD9C42C0B524F6BFD2526240AE934440CF9C42C0756506E0D5526240861854C0E29C42C00E661360D85262405B79C9FFE49C42C0BBE70A00DF52624020A9CF1FE49C42C0B2FAD97EE8526240E8667FA0DC9C42C068267387E852624024230CA8DC9C42C063207475EC526240C4D21B49DD9C42C0C17BFDFFEE526240FDCAEFD9DF9C42C0E7BB00A0EF5262401CF80780E09C42C0D4FCE71FF35262409649C3DFE59C42C07CCD1720F65262406A8A5B60EA9C42C0B44AFAC5F65262403385CE6BEC9C42C0483547B1F7526240DF7A0382EF9C42C09FD236B6F9526240C0AB8558F79C42C00102000000030000009FD236B6F9526240C0AB8558F79C42C04FE339B6F95262408D919158F79C42C0579710B7F9526240AD61EC5BF79C42C0010200000005000000579710B7F9526240AD61EC5BF79C42C07ABE0B00FA52624033FED87FF89C42C0F05EFFBFFB5262401870E01F009D42C0169F0260FC526240E47107A0079D42C0169F0260FC526240E90E62670A9D42C0010200000007000000169F0260FC526240E90E62670A9D42C037F4BB55FC526240FE2A1B310E9D42C01A828879FB5262405A8B0574159D42C0B2AE1B00FB5262402DE64240199D42C0B86EEFBFFA5
 2624056F723A01D9D42C0350DE59FF45262401F6BA1BF2B9D42C02CAFD096E0526240000000E04F9D42C0
   </a>
 <test>
   <op name="isValid" arg1="A">true</op>
 </test>
 <test>
  <op name="union" arg1="A">
- 01050000007B00000001020000000200000035BEE5A0FA486240785C548B887F42C00619B787F34962403A8D599B6B7A42C0010200000002000000A5AE6B6A0F516240EE23B726DD9B42C025AA5D670F516240B165B130DD9B42C001020000000400000025AA5D670F516240B165B130DD9B42C06AB3FB9F0D516240B5F81400E39B42C01A530B800C5162405AE95A20E69B42C01236CF150C5162401D566AF4E69B42C00102000000030000001236CF150C5162401D566AF4E69B42C06BB933130C516240EFBC9EF9E69B42C062B933130C51624001BD9EF9E69B42C001020000000500000062B933130C51624001BD9EF9E69B42C0984979520B516240D6468666E89B42C07DCB9C2E0B516240CA3CA87AE89B42C083013A820A516240E80D9CD8E89B42C01820D1040A516240946B651DE99B42C001020000000A0000001820D1040A516240946B651DE99B42C09FCA694F0951624012D5004AE89B42C0E47107A00751624072593B40E69B42C0881E42A6065162404ACC58D9E39B42C09D9ACB0D065162408C930C4AE29B42C03909A52F045162409BF749FFDC9B42C0B159E48D025162401A738D85D79B42C00B7A6F0C01516240F2A32B22D49B42C0EB6F09C0FF5062403BA41820D19B42C02D3185BDFF506240DC9BDF30D19B42C00102000000040000002D3185BDFF506240DC9B
 DF30D19B42C059A725B1FF506240ADE93015D19B42C027744D37FF5062407BE35AA3D49B42C04562821AFE506240158843DBD69B42C001020000000B0000004562821AFE506240158843DBD69B42C0ED7E15E0FB5062404055E0BFD49B42C0B86EEFBFFA506240A654D33FD29B42C0575EF23FF950624011058E5FD39B42C0A74E513FF95062406403E962D39B42C039002C3CF950624022426D65D39B42C08CA262F7F85062409F8B2BD3D49B42C0041E1840F8506240F0355F80D89B42C03C878D0DF8506240857F6CEDD89B42C0E0BDFE7FF75062404F667220DA9B42C04333F4F4F650624018A99C9BDB9B42C00102000000350000004333F4F4F650624018A99C9BDB9B42C0E4FF441BF6506240C48A64D9DD9B42C0B2423635F5506240F3C64961DE9B42C0E2CC0AA0F35062400518963FDF9B42C081BC0D20F250624057C80160E19B42C0266CE45FF050624047BAB07FE89B42C05D8B16A0ED5062400F0E51E0F89B42C0D81A0060EB5062406ED113E0059C42C03B3A0900E9506240F73361A0109C42C0676902A0E55062406E6704C01D9C42C052DCA799E450624071D014F0219C42C085121C4DE45062404DF4F928239C42C09164B1A8E3506240FE64E7C8259C42C0FA6B68B9E25062407389D981299C42C0ABCC94D6DF506240F9F8DFA52F9C42C09274CDE4DB50624090436
 914379C42C0029EB470D9506240838F77FD389C42C097491E99D85062400CFDB8A2399C42C01426E71FD8506240950ED6FF399C42C0A0038184D75062404DA48F543A9C42C08119F8F6D3506240C977842E3C9C42C0EB54F99ED1506240A68D34023B9C42C0FE55911BCF506240859BE7E3359C42C0D66C8A6CCC506240AD61D0532E9C42C04285D9BACA5062409745178A2A9C42C007E92972C850624074EB353D289C42C0264A8CAFC7506240FED478E9269C42C0C528BE90C45062407D6DA23B2D9C42C0D4EBBBC7BE506240EB556474409C42C08B0CBCA4BB506240F5E681D94E9C42C0D08547D1B95062408EB344C2529C42C025BE24DFB6506240A2C38DA5599C42C074925275B45062400B3AC6BA5D9C42C05A907758B2506240A0DFF76F5E9C42C0058DF4FDAF506240E6F516C5619C42C0081566EBAA506240D29B9B80709C42C02EA4688AA5506240443B5DCC859C42C06FF3C649A150624019575C1C959C42C09AACF6559E506240BAE70A009F9C42C028F5C0229A5062408D9B7521B19C42C0B04C09D2965062406DD5BF35C19C42C0B75D68AE9350624077D66EBBD09C42C098593AD5905062405D5727C2E19C42C0CFA67E398E5062402627C929F09C42C0C194DCBC8C50624097EB23A6FA9C42C0C19A14308B506240DE10F461079D42C09F292AD188506240F5DF394A14
 9D42C0A0B998B08750624028DB1BD71A9D42C099428C7C83506240AC8FE2772E9D42C08E9DA68581506240A56D57433D9D42C02AE4A5F67D5062405930F147519D42C0178B95877B506240DA1F8370609D42C0AD6A49477950624055F08057709D42C0010200000003000000AD6A49477950624055F08057709D42C0575EF23F79506240266CE45F709D42C042E504127950624060F426D0719D42C001020000001400000042E504127950624060F426D0719D42C0FDD071DA785062407730BD58739D42C011001C7B765062404767AA71809D42C03521527875506240791AD58E879D42C0D9CAF044755062405494A69C8A9D42C0322DFBBF745062408014D09F919D42C0217DEE5F7450624093D629A09A9D42C00CEDF71F7450624083CB1940AE9D42C0924FD9FA7350624020915B38B59D42C06BB015D973506240BED29E37BA9D42C0577FDF1A7350624083C366DBC49D42C0A7FC10C0725062408712D2BFC99D42C016EF117B72506240CD9EBAA8CC9D42C05E73FD717150624056D3F544D79D42C025242DF07050624031D7FDBEDA9D42C0266CE45F70506240B2D7BB3FDE9D42C0BE535CB06F50624045B9347EE19D42C083B174F46E506240D89AADBCE49D42C0FDB0EFD46D5062402F5E3D38E99D42C03A9702B96C5062400BBE498EEB9D42C00102000000030000003A9702B96
 C5062400BBE498EEB9D42C0B05EFBB86C506240B7F3588EEB9D42C0BC7FE2B66C5062409FB18A92EB9D42C0010200000003000000BC7FE2B66C5062409FB18A92EB9D42C0D53A16806B5062406E3B2300EE9D42C0C68DB8D36A5062405EB86C75EF9D42C0010200000003000000C68DB8D36A5062405EB86C75EF9D42C002E264D16A506240A3BE767AEF9D42C05ED945CF6A506240E4AFAD7EEF9D42C00102000000030000005ED945CF6A506240E4AFAD7EEF9D42C0ACC1A0F169506240C6600F37F19D42C0A478A4056850624056DAF004F39D42C0010200000003000000A478A4056850624056DAF004F39D42C05F5B3FFD675062405A76D20CF39D42C0AD0008F56750624017362214F39D42C0010200000012000000AD0008F56750624017362214F39D42C0F199EC9F67506240E88CDE5FF39D42C0648918C065506240C52CC59FF29D42C0015CDABA65506240ADEAF6A3F29D42C0AE5D7FB765506240846B49A2F29D42C089B08630635062407DEA58A5F49D42C01E8D9EB661506240AAE683AFF99D42C07171546E62506240647DB905019E42C0A44808A062506240A5F04520039E42C0170912806450624013C25900099E42C0AABF14D466506240691D554D109E42C0EC0AC73D6750624032326DA4119E42C0C7A1D9D068506240B3FEE08D169E42C0E7F05A536A50624055C3
 D9081F9E42C094933FCE6A506240815DA857259E42C0DBFAE93F6B506240CC9A58E02B9E42C0D53A16806B5062401EDE7360399E42C027B284626B50624019BD1ABC409E42C001020000000300000027B284626B50624019BD1ABC409E42C06DDAD6606B506240C1BC1127419E42C0240012606B50624012B85B5B419E42C0010200000005000000240012606B50624012B85B5B419E42C0D81A00606B50624049A01C60419E42C0C66AF3FF6A50624069E21DE0499E42C08E7AE3FF695062402AF40BC0509E42C0B5A91501695062409356D7FC539E42C001020000000E000000B5A91501695062409356D7FC539E42C0A2F4E04966506240279AACF6559E42C0828E56B56450624099E5FC5E549E42C00839EFFF635062400B45BA9F539E42C0EBC6BB236350624041A66BDC519E42C0F2D1E28C61506240E34D7E8B4E9E42C0DE5E2DD25F506240A456F3774A9E42C0BAE70A005F5062403A92CB7F489E42C032970AE05C5062401281EA1F449E42C03C5409055B50624061527C7C429E42C0E6EB8DB55A50624061F65734429E42C0D83274475A5062409723BFD9419E42C04C16F71F595062405620C4DF409E42C0F609A018595062407F9F71E1409E42C001020000000C000000F609A018595062407F9F71E1409E42C085AD7E11595062406D6292DB409E42C0FDE6B45D57506240E
 436D032419E42C07ADD223056506240F581E49D439E42C0C586133D55506240280D350A499E42C0A2F8E75854506240A8774C384F9E42C013550960545062401950148D5A9E42C01355096054506240E333D93F4F9E42C04E250340555062402E122400499E42C08615134056506240B3C068A0439E42C0D67503605750624032303C40419E42C0F609A018595062407F9F71E1409E42C001020000000E000000F609A018595062407F9F71E1409E42C02207DB3E5A506240F02609D3419E42C0AB460AC05A50624085701640429E42C05DC0CB0C5B5062409C0E0984429E42C0867E5CD15C5062401281EA1F449E42C058BACCFA5E506240E793707C489E42C01F20A9CF5F506240921914724A9E42C054E8178061506240C0D3BF7F4E9E42C041D3122B63506240B81E85EB519E42C067583101645062400540CBA9539E42C005114EB0645062401C68F459549E42C08DA90540665062408CD5E6FF559E42C03B3A090069506240E7543200549E42C0B5A91501695062409356D7FC539E42C0010200000007000000B5A91501695062409356D7FC539E42C0D923D40C69506240C3DA73F4539E42C0A6D3BA0D6A506240FA6F6FC8509E42C00B3A6B016B506240EC6415DB499E42C0F36ACA5F6B506240449B2D6A419E42C0D81A00606B506240731FCA61419E42C0240012606B50624012
 B85B5B419E42C0010200000004000000240012606B50624012B85B5B419E42C0BDCA35606B50624014E97E4E419E42C0E749E3616B506240145F48E2409E42C027B284626B50624019BD1ABC409E42C001020000001100000027B284626B50624019BD1ABC409E42C0FEB9C3816B5062404E621058399E42C0AE84494C6B506240E9E115D22B9E42C00E034CCF6A506240CF561465259E42C0A02AF05F6A506240F0879FFF1E9E42C03E1AF3DF68506240D1459E7F169E42C0184D1D9A68506240782EE7AD159E42C0C5991540675062404A743BA0119E42C0C201E3CF665062401B24E93F109E42C08E812B8F645062405A88C4F3089E42C07DD756A262506240D574E217039E42C080A0377062506240C4B30419019E42C069780EC0615062409EAE939FF99D42C0CA880B4063506240006D50A0F49D42C0E70B10BB65506240ADEAF6A3F29D42C006CEBE97675062400C079D6BF39D42C0AD0008F56750624017362214F39D42C0010200000003000000AD0008F56750624017362214F39D42C095FBD3FC675062405A76D20CF39D42C0A478A4056850624056DAF004F39D42C0010200000003000000A478A4056850624056DAF004F39D42C08E7AE3FF695062402B9C4940F19D42C05ED945CF6A506240E4AFAD7EEF9D42C00102000000030000005ED945CF6A506240E4AFAD7EEF9D4
 2C0E7919AD16A5062400EFF9F79EF9D42C0C68DB8D36A5062405EB86C75EF9D42C0010200000003000000C68DB8D36A5062405EB86C75EF9D42C08A66AF886B50624050F4650EEE9D42C0BC7FE2B66C5062409FB18A92EB9D42C0010200000002000000BC7FE2B66C5062409FB18A92EB9D42C03A9702B96C5062400BBE498EEB9D42C00102000000140000003A9702B96C5062400BBE498EEB9D42C0711B0DE06D5062406B1ACA3FE99D42C0C17BFDFF6E5062402B9908C0E49D42C01D739EB16F506240337C5578E19D42C08294336F7050624064DE4F32DE9D42C0ABB420EF70506240D7D3B3C5DA9D42C05B7C0A8071506240D955ED3FD79D42C0AAAEE87B72506240FC2257A0CC9D42C0309B00C372506240C2CE5EC7C99D42C04850FC18735062404835ECF7C49D42C0F75C01E0735062408F4E0240BA9D42C077FF0EFB73506240BB55212FB59D42C006E8082A74506240F4103235AE9D42C0D08C8F60745062400A4F43AF9A9D42C014E63DCE74506240F78CE9AE919D42C029BB4F4475506240B9CFE0A58A9D42C0568D14807550624002A2BB7F879D42C0A8CDEE7F765062402920ED7F809D42C02A5E1BE078506240B3EC4960739D42C042E504127950624060F426D0719D42C001020000000200000042E504127950624060F426D0719D42C0AD6A49477950624055F0805770
 9D42C0010200000024000000AD6A49477950624055F08057709D42C05E3013A081506240E3C9C91F679D42C05F01F15F85506240D746E11F5B9D42C031F20DE0885062402222EB5F489D42C0B9420E008B50624079ED2D40369D42C04473F8FF8C5062404E250340159D42C0B73302E08E506240FCE1E7BF079D42C08EE4F21F9250624013BF1880FC9C42C0756506E0955062400CEDF71FF49C42C088BA0F40AA506240F1C5CD5FD79C42C0D32B0A60AF506240C9213DA0C79C42C05B7C0A80B1506240B63643609B9C42C0EE8B95E2B4506240C89EF3098F9C42C0BB270F0BB550624075E84F768E9C42C0B2AE1B00BB5062402D3E05C0789C42C0EB6F09C0BF5062408C68965F619C42C0D2C1FA3FC7506240F6F53240589C42C068A4EF7FD1506240DC61B8DF469C42C04B451960D5506240DBCE08803B9C42C01D818989D75062408F650B523A9C42C0D3646B22D8506240534D5A023A9C42C00EA8925CD95062408FC7670D399C42C0FAA6FADFDB506240B4BD2720379C42C0F5B704E0DF506240E7BB00A02F9C42C0BBB8E8BFE25062404A0A2C80299C42C0D63329AAE3506240EC2708C3259C42C07EC2D9ADE55062401A69A9BC1D9C42C02914330CE95062405C6F9BA9109C42C0D215116AEB5062408C18D1D1059C42C0EB45FEAAED5062404BCADDE7F89B42C052F98D65F0506
 240D0419770E89B42C0DAD6602BF2506240F28CC756E19B42C0002BD1A3F3506240E7D0D84DDF9B42C00E547C32F55062401D46F762DE9B42C07CCD1720F65062406B871AE0DD9B42C04333F4F4F650624018A99C9BDB9B42C00102000000090000004333F4F4F650624018A99C9BDB9B42C0289B7285F750624025E7C41EDA9B42C04E098849F85062400E7D1C72D89B42C0CB55E2F0F8506240753A90F5D49B42C08CFE863FF95062406403E962D39B42C026BD14C3FA5062405F8E684CD29B42C0E14625D0FB506240FE9364C2D49B42C01CE3D418FE50624068869EDED69B42C04562821AFE506240158843DBD69B42C00102000000040000004562821AFE506240158843DBD69B42C08D3FF61FFE50624092054CE0D69B42C0DC9FE63FFF50624028E5FF9FD49B42C02D3185BDFF506240DC9BDF30D19B42C001020000000A0000002D3185BDFF506240DC9BDF30D19B42C0086C7308015162408D68F118D49B42C099000D80025162400936AE7FD79B42C01281EA1F045162402FB72000DD9B42C08641F4FF055162409298FB3FE29B42C0382EE3A606516240734B06DBE39B42C0B1C8659207516240C5579643E69B42C03D9D2B4A0951624000982144E89B42C08152FEFF0951624053AAE91FE99B42C01820D1040A516240946B651DE99B42C00102000000050000001820D1040A
 516240946B651DE99B42C0A1BEC0070A516240E869C020E99B42C0E2EFCD250B51624047BAB07FE89B42C0CAF21A600B516240304AD05FE89B42C062B933130C51624001BD9EF9E69B42C001020000000300000062B933130C51624001BD9EF9E69B42C029F8B7150C516240723F96F4E69B42C01236CF150C5162401D566AF4E69B42C00102000000040000001236CF150C5162401D566AF4E69B42C035A3D57F0C5162407E63192CE69B42C09C5C9DAD0D516240B5F81400E39B42C025AA5D670F516240B165B130DD9B42C001020000000400000025AA5D670F516240B165B130DD9B42C010EF94690F516240AC623B29DD9B42C0DD7305800F516240184740E0DC9B42C0A5AE6B6A0F516240EE23B726DD9B42C0010200000009000000D57036C2C7526240A85BD141F29942C0C50D0929C9526240FA25E2ADF39942C0F0B9B832CD52624051FDDE01F99942C079DE324CD2526240BB09BE69FA9942C061C7DA3AD3526240A3C7EF6DFA9942C02BC5E97FD45262406E3E6480FA9942C0BE1C2C52D7526240EB79ED88F99942C0F3B688DED8526240CE7AE706F99942C07D879512DB526240FAED9149F79942C00102000000030000007D879512DB526240FAED9149F79942C0191F662FDB52624064E4D132F79942C09737634FDB5262408DBADC19F79942C0010200000009000000973
 7634FDB5262408DBADC19F79942C0D257EB1FDF5262400CEDF71FF49942C0AE92D96AE0526240B998B047F29942C07B8A77DBE052624043684EA8F19942C04B8D7516E2526240BF55E8CDF29942C0539A289DE35262401F4AB4E4F19942C04779419FE3526240378C82E0F19942C0DC3818A0E3526240A2CCABDFF19942C0927F37A7E3526240AC7128D1F19942C0010200000003000000927F37A7E3526240AC7128D1F19942C050A335ABE3526240EF9705C9F19942C09B6053AFE3526240964FD5C0F19942C00102000000090000009B6053AFE3526240964FD5C0F19942C03AF361ACE552624062D520CCED9942C066D6F786E75262403F47F5E7EC9942C088BA0F40EA526240E4DB16C0EF9942C0DD4A6540EC52624031CF4A5AF19942C0A1FE6959ED5262407EDC2340F29942C02A9D595CED526240BF9D9F3DF29942C0634BEA5FED5262407EDC2340F29942C03AB9027DEE526240F7B4D722F19942C00102000000030000003AB9027DEE526240F7B4D722F19942C0B8C7D287EE52624043B00518F19942C0308A808AEE5262409DD76815F19942C0010200000010000000308A808AEE5262409DD76815F19942C0058DF4FDEF5262405B261EABEF9942C007DD6FFEF0526240D97B4CFFED9942C0D4FCE71FF352624082FA3B80EA9942C0B2423635F5526240CB42E0EDE69942C0
 AFEC82C1F5526240D7385101E69942C0E1928895F6526240493CEAF9E49942C0680EFF9FF95262403F582140E19942C0631F09A0FD5262407707C25FDD9942C02920ED7F0053624076775380DE9942C064F0E65F015362409E8834E0E29942C064F0E65F0153624018DAEF3FE89942C02920ED7F0053624086AB0320EE9942C0DC9FE63FFF526240C52CC59FF29942C075CF1500FE5262400F0E51E0F89942C0D41F065FFD52624090508E5DFD9942C0010200000003000000D41F065FFD52624090508E5DFD9942C0F221A81AFD52624048B2FD1AFF9942C0A36B13A8FC526240F8A11DA3029A42C0010200000003000000A36B13A8FC526240F8A11DA3029A42C067EB85A7FC526240ED2C7AA7029A42C0A05FB9A5FC526240FCFCF6B4029A42C0010200000025000000A05FB9A5FC526240FCFCF6B4029A42C0F33EE99FFB526240AD52D55F0A9A42C03FEE1120F9526240C8E64FC01B9A42C0CF0DF21FF75262402B5BDA5F2C9A42C032135674F5526240B553CE72349A42C071112917F45262406BA395D63A9A42C078A686ECF2526240B676ECB13E9A42C05E5CF45FF1526240B3C068A0439A42C0E7BB00A0EF52624079831E204E9A42C086AB0320EE526240EB05FA9F579A42C0392BFDDFEC526240DB673AE05F9A42C016CBE31FEC526240FAA93B60689A42C016CBE31FEC52624
 0A34B49206F9A42C0249B06A0EC526240224ECC1F789A42C04BDB0940ED52624040005FC0819A42C0AFCBF09FEE526240545227A0899A42C01FAC10A0F052624009E46D00919A42C0FD929E33F35262400598439C989A42C0394F2B3BF3526240B8CCE9B2989A42C00EC40D53F6526240B31E6393A19A42C075351E11F85262409C5BD71EAC9A42C06FFF80BDF85262406F6B6688BE9A42C0A1ED3D01F9526240681888AFC09A42C0680EFF9FF95262406BF12900C69A42C0DEAEF25FFB526240B2440CE0D29A42C0631F09A0FD52624076775380DE9A42C0DC9FE63FFF5262404FF92180E59A42C0ABB019E0025362405E9A22C0E99A42C0A9A10DC0065362403FEBD09FEC9A42C0F7263C570A536240FDDB65BFEE9A42C0EF13515D0A53624050DAC0C2EE9A42C0A99AC5300C536240FC4BF7DFEF9A42C001F15FC50E536240C632FD12F19A42C05314F93F115362407EDC2340F29A42C04B45196015536240109EBFBFF79A42C0707610E019536240FCDEA63FFB9A42C0623B08DB1D5362403B7A52D7FC9A42C0010200000003000000623B08DB1D5362403B7A52D7FC9A42C0BE8575E31D536240DE91B1DAFC9A42C0CDEABBE31D536240C40DCFDAFC9A42C0010200000017000000CDEABBE31D536240C40DCFDAFC9A42C0DBF40C861F53624060FA038AFD9A42C0E8E6D14323536240
 1EEB98A9FF9A42C0648918C025536240566133C0059B42C00702092F26536240959A3DD00A9B42C0AB4CE77926536240873C388E0E9B42C0077536892653624020EF552B139B42C09F5912A026536240C0A7DEBF1E9B42C05DC6A8C626536240987F9994279B42C0B9EEF7D526536240001EAC5A2D9B42C0AD88F5A1265362405BC0159A359B42C0A239FC7F26536240AC7EB61F3A9B42C05AE95A2026536240E6CC76853E9B42C07F4FAC5325536240881BA66C479B42C056ED3FD723536240F907DB99539B42C05C26796422536240B2C0B22D5E9B42C069780EC021536240BBB8E8BF629B42C0755776C12053624042D2020F679B42C07F5C2C561E53624090EE8C5B719B42C06B14ED851D5362409393E414789B42C05CB7F75F1D53624021BE5D40799B42C0472701201D536240E68013C0839B42C0C1BA9F8C1D536240FA9BD0F2889B42C0010200000003000000C1BA9F8C1D536240FA9BD0F2889B42C0A9DE75911D536240438B112E899B42C02B15B7931D536240D293414A899B42C00102000000060000002B15B7931D536240D293414A899B42C061B94A1C1E53624027E9ABF58F9B42C01F7CCD172053624083ED71F0969B42C09CB11EAD205362402355CA21989B42C0BBB8E8BF2253624009771D609C9B42C0A642BB3823536240F2B483959D9B42C001020000000300000
 0A642BB3823536240F2B483959D9B42C029A84D4123536240AF1177AB9D9B42C041DD7F432353624027003EB19D9B42C001020000000400000041DD7F432353624027003EB19D9B42C06D6EF195255362407642F9CCA39B42C0B45FD27326536240543948E3AB9B42C014C1199126536240AA35997FB29B42C001020000000300000014C1199126536240AA35997FB29B42C00D912E91265362407B2A4C84B29B42C033824391265362403ADE5C8CB29B42C001020000000800000033824391265362403ADE5C8CB29B42C09F5912A026536240E9CD4D40B89B42C01FFC1FBB26536240690A534ABE9B42C0D130C6D126536240AC6AEE8DC69B42C04B2DA5782653624092729C80CB9B42C08DA9054026536240C693933FCE9B42C06A49EC7F255362408AC6DADFD99B42C06A49EC7F25536240B5824B6CE39B42C00102000000030000006A49EC7F25536240B5824B6CE39B42C08DACA1792553624054B02193E79B42C028C8389225536240B5B2DCC4EA9B42C001020000000300000028C8389225536240B5B2DCC4EA9B42C034C0609225536240ABD50DCAEA9B42C06903899225536240DE36F4D0EA9B42C00102000000030000006903899225536240DE36F4D0EA9B42C0648918C025536240C52CC59FF29B42C0547336742553624095F14B65F89B42C0010200000003000000547336
 742553624095F14B65F89B42C0611FF873255362401689096AF89B42C0A2FEEF73255362406D4F8D6AF89B42C0010200000004000000A2FEEF73255362406D4F8D6AF89B42C0E14ED83425536240618A7269FC9B42C04F89905F245362400455A357039C42C05770EB7223536240C4AE8EAD089C42C00102000000030000005770EB7223536240C4AE8EAD089C42C080E2B66C2353624084D95FD1089C42C035909A532353624032FB0262099C42C001020000001200000035909A532353624032FB0262099C42C094FF7F52235362402B8E5E68099C42C02F68210123536240D6E5EF390B9C42C015D9733E21536240AA549ADE0F9C42C013FFC1D11F5362403DD4B661149C42C0A65714C01E536240E82510C0179C42C021E7FD7F1C53624061E75C401E9C42C049360D40195362408DA90540269C42C0C1E50C2017536240A06B5F402F9C42C0A77E390E17536240210AC105349C42C06EB99FF816536240AE9E93DE379C42C08F6A7D36175362405DBB59283E9C42C0D955ED3F17536240F7EFB03F3F9C42C02CF587C11753624072EB7FCA429C42C06516461F18536240651DE967459C42C01FFC7A74195362404813EF004F9C42C0ADF545421B536240EB8F300C589C42C0D7E7209E1B5362406D0CF093599C42C0010200000006000000D7E7209E1B5362406D0CF093599C42C026D
 6F37F1853624074FE37407A9C42C0F9D51C20185362405C210780859C42C05105ED1F15536240742497FF909C42C08B04094012536240B73302E08E9C42C0C6FCE9F90D536240D4AFF2BC8C9C42C0010200000003000000C6FCE9F90D536240D4AFF2BC8C9C42C0FFB7EDD60D536240708D74AB8C9C42C0D45A0BC90D5362405DD659A48C9C42C0010200000005000000D45A0BC90D5362405DD659A48C9C42C02982EE810C53624083E4F8FC8B9C42C08432E8DF09536240B3823A408B9C42C021510DA0045362406CC207C0899C42C07BB540D70253624075632B59899C42C00102000000030000007BB540D70253624075632B59899C42C03A3DEFC60253624096B77E55899C42C06AE186C20253624061FA6E54899C42C001020000001A0000006AE186C20253624061FA6E54899C42C03C32569BFF5262401F590A92889C42C04562821AFE526240D117E714899C42C0554FE61FFD52624025726660899C42C0BD5DE5BFF6526240E68013C0839C42C0392BFDDFEC526240BF6F32607F9C42C07BF9F8DFE5526240FA3F2C40809C42C0BDC7F4DFDE52624001124DA0889C42C07356FABFD952624030F54E60959C42C023F609A0D85262408DD13AAA9A9C42C09E85F35FD65262407009C03FA59C42C0B524F6BFD2526240AA6FAAFFBD9C42C0B524F6BFD2526240AE934440CF9C42C0
 756506E0D5526240861854C0E29C42C00E661360D85262405B79C9FFE49C42C0BAE70A00DF52624020A9CF1FE49C42C0B2FAD97EE8526240E8667FA0DC9C42C068267387E852624024230CA8DC9C42C063207475EC526240C4D21B49DD9C42C0C17BFDFFEE526240FECAEFD9DF9C42C0E7BB00A0EF5262401CF80780E09C42C0D4FCE71FF35262409649C3DFE59C42C07CCD1720F65262406A8A5B60EA9C42C0B44AFAC5F65262403385CE6BEC9C42C0483547B1F7526240DF7A0382EF9C42C07DD236B6F95262403BAB8558F79C42C00102000000030000007DD236B6F95262403BAB8558F79C42C050E339B6F95262408D919158F79C42C0E5A210B7F9526240E08FEC5BF79C42C0010200000005000000E5A210B7F9526240E08FEC5BF79C42C07ABE0B00FA52624033FED87FF89C42C0F05EFFBFFB5262401870E01F009D42C0169F0260FC526240E47107A0079D42C0169F0260FC526240E90E62670A9D42C0010200000007000000169F0260FC526240E90E62670A9D42C037F4BB55FC526240FE2A1B310E9D42C01A828879FB5262405A8B0574159D42C0B2AE1B00FB5262402EE64240199D42C0B86EEFBFFA52624056F723A01D9D42C0350DE59FF45262401F6BA1BF2B9D42C02CAFD096E0526240000000E04F9D42C001020000006E000000E23362A581526240000000E04F9D4
 2C0C30C8D2782526240BF153F7C4F9D42C072A02C2184526240A891F1834E9D42C0C1E677F5855262406083CF204F9D42C09CF0B7E287526240DBFF5B24489D42C0E412471E88526240FEB220393E9D42C0430477FB8752624031F378B5379D42C0853BBC8C875262408D3CB59F319D42C0C4398F2F86526240076B52C02C9D42C089552877845262400392B06F279D42C0BC0166BE835262400B896A00259D42C09F477B728352624030E186CE219D42C081D2AB5C83526240BA5A385A1F9D42C03A0C416983526240BD440603199D42C0E946585484526240755B7DD00E9D42C0DC0BCC0A85526240D2EC702A089D42C04DD87E3286526240339C7CC4F99C42C0447DDCC8865262407AE9DCA3ED9C42C008371955865262409663682BE59C42C056BD570886526240128A085ADC9C42C021938C9C855262408CA438A2D69C42C0C4AF58C385526240D634947FD29C42C02B4CDF6B88526240B3D771B2C39C42C071659AFA8A526240D6E65A0FBA9C42C02540A8E68D52624059F047F6AD9C42C08CD99255915262402F7C8ED9A39C42C033A7261C95526240F7C374C69C9C42C02971C2299852624022F36D66999C42C0BC7DB1529C526240A8E96976939C42C0317491E79F52624064DFBA078D9C42C00CC050D1A25262404527F0F3849C42C099B3E32BA65262400A26A36F779C42C0B9
 8C9B1AA8526240E65AB4006D9C42C00B57AC86A952624043064DA6659C42C0B1A94E62AB526240827E95325F9C42C0486E4DBAAD526240793073CB589C42C0163A6524B1526240E3A9A2D34E9C42C089E0C9B8B35262405FFE5426469C42C0C776082DB5526240DC8C89833A9C42C0F0DB10E3B552624092DF47DA329C42C0DB8D999FB6526240B926EEC2209C42C0A2F611AEB6526240ED7DAA0A0D9C42C01CBFA6BDB7526240711706D1FF9B42C04877C6ADB852624036864A6DF39B42C030044A54B95262409F55664AEB9B42C0F45B2A25BA5262404C0C1357DF9B42C09D6340F6BA5262405D3A41F6D59B42C0A09F4E1EBB526240C2EB4493D59B42C0DE639FB6BC526240298F13CBD29B42C004FD2A65BE526240AAE8B413CA9B42C0A7751BD4BE52624085CFD6C1C19B42C0892E5EE2BE526240A01518B2BA9B42C089CF9D60BF52624032E8DF89B49B42C0A31CCC26C0526240941C661EAF9B42C0D843FB58C15262402CC0D254AA9B42C076FC1708C2526240586BCDFBA49B42C096C4FE57C2526240A83462669F9B42C06D2E4844C252624033B44B659B9B42C0C3B068DFC1526240579B5A11909B42C037ED73C6C1526240E8537D9D8A9B42C017AFC3E2C1526240201DC308869B42C05BC3561AC2526240466172FE819B42C0D8F8A7AFC2526240C1C991297A9B42C04C04053
 9C3526240BF243A70739B42C054CF38C3C3526240E09D7C7A6C9B42C09C95A3B6C3526240B50F1E12639B42C072D1DA7EC3526240EF46301F5A9B42C075DFD682C352624071E888D7509B42C016647039C3526240569F06674B9B42C0DB4E5B23C2526240EA077591429B42C0ACFB6C89C152624088E41A553C9B42C0F6459D14C1526240CC75BFAF369B42C035E213FCC0526240EE08A7052F9B42C0B528FDCEC05262407CE82741249B42C01B50CAFFBF526240A3F08FAD1D9B42C039F9E3ACBE5262409F877F7D199B42C0333CAC26BE5262407E4D7BEF149B42C08A79B18BBD5262400F90D4E70F9B42C02E9CB525BC526240D18A146F099B42C035D5EEB2BA526240D4884FF0039B42C0B58E05E0BA526240929B3CC0EE9A42C0ACD73E2EBB526240F810F9D3EB9A42C034A1A41BBC5262400C885AE4E89A42C01C87B0D0BD5262407BB889FFE09A42C0FD1F1620C05262408E401768D29A42C06D03D259C1526240519DB3AACA9A42C0CFFF6101C2526240B48185DDC19A42C07BD058A0C2526240C50BD8C4B89A42C055E9DD0EC35262407D5061B6AE9A42C0E35B0EAAC3526240CA4054D0A39A42C0AA65C636C45262400CBD0F51969A42C0F6211400C8526240B37CB83F729A42C0DF8211A0CB526240DF180280639A42C0F885FCD8C9526240E17261495E9A42C0E603029DC952
 6240CA4A38995D9A42C0FE73E2BCC9526240850C3F93589A42C0C2A04CA3C95262400C231862509A42C08B57B494C7526240D79FC4E74E9A42C0171E45E7C6526240F2214D614A9A42C0760F75C4C6526240165A8C70499A42C094111780C6526240A0015020479A42C0748E4B66C652624090042B98429A42C09AFFFC63C6526240858ABB8B419A42C0E80F7283C6526240B0B9B42B3E9A42C0440AAF6EC6526240DBF6E2303D9A42C08641F4FFC5526240CC2D0840379A42C05C210780C5526240C80CAF7F329A42C03C5CBC69C452624017CAD303309A42C0B6FC76C8C3526240E24680892E9A42C0E98E0FC4C3526240E24680892E9A42C0010200000019000000E98E0FC4C3526240E24680892E9A42C0E68013C0C35262407D0B46802E9A42C09CE0F65FC25262407D0B46802E9A42C0E40522D5C152624094D74AE82E9A42C027439FD9BF526240CF5F8D58309A42C073DE5A81BC52624034AF343A319A42C0DC195C29BA5262405EEC623F309A42C0F54A5986B8526240DD47C9062D9A42C0D277126CB7526240D4415E0F269A42C0BA698E07B6526240389CF9D51C9A42C05C397B67B45262402C6FFDAA129A42C0B1E485CFB1526240D276A796089A42C05B7C0A80B1526240B5914660079A42C0FC4BF7DFAF526240FC4E3860FC9942C09B3BFA5FAE5262405F2DD21FF59942C
 012E85D06AD52624062A70EA8ED9942C066E95443AC52624053060E68E99942C0F913950DAB5262402A28FB9DDC9942C00A7F8637AB52624003EF3F8DD69942C0DBFAE93FAB5262407B25DA9FD59942C0FE74A84BAB5262407B6D910FD59942C08786C5A8AB526240D035DDFCD09942C09F69D322AC5262404A1CC3ADCC9942C09ED96443AD52624018B14F00C59942C01E8BE95DAE526240F4112D30BE9942C00102000000030000001E8BE95DAE526240F4112D30BE9942C04A4B9B60AE526240C2DF8A1FBE9942C00CDD9867AE526240D44A0AF5BD9942C00102000000040000000CDD9867AE526240D44A0AF5BD9942C0985B1080AE526240343F4860BD9942C0228CFA7FB052624086EC7200B39942C096804EF7B0526240DB807456B09942C001020000000800000096804EF7B0526240DB807456B09942C02ED85768B1526240D66D50FBAD9942C01FA6D82CB252624033750DE9A69942C0992CEE3FB2526240C3499A3FA69942C044DD0720B55262407B6649809A9942C044DD0720B5526240BE0864C0A39942C01D9D0480B45262406F0C01C0B19942C01D9D0480B452624013DD6921B79942C001020000000A0000001D9D0480B452624013DD6921B79942C0003F3E7CB452624038807EDFBF9942C0DFCFDF3AB55262405DA79196CA9942C0E1390087B5526240792A9611CD99
 42C0A8CDEE7FB65262407B25DA9FD59942C057D7570DB8526240D6B3D606DD9942C04BCD7921B85262407102D369DD9942C01A12F758BA5262401A2E1796E49942C064C68091BC5262407D299721E99942C0E324EAE8BE52624054FD7669EB9942C0010200000003000000E324EAE8BE52624054FD7669EB9942C08C5363F8BE526240997E8978EB9942C02A8F5209BF52624037BA7889EB9942C00102000000050000002A8F5209BF52624037BA7889EB9942C003E0E9DFBF526240100B1060EC9942C0E960FD9FC3526240B5FB5580EF9942C094111780C652624067FCB1FFF09942C0D57036C2C7526240A85BD141F29942C001020000000400000073FB9B06FB5262400567953E199D42C06A72E778FB5262406CC8E479159D42C0169F0260FC52624075A334400E9D42C0169F0260FC526240E90E62670A9D42C0010200000005000000169F0260FC526240E90E62670A9D42C0525B8F67FC5262404FB2309F079D42C0383C73C5FB5262400633011A009D42C071AB2006FA526240AA76F28EF89C42C0E5A210B7F9526240E08FEC5BF79C42C0010200000002000000E5A210B7F9526240E08FEC5BF79C42C07DD236B6F95262403BAB8558F79C42C00102000000180000007DD236B6F95262403BAB8558F79C42C0F54DF5BFF7526240B5FB5580EF9C42C0CF9AC4C5F65262409FC5F
 76AEC9C42C01AB7E22CF6526240CFC59569EA9C42C0C8DB0022F3526240840CE4D9E59C42C0E4C40DAEEF52624081334289E09C42C0A026440AEF526240F8C500E4DF9C42C0287BF07FEC5262405F97E13FDD9C42C0121A1C80E852624053A7A89FDC9C42C0CD4AA47EE8526240E8667FA0DC9C42C09CDB847BE5526240B4A1AC29DA9C42C0DCAEE133E3526240993E856DD59C42C06BCB25FAE15262401EB97F76D19C42C03953324AE1526240B2B15C80C79C42C0E5F27A8BE2526240D08547D1B99C42C07F52488DE4526240AA80D657B29C42C0245D33F9E65262408C721F6FA89C42C011178046E9526240B4249B06A09C42C051F70148ED526240186BC9F4959C42C0DD297865F2526240D4D6E3198F9C42C0819B2045F8526240B95917128B9C42C0B9B59613FE52624090566B17899C42C0EE4FF39FFF52624001124DA0889C42C06AE186C20253624061FA6E54899C42C00102000000030000006AE186C20253624061FA6E54899C42C0780778D20253624054F60258899C42C07BB540D70253624075632B59899C42C00102000000050000007BB540D70253624075632B59899C42C0FDED57A604536240D1FD41C9899C42C069CB14CE095362403605323B8B9C42C01A530B800C536240D6E253008C9C42C0D45A0BC90D5362405DD659A48C9C42C0010200000003000000D45A
 0BC90D5362405DD659A48C9C42C0938ECDE90D536240D6C8AEB48C9C42C0C6FCE9F90D536240D4AFF2BC8C9C42C001020000000F000000C6FCE9F90D536240D4AFF2BC8C9C42C0DFEB5A31125362405D30B8E68E9C42C0102D681015536240F1A19F04919C42C028CA4A38195362406B216D88969C42C0D19D16721B536240CF3CCAD2989C42C03B037EE81D5362403ABF72CE999C42C0DDFF6C5020536240ED69E278999C42C09E5DBEF5215362404DEE1C6F979C42C0CA856F0624536240E0505326909C42C0B700D99024536240373FB445889C42C023168CA5235362405B40683D7C9C42C05F62878C22536240C5B99745729C42C093A1CFEC1F536240F4763A46689C42C08284CDA51D5362404BBB873A629C42C0D7E7209E1B5362406D0CF093599C42C0010200000013000000D7E7209E1B5362406D0CF093599C42C0E61604A01B5362407916CE7F599C42C05EC6038019536240B45318004F9C42C0F9D51C20185362402A615C60459C42C01DC6A4BF1753624025F213BD429C42C089658E4017536240AAF644323F9C42C0242A54371753624010F0FF3E3E9C42C0C4C5F6FF16536240D71D41E0379C42C08C2E6F0E17536240270FB0FB339C42C02721472917536240B8AD2D3C2F9C42C079D1B249195362404BE88942269C42C0AD93E9861C5362403868AF3E1E9C42C073C57
 BC41E536240EE2AFFB5179C42C0405E59B31F53624019E42EC2149C42C05AA8EB3F21536240D4D347E00F9C42C0B5F8140023536240E822CF3F0B9C42C01518570123536240412619390B9C42C059E7CE02235362405968E7340B9C42C035909A532353624032FB0262099C42C001020000000300000035909A532353624032FB0262099C42C0473426692353624078CF81E5089C42C05770EB7223536240C4AE8EAD089C42C00102000000040000005770EB7223536240C4AE8EAD089C42C01AE9FB5F24536240D4D00660039C42C055B9F53F25536240FC4E3860FC9B42C0A2FEEF73255362406D4F8D6AF89B42C0010200000003000000A2FEEF73255362406D4F8D6AF89B42C046CF2D74255362402DCBD765F89B42C0547336742553624095F14B65F89B42C0010200000003000000547336742553624095F14B65F89B42C0F551FCCE2553624095A828A8F29B42C06903899225536240DE36F4D0EA9B42C00102000000030000006903899225536240DE36F4D0EA9B42C034C0609225536240D554BBCBEA9B42C028C8389225536240B5B2DCC4EA9B42C001020000000300000028C8389225536240B5B2DCC4EA9B42C06A49EC7F255362400CEAB69FE79B42C06A49EC7F25536240B5824B6CE39B42C00102000000080000006A49EC7F25536240B5824B6CE39B42C031B2648E2553
 6240F60604DFD99B42C0E3B55C472653624031D4BC3ECE9B42C0B76DCE7726536240B5EC5A8CCB9B42C0B3E908E026536240CAB1AB7FC69B42C01FFC1FBB26536240988EEF41BE9B42C04864C4AA26536240B949B148B89B42C033824391265362403ADE5C8CB29B42C001020000000300000033824391265362403ADE5C8CB29B42C00D912E9126536240CE28A787B29B42C014C1199126536240AA35997FB29B42C001020000000400000014C1199126536240AA35997FB29B42C0A239FC7F26536240013BEDDFAB9B42C0676902A025536240BE0864C0A39B42C041DD7F432353624027003EB19D9B42C001020000000300000041DD7F432353624027003EB19D9B42C09DFB613A235362407A5AD9999D9B42C0A642BB3823536240F2B483959D9B42C0010200000006000000A642BB3823536240F2B483959D9B42C08C344CC822536240EB2F606E9C9B42C0A72E2AF320536240F98D65B0989B42C00A48FB1F205362408F256200979B42C07F1711201E53624021E4BCFF8F9B42C02B15B7931D536240D293414A899B42C00102000000030000002B15B7931D536240D293414A899B42C0EB9FF18E1D536240549ADE0F899B42C0C1BA9F8C1D536240FA9BD0F2889B42C0010200000019000000C1BA9F8C1D536240FA9BD0F2889B42C03B061A221D5362409382B8BC839B42C01AF67
 B621D5362400F817E3A799B42C00BF5AA841D536240224ECC1F789B42C094A707601E53624078ACBE5F719B42C05A07ACC120536240AD122C0E679B42C0D7C633C321536240CDF5C7C5629B42C04AE9995E2253624058EB7A585E9B42C0F0C80EE0235362400B45BA9F539B42C052D90B6025536240CFE11060479B42C069183E2226536240F2D654713E9B42C0CEC6A58526536240EE3F321D3A9B42C0E3288AA12653624026378AAC359B42C0B3E908E0265362407D9BB45F2D9B42C05DC6A8C62653624045813E91279B42C016D22BAF2653624032EDF6B41E9B42C0EC246C8926536240C0E61C3C139B42C0A239FC7F26536240A583F57F0E9B42C08D92FC2D26536240DC60A8C30A9B42C0C9C452C92553624086E5CFB7059B42C0A625564623536240476A46ABFF9A42C0CD960744235362401EEB98A9FF9A42C0CA880B4023536240B9AF5EA0FF9A42C0E407F87F1F53624066FFF27FFD9A42C0CDEABBE31D536240C40DCFDAFC9A42C0010200000003000000CDEABBE31D536240C40DCFDAFC9A42C0EE0912DB1D5362408A9356D7FC9A42C0623B08DB1D5362403B7A52D7FC9A42C0010200000024000000623B08DB1D5362403B7A52D7FC9A42C0B75384E519536240F0A6B62FFB9A42C0EF33D362155362409320B7BAF79A42C0BB46263B1153624019A1E936F29A42C00D4059
 E70E536240D26AED22F19A42C005C314400C536240FC4BF7DFEF9A42C0C286A7570A536240FDDB65BFEE9A42C061DBA2CC06536240DAAF9696EC9A42C058C9C7EE025362403B2064B4E99A42C0F4F8BD4DFF5262400D38A682E59A42C051F932ACFD526240DBB28D89DE9A42C01A6B7F67FB52624035C703DBD29A42C02D697BAAF9526240E269430FC69A42C036AD1402F95262400E153EB6C09A42C02D3E05C0F85262409EEF0280BE9A42C007FE0120F8526240311BAE1FAC9A42C0915D0E60F65262406C58F89FA19A42C0D11CFE3FF352624005C655C0989A42C0EC55BF2DF35262403B21CF89989A42C04F47B6A9F0526240E569AFF4909A42C0773469AEEE526240AD557199899A42C0B0164449ED52624034C86EB0819A42C0106734A8EC526240A5D0C31A789A42C09348EC24EC526240149161156F9A42C01CE7DB27EC526240ADB0CF52689A42C0E643ABEEEC5262402E6695E35F9A42C0D3A46F2DEE526240FD42D9A5579A42C08297CFA8EF526240D28668194E9A42C084E4AE6FF1526240F581E49D439A42C0D4B7CCE9F25262401BB226BB3E9A42C00CEDF71FF4526240D0DECFDF3A9A42C0AC826275F552624038D6C56D349A42C0C908032AF75262403693CA6F2C9A42C080C6962FF95262408625D4C21B9A42C026E88AADFB526240729648580A9A42C0A05FB9A5FC5
 26240FCFCF6B4029A42C0010200000003000000A05FB9A5FC526240FCFCF6B4029A42C007CC43A6FC5262405268B4B0029A42C0A36B13A8FC526240F8A11DA3029A42C0010200000003000000A36B13A8FC526240F8A11DA3029A42C0554FE61FFD526240C52F0620FF9942C0D41F065FFD52624090508E5DFD9942C0010200000011000000D41F065FFD52624090508E5DFD9942C0C2C8810DFE526240C847E6ECF89942C01B6A6F4BFF5262404EB4AB90F29942C0C4FBBB880053624062314514EE9942C0387A466C01536240BFD6A546E89942C0F6B8CA6E015362407A0E76D4E29942C0F47F5880005362404CF8A57EDE9942C06616FC91FD526240944E7F51DD9942C0274D83A2F9526240C8DF0731E19942C0704D70A0F6526240FC427EECE49942C06A1D0BC0F5526240AEB9A3FFE59942C06B65C22FF5526240307E1AF7E69942C0D1EEEB1BF35262401DBF0177EA9942C046A7F809F15262407A4501ECED9942C0F96B0D00F0526240CD6B36A0EF9942C0A6FD20DCEE5262401FDA22C4F09942C0308A808AEE5262409DD76815F19942C0010200000002000000308A808AEE5262409DD76815F19942C03AB9027DEE526240F7B4D722F19942C001020000000A0000003AB9027DEE526240F7B4D722F19942C0008E3D7BEE526240FBE99A24F19942C00F4D8F5CED526240BF9D9F
 3DF29942C0D4207134EC52624037D43950F19942C0BA63B14DEA5262400E5BC4C1EF9942C04273428DE7526240EC489AE4EC9942C04B862D87E75262403F47F5E7EC9942C0DA290C80E7526240048B68E0EC9942C0676902A0E55262403F5B62C0ED9942C09B6053AFE3526240964FD5C0F19942C00102000000030000009B6053AFE3526240964FD5C0F19942C0417452A9E3526240D75537CDF19942C0927F37A7E3526240AC7128D1F19942C0010200000007000000927F37A7E3526240AC7128D1F19942C02C29779FE3526240A2CCABDFF19942C07A281B20E2526240DD9CA5BFF29942C02DA814E0E052624072ECEA9FF19942C0E0247266E0526240CBD58F4DF29942C043B40C27DF5262409574DE10F49942C09737634FDB5262408DBADC19F79942C00102000000030000009737634FDB5262408DBADC19F79942C0D75DEA31DB5262403A652431F79942C07D879512DB526240FAED9149F79942C00102000000080000007D879512DB526240FAED9149F79942C0388600E0D8526240277E3100F99942C0ACC8433AD752624027367A90F99942C0B771D586D4526240B504CF73FA9942C011D77B3BD3526240A3C7EF6DFA9942C08B040940D2526240C10EAD5FFA9942C05803EF3FCD526240277E3100F99942C046820420C9526240186D9F9FF39942C00102000000020000004
 6820420C9526240186D9F9FF39942C0D57036C2C7526240A85BD141F29942C0010200000005000000D57036C2C7526240A85BD141F29942C071AE6186C6526240907B5F01F19942C0251D8AA7C3526240FCC1C073EF9942C009FCE1E7BF526240398ABD61EC9942C02A8F5209BF52624037BA7889EB9942C00102000000030000002A8F5209BF52624037BA7889EB9942C080327CFABE52624058BD0D7BEB9942C0E324EAE8BE52624054FD7669EB9942C001020000000A000000E324EAE8BE52624054FD7669EB9942C02B2FF99FBC52624053AAE91FE99942C08C6E1860BA526240142928A0E49942C007FE0120B85262407707C25FDD9942C08D77EC0CB852624018755204DD9942C0EAA5738FB6526240875DCAAFD59942C09149A187B5526240F6A79E16CD9942C05C4DE83FB5526240C2E2CB9FCA9942C01D9D0480B4526240CD3F55E0BF9942C01D9D0480B452624013DD6921B79942C001020000000F0000001D9D0480B452624013DD6921B79942C0F72B5382B4526240690712CAB19942C091D6732DB5526240824CD7B8A39942C07610E099B55262404533AA679C9942C0F66DD27EB552624096027745959942C05F5BE443B5526240265305A3929942C0BB1006F9B4526240B583B641929942C01853FA53B45262403EDD8A0E929942C0BCB77DEAB35262405B66C7FC929942
 C07702AB34B35262402A60F18A969942C0B0822914B3526240B678C25C9C9942C0A54DD53DB25262407B832F4CA69942C0B365AF2DB252624063F9A9E0A69942C05E5CF45FB152624053EB5800AE9942C096804EF7B0526240DB807456B09942C001020000000400000096804EF7B0526240DB807456B09942C02891E975B05262405768D608B39942C0A68AF381AE526240E645DC52BD9942C00CDD9867AE526240D44A0AF5BD9942C00102000000030000000CDD9867AE526240D44A0AF5BD9942C04138B066AE5262402DF2A1FABD9942C01E8BE95DAE526240F4112D30BE9942C001020000001B0000001E8BE95DAE526240F4112D30BE9942C04BDB0940AD52624018B14F00C59942C0FB7A1920AC526240FC2257A0CC9942C0ECAAF69FAB52624024343800D19942C034153D4BAB526240632BC313D59942C0016C9B3DAB526240335F6FACD59942C0F02EBC37AB52624074345882D69942C0C66AF3FFAA52624053A7A89FDC9942C013EBF93FAC526240828AAA5FE99942C01B125212AD526240E5852AEBED9942C01EBEF15AAE5262406532C115F59942C0ED1C14DEAF526240DE077B6EFC9942C081EDBB7DB15262400E959059079A42C0CC1D47BDB1526240FC993050089A42C0EE04FBAFB35262404B4C61EF0F9A42C041A49531B4526240080FE4EA119A42C0217DEE5FB4526
 2409DB415A0129A42C07FAD0100B652624032970AE01C9A42C0E39DE85FB75262405DC94400269A42C018AE0E80B8526240364B13002D9A42C0922EEC1FBA526240F3AB3940309A42C02E0FE37FBC52624046EC1340319A42C013BF1880BC52624046EC1340319A42C003E0E9DFBF5262400B1C1A60309A42C0A344A6D7C15262406B589DE62E9A42C09CE0F65FC2526240D009A1832E9A42C0E98E0FC4C3526240E24680892E9A42C0010200000053000000E98E0FC4C3526240E24680892E9A42C09B36E334C45262405F06088B2F9A42C0D11B936AC4526240D5085806309A42C04AE4277AC55262401C0B0A83329A42C05FB939F0C552624066F2CD36379A42C05F5A796EC65262401CB85E2E3D9A42C094111780C65262408D3FF61F3E9A42C097F10060C65262406110FD7F419A42C0748E4B66C6526240A2410A9E429A42C053399270C652624082BA922E479A42C0ACAF09C4C6526240C25B316D499A42C0C111EEDFC6526240C8A29F5F4A9A42C0E751F17FC75262409CE337E04E9A42C0F901FEDFC752624026D6F37F589A42C0DEB133E0C7526240BB95CA80589A42C0E1911DC0C75262407D51CC8B5D9A42C0B8150CF8C65262404184132C699A42C065BE28E6C552624072A7CF69719A42C095174FF3C4526240F211E797779A42C01661D4FFC3526240959460167F9A42C0
 10035DFBC2526240C4BF19468B9A42C058288870C2526240FC71FBE5939A42C085E6DFD3C152624053B4CDE8A29A42C0C1D31A39C15262408946D2C9AD9A42C0BB44F5D6C0526240A8120AB6B69A42C0A9F00CBFC05262407E8D2441B89A42C053CDACA5C0526240593B40E6B99A42C032D7B331C052624068EA758BC09A42C0CDE33098BF5262409FE40E9BC89A42C0B323D577BE526240665710B9CF9A42C08D11E4FBBD526240D590B8C7D29A42C066FFF27FBD5262407B25DA9FD59A42C0E057F66EBD526240B094C041D69A42C07FA31D37BC526240CABD65F3DD9A42C0D3A7B0ADBA526240D2F1E20EE59A42C0E089B4E8B85262406AE67FA8EA9A42C03C4272D7B752624078F1D995F19A42C0C6CCF401B7526240F783CB74F99A42C01FCDA2C1B7526240D57A1A8B019B42C0E0A0BDFAB85262405070B1A2069B42C0001E51A1BA5262405890C1E50C9B42C0ED7E15E0BB526240B524F6BF129B42C0169F0260BC526240C4C5F6FF169B42C040BFEFDFBC5262400447B87F1B9B42C0A1CFEC5FBE52624013584AE0209B42C072906B9EBE5262406BB180AE229B42C0A7A32DF8BE5262403AC54F88259B42C006F1811DBF5262403B4ACA822E9B42C0C52F0620BF526240A06B5F402F9B42C0ADED3724BF526240E7A15B54309B42C00F327F3BBF5262407286E28E379B42C0FA87E
 3AFBF526240B177352F3D9B42C0EB6F09C0BF52624075CF15003E9B42C011B00C60C0526240EF906280449B42C049A01C60C15262400ED363004D9B42C05E3013A0C152624035E44460519B42C05E3013A0C1526240B4E6C75F5A9B42C03DF262BCC1526240ACE9D55B5E9B42C0C0A26CDBC1526240B56B425A639B42C073C009E0C15262402A3410CB669B42C073C009E0C1526240CF7A42C06B9B42C049A01C60C1526240849CF7FF719B42C03BD0F9DFC05262402D3E05C0789B42C01490F63FC05262405900AEBF809B42C000000000C05262402D414640859B42C003E0E9DFBF5262408F2221808A9B42C000000000C05262402DD4F59F909B42C011B00C60C052624015F7C4DF9B9B42C0CDF79D70C0526240AF9BAD179E9B42C0A994E876C0526240F5132928A09B42C0B2A7D370C052624072BF4351A09B42C0DC9FE63FBF5262401DC9E53FA49B42C05DE6CF12BF526240A04BDD3AA49B42C05491651CBE52624064613E0FA49B42C00417D0B0BD5262400573AA6BA39B42C03AFF1B20BD526240A728F27FA29B42C0DEAEF25FBB52624040964FA0999B42C007FE0120B8526240E613C31F8F9B42C07EECE4C2B752624087F71C588E9B42C02B39DD68B652624012B985538B9B42C0D4FCE71FB352624055E2957F889B42C0EA9BEA7FAF526240FEF0F3DF839B42C0593F0B9EAD
 5262409DE4954F809B42C0
+01050000007B00000001020000000200000035BEE5A0FA486240785C548B887F42C00619B787F34962403A8D599B6B7A42C0010200000002000000A5AE6B6A0F516240EE23B726DD9B42C01BAA5D670F516240D165B130DD9B42C00102000000040000001BAA5D670F516240D165B130DD9B42C06AB3FB9F0D516240B6F81400E39B42C01A530B800C5162405AE95A20E69B42C01336CF150C5162401D566AF4E69B42C00102000000030000001336CF150C5162401D566AF4E69B42C06BB933130C516240EFBC9EF9E69B42C062B933130C51624000BD9EF9E69B42C001020000000500000062B933130C51624000BD9EF9E69B42C0984979520B516240D6468666E89B42C07DCB9C2E0B516240CB3CA87AE89B42C084013A820A516240E80D9CD8E89B42C01820D1040A516240946B651DE99B42C001020000000A0000001820D1040A516240946B651DE99B42C09FCA694F0951624012D5004AE89B42C0E47107A00751624072593B40E69B42C0891E42A6065162404ACC58D9E39B42C09D9ACB0D065162408C930C4AE29B42C03909A52F045162409BF749FFDC9B42C0B159E48D025162401A738D85D79B42C00B7A6F0C01516240F2A32B22D49B42C0EB6F09C0FF5062403BA41820D19B42C02D3185BDFF506240DC9BDF30D19B42C00102000000040000002D3185BDFF506240DC9BD
 F30D19B42C059A725B1FF506240ADE93015D19B42C027744D37FF5062407BE35AA3D49B42C04562821AFE506240158843DBD69B42C001020000000B0000004562821AFE506240158843DBD69B42C0ED7E15E0FB5062404055E0BFD49B42C0B86EEFBFFA506240A654D33FD29B42C0575EF23FF950624011058E5FD39B42C0A74E513FF95062406403E962D39B42C039002C3CF950624022426D65D39B42C08DA262F7F85062409F8B2BD3D49B42C0041E1840F8506240F0355F80D89B42C03B878D0DF8506240857F6CEDD89B42C0E0BDFE7FF75062404F667220DA9B42C04333F4F4F650624017A99C9BDB9B42C00102000000350000004333F4F4F650624017A99C9BDB9B42C0E4FF441BF6506240C48A64D9DD9B42C0B2423635F5506240F3C64961DE9B42C0E1CC0AA0F35062400518963FDF9B42C081BC0D20F250624057C80160E19B42C0266CE45FF050624048BAB07FE89B42C05D8B16A0ED506240100E51E0F89B42C0D81A0060EB5062406ED113E0059C42C03B3A0900E9506240F73361A0109C42C0676902A0E55062406E6704C01D9C42C052DCA799E450624070D014F0219C42C085121C4DE45062404DF4F928239C42C09164B1A8E3506240FF64E7C8259C42C0FA6B68B9E25062407389D981299C42C0ABCC94D6DF506240F9F8DFA52F9C42C09274CDE4DB506240904369
 14379C42C0029EB470D9506240828F77FD389C42C097491E99D85062400CFDB8A2399C42C01426E71FD8506240950ED6FF399C42C09F038184D75062404DA48F543A9C42C08119F8F6D3506240C977842E3C9C42C0EB54F99ED1506240A68D34023B9C42C0FE55911BCF506240859BE7E3359C42C0D66C8A6CCC506240AD61D0532E9C42C04285D9BACA5062409745178A2A9C42C006E92972C850624074EB353D289C42C0264A8CAFC7506240FED478E9269C42C0C528BE90C45062407D6DA23B2D9C42C0D4EBBBC7BE506240EB556474409C42C08B0CBCA4BB506240F5E681D94E9C42C0D18547D1B95062408EB344C2529C42C025BE24DFB6506240A3C38DA5599C42C074925275B45062400A3AC6BA5D9C42C05A907758B2506240A0DFF76F5E9C42C0058DF4FDAF506240E6F516C5619C42C0081566EBAA506240D29B9B80709C42C02EA4688AA5506240443B5DCC859C42C06FF3C649A150624019575C1C959C42C09AACF6559E506240BBE70A009F9C42C028F5C0229A5062408E9B7521B19C42C0B04C09D2965062406ED5BF35C19C42C0B75D68AE9350624077D66EBBD09C42C098593AD5905062405D5727C2E19C42C0CFA67E398E5062402627C929F09C42C0C194DCBC8C50624096EB23A6FA9C42C0C19A14308B506240DE10F461079D42C09F292AD188506240F4DF394A149
 D42C0A0B998B08750624028DB1BD71A9D42C099428C7C83506240AC8FE2772E9D42C08E9DA68581506240A56D57433D9D42C02AE4A5F67D5062405930F147519D42C0178B95877B506240D91F8370609D42C0AD6A49477950624055F08057709D42C0010200000003000000AD6A49477950624055F08057709D42C0575EF23F79506240266CE45F709D42C042E504127950624061F426D0719D42C001020000001400000042E504127950624061F426D0719D42C0FDD071DA785062407630BD58739D42C011001C7B765062404767AA71809D42C03521527875506240791AD58E879D42C0D9CAF044755062405494A69C8A9D42C0322DFBBF745062408014D09F919D42C0217DEE5F7450624093D629A09A9D42C00CEDF71F7450624083CB1940AE9D42C0924FD9FA7350624020915B38B59D42C06BB015D973506240BED29E37BA9D42C0577FDF1A7350624083C366DBC49D42C0A8FC10C0725062408712D2BFC99D42C016EF117B72506240CD9EBAA8CC9D42C05E73FD717150624056D3F544D79D42C025242DF07050624031D7FDBEDA9D42C0266CE45F70506240B2D7BB3FDE9D42C0BE535CB06F50624045B9347EE19D42C083B174F46E506240D89AADBCE49D42C0FDB0EFD46D5062402F5E3D38E99D42C04E9702B96C506240E3BD498EEB9D42C00102000000030000004E9702B96C
 506240E3BD498EEB9D42C0B15EFBB86C506240B7F3588EEB9D42C0A97FE2B66C506240C7B18A92EB9D42C0010200000003000000A97FE2B66C506240C7B18A92EB9D42C0D53A16806B5062406E3B2300EE9D42C0C68DB8D36A5062405EB86C75EF9D42C0010200000003000000C68DB8D36A5062405EB86C75EF9D42C002E264D16A506240A3BE767AEF9D42C05FD945CF6A506240E4AFAD7EEF9D42C00102000000030000005FD945CF6A506240E4AFAD7EEF9D42C0ACC1A0F169506240C6600F37F19D42C0A478A4056850624056DAF004F39D42C0010200000003000000A478A4056850624056DAF004F39D42C05F5B3FFD675062405A76D20CF39D42C0AF0008F56750624015362214F39D42C0010200000012000000AF0008F56750624015362214F39D42C0F199EC9F67506240E88CDE5FF39D42C0648918C065506240C52CC59FF29D42C0025CDABA65506240AEEAF6A3F29D42C0AE5D7FB765506240846B49A2F29D42C089B08630635062407DEA58A5F49D42C01E8D9EB661506240AAE683AFF99D42C07171546E62506240647DB905019E42C0A44808A062506240A5F04520039E42C0170912806450624013C25900099E42C0AABF14D466506240691D554D109E42C0EC0AC73D6750624033326DA4119E42C0C7A1D9D068506240B3FEE08D169E42C0E7F05A536A50624055C3D
 9081F9E42C094933FCE6A506240815DA857259E42C0DBFAE93F6B506240CC9A58E02B9E42C0D53A16806B5062401EDE7360399E42C028B284626B50624001BD1ABC409E42C001020000000300000028B284626B50624001BD1ABC409E42C06DDAD6606B506240C1BC1127419E42C0240012606B50624012B85B5B419E42C0010200000005000000240012606B50624012B85B5B419E42C0D81A00606B50624049A01C60419E42C0C66AF3FF6A50624069E21DE0499E42C08E7AE3FF695062402AF40BC0509E42C0B5A91501695062409456D7FC539E42C001020000000E000000B5A91501695062409456D7FC539E42C0A2F4E04966506240279AACF6559E42C0828E56B56450624099E5FC5E549E42C00839EFFF635062400B45BA9F539E42C0EBC6BB236350624041A66BDC519E42C0F2D1E28C61506240E34D7E8B4E9E42C0DE5E2DD25F506240A456F3774A9E42C0BBE70A005F5062403A92CB7F489E42C032970AE05C5062401281EA1F449E42C03B5409055B50624061527C7C429E42C0E6EB8DB55A50624061F65734429E42C0D83274475A5062409723BFD9419E42C04C16F71F595062405620C4DF409E42C0F609A01859506240809F71E1409E42C001020000000C000000F609A01859506240809F71E1409E42C085AD7E11595062406D6292DB409E42C0FDE6B45D57506240E3
 36D032419E42C079DD223056506240F581E49D439E42C0C686133D55506240280D350A499E42C0A2F8E75854506240A8774C384F9E42C013550960545062401950148D5A9E42C01355096054506240E333D93F4F9E42C04E250340555062402E122400499E42C08615134056506240B3C068A0439E42C0D67503605750624032303C40419E42C0F609A01859506240809F71E1409E42C001020000000E000000F609A01859506240809F71E1409E42C02207DB3E5A506240F02609D3419E42C0AB460AC05A50624085701640429E42C05DC0CB0C5B5062409C0E0984429E42C0867E5CD15C5062401281EA1F449E42C058BACCFA5E506240E793707C489E42C01F20A9CF5F506240921914724A9E42C054E8178061506240C0D3BF7F4E9E42C041D3122B63506240B81E85EB519E42C066583101645062400540CBA9539E42C005114EB0645062401C68F459549E42C08DA90540665062408DD5E6FF559E42C03B3A090069506240E7543200549E42C0B5A91501695062409456D7FC539E42C0010200000007000000B5A91501695062409456D7FC539E42C0D923D40C69506240C3DA73F4539E42C0A6D3BA0D6A506240FA6F6FC8509E42C00B3A6B016B506240EC6415DB499E42C0F36ACA5F6B506240449B2D6A419E42C0D81A00606B506240731FCA61419E42C0240012606B50624012B
 85B5B419E42C0010200000004000000240012606B50624012B85B5B419E42C0BDCA35606B50624014E97E4E419E42C0E749E3616B506240145F48E2409E42C028B284626B50624001BD1ABC409E42C001020000001100000028B284626B50624001BD1ABC409E42C0FDB9C3816B5062404E621058399E42C0AE84494C6B506240E8E115D22B9E42C00E034CCF6A506240CF561465259E42C0A02AF05F6A506240F0879FFF1E9E42C03E1AF3DF68506240D1459E7F169E42C0184D1D9A68506240782EE7AD159E42C0C5991540675062404A743BA0119E42C0C201E3CF665062401B24E93F109E42C08E812B8F645062405A88C4F3089E42C07DD756A262506240D574E217039E42C080A0377062506240C4B30419019E42C069780EC0615062409EAE939FF99D42C0CA880B4063506240006D50A0F49D42C0E70B10BB65506240AEEAF6A3F29D42C007CEBE97675062400C079D6BF39D42C0AF0008F56750624015362214F39D42C0010200000003000000AF0008F56750624015362214F39D42C095FBD3FC675062405A76D20CF39D42C0A478A4056850624056DAF004F39D42C0010200000003000000A478A4056850624056DAF004F39D42C08E7AE3FF695062402B9C4940F19D42C05FD945CF6A506240E4AFAD7EEF9D42C00102000000030000005FD945CF6A506240E4AFAD7EEF9D42
 C0E7919AD16A5062400EFF9F79EF9D42C0C68DB8D36A5062405EB86C75EF9D42C0010200000003000000C68DB8D36A5062405EB86C75EF9D42C08A66AF886B5062404FF4650EEE9D42C0A97FE2B66C506240C7B18A92EB9D42C0010200000003000000A97FE2B66C506240C7B18A92EB9D42C0BC7FE2B66C5062409FB18A92EB9D42C04E9702B96C506240E3BD498EEB9D42C00102000000140000004E9702B96C506240E3BD498EEB9D42C0711B0DE06D5062406B1ACA3FE99D42C0C17BFDFF6E5062402B9908C0E49D42C01D739EB16F506240337C5578E19D42C08294336F7050624064DE4F32DE9D42C0ABB420EF70506240D8D3B3C5DA9D42C05B7C0A8071506240D955ED3FD79D42C0AAAEE87B72506240FD2257A0CC9D42C0309B00C372506240C2CE5EC7C99D42C04850FC18735062404835ECF7C49D42C0F75C01E0735062408F4E0240BA9D42C077FF0EFB73506240BB55212FB59D42C006E8082A74506240F4103235AE9D42C0D08C8F60745062400A4F43AF9A9D42C013E63DCE74506240F78CE9AE919D42C029BB4F4475506240B9CFE0A58A9D42C0568D14807550624002A2BB7F879D42C0A7CDEE7F765062402920ED7F809D42C02A5E1BE078506240B3EC4960739D42C042E504127950624061F426D0719D42C001020000000200000042E504127950624061F426D0719
 D42C0AD6A49477950624055F08057709D42C0010200000024000000AD6A49477950624055F08057709D42C05E3013A081506240E3C9C91F679D42C05F01F15F85506240D746E11F5B9D42C031F20DE0885062402222EB5F489D42C0B9420E008B50624079ED2D40369D42C04473F8FF8C5062404E250340159D42C0B73302E08E506240FCE1E7BF079D42C08FE4F21F9250624013BF1880FC9C42C0756506E0955062400CEDF71FF49C42C088BA0F40AA506240F1C5CD5FD79C42C0D32B0A60AF506240C9213DA0C79C42C05B7C0A80B1506240B63643609B9C42C0EE8B95E2B4506240C89EF3098F9C42C0BB270F0BB550624074E84F768E9C42C0B2AE1B00BB5062402D3E05C0789C42C0EB6F09C0BF5062408C68965F619C42C0D1C1FA3FC7506240F5F53240589C42C068A4EF7FD1506240DC61B8DF469C42C04B451960D5506240DACE08803B9C42C01D818989D75062408F650B523A9C42C0D3646B22D8506240534D5A023A9C42C00EA8925CD95062408FC7670D399C42C0FAA6FADFDB506240B4BD2720379C42C0F5B704E0DF506240E7BB00A02F9C42C0BAB8E8BFE25062404A0A2C80299C42C0D63329AAE3506240EC2708C3259C42C07DC2D9ADE55062401A69A9BC1D9C42C02A14330CE95062405C6F9BA9109C42C0D215116AEB5062408C18D1D1059C42C0EA45FEAAED5062
 404BCADDE7F89B42C052F98D65F0506240D1419770E89B42C0DAD6602BF2506240F28CC756E19B42C0002BD1A3F3506240E7D0D84DDF9B42C00E547C32F55062401D46F762DE9B42C07CCD1720F65062406B871AE0DD9B42C04333F4F4F650624017A99C9BDB9B42C00102000000090000004333F4F4F650624017A99C9BDB9B42C0289B7285F750624025E7C41EDA9B42C04E098849F85062400E7D1C72D89B42C0CB55E2F0F8506240753A90F5D49B42C08CFE863FF95062406403E962D39B42C026BD14C3FA5062405F8E684CD29B42C0E14625D0FB506240FE9364C2D49B42C01CE3D418FE50624068869EDED69B42C04562821AFE506240158843DBD69B42C00102000000040000004562821AFE506240158843DBD69B42C08D3FF61FFE50624092054CE0D69B42C0DC9FE63FFF50624028E5FF9FD49B42C02D3185BDFF506240DC9BDF30D19B42C001020000000A0000002D3185BDFF506240DC9BDF30D19B42C0086C7308015162408E68F118D49B42C09A000D80025162400936AE7FD79B42C01281EA1F045162402FB72000DD9B42C08641F4FF055162409298FB3FE29B42C0382EE3A606516240724B06DBE39B42C0B1C8659207516240C5579643E69B42C03D9D2B4A0951624000982144E89B42C08152FEFF0951624053AAE91FE99B42C01820D1040A516240946B651DE99B4
 2C00102000000050000001820D1040A516240946B651DE99B42C0A0BEC0070A516240E869C020E99B42C0E2EFCD250B51624048BAB07FE89B42C0CBF21A600B516240304AD05FE89B42C062B933130C51624000BD9EF9E69B42C001020000000300000062B933130C51624000BD9EF9E69B42C029F8B7150C516240723F96F4E69B42C01336CF150C5162401D566AF4E69B42C00102000000040000001336CF150C5162401D566AF4E69B42C035A3D57F0C5162407E63192CE69B42C09C5C9DAD0D516240B6F81400E39B42C01BAA5D670F516240D165B130DD9B42C00102000000040000001BAA5D670F516240D165B130DD9B42C010EF94690F516240AB623B29DD9B42C0DD7305800F516240184740E0DC9B42C0A5AE6B6A0F516240EE23B726DD9B42C001020000000400000073FB9B06FB5262400567953E199D42C06B72E778FB5262406CC8E479159D42C0169F0260FC52624075A334400E9D42C0169F0260FC526240E90E62670A9D42C0010200000006000000169F0260FC526240E90E62670A9D42C0525B8F67FC5262404FB2309F079D42C0383C73C5FB5262400633011A009D42C071AB2006FA526240AB76F28EF89C42C0E5A210B7F9526240E08FEC5BF79C42C0579710B7F9526240AD61EC5BF79C42C0010200000002000000579710B7F9526240AD61EC5BF79C42C09FD2
 36B6F9526240C0AB8558F79C42C00102000000180000009FD236B6F9526240C0AB8558F79C42C0F54DF5BFF7526240B5FB5580EF9C42C0CF9AC4C5F65262409FC5F76AEC9C42C01AB7E22CF6526240D0C59569EA9C42C0C8DB0022F3526240840CE4D9E59C42C0E4C40DAEEF52624081334289E09C42C0A026440AEF526240F7C500E4DF9C42C0287BF07FEC5262405F97E13FDD9C42C0121A1C80E852624052A7A89FDC9C42C0CE4AA47EE8526240E8667FA0DC9C42C09CDB847BE5526240B4A1AC29DA9C42C0DCAEE133E3526240993E856DD59C42C06BCB25FAE15262401EB97F76D19C42C03953324AE1526240B2B15C80C79C42C0E5F27A8BE2526240D18547D1B99C42C07F52488DE4526240AA80D657B29C42C0235D33F9E65262408C721F6FA89C42C010178046E9526240B4249B06A09C42C051F70148ED526240186BC9F4959C42C0DD297865F2526240D5D6E3198F9C42C0819B2045F8526240B95917128B9C42C0BAB59613FE52624090566B17899C42C0EE4FF39FFF52624002124DA0889C42C0B4E186C20253624073FA6E54899C42C0010200000003000000B4E186C20253624073FA6E54899C42C0770778D20253624055F60258899C42C032B540D70253624065632B59899C42C001020000000500000032B540D70253624065632B59899C42C0FCED57A604536240D1F
 D41C9899C42C069CB14CE095362403605323B8B9C42C01A530B800C536240D6E253008C9C42C01D5B0BC90D53624083D659A48C9C42C00102000000030000001D5B0BC90D53624083D659A48C9C42C0938ECDE90D536240D6C8AEB48C9C42C07DFCE9F90D536240AEAFF2BC8C9C42C001020000000F0000007DFCE9F90D536240AEAFF2BC8C9C42C0DFEB5A31125362405C30B8E68E9C42C0102D681015536240F1A19F04919C42C028CA4A38195362406C216D88969C42C0D19D16721B536240CE3CCAD2989C42C03B037EE81D5362403ABF72CE999C42C0DCFF6C5020536240ED69E278999C42C09E5DBEF5215362404DEE1C6F979C42C0CA856F0624536240E0505326909C42C0B700D99024536240373FB445889C42C023168CA5235362405B40683D7C9C42C05F62878C22536240C6B99745729C42C093A1CFEC1F536240F4763A46689C42C08284CDA51D5362404BBB873A629C42C0D7E7209E1B5362406D0CF093599C42C0010200000013000000D7E7209E1B5362406D0CF093599C42C0E61604A01B5362407916CE7F599C42C05EC6038019536240B45318004F9C42C0F8D51C20185362402A615C60459C42C01EC6A4BF1753624025F213BD429C42C089658E4017536240AAF644323F9C42C0242A54371753624010F0FF3E3E9C42C0C3C5F6FF16536240D81D41E0379C42C08C
 2E6F0E17536240270FB0FB339C42C02721472917536240B8AD2D3C2F9C42C079D1B249195362404BE88942269C42C0AD93E9861C5362403868AF3E1E9C42C073C57BC41E536240EE2AFFB5179C42C0405E59B31F53624019E42EC2149C42C05AA8EB3F21536240D4D347E00F9C42C0B6F8140023536240E822CF3F0B9C42C01518570123536240412619390B9C42C059E7CE02235362405A68E7340B9C42C067919A532353624047F40262099C42C001020000000300000067919A532353624047F40262099C42C0473426692353624078CF81E5089C42C05570EB7223536240D1AE8EAD089C42C00102000000040000005570EB7223536240D1AE8EAD089C42C01AE9FB5F24536240D3D00660039C42C055B9F53F25536240FC4E3860FC9B42C0A2FEEF7325536240734F8D6AF89B42C0010200000003000000A2FEEF7325536240734F8D6AF89B42C046CF2D74255362402CCBD765F89B42C055733674255362408FF14B65F89B42C001020000000300000055733674255362408FF14B65F89B42C0F451FCCE2553624095A828A8F29B42C06903899225536240E136F4D0EA9B42C00102000000030000006903899225536240E136F4D0EA9B42C034C0609225536240D554BBCBEA9B42C028C8389225536240B1B2DCC4EA9B42C001020000000300000028C8389225536240B1B2DCC4EA9
 B42C06A49EC7F255362400CEAB69FE79B42C06A49EC7F25536240B5824B6CE39B42C00102000000080000006A49EC7F25536240B5824B6CE39B42C031B2648E25536240F60604DFD99B42C0E3B55C472653624031D4BC3ECE9B42C0B76DCE7726536240B5EC5A8CCB9B42C0B4E908E026536240CAB1AB7FC69B42C01FFC1FBB26536240988EEF41BE9B42C04864C4AA26536240BA49B148B89B42C033824391265362403ADE5C8CB29B42C001020000000300000033824391265362403ADE5C8CB29B42C00D912E9126536240CE28A787B29B42C014C1199126536240AA35997FB29B42C001020000000400000014C1199126536240AA35997FB29B42C0A239FC7F26536240013BEDDFAB9B42C0676902A025536240BE0864C0A39B42C068DD7F43235362408F003EB19D9B42C001020000000300000068DD7F43235362408F003EB19D9B42C09CFB613A235362407A5AD9999D9B42C08042BB382353624093B483959D9B42C00102000000060000008042BB382353624093B483959D9B42C08C344CC822536240EC2F606E9C9B42C0A72E2AF320536240F98D65B0989B42C00A48FB1F205362408F256200979B42C07F1711201E53624021E4BCFF8F9B42C02B15B7931D536240D293414A899B42C00102000000030000002B15B7931D536240D293414A899B42C0EB9FF18E1D536240549A
 DE0F899B42C0C2BA9F8C1D536240069CD0F2889B42C0010200000019000000C2BA9F8C1D536240069CD0F2889B42C03C061A221D5362409382B8BC839B42C01AF67B621D5362400F817E3A799B42C00BF5AA841D536240224ECC1F789B42C094A707601E53624077ACBE5F719B42C05A07ACC120536240AE122C0E679B42C0D7C633C321536240CDF5C7C5629B42C04AE9995E2253624058EB7A585E9B42C0EFC80EE0235362400B45BA9F539B42C052D90B6025536240CEE11060479B42C06A183E2226536240F2D654713E9B42C0CFC6A58526536240EE3F321D3A9B42C0E3288AA12653624026378AAC359B42C0B4E908E0265362407C9BB45F2D9B42C05DC6A8C62653624045813E91279B42C016D22BAF2653624032EDF6B41E9B42C0EC246C8926536240BFE61C3C139B42C0A239FC7F26536240A583F57F0E9B42C08D92FC2D26536240DC60A8C30A9B42C0C9C452C92553624086E5CFB7059B42C0A725564623536240466A46ABFF9A42C0CD960744235362401EEB98A9FF9A42C0CA880B4023536240B9AF5EA0FF9A42C0E407F87F1F53624066FFF27FFD9A42C002EBBBE31D536240DA0DCFDAFC9A42C001020000000300000002EBBBE31D536240DA0DCFDAFC9A42C0EE0912DB1D5362408B9356D7FC9A42C02A3B08DB1D536240257A52D7FC9A42C00102000000240000002A3
 B08DB1D536240257A52D7FC9A42C0B75384E519536240EFA6B62FFB9A42C0EF33D362155362409320B7BAF79A42C0BB46263B1153624019A1E936F29A42C00D4059E70E536240D26AED22F19A42C005C314400C536240FC4BF7DFEF9A42C0C286A7570A536240FDDB65BFEE9A42C061DBA2CC06536240DAAF9696EC9A42C058C9C7EE025362403B2064B4E99A42C0F4F8BD4DFF5262400E38A682E59A42C052F932ACFD526240DCB28D89DE9A42C01A6B7F67FB52624035C703DBD29A42C02D697BAAF9526240E269430FC69A42C036AD1402F95262400F153EB6C09A42C02D3E05C0F85262409FEF0280BE9A42C007FE0120F8526240311BAE1FAC9A42C0915D0E60F65262406C58F89FA19A42C0D11CFE3FF352624005C655C0989A42C0EC55BF2DF35262403B21CF89989A42C04F47B6A9F0526240E569AFF4909A42C0773469AEEE526240AD557199899A42C0B0164449ED52624034C86EB0819A42C0106734A8EC526240A5D0C31A789A42C09348EC24EC526240159161156F9A42C01CE7DB27EC526240ADB0CF52689A42C0E643ABEEEC5262402E6695E35F9A42C0D4A46F2DEE526240FD42D9A5579A42C08297CFA8EF526240D28668194E9A42C084E4AE6FF1526240F581E49D439A42C0D4B7CCE9F25262401BB226BB3E9A42C00CEDF71FF4526240D0DECFDF3A9A42C0AC826275
 F552624039D6C56D349A42C0C908032AF75262403693CA6F2C9A42C081C6962FF95262408625D4C21B9A42C026E88AADFB526240729648580A9A42C0A05FB9A5FC526240FCFCF6B4029A42C0010200000003000000A05FB9A5FC526240FCFCF6B4029A42C007CC43A6FC5262405268B4B0029A42C0A36B13A8FC526240F9A11DA3029A42C0010200000003000000A36B13A8FC526240F9A11DA3029A42C0554FE61FFD526240C52F0620FF9942C0D41F065FFD52624090508E5DFD9942C0010200000011000000D41F065FFD52624090508E5DFD9942C0C2C8810DFE526240C847E6ECF89942C01B6A6F4BFF5262404EB4AB90F29942C0C4FBBB880053624062314514EE9942C0387A466C01536240BFD6A546E89942C0F6B8CA6E015362407A0E76D4E29942C0F47F5880005362404CF8A57EDE9942C06616FC91FD526240944E7F51DD9942C0274D83A2F9526240C8DF0731E19942C0704D70A0F6526240FC427EECE49942C06A1D0BC0F5526240AEB9A3FFE59942C06B65C22FF5526240317E1AF7E69942C0D1EEEB1BF35262401DBF0177EA9942C046A7F809F15262407A4501ECED9942C0F96B0D00F0526240CD6B36A0EF9942C0A7FD20DCEE5262401EDA22C4F09942C0608A808AEE5262406DD76815F19942C0010200000002000000608A808AEE5262406DD76815F19942C07BB80
 27DEE526240B6B5D722F19942C001020000000A0000007BB8027DEE526240B6B5D722F19942C0008E3D7BEE526240FBE99A24F19942C00F4D8F5CED526240BE9D9F3DF29942C0D5207134EC52624037D43950F19942C0BA63B14DEA5262400E5BC4C1EF9942C04273428DE7526240EC489AE4EC9942C04B862D87E75262403F47F5E7EC9942C0DA290C80E7526240048B68E0EC9942C0676902A0E55262403F5B62C0ED9942C09B6053AFE3526240964FD5C0F19942C00102000000030000009B6053AFE3526240964FD5C0F19942C0417452A9E3526240D75537CDF19942C0927F37A7E3526240AC7128D1F19942C0010200000007000000927F37A7E3526240AC7128D1F19942C02C29779FE3526240A2CCABDFF19942C07A281B20E2526240DD9CA5BFF29942C02DA814E0E052624073ECEA9FF19942C0E1247266E0526240CBD58F4DF29942C043B40C27DF5262409574DE10F49942C09737634FDB5262408DBADC19F79942C00102000000030000009737634FDB5262408DBADC19F79942C0D75DEA31DB5262403A652431F79942C07D879512DB526240FAED9149F79942C00102000000080000007D879512DB526240FAED9149F79942C0388600E0D8526240277E3100F99942C0ACC8433AD752624027367A90F99942C0B771D586D4526240B504CF73FA9942C011D77B3BD3526240
 A2C7EF6DFA9942C08B040940D2526240C10EAD5FFA9942C05803EF3FCD526240277E3100F99942C046820420C9526240186D9F9FF39942C001020000000200000046820420C9526240186D9F9FF39942C0D57036C2C7526240A85BD141F29942C0010200000005000000D57036C2C7526240A85BD141F29942C071AE6186C65262408F7B5F01F19942C0251D8AA7C3526240FDC1C073EF9942C009FCE1E7BF526240398ABD61EC9942C00A8F5209BF52624017BA7889EB9942C00102000000030000000A8F5209BF52624017BA7889EB9942C081327CFABE52624058BD0D7BEB9942C00725EAE8BE52624076FD7669EB9942C001020000000A0000000725EAE8BE52624076FD7669EB9942C02B2FF99FBC52624053AAE91FE99942C08C6E1860BA526240142928A0E49942C007FE0120B85262407707C25FDD9942C08D77EC0CB852624018755204DD9942C0EAA5738FB6526240875DCAAFD59942C09149A187B5526240F6A79E16CD9942C05C4DE83FB5526240C2E2CB9FCA9942C01D9D0480B4526240CD3F55E0BF9942C01D9D0480B452624013DD6921B79942C001020000000F0000001D9D0480B452624013DD6921B79942C0F72B5382B45262406A0712CAB19942C091D6732DB5526240834CD7B8A39942C07610E099B55262404533AA679C9942C0F66DD27EB552624096027745959
 942C05F5BE443B5526240265305A3929942C0BB1006F9B4526240B583B641929942C01853FA53B45262403EDD8A0E929942C0BCB77DEAB35262405B66C7FC929942C07702AB34B35262402A60F18A969942C0B0822914B3526240B678C25C9C9942C0A54DD53DB25262407B832F4CA69942C0B365AF2DB252624063F9A9E0A69942C05E5CF45FB152624053EB5800AE9942C095804EF7B0526240DB807456B09942C001020000000400000095804EF7B0526240DB807456B09942C02891E975B05262405768D608B39942C0A68AF381AE526240E545DC52BD9942C01CDD9867AE526240774A0AF5BD9942C00102000000030000001CDD9867AE526240774A0AF5BD9942C04238B066AE5262402DF2A1FABD9942C0208BE95DAE526240E9112D30BE9942C001020000001B000000208BE95DAE526240E9112D30BE9942C04BDB0940AD52624018B14F00C59942C0FB7A1920AC526240FD2257A0CC9942C0ECAAF69FAB52624024343800D19942C034153D4BAB526240632BC313D59942C0016C9B3DAB526240335F6FACD59942C0F02EBC37AB52624074345882D69942C0C66AF3FFAA52624052A7A89FDC9942C013EBF93FAC526240828AAA5FE99942C01C125212AD526240E6852AEBED9942C01EBEF15AAE5262406532C115F59942C0ED1C14DEAF526240DE077B6EFC9942C081EDBB7DB1
 5262400E959059079A42C0CC1D47BDB1526240FC993050089A42C0EE04FBAFB35262404B4C61EF0F9A42C040A49531B4526240080FE4EA119A42C0217DEE5FB45262409DB415A0129A42C07FAD0100B652624032970AE01C9A42C0E39DE85FB75262405DC94400269A42C018AE0E80B8526240364B13002D9A42C0922EEC1FBA526240F3AB3940309A42C02E0FE37FBC52624046EC1340319A42C013BF1880BC52624046EC1340319A42C003E0E9DFBF5262400B1C1A60309A42C0A344A6D7C15262406B589DE62E9A42C09DE0F65FC2526240D009A1832E9A42C0E98E0FC4C3526240E24680892E9A42C0010200000053000000E98E0FC4C3526240E24680892E9A42C09A36E334C45262405F06088B2F9A42C0D11B936AC4526240D4085806309A42C049E4277AC55262401C0B0A83329A42C05FB939F0C552624066F2CD36379A42C05F5A796EC65262401CB85E2E3D9A42C094111780C65262408D3FF61F3E9A42C098F10060C65262406110FD7F419A42C0748E4B66C6526240A2410A9E429A42C053399270C652624082BA922E479A42C0ACAF09C4C6526240C15B316D499A42C0C111EEDFC6526240C8A29F5F4A9A42C0E751F17FC75262409CE337E04E9A42C0F901FEDFC752624026D6F37F589A42C0DEB133E0C7526240BB95CA80589A42C0E1911DC0C75262407D51CC8B5D9A4
 2C0B8150CF8C65262404184132C699A42C065BE28E6C552624071A7CF69719A42C095174FF3C4526240F211E797779A42C01661D4FFC3526240959460167F9A42C010035DFBC2526240C4BF19468B9A42C058288870C2526240FC71FBE5939A42C085E6DFD3C152624053B4CDE8A29A42C0C1D31A39C15262408946D2C9AD9A42C0BB44F5D6C0526240A8120AB6B69A42C0A9F00CBFC05262407E8D2441B89A42C053CDACA5C0526240593B40E6B99A42C033D7B331C052624068EA758BC09A42C0CCE33098BF5262409FE40E9BC89A42C0B323D577BE526240665710B9CF9A42C08D11E4FBBD526240D590B8C7D29A42C066FFF27FBD5262407B25DA9FD59A42C0DF57F66EBD526240B094C041D69A42C07FA31D37BC526240CABD65F3DD9A42C0D3A7B0ADBA526240D2F1E20EE59A42C0E089B4E8B85262406AE67FA8EA9A42C03C4272D7B752624078F1D995F19A42C0C6CCF401B7526240F783CB74F99A42C01FCDA2C1B7526240D67A1A8B019B42C0E0A0BDFAB85262405070B1A2069B42C0001E51A1BA5262405890C1E50C9B42C0ED7E15E0BB526240B524F6BF129B42C0169F0260BC526240C3C5F6FF169B42C040BFEFDFBC5262400447B87F1B9B42C0A0CFEC5FBE52624013584AE0209B42C072906B9EBE5262406BB180AE229B42C0A7A32DF8BE5262403AC54F88259B42C006
 F1811DBF5262403C4ACA822E9B42C0C52F0620BF526240A06B5F402F9B42C0ADED3724BF526240E7A15B54309B42C00F327F3BBF5262407286E28E379B42C0FA87E3AFBF526240B177352F3D9B42C0EB6F09C0BF52624075CF15003E9B42C011B00C60C0526240EF906280449B42C049A01C60C15262400ED363004D9B42C05E3013A0C152624034E44460519B42C05E3013A0C1526240B4E6C75F5A9B42C03CF262BCC1526240ACE9D55B5E9B42C0C1A26CDBC1526240B56B425A639B42C073C009E0C15262402A3410CB669B42C073C009E0C1526240CF7A42C06B9B42C049A01C60C1526240849CF7FF719B42C03BD0F9DFC05262402D3E05C0789B42C01490F63FC05262405900AEBF809B42C000000000C05262402D414640859B42C003E0E9DFBF5262408F2221808A9B42C000000000C05262402DD4F59F909B42C011B00C60C052624015F7C4DF9B9B42C0CDF79D70C0526240AF9BAD179E9B42C0A994E876C0526240F6132928A09B42C0B2A7D370C052624072BF4351A09B42C0DC9FE63FBF5262401DC9E53FA49B42C05DE6CF12BF526240A04BDD3AA49B42C05491651CBE52624063613E0FA49B42C00417D0B0BD5262400573AA6BA39B42C03AFF1B20BD526240A728F27FA29B42C0DEAEF25FBB52624040964FA0999B42C007FE0120B8526240E613C31F8F9B42C07EECE4C
 2B752624088F71C588E9B42C02A39DD68B652624012B985538B9B42C0D4FCE71FB352624055E2957F889B42C0EA9BEA7FAF526240FEF0F3DF839B42C0593F0B9EAD5262409DE4954F809B42C001020000006E000000E23362A581526240000000E04F9D42C0C30C8D2782526240C0153F7C4F9D42C072A02C2184526240A891F1834E9D42C0C1E677F5855262406083CF204F9D42C09CF0B7E287526240DBFF5B24489D42C0E412471E88526240FEB220393E9D42C0430477FB8752624031F378B5379D42C0853BBC8C875262408D3CB59F319D42C0C4398F2F86526240076B52C02C9D42C088552877845262400392B06F279D42C0BB0166BE835262400B896A00259D42C09F477B728352624030E186CE219D42C081D2AB5C83526240BA5A385A1F9D42C03A0C416983526240BC440603199D42C0E946585484526240755B7DD00E9D42C0DC0BCC0A85526240D2EC702A089D42C04DD87E3286526240339C7CC4F99C42C0447DDCC8865262407BE9DCA3ED9C42C008371955865262409663682BE59C42C056BD570886526240128A085ADC9C42C021938C9C855262408CA438A2D69C42C0C4AF58C385526240D634947FD29C42C02B4CDF6B88526240B3D771B2C39C42C071659AFA8A526240D6E65A0FBA9C42C02640A8E68D52624058F047F6AD9C42C08CD99255915262402F7C8ED9A3
 9C42C033A7261C95526240F7C374C69C9C42C02971C2299852624022F36D66999C42C0BC7DB1529C526240A8E96976939C42C0317491E79F52624064DFBA078D9C42C00CC050D1A25262404527F0F3849C42C099B3E32BA65262400A26A36F779C42C0B98C9B1AA8526240E65AB4006D9C42C00B57AC86A952624043064DA6659C42C0B1A94E62AB526240827E95325F9C42C0486E4DBAAD526240793073CB589C42C0163A6524B1526240E2A9A2D34E9C42C089E0C9B8B35262405FFE5426469C42C0C776082DB5526240DC8C89833A9C42C0F0DB10E3B552624092DF47DA329C42C0DB8D999FB6526240B926EEC2209C42C0A3F611AEB6526240ED7DAA0A0D9C42C01CBFA6BDB7526240711706D1FF9B42C04877C6ADB852624036864A6DF39B42C030044A54B95262409F55664AEB9B42C0F45B2A25BA5262404C0C1357DF9B42C09D6340F6BA5262405D3A41F6D59B42C0A09F4E1EBB526240C2EB4493D59B42C0DE639FB6BC526240298F13CBD29B42C004FD2A65BE526240AAE8B413CA9B42C0A7751BD4BE52624085CFD6C1C19B42C08A2E5EE2BE526240A01518B2BA9B42C089CF9D60BF52624033E8DF89B49B42C0A31CCC26C0526240951C661EAF9B42C0D743FB58C15262402CC0D254AA9B42C076FC1708C2526240586BCDFBA49B42C095C4FE57C2526240A83462669F9B42C
 06D2E4844C252624033B44B659B9B42C0C4B068DFC1526240579B5A11909B42C037ED73C6C1526240E8537D9D8A9B42C017AFC3E2C1526240201DC308869B42C05BC3561AC2526240466172FE819B42C0D8F8A7AFC2526240C1C991297A9B42C04C040539C3526240BF243A70739B42C054CF38C3C3526240E09D7C7A6C9B42C09C95A3B6C3526240B50F1E12639B42C072D1DA7EC3526240EF46301F5A9B42C075DFD682C352624071E888D7509B42C016647039C3526240569F06674B9B42C0DB4E5B23C2526240EA077591429B42C0ACFB6C89C152624088E41A553C9B42C0F7459D14C1526240CC75BFAF369B42C035E213FCC0526240EE08A7052F9B42C0B528FDCEC05262407CE82741249B42C01B50CAFFBF526240A3F08FAD1D9B42C039F9E3ACBE5262409E877F7D199B42C0343CAC26BE5262407E4D7BEF149B42C08A79B18BBD5262400F90D4E70F9B42C02D9CB525BC526240D18A146F099B42C035D5EEB2BA526240D4884FF0039B42C0B58E05E0BA526240929B3CC0EE9A42C0ACD73E2EBB526240F810F9D3EB9A42C033A1A41BBC5262400C885AE4E89A42C01C87B0D0BD5262407BB889FFE09A42C0FD1F1620C05262408E401768D29A42C06D03D259C1526240519DB3AACA9A42C0CFFF6101C2526240B48185DDC19A42C07BD058A0C2526240C50BD8C4B89A42C055E9
 DD0EC35262407D5061B6AE9A42C0E35B0EAAC3526240CA4054D0A39A42C0AA65C636C45262400CBD0F51969A42C0F6211400C8526240B37CB83F729A42C0DF8211A0CB526240DF180280639A42C0F885FCD8C9526240E07261495E9A42C0E603029DC9526240CA4A38995D9A42C0FE73E2BCC9526240850C3F93589A42C0C3A04CA3C95262400C231862509A42C08B57B494C7526240D79FC4E74E9A42C0171E45E7C6526240F2214D614A9A42C0750F75C4C6526240165A8C70499A42C094111780C6526240A0015020479A42C0748E4B66C652624091042B98429A42C09AFFFC63C6526240858ABB8B419A42C0E80F7283C6526240AFB9B42B3E9A42C0440AAF6EC6526240DBF6E2303D9A42C08641F4FFC5526240CC2D0840379A42C05C210780C5526240C80CAF7F329A42C03C5CBC69C452624017CAD303309A42C0B5FC76C8C3526240E24680892E9A42C0E98E0FC4C3526240E24680892E9A42C0010200000019000000E98E0FC4C3526240E24680892E9A42C0E68013C0C35262407D0B46802E9A42C09DE0F65FC25262407D0B46802E9A42C0E40522D5C152624094D74AE82E9A42C027439FD9BF526240CF5F8D58309A42C073DE5A81BC52624034AF343A319A42C0DC195C29BA5262405EEC623F309A42C0F54A5986B8526240DD47C9062D9A42C0D277126CB7526240D4415E0
 F269A42C0BA698E07B6526240389CF9D51C9A42C05C397B67B45262402C6FFDAA129A42C0B1E485CFB1526240D276A796089A42C05B7C0A80B1526240B5914660079A42C0FC4BF7DFAF526240FC4E3860FC9942C09B3BFA5FAE5262405F2DD21FF59942C012E85D06AD52624062A70EA8ED9942C066E95443AC52624053060E68E99942C0F913950DAB5262402A28FB9DDC9942C00A7F8637AB52624003EF3F8DD69942C0DBFAE93FAB5262407B25DA9FD59942C0FE74A84BAB5262407B6D910FD59942C08786C5A8AB526240CF35DDFCD09942C09F69D322AC5262404A1CC3ADCC9942C09ED96443AD52624018B14F00C59942C0208BE95DAE526240E9112D30BE9942C0010200000003000000208BE95DAE526240E9112D30BE9942C04B4B9B60AE526240C2DF8A1FBE9942C01CDD9867AE526240774A0AF5BD9942C00102000000040000001CDD9867AE526240774A0AF5BD9942C0985B1080AE526240343F4860BD9942C0228CFA7FB052624086EC7200B39942C095804EF7B0526240DB807456B09942C001020000000800000095804EF7B0526240DB807456B09942C02ED85768B1526240D56D50FBAD9942C01FA6D82CB252624034750DE9A69942C0992CEE3FB2526240C3499A3FA69942C044DD0720B55262407B6649809A9942C044DD0720B5526240BE0864C0A39942C01D9D04
 80B45262406F0C01C0B19942C01D9D0480B452624013DD6921B79942C001020000000A0000001D9D0480B452624013DD6921B79942C0003F3E7CB452624037807EDFBF9942C0DFCFDF3AB55262405DA79196CA9942C0E1390087B5526240792A9611CD9942C0A7CDEE7FB65262407B25DA9FD59942C057D7570DB8526240D6B3D606DD9942C04BCD7921B85262407102D369DD9942C01A12F758BA5262401A2E1796E49942C064C68091BC5262407D299721E99942C00725EAE8BE52624076FD7669EB9942C00102000000030000000725EAE8BE52624076FD7669EB9942C08C5363F8BE526240997E8978EB9942C00A8F5209BF52624017BA7889EB9942C00102000000050000000A8F5209BF52624017BA7889EB9942C003E0E9DFBF526240100B1060EC9942C0E960FD9FC3526240B5FB5580EF9942C094111780C652624067FCB1FFF09942C0D57036C2C7526240A85BD141F29942C0010200000009000000D57036C2C7526240A85BD141F29942C0C50D0929C9526240FA25E2ADF39942C0F0B9B832CD52624051FDDE01F99942C078DE324CD2526240BB09BE69FA9942C061C7DA3AD3526240A2C7EF6DFA9942C02BC5E97FD45262406E3E6480FA9942C0BE1C2C52D7526240EB79ED88F99942C0F3B688DED8526240CE7AE706F99942C07D879512DB526240FAED9149F79942C0010
 2000000030000007D879512DB526240FAED9149F79942C0191F662FDB52624064E4D132F79942C09737634FDB5262408DBADC19F79942C00102000000090000009737634FDB5262408DBADC19F79942C0D257EB1FDF5262400CEDF71FF49942C0AE92D96AE0526240B898B047F29942C07B8A77DBE052624043684EA8F19942C04B8D7516E2526240BF55E8CDF29942C0539A289DE35262401F4AB4E4F19942C04779419FE3526240378C82E0F19942C0DC3818A0E3526240A2CCABDFF19942C0927F37A7E3526240AC7128D1F19942C0010200000003000000927F37A7E3526240AC7128D1F19942C050A335ABE3526240EF9705C9F19942C09B6053AFE3526240964FD5C0F19942C00102000000090000009B6053AFE3526240964FD5C0F19942C03AF361ACE552624061D520CCED9942C066D6F786E75262403F47F5E7EC9942C088BA0F40EA526240E3DB16C0EF9942C0DD4A6540EC52624031CF4A5AF19942C0A1FE6959ED5262407EDC2340F29942C02A9D595CED526240BE9D9F3DF29942C0634BEA5FED5262407EDC2340F29942C07BB8027DEE526240B6B5D722F19942C00102000000030000007BB8027DEE526240B6B5D722F19942C0B7C7D287EE52624043B00518F19942C0608A808AEE5262406DD76815F19942C0010200000010000000608A808AEE5262406DD76815F199
 42C0058DF4FDEF5262405B261EABEF9942C007DD6FFEF0526240D87B4CFFED9942C0D4FCE71FF352624082FA3B80EA9942C0B2423635F5526240CB42E0EDE69942C0AFEC82C1F5526240D7385101E69942C0E1928895F6526240493CEAF9E49942C0680EFF9FF95262403F582140E19942C0631F09A0FD5262407707C25FDD9942C02920ED7F0053624076775380DE9942C065F0E65F015362409E8834E0E29942C065F0E65F0153624018DAEF3FE89942C02920ED7F0053624086AB0320EE9942C0DC9FE63FFF526240C52CC59FF29942C075CF1500FE526240100E51E0F89942C0D41F065FFD52624090508E5DFD9942C0010200000003000000D41F065FFD52624090508E5DFD9942C0F121A81AFD52624048B2FD1AFF9942C0A36B13A8FC526240F9A11DA3029A42C0010200000003000000A36B13A8FC526240F9A11DA3029A42C067EB85A7FC526240ED2C7AA7029A42C0A05FB9A5FC526240FCFCF6B4029A42C0010200000025000000A05FB9A5FC526240FCFCF6B4029A42C0F33EE99FFB526240AD52D55F0A9A42C03FEE1120F9526240C8E64FC01B9A42C0CF0DF21FF75262402B5BDA5F2C9A42C032135674F5526240B653CE72349A42C071112917F45262406BA395D63A9A42C078A686ECF2526240B676ECB13E9A42C05E5CF45FF1526240B3C068A0439A42C0E7BB00A0EF5
 2624079831E204E9A42C086AB0320EE526240EB05FA9F579A42C0392BFDDFEC526240DB673AE05F9A42C016CBE31FEC526240FAA93B60689A42C016CBE31FEC526240A34B49206F9A42C0249B06A0EC526240224ECC1F789A42C04BDB0940ED5262403F005FC0819A42C0AECBF09FEE526240545227A0899A42C01FAC10A0F052624009E46D00919A42C0FC929E33F35262400598439C989A42C0394F2B3BF3526240B8CCE9B2989A42C00EC40D53F6526240B31E6393A19A42C075351E11F85262409C5BD71EAC9A42C06FFF80BDF85262406F6B6688BE9A42C0A1ED3D01F9526240681888AFC09A42C0680EFF9FF95262406BF12900C69A42C0DEAEF25FFB526240B2440CE0D29A42C0631F09A0FD52624076775380DE9A42C0DC9FE63FFF5262404FF92180E59A42C0ABB019E0025362405E9A22C0E99A42C0A9A10DC0065362403FEBD09FEC9A42C0F7263C570A536240FDDB65BFEE9A42C0EF13515D0A53624050DAC0C2EE9A42C0A99AC5300C536240FC4BF7DFEF9A42C001F15FC50E536240C632FD12F19A42C05314F93F115362407EDC2340F29A42C04B45196015536240109EBFBFF79A42C0707610E019536240FCDEA63FFB9A42C02A3B08DB1D536240257A52D7FC9A42C00102000000030000002A3B08DB1D536240257A52D7FC9A42C0BE8575E31D536240DE91B1DAFC9A42
 C002EBBBE31D536240DA0DCFDAFC9A42C001020000001700000002EBBBE31D536240DA0DCFDAFC9A42C0DBF40C861F53624061FA038AFD9A42C0E8E6D143235362401EEB98A9FF9A42C0648918C025536240566133C0059B42C00702092F26536240959A3DD00A9B42C0AB4CE77926536240873C388E0E9B42C0077536892653624020EF552B139B42C09F5912A026536240C0A7DEBF1E9B42C05DC6A8C626536240987F9994279B42C0BAEEF7D526536240FF1DAC5A2D9B42C0AD88F5A1265362405BC0159A359B42C0A239FC7F26536240AC7EB61F3A9B42C05AE95A2026536240E6CC76853E9B42C07F4FAC5325536240881BA66C479B42C056ED3FD723536240F907DB99539B42C05D26796422536240B2C0B22D5E9B42C069780EC021536240BAB8E8BF629B42C0755776C12053624042D2020F679B42C07F5C2C561E53624090EE8C5B719B42C06B14ED851D5362409393E414789B42C05CB7F75F1D53624021BE5D40799B42C0472701201D536240E68013C0839B42C0C2BA9F8C1D536240069CD0F2889B42C0010200000003000000C2BA9F8C1D536240069CD0F2889B42C0A9DE75911D536240438B112E899B42C02B15B7931D536240D293414A899B42C00102000000060000002B15B7931D536240D293414A899B42C061B94A1C1E53624027E9ABF58F9B42C01F7CCD1720536
 24083ED71F0969B42C09CB11EAD205362402355CA21989B42C0BAB8E8BF2253624009771D609C9B42C08042BB382353624093B483959D9B42C00102000000030000008042BB382353624093B483959D9B42C029A84D4123536240AF1177AB9D9B42C068DD7F43235362408F003EB19D9B42C001020000000400000068DD7F43235362408F003EB19D9B42C06D6EF195255362407542F9CCA39B42C0B45FD27326536240543948E3AB9B42C014C1199126536240AA35997FB29B42C001020000000300000014C1199126536240AA35997FB29B42C00D912E91265362407B2A4C84B29B42C033824391265362403ADE5C8CB29B42C001020000000800000033824391265362403ADE5C8CB29B42C09F5912A026536240E9CD4D40B89B42C01FFC1FBB26536240690A534ABE9B42C0D130C6D126536240AC6AEE8DC69B42C04A2DA5782653624092729C80CB9B42C08DA9054026536240C693933FCE9B42C06A49EC7F2553624089C6DADFD99B42C06A49EC7F25536240B5824B6CE39B42C00102000000030000006A49EC7F25536240B5824B6CE39B42C08CACA1792553624054B02193E79B42C028C8389225536240B1B2DCC4EA9B42C001020000000300000028C8389225536240B1B2DCC4EA9B42C034C0609225536240AAD50DCAEA9B42C06903899225536240E136F4D0EA9B42C0010200
 0000030000006903899225536240E136F4D0EA9B42C0648918C025536240C52CC59FF29B42C055733674255362408FF14B65F89B42C001020000000300000055733674255362408FF14B65F89B42C0611FF873255362401689096AF89B42C0A2FEEF7325536240734F8D6AF89B42C0010200000004000000A2FEEF7325536240734F8D6AF89B42C0E14ED83425536240618A7269FC9B42C04E89905F245362400455A357039C42C05570EB7223536240D1AE8EAD089C42C00102000000030000005570EB7223536240D1AE8EAD089C42C080E2B66C2353624084D95FD1089C42C067919A532353624047F40262099C42C001020000001200000067919A532353624047F40262099C42C093FF7F52235362402B8E5E68099C42C02E68210123536240D7E5EF390B9C42C015D9733E21536240AA549ADE0F9C42C013FFC1D11F5362403DD4B661149C42C0A65714C01E536240E82510C0179C42C021E7FD7F1C53624061E75C401E9C42C049360D40195362408DA90540269C42C0C0E50C2017536240A06B5F402F9C42C0A77E390E17536240210AC105349C42C06EB99FF816536240AE9E93DE379C42C08F6A7D36175362405DBB59283E9C42C0D955ED3F17536240F7EFB03F3F9C42C02CF587C11753624072EB7FCA429C42C06516461F18536240651DE967459C42C01FFC7A74195362404
 813EF004F9C42C0ACF545421B536240EB8F300C589C42C0D7E7209E1B5362406D0CF093599C42C0010200000006000000D7E7209E1B5362406D0CF093599C42C026D6F37F1853624074FE37407A9C42C0F8D51C20185362405C210780859C42C05105ED1F15536240742497FF909C42C08B04094012536240B73302E08E9C42C07DFCE9F90D536240AEAFF2BC8C9C42C00102000000030000007DFCE9F90D536240AEAFF2BC8C9C42C0FFB7EDD60D5362406F8D74AB8C9C42C01D5B0BC90D53624083D659A48C9C42C00102000000050000001D5B0BC90D53624083D659A48C9C42C02982EE810C53624083E4F8FC8B9C42C08432E8DF09536240B3823A408B9C42C021510DA0045362406CC207C0899C42C032B540D70253624065632B59899C42C001020000000300000032B540D70253624065632B59899C42C03A3DEFC60253624096B77E55899C42C0B4E186C20253624073FA6E54899C42C001020000001A000000B4E186C20253624073FA6E54899C42C03C32569BFF5262401F590A92889C42C04562821AFE526240D117E714899C42C0554FE61FFD52624025726660899C42C0BD5DE5BFF6526240E68013C0839C42C0392BFDDFEC526240BF6F32607F9C42C07CF9F8DFE5526240FA3F2C40809C42C0BCC7F4DFDE52624002124DA0889C42C07356FABFD95262402FF54E60959C
 42C023F609A0D85262408DD13AAA9A9C42C09E85F35FD65262407009C03FA59C42C0B524F6BFD2526240AA6FAAFFBD9C42C0B524F6BFD2526240AE934440CF9C42C0756506E0D5526240861854C0E29C42C00E661360D85262405B79C9FFE49C42C0BBE70A00DF52624020A9CF1FE49C42C0B2FAD97EE8526240E8667FA0DC9C42C068267387E852624024230CA8DC9C42C063207475EC526240C4D21B49DD9C42C0C17BFDFFEE526240FDCAEFD9DF9C42C0E7BB00A0EF5262401CF80780E09C42C0D4FCE71FF35262409649C3DFE59C42C07CCD1720F65262406A8A5B60EA9C42C0B44AFAC5F65262403385CE6BEC9C42C0483547B1F7526240DF7A0382EF9C42C09FD236B6F9526240C0AB8558F79C42C00102000000030000009FD236B6F9526240C0AB8558F79C42C04FE339B6F95262408D919158F79C42C0579710B7F9526240AD61EC5BF79C42C0010200000005000000579710B7F9526240AD61EC5BF79C42C07ABE0B00FA52624033FED87FF89C42C0F05EFFBFFB5262401870E01F009D42C0169F0260FC526240E47107A0079D42C0169F0260FC526240E90E62670A9D42C0010200000007000000169F0260FC526240E90E62670A9D42C037F4BB55FC526240FE2A1B310E9D42C01A828879FB5262405A8B0574159D42C0B2AE1B00FB5262402DE64240199D42C0B86EEFBFFA5
 2624056F723A01D9D42C0350DE59FF45262401F6BA1BF2B9D42C02CAFD096E0526240000000E04F9D42C0
  </op>
 </test>
 </case>

commit d935aaedc7b4d2b22ef2998eef3a595b23574961
Author: Daniel Baston <dbaston at gmail.com>
Date:   Wed Aug 28 22:11:44 2019 -0400

    Update unit tests to accomodate UnaryUnion optimization.
    
    - Change two tests to use GEOSEquals instead of WKT comparison, so
    as not to be sensitive to component ordering.
    - Change two tests to expect that the union of LINESTRING EMPTY is
    LINESTRING EMPTY, instead of GEOMETRYCOLLECTION EMPTY. This is
    consistent with JTS, as with how other types are handled.

diff --git a/tests/unit/capi/GEOSUnaryUnionTest.cpp b/tests/unit/capi/GEOSUnaryUnionTest.cpp
index 79cbdd3..952494e 100644
--- a/tests/unit/capi/GEOSUnaryUnionTest.cpp
+++ b/tests/unit/capi/GEOSUnaryUnionTest.cpp
@@ -146,8 +146,11 @@ void object::test<5>
     geom2_ = GEOSUnaryUnion(geom1_);
     ensure(nullptr != geom2_);
 
-    ensure_equals(toWKT(geom2_),
-                  std::string("GEOMETRYCOLLECTION (POINT (6 7), LINESTRING (4 -10, 4 5), LINESTRING (4 5, 4 10), LINESTRING (0 5, 4 5), LINESTRING (4 5, 10 5))"));
+    GEOSGeometry* expected = GEOSGeomFromWKT("GEOMETRYCOLLECTION (POINT (6 7), LINESTRING (4 -10, 4 5), LINESTRING (4 5, 4 10), LINESTRING (0 5, 4 5), LINESTRING (4 5, 10 5))");
+
+    ensure(GEOSEquals(geom2_, expected));
+
+    GEOSGeom_destroy(expected);
 }
 
 // Self-union a collection of puntal and polygonal geometries
@@ -179,9 +182,11 @@ void object::test<7>
     geom2_ = GEOSUnaryUnion(geom1_);
     ensure(nullptr != geom2_);
 
-    ensure_equals(toWKT(geom2_), std::string(
-                      "GEOMETRYCOLLECTION (LINESTRING (5 7, 7 7), LINESTRING (10 7, 12 7), LINESTRING (5.5 7.5, 6.5 7.5), POLYGON ((10 7, 10 0, 0 0, 0 10, 10 10, 10 7), (5 6, 7 6, 7 7, 7 8, 5 8, 5 7, 5 6)))"
-                  ));
+    GEOSGeometry* expected = GEOSGeomFromWKT("GEOMETRYCOLLECTION (LINESTRING (5 7, 7 7), LINESTRING (10 7, 12 7), LINESTRING (5.5 7.5, 6.5 7.5), POLYGON ((10 7, 10 0, 0 0, 0 10, 10 10, 10 7), (5 6, 7 6, 7 7, 7 8, 5 8, 5 7, 5 6)))");
+
+    ensure(GEOSEquals(geom2_, expected));
+
+    GEOSGeom_destroy(expected);
 }
 
 // Self-union a collection of puntal, lineal and polygonal geometries
@@ -229,7 +234,7 @@ void object::test<10>
     geom2_ = GEOSUnaryUnion(geom1_);
     ensure(nullptr != geom2_);
 
-    ensure_equals(toWKT(geom2_), std::string("GEOMETRYCOLLECTION EMPTY"));
+    ensure_equals(toWKT(geom2_), std::string("LINESTRING EMPTY"));
 }
 } // namespace tut
 
diff --git a/tests/unit/operation/geounion/UnaryUnionOpTest.cpp b/tests/unit/operation/geounion/UnaryUnionOpTest.cpp
index d301e48..ce93c63 100644
--- a/tests/unit/operation/geounion/UnaryUnionOpTest.cpp
+++ b/tests/unit/operation/geounion/UnaryUnionOpTest.cpp
@@ -201,7 +201,7 @@ void object::test<7>
         "LINESTRING EMPTY",
         nullptr
     };
-    doTest(geoms, "GEOMETRYCOLLECTION EMPTY");
+    doTest(geoms, "LINESTRING EMPTY");
 }
 
 } // namespace tut

commit 5dbf4a96686079899848000c3263b23579f5cbd9
Author: Daniel Baston <dbaston at gmail.com>
Date:   Mon Aug 26 20:26:27 2019 -0400

    Do cascaded union of lines only after standard union fails
    
    Improves performance of segment unary union benchmark by 85%.

diff --git a/src/operation/union/UnaryUnionOp.cpp b/src/operation/union/UnaryUnionOp.cpp
index 4a2af1f..073987e 100644
--- a/src/operation/union/UnaryUnionOp.cpp
+++ b/src/operation/union/UnaryUnionOp.cpp
@@ -97,10 +97,15 @@ UnaryUnionOp::Union()
          * [2](http://trac.osgeo.org/geos/ticket/482
          *
          */
-        unionLines.reset(CascadedUnion::Union(lines.begin(),
-                                              lines.end()));
-        if(unionLines.get()) {
-            unionLines = unionNoOpt(*unionLines);
+        try {
+            auto combinedLines = geomFact->buildGeometry(lines.begin(), lines.end());
+            unionLines = unionNoOpt(*combinedLines);
+        } catch (geos::util::TopologyException & e) {
+            unionLines.reset(CascadedUnion::Union(lines.begin(),
+                                                  lines.end()));
+            if(unionLines.get()) {
+                unionLines = unionNoOpt(*unionLines);
+            }
         }
     }
 

commit 7edbe44cc096f5d1b28b05aa83e4f794b2043fc2
Author: Daniel Baston <dbaston at gmail.com>
Date:   Mon Aug 26 20:07:00 2019 -0400

    Remove redundant envelope test

diff --git a/src/algorithm/locate/SimplePointInAreaLocator.cpp b/src/algorithm/locate/SimplePointInAreaLocator.cpp
index 8acf73c..93e9482 100644
--- a/src/algorithm/locate/SimplePointInAreaLocator.cpp
+++ b/src/algorithm/locate/SimplePointInAreaLocator.cpp
@@ -67,11 +67,7 @@ SimplePointInAreaLocator::locateInGeometry(const Coordinate& p, const Geometry*
     }
 
     if (geom->getNumGeometries() == 1) {
-        if (geom->getEnvelopeInternal()->contains(p)) {
-            return locatePointInPolygon(p, dynamic_cast<const Polygon*>(geom->getGeometryN(0)));
-        } else {
-            return Location::EXTERIOR;
-        }
+        return locatePointInPolygon(p, dynamic_cast<const Polygon*>(geom->getGeometryN(0)));
     } else {
         for (size_t i = 0; i < geom->getNumGeometries(); i++) {
             const Geometry* gi = geom->getGeometryN(i);

commit c464d45564993974441c521315bd32b71c869115
Author: Daniel Baston <dbaston at gmail.com>
Date:   Mon Aug 26 20:05:11 2019 -0400

    Reduce dynamic_cast usage in SimplePointInAreaLocator
    
    Improves segment unary union perf test by 45%.

diff --git a/benchmarks/algorithm/UnaryUnionSegmentsPerfTest.cpp b/benchmarks/algorithm/UnaryUnionSegmentsPerfTest.cpp
index 0410817..f86f0c6 100644
--- a/benchmarks/algorithm/UnaryUnionSegmentsPerfTest.cpp
+++ b/benchmarks/algorithm/UnaryUnionSegmentsPerfTest.cpp
@@ -59,8 +59,13 @@ private:
     geos::util::Profiler* profiler = geos::util::Profiler::instance();
 };
 
-int main(int, char** argv) {
+int main(int argc, char** argv) {
     SegmentUnaryUnionPerfTest tester;
 
-    tester.test(std::atol(argv[1]));
+    auto num_lines = std::atol(argv[1]);
+    auto num_reps = argc > 2 ? std::atol(argv[2]) : 1;
+
+    for (int i = 0; i < num_reps; i++) {
+        tester.test(num_lines);
+    }
 }
\ No newline at end of file
diff --git a/src/algorithm/locate/SimplePointInAreaLocator.cpp b/src/algorithm/locate/SimplePointInAreaLocator.cpp
index 8457873..8acf73c 100644
--- a/src/algorithm/locate/SimplePointInAreaLocator.cpp
+++ b/src/algorithm/locate/SimplePointInAreaLocator.cpp
@@ -62,22 +62,27 @@ SimplePointInAreaLocator::isContained(const Coordinate& p, const Geometry* geom)
 geom::Location
 SimplePointInAreaLocator::locateInGeometry(const Coordinate& p, const Geometry* geom)
 {
-    if(const Polygon* poly = dynamic_cast<const Polygon*>(geom)) {
-        return locatePointInPolygon(p, poly);
-    }
-
-    if(!geom->getEnvelopeInternal()->contains(p)) {
+    if (geom->getDimension() < 2) {
         return Location::EXTERIOR;
     }
-    if(const GeometryCollection* col = dynamic_cast<const GeometryCollection*>(geom)) {
-        for(auto& g2 : *col) {
-            assert(g2.get() != geom);
-            Location loc = locateInGeometry(p, g2.get());
+
+    if (geom->getNumGeometries() == 1) {
+        if (geom->getEnvelopeInternal()->contains(p)) {
+            return locatePointInPolygon(p, dynamic_cast<const Polygon*>(geom->getGeometryN(0)));
+        } else {
+            return Location::EXTERIOR;
+        }
+    } else {
+        for (size_t i = 0; i < geom->getNumGeometries(); i++) {
+            const Geometry* gi = geom->getGeometryN(i);
+
+            auto loc = locateInGeometry(p, gi);
             if(loc != Location::EXTERIOR) {
                 return loc;
             }
         }
     }
+
     return Location::EXTERIOR;
 }
 

commit f16943ffaaa338863ed38c1ccdf487f92435d75a
Author: Daniel Baston <dbaston at gmail.com>
Date:   Mon Aug 26 19:48:06 2019 -0400

    Add benchmark for unary union of segments

diff --git a/benchmarks/algorithm/CMakeLists.txt b/benchmarks/algorithm/CMakeLists.txt
index 2aad3ab..c1ccdaa 100644
--- a/benchmarks/algorithm/CMakeLists.txt
+++ b/benchmarks/algorithm/CMakeLists.txt
@@ -15,3 +15,6 @@ target_link_libraries(perf_interiorpoint_area geos)
 
 add_executable(perf_voronoi VoronoiPerfTest.cpp)
 target_link_libraries(perf_voronoi geos)
+
+add_executable(perf_unaryunion_segments UnaryUnionSegmentsPerfTest.cpp)
+target_link_libraries(perf_unaryunion_segments geos)
diff --git a/benchmarks/algorithm/UnaryUnionSegmentsPerfTest.cpp b/benchmarks/algorithm/UnaryUnionSegmentsPerfTest.cpp
new file mode 100644
index 0000000..0410817
--- /dev/null
+++ b/benchmarks/algorithm/UnaryUnionSegmentsPerfTest.cpp
@@ -0,0 +1,66 @@
+/**********************************************************************
+ *
+ * GEOS - Geometry Engine Open Source
+ * http://geos.osgeo.org
+ *
+ * Copyright (C) 2019 Daniel Baston <dbaston at gmail.com>
+ *
+ * This is free software; you can redistribute and/or modify it under
+ * the terms of the GNU Lesser General Public Licence as published
+ * by the Free Software Foundation.
+ * See the COPYING file for more information.
+ *
+ **********************************************************************/
+
+#include <geos/triangulate/DelaunayTriangulationBuilder.h>
+#include <geos/triangulate/VoronoiDiagramBuilder.h>
+#include <geos/geom/CoordinateArraySequence.h>
+#include <geos/geom/GeometryFactory.h>
+#include <geos/profiler.h>
+
+#include <algorithm>
+#include <random>
+#include <vector>
+#include <memory>
+
+class SegmentUnaryUnionPerfTest {
+
+public:
+    void test(size_t num_lines) {
+        using namespace geos::geom;
+
+        std::default_random_engine e(12345);
+        std::uniform_real_distribution<> dis(0, 100);
+
+
+        std::vector<std::unique_ptr<LineString>> lines;
+
+        for (size_t i = 0; i < num_lines; i++) {
+            CoordinateArraySequence cas(2, 2);
+            cas.setAt(Coordinate(dis(e), dis(e)), 0);
+            cas.setAt(Coordinate(dis(e), dis(e)), 1);
+
+            lines.emplace_back(gfact->createLineString(std::move(cas)));
+        }
+
+        auto g = gfact->createMultiLineString(std::move(lines));
+
+        auto sw = profiler->get("union");
+        sw->start();
+
+        g->Union();
+
+        sw->stop();
+
+        std::cout << *sw << std::endl;
+    }
+private:
+    decltype(geos::geom::GeometryFactory::create()) gfact = geos::geom::GeometryFactory::create();
+    geos::util::Profiler* profiler = geos::util::Profiler::instance();
+};
+
+int main(int, char** argv) {
+    SegmentUnaryUnionPerfTest tester;
+
+    tester.test(std::atol(argv[1]));
+}
\ No newline at end of file

-----------------------------------------------------------------------

Summary of changes:
 benchmarks/algorithm/CMakeLists.txt                |  3 +
 .../algorithm/UnaryUnionSegmentsPerfTest.cpp       | 71 ++++++++++++++++++++++
 src/algorithm/locate/SimplePointInAreaLocator.cpp  | 19 +++---
 src/operation/union/UnaryUnionOp.cpp               | 13 ++--
 tests/unit/capi/GEOSUnaryUnionTest.cpp             | 17 ++++--
 tests/unit/operation/geounion/UnaryUnionOpTest.cpp |  2 +-
 tests/xmltester/tests/issue/issue-geos-392.xml     |  4 +-
 7 files changed, 107 insertions(+), 22 deletions(-)
 create mode 100644 benchmarks/algorithm/UnaryUnionSegmentsPerfTest.cpp


hooks/post-receive
-- 
GEOS


More information about the geos-commits mailing list