use fips205::traits::{KeyGen, Signer, Verifier}; use hex::decode; use rand_core::{CryptoRng, RngCore}; struct TestRng { data: Vec>, } impl RngCore for TestRng { fn next_u32(&mut self) -> u32 { unimplemented!() } fn next_u64(&mut self) -> u64 { unimplemented!() } fn fill_bytes(&mut self, out: &mut [u8]) { let x = self.data.pop().expect("TestRng problem"); out.copy_from_slice(&x) } fn try_fill_bytes(&mut self, out: &mut [u8]) -> Result<(), rand_core::Error> { self.fill_bytes(out); Ok(()) // panic on probs is OK } } impl CryptoRng for TestRng {} impl TestRng { fn new() -> Self { TestRng { data: Vec::new() } } fn push(&mut self, new_data: &[u8]) { let x = new_data.to_vec(); self.data.push(x); } } #[test] #[allow(deprecated)] fn vector_slh_dsa_shake_128s() { use fips205::slh_dsa_shake_128s::KG; let m = decode("D81C4D8D734FCBFBEADE3D3F8A039FAA2A2C9957E835AD55B22E75BF57BB556AC8").unwrap(); let mut rnd = TestRng::new(); let sk_seed = "7C9935A0B07694AA0C6D10E4DB6B1ADD"; let sk_prf = "2FD81A25CCB148032DCD739936737F2D"; let pk_seed = "B505D7CFAD1B497499323C8686325E47"; let opt_rand = "33B3C07507E4201748494D832B6EE2A6"; rnd.push(&decode(opt_rand).unwrap()); rnd.push(&decode(pk_seed).unwrap()); rnd.push(&decode(sk_prf).unwrap()); rnd.push(&decode(sk_seed).unwrap()); let (pk, sk) = KG::try_keygen_with_rng(&mut rnd).unwrap(); let sig_act = sk._test_only_raw_sign(&mut rnd, &m, true).unwrap(); let sig_exp = decode("07EB19E7D838D71EF66B8263B5D1F8EC43F8EB75D58B652F779C5A0F5378709EFF39C179556EE3871600FA606FF751DCCCCE5E7A6981FBB8A0E959AFFF26EA6AEF4FEF5CCB66728F9D119CA2A547F0AF0D3509364C7E3C9981E930C8C77AC74B8F385979DC8582063EAC5B2A2532C8EB97FE1BEA498BDB8B6496FCD3C5931393AC17CF96CCB35AAA9C7491B1A9897CCFBF35B70FEC94687AAD4E06C1B8D3AEA67554D470804EEC25309BF34C6487AEA92B1D49EDFC7AFCB31D78AD4BE8C1E4403B634D2DB503B8CD08270DC3579AA8D639C33D024D3BEBB9D401424B009793DD87053E5E0D0538B90A7A5324E5F08A8AB13DE4DC1ED0B9848B421F40E5CD1AB70F07F652F3DF23853C1D44FF0DA5DAC93D0FDD2007A1100B3C4ABC9779E0FAE578653D3848B520E96300CABCE717B11DC1257F6C0C54ADD4FEF22BE57A67C45B288997B8F496F6FB3CDE4A4CBB646B6CD922C7CB04C0BC2DD1BDDCA39A6154C10A07A1110C23DF6B89DFD65C4107371CB98A352F88CE579BF49CDA3C7062F9744594B9E431391E85622B13A6356A8FC1900F29DFD0D2A408AA2F15958707A14948294194CC3D51D26CA81DD64FA8A119D156E83AC0B1350EE98EF246E04B85EDCF6567F917F4AA1E379244465145F9965A4F7A56FB14A949A0BCD08550A2DE294F74CE74BF178DCF521A27D2EF642AEB05B38F835B7CD0E4AD4F2279C46C50378C06D4829ADA543CAC46A56FDD681DD4F473D792250CFECE0FA98FECF1735CAF37EC75B00A6212CFD31F57550C89E7ACF2CDB257E5C021D1D465B7663B0B64D0E47B38460FCC28B1CF9E40EC44D420FA5677043AD647EB5C80B58BA88FC55E1C5C394A0F7E592A0EDCB1DCF6CCFC5F1B25B30CA191E8C31232A39B0563D5B7DC2AD42582B58EFBF84CB34D4572A8146EF8DA7DACE23229A732A901F15C7CB1A36AAA82838D6F554E49F2F18B9B73F7EF1FCC325BB31E668167C74777E0606806D81420DF2DEDCD56538D5D1386F2122B71E894E348820594869B84455D9A195061DFE1FC2795ACB7103F25522CAA538420AF67DD03859480E0D046C8F175038D78D603AF58176A1AB26F560EC78A8F2E45F4FA9DA71F2E99C9CE038E5D95B07E8DFAD89B8C6B1FB990B081BDA6E848D8CE5577F852481396175CFCAB40FC296E71996EC4A5C6D52A8A237BDCDC2B57680E9379DEED17F929E774BF90906DE5C3941A212801DD09E58A013A08A8903A0AABAA90118250370B3318DB6B17F586B961A2A98678CF54CA6C422DFE32767C99AD4E12A28A3B36E85BC299F0881A5FF4D2E0EFEA327656F67851FDD95FD8B9D1BD941345B7AB065F78A8C342A5184EF6150F304E7D7B806DE025D5C571831AD4537DB35033B0121EFFECCDB100ECAA9805DC90E965995B39748C645E644331FEE496956B6A1FB7A6029EAFBAE80BE5E68C5AA66B369C9E9D7C96C77D32592C6696E3368CCAE005A479492D400C926DF2B809DCF1C49E77877792EF9C9C1CEF36E679E9BFC01A67C92F093CD8EE4EC44FBC0318988014650F4D158EDC630443CFDE99D674F9763F20C60EA3657A2EA53AF1FC2A3E7EA723E546EECFDF3BE0309F5A773C228C168FDBCC97325CAB9C9137322736A606935F6AA74A10D0F5BC6A83AED3FD2CD94621FBAFEF01BB3E601222522A9C9F6D4CEAE117A2D53D2BD774EAA5948A1FA9A83B871BF763BA4787117EC0E7D62CD587EDAAE53427FD56E7DD25C9525886EF401A05BB58D3647E305314BA9A2C1C10A394B6CC7CE983FD11F79F6C05A624E16699BE007CC57CABFB972A1B1988C1E47B4394FE4A404D0AA641B4281AA98EE047D22466C09F3A0DBF7EC6E51BFCFBE6380A23B81E6062300710423B44E88F8967F4F88E559486F7EF84726C501224C4A9FAEBCE33E188BF9A72EDEE1326438F23620EAAD0AB0CE53A87E8B410F243511EB3EF87C9F7AF983C4B0D6E6B2A1A1407AC10C1305CDA22D6DD0BBC470FD61C2E4A38C4244DD2A7CEB9D347D8D8F58906CC5B1C5934C973B048FA97A49C39A401C452A92AE8C826781B3EDB77416625213E826AA6BBB131DDA303CF63CD4F6F200056D13E69BE148BE51EAEE8D059FC47F7FFEB24796A79007C0B83B75BE70EEB65F46FC51C071F4EF7BC24D71374CD7955C88BC28F4EE285B6823A45ABC8B157C3275C49A925D7AD45183B4F09687A8002E54635F8294768F711A47499234B7A57C5A311534920F12C284ED21522B25CA7890610AAAC91666AC54BAB87C3F3A566D31F1A66689D6036E968AB30C162DA446EBC7CFAA9EB9BF22A8652926E7334265897B2AF934D8C2BC261B4D86AAFFCCE72D7514326052F8C4120868BE79B05C9A8F3068A5EE4E5D82B5D3D7AFD3D03490CAA9A3D75084E2906DC039E72837E85768D7C034B17D26EAC57A86F5A3F000DFB783089D14532048EAB5BFCB65F1E21AF9869254F3A0873A8CB1D94C4A4849972E0D1013D3918631830473529BF392C35948E7FD8B5F60DBC03C168D3D5E5D4F074910AE674740C37BE037D84D4390708AAAFF47A64AD23FFEDA22B8EB0006D9AB9EAA629A07899C6D9F79615A4C6C05CD2639DC87D53F60BB78E0C246766A1DE332CA6F6F9B0DCAF58D3FA82149D2E244721F5C47FA6734A01071AB23A871EBEB676A16151402223CDA2901338C17D5B0C59139BA82403709BCE2EE6CB5B8A419A74CA8046B9DA98A10EFA6FA5726E235EC329938F4F36E0B3310ED946CCE3F2F05A23BF7B203AD82057D8AB2DD6E6F9614187FE90AE1397A927BAD5BDEA19768DA4E1277FDBC2465B73FD0F224A94ED00A765268B081288D14342A0E303E106BF460C247BA3BFB806DA76264B8C0B0364E81DA052EA399BFA331170C130E96F268C0F3C2DEAA8DF5462B685AD128C6A1FAB979D8187CEF285A555416BA01165ABFEC8E0FD44030288CF475F82C60F50323B3277A965F7FE57C78EC1FF8FA798F0B3F10FB4307E8C8F516A7C8EA8EF723C14782906E6295FE14AF513E20F12577D53E7108D0C82FFBD5B9671AFEE77A7AEA7F6F90B49DA727447681A4DE3AC28A892086026DE61794CBDC43D2539379C0D16A44631E36AB058A7BDA1B02F484E5A76B47F5A684FBF0A88B74721E9F28CD4CC3121EC938A042BBE315580CB7ED924DE0A542BEA6F52EDA7C923449B41859268389694FA5F7F2CC4784B89952FF8569D7D75E1A4EE7AE7EDD1FDC45A5C50B14A6D123E055F6704A25BF90B0C509E219F03D07F3D23C70437901EAFF3A8110C6D24BA729553C184236189F3ADC1EB5C1B8EABE544E7ACD94770E44AA2660DA38321C1C8E1151C96C15204CD8A661F1D5D4BCED5E7E82012D3BDB6D99E9661C96DE8BE6BD5F4CC95991A5A4564E33ACAB99B1A8174610464AF89D87BCE2622E03EBFC5809ED27770D17137455995E05B5FBEA2704DA46A6968803FA7340AF422DB2777E2AB00C44AC0012F5495FC6728B1188400503F3A08E833359E678DAE7D23D19391D6F822DD867E629D4AD8509C1510795B4268CAD99ACC0F73E5AA4B0FBABFF30ABC2EC614C3EF558D1FC5F4123A4CABB701A48F3F5D5E086426B8DE105698599E81DE7E4E78C153ACC24BA435F943761E2203520FAC0F10011EE5860D90241E06261C7B23EC61206357AF23A6D8F18E41D572DA802EF827EF4857A8FFDBF1DBF980756785FD7A5B3AE6235844D6FA58E7345AE767F77FA9BEF0423C7D5D5759022C8953C8DE5663D856B27F8B7970BD442C27869F2D08C84B2F1C35F3081BFE9D680998786591301912850B61902439B04C9BD58F1521C7832EA9DFCF8EC461435A0972D876717FD21AD56A68652F74A4BC717825C98E4E408F6F0C233B5650EA5E21B0E27B9F7987568D70E49E9919BE1ADA26D4613DDF96C748FC195C59CEF3C20E6839A9A5EBAED476D8C2E775735EDA1A25B4BDE7AFF4ACD9C0FE7A64A4D59C123229E25A14F05E90166B2348C935F511D3AD1AE94B4E67B4CED7E9E7235E90E1F6349128E3B0DF59E0E4C656BC44F59F1EF3DEADA102D7AA64638D2E5F85F459C2343049300E924DBC19482F4DCEB78D2721C303F045CC008AE0408ED8AD68B2D6EA105166B8EAA60F971A53EEE16831D7639DA898C959A21B35C7DF2782358F19AD62955228FDF4C3BE9C22F601397A11AA015DEDD38507AF0FDB66630A1BE7BFA33256FFE71BF0F89ED0FF10308BEEADE6E9ADFF75CF4E48C3F7190E02822FA3AD9F6F358FC664E59275DAA9B933D4428458BB0FB89D5D13E11DECB47A8E50D66CF14BB54F818E27C2161E1A195FF6FD76CAE99AC86EF222F0FC398F99E3791B9018D73E9B535F9B8144BADE55618824FCA2B069667E2BF126895F86E183F430AA8961B7EE7CB437DD5C4B932069FBCFF6E5BF725D2694AB6E910D68C4C165CBD3C5B9F96C0F35DE72C9EBAB10CA749231D7D1ECC5C2DDF0F7935907DFF1897E3C1A1CF881B6701621EE50319B90C86CD2ED219605DB6322B059947C4D8DC3CE3D81D045714BA4A4224D36F0B9CD54B79957872A8DA4F596699E11FF9B72BE5ECB9742891B95BC414204A351AC74ED4142514938B657492D8DD9D418C45C5DF7351A8A685D5861C776959A77FC33F04E090FF543C5342E5147186906B9D1B3D13EC20E210B3B83A6129728ABC0FC053E7F81FCE4A66A9304BF2AB51E9CA0A11637A4792BC050EB678939AD86875F9497C9D52B0A32048EB3506180FA1F251F3F7E2908033E017687AAE393C767579C768A091A1559DCDF6CE18F1E8591D8276B22CF06D9297B84F61AD350B8A81E5097CA1FF7D90F91DE00439C3825832A93327C987916E079F56ECE29209F74CEA18E81D93E78974684BF01DD6E62B991FA6E1E32DB935761652AFEB5178C5DE579E47D4E579871454E95FC651D9DDE6EBBAA08CE4C82B7C36BB02CD024404059FBF2D0790CBD93DCCCEA566030933E4A58B88A23AD3F596992B23F45566869777B1B12070AE7B1BDEBC0360F2E76CC266765930A5EDB0F0C0536A2E8590FAFC0A02396C1049A0D0029B873DED63A70B3080DB0BCE8C5BA703994B96B170A6BB6FE440568A212442AA121B1C18578B24F97523A80E46DAF9B340899B05D5AF4264DBA6AA2FDD363E924BF7EA2F6550EDFE48D24E852ECF53F82E10E47ABA2A6CB72637703AEA31D6158BF5FB1CB5160123FFC6F6468BA522505167E804A68F7267FBCC78723273AF95CE853187AAE169D4E9FA41E5FC0FA715B53FAF686A06D679D34232EB166176EDCE277F7F4B0847C5AB6E52C11779E9B62DF0E42C19C77C44756433A4817C4A84CD8D8F5C8D32EA246A4A34995EA4E4F8E31CE532A499FF50FE2EC01D7D4E3386BF389BE1ECBC914FC481A6397F6598EEEC872AB4783F95A5F864B9E2EC9A53AE9432E6DE2EE4B45CCDEE7BC5B8451F8CE0E9F4D6DD154DC8C57284D6B9F6C27471FE354BE61733B7213769244C16539446E80D7760ED6E4D3747C5505E2078CCB7FDD7C34D07E7F8F3A354427B281A982CC77225AE8DF5565EEDDC73B605F757C79EBC9B468380FA192989A91008971F05BD03E80FDC82BAEA15264FD36D343782FE8D9BBF6323CA2B63C5920D2EB1B13B5A50C5314F7AC5A8968E281D8E1460CBAC0E1A7E8233FB10B4E180DFE29C9F94041DF9F4CD765D5C8AE45AC05548E732FB1018DB4FA5E954F35EA88C5638C1B9983708F7C8013939B9604954D8E408729A495D2995F01F6C1DF28EC303F701C165596771A438B933123B4214789FD31069CC6CE8435BA524384C9352854A845E5E3C1B27E50E3300F69EE4CF14FC52735EF1CC63DDA2BAA6B278F7383F9EB4E22206106803F72209F55918F000F27798D3F0A9040D4666778B36C6DB25421176C44383E373D520F50DBFE48A9C268638B8C22F3639C86E9C104ECC3D222B692092E46D0E2CA546417AE1DEF31F5B4BD7A619B255378551F227CFFE31A4436F062DA978C6E95E959D2BB342E5328BDF9CD460FE154D13B9995C2F92613C564C88D972012FAADC6A9BBEEE0734E96F5FF55FDEA1EEFB50A1E059C53935C1B35820D2CD39B7705D66EDA7C7ADFA9B5B90CB97A261E10409A2EEC2D5703BE7C75443BDCB78D74FBC977394DA78332A2BE69416788C8E33BE4BCC6F5466BA8C5CE2B7D5258D3A76C926F0663F7615A9FB08F8BB2C50283C14C2BA81AF8B29AE11AE0F21D52BE009FA4362831AFD508C42E982DC23F249B33A162FDE1CC854F85047EEE35AF5DEDEE193445E7748A3D6922DC462ABFBC382A482A1651B4F3A5E4B6DA2FB7E6FBA7752828A0D52EC15C6041365F0ED760B0C9148FB45169EF99BB68BF129269CC9FD8BDD74F58D9863BA1FC4F17CD9FA6E9158504D70D54271C124B387BCE9C9D749364522A90F79E766D234A22182F7248C165798D548429175AB1E9D54D335FEC9A852A2B5DCDA5D69BED9313DF9928F3DEA3C619B258CF776FD5365081D8994F6BC2471E7BB3E90E038B06DA18B8351F99F4B7A95C66D0B0B86E2EE4DFBD666FCA62BE05BCAE0CAC34D9EC3D0C95E96D878FFC8BF21811FCD6BB8ACD65171FCC3ADD6082D4B78C94BEBB503CB5CA33F0988ADF089D9C5EF0C009FF69A433328FEB66AE5CFB2C85C622193E894EEFEF9B1F4E1540DAC5B539F30448046C0EDB544A6B46F2312D1C6D923D87DAB1FAB5F404F7D040BF77D5C7D78548CA92123C86C6EAFA22664C38044DA5BAEB01184B1E8410A5B4D46972EA687AD0680FF2BD7EF645E43BC694DA818F787F378F6B5EA1A238233BFD47CB62D31F57006782BA1235FBBE9C5919DCDD123683AAC9EE84FC8F5D0B7261B07AB76DB21A073584BE6CFC44B3B2922A9B7BD88094B2F7CD28A251C516F84CDFBB8BAC0A501234E0CF11548A9E116B79B07A08F834474F5AF1CAC7EC99BE23BE3EE3B4237188CE5D6D051684AD3281173413C9418C770ABF830852DC4C7C2F6892E95D108BA5388B4F1E4D7C8EE4FE1C30AF7E78B3BD6F94F0C53A89B66DD337C77F2A51D50FB1BA67724A1DE08A7299351E797F185B65DDB8EF0B49E89B13FDFECF8F75C8442E9B62F53F91C9CDF2C1716758A83735CA34B3363849709B820C6F6E7429BAB71F1FF3E5526ED629E0663813ECA12BEFB988022F1613105EE7F5E7E594BEC90A5CF04C632CCE4CA56C4E10487352F1C99E7911F3C974AF2A35155FEAD6AEEBD6008F7D2CF5EBCC56860B373A130F65CC7EAC4E2CB30ABFB025214EAC079B33F6A41BF2AC21AFC3C7E3EC72874CCE7F775445E972EFAEE607059AAC7712441E7521803A9515570942735827A0572F37F8A4E6ED8A874171E59B87FBD496032F90C223C59ADEC3751DE260EC228B003C65213C4A24D8C9D12693DAC94548A3EF524ADBC538BB074B35C8610B298585EE287D5054EBC381573DB3CF32BA136A31E46FC8B76F9A9308A7165C7831DAAB52277711A10DA0187C1836ACBDB688080B6FD682927E7EAE62BFB9B9B6638342A16CA35C5D04224753C3C3CDC0152E45CABDDE589BC8AAABE81429A1C037B0D3DD0DA79D1621EBAF2FF8C8E13E0CC21725BFC58E3563A01B63CD4B3A6A3755738393140A1558EDC7D9245831A8D5E4BC1421CF525EA747F5510C4E34AECD05E9C2C527C8015BC88D7E7DC8933D412F83BC138D765860BC6FD6A5AA33253654911B891221BC7B0588802C3E4952DBC07911161EB9D99604CC20F5565A0D4D673BFE673489087EFE4F6013E5C519B7BB8391299E29BC0AF88877658397D77843A7786CF82F7770791EC7786CC75AF919AF22551C3CF7BD20A41CBEB0B0536C7F752DA1A6E37088976373195467005E68FF58AC6311DAEF4B09B5AA8E49728C7E93120E408C845272F92B70E42E351AD308BD51345715C7D39B967D743ACB106D719D9C8010E89BCC0A8C3447CF14F3B387DD8615F26B04DB4A7649A5A66E09E99009084BEE7337EB45265E55EF9E245D5D818BB22BB9919F01669C5E775FAB64514F6591FC1AB4BE2CC4B0632D96A6162E6A7D391BF5F94CCC5DA34CEF4EE7D9ABD1A5D30F2FBB5D481C40857F56E3781D9E50B26A34FF7A3BDCF230CB1D29B13D9686EC24D70832642D2C1A9BCE3107D287F421A56AD9844266F8EDFD64AFB25D84A7547971056B0CBDFEE3238783903AB824F60AA20767B488C00467C9C7D0E6F6809658C9F0AD6C5B70228146DFD5EB1E59D3C36292654F25064B7CDC4631AC08D5A8BFBA26529BC45510ECB86CABAC40FE81B49466C66D99B48FA7036F9036CFFB90D07F9B07C04ED74926331D4B192AA8ECF5B764D2472D8289979A0F3275B09852DB3F657D38F68B29FF141213E75B4954C810D94AEA49F14F05EC28443BAD8936DA3A6D4464CDA85236A4255BA3DEA323E9F7A14F5FC80819A748133F41EEE39E30B8FD55D66F7E6FBC580B29BD7031908D7EF808C3967127E8A1E1D9DB783C0B7EB9DEA9F5AE52AB3E49085B2E21B2012BF0901D707DDCCDEE3F72F6D3059DDA130754DAC9522840D9B880208C663580985A8CE30977FA21446EDD897F5955F893D60D8EE7F1605E0D7EF01620DB3D293E3799CA54BDA6A24CA9008AAD5C0EF03207293D5B57F970F227A7BE653C53C0A3A8CC5F25C5CF303CC97405DC65D4D3808E3BB21DC867A4E110724E1609D1B7DDE8DFBB85EF501E3E0B7A358C45513A84F1F08A618E2B678FE6B68E13DF7B0775C599563533CC043E3FC2433F7EB38E4136177CA272EF424DFA2281D3818F2AAF78A2337D67ECCA9B90A451E5C175398C2AD713483F52A2D9FD1A9BFD256FC1FF38270CCB06E5B9AB9A2BD5FF589CC27DF4FAA28F57D13B50202FA46E04424F0FB06E091581B7066C2A732F1D647086C6308FF04DF31CDA244E583021D89D4FF4AE341FA06AD75C743D425EC6E5324CB1646D7D2BF6A5B168E48CD3527659D79A417856A2DD4BCA5B106F74525DB242D8C92E33312B8D91A489F6FB1983EA6BBE51422DA1E8523CCB9F38E18ABBC5601D27B9382BF2E2B4B15690202405C3FA5404C701C8106528F52F9EA4840040AF12B4152D13638BDEE216682C97A245E7F3C7F31988F5CB907AC195912750D9E45712590D3E88B24F6CEC6EA1972FC8F7C900C53967B3657798482F5865A9313214A41CAB7601E958CC66C25251F414E71654077828E7F29C57C2ACFBD36EF0D9D4D909675035F9005F68013A9431026F971A597B29B032FFA13C857E2DAC2DEAF0D094F0FD3E184148FF8ADB535F062219ACD1724D313A7E1F985BED6E2B5736D3BC127A98EF99259A7A7D5714696826D11175A63CAD28A23F1C8A06277996DDC3FA07F33D5E89243ADFC21AC31D7AB9A61FD0BF7A0074A527E3061A5E45E6DFB9953AC8C20E1120FB6B23AB02870F18AE2D976AE186FEA47E5F3105FCA1547E4763CCC61F7CE555B740881903CA09505515E1D41539226A6320C70427F56091FB9EFDC6D4F94F4273FDA0BDA64EF363A30214A952140B373A5E914A34F3FDF10206774B7EDB4D996D72F1F377AC84806603710B77640150723894101B7799CB272A4A4AB9704CF4A6C3071175D0812AEED7E8F9C96C823D94333A1E749CBC58E86979CE2EEFEB159500DD6B90BB8A76497CE94CFFB38F262E0D87E6BFB86A8417D308C1A2A1B97A749C8B175760AE790EC92D8B5CEFDAB7E4F56D28DC8F2BE6B0FBF50E3003D2D5A28B3B14A75384B2662BECEC4B453EC011865647C1146138DEFB64FAE31AEF84950430FE2EBD42561B9C2D772E678D7248AD72BF36675CA4EAC508BD91F8ABA0578BC317C837CEE9032EB06D09ADC2CE45EB51A03CBE52E3EE55CF02B919D78EAAC99340A8BBC43C492E74B438CB5610B048D154A40985D7C105A35A3001BFDFA732BA7952B1C41E20B9C168A7DC30C34C912576C883187CF744E5FE9E29DB07538DF2EEC05630277A6B15F7B6D6B65E5788371EFE5F316388F536DDC1446783C066D760B572C0787643E6DEED01B30EBD40FF253EB3279A17660C7226D925645C5D6300BBB19F209A5BC79C274A593C606EDC005669E875962EA5028CE50B46B8611868DB892FC596DE68751CAAB22A7F6C3237C60F6F16BC80F6A71DD6D75DDDD626D6B8182239A61079694CF45C55CD13D19D4A38BF78903C17C5C37402ED2C5DFF7C164AA90869ACEE38C22E09BD5B8AB1542C4AAFAED32F6347BD156171717EA5F2F09DB652A7E7FE48B833945A46CCA438EEA7D77EB1D164FF5FCBE72D445AAC73BC1FD44B16405348B8905399B3268608F7D89133CDC08EA8A89FCC6839ECBCD46549DE8F1447B7E273596887BA3764DEA52FD1EA84605034F4CCD7A6C3B5582FC7C284B22DC984840E38D9DFF2109EE4CE3354F2322368D70B13D9799AE8E0BC68BF21E39A2E5174E247D1EBE28BCC24AEC45E93739054FDF7F843FD3422B75459223C319C820284199488AAFB41423B37990E59A6BBEC4B14617EDDAEB0FE7F72FAF1FDBDE90976542F745DF725CD9947DED598C637B66034F94FAC301855B4563DDE7E9996C7579B147B73B331169DC6FB5EE0DAE47D49C085DF89956C33ABDC38D891836881A1C899A8AC11E1C105ED7DFEE521CB145ACAB582784CDF88BAF835F601CCE97EF21CA8223D3E83A2B2E5618872D7D51DEBBABD3BBE2328DDF5832BB1888866D9CFE59F41BBB574201793CC7154813C9F638838DEF7CCABB3CE56793143470516A7DD54A0B06DB3D422189124D680CB36CD116EF8CADFEAA3B9A083FA4545B278486C6CF5A72DCD3754BC5A60ED19ABE376E21F0529071FE6521B1C3F8D938ACFFA9FC793AEABEA0E37CB53FE9EB598D2649602F2C8043826707A66D3C785FC01F00AA96FAF5000AC1504A1EFD2A68AE8AFA0024D6D36DAAA385A10DA650C28EB4BE4B251EFF0A780B7A2B26E700BD8ED0485DBAD40EC57A6A1D133C025735C8D8D645EB5D24AC65BDDF1B9B90799513F58917E92673A05F67670BE70E8BB1CA2CD0BB25B8EFEF2AD3DB516234E9CE4A79F0D5A0D0C7831A926073E482BE6CA6E745407DFB5D6700733E2C89F74DB5A7D92AE0B2969DEF84ADA576A1BCEA10C1398A66361CB4F96DE45BE2454DB7EE6975E47AE95222DBA6A406832254E1F05A4D3DB0A7E17061B18213D6BBDC66BD61B29D1EA53").unwrap(); assert_eq!(sig_act.len(), sig_exp.len()); assert_eq!(sig_act, *sig_exp); let result = pk._test_only_raw_verify(&m, &sig_act).unwrap(); assert!(result, "Signature did not verify!"); } #[test] #[allow(deprecated)] fn vector_slh_dsa_shake_128f() { use fips205::slh_dsa_shake_128f::KG; let m = decode("D81C4D8D734FCBFBEADE3D3F8A039FAA2A2C9957E835AD55B22E75BF57BB556AC8").unwrap(); let mut rnd = TestRng::new(); let sk_seed = "7C9935A0B07694AA0C6D10E4DB6B1ADD"; let sk_prf = "2FD81A25CCB148032DCD739936737F2D"; let pk_seed = "B505D7CFAD1B497499323C8686325E47"; let opt_rand = "33B3C07507E4201748494D832B6EE2A6"; rnd.push(&decode(opt_rand).unwrap()); rnd.push(&decode(pk_seed).unwrap()); rnd.push(&decode(sk_prf).unwrap()); rnd.push(&decode(sk_seed).unwrap()); let (pk, sk) = KG::try_keygen_with_rng(&mut rnd).unwrap(); let sig_act = sk._test_only_raw_sign(&mut rnd, &m, true).unwrap(); let sig_exp = decode("07EB19E7D838D71EF66B8263B5D1F8EC50527F9F9C94098E82F178619256721F46F852DD5F90AE0D445B9A61D4057C29828429AF7330E1C1B6F9ABC2421CA42EFE90FD8E66944D635146D6974B2CA7F7E47F820498DB143285161011030E72894C57C26D6EB552CB549098669D3AD21964C8D1096237BCDAEF80246F3D970AD70E7AECF5823717CC7BBF315834189A91BEC5897E66B76206A60E08D411722C43C4EC9A530838FEDEB71F69CDE446CF491D0C111347484C3CDFDB2A2F6F4A1815B3A83F26B959A2722D18445EFC8C74BBB55287A2DA98102D05DE0B1CF7F32789CAE0BC71222B36B33FCBB67299F013F55DBFD8D69146A90950A26659C21E0A2D0F0B29AAF63065BAAE7FA9D8EE9086A3A1221580F45DBE8EAB7AE118CDB9BB9E34586F1E0261B6E6BBBDE6093D26974A67B215306113893C7E3A7AA03B0C42DB326C26A98B58D37A1562D3FF7D875BF8E6AE69A0E93EA70F3F9FA76353861AEF60B83BCB4C38F59FDDCB90B080D634CFE65F3467FE8114711F0F90C44D5A9155ADE6517DE638D2FEDFCEE7D2629770DF45CA3A7CC23227EE71C8A3DCFA293FA1C1B7419704705EABCF617539F8A51B7CA8BA895C49588D49A164568462031B72D5F3A267BC32AA90A741D2447905B478C5201C57F620FD7D1035E6438F0BCB04A31AFC4B63B18DF643261C3E872C5C244AA0C458F36CBAA61F1F577C64C9BB237C4BBA17AE514EB291C51805E2220541C34AE862842817CA7DB96DAF5994A36C1592259961ECD5DECCF4DD8AC8CCD16031836A58D9BA0571707C5A246BE1DBD785D820A8281771CC09FA3FF817A436FF27208CA5AA0DF8AC1B04115B844F5346E2EE6E112AFF037AAC7568D525FF994F02470C7DA004A8783B18123C46D28B0975BDA1580504C936ACC91AE1863A6147A29945A1771141819EEB45F936171F1403D2057E5B7C813CC84EEE72F7DE7397CE44FAF04900D31F914F65064C43D18551337466467261903D820EE9758283912B91E4D2ABB2728CFFCBF711B88EE81EC3A67785CCA5EAE1CC4CC51890F20DA33611A5E1BA5DD933E5D48CF1C61F43A1C1A922BECD1190853D09AA60FBC666A1C1F6F59276F905924D0869CE9C603E5094FFF320058138D671D2390A9F451DC300F055CFC8D0E49BBFAE57A83AB56E31016229C51AC636BBD7ABB24F9EF3816A0E41D06C18294E5083153AF99EBDB0A40A0CF18AD235BFC6CDE3F654DBE3CD049350197BF655EF0809A8AA48453B5990BA85A47129C8D9F5F976197A6B4A5B4150253DBD3303A4FE99EAC7EBDDFEB01FEEDC000F5F6C228BC6DCF1DD728F0B36E2D911816EC3A739405B509730581C068114F195C4309471F7A951849E35F2D136807861FFAFFBB789E3BC180C25798D5E8D74EC8A8ACE28256F3196B5ACE54324EBCBE3C443469BB04215886E3810A0799F6F4BDB2BB3927454860107FE5D695258ADD2D8D2E970E673CBA6AAC861DA64CA2F414FC1844601ECC2C088F820DD0436D956CDB54E13B7E730E158670004014BE3839AF474E4DEF8968C43CBCE57B110595D6981F16A59EB3118848E8F8BB853349E8FE54D893A99EC21AD57B0EE61DEAD270B796C5ED92287FDA29FCE87E8CBC21E90D5F185B7BA5A4215782F39725F7B7960212256F096BDAB0B51821937F7373FD79A0408EE9EC2C0FE5DA116C36382AC6D1E7FC67F50C9CEBC5DE88B69843158AB98467FA94BBBB33B2FD21763C3160DF8FF266598EB334B5BF1B996013823BB01E6491084DF9704303411F0DCC69B645FBA15286A030F9A8079D2048EDB6C7D4FEE6DCCBE462FDC6612F548A490D1A57D1B54BC57D7FA5A8E527B131CB9A7FC622821F916AEE1126A015BF36D1447836A173C8D914F1ECAE343F7189048C360D624D4C234B59E9E4DFD73895E0A822313AD489E0B4F44CBDAA17CE023C98E15294DDE977B8ED6D8AC423EAD263083E731D354CB7536CBCE4C95BFA049D82F640C1FD6E9A1A8AD6749BD2B927527E9A7BF159AF084D8B7932365CAB8A60038DA176909A9992C259F9F03E813624B6812B669E70C9382C5A75CB8E6D413FE904CBE1393A93820BDE103CFDE46E676015801ECEFEAA07E6D10FB9D9EABE59A31890F217F6A35352040FDC91D78CE95F9DECF5E1D44F0E35C7BEB4481CA3BBE08328B5967376DCF9605ED28B004AE99C9A77B6F028F79A61C00E8514A6E9C998BFA4046DE5FC0448FA7D90BC0538A44CC9CCCADE0EFEF32EFCB8C6A2BD2A41D0777274123CCC9F5B29CD4B20347A0E0B3A57EB7FDBA04794817C96C1D977E42D3E5F5EB0DB2F049917E5E6E69D0E14489D38F3C9D75814A7CD204A42CE97DE623EFD4AA70DA2ED266FC5079995F2F4EC442C520B712D9DE5824D8DE7C57630664BDC72F98E12DADCAFC57C8000B8AF83C6064CCAC43744F7862242C57C4DEA10E2FA738E40B13497532334A61B6D17525AFC262D1442C71ECB2925B5EF5D5B412396CFBE865B5937D758F4BE86F363CFB288136623977675CBD5A3C831366C88525D967714C10D99BD3CBE400D4B325471AC775A4C66298671A0FCFA0D84EFC995C3EC8349742428728D09A83C72745938F7A8680010F518B2E8215FB229B01C512903DF4528B897A5270343993A98A529F8CAB1E8582D44403A9DCB81458CD367E140F06E05563EEB649E3E98338A8F2D5D9DB9F0B7C569606F70D7539108B282069E1E9C03F01F62387B721907BC7E4941009F5917E7B46D6D7E96C6BC439A3FA8DB5CE5FF3D6200A3BB1EDEDDA12008CE329E757E2C9E6625DA8B8A9326E2F37E61F834179C080A2D9A030D41BFC3F84612E046FA3A6ADD79A9E53F62D46DA6899C8B2EC2DFCBACD18E53EB34AD976D7B75D617576812C4949F2AB333FA99262CE409C8431A77F2217B823FFF19C3CC6DC45A687CD6E7BBEC7791E7F4EF46B55079DAB8754BCCD812E98B374B58AEC4172EA4A5E501B0C8CE31BCB7574A240C61BD6C18B2BB3AB00EBD3CFC0A39E8B07AB56030D8621067EE1D0D2B6859F42899DEEFF679AFC3114206EC05E43B996E2E4B160334623244ED4F245BF83323C89A8D5CC48C211D19CB757A6383EF23C836B5D19D145B006B89A86CF9A8F6B0130EE34BD3354320F89C3A1F3D63F4F4E16071B85311640E5749AD47CA886A867F25921044F5199F9FA719B17154CE13237B87BBDB76E49F8A8CD2B4291FCA718DFC0BFD38ED80B7E84EBEC51DD055E8B52B71CEF4832B1597681338E41165515EBF42913F44DDAB9CCAA7C483309088F5BEC05FC6EA46DF868FF7D9E0D347285D881987C7C02EEEE189C354C25B079B5835DCA28732A3C42EB1514D1E5F9A0E6EE6FB226820BCEC320E269B34ABF8D489E36705709D5E73FADD20136A21D3E4F8442007E8EC17D544BFACCD587B486BBE893FD0F7FF27E5AAD0A0A274B7319CCF66091AC58C286A1E1BC987103FDCD7B201B320853988CDE734D36E68FDD1CEED5C9DD1D036C392C91834D5F7C2CFD6EA466C5CB141A4A69E84D2C9363D33F6ACE0D975EF8C6AC9C5DBB8D656BBB7FD5F4561EBFDE886E134D186A6D681525B6529BC8A435BDEF449E7AF923EC01E740EABC3778D29D9403B678AE510FE8E9AFF2DF43A4E14ABC4B55E5714816F59D90531D1C6AE06505085AFA4643070C1339F86508C873511BF4EA1290E7A4555FCF172E029B713A03B9610FFC8FDDE16C9F616878CF81A53A919CEE2F6FCD890196642F52E149BFFDFC968DEC21C5CFF3D9E59E994AA955EFA48C975BFECBA2AA1F4DEC28085520AC8655C1ED6D6835A2740AEDCEFFDFF6F6B112D76A4328437D9580D29610BF7CB17B12B3DEF3018B36F5D47D7E85ACED7AD0294C87745632038158C976663DE03BB53BA5D6B4C62FF3C5CA543549D43FE99C8A2788D1BD58319240CE2F78E5C9099F37138CE32AFF07CF3C8C9DF256EDF58CF92499BFF8CF607BA5B4957213A61CAA8DA27F7A4A4BE15F9B4FB04BDAAB2E9B7457CAF5AAD16A1352A21F2C17BBDF8ED0D93363885D546C64304C5408A9F4B6F9D52587E2BCE4AB2A9DA4320E7DA05840536D6317410161B7F00CCD25A2F6A9C781B9E783BC742671DF1D18FB147CFD3C214A18DC11C4790908453D1AA996D98CD96F30447081118B56F4CF854414213AE07C2FBFF39899DB1C3A71F65D628163DFD688DA160C9E0B9DEEC9AEBEC90E6ACF012A9D6344FFCFA9A6871F4A7EC796D48C2C9AA4B0F2AEB262C513948370FE9BA5CA56C41B36F49697FDA285CE774268375CA055792A0328DDF539104F5C76E4FC34F083BDE30FBDD43BBC1FF01CD288AFF9DAFB66FF3BC5DD7FCB117153E755A3129AB5ACE9EF9D051FD0C2DE0E4789698C91C94905AAEE93456DC124D704F9DCCBCCB7909E1B10FA5EF7D0D3C6CB713D8C3A7AD27B0F5AD8944E391F7164586E5074872D922ACD06C6EF859A965D3FFE15A323CCDECEBAB377B383F2AB8FB7E5F47DC6372D52142312B13C748EF6D2A2D475549F603C4E8063F54A085A798A519723F1BA0B5EF260852D569E14BC243E2D37EBB979A02D4552B886D10FC543DBC27A2E4EB194F93AEF7F52ED7A3736D8BB8525F1348A2D97742FA9428C8C7409B7701E4B2AC7F7189E1AFC729B38C5E4E094CB335ADD259558F271C9A9FED1C75B89560F4C0138CF81518D5188C0D3D82E703899A5E25BA0D39D4D2F9B9E9D3859C9F3510AD38E0BDB62458767F34A3A4C8D6E320E95BF2D6D2336CA5EA0655CABA03543C9FE0647EB6834532FE4C64542A13CE800A696154E04FFCED2BEB69CF5AC0B10465A6E9199468ADB620D2CBF898B18A1EB2F9DEB179539D72BB8AF796C57FF9F1928C96C0033EA63847594112F5394DC86E5171B52F1E95FF6C778E1BDA144760071AE2ED0EE60375BB7440D25F1F370D17B72F9E1FF69E3737D09E677B83DD638F5F5751803E7BDF5E9B0020CBE3DEBDCCCEAF23F7ED90C2CCA02F54D84D3DBC3ACE051E6BDFF3A55B2614B36B020E4F5AAC3789E568B36AB5D7B71098B84E5B1BE7A2C391C7318F5BBBB9071F8E8E8737ED4C7E14C04BDED8A18CEB329285AA9DC11EA5CA5AAC42FB211A1B079C6CDD5F23E091885081EED849F19B42649B446631A76B3445C046E2A762773EEB455442561F64F5DB6F6CF3B6FB7728501EEA757EEE0D4D42617C8B0BBB84A6ABF1E234AB293AD120B7CB8BE424CDB822F93950F666D8DE1FF6BADC9146EBD6CE2378A356B0A6EDCE361C96175D1CFD0288C16D6D286C73967246E78238277685960307C6BA96A12D6B7E315960BF1FA30AFBA382CB9C8C15DD9457C1E6E3F7F37D5BD3ED6E64AF2274EA80D90A33426E2B8491F35C5292CD24EB29E632403B031F64FCA8287AF1E8DEE8F26828793E87FABDECC7FD11BE7EF1D335EC5AEFA1C8305B4E819222B22237AFF967CBA49308917073A6BEA505BC122F5FD99775E23CD381C50F1C6164529AF5F0F4BEC8991A19E269471FA971DBF7EFA7E890290C06EA911A047B5D1E4C76AAC0E697560B5F8316C4C0B7CC54AD55AD3852C3EFEE2E4F2D91F7408C27DA014D188F8640651F9D18DBA99A22FDCCE14DF709EA052A917C840240E5386F1A361E0502966A7698A506AEA38698D1BD28F36AD728E042061FDC387B9CCBB4E7566C32939DA6851C982881A8EB925BA052FA0B7EFE81A2F4E7B28E48260AE28456C1F110B6E31F87F2122FCD8946A5D965059F73AE98320EA2E022C6A0DC60AB21D5662700DB22834EC67734CB6A3116B7005B56D326502C42954E16C65D09AF49ECA7254A61FE8AB329A2A0583CFCAB1E40EF54E44B42FD349B9DFF179473CE1AF62FE96B239560400CBB8605C79ADEDCB38AAA76392195FB6F37A92F92F1E5D12E32BB327F32BC2BCD6655C25C1842E8375493B5415C0AF2C0B4AC566B7A7C1325F5E4F7160E093EA00EF8811CA63B65ABDBE7901D7757D0CBB8FBE300E7E0451B1D17F5987567BE996B996FB75D70C9D477A31BE7F107B5A47720042BD4F333C58D501E197C3811309C033382DB2F61B66602B9AD20BF56797CADE8D3200D57BB9EBFA86F44542A9D42EA0FC3FC6D951E6951278B114C5E6FA2041DB624E8D7F43003FC808A61B0B64A707B118E1E46CBCEF43D9D8505B0FBAD9793602E030C010751416CCFA7EA5F84695FA7B81037D9DF505E785FF1EE96780611157DC08D0CBE9169F54623174983E2A23975EDA931E537DB69124C0713393AE2999B4F6528A2959D4CC44916ACD49F28D8F279A907494EB883770B8A8D61D005D2A724768958560568905291C52DA232483A75D197C3A632AE80D1358B1BDA6D9FAEAC46938E65C076051201C4C7C8660E3DB8D06C56D2A9CAABA97278522AD5BDD2A30FE1D4D32623773543976F56F3C6EF1CC9BCF8B16538277693C04119A335D2D83A730BDC161EAA766569342AB92B36FC4956526ACB4BE8BB8D527AF63207387C9DA2FA26E6DF8BD2CD42AAA9A3B569312B972DEA8B4068986F6D996A1B8DC7B56578E2A7803F61C480B545AB95B0E1342E6CC5B9637E3C2679752C736C1E8B237509636473127B59C35B449D79F79F97832FF5BD14FCC251EE1AABDF419918A62E2DF33DA300C12E7634A3FED4361F229F06BD1DD007945712BB2DECEC60AA877231F93000766E70DAE07865FF416A492DA1944A0411D83A36F3EEC11BE27851659751239685CBBE23436FB2F867F3B7AD667919E81052C62F7EE560EB840A9955D4ADE9F6EED1C02AA2323F351BFD6D57F9218B2DCBC78EC139402EBF49A6296677A13B5FBE9AD83244EC4F89F7335EEFBAE2E93A58BF5782124CE4F8B32D5D5B669DFC8B2A1D5DAD77235BFFFB57FEFFA4203B3FE74A3BC31482F0BE187D68CAF1904F2C1952B8D8BDAD3A363F4B0382F767A3713C4E1A08F8DC4D39ABD8CCF448614FDDD32362554A1B8D9A187AF7846C8D36E796FC9691C491E367B6DF7671228692C2D7E950FD408D9C367680ECA9847BBDCD4F34CF4FD9477FE916E9B87CE3405285EB28A03ED38E3519EB4881BCC0574036252E8E44D9B20836AC3E1E240E144415E958A49EBBD552CCC4FEE8D0F0278D794C66DDCEC64773BC6DF293CF26A3D756369AD6510261245AB9FC6BB05FAF7C30EC9862D7686C8BABD1ACD9A59CA8206AB3C90A9DA2B424924B0DC72FE1C16E74F65DF13EE7732AA0B6F85BC7ED28265EE1E9E4D3D980BF6970EA74440B13C7585BE6D9423C317E483F5AC9434E382E4990012BF0CB4F81BDE09D715CF9DE420E610DAA02861929B3689660CCF082445E8039F04D5B5D4CAB0394E6694C0F4A281995B479B8A98CA4A42357B048E24693A087E723F5B237CBD2EA0F1D2EADCF0F0642261E46FC6C7EEE42D5DB0A2DB18DF09511F1C230E543E6DD9A8D5DE658E6EA9BC4052C6369394DB0C6D89BA8ABEECECBC872795FD21B540767D9182BBA786C1B4F9F12FBC651ADE9FCBFB79FAE9605F228FDB1442191B6E82872EFB727E6868888306EEFE1C7DE161AE1C3398E31DAA1D16068F7110481BE32CFA640633BA407610FA105808EAAB6F631A5858666A94E04744D7A4BAF3C37710B204AFA536C17D188736F33FD874F3EF86503E20FE9FE4DBE34FF29CE4C33B22F3336FA3A0046691069399C14467CDAE752C57364CA8FAB9FFEFAC2D05015F21C2E0B9AB568D5E3BBCC03F573CF693B3192C73DCDB297CAEC77B000F4130FACBA4F52A845C56B82CE708FDCAA90F9DDFB83FA74AD036AE203F626FB786A630E6ECA9BAB8B1921E500000FDDE798065D46DEB8EA1889EBE2A0BF86CC3B1A1ECC6683681C4D87321E0AB124078B78CCEDF5A845D3144E4AD200B32B5933E6C72E692E74A2E39FC909B487F9C25F24F4364FEF5F121A339212FA03E93B9A33B546DD4B3C1256D31AB19D0F164CECEE630B128CB4BE49F4F1382BEB57CDD9E24D8F719ACD9F1715F961A1729AA5E33BE7DB30FE5B2E791CBCF1F8A44FCAC4E32C043464CCE941BD16A96104866F52E76903B7F2C1906DA118AEB2C51BA7CDA85F1FF05A2B932D58A51A83D0467DE48E611A1C5B2611C5086FED70CC48DE01BE9FE68F069804930C409C970B094451086E66BFE82291232C06F2489D6CB22DCB174B63656993B95EC1F6C03A177C6261208828A24FF945BF4EA2D5FDACD9447291950C59C42EC548EAF55117938769A6555A86147CCF0940E892AB7AF8A67C82C016C81EDDB5FD66669FBF73262C624AB05EFAAA2003818A146F9C6C566FA40917ECE19280510EAE8C1B70EBA7A016153974E6EE76EE7D82CE37141FBFFCB8B9BDFEB7D1D44CFAD2578765813FB231E9E64CD0EC7B179C615513248AA27DBB700D84CBC9813134EA54DC0AAA9D9F2CE287193F0C7F6232B4D6470EB5055F25EEEC2AE1CC6B0F76E7E52E02FB3DC1E0FCD4135A28F07C5E8D0D98718F183BD401662C293501D41B51859F17D31A12FCFEC4E067507EA2D5F268E72E92420236EAB5E63C698781C8E027E9E50B7209F6F5F9F59077E8C6A5DFB1564EF0920AA86F00CF041C492DD7851CA62C2C889D4C014111DCCEBE8CCBAEDED0C2A5198A8DF084131E4671C12319B59D175EFDF901EFA95C973F21536EA3E6BF79A9570717152E0553A71600E3EB0509B6FC07D36386A91FF66C795F388986E2E8C40EAD5BC879CA89249C6C876E91DB6044C718940F11A82B0FC0611CC9776722AB039A2337C22436AAA0E201CADB356C33CF4EB54E8C5E25B3A17BA45605E5A05FE2D3830C9976327AEBCA4D1840DF2564E8954C9D226B5211144469AD954998DC82106E4497FCEB7F7CB657A467D3715F54D2B2C4C82E55AF037819BE21F2A055700EF984F49070FAD5501058B18492401359E1111B42C90B638413B5C8ACE7DD696569F0B07471CAF0CEB3B9C1D46F5D63AE989B3E286DDD675BEAB96449818FA573F5074B2BAD96F59235B7EADA3D08C37FA24608BE97F34C2C72780310A4EC5A03494BC682B02D0E65ABA0ECDD7E3365F46AACCD36D7A2E6A28E2A7A52B4074998A34825C29EA980A8FD00B906758CC1EA5E729C9FFAE6DF27B0D168EC2DE65648AE9D2E56C369A34C6A4640AE4A55A4B7E8DF97C6C8B3D5FB31209204D238486991A333022E6DDF7C8144F670A33BD934E2BFAC7E503874381C7C5BFFDAF252756263896508EE3D281C336BB91BBF2B70371548DA6FEC13BF66D10966761ABC8B796033E90B7B778A5496442911967FA8FA6E3F5AE7EFEDC154DAF0E5A432665057FE04879034C3D044E6D5F122D76870F7C0BA3F52FD1967AF858CFF702E6F94162F3875054FC6111A7181B893DB570D9A5D41AA5136EDF3D6CB9C1E433EB8B25D681529B95089A2E51488FB9968FDC11C99ABEA22EFB0E9CDCF8350BA731E1708BD3539AF7182EB00F7B6EA491AAD93198254644775F39FC29B4FE00003993FED2880B7278BD4685644B7B107CBB8607B5CB996257AE2E8320F04157D7B5683B929589F5F0C3761A4C69107D86BF5197F93855C4E971F3A96B78DB48BFAE224A20FFBE13D5C993D2A45AFD7B68AF7EF8C80CBDE64BB873C337DD3CC761DDBAEFDC39FED49F56649217BD667C210BC648DDF79D4DAB4ADCAE0BE2D98B2781437F65BDB5F9D17213C9E049ADC24DCF979562DE975E3B9F3C14996FABB9B8D709D0679D32C97D5DF124781FF814587039986BDDE8981219F2884155DD84FF459238FB4FC04BDC0A167B58F1D08BE70AC35666354786F8C7464D796B4335B859E0BFFB641A641B6FD50A32EEA862D16C9980B3D5039623DAF1D754685CCED59D39A27593F995982C082DEB92D3676FE5D82BF7692358A03A363EA1110AD38820440749D59B43C8F556C297BB93CD3512C157222B2091405DDC196ECF4449981721B97EC69AC051C814D27441864B22FD4BA48CFEBB119B3F3343D2A60F4B6213329D74757FFDD314AB849638E08530F3E0B5CB24E969CA38E1D94FBD8E0A26DE324B6C174D168B79E1EE9EBBDDED1A901F77AC287F1251B00455DFA00FB260AFDBDB51C78C9E73E4A13536D21B8786A3B802990D59B0C620D384A099E39E74E09DF337F9354450C9B38B2614AE75D202DC1102F468A9E38E800F78291E9743E1834F71162C2D53B755B9844BC351A1D8622A22BDABD236633799311BC7E7056F10450E00DEDFBC3EBE3EEB7B772013FC765C1287D860F270B378FB2D8B733EBB3E38FA3E7B6246E5EB5FFD4BA3B957E8075D931E976A81E4B085188F97BDB1B90DE8F2F5445BEBA3316A822873C54A6F5AA6D3519DB6D9DE88189FAB6E0779436676217CE6EFC31D62E77275CC6400E6D770748BABE24C82CB47A55E8FDE1BB501F9F59C18BF999AAE1F9919B1BC2EAF70B2A4320B3AC3FDD77E5B8EFA5E675DF120F3AFC921E9F594FD64B4B24948DA1AF11E6D3B715444BCAB58E006B8A91A8144466A5982DF663421E6AF45C7A4DB67C830B05458408C6EE41A8590CEEC0C5663D5D65CA35FDA76BBF7465EFA76CFB23D7DB44EFEB1B7C76D4B8B672CECEF224C01B49D500C3EC0781426768A36D811E9797080F47BC184FF17027B9A58FE18CBE3C8EB442E9D19F4A928CDD365873E30D8B820CDA211C991B2F6019A7EAD11357910FC4781F24B915280B77ECF9B8F09CC85E539F55937B55C1CBE7709C3AA5EC26587B18A22B2A7201E9B1B379205D40EE64D7D26A9B6657EB6A4026859AF4DF23BB5092B9A8EF8B783698C3D44B7CDD54E0675888129F53429EBBB7948F5BF9F32DC28A126B76EA4CBAB75A4881EB023E92881412F7CD9DD58399F5B100158F9345483A1515B7D7F77797F279B20FBD83F2907DD2A2171ECEB1297AC333B31E65B57DFCBACA1E1B04EE28E89E8C938F6DBE5A7F14C2C5E98E77497B3E4758A51F2DBAB5DDD38BEA9C87756AFC89641118F7D94B898D432F95DF37321DB3FFB4664E021F5640CBE5A51FE0DDA3E734207F941F5EC4649DFD5D956811D716B6FB556342D58306BDB7BC1CD929C747DDB4B90AFE3C6E6B4CE7A7FB7DB5C5EC52653440C7AF513529D9F7EFDED73A33A1565740BFBF35DBCA95480263661A445AC2286386FE80B69FC8D74663CF587A9E5589DECDF1C6B8A088B37DAACBF95F55E6F4EB13F104F2739E90356DA9D4E3E9DDA87F23FE0C060409596BAD760461DD2546EEB85D98E351416A35840582CAC50B07ED59F18F1C30CD7BA954D31A84ECF9CD853D0C9B9B22A52AA83BAAA2D04631E15DD32B8AAC0CD36389E5730EF7BF42A82B92D7C8CE00A8089468380159FAF1E643EEF9F6B2948013AE4A63453A70CA96F2310572B8D474DA66E9D3F4BC3951B8D0A8267166F952851A0BCD1231B362043CB8B52EC10D2584AE25C2F1635B9835C8D8567C5683D606E26E92B163C14FDC7EE9EA67444DAD2B14B7D77738639119F986770582AA1ED89C944BF9A2E868303407C1AED39A1E277E7456CFFCC53A427F67C5A9AE5AC42161C3203C8E44A8599D309E14334C76146DA72495A2ACE327FA0064F77B1D52B2B27C032513BFD744C7997DEB73A20C46EC8DB2A8F570AC03CC56C45C5EDD01D42981264E30984DBFFC7E7B25B4CA4BC94A5189E0CE6C256EFDBE923C928C55CE3004A10FE8798F0E5C61F2695F53772BFE0FC8AE02E8E44AEA21F013633F4C92A03B7C0AC63C29E2161F193505F6C61708DA62DC3E683239BA7467BBC2C10466FB112F501F9F9A9984662143A1262F2A087E3717AC19194D3DAFD04308A163E38FC25A6214BDF775AE714CD55A72A75DF2DB8659DC21483BA3816F519E39FD8283A55A107AA638D9D96087696849D960C206219C10A43FD9DAE6ABCBF65DEF1CC48AEE6A18EE27D2D8A627590C4A6F6D2C8CA8AB3A5D6F6E5FBEE239E8FF57AE18294CBD4B27A9EC9AD4DC46B52F7F6C275D7D1C75D563D8DD935A6754FF9789B7C1E255B89C6A126B4236B387DD1F1AFE379445F5CC443E1A8049E5137C6FB45D4832AF99DA931A3ABC48CF7DE32C1B5433242598E1D7B17C1203744F5E9DE84CB2463E8D5211ADC4529E4F92EC06337D34B1BD41A7381ADCB2968C142B434B0C0AC7194E32F7F76CB5AC48C36856327140E2F1EDF947076A816784229733264298EB0169CCFD68E0299C5A62FA7B76DEED0786E06BB2DE46F309CE36EDA9E9F0DC42FFB3661AC2DBABEB195EC26F335D580FC76E9BCD48CD2D472FFEBDF4E103A862EB01D55779F579CE961958E6FBE89C738C6E517D941006B4576F8D1360BD418D472ED4B6BE7A8A422EE14DEC7F725580DFAA8A9CE7B2103C56FE9421734974DB1DF720763755241D5190B6AB3E6B3E3E4659B360331DA1181503C251E02A5C12B4BF24DE9AF8D72456F9C397662D0594C512328E95CE2860562271496D072E521E1DCA1ECAF21290DD15AB16EDD633FBC25061414D0B15091F3A1E24E8F8A847713EB900E45C980740076EAE61FE25339A20DD46594D05983FE8B19F5F319E1FF908A797C2D67A49596AE8EEC3D961BEE4DA090F8053118933C34F520A6EFF2FB7B66CF3AF87D21D6708389FBBB645A37835689A9E91A7D58FEBC598DC82C2E30D14C86DBD849190CBE0D77C6D47DA8C97F8CED748DC53BAA4C167696FFE8EE61E1D456250E2229C66A5D327D2ADA490DD92AA06FFCECBA57D402D1A05D3B743087527C9AF999D952B498A3A52482BD947FC6781C95002EDC7A07BFBBFDB86AAC13CAC3FB375D6C1626838A0F301FA3DFD66E48ECF0C9EC30C55512CDF2BDC9BDEE714F086AC2F7CD66EAD9D48C62AA56314413C85A94D9B73CEB85F722327EFDBE8FC005FB29F74FEED6AE75C435E527B1EE20BE088311BD5DB8D8906759139F4F1ADFBDCB6EE11D5D9715052BA5FA243F59F4C61B4ACD3C859CC1A2F60F60E4F173FA73E52A785A022B242171757E44FDBFAD5B54FE46F3CEEBCD60E9BA5261D49318FEC95E60FE5914E995737C8F470AE6268C0C8D6A6F4D3797B414D7844D2CDE35A1DC92DC110B2FA9CC8241783DC3F56C78FA48285762801E4ECB8AA26CF11BF277A5FB769A2D20C03A499FD0EF6B81AD5F107AA1D54D2A42FC6A61EF75CBFFC2261A97E29777FFA811008CB7A448DBC2C79BB4A90993F9C0B9DA20EE0D2B8D64A0408CDDDB12E01E9EC1CB91D052BABD766A38A8604051407E3216A1AC0FFA6F9BDD837EA27E583E257216ED020A44461FB063EFDD946B8BB887A9E929905C049AF41B644C943C44E3B71D2368F25C35C44463A73681545B12444FB7C2ED4387B81392B72D5A08002214C93A0F3DDB564C3DDD66FF4BDA1A4A809BCA9D5BCEAAC74E98BF159F2E15F01F78F9411FE33E88BD23BB2C6589C018B5EF09810CF2210ECA0CF88D30F5543DAF69E659FEE7AB51B27E5F86D8395306A0189F00B80F06A44EB86BBF63821D34E8B0F4B8897AF61E88870DC44FE9DBA8250359D04F41B2FAFBAD0D61471DDDA25F104E903F46369AF45867F8E4EAA9CC6D254694E7C7DB9B591994E4151A98F0082E33B4C905E0ECFBDC1EFABABAA766CC1417AE96295B262E4307312D01488CA4DFDBE82A045CA3D13B2981F8E9C11D534A7F70A6395D6AFDEEF7C065A9D58693AFD73CA7A6C5B0DC7DE014A9E52ECCF09CBDA328A99B08BBDABBC1CF86536A9F3A4F9193D5B035A0117A8C8F3BF2C01B2309E32BCA59B4BD879ACA2BEABB201F417FB239FBD804A331FC1E9FD3195A5555A83D80C49DAC524F5BD8D6D13BA0493321E0A4A7B7E1AC245FE51B8193D996D19E2861A2743AA5D4B6FE94387B0CC0304AD34261B079E6EFB7FE4122D9FBE50D5ED77F81116FE845739E822FB97C0D7E82655C11AD075E82B51563C38D7A9E27ED59EA657C8DAFF922ED6C97259B1F80D3ED264A060B3ED0FD5340BF5B7A9790DDDF4F788D0EDDC1D71CAF1916198B6C2B88BB3F2E9391BE1A9079D740E6E06BC7F68167196741A16AE0B1F096D263C1D57854D055D6DC5ACF8AF3EE929175B1625DF2968B6954AF433777F215C898CB6AFFD4EA29A762DEF7B23B90C192F78BF06EB1F2ED5B348F9C31861834F39BBBF45195FC51F33B30833C37620936BA584B4971568E8666CFDDC0E78FE52D7ADDE904B2740768D20ACE5BD5D556E65A701CCE82ED76E6C0554349F39E1D4F45DCF6E1388F0DBD717D7548C8C074D34D0E09EB79D63BEF01F8CBE2284902D90DF866CE92987EA4F5C5FF3B9448970A8293127D4119B62B155948697C5B28995176D6623FC957B133CB28EC224A357892F1D84017643CC9F14D188AA1922AD8ADA01E0ADD3DDC97ED371EA3420FC294DC73FD440333DC6908940B13A93338F43CA135B49E7FB654904AE54C4887D170AF831F6F2A25180F87E2C30E09711C8C1C62CA0BB129A43AD78CE319BBF22419B96A673BF47BCD083FB15E2513446450E031A5324CEA8E2AB317E45C3CDFA315523C88272AF5B44DC9DBFA82EA5E73082D304654E4ACDA2B0DD27884EA5DB98FEEB0EA2D87AFCAD6BC22F8DFAC7363121ADC3E6160C53503B86D00A69FCFCF43DD651DA233A9D7992A926A19C84C78902694CD2E81C68AD7D079841CF8FD993E2ECD00D156AAF8EA1C0DBFC11717A07E0702A2BB1B87EE138F555935502EB29BEC93C2CFCE66AD6C9E9F8379969A869225D53FE229A6201A6F4807DB69C4299CD9954A3479AB9A6ACCA722449846FC0564413F1825A87CFFA0C322AA8EF468E946DBBB18D552182E1D006D75794AEC43039D58B7326C08BFF5F983F34AEAAC15A097AAF8F656A030DED23022E89164CF982B2A422F34B5CD80EBAAFB294D875A8E59B9FB4BA6801C84C893A5B3FD6E30662CA68A2BB2C94506404DF5ABD94E9A6074ADEB0CEE045089DBBB60935FD8D6DE78F1F132803ECC5E1CCFCD8989E2D06A1D1538A329D7FAF069D94104E9F943D0AF19923A28254CFF628D762A33A4EBDF8EE9CCAA1189AD7C077DF95955E0FA134B7FEC8AEEA3F9C6D90B174CE60FB929DAA82DA4B6CFE430BC749384254DB21FF61599AA165EC95813E46DCB7385F4E8C372FCD8DA135363E517DB2E94DD587C9AAEC8EE25D25EC3EEB8C7AA2168DE8C2BAFCD4C10D2C069B19B0438274F5FCF0663901695A3A77FD0C05CED7F05DF29573E15BF21234807DF7060407568EEF8C71D8C1CD13D314F24206A3DB3D11F5AF1A3488015A9558D1A3B771432E50C462936EF6FC3B7B3FD8CB3434C5B3321B7AB82CFA54212CD15E85D2D7A8154C0475798F68175A81CF454529B7F08160FD15B9AA6064A2A0FA7B432BACA3D326F000181B962DA9847A499DD52E71E5816E5A11995AE9DC61BD5392F0850BE25425F296F44B085EE7AB23ECE55B4E197B2D19919DCE938E6DB063E5C529BE569C001541080C8B2F6A979B137883FD871B8D6C61B4BC0A64A1A5BE462B50E6686BA94A8A26E900A1C300A06256312F209BF20DE9C46AF092841A033035EEE677AC7C971871D48FDD4EB097DC2CDB0FF0551C390C3DAEB3A7A75A8D2FAE37F6961C56493E7A91F2F1C0C7821A193F2DDFC4A483F695EDD46B03E922474CB487F1ED7DCF1D9A156B80CDA4B8A93816F773D2806A26EFD7F504384C622CE7FF9DC70DD59F59A86C18605F60F199B0620D13873F5E67BA20A7D8399E0AFC92776D590197CA6001143C1F8373F844B7AD5D690ED0313A5A4BCD89A37096E8A6FE8CB0E6A22B9E630AF8AD49D2D2B9A8BE53A75ABF7E9EAC22355A422F0E12D940AD33AA6EF65C7BECD5EA5A9E05B10A54AFB94DD25607C8618E86BE40989F43FF21850F4619D37363876B3F9157E4A482E10E725EFCBF63510C1594B25ED44C074850EF8F4F4623BECD651DBEE24729AF5876DA3523CC171BE7B47965236F028D46B8018A5FC3C70248B6F4A7F6E9B5A83DC7964E38164AE7F417EE7A414EAF4670EB1A46CBFD6AA4BCCB6CA8FFF9B64F24BF62E12AB616CF7DA3D9045383C4394B5BD7C9565E5F408B6EAB844945C62F585437B13D70A0F2B0078A1C1C1E3D9060A240CFC2F8D88E4F12982220167F2CFF876AB88D53108FA4CBD2187618F3965634D30D4EC62C5B941CE283EB96446E100D4C61ACA2B9A0A2093A40FC9B12DC6EFC89666888C98EA19368B4B893BA7E910BFC24BB6EEAC0D2C44C5763162C23A44ACD1C935044F17B578720A3E3F32A59F4618ECE4D21172581138195022CC65F0F4196CCEE3C620DE035E5827C6C1EB82E2E86BAFBB9A7C133209DB33D877A2C4BAF5994CEC9B9866F720B16EB0A15E20DAC0A1A4E8FBDBB7890EF562A0359C1F604FBD7F614ED1162A0C290BDB7AE1EBD6A7679DD81518870588826880A830B0CBBBB4A8CEBC26822AEB0E14A8181875A81900D5EBB40FD467EB3B89226AFD27CE540CF1980074299A27F8E78FA2D7F90DAA13744F7DBBACD2F21662F3B15AD6EF74EF75E937EA437317A846C937B000E74DD1935044C3241C3A0BB2748CC46416C6E5B28C04EC55271A8A16DDED47DF3C3CD8762B6A248D54A8E0CFF94A8751A4E06D459A54C9C6DD02C8C64A49BE4ADFDC2901AF48641AEF11B5160DAC2AEC4AB70F6401B0C044427666DED842B46F131941401FB3790D9314E5A02B4AC30A8938298B826D8CF4BE9A32C997FB063F9ECCEA77D0EC8BB7B13E005397BAA3B97E227488FC79C48F68D3D2B9D03CDFE246D444EEB32B77D9ED73EA9BD4E3E29827D69007FD85767E76C54E9ED42A00F6C4651DDB6EA8786C6768F2B18C74AD52D3F4186829E18EF2CDC994F12FD2771C2653500D5933AF2029D23C7472045B37D549152EAB9335D2D307573B1168B920D91F1F3205B1BC0C4942599C0113F785BC09B58016D670A2E8281E0DD63EA5335E1F506BAA788E85FC06B35D3260B789D413816B5E48FE0ECC56B962F10EDAA1407FF1E4985B7F3CB4146E6793229AF3B60AB389A164D407B564B56B7310A2F0780CFB1B8654D79376E54BD22247E5AE80032338B0DC291D13DA272C154CD8294F8CB8477CFC2E8C5CC3B841166BF2281EC376D7027DB700705FA8ECA0E26ECBF47927979367EE73F07E55320DF2CD6B704406C1D36797597886424933BBCCC58828187B6787287910CF258A5670E0090CE1044899596CDAAF1100707731E2467447C3D14420104861421E706204839A3D04688629CE09CFAFC8590FA3BCB31B6C37D2F70EF24213D8F146D1515D173CB6935632CCD6058091FA98BF89A722AF9698B954FB4E700046688C6F6696698C516DE7ABA878703A9A23B5D9DBDD63E0924F7428695CB168850CC8AE51843854C43BD482B19136EFAA2FB3C0FB370F2D81F05354E97921C642E3669FF7C14F8A0B18E87CAACF24C3095D9B8AAC41DBDF0DC1633AB87A6E9D599B424A9C5C3AAF65B527508CC0CE238D7985672B09B8382882B783C453D694F9A2B2DE5DA8D1B713D1A3DDC5B36EA0A5E7955418E532474547B8310D76CBD1B40CD6FB336D44D7BF1C346ACCB6CC6326304834EE7FCEC6121903ABBE8F41E1024F58B4605040C63B3308E619116F1E827D25A7D6B337ED955B4616C9B757A479572B61F56AACB2773CA2B75A06D96590D9302BD7F5279F60821F9E21452A4C6D4B3AB62906D1617000DF0B51599579E91AB0A7622437D798BFEEFB00739F5C82C4CA395652C8F2A0C7F00915EABB952713745D609347E876B2F733E3FB00B4278F90CCA8AA4D9C55ACFDBED4A904B91F07D51AB7FA2B77B0F22C767B71CB86A6F8E2C169C50A29E733BF3DCA895421CF4DF672630753F897A0AD8A0E5606C97B096CA7D577AD3BC237A4EF53756D9D3369786616426524579E7BCFE27D1A622C11953202B091956BC3C5527B7530C080034CAA2A45A21C32DAC704E7B7EF4F3193BF0A36BA8961FD27CF44B7B1042DEF689BEA2F5191C0C6369504078449260015B54C9A238FB54ABADED8DF118762D3A9ACE989438BC25332A3DE358F35F4C94D8EB58FFD9A88F935D6362ECE8D838F1588B075AE74913F17A25BB7E1C3E00B62962515B1714C1FD23C07DD46EA7B7EC200560628FC5807E49F955A1ED06DFB24EBE211BC4EFFA334293532883ABAB142A72636BB0D915587931CE6079249A89B684EC3ABC82AE6435F620D927857A47A0C29E3516548EA9A275A9FD68ACF0C23F8C225BF9DDF1D88E533BBA106178458A46ADAF48D9085750404B80E65A12CE34679F8DD9361576C203CC86FDC48022B93D3D0D3355C6C1DD9B5C016BD3167CED0BFD3F21B2864CD4DDCBA4A12DF520F479CCB7B9A9717DE050DC76A3DF65A3FC37EA3003A38A4E01C752BF6B2D82E21191E4F956C0B2382A8A9EFD07977C122ACB5BB2A5973D3427D803D9869779502BBC92A21442E3B5DE4D49D805B3A1A63E78DBD13DBE687D24E8DB6DABF1968B1CF7DF77B5A5B5424AD7C0167465EDD0D7858D69D381D8D25C7AABDFE74DFDD146E177D4A9B3F4C8B82EFED54B91201B7BB62642DE20FAF948BF200D8AB885ED2A8A944BBE20DCD0E736E890E72A4FD6F80784C6CB6A992D553CC9266DF472292CF8189DA1A10578F77C067E843676B4AA24CDD839B715EDA9CFEC1B005DC9B15B123EB7BD8EEA57B80E2EEDE9944ED7E54B190BC9B2681E3DA25DDAC421B247E0FD72B48E72B98B4AE1E8BC31F9A6B5C0B033FBE0A894A2DF5748F55D4D6E0FC9D60161F878E27BB7F8DD127D9D6CDBCD3524B450F528DE8CBBB413113FC35C04F728798DDF4925CFD6D7D66F695FDFBDFB8A2D14CBC10571E3B300051F62579C7234586B19860B5E1CD080D4746837F6CCE14EF0AE9F2EB08F7989A580E0799BF1BEBBBEA1A17EA9521CDD1B1A31F793984471C6D389BD24536FE977998CEB42CE01E9B789881593F76B806763D87B6732C81F636D694309B2A97A337A4A7F8D7B84AFF98BA88E20207F8702C31F2C072E73102BDC4DAB7A8A536E34BF808E789EF03AC2817A1396419688109AD4C56C3E36272C07570F7A5BA756FD143C3750F23D767EF71309A4D6912FD9017D179353E798C04516C35EAF7D2C8F7CC18A72FE3E131AD6DB0C43512BE43F22799DD34E0956B909990905182A2E6F45BD84223B727A45FFE596224D97C48DDA603B3A96CCBE46EF7124E649B155D3FC35E24E9B57DB83C1C9BE73BB1335AFD3CF92F12100C7B97627C7C2EB2CD789BB8BE04B225B079C16819A25200E8D734772DB33D3E1FEDBE72D00ECDEFD6E6E5CD1813ADE7BBFF3BF1267E25FF98D69635ADEFBDDAE6A047445F5CE00627CE46D8420D87AB2317135B010524EF4D10525C28EAB8C2C161D07951A4771CE708B42BF15CDC7094C8BF70EF0C45FA74A7F26CA5BE6B25C1B1ABC25E5A89FD93E4DF19CB25C54CA6AB3845E7405E583968ABCD1B30AFE1759D63181545F5F1ECBDE94FA3D0E3022F0CEE71554FC51140C8EC1B90D3E3B4E966E4CAFAF6DB2A154D19210DAFEB2A9DFD4C10D0CE48784FDA86F1298E619ACBB3C5A5464DE8D9AE6FFB0A745DB5C1D3848218D3D55CD4B26076B1430E84411CC9A7C46F92F19671285E84C593243E669851685DD9D3FE4BC21A4FB32E3695544A859CF8FFA459181E7FB7DD2F140E5E2640ACC1187EB38DB4E20C486E52CEFF423AB9FC798C4073A36018E29AFFE6D5466AFC6DD7C184B732E86A53171CB50F0C17237C24B071B70E3D108325B54197849C1323CDD960C711E9EB36F1A0EBB864D600A3070B5DE8488FDD104785E4CD0A22CCEFBA25BC178FCBEBD61C59A4F6B1651BF20907AD06FB653EDCC3857E097222B39B90675459F1AC59CAB63FD06F48CF187A3F897B19477945E470CE2390622658D831EA7EF7FACF0CAE92826FFE1A2A7EB4BE0AAD3FB9828B4EAE0E1948952B80DB99F5340B1E28539E09440144A21E22B9E6673882F8618B4CFD201047A78DB9F9466B67CF97ED4EBB81CB4D9A01E7DAD01B521BA5820F954297C5663A85581BA7C01512E600F96A15D33BE6120A454F8FE9EBCD0D1CAA8F8E080B1BE48E9DF542910B7B085C44BF1885DDAD30BBA22DA989AD36997F13A975A97D63DBC46E4B103AEB73CBF7C4F28AC0F548267B79388390403DC8ED4D249A2446EA5B9B0C204B1BF68CB46797466BCDE73BC10FE7CE9D5859D44E5B90895B5B6B3B25AA89FC14AF046295F0C14DA9BC151A0CF0942D221410931962A739044F0EFC5A6160CE5BCBA8988E0C079F73C53BE6E9182F771B143AE5307D3BDEB9A7FE1D28BE54000F2B3C02E518C87B9EC878463EBEFFBF3D1910E0359C42AEDDCBB161082C71EEC262E0DA9445586177C4B440635D1C9B8AF83C276A0374290145C0D899485A77CA9A3A6CAEE9952993016CE46F8A239B638370D01B43DF6D3DC4477BB478342F90B3EC23FB279091EB1301AE97EFF0B8EBFAF07C8CD409DA3BC472F51DD37249F64655329EF4750C1C66C54E84E2F6469CD3228A1E55DE55D03218189E81475FEAB302BFAF1A6C53A3FAA50AB17B627BD45A9BA2587CFDED84EC99E89E803A84B5D21F9001111A495E5866467018D463313465CE7BA73A071EEB83E8DF4C97597E7585988A30C499AE321C6B6E9780EE3FF84BDB199B6BC905171C53608B084DAFF0F42BB61BB72780D3456B652DED654675DF91E4A79A7924C78076281E9445D5D60524847E170DF4C887F2E31A18ED55B215BCC27DBE0DE127359BD0C8459860BC2D1DEB3B46832C23D54F08B43BAC14D468B5DABD51BB2C2AB9FDEB5626FCF865BDA54712E882A3CB5F328FFBC6CC4C1F184CEBB0D4E39F4123981E7F2CA026918B7FECB7913662CF8E29DDDEC0079A33ED226C73AFE8D4039497ACEB7EED111A175393E72C4D090A27FF9283CC5BD8969C8F239B295104D6BCB585324273BFF58E09481053CE7D5CD882AA34C5F038326105BEB85662272BED3FB9A9361A483EF6EB67DC53181589C3F63D4553984464A3C31F9BD940A0559152487F3E8EB0998F54CB4C66F732D05E5FB4F20A4B398BC84D7B10E0A60AF06E2CA42D8E759AA4046765374625B57C5DB49FB517853A7F57D14F626EF49D10ADFEDF87530671DEDBF28E34BCF356E363C82A21BC1EF8C4CDB01ADA71950D003A05C46985C9F4604C89F7824ECD7BF65D6E0AE88B4F07DA8736AEE9ACB918E4E7B21D25468A9B6130689582CFEE12DBB84D9199B75DD395CCEEF94354D2B28435094347B9C6FC72203D54FD235319B24A9BA867D67DD7B33F791397F7F306C063F7B08BF5F1DB9737B16DF1C97EFCA69104F2BB76259927AE6AD45DB596AD5DC925B78417494C4ECCFAB88D6A0D4E88DA0ED836F70DF9388138AB7972A75381EDE6A519768692E09CCCB5C2FE15EC16D22354CB15D1A12DF61F37295E1F687AD508EC8481CB5E6836FE15AAD26A299A585D11C5FA5CB2A9614B622EA0A25F0F51ECE3C4D8DF40C9782BD0EDFD6122C355916FDDEE2B446FF3F4A9320B2799DD9DBFDB1151C357EF75291E022CC5427348CB366DE5F691BB33DB8AD38F1E13002D500957B643449CD35140474959E60234A75F3154241D95314967EAE69E895DB608EBD708D7A92DE2B691BA8229B4BBC7CDBA57C5A19BBE6205D623277EAC4058761D480AC171F03A73639199D2DF7897E860BBF9FE83E9D26CFA10536DE1FC022BFBCCBA5A34EB9B910DF9AEDFEEB98A9D882C09DA7966C066F23F1F05F936A33DF9A7D569EC678EC0E5A3F4326647439D080E253C416B5C375C5507A9F6397EF745FBF1DE6A314692DB99822AB883AA92C1B70581ECB2DDCBF6B8050A6391FA1D850CAA2211DF019CE7D9051659A250A27B93BD137FB682977BAB22E718937AD32B97313EFD3A38AD0CFDB10DC823F0FF49A1E2761E773940280A6731F8275914A707FDBC6B01117EEBEB0A6385ADA776ECADB469577F4C5EC6081F02215A36F2E8A183D6A126DD29CBB1317557F30DB5593B75D1CDE48631A750ED4050F7AA3547E812FD2515BC8FF85452EAF2A4903ABAA99FDAD2607BED5061F02FEFC70C6221A1DCF5663AFC183A140AD5D600B9A7FCCB0037EEA5705918464C059937E0E525252372FEA1FB2AB59B8E838AC2AFCA220A636EBEAABF2F0ADC00DAD47C68F3548DEFEEB65E0CE8F350DC143CFD2ECD99681F74122CB08BBC73A97AFAA3C641CDA585D65DC0EEB7D6F8CCDCCCB9E08FC34EF2A6FCD9BA4FFE17A83F7EA3F76B662AA829451B78083E99A52D0D86A5509EC634E12B87CC22913A984429DAD57D7BA33969A7B2CE213C7BAE9CC641A403A0E9F9F1E6D43971A4D8E41BF3C9D756BE99A42EF46BBEC4FCB0EF951D12A63E1EF5CD8E4CCCA00EA75B66EEE04CE16F02ECEF1E321EC8EB9A1338944396843339EF065FF9DF68A11028907F45F906CD87350F1DB279D4B10D599B0BBE3CE1C5747FF3812EA5C242E76E67AE977F449263C8EA38DBACD48AF0913B27CD7F84B20B02BA6D50760281F6E85828E4D974CB0A73EFAB92A5330A22AD00C85504E5514392E8FA22E3E7AA3DF1BCD6D0D56AFBE20DF04D1908D7445F03D9A5B2234DB0C0C8A2924CECB2FB2B9A329040FE3B3CF52589E118EB75DE1C3A02596C0159CDFCF840CFA682B2548863D9AB34F3D82F73CBE78897E40ADBD96F9240E1B4A51A0D22E58DDDDA4DBBF90C1037F3B631777DD9F870B017B337697B38906F68F6299EFC5026E9C774903BC8A8A85A2F0FDE95DC7C20C1B4540C495569BD9D7539AE53D7E2DF5D214D1EAA85E7B551F7752E98401CA38337E21A9857E346B6CFDE9E80789A0515808246C610A2E9F8C288F24B7628ECC98DC6B2848B0098D0E44E1531C8676448CD2D393835EBED828B78E2AE820BA3D954590ADCE7E1C227259903796280312EB16F00B12D7C30F09A683884FA3B2DBAE9E47593F16ED7F3EF4704A7093404670646B3EEB062F9BE55AF5244B7F0315B273C3320CB9343E9251DD00EFA991FE9A34FB10C1DBB95215654DDE8AD0EBF922ECAAC3EA60D209DA466C9C99B86539909C331442FDF233BD8D2EA77AB9053D676C95D249DF72F20A8ADC25792AA9FACA94F65C0841D43A585099B2B36EB9B2BE76396CA5CD6BED0BB4357A5EE6F5385343B2A3D12CAEBDB836CEA569031A5793C38580E1575A5282E5F2B376C542C13B81FE1A1681714C635AA5E1F643C616131B8436958775C1FFBB3C8A02A8DBCD7175E4BE9D5A4AD252FF9A3D4A9A5E5554CE2E0C9D2F9C3EC2389EC2DEDBCB2B734FE8AFB95B5E83312BB220E35EF3E00CCA7935D0294DAC42946E09802DE574257CA7F4390D78F21360E3AB6B181590E87855EAD08448D4DF6CEF788E8822931BF9CF265F0A2EE8D029A3D1F8A4F795A9B60B77B52D2F551129468AE2B12764D7109E2CBBBA8EE837C2A3DBF2FD88D2154493E502B6BF7A0747814160B68B72DD1824FBAD318C2BA12FA16A5934F5A390F4ABA1808DC60FC5CDE8484BB431105AAB788588D243C18C33B05029B7C84C0D643600ED8C1D250E883BD524A83614859B0E025549B18C03D2894F37B9C584E0B371212D68BCFED60B18570B0CF63645C808286B9765725754E4F751DAF403815182B21C4B301183E2799F6BC144F16F98A96BAFFFC8B0B63B505762E2F66E9DCB44802D04D80CA8B33731D7B62DA025AB83B4430CEB4CDD0DE2433C396227E90F0DBD0C827826F9209A7672846B78BACDB935A271F3F18BE486952826C29EDD709D910EDCA1A8FB598712A3776DDECE903F247A88E4247A093B5DB0AA8FBC51572263F12063BDC8DA8140843F581DABF765FCFCE299CE315E67E7C965D51DABFC2AD5EB72426E0C43D60551E1C56170CA73F89B6782C4027B5ECBD7EA87D611E82C3BF54CCE971A60A719BE00E3C81B60E7B375C1532852CEF9DAFB88A130B218AC0F4C232C8418120E14EEF266C2299F640C73B09F70779771C226FA4C3B8B00D52A195E2671201379E5245D5DCE08DF4AB4CBB9C2478D9B96F32413453988C875299C5E4A315623DE8ACB3F4F3039D2D7395A424C7C998FE270B6A21214AC1BDE4730FD8E991DFF3D38120BDC8223003A5A524E04A2FB9BA7FFBC2570076BF2A378E7C8F97F2CA4C74C4AA2B6B2A8EAC571053B9553A8A96A6BD83BF665D473C742B6B69CFEBB8763AF518A716C180A41C2A66E6F5394CC8262779200C3279995A5D7452C25B864A9C8EA424E1334262871B2AF99859CF79F71A256EC6F580068359DBD704BA65C4926132F39B723BD145C88479D7154E5F561AA0919217174BE0204B0E85F8ECB3850ADA9412E69DD919873AE9D2849BA615EB46D7B0EE036F2D").unwrap(); assert_eq!(sig_act.len(), sig_exp.len()); assert_eq!(sig_act, *sig_exp); let result = pk._test_only_raw_verify(&m, &sig_act).unwrap(); assert!(result, "Signature did not verify!"); } #[test] #[allow(deprecated)] fn vector_slh_dsa_shake_192s() { use fips205::slh_dsa_shake_192s::KG; let m = decode("D81C4D8D734FCBFBEADE3D3F8A039FAA2A2C9957E835AD55B22E75BF57BB556AC8").unwrap(); let mut rnd = TestRng::new(); let sk_seed = "7C9935A0B07694AA0C6D10E4DB6B1ADD2FD81A25CCB14803"; let sk_prf = "2DCD739936737F2DB505D7CFAD1B497499323C8686325E47"; let pk_seed = "92F267AAFA3F87CA60D01CB54F29202A3E784CCB7EBCDCFD"; let opt_rand = "8BF0F459F0FB3EA8D32764C259AE631178976BAF3683D333"; rnd.push(&decode(opt_rand).unwrap()); rnd.push(&decode(pk_seed).unwrap()); rnd.push(&decode(sk_prf).unwrap()); rnd.push(&decode(sk_seed).unwrap()); let (pk, sk) = KG::try_keygen_with_rng(&mut rnd).unwrap(); let sig_act = sk._test_only_raw_sign(&mut rnd, &m, true).unwrap(); let sig_exp = decode("A2C90186931A040BE4287A1A40706E5FC0C81FD93193D695772EDE7CC10D83086E93529B411394765E77F636F6A2EE7AFCECE43A726293C4B94916E891A8B7E95963E7C1533391068CEFE64F9FE391CF835FCB583851B9A8C444121C6909ED1CAE7B769F73FF40BB5FB48156385D6E396219570B6D39E91491E8866FF33E7B03CBC84B3AA1EA311FE7EFEF79CD4E43F10212F41282799E570D1385115D43DD774FD48C5913B11A261805D53E5330C2D0919DD2A734050D2116F93989509796CC153251E6F8A0F1244EA2B61F0105D0BBAAA850CE3F46DD8ED4DA07DE7066780F189A32D1EA749D0CD69900624140DC83A69DE6B8AEF8134C050D02C5A866FA6B09FDBF71E9F2E7549A76105A5B3071EDE8ED725764D5E036201A544295DD36C411D71A1860262BB3ADB7AA4A2F4319D42297C5A79C5FE61044AF0C2D4CB027D819134D8347A2BB55B3099DE0E65C99FCAA9803D779193D6A01CCEBDCB713EFA1DEE52B634CE13A5E50247ACE1898A2B0F250D37F551D87D3F24191E1F3832A3D7E8957179E06DEF23C661B75EEAF5F5F45218825841D97E26AD11E123631AD8136BA5F0B052108901F97BA4692B053978A1647397E3AE9B9ED666A33D1C0CF00C0223CB8E8FB1E3BA4D1A3EBF393E4C13B0C83CFEAE4E42E21C2E1EAD8CEE4C63D5DA07CFB915762F6653590AAE36F5816C4153F67BC489FE276259D5994D0E3E974B298D4A338F030515AC8609B4EAC1ECB25302F2813003A9CEB736F09425B3789D9203D3514F1614038AB7E342A590AD8F70357F19B8D976029DACACF907ADB402802C6516DC7AFB3E1F02CB85822EBB1ADF9D00396C92B4D6118BB0A20B2CFFBA0CAA9D47004200ED5F6C1FD6B92DCFAF56EEAD46016D15074B69410DDCCC044268296C50C977D73D56EE662964BFD6533BA877F857E91466CECA313303204A54F034224E871989E73160A53E245E5D4EEAFA0DC5CE37449627B8A981C4BF91F254DFD79228A706CB1A900BAA10B6DFF26B46BBF42B735BB989C370BDE4A7BD18DE4C09D021CA99BCF1C6B0D55AF5CF7D162AFD24FB3978CBEA372F094889647C62455AD6ABFBF2E421675B067E9449E3238513C07B50E1CDAB1769C3DCAA52733824FC02A480D7215B0C0B9EFF5E6D89C7FD49B0779759102DF96C9E77105B6FB0D8374A88F60DC3BE039655E683B8DDA65FDA4643D8D6D96EC9D45BB673D66B476ECFA53C44200E645351DC25B33019DB6ED75D11B96ABD6F5B6E9B70A032123E1F15E87C45D5F13E0C066015C128BEF43CCEE114971B5B2964761A334FA95BB9635A27722AD3AB4A32E36A1A710267A0DABA907F1E6B90F2BB351AACCC54FFCCAAD5C05F566773FE30DA66F354AC3A52EAB49E68EB4273366898CC35E2A99D2EE76F5F6B0BB0C22D9F52A0431D64CC0521BAA6B616208C78A27BF1B24EAB107C9595DF681EAE0A5F550938846A2A2AB29FDC2FD2E63025537708487695E254A2B6A93FB7BF7769AFD2924A6D59C45F23F934860CAEA0E69F60471B3DF3FBC3C633338C3D162E4D6A40539CAF8ACA9898A4ABCAADC7FF70E4343AFD094ED26F1686F2F52AE5132E74E6D6B1773C04EC0B60F1EA850B15F215E11ECEE561FDE2ABC83D19F73562ECD7D4951C97E798776F34A39085DE024DD8EB691D3410F923ABB5DC4DCBFC0078692D7BBFB878A727275634F8F65C4345DD919D17DF227FF197FF91E34789A4BA65FE866B6813762E5701090E358BA70C224046338064C4968B294B9967B03CA325F210B042B7B532FE7CF9000F7F4E8E34197FEA5BCAF8F2C7EE125B6B13726747475A976DDFE2C8834A8BB27B3395035C2F33A8066E0AF960319817165C4DBFDEBB2010BB6B662E6B02C795F6C5FAD765F223B06A828B9AEBD113547921F1F222B853C0C0AAD948AC07ECECA82F76095A9983EFC09944BB5B50DAB3DCA0E5BA82F372845A3844E21F3A1DA7E92ED9DA1AE088C4036A81256AD943300CD2F141D638FF32C4C7EB76F04429985992844FA6AF91D60F514FC2AF4A89978680F8C9B0567FCB6352AC1E43774A650A6445A888F8A6979AC2AFE37F5CFA05B1D464F9B7EB1E5F6F3D0CB8130F396B1CE91BBABF6F02310EC7F6CA3DE49440F6ABCC00275C5894172AA6249D64129CA7075A9DE0935B204187417A556394C8070101C4FF5908F94D1AA8957534A4A9293401269745EA45332312D746017DD1A5845301ED0FBFAE63436F93F898A7E2BA2F57CA8F49499768C39F6B65B3AF42CF7E33207245207A9B3AF99076EAC160E7D38EEDE7B7FFA66BCC27AFD1EEF41DA86AF4A55FCBFA47A2CF239D8E5ED557B2BF5226FBBB25B28B059AF44FE91AAE0312FD0A32732C2E8F49AEB07F3786088BE458AB82EA667A3961FD6105A13E5437444EADDCBDD5EEEBD168384085B307CCAEF9A3FDDCE28451575EE85E11638C84B282C4D7223203D627684E3C85ACBB668F7B4B9B63DE2A96495621F43E2E16150F9D860CF6DDA0BF4BE9ACAD6F864F8BF9E59092D232A9BC66F2A51B2D09B4CB1A8B7CAB4E2CAE495B250D424A2B8419238F8C7A708C9CF00A9F60C65CC0D8CD321A74AE84C9C6D8755DC33242ED8282E762141CBFFB67F4E641DF4B7EBD4ED2F2846BD2B70D75C4BFFB3BA3A96672A28B16E31C6D75C7AEC7A722750DB78E797FAFFB62E2703B5D9750073286B9B35B02A6C3D8C531DA2AB18E94FF4B65BABBE48DD4D69B3B74DDE7E218420DFB15B6AD33AF2A2E419533A0A5534CEA81A819AA916D549CF1D3FC4A158E58F4ED7EED50F0AAE2C68BF3F64B9295BB8AE4B7001FB6E8BA84DB4C2CED2C5AA92EBD6C4FCBC8079369BA56720B6BD36083C67947D260AFF4962825B9551D32AE86AB01D4D8B3738A452F8C8B4FB830003A4F609FA61379CE3FB2EDAD757B09FE25C530809845298FEAA1E2A36C92D4EBD2BF5076470F1941E3C642FA9EF059D4EF0F7CD345DFCE42D640C7AF7EFA4E9EE7BC52D095A7871FEA108CEB3F9390DC4A32E03111C872559BF62F2DB6456C2187533B36CEBD9642A4B29767E6CC20F6A050CC79D065881BCD9C523A0D43A9BACE88F93D6D3BFE026E4F44FE0FBBC9A0F25F82837A5F5346CB282C4E8B995F63A405BF945C183ECE9849ADC926D9235E6B935ADFF58B9598A1E267AC2EBE3A31FC52204EB9ACE21BB268CE1A55E39ABAE255B05718252B4F75B6267F345291A8184B605EA6A0117D23E39C7F3C5DFC7291A8F1E066B77EB5AE0731BB528AE62756B3755B1C90726C54550B87554FFE302B89AFA4B923FF4A0091011CB7BC698A0580D8583E4613DE7110E999BB50658A1F18047512E355D8268E46F97B5D47669273C691ED0110F1CF62217885E4E7AC170E1C9103BC6970CA5BB099EE424A8C8AB5FEF52DB6CF3355D52230059050514593F00967862E0088D40CBA3A1B22711B63ACBB2BDF878F54F423845855BF331FC068B36F61B91DFBFF09E945ED8BE967479503461C419DB148CF25A9F29B5EB7E4FE010896A221F57A852ACCE8B7B6620D3D80AAE7C01959A94399932070DC13E2706FC03BC622C292BBE2346786009C9C12F7AF939C9D4E7B856ACC80E7CB1EADADC7B8341E3020FD046FF23C19027EFF19B7C6EC7B0FD8A9598AB864C34ADBB0FE381F8E9FE1032DB9164D51AA00DDE128F03AB546BFC41726A6946486AACABAED9A37E096E7F1DD4F1DF79F56F5C4D3C9AE6E0A661E90E36DD861DFFC9F2308977308BE3B182693B832FC30BCC28B9BA695C9EC202F95783A12582FF4F8B397FD5397486A26817B26E5705ED0708BC1B5F67DD73FE3A3099481FCD173F7E84D142B3A159751EEA19E08D68780B5EF2A73445B75397ED197C81C35587908DC7AED48480AC4693DBC0E2BC499C402DB1DDDD1ED41389C93FC8695B1991383ED201B164026340742B87F9D32C01A41B7D0AE206030337EC32CAFE41801C2241DA9BC1BD5CDC0C8E14D473113854FA94E3028847E1FFAE18565ACFE64ACCC4331317A0B010B60416AAED87CB882167A260B61867CB49597B44714EA19CACE7757D1B23876547734A8F89B83E58CC20088FC22590CA40E5FBB7D86585C9216EA328EE6D26A96C2E4F651DF3234E3A686167BE3EF1602ED6E1E4B91FF75DE41D01F043CFDF21516E85951882F52A7633452C8EF6C21643845F0187055F4A74F4F01A8CE53BFC4F27DCF64190F52F218E81A5467EE2D847B419057D93C37B398AF5BC0E12BE319D370F8B385D25A602A2AB956531D99968E60713D2F0F314741E9F6E6EA4E5910C931D4D0319EA246E10D1484981318BECB68111C111C5341CF6536FF07F94D07D5E731302396A82C60427BF5C9F41D276D84BAD96F6F0DD71D81B0E7A764A5966C35B33E68315D01356F72DABD8E32827BF8C4A7302EAB63C905842647323CAEFA802A1F2BBD80EF50659367A9F4581D1D68937DA717AA7F5DFAB5DFB68529E4681DB3BA3FC48D9E4F77972B614A033190E1933BC557A6E6F712659301F1772EF8731BF9D9AEFC2BB22F2EE6E94033684F6746B898835BE833BCEF629D9ABA3BFB0814575E641ABD4E70AA4F198FF20E30AA7FF180D38394587C7C6A7599A4F16FC6EBE22B82997600A3D4C72EC0398207D5FAD0C3033584B9D9157D18275D7CD727FAAD922F101A6D64A4F6080F95BD7AF19B4E4022007F9FC951E20CBD0644404D1B7391018EB4D32E92106E6B99CDB433E80BB3AC60340C809AC5873EB565A191129EE15DEDD1685E9A6AF181B3E440F6FC48C6192D394F6F12664974F25F5332077AEFCC4BEA9B148EC861CF91A4A77C0C4A7B27063F95F2A6BD7E4A51914EE97D2BF60A7146AF0F55D536EB2ACE003CF84E5F23840A693D24423BA4387D7CAF37FA75DD12D3D82701A5CA7F15BB32D1FD6995D8BF0CC52570048E959EAB3194E381B99EECB7A4FDB20EF5E44C9D4AEEEC801A503F6217595AE24BA4354460C8FA5E80751BEEDFD3F8B3AE1E197905D372EF5F41DE130B015A7056F1F46F322EF4DF73D2E8B271D6E27BA02E271894285C5BC55C83F4FB11CF952C5FCF610F3629F62017AF9EB917CE2E72A9D27BD1196F8E0CD8F13F14079E240337C5673BC980F1D6F4728A1EE76EF2C1DA173B17414CE98459C7FF601161713DD8E1A75B3BB6E016A50ADF617D41B5C7BA2DE0E1289672D49C24E7CC01CE1DF26BE7BEB2EB36E9FDF30B7FEFEA3BA6EAFE9901B9B3B400F5DB2B69F73EEDD55F700F973DC1E8AE21ED0EFDB7E602EA01E9C882C9FDC8DCF02A4D2132971B44990147BB72E5AB4FD7F4DFC9174EC36D185D449A62A02BE160545C4ADA512A7D79B6A6A1859427A740261684FE658163A166762FDC593B2E1974F569265E8C681F14F0C51A81CD9A9166D9B0A08EDCB97B70B2D77F4E9B291966081756B2962CD06518BEAA9792A45AC77DB868E46B9856C458B5F11BD84A2938249BCCAFE3B7BED3D5410E683D0DB9E287B064CFD7BE06F63DD4A437297D02CB2DD585E1EC73A82165CC188FB6A57D0E4490B1520BA1429831E69C25229BF0EF5E8887F9E333B1871A041340A215F79870E83C46AF653BE38E21CC27980383F4683EC687413C957FB228E1E3004ABDA4BA5F768A85E5ADF30C919E306006EAB45AA90FA884DD665BF755BEB61A104F52992E1F5FFBCC734AB5EFC66568AFF6CBAF210153F2223633397DDDB0694EB62FD2F33090D7EB3D4EF616106A069242EDE6F5E694719EDF767A0185A87433C17FBD59D4EB91B115FDDC0B3A9DB4E7ABB60C1606F6F7249612EE1F02DEEE0612DDA5033D8F11AE11F679C39FEB5149AA9E32C27203E7B6793801C451B56C7D15475E1E0EBCC80C39A3DC936B1C641B2D1FF311BDC601099F05766575F59A2165B408EF18309FA0467F22E5F527C9C656CAE26A4A04DDCD9CAD754492F9119A29EB60060A6AF04F26423CD7ADEEADB843430A6924E20EE6E49BEEF1D14D94F6203884E0F0D088A186E271F516FAB81753114D8C1AB5E52FAE5C1D92EF57F97680537A62D51F3A69BCC7FCD1FCACBF8712793F1A5244CC3B8C8E42F74C73BBB6ED837319C765CAF8173A820422360A7099CE71FDB205E9E6980BAA7E9EAD6A5A6A4DE9BE22FBAAD4FBA7E5A624AADDBDC616081188EC2A82F4AD5CF5865F964A0A7AD82A62D3C05DFC5E66319BFB1908275E9FA0E725E05BAFD1E645E7C0560603048144E8A6E92B669C46E935590CD24B9879AE0A7B42A3377429348AAA8F11CE5920112318111F529D0826CBB92CCB3FBE573B21198699640B76CD3A786665AC6C1089993382FA0B3F6C2F5A9D0C7E33E586FE1F03A3E3561E5BEBE6C118845F68D0582377AACC3C95C058CB0E10390AB602AE277970169E068AA32BD63BAA42488C600846AF10759A8CB5D61288BE21BFB9D9B41CBF928736A2624530042665E8A6B13784ACEE5FC847B87A17B0D29FEF8320F527DB85061AB59FF8452E55BA1540002B5B5E6521F9E0F05A3AEF42508681AD6ECB63B707D6978F10140AFFC1DC37ABBE7F0669ED2E884A6DA5B4E3C2935ACE3345F3DAF7CC6602632F2387B89A98250EE45FBD130C8DF312705838DDA3CA7BC3AD32D12AFDB2615F483EDE9378DF193362215B82D22D59E63CE68DAE21BFF6F6DC6A33A955E5A2B7682BE01292FD92FE29577FB428AED2714EDC290C7EDB21D79043B3251C43A8276FAB4C1A8F4E322D650750362B66B6391DDC736AB986071520E0A8CC33663B823B596618BC63CF03D0C6C2CE4EE8AB75C78B6D3C904ADB6F206FA5DF7A77678378D2B87200934532B961DA8C70A21B46B31CC918541CC02BFE2223FFD2E95F153E2C728453EA85A3B7155CFCCC70021E3ED560451E2D610D1C2E0E3AC56BB7817E5D48D35DD1F0AEF9B1DD2DEBCC19C5F0980B1DC6C99C104EC30559D674C25D045CC42FF280820A57851004FB9E8EC91348E73F1CB234FE4FEF2406553D2D387F0DF45975D6C66FD73C28004F47492C47A432F1DC1DD60AB43000BFE8449E10098A914B7F6B297B94FF3DB59EB7DACCB9F00E2A90D3D0B6D3961127F3DF27888865E024B96F5A7CD4908FBC1D82D17D98889FE7E291EFD5DF8DC5859EC0438D044D89163FA00C7AD9E624432DA44C42B4FEDF601BE575AE866AE04E02A9C303F2A7B3E3D333C85CCEB4C679177546CBCD03372DE34486139E808E9E5C040ADA14593E3D169DE1669CFC3C73D62BC6646965EC8D1D7CB50EF25DEFA5C8E39D9C264E1311071F37EECFB3C48D73F3699620A4BD3845D62017C85B3399549E792E6184E0E4BCA7F674251A1840A43CCF8F7494545AE2C6433AF4971A21EFA2E4D057A27AC97E57D950E8F95BD68E15B91EB55DAE2C1873E2BD6237F81889DA8A3394EAC92907A1FCEB8EEFDEEB9BD5EC1E79AFA64CE23ED75D4CD755CAE40BCBBCE4B775760C02BEA066A526306B77CE3376C161146C01C6B9ED934F733AC522B450BAABC84942126BFCB07AA294D0BF27983885FBA405CD2FF739214208C2C00CC03C0B45F2B5871E46E21FE18D321B59D0C96317C4272EA1C33603E7B8D95D4E72722528D85E91D8919617DC247AD80A4E98B08E306488D867C00088654B04E322BF5F2A528D6D9C3E32F22CBBEF0C8FD66B30F66A24E0A3123E3A2F7BACA22BFADE22B162E61197EFB10241B49F67778D5AD094B85C196196E3236414E5F5866479C660088DDFA6EA923E7A5A246AAF21B90B20ECE52DAAFB22B6E90CFE060AE7A505C2686F290EE8623448CD9A75E80CDF1C65A2579D9DA5F62D8C4CA2BE155D9F5C1FAED260B077682AB47F04CE14AD3E147E4C1109BF1E69D1E3BCF455754147ECA6E61D2B6E821AFE405B8081A4D85FA8994E5BC42045CEC24E5A8DAE70E432AC7F546D3A402A4F035890A559A6DE8C17AFDB5E291CA45ABEE47CBA6CA61C6C283A4DC539767F72953CFAC98B648D251BA08D0864117187F7EE62FDECE6ECCF8E8C59ECF76273BA0931DB89730FEC89FB511C695ADD1DAE48713878E8705CEB9409E9FF63E819C797F30FADFF8F5D118D39F9E68147388729A0779DBF38596E38120A270B1CC1EEFD84EEC195A6DA8C363AC0F845F3BAA34CF39C34BCB500515417C45028D574FFBFCBF68711885C6CB2F7A4CE85DC70D7CBC7E2ACA5B16101A77166D57DC8002E5C80187717CB1326FB8F4196AE3AC1EC4D9FFD45998A7F77187EC017325FAB4088790722972C78FECE4857913B0A5577B2E46BE96257279822B7C66078DDDDB4ED59D643243EA2FA11CECF47F8CD0230F68C8DAADC2FBA4A845A7C85713AE0685F9A8F88C9F66669C5365AC6FD9EB2C2631280BB19DA1A5232E9D27D84B79615ECB8FFBE552C97409D74CE4B00EE738148F5CEB974BFEC9D3B8880F5E1095C02126ED530F65CE1244C6779FF18EE8A85D01F732BC995DAC6D977FCF8A6063D378CE15EDAA963A8E96836352894021F7A96EA4D3175F53931EEF077B77BF55D5F7A21D7D1A2A7DB200EA93923BE24D46BE580D6E185BC6C8DD43460B3F1D38F02BAC725E38C59AA3462D05C67834BAD876F1C2BABED8A1F2420737C97A6512B971541EBD517A8AF6920749D8D35922FC3062A226069959AC8291E0F726E1F8AD485A4D3B39FE7EBCFDE7942D39D60D0153C3A8571A650BB6D26DC32F1448189E60489843E6EF61C07861B5678B4600704A0C4FCB884012F2B5FB3304EC50B5BC4A8DC5343F4461E42493AC496DFFC4DFD2D8AF0F2C3CA76FB19E960C1B4A57CDF390CB50A83D11FDC5865E150F6CCF9B7A7E5B650981E23CAACB7CB7368C9172B17E528E29C288B1CF3CDA5C07CD1DC7AAF1EF15B29858B190A9AA1C67C3015400C0BA84C8B124306D27F6F8877CBBC634DC9DD4DE3D09ABB427E7EEDAA0864A434654EC6AACA7BD5337BF0364D18BA1885B1FE6C29BBB9F0EAAAEC9AC839609EDCE50BF8F8BEC9DF03D9D6A95C2006B85579AA3F155026B9FF6003C393F1F603FF01015EF8E2F8F1AE4DF9D8726A60AC5586997083478DFEECC1B2D41CF720BE2D70963ABE56BED342AE8800A1272EB3668E245E0854E31BC812B304489AFAAF7C241FFDCD202921225AFF1AFCBF69FDB202B4E88745EFEB2B2ED0809BAA1F2AC66E4541441177DABD5AF29011D04336DCB4D419A1C2FC2E18D22EA116E85E88DBE590621799F12325B3A10F2358070A69CB80ADAD8057F124F68FB325D8AD012D5DFF1168A77CFB89A956C090CADA6F95C5C3978D180DD9FCD080BD8FB59DD28B040EA6B01666896A3F8CB7F53D214AAB3A64AD5B7C2A50926791B362B6771E77D4FD95118EB23455E9255A46D652CD1B7BC341ED421FDF1650215D9E11E6DE55354D026B3571E4BFE9891442A0883AFEA012DC0E710DC588182A3AA4288A81C138205DAFC6B270D0B329F1CB82B94ECF50EB7460D242674C501147CA610BF530FEAF46FEEBCDC6FA7CB6D0BB2B24491139B21C4F4747371C696EE7EBCC44DE39754C09E8C8D47804F2FE266C3EAB50C07F7C2329D197B8AAB35E9DC0DD6BCC3A5B84FF5ECF13B290FE98BC77387AB9E88362D6333A4E91855BAFA9D4702F6EC04734F867052ACD97A7E8C2A301846CA09B867C233AB991CDD7A6196F7BD64C77387CCEF66874C38A2588A6BDC3AD148672AAD504E0D9D4CA05631187B3110933B5DCFE77E2BB961602CC635F0A9C1E557555AB14F4FF26847C3AF6EBC1117C32715C3B72907FEBD23F845B08C22059596C4EC3DF89E2CC90DE776B18786A0F531E45BF51154976C55905FBD74037F3267BAB981DD835934EC050463EFAD7D639FCEC3B3D58022B8A2B462432E5F31DDAFC9AFB40ABD5FF62CD84576A3AD156F904F88B1AFF19625EEAFDC027F6FCFB51299EF119593A8F4F8CEA76092D108A2E4B23F9DD27D790DDA85BC1C41425CDECB0012E8E42048124262C3A8E50B49D18456375AEAC28F9D50BC9F3F81F671522E63E0BA4839AAAFA271F48334DC0FBF4841ADDA78384A06907F6783C4B1F0D90BB99BE4A87D050B588D2E060C278F1DEB6E21D93E0178677BF88E24FD3AC6A7AAF9BE0ACE58D7D40EB2320C6DC6D203CF6B090E1CBC6394A2C70D3C1B0100ECDCBED13F6E773EC53B76A66E8D810C4DA47590994570E6467216466FD46500DA9A69D058EC278F6317F2815BA59FE813C521A31E666472B17C41B33ED9370463AF9A1786BD31127FCDD95C62A45D3B6B5A52F59EC6999B52F0362B4F1A3FF281F4369544062F8E05E8CEC1ED90FD04B326AD1D849E4FC29D802FF8BE6F902CE5DE4E55D41E08F34FE71EAADD2D69BD936F8E55EA31B7A5A8E893F110491004EABFF605A7881CDC5787D8F6766AB275843B5BF5D3FA27ACB0979E27E3BEF00F1AAA428B2F6CC73ECECF93B4F98B9BB7F30F7F935D5E033CD5AFA3CDCF1FC352B0B4CCB85C243B7D65BA9210C79AD97BB0B4195CA1A6D5AC18D26C2A850F29C1E0303CD047BC914EBA21DF501C7C8A8EDB03D568AC896DA4E9C9C5B999B52B7E5C15F7D739EBC58C90332842582C84A7903EEDA863500162E57BCA6D58251C1168C7E80966F2DEB6CB433C85739692AA41A6309DEBB0BD6D77FD7B851F69B92E66EF76A0A3A4E7BA5D6702BC3A8CE1FD08A07CEF750895EBE31995FA27B1C2D308FB530511B8C8DD812FDDDA322A2E86132D3036A6405A55266ABBF43B6DAD140770E882F6541CFD5F39360B91E93313EEB6D0012279E26D91274811F0DCD1162477C4A69C3A7B5AF606A2BCED9230446AC4E9F82D5BD3F73CF05BB7DE6FDD6F8EC7AA390389650D3823AB11520555C24EA51C562417DF318D492AD4B91A183CF0AB94E2265CDDAB5E22D95458F3C362877AA46D49C2CA03417D7409951DE5D462B176927DF0043FDBA6C890575C2C9711FC442CB933C966755410F87E2C1D37399107A67400F937EBE4A53E8412ABD52DAB0A4C4DD1656B44F149A251B24C575B0A1299049BB01A4A6159F2D97F6AB421F79789B5C56B814FC26337A8193AE4E3C2F1BCF5D1F58F7E7A87CACBD898064E12394333D16BE969ADE8847D16F16256C91BAAB4CE56C7D4416DF09CA22D318ECE0409D85E546EA39D177A6B4AD4888A5C56D61FE3685D3E950DB2F828D309AA539239F0D7386201E0E6B527F9B5E88AB071F1EAAC44305F1ED96240B96AEC7EC6E7DEFA36DACD07C56E2271DC03A657EEB24E261B000F04D90B4DB83DB26AE46CA0CD4F003CF02E6CF4515EDB5872CEA2F385A920901E8EEC83A76E24777D44D716FE63E2989C75FEE22ED5A4A1666328AC94CD19371DDBD5EA2E5894CE66B74A0FE708471CE200A7C6270F79BC8F1CDE51436E347C118D4D404EF10C8974947DF5E5259A87DFDE4BDF69F22377B88C1E6304607FBC81DA168C90DB4DE84ED529B7836A79D0D2C609DD24FB4731BFD225CAC25CAA03A477FBBE9A414D78329B867B1DD76D1E377D727F2C06BA4A97650202B5C670411CC0BE1391D3D6AB51AB0FB4FDDED93DFEEEE8B48BEFB76CE7022AFAF97C5C2FACF589A2705A9510C9D87A1F3C6C28BBF8677504E248E464F1AEBD9395A1E5A049DF7D998A9E662C0D11B98796E96484F891FFA4276EEB3D22B18709AD05C7C42E98F4E6DAAEE8DAF8EFB6E8D3B4F67B75D64831DC97589908AEBB2E10394F5AD7C1636584F437D2918E3F521D970BECFA7710CE48A20B24D86A0D016182CC525CEACAACACCAA87FEEEB61D729F99BEE5ED4C0ADE12FB4D13AF23621BDB6C978994FDC57B5AEBDF1240A7212A93EABA00171F33B6601E51E8F184460A034A94ABE6F3EA65E93747BBC014BABBA5F73914E3F1FED6686E7AFB93FFE50BCD0BB4FBDDBE1988F92A2030217DD7CB4943C2416DB6C3E7B9BA86AFF8B341D4FAE25D8235A086C5B3EFFE9922C3B627B3CC623F0AEFFD239ED7DA8C1CEB856655D7F5D53A915A497692CD81B4137F93F71A97EC0DC8022D0050C8860FCCF2BF5E775EF45A43DA1B40419BD10F6125EB810A086759A03BD39974371668BE7B49ED1F736ACEEF36D7CB546811A02ED2E3910A111FA073541BD29ED7918FCBECF3F28478E2F445389FCADD1EFD4CD538F5D9245529DE1B103166522FD23DB9D04C0B53088A19FF62EA983C2A45527735A7846FD748878705D236652134FACBF5C949F60AB5FBF033CE51F3E1361EEE005EBF6CD40D690A9491371E8B4EDEE251516E3675FD27801AB4501F42B1D276B110784C117CAFA0B28C24AD515AAD34B70BC377053B01871EA11191B92E3905BB7642D7C41CA601673212C2268B5DFF9CD732CBD76C1CE820C429FF7C2F10A2164518488BC69A637BB1AE6DD8523D82F3FFCDB4BCB839947DF90DCB6FC126EFE990EE0326CB7596051B21F341A4AA76284716FDE3637402F0CF1252BA09F6FCD53EAB731F32EE2C7F84D35140954B81F437DAF6EE7EEE1A95047F0A9F95DBEA1C9E6DEE6DDB95D89D6933C70E01ACD32B58FD01BE2A81FE78850F19BFB6EBA3F683CA733D6C285721B515490DECBE6D201F77CC4DF9B612F873BE435A6D7FEBBFEAD5926BB9660563427A0D4BC188807BF39DBB6DDD8FD8E6BB014C5A23C4AEE3EB3F40639BC039A90603A9DDDF6DDB6233F4C97677FE6B630C4E6C2751A0DA215F50193841D95D1660558C11F6941B4EA98D0DB1885544A4849B002499D77A5BE7DAA228AE0A9E578C318B6132E25949BA0FDD709A48B5B49002A5B39BB10F8C8DDAC7351D15CD4D12FFA5DF33A293D37028025248A7A0874DD0F006D6C740E8C95916AAFC4D8DA7A6910C27DFB1C564A9A328470E1EDEFA2974F31BFFCE9EF3AC0AD3DA91FA1A561925460DF41EE18C6E77F03AC4B53BC9BFC40436B62C0EB00CB3EBFA6E57DD33E4F11A35A2DC43E98AAD3BF1AEFACEE6547C3B96B0504C97738DAFA1BA9805FF4FB1A8A948A3EFACB1B58B5651618A414E6C015B58C29E180AF4EC63379E4A41ACD73A19AEDB394EEE30EBBA2B2DD2437CB1C454B9D521EFFFC19C596C59D61373A53821F583523218FDF0E71A8919F7D10D968AD6A837688DD956C7213974451131768B608672EB4339D47714776EE3BF8BE5909B5E9136299756E3BD33D165700E5851A66E792B8E048118710AF37B84F47D11B7C157ED9DFCAE23747FD5F2140E69C78D3816D95BB0909B57095BBF2B6C13939FCDF926D97E907FA6CCEE88C6DCE955600465D77E1DAC2F83DCD31ECFB9CCB8D34E1F04E1CE118DFA5EAD6409AC7DBB00C848668C7159137EE9F62DA85A60F9B3FB2614DE233761746468E2DDC833E56AD7DA4A1B18D2D68502F0EEB123E71D859CBD75601C37A672BDD036967FCC1006CA656B1BCD1690B743DB1310743F6E691208C2B73909C0A13D303C0DB08586901D6EBCD86FCECFC983DF298CCF45BF6E2743A889BA765A44A0F07D41E643D021398197B7422C42685470810EF921ECD0D6B586EF968319235DC7935AC652EACCAA4787505F85914B85DEC1E019582AEFE17C4F1571F58970F197C8E15771C9F784FFFB12E1A3956F3A08593ECBC20ACADD33EC303FC305F46436EDF651DCC43B62EC0AD11C3F411EC23C7CA1B3C778A62B0E9B13CF426746E8AA5F3DB3C5947A3A1DF238C022D6C5A64D02BBEE32A621061E3485414A7CCC609A69A8100A3DCC1FCA1A8564CC38D743254AFEFD8A7462851EF8B2900FE93F936F1EBAF6BF04307F0597CC765335CE55525D25EAF41CE55423B5EC0F3E71CB74B83751856900B9EFDCFA1481C4F8ED59FD995B0D3716552EF627C7725F164C1544FD24D2B8152758A4642A435B8FDE9A446D273DEB71918EE052B0C162E3007EEF4513673F3913E417D54E589D45397B5E3225C8CF6CEBE3D7FA021FC86E8BFDFA3E39BC389EC1120CBFB196BEE0B342902CD2DE7886FB153B6923FF3E33E05777478DFD6CBF202DD7FBDF6AAE2877C3A791BC59327CC6C8CEC6BD1AF0EEEB1AE1FD1096D301B4EDC23CE84CD4BE8964D36748E7624D72FD1BFC5C9B3A257668BE14683B6035B8EE8208A52AA7965A782D607655C7BA8788D77FACF2C5331E4EA1FF2E402D13F0759DEC094C76D4C899A608087025F6EFA609C4F0D9B515AFBAE187B20B49BA6B08C99B30201EBDE85C8D8BBF0225D061D1FCBA102280BB6ABBC7A3074238E3611E7D24D9C29DB0EF7508C253EAE3C6F6FAE56726C88018A0D03232B2BB9FB4516AFE76319D49FE9721A758A9A3B13D6BCF7AB8D10EDBAC59740BFC43F40470FDCB536F12D3F0C507FD78A6B59459D15EF34ACAB8D0983B2CE024DAF33F7925C697E8CD1A301EBC77E422A390FDDA7CEAD96127F79BFBA17326DD4432867BD0D5917440B547E134145D27DC434918B4BE426D4AE2AA8CDE6A3AB56B2B0CF5824725DF50A04640340E382E45D6067F15678AED49657C3161EEE3D0A629D0D29D104473B784EF2EB7D0B9E87542D0BA07B4CDC26711A71489D02E01D8B4DCD99606D9F052B8ED07FC23B4C0C485225306229AED88C27EDC7915EAE9584100BBB88550B60B4B4068D06D14A10B5CBA5A918AE7F8B35FD29BB9A82AEECDEB033E295ABB20EE8786D681FE56AA5136735E44DE5A27F4253ED36258B4C879BB5F23F87F1122A427E619B372C1B5B2A09B2FBAF4F98C10B1BDE76FACE3BD8B0D1480EF33DB13A7623519DA73CA83853BF5BB1A1B80940E189C5618510D76AA7687F7B0159909278F580F60F09BB77A112923BBE50E3D7F63F4D1D4D7804248EC81BDC4AF9CDEBAC21577737E82868A76421D98E950B65B791914A7CD9003E0FBF51CDBE09857B91B469EDE509370D2499ED0E6C5C3479E78A96E2EA97EB325F3DC18B24EDC644900BAF9ECE67F430C7DE045D204651BDD69BF973D22D1922B8761352DB342452E517A3414F9C292EDC635A6A73D892FE1AEE546D9E92368FD61108DAF891970D12B9DC36C3759555BDCF2B663C56C6C525B5A6240F836401145A8B8FA0C1FE5B865EF95745F703A822CB41A3EA48E4F2FB880846FCCD0F1CDB654DB63F53146C7E3FCFB4F69A3971835AF48EEA947DABF476C53EC7219AC18D8AB55268CAE4F10A0884258195A79C8EEC2D79882D1C942F316E9F0D7870FAB71DE6348EB2BD286F94BDDECB4ED23A5C60330E5BF152D01F040EB62A86C50197F7E5C541E8C0A269F3968D3A1A8607F5067E03E4D65CFA9C95353D8A19C01FD341BDF5C041EB552168A118AC642A07FA0957DEF1048BE5EEBD898915426300979013CF4A9C228457768238054BBD3D253952C60CEDECB01622FDBA6BD91631B648AF0FA8A0AE576D14C9D0853DF605D45532DF1DF18D385FCDEA701BBDD4739AE1657399ADF1CDFF9F3C91FF68018E0C14DBA0F840F04B02998CADCA880480DE6572A8CF5A59B473078ADBAFECF24D1A9AEAAF0C12B435747AF9C2BFF7589B531F3008FEF13746838F1520E7369FD285E51384847045CAD0705F687B11A3BAD544DF63F1B1F58CC704EB3EFD193054ABEC81B85B9DBD6B062F277D6559409981D73AB7DB9952A244A52802D32B7F13D7996A99FBEB2F4FF8083D4B2A14F3F3233E817B7BD5E34C759ECB8F49F702181555EE88D5154B0DC0320B2DBD51A1AB49990A967AA3DA49C214D00BFE8E2AE688E11AEF024F1AA362B5EFF41BB4587183E3F38B3B9ECC4F6874C86B3B4368680B5AFB75CCA6E8B8A49AA3EC9F85426D3AD7D6C787F505056D42DEF89EF6FD205F5C934FF2DBD81ACCEF40810E6C71311298EA17816A57D34F98A18F3C3C3357AE9343032DD4760B7DBD1FAB4305090296F44158BB89D4169D07A697D21970AB0FB2C85F0CF8692941F256C4EE8B44CDB29AC764B651AE451537C61A3489A5A70F6DEB067EB0B8E02BB6D34E641896D70FFBF860DCB46DD78774ACB97A9ED0B0EE6D418D9DD316BF6F3E5B064772B2F612821DFD57F19B9FF56B7FC1D643A77C765823B6D0A4B8DB5ADF7939DA367009A2B0528FE002F10FD937823399672FB16789F9EC82DAC14761458EBA33E84086658EECF7EACE16D43AD0487245A826070068400826ADADFB2BBA5EBEED2BF19F37D332656A8DD351D6D12BC70F7716CB553B749DED102FBF4473FF5E5AD1CFD76A81A85CC312040D31F572B4E96749A01078D334C9B77B3E002DF6572529B0A6B8904D018DED636ADF894B2E5B3FFEFF986DFF926BEE80E8A3DC9C5C7943B08A2DABE9BE03FF9E8B9492BE5EA9CCBA40F1D0C92D5DFB32FC4007D5C981D6E7806824682A248433BF26C76109CFB981CE1CBF038FF813CF94B3863E3B85FC3D876E259E67A5593382E3198E841FC18D955F2718D563BB9E6F54F53BA215BAB25845819087AFC7C8558D1609344CC358E36641ADD7D9E0CC7BBAB924FC72E038E927390BC15DE9AD195C9B50D8FB7BACB65DE3B6CC7A44C72646E9D0E4F42F6CB766AA88DD956CE4E08CF19315F21CD98B594765E87AEEE6C96CD73366955B97CA8CFD04F43789876EEA5E751030C52DC6E707C4B5FC592DF042F84F31215717533FBAC0689C0EA2D32C6DAF01A9FCBF1BA58F98B82A64FB05451E5F3C70E9AE6D844D1069C098C5DAAEB0E5824EC90265F630A06FA6A274A516260E385A9C43207A40437A6A39A54FAB5C8B727EEE48092C04F33027344283DBD1963B7AC56C121393984171966B69A7EEF1DB376372E82DA67B8D7526110264ADAF99705EBB8FFAA4EA027645B917D43BE0971139DDA86C1E7D26E4E3AF1C623E0C6C860C11BBECE6B83F5E4C5C48667CF860D2E902A533DC6F25FF0705EC2A8D7452804AD524436C1D8B6FDE57B57ECC2AB80D6D95E354E2A4349F1481AC7CA36B8CC6CEB29103C178C7FF926A3442992715BA77BE52D2C35610353141E3F4AA7F971B4D202364D0A5C98516EB9E9C169A11C75046E3EDF459EF157EE6FDAF3AC1A9CEF4DD0828D11D1937C78D02B054D2EE44F2051826DDAB64906EE3403CC52360F82C2F04455DE2DEC228941D7AD9EB1A2BA0E5221F237305F7D4A68F4ADAADEE840B69CB8DB81D994BFFBB7AB6C258F58964FB7297F84FA0B07A03F5072A3852F53B933AE3E9FF01AEC85C27A8B51A04DB7677A321AF0886CCDC43A14B2C96E6F510A2FB535BBB43F85A5B3D89361B20459BD1121076F986FF9361E1C8F58605A881C54BF0E55EDFF15C8DEC8C40D596C6E4B7F974C77AC0B1E634946BE02F47BD8C135AA157DA099FD7CBA51C465D39EC0FF6A2036B7BD4D134BABCBD6ED3B5DE3DF0A85546A68F445E3A8D1E19C0A0AE719A387205E86B7AA54D8C4E82C0FA5070BDEC44872ED03B1B9828A69067BF7EDA26C9CBC3D71CDF26F7F53180E03AD2FAC078A7AB3FE09FD9F446432F0162F1568EC4925B3B6206AA705487B642AE1F48677F8B5F322706DCDFCDEE0353A57DED7ADDAF595B60ACA2BA4F15E001DC833B7C3C3B3036D04960C5C6BC34EF39C8223BC23033790E90114184545A845765620BEE44D4288AB169BBC26B73C93D850C901059384BB0F736B54143B6D765AB777520F43D126C283E03F719B7DC45A2D58E58020CDEE867B48C3E413AEF756BBE5BAAFA5D3D17AC13C087692274AED0FEC06D4425BA116309CED5F9538A831E20770C60B05F2476DAE50EE4BAD80C3FD4A1DD23AF324831B85E49D806D5C881C6110A08B23C9A6E6FD88A1FB53B7654C184AF6F202611206981D70B627ADB70721C43A46C40410E68F7FFEFD8F9F996A0AE6E58E674614EF7C00C22B90C179CA3641164D95C2BA0402CCC88314DE249683790D402821E32C8E5DF50A1449DF324E719AE5007F62C7E16BDEBED9604BCC367498CE539DA6526445FD33A9765B4A2AE3026613FC820CED3CFCC47D0915768350798DE737BE77F2BC0C6858A212D544B73980BBD2276770F1ED8D37264440852E5FC524E7126477C33ACC9D925E6B29D24B828A9EB6C4B77D8054EC57B97A8FE0E78CBFA75E47E52D9BE1734464DF75E8B28857C95913C2E10708840FEB6C2BB2F7B28AE346AABB09FBD6BCF242D408BD357447645B15781A0D06F5C9099FB842D2DB0D6E9D6F775144B3B34D95BEAFFD5900C46F0D48215597F08939A4ADEA7A4EA89362A98FB1262ABAA10E828B0A0CB817321932293F9F9C8400E46B8BA57E891D1AE32F6960D87EE301DC482A8330D44B53CEA9D3BDE104BE23BE744FCD9E584D8FBA7F1B018345367BA06F1B4FA96980C65F4F790592E5F5B9B5498CA05090F7D87D15EDB564BB8024731CF84E2EF67C72F385E56FA0F8C7B7B801DDD3914A77D5C98A81DEA76D26E90378882B99F6E862E3C09712E74A7006D7AD3BDC15D502484DB6BD471E4D4845359A7DF2658E8F3D529FA54A07602832F0B81B7C840890AB86B00470F4C42ADF46F62B10F113A2D9A0E7C0F22401142BFE4582AFDA6962B365C70B6345D9887CC330A32EA2214A85E4EF25E79EF9C1D3C9001BE6B0F6CA3CA04330932594223F1775E7FA46883112D21F43BC1C42B4C51383CA17093DD005512D1197C2BC09B4F6AE6662C6F33E34524F868574C2029A461D93862AA2E3C548500DF1201FA0133BB8B1F276880A53F4B7AF6404CD54A4DCE9AA8224307BD2F722C57286404D3C66F962E2A202A6CF505BD339F230BC58D24C8A2146B970B4AEEA45331E6F85858EAE620E3A376AB307996B1473F81DE2547A08C8454B08E5DEFE52F26BDF207E261E28E2434ECF946358C21B63350F4CD89F4A86A962A40086B88C0ED13D4FE8C0BB3BABAAF90B6394D1A37023B38369212756E4CE98A4F9C71C45412FAD270916F186EF17D7E366E83697F7C368A1E9631D9FAF33A2041BC9589B5D604B2FF4C24C98DD92CF3F0AEAE902B7B7B4A74A859E1E0D929D6A34042EDADFD0345FBF8C311626E29719033E64C2898366DAF983DE8C62C6B4762BA07E1A9E1FDF47572570379DED04E951FA95D08CF862127F9EF8D26F735EBFAC22CAE8316561C041B0295BA7D681FB1948F81F1DE398208848F5D2CEFA8D864B5E29C2FADCDE76F9AC1183B4E627C30BA4A831B8D6A570912458998E688C05951BAFECB9BFFD759D339C7203352F101E1682B1C929715106B94493A587DF60D00F7A1B446BCD27DCAE8997A12CB8A02E69FB112F793DF53577212551B131C8D78FC853530A9D505416C6727CB09DAC9ADFEFEB061FFC0F32B44493165E8F9072112F8D0DA141BBB8B41CF6CCDA9BF38BFF79F4604D9C8C5806520679DA9ED37B915ED08BADF053E5B2B2F2A496FF68621D2475435EEDF156DF8F35720448CB8098967EC93F490BB966675EF299ED654931DBA8AC2E3315E923D3308762EB2BD0E96C64FD0F35012A9A55778F136DE2EBD835863923046CCDEEC92B031EB0F4096634859C9767D9C8E16802F64F697DC5AE1B68693D1B8086E5B879D22480C76E8CAA90E51A72EE6132E7938A4CB79D0B267DC184CA67C6661FD2A7237B49747EF8427A623EC364F957BFE27B9AE2332A6D2FDF9D77209476B70DDC2D1389082416780E045288D3FEEC146BA8CD1809604945D43CE5DA1A99E333B24F51C28E6EA6CAB8944CD76C43B76A84E1C827A05ACB27D8E8EFC663343AA4D892C99D375F4CE6AF1838D724A11CD1987F4E0FF349B946D9ACBED9F218F12319B71C71698B1555D1F4D0B7B4CA7EF0C55D1CDA1552EC467865CF7E612F08BAB9C5BD27C977AE58249B209616D666BDD7ABF6D0EC6C12B7CC50CD835367B8B5C5220D64618F52CC0BBC662BA9AE34DDF50A09A72A8FDE70AF1915A82E92F843527219550A67D91852F05716478D0BE978E1A1BC6666699F0583C2C6866F25687C20278231F29CD9BA2B11C2B4E55A941A40FE0CD226F2F991C2121141BBD5C2AA4A9503802314569088575BC92E25FA890805C8B5FA02F1694DA2F7E13323A9F6A846BF5AD4DE98B6681192DA84B4F66DCE48913C2C68E1447BDB951A86B60412A1CAC9D3E62773D3B29CF6CF569D8F7EFC1F0BAAB418EB66F593F0BF160D247B624E0F3024FB76589A4DDFD73D74CA0C695F658A2DAE83862FB98CCA88E40943BCE49E0A11BCFF47496FD2CFF44DA4DDFAF1C5228DE0B2624B4F0ED6B1B86F8304B28A7E564E5A1E24CBB20C471A82B15D7F34F9C2BA7F162B4213CCA9F9529D28B1FEBF5975637D17FBAC1DBC0F2B2BFE5E177B5C305EC939FFA0E960EA0500635A28E6B01C50F3AE39E2176C58F282F24599A6ADE24AD8ADFE46948BA69ED08F8942B2FC398A8A5228168912FAE8DCFD27A53518B371D6D654E166D33886DEC730B8221CFB0768D6505BEA1D948986BF3A4D2E5769691C5293F139D80F4D31573AD10FD3E7C0DA15F326E352B5D1AD14F283CC06F55583FBB8153D40600FA2D121935B44FDE2B41E753A05B1F309A9B2922F16260EF2BCCADEE28782C610E64E4C6C9928ADC77BDDCE1A1734718A56A1885A3AF3CC21445A99A4DEBAB7C1B252EC5A55085D9F23EEC21327D3E01944945D04829C90E7374C9BD5ACE9DD5261C8C30485627DE472FC79A731FA69EB3B217342D97ABB00065BFC7FA7C285786C771FFC2D5C8F3DBFBB3D1A3A171B34D34BF7A4068B02EE7ABA4B1A07C4EBD9A8B57F74057F85345B23D0AEE71734AF1994EAB3DA50A32891E6EF69BFFC277E19FA82EBEE8DF1E8598F0D39D08BF54B42BB51A878A15994B5C37113754A28B7C31012F1BCD964490E4C31ADDE1C7435E22A21EADE4647AA506BA59D92ECDF9F151B369FA33832ABD72CADD2E06F1A93A30919F873537CF323DEE63CB32555B3914F6AA7976FF0436D161D590F44BBA6E8CAB53FD536E49034286FA0A28ADFB1429A757E37DA169CB3070FC3BDB03545F1592D31E9776E3B1A1A8C8B10017EF0EF62156DEE1724F37DBFA813D70187B2B4D51CAC55614AC8D577463F2593E560AC2C9AC34AF19D62490E3E68F154D8DE0CB1FD255276FB19BA5961586265CAD222F94A416C04C6F2A91CBC43712DC34A9A84D2C94700A022F07C9F0F9F87BA98B802381CC818CC8725F37BEAEBD2E46F60121A9C52D14B7C7F9D02BF5C71E0EDA4E5C72EDE0C9C8822710D78DCA91FB4BF7C4092A992B23A44D8F282456845AFD902AAB4F8D101CB7E991F65EE42A9D8A150A353095717847EA34DA31FDD9DEF6D0A5689A7A8A73A744ED4F9795BEEFD239E4B9CD1C4DEBE4B0FBE385965D836BFFB574689A9E37C0C31028CE922A3FA26F2727FE8D638872EC4473C0DE3885BBE7F253589359BCE0E989BEFBA74A0937CEADEC6D09F0F0262247EF38E22152E1A4524F54A6163B89FABE41A41813B4BAC643B9065EC57C973AEAF2510F31DFA618DFDC751B7204130652ACA647F26494807333878682F5B33859D281DFE0D204A020D50E1F5E8B4BB650E50FA3FFF03FA5D26BED6382E487EB29AF6E14D66032B8953FD10A672AA9BE648AEAC4A358F89889E297608AA9C5C29FF79F2271934581C36AF096C9046EFCDBA2FC8BC16E87783179DD98EB24325CE0BAB5A0F1839209F34D80357C33124098F823A420CCAA6AADF347227CB8364FB182AE41717A5A39C17C9DBE3438FBF0AC9A0F7D87B725FAD06C3382001AB2CADBE342ED1EE35056C2948B11E866B816B13D1783BB55403076D1EC1B97AC428F728BC2C192EFEE73D8307A0713442B067662AB5CFCCF9459F9D817653EF6AC7E0F1B403963B9459D70D68B2AA95BB9F5BE0809EAA23B8E702076D8F9923967928446F699032140DF39E2AA6128D46A36E222F63946A293BCE53729131B7FE49D7EBCDB4BF42AF8091868E6E43F554BEB6D3D1BEDADB5D0A7B3B015226D1DB38109044B0F309803235B1DE7567EAE579C9787EC5906E194E38B5A1424EBE367D428D58F66FD683638130BC5D49542AE39C8FAD099A0D2F79832B5DE7F5DA35D8D7959C2945F308C090CC886A7DFF98568713472D8252359504E6255BAA2C4E0411771E9845EC33C81B36861B7A8032682F792EEFAAA79BBA89032467A3F793E7AF3D1DFBFDF208F5589A62333213B9047DAFB509A44DEC5F0FD24CD1F3EAF961775D227C215A776834CD81A7D47BBFE5327A4CDAD4CDFC3C220883BE837994CF41210EE5BB32C35B8813B1DABC0C1784E30102A7F0BD9DB11FC8111BEBDF8241D53EEB7271350906676E1FF70B796753189A63B52597ACBFFA098AB2F781FDF32E264F7D6300ED430275B034301C959DC25D9EAECDB8E5610439B6988BB04FF15FB6E4ECA6C83F8AB48E63499D2B7CA2EB4A5FFD8DE0C8606E619225182EF5E9B4FDB8404D282D5CE546C298F70CA93BB5674EB285ABB31A66E86F901500A2AFA93E1BB988B268668D94E468F8DA1DD93B1A73A2148C3F37AE54D1EA2BECC340F9546DC95F0AA61AF42781DA8D815338DCBA9CD2C38E2F8D56774C669F4BBA33EF36E28E6CB49EF356242AB6F9D76E1E9F83C17A6C5F451A6D4DAB329C1E05F7BAD64B60127E79A09540492A417AE2BF433A8456D3F8AB3B3F8FB52C1C81C812415C30629ABCEDFD1BCE2CA7B39D94D4D166527EEF27DA13E7D349E0CA13F96FEA3A8248013E2B0A94688D3817FE555A38B929F44B43E19FFD6E6673E39E8E8C3B06B50A2E45A58927B543176BCB018EE539E51F4D8CD4F5090A87A10201007AA14A3115FB3817D277AD3CA50742B7FF3AF520C3112C5B9CE28F18CBF5B73F3B6FA6F33BD0074288596E19CC386388BF14D22B50E475D4D9936619D4D399197957C672B8F238794ADBEBA4265097454834488BEE5C6620549BAF5844A19F7A16E9616C1E2651C3A5A9E6D0F52EC00EC4482F8D7DD956293C8415865D9F27E9E5F2F1C7483DDFA3DFB07F31F8F0E3DF4AE144B87BC5BCDCF56566C86ABF0A175F128A7C9896280B123568A7140F13AA25DE8B593065273F096F60A1E556C8B458D91A0C384E165D39882C64DBA2E2B5CB1737769BC4F001D17E3F4758371773AA05CE4DDB730AB67B87A08AD0E58763F7882CA6A2D44751C6AF6C08B426162D49061573415306066F5251D6F9CDA0D8C51096733D269149D1F9E6C5F8170F217AA935ABBEEEF81F75300526318").unwrap(); assert_eq!(sig_act.len(), sig_exp.len()); assert_eq!(sig_act, *sig_exp); let result = pk._test_only_raw_verify(&m, &sig_act).unwrap(); assert!(result, "Signature did not verify!"); } #[test] #[allow(deprecated)] fn vector_slh_dsa_shake_192f() { use fips205::slh_dsa_shake_192f::KG; let m = decode("D81C4D8D734FCBFBEADE3D3F8A039FAA2A2C9957E835AD55B22E75BF57BB556AC8").unwrap(); let mut rnd = TestRng::new(); let sk_seed = "7C9935A0B07694AA0C6D10E4DB6B1ADD2FD81A25CCB14803"; let sk_prf = "2DCD739936737F2DB505D7CFAD1B497499323C8686325E47"; let pk_seed = "92F267AAFA3F87CA60D01CB54F29202A3E784CCB7EBCDCFD"; let opt_rand = "8BF0F459F0FB3EA8D32764C259AE631178976BAF3683D333"; rnd.push(&decode(opt_rand).unwrap()); rnd.push(&decode(pk_seed).unwrap()); rnd.push(&decode(sk_prf).unwrap()); rnd.push(&decode(sk_seed).unwrap()); let (pk, sk) = KG::try_keygen_with_rng(&mut rnd).unwrap(); let sig_act = sk._test_only_raw_sign(&mut rnd, &m, true).unwrap(); let sig_exp = decode("A2C90186931A040BE4287A1A40706E5FC0C81FD93193D695DB6395C1C1EF3AC36AD0EAC32544588094A8557CC7A8E0422CFA09A5F41C000D69FA3A1AE772D7BFCD62252D54A6EEA8F75DE0A18DA8DE8D9D3DBB43A2731FB628D86105168AB35EB2927FB93C63871A358DB670E40C55954BDBC0B4F7A9501CD1446B7D7A21FA4D287CBA7203C7E8324AEFCF72CEDB7C76BE26E575829E7F22621137396A676A72CE72A931BE154FBBDBAC237E96011A0221852972B8B5B4EEA44C2D3C1712982D28B73E9065156328F501E4CBBBA76080CB06D2272DD211240135B635C0AAA6141FCEBE61CF891BBDD31B3BA7FD6EF6F3F87386E36B9918A8FDC02258F2B0197CCA5A44AE57FF52B18D2865329F52E8B91073EC63204F57795EA121CE58A5E170CC8403BD96F511BF0F0F36C99481B6E1EC0A8C9637D5F72287C17F485F5078282B5F8803AC392726FDB5B09F18B6A4E1F884C6FFFB3E546832C5DF33E7408613A354DAE2F4F66EA1496472445DCA1DF6C0867DD1ED07D72EE0BB98E5406E3A0466C5888E32544B67EAB1320A2144D4F15C74A3B353BAA69FFE3B82B1616DBE8BCFD1F852E7A99E10BAD140FE52CCFFC27CCC3DDECCAA64C112849EEB07B796123DEB543CA12EA22EB9A851393C40986888BE8CB60D37F0049626A7351BFEB5A300C2D60160A2BD64E96409D45C7DA84B7DF1B72F8A7C8E6B85A41C1E6D3AEC810C20B76DC1214C2EF767CA537F1E7B56D7A42A48E8F885A914702117DECE6D422FF918F4F6A142763D6872EFEA703A958CC700B4C7F763744C9FD8E0852AA04FFDF0C37967F6B1E2350D19A818EA4DA9ED02388A073FDB07ADE8A84E3E971D7208B3EE1F2D5540F0B200AD7733E1E81094F532635FDFF7B1AA5157B5EF594692DECB004B31B83E6C7DE76FEC9C6773D9AC28F34532B6216A42B8CD04D1954366B5AAA126AABD56F961D633A7060B41E90A8E4B011484F8CBFE6542D9FB4A06F6DCEA1946644F0844CAA1FE483AF294E99454AEB33FBAB34094B784ABB9634713A020498DC43941468C03F9D0891538502088FD6FB5C06CE52BAE4BD75FE93CEFA9C68B06AFFB702CE195728EB40698C839E268BD377BEAD45E056F426775952093C5FF80BF932CBDFAB1EDC263090306A48360C2725CFD2330F0A078708E05ADCE3BC7A2AAEF2721C5F0F1C2C62E4BFA7F081F5B34FEE6F1856B2006F379E6CF9BABFB56FE9FDEC5C9468789BB9548864AB1E8DD3678B99557AB5002722397C17C04A588276B298D9DB115F66910529CB50C54D42CD0B3F37D935892E3403E23A0B9B6AF3530E453061F0F378DF4A3C580B4ECD4AD7BE44D1F1C65800D46428F01971C33F0097C88D5262883CB4D4DB05ECA16F5973D2EA54A4A06EEE75C84BD508E03C213BA0D8028EDEE1A5E522C2DEEE5F804FF26722916CF6F40AFA95162C4A570287ABA21267AAD4CE276C2D8FA854F571759FD41DB5EB12A6785862B087C19156B2F32AB8BBB728BC9F1E78A49B334228F88189A0074CD56D19F3C56C600C5CE9D942C99B2C538EFA6ECD0F453D9100EF4C7C7FB9F31B18828855D60E1869A6486372F174FF85FFFFB4553941BDC1545DC054531305DD39A5E5AF662BB7B49660B9802602236CB40E82B74DEB04784B05DA41B2D546E6368639D39183BE24D2B36B952DA0CD9948C81F5D7150B455004FA87C4F32A1DC936F42131487F100BD0A1D8B4014B30C7D95C577A27A1181BC70ABB8BAEB130D89DA90758B0DCFB9760BF0D4FE9A862EC8B7ECD2ECB214D81BC010B435DD906B389A23B1B68D19DFF3047B7B9992E02D7A3D2B79B542E8735DC70CDD471E47A29C25AC6D56CC88126A0F2B164F8038574754C768014E0D60665C42B6A1BA688E566D98583154365435737DA41C55BC17ED02E36F0090E4D8C2BD593497A0BF88C39FFA5EDEF0E4BD867FB3E2198BBE1561FE1451F371E95320A9DFE036C32EB3075D97A7B6A641FBF41D4361C2BD5E4C92ADE8CEEB9DCD58C4A7D2471EFF76DCF3B9A4A1469AAC17DBA76F36D65F9F6914C37340C22C00158004FF15AE21661593541B2013417BCFDDCD603579661F3AA82E41D6698442A9EA86BFAD7A5C94A5D504826D111F5E6527EA8C544C685338B9642CCA7DCC29C156D28AE8AAC7FFD65A297FB648AA702B62E209C35159113EC36A2D46B4A12B31A0FBF06B80D24EFB917DFC2638677C509F9697D4E4FD877F982D804A4F7D395E230FF52628BA18C701554AF6F500D03D1B99F540A3D374DA317336C42550C2EDE87F5E3E8F460A6F24553409B3D03036244BB495751EC7E3FA9A73F11840CAE62A0AAAFC07125AF80EF5E6967D199089B428EC991EC8150BFB80289995B62A153F8AE9CD0A6447239A47EE35359AF5BEAF84C28A00CA1DF388D79D58DE4369A3E3D2BAD4EBF101032DC51E4A01F64C2348608FFC0F456497D461A9657F03A4F50142DC544989A99E9C2930560E7D4282A3B2E81E7EE9616B50CEE7AD5116AB8721F7038407F9248776EBA7C7DF77C621AB9BCC0463583C57399ECC6E4D9905596990CF28CD7F9981F18103A256793C4232DF889EB82130F27B182C41624C84BC4CDEE6ADE150CB20238E2F649EAB7EE464F5A398868FFA396AC2A3776BF58A37BE70AB2BA2FAA90ABC74484461420E6F5D9CB00E4E95434CAEE850E90464BD049FD841E10602384BA9A3E58A71BD0FAC7F63873C71819A8C25552ED988F162CEC067FB888A45D0B805478F07853B7241A0D67A2D161D2C67C678A283BA18A832BD646F51B6F6F569E61766CE9DB16728EF61094502DFFA71E17C2432659178222DE88DEF97414EB5C1CB131C622E1257E538F7C7272EE5A9A034D48ADA4B3881FF9545802D3D0579B968053B35F1E143FB9A521871B3E1254CD2E3808D473F7C863FC476EBD695995E7DAFFCF7332765030BA306C277776D246CB51F4AA6B592D45A5316374DCA6C091B90A27D353656B1F57889FBD6205A7C24AE9CFD7376F2FA342F0CC66C6B5499E3FC4686FF05E0E0B0601B1543E0C23DDA451A83E685D59667C8C992B97C0C918D760B79368FB14A1CA9EDE50CEBD4EEE4C846EC67977F561422A2D6B63E36C05F259978CE21DD8D73B1B2AF56B3C09603479CD80114CF4580B3B4DA0EDC87CF89562AF980D08FBEE90DCE8AF0407FD0D68C55CC54112262A2D7FCBD08169D50AE0B9168CD68A6EA4D8D3CAE43194678F5B8B19F671A6ED8C4874167896C1EC4C8DCFD3D0F65C3B028729F9B6114119B70E3DA27E2CB2A376102E043844B1BD72DE9EE08AE9B9844AECED1BB5BD29B6FE38D9D6A6D285EE13C44940F179CA63633AA43FF1C0F1FE396FD2E02E6B44179CC97A3B7AA9DA7A9C4E9E8FED928A695358340F019EE73000661C44DC0D64960417138376079D9A6C1CD437E0A7177D37DA47FF31D146EEEEC12E05B9296027A5A6F1AECCD19178CE8643199DB148F2F64EA25323EF97E1750215B4DA6C3A7836C3E983B2747342FE41F0262559D385AD2D3165FE401C52E2B0F868A887B30096010617AE7D030FF5B44A9EBD87424F8A80AA34EE02F64F9D2C03269F38123D89B116803FBED35E352C2AF29680F12FF5AA2AB14468CB7117BF68DCDAC559964AD2EF617F6A04BC7E0187A108669E01A3B94100E62363F93ED4FE7606617566AAEDCB83BCDA87841C83E0558C2587E7D8F7483E203F63695B458F212C3EB1357893A9B86E311023A2697F58A11C9B4928EBE220358C605D16740CAC9F04622B764E8942D1D393FAA107DD3AA2A7655CC2A06B6A9ADAB49255D01DF877AD9114561E5F38526C66AEEB6BE2673441870DD26159FDF4C39AB611A57CF98CEF2CB33B3F60614B91C5AD26F7E75371C764E5E42B19415B321670E0320077C3A7DA9DB091737A9B7C2A596CCD7C116518B52E5424ABEA56FEE471A15124ABE106B7D9A41DA582BF7A69C0A68443F23448C6FDA33EE96FD66095FCAC23B4A53FDC5B1010041A3ABE38D6AC1C73DEAE6C04331B5FCE422F5B9DD3219DF950F624A26FDFB9AE9FFA7A8982FAA03AD2533EDD5C086C3207997A0D17F032F23CB620549C754B81812FE96C7001241207022633B5CEAB435C0BD4B937B6469C3516DE4DA184686C181527B96AC8C83992C37C9D91B6C00215AC4B8E4F43D8F60F52ABB52D198CE98691FD00B805D99AFFCC8E616496A8471A7C26D46B3A9E733C24B183701451D2EEC64830141D3CA7302975680EE8322A202CABDB342BB5C22734F73AE0F605F5A03251B3E14F295B1DE15B7D532481470D0D54E62641936697E417FCC58E3C51108817DA349BAD8205087EC7228F8AFB3D84B456612743B32CACFC2A5C22EB4F7BBC830467691659B9A3E1D35CB0E85B5C7D4320266D2FDD332A26E6BD86C10946A95506F5A45E66FCEB5CFC5D920B67F2ED57F890387F1529F9B4CD2BB9D88D9D4CC00C852ADBAC71510866ED0740A2BC5C887DD255B1ACDF9EE8F554D16BC0298014B0EABCBCB796D88201E816E0EC2039119FD2A05DA3122F95BE764ED12DFB30B758DFCC54DDABAAB9CA1759A0B36CDC3FA6CA45D1177A959768023AE3AD9E1B76B36C8CFB6131EEAD858B3617D876C160821C2D2F6FB120D8F7CE3D81B099B606152DC8080CE5C505626B2707E5B003DA2641F5B4E11433B882D92A011933F668EF73BC21DE5388D887AE2B24F45168633BBA492740916C8F1731A05160F965D7DB4603771D50A831B9DDF5B75D223119166642041F45584692002C8B3E69157776ED45A7F5678594A4557D91E5B6FA8BDA0AAD5555D8ECB2547DEE225716E02D30E8A0EF88443A3571830CE6F6BA93F7BBA66BA36E76738C2D433C4DB4CBF066080895AAB8C1145379C18ED7AEB9A4CFB6652F5AD87D8EA496A64A5BF03417134E473E2158F812A469331748FE5BF04602D2C6C8A4D5C5094B7F884BCE8C0491ACACB63E6DEB32046FEEDF3F2DD09BB99BDAD73E7ACA04F8C16640B5B9DF82AD5F00910C6AD8862A64513E670A322660FEEF9E3CDC9B4D9C4CBCDF260A49A25B2676538A7CB8213B3DD136C560269C9B56DE458DC8BE7BEB04698FED8EFACB482E55A3C245A83D6C564FED749792E9AF60F3BA968F61ACD1C971D9A388EAC8559A1AC5EC72D9DF5660FD11E855F4E475231A9DD849111453B23C0AEDAE4AFDFEB7CFCDE49F266F0506EECA41FA67DA8473AAFFCA77CED7B7AF2873D735D63E5E0FEDC22C5302133F1A73E33BF3DF1585B2910A07F95F152E35E659EC1DDD996863BDAD1D2C2E8FBED6850722298DB8DE0DC472BAA7D3F63E308643CB2D8D90EA2AB263270E70DA90A3C59BAAF37DE7FAA0AD464AF6138A5FB88135BF70B4B5532FA185FAE2CDC87BD6AFED0CB4DE7D596B46352F0B7B8EA6D4297BFF2F29207A13F520F4AFABCFE87FB232DBBD1C91513250D11BE3701F2412337408AFEBD6FE96885CA66CEAF213D9FFD4974B7AE06F67A5BE919C55FC9BED7E31462A53B84F964378D91E46A1C9867ED284F2EF5473324843F1C953F53B851E983F11AD743DE669097BCF78CE0CD2AF44065C4159FD42774D5270C9605D9C29EC620154197332F50C3D3A902790D87B04D17FD7CC66A4162C1AD23CC55D31F072F8D7E891A450E39EA27109D042A72266B1D5ED2F929E08B5E18351F6F32F39F7BF3ECF40BAB73F92D58C49307E466373D10344CA8447B08F35344D02CDD71501CAF3AA931DD9B31DB76144DC83987316AF793F157ACF9FBA8770D61427989164662BE7AE4C6EC452EAEE5CFEF6AB51A33982004734A59680CABB9CF396EF2B4C21A6D3C724900EF4C9826F516B8A1E688D7BDBCBDC131C5B017837013F869A37BD0552714EE0BFFF0BCBDDFB371874BFD0E52B6C7D409CA8797B5F8AA7D5941AD011C73241FE85C213F7C46EB34B6A16991FD09C1CA406DD8830D483FFB506BB943B1CBE40A3DA0B5E54D41DDF2CEB810DE23CC44538116CFBCA78176000E82BBCFC96B111D88B5808D42E747FBC2D8EF16245DBDE6B77D98931A9F607F29D4CFBA6191315E41EF35C4ECB732909020171B360878A46B6BC642A8E0141C11F191F73A7E196AF15D521F50C19428B71D3B7861151D9DB4E7EC6299399E42FEA23FD65B1FF9020376197C66B153D28B5251C50335AE22100D6B216F1AF09225EF705EB8A5A762D5F3299EA18A63F9248149B939BAB977EC7C4D52F67D494E908C5A5CF43FAEA2F3A5A48125D6259B7FAC803889A2AFBCF69D1AC03BDF7F821C49F9470E4F8B18B09FE4662954A13E0D93E7F3FDE09EB32DC9A979A313D35DC8E1620586AEC29F2314DCCCDEE21EAA94839AF45F9615E1E164E99D200023E1B2CE9D3FA2FE122DB2937449C57D08AA930A87823D4FA6A64F0DF151B960D5E3628B22BFE3C9F5043550936F07EF6BB957A9963D1587FDC1391CF47413E24120F8739E5372C14C3295E54CE4F474DB2B32A266D95E4484F6BC606924A02CC1D82098396A834B3DC056A1030081E44D76C4FCF1F6A691BE767B82CACAD6E1D6D58B8467C3D5288AF1ED5DB56E13AC81EF394A99FBF9F90DC46329EC38E832F73549D8D28DB37CCEB2B9348C1D1246FBFC57E4009BCC405415BFE9B3D683AFE463AB25AEDB16D0080F1ACAB24DCAEEEE3C1F7692CC991D5D07B63AAC56E7E5B8EF5831B0E689AECCFCAD2E9614F7973AF486812BBD02E2DEC6A4260AAB6FE7CA51C4A8EBA75DD1C3A7EF34DF4A81336A3422F2C0E67107BF341FBB4B19D3403E7DB163C20EF6DBB7B98CB8DA3F2BCF9AED594FA50D9692532BE627F983CB49C12FCB9052977B4C8E16BE7760B77F5A125E893B456360D8D1D59EE3EF1294C91DACCA915DEF6C06C60E1FDB4649F59F9CAE55EAD5E129090A0CF8DD712554063A1763901218AFAB233E7450FF31E14FFF95C81DA94F97B6F1C38119538DD791DCD14A4D201A8390B0F7E87CDDCE52A5CC335BF74DA1D459E9F6E33534AFB9F34E18922C2AFF0F48E594E532D767EAB9002EE7E95EAF7D01555385E8624B72EA6DCB39544B244CD0E6CA18B837CCE35FE77B46BE22C5E0AFFEA5F584CD383D74476C4C5400F9700BFAA3E3495414DD97F44B9448A685C23ABC16864905BF837553AF11602A41355883B646B1A71396AED5DCEE0EB6F8825E0BE1AED11CAC3DC478834AC5C3611285B978C7D94932DFC7C950AE09EF21EA5BF963B10785D4D4BD77C83A0166314F76ED022865D761A94F8925E755E59AFB9F1738E1007B09AFEBE00D6CD8032EDC76DCE63EDD4C391F4CB45CC70FBFD5409F6A0E1E63C9FD51B1E3F867723A730360D9391661AE80C22F8B4F0F5C0E6282E24A9128CC04A138D693EA463CF0C1F5DE6C7129EA9809084F17B6514DC6B3B4B979C55BADC84BCEA2C943F087F8C742F260CCDE3E006EDBF9E67FA51E5A0354BB9E9D66C62669DC00318B411767EC3F133D4DB7D9D6E895E60DF53515A4F2C0468A4317574BE0DE0171AAF31A4BB232A5C6C9C432605414BBF0FE1E6A6EA22CE0AD83EDD691B56A6E6E04996B7E68557B2F9B9F0C46F64FA575798F8CBF526902E3B4663288FF10CAA104607838EED3D8CA4A8D724ACECC464B4BF3F59B964D94AB5034AD1F4AA932A022832E133C963D7A186FE0C71F956B09DB3EF608827A68E57D15153D58E0FDCB5BFAF76FFD069FE086877F49E39BEA1B280651A7FE0D7ED4444AE2D4138A5AA572CFD3B77B7862B08FABF2810322EE84099127A371145D190E58B4D082E978D29E62BF502EE6F1AAF2BABE37C4286A9A2A5BB66857F15E09520060506869F6E0E05CCE7A71920EB44EB3F063B80CA5F54AF560FE6239198B5D4FE211942768F1B6F4E67B28C54BD9724D4AD83E60769C1B1C1EB133A6AAB331B84F0E7D71BAB0D391D98BEA84F3A8B945E59F4094A22185E51DE9F8657D9CC6EEF28A526F56BEC2F140ECE31F4AD9376C5A7ACCA260E99E1AAA88380E0C87949B5F3F7222C6B1DEA1A53AF0ED84D42D8A31057FA40D2DBA0C3F42C017E6FBBE38F5A9F109AF41E5C8A0A16AA0D6AC9C97C801E54660456B4798C359BCA4154454F209D6F8466CCA9A40D44070B84C451055753106793D2148F21C07C85CC02971C86AE173747EE55650EA0F534F441F708D32DE181437E4DB14E0F8A520948F1E81D9DEF1A296CA13334979F84C71B7A67D7F9D12ACA5E2093E576541BE05835E20868A46DC4F16597278284D84FA51CE2E9FC6A382A49CFDD6B2A97EF73A55646CB0542FEF42A6EFA917331EBA5A1C83FF15FC62C5CA9C4528E38C805CB526A456725BD7221734365DA206F80C8FF036ED56F0A765BB052D9C460FAE55A194D9DE65684AF9196F8EFEE5AE358F4E18DDCF5B45E5C55A9AABF62225254C63EB1BBAF69422ADA56412327573653B62728D509C4DD67E899908BD77941A5A4EE9E7CC69CCAA7323FE710A07908759C1E604EA4F69E4E6A36F3CF5CC3FCB86A320F849869A2EED66231529ED8893CF9A19BB65BB9553D0034EBC3746B2B599B244B081C37DF0DCC269DF4CEDC799888ADE5EF1C4563B4CDA1048292E8091D626FB4514806EE8CAF4CDB2402C4508D7A7087E6743C553C7326CD1B79BE8ED38D6125E39F3C6C394E85FC95C111D795E1927C76677D879956E8DFEE70F83DB96D4B46494D2A8A68EF44ABFD22C37C67A1E85BE9E3D36167581363C611EE5D8318C31A120DE4079D4C606D2D9E06E94D6CED9631148AF359F32D38AE748F5BEAE092DFC9E7D6A910CE9CF5B8CBDB828B2077BD0AE40293BC8B33CF4F2A54D8E3F72249DBFA9073A544C8AA9C8FDAA9A95849587CB3E16A3E7DF10BE089F872249BB72F4C460C2F50F5B38F6C52AA4CE0A4918A8C6668753B0EB6F179D04985487A8117A8AA01740C09513E6715887BEEC377C11C9DA63AEA9F7C3D9315C7799DC028B3B22774DDF79F665174C9BDB39212EE98CDA6982D1E9FAB8A77B8B1D0AE2F56AC03CFED63EE17DC3946963F19ED5217B8CB160939DF15E235F94D26A7804CF999BEBEAB5BD7B43A8309EC5D8EDCDB879C54255B6A91892193B939E1FA62F658A06584B497217B2FAFF4B75F2D9D766305FCF67CDE60EC324FB61ACB3F919DB2B88771D1F9E406A7E9AB46BF2CD804C6B0BBCF98EED21C4041DFF57EF04C3E42F8E81093F103CF6BBAF267369E47BAB2FD63BBC4E9DEACE2E70459BE7A7CC5CFBCEF19CC300F8EE201380F39348692AA563D39A6F8FB5CE527955D042A90B8EB3D1784DA4F7F8DF46CC60E991C922858352C51B3075085519EBED80FB94D6F1B1A88D4605192252EE72A1F2CBCD689AF60C7B0A2CB6D767ED4D9EC3158FD440CD4C474E9A577AE7136EE0798E53222E90A6A71B0428AE613774C1E60CCD2F666FD1B87999FD48C5B630F882AA1362E28D70EA428BB381F2B739FF93C514DCD97C7FF072D206B805D84059E4ED30CD2ECFC71DDE01F8D7EBD074158FECA7211E78A77CCE9E959BC945D6768A854BC98A02308F99BFA1A0D6507EE4BE4757F4CDE3D2BA227A3C1A40EC940485B979AF547100960FD53F172CCAB38D11D1AD915E5E88B5ABC98B522B250C14304C594BED32A94DE0608E557C74739794E3592CD2A8AF562B51D02EE60E101FE1A7B2C487146D38E2885138C8D175C798B2993BAA08217819BC8638540521CB36BBD91F511780F070F99493762818D49A666E5C4592F50CFE6B834B0D1B691BE493754BA1A2D68F1952807CA4E243A998804A93D47919E42E8E8ECC123CD71E88A1497455520F6A9B0F44458271FD1A6A7DBD12476FD89873FAFBE6CF6120D6F57C5546BE323A8190E75F45FCEE2E8C3720CB29EC3F39FB8BC7A8678A07BC68AE51E073278DD668713172B850DE9529D245FCED282C6D39EBCB191D542760AD7B13D7DC669195B7E5A097B356D8B8DE13E0AC2C7D44A007D247E08928C1E74ABAB77F283D08BABC5E504DD8E61FC0B1EF1F5FBAB4F059FAF67E4B1D83725E7D7F44951810FD08C2CE35CF9BD41432A7096AFB53C011AF7973359883E62197030B206EC66440F91F5264D08F23650D6350F04488B6CA589A836635515EA150E7C3CA8A494199CBC1FDBB2EF893D04419A3AF7D03C3E2DF9A61D13433C4BC25F815F1C20B6FB58CF03B8D0F19AA1C6EA9D9DBD3F47F236BE67F741BA0448DCB416079D4D444CDF3D9239889731A15106DF40FC1DE518CC48102015F1DA5B004DAC26E66A55A15F43A2622AC1F2CA4A38285C19D46BDD08A0CC4A887C5B1E3D9873B9589BB3D7D0A209CE6E3F22C8D1948F1FCFFEBEB565EF0434EBDE1BAC9A7E35F27572F5739003DC62A9333E4D548E5D9B9545EB31520962454B87F5A3AE3B156F7B56936E9E5264AE4C1CB9A032A20BBE1B6A872D77D86FADB6399CDBDF1920D0E89697E99D22EAD5BEA0811E890BA4C956A07A5EF2B6122DE0EEA47018F38FDA8654A9523101D98F9F1FEF7D1D1C6E7492CEAE0052716F4688BD28B4016AFC081D902567ECB73DD1A967AD63877095D202DD26DCB95B7C93C79BF7A7EA0D0F6C6BBDD3EDFA78B7D6E16F58D7FAE18FDBD5D2C5A836FE156BD003EF23866D6BEE23A192276C50C1DE0C06D9B4904860A6868723152E7BF34BAC3AAF0B55FC959CE489889052FFBFB62EC6FF7F6D99C69AC94FB35FB801E9A60C105B8E8C525C4EB520FB152EA588DC6926969E0959B20C9688FBCB57B4712B9242AA092EAABDC32852036C6FA66961DB75A539C150420B274CCF75443FACC9A848C97DDE82E8173DF720D015B9F08125BC67937C7FC3BF8B8FBA551C2B5F8A6D39A4B7519D756BF162E0D946E7C70A64121C154855474FE5023B4B0E930FE0FC1DD4E07E7FDDF32C43B0BCE847A6288B4B0D21DCD7A0E6A0593E27FBA9A04F99B69153DA831A53842A7D9A46317D9D3BC25076325CCF52DD2BA0F4FE713E7E95E32105C09982E6B09989D60624BFC88871B1FED833CD1F120A083A932DE3F4391328BE2A166B488778C2D2CC208CC21A9AE9B9D16415B9053313583D558F4A5FAB71BD3FC1B5B19DAF734D8AB7FA19164DDF1CAAACB9FA05166EAB3F4F09768C16929F08B6DD3ACDED99F20016D6516EE93B5D298AE287153DDF459C91ED7A501618FB0C36CC2336C91B8C3E0118752FA373D93FB802ED091300B3255B1B903789C04B41210D3CC6DABC239F78EB1C16C5747DE276BEBC30A766A7F0F4DE1A5AA3B5439E977DCFFBE2BBC10BC44784C81FA0A47DD556AE7AB5F5BC17680578C809E4CBE657DEA40793EB48F38A6C384900BD2DB46E847C58F5F00245FD15D3B7D781EBFEE1BABB7FAABEECA267A4CE15D9DC062A8D56EE17B45591B1C5D9869B957A2D50A3B8260561B2086D2BBD3687B0BC2022200336E6E81FF3BFA464D003CF27D7881EC9AA6B13F34A5E602EE5EAECB18F685BE11D64F43E4861655D4CBFD6238D328752F2EE0B7ABDD172BF66D53C22573EB6010DDBF1717BBD9530E794B57DCC17DBBEA125904DB1E72B3EBFFB63F2698241FAC0914C6DE6EB1A23F411D156A3E075E0A63461279EE77B0F17A11DA297F13B0CD4A54EC4F432425DF0B1BB07054AEBEE859BD28075939D2D8A08996BF33B95C16BEC4878214D067F945884B459AD95630519A0F0A2FD28736670BE0E27EB0D0C6ADAB8C4B25A10817E0F58189061A4CADF512E0869CC2C469F79EF3DAA96A311B82870D009AC10B1C0BF4D314C5FE57B8DF110D2ACC531C7D763E174ACA44C032DFA0294FE58B9ABE2B2B329E8656B0A9190F41E5AB3B3ED6E43C9D3CB024B4C7AB33A2CE1894EB3B5468631F7CFC770138D383F9CCBE162E6A9F1E99A493344166C3F9EEE8CED30F4E0B0B12F30675BDF78AE0C8D9CCE5953D80823BC4A760F0FD247B1125128B3FCFD194013B38EFCAB1702A7FB458392791BD0FD760CEB22306E664200B735E62C392BD40FD098F78BCB897147C31B7D2F90BB89404806725D5BA9F6BC42C688E34F50A36B354F6DBE6FF59ED60C19F4D14C948989FC2812F0635E64336126A7DA52E7EF4F189C3858E2E8C3D08EF053464CE550AF4AF1F2F211E4B25252B2E2313F8EB7E40FD747DC0352CAE27CB968ED2501D758AC78C3B4E52076F138ECE8351720362C4F824EDA70DBF87E5B5B44FBBF1A04242A49EA74335877B720D8FF6F6ECFFC08E59334765DD51E56524664A14E663F0D3F11A4C33AB20F4B919A128E4A1C47A870B4449E1BDDE4643276F95FF1C4893E2CEAE1A8FAEB0BEC318BA6DC194F31069351A18CFA83A895DE43179D5237DF700F043B302BF55AF62FB42446226A7371686403EB99B0374DE4110143210EE632035B497F2AA97C221AF17BA667B4841DF2DF9662AB935606BF20A4B7F6ADC780D2C41B48ABC584FD95D46ECECA12F42B8FDE8BD39EDD059A18D2A462CB96DA068F167644DE1343C94CC6DFD851AC27E8B91FAC6D932DC94C5D465F6A7E039437F4FECE4B1BEEDEA92965304CF992DA04CFD98E0FFED7CC3F99B3CA21B5EE538F1EC741443A32EB3115BECACC705D61A3785CBF29EE23884AF84C3A5F1BA9B1A13E549FA3227B6495AD209AFD49A780590097A0079FDFCB5419D0266F557849C0EBCF7DE46FB585613AAD03A7158630E4B1662C140A60EBE6884D38B0583149E483F389ADAB670F31E3F87AD52ADF034077BA00C64A01C1F79C6CE53DBA5BD8B574E666DF057E89F3251D2EB9A127B563BCAB03E7A0546913962BDF4ABDDB10BFBF42506BC46A5D5F5573E017F1309200C53E7EA57CD23583E5E87E719863178EA7DBFA7C5DA4E90CD8E5052CA39B36FE8D7BB3A09D539BAB0F07318F1B46A638C3D952A12EF2445F458E42CAE0B1F051205E88E9817E94701C2ED739EBC466F1BA680EA91AA5A4F6447A694CFEFA429119B9621D878E5DD1E4D83797C30571D82FD40F4A3DCB502224B1DB4E9641FBBB209950CE9EE72C951171FF09CDE6369FF78AE2819F4175B16BD4B422B7AD3000E8EC48AFBD2D49A89BDD93A542750D24FDD04F809DFBFB0B894BD031CF38D90DD3B965F5484958C3F80B96AD13943CC0A0637FCCA769F4222FD7399500A2AA9BB4F233B40B5B08FDE53F98D6BE6BE73C97792F03E7E3298ACD03AD41BCAA86B47EAC4FD08413FB0FEB404ECE8792FAEF795AFE38566627E8C6E6237091365204B70395BE56F2D68B234159BFF164D9F2F8712217BCC727DBBDBCB2EF37413EC5009CAD166CA31290B712F30E9D3A35D3A11EB8B21B5D1A171ADA2559529CC4AC3BDE34BF6B01D7FDE3E658133079CCC614681CDB16BB6426ADDEEA08633F1B17FC3B7015AA1B5560C213752A796065DE706E93850483EF43C18DFD9C3DAEC44EB5EFCA2C9A047631F51ADF66A227BE4AE615F04044172E02CC71B7661AF68CE53E9639D2A02954D0B4ADA76073A5C0D74336AE6E1474C9390813CCC8C2C62C5010713590F349E135229A8FA6CDF7590D0D109B7E711E83B95AF6D8E4887FF858F036F88A68F1B16FBC087F664659014A3FEA8E2327077C82046DE85F524FA2AA084F11D2ECBD49AF77A2D5345C639A58196700E03C19ED7FC5DF699FFEEEAF4022A55B6E643C46F105A9FAD3A18112509283DD6DDF7BD1641835BF25B09C40732995792AD01E53784C12D2BF80D5DAEAD76BBA5F29C07F13515A31FDEACAB4BAE6A2B0671C1016562892AFA9AFCB13E7B047B525F12FE3B0AAFB5273B4E6FA416AE3E6F2083CBF70A78BDAFFC6783B8628877582562C987D5D6B306B37941B865FE8977F1F87B54D4AB6C5527521234F9CA0F1AC7957E1E46D1958AB8A8E67E70389DFBE5D532BB843E3ED968033BDDD0BBDB5668C9ABB57CAC87F7CB19F5F2A857E096738C30844C04B035A2B6A1459AE70802735783CA9372B78F0CFD737E5A56F1ED931453FFB5E36592F0453BB2EFC0FCDD5671F4F8181B5EF611E0D1F5F47391E4529F5FE67A928EEA3D2DC079AE79A08048FED9C4DDED2AE6CC0C3B0E44DD21EF989070AC146894B7A265C9E684D898994E07F3AC5848A351BC8403B8DC8E48DE43D3633F103933C54BC8A664D646441B8C8D9354C93917D68E8279647409028FA6BA2E33355C08AD8953EEC0A4D81127FF8D7A73B30097BF8D5909AE497C8C4D3A075B33A079FBC64A718AF3A903B562F9A693D1237B989B6E55CB1B5F778E09E60C96745AA00F5B9A17E1F2F85F1A431ED08786219026CA21CA4CE4E346C9184DB076AB5BF663B7D9130E0EB4062A5913C8A4332CCB6A5361CC53701519DBC3931F5972FA13B715668AAE5ABF3FAD8A6CDEEA0DD8BB8A89C1A5B3823DDEBD5E309C2B64BF7ABAD45FC64B65FB0BCC1B302C8F0FF90879FD384B61A0241A5AFE7D36F3A14E60C3AA4B93C3FA64F094AFD0A631E6D38624670CF80712B7B8F3FB7706B6CA5D5B529401F4477B89DFA7591026B83DF7FE3FDA6D78B38397A6A38A2D397346A74A42E9E015964D12496AF04159EE43A8CB74E98781C79BE996661371296CEECA1C659F1C08783E9886410C7E4FBCD9573B075958F22500DE5CFE47BDAC46E97737C9E10FAD94D475101A19146A508BF62FC9048E75252E72F027D9D9760944A6904C406961C09F8CCAF8BD00F9EA16DE9C8E186014CCCDB663DAE88197539FBBA4856F3F490B1B55E84AAB4312EBE0F383F81A739940145D496EBA7F3359BF2E2730B73088E7EBC314224C9E2CAE495AF272DA5211DF980CF6F42AFB379F5BCC6C50CB56E6BDF7C7F0CD0EDECBFDF5799521A3BDB75AD1A152D2BE026569AEC7E1E2036CDAA67EB44CEA884981C294D4FAE5FE1AECD03FCAEC1FAB6AAA2DBD441CE0E11A68CFD47096DF3E79F99F05263C4B76729283E7E36DC3B630C9DE9301E043F16AD847E2704332B97A48486364A48E95CCD6F32A3675AA4D2DC1FC6A7F0EF93065A88550CD6B73E97237E4EF60883549DDF2D04BFF091912F61DF7E9A1FBF14F8485C21A83C2D3E51F50C8CFA48D59401A5CA17AC92D0DCAA8E9942C7C84B90311D6C4D54C3AA34CAAD11F5F1682CB0F30CB0F3C21BD982B406432B4D01A55C0874792ADE4EEAC345FF76E25F0DFE9553A424CDA59E66D2E30A37BBE47285D1158C8C7DBFF207185D1262E453A71BA16D21AAA3DA856806C2E5950B721EE3DDD9D04752F0843CC7AE79BCEBA0A912DDEB94974E12CE7A301B75DB99D98D3B90928320DCDB3E548E169914F02975B3B29D44EEF255BB6B6D286B0F1A4151FFD40884FBC16C33ADDAFEECFFFD8A3D4A188B1789D5D9C8EF0D0A5B143FBFA947C7AC762B8BC9B42C487AA48B38A4F369B683FEED073DC79BE33CF2932F6ECCF76398C3D0D72D9B67A370248A9349239294784B47D1C76061C60B927E5237FDF714FC11200D480043091EA5AD71755490427399C77F45D51BF01EC10A245C4B3757BBB5FFDBD953313D2D82FE4890B4B6893FDC984A54C541DDB807BB0C36CDB44170C7DABD544EA027545D0A24EBEDDAFDCE787415D66FF14F148806B7B247DDA096BFD5ACE290CA1F04BF48213619BC408A39A40943E13361043BDCF54AC2F1C21E95F10FCD9BDD19AD5EB80770DEFA9DB831FECA426997266A5581350DD18879EDCB591F2FDFCC381A8D43F8EFE84EF365E4AF55FF1FEFD64A05467EB024C739A95E6900F73B810EB179C8DE8753027B78F447C8841792611D7B29FB138211D2C09423705B8C10FE066871BD1C100A561038B988D3B332693D662E57AB7B4761CBC2591E834D772C5886D356EBECD1237B80981B6F8A05F20B3DC1773DD17DC4295F4E4C10EEDD06FC994A9248F4A6D6DF65E570E99D0FCFD698C5FA7AFA52C7DBA16509E089657DD108995CCEAF48292505ACB4B6D653FB166D6F9929C4033A3AC4D4631AEE0A69956B5F61F790E8BF03A5D1F15F5BA6C6C6B17569EEA48C395CAD1C5870FCFEDA0622755D8BEE129D798105B29D02BFDFAE350B999B69C241AF3DE2DB4CC936494D0E299383A5723BFBDE3402FB0C6638A747F84B8DC4C677CD06F3D5F6EF7B7A0E2758D1EDE091B87822BE9138ADDBD11E4DD101C293A04A59A71465192B19EF6CEABD51ED4565AA1EFC5ECBB508AD0A7D0D9582AB2F5024BCED7A0254CEA2088E7046DFA6761F95ACE1B047C34262ED342AE034EB6BBC9B486D6F55FC2E2D7EAE87D81FF3BA42CF192E442EDB1D99234A6E3089F1600A54026369FA04A985D2C7DAA64B7FC33B208C05A94E92944E719DFCE05C71BC22E253EB1414E24E023400DB3B416F202F81FDAF4AE64CF8165CF40E879505B99E61CF15723EEEF3AF7A309C1E21FAC3C293F51CDC1364311B53E64D131D426C6CB2AFF271125C1925EAC2EC7938B3CCFE31D8C44C5A2BD1CA6117EC618780676B2D06679923F972636B27CAEF62559A0D3E8BDF821EBD19DCDA1A30200E88C24060A642B7576C3C09333FAD72F40123E8000FAE0C3BB8BB442FC97F4432114D976BDA4D789AE5BFD910439D656E9062467028B2624B1C9E7D8AA6BD384E01E16E34A75C6FEA9308B7E9E6057ED84D03605E76089A7178F8E60777BFFBD82B279D26966CB3D1180018123C552C926B04D545DDA3E4742C981DA3FDFA7E00C3F7E18A8AC654D4F69777E7FB0D42007AE01C3C48965CA2E26BE673DADB1BD8CD6FD9E06C080C93708CF033CA24987A5AAF9B2C49B3C438E490DB3DE9A79AEA155601CCB58F396E344035630A354BDBC190C09EFE2AC78D4A06A6AE896F1D5FABA81FB16E0DEEFC6C54080A94A9A934ADC66AC7626BFE7D8022FAE0CF4F8B7698F9EFA219F302F6093416736F8902494280F6F7FF324D1E512D9212A56C759B7BEC48392B39E37FFD6755A7FB61147404CDD554FE0D2AF324B0ED23C0F3B143520BC17BE0B64FAF462EB60D56F0EC3E5A9CF35AC502AB5749A20BBE76FDEA82A1B6468CF8E7D89080611759488B3CB420ED05B1B974383C29B6B26E683421CB2456E16A76F51F2E6CB2B764C54C3496F348CF97328FFDF3EA271B6BBF9C7C0821D75E4DAECF3BDC8258AF221A89246FC78E967D51E71258D113D6D49E851B1358966BAFB84587A61CDF8FD51C48395817DC53B0A3B5CAFA88276C2FDCDB0973EFC7840BBBFAD4C92B208BD03BD11B708EBC77A1AC2C4CC4BCB4638F34054492A0C33C1527C9B8772B079F17AFA7378F8C540F3A1B6CBA60207F00B594E334400F0A5FE3FADB90BD33D73DC80F8CC64C114692A90A4906F60CDB4C86D4BF99DC64F83200EDC0BF4B1ACF399F8D45CDAA825868F86E7E36C2C52BC273389157D771941014278DBB424FD3AA7CCB997198011C5DFFB9784E9A9898E468EC1CC45816C6658075E61F4325D395E36D267268E8FC50DE923573699ECEF16A93F227359A6865189713DD6541BC0355F5EAB0F410793B99766905ACDAE751D9F6366BDA12B1E21D4CB49207C065907E825B4D0E2033D2ED22464A9163026E0090DE75A6AC734FFA677932838D7AE33A69FE2B0F92C0CF14A2B00E44037E9728F674F0F9418535B9E845B5C385FD1F2944B48EE8DF756C32B817A284BB49C82A70BF5E02EABC764CCBC6DCC47F9B775CB17660DAE4615380C8D2CBCF0C98E5A7B167437712BDC4FDF1A88CB2984941AD0F74E60B5A2E78A0D74102E103BC9065B5D4EF5DC688AFBF84E4784A411EF509D860C58AFE5D7B29E9BE92E888BE41BD9D17AF0B1A820B71AFB556C760162523345F4C16D8110A79A6B882A3D8D628482D2DEDECF4126D5175E7BB20F38F94E77625948CF83B35654908DC9F99EA1A7E281F69F0193D8CB66D47E0D2BA1E70B52B1FAEC90DD09B0EAECF0B75A00B781A79AE828E23D46A6D42FEDA712710E626E646CF9A951BFB668A4025A112CCB7B048ABB3AEC14667B8C953250D6DB4289802F49FC8C3F87E6F88392378D11D8E624548F7299A1A49C398F5698E5AF28DABE468A3036C7D7ABB853348CF35718DEB144B28515113C4E28951627124B24F4DCAAF078A22048B2FE99A0FE64D91665641C4736AFC617C0291C74B7C1A74EE11E97AFCC606CB077D532E5C4B5DFA1C3BFD71F43E121F57554796B9D22E57998901B6C2F28399B561FE76130703657DDD0E2C2218CB9E5887EA46477607A2257DC8CD9A160BD947D3C72F1FB34DC76DA8F4176B63677535FEFCD95D30EB1AB8A111DD2C72A7A73520146C40BB8129DC7D3B1A411BF2B69B2060553AB7E4A7DC25FA1E00F3791989238C556E142E04BB465274BF8521C718CA6EFDA7B14CA3CF97F7C85718668FE238BF716B2F9A147245AAFBF428FF0FE53494902A6F1A54CE29CD9B0838282709C1044A2EA822DC9C6112F5ADBA7F73AB91E53646BB7E0A7089165956C75041C755E69145B73294C5D10D2B770164D019EA77B20C01F30D9EF125885C5D08F8C4C785B2CFAA30077DCF5BCC3E4FA92F43AF3AECB877BE8B3498298210C99FEADF3D8BDEBA850B1D8003DCC6D3BA993970D44CFE42A84412AE385BE3A5E05D6F98C3F6F0DFABA02F70A5319782E397A08F5538F47494D4A7C7501074C2FBDFC2CD831A9DBE3AE15B2FF6037B46D3DF3E89E093E5F56C4B4738227E1FE96E125F3EE613981650EA79D22E8DA85F32E6E7BED8AF8A4F578B2008A5A8597FDE272EAC0EDF25A6B11C90AA741B5ECD88B206567BC2F944AD559EDA937FE79E98DB31763623476D2EE051CB4DA8CCE4777CEF7495B37B13ED8889DDB38E2B2792D43C6FD235107F3E584D53BE4386D6CE65C519320302E32761F25E251FA3F200816D2BDB27A686FE7B47AD89E4A6B8B3BAFC6FBD50A4EF6933E5966C42CF6AA68C7D7F530647FFB4D519DC00397ED37BDF2A9A2216370997D0F519F570D75D89B6270B043FDDB6B5961CDA18965331A0020C5636E259080FF361B332F3E1DB133D8557B8D70DCA90EB5D138C39180D07B5029965A0A52E119C0F07FACFA8BA0BBBEE01B4A333E694F2363BF50747D3A50D883146A34100FD8DAD93ED534DFF586E88B886DC4E1D1231183D6D2704740465488ECCE9C0B1A1B2F428945ACD28F2A7C1F2584419F021638441E76DE188C8327F5DEE2FE90A3E59B66F4A8388BDB00A2D2D607D8DDF63BD690B813508B6750C6D8B4ECE07454AAE91FC5E9877D3EE24377D9C023A64EB4DD806507E0646B4F28970BDC4A7EFE68EF0FF635C2C2B2820A9029B2576BD16BB34BF51A2D7A8E7F3D005E52B47F8BE6F9DBDAA76C56338B62656657C00F0CFFD4F559F80D840196EEA66CC2FDEE9E63E5B2CE815B2092DEAC4058393C82840914B9F10D5F716B3611998E99570AC4AC508F22E6E595CFC43D4724B605120C9EEE0E8DB5EF7E4CCA2215E4B4D03197CFAB82CFD27B6260BCD825019132B33BA8E7F86D8C812C7744BFC089946EB0B8F3623805FB286FA53256D602D6C3A7400256ABC5173DE7BC74E50FB65BB73EC63A9CBE99F34E712BF147551E0C68034F1A61ACF90E728F73CCBE9F5E12E6796154E7E453C14BA7B3646750CD5990BF6556FBE8138285E67615BBE75B0459E3B01C5AFC49E7E3FEED584B91478005684DBB8C69D00481A696738297EC730B216683C70578CD60C3607B795CFE01C773B71DC00063E783AF6D546F853DC1646062CC2A61ADABF0A592BE06E1E231A02085349CF56C0C9FA218883A5340A87A8325542EF10516ED42A3E2D8C3ACC3447B35CF5DBC20348E892D50FBF239077F1EEE28910557C33153B459B49FC2DE247C97A4890077F232D4C04EFBBB1CCDD2D407BE7CC0DC9B3BB1222A68409CE966066398FB37FC3701A64040A1AD5B85C64FD155992FD96EBBE9C25BC981B1E15EE48B17EF3F6C55ED846A7DFD23508C6D2E3E67BCBC0B53F96D71FC39590E4C545C37D8146400A0D841BF5A98074DB8542EB48F9B80E1805D944B5B0853C3498CD8E1BC4CA96B69F156C65F262BFEC7189FD3682998C1526AEAA1C6F8F3AA1B1B0BE097254E9516F70E442ACB4D5446AAB609206F54D8C9293571287E2817D80F6AC09562C40E2554AAC734FA2D1FDAD2AE67AE066D5CD414CF596A6E21290AF78A59D3D1CFBBF3FC49F246CB332F8958E436E8738968DA10282422B0F040F9D261C747613E4A63BDB01A5C6630015FE5BCF2AFB8BCC6AD3012CAB7C1AE105306D633A09458E7C9ACD5DE9942CBE11F38512FDE317393C070CB873551B3E7B50C76C45F976A0B3E4285965F55850ED84C8FE36250E121EA54CC34444E3C5B3082517148ACCC4C5250F69A7387CB63E734904BA81528198602DF94EB928CF4634426F888B277DB68D7FC158491CFCCCF2FB511F3837C1060706C304B3A8DA04E267DE66E6BFB5B0041A45FCC57E91C0188115E8BC13AEE87AAAE2BBC6F6F93484D8D1FB5B2388096D9A863043B266E7200A26A8B495F0F13AB1591E886D581FB674E16057AAC078C3EBAE0E12E5DEE4856FEB4F792A9AB76C55DD4FCA867A01D2A7C2B6F20348EEBB48BC5A2627FDAB0AE304A3A9F2AC3BF19AAB63A60E7E736C1D23F1FB43F68654C4CCDA5A17974DCE74978C3EC45C2D2BF934628465557681747A6D6D8F6E54F99B82B903F48177C339EAA182242234520EDC32B30600B3624FE195A5DFB9CDE39657D60B5CA734CAD9D33D4F19DE2CFC6B57F64B92FD2D172EEDA230CF0D38A250A2E71DB361FA048B1DE37DBDE6ED242B9E7A0E306552D13E5F73BB211458FC0907B038B25610C875F355B714DED990852E291E3DCBA7C0136468F1139D9734360E2BA77E7EC79A1145AA7CECA3BC9609ECAFDE3096F48DE88A6A67D9DCEE1B9E425D7C2F57563738319F569361C0151B9F12D1301B600934655144E4C3749D85873988F9878FB915F47DB983ABCF5ECA96AA518901ED7DB40996A738CC4BD5CAB6373A7D97AA96691E34F564E073F5CEB215B61DD8EE2347BA0610E140E74112193BB1642011FB301906078EFFEB6C9402D22BCC0BFFDEC8E19DED8AEFE89DFDF4659483C91FE6D445383213C4498387EE953F8CB668BE52742D3306E8A5EAD113FF4D1CE54AA983DE6D3B332AF69CE9FD649F105D1BD87C119A5DECF3C08E2D0EFC33AF867F7F2763F327B5439DBAF7376F542D4DF5EFE48D40044D112D778DED0A071F5E85348E6F3DD5D4C69C49B92EA3133CC8DB2794B6C070ECA5C99F0767A2BE40FC533D6737A49AE3545009186E38A2368991966B412B618E4960F039C28E7A46AD56812CC2B1398D7CE362B07E2CA1ACC6B083A9557B82091D211C46A5B2E39C9702DF063F707B236E00BB48BF9BC96EE0E53EC7800DDE0F1A9190878F92BAAA4E74DEB00BB5001BE4ED1A39B94DF8494725A41498B2086FB882869F6656070C33DF5CA14101182E16C944B594FE15CD2B507DFFA28319B9DF5741AFC1566B3F5873461BBE3A81BFCF50E665702B056118AAB98CFF1A85150782D19198F8E765E5297403D9F216CDF012D097077EAB4AA7719E024C11E4A9BF783051E7751D7F24492A253C791F3795A39CAC457BA1907150A853E10BB5D67CF89804254BEB3CCA9C017B7472F47963447FBB3D9D22740C39340E6E1F4BB50C8D6749543506C302A98D9662AAA9376F7265BCD7F38E88BC9970B84B7E289A6F9D95FA85909B123B49A77DFC97E709881865E445DF65822B9F5245A3ECBFC5B564C25DED382727ACC05D4C523E50FCBEA71D28395B05DDB346CDB1258D669E105D70092CCD59824E5AFA79561FA0CB8DE8DF993EEA4C9EC40299EE9270087E2976C2815A02F3B4B81A46B51CDB112B3DCE949B19B02FF79A39B3425ED5B545EDCD83326218F3172ACF722F11C7CE71AF72874B381BA82F36FA23EAC295EE8706E20871841B218D44C5C400E81288D58375CDD6621B1F33296291AAACF85D5F17DCAA0C0CE3E4657FA1646BA9BA8374ED2DC4277FAE8F8893C9263F4811A4680C8159F9D55CFF3F8C2D945AAED51330CA7520C161D5940DD7C83484562BE542B470756C919544A2B34CEFD71F467FA7D1F6CF82D759AF217F37AC43552DC0E269FE21B6EA4075359442BAD948597E6ED0EFDD7B9AEA8C6A3B69C4014CF73206442CA8857653A52D0BB4D8C7555F5AAEF77D8DBB10FF2809B7804936B6DAF7DA493A6727C690269CA2E0175A78E1E3F45880AC8C028F2FDC205D47D1F140B3909D1BE790D00CD1DB2CFEC7B6EBEA8A92BE6CE6FABEDE17EB2EAEFB64AB2D651D968B73653FEC083E7137C01EE9093FB67114AB53711F18FFF550B9A39510086B8DDBAC691D0927B99F02F3C31399162C71B27978FEB59B9795034C109D3EB4F785087BE5B4D63E0A71ED76735BAE6E9B7AD9828300970DA735D29220DD4E1C3C54A6A6AC41F9FC6BA6B7EC18630545FD9134F600B45D13161A6169FC83638148EB5889BEC4F28624DCCE028784E10AC67B1AAA25B56001A6525A8B6A23109C888D6CF3F20510F3F564EBEA41559CBE25831BD206FEBAFC38711B8621DE3820F84A70762B5BB5A7694ACEB1A568121F3D1F634AB9F74C6BF6764D1CFE4625F138B91C01F548B5227FFFB60D3654434C738D2CC9A7DD1927B40EDABC29F70825B63923424C790FB2B1C74267E5C7395E2FE8D46F9A380EEBFDCB1126D6BAD79C2DB8E3AE5F24E212B684863F15F68147484669DF2F1A36D21F08128BB116C21E751E50EE5D53CEDF83E68A01DA13DF2E731D92F9719B422786B75D4961918AF7A69A94F363E81FA1F58E3A24163B4A878F63CF68F2EC6B090C502C0E0134333DC46B7E671F5F15ED9E82FC47B40777D431F556B2927A15C06B63C4ABD40232CF1D9960373213876B88397EDFFA2659CF7917B3FC9040679F0D29C5DC7796B70B46305CEA93EF8C8B77EC68EA43DC1E3C8682D4D52FA377A2B49B6AC394CFADAA15FD93E8714EE93714A932989BEAD8D355BFE160C1B2DDA093960091F311F31A1A96BA01188F48D0DE837B5F8467A7420C0AA027CD6C9E0C002F338ABE438FFE59A3C1185569A540627A1F48B6E62DA787F74F10FC9411D20FA7139687569EF3516944BB4CD6C51E132ADA5556AF292B68D7EB43AABA12CF73898C8011000B79E3780F16B2E6EEC429344226E8D860B43C7185ABEE77E8889DF616CB33B2B4098C74779F831044A039C55BA631DEC9795B71AC4D069792E3DFE7ED8A3C33EB49C35E23185D12A3FD8DC46E4F9382761F9A91F2FAE64A6535D7BE89136C326ADE2B9011296824DC53627DC53884AAB64E2676AF65AE8860034318E25049208B3B6C4693914F0839778133459C013FBF1D9965BF7AE480319419087A93709F401107420C5D10A4E800D74A7C8B78EA74ECFD9E3E71633D0B9A85566C4374D08BBAC71AFBB8A65D42413BC6C027D855C37905EBD0673E1DCCCFEE865B4C30AB25FD50D291A4C2D6F4976E7423F376F3B742D855999D381ACCDED858FF5E6C062CC253804DC77B8A6EE8B497C3268693BD6B1FF5507E668931964F88A6536D0296A0F0ACFFDF4CA1DFD36A2846DFA4CA60B0992ABD7D8DFAE6B6A6B691D0387AD101B974946C5E68E057B592F9922EDD4A74262F6976CA392485281ABAEFD85066A11230F6EE7F4F03B48A8E9C833F3FA126F3AEB25FB5B5115EB505C0A996891F2D65A76E70D4FE356EEDF1673E4BE36ACC6D3091257341677E7E978233C0DFE958145A3255DD9C8031C74C0DF78DBAD053CC7F5457F686B835A2FC9C0D7B5CECB47B1E3A94C7A9C1D127F933213E6836248785E153F4B2769E4020231F831607406B6C77B43C3B47CDC7D0E4413D7033816D9F9D993F64385FFD8E300F3F926522D2D16DE5E6F55D5585B60403CF6BBFE2BC17869DB2B7073AA058224C8D669AFB1ED83FEA7C9CE79D670648AA26B1336FBB81AF3D96BA0C0C7BB3A13D23388E26872E1A438DA460CCD39D64FA2747BB9048D1EE5E0007184EF1F86339BBA088E1E958136E5EC2FEFCCF008D55D6EE9D5384DA55C164831A4FEF86AD21D96FE67218E64FBAE61F0FF5377AF8AC3FBF183135E6127BE6219BB018502317DCB665E833B55CC4F5F4BC78088DB8DD4583AC05201960DB8EEA2ECFAB00517D6556252C220A6AFA0286E4EB46D9646D0E043A544BEA50689E1DE6A61743A39E37DE7428B62324705059AA4FB48499E8E308274C2CBED0881404BA6459B5508CD7ECAE0C67CF937ED14A8FB5FF6902378EA177D1EF7E83BAF82CA42258469257A5D27CDE71DB4946C756D12A0B2A014BC3E80C7F5E6BD09A4601E943E18BAF26E84DE71FD7DCF50DA0B72AC9B92157EA4CF92FE5D637DCCC76F359F8FC31EF84B4E3B04801190AC007D0B74A2D80A2E76C82B9301F0D9FEF89A11DDAE376048FD134423E0736FED5C2052CC4A4C85EA4533A8C3492B318514884782B573C0360CF864C394C5C21E19FC2AB8023FFF3FA364EE7E69A7EB8EAE2EDFA12A6EA2D3D1F502C36ACF2732164452305399D9A83D673ABB4B318618923AB69B0D78887D0ABC763F03227260398FD6ECFD04DA6BEAED57F4292A48D2B9F5F1EE18CB9AC93D6D3C19A7C585096D25D514E52EBC4C0E4DAB1128781409BACA3FBB3E741F1BD3ACDA70E5916699299C747A448FCE6B9A21412F3D2F49BB722101FB5DCC4902C734AD65C5A78AD3D670E4CCB897EEA517D2F397F4949241BC4FFEE2B931735080CBDADE61AC8129A77CE18F366151A0E3ACDF074C35F1642C4F2BC53A55AD22526DED5532A9D20B16085C47D4590AF60ED134CEAF853F9177BAB7993DE09032C4CFD885EC3B102FE6557446DE8FF6A81F8F3B5A1001E73383ABD608C75052FDAC35276A82F2947B73A91E0D1193A6154747F4B54B4237CF4CAC6AE21444598D6A6A49C9FAABBE96541E6022AAF3B0F0BCC2A8D03AB6D8D1D45A72DB8341B25970868B586A9D3995803DC9AB646D568EEB6409173A7DDBE643A85EAF90E25D7E6E25044DA3CCBEF7355E0F1BD6FA8386945C5201B12DF2AE96D53261364B1F77AC3E6FC33B9FD18BDEE34DC2D18B3FB4A4BD33197C6556ADEC9400E22DF0CD8A1A81AE9100B22DD56979CEA20D011B9B17DC50473289B601CB7B31A4DCAAEF7998055E382F7E09D0FBDE7BB536CCD6C998AFCDE3C086C17B84A2672B80F03AB1263659819D9129B5DFFF7ADADDD4B278BF77CFABC2BFD68A716BBCC5BA46CF3656890F9801DDC9E088EC61BE7F53BAFC59F38025DF69C8F113C690E7CD8E1549907E19174EC2666146AE6664BF28B6D32627B3B7AE14B499ED03F118541280B09932BC8D823A4672AD7BEC29D9535BFCF44564049E883DE97C36E17B3446A1CFC2E5AAC9BE2CB69E548C8564CFDAFF9EE8271634F958673A1B6AB5510F0B9C1B1D34BA2B7A4626D744EC849B1AA3DCF43338372AE303DE688D3841EE8632D36C5742E6C0C6C5C075A00AFD3CC957C425E2D16887BD642203E1887CF70B2B62008DFD7D26477719637C52CE4C4A05AB24B589AB6AA57169F038C0C6AB3CC70DA6199A5DF65A39D5E63D396406291784FB8B8F359BE42C03277E6B8985D96BA6460D18EEB8EC2BD21B6784702D7430AF8AF333764D33C2D9B5749D6471BBF07D90A84D95FB308DAA885C2B8284D1A4402EB09C633F0B839825D5EFCADDBAC0D93E1868CB22098A5FF9B20C638386491588658BE2C792113BC43790DD67C3E912B19EC5286381A1AAF942C89AF5DFD521F7F3FA06961D0B9F18407F8CCEAA58D19DA21C88A0C366F3966F9B76703BCDEE958F85415DE2998612FFFB43B98EA8D7D078C6EA5664A57D901AF923A742989D403F1481F727A19DD1FEAF5254DDF8B255435FFEA5838544A7986F89E1D805A79B36E57B47FE2B31254D3594A072FC19748235CC15D53B53F0A6B574433EF88900EA1A0AF38CC4D75E191A5B38F760145E0FE953ED9279D4D164F755BC1639772C107835821FC62F6AEEDCE4F4AA9DD86011B3D30C82E889A173A47685757438A59AD1FA461A0C065F263276EC053472BC982D9992D00C9A59CBC7D03809CDD29B43B1A2A8B740DDC558180BE7B8600CDAEAD5CF51F5C600718E1C7509183F0C18835A1E8B7DA6D65B7382F949B541A2344FD828518F2001371C455A8C35CC54D4C78040800C6B563EC052D0B053464C5099ECFB3227D31A7232D778DB7B13300D547ECFC3AF5B6210F32CB489D5EAA91D38D99202BB024BED7229BA50A139840B09241A172C7A8E405877E72249065CD34ACC0D26819A9F7BCA8AA761C7274814A9ECBDD673128ED565E317D7365AAECFD13E42E69B82F5F3D8EE65C6569D3E5A2AA32E8EE97BA0D0D277D9DCFB243940988EDA5C75F3352655A7EA76F17A7BB03DAC58F1475CDACB812B817750E709CBFBFEFB94CE25F3AA404CCDBA5B684632CE7E737545FBE42B6941BCBBA988217F428E2A7582A0A158E60C59BFAF703F09F3E1A98CD9F44A765DBE76988E50C2B9796797AC3C39508D0AF01E0FA33F2445DB317FE2CC97A612F605A6B8BE9C622059A2450433765C89C94C3E5D50477674DDDC9FE9C69A6176E6A15DF3C901FBE855073DD89896B0E947A69ED625DFB325D9999C8D918A44D1AA17F9EB317EE2F17980E14B052DA7A5741727A32EBB3E8B6BF6BF5507EC057E9C930855AFE6DEF19CB4847CBE011A6D2B40B53151E28C7455D63FB7ADE8C0DBB17A1748B5DCE1553C197B66B9808771B86AAAB312F3303E2A28D4BB028294F6A3E93564EF9DA0236F3110616ACAE3368DAC6F412B6E62E807C2F4ECFA8AA6FE4EFC25D830B329CAF4CE1713442DAAC17ED27E9982DFAFFBB540427FA3B3DF26CFD5D7074C6E8FAD44F3A850FB944F2B5EB92BA5C9B60964CE0BF89368D80CF00F5FB151FCCED1994FE75358290C6C265406690B1D74CDD814B8AD732BCA9B34627016C3B48E729FB7A149AE15C80D6CA99E047FEFF7B3EA0BF83EF43F1FF7C5415D76C197D62657E575447EC4B9EF2FC9D2D8DEE1015C2DEB3797F5FED2E09104161D26B4B497ED15F1779233AED113FDC2955567E2A673363DAF26D0434C7BB058345C674F468D145E3203802478BD70CA7ABCE7F49FFE516DE1DDBE17E50CB42E6EAD9C9FD22612246DF5D23EA33657578DB662B810AB6348964F59E3532F1F496AA5CE143FE8064E22E3A3C21C5105BBF65B7718DCDCAD920B07D076A3ED5606AB192F38AE43A3CCD0AF3EC79CC3FF7EA526148691E0A4C492271751DBD330FACB331A6337545D6CA400093BB7D6262E478BCD2FCF8ED72503B7B7C2F7F3569A0B5D44E251111D74634249C4D5922A0BD6F5239A217EBC145FDE03E80A2AF631454085EC832F52FDDE4887945FE99B6C1A53F3C3F55DCD8B8945598BEAF737142277295EC6A98DD1E263C0166E1088BFA2E8E41D4299030CF0A9CE2DC8C0965D808D5B94A50E7922EBA295E65F1AE10086150BCA8E7EDA3FEF65B5A79169CD94F57EE2877340A4848CD02C050B53C44FD8537D023EF61C9655646CAF65C4DA7AD4C3AF89D6303CB17B2435A9C66CBDA9A36EDE1608A0682CC2C0C57CB5DF805C8ACCBB357CFA62B1716804E17083AE10CA49C62613BF95A3097BB6428E1410711EFA7E0328FB7EA3A7CD1BD49AA6CFC199BE09AD0CA63831740DDCBEF31E6422D16C4A65A5108C8177230C3736BEE8C65EC5391CB89A9B230C95BB89D7BEAF1E95F6FCE3EB4754056FB1064FE9BE08B3C278936DBF116CED3BBC233D08ECD573524DC4B28FE034FB211E3911526671C81779CCCD5920CE9211828C6DB17A7A83B4D6D9E6C30BCB45BB456A47F1A25DB8EE55CFDC143FD59A69714444883EECE822A89B4F8A089DB50D8D55AAA1D6DC248A6DB1BBA335F88C894A062A90A4013FBC7325EB690F39F5B310ADE0835C753FC304AF44E47AE149B128DFB81EBB1C467155300414CA172D190820D7B60BA91F6B5ED0B1C3C19E75A618F57992F064F71EFA623F74AFBB13BC63B044956CD0AD20FEC24C78EEC9491CFA3944787EA5565B96A06E757C17217779396BDEC576746E5218E27853E7E3862355E43E00B4F75EDAE129E4DAB21580C6F1D8F777DA2F291BFA60A88974F9FAB319F2443B26B7F3C56C6EA98C516A0C1384844D7465A314840693DFAD081D887BC17C5B3F70B134D48FDC1EB0D5698D680601DFFC38F3E926076204FA48396E2A515B1BB0BD618584EA35F4C112690B81950AC0B0D6264A70A188E77D216D3E2FFE402C7EC4085F088BED01153416EB9F884E60F017489E7AF3129D6CC019A65CB32D08D7E3EFF4C33323C00E5C4A616F1C7BDE4B8CA2D5BE643962DF538B8F53A1ED099B426EF78B90811D0BF5F1298353F300468E22F6E939FD5B557F32C42FB37F5DDBD6F74276DBAF4AC893749FDB9EF3EA09BFDEFBE6A8EAB9FC568741BA4AB239C0B97D6065D831150FF3ED10F63A946051D982B50915110215CDB589B1CFEC2E7C6D2F7EEAF6E88193A3E88862E9C0ACA0227333AA6722EFB9344845880A15741769FFE596146AB2B9AC5115779739C58B4CC4100B12E31E4B6893C48193AEF6C27E23811354699D6903B6A53F97688831251D857B585C7CE18EF1B9AFB11464239000C9FEC652B0B15D66D90823F0B32D479DE445A4771E60A9CFCB48F6319CD5DD9382A999E154CBD520C68E6CEE2655ED51D8676219ADBF87C4821727B12AADAA2DA748AC94852DD52C1AFB74B2950281FDDBD0956A32A239F5861030D4ADEC557E1679EDD1D3198890C4D09896FF4987AA8001A6F4959AB58CFAD681856F37BFA8A357D232DADC64BF1B06FFD116DACE2D3731D2CAF17A1B17492D8EB36EDA64A6A908BBAB9102C195B3AEC413D258315BD75C84A6886FBC6242F4D803E1FBB640EC9B2C94E4E8B05EE2EA85249A57BB4684A9CFF520CFC1702DC46FE78ABA363C157B1007CFF521467495FFF2EB4D18560F2F00D218CDB4FA744FDD328D652BC77447839919211B7DB1EB968E421BC81384137F988A266BC2674FB387ACCA6942D265CFEA7671ACD2C34453A1F55026FAE30A53EA779AAC439801A09E3AA91351B825F7BA00E8E1715F35F564058DFC55FDD1CD00A5B12D044D8D76A1AFE7D70E084FF880AE7E2F791A30CA4BF2D7C13CFCEA44E5028684A530A2066DDA9666024BCBBE4748563C6265F7A1117AFB4BCC1C345A3A6D338B76A664CF7691B34289CD66F7068F13020232C4DCF8E6257094E9402989F22198118697356BE7D23667F59203E738B7B4A13B251A73F7040BDC866795D24B4BC7F4F3A4742A0F7DE33828C4BB97D963795A382CDEF238F5506C545BCA64D2CFC085FE2F5EFEF8104C3CD7D968AB38BC2A854AEB15C40602D6445C6633D23804AD7EC3663DAFDEF201DFEFA969342F0183CE3C31A2690E7651F69273D50F6D05291DF2B17124CE19D999CAB44CC7E9CE18448068B8797E40BA3DD52579CC086FE75B2947E16ABE8AEBFFA41A4C6702F5AD0CF309B141BD727EF460ADF1A786F6706AEFDEC4EF0A472BAB63A97F3B7BE7EB0109ABF7336CCCFB941E41B232FD4E7FCC4C35713CE3B4AA42BE13D943D56AA3DDC016265CC028B060DFE23A7B8A4430204A9208D05F18A5CAEE6EC023DEA86312FDDEC8C8FF4A33F8595A68C01E8EE00B5825BE2ADD2494E1693800D7603CE4B854D212BFB10F209FB6354E857FA7A60BF9863A529613732DFDC434AEB3878BA534928589A873888380820A264FC7E56D321CA544D20DE47BF62D8C51D031B68338D78B59E2428FB722E749FADF80DD0936DFE8FB04739E3A1D830AC81AEDEFC70DD733889C1DC5250F9AAB0EA4E1168121A7F78572683D4144AB415BBB91F7F1A07D3809DA12752ED914D3947874CCDE4CAAFB5A5D9230953B69637A37D50025D0386D8A167897FEE046F7D0B0F72E93C022B0FE3752BE351ABF6A057F8BF2D098B5CE9F17B391567E2B62181E1135ED9A4456585569963CC0915D2CE05095F2104E2026D11563740EA61497449E2A6B846E812DF7F74C583D1566807B7DBC491AB9889897B15EA8ACEDF3E8C1F45E123AD17F950AA967A1CA431AF17C8A2B7C95C8ED43EB09D4C2B19517CFF093741C9656A24BBD3718B1029C5DD6097C75ACD13EA929BEC62514C6857812BB48871C343F7DCE21A34C7F529BF37BADE5A31D9D3EB6B2447953B4F86E24D875797AE62B9600ECE0183B43B53A2D524388AF0C2235C675EE2093EE79A23FE2360C29DD99A78DAE68127DA7BF848F67B894E7C6918A397670A3338FA5741D969BD2EC610D8DB64BEFEFF32F10886A485F5F17EBCE8854B0F5F806B5511002E4C5911ABD4972B1F1B5BAE4A99746479B53A115EC8DBB4013752EF67BD41764C690D0856ECF6F3716F16D12B1F8FCE0DCA47ACA963A3BEBF812018A2F9530DEF0626B0856CBDAF421E4D0B751683865368E21042285D9F3A5A4A7E67C07D4B995F790BFA14E7C797457E1A1BBD12C4254BAEDE585FAA756FB0FA4C18A71432521E247646858FF2693FBAE8A1753DC79FD63EDAB7D19E56AD5B416A5BA76CA01D37259437C6AF210C16CF601EFD3B2E9CEC753E85D473116ECDA4E56E2EC503EE4A2B87A9D5A99F0C5F524845AD7FA3A25BB48EFCF0653B826AE5B3BCAC562E15F590BADD644972AD37E7224CC204E639A8493FA4E88AE85BFE18E74F6F78574912E88537F6C685CEDD0793386A009FF81FAE9CA0DAAC4C6916F5B61AC1E593DBCDACB4AB67BEB60A067F5FA385C1DCC9754309FD5FB3F22741DA36F32048CE4F69AE037465B91D42C749243F79EC9EBDCF152B69A8B05B72A1D6C2A728D0DC05415054F788DF1AA056AB3467A42ECCF0CED4BF915E1957136539AB04AE081345C9BB3C11E2C8CA5DEB0709CA64A540B6D06246B1D5E43EF3D7F7A2FBAE3461563C22F1635EB0BDCEDD65C213C7FEFC591D301E1DE691FE78A6734704321D5455611E75759CA8FD3C67512570B7FE8E7D29F5DA68A48542225388D0CAB202CD017B36392F97A907413AC8134D2A5C4B78D496BAAA2CD068D93A6D5B07FF59E997D9B6493982BF14B43058938CA9FCB902BA65F892A35BB1A9607D7BAA388D27F4F4D5589ADAC62F301CD7BD741CA12F741ED1CDBA698FB6BB89CB4D60E988EA96162B1A765D25573DE8134F220BCA9CF0CDEA25ADAA82F2E8A62CC37B6872B90B65E6F4753465388D3075DA3D1A1378283250B7C3A1ADFA23ECDDF00F5E971D775FFDB53CF9C671B1D2AD4F22D45CE5F05AB21392C4976F41A98091540DC42C4740EB83485A473558D7AD7AAC22631C1C21C6F7D2E98EF494A24E17ECAEBE17EBB700A119009459CE67C8791F9F9709D8FFB412241080120F308E6377B5744163D8D4DF3233F56D6A4BC29CAC590C3B240F2102014C2CC1AA00013BF9C64C23B96D669D6E23DFEB5147EC4CEF86A54960649D2D79CFF385F15CA4F9548484D074E6972AA79D991B624DDEED5259F6AC25643934A444718287ABD0B0A602ACF1CFB3280CB66E601FA05FB3513EC7EE28F03C11CB5EF5FC0959F123AD1B230FDA04C76DE65EBA5B235054C7805E883A24F0EB499F1AB23D6D6B4388D94F85A65990CD4712FF142291D71E364507948CED06D397BA87C01CEFB8148F087C96ADE4E3CBB89B97FA07A2B9A1A6376E2B6C47BB19A916C762A3BE9DA355677615B8D970DE683C44DD853B1D2F35B49A03913005D2EEF82642C66A24B08FC8531B03D01195BA93311E47ABF6CB3BB51AC88E2059287E03DF841E9D77EB5F338006BC795031BC838BB27C4E6C12A9C7CDDB483B1D73CBF684753B3DFBEF246B3FFF0C09884EA0CDDEB9717E44B01AC9EA66BE80B104E5A2D8B0ECBE4D4CF694919AE72D79F8887847EC124D8FB759BE2A1CFEFAF3D6581D5D95F61CEB6029085F72B029AF4F439A497D01861134B77904688BDB5EAFFE382F41A5A2497BD1522FF029309D9852B11AEAB853F0440A95EF0A6FA1AC130F9501D0F8D413B38296CD166C1A0FC1FFD94FE5D7F8628A63E41D60B2179CAC0AF22939B52BB29ED34B8594D43EDA4E2951C1CD35DEA476427A10406FF44420708EB064A85D207E28E6F82D1908B5120288CC332DB7970358F247AD4D12E173C0E3FA5EDA00F9F677FD8C50981D7021F8DD836C9AA69FEC7B7E6BE3C2DD2B899C5CBD5B75397A04C85C7C2294DACA8BE43024AB58FCD56980FBBF099FF9336333AF15E7072A5D512FADE58810E53CCD7311A6B6C7EE2CF75AD99E451390C0564AD86732503B3E359203094E44D8FA123FC4ADBA5A169E57D9A26BEBD7914CD8B475799F9C1E79B636EC467C6A86614A52C806F458CBB91736692D248F5A365E7B29FBB82E891FD704C23956F61625C8229C698C6C8B6BFB5AFE5DE9FCC816F0256C39418525D9E8D790081ACC694F064393796E7F849D38B05AFA061D0DEA4452943C46266FAE6820CCF5F11FDE0742413D39D48B2320997B3F6BB3856ACC7916A3CDE650FA6EAD3037A62EAC5D6B26F4040CC39010E1EA06FA2B07808354B167D8AC8F444356DDFA1CC6DD4B9B878759A72659041D92C95B2F2271888B214387FE4CB0166DC603BD23E66B6DE43A0A447FA2A484520F41024F30B17A4C32169EA5AF5B05428675FD671ACA3420BB3DEC4E039FDEA37215C9B9FA0A7D3D73794388435C80EE9A76BE4E171F7A8A7352DE68BDF33C1FCA7AAE9D80EC8B6D632020FD531EC7D43A955A5A672C08E56EEA1AEBCDA9862FB48936A0331583AFCBDE7473A70665C0989E7DFBFFCD8297AD7425D25834523A9199C164C93DCCE8157C8DE9A97564BFC99DC1E8ADF0FC280CE2B71C2A6DD0BE5F863850B76E24826CA6CD1FB6B41A4B4C651A424F2F48709305265A7450162A26B40AAB0D67F935B44F14B2C0CF284712D1FB1748059892E494F67E53A39A971DF0FFD637C0AC71357313720BB19E7E6DDF0FDF61C61EA3920AAA5D22D57AAD182A5A2D9C0C00053A5D2F66DA3D176A7B7DEF322BB4E57DE5B9C2D5CE5AEB115CF01AE5D179267973AD3C42759C111D357E5D8BC7DDC77387EF11188C2CB8F300303D5F32F8CD41D3024C9E567939D685D1707B706E57B25FD1801E305698E6319124E4C022250E96195BF1FA52CEB8C457C11AB5FEEF0BCA5AF61385682686D1FD25BC62EEF0B6DF7603880CF1C4EE442DAEB77E41EB1C215F79565519CFAE57750BCB208B943038F1AEADB258AB2279E912A29FED8C4D25A6FBBA287E57DF303AEE1DC052B19BF3C1AC1DEAC1C16D53EC3E45452A6EABE8A3186CF6C1D677108DBBAA8330EE21754982EC7100AEA1E66F72C385CFB370AF99971722C8A6EF0EEACC359D521F1487A502DD001198065FDB387A5ACAFBD00BC8FF0A0D5FF6D491A835F076886D5D0863E31541B973D02C6BB6030A7F62A3B452E2BAB544E8BDE8F82C19E178BB57C66E473FD0573384E634B6971B3A7A3F3A38610B1B00E2F8F5685107E92DCFEC90CF355584939D20DA6B928A61EB3907ACB52E0EB82ACDA9344E80069373EC299A5CB2C63FC8202A6CBDA42304953BD8E8A058984806F0B50DFF46576E5DCC42B568DCE4ED9CBE95A26BEA121367936123A6E5ADAB091E41DE6EAF266EAB2565A4757BC8AF2531D816018D15A372E32A2FA451E40A4E061AD178B1BD85F9A3E8091BEE3D76AD56474A816A1DBA0EC91A3F48C3F33B2807EA17318E309DC8EBB4CB40DAE27E5EB63C474CDD47AFD80C2E71C2DD360381CF049DDEA11A1679EBCC97111BB2DA06251A40BBB333D773B627C9B96A4F4DEF5615D190619CD5C35A730DE60AB6FA1C65C52F397E1ECD9DF61DF6B0445F9DC6428DC70F9F5EC78C6E17B9A9444354CEC5354AE4AD1167E0F9748D8F73FFC77FBAF9ACCC6E582DE71863368B913431A781296AEE2CD12AAADC529365DDD1AD3AA60AF78EAFFFBB6F797724EAE4B095F3DC34231B396713D679C18DBCD7C29CCD90C83A4283532EF9662E1713A44C03CD0B51ED650FF4A4C11BF66B69975B3EEB5427FF947D4BD6674151EE680001F7BB40522FD78A5AC24C7ED1C5ECE5DF49CABB80BD64B48620C673A31FEE8DA3F8E732A45C756A2EE660C9ACCDE37E656F49D417F458DA45621F959CE425298EDFE50E8F6496EF2DCB984EEF8C690471D50B1CD0CA56D8C5899169027D7EE5755E645ED94704DBA7C79F62898A57E30FB7F11E71CDF764882FB8277E4924A3138DA83D3F8649DA8818CF84EE218981748F11901AE05A82F5F212B1F19F7C0A97B30E7DF830B4E77127ADE53D68B3ED81FE6086E90EDFD322C3D82ACCBA95BFC6D9FE1EFB4A53D015C26F1D8F04EC47B4CE33AEF04F960F56195F9A83DE8B14ECBC73BB44C9C28660E4F2F89FB684240DB7A11256B27C897D111C682401E526C892F36991EFB800CE27D2A033388DFF095A4000AF3926B356FEDF61AF9B311A52F27D537A1F27556EE738BFDD97509D3E207F685AFE233CC913898BC723C627430C80CA574845F30F18684B8074AAE4BFD1D5C2BFBBDAA7BADCEF3EAE8C12310A16499B270FA0673117F8EADC2806198DBB645B9D4CDCC155E8654ED60C4018DB659ED653DE37D3E7FC071DB9DA8FCA3BA52C05679C8B748BBEDFF6D928BDA9DA088C1FBC80923F924A894B9A3CAD9AE9BE416DB2AC7D4079FB8FE23AB066A49D14AC7B6561A1D149E0C71BDC9D479D775D5FC6DA062776DA54B566881F3A1E3E722A4C3684F79F10695EDE001BA4158901A863ED41F5F7A52D3547095515D70772972851D88FBD3A5BA49B1FDE4C61C1E832841565C05FEE5687A777EE92276D1661E7FAD8500796C7EF5740E911D83A1C457E3AAAC973788B1FDC20B660DE11E462846B3DAF97A9AD65C81682FDD19DA2B9B3F6B92C624D4659D53DC9629CFBC4FDCF70C2F7FFB707D00C6B7DC63C3952B42093023C59A4E3E7242CBFB837A581F87D5F65A3C31B55F77611A738B4DFD5AB0AF67C40F5E30C839430AC7E222089E1983086F977EA1FB9509A4874948BDE26E072DCAAA144E68DB632083DA92F242299168ED82A580F81B8C23F555538FDE5183C86A100235B53923D17AE95F783B5B989E29FE79D5F66B5DC96355E4AF62DB4E5B5A28C00BE4782D6270464C40DF85A9D85FDF9CA8BD858616FB78934DC95C2C4EF04B6956856041E0EA6220B06424ED329F664C4B39B708D00EA6F3E5A8ADC66F18FA96DE673211CA593300FFC929965518EE22BB5F34CDC01367E3DAF457DE8241275258BDDBAA3099CA521C5315E14B91FE162CB64528181644534F8497379F8D394263923012A9FB9B58979F251036F454B5A23E367EF6EC3CED3A800C95EF4B53FDBB16BFE937D3EA044D3DFC4DC2293C614DC146AFAA1296E43F389909C00A32A41DAF458B1D19DC89DE947B9A1AE5E8F13527A078DC71A516DB2B5566D99F8423B8B15D44661FD0E9D1118047B8CD353DE0C7F5717D72E3249D1D5DA439D6B211F99B3BCF3D6C78A717D07D1C124C4E4B1AF87E005B74F33267B014F3101200EF96ED199E3064DE796E89C53B0FF3C79EE32EAE2C8679DCA1A7DB87CFF919F6348F7762BDF1CB314A569783371E5C9D989D7477027A467D22600B4577C34A5E9DBB5E313B8A6DC6C0E62DD3C3A4DE9A42E91D9FA54021A1A03A7793607890444982BE9FFF7D5FCFC325D38F2C31744020AAD3659A9BA3D43934B0A108D04EE2781A8B70379AE560AD173A78EF547842F1FF45A99AEDEBB2F5F03EBF836180A0EF441ADFB4A31F8666D35CD4024182973285BD6AF5EF04B3EDD44C5B247EF4F772AD43B7202D1FA28FD0EA993CE8785514387069B4E0B95E94DD7DB2C49C5307DD4772990093C2F5D3A7FB9E736654CBD2D4201AF968A91B5719D38196A40B5C604CF7FEFCFA122528666BA1DF49211A66C0B9C2B68D421AE6D478F62DCE1579EA61AE10507DE64807DBA85B3838C6076DB20F2837C71F46E5C1A9F6F31B4CDC1A76CE6EA7F3D843C3F0A90B58F5B76FA2FD7BBC71FFCD7F2F0030A2F3718BD2A1BCCA80C34E97FC6573E2892F6B4F2F59E47CC442AEAE36CBB31A7EF88B846787925446ACC18E5480807195000D8547618CD18443D2813342A1D9F365825E76076C64869359E86C004E6EAED180CCC4FBF16DE7FDF2E85DB4216A8B53D09F83D7A7959D9E9C84CD2314215896B971B5799D19F2F86C16637A4EE1319BCF724EF92A90E986524BD0BB8440E3D0710DEB715F859D7608B45FC2A29573797E5BFE6860EC2705EC45DF75E46E749A4DA74B78D0FEA5CB6992B5C02745F0155D5A53920841ABE7D9C2AC77DFD28347831702067801CB675885D520F4A472C14AB0F59112F477502D16BED31A1E82CDA12BABC46CAE22C7A329F6FFCA9DCDFED3B284AD869144F4F4348CD29E1A6B705119235C85DD55AAF662B2FA1794B62C228FDE0CC26EDB27E4ACD5E07748079787A6F04F0B2F114A79C554E6F2705911D206EFB821EBDDE5A16EDABAECE18B03B375E8A918C9C92BAA01322639D526A25EC12DED2FE643F581229CE978D40110BBF83808ADAF0137908D9737149AD9EAD97EEA2971C81EB4BA540E2A03B93904F9B45CC8AE6BEE0D60E545FF1B99A8065876D1400568EA923C736F67426B9D2E2B808E9F2A998604E6EE9E09F9A28A5B808AEED18F0E0A5D8282971C3FFAA4B3D453C109CC77DE462987872AB7F47A2B787F1F5E086D7A8065DCE314CA61E3D4E7D7FB250A0D9A8D2FB8B1561F6963D335C010FB7898F6D29065E808522E2BE01D2AAAADC5DE92A461FE1281EE1E19D35DF8CF1933C65542185C7F8BAAD61756F4E0B052ED38036B7DDD971AF8FEAEF7ED0E8A74A3E8B1E85AAA9D73C33C5F03FF1F96636DBD67AF70C45DDEE355CE8CAD6A005EE568BAD2F7B25CB02868B03989F4976CE61025A9201ACD59B41A4E66D29A5EAAB2F60A1AAA1761CCB06791EC26A2B5E604EFAD2BF158EC0236976E5F8632FE6AD8EFB3B36E49D0CBFF3DE4E47FD269ECAA913C3DA122D664B7F33C2BE19668BE84E353EF363122985FA901D9CF1FAD8E60257C8BA53603E357D3BEC013566E9B8630B650CC9D3E91C843FCFDD55146E6F1042B0F900E355F3F1232DB2E75809C5CDBD11E60C2C2B9B83D319B885FD803373668C5AD99584FA1C1257F75BBF02F5AA873F42DC5FA90C9E492B124286EBFC7181F91DAA0F30A079008BED967DA38BFCBF5D37550FF0362D77D42A6D741F38EE61CA3F38A6054C7A376DD9F6758EA07CCD56120540B7EEFFF22ABB9FE7C6C64B88703E1D35CD3B8054E82A61C2C8752CFB8AB122D97C8829942A5E1590677F255D80BDABDDE0FB9F5DF9B65A96754609F85CC0D493447C9BB0FE31F35A038032624517C5132F141D003A61AFB5B73189FD042D3F8FD1C21AD2FFF95DDA5559195FA3CF06CA1EDA4AA3F27EB6A4CE4AF107CFF6C37A846C3584ECC14D95E23664C8A0FD806FFD76F9CF933F312DBFA51487CEA0F8F355416B9FB26A6FF08E9E82321F0D133CFE7374091563D52CAC8F5F1F0CA7FC5BB40200AB18080E1939EE888A2E9E707169AFCF2C9D8AA4F0A0FF7C84CB9E3EC720FE2A0BECE3D2E80B33BBF3A21D56DF28A98553AA65EFBC5695C9781F5D5DB66C23CBC7C21BFFF1A4EC0616B6ED9F54B16B86F366027FD0A09DBD807CDD582AE70DD4CAB54D637F339C940AAF7A8CD5262A59F330C54F1FB7C7EAA2F895803ED9ACB1E78E09C4AE7D8E954E42C0196C5610A483D5475FAF724592E140FFC3F4E6C86AB06F98BE55D4A3FD37076980F41893B8B32F998C65E02F2728E78C810F05182227F3235A1B3CDC57BF6B99CEEE86F8BFFD24CBC3E164EFC0DF9C0E862E33A3945132B34B8278D8AB363AD15253874ABE1CCFC4E30A5AE93C65D83D019A6A489103D5B0563D3F0AE6F5F712ABB05A159D1A70C5D21142571304EBDC517FC317A60D72CD1E07ADA430620D0BCC3C156C2B5C0FBF6572A91BC1304246E391C2F2F672D7B491F47DE59FFFF54A66560BE801A6689114B57F63C01575AE7D9A3DC92096B776BD2CD304E330C4FF79D323BFA78EAED17854FD5B6398AE877FA8C9B8093C7DD08CA8D087D640815BB2E8F90C325F6778F9B5168AD09B836BFEA8331484DD995942AE5154F74FB0580F69D1045BED8D0E79D7612EF376D93B05F4B049891BCBDAE6730CD0455FBD08A05F653882A3AC53BB3A4FAA071AAEF15B1F922D1EB528F7AFB9503C17CC43A1807867C96DE8B72500C1A6D7A5219898FF0BEDAFCE7C4671F42C5BE2B20D156ECAC25D1BDC6B21A20A8B42D47B66CA53F3D3B5FB38E190E16A92A8993060018030915D83409A78C007769F316EB9857430D23BE1BB544E9C37D3ACAF00E0427E76F9A9ECAA38C4330795F7CC43FA32CB3C470D42A3481339064692C8539A42A081173F86D7E684786122B1A08C65A21FB60D2235FBED52D6885095C1531869AB67A03A78473BADA7089EEC97CBD64C7A9FDC87661264CB5AA2B3ABA451BBF93DD4FBC0746237595370204DD96ACB4A9E709AADE8273EA917B1D33779E8F5BFB4BAFF08148BBC6405D2ED3E64D68A4896B8B1C7BF5E2A85A403165DED2491F8E53F84B164A95FF91250C2617AE4355D663FF008F1AFF4E1642A50BD195BBB58AAFAC291E0FFA83C8D3DA7CDF85A37887FF71D0A26E8B4E17A394FC4785101F06D9157089227B012DFFD1F6CB3E55308AF1DBC4BCC04BC7EA3E077B0BE972EA455BAA537015FCA2C3FA4C0402980C33EAB19162A6A42EB5E32ABF5BE783DBDA3A73CE27A288BE829311A4CFC5935F21EFF29D49B59985F9E07755D98E106BE80CF326180CA8C8B0406EE77140BE0160F9B11E2BF30B2D0899593926BD623D5886795494F528C450B859AB5B6DD0C1836E9AF78FC8DC3BBBE7FDEFB4DD44CC656F0FA164C4C56F994435396355B7348ACA891F68721CE0DFFF90D10A9FEA715CDDD92ED3517BA99BBDAA6CBD87166447C10B0D6D62107288BC4BCCF6A9EDE7FDD715D22EE498A503156E55F63C5627A6BA87993C54C532E1AA958A28AD098CFB57A1B2AC6946D28DBDC808EBEFF41F46B9170170FD77DB2B0D480C5B689A723FF3EDD5DE0C838EDACE1519395110FC2E9EE57D117D7533CB62D7674D9AD77E585B42960FBD290B8F5C2E22C2C297F0E3A403F706031A175AB3E0BC13EF26A7D0B3609409AFA300C4CD03B60396AA243C8A8DA3B2AEEC24554074B8AADEFB02427B0284E5345E89128176906E17CA682E172BE7C0046F52B6AB9930C0C411B906415AD07367824FB5801C5FE089F1EA378920F5736DD6931265A1A1762F67963CF2D2C88CA1C68E22C8A7ABF4811D2F272B64DE01E4994293524C797C6213747F36222AC298C9F88DB479B28D5BC4AED2C93E9E3A9C71092C537234823E0C4B37AA9F3E16E0957FA5DD7812B6E3FC9648154AEE85CAE2B16CA546EC8DE3648A792A536A7F1ABBA636328341B2F123AB84879B0686644CFE33539A74ACC13CB2080C6CEAADBF4F895ABF0A76FC7D1A489C94C0BD0D116E2AAC104B92FC4884860E2FD627FA27D4A3E786B9CAB101D926A5DB34A3BDD88628C28E740056198A85501114078CBDBC89A1610E946D6D9016C6FF57B6DD578F3B022423573EDA17C76E1F462B5F4782DA4FCCF08BB4A5F4A9C3373B6BA09C7E17A1336A7C1DE333E82F90BC518CC8BC2FFD681E9FC5E31410D9070EA855D568320628BAB1DD7F39AA5D53F45835F2B596E3D49BB7D3526528404443F8930B7B60E49A5837577F5EF711B50F423D8B2E9B21980205DDAAD3352494334317518DF461B6929B78A07B87FD2BE459FCAAC3F3486A99A2EF25771FB6D67F53DD164D6B2D9B03D822B48E45EAA4D12833CCCC8EED998F40C19C63040F9F4F481A1722382F2EEA545C237472852936293B5E8BE59DF0C5F5D98E18BA2CA6D8A5CD0916B2696E77B54A626A244460B3469208122B48B02172BBFB68671D7E22B182C52BF335708A2202BC435CD5866A2EC340698C6A4BC010787CE42C411F36C1152F58FC63DFDA6FA412D9B25916FEA0704DDE59F04BF98407F1B89A9AB0F8A1675077DEEE5ABB8A9C8B7D4BE32CC0891ED4E72993A147B25F712F3015B52184890693FCFD905AA9F1CA726D506FB21BE09CE653EC94C02DCA75D2EA0C0AFAF5457C1B85502437EEB8EF78D2AC96A21AFFF41502A5CC39F7ABD39FE634CFE967B3CBE4A5F42C5C7DB25F2CE2ACC77E26AF5864C4E795DFCC044FE1C6BA5C6C588931C5622EB344BC4F61B7673D666106A71DDEA73B55D55466C6DB225C368D20B1FE420375A229480745716BDA5501E73A4461FEF1AA192D0D8A39278CDEC7CAA8218F11C0C065E8D257274A90940C94370A03FC82FEE24A8D352F41AD2FD2BB039096ADAD0FFB035BAD67764E8F0AFE4C1ADF7167A1DA9CFC38AB64CD80C393761E308AAAFF6F2CB6CCF080B7A17BB9A3652D324B88862B3CCE250612384094C4FF4DCB32789F0AFC78A1CD2210EE099E9665966D5B57C136360A4A7402255700A9B39FD6D4E98FEEBC44D6A8DC211844663E65303169C6AA2E522DC9715AB12C95601EF7E627440093811867D8C487E6DA28848CDBB9BAEE62E8FAF5569E8C6FD21F40BAB4E410839D38ABD944BC30C331B97F68A0EBD2DB345C2052A24F0BDDC673FD6B1CC0B99300C6F52431C646CB6580977546DA2E486646A8CC416A3C0032E584083948458556AFA6E910AB91413E0A3017CAF06EB1EBD256045A262166531B5FFC669E0E5B56BD900E02D719E35D6AC547A09FD1CE71BBB434FE7860C665D9B51F9158AD9A4A97055FBDF2A042AA684D0F84FFB9CF7EF4E5D2853FB2D914FD253D43544C83AD6813BBDB63357E9318C2CEF80066C952F2C3EE9E08962CE7E9D9E7FA2E9E4FE2F098E585E895FD2B68F37E9DD180884F569C7C2B978DFD636C94D46879324ABF6B966EA3AEF35410C242A7212639F0F301B795EC89044EB08B208E0259C52D22639572B9D13E606C5EC7841B7BEEDAAF27CF02134812F3CCEBF451B31FA1A187559F7186CB53FB3F3B6D051153230FCC3B33C278914AFD3A32F7F715D2175DE6296D3063814EEE52520B7C5A4D0C20C46037A3B598863F5AFF09EB8B82739667F857F19EFF28D992A3C0B96FDFA851AB2B03BDEAF175605E7DA268A3456A673C26C52046635FA1AC466C490A6C5A146EEF1C516E07424860CA75938C4AB9570F2832C3D3B9920A54E77454B365D787F3BF4B4A1EC3C1A16DB239CB2DFBD6C9FC4E80DD41D0691DE53EE764DF1CD51C2B7004FAEB4F6FA6B0A565648B6C3BD3A7B865C5251A489EF2CC55C145B63D2784699F5501B91EB8930908902ECCE73EC050ACF4EAB46246B26832FE2AC8EBDB1F6CF635CC67C8958C20E905C83C06F16E0BE35D7E721129DDF31761E01D257B00F888FBAC0E539CB3C0B9D824A1973E0CD0E73923BBA36EB4DAE4BDE0BD97E01F9A4E6FD0AFFB3F21A5C33BAC21EB6E170CC72EEE764F9EF0A2B471C0545AF8D90EE93765BDD421B26BE930F4B474B9D34F490DDDF37E2D740CA8F1F55A89C3B73E8F9B8310D84FC6A1A2D77E9859EF4FA6D0473F62F1F6FD346DA6A69DCEE924A0CE8F7F06E301D727E18BAB9C6AE1428BA7FA26D23EE6545F9A36660E26DCBB58C6C588993EFB00C0D1508B26E8AAC12BDA7316F220045EBA40AFEC487FD2988D905AB7C844F275CAE35D78021A40C865D880426AC46CF0BC0A39A759FF6B711A1E9151FD1A16DE2186BEC70AB6A3420D2B0E85EC364D6910AC7D04C7844F64818340E6F6FAD1BD09797284AC103FB21F3E9802E3427B5EC90954EE0315CB60D46EFDAB0CD61A996DCD494B3A754095245F212ED2338AF6735C2FC1C32BDC3A0F79847C28BEB2573F297B69D1789C2F86E0659B61C9C3EDCC5D41502798FE766CEBB3E14B1AA2C7F9FCB0C22A94412EC1F5F3285D9B9CDDDE9389B9136A4E7FC9AA3B0D1F288F1BFA5CA9E4FB8391DC86693F66E771E38C87F1BA643966CD89FDF75773DB78B783F5BC77D91F7EE658822727AE2AC141401069C129DED0F9370068CA9F9AFF5B29DB8727B12A656D52E414C15A1D0CA11E76874F0A28E9869974F9CB6E695E6BCB2FE1D280A38636D37FEBEDBA770FC5CF343ACA1BC08E5F9ED0F5EE953616337EF2ACF9402FD89CF688D2F498E8E4DDEBD9755DAB6B1113BBE796E58CC1D138CE025E7273CC905125F0509C67462F22726D2D5797BE2783D7E0DBBEFD0FE372C482AC267AFA9A3F3EFCFA5DD6AB04A9574A47644E448D4C6CD34C0794B78A896F7E08CE4E0B020EFEA816F80258933351AAD0CF352CF737331926070ADAA82B8DBCEBD033B73C41437D36D00D95140FAB66CC797008FF0B1DEE8252342701B679DEAF5AF0EF70D8A16C762BD0984C2CFD94A234EA179321113650D4A4825BF675C5848159455F6A49155141E2C4B9A9CBC38876E3D54D0A32C0433C32E518FB4EAE946E94ABD33125A6E2177B8F3CC142D7C65BE3515ED3AE9AEEC905BA7B64A392B501F0B56EF084480278D7F0AA257A28059C8F90DA2951A79D61578A8249C372500D18061F9A824E5337A788273F3A544D1E0BB51FF92B5F5C1C1070ACF8E07C07BC49328065EB8D93F3FB2779B596B221D331E360FB5497B6AAFB27CF5B092A082FF12CBBD0DE1279140DA59AD0A41F86D1FFAD6C0704F912CCBEDDD7007870A2E683F947F3E154EA2768E5D0B94FD8A3B242702CF40C8FCD9F50D046BBC2B02E5D8C7BD85005BE06A5D5DFCB8A49A7D6DB3949532776A50EF242B9341EC59E58A1E120B114CC9D3FCE57AD63D99B1F7175533480CB4B3A74FBB32C1653548A025C43DAB3E44BEF2F4D9917EDFB548781EB3FE5DE271E99286AEF8825C2A7F0B84ABF58EAF6B81118DCD2ECAE00CF9C26D5218A82B1B231003828BAB61BB24EC49F2781094B0765FED3C7D1730BF68D9281660AE8BB6ECF66D0FFBC1A4E404D61F93B477C8CB3026636469780B7951D7ECFFF2E6693D8CD75602669C23A624BA07EAB1D0993E9DB0DCB9A6994C867A9A366DD4182D6EC845864DC4A59D80F48C0D6444BA772BBE6004037CE6175475B31393DF4E503C4AE93C87C4A14DB29D4ED426C441CD8E13096806BCCDE8D9364B7E5BC362A21798AEA8561777A5A4F0BE82E9F233754B22BB7B42AF01D5B890DFD584589B3010DC9FBE3014DE75FF0885B2473B86F76ED97875363CF29B9E02E4D71D70A6B31046076445C4C7F46D6DCCEF95BE8A726BDE095B6A9091C8C841711B8B1268677BE326BB5C3587154FC7B9107E333D484ABAE47E46B92EBAB589A4B5E82D5D4B65A7CF697F9CF6D1055F63D721EDE179DEB43FC377E88A4D68A4EC34C7799CD3B4795D5B884FE8DCC0DB15EE2E2010D0A5B8DFFA1AFCB91C05C2346440895575D9BBAEDCFA5DEC6B5A82B40240BADB3A2AE878E8D31B5256105F09144E41D19B49F9B9CDC324B55416DB482BFBF72B352CCDF8BFD0B60CA8B232DC204E8D2AB5BD20A986A6822EABA25048892430BFECBB52E0D94728286B1A3596EF394F60F2B97C0A9CB9B6157628BACCD0561B0F9E8F4895658C3FCFCD86FAAFD40C459EF2369AEC60DE4EF729CB4F4CB295ABB25D1E6518136163AA5D357C957816815A938321BCB1288DFC62396A847839CDF398C5C1FED47052BB7AACA70ACF0E7D04BCAC18DF2B0058A33015E6A3F699AAB83A7136222DA211EC8BC49E93E049CD44D8DE2E482A7280E5C94B7301190A59C175D8AB439B6FAE08853CE1297366881B0C095CDF2D1F6205C99AE9AD07AFD3B480180085F6DFA809E0B45E245B4F2AE7EF39ABDBF359A8D83067A4C66CCE719C8CD9C032CA8D29BECE9A77950BB67C5FAD0A6B812B12CF7540ACA1845E7163598F27A1A206552167FF4234714137E2047EABBB4597BBC14B210BFD46667125A2E2143B4CC49D63679FCD63E01B84A8AAD37C0562C30C88C18DD0D7FFF0333E91FAA37C95D4AAB356C557D206E911FF746FE0659089F972FD39010AA70B18A8E47B9B169052C0866D732ABDBDCB31EDBC0B782B55D0B668D12F3E67B6899DA32FF7FF4891511682F6B4DFE51F030604451B3A09E9D5AAB15D6CDAFEC1DCF51094F4C87739971CB20C2311CF4BFBECEFFD15600DD771219107CD33C08E50FD47D16FF54B02DEAC90CAFC89A1593A0D739A45A3A5817ECC51B924565DFFDAF51CDFDDBB7935DA1220D5E4012759DF4098C84FB24ABB5966736D7725D746BE7786307B139DAE6A7A1626249A44A0639F79C9EE999186324B784F5BE26861CFCC430E6C64923F49D67BA918F8DC31493D1CDF3DACCB9904BCFF10263AD1FB0628C0110E054A5FBC83F6898DDB1E992B0B4D45FC7C6313DE7B9DBC5EAADDEF05A1351B68272DBBE45D179631ACCAB2606DCBB3E351185D3AED15750B5DC903621C63FAFAC16C1E90D930F32AFC7E04670FB9B4BC6722E6FED94CB9D00AEE457C010635A6ED6569AE4D033086EE1257B7652FDEAC57195BB17407C6B79A621E7F2118381CDC875D2CFF2DAA6EF97906C58F5E7E8F4EBC02807767B3DCE57D098F8846E342A004C7DC1A8FBB0B1F1E5ADF24AAE9B8BBF33FEAF5CD864AF773BDC628AB324211ECC6C77DACA41DC172714DBE8120D6ABDE63216B8BF54FFB93FA48E2A69C0BDDD75D2C28ACBC0604912A1AD5CA9FAE63B8DFFA99D68BFE8F8E3C2A808C4C335ED187045E80079B6380C5A682D1822071B28EBBD5B82CF8B3CC1738172222E956101AF105CA78ED3126994FA9FE6BAABCDB825F6727710FB7D21EFAEE158E7A1BCCBFD68AE43A4D97B169C0759C39C5605E4AC86EDD22CCC6014326047E97C6F7359302E59C806DFB3A824AE567E466758E7BD3A290C2F986A62265690C0A79819FFA614B8466BD4F26014A9E34C8A0884D787E6C36DF2F66866A774ADD1D94CC30FB20A9E7FD07E82DDD33A0EAA5CF5B520E7E4B5721F1CD78ED9D93380773A3A466F67D1F6CA4281620EA13F2870F8B3C410B7F0CC281EDF8AD6603BB30CA6BA1287ACDA665F073E765AC9CAC60590F5AF35CBD7DEFE6B6F3F46E3CCF8ADA5B7D30930EEBAD22D5442E17B439FE150CF819442D700324F436AC23DD410B5DDA1619DAB3BB2D39F339840749EF8ED54FECCCF9D3855C79D68983D435D4383B85365A1289B7AAADE18AD0A9151547DD50FFE60EC55F2045441750F4E5CFC56479559B53C728299DD7FB4AD442A2489F9DBE5DD97FBA5F536B7CA0C27DD701F5FD328DCB52D6C64EE96944D5E644BA16A161EF1B49F564AEBCA2DFCC0688A709A33F20FEAB6BCD9F99A99092D39F85E03EF7C39DE1CC72732E5CD55ECED2FD07D547D25C47CFA1200CF7F3501729F3A6BC0C25EBED01E0A473E848AE3263B1EEB2F9841DD1E35769DCB8B1448B3887D44B5A1AA22EF0592105C1A90B825CB593F15E061C9532EAFF7E8E81F9F546A4F6F5FA0F4F56298268BEBB7299E51754275193C6E7D3473BB1289E7A26FC9948076FE8A7B0B8ECADB0F0B763404C2B78EF9FF68F4DAD7B19C9A819BCF74167631458A73E21F78E842948C4AFE34219AD561A552EFE108CABBFFE1836455008F28AB78CFC2B4A6AF686461CFA59B56AD400B19B3E0843A5C41274F34F16D15FE69236C84530F3F1769EEEF8F9FED37A4AD52470D121B8864E911E71F879A0BFB22BDA8B8E675877D2D03C2A2D1594EC82A8478510E753AD24DB8BFE97E5EED24F46EFB201A690FB8C6F716CF286A89F46FDBE2331BA0B1B9043DDAAEB2D3EC166BED4A2D1ACE15F0057314DCF10B9625E7E161AE124192FCF5BF5865327BE83D727FAC99662F9EB6EA53752093E880F7200B9DEBDE9B78135BB555D4A0A4438C341C4935FA493390ADCA8B2D387A94983BF2CE45644F4C64480B042AC363C72D67430CE1010C126F9BD35E0DBA91449E397A696AA5431EC1FCBAB577F58D205FE3E3A9AA6A7848D62D1F1FC8D0A6C3BCA8A71E0E3CEAEBB02D9ADF2EF44989ECEA0DB01DF7678B839F1266529CCAACE41CC3BFF803EC8EDA293FBFCAD47B09BA23BC84F7C928C2B732B7A7982B6A5DBD1BB98C9BF3EADC11232E1D14CA342AB500C40DD4465F8D6AAB5C1B384E52A2F3C4033AF2F2CB6D0709C14E3C6B5E3986E38E569A0A28E4D461F2F8824065D877ADC791D70907C32608EC31596C4C35D0132AD4EC302FD25E299C178E32308E4DEA6091AB74E92D8D41DA0505A28A7F96119B0AC8506C7CEA6A1DF1FE2F93A50777B1CC076681911FF29381C00BD77D1D84A8380EB34F6839363754435F3A1542ACEFB821F55740F7ADB64F94D7759F17D56FA616CED8AC95BEF2F038C8B3E9162D50707834A52DAEC492A050877A939AAF4936926B91D5AF29127D7F9ABF32C056E07DCEBACDCD91BBE92BD7BD09FC3CA87859C21BF43C1AA218680D934EE1A515A67B6808E2280349A255EE6141CD5CCCE786C5811FD7ABBC14E1E016271DF1B6CBDA4B8D708ED4E644966CF3D5F9D0653CB3CF390E18FA459004A44B56466FAD94C59BB91711F49D7F56BC9ECA7695D7A9AE8AC6D933ED177EF82B64E60CBE44080F059F0BD82A68F2228346E85298E66DE300160E68004BC63DCD6D4CC8AC3F0DE6F4ECE3D0A744D037191913F1E9BFD93627B7788598205EF7AE06DF40524C8CC8596AADF627419748ADC505072EE768B9C39F2FED7B5E714A82813766C96771D3793CC9FCA2739DF14FDB19836D6F3A1AE837B7C05D48CAF97D8CD7F70E81EB7833C2747BC6B877B716A25C25FCD3425AD75F50AEABB35A91BB74A6C5A5CA4CA3B7B49706AC594039A5AE7E8A7FA5A797D91E1A405BB70C4341FF591A2C3C6E0D7051EE461311873EBC71299EE0A24E5D370D404A2999D8295304BE1614E5B89B12C6F3575357108213D5FB58381761E7FEBE62798CB859B664BF76C6FAD26053BDB42FBB04C4BD297A0A75BA4FFF24A0989430E895989631C46B7C5009F9E31559DCBC8C53D450053DA4FCBA47E7B6667F20C5C0668EB00420C34FF6E567164819602B23917F078E40D5FB53F4453348E9A533AE2D549C6E747F8D99B446BDC325B189C8AA3ED930A8AF4E2C5424C9A800E40776995BB2CA5954790C373AFBDF21E9DEB1599590B2D89D40FA48B3B45E98124D5993582EB1AD6B463587A930782A001E1AA0797C2E0954BA07521D3FA597404B6B31946EC6F533A6AD5A7F20C8A5A01710502B3587D94F59ADF2B6A6AA9B7C429EEFCF411D46C147774D624B80CECBDFDB6DCB1B107CCA646E9FC9E043DFA6A931EE4C204A2FB5D1EDB9459F8C51BB95477B1C050D588B2E1860ED2A772B9B1685B9FECC2BEBD7611DA9709E6CBDDDAEC559D3BCB292E2B105C117DF490321A7168EA436D952659B57BDDF9D4F1EF0A416393E4AF6395391B2935D8DB34A4BA8551059FAF669170450D25D645AED9213554623AE5B2355E82DC093AA6FD13D6727F813C8C3C2F59ED017BD84C745EE973E4DB47B4164DCA9C93A27F019458A1B8694A86A5A95CCDB0C611EA206DAA3000A462C53761385AE4DB72F3FD95BFE1EBB5610285975FC4FF22EFD172BD2EFB94D5DBCD79EF47A8122EEA9C2458A448E18079451ECA8B142AAC0CE171257FBE260DD9354B53BFE21909BB1DCAC7818B01524C2FAEB5208D525B109EEB344CA766F580C22E1CF2CF6809DE5B070605AE8D336907220FC626EE1C46615B4DE6E0C755CDCB4EB6FE3D8C41FBBB696DCBBF5DB5F0DDDD1DB5FC88384240C450949621D07D75BB42A5E54EAF2075E2B69FB201FD9E6A36CEA7F464D3BA128E0196D9921F2DEE5D18C42BE4B00DD1C8B43C7E73CED703181FF44019EDBF94AA2CF0C7899CD0E015DA31B34747BBFAA9B39FDA0EFB7A3BC911800D4D3360E16C8F532322C26B135A2A513158B2AF9E6EEEEBAD0C8BB41A311BB555D2E9849818A50B40B91151C856E612803A623170BD15994644DDFD6C6772E4F59727EE363886E570E0D575A58C7BE3E8BEF5AFCAC19C0778D34CF8ECFF4C7D8F376A4EC4FA8408EE4A3A9A1A0DC4D62B09047B75CB901058737D16B450E2326A5C4A42CC0DBAEE597E0EFC358E6537FBE355018F06A84E952DF3AEDC37B988E59BBEDC7BE9BE9488BE76C2EBEB2A768A0214D93A4242CF187D29BA56D428F467283A1CE9A097A3DAD35CC112ECC55CBCC47B68ADED81A8E59D936CFB5D2BCBED0DF5EBE71AC8186B43329D4B5DA22A2B1CAA231ABFFEF7106E983B3FF46D76AE5D125EF9DDFB9CE3055BDB262055089081AB171D7508E583972EC1967736AC25CBFB3160649B7F70CD3A9E838FEDD19B40B8A384E31D15D502AFCA51A12B7FA4766DE6E03E94D0303D3FBE01B281B73B4E3EA7E49D80BC51BE200496FEC8D8D7B0C6B7A81D0B57621694E50B351016B3FD9A9457923A69F9E72CB665E6F68B662337C5BF2E9657053E95ACCA75BCA0A70AE0521002BB1612A4069032E8B96DE0E7173AC663B3E6DBB1C34CC23499E53461295D22B5F8CB63FE4705501BCFFBDDCE93C89DE46F63622A58265FA82B897A3660084598E5257D308F71EC433993BD15E72B6165EB686C646E84CBFED0D76AA35C4F700E5152D8516C3E34EB0390C5E271C62BB0A1480714EED5E0318E03A21E6C95F3A10895C286AD3E022F84A6424FA1A308BA4A8C7EED9122D0961AFF1ABB62B885011B2293A4C2411268787B3FD811460966EAEEB6BF5D1041898E5C3C311DE805DBEB6DD4A5D25C5C9D7D9F3033E4B7AA0737A97BE01529CB66D267C35E60531656A96023DB1CAAE6E6530D2588468CFBDD8ED8A2D847FDC20BC1767EEEE573B1A4D51F749F79E6FB6C54FB5EEC33D35A893B5E7B3801D95173740E0CC3A0C546FD6965DD6453824DDA66212845FA7C0FFF9ECA2AF4251D1217C689AEACF223952658EEEDEE486B4A61BD20330E683FF6A268D99E5FEAC2210E3A848FB2363B7C3A39B1FF87C9264A782F87189272060112904A263B8661FCE97361F4B018E621FC880249087121AC246C0863DA8C97506D4DA6A6DD5BB69769E1D1FC1905BF2403A2537816042FAC315553C1A74A206B557F7073A3213334907E098D0735591DF1C241CF859E4BF445547BF5594F94520F384D14EC9C19FAF88EA47B7D3984D02903A75F84B7FE4D9F9E88FB9577ADCC0B37E7D21A14999680E112D7092C04152C975FADC3F95637AF4FEEB2B5A22DD34853999AB275C1DB0A775FAF99067368B68C7205AF837E6DF0B21D98860324BDD43DB809A02E5647BC6E7371FC04718A765A3AA6DC08078D9FC7DC87C129E2D1D4FD0F19455535CD8F50DC04F5E99EDFE794045A9F799517DB92D615C14A11705EC5762EAD8EDFD80714FC53E0CE5C89D7EA88C71AF06317B86885289BE701EA5047A6333236134806967A979E371892192B18922076092BDD5E3345D657CA31A387C14E045558AD836557195A3A2759BA2FDB03AC3F4144325BB092321DA39A0DDE7C1B6AE2375EF51BF69003205A7A744330873AF8BB64FBDE9BE94BB082763A6397B7B24D09127A1232839E28E2C9F9EC5BF0C51AE36395480B7C88BF6614FA7C40CB3C3F4CB94128AC8F3A25E71BD4770E62EED7EE3A70CAD2175E3D96C9BE4D6E6D3D8DC0209C95DFA0606E1316D42EB11EEE5F1045DD1AA8F64848292BED58C6A0F7AE7D078791AE6297E63824494C67D3601143801F76C3D3D42E710A1E13BAC8588BEF65B72286E0EC407D36917FB934609D50596E5E0B9982E54BA73D0E21E5C2DB87B015BD94B1F2D58DD7F7CCAE60D5C86BB11669D11D88EA87C620C110329113465A23C24C60234D91EC3B574EB8A40F2BD8CE2E1E2843A07AF7BCA399CC978F0A91A57B0B5AD3BCC2CCFA186F737D8654A3B447D78857F6EC0EDD4F5D78AD1375BFE66AE0CFBD0C1F66AFC0D60FAA1D3AE91B0A3D5D5F704EEF71A5514D7068EFEF9464C5CE50302CEC97EBD190128674205F9437E7CCD1FE2A3A4D592EC5CD47F9A2EE3C89D4549DEC992E672CDBAA3AAD8BE75C9A3655AB0D8A9E910EC4605D20EDBF8C9BF6455F9B6E2E2C3318404A0D90EC5FB0D3506E7F65A6C3C1F68EA0C7FE434EC3D98BFD63996F5559953A556FEDE4CC85E6303D0DD70235870AD7DAE0E6D4EECD5531C897F2F6F21DC8C81A705FD6496E2154278037B14FCE86EF2157EBA4CC61FD1B44071159FC2310CDE9643569B1AB821070EAD4A79D27B1A5B793050B6E3FC9213F1614478447ACAAE2929426296A22BEAE796FB60A3585A6DA75B5A95C641CA7F67D5D45B72FCB176951EA1B67F15670787A25F53A6FC7D3A7150F769DB39E55746BE786A0429AE966904525FB2870CEC4C16D06D9069E1854FBF98CBDF1903A5EDAF96641AFF422A95CF75436D7B96BB955891779628992F30E063E40B5C4FA48792A35FD5AA1D90031F5F622F103EDF43FED0A447F27676AC07460F2A5CA3B93D6E2365095BD055DFFE1AB7023267AF5CEF70F30B27E29A6EDD32A8AD6E355A4391A99474577AFF288AE55BCF8D897266FA03155872BC47E7944FEDA3616468AAEF5F2DD02A1EBCD0B94654C258FAFB55D4DB0390664ECCE96C817F0B10FED5246076B00BE0F418D4DCD9953FD58A18D367D6ED3FB4243C0C127CFFF6EA9C1525663F99879F34AB639251F81619315BF3774D3044973B7EE1EBB456913B8CDBD48D80877771EB9F44C72FD9754B90F877E0A3C491D77AE58").unwrap(); assert_eq!(sig_act.len(), sig_exp.len()); assert_eq!(sig_act, *sig_exp); let result = pk._test_only_raw_verify(&m, &sig_act).unwrap(); assert!(result, "Signature did not verify!"); } #[test] #[allow(deprecated)] fn vector_slh_dsa_shake_256s() { use fips205::slh_dsa_shake_256s::KG; let m = decode("D81C4D8D734FCBFBEADE3D3F8A039FAA2A2C9957E835AD55B22E75BF57BB556AC8").unwrap(); let mut rnd = TestRng::new(); let sk_seed = "7C9935A0B07694AA0C6D10E4DB6B1ADD2FD81A25CCB148032DCD739936737F2D"; let sk_prf = "B505D7CFAD1B497499323C8686325E4792F267AAFA3F87CA60D01CB54F29202A"; let pk_seed = "3E784CCB7EBCDCFD45542B7F6AF778742E0F4479175084AA488B3B74340678AA"; let opt_rand = "EE716762C15E3B72AA7650A63B9A510040B03C0FE70475C0463BBC45A0BA5B79"; rnd.push(&decode(opt_rand).unwrap()); rnd.push(&decode(pk_seed).unwrap()); rnd.push(&decode(sk_prf).unwrap()); rnd.push(&decode(sk_seed).unwrap()); let (pk, sk) = KG::try_keygen_with_rng(&mut rnd).unwrap(); let sig_act = sk._test_only_raw_sign(&mut rnd, &m, true).unwrap(); let sig_exp = decode("60F74DB4F30C2224DDDE29F0F2A2505E8F689B3E82963B818C79484A58DF44348873BA7E88C71F7305CF5F5577B0FECF60E99F79ECD8D4533B9391942C40C37A76B68641C094316F3A9E8105AD59F5DB4E9C50C8DC0E8D708B7445AC0CFD237B7D186CAF84D9FDC90348F08B7D28306D1ABD77E3E0C286A3B7FF17E772FB99366D7F370500389BFD9F7AE1345BDA21D45B12FCDE4CF7D76A111A56B450AD7ABC2E33ECCBED39C91F8757D1C7F22FC2D97FC773B8378D52B356D96FC171B3DE0D474445820A069AE8E08B8895AD30E748B3E6B794394A8DF2D58904F32DCCC042754769A611CC9D809FDB9EE513E32D8A9799EB3183F56B51AB390AD39BAC8CF4CB39B4B503CC0946FFA6B8B838FBBDD9D668CD9054023EFAED212ED6E8B26DBDCBC66A7F2C05B5285F926EAC556FE107B4374EE6B45195450E00455152FD3E4CAF2535E545BBA5439124C3A46C11ED363A0409933780DD39A52B1F77F651919EF70937129297B2378CD964E5D7D5624D1DDE6CCD6261D1AEAA0B197472FB546015EAAC944774EAF02C35E2916D54EFB90BD50EE30E3F5658271F63813BAF91C2E62CEB67CD75BB8EB6E45C353479C695E051094752EF85B795A2E4F43D86B6E590F9A15C05A83941084650C4E9476B8A57D81BC3B17DB8C10385D34C13E9176604B088B165598BAD6FD28B36DAA330B0528DC56BCE46883F85660BED6E986D1A30B059A116191658D26A77C876C73500E1EF3684B0DC3F2E9FDB05D44D607D4B0F37380413B226983EB837C8C0DE723D67A0E2B6537C424A0CE8E251C12B220141534C08A330D405F2F3473AA88C2B55D7F0F15AF955370EFC152BE419E153F858210F838B32F9AE6B93A19B6BBE092F921ACA557211912D9A3348E2D1DCB64FE15A3951609D9AC71D7ED1B033921EA2F5F3B272772C222691D3B5D145E0E7F4C2B207BABDDC6F1D859F957C9018F85408E3FB6247FC20D73F9DEE5187E5D5D2F4572C3BE9388232DE7848F59CD4E0A4CFF4D92EC8C9FC9C600237EB27602F2449D1AD4E84C8559957478F9A88724B1ABB1A13B63DCCF168BDA3FBDFAF463906D06F902B4B561837604624060C5F0FE41B1DA51B0C6C25CA5F477E9E2692BB1F110D89A28BBAE324A2B592895E26742A11F0C4FD219CA16086CFDEF9EB7F5CC62AA68FA089A10D25BBBEBDD9B1621289CF85A7EAE40D9C96F86C179B5BC2BE3853397B9C5D51506DA5D17128A3CB72F184BBCB1685B769690AB8B0E43BD2D62F3A28BE1D9457463436BE7FFFBC769EA19E7FCF760BE345D5AB9F615A5AC0C95741E20DE82D512432E71F9DDA258B5B22943616B391A87CBBE7ED9D96A4A88914D5F536C326A0C6288D3F7E2E9F791FF26A46F1DC02A9A42E01D0EE7FA946F49B277FE6748632230752EE49C7E5FD05E830FC47857652E8FA75044D3DB3D64CEA80075334638FA5215B7DDD946D9DEFFC81DB73A0BC7C240E158F2BF578EE487F5D3835C350691E7AB8E3721D8BD46300388B24E576503319ADD07E0C3DF7E911C5FD2115DD2D58A1E02A2C60D7F3BEF391518AFF2B2EA29796B72946F21BA5CADB180825DEA5C04E49B9A68CF282353775ED1023DCCD555752DB3497A6D986538C5A86190BE0D295E0CB33D59CDC1236D197A014AB7A2E71BC2177E129BFE429A5465EFFE132535A1C31AB7B04BE00C995E2228E0F7BF2EA0107E1112695A4CA52EA7C0293B21D9BF10295C39B5CB4EDDDBD88BE06E55FD5A8590D933AB6A2ACEDDFABCE07746E69888A9BBDDB7833281E95DD44C5E3B4B7EE2CFDAD036D04BF2CC5935B4D6F1FF70336538493CF058805AD4237878DA5CBC3F580CC53F3C366F90A443F9FBD1B1C9568D60C1EB55F6428F74DDB1684FC1C244DEB40D534C5732C529D105B66E8566D66A2180893B03B74D51DA8944CC05DB2C2DA447E87164899CC23F14E11610739EDDD993BD8C01CEFB266F4519FEF2696A2E040AC45766CD300C72B44058C4FCE79B34778D9DF476BF4F4272D851556AE941FE459AE094C6C675DB418D824A02C1121D4B53BBDB02B918EEF378303FA679371F4CE54272B676EFC8E1CC0766C3015E59DA72170CE7C35D8B23BB2458D259FA752AC9B5BB3C3B53A7701CAACCAD52573869695A110A1791F5E891E8A25C2ADA6E5A045FA20D97C6BAC257F306DBBDBCC853B7660A53C87B7A230FB8F5BB566D7E3ABB0C90DBA80E2B433843D831DD9697B5017457BB48480D72AFBD495339BDB937CBF62F5853542D2320997AB921E449AE5A2FF143582B80EBAC72DB6BB5BE5A066FD824940049893600FB62B20D1089F6204CAE00614A96E639348BB6744F62CDB366395DD1859CC0BAEEBD3747DE4066C547E8CDA5E47B9741B4AA70E7060BC2DD69547A6E472DFCEBBB65D82C3E0176CBC2000723B50BDC7F1726D74FC19FE3B9BF2581515306D52D4A52B7B0F0AB8F7BBE0959A321C7E0747F906A3662F51753269970B138EB86B8B33398FE1034DBDA2D3D7188974B556DFB389F499D57559FACD1BE12809350618F418444C389181732D7006D4725A4E9F850219F34FABFB7EA3C020BF5E75844677EEC8BC47689354F5D1E20827CF81C65E2F256D55E5C28C5DC84A6882349440E453AA749D408DC8ABB978F41869F2600FEB249520E732823B2D5357D609167934D4DAE2C7C3E817E6551E62E9B627CCECB0D116D293769495A82EFA9A77399895C5564BABEC2E37ADDAEEE1F8D3F05DE0F6E95F5BF556D17E042AB42AD7A5D4851CC32D1FFED7EBAF1E8EB89F1DDAABA740FE6D3D1A9CBF57D5D66EB0A287302245696B01D8ABE92C0744794666C58ECDDF50753AFF8FE4044878418D9697D9CD9962611788698597B8058C2F85FC7BFDBF839825AFB5A2A396C7D1D8E5E040A124AB4408AA43CC2ECF336DA062D08BD114B28275BEE6B9BAE31A25A4776AF9A3852BE8F25385A1B2AE99D26D4F5D5183566800C7912726FCDE0D3306BE83C21DAC4A1820BA5D5E9D55980463ED17FF0AFBA4082DE8F0959B7C41E7928F89239935F8941863BB85669906F8B8458BB71DA622143BEA2AB692FA24CBCEBDD533881727E2360C8659BA07490259B39D5C838FFE558895DA52F8427946B377E7569D781966E5F322F58AD1FB512DC566BD6375BB837DD087573E1A706C94DAC91F352BA8B0FFBE5AAB0C322F9D793AB50B15C938B87B1EDD5D853A90430496673CB41DFD127DB01F6A78DFB52922B8702531DE91758AD45BDBDFF3718BA313A827DF508A6A4FDB2BDD60A611E128ACE4A32D2411236212F9460577AF3CFBDC4DE7501E189DFC1F78B67D66433A808A6234A5C4B105BD5FF3351E30919604B21E1227F024C34ECEAFF6292AE3EA6197E0F71E50EC7586AFF251876445EF21F06B4CFA804C26D8F7D456E73F32E9B6FEC002F14CD5A2CE2078E51B4B034A45BADF5218425EF3EC5E54163A537CE0FC42A6EE1FAAB42FD93FD143714F8981D3A858BF90F5451A5EADCA9B5F23C4B8C83BA85DAD845D735A59F064F51268C07EB14E24B1805C3DD080307922318B34A7B2934F8CD4279A242C4EE956E5BAB1CBB4CECA8A478DF558D019EA11AE376D6368E9B9676C23EE8F9A338AFCAC3502E0175BA1C22DD4A29F6730AEDB2A8551E2A1449699F22944933EE09B7AE96792AE0F8DBB4EF56E05D68C6422E1EEFE7299C15549949AEC3E4959DBF430E36EA526A63AF8E1C4C390877F53FA6B771C51D48E6E1534A9394FD45FF638072ED5C90FA51C3D289BDBA5276B896A55BAAF19D1E08BD4AD176875F6A99758C9A471A5AE424A6149B4210CDE9C4D21B961E8AAE34D2322D57D9F43C2EAA13DB34B48CA8C75A5D15949822F336684E6C9A6E2AA81D2EB74FA1C93803AB5CB85E05CBFB443F03EAF0D9B62DD7699AA6819C0D8404A478E471A5895523B91CBEFF6BDE405C6F7F5A544098E744BF6763D5FE4FA33073B45BD1282E90C2658384CE99DDFF414C485BECBD3F5C0394ABDACCE94F217C8C5A968C98986F55EC16C6E995452516576220A6713C9C454B163ED43D04355FFE0DC7D7E97E21040A9B4E3C1E49B4588D489E62237E7C7FD4CDD68FF211FE331C8BFCFD9A8D72B1777D4360CC293947B6DBFAE1135FE88E65E76FEED4E6703BAD9B044CDA31F4C748BC8A2679B02E1088FED63CD05BAB593AE56EEC68D1412C9E572E72CCF6106DCAF120FFE73AB6F7C5895E2DC1A1947DC8D04651C3F3A7AB104B68C9836756ACF7048F4ED6276525B796F2407410FBF2E8486080E7154D6E916906CC6F290C7B7D4B3E55BF0A2CBEDF8E1B084D99137FD744202873777DF269DC4A51560C4051E9732296C1356DE7B848E35E1A22ADAE1B53F2EDEB718AD3C5C890DFD54F98EDEB5690D07CB8D18A66651D2F760DB243B5B01ADC51B47D04A4B948A450137C1283CC1B80AD6D3B6BDA17B71A54FFAEDE36E26CB8C6B2F9514806F291590C7E1F185DB199A7226115A07DF14DD104087CEBE7A752FF836871AB6CB2F1A62626DF703A35763D7301A3652147FD777AB7E79C014EDBA8F5D91390FA40804FA947B2F6E48BDFA1A0EC8BEE0985C67B216507DC1563923CF7F49808BA6F07C9A9F51B876ADAA84BB6DD3E9FC79E87F0F7C31AC9E19503FF7CAF330E02CF554D3A62C7D3D8B582DF7CB8853D0F09E36501784E1EE469D87FE30A9C238524FFD38F7C9CDA54E9397EACC157B6F61757DB6845B5CB3054628CA3DFE5D53964CA2DD9042E7F75F142652B31FCA3D3DA19C4AA082D1850DF21C2726C407A8042A34F006AA6D19831CD4FC4D58882389CB906B3F7650C96F814E1B54DF0FE6E609A9ED311EF5946B54B894DBA0627560A9431A113A3FF00D37C93ABA7E9DA82C5D0197739F936B4C74DABAFE4AC92AE9971D0E126E14B96ED0919971B7220BA23920A2345A5915784885396863D0D5776CA1E776388CCCAC6A0AADA47C5C2B8835177A867F9D90757497D99FAB440EB7766DAD3BA734471080C9CDB3628E482CD377472AD069E5E0495BE3233772B83AAFE3C26324E2E44B4A2CE5271940B48E5FBA11494CEC6C0540E7919AFB7AB32C6C16BD0718C73DB7AC4F8E75827CD402B4A0499130A731AFC2884E7803054EEE3F70D3CF5004408F94E4840C9FE6F3BDE1093D32E286AF6F6E8500914F97654ADA0E8325F6C9DAC07D503BF0DA7CDFA7CA6AFBB48DDED22A157E275B58318AC87EC0F1219AE5365737B3D9C31E7C72A945D0E352651DC8C079953C65920E711E19222776F6CE2426E897E9576B826AC706D6BE4C7E125C3270AB67744E42D38AE2CE4678F35B851BC0B11F7C403E1D89924BBB0B8813A41EEBF82CFD3958C27424C1835CD6C9576EA5F60707EA871FE8AE1B5BD0C818AC2CEA001A824C6831110EECA8CE33A557A31FF1BF51634DBAF410A17976376C300E2216125E2F7E6B7D8CE1A37B180127CAED0AD9893355DC18BA462F0DDE8F60E259C3B0C6EA7A79C248F149738B1F1ABA2D6D7EBDF6024B0D2B9A524BB46B6FF7D8112F47F85F9B780F63EAC27210B31D02B0EB54EF1DCAE3BAE4BE32A5FC757DCDFB366A0809D45D8DCA327E1FF0C3F1A619C802F52984DE9DC85F110418A411909793F05012AD3A77AC246EDC556AA4E2B835D7777B426F43AB37A9049E4BE2618A2C177F6340DA438896B24B166C2261066E5302913EF46826DE8F7F1716AE6B663A12F314FBCACA755F3482141F7AA6537255B30965C75926A4ACFA51D51A486FAC6DE91B9653A40AB80FAB74659BC55DBB5CD78B2F96F95BB21B42126996D1B00D2330105852059622B94C40046F57DD15450EFD36F112EB26C7C54DC9D6F51B60EFD66A574A5D31ECCC2DEDC9857B6875CA2E039636A62F539F8F977495CE249ED19989F94C0B982FB6EB580865C1ABC9B6D0D8916A602543767DEF1FE694629E919F0B5735FE46D11AEEB4CE53742D3CC29C8D2D6AD15E08C081A75B0EF323637D53DA8E4FBCA5D0E7358991F779FC8F249FDB72D1E076C3831AB5173A53A35A9E1E363B5953822C558165A7591EA1147A8214CCB3D9CA4BF13933EADFAA06F99722A4278F3049775D374B662713F3D12EEFB358185B90FA69BC8085B8DB545E32C5BF25BD3625738BC118A78A55FCC77120C27DEF6960E0DD2F9BDC07AE9E1A800FF25E461124AAA20BFA222DBD605D3CBB1689C323E7F31554576CD49A141ABA6613EB7FAE13166BF9DFD2382848CD65C00715C78D0A433A3CF09095EF768E54DCD71A29C339DD9DE6DEDF915A88EF448CF795384678FA69455E0E9CC2820EE21002615E95B6BC5A9C4D87B0D8DB8D4644202090758ABE38AB0640F8A21B0BE99533156699B8792DF3B7E886AB12CAAF6CF1C90031A941E9EEEBAAA4B0CA81CFAD1649839028DC688F533F69256B5FBEEC103BBD07BE3C9C36ECDD11DAFE2B8A4AE3CC0EC0CD8E0F826B5810F241823DB05E794ED5CDF443ABDEA0C015EAA6C3CCC2C5024DE1AB7FDD79C360F2A5A7428F7DF722DE8634BF195B1E977B559F763A6987B0534D8284092EA8317B98B6406C32BC5FBD5E90F1B3FBD81D8056B34AD8DA8AC5C4F51EEAF10A996F93C6C11F1129F63AC9353041729BD94AB685FD7D292BDC057F9E26E23C5760A3C92AC51B0D7D12DAD4ABBBF291CA46429B985284C2EFB42FCC48A89F9949352ECA5BF5F71898080297C82573C21BBCABC1951A6537FA14494409CCC184996AD3476BAED7D2E27EAD12968977B32A97F51656D265F70EC380082A569014EC89627F99B48F37FC661EFC3BABD8505D04F8CF4A3064EA518B9A41809C123CFB22C2BE73C042D6FFBCFA4CD8CE27397900BFAF43FDC5DCEBEB833931A104BCA661E93E76EA15CAC6F8CAFC03EA76E29B29723EDCC975F2CA8598F8E2C8AFDDF85586F13C4657725BB4C8E6607304BF03C9E267A99363D0874FADFE22048FF686E0B4CA872A9149A97175036C79B4BD0AB83E3D7DD2A77A4AD7EFB33AC839929D48738C5F1485259CFFAE62C8E92C0C6077FB25B8B3FDA7126B2791F27C0CFC8B69C72C97733E4B7460B6DF0E5F84926398C4EFD2E024B1C3151458A5DE0E1CFF2FF1C2BAF566DAFC2F183FB1D2741188FE15F07D652DC3AF4229E650315249C5BB45C6A36412FE932AF15D8EF8923573CA975CFE57146EDC853715548F28E6707327E732BF67991689DB84A9BE53339A28EB83122EED93E8BD2B6112AC178F19FE013F2C5CFA45EF76A1E7B95AADC0D830205D195180D1D5EA96AD689A4DBC0C05584DB3FA276CD682C501FFFC83B93BCD0C6FCA5E11E4B56CC6F727FEAE8BABEFB8C07A7062B1A9FF93FD57394460EFF42AD7C2F0CAB3805D32F9ED5F9A5378F03EDC66673384A1F9006F20A93C3D30CE0578CC5369C80B43C1D6722310B55557B640A02C7A57A8D5B1C3EB4846DE961C0D72DAA632AEA78CC74944321FAA2B77533FA9F800BF243000C9599FF92FA6D3D412C1071A02C28EF7B3D0C01596F3FBB5FED90BF24662524547BA9295BCC04510A788B2481DFE3CAD284435E1046DC3E7DB99C302CB6680AA9541EC4A718AF6AA8316F96693517F9FAB79453B1318FE99C2C00533D6343983A15CFC2D6FB161F17A5B2ECF2715D24777B76B02C0F974782F26EF40885781158D9892E2A15AB9D12C55DDC8063FBB42BE749B5F324FAEEFCAB138DC2062A20A8AB2162AEA397F62B37301A970BAC1573F90E5148999201DDDCB5148BEEE7AF6CE14C80ABF2E3CD2432C0A4F3B8224099672AB191D9AA38E90FE6F78079365780B238B06BD78A5D353E824B838ED89AAFC2ECD492CEA3BFD6F812854838386C4377013BC61EA1730149BF024C8742C4A13F5618C9C4FA746F44943F9B8130D2829374F1ACBC795DA7E89C82798124D7D5BDDC119FAF617DACC92B1B326109CD0E65F9F975D12DBD6A81D4882742919F6000E26A6F78D705FD638E11C52E6CDC890944C589FC7108C779925C5C8A9C314A35CB9321551B88F8B3662193B7EEB18EF5B32682D0DEF3706C30C86158F7506E3879CCFCEB45076D58A3691E33A2E24511CE849B9EB3D18CC613242F660DEC5CCFD6F3D7E4DFCA135A8D88A25255641E90E6B38F22E6EC8E7668997925B75FC70953CDD0765854DEBA667BBBFAC101DE0E41072AF5108FC07FF4757C325B98262FC8E9EADB7A8E7FD78559E5CFF6BF524292F9BE5CFA2C2D1C4C05B12FC45C4F415A50464A6E08A9E8217BE9CFF2599C89896481BF747D72D29B7E6912E25C4E520B23B6E43BF4BA8E4EDC06680D2CFB88CDB1E33128F28B71B9F5ECCDFE4A6411C4D4AA3C57C07956CDD38FD56F8420DB2214CCC1477E3C2BDAA9CD906A312A5269059810D9435B8923D3FA89A20C7074A8F68678BDE277254930EA819F252006E1B0CB60432A165E965AE172144CFC8DF2AD37BDF6B2A28BA79A4E8F843C4F99F07506379F5A4CD17E68950AEF372AA358E4CDFC2F18BD1B962464564EF875A2555D0B2F3B6196ACC0E1F113D9567312BA785655BCE2C50DB3A894CDB3F1E3DA4453FE9B7100DFC2EA0D65B5336E1B4D7C71F458977DE0A4C77266845BD2C2B508D5C8C86050381F56E70D7714351CCBE82992E9CBF569C320889451687DA178481A72A3C09C15809DAF5B79530310B53D2BC577288461C5654E2142758496E2DD22AF49B52A25BCBC93023B0963F0E2302C1024209F7282F6D90AB4C2B1552A874BA60F84791C976DB976CA833238704F6A1091EADC3F1F5A4C5C2B9013EC6E8BBF3FB1FF7194E11612D3EDB0C7A24DAC6C4BB7CF60B281900771A46C759BAA7D5D304FA86C4C737F30C8939F10BC0EED35459AEE077D6DBABE0BAE667EE7EEF7862EA66626BF8DAA6FF9B2649CA428F8D3A8E17E75AB25F388749AC2C1E84D2810136FD3A63B43E9ABC9EC2F1D2123C49FCF6A3C12EA13B5095C732CAAC9BE6956DD2631DBD30CA839612A5A143234E35D7D1894536814EA462619D1956198526C19398876D8B3EB12AB623BE7E986CC4542BCB863D304CBCF3B9D8A924DD84588CF9F2D1E2B449703BE5621C5DD6D80EF13BCD7C6D3946EBD2FECED35710E946BC5BDCC7EE6A58A432379C801AAD3CBF6299568C5E3A0BF124235B0C0C8CD8C06A826BC5DBCA447CF00730F93EC0FC4555F55A6C01B3A131DFE8C577D7B55856940F5BFF3EDE4AAB7B74C4070F0365F7506D186E9F63BD271ECF1E97AC7721A437E0B5B0002EDFFF9B8AFC690EE45E5DE51ED5FA40356E3F86E9EFC6B374C2BD583C6B02C1EF81B88E6A27D68E551C6ADC0C1215986FF3DF1D8C407A8F2EEAEFA0B89F7CEEBCA622605D1FF586A2372D767A7501047CA8D9CFE2BCD14CF4FA2AFA0739C0335377088954BF4A40F6C75932A3D4B6FEC1571B61774FFB2F7BCC4EED39C1CC8981ECCB155EB8B3CC4D0D03C560A8A6286C52BEB319C4C6C1321706479638774129D682BA480677610E08BC2D9824BA8CA08330AF91FDCB9755CD8BAFB12F0FE3062855D315096DBDF2EA6FD3541BDD4997B8B8BB3F2C3BD766BA5029B487D5332D165A5E519E276FB22F8E0CC79669B88EFF348C2DBB88DC2B07A669D29401834531284A8D0401EC6D5634DF99773B52D5AA14EF2C039149CF7243BC54FDB66C4ADDBEEA4EA192B807C4CC0CAA4E8B1D351A272F67CFCC2DCA7D5BD8F31ADC2043AFA63E81CAEA6B98AFE3D765625122F477B443C6E48DD79D0FA76446ECDE8B08AD39E13744EC9309948EA1B4BA4348A62A2241B21A32AE52F2E9D19DAC298C8594F983B50A202F8FC53EE274F88129B0D357D48D70D11429BAD5AD7C2DC4F6F8E272EED04DA28D7FF88AEC3C6A10596D00790AA1C564B8F85005F3FF515F05D88961D8D44D6FA6CF39968114B7DD95524EF2E3ED883423C5BBBAA9CD1A04D4BC8CF06C8883A27B7E8ABAD1CFD49A10BE71883E8DED8C3BC2DDF4A7B95F53B2EDCAAE2EF8401776562266F7A8A916CA54B08C51F459603CCB466A31D4BF5CC8AD1B2E9338EAE0E0B2BB6DD97F502C8428626C24CC5600D61825008A0115F158BE6A8BC33DED8AAEA38862DB87E42912EADFFE5248F9BDD86999835EBB5D567AD917420D06C1EEEBC26E156FDB54BBAD1C0573C6F72296F75463B238A530197033348485223478DB3135446DE4E19639A9D29F567B21AE0CC7C83DAB9122171D34AE6F9799D8CBE7DE218317E7815E5A778E14E24688BD3C69066908505DDE1CE360550DC17B25AB3FA25A60614968394AF6F0CA34C152D6417AE9689FF5C593B4CEF45156799697878EC0ACA6728A3EEE6CD1B419DFA79950C9F56E169D078361DE26C690AE716079D83D4E79095DE68CE95643EC8AEBBEBF4C1EBBD8C410D01DDAEC2FC23722B32886B389BACFF7897C7092C26DBC9CAC7F7260A37CA6B7147219FEB719252FDF2A5C3F9085CE5674F675CB9BF5F40E7467DDB541F32470458C92274CC23D30C3ED7975482082122956DB14DE545B32FFC5BC874608C7FE1405BE71B98B0B710E9F204C1FEA2A212ED9A1FE73D66A35BF053F888045704E30C728A1D2A3A979084AAA9EB8C042AF177DA06E6B4F2238900BB52E8D571A069D8C6BB24B0D49C03997DF1925A89EB98D116AF967F1EAA04BE6A32969742EF37D07D974C9968E057DF07AA022776E333F461B3F34D6B6B00729EA3936150F12C419C892AAB6B50DC1AD28EC83CD52C9D1BC9BC864B674F59378A7F30A971C799CCD7645968E390A82529D19E0E50039667D6B7309F9390AFCABC22B178EF4A40746BAED41EFC13795AEFD52775131BDA8E9D94D39DA93898EB8FB09B903C28BC3F1CBE910101CD7EECADC8B5D60F4AE1C0DA9795AACDAA15149F69821C6FD8B7F324C65A081646353238CE77531421A06C06DB14BDE67B73D4894A19D8538D320AC00FEC7E13FBE42F5BDF0E00CFD21F9EA7684714585145E3EE11E8AA8477CD5F9D04787808DB607D3DFD08FD6641F9CF1CB9A48F7DA3284CB5D714E237FE94AE62E3DB6DFE01686537BAEF3E449F862780975431E85BF1B05385A1B29CFBC2DB15132331D42F30FDBB16F4CBD2DC190DA1829FC2FB7061E8B72AC3568667128B0DEC71C0EEE39217E432C3386CCC1945885EDFBDF888C1CF02AECF0C35AD96AA0D0244784E135590A8511E637E9C224CEF4D615A4042A953F5ED57D478E771E952B966796D809BFF1D493F8435D171A7B954BDAD4144AB5E5347DF415A2AEAAAC13325F8E285B8D1A5B1CADD89A6E3BE106F68ADD3D92A69D71D229D73D3FE9E99503FECC32F0B3C7524B72F27A5C6BAADBB9FAEFA2605645FA74B9396AA4F71C270EC030F080C6CB80BC817746D5285BEEBCB76E61A46ACD2C1DDF153AB2C1229FC0B3DC2D4787EB2836CFCE6273501CBF5F0FD4E4F1074FFBA5F1220A36FBF357DC0E9554679B7C0620EA9B3CF52B1EDC92AB6FAC5862F4AA652DF6D61659BF28D3613F0555CA639A6560C7FC53466F4A7762BB2CB1970B83047A906376BAE6CCD0AA7E3B2326E6D02D56BED11AD054AC3C37A66DDE5E90B731812C3FD25691A74CBFA3518FCA88978EC4246B92472A6701E7D29CDB7B5E70D1677D6DF55B462D9FBEA7D4F0D7F8F255A9C0ED744771F1BAA95D5082C634E1C12344C0FB605C31120E2E6C66D02233C7CC1003636BD025B959CCD746632FDC9D9B19272FF4EDA185E79C3C780DACC1C0429F59088F8482637C11793344EEEF1DE37B7A9B7F960A33FAA40D0125E9577E592E22B81CC8FDCB5EF3CDE2863D20555AF9B10A335AED9298F3D8C4F53BC23C589C26B33EC27DD43A707BBD4CC6B987C5E74B75B22A2512771E3E9669292570B7AEB173F5AB437BE76D7EBC855DB5A24B9F8F588D41FA45FA92D8A0110FE7E03ABA895D72077E52CA5D112D43036AA9D21284B95B173531D34B95914CB62282007595F012E7954EE86DC8A2EDDB94F6EBD963EE53F962A80D2C012143954564A1F36EEFAC43F823F486284C5FDE5C40738C4E69C5B98A3E2F53B1B522E89A5BC718C4DDF7FEC892D2CCDE862FF9156082600009164C5C5DD7D87FDD49B84B6022F8E1398601A9624404855E7D0E2C3AD53FD79EABF4B4DDED0351C038F66675156E54932E3AACEBBBC7B3A82D82831CDF42FDAA75059EB21323F8E818F77DA5DDA1AB34AA9B583D5F3759D36211E340DA5540E129AFC4030CEDCE6BF8DA86EF2D3C632F4C0514244FE73DDDCCB5476893D8FBA189741136E2FDCF480E0C4A68A5B7429D1CA673FD3383480095E4BC18A14064172AD587C25C4058570D3941F83B524A65E19125A36FF08170E209100B72CED6CF321B37AC41FF29F7B4BC0262F0CCB75315F93328531A0E41B700008B1EF217F0645D488652FC07E55BE23AF0E186DC0291263B10F5B4D9FFCCBD40108F2FEC62EAB0F2335A77A612A6D1ECE508C5EF58DD7E8AFF797D6EDC7468D41DCC3E198B9BD7CAADA836DCB8DC801B0ADD95F7658F02EDDB095FB6D040E86F250CB5D104AB9F6C8BB94F2A0553A55D637CA1829531C0F8BBC40B1C884D1E023D4E4235B7A394F2AC1658793733344394CD589E09EADCFAB3493C08E625994BA92C3D5DB131AC22DBD4A95CE2095C9AC4539923BD9DD4DEEDB84894454ACBCA1E1F44295FB24E4B9FC6181A7B4DA41F572A9E1B9AA49E17186EDE5ABA30DF41E48899CFE1DB16E70E21F846E9FD1C0567C2B0E838E1E2D100F392A265269F83A948BDF1B6C736A641E4193E4D4D586772CB34F3B48EE7F09243F8EB94EF2E085F46D8D6A8E57521C7802F1C9D7CB839F12A9526F23D874052648DF6B06E3AFAC6B3BDD19246109D96D97CB7970D87B5EBFEC81C033A0F5FC5B69C7E218D9164BDE92C26ED077D6DB00288615608684F47EC57CB1FA6D33AB8D7DD30A9A1D401C8643D700AAAC9C78ECBE6DA254E3EDFEEC370B224FB2F116B4D060C6AC47F1BE03CB644971931D2A7261D2B882E8F6B0028A0AC751BFBBAA849585035C0C8E29427F01716F26FBB978BD19FD85D94699FE0ECAA1D8743E3A4C8ABD5F28F9AE214B9DD46F067C5A38F16F8AAAFDD21F81F971D0EFA33562806C80ACE7185F6EE689A7AE79322970879027FA397A33A4F5D16B2EE3ABADED0F5F141F16B3F14C7ACA2522F2DCAA3064C96C7620D0C5455F58DC6C8F105AE5A303D8107A4D6747086F9B9FCC8F9AF3A52920790D9DDF5694C16BBE1BD19659FBB55F321816FE62F5B9EAF982C60A2D98E1E843CC6836FA624BEB8041BFF749C24C7D22D8B29AA0D4BE5690157A7F8057F9311BA2C5156A60EB04E4DC87E593A20B9A764FE85B7A163C1FB5FF6E2D6A142CDCF55C1ECB20ADA1456FB00E35B5AE2B4D1348552861385C666D033286F18517AD820AF58E6D39B5E140AF7E19C1D329D5E7E585CB4705251DEA1D755A158D141AB7736A8E55C143BCC752AA704B239F8CD2832A479DE5719DC9C0C00CDD78D39EACCFECD5FBFAE9DE38806B4B484338D1354AE347B6F07B38211576A0751A7DC63F76F7A53942B1BE7E4F30C348D5D6676F19100B476AFEC30DDCFFB4E79D60B267F2A0C8A2B5AC000922DCFE8DED39A933846319334E67C338DD3C24EB7053FC5B2DF05940D964E3D66BAC0FDB5659999981312A12FCC3AB098F3336C92DCD10D9C7E8463F5B9AFF726E8245B995D1A1D3944E5BE7D0950B95FA722294AA6809CE8B8F4FC51BFA45E288BB237F92CDE97CA032F75EEB0BE6E28D666337756E954ED1940D9C5B7542F4744C37F9C914759F4D90F469B8A686A33309C7B1C1ED5179D5DDA21C6139B1C8D046870DA6E40B0912E3D0F8E6E274AB6402E9C3AEEAF2F1FB7E31918BE44E0D1BB04F2BDE40859FE3C0114F74C40015B68BD4F6B74A25C3980C0C890927B9668B72BC4C479313939EC3214D079FF852BD1A0ADF03DEAFF551F961124317DEAA3F613CD33444A5EDB472BC6D77E331004FCE860B0D306F5F506ED084B34BD7753821C3892356AACCAE655EB4E0BD4CA9F38A032C59529EF17A62B9E895D7613CA255AEB3EB407A5934A8AFFF6E76A1A67FF3F858148AB375257C84E9FE1B987C9D01A6F1D87A37156967C3FAAC17DA92FBCCB552B2E9C4D3C42CECC262E3A613E5613926FFD04EC86C6FD15215C2A0B48FB27AEFDDC552A9CBD70FA94A606A420F0699D47F8079ABBA17941CAE6F4783BF902A6F185C403CB8A3412EA4C91D5CFC2752B5695ECBFB02E2DF225F18B027F4CDBA607A58A5F5EF231BD88CBD37CFBEA50E701C82EE9DDACAE0EB3E363A8E81A899C703332F8B71E60F0AD7F62024E94E1FDB0D85C2667D825A2C544B141ED962B65E989060CB9C32F24A206B251C0446F75BF314F77962C05D4425024F041630EF804CE4909BC5C7B451B8D3222221C947D1F571DA19C43E67A30F99854E7B10D121BF009D63A2F7ECF432E23B40626200597DC892AC84692C1AB390214432C263AFACE222D6A45156A64F2DBF7EEE765FEE84E5B1B41D84B887FA4033EDD8022571A8CF8C9F31C731E1FA97ECC1FD7776EC8993603564315B5688329E913B58DCFCFA41019B9E64DDA5A5C50E5B4D37945AD494FC37519BD5B6191A006AFCEC21C6DFED1B3A505F7651E71A6899799F5C8B49CCA0A1033C7E65F07F0541E40A1BAA88CFE5306689E226C71EDF0271140A1A81C36EAA3E4EEB322CA8F1E9E1F10B8A1C279A39F746B102A5748CC77489C1FCC90C118892AB647DD7F9533C5A3081AA90EED565B0FE49F67532D7B16480B59D332A8AEF33783EEE171A1C917554039BCA35BEC6A5226CB0D0730C8997D276D7C0D06E03E2E96769BC97B3AF2961F612E2F62A1104BE8EA386086F69D0C6E17A0E73648BA959BC6FEC81A3EA8E83AD5A32547BD67A49FC8BB9D74BF5708822A61C306BDB23AEBEF4105FF6F49082A5CCAB2CD28229FC9CAD8D391271B6407FBA2B9A20444DF053DE0CD95231266491E821DAF05F7E542122B6EA4DABCB23E7020DC7040FE7FA55C7944F13648ECD5774822DFFA1221E56F74BD09A490A1E97C618FEEE6647901BC35A6C311BF32D866DDA4E8AB9693FDF35CDE8AF45B5C0A13B496C74AD24CFA5E751A28FAF602FC4D7639489B0DC3BFEBCBE183E55D4B3954287C18F94ABFBF6A7839FF0F5CE09DF634C218472318FB1F352290437A9629285297B8CDF880FEBD03BE374B605F3072848C6704C2E44DEF8584222D0248BF7745B782B319041520DBC81BA4B15DF643B5F01C543EBE09437F3A410C46373A0AAECC093620F85CE324CC9B8CE2AAE9E83CCBDEA8FD65AA549DF1BB3282543FBF4353AB47F40C2A216C3077DDF22AC0035E7D902B07789B4F6E0DAB8CAD230A651C167563FB9619B888028D5580C9E480EE866FBA85BEC131A8366D579C44C83F4C18847DA95CFA20D33A5689F39F46C8F74A9BCF4EC3AAC6C2E256726E0737CC92FCCF4B1244237F6B61D2379B033E550987BE50D530B706F6503C203DD2141AB821E912E73870C6F84CE05666F9735E3F1E6C6D739FEB36E196619A421EDE1D2328DC6F90714300EB6B240CB586456A1A197781E924066DCF518153058FD4504FB4DB7C536ECA4A8F5CD180A756606DEDBDE6FBC2964B28879B64781854CD169D738877F70C5111A680C0ED0036FC47E6B9D9A3AAE68ABF8DFD599CE1FB83ADF6CAB134B06AF0387AC98E691D60285FFB9C9C9420091577CD78B74496DA888D64A0D81C29387B44EC7A86F82A5617D1E4341AA596C86385E9507AFC610113579B30235925E07C71304660AE33FEB7F9FBFE87A77611F1D4A1593D038E01F2D49E950806C7461B4B97848FA8DF1EDF6B8086D0AFE655F77DBFB08C6C59694BCBC86CC3B0049BA530CAC4344C100D3F9C3BD2579A788AD466B7C0990F92769FEBE2CDF6E1814A2E0531145ACA86631D55262334B0D2A1E0C9A2E96061578E13592C8F882886051B29DAD74E365962DF02775C78C69510BDA6FE9A09B5274DD62E8AE28D3CCF5BC57B7E34784149567D8DF93DEF9909A17F2C69CE367952E554042191BB851079E69D2F09833151C8382E3F2ADD764560577CDFC0168E06C5EE3CBFA4B7D0A9268BB9B991A3F788AB4E799877B9B7556E854FD1CA6E8620A8ED0AD96B406B962243F925C36C9D7FA58D2E1441E1B88DC0435D90D2DAD32A3A0E8793C4F25605468CD2E88538AA42BBACDD459EB01BC32C501A667300A198877A94B79A74C54D3F854ABB2EB4E00553BA0818E03EAC9C896B5ED9E5780BAF0FCBF68C4462C028BEC7E0261993950BCF1250BE32A22C2B45656878D93344D6C8B78038140E45FEFF1925AB0E4160C006570609F7A170AE93D1F513F306517E760F05EA62B16E4C4E5A507BF0061518DC686F2B309903B7208BB654D829EA2B2B5D93A9AACACDE3EF23A8776DA8D4F3FE3996BBDA653C6728915775E3C9F672D773AF3D2B442565EA6172DC9FD8640A22FB2534807D3F516E47A96042D49C8DF79D8011A7D31884822FF1E471EC4B3220EC40CB9B8E8B83DF8A0A1D971F553DEE19CBD066AA66AC6B32990BFA86E8FAA0E64EC1FF54E641FC4B17C6552A3CF8357533A73FC6B60B3D05EF37E8E2CDB041896929358FD9B0408BBE6450F9EA15842E80FC2644ECD10F5F166AADE2977DCD98529C8F8B33D7575F2B0AEA540EFD2ACB9EC842A08850EBC60DA35662BBFA3E5592BB7F38BABC922FD3E7884816BA9F63EED10520CE171C60D015D9A5F7ECE9D4EC4F98015348E43933E0AF5ECA56012FC4B86632F9859B4B03E5B2095A46F6D96C00CA180F606FE1B441DEC3195F29AA10A3D1D7DA2A68950E8378F323753840F6CDB722778BACDB401AA33918FCF721BF89A685CD1180138684AABD7188945FD63E1F3A5424F1AA554DACCC2C38F0BBD7145C3E77D28F1F0FA0CD52B0449AD83097639772D449EDA9DA9C7DE5071ED64FA1391D7E6A4AEC49156C023BC65495EC4232635075F4AE4512412627D4C64F7F916CDD97176FEC9BD2C3515310DC977C85098C17288DC3434E6992ABD8FBC1E1AA36963EB54D86B165B77DEDC93D77FF9EE9381F20D17F96ADD14250AEE62AD101A598107E76C362C757CA85EC80E3F9EE20F62A1BF85449847E60582110FAC664236638FDDAA38CAAC2B2ACD3B9F688DA6E926BF62C15283F8B8080551C4BCD6F27E50B4C69DDFB9BA1E4CDC9D8333A87C994C164355B2BBD32BF728DEAC68C0BEE02830D7D51BD4B0BFDCA3014175886BC2BF0DBD9DBF50792331C78E2382EE0B84B830CD3B712F7ACC4CFD1374E0213274D89B0847F5BDDEF48729355A4F4CA5C050A84F1C6C7C3BC7C5792CB29943F070C7C3D424C14B4E37C1C4E22BE59FD7044B0E83F2864881FBE182843ACE28D385587B1257391B3B7DC8D7B5A1220B67618C30556955E857876B317D5E834BA5E5A19AF2EADF39AB06A8F27A8B2115F310C83DA0FF17B9B184E94F3D93BDA2262D73C457F4301E3ABA4BC4BDFF1C5DF7977A62D2593ADAFAB6CC81C4EA6C1E40F3D7ABF082C6DD97E6411872D5FFBA0DEA827EA4B6EB1C72B906EC0F446D67B577FC7C5294C33B64EB7C3B836CC0C184F2AE2D2F8752947B4C0F96E1F02E6BE67FD5B0F28C0CA577633EAD8EEC48608E7F821E4F55DDC2F3C55F5F58FFEE6189F35223A7BF3C2C239EE0D9ECC6DBC413A51B1CC25A922812624DFAFB0FF93609BC182EB419EE4F127FBDFE6B629A82559395675089F60B0746A294C09D2D53EEEFC45B7186EFF4231C7FD3DC97CCE894761E7F5DC1D9171DA5D4C2037D0CFC891B96D9DA03CD0235E23B53C931D737C9C5F0C8410822B21A737AA8D754ACCB5B875B2C72F1E13532F8F4BD3CC6AF58627CD03305A13BCB90B3F82DAEF1032C68E5B4EFBD696B3806E41A0F89AE378C4684107FC8135E8BB766FABC12C6D80E22E491F1DD38B2B586345E18603B352FCF4AED95D4BB50393B897BC89C8069A7F73E1C1386D59AA0919837FCF2A7043575E9CD6CA34853DAB1227BB663D3C504782284DD579AF106CEB8FCEBA9DB7B450BB0466288A20339BCB652D95109CF2ABF82B37B9AC2610A4E1E7C57DB7BEEE964735972AA64B170C6AD98060550E93E1D2930887605A0FEE76A4186F9B43EB83AFF3AAE1044168675352032EE13AB69997E4956771AF0DEEBEF43C7544FB085B4B2DDCDE00D8858B8BCC81837613BD7838D1D2BE342125B2A8E1DF628DD5AFBC8F012D2DA1C73B09131209F200E453F79D95BBE46F19BC5B21908E754E8DC60C0D10C1BE0BBFFD9EC4FD0B53229CAF000C3A8989C2D65052413D044B695F010A853B17C3B8D5358664C251B5B2CC75E4B8FA3E30F274B932CB9751305ABCD57158CBCE8E6030465F81ECA70B2F623EA2C5359902741D08F9A50C8347A8188D93C80332D893C7D4DFF09F7EEF86DF103003B8506D37F0260AF5E0B53004C94B2E92657B8DC2A872AA34545E4B9FBB8DE71E08B9DCFFC240A1CC9847A6F5CAACCDB4B063A03F07BFB298C868F2706A97595BA75502540B273A2D7081AFFDF9748DFF255BE09B4D065A34DA8BE669E1D524F7C66B7F329CE3BB245E94C0E27D4569B935C60DCA1209EB6C1AA40131A875EAB0261AF7053A44C96FB30ABA49997145CEA2226322E1FE620DFB8AF5E1BF1B8CA7197BE5324FF78973FB04F4AAF227C53D179F5BBEC7899BD4B829FBDB990C296FF23237AAABF0B87E136155CF320D145B663EE2CE886EF2E0D2CB1E0E695141C1627B612A93AF6633BFCA9EE522B3CADAFA87910483391704FD9593D203613626994704AA586517175DA826C12A6BB9B7790A4FECE4695DAA371C92402C4E023AC2465C35CA77013F33858BC6A070FD9CA62C42B39B5677E950E70549EE77968A80CCD1E2A92B8262E0FB50F8BBA75B27A28DB950836A46252A00491C986308E0EE9A65097E6BD34968D09E0BABE1BD7575AF2D3BF83F80D2F0E5636A8288C72F4D95A2B1C5DD372F6DD9984DBCCF149EBA70F99E3B003CFFC5BC363DF73DDA67E5D2CCB61E78D4EF5236788CAA532D57874D18F806B0C990A0A72F675A02B8AB17661B7D0C505FEF17082DE0D3EE41F062B3F785533081B67F099F244BC6B9A7E54FBB3BCCE0FAC072F4FFF4465180A7381F79DA39F5F3DCD5FA565553BA6A80439F08B250F27AC44EB1655F14DD5B21B2FF8FE182410EF204D11E4FE18728D6A0A40C53BAFD181BB7D51C46964F439CFDF98D9E4CEF9E36079B8B90B9AE459C8DAB59B37848D0554FC48960FE86DD536671197BE73B9E04EF5151C085787890DCCE2D18EF1B4F865F7384FA89CF68A5A0803DABCE1C568E044F348A5BB1393ECF360AD5EEBDFB721537B2278FE4744D02034F0D5DEFAA40A42E1F2B3D89339C16D7C3F7ABAFA06CA2B5C272BEB0D8B31FDEC114C8B31BE4861B7BE0E982A1A15B1FA211D0530E6A9B9763964EC2143DB7E810D38F8C993FD5D51D28CE9FB881906A9FF9B839498AAD646FA04D34A9881AFC7E4004490FAB76BC297EC17CBFF0AEABFA8DE77CDEE056796A3017448526EBFD39816048C86A10AC57E0EE56AAC832C4A2A67D9E60064E12661A4D439D65DCEB2740155AC1808CF7119C8E162AEA11AFE04BD38BAC9B7283D0FDABFC4B19F1B4D90872CD354EF984727D6232F0F6FC49E7FCE57978B687B34E539A731DBEEBBAE91CC12DCAD3F0C3DF0B716041BD9C4A388227A21381D6AB7A682442AE3B895B3BBEDA7DD6FED6AF37290C321ED9FC18543E4AEA4EB17C0233DEC90ABC73931B522D0876D53DE1B30FE9DA74915FA54AFB875F4A219EE97EBB931D4299273C63D3D34DBE196E70159525E81DD9CA060240A2C1364265C7C68B70FE6348C5DBDF5CBB2B16491F4245F6A1AA7A6F068205DB540442F224986EFA3F994FFD84B710F8290EAF31285916CAFFE286330427A85001E966FD32777C842FB03C42FC0B43BA012F812E27570620B86FCD599ADCAC24CD29474D82D86879C671D6B1D709283CEB3801AC51296DB17130CCF1B68154067855C5664A37FC1AB1B19DE29306DE624249D3C28090726FDA54F77B633C5407E1B778F9CDE512C48C73EB5CE70047FC4FB29598CCAC7D060290E131BAA7FF0C00DAD1B883230AF26B5E27A4E35CCEF4F03CCD1B185F1C183B3CC4406A36A109C879AA98AA15A2169DF00E5BFC1463FCEA225A60963D50C4A3D2E81B8BCABDBC77BA890EA62D0A44848FA91686429B34DE8608C975F4AE3D2752BE532A13C07A87A514B9BCED65E7867C2AA45072A5EE836078233AB56DACAB94E17FC4D7451A393E6BF67F141AD3F7D7D9A75829BCE9D52F9A4EC9D118D52CA030007250DC7C0E69EAA30A02B72DC11DF2EA7D5981A07153ABF77BE2A4E8237CEE077FBA78922B725E1971659D55DBF18584AC3C098358EB32C5D01941BBBBB3BDC7E22F9D40DFEFDCB184E1455F705AD57F6B95266C7E517472D897735C8C89F86EBDF582185D106AB57201CBC296CC956D5D574BF2B91B6FD13F7024BF1570683919607433536BCCD0D13A21D1D6C494AE70277B410DBF41F0B454625419846D93841D6E00B269E1AEE9BB1F787C60C9766545E47B9DE2F4F38496516CD3ED9ACFCCCE0F5DF3A1AFA1F418F091FE429619537DC5B227911D234926D84602B862F2CA5BEA611792789CBDE6B70A6BBF28C865E835A422574D1170A2C55699517ABC2C81DE82E09BB00331E8CD5907601695D1B6DBEB326C78D22880CFFC6A49CA61B0B8D9E1DB2CE7464FC9EB048765E63A4C3917CFB9A308A2FBD3EF0AD690D022F91C8F2FA1555B6FDFD602916C48B0739567F1B9AA12C724045C48CC87BE9B3A071FE695B27E608F55608E04195BB895178E061195FE4082C2D6A5363811FBD3680AEDE3964C31FB9C57FCF4B7088CC6E478E53AA8DD687F4E397B14D8334403EED557EC3DE9D1210C77560B3F504C545DE75E3AA4D65B691E2C8B746A51DF90F51D21B491315196DF15BFE3BFB4706FBD883FA4CAE6BB66231C03037696781812F79D00DDD2EE5432CFD1EAAF4EA124320EFCA8838F3F3295ECD88EC2E8F802137E623ACC56B45356C731F6B7F7631D1F6FF9F87CBD6AEC5E6B2A44685412019179880C4ED4A58E2EEB24DB337AD62DF33E8670365167CD724FFBE9CDFCA9BAFE0AE699B5C6AAC4A31CA33641B1672ADE7445C7EB1BD3352C1AA2AEE4EAEBD3D8012FFA5DA840BC669960D91A562C35284E9D9EDD4B2FE34C86F90D6C11052DEC815F0CCC573FEAB33351460DA0A1BC5844DE177A9BEDC2683DA5B6232B9D65D4435275A0301DF92CFCF6861A15AE5029DF30258486D7AA27FE3693860AFDFBD28F2E0931943D7416650B7AD34EE209007D0DC1E9DF6011A3ADE0AD36ACFBE0F240633013D8648194FBB49CFF109FE32279A23D4C07704A38DAA5502E551813841F492130589C5365E07D93ABDAC3DAC7F7EC98842F5EEFE9F1CF7BBE1133C7D9E641C113EF969F00CD35046CCE63B89822E4BDC5ABCE8B94DBE5658E10B62E9535D5E267BF7250DE6253A20049757FAF7DEF516531C4AD017A8218D43E61F172FC7A77693216B60493537A1F2D4AA9A46EDF5503290B14D3539B12D2BBE888F7D34B56EAC8E182A921E0B9D06CD2F14DB5C2F0EEBB04F697FC002712CC022109AB71648352E1FBF95D8842B24B972A25327E71BCA93A4E219F7AA55940AAF01D5F3AD749DA69A75095800CCF60AC0C5E78577532A222E890A3FB9A923C9A3D86F352F05EECE984A4F7B0F0E050B457CD9360FA9A3775FC6ADAFC9473A6DF740784AE6CDD933CE92871AFA3B3518244E98F1EE788BDBE8729C89F99CA1260A145B6505ED904BE21570732337035B87CAC7F7ED176ECD4781B5A2F694E44964A51246AFF3B2C21C375A1967C4E55E105CF1F7940F99CFA24202568C3056284139243B8054F0B3F5F93EC28421EC07A4C630C7FE520B9B280476CC420E017D6A9889A18C659701F0982C210CD51BECA37429863CA76BC00CC5E86E6E14F55DF36F4EB225B7159CFD5C2914D917AF70CF57B69A533CF7FACE41018C69D9E290C976C2E784A13D653ACD411F8A334D878504AC426A53E769BD5EEAEDD050F93669C0B9109DCA0E1B6FC9E8D64C88BCDF4F14E4BA033CDFFC91E9B292BFDBA04AF2FE1D83C1C1B6DC03A1F04F351A8F05FB6C8282AD84C38FE9BB15CEAD2B071AFAC8775659FD44C6A15340BD944C36691EFE1259CEA263D284BF2B07B28F1CD8AECBEC4E14EC7794B45CC990CBCD91150AD5E0D4162860B9F8FABF93925BD6520325E05ED2E1E613215A88A6667C2BD2812FD499F7F5A37585E40BC3697DE6CC4C436E1B157DB387CBC4899BF38A4500DE895F63AD14194BD171ACC9310905A225C8F82ACAA1F25B640CDE95C2EBCBA8D3B737B6740FF732104DD9FB26DA58943E76DA9E5FA19ECA0B31D7F8FD5FF51CFB464E2F277714B4A117601E353E596CE60EF576F18BDAA1037017FB1E70D4AC9A410DE13C73C3CB7ADC442B41D5A25DA7CE3946FDDF203CECDCF20EFCE05664D34F6AC008523AA117D1AA0145A2CFD9F63F7F65187AF59D4027EF2080AC8C345B16DB7C7BAAA35CE980AD07A7717CF56EECD7662785E96620477B6237CF1FB9A4587DC48C1CFB803B8BC10902A4D11213EA84006623D12A892D1684616B3FA4DE090508F8EDB6EF3FE5699027024D5FD06E5D21709D8FE4EB6AAC196794627FEA9CFD373A7359F878D93F8D26CA617A154CDAD6A1E425F7E57E2ECB710C4FB4D07F32B41A55EFB60594A46ED6CBEBDCDC7D2B6A39252544A5DD68A04F1AE446F1C1564EB87E13BA5A31B99E064A606E957D5258FE4EB6068185CDFA613B6532EED945679FB1F02AC3DADD1852D6216EC66D667F2F674381F5ACAAEA70FB4531070C2AAADE0982D132163C53220CCFB859FCA2F66E3BBB49E5B38F27E0B472B2394595BA992A03E57E67960832F3A8BD89FC437A5FB97A07C1F15B198125E215120C13E669B111FEFB4076068DE0FC5CA0FFD17405C186BF472CE12B5A4DC8FB8FFC22C3732259E855971EF16A1C3ED216ABAEFFDD04625C276C2C1F16D56957D3E2B5791671FD7E59D7875A1C275AD4F51E87337F9DB9AE42624EC17BAA5806D9314533610C38F0A4F9BC3DA21D0DA8FC2C2F7647D806E1E3E8B5ABD3222A1A1091AFD55255B7B79F792105C0CAFC726E6A8595708CB93FC153C5B1712CBFD2960E8ADC80FD307ECB34578F595A9A43619BD6E82925AB1668E3E2A0670B4488AF336A4AB388E7EFB14371000C0D756B3D2F3545A282C26E26FC67C5C0E65DB22EDF8F8639959CA17FE06DEE0925520E86B3EE4F91B87645BD71360827C391D1E7545109040058A208E464B6E88478F65F4CADE6AA78F31803575A9DCC1EC2792237110DAE999312B8936E6743A939202ADCF27564ED180163372F54D4469C7030C8B4411EACFE8D65039C275D46C5D410829241DA7464102116B8B0D2A8F001637EBBE0C7878BA97C3ACCC20D44E31C368C263E73060D3ABBC4C9FAD4532FC9F55000E205C548724242E437490EBF1904B3406D49E7FE234007AE3CA378EFC95E441B10F60E727957F8FA92F62280916263DF8BA8454A603EDF9C75538C9416A0A6294F1BF7BF02D6A4FF28D796DB28284F7E6520F360C805D39C0A24B685185950DD44F3858EBB851D1A9C05A0B6AAF28D34EF19005B82013BDB2A95B0F59C5F03E3AE8A6E9D8D4984BDECE18B7E8DFAA7CA994B0A4067743D9959AAA67957A5D3FAC09F472334944DF9C82897092D82EC9D81C601A53A29FE371032E08AF4C1144240FD4EC5E5666F1D3D3315F9765E29CEEE28CF7029C7A122A02A3587CC28BABA84779A6B5F88F97C1BD5BE28C2B6BC32925B2411441FC7393205C7364EFC2BD8E53EBB95091FDDC38E0D1ED897F3E7751F08251D451DF04C2F256FE94EB492307CB71E1FDBFEDD0D650442BD7847211D1A76DF944B2001B784124A190C385505D56F52E233C7BBEC89E13F45228BF85AD190F7FFC5948AEDE9C097469EB239C9274C481DB75AD04A9F93A73EC6797841D5C0BC1FF359220D7D560BD58BCF6267C8D39C19D14F2AF3BA9DEB420A9CFCB1E2361BDA643F9C2EB0DA7DF0929613622AAED2D9BC660BA616CB6E85B90325E2D15E23CEF242B399BDA255A698E71A9935F8D34342A2D1B24C14068295266FE9602205B2C0C7BF7A1E7FCB54ACD433DFD48B6C56C0CD1FB3827F9F6C1782D7815AAE6A522576C67228DD7093D6EE92859E7F930E817C90BF4666EF2E67CA3E440B38000AD42DBE84DE0AFE954A1191587009272262E5F59845677B4686D92F28184404205B5D46F80F9DD6145BF1B0A9211DC5769851A8EC23F5BC048C750B62FF298237D54AC725338910958D0C30E4EA7B933B5F83ABA0922F5DF82E9BCB59C32F4D3E9841521EA9B063A1CD3E1F331EEB7C42D2AA7BC95E898C920FDB68EF7B4846BDEA01AD47EF77974C1A7D33718B4B4C56705574E9B3D2BDEB448EBC2F3A29F78EC3EB97D6C970F612AE89A61165F26E5E3B2B7EA2B495BCF88E7F5A5E73C0CF247B49E22884B464B2786BAF5DC0069B6D9307A1645BAF0E6BA4C36252B491C3828D46C6FDC286FC8F75B5D6DAB92D932357BC016291C7EFB63AA858B38E8518BD90FE49EAE6632426ED86711A0120074D00AD597EE7EB2A58E6FE87AB5A8806EDC56F997AFFB7996F7417DB585D1617AD25818898F319A2A191AC5F4F032204A5082B2BA0F1304F107157BEE5922BBA6E0B6EA10F0DFB71056E7E6C81D4EAE0DCCEDB2AF4F28BBA181DA70B21E3DAA15F0F810EAF23D2B318E07B6D6D4EF26B619EE02E0855631A3A309718CFCC5A9920188869707A584EC6F16BE1BC36C2A74FA93717BDC1F96A589DFB87770225D299D5415C92D03AFE67F05446F69748A81952BF8A2E0173CD4BBB26D270C1FC4BE6DE1BA96CC0E8FD731DBBFA573AE2DA2D850934CAB9C7026BB593C233A0312F84F93DC3104F7F360DBF85A3D057B8CB4EA8A7C68DDF3502308D9670EB9D9DA17A41ED97158179AFC6714CF03A6997E78216A23E179AF1F1CD20A75B3ECB56C02D75518D9C9552B825B20C50BCC6CDB0E54E4D44A125E5D037E5EDB680AFA5637F95C81232043BBA619118CC6E0A1ED4C7C995AE4C7B80D37ED6A5227718DB4FC7071FD928AC38FF8246B2CFFE36AE15269A5660B522BA12FE44DA771474A6CF2EE7828A60BA3C2DF167A2A3411E0A8366358984B0D2776792649E74E23D57276A883B0A91A11D20EE7A2A6E25E80BBE67C8DF6900825E5BFA127F58F8B1DA252FC6D9C56755045DFB52F7F6E508C255FDA57194018A9AFA0B9B66C2D21B05B053D4523A4296B0E684BA42C41D8521955984D98D8C7B275FCB4AC9E3177C3636E8523517D87CE1EF8BD0CE68EA23C9B68BD1A6C5AFD1E376A2C70289E3AE02D64E73D09E283C8C51435D17C35C74DE16500C200D6C6061883B04B3E0D4841809F97BEA508E8529D80089C9F69AEB1D65C2F7D20452353830FBFCB453868DDC7C4BFECB6260F4C86719D558E587D18F61AAE5840556EF4A17682E567F87D0FC037889AC8A50224DAD3CD2BD4B5FD5214B370F46F912CCA9AF2FB391FD7C9BB630E95D54084F18449F9018C44B6EC73362EBA654EC12C14F01101ECA237FAC5DADA3F5BCAC77168F9C9C662A739ED0AF96EB4E5BD6E183FFDBC216992C08C0A3BE117FF884622E35B1ADFF33C11A9C56418B76FEA21A740FF7BFC004C6A3827F9B343070597A7C2DECF4EE560955C1DC276BA9C139ABE76E8E7A32B7D4942514961918E98A942AA2DFC7D9C9609BA9E973ECCDD9B241A9427B0A57A05F662E2CCA7A051A2E860EE5959185219FB9C060F24E8D51F382BFD5C18B9CEA7F996B5D389AF8754C6EFAEDA40E15164FB3CE834D3BD7311AD301543FB47E9E5ED7CC27FA7FA5EA8F1EC0FD2F4EA094FDD6D48DB1EC1C86EF9A7DE1D0AF1A248230AF52710A9F4220F7406A7332FE883186BE164EA12340949F78FFA34B05EA6011346FCCCDF6FD364D2F1303161E283954E3C14E68B0ACB2056F52AC9EA7084AFE0CFC844999260B1780EF29BDF96EE8BC76AC7D962B39D62A15C5C2461422A7DE85ECD0C76C5D074CFE582FA6C27C05A3F4C03D831F68641E511C33ECA7606DAC42123E78DD345BCD9F4B5831C0FABAFCA6230F01B956D1907081A2B96FCC4733E5D9269527FC15FCB515BC36C7621BD30890CB99960759ABE13F85956AFC67D15C8A375B6A3ED58968C4BCCF649FA3ED1897EC9CE02ECDDF5EE5022507FF59DD6287772A37C8256BC01ED76441BC245CF7FB2B00FE5D2949FC1B0ED4B329D03364250F3B0C5650CFFBADF81032D1CB46A228E1B31792D0FDFDABB2B867EB626A4E1CD66752C64CE1827695187746B2A8CB69A17EFEFEAE23510101022AE046AB9B7285F455C750E72EBD6C4411ED6ECB547E387A2776D84A06343DA7A9F3B99C9AB0705AEC55F983B5ACF72795E9F18994E13C260C5FC9A896A0F42188992976F915F5863E3E0735955787078887E34F1AA072C9A0DDBCDF162F5E394FD8122B5EC784C2485075163D39201CC62DA6C63D75D4EB37CAE28A9A0C4EC53C036A12DFCFDF0FC2A48EE193F85584FAE6D50A89E769970C9D01EB18CB57A0276D8228F9BAD1E1AF6E90596A0CAC9C633997E47A07052CC6C71416794DDCF61D883C57BE714DB4A9F594BFADC554D28A8DFBA5CD4742AEA25B84CAACCAF1B8E352617FCDD7EB2B639BFE4684392F40A4D028DB95A557E0F37F837CC6DA4FC3D4DCBE893B90AD0FB916D879FBEECDACE4318EC608828E70D1C52E3F992ED8BE4BDE051DE0390CC7EF26C9993EB7D2813569259F77C6EEF0B681D72B872E9887ECBD8705FFF2B26EEFCEE303FD2BA4B7F11CB726A7314921E0F2CC7BC992F70934BAB8C50C99C852BE1F19827F2F9F05DDF1842D5D93F5434178B5D75068BBB021E069F7C5A993C1541EA9FB8DF3988C158FA9AA104E123DDFDFC73E122789547CEB6617E4B6D46402F1962B1D97149A31A07FFB4087ABFFC0DFF2791F8FE61A8D286BE99C4B0CA9B4254CEA067376D89B9B2F4BA453D78D0A2E74134C8F8B561007E9BFE9486015282AFA4C3EBB89DE3DD5D2DD2270ECFA3C1A41AB56E5AB9603FE82415D86D3C1EC46BDB251D136A7FD4F5B9ABD687FD67CC5B29DBDDE6FBF4682E1102885D570EA3E78225CD792A7CF5711E93D2CA164A4177FDDB0ED3222C976A717E7B3FC5E02136D94A723A4C089F6E2DA35E9C6C251F6B7924AAC139A525BDE2C36733A030A6130D098DADE6A58B91F2379F7B12FE06EDD17B445C371262CC323FF07EDE1A2A3C2DDF40F4B32232CE60BDF096D43DC0AAE903CF0F41749BEE733DD9CE1C261D379CAE5E8D0E1D3A6705931B39E335F7FF371664C51CF520A201FD01EAFA2B29B127FF974F2D8A1AC47013D1C64A58572D6364A762D87F626BF2904A1FDA08CC6DD854A824F26B504E16EF92B4C21B6DA925B9DC31DA3329113A44FD375E77FB3D00F04C8438B626E0ADCBC672FE7BD4DD10A8FCF4BF0BC8D42F4397375910936BAB359D1B4260D487C874F3238A17F57EA56B542105EE970BF6311F8F2E73F375939E14FE0E723DBBEBDE8DDF7F3AEC1FDC61919EA1D2FFA6B59CF2F79C56E790204EF3A5F6C2A5F42999B540A15D7AB0D8542A0D79093CA88C9B4EA50C67EDF61E720785C9038BF959423E435233F9475826DF58DDA9C967E02F9D92530F4CB644BC9F7FDD979C88DA6EA2F9E482086857DC8138EEDB85F8E777C6770C6C8EFB45A10D0A2CD276DC5E3D3B58174771A84101266E32FB96E781F6FDB979F927C431E8A0034ACF563A14EB1C479E76F8687A58C8374C3DB76F55597BE246B33C95C9D328ACA6DF5E59854C82E89A8BC57B12D975EB038E5F264F120DE5B577EB8AEBAA53F013E97518C9B2CBFB333103F0107E7CDCF87A84BC5442E1CA10C8EFAFFFC963479FBE1076C49DD34E8B99D1B477920ED285E870F689E01DF7B54F1DCA37462E3D8D5F0EA4EFC280419E735C0C20B8D93016DFF55EF164C6B3852771C3A80E43B56475EBD6EFB290A1CE55672E31B2C736ED0AC965D92C20582F4BC8CBDCBAEF98AB4456A6DF4F3950CE10D521D1689E3D0A09955E3E85AB0066EBF58D7F62B9EF9AE15C533207006CE4318F91407F59944C06924B757EBE70417E9873905E6B4A492852AE2F1000873657AB117D8DE8271E08E1334E83AA3040C210FF36695C449D7AE0A8DE62725EF6772440FDBB617B25FDE830EA8C66A640F9C3E3B7F648AEF161B403562ECDC7C11A80DC181FD7AB78DD8B3E53E31A1BD3C975DA4BC99C6A5F4B3101C46A3C5CC5F35C4DDA38F81646702F34D575E5B807808C04055C4A82D30A26DDCD7351B96CAA270E0F70ED3E6A44C3DB0FB27280459F902601A61B227A57E6DFE6C7F14818CA9A29C130BB87B1E087E64F915A6571C6EE75E0198A967E507AF4A620D3BC02F0925AD4BBB144AC8362F8B63A7EF5BFDDFE0EAAB9BE87022CF94C132B546F22B2467A8C884B6CA90388E45F6D035349CB8BB453455666CE379A2590ABF142B1840AF089BD9F55B08E0E75543A49DD3162F375C94487ED0BAF718190A951BE97522F485C434D2CBB6827897733DE726972DE282916F6187E954154FB80C553F4B8BA7A40F871CF66BA78661EAA0C96B9DE725FCA8D4B29086C81E2D33ED83E73A7C8B1D2A5F3C11C10BB42632EB24FEB82CDA9A29D820F3F3BEEDEF150C3E0E4A07A1FB96DEA39A8D19B743FC46997B4FD50A2A9038893BFA3549534DE46C7B21D6A45E39BC6F09D44A9561B73DA29C65503595D60BF54BE96A64F8CF8CB22F532A671C37033ECA04F6E730023632F224CFBC89E2BA60EB4939A0800AA28D39A08C87B066FA790D259A20CF15E805CABBC80B83B73D9002CEAA98C7B0F5DA9BE550C95BA06CF9D193D7F3EF4D4764C8B1A7968E00FCD701E3603EFEB55B9693F146DB8C1A0966A1CB08C9E9841FCCA0DA5936CECD0001BF12CB18F268AE39C0FC013FC06E51BBC556D8B4F67E7925C6D6BF6D05C8DD9018D11C47D0A7FD6DC0CB0A89F3F4578E0643324D81C8301F3D1F99305991E52287CD631280A2484D8B987EE126C8FE1C22E5963D0EA387D9C2DAFFE50CE1CA06549D7092BA76DD85F6D190B03C4AF452AA0A5E3BC4BE6D220CD0D14FBB18DD979E027AE45DB210DD915B4084766AC106071D298568192DC52E1FAB7DA9D9E175A11F94602BC050D740C9F839114156031DD9DB9E27BBC9BF75115C7BAF0CF276A885022DA20702DDBEF4B15C856924BDC2CDFC3D5B7547E937010BFEB42CB9F9EAE96B0095BD2FA2497FB55E61B593FDA47E43121540FCD1F841C54714AE0CB22765206B4CCF6C100D7E18E173F39F09B8354A9078D5108F8066440891040348FCA33894888461DAD78EECCBD64518D1C4FBE7DB60F4066569985B397F4EB027A57961DE67E71EDDAE8904362878F08ADD557AAA35445D61BE3E66517D94AAC99C2303EF95B0D144362A1B7C51245DE8335A5C903AD30E109C7E581F1C7E9FEDDC235FDB86E31CFAB31B29A32FB08B609CC3D903CD305D0175161EFC58258CE6DC91B81EA31CE482BA479217519F2C6C430651A4BCAFA2168848518EC8DFBDAA373164E68ACB892B7A6504BDA721A45032C2CCDC0689A4E87F9489503E0B75B17B9D3E86416BFD98B159657B2F22A2181B96A5EF2B2FC46C9005BCF100C2354384CEE557F74CB82AFF6F5308B499D6F87B996BEFF66D08D562ACD9608E8A8CFB2FC63FE48270A92E0E9BCC7D98101DCC24D1ECDA4FFF181A7C8FB3AA79A4C44B40266D2C744CFF5DFCA7EA083EBFF14883D873F5621627ECB5249E029D2B48BD9A988FEC634F36083D815271E1BC85ABBC51CD4E04EE2BB1B95527F8094CE2104CF96CCD771B0E0DF039B31C4F6F8B97F7D1B8A7973EFC93BBFE891D752B05DDE28624F0F709F3B8020C18DBAF188802DACD4B539A19E83CFE58F05A9C397E0F8A3E862FC9731575074726C92210F9FD1872EFFE4552690B2497DC6E50F2BF0F2E2DDD3AE054FE9C4C04EF448241C730B5273A0676627CA800B1D8B000F4EC4A03D664C67CC169EF9DA04EF92C6DAB2B581D441A90CEA1755C310BB6DBF3A8407333D903754E33843052BC0785E3F1D223AEF64EABCA7A4631EE5B2DEC78961C0603293B9BA9C17DDF26FF6DE1454DD80ED7E96D1F4EF169E2413F9FDB129B4250135DE3D2D8B7110E972594AE997728495BA41C795A121E79627AF0EE66E9B9E487741BDAD97BCD8E2671B4D56C08E555C29950EA93ED586DF11796567DC97A8E7BDD1F34276C0AC958F82B9DFC71294229D91D2C1AF0EC0EB749074EFC584530138062B4BF8E6B97CA85F3DA2A501C5A9555A690CA0BD974E4DE1A8A6EF152871CBB7ECBA32B6E6CF917E770F364F17635668CF46194ECCCA1758A1816EF031339E4733E4C6292E7BDABDADEE87A6ACC92835940100B3549AF69A5ADA08EAB4BA89138A878E9EC897C67794AC72AB22285E5B795786F9E2E3B2A4B8B61F3876A338E1748DC61BA92FAA57AD53254B025AA1EA1461AEC9D2D09781A89F396B26E0B99A4C651A4610FA8E264E8F864988020569149CE877600B3088A387F7FB4FB08DC5CB1F70D228503EAD9B3F3B0DB9A9B461BBC666A5E717EE100AE1FEB783071957E825A8E57F3AC161FC5C373230D04AEB7CF8A86F1A8F1AC320AC50D3E09D98D8857EC1BE57DCB9948892E7AFE6A6B54F12D20BF90EDA719D99D0D7797AB1CFDC8E7B5E9DFC058DD0A6F4288CBEFF88E9E5C17788DCC25B62DB763233E3CBC168667EC0C5785F3178686CED0D93E8095AE4493227FB1958A14FBA52F31AF9EA32A655A6DF515FDE7D1A4D6B8852A187CEA85BA40CE87D4770790A8573C454A9C18EBD16E1E2CBA9E5407959014612FD95E6E889DE96C45E864E78E43458CBDC0E972FAF1079CBD7CD8B8AC0B0B310D40915323FB568C82D8FD1DED924326922AED03DDEE7720609CA6E5B314FAACE482CD0658E9CEBDA4B98067386BCE5719EFA63D1A96439862722022EB3C0B30F3B6B0DA121E7C8C75FB2EA039A99D3A0D6AC80762F682471AB0282029FC21F334BA991F571FC9E2DE83031247E06E77700CA08742213AB9128E5FEB462FF30D4952A1A2A925426BCD13E1B5EA1ED2F9D3F987CC448DB3E25A9EAEB6A1C263BFBAFCE49D5ED100AA9AA2B8951BFC27EB62A31DE34265E026AEFC8D1203F9807C4BB96EE01C8F220A45E7D2096B38D9F95BD6F4B7803B8CEA87F6BDC521C5FC927BC59C8A7A6A73ED49EB14AC6C47773DFBBDBBE852742F4C099DD46EE5983B25B9AFF4EB74EF038722558C70EC669581862189D40DE935776CCB2EB7619E8133AAFC6A8E184B8CCD4A04D19D1A82D111787E0E5E8E9D2BD93FCC4C012A9653AA67333C4EC7F33038C21E9C3E2266230C069D94AF0327353525B693E2FC2A2C4918F453F30286124046A7AF55A50BE6A9059E3A559AA684B5DA4AEC4C553CED69C0087EEC61239506803EDA7F1B795E7625C269F0CFE389D17E92A711CD1E2FD56A5B106B16217C470395E46CC0F657C9481B570B9289BA5BED4C1744D7482EFBEDA449076561F9136AE9C61CBC7BB59C7ED267E00795C305A503ED77F6BE0AC33E6710771E216BD52B4026F53BB84D38D73FBE0D8C05B489D97E0D528CC0F2FF51FCD1CD369C81DE220DA71A935C7CFC6EC433B9BB02A31F57E5456EFDEAE3D35FEB4BF5FB3103B8E51C8F33F69A7C6AE5C2D35156B750FD66AD0A9FA3CA1A23BC1EF8FA8B40C328CA28FFF53E23EBC9609E7D62B3EC0682CB9652185C8E90AB049F2DFD9EC896A18F3EDCE8F5D53F7E44AD75561DD8204DD1DED77119F419EAB2355C4369C7279882DBF6969A0DC1A3957268D7D313B65E8C7246C7055C379C7AB602FDE5DF1F299EE9563C56C0E53DDE711524601835CB7F019B7730B16267CA0F0326DD843671801720AC81F150B87BC66085A92468C6C0732619C2B7A5DAD2919F69CC09A8386397DBE1FFDC9D0D46DA5B9E4CC9FB0457B2CE3BAF2DD4A8D3AA2CF094EA38EE5D8158340E066736967FAF6E14DF77C007C779C6CD8C8556EB8F7D3AF98114BFEA58E68DFCD2C964E2E37F22DFD5FA2CAFB800E8088EEFF4A45DC672D4C51373EB96D9423BA402BA61CAE5FDCD781AF9DD65D04E07659444C1D9C765B96BF6296CBEA7C90185301C95DE48D6D6EA1B276B1C820905B42F7432F97B6F6211C7C15FA9CEAAA9DB58000E336426F3FF2174E0F91F35280A5C0FDCD14E2FB652322C8E1E987C04ECBB79354ADE2617299EACBC1413F7E66CECA8CA68845CD355E4083B4CD424C2DB43757EBEB053C8212767A19A04E25C4AF0F708080E226C6D910087A753F02E51C103CC4DD33B44828565141C5FA3F7022A25D87DCFE99B9FF6FDB1CF57B55C14A3C9B8B2155DBA5D0BB249065E193EB842DCF75DE19CAA5B1E243E5F731878DEB271AABDFFCCDE3040AE947CA8C93C68C904535258A33F8489BCF4710F30A3F5F4099DF231F022521238F1E4AF67CBC84E2A36C1C1274BD70400E6CFA9352878562A0A380AD85BE5AA1FC932435117589AF1347E5CC7812676EE7D508A55397BD7525555A428C4B54E1E25858BDF88BA0C550EB905265DBBBE8C880CEC10F702F0F21230A75CA4E786B2B93C3D640B610A2103D32F03CF3512CC698940C42E0D0D5B87A02015158156268B26EE948DE2C4B763895192ED186AB67D4DF13E4207808B8A3613C90E58D6922F63D73D91D6D87A651A0585E6B9337F6BF50998E121D0E7FBBD011BD005809C58DE1EFC505BA4CC3D28BF5B56287003F374611969BE7E405CBA88E8E389A3DF0B0D2FDDD36D4E4818EB905BCA1EA61DCD9AF19E713DA6BA59A7707CDDB58109A7184D3DF1108206EB85627A1B89BABEC8B640B9B8F5A75202D7D16136A9179F122A38C2FC0FA38D45571B7AB5425D40C1D5F63B16EA17BF660DF04C9D3EDDCEF550FACA84A3403437E6091763F5374195B33BADF4844D1852324AB580EA0B91049628B3FD73D2FA1544E02364EDD231967202FBEC089713BB761A0EC2AEB4B3C9B2F08AEC9CDBAC75F07106A88A5F86D36768797616E12449D9FD238BFD7D2389B7A2E809260F9ED5FD99BA24CAB2FF1C4D49134AF6842CDBA32E4CFD64E4A13D28F7D613B5DDA00553C57899857D46C1995C58F459731CAFE2BC7870644EF3E9BBECDD5403D451DCC91A827CF093E706559D66B47D0B285DDD36B91C31A38AAE3EDF416C2ABC348DE359FDC54C84641477BB20E0360B9BB20F7A82F6CFA29A112B3008ABCCB5CDED97B1B4052173D84D7B61662E6C0481798F4B9F43320CC4A1DC9273B60F9A893786FA9959C1CBE9492DD907FF589B5AC152202D173740058FDEAF708EF3CEBC73D5F9CC119CAA09E80350477C789ED2A97BCEC6B0B01438295DA1FFEB6BB6AD15DE15C3AB58A14632D03615F76DE6C321385F3D5AC6F3FCEA41E7DEE54EF920C5813B462BB5C97473F0889758BCEE844E2FC10BEF0F1048CD154BA836D59FA2DAA6D34074FA52F034C822539A95C374BCEBE870700C951A47D729910B32EDC13838FE6EF8649D9872EEF5EAE2C206498687B0CF6B139B65E9968B192C2BD47CAE934B5CF816B843F6468211A7F637C5E3306B8E6BC015ACC7CF33D6C4E2AA2A5AA435BFC77185BD7F12DE64F34B1FAAE44E477866A995CE2F648480A277C39E186D8DC93223C3BEAF170F5FEB9988435ECC59B38FC3FC56DD32863CA0C72B1BB3E05E275E215D83B48E2DCF8166FCBD4D6F41122F529EF4B322D040FEC83B4748512C9AAF78B9839453AC0C0E5DA988888F003D6B38A7439B362C6A694A366908D76483FE0A88BB44F96B0F74591B017ACC684AEAB7767F7DC6082D7849F13DE5EAF1AD0F868660B1D6F84F9B62E284D310FBD72BAC68BFA36BEC91E5A58382113528DC0DEF583C348874D4466718863884D6FC4BCC447D0AFF1CACE1C516E4FAB59D459C09A2753146F9F08F32FB51342E8034188A5898145AE449272C9CF86F0ECD18CEE634F1EE3B2538C92E505A336719D16756C5967C5197C21B3E8947C6E9D1BEFD1A28CAA29F241C60C37A39F908C7246A1A9508BF0CFF5A8CF276724C3E9828DB1E07C7A7610E6929C94DE6833F5C0681F3EB6C230953D3A78A6E04081436D5DAB5E272DEDD29121237E106DDA03CEFA68E3A5AED8D4DCB8DEC0CC524AEB0E6921A7658F56F1471D6E3CB2180AB415B4FA7734C11FB12F66582FC1D0ED49783FB2F55BEA48B816DAAD50C675B25884FFD468D00A35B24D35D6FA02A4BE15D7DF73DCBD13FFF3E422EA90100DB3BEA5DE20BB836F8E3EFD4EA19B43F36D214EB0952D95DF2E962A0FE64C6DF076EB9AB0C35D6424A5E31F9157CB3917FD22B6C048C15578B80C22E172D1033B509137AE344A1A1669EABE4D8E1FA3F2543F8936DD5EFA59C2DB3269DC2AB55816EFF0A0E6A4B4C3A36A4F8C237E3EC1607F5FB98ECF65DE9E66A1D6394042F67DCEA4CDE6C50EB194C1A1C1F748FB6FAB47C51854B16534F943D6933C13285C5E31261DB7E9F47E34E1ED9DC4BF4AF7AA5A5DB82EC5E54D46F64DE1B738813145EDF80A04B53873750DB4B20F9FE1BBD1C4447B366754957A5B988CED5BE366624BA40AA43A4202745E32828BF71732CE199103CE80692D7CDCF3BF1E1CE569189BF8A173D26A4AF5AFC3428FEE9211A10917185E232DF3AEEA9FDD93FD14EE41F7AD30FF15AEA7760539CE1EE62FBF3CC4EC98ACB104BA1FF8115FC652503C59DD82FBBF1828C50931B5B483A84E9DB4C38ABFC0F7D8130DF3FBC0766F68AAB8E6D6E5B2A7736A011E926122F828D85A828D5FC872DBEC5FBB22EB8BAACFD5C3A2297F4827982AB3D3A941B7A4503ACC902A111C193553B6F733B1A1485ED76865E59BBB1E502A2D39A42BE077DA3910AE8F4FDECE3FB0AA45EF695107EFC6DF7AD96108EE04941953B26719FA029D25D0BC5F42D405012D69A5FED10EF0731C2C3481DF3B341D6FFB8C7777F065B5288FBF8DD19938DA9E4A83124900971CC1F7787243E99409ECF0AF07D9312B360CC9DF9D6AD1595F8D173CF63ECC783BCE71A654E36484D1CD7BDA19EE9E4497AE769E47B62EF65CAB2ACA3B33079FD2665279F91FECC09DE3BB5F7E7202613FE580F373E66AD6FB7DD120A3B2038790B524AC52845EB23C801E9AB4E56F667EF074FABA1A99E623DC43649EF182C92396EA870BB5F9B095077278F9EA3FE80B13DF02BD5E803B6C715EB4429046835A92C044CFE35D9FF2D87FF981AF1670846E794C73736B7B21531F19A37CA12BBBA9D5128BC9C73B09F89536510A706B7A7D6E8C3911CFF6931A588CF55773B8924832E66D1398E0A5456855E64EAD547B3A4E9642186CDFDA4F311C120975811AE5043A7E383B1C39D4B067A38380A3BFAFA886C1D023A9F86F8BC8F0169FCF427A35042F219CD7DE31E03F307DBBBE674649E2E1F1EFBA92D5A1BA862CD674694D17FC4BDA1D4245E6955A75D58BD7F703E7862595F45AF85C1922DB4DA9F1A90168DDE0609BE93CC137C9A8A116EB8F7B7CE185ED45F33FFCE46A7CA9E8A8AC9728D592FBA030CFA861954C3C5221F0A14B6DBE22F41C9028D9751C4C10A9749935BA919FC20AFAABE8ECAFADB2818AD332CD269DD2F721A6491940AD54E48D70419F53A694FBB85DA35C4E68B46F1C36182622613D34AF749AA5E832FF256633871F20B74580455BE8F36BF905E10238D6D46F602DB3E6D3110727C0064C4E1ADE27A7E39789D06B3B7FFD1CB66C75AD4DD1D0D3DA9FB6DC74F4F2615C9AB0A1E0346C8AFCDE8B318A7E61E130B55E7E36B79FB998660C2708DD53FE5C3E0D14EEC8D073A131982E1D85C0295307AD809F46546840DE96430A43E6B4C41CC65999BD9AED9541417BC6E625EDA4AE68C5B3AB7666B658B978876ABDE927C9B1025679BA8773ED8FE20EEF4DF5FA27B11193640939DF96B99AE5A0F2CF70F26D898FC76819C715233876DEDA395BBE6F7ACA7DDF0D5C5A7CB68F56FE7D8D74072948FE272C56F3F92CCF00C0E0E71B365E7BCE04FA8B76C6A16E5E639AB0141C1B1F0CA03657FEFC8948F023656BB8ECACF4019BDB7F6AA38FBBC2C3064F11FDF817148AD026B12C5538B3EA49535A4B47CA390F9850CD4EBC7533E5A1495CD1CC51F7D0D45552A8E9E584BF6E5A9BE76BC107CE507FAD56DCCCE84A12163625D3534A4ABD96A48367F19387415798F39F3133A22A2F965F14A358C0E41D9FC56A4CC66DA077A9B70145E70559BAD04BFA3F7DD89062F488150AD5D07B54A72A9061BD143E890576F7E6B332C89568772321914A6E0C15C1E6D5A1A62077C7B806C93BC6EE8847E159033EE0F1752DBC2492AF212807A61E942DD4944096CC41CECFE3380CD90B25EA284DCE57611B244CF81CD4988596C072688943760AF9F9CCE664440C2896BE863BA11FBA68DBD6CAF2570BAE6199C384AEE3FD578A83976F9B505ACE4BAD11AE5B8831EC33FF658A6743F3304636BF4B8500AEF57127DA3DF6F4A93281A65BF1ADF687F92FB4D6388D88EBFA136B3D12A9C6BCB72BB08F5418AFB0156AEEA52F3CA88A062CDD126C5A868AFDD11173B615CA38F679206FDCB9BF9880B8D356AFCC6ACE8ADCC15933ABA5BD2DE17C4F7321FAD41F8A2AC432CCA54041A6E8C35EBF11DC35D572C1BFD1C641F4817FEB2FD575E64409B6590BE4E21F2188241CDC5391C8983F1B24B3BCFDEE61D2302E95055C5EBC670D89623191672974C00E04213162CC09FC2C80414569B0E15E7286FD2495EC89A35E2DB08D4F7F870F8489AD9541375F8D43C974B6C20A4DCDAC9113F47EBB91900FBBB802E5D4BC2E2259E440CF98537458E714B15A2DE52088501C21DC4D419000CB98E80CA279140FE6B8A007DB4E88A28873A5AEC03B6E54CF481A3529FB2477721FC136672DDD67C82DEF50D84F3DE752CC6FC6C11A3BE4078A14D75A0F65DB45AFDF55C61892E670385BA9B8E5A7005B60FB1548699F72317217893D0F8B32196AB506512C9265CBC1F87888C870ECE650EBAA0FBC698EA43F4FC417B1E30B1D6B88039D3CB72FDEB4BB7F30DAB42FF8CD4F202FCD6A98A461E7601A12DAF9F2A1703D1942B5EB022EC7460FB95E4D17E3CB46F11C2E596FBDE5B29C3D8697FA555E65150513B2CBEC3DA5C24E1E9A050BCA9887D6A9714E9FB3F23C6F1743A98C00063044226C03F64BC714501A5F49705DA7BEBA5FFC734016EA56299F2F0089D0C30D387840506E70150AA9C9C10491B58EFFD2A380E1AD804CE6A28B43FB9BC201BA78FFA96CAD3ECA7C24615F5DC9467E2170FE3D758BE203C413EFF8EC12C1DFCD6A8B46117AF6CD45EC5EB13DF9BF7616D01004691CDB0F853E3C453D1F0B23F8720E2E9703E86E30F25D2CA81264C8DBE4A4BCE221CDD47D6B5FC48C701796FD35F0611DC16FFA34496F2FCD8E805953E211F049CA9BD02571FD92393F4E63B941F59D0DFB09FD06B03E2A4BD47BD53FD981F65384636447BD7BA0772B73EDC360B5C5463E7389740CF9E89837656A1C5525F9E2F112043516CAAE58353A2A3191696DD39BE856F290C472CAB462637A8739DF22D005654531D5945DFCE0A2EED76B67C8A7343E37528706760272EA014603EF95A876013BEDA2D308F49CE7CA820364853EF74655A52F7EBF4CE3C36F866B7ECB546F6F1620BE5C168B4D8DDA166A345C5A5B509A24D08A7BA68835CE90908B7B74BDC10A480E959273D104BD1D3780A14AA027FE4F9BC5C1D0297DCCFD6173AC39D4976529D7514CC20EBF002AF8E6E4CCCCD12E0559C251AE4D3131FFF2D9CABD16ADA92E0EC249F16A2C22577D6629B2433227F62581D5A6F76623321FF30F9315339D8265EAF6E58CFB26D831EDE777DF8A0230027EAFCE43268CC83390E01AB9B5D76E06865B409675AAA69EF933BE5945EA6F0503D07A1E736553D8ACC8356949F19E6E848513DB0FEEDD5F4F6AC72D970EACE9DA45960464EE1F2929C4A390544A13DAA17F4AF0C7D9234104345931150E5A38E2B4ED3A78C49BD8B477266CE357C84A2825DCB7C6F846E79421F7351480C218A193406A11D167B8E4B58B9355BCF9CDC1566A81AB2993004819358E7E678FE84656BE78ECF061710A7128FE47FD2B66A64382C3A425190DFE15194969FDCECE773E01060A725142385E254B52B177100000CAD82D4CB9A75495AE41248F1D9140F4D3671DBDFF2DA601A2EC58007E2399690FC9D12DB1645407A3AA89676D630508623EC225965C4AFF93CBD88B312C2C007FD35DF2285B9380891B92E74C41EF5B35A98671954D3DD597260DC30A35F9554D67FA73F6CBF9D9DB2179CBB597373103EBF603524AF7D9A34BD6339AB3A6DE0DD482BC0E509FFB19AE6B811AC3175FB20A024293F8A29D8B77B27A8AC705073DA50A917F9764B6C44CA14232793BD2DDFC10826EA75865F114CB105E33907E171BB9D03D28A9319BF12BA3957EC6DD7074AC285099252E575F11E156001702ED9E3D4FB4ACD38FE0D8EF4141ED8F6DB0A2787D00B769DD30CBCE30E590F819196E4CEF748CD8D929FF63DC8B99045FA3CF88755CB315FD058C20D570A3A01A543914AB9DA0197DFA1C0F849211595910CA00D0E1CCB1F4B4113F05820819C21DCCC3E8CE4DD56BC0A3671A55FC8D0416BBDCFE373518967F86A9902F5647450CC047A58CACFB67CC09402410D8E8D9C5C9850CDC0E2A76BA227D9D097FE907E61DF9A527B49765DB4EB3D2260ACCD3B8BFD732B0083D7E833915E56454BB6641AD46898CBD91B27ED905E168B8A7665E6B378C932A07BBDA19D8A2533B269D1FB1200AAF63789FBFC130ADFADE7EDE5022284A0976EF9DDC03CCB0187B3F04A163E1CD2E0E9A420F6EC452A225829DF1DADA5111E267143D3E9CDAB23E9FC1D851449D1829BAF6DD8C74823D57086B3FDAC33FED43238EC523A4E5A6F53D60924BF4CA8AFC4B9FF92C635EA46A7A0E04CC30FCE45B33A27A97A6ECA007305EC0F04B6D95CDD9CCCC8ABCB21A3BAC8CBE47E4EE8C9DABDDDB7B5B812D9B01581825747E05A6CE44F61EB7A7336CABB89C33607895D7E2E7ED926551238E25EAF47C4AB5E2D324472F9E4B7DC86CF18A300CE6C3E16C741396E437840CBB7378B0288304B050BDF9E541645CBEDDB3A35D2698224C88FA971950DAB308CDF7E04ECFE0A2147D5356BF846C99184957C2F350BCB018D4D6F90B365E394D63C65CF257127F0F061B9234C79D6A0B1EC61A457313C52C368C27BA2FFFE093EA3C0E0F3E1ED754965D15A94B6B5C4B56E4A9D91946BE82AB7A4C725229555FE001865FE337F5ECED5BD145E6B11C215CC1FEB1996E2DAE512C3D15526F24913F28D72155D8D893F273838EC9A6272F59A8235A7E7CC6CF658341FA88C399220AD3C23F87FC06F41BEDC95FD8D2A2D3272CA83A64064ADC926218281A04F407284E50D7C1C4C0254800E0CB4FA2B560EA9FDC5A96496171B256E872998D0D3246062CF45F8F89F324839C2F0A88C16570160DA1FA5890182F7988919B015AB47A15FCB5F73BE9DC90235DC88098D8E11022F3ACC5022DB1EE35BD786B2F44049D8611C17B3057BBE211E480B39AEB9F75B638213E11E3579F3FE1EB7E28824DF37B705363E6AE1F120D6F61475573BDD1C2A1228E641F3A6E10A01B9BD9FEC753B7DD844752249D1FF5D3AA6197DE0C95A6C577E73582852964FA2F2698A1480D66A6B739E4D32C906CCDF71ADCEA1F8AE6ADB04EFADAF6396387A8D74F326BA0E991CD8D256EAE1444E1FD3621CD681C0828538C4A5BB386C6EC0BADEE2C4E903C71E67771DFCA4D158B254CCE4067A74E6B25E18E21C3D179DAFAC22C8FD3A024C91B83D029F11A6898F05CCDE8FFAFE6E7F983CCC57D6B08BB3832BF187902C7FBE81B312A3DD754B21EA749F68F57F0AE0C6273C99819CC36AD213040B6EC538BFF086811517BEB2D472CEE929DC92195B8FC36C1A73B7E0E2AE4A4A8ED458E1FAC33B31ABA9D3B76FD8DE37732FF8C3A0467865D49B815FAA39D2F83F016578565D7021F735A6B8F951E3877F7D58DCB9EED7A72EC07C732A1240E5BD3A4B2D727AD6A792CCB7C197433344D755C9DD16713E5C044D98C7EAA41CB56E391BEBC6D4D2F6704CDFCA492A5DE8A2160B359EEEDB7157E5BC727B0B89BBF9FC3F814BADB5B82D6C378A0C86AB0B18B6831B9771A10942CDE7AEAFE3B6571CF742596952DABA40A67F64263AE05CDDFB004469741850004023B90FD1DB3CF9CF55F6CC15AB6073725747A9F3F3E7574BC6144121A06186C0C611E8076402BE819708C21B686C6843BB8DEEED24F1F5F301C39825201AC817FD8356A900FE0A89E89570D49DFEC43F76ECE7E510D744364DF13ED84CF892F11C3BAB5700B70FA3CB424D4D5C484F0462FCA98124CDE3DC725B26B4D9778E121AD22332EBD620C8A9BB8AE5F5C7C0438E8AF9BD83CA5AFFCDEB2861085B0796978894A54B756519CFBA5687572B4FAB945016395A5D421E9FB8F813C29F091552E99AA13DCCA5279107DB99459059234DDA9C8622AD6D4D32FA6A9015DC5D9BFD08FCF45813D2E7DDB38F1E65CCA0C4AE776FA27213D44562A359E7494DD668189329977157CDB04D741CB43B06253CA98DDBFC0759F151E669DBA139E0612411FD7A4705B9195025EA0A95782936ACBDA4F70A2C32F7B3F2B9D64AE989AA7A1E9C7E718B72F924BB3F2E04CA0813CAD33B0FC5185B4AB86BE72FA8E3AC6C466D9990E4F426207C08BC5C94DA9155AB32D2D2B5EC3AC13C94F105C604296F9C73DF81092EA0A6E2D02C5CA6ED1744E66649F6916CF21ADB3C6E2BFB730486596C89E9FAF4A3BD3791EEAE683D246C733262CDCC85E02E1856317F574B65908EB789024FB9CBC54F575D77484747603595CC0036860D3B3DCB7B096DA751DB603F2614AF3BD03B492CF018BC6C434D2B38E9C8CB441FD1440338427EFBF75FD1F95F8B88D3501C58EDED062682CDECA0507E38DB7AD533C2CF48337ED656960505226FE0D861EF0D89BD4AFA27157813690D8ABECBA8771CF7A246A5A34F126C760A455155695730E034923ED6699C9E9840789EA73B61BF758FB3CACD03B9E1B9798BF9EBF23542E48CD36E1B159F66EDB6C96705DD574DEA2E8C180E1D1A31F34717F3161437FEA2CA3FCC7653C04CC006DD9D632AF6514DE243A060DC2E687E851F669BA2B3156EC53336146ED31444B690F6C82D0A75730AF63BDDC73B96602D92B555062FB22AA8087B68771A26302DAA5899EB197BE5546378ACD331117DF4FDCFD33343A9C132168559AF5E2D2C21E39D90AE9A1D594E98FD55C116D52126BAF0070D0866190D59E644C81EEE3426F9122F5711AA0AAC74AF9BFAF514ADA999DC1161F3D3FD4742204DC9317E7566A88F2C2252DF269ACCF3BD0393B1B1950826EED9652603B8CF905E1AE76231EDB2821EA607A3CC84513B2672BB7AF9212D0F4EA7949A9F74F8032DA39195E88F6B09AF3CEAEEE4CD6577E2A6DFC58C4D3F4303D23FC9978CE1A49791554F11441D5A197BB6E1947E41C22A71AF7C92292CE6487604234B9E86A89A35637FCA0ACDB18E8E1694B428BB360F498B26E492EF2FB2087E5F44060715CA952EA0C119AFEB4467272125D10026AA758D37DBF73844B687EAFFBF5644951F395C4DFF83F3AA00A64535CB80AACEB8BBAC6D1702A1CDB39C1E9A1DB41404CC60C2997FB1C7E07F8D212C51276E456D6980407C4F20C99A73DF85A1837B93AAAC1A8DC83F033C52E32D02E23AD2BF3E1A1C95F127118B1A57D5984B8D235368494039D586D950B064D891974AB434595A64E62789AB9F6B6BBC43751FFE618FFD8C633B0A7BD975C53E253808414DC00FA47CF3371DD10EA7E7AE8BE10BFA38363DB629816473EAA8F666EBAC06C17EA810D1105C931DD292E77961A9DD6506A6AEE14FCB3E17351712D72F57D973744BB65013DC5495013E93BEAB933B8AB4AC9B7A04379A11BC3A5FB6EA34AB23491E365D39FFFA61770B4AF8CC8B8F178BAA089A3A45648F6DE6E9DFC9DBA25641625D2F2AD767336DC532C19CD4B54CFCB2E294504C3C5E4D65AC72001DBFA712EB57BE2584F404E121E7746AB4D3C425E87D370B15D44C05D52962BD147FD2874").unwrap(); assert_eq!(sig_act.len(), sig_exp.len()); assert_eq!(sig_act, *sig_exp); let result = pk._test_only_raw_verify(&m, &sig_act).unwrap(); assert!(result, "Signature did not verify!"); } #[test] #[allow(deprecated)] fn vector_slh_dsa_shake_256f() { use fips205::slh_dsa_shake_256f::KG; let m = decode("D81C4D8D734FCBFBEADE3D3F8A039FAA2A2C9957E835AD55B22E75BF57BB556AC8").unwrap(); let mut rnd = TestRng::new(); let sk_seed = "7C9935A0B07694AA0C6D10E4DB6B1ADD2FD81A25CCB148032DCD739936737F2D"; let sk_prf = "B505D7CFAD1B497499323C8686325E4792F267AAFA3F87CA60D01CB54F29202A"; let pk_seed = "3E784CCB7EBCDCFD45542B7F6AF778742E0F4479175084AA488B3B74340678AA"; let opt_rand = "EE716762C15E3B72AA7650A63B9A510040B03C0FE70475C0463BBC45A0BA5B79"; rnd.push(&decode(opt_rand).unwrap()); rnd.push(&decode(pk_seed).unwrap()); rnd.push(&decode(sk_prf).unwrap()); rnd.push(&decode(sk_seed).unwrap()); let (pk, sk) = KG::try_keygen_with_rng(&mut rnd).unwrap(); let sig_act = sk._test_only_raw_sign(&mut rnd, &m, true).unwrap(); let sig_exp = decode("60F74DB4F30C2224DDDE29F0F2A2505E8F689B3E82963B818C79484A58DF443442B5B4E7562933237CAA8F6E39A97DFFAE24CC51F41E6900711FB08C851770B33D4B425AFBA3DA8A1258E8769BF53E24DCE1D689973D6FF53F7F09C24CF3C5D0F0C22F85E5562FA4ABB18610850DCF6CCB8D1A3D4E3EEA48AF87FD1D8F417647A381502062FB94DE5C8D1CEC61519BAD34CC437CE0B0A4642F7E24BDC0A4221EB418DA07E64E4CA91EEAD38F2CEF71B991AC9487B91CB49BEFD482CB1F3D4A25EA101624EAE754C32C0B83ABD57D9DDBEDAE2970E69C8FB92A8E8AD7C5DE41853DFF1D6A3B5D4C9989F4B868501B84414F22FC436ADECE6A5B6BCC66137740BC49A94D664EBD5CB0F0FF71E2C2CDFC59B7A5EDEC96B0558AEFA7BCC27CEEA4CA90171A89559D122D10345BAFA31177130A55807FECFFA36F05542248042A5CACCEBA91D13B71CDE5C1AB250ABBDBBE2B2EF02A6B22E2701085E1CCE697D23AB16377C18B69BBE99C8B95FDE42D5736D6D897A3461D20BF8B169768EF94C13F9B09335C2E376D6C8332C5CED764811D032ADCA915A2E13F49F9344B8832D952BFF9E2598723FAB10D81317DE303FEA7E453B01FEF68F4D0ADF6E54C9E6A204AE3334CC9284289E6027EFC0A35C9A42AC6AD9241BC57C162C9594B813AB1BBBF66D6C853251FECA9A7BACBAF1FDF33BB723A1F710D4428FE9058D925AFB6FBA75B201D2062399ED42888E00B8FFF572EB4F12F03528D1FCC0CF2D519BA3A5BD1F618DBC7DC272FCB211B561B5C824AA6375E0E8187A384EEB717EE4E270B00BF5438907787C27DD9C593229CFFDC56E5FDB3D51D40D535AE654D887E89F30700D8412C6F9BE67B4678E9EB968D9D35E694A4BC1EEBD7903DE4C744B339BD1868E040661D43D6F055AD1765DA9E66E44CDAA61117C682C155D1A15ADA16B301DD2E2C7A7F0C9C5049869A976B4080C82420EACE5AF98F3D13312229819A8EA4BEDA306E72CAE744143B347791190B9D2EE4A8FCB92832EE6C2FBD9F352DAFC8C4561455A72E8FC29403B395D0ABA43807FAB36DDA4148AA857AF74FFF5C8889F87CFA219BE10E83B19078B15E070A5A16779322124B38F485DC9585F9DD4AF7B7460651A4CC49E39E2DDC60FECB9B6B8FB9904D6BE7818CE1F08842E969F27039F3ABAC4A0038089CDC327863C18F35917C09C1D9C151C9F30B180DAF15B21F92B7EAB6E1A5209BFE0F4CCB29A186B66A5ACA6A010F6F572EA2EB02F6157B05DF9F451766BE6FD137B2D416B766D112BB6876CD950DE288C20A5759280A73C1E8750EC008E034668A38B5D132B274D58FEAED148E8A6DBB9AD556BCEABA86C30D2F29DBA7528753354F5E10A3A3A60F7D7D5D1F7EFE1D25386EFBCF4F9D24C01568287F8D8DA5C314694690576E826817CF19F085A8C44BDA05FA0325B21F501CB11BC514F65D8012F24E6630BCD82C3902D201E5830AC488BE48BA9B3C74E8D5980CD0FF18D3737681CA6D08396C6561367436D7FDE69285C364A97F799BFA9DEA8B011A248CB2D758518F4F7FF85905F9B97FDEF07B4A4D00880A1898D418ED43001068FDF33514ED548442BD396299A65EFA0F489F8C342A8EABC7D80DC171B919A3690F9614DAEE49A5DCB2B972581AF94CF3CDA9CD9BFD4A866A7443D8FA108251EF6BA16EA7F334CAAA8F5579B4BD6A5087D9D382266CA7ABE1E542C1D585DF86BFEB0E4D2B2B8EA02FCDDDED88C7FAAF37C83A83892BF366E21633D9C09F11174B6E61B83CE2A7655738E7B1EC8DA161634C64C9713370C6C3BDCE5EBC22098402AFE7BD9E9A566C8956279E1120B2A69B8391425D7820D0D79D7226C1DC4370D6507EB62E672F8369F741B0551AB6E6E648CD330E8BD2FE38CDE1700452E6687477573B357A96E79875B353D0141BC9C2AA6A295501A6F3B75BEDBC96FC6C2CC9A1C3ACF691591CABB8B832CFA1A38312354E68B47D8FBFCC1CB479C9DDE16C626D4C22AC34EC1E26A26399BD1559CC3FCEF0E03A990436629254533B8ACF9994D4BFB36158590CE5E5966F84141035DDFBB644D0AC41EABF4B9491DC3915191B87747FBCE98B76974522B401F6200B60B6C90CFD446924E153DCDF3F869906841DFC7E6EFA5C9BAC0C09A8F28C1F3A913D4217D2FFB72E3A8CB8D4A1B601C3D4D3A66F0850BD71554426E6E9636E307BF0F9365226C923850AB34559FBFF433BBED71C3A2B8C387E111EDCF7A9EE33485CD6F5BF1004145C00342C74CAD8BA9E720902B3ED284FCFF92A528D4B6B28904123FB444B45464AB07B1B27319DBE1BDB7CA7F3677C2DC9F36BA624B9C3921C1746A04B7D2893C5A7C72083CC718589912BC097505E501C7CB5110378956FDA9473F4978B092ECC3353BE4DEA0C81EB61ABC5441314F70DD00DC1EE9D000BD0857C973714692B24B8216EB5BB3CD7516E74D85621E03277AE2D87E04F353C518EE41C67A0241E87E68CA4243899FEB5C373C67B00019FEE8BCC458643E2465C6993CD4D0B7137A4C3FB81F207173AEDFA185E4288932AE68C2938EEA912547A92A6F3217913903F6C3EDF9B66861AED97E882D329E8A2D7B92542BE7A7A1CE085CC451211C7EF79596C081182079839EA2A0215857CDD852CD6BF93CDBBDEF9770503AEC6D5FA2A7C0896350958C69DF91250D199309F5D42612BF148A6BA1C9EB8DC5F69CF11317F2A8C5B55614F1C83B6073BBB0175E61BC2CED3C09A7A7FCB7EF01E4A93B72864EBF5A06F55040FDA489B85533589DCE9788DCC0A75A3E815AF79A2CC5EE1DA5EC4529EC049922B1CF0FC707C31BADE8A6C38694E584B447AB14EA9A5F56DE46DDC4708D21920878C4677256FFAC066A79429D44C44EBCBE728A3C71D18EE109601ACF41EFCA942EF364B7F81B0F76A87152E308175B9076730376F74A7C60667205E6465FDE33E166A4931FEC828DA59A3DEF8413CE8010ADE4979FD71D7DDF2BFD5510EDC1FEEF5C3EB4FC1DBBA8E69CE3100B3CA4015BFDCFB37263C2B8B3311F3429EFDDD073AD5B8288D3CCB285742CB06BFD55D03BBCC52FDACBEB2744C2685A1003D2CFA0492E9691224ED599796C9D44F4CEFE271F3284A0F6F6E702B2F1597B40F2E298AF2B843422151B79215D844F499D6989E1356505297A3D60AF9103858A68F2A439F2A8CF0ECF56D0F3C1B4C906FAFC84BA01152BCC6C47D9425677BC0F692375D116D52362C842D9FD2CCD04EC988952BB8A8E316A795542E7893DC150FF04A898FD49AA7D749C6A3CFC7238130CDDC0940A60C0C6151960110E709AD254A5ECED65126E917E52E25066A41FF4C93D18633E44D06AD0216BDEE4442960991D353002DF1780E2BACD39B22DECD10C82AEEB574E7D66488A61154E84A57B5131CCFB0ED68369756EF4A199A71390A38133DF99CDBEDC80F6FCAC6D3B65486EB803847DADC336C13A997D914587DA65C5FDB9C616DFF5D5A4804854B01BFB1891BD5C47080DDCFD909249EF9FF0210077A225954F5A3D8500A7AD75B877EF206BBBBD5C8AF284699E5D1483674094B36C1A6288F3FF8F631FC6A140B555BFCD52CEA5B4465195426CABF18D1CC113088AA2D07FA6927A92BBDB3940537CCAED48C169F2DCA80205ECEB7C897C874163C98E5E56B8EF26DFCE8A66C990828DDC7C5C55925BB40C3B837C9481335807BF45DE0F09DA1BE90CBF2DAEBAF6A0EA6EF242E3155FA62A0A46102B5E1FE17026306DF1E5A3CE1F2E5B3249C38B5FEEC4AE99FF4151C3E9203DFCA8C52B6239B3270CE454FAF2CCC140520DB9DCD06F6B57B67059F0DD078629CF67E775E4FC8CFB04C979FB6CF5B3531311706FA9A5ECC119886A73EF7F54040DDB410F194B70EE1411ED6BED86FEA06730F5CD0B283BF3AAB6147A2208EE3AEC49CB5DB16E7AD7445D24668E3D12C0CF08B1AF706E56605CCCF1ABA726B5D0244BFD9B7020CB7DFE54626780DF1CC34D6CE7F5D818C67B9DDA8FE65082793112120E45B747D4A05E5A006028F2A485ECAE6CE09BEA77570F90F22EC7620EF57FC77472C0949DA9DDB7AC29BEB5178C12F65F1995D4A505B4A3788B31B4739756B34F3B051075AA791B4277BB23F9C6D808587253C610E134FE7A00E768DB91D47E4CA03317603166CA1F7582C792C4F105B2C01D09840B29FB74DA1525A6776D5BE2373B83650B51C31863982631630B603B6A54A13D62FF68FD4A4A05A60E7C13B5427EB806DF150AF9E6FCB300FFBE73D507D589F88F5CE47AA8CD1094ADCBC8ACDEE24BC87919A4B6B77C669EF62CFFAA45CB533218B79E960DDBB4AA9CD0936F54F57890617AB64D9393E70E219CB09BDF72EE2EC0AE6D85AC475446BA94E1EA681904067AAAC3CCE85339CD3C88FC57373C1E59E42720119386730514158B3CED34D0C9F1334D45437D1C8196B4970ED9D39355A3A3D2A483625F3DA94C1F999E42A5D8F75E2EDC51FA07493FC5953B454FEBE0AAE813E05066400A83B8F94954C2F3DCC9A80DEB9B70787E0D5F82D2B50226E734E36D5C87BB975AF7D131B03AFDC1A653985F11EB27FA40F6DACAC2E525EE45FE4B8CCB015DA5BFD6A7CAA613A588A307355C504EF22D826AA6E925CD278AAF376A008F484FF850ED68EA63726BEA05E61E330D7812D53D0D1F991CCF2E86C8AB9A2A66F39CCEC38DC53A8104D999EBEAFE04F4591F2B93C8298FA1E641031903C700F5622392D0AB2535477A0125A45528743277F3580B3B3E63B8367CF394E0C377DF09F909B70120D09F1346F90198AE604A2228401D1E80DCA746D598725DBDF0B2244A35FC6B458696730BEDCB8074447FB127481F1C816C0796E9B687FAF4A87D79B8D4DF007D60BFA236A118DF5E4810EC60DF9A55C4FE0A6E96AFE708D8EEB9AB18B1799A06E79B4C780E62D6749597109B67F7AF1E4507E67D7B069CCA7FC4C34715C50159B2BE84978A3C7DA82F7AFECB309E28EC8C268880C545E826288BF02FEFFE34B77C674B24F784D2FCA31D14CE3C6058ED701D1421B8749D2EF92EB0B1DA07E83D331BBB0BF589AF61D4A4E3329272025917BDB50E006E1F51000AF3D003C8D69994EEB5548D4537651E9C2B06855086B45C3FEEA6157D4A2DD52E3259E2C2D665D29E94B280356B639C8D1F66FDF589BAAD856A462FBD2AF1396538D2679ACA8DCD2816CED4A9D134C1B4FCF52C7B14F4BA3C41A2D607BD28203AF574BD28BC8F126BF25DBFBCFD8E5CFDFC1DD38E649DF39662E852915AC786B16F0A5533422A9A9978D66F974333E347E6780E556F39DFE465391E9137D14BF311F4B4AF44F494A19BA9D7A16F7641C2C99384366D1A0FFF46D4C01E8CC504683F8B08BE71764F3F41A0C6E2363CF69CF532BBD92734CE68305D6F2ED01ABC74AB8CF3F27BB8BA98D6C9E7BAF8A24D62C0AB9C402B3579766849085BE1B52AF1E170EEFC852E9871CACC9F8E44F02B814D4174525B7AFF4011A1F8EE2116B00B43FA59E8EEE89E60C281F790DBC0E4D0AA5364F0C574E67A036CB41617C183EFF1AF4B3A99016080B53F60A253358FF769E4C77CBB14B3A887736BDBF6C827D297C32B8C39EB7FEC9FF7E5B344DA90B17BB52374C3ECDFDC2432162ACF6D140B2142C57FB9AF486F50ABEA6D0F13EDBD9A6E4BD9158F1609BF7E6A4D9EFEB43A6AB353AA9D0AACBB0D8AF2F36EEDF84453C4D30D1C942EE0A896F8F25DB218259F1F36C046D4AC2CCC4765DF4A1B7AB98499A262DBD8570D2044B9E0195FD90B5F750B14D99BEBA150AC33DAD7576D367B0CDE160140CD5ACCB4CA08F8918E9FB2201F54950895AC79F3E1CBDFC1A794569A87A710EEC9A520282A1F3CFAAF936034DECCDCEAC9CFB6C785DBE2D5BD0A9E01BE6FFBAABF2D3D03F839CF40158BD722F9C26B2F0006F7DF0F64E19033013716C89B352E285D374B2B77CCD0CB9E103BDF42846442CC264498874AC17926E41F5330BB144C3CDD3650C3E023642C9543342ED4301504FD06E5E4429F82E763980DCFC05BD405B143C57E39BF9C4504481E53BCA2615D0FC4D4BB6B45743AD8856EEA9F20A0880BD516AC0611E0320CFCFB60F95F5607301606D5FCDBB3B6EAAFC77880C0EF0A0C3D5635ECA8E7D959AFC36A6F615B86593042F32EFFCA8E6CD7492B9224F3F766185A26EEBD1E351B0EA47D0D42D05CB3762FBBB4826166E71AFEEB92D01D6857556598F77AD08EC097B44020CB1FAB301461EE85E302D17D55DB4E5F4CA8333AB9075EB07C9F738ED715B70E3C29E997A742A8C1423E11A87F85165B95A27F3370C60B987BC55AE716631C7ABE6914E8E8F0109D7022175DFB1720131AA7A7341049FA515B23F7998DEAC4B393FC03CE2EF3160090B259A6D4DA7A41702CC6E40B10D2E0A98687190E7E081C6C6130CBC2D600BF4FE4924B00D83C9080448EA4E496A147C736975CB204CA14A89427E2D7CC7CC45CFE06BB7ED8E16ACFDDB6F5DC3CB494C7E223DCC52358A69A1BBBC1659B344F135BBE3600C94D055356F1FAAF755C6C473AF65E93FAA64F137C15D1535C1D9ADD7C354BADB1E2F4686C4B1994B1D54DFB29F6051CF13CB63CD1DB8138D41C546E667E12D78437366127A435B0DD3A407AF2C3F830A69A686431B4ACB255314670A8D8391800FEDF30AD0DD1ADB8EECAF08874459FD7B6924B2416BD02F280F216065B64683F46C120F5768EEA64CAA41FEC2D0393D34C7450C1B86DF1475B8FE58A6D803B49DEFC2AA4D952693A60DDAB5F216D0F809B6A10E54B728E0FD86ABBCD20E76F9B6FE76EE86F91B3D8D70E414E6936F3290E77EFF2F4AAC7BAA0D7D696ED492486BA584E5F2934BF6DD9084570AD8B1BCE133B9610FF959012BFA5C6AE0B07FBA5D120991FFC24E26ECD4B672AFBB18CC0527499A72DCDD77CCF36C75C342DF338928F3A442DFABCD21A32CF3E7BD4DDFA239E145E25DAE7C027D6943AB2E48C493166AF6D624BECDF93CC4202302B518F00C0AE92CC170470A7A82FA83BD8BE105246039D65C6AE4EEE07D584CF8D0E985C8E4262747C0C9FB716842D088A2B626849B2362A612F79C44D106C5F4323D48AA191E221231B8AE28EEF693AD345B09CD99E26DA0495AB8942CD328C68DE69C79F4836B1846AA7C4B2DE5E6195FC38B64D7E46F5F1AA891B66B59FF1E0EEDE53933A40337CB5ECEDCBB5F762ECE3AA75203FB39F950793038CA75EC36A14DA0982F913AEC9E9E9447C44721E496D41051B3860084AFD222436775C86931E08342BEA45B56971D564BBAC20B7A3A601ED1BA0F3960F68ABFF7B7FDF1D892B9BF5CC29363464EC969CC31CEF7257EE10A1CC10215B91C0693C785557483C4F03B4DD80EBA681FC293C6235ABFF6B82B947B04A20A0CC2976A831094795CBD42B07A9F4F2CF1DF19CAC16A70B3F829CEE0549D241AA63B03C35AA4ADFEF409DDB5547A44048F0E188C8A9C61A78C4208D22FAAE174E1164F4460B8175C2EB4704211D58D93A72A329C1E00D610F619364C42C133A93EB3FCEF2AD16859DDD237646BBF3D661898A99FCF7DC06B8176B982ECF6DBEBF8F5E173E66A846C4C76385B5FE17C4071C232DF467448429DC94E3004E030D5E82B7F53E4E4C4BC52F4FD460306D48195EBD2D8B6DFD05C0A7607B0BDA75B0C8806A22E8A8FFCF0B95BF8481FC54DBAD590AFAFE9A2B6FFC4E9C861FC829A3A8E9F73D565FB96BE8CB423C35EE9FD9A1D607C877D01DEB671BB5A25820D6746A9A3B6D2AD596492BA551DB4E4CDBD1C408B3C91804ACD00C361548196C1ED9ABCC6DAFB1CF0F84E55EE3B3DCC321A0150B7412860CDE66B60A70D4CC8453C9E2893A4A096811DE5D1C538E318FC791B32615D9DC766AB89583EA82FD202F670D259F73624A7B784E634B915D170E395E84D1FE91E07D27A9D848C13C07A2ACF6D4242DE930FB855B11E87A906B2F1DE029850DC542EF2915DBEFA0E23317E140BCAF26D987C31EB718DAEE75E5F5193C74F74DC5A5BA1B7B1AD1F618BEC1F153CDC53A621F3D10E3250538DE4397A079EFD658A4B8C3B8B7C922F6D771BD7D6FC395A7C3587FBACB0BE29D3E07A1943DAF66D9AD3348F6142C6F33515E6C8EA58864ACC9A7AD6AFC23841AF1BF0D48D47B6070367B86C79183DD442FF3EBA36A20BD512255AED035CAFBB7F7873A902835417F7A4ED20B897C0C7A6B40417D11BA703411ACD66F4F15E686D42D34D84FAD7188F0A3BCE02EAC7BB174EB3676442390D8A08E41DEF992648D2E90E771058CCEBFC487817D397C6DEC1348BC5AFC69A0842AA57714246D9A190D4012C345B51C8D40B0485AD82EC30E5CAE382EC656A1332668BFCD6FB404DBC62DC3BA3A7C1689EF3D1FB0BA88A456EB4175FFA056EC73F9A571B58B098117AD4D19B64177C575A3D9086EE467AF006B4E5234B52D98488CD6C86932D1F452C366C5B437C680F1C033BCCE0A4113D03F2237C31B24DC810D0D9AC797577F5A0609C43A4C3B22C5E799D7540AE01D30689B29598DFDB78ABE075971A58C7A7623B6F9E5B93F98E3AB1B53A4A488CA68CAA3CBA8B834499B4A21C7647203520EC6C7CB3BF08877A874F49388842727C5A24175C2C305301F5608FA2E8A373610EF7CF0DA43353DC7ACE50B5B8C7321BE10591F2DAA8F3AB81B078901B47653AB64B54445CC28F806C59599200D34D455B2875778F056C59069CE430F1A55D05569F81C508AA9A5D0BCD3180C258DF8919471F1465E2728C79154E512F361F6266D057C1FDE90EAABB8643BE9A82D574BF11CB6383A1A3E8F69E594E0D620051BFFD703D9FA254B4AC6C9D195C89DABF881CABF8DA7E438516EA1C3C2F432904070C70FE51949C95B5D03303B4BE9FCBD9BDCA92B027ED313AA754C95CE544DB2471AEFC5FF2475204D116EFEE8321BCCA236B7DB66245C0C712A8C7E2DD09027A7B2DFA76C47BB1D439540AD805D08CD30FE4218DF5BE76787B932047DA88B6C8921897C211045AC844A1C2DD379D574AA4912F8B79B96D7AE92C3407BD8CDDCD5909B6A178B453C1ACD2C3C8A921B4DD79E361D501F5F7598EC4D1375248CF72D49B7FACFC2D809A1FB5857175209E67FAF7E9FED2D32636CDA1A29778AE3EAC9D5E8060E5880864E2091640A2C21ACFD02F231C9E0175975D17B3CE6F9172C987A41721E737AA777F4B525EDEB69CD7987D544F60208E9149BF6411A1C61CD7AEA4D4E40DC93E1FD58B7B69E6A8CC0F3CADF86BF9BC47FB6A4383CBF7A600818304C1F0A6AEBDB758276AA4F7939313543D867193A69A259F1632C0DA03AD6B9FA61D1262F5E61A3F36C05D31FDBBDAF0966DA2A9EEC9D5A3F27CD35A93948A1B487F9D13B0FE26D4E2F1CA18320208034544CC2E89EF37B8C4B9D1034C52E029F8BB471ECCB6A666B50190A1AD24AB8A11C90096C04EED715A99BC54C88155133A383E9015EEBC265FC7600ABC1F68B15995A0C5224E75A3290747CFA3B0EEB7579C325E32AE6D869A5147E997A9026A17654B1303DC1FEE74B13A2579EB82D2F3FEA89E36E7DEB8E17B00501A3C81B19A9BB1EC5A1B0483F620889D26DE65921DC327485257E120027A0B1BFD411A27B9DF2EFF09BAB76039BA618059E6F6CF87F0417BD864CF21FA5362D0F99B55EE281D475785F65CC4618CA67F6F14D1C428FC940D35CE037C045C3D6C8EBB71407188944635785B7588DF5260E2DFA5D20B2C61E1D9922D68E3330C830320C914085BC0D4210E5E660EC8039D5FCEB3A48A236DD8A947C61B05185DF025A4A583BC7148F0506181F00150D7ED61BBA143F56B8B8DE9A5C518536958ACBE44FAA0C884D50061AA05F333A0849C183E9A3EE2184EE2E099A494DD02099BB53F00C7093C4566A13FF067F4D022C47B237967FD21EA36857761337EDE4C803D82CB323DA01970B0894A0DF0B1F9BB1282C2A214E3132F0AD9C93B6E17F00B33AD87436A1D0E879BE843B7FBEE2186F481C09A78EA2180B7750193125C8AF2C192D51F11C77A236F0A9995A809E6ECC9223E1401235162AB69760E64ABAE670596757E2082D9B66B8D3920DE7EA5B51F8D7217F9967C30A3931DA57DF7DC3DD555A8710AA72549E99B81BB1175FB67B7150651737CDF31E9C26D5DF2D3362C714E9723232E7553B8BBBF2B3A482671366CEEDAA2063203241CAB413A79CB4C9002395F9AF139A87A2E3339D05889D01DAFDB906AFEE4B518D6B00453CB900D57EE49AD597907E183425E6C54D01A41D8E6915948A93CF7821D3184702381A303436CBADBBE20A88A299A669C1C01032E355892BA4316ABDA6CBB58B01CDDC3744ADC2A493B11B5CD0A5B5C5375C6489738ADA254E7CFEABD0D316C9499009F05E58049DE41B5629756CA0A4AD03EE1BEBF3725FC4672B7CC6985EC68FA4523709B6F026F9DC4E92A3218F8373A455D479E61129118C063672CC5650DFAA38F9F337CC7128C87D79894DFBE07BA35BA1A64ACA3A7F3B2BF59864AA29C65ADB98BC335DA2C9F9A4A1A42B65661CFFF7CB7FF3E9787372742F007CABC589601EF2CE93C467112849895FF4FBBC7986A94288DC0B67B667B5A9B433C72CF1C6EB2463F63AF6BB42D06F66F7BEB342502B3157C4B3A26D6D5C06E1072B1B344B49B94EC0B0D0731C79037A268E2BAF0C57CAD3C5426A0FAEC69D5FE26AFAEE02F3F88D8D86034ADBCDA0FAAC66B20CB9C3ADE67F381D9A1B44171B99084EC05C33241E0C9864066663BB06DA8FD21C80D75F68ADD5E48329144DFB3EDCE9D31A0387D4BA526AB1D86ECD2EE5687CA6F41F175DD42CF26D546DCB1D4C1B36F45409861B7766DF0F86636EC58C31BF978D0033DF54AF86870295BB6DEA22B5C2B74731EE79606BBE37E7CCEA21B0AEBB655A6A2247CBADABE3CDEF2BE2626897B9AD479C4431E2A0BB522E03D225E1D3981677CBF4811AAEC8F0A1113CBE097016D4EFC02B184827942015357B624A152552A3DBA48EBBE004B7C0BF8E525D93721C6854180AE913AB034380D7F889233F32E93FA6C05333FB5B0EF7D4259B739A0DD35372C02E00B2450C6B42525475595A25FFFF4EBAED510D5FD187B30BE31EC1297ABAF763F4DAE4E46F51A542C05E1DE4A05FF36D1337F49364074E3EE67145E7B9ED0504886DD3CC37D6B37974933EE8B79802914E338558C0041E7CB0F7ABB35D13FB8FCF757084114FD0B11C2D813ADA0B0C2915486ADD8DB341D67824704D962678CE0E399D75B20A5936C7DAAB2A8389ED0151D0DB287AA961CD23E21CA2116CE2E7F71DFF8E19049E39013C9BB78097D9FC6461D2A246776A21C16208AB99326E649C56AA88B57140A4D211D7581BE54984478EEE9930789F24343141C51A410D3EA7F5CEA8FD651D49FA5DE3CD652E0DEBC8CC098E75F58CCC4F81154730E1DB8C0DDC90AD0A6B507856A8DB8F04EC20302EBF3C0998B34B4DB3DBF32C7F685B7FC9365A60D6F29D15BCADC68EC8E87BDDC61A55F697FF28ABA2A547A248C2AC4FAEDD9F0810896B5F3F372F91028D3AC1355F305B2C5AE763DD04481CAD3C061FCC64AD6554EDBB7EFD4F2B82591F1C0BC2EE37DD91E100B72D26E06C1016B8AB1AF081D398F01E8C7EEA3DB3D8B2EB5B0384EADA4BAC0121EA6E8BDC00E10DEDA2BA3A1B54FE451A080A5073F0074230087C39E61136C111A42EC408876674F0857E7D7C326CE4FA5B4B663FD91FC8FDCCC47FF10CD3E06C4F87675CC59A726B276E70A047A19EBD52AC4CC754BE250DFE61756C110BD46E4AD87407141BFCCF322C295E2D363187EC1A76027912183B124C12344905C2755F70B4D7B42F7AC9611DDBCAD4BB91EB3E074AC83F59A1082CE4EA40E1C4753871C440D1AA6C741D5280B6152073B7D1E6B36A9DA0DAD8D9491A3AD279D9DEA9699C1EA40FE462665F7DAC9D85EBA6E34903F9F02683F18B36B1620AA18E6F739762FDEC3E652175648FA4ECE05CEC4C23ACAFAB9A1EE1985566E429BF0D4E890FE5649A0EBCC00E3CE54A4214C7521813BA206D3B91CC29133A6BF05E3345AE291A8F94E38A05E2C4840023037D5C40BCA139D07617414FEABCA76823D19A7BD2A78D608FBEE71C17DCE6FC2E63D9EB63DD1C8696F94F11725FDE6A2E0F4DF7A6BA8FEB5611574276FD93282B4A5F1305E183070FB2167530E064535BF5E8F72D22E1EBCA7EE3A494F805564A8337D65B5E48F2344141C5AB8006C8F080141E5C5E6ACCDF2BBCEFD82554A9287DA303D67AEF1D95759364F66152403DCE54C928FB6DD65FCC59ABECEF0C2518C42A6652A22304D5FB93AA247EB5E065F079F5C2FC5002B794178DDF18C08D4F714C8E9A67F5A7B97261A8190B247F3E4C6F0F121CE0B4CD13349FE3848CDAFB26DE998C998B7F02145265A75DB2FE79D07EE2D8983DFBCC7AA6DB249B1F01EBFDBBD5AF97FD634FB3AB10B61FEE408A2E7FF9D9E92226C4A94091CD46EBF564D1DEBDCD56F1B6B3830EBABAA54020AD7CB62F2C27C7EE415B884D743628CA715E8503C7AA4ABB69A33031B410925D55BD2E51A16B84C30843DBA6DDDE05EAECCFFC7D10B582ED3284A2CCCD91AE1C15E8B9173BBAAF7022C6C0515E09B1B76D95C4024514B3F40B950ACE621A7458841429CA9E6CDD5B560D34B7B6301AE11CBF94DA40641CF72B92A4C6CE3AB7161AE57DC8E36A177180B72D87595DD45B688AF37A31D8A32E3154EABB1EDB4E3A9270E82449CBBF231BE6EEBA567620490C727FA41CF028FE486DDC755C1931F2AB7A04B8C8AF80875E770E67659C4E14BDFBBA98B3449CDB0EA850FD53F7EC2B6317B5540A5AE1F2F2FAB71ECA197CBB028B6C7EC9515DC56C5498E307FAB1D7DD947A87E8C8A45227EF552D8CD42E72A17E4455891B1D8CC4AB7F2EBE5AA5D54EDE7A74064BA2358CF01FFEDC351E005AE27E1C7D15A22014AE4E53D14E70E7EA8721568A5D84DF53F11A8AEE103DEFED0E181BF91E19C6BDD08FF766D0A23AB24E7E17AFF858201357595D4B5ACC5FCDA8E93937615211CB5CA12BCCA5410658BE0C41AA27E1D6714022B93D4FE42EAAF5AB13CCE0A0B6FF6269AB6826FE3BFD2DD49BF50BB453BFB4BDCB488207DC12A62C514D9F28F5E5E7F987B3B8D26FB962168EF187370F3BA58163768972F85E6F664BE2975D251441BF55D940743CA1802387DB4108E105281B8DBFDF159710E47D11ECBF38A229080613CF79782E4B51A5640CE19E60A815D071C4C87435E6436EC43D7A8925C360FFD1A12520A8C7DCFE642F043DDB81DE31849F94322413B3D923E7047751C5F15EE9F3266F85FC763432E43CCF4A21F982E59FF3434AA0CA95E5A2B01F1142C21A39782F4F2ADD6CEF451C90C9977B8AD8E39323E03809B02E8BCD70FC3B30DCA21B170A145E0D30D8E2C12892B468363F6D734D1A765BF4646477EEA84056D8BC78AD1ADDD3D7E74810439D7D7FB53BC3FEBE8841AA11A0DE736574B33F47904BBE3CBA2C9F8151968F2AE059178D515B6D6282A9563311773DBE4AD146FDD6BF1505ED78A0FA08C8338356EB805846EF4F45DD62606CB40FA2B1E2BA7BA2DD1EB1DFE1D6A26EEBE011187291F75912146CB49DBD4B2F4E63D9479C15B95CD9CB8706CB1B092535B1F865D2CE69430BCB30BAE0FD6699C206ECC08DF6DC92BA2C7A2F759B997F797A5A435E0859728EA97DD0BD802638AB3F6E0E55E5EE75132F4DA8DCB2E9E540FB0695DA509690681F3261BFD46915AB1A2DA8E6F98412F4BE86E63B375A3E7B5816C49513C9AA706DEEAB9E7A42C8B74C845CD4857B1F06D53962B3AEEF21610860DF1F404FCA5CDAA7978978701ECA739AB324D7BB03C06AF49602AFD4D950B61F711AA07A5399AF3A65D34DA925A8FF63E49A971E83848651D60937A3DEA05D1F171745D8DF8DB7CC50CB1C147AB375E1235D5F8545984A7A330390CED0C9A558975F8B37544034FB00FC30D3013D26E597F586E3584C911C0D640B08E84BF8575691CA6495DD185847C9E2688B40E958CBB0CC6B2F4C976D799648D9145D2DA269D13B993AB03C7D441357D72467286EEDE5AFE64AB3B2FE3C9E8017ABDFE2F73A11D30D9C151DB1B56066B7C0595F509BB84F580874352A18D2463DDEF21CE3D84FE05BEACFADDEFED85CDAFAF5B2E9FDCB9C8C5CB9A0F02E747BAEE0B531158343926BA74B143D7E28D81B9B59E7F19D163398A201C14E03830D69D93751F1F4DD11217936862C84B6DF043ECCFF4B3ACCB0F7D81ACC2E94C3C60179E12AE8879B5905B546F44817C3CBF5F6CD6459F4F1ECCB96DF2F504F9FD46CEDB7071DA033B329AD307B2937D942A9F30044416045069BE9A0C2B21C3BE634BEE1738ED1CCA9A3DF4DFB35D5CF9F20D4E06C2419A282E5024C9F2E65F10AC3DADF03AF36868125A4932039E4B1F939563A806E1839CEE9C5E29B24F7095C2C6C985ACD4D9C6952231653BA7DA86E1ADE430AC346E5C0522064E99259A841E11432312F112FFE600B9953B0C107413C151B34205B99CFD5D747289A058217893A16E480A3CFE87C30C183D4BEF8C7ED23A1D394F60404356C95FDB3B17C9EFA62CE68AB683D6DA8C630DE2BA1AD35C8EE8BCBA1EB43C43C9BB4A91C84FBFB4BFFAA40FE6EC73F18F71C2D45BB231F1BF78AED466F93829F66B0D45EC267A052D35735C69AC5EE7230A647BDA510740EED7E26271893E5BA51EB5A85C2E81E3EB54267C7E888616C806699FA117FD5125BC8A8CB0310937870CD099E0BB5E6B6ED28B6BFD087C5C4AE8BA71EA313DA338286345863C8951FDBCE9B88139FF76641E43B68DF105A412C6287803B447B8555E224849EF081FEA1420239100FC2D9EF8A96DC3D9DE98D60B9EAAD14141BC338F6F4355E2CA2BC0DE5C7C5749BFB80A9636757990EEBA22E82840AC220D85384736832A242561DF6AC2979D332702A14D00D34080330BF129B37FEFFC76AD46367D781EFBE8ECD9349C4834EFF290706646A3296954CE2696EADF12233A7C1AECD1ABA3B1F9E53FCFDB0D65FBD8B8357305BD2D72E814E09159EDFACDD006FED110822ACD8BAE7D54488C646056577DA3D3B6E129AEDF253374051439BAC1EAB9C66DA8E478F9CC85CF01521C70689C07D72FA42859D1E5DF9B6C67810CE57B288612C6CCD0B4BA9C5D9AC1BA489E23E1582C075ED6F23013DD81E8A3C10D66F30E4D05D2A6ABF487E91732329C7A816B35451518E16E08F7F3D1BB256875E125B097B2B63A073B52CA801D2233F54427539041646C44F3E37FDE9201E4297C381DADA67F45325C46B6732EEDB20FBEB8CDECA1BF425611631DBE34045BFDFE13C88A573C178707A29C80FA2F8ABB1FDF6559723E68A88D0514FABBF3BEA15AFF3A497F2E4B8621F1737C7ECE38F13509C5D74E61B7F3D61D51DB1B03C14EF59689F1E41A576940553175F8D61EBA84D90C528A35636E2CEA91BEBD026FDBBE957DDFC78B9D11241082B7DFBDDF7D14D3296562E6F8048F9D5FCD889A52A03B8BB42007E1262B0B3BF6867E1DA7CBFB89EA3CF53B8CAFFCD24CD9E87A2C37E564D62023315129A9CC8AE270C9203E43A25092FC201B3F092604F6C55805261C12333AE3C5656742C8D5EAD44E1D637E8A29013307B9751A1E8F6613C02CB6E62E1CB8846F92CC749F833B2B604E5A79C8A5A0318BDC5A108E16D9F155EA420E46C17B64E7DBC8AEBD0A2B7B65B21ACBF8232F019858A5F605BAFB12B43F84A6FF4A6C03462ADBF6664D80BF2B498368D5A0330959414E3E5157740D41AC654D003251EADAFBE99E287469CE432D2CB5330202E10A0BE4D4DB6B1D88198E5F8ECCE963AD4183F857C373A7EB0D222323E24743E78A0912EB54B083C24E3A9F3A92B0CB0D88A713AE282EFFA598CA89F215372E931571C65A1C879D39412A68600FC17A2DF0340D08A5137CC0B34DE564F7FCDB9B28AEF5DC38BADF5180F59F986F116BDABF0D5F6354A271815CEE8CD7C1FDC485C8707A03EC2A0FEA1C82C3DE5B8AC0A37D49A7DDF316FECCDC33FAD0F38A33317AFA3390CB259D0865504FA51ACF40C8BEDCD68583F374153DC4739ADCB58E9B6C213A0B4F299EB546CA419007E47E5EA81F6668D28FF23FCAB691A629E53F1419A02F692DFB7686A1344257CF4F3722C688AFF97E3768F66D94EE0CA3952C28C8320387E9B336D71D2ED9F1E48BC57D9A09E72CB821E4FAE87CAEEDDC73A6ACD152E51B679559783A5B4CD8A289B4C8C341F54A71BB47F585C98DCB9813914ABB49C678838C8D2EADABDB90A7AA464AA3DC455A204A6796E8905CFD99CDDCE269DAC7E7AA302A77C9AE9D8B4FCE579214E36422AE7CFE88B7D4A09386FF3EEEDED698056BAF8DF6F7204C6EDA3CA75F981309552F8112937AA18F336C34F979FBFA356E1D979EB4BDAB3E41DF8709DB1EEE8DE45FA34880A7A3C8910E305ABF6CDAB8A4720304852D8949C37F7E059F88D0AADC81329A84C77C3A76CB0F732A093217852D2C395DE89FEC4403510A88323258AB5867FF8FA5E32151BCD955E21AFBBC6B88B5DC07BF3011A938525CB749D2EAF078ED49843487469F121646B51CCD13BFDE79F648E9B213803A9815D391A05F12DEB805C1633DBAE0697127F0B75D28FE2C7EB1803B3B6DB753306FE294BA160E955D3BBFA2D4BB407F4BE90ED44F9ACCF737E65642BE85DED626AB6C3E5C365C8E6D069A6FF0B362F62A89E1F74486F6E38075A2389971F6B360C1E76082291CDB329F527CDA48F1BA1E23A0FAB906B49D2B67DE1AD3EFE4557C5D4AE401F8E13191B1778753CD815176A4B5FA5197C30744B575DEDC3B5BEC7BE41D720CBB18160A28911E53941EB401C2AF0030A0CF12F41178B36C4F9103A39BC1D0EF7B90A1DBC5881F4B46E3C1E4E19733EA5A8C4F0491AD435F11B46FAE30D48CCE2BCBA8DA8E464C637A9B21553C432E06775AD3137D38CB9C49E0045DDB2623DE7EEA0E72A451DB758A0B2F71DC11C233AD02E4D30EA68E5985D474346A47E06DD531B5BF5D91C748DF549DC09A56976EA49577DB4849AEB925B5E31082156DBCCE9ED00E9F7A68CB591AC5A624251496FBD9F5FD336C667C251487B3CEC688D52CC502DCDE0BC35ABA2D7524C85EFD2705448946F9B898669A96C055A6ABAB627BA4352AE40BB5FDEA61F2D2386ABE4479D6FD6B80BA199A1E0F60CEAD499C65DF5AA7C517F16908B02078DE136E169C4FEB7DAD5C51AC4B36245AC5CEFF33AF067966D4AAC3A8EE1D45CA4D30EE98F9E0BE9F8E29ADEEF821FAF91EA5B055E4188BBDC5B11438AF667ACDAAFDCCC1CF01B66970FEE855B9FEB59A67DBDDA855E735A8C919C3A51030F4A292A829554CE2D062504F126F60E6403AB0716D3E63C3197129D5616ADB5D54546340CDB3A43AA9FF60B577664D59CEFF3050005FC003602472945C66B60CD5B6CB4FD2446F035397ADD5887E432CDBE297C17C299B0AF28F6334B0D8DEF1BCD5E3C971364748453ADC227AA2CBB60D9C9451D972E366266812F684BC56CAA9FFF3A1F18D224534F5DBD05A48BFAF584A9209AA51593D142BE3B53B3F17F6F3D02354D49EF5BD81CB66532E189C143792609988E5926A6A646135EA742CBA79A9E042557D7300DA444BC39C7A23479757E82AB3C8FA224BA6F7121E61C861CDDAF54078021A405A30D4ED297047B34379A3B0BCD6D5F510C5B64D172AB346FAA3C1C7F84BEBDA217980993ECD56782154849A6209C97C121D801FC3A1A89976FAC2BF807954C1AA83BD9C5E115D33D1814754246839D4E55B024A2711FC322A2DA67011FFD93B40CA30BD933C2F9A49A1FFC0CB6FA675F0BCB05248133665E66BA41EF62D3AD9ADBC27573D810DA75DC24C829CB1476B02F16267E13BC8B35309C9A0A91DF28160E1A77341606872EDD5C05C9C8D8BA600CD31AA660F3949705ECD976ADA9C30568B2D14DBFCC95337D6F69924F62E2CFCDCE46E16446804A65B238371A918E4A94D82750A887A288568BF3EEBC8F52CF6237F50128D535B91BF4EA2FF5AAC4C225FFFABED80152AEC4EC8798B6EEA87CA5BEC3DDE6C11CFC6DA380983476B2FF148DEEFEA5BA7AF74AB78DB564803F04143128CE32586044775E9C806B555B7F53D0C3D143B01A3C3427078C9F006F6893640D46C6F6CF7717371AD75CCD7833D9530C81C9A215A8D2054C8B86BD2D5E6767D36352623F9B7A66FAE90F59CD56035E7376866A9009A945B8E4551E1FC9EA58AA67A1CEF4D875257EAFF45594FAFB49BE96C6E34CC3AEA4A9562D36BD27086D8BD0F45C6B57646D8964C0C760B45B2594DE339461A0764DA8DF0B31F69B3DB63234FB7E9135144CBC69ADABB532805B145EF77255D0123553E844286C75296DCC6472F5B941F92AA21F6608589DB0CC0118A7F51E94EA69F7BF9F90617B8D66867298060378B49801771EBA617C94E510E6CA8C2393B226F3FA537088E4AD74AA520DB3A821E21B32701B6A90E8E6196A02955A78982B0D9618D6B69822C60A4DDADC815389BFF9D50DD2A8229247DDE85AF75A1450E7E6326C704CCCEF330699990CAF008F1E93DC19378336D1810413CC414E3831A6ACBC2A570CAB68F48711013F01B2B974191114E73CBEC9038CF2BFC68BEB949AC9E5268E8FCE37380C85B0892D765FC3B7B5896E32D334D10C47C996011253135BABDB67EFCFF4F05C3F6F722970F18D186A76FA2D3E9CF9B09D22236373836D0D2582B41E3B19EC1E7EB021F7BAFE6EF0C19ECE7ACE5498F4EB417D8BAEC7B21952224CD88255FD2CC906D02561FBA96570B096E13FB68F6A558433A6AABD0EB92C09A6ED1A085CBF7E2B35FB75A778D516AEC0767999EC56F542240C068A76AA97A0FE930F29EAF2E19B8E9E237B4E54372A96FF7D64E58B34C3A9B542D22296F34E53D30E2BEEFBD717423E65030ADF16B5906C46B72FE3F39803C635384B7EEC1A17D462DC45D55D686D5E9703DDEF53E4FB5C2FEC33F452193A0205F4C5260F0AC02BB595726605F8149DFC007D1A468581F2FA8A3DD18BE93801AE11752748032F79A9D9C1FEFBA88BEC977AC8A42FE7711FFFBE24A30788BB6AD2F2413B7EEB8128E91A4E931019EFCAC0BC101841313FEEA6B6520944F620BC6D466182E5F96DB0C017F9829D768138A45D28483E583EB20820FA38CAEBAB5B5788EE091118871E7A210A991E79C385CD1E9C512232333EEFA081AE301F5EF432BA56434C19ECA15F28B752D8CC1EADFB143D2F9A092F9A3CBE3807B8D39AF0BB2A4F04A588FE268E9F789AA649B6B51EE57A9489EF7330DBC881456A621C9E201AF063ED639DB4CA0F3FEF7FEF523A6B24F07FE2AF3D968102BE72E47BDB1632921D8F1CC035F732F0F6A17E408F293CA1B0B94E9BA36AB851FAD0D5FED8CF810BBF59973CB72987EF09501EB27712F4F412CDB107AB26805058390420AFAF8BB0BC3CF0A367772EEC9105601C949E93EA5A43DD028582F0410BE55926730FCC78199AFBD03EEF7818D8383B3DE0715B737FB69C2DF503F3C30E16F8405BFCE2B18C3ABC246705748D943F5BF106A47B6F5C77CD4C78EB3D6E2FB633264C6D8B5CE5D6E654D38F527E231ABE16BEA525D16DDF72BB15396F775ECBAEB040CC23ACE6E0E6848080096924E36159DEC79C8D102EF8A32F24177201CFC81001DFE2231EDB1994894EEFCE18F7D3811BC3F2D670EE42E999722E74B4D346D08AD2CF6E0C77206F9A2BADEB79D181E3EB4D0667A3B5BC15EBF4B66864474D7F26D4C70BB56B375A78E179914CCB26785A6DBA0D4AF962418D83619FE322195408F6A5673E0F789151A2172B72581D2D5FBD0FB899E2D8D3949EEA1A7760BA07828516FCD2ECC18FA26C282739DF6FB7E06DE6CB7C71E837E83C90A19654DB3D48C4ABA9B101AC0D32C70767A860F0D5D4C50A58C02B51D5A472BB18BD31C2DD14E64D2DD0918CF09E966FFCEDEF6E4017A8F15DE2AF93062A1C3CA67EA96EB8C44330DFDCD93921DDA2E7152DCF1F7598A4A9F1FA4E1A304EB72C256253242677F778832D0557DA1ECDE2063BD4A0B1E30DAB8FE4CE3B1357E628581DA086B75EDBC975E7BF61F070810114C7824A11FB448D9E39254DC9730D67FC04CAB1EB368DF61EE44A03B6F3F503F199E4B49AFEF0546DA01E093C96B60A07FB4F8AC55B90AF7AC72C9DF37D4EE6DC04DC0B44D1122C2CBA5E524A0A19E3D5BB2B0988F056E84B5E00D9A3A262129E30AFAF900B7EDFB7FE791EA0A544EC123E88C977872DD5F47130C5A124B8AC68A9F9D0D8B5B4A36934BF5B5CCE27BAD5ACCD11E247DF9F94BD0F52D55EC082514A4E0CA7E6BA252159C56701DAF337AA3FD43716179CDE7E54D478F6CD2A9C4536E4DC3E1A8EAE06CD46E6AAE44D2BF11116F3469B9032DBDAF1235F2CA30C61FEDB6F74F70CB0989C81B2DD74D65A2FC0BF1CF44DB6CA5F685865523358E6EF771660BFFA9929ADBD57ADC532653228CF99099D65E888DEA1E666D69FABDE84E995EED3266E46E1F9A706D29DABB640B4C61245C245EB4230775404D830DC7FA1C41E7521CD40563177ACC7196DDE3FDCFE515AD9868B92A8FA50D3759B98CB47DDF8352594F675B141129052472A60FE3862BB7BEEBE80D78EC35A9196DF6A6BBD0A3F7FE0C9C257392E53722A9E99A0B692715EE92AD1F46D24556AFF18E883F4870B63C902BE9888BA026E672B1945510F6E5940F18AEA5FB2A6C9FD3FC6E142FADF0278415E4EAE2FC48B92C3F9990B4AB6A020E958187B24C44906524E58604685064AE0152616FBBC5611F3C2625FB29666C0091EC12F8C4F9E61DE2EF55746BA753F489B262B6863482D34B91621F9F88723983896EA9FA2A3BC3F449CEA4515D0A9193AD19F12C891F4A9A8809E954D16CA72515C0BA97683A2E664D22BE2002E7C97FD0CD71F870E244DF5E3CDF223E5535456DD52556A233D3BDA248ED2641F22F275F9826E99D5112A4A03C6CF8460C0E36EE23F07B427F54136B5E49A692F35C240D1720F4C94FF11791102B7457FE17CC9229B03F6A944E070F2A12B6846329EEA1D49428139897212A060CDFD9A9AE46296E81CEB1571014553C11C79B2F9A4E9AD746DC16BC8B2064D7C73931426E389753205CA0A0689F691365ACB5E10231DD1AB5C3714079A46751CA222970595107EFBDFE89BBC22CAD381EF46613E57BD2191313C57C35D1CA2EA72E8DCFD11C22081C77A88ADC17E066CB086A61149E32FD1EC4D92EAFC5DFF10DF3C7BF469D19F1BF0C8EEE118EE4990BB106545A2C88D3C90B3E1EA8CB34BFC581CCB2653F260D8234B899531A7A682FDB820EE73AAEDE0F35AEA666DDD484AA1FDAAC854E8DA97F6443E1478B9163E53FED64D312B1D25EB5720A1CAB027B00E0DC46E0144C89827B367F5F0CBB0E3E6A390F1CE303CEC752136C17F66A1E4A4DF115C6E807319078632221D86B96DD3DA1D9AB0BD9E9E63330645228E176529CB56F06B1E5BEBE6972BEB7FCDBB0B65019C337896343FB1607138BFF1CDFB8B7843438CF27561DBC1C1EC91D68F4C041F4CA963F6D69D3A08B9A13AEE40CF00DE98E27DAC6F1FDBF39D186BA5F4CAAA15E96AD0CD5F7599F1391C2060BE1C8BA433ECB46B5069DA487937247B5AD942B6A0BEA11B8FE160672F41BB5D13C8FCEBC1A7F332999DCF86FB288CE8B37FE6BCFF0F422BA40F5A49D26A9835B36C8056BB0D100BAC5CD413CA804E9D3A8C447F266E2D336FF93709DF232C70BD60514A1A7252BC55077B0C9AE6146F01256434F8D4826078C298E38E7A295E529E3DF380DBE2409541DD3E4F9E3C5606877832C02EE922115C76600E3C5E59348176425CC1BC0DA6C2992D70C3502A525CD81EBE615AC6E26C56A223AC4693BF1F919CD44840DD8C5CF0BC6388794B4540446240FEEEA2048CC5AD3A1BB6B7A2AEC156CE802DEEC897BADF59DF979BD50054B31D54DFBE4F441FF2B33B9E62B9A04EC417240BF9FF3BF3EF784A98626644768ACEF75442647F0262D665ED35027F468DB4CF458AF1DF91C33DE6FE69C30CAC8030C586E35E772E2C87DB88ABA7CAB69A0BB8C126AED1EA2D82C66EFC564B94E41B6081B08D78D3E5A1CAE7745F18CCB47CA99D8C4520E0FD8FEAD9011419CD19A9DC4795ACFF3FF31C3F83D30B9F8B5A2C55C68626C87FEF5D9DCAE236CE1B7BD4D170A409A9884A28BD282B3A3E7BF5E189CEB034BF5000AB32313DA3888F63297699367A5FB7556BFB452F14C6F922B28FB4DBD1D69BA0DD11BCF716EE1C6150FB15C9C43C13CB66B1396B718BE8DAA5CF456A71F8D5BE6AEBD9D6B94C7C01F01CFC093A15AA024CC0E5173E124CFD0AFD1ED6783FE04111098FD5A91230A5D8C4FE453610A80B7003C5DCDC946F9BBF7EA2C7E166FF5AE71BD8969BDAC15AD40ADE6FC0804F35C0EA4C75F811E638C717A2F272E0CA01D53AE41D8475BA3EED6F5C3A99B2D01670E9991F1A14A68B44D22E8866870654218B950B98DDAC44445A0FA44A1AE4CC4DDCE0284133F664CF4697C2705FF9815F9ACB6F3BA25145245B40A9F5379BB0E872470EAA61706DA461793AA8710645593F65097EFBB9330059BEBEE65C6A2F828391DA9E342FBE37671F4C35114B5F8AD3D1CC8014E5033140E1A30D8E85E95853FEB608B0F444F43041853A069D98A79EB90524D11E88281AAF78D23592D273E77D68EAE9EB61968996C9FEE874086C0510F349916BBDD2D64EB50E9F1712B46143306651A750D465EB95F5E6948103DC6817F01F1C971E405DE3758F606E4A4AA1E6567FE31228687743A978DF8EDB3FAE703783D141F03EE00B14F88C17EE5AD18E4BF7F0D41212F842EAD3F3C8A23586232F9BA1804B21D663AAB8A265A657A2C9ADD2A0F29BC436CE4A1E05807DDCEDE4F2CC6F574599E76B9FC6CB87C0C5FB1081F39DA41F5134EFACEA9E9D511FAFC5EB24CE86E81305E9D2A67FCCD4CE3DBC8E4ADA96BD2BD0EE88A4C8113434011CF5B3539199A3F24AFC73888F4FB07309D478AA4F1F74BA7D216D4B3F86FDEBCB3610A5A4DD65C8A920D8CF4D7042A498E6CD8347581FCB4A62BF4162321C6A1A1F124D5FDEF60F38DD0DB5FD9761B59FDA7602F6DC6CC5E79E7378EE55A4518338ABC3B5252471FA03304E78D3150282C4AEE0BC221813DF1D2D46F0706CD5515AD668AEF4C7D3A2D0788DDE7EB6718018ED3124D65458349177BAC3316C0F604419142E9AB33F00D6985C7CA53A4E5510FDC4F6122007FB1AC95A3B486874BCCD11C148E8E504B56F19D5FCB3C60DA2A9AB4D011C8EACE16E584BF10F1E2CA5E6EC6EFA2F3188A8ACAB5E8FB981B0CC96C7E4E1FBA39C1F1E81CED6A599578D85229E3BC82B5165071EDEBB4FBBFD16C3CAA9E9E4E22FE0AB1FB8CC8C37AE89950F4F154C359FD975C9F2950EABFBA7072B4563E9145420EFD2DBD169B7BE3DEC6CCD0C17F8AE8F1C213F2541F6C9808604829BCA13448286117F3101FC59B3D50D88A67BABFFA5EA60B99CE6134CF9266C67763ED1661B243F3206B9F8A949FAA2EAF6C28AA5CA3164A16FB0A88FC70504B40478089793A55E5B2F20E44A128E4F8309504BDBCB58B162D9CADE0BDA565D68497B121C0A87AD3144DBF904737C31DA7D24DC595509D479D8507222E88E106B4EF3701257EE00C8F6016E95F7F12D0C1DFF2BFB46EEB32F8EB19F358AD285348DB744C2FE5F09A4B89B6FCF6933C5FC4FA44312B3EBBFA1ED11C7A66AA53B9274FDC603A5D18BF9628D3C57D90950753E1370B1BBB8B23F45CDCB57088AC041A5D4F8C764068EF2F7B0131ED20B6FAFE7255304C98B293F5B9953BB6F3B6104A87B63663EC0B61AD1642AA459D33C5402FF0BE6CA5CD1F3333B69249126B3B019CF8139BEACFF465A0D82C7623E6EE6B3FE3F8B38E4E24C434780779910F3C6CC897D065A852FBE05370F6D2DD023ECB5D4A50CC9EF95368D4C59D3AC679606891B4C4A25236BC1E898CE22CD6392249C3A7953308AB92266F0A53543BD0E480D13A1177F6A02415328823F7805D6239CF55E902C3689029A1F5DA018755986CFE42594D9D755B2067367A0FD35CA406C4131067D25E3F197AC2D1FF32BC1577EE0B2971577623E27F7E0334C7C978F231E2F1C5B47B02C72517F7EAFE3DC4D32B39D50391B76108AE493FC84116D77ED5C84875F34434C73677A5A4F396875F8D7A1430E6FB629BFC167ABE210FE3A418AB9E972C856586A40313F7C9EEDD57CC633573E2870E81EC92C30EC66F8534600567AC4F976E51A674A369DA66EDB051E5BC8422F5857B579BD7BA22115AA186A5E540A8CAED922332ED917F3463E2EDD73BC6958B5D395FB896D223BA04DC2AD8E1B02DD9F496F85DFB37BE3B812D2E0D05AD9E599A00F84C4847C2CB239657A007A337F06BE86C50CB668C810142E7A1C0C61EF4C569E1520E36B364396018ADD531603C4913B724DE6CC9E504B82F3B96E7D7DAE742189D96A2D50BA8B85CECCDABD571A30A05E36DC4578EC8B0AE1302633392F198ABD7A363135A125C9D8B2C0F4411A4A47E8597B2C8C45FFEED6A046AA1024414E1A4E12E61EC7F8F71782B0B12AE1C480170092EEE0A8058CB2605D6C7C8B50B65E679F877546BC722EEF1014290582D73414AB6141C0F222D39FABDE71BA438423FB3323883787A20D50C4F38942538AA6AE2AA251F6E8A27ADCD474CE48785B9D6DD2FDB05AA8630C34DC2A5BEE0F4A8AA24FC411BF70DE6D8D48C17F8E8D4398E9DD8083B5B6A0B2BF41219727ABA0A3B3322FE11836904CED40D38CCD9B3988DDD806116F229BF0D72C53253B7D5FCD6A33B44C5996758C27D56D03718478334FBE18B5EAB7307C667AC7674D93BB1492CED5BB3552BAEDF806B7A43835990765D0E4324DD609BD0C0024674603E5382C4DBF48384C3CAA2CFA640780A2CEF703CF40D622C5303169EC281B45C4B9081933C98D5958369671D142330085E604B1730B242B033DD21FD28A458CB0D98B4B255295CC5D7D213099A19E91CCF44FD7F7310BC031BF7AD45B0FF4D0F5BDC0E5265726899323E5385FB899D258DA5BBE1E4B228CD324895D8645C8B8CE8177F6C8752D2198EAF94B83649875783758F7CAAA77406281AB66EFA08EACF47A50D587AF4BB49EF517E417DAC42D4A7DFA3C031CEF58720A64DC84B66571EEDCBD801CD135AD3946EB34148D314CC937AD276729B098E85962D46F1A808E9D55725FCE32BB410E947A668F666E13A41F3C4E00A7DB2E2E31E34187D8817F0DB3B99A289711D9EC46E70CEBDCB1435B0BB20B74E29FCE4C0A161E01299D4DD4BAEDA0842ED18E60E5A5079109A7B7D6A86289339BC7CE2D6BAC59077C162FE8C61405AD89847AEB8A4BE2959C7FF001AC2D6BCFB01134806F964FF4BF44B59E98702FCB7D8A284CDCE207697274A58510C11C5497D1E6CADD6AF8F7D7B3335D0F17BC979642B5D5D3F604B2AAB78DD8EC875BBB8354F5AF02ADA7C43D1162782E8075E0538872482B0B231B958EDA07D718919B220B7131331EA166977F06D6647FC4C61EB5ADE813D41BFD159130D190728C55BB41FFC2C7D67414F4F42B1553F35EC875D085683B46B2096932C8ADA7D7F1487A5A02371C6F0B637B3ACB6704FB1BB114829055DC3C436B4D4FA15658F108BE441194ECE191CFE3834AB1BB8F006AC7E3064D0981291D89B3C18E6F4A5CA3871854DB55C899E2D113C4C913B5C90FC671035040FE596EF9C318D368A10042295DC3E7F278EA6D86342C2013C79F73397A303992254E550C94F42AA67B8D6F931E2EBA86BA5B23B733C5F977E07B185F01D29762751100722F60E038928458F58172CA42FBCF27B36B24B07924AF886F22F1927C2238ACEED77656A032951AB1645E6E8BE86AD432D9C340C773192282C0A306CC3BF0C67BA7B2FAFDD2E5B5CCF7DC42CABF77BE2B613C5D4CC5F8AF8F9A28B6925EDC9BF4C8855DB28A208F864CFDA70BD5149BBF2C88234D84F07BED3294B8806CC6910EB971131D9A60BBED895BDF80D58B74A19A25797A5D52F9339728B6D178A2882128F1FD023793267D0B06EE464B5B8538593CED67FC8B0C28FF0430927F534B6DFA28F7614D76ED9CE70BFBCCBF2E7266D7A3BEB685734C2281B14C1C4BC866A0F96CB997CFF1EDDFAF4762E91C41BE8C0C51DCEBE3B0C4D9104A58DD3DCED43D4C53D95C220D2BB8215EE559280491724355D34EB08000364398E570A21FA4CC31DB578461ACB1A3D326ADF32E612B7CFD43F41E6DF086FC37AFD554CBCAF1CDF93F2988794179BDCF5F95E2E9C6738070B1ABB064F6E846FEF66D7ED8604F1CD6AAA0B0D920312FC8723C3315D4BD09842BD16BEDEE5148E9AAE5E8807560CFD0A80C8C1529AF821CD07FF543E9CBB438E3A7BD34C48DE2DF6211F67FE598B48DCAE71E656B391120B275C21C68EE8E789959A69AD882F09B9B43624CCC52F25A0807BA628F3AF0E1D4392100585D036922758E568AD0C51800C70454BE028EAAE7D9A2DB7D7882C6E7ACFA84E81B57960929BAA1FD0ECFD0D7A52C00692C70C70EB72350BF5D078D05B33886F46B89DED9A957CD940237E58574A7402CD86802DCFF9621FC23CA1E8E46684DD7DFB913BD1D5C7B3BE0B2199EA240157542DD6D8F490BA76A5788200A30E3C93014A8ACF10EFF757EA561EE3872D45D7C777C9EF0E2900E572F899F8E1794BB888AD5A653D9E806B518B7E6808ED4DC99C6533F9A73F05CFAF97338654E49AE0703C9CE145D348237DADA618483022FBD7DC2FEC9A99ABAFC172B52BC2D190F4F6E174C6ECB624B2CBFE21DBFF3F0DFE8E5E074D03B1FE58ABBC6BACCF29CD06899AA80CFC9FFA5EE5FB668E78C5154DDD3CD88CF78CBDB02BB9699C29DD92CDEA5F8C6EFF687A993E79DCD58891A99DB6DB74224833954A055890382301CB1E66EEB5B7AEA8F8D184EE6A32269CF57FDE0247D07614F368D19477596291CC043914279B4939F30F3FDDD64132E7E1C6D6C55C12EA54AFE9AC53D0920D5AC394B13B9CCB9EA3CF02AE345CA9ECB0E778F96BCC7C8E89DE0269654E06F002E04BEDFA3B2678AADC6C283FA0855652A7AC9EB3F3A64379E9BA0BE25AFD5A37F28463212874ECBBD19618A4CBCBF4EB0A2D200AA63ED6877E0936121EB3152AA9A9E5C0D636C83C9ECE29B231C20EA334A5FE16CC97E8F3BA61DC030D93B37E07F5FF5549753881E2CCEBD5C60D2DD2094CE7714699A98504F55CE248EDDF851035BAFB8D5CE881D7784FA42D0B367C08D7303CE2F9E6E0C95A01180E367E6942C6047F6119C7A3CF3E52792FA6A3E023549A4FF30ACA0E364695A0FC8EEC3FA6F128DC6C09EAC2469563D6962B2F75F12E98334EB02A38F3DB31CD1ABC07B058C8D00CF71FD44BAFCAAF70B86F1447B66F7604FB97A3EE6A3E4CEDB40DE675C159CF65EFC08CDF99D1BBC3C95F8BA52C57986F503399F967AC665652507C2BE3386022E8211FD60BD7BF33EF86595E70CE9F0148DEB76094742F4E04EAE1639D28976721CC2EF8CC55D4FF55ECA83A3B5E5DCA8CE8C66D3D5E92D21208EE3820E8C61C045C0C16D4A3A996134E7F378A94EACFA4E043EFCAA6ADA96D3508D1661A69E428957F45BC0F7F818E218188743B74F9B73C58779B39F14B74E1F42810AAA46DD1EAF504ED3F895FC4599C0260DD9BF03225E43FA5CF592EA94ECA073D8C4B73AE11B73C26C7D12CA8E81E34F161724777F1B751F436E6808187C205FF7A362DBDDA327A33F2465DDA6E4E5272DBBE2B33EDF567405E167ED4D15996D5CA835AE3C11F5C04B4AC3AF6090528558CC2F664C983E91455E0AD6BAF100D4DCF276C00879590769BE8C52687028695A71EFB6D19EE22ECFC184F2E4A9851B293EA43F94F30F4B5BF8A959D5AA6F0EAC15BA5FB034FD1DCE8BF16CC269542FF6E417AD635B43BA3FD84AE3F7D30A5D4DDE8C20741A0D4EF5FA32240ECAF1C693F37B9476164BEF5834AA872CA5324EF3C1B006133EC92B033FDBC710CD1F233960D94ACD8EA4F7A8619C338300C14670F77E7E07F266F03FC00E4211485FD2B1E3FA8C99601C84A9E4885AF6054E08D83F22D1F769B7403A4DF8DF7F5EB4F997E36DE814977D680EADD21CF4235E07AA9A90B505027E959245C1B2D8C657FA4015AB4B0CF9B359A5B7464A07667DF6E93CE33223B021EAF0FAE2E693E579AB807C91FE5A351084FE84A52A9DDCC99845DFDF04FC4298AB59568FB2AADCF727C4902FFB38698DAFB505984904A7C72341CD553EEDA1CBDF986CEEB9B5A684AC1C4753D28842D5E33AC6747F16198B40CC9565847E216CD58A62C1AB69D26E6A8DC01EF260D7F3B53BE9B33CFA43198F8D934885592C6ABE94F141050EC0C5BC01ABB92867B558B56469E081B59B5CAD086745620CD6244081A996A224A4838EE92FC82903D6F544A60F482542E4AF9E969318D889D55FFA2492CE19A23FACBC7D578842E4D94A34925B79FEAB2D313CCB44D3A5FA9FD4746C4D4D0AD165D8562FC9E6664B37A7E948FA4C68D68677CCD6308643CF482D19FFB4352FD66F46FAAAA02435D1DB6E23ADA3F407F0608BD2D1D91368FFF6B43EF7BAE1E5FA4775C8EFC3176D234030DDC17287D3CE7BC42031B3368C2AA166EBB736AC9207901F1560953130BDE08C8B9913C6C953294CD1F23B4971847349319985FA450350C6D8FD003CFF9CC85879941741B38D5CE7066EF95893D21D7F399A50FE4859876141CD54A171ED8361D8FF60D7B9F1951C75F3D5B208A76C4A2A737C4B37AEC65587F8DB46719BD53A0E752B8F8415352DF613C351625036AC735C61B24EFE5320E7C1A8C664667C7D1ED56F84730CBA28088A9BBE6852D45C7AF98D35373C0CE09FAD2D551266DEA0EF15CECC77EA3B74594DB09C786C144D9A8F57C1A67C2C9A2ACB20D233F5DEBEE8C6F80452C4FEA09ADFD958FCC0C7E38690170798D349ED5401F44A432710189B3169D225DCFD05C48ACA0CA7FFCE5AECA7A817A3DAB9F66916CEC59A9658D54497E347812A35EA81D59076DC227A5C46FF3A8F713A87C6C23AB32210A6AEE2EF1992260AD3DC673B247A7EDBED618B054273D5E3DFA1626C6FED4E737BF87D19C7CEF15E7CB0CE738BEE0C2B713AE72D3D8552751821DF0D05671E2463E31E47B7DB38B07E720441F476A509314D2EFB57231B2DB22ED59DE50645E08DC18758B6F0EDD84DA698F8D6170EDC1E67D539CC73DB262ABD4CAECABC29644F3652716BC3B22903A63B572407D1B21BA49E14567E5B61F2BC12054466CE9006E590BE4E79A029892C168539E334BDA58C1CB2EEFA3F343FC018E9D27B988D498E17EAECF848B4AD53964D5FC1A7A190813C7D26F1E29442090FBC9497447483816B849CB928D3FE197F683D2D6C93D74533E276D787A04891472F58A157341B6C24D9B33992C35F1CC8E751FFF62CDC73BA9B160519BE7205827D0643DC57DB6EE1E4B7DAA1B03193F4BDF1DDE68FA5C18105CCD70CB56F807107152939E73B30B0FF04ACC7E5C98943DC046CFB112F9E1E6471F62B04AA3BD80FD87AD927CD546F673AC11FD0715A1CA6D24CD47ACBFDF676FB5A2DD54A3EE5DD637C94C0321A39FC7A6C27F2CA880AF2F5CC14A65F8F906E1C10CBA5FB090E406720609733976B8DDCBF8F1C973E42FDDEFB2E4BCB17CBAA8C8962921BB5564821A26F968027998C7AB2B23E22FF4DE8304D9F6AC85726C0DB2CB5369E3E9A8BF45F4A4588F72E06655A753D80CAF85E12C643AD2E45D350E10CF4B0481E5FB89BA36AD2C029AE6682610328255090A79317847FB7FAA3AC226242168A5A064AEEF4365D72EF5C5280BE05030D3527F8E924ED1C5F20E3D5BF167A3B314728BA10DBEDE0E366EA40ACA8D792E4E0333EA8F0757C90A7FE8EDBE3B2330229976A2EE0F97DA4CDCE4C74D03586D6E78398F5F2ED72F776F7AEB8BC59DD3E588AEE14A08C317F9BA681A1E01742518CCFDAEE0BDDC4CA65159181065BB4FFF33472306A3CFA365D2C47D7AE77DDD288F62B41A1F8AEAFD6F3092F9D2CDF045FDC9B2B70F55A3ED106F7B0755AD7858DE3EA078387FE28CD222F72921AE3290E36F964A52CC05B89B6DB187783252880752FDBAA1B9E4B9FC196C678A699E3DC25FF4A58ECAD4CF4D6D50BB8EA85CBB30D31BAEDE688B4C1CC11EE8E3820A0B8ECCCBBDF1B50E824D00ECF9F6E3EA18AC7E214F2F407160B129AADECFDA609CD8C3BAE17A38ADA734052EDC8EA97904567D18F9A60E9B6CDB47F5510A7BE01E8928EC1DC21C8A5EBFBC687DFD696B8BD1594DE71811EECD981881BD51DA40B164CD7659F2C0E9311E84B207103D9B1857B74D3405774F15B7D504BFCA2601B0A6137453F7710F9CD79E3996C75697DC4B9E2A685D277725AC62F05965F961970C6CDB38A4BF80AA03AFDAF101AD9725B29BBD4FC1C1CEF2CBE0856F7BF364F12046F39F9232195FBF4FDB61869B1F4488DF73D22454858748C1D86E2D115DCC529BEDFCD3B19D4E2A0C2D1DB9A7649C8286F16D894FA1ACD47338A95C7060DF5D9008B46B3FF7CF0E200958E9FE4A6BC8F40193DF184DE109D00FE33B07EE4A7C8C1868CA5A9C1953FBB0510FF11BFE8813EACC38ADE46FDB09C1EC6E39D616D5601CBCC583C0C6101AE34A5D94563C7E4C45AFCE6FF3303E2C7E0A19ACD211EFDE85994C2803583B4B3F50548FCA0AEF2A17EAC8D9F8720BB91FD103854430F83763A2F656899E46CFD739BD3672E92FAFAFC8F7FC0086D7F17A72D864088ADF05381547096A0079F54B1250D68B7A20538599C87814AB5A6FF4A15E844611DDFBB34A635E6254988C8881499A9308FE14E2CC9C476D8325BA299CDD1613053D908895832329D90CE3FC4A5927927764A948408C1702A111F0F2679DDB6CF1029514D620333E2E63018BD3FC6A5493848FAC57DB8E15CD4AB066D4CB664C29BD1B484CA51058ABE912397909EED0C786313F0653906C038F42711F0469BCFCBC04FAE5007ADC58F50A873E0AD902717E6927BA6651680ADF0C73663F4844E616C04242A258E8E2FF28C870D62BF2A7E667B69E1ED19FB5DDFDEC3DA544FD912F2F6889C3A6F3F6B600D0BFD27DFE78A924971049B76474B92C003554AA8A2050AFF6113B7219B42B846D6E2FA297E0B534FD87ECABAEC95604566A1E33D1618BE063E59EE7F456AAF0CB94DEB6853228D0B5CB69485EB73067A01C06735C5F1CAA95CF60F5ED13D8900AFC83E70172463DF3627370968506AA7BA03578438C07C6AC90F299DC1A277AAA226C25628266A45B2AD89F7F060206310932F8430D2635610E68158C5A1FAB4C2BF8A3588AEFB0BCB253849EF3C74612EB4B06D86703ABAADF4698D2767FC274E68B26B3974C2373FEE4CCA5686B95D7A3725687531153092920246F79869D6BF3FD2C9EBBCE7C8A1FE946E74F0BF3E217F6FFD86D35086840701C6A97B2A86CB1754AF7CACF123668B97C32B2D78CC23D1C2BA3BEB76B6439C27E6B65A2A965B4C7FE08AFA633F1B439B0768F45451491C5227FEB34B22451C83CEA4F17257807B61E7FF3A76ED78FEBA79FC95870C23E00782A95B6C8EC85D428E1AD4463EF19FFBF3D2375A1B0030FB91005CCCFDA06927ABE999DE426D9EAF6A346B42B799481BE18D796642D6EBDF8941160EE94DE876D0D5F338F8682F795D812BCFC3345D90067C2218A05537EA8C80DFFA612A6F14115D752ED4B5E1B14E250B8672FF7D73889516192120EBC0BCD208986087F1C885A374FCF94C902F51452DC7E83AE97EEB83FBEAACF0B7559DC7881BCB55B30856B690A2FCE01C27C9787F4FBC5D46230317FB75FB8976AA0827536501A9D6FF9525849D67C6ACFD8BB392F187D2FBC76DC6F5085315E55A383AFF95DCA013EA2301227AB3CFAE135BCF199AC497AD59B6A6B41EF4689D72CEAF1C432F9B61CDBCEE3C089BBDAA1A6326E2BFB887B4F392A4D3A968042BE2FFAB89039A5A8A8D8F2A6232E6E9D904E9584EFD3A13C9CBD64C8924C143239F1B4457214AB20953310B8E7CDFF02770E02D4F03B87E60C7BE700F104EEDC1CEB74B4C7E7AF63996D194CA93EE6083471EC5E7E6CDF8B1837017C0AE612934B5AE1AD9C0FB7D015FA124CD2A3BBD2B1D1A2F08C194B2EB51198FD936BF49C7B5C66E23A789C08DD61ED34838D9577FA0E57A82F0112F6223F341A90BD5D60E46C6D1A122C1CB2806C111424A266512C14CC689A3FF5E37D52971ADB0BD73E7E23648309A256CF187559A91037D2FAB2C1B7E17337FF3818AD500DFB08011662026FB424AF6D41AD9CB0D47D42BC2437EE9A19E47E8370195A257714C61F08A269AE955A499CFBB62342A1E6A88D086A2374428DB1EF03C6906479DF95E46C63516C0F4D7F2A2BE1FCD8DF183F02F5AAB7F195D287477EE0F60F12F185174EA8CF20C9D0C45924AF6ABBB8384B88C38A2BF6939278944242A3CD8EE76A28A2D1572E2A2CF05A72D748D8C5A9DFC7E06BF6C4CAA7526804C45610449849D17247D4778173832949B35FE42264C95B5718061A736DC803F0D84C652DDD0FFE60F3051A3296CA48F31DD3B3A44E68D0F6FA81E1ACF454B14ACF1456954DA1995FA5A2EC559F734A858827F115B494100F6EF61F48EF4D70358BF8713CBA1105E69B71AC29C9A0734D50AA4F05937EB5E4EE550D768B6D2FF956E4B11EA06A533B0BD5CBBFBEBB0E292065454109AE1733426D5B6F7CA6166FAE46960DF0748FCB36308B6AB741884748B1504AAECA02BAEA033FB7AB868DD7AF19519268C798A6CFDA52479FEF52238E7D97500505DBFD0B386ED89CDBA67803D0C504BFF52F91C7670E8E4941A92DB1B865C28E571D6BEA0DAF26BA02EB0306990657A27DCA39204D45BFBAC3053E0EFA752DF19FA5002F61C449DEE7EBEBA96CEB647F1B6489229F78A69C4E345026E00E392D60DBAB40DC869F5A148FEC046D4572C8FE52690DBE77A21E6178DF577024C38BFCAF75A94E0D909043443AFDFA988E60F48A63CA19C3AB564562CE6091246396AA5DE8FD7501390256CB21C602A27CD000996700F7ED90B0A7315F42A02F45661B2C108D141B3033BF3F84EEEA52DEF4A60DF4B9FEF1F5300AF3D3F273879E0B58343EDDF3324C4D0FCFDEA90785B285228ED662F07EC8B17F8AB6E6E89153CFE7C416C8EF6F01BA6F394FC1771DBB6E8114B6758FCF8AE56F60CC6EBF5075B5F7444A398A666231928C947BAD5D3BCE90618EBD41DC328484DD997C025D7B2D736D882D0230719845A751BBD14C253415B527447D49BC37228BEEDE9137CBD09C3613AD94F92E4E70B998799085327C0C7C207FB9B9E1767C7F5997F85DC8B35604AEFB219088D84EF1771A35035E5DD8F5135FF0C1587887D982BED0CDEE2F9BCF1227902FE19615CC799E6330B0F7356CDF343DBBCB7D5D47438DEF8FF538471ED237137E27A073C9DB9790B72DBE387496DB14E09D75DA18E977BCA883087F9340112684129F14EB5F3D8ED31A02B73648FB3B4F19717B546112661D386486347A99FB53361928C0A1A50BD19A09444002D9264FF794B0155A77334C078A0A7FAC70519AC0190FF5E69BDEC314B28B8533DA5DFFE67BE2B5FC4B0BCAD89EB628CD9F75E66A19606A1B9E602023239E9E0040B70C554674ED8C472DB6B144CA5B7D7622B23872226E357F27C03565C3AD465140E0C28E4522842862DBCF6732C7C8C94BAEDD01820C42A77E3A320B2440C515C4F2F13FD53839F9CF04789DE46AD675F28052958C2F74B835528FAE3A0A0083E10D0D5DAEAD5EE3494ED90B7B408AFF891955DB4563472F20AE8D953F96368AFCBDC16558EE09F7749779EEF8459DAC435452159D0B772EB4809061690468444B4C0C88BDC72A69E75E29654BD149120651C308DA1B541C870783933F62139954D616C1A44552EB40FF977DE3981D88AAA97507C0C98796CA067E89E8FCDF73D0A850C7A8CBFB432CF3665610203FBE72CB126532DD6BFADE6EE845B73958A617493BFFED582F85F6C54BE1323F9C1BFC5FB1162ED5AF07BA7B4F3FC713453075AA423FECD3B8D900CED6C569C679173C8EA98A1DBEEA8D4DD7D1C460B9BEF79864D13D2B01BC94CF89268CD06AB09A83D1BEC96C3AA55CE4ADA92ECCB33DAFB835CB300D5125C3D02213236ABFD2AFA99D7185ACFBB18501D77A7B48328E681BE6B3239C1E94DAC2F315513E044E91817130F04862FB19E186E16DA1A30DCD2B7CF45886BF6485805AEF374CFE8CCD8A2827EE7350CCFD1CFF8EAE7F0E4256198CB7C649B42A13BDDA433DBADC7E1B831308ACCFF7F282A08DADCF66D69D4B371ED9131C6F895A300DD684218010624E97F2978049F56A75533CB15310492BC5A06C8A53049CA79D0B71CF5818B97B42E5469E07B82BA5DA21D67D286B51BBAE931A04CBF68E61F9D8CAC841840B6D63D5522F46AEF04868A12DC7939B2E1BADC7E05C58112B716F5BBF4D4A788431A03235729664E35F906188E4F449FEE878F2CE456165DE1ED4A4377B6A1792360AFC88392238AEFC5C73755A16F248A14751376106BBB8429D732203205B09B13893EE157806EB071F572BF928F4F18C7581B0BBB8BBC71F1E77F44DD762E940D7F3CE51DAFF24761038E60933B58ED835660C35AC4CD82A6B38B3216FF75BFE00390EBCE7FA2FF3515CC9DA02D7417DAE5D1D44476BADEFC56B6C4D02DB69122D054E97EB610F065E1C522C39F716964FEB7FF5EBA716C85DC88BDCA977FB30704BE7726E15BACADA9251AB255E367B01922820D8911500F2BE6D4857155BF37C584FFCB9C65A8E306381F6E9361AE5A71742D7AF5968BE5DEF9843F5AFFE84868912827151F16A43BB0C69A9F8591A6DA63CF27097E1642DC7463759FF3E0E3BA47E958D9A562F23C4FE2251DCA1A3C35BDDCBF6A05AA75361329ECC3D5DEC3C71E7C372C4918EEEE0B1D867760D620DDDE55B0E775A19BFD19050AE3E08FC8298F66905A01173E9B5591C27D471ADDA883F5C87DF394E337B3BD75F156BC0A2236402C664CB231D283242566E36B08F886A7875259B139F37DA9C299132C1EC2847AF3A0DD45A840BABC36F6EA477295754B6F61139AEF643037C5543F111A6D77243F0B3D19710021DCAF3BAEA07A4A17BB9059EF268592892E2EB994B94F1C5EC3864D854AC60AFDE06AAD0041B3A6B1FF518DE79F9ACC5E3BD5EB3F5931A0F48CBFAC20C60CBAFC4A5E869804DCFEADD391FEA5E60E8ECED3456EC0B07E77BA7BEDA1CA29460455B36B25435B92B5B57A2F7D2A9940DB3482F66EDE38F56BA0CE8B92B28B829CE3B8B35A523C4E54717BB0438FD0A714BB6ACA629330F5887A8020AE833F83FF188BC419B739B027B2C5CC251E0432D857235918A8B74C6B25B78E83294C208E9BDBD99CF2C98114DF3674E803D9F3B987181B6BFA3A5826A077155AF3FB480F95BBD4BE933283F8EC9D9ADC58FDF1A120D1B13E29CC591E8DF44CD5DB900A68B464A5C5002C44C9B32FB516E861FA144F5DDB21C1CB6883965B70396CA0AE8F6C39E0B8DB6AD38638075DB3CC5019B28F4737D8CD24C4F805039CE09E2605EED0226DAF59017D84832E3C29AD03151701F1F8E4D74FCCAA36D4AC9B44671926922A95FB508F6EA7BF5B02758CE8E77DBBAA58EB7C3A9561BF4EBD27412395082AA6140BCAAB8F39D843E1A095406043B123AA9B6851A536566ADD9056DB6699AFC1A11C853A65B9B984C81D05B5A12142CAFAD82B1B5999D8349FED74A898525AB65CE429C499497A50DF3F71925C784A52E0BFB2C417B12F7AC83DBD980B03D5E487FDCF97DF8141071EE96F09A5AAB538F97C730B2C7FA4F131260AD9B17EA2EBF07D8EE3774541EFE7E5FD6C66C9A39577B39EF6B4EA7311CBF5A795D3FD66213105EEC3F3EB3E01A5E96CC32154C01D12EF4F6A9ACD4390809E24A4EBC77547B39A5F6D1B1DF0E1A3EDB4A583748AC5E49AE3902B0B7981F0888A5F14E467F5248F8D5A893ECADC11594FEE187D129A4A557C0273C0F535F990B408219C883F3BFFAE5A2DF8B381075E564099BCA1AD8C484BE468232AFA359CB612BF837A87CD248EB7C8F28FE5E1A2B35D605A6C41BB78E32435706D5FDC1589094DBCF9EAE11CD5AEC5492601E0D90E1EB432A43F9BB32E134098FE9EF4D1D992630B5CD781D904C638DFCC9B449F7034E3034F009113E1E53D9C6ED138E548C5681FEE8D07D7C4A52DC5F11198512A4112FAA49255B5FB5B3A8D4F42BF2091E6EA5F4C3858C287B073F501EB8E21D8D7F56E5340604F4C6B751BAAEE39C4ABD33E699DF1AAB78FA4F2656CCBFE5FBCBC159BED0757DBAAB67E0585EB55EB42B0D8700ADBF2FC22B40964A9A1B36D082636996CBE9870DCF0E15EDCE37C4C16E5BF616E1E90F7CB4B1045ECE38CB2D558BCC95C16AB2EED4152A260D99FFB1864D3CFAC28973CFA34D8CD2FBEB85CDE4A9FA43B2D4980FC2F38CF7821A0D3F5E6A535F4B6B303C22A02B24F8B9DB42B4ADD627D5D501F5E5EB6295F5A0EA67961C50DA401224B6098DCF70DDCF2059D563F162125E251DC83ACC8927374B052F78E4F195C6F532F6847E91E04FCB2A6DFE19B28560E627A06F012717E90B8E4200F0F8027FF5B66034D5D36AD690AC2A0BD7A64557859D4CF11354BFE324633BB1340A0C55A576A440382AF89145EDD1CFB3A56BA3B181599854E57BE539EF0D8393993AC24150F805DD9008EA6F19A4187F7C683CADDAD94479B055928FE69B00EC811229782682D82D9B93B02DFA4E3CCA4A52FEAE87B0E5F28DCD40554DBD264549256A9AE0BC81272D135002844B191DFFB3D042C0C5D1B0D2A75F0F9380A241B0FBD9B8C61DEB7A0DF006C1EDBCE485316852983E963DBA06025D361702F222BF174A82003B991C987682CE3EF9788A9F24A1EB764DB2A9F1D19A81EC03FC4343714503605EB26D42D6A8CE3BD40BFE8919ACFD19CC0C2DEC38E60F6D79EDD90BDD4319E6F4D455BFC9FB5572AFF2767C6118A93137E7BA0B01961F7903F7961649B488C9CBC112CB1761A2B7CC6A6664CED2D13A65ECE5A861342370B720AFF1765BF36E90119FA2E41A4ED4531BB0B9954311BC6BF8015A85D62EBFFEFCCF5715CDB545F2FD71592AAF7F7C67A51B4FD74347ED37256B4B874ABDFCCEF08A1EA7B932CB56D3919BC41FFB3F1259149FB60BB898B76C017678628E872EBA97BFA85A8539326A5CB44F76EDCC28A0A75F46C215419E57A7D17B149A7D14417D5B1E253C27D52B1909C6A2A040BEE625926B0CD7D70287BAA9E469AC9B0BF4C01683F61F51A63511BFBABFBEEFB03924BE3922AA31A894814B25B32556E1D6E3B2C4614F0C5829F2500FB6CB3670D5948EC176E2818F549EB028A3EE998E538EC8FA8BD0DA961ECB14E42C5BB55350A63B2BF2AB57CEE201187D84EFC6DE748BE29082218C98ED65993920F0BE55877286D021FD7A23F5655A7A451079847088463F502E81AA1FAB46A63C92254E529149602774F10BCF2470BBB1454C1EC9C9E56EAC4D5847D1F79C84F127559235EBF4E94952D695436881F3A1D68E1A15B7AEA64AB05BCA27D6C749BAE5C5AA6232A048C6DA97402B16F86B0E4474B67275502F9F3E1607BA1DADE50ED722FB8C6D879BFBA8B696CA4A9EBAC3FC04C2EB31D96E1B62DA0621E34C5407594FA06C8714B989F3239852E1AA864CCD79E63EFD9A2021AFA06457A37FF43F40E3F5036CB7246A9D5FA21634C384B309353927650420FCB809592213AA08727033DD9BAF5EB2A3272B1CC77E735B7EEBA2897F3DFA234B338D33EC07B31A230CE4B4F9C8BC0B782540EB1AC53E952530B499079A1BC8073E9792D7C8D5D8FE8F69801A95B181C6FD28AA2C26E245C3E0C727375EF0BBC5563228DFC184312B59FF7F649594C8960A7CE78CF02654D4BC057CEBEA403FE8C19CF8584FD17B49952C13EB95C69DF87C442ABE6FC3537E01C288E2C92E15522B5FC88F975C05506A856E70600DEF32022B905420BF058826C595F01E895E6F8307DD35F2210390509BF627C6E442AF3FDC6FA956B42D31889143025F327354C9A6B7FB357219EEA0FA9849E193F6EE142694C15DC54C445EEC5BB9DC620C26F06368405DD63CF15F21A23EF4381D131EE4731E4244ADC0B216B492658078C8D9BBDF9820C84B9777E8D9E1D8E33E15C9652E052B467BF48205B9D9D6AA7D7E7172F80073D15E1AA3211CADF8EA79E9A673D4364965BAD71FC797658DD0C510D9852E2D241D2D665893DF485DF7482F05724613EE9B959F525C3958DEACBB3E3A86C991DD8BC7B984F99F3E5B674EDA5737162854088987A8C85AAA122B31EBEE1C0B7CEBDDFB533CD0E195710CE551DE954C2E2818DDFB11718FE82790CF93A0C7C5AE38E6DB8C6DA7F4AD8FD51B2A5FFC23FCB253447AA8882D135B6234A741B0B1A45AA4E7A6876DEC8D5FB34B951A75728BD953366F75845D25F26ED7F6AED5F50CFBC0D234E0E9E427889C88C1C87608A785BB32BDB6062A3B8AB6296859317521FA96D9F7FB8E9C0D806BC8BE49F7290E4CF52A44BE8D0E78F4B41F709827BD446E2F0396820CE25788C86738D4BE6ED9AE670F3E1EC2FC5DC47550B5340479D04DF9823B9BB3EF9AFA988E6628B4A03745D22D6121E78A96C26B9A3507E2884853D207494DBED2FB5576AEA95BD04B3C3D014661BB469E376CD81D68195205FC96F63D78B3618BD278E19436D4E6999BFCC40463E59226F2BD90421F3B005603147D36016CF178402831F1B8C836C89EBBFBBD91C48E415D7E5269CD981824C6A765D9A1F156A33A0B65A5658A6BC79012C4DBE5BB69CF370B937867E50CB8AC9F934990C11FF17871A3E80F63D6397B1307B71BA908EA0823BDDE55A2E79CDE881800432ADDAECB1BA72CF94C39012E60CC47A2BE319529B1BB6697E69546C09D7A20E88660C3ED4597C1D7E982E9DAFFB24B01B4886F94583C868AEBA66958A29347033CE4D29C1740B8C9B1DE54FFE52D352AAB52D7F5F005EE18955AF86882603E29DD1F46BAD6C96D329A8F62ED47553010D1214D3F506AC922BC700A22A81C9FEF039DAAEFB9ABD5C74EC88DE93D0BDC0C51858A6DB3D1AEFD49DA78FDDA882E610F12ABBBC45F81778EC6FCAB5BC642AF8FEE2281A905C016C2BB96C437D20A8A589447770D7CFE0C474EFC806ECC146A384F64C407D931E55C1DD6CC035175EE4ACA7816269CF8EA0598DB032B6F0C7A4FB4A27D188B60D10BFC385B773904E1D0E80C713EA70A1A61FF63084829EE254D8B7395987B7C7F9C963014CCD4346C4F87E337C35E9A15B5B8A1A075300DE80043A66A9F3912C2551B66CC6B445A6E22C9924F9C019AE5EFDDA35A5DE9E8C22FD2D6572217E0DA1892AE96CCEB44410F05B16B9BFA0B85D0FA8233DC691921BBA8F1FEE2FBB2C20B8A4BB68008613548C0EC033DE2290F978BE138CF8B5F9B94ED89361BD43E7B79247716187F363A5E7638287EB7F84C093774891B4C5C80FF64E7811B247CE844879B5AB3DCBA72666E868D730E83E2255F9CD96F3F0219EDED41CD22159085CC2563563BF0D6DE1436B0848150C7B778E16ED82A97249C4E4DA7F2BCC9017983229B67ABB0475EE218F14CB9084DB3DB98D7F1D0C3CABAA3803D7AEBA4AA9677618AE8DBDE7CA391FEA9974D4BD66198DF24FEF3D8C81192F3032F4C11B86313D040308F11C710E0DECD2F2CB775B826C5A341733B60DCFC78255CD29E0E2F96B0C2EE2F66C8570982C52EA8D265F3723A09381969B5530731C72747D55DEF8A63F30AE3551DEFB22D130F0BD580EB3CB9C3847A55031EA70AA1F8E210E6699C7D2A450FD9E5768DCC4319C3DAAC8BABE81C89CC5F48E12894FE6F5DE2B33C18800844440EA7AECCB8B6DEBF96CE684B58F8E0929229028EB7872461301B630396C562F9AC7EFD5F296BB3472A63DD765290C38F65D39A7CB6D01DFCB6F214B4C5B142046D28B4D570D7A803A0EC2A8165D22A2AA83F35ACCDE399B12E762ECAC026333FBB24F08C262BBBC46A008692A6EB5180C50CD9BBDB1BD45DE3EE0CAB078176F84373EA20E3A70D21AF1A0D22AE8DEDD8725FC7E2AE0026941439378A974D48D4ADD8062D7092EDE8A360D15D9F83E32E964B9EEF61C9D8793C50D0C38047190A465A61C31814842957F2A4D1390AE5C7A80542EAF6E4800359A4E83346323F048C45A1D6AFE6128245BC4381A9A3310880950F2100A1AA901B8303EE8406EE075B317BFD25EC95EA6E654930C66AFC1F90AAF9537113DFD5A9CDE438FCB6286012FF019A85875C2156C9D4D28BCB0685B2BA96B5E4A039694A4BE75950C7B4A0531BB762743B652D9F08920FCFE050CB3CDDF10364F3F0ACD6A174C6137BA1DEB7FCF1C2B619A54FB6EC1D5365AE2ECE3D0B7FF3E4DBCC58368D0A019F2BCF5ED44C3561E8FC33FFD2953E07939199C58572E12F4CF0BB422A7889951C696AD24164FE61B0E68CC3526B641D169FB58ED996971C974720DC14076AB8B0B4232B2DF88D483CACA32C9AF7E4280ABE966F7EC2C91C72078AE641FBC917B4510A0B3E0879A283CEE1BB61EB242EB577C6B73A69155CD1595E791ADD974CB6890B99972722D88F93DE788C8AC60D4FE649ECF55304F4C68BC275BAE173BD9469B46F859F83387EFD5731E5B6C8B4000B77767B3FBDD9D381D42D74060698240EBC7B89D98F1140F6A91D240C9CA9CA7CCA8CCBF3B675F41CD8720C27469311B1BCDFAFAAE9861DD360ED4F1677C22FB133CB6F10E6193703DE15301449C5065A840A5A1347E80594C4B8ED74F02DB8EE9053F9E4582CEF106813BCDC10590BAD402667AEB0063EE83A5DD573DA6CA4F4BA36C04339668EF1F1B392053512EC4B947A942E3F4E25A8CB303019577B2F13836EBE458F5E792441D576DF3249F4DA96F55A6B9480747F5F1C4952C5495D58921436BE4AE12A02B1BF3BA0F2BC3C71E6B4D1E611ACA9C0AD0CF9EA5FFF0FE51A4829FEC3E1C14298DECE1B2B9596F69EAC6073832A36D4A5766A0B9422974C32EF8016F7D03699090C56FC65166BFB6C5945164D7F11E34F5BE76F7E526CB84B88C4F0BC4180B8842FCEA50CD73F75458B4BFBA1AF2122DC01E3F37BC14B6B96E15714F1B9A768F8B462BE68EEC01DA86ED49DAA3D3DF5D772BD7B97DEE7FE4D1B75EE23E8B07FAC224B2E88BD61B8C4E4A5753C738DDBB011F028486FFA13A5EFCB95966CC0271650D36CFC3C2C2BD701077CE79297BE7CCEE0D3203C85B2C86B8B0231582883A246281752AE88DDA7B4075E678A757EF461B92009C82AF66A31BB414C22C8600D2C929CC29429D8FB0140611C0DFA1877E38013DA15FDF89CAD7F1DBF8C3B266AD5E788A0895F1D23667862C0A4FCB27FE0D0A75156CCACFBE704EBD7CC948116EC809559E3CF21BC2785C819B50ACEDB7DEC36D7A4F175AA7F7B403E2123B2FBAB1AF9850638BDFA8D3B0F75525A4B33043BC1D38E22654AB149D88B3002E7C6A01062127532D49443C5374968DF6B6573CB5405AD55AD013D90D5AEEFA261A879BF8381ADAA558340FA8C89596BACA106DB14E4BCF7EE94B2FF92585D4705C10FE852E550F96897D6E549A7A9BAE1D47D458145DB3C4241F9209F5FA51020B116511343DDD6C8FFCF21E5EE362BBC3738E7FA3C781E9EA817DD1549F988C1763947F842FDEA1F3AC04E6AAAB568C349B4CC75E774733D941CE765006945B3977BB84300F6F8CED950E2F1590929135D58378C271D94DFC6ACAA95AC887BBEA7A3CA83DD222F9AFF7DF3631D2F06FB0108F425BC71CB104D20A88B253E6B5032FB8C7B698BF5E1A8B647C15FD905D791563992C5484DA24D674302DE062F9693F7D323E29ACF440D108C0D5FBA24F5320503FB6C279F5559F73A0F48727B1FD1F331B2F48BB44B0E40CFFA1A4D38BF549B1B3C91DA7891D8ABB622508EB3608689F1B91EC661A2D8776FF5F9C75F6E03E31874801310CBB5B7CD62C889413B3C8EDF0238B8BD36BC7CC89658683301B8FE67D380D57DDB6DCB7B221B8FAE6E3D82C0B645ED280BBB5EC33C199389A7A090A07C12C17468C0DB3D9F78E4501EE3FC8D3048F62FA812421324450145B4A61C68441E064A4C40CB4641A4D54634C6077DF09F7EE939036AA6B158641C3CBCE0504C59505F2817229F51028902724835F6AF08D0E755449628726A56288E0AA26EF4D436A71AC88EE81AAEA7315B65F26544336D398650062317447BF5EB221022D0561BD83EE1389FA4047A394566E46EA867B5E6AC5B1BD49BD5E0D6396059E5559955EBEE23AD11998DC47BC89692A33CB7FB22DBF2E7F125886293C70F666E14D10179221C19FD42F4288AD4D02D59EF8AB308BC69A405C80238DAFE23D86A926F39EBBE89FB37E36E0D06DBEEB2A66EE2DF51FB1D79EA4C2952306B4DCE7B0BF35185B00B454E899694229E5F6BA1E1110D18626C6F334EB6DE1EBE2EA2D836A47C5DB8990080A850D26B296FA0D2BD739D087298793F480706706AA60E232482795A61383496F1BABC3195E961E510D358E25235F45B1E90C009426540CBA1CEDD04731EBC18663B192375FD0CE7B604926D8F7058CAC856727BB125012C17E2024A261415E2C209404FBE99E5A941F6953841DBF1CBF03574B42FE5AB3C314DCCC80CC48A97984336F03B956046645CF035109B47A7E697B5C1EDFA0454A5CA2BA0B2E6CD724A84CC0FCD265C1CD271B6080A10D930388759AE40EBD9B79B0B02F195EA70909A7362F8167755FAFA519DCCC8746987E3E18CA2252625AA76035CCB9DAAF27993AD3DFCD9F175749240101E356F39911E697BCB74BB8368007712E24702E95A7F1B3B4E4FBDFFE98BEC20AA47A5BE6ED58172B3AC65BAE6B73276B6A861612A87BA56175FA0802E1B5C6EF7791A76E353737971E9509EBF4C5416AFD2EAD4ED793AC38A9646F268814FE0F1B10E286F4E636EBCC9C6A677FF3B532AF931D28228CD9E4D0AA3BD24CD4FF863B1584E265811AE50DB46E1782DEAC8D0F6281C13B96BAAB87CFC0D2378FC8A80529E8E6C87EB9CD466CE28BFFD7E2327BA4976593FCFD7B6EFA5456BA43BE9844413A1EA12C28281EFA2BB1E558FEE35946CC0550F3873BF596BE4E8E20CB1FB3223A1879FC443ECBE6D5CC85D8F33FC255650EE5AC4CD609EDD7976F5E4A9A03C17CA783A845B18AF82A2B38C6AE58825D0C9D5445ABC644EA5B98EB7EF3B85CA0C022B4B3413B5F5C0D2A3AD05E028509D569DFD28604A9D9BA05E7C937083B84DE4775B8B9271BE4ED6836E66658DB94220B71C534C823F200C62E4E2C43F5E229A752BEDE9651352BA7938AD3F87546BFA6DC2C12C6654C9F17BBCDF4B5BFD65D5734ADFADB5724CB89A6468D89FC56FDE9E6ED01ADBC36D7DB2C54ECEC9B4B03D5770A486D097BAB344FDABD1B9D39D5D537BB79D1701027495915401C5A578C0EAF84B034497A9F37E77EB067D7D82DD843C2C40E60DE4C591FF368DECA16D8C49944AD541FA82ADC56D76D02302650703401365B72A5D599382D304CF4D142F0D3F878E4E8B1DA0A7ACF3558DDF85911EA8603A9DB3CEE09A9768AD43500895C9D5D26E9FC9B34F69B13B4D653989917CCC447DE7FCFECFD137A94FC953DCD7151CD4C4EC6DECD58D0D343EB8BDEC3AFA96BF2CA567CA51B85A32F42B33A577FD71D27B51BCBED6D29A68758EE8B7FE3B329AD9637C5F4E67118B15CC7359AD8C926F1BEB4D94BBFBB4617CFADA72A00D873BA4F1F58ECFE7841B8EE470529432F31FFDAE49B8E93DB552999434C960E04D73ADF5908117E9DD32D7915A43FB579CD74914C056179CC7D8FDDD024B26E2006A805824BBB223686605A5D63B492BB8261804A4F3C7F2EC500A86A6F778406DB983F732E08C70898A6CA5D05FBA83DA6BBBB6DB066F5081F597690EB8D7CA609E35034FBD30DD5E9E17CE7E6963DA896A83CFAF20133D910D5DE71F4EDEA8409D0A63CF4024AD36A84C13273E06FB77B5448165F17B142D1392F6D99D33F99FCF19EABCB575CB18B6585B45D93D1F83DA2BE6DE33A1DD27AA87B9C0406749DD11A60B3EF859C898EEAD2F7376C069112EA6B2D78AFF11D071C9F5125AA10656EDA7A401470D343D354B696AA99434894337187C03589704ACD026C0DFA9507E0A8CB76325E179F9FC2E256979E15D3230F844CCBE8AB7B2C4EED8A7B7A54A32EFDC76F9267D19D4629DE5C9468079F871048D6B500F736EE346B34B66926F91AD2B17CCCCD43E2C3011215DC3F27029C1A798FE7716EFDE8BBA73AD1F717D041096AFC5674C66EAB8DF0429E9E8A4DC0BBF621433972CF3DD6D9031127122659C39346CEDD635913764CC57F6F4F6A439E8495D098072DB6C290F80CFC48369D5CB97F95552C0406D3AC00B6508F077A73EDF953A2FC36BACD9E57D7BC3DD6EFBE61B149FA1714645F32447E13EBF107F25047001EACD8EBA8A1969BD93113F58156C90F50CF8E0A4EDF4D1C13B8698703C0BA76F10C0B54C6E8CEAB8185AE4D34F9258A64FFAC98FF4204432C599C4B48BAC2A6E34A41E573377192A714E42C4AA148BEE0794EF5E2417D3E7E6410F22E9C131D33980DD714D02795F21534A787EA3E0D3149FF0DA3D27E3EB40E8075821AC1CA3639E38945D814AD0962604E78456166CB3E647CF331D1555D4F7F7E15BAE1E76C9297DE6859F3B10CF9E0A0CF6A1A170C2CB1CD7DCDC7AFF9827365AAAE011D8BEA136BCF919EF250E98B8951A848E77FF699835F1D9D82F99527CED0CA71AF224B34BB6152B95C2ECB04224194998F986142F7B66650A727C83B8AAD59F81414DADCADAC78A5C17EA2365EDD0F3721B89E67F5E4E25F00B06D5F80B7B3B030702EB889337D1AB682FC68C592ECA2DE8A356C54F2912B38176453315ACE122113AD4838C25A4305B8DBA9EA2864A2700E465CA2A51A1CA65DC630AA73E17E01195D0BCBDEBACC18860CF1FBD77A0EB1F45BBA945E1F41EB4FAB3E5F5D3024B49152A377EA84104BD66286B5DB1658E6883A30EA0D0ABF929315876950D71CD3A0D6A51B745BBEF35BE0F714F2D3E77015E6CD9B06D39437C87D251D1EA63BA6E65F3C23F04BBDC56F799BAA573988F40D5ADAC6A6A3C9D8931819703A7DAE61DF52F25CCA263507D15E94679DF91AEFE1B98AD8834F7D65561B1B5DF2248BD0CEBBCE29B63EE8A066BA10F37F640EC25B0B106DE1E26D73B5F8B3497467F141F901B13E2C6905E975CF834A91045DD6468966967076350589EF0B79DC364B966DA193143AAFC04CBC38E4A105A622E767E4D869A0521C48A643F7F3D2ED26699B5A12C8DA0263722AD22D62D6EF604A2E42C3F1F1512D5DFEF14148728A7821E9A024E2BD657F234D19CE60400AF1CF52AB578259CF8B730617C932CBD1101AE0AAE179558576D40206EA733D7532C7DE248A7AD7268BE9F5240FADC79C2665A769943BEE6E36EA9E0387DCB61DE03CEB4A252C7BA349D2BC0C85F70B02F2841F98A1E9D9EA85FC43BE3231139987C6C31D3A1249B531AF18C707C47AB7909B064F0340EE9C0E6C36B12EBA1B6A6D49F6F235DF33D02096401EA7A221092B448F11B7BB7E92C0D3CD81B9B3FD042BB1E5387E8C0E7DE133F7CF96B58A3A83E1563B370D8577DD063B78F1C1B66C7014D88506A67196031197D83D446C6A3F39168EC8B7A860431911C239FA49A8CEC051F399FFC334CA11E657FD2C2DC3F9EF868DC46AA64DE8420F45723C0226EC2650FCDA2869C4FC51416938C47386F7C3399F5106AC545C013E92EDD303E28FD0F09A7D849AF55E535A298D1DB01E8461A9DAD5FED5D8FB8826F93B05A37067C252178FB009A73B982C16CC3EDCF0872A3C13B33F39AFFB618AFDD78D1BA555A0C7955D4A8727B7718BD6FEC75FE7986AF5CD67EB5C22BBE7F284AD29CE13EDF6230D33D96B0B16E1629EBED17F0BDC57FF5FAFFFC24F31D44C8397B9B60ADD1C5A0A518FDB427C59F673361AA370FC886030B1B59D08BA75A86B5C3F78B9CA3B2C07592E286E15BC98D440AF19EA9458EB0622ECB58FF9BC0154AD11AFF7E6D6E9E7DC3E0D62D566148887933CC17CACD1D12A626425BD11611EDC9914944F16B400C9622394F0A6C635ADFCE6A539EEE3EFFE1EA79C685D5C21A2087B9FC01ED66AA03BB3E03A2789900276E4AA018BFAA42038474220FAAA71325FEC380045741DAB33B6D4B4DCB782714C6252C86821944D1B9A4BFD23BDDA756B063A9E7D302CD60111B2CC1C6182510D99063D270B4C4F88A31F37190D82C8A138833F16BD1D907446D037FC9CDD83748E23B0DA2095ACC353D1B4A26A11FB33403ACE93908AFF19ACBE63357D3C414D0B00848D5D692183586551748F243575C5EE21B3B4F3DBF9DCE3549AE139B27EF0A4E1110D6C9977583BE77863FD8819894E326732DBDA8F6984EDFD93EB89916E8CA1825C0A9855CB40F83CFCF592BF73F35F4B0091F24B48D6B21B86D749ADC290928B63CD4B457C1892C71A07437B6817A31741D3714CDC0DB1E55AECE3AC7379062A221E0CE1AD39D32875FC88505D9770E2CE29BE7C75F9F84B7A8C09546ECB8BD6D0E675181C17D89BF20BA553894CA2082452F7EC1DE81D342DA23E24FC2A2860A7C5BA3B0BD183A89E92D30E4C35691F6453B108B0EA17BE1C50CDF08872AC8E4E651F31D94E20B3420AE6500FDDC620BEE0A99D1F9387336DD99F386C9A04D63B527DA84DD8ACFF24398B8BF7F4ABDCC37DBF6468AD22A6FEAED32B32C3009D7E49A4F740A97AD3CC71BB173213BD44702154992F9DEDEE003CA7EE2C170B591FEAF69B6C3A0A78F027F93C612B4B7E554206F72AF9C653F5F5DA0CA4B016588E82D0F61E09314A9DF675C2B05974A30F2A7840A735F595420A7B043F1785961CE5399B14829D3CFBE6DD209385D5FE0766A8974F590A011CA97CE640DFE3830D0B74E67C102FC9F21EAD58CF52DB96EFDA37802253D398EB737B940386F8AFD1882F6D2AB2CD82265AC27E6151EF82C0AE8F60E19F3A766A0351571A8B13A4B856FED790CA16CFAC9C58D13B0D1999FE735196723B1B6C4AC4C2136EF4C3311CDCCA24491C893FF567BA7699ED606941BD592EC16275763C419BBCFF870D29F440EC0D48E07BBD54FAB8FD9118E8681DB4299C1F837DF4AC66956882BFC433BE843710755C3C267E0A87F1E70554EA54BA5CE056D795F6DA179E72456E337D0DEBE2EB1E8845E6E4CB5A9EF5086F6D4E246E616A4A5FB5CA8F8247F9A6A38DE772CA173BF85713DDBE0D80AF3069030CC9F9D4E5D4AF9AEDA6161A2A7D5F4B3AB6ED12E2EF1E3431E024BB8054B330A90A41696ACE21DF04214D9FE6CEE8150DCA866091210845649E66C33758F19633988FC199FB1597F3124EC73A2B51170A899A38E074B4DDCC647E571283675B33952E8C987271EA904A55130A73101570B66EA36279D3267F936038C71BBC1053DD36F5752029B90C0E98E65AB3CD4D6F5298C4325B57C14323AD78B8262D578EC392AFA42258D510D20995DFAAF4D8A111744090F32CD369667F3CC0DB18106064C581552D7AE8CC229C2414C62FB835B17CBEC213FDAB06407D63A7E40212DD98FD3A71DAD4AB1183AFF0E0EE0AEFAFF87E84CCDAB0FD0150513BAB19554464751B5CD389897123C78EA2E5EF5F259609F5D8F10A42CDA1EEBE76EB66D1B72216BB5BD8DD70AEDE2DA32460EA4B05FBF0BD1994FC080C9135DFBEBD38CC5897219256F29D0A31EFB2B6432D938E52A1DBC82392ED9F4988CDB86A349C558F708760EDB8DBBE48E7EF1883C34BD4C5F45575260C93C824C41A2D8FCAE9EC88F1BA4238BCFD8BE8AAC6655894EEDCC0E6A5A8CBC3D38117537C93544311AE01C507534B338C702DAC4D708D61D17D54555BE9DB21D1C3FCB2591E7B9FADF80EB7D42F7B6386BAE3CF508D2F14E6E65BA260619654E3EED13CFAAC26F8BABC84FE796520B5431E282536BD9D9D157615F7AAF7B6C9376021FD38FD0FF318E413CBC4A4E7EBD1376D010C1D1AC05156BDCBA66DCBF59D730606EBE9AC218D814A65FEFC77603818E2E5B49515B26E49ED824AABF458C845C55187996C2E9E90451A3852D1D83D296D7703C054B715E829E5961529BA46F86D6C82747A3F55D99A89C3903DBC27A507181D31B3880D729EC36B214DD1EB496E4750C13BFEBEEBF6D6FE8F6467C6159E9001B3E523D150943426D51898DEEA1172852618344A7338AA0A7C8A29D1F7A8F1BD6481304D7D2EE9BE2D78C3205906949CD7274667EADFA9A7C8394283602493C1F514CB642D0324666491CAC88BBC71063D6654968B1DE8E0B194E43866CE3C6F4095C207F237A2CDE9DF578BCB42DDF5BAB12764A34B311F363559B0170782AE02410551CBD0BC682B78AE28FCE68CF22AD0BC87FF8DD113DD44A01FDBF470C883962F72B720BFAEB534665EE3E3675A6D51259FC62B68ACD5F308BA6AAED847E3F079E2354380BF696DB9B5CB22C72AA9EC62C967F2EBAC2DF93B961D07B69351EFA47C08C29F9C4DC2C11C4FC716E2196E305B81DF3E9D57557FF537F773F6FA0F87F651C80C9F6EF5A93E203185BAC55208E46A3E0743B3BB1B170B3BBCE9E3508BEE2B96AE049FDF0F6BBB86C0E5092F244B277F8336B0E337123D351BC3097BF7659D3EE36BEF3403B8A9F3C72C8E63AD76E762B0F78073482F4ED88632FFA5A1D087518C3886939E83C29DF9F91FE5D295AA4279E58784545DB65615197B432268B5E729983977DE97088BB7BDBF3F13C61974DC750E2F46D9CC507EB933327EF8ECE7B9702BA50E0A524011B7BD70F8CB835883D2FEDA77E2B32172D5E182F8A20FBA60427A9C164EDAD0346495FF1F4990FDA6141F67FBD60FD5AA5C24894EE750460A20336A0C47C17FD709C7D66E5AB390422755F98575AC55AB874BD078C953FB79B00D9E140411686E7D7862C187513B02BAB7ACCF4C615F8E1B9A001FCAE3ED773258FBB0F23EB8C2C398B4E75785C76FB9D7825D155294EFFAAB7B6CD40DA6C224E330624C07022B45546FBF3E71D2B221EAE64F572A6AA6FF24D1C905789B24B1A3DDE4EB889041C87AFE94D4FD974EAF88CFCA690FED67A4F5E89D13EC2511A17F1914337B00D8468FCE5E7BD73ED68BC004DDB4590C6BF17DB2314F3125AD4246590DC20E3CBAA3D3FC25D98765F710FAEF7902CE014BF8851A75ADDB33AD8D73E24EBECD831C858D37801F94A40EF770FB1247E9C60338C00EA63F2663D35B81811F45A3F1FBFF2C0ECEE837540CF6DBD84420A4FD0D26870B3A1299EBB015A84684B043094E8101B3EAAB17D382753B8296F0B3DB2C4B4056599F7F6901749C2C690FE541B7957DAB047FBBA7452895248FD1C84A7FD89FE6021BFC425FF66734D7AC860E9880B02AA0C3CE5F352787C5FD22E765CE91FEC431C9B9AE3C7F20510DB56709A818BF9089E93B34FE22B41B6E2F4B1EF6B32DEA7D94352F30DBD4958AB50225B39D8A25ACA1552E5E2F36D799B510E5A89BFBC6BF910C47AF01E1879A35A652B830A1C358C47582A47EC8FC7A8436AB3A2D02869B6D8020D1605CA3FEAFB93D06B351A18EE42B70F85A3871CEAF2E8230CC3210DD41C3F850379D6893D566B1D6F5CD43958A1E263F162DBF932717B52EE9B0652EB1B33E05CCE08131C68D1F44294E5F7696E6EB984C38C4FDAEE656BD117F57977D8C939BC532242F7FD4FBB3BF45C5BAC540B88263860E8B44D016D8C49F023529DA4FB3B1A3B3F570DC8EBEAA658EC0526457BC88C4D9C98A697F9A55B66FD504212A27F78883441B5C45AD030C9F45CEA3B9220358999379B6D69AF04140F0FCF2218A92C86B1FF3DAAE40E2269112E761C310DE5FEC7E11CD55B6B4F0FC0A29D9133F6EDA28D2343F660DF4CFD1475E32D4C11761BA3F570801537211604DB36361CB4EB6AD3B126D37FEE5D1893F9ABB20F6ADE11346957788B86D7A1A647D18A0DD1B92B8B867F1EA3EE8E5A8AB783D063B8E6D83CE51F829BC5B2079245714996ED860D5E900619B473B563117E8C3500CCB02E36DF276558B98423535B563972551B44F6EA345D4F355421F6F8660F58374C5BDBF071A2D9D76105528AA2DFCEC7F78D0DAE8DDE2A04EA449C4A026C2FDC911C90BEC516758970789F882CC91380636DE31D8CC5C490EACD9900A69CAF7052C3F8EDB33CF645CCE591FC5E5356AA4CFCCB241F5EB348EC801B9D25B01640D2FFFD758B763A8EACAD0B4142B3B9D97DE2CAA00EE1E0F1F969D0E744A5172139FA3C608F9C0DBE89EC3BCCB69700AC0C0027BAB0EA4985F080CFE7C200DA506588701D54BF86C4D7FEF4ED0B46E1125FC312A2DE238B6F42BB00A222FB5A5B9BED8C8B2DA5D4AC66960D6723443906893F863A1CCC6E793B28257E33DDE4188F5067CA19D811244978A7C4F53AA4FE5AD56794EE3EED2B087DC4B8560951B4949F81684D4EDE3C6EF8160118D2D218FAC2081606EB93E073C1D08D5B5E83DCFF39CBCDBA1E0119FE279512731069FD670789C42F3DF1BC05EDFF3B6AEA9FACBA644004532EC9EE81AF368ED0D015D499D2E1A0790FF63F6AFE2292065688A6E23EAECAAB00381FE4D9A5C710BE94FB32AC1C53C8E8B26E49C92C33BA850F3EFD097B7B47EC80A07AC40E5898B5D29B8408EB014394E0D6859E834A621D514DD69864205C50E4611BE04D827249F9D6B00C14971BDE2FE2F6FDAE2F3F17254A3EACE364B0A8930B74F5F09B7C6B5E1CE15DE25F2D7B7032BAFC58A90AEFB95970E22E9F0862E7E0D5A111659592DEAADB5D82746D16C5A5FD6F951A33C4387BED90434D11C640186D73002823D492CD53CAFA69EBAA96201C2D2D645B744F443BEF25624963BA9435680731873145F843E1C204AD2B75382D790E4D11CA13B89851F0E593E066263763B4FD8A4DBA6A0479377CC369E5D95AC2FAF3295FB299E74068997B7112763E882B46425896A1C5192E07332F358AE709E46F9C0D99C22F0E2CCC2E98C46A09318B799000FFD17F022B663E19CE17DF825FDB191F5D0F3F91F0BCCE140F1AC13D0CB3141853110A9A35D1812B0B8A58DCD98AF34210075406864A2B0EF2D6BB7D0D75D8B57D33A5809C5EF53BDE156514DE0C576638E916776CA706703D8302D4C6EEBB3DD5C7428CC822808290D115F64DA78C8B523EEABCC978ADE84AC0D8171BF584718F3E6490C0B9C2EE5B79541BE3E9BDC1C31007D120D53312C4C4B31D09864347210AF54CE9ECFC76C707F5CCCA129AC1C3402457606082B774F400FB995A5E79003F30B49177F8683FFBBEF3308C2878489CCAB3D94829118BA76CE610BFCD773479CD3AC6F45F6FA4B31EB0F80A26E042BEAE3FD275D70FEE67C5B24199749B7DCED5A3EF919223A62024F1D0B11E21203BE681A8CF39233A3B37AB345511A14E31C6820651AD74CAE017A3E81D744EE32C1C5D4F43F1625E5CC6F4C4B905FDA81586272C83D0BFF7E8A2562D2EC499FDCD96661BE5F83A8A8ECF9CDB84152CF98D4D5AB86CD3E7ECCFC85F1EB54361BFB0EC8E441CB7EEA72FE26DA8273B847598802731E27B2A05F34D2AC5D533ECAA72149DD7C52954E34D545B9440E8C9AEDA4BAD3F8E3B419BCBD8A8FB5339FB154007DB67B81DDD27941B53F28241B7F2DF6B3E541A2054DDE899558BB5168E9CF16EF46309D2F405C6E106AA2C3C4936068D863851B91A92F071092BEED5A34B3CD9BD2D712F0C9E371DEA32D0B885EC527BCEB9B68839979EF4ABC8C3DC2E95FD577006ACF3ABB0065299388A2DA0E1A15B116824848EE6B9DB342DE679D93822EB35A88C221DCE49868134E3917C01F1F641977D04CEAE7896FBE127FB548520735D50DB0722B9DA2DC2F2758AC4B21EBA74DA2DCB2B4E47882E02EFB522A6DBCE91D437CD08730E001E65DF7F90B670823DE36E6427ED9682D1BA48350D72E67E0059E3FBB2B1E862F2E2CBD15CD63AE92EC4B3E62594AD1D81AB5801AC6611811B274074676124F39ACE7D0BE7CD0B65F424049AA08292B32090AB13889D9D672972ACA78842EE3079C4F130EE4CC91356336C3074A9E0ACE9DF9B5A0AF990152CEC4A23A6D3FE392DB93EC5D3828C9605AEC65EEE734F284E71DBD71224220C99F65C98467EC6AD4B1A7DEDA0072B78E5EA1266C0F746427DD6140F7431AC8517A437993560E8E13757449E749270AFEFDB3E3BB52F0A808C4C5BB6F1429BA78604A4BCA004D39AEBA6D317941F849BEBC45EE4E65B802BCA5DC0863425488B27199939C104012B9252E3DF15DF745C7CED96849AC4BC93651782C60B29A6F00C16841494D448F77B1A97D5F4017EB20CBC9BBB4D4BB5B6C9ECE447A615434C41B5032418CC6D14BD5A42A9628176012223B6CB9C47358CADF10367B19EAE1913FC186FB59DBA6FF7DD991270EE440A133689E132E3E624B2973795C9180732758AE355C12CFA326A6F87DAE7DC76802234D35CAD505C5FEDDB4C869E1B377122FF1E2F1B686F1D2421C2113A2C0A7D59A628D2B3337DC45094444740118AF3E1A555390BC6102D55FFB2638F748AF02B8DAAA97AB00DAD577348ACEBDE45820102E8E3510E5A22BB0C430AFE2D4E96C1D14F46DB051D76A97A2D024D9244DC3F725722C478A33AE3A4C48127BDC40C2A61712CAEB79852C44708BBFF1EA5AE035A4780D5F549698C78AAC58052944639EDF0412F4693695670A1CE27829B46728B88615D09F5332ED6E932E284FEEF465F252BEF4EFF1AD4E9A346716BE305352883B70E28B6F1D628C0357258B48539B5FA5C0AB6B621D234891DD0A3D7733DC9BC0AD7F7D29C4BB29E01F30CC941DB89BD462C5C17AFAEAD36B6B6367893A259191D08041D16494E14AE38004A57A0944D1486496C74EA50EB7DD7DECF2E985915010DD1BEF45656C82AA07B3D1A52F249A57A24C000BE88C52BE05D637BD766BC44BAE138CF59AD777DB734E73A315177D0AF7C0EA071F1224767D23ECB1392BD0DE0D911E1CB487DA11BEC998C5BA874D12EB9D6DB014CD62593F85D7CCEB153927A5B5B02CD9DFD3B21492C16E536099C43EAFAAF3C2C6EF35F6478B89FE0DC18D1DD10A34D41EC073D4C87AF506F038679DF381078E3D018761035108A318EC4DFCF5C884AF43A551B5DC68C8B6B21A78BD50FBBD681D36C91E41C22ABDF4A4104B336938D664CB8CBBBAF0CEC70410B934FD0950D5E50F4A3B7753AD19540FB795E3E9E045448E9CEB05DE98B29A871295CBC9DD4143F60BB03E0511AA4499D11B7AB244F9EAAB5128E0BEADD8C7305DB9EC97C2983E938E5DDB20705444831BAC2FE141263550B068A320A8FD32FBC976CC2E82B90E8D2E255FA5EF7E603F9FD1E69EAA7813CDDBEAC02D3BF6F75CAE0CCD966900827D92A3BD732CBF9EB1F1E0E1070C88A29322CD7600CA3F52A75F18687B0244178BD0A5ECA52BB5654819EFDE053669A8620BBCDB9057098B3C8E8AF7AF63E186DE25D526C415EB37EABBCECF69DDC8C14E38054721857F78D7B6979E1B48EC2CCDC4AB8AC9F162FD4190BDA55EB59658FF8CE78C758AA999BEF5143C5D5B4B758D267032DD6A6C7E2F737DEAA1788F547C6D1AB105EB08F5F20B9C66041B00DAEC52E4297F11104FEAF59040666A2440B2089BCB0709279A4D4B61007CFBC237167E0D00281AF9D6047E068B49745E4A79BF59F23D53FCD942F8E6EDD9C30C8B870FFC6CD0053932491A933857651340DB414519DCFDF625D531A75C9CBAA3FE0EF9F53BB3EEC7F1F40B42644EDD0B7A78A65AC31DF524D9BBB6D54C2C302B442B1601765EAB5452EC8050AD63803F52BEFA434CECBE177EC2A27E8C9999F4FC64E962237AC3EECCDEA5E03036C855CCAACE0ED9914C8567C7DD2DBDC708F832C01C942D9FBEFB413045B457A42DD4CDFF30AF748859829176898C91F4A6DAA952ED351C5021B9FC53E170503B203FB57D1235A8BAA392D15BA9729DBEFE4F4A7E9C7FE3E2D0CE6ACE35D7C1210E6D0D9C8DA0E4278B68AEBE8518F22DA3EE7136B6A2A7CDBD6418CA63B5EDFCD9D116BF9653C0DE8009C890A32AFD45151530EB7B761B901052EE42C8A6CB2B4A954E147FF0A1495CEEBB3B090D83FC5903866DD18A31000F0F6539BD4303A6FAB575690A9EC209D5809D02725FDAAFEA2FA3166B04DBDB4466388E67C57F1FC50E790055C033A43502FB1BBBA64F8B339D1F7A2491F9FF62AF5F9CE0E0A7F66F9F407897A862E325073F080EC39A765A506AB0D8397C43FAACAB6FE654EF656FD62D1A60F15F5C72A2B931DC0E61A7F401E276B167A82CE190CE635672FA4008A12A4C6AC0607A972989AD26F6660B471E7B99E80D51D70067A5DFE41E0ACD944CAC7501F4AB0F92C8FF05477D5CBABB9BE1422838417C9C390107FD15B2FA29C6F3F9E0C09EE5F990EE40FA740A0B45C8077AEA4C4161999038C5E49FF04F330963BAB6C915BA40CA785DF5249CF2E105A555728D9355173CA8AD18F6C88E1119DC344D6CA857C0E82799CA41D66F01A97876D7ED3E93854E1FB15048AAC81F359C0355C1613DC6CCC59A03033CABE5A7D12C3A3598BB5121FB2B522F03C95D4BE7EB71A2CCFE51BC7FA6C9ED68C13792D89EDEFCAFAC76DDDAD894CF05B05FDB46E26A2217155F182BD1F195BF5ABE7BA5B6696219644EB2C8C72DE6E4DA85E82B2F7A8F3D93D48BFBFFF02526E211A833552214AA9522BFF6286EC4B5975187C56CD5613CFD0A31B6E056F2B0B9DD995F339E02D3597193C7B32037913AA096A60B93B55FB129FF6B8E4A5C2E46329943F11E902C62B680BB802CC4B4A0782B25784B6CB6FCC1E6E4F1AD18B75EA77AC5EFB05BB6CAC1174E1EDEC234ECB1E447FDA9D5A1B9D6B982A8C5CAC1E972BD46102DAC0F27C96EBF1440C2C903D857F938D8A95895B9E97E1113D345E3608F26DEB54939084EF8F358B7DEE69D5A7360B78B667EDC1BEBD89D6A6DE6CE419158332B536D4A6D4920DEF521D872D2F9EE650C740EE6D9293D57D59B1CE5AB9A94F03C8E533CAEF6A76E5802378CA04E03874FC7A74D048227A4C991300804488C564B0D7BFFFDF2B0F040E1D7EA0366BA618B838CBC8C92C4BB672D235765DA4D8D9421EEACFA6A722755C02DA1DC614DCD44B5F253FBF084AE4FAF73A43B85BFB5F246AC4350E421D5610A4E2131D0539FAE741337EC2A75B8FE1568E87121EBC574F1B550534A5407A957C08DBAD5B3FB59CA5711C2B270A50D07D27636F33520117B1AFB2AA603A91E6E43F66AB6AE9AD4212E9A5288E6E56CC94C7CE9187255C6D338A4F129F160666DE6C80F165412A8E148A79C15F9FF4BA0C5538DCF703C71F1997E2134FA4D14A411225E40402FD7420F64FBB5D89F9E6F8060755AB2714C54949696EF13870485359B1CA762F32A0205A787E0DBDC2E0479FF7B04FE9667D05CB27788253337F28C5F3ADA410B9F7E8D69793DF2C2A0494FC0462F955EDCE1E676CC9B2FCA4814A090CC35F296AEA2284F7EFB80AA0DA9DC8B9A5B00EB8761DE1441DBFBFB6DCCDFF34CC991A0574B4C9B1A1A058116C02B415F30090147C57AA93CC6AEEE69E980E78288A524351BC6705D2711DBCB4BB8A67DA03ADB426D4D566E61BA19607B1D93EF95FDF742101CA63DD03AAE86588F610E803FE128674D77EB1C9DD81EEE50570F73F9F14893B2DBD5011B9A7FADA85BD47D39A6EABF9F88C125258134DD088DF4EA52514D7AC16E16908006646A5DB90B9A2B4F402B51970E67761C53A14CDC4354134ED5A7D0A2E1B503BD24096B1758CC041FAD7A384C80BBA2BF4E6AADFD1E7F5A7CDA300F35749A5DCB519C381D13C0917CAED95B615305B2EA72D3719FE2DA503E68A2F11FFF013F9557BA7C85E419F2B796F035B72E078DF86951CD1C75EDFCE988D73EAE967F82C8BB1E279534BFA71BEF8C840C2C0C70BADAF3CC51F63B72B3751545775DA4952BE1E33C0861651F8727E52ACBA893FA6CC13029B77A902FB8C9589D32EDF2C94AB9EA035A2496C49ED9B6F5B0BB8250FD0C0A4E6550BB8AE863570DE5892D308B88F3CCB6D0D54EDF3F9DB81CEF742B6E1C514A76557656988BC5E6CBE7C1404D26B3C29DEA5913010BE36B44019115E0D9B318DA9EB76D9DFBDFE48B0D3490000559E44C60B5F86D4DD39DB46947CE173964AAFE347FECB5B317A64492BA39589AE8D38CD5997EDEAAD7E5DCE55BA017EC93D64C1A2C8CBEC6353916120125CB83D093E0B691E3190B469CE7D82C53E56420F9253D0EC6CFD01B1E9BF2765ABEF5308D40E4337890CFCE94AAC483137E90F3500A225C7F065FA5AB921C2771E26CDD1CD1916967CBF535F2F824D8C15F4B0FEDEBFED127669980BCAE0F884ACD66FBBDE159F6EF99287E91980A9E9006B7DB12ED61810FB68071AAD19516236816ED8F51E23FBAD3165BA381560E65417EE90034856A163990A5C7E43E95727C89DEC65D508F7698968D27B195BD4469C3369FA0E6EAE445353EA96FBE9A59A293801E7CA0B507975C6D073EF87146C30AD49D0280A305515FAAE77360C4DC79B02C4C58C881C69C7C75A42C31B494104268557F3AD246EE27483A133DEA622C33B7AFC1AEA03DEBAC62363F9B0A10CF99E8E35E001C9C596CD86D9ACC45E5FA446225E5E6A0C007BCFE1C88440A95E6E3EB160E354FB202D3240CC733DA04392355DC3AD20933B6D1BBE4BD1BF58873A2EB9A2861482041029243A70DD6DDCD7CC653F8255E5F719E97A84299BBE047A79DB262A2CFE8BD002921324889A1D70438D1095961B19E839B3150D7211695238ACAB02195CFADDF1863595EEB4F8AD0A276E861223823341288F2D7C5D2A85EEBC192ABDB8D43829C928CEB52CCF1801ADDA81FD0F45E9CCE77E1AABA9164C0FCA15DDB5B898B697316E015E4507848616D7ED97A91EA3C25303B07D92EEC6609EE08D891BDAC8095ACB4E8D7D2975D30AAF0E008865BF1BCD2A1BF0572205EBADC7A6DE627B7BC3F0925A9623EEAAD23AE134FAF6BBF2532B5D8CDC5DC85B839F9E78F053F3332E5A3E2EF372F113963760E1D8D5296D9696276A8173364F6BD2AE61877753DC9B79200675A66B977A42CE27284EB3AC8A577145F80E69005B43B559E2FCBB3417F4471DE0C6F857B7C7462B79644C27EC791A1F3E7C64C92C7FC0C4E99EBBD76E49F9E309CC8239D4F1F77762789116CED921C41BA4F2E81676AAA445983919B298C6938A12710AB2550A398E140F9336A35CC7497A766D15F9571A333D7CD2DEEF2BC41946EF7151769A57B33C85542C245CA8E163577BE1235C9DC774EB28A5752D058AC2698B779E7A8A645090267A8A45A651649F92ACFEED3D96312CC5BDE0E3EB1390F9A523830A07EA939E2F882A40FB4225E270B53374244139B4BA6D8432CF30B7168DB64668FD5B9FBA19D4DFB85A92E37CB16EE902494170FA4861A03295FD7A836844D8A182978D2921685AC823994FD44D6944E82F8DB3F3564F0062B7788C55A72974B41C94982760AB6E434E2D34E1BCC74E35136C2029A95977E7FC29011538B889ECDD1C758F80D4390D17E30D9CABFD682D73BC1261BE4519F4F523E38208592DFBFB01062A47F64EB5DDDFC61EE3E2CCDB33BCC8D56A8A68B0432CC71D15D1518D3564922123FA9C69379DFB131A7A709A3931CE5F48EB03D31BE208AFCB753BABB001058265867714CAED63F53EE5F643336C8D1E9EA80DD6B7F201464A50311F15C02F1B225C06EEB7A3AD544C119F3777DDD1A0B897B5DC5047DD44F57480097FA34FF68DC0CD105F5EF78B84538E33B217779BC18265F402CE7E61300405F1301445DC0B7E51E84AE2164E6CD742CCDEFF99EFBBE4422B40DDFA53E8CF878D9DA532E0F2D653BCDFB195962DFB820C8DD6922D397F4E423ADB5D79F99C20C7A9965025A9963EF752745F68C49697566F6B686FA4554E80B27E7EBC5807B010112F14CDB98396F353C5B58CC3C17945EEA8240C0E1466B11C953BE8AB62D672196AB78E11A7EE146C2D2667D25E8EF755BC3A15D5EA632A7C8FB92ECCF609780CA964D3B8A998A510BEAB95FA897E287A261A5DEDB533307575AD946DC5DD1AE40AFD82D63EC790D96286A1C6B93F05742A65A816238671547D61D42546B0DF5E5300AAFE7464B2D52DB269EF4B0C451A3C6874B50CBA7B25422A40729D54229373E92070667D29429106561C1D5BC4D1D9282779DC6D37C2929CB74A6EEBF0E18B99B0391411D74058168F4683E952294C24738FFFE8AE9841C8A5AF67A0557C9C61ACA15F6DC6AF740CDC337965B3ABF35CA2917993AA65E496B31404CFBC821D6DDACCC0E0D62D72C2B312A9BB02DFBBDF218EAC5D45E800576410805BE2EC052085E62394BEB0B72EFBB44EB84257064425E3547FB05BF9BFFF7174267456F99C6B295C77F49BFCBDC61FAC9A8D0CEFA31AE4AE14441F921C8ECCC4F8A11C93DBD589CF7B1861B0A699C1C64446CE726BBA4361B7F09C1177209DA78F8044EEE90B9CE00BC523CA1BB3BEFD0A876DA9BDA9CF694DAEB76D3B7981EAB62817A40AD12DF2F7BC096873D09EDEE8C921136B2B757F1D50575BDE8FF01812DAC898F95D00AD9053525B6B1EC45E9C07C72B803E77CCE1BCC2CC2387A4BC3FB7995FB89E8BBF208A4E663BA56058D88292F18BFA7C172F5C2D0861EE0085EE41CD2A97DEE180168192E07327BB4B066E887995B3BC120F527D8ED9D272B622DCB1ACEDED97340807B892AAD65390E4FB217291826A560245788911D5F62D026CA66D1562792335A4C0096713A7835E0159C4E2B3D740AA5DDCF1995123DD1D9C7BF2407C73AA3FF62289FA533BAE8470EB0A9759B31B58BFE92D5FB51FCB3FC21CE461C2D11B9CD4308AB34FDD2AB7B2677D03C8712A3190DEB0AB34C83E01EF906CE5EBA2EAE1DD09058B1A7320985B417E9E2EC4AF101EE7B984B6D436B8FE839F47F5E04A5BDAC8ED14C41082E80CF488091A7E09023B002AC343E026E6ECB1C4E95C24B86CE0DD58F18AC7C0961C16002AF177034CCC8070D4808111A02039FBEEB39E2ACFE223A932088ADB4D30E2AFB314BDA75DF3F731C6AEB59A4A008A1970CF7655383B530E2FE7EFF24B4A9B115E818B47EF218F40285E8AEE163C5D7EC453620705AAB563B3ECBCD3907CBB754501B386CCC437B5647CE2B1A7D2157D5A3BA2901A13231890537CEA43CF160515F3412D05974F1A6202F6B91AED52C19AFC7E0059D06AC766B9ABF09C2637A7E5324F800780D7418156F3505ACD9213B271F4B52D88BC1AE45F806900E3EAADF3A382DB80D0729DC79F24D7E0494CD1D99F2EF4692A9ABF5CD464729DFC1C57E2E86C573938116C068D9EE5EB310D7E426D561FDBBA9936F926A735713923E0CFA0BA2540F1C0C9032AB389D29EA4278D8E9FCB40A7E47F0CC65C422EFCA86A3A28766A25EAFB41363E593B441D7F3AD6437A826E068BF5D99A277102A97BCD372C234DE13DFD84518130B4F056CD086805DB1537BC43859E0FC9B36CC747822F4F31E7856E6C03B7EBAEC24E7577D7E8A2A330A673FED376C6B07CAF27F672D604F5C8FEC72835F5D959F4FE9B731C26EA4800CD9ED3CEAC8F13540B2513A9795148E7CE4E0E545CF06D9953594CFBBA53206F42ED2DA945D1630EF7AD400414CCC83833CE3A59F4051DC18D4774C4D379DC8131441ABD1D6D27B33CAB55A4880786FDCDBA7F6B0D04432DB42397C07B80965162AA98EBC8E63DE02626ECCCCC3940C86E8F0F848BE51DE5DDD1482410A551263C9DCCA7EC1119895ED70414F32EB6F2A64297E40CF16CEF9CFC723944E42F4E1D0F3FBB3B766449E2107DEEE8FE20AD3CEAF74EC8D8C344CE348C79ECA49E867446E438FD246D8B5B9B39E62F04F7094F7264F4372EADE1054F397951C942ADFC96273EA1E618EA21D826A5E172B0A59FC0B8F2FCDB5D422E63B57CC96487D2F9F2E2F9D7BB3EEABCDD403A1AFD792B9930E72E2F02B98EC499398702F25442BA3367DA38F3CFDE25D712D2003D796DE124558C330C6909154C6BB3761FBCA0756E9308C0F0963ED829298DC06D817A89F3BEA915AB2DBF545EC1401BE29FE1226FE6FF3C1E226895D38F733F6DA08FCCBD349775C0333E1F5E2314DF29DC5A9E44FC0F6211520171C4A406039E333065C1B7363286A9ADBF709878C8E5A8E7BF8A745C874F481927DDEBEF7A105ECA005548E28BD29A53578CCD1B32E77BE93D5C9E07CF029A0B468AB0CADFEAB71E8F100BD0FDC72B732A5B56AF470D7F3F05CE77682DDED60AA2343287ED7365E299F5744D089CA1ACCC63A47228E5B10761BBCAB1823BCBF9F5557A630F7E241CCC77E4E95149240786B03E201F328DC23F17CBB5C291C4F8D524DEC998B7FDFFA5F845CD3F022E44E231BE1670EE351DE1D959CE48CB702B167F73ECA2F2254280F1A22FC5C3B6B1021CA9DAB2B4E515B6135A14E475A9DF02F2804C7E34E30A01B6F7DA0D633F83E06C1B949F3021A1145BCEE85EA180E6175996542179F4E42970315C8D77B94779B17ABEBFD09A7014C1B2A81C4EE596A8A46A3D7B262BACBC3770DCA2A7C541AA111D111A36D234E9EB48FFE1F0229FFDF9A1F16336FF9FC10A0EF6253B8A5C33AFBF4BC22F4444205E31B954B2D0FD1E40CE244F253968FCEBB1717DE01F68FFCEDD635A185CDD875D74E06722792C516DBB986DF1379DFB10D726441405B6B69EB11C19141B2DEB081E6A22D43EF56B01E380D2EDDEA307C1E3F1BB493DCA733C6DDA4DC80D60ADD56295B81087DC57C3155C6B5C366DD0C9EB2A653D9DB8F9952647C60B78559DEAC21C4D4E27AA31F7A406B53E2151CE8689F65DC74482ACC8337C010A83A4EB21CF49EA96A3C904BD3B38487F56A27BB4301D46FF239E95B647E3344FDDD55E6391B65FA5A87187BAAA6353DB1C3C3EAE95978D64AA00ACA920B4E853E0EA46C4FAA49C09913B8D18550C9B5B60B3A9CE28A8A11203C0820727EE0DA54C716D60799A1AB00EAE73EC9BB3EDF273C6094178B65EA047B12108968DAE8DD8C2F12375810A2F4B741BC9A860D44B926CE14A749029E53B849585F469FAAE4AFFEFDD6F1AA4533C103012205CB377250A9EFDF2C0BFF8D06BC8C2BB36B642A765D7F5C8C13DAC0ECA52148BE74A592CE41A40E11D5E00F257DE67582B9F52CB05A87D0971684C1B6BDE3EE15983433596BA6FAAFDA129AE07761F064D54E719A0DCD127ED6A21B16A02E9E93B68B794A258D50534A82096E43AEABF69E135ABCFA59EC74B3D63D53BA7CD9DB90BCC92AED4C718B2F60A99EFFB4C1117088C991C4E2117FC3D71CDECB6BCF5A53C204B2EFD91210D73C1E7501D1708811FCB37D4F2260F7DB71A03BA103053DE4A72AD094DA98FE24443CAD86D50380BCC4120E4D2DF97AA9623549E14295A28BA4E059D9298890F9FAD007AD4D94C481B2B744D6D7ECE27FEF548F2A9B282A44F2CC2AC9C430CA2D478584ADF469F725BBC5BBFCCE826D472A489D83AE0D36801D4F6236C23B0444D9EA3B11A0C182ADFED6ABE3A08D48109F5563D3B1635C72664858FA418D7F718A90CA230D5975BE0FC4A1C058CA388C981B436F68FA76F608513AFD93B719A9C6C6DEC2D98F065C0A319A053E06D5B315871E17F62E0A71FFFC70017721C73B283EA12A3F0E06C95287BC0EFDD7A9C28C754454347713EA08483B0F6EE0A1D6AFA035A08E3617E33B2327FF99B7EB9888079DA8D9B2375F694489BEF01D234259FBA38FEE90FD9F9AF4E96171505717BC95CC6C8B1DF05C54F501C8A8BDEBC08F83455326D2DE8FF8C2FCD94CABE366FA965FB0DBC4FB28D221EEE32C7C2038D39EEA074797FF8C6CB45BDEBC969F608D9029F6B1E15EC258BDF38A1BFF8EDFD4522730342F3BAF1C93C269DABF543B15D4A8A15083E0F382387BEDFC77EB785197F9CDFD3B53AB6F3C43FC4ADEF6CCF4DE668C2E818D9F2FEEE4B09A3A6148DF8CB3D0E20175D6E590C97D334880F8F66226EC089BBDE2F265B46413A8D294FC97EB8CEF2D456C7F70A288F3FADB6D47C8E5278507458EA5466894775991D4F7A5C014DEB26F386A342E41236E124D93D7F8D1A9CCEEB94E878B7907077D3A57C6CF6BE358BF240588CCCF0AC31016104B7AE5907BCA972FFF3AD27F1641D9000623F1D471C48D8BA56557E84212449432327153F4C75FC5B6BFF50BBD107BA8A469C7D3CF4EDD32CB7431C8DBD997FCF52B159991926430B69545B7D9A7E865B97F087D00FC14CAE194C9F2F01F4EEC975A79A7EB4992F04EFA0EDF7C4B5042D33C6C21EC116E6733598229E6C9DFE880C6DC46D44B75EDD27939BC269BA8555F4B924956B285A98C8B84BEFC95EE45291A56429F289466E45C02EB02E6B1461D04F489C35FF9A2E38AD95F17A739B5EB6E4FC5163821CEE79D664F5AB324778FD76EB0AF8815A239CF9A901A0DF2645E9D1860727F3785716A109544B5150CBBFB0EF22D5D9136744348FF3C2DA3028636F19E98D7FD2E4BAC47262AF54CE521029179FEF1B6E8D645E22C4E217FAB8615ECBBCD0CECE8BDC84686663D028D3F8A236791B707EE60A2098A3242208989B92222F0C0A24B4A9966FF6AC674D98DA520C76E0B289F0E1A9FD348324A33D42EBE3D5E25785DC4AF0D5C1933ECA7FE404868507BAC631783391EFAE06AF349D1A0D89C04CA2755DDCBF747F0DE382EC793AA18DA52CE5D56A3265ADEFBC3098E9E2DB5A3F92A7561F25A59636352654FBAFE1295599AC37814E72EC5673ECDE3475F13136BC926150D10416284452A1FF7D6804FD781AD0D3AD2B7C7B64C00627EF223F0BBEFF232D789E6D1C3D0C0244759D5F0551BF6BC3E36C1B2109217BC8C2E5FABFB30F5F4BD8FF5E553DEDE7C54401AC28F6D1B40D927DAFEE8B74885AE3BD5947C2974845C1E56FA157A0A3EEECC3F700CDB8F80FDC4A4E6B7FA8B0DA21925A7AAD4411742365B56BB866E1A52099EED14B665920CB23B00051D5A00AB429F83B42BDAC01EFFE1D0F1F3887090150EB8D064FEB3DE016FE7D3DE83DBB3CDF639D5E3DF6CE69011224B6890D5FA9EF11843EB294DBFF573A586E459346B5A8D87E700DC933F2AE6309606C61D56149EC7418DB64A5F4EEF35563163AC00FCEF390521BAD2F9F00BC44BC4005020A54006AAA15CF8F7038EC757CE6D3A95403D1E646E4382EC4F0EF33C6285233F250A84B9664F9A43A6D95104BD7461DCC3BA66BC813DF7EF626474A63B4C71690332ED363F586EADCD22F1D8CE77F926274F49D07603F9C429D88118D3E9C0BF79BFBAFD1587A0BBC5CC7A36D9B86D7F773B92DF24CD3D3D890E2FFCEEDCAED6B5C0A3B4A2DDDF0628F1FA54491F73AE2E51F13C9CCFF2FF5627E8B33B642E7B9FAE2F26DF886CC97FE5DC5020B48912C2FC4D9D61D551B7C46C0BEA91F9B2EF2F2C3043562D28C85C6FE5A4724E75A2283DAC9A8B5D41C3A23A012EC22DF626D27B71AFA5BE9BFD69B45DAAF98C90B5EB58ECB1F4139958EE38954F0E3AA95E85144478F6D11ACD891DEB423CDEE70DF86E2850292EF220CDDD3518DA55FF448CAF2748AFFB69701325CF9B4C8A60943EF21DFC7AEE685A3D308547C5D0513907262F64B8709783BE582EB44A7DE0939353DB522EF86316380908E9C1F36FBD158A3DCCAE3610F9D96B6C6CD4CC67F6ED108A2D7EFAA5AC0E23F59568D7248D5A3C2F2F56E4B3CA2445B1CC29599AC86FD3D83C0A6ED5CD4C237719C7D643D2263FBB04AA5478F82932AAEA02A48ED806E03B5FB3F38DE49ECD5754380AEB538630617004DF1F51AE6E14B6C7243C7CC7AA2EE93109F3622E342EDAD67ACC389E065F4A0237CFE09D30D16856CEC2D6FA24B924252F5EFD19CCA3E98A335850D6B6FEAD1C824CCE1275DB5A3EAC7FB9468BA89D4018A99F6DBFE64AD6CFDDC805254135D22CD59FCB7AA81AD70801D1825711039EDB3424D656250DB3C35C495ED36AFBDA5F73282BD121A5CD3E78684F4095B871264B94FDE0CE846B1EBB3510632B15427D7346F12E9CFD32D9CCDA8B620888CBED52DA16028D94F584A0757ED6F9A9D9D90130EBB9CF67506993C6CA9D607E219E7057E88BE2E5B94517115ED43775F93852BE1F1CA8BF555222C224FF7AB1868AE5705010F73D7F48E2A49F2463B3DE6E299E30E66EFA802E534FBA51D8E34646C26948FF98109F47CADCBCDD96B3EAF3629C38901C99BF7CD50AABE295D0D806B95E49CAB5E48F673B9913E3C996D14B4FE3A6A2B51E31935831C693149F5256BA285B6BCF095461A2A9ADEAED3B4BAA258D048ADFD96943908DA68A75FEF5945282E1DA03EA0B433608298ABBC58E67CE7011177391E25BA9CC0325849EC26F21C633F4B3F024DC8744E9A6A8E1F39D1E72DB2E3BB963010559815C56B507F087CF984D27E5B2DCDC6585F50B92E1EF89B3794A570738CA2C3AF2C3EDB06D9EEFE75028D0E246D8945A1111FF2585A21F97B3450505899CC52786E4887D668AF8FE878C5E8FC7BCF59EE6C2702E1F63DF0891C9700D2CC301AB5C14A5D8B1DEFF0A623FA01DD6F4DE918437AC5495D4C28F7E052C41CAFE11DEB79D5ADA908A6407FCA2EC69D45A636EA1EF454872D4E62526C575248E24BB9E484AD17A9D78C76F4C7B3C209A960DE004237EE79605D0375B240CE230E4E298DFFBB24A388A3E334EC3E0DB65E29863F28D3CFBD6A178D770D3533E05F60E79C6B0C445A4FEE0717267C9A04A054BB7BC684DE9E72234287724E6BF276FA704EFA3057A0105B019892E586B306CA37EFE5691F8655A605AA94B5916641A648C68E549FB82EBC1B7A3DD535DE25B2EF585CCB8B1A5AB6C03EEFFA760A954693532E77C11D5F6AE426234438CC66AD6132D1A5FB6779387239C35833736404CF1FCCE3867C4867092064947273757B43F77EE0C2A12F015821A61C3DDCAFDF65A6A5FDE186ECF913B866C73B3B00D963803B45AA77D7FE49818996DCE9C3AA8BC0F21484CA0A4E5583C24D342F3CA88CE47F5BAE07CF3D752CB386E62821C55AA4E0CF4A73C3269814BC783B327172D8FD4046017CBBE4424FC87A8924B5B3D4855D5ABF737033C3176A1F2565D816E3420335A43F1E82848282C47F2C7ED401C81DBB6EB12B00625E772633B1C4DEDAEEF889E34D158A0DADDF86290F0D7F81366AEC152404F93AAC3D6063325339C86830DE06B430E12AD196017E8BD2B86229852290AE337FD468B7E06D81262272E29B49FC41B96DC2F832C635503CBC1E2D2DDBD3287E08576E99CA7806B8FD20BF14898210387FF549D105EF1D97897EF70326B9CBDB7CFF149CC784B61B2E425149F73AF11EB041D32A8E4DE5816FC4C15A7EB893A2F244D2F0A46FA7846694CA94B8660A4DEE16ED96EBE99F6CC04E1E1635ECE1A90384C95C223B413741C2A8B92D5C476660F974E96406B5819FA0B56D881FDA61AE4DA5B3AA0368F6D48AA0F83EEB6C51829B2042BD26D55DB91D5D91375A359DC158041CF101FEA047D34B256042FB4CAB272A1FCE6C20E9BBD4177C5870879D27929431274737DE0D1CEAD1676419474C76119441927B25223A9CFDCDA7DDC21A10C010CA74F197CEBA6E1DDA8738009D123CB976CD83302C2B24F77A86492F09C6B8D51F2AA84020562D57C713368E1735872C5E09A9D1BA196AFD194B5F1A5CC713802544B292C75E4EC05FB17C7346379FBC3A963EF6964780FE30ED75577C74CE2FF82339E05B775AE445A6BA80C5F0533649E0CA36C0E9BD8FA953CB4DEF1E8FE5FD2B93F703AAA1FC1A12F32BA17B4A0FA8435102FC0C760FCD8DF84F0AAB1EE88C7701D8F9D604EE456A1C07EDEB58484A64054BFC6848B77AD28CF126DC28F70F25615FB86FFA30B647AA550259C8B161FFB65792D1E0B2458DA90F8C5F0C4D2B2EAA0C31A1447708C5E50C0C4FEEC55EF208224A1069B2882A86C1ABB98EFB916AD74BA9CECC78844A12CAEC17DFF2763B3E2B02EA8F1247514A008D695555FC588F851CEF72B828422F09159509E29B32C528509ADD90CDC2C32C17C348429398743890FC081F0DD97AD5BB804651A5BEF631E46929C38062CCF9483E598A7040D95A7B8B5E1844D4D59207DAF3E7B656DCDEB09F760B0C851716DF9D95399DD039B95E43787DE914F627A03B910A647979B7DFE6D7DF6421EA7CA611ED0FF7ECA9B084B679F166C83F8CA8A0601D507C263E0316120C1BB445F01C30A7E7EB8E02218A94B2FB03199279710A7D15A96CC19180DB861B3D96FDC4A813D7EF84846EC480CCA32E5A67B3FDEDAA1D379DA3DFCD2A11ADDBA41515A1B42C8128FD92A7470E2AAC84CFA5BC6B467993673F067501C5E7D849DA9DE8B05C570753499816D7F4D40EF5408AD496BD3576E03EFDC78BB76F243FFB0B372D4C47B6B19147AEA40A9E4A4910853DD7C6846F0CF5A58BFDFEEDDA47EF90284BD4DB6D8CA01C89AEE9C4A93B74504F1BB4CD9C94BBF1D82850BB953D55D86A805A661BF7013BA3401F1CF5A59B9800DF8852B2CC1BB4E967479C1BC0BC0812C11779FFE40C446482092EC50A0BB3C827CEC4A5F64061E3A6CDAE799ED71F848179039A2DA6738D6872AD598225C35F831EC2EA3A3D6B56CEA910A55B9031FF51E29128813534EE24C24A5D43DB9F8857A5B67358AACE2B0D2C8346AB6E8A26EF61431D33EBC7F0B2CD478D971C9A9D50CE7828CE484C8814AF54F5063EBBC48DDAAB1A2E2A6C351A7033B35486EE63011894FA0B6B289B1AAE58B8047382E3B15AFD9DB2F78867F48932B4EF9C2B55F30BB77BD0169768D30E4CF057E4EE290C7AC25B017F4E261A324FDE63FB82AA7F59981E61A2CD8EBF536BA2053E0D57B5EBFB49DDA6F38C7F34189927A7FC2595073CB68D4AADAC980D892DB11FB7A3724FD0D86F4BF60B09DF51030A80ABCC4E09454F59394DB79B93C97620708592A5DDE1FF8ECA789C93EC1C5BD5E4EB8A38AE610D6917DD3DDCBC65BD72DF3B075883F5477D2ACC5DEF504A52896105CF62740738538A2662589F341E7BA6BB395BE280C0F193C44F1CFE63C1FF550642C98B77F55C72B97BE9125CC6887927ECD96A36D9C71D30A3A6AD472FD16BA6C49444C5A9004D246E34919FFC76C5C6F01907F6EBEE802E99963D42B47C849C71945DD0822BA86C8C7E24D2B8B37E6F0DEFAE4792842AFDAF481A63054A30F61494A056EE011250E118AF327D1BBBE7428A9E385D8BC002803D0FE9AD8EB757F64787C66CBBC87ECC79BD47FD5E9263C903B8DB194B41B0A1ABA5BEF7518DE0979F57B45B5541759C72E5884D095DD3446E0998FFC0FD87445468B3720C33F8F84797403CFA58DE96C5F6344A578B495EED00355061FC9E3171C8E32D88422737634B665E353D97E536060DAA4589F184D594814155C9216BCDFE3097566AC7E01EA57196F6C501D83771F5156232581983B3E8889A9EEA5388BA0D501126228268AF9A01CAA930CB3B9B59FDBCE03909D65DA1030C00D1B4F48955598E6B83C9B2C1FD820196FE9C525D506C0B4A91CC476D040DADC573336E8121F0870766FC7893369522A885E2AF8AE1B4A4AE94871692581ADB4AA0041341C171AC62517B163F8B65118EB977EEA1B0A0F3A5713BE2E5A278F98FDB8CA1558C1924F3E81AD8E0B52920B297D2684EA5BC48B219DFA2000D85DC36BB0F2F8EACB8955E3F395F2230C4DEC9454D08358A3B8014ED23EF85771EE1280AB402BEC81BAE302BCDFC9373397E5C555D8365F386C723820D1288E9A518499FF55EFFC5684763643CB8C1B8DC59DFBCA77C2B51E6E2203EA24B44DDB27E0DC1425AAB51B05DE970CFD633D9FC8F726E28D8D3E5C053FAF50D4E0EFF86C77D54AF71A8383402C7FD4BE1BE288840EEE0A6DAA6ED8F78BA039348D4E10B348060C07BD88D3AAE1EBF246944C3ACB4F5B524B5ECD6ACA6CFB2841606CFAF4299B404AFB3F6C5AD182C76256548E2219A7BA8F881775E91B8CAB9B1C261C9AE6B6E78D7DDBB5383AD45F433051F83F91F006C392E93EDFE2BF523439D0DED2007F12B37E5C0C1CA59F6261199BA22666AD7463F5F8221C4433802EB79B80CEB45AE272A295D067D8251195C9FB5AEC7C156905565CACD1F0392AAA367D1709DFA2208E6D64B92FF5BAB9D1480D85600D5FF01282CF68E87EC8CA983FA96D93D47A84B511351A3CA9F20FFC3B054F910CD0AF18CDAD0D2434AAA8137BB263CE1ED9728879ED0623D22FE63E2E38886E01E13AE90CF3CFA32F7110BE6C491BF8D4D356626EFC4E908066CE8942AE5EC854CF13A88E80F13D74142ADB136097F0B08406EFE43F8C13911EDE940F97FD767E8058A07EC9AD5708D0449240FA6E0A581B3197E1189ABBE63FBD35D9794EC2B2AC1FCC710787F4FCCBFB61CA1CAB6F47453821C74AC880259A4EC0A948AAF399285DC3FFA724F1819BBCDC5CB80F2AA26B2A382F21EF49109ECE913942914F98E8B551CC32F7FA4FDE9EE64CAF3FEAD9622ED824215604F60241E71F9804A5D09DFB481025D394A5AFA170C6DA6394FF0F24BA9CA491941E99021BC7026D13D0BB627898224E2BEA3B50545E68A938EB22A1D4F3CD130CF7FF5B3D2604C4267BA7107154D14063412F6867C42001E82B06C1845557B035E4376975F223D0E5F7C0B84C190584C4F1996783D3AA805FE6670A81B8A7CD2C1752C087C3DB5C28DF7ECF2C3B7C175A764F94759BAB01723E8EC5784AAF2863F0682CEF827E8B2C5EC1A6B298C201224F0B52166C38242FDA9F3AFF725D0ADBBCCB06E577A29316034467BCFEB84854880419206B0390C2D06B7EA3EE26C36489C1D44F894EA06272EA0900F2075C5524F3C57ADBD3B8B95E94B961D78D9232628EEEB53BCB44D73F7C57C886B4BAB2788029F1315A37AF7503760A3361E2B7A560574493F2461A7AD2CFF164BAD45D9079E43F968282DE3675C7992FCE855EC9E912DEA202CB77397871716A03A14A058B4BC183F09310C4BA7842C66203D26C257DED23AC0B49A63EBDA78AE773BB4C17E5FDD795E4FDBECCFE8FD361B3ACAE590FB922908AB08EB5D5C45961A574805D3BAC468E50644F80139720B5724ED598B9005E167E2309761D69410C8624DF071A405E39B194123B54AEC5E2DE2A2D2B3028472FE36FC038ED5FF63477B15E9720716F736E261DBF4DE9874CE17763D5F621C22DAAC1AAB39489A15DD68BF927D1895161B2D5BFEEEB3ED314E42D00495196066986C15370C8B8E4FDAB772F7D2EDB240503B14C9D03363D64C169E2C7E806E81A782C3E4711CB53ABF03B49978B807E90CC94C59987A38F1FBEF6838E7725B983879CE2C95A8246F4D189260BEE6187D45CB8D0AAF3A89C1102C384C9E0E3A7823620F138B1505D1ADAE72BF32414885B42468804137D2F95C6E130D9925FA001D9E4F1F8590D806811B8AC519E418825DBF093EAE26E514282318D73F8F910EA183AE776502BC673CE1021C066972894B7928150702A0D461E497E7C8A20EDFA0E51C6C5F842D49B59C470FC554C74C2EFD671350005F9C876A203EA9A679B58B0037A17784633F73BFBC6BC81AAC949F2550B3C10F4766993EE913F272498338650825ED6941759F8E122D7CC795996143C9C40B35BA886C09A313C1360D4D0D025E3F8A819E20F3B8FC39EE18464B0B8FEBC9DA04F2EE2312496592FFEFC10B24156852B6E1D74A2D814F82B09B11D282757A692A56BF109ECFD4FF2DAD238A654BE1598ED1B47C418F22C5EBFEB760CE43E3AD63AB45EE5945644A7C652223E917F20EE5F30D65848236FC7E151077492122F4875E774D45D7166AA00FC43D8C9FB8F71654C451A0EBD58462806276B7ABEEFF7B8EECFBBDA654EA2B4D794AE333B2EB57F963639438F9905F52C8D72452C8FD1AF0B29C1E500107625BF17384C37DB3B3A020528F0E768CDB3E383F6D39E997ABF0229BB5356A84762BFAE613913288F2D99E3056FC49970B400DAE8E748C0F5548DB8D4A888C664301E1EF22BF5E3BABC6A451A538729E2069AC3F4FF69A0078E36F9BC4F255C8B9A113061B58D0F5E657859959CDE63452318CFC522FE18171A554FE5D493B14F78CDA5F94AE5B5A0DB63EDBAC1A78C071A9451ABC12E134F1AFE129A3309DDCAFC937C184371ED333B34B3BADF44EDA82D4FD986CDA0731625BBCFDE8452BCBAC9960B019B9EB8457339A62084A3167CA02D2E74C022647DA1BD130FB2F1F22C9B50F319769A7C9B9A9C48E18E4E55F6E5FD60C1231060D402A50662CF7285C89345FF67CFCB26F18FC055B3BFF6982241769521D0F5B7299BCB1DAC80B6D9511FF88A4B06A616C5A62B6AF841103913A91E2D15436D49EE04D65F4369B81896C9B85E44D074FC754A4E6345C4F54EB16C666215B14992332DC26BE4756440820FABD8D4FAA45CB576A7F54977366344B5C3DFDA930FAE67A340F016B88FE2F8509865296B69A989E3C3F2D70545DE792F99B78CEE740CF5672559A28C53B221C0691C35996042641C2F79DE5394D3B69").unwrap(); assert_eq!(sig_act.len(), sig_exp.len()); assert_eq!(sig_act, *sig_exp); let result = pk._test_only_raw_verify(&m, &sig_act).unwrap(); assert!(result, "Signature did not verify!"); } #[test] #[allow(deprecated)] fn vector_slh_dsa_sha2_128s() { use fips205::slh_dsa_sha2_128s::KG; let m = decode("D81C4D8D734FCBFBEADE3D3F8A039FAA2A2C9957E835AD55B22E75BF57BB556AC8").unwrap(); let mut rnd = TestRng::new(); let sk_seed = "7C9935A0B07694AA0C6D10E4DB6B1ADD"; let sk_prf = "2FD81A25CCB148032DCD739936737F2D"; let pk_seed = "B505D7CFAD1B497499323C8686325E47"; let opt_rand = "33B3C07507E4201748494D832B6EE2A6"; rnd.push(&decode(opt_rand).unwrap()); rnd.push(&decode(pk_seed).unwrap()); rnd.push(&decode(sk_prf).unwrap()); rnd.push(&decode(sk_seed).unwrap()); let (pk, sk) = KG::try_keygen_with_rng(&mut rnd).unwrap(); let sig_act = sk._test_only_raw_sign(&mut rnd, &m, true).unwrap(); let sig_exp = decode("B77B5397031E67EB585DBA86B10B710BE87F777DD90795BFF3E8DB503FDE9BEA496A95C291FFF430451E189BA9B0551D106E0C9659A46F2C780682CB605271584E416C189ECD1E662C997234ADF37E39C6DED7AF50F561210E2E09ACB9FAF334765B4A752E02E58D229CACC782AFF6BF17677C0D0E0CE4A6A0C2C79C52FFD3E62CFF04946A2CE0A48265D3BD5963BD2835F738279CD09DFDDCA7AE545DDA58781190ABB6726E1D856F567A0FAE940543823279923CA0EF41D2F6AFFB412253B829F7D43C2E3E4263BDEA9C337515DF2F321B2A5E902530622B1A4C8F1E845465F9C893912A0B8C102439666A427A92EF627BA8B500F1ABFC9E85AF0CC19665736B6345AA1198B15EEFC565CD1865DC1D57A5793670DBB246C22EC2AB9DEA54FCB688D34CC3A90441B05B90858A890ED5034DF136D940567ADD7E9AB7B2B1CFCCE398C0F2668CB24E226A83F7E8089AE8492CC572402B60F6C0EAAB3E217F69E4FC8F8F712B38350BB83C26D20C2E05057CDC0019562BD0984390C578EC849C852EB3DA71F7BB2B90FEEDCD3BA0A0D8E04D4B842723A7B9895AEF45291BD2315F1EE4824FADEA051932B31131F00DCE1734C48D1C7C656924CAB81510400C6DF444D21F31F6472F0AEA15C98966DEB82618BB88A92F306F4B643040CDEBE81CB7178CB38F1180B96A882281E0044239E0B60DB452E9714EFAD53D0DEE12EED47AFBD2980353ADFC6247BE8881977979C37E1D12E832391E5E6AFBAFD8EC20DC77A17487B8FB868A650DDA95E334F8A1E974956B1F8BF38764D7605FFC67E5F35B99CF144691EF0641E50DD1B2DAE28862835FC8654EF36AA278A742FB15D7204E3DA269531B48A45E1161108F1584203C78E8C291D00C265871EE87C881C63831D70E34B8408C9CED379F851819D7047292823F24E3963340451ADC5B20FDCA9A26CA80EA7F52815CA02A46829E95401E3B79661762E1847328A54A8018209ED23E1E0F4E824A34A920C9AFA16682A0F480A8971F86997329A8B71BC9BB70B09E3AC05D22D339034AC2CCAD6D956D2A9F7BDFD697F00774D748353064C1C4D3D92773B8F1689A9C60883E0A102DB41F4CD72E81802A733BCEA7FF426B2A1E9F18240E65AEFE59020392694E7085C90BDE377617443FA0832AC0C3D5ED2925296283B9B896945A7678E45D005B8ADA4481C3416E5C17019682D0419EE47B9B148413388B1D96D4196F4AA4A0FAD668B41028BDF06D900E0D48AD884D742439C8FBA9E6CFD4F88805EF361BFDA743233A72B7A763BF5676C3A40496FF3399892058E5F0517EDD12B3610EEC4C9C22139088DFEA81B543376BB5DE000B2025B4C564F9BEA8B9FEA99EF1AFBE60C87C4F22F06992BAB097AFE4D5A20EA564B3BE21D5E33550E4E02D4ADFFB4530004B09979684BF813B7CA67975478089BB8F8E02110D6B07384DE4EA1F4659BF0D8B7FD1853D47B64C7DFF28901EAA8CDE7BFE89F872090777E857B70591491685E5211C83CF8EF0D50713506C5FD322A43173ACA3E52935A719D90FCA6025238C9E90C6C40A43790303A5DEFF21186DE1826704EE91958437FF273B378EC9A666C6DB83CF685C7CAF4425E18C77939D453DA710DB1CC2749DBAFB56E447A67135F4037731CF16DB7AA5C6921BB86A6B06D9CCF0E8722F9CAE325526970ED7DB0D5B54A643B50A456D23FE61CD49F4D5DE6670522F32C284653489494F4AF6F27E8FA9029D384D228C4C8AFC7330E04773923D724EC24F2EEE5C88BDE157657CE98275920CEF4C9434EC240768811162865988F61DA86E7AC1084FB9B7E82D7A6738289A912361214A64A2FE5B5E702FCB6FA98E352C3A6760304E3881D8E0B1C370F33C3372FABEB89DC2ED54E4780C48B05317A2A9580C12DA9E602341CD823793F5C4E12A3FA3E365A98E6888838E5D736A056CCDC0DDC627EA72CBF3B0DC865A56696DB34009A29CF18AA0B94BD6276CDCF0CF368B7D90C67E319249BA09A030DDC470E11E6588C8980C74C4D43BE281CCC1C858F2AD7E9E132278C2422E941DA5C2FEBB83E7D4E836F45D42F6F14CF17463FF5636F618647AD2C8D74B4A03AA72C71103D5AC977F16E4DC8E9ED8E9A9C9C0CF369626678E3662AA4AD36A37F3D45EDDEFE38EE3A6C3939D6D353C13585749EDDBC367B2A72A3904CE5B51FED495BA418A74FFD483A3B289EB17D978C44BD1E2A63677D97107ED375FEB2C77E034566AB2407C176F50D72F935C7D39E0794183F45F1C37F5B4E601F5DB4761270F0D2528E7530D75FFD23968ABE544E7A7E2ED73E6929204E751F47F0906197B73CD76A9344C2DE23EE1D931DFA494B28F131C4E0BEC05805EC946ABE750C758A4EDE464CF16B06303C9C8C72F4AF58C7EEF12C9FA257E996CFB84BDBD72C8B3CE6619E12C8C4F23F9073A14AB894007664FBCD9ECD4E37855B87759838D8527EA73FD1A17103AD3209AB145CEC0F419B9522829F777BE3DBB82C7B2C835793849A163BA6AA637A8B051488E9280E96D1B8BDE1C946E437A51F022F3BA5641D205963B92F23AB6E41CB545BA8E952206C67A5AD4BAC561E5D9542DF5E2189BA96D160A6BA528272FF2E4F25E82A8C8B363500949A53854C6BB5D5F2877EE33754B2BD97FC9C80FE72B6A7E924D69683120248E84E014705FB76990433EDA1E9817FDC2AA6E176817893E850C0999C606D37D227B86875108E15CCBC8D44C720E3EDF7A0EE7ED8C1649E406FFC323354C9F0B8CB06783C73536674C2EA9E7B5E9F8D84BF8A4F31610C73D95FD7C708AD400D2A01F6A6195155332702F084DEDE6835EF0993FE4097C9B57DB6F9228E9A7318D2CDF309B71EA88C80D85FB30A0CB56D8A7A812BBC3EF6410CB357EF2639F5408D9E208ACB77B0F321A220B60F84EC8E1270CFCEDE8F517CA9073ED82E1DA980387978DCC916955181ECC8719B56D49A7010D8EEF73C6530D0D57C777B26ADCF547D952928012AC1AE52E7043B22FECC85B53927C9EEB602BF8F7E1D755EF288DDFDDA9A27C2A60C942D607106F39514822D45D2888DBA08494B86011473E2F104EF26980AB7AACC84E25D5AB66EF003B665BA25220ABABC0577CFCCD090FD3FF184C4AB14DF794A5180124B1C3DE6822FCE63EDAC8584BB2093781DCF775CB743CEB47A50F1FCD5D4060CE9314FEBE4D13712FED8D1011974B2543854197C99EAEED49258369707CCE99F4A528D0F92A9860F78FABAFA427AB2A92436BF06671FCF46DA87CC05C418926BCB6B9FEDEA51B378431273E2464B8E604200B047C09759B17C993D10A425546CF3892EE031A49C2E738F1D93B250C7DDA7E30B9325CBCF07E029033227E8F159AF71CECA32A6AB496729D61561569F41FEBFB3DD7B39A4E955739693D6D56909E7FFE2421D10A8423F072016D4B1F94210FE9109ADA3BD71AE7800A1CAEFAE7E801E564E881A84EBC3FFF773647C7F7F66C3378060DB408E16C0B2460217ECCE1E53C5C43ED8A9645A1B10E0A08FFB4BDF8D411C4E73B01EA7AC7305171D7DBE846BD983F19E3471B30096DC9C800BFF7130790EF3064665B2AFD0ABAF22DFB26AA2DD738BCAF2BF60DDD8DFCA14B52288F300455229321E7A39D7655A97A345163922C2E41C0C5A69F7F9BBA64B2EF506532FAB8D53F3294D73B69B993C2C823BDF61B99D2464765B2044C2DDA0370000466412B99BC97B232340214AC9E03C0B545305D9CAAF5AB280FC40082F3F0F5BBAA970C6C13182B271719D24ECB49B2608CD4C9F03045FD5B940E7C40719E3A8DA3EA029D277AF978CC9998C81A530EE1FACB5AF73AC56FA7CA617109F5BB8A346A958DD47305149511FC7E41C92C75B62ED9712951D45EB788106225CF26A6113D4A069F27AED5F8C2DF235BBDF0D569365548F87BF3CEE6448105EC08702C1662D44D28B42463CF7F0CEED7D48C8E4AF4671C9C82B04F80910462C7F0C6C29C15082957C93910F345D1570B2E44BCA027268FF4C3C541282FFBBB8B79D532B431C390922C711E37281351DA926ED94E2A4D45E9B80C25C71160AB89B4EBA6EF55C201B02A581CC709DAC66FC1CD7F1273B2F109B2880ECE4A9C9079FE8258DCBCD62260D4EC818FF94510A9568956BC72F23CC35639A7E5A879138556A5A897267C4EE94910FF5CE70B6B00A558A6907EB2A93C25FC8E660DFB0119BF36EC8EF2D362AB8C77F3605911898A98EF8F283D3F9A1A6344DD83A5C6FDE44857F2EA617F9E7C029526D971F183D41EFA92798190FEFCC0C1F5EF30DAE04BB426BC7B10750204702B3BDEEA23E84DDA0A924043F7B659BEE46261C9CFD37A337A26C27D1A7626C549E8C4DD399CB3B9C1B1A9E5A3F564E4012063508F227E176CB7F4DCABDFC8C1F96C46C687279E512F9A48024E07859D2EF79EA9EEFC10D299CCA9472C000A82F5F2DFF71B7A3CCC365F404BF5CB2F916F9B66496651C440457F9ABFE17CBED46ACD2421E092651B06662B0D2EEC5DAB2280B6B1AE170BF5589E2C27528F08F5C215F71A7873B38C3E5A1DBA854A1EC79B2EAAA37907F981AD38CBE552641FA2DA0017C9DA8CDA059960A883823EF7209E8B6D689F8FAC049E9A8F4121F1AFAD040E461BD63187D548787E93505E49109451749A29DCAA4416E5C8E53CF71A04729EE2FDA0B164ADC7890BAFF0028FDF872E7025907F40AD56CC2925A5C1AC5A38ECDE6F570193634305B136D07BA21A830851D19B6B95FA5A34B85CA35C49AA3B5F2AE2D1702B6BB11BD7252A3B1EC49F24E6141D04706369B3F135B276908A15AF8D4DD2868DCA824CBB1071BE04DBD138398540DDC0062BAA2E6483DC08F51C97D7E30AB7268EF9808BAE9F3B22118EA00E879622CC80C260B494A43D087037F2DACFB369AB20915777AE3C01E1C3FA5BF768814E1EAC69CF821E1AB3975434400626A5DE9BCF73D517D012DB5E483D59350F140BB12558F685C321C5CC03B6D24E782E91A6019A38D309C94149E0F94C204C805EE0A709083C708B7B8CC96A7E6C77D4E30946B10DB9771CDC65645F0A9F4B16697D7833C0FE25B0625731AD6ECC0E4F054AC8639916B7D98A2E0FFFC81AA2035801D03F5A62CF8DF97E546654B1B989470210C59C90B9E0CB3332684CAE0799B4D37E00B078F2918F76B5756FA9998DE8A72684552D1250C0A3739A0DA9395B2A6D32886CD9C0D0A34446C615117D96CE473F008F71C25F245BD6BD816B1889A626CB9ED22C8152E7EB5F23E85B12367AE600D74E643AA25CA386DDC590E93C6DCF7B5FDB85C5052750FBDFD63ECE7766E5EC155382C79488DFF438CA1C335A7783B5A2035243F8CA53A09AB52DCB0FA49CA9CE3642EE64F8E9B4E05748BC01187B4773602E7EB7615DD9DE035E76E04997C68F71913A91D29E42DEBDF601228A32689AE0805BC0E6E519A58CEE6229A3D01D73B3AD78D9D1E69B5B82D60C57839E666C7D5FF83C0B431230A92FC581E1C77335EC1820D0D9E7BD5466742D21C5468CEAA577A223300110EAA1779302FE18C766681AA503616E65648361770AD092387B0F07485DD3D56062165077D9258BDFF6D3E238107FCDD7ECC139BC33BE7A608F82F8EB55869346C4B436F82524B25E72678B38032259A697CFE134185F2CF1B63F67A250C53508041CD7C27640D5550A823220086ED06EB9FD9AFD759D22590747F54F14614FB86C361224A0616FDE0346FEF55CE7E2051ABDCD6ACC6B460689B428EB2E48B761E68BA1D90414D35841CFCC05A8971A745774BE3E2CF0F568D5C870A8B64E33F2050D19254067F585ECCB7828059B193B2F2055537FD8BE99F723187D40C80B01A3D3CFACD159A16FBE6B6DBEF6FA73B416B720AF8BEFAEB47174D9328B14ECABE80F111028026D26C6B58E0CF23C5AD834B47538A4B567CEA3FB8DF82F39BE65A82AA198AB669BE7DD63A3DCEEA3B009A83C08A8EED9147DC45FEFC21CD14222D347F1A2EB35F891B83C0F9958B8C5C073E17D0A3EACF79DA827FA33698036E99B033468CD1725E7F3328AEA35C4B9AD460997E61C214075D76ACD97BF9069ADE03C6FDB3DA67A448AA94CD04BA7D3AECB86CADFDB99363603ADC7BD3BB101A137040BA9709E566E922DB2335C499322560B48D77779CD0DB4A61A13E1E475394C8663D2653CF54D0854466700F2FC0CF4E3F2CA179BA4C7A391D1F0ACE422CCBD9E832275441A5BC27E907D1CA2BC6193E84DF96114E580F187B944D03D9CC4E79161AFE2F650D2EB0CA7D01744E38D30613884E86618756A2540C3B15870FE1BE073A8392616C0A287B92252CFD9E0A6E88EF036A062F1731A6E12EF00E373E1939D6833BC5DCEBD060541769BA3B78E4A33ECF71EFB382C4AD531D582DE8F684C769F2A5B1DBA56B1148948AB194133FA30ABEFC4449C4A58173D695A10386AF6A92C04168F9C88AA6E36FF0BAE3F930FD6092CCA914D7741FCA512F09143D10C1FE55E3A5AD56F25AD58C6A83B192FF15D194233DF129FB6F1AF0E917143331A4ADC2D50C0C631B0C8658AA94AAE0B4EFB1AC990820B8FD5B55B634527769A5D6C499C4EF461D2DEC388FAD33C28796E0DBCCC0B195D2E109D76811A7841FC9F7F4792251C6BCF1CE460475C6DE74CD6F1F59303B88D2004D5BBD6A5C2669A2E3868D2A195822ADA9B89DDF32CDFD6F934809FBEF0F115A340113B2379A2454D914F310F3EE3E4B92DB939BDB13C145FA0B9D80C6FDA048121057F7989588DC3A58C37DC194DC8936D4F8B2A159F29961A6875C000B3DCAAEA8F7F6289BE5F0808713641904710FE3BAB8DE41F34AAE5CD03515C1768A1831C6711DEFC60836C2F006C257ED39C1C069EB6BE9427A85F2985AF30F6E6308F485BAABD86476C5A2BC3D3F00C9A257E02385FAAB97A38EE4005BF613D259E4DE334B4FE692208CA803F8E176ECB6D4E9533B01C67F3B5202BF42B24258D637B58877AF2390EC0FA7F00248AC8F7EA7F828660A1349742D7541621795771858069B1480AC48B6CEB257136C8DDE63201131F06D02560ECCF2045CCE83C757E7FF97A98FF32502E2D1D263299E62FF030A2B967EDFFCF4912CFEE44CB62FBAEBC3F0FF9C99544A147A8C77F204A3CE47CECAEA727E7CDDC571EBBFE3F5F44BE0BF44B3AED46271FF1D9DC98A4C7FDA93860B54E943ED9E9578882902469B5BCFB29DD99CF8D74CBCE7AFB35A72E57B5984D7307AD59BD2B1453DB35C52AA273FEF0D61943BF3F889BCA7803A85A474BABDA74779D74B1373277AD4501F20F493040C31136C0B059A01B9CBD1148911343F4A9FA8003817425EC1DA1ECE39A9C91F04AA778811A1BBC33D317BAFBF13B56CDD1EFB8A0C896E3F22C6AF4D84515D724FAB2FF13AB68D67071DE947B17C351F094F132A241F4F09A80847758F37A7CDA8E7E7F2C7B6FC6133A1E0AF6197E8FFC8F1C1401CC0B6C01404E2B1F3FF53E83682751AB9F0C5C99FA3BE38FD5921071E0DFF0EF93F6E2D385B178AEE7F6E71C72FAF3E2E9BD3D81E1BB15C7FD1411C90A7BF214B5FBE73A2C31F0CF6E74F66DA30C685BF28FADE7368C6FD96704E9A8A95639BD5D9529E5A2F5E0F890F773BE9F9E737C124693B18509BD0150E5D08E41995C985D26A97E2C642944F49C6EB9411B7353F43C99CAAF4EE830D39C296556DF0D33C9442205E9C4243B063ED1626738B783F0CFB671FB017579D2C1A11F4978ADAF2A76568165A287C16CAC829714CD7C25B1CD939ABD0B205389BF7C3BDB2F6C55AEB5445574C6B671746EB8A5798ADEB8B2D424BCB784F2EFE068EDA2F77659E74DC7E0FFA0DFF629CFB72588EC5834868859B36C262428720399FE25F588D54BF0D2B5E02457A96ABE05258F2CA07F0142713A59F7F68A71715C5E0D93A2B2F037BB01779C2EA9DD7A29877F2CDFC3E2AEBC662CF4911A9BC33C2083FABB8B1E51DCC3C01558E7AF352D72B0C89315922941AFCCE5FF75C8DFDADDB876A03EB2A5122898089ADCD9BA9AE3E59816C3382DBF12A3AA790E8496B80A1BAF6FA6E209AD48DD65FD0F3FA6AE65D7ADDF8B7C2011DC7AF8EB0587FF502E0E1D9430F8850DFF81CA04C3E5F5BCA6CFB2AE345F7D20942241CB5B342D0600DAB1978320B11C9FF401A30BE5CD5CF14F9F724FA88CD089699AD93B92B83248180AC3C84EF404FAF51A0EA75E0997F135DF2253AFE9648F2DA3DC1D7A1E843C96AC4A8BE96B05984366EA5C4EBC86671675D5527C3530E74D75B40508B694469840F0A79C72F824193A8B04F15818D33BCFFA91259437DB26C510C51C379538E40E228F1822DD286AEA97EDD9878FEBC5E00328CC90FEBDD877102E63B2851AF7B2C57EC01E41B5B2596F6A8E3017233883C7B32F4DF92663B7DB2807154236889DA9687D632649DB2DC51087398382C711EAD6A827216E7CC7A23C14507FC02D7F3D89EB497D4B31C70D5CECDC2C79A642BD2EA4AB6135DC7E18D34563C10493609228353214E6CD09DBAA30DAA903AD978CDF44BC052A96488D81E1E3414C3201975990BF9C8C059AD9E1C6AA9B95BA4243C9C6E6DA471F0CC89D38F505F95B1F2D2FB51E0D42D8D8C1AD99FA1CDA3919B66048666041A870BF446FE57715E3FAB7E036B11654DDAC615030783F9318316FE5F7D20DC30CF5269E1A8A3FF5AE79D13E2437D83AE270DA1B7124A169C4687A8D0EA8B1DCA2734836C0E92E8F6A25FE10CBF0756500F6E2C15EB613914029F053123D0CA9668A55F9365870E1D81818FE0ACF74DA305593BD4D0CE3015784DD981271488DFA2D650DCFD5D0A920B97A45D1CDEEDD2E5641AF1FDCB6CAA8C1F9EECC5CC3BDC3B30A2D2BB5E7FCA723387E3412032247F9EDE44EBFE1494EA5242181DA78F38388B70B78F6857C60DE031996EE68F18DC543962BA755558F23C281D569E70FF2FF5E60D099E2715DF8CE73B7BBCCE60CCA430E05FB1D22D4ABA06F420A720EA71101A2D903B8C582949023C1EA7737A264BFF4E0CA98C47F42B8AC446DD7924D652765F8BC9B6C62BD2E0D14D6A9C4FA9826DBE32E1A48E62FB9B4B2009CAD8FA728F456AE9D52E185DA08950EEB257CD7E52E11B5FE448874A41490E84B2DBBC2205635F929F41944282B33A699867F842294003B9A73B62C1FB6A1BA4BDA01F6C807920F2C92255357D66941548939FB1296627706DEBE3213EDC20065A371F4A669CB552AC2925A0C153088244AA385D62000FC13A8C0A4DD89667C8B857C98F8BAF91E1EA0EA273E228E544274C43CCA2D7964AAC0B7B1E6667FB322FA82439B4CD28BF39229501451A157A6561AEBB445968B9CBCAC48C63E1891236CC3FD139ECAB86CB8F16719678E5DCE7BEAF41214DC3BDE3E985A54731470B116CE00DD7798EA4838B57643909850623D7C3929ECB0DCEC4D2FBF645CA0B5019659FF2FD432C3C9A69CB1B5684ECF74BDB4FDAC64C3E9E449AB10BB7B18FA4D1838A889A5523C56785BDAA20F6EE20FFE78CCBC15F5CE49CF5D3F7CA0EA2C24E3D88E533D46D94D8CD4A896F8ABDE2D2E5EE8B5A8986AEDFAB971895B27EFDBB6B4F8C46211FB069376C28C9EA450FA8B4C395DBA78E85048B773F86D4B777B0770DD9B0CB5AC8587E8EE52D8A885A0E33ED8267F791203B7EC528F76CAE2954AA19B707DCD9EC49A5DCF7D33B970C5E40D9CC2FFCFEF8FF3FD66EF33DF6BCF384B50696ADD69BC0AC9620939CEF0B593A6568E0B3B897F062BF4A1E6C25A1B1A814EB25EFC3733D2C450F727DEF62A1BAC5A89A53120FF16718B64D0963D42A4598131EA1E1077BEFF50D86825D64527E35270F823E5563C065B7625CC3E447EACABDFAE23A68D03533D4F5D82983EC9E1C5DD45BC0972FCBD4CAB3C3BB622A9D97D6323AF3CF815899F96C6AECD2739FF7949F1CECFBDA93F056B04DE4AB5275E015361616E6F012A035DB7751DB450C9108E76947164BC4F8F22186F73EE64DB067B133967B66F23FD6EEEB3EDFB1CC5698D04CBC0CFDC44E8164C8C85ACCA2F980EB434AB51F446F6D2BA5F96CA7A94824D6781070D1C1157A11754838CDE7A64739417D59086FD8F292819FF0230735A07869E823B6A04D0EBE84A784070A5FB8C488879941ED0458EFD5B4D210744D39A9C38D6341519E88DF43E4C752C1A29528C588E9AECFEE152FB8D90FC961FAB0636FDA1871D01D526A72002D88053A1B9010CBC8028273F617D6C1978195DFE461D0B8A0D2F4CB3763CCD54357F2DE4E1FB37FC5D942FC75A8838433F4366B4CA40F769C568F9C640A8C6C861DCCD8E80917DC88DA71B8F9B447914F97200BCFC491F2D7189CD5B434ECDBA9D279CD06706E255DBCB34B08058CC993090CD023E1DA5575E2C0543D7199E61FB72193EFB58F7B4F78DC93F34F0202966B3EE32210752A9D4CACC17CCBFBC0D3E97206423223FED4DACC265197A3C2D4E65E4549CA45A0D63FDE87E90B1FF0C35A96556ABFB877FD5127B1490BAEA987CD2425A94EBC05855C6E5A89109B62123DC10FE7DBFCFD2798B7FBBC9EA8AFDA8C7B0A21DFD55000ACCBD56F99AC466CAFE5FDF648C77CD98D55FA0744ECB40CD67918E4D5AD28E76717752FB2B65D445D78B4611B0753C5C71CC4FF92BD015383A059F0152BAD800528E701530CDD5F2215B941A76492E5BFB4089974F154896E44C8D527DFF11DAAB78B3C9634BFDF3DF439804009363EB9F7539D0AD379091BFC81EDA5DB40EBD4B42D2F835E046A0EC4EDDC6D548311FAD54AF4EB6DB459DEADFF8F220DA4B4B2B88766C97F087E6FBC1CF9933E3C1379F378C769962D0097A379E1445078D6EEFB3B3CA666453956B19E3AECDDC1BA398E4CD74274CF472E0A054CB41A3F1D92A0705D32E2F160FEDE1DAFC4BF5F0504FE416C8FB3103E54CA1CB449E232F8792E7F86B91E3DB3AA5157F4E2412CD835F2C34F64B444F6A86CDFE7C36C36E615ECF27395776614C8C50917F96F1F723084B091438C569CC091D1D9B2DA1BB43F0460547190A2E486E8F16BD391E706795B913AB7D6B0094D9DE8DFC9BFE8D8D4AB101122376CAB183F1943C943EDE5656296173B58D5B8B42AC3E8DB1E12DCF79502B69EDE0674DB078BAD360E8381623B2FEE0EBD37A").unwrap(); assert_eq!(sig_act.len(), sig_exp.len()); assert_eq!(sig_act, *sig_exp); let result = pk._test_only_raw_verify(&m, &sig_act).unwrap(); assert!(result, "Signature did not verify!"); } #[test] #[allow(deprecated)] fn vector_slh_dsa_sha2_128f() { use fips205::slh_dsa_sha2_128f::KG; let m = decode("D81C4D8D734FCBFBEADE3D3F8A039FAA2A2C9957E835AD55B22E75BF57BB556AC8").unwrap(); let mut rnd = TestRng::new(); let sk_seed = "7C9935A0B07694AA0C6D10E4DB6B1ADD"; let sk_prf = "2FD81A25CCB148032DCD739936737F2D"; let pk_seed = "B505D7CFAD1B497499323C8686325E47"; let opt_rand = "33B3C07507E4201748494D832B6EE2A6"; rnd.push(&decode(opt_rand).unwrap()); rnd.push(&decode(pk_seed).unwrap()); rnd.push(&decode(sk_prf).unwrap()); rnd.push(&decode(sk_seed).unwrap()); let (pk, sk) = KG::try_keygen_with_rng(&mut rnd).unwrap(); let sig_act = sk._test_only_raw_sign(&mut rnd, &m, true).unwrap(); let sig_exp = decode("B77B5397031E67EB585DBA86B10B710B2E1D737F7C8CC74324FC36AB27E0D47B5855E7ADAD15530F1AAB8EED4F1426B16F6F9811D1F43EC2A06229CE43527AF76100DC23F3BD4D2999FB2E3D54B9159B2590E1E9CE3BA45B9D6AFFD28ECBD3676FC4093F95B80C08CF95F4FC893D5E4493FA0D6A2BA8A21D247B057BE4B26D024C857B1DF0C88C296F4498EF6B6C7B45C263F1C397D62B2402379E194C7D1D37B73D6306D5A8FA5C67F62CD9871984B3A93BD61DD60ECB6FB0175704CC007D5B81218744100FA64DA5D850310A0780DEEFE4EBA89BE833D0199157001E0DE3DE7B514A252B1DD37B8E94EEE382EDBC8F9A603B07082D4951F95114BAA165E5F788E43E561E7C2B452070CE96F19F18A39AF5A9D6F5AFCF71E98B253C0935C87317EDFFD469946DFBCC6B02F377FFCD01022D86C56B001735F0AFC1502CE6B430C1CF4F3254C74DCECCC9AFE404C2DAB395BF0007859D61857B1E7E8CD0DDB720856DE7281EF23F0E27E810241FAC49C9CF45C80665C8487367E7BE23C6783C05510E8B8967E950AB97EFAF3A94705EC5E1A096C54305C24CF1E7DC62A19AF820FEBA66F4EB28F4A82462F424BC653986DA24D79C40CF993C9E25560923E5970419823192060EC484D1C9B2992C3500C798D9CDD19C6198D94D5015923D9F76CE2B063566F036B16CECB56EB2DE553885052D0B7D96F3CA6FDC3C57AAF24080EA3501AD7DC30BBF0BCB734E3F2DE028190C527BA387E6E8AF8B0CC823913126F7506052B23C11819488D06659C908ADA323E8C927CA5653A60A7112A8C23D092798BD67E053295E2C70C10863C8274E275F2EB2851C684D060352541306562BB52FD2B1797070EC7BAB930F2F99C2903005EF508376AAAE08A1C5D1DD88164E6D718B59662D4BEF8E7835FB2139F5283149B104093F72F3A5B81359BF4196DC6E92E9067F1B9AFDD13DF9A90D8CE02AEA1C8C276FFE3067FF0395BD8B16A67F255D86D90C752681832F90377F2AEDDC02CBF467CA76E120AEB8B71F39EB3187A0E402A34B0A4411D6E93393B3ED2F30DAEA3E737029A31242D8203A033FA7B06A65793A54AF01E278A681792D44667178BC74650133CDC6711ED1A9AEF2F7CD6ED094B8579FB855494AE3B728E792D5B8E5DA39D7EF63F01DB9E3B8984AA5B3A5CA64C107062BE2793F15BB89FB9BFAB0A5BCEFC7A7ACAE4AC224AEEB39BD84FD137C582D58710B239849E62DBC92DCF853BECB009952BCBDEBBF28D49E330B6044FC53F8A8F90186378914F7068CC4DE3BDCB19D59EA9F5E45E414AEA1EF649C9E1CF15BD1A3CB044AB0E30F0776777F1035EE2EA283E22ABAF2397DAF68F03A5CB7F8FDC250822C70CD835C07D646A4AE77790992E4F322F2CBFD9EC39075714877368EFEFFE8EE4EE29EC9C91936EE6B80E87AD8BF2F8EDE6EBDE3C44935E37F6802FD3306953D42FC5973C42F20CE320C506270483469AEBF899338DF61D66DEA18C7A8B21E1C6882C978A27A016A40B6E3DB7A1497D64BBD703DBFEA5E71DC5B13C7B38594B3B6BFD1A0D99247DF4869A4ABFFA6D604F1615DD0CA7EC5C796F40E8AEE0FED3F9B7F2D870A2AE915EE40D2A4FE3D2633D6A3A31084B87DE3778F773CBD1C1C102FEF15C2AA5423D0ED262142653B3A6670797657E7E350DDBB0FF2E23B2AAE54E08841E50B64226FFDD07F7B6F533BD1066860819D459070442530F2F04A3E7FCECD5C252917BA8BFCB9B5A8D434E7CE4550A4FC389614FC40CB59C99035DAE2BCC9C4953D4983B4509503DD1ED934E6A69CD6775FEAB7F6E05BFD54D242D87510C9B94F8322D2A27BB53C0A56289B16FF59E11BB95AC81B2BCDB2B2CE0D34FB4B167B55CDEA3C2ED1234FA0EF2943026AE9B10A433E3873B4267807576A59B5A4EFA3774A48B9F4C6FEADDF7C59F0A9A1C4010AF94F4BF9039183393142002343853C663A01A5131628691E7BB13C9BE766B05F5CC6FE13B124B67BCA4ECF8B6BF67E4650CA6AF80BF57614DAE170EFD1A06F9EF46FA27971F7F9947A2A999D3C1D4F36162275919F35BBD46A881D4D9722D6CE4127C8FEE67D2B3AE240C9BB6A47F6F5E29B44841D138E42304B12144FDE185786E2A9B1ACA8686FC82618D9EA2EF94E2EF47E95AAA504C55B9593A020C68161FA009DF4917DB9ADCCDD7AD0E51781BF1F4B70E61B26400FA7AE72A96BECAE964BDA7B7B740F94F625A43A3775476B434F9F4C4BAB9406B9EB33A4C6911B2DA55510A63D490AAF768CF5A86CDCAD04ED55A9D49A63B72DC02778EBDC0AC6032340D93A2A0AF610A88FEA7C18CCD9C9304F5240CE2EA883F548D603937D997FB72F8E6D00E24A04C0A1786268CB379C77A49832177CEBD3178ABE8EA2BB5500F11325F0D1A94CEED2E68E99A85F9E052C3A9C6DCEAE28D4186CA013243EB205D4CA35910DC2101B1BF023B31029E3BD33A997B53B470CA2D7C48424812F550478703EF46F55A9B9A16FF1865CF1640819DE08C3F1DC484BF8203D4196E9F60BEE1339C67C10BEE8B2D865DDEC891109B70845C6947CCE1D4BD8D1361523C2471EFB5AF1DB5D84C8278787C3ADE9D463FB4492EE87F44561AD2EAFF08CDF84E10A5B84314D6CD0FD731843EE8D178722ADEC86BC0736D9B43C375D4E791205D64C05E39AF0BACFAC39ED295650D22CA423C89B3D2C109F5FACB80DBD223241C4654D19C0FF769EA130715DC20F857802B7341278BE2E65F7CF59004A2B966B9FE5291D9A3F9B868CA9242042130FC07836BF733267AEFB93384078927C3D8CADC33CAA2F6C6C04E26896C9DEF92BB05DE05FF718141019A02E560768069AABF22BC9CBA6DC51C591ECF0C9834609B80B17DF123FC4105C871676B79CE5C4B304F67D015CEEDF64E89F417E2CAE97D7B91D46906290C036879967194E7ADC9CF49D53698A94CEF420EAA669CEAA24CC3E2C51B4CCDD17AECB00A864DACD725A8CF134A4C0E21E9CC937C9833696DF4D9105A277C3F13D6884BDF2C52FE246577E8411DCA1AFF1EBAC16C4CEA191BFAA2AFC9D75ADEC3F6DFAB2628C4829AEDA43AC1C671B8009233E85081180D9490A4D6AE7F47A311020B32B3EE33418F5E701ADA10CE68720CE58A38767EFFD7F9FC26474623C79DE1F97DA9B3E56A3E409F714F616454F2CEFB5519A0B22759E8DBCC969EDDE1BCC9651026598ED0390C86F0C38B6D10ADCE6C4F5EA80204D90E6D1CC8356AE46E953D153F60EC1C4FA19EA21E54257401DEFD6D7BE1C86604C6B8F687013E12B23DD62D8934DDCBB145ADBE7047FA88F9BA417E12E4485F6CFE3871BBAC5355E179DB6CC24290E18289AC78FE07916518CC93EC69081CF0D6B9B2B0F887AF12FD4A3498D34023AA314CF311E408758A3DB6B0E80FAA18E9093E8ED4AAF4163F4E6D9E273AF59214B5394E07553E3866DAE71FA764556B0B49D116E775D9F21DAA2C293966E6B61570E6B910D33E68EEA1BB3C436910D39ED58BDC2E9BE83B8BEBC195D9CDDA45F233F6C10BFC047187994F8822691976BD3DF6DDC8E9B8FAE711BC678665D8FBF4FBCBEA402D85BC14223403E8D373C68610C7F1D06795F5CBBC44EF0455CECD3045ABAB4EAE3CB36E4A252F61091B77D91A84D2B383BE0FF3EA292700E7E012834BA7DA02DFE94120EAE4714BE9D02CDCCC227D8EF7A114656D9A1A761F42577B4C5776CA3F278AEA6E4A19CECA42D78DB47934546F4775CA84D4FBC29C3F3FBAED97FD69C9BCBE74C733B75127F25234DBA52518689DFAEA0987B3BF3107AB56B2151E8542A0F366286FA458367E30F5A39F7FE0C48E1C130FC1FDAF83FF44078D1F5B77ABB198B38F6AA9CE4CFBE5C9AD8B44BAAC90195F866F93776E89C1FB82CE80151450C1CB15DFA0EA5534A275423B409D0018AEE287371C9BF6492149A79A1790509D6397E9E7264B88A37FE212A6AC44581D97A3AA739A11E22EBDD3F4534877C70D30478CA186843C38C88807DC7AD8DF6C399845CA3F27D46400E45683B19F0BC681667225612EFF38AE3D21656473572DE2DDA91624FDDE8407154DFD52CF9367307300B83A84B9963B78E5C5E8D190541A2A0B52265405A88DB9331CC5A328DD2D3C1FA025852D30BA7CE7379C6D2B09A8222FA78831A2FB9135E8BF942A1D50079CDDC81B124B2D0A9E7D18862CDA8BA3A4A3328DE8DDAB3023C4748A63AF3B00469B3C983C974DDEE430B2A476251913FBE7FAB9630B1FA261EB5E555ED8C37F0B7C182D9FF342C8A62887BB3C48600315A6CDA64A81F1BECB5FFB7D939A04EF32CF7E541B78B641708E32AB38B8297D42E3EDDD0C1FF8D282DC7A01F98C2EF08ADD7233AD06B351BFA43F7EF74F028373C3EBF1B4BECE0929E20423B3893DC2B05F489D14E2F62013B20CE5CF4D73F782F2B2F8D935BF8480B9C40501A3A37B5C86489B993E18CF2F832EFBD0F08212D47D10B86F28672AD62330E9BA1A97AB6F0A0B977E88AE5F54C9C218E1C02D328443D6914E7A3BBD60F60B28A38C10E40937FEA98BB9AFAABF4FFD71F6C90E8B6C2DF6897C4B8BB64842F7A2CF8B9FC6E56297D8B10F56B0684606401144E71899EE237A438C70EE8CFD50983E3FB92E1BC977C05F54B42C27CE5C34E8E0B979E0F87E6DE7DBB95263574A96CD5586B459D0CAC475C6F7524FDF2997DF4B191C2AA410128B3FBC2A83FB2553B1A10709552286A23678FDC9E32E806952BFF4162DAB9C876D9DD2B93E57B18B744E2F36C454252FFB2A3B305B87211842BA03A5289FC210301871CDDD2276D2E99EAA03065FB47755CF9BEC59D37FA9D9D5870D70B613184C0F0F3EFDCB01E20BAD8DBEC862B3AFC0E5DD6BC8773D56083F3840AE2D14CBFF022653F247DBC9C2AB07E16CB93813BAFD83BB2A7497B6831D1066683C1B7B269B74899630EF0AEBB618F86B292F4FE4825420557C1049A489DEAE1BE71B2B8C993AB30DD2758E06A8A005AFA6AE8D0A0200A32D4CB580CD800455691ABED01880882AFB836CF426174A4DD4DF054A321799D0D30958DB59B56423EAC0617597E133A9212B2612F3895A68C8F7E838B8B93EE32AFB57F8588D382A7D9F48B32CC26A6A98B01B352D0CF38E058184AB4A256046E39E0775F3086E6EF40EB103C0800040A83F4618C70F26C6C9B7D60B8B9B24E298452EB895A2035533F2C32B1FB707E798B09E3B7CA49277620ED37EA7C88337F451980B1619E5D7DDEE7520839F187A2A521B3DE58CD84E4DD52DF384D5C1874450AD9FA6A0743DC136790531E2548E269DB8949062EA67CF0737C092A2367CE181022DB893AB5393E17552B8A8556EAD903C74B6C1E0A3D4101E1D9A26FD57C7378B4C401453AB02402BC298C8FE0FEC93168F715DA4012336A226CA833B0EAFD02DC81D33C39A480A54FCCAEA79F2B0DE99BC03F1C9829EB7FF969EF3E0C98110F43D8DF5504B3103A0806B925866B13CE92CEC4FBF5CE2237D87FE41DD11F4AE49FC3E9D1D61C4B835F0A56FB096CF9E7AD648F4116FF6F94E453527B7BE3A492824216F4760CA307863412652FA1BFD38EDB3E9E46DA2BF817B7DC8B4E07D6B1E7EEC5FD247BE3C332490CE5B775C28DBFE907454086D60A5D07930C3DFA798118595779B47BB4C02A5E9BE068D577B39324CCF51ACC75B371C4FCDB6D260BC9FC375D28A2737EBD0C6814CF6FB5742CB59B1F383533B5219B4EC47D1C2FFADC6A7C30B43C19B4B2FF315FB42EA5B34198B5C429E807777668EC97BA1130239519658DA89BDC420E82E7CC7052F1507AF59ED6C33985BAB2E4F9E005E9D4340D45B0AA34F2A12152152AB5AC5EDCB1489C85DD4FEDC5DB96B6048D3EE6919B115F07A9EA45A078952E3D36C760E4F4528C67F344E03B6B0C4DEA2AF3F9A344099DDAAFD659751123B70DE76A54DF8ADA7950CFA28E0E029CB3CD2BBA81D5C4177B17886E2EC390E8764B969581662F8AA1F96F45AA7307580A344EDA8496EDBF23F55D94E1C835A54517433C06AF04912E980A2ECC05E324C71213A03D28CFD109F09F11EEFFDE684EC9040C81D9D2513983223F4E4BFBE18B8633EDC80619145E89893B179293E70FF6E8B7321ED30AFC8C52614BAC317E8761225F0D4EA7E9E614996BC7146D12CE87F16EC16BFDF08F35B56BCB9D42CB00E3C980EDA753DD74E3D0ED7A5C2CFE8EBCFFE5A409862F5AB9D327F287E9A4B520FFA74236B4D9FD781A29EDA4DEA559AA54A150CAF63802656C21727D65522662EB990F3DA1C0DF481E488A7F71DCB45AA82C859163AFA5C02B782F7D316DA890ACCEBBBF3F82409A3413F0C6A7DE0562462F7840E8102C490B415F9B657AA7C64148C6B3F692AC71BEB79377B643FE1818DB1EADEABF43CE5010C7DB780DB9A0AA2C0CA31707864855C75FDE3554B37F9DE0E22212AFB404F75442BFEC927B5A6F6ACBEEDE814F8F7331DA7C688354EE95CC18AAFC3A054C63D3A4E07DF906EA7180BFB0D157ED54353B2A2FD521349CC9B251AE84BDE75AA7105559A08829EEBDDF439DB90B730BD44A88003FB1BCFDC6D1AD9AAE6FCD520EE10C640BEBA01EE7B54D10EF8258326F8503B0D167AFB92A6D1998D92F2CD9634B15E4E191381730EE12E787C4B78858B6A2E1870AC734860232B04918F4EF92E5842D131B0862CA999A97FEC0FB3F2AD65B1C9887B8F47F3AF9DFA94129596FD942EE46F639D283E560FC5DD50CD70D3B35727E873F790CC319123A241ECEF847FB07D73F6A805D4A56F38442FDAE5F8E2EF1E432969E69A7E8EC742CB45946399D5219E7CC7806AB5688AF655B1BE8C15F294B1D535BD2DB6F255EEED1963ED92930DF980D61F6EDCD0AE1BA7C78506543363C3C5589A50B57FABCAC32BE697252997B32C05732AAD88FC018DBB0BA6D0A650B6F34236BC1EE7978EC6E12BDB9D0C8EDE6D943112E5BAB5FBE14FF5E4475FCC736A9A45ED562F13601ED2F5BF8ACA21B31119ACD3B666A2F2F9FD3CF5EBFBE89D12F1CCBFD0E9B2965AF6A6A57D250F8B8B0DD5B392276ECDC558FE55095BBEEBBF695263648C19CAC1216ADB2B63000FAADF5402023DE76BDDBFB53000573A1D6389BF52E310898FED9202701A499CF5740CC4B538127CC70F29F5AD4D007FE4BD340C8C37CBA6A398EDF37D4FFFAC9EEBDEDB5A87DF770E6A45BD14EC149DE0598E767F9A86EE0996DE2C2117D17ACCC08ABD27176D8BC70F90A987B86FEC7D437D97B7E853A58B5BBD8B126415458DEA3A5E645D276B754B8EFA3A3788A82869B1168CF881D1F0BA2E6AD781C8F31E8C6DDD33FB0388018060F15B99FE5460B300EAAE407F4845930C5DF18136D73EEC5F99D001AA0CE45EE62D0A4A5B183268863D1B714E10A31C273871A98E742D55C6A6F11C24ACC51CB967D0EF1FB3597E41FD96E7775F2812A82662E98531152DF78B93C7BD21A7C76E33D4605793008A60A7CDF8AAE921260E58570E44ECF33B194CAC3CF8A601B1339C019B213B01FFCE472B6419EDD0060B6A76546348CF9914D321CF95DF52DA44F435A0AC5AE05C0E467F7C40D4AF6F6F61C528AA4BD8C37CC7831E21170D8E48BD120184B4A64C3EB7DF0635621EC1ABFDA74DC4B0408AD8F5931FF66C52DAA17F1180313FEDFCD1B97776F40D32B622AFAA9A89C34A483DEE72B5667B2ADEDD2E6933A63F7EDC9F3AC6769EE6C75F3818570B84D9BAA67F79C6685C7B4498D7B58314D6C8DABA8B901C3C2C25928022F14ED7FB5756F70B621D3B2AF5508029439F6B6856EE7DA825E73830C043F10F7290CDC0600CC2748C4693EE8BAC2B7990C72B0325FC2D4EADE6A0C20B821A5218CE035554279B38F67A6B0103995612897651FA0A5E4E6AF2E8396FCD6FFE7C6A8351706C8828627EFFE07F5FD3EA6CA8B70B6C6A9D16E98AADC9469DD47B08A9884DCEC55566E05644CC8D182C9C1571DCD4CB408C001D0FB0642885A27281CEAEFA60F1557824157652283D53F14649D36C32CC390F2D35B989A24469E24BDAA726DE6CA686EF9AA09AD894335A3BC2EBDEF965ECDE41F7A59A0F31C951A2B66105D99478CE5699E7C9850CFA247C9E36414C86763FDDE97DA0FB631877F52130D8A5152E472DCAEACBC09630EB033BA871B500CBDE7700D5EAD4E454B63CE7D90E167AED49CFC4E009468A259302D562146D749E5A4C206A34B0CCD3F25442F9700A4B5F5EE4450C62443B751FFBB05120ED8CD74A9EE9D7D4370E217CD5064542CFA59A594A02F1E70559B3FBA225150AF93E34689EDF0578F6FEDC1C198A1E6AAB300E12B0D9DBCC6A7252187A05E7F244925EA7F7A0E21D1927FC6C13CF2D7993F7069A27AA22CAF817AF4055C580DDAED5AF010BD6725CF3AA83D5F8853BCEC5CD55A952B6D08716B68BA848EF747BA316B38E54E8A0AD461613EE857CB0AB6EAD7BDC29F6529D9484E78C460F63DDD33FD6C4EF2D8BB7A4C1402600BA7DB79CF7D3285D4F5672C3452D9D0534682931D19FC33A132777C24AD3396F8CF85956BFE34879444BF96CB6873C06056E4283A6B5BCEECD19D37EE11A6E5CA9B2F9C866DCC6D44336BE8735A523BCADEBB3ABCB1CC2DBFE96C28FB4F0D187B38226184CF49118B2F727ADF7776CAADE2776E8BCEA30AFE42AEC09A5A920070D95B78AF793F0A8821B4D3462A78EF8780B80A2BAA219A0F13D653290DB9EE14ECE58E12FABC6254EA9DEC457329AFBF7B8C5A847EA5D7E1328A40CB2B16C83F56772380FDC304C792C4300807DB4C64B287121D00C71F9EA6823A7B5904D369B3911ADE504AD48AE9D32C293A87E3E224A1C777164FFDCD53E96D2247531C942C11145C91550E85ECD24F946201BC8E8462C9F677696EAF827605B697F49B3E2E240E3A6A498A5C79A9D9F15D0869300B7D6F12E409EF38B32BD4F14662C7415B7819B03F6D5A82B59175303160203009C34D29236B2CC5C9589EB65ED88DE38E495E56B53169F41F09EEDF19E5540B7B791220D8323E942C3539A9CB714DC19090660215F91EA62F763293085DE770E9F40A599CA4616CC8670173B736A5977FC6C7ECCCA16C3803DF730E8B86448E43848835F76C751A69A6AD393E0D8341CFE8D09EED1A6A4527001BA257B2FA2A6C8D2F7D5091DCB6CC57A80595699415FF37171D6C0782F2586DED2ECCB6A870A4E58E6CB47D83C4AB389B81A865507EBF30BBE78F6D7CAE4A738C7049B072E90954AF881789DC226AA3D3D9CAA5C313AB1597B1A3CA60FB52AC294906451A77962768E7AA1B83CD147AD57270732C869C498C89DE20A91650C9EF39F20E01059F4271E9E16B8BB0B5F2824D69C5E19237AA597EDDD23E7318F1E8EB75804FAFB0D5345100144157F0AE10B02DDAB81221F3766736472E72A20347A3B166247D70E405673218C292232C6E440FBB674DDF89B0DF9333B7170F3240CB6012979C1001E4042D464EF5732B35DF784231C5E1FFFF06A6FFAA63FCAF589827158540D481BF5CEB9479A7CBACFB1990E068E870A52CDF7534FB535EE6AAB7C78E2E38DD80D99A333FB3BCF756044E9121A7CA0A0E8E4AFFEF0FBB597D7E8186762DC5B7863C264760962BC090806F282BC13F2BB1C34BED5004FF136987E443B1798EDDB62DA1EC3C3553ACF07899D8049B96E31833D0711E09016A8670130E61D8A0D7D2CDD86240904EB9B543C954ADD21889369EF11CB6F6560AA74D7EF9F7834AEE2335DAB59B2E2C180D389951C6434836AD938388922197F12F2863A3FDB49C82EA23AFCF1D70333AF34EB7A26AD3C7215209F69694D5948D64EB0F92079351FDFEC61A8E507B69DE19C910F93D0F640BD4C5E89D2AFE764757296461AD42F68685048CD38FA634EBDF991A156709D3AC407508804D21DD7B8C5FA6E6AEF51CFE0970D459AC11D6B0673364749D4AE40DC802493963111162C7A5BE8BDD4E09FFC7C7CAEBFD039EF8E94D292E3BE337AAC42C58FFD5C02124972ACD8D817A4F3C71BBB2F35B82B6E13191F75E94E1CD910261DD20863519C6D99CC9C6782E33E3A9EF32D9FE66E8B57855F63E3B168D0ADF359D1E7E1B653F2C08A443099072F751CBC9FC019DC3ADEEA9D4B02BEF719BB2C2A175396F3E379F1848F2B74B4D2E36FE9E49EEC4E6B77CE35B7A637CBB3760591B0C512075B5B6A2D28C29C8A35CD83883A5AD04B01CCC4C3ECFEA0B0FC76FAD2F658A9B126CB43EB6D57AAAB0F23297858C099481D4C8C1B77BD9C0C1B1A7A74288BD1DF39D3B3D5486A0FABBC62F3C7F1E9C002027D2876459C1D558AC2F483F0B9BC52170E78EE43A68881B58DC866016B0BEC899CBEEFF5F4BBBF526F80F4F693CCC1E1682EB06511284A0BB463DD6A0CB8B44C7C117EA22BEA4136CC3D5EA0E2ABD9277098EBBE4B607131060C4B553D18127C7FA2C9F937187E76A6F507BAED578F5609843E7712554E06C0AE987E39D84357E36CA76A7F1C9A6B4F87DF88A5C5B8C84A1874FA7461BF2F551133E1CAD7571CAB178E7586E3EB907F500C4F196F799777580AC956125D24A9E016768AC5D6AF09E03E51659C9ED2A2AAB23E2ED2BF90E11FB1FD97FDF0D3E38A65AA6748E4A8BCD22FBBB093446D09E7F79E08C407B59D49E0B4D2C5A5085A8700F4C9762CB057DF67C3D831828EF9551FBF09D160D0564E09EB51EF007CCD26FA3D3B43A264F862D97FFEA0CD6F050CCBDBC4EBF3D06E415881A873EF76073199EC32F862D8282B4EBBC6718BE3114BF99D15E25ACBFBA0B19E71CC7A570CECD98A9E07703A8FD3C042BBEC5880F042AECE33E869A086EEA3CFFF38C9CC05076AA5A35B196492EB93912AC4C0C6C9C7D6F3363E18ABD4E12B0E4CBF01F73CB05E09C7908CB5CF039A0B0E63835340FEB625FDD556E0EAE428FAB71962D3457A0F179C0113595ABC3857E341F02E310D56C751150421D831E1C8CA16BE99C95BC204A4E577280088B175DCC59E21C915E975F7E226941BC3388C933A3B4D3BEBA7B3E7A71229284C7FCE9E01637DDCAD18238CDEB1723BFB213BB9ADE6BE6C394E30F5A5800BEE708B9671B5F0479B1EB4E85AF814BA9C83C2339215357F7012BF46FFFDAD54AABA74A89C488D95A621BD10DF98A9CB232C261C9FA5372D8A7EE16DD99C29113A2BC1717935D8B3DA64F4472C2AF766CB2917C9FE4F637EA9A43F2C068CC509DF8702725B7AF9A32CCFFE696BE6D2EF3F9DA393D7A8B5163D930DD5E5017A4AC6B66065E55D2BFCAECA4CEA006E6BFB189EDEC9FB0CF52B0101FE89D4EB8FA8065DEE52A1FBB57A4FEEB6CE951B608F045C1FC3CFC350D35754C1856B5AB34F90AA3E60107F191C0C9EA791863E460B86B5DE08079A875AFC02AE07B504D9884002B6644CA4883E2B60E1EE1A2A845F2275AAF25F5EDF691D7101AFE9AC87320743F6009DDBAF493D65DA8B3E5B5B9CD2BF2CE360C180B55E1143AEAE8FA86306A30942DC578E3BFF54C84F5676B31726AF7079467001B24827750DFD2BF642FFF41ED2EB1CB6AD38B101E9A3CCAD1197165DC7E8AAF0EEE6DE759030664DB0FE92D186FD7D47BD9E899AF45F9CD7EDCBCBECEB9E9E0A86DED2D3D1CA8FDF6DD026B308FA89421C7C0F21E691B6A21B2E023FDD605D762E3C8492CFD91E88D1FA972C49662C061D236CAAC6C2A42CE064048EFB16C021EF9F0E6C755E3B0FE4BB2DC49EDF7FEA8F47C9EC3F1F19AFE3C41AD3990BB2E725291ACCEDC98454D48CFA790B0D17F795317AC8495A2FCF5EA20715A3D719F9575C1A52DF0A83C2188A2ACE39772378DA2841B25FB0749A644A6F1AAF5FF72CD0B3ED82511E441A1C53517D1E5BB7D41D4CF71F2BCAA70D1A6A20E7EB3743BF2B10451ECED3E678B7B296B8022E492640819008109093E6A97103F7A0D0F476B9DB3B0C6D41AAA928084C7B7384553D9736182E1C05E941B7CA9ECD8C8CB96259B75BA7DCECAF063B4DB0AAAE550D8F5C1E88C417B4CBF8C4DA171487DC03C4C94C176FDEBF2F12F752548EC79686735475E5F88D8F7EA40DB1850ACB565A7D67F169B136680410CF42DCA5D2166ED4916198B9A7B48D4278E6B8F31D6C6EDB9958832DD340A53D2ABC4C9EE8D55A62AD7AADDBECE2898972E770FAACA4BBC62961B344E3AFBE02531CC9AF3A5DF7BE7823B67DDDCD264FD1C35CA4034502DCF0D7B471076B3679D1BE9BB5689E4CBCF067121581EACDE1C02446F68DB8A1E8141E32894245B7E060442080D317BA175A9B9C10D79A9D8161BD17CFC46CECE868E0B0E8FB1F69FBD1880F46824DE4652CB0B1696C8865EA9B5DB4684DA4F94ED521D3F541A9316745D6DC47529E4F4C10CA26ABF9AE7E8B6836E72E670CC58860F705599C3C3B9844186221E768BF9FA7E3AF2975DE0614D33D36D6100B7B5EA17F34BBE56BC6BCC5EEFD7EAA41838BCD166ECCDA329A49CBE3BB6F1B29613DE9C06EBAA8D58E7DB84DD0A4BB1D3F0D8821FC2222D5A59EF14F392A7754C602933300C729796899BFE4F5EA45D15306D3B5B7A0171DFBA4E88536334A555EA3A3994D1BD7F58C4B651465599D78013634B51B138D4A4FFF81F6F61B9BE8E30C215471380F61D6E6013946CE2B2E57567A04AB0E6DDB5209362002A314DF48F2919E8F3C5DC6BE2AD1C5C96D2CAA9062E9C4F33B71A9E948B59DE0EE07E4E7666E6E8983812596126CC8DC8839A584C360AEEEF0796E60749EB4DF72A050434B466959E540563E845370436F1E5CC6F88F84B96261E432D61FF344B145F7C15377B7CE2CCF2F0F645144BBBE38BF90F179BE177E8C4210886CCF5685E7D7716C138F4BAA1973D89A65422AAB2E02980C3D257F5DE99BBAF5FD6DAA73B60569B015E0EE217C8B611F8D6C2E4BE0A7362E2FE413EA2039E7577C65321670811C9E0E9714FA646705F17D5F3692A4A883E5B2A91152C8A633B701059AB8A7A96F86EA93545465D50A44D4FEC5DADD7723D512BCABE9CB599FEE8FBA2BC581E21CF32F19E61126A8A9EB2AA4F1B2136F20B51D70B8354930FB2C89CC64AE7AA6AF5A748B817ADD9842CCC49E1713984464740EA0767615C63381B743C02B00F69081AC481D93D268EB56A7164394A7D3FE61DC9776EE0E767CD0CA693061860A92BD60C7BF5F4D6DEEEE2968FA826F8F0C4A567D5A2DA2540F8701139BC098A1D3CAB958B8325CDE27A1C988695FC3DAE55E26E5EE2A8AA89236E35B93731E7BA1FF186643749AFE7E87C3D2909AD9D1C6BB7F4356AB7077831290C5AF67E5F9DB9E2FAD38F59AD84CB17B96F55AF21B4A3BB915240950601F3D4944A2FCB0AB423448DD049CEC51175EC1C0AE8C7A86C2C9070C45CA0A78BB085F2A775B004DB4185F940F4B685FA9A84C8EF73A134A2FC2C2F7A2136E051E113052FB68768D20A904BF36B412882154A4EB660361358C4A61C73651853065896EAFC237E65B24F9148A95851E3FA9C1A45D1F8B029970698A05F4B255C6DCBE2CF9F9517C9D181EC09EC76E101420B97BB7E6449320D7F9AAECDC85623F2148E2C17E759F4A9E8C01EE0BEE08BA7E674E523D9A8513A987EEA9072D1D3D230C11DFBA942F8B1DE1DA9CFF3E1A495C8D448F3CAB62564544A46EE22CDAE8E2C9665A82818A55A0AEDB15AC017E31F4F7AAA60FDCA1CBA9DCEDC5E6DFF582EA4C5A5D3E9BDA34EDA86075BD942407B874DC550F0DD1C1338C18DBC0E9EDEE37B4097B1D91ECDB0F74878FA309203975AD59752193756C0520F3CE99A24449C747DA5583F336ED8215DE1D14B1862311D6D7E465F60901400FDF30F385CF1494B7ECEFA356307E4D2CD6A0D274B6F78A0C543829CCC6523A1FB57AFC5EE93CF68CE68C4BBAAD2A1E7267F0D76B56D1D097EAB1475B6DFB5BC68E83229AEFDD7322D5E5C4DA17BE98EA571E441AFBC6A4785AC28D2EC84FE99A146D91C5E5CB03ADABC1CCF40184B1344F2C23717B0341DBCB379F69342A6BEAFF0FFBC53824662EDFA0FE0F7B737CDD1749D054B95C5043F226B2766347B49E65294AA5AD314E0A1A03F7EF51D37A8012630CDAFFA9FD054E2D1B51ED2B15EFEA1E6050269656FBD4F891D59D4B6A330122239AC0F344C8CE2BEB62F69D047AF78F68EE8C355CA36598A0D28ED1F5BC4D5C0D75AF0A4ADEE540724FD0ABA7C41E0174C471FCD709F44E297D19998F622C2FD41232EA7DA3FE6A33911D6570F1B8783041DADFA342A26CFAE47BB927E56DBAA669A5170A4151DFA789FBBF0FD5E3E43959510157B1C974052F37F2168242169FAE63BB3ECE4B6983A5C5E72B72E4512BFF0D958E7275777599EDB355572FB3711497D71AEF9641E601D95B49A4566454094B1D7DAF1F50AFC2FFA22BBD641D237C32DA2BCCD786BC9F70EAB7CC3369E2F9FA960CC073E9E37BEF1511E144C400301B354062FBFF383646ACFCB3BACE981B171539B2ACCBC4879F85A4E6B1C338089D2FD913A4DD9F027E6225F6AEF685B15FD32B90CB8C39D052EE2185BA4A69C7B2A0B4C1FF4C8B7F668CACE621B6553224C6993FED2352482EAAE41B2B6C02CC0294321909A0846E583C670F1848410026ACB01E139C052F64C605E44697AB9D1E866BF4FCA12283016A5C00772F213AA4C6EBC87B36DC63214697C3E7F503EABD073BAE5A89C3396E24AB6B71601A49D3F9851E95BAA233C32F55A0AC3A4B68B7A0AF786A21DE9B65E63E3F1827222EDD1C1CAB82DBF62942678569C551C571B891A1136D700A24A93792A9B335F9B9D9BED9D7412AC97E605227C920912892BC013C73342A3B0F9EA125F435811A2A4ED6981A86390CA4AC5009D354B0F90EB85D26038688B4C1C4EA92E21FEB8C478E2779C0AFBC00241B71ACEE5BE312B5C5FEF62A55C865CBA6E8F70C0604A726714B752CB1E85696687A8F82717CBA70BAF6EC4A888F3C44C6402D9B81072461B6FE9C052887516F05D549BC8273C21B192662DFA64C401D3E9790DC75F9F665B479478211A75B607F99BC7C9179049083794947A91024798CE2327DF2F16E119A245E26349F58C9763E47A8A0820EEFD21D644C7FF499AA6C232D1AC418BD1566A99A575959082C26934E83E02844B9CBD98B2BACFA81EB717178BE042DCAC53971EF258D7C636A84F05FED5A508F69DCAFF6A1FDBE747BDDA725D3D959721EB7D4CF43D5E3BA7A2C8AABEE4644FAABA7AAE2784BA36D5F182AA820128AC602F59A91EFBCA8CC76F6F66231FDA124E9EE76C702184287004FF264AE870B74B002E176465F047A240E7F7624DAE3C06B363CF59704CBBDDD95B134005A10B57E6696EED5E5CDDA8C13589150CF54BCE2958897844AE35D66084CB53F131987B639D98C4E827B3123A06042F483FE915D665060DC73BB3F3912F973139720EAF71068A808C71A608D101C9F6E4C34A01B17B85945074352F86D59FE9AE2C9FB77FEB43F873D21F0EE5B106F8824213A11FC45D9F1C5721CDD308EA127ADDE4FA475EE05B72521A1E1BEB986C0922572C4F73050F2DDC9327206845271844DC8AF9735CE4FEC86D1FE14B5A72BB44EE889570B58DE8044641AE87467FBF35D73AC088D6D225C7A4661237A32362A72DA1309CA21CB575F7F17F8333C667542312A9CF706300AE94732AA2C74F1842B380CD792D9CA64535D4FB8CCD38FB09C40F1DEE6B00B71257CA23C9607611918C132C09EBC6CD9FFFBBE142350A1A49FB4019B1175CDC58FF387F75D2BB0164590A36DD9E01975C96FAF1BF02A674D695D31B26192F3AD6048E709FCF5C3BBA27C5A0464F5A3EE376443A989C36949582EA6BA9D70EDD164C4C990B3C2719926438DA9F60E2A7BF9D19F55220F326228C2F9F4C68AF87946C1EBE46ACEEDD5863303080AE8918923ACB7777FAA6A4B26A641125E1B00E53517FE0C86034F8FA13A81EBB4A54041079B8EDD8A96CC0296495147AA7590385D67F7476934FF52FE5EFCEA1F2EB4287BD51E9F676E18A3F88A882EBC074C3B5F57906BC84FEE4AE02E898A2583A80DDFBD777304D042F0D7527F08085E19E9D81ED0998C2DAC06BD1496D905B18A81B15AEB277983DCA6B5C1CEBC541538F04B3EB6DCF527C74307C144B1F2223A822FA246422800E542FC7BA10E1C2DD521A4EC291D4E0BFAD7018945D5C012509E517815B52C8A87951ACA5D63771270BCF8DAB54196445CFA3D632EC60D9B293907F1D8F8550781FC19CD0F9DDE1DC5694FBF5D954A4EC1E3A3E157B87DF750DA6512812D1AE8CFD786A49A5EFF017677AF43015FEA2E0B82F580E0D3071F2C30D7D12386E0775937D5DA0ED5D2161DAFA765F8235472809947080CA40717F7A549FF663BBA04279A198B33B712534A692608AEFCCE8DC86B5C3E38FCB6BFD28DC44FE519CFD084B97F83CEDEA44E03A0E9B5A1523B3481073BF30C6A9741A4A0B22A832979CC5B921774286D049C5E6943D9D0F19769F5B5D39E1B4A4610FCFF97570A528289D29B586AC7E5F911519D6F6C2DA6098CB7A43E8249F738847C717E5479B66791C497068236196DB245690E213D74B34840C86584B6EC470F773811277E892BC63E8AC1142CB5D0223816FFB4CD59356017C47DF6F0B699114888226FF322F39C578076DE368B339F3FA7A590559915D0674B96D7B94CD367D9CBD1DA51397CC30BD13A70EE86FC5D0070CD6B3E2AD67A373CED1A7DBFFDBA335569F4E47869528B374B730C7C1B95769E1F89C377290DAE953BAD4D75CD3370AB80C3DBFA98E0953C913EC04463D2B3D516E4AC623859175A425814AC24FC93C1E52715E4196759AC55209E709A109715AFBF001F0120439CF33AC8C1579DAC786A3D2D7F0C75D3D4E8D7CA52245D22BF3A77E777AE1BE1BCE3D8A0E04A83479AB0960362AFDE6227859B8819E024AE20C02F6C75ABFA1614C1D98E22C4C71B3E6EF90451E053BC344B9BAE9221D74A5AC27920C76BC4F5D7470DB28AFD4449ACDF7E8556DB11EC131F227963D5A9871E37963E072CBD11F6597CCCC212D713E30CB0794D4428BF432158B7BC940DE410C07B5D34DEA33A0D7D2A04317449140B50F2A230014F26F2687D5229AE8B65C2B6764CFFF82DA3DFA9588FB0B0DD5853DDDA2898CC5BD2C3C09595A94E4CD34847F4CA05FB14604314793C3320EE5327E0CB9CF5ED47C31679D0E3C0CBB41633AC18684B21F59C46CC2DC4BC56EA0C435547085FA0D3B6411E3EF2EE9752EA0724AE1219376FAB5E2867C86FF08A1E4AAAAB075D1BF9BD0BF2F758F3D8131772E9C1FCE763B57BE58387E945F5147BAA058A95B21A4A4FC28EF0D7CF315FA2B539397C27487E837C6F6B1C365C826DC184E54329271686D2D50A21C6EE42CCF6B1C44B76BBAEEE8CDB333D2385674B2000C9F47797197B38664AE7C250A59B3ADC74327A757517F7011FC208527B299276567E49D3E8AC4970325528991FFFA33F4C41599BA3ED1F40C289F200358B8B872AA90195D653F3BBB99AB2757D2D04BD7ABD975C6496E8327B22638A6940E8F61BA0C83F8D51AD54CA819308C3615D393FAB32E07FB9590C6B5C2C5382748C5E2C5CCCF2EE858841DC79568BF31D89F1E0B4A08D253B682EA5D4A3ABEF597FE12F4FD99903789A336C3731762073A4DFE140ABFFC94CF83134EA2E52574B6EE39997F08607C07FC31D9CBAEC888A6FF238A8367402987A6721B3F10B3AF53C9014DDDA2D98249421E00348A4D35495E9C6DA98EF4AD9FF1FF524ADD9987836FA69653989F87130ECFF9BC5A8D886405D6342715186622EA8B0978ECD80144DD125B8BA368BCF7585D51F06E989DDAB9E9E6D068836B35E8858B5625BBBE0FADB7775ED973A7DFE7C537F30DC9FD242C1FBDC448C9C846F48934E82687374E99BF3C26DFDF68B9106D3F1F340D2BD9DE648B3DA16E7C12C3C55F2F415614A756BDF6A2E77C844096A25F5197D20F39DC975AB80618E4E038B285F7908D4130ECFB5885A1ED38EC9FC426CD556B5FF866A080B4D618B8D6DA0A9EFDE4947E4716984207F0DBD65DA5C3511F0FF341B7995D15E2EA2AB372E52FE421CFD429FC71BF3FBA3F445A3748A69CEE0AAD6AA80108094DEFDE478896FDE6A2F18398B2B95362F87752C94FFB46D7C3F84E2ABDC2EA8C7767BB9C5C29B6BE0E5A897987E34400B7150015AD5C7BB01A04487D8EE6464570C08AE7BC72A003C6A970E1AF1C20F887D9BD2409D3E08AB616F56C019313F4497B8A3E7D94437E7300F6F65F1F1A1AA4479B73CDC8E22DFD34C557C3E0D213F0AA64F0782FE9822C0C658B1938D504E260B352DBF56202689620175B5FCBA0785A78B3605191D2AA73BC6A1101A6A1A80BB399D0DFA5DB942783EDFBEBAEFB20B574B03C0CD8F8BF302B9E5B843CCDA48BF7D02F1DCAE4E479A9C188FE7B8FE2E89C1F085978613A66A84F5B3C7ED063B8325E0B404EC54B6B9690CFEEE6443422195FF1653D52A4790BDAE8D09A09181F1145704AB82ED246C0C01350F35BA1BC5B3E6668594B61AA89F8B870C3F236794BA3CA3DCC276BA0344686D0488B6B758457BA5071823AD13B6910AF09EF8F76FC52E1A8BA9665F3A41B89618A795AF995CF4E52A43F542DEA79AB45D896DF187547AA2F913DDF87BB79F1ACB22B891D1A42A48F5CB47621B3737A0BC4340BDFE834AF706747B1CC5DC34E31DA378E094DE546F0C57A7C2BE9C8500B5D879E678C28231311F904C4BFDC71299D36B648B4A0ECE81E1CAA02CD3E8D4473405A7D97B2CE80068F4ECD1220559E35A3CD6C28F27544F4527FF044F8271022FC17B58A9BD4CF4D74130039C9E11A93A96981B4905896121F371A1FF3E5FCEDFBDF7E3C27BB2E85AF8D0F1D701C30597853D8525D2F73D5172034BECF50B0012EADF81F75AA9A2FD88117F1EA11D58826C6F5906C025D5F67A84EAFB57A290B0B02A64A47A74D02F96AD85CBF09E5F36CA731140DE2C4F1DCD24DDCE26EB0CF9AE34A67A8FF71FF8F0D0D43354C9E39E242959C4923C16A7C5ABF93C7981AB897C4276CE98961F4E2CA455E8F81EB06A3DB573C98F32DE785ABE6CDC6BD20545F0B148636771ECFFD3941B3F89E0CBF0CE2761C95AC300EFCD18D8BDDD958AA794D83F50D0889E9AFF3EA323D54D603D6B5C96D9A00B946C44F89B0197B761CA68CA6E9D9BE32BCFC96E7EA7F082F421BC5AC77B102F4CEE0E3ED9E0685B291171024D60231A3317F0972C7C181B559F177FCA9A2D7BEFA518D4C6ED6F742E24A101A20C9E424676FD557E18572EC692A65E069316FFE7C393EA8F0C2B375926BA8F363030B6F2B9D8F11F18CD390E8D5E78205D3CEB38E1CBB964267AE9122AB0B499ACDE1A82CF77C1E770263DEE44B562DFB41EB961AD8FB77A8C6F13903ED01027DED6EAF26B46EDA28D8BA7D60A5AD2CA8664D8FD08C882AFB2EF661D07F28A1A901C43A439A17F7B496D8D83C681A57CA077779D699E106123C2B702B645507EAA72AD014B130AA4781CFC78B9B955675FF36656792FEDA37D26F20EFC304E1A0307209B8CFA6EB731FAC5D4E7C7B28E21D12E1DBDDF0CFC4CDBA0D9CA28B4E1113965BBF6D4D4C6F580344ED3F0E1AABCCB554D59561912D6A8A99328B270024F5A795FE4692707F1415835F6DAE17B2603F09CA48019BF638C8D3B5B83D425DF478F80D7156D5A1DA6EE0DA923C6B0D2ED155E0B21198E21ACFA6FFEF9E8466481D4919FB4C209C84BF3622E1AE0DFA4B91F5C712B84964FB805B34A9086E634DE9825607F496E6A1CD45A6D81ED6D53CEE97276890EE7C50162001269C41B14173E9CB95A0B4D838C4CCFE70069C0C63BAC0A1E37614A1F7AEC9F81A054CDA0A045B05FC097E820F8F5255CC876D57B6ECC9B5BA2980C431A3059C5A5C6C2B5035686D5F3CA1A40514FC83667D3A5B93DD95324B98FD5CD5F9C5638E1AF09345085169DD1994CAF716EBAFB62BA527150BB0183C5861CA97C1BD90F0AEC068BDF75379A880C978E94D40F48EB17EC3FCB172BAB838DEA7AF9DC5F27E5120C7BF902644D922CC9AE5EA2D8BEA2CA56B563AB9731CD51C2A700B9D48DA9D577692D72A97B2E99A6158060233FE310258A5EC9D157834370590EFC2999D03F8D3829F1FBA0CBDF95681EA2709BA7A8F43759679E3B6A975E1805502A3B6F63E656F6041C830BB1BDB3CEFCF43D7E24CECDD0F7C3BC62E51B7B59BB52CA705CB38216104E7AFFF2466E700DF8C53284810A19142FAAA3C2C27DD8F2BBFA6CEDB991FCDAA73E523A773C70DBFE10AAD7A0292B586E75143FB272C441E0D663BF231A73B8302B5BF9DEB9C454ACAB550E8EF22C8A3B3C6C637CF123864C3BAC70BA4ED239FFF7EBE10C9496D71F1D747E1AABCBB09EE6C3424A4B76CDAB95C80E1ED45A4D944D2AAEF60DE56BC864DF5DA4E7ACBC862BF6955BB093CA71BF588AA38EE22D684DFFB325A4B8338D8A98BE8C01EA51B1248EA15D5A3CCEA5E18F0F4DF142B3FACA1C26CF2AC7DD6032BE9E2EAEDB20A2E0456C87F7AEB21EA295F142313C70B8EE8B25311C22EFF06E01CC08977764149AB29243073D652F5F30A4DC9239D71F5F626F075E90633602D77B7A1FABCB07E8272D02791EBD99EAEE43ED425544DA73797C377B1B64FF942E93DB0C61A04DDD0413A345B706CE16AAF178568C637FB9D2A0185BA4B149E62F74F7B022540109822E0CD796B9DC583F2B141B72262C2756D8F1DB53EEB0C08C0ACF19E902243958073DFB02E944A86BEB8A2EAB5DD0A6B3B6BC7916A028733A64BEE7D8D0DF9AF845EB9142F1AEEBDDD47B6E65CD5A306818CE7BF968371B2BA9D66D4CB0619408BFD30C608DB031F3464D92202F75EE22B55C6AAC48346C13240A0B5194A97D21D33327DAF7D2D910B0BC7A2DA723944B1297BD4067DAADE2EB5D62FD59D33E3CFD47002B11894F613DBBF620F8D6F050036C53FEA384ED68642F3F1C45CAA19E890DA5EA6820242084BB1177707CFFFEA48778E1B8884267B1127DA0F4AB5F700ECD45E9A295B659E2721C684E50AFBC28569356F77912046D40B688326AF93A314EDA9C8DB6E795A63D9AFA20AB8C1937B76130ABA0D01C421AD63934BB6BD2C356C61C1DCC1726F6A6429FF6F1781E9D9C81A110F717DF075D4C3A73C66D728B520423C322BE346E5017C2EB92B336A69C747376E96F6A69756732D697A613E844FE99B202540FE6021C0CA086A246E3C46D420E7BE2C990B1F0325021ACE5F4367B7075F1B26CD651B3B63B735FAFDAE1081A4B4F550B659262DA20A91E7A671F1D7371EEB41CAD93F328C5901B98FF79975ACBE3D51A2D456316E81B16161C9C1FC4859AFA9B2E30998D712BE54C1B196BA1989D4A2C31848488F4C0928429A73F67C3AECB90F749F18453A5A42B5E7CD0B905DEDE873E5673B44F626ACE6F5D1EF88955F2CB38DE4AF42313D2A792ED6FCFE10058539B66E59D3B545A100396CD3FC2D016ED79871CDEBC03BBC4A9CF5E763CA17DB82516B3985C311C9153C27DEF943008E67A1305596A50ADC707F708BBF1E89EE97423C8FB4E0169214AB6A7B6F359BFF8CDCD9BC51212E9DC53F1A4B01A15C0827ED7F01F5677E9474852F78AFB11F2B2376063CFF0777970237B2221423B973FDC1EC200C6252877FF16FE8ACF24F2B4A8C5DAF66D199325C81B7C60C9F670FD70E046B07519169E906ED9250B66FBE99BDAA75B4E475E9AA0C9C4CD5F70C21038A97C93C661D8A629473EC7A5701F9F07E2E4D88F6F2D94440D0794B6B069FF1C2AAB7F332B7D765966F33EBCB574230345BFF879D837A8BB0645B69C9FFF61FFEBE57D0DBBDC4A29EA5E98E08054670AFB5F8A727B3846FEA97D12E636C3C4AF16C468DFE5030E169B84F5117F1965106EFB79D2FF8490DB02C07364B9051446E10BC267D14A2E194416238CB83E8F6784F674A4BF12EAF491449B24F13E712FF4A9AE8A6042AE7584F77392995FA89F78B69D4111C9B9C14EF567900919599A1F67DE46C0E37BE59D9DFD65B9FE58963F1D00D73EDB5EBB9B288D77828C5B44600329424F7CFC39D14EAE282172F29EE4215C79DB81BC90CD4ED2597EADD7037692E8ED222C6D64708F68CAE1BC953EE5CE7F11A315D181298B7DD614C6AFADBBEC409BB392021B6191E34E6FCE0B5500751B99B12700FDEF8D0F316F1630B4B94F86742FCF65B4EE691B02736CB0D5C49B414978652753C56D426CD0071D38C6789C4D2B009278333C7D3B74E2D5B3BFC4CF78A8F7D00D986C6EC07D1181CCFFCEFD5E2786E3C0B666F7A8A9782A5B377FC7FD5B06BD69FB66EB4D16E6B6BBCF27669C4A4D4AA5801A975BC945042322BCC841045CB3B632A4AEFDAFFB57B7AEC7AC0065182EFB8A5CA8C8155C467A35EF5BDB5CD5497AA73C35E49EE39BE43B7F6180A45F7D81EA10525C7109E2E8B44A166FB7CA5484A7D9BE1E63DA1AA1B6466917E38DD7081B0F885493AB8F2629B5EBBFF05476017E69DEFE745980DCF30BDB34D6A340C607BB414F7D5135E07B3EDDECE3308D7FB84AED0FE168F2C5368AA7028014B58CE1685159CF2DCA170B8615F6F439A74FD6B7F24DE9F3F5D0DDBDF8428178D27C3FEB1C61F8ED4B3E0EC56CC2826078F47218CF9CF820F46DF260F89DB920B03A5BEE7B32249B71DE2ECA568D941B0287FB768CA37F0214FCDF79E2CF07757D4C5C7296610DDBC480BCACBF5DCCE15763502F81388F11A197D56C146A3DA18229F7C2C4FBB6AE5DDC57C27D73BA231A447FF35926ED660BEB499564464CF0BAB66190EF2690BF54D0DC7F3DB2B3D98E1C089993167B3B7A4C93467573F1E90C52A11FB191F162D1DC12147CE46EF0B254641DAC8B5DFBC99867BE34E212630CCFFE045C7FC1136B5BE84AF5A3CD4EBC0263D1B3574C30C15C6538EA7BB090B9627EE122672F67E8063ACE6BD1A020B130985B1CF4DB9F91E61BEA0D532FE967F1F41C111D25550BAFD4DA300CCBCC6F79DDA6D96CCD183444F1FD11AB2CEE6B0B3DB8B2DE73BB88B2B23082B4739079A7686B044526186DA5A405D10EDC0BB7E3636D295C3C4BA7F5855CC3BD34ED2D08FF50E685E7137A6FC4DAD978CE6309DD635B25AB72BCC27B3EEAF8BDF7D9771B5176E3C4BC294981F9FC165BEA43359D548B1A3A6AF9BFE2098FAB842753F23F83A2BB615F9FDF6EB7E1B3CD524061AA041190745873B11B4AF962A27AF9B1441C6E8451044688C758D9259D82E6EC1A3FE956507FD49C03D6F4C9158E2EF6AFFAB3C4F4480B7D3A0BD633EE4FC8EB2CEB4C4C8F62EA5BD01EAEE1EB9670841452A5B63729548EE3B15E9773659B6EE220759DB69BEE667B11C5C09E84926D948DBAEFB690E37151F8F92448007F9A8978F23383CE0F763FAA43F4C742262C1183E4C8E163D436124196CFAB7429339832D2DA538E9490D8B18DD33CD4DF40DFDBB91F00C078B494A0A09A2C666D15B4458426AB8B0CD94A8A37C7461BD4FB0C0C0720FDF4081A89B8937A77FF366BA37D1D99DA46668C9D81F737D71B67122CAE3D6B0469F6DA379F51AACB2BBF8B530005CD9F6D50DE77F9BFB9B73877612BD1CB9A182087075B7EDD2783AA54541658A97BA1228EB17E3150C0A9199B76C71D21CD069BB33717EB11B608B45BCA0351BDB8B0242E266DACEA3B108C8D4C7595B859E3642C1E9C06AA1CC4EBF480FD71C01B3C5A52C30E3E76815630702FA1A8CDC56F3776A38710871FC8114EE0A44351FA88C0AC3BC66E66A011C1D35E2486ACC1FA58A7A3A03D2DCF7F1C2659135D45CA8C17C69D7461E30FF2DC823AD5A27AF6177F4C9DD3BB9341C09B543E224A4DBD574EE845959A4D575CAE935C0683921E64C8798054B7507FA5CFEBF65B7298E28A4AF2328057CC176096871EB246F35E1CA8BE6FEB440732C4A9B2A8D466691533A3C95B15754B9B79E405D8362FE76A26BC33B97DB6B91BE0328C3EE6D1702DED3EF48C659D3C56F9E5D5AAA3F5039636884EC89006E3A3B955719990468E926901EB632637921FBB4184F08D317CC97B2860E1CA90D151EB280D7735222771E109EB4DB9AABDED4B4E835920F9C08D608596C7516B328E623BA7D806359FADBED695D8F0188E5FF13FCF19BA4909A98BE148A445A66B09FA0DDAD5DA5F997EBE01FB45AC7B19FA692E613D55E536E5A5657E73EE88DB23BA023BED0146842DB9CF4770F7A8075E3906EC0CEE5A514737F7AC67C237F9EEC57F94A78F92D122823D9730A4864A36776951C3882").unwrap(); assert_eq!(sig_act.len(), sig_exp.len()); assert_eq!(sig_act, *sig_exp); let result = pk._test_only_raw_verify(&m, &sig_act).unwrap(); assert!(result, "Signature did not verify!"); } #[test] #[allow(deprecated)] fn vector_slh_dsa_sha2_192s() { use fips205::slh_dsa_sha2_192s::KG; let m = decode("D81C4D8D734FCBFBEADE3D3F8A039FAA2A2C9957E835AD55B22E75BF57BB556AC8").unwrap(); let mut rnd = TestRng::new(); let sk_seed = "7C9935A0B07694AA0C6D10E4DB6B1ADD2FD81A25CCB14803"; let sk_prf = "2DCD739936737F2DB505D7CFAD1B497499323C8686325E47"; let pk_seed = "92F267AAFA3F87CA60D01CB54F29202A3E784CCB7EBCDCFD"; let opt_rand = "8BF0F459F0FB3EA8D32764C259AE631178976BAF3683D333"; rnd.push(&decode(opt_rand).unwrap()); rnd.push(&decode(pk_seed).unwrap()); rnd.push(&decode(sk_prf).unwrap()); rnd.push(&decode(sk_seed).unwrap()); let (pk, sk) = KG::try_keygen_with_rng(&mut rnd).unwrap(); let sig_act = sk._test_only_raw_sign(&mut rnd, &m, true).unwrap(); let sig_exp = decode("16D80287FC5E337C864B7E8C1E136EC8061282688975BA136E917DAAA375F442A93976DCF6507C8537AE364AD9773028E2DF9492797B3B8CB817C3B5239D42FEF818D6679B6F9B1F0C9373AD101E966F469ED3E72F284FCBC193673671B76F266F91B6B16E33B83965D0E0F16592A5D2DFB2EE48A6C451F331BA6196B4E6B0B2D8BD76FF6B4F01A92CA8417069FABB02DDAA66CAD0B8C0EEB8263D297B7746F8F050DDE0B9F448AB647B7487AFFF82B1ED2BB6E82F8C19C0BB81FFC1C90E9A4468EA5098EF893C109AFA4DC65F29DB2036B9CF21ADE45AF7FF6F625B7E1E881204FD16299B81FA9552579CB5DF29C7C84128217C4ABD143C3B2740660C665D0342A7D3CC877E6C932EA2F7316A42D5FD69CCF89C57CE68F704CAE94B8029D37A33A5AF3462AB30D2C3379DF2E7DEE5D34C6BCC35291EC215DA1B6C05BD205602660A4DF5AD496A1B69269C8E1B7FD77C8CBDF1170136AEF67F9577E545993CECF904BBDFF26ABD7228A5AB01DF675DBA9E4F3D197AF2552FF03406DA012559EB56D1D374EC2FC603A9A58E66C1B7387B155E978BA4EFAD14C8EE77240BE5F1776451AE4F82F50270D77FF955FB669B92F20951194F81337AFF91A9A474EDD706231A5413E5DFE6CC6488FCD1FFB89BD6CF9B45A1BD1BD9F259E7F63F1C2B8A580071712CC32B724A5A95B55EA739D7B5ACFDA022AE6E7EAE9AC985EFA4FC4E107DEE6372D708693DB13FE43C061AD9202B4A4833FBF9D01716630DE7C114E29F781C2F208C7E7A8AAB96D0CC653DA6EB30AD72401CA531F584C69FE52BD487341690FFE8BBEEFCF29C55D70989800B1A04FB244F96B1B36588FFFFB8E5E5C7ABDCB3C9A571AA6D8FE56022732732DDA90A20D11CFFF64D81ECD9E664767C151E068ACE0F0E0D0EA4D5C66323ADFF646D894BC634CEBD7D9A519D9C8170BA9E853CCFDA7BE5EB208C36037C8102D21E733FFDCD7804267083C74CE8DA409E70BCF3535F6D73DFA2725A951DE2FEF8DA21918963B1C862D0F9F6F4E58DB32513F8EA3BC246232F7CE7133639A613E3C9DF2FBA09F363F176687DD459F6A525EBC0E148D17996737557786B875A45F584FBE468BBE76F0AA3A7C43560FACC4EB5623928D1887C27BD14970C9E761C4E636BE5BA0103DBEC66C7C5F833C17AB2D4A6F2B133E7FCCAC32F837C142E1A8B9CED24113CFD04076E6FE99B9C90F824BC9DB3921CA0E5CF2491F7E41924E8B8A5F64B593D5BBB266FF44B285C29C313014B1EFA2DD34AA8AAD148841BD1D11CF1B15477CA5FBADC8F57EDBFEB7E56E871E9608B5790CE66E19F9DB71C368B5C2BF9BF4E258934B2A71C71C39C35F92AE4B0664B47BAF119A9898286F84D72946FB7491ECEDF778965356C1B4DA8D23467128F62AE6E3DE716DE7A9AA64A4CEB5395C9CAF8968CFA8A58117F200F1842973B25949232A81EFB427FA069D0067CC4A1AFD73FB2B64D84F3A84F7A5DA9C4458E920D37F12E7043BB02E72434F7DEECA74F3C311AE5DEEDAEBD534EC7E7EC1293E3CA48D74199128CF565BC7FDAC492D23847B64E8A5455AB84D5C916FFE64E66DBB8DD90BF68C294A473C935C6B6F723511E6C3132DC9D04EF7446AD2C6894E9DC9E616E1898830041252E356F6E928DEBCB669A216B9A725E27CB4147594839F27AB1FA066C7CCEBCE4F52C12BE22FBC10D64FC1A73FCCFC6543E37C76F2B9E2C7B39C0DDF2D7E82900CB606E74620211AA686E9474315413479BCA2BEFC41B511B17139F8C202831F061E0A865A43CA9EBFC14CCB2B015BF344DD5B71CCDA4666E32945089ABD307881793A1FE36B87373F1855A71F32ACB087BCFDB0D35FE414D409AD9B4AEB0402F1CF3232C64CBC47A098754B86DE8A38532AAC31DC9DE206FE958314A66B1FDC8706C2915EF630B93E6EFFEC5DB5CAD630C16CB36EBDABCCF969C3A42DEF2ACEB002EE0375858F9D7B71A1640706DE11E5137BC750B0689D692DF4B9FDAD4C968A78EF0B9507CA8A2169C2312145893C6AD86F4C9D700941FE3009BA02B3FC9C48D87BFCEDC44174A4F59A96BF59A5C5D323837700026B0C8C7A070E039655C0DCBD3C0A6AA0F4AE1EE29CAAA255BEBAB79AD4716D8306E1B3601996A7B70F70421374F9990CF73EBEFB170273E381861906008FF9034C6D63339B9FD4F4C0B0B8FA341943068D4E3BAE061024CDCC962F750E69FCD679E7D1B54EF67D6DDD2C5912A3ACC134AA94FD4EDBBE7386E4806E0358B32265EF9D89A71104D38AA0131791E3B1B1AB6245080383A1B17E47C361753857F8E1FA8F951375572F0CD87CDBC1838C70CE801D25F65807BF1ECEC9567647DDC05F3D313675DBA85166652A3317E541962A2BB0B2FEEBCD575F6137A1497695D2440639F29FCF821252D921D1BA64A9358EEDCD93935A74943F570C52C4D16C6328CE99B8E374179333D6015DAA08790537DAE290097BC867B4C44B844278FA61025EEF3E5C4DEB646E43F0D3612C63E6065A6C2BE27548036229ABDEF99283D22DA2D767EA75510B78AFAAD20F108FA38EA9F402D66BA63D33B5875BEE85DB01701D176BB779D8FAE5CDC40F761900FC8CFEBD7A6AFA532EE1D3855944B8D3D3F5CFB0356E89A7A5ED94BBB3517905F6AB6EF4721F5FC2BA2DA4C0A443F077F3DF760D0AF5152B821DBE5722BEE96770FD59081371686382BBE2A9769914BA74CA4C7221BC84580F9D7EEFD6EBE07A91F6233C661202BDC1BADD0BEBFAD7F3B1A00BAD4702191527C098616B1A0847BDC00D48072B91B9F92A5610BAAC2B971E7F4A512586A5DA0DC7CAF3C836A88CA9BBA8B23F0B8CE63986B1666B0BF8FBF0592DB0EA058667787ABD08A02550238D95118170FEFD9BC726BEA14EF0726AB913F13A5AB6FBE96A5DE54A236C669022C34148F2C0A8F9B1F0C9CBAB7EBED146A5D66709B395DE9A918A3DC1A4C506155DDEBB6952982C3388181152F9B1AE2C11305FF398DCCA8C4AFB655FB46B08C187FD2FD60AB49DA9A28374F185910067C38D70C038858FA09B363300CC2A3DD7F74D3D806A3A0696C3299D1553F2F3876056B903FF9ED84B35072D93BDD764F2C4C61E1E6C27B6834334AFD93949E4779D939C40D72CF611B724E2B161FA841556E7E47884ABDE44456EA32197A5921BF6192C2E92F0D8B86F9F8C52D1CC8F7C9E96EB6963DB2C7D1D276454A6891083366BDF51972DBC638D3260ADB919D8D097DA317206F722D3F153F2FAB4DD0A71CD5C40EAEAA2538DD42F53FE65F0824FB0402E8CB21EBC9B456D4C2CB5B22822171EA705AB059E84A770E1142D04A2CCE808DB7D2B0585EB48337E0D91B8DD342E84C2776D6B0B6EB67BD35D36D21E62AF3EDFBB0A68A6D8988C20469BD59136C8D919A555E31C5ECEC346550A628D382B7433EA52974D33A44264C5E3A1ED7A52775AB40F30A6A0EBC291ABCE594CF62C21D272D4C944109BD73549A2AC79933F93CFD9EAD54A973B4F7FDA2DBF4869396B947A64802C3C502EE6628B314BCC8214E0DF8B2262FCCA4FE028351AB74B9B24A576B76988F13571ED3339D68C9A6085580D78AABD6973170ECEA03ADAEDAC6028FE72D9BBCB0ACB6825123535D2FA5FEE8D55C8D98E4EE8FA8B4B4C51D61B853813A19173DA053E8973190190833FE9455871473E3650DA250E66B6B4CA419131343B611565F22D78909D8DF1DFA5F2EEE8E0547B3B2837EA6133AF152C63827F511FCD3041C96E2BFAF47C7B33ADF5ADAE272192E64EBF5BA739CB1A1BBA42589C18211F571F73592100EF304F579FB6165756E83DF14005F9F34145D1CFF8DF4CEF14D38D108DCC5C300F91CB67DC2B6ACF90C72B85867EB6A869455EC5B0769EBA799A13041DC1425050E81D51DEB02F4CD4B87B369597E035E6A2FFE7DD074B49490D93BD22D0868B345DF0E3E924A1DDAC79BB02B1BBAF8D41AB1F29B976A8E7BA1DB7117B5244312C151BBBBA1B8E914DD1A2F049E10856F236963C70B21A95797D537436C88213D1C100A312B3C8D4AAB0C3174CA5C978B86C04993522E8683A9853510FA170598EE0E5A4B664578CAFD79B811E2476ECEEB10177018A6B2E4D73D12DFE8377E86D15423E2B4854EE04904C46C0E0FCDBBAD0A91B0779F043901164313DA41FE3298E5BD34E9C3BA627A0F205CEE991F81956DD624890783CE3141F719429FD6D484C91CCE1995EC141A491116293017734938881AC177F25D73C4DFA574FB887D9E6FC320A4E742ADD046500149742BB0D8D3F41D9A395A1B1C58CFFF07882639D36AC8336002026670F1AED332E60B8653D55108ACFFCAAF351A7D7980A5A4A4F459D9F1B4992A0C99B416A79C5DC32B5DBA546B4CFD3B7386FEDF0EAFD16A86CA4C17E0F0AA0EDB17206B147C29C92327A1B941697AFA4270C37BF0A8DAA229B9CA2F89E9503EC3DAEA80E8F99D0ACF61F2AAB2051FD0737A24DF46B43FA294AD132EDC3A1348CD0D1FB30B7F98CD6F5C900A45541F53B540955FE2E9573E9F686CE4BA42790DD0E97FA88B9684B2B744DC020593B91F97B5DB886C2E9DA41E078ADB47D5F2B01FDEC0188B095993131B3774285F6B67051E7F2DFF38BEC51C6578546269BA537505C2738685E3152C74E58F9AE273DFF27ED9E2C89C8A6E40E3D99ED6E4FEC80C410D5B8E9C5D74FB1F9599814EC71FE5E180F0D486A7362871777C7D2D556D17A3E934AC2B1B99CC0929C4223182DF574A1B3A5D55534703011FCACF2A91438C7C2326A01946D2DA98F61D71BB22E3CEC5EC1F1DDD12839038F516D0874FBE12A9F8B41FF7249841888FA800DCB0485083F73E2D6C3FEFD6FAC06FB9992FF2DABF3C598C58F1476BE56524EED5D575899D024B593D79998DF10DC160CBD9D35B5F3C550F7FB90BF8030D6052A40641F290E7BE4A2AC830198012D20F5BC2A73C9BF2981FF039C0031682DDD1BDA4EFA5D2EFF2CCCE5CB886E192D02DE64E5069F15E10C5CAFB0B3CF93EF1C5A084E238771B256872762AA76D3EFCBAF22E504E814FB6AC674036F5FDFDC566694FE4FFDD2DB6242FD46A4FEA3B0D6B022A200D84FA51A81687CBE861B310DBAFF2C23398575CD23814E5805A07CA139975FB246B3E78D832731E10778E7979BABE34923D458F71425C289F86790B68B63AFB848AACEF75628F87197567903EFB45300E17C1CFE3B8D4BF31663986D1138ECD9F51247C54155709A47F4009A56159B9AF6E6BCDB07F0D82F41CCCB868AAE7B72DC528EE60E103074C3E1D2D186DDB327195018E62F36FC67D32051038472EE15442857898C2DFCD40331E8C09BF0C7470192461200B0ECCEF63C725D67FD2F7A5A4EADEAAC5F165EEBE903F5788CE54C0AF7BD7CB1F822CB9BC0DD1A1BBBF2E4E144BFE59AD2AE9F5931FC4670397C4DCC53AABF7CF48E49968E52F05E335C31BAB4AA63C6A38D44512DA85F72781CB2C0F06D039BBB25DDFA4B05EAF49363431A9722713DC72EE8A1AF4F6CF509EC8540478B5FF8946B63B3035A0D786A0DE35E028EA5C078ECDD24913D3C269FA38675B5FA92E734156161640ABC3CE6C3F0AA78AEA88B034480373BDCEF46C7C17866BDA4D854577CD23089A7ABA49C689E4A93922F94C4AE9553714F4304A9388D86CCD89D117345EF795E2C52699FA4F886327101D4E97424A5472F13D59B71887CF275D7402AA4DE05A352E57E57DD20E372C44C7B1947828C85BF188046E8400D53817F34DFA25C5E670EDAC120449EF993144DB7CA8398E8EB00C08CE4A6282A9F301BA85FA2892305423B48EADAFA550BC10F1002DB8549B063CD981128E3096801DCBD21A4CAE431301861A338640E3A13BE49C357BC77B840D556D69EBB0FB28A89952476DDE681A63E521767B06F3A42BD9051E24321364912A5654E33559AC427F21DC2600C1DAB91D2C960611C4A96CB9571B02453DF201DE71838579BD6D902FF962A781BB0CE18A10A3D8342595DD1E5A3A247B8420C2AA5EA252B213C84DA16361D01D07BB037063A86FC869AD5B933E351725D33C5B604F33A200B42A8ECBEAA51D951C38DDC750B35C4FDFD0181D2634D5D60272D8CA652F4CEE25163EF9EE0B7AF9829737758142A36564E00D37901510E20C134EDE2A887B79BE13065EAAE2D73D00C63203B0A6BB825C81777860045CA7A511CD205CC207F1265F73840DC97967B18A08D058432CF847DDBA9BDDB57FF877E23E7B2AB68675174042E2CC86C46D85F7F588E7B3E1CE32FC46539B0397F4D46502D10A7462943CC6E32010F35A68E0189075F67A7765103AE5440D5CB4EE0C2C1BF42A0DE68D0E7E5867AF8EAD7CAFDEA111D88774BAE80A4F091855DA550C22D605317741953661B5E1B893BE7F5325C8EA5D01AD494897EA62A93B331C24866D0AFC981C7FD480A2C599DFC6011B8CEE180B511E40EED77472DB6E135E0D88B44BBBC138ED27985D1A51CA6F8B98FB795308A23785003F176C2CD4DCDA10955A691388038FC60477156A7A7D03DA2C2A5CC6E578AD82D66C90F7DF95E6BE20A2DE405EE81342E314222FE592E1C59EF2123FE5BA1FF3A615A897B4CD5260B807F5CC429189F198D45E590E7536AF0B0B7910E4979C1D4246A9DBBD2DFDBB7447FFAD5328B1A878D6AF3A56FF3A58820EF5BB7DC6D0E9A5AC9CB958AAC25B53944F702F3DA2F23F75B5803469F08E7E58312FD5226C9F659B78458693049A7B3BCE4CE39BC2072AC070FD5F98E9BEC503CDFEF46B19A3037444382BDF1A4173C434911A14F87D46817A6A352DB2CB456A5D411E931199C84C281E19DA8694429EA0D569873B3B0A78CD889532F1FAAD2F3E08779B75C4985B420F3AAAB5BD457EEBBDFF26DAA3F30D0B642A4CF9D9BFE0130D6E8F2B451A8BE9D1CB66194AD2ECCFB4FC53554EEDD2B8CDE1401355F3ED44FC0138F6C883F80CF2222698694C820DA203CFD88C81EC997C8B1D022F35D9256E79923D1D96B0434B5AB124902007CC8C9368296B55916E8943188BC22F7E7D971384C7B612AA477D6BE93EB0E9438478CC6617B9FDA9368E498FA5B2BC18E6469B0B5C34075E91DA135968C3AD5CFC2F41868CA4CAF605EFC4262AD7E542FF96FEF5EF7E72B35E776876C3B341467F3388F3A91060473E8A4ABFD4D1B16BBF6F4F33027A8494084AD56468AD9BD8DCB8DDB22FE04F54B70EC1CCEB2B9F4B68875417E417D588AAE3EE8D8E357C92C27FE15F56E19C7724A50D8908FE8AD58A9C3FCC7F74979B28625A4A88A0C80142C5BB3AF63CE67D550D99103EF9EDC545FF942DE576B1475786D00A10C2E4F004AF4505B7E7A9E7FD8D4CDF027D23A9EB6855E7AD4D76D152B86EB1662E3266AFDDCFC0BD6C120502B016D7D286336DF36B936200A6AE71C5A9C720426AEEEBC6358ECAB6BCC533C4928C7BE193A1960D4AC1F15A4173E27C1EDFEF02EF92C387F9E0A5681F958A02DE632EA24CAB010FE1AAB70EB6824BBD87B00C467F25E699BF3BE019936468865B0FD10A90A37967E5738865BF302B92CA179E9C22414E93FDA75B4947BF224F8D474C961EF0E165D1579B4A5775DDA32AF010F3719A020EC03C1C36E050B70E074B56538CE086D013B21CA763EDE7B33350E2550299916CA871C3FC333078E3D614138553A81AD8426FB9FD04E2388C52FE0FE28A09CC34691E05F5BBD41C4165A1C49FF4F6558309BC330E20DB4C65475F03A49C9809FE251FC5F7FD38CCFB01390BBC58CA91745BF2DE4E65BA00F4890A9EBD8F97EFBA1CD07B044EC065235856C7283FF767C40C40A3822464A481F652B9EDAAFA3B33FBC074B1FDBB65292CF92B7C58B7966928706934AF82224007ADAC8CF82A4F66731D072B1CD0072506415C1F0BEDFC62452E6FCA9E66C1EBCC49E6A4F83AE16E93B04345A7F717E6E433C1A62732034BA919039993AF2CFE89C7297CBD786A244B9BAC97F171A9C05B0AE9FD4C51C65E22C04F84C84B77527E65AA9B405663564468F96383848D8017DC3120B01AB71A217BC79178286245999FC247253807987AC0A16854010356673825DACABA26B4E372A40C555E5DBA5CC7A2608B00A0C318386CF5F625C37C803D1823D5D38EB011A93CB696C6EA40B8EB079C7BD73240D8E995A06138BB1060B2562ED8C77D4019DD5A61B488464AB24681BC360549DE380237B93EBA29A73E34B7BFCE135BE9324871BC51B8F64570121FE6C82BC7393C8083EF84D5283C4B94637BCBC1ABADF11771C061822E35B5107B9E9C5B56CCE4318B1EA8B57BA9D3691F2DDD3E6C9645B81CC4960E31C0E7CDB6A38A817F390287FAA02F38073F88BC969B18BE83B46903FD5D7563CBEA94EE43362D68308C035D14C172F3B7B35F02A71AE425625F032DC58C7DB52AAD13109E30147153C197D6023E2EDC456160BDAA4C772D35C3B48CC1E6511D510F8CD7EC4E0C60D6E5ECE3C7259EA861636BEA0D52DED6863F3837872BF540729D3CC888D869B56ADF078A2F45E867B44B0C70C0ABFDC3EE813EC6E56080C353D075F33C552C88544C9E059FD2309B5118173188D2127EA1A9A938830F94C57E92C2B93E651561F0B2902388AFC2063A51EA2A92F91B548B713859E46E1C47FB1BA5D273C2EF644A268A739334794E9F5DB82FC6266A62F22AE94B3D06E0EE68588E19FD74B235AC141F9E0073F794435B71484AFA5C860CE87F43616F7C5CC2B252850B5B9A3F4A9307C6C7AF7379766583CCC68239E1A598624BEE23E8DEB3A18231357032B13FF9B3A56A75C6276C605ABEE2319C6546160475A261531D521624B1A11DA762F0C179E37B92D53C931A5FFC5F287B79BAA910AA3BB533D860447E74A35CE3BC68F34ED12A4F77C3F3149F40C37750B0781DDA513A8055A892B1FCDF1C1FE67D83ACCE88AE675D5F5CB14920E60AB2C3ABDC11E7EB515AC9F2D3B1D42DFBE55560EE0819439DE600A60104554332AA595FD8C49D8A0E5326A7E6BE848B6EB7DBAA70487AA2E3C9B82BAEE1D846769879158B7018FE5056B3017EA4282003E564A67459862BB0C802E905027A8ECAF358EFAC7772C7799627980267E1F26909FA9B92AD75B98D53F85A49CD48C8DF9B32CB130DEC1A08730A8938DEA6437A87DB58E38D7301DCD227368A16E44035CF62A4D9174AD354B4ED7FA3A3786C3A9CA95C98D927DC0E50DEDEAA9DE55F7D4D974F2BAC6253CA690AEA1CDE8568BA7B1B8F9B35F533525CA1835B42AEBC835B971A7A10B59F06F825EA67812DCF05B52C8098C1E42050DF65C9ACCC91AF4FA494C0996A84157556CF69340237B9AE43D0E449FF18AB910856C37806041F1AFFD9C8033FC660738804BE6E700D28B81D2CCFC0F14C055C79AD89280AA6AEDAC097E5FE27A3B011148722A635C37EBB59AFEFB465B5A85965697DE63BAB6D1365D451512FAF67A9AFA5CDBDA85F733A3DBA567D98BA213E05BE4A5B269F297555DBB9D6BEF5BCE3F1955CC136DBE66966DC90D462B714A1BC5840D1B17319D149070ED5DA84590A2A12EAE51ABDBA4A05543C68CE8F6695A8D6218F37B2279C56C2811A75A5B0DDEFF14708BF33A4E82EF1E7A4701667598B615D797706F58FF5A3549AFB4ED0E9885E987D5C0490F5678FBADE30EC1AF9DB8A47BC02C36FBFAB1B5A1B7423F15DC4E218C27DA5B57A29F1033EE285E540B03845A3283B28DC03A9AC1C6DE5D2034A7E0BFEC2F3E8713F10AB3E154946CFE3DE5DFB765C6876047762D494D778BE4CEDC747258593169994A54F8E9D0D0886C47610CFECC2375CF90D1794E207F7D03295751D3B7E16D123D8F1AD62DB08E3F17DB86E302F18E7BF6F3F9D693E3E7567FB161F2C22B7451153B1894AED12272B01122BE71BA6622C5953B2C8B67BD4816A086E15383D08F2D5AE4DE77598645F32218456011C908DA93DA35F9A01E4FBC48B8F0219302C9ED83005B68C0AED67BBA1E8AAE8244B6BABFF592364B83E40CEC90E229BB0441D1438333DA070676C150F8EDB5C19DBE8EB52D0B01ED17B8F6AC81F62634D2D1D46544F132055965F1915234C6FB92D7CF9950DC1DB6C428C8A7401CEE83AF781BCB41437BE2816EA453DC9F1A53EC64D1E67D71BF16126380C4BFE1F18E772E44F43659E4F28588A9E963F90105CD3BFF5189461AA4402AC1752AAB479B90363295851BCCC49ADE20B708E48DC165CC25E8A6F0E9B07A5E7A6D024D1F9BFEB748DD55E7EFCA56BEDFF6DBF686C61B49DD74216A30F0D64D7B22730D246B531CCDBE056ACA6156F6921EAB8D43E3841A37EF2FBECA75376E7591BEE1647EC44DFB2164B7AAA41A51E9117513280715C1CBC867EE043E67C6B7AA3A8F9093E62D01DB758BA9F42E22B45B52494C830CBE8E6D589121B90CCFAB28B8B5E9EBC65731FBB6CA9355E87B031D5BCCD669F3264A28677259755C9EB09893DF7A8B25F4F14B69C645E1C594AF22C5210737106656E4A25A67B3AC6F272210894711C467AE25E7289EE6A04FDF44B646AB21372C2D354061C292C003E340CEC96093A511ADB33387537E43777939F2CBBBA78204AC4643AE9DEC39780E310BC32729268E5700F813C5539473AFD6A5DA2B13672B8B63B14BE51C5883ECC6ABE5081289EDCC15AA03A443BF363CE3BC70352BA7221A005DF065FD94BA08334F3C68D7A0F45477C7C1B3585DABDDFC97047D1BB0738B1F92D240E3308696A62B07D1F3A1E84CDD18D9FC286DDC8CD14B5CA4C8C728D8EDFAB3B320EE82E0C357AE106C9F4271C90FF29D352A2D1E6F98E81817E825423F5E71D634884CF34B2BAE0541FE1EF32257369B872B875255DF70CC12FAFD4DE37BE5DCB3B8BA266933CB4EB3346B033BB1849424EC7F89D389FBD37DC804A5AF69FF420BE6E59B2E67002DE9E111E7585FC266E643E4736B23C67EF95A15AE6F7AF998221F4043AF5B7BAB9A24A63853864E1D707823121DDFEE423CDE311BA7F7293F4D766F4954E87ADA46C48202A0716698B7118291C2D1AA8DBEA966F6892249F0F80B8E81407D61685E6BB64D158889FDF4D130BA2AEE2BAADBD8784CE61557908F3B6B89189C958952790DC4753164C13D964C936065FECE980E2C595234256B0DD165DA5CD23FA72DE4652C5DC248E5AAA67406D50070DEF8909C3AAA2A8179BB80688FFBEF93D1886E74068246676A5CF4C9851FB6C9D270B4A440F63B0E9FEA60DC77A134477B41693B067A238097F1E0F4CB1ADF93D3E7FA72FC964B81EC96A77B378BF1DC40A95F357A4816D0C1D3AB4A405E129990DFCD36B6814808EBE0BF91CD1614E91CBB742089343EC47671FDF97E0EFCA15B192E940F437141FAD7DFA321288A8846486CBC45C0B18E03F1D9068FB5F61DF6BD9A4C3B0AF0A610D5449FCD6D5A47C9DC5F7BC6669D87C566A4C486E1D4AFB17208246C19EBA892288F0F30A31797C8944878AEFBC091C0A6348D09286B3B8FC4281F7DA9368E0FF39A0756467E0FC394EF1BD90C071D54D96481A5D1C24101627B3A8DC77EC244012EDC3E761BF470BB2EB770052C898599F06A6387F855142D538E1A88E7805CD53E445811F7F3D46B7E004537888D6ADBE6282ABA65991C0DAAEE9356D9F7B14EBC983482C8DF9CA1221CBDA730C3DFB5B592B09A414CA507C1A9E3F48832203290BD272E05A19DC9FD0C0C4089225EE639CB84D616C84CAC88E55A207530EB3788F7B56052D6460058E86D98EE7110CFBF7B371FB1E80366F7F7F3A5E0FAF6CCB50DA5A9027460A10F1ACA10E967CF8466EDDE6844B93580EB5676413329F9224F427483735FBD0957D596B5E8C69752809C9F5A9E18C8074849B6D3E9FC6ACCC3D1F8B2D81C781718D10D60C6343479F43F740ABF96EA15D6ABA35DC1DBAEAF9F850C60B5E58865C1C7862877B0180076077655F35AD05A44F94DC28218B833BAEED99E8DEB4C4DDCAC8687A2752039D6E9680D99E50FFAE0FABDD239B8871750A253C1245A304B408D9C132B3CC0092BAA7B850A14998E10200ACF42E019FA145FDB72CB980D315A32CFE9495A4DD81B2560F0DDA3CDAADE3187AA435F3E0B1D24B98C48DB77211C1446C4D21E57659FDE021DE1E0DDD3F1707A5870289E753B886ACF6D9724DD44FCE54AD9E441BEE084302B61E27EB4C8BEFAFC8E51D426613DE36DC29D51391B673B09F065BCA5B1D5269C708531FC6B56FC367D8955F10061C8D871B799531D15761A2CE1843B8F62870C3A4D0224A8B9478098D3C0BAB5B62103634981AFFD3A259F15288E3076D0E968A8A7C7BC39E7BF5FDC0F45436F0B77D2E33A6C0B5E13ABDDEF551548C169F008B28E2578C9B56B5508EBE45ADA67440951B6D53229111D850E2211690114158202E03B453E1A88FBB97974AB4891513FB134B13D4BBAFC56CD7E99CCB8A85C1149FE67EFC5DF0A553B071E477CCAA620350FC5505058AB6E980129F3D0BD6F0777D662E79B54913053DB9733F7B8B8DB1AF32A71797654F182EBCABD04AAB4CC5985C077593E7EC92A1C0A35E083D6B58769DF9C066FE4DE482DB4665B38074E29682E7A0DFD680C59BD105C0810F114FFACE570A586C6309E5D0AED8631E918D4A85EE942FFBD64838A0D90F8B74447A8860C772ADA52777BF87BCC31DB3ECF959AC2456BA9CC2ABF1D540CC3383B55FFEA5B5AAEE28733F093428A86D1195BA4D1AE1F14398637374E3B30901F74D770ECFC77707426D8AEA801E5CD8730C04E342ABF9B7FC2417B922481CAE47FAEAF825FC618E6B2A23423A1BD22A7043BDCEA60F3848A73EC2EFA8F247F411E5057F06277B16EEE8ACE3564F6AC4EBA753B5F2638AD95E3EBBCD8E0CF1F2097A3A022916BB18C0BCBF5C869CD1ECB28494D4067F01F2710B9BB31BDEB6A9B444FBABE404E5B49909243E5CBC7A6AB0B1F12E42F5F69A83353B8C115CDFE0ABB366813D511438DCBE69191A1900150A5D7D4942F56ECDA000F912E30D98D275515083770A5F1FF062D70116B916D43F9CF30768E28B23A2CCF3A428AC6989A24DE3C1016842BB615C12BB8F661FF81E70117EFE1FC489AF23A1E64720CC53F33E35BB03DA7A100552141939FDCCB44A9646CF0D1A9CC4736275F9418A1349471B406E62F036B91730E866BF4C84A68A57CB029C582FB255A1DEB8427089943E261296C4144B385F9831DAF97EBE2273B563DA87BD16F79DBB2249BE128DD3F7CB404E407ABB72785D72EAA0200ECF037B4BD1D237D02D723AC486A5A6FF80B633F6A8EB8EC4A1926735A56581CB95436685C31BFC99F5188E1923093C9A1F5B9DFD8E805A4BC2AD1F8106775E4B19D6EE71767AA5ED86B2555D5BE70A83D83AB571915281EEF12BB31B7F09B3A572414CCE40A8D1BF6E9AD76BB787D59D00F8E9F98F69AFF23DB35A18EE8B6BD342E466DE70FDD70D0C0F1F5EDBFA8DE1C6E5532552130DA07A81208817907308ACFECCA8A91CE28A89BF214E2A879593DFCCF76E460D245F4A3060DE863B9038C03F194499386A782F437C0A15BF6258094653DCAC0B87E8FD4D43F52088276BBBBAD21C1907688B0E34C01E0F7B084ACDB845746139C99D71179E20EDA0719EC02B614A129FE83FCA10B708D49EF68C35B0771F5A94FD0A0D3B1BD361AD9C3F4E7FB9534AF22B76A42C3D137FE814EB0273CCB660F7CFB33379B8BC052A02D26C9E9C38253D9D513ADADA7675565D3C40DF0446C557EFA8F6407D112BA1C04E46D557DD9E913FEBA38ADA7063CAE4796EF83E366675F458CB69AF9093F37858DA4D3F1421E952C5E8B22C918C5D240466B15C3E256E9E77CD3C99DC8DE3E24DC6DA0383167B20E1CAA8C28C4D6EA4E54BD1C785D8C7BCBA21D194965A70ED0D05E8A3F051C3A5B8B495633C2DF7A7BE359AEE4EC42C71A6929C7BB715A3632E94C3748226E2DC0B25924971C696BB2904EB9182CDA0B15405633D3728A459E14717EA7AA8E41E6857AB842710CF795334D0D932C31B699553CCA4966D551B7694FF115179AA9973514A24955552B5B04F3AAD3CACE20FF1AB1BA936170BD701E46FB3ABE07E0E0B0D4D090C694AF2E62C18273A3527B48EF0B12F49AFC3DC0E6319F8D771F09892382794D3E1B5315D6C3070E32D7E7BA12904027DFEED436EAEBA06A62A597A1B9908F562A4F445A09329FA01AB436F1EF92A5CE11E34B46E6B50FDD9883A8677D81095ACF99387145132E927D97147DB20F662283B49A55E09059516F781F0EE3F976B753BD3F4A78E2F01E335290C8154C731CD365CD0AEC436FBFF714EB1C15313EFDF3EBA43DF32573F55576E61F297CD22234EBD48D71D8CB6AC54ED5D9EE08E77695B9CF02326E0C8CF6B607054B39BF4DA2B32A19C0F3CE77C201D921ED65E73A08F1D256C0EC910620F796D412C8921BF2F418D61E901D964ED2BFB276364298E9E5F08A70DE3FCEFC77E771108A15CE78192A9944955300E3DB9D1116F2CD63D723519637CB97E74BAC6ECF60D8B1F0481BB7144A87E09DA56B9E29AAAFCB5CA7963B2DB3B393063AEC9B8655333141F778C3626932226597CD1833C2478EB7EDE9651F56336194C47F3A7327384A9932A567F338FA28A936C47E637EE0954AFBF0968BA32870C053105A2BD2B8B7A3679E7B8CB5E2FB16DDE75A56E7C09575854197ACEC150859E19A4A23C03794295B6746EF0C07F573725C8072D9B84618ADFEAE51BAAB87A98D7AC78E48B2709C8EBBCB98E818C9B59349F53EA3A4A843494CA149642C0A359DE7AE306E340C37BF184C698082F13687557A71A9C2CA681AA22434478F4965DE2423312A7576A661750B5A589918E848DF05B14AA49E173FC43253BE52FAB5FE5199CCB49ACDC5333CD3411572D15356A263A76476C888CAA62B34A752DE80DDF22D4C55A9EA6AD3D5B88F4D07A6B23DBB82B95C11E9B51C21D9961982008EF1924BAC60718EFFA007410F778B978B996A97C81ED24A4C2FE7A897DBBF843A1DC1F998F28206F6EF0A9B5A384D0A9822BBE24C92A206F3B022F6EAB1EACDFC71CF0AAD091E7F3C0EDC798B4AFAC11E20547F604835C4CA89A085FC248ADD74A6A858296900C5850512742AB24FE0215E310313BE10D5576CF38E85AB9BF9E3BC2F172B4581FF9AE12BCC89E3E5A9F2C604CD02F5123D2B125309C4B6442505E3E8B1C2FBCC10D5938DA979C6CFCB8ED7C3C2F599A8A2A356712F136744123250D757B578F84EF6C6D7236AB1EA0D3C64820AEBCD0B6CEDFA310BE22EB9571933E442E7687DB925DF7F227B9F4237A6D6020D3DF505FA87514B592E26EDE4B30E02CEE6F81E1C84B817D841583A825E4C0B9D555C68ED2152FD23BB4AF06328814243ABC9BD01C06AAEF94910B420589238FBD127DF1DD66103A07D7B91EB5E0D17B880713448BE7914D665AF9CB2AF081BAF410271C7F8EED73C92F4569AE4CBD3AD0E03345D839023F2A893417C9CD5FE3C099A14B2E322ACE786A0203C62C78374C92234B38862F2732CD65562D04D429FCD63F29340D34AED60025576527290A389259B887E8A8EFAF9EC655369A9F81602983B8B81BF3BEC857BBD68750565AAB954DFD2BBF4C8856804F77453F1D07E63ABA8C3DFD6AAB3B1EA3B9C3FADF665960AC9A0880928FEBA42102CBA2B9BC703DEFD3D234C535C3A850021943A17D8BD2DCE46EA01C7CD09D09FA345541E6BBFAA7E50A14BE426B74586220A1810D5392C90397029D240288B78280A82F8B131CE485104C05DC93BD4D5D92205C3F3BB6513017F9E7D1EDB33281937152947517662E810C259CDCBE4DFE5D30E3A61C5A216B1B4051DD2D531A9E062E2EDE332FE533B854D6683040F6090BB248ABCBFA04BDAE50C3627F5B626226967E69DA8B1FF8739B0C239DE68C688E55A7AAE0B3C242D665C4ADB6F83EC95D20FB907227F283E55989249A9CCC7AAC7364C7AE999C9E7733BC33B3719AC03F0C79101B403AB8B8FAB19495798624279525B70A6326679FC701BA6EB16CCED8283512ECD38404257AECDA4D6B4E107030D9EFB9D5D79B2A512C3CB1BDB9D9B4D1A29FD98161BDC87FD26575A0AB7031DEA0628E38E37B55F8F4B07CC4E3DD4A28043801117EE9894C7705448D5B7AE2CD51A518DCEC5886D6945B9304B9D7DCBA80E9B795D03AA0F78234412B59A91A45952DC19221302AA7DC28C4E3A70201221FC39A52A9E1BC9E23422FD2433A51F246E61CF74E13E7010875C0C29BD052CF6C6636418C1320632FCC6D5A3880282D85DCC6424C885CB0AAC0347E3ACA866F9DF4E2BBC65F196703938775002F2E5F7E069C0A0CEC2CA4CAB31F0453A780BACDC9B94E0AA46F19D3A736B2F59155523D31BED7634BA0C8C97BFDD2383D4F6EEF7DF6C781852C5F28CD93F92D4BA66E11813D8DBE00DDDE86834E0C10BD4807F3F16BA60D99EA1159C1BC8B73E64D5A5E603EDAEA193B5AAED2A43ACEA28E9C5B7692D33363BB96B11477DEBC9C6178B96B69F4A8433865FC9C671333595E044D8F56E665900146687B35909CF6D498F4751869C68E745D73BFC00D17EA386D4A1D16F019DB29191D9EF44BBEAD752D70DABC53006F5BF1BA48D6EC10ABF76E1A8AE17CEA79F7764A29C638DCF7D5527E6A43602EC4F6267A8A70C0ADE760A46EF42C186F0C1669C53D31E499AB06FEC7B00A05EA8A3EF25830531AFADB400A200435B4F3CA4C01C4C9536F70C3313FBC0B5F2842322F7B2FD1D76D13CA856F9D3AC89197B567D9F0011D01A6A3DFB5395F35A6517A78BA31AAABE47FF9B3459EA033BE88817D1F7A813E85270D360CD4F78A316EE58846C56C52415D019D3B7DFCF9F84837202D1DF26C42797515131CB60BCDA237DFC4DE8D8766E588DDA28880D1EF8A4BA207EC9907EA5DB6A08800EE859171DB51CA0B0B8255458F5F10737787C3C92D956F10CA7C1A8005FB449BE288EAF02F7116F6405CEAAD2EFCB1F57DE25651BD58B5B21B6952E5AF6EB6BAD9670E195C65986F06467F950D7B961A0B503E947DCD53CFEC81A2A0527503F26CD762F0C3B82F950FEF6ED24ACE1CA4D96E2E04B018F945859B27D3E93A5E48CB52D853D948F2E8C8FBDF3E0DFCBC2F9BC11C1C7A0CFBD2060840BFDF2FC30BE162A6DC846F8506DD0C83633F5776EC2FD2E62D6B5BAD0F188864BE8B20345488E882C283630094B83F5495DE6C2A10DE0A98DE9B4562EE7639FB87B8E623DA7035A2AF130E531C50BDB2E70EF1AF94249805D6114C40B50B3C1998C9D6FAD7B239474E0987CB989EC39817C779FE0E4C05D4F8222CEA88355D42459F4EB6CBE83F314FF65E0838E6ABBC355E8D279AE3937BB976AD11BAD937E9E10426E5E15F9D05E480BAB83125B3D2C3275B98ABE1E33194EC15F34101879028A6A85E677CC333C3346D49D0509EFAD7677E390D24D0D79F5C308F6BC75E35C6AD66EAA31B5BC347F8D4C32BDC4D3139FA658B9D830C550A21443839D2BC3F5CFEF53F9BC499B5DF28402D786E19BA28FDB088F17F25A016A557FE7FB863F6A4763DAF994BBA5C801C7D4E82B6C18E1D46FE90564D4215A4DACC78149287059234753EAC2F864ACAC4B9E416F467DD0FFCB978809DEF5A5FEADAB57841472F8BB4F811AE1C4D6A8080C6752A2DFAB6C5D20EA1F9C3DA8706BA5634C0A03D90B315A3F892A5D595E7E00EF7B70A642989C9F5B90F6A41526EE19C649DB259341A40E195D778F688D0E3E8A06590ADB18F1C823318F54BE1BB864A76CAE9957245729D5A9A9E348ED0E3548AF61EC89BD125A8D5F2DFD947AB38E48CF3C6B0482F290F7AA3AB8BF9BCF98306F52898ADABD696C2286C8F47243C798D4B51DE451721749BF16CBF7E710E974E5B91779C0C625CC58E2736C2DC8343D6954698412D5CB91983497D8A8E3537BCCF04ACE01970D3323CD744E2DF8D9C45274BE812CC45E671AD8BEA7F46D098EC54BA8F352E9BB2272A762E041117FDEDC86EA4BD237D992E6E9DBCF4D7961619F931116EBFD83A32B696898C0D45104F231C0824A3863ED09A7A6B52B1780831E5C26592C700F78DC0379ED6AE024D1C07478DEF89E5903A55DA0DF477C49317519195AD5CD55F0AD003E4B28D575E31D211CF94210A223D069EE8846DE9C311AD9738849DD285DA03CDD2A19B21F609B7C12BBD1CDF9BB07A2CAD55C1F906984CD73B50CF5806D95FEB3F4FB4C697B06C93BD01AD485D626CFC1EFF9019999C6CBB7F856C7EBBD1B4A681125A4F75ADD7EA7EA7FE5ED59259C96131AC2E600CE1AA5328206A1E73F49F0207E3EBE1C0D5D8E3C1312A9444AEE0E175E82543AA54A8C509CBC36BDA58EEE2243B8DFB24608E2F5D2A88A32A46CBD9E2905FAEBB61FFBBAEB1AD57AFC558232301F9B5BE73E167E351B925FCCC2303DA424AFE2004CB2F57CE1C7A6A07AE342FFFD0B0E11E83DF22C5EFF5DA1F63B7ABE84A8EC296C4712325AEE2120B8E3B02BDC819DA234042BB438583E38D5895FDF64B8F7B01AB6F88F96D3EA09C01A22722E4749B7A2E0F06DD765A78061D1C80910D51BE597B5A6FAF10B16C4A5390A9E764D17FDBD9458ABD064A0E3611C4FDD4611205A2CE576675D04879C484FE8F928239FDE7A0415C3DB27CE5BBBBB7441FCC2447713BAE243D090D5C5502B6F0DA1428A6951D74A5F4AD941C3AE4C92165A5B9B65D1B1D7846FCBCA45847459F2D4D588B41DFBC2D01B8D102C46DA8BC870B71ED518E399EC5A7FB02D55F81A06CB3BB0A711E0B81DBE1D889F5141594C23C229E623F4A20A40A2C34FD38D03910C914B64C1F3BDD2D2FB75DA838CEE59FC4FDCFC14E6909EA57D156ABDAB12D87A238F941B7881FF5DA8737A25F002297D5D03487627C98973186A993A94C596937E8ABB82B897B2410E91244E7D14D132956A54CCB368350E210DC9F15D315AE8C7773EE7C97576E22025C84873413FCF9EF80C482A805FD3AC793A014A629A0F9957797B2AA4A3FAD6E625D6AFC26A8D5349A1739406F473EE60A825721C7F461B8B733C256478F1EAFEF2914C65D27D1F8C9BF07B929BEB024A819936929B9E08CCDF0F052840230AFAC77C5260B490752AC3C76C474B365ED3350F036A3446F6A4C2C66EDB1AE8D27E89826B43C0E48E98635F67747A0D0D52933D870AD101E70BB350E5ECB37FD0B74C200D581F56DB8415AB27521D465DA567451DA3DFDB14D0BB1FB978C9CE27698D0195D2E22F2A7D8F9611BC64030EEA6D4DC1279508C8FDCA2483F5254D402F1F32EF2618BD8BE4811DA7261013C2663986D5872FDE26AE64EC6105B333EC35110D35D94D7E552BCC243636BD53AEA97319DC308ED6CD24E38658214EB646B9DED0866FBFEC2DEE23CB658272FF79010C0B9F0D5756226F4864159900CCB9F032BC57786EF37046369D68ADF42E998C5AB303E7123ADCD1BC62F87C67D4E06EFB4D7E6576ABE25C9B8F4BFACEB093513BCA4586C73228EACE73C90E81D4098E880CCFB32C8489A69449401E9A1C7F689DF90B660D855D8485D471181D9CC7BA33B968885468507D8920E5245EA4982B22B30A7FB01285B588BF745252DD0CAA21C1FA12EAB450DD0A046DFD8C351CDDE3EC24114AF5032CC97AD80218B71B45A5BF9CFE73D35BD2516C4B768015A357435ACB48E0862B7392B9E88007EFB69B99585AE79349DD7DDBA6B5A10CB90771390F5DC624252408C00F5625817DCDEF8B9666E160F14D9C13389F88B8D4A575681990A87E2CCA27CEA86C3AB41F331432704B179C40563BAE6A3A2C79080FDCCE8DFF1B59E87A92648AD9A30C506DAF3C49A902134F2C5D66466C35E0B3D84D2375972A3240D2F23786BDF2298BF0096DA1EA667E9426C7BFCC73B1CEC34E3F00A8ECA8FA85C8ECD1546F09C9C07AEED7CBA84B8C064E636CFFA25F824F928CA8C83C42605DC5043D72913B1EFE891D1242ED7C1E831748D4E7F431B7F0B00203723DF8ABF79805A8E9382889B6133F4B5E47E3999B4964CAC82BD50A1CB48106E0BE212B1A388F6638B9921A713AD9FE9A76CA4AAD411D4D73E5CB960A008F5A0CD366F4C8C33F7A86FAF792B02BD73358945092E87C53E4E21D69DB6CC06BAD45A6969F94F9D44F4C6684A037F801E22424793DE23FA439F23241CB544E90B6A2834CD46C7227ED0BFE4B353EBC445C687E0EE8AF4AF4BABFA8E5113A3D22A4DFF9916C4C475B4638EB5F360C962185B22BF9456DF2E893104600D47E454A54E5105937E7AE05ABCF52903DF6BFCD4137C8980963BAD6BB7E6F97AE939E57D995004307BBE877B0EF9C1578CBFB9BD1006A9800C9FA44769A8C620A73D1E11577DB1A0B0A13AA3F0D5D6942CC287B4671D48E4FEFF7D61A68FA261FBF5DE7F64D39EB28E69EE2F5DF6DF3A172F8B6A7883D8C4C3AE7E32FC1FA02A8841D9F7048D3FEB776E7FA095B3165D5DA8EBEF4E857DFBF633CA2A02D34339FCCDDA22C0C737B2F54D6B636E2367A06092CA7312B684B05F5082B1AC45017E0F25B2AE695983E89583EE79C0C8742811F1D6364B1CCC88295872535BF9B32962D457957FA980C22AFB392CEBDB409B487B5BF83692AB448A62BD6EB6A0B4CB46206820067FF8B23B8C0C314D216BF9283CD20D330A9CAA53AAEB34593980281C15A6055D47A588D28978EF495CD964BCF5FA08D50F7232C4635C319EAEA6BCFE2231327B42E2BB81A4C1CA2CA361125464B723968482A5A5D32B5465B0CE0D540223A16B1039E2505C5E97C7724C5A27BC256493E71FD23BC0972908C0E23F750CA6932C5C207ADA7FE8513E9292299EA980B2FD3BCA567EE974D4079573B77C4DC6DFFBDDE6B56DEC93C70E8A6CDB6CFD648346C165FB6A90B967B41752E45964A7E849FD3DECB7276A663F8AF70682700259D843AC271B802C47DC470A90D566CAB79807F91B165994EC2D7F79FE97EC78D5D58B07E99A7B86615E8D9ABAE6CB3BB52B0148E2A49E46932339FA135E278FD0F4FFB42C3931A5599AA2D307ADD4D3235D56D43BDA3B46542F00FF74C440159BBEA9F75F45DDC3C649151174F0A9E885625652F4274E2203239E607E7CEB29BC40F259754702D45C32A048209DD5BF58846A482DD35CA62D721EC1259EB9AF231FC1C70B0A7A57DDEDA800A05DA842CDD1945F65CC233C4390A814C4FBBB59AB6750B241D337C008F9639E74B4111D301AFA0AE32095402C143599F2423D58B1F6FB4E3FC712A3C9604EB731E69C474A847CD18535AFD000699E55C8A1915F46DB6AD40791B02D89F0494EF6932788A42EF39496D8057327E53D7E4D91F79A6D6BA4B36292EF2D8EAD1A32EACF058572BA167FA9A0C129DD9BFCBBBF8E590BD651CDEE9E55401A1F71BD33666557ABBE568BF5A3F935DDE8D1909001C7F1266A8665E914516E619B8936B851A971143A4917E33E3A3A3513A6A36FE0BF4BE443C6C82A30269C879B736A7123E426FA621DD054CFAA19163A3C5C2CD53D525488B3CE5EA8D69D13BE98F5C18632C7BF12D64DB233556D6C5D1B340EF31C547F1354837662BE91F03F2A42C575C6FB8551D7789034C77CF3D49A037FC073172F7D49361EA36708E85E0055C47EE77139EE93A74F584EB4FDDC5C0516222EF818B63DF39A50FFF0734A05FA51453E6FC84118DD358E825C21F7F5BFA30CA268CAE1CC555F1D0499DA828A33D0F1302443B2B061CD0DE71427EB57C3524B7CD5FB637114C8133620BF8DCDAC4D65532D83A8D81CB6B145A1DB121501973864CBA422EA1CE3B77A4762528D56FB627F1ED27196C371FF04C7651B23FFD477C3B3D74B71F2B430FA9C74DBD3947DA353E4A39261A361C6786263111B6F87F3E5748C9869811DB4405AE69C9A36A5029C423BB644BA838E3E03F6927DD5B445F526A6321A64B953E2C7111C28C930DBC81835F18DED6C3363BAFB631964CEBAD3CB9FB942D2AE8034A65DE2166B122D425D24CF53DE0B16813176147C95FB24BD07667DE420D08B677F1496141662D8B7052C6D3156329FAC6E4D17233281EFF48A2A7E3F31A0CC9EF0BDCFB9694227F469239C1C10EA0B9D93B0DE6F7B0DD53DD121032506148FB2B7BA499F95C90656600AD4327560C9DEA8A00890AEEDEAD230368910BE52492B83838B52D53B22C162814823F0AE86431231A1089986895F0E03F05B360ACC9ACA81E3F06D69905EEF4863AF19DA77AD95CD4C0E7A3B9169616437745D9D9A4A2EADEB75EE96B1BB86C91B4F46FC6DEECB1AD2AD955E258E585F59D81DE8818EF3D1C3B1988FDE7012CA6A6C06E6B6B81EEAA5D34A26F6232D2D28B4E2F7B33B022E10269F91665EE289638A87D4B343B7E9C05771AE9854E99A266DE1EC169874CF7DF68A58E112F5ABF739A1C71D1BF6F2B82765E1E3635D790A49BE1E104317F312972333C12F38C3448DD5C1B94CB2ABA4BF704EE5B360729847939DF1C5745649D65338556A863A29AF5D96F0E93AA461425544827C277F8B8F4B47BE078B110BDE7170AD268908557514656651509324CF2DA8E45F679C89CDA8CBF3A8FD67C6B012B0CF7067B10382D72328EF0B973324C74FA65D35C32BDC2BB3A5A31F9BE90FFB318FAD1AE4D3DCE2A8816DF821DDAF950DD3B9AA392F09CCC2369FB8EB8F642D06D13AEB214E4B511142078238A7BB751DFD4EFAAD80538E752543C2CF17A12BF547FE97C54A50BEF75CE53EC19594C54466BFB9F3B9193A4BC1B3FE94F2CF866197994830ED4BEF2AA6DD9AA24E4AD69DEC97B978F98B2C9E68957EAE3634C45EBD619DE63CDC8508D60E37AA022805478BE21C9D1D1E9F6225ECB7D65AFD44F1CF7CA8D6D310600F06AC07F51779560EF4BDF72E63D8C0D1F180210863E9597F23E133978390C9C9DCD668E79ADFAD010A4E9BEFA94F08A6F018675969AEEABB4930CD2BB72FA5E7D4F4545D052A126A065D0DEB36EA5CDA5CBCACD07E69317503CC5D3222F83C8FB1D6637E33F4EC01897D81150C4B4A81DEAB40F9A79808F859DF5D7B9348C2886CF98E953B").unwrap(); assert_eq!(sig_act.len(), sig_exp.len()); assert_eq!(sig_act, *sig_exp); let result = pk._test_only_raw_verify(&m, &sig_act).unwrap(); assert!(result, "Signature did not verify!"); } #[test] #[allow(deprecated)] fn vector_slh_dsa_sha2_192f() { use fips205::slh_dsa_sha2_192f::KG; let m = decode("D81C4D8D734FCBFBEADE3D3F8A039FAA2A2C9957E835AD55B22E75BF57BB556AC8").unwrap(); let mut rnd = TestRng::new(); let sk_seed = "7C9935A0B07694AA0C6D10E4DB6B1ADD2FD81A25CCB14803"; let sk_prf = "2DCD739936737F2DB505D7CFAD1B497499323C8686325E47"; let pk_seed = "92F267AAFA3F87CA60D01CB54F29202A3E784CCB7EBCDCFD"; let opt_rand = "8BF0F459F0FB3EA8D32764C259AE631178976BAF3683D333"; rnd.push(&decode(opt_rand).unwrap()); rnd.push(&decode(pk_seed).unwrap()); rnd.push(&decode(sk_prf).unwrap()); rnd.push(&decode(sk_seed).unwrap()); let (pk, sk) = KG::try_keygen_with_rng(&mut rnd).unwrap(); let sig_act = sk._test_only_raw_sign(&mut rnd, &m, true).unwrap(); let sig_exp = decode("16D80287FC5E337C864B7E8C1E136EC8061282688975BA139A3E6D350794CD2AA0035214B2F65FD2692EF325FC8DA9E0B804A6F66CB644B8A26337DA27A7E051EA2BA23322F777679AE34FB06BD928514AC83CCECF6FED0006AE80DA897D3BEA367D39F9047D476282FD4A7FCCDC7EE6A768F6D5FB7DBF3A11F192969E8B3359A0E7D37FE2B1102F41AD23DAC24E21A8B886B6694ED9FDB69F91B8C32E056D280E8A482BDE260D6F9F310DE6313915377D2759FFC78817477A54477C2BB6055F868A4C8C3C538ACFD2F39DBFA142692A9AEAEF69631DBF55E5B3B3E46665B0F02F37F8792EF6EB2F765024162ACECAAB7A7873C2EB4B2B67D69B0F7C7077FC8CC3029D4807C930E7628BBFE0F58C308E717E8C3C78096FEAE4FEB92605846C9AD61B03EC4ADE99EA9A4F3B193BED5F4A1E0DB33ADB30C8E6388AFE6910F1327D4E97D10FB985925E5BE6296727A91F754F16D43C942FDC9AA36D0DCF7669455EF61CCD04B0AF78F2E815B9262ED8C60453727EFA4DD84A6A9653157CE8693D61863FC4B4C7875BF9555B96D22742CC9D309F0663C1CCE24FC09B9114DB43395EE781DA1B2FA9E3E94F9637914BE7818F63B99D0D2999D3E621FD1F16ABEE67F1327B1F0E271D2583659A93987D029E4686AF5379C9CC9F688487D719F1322FEC4C4CBEA7201B6313CB9C124DDC7831EC97166B3CB5B63A3839F09EF2527F74852DA27997575C7880FE0BE91C6F912317FC96A239C844E4727DA81C923331A1A439D95A6E3BCC802D77F957B130FDDFC446A82DA124DB18A07B106AE574E06C5EC1D7A94567699A08A2E9D71784D3AD4267C9D2EAB9A1F10324727757B837DAAA147B3947CC8E080A4BABAB6224EDC6E4675173036A40141B3D03A60930C5632CC4BF4D7A6641B3441C1A5A1230E6CF849274E8825807F961A254502BB712C36A51D3F2FA644B4DC2353BCDDA06E6D15C9B3AFEF7EB7581C51368918044659449DA8BA26DBE37B615669BB78A069305EA38CBB1166F65DB926BE8E3F852DBED8F7A718CC8DBBE95B82ADC32166D55A3EE0FABBE44FFD282D8FE3C44234C645D75F6A6B54556284DDB6C4C2348173703C54833E045EC8BC516613638A75693CE5238CAFDB51ABB022AE9B8C73D70F0B6ADA13C8CB08D7BA5197072FDE88A2AF3D909DCF2339C772FC5D33EFFD0BF20F1E25C75DC47F9D9C59CD86C19C377E60EA23E8E6C362DF2569C50D976750EF125A13576880E54823A75BDC817DEE2E23B5C3472C422E9C86669BEF22C694E161E16689B7BF827ABAA0E09CA635F561400165454F8899924F2CFBD1A744CF8CFCBBF99B66C8BE244CA0A36FB7A36E4E693BA682F5164E02DF7AD77CB98475FB6B5E653FC90BA18B4CFCC4CA52FD8EAF97EB3BBE0582215023B2AF7879C9C8F076BDE2C74FBFDBACCF4F0CF7AE7778AF964BBCF5D2B6B1B42B8C1CD393F383C9D4EA872567D788366895B5E7A3D6C1A4D0D45CBE4B4E18C2C43D7C3B04239B25CAB69FFCE81E1496A2B7B4CC1B9F22214EC8F4E97889B196F6A9D846004A9D5DAFA39B54B5D7A589BF978EEA36D2A22D0C473EAFCDD265D62B7370942352777A27213CA5EC5EFF183F69E585C5AF38F237F264B2FF7DA183830DA5C64DCC7A7889A24BDD06CEC4CFB8B2B33520A7A2B8F9B5422ACECDA796C8F4015CCC19B04ACF488E525FC33E1946E1D1A4BAD29B7C42BCFF10ADAB3FD9F5CCFE91B899CF1034C221AFB957C3E6C570EC43A7787E37FD2D89806EB7570B4E4053C40B70FC78D6E465013A9C0A666E70AB14D43F2326702DA4AB516688902DD53DB702197EFA1AEE4947779011F1E1CA52DF011596FBD96A166BF027D954F8DE858D9E0A5080302A71C77FABF0F13B8E739AD5F2BBCFF792EA6B965D54E4FFC38215C5D2DF1F7E995C9A1C4E2117E4FC05A277673179EFE7B9C26E93C7A9D652AE15AA4FA5638C7FA7E4654A9FB9560CAF6937892C0F1F8F850171026AA6B8D3A76F071E86F0D6751C444527260761F92E285EB8EE5C8736DD9F4B7515F9D078719F0D443AF8AC288620589D5E8FAD97C8BF07A7A2DAFB5B75B30E8AE58C672236E62839E42F7ECC89CF477553D1E5D6C093AFABDA11D5FC2051B9F9B68121F12A8B96A82FEC53846E2D50DD7BABE456E410CC2AEA9ED73E40E49AC96A06C4D7E86B88DEBD798745240301751B97C1E0EBB3794D1CEA1A1D23F68916487CCBE381DB4117FA4E1BBD81C79FA36FAEA1575A0C867E3B8C7BC8F5CDC12EB8D66385320F4E148CF772E5269B392CA449FAF1514A28F0E026C59EE839EF25C096EAB42125E26569594AD13385682A01A79236B30BFC9E3A0D963488F5598DBF89AB88E9C1DF2716FFA48F0064D1EC743508894C68CB6EB302702B20BE2BA25B6F354DC852E73A69BE77EB86835774383E003E901AE2BADB66214D5E87DD800907FA7A5E0C72318F53FB8A586F3F1E9E751423CD83D67C8BE09F7A21973A222E3E37ECD0AAFD9F31C3A6EAE1A9B98F6BAD5E4D44BD0040376E4D2F1A5C5B733457CFF936D562E72E470C16B7FF6A70A1A4BF694A36772D28029CA31D7BDB22CE9D5ACA862FCB3801B154CA529B4BBA0D4304CAA479B0537A965C78D12C01F51C4928CB182115B166EA8927853C42DB7E383234946C6C8EB5AF902FB00568677F76799DE03BCFDDBED7DA95D351D10A10A3F68E062D5668E2EF98FF2846F721F2A53FF7EF94F2695E6F4FC60FBEA97C7A21DF1565109C369F443B901807AC4E5C4847E23FC371E7E6B57D70ECEEF10FA82E0CBD5520B513D7D82E684ABDA3E4313F6EFE4BC963F57924E0F77B74F75F67A0E1D3356DE2494ECF09CAF0D813D239AE5CA5D6E480A41CDF7CCB5C17ADAF261E7E9A5144B8DFAD494C9916CD2414C83217D9AF4AB1C2400CB88AE47D1681414958F44249FB5D391C176BD6F75F08508CA0D76EF1A85BA48F8EAEE9E48731DFA1A9F0C5BE16736D590534D460F29A7A9C93824F1828E3C7518BB10EBEB8C983AB1C625D289C00DB61DAAAA8FB1E65557AAF30863884A281086D195D566B32EC9280C71CBF0EEFC694213B9B0148C8E6AA7020CE595FD34876A4FAD4D54C5EDB9B56D2EA3894EAA215AAB2566C69848059A007CCA2973517C2CA507AA06D5986632305FED6576D69D0EC4E06D8994401ECB98E142074B88E5CFC532A37637AE65C4EE5B1DC0D37730F5D4BD4EF375C4908427ABC4583306F76761A9E34C7FB44CA2131F36A3B31EC21BDA0FBEE570EBA333F0CF581890C8852EA8052C2F0C2A057FA8B9B07171E7766CD832C301DA32EA2BFA061547BC2E325B6667F16940C2DE1B63C03156D035978DDFB576000EAE21B0989783E7CA50F32425A525F786A3B2379648308986137D46071E987B688DA7009AC4FFCCA7D52FF7FB1A1A895B26D23F61C9A961DEEBEC5661C76781C080F195C4EFA3A9BA1C67DAFC427938074F8F297ABF5230A2132AFCCB6D3CFC9380411F8D47568A64E4BD3ED8C3AC70DBC5C26B6E44D4219B709F1D75504F493E4FCE031B6447C82C07F6041E0AB5AE99427DBEDDA1F57C3962BCAC9F9324C14D13C3BD1C10B5387B8D78E89F262807FA6D3A0666EF2C42077FE92F7791754F7E07947C0F3E90B4BAE662D8D9523D2CDC035B423DC952E0E7BBD73348612D5306287A624556FC6C945E80C8331DB9849D51D42309C1E731FDF3EA5DFC3AF4CBA71F23900544126D38F30E633D248209CD9351E93025CD051E644AF2442B15C55420B06532236E5607A42CA3CE44C8B6BF5324EE7C37DF2B26A59A2818933D513C601E9912529C36A42170040912CEA23524909AC4052EDED8A96434C5D0F9747EB24A4D55437C28825E0DE850E9BE598D1B08D8112AEA67DE6ED63D8D565078CE23E10F71875301953E89CA4AEF132009E18D3F583E36BDDCDB377E9831BFF9A1E4A95C8076EE929160B50B13603390E1379F99C326B746A6BAAE1300E0E2E485447ED07F68DF1CC1CA0AA4912969427E9C3BB7BB5714C9AC63E3904C0F136FF8E53D286B2D3E2F5E636033E0C0547530CC9936D679DC6EF7AA44232D172FED47B1E6E70F93D46175125592085B93DD6CBEBE9B23F97470B1CE743C4F686C4187E2E1B7E3C949A40E5981784FDEFBD3ABBA6AB272F5335FC42037C0EE9E934F920F30E84D1ED02118AACEF13F9D2D6E9A521EC3986945D21AE7D0DCA7C67B855B5C9A71117ADC34DA3A8D02835653FEF3D6B2E20F40ECB1E4A38D60628645585F3E6D59B40A0AE4DBB65D5B41B31CC468785FA7A8791040C07BE579ACBD279F63F0189B55D1B25C3C150D172B3D59CBC27F8E9BE34969C34A9B4D4EF3B1312AB2288FF4B9038634B5304F79AB85CA99740C33199042ED06A17294189C358FFE49532CFE16D482BC957BB3BCE23F5873A9C7DF7FB87CF4F1695D763BB7BBCDCDE417B54AAF6B111CD1BC1174F56E304DD2454A06EF2BB214C57B57F710A978197489A05AB23BE5F7F9676CE768871CB5004C963FECA322EBF4D7890E7169548C717D53499E9F8BBC228CF8A696F87ED6760AB66F0903BCAA7CADC82F575A6FE3C9CE63D4B6ADC898DF44E4C8BF324B23D2E023E0FBC4903DFA318F6940344D037F17545BC241315461EF0FCD599676FC0360AB49C9828EF6A9B606577520BD52CA82C8F5E36182501D61B50B50A2E5DEC1C9C0333231605648E8D26CAE7CB689BA8182D7388AA0F5C52D77C5EE465C78FCC2169575CA13738E95B34063C1F77FBC67DC7BD53AD1D802354E237C2B80C1EA3A30C31FB6119C65101528DC90397C9B8691707C4C17AB67F16B8995B32DC800D86B244C69C9D7DFCDD7E9C3BA28C34BC1AF58B2A78EEFC23CC5573D17116004590B119F4A212E36F7E4A0AFC6FE882AAC0CFE83F40BE7065A3379E40357C0B0A61C430C4D7CF062EA565009CDF1E3374C572901AA891943E4C46F1A50AE9F11AFD1A47656E9CE70CFEC2A08A2E0BBD90F24F378DFE43049D55180E9B4739DD336C488726A4BC1AC753E1CAACC8C38CE84399693A190AEF8ECA4E3E18575ADDEBA53282F0633D29EC87C105C40F35AA98D7DE9D61DAC5C33D6881AB3356BC3FD0360E67C31EF1AA3791323C3385216576E0B9B0F1DE0F4812DB6A1401AA36DE02DFB13847E103C106772919EC3BC93163ECC5D1FE15AFD542989BE8593065633489FC4FF8A941164B97132AB244A65AE4148E49F9E4C96BEC11EC334BED70DBF52D5E4151B33DCBAED9BB9EB1E9008F1768649CB643B4B45AE80B8709AE08A7DDBE1165A95FDC5C51878FB238C5ABE8865A44C068B5F6B4958E375A3308B70781BFDC299E97E66EC195D49EB5B978032410AE2ABD573A81FD0572B5EEABBD373A6565096C8AE93C2A4028289189D6F48FCF9F870BAB885B5A0E9F5A277B3C49DE20A973DA91145EAE726BED4633ED1681D19FB250AF9E931E1EB0A0264C3576B7E4A93A72D0D53B41AF4C527A8EF137CAEC8731A9BDC2A5258B789C743D14F175644227CDDEF89BEB3765C759CC30C378D48E9D2BC66169614B60DDF3FEE4ADED2877215316AB8C9D8971E8F60C18352BF2E4ED76B2A6694C114B3F20CBD64000114107A168C2176C4EA683F878636672740568305BC73191B54484BCF76FA112E4961DDEA7B7977D87D41C8E4BAACADBA1C85D5480241FE05C959A8E36C305566EB60E18D5E94D953906900C35F0F0E5C1C61E331DC0877AA073C6AD21E6705E5572052A831405C8B65F7B96C0D004F91DA2D83573D7CB0A1B417D3AEA33E65937BAB833DC44C63289354F225E70D3D7AD163DDC98E04A0B89F0074FBE45AD6EC0EFD4CE7BBD13EE9A256622BEE283E68C6A4087682E71113AE16CF81C6D34045C47E6C48A7CAAA06C6B898A287154A5C8D75AA05D4E37A05BB279F79DA6785AA089166DA2165EDDA51DAFD21755B70887001179AF94B8CC200F06CAA5D2520EFC959F424151E7A056A0409F79FCDEFA408E4118C843B622115EDAB028C4ABFEA2257A0495037451AE8ECCE5D97DC1F93CAC876C14C727D98156EEB129AD686A298F5B649B5E21BDBCDA18034E33CE757347CD90BDA48471CC0B8967085F8AA9EE3FA38D9F588185A7BAD611E2A5F2F8100A392448819689608CF82E305D76CB719C3722E5B59F4708BF41A1EBB3FF3B9D7B4A2238901CE8F05D43289A48F6C7BA455433D87EAEC20A9AED0A0F1156634EC6E88B81AE3F48CBFA4DA974942659B137BF46FD53ECC1ACDA73F8C347F604FCF5A4DFEC11FDF5DDF23BD54E4A12E6C0A0A9A0877156289F08A4306A1CB786F8211987BF87E68B27A64AB855AAF8C9E97A03C5A5B055BE6CDD8731E72426ACAE794B0197465B04AD79265C46353A56B2A47E7DA7573E16C40284CD043BE6752D9F69EF46EFDEC139E6F8FC43F308292A7B9AE6DD839ABFA1AB4160971F03A251CE2EAB47601A7B836F0E944F68AC0809EDC4C59CACA5605FBF5338E7581B0AC066CB487AD8199AAF7A7B27A04D26FAFFAEA0C2514931609611EC513ED6B9AC8976271275AAF9B3E03B63B99B44BF0538682E2563B4C51AEAB08620C6BB6622C66ADA265EBA877E55AADE6EBF7D20CBD5D122AF094F62D4EBCE657B4B6084E7A4301BCAA417EBBEB77CB8CA0D4F949246D7616DDAB89F3F317D42671F8EF683AF9D1622A82DE0DE9B446C5DE5EBF2F5803EB4BBFEAB2892AE582EA02DA1707C021EE7B1DCAF2FB73E2951B03936F812A4DEE5867772B3915A3000F544ADA150B587ACC904870D8BC5DDDD18D460ED1E38E03CC04406EF7A95885B5FF4F3A5AAB98C03E172A08E32184A8909E6194ED22866663A1BB520D6A3822D874EFCE5F9F0F9477F42EADF4949BF8D71392C994AF6036C2895E40D3EB51258B59A1713DBA3613F0EE280DCA66066F25B720251C0739A1ABF547AF3D06D05B35374804A2DAF13FAAD93674DF93EDC212EA36AF52D71BF41DFA7EAEF22DC8BB00A0D6AC1E2D1FAAF9EF24B12E71C11A4E2A6D19D4391318EBEDA05D0BEA511EF57127D5DE71208777031FA35DB62B986A3B899BCBE85BFD0D6E6D2A43ADA5CF3EB492FD10A7B05EA327B97D154902111E8843D35F77AB6A031177BA758D8216501100AD6ACADE8B1DB4246CBC89195028B8D2C5523E2AF5CC0036EEB7C4925A9BE8FDC86B57AAFD8375592E5FF2F7A378ED895FE18886AE0FCD5A426B6F573C37798355ECAEF65069AE7759EA7FA6D104E75442950C23886CE89E62D3F17A78A9EF55B322C48BC7488A5C4A17CDB3E4F22BDB4A4948A6A45474BC86BB526E44BFF43ACE80DF8BF171D5BC2F09DF3B055289B0AD1E8CB6E059C9FAAB202179024EF18F3A60591D8F2FBD4334D3722405E7D084D262A7DD1FAFC7D23B55696D9B15ABD1E73BD75953FA4F7528DE734214997B46669040913E0AA27512AAF62A900A19837FBAF5D13EE08E448FCCBD2C0374CACAD27A30FE7FBD5D95ABD3232E3E34487F78F509A64148510B9C2BA243E4A990E45DD1F6C323CEB5802358840A100CFAE5E66950B2D428343395F9BE4A7B44B89BD6CD1575839D38A5257057EADB4F778C9C8343562FC9F759EF874831257E8264A80EE6D6516DB4E70C0CF1CB15F2BC7E9F18D96392DC77B43676F9BF2A453567D14594152661203C37BA24A2FD614EE011AB78B634E0393939A9F904600CFD5BCF0DDEB8C824825B11339472E9A136486DE397E1A130779D7AABD9B30B1C6504635920C14E09171E152BC1BED7587F8FDB81493BF36FBAFBBD82D653694F4390FFC81F3F8D75BFC5D311050E1E15BB35F74196932D4AD86648A149CEA662A6CF004E1FAD437ADAF150AE02A408F9E9F5EC5990CB49E056BA213861354DDF006FA4D8316EF7BAB4952FCA14B08626CDFF68C12AE1451F40062D35B66D3FCC2DBA03FE9C207572F828637F949655EE0B7CFF0D24E8660DBC09EDC41746DCC291A7FDFF61B63BCA0657E416A93B9791406710B493EF50B9BA6C2E9AA241984CD1BCD2857D03CB820BA2DD774D8F0C3E66E6BB7F8E09E13614449D22BA746965E728A48731EA9366EBDB91E7B93D89782090A6FC1D4D88F320F6DDFFC2374AC782D78778B08F47E48D6958D2B205BA424A361FB15A801FC855B1C5C3277BD34F0F49FABFD1E2C9D1294D77892410EFDACCB98F95615FB99EA43DA9258AAE22970BB7BB4ECBA6C57CCA3DF207DEB2E36B7E8C918C6262BEF1E11AECDDF6B523B9E05373A0CC791A56BED3E6375625383AE2500DCE79F4C334EB6597C84119B8661F099EBAAD9D89CB1786A1891C7A62EE3FC7DA770ADD1CCBEE042EA608473929DDBCC0B4D0ED0FF8C9370940D56546276A9BDAE57EF804CA5BF635D26E205279396FBEFDC37FAC6865539035239DF6242DB575B7DE0594372876E022512838FCF0418954F295EDB189E1E158BD60C2352B90074B7BC35DD9FBC6D8E76F865B294CD02E3107A911C2CB18963D21C032416FD4FE70A2DB39C10258ADF800D55FF14DE939BE42FC8C82055DE16653C7C83BD6FB5E41096E3AE90BB2CDB0FA48249AE7AE9BFBD58A9EA5412046FB74E34FD0B049CCDD22F8611CAD0E4C5B4B9B147F30632E06D882C8D816D497B7EFEAF12AE8F87840B535E738C663146F300DD36AA3F0305E05A6E79E31A7AF6B84DD9F8DDD534CA760987194F1B27DBDB7D1264ED1FE22E28A98600F50AC84910A983176CC0E2764C12971F4BA461E835F2AA60B11F7D898EBAA7AEC6A23FE953B8A335D9D803FF244F358EB5FCB82B8F70B027B2533509341DE7423D45BD9CB46511AFB2EAE3A57AD928A6897CB560C14014BF1A4E7A81B8FBF3E2FB4538E9458FCF41F592ED0264C0DED3903AA853C99734940FB26AB16406F3CE2DD0580E57F80F554CBB81716AF2753CF814185665DAB6878016083178FED703B82C8728B105D709CC9E1FDDE9951390E9C9DBCAB59B07F7B773F7F727D7516334D8436D43932A8FFE846796C2C658520FE3D83148C111659ACB06058164472F487F8C09DB9AD6D75FC43040E5AFC7882FCAF1D133C2AC220279E8B46D0A58A28EB33D361B29BD3106CCB9BA9E32A4D53F7A7D08086EED330F655D576AB0AAE8BA0FD9670507E28820FF0D6EFA292D6B358D8D6928540A9CDEBCF87411FFA882F17820C400DD7F35E8FB2ACDFD97405713502D89A2CED386E57238EF9DBBCFA06D46026FB73663C2FFD89FADC73C84637D82A25E02216E79B02A306E8A3493227BBF2963DB3856239F277ECBFDFBE5D109A462669130F412F318C788A3123CF7F7E295C8BCB7036381E0B3E6EF65493866A062324021E7042CE1BCDC21D30605FDC066E3F53E0A2BA471FB1B926573FFFB4DD231E851ED1036E74C03B7EC9158E8D2010643731FAD67A30249429756BAC12B23CA6D6A44A5EB17E003121353A81D8BCA278A96577BE3A50EDCC1BE64A8C9397053502DBFE7EF87ED1B0814592645D0B64FBE3ABAF4BA04AEE36D54A2B01BFACFB5325A82A1F1F5B11DB5078403BAFC9C91C04E6B3B1DA13141F702CCBCB3B6405C992A59B6359197A8AAB0059695BB33918E7902745219ACDD7B31D1A6A3509248D018C605A90DA16BDBDE85C4111A9C670B0CD621FE9E435FA9EF3B1785F450A22DF49C65D2125C65D4336D6C1A4A271B272715D3C9E0A2D6AF33786419667426E5E2D3A7B6EB20A12560BAD4D89D983AD90B62B4521713AED1F67CED43F91FC7E6EF0967CF736CF0D203D6F47E001CDC26753C58D3A5C042C3104A09A4A8CE5C1D586C16B0F52B91D8401AA270092BB92C9072953980C76A449FEF77F6AC065E584EF7A96C292205380CCAD6C4AC9FF5659FF1A66F0F1DAEABFD24F333EFF0E3C55EEE8757504DBDEAAC2B4A7EC277FCC0B97CD45A35BC01599A92327D4FA44EABE28F3644B7AF3E5B09A27D8C8D3FF617B21E4DA646977466207243381358AE821A39569A8F66A756FA52CA028B54E96C6FFC899145101B13394B3699F930C1EE59C19912B196532150B420BFF8C0F26E79D4DC46A1084DA00A1A64BFCF0A59399BB0471DA6F9E03942FD4040082F5ADEA621C573336ED10954E1BB631ADDBD0DAC7BC0176FF71CA187A8FEA6435AB82AB75C66303D5DFA6156533EF1792E780ED1A1EDC44821F8D56B91C504185F9720EA533822E49754ABFFBA9FB3868839D1BC3977C89BC0FE60E599B779549F01FAA5C3503A1B2F4111044F5496A3907A4C99069DA3964B1601FBE1687749542F1AF3ECE1CEBC608D56497C8DA689CB7C952A30767942B97E5E66D9043560B1B766B3A88A70BFB24798068DCA49993D98717A652F7BDA3F635CCD0430ECCFAE55D6216BF67F8F51567FE1F40778C9478A8616FB7224766233353C40695AF2D4E726D2A585E9E1B2FCA8DAFC4EA622FE318B5310CCB7CFDD36220C3173AD57B5CC2C159997A4392C87CD060EB3A7D67E7BCA85A1C785E51321A2E466F6C73B9E1AA9D4CB5103ACF8FC856D00F3F7988BB108323EC42A56CBEDDE94A4CDB7E2BE9A9755E76F321138014C37014AC992954F4C47C95C72745EF2BA77C9BA6E8D416EF1A54E923E96D8F4440FF05BA4A3AEA5688EE3F722250AA406349C3044E3C3CBEBC361513A54C5CF3880114A61EAF9E2F4710641D834BF6D11CFF14BB12F2B9F21759B690950ABF74B09A2CFA6A7E10AD9330C95C3BE54B4BDC36BC00DEBF306374D3D52CE13DDF0AF77C7009EA584CB83F4CEB61955585949EA38E4D803995681F14FD2CFE907A49E4AB6586A12E8D74934DFC9DFB317599F1818C2F5F8B8DC31604D8107BEFC6FDE1175264D689E7E5F4EEE6BBE06B3A7BF37A7505CF8DC0B04244454F216BBA8670C3CE3E823A5D44EB47AE2BAEA4EB411E08221335CBD8651B7744B5F002A9A629DA7C83EA52DE5E9214DD5B1A5A4072888FE5A967FCB19A39AA8E427A757E016C09093865E5786426C488766D0180880675025DD7CF7F72ED2CA2A775DC7607F8919EEB90F6514E8BA0F274013A773F54D7D73D73C60063D1ADF62F9645BC05A85321C68494A1E0B8F5062EFADAD7BCA01DECDD6F372435F3C29BB665ADDB27E03B4E52F5DABCCDC6F009ABAD3677B2EADFC73C76210A252FAD4749F172C092AB7ECE5E14620AE86384428D4F65D3E2E7A93A7050AC9702A1423C46C16132142BC1D539C8FA21BA7466EE85BDA704B743B0FD806A6923AC3A5407A47AC0A5C28401293B78532F3783F83C8A6309EA4186B5CB83D6C94B4F458920D690A9CBF474B50C88F8E566F2F616F559E0EF33956389F7C90D00D135665476D8E2216762DCF22F1C12AF401BFC31238354B47A926E409092213FC38B0708171655CAEB7DCB73D136279A6F9EDD9FD71BAFB5C207B52277C43BC6B8B1D15AD679F76EE5FC7DDD3D44E293175B0350E04BB232EE79EC5F2B709A1F802929B70B62BF619C50F98C2B3205BF8F51C281AB06E91D497EDAD1CBFA02C579DDD7C7204636CA9B234316EAC5D212016CEC7C7F8F7573B46F4EB4FC790287C7D8BEB185C126D96A2553352486A7378A763AF902DF4F04448A524155B0683C1FBA61817B7239CC134284527DC6346D166CC0EC1A85159EF1EACA4F9D10F05BFD09B8DA6978C2188D854470AC29FCB3E564A9A80840E75F3D854B11EEE3DD11449AD81EF4155016BA3B8729BB8143476FADBCF946F0D3B3C9CF1762B389CD16F2B61C34C693558AD0D7C776FF33F1EB78D9ABD6A8A9E102FFE9ABFA5BA039B42C8125D6A037A4A3C185ABD962744EB61A160BAC6637BF0CBB8D9C0BD6B5474094F94631612553787319CF36B11AE5CA93D80F08A2023F5264816AD785BC7A4B760976DD714279A6F8BDF30946A60D648E829F51E2F1413B80ACFC09FAB2848030E66AA68C20BEBEBF4E0DA38ED83ABADD16E5F4B85EAB6822BF675E21A1C837994E2E76D254EA1C83BA8746D33D63D9F0F78A6250828EE649D103526439D4E1BF9D1A4BE85CBB6F8A60C1ACDAA704A44DC38B50D5321CE70BCECBAE259829AAE29E14966A22D58CFA54B91AF92639E759165B15E4DD48E83606A1D86B5519A5EFC340B4992E4F9E6E5E77BF265678004535D001D8E5D7C5BF89EBB1D6E515E4B326503E11FA86EEC45FACDC8C7C9C2795E03567DBFFC21BF2B8C0D9EFFBFFFCF6F47679D13E52F72617FE7867A1BD39EC5B9BA0455618F6D0F79CB3E7F4FEAFE35116A1524DC9263D93B384E5A88712D0C9ADC6E1F6B47FB18A355E7F596CB5A4D2EFB590D442F3885962DFBFB232E38B61762C2CD30B5913B4E912367E436D99AF62558C381FF1ED1179E982064EF9860063454036F262DE3A50184B81EF1C160A4DF391065601551CA706B42542CA0F1CBB29296B5301D9A11339CE4DED236017A739E0D26C9E1EE9F680778E14B83714FB6723FABB61F22A14B40F0584F3462FE3ECC76B5FE7DCE69AE55C75B96B4D066E067F128B9D80759FF91BFA6559735FEA40A521847DE4543608E9C2AC17B0C64BA18A762AC21445DC7BE2E6403016DA9E6F0F0805F89088A064E10415A97D895CC23E04D54883D4CFEBACFA30B013E02C6C86D6445919293D358D9D844DC86A07A315F37D2A4FBB06919A420089530E131658C0AD96BA1E370F5A63222A44D68FF323B47FE3BC1A312CE371586B49660D84ED50D0DE9A76E6A23DF3053C5ADB0E7755F228751150EB1B6DCFD13A92D246C473069771C11DD9E395157E40E1DA00C4FFBBD8BCAFBDBC28615ADEAFA20ACF8DAF1AE7D2D6044402D76B84CAAD336903E24852C2986362B6E9D845B2CC30FAFAF137A0F8E65C3B6277B7761ADA9917AD83045FC5F1778CE6876A95A96789EE81C15364BB6BEE360AB59505EE8DA4967B6C48D0A2D0B51B6372F370F0CB04545B01E2648435A1B4A16810C3907231B359CA6BC7BF3E9A32F00FC732856CD77C942A2D673CDB020866E54E9593C6E721B8AC2FFAE7BD77D571A432E0DBEC365D6E6422795DED511686CAF0B3B816B157BC9507B792E39C5D148AC53D9002743BC7DFE8CAB21FC775F10660572356CBE85B5BEEA07D08EAE488B2128EA22A327F481EF1338A05F68AF0A95FDE79EE971CF329E5C3F72C576CFE601A6F7FF555598A11F53FCE6BACFA7E8AD23295DB31D714FA864F4C11E7F0EB37E8475137A3418A4482C4D40DD299B19CAAD1C2B7CCF58B91093F886DBC5DAA7D6F8D07AFBAB41EAF412D10122451FEA48B34C04C94EC67A43C355B0839657EE753922B3D4C7149ACC2752A9BF127AEA77FB75C1AC4E9BCBE4D5282400F9FABF4FB6B969EE7C56AE908C55D48595FC62704D3A3C99F22F023F296CBAAC1EE711EB846C66474435DC6BE56918788E3BD4DEC2CC0760296462AF29DC24976BE56F53D5142143ABB566DD39FF3E745D5C44B439D61CD66AEB6D8FD46DE94BD7D8C5EEF735D0353168219BD69E5DE695613006146630C1ACA4051B1181F4780E48B18A0941AD35CC7712C60AE4259D3458BCB6C757C098794E1F6B6B7274CD4F317EF60380847794C56A8B27D7BF228DF5B68A4A0C4E39EB8E7DEC3C3DC55AB451C3B7E5352DD62CE5C15B41011EF0EC62A9A63BE46E8167B24A3983C0E1421E1585741D9292905D35E77F762A4218CA554B4D5FFE9E1D2A3D5AC881FBED481806EFE829D0DF03B154A66C7C15FAEE9D1FB31995AB1BEAB97280D966D96C03ED14D252017A5B33C760F12D9A1FC5EB00E01FF8A16C465ECEE586329AA67EC1E7F14E4C1D3CCD1186B13E5C253BB657F6F380524695A9F4AEDFB0CE4D2F23720472ED9D763CB0CD23016059FF2C7541AF5FC8397E9AB6FF31D4ED64626DFC286E1C3351FC58B4B12A7911397624ED4BA53945F6958CEDE4DF1CE4F4D32FFC9AB27E994BAAE163156BF642A9CE0F5C827183559CFF90A0EC78F65C7BBFEAE8B67D5132F860390D328A3AE65A98C5D9FCBA54CB0E53F5CBD6A0BFFA17262FB7F0704BA8E1584285B6E3F05F049F41B462B5DED017FFE02D1139E6E94BE51896F697E31B31E69C6640D26AF9E7316FC7831F882EA9CFA146B2502F6670A55A0B947936CBF95403DF9AA0C6C1149381D7184D20A47415604296BA6B6266C1D9D6C734C98D7AED9BE630D9F6E64E4493A5363FCE9A5E1E0518C2899052193C0C9E4383B84ADAF775F038CAA1946F40CBD14388F1BD11556D5BDF3E86E06037C5D1D54A33803DDD683A5F5642376F5BFCB88C7874FE9E96B613585A93A3AD36967C74154FE3F6F2F9BAF52DB3381F949D055A3379C52FE7DDC84C470A95C32FC028A6B543AA6769D1694525FC62CEBB307F559F021D35F6B949E2A35FDC274BD2395F9894BE3B681A2788D1E378EF3F5CBA86206B26226DEE6D3A63E6C6EDD3CA2CA630CAE4679F086801DC6D248DAFA42881005546E9733D98496CF79676CC77C0ADE701C79F8CCAE730BA6949380A8B38283A2E2142265898D3273245E98F7CE6B575242477E7F8C819BA7B3D43B5184F5B1C15314CF2381B4E2FCCA1DDEB5D99025E6BE3B7B7C18A821E7980FE597703F49CECB6993B250A7ADE4CB7AED281CBBB6AC8E7C6D21CF9C64243D195CB502CDD36531B5E139E7575211E635C30F7AC9AAC0E9C1B80B678F58C84A676F8C1DB6ABD3DD85C45E76758C1811C6C6F38CC6419AE0212F42FBBC4FBB1E3C6F6636DDA68F3B8B65A6DB0993E3E2E71564E97D09383399F3F704207A660FB071D2C6687A26FA04A1234895E2072C848E1B1DE65142E17708EBCCA8C40C16273B31C66D18D6564B03FE6A1D15C8C2F2ECA24C40DD55D529BD23126B6078C060E189833A3698D674C316E4E16B6F02139DB62057F53854EFBD3EABE8D51DD4130EAB6CA17575DB04A442CDEBEB75D708EEE18EBA2CB40F85D3CDA161F7DD77951F05F8A326ACCA930D49ABF892AF720553FFA7273D7B12CCC9195756C0927845C03DC3A49DF3A7674333EA9DF2DF67A6E36F706F04D42428C5EE89EA3D5FCD27E4AEF40F01F7C24D41DCEBC6505ACB0FCAFDCC62D2CA19ADD63DA4F161EDCAF994698B36909649D847F8BC82BD6712A3C577CAF3A0BCD2F0252991418C0EF765EAD422B61F48AC07695E67E59BF4D6B77A915DBEC87FEC5CAAF0689EB9A395B0D16227D7D090CC54248AA9CF6A9AEC052C5E669E28B4AD9E167F478966D7776B7C4573871F349D403B01C7BB978B85BFAE50864A600D1771E99DFD9DBA77CBBB39EF8DBB4A2EAFA1717112F059BDD3A3F708ECF0B3E9A43C1E8A93E7EC9C29E1A1112B5A75D68E08202F5DB11C67052662B7B1EDF20918FF522834D5DF675A1F465F2E23380338652C34DFB7A24F1C1CBE556DA5FB1157F83DD5EE53742F40DE6745EEDCA30B142642EA61A5AE664E321F25D527139AC11F73033EED453E0395A5F5F3FEB51414D7A7A743C306A76B0E35C3F393E852DA12355EE38FD279B9ADFBBCF6330D5E555EC093E487178D6E0D0E31F0705B045132280C2379823CB1D8B4AA97F62AC14CA8A3B3B674EF22B8BE356DE634243082EE790F5833F1E2F244625480C53E1A83A532EF8677A09D98EDD72753E3525E1706FA34060F288D19F512ABF880DC3D52202CB8F20C9733EC7B87717CEAAC7BDC1C7F2905C3A13E0D9051C40F085402195C7A342C5BCE1911E13FAE13FE0A43596A7E0F92F503499909306FAE17FD4658C328FB5D9379BA960E67814A2F3BF3CEA9B935D1D33A11220A21DCFC7AEBCC556C27D711F255B7198C953B010042FC6454A7911946AABA5ECFF8868C2B733269B2ABF83ECDE5A0F94394AA4BE45EDA3FAABE1B40C7445D638587E7CA11CAC3A6A5F268102C9001CFE73B50B5667613BDD3E26FA8F9A01F7EF002FC467432A17C3AD606F38B59236CB28B1A53CCFD7B900648BBC0524FAB99C2E2773709F256290A22FE18641BAC99149596E113A2057A0FD4F054CF656D0BF2EFC959141F0C4BD68798073535BD620621707FA2D3E23168AF6AA9F2C350809EEDFE664D0557FA1F5B493737D85188CE996120619513EE29E1681F8D3404F68FDF473C7007E3A067686C7005784CA6AC8FAE3EF692532E425BD5015FCD8AA4ABA76098A299BD445DADEC0FC6D79A9E86A56BD27B79AE2CF4379167992DE7D1C85FDAF1BE6593C2B1F2BC70D8657177AF3D0C4171CF2E7A2C3BC3457BBA71D0977B61AFE7DD01B1ABFE1E3B03275BA94B941F34138A2FF3B331F541FA42C43D4AD3CE2F28CD4AD6AF605AFCAEB6E0A34455A2261C460584D2FEBE29091B8CEABBC9BA0AEFAB50F225527DE7453F05732ED596EB88B65A88B5119A4122AF32A7CABE05F242A1F0F2A046F724B9A4ED7C3C5CCBF8189951D63D7A2C37BC1B7A1B7B221CD15817C25E42EE9224A90BDEB4ACB5420B50A417413F160C7B281C43D5D7FAC469C6273883C1864242FB70698EE579163FA1AA395494EB275DB093C530B684C8F9C554912751E89F91D851F662A1A2EAC4836452878DA92B9ACA33DA2F3C33C01923DE2C659CC45D3EF7BCAD865D1C0D089F8F3104909834ED9BEACEA40B00C02D9F5D327D46853C931E8FC5481BBC61A4DA2AF64A87EABADD0DFC6E3A616F187F1999D294E00B9D47E5CB65406955E6C7F0D3A63D225E2889C469B3F21A1A6922C3149EF91DD50DD8C1022CE4561C985F3D587CFA2532B9F139B41EBC05480D5C4DEE07240FDDDBD27A5FB43DD0385AA53A70C8764AEB20B19A60526CE84C41C7A87088BEFE661EF21A538BDDC2E5F3B40CD5E00AC8BD54C117D3CF79D988AFF90DF0963BCC015CA4C903D32A3F7AFB57683E44E8C179A72602182D6165A33ED59998E62F8A2F3291C7A36B0A53274E83823484D01B306B954A4D799DA530BAD0A8B128ACFDA1D4BA99F335BA1FD2EE00EB44C680EFD999BB8A0725D73F616A2AAE515DB016263E9729CC3960683B9869BBD80040D30B5806D60D5A8182C5CF286B726F1ECCBBCA93F4C5F02E4F72D783A0A198423672810A0EBFB13BF5E133B907AF56CFCBEBA11CED7D1FCDD418505640EADA25149A57422AC06B9318A90FBD2FE98C8B3A993A0649991377CD2D22EF6B3FADB3CE69D722DADCAB1B9F9A8EE9E1335270C60EFC662CE32F98C2E61036859C4FD8E5C5F021A4FEAB1639BB1C82C0C58E63321A94100FB1B3C86AE005EEDF6977A98556B6543EB1D449EB2FA64542A61772380BEE9D44D34013A78DAC08FE8F1231D310296ACCEB0BCEEF39A5FAE0886A4C5264F084C229BA4DA51C9DA8326B36324A0DD928C1216C00E53840F231C5CB90B2FED7B6E9A2A6405BD91325E4A8B9E7F681C01690822F63D8AFB2E3D71A0247CC47B2AB9DA978AE001811D8872C8542FADCEBBD95220CD52043EA67F96A3C904BC522B1F8F0C97C42BCCCA902918265F71838C7A0C94A82F2D3A19FDDE3C80934DCD0C5F8DE8272AB087C0A32760CA30041EF3991E6C59A98965B5F1DF3292492BF51F129AD3EF10CC43BC693BDF5D2D35D908F78866B3622ADFDA3AEFD948CBE60A552C707454F45E1EFCA6E212F9FA0D216080DE11E47052D2956AD4C91DF7F6F037968A6A348EA112BCDC984AF4860DB29989EB179C04EF93E3C47AB26D21A3D98D8C364F28E4EBCA03B8C12FB84D64D8CCE57E6F427CB3C34EE244AFE034DEF3D991070413D0D21CCE6DCAC31D84E2996305ACCDA6D2453399A50E8E55411C784FA55CAC81120A7D46CFFAE62EC522C84FE45C3E6E1CCF7EB85BBACB250E860ABE05774A8AD71EFE2438B62027C350C75FB02CCB455E37D2AA260CB706F602E9AB3E8F85A70C3032EE3BA126C866F7B7AB02FC0D5F336510BA3C7F8017280F712242CC615A3A5DC311C86F12EE2DFC749DF37E75CEE2CF580E693BCB84FF3FC8F562505990E7D2B6F387888B4951EB72233DD960960FE4A029D9F8F726B7E4FDB1E1B408EE51C24856B17D1DFA979CABF5DA72824B07DE0E788659B6091445323BEBFCA5875F303073E94D90F3593871887B174C791F8E15AE82E640F56E9D854A8E15BF820F01EA0F8EB227C075A5993AB63F73F9465A2C56C5013AD7EF7893404C492985668F2671F57044372AE4DB36C58FCFD70B367D3E35E97ECBB8165BBEAE5724AC8B994FCA074EBED9A8F77F60F9B28F3DE2DA81DCE1E671D70537F2916B6CBCEA0CC1FF27C05298DE263481136E96C8131E81591D1107B0C0D980D9974215D864BC49352CBB7E72ECFE9A913F45D3821F2CDE2B7D4D6AC79E4069C1B14EDE4D7E0D9AF368F2FE1EE65238CFD4BE95770F04F76A5400F8B421B08B98B15664FDECB4CB5AF1B4815A45725E29FF4C19C37C38CEF4679B8F0A16E0E22A25C2EFF4BC9250E7914D32276E12EDA3B4BB06EF23FED98868A1842E7B53641233479EB074B232B3A3E7EBC5EB2DB419073FE7947EDE6B9F457B713C782965C51672DFFE389A1C8D7F3E566D5238C3302BFD1038AD13293570F2C5F3BECC08D6949AD1E981FEF78BE68D0EF99CB304BCCBCD7289003B2407B3CFF3AAAA63091D6944639607CD6BDD2EBEDF41188F9084C6EED1529A292B361BF448B3A0EF706825EC8366D0761C3AACABAB3A4A86A9EE3CD61948B4C9233011CCDBE277A0DCC2A75F17703B49F0877CA9A3F333F443807526C7787F597924FE11D6F82B942CE091E181280B5C026C268F10B1A29CA1641D49E0197A25F9ECF51AA4ECE1F5C7F06187B7C30352B0AF5383A6C2244C12C2A22FE35DA9234CD1D8E3D184E04F23D4A6925CA1A440E689D0A947A41DF5560FB5BC2483BDAFC69E99848B0DC34345531DFED17C41B4F4CB2ECC514F508B537787262E4B133D51FB5297587FE73659FEF2340206CD82E1AFB069482DB9642F4919E50000D6109F3146709DF2AF81DC22D941E7BB57F4A622767019C7413459D2A0A010C6E8BCBAB076027B40C69EEAE1C852D4239387237A9C4DA1CD6223C6C11B54A51F7D3281FBE5F23D14085AFEB888073816DCC12557BEF929CCE874DCC366A07CE58CF70551950C4DB6CD41BA7B80D71C8C451F825D52CA4E278C6FFD0A4EAA9A0B46BAEE45E695F8F6C5DEA7DF11E5B03DC2A3C1EC8FF4B0D7AF6AD190B6B9D507DDDC336F867EE29D495DF4B525BA9FB0DCF34ADF9D16612025CE30160368B29084C2B84C99D7FA27AA7CE8BF8C5EC3BEB46A3F7046FF766896501809FC99B7DF5F09007106796B1E4830FAD4AFD7DDD5B62C7BF5C1341E037A99D913C1CD8CB44F7FEC376B614B6FC1977AACF08E830832A065E998CCD1ADC60B8B6D78E90CCB935B83B0D40C7FA6726A9D77D725E231826BE6EF1FA911FD74517E7A3E530ACF0157FAAE9C084F16F13BC12DE145016D473B1DD1B62963F2B205D902D76EC113E5DF7F4F0B53566293013720841E5C5CE33E93322BB6737ADF2D25AC2859AF58092C654DC2BA5793474CD8871BD6F2B497F05DEC78667239BCA2CC5CF9C32ED0CC8BF76E743D6720F4D929EEAF1AB0B270F4902962AA5532E818F5F3E942502E48513451CE6FC2C7A17B58321C5AA28388343213EFFFD0B751FD13564E60E0149B2C843509660FB20A0E4AA977D12370B8E743267D92F2B9908B4344FEA8B022128241D7F88972C573C3DEF84BA766C1C4154E197AD2EAD70B17076281A71016657BCE9C4AF24F265F47B4602EEDE06DC297419687378420BE2FC4E6EEA9FE26CC5A4288C07DB66EECEEE742B02D7941D28804B52F1ACE25F8C2EA138CBF3A90BB113A4C0C21A13C5221B89D3E6310B029B090C0E02A548BA17CBBB5FB8196587421EB3D041E6C32FF32BFF0657FB70E3525248BA92C3C21A727545DC22A6F8BCA5AD44705D5CC8960B24975FA6FAB7E86BAE3262D1FCC8A6CFAD338049643780A8A2A00D879F92EFC9C5C73A434BBE204EC518DB8F3628D75B7AD1E0AD4D6EA837928348624C90555545A5FC8FA5CA641FC51A94C111BC14875965ACC3598D755E826F5BE0564001BF774E515196B95D1ECFD046B25B7AEDD65364CD17EAB70DBADADC70E3849E5C66C4F3DC5EADE4BBDCA664CB04000F4A9F64E33BE4D372E96B09D1EEAD82C59654CC1DA450B9D755630DC4F3D913336D4AE97563C2C518EA85AC6A7D9BDAB53B3FB3F58126C9297DE96C6D6B369E945852C177111E600A4600FD63E31375CD89370EDC871DC13206B749667C581B1DF94FAB5A2559F8AD5B6D0DEEFF3F9C242D82DD7C228C28C09CF9BD9650B0CF681386B55C222E69E78AD1D50F4D4CB4A90535EE052D62D290B5E92A967951C28D08F40327DDE712CD7459C03984022D55C584D34443400E8A2969953B39DB610260B47E86A32127DA7DDAACA18D0890074F3B028792C80F8A8D9CD651393968C3B2C625FAAA75DB06E13DC0C48DA8F29CDDA571137EF96AD77E819A3E55AF95B5FE1DEDA5906850BB35B111D127970370AC04D6116E1831F1DC05EC5D9BB9FACF714FF90D8BAA747063638FE389EBA0ED8A55A1EAFE37526B3967B91948469B50F5678C7BE0912793EB9996A2D522C1E0B55355FE52EC438CA6F7B97E152A4148196EA5F95FA5D518544007D9AE5BC0C73B2078E935ADC35D258634803648A9E7585B989518371151076D6987483A7DD58800A907A021DE472F598FAFB1140FC061B709F94B460B93CF983A243ABE7DC2E38D82758784B305413DE4A5CC8563792CB3462DDC29165E3AB674B0E55FEAA5053AE54A71E5F8C85C7EB9F7F5DE7D150AAC38A345CD3577506954269D25D5E5D3413172CA6B18691C2DABB4B7F9ECBFBE66A90895EC2A4367686E4BE9A51A81D23151AD256C3C889E7B6EDFF8C3FA9D223958F4C5481F536CE5A14E201DEF61C49C9E15F9B20D799B52E3E7632288F110A65CB9B79A77173A6DA68BD9C9BB2B887B7F8AAC2F857E0E622EBF6B7E90468D313958B7A09B5FAB46D627CD1E96FDC1CBD3369EC7CA26DAE3D31DA62B3F1E9990F585D81D490C78AE197461285D24FE6DC607974D896335CC0229D2AEC7FEE77059930709B870F247F272C1B6A21897B28AF01A3F2FBB940D2900F4A7158FA6511B5513C4F6BFDA0CCD08650D6CC09E3BAEC51E87A09FC8AC9F3381CDA5854D7E0A5901478B9534B626783F9057D7DE034F0E8AEB785C39859A774951AAF643C3AEC787B60937EB7DB12AA773EC7F5624CDE251D4A9684D3B3F2BE699EA38EC4943B02E38FA68E167E7F1C6B074C13512A0F0E8AD7D436E9C56D25595DE3CD853CA1DC2F9CE0295A3D822DE423CF420FFAB58100257CFD8CAB7A2AE6380F8763530B435D29D6E5EAB9B76A57D37D191D3C06A4CE50D2FF2DF4FF4241A02927A4A930583B351A0DC9C0D8CEA421ACD702EC6A714DC31CFB33699629F8B8371A50A6304742EA7EDF563CF9306C26FA422ABCAFCE821314C3FE3C8508FBC683ACEF9CCDBEB6EE0CC257F7F06E96380C2D30CC8B8DC64FEDE5CD50ADED168CE26F8D3E8104F4B86657B50E7961ADF7022E59869A78379267F0B3D4ED7F9B80720BDB8AF6889FAC54C35841BAE787BA4A9953CBF7C2BEC86C001AE28E2B982164D7CC5831C2B8D0D1B45963A385F334A7E711C2286DE58F10E5E48A677589D5F3F896F0E1B1B1C98A9AF9B45AF0F1419D5B0D67944B1A332B25040F82B792422C05F23809D86BBC099B35AA5DECA5283691162E8032922364277AB441C4CFD9D874E4DAEF8BE3299300CD73BE11FD0612A0DADF6392CF76AD0D4F6EC060E74E58507A3CACF865F6E6B892434D0CAA274366E659A95B87AEFEB3C3ABBE9E266DAB2ED5517316933D6C5DA16FB3E333628F757558B516420534DD17BA703447C47997FDD51DCAA9AC9B1032425B9F03836FF7F09CDD2340FC13F7FBD22DE23929AFF5CF1BBA42EDBC8EB7900A26BA5CF8BBBCD0A9E110365B814EA3ABA1137461A5F6ED214848685EBA3A0F448002E82ACA0B7819A25CDC9B66EA6D513686ED8A1A4954C6916EFD3BF0496D61CDFDCD6CDA49814171AF464903C1ECD270BC002939D313E174CE53EA01B49CB389E2192110C412F74552BDA5F033133DE63DAAC2E4271933280C4B04446E8BD3A90CB34AB14AF35871C270DE9252A5E49B0E84DF141495E89D72416E203A1A5CD493A01DF9A56EBD8DCC2B096D16D2E1DF378F123D3A5F21F75B89AF54C7E71E04099A8506B43F871520DFB792B6C376F3AA432BEB891BB7DF8949F709C488783D0D944C85A3E808E72BEE0F064A8109255460FE657A3E32F211F0DAE3B7917E24C57672D4231582CE61E7184B0683A0EF6BD0A62491504E6D78A384F3527E1C4686B917573412B23845C2FDB8705C75C506B8A9D1D86B5DC5EC3F0B9E3C8B45035FAF9DE2D51BD317F2F40A929E969CAC5D42AC779376ED4799181EA0BF89E6440AC500FBE608A66EDE54175108F408B72A91042DED669C6D8D29CF39E799B8D3324CEC6C7AA1EC2259817BC8C4A97FBCD5BBEB317BCBB88F8708D9BC336E375C482028930E193623FBB6845876BBE57E54D1636003CFD5E372D28041C58D73FC69BB2B8BAC1E2A6B608B7D30923027FE0FF81DD5C796B6CDB184F59ACCFB5673F9A289493C90BF6A5E2B78DA31E447726E7596B0AB1A13F695C9D2294AA84C7F061FCFB482A3FF76C50E6F02F8B10AD675678CEAE72235D0053C492FE7DB7D1D0C9F416B7FCBC0D6C0136AB5C6DBC7B49C2FFCD2C6FA9778684D316E26E36293CD7BCFCE50BD015A749ADF76BB25C3B593EC865B7EFB9F97AE0C52A768086A306E5F3FB52FB25D7E013DA9C97ACAEA339EC7BE6E8EE4EFB6D4AAC19DC8BE1D75FE12F1A67C674B10C6D24B402EC78729FE50D5B796FB25A75B64EED6218FF6137E4635DCDC962B67E14C981A2FECD39A0F0D5C881197726BC1058A04C235F3904AD8B2E61492FA8054FE4A2EBA739BA01DE804277346D6246A46E070D15D485FE97432028B31D9E4F10653ECDC9512B2F055DF935EB55C798B79ADF585A7F79A13CFE1CA8FA47567DFD4743A80D50B56D63ACC5E154E5D93C4A01BB8E9F703A30F35D53217B159F1FA6D2E0688E078066A57CF01E39A7F5E290B10AC260FC7CF50D9DA5B2680D2B86FFBC0DA1F20F3D9868826B7B85A227C45CE87D5D710097F991108EE146B9F56EB7EC834E6E9CB9442C93BD7CA485E82743EC92D1F84A98869F1CF796E6ED6D1F56604F46EB90C77CBBB90E90765BE4B0CF365D3FDF8EC9DC848ACF75308CA2272CE1E95A627241FE4AF08FE0CEFD5FFBBB5C9F8FAF670348CAD9677FD4DB1DC85736750799D5532D45C720C8AACD688ADC43142869BD1050935950186FB616C1D78DFA18A86FB1B44054A4ED13BA8E44FECFE0CD7363ACD909D5E62F1883D73F7705C3D0A79958EDC74C47B99B4FF46309DD52D2C133B8B69852007BBD7B532E9E0374EFF3B787A94D289C1CAFB2FE1712C927F154EC4EE01139B96782ED44EE2E6324F09FF7D425F7280001E02C352476C084FAD92CC70032997D325CF94CE614B4F6808141291C2635B6B4BE30ACCF803902CE5CF1A3427EF23628EE446F9CF868FB464AC79BDA62FDA90D31B8ACE5F050EF4E2FC691E07656B30415824CF7F31A6F6026F16C1BEB209BBBCB520C766C27498937B4E830894A67CF66581370A2DDD43376BC89E04611AC33AD0C1CA4848DB3BC0303381253B50C6BADE9A9D7F32727479AA93F1046D711DB1C436F3E9D0469C450FDA724F0B75E026460F2946DA9CE38F8FB339B49B42262CEFD0AF502F9EBBD9B9E94538167AB14597EFB214E5BD7A86BF20741470A9A37AB6BD0E8B066224B5A937DEA2B9F006C7E651ECABAEC3F1BBC40214A10354C5752EC750AD83636764AED7AA299E6E63AE7BC3B54BF38CB32B56AF1E785BAEC9A8F9CFA76D4FBB8E2B745AF82A4CD2A96C023CF6E2722AE71DFC499DCB94A8218DD332D69FF0DEF2593B8B33D060AC13A30F6A9EFE27D0EA4EA826117C274FAFEC553F2350052D982DCF33BE211C7025F74F885C96CF6D41E4C149254EE78CF34FC22F86167579A21A231E7D28A5DD0719C21137258C125065B6EF4107BB79E635AA2D95485045C5A254DE36C1FC54356243B938FD1C35C453C0B1E4D8A0DB86616230E8F7D8BE768CECC67642408437442FEE85E8166239B5B04607E54D404E1DFE1C6C9DF23F6C2D98418BEDF3B782C2C5D3DB6604A9091FF8E78895CC7495B84AB427ED657CFF890674556ED62F11AECF1D97753172EEBB3991C410D15F5B659F97D6D1A088FA5CBAB5DD5918114C151192C10D3732A5998BBAAFA19B0EC37721CB79F4322C4F5BA8C285CBB6C474328B90054DAA8EE4CBD30D52F70DE46843159CB908C11664451460B29E9D13453AC9F0E647A5AAE41A32E26C11E17017DED5422D4BA50023832F2DC92E1383CED39BA917D8D2C500638DAA2EAB40B2164B62C9F2A0AD509163819B8403670028F1B7A28FBC69CB3A3F68580AD4ED431D6221073331DC689221DBF03F46D6F21AE7C1AC2B3EA6A6B4348E1A15A1B0B3ECA93761BF2D97C3E8539332629B8B5C1DCB7CA96B076B1781186C64F350244FC173ADD903E4B4F9C79DD04747A0049631763667B173F0F483695441F459B1CAD2D5108E9277F49558B94304B7F44D3CA3045C58EEE5DDDA8B2D4E8A0DFD2DF0421694372947EFF1E878716E7E62D6CCA8DEB1A85BD13BF47372E0356A0EAFCC602D2363EC0D912CC18800EEA0AED48160C0D6605F6A3CDE216A166626EFF4AAC340BB3ED0A93FCFB513773252944790FB62C1DD00F792B1484321E08CAF092CF0B1939EB3DB33F03D25D27291D99A21FA8C49D50EE0B8F16D5A00D43636542F89BA1A41EF98F2A69DF8D78970879546DA0E3DBD1FDE28096BEF44E0D107660253913C01C7297FFD1FDBFFBEFF4BE2FC302232C975962E1EE91C422C8049B965893C635B91F0DFCE4EF71EBD709734DC9932917E4D1479FC6985CF5F249F600BF5F96E27D5E91D3674F984C3D54E5A6B8219C2F98C187EEA233B2894B904F8AC58C2D29CAE489771EACBAE81848C6797F540C6D2098EA7B8899303151C8B0AE33DE8517A2F0DEDE6F9C5CBCACE25C21B474E7721E933CA34A78835FDBE8EE5D13FC8CDA99D44F49EE9785F794202770BAE2541DC4586ED6DB3F4C5EA0D5BF386CC0BF05215E8AE0541B2A0FB6BDFD0C4BC4FDC063A5EF0ADACB0AED94C7A98DDF58A560078E63565A294A63FD6231990A10D1DBF5E3B7B5E805B4BE9DFAA8D94D80B3A486B29E2024EBF43290C865336060ECED5B781B90B840092B8324EA4BAFD6BC62585CDA909D460DD57A8111530C69C9730D2D49FCF5DA2C7C9AABB4D202A16FF51E07F5EF56A313207363681DB858081CF5CDE0CDD2DD69DA3E195E979CC78C2396503919C3CBAD38FFE17DEB42F87786E1D604701BE25E6D00398046064A8FE739170605D9B7552DF70495B0B32FE84EA71B0F1FB28BC98774B01F9A1B6A3FB64BFEB658B0F0E9F3F4EB568B7552E063026598CDBE23020F3779625FC5047961491EE588D071DBD0714EDADFB8558286CF7B41F6A10AA562013D56E8CFBD113F20C6926630AD2CE2D173463EC96EF5FFF8DAC8668ED1EE2B6A93C41C7BFD387DD1B205482524AFF771A081DFFBA073F4166C5CED7379F052206DAB8B1BF4ED64C2AC99F28DB318E9A875809E85FAC46938687F2A687EB62061CC77826A990F4B25F47E69CEBE1366C5F4F4568151B84B5251DA0BC8C4E6EC046EB6E0BC0F129F1170D90BF718342B98A74FDC5B82B1AC131AE2A797E7887359AA9D13189DF35DA97E830767A624CC4B1C3C55E4B840B6BC4957508219C0DD1C2B01AE80934DBD413E2BC1296641F6D9A5E40A8A22844A4F34476584256370464AB67D55D83171E1E3EEB1956E553A646F4149A0B9B7601D7326654801208A5674B4D2E3A9257498B65A5E27643684A31CED18376AD566FAA4574511F075BB1E27609870419C36E5642B723F3397CFBB2A48DC5F6A0DABA052E6A9E012F6BAE84DE3EBB0F46DF9FD1A61E8B15493ABB4B66E5DE35F5105A08E27055FDA94591323037C0E098672110E45D03D90CC8B02086055ED7BFB79A9C163759A1D91C1726AB4B80E680A427DE4AFF0110C30A205E6624FD41EAA4CDC57B697D52743445D93E27D5E3EE22EF20364C4A2BE5965CFFBB46BD3A56C31771DDE695B26DC32F9EF2A9AACE0A6EC67CBA64CDD5C1428EF66B597555747391EBF2BC9902BDF06395C7D55086BDC7F8A8BDA2671FB4E64C429F14E20BF6AD64747A94537F5687F7392BB5FC109EC378BFEF1495780A3688746192FDE0AB201FA78C705D09A21DD79F6D13F505861FD689308C0078DA4C1D6287D53ECFE097B8E0AFAF8E495DB516B0629E822E4EC0D1F0E7555138D34A9AAB4F4343D3F38A63716CBC5E7FBD6618B3BDAC5390235D407C606D9C93C47C7D563AA774B1B04DAE87D269A045B0FB29452DBBD1CB2742FF4509B943BD6265A0D1FF8F84669DC0DB2761E486E67844D0E312F9B7AE79A198AD987E1C0B3E19C78CE2E5B9B8A7091EC1D1BFAF8CB3CDD7A8D50A5DF3595C7B3E3FB84963A25D99487BC54DBA683428B71C12D3AD4DE04E73409B7616C5970AE01B4FD2A278FD8B4B8C9C1D80757583699239C36946D49E8348B0C67D7EBEAB4F7CFD90C760AFFE11AFCA817A86C4DF2108099325382567603AADA878B61375EE9DF9E0205D903C5DFE2B7840B5DF0CE9211024C77AF5B27B3EF5ACDE091EF3E3189F89CB2DFB5AA3C62D8F3E180979285DF1DAB88A5D51BF7D5E538F2F73C8B5306CA7C04FEFD78A470373620DBC2CC504F5B815D943DACADA7A9480048E23337D589E1906B9A7704F349427A9B7A6BF2250EA50BC78C51E602A42548966D0ACD7E35C521A3E91A0CBB954AC1B171A932B2F7FBD64A0E786AA18ADF8748F6E0AD6932DBBF24977A7DB836FD3EBFD59AE7F1B7C06672C342ED863E44FF458ED1966BCD8D43C6A7DCBB465A68E988C32DE0C449FCD0E5637A129FBA0BCF1619DE8FC07D5FFF7F1EEEABA92DC629823E8410697C60F742D43DF282AF89B932B55A8A0F263FC6FFFA1C208219271CBE0F5431D1FD864DDBECCB29D685AC9929D0EFCAFF898748E9D1993B7E2D84457238CE1BC6F0E3218B2A52FAB8FDD5F696813F4CC925896880A5A178A8F6DD53BB7A0B840308988ABA75C9227393FB3F378ABD073D88C3DEE99510A3992233CC3E5D310919E9EB725E77049E66CE9A467D6642C16D4A9AD27F8BB0271CC0CDEF4CCE893CF8E4038FF9B2A46D578F5BD6A8A88823B901026434EB9AB4A490624CEC3FB285282FD05633CAC08BC10CE2D20426417AC85BC96B957F4DA77C77917E7AD056D68A6EFCA67B08D2CB7F2552D32C00DD0AA38106CC33FE5E947421E00C09F46A4F78968DF84FC4E0DFA3BAC03B83D7EF074A770A11A3466A2293B26C86A41298CD9DDD9A2591E3AD6485C513934FB45546AC78DE421D90334EE7D853E29756B0B87A2CF6971C5BEBC659CEC73F1BEEFD5277DDDB50420A404BBE0258E61AA8825839EC872833F5AC3EEDBBE969620D42837107240BA5E7577B8664AE83D1FC56E769377208A68DF2248DFA2C9D8A4E5B7F6B43F6FB54493C2BDA11F000610165B6ECE02010B96882597F7DEBA7364A56F3F2E69888D9033EC4A0AA68D5355F1275260B2D2B3C31AFD458941B51C2575AA560404B213D22F17B34EA949CC9DC2362E65DB32617A85A4C81E6C6DFA0A9B89EA0D29C5A5A544A4758B16A05061C6AD5CC2A3ACCA52C726CA17C4C76039748288A5541C8E212BBB425F2EC029AF0FD8C71726BF6D6E2C07854D2BAE8498AE28040FF6E6B8989530CFC3041C76B7CA9DC9AFF7C4A69CB0E28A126134E7AE726C8D2C4DBC1F6819E2747E1DD368B84475A1CC23F5386CD76850E1924483EE7A28F1AF4FC637194B7741AA02E8300CC30F802C1F0253DEFE0833D3B7657F564813135EE8E0C19E0A64F05FF913FEBF4EE5BA439CA341D6860B669985003EFF9F533D8D66D8C14B9561494C3C0BA9FE2E037264A6D5587852223DE5C18A8FB522B1E380D42710FB92414FA2185ACCD87B52F9B7B67049F5FF700BC246A66611267EA4C6854D3099A4D2DD4261AE8F4E6D8A7DAD2935D36D12F8381856B2A7AA9FB2FBCAD1AE2AD23F89C7367DA8075C15D5F5D5B5EB7C9412BED349ED636B5C7486DC54F26E7F48658B95AA64742320D2879C8BD7A5CF7C8C0C3D778E93A2FC9FB711B1B123837B12503AE621F1838DBF4EE7EA11BFE9FB788CDEBA8195BCAD7F00358BED49FF1CE40629F1F7F456BE3443D79AE5C63C6608E3C7C79FCEB606CC59B13C1C4440BF8F6B5B340BB790C73B9D80E2BA8531DA85C2E89E098B5B32C235616AD724019EB93BD572DF51D4820B5228B9A0AFD98640BD5308C697095D342595FA6ACC67F94C7EDDCBF3627B1F8DCD13BF158B65D788A0D4886E26101A28C69E450745FE0F67AFC4B9727ABF8FADA8C5132ADCFF8843EA1A9C28FB4DCDE644770853D62A47828C4349D2B92CA396CCA387A2F6FDD537BC61F1E7D7A6E63E4475141BAED80ABF018F6F05B3427F1FBE5624A10C39CA2B40DB5BCE6CDDCCDC201E65FF4ADAED58BDD4C4D76CA507919CFCE0583AAAE4572F5A5C683B104070F2D7593A61D21B3916FC2CF97D0EF4735B9E8021B5BA4583166F855BCC359428879FB78366C63CF0E6D217C362244DD371DA3FFF179E60CBA9966169D1824B9EF9F07F46D4B758A01D41E6D315F5E414BE76BFD96E50C46818A6AB0E1FC41D8FD04D7E78F4FA7E214C0F004CCCF45DDA314192B384444A599577D530DBD91D57FD8D304AD71BD780C2BBCCF0ABEF60289ECCEF50C6CE05F6EFF35941295DDB3D8580C3BC432FF61E8E69FCFFB0E7667910886DAAEB136776E19599969D802542AB487BFE15957E56BDCF4FD228D380D01B53BE13903030A0D4397119721D85A9CD992D093E8280D9B0B689EAC499C3FB33B1D4286C46B5D98BC1999EED260186E19F97BA8F25D4CF8B3B45689FEA0C2BC8C612AFD517F1B6ED2C056A2B3F3109919E5264429D6972673E4DAEA337E0163EEB8255C55BD2C276F2F08B913098770CDB91114BF6794BE4DACB4CFDF5C06CEB73415DE315F32A6E0BA1EAA2B564A3D196393B551FA4B9E7DB6F978FD75FFE3D57C7B944A1D663869F1024CFC61E23C1449670CBB3726F98B7A287EB0AEE680BC0D066647FDC5E667E154014070D16CE36D207DC9F4F6D0B78650F553B0D9D4BC2A7DA84FAB5FBA4FB8C6CE9D80A72264D044BA9DFCF978BDE96AA2299C7BB3E79331FEC970A160EE55E31C2964ED1D8CA5570F4FA51DA1C294D57EA8BEBC2D1CF7837111F9D92144385BEF1AA9104AA9B7F56DD673B17ECE2075C7C7300B215743901F5727F3A0BB039F8A0A4CBA1B15080FDD09A88BDA3E81D77EE10237974222FEF39D15FD7A0A1C487ED09C3B3D7C49576B0F0E9915DCBCD9A5C0CBEE090B4D4D3DBC4711439F58B1835B3F2E2D4A3BDD4C76619449AFDA2DFD8AF93EB192092D3EF60EA66CE2CD7042280924C4927FD086721202753E619AC35EEC5C5EBDDA07915B024EBCFB89EFC44B9B28C826807BB29FB34682DBCCAF11B89A4CAFA70862FBADCD739101B7DA619F419A2AFA9166AA16D68C21C73236ACCA83E974CD00BA8BB39C7EBF78D175C3112124B7AB075F9B23A913DA1B16F03DB9A74C741AFE4070B447CA52DBC9E6EF864C6B0883524684239A27AC17FBE244B360EC1801DB9D401545C758C722F16C82ABDD6A861A297921C5C468CC694EAE6C49C7F3D237C61CC47A70FE239B1697609FB411EAEE5B11531052C428220214894B316F16BC9557206F8AF748B672FD448B15C3133CE9F965D6CC9DDA547912E95E6C4911DDDE1F70C1CA397C38E8DF35E6A902D993350CB01B04E5A65A48CB3DAAB4796526D4698E4E8B710992D3F3AB883C95DE169636665900E9E21E4D72A292E70D41E1E055CBC08A871954A3191A6033FEAC082244FC7AAAE2414C58B3928F61CAA5CED033FC645817C0CAAB89AD841A941258AC8F1F74F6C8A84E7C8FB4DF2008717D7C3302FDB8D724FC14F843F10BF2441606F014D7FA9FF73AFF68FE0A1B041BDBD7BB167ED14FA18E625B5FB1692016F9506E9261BB0CCB4BCDBFF0C0EFC82DCE9A42B1262D5054427FE8CDE0FD4D1859C801CD357718209F8B9D1B7B5F0E83D757855745204DE30AB1CDEB54808D3B34CC8EE26F91CF14C486F6EB185741E6441962693BFBA6C853A9EA28FF85EB6F24167C6CC0BC9924F444FA31102904986456C917CCE5D894BFD89C1AACDAA9A66E4A88CECAAF90D1DCD216DE3540BC0EAB1E813605143D64F06102FC818A00C73AECF31D275DF14356105AEE3AACA7E5453350C3488C1F72338A1318C29019C81E0AD177638898A4A2939EEF27CFFCDDC1DF64113C8422C3E305D8F2209BDD8728A29D3AA04478B8921E92CFA5866CFD9449B26FEA30F83847FD9749C7A12B299CB9B848E9ED68237587ED4046DA59C841CBB26D00C3DC6149B7F91643ADEB8F426151F69AFA4471A435B31F3BFD1295A533ADDA7C09AB1C6452F71135AF46CF12937089798D201C02DBDC4F3CD38A5E19CE189CC4F1318AB312678D6A7E7D6EB5930533621251792BEC52FEBE1887C71A959F04AB2B253AB920658A5308292A8B17B772A8360DF0DDD4C8E55BB829A453F7CEAC49079D94AD468123DF356BBA49B42B3C590CCE4364FA7775D93B475441FAE60DE6B504E25E82D26B7E8FEF17EAE3F54EFC186D5411B68D6EBE3EEA8F23C9D6372A128F09BC7B1366A41111DED6F59C5114FA5ABCA9C9B44151C63104428493ED03D416213DCF6AE2EE56665D5E657C014B94AA631C1775579AD8458800B189C1D1F783AD9134BBD7C2BA4CA81DB34526021F39A178FF08FFC173FF33BE27B481585599695A46CBD97A1A0CD90BDB0E9BDAC71016E97567AFAFAE37A33A7425B0DB70F64AD3DB87AD64CD800B70F1775B3D1B65BB088C0CEF370EBAE6417A163085F979773976CFF7396286C3A609907D7D21A84598CFAD5A1ADF5E799875FE8998FC0C6993AB04D31CA6494D3189EA33426C8682594C86BAC5F5389C9C9C25C07439C13D66EF2D657DB94F8F1BC0E1CF93130692D106D0F2C27C447E13F9C3AB5276B89B9D187A4386F85ED4C5FA37423D9EB0B5AED9D2416FFF790430267C1574C1B722FEA24439094CDCD250D5ACD54D5E114DED83CB91414E86A809252AA5A43CD2795E6C583EEE0007E12E6EA3E821CE69E429A332F0EB17F087606C77B53E39F6BAEB750DE2C660B86DD8B3156F75769AFC09DF0ED9F2301798B0EB1F54C4AD8791F8303745BA0042678AD3E0BE962EEE7140B81DC8639100B73E316BACB502CE06933B0BB1753E2EF1F71F171F72B06FB8A6242D0947C028680FEC3848DD0D7A41CB72F7DDD0084E5DB4B1D44E2779FC774E546B5901ADD9B3BB240CC42BB7C3E007B4A831DB8580A64C5ABCB3A93AA91AC0DD943ED51CAA511E8C33252C6347265E6A62D4AAE332F934D7C0508496C33BF2B787D2CE9A853B23186FB76DEFB3DC801CF8CE29C7099D44E05C14404291BEBAA03018B66DA95A92873085F953C43E17A9F34FBCAD2E495404C93F697C2D38595947AA37B63B81CBC7F0477D61BDDBBF70EAD9D7775BFE95F4584674C57543E216A20632BDC5A8ACC03E9002EF96073CF8C025031C62195FE73ECB3AAD2E673FB3B6D2696DD99A431D5FEBF4E4997697B77563D54BCCE354644A35FB293FFD3679B67BA10037D816E13D6061477AA5399BF47AA11752CA4A8BAAA13BA46D6D08C02CD4120D42686BC26EE8A6025468B86C54788A9CFA395C3F6FDB4702EF825C1ED26F31C6B85BE9EEE3DDBFC548C6B4A89807FB81AB260036686DA5605B793D8724D6A02B28C7D5A7C4E20B481DFBA3635138E18B7F73EF5C103A6AB2D4B6109E23830B8768E89A2C62420A482FD8227C42500907CCCA558706A68F524BEA5298FB4F0C90536591D0F27A17EA6B50ACACE8B41D7A425F0EF4C092D9F5655EACDE18A732EEFF4043E7C9BC9066846A685F9F7131E791660F765D5ECCF1669D818519D9BE61001E8DD79E259DDCB18FAE793E19F630883483C8AC001FCF365CB021C33F2B951A80FB31DEEBBD4114E26A2279A5AD877C64E5F15EF63CDFB04992DD2CAF50EE6B02F3D454EB7450861E0A3B97C8EF7E3FAD43936DC439AFC7CC9965C5B418D7EBC99499B7FFCBCE6BF8CB63CA1D1E5032B6D534C80F533E53606A4BBA693FF8F3767A06ACD1F2DD819FAD93E10640F80C2F74EECCE9AFD46FD7E9FABAA7970352AC8A03941A1C399E1E3877E7ADD9931E90B9713FA9B6B9C9E70A53995164ABB2F756C2325E215B053FD5C3254734508B492CFBD4ECE169F7012694295EBBE7AD1C2F8E1DB6D126B7F29E6170D2015BA2914883563D8C56DFCEB93010853FAF6BC57676708097695127875199906091B7E7FFACC119E722C0D59166299712C9F0D1DD9FE0DD2F8713CB9C9F07E76AF605591CD0FFF174D78AC8A5ADF28147F2A9BE1C593DE5F720AF54A42462E1F29B88C161EA62D055240FCEE5BD457EA9DBD217E9D7E1549FA3863552EF66A54D2C2DA01139CF513D43082FB39B1D201C69AEBC6930DEBBCCDB640693B0298260976B424C7E78E54F16BA7E1672BA9233A1913399EE3B684A49662A505D7073C4D0EF6B8E28862A592D053C30B713A3E4E5221674A3000C6624612F6AEDA0E789D6EF76AA328BEDDCB145869A4C51C93037A5A18ADB72C642382738F100E4C6F4220CD7443E66030EE8FABEF81FC7288375E5552525FE0A7A477A2995C4CFEF5B1467E2CC66C1218F25C7E6D30CBB51ACE1F27ECEF02698228020748A82009FC88912FAB363809370FCE147F07463AD46758751CEA545DF5149892A2E04B5D2A2BDC7AEF1EA50E6CDB4B007991098EB27F23C7AD91C8CD77547F53CE9294C2C0E23F7C14D22757E2C56624EC6CED485DF56DD4C159E0229E3334559521E63D5A60FCFFDE450F2DE3F6C6E0906A0C377893BF4D0F26F4F50BD9D758F1E17D64B65B0D9D5229818ECAABEE7EB48E55B7FDC2812C1214D3C1BEE68710BE733D1C9D02C8753933428ADD967C96022FD7941A5953D99F09889FA7BA472F219806BC3CDF2A4EE0CA5D4E22DF8B483257D82039C8F3328C91374F0E224A11A286A4DAC4442F1D11FBE771E45814950EA2051603E4D62EF0E161B5ABA87FB4AB0C2BBE49EC2BA978B10C5963653176F94C033F806067D1A80C451118CBEAA17573CABD05282242FA6E0461D55CE37418EACA386DAAA46ABF328205B53B943C949819764CDC2A30F9D8E5295BF42A5B3D39F76AD2A05F2BEA0371C371FDDB1DCCF1D0A5089FD271D737EE99BAAF2BFBBDBC90F24EB0201580E0B9937AEB35138BD7D3828FA838F30C4C2B95F336D293C93D1059AD3267C472F8978E127DA18DB5342081B660839915CDFBE3B7D342BA10CA6BD5F1F899361059CE34FBA63CB63E1D47C00680A9B299A302F88FFDCF1669EB0102D67A2801E0AF822B254E4108912536CAA4CE8F2156C231960CA6991FD28FA9143F9FA7E492B4D7B55D8AAF24E278C7CD514A84C4FC7DEC21ADBFE7C8D4829FC456316040E375ACFFCBDE93D583275DCAD02DE53DFA6D2D8EADC206409B7959F4F084BFE34AF4A1387387E9FBE74B80FAF28EFA0FD184018A9DF17F76B17F7C35917B0189D477D4BD0C0225820A80B65A4E90FB078D51D5DC83D729B355F10212214E9D237925095EEAD035FD253C85B0FC6A5A66394599BD80874548214B93F47D976866FC06CEBEEEF225A21DFBD516B87C94CE7DCB1792299F4583A113FF80D77E5040CE42BA4F92DA51650F37BA8C20E2B7E87D27F2C1E015A984FEDAB5AE2BDD987FB4944E7570D24C674B8C657B1C788A1EC275C6355453ACDF03593DC169BFB2E71AD5C9EC44ACF25A660C8CED30A1856D92D8CFAA59E153B70C93DF206439187C01CACEF44F68DD9038D507D4C19E0B8BD0F0F926F668917E3F7CE8654E571A776E478B5B5DEAC866D04C4B9246A7FDD9B64A8195F053FCDBC9F6E32352C27290520EB661C220271CC8152D934CF5DE417C00935EBE1943772A0ABFFF45D75E3BBBD2479538A28C85F006C81D1F965FCB7CD62559101232CDC128FB76E8C02A811860B7C3B1244766698F7F64B22A46405F992E1C4943D191195EF3317DFE1AB9FAB7D484DE10E0CE0380E33C44A40B3E3FD8895DB54FE6BB3474F3A5AA7388E87E55BC68FBF6591E4586D05F7C06345A453117E87CEC8131B33781F24877EB28D3296AE4042ADF20C768FAED7C900EE7B3318FF330F7E0AEE9F5C651961CFA00736110504CCB0731D172024C48D95E3B20943561AD5F61FF0BD6C483429CCA34D23E61637AF5C8510209A54F4CA65866206A4AF779138A1EA87AAFD27A3DD8A6DED12C0AB69357099DED4BC1853D89D8D2AC4EA3F030315E6F8622942FAD436AD01690D074C4ED03D979842E1D6D23374D1F2AEC1DD5FDBE483253AA435914DE139FAF7F73EEC6457CBD412C863DB5FB643F645DCA050680E492899071F85F0724A2FF92383B2E480970F9C224A039FCEB39ABE4FC934BD3D8CA3715E48DEF1B79C9136353E0AC7F3F64B39A5CDE9CF1606A96AEEBC2EAA1FE0278497CFE042E453534623EE6B46BB406EA9CE230DFC8213EE4F6ABACA4F4D20550082C6323319CE41E1CE66880E209C33DA6F74AF5C0F79A9CE10627584E3E8BF6A380DB622AB7D8989C784F0CE5BAEF16F352E6BA75E32D5859017416F11A3EBED55C1D4D726A06DB46F09609C74957966E46F08EE799CF5C373D34BB7F505921E94595A386DE83FD68717E140372F7CC5D0DD0C26FEBAC2580DE5D30908EC7D482C4800C212C81BBB6168EA7D13DB31B6FA2B378108DDA341DE08233AD25A391E31B9DB74021DD5E9346B2B78E9A5F8A0770CC65F117095B233131229D4AA5206A8F97315A88C51B51B2A3D51990D4B2C7AC47D9C6CB8028C6C244F35438AA5AF695B4DCB82062CC34834C484D26C5E55A0354E7ACE2F62D09720BB66AD0A013EA6B43B4E87E9A92118986BD80C1436094BCFCEB8C28AACF77AD804E6EB255050C0C7AA54C569F340136702D2F7604690AD007ABE6F2EDF9C6CDB59D5F0E99472DA8AADCDC62DC4A4AF23562103CE9AEB63B2311D7D4A64DA52228B39A6D82AB115FFB9F1E2E6C7846D0E17180A4B16B991AF7C6B2B1062F632B31726DC1EC178DE4B85640B6E78665A6365B3C4ED0EA0A288D9263E76A1D95BCE5B1780166315D5F061AD81F0AEA4366B455E459CDC9D65287FEEBBBA2E92EE922F8FDF850C35ECA53A43E5445E88A53268ADC2E44CF58DFD1B80802903E6F4756BD411C4692466D194E0E158DA82A2EDD5F10B63844A9B6ABCC8E216063498DF6EDF4302233BD561F4DF65B152B1615DC8F2767AB1BE1FA86BACBD1823F8F175903B9FCDD49486E4EE392036720B52D8CDCD304BA49ADB8A99D63E2BA7FBC36464E5D79D4977E125763F10E278B36FD4030F589D4483987BEF4B501522646DA9332DF914BAB97B17236EAD2950A8A26D448CD9D0C4062911BF272D3A5364259F8DD018D164ED8CEA994F75484C368FDD1D5622F8B3B19D84DF0AB766C9E9CAAA1B38D23FAC86FB08958B5E212EEE8ADAD5509D8839933BD4DCEC92301D6D252239D071A5493746C357448C0D76E4B6171E7525833F42C2BEEB47A3B8B4A3E5C931EE43743EF5F317E32206DA97C5064E690BC8F7D05279F5015CD5E529B514ECFE60D4D0C8C339114ED4FA6EF8E4AF73FB1639EC917149161E3D2639B62CD0EBEE5873EF242777D8D54E9B9147DBA99D4DC4E82DCFB444AC4199D714E4039BF9F1E32D9503A2EBF1547C572C402A3F7DC792D638EA2C12348AEDC488CDE5A0F52521219D8875AF0FD302BBC980E4D740A039F4E0DDA05099F18FF391C66C81F5F2EA1C0E41BBF2A92955828EC2CCC5FA329BB21E4F805F5BD5039E947179B9AB190E96645D6EC62F59E9E8247FAFAE3F3A1D2E5546B628D69CB2D93AEEAD69FD868C44F144768B7EB80618CDEC508757E1C391B9360CFC987592165A921D5A0C0469C05C999C2406FBAE016B51624EE07105557CA494FBA2F724F496BBEC8F94F07F5DA2600070F757A7722DDCB0279156711F3F66B940902E6956F466F99894C9A711C685026611FA70296F4493F520119F37256363AEFE35F0670E429FD973003625E599A30DDFCDC6DA56D8C8CD9F6BA261FF47D845FA8FC077569C9D4AE3286CD5B5E40BEEEB48FC5E1A94ACDD06ECC200B33492A26D3165DF4A1F65F951D09E42529E314A861B6593807E32527298376335A08E6B6483A7FC8206EE98ED0A5705282C25BF26C434DCE68D0AFBC804FD2A07EB72680387FC0FF2778AE9FA0BE1AED51D490303C97F4643197C5D06D81D550239432E8CD90B955AA8ED606247F07F11B91F83B472DC3473AEDEF7E17BF248CA37B317DBA309E680D611E15E90A528AE3DB6194F81A0C39B84D9D150D49507BEC259F87377A790009EA507DD0178A8FFA76BDB028254E3C3F0C6C6C5FD60008687900AEFE5186D0132ECAE825C46A7D5482C6A58493C3234AF4431620D2D4703DFE9196A8C6F0C0CB9946577EF5AB92249A7203174199218E00A7AB0550A7184792B7DBC6C44D7BC6FA7725FE24C42CDA09A2CDDCD7DD7C5256B7AC6B0042BC5E758616531B4F64B43CC890D6CD970B9ADDD369DED6A617C6EED670EB214091918B5D3899F011D3F90514C5BCC7E539DF77E6B8E87E9D44343D7AE4A83E6327BAB14FFDC8D2811099CBD974A0B74DBE1F37D4CB1B47EB55E206F9EC0AF98345395E06BAFED5D9D75A935F999DE0C4444982DB64E59A5214B6DE40D962AEDEFF1A17FD438BEB618E7E9C49A3FF1BD3DF066052125FABA7246E22128421A42F8BCE27A59BF3D12B548A24A992570605E0673FC96249AA57444DB6F1E09565209A640D70D2A6598FB1F70D40DA136A50402E331703F804771DFE528E7628248C392A5C75284DCF9FF15C21496F84C9784EC1434793DF5A8408A729114C5E8403901AA8A47A687272461B53EB419FCD271845B36C2A0281019C034EB9C95B6BB69C7B31C5C2E31ACC41F96AF575486D84BA6728C82A69D68A59CE9F3F8B8B3100263D361D339818B53609E5B986B0B7C00F42CEFF43B9992AE7BAA39F6064D6D3B1291FE5EEBFB0D439209051822DE34B24920435D6E9C12395E0F5F7B48A0AE34F9F16B9A6FB8E300F2BE2ED76ADBFF5FC52E4056ED46F6335E9544FEEF772A071E552EF0BA90C28020BF2D4E95D38311EEC1606EAFB110EFB3AC8DABFC7C04E015F7B6033B21EA65F374E0D9AA40832B0CC4A9C66E63A66CC13D4015FBC48A9687315D0B4FFAD679F5BAA3C107FB82E617BD357965427A859D320DA998321F1E3BB1088410F1F27BD8415EF9CEA54D4F474F924068905103781A4363C676866B5DFB1570A53394C27A497AA0035A4F073B3713F111F882F30C86D0434E9589A0C77DC2D7D9C377FBBD6B8E3EEDF73F18004F22A4CC587382863D4759848C29723538A1278751121D6DF2DF5D228CE4B3E703B7FA7CA8932AAD3493256494AFB2822FD1B4D18B5777CDF3C382DE1D21BFF3FFE6544F1A3E2AAEDCC20733582EACDADE31B1236715F50F1860C0353F596B485AB7EE456E0A93AFDFD9657BAC47526664EC054B3853406EC54C23716A4CF6D0DE8E67212C240C11516B82E357D3955E3E5F167EA6EC64FC62CC33B48322309F7CE702B11C29048F3C550677024EEF383AFCCEEAE9FDD17548BFC6CA5B52ABA815BD386F83CD66874DDF23F7AB20BADD6D444FC7AD72FD47E549446FB51216FF14F21C1ABD11524BD589A251890E1F96E797295C400F597BD394FD20B2AB502BF3AD2E365ABE8076F8B9DC69C9533D52B238BF414031ACDE301B3DAF1F053586A91043CD1D4E10DF44A22FDA25BC93F4C3B631412818E28C43FDE728C4E1E8DDD253AF3C51B07BE7674400028349978A169B858FAB22C03C51D40E3CFFA87AD9E6E957CEF2D09ADD70BB8447EF0068BE7BFDF79A09EB5734CDE92CB9F7ECAF4E4B7728EE5918E2E3AB9DC2F3EE610C142B4861AA351DD15A3750F5D9E67D29919BEFAEA32ED4BD17BD547959A6ED1574FD54A1E5B32C640BB5FB8E03DA8D39DCAB0E914CD857CB299940D991F8EA5302F515851EA40B45DF69709C7112FE067D5D7E4E8B80437786A1BA28E9B982FFAB3B13F25E51F114B92059572C2795B78AEB7CC0D5E976A44213FD0352765C2C0947FEDC4871656EB400EDD33E4F2C8FE566FD6487A13042D13A08E1CA03B95A3DF0371183985B574322A85FF5A9BD1CEA6FE1918664F0761C75EF02141D89E9ED84F1E2DDCA34521B41D53F60008583D3BAB10C04410650150519FBBE68745DB313AF6B8E33DFF477EE810CF2386B03F879916587A92CF33263707A4DE2AAB6F96CB3615C14CA1D02FF45698C3E093699A2F0F857F391D2F04345A7F28332F899B0767F6900314A0D974CAC479B6FAE18D68E1802D2E91A4C47C3C8A82542AB6130741F3560F8E4B2CBE5F97191E568FA74FBC2566821D3D35948A31A5CF0CDD62719C95284B0526D3E9E0D42E3AA20F2BED7BAFF3F9290611D5925C7ADA7291744FE33D0C6D8E67E0F9006ECFD443FACB59FE7F3FC7E37D50446B6474884734AA7F6BB6E34B0ADC6043DA9A53880709BDF6C765CF47E4A8DD4EA8FB8BF458CDFD8A03E0288BE5960B279278A83BE3F02C86F53883138BD3EA6205132A6EAB2495FD10845FA144579923EC518681C491F8B342A24B02C7142AD2EFCC661B15A8134D9C30A363088DB50E8299252A2327E772423B5BBB9056EED34F5C3297C2B592E6203B9175EF497B9EF2177C3C12CECE4358835FD846B3D6D383818884B97F07635F9B3638FE3B01A9F976D7378D932E5C733C815B4002560652C74622AA6C852BDC16212F38F07050198D6FAFB3E7E762FFD42A4D5066ED469824AEA503F81E20C330F7EBE947F46763620BFE21C3329B3122A5652A088DD7A5113A9D4817F885EE7757D019198071EC81777F93AE3A32E9C8EAF9789A797AF8CE62246F7A8C6F49CFE81267A81E2452849455FB9418B427BCA609E4B083F870360E7E392B48E007527400C316C9CA12029B68F5C821907A6FBC18F1D86025796E373EE0CDA71E125296D09368EFA7BDA4AA8BCAF35EA5A342A8C2CC885398A75EADD7B7ECEBED4DB68E7B63BFE0270B5B30CA817BF9AE06F024B4014C17CCC91D7869A044D64323B40E5A0D768E6E31D373DE072BD5FBD3C2DB0988068C62B802A66D95137BF2C8A81383E0D73CA55579B9676D04DCA02F6BCEAC63F82B5FCF5F4C7715C84577C8994CAC8EF7F6D5E26F644F01BBC033AE00DCE04954961F89401E6D543BFC7B1993200E9E80B458B0A1DFED4C3A7805FFF067577F2B2FBD873C99D23335A8EB0827AA110F6F2243BE30FF5D13F6C9E3937809C6590EF119F6CBE864EAE88B47E157F22AAA58AA186FDA7FCC730592EF56A05D14812F05B863566212E8D4238752BB5CF40777C627268AED0C5ABC2100051551001FD20F90690994F2A68C5BED38C9BF01F7FCF230FF9B74BFC9E1078312B5B03D21610E48582D76741B24AE819603C5EB6D9E240E1E61254070AB58EB112CFA79A37C59AB271D26992C18DE03C515F31162331402500221B2C1CBE1F6DC79F60733130246BE726F19DBC000C0704D10A4D6EED0B6ED6BBABB83E3D50B4D196EF195831639EBCEADD1A362A150BEA7440375BE25668BDDDA11303FAA1DECB75566374EB1AB5A78FB5C9DCEB328C67B3360814B0592E9B277EF8F83288C4E08A94457A0F977BF7FB929BAB927EFBCF8C2E86CE5A0D9EFB85DCC1D3226F4B2BD32CDFBE62CCF0FA28E9BA621D9DDAEA8187152BA7855D7369BC2FECBC68E798E9D6676492504305B0148168679436D6F568DD325D4A9B63E7AE148C3066A95284B5E072A7891BD64D33FFCDC3A59E8F589006330887B9838742FEF45CC89B5EEFF755AC0CD3930C9F74C9BD901F851AA2C5D72810998E62C9C10314E05D525A77D14C517DE6C3A1DF93BCF2DB4E41080AD63AA27D78827A8859166B74AB767A752D71F8F4C555D6D1AC83D268CE118AFEE8FA4F315B00F4B1AF8E19BC97B993EDE90D96429F183F975B261532FCD0225FD4310DA96E5167B5510590CF78045DCB845929D3FCFEB2F7ACE5DA85983AA771C7F2081934A658CB4EFD6844B291516487DB8C53281D204A4B399402D798C5FF4CED9E91F07B59A0FC75E523C349F0C89FFD39B28D85C5771C0AAE9EA3AF6CBAECB707C125B0DE1F925B15CE73B1C6555C0A6B50853BA8AC29A9D00DE51CE6E6ED30416F9F7840F2F899C524525189666D51445EFA66415192A766827D728967240C7F74D6E028C9CAFFF88A2EC9365B7143398E11969150E92686BEFE38A37FD9FC1078767FCAE04D46D25455FC64E28D2494E804C761C21E2779FA009B9C870CFC7C03ED468BEE145DAD17D68127BB6C0069F392031D02ADAD767F0324A338C0187CC74DF8FBD6A1E3FE5BE04A80A7796976AB4C64CE60A7D60F0E2C2B3FF831F300A3FD6C68D225896D21FB546B445A5A1C98102717C12ADF38F653F9F5228C594862FFAF47E84B14FD5EEB58DE7BE5130685FF6B6F53A674004B7F24EEE640E2805E9F77A5DA6731CB52C856140A2C93067516F2C7B5684C56D32EF4D120B15355672145D397A1D728AE119785E5C877C1ED8026D8B2F7CB034075B7584758D6A4AD5D152A407922A6941620EF579C222C6CAE960145A8B36D5E62A036B81B08E3C65B6C2477ACCB96B90F0150710FD0492391EF0CCF6158F73B9E2E712AAF6CBD77862B4DFE1E74D5227374D60969D93C5F042D711461072DFB01CD528E9C87A33C2B3524F46624D1EDFFEDFC3B7BA88BA29005CCA5541F53E5E1A2A1D16FB345E10B1A47544DA9D93ADB787EB3B49AF76D05B4CD2F42B3ECE74F6D3BCA88DC560F83DE1CA661FCF5DF8220D553C087D67FCA0417519CAE6357D0C8E86D539B24C1735E72979ACE76B5B819773850E245C79C8D3A98A3B0D98E25D891E00E7B279D9286F890C8E1852C3BF2916AF0F40FF72CDA2C7EFF1B3684421E12D174F799D6C579225A0714665D18154CAA4D64EA4092E28C2EC46A3D31ACE92CE1F5D610B3DBFCD3259F93892742B9C71A5B7971471BA12FC11B95BB9262CFADCE05619A93F8C4A74AB2EC836E0402E970A24AE0DDDFE6FD192432FC0B6090AB3BC05C1153A6094481846084F33C151DB329BFFC8AC8A82D362FCD4047A6CF59090FF62BD6A5018568281353487DE89A3E2E3C489F38D7357E3246CBA6D3E9F5C2F22AF546ABB3AAF794E715A907E7C0FAD2168223B342D9120EE75C74DE1DE6D49E00AE5711FA72AD6236253A1F98556EBE6C72E8FB34723239358612CC52E5C69909D97FE3AFAEC4800C7B1F90D3793696F1C6B93DBC07EB75965DE24584EFDDFC9D23AEB0BE251C42D7D2527E3C51F30EF0B52A5088DDB8FEC42FEAE41AB42F25FAF857B567EEC7EF812D74AAB44D69B3B491369C36CDD4BAD7D72165F39E28F90FDBE733049E4A8885FD482F614CC3096CC82087C29767F52F610CAC7BCBA5C8E767B2278A37FA532098CD502262BD41000DA7CAB05A9F785B4C4B0976EB7957DA63F831437582ABEAD06ED17E55681A9A25754ED94E4DBB1FF03356B90AE24243E86F0F025B0CA06F29D711CD9F2964F075FC63A36A69D0459BC360125FB9E2C4C8B444DED8C5E4EBE8CE63BFF1CCFBA40E3CBC96B907050A1B32D16F63AD34BCA5D98792BCDAEAA5B958E2876709B576D4117EBF7A0F5F99E0039FD42B29D60D6B020EBCAB86B63BA876745F26F29CE355FDBC24246BC7EB8DAB2F7E7F40CD696A5684E26A56D0FE7708BFACAC7DFA3F4C91FF3DB49A784AE4DF5A741D2BB13A61BC69C874A52ACC6122D5B82465BF36D6971929E97B94A4F3D34FE5CE4BC736E34DE744128BE17014152DBA9DA5151D3AA959553F7680B1AA38333627E42E5BE3AFBD846EB794ABC7033E43114A825DEB2D3B0686401DCE7472A402BE07479ABE8EB1CC17C049CCB804D012F243B0578C238A55F9C357ED9428FE60BCFAA939C2DC1A207C227ECD84A079EA220BDEE5488E6A25C6278ECCBC2C027337B9A9DFFC222C6F073B346D1AF3E43394A2F6AD124259CA36025C62F1A4040ED106EF4B73F285B31246B9BC614B9A5FF73F96D39229BDA639D244CAA0E7BE3F99FD36B5659040955762BF95174025F8ABAC72DD4568F5417E77688C6E3564D54C5E3BDBC5F1F2FBA30EB76E24D33500C7BD0BEF17103545AF3066B860E9AF2079EA5E2074403A682A10D667C1E2E8D86018D6FBE99248067A789C6AB280AD89BBE54BC5F83E94943A0FD65EC51A0D7B1F7DA182CF79600FAECCAB04DA8BAE322466E6FA424FFD3D16307CF2E01563FE18B7B4A25D0E0D106B6C8F5F773B958FE6C7199C087886ECD29C032025BAC3DC392A8B9DEDFBF1120985636846EE33D3B8D8CCD281DA1FFCDEA8B6AB1B348C762051B6B4624DE06F14D3F9D8DF03863B3D24AA7F0854B9F1C536BEA8363BA4E3CB9A7A8805C6BF598AA50CB5E5596849BD79A32E9626CE98210DA5F8FD008F36657B8ACB5F0554FEA7300D46BC08BF770FA041F7C5146FC0446472074A4A2AE146A53B0D486E39C0F8F9DE03880BAAE787AD6D41B4DBCAA097929032474DC8E3845C4DE89D67F749EC06EF0D042D559984EF920513EB22D48F559AB8E198BF9264DA3B4A417164C1C7C97B78014F135435162562B2B54C47786E4C8A0B74CE9CD2075AE073B9CE50924ABC96F95FB4C4F610AB4DE056092A0B3B11336E956577C383CD662EF2B8DC2ED91B469DD72C4028B93BA27AA2C49D6AD52CA51B800510C8C511BD4DC39EF61077CA182050353345D348568C0DD14B1BDF2384C646EC15368C86D070C941C5A3F8681216E09976C12E4ED051121F22011F4238EDE409F8A819F843D64C2665226A0845B8C2C47F5765F26DD63D458613EBEE097F68BC65B91D95F95A9A0FC1EBCDF13CED9489DB5389E52E9CB986A40E0371F369FB934CF74C5172D66AB426DF1F9EF54478397A4429706293DD504F927224EF400E77A6ACFAA440670C97A1FEDA7F1160F356364A2DDB454028EA0FB3553181C96707DC75294A1D522F5FE07A2B780F65811F601D136DB64E5F887798378A56983AEBE3291A6F9D01D9B440F922949CF045C971FC4035CC75E837D0539269DDC6048C5EA4C9A59A65DED71842BA274DA75F6C169497A3E9414C8E1745D9FA5A803483D55D0AE51088B5FCD9F9CE8AA81878DDF4AA71648F53A9EFCB31E28D63BA6299E92A0D262B54E5FD317630A9F3D454AC783477D828A96D4354FBE37AD161C95A12C57E898327F7ADC58DB401A5CDD89C03FE8B23EC155DB9FFB61CB13472BEC030F99792EC495F675841BEBCF7AC497451C3A03E8EE8A3317D98FFE4E3C2E63D89640E4D6D9042C78683D3F5CCDA40971FACE982E91D81361AB272D7FA99FFC57DF9E6929035B1FBC12D0118C69629764CE2BCB17A7A95EEE8A6C1D5E9B51E16F2667C7E02AB32C29CA768C782A7DB9E08D0B53D38E82F4DBA634174A8A4AF2CF9C3682778293E3D45EEFCDBADA425280C53BD4D15B3A98CCE68B44B6F28FD920CDD19B212D5CF8D6A059C47631511A5E399E2C020714ED915D12190C5CC7BF2BEE3ADFE5E9A592A50F6EC0F8B6B518495D8DB31086B616DCCA3BDE49A92C82D43F402E4CD6C071315511413422024A1B4EC21908B37BD70CBD13AE1724AE8CBE140C3B1B548C631DC3E8FC9C51F1FF68058994F3A5AE3DFB5353AC292CD41C3AD68BA1C94264117496F0F7E3C0B164AD7766FF1258BDDF54BF2618363E3CAF09E8EA89F737D4970E29C558A948EE9D73E484B5581E5038F6AE00E6AB07A803EDF06452447E26A2C0D1E8E462FB5D4C89E600D8F82CD5EE9EE4BF19B40AB09BAE8EF7FDA20BFF0E00002BFCD302784155351EFCCCB0B4ADBE5347DF862064BD01C03313970D25810B3FAA1E79BBD4B885B95B497F4051320BF7964B0032684A957667E426ECC6F431AFEB0160E2226D37E6DFEAB0EED3EC6BC3EAF85CAE6ACAFC590161668BD0EEEC1BED36349EED7CF45B4FB3F7D7B457E3DA73ABDDF2D500D4400BBDA36D395C41036B8F169E70292746FB0503E14477CA701B013337197A22BB2AD02633C2B9F70E1C184131C8C7A0ED4ED326FCDBE7145EBDBC1D02A259D2EBB25C44C7692708EA6B70A57E059DE8E299F17D821733716C5F424733002DCBD03786BDF0951E8F4B5D7B82DF2C81C052097DA343B0F190AF50D32C7D510C6358305715E1A1D0501F755CBF023235FBEE7832B3CBE1F7B95CCA33CD262DE3A67576014584BA19D8F2CE639BC4B92C5DB69AC83CA0E290AE4332A85C7A308ACD4B1E40F9A0F5FCBB49340A836B4F4EAC2F1E383EB15865208C82F3A461383230E2F684C2861FDE7C48C7457513F8AF7A717CF813E208B9560674374A9C1019A23CBCECD1829BA3C5DDDEADE0AA799D014B1CC81E9A7D7AE4294098732B2E58AA907D7C6EE62534FA8DFAD8E7AF3BCC18F95D1D0C80AF6538D5BC6DC402426F6C585B89747E63483C23AC78549113AC86B28BFCCE0EEFDA11B2D1750399F9F69E132F56ACD815D7418D2179EE5B470B41F51183D898DE291ACCAE5157F84862EA7757220FBEE3261857ACEA9A3B5EBD2A0E84DE7016824A0B4C02BFC5F37BC0AE2DBFC026DC546176BA4FE6F88AFEB9B58035D36F8026ABB4BC1DF982734759010303F7B6079F41AE9D23401336F01417AF3FA85CB89E3ABAA2246AED9794F8739B6A04B77DC4101BE93B253EE091D3E1B83679FF2CBDA58E5CFD393897F389FC608E1ED9EA635F473DB32A5AAB3DD9FB0CE82FC75C8BD2FF0580E05608978E774F3BC4AC90D299DEDEC98817046756311CCC324BBFF84C7E92AE584BF390A4B94E0490784672D58E9CD6F65A0323F86FE0E5B5D3F071B6668FA4D82FF784F018D3BFD6B54C76688020A07431C3D29453F74CBBC7235C6B7F56C5FAA6BCFD48AB928E4E3CBA427F010E1D41940D5E7B35701B15034B928B847BB925D76FB27644B2EC6F69480364EBA9E02D290995EA0BB222D5A40D163266F9E190C47ABFBDD539CE86B16FBB9FE79138DE9794415CF7F302C13B08527EEBA8F16A7C7560E660FFC69B3A82DB5C0CF568C14B498D0390A8343813E56D4D25FE255649E2DA4B250A9B6DD97F13F61D01A19F66F65E793E2258901A9A8AF2390F8953B58E60691756230BF07237D4AF27632154211F84B5BCBAAE768B5B952CEDC906238784928524E0348DC21D081D118504DCDA87B25F66F22B3AB6B21A5B718C025AE54994BAE754B1FA9D6F22080DA5DCBAE289141AFDF33D886CB8967969AFF67592944EEA1EAF5E0F3B3AEBEAAE9184D57F239AAF1A247F96D0D5DB32AA19DF8A69299E302811ABD7D785FED5D6959F6DC2CDDA4D84837B594CA875D18D8A098489D293AE71629F4765664F2C1C27B3C704D8A7796363C206F5E27A76223E70D6DC12BCCC910B04A2169867C4EF34C5FA38C9E3D003C8596C768640BC1A7B1E5082B06835A8A5D77E62F261604B5DAAABF2E57B82F2534CEE89F167E9CEC9783C08695851A7B4466961BDD1DE0F2AFE232DC247FBB0922C9AAF0A754D28B5CFBC28CAAFF6734EA1A15FC5BDEDEB77BA7260592F5B04F51390DCFB449C4AF2FCB4723143BAC69FA4E71D6E0C9C0B1E6C68D71DE55CC6A1FDEC2D9FAC777F992F81704399DF5C4DD5900F0932952A32A0A06F1B8155579BDA07C71AF098BD8B2AFCE4CB0A4FEDE601E71DCE9F6573FB5B46E5A0699BAD8289EED2C90E20CE966289E2C9F79771EBBDF925F9ACA26FC4BCCC867501424ED649EA64606BB1A56683C3A118349B616F420B0A168A1B3B8AD8A7B4ACF3535296BF689BD7266B75E60528B735F7AA6BE9B5345EF3C5445C32AF082345E3ED7625F4D31397DD3C9061EB8EE66456C796DAB35FFA15562FE263729B43916B532654189A01388220D190AB45965B1EF510255B1AFFF5E66BA38196314CA9E40D110FA7363E909629729301AAF33D5C3ECF1991EA476E9E1E8211B965BDD8F3863D1B51DD23C8C7F1AA7E2654A8EE3CE0237802C1174BB19A5C8199BA46BF1DF1478C2135135FEF682142A8AEE1796769DD9E1453BBDDB86652DEA0812BCDA3368C8FFC4FDA139F2CA14EBA54A9374E47A70F60114AE4D0344A468B3D9CA12AA2865643850CA07DBD3D95C6C409ADFB4F35382297AC393B13842216AFD8F8F3E79F7D6CAE4A42DDF605BDC637978B6922391FF2DEEF1E8B719382383E434DA40393179478E62CCB1931BF8EAFB7AB0054CBA1A4B97C2F7751774822077A7CA21D90151762CC3291FBE0CD6B38BF20E19560DB6B1C3FEAB3775D6DA265E327766463EA027B2A01E67F849F9956207AAC213483D9583BA4AD4A063520046B2376B8E82771131BDF8C1F0970A7E08CE5517E0781E96C3482E5301348EB5A0CB53979BB64431C70B01E309DAF768092DEB38ABEF1868E3BE28621BBB287F54175F8EA5C0AAFA63BEDB116FE1CFCFEC9B0C8EE3BEB21E330EEF49C2B8B5EBDE94775DB9E7D1CCE0ACE93F0F566FC3EC8775387DE8FD23D268F768777E5E8ADB43187EE52CB1FB1FC621DDBAA36A1BB6FCD3B378A4F5078FE408691CA1B07212B42B262159A52F65B215832422819E846AEE62848E07107887784F9A8733F0DE44205211A3E8AEFAF212329FC1C83B6C6F2F1BED8AAACC2FE474CBB23D0841E72E3746654B4706205CF628DE1C1A99EB54146D0432BA8FAB9B48956AF6F92374BDC97663CBEEFB05DDA175CEA432E9DA6BF96ADEFC24AF884054E924F0B7A9D4C9693238A32671EADB71881F2C4B3AE17A9991D97889205CC6F21670A27201D8515A5C53D2C6DE9984279BA6ABECC184F5D749774064C6E74BECCE9B35497403B8C295CCD30C2C4A4301D44D9C755928C023EC94545904A98E957FF463FD5E1CF39A4646ADD8E62FFAE42CB52B9C8A3350FC518EC17EB19E994BE0B7BDC01BC8C9DBF9E4767FF5710165EB7756A5AB85B0FA0652010BD251B1F26B10A649547E3A0791B1CECBA55396B7FA87F38F62771289D0825993CEB0234278C9AA461786D6F0FFE8DE91480897B6116C99D93AC4B1B6FB7C7A2382CDB22FC269DF17191FA76AA7FD659B72B1A805F6F144EA7D7EF70478D889A636D7D9AF24F7C9C7435ABC59F17E5593E819B910B875AB66B07A5E15C21CEA36C2DCD2DA783CDB9D1E1240A394F326D8DEA76A8955B410768F40D24EFC09DA5FF357ADFEFB39268DA7810F7CA8DE810B0EEA70C6896DA9CFEDB52034C132A5861F6CB087BF58E0F05FDE3C87823C130170F53CCDFAD6468E8DEDB5C7F3E0A6B603C5D732E65A5E55080982D8BF4475C8DEA15F7305F5746D61B6E78800BBEADF8BC7ED5EF1DF0C44045620B1DA8FC09980A316D2ED2E9FC8E669E83941D13F516DDEDC2607036D67F1596C26EFC084569770A1619A0F79E0E2F81C72B5C62894F8D562BF36D79CD25363F5858A8B037969A2EF232C504EFCF717E35A117C18F518A7B9C4DB89704AB3C954BC1A85D0D512345BCB1CF37341C347DC63B43CD93C9671C915A8D4556F86FAA00B88037070601A885BAE4043244EF8F7177F194A6ABDED178956081545DC3A93DA8D9363B5B377B65E06F0021A2BDB3A9F57F12FF5C37821BDDDD379639184B7D520956BCF3CFE914E0EF26928C45B1553B576B79AC6824496E9E38FB1DE98087629882E15A36C224B6A3F5ED73106613D9057DC775BD8A51ED2EB883CC0C48C77B75694C045370F14DDE683D72E8F157A429D8B654C85F3D9A333D53B1EF97D02342F02BCDCC2B3F3207FB91AF905EE5639451E5F4021C68835275574F769A5C294E0C561018851B73E62E8CE4EDF73C264BD7EB741D211B6DEAA08696DF656736DE60D4585E8504D0ED37C03C50B0FD6FECBC648D7D9624FDD7A628B6459E5482F9A472BD1E4FB8D8CF57C9CF375F5A53943C5CD059C1652C2D633A8E0EC73E5A72E2A5B94D5074DF417DBC2BC2ED0AA8B1D90B1E58C86E6DF728819487476EB8476B0256C4E381B5EE3F031CD5EDBA27BADF9BE6C7074A931C9A6A04513E24FC9F77BCAAAB11E3F5711421D8407879812B9F36910CF192F28EC6B53F9F04FA6164BA8CEDB36F4B3352A64040C77450DC93C80CC372BF69125CD9DAD59959A226F59528D809093B94928829F8095787858C559BC68EB0C5755FA82A7A2B1D5C3C6BF350DDE1E933EC7EC96545655041058578DDC46F48FFAF30D02D763F0B620A196571D9A918B8E5D53A9D22D55F22F4CF25B8C476DB80018045F3B328D0A65700D6F5278EB2A4852CB6E89E56F313D56D77D1C937819AE7A55F80D8A76F0BE449BF99DC1C8ACB1246005DAAF9F24C481C27806F1A41062B7213628817846CECB3299B460546680F353319510D7A19D9C9D89117F5B90515C9B9EE96B77CDAC8F8F37614AA987E0F8C5008D82D2D92C2D952A694D77A616797AFB13ACC6BD45D8EA107F704600F3363D33B85FE4A1E9E1EBC1521B5FF265C4D76C8423D9B14622C73EF22953441A3D9326C80B196F61BAF8F65270C4E127FBE3826A93A6DE5EE1FDC2DD92485C42D727AC50F151AACB52019ADED6AE2E34FC69EA9F931957B48F60C08D7BC4B3E623FA9376016C547E31B5D93B77017C5F2CB46CA8965C5E277B7F5604359B0DD87FF09C99F9EE98B182FD5C4EC7C24997F11C09A9D7785D6E9F2F610F7F8203DB079C7B2EE44BFEBCBEC01CF3DC9E5480E03B11822270A78A69B2F05604AB507638FECCEAC5988170E8BEE58E7A3A1B20C078BDA0C357503208AA74058B4A58E26CBDEF72D8F2D23AF15CBB273DAFB42E017CD708C3B45253C0F1D4483A5EEC876AA77512675F8A7641FA88C8F491D35FFEEEF699DC0DA814B1DA55252F0E095F1CA55B8DD2EB289B4C118709110D5DBD5A054CA92F97AA9B1090A8A5A05308013703A1179B1B42F9C3AAC5BF905DD0493B37908A273D0F4CE28382E8F603FACC837160B73C7D6E8E864CE3CD3AAA4872D070E31F959B0F7844AA5318C6C534DEEB9899BD185A2CC9C5671148D96F90331ECC6A2E01A5935FB2220125F71FE44ABE57CC2603EBFA0CB6F81827AA6F8914B2A51058DE6E6219FDF38642F421BDA3D5136A1663AB8452ADBE71C7583BC5B9D9A726D363F6620B78F1955B9069BD6424396F2B67E1E158294F56D2C425911EF55772BC83ADDDC1A3BF9B29087F75FDD123DA9ADF0CBAC9CCECBC3FB50BC56FD872C189A3800F304E770CC137994D4AEFD526F98BF314079E0E4B25C2DF12ABA4B2ADAF6331F3F7DB96ACF770F38E191EE5419D54A53FD66B9C3A3F0108667615AB33B12DE0E0ABE7C5377285EC1767087D5256982B92E82DB5CD14E05407FB481360BB72E37385DF486C082A0C17CB6AFB2FFA733A75F3D16D3BE4A3CED84B8533DCAC6927511AD7D6AD34155664FD0F56A01012A0897DC00A734F8F4262FFAFC4476F4CC7D3B4D83587CACA9013DFF6212AA681425B6894F16B2FD82CC87B278F56175623BF28D410F9473E5397FF91BD7D653589D809FED55DC429D92C9446B25054BE5E25196944CB898302542C1DA0D1B762979C34E0F7B11DEB40112DB3FEC90D9009B72FD81B830A087E708ACD31D61ADC12DF7C37A971DCA306DDA9C57360A9884C5A23345292296248B30AF71090AC8D2C70B9FCD01D50F7DA685CA11642E54757273778FB31D6F7A4EC8FFAE05AEAF859BEE1DE9348A6D929B158D435265CA77EDA407D86492829A58B43097A542EEF71F946D693270F5F424AFDE64CD2B587DC9CEB1D85C5D367C36F8072D8915CE0AEB32ED15AADA4197CD63D828AC7620D6D63C8C04E8635008203496138C6A718E523C306EBA42551E02DE5753BA05FB5BC3B34A9882003E01BE58CCCA8F3A8E9108C249D024CCB1D154596A481C427118C61F76BBB53ABFA17A2DBCAD345E86B6D17FB6631D0B438F0EA21839FE70A3F3AF5B371C9EE25C3971534682BF750786D9D5DE752D8AD6CB0C0BC75519690A54C6D1C1BA0887F235969BE4337334F31AB3B2BFB8B8BC15F3EBD1471AFB95E2C82ED45F3FAA5F25C7720DE7981E7C12E9D785BDA130CDF40F6924666A844E1DAC3144FFAEDB8B3EC603912C5F54184B5433C183A79884D46F7C51685448A00AFBFA96F63A1868E4EA70D0FD537998EBD229AE68A13F6DCCF6BAE55B612245E673BDA5A6134143A81BAA57D7F17B22A1ED14F3128A245F1A8E8F0E84AD0F6B4B774FD28225A2F8F4F025F109EFE08CF5C993595D81E7E6B1397A714C38E19253DABAA186A3C661E597FC7A632DBFB7B824657F330C20955999C771413E1D7700150F852CAB35E380975E5C57DABCB21118CC609BB07E0E6235ACC6CE87BB1740EDB691D372F8EAF560F79CF16E1297FB0353B3690632A8CCC69C385FE17CBD190878A6C").unwrap(); assert_eq!(sig_act.len(), sig_exp.len()); assert_eq!(sig_act, *sig_exp); let result = pk._test_only_raw_verify(&m, &sig_act).unwrap(); assert!(result, "Signature did not verify!"); } #[test] #[allow(deprecated)] fn vector_slh_dsa_sha2_256s() { use fips205::slh_dsa_sha2_256s::KG; let m = decode("D81C4D8D734FCBFBEADE3D3F8A039FAA2A2C9957E835AD55B22E75BF57BB556AC8").unwrap(); let mut rnd = TestRng::new(); let sk_seed = "7C9935A0B07694AA0C6D10E4DB6B1ADD2FD81A25CCB148032DCD739936737F2D"; let sk_prf = "B505D7CFAD1B497499323C8686325E4792F267AAFA3F87CA60D01CB54F29202A"; let pk_seed = "3E784CCB7EBCDCFD45542B7F6AF778742E0F4479175084AA488B3B74340678AA"; let opt_rand = "EE716762C15E3B72AA7650A63B9A510040B03C0FE70475C0463BBC45A0BA5B79"; rnd.push(&decode(opt_rand).unwrap()); rnd.push(&decode(pk_seed).unwrap()); rnd.push(&decode(sk_prf).unwrap()); rnd.push(&decode(sk_seed).unwrap()); let (pk, sk) = KG::try_keygen_with_rng(&mut rnd).unwrap(); let sig_act = sk._test_only_raw_sign(&mut rnd, &m, true).unwrap(); let sig_exp = decode("4A8AE2C2F3438CEB6209BE57224A493BA5E5F91E5B65EADEEB5A8343306AAF64BEF70BB5FA0DB96AF563A6CBA8A19733F08E16857436C1631033A51CA7E1CA258153F63CDF170F6512804D9D7933C5F65CDBD819D91FEB8FF20B9CBB7104CF86F10075D3A6FA38979AF475B9E7D4062D7B6015D12EA9024946DFCAB5F45CA5425C6931E52816087F9DAECB8747BBD71EA50B436183F51B4BEF8D61437E670E2C10DB8ADAA21B4EB646470C2EE2AAFC91D9D73600B629ECFE3151C841F2A4C194F07C8F1633ED2CC16301F57918F60964E4C9C44684F7732A80E1C6CDECC2833E0B1EA32C98DB6E4CD9BAD3D7A272D227CF1ACB9806E578DFCA10322F5FFF7798350E0EA996E9B96B06F41E217D091A096386D346E8FB334BCC3FB86C0A6B9DDB2E8C7033D87C91BC4A3486463C8BF00A76C6294A1939B44590E7D92997BD8C65199342F1179793696954C09F2BBDB93AA459C5CD6EF6FDAFB21F75232BA337BE5331606DA59FB07449E7D020FFCD0A306A97166332F5ABF6A46E520A88E994FAC603277E84F70F3D5EC20F289B252569271DD7DAEA22C92289E5745F975ADD69091D6B3A7961E3558A444D1B7CBB6D09B8B503762366F08E31DFA89B0406C67D54E352AC70FF0FAE12C74DF42543153E11799D866CC0ECD4B9902B289A544FF3D8D160872835648135FE946D98032CF5F9C60419A6EC4277D4C9C40517C141AE68465BB061F10B68D975CA65B9036A527FD548BDB14D41B4B4804AB82434241E361E0B5D0FB3FBDABB8C241BBA5DCACD0428C745D5A48CE5D4FDBBB24A45D8A48E6F76284A11F0E8B5B4B5491489E4A256BCF43C8F2340FE19C1314209618A5E7A9C63AD0ACEEBFD0F0F6840D2DB2079511850B1D565FF9EA40E055D40D459855F1A98CD28F8C563186AAF00541F8B6302C12772DA4256C08476FC49B2A7796349A21EC6B7EC517169264F7E8F1DD239A472D816D709D06FCB299998282CD1729A4AD652829419BC5FDCC4EA11B3CC049873CDCF7C4AD5C968E68929840E31132E83B6A100E03F0AD4B801A932D1917E5782788661EB365F57AFBD8E922DC31833150E5AC5543F2D4C7CA61B6195A3B91EB9E1BF8326EC345021C1D8C793C90B6888E27F78EE49C89088BC8A4524163AA73E3B34893D2FA9858F0BC72901BD18D261BF24F7E0D5764E42B0B12AC6E03F9C0E0807FC0F3113995DEDDAC083B939E6332A8B9F883976CD21D910CACDA410B18712434DDBC02565FCB782BA466AC49E8F43DE25E7FC5FCBCD3A22CFAFE81E0B340B6A91DDDC5F28A17977FA7F7DB6B9F4654525D8F2613662A6201BE8FE2064675BFE7A7653126832D37568FD8CDCF452BAF2509C38E75DD35C5BC003A8E26760FD07906790DF537A33F703D0FA30D4858E0FCDA1ECA09617A3D5E6980714B33E76989823B5A9C18F3B7DEC87155010394C40EBBD0918AE04DBBF7D1E273EFB536EFDF7F0036E7CB1EC98D8DC712570D1E588CF00FB8FA6985A70A4A9EA1E67B474C0F32C73350BEE497404274D6FD059204669570D50B04562025E841470C796799F9A79AEC181A2CA8E908E70D4FCFE6FAC8456B854B46A1F34A5861DA345E45C50001AE0BC355AB5F675765B587173E3B25CD2CFB93B5311BFE6814C8AFC954ED9A670300ADADEB8F393ADDAB5CAD3480695EC565B78C7C537760FC0AF9E536FAAC1864F095DEBDC840B3BDBD37842A8D4D084B782661AD2B4D2F40B4BE7BF7668149AC2948E0C2BC44D9F037161BB7C78F4CE2193DE336DB4F5282681137E844010ECA592CBEC572FC3D6DE9F2F25E650D51D20EE429B8539384BE17A5240D7D270869247FFB3FAF9DE652161658E94175B4E6B4E07C166265F651975895D70FE7987FE1FEE716A21EF43D87A55764517162A0FB3148B9158E21347FFE925261D9AA534D95E57A8443D9EFCE2085CC85EA433918451661C27201D056D08900662616AFF66AE67A3C95DF871A11BA42706EC4D44649DA25B3CA6E1F872B9CCFE557AE7D16F9A3C70B2512AB8AD41C2116C9008980088D8A5E07639B77FF7882773D08D941364F787EA374388CA8DA6B38BBA5EC15C94B553E5B79FCD67044F29B958DECD54512EE2895BFCE022957F57D3036661916C681B490197889E90E3819928126C37C1269B798E0E12A3F9F55093B2CE1A5F8CFE288A1C70EDDF1DF1DB40F09248881B4D7213A57F14E7435DB29DBC8632AD5FF077F1876BF8BE7FCE94788992CB6BCB86931946330F3274BF8CCF3234C6E158296281C72F3927A3EED59F5A9A64B445E7FEEB7C366780E8D4C97366726C24CB9EE399FED64F8B7571FBE3A50D2E726A99B12986483A452F59FD7FADECFF8F0165F51A5AB7A038095E8CEB0DD0960CFCE2138BAC278DA638F2848A13F11E846C8F03A631F719B4427C271648061398C03E073B30FACC2BDC360D9A9EAB13E583588A6D345EEA7A3CF9A7106F29E1BF376F8157B841AC5667583A2CC0E05F4BCB6730CD5B86C798E32254A3C41C5499BC7B3C3ADCC7E9E0D63D5E5CA559047CCE16B7E3F9FFFFEA0E36E52E7B6851C86D909E5DC6B90642038E32FFD6B285F79BCB7F7F294421C075E50ACAB3E81D21193FD374156644B4D7E338B127139BBE5181908BD25D5DF27CD92C810B1B0B733F0C68F40AD3C8C8A78748E01E67D7907091850CACC0EFEC04DE4E8EDA9ADD96714D4E150D827EF383DF1EFD1ABCA432F94A1AC4295531AC6A12239690488F3C28B8CB813F0C2D8614D4C6CFED11DE934999EE572BDA029E7AAB10AE33AECBBB89E3C4147567FDD730D93DE833825C18FD3730218980553C9A9F255E6CB394197297D7DFDEB19E688FAC821F76A53C9BF68CC523AC8A047D5E8F2659D534AD44D63928FAF5AA11653845C4009FD9391858060369DB0929C1A0076A013496E212C2774A97D88EBEA0BEB6CCBA5A2E46AC286A1461E4C4682D39C74695E8763AA1025B3B4DAFDADBFBCC45B4BA76886B0123B1F7F07525E07663DE782284B4C5CC5B9830F2E1964143DE086AFC3484B44F38523AB88AA40485C9E6FAFCD383FA0012F669653FFBE6CB5168075B2FEF9C55167DF2BA1205AC0C7C620D4B51FA5AE101C08A60BB7734D6C44F9B35CE160C560BA2D147B53E328355F01BDC92D184BEB550DA50CA489D740AB32AC2218DBC0F0071393E849076CF43BFE7BD4F003E8AB504B581CE5459AE5C9AD7A802271CDCCE5583B0603BBDE8A6266DA9BF8A9B7FBB82BBA109A80CF6383CF071A2E0A32BF2B06F04ADBCBA1DC62F392187B1167A84A023AB76DE6A696E603A4B08CF7BC283FC28D5BB78C91EEF15F49940E29368507184EF994096946562ECBD7295F1B9C4D2B723BEB44BE099C239A7A791D674D745CFC2032A717F2F8702B9F5673FF481EE41137CA01D0A65CA3FCD99BD92398299BA8C92A98EFAFA7069F5039A04B35DE42AF0F32FFE43A3A0CD3D381F0B20125E91A25C7F4880FFF4DA0D7050CC7E51C96E2E1D11AC87A0F853FCF4489B2B8FD8B6230DFE1A6BD88B19CA290A1CAD0B5CBA43B96BBE879A8698DCB8206A60EA2569FD0281982FA7112EDF88D4F915B6CF8612BB06088D97A86C140A6F0BF47F48B963779D157FE0A1C39F5E0B89403E578C222867173B9577418EAE0800B28C4083F6E43C31CF51E7DE3B5707E3E693FDE59B98A9D12523F8EDDD096BEF6FB6F8A4C0218EC3E1758FA5D02710865E921E898555B272E4EDC4B7586A5E46A98D3871DB5959DC7E11E353E3926B9AC2E398008930EE6FA0B175E2B5838D067D954DD0E5DBB03D01F5D14B21DC3ED1AD5AEF1421942D17BFE53E032BF237557A59B97D0D3AB68A87E26655D81F5D218B42AEC6F0D35FAD2B96381348AC8083E8E95C87F1F383C0C17F9761725C0E406D72B9B6385DC53DFB7B0384FCEF185D462D4FEC54045FFDB6095650E690498946DD8FDAB23B96B17D1D34C0F5913C6D70A1811AEBA32645A397FFE9C64E184EBE8E8308563E9F76A3302A84A1486452EF7BB3B49519142CE5C7D5B4532BFD0CE329805F498E96C0306FC69B19C3BC750040E84F664FCB010342D467A2ADC70EB53483242C20A59BC3E99EF50798783BF26D801A0E09EF58B5B2119DF550B360F87A823333B21E584EFAD42667D9D3A37229731EBEC724DBDFE96D3A8DA5EE22786130B5464502EA1A63BBED268EDA859611024E0E884861EB4A9FE6EB62E627083E7F8A1BC9B08D182E35205D0C298FEE91067CD706DF3CA9AA1170B681A110523E2877E7EB3997BD997FDDFBDF27BE542809EDC5EAFD4EE529F424FE6926A7A2426EEC5874DABF45F69EA8C41731779558F7D296D7AA937FB62BB50D5D86A3DD8F7EF52966AC5AED6E4EE9D0CBA90435F2FEAEF6932FA56A62F51BD9E18AD5B1C291B045E401D1CD41AA34A4EF91E56D4E59F0EEF07DBD0F984BDCCB60CAA6F4E1632D4AEE779DB00AF4F0928D995C9924D39F7B1DDF0358C8F9959F65E58EF3041C78B2679BDEC8C86FB2A39C2CA89FAEF8D58CFC48FF5112C38DEAF95D1CA0FE29A117D315B6077E1699B622207DB2F4DC9FBD845EA0572DF6596447C374977CFBF69BEC4B9A41217F296E1528F4341435E1283B3144CE4F5E993CBEBAAB414F257421DE126505D54E357CA79D52F42D20519233630D427D0741C8867B64FCE4C53D03D6C95397DCD2EECDC54C071A9C7CBFDC2C4F59EC6E13A92732E17402C0C9917247FF802F340445E24B734E5765C810E74DB5CD7808C9D06F99FB5EB679290A317F163FC76AA9ED9DB4BD4A9CEB83CD147FEE6AF003603C4274EFBE032AAF6098D166C02268283319F8BA222DD4324A02F7013059165508EA6B4F40455A41E457E30E8015D5DB139792073F6B205C29E56E00A88DEA20BA6DCED2F2050DBC8F1C36E933901A0F44842860B7E2E5B4B1DAD097CBE0A44D332A1B2CE0763E535B41F421AB1CB848B8165A077CC2026DFCF54C707DB7D0B9CC8A56C52B684527DD3D75906819BC727D90AB7E3F1670D7AA76A7A3841D77834B7C0B3A60C7BDD98908264C75CEFA1409FC06E69FF72D59BB2CFC32CCE76465BFCB770BA6E4479D30D39173824FFB0ADD66AA9D021472D856E238749D3BEF07872EB3A8EF2D4B06B3CA4FB08919F47DDCE19A7BFF5AA65ED1F5E592B523D912EBE98105D663DEFFDE85BBD61397F113EA8A9D778A66DFC34D355153782BCA2078B9860D58CA05183F3FFAF58DE08767FA17E885372436A702218801DAD81E101FD06E3225BBAEFA31363F23B4F790A6233F6D9530A3C9FA5025461D6E896530BDA2F42D13894C3048E8E3876321D36A27729B37AE81CEAD38F21A4DAE1599F016966C542AA3270BE021D94C8F8B407B7A87D1766A8A8A1F0DAB99456412E1EDD5ADE8D87919B2702F649951873384F12F1CD6ADBD8A529FB0160C86B9404D926FF0DF0695661D61608A69741D85E042AB4EDE60875FB7BABA3099577A9492EA09CC495D608151861B4FCEFCA6AE45F05A177F5FD4092FEF44532D86C3F3640813DCCE3BBDF97D138AD189DAC3C0537376D29B102233C6B49E6F32F436FABD8F22611573D2A94F2C7D100F758E3D8E72D3E8D5753AEA660D2C7988400E900791B1D9409382578970FE14DD54DF83F8C070462A5B00BFC8D13E3A6355190E96A509CF98609CCF9A7BF5860CA7525D6194726E82A030DC9870E56250C1516D99EF3D1E320FD422E76C296D5E83C439ADA12FF7316DDF16F3FA089F1CB296C21D7319F051E469604C5FD18C65755007949BFF271C6507F56BFC9E9CC08B297D19064399E3902B4937F70A0FFDF76D530B513598618F7730E4157226F4A6407067CE7773D18C595E14C2043E420002C3B15233010B2263C8F0DFB593AFCA67870567FD1A016A1C7B2FA1FC6D3B6409430C3B2E634901C3AB6FDDD88530F5D047AAA2F3430843D90988D31066DFCF5625C4902BC9C4A5CEF4FB37BDA34D6EFF405B7051DB701B1E4404D6032B18BCD70D40BC1A538E5C47D1626B0F46C0A795928F3DF7D50398E1E1E0478BC010E253753180D4BB1C557216D1DC938803B61BB7863CF123F2EC487618961A748D1728E400EF6644878E7A0D1C706A3D02C1397E859FA460C4395E20A8E9FF18E7725D85BE9099805745DEACF7B6C89570E7FBD7142D782239B0DF55B628B0214C9723C865D0BADEB0623B12D26800F92778EBB769738BBD340097031748472042B54A7AE1BEB152DFA8AC0E745B641B7CA9D87217A32D8AFDA61C905EF4810AF44FEE1937C89CE686554CED7E30F6B55FB95F115CD59E9564A894CBA10F0A5933AAFD4B8C84B2990EB09820D5D4610285CCB1406761FBC9EF4042DA4C28A8A7DEAC97922345E4DDE7386FA83DF8EB4557A1FC23C3910B648766133FC4CF76E78E7675362A0D73E6CC83275EE982164DE2A67FEC5A80AFC5B7F1FA2DAD30EB84DD4C16E2FEB3E615B385F9B008E99477CF383C6D8F661C8A7E01E6EA0F5FF9025F360D46B5A9263975969231AC733B2330D88BFC52FF21A063BED3903D01F2B7502694B1FE0D75A1062A699C7E587424A745C29B90BCBFA8ABF9FF643FFA4E020AED1BD3110DC505CFED3ED66DED33EB5C571EA2D0B8F56D2D208C5192B77973FB821804AE28FDFBE7CF58AE0B6B082798B29FBF1A3A30927E4347B75B94012D97273F402B913015830A673DD7DA7CD93000568192B0EE2B6A8C542E0A4EDF781711717311A1BB4C98893605D42D0D72EDA1B7CFE8D4E6DF012D57C0250FEDBF4BE0E6DCB67B21F59D6A02CBC0E6608D3E3FB5E1F9DB52088A790028C2480D9AB86BB724684AFEF164BCDA45D34B125081C0D3D577AB59DE32E1C092B443142C04015255F91E14293F31F6FA4D578B9C3733F3BE36D6322847DF8907B091BD969AC2FA97CCE9F025031322B82DCBB2F7DB14266823A7157A930866907D74BB0C93C2E07455B8631C99036A517F32BF0BA2FEF5404B37CA3FFFF01D4E4A411B595EA246A4703F88241E2EDD333428DF307AAD6C13C68CCF6F6D20D1B263D825D9DB34CA7A68D7A12590E76CA2F10E28F76D31CF3C036E7F1B4584338121434CFCE0B3030BDF527DBF6BBC47AA7DDE3532AA3D9625395F4E3A01327532D97E6C242B5FA8985E01384518C43B08CD70EE90AC0AEEF8E9AB3325B79DA8340006E65A8D201B0A3A79A7D6D5D237E7B49F73D932D182EA12FEDABA6939C23A295150E0AB88653CD2650440495B994AB08C79FE06DF9ED220C99C177BD9557A9F520A0BB6EE8234DC645BB08F4BD31381A056B202F1D747522FC4AF64B3CD38F1857536A0F62BED2E0FCA25A5C26526E99944C652C43E8C9223D6C69D9FF5E8ABDA3F28474A5C1124A3342105394F27A0F8392E4E567661005475483ED609E7D225FE7F5DC1AEC8F8B016EEC730417FAB3EA45DA20F2944BEFACF2FC5295F33EF707A7779BD8DE21C77935F8DB6361F1BC5E51AD22FCA0A7B5E8A2F359E5A4760271041C2F0001D924EBCB60558BB1B5854BB261A426FF3A3647334E531D211A42FF6C1A5812FE091721B72D9C60B80029902D49BA2F253E38F66D3ECF9163EA52C0D2B7D6D7ECAE596A36BC7FC664DE36E4A1E73DD96B367D21718F361A4F909EC08E3B46AC69B360CE606F03B04FF3389CF3AEB661945F3D71657ABF4529C950B6F5598B11D6B4D56B353E54D0D09128B28F0C14BEBF3A26DA9D1C1CB3CF10573384098AA100F6847B37172FF707D598F8964C6B4DB554493EEE7DF3B69C95565B887C730830D0E10595ED1A7FE6F712B6F366E773C2E0BBE68513217C1B80D5B85044D3E966E8B8AE84A94C3A228ED5A3FD0BF56D301850A8FC4AB1C22DC354DF3F5C86124045ECC32676F65F5277D924763DECEDB6652C41B5FAACDEF131AFC011EAB489D50299CA9E2F4C6E4670A1616D0DE1EACBFE341866F47DED9D8509C49EFD6B80E624536BE1AF2B4CDBC96235BF0512D12746414056A98990F220F37E184B691898185AF73866E23607C64CF4F18E0C6F9B58D62ECA9FB8EBF83128C5E1DE89776197F5459E338069CABE46C2548752F20FFDD51842FE6E17922AFB15257C8930F0171FD6FB6343593ACC3F0971EE89BC59172CF2EF3C4E0BAB1FA8264C639600AEC6B12CBAA1DD69BD9EB02A926FAEE0E8412AB950A3AAD46F9116BDCA344EB7E19512865F9D372AA8FC390872346A2270E6A5C2D8F259F3DF902C0363FA57910843525FAF4588752E4B1E1365CD7A7D0F20C703F67AABA3690828DD0887344DB8381649B4CB9335261EA8F4777D4BD975AFF88F5180B8C8906DBE3D1B88F674ED385520AACD6B80304365D007B909DEA5E14CB964404B4B7F0710924F1FD93CBDAB28017829FFBCB7453C56224852422695F57395C86178837FF4EDE7EA6CB8F8D08EBE00198ABEDCC5AC394E5AA913F3CC8C4A2E40349B739A846C1C217EB4A9F0B468D7DFEC6F69689AEC7259FDD3C0BD113439A562A61AF96328614BD6AE0F6C339AD6E307444594CA848FAD72FFF7AE8EB9FA45A5FAC8FFB474C2DD4507394C16F74C838CDC6DE021FBA09AFE6931EC46A2F55CD79178E2192F5642A24DF32ED3B694D96D23A2CBDF5948660E6C9408AC726BA135BFAB41BA85F28882588833F7003624B113C4D1011FA28072148CD282B4912194B77C2C9EF1BD701576F854C5CC363ACB87B3D06DBB3E6D9F1A4EC8C7B0D3C3E1EA778E297FE3F2DB90FD670AB6112A885AD5EA5663D3EDDC4243567DA1DDE8A446804A3D88709F266B24ABD6F6BAB7BF9ECE332C5F2EE7B9EBA9E31517459C6A0C3362BECFB7198CDC64E28C2433458B9F8DD68C21EFD588E2D53030BE3ADB3802F4239BF5E7F59E34D14359BBE032A5E323AC3C9AA80A80F6F9D6941AFE301294CB280E47FAFA6F9A30D0923D009E7FFF774BB759BEB84D22B7D7A69AAC4166AE30CDFF4CD0178228A0E6D4C505E2E012C7FA5503306BBE960DB828CB0645F4ADCF7DE035F1CA749B6BA5DE41F5D1368A67CEC7CA766837CB59E5BB62A53F2224E9B1067E0E73686CA5A66CAAE7985E3395711D765CED7A0FE388C4B6301C1DDB2F129957E1782D6EB095C4C2CAB31B7F5E1A5AD21643A6BB239E075A1D148755AAACE904911F8A5038C45177154BAFD935862B878FCDD696031C0A63D6C9957291024214343430611058EE03959942FF53AEC9D5BBA186D331EC68AF90C34A70D0718CF6132A7C6E1820477DC6C051C1C0A2EEBC931F09D2F7AADF1E3392B5E29C02527C0CCAEB25A263F77928C44EE42206A02CA1859115EEE65DD4FA413181953017677389D7564F70CB840D37F37E939531A0EBB86FB5EA51111BDEAC25A3B0D57028BB8C9181580159BAD06925F67E107F5A341CF2C33122153E6B6BAC5B56A910B3FBBC544F5ED18AED5CA8D9FD17BD3C96BA9673861C01FAC5F5BD5F21CAA099A63064B081687CF2554C09A40DD0639B9671F2F93398C7E3352A545E5E623327E3018DBA21EE538C15652A7245AC8538190E6F30D9F4383404D03BA209633606F417DD1FD68F73E014F705AD198D85EEE1E1C14A94B07B5964EE022A560022A6282A1A598E3297C604FEFE28B106B0BCB855DDC80A234D37FCF5B095C66186B74B010901069BDB7B67D64A99B09C7B5D998AD8326F423CAF045B0FEADF3E9096106CD65C5007472CFC4654184834C2A643336F28DF16951FC1B31D4CE16419B9CE3C335ECF972CA50BC9F42688CC943738C1635A588CBD5EAFBEE740ED3F9299A525D56DD7B5E519FABF6A23D8CF42337EDBA0E1FC7B558621487CC6F20E34AA86D4B13A694A25C18111300C8CB70921D680DDB55B0ABCE5E2815F83ACD82A7E07D261ADDE6DBB5E83592076E1A30F4470EDC00875008BC9B018012113B6D9F9BAC04CF7BDB5500B9BD7226345C88991DCE2C64A6777D3A798E31F6C9CBA9F33F899B1151CA4215C8B6E6F0F29DD5C3A4A88425F0BB32CA5A6F2581D53B6E26DAD00102EBFCCB491829E0692537FAB64B03103D30AEA79AB827F943F5D4DDB506BF9616A61815E3513DD7C91FAABC8C802AB11BFEB4F471A480DBB5ED0AFCAC0DCD414D030CE7ABD2A86DC9B67C174863D768574F3D4BCF12BA7AECA1E0407B14CEDF14508B069E77ACC3ABD17458C3BE1CB3666A01F9E2A3F441DA3B1C310EFD775D5F904124D2B6FD103832408CCF453BF880A3EF9A7DB8216A177F0D23752BB55E2207BD37912156DFBFF524D39BEB11680F319130A6E75153250104CADF6F77D1CA47B05AFF12094C70D8BC7236EE3A6A90BC0CF33A2AFA436721E7285A2E19E34B3E85334F667476E1A91CD6160D3060703D05656A9A55F2860FA2E51968AA8CF354933677A22ACAEC8C98E5292A1621D7DD475B5CF939730159E79783610E6FF9596CB9AAA9A47840FDDFBCBBF9E20618245F1511E3640F39267CF94A0BAE78C4892A66892251FBA30A0C9F3DC5C1DB3196DCBDE4085455F564272EBCA814CA5480FE439C4548EDD9B970D27E5CA39E4118BD098FF31B046B543A193595F509F11BEAC2D1EFBFB77FB1DDC087AFBA1F8F81D0B57DE8E08FE827F2E91DA94744D2EF95D0F2767B1B03D8A27B9AA94CA2F13A7AB9310A94293AB33C5C78BA4A42C1937DFD796E1C2B5EFFAB44907C9F53AC5E6CC91708F5A5E9A1194DE0202D7B44A92B2D2C16F5D174F9CA7952B2C4A0DBD92E45CCF19F1B663EB2DB2EA5FDC76CF429731F8B052D2091B022222269D3345BCEEE0A9F16148DDACAA81B478C33BC65EAEFCE9BBC4FB0790C0F480FEE841A72BD453C1E45D1F1FCEFDA5A4DD0AB379CBA22E4147561E4EA7B5A6EB9D19C2AF0EDE25B9A22755845D2C77E78A871A446A7B5E876D2EFC4366E2166FDC9E663C95CEEDC7A4FE4ACEA10E2B354893E8C3EDEFF841DE3374E452AC29C504BFDB98C38F4DBB0B3C71326A985090F4195EAF60F0A19E13FFD2A0D7E28001BC505184AEA22D48AD84E6DD0DE7A42D39305CC2F11E415AF2F04B8D22FEB863619192FF0C83783ACAF5763651516F060C87C47BDB94C7B6EFE6222024C8A0D59A86F94B5AB833C1B81579D83CFEAE326E5C772259416E2C0B249ECA27AE0B46B33BCAF8975A94CE17E8EAB7FAC2117F175467BBA019500BB6390323695619386D4C8551E070CD7096CF873BCDAEDEB398D274FDC09BF61A407B550951B470532D9E0C980DBEF0CAF0D90EBD6CD97B1E1B4BCA5CA2840339A224DC473660FCB1D6F0F181C92A85EC50374B546A5025197E48AB1A08B7D7992CAC2A256F16581AE9542847CBDE16BA1CC99F577F3A304F6C8535197E132B38BEE30957FE584B1CFBA070BD6DF69A20D3EF8E780E93F861F497021253345D0DC20760A13D3FC3D78C6A5092DB1A60518625E6D5BD73698CA9018B5E778DA841702FEDBD9FA35C2FFBFEE3CF000BCE1552EB54A1C99A2263251A5959B7A24868DEE89D56210D8334BED5895B3C3C1759D272AC3D2F409DC40C1459C83F382C545393B58B709BB4C9FEE7E42C6248A6FB5DAB4AB166F0DDA74ECD5000BF8C231F2E8534A298D93F3A27DE38463779C10D3371A472460764B62BFDB6E949BC3CFD3D90DE19FD7705C4BA07806AC046DAB3FF2BF3D7F361D6BF848EA5CDCBE236D406D4F264FC0A10CF1421269C41CEEA0D0481EAC46AB4372399B900D5999DE8958A43659F4FB8D70942B1A8ADB9E31B8B54C66F1AE2A7F0EAE5C2E01D6D3654BCD5DA1022DCD59E737F374A9F486576CAD69A021AD598A96185EE7C21631219898353A43B3A20AFC7131FCDA045CCB5140C56AED7755818D8BABA8FAC042BD71572774B527410410C559ADF14E56EDB0CE79B9312EE458D637507B5267E013077845AB4E2A05E5DE7D08F06971144BBDF0D2F3BCE48CA97AE6EB3689AC28E5FA6981681C36BE04417CD7D931A4A02DC951A98F5E4459D929EE774C9DABC647D663BFE186147D2A8733AD4BE2F201AB93123677D733BB2657771117FA251726C69060B84F94BBCF7C1162A74731E32904A81CCDBAA70E83BB89FC6E64D203ECB47B4F024C0FAB0ADF0620D041B527EBFF68C31ADFDD72DE4B1D6926F9DA09AB0D2B07DCC70C655183A82E0AB4129A5BFFD2E804CA5A3D6EEC4520123494447E748F5E1F05E4BB8E91D5D25D45D8F137DABA996FF273CF04172E71DC0EF7521AC38E1E2DDFC0995BD46BAF7FAF647A9AFDFF75CDC25F483151163B50443495865A0B151C1E8C65FA5122A208947777EC5EBBA5C5C2F8738A9D1A58E0753C5F2452DF6E82DD584CC100C88AA07657703500DC555D20A60458A264DB1F2D9268FF690DEDB0EECAACA1C09E8D4829AB9753FA878CDB4DD55E1EF03FBC2844F18B5204125F7A9D7E1B421DB9983EF18260B0EE20AFEAF39BD7C4BC937EFD8437BD4E1E67D1D076DB0831A1128BA11062464B1EB94C491472231CE838F2EFEF2FF867D4B5361AB9BAE9632B22EA90CC03ED3189FF7B801FE2FC7136E2F80903EC0F3F16996BC0D16708BE2059F8037BA7B6F3635ECFB0975C8B94E9D4B69895B88E80B2456A8508ECEB35494349A0C3F9E4EFD5EF55A60ECB6A635EA867F89DC55506B76A6269B2F51B6FFF0CC382A95D191BCF1DFD16064D9120D94D2E20E2844C71FFC4C4E59EC61F0BBCE8C9DDDC76310080C33318B478856DFEEC019F77B5AC7A512111E74369B15C98672868390AB9832B2C4DB6FE02D4E85AC0287A63282A6683DC5179D1FCE7A8B6C2B883A605F8B308AC8C0806245A5E1E195D6591AD2C8A9C4A35E32E63207103D3DAF7CAD8CAA29BCAD7E6AAF91F676C9453DF62DC064931F23D282B91630E144D288F5A760E7B71F769C07CD4DA6F71F21DC21C5650DA9868BEA4F888741D7FF88293109481F7AD1D9948E60124937E7DE601F5412F587A9A5DAD2C113E64DD6B1DE5E0A98B84147F515C12C99C66720C509E9FB567F90603DBCA03C82B87423C4E7518883056A66DB26EF145D1B28D825292C2F7FFC1F232A966A56A89B43BFC38BCACAFEA1D8399CBC0D8C880DC8CF1D71EE4327913DA7A4FA238E9D88B8F2023DCFE1551B867931A813BD4F700857324B6584B92525F25F74A4E43B0283D8BF04A5D3A2F24E3586D108AD9FAC39FC3149175BF1A71294EAD43F1A86463BA9CC3220788A1AD321503BA8520D1B833B363C325B3FF151C771B4FB8A1086D0FB4C71B4C9AAF5C5BB5BDAE532D1FDD524F4073973E1060B6054912FA22BFDCAD11723709BCCBF4024EA5C30E65DF071079F01151E174CF60519E7382D1E6FAB9A179D2D0777FAF2207F4B447FE9150059C2BFF63D718A08BBF8C8060DAFC50B71A91372DA494A68E9B86C69F35C594EEDC9E063DC8D534C6FA5EBF950531D0A018A761E538D432050A3819806C0E018A26627D2517C48FE11505463CB85607D144DB8C28ED1FC4B44CE87FB0B9CEF6892F364D6B5162EDE5D762E0DCDF8D7C29BC1B02E42D627CF8BA1E6DEE80D655384AD0841CD2DF344EAB2AB9F95E74BB6CECC039EC117520DDFBBE47399301DFD45F3B9F9DCF64C2D7FEE27D2461B53C20897AAE9ED364B4C8CC39E67048B159EF4A088EA6BA74457D3878D383822EECE924D29785DE5040E52EAEEB3AAA8FE880F8F89C53847625CC9C059E90C8CDE5706EB7F181D3DA0A81003E727BB8F7B0FEDE9CD1043F6891E795DD8DC6574E53A1BF0BF5B4A5CBAF0AA674586956837EEA9AF17E3747D0A2B873EBB11A0B8CD58C5F0695380CEFD87C032964DAE90578ED4661DC89E99CC2AB0F0CBA52C95F67B16894DE2AFD34E652B159963C1B01F437233A6CBC0A3CD2EBC68EA97CF0A2F8FFCFFB64EA2F0AF4944CCEB8AC3D90E58A32A5449D48F6DC7BED5A212CC0E7CEC4BE9B4F527176B12EFFA249E2AC19ED843301B2569AAA4BE9CBBDBB85B5F48C46D0048A51F6ED8A22778D80C8438C36341A97676DFBC8FCAEA4A62755543C417CDDF37365F4801CB053F17E0D4F75E841FCB2EF84B8925D1BAEE1E3E74E97210B203D96981BFDAF95476981A40E77B00D69587A2F3656108146BD92058B865F7D140FEE18541623288DAD66B4BAFB3B3256DC951661EB57150BFC01E61319F2DC04B025D5AD99908B2985EABB9ABC17405EF507E9416DF6EFD35702B7FBF244D38F2DEF2EE968148746B39172F3132E7311CAD2D72E192CD582EF190BBB34EFF731FDD1BA9D19FB9B80F97CBCC6175E9990E6814E0C09A85C414D568C28421326B66E41DAE8694F48607BC6AE1B57F20B699678B34DFEEB3933AD2D670A3A42F6572DB7662004A7E7F870C20443008129DA711420C7BE3A1170D7C557A6BEDC22A2EDC8482C332D37C9BD675855DBF9E89371BA2E20CF1A7616B3E697AA1D9D79978269C6391C38ABBC33A3CB18AD4B3883DA3A6966D49849B609150D3DD7DD3AA9554D82BBA9C822B459DA3D5118B97D16B23314B4F2052800214CDDB4C8BD25AC796634E0FC7A8890A0990E21230793CA97FBA183C77043CFB634F495CDA150FFE8CD6B8A84139747DFAC5CBD0CC3DE9CAC3D774B29CF681AC5496EB05DEDE5855A9BB0C0474FFF9FA4CE2DE2FFC23040AE45F050AD4439E7F22AB788F5DFE6877AD09E7922870F71966C252F992E9BAC342419F39A9BD38B0F2F0F9B8727BA604E571F6B0967289CD7261E14D530DFFE1A5C286F043DCEA74655D836E2D49B96AE9B6F37910F5E11D02F3EEEFF747BD20BF36C28702C1926BF13F3CE9F02E2DBA0591B373E3573E1D2354A84FCDE805A347FA82EEA69E7746941726E4AB017F8C655B0B28AEF41336BB644352E9DE6321442D1028305F53D871883A019E29D33FE1558E709884ED6B0913368E4394FAAB7109F79921A9598BF048B32A244D02B35908B849D1D6923A04951302866AA6EBD57F8A4CCFA04CF5E24872B1A185456A2929A932F9552DFCB1246459AB2A0C05D76848E0968761AEBD06270A1828BB1E12EBE2C61552F86A897A832082066691BFD8755899ECAB2C60C9C4834E43AC8B99E4E45BEE9C05FE5AD46F106DFFA12277940AA6F0C062D31B2BE51DAC9CA1973C6A1447B9C5911817A2AD999D76A7FFAE69E21D4DCCD03DE41039FD9EC48E68F426C3FE007DFEF33B8A7C2D5A526ABD466FADA4A84A2712658453FEDBF8305633DD2138DF4D9950F00D684B709F63B4E42608530C483F63173B657058E6C944A00E62EB108D67C903DEDAB75706D007E2C93253E8891BBD8DF8454EB74D243F0E86245E5E8F50229FB7F75F869C04D70C68A64F713DC6D435266692E4E0316F2453205C10A24AC3F7C099463AB80F74E6696F81CFAF04B3E62C3BCB133E545FCD499073D7C98E7BBA2139158C8D478CBCAEB22434E6D25D8A90D47F2ECA34EFBB89296AF58A446A087EF7CAE1E320CA3B8256C47B4E565E676183E7C088EF27C3A19DB850B8C7103D869C641D615377CFA03F1E891994DCB8E09559409FAD151FF2789E3A05318F16429282945242FE8FCFDAF22963C732428A973FB1BFBF71598B76A59F6622EF1B6DF27D8E29E1B76C0DF99D5595B0C1F4CC98B60170B53E84D035C302B8DED2DA4F38B29C905F9FA583032D4D531E22C6C93D4DC071693A8BFFC74F09E0F45BD057DD66A79AC8EAB06C451B06D443204EC536B953E3CC0E673C27748B53929DC69ABD0B2EB2BB3783D73BDACC301D24F7DE4B868F4FBC945C35294B15F87E24113FF3CCC603875184858A64360714498C5E1BBFA8D5D1C3AFC84637879068C11F7E6245C6EF977DD6CEE4ACE7399641E6700F0CCF7FDFA99921505D79D3D4362E430DDCA9812AF57833026B2176E1BD65281307E76FA358BDEE4FA22A8A6EE20768D44495B3244FCD5E345B48A6CA36B9A65E478AA209BE894EBF66644FF64DA73960D87FBA67A062598715F48CE8FC695DC6047898ADA1501F4E7165E49EFB66438F3C396D1108729880711A1C0C57CA3B5A129B55364047A802E753DC6A88F17B9262998666BC8C806663B7F9085C0BB87703E744A5D4DB8E3F99DD1900AE4DAABC4F04D8D2BFB553787FA8E5B6C94743FCB7F683730F891BC19097768EF48237AD87259D111EA531060B35ECC8BA4E6EE3303A982545183B50447DC2432BF07A6066AE5F3C3EFA45DDAB42BD6EB178809D5DCA34267E0A41998E68008E1DB11B1395A111C36DF556807F09DE5C908D4778ED4112C0DC80FED7B9CD5A9A71B0A81CC50F1A2E585E68C8DA9C1F8D9DED72848CCC2F8F0595DFBCFE3402ECB10AD130B7E78A273646416FBA2F5DED7B2B76AA6580C08D8593D29416BE8FE18647C3AD875894536558047A9B32C0A124272232FDBA22DADACEF736F58012930A2E377EDC2E78A1C9018DA9F1D7C891419BF49C193CE2F714CE2A1FB92B3408447AE491ADC4C9F09EE7D373424D8F2A4B058D93B8B7B4FFAE0DD9C20DC018C358192F9820DE5E9AA77D400FEE11A8011D872317328857F1E97F77C7DF122DC58F559BD4A1CA3A8C31EDF5B2FC31AB3C3787523743B7165271366684975392E77F808B3CE3CC8A659E2C26B88E07A87B348A99D2469D42B661200D42F55839AEE8EE8A141D086BEEFBFF0B3213CD0E051BCA9DEDC582558F838371C796801ABA109F3F1C3AEAF3ED006E5DDBF55B3949909B23870E0D9EF1168A2388494080CDB5750A65581AD7DA9C39E549D258311CE98378B8FEFC9EAC3E8CCD1BB2E2143180823C1CA68A70D38FCF99616B5736A795723A792146DBDE16D90671B9BB5CD4D25F22C20E253AF84854B0C7F4B6378C80B659C449205658614079DDCE5D10CD339B449758C8099DA05C9A08AB80B2F71186D9554ABD70036D427FC05B6BB537D8CA54DA8EC82BE760B196D477004CF07D8596BA36160781E91D9C7C0408C16D1648C6C0659F675B7AA8C4759ADCFB11083ACEBAC05681637F53DB0D8406028880143B2F061D4ECC952CA61FCEB681C40687073179DFDCC280BC942DEB550F5EDAB636E5510031BF91B9E6312E0F112FCCC34F17B0832B56F4A6D99EC4816059A0770752E59A2443059DA4C9A30F50820E831796BD5CE865E440D5D3817831F91C30CA4A1CDF751D6691A8D7F9E3E21272D83B2413989A37A279A2EF6D733C280BC0F60E60CF0E61BC9AE2335FBA238519D1DA01C21A34AA4AEFB2418824973960107E2D9FA9871F90B01F6B506B5CD1EA5F3308089003E80F62643112401D5D7BD0D376E08F45B2DB2324646106F77F9435045BD8130897C1E4301A936D62E4D82F4A9AA92667CD1196C062DBEAB4CEF1CB039266C70DAA25BB3C2D46FDCE516D95450C8BB30B675CB9215D5A3B4990E959E2EC9734A2A58887790F50CAA33EC83092867FBD53E938C5C8F444B7BFF5BA6CF42D948D2EF90D51FA6709A0C91DE182204E960C48CD38346990EA56DD7482B8ACE2D8DF218D90065FF9B22E81A64A2D2B1190A52EFC5EB558DCC5D511D3D8008BAD29F42925B6EC19FC4ACC1D65F5ED9E618BB244F34589431B4F5166AB3400F03896FC88349E0C6CED42FB8A43A540818E39DF3CA5C2B96EB6A52C443A9DC9F807B9F7087C3709199C79CD98D5A8B0B6318E09E0266E921A78EFAD0B142DED92D58C20AA74999477C0F6D95FF6655339130A146D23AFB3F790DF6144F49ED621DB4470ED7D6E7C2E2E2D182C745F3D6AE230E4BF2AFADD122BA231FA80E4BB354022B1099E42396F3790DB13F902FED90DBF40F19FEF3F598AE70508844432E2B8AE1E1CF56CD09786C8ECF9D766C681C71C3EEF0AD3A86ACDF2AD723BF84385F213586F1E68D9801BB9BE4601BD5A28938C5FAE98717C89D449A63B39BC4959342D56EF16C91BE1A94A9B6E48E997B9E1A25479744CAC08B94D8DE903507FFD0D96D54E677983F7AA461CACBA93E19A4ABD0AB6F1158A9F5DB7607D8F790296E12E7EE798A13C7D86686761EA9E2432FDE89156BD4D278F27B5F8F4152A4D745231F6C108EC4DBF046AEA7BCFCCFBCD7A42B62280F812AE5317A2D3F7B87432E1D7E57D87370053BF156D441E8CBC45D5DF023EB903B839856CA3C71A9F9C5CC82E5A8E62280D7E8E1AB5BD216FBF641950CAF7831A4250835F190BD4FB0666CDDE2016508EBF54785AB580A2147CFAC3FFE6B6D1817FB36B960451D511E0B26EC5E6E5017D6F45DEC819E96E23AC942E00FEB80F48D28A9818BCCED8003FCA268D8BB675448137E155987673A8E2A6908194161FFA521F3DF5CBEB5B1B50B00C2E4E5750F3E4F4DA74333C72B063A8DE8CF8D4227A2532719FDA1155AAD4396EF4F86579578FA4819ACBFC9AC489128F9A10A0BDE386DD8163EC1CEB7DBC092BF451C2633F55C2F6847321DE29BA15DD6F11BD6C5474FAC89507B23F2E064F22656A848EF5C6AAFEE90C957DF37E80BC75A17C192DCAB9BF6C35D374E2D7FD336DDD9DA59026EB9757C753F615F747E7CEE2947F5FC47F3A3AB160E5EE973C58FBDC5D10370945541E0DB6DBDDCFADFA86E1EB82CA40E96E987C572C9B13002B5C6CBD7334A4779F13AF8F8E34704255B8DB827DC86E9EC9D37A4E5FBE5F36E8E21FDA9322FC6F7325A1B3B9214F40DC7A9B228754A5D30667EC5287CCCD77B108401F1F0393FC1EB271437055D7B9DE0BAAC56B53492CEE468ADE57463F4FDB8885B12365437ACDF45A9716117740D397CD1DBDB0F5BBBDD152056A1DF0AC5D2084D7C77AC38A8277AEFEFEBF2C2B59CCBEA3F7CDB63F82F5C0FCD5460EE99690417B6350E4C05EA5DF2BF5DA7B1D97E8A6C4D0E2254D8F0231F7BA30B97C68F6839A63930A1B05FBB626F97E92A417F03F094D4DE861D776B4225C09268CC36439E2F3330CBFC88CCC3467937EC6524866808A1D6F5C0C032D576C2CDAF7577F20472C7AA3317779D2F0DCAD92020BC5473E8A4A52B9909060BB5C40745D510933EB2246878B4B2E81A34DA415790E91FB99540759353DF92374223D0FA661256F9985A1D85E7CB2638F1CC7E3817F0FAD61DD5F72FF0DCB86A5A3EE7E952051A2DF22177D86BB7DE6394175AF6AEB928041D2C1F494D519256356EB59DA4A0F453F8609EA970C09BFA7DE4316EE93ECD9D98DA5336B40D50E2B036AD798A6097142F3E3DBD0FB240F1B3308B0988B87385A9FC1F57AD924E5CEF96F362A6C7644FF81DA73D2C387ABAC9E4D10123511BDC68622C778DFF28DB0B3CF8E41291743B6C8841A992ECE786C0C481B8CF1ACF3503BB31DE0C233EA355B8F62B1A73212AC7FF9197E0E6EC00A8536900DE465F1CE8714A6B13ABAB115A4B7149DA0BE95F8304FCCB0B5A788B047388809692CD4FB91356D042580ABEBF9C8E75AD598A820DC3E14AB54544BF851D8404AC41C933A9FD90595F51D76790CD78468A649BCD2388913784BBEC3A77A0F8146E75F3BC988E2BEAFCA453FA669A5F38528DA70A9E7992953640FEE36E2B26090A8F6852DF0AFBF0B5D4B2654F3C72CFA672B4A26533AAD29B79F968E75CDE5C86BE6C51DF66A0BA5D1BBD2EEEAF66DD2B3D31BF806E8A8FBA731F74F1491D1F18BEAABC89D81C223F249D738596AEE9D0D19377CD85302CBFF06218D19D3806638BF5F50A598B455228CB0094903BEC09850642FD3F94FEE2E6ADE78AB6527D172334BDFC609494453FFE601DC272309D062ED0E1EDA259C5C1203A58C34A613BD81CF0B4B333D471872DB0DC4FEB43BA4812B522E0E92B6D056206027FDD25AD8B12B7B44FE4678A85E271E554104925490E080AEE7F75C478148ADD1D5CE13798187F8E0CB6EB298ACB6B8D5684F94E01D4224E68166F351F1373FF059E7C00FB3FE4FB78B30CE827AC53E39DD9B3BF0672E7C36E0D508D9B01F61A077FD54C93063D3BC22EA762B5B16090762BCDB8ED7EF3CB6830E53A205AFD93924907893CD96F15B69EDF416D20D35698531DBA8E0D6D40B4D0B4EBDD3D5A4DAD23A75B69FFEA4262E26901CF931DC4638FF3779469B3A10901A8D2C43154D09AEBCA0555CE9448ACA7ED7ED7889299725FB68A41CA8152ECC807E7D084BA82FFA59A711584915F643D58D63C7DBEBAFEA20728949C974D71A20C7C51C9B795EE66DAE88E3432970138F1E489C44100F61B78E3078B879C4D6B898ACBA8524349ACE46B9EFA3F6C9CE9F05ECA938D6E79F0841CB0482C7EECD5D63B1467B3128031449706AFAF97DEAE54A189949F4F1723C842E5192D3C1D709D2AF71B25C0E7342058C24119D0F761F3DC32E468AD0D63E813532E67F8B1A6C96332E37CEEE5889F1B78FEA891A99D4664F3F78E5FF7D6BDD9FCA1A6104FC07F2F50E29F000981AC726036D8CD8E302AE3BEACA14073FDF8FCA294294764921202C9BFA58AD0EC707AAF475B15481EB526CE7CCAF91D12489AB9E8E5B386420CF21EE9EA5B580EEE83B9CB801BB0D07EF8C9C51D54542115DCE39F8AAF31020A75C1EC72D8E2CE1CD534EFFFEB45F2D37F82D950AE12800822AE7E41FCD72F7257BF95352EE8676C15CB127D6D5C7BDAD3AD6AEF225D78F8D1D30C9F2849D358F7EFB130DAF9E5381B92923ED76F2EF4FCB028E3225AD16ABA88DF679DF0E6A03E63692688D36751F8ECC98BB4683B2047F66DCF32E0EAD6D3FF0FEFB3F54FDD5468B190885EFF40B305787F56A8A13357DE3E5723990B0B56338714703E1F0108B3ABC82C3E06EA1227B2999CA043B622F82D91B8780995D5766A33DEE15C2BF9D14FD694A9229CA6D0DFA6D357ED363B04391608CB76FF937BC61E4D0FFC2AD5F4BCDD2636F144B1B1F8C64D005FEA98CFCA7CB6FAFDD3FE89DAD6402D79584ADE47F0B5B82C80AB5BB3A0E40A978648EF51F0843F37E6ED4CE261446D1D7754275B6CADA14DE95138D51B0A55E85330C27134180BAB945A7313918E8A5FDC4FD74707924AD456C0B0555445155B9F68C6D4535FF12C4DFB4118F7334EE8230AC22891CC9CDB12B21C6A56559293FE9601E6AD392BF2156BD21186041517539EA911876B536491A2A72102AB342CC34180CBCF91C4897867F3DB782077212C60F346079A9D9F4FCDF83165E100079CD2B5D27AE921CB07DF82619169562E2D2342C258CE8FBF8A3FC4CF5D72086D74AA398C38C7932BE9B98B1D4165491F95CA7897EFA4F61CF54158095143FEBEDCF5FDDE98F188066EF80AA58ECECF598987A904B61CD9391F2C6086DDE90DF57C551B7801CF1DA5759C3EC22DE7795094ACC302BCD41BC0FA98E13F6D7EBA326C51B0EE0DFE73BD841C053B4E553E4EE0543E3B3AE7746B11559263F5D03E58CD203645CFB9478967963862EE7347A11F2CA8A3CF7773856AE029C0E5BE3AAB662F5DA9361E2772140534BD38E721FC77EA2BBD23CE4B34AEDC7F63C47E1347458CCD61E5CDFDC0AA29CB67E2DE9E817C96303113AD78812DE6C77F1A653924C2531E2B5F5E851E26740DA921CE625577EA0B92F54E79DBE2D5B3B72CF34CDDFEB7EB121CCBE98E7995FEE9DC22033CB2036149083F1711A052B9EBE781B639D85EF664AFD1C9D28AE2C33A471FD0B3AC24E5326E6D3D6DE654AEE2E0A901DFDDC2149E4A931A449F865133C9253DF84086E2D5558A2C519E1BD0CE208C531601AC8EE51A5D7A5945D5D89B71C841A7FE6FE42230EBA07182289F0940F158C388AF29337AE613A97ACE84EC008E1D444A2A3EA3E3DFDAC6E6E42D4EB98123B22FBB52C3181EC6DB73EC3F2143677B6FB41B92C05841AE6DAFD8455C92A686223AD51587BC2FE38CC5365931EDC94AB355BBBE97F67A7015866D0561357C315920375C56C3DEDB4750863244780D84CF7F31488BEE2F1DB174A14075A68FBB1AED51CF637CE8A0B29D55CEBDE894E197C2F908EFAE2D4D7529125FAE1E4388A2F5AC207D8D80B6B3BB933E2C00CD8E60DA4E3BC52F986654D74681392F2EBF0D8AECBF8715AE69B0021D870F366EC47D33B9626B6B206B6FC663EA0C314B5C086E55103C506A2B88961ED093268C164555A1C9AE45F7C3632EAFB4EB31F9615215AA96B7FE578D253C4E827E6BAC8FEBF1A421AEEF9D9525A64C40638D405DC7B12FD03AF37927EFB11F2EAF934647CD0A64DE5D1FB68C1CED35BA25142719413B344491C308C2C89371A7FA599522165733BEBD5A3FFB44B9C2382783E86ACFCCA095DA6C3BD6D829917164662FB7988E0E4ACA1C9CD47456FDFA42C26C9879BD58E4D2064E97EEABC72827807EEE5B16690CEDA5D53468E1C0A2BF23163D648FF7EAD6A90E44D2FD2299D50AE4EF89157D2A0397EFF9D34E2CCFD1D9CB7BD70710CDEAE4E8180D4A07002D928DB3BE24C836A0388BE129C52FCB8DA41B0EC33C3C074DAE3706970F8E9AA97A01B9C7B46FB57E630C09B76B8C7A043B4CE7B0C60A1C578D282AD43518D1E9CFCD64B5C931CF9CDCE6F476FC7DA2B02A0634D5B5E1CB93E918F398355B874DB260476920F79E25552C88372041ACACA362291F78AB6F3A67593715EF574DD5C19B26B57B92A99573AA0249A2A827E66396E492E4AA85B2CEC538258AD06EF14392FD06F876B81B6C9F1F13B89CA36BA86AE13E824F696810D71B7CC40956C5CE8AE16DE636ECDCC3AE24E3DCAA5CD75B920A8CF61E63F170C50B526DED6DA6BC9ACCB536F1103984794ADA289E5F9D2F106B1A29972F5AB7DAC683E09350A58BAD3F748C783E5467B0ADF93808F43B907E853D3A77EC97FAE8D1800438437BB2666DC8C593288359DA5C4AAE99B7DB97BF393B9EB2C7A1AA23429A27A2227B2CDB8AAFAD02A99BC365CBFBC7324762E8D5B93F7902836E72255A9834FD8EDB7FF3A081C6F18F95D11C77E6E7B8B27155C63D68AC572B0F27BAB797A06A0256B3670CC8D0FAC9A4DBBA514DC4CBFBA52C89A6B2EB64E1DECE8F1F7E178679DE89CA43118019F51DE0E01C25A66ED0ADDE7DA2549BC2124E7097760CD57B1DCE5D96CC09ABD16D58EAC17419A25F2A7EF7565662853A780B08F391019C691663B87F3E32C4873986C757EBA03B4284B5E59512223BE9AC71493236FBB20FEC2A664C7CABE16C4E7C69E5AD2CBF8BE60C87B776FD31953FBA160FC6A794A4E0072891BAB1067FDA375C49EB2A76D40A8F0954C0081979ED3E6F03DB3660CB45913412CA63412BA26E21B7D993007E71E8377343C668ABB8EF842BA998AE9A7E3A6F106F03EFDFBFBF45DAFA0FEA9D08F30CE9E858C8B3016FFE0121D9445B3CBD8A02349E01FC0C12DDC91231008D7AD660316B290264171247A1BD1C41D349B27102DF7EF504E984C39B0B745FFA0E5D989F09DA9B98446E00262B20C6261F28CF282C9029E51311D6812CE1596C83758B3CBDA443C65C7C34004465424816220BF81C3C61B2D79EC7AC983161939E067C2B68A993CCC1EF83B7FB3CC56E8A9B3AD5B8D7F63267EAB04F67537616EA0FFB80D690449338A65E11813B6663E8F09307ABEC9CCE58CD990FAE4B06D1A18F5B6C7341519D06195936ADA8EF6E1E5E6700EABCD670246AC7006332D7B93AFF64D80A275961FB6405B8B5991D83F0AC43E2593BC983E872D8439CD4F721E255651BAABF790D78D0A3F91A5876210B2AC05486A247BFBE2F5639FD6F7124FB8D759A4FE8E0E275C16C3CBB4B69C9F0BC785786D7283C788497317B43A1412B4FE97FF6DA3AF1DF37E150B5B05696252D6600EA8A576CFA83C8A7415FC201604D0ECD56095CE8F31B37B08882CAC674A8F12AADA6322806390CDF42224A62ACEDB80DF62483CE0A3D8F22AD8B415181265D26B2C619CFCC046EBDB7B7829731E919E8109A3A3C662CAC50D8A513AAD741035CDBEFE22C4A3052D772703D2494BC001E01BB76CC49F46A5A2F56B5370E9C10A5FDAC72EB1DE490B9388401DDFAC2A79C649DB00E22E2C313FB67B51B2642DE9B6A7B05ED5D2A65647967599C4E4432BE67A69495AB89A3631110A4F36F078B9CD0C6FF15352611772CC8B279745DB3FC7D886AD616A815D6D328ED7F5DF093651F4A1699AD57E64EB588D2D318BF4501114042C404646730810274AF80AC5E9BED19865759735A000A5A5CBE7F3753770111733CF336BF1CAE3CD2FA5F27BCF9D07C7C8AA99FA7F1F3E79FEEAED0B09BA10C4FD35E21B1AD571CBCB767B87CC847CC2FC0C4EA1CA2A5EDBE7C21C4ABB9386C76FCDAE035CD4E6E507B9D40E066CD034B6BBEE9AD614A92C85FC20D6CAC2D04B576E5305627876FEF3FEA7A52A299254D58FB0B5CCF4E09EF912510703249AD63C65BD4ED6CACF50E887512BC8FA4EACE436D2EE16DC2AB5F25FDFAB4679A7673D95DCB6C2156CD106C26E18EE1D1DC5168D995EBCB70E9ACA831590C3DCF205D683F5BAFCD355390B154340E28D3B2AE2DAF07F3F2C4D66D3EA73361C24D91F155F774F5A3706C100AC614A054B65BE1E2FC268ABE7AB8ED98DAF53EBAE1DFC69C6913A09652F0C92DC8AB7C68929608D22E4292BEBAD0F4B05F6C6020C427C04FEC232669008E74C434777EBC04EBC4A86EABAE2CB0CA1F9F206B3FA37D71CE35DDEAAE2B44A869159267870AE0D8F7490C2EA6C681FF35CB7C6114540952DAD9D93FFC69A0270B1E5EA4B15A047F2EF66CE85ED75AA5C9796CD1F16BCAEAF080E197426EA0DDC912A8D99606739B4BEA81C9FB9D124444341E8E34445D1138CBF6DC372A33928CA1698B1D243DBBEBFBCC12562D092922237CE3D45703622FCACE5474D366A6648C6ADA5AE1F4857B38293949B4BCA5CEB14B069491522B113E2EB395C81F141A4598D4C6B8505D01F50C25A7FE2AB15573A46A97ABA9AF779DAC62DC80396245275CAA9473121467B328388FB51BA7EC04FC023338D8F54DEDADDC6826F9467B43462D2A18490C0C09DDD0EF1E255D0716A3487B0CF2382AAFF73D1DBF6E07F0198A3323AB056C0EBAE9332B57E1802A40565D755D1AF7AB8CE3C0ABFF5228C500CF17F9BC74F92BB6BFECAF93B016C3CD34544611729664A28D1DA7B06DBC8FF2AA00E896C2C2B873C5B380F1B75EC92108E0E074682D673242F076205D3FAD9E0EB993538CB1844A15D36F9A69C678373F3A60EEC0EB0006E77B2FF3759AC23C9013820E63D96360C27A349D97B99A2CDE6A19825E8A35B4C16B582A9F68050FBFED85AC0CE40E7C1C4DF354D8D37D8A47DC8D65A2C388BD04DC5CCB59FFE54344A4D3D31A3A745E54731459FE121F7BA2CD769AB3DD5BFDAECE6D91FC8582CE970C1BB26076DB627774722A6946D11BE7D1D9BCCC0D1DB1EE8AD410A71B6528940247DFE05133BD30CAB5A704D4F6DA11183ABBFE2CE9F91524191A20573C7042CD36EA95023F4CE71A8A4DAA4D6E1F4B179E9FB475282DCEE49D31F5AA85FDDE7838E5FEF8C94A1CEC4CF513FA2DB0D2034B4DBDE66F00E6111DF9EAD0060E34886AF44BA6F37C89220FABD8BAB21886BF3CD98EAF3361C76DF3FB7729E5BC873E1EF594F6C8B7BD78D1EAE9B50111F5721C587C161E0CB07AC84068EC14C7D607B5CEE53A702D49885E9E49795A7A033FA3E457E52A4EB34E7800C8501D70BEAE5FC9252D9033592CD4A0687DA120EF16C073F8830EFB63167F203B4403D85B78861F6177FE29456DECB3896B37B5BC7940D902093051DAFEECB6C9007AAF534B02CAD548F83739894CA481022E9C34A0B2198166BFDC6E645B45766CD43394D6A777669AD08D9246A6E1A66A0B412C95D6D8076ED2786C0EAB75C99F4E4A18D2B445E8BD5F063C675C266453F34E0D9D250E585102DB067A7C2EEDE0C452813780E3EB06ACAAAB80E6B4DC391F95784CD16F83354851EBDFAA5A1BB1A9A1B859348A2192B6D0C36FCFE4E0BD44DF5062BE11C742FB3BF66A61D62B1C512BCFFC4C54ECC0AD051E8879F5AD8BA86B6C62C16F08DD942946E3F36BA2513961AFE19BAB3A82A402D386F6F2ED442FFD7F9BCD73DBA9734DE926CC580C2BBF28FAE8D25170BE1989B0C57EC898CD9D96C5288CBECFF634CC7B0467AA0E81B6A77CDBB5F32CD83955E444C6ED9447A4793E20D0F40AA7AA10EBB2B67D2E545423DA3B69A526C3E76C118FF6785FF48743F4699D6B7402FFDBEC6B081C069CFB8BBA50739EF0577DFF39E44D9E83B1C2B199661E2A3941B70B58ED02DABC830C9B4A4B52422D3D19CAAD548EED3A15945CFC8E4A285CD388AF78D8AED5815C28835C1E9BFC7BBF03352156AF9E4EACB3D733B46749406F5D312BAFA8ABF2605912C5671B907B5F5AC1D1E140A812DCA660875D3510594F1B0D969E9B3EB8E20BFE582B9829B0BF0BC0E6A13480EAE6F6A5726BABE33503C73F71DBB76E061D7D446EC170BBD88D183710A0ECB7D2F44B64459ADC26746BB49229F1A8B576F376BB052793C1FE8F3425D3A546CAC41AF735B5E81656BB9D25644F1B1EA0A60C2EA32DCE80A64E3144EF00B4BD6AC2E69DB6B53A5DFD2B3A85B36C6C405EB77DB70DEC4FFB4F8E0C174C656B6377688F1C6B76220420677F03BED73514C9F0C948247E39DE54133D2695213B2AC3BD7B04CA5BBD12236438D9BB94003645072387E851C42E2928EC62ABF7BFFFCCC41936F8E851B6136DBA59DAB41AE48A2A7BADC27C0761BE19D30D7D929956D17635463D3B40DB519845E6EB6926ACC1A40738749497C89138404E7137784D69B303D037E3C9F12F532088AB47FEE11365AC8A2491B402E5573FADFC9165B032314159B40B5D0FAA794C5D7B93296306479AC9D666A7D1B0E1B34BB77BF32B96114D418848877A843323B141CC01DA1D38B1E0193D57A03ED284E06EA0E36AD2BEACEA97987C1EAF53F74C03BB08EFAB966E21C2FE7526ACED710160D53BA3EA8CDC6BEAC2178F552FC3C169FCF8727344C8B8894A2E2A03AD4FE2EFBB884FC0CB3959A8C923AD4D931B4427E1D63202EC919E59867F6935EB697E3DF7539D65755F98FC6FFFDC0FC3A813909F152DE23AB0767EE2D9F3468D22E8B902ED866B9E3CA832A5A3C7D182931204901F5102E4916CB3F88B7DF4ADAE80D478BB17F1DC7BD9E5270D336BDA110F6EC6B4F384298878B4191A590661EC62BF83099DFE82043EF93B7ED5CEE34983C0EBB3EC5B3D4275164480E2B017DDDB86DD5A4B6415D81D6BF5120F58CC1D331CF4AF89EAFBA9E78768BFFCACEAEEBE65C3E966CBA9FB85B3DADC97BE72BE8231D952C883D52A14D6BE908215E512A7C6AC98B5C533284B386FF090D89AEEF55E45943684C7FBDA831F116E881489E34DE5D5E444D1154B474762A5BA9862E984A9764CFE9603B90B777EEB4A3360205D8DD1B16A4BC3FB855F970ABF551DABCCFBD7862607830D01805D9F419E09139F8BB8480762E2F6DAF9973176F8DCFE5B055842F48FD358BA9C2260DCDD4C8E27ABEA211A576A0A3468EE1E6754A9F9E626C55C08FBD669B020B51B5F8CAEE9A83D44484D5D531FCBD33A53D47DAEE7F758D3B059C07AD91010035B44E15CEA7D4C00B3F750A64CD76E637F065137356D2C5C0844DDDC1C4FDFCE32D142B434DF3CC422978A5209E65158FAFED7A2ACE68C6BA029B8A03308207EC1FCD74355681C70DF413E1FC920B72E13C92F52AA6E2E2C202117E3F6A64FB57A4DFCE142FCBEE222D392EEE252F998714071D66AD47E992BFD73B7CEA9622BD008FF7ACAA5AB358E66110FF113A73506A0A33DF8AEB900E0F176C39043AFF4DB734B43991331C7A577EF3EF3C4827BDC4134279A73C0B6681754DCF53D6EFC8F37C3E1B08554349334FF25F035A231E13BE42AE0AEEF9A01C6A2D527C88AE0A6C839DF25E33D4EB1CBC2D151516E783BA1481F40AE635895B4EC66ECB8CC5367165CEB2A19503A353C4B4351DC7176D8910CD40BC2D5F5879A77A0BFEEACC913EBA1955C91E7DD317218F3CF69A87A48C1BB1127DA6776071C7E17F5C592EE41499A37ABEA02CEDD39F0C0AE335B445FF42B8B4185B469FDD0B1153CC1F7520F5F47836065C294E3679C885A62F032D5BBAC2354605C0BAE5AF86869A929B9B06C04B8C25CABE370AEC81B60A8872245A7ACE725AEDD5F21165C604151C87CA6FB5278AABA36D04183776CA763B12C0ACA8739393924FBBF22DB8A1337D8787AAC81E3C3D9E28210FF0C2AE0FB0B60472975E79338768CCC18DA60FA8F348701BB5CA1F286A27FDD03456349646BB2F2C588749455E36E216C267EA226165653BD4B45464D7D84AE4E2763FBE3E72D06E431907C3E8A59B66CE83206CEDAE41ED9A0CE1C542E6A156E73D10B9AAAC2A2359D601D55930A7923F574298162C98CE7208DB54A4A64529A697C0DD8F2AFA090405888ECB6ED75F2177B882286A04BFCEB896DAB7D742EB50EFB8764C527C892DF00CC1E0590A982A7292FC95D1621F9E5CA8FB1E30024D79980AEFCD23CBDACF7DA72994A6DB73DAA14ADC271AE422004A4069BBFCB3FE439F10764D63FC5CA59F9ACA2E936BA5BEBFF773BF321F2DC84B8E8C561C309F8F27E9112778C9757183CD96F48B6316EC7A60A1847934002F8A4F48989D4579F948606C14737CFAECFDEB5B3895D258EA0AC67F2EF4010A0851F4AD6D43B7D468A6CCACD5D6C509F77C69E6C27518CA17432271CC495D15929BE5907ABD4C5E523DA30CDB1C0F3B9F4E56CC4D09F80BC37AADBD14C141C84E5313929DE69272DDDF53EC41E89D0BAC4980EA0E222EB1C27DDC6D1C009D4BC526EAE81ED99C85080EA1184403F70F4B6EBC971CA0742791BE223310EBF7C3CA4D5A2EEAFB0CAC2778F296161E625BCC53ACB57E1480CE4AFB3714ED894D874E089B99FF069AF1C6E46847E396429E003D013F5926E3D312F9849656615B6F75ECAB87EC631CE2AD2C5D60D0595ABB3AA8C0F0AB380C626763EFC72A03EB6858138ABCC527FCC02A0F0671FB0CC0FF3D3CFFA9F3F947864D29944CA2AEC99F4468F3BC3884E84BEE052CC67B2FBD94D2FD5CAF7843F3AF73645B5F4E11ECA0B0F839AA66B91783FD60DBE01A54BEB143DA18276EB2E65C79048FBE4C80878C08B53A9BE1D2F92E5C42C5257713D981C2E646AEFD8D70341AFAE13A6E9B8D558DDD9DF1287C7A91FC47CF0CA1D5009F03973D24AE52D03E42CE06515C3515300ECD3D10EB9B8F9ABF6B5D16CAA3E6A1AC698663B549F2CD5D498ED048B3C86D05AA87C549AB7910B6CF267ED0E0A91924C63AF93052916DC9F958E71834F7AD579B18ECD702B00BF557E420375044F7097B573817982E380264123683E59CD1F26D7BED5A1D614145B298ABB6D0E3D7C5B041D3C1B11EA30440A99E0094BF5506F4E06BCA730FC24EFAA66E256A7B942E58E4613EDCD1B1628526AEBE8DDDE2F9A669284E406AE8D81FB3FFE210C54049890BEB53ACEBEC20CAC3DDC1BA7193BD24FCEE854C541C0C96D9EDD7A9B0E0EB7BB0CFC8F0E8FAC208604D6EB9C2F9C56849912389C3765A4647FC5002CF1184C53791CDC353E8B34B5A2DF887DC89B03CAB403AF28ED5DF31286AE987341C61A839EFA97EF83755DF565246AFF6EE48916A5CE13434C90F1E53952C30191FEEE02377695071C1ADEC9873A3087EAB842706812B334571B0CF4491F78C6140A8B4A5DBEDDD5A88A40435BBA9FD3463B19C6504E161863C69FCEF6C69D57A5D09B9393D74EDE59AB74BB48EAA680CEC1D82114C46FA30F6C7250D4C1C618D5F66D9AF99D9EA8E5815C75488C8E7B26A70667137BA434D9710AC14565AFD1ED17E292215ADDDBD7F281A99F66B336D527FABBD7104A5FB6EC18C3E6394FB200CA2090B5F4698434DC3F38349A950B239445EBDEA127FDBC5DA4F0FB2358D2C9C224F481C53ECDFBD27C8D4208083736D4B5FB0A1111EB8E7FE4C7C7EA4008A3460755605D75115AFF45D7960E598D6C4EDEE5D96E2580C1D8B62739B5C753B633FFB0879950A2B5931B46078800951322B09BD8CC3CE85A424B44DBEFF95DD124C66F9F09FB7A47DA557A20649679E2EAD18561BFD228D8FA5141958C13F3F43AF8CA870994EDBAD1CD6A57BC8680972DD858C8E05E27A1581236925ED3498664ABCC8C862B65540BDED01DE11E2FDF77EA6C1C545762D4C6105B2201C6B3C263F9BED64B2CD3A7B4753375FCFF73D08D75463C568E5B906849B40CB3E99398887ADF5956330CDF98650367629DA8CA5EACCD09E157ACB03423658B3E3FF4B2E359BE3C96EFBA9001F704A2B279687FE87B3BE15958DB4BBE157000638E6D6651246CEA70B52C7EB4662E6FFEDC3FFCE49BF0C0024A99DC95A570CCDF3D0EC6CEFC35049EE07C973B461583E0BD96B1DA266B553B1FACFE295D11C21C4E5BDF4517E89A4AE230B8B943676F9C7C74201F48A74298216B351E463DD7D5AF753744861BC043114656CFAE0458581BAD9F0AB4BF49170B6E2A139C9B9F9FDF5D957F3E2CEA8FCAB100438DDE5FBCD4521ECDFB1B1075A70907E454B0D394E76EC67FAA9824031F701909E40C08B6409FBDFB31E80958BBDEC7E59B915245D707B3B7EC49F841DB6DFCB9BC3458CEC8B5A97F3146BF2ABB8A2E3C4810C89A2758BE3155D01624A2CFA27B9117B12E52BCBF42C59A135EF58EAE576D08F5FC0CC3EEA7582CD98A3FF93D0CDE5B7E7C61F77CC2F01FEC7BC038C7BCE6FB001B0439C2121D8464664E65B5B75275456EB8E214A67BDEA18871F1D808492F676D1FEECC1D1332562BF552DA5D7422DC2D198DDFF62080A50D0786A8759054B21FE138AB16C3DDB7F76FA9FB9E572F3E0F730CC0B6A288DAB458CAC67A46FD7F0D2E0C458D7AFA478052D8EEF16174D1070321D2CDDDD95112D069945F1BAEB4C3807C20547EA966B33BCF8D7EB58C0009D84311CC887ECB006BDE913D0DF22A120F9B71A51B92F38FDA3279FE76D5C9BB052764AB9B9ED2E77637B80B095F72D7F4A913969DA086F6EC7C101DFE82287D933C33065A4E838ADE029744E25E36B4CFB7DD04DB0DBA586CA8B547FA1238D0CB8837AA516EDDEE0ED3B7331A243F8CA8A8B9DCFF4E610D15B2061E9FDE36D0634E2E018CE9FFB3A354DF84B7F7E42F568DBEE5A93BD141F104442154D31BA9250252EDEA542535DBF8635E6BEC3782E77807AA995ADBADFE9CA4EECC92AC71FC15462B44FF6C527DDEE40A51069448A713146C05826248F32DAB56BEA98D2CE5D593D71B02C0FC313693729AF3B8D3A66101738D951907CBC8CCA70AB3002B9B2D1CA85394A4983B79A079AD2D3A9B7C8A39C0DC71F3CD235CE6A66E82B62AEBBCC5F41AD72FBCEF33E05E9A8658B5EA17CC4841583E1115188586479C6712DFAD3976459A2F78CD123FA46CE01FF873C86F3E24BA81130BF7BD61B6FA29A1146307BF21CD156133923C7C85A123773557E07F17380E054675E3BFEB8240DF407B1C5009A0AE313C995FB06F0428162F735EE0FC746332CC6A3C4C25D39F8470A09C9016A9E43D727D1A5B6765B0155264BDA5D9622A1759CC89C1E95E0FEC2134878128136E2875710BBDCF9BF385012A8F545AB1C317C5CE621B0186770325A78C3CF9F93E3319D7FD570EF7129DA9E6F05D5DCB9422CB59C0705126AA6CA7065C159A1FEA5CFC3420C6846344C99E9BFA26B2E5063C2734FA0AE5293A2A5627FBB996727B11110D9AB1D9D54BBC5550635449D6D5AE57F0990F3145A6B46867783ACF1B141FEC9661777F9B3CF4E0B3EF1B4E298E4CAF1E1BEC7941EA55328FCA3C703C89B24A2BF4C3E3A03D8AAEDE8D3571E73D15D11705D494B55AE722FB2F56E3AE23FC99D87683486BD20BB39899E0963EC24830FB509E29B968C02F4FD6CCBCDC0151E60AD44E8FA94EDCD43900220E473012E0EDE7E95CCC80F7B4193F19F7DB6EBA15DFA536DCD7E448FAB4689AD6D672F6A569EF8280240114F3097FB690C08A77E7467D7F4BED1A4D46DDC5D7E5EB32C98DFE62EA662A7C500D291D31B6C60657D4C0BF7E4C166503868C5F0CEA1597EF5800BF20542DD74CFD459F1C8F44CDDEA356ABE83C1A51F014968ED7D83D97BD5531DC2D6586C81EB9A5EB3BE7E032763F23D350EAD3148E1FA95D0569667D3512A803C31A9F72BF03739B3091C0E0C86B079ED770C98952CFB030D660672ACAF0617E010266759C73223C8ABF98B98880744A267F4C8445ABC470562106CF2145AB4213838617A06C907BBB774F2C62721772D517FD17AB2FB50F8B52AB7B229C0B9249743BAF8EEC22A6741C32C24EE215D898443A3DCB8DBFBD15A2BF90450821CEA512B735A58B7A5135B0F34E629C9955C64BABE49432E072127D61DBBF05B33C98F0AFABD6C4D7EA78DCA154EB74FD09DB10D39B9197D52D32F52055F1BB17ACD1B45600ED41D3AC342C99128B8EA0E68827627EBDF95492DAC24A8C71642236B2392FAD7DE1C9878BEA7BDC42E1FD60C8DD871B50F166B7D2DB0207B9F6CCE1AE01AD02941C4D537E10203A7E577D3E7D832A0DAE09380503401D791100D9F3EDFFB4258F173B2492AADE086F38A24F52063A8F7C7EB31CF815BF90CB0F28ED567A85640C275FB62E9D2547B5E043920EAC925052C799B028516C04CF0FDCF7F707FDB16E5FC09DB74F8691F43222511CBB982EFEDD04F99660070ABD575B3B3EC0809DEE61026563B73026CECB95FDC20704E5C3632052659FB775A3A8EAEC74BD0B010BAC99830401376C2E478A073FFE85E32E0502852B543E83696255D48C56A1A2465299698543D829D39CFCAE71C809DFB842A759C7FE92CE6B30D4660D3EB44EFF69556E40497AE7828C85E36718686BDA1ECB78A87195535967683D8749758B573E48432E28BB30378F13992969DD5CCEB31E45A531BDDF0EFEB056A6CD439CF83435E84B9A24E66BFD0E648CEE1EA7E3D52155815A0867DB36F5061542CE3B6B5909D92C0062BACC9D9785927796289E343226D17686EC697473D8064AB0EF6C4A4D575A091B39027CCF43E6E0E6D3A9242CE944785F186565441B2FDD240CA047EEDEBB7D8B79864C939AF10140712450175771E9A8BBF01BEF3EC825111A29F479F025D9EA3A2FE06814141B6EF54D0C61C3FA2783C512D261BC6402A00488F5A192F6C176664CF39F1ACD6D5D5DF8C21D04BF537BBF4188B72A1DC2FEB4EC6DC1BE3199346CB9320E7D019967D9F5AC013FB208C99A80ED48616BAAC41B391269F43B1034E1CB31EB72C71C592572B12C25F20184324AE3C814485EE52FCEDF6F6CE7FE260EBB436FA6F1EB1B9A302B1168612DEA9542BA4087E9BBFBDDC23DD66CB5A0B7DC9F02878DDD17FE8C541B449047F114CA110B6664761B08461893236A29058346334F5034A4A7B4332AAD8335DB34C7FFA96F71753DFC253EBE1EACF560A335D3EBB9972AF44F86A9CC55D75E97FC2D1C33DB8BCDB3283C4560702300785A8F780FFD4A838C3266CEAF8318E831B492EB49AD9FFE81AF4A78BBEBDBC2A0A8823BAD2A2DED94C43CB11C08548429BD3B5D55CC6FF12993AD88F9DC051CE82DDDD6B5D684F6148807027EE6E1B097C4D23769F60946E015495A81697AFC660A0F1F728AA61D9B1FC033FE18CBAD0C0023A587462DFEE3A3CE8FC79046A7D6C905787F216881242E8AB49BF6B06D732ADE5BFBF8A3D6BEFB1426E5491C711EDB46AD5C20B61966AFEF1E0FA43EE3B8BC1E48EEFB4D9D0815744D959BA5BFF07ACDFC96B801556D39CE60FB595364948109500835AD94CA273C061686681D3872B2EB60E6336B220D24F45883C9295DD25CC02713AEA3C24C71CBCF3C0AD4566A1640773937E2536EAF759636DA7869026BEE6B9EB791ED35C8005C66BAEAAFA9EA0B853C2BA30B5957B1C20DCACE05D091D6EAD8CFFEECE993DE2F80D04990AE38565AD96829A0864AA19E1346EED2F97795C790D5548879BC8B2AC02DA521CB4A1DD0FEB71D07CC94B7BE8CF7F51943EC2B38BF3D09B02B538EE2D8DDFEFB4D2AE32AA3EA13C9BB3724124151172D88FB69CC97195723DD51F95439D350834FE5F7D74A2554946F061BF6B16BE3685C6E97990F2EECFE9C19CBE9ECBCFEE0A81F7229DB7091F94A7FFE55A3823EB0838B945BD49998248219762DAFC89921FF242BBD5598BBD36CA2F86F0DEC0CB53BE3C8E7E08F383BB26DDEA7F8CF048607ADA95F32BBD3E567EDEB710655643B0A7548E20100FE825FA57F50DD697B4EBFEADB36B8907F24AA22134ECFC434DFAE9DF17986284CC60628CA25E62071899E71E6F22B4AB25505F35EF6CC81BB95E6036244E741F6B1E1FE3804E7A67D956F4B91C6B2C46680DDCE80C87D35779697175D8C97AEA02D77C33C851024BE40E02EFD7058A8A920192E85E4865828710D0DADA4C1F810DABB5E095E9B8D0853BC190CC109F4B447B105F3988D5C9019DB33AB4E53CCA360B3AB10FAECACB50F3515200FA7386ADC28F894B04F30D4F1E7C83D5A32B9CDC1D89B1E71367D02CB3C7A09BF530F0F4F3FD0C6E0C25C712367B6500F2FFA9B0AD75FE5565ABA90417BB302A21B62C69F23925CED9D963B7773D9124E17B901BFD8EC167A6A32B63BB5091EE97D550BE582F6D3927AC282D655AB71C8618BA0A15748BAB5A6D1C68871E5895EEFEC0DA1CAD4F5E6B24B8126ABAC4F1F24017C5034B0041ACFAA9D47084797AC0E207D8C60810CF37844996F5C0ED83E271103158F47352D880A1C0A70998FB3B566299E1380F736FDD87FB741D5B5763B074F96F6CE544431ADEF5315F9C3E582E148B35EDE7A4261AA89671A2C071D8A038CED0D5D9FE9F849647B811A5FA4199DE223A4F3CF886740A0AEA927A4B228E9889F26251D5E63C2C3313DCB456746F348935678F0BE83539DEC70723CF49FD09DA9223F7CA3305A1FF73E699F3956D6428623956F8E3D71178F5AC957F2656CD852422B6D5FFBC3E86EE7C4235F2C42AF691B06CD0AA328E8D6A8E008917B783FEBFD09C72F420CD45B30EE9ADB71FC0E4F80DF4A52E48B85E2075C76EA993828E9DBB3CE47339E40DC4C1CEA2C979E7EAB277E9A0B4DE33D0CCD1DA8A51C92DD3918CD61FCA18C207BE1141C9500C8C98FA941CEEDEC759E85DC5FA501B979A096663A70AB011E18F497FD30E5678417CB6236703608502CBA0A5ED4981C02FAF17013792C2CCD3BFC7B55AE03862F02489C1EBB89C3F089710DB4EEBAEC5D4994612B6A92D851994D3AFC38B0165F55C246C8E56358F893886EAF240E9CD2D5674FE5492A3DC87A3BAACD8C5401C93F02A98DC3CD2957FE0A61CA33B124BCF064D45C45A00039827335F2084821EE7047625B64DC7830F32BF900D077F9EFD96AA9732869A07D39F6EB72EA74262B3EF3D183B5CDE6D9303CD8EA342C6CAEEA349274AB2D0DD5DDFF9D5BD0EFFAD50677419006B1B4CD00F6423AC16FC640488389B0B0A735521663894D7265436624BCA6B08FD5D54056A920B943B569A092CD36425244103FDAE4FAA714B86A3C0BC63B19E5E2154F1A7582F7AC25263A4829BDDD77713A753C4AF8E3C33EC492F771D0DB57F26F9BDC89C0264897E5D11B6439B8BF89012CF1AAAE25543689FDDD21A135EDC85A3D485D172002656D508DA0DDA46C62E01D702975EFCE9252D537DBA01BAEA72AB93E6A1A40924159E12BEA3B41212531DF247D14A8FAEAA09C8AE032A9C97512CC1AFB3B101BFD5B30990771501CD2E07E83E5A1FEE29FFD09281CD3A7EC6F003E74AEFA78F6B161303BB6875D1B0722DE26F37AFE5E2AB190A8DBEE29B8D7911880B1C033AB8502BF5218E21C7B30A868A68BB506924D7466B840ACB68EE5BE089F1AF1826E5334055E6F97AC14A8A17B92D6AA9E95C7D383E16ED11FC07E75E7A3370890B4B8C20D5AC852A8113A2426241943DB71B22A575538B66FC0A705E18F302E6B6DF3BF29490342E2A95CDDC9570FE3714D7D55BB13A5CBBEDC24752667EF4D866784B3E181492EB13888A8DE1A3A199F0DED5D327414C9513F77607D3979BE7A030ED0C61D91F64384A6E034816B8AACF984A65AD9906197F320F8D9B49303FA6F4ED2AFFF95F8EC0F5C154152C2369D31D1DAB27B4676C1CB6DF77F73D2EF310E4A7CC01B505F12699FAF3887F65AA68478E9277A825350499FF6EC6494174D412C6FEDBA76CBB8258DB6024C6281FE22AB075041E1EF1709141A85DC776D1F820645A8CD1C4B14238FAAD96EF884BBA47B78F0917DFEB02B1C68D7A306AB7F4119F7465F8EAC95544089D3FA64C9523BA8E5CCA26FBA32C78E22B81AF17E6C795B1EC6A2E9453E1BEF30FE16D28AA47583245191317BF0DBCA83D48DA3D9502E0529847843ABD1CFD76489E72866C5BF1A97DC18AF468E2D19F35EA8887713560DC13CD4A2B924ADFB4490BC1C73020A4994D819A0A0CD4DC8E7C7CAD302CBA4AF05584796E274F513A648639C80344F549B3DFDB44875BF2BCA5C21C1D087474726927F48898B8C0D8FB7AB27D5D34434EF10713DE4753161EDDC6E3F716036A6B5001EFAB80926BDB260AFB739C5657F95BE7C56043FE3F5CA9B05E0D65928191D59ED415B04A6C2A157B1D374300EABD1F5CFFEB74BEC11930277E2742DE5A8B138C459977DD29108EFD77988A8E89DA625D85D3739321AF5A9DEEC5767DED59E19E656A8527D4AD642427C7436107BA4BD3B14CD85A7D9FDDB0FA1F9BB926FDECD2866ABAAA36A3D1E1AEA51546A44E17286ECF529622221E6E894E7EC97AD42C7C4B5D88B964509181A5E7223FA1772A2CE16F61710CF3E9586041496D7C8229FD9405AEFD578A7E9BCACB7362E12387AA2A8ECCA01908EEBFA8DB04C7B7372756AAA6D5784F704319D1DD91B17936FAE476E51108299125E5F85B5CE8FF387D107BFE93F810853C099921102228CB07473CE163EF395A7812ECA7569DAB5639C9A87ED7E94D7641C6FDDA6EC07DDF66E13BB6B94E025C433869FCC4A4CAA88B788F99207D2E1564C731C387B0C117BB6B74ADEA27887A4D165A075055288BBE4B884DA6AFDC3296FC7E7213ABD7022C3ED95A2A4DDAFA3B66DEA3FA4BBBE63A07A39D4C664EB3B47CD77EDEFAC1FAB9407A5C8E9147EA8EF019FDC2DF9839A9DBBCE78700BEF9977CC30FFF6E2671DF46D84D39B4567699748E6AA5D73E8E1F5B8C92B3E397FA6AFA3707C4382D03AA1757E1738656A3075060989D093097329B5313E0169EF52B3516CBE22F1A178413F8A2E855E3E9B260C148B5E05032619756AA4F48315B1C806235DB23D2FC65810DD18EC12056D417C41770647E381933C159AB55D41E53531637F4218BFA2B1AAC929E5551A7310EE47B517FBDB33D9DE037EB96584C4CCCD789A085E98C0E263F26810E18F136C6CDA34C3A77927061B8FA0A588051E4F319952962C44024E0A9EC8D2B35962FD6A60C54BEA031CCAD6EB6DC8AE19C23E51249A47D9BBA965E612365E16A43771ED137D1A1BF4F7711B16BCB93DAEC4B67016BCA648137FD32341481C5B02937528FA1D81FE03858552002C05EBC58D9A1068E521925487272308AF6F5D1658EEC3D63401EEF473001C98E32789ED79469C6811FE19DBB7479E9A787E91ECC6A85CF0CF27EA985EB00762835C3CAD7CBF55310649883A96738AAFD0942918B9FE28F58C2B99367AE41B6A97A460D1D824F93382826FE408E1BB35876089CE0814EB4BDC69D27F1125025F26A7234D2915F963E2F26A829248ED1BE64D2BF3B6544A1BBE6E48E50B3654A1F7B765D41FF34C54D5AF852847ECFE84DC558C2305F4FD32EE2CA7AB1C2BA5FB02182860267986F683FFFF0E852BE918905F902C20A954AC39B1388B3BE133045137FACD5F0676EC42EF0BB59745E561B14C9C068CEFF3352917DD496385635DAD2E3128CE66F2D0892C9D2017E3AA5DDFD92FF7B836C536B16BEC567D7F865A6BBB13F5F4AB20629193DE3F4A15E167A6D5C8A7F8DBDFE2590F9A93AAE99FECFE5EC62D96362271C8B5BBC6FAB6D0CBE2371C1260E0D4A38A1D8D0EA66548EFDE896D5DAD764091CE9F1CF71EC0E680FB444035E71514D65BCDF90A4EEB81D3FB59951633C48514C1256F076F482C76A2F776E3BEB567F98F4D67512940650C44789D05CFA63D10DA990A4FDC336E3681104D8BC7A1384EEB2EB9EFD4ADB47D4B6503BD2A12B7EA53C81CD3640DFCC30B31F8BB3B974808EBFB7798FF7EB8941271FF764957B5BC7EF8B5B202097874B04B224B62C9575D119AFE07EE4790CCE4389F83E79A760E11EEAE0DDD17141874B74CE50D7B3C026F05EE00E36FC70DDF41B5A0BED583FEB9BB5AD82257913A129D508F601D4A2ED062368AA473B9FF92C80A1207589E59C68F101E22B97949B4F2BAF72CB9E64E294444D83D01A295C873F869B0474057632DE169BD3C82594ADD19BAD60EC7CD388961B61CD1484578613D23C4D9FBC4B0509089444F2F1AACB3A13C7C89ED697FA7BBF520ADA7824E3FD3BF31A57E8D2E23ADB697FC6A7A15E0050C053A7F97809AAA33C1B99E84592D225DEF6C86F4735ED6CF5A5194C35460314FE59C91963C150CDBC33D9A7CDC29A239B324EF7224E423D7D90C7D834779CB78EC81392F0FCFADE486465D6A4DB3AD2AAF1BC021B81D4BD22D8F85A0E44544F90AF46D5B41CE2CDBA577E79E209C0B922E6E9AD8478EFA6BAF61AFFE1D9FE921741E9FB677CC8E00E6A41269D79872AE844F2BB8463E4F73F9F3577B679D892D3A681C53A9609CBDDF190A02B9789AC920D42319B24A2C6FE1E3FD3C229D0526E00A8DEEF015BB38E4BB68105B63CADF9FE84F613EE2DA3732B2F03F6B5B611CA9A67162FE06812AB4049D7D3BE7B5941222FCCB8F653F3A59639593D5942E9112849380A8D7C4A00CE6F487787264B11D9D1365CF2F1695CC9EEB75F3448AD5EB130D274C0F8C1545FC738173302EC523E3F9188C9009C6ADEB79BB2283AAFD16887A0FBC5A2289A6302560568C4CF5B27DC1173DAFA77C605584AC97609B7A73712A4272D15162413585F4E3DF7795D5372F140DC702BDA4764394541D5FC7D79C44F1E210F080328D340BD4C07C411580E77FB026F00D193A7BAE0FEBB542AFE54D9C1E3F8080217774ABCBA03B09A2F9322CFE18A1F77EAB4A8096D7A64B7AEA76B15452D7A49D738E33A60E42A41F57298D09BDDCF2F3D51CC338F9C16E9FFD57B810A7C1599C34DD13627F338851EB65F21472166EEDE8191ED98A895A741CFA87C730AAB45083F8F00368610E2410A472EF572C28EE6849BB4AF00D2DA7082CEF6729EA4CDFFE58DCA41A453181B0B765A32C1AD73412DD20C6FB1DFCF99173E8C72C3ABE9B80D394EFFD50354F8D0850F826C7F8EDB07D5A2656E88E6A79247502EE54638FDF588C06D0DA7C538C493BFDBF1070B053CB43138D2B5D872C13CE7940E4B006055932AE74CAC205826091EE4CBB3A82A36DF58188322177FAA4A8C646D60F48336A1B5352E7D07D44FA0BC8D85D414FCCF92A0C8CC87543BE944948A1BA50B632E0A6A811A8A2E04DF76B3308B05CD1680C2E8B71484B4426E294BA9498CF54BF7198F453AA3CE3703B028DF660B23555525E1AE82C55BD14ED4C3F4875CA89B846B16F6C8A372D49130C112A7D84AAB5F447D3AF2F7E6FE7CC2DB06512C170FE2478EBBB0229D47E3C2AECA7C961D59FA09CD5727B4CC287ACF3FB9C8606D74410A78C3E9C5B4D9A25DF6CA68789B035DBC1E0FF481406AFBA5E8DDBBAE592D4C216FA6A23CCE351CC83102E4435047840A04050411FBE0213D9A33F8F736AFF62A9781C7D40F4D6333CAED8AD978BC4E571AE39516A51872C8E67E39450119A8F7A4BE8AE905CCE18B56AEE17A3C6346F1883D8D53A4B65687DF92BF9B10077EC4DB1D25C6D00005C1D802419FC697296FB063889BC54D5BD065C1A6AA4A53CEFB4CFD214B2D4C00A9DEA47C315975E31E3EDD665DCA263EA0B97402CEEC9978F55D061D8E93E7B1884BE1ABB361E79A5F3E9096BE00E4F2E405EAA5EFE0FC0D226C50EEDC956C7806AC701227E7DD6216166C0089AF741A19390C2B7FA12D2DD010736054B823501ECCFDEEFB9EB24D2CAC1101541EF12F06FD226B843B6140DCE9D6FE8FD27E9275DF6968F937FECDB8F962AE7CC518BFA1BE4612F0F6D0977C1B358B185208C2114736C088DEA4C69CD06DE9B478796075FF7DFAD84D95F8214D881E138D262C6E937621C385D77C30AB5B218E9CF43F3D50751FCA981A527C832C36BAD8841B6377B3F098BE23D462989EEC56EE7F74A2D9B7DC3E65FBD76E87A3687CEA95906BCC23AF1F297BAA266F13DD52242F1105C8F30DF3589404F52C0995070C5FEADC852094763A6BFDA88A9A050E16162AB1F9F3307BF03B6EDCA84EF4FAC7E1665CAFD6A3CD40CAD06148D72E82A16153176A4AE8BF3F996D30EE79442E80F0BE9EE732AEEA225B87BFF5FAC1BB68DEA22137CD67063E86304E0367D262370811C5B58D010622402B4B2B69EA5884F62AD8B1DF9A11EE0AC5464783BE5C895F94D2B8CD05E429AEFF4D48BC7CA1B21872E09A0F64452D0939B8E08A174628D0F706CAE91C571038907BDFF3604B69FC2834F0A68A65B48B569E93490E48170168F53B62F6B8DC8C9194C3FFC11DE3DD3A4D99DFC51365ED1F9C1EF39AB5FDECB7D83359065AE4AC60BB9DBD8280D13EF2457D359203EF0FD460E2A3FECE8CA4E00E6739F5DD983A981E3F221DBD43126D5B8335552A8C1642945DC58EF71DAED9E663CFEC1A728AED1816046399E8B017C69D09B974F9F3998D654BEB3883DC3B83B4E06A28811F113A88BF964371F4DA52731DE639CAA59EE86A1C25CCC494B4DCFF988C73409D8233244FDD008182714D28E79B0E289AC39DE6A5C646920156EC741112D5F69FCEEF23DA0D24B319DA28EF0242C42490FFF11780722C397E745860D25C29B8CC8762230D2CB788DED6C5D5388DE82E5C40C1DCB55D63E09244F3264C948681A3EA6774BCE3885FB3A8121E34D1AD45E7699A824C3CBE721A79D2B7C6DD7A1BFDF55A5E3356647F19E2869E9AA53F9CDAF6626DEC85ECE05518251E69FEC709718DAFB388EE5D0B89FC982B12A9997CF77F297B593FB2E88630F0E124D5FAADFBDE9A4B14B1161D90C2B2EFB88ED318291C362FCF43DCB447E4671E9EC449E183EAA596FF722C67C38659CBCACC80B4D4E420068DA8636A103DFF603947DAA60D96D06830AF232DBCDE57D9DEE3B8915F17362A33C5B0EE7EFAAE2D8F3C201E344C655C190368307EF59187A78C4AFCA72B8C526A488A2BA67E2A7EFF7A9711C8C6AD745581B675BC412ED411F3DCD3B63E8CED0E58E8E53DC6B36E462069FE4B20A6BE0876B14898B905ED017A60ED1D58465528087606B7DB03FE779F43FF5D35BD5E70F1F3A3265D8805CFAB1E324ED9A2CFDD8BF451A8F7BE87C0DBB76EF34766CAE5AF614E2E3E4CB65A0AB737B4DD0AD82ED46EF7300EF031F21BC817B61EC209412DC90E999FA7E2734D17E245016B6B8E88BAE2313E2737CA68A3BD7354B21AE6869486920C15E547336A5C42036932CF7619B91C3988723456F28B23152F4390DD5C454387C0A29C4770EAE5659FC7E73E463620A9A932A9036D42B7C7679C7EA113C72523340D8230A1ECE46F0F212EB2D0CDFF71DDD9D11F885655FB52CCEA5D31E82FA799FA9AE59B9517DB2EACD5730526529C143CBF0AA68CCD2A224B182FDF6E556494BBF8255AB95001916E0BC3E9098FF48CA5F3B6C7292FD84654C042711B01DCE9E6A8C6428362801535B08603D4D5D333C013DF88423BAA47B26CD4297CDA8D2049BB9AB782060D7874225CAE966B5BE367C1ED1429FA95FD7A2AB8700947FEAF3D17BABCE39AE69D1534A72BF305C66DE0E8131CDB25FBB78DAA20A40EF92526F9D9D5D9B85E80FF3EF2C48DBD0B55ACFF53263307EA375D1BA300003117507E0014DADA3A3F9944846DE0525673BA96BB67BFF37ADB55C4E20FC52F67E698C54469B88345AB1C7D7B5B6FBB54BA93D9A74B8C888D4F26F33F09130DD607074C0A597FBF2AE0ABCDE574C0C94DAED83F3F1D63C2021438F85CEE236F6B3077DC8F7140EE45A9DC9C15DF2B0A98DEC0CB0DB6768CC4E7AEB4F2A7EA7A66E348B1C0EABC7423E60D19303ECBE2FD4C76AE58F2031DE9C22666876C4C56FA0D14BF54E4AF4B265138F0702C18819E1D413338AEE9CFA37808D96FA0E9E62581555E6A71251D7DBC2C30DB85635E3635E72295388479341595101C8B1EC8D525B4AE9BAF6D89DAA7C179906F4AE84192C91D5678E46889BF79E4506D250B12ABEEA392E1E86623994D633E8B9DF60AADE63554E6EB408457C077EEADF06B10D9619590BC5BCE34C7061A700890A1EAAB84AEA1E4E970FFDAE7C").unwrap(); assert_eq!(sig_act.len(), sig_exp.len()); assert_eq!(sig_act, *sig_exp); let result = pk._test_only_raw_verify(&m, &sig_act).unwrap(); assert!(result, "Signature did not verify!"); } #[test] #[allow(deprecated)] fn vector_slh_dsa_sha2_256f() { use fips205::slh_dsa_sha2_256f::KG; let m = decode("D81C4D8D734FCBFBEADE3D3F8A039FAA2A2C9957E835AD55B22E75BF57BB556AC8").unwrap(); let mut rnd = TestRng::new(); let sk_seed = "7C9935A0B07694AA0C6D10E4DB6B1ADD2FD81A25CCB148032DCD739936737F2D"; let sk_prf = "B505D7CFAD1B497499323C8686325E4792F267AAFA3F87CA60D01CB54F29202A"; let pk_seed = "3E784CCB7EBCDCFD45542B7F6AF778742E0F4479175084AA488B3B74340678AA"; let opt_rand = "EE716762C15E3B72AA7650A63B9A510040B03C0FE70475C0463BBC45A0BA5B79"; rnd.push(&decode(opt_rand).unwrap()); rnd.push(&decode(pk_seed).unwrap()); rnd.push(&decode(sk_prf).unwrap()); rnd.push(&decode(sk_seed).unwrap()); let (pk, sk) = KG::try_keygen_with_rng(&mut rnd).unwrap(); let sig_act = sk._test_only_raw_sign(&mut rnd, &m, true).unwrap(); let sig_exp = decode("4A8AE2C2F3438CEB6209BE57224A493BA5E5F91E5B65EADEEB5A8343306AAF64C29A8D7A46B9748CCCFC0666C089F85D99A83E65C0D9EF9F997A93DC7361BAB38FCDC322F9A1428212E6CCA080BB62B7BB728E5D3B0E40E04AB7D4D3BDC2136A297EE79F8AED38F0FAEF46D10AF529C871D5A12EA1F978E753ECE5CC16A94DE30A2077D070A85D01EB35962A30803A60225C9FD6BAD91E3989E5C3C220A3E0BBB00F37CCBD3BD16CF01F9E80FB818AA04CEC364D1C4E66AC55CFC97C71973EA1418CE96D91782080E2D3BF727D635E4D35BB45FC7F948AFD082DDC697DA9BCD3248D5703E61D3CCA7A7F32C98EB260D78C14EF40C1EC5395DCB0751EC4F8ECD5B5139811E26F6DAAF4B62355BFB62F62B6B946BDC02BF1D5388E279F918504C7A99F446E8B13E510C41F19C17B656592164C5B5ADB64E6C73B3136D901B328034EE5C736FCFE36D36EEBD9EE29B496477A435A6A599E31B96354D74024DA0CAE5412A5210AA8FB58B3A969AFBF94BDB62B3F42E2811AB853359651A06278B478830991E729BAF74F46A8991943E5F77680DB5F8EE0BED282B3EE13B533BA679DC18E43B6B1851E6BDF402AB44601E53A79A28E17FD80353EBBBB53F91805C415392153E7EE787E5C53CD1C3764EA35535D43AD9A88C1190CA6F70B5B2843819C23629E1571F1A48F530CD2F510DBCA1537B635333F1F17FE75FB49302F0E00625D144748E028F71630BBC98EAC9DF503BA18E41F60B0A8878746FEFAF3B3BB03346EA26732787DA895F39297002CD28DFA07F924662ECB3DE5AD3D7C11B993EF4145BD9DDECF5E5B1064620C3CADC00295F94E5D4AE27182A4CE577BBB7B3EEFCA0DE50ED0DAA8C16D2166F010368DBC9C17D074F33110E4B28E311195A1B423D1FAF4AE1665E2243704F7EE39D41350B7B3E8AA8FD8C2655B19A015ED926CAE7AAD6C5B731590FF3D1964929B668D76D6B3EBF98FDD06225835975B496E97658C503F3F419EC66AE130E2ABBF98BDBA329CACBB0730B6D72332C9FC892C0CB6988E0DC03A8370565EB03E042B385704D633B334068766C184D1A7AADE355A4E0AF7F9703B4043A28957DDCD5A62F59B0223397DF3E3A94E2131E94452E5D113BC3432F79D1023C4BF16C21ED7FA136318AEDBE4F3AFDAF41D4B8A5E3A1931CDD75A030D420F25852FE98141E714B012352E473DB1305FD67D613DD9DB5C489125DE54696292C8E4D5C83E998C89CAA1DC6908E1B8C13B0CD870E9D2E151462DE4E120B309A11EA29305B678D570841E7B339565DBE2BDCC8466F211923D09B30B8DDDC10E3F65002FA4C602A8487782E63E54DBEC0E77F164DED3FD806CCAF1DC83DD8FD31C21F9E025613270D660ABC1D45DF3F57EC187AE0454993D48B7F35459FF7B6CC0E25FC0536D85310F235753B567E1A72565F214558DCBA1348C1F3FDA74677A1D7DA8DF433F3AA6F2C92226FA14BFAA3DB4E7289F377D4F1F9A5308F97F105FAE153C3E2A048798A17FA0A4C3073E62FED51ECC52F42E2403302F97E80124667C4C07940DCF7C96CC20EF96720FB8CFD1A9F78DCDE54235CAA26DC8BE1D2E6B7985945E195CEDF3487FF492A0FC61E44087943CCF093B9C1ACF689B2FF77E4D1DED1B372B712D7489E9244CF94D2362599554572BB4E0EFB2A93EAA6C8297C997FDAF09AA4D31B51C494C4AD06E78ED144FD5F365E2EA3C295A006D806566E20649117E9B006150584D31016DB182F5DF74775873DBCF1153E0F5E49902460667F7DEF85C6E9DBB3F70D65B3E71C6A52BC7B76934DC518AEEA0300C5902E87E6FBD57AB1DBAA6852FC991C20ABA3F116E60379B2DC5ABA5966BC83D1C2F175AD982D4777F4C9B40D6AD48D58C2B077C751BB44410D9864202B4264476C30FBEF498726FFC012E2B691D1671F5A9B6FBDD6BD2D066A0A4FACD4FA9746FFC0C4B347BB9BAE6C1D9C82288AED1FEC614ED5F4E15BC89B70A1DA19CD456E37FF5AD858DA2BC0A7C99B4A83B28FEDE2F62D2B0585CA8C05BD47E3A30B3869E750FCF08E52A30E773FDDF26BFB6132F905F5C174EB025D9FC1A832F0F05699B009522E3BB8AD3D587942DDEA53EFFB9324D28D448CCFB0F09696BC2F83C9A895A38C50415490393D9E2830D5430215D66AAAEC750B0F7D1B275386E78765705EDC2CF150C991EC91ABD10B8C5E1926963BCDF7C6E328659AE1862291BE48728B7D15143DDFF6A5C357BF0D14C98E5B9E678CC4F506C73A6488116BD25E2902EDDED67D3FECAC421722371B3D11636FF79E51138B49C87569BF1EF7540840EC24266F9168C03FCB7C630458A3869BD36D5D187AA90BC13D91689F329469FE8842D3809296C2A5CC890667DEAEA0830D3D6DC72329067271D7E40D94DEDD3542A2A7FBB45FD249E844A614706F311750E15849219EAE4C24E412A87CC16AFF4D0580C0239DD601889303D561C15CD9DBB73D1639247C0AD4C77A1E11BF2D187BD83FBE74A6019854586EE72419444E27814D2D163FF6F58CA869447609A51507C675743D32693669FE29B275AFD87377118B020EDE0962ACFB8ED06A3C5AA8BCAE9C8917123F9AE1AAFF4D629029876D2C61AC1994787E6B97B0DF5E670CE9E38237FD76D72865D676CC570B3876660A88F4322F6D40BE34F82FB22A46CD1334DD40ADFF9796EB9BE64AF2097F57D08C3B46451AA5251BE8017F8FD2C493978FBD118DA453E1AB9F04A5C8C373703AF94AB6589B52509200E203427085D2B4860F3A7C64D5181D578721A686DA2DD81E7F3CB93C460A3B162C6F9493EB4FFFD1086D9BE720EBC4050A066C877FDF47E90164ABC59BA0687E447C1D2FBF676929D20193368C4DCE8229EBC6A87E50DB70EFD97AD09706852A0F19B955E4B79A7EC8F8C7E9E9E9C6C9A70B2D91050C41BA04DCA504472DB794750D58AA763F36DFEAB3CAC652816FD4EE5184D39D5056380D05F528E5A974078536F55A6CBA40D9F4FD51E1DC22B53C4FDA11029C81BF3F7BB99C701A938DE3E82032D7E98E5FB4DCEEF15BD8F8A011C4AB44647497A2886C0091CB29212868F1D203A867E154F53FA64F30261614A2850B92FF4EC62F9CA9B1CACF44D48749A07C2B283B6D0D337E2AEC9683C4A2A4B78F91C71A202A844E9ECA8774E10BD9497BD0C46F41D4751B78E2EDF4B8250A505FB0537FC955C5CDFEAEE550F6896269ADF8BF754FF1ECEA52E1D669D19A91FD2B6F4D2F5F59634E64B49D4DCF7B7492EA25FE10FA7D9F6051F24EB8177243277D1FB8CC91796A303543CD5601234002C1578AB912064CAE75D2E6A680F2E43669BE870ADD46E6508E6AC935FFB64CB0EBDA01DF50C81FE9B564ED7349CA621CFCA25304B5C1B99D3518B4303F8465C3D9B88244C9BF8183A8FABB8E947C6C0DC62567DF618CD3C991FF9FA830CCA0CFC6F2BE541480871F3691216B8EFA8D97FB253FC6D7D6AB3EBAE3F63A17AE123A4E05C84AF6E5FE8E518EA96502E1CFA5528FD7097477C5EC5E4F659BD3D30993E557638F06311856F00A3449CDDC832EF35A0425F2F3660DB437B67FCC1BF5D8389CC6C9BF9596DF366DB4E559F753AF7E515DCDA141AACEB8856E54DA78D72C4585875EF1FF4394139DEDFBA0E5A9D56680B952DFE758F56E848D3692B0C97D5E48EDA94DE76888DEEBD459DCC764AE16C719995A2AEE0CD8B3169BC5EF49D45C4BC98E415B2C6DBC5B922358AAE7B0D5C28D9E62716590EB2CF272B0723ED9025C2D713DC58743B7039C134F25F1CBAC4D9BD0B23B0467E61DC2F8D6B67B21074F1F9BF54D37FF2FC1736C8700A08821F5019908FF431F856691E5D5819F4CAAF79BA70FD4F689A01CA3CD2CC6613832EA3BEEA270001E34CC42629464E0BF8655D840CD232EC9835B89367823267675B85BF633B6845F1485E5CEC72BF41E1957971A54CEF425380E9D951C8A4424AF4F7E529D05B175FB1959463B1FC980718D8D80504AF00D27FE5F6D6892815003823074CD438AAC315EC9BCD7BD7EE9D2D22ED3D9A1B70F0DE19C7BA20B7CC4B783B21A1B3CE8D04289335A0AC05F20EEC0842202D893315A2BE3E07BD1FC3D1A1A32060BD981C901CE421A5CBD1BE7EA254469EBF338A8FCA1422D96CED7FBDCF13BA5BFFB9AB1CD3A138A1A45FD772269ADC63AB7E47BE9313694D3745223BC03A92ABB5A99CF6D1C0479B19968B44623B1385D29D46599B422E91978FA0F3143FD45E402354A67B5FF9A3A4D6C6F2D8AADF1CA9E719C6C658781E4B581DD98B7B8C65D441027D6C3F8A7582250B64499A1E2B202720D5482E1BAD28DE8FF1A11DAD03488DDE47A515FB0F26F1F42944FD29307798AD21BC65AD6DED02354BA3B6CC3357620FF96C147B665781EC1274E855D490E098A669968378F9172F756B09EDDC93AFACC9E51A9D30C7ADCD3868EEE45D5F08160F023BD93A145FECF320A92D3AA432A7DFBBF3507A2983AFBE82A833FA9EAD8D88B4FD313287CC2160F256F971A6697B49A40420BD55C1A68388E97087BC2D21681363F0B624CC67AA7945A456120DD26FE1D2EE3AAA2001EBE0885C1EB4C4AC242FEF04EE65ED8FE1E219081AA9282AB5B30A1919DB4B4E54BDED92381B6CA11785D9EA6A04842F2FF17199C1E53AA3CB4FC408FF65FB4E4D231FFA6D50A532355FE50B40BF871236B6BB2AB10E4C01A082FB1D18D1AB8D1CA0FB3F1456FEDEDD17CE31977D3C0660D591A2930BCBF6F43829AD6F94AEFE8F40A9137FAE20E5CAA9CFBA1912392227FC3C75D9B7CB0ECDC9437557801B67F53E42A49BE97707DAE77438C0529D407AF1810CB876A129F91FEBB4C436E69D880C5F02074454ACEB2A43E1CB389E640D82C09F60158E36F707C2664DBCDBFC5AC984FB65C00822230A64969A7ECF44E52827BC8BF8A9C0F9126842980ACEBEC8690A18DF8CBB0C007E6CDC969EB573FC984C75557D0D0811730F66F7EF91E149A9BB29022C7AA571ADF1C8A68DFC10AA830C70D2D4BD35A7614BE261CFA28C633C6E28013F90211B9BEC1B8F02D2D2F913E254B41721B91624B3E374BFDB07F0AC1E68A3CE14263F128A16002D28C7FA7FB7C199339B377EB3402783645AD2428CCA1A146D4ADB6C67A59627E133B988074271B5EBBEB8C4D79A41F4F00E099E74A1CA189BAD342313107B2D64D0B6624DE41EF9799BB82105820FD352A6800D9E38339DE9FAA7044BE6727FFFAAF6B6623DB546DDB46D4F4A9D320B6F8AFF42BBD0149AAEC47F399C1F1CEF1EF68FBFAED57D4E6243EF4C76F0B02485C0B00BF77A3E6E512F1429EE8280F3471F1D88AFA9A579ED22E8CD7E2FA1850CFA468B6009506DAE5C802B1537462CE26097FF090C3666F0E231173DE6D7BE4D570E3E52659E703A4A309518D3D3B01E2E995313C889133D9B52377A15B6933CCB9264898ABA324F76510B33161EFB719FE012138E10D969979DDA0AC678FDECDE9CEDB2E4AD956A49DAD66459871B997F646D12B7F3C47A126BB99BE696618D82CDC3CED34E30E6483047E8E8F21F26807EB32E0A20FB5D5978A9011E848A61133B1FD00C0B46F5FE9E0A7A6629F9DD277636393E82BB696A24A01054771F0304C59DA56D95E550EEA84BD687F725BD8A52D9CF993A7CF10B714DF360C3CD63730FAED5AC23B957C7568CFDA1697804531D230FE6D025A694B85844FD5936E23E98E0F340BAA0848D208FF28E6C1696FE5A8BDC50DDA79B1B112082A2885E010FDC19B635994C5D2B59A3FF83051067588FBB56BA2104F0CC9D9B702810C3A8D03069F2DF0A3BEC40CE316A684537CACC13D715B17063678757AF583C77A11A4ACCB334592C7204A316403A41E14FA2C1F2C36C4609E50DF2C9112C64272EA113B59ACC0D00CCF85FD3E288A19700A7B35D3FCD59E72DAFC2447A0C07AA92D09B5DC19764A6E287B68E0346FF471236A349BA7C43F314E63B19A97436747B50FE1A0E1171C637529115A75CD13E87F6E849742B55E2440DDC476397888D5CAF7266E185E597B130EEDA2395509753B9A6544CC43CFAB7A3ED20BD968881A3508DD9A5D3B914E41E461925A6CBB110D3FAA5D3B80CDC98AA15B47D5283E36F4C9970B2A542DCAA546163E7AB3B3871684F2482E9238884A542E5AF93CF4BE005F4D04028B55500E6553495950EC0A1A54C8D80FE75DD4D1F84889E86F4868290D860E3C29F7A3C01DCB48A0440E8C7D8EA0925FD027603725BE883BFEFC7F8C997F6FA8EDA3B10BA0EBE89C8E311ECC2A39591BF4BE58FACBE64EE0E6D5304C5370B22808900187665754A6F2714FCEAE83FA38D6813F98F501DE5D0B369364ACDB4C358DE996E369465BC15337E3B1006FA8A8206927FBBB359F79E57A876ACABC3FCE4BAADEBA5011E592842517CACACF6E57C9C3B7F3ECE17A09E0A789F621692CF2E15DE370F18767AD26D79214D802C5C36D30756FFA8148121370005FD36D10E8E7C8E9FA182173CEBF1A3E779BC9E145E845C3784F87782BA0E4B75A970BEE75DBE349DBCC1207A8AB73B9E1DED5F6D7D2A657EAD76054FBAE06941E83AFBF906FE987352CB71BE7DCE262E25D5AB73D4E5FDF637AE09E7BFB090B328FADD8ED3C37A045A8B7B4E50D18A3F5FA3F53DBF7D31D0DFA7C57DDFE2CB19AC04E36B6695A62A9726A034F708946DBF214052F574A9122C4490C07C2F858FAC587151EADC98265256BB95D8FE0D5AAEF6FAE02F5280BF7EB953AC6E225CBF3CBA3A41751B290E8FA1DDBA0635C12CF61A73F6DFBB059EF7F22CDE09FF83EDDB65DF1424CB0ED694A1C5D5026CC90F2ADC578EA37A92CBF4D433C2479837915C01F95F7FA10DC33DAA7069976AE6282D5647EE3A19C74C961491FAAE4FB093E8CD26C57F1A763D83B7D4C07DEA4DE8DC89444CC97546648A47054A1D9A2221D5D432F4FED67B9E6F9F7D3435EDBD7FDA81BD506D58CEEE6B99A9DDA6D78029DECD1E5F63C5A88AAA42F6127894026FA0208D53744F9E6C5B3583E0763CF125C5C2A0525A7811FB434AD180276A3297D9621EBF6335A0A9554C6393D6CA790434072D29807A7FFB64266F9D99376F2ECDA0345AE9059459C980FED537DB69983EEACB52CCBB2513798EFF28AA8F993BF178A20599626395A3006B4DF7A826C9307701B50E94F2722A70938FF9FF10A713F56D86F1614A47A63B46DB29E7944902ECA21473EBBCD154D0E373F2465F4B7D6856C18E06D191EA536BCFDF74D80B7BEA2484FE7CC162B64AE0B839A9BA5B8503C6DE01E552D2DD68959FF2ED96EA724866D35CA06109EA7D306FC6B8C2FB62F039A127AE9863B791EACD07A94DF8787F3A6A7903293E08D106F031D475B3E91CC545482152208251CF470F3B180C7D7EE1A54A767585D9044E61602A6ED76132A3FFAD6B2EDCC278990232C8FD6793487A47B5507C169C11184B104B705A115860ADCE3E734CFAD3D61D7923E1D8B0CE81CEECBB051058874C7DC990A74A0B0F6B52EDB6F7069D7B561BE38461D30D053C514BC9E4EAAEAD7D657232CB2E9F9B30DC043AB8FD55EF87DE57CB6535BEB01034E9DC0DB4B837A5748CE195306037B666E49D614CAD0B6F19357C1AE743B1F3967B2063BCDDDC4551CA478D042468A79936D1C575FF6A86295DD5BD1B935780D7DF82D8F167899D3CBF09DD437901DCA7CBB8BC9F71A95C95FA6C1722E129AE0BEC7CA929646ED9C53F762AA8DBC7B34E4FCC3F089C56E20CB0B7BF0D942CE08AD5190803BA5F87BFFF29903EF10D31135BA8FC30D7072065770EDE0F1B891A62869F466343429B822DF684EF4DD507218C1472FD99C241D71E90C91FB7CFF7F186894DB303A32F9C6AAD4026CE9A562C753ED698193791BA86EDE0D6D1EE988D2ADDFA95BBC2B7E0E1702984A7C4E96E830EE9F17213C4F0BAA270AE6B316B00E79CAB41954A820104E046919C2B6CCBC97C75D093CB6BB18665BEEE6DD7CCF74FEECD9F1277DE1F40E63D00CCE5B784DBC5A59D558C52E26538B8C943CB68A11A167FBFF2C9571A7D47147C98B20AA120EDB5844CDEB6548425576277286A544B479EE0A16C4CEA38B30A034387584AC74D907724E0E72F8E1053708064DCD2EC535C1708C9EEE683C08E4FAEC8052C3602C3277B36C999EF5CC04F69C4985E25CA408458407281DCE3D4F5EDD55468FC8B4B994AE65A14193994C6021D33B4FA1D33A7804F481CA19BDC59BA07AAB97512BD3869589183F8008D21DBB7043B0C75D90D4D15BDA7128550D2316264C5308D0AABEC28B5E9DEAE3F5DB50B582602842A0970156ED9387892EDB3310194C4C1EABBED95D368ED0A09AD28C65E8C0C8120594C044EA58D667CAB7622DA3C5B6AE3DD4F2B891D5A24AB2EDDA135806DD268021F6C4B231A39921757C441711EE5AB51E02AF324754FE56BD894CCB87947C531E37DEF498739522F815BC4672535453FD44C5B9F6FAC6CED0E14E00A72254DF0F571BED13C623603EA95570C64219C9A3C67FA2C0472F912E03BAEBCD0D52D4D22B68BB90BB63736220FFD08630844CBCE604A0509E63072358DA93E24A389F1514DB8C1093AF9F26809B4C065ADD3662E3D8AE4D7039915080D28883717ED21299BC829F1EE0B0C039F94931C9F92BA010919408F095F61224F43C8BBD8CA652E41F738A04BAC6E1AA79CDC775DC00B637837D022A8DC0331312ABAB8A6EB100788C4865036BC31783DC44E181A60CD7D865CDC75ADDC3DA1D09B889C593DB48D290436DC994E681150AD2014DE2DF79DC7925B757F32246668D25C1D10D8A373C4D73454B168531CD5D4B236280A147C08CFEA3AF486A18B45923907119A591135443768E4862C4E301A8F9BC1393B618BA8FE7B65BFD1C247D96347DF30BB43872310C124368E38EF0A94DF4375AB54C8AA0F5313F6631ECF4629BE654EAE0E8DE8F42FC655737426AAD4F3722DE945F695301A502590A1A50AA3623924E744444199584676FB3143496DE9C59A72541C83D9C67554E3B1368A59C16CE44852EA96269ECCE55FF4461D4A1BCC6DEB40AC696DEDF92C34B602728D8E1832F6AB96BDBC3CAFBC1794F041AD19D29D08A3539993E3C1E72F0F4ADA0B4503042E59FB96B370702219E95F747438C65E7CDE17DB8B7BA003D1B5773C0AC112A5E93A995E7191D75ED2B9E2B079083473C05040E0002485A94B8C349D86C14AE19EA01E45557E335E852FB448D514399B0B2FA2757BD1F19FF11A5B5F4B2A8BBA86B4F767D2C26BB0BA5816078176735A55E40939DB02E28D4569D581E8D7834A1F4B7F1420489A2ECC97945B8ED513E089EA13369D8747303801CE8A3655352ACB5E572DADAA520E7B4FA8DAF802F2D414460627375A20F5AE9153AEB7E99C8046E8B8F12FCD0A60EC44D4E52C64A09222258B4E8C9A07C11CFF6BB3D649E28E8634C78A6B1364878111464DD9367F266A6483E00F6E3F976A5AC7C426637D00C5EE137EBD31F9C487CA0DBA1FE7680D9F5C8A675683AC5CBC96B0DF3A52BEEB1FB25FBA713E4FE0EC14AF323FFDE60F66E83D7C92AC463E7C798A55D8BF9B2971FFFA3C69731A2A3B634884A154B17A6443D237C940C91CB8442650C9753F0359C0900FF4158ED3FD44A11E15D4F97A18C7E3C04FDA5110F97068DF6DAC2909346002A2151275D374ABEB484DEABF8B533C60E1F784A202B98DAC10745DC3FAF6C66F0F2CA5DA687F1B016A7F7D71F24552182D4BF5AC72995A4C48DFBD581622D2F7A691609383157E0EE594AF3763C20DA160A7D4795998BD1148CBB5B9175EE7383DDA0E90350D24B3D31B1C815785C33484E4A4743EB7C050B06F87ED36D5B06E8C8E1A0209FBBC88B1ECBE60B145B4410FD955245390D14977843F18E1FD1DF9DE2E3A0DFE44871CD106F9CACA07398E32960C68C20D359990A454103DC573063A6F24117DD599134FF39C892D18889356364A96CC530C9EC3BB277FF6FF8924D2B80EC6079C65D14CA65FE48F09E46C94C53F55840EA2F1B6B1AD763F6B259A9AB39EBF9C358D915439196966B7AF457282ED3A1EFCF6EFDF498D194708F5D10711A3A2949DB9EF756B41C012495DB2999C7A32C6E6EC1076E4DCD07EF336FA57424BA4892D8ED2961D6F71CB26E0CF23FD7B3BA0687633245E7C232EF0C2440F94954C18C560201C5919A221C36F8F568C10C91DCD2C7E55B31253E8218E6FD9602B1B1623103BC13B6581334CB05D524329F3E82058FA7B99CF837451CF9C7769AEF5D09BFBBB9574E50C9AD13FB3A3062D5B3157BCC227C6A484E795B83808D43722996E7002B4094E3B7FD75D2F87B4420D03A53603B50B7F6D772ADE5D1757CE34E0D714DDCDEB7D41728915A7597F11E1BE2555DD3EA6670C3FCFD8533BFCC0DDB310E026E25B07FF02694043ED05255344E4374C726BE526A97E78922D5E072A1899A113F953979E8B9D5B6CA7B82FA74BB5B3B81F20B8156B560E3A77B3DC889BC4B04AA9CD96E5FE80FCC5378A4EDEEB7155208ECEF52AAA733C21991ED00A395EAF2B9BBFB81898F7CE2095F0A8F024E80D6922BAD9CF33D7B1F461E9A213E80E35D1887376D0B759FD770E6EBE45D3B719296260EF63EFD4D891BAA5F3B519E17D1F27D0A96DE94E60D5CA519D1F7EF1F6EFED728361708EDE9292C357042166B62DFE6AFBF5CD762764DEFABC4BB4AED1F7F99634497D5B3895C6806E37B40697F0FFF3E41B9C7EE41FE2808B7EF9F145D1DD449E42C469F9E608E439C639E7CAE7C4D44933E635C31AB8DD8816BD9E75DC1A733DE9B8CCE99E5002BE1328400D766A1384B415D4E99EC90BA685265BE77D4159413C0F7173CE053A09EFFFCFDC52311C4CD7849696A29F7FB526C2DB5EE0FA11DC419CA5DC4D422A23CC446D1B3E0E6D5487695A68247BE6ECB35D2F37D3B1195F6C4175087D7B97045EB4EBEF11425E57BF69AA65C5E49E67951F045A719434FDB1AF79612574F9ED5A0425A73E503318F4D1D8832A7E2533E63A7C8364575B23E7D2A08100CC93E76CF2BEBB15932335D955DF163B5605B3876F50F47D3A229EE194CBF2E4B1AD7FB3523E3162423C6F5A1295E6776CFAB3F3491DDCFEB23825E2370E826E28752BDA06B9F9DF683F199C1D04989CAEDBC62AC21B7DF569AB7FF1BD74F76DE155AFC2CCE450BA2C87983A0CFB6A5947E646FB5B1316F1EDC70DDBFD33D1578E766F714EE1915AF38CC39D81C1CAAE5808B08095E28BBCCB4FD7E98A3CE8A36E742AEAE55FA179B011E7EA24A755E9716DDED5E85069EE510C22CEACDA2FF224485BF11EB50E14A22069FB15A279CAA18B65A15F8F12225260AFAE336D0373591F1133B3BF063850B3E75FCD1FA84384875EC76895D78ADECE1525489B75FD1728A1CEB52D340971C7617A43580804E38A2187D00193658786E836CC0AFF614EDA7D5190B117FC2FA43BA463FA3F1CAFADE78A21D8F11BBB4B75654ABD206D5C33E67F4F1903579B8728FE7B23EB2BACC05A1DF22152CEE8415DE39F94543D15973EA1EE12047B386FD12D9B09508BC74DAF2722565028D6FF114F958C1BF738533D3C6E4DBBDA7A3AF48BB46E398262DF1A6E16BD2180BD1E664DB4350C45678B0293B0419F054DAF1A822FF3C23C509505FCD30D69261AFB01E34AE4FE5AAFF5AED95D0010A65F43FD6F457207040F7F6D404B6B063C2A34F7CCD48F4395974AF43C5AB4C557949F9DF4D7CCABB0A33872239ED8A5D4B216001ABE0EDC479CADD85CE3DCFF9AE601B286D54A69749EFB05CBB3B6FED5BA1E82723DC2469281C0254EBDD1C2760DE4B5104767D5DE2B21336BE666B0D060B208E6AAE9D1E35DA1497E2B83A3AD9CF06AA5BD7FA60C0A52E71CAD80E99C61C2CBBA2E2C1B154E644797DA3DCE11C2212DFDCD31E229E4F602C2F193241D5FCA16D46EAB05D9A3A3C5AC55D0E09A459E87F576E90E2491763B9EE50A378A25BB3D8DF322AF95E36F8272678759162267D2890B11D433BB1A0474C41F55C29F3F3AB7461B28BE19DCF46A3FD21358662849C474557CF5DAF81680F9208B2FCCB6576DEFC748DF874713D38AAFEFEC2DFBF5D4888929BB1D54565487667D375BDC2C9AFD91190356444A2A091259E355F0D2A677CC56505FF271DAD9D39F01D75B5D6332AB40AE11992E2B9C0BBDC6E58F10F9BA3331923F33944010993910C780023A24BB1561641B502A1929D8A34388A5CDEA73B9466DDC68DE650A8D39F4807F3B654B797384B331A0B4C231A7679D8901A6431307B324E2CEC342E7027B1757DBD0934BAC02FED59AFDA0C346A645272484430B966539C6A43B3175E62BE225CFE376BFEB0331F716D81184B3BFBF4259FA38E568C8C6C2B86BBC77134A4D8533D58B4680AC4814A233B13EFA0FC3912EAABED3B90BEA0BCCE9986AC71A832EE3CD4ECD7764190CE3EE9C291DBB767CD7DD670C9995B05C2B58A5A32AC9A51BDF9A26035C99DB6AF7CBB16C2F3AE1881678841D674F17F30B4A7C6E82CFF9937C4A832953E232E13E9A222B3E6963DD4FFBBB50E29F886FF9240957ED1F6A16C9BD363F10C60CD572BBB98F78F80140341982D401035DB366F64AC59358A71D39D7CB33008B4C26AC04B20F6512C6379D1D91AE3D15899E1B0F50B35C0DFA77CB8C62538D2C80B16891F58D2F8CC527CCE014A03AFACCFA8DC5AED86214A2DC9F99A941D6F4F0EEEE3C1553949582078AFB1A65743EEE52B588D155857AD4CAE0D49933CD2F24AE6289FA3E93405D54BEFFEE4650F5DB740B7C5CF1DBA358AC76EFD052FE536E470DD58426E69BD1142F671D86274ECBD6FB237979A0F7B371F6557555574F26B1FB1CADB0E231D04CCBA56EB2EED5FBE15A52A2C3EDAD809C8A3F2D0F4A7CCD1A1CED236485E3B755BC4D64D8019EA84D63099F8B97684CE53D66DADC81869C1F0099D2071CE212E9353B1690991AED2538957148D985A7F091BC43F0D8CFCBE1E710AF86CBFA7B33718D0A19A81AE4E3D56722AE5D02462A08CF536FE18FC2CB64D362ED0EC79CF34E0CC3235C9B77CC26945A33E674EB9C3F7ADF7B10A7509C09B3F9C7ED0FE99519C3E3C942FF6809B1BC67E8F7B70B99D0739ADC17C6D68982B34774EACE30C4FC671F9931C7B3E00CD8190F08C6918A7951F06309D555CDF567FFF2FE3EE0C56939B6043A6334FA2B0744844D69869544F64362126EC35AD07F493063FAA6B68FF91118323ED73FC7974E556192B047C6D18EDF73226A25BDFA816F20907AACAE1A0C37390E09F1B3BFDE5E19D40A2BCA0D9985CBAC5B882058A0D1F097DEF7A87BE62AF9923E222DB1753F2EEC50543C13FBA59CE5546A26E409F529CB77E5AFE37B5092F1B439BBC63744321D6367E8B1A712E775C7992822B2370472EE29CB69C23DE18102E53CDA4E3856FB4DBDD998E77BB64EB7C929BFAAC7E53D83C6BA09AFAFA015B10083B6EC1EB2890865969D893B3FB01FB38CDA1CEDA231B7DA79C4D106A8EEFAF059DC1A47F2AE50F7DF243E36D0287CDED91534B0C3B09A892F1E52906D0E3EE5073861AF82A81040ED08BDFE0E64A7883E6509DC971ACD9FA41D43ED8D2D5946C2F13B5C6BAE2720625F1E175863D257E1FF866E89BAE3F6B5E7D3A9F0E90B2FECCF9CDCA8437A586D195198AAE5C5E3011701DEE070230565D1A4416288F161E68F96584D07FAC4A9DDEC1F7BE3BE598605CD8690E71DF2D1712DBCE4301BCC28BA6CB37E02244B439BF799ED88A5F1C39FB93C20ACB58C91C19E609D50C311E9F7A665E6DCA57483C59C922F0E5C1191ACBE16385078A358C1578D86238D37AD740525E18F2065F94EDEB5A6B17C71EF298BCC670FB8D32D57B6065EF4B8C1C947D9D36AE825B099BBAD857C3F1C001316E0DDC5340531E04FB4F7A11344102E39ABBC0F853415DC38159D5453FEBC76E767D4F7F11FF788E5E892CF7A8B246C35F235F9CB22CADF5A2BDDF53CDC08E4E5264D8AB24D611750A2A99E7FC497F3B68079B5B6333103DFB18E9FAC86A9307964FB04A4206173F7405CD2783F36566787EA55EAF656EDFDD5B36B6572DD2A52D06BCA61235F1F5333993CD9973F41861782226A94BAAAF16840E42EEA4186EF4C92266438F7DF05890DFC178341C5F591DE67AD9B68ADA532D7450D3C5AAA81482ED9D0F60031A4D8094E1B8181A67C62A6156BEC4BD1857FAD4B5DAEC91F2845D0CEFCDD4FD6FDD8713693DA17692569F4E4DC81F2C6CAF6416E0CB1222DABC25D48B3652BC7CE270D49320A69F3F2F5BE74F872F010C64B76C92BE1FF4D1DFD66BEE66C21D604E353492F65C80FC247FB57C9249C454CEDC883CC0CB5C3D1A5494F36A44FAF04E5C0041A760CEF348B6D5703807B7C1E2090264709BA475EF136EF2F62DF524108816EAF780D2A824459C55AEB2DBFCFEF89C4E04DAEF6B188DEA1D65DBC60D4D1E01F9FBE300C328FA57AC15CC348A5D057BB7F862DBB2AECBBC1AFEADCC4BD70EC5F2E926C36D54C722AE36C4138C2C03EF0C7971B2287BB305B94AB44C5ECE04834FFB643337EC8BB7EB8EBF0D65A0BF011C193FEF25E88CE2BF581D86DAC888FB3284787284A41631911F3B98EE21A13EF8ED12AFE226522DF0EEA6F65C1F8F4A946C61E21D09FBC9D8393962D75854E4BFB5A40293CC995CC941F87F278F4412454FEB6EC03CF5B03A3FC0A14318EB65014A617E7D818D16816F290258E0AB1868B3A21AC6F37074FD952351C67EAF3F76206A21F1AE5F6B037432C88BB760182A2E2296ECD4CE888F42784FA5BE072462E4CBDACD7A848344E53D63C8977BA29CA261CEBFA7EF6829C0BA04536C434770AC6B9938B809AED33662E8A3B3995195F28AAE0A2D5B91172353A13FD850003CDA4422819B1AC748DC8774D2F68F07BCFFF25DDB3CDD653795BAB5D126E5DB53298B3CF266056ADCABB0CCC67C2846D94D211CD9364C54DD2C4AFA1FC126D41BBB244479B50824FF0BAE466F1181D7DDE82FEFAF6B6F39DA5CC7F7089C908794E72622690C6AA78244496517570D7CC91EFED47A35A04442E50DE8CB9DC470C1C314AC9BB26EB64EA1E7E08D5AB6F7617D0D1B41D671A1C44F48BD1FE988AC2AA1679A173AAA7387CE39887EC9168164D3C45F95326FC9485C8FF98B26475E6178D85E5651BD834814BACB4B55D10D3E1CDE28FFB7E234276D02CE422E0912EDECB77ED063AAC449738A896D6C8FC9932816C0882B76BD85C2084AB90B74030B5AAAA01B64A626AA11C7388F31D48BB5C7CA93765813156CDBCC0E8903F67DB4ECEB0091DFA96C007056C893ACA142104844657CBB099E8D7D1185B94C251F18CA4291114D5303D2D622AF57C362F46217126451149E6DF0FA53848ADD4B9EE413F74B396593E71CDE66CE5DCC1AB26E16763927B9CAB57777E1F86D60BE16B3DC3FCC53FCC3D39A54EAAA5F07C35BFE656CFF835AE822EBD95DD4BE7D6503168614844A468B1C57F161E8B8FF38CF977BF5C82076DE3D3007DFCAF22FE4586103B687A934027BE9DCADB27A016E7861B9218CF0A151BC1EA7A2E1174EDEB2EEF4F87036B6A6EA84DE2541DA559D1CF02FC1B952A0AE89ADA31FBBD2D2684A3DEBD232039178F9F8C49F85FC2BF07826A2E5504DF44C024EAD00A3FFC20C4D1C177DCB5D48279788A04760F79D517BFC462EFBB7F7F2E5C0C7CDB90046BC7CED227654E3E47EC7EBC45BD221D1D9C043351FDF1E2198769EF54FE2EFBAD716C6BB4587451972ADD6181C4BF9C297B3F2E3B8EE9E54916EF191FE6CC39367BB84BD8D0279F4E157C29EC5086722E75004F659699B0BCAA32A7F9F76409430B9EAFFE6B43FF317819DC36F8B094EED5FCCE21F5879A2802707F8FEFB1BDAFE3CEC1699FAB408B4429C1049B49DE44652FEF06EE68A82A30EE96B9F26E787612C22CE49118305AEA2290726C845E182AAD2D6FD0874B0E1FBE957482136166D553528C98156546CD69F551662C34FA4DC7E78720D455860E9DEBF5BDE54F2B841D67CC0A661F579F2DEBCFA3CABBA4F6A99C3D2DEE710FF13033847FACA62A4860BB41BB11B2D7E3B64DBD937306DB39D7EC8FD95AEE570C6C1ECA52CC0209E2253E97884E2A82AB85543BA380A5B88BFBCAEB7563200A4A8C011C9BF0BC2CB55F714060FE45202629EBF22334B7C6F1F9B81159CC58E9BE1C969BA36EF0DE0D3DFF22B73038B27B403BA059508FD2ABFE6662169D6230D6E860A938185D83D9848C3950A01E0B0CB24E0EDDBCF7D3356D50A786ECF27D6F237DE2FF2DF4E5C44425073B8992CA218E7D67383F89031FD6B355377F70AD99271EB5829559551473E49096CF1BC0E953FC0C7D906596DC87159F9326C1067D385775D09A4EAFF442BEDBB64ACC77E458585ECE5B3A5A2CA34981CA175E45E64E17C0C4373F68A7719C7371D03762ACFAD756E05E7FF68BD7476890E580CA44DD5F473A5FE32459E5F206D49DF3E21FD766D0BE87F831B1517420A4F9C7808AA9C64E64F5AF28EF87CC2A252C00C2B579D313E2AA90C130588BAC7DFC2622AC6A07128C0F32B8FE8469B4C542AB959F8FADDD69F173B4C6ACE6D382A0167B0988438F92496153FBCF8771D7195A4480339FF4273C8321614B2BBD064CFD58499A80BFF6681D7BCDBED8232FB216638F852ACC58AB186A2821DE4B31265C49AB330C74FE509F5076A1D6202D0997897DEFD14D9913D89D4572520EF0F3F638F853D15442FD87F725FC75D10FF5013F9E53B5CADA6DF07DA4CD40A7A56A32BF6A015A12DCF24B79645E0F9E22FC1EB595D09DD3038CE4E0104CDEAC89CC3BEF504FEE6FDFF1E185FC7E5F9998D9B8FF38B0B72028FBEABF6D7B4652E10B7E074995CDEC48AB5FD9A19DD00FE1659696A58AE95ECE492C6E617B968339FEDD18E81A64799A16DB9618EF01626A4B83CA93CF3B97724300AE70D8A5FDFC5B1D452CCB0D476AA400D003EE3400E7B41DC2A828E0071CCED49057218DEF7AA6EF08EB9608E37803584ECE2A2468FE49745DB5E58F81DD74B44EB94CE8EC02D8CB0D3373C6081E8C10A475E473B4152CBEFD174709E5C42E18197FA91B1D20E88883EF3454798DBE3E5CA409E6331C1C9B82D900175C21DB38507A668C7C3F9512A063D0C74C57A5CCD1EE06C9022110F03EBD675192EC27F32EE6C09FC5A412CAA34CD761AB6141A1E763C8A871348E39DDB46C6BF9CD4012FFDCB5CAA7E2F8C8E211973FEA8DEFD3EB6BAE20EFD645C43DEA37C7EBE0A563676917D92F27B3217EC044C51DEF9B4A4EE8862D1D8AD4F3CD2E73F6B3ED127DC298ADE569582E2B0C0C29B11A5D70FA8AEA3DB70811AFF1E029AD583539667175D4D257F574268E10B891163B604CAE12D9E00D01126774F25667C4591058BB023B1944ED5797BD5806622A012621F982F4890042CED67D57130DBF7807373B1B87F3ED075DEA323448C791E1453F7A0E902D7CD02958D630F671531BDA012B1AF63561171AEAC38C6D72C57F94015AF00D75D02E5A1041927C06D05E2361AC3EA4489DCD351637065CA854C91CA045249DCE65A7FF9411A5BDAA1E4E4EAC94BDB6CC9279679E0CFD67EEAD7BD813453A057D649EE05606CBDF37E38DD09358414E42484CE374AAA877A5D07DD5EDD51C3100F17874FB52337567F6D46657C90B7F6359B7591D778BE6B82E9EF99AACD3F584C743609014BF693BAC8A3A20E913506461EB909A188C3283121423116680DA98AA2E271615543D243E2F05FAA9302953CCCBCDA7D4522B1686D645F50DDA3C57DA981BB5200D2E903629166DF48BAC5B2654E660529AB252F90B47294BEA5E72EED16C5B6B431B7DA2A59C5B0B7BD8C9E9069A42FB8BD59ABEB7B521E9225279D50D19F56FED6BCC4D106D55CFE61EAA2959BCC7827B058DF570F1EE772056E26312481D320CE7915200656921B9805FAF454AD579BA0FFD669D5C390B263F32BA9648AE5E6E98B62663F42F0916F41725716BE9376DAA36BFA83E2143E18B85964423B72DDACA34254025B0FEB1141A11EF0A20B330BE48E463969ECD672549DAF814E9B2250447D4AE808EC51B4A836B3179CEA1560B21944CE63768D2006C1BEFC6CBA394643AFA37C3C89DE47AEF659FE3176986C98A006167CD3E28EA2895C4D46F80806C9E5EC2233AFC84A260BCB38713F8AF9742A0D0760C93B0E36D1DEFFF78A7E565472DA83FBA30992E07201EF12BA691ECAF5282EA67B88C0FDF09BD8DA8EB8AE34416DD9B46D4C6A575562629FD9B2D7BF0290597E7F313942E1321BF8FBAAD22CE27BE5A1E971125E325D837B1815FB1CF8F57A6A9D5FBFC0205D7BF85862A98BF30798FAA1D197998A3893FE689AC7E6B598583856BD2ACDC872D73AC31EB4FDF53BD937005366A0F716382AD20C8091C8BF8682FFC15BBBE892B6E1AE16F8F08CD91678B00E3DC72A07AFDE1C0335D11C0A698EE55380D83934574C9ADECE1E3D9B604F9A3429725B0106A95F4142B33F3EC492D114682F362DC0BF8C53E0B1EC1142A23F9C2A73A395069C4CAA2AE04672AB592B693F947AC691B530F2D9021EB6CEFFA15C107D713DDB92087902ED4CC62F798DE7A684C92B72C292BD3CE9581D80167E198291B059019E4418BE741774D2F5C44D556F09B16613A8E2583564C627833565756CBC7CBB2259CBD203EA53E43DE0CBA2B27B025B66D373CEA36B802F9A6BD4EE7218AC6887395606E3EE8D84332373215A1A58EA73010BE630105FDBE683785BCDA8CC0BAEF945E24243669B60334C5B5FA3E2E4697A023FDB3A97236B65CAC50D73C7616D409CADA722F4E0A4483F2F5245B858AADBF847101E87AAF075FD5164B1F9A36A0A62EE8DEB33B7FDA287E299FD0FC35159648CA82078C23A9E5E8CEAB0E6E84205532CC7610BD461B61A48CE5F0CAABCA0A2182CA9C5CADD4A09D6749355BA2829495E25D36C1538BE5B92D4E0ED4555F032E09809928DD8D1061BA75145422FDF97A23E3FB500249DF8BDD9C9F8F8AF23F3760AC673FA02058B11CBDC6F1CBF47ECF4A42DA3D7E933C2B87203EA292059EB745C7B7B1E03DA87DF1B43C8ED7D715F6B500F5426E92C037B07423F75F8CE670BA385D40010E2F4A38908B613F66BD027D3FCFE3C447F6BF58C1912D33DD3D7385107316F7CE7094478BB85303D402E881136D68DCAF5E0909A022E1E75E76B2A64689BC88FCC0FBD54F8942412DCCE0CA7614BCA0B720CD86A638C7024F47BF4EE4061345BD17E274B8A56BAD3B935F8D7598012949306EF9E8894D5BE56729767E4602A00544BFD58DBBE7AA3E50C8B5117D036A40F41206F411B341C634CDDCCCED17ADB4A566BD830067E926DD9B571E4CEA03850C899CDF6F5E40B1936D94E41F4DDB806EFFA4F8B240794909B4C20A149C747786E202D6E77C11EE1D33A903B57CBDC6E8BA7067AE5835D94165C65863E2359AC5DC7C577F5F8A13411F9969C9C08746B61E169EAC2480478FC77B4B323CDE9450945A791D4F30E139E3CCFF6C4ABFCC8ED25DC4975B6C2283DAA9F639DD5657589647873E9D4F3274645FF243E4E8E992B122489A2EFD9A28B47BA6C00A8285B47AFD1C56CC023D9C2BA2B4837D1F53200D8091B2BEFD99097EAA32627D1217CF301B23EA2966DFD0E78971657C07246A7F8E3A9049F7A734BBE3E2D78B7FAF7F6FC2B95CA71CE1FE6294106156058BCA6F5531E4ADA189CD52EE53F4ED16F5BF0B8DBB97E32D28B4A23C2A3E26809FC13A531B0154493C06DFA02F94EA04C1C305828C1C4A4782D1C675305C382BADF046916748DC705713C83B603B47AD57AE376119A0DC43650E112F4BCDB308E14A2307CBFC28B901A3BE8F9F91636F6D246413B15E492FF2C982318485DE13286E1B286BC19B6C379A77470DDB0C5FB0D54791A00F6F1F5BDBEF98150656461360F7B0EA68FE0FE3E4F3ED1645767843229F7BCB15C825B4C983AB4484059FE45C800E202E81C0B01F5187D76934F7633590A41FD52050B6593306C83664F3EA85A830EC26A3B7506609E95259F81B5960B817773095381D2ABC226DC4E39DDAD7D40CCD2DC25069D18FBF9F01927507D80A054A05D19E86FFB3EBB08093DCD35DC7537232C4B8193C6A84A0E9D6306DCDFD2C6595D47413F6985AF5BC3A0FEDCEED9AE6058899C90AC87AC08F859E5BBA055B8D06EA0571D459AFA3013EAA714E73A351F07CD55F8F0BB43FBDBFC885F345A1AA8ED406C49AD20A32D1FC7630F2DED2ECF055BEFB2050F31A6A9E076FEF32A4A302689469D9620279E176519278548E5DC6A14A856743756E48453904D050B66E95BE15F65D56F8A64B0DF2399618420948A785D1C7725D75B51D8940BC0E725251DBC2FB7B6A3A4987E318C95271838204605A3491D1AD5F96A82F2083ECE9647F56FEDD347A860A2F8F7918958C526AFEF49E5B64E42DF0B2F62AB08F8ABE2E99B814B0E7473B70F304BE445041D76CA4564FAFA0E58EDAD2752A5363D471095B079389FA86AB2A24280723C2A9F276289D29593EB52381D11C259883FEA0E54CCA4FA5726FA993DEDD862DBA7C689B3DC458B38C64E470786114DA2E669D26D64D345BFFF9C2877F5C54D04440C063C9511ACB67C4422EF615ABEC703FE4D9C671592C644AD39124B58D80E1A87E3408421751C2DDCD975F0925C05F3160518E0F3B655F68305AB0E9C485BC8726B7F4819E49541F537A3509910221BC708E37A25AD7073C2C64D43363C362E0076191D46F61692572716C0121F13686EBDF6012C856FF6699EA98175BA06755EC247F148A227F05F1A7274570896F18F00D5A54363F6EC14FF57A20CDDAD40751F9BCC85F497DD08043FF8475E152B33BC3A2EA463FE447D1A5405F9DEAE19A89AC5404DBBE109C9030DA641EA4461B0705755DDE9E2DA5FE4C8C813E2112E1B0CC2DFF17291175E49EEB71F0F52106A261308C48F24CBA5A9814694F645231B71AE9F140B187F6A29CDDFF6B6051651C6FC2F8601B25E88FAE19F072B665D55C00AA04AF4CE3C7AE25F5B7076888B1286841565CF88D8FA4327F6CE0749A36B94C6A1FDC0EAD4638F68185749B9F8372359E08810C5D0A75D19594521A3DD67D5BDE9C71767CD0E10ABA8B5DE77999FE60B2CB6236B28BEDC46085DDE54885C2EB010447572350A677735CD699659AE162AFA50E6186FD6B1F93ADAF1AC894A3493CC006EC05198427D5F8D08E5C16ACDB864C45B96D91872AC4919A051DEC98DFE7196C033A8392A47CA6D5E7A5494DC08EFD9A9C25964618969EE3CED04FDF7173DA1476D9097FB37304DDD0280096FF2F5256C44D89C5DAB3185E7F2AC36344F296BE464603747FCE634B6A7F6C5907D86D8BBE5D9CDC6E33C11B845C4D9D38F0AE1A2BB1BD15CEBD31DEC0D1958B82623E4D05201FC06534C8189C6657A03916465ECC49957AE3F5EADFC60F507F7000FC2FE846DE215C751CA075F2D83CC256ECED3DB8A2E5741CD6B385116955FCB95807FDBC89410F8426E99D5FE9EF8C3DE1FD5DDD76C63C30022D6F9E0AE2BB93928BFFA9487DD9B24DF9E87D027EE2CA62356135F539D5B9393941AC781CB1CA324EB1750401850FF046284A82C5B154863FAFC1B470D05FCE834F456F434E10F5378E0629B13DF052E8445D347AD30FCE5B9AFF4772839965E67C0A92C7A8D2843E3C4605478BE1538544D4741DACA1084552D842FFE3FEF712703719068E7BAD5EE9122F7BE8B9EE26EFEDD2A0C10DEFA09A989ECE5988BC2F14B602A42A91A296B14F86C92C5CB4245442336B8B335441CC9DE0DE4BC6890452D3E3A1CCCE6906835714E31589A98CD31E12E4949BB29F06C4F8607E0649DB102360A04B7AB9676C4EB9E393B9ACA293EC3BEF3C1DE74B1372B37EF28570B7250B9C5A3349A2A26E97D3F10D18C5639B686273825E159352502F87499E1406F5CB810ABBA59D8D95C22C2704200AC9EDD3AF65415CB1A87B092AF3B697C1E7123343FEC02C5357E975A6A39D11F23474CD17A1E8B55A8BB8077721C1092F0E32F32BC06E70D57E69289B1AE59CA3541F1890C06A8CB0E915510834F90589049380542A5140A1F1F5EF895D93D333B3EBE69DC0835C5A9053CDB54B8B8CF4F8CA29E6AE3E6E3B463FAB86DA944AA8990F7AFE2D200EC8F1E84552AC29990C9B6639EC5763E660367AEF86EACA2E568E26B57A7BBE6D932F649E681976811AB5B5F96E1343AE297BB8745DE8E9650D1AA77C7A5B4FE877371883DC27F20B24A70C1BF7BA5139AFCBBFA97B66F893B8EB096F4609475A816D708FFC78747F53FB26CD028493EEAEBD203292ACB55282C41DCADDA4E95050D24C2ABCCB7844D053F336464F1E9D40B37E8758A0B133B91386FCBA2456A9BECDE2BC9890C73E3869253967D6D29E95BF88128CAEF6C3F02A9699C45B90D7BFD9429CB27E4FEBAD5097FCD9245C431A3235F09EEA6092F49DD16A002463C120B51745540654DA28F111B6558ECF75164754ED91BF97DAEF963F53389ABC58BEDEDE0B962A9347C1C2B24D008BA43A8777B6B3CAE808CE1D45265796B142C0BE5D796B3C60DB70830E7292EB92A5A8881EDD8C2CAC03EC100BC44CEFC48A16AB4381ACD5E6FE1295413CDD6DFC69ADC58B74CACAAB34E078D5FAA18DE8C6A3A329B4B6DBD75E88111A25BB3F3EE381DA7D71FED36F3E6AA523D000EC94BFC572C0501BCD9285010AFB83F73ED6A3B126041FC0016E6B142EC705B2465033ED150A1CDFA95B9CDBDE25CD4B90D5A25B5F04C415CEADEB2ED4C04E7C80ABE6ECBE806CCC62B6E5403D52108EAE64207D6552388E3EE765844F118B5358FAC45B448E7ADB5221609174BFF2D3560C46FD7C1519C6F08C624B1268BE9763535227E9A253B46A319C03917F23FFB43232D73D6DA98D2DCB76AC828ED2B5F2B137FFA4C09B764501F0EF82213751A9BFBC662036239E387A5CD0F1BCA332FC72CE7492F841E9EFE09584AB6B89CFFA5F736744C7206142416F9BC7F7B3264D8C450BFBD6B1EFAE78CB6DD267444707D196D99D3B484FE8DB9747C559B3E317356AB8B9EEADCE74BF4EF89F11D7B288EA87D28D9B58DF0588E98C5CBF78EDA51103A6CC9DA2F274B560FCA5321A3F1CFB556E34B8FE1FF812C9F16879DCD696D168C96B15D4ABC665472DA50791C0BEDE5701CCB329FC281E88E2FAB6279F7F29C5A7FABA3083596F55CD1C87DFAF4CF3E36C66B09C9547B6E5A8C1F8365C24282C18580E61230BA2B6D9C2FC083CBAAD3D8ABC6D2160BC37DB6CDB0D57E0718E272C95604CB00D1F36B4EF23CC5EAE020C9141700ED6933A12F373A56CC513F075B583270ED6E931C8F918F2A6F0EDEE03F2C5CD834B1A2609BA4B56C687AA5481E7BEF0E7086F8135B19EBD714D4C7A7FE69ED04A80F6BFF1AFF373766DACCEC0F792CBBD0BF223D33D95AD9123C5D65B65EE69355F2B83A9B93D3CC7EF992B651FAE645357B1145621FEE93465620999428B3BA3D60C6ABE0ABEE6FFD2A6ACBB1F177DC71C7853EC146887000F85BB1B3D6AD06583A8520FB784EFD208E18E77AF788A9F2A07F1D92C1330D49847D2B418CFF8DFEB59AFFBF5059FC9BB83C8E30E64FABE1A799F4329766B95EDFCCF5A437A00DC5DE318BF3C21670C61552323734B46344D7C826048BB709BEEF931B0B1F6C648D235F83F89284EF91896B600BEA2409564AE288506DC63D87DD157064DF13D8719732946D91EC6B7ECBCBD2880D5FF3F1FA736B392A787427391D806F015C5E427F286EEB1FE4AA14E8B93F5F3ACF0C7EB09189E53B7C35960B32DB0487181F34375F105332A1C193284A4A7F8C52F7FE94A732870A950296772912D67D5BB4F15B78B1978BF078A331542E3E24E884A805D2803216C97E3AB6FF7B376C43A105A1088A93B3C6E631F82D0984827D1D841EC18BD65B3104883337AA0DD8E61201FFEA14CAA687DFA467665AE2A643D88D9F73D6936135FE78A97123C0AE572D82EDD95CD2B31D966A44A824E72428FF075CC5D023D19065875DF8654AB9E528F55D75A784476D6DA04DF711E869D34ACD66530D9BE698BF7D6E8480E608DF78421BD8E14EDFE322F93D19FFDB5A5725CC2E49DF7060228123C3ADF13EDE6220B110F78EA7BD7CA600800A099C5C3958552E11DF10B8952ED77FDCBEE9DD7418BE6969F59D490304DC98DBCFC5F1BC5A11F4AE2D4595C92281851EA78B087CB76979423768DAA0DDCCA1B9A5210A4CB80B50E8FDE468BD6527D9473333606433B6212A54BE51347A6C34FCFC7ED7632570C1F571B8555DAD6B94FF0013DCB5EC56506A4ACE5222840072025D4B35B20C3D6BEAA42E8C22D80AB680DB20E98B031323D41FD620171D5714D9371860B9212CE07CF366EAE64524E75908123F75706822B325E219C2B1C85A6A5B72FB8B3D7742BF6F8D4D39B44ADD31636F1B396449F3803554996477AF429B6222513B00D417611D2087B39E39470F72F3B5ACCE6D56A11DA2F6EC06D48410DAED45D7F6B69ED534BD0A53FC41AC2816E0C6C73B13690EB6A8C63230669D9EF885E3F8FCA664B891A60683E2E04B7860EEB89E5433824242056F9E38D466A6C88D43E03FA053FDBEA920A3723B233E2A898F54020EBBD2F0401DE937367B8E2CD815BD7863253C837B445C159E23662CD8D4D4C7A36A2BE66F0292905B599F32889043F0C8D660E74DE6E18545684C0FE1934F714E7A617B2B69516A919995971EF78997B64866C0E3A7E20A6571EC830F7BBD623991002D2D94D934771063C4E5F74FD68C96541D646C701ADECD52422415DE4E8AA79915E0A0220E1C266F64E169580537B2C6A471EE6D4775EFC37603F457ADC44DA1FA1F52AE3FB3542A269C918B52DB25B28C8131988905492F5116707C91D72351CE12A10E3FC493FCF65B2F486A6012741E3F64609B157E28898179E9852A20FCE4F6862FE2AFDA6062A7BECA9661147200F80863E785BC0B2E868DB6AE3D5D945B9BA6BD7543101A9CBE8A34C9DD15074450E2E5FEF1133658BF1F36BADCB102C1D4552425419912C8D1D45FAE1674CABA3FA22C687B9055C63C7AE68CB4E18568292734CB1CB3A64549B08158C7D186B5C3DFB93BDF439729BAA10B1F9C1035D74F5F2CF4D85A732EECFBFD8E1F4353A61BBDD14DA03766E511D16D6BA6DD258A69D0B6B80FAF01B6FBAEDDB4F42D4B28658E17E4A4FB027D6664F75AD3FD0136A2CF87F8ABC908B7DBDA90CEF3394A6D6E0B55A89A8E0DA3AA1BCB7E652375627171512B7C6DB72E3B5F9BFA546AFE45B3F163CEBF64A207BF5B8C4452B868DC212E88D81643EBB0F852ACE8540DD89E6C928A07115E5BA275DA812C8258629C2FC90E885E17206F77F531782ABB18BE8A7F16BC931FE0A29974A5ABD3D5456DA7A2E33C032D01DE7B8C31B42B3305B9A3238033685C00281FDAE123A90EA30F4FA6347214C6B0FC7F9AB0D67C1662922550627DCF001DED8F59CD1688EC9B678B1CDB9F514A14A8D8E80F47EF39940764E99040227C660B556D9A84F3F8DDC32970609FE74EC57929D05A21A9FD2071F385AC6891FC69A18EED42C76E5622307764D3CD3B909F070704012A62826D96318E8A7393973D72D1C701EE5DB9B71433AC55F74ACE222DBF3875368CBBD890366E0D0E01FADCB79176F7B71613C992EF238B381222CDBCABC1CEC583564BC721C2FB2F234ECFB277E60B816588236207452A247E70010BE20DE018713AD5781C8C421FA35854D8DD5FE48B3557F080946FBAF5FBCB3B559C0217F0BCA46FED27D6EE5F5DA5228B836A584A8C60885D27F9110773CF8955EAAF13C80D602FC1B1AECDD74F28BC96F7C64672CF8DA389B7633A8A35731A894FA25CC0B3E9259EDDEBF288BBC43B8EB2D2A64C42BF06BCDA879736801B7B3BEB1CC17BF20804AD98F0C98B69D95931D448026F0838C301AF273D7DF8D4269189848C99C622A724A1579365D961E738DF5DC12ECF1353AFC439F58B7005581A38BB04A85898E94A5A13EEC99C11C504962360C7B287BB6CA8285FE7BBBE7B7859F0FB411AD1FBE52A536ACB1E448794A3BC015F2FE1FFA5614E2608AF8B385E01BEED5915C236BCB9D7EA6DC0EBDFA3A9854AC8D6775B3440ED8A5D061DE452510095B15F84B700C90E3238859055F3BC7EAAB368C621C569A2C9B8DE9AD0326D144AAF0E83282E409149179447461B6ABA184BC18C017641D1920C31EEBED5A89CE166E720D78BE2086A63C6729D1F6F6EA51DB590BAD3F949AE2D92AE87B58FB873760C9D07B810F734D6FF815773376092EAEA6983FC6E42E861274D5DC742E306F9D1E8F64BB6F7F37C1A16DB522A30AAF021FF9462BEC031FBE2D241323000D8BD839298AEE59BD372A725BABBE432FDAEB7A59E536CD9B03B57AA5DF75C2E21A7C5ECF07DD74B66A94FA89CA4479AA606723399520C4858CCDBB093ACC816523DF25A8918FF549F6E3DE442942321C320D50174699D26ABD8C4E92A474CB0E5F79EF10714F1A576C1F12CBB662C87C4E85CDB94534F6BC2A277919C75E642E5C3202F86C623197D2C770BCF31871DE49F109437A2998BA19AE2C69B76E9A288849DCD1F2C926654B38F92BC98D0918ECA24C13F0F1F85C0054845D32C3939BC683360B921C799967DB78121BB24520CF14CC17ADA5808397C36B3340A0310209C5BBF25968096B3A8AE2FD1500C1CA57482FBF74FCFF4E57A470243045BAA99ED2414FA0BF1CE30C2533E537371F0DDCD084A4A33B8791BC47FE3813678E6EADF2A5C697D2F751B451E40BC5BAA5744FED6AA9597C1EC86F13591F3309EE077D56F8BBE310349AC22C83131386FF852E5763DA6A9584B2462C88BB1D129371A6595545436AF778068BB885EAC6A6DC3C5D75115CDF759121A8951E72F3EE9444F6B43770AF6BBC6D427D4959708F6D51300D2296579583BBD277491712DCE00031B8D9D444E6996293E4B20B46CA09ACC4E44633EAA00B27AE0523C2FEE9DD58CDB0BF9601614C30EE9362CC1BB15E66199A2509FAA955D8CA9C6228F87FE7144BB104AEA09A60A0C1D93F7C78F1DC514EA75ADD93100D837ECA46B447F5F30CC6061BE84A6D40139EE0DF0FC1ED0C947F67D814798B1A1C96B8F2B3F3870DBE92DAB06ADD7641634D5163352CA26791A0AE797F31BFA3D108D1174DC46301620ACED6D517C1A72CDAFDB5455EFF91AE989D63B762077E0A4E1D054EF9A82EC98CCF2B491B0D587AA23E5893ED7FE7E2A88D866F92EB420646C8D3153FA2AE10F02E7F293D4D56AE23BA6F55468B784A144D3E6CB97F930FEF83905C8C76D4D444D80FBC8AC50E673123518E5A7159A1ADC44C8F701F183F02CEF23E10F4DAC7C41EB3FE989B8FE8AD258D4BB2EB9D4F08CB8665694952D6ED11354F8B01A472ACB7CC54CF93F60BF1F8576D2E926C2FC4B36E938D738E1A66281C4FC0BFF33D63BF83BB0F66A1B949A8450E4CD7D37E7E78F5988DEEFAF4AD83F821EBB304F1CB5D9628E8F6F8580FEBC8757153A0B1C07C417EF9E6943D4086AB0788E6985C39B7EA43A5D7667ED53E34CF4E9E5807FEC49B5455575837430B5E124B03C363712C90CC414C956AD51D01F69051CCC3D42E2D45463E3EE4CF5F4792A6A4BF652655717C00C2E009328706FB9E0837A4EBC6F922A17CE2560B8B931FF011CFCDBE5B945A2808709A27C24F2E89D9B2CB4BA48E3A9279355287B7981090C57B4A1C1F03AC39E3BF7A2D51EFB08C8A85F2C1D538B0C814A474700890707EE31AC6B8D8DCB4127102FA64D83DC577C49F74CD230F6710CB6AC5FF58E12668C2DCDFF4B3BBC1348D335401B35E777826F5BB4711D7FD51DFB25099D333EFB119D3662C557E10356D45E19D0C990D114067319880BA8C633814C096B17680E8160B4A7559E40F1F814DD6EA2096D9C6BC0C198393CD5F2CF22770C056629FE0E3FB51AD3514C3D272C527809B4737758BAF0BBCC164CAA052F226C0AA5126BAF2AC8C4FFDF2B4148D3B7606C2BD66EE6E286F8518D606ADF7F06889C65862298B8249CE111FEA2E167AE28F09FB536B06E6F376CEACE3A9BBD5348AE9E6E68329DE7F9308B0613357DAAE3CFD06957AE651C8740AB6B1C75BCB72AB3603F12E384D91CEAA7DFADB6FE3D8E3ABDAE45DB7960FB68753372378E4A19762D30AAFA81AB51A21A05E15DCF6F3BAA69B69D5661611C36E9B59EEE374AB46106537723354BAA8CB49958F2D03AE91F5D8B90581DBBA3A3EEF802576A4D6742D95E536ED0251714AAFC57CF863F598A0C3676F95748809A65E4E964C739D2657DDF4023A820D9EDBEF8E96E7807DBADC693E0B49CE4D5C5174FDACB5412557EFBFBE126E6C782C124AEF23D623B73F1357C710F7B318C25582E26BF6E30D27F4502D0D10BF784632E2041C53169DD0F3B077B3FFCAC73586C45541B99C5A452B30BB4066A2E3330969459A3630018A74970305D2A927819A5D2BD2E54CD1E3EFD89A0788328BB46F719D3E8A46F835C075B74A9209FB84C5AD8FF88EC069C351BE2D6D42C9B188E9BB26767B28EA01E8A4C1E68187C1E63B7D856C15D81D82A0B2BA24AA4DDFF69DD7C9126CFA9064EE1BF97A05429C3BF77B57F7AFA8ABB64CABCB533C40C6B27D9B0376441E5572C7B21C2A1E0D90796ACB0C2C9238F5DF10EC2ABDA821F4B65A3B68394E283EC7262D557AD82F7B922D35C92BA8D6C09FF4ABDBF25B566A2FE8DED8E62052872B922C1419835B642413670984474982BF3706ECF1713C18ABE426776B8FA09D7D070A82E6BE9CFD836B97A38132282448E4F5382460EA17E9D968EEF58FB18977C2511BA7A7D708D789A2901287D279C5C335E7219BC331712FF150AC053A148795883E17879C0232A0BEFB7B187DF3390605B361024D48381232C5113DB89927499E1A83C520D7811E801FAE72517FB38224440A07C3B58BF1785E8E6B60D42747146046182A623B9BBB2F4002B00B1FAB621728984A809D5B2776301E1D33DCD0934E56FDAB170051F72C674CA19D3A74818C665E0CED1859CAB63118F021DC84A833D8CAE5EB4E27C98F2A7D20AF82F52A80A327A6EF7E4221C4B8DEB3592DA3D5B690001FFA4BC038E83E509DE9D68552D5AD0FA679CD5F069945DAE01880A0648CE71E3269D53CDB19B6D84D4621500639CCF4F07CDCC3E952D5933E75F85437AFE54FD00924606FC842E99BEC79781A4A92CB249CA92269FE2AD7D4B30ABFC108E7AC2E6893F81512DBE8B3C6352ADBDA90C98DF75B0837C6E90D2871AEBEB0594230B367B49F3D4FD8E4AE3C679EF0CE88B8A1EA55FBB223565B28703602EACE2D0A7ECBA90B4B61A38BC30F241356265F082218723683B15BEEB8036C9F7A74C9426BFA27D9A12767B1B505AE729C83793B2CF63ED5DFE9E05E6BBE73F5062A2D0DEA93C0CA5A2A0B2DB6B1F0B9CEEFCDEA4CE1702AF2A3925374AEA1E551D63B3BE4B6524523A0D79FF7B634B4BED427B9F57A4F131CB0563D4DCA76D62216069C45C887CB1B0A1B54927722FA32FDE14C04893693A7F2A5A3BB7F879E3920C15A20BE349985E0E98BFDE69CA9B717435804200C97C883793143965DCB2DB1F920F9DE30EB757A5ED2779B5683544CA8A7681FFA9E4E64C6FC3A100FCBDA0B0722FB8B94DAD0BB58296BF9C13D2E08EE95742B18EE76E076F690F6F7AD1C7EF0BC164B8414B6B7EF2834C10D415D0095AAC182605A7A153119BDE0853ADFF6D8E51D531910B22D7DB5B64A983BD02F6B0372D920A6F162D20B29F1DAD048E97C82260C199612C2EAF44432830BA7FA263B722B8C4D367E4085B3E1C3B2A3787E1EF3726AFE85B913A7AA97D4E388745CE25ABC055D0FE2D9D8CB698EE97C0630A78B6E096F6EDC440DC65F770317F17022A25D9EC23B6515EF0E6DBEBFD48D38AD235F73A0CAFC208E77F3105DA8856F22F8C546AEAD03435C998859F7DF172D47BEFB1EBA941C1E3A4EFBC4258746D66F6A3955B5818E7BB9509BF64C53AA499A70569E8A341B746CA15552BAC3FC6192F19D39247920B5A05DA9D6464B53007D81BFE1E6612479A3F374C2862E3F700ECAFD9EAF0D26A57582527FE8C8B2D094495D335EDA97C14EBAB87A1F4D8BE3E29193B9EAF6A288993FDAD3267197D75BF1ABDA34825F931BB6970C9F131AA73B3833CC63A5D41ADE78E29C72B98AF413A94407EF27B779B2603E16BEB89CAA9241ACA979A9015325AF4499114517BCB7057EF9BF9A924D3074D3BCE624B9F2B72FD37DEDB1EDC2D91980504E66AC678436FD9AE912A477922803C3B9A6B0163D57D0B9A7BF4C7370D7A0063E371E47AD9D5C7D075E7E9AA607F3340A07D854D37AC9B2D7EEF919D67AC84F3E9397187FF67B8EF13FCB52968379A4110F1D365151211BD78D79AE4CD9C8D656D20C2DD1C27B42363307AD06864BA9F85D66A482802CACF71CDBC3005F72FDF141756D1A869BFE4748B9F20DDABE10E1627E09CD77C7C8B97698D89AB1984A83152F178EC5D36966B77DB41A7007F17749FAA46AC479DA404C9EC2E722207B4936C3A4E9DB51EEEA634319C9CE643ABFDB71A8045005BB12A8ED58851CD1F0A1C2CEB1C98311F7A84FF660C8A2D101F538A258345A3E9E5438B349559A5170F1BD2D458FDF98DA677451074A8C36CA8A37B8DEBAC7C585B4847428E3BD31EEFC18E813760D4A15DEFF5EE13DD12437C3657526BB64881A6C0712E3FE688DDD18E1CF211685B5571232752E09EE5BE02D7E8F754EB85CF5844B0496C17B6D2A312D9684F2A3E1750CA5A6CEAFC734A0973942CE8FBF7C8AF7F1403C2BC4FAB7726F2B699E5DCF930690A5A481BEAC5B6D0F0D40A0DB642B75DE47F410357A7C87C78A21E4AE6C73555AE4DD25304A29FC41115A413EDC6C5AFF70031B6F803B6436F2F370D8B12C1EDD9040D541954B22211ACAB097FDBB5ED632828A603267F3DEB928FC63531FCEAE12506D958EB3BE4B38BFA304F8D1B85588F483C8BA26F72FE29A8B6E413E65E9EF3FB92A730E4FB8FB57537425B17EB66B5B87AD4427DEEED923357C88415277FF6F63E52C41FB021F6F4971ED77905B0EAD95675F4B056D3B859209B81BC88AFADDCAFAC9C82478FAC314A5C1F5D63A47CA64C76CEE0FB90F34FC49E8D07574EA127AE5B5DDC0CD705A110C49470F31532AEF7F2D1B9CEDF22FFD53EE19A04D8BBD1C77544FAE97209C681410939B9D7C7E633E48BEF62D63D5EF34CE21372F3A82D2D046A4E0C409E0CE9F96792865EB8176B222A5A3E237A6AB5DF96294883BEB8BF5397AA16714B5B3F239F6489EB53A0CAA31D36CD2BF046C528AA1002EBBEF5F387C536F367D8A8B6A9CC970A177654E14C74CFDD2B37A4B0F266E679D6D127561CB41E0CE8C3BE2FC64DB6E0C1A86994E7E759BB965F290D636275E6952D97C118C464307872A88ACA69FFB0C1996A7BD63AAC786D85A1EF4BE9BAF3F9BBDFDBE43FAFF6E4C61944E517FC492D3E4C54A9A350FADDEC47A9CC4E414E4F824E22779142AB5222EF775037906C6159D78F3C4FB8C9887F8CE16945F50997E6B0D81269C7A86898F8F5863C1B44FEEA3E18F6AB36E6256EB94C95E916A8EE55B01447D8A65AE8E025CA56F02438E205241CE18B4E37AE60261148B6822A826A554D9F23814E606C52AAC11793538B20CE2D4C034DDE3F59A07DC25054506BCCF8CE00F6E83573D783353652604C95DD0B67CB61D9A6BAC3DA467DD77909CD2C888D3ABB37C206C4DE22343495EF73FA2398AE5A11E5730921AAD9E9C97C5A3DD1B01F6D4575375CB2A4111B808C69491E6ACBD77FEC999F5C2276118E1E3E8AC6FE9DEFFEEADEDBD233999A237F29C89F125283AC095E9AA5383FCA31537CB472A6857EF6990692F75C0E96400A49D5EA2D1E5B441F7A34026DC74F758C63A2E94F6C58F56694901A67501C228A0FA1E17DA96F627E40198E5E33BAC99016BE482F5CCF56D3BE7FCB57785BC2C2CA4008D578A31379EC2BF198E86BA40697FA9F5C610B44FC8AA281E303F5B3E454ED6DB95904D9341797256E796CACA024DAE984C698835469539E840055A44B025DC03EDC9FB2548514100D0CECA2866E3E999A02B7CBD00296D09F5D8496C091303FF7C2D71CAAC18B7F549464217395109FF10A8893DDD7A0F67E546787A676866239348AD75272690BCC8BA18E4AD15EBD79510FF8380DE6852B961E898DD8D4279F053DFDE73DEC20579315CD43438E68C75ABBE24ACAB5BB43FD038080997E087DCA4F00A6C612E93C4909A7B202778A982070E5DD930D094161A7122B12BBEFFB4B6D0BA24EEE4B1DD8C38EE6068EE97AF5E91ADA065BC9CAFA06FC7B72680F1DFDD87443C851087137BC0F27080698EA34E2892E77D52920B22A9E7B405D37A9757E09DC6F337A704BFD956B1872D93EB16BA4E29B17D20EBA6FF82D5AECBAF53A81447B1F75C16745DEDA263D9A402C567CBE2F00FAE36157D9DCFA85AF879406212F69094565169A3ABD5FBD0B459F765309F8056500D8CECAB7D45C15A6CEA9D9F6393F9E425E0AC24F2D54DF891A5E9995B0C4BBF983D288AB9ADA206248EDB664C3797AFA991A01AB280B9E900FD9A5028F1795CA29DB696E0CF823E49A8DED9A89A185635FB976484B54032F20AF0E2BA3C6ADD6690A9A2C19E80DFB41D4190EE1D5F42F2094FEFBA31F0323F0EB8A3ADEFAC9A24BDACD4E87617E9AB89C27EFCD4157767C41A91F7C6882A93C157FE7BC7A4E1A4B5180BC7AF7606147CEAEFB134CA45E959B2CE7233A9152B0630AE964B8EE8877DD5D307C9D2378F59EFAB6DDE6E91D5557D3D7A7104A8715ABB901B392C3BCCF3D823CA94CEBC325DCE041F4BF4511CFE3CAD7E88EC0308A127C907599802C2CC29A655F683C54C34446C3B4AB8A02DF0483B24930D504FE3E456F58942981DC80A4FA1410FA916EBD64AAB32219D6D1C7CA2978501B0E48CE3FC5442EF05023A15A58A0A8D2B2A1F90146DE9A0E7D3EEE89D12F773B251ED269684CB025CDD9AAFD077941828F84D7BF0C3F063C8BA415273F56FBD8B305C4A617A29A33EB81906EA8B3E5A84DC515E8D2ED7FE622E1F03F1781A7617503D8E7760422FE813B6F7D3ADFF6F00FC2634BFA0F6ED5B36A4A4E5C001BFB994FC9B2FA91A67CAA9601F182C2EFC8580A6B7A5B1AD2AD2E652B7D0D8761FA4C2475463B76D87D556571B953F108C3F16A29300CD14228D5A65F1124A23A8056E5E87246A92FC06AC3F6710682D37096A969F3FCA3388DF44E43243A885B8A69CC251C3089550475D1DBF1A96DED3AADF8B802B259499E590F8942F559A7A84A1CBCAF54E3B3FCB167D7E3F0A60BCBA2771E1DC755580A33F183814D7E88C3620E9F24318DB9C75D44D10DDF9C59FE7266C8AD0EB0DF5E05A2A27249D94F840B0780B054A6E541C5C71BBD0AAD8C6C09A7F76ED882236D5A41682027B1C026D732D9E030F84B9067CE4E6EC80F3AA3C8BA287AED7B9BD84B4ACECE31F309DFCDA9952469D4C55F5A00EEB97D0CCC94B44E314FE2DB439C34337BFB32918708BAE8C175159EC28E14E18B9D875873C4546A2EE1240506B3AFE1C029B2C9D4978CD577E3DE223D809FA2E3FDC39BB27F9C849CC2ED97AAAF84078455A6FB85EF809F0E957909FC672AD8C0C9FE95BA0099048C18F6C28284C08736270B27E68060CD3AA630044636CE5F400B2E2FF73952D3E5838E8F90C2765DF378ADA84FC4C9BC27088583364D0E5D8CC19BC30CCDDAEF8D3ED6E1A05D26D8372313238614AC028BE7AD7E11CCBBC350A3A6F653293D944AB353226C7BC181CC9C1D0D64EFE82D1DFF6FD518B6C5BF9AE205174F9405FC3D180A543E2BBABBD5305015A80515C19C32EF96B13D4CF1FB158C59F90B228BD0BDB608941FCBEA12AD966E9E4D843500FBA7A6F659386B50C7C2561CFFC0811D0E6993E4E40D9408D7AB29C381F9892E7F9051D627A4AFACC8A864E0F57C87C4D7DEC8F96AD7ABD0F0FB3872D573AEBAEA3A1DF635F1B2305EB0606E6FB49CB5090DC02D89ACE15CF673FE6F11E20FB4E4B323ED89E8CF244AC880EBA49085CE8FCF1944AC7B7F0F483816D4DC2A2E30142936369393B315775DE6869E350C00481E79C81D2BAAAA67A796DE0B94A4D001FEF6A6B044E484A07BBD23FF7D0A70B7397CD3032EAB3FCB960DF4E83F356653F034E098C2367BC93EEC97E5D44AA0120969452E543CD480D03B9B4B22D5ED5B01D2D5E86C3FF4D8313F86CE942DC1543731282B7BDB6D5D20001FC836DD719D83D1FAEEB01EBC89B6F5E06A58325FA7BB2D52FDABAD084A7A5E393D80263E9E746976A25CD3A4BBF8A509D46F6D3EE04ECA43345972A4813264DD64DE89EC9648662F75D3F22F94C62A9104B72AB94F8FD1D3C719AE863173003BF701F784957248E33CD13F04A7ECD01FFA21D9343BF3D178EE0CA1AB69FD6827EEB981886B92B5A823DDB9C9AAE5EC44819714DE849788C3136DC8442AAED4B511A50F21032DF2DE8746D4C79BF22D8E3EC3AE151CA79440CB98DA5A24EBAA5CFE7B05E3F87C5271C1C0ED6E4AE675EA987E976FFDEF3A2B06C28B489E38162A2705678AF8FA143161F2BA076ED28F1BE4EE467378C3AA914FB4AC273060FDAC1CC26CAF6671852A908EF88EE3E6EDB11DC901707E3B01E88A0F62FB67F31F8957FFBB14B718E2E6F683723C731D1F945AE223536F538F04B5C9AFE63072994DA02E2932351E1DD8FE6E15D009690D708E2D8DEA29236ADA03880399F535EEFA1B97C85950D57B4AFC1B578F51DC664477BBBCCD1FFDAD3334FBC99898C87DD5AEF5DAE81C60A3DE3C2C18929D82A0DC405883E9B0A7AE469EE9C22BA90CB23C41B2C270A9B0B10993037CDB5793708CE8DCD8CE8C4F1216100BC5EF705A8635CBD223B03BC6A5AE109EF47CD18700CD6E11436A02CBE6BC5D3FA8A98CADB17E7481048381AA772DCDEB087378E46A5EE4F8E0A329C02BD81DCD147B66FCBA5C28752E6CA59C323F3B28405178DBD0A4B4CBDD9A964727C5D9BCBDBF944C8BC5B8B2DF506F5A5B18EC5E44FDC39D0AF762868736954C25BE909442FE1782D0285C6C2AEFEF580F04E6884D8BA9BF12DAEF0EFB631A3DD12CEAA089A6B9B73703A17DEA24EDEE41C5F68964AA61251257BB7060026E69D5BDD329995416B24E03B07E794B86BB8DFCE50447E79D6B95600E0691B318175BFCF76F3FD1D4EE2FCF36548CC4C5B1616A949356CB0462BA985BE6F0528B747FE478B5BCE41480CFEA63814C895E86CAA7E2517E0459C308C6CEFDFAB1C6C132AF77DB4602A810DF54467D7AB2FECC254E591A719B8304E67C7B7710D04B679EA4464DDFCDA7D5B66C971D52D9EDFF77D1DF7AD3FB51A73816D1E27602157D3981FD5B7BD2A5A95948F9259B3519E01372322B73C462433EBE4A61A6750AEF3E472788AF162F7D72ECC18D8B21EDFE794031763981A74F383FD78FE22B931A7E3E91432A34756B72F102DEFD989B0A0D6549F3A7CE52129BD46D0A095687ED20B7E6C75F133A1C9E362854C5539AEAB9B5E21E347755BC2ACA7BE2C07A5D981FB66CD2BB623398293C61A91617A34B00D89B975DDF54672CADA7ED99175230770CECCACDA893F06074DA4A429B2F0CB562826FB110BD32729FFA69E8C653CF6CCCE69040BBC61EE24E27A5446547B36F7101F1CD5740FA32FD0B65F75F410DFF904055598ACE8125FB556C6339B948864CC92390C6B14A076B214C6A88FEC793B3870E1F3FEF95BCD602D9EE2D478E9696CECFA910D7AF5A04DB999D266D42B23752D6E11972CA2A5B47D3C24C0D31167B6BD9A80C6BAA6F2076782F67E47C078827185F9DB83F6115FD619ED7094C6B71DC1DD61DF8B13D74A1BDD306331BD34659E674AAAD2954E92839036D4AD9236D0A3D4D3C49887523D21454E858BEBA8CD422A40F9B05C32A294B32245196E320891666C48F58F005AD98A11E1301E7351C4C476468971F274FF6360B77ED79AE50F6C65B5C5424F79C6A070505F00B92EACC97CB83329FEC29A2BC20767F7228501CBFD7486788DADE026A786AEE32ED6D5945FD4B22CC1C884CFCCFC87B7443E1187A0FD87F965BB043F1E9F91FA7004014E5969523627FCE6506B6A846CCF098BF55084753F58803C4A688FBF147F37B85ADDD3868E98CDECE06F5CBBC935C0994570BCCF41592ECFF5E5FD3A0D44543DEA27758E621CCCF806B8500B4C850B2D1B269C2FCA2308EF2FEFD652F63BDCF6A19A0E18060698B080CB683F1DAD23774E4A2B440AA9D637821F720864A3885A56BB639BC5DE3AE65BAD33FE2176FEB1CBE8A4699409E4CE69158A9418FB80DB39E11630F5E76D6584601E683DA5B73D105FDE81CCB6F6D6A4E1FF9CDE487E236C15816CC62EE7BEB6A08361B737DD40D9D449AC26351C9C29EBA0AAFEC2FBD96EADC59B82418368832EFEDA724C6799A4DB5E24C651183E66D357AE965C8A682D6A0B054AD526CCD023FB0F89B7ACA601107A65638637541ED77F87B9325E559574A5918A16120A34BB96AF9566F39ADCB6CD4B06A1A2FC5FD79A7DE8E23BCA12B1B5F76F01D29032C3DB8C82C957A067EEBFD13BB370BD17273309F600C3A9D009955400A1BBC66CFF7577A1974ED49A383B9AE22E71580F6F083611ADCBA3B9B7FA8A3A1599F1A23852BBB524F75E0460216464E933A5A737B0AA2E87945B463770B34F16BB61F1E556C6CF88E0103C8974A20A4038E83590EF538104CC2E104F71CF4CC49F0D8B673220E3442A62ADBBFD336301E169E394AFC6B284DCE850A18804DEB80197146FF7B5E0B7E008CDBA2C2BBB28F0BD4FDC73D2FFFE10F607D8B3ED8ECD24E9D6C5DDCA9B9D225186E382BDB6C0B76AE85EA61C30AA30FEFAEC4934E52F810ECF71B9BE902F0343D6D169CF98889BA123B8626A7878722F336695CC603CFC21A8903562C6B07F0953808AAF667376A8065BFAFB9D12F09703AFB7430A1A16952F5FEF31720F77CBFCC1BADEA26F75E9C1742A8B6B0F2656EAD94B197E2A5F911EAD5EF697394F47E7D79CE326238C68BA6E12078EEF3D842E00E588A3576D4E35095F6E79DA21DA0CCD2C4DD51CAC36BC269EFEDE1B672C0DBD7765040B9422162560CFDA60EF00C057BE51915FC083180EA620908EEC737BDCE0F0EE00DCE802DA22C934D11155D7801B871237A7CC81E2B0C4C1B0379C9F71964835C1749D0B9E177AE08B142049DE8E2DEF77BD09B47E2188201FD214EC817ACAB11DBF1E9A323B0E07D4A335B878ED6E1A4AC0F169026F2DFB2AD673FCBBD185DF19369B2FC23FFCA5811929EB1C4FAC2DE0C1619B8DB2FF757C12F16B2FCF03D5C5C22DE47CDAD78A8B6807B05DFD04ACCE524AD3C97EE0A64F08D8B22C3B3DC016B7358F03513BC1A17C1F4E87C52ABC3CCEDA65FFA58418BE77D378AC519313D7E456E955B4DAE439EA72F654767185C2FA31A813C6B69204FFAA9C2F6914B51CAD6D1497BB5D4194C5FF5AD656D2175E57E55013A1335BA2D1ACCFBDA73AEBF1DF5BDB36AF6DDE0D21B349B5F5249521DA3ED4F5E13BDB5071FEA802E5F65E9D188963C987EF35E6FE68ED81FD195D4AA5A235584F8EAC423C255EE24BAFD795AF5246917E1EC74469E939CF518665F396CF90410539EF3CA882EEA454C8ABEC4841B1FF49E43620D76E3CB588F73F2DC18086AB6056DD38671D6FB58EC0DB150611DBF88E153BE5ECFCD621A74F193278CE34DE937FEF3F81536B7C90916125E2CAF111DC4D8BA9D51A613ADB26136813237701C2489D9994F3D12F4474761A69D34FA69BA9B001AB46C23E14430EA4A89A96299F131F5B835567C76A08D64A2D45C37FFCD169D2D6DC284219D35915A2B2061E86CBB7C728590DE76B9358206565578197102E59096C55846EB126E868A61ECE6B7605AB8597E663640D5A1AFAD827653CD7705A6498AE2F3C4BAEC1ED4606F2BFCA0387B85DEA7F0F4101ACA75DBFAB53FC81825A42F5D95DD81EC5B35C66689ADDE6A0D6BEA9454BD1108BE4D123C32D6A8FD975D108DE0B58B7CA221F40F89560A0DB0AEA3DC47B9922FD8D609294AF7B8F3D52B4A9D0272CDB28A652B29C93E7BAFD30D4F6320706D4A0E3047A61D639A3EA2959F24F33424F839B746B534C7984D19A49C938F022FB25E94DDA4FD3D7E5115C94556AC150356AE55482AE0479BF503FE9229613990E36F193FBAFC529C4F23C813D7AF63EC71420C88F802CDB5F38C89014E950A37D30223D6440D7F7E12C6A769D9CF6875048CF6C4527D7FFBA778E816D140932503D599E900FC12173F39830C43702D14C001BF347183D3815D9CBAA2ED72DF9DA050FB337711A4480D0CF68B628DA8DC3B17910AB28FBDD734752CC54D9657054B4650A180DFF643A031BB02372D400A6FAEE643AB6226137AC3A21FD26A9377E800116745E20D578782D222EC9D50800D38B8FC6120B7F8FF45AFF906AEA27C869ACDAE2045F66D1BA5E9303CDFE9569435950A3830BB0B5406A6ED4730D042F9D531B1D00BB8639FC4145DAAED15B471AE3D21BEF397F7527E51B4722B1E46A32B9BF822168BBD7ECBD080D994F6700DD869859DEBBA4247436DBDB1E579E090DDB92E60D07B306984AB6E76D68A6DFA7B874CC268E5CFEACD03E0E8749E16C4350421BBFD4C90532AED72E2C36C756D3B627740066EAB0F249E869A5D95D5415B3A131DDFAFFBB59A2EDCF505F288EE54C44FAF3845954F7DF09224D6BFFFB2A8CA956EF5F5656C6649370DC91386280B66BE1621386AC0D5B1082155A184DCEC83FF7016235C30D25DC7644B24688EDDAF372DB76082DF77A6E71BB27990B0C0B164C69C93A733A5B091A0DD33D096584A84D219E02DC7870C9A86F57094281DB770F4B5D7B2CDA4C725A903C959F5FAC366C802D40554B90BFA173FE01767B3A6629F57344BF7E52F283314D03051BED192A664D8D324F32B1373E158A5234101BECF3CA94A098323D2E06C426164AFEC72A069ACE9B13F79F50E391A3B439C68ED657E5A1179178C988533953181F4EEE273661DB7379A2E28FAE78FE4164A2AD625BADDA8C47959AB46F04732FA78A9444335C8C552A08CD2AB8CA6640A7E881EF77ECD02FC0E797715AA968A828C226D525BCCABA4CD21C349487E4AABFC528851F0D83429B48FACDBD404B2AFD175B7EA8EB78FD71BCCD4CC901B7178345CD19C032A79C08770E802812F0CD312D80105221A7041A630F60CA60868187985C9D02D5410BACB5CA5E3402DCBEBDDC56B35CE413AC5D4BCDFDFCE21034FA2EF6161FDDE28876A1A557F602E34281904751E5C1D8C6146BDF3927BAED6A8DEF8BE648E917BCFE5EE232B5201531B24EAA22C05B21FEA934FE3F9232EC45FC7608475141FC4AE4D227376D09EF027342C5B2CACE6949189265778506950169046FF367D0ABFA7DDF10E4B374C832032A43550252E1DFF478A77BE204AB29A64ED47BC3498CC2D671A6BFEF313A1CBBCE1CD2B60A35AE0CA0EB12AE581D83047551C27A63F9970A06D44A09CDF3692E7B84BA6623102A5D127802BF0087E33079A1DEB31C973C166EA2F73FBBC84D227EBC480AF43F771D14E9FECC3E7F97DBB438D7178CF6859FCDCA11EEA55CB391E5073ADAAD6DB879D7B85C0B35C37D7E43F96DF6AEA53B8C4528B2AF40127D12E6B50C69665BBC97AA39EDB55E8F0B1D724E53E98AF09C8655EA6B577F568C9BC42FCAFFC7A4DE7D4C0DA73BCC03BDC1A7E262F709810D344850F675EB41F5EFF447D9E2A25F34EFF263E485382B626D5A47F3470D6F4AF001E07164315E9D243FE6515CE9622DEE2EF8F040753B01C96A534783D07BCD97DB94AB25A13C78D0FBCF1ABE6D45CF699C70AC704D6929CEE62B7220349DCF47C7597071914BEBC864FED01288305D0835DBA9057AEDFA1122C4D8D7ED84C4C75038F37DD37F993A03F409E979F8233485D319745CBD8EBFB7AD5A1EE31A5206AA1C8E1940BD3A342ED5FD5E4D90AF7CCB2961A4D2DD87277C4B6E389E5EB78486B8E7797A2B86AD21EF12A7B869FA763BE8ABF6A015E10B75A0DDA444CB426DD15B3E0C336B06C7B4E73AAC99D1BED0235B5787A281FABFD62B481BB59ED4154758E4A75919269EA66037AE04DC2DA9C9AD9456F8B757BF2688C3894C7B7F077218F7D0AB905F4DBCCC63B3206FB794E05D25E5BF972671DDE5BE58047CB79CAC8D4AA7966486CF99DF97D51B88CC9FD32E99C4B39DF472D795151AFCD42346DEBA3441A3A9AA6DC476CBCAA74FA52B70A9ADBA015AE492E97603C82E411F14575E3520D8A443C77CEAE852488312EE29FE931E8260CE14F208200D719CB6A03A2490944D604E39C65901B6AB1617DF6E5E32AE496251964E16846DA977CA7EC73FF3B8135E40D4BF1700FC32D9ECF6CB4929898BBDB493EE1462326A1195895633B3ECF19FFDE04E4D30C0A31C29D9EEA09F1F18A589832DE35BDBF8BFA1C46598001E4EE548726946E96947D4245B6CE38B2216F869C649A65D3F3ECDCC16D63A76ADC7D51D5061ADD9EE4C9CDA0AAF358112EF8A40EC779369BBD753C07FB47A2D047444C1AC64BE49AD81057F4EA84FCAC9DD682065C53E7AEB7C1175BE081BFA228140C2382FB9035BD39F43D6A71A7C1F1890794D84B2A8DFE6E6FFB7B7B8C53A63F657A27E9D186EB3D85557BB3CF72AFEFDB31E2D2A8AF25D95B0631598F2E3E0D8610025F2FBC4BC40E0C57F5E13940D40464AB2635E76FA4A1748FC75F5BFADAA624D4D44A30AD932A137F30D60C4B4D7BBC4614C112489388CF833F09F16002701BD538A80F7A29A22A12589207EDEE290334FFDCA10BDB309F959DDF87CBC58EA949F77BD2B0EB5A997783C9B384BD18E7AB00D520219711A7141747527C7C69C777E17D594F7F4946260E40A9AAA87A083D6A02C0448C8D69896AF1AD7A61FF2B9C056D64909FB67957382E2679760BB5774F9BB327FEBCF464BACAA53E6D5453B56D284EF2744BBA17281E3920D0E679614B76F5AD00A0550A5B29EAF84928C43CB587FCB569054907BD48F0D5CA3629166BCD2938B46775799F4143F6C01090A2F89FDC5AD5986783D49096C8B7FC6EFD0E4A66D3D3E8D431E5FEB397F5DCDD7FA6D1B35D44B6A709956AF7149987FFCD353BD09A939DB36A0B597F57A0A31AFCFCDA438D1F3A0406FCFF66F2BFB6B69ACF0513D2DEE194880CBDEFD2D56E40E79DF9825706DC13EF4FD9761DDDA168BB000CBBD25D22AA26A8F921A48ABC30C5597304F91B9900A06C64F511E746D19EAA3958CB9161BDDBD8AC0F2A6F72BB17D863E66CC104FDB8F6728AC393271D10C0481FC3BAC722E7BB875FA973DB2E4317CDB0F49C03CE69F2820503CA690091CC1D44C14E2F922738BB287A059A4F7E7D8A89366B77B88F93A961D70682BB7C069AE4EBDC5E29E2B4869BA193003803E0FABC4DDCE574EFC2088013FB5A5D984BB93C9472E26143DA66677B9366B6DEA372B3725B22B301772826DEBE5666F483BC1596830F29CAC6BD38737FE22E77C2795EC20F66FAB33C1DA3629D0F969AE3DD5408A825011F299E1031140D63AE155070E8913A26C5D639353DB6B87EF17244AFADDB7A6AAA265172C35149A6CB78D5659F5FEEC88C2D601869DD203665FE0FFEBB14D4F6905208406871A9EE045686CF9DC213A20DAB913AD94A80F174C83A9B6E9BF9CC35D6D7D4F083B150A8782D1C215BA45C9188AC5004C070EB2C390AA4C90C8D941755BF5CDC4EA3C427C26581D77278A2E32692C7261BCAF04F3290D7FCAD193AED794446B8E14208C07340FBA9A294431FE47EBEE01ED12A5C6E8EAC0B9E939AD90EB0F02F1154BF329C4D38C188EB6CC84053F486A26AB63921DEA91943708CFAAD113CF676E13FE617ABBA297A7C5189FAD56FF16B5A50F38CCB02C2ED61EBE278C9A5A7065982FAA0CCAEBC366CE92652D7B8044BDAF53F37C2616C932E4F30FD99CF8530C7F5D80A8DD6D9D91F90636FEBCF9D300E45D2D40C6B35CEA29067D54792222DD34D8717A9C2DA36FF2D698979C89B0F7336A8C1EEEAF1DEF3BC367E560B3C4A7EBAA8DFBBB9FF08D4860A45C428A8052C379437B7391BC2B81C494CE945ACFD61AFB43A5DD0B425B4C38C261D2FE1267CDA86A9BC6A6DEF1A3642CA226B0A738AB59CF75263E9432F96CAEF132B7D46E14315D1F6CED19420EC7F75D4D60FC2E81B8BDC2D7778F1875C79ED9D0D3B38B5524B5523D089102C6715747ECABBA204154524B9ED0FEFED555C65C16515747F0A28C08B7AF422B2357A3D6CB9132EC51028B28295178D3BCAE9655FBFAC7E6243AFF7660977CCBADF759FFB00AEB6269E4F9E01FB27E86456C950D69DC5B1D57F8563E94061EB1EEF16CF239D6765A2E739CB97D3A5D9673999BFB19BBA2E943ABCC64A201728046D1905DDAE318AD8BDB877D937466C61DB4C60A69A633016388878A0F78D89E5B0F9A2AD19AE6D0BE508C54658D49592CA503317393C2BF1881A6486086338F3E369CB09C0FE141B2EB79A1C8133725E21B1A51B38A22BC252EBF302D33419F16B87FA067B7769810062D33F77E652FD981B933668D63F594661E4DB318F864608CFCDC9E3AFD9EAAA8378BE9252B072AEAC7D2FA98CA34113CF44B7D3EDB7DFA6B54532F1091A4F22CB75499817974EE7A5F3B1ACBE74A77828330D92600B900ABD2EC972246DA3ED08B268BAC7B6A0E06C7C42DAFCE4A1E4D290B10F06F62C5E8D4D8DB027F026F63A9088D64E3D6E65CD8B9009F81A42D67A521A307E22FA7817C613C1C80C037FFAC04B929477954C64B5D5EDFEA6AEBE395A9FA5ACDD0C6497AFF5779FAC98CBD3232781B86DAF5585954C036429E50E695211DCA396A87B5CC16B5B7DFFF9524EA271B6ED53CAA59BB180CB6A39F0C1A4A78319F8B752F04020D34391FB8C89B66A4DCB747B1DC85715DD042E42BF50F544C0044B6077C618AC754F140FDAA97514EB98F2BD170AA9D608EFF4F427BF1A31FF1AFC92D00506CFDA786808B91D753838FC928BE0FD3B522CB65C4A6D5F961AF7F059EF0AE0D81B26FECEF28FA30D9CDE6A05BB7BA44FBA8C40B55755C5EDDEB476C5FC3E82A703E50BA919494FE271D2776DEADC73390FCDA884F7834884F7DDA4B2092BADB24252D81DD7C86B5782C7DFF9E3B76DFC4EDF34C0AA977283606467AAD91C6A5D0F07F75DECD6522FCB55A4892860EC9E1EF5DAC0A7937D4D49471FBFEA583107BE97937589C9F12E2813F3E3CFD60F7A5B35EA1D3A7AFFA8E2B87701A94EF1387EED49730D7B3B358F3B992A98A7B06303972DC7BE14731479371E7B2E09CCD5433511C73E430CEBAFE272F5CEC15911316018331BCCA313678566CE431D68ABE94556DCAAC9A3A19F233C116A88EF1FD1A631DEE41D329AF8F90113961012360B06327EA34D3C1EF5D5B7771B92DA7E5D591CF37AB82B2231178B752350D364BF556B02EFC0D22AC2CA6ACA1322B860DB418A09643F0FB7300D499A80FC281BD04B22C4B35D142690829A33ED43475B859ACD9C2F31CFF1FDF815EBD71DAEA394AEB06693AB33E52C25973CE82944442C1FFAC04C929538AB646152822E093908E95A1D67F99C2635715E8171102BC2518A535474102C304B28A7A27B5A0AE82A1712F97CF4958E3DABA2181B7BC20B62240A436AD0159BE351217098EF8F1D2F5A66890BE3508A2D69B0A594AB5C8F2E7502EED223348EC552F698A415E1F637F87851A73841800DC8C273CA1281B53DF186FE1C224988F122140559AC21315F5FD902AC002EA846202C73C9FF941BF924016D5FF3E943FF63164FD3D7C7D3C7A1A75420DC433148A4631D5B03B3912CCB45801662DE9AD7F66B88FB2073BE779178E90D3E8B506D52D0DB32C02D956F0BD63E1D54144BE7D88B0C8D9C3FDD8D0643073EE4A7F5CBBCEF3C34E8C065D9FAA301B189A85923F89EA9EE2938078F33E60249B36D4D77A33195874DD7FB81FB0908DB5D2E5F781D053FA6DE3CBC89443AB8AF2A12D9540FED615ABE7637E6D12840A3FB521B57BA91F0F9AF68B011D7ED78AB39FFF275485D4B29D2D3C10385725432F9D80A71C55F57C1659C34933219A57BDE2A064F4CCB6CCBF31E0D0A84C14F9CAF9620DC7FA24D766A1E905F75315AFF836B750F5A63F7D089E05FAE96D170FA96A378AF6EBECAC90553280EA217809BF49371255FAEB5F57E5B8084586C586DB76C92C29A2A55770A915A375474222D4F16E43DA77A7FEFBC9933943F1AFDC3D4C72EB9F4ECC416CA2D15C68EDA0899ED1CA08991629446B4366CDD989F17EAC5346CFEFCCA584AA7462C548390628BC7180766D45C66BFF6BCA0895AE921D3E703321C535CDE202A690A7308053FDFE2FB70CF0EB44EF7CB5DAFCB8F976CE82A0C4CD2C11DFAF78D341ED0991C834A03247948428C6BC51C8384413F66877D1CEB23A2F521B52503222D0CC008153086A09E9EF37C405F4F704F4D93129692DE266CD351AA80019BF7C0E642746619EF3EA55E0DAAFCE3542D43EF8EDC8109D54439B1C2A9D5CE894EA3DF584BC5B051F6BE9B7241E161100CDF5E8CBF25827788A07E03E86A384BCDEA809CA1676B05ECDBCFF8551409D74239E5C63008B96986DF23F928557B38BCDBB77110902928266F7E9510A36F8609AED7403AA7BB84438C190043B416DA549ACE2640F8BFB4C0EC741DF0CEDC76DD7CD56C19B4A1290710BB0ABF0A2CC2E662502B5B60B1F786CC74088FA058970771C5BA9379B8B616CFB87DF93BC3DB3AFC3296AF3B5ABB3332297AEDC868B10548A8F84A975E017D35FD3B8827E80C42245C7729C08B374AE0A5B6D88A147D6DC85D29BBB29139C812641456D92732B2CF28F55D5C193626725746471CAE08F0B07339F19B980606DF1BC5097B291C1672D4B5537250332B0B839DD5A94D562854F438ADFAECE5696D3D24C235B0157565B486F4361A334C42E904A1F3E4084F6FC11EB8398EFF7DEF6DC9721C40AC673F525714F2C73FD09F5C0B6110DF0CA6A66660A16DFFE12CF60B702B5E5BEE4EFD1BBBEE3543E418025966BA59E14C24A428722E8B1DCFB8C20EE6C82684C4D6227B14B49720331C67353B9FE039EEE3092EA0B88FF5DCC138D7B15BD1BE48A24AA72793122A3F93E4A1D689DAF4746B93107022862DA5862F47E25F0EC31455DF761634CB716C365E87D2FFF503157935AC983495E65BBDF9F5DC00EF0022931D6E525D6B46A2C7ABD5FE53D569382E610078D9B6352FBEEE5C6353999B86FB90B893F5703652B29D61B985F3A7C5756FD847213B443ADD4327E2C5F9C4F888E1E5DE16D02612C8FBB42C46EAD030A3E076E9C9E6C8BA2065BBC77FC8F2E7CB079FA88F705DDB008A665338E3EBC81227648BB40483B79E2AD8CECA80D59A29A5FC9BBE42F70158F3A91E653EF0A006036D4C0DB5D3B5FD87099DCE69942F767A0C9321466D60BD083DD14444675075F5B5CC49CA6EDB4557A18CABD2DCB9B4DCF7F2856EDC0D5B9F6E12F26DB5385BFF596A1E615CABB1AB322BDC8BD18C9A10C6943E109546DEEC99BFA3AC3A613CF9C904BBCB0EE71CA781364383374D0EC86851AA93512A721C5267A767002771D6FF63AAAB412FD4F0AC89ADEF04C5D774B3A0F9E6DAF2F99F3B53BF480682D8595F0EBD44727850B8662F9F8F052DDB2676AF805331408AC71FB502266A98B8D4349BBD4A03B0186CCFD7B7564D98EDCBD0969330F1228361FD218ACDB226D931A409E2E0831D16ED1A91BB8CC9B500CF4DD06A1B647ACA8AE8FCBFAA037BD2A6BE86352F647307F09322872BC0B99C169371F75EE28E4D8984C5B388DC4373E13EBFE5FB49ED3B0DBAF3A24335A8BD1393901B929DF8F14D0DF4316501ECDFDC17FA254ADC477DFB73087AE435AE3BBF5A567E43D128702085153DF7776FA52E311C75E23A9F584F880807BE18E6771253B652651E292A215637F8E41D8957FD34ECE71BC44A4FFB2D974CFAF7FB193D1AC1976BD8F56BD7F3C4F95DB20FB4E38172604004CB613E7F3DAE04A66FE31539D8F96ABA960F2667F479D4ADE724E8BDD9339005BB3AE5B0D0495470A16A17B8F4FFCA681F0A136EA2B47135F4708DACC2ACC4C98D29BB299A9B2C12F7C10986F4A342159BA7A61C3C0602C754FB3296EAE3FD89236AEA3B9B2D7B5EF5170729D6C7A9EF41350406C0C7A1A95B49FC9DD283F3240B1979A8703D8AD08FB99FAB23E62443B1D4E5A62FA142A16BFA03B7C9BF65693AB86D951E94175268377654AD3863AA5D981133279F7DE0DEBC9644D913C91447D5BB09BF2769C505CA37922185091FF622BE2D778267925803D5113487648A7F255564B141C154AF11E299B19F82CF88C29DEAA7C023B27FA3440B222345B79BFE77EA1BFA0560ED7AB7B2D8E9D8BCDCD3EF2F499692F58E20E31422A805477EDE1876B567797B9AE08BEFC66F3653BAF5EA327CF4DA161F8E209EF1A6D262241659D5C6D93A19008B59666108926ACDF0B874EA80FEF091C431354FF9BF105373D1BB5FE74E06F127C0FCBFCA987B387EC4962D5E56E04C8AF32D51014FF773FE290CF8F96199585042CB78666D83E5E32A432FA3C0E8BAC7E7F336F70BA16D979842AEDD0DE1056D808869CFD9CA235815C92D1B1B2478B74688F083CD64A57D85F7CF8264F44A53CE08CE2ABED1DB21DE82CA063F83AD4BD823C03A89EED1ED524E03328F8E2F14D768287B787EBF4DC162AC20DDD84288657CCC12E3410C1F5D3C4106E9DADA9965B5CE118504982D9F05EC69F11BFD8EA772C66375CA5697F2F72D5F28ADD46B3BBEABAEEE8939EF1B4DD7B7B74873DB20F06DB8FDEAD53B07FDB3267489850961C339168BF0923FAF37BF78115F4DFEADD0540C2D2C41AF0315D26094FD98C8D825026278DE5E91C8D12D3F915DAF50BA3F2B596AE13D19F35CE5930C765AC382F1AD63B001F43F9CD0CE106478905D4E9C3756A4D618404BD35352E4864E41D32CE5CFE45B91BECF86E8A14DAD9C450352854985107F677519D57B9E1A43A340AE9F0E29D93E84130CB71088EDBC7D0FCF717A2244CFC77D140BEA64AF12FB417B9F6C34BAFF5634059E9CC2F7BC16D862A203F45B6115AF44A97FFA2D2CCD86D63E2CB30BD72DB9208C257EE8B07C40FC4F606416A4E7EC7160F20676DCAE133C3A7540894D0226F9977A19737B5637D5F68CBC4C30D2746ABD685603B1E62DB78928D3037793C83AA5C45DAE44EE8BC36D0E67C7390BB8C0671724F3AECFA61B3E575467C87E0D3E760E7D1A843F27F507BDDDC848D5FB898848D4DB75BAD8E0069B6A573D1B25B6041F160D2BEF1918D181795F2140018720556CC24BB28777D4E7CC086B97F2D157435194801368CD865B13E9304C9101145DFA1E3D346D3CBEE231E2E34778A4A97CC3C691D15A94DBBD92673913B306605474F03C9D891B3F9B7206B5420B5C8C14749920D2C61FFF9390FF39FAC42EF9E8608F16ED6DAEF4B8A63015B993C325D0AB973C88A56D31A68973E514B512C588E6DE822A6681070F6B9E22293198B8AA3AD712DA3419C9697ADBCE4BB6E9B1151F6F93CB6939EF1DACE5EC0F637E07AA2D73C3C1FFEBABEE37E0C08BC3C68FA7F24A512B0C94D4A59440BC5FAFB0D7E13E1E14E8EF278EB3346B7F3C08705AA6ED04DF84DB12EC5F000026C636DE063CFDA3F3CF91146DC8143BAFDBE0CBCBEE3D22DCF7582ECBB1FA9361772EFC21B037C80799F38987550A7D716CECF1D648B1936203148E6B17D03752352FB047ECAC7EB7B7CCFBB00A1D9F5987E4220B8C186191EDCBF9377BA61C18388B053EDCC17768B3E2D4B132A70C25F55E5536B5E26DF9645357EA88B9AEA2E28BD997238358C2348157A72CA23231EAE07F5A922B32474A4B134492FBD0E636F7523C38186A40F5A9C630958E29318A0E388C3F7A3FFFD7931694F884B03CB6B1C5C42779D6186AE573F5773C4BCA731FB8A5D559F4344F132BB453B3C249B9B84995665C0B05774390473A7272CA6C26B5718F6F707E6924C1AEC774572A6338720D678A73B58DA46AA0C9874B0750A73699D6D5AB21D0D303C3848F0727F0E87E38F423D95A1C1A5FCA8C26C1BA409AB0536415870511CEBD5BB02D371D32ED6C740F663F87D4CBFBFBCE80B82DA1A651E393500386FD6867DDD16A9CD2465EF56584B2E4D99B04222061E3458F5E88FB234AE2C16EAAC36779435EF24D5858E44F07C9EAB9717B588DD91C4FAAD2F40DB4965F627B50FEDF121666D7845D78097222381BB3EE7609B1B211AB9D5CC6C42CBA0E52C3395D5620696592B3E16831789B43287617D0E25ED6A587471434CE18FA3CBEC66B0093FCF3CA9F85FBE409EA455C96CFD491E60D30FCAE4BC260FEC71FD14A52DC55771A0ACA58D813CFAB0021F7E9CD6FE5E85446881D7322C1B9C7604ACF506B11BF2B4294319540BA5407D3206AB6EA44D34C00682EA4830D35693585900EAB9F27C78687763C5AD40C0D1DBEE09C6B46AECE26E865EF193D8F95420C517DCBE44FC4BC2C12BB4E420A891F148B8E953289B06391E32E362555F6075D6AF5998D8AC8927D710256449AB734701354CF75B141BBE06E316C0C9B97A8C9E22E0880652B2E47B002D0689EA19EE8F0156CEE5D6A16DA70DE2CAB58DD796E28CC9A5E6100CBF4CB2C3958C2D0CB4F3C39C2DFFC90BE7393AEC227B97F17FEF66029A4AFF1742969254D92323B3996D7D53FCF752CCC546F32FAE8DAC1948961ACE4DDBCD8D6AE2FEFCB381E3C7929FC0AAB36BCA693831ABB38DC537895B9587478303AF0E905CBA7DAC30D0B5E15B698051052BFE36389A5C7F72AF33ADF1235D357C718266EF3FB24424DF94C4A91765D90E3434BC1FA33EC48BC909273ED04C9EFD1227932BC1E0037CB7438DE7062E8DB9AB01D5BE22A85BB117706F6800AA151C648C3090ED8A7E26328D68263A9318B8B968C210C12B93A812E38E8D8EBE8AC3C1A3DF11FD58180D1336390862873BAE631F4EB4717C9C6B29E1FDDF50D0411371D9E2647B4645C371DFF4828BE0C0134E43E84D44F1F7BDCC5D781604CF388C0BC3B79A236CDE1F3D368C8E45A693A11BEE6D2C8285DF139E01CC4AB8F17F1BB6B0E68D3BB0058F307923406914E746B51EECFC59A1E5C94664C2816F6ACBDB2A168EA4916A792A15AE2C3CA58A82392AFA7E555727E38ADD30ED0423E1589902323AD2970074B10C761917911776CD8ED7B82A602FBCC96D3592F7A95D1F88DB8A7B824F0ECC3D14F102FFBDA7E74C2B8ACA9057E1E836216EAFED809185C9086E6D3A6B0AF49F191491655CBBE9F98E2433A4084C023514D578AF82372C30C5E9DC8C727D417E9C1B79B1F5A88CCB67C0D4EF1A8396900DD7E04D7799B8799783F51F2A915A3FA78C2E7C6E541A76B559BAE9676A4FCEF77ED1E9C5E3A0C81A3747CA48B889D080CB29EFCE1C8CDD57F80ED0B6A41EB8AF4565D8FBFE3F560C7BF769E75C3841B560362BAF775861FEA06C5F805411802F41D3759EF499C3C4AAED1E28B60E0DB3D021AF20B609CA15DA7A8FD3C615D47C723399DB8E8C54A4F266FECA763D7040CD9E6E512329A047723B976E9928D8B2D483A5419722D6B4021BC0007893B2E0BD417582169AE7238D5584B941DBE8B1E080F73A7BDA4B88923C7D6EDC20C24735B79FA5097FA42FA03E1BE37B794C772158F5196E241EB650B62E2F8901C904E62A54FAC9BC0BB566A2D6A42A64CD14B7DAD8C21C946FE85F6F78FD2B506801FF70A2E01E3776678D92DC797201125212725E1922D7F09106ACF43BE06DFD5028E091BAFA8E4290C2ECFC26EB4AB306C64DA2B943A03C7859DF8008D70B3472F7916D27A2A6AD0C2C004E8BB366927B70B51F7637324FE55BBED95541BEB40271726FA59AF2886ED9D73A95420CE389992A78D2F0D36300F19C4D73FA953288519B90C4606D50C41D8395BD48B9CD0A95FCA8F0024BC0A2AAE762D662A672FBBF4F5C1DF48BEF496FECB5C906D5489077C26FCA8282E07ED049B0A4C12F4C7D3E3270395E232DC1FCCEB96ADC38BD79B594D97121EAF9B83B31251885722C5F81E49E4E97E3D26F677414D8ABEA47E529FF9FBA2FB0A3CFF408500E69B1D9B5BD0AC1D17BCF36A0FD3342E81AFA239A0A740A521FC9D5A447BA929C06F1F244E71E2AA37AE9A5ABFEE86A3BBDBE0B3594D2CC75C98B8E17DC4FCABF798FAEA15E8A717CD72903AC8DA55B3A1BB6470EC55D1203BC6BD3BF482DCF7D8E31E01DAF69A2875B0F04A1D26D0716C377BA8621889CB3A0483DFE54D00DB1DADB6F28E1DDA23CC8D3152A668A26B95D5070ECBFE62925653F5213732F1CBFA101DA5009C2592406BA649994A8915F849B612F195A6B445CD9B7098E45EBFB81980903286E04DD4F725D677096BE3E308E2F085282891950C8D459FD74D41AA7C22156F3600042416FAB79362C0E3E2109269686549A88B82C7C4B9BD44F08DD1913312C2E15BF0405A93014A61F31A34EEFF4E5C545A1CC1F91FDB4BC835E5BD8110B3E32EFD4D6892139214D32F736D10FA2BF997D6B4F8236332276A76BFBFCCD88E42ACD815D882E47A354DB87A37495606C3F5124A33144C03C793F1B98F9E0F7B69A94B6B94A9BA48CDCD258F59CBF00FAAC9F00087507CBDC49915BA34D7D99F6CEB156125E4AE1D8B9B7F97E40D34AD038053D19291151F82FB551B761624D8184BAFF41358E997C354B1922CED03FBFAEDC608C9D226DB99614D6A303A2210E9F665D9A2FE66E2EC29BEA59ACA7D5EFBB6A210888888F7A17F55A48E8B92DC002DA237DBDF4C346CFA2FC15B5577CA39B727D22A8BDC103C0290EF5DE3A1633F9B43692B055A813634ECCAA34B4331548DCE7AAB0CC3C0C9A3FE8CD5222333127398F283388493C7C1F50635966F47A32AD86F87945B2A60DF6FE5CE4B6E43DBB7FDF86266B0074FF03B5BD30BE0F0855FE54084A6D2F243599187884961C701290594E10DB9B1B7344D8A44C7320AF757DAC55A6415ADC22C6A59FE675B1F41208CEE286AA7284F343CA0F6BC0C941CCFFD36A6361C94900B5E23E42D7A0970C7BB199BD9B86F61513C872A779BCB4FD41516B849D14AB9101ED9EB4555B9730480AF75965642859E1EEC91E4A016828E4B2B320FB1C4DB2C814F15D299E419234FD78D486ADAF8CF8C18D85328A3BF18CFF53F8A5E5A6FA42845C850A34D5106CE716832B54B9B0CE7931AC1A473FF704B4C2FD247CDE07440872FF13CFA54686703AC6278687CAA8CF4B69F5522404A0DED78B97D202FCD72BB08E8DC8D176142BFB307FB944F0B5DB899AF586BA729C81A7EA3CA4086B9DBC1F9161493E0D18FD075948A3CD084243C4E6FC788859FE23285B0D4D6CF6A781895DA0B1D39FECAF3CAB4C21CF58202788983B8155060B279CC3AD12D0FAD787D08118FBD22959FD55D156A0320B93B83502173A814FBDCBA199633829B9553FEC448CA2302C7422D8F00A6024A4AFE193E224D450B7DEDE193A9D82E76AAD641A9568EB117CCDC5027ED572A97FC8A7E3267B90C8861ABDA14BA22F2CE4EC1618A8D10AA646222533ABE0CF092E06C6993E7E65FBECC619AB732D5538FC199A43914092422F61E32A5368A592DADEA0CA8C4469B125CF33AA8F0DACFDD2B6F089731087F790865EB7DE36F1D3F9509B2AE24BAA391A62C4F932407960755CF637F1C9586AB20F1CF902788B9967B7976FA3BFB895E525315C8F7AFF4F700DBB2B930B1A03F82DE6F1E4E507868CEA9DE2267FD5B4F8046E2E4E9E962742BD9DA47EB4B20B7DD70A7EC6B0106454A5FD066C417313AC3222743E58D536890EEB1EB20CB6DEC861981179A6906326019C0E4A549074443636E1F3F1DDB005C03EB7DF54212CDE56BE3A8D4436954D66C3DE78CD695D1FB9B05A8DB97DD8F9522B1D7B3F31BCD331754DC57AC730CD1FE99D4DB871B08BC007C72321FE301C232D5E5ACA1940A2FAD526C775C4D9946697DC82CFEDF67FF9CDF59B19EA4A240CA478EFCC36AF42AE8B36B3D81EA0E95C97B2522A2822C370171E9E6F845F789D7B2DBA86434CD5FC05737739E8D6DB2DB61DE4A6CB37A5B76DE19587AB35A2C68283DE736C2E1711D62BBB7CEBF8E87D89975EAFAC5ED1865055D095B838E42DD3FF58D5377772CD5C515712D221680F0BCB7788CB1E2144894B1CFBBE4DBB5DD49084718E3ED8EE768495A0F7E5CD1D50BB6EA8CC83EC501D37885C36745D872FE84F9BCA2E429C510FD4E8F6CE258FA17BC9FB45783B1CDE73C3940EDDDE1CEA7D5B08468D61799D44AB9F016BD89C509A35FDE710EF58CC06D321BDA029AD65BEEFC58C2510F28ADA026D9CABB38BD99F05D041C30B5B9C1725B599E57707A2DF7DA7B75460A9C9500E1DBDA30E58D268B9566576811B78BBF7D1846C03FEDB39B8252F7ADF7DA632DB8E267DC6D2B76C5329AF5CC92B7306CDBE05CB4CBD139955BAF0F79CE93CB31E3CD1923165C56C22C40A3542FCEA702753E6C8B8C2A2F9B8770075B06B02F0736111AB40B769F1B110077106C6705FABBA59E06129E97469823304E1AD1B9DCEEFADABC7370E090E549FC07997A2E35F3E73F62961E718FF0086C6BED1023C0860776D3E01B4A9B24A0A20AFE3D051B91F0BE1E2B87E4BD1A9724A4371FDB64BC13502ADA58D89D98A9B79603B511DE352213048C0970FDC0193D70F027B59C65461F38F6A4AB69909DF8A19013C8C2164E291CFF6ECA779B7F33913D2D4637F8924DD2ACC2368B505CBD9009DF3068998CE7F5664C653DB8EE2B3152CF35BD0DE375D82CB2C27A52AF8B8274AC9DF4DED89CB346EB75EDCB90C2D61BFC4AD9CEABE15E05FF1FA18195C7CE8F9184EC56E6D5ED954767484AC25FA149A06B7B7BA3E9BD864E42A9428C849F4C3AC7D568866FBE7EDF7AEC8BBEE51C23FFFF501E6F67F8639C4854C9D3A4F919A751204C22E83E8532505125F454D719ECC87CAA8B9C91ECE1059CA99494A46FC915C1AFE294D27571EA2A23822E67F8BEFCBD9585221E2A1B629638A4AEEC9210357C49CB0D33FDE1674B0E4D567863AAB7CFFD593BACBBDA022CEE6B777271A2D813B575AD7D08A976975E2E63310FAE697973FC1359D7FCDBCBE807C928D0A7540C7322854E5B7C04E5D24E2E1FF980232C35623EEC595FA6755995486A2C94FA09962B6D56C2DC5AB679F37C6CFC771C0DF8FDB64F277386218DBE57E67477EC4672BB3F8C1F8FC7C12BB12A945F17A88BA6876027B70FBCCBD12B84CD179C495C6C6B931714CD4F1BF90CA88E4C74E5CB9BCF0BF1D74F4B7A2EC5DF7B1E63171E1A472907579B0F4599BDA549AE6C4639DD8B9A2CC9E19C431A9B84718F0F4BEDB7B568D518D1D4BC74602BA26DC99223302F93089C0A836C7AD661CFEA7AF1CD3B51B150B82668DE36677E6FFBA1E02C2D1CFA385C66A359B44012084878A51B3FD36BCB2F4735649A12376833EB10A14185278C35FFBAE51EABF54BF06186B9737D2A3BA23376473974DEDE0454F58E49A2709B8877415C5DC8ED8AE239E44D658434599DDE85A2FD7D083F211C3FA316C1DB8DA26CE7E53C17617F4557011A09C8FE2F7B0B3EC3C9EB63DA486DF2120E45394B8EB8A26E8C7A434003C398803B95662C026BE606B4ECB8C9D2264C6C86ADE7C027FAA40E9661D2E3188CD1ABD0EC2F56236061B7CD607D3C6B14A38C9B042C2F13D6E5671D194BC76E8DB0FF5397B11D0FDBD734649C0F7F13C30BE2B0F63C2ADD0E2142B2D839297EC23D127A6FFEA324D56FA2BA19553F819DF454711EB0A2FFD51C3E22BDF0F267B26A5C16B2CAFF704A1551B4AC65D6D47D4149CD5136263E2A20ED844EA4FA8A13205EE51CAE6845969916F0CDE8F99FDAE389639596A96E73E4AEEB3F8AFB05A556949CE50A0062A16D986F9A28ECF83C36171DCCB75953A7784DD35B1CF09159C2E40FE1398470D7C8D15CBC9FC9AEFDFFC2F766AFEF9982BF070E5997B7EAF27EAD315C76188873DB4A05423B9C207C5CF9C603C36D53EEF260D4D47CE913E59259DBDFEF1B2AEA5B78DA352F9B9614F2678C7F662114A2EA3A6174140D65C7626F8D49EB3BF213E4C4C7B471646FE09ECDBA3343FD0F20B9437429F546AD9C69C9FBE29A6C06879F794A8AF81143C7D622C62DB14D11635A31D36C4290040468A2256457946355C2753605AADECE95143BB16F4458A9284759F0E8D4C43925E048F01891E432ACC1B8264C5E15E834ED6D61664739E50605FEA5B312F86AF10845E2346EB2C9727836758184B4DE17353E271084B086FF9040BF81EFAC8A1577BDCBBC19192426275D43BFD00872994A3EAA00560473E3143E0A37FF693C553094C747F1C8606F66D8ECE9EE90FEF9DB3AC2DD201EA00399CB020B10A31A58B471AAC0511422E7DC8F2B4745F958EBFA6927DCEA0EAFFB2C8EB01FC23E8534690CC3ECD85A4FE1DD3B01AF1D1011AFAC1CDC5FC8FDE8DD9CED8B6829150D0BFD5AC054CF1AC5CA0DF483D6FEBF4552D201DB80ABF95B52E576F102C86E6880DEB2E5D63A6F0F17E2918FCE0450D36EDD21CE459AF02EB6AAA05AA218EB7958DC1D782DDFA129FB6047E0E3F57388005EB08FC9B72ACFAD2B91F1AF363AB80C22DC730EBDA08C1ABB4D18598A4F8DEB138676212542619B186598423E696E8D0F71E3EDE3A0469724AC24A2B731B897AE1FA482BB506D25376CF3252E8A3C80707D36DC8E03676E041684AC86F8F88E5C347B099D4BD11D3944FB50722C0FBB1934E39C9592A3BA08C46D262339EF06526AB23763D5A75E01A8B4FEFF37AFEBC0507C4E7081FF0D4CDFDD305E6B697417F7F5B7BC51D69975A61B00E29E52E8B0E6E457C364C32CDB4E7786EB3994B4E132703BC34B60CA3C34DE7CD57CB453392F084AEB69771AE30EA4B25CB97FED5184D6D3A6FC73B5252AA3A548E2D3CEA6ED1399A4D15CB3FD158B35B148ED37815F620F0B5743F6577DB38C1E69EC5E5944A4809DF18F7F3EE4E9E88872AFCC6815EC5602709A6B9A43CF09BCCC7F3FD94993BEDE268D5B93134EAFEC9D5CC47EDC5E9E6827B77146838C40698DF0793ABC9A79DC492B94FB3F794CA489E09E251A8D71299FD33666119D1958D61421F3BA12B8ECB26B7B6D942E156FDBC63F90C5156CA48D32E07BA6DF46A404C878AE6ADB095A61AF055A5B16D503E83FAC551400A5062E9A4C132463623042BF81C064311B27FBC6BA682E2382CF869CDD57699EEC0CEA7AF89DCF3DFE022616AEEB1DF2D9479159E7D18C3E8FE78CE70E0B289A1A0E7705E3EBB027DC12420E96BF1CD1722EB83DE19A0544C920F329841624D1F9C45BFB75AC553CACE2BB4EB3FE73731EB44AFA76302FD2D31F472F7596B8E801AF2ED6B9B6D9F6DBB01356E25FB60B1D2CCC068ADF17C01E75D78E6F114E9771D530AC8799EF071FAC0B20C98CE3D9E78BC5615479A732FACE738E9E194E655AC1B3D2CA83BE1A3991F35788BD0AAAF6A0B1E052413CC85285CBFF7592A904874031CE098EC0E02459A0250D09973C59301491EB3B4293038580510B6526E6E79E2211BFF752405719146421CE2D34A70855E24786EA3D7EDAE156569B827DBA827AB7DC18FF5180AE29DA28BBA26E1889B8BBD91656F47CDBD0C4380B122C54ECA04FE1852AB23E7B69A2335481B9DCF6036D66494EA13C61EC45E7B5CFC3F890230F50B199E570429794E11BF5F035F9A2C7106ECC6F0BAE591E03553BF0A5B0FD7165AB62D4BA4D908BC04698B5CCA575C52501DB011559458EEB016BEF0E70FFC47F43312FF17DECC0145760263026CC3E91A1CE0E7201DEDD1C4C1E5F0E5962FFC5C54BF90F7969DBC3063B16B82AD706F2E5E427220BC403EB2BF5353B1A43FC5DD21D1E89EACEBACA319DA08CC0F386B8B48D0BCAC07CFC20B2F242E318716B212453F42764BBE1747C596BEACC53F1A176E2DBAE48F1D064BA148874E96E42BAD8B903314DCFB32F61F58C6E1350CE10DED0FF9A9CB9559295FAE7481CF25485C8D10784384944AC8768B44F28472B632314177097F966DF9D2A1B1B2FCDCFB0ED98B5E8DA6C9C025B92D4C7343C1D43B3AACF169852675528902E41F91B6BC6CEA7066EB0A9AC33D0AA638FC92C2E3174CF3D5A71A35245AE99E8198168AE59BA5CE958542805E06D22EB2CA717B632BCA8C56B77BDFAADF984A9D17DA8DEAE9135105D1474BAC1F1D3CFEE179E68482EA25135CA8ACE4AC649664FE2C200C6DE01D6AA274D969AD05BBD3DC1976492E4FCC8F088211F54439D425B59C965AA0D404B4984FF20454E6C7027BDA75AC6E84EF659CB8E5F423E30FAFCAF96FC7D564A963F0ADA18B3B322AD663E27205CAF2FF95B122B9E6082DFB2F351EA1EA0E525F5FCDF748C595EA2BDAAD012D57946C14ABBF26A3E63004A5E8AA06223D5FE8B25720B0F3E599DF09F8D499DCD96614F80FD6A6552787DA39EBB9DD132BCEF217F429E19F695CBA1E3E0AD1E5C7F67742F5D9F150B89E35A14011DFA70E6373B18272AAED856DA9D90729A60978380BDAEB4EF3F12853E097CCD5BF179372AC9DEC626E2E9EDD12B9D54B99CE651D2E790E1F4EFADC7E54C2410FD86748A7D9026B5EE17B48ED1163EE1359BD813D1A52F910BB584468DFEA6A3AAB20AFD16CEB27ED4F4EE09AE4AA94ED29960945B7AD4784236F302FEBDD449FE051E25B12928669B28DF16168E044F673298DC5D39FB8C003D76E02D0F9EB0196C13967BA28059D087C8EB2F05B2D63695BF4FD26B1B912AA05AB6DC47CFFF9E098D173A7B951156A6E951F1755FCFA7FEAB1530CB9FEC2EFC64A2AAE6BD157116456F03BDF5FAD4E6B9762A14AA21E55A0A9A050E16AA443E5F8A7080F19AD27B7DF25F6E339189866122C55E37714A487E163ABA41DC2BF983CB6685D0003B49C234C98C009D95DF2E28919639E14E1651DD4481F5EAF7D4990C619AFCCD294439EC1E7395F407753990FFC0749C981E03957F7EE2F7124BF9039CC5D1E1D2B4E046682279A5C14D9DA41741A5F11CE0F2762EEAFAEF5DC31AE74163751A76C65497BE1784CF7EF41E2816A335BEE92ACE390803E931849DA58E7926F504555DDD214DD67EE1136B37A7CEC3AC7179C5008CF18A704E79918CD211EFD625FC25B823376284E1294892F08D6E965EC29D530ADDBEAF2F4A680E225B9DE0F8F780B3E367EC824862359420A6739B821120E85697FB49DAC49D5F48CA1E9F9D3B37B79BD9CC1C7A8FB3DF9CFAF23F7BE1885FCB6814A10DCB2349FE3B3F8882949F345871C8840EBA1E60E3B115849816D18F7823A37557A5A55CBE6283BFBA908E3B7B0C21DBA2DFD00D0595046629DB0169C45CF3250BE636741194199C35EE499A569D04B0599C08A49677E43E002CF2C75A3A0AB31705AD32A89755A405343174DCEF72B35B87F4B0D1C30E6B1CA377AABAE78CC19A629B4E5934C6439CD15755C3CD97A4518104AB07A538BB04D3C0BDA7952A7BB127ECE267EFFE7F72DE0FF37A6E4E8439649DE22C7E1305ECBC168DE8B1061DFC2D705CCC7E772DA42E614E2DDD9DF5547E22D9347D1C907DC8101EAADDFBC24B599FC0411B77F918F6E8491E7C7C55A1F8C3D003BDAC91CF11833C58C5B5C41BAAF71B755EBB1E74D7F2C968AF046415DBEA0C23B5E2B400595EC7A54474BB920B2725A7B47BBCBCE7609710061F2C3D047E5D775105991DC873F6DC5A521BB8712E5A1F49C25311D04C6C0E414089E2BDE54388B025F554DF9C2D2EC9798F54066A912178D050A318102C60C54B5422E255FF4EBB3F1F2725181F733E80F5C3FE315FD33E499CFFE38B886D74A43774F9F73100C401FF14C08C51F8C6417EC232591F929F4B7A11A4553B17F5254FF9825D148CB54D29307E17926BAA31C6776D34830DE2D5FA28EEFE6C0310D5E6DB911F07753E7983FEF42B29234C7DD407FDBF051FB11A1643E7760DF74F0E4596281A08406E37E3DF0AC6020C4B5184AA265EF08797C575A977CB6AC5B8906FEE77B54236B22E7BF5794A4E9C8F54FA2B9EAD8998CEB1DFCC7DB35C927A6C16AAE9016710A47130D1679B9D14F112D0428914099BF2B06FB58E2117A01A22CEBDDE5717EE5224197C6921D1B6E21DBF688C22DA18C99DEA3C13E87AAE8D863CE42397BA5153A7965293BF00821509148F314FE632419A3FA092BE3FB6CBF9D05163EB199D1C60538DE8822E988EC760565896675E47B77E92E3A545B50878C2E48329B641E0E09212C9BB85A49AB28DCB05000A3FE3FAC6192B643531501BAF20842527A06C19A0E152818EEFE9EC7296D686D0C9683FF1E508B47D337BCAFFD8E4B73C6448CF37C2642234837263BE328EFB1FE20FF00322567B70D022618CE02BD1A2CD308BA5116B2C2A7DE24514266EBA1606B11374E8B4FE58B570DF81B55F237FB06A94ACD0B4F551CD24812906DA85FA322FEECCD0B75670EB990304415DDF1BC725E1D04750A4E4F5E5F9ED3FEEC0015FF9743222F067D055A92BC2B3B842762D5A6EBEFC905668C7E4DF06DA2DE0E5FC9AF1639B47660200F8070FCDC76A9DB54F0B8BF85CD636024AD2354CFA1D008CEFAB86314131D68160259DFC10186FB3BB9EC7E80F51B373BD08691B4EDE38CFA2B79E5F28F60561A210726EA38FCAD8629B05A1196DEDCA53D1DE4EF0B7E060F7A10360F49637A2F0F5E6EEC9D39DACD4AB420E94D2BB50F89BECE62C6F72498E65FC3A06D288432B723D086D582F9666268BB48D967E9043050837971B4AA986A3C476C1C1E650593BEC5613C8B63D5F9780ADD0A9D84FC4F8D5861AD5F32B0714676BC9235B7CADF1F5FE9E317343B3383294C8197248E9BCBE64B1462ED75FA2761B2AA9E7FBC0E95872C25E983F6DFC9A7061078A6BB54B3492BC2D1363D7FFA183A2668C05CC038C8AF454F29FF931FAD15A887554EE55E15756EF187102B57BC49ACF570B04A4A03D776D4654105C79C3E2E870A554206F530DBFAC5233E8BF9A2C903DEDB1FD7361AE7244745E6AAD5C6E37C10FD2709BFDE93326206303FF980111FE6F63185D8FFF6E4383D40FD6B39DDC180283EB4059852E7D931F174E9186559C9E283A814AA91A3294772BD1707EFA16B22E34FC7BAD248CF00AEA2034B572E118B835E9F5269308A86F6EE0EAE82D6DA153BA2D5E6CCE79A2A1EC733AA07E345552EDB1ED50AAB629D037947EE662625A88FD1449700D909D520524CA59845831F54EBA7F2FA791C30CE6F175A61F7F1ED3329F0489B72595DA434F9C7DAC984815D6002B0173500C6210A27C7557C8E5F184955C4DDEAA6F785641EEBE1BF65BB883D83DF218A695BE45C2DEB80803D103E453872927D261FD5178AF4A11BAC18057FDDD5C95548095D02D25D9647C6DDE8CDD1057E2EB68A4ADB302A78CA4FD0B2E51797D43ABD1666D9B391A1419950DA64DEE2C01B1A60711DE82C80BC03968956C78B0531B1ECA48783E4C6851B201B7C2B954A06E041E70F5F922AC037DD72D456BF8BBE5AE032C0A21B4B026FBE166E72AC6D4B32225F1FBCAE4786508C8CDD40291E1542370B0A5084665B0596D005FD10FD8C722D6C1F46E9894562C60EA79013286BB48A154DC00382AB8E64315099A1AEEE383B997106A49D22DC8BFF6DF7D9850AA679998E039A1491C891A3EF640EC9EA216AF995A5709F5679FBBB5557B79C947B46DB2A4959351EC2941472CEA893477AD34533420D62E4A4AF88ED173D7D84C7EC74E3C36FE0E321233BA6D57F798ABEF8769F5350A660B77B0E1A8E9A6E49583F21A3C9612E255ACD7FCE59A7987E8C75871F383E80E001EE374277567CCDABDE7ECFE9167D511E6425971E35CCAA8F2AF7D125F7F28F7CC410A57ABB9ACF949A8707C68EA5D9C4B88ECB909C415FA98129FCD390E2CFDF2DAFD5BD49A9ED78908AA3985D66E8FFC794B8D491953CE116B064DA4F348B239A871B20DBE3AC28DAD7F5BB03B66D1A60BF8D6C4094978DC6A19D8C93ECAB413AD19F5BE61DCB551D55BB32B89C602EC4276250555D77676BE2869C96D3C61D58A85AE3D6C2EA0D283DED003188F5A23692AF3233C5E7CA3AC0D11361D0DFE58E495CB553DA495DD41B963A584CD0FA7AF43DF2ED44D1743785F8E453C345853FF4C9F38EB233BC115D2239E46EF23809472B3C9BA4AE444E50D038753DBB8DA395FAFA7A5FF8DC0EF647924841B4E8EA880721CDB092EF489AB17057D7AD9C7B421B426360B96605628EE6ABC05A21E3623F75E50828A22E4840977857DD754C55E7E2D9B9FF48F20CBF41E6A925F1AE78EB3BB2E97A97BACE68D76DD132619C032E65AA3EFD483164B1AAD632C45ED21AF00C4E9303F36771189C60219A945BA8B37514AFEBCBE68683F22AC5855257CC0A3129F846D7834177DA0D8D24C9B5F1DFAD7005C96024BEEDCE51C4B5A0EB9D3E686B42569F5644CFA62B9655EA76C1A2AE134E084931845E34D75F02A38D2B9ED48C69DAF6FF33DC79E98B42BC747AD4594DDDE3FE3F4259D02D61B8E7D7442659A11CFB74574A8133C9D77AB0315C11343A64370E6E261CE603481B38F1AB969195A940584BA3E8CADD9432D6D3A859A9E08F0303C5FF64900FB611D9DDC769D5883DA01829E8FD1FAF5B43F118E33CF24CD8A7BB6257B6E371A2F3A6542F2551FC01FD8D8263060D99056D1C52A5C4153F44F9C3C006396FF7ACC0D7F2E6BC70ED8E216C856C7141FDAEBD7CB55CC3C5F410608E188EF1C7885B0D104B6B8C4D801BA5FAC74262D8FEB6AF5EA2EC651E3B6B7132EF8B664D0C9DA5AE09D6D8D1ACAAEAA326BE0BE80B133030DC6B635DA844A4DF32F61C8B6C82A631CB480FA16F86357B325CAB75288872F7BE600DE1B3097F6A55BB0FDBD9AB5A006E2A003E62D3470BA4D278EA0E5024AC995BCDDE9477B51CBA59B26B41DB2AA5237030C8D476273927FD1463CAF9567070EA02278FDA751DB7E761CCD7466125099211A4F779D67A043768D4536D5A37EC3211B62363C8617EEA55FE478DCBB07544805DEDA91CF2C1B3D4F77F3041543EC946125B4CD4FC7B667026B8CBCFC88F41C0B7E7886303DF583C75E03133AA8A9F4ECF7AFD52A070999148CFE72451E71E05A42890451840CC7D04E23DE553421CD6149BA565DE6733FC0CB49195EFC2802837CEB67A23FCE3BB394473290FAF4E72370B63AA09079C8864A856792322B4C11E586C787A500613B8308E3D5E97465A496D680BC270AB9785BB89FBC5217527B8CB0AED890754CF62F8DEDAE5265F8B5A11D4D894DB3BEA49F2809E7C633C66C9528A431DAECBAFB7E9478AAAC1BAD31613DC80E1B1241A80D472E46EF108E93A23CF040E09DBEBA114F37B8366F54529038EFEFE2B113746D31F7E486A8228F2D17208F3215AC5497969623BBF333C701C87244C09D7B93171F072C0844F80E0214603AB7F1A9B4C921F3B3A27CF546C980871D84F94A64032EF70BC0D6A3E37CBA1A5EE41F8A135E61DB1438F5029285AF01A711C1A77CD63F68EE19EFD044D9002F0B37C737EFDB2E0F5C28FCBDBC891A9BBBC9330C04995CCFC806D2AF36B87CF37042D347F42FFA909D635F37E4DEE4E4AD4451A49CEDC8CF2F8539E75665C2EE055A0D6202E47C6784987D129D7414EAA7A1D285BC1C978490DFDC1717154260C9AE948FC4C5338A52D1F721782952CDCA913C8828B3045729D34F07D4F013116D2EAFD29C5C0B0878C42813C7946DE28C72B7642B33C395A854BF4BB094B7716E06730840A1F98005D2C65FA0C752077B6C090BF7FA3663FF75C24DA94D8394B457B9314910CD2EC05AD37E95986CE9359977AEF23D58E9161E73AED0526A06D17E06A240A28E77C8FF7CD9FFE263A59E0EC61B0E4D3ABD25F567F7294DA07F7BD1B1A38F5116A76A919C7761F1333695FA7312B47E1BC825AF6AF8BDC0D1731C8A354796DEADB6A72B0D7C73D0E4C893BD3D87685531AA00A916EB0D6FF41297A86E0B45CEC8578F6381263FA92E638A15863365FB5D3FEA7E77A70A6836237DFA6731D534B0DC4BA47F006BB6BD32C19FF4E5CBC9E125D0E518C8C4DFBC3E81F2F9CA3A1F17233F14AD7C17B8A0D6FF336A405BD88E1C5E9078A40D6A443368D05E149B6FBD1CA7BAF83B7F29EC7155E8298C4BC79070D3E223EB0E605758A8BB98B138210E1442B2B6F22877AC9F1C41AEB4A0DF5FA5CD0B7C3140D78A2067BC144DEF245A1B59D18BED27205F66DDC090F3C8E7E1562E65EE02D3A573CCF02A98031C632EB1078AFCAE9BA91B5A3067F85CCAE09737E5F7E27EFE458234B625AEB0B70B8821BCA97FF801EB34286E21388A54DE1793FDFED7AE22C2A718549ADC36747E05F5F06E77C5F4EE765DCAA3C9366E4843C8789602F2BDB80DDF84E63938118F76EA31D3A3B5E0DD9884498F3C2927086A5F8A40254E2E3BF0AEEBBF2FA81BD18A8F3FC11B45FA99EFDB4DAB7A762D5BB0B1414C2B56A899F527F770DD4736206FCA5E77DAF6A4D91DB7F35D03AB084347F2F9DCDDC09985F577EF7C6AD20C8015EFBB37814057C1C8A680FD1854E4ACC32329DAD607FDF43EAAAE7E411AFF35820BD00E77A8323F933BF2864F0CF6DA130E4184FF2A8C4E899FE7C0B3B652AF1AD36A5CC8DEF05890618EBCE074CFB7A60F88376179ECC38EA2E779B91B28015CF1A29A42C2F0D8F7991E75D6336E92A301CBBD66ABBB56CC9C645BA0C8C88491315B3E8E32A1CFF383768E82DE7AC3332CB3ACB2147CCA9EF64C5A2F8DC091C9E6F15C40D6AE7738ED99C44C24141F228F4F17A1357C865E644B77F8DB515092A42BC9AB76974613C72049ECC5340078A91080E60E4FDC0AE67DB7365DAB01FEC7FB048C5FD228CC1E84A6CCC5F54126E9703E508B255FC09EFBB7D82B2867C7752787A0652FE84502FC8274A00199BB0C2E654A54538251C7C557B07BDB0410D21B50AD20CF72EFDD1434DE0DDFB3AA4CE56669C4199B979761484CE4193F02DA9F945E416BBA0ED6EDF8A65C8E8219E11BE2F588189144A7218B7FF86EDF9E7E9B83663BD0016A7D3372B448040A1A04DFCAAE27002DDDC93E41035845FA156B396D2A6C2BDD592F77466FD5AF52C5DC81661B249A5ECD0172A6DBB43436A4443E8C31BCD95A91F21E04FF24981365BAD35A6AB10100F4AC5F1C323E9025DE4F30889DD25C47575F3A9AFFFF50568745280C9749759A247EE739FBB9F7ED5C45C0CC21CB6AB71633127E7CA34B2AC1552B9E9A327DE246CD67118AECC9C6E4447F75AC590B88E0BCA60A049C4028703B3A05104C81432A35EA0AC0336AA80111215A4AB4BB3CE3AECDC74CE6E936CCDAA0F9F24DD4C27D2BD00B74BC8F8E2E0B5F0B38AD119E9C85B949D95FC653A55B11F5BA2D87D4D1F9D9901817392C0CEBAAC9CF0E902ED7C0981300A70FA3630FD261ABDECCA490C3189E7751F82B554057DB5D19721715BAF2F5D66841D35361BB4B686FC9E1000D8AFFEBCC7682FB1C2EEA3DC1EB3926B7CF333789086B5B2973CAD19B6660012013B35707EE223CE02A581857C59C7D6DFFDE316249FFEBB0A059313A249FFE353B997316981F7D7D21F2CDD62425155E01FE8DAAEE21BDAD043254FE63883ED781E19395A1A473CB4E2838AF6834871E724748F2EEF7BAD5AC0750F5AA92374A9304053388F547ED101133E41BBDF986ECFE00A407D99E8B01BA1EAE2E633E3143DC21FEDFEFD680B2646A271FA9BF7AD9909D3E3CE35E3E31FF2B4CE3028AEC42E8260D7E8B7EAC77A01B2E6F783287A2E2A58E23055461590B851F239FF69AC6AEFD646EC4FB18E4747514AE14CD7DC9C5F51DAA5CE40F8FD511D04A107D6ECD22D7340DCFD83A803F4678180D433FA5D178A53F60E984D35A1C4B7FA3319C57CC5CB22B76E129CA9B0E7AD237FA630A2D24C74FCE4890096ECA3EBA9085A816BADD771F530B3D3E3EDC9919A5A71BAD9069000C88B72C5F2CCACEE4DD6BDEE7781B50FCF0E54FE80E3788415A0638F304C063AD77523676B2E95ED4120DDA5E63FB536490890A24A30A4E3696B43C98C2309674970D9FF1108EABDE85F1F346C4C7CC8FE0D02A20DDB92FA92D036BAAF1D77CED2D2A3B03DD2ADB50A770A4C14D74E509320FEBE31FE51311676C7DFD6916F1B7F50DBA473AC881044B590C7E3530818DA5E6E241464C5C753F39F55AB8D08F548533E75252129A60ADE7C73F8B2B6CDA17A862DA1FCED5CB2258DEA74AC9DD0D13F9BEF0E6A4E592C77FA554B0CD30D8C9EA536993050DEF404F84DA94F3418372A270909909FEA6E60D58411BF1BE0BC4AD247AE75D9943FE174FBBA74F8FEE34B18E4FB50400ADE8930AEF42727B2DD486D50AAE63BCB42F83C38E11CC799121EC63521D666DD1210A627D69F4E1917C0CB845DB2E8891E3C60FA04A53622E621B43F65F3B766AFBA36B5067061503F9BDBDA4DE3DA056A26C3CC268F02C10B9236AC5EE7ACCC2AA639381F82C901D93BDD4DA8C73C7F455FD6A75DA3DB83815553773DC7BBEA148667054B66674DA9542B4F6DEAB74460E40E10320870C789C8A7BA8E48EC9A1FCBD9ADD35217054C5F35E5D0C72ADFBEB99ECDCC2D8FB11C17F0753E0BD43D966AB53FDF3D5E100B4D6752838C5D62AADBBC23A9253255E15AABF828927D3449B9CE154389D3B1F4EEAD54CEE7A56F3C67EA4F31478C9BC0E6DD769AC6480DD9071C8704A320EF59C04D1E7D03696081D71F2242B8C70E0154E3F9DE02DD452FA3B68798C1D79663D10C5257D1B4B4FD7E08B57BB45DEB4CD5AB035528270C41FFFF54194D7161B01244F8B15D4BFA3386390BD37531F56F7C2D5A6CF5D54A5D26EF87F21D9215DD79D68304B8D44B7F1018E8FD3A690E1EECF8F5C80FF9C7CBBC7582F8C16747968B07099CB1BB618FE304CAAEFCE22CC863A736283F2276B2C8C699E333E0824C064B49CFBFB905AFEB680B0491D188F7A946167E3E23F007F83764B03A2DA0502B84B0B733649FB151AEF7C95457404EBF7457E75ABE3F00653691F94B35B5890B5FCD273C8B5D524810970C8C59DBD1A4798708F1B7B66A4DD5B611F1998B2059CCA7FBCD10EF0514354F682E86772626ADA4365679CE5B0838691C74BD55809CCF2B39AF0576C43EAA80BDB1F702E9358D30183DC0DF08F83D017102B63F51203C80CF70CE4CB50040155B3F44837961352873FA1DEBFE353D89814E73C421801A59780EEBB13EED42A347927673861BA7E6B0A77DC857A44B90A0D52D063CFAB30B03CEE168F46989D85282A12C72E05D59BF02238DE2CCF3CA52AFAB14B6B303E14C536F12FB30CE35F4AC49F0C8391BD4B2B28F584C6FAB928BC5635704C10FE9BA8A883318A972342796C2DAA8CA3274DA4143ADFC25A32631F5FBC83C092A31226EB0D98744685E29FF175D17662AECB184CAC839CE2DF3C2D11DFEEBC1B97036EFCAF9A0A320F1F55E9F38FC268FEEF217A532C5433ED766E3DF59AE02DB8C6471ED7756D5DCC8865086AB0E332AEF994B4CB25BB6845B86BE555EDF3494A0BBB02D73A23323E39DD47566AA0447D861D5AE7E3F2FEC65959F77D2126D0478F8D1932AD50A9FF77A8535394F62FB7AD4B071D7447CA1A1D95C3D15231FD78ABEA2DD92C8D24427847E14C21D91A3C0582AC6F0ED20A0C6FEAA4595701EA22319C6C075E6BE35ED305D612CCE8F6301FA2AFB5A417F741BF085FF1FF7CBE81669AE5E1FDF8BD06A04234AC23AB01FED0F3E54DAF4540FD54A05066B6D7FC555FA388768F2D4F96193F281984F696C9870AF43DBF27FDCA4AF75123CE9F01C90B13D12827991B34F74B752550E7B2D3C2352EDFA5A42ED32A57E61B475F3FF273835AB69652A8472E4C0EAD3A5AEF2044CCC5D1DA7AC2296147722057F692A844DA33495D6F9D072EE7D742D5B9C9CDA502F8288488C5FF42D2D402301BF375D7EC495C168CE2B1508380CFD3AB6471F7447489E4F7FAE3CB2380DEBFA43E61946CBD5D7BF1DE7B13A4CF9EDE077DF84D0CEB36F2D322B53CAC01BA9A09FD4A9A26A934030DDF13C0978EE3CC53AE435AA84B70CEB2C4C41C90E05C16B85F8BF8EF50B9C1DA4997239D118CA5B4096598405FED7D3D5EE0ECD329074E38343B1A9780ACD449C0C490C395AD04F67C2E50EE6FA04A1A4D039660489010E0B81C26C9F30ACA21E3359880C69BC10320F39BF8739A392F2D36001574EBBBF40D080E6023CD212503788DD6F252F6D29C5103E0165325C465BAB6DCA4D6BBB864F39BE5D3FDD3E32FF6FF579A06B06F33E5F8625AE8785C8121D8ED764803DDC14A62EAE700F268C22D0A329229319ED530F70CFDA439F399B47B2E66DB6068ADF2A77D0E8968047624399C206BD7D73F26F2D7D69CBF356A5486E05EC06D751EBD8B3B1AB6A7E6658886DE52ABC413B5E83FA8F69E50B34E4B7F5BDE3D1F6EDFBB8594B5018C046915F8B9177AE8F065AAFF8A21A518DAE86BE46AA584F277D90924E11CE164D841E65E024B9F9D95913ADE4870C06375E08CF83B50624C2FC2B09AC9AE8688A9E175F791F2F9F5952277B72F5467F772FE14FF9EDDD1378B9A3167DC70F2114A34EE7107F6A15A5B637B237CB66C8C18900E06CAFD8A8BD5E456143887ECD9BB3AEB73E065E81774EF9737313055E8B8F6D7927F9C2DCB0006DDB35CB0D208692766B13F94BC4012BA83DDFE5CC1420A7341AF7E6D814FD7D50D7B097DF8B99468ADFE3F76990961E3C33FA71CC6FAD444941FE16C2ABF8155A4F44126755ACC83319CF10BAF005B06A8826626AB153E3D748DCB8FC4C6066E861AE059F1D2A8E630DEF3EAC5FE746FAFFFAE0D52FFCA3EE107ECD49F49B5CBE2C2B3EBCDA30C076B75FE4A50750BC560D80A04466271729865888B77A591BB87FD440471A46F26C2153B68C76361CAA827C28F31687A8A7E16D366F775872434F2B5125ADF9C8E4FEA461AE4290D1C065CD95C28171A1CBE782BC709B731220FC7064310BE04DE3FE8600860E2DBF4BD3ED5C2395E35A249BA4D54E840334DED5450C0BA64AF70DAD18AE6883DA73B11665609A5EB5F89D1670411F1415A93C45D5F993C71B2D0CE6C5A7F87871F98A89505D6FB6C38E325FB6EDA2A5966D4E86D22FA28586CC2268088E8CE70F4E061E103DFD22275F78FCEB42B849D7DB947D5696D1E032322F3CFED3D577A173DACF05986700DF2CF258B0463DC73E566B5EAC6B69FA311D01F6A59A817B48FB66F2F7BDA675AE68009F10953CF58B6A1063EAB867A68396F070D067EB801AD03D830C220C5785F3F1B214B58B748DC8F3CAC89B486B7410CF4BF7E96296F14BEF55882FFE56E40EEA5B56F57B78C98E69BAD032E2C90726437FCDF5ACE85A132200B6FF51C497D44051087E520DE2E9523E37E35D1EF21FDEF6FBF2FD1C4B55027F65B34ADCCD0DFBCF3831D2B797BE40C7590D741F17459D3F2A70EA2CA81BB5D88DA8173753D30F4B8DAA2D1F74F3679CAF14B1D4D98CB70FCDAB8D9C721E059FA2AE647AE71CD2743345120C1951C0BAA101A98ACF7AFBD7AA9D52F05BE26E8BD4DE0D29F32CD3193CF02E4F2923B61AF1D5ACBB0D9EC864880E667D8572B76719223F8BE105255679494DC1873AE21B47B947FA1C8201856A0FFFB02A38188F91120346C4C614CF07B91A2CB88F6AB7BD0C7C19993F9DB4BD7339B6D8E75C56AC30232EA74A98A714BE30FD10105A5B3B0FAEAFF97B29220D65F9C7E6AD71D7FD77D6CDFDD1A08808D441C6D52F022DECDFEF0BC6D4EA83EE7F0E2E98309C769DE32E861715110FA2A5FE129FAF54E87D44DE01E67886C49DF084075B52081F41D4400004DBC7D53BC746D2C933213C2581195CC835F76C6DF53160BA050E4D7FC9E9A92DAFD223906D7240B2755BE7239274D79BC1B9132AA60645ACD3B6BDDF36389C0A25BE57A5D3BDFE051AB56C47972B73581A75EEEBAB80E53D1FAE367DC41B7EC4D0F7A2596C45116781572987AECFE9B38DB5FFA9971C4116E1EECE315608AFE779B1C87FBEA8FFD16FEB0B019A75521C5BDE4D408F560AF834C687498AA1550EC009B4DBB0CE6C59F82B97325B008EC7BA8D3DC8A2F517C1771A4A0B6169472B3ECABC908F45B35EABC5FDEEDE58C4A476099360EA42C8543EF8C0CC7B1C74B81D09B4DDE479C63613357C0DC98A7A49134A4E18A42371FB50C69FCE21DF74BFFA7D86BF2A087FFF9E278E382FC9BAC63C3158DD629724D877808A3745F3EF7BB3FD4F413007874E015B14A778949599D1F2324F1E8D0C6BBE304C121068BDCAF40992C09518573E0549B6F8C1924783419DE47E578FF07F2FBD2E5D12971F2F7321BCCC938F3DA91C6E2163BCF84B6A603497C0634373377694D295A60D406F94E3296DFE4A0BA556660AA82AD2FD93A2C33804E4E38934F43E3CA014C149D46EE356CADBAB0B13760AD24D9F75F19FB2B21B7696C123DD310DEAF69C032FB78DF4C79A66B6241E7CD4265621C2FF271ABF7477717FEA7DEDDDF3F054BF91C076EEE828F0ECD404EF90C7D64C8276849BF47A5DE0CA6CDBE12B6812F265D21F6E1DB32B0C561B9681DF37A669E2E83A5CE5FF9AF146B1CA43998285983E7F54F0BF50DDD4992C3D7D8D04D4B905FF3207CB6C079E3B4A6F6E537AD724FBC1DB2D0EBE7BE6C149C61B59D27D5C399896E5D99F44CD39C2B23055E1939B475B68A968E74F55E4B7BF63D0F1DF4310E78615CDABC7FCE5FDCF647D237EAD3A7D17D8C8B502260BC4839C50E4F6D947C5EF2705E80C07CBE8A3AE2209859D49B600273461E8D99A6A40D9259B3DF9C44B0B7E010895F83F42214615CA051CDFDE544F84C11D5705FBA5960FF343D0624E09CECD6FFCA53F05656A7D92C205429FDFCF19A20F38D300A4137BAF80000C98F9E0BA81E271D73623F650EF0025B3111229D341D7B850F76B177CF619FABCBA2FC6F51E9E79005E4E93884FD9E2DE34C574BA32D7A5083B6C0E634BA3D1A202582DCBFA5B42F64BCFDD89F14A643AFF2AA36E331C549FDC8F5E112BF5D19E2E4C1F9AB5290EFD85A046111165CA826CEC4FC9958B11A4E81071BA36B87B8DC64C8B0A226152DDADFCEED18EE79FDB4A542C209E51F360895869630D30D7B45040CA6D49E1913EC4E27B696EB011840BB0C8CE4E08B9A35CC478A3DD05BB340D10B9396CD5532932783755A4A17A2B85AD4894AF297AC5EA333CC057EC53EB486ED27FA40429100F640485E23AA48BFB0F66CD3237F38684D56E88E9A5F6F49AAA813D0C69F30E266ED946F3B63315C2807A5EE26D422F7AAF2A34AA8EA6CD6EC5F57ACA6364F2E2E8A73BC62C507B2A288C1C945665FC8C2654481FCB9623F9FDD1075F3F934132C8100173EC2B44980CDDB28DB1DADC46909627F9D464C862E5F58E7E0089BCF86E053E5293C1A703DA0B9AE5AE9C3CBCBBD443D103165212F526BE601EA3BCFC6402152DA4BE5556A4F8DF5CAC216895B5B20358AEAE6375EF98E58A937E38B18C48F6B4EE20A644FADCC660BA137953F4814F5A68268F5DC01870855B3B364D389368ED1FEFB64103525B099A44E2AFD10FB581338914FAF264642EE06A57325A81C68363799B2E304B4C8807EE88849DBCEDF0CE42DF4606E4C227215DEDEAD489FD45DDC01521A23370F3300F1B6EBFB6FF0CD2DEB32A06EE6F822BA862B6CA4ACD503C47FD6E4ED58AA898ECA501337EAD4EFB07F5627038BCC541DF621C91F35141A7E84444D6B34A37D4F031694CB4860768521486A0DB5160AFBA3E1FD3C535D4CDC92D4E68F0FF161B4C71DEE5165031A9D1B5BEC87E4B7F006F02D09939BBC62BB7202AD996DF3832E37B0A8C93A16DBC6D9C74955EC9DD6F34E2D418D2532BFD70C30BC74929673B4BD48B02A7CA1F5F14AB133A332F0F7289E24AB015EA93DFB740983E0DB29CF3507BF1100FD644E3AD284287E7A72DEC39F3B1370921138EA7EB3F91A29BB023C6D4CE28F5C41FAB6CF6124488C22063F7BC2A82FCAA7B3131113AB0C38D035301E7E39142C559ECD5133F1F64639E3BA00032062C0186BCFF568316D58951C279AB1ED0CD02CA7C0C247FF508FA50F866B0464650F02B2649C2F8E59F96C4EEF2C04D32D827D11F0FE9E87D4181E1E53392F13EBFB326BE911A73BCDBC42DF679B3C3BA6C65E68CBFB383A0C4CDAF243084D00DAC02EF63C8038C81E85A51E7B12E87C2B9D2B37BA5C9C170A5AD34C1FBEE3B74D46AB5DB284CC06FCEE004BB95F9524A6CD3E5A01DA29CAF914680F6FBF42B58CA52C6731EED4A8E74CC5ED1F51825E44261BD9979944E117175720CC6B417E999ED6727973539E41A390BB3A65F0F8FD234AA8A26B61526B3D657B2E8D4DE66E63CE1A7E9E7D544FF6E9E02F199EFD7FA6DD765926C3108F2F78FAD1A7F8609B91B73DA66F9221E05FCBA154D7097376353EFC4B67EE291A1670BD5D960DABA4E24149C04BD5270508AE2BDCA7A34BC5FEE25B1B17027DAF3F22A61615A5F2D2D77889C6993AE64EEEBF90E99B355DF14B36CC6EF0136EBE9D5F5EEFAEA2DE99C0C2962CD11694F3D28B73CDFAAC41A").unwrap(); assert_eq!(sig_act.len(), sig_exp.len()); assert_eq!(sig_act, *sig_exp); let result = pk._test_only_raw_verify(&m, &sig_act).unwrap(); assert!(result, "Signature did not verify!"); }