tests: add test cases for invalid asset summaries
What changed, and why it matters
This commit only adds three new test data files for the Blockstream Jade hardware wallet. The files are deliberately invalid Liquid Bitcoin swap transactions used to verify that the device correctly rejects bad asset summaries. No production code was changed, so this commit does not introduce or fix a security vulnerability by itself.
No action required; treat as routine test-data addition. If reviewing a related patch series, ensure the corresponding validation code that these tests exercise is also present and correct.
Security signals we found
Negative test cases for asset-summary validation in Liquid swaps
Use of anti-exfil (AE) signatures in test fixtures
Expected error string indicates existing validation rejects mismatched/missing asset summaries
Evidence from the diff
The commit adds three JSON test fixtures under test_data/ for Liquid swap transactions using anti-exfil (AE) signatures. Each fixture contains a crafted transaction plus wallet input/output summaries that are intentionally wrong: a missing input asset, a wrong output asset, and a missing LBTC input asset. All three specify the expected error ‘Failed to validate input/output summary information’. This is purely test coverage for existing validation logic; no source files were modified.
Changed components
test_data/liquid_txn_bad_swap_taker_assets_ae_in_summary_missing_asset.jsontest_data/liquid_txn_bad_swap_taker_assets_ae_out_summary_wrong_asset.jsontest_data/liquid_txn_bad_swap_taker_recv_lbtc_ae_in_summary_missing_asset.jsonInspect captured patch +363 / −0
diff --git a/test_data/liquid_txn_bad_swap_taker_assets_ae_in_summary_missing_asset.json b/test_data/liquid_txn_bad_swap_taker_assets_ae_in_summary_missing_asset.json
new file mode 100644
index 0000000..c441292
--- /dev/null
+++ b/test_data/liquid_txn_bad_swap_taker_assets_ae_in_summary_missing_asset.json
@@ -0,0 +1,120 @@
+{
+ "input": {
+ "network": "localtest-liquid",
+ "use_ae_signatures": true,
+ "txn": "020000000103e0bf1a5a0daa229cd0b4c02f21e2d1535b894d4d76dfcffa8955166be6b970f90200000023220020232d4f6187e40533a80a36c2bafd5c9133a6dd68c4576c6935fa86c5b2e6643cfeffffff2228d040c091132b328ee5615e5ffd7e36a23cdf1a442ba9778e83f96d050b7b00000000230000000000000000000000000000000000000000000000000000000000000000000000feffffff047559805692ba6c8077b39162fa335c1a75a404c1dd9250bb62ecee6d49f3d601000000230000000000000000000000000000000000000000000000000000000000000000000000feffffff050aeb29f7a604f902bf94bf6d481b5b762da8093acc3f36b0653558d87266e4b09908eae38f90285e3d2f6a5597ef0ffbb8609ac74b362a3e03d073e24806272ae27e03b99384da8ccf52fec54442ec8be2c68a6763ad14af282889372496d29c73715417a9143db9034491cf969475065c03a2966d54c24659e7870b80642a9d722e505cddc88254dd82cf1b2c5e9eb116d3338fe91ea7d159fba9150916a5a318ecd0fcfee73c51d91742e5a73a49140df4a4bef5042c05e5dda77efc0375aed353fd115c6760f9522c4c3d9d7829ca3bd92310c17e952f30962a2f11e017a9142a2f1ec232ccaccbedcdc28ea7cb5aa4632344c1870a0fda0dd9c09dae6b8f4013fb00987d7374935c8d178042f320f1d3b5812d5fc3081259f0c58bffa7d42df32ad3a9fa2d984712c5275a60505127715c2122fd93f302c07678580b0b74c5259adee0c16f26a363914ff4fbac8203a509b3309176b39917a914252d6ed048c0dc9809942ccd032cc6494c1e6ec3870ab00051f0302aab5eaf7722004aff379c67157db6538e2b5573a3a472d8d6cc9b0828287e07dca852e32cdec590fef9af36432bab7d7b67f85640a7e76fb90c92b5030c2183498e43c314768819e73c7ede471c94c4702e3e6965b6327e29855dcf4617a914038bb142b5d86191736a709f6cb8d6f6cdb88ca3870125b251070e29ca19043cf33ccd7324e2ddab03ecc4ae0b5e77c4fc0e5cf6c95a010000000000001ed200005e01000000000347304402200460f1f3da20d47cf4bb7a8472ba2026941dcd7db4d0535234dc4757643d479b0220037c8af3b3fee57f8c2391ce3bc21b780b4f3232694eb93501e50ade393e5d508347304402201c82a3c480f543a62ff1974e5b7b5d1158c0d22a26e435ad9f295a07f9a3380402202c4df6f4ebeafe32941f5e4e6c3cd9185d7c328aedf539a7395997bf08c5c0328351748c6321031baf375bda184d6badf47b5c24967fe732ea24b5309e854dfb17374bbed9240aad6703ffff00b275682103c64dab4eec709646f366f5c38dc9643ce85fae86396d85d2645969eb8356cbc1ac00000004004900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000490000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000051748c63210225213e4085a0ec71875f6d8807c91547db47fdef4ba9673e4aef84a512e3d041ad6703ffff00b275682102671fcb7787c6c7fe475b952d28b284706f68b418fbb04420b3e80398b7a6b259ac00000004004900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000490000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000051748c6321031baf375bda184d6badf47b5c24967fe732ea24b5309e854dfb17374bbed9240aad6703ffff00b275682103c64dab4eec709646f366f5c38dc9643ce85fae86396d85d2645969eb8356cbc1ac0083030007869f05083c634e572c0458caa7f41d8274c9c970e4d2e574dbc6ffcb0d1c35bf519b75ddd272acd283487ad0570e3c552c28feac409d5207c57dae37c9b0c5ffd1b1734cc17ceb436ac3bc340bf5b1d794aa07780e738ff91d0cc37469aa29090c100a4b73e04e448f228420b60699b72eaa1a72aa05b27cfa8449fb38cfbc56fd4e1060330000000000000001d9bf850056cd68500d0c69ba546aa2960ae4f4631e4b45e2678dc7f9742b46c9f4bdf41f663e0122af8c27fcf6ec7f28ab6590357268b6872649b609ad81173a49d63f197140e21d457e933231e759b3771d6c7815839ef02333e94fd0b0e60c3c22964a1282a866b2501e8a024ea61a2b8d881b9fc46cc72464c6c5190aa82a42f0030a459f52e0bb806681f23cc8ff025c579b581698b27beb7d99d17cc479159eabdd9a0d1b3cc7209e663ddaa1a048f03e40b9acf2dfbb9177350700743cc92a3a1c398e320f535a7185d64df294d5a80397f5a0dcb3cd1a60141a720787424d4326c76b9eec941e70cdead6420a1b0c3ec3d0514f62e8d104cde1b5707ff3b8fe0319384b92b3f3515a0dad43c0578cb1cf32fc7ebeb4db69597efb767d4fcf0ee5bab7965d71bc7b5de4204e3fb7277c656d12263ec9d0e83618208fa4b9514f122ba69d50ca37ae0fce1db42d491f8b04adef423038e26b85d51352cc6bf55da3072c6818a05f0dd637dfd52192cfa76ea097291eb2e0e130a899dbb0ab10dec01bde3a119bae33e4ff1eb8d137f631bb982b7ec2a36f2283e2f9aa6c64bd0a63a0ee4dd6c25d73110f9b66dc67824859ed9e0630540c32f7b4720804138bd548d740907c344d3f4d2135374a49cdf24c0e73b73e584e35a8854bd981f4da631a99b6612de53694a7de4e67463e99d41d6c504b39b35fd876d74f2b17e7cc628be601c2c8647799e9caf0fd9a2ebc2665ef0840c271fc2a965b7ec880fdbf42df93760e2ada53ebfce773077862ebb460b3e79276d6d79c9f9679be41725a47946446d257df2c1580e0aab0c86466d6b4595e2a9e553d84492915c2796e0d2a4fe05d27649bb0e82081de39a69da858b0fcbb5377fe7bdd7056f38aab871367e00ddce65dd97730d320261816096b28081f56cd37b99019ed2b3b03f806069e223fdc7fa4f598035318576d89ade9509fb96eab4aa1857b1faa2aedafc49b56d8879e98f7102668ed27b497448f30f09e5bae546120cba9e02ad56e5bd6815dfd3baba53ddcb97142bd8bc7d10f1a1a94f2c2043b68ddb27cc659f8b94f3e68e8f4b982facf2e8f0523288f3426ffba2d03f008f379487cb52a3b4a98bf25ef2c769a95e11198d9d5f607c9f9b4a3bbe6587ad562e30897df9a5639afe35864729b837281c2bf85513e3802c679109d905fcb0e030c28564870b25e6218dfd260633f6af14c972f9ce4ab07aaae78033c57db2d0afa0fd40d93d22deb3711768a4246309a98f9eb80d3db913d12d4022791370eff7dd829339a6684b5f02e3900e2d26419ec448f67323bd0e5505b6a3f77ac9310e734dc5b39884e71ac3c1f12d6f863cff119a5a6538da6d99afe50f3896be1092d8c11f54a27e561b1584932a7c43a48aa6d70225050e2d80946ff8884ce3706143195a098d0abd3c287ea6d74294b1771d7a1d39cf2e8f11b31feaf0e6182fae5d35a100d89bf2ca0485a67d97c03bc5312bde3c724f3d3613a72cd9d0c122ffe6cbbe7f80855138c360f85c78207bd95e868850455ed0b6316e8da61f9ca0b61b7d05f43c516abef60dafe075599ad991b52148af62f3084613a1c66bfcd37717df51f51d4ba0877902f625e479ef280714317d1b618e3c9c0a8458f049f722d67cd78e13244550f16def352af8e5052da23dc169e78a584fad81bc548aaf6c637eb263582617d30e411cf29acb4d8155a059ed97b6f4aa74eaa72d80278225f91bbf2e7827902e83fc3db2996c233d70c48a41b407100409882f627ed653839cd92b759930823d525a505f0c7dc18be6b1e737885ab6ea3d60d755963ef0303197269c1917c78b01a33c15372a9b3042567c760d84ad0bfdeee105b033b7ec6b0a6dba0dd1ad234d87c86fec4965af163b2eaf765803cb7ba8dd5986b76f885c6e8459b6f6ff7157410f9f1844db749b1de8b81d6b2baffb0b70407ec031d7f044479d98173905d47f6190b60b2d169f42bedbf204e0d022ceda1e481c88589300d0941a36560e420531429b753a48e3a57a4e54840c7b4ac42a76bac1a07b1d11ba3cd96eb17cd761b9ff81db6b987a40ba1f8c334bcf60619a991f9e84b83928751170ce17b5ff87037caa0941633044961d66a269c5c3fbc60bf62815008022d667f03c45b71eea32659ed001ccb50c494cd8ea8e27df397f38f2d578e7b5bae391a7524a7016616cb92d78567f1830266d4b814fc1c6f8c2c585978c79e0cfb9e44090c38b7bdcd117b56c7db1693022684eedba0925f969d1da0670b81bbbfb8cc2d9cb7dcfe36de0bd362460b2b954c7a4786e5c63aa91f6580c4d86a5724a0352664bd1b3a57a60d0fbc695078d9fd1b77cc2e20b816e85b5cd98e46028775ed344bac6a97afd69d51c31f4036e1a3eac04583952fb67b17c70e1b3ef8c21c1f037f151a335fcd70e0a17844af88c3d72d45358d218db07fc27afa219aab55d789e63ab2870b716dcadb747fd445e913623b713135e98b5112c40271f0588cf353be0ba88a11a2939d97c72eba6ba8a5a78ed9e181ddc7495f4c32aec28e51b61b939faf722f6ef94175ed6b865a8236b78ccc3bb5dd3e143ee2471dc16113f8b5ebb646be744965cb562942c9204e65a3a96d951d979657292a02925122ff73aa142c69c1d7c3b04eaffa1f94475a3bfd9d11bf51064de8fc62800715dcc4f23060e99ac597a14dab7ae3463cc3fa8a5157386c2b8e86c67bf72719781f0ecf095bf6cce64a7ab2569b2803ae77b6c6eaca26b52d51572f6feb62cd69f718ba493e2f81a5e500c0c17e54894be149ec7619b5eb69060b52ef8db651305d825909d054f5b93644df38b22a4ca3204f4e9159de74778930ebdddace27841ece7ec1188fb493a9dccfd6722142be2ce077b4a36f469be18e2002509562db1694783d87ea124d10cbc161f143b24a74eab54c376deeac87d16b5c94e53b978edecb390a20dd1bd08093ad3c0c660935e109c9b109a7b5e132c10b2043c7055e4a0fbcd1c049469c7a3080b3fdbc214f38a08daf47dabd0f58c2f18858fea2012caeb5cc71fabd4093bfe5c61f81a25a115b940c549b9234b91c31ebe291a373d628697d1fde4cf1f1f02149740a4562c8915a57c2a4b30e270ddaa820907fbff31f8e95dd3c55d8717381022c10cb325fc7204306aa6a6a122a45d02de3ad036f80a7325575dc9bdce96ddc0f66db21579a12c37f6b15f12b32c1374c9befba82cc05a546da3d1bbacd3de13dce1384f6254b132716ad3ed4313b57b6359a6a75ee1d6d6abeb6a649f559d1930d80cd10caca3fef6cf8f163330d6405e35cefb85365ff3b534ec4d6dddd49c6a0b6a9079490294448162ee3c8d80b10f7143846f126e9b7a10161551ad63612cce84b2b999b770ecf021e0896c1405b62d06dbce99c5a58590fbbadebea59848043f66745d40ad5160bc239748c9e078e0c621e1ba475d88b2478963c2724eaa4154c2ef9c122a8c270ff54538536e773921ec9025ad3f04eb36c9153e2b4f5ba291a663b56332b7d36745c7d40a8339429546fec36043faaa7c675e7206b4caef513e8f0e29f51ae440f2c7b4f96f6eb4531cc89ba750a325907e9b1a31bf8619337e4c6173eb3027f975ea3ff4c2276757a5f8a9648ea997bcb76fa1996c589c6ac1cccc95c81c500d282aa9423936eff581accfe61938c91be6249b86fa203cd82b6148defd70c1f5f71cf9e5d6c2120777f68ffafa397644a1d5de95b14ac92f781e3d64b175d06b5abd8450bb1a8973a8cd7f71f79e15a11830af941bd02d20629f31d397c2cdcf904e51017a0164ad7eb08ba5fe460e9d556f82c1dfa83fd56bc20abc9d71ab4ec580ed26f92218172d28bd22663514cb67e49b3ca7d79028813744f6aa20019a44e43006ebb99ce123a27fd2c335906976e094b62cb3bc60f2760462b0c6ea3ebba7b6a371af4457c8f5a8c53c08610552d819325fc0fe4d9de046f6ef8ebf495ee7035b8a6e8c322f91c5f9e394f3fd8914f8873fc9d5ca36b0bb1695fbc0601752418e1416252777a2f6b33031010873e1aa57b04fabcf39c565cb34d2cb71d7d315c6ddb42b9f4b9646ff7f15ad59f7404e7db4052931c6a7e1041ae40edeae68fa91adbce3b6fabf66801b3cf543ce060324fd9e3b4b923f8fbb83b993f9592822f03e0479900513f5ba4d06b731db2840a68f95df346f67dacf6d4820d26d48ce6c6cb6822e50987741a86ec5169233342dbc9f405872c6a2848eb3b8237111536aef5c70d4c738ff6378581b11f3f224080584967843a38249c5465c0eddda0f38c632166165b3cca00a51d7d4ddcb3474ab9821e794d87ee0f1c1a2423d2c7c30b8edddd566651a138a3c09b388703d227a8ba310feb6e56edbf1400f35aa441b6de0c5debd3cb04fdcccb1e7bf44568bd013da4e5585ac862e5c25a24241f0b4a2a1c708e7d36195797ed12d1034177a55dd3af70c6641b1b73f9015a1e63ed464f01cee7f9bdb708cb2f66d347c5f9104a8c8da8bde4f83a08f10938be5452f3969d2138a026fa26806fecfc09eb1dfb5d0af110ac790e41cb1a65b100e917f9b6c5e154af5ca2f3b79bbb2ebf71a0899072b9ce0504b3087b37be2e421a83b69f1c9be3d936fa7b0c0be5f391258441b61dc20c62a9de534e6b95ccf29f040ce891a3b99e4ec542aef32a2f115f4c7e3dbd220440f6746dc9c87126cf4a472cd1702c05de41f63a7e6944e361b08e2cffc71a9cc0c7fe6ff326c09e1d037a68916995f46a6fa87f2f6a7b15c7dc57cb023e4f8b7f5d511a44f13b27529d1817eb1c48dbcc059cfa82f04cf5b34c5187dcb2e8b22d0831c7e0c803b8ed26d35051913b07cc205a4be8ba5c88b2cb3e9c0107631580cf398d8f36e0f58a2d23830c1ade0dc02fc08271622b3786b5d5f528a862b39349a42043ad1018994821d863adc46d1de7063cb6ab4eb06533a0b787f0f78898d1f0189403624a91f98ef683a4bf1a201993e55d1a3443709f6b120440d7872756ef58b94a4bfd07a70d4e60a18d835bfa6c46a1e12d10c62a6cf0f15c27ed47ddc6855f3141b6cf7eb27b2af3749e195a7271116ad3d487bd758948f8ac50bdcf8b913a077cbc6bf2a5b60ba02dfc2a82dede4131c5bf06e7a57acf304153596834d0cee43d62d6948c7159394a3578b0c88e1dcae465280468a30775a188a09fd80f2f29210ca5806a9baae9227da3acb69df1520fc20947b329969822ea6efa829c5a162d3d91f16a1cec460c5dbfa314133f45929e4bc740e63358d308c6f4f6fe6228c5994f40d27c2835ca3fbff0033a51c4c24cb00deed4476d989386a42b936c6689334bae58789d0acd506c5067a75e2bc386cf4af132a32a919094c2a9e1e280ef2b1a872895d0f929ef22da22ba23c146fa2efd7c282354e72d7a3376455175e55db48e9f1741f27b94bb3cc8a9823e30ec5f2e7850f2e371ce2a616da83eb0f3ca35daea12fe452cb428ca0f6223c6a8746f7be0a7f970196c3b21b15ffc1e7675e120141b1c946c5995b93d499df9f1261b212986aec10c2ada3101db82dec948c1c8aa3511334157f0b4c29ea28b407466bcd93be88c5e4daa9322a86f9eca76e9a08f49e772407c98c53abc3fac3560d786c69fdc08715dee69a44e08e418937d1a69f863e9257d5fa971979757a6072b25c7ca14dd0b6ea1ac7594c9a94a021eea3b8b9c3a1235bc47767dd4f2d533bbeac8a398019966452190b44de3b816e429c484a3f4ec2dd13cc5f14acc948e1430f6c252e394eac145d1a7cde609c13005e6a786e6dd92181a818e8b8c405c6b92cef5a3e19b879980b3fde7b4ca70b58e5d8efcffdad5af613710f19add1c9383030007b0da3956d4f018516d3760b5af5e402ea5665bed0297255f9aba79fe35bd24b4460de806c94a2e8239e2c4b8355e8746c2cae2e8c514ca6d4cef99fc79e271efe5bf85f3f328691a246f48b2bf56e94748f222f205adcf89f07b27ee2ee5d98e3b270ab1fe422f9dcf0b42afb55c36a6b3eb91e55fb1026f0ea0f8cffea72de0fd4e1060330000000000000001b6d3d4005568f4474a187d157c842c4211e15712ff5dad4893e8f9af58760f0d4e826c2540f181694d054d28299ccb93c65e2d25a59816f7f91f40de80dcdacf1829f3c6cab6a9021c3c76736dd50761cb68e95eecf1fc7dfc456040788ee0e4b94e3de55a3daefbb59df46d08ec9c66a76cc367760c6345fc9783950f90149ae37f778091223dd51ab996bf911b12a82f10410bcff35b8b2cfa79c5704461518e6aba12890a93e42804fa8fb80b6959ed5e8cd5db08dfee5aa1974890c2b85b69664a77f323abd8d85568244c35f867fbd04035708eccb1110aa9e8fdd0766ae2ccc8c63b748e7327a69ce4563592d6369ba155cdd8190672af36b3531c6dc5436daf1f6a40df553a32073a37924daca83d44ed30c79b2d0a956198027a4ca64754b1a84af03e12ff037123640201f63324cde47530352e8b329caac6f5a81d15d22e04a5dea2047a031ca2b9ff85c044a712fbde7ca3a683728cb6ca616aa7f520b566e55507593fe0deeca32fb75631a289393bad81a36c5658425cdc3b94aa0d26c7c95e4f3707c6a164cfb5bdc79c4465faa685e846f8881251b0b94f7bf411ec973f5fc68ff2adc0e9090c9add788c3dd052678ef03595b73051d3ea18be0a7fddcf0d2342fc20a77d78d015168593452c56db4da551e0028daa4b2667a918183e701bf6787e3f79241fcc1c9ab97db0ba3638a9cc37d515cbac14ed4d3946602f104102190c5dd8c3856ba007d9324854003222a707457d75c2b41d6170df1df97c28c29964071abb3d6460f62ad510b82067bd0440cdd3111873794c5b7ee25f61a665e3397c7418768f36ff3119348598254ceda2ba8c27bbb059dd2428ee940a1ddcdce271f5690a945b6368c45bae1211809313313351ed1ca32264d0df644133af27026ac0c1a4de79f8a5a99bdf192663e7ccc18df9d44350cc91c5f3c3f7a4877aa4158092261faf3d957a3ace0ff7f456b9c806b1f75b26ce90bab04d00829a3e6f05aeeb4e4a9faf0533bd9c8dd997e66ee3083deee95d5a2e1ffee3de5e7dc53645cbae8a706d170719bdc0b80999e60b26aea0d3f5bec4cb6057f4c445b04b1173238783f441dd99ea4f3c271dea41fca60b88eef870239626da4e2cae5a5d023cd7d0293dd4743b9c203dc5960df24e4951c9d62d3102a2fe0d927a4261643313094f2fbddfa5df4d56b0652f6c7da7283bd9c27b54d9fd673a946250d47a849e59252bcd3fadbacf2c928d28ef69638afde2547dccce0c304a0df936fce0d271a7aeda736896512d94b8d4eb1aa51ed30fa0453d90680637b4dfde6add7aea47d4c701fdabde84a6c963dc2258672976b5d9e9c6016bd3617299ab3fa963a95005a0387924639f04cb06e1d823ef0084d1db42e0750743b6b06a9373e9f8443ab14174e10659b261eac0ad31c5e946e728b41e7fd28dbdb917d0cdf39069f2c9c56e4b49c1e5728af4dca5921c0238cfa7d0a2ec7f53aff7d86a269c4bd8ba4b356b61b4c2d45fc4cc4f855822c3a96165f8ccc363edfc6004611a429ebd8f0f948a1afad89a8090986ff7e9e736bc1c348633cf4c522fc34a4d68f8e28e6c9bcdb7984519a3415d6198ecb8b789853a4799396570c1ef5e08e2bb95222032b2390183e89689ed452a4297655caaaf595a8efe8844f0153f121b1179a17a22c2d5100e343d44150b4f93933ebd973c057157f81d352df17cdae0278ffaaf699af1e13e02d88640ec0199be910830fabb0146e2b6ce18c986a43fae4c4c163ad96ae4d8ee605fb148282a1827de5682e40bbc964dfc2f4831878eac511dec3f403e83e9dcc354096fc3e616828693bc2ad3d8cadce17c7995a66bec6631c075dd74426c4fc56c6341617bba850ebd8b60f0714cf7398694dda91d21d73f6a1e089e352377ece59ed6a61a948406980383fc6180b75266ac6be27e8ad2488753fd060567d45254ee30624d1430d6a1943aacbcd36f4510bf5dda80d61f46250125c60d3abd0e0ff8eea565b3afc729bdcd113082dd0f0218669aca96281544fff4d674a1d2e1665e26cf28305513f36e9e98b0706b55017854c71d0e1696eca45960d26c680cdce95f17b35302f4719f1d9c8a4e46c0538f958f545a7ccdd65bb97b50783ef29d7402b6dadbaf80cef58b8178f12724c3341d08ed6f000aa0a6e159f59b65936fcd6ce385dbc1cd7f65fd7fbb14d5b96d70f5a66b621ec22f3149c4a78a88093447b4a9a1ef9c5413cc64a45255e3c3c37c29d0810da36bbd59c196103d742c4cd1f7db4e108dfc30dd06f324289b07eca64e4651f6560b6e7d5ac9620d9fffad0ba1441d3ec19f75efd0249eb40adb80cdde966f84710f25e7762d5700299fb79f5f0d7a2e013c82561754547987f62ebfc078dc5ff481991fb3c592b95f0efba448b6e5ebc50edfa8a1fd2ce2426036eefcb846e4c0ec80c6ca8c240b3ab7520e6d23c215d05bf5e642c2fb912bc685ed3a03a83f94ef576e9ea0532c58c6df1ad88d8901664e0b57a9dc0983d79e85b27437024c4295894fd1d8667a6ebf13b508d237b50d73107f3de7372d08d91febbc8090da28eb2f6589ba32d3d7f51c5cc3b15a1be5b9d98eac86930ce64cee5c7b4400486af188908bfc3a56fe974482687ad4f0b4e9cd02581db80243088fa13982c160be1f17a1eba3ac6a2da2d0a424ee66c722ae8435eaa1bd70d6329e95ca5876c5730313b25a6032f76d9c6a5874fa4d84a53d7760c4a7dbbe7ff6e0eb5f5a4619360005f4c8302181303cedf194506e27a921628cefbf33f0949debd08e6fc01b5bfd281f21da22013ed8e389a2c6f3f35ea5226a70da95dba583315d470eaa591663da91e15fbd788cd01c0adaaf843ab8dad37f01f01adfb8a1362f066a6b5298f55b73781dfe328604d855d46653d86fbae22601550a48d5154b1fa413ff7324e832ba1d6ee3ca5c5f4786cbc9a67f9e58048073d9e6b9f85f266d9bf4b99e630745ec61137a16c9e6f64c2abec68589a3af3e27b8554c1ff818e093cd9db9b9ece1d27648624b0414d1cea24a90ab05945ad9fb67f64bf8812bce2c7cbbd37b5aee632daae79ada99fca95326949e6f453ed30a0da81f3b60f8fefdd67f8992f47ca00cc9a0b71355b74fd13bdd843d786126543cdb3419c64be1c864f3ba995a5234db13c53a64f2e7a7e8e57f58a7738238362c7b8e334318377ecc3c1de49d817ac05bf4f74211c4d48ce0cee7f50db87150d1a4e070ecfef3ca1d927801afc52093cc42d7d340a73aae98a3cfafb6f303ca3cc6560661784d44a0acf4e05092eec1cc73a61a3d1a22b9be3cc9e8e1dca06b2f84aaee67e35d4f8553c8c2b2b88836548a2a08407f292cbc92c4aaa1bb609df25faabc2e9b79940c4adddcaa466ba037c7079f225e0a871c7d5c7d027777ec376cd943900988f858c5e770bc9097e23c68bd583797db74519a591b6da8ed925bf8c287dfccb875fee263672846e91ac46adfa798d2d9d405a772467e0cb4724b8a1469ab16b86142b4d5a5c81875333b7e8890a22465ba41cb3d6f2a6b4419135a2402f081b0cc68377a32743b316f13b21aef5d7fa59f54ac63b57ac48266325d0c2ca1f4149df5515c8a81de807eac9bd296d9387e2ad6ebd5b73f8758d7570e4e5ccf570989c1381d45683aa335a2d97f7e3e919ade4cdc21b7e2798a2b47179703bbd14bbd959dd1995afec57cacd378149a5ebcb6b55e6fcc7ca9fcb640a5bb74505cd23670624a50aac447e357c26b65c9fb8820c29eb8e7d30a9b207d3cb97436ec9a7c3296bde355931c2cef0b4ed8bba441e40fbfb908853cafaa3a302be0e93e7a5f0b6e02724c442038345b7ce33fd483ea97cf5f4452b82e7b3898193ab7dc766ca1426c1a31878f7e29b48c1654bb28ecc368c74029a766b0fe46180d810553fed7dfba0840586bdedc6197daaf1164443e693a655a6a35c1bab461cfccb9b007e8acda871ce5621f8ab130d38c4fd438e1c937b11733183fce0ff40aefd875e7dd6c81c3bf1dea4c0fa6e0c4c72e7f02ee95d0e4f8783382672ff6006efcaf92d42980a8d1e2c1eec7caaff0083bccb17f1dbaafcf57e2f8ee71a53a9df0a954a2471192c94dceaf78d9705e2ec7dbc59937d6af586df2e5f42f7cac9a646c9ff4b904d31504de67e3ab11bbec9da5cb7ab89287e18f897b61b38d46eb6cb7fd041bee0b1956eeb19d9e634ad72b7c759a6a1f7fd0f12ac27613c968bf6c0e0daf27b29a7f4afa29fed3dbf4725d9f81c80844ca93ea367f5b28e767dd8839912d2068244341c396f914235fbfefe8bf2ca812880b50c1984186f20262124cc0bf11322453568b67d0df2bd6f8e3a4954db1aae263e81bb69d639a1fd6158a5bc645f4703ce95ccdd273752c6386efb7143cb7d1efac16f60413e20f70f3a0c6b85a78f08144921e4627554de6c507f12bfb3270510880451ffe6ff4eaa988001581d8fffd6fdbcbdeb553da0ce1c832bf5870830a3e02fb8e1bd3a28720d627353ed307ccf4757c4b122445c13d4858791581b0f765aee26a144d6089dff213d8aceba807ce77d71cd7ba5f70c5c9ff8728051d5eb8063c22b0ac371214a06929844ec6b2759a43992868453c1a336f076ec9d006b9517122f20b88812a6f5f7e58ad3db011eca0534fe0ba894123dc60289098df5ec5ddee031e1d6c38e064cb8e388baab485d125a85b9d51f0b9c7cafbc9d47a446898251f2832d75627915559c6b68921530c8c9774d3c818752a0beb5039bbade5eba59e06f543a8ffc321304b6147fab648c550d9cdbe8db43ba86bdc65629407f7a94dee266640ec1bbe77583e2c947279b3181ab0ab9d92422921ca5566e1650dec88f2f08990adfc3cb5d35d95bd6ae7e051b9fbdf639c8770e70ef633f754d33d4978702d05cd0db1425bc4e97f287acf6c9236f26f14668782bc796629b50788e177285bad70594ca7bd88b288dc8ba80967037ae8d2d411f1f5617b81ae5ee8a188d026714589109db9145a7b5824a30de215656436919c49134a95759f7c4f8088ffba751c449ef3e933a434cf796e3790f6bbb511821237be931ca727c65a64f17b15067b206c04c6793701e6db0a074f6605f489626520f6005b6d4084e2fbf13bb7f566cddfa1bf09a1e2996ac6fa1f00f0dfa79dda3fe71874e8a5f23fc2df2c1be07746f87bba812b22d25a4726ecf0fe3d3f160fafffc581df48bfaf8962e7b2d074caf5b4d01699945a8e34386bf457c05ed9834bce68de9368b11df6e18c7ddcea7be3f5906ff40022fe773e392321c5002307a23eca1f2b0c04b09fbaae13bb87508eaad103b0354bb12dc933e961e9429dee9239e9dc9eecf829d753cbae3fcad078ed8db50f8e012d0a00515687c79e5676cee598d270f9fd6bd820a7d7c27da92731456b049117eddf441860044c4923b70b40b6c07df408f9ce1dd88ab452c4cb9779d23dfa53a8d2c68729784cdfc8eedd5a2b38e951caa27d0585b0cb25985caafe4cbe8a4b860b5280e64df93dbc10fb76b616c81f1a65bb5068b3a701592c02362324762dc49f3c973cdb63b9ede4f24a3abe1cd4eb6caf9db81e4922b467bcb462212071e3251818479d2856b08b00e69357b83a9f8d2fd0338d8afa52c9f5fa77b76d6d32a035f49054d365b55d6134c574c7e5cecafde4c0aafda57c7ae9394aa007496e638066860455d7fb0376de2c1ff38e1bd3bf4884896d507e3b188441152af0d81ff20dd44f08fc0ea9702a8a1dd085c253bdb7b36179bfec4050579cdd9c768574f1705a29894dbc2528022dbb2707678a8087d201d4f4bada31ea2e86a0e57c12da2fa166862bc2fa7338d68dabe17d1384e5bc3de01af4db7383030007f20aa9d245b867cc7a6ded61b4525413439800701270589bb0e6e45dd8b922012e2699880088c0c2dc6b71f24c91af380da4a4e95d1eabd332d298a5da491f61c4641aab1a339ab4eaaa227fd01bae75fe1d3746b5d5c598d8a27787e6c30a7ab5a57fa7f5bc7f02f41c788f3dab24ead62e4f096ce1b44e09bdb58663337da8fd4e1060330000000000000001a7b142009cd1ff6a833018aa571d1f0c7abe58c9b6acc600d208a2cec5eb5c3536a4f19d89b90717aed58951bb2f5d3e1d901bdbcdd5306f4b95cf89c306d763619285e171239677dede222872031690f060ce3f531f934588fc432f2d5dcadf17d9e9e96a4c21f1c6b486444bf9ab5087587209b33243b1cc7a662a80da4fe31b614463069f94d78ed11f31145d59ba5dfecd5635cd80b18f8ce4f7f48ff418338e804898c7c17aea898a46110e99db960e3f3e389264c452837f3df976b5375cc9b0cd4f29e3ec74e9c1675ab47a193237b8030640254dd3bd8973d8f6431d163786a00a278cf70590d1347eb5fd7b667e6293461bb2fc202dba487350355d9257d933c32a754ee122cd052cf26aaa2498ab3e766db272915328bc549ed914c54ec8c3d4e9c6307d185bca0add2794f6680350ea36893ed27867defad36e49c9ceac3b182d79fcbf43cf6fb360a6ddf3e4d4561277f1bc9ac7d2c19d4b95b82c4ff46651e02ffa7c1e785454d89c059264eb937b5c2aa0c5a32661a697f3e205ee9cbeb3d692dd28014ceb513a4a6c43c7152d4237f8480dcdb233bd15166a6dc57e3c099f93de73b3b244103ad380f1bf9af2cb4bccd52ff03775108a7cad2d3616a21d830e453aab98406c5a8b9218fcf11ce4bf73d0e6437d8c0f74a8d6794d3a6edba8058ec9e05ff54b08fb22ccbbb93042a603fa8319daf87cb9ba613f4f5b95c6d44f9f2e2b634c7e87e6c6ce8cad73997f45acf98e0b02d1c771f1cc83e0d65e458e11e2d13a66d3f537b9a7c6f9c7b94c771b3d6a98e885dd13fba0fd237752c294e1e23074b35e8ae9d249a711084b101504f73a17d61b6cadd05522aba00b709e3866e6420912eb63290d3bcab9821eddf9b1cfc21e64385c9733b149229a0f1fa3d18959ab66d2f2b08ab5819b5ca6d731183c0bd8b63981a32e618d9d380c04bb2bcfc089477c9fc433ee5450e41f3fbdc513d64c17634857f78c2c3b4de60a4a570913e18b6d177a7649c5f2237d893e651d3c9476ed9cc0d59a9f71a9baf939259a82510b3d29400325964e746eefa5c23bad31b9ceffd6656d721bd4e4b0d6c7eaea07da1f71c6fa45d9bb1d5597b2c691f0b8e3febb080fcc5c8d35b8efe213dce05c96013132613cebb5fb863f141948d267792e50edafa117e2ad8fa4bf0a1c93129b67fd9058952646e3cc8a1c5d2b2450cf638342180613e55b066df787f04a52d411815d3919d907ce68246ef3b2ef545b9382bb86ea36df92dc77053ac633c16592e3b3e20660643fc8a76844a6196521d5dd3ea47cb7d57018b8eddd863cbc31fe030e1321f5817b1b2261233897447c2c5cfc205ae2b3489adb4882bff401c2f2939f6b767338ce7b0a4ed2191aea644577ca095fbc30ca88a9ffeb57a2284c182b600918fef28fe775ff11a438303c418ad7391116d94f95d294501e28cf936ce6950212e73bb41b6acafc84fe87fadadeb1a497c2adc740929dda14e0fb4f28e44b1bc12775478765f28b2e8fab3cfb54bff94e7714a7101aeb444f03b9387647a9f268046890719175c451ef2c377e5b8226fe454f32282e1de837927b62a5a58e70f61dff28fc0a94e930382555aede11865fa00587ac9887b4262f6e6a878530d25c19393d30b765d61b135f51226f411bc939009f0b4ec5d68c560b857ba6312c47f90bc8a9dba1bfdb728a014a0c2f553fa253a9056ecf438a854b7af316c64c6e4753b6d0519bbe583439aee09bc14b946b0a2848d7a6859ee2c55969bf2a732066d60bf26567ff3686031dc59bc229184dd8ea0674da8a01341db31f18b254ab821242c7365bf45496dd805f6f5f0b5c65dd2c5b26aeae01d72996de7f29c30515c551bb2ea55bbc09d7818c2aa7ec1847941821cb9a3e8cc6e179fbfba365b49295473b5d5b83f98cd1b24eed4d82be75513d6be3d3272b6a67145d1c64bfd0e584aff7c16e10e15e648c8a4cbae44593ae8ae4e0c73939c8ff526e4b259ea4b7e3686b2f096821f1cdfdb09c502af230d2e6758bec2d900656bd85546aa9d590d93bafb4d76f5cb5b1628e426bad29e05739fd6d9073a0a7f15ac6363facd9b6114e712b75496dd6252e2d9b19ce9a784aa7be9ac1ec34b849e2647393aea574bfd374732f8a2a33bcd5e6ae0a1f7a2a594a76cbca2161011b7aace7e653a5fd749b72c3fe7781cfc132f7840a56821e16f67006da587bdb03cafe5c67f23aada104b6493c62bfe4a0a8d5f68e181ef474ca948c52e84db25c24ed14493847f94d7765d652b9386837f5e3ba3dd74bb36a3685a7c49e52fb08b35753d45462bd8ab5a8a221d946cd5b3c5353d1affe5f681d5a7e09fabd3e9022b0e023a12800719a60e789a32fac58739d6f76a398b35326debaa172a1916f91b6c89ad59fd2fa1a343dcc8f17f66e391b5cc9092cdab09fd5c99b60bd76ef61bb31087b46dabfa52b75c1008677c97b5780e26d45a1efc86d2a5ff7066e5d2f04b776556715591a42214b101a43d96fce9870d86075d502f378b7953a879d2571c288a8be27e932744f476dc8d3b62e96ad03a270d2936756ab7b025a0f721335ccf03e688f88dd2a8cdacd618ec2cf90a5dbe7136eb15a6ae70b727af779ef03de17ad64e2e9a7e33906275e6ff8b2120d01231d0ee5fa6fddfcdb7966d2af9a02a070484bdef517432ed892227895248f46bc529d9d58542a63465f2933222aed21953a0eaa25a97167cab759e4b7bb29c492b1ff817837db99c7580e559affde62231258a2e992f4bd7464ae500922461b0a0f9290be0e1d56e61704f79cd88d0d168572bcc58e75a4c4d6685b435d97e2704b23b22f8ba327dcbb47fc940a607104f4b7e512caf5cce1f9c1fd90bcce50818bf80da7e86d902e4a5d1ee4d24fb4d4a2f3b5c109a690bbbbb5be4fbdc5fd89bc69f6453cc8867e855de3de5495d2eadd2c8b1f7429ec22e23ca5d5bac748f2ce5bb6468f8be4c7b12090dd052c35f4d8dcb11f97e6dc6ca1daa16a67ab007b6b942db094f8d9a78b7ba8846280b24e18d3add0106ab51ba77cf7e048c2d2a218bed892faf415854cba71d71759f861b0abf5613bdacba327a05d9c59f31e1c8e8bfb5be12fd42744b76513731c527da36b582a78a1607c2e065cda561ca8501f626987835b9419204fbb169146256d39acf219f725135f97851790af93c7c858a7437b67f04bd4b10a0dcee8ba2d8580ba3f3772a4563fe3fda6b1f94bf34baa6ba606b32e459134ca727f34ff6c16715f604a806876726f8b1436d33cd4fd66bd8a80040c5f9f42f21282fb0d2301c7209814c05e44f35985183db0ba21dabce156270f00896b3af18c4b7575587c82bcf99bf526879c0314e56cc3dda762af038d229533d0af93bd4f33d1b61572adde63e009cb9291539c41dc4e883d556b4f9eec7c379cb1749ee9f2fd6ed1849fad7dd3a2dd319e41b400defa10bb6f3e0a21a27de8f3c7cca604dc47559d8a93799870c571af43ed3611539305c3e07a78196b30051f5cc401e74f8d83dfa44af4b5e603555cbdca24d9c75de7ea4ed890dae984f0610931bd4e1206c568aa15b196017b8e76fcb6dc9b87a91ee3f7b6c2cc8cca4b04a79ce288398572ffdc145dfbb3214722460f8923b55b70ad4f03b2314a298308dc21539c54f7c29ae87e5d1a6f47334f54b172aca7eb0419fa03144af3efad7c4d58884b825da5ed3e1c2427225cf1e9af053df9206fb03bf4dc73b82dba2c9085bc1ef8a8a7b038367a01333c10ab542528a405ee33f98d29b9b229a3a889e2b13fbc2262bb74f6f6a55a70afc2dedbd00a8dece729ffe0e8ec7720393dd206ef928551bc2b7af6f45a71dbffe82c7a4cddbc9ad5c8a81d90d7c54fd19f4919a0c01c9a0bfa137a0c4a2c9a18228259441c2585159638062ba3fdea714da57d9bf74cb083d05fb31cf00158d6f47b3b1a1e289318ddf921e08621c95dddda93248be067600ed70a5ff8c8da0214ec88cce39ca721b897328e8ee577f312234f09b0673e458bfafb47e947b3bd9844c2ce442a5390c34802d49b62889eec215b9d28f329cb93ec47e793226b46e8f57b11ac588c3562cebccb604f3dedd516cf9df33b66c9a0c0954887db9f7f3d11e5a32781340fe47d9b7643df9673d105c14e96f2f6911d2dfc33e18f667e3ffa85d071aa380591fcd33afff1f1a6d9e6f9d8c03de0e8aae3255d95ac3dee9859da32e4b8c931b2cac22e0e6e13d5806b8da939b433b9ed789e739fdf165f2a23923782d661f60231b3f0671f2feed4260ec82bdf7c2ce3de4d316037c12a3026c281f42085e318a77dc45297237f9570e5007347590485a8a46e1b0f40181170ae920a9fb230e3d465d30bc27778cec8ecfd62884cdb910997841406e906f351db373174d0aafe5d00eb02196014105a3f8786f4f15df2a3ea1ab56c7e9ecefb9cff4d7683a74f7f079df318267424bb195e58cddbec6c85d66c7ea48086ceeec1c07f9b203931bc6801d21194049a0704bdb10b1752f54005d99ddbe7afbc0e69bd87da86db8b786719efab12800c1e0fbf24d6b65eb0d9a32384b8dfed321a05343e3c0beac7e8fced4571101f8951451e1ce5dc6eb154be981f917d6a1b0cf3016a332053b24c29ec455b8156e04d395d03a9ec1531bef51ad93a9eef34bc2dd411c735faed7ef6ebf1063460c4ecee754024806f7e2f6abf612a986ae556f8a103bba992b2739a371c2b806f298356e1f99169cb8a80b255620eb5f2b1f31623c2813bbbd08838c863bedc99389e6cc5da482c4a772586efa7eae002ecfd0be9150b7a1b9e42cba36f0d86e8e2727c9d7a42e0f078cbdb34d63ce0a70e1735d18fb361b2bc60686c699c66bc7607e2c41ee51b0837381f93c7757fd33e40fd3d84c7f75874f680e3dffdc72cfe2580487a9f691e2132bd6056d42adb25234b04aa06d66ecee186f95365d687bed1dadff98ecde8b9f734eaa0b524693a72315971aac106508b2888940d31065e353b37e0ce717c8871e7b41ee218cdb11392973c12561d50468a673666d244ce5dbb1a4178510783570d58d503de1aeb1df45a7a87bba564028cfa4c7337c4a6e4f35ed100cd394175bdc509b39e4bed2de2854b7a8ca9bfbbe3d53471bb4e12fb95fc85b0b1d1f4a134a576bb30ce55e7766396a406dfcdc47edfef85ee3123740afd71f7ce9ef79e776990238047fa514bd61c755de4ec356c58e869eb21e59c106e09327cec4efdfe53b06f32d487ba05f46c168e930ffe6da62731bbb855910567e28e1088d25dc59ab0f9f2295696737f0d208f58831e5b3ac49490e6305439692e09b76ee85bc8008fbc9d8383eca63487eb8dc18f78b0d9576f56951f0a9fc1b224500a18efad0635224fca1dd0b29e9a49f2e8bd6ccd6324fd7ba54d454b1c5c2d2af068d7d940e7420e8ca1dc0b3bc331d9c6ffd68aeed99a0bcbf92d180d850c3d553e4a6dff877cc3cec81a4fc219c2eac0c0761434595e50a11d9c7666fe5916e8bc69c3d262cd0ebe4341c47f12322f8d5672d23ad699b2a454546612e4c1c57c50c1c1ab7c54c2f20daffef4d10258d7e2b46bcd439f8ffec518850a0daced3b5179fe0d9c28011f876c2e0ba4a2e289bf78ec677f6e151b99e83d4fba17bbba8f9e4818d1fb314af8eb735af3862a9efdd368d2ff5d14ffcc1c47a1e93fd4998a30caa47ede35a8b89bd14c9853d9e483540956647afa8d9970fda50fd4c88e1ebd120c233670f1cef6299a59f033400306a59357329a8b2643656354dd44eefdb77d70f817d697190d32e554a393987b6a69f6d5f382aa5d13dd613d827a14c4e13fc1bc75d3dba7fe012b14dbb546331b02d3e9b29383030007504d6be69d095b6665bed30090fc824d047bcde4fa35784917aad4aa1af009f20e9f2e06321971d97570033418177cada694ad909eb7378c52c29a25d09ac688c55350df13dacbb8a2a446178c813e246e73ca00209ef7683ed8b15166eaab28b932020680ae4389937865712e870fc72314f0325b80b8aa2c4a4a69a385b37cfd4e1060330000000000000001fba53100595e86d4ffd661123c83489478df9ee1273484296c4855895190fa22921aea28479ce99e301142aa3f49e282542c019867c7e448be18d0ed1f3992eb7168613f436c01a73ea398eb5c85f4d56071dc8d85a53b6a9bc46064ff27c8d083b910d5baee9503b2a039ed1c37cf63c8788f9d13a38270b5a07e149560cb2727ea72ac381d7fdc6bda07dd804766f34b69c3ccafd4e00f1e95a147bd5c4f45c86a527b401da7e0278e3a436235ee4e81dd57e4636de522906587b9a83f2442709830a64238888b350290afb207bbc26a69c6e3c9285f9f1796f84b421f92a867efe6c424eaff5a0801c5742225b47eddb1715c62dc815edd7cd2ba30e458d8d3fb848d3f92279b031b412ef9a82b4fb7af454173e63defe8e9a095978434e2b3a4bda5de323608450dae16188584dcd748523877d38cd461cebf5b821fe04aa9d7cf456c7c5cff7adccb4597d9be69f52a3f4238cacd0e787273388fea20b9e4f94d52ade356b4e4110b53ae6a8031e6aa5172d20f7ce47628b81ca2c9cc807a307e42029a4553faff88d62f125f68bd7eabb1b26a9d8ab5071965577191dc16747ee6432ba000e1d61f159e4f605fbb5ea16761df26d8d5cef26970b337d345fbc7910f9cd73735cbcfa09d6b6991e6f1f926d7015fb745df9567773fd97493c588cf5418fcd3ad35e6fa6c33bc018e202bfc3bbd8be9827f6527ec0493f5c7e62ab70074f0b568004c5ad022aab9f5344e62caf4285d8900fee7f83ff5d621bc11fa1ec0cb53e9ecec53c0571871f154fcaed2ebd65c16b94e1e74c056e601ac3192f28e0d31db23de538622ca48f53043ac55b9cb8888d28b07eb1c0b1aad0fc034f950021a5c43d9b1aa70db9a1d7394edbe511a2c44b70106db52d9fad2ab5fc71dc7b8a7b3f7fa11efe6ecd7db67e07cb7ab949fc0604e0867d688dd8ce8c2f7e1e9465fc6a15189887d727f647af31f636307a1dd433f959e78525c9916405d80db1d85e5debd47dd4ff1dfc041ad9fefd6f3e84fe97d6d08c439e463562d61e113495f59c906c030b892c2c1ad683733307dcdcd0fadd5f840258373a190d824cb6a1f1e278772d7fc87e5f56ab02a9bef588b129778f39212962ca0fa2768634f243c088469f7e59b62e629a222e5de09454d148b7568700c56085f66338bbd210f7e002c987304fe2fc07d00695a8b73d7e28a24e133c5e4405d4f233c4b26d673d7e083926cd094515fe5cc68ffb229156ccf35e0900f5bb9333cfa9125d36ed4bfcec65a3fb43fb12447f3b95f059b79301c5865997c1faee8df650636145569366c660c855e1ec33929cd8de4b4ee6fa62bf11da356cc0bec2b5b278e16d91e029a6bec49ddf6ed812d391c9cdbb2b0184ea98bb59965f39fdec4d241021b87f852a768325cded6d2f75fe63b2f6dd1504a1279d3f5aa2a5a169e6c07157901124c2ade14f56d5884afab4d88e2031c6687f730f3755084a5c813eb99b2b42d070276b8faa6deffc2241b83d79c9903d2d7e744f7dc7305f8aaacb40c917163e200d6def853933a563d110ca837fe315fa43f660c36d1c848275320dfd1717c36c5cc1f0fb62988d3b3f0dedac5330a18c02e255d94c8e49ec09424366a89cc9e00ab11a24ae10daaa1b795f94a88db47945c519eb2b634abfc21968e08d5935264b4b9e13671c7fe88a549a94260c62e32b3e6093da7a32ae2a85845a7d328c1da31b3d24c5cc8e9ed0334f7b0b9b58c2905e0afc2d8ecd3b7ca5ce0fb396c89936adb9bbd2b2d82db303c203804bfba24900b59bca85631461156a2132abeb25b65f7cd461f9785a7d6244ee34f809371f5759b7d2d869cb4007e453ffdedb2414066538e3173483489bb62c4442565f242b80a42830af9b8a38ce711c867075b9176894fbc2a3505472b5364b30a4b95bf179e1e555e84a94e152d01b0ad74378d98a9f24ca63b0b088d3943e90cdd96a48aa85691e0182ca8d3f409568ae08bd12f0fbf012326015c341fb9a4204dcfe0fb90def6be7776632cfcbe10405e7846c73f6a7d749619413ecf8c2c168fc0a53600b38c4f098da8e7e0da8d0601db4b31ab404908158e657f7add0a9d3a5bdf25ce0284b20352a9d89f2bd39baff95c77b44a74fccf1a87b31e54df1a8608bb7533808f40c88660358342a5cf1305be23f1c3a35fc0a41ab958cefb694b13198f9ff4b28dfaaa7c1281823717070ac25f15699793b47858e0d59c8e633c0b5426d81470fd908a993316422430a9360c7289e70a74e6263f1279dcc98bf8f9466b474dd235a67f385723f1cb6401026d2d045c2ff25833b63d1fa0b5b49c4811d7791a0741d2456250e8f7eb70d76832954412d59141edfd8c42ddd6ba85e76566fde3b50cdcd54286f5e7000acbe5edff67fdb23876c5b2d2753ac7823c52b3627b951838d8395cbad667dcf6306bd51444836d6353a4a9778285d618be8aa7ec9de5efc80eeaafc40c8a95b83f40886e2305f5b35eb9b36f00f84ee53ff628b46a58df9772ae8af2fa8aa596f12f05aafedc17efdb4da8c9559813500228d010accbf7b50a86ee98d64e85fbad9186ef33d4a248ea0ceeff4d8346c3d44524cb21aac0f6b459fad7c69db598fbbba71701181f937fc181f645687bf2583869f39ce0cc622f2abfa968be805288ace10f571e1a4168477c56fa7cb45734e70e7dc82980bd41102c9f7c5b1f73d5a3942f137b8a6a95959cb5bf478c2f71c11b7e07254f558d865fff7907dce97d82fb4c7d4497c287b7f8632a6baaae762274bd5337df803303fa0d965e85cd6d273e4a2670fcd8f7657eab6e6e5dc27ce6eb4b9002be97e0c283e852253136bea6f127b2320b36fbdbd318820ceb1b04973679c12519eaf37e7b4443bae8b13f30ea0194a46ac15ce0013a4ed80bce3e02cb3cb0a05dc3688e0eb640692d89fa56120f397d125677ab77ed63a0ba5037b7181f44a20785acdd645ffb788cfea09cb3a5dad19573c277396fc73463381fb6c9c08c56c845dabc4128da4ea7fbfe3e63de0a1e982ff60e428fb41d28c34dd54375ee30bc5c6760b410f68338975ae9adbd0ab630ed96b6a98830f789438405b3884d05fc5958f31a50c15af509f0afd108c77a7e3288d90390eb90d6b111e66cf017de1509062c583f533864b5a0754137855038853f2f598b4ffa89c4c9d09ce472ce8eec8adeeb06af10178d59a4eca3f56ae982ffe3927cde4a7ea59db78181a6b7211eff3031774bfe3d99210a81e25ff938423ac07b39c73b3aacbe05f3d5a6c5b192b53d2cca1e7321446370581e8a0a82c508029130752c5462fc1333973c271d187f347a1be9af343b46b8043d64c084e37fb08a01c70f5ef974267f9180a08fe3fdabcc5b562a8d786da3ef9284701d484ea29b3be33607e617ad95ae502e0f4c65da5f41e3bb67ebc17a7a32eb24606f7394115097bbd62d655bc888ba834c293fc4b31b31b426e06e90786e1f189b198eac462ecfa91ddcbb2b1f9b134c827fc19a1815fcc79694d7435367be0d73b367cea7da01d19ebc58902a855a3af1236d3b2a006e85987cd8215230066286e08daf3b392387f8e58073523617c45ae1da5e6d681692fd3b3548f1950664a34bca641839174b92a089781fffc26f2bfd3b181e6931499db178da4cb3f8b17d5ed73618c117dc1ce60a5ad1035ef558e3d6eb9bb186d48e9ceb1773bbd1f0be7a6f0dee921a03745cfea2e46f051dcd041a1b91a35e683a939be17a48f9d3f1e041bee4645e65adae7c1bb0de50a8be073c5694ad0b47d2d12ae52ef54b9c815d548731e72e9eb6c9fb795c3250d9f658a6774798bbe2dccd46d73254338aca678cb1623c86695d118aab8436b214b31a147eb6f93d2c2b0239b10c444797f92432dd4d2b7ee9070e2f8e2296dca14a6d2efb84db6079de1e1b45d8b0cb44d581ab97df978a98b48e7fcf712d7c1f2dbb2e3974f46b409dac82d85339420360168179a088b62b1bb6eaaa6a83f4f5afcbfe739f18d9e410a884e712d2036724ad5dd5b555d5d96a9209fb7d33a7993724afe5535cc5bb30fba4481d27533e35a02f9f0b515bc41569bfb707b1dc7a17f67facb624a90809106ade6f5c8fc75b0522226492a9bfe605375ca17731041ed4a90e79966993a9d647253e8e011a20d4bf1a1c93a782384286b50c31cceb736b7550be4fafac83cf2c70f319936f4ea269ce3ac2546cdc24e9d9f33b59f78663540551d363cde14d98a3337a8b92341e29bc310ec03ab1f43507fb227ef9f9a51cef1e7dfe63aa15794f9617e560ba556789a7356cd1c1b68813ecb02fe243f993b248a7b7b446a555e605b2c88ccb0946c3ebf25c017806d1008bff55714de64f5a2ba45fe15563cfe998b780fb1a690bf0a08b584130610d1872498a19fe680ddca174162844df1cd81780be87e5639d0248f1f538c551dda8cc5ef3fc47f26a74ab04dac9113e546d45a2d50640220bbcaf5d7e8979f3673e1774e431e73849a1e7283dfba90726bf13e035515e575bedb80ef3eee76fca2cc13d00f647323218743dc8e25e9d594e6d8b17534fbd407c18df71640044c96262818d4b432e04810173ccf1659436bf1e040e76adfb17e99763e80069025722e57d88c47cfd53f1f86e73d55c1cac9e097c7e33633e46e8175a4fa98fae3d6e8bbccbb05141d90fd3b669ea4429f569b64decc31f51b52ab44081ab1b01c5d78b16a32c8520855128bfb0e86b6cf62737a2a946b5d061f72506ff7dbda30b0dc6fb695dfcf38883573cc6fc9a11a3a4fba58b0acf7edfb74bec1ed6d2941d6088b12a87bd1111ccfac25020fed5292ac6c39d7ce92bc253d81a1bb0a5053fd4c3b904a4ecf98c2b4d5b697de710c409740f0bef73bb0c3169d9069a8660baf683467cee9be2eb115376c7655f8ab6bd4dba481765fc77a12e96a53865241073c1f730330024f28b6288c35572080327e378067dd2878d4400a9d8d5a607fbca20e2caa2a2b54f85e1040bc76e7e23513050c7f0bceaa8080bc0a82a77bddd536fb1b525ab582a05356ef8581e205b2b6a5e16c4d150fabbd4de0ca852594cdfd038ac8a34b17059d8e179c22591751a5503811bc558396f4bf603d2269e8b297954b7823fce12b38a0efa44ff4d5d620e1f66a2abadbee99cf2cf9a8a5549dcd3c85ddecde9e2223170b9785637f2cf2608c1a564d0083fa3309298fb66015155a255ff7e7cd8102514fe5cef72993108d66868c7503622cd25ac2c9b2a05fa7f8920a54b499affc00061a19922271939fb01b083bc95bfd417d581a209c6b7267085e0a4b731c5aed3834c34d20f1e9d82facece46f6db004feeae0a2b6999e442ebb44411e24ff9024f190a967641b4040740227fa030d7ad03ab2ff07ea7ef69afd236f1d7712bdca667bc0d2a040a600c1c10c12985b25d8007f1bef7ddac37ca78ef9b46320d222c62829d759f712abb1851f6847d8db89cb330f646f9460f6c101cdf4ad469d32ab72f7e277f5a90eed922be42f6a240edbe41ca649864bd522ac2c511089e396c5c99747045fbbde20d51fa0c074bcc7bfab2e9cc50de3dfe7e342550ed20ef07506ab4c81fdec8b313e0b4754bf686c5bbcae186b22bcd1f0794ea55b3922628fd57ddfce1eddb359c5ff4cb1b3e1e35abfb3a259556c5c2d2b26928c8d4f369d4d2fa28875dbbd4ba2b3e72833d0d00048b761f2676638796c2d0dc8cab2cb77330861ddc31175032fb7e978f1f2a286a0113c3949f175f99789c808a5f5c19c6e5d46f8b5533b129429842b8ac627f4cf433833fac2331df781296d8daa58f449f30e8a37d29deb149a3e2ffdc326b03651801f8c3825b79e5308bdd4090140000",
+ "trusted_commitments": [
+ null,
+ {
+ "asset_id": "736ea365c9d5785af1a76d5258e4d6f80ccabb5e16703fd2c685d365275f5fae",
+ "abf": "8fe330d17dcc9f6b1d0326dfcb8b420ff6f26ce2b24eab8bd646f4345bfb707f",
+ "value": 20000000000,
+ "vbf": "ff9c46718fcfcedf1f4425e83c4ae865be29794aa521384b90d3aad0a35bcbf0",
+ "blinding_key": "034714c3ce7803a35468fc095e92c8fa7b64d74e8d37b1c00289af0fb60d833f6f",
+ "asset_generator": "0b80642a9d722e505cddc88254dd82cf1b2c5e9eb116d3338fe91ea7d159fba915",
+ "value_commitment": "0916a5a318ecd0fcfee73c51d91742e5a73a49140df4a4bef5042c05e5dda77efc"
+ },
+ {
+ "asset_id": "fa658e74d8c665ee644474c1200a8cd8158bc98cff9bda835b096577f6093e26",
+ "abf": "5d767d4dffe376417a2f83c8e3a8688160affee11705592e7e26392ea7e07540",
+ "value": 19000000000,
+ "vbf": "7e7ea5d389e2644719fa3779c93b5e358f8b6e357b939baf072d9f4abee05a33",
+ "blinding_key": "038c3f2e7b293bd42d1916617a6dda18486c8a9a8653b1d84b52b09d8fca54d554",
+ "asset_generator": "0a0fda0dd9c09dae6b8f4013fb00987d7374935c8d178042f320f1d3b5812d5fc3",
+ "value_commitment": "081259f0c58bffa7d42df32ad3a9fa2d984712c5275a60505127715c2122fd93f3"
+ },
+ {
+ "asset_id": "5ac9f65c0efcc4775e0baec4ec03abdde22473cd3cf33c0419ca290e0751b225",
+ "abf": "e39fe5eaad685ee12532791984acf1de0fed03bb90d011c481f62560835cc752",
+ "value": 20999992110,
+ "vbf": "faf0df1f6129b7f30f2782fba2f59123c07ff0c1af39f5fc162ebd2af6603344",
+ "blinding_key": "03cb9fc4128e274258547e392a6d2b54b4ab45998fbf5d6054d973e9f965d5df17",
+ "asset_generator": "0ab00051f0302aab5eaf7722004aff379c67157db6538e2b5573a3a472d8d6cc9b",
+ "value_commitment": "0828287e07dca852e32cdec590fef9af36432bab7d7b67f85640a7e76fb90c92b5"
+ },
+ null
+ ],
+ "change": [
+ null,
+ {
+ "is_change": false,
+ "path": [
+ 1,
+ 31
+ ],
+ "csv_blocks": 65535
+ },
+ {
+ "is_change": true,
+ "path": [
+ 1,
+ 33
+ ],
+ "csv_blocks": 65535
+ },
+ {
+ "is_change": true,
+ "path": [
+ 1,
+ 34
+ ],
+ "csv_blocks": 65535
+ },
+ null
+ ],
+ "inputs": [
+ null,
+ {
+ "is_witness": true,
+ "path": [
+ 1,
+ 3
+ ],
+ "value_commitment": "096eef754d78209d83b164a1ff9bccd97156fd19a77b1c79164e9cae1b072d09c2",
+ "script": "748c63210225213e4085a0ec71875f6d8807c91547db47fdef4ba9673e4aef84a512e3d041ad6703ffff00b275682102671fcb7787c6c7fe475b952d28b284706f68b418fbb04420b3e80398b7a6b259ac",
+ "sighash": 1,
+ "abf": "a092acde75b0d5691d0d7d9413e9ab6e61d0cbf353bbb03f5c3408fcdd23cf87",
+ "asset_id": "5ac9f65c0efcc4775e0baec4ec03abdde22473cd3cf33c0419ca290e0751b225",
+ "asset_generator": "0b1bd3cf0b4935f64586b7c324cebcb036cb4b8781b677651a9af8318c984b2576",
+ "vbf": "b94b446789b83f532f20b0c0e6deeb9ee1593eafbfb3c1dbb28f879368515a91",
+ "value": 21000000000,
+ "ae_host_commitment": "7b61fad27ce2d95abca09f76bd7226e50212a8542f3ca274ee546cec4bc5c3bb",
+ "ae_host_entropy": "3f5540b9336af9bdd50a5b7f69fc2045a12e3b3e0740f7461902d882bf8a8820"
+ },
+ {
+ "is_witness": true,
+ "path": [
+ 1,
+ 4
+ ],
+ "value_commitment": "082b235a0ccd9c92a0f20cdae1cf0bf3cdb54e6477035955e78d9870c34d30f59a",
+ "script": "748c6321031baf375bda184d6badf47b5c24967fe732ea24b5309e854dfb17374bbed9240aad6703ffff00b275682103c64dab4eec709646f366f5c38dc9643ce85fae86396d85d2645969eb8356cbc1ac",
+ "sighash": 1,
+ "abf": "04e5bac07ee115473f88a800db81cfc47b3ccf021ec73f9c3da9113607d7bf80",
+ "asset_id": "fa658e74d8c665ee644474c1200a8cd8158bc98cff9bda835b096577f6093e26",
+ "asset_generator": "0abdc78c3357beebbc83d707113a8116e9ae6041ba16153cc242871ce59d92c945",
+ "vbf": "cbb09c227bf6b86afceaeb4c2a453315ff9542dc347d078b7d04e2ffc1f5436d",
+ "value": 20000000000,
+ "ae_host_commitment": "1e1cac808cd75fbfb707f5c4b2a124e61ca4b102dcd5cc34d0633846723bfe86",
+ "ae_host_entropy": "08b3f1ea6cd16574f624b64a98ccabc7971580f58d6d696f664bc4e04268e30e"
+ }
+ ],
+ "additional_info": {
+ "tx_type": "swap",
+ "is_partial": false,
+ "wallet_input_summary": [
+ {
+ "asset_id": "fa658e74d8c665ee644474c1200a8cd8158bc98cff9bda835b096577f6093e26",
+ "satoshi": 1000000000
+ }
+ ],
+ "wallet_output_summary": [
+ {
+ "asset_id": "736ea365c9d5785af1a76d5258e4d6f80ccabb5e16703fd2c685d365275f5fae",
+ "satoshi": 20000000000
+ }
+ ]
+ }
+ },
+ "expected_error": "Failed to validate input/output summary information"
+}
diff --git a/test_data/liquid_txn_bad_swap_taker_assets_ae_out_summary_wrong_asset.json b/test_data/liquid_txn_bad_swap_taker_assets_ae_out_summary_wrong_asset.json
new file mode 100644
index 0000000..758e19b
--- /dev/null
+++ b/test_data/liquid_txn_bad_swap_taker_assets_ae_out_summary_wrong_asset.json
@@ -0,0 +1,124 @@
+{
+ "input": {
+ "network": "localtest-liquid",
+ "use_ae_signatures": true,
+ "txn": "020000000103e0bf1a5a0daa229cd0b4c02f21e2d1535b894d4d76dfcffa8955166be6b970f90200000023220020232d4f6187e40533a80a36c2bafd5c9133a6dd68c4576c6935fa86c5b2e6643cfeffffff2228d040c091132b328ee5615e5ffd7e36a23cdf1a442ba9778e83f96d050b7b00000000230000000000000000000000000000000000000000000000000000000000000000000000feffffff047559805692ba6c8077b39162fa335c1a75a404c1dd9250bb62ecee6d49f3d601000000230000000000000000000000000000000000000000000000000000000000000000000000feffffff050aeb29f7a604f902bf94bf6d481b5b762da8093acc3f36b0653558d87266e4b09908eae38f90285e3d2f6a5597ef0ffbb8609ac74b362a3e03d073e24806272ae27e03b99384da8ccf52fec54442ec8be2c68a6763ad14af282889372496d29c73715417a9143db9034491cf969475065c03a2966d54c24659e7870b80642a9d722e505cddc88254dd82cf1b2c5e9eb116d3338fe91ea7d159fba9150916a5a318ecd0fcfee73c51d91742e5a73a49140df4a4bef5042c05e5dda77efc0375aed353fd115c6760f9522c4c3d9d7829ca3bd92310c17e952f30962a2f11e017a9142a2f1ec232ccaccbedcdc28ea7cb5aa4632344c1870a0fda0dd9c09dae6b8f4013fb00987d7374935c8d178042f320f1d3b5812d5fc3081259f0c58bffa7d42df32ad3a9fa2d984712c5275a60505127715c2122fd93f302c07678580b0b74c5259adee0c16f26a363914ff4fbac8203a509b3309176b39917a914252d6ed048c0dc9809942ccd032cc6494c1e6ec3870ab00051f0302aab5eaf7722004aff379c67157db6538e2b5573a3a472d8d6cc9b0828287e07dca852e32cdec590fef9af36432bab7d7b67f85640a7e76fb90c92b5030c2183498e43c314768819e73c7ede471c94c4702e3e6965b6327e29855dcf4617a914038bb142b5d86191736a709f6cb8d6f6cdb88ca3870125b251070e29ca19043cf33ccd7324e2ddab03ecc4ae0b5e77c4fc0e5cf6c95a010000000000001ed200005e01000000000347304402200460f1f3da20d47cf4bb7a8472ba2026941dcd7db4d0535234dc4757643d479b0220037c8af3b3fee57f8c2391ce3bc21b780b4f3232694eb93501e50ade393e5d508347304402201c82a3c480f543a62ff1974e5b7b5d1158c0d22a26e435ad9f295a07f9a3380402202c4df6f4ebeafe32941f5e4e6c3cd9185d7c328aedf539a7395997bf08c5c0328351748c6321031baf375bda184d6badf47b5c24967fe732ea24b5309e854dfb17374bbed9240aad6703ffff00b275682103c64dab4eec709646f366f5c38dc9643ce85fae86396d85d2645969eb8356cbc1ac00000004004900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000490000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000051748c63210225213e4085a0ec71875f6d8807c91547db47fdef4ba9673e4aef84a512e3d041ad6703ffff00b275682102671fcb7787c6c7fe475b952d28b284706f68b418fbb04420b3e80398b7a6b259ac00000004004900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000490000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000051748c6321031baf375bda184d6badf47b5c24967fe732ea24b5309e854dfb17374bbed9240aad6703ffff00b275682103c64dab4eec709646f366f5c38dc9643ce85fae86396d85d2645969eb8356cbc1ac0083030007869f05083c634e572c0458caa7f41d8274c9c970e4d2e574dbc6ffcb0d1c35bf519b75ddd272acd283487ad0570e3c552c28feac409d5207c57dae37c9b0c5ffd1b1734cc17ceb436ac3bc340bf5b1d794aa07780e738ff91d0cc37469aa29090c100a4b73e04e448f228420b60699b72eaa1a72aa05b27cfa8449fb38cfbc56fd4e1060330000000000000001d9bf850056cd68500d0c69ba546aa2960ae4f4631e4b45e2678dc7f9742b46c9f4bdf41f663e0122af8c27fcf6ec7f28ab6590357268b6872649b609ad81173a49d63f197140e21d457e933231e759b3771d6c7815839ef02333e94fd0b0e60c3c22964a1282a866b2501e8a024ea61a2b8d881b9fc46cc72464c6c5190aa82a42f0030a459f52e0bb806681f23cc8ff025c579b581698b27beb7d99d17cc479159eabdd9a0d1b3cc7209e663ddaa1a048f03e40b9acf2dfbb9177350700743cc92a3a1c398e320f535a7185d64df294d5a80397f5a0dcb3cd1a60141a720787424d4326c76b9eec941e70cdead6420a1b0c3ec3d0514f62e8d104cde1b5707ff3b8fe0319384b92b3f3515a0dad43c0578cb1cf32fc7ebeb4db69597efb767d4fcf0ee5bab7965d71bc7b5de4204e3fb7277c656d12263ec9d0e83618208fa4b9514f122ba69d50ca37ae0fce1db42d491f8b04adef423038e26b85d51352cc6bf55da3072c6818a05f0dd637dfd52192cfa76ea097291eb2e0e130a899dbb0ab10dec01bde3a119bae33e4ff1eb8d137f631bb982b7ec2a36f2283e2f9aa6c64bd0a63a0ee4dd6c25d73110f9b66dc67824859ed9e0630540c32f7b4720804138bd548d740907c344d3f4d2135374a49cdf24c0e73b73e584e35a8854bd981f4da631a99b6612de53694a7de4e67463e99d41d6c504b39b35fd876d74f2b17e7cc628be601c2c8647799e9caf0fd9a2ebc2665ef0840c271fc2a965b7ec880fdbf42df93760e2ada53ebfce773077862ebb460b3e79276d6d79c9f9679be41725a47946446d257df2c1580e0aab0c86466d6b4595e2a9e553d84492915c2796e0d2a4fe05d27649bb0e82081de39a69da858b0fcbb5377fe7bdd7056f38aab871367e00ddce65dd97730d320261816096b28081f56cd37b99019ed2b3b03f806069e223fdc7fa4f598035318576d89ade9509fb96eab4aa1857b1faa2aedafc49b56d8879e98f7102668ed27b497448f30f09e5bae546120cba9e02ad56e5bd6815dfd3baba53ddcb97142bd8bc7d10f1a1a94f2c2043b68ddb27cc659f8b94f3e68e8f4b982facf2e8f0523288f3426ffba2d03f008f379487cb52a3b4a98bf25ef2c769a95e11198d9d5f607c9f9b4a3bbe6587ad562e30897df9a5639afe35864729b837281c2bf85513e3802c679109d905fcb0e030c28564870b25e6218dfd260633f6af14c972f9ce4ab07aaae78033c57db2d0afa0fd40d93d22deb3711768a4246309a98f9eb80d3db913d12d4022791370eff7dd829339a6684b5f02e3900e2d26419ec448f67323bd0e5505b6a3f77ac9310e734dc5b39884e71ac3c1f12d6f863cff119a5a6538da6d99afe50f3896be1092d8c11f54a27e561b1584932a7c43a48aa6d70225050e2d80946ff8884ce3706143195a098d0abd3c287ea6d74294b1771d7a1d39cf2e8f11b31feaf0e6182fae5d35a100d89bf2ca0485a67d97c03bc5312bde3c724f3d3613a72cd9d0c122ffe6cbbe7f80855138c360f85c78207bd95e868850455ed0b6316e8da61f9ca0b61b7d05f43c516abef60dafe075599ad991b52148af62f3084613a1c66bfcd37717df51f51d4ba0877902f625e479ef280714317d1b618e3c9c0a8458f049f722d67cd78e13244550f16def352af8e5052da23dc169e78a584fad81bc548aaf6c637eb263582617d30e411cf29acb4d8155a059ed97b6f4aa74eaa72d80278225f91bbf2e7827902e83fc3db2996c233d70c48a41b407100409882f627ed653839cd92b759930823d525a505f0c7dc18be6b1e737885ab6ea3d60d755963ef0303197269c1917c78b01a33c15372a9b3042567c760d84ad0bfdeee105b033b7ec6b0a6dba0dd1ad234d87c86fec4965af163b2eaf765803cb7ba8dd5986b76f885c6e8459b6f6ff7157410f9f1844db749b1de8b81d6b2baffb0b70407ec031d7f044479d98173905d47f6190b60b2d169f42bedbf204e0d022ceda1e481c88589300d0941a36560e420531429b753a48e3a57a4e54840c7b4ac42a76bac1a07b1d11ba3cd96eb17cd761b9ff81db6b987a40ba1f8c334bcf60619a991f9e84b83928751170ce17b5ff87037caa0941633044961d66a269c5c3fbc60bf62815008022d667f03c45b71eea32659ed001ccb50c494cd8ea8e27df397f38f2d578e7b5bae391a7524a7016616cb92d78567f1830266d4b814fc1c6f8c2c585978c79e0cfb9e44090c38b7bdcd117b56c7db1693022684eedba0925f969d1da0670b81bbbfb8cc2d9cb7dcfe36de0bd362460b2b954c7a4786e5c63aa91f6580c4d86a5724a0352664bd1b3a57a60d0fbc695078d9fd1b77cc2e20b816e85b5cd98e46028775ed344bac6a97afd69d51c31f4036e1a3eac04583952fb67b17c70e1b3ef8c21c1f037f151a335fcd70e0a17844af88c3d72d45358d218db07fc27afa219aab55d789e63ab2870b716dcadb747fd445e913623b713135e98b5112c40271f0588cf353be0ba88a11a2939d97c72eba6ba8a5a78ed9e181ddc7495f4c32aec28e51b61b939faf722f6ef94175ed6b865a8236b78ccc3bb5dd3e143ee2471dc16113f8b5ebb646be744965cb562942c9204e65a3a96d951d979657292a02925122ff73aa142c69c1d7c3b04eaffa1f94475a3bfd9d11bf51064de8fc62800715dcc4f23060e99ac597a14dab7ae3463cc3fa8a5157386c2b8e86c67bf72719781f0ecf095bf6cce64a7ab2569b2803ae77b6c6eaca26b52d51572f6feb62cd69f718ba493e2f81a5e500c0c17e54894be149ec7619b5eb69060b52ef8db651305d825909d054f5b93644df38b22a4ca3204f4e9159de74778930ebdddace27841ece7ec1188fb493a9dccfd6722142be2ce077b4a36f469be18e2002509562db1694783d87ea124d10cbc161f143b24a74eab54c376deeac87d16b5c94e53b978edecb390a20dd1bd08093ad3c0c660935e109c9b109a7b5e132c10b2043c7055e4a0fbcd1c049469c7a3080b3fdbc214f38a08daf47dabd0f58c2f18858fea2012caeb5cc71fabd4093bfe5c61f81a25a115b940c549b9234b91c31ebe291a373d628697d1fde4cf1f1f02149740a4562c8915a57c2a4b30e270ddaa820907fbff31f8e95dd3c55d8717381022c10cb325fc7204306aa6a6a122a45d02de3ad036f80a7325575dc9bdce96ddc0f66db21579a12c37f6b15f12b32c1374c9befba82cc05a546da3d1bbacd3de13dce1384f6254b132716ad3ed4313b57b6359a6a75ee1d6d6abeb6a649f559d1930d80cd10caca3fef6cf8f163330d6405e35cefb85365ff3b534ec4d6dddd49c6a0b6a9079490294448162ee3c8d80b10f7143846f126e9b7a10161551ad63612cce84b2b999b770ecf021e0896c1405b62d06dbce99c5a58590fbbadebea59848043f66745d40ad5160bc239748c9e078e0c621e1ba475d88b2478963c2724eaa4154c2ef9c122a8c270ff54538536e773921ec9025ad3f04eb36c9153e2b4f5ba291a663b56332b7d36745c7d40a8339429546fec36043faaa7c675e7206b4caef513e8f0e29f51ae440f2c7b4f96f6eb4531cc89ba750a325907e9b1a31bf8619337e4c6173eb3027f975ea3ff4c2276757a5f8a9648ea997bcb76fa1996c589c6ac1cccc95c81c500d282aa9423936eff581accfe61938c91be6249b86fa203cd82b6148defd70c1f5f71cf9e5d6c2120777f68ffafa397644a1d5de95b14ac92f781e3d64b175d06b5abd8450bb1a8973a8cd7f71f79e15a11830af941bd02d20629f31d397c2cdcf904e51017a0164ad7eb08ba5fe460e9d556f82c1dfa83fd56bc20abc9d71ab4ec580ed26f92218172d28bd22663514cb67e49b3ca7d79028813744f6aa20019a44e43006ebb99ce123a27fd2c335906976e094b62cb3bc60f2760462b0c6ea3ebba7b6a371af4457c8f5a8c53c08610552d819325fc0fe4d9de046f6ef8ebf495ee7035b8a6e8c322f91c5f9e394f3fd8914f8873fc9d5ca36b0bb1695fbc0601752418e1416252777a2f6b33031010873e1aa57b04fabcf39c565cb34d2cb71d7d315c6ddb42b9f4b9646ff7f15ad59f7404e7db4052931c6a7e1041ae40edeae68fa91adbce3b6fabf66801b3cf543ce060324fd9e3b4b923f8fbb83b993f9592822f03e0479900513f5ba4d06b731db2840a68f95df346f67dacf6d4820d26d48ce6c6cb6822e50987741a86ec5169233342dbc9f405872c6a2848eb3b8237111536aef5c70d4c738ff6378581b11f3f224080584967843a38249c5465c0eddda0f38c632166165b3cca00a51d7d4ddcb3474ab9821e794d87ee0f1c1a2423d2c7c30b8edddd566651a138a3c09b388703d227a8ba310feb6e56edbf1400f35aa441b6de0c5debd3cb04fdcccb1e7bf44568bd013da4e5585ac862e5c25a24241f0b4a2a1c708e7d36195797ed12d1034177a55dd3af70c6641b1b73f9015a1e63ed464f01cee7f9bdb708cb2f66d347c5f9104a8c8da8bde4f83a08f10938be5452f3969d2138a026fa26806fecfc09eb1dfb5d0af110ac790e41cb1a65b100e917f9b6c5e154af5ca2f3b79bbb2ebf71a0899072b9ce0504b3087b37be2e421a83b69f1c9be3d936fa7b0c0be5f391258441b61dc20c62a9de534e6b95ccf29f040ce891a3b99e4ec542aef32a2f115f4c7e3dbd220440f6746dc9c87126cf4a472cd1702c05de41f63a7e6944e361b08e2cffc71a9cc0c7fe6ff326c09e1d037a68916995f46a6fa87f2f6a7b15c7dc57cb023e4f8b7f5d511a44f13b27529d1817eb1c48dbcc059cfa82f04cf5b34c5187dcb2e8b22d0831c7e0c803b8ed26d35051913b07cc205a4be8ba5c88b2cb3e9c0107631580cf398d8f36e0f58a2d23830c1ade0dc02fc08271622b3786b5d5f528a862b39349a42043ad1018994821d863adc46d1de7063cb6ab4eb06533a0b787f0f78898d1f0189403624a91f98ef683a4bf1a201993e55d1a3443709f6b120440d7872756ef58b94a4bfd07a70d4e60a18d835bfa6c46a1e12d10c62a6cf0f15c27ed47ddc6855f3141b6cf7eb27b2af3749e195a7271116ad3d487bd758948f8ac50bdcf8b913a077cbc6bf2a5b60ba02dfc2a82dede4131c5bf06e7a57acf304153596834d0cee43d62d6948c7159394a3578b0c88e1dcae465280468a30775a188a09fd80f2f29210ca5806a9baae9227da3acb69df1520fc20947b329969822ea6efa829c5a162d3d91f16a1cec460c5dbfa314133f45929e4bc740e63358d308c6f4f6fe6228c5994f40d27c2835ca3fbff0033a51c4c24cb00deed4476d989386a42b936c6689334bae58789d0acd506c5067a75e2bc386cf4af132a32a919094c2a9e1e280ef2b1a872895d0f929ef22da22ba23c146fa2efd7c282354e72d7a3376455175e55db48e9f1741f27b94bb3cc8a9823e30ec5f2e7850f2e371ce2a616da83eb0f3ca35daea12fe452cb428ca0f6223c6a8746f7be0a7f970196c3b21b15ffc1e7675e120141b1c946c5995b93d499df9f1261b212986aec10c2ada3101db82dec948c1c8aa3511334157f0b4c29ea28b407466bcd93be88c5e4daa9322a86f9eca76e9a08f49e772407c98c53abc3fac3560d786c69fdc08715dee69a44e08e418937d1a69f863e9257d5fa971979757a6072b25c7ca14dd0b6ea1ac7594c9a94a021eea3b8b9c3a1235bc47767dd4f2d533bbeac8a398019966452190b44de3b816e429c484a3f4ec2dd13cc5f14acc948e1430f6c252e394eac145d1a7cde609c13005e6a786e6dd92181a818e8b8c405c6b92cef5a3e19b879980b3fde7b4ca70b58e5d8efcffdad5af613710f19add1c9383030007b0da3956d4f018516d3760b5af5e402ea5665bed0297255f9aba79fe35bd24b4460de806c94a2e8239e2c4b8355e8746c2cae2e8c514ca6d4cef99fc79e271efe5bf85f3f328691a246f48b2bf56e94748f222f205adcf89f07b27ee2ee5d98e3b270ab1fe422f9dcf0b42afb55c36a6b3eb91e55fb1026f0ea0f8cffea72de0fd4e1060330000000000000001b6d3d4005568f4474a187d157c842c4211e15712ff5dad4893e8f9af58760f0d4e826c2540f181694d054d28299ccb93c65e2d25a59816f7f91f40de80dcdacf1829f3c6cab6a9021c3c76736dd50761cb68e95eecf1fc7dfc456040788ee0e4b94e3de55a3daefbb59df46d08ec9c66a76cc367760c6345fc9783950f90149ae37f778091223dd51ab996bf911b12a82f10410bcff35b8b2cfa79c5704461518e6aba12890a93e42804fa8fb80b6959ed5e8cd5db08dfee5aa1974890c2b85b69664a77f323abd8d85568244c35f867fbd04035708eccb1110aa9e8fdd0766ae2ccc8c63b748e7327a69ce4563592d6369ba155cdd8190672af36b3531c6dc5436daf1f6a40df553a32073a37924daca83d44ed30c79b2d0a956198027a4ca64754b1a84af03e12ff037123640201f63324cde47530352e8b329caac6f5a81d15d22e04a5dea2047a031ca2b9ff85c044a712fbde7ca3a683728cb6ca616aa7f520b566e55507593fe0deeca32fb75631a289393bad81a36c5658425cdc3b94aa0d26c7c95e4f3707c6a164cfb5bdc79c4465faa685e846f8881251b0b94f7bf411ec973f5fc68ff2adc0e9090c9add788c3dd052678ef03595b73051d3ea18be0a7fddcf0d2342fc20a77d78d015168593452c56db4da551e0028daa4b2667a918183e701bf6787e3f79241fcc1c9ab97db0ba3638a9cc37d515cbac14ed4d3946602f104102190c5dd8c3856ba007d9324854003222a707457d75c2b41d6170df1df97c28c29964071abb3d6460f62ad510b82067bd0440cdd3111873794c5b7ee25f61a665e3397c7418768f36ff3119348598254ceda2ba8c27bbb059dd2428ee940a1ddcdce271f5690a945b6368c45bae1211809313313351ed1ca32264d0df644133af27026ac0c1a4de79f8a5a99bdf192663e7ccc18df9d44350cc91c5f3c3f7a4877aa4158092261faf3d957a3ace0ff7f456b9c806b1f75b26ce90bab04d00829a3e6f05aeeb4e4a9faf0533bd9c8dd997e66ee3083deee95d5a2e1ffee3de5e7dc53645cbae8a706d170719bdc0b80999e60b26aea0d3f5bec4cb6057f4c445b04b1173238783f441dd99ea4f3c271dea41fca60b88eef870239626da4e2cae5a5d023cd7d0293dd4743b9c203dc5960df24e4951c9d62d3102a2fe0d927a4261643313094f2fbddfa5df4d56b0652f6c7da7283bd9c27b54d9fd673a946250d47a849e59252bcd3fadbacf2c928d28ef69638afde2547dccce0c304a0df936fce0d271a7aeda736896512d94b8d4eb1aa51ed30fa0453d90680637b4dfde6add7aea47d4c701fdabde84a6c963dc2258672976b5d9e9c6016bd3617299ab3fa963a95005a0387924639f04cb06e1d823ef0084d1db42e0750743b6b06a9373e9f8443ab14174e10659b261eac0ad31c5e946e728b41e7fd28dbdb917d0cdf39069f2c9c56e4b49c1e5728af4dca5921c0238cfa7d0a2ec7f53aff7d86a269c4bd8ba4b356b61b4c2d45fc4cc4f855822c3a96165f8ccc363edfc6004611a429ebd8f0f948a1afad89a8090986ff7e9e736bc1c348633cf4c522fc34a4d68f8e28e6c9bcdb7984519a3415d6198ecb8b789853a4799396570c1ef5e08e2bb95222032b2390183e89689ed452a4297655caaaf595a8efe8844f0153f121b1179a17a22c2d5100e343d44150b4f93933ebd973c057157f81d352df17cdae0278ffaaf699af1e13e02d88640ec0199be910830fabb0146e2b6ce18c986a43fae4c4c163ad96ae4d8ee605fb148282a1827de5682e40bbc964dfc2f4831878eac511dec3f403e83e9dcc354096fc3e616828693bc2ad3d8cadce17c7995a66bec6631c075dd74426c4fc56c6341617bba850ebd8b60f0714cf7398694dda91d21d73f6a1e089e352377ece59ed6a61a948406980383fc6180b75266ac6be27e8ad2488753fd060567d45254ee30624d1430d6a1943aacbcd36f4510bf5dda80d61f46250125c60d3abd0e0ff8eea565b3afc729bdcd113082dd0f0218669aca96281544fff4d674a1d2e1665e26cf28305513f36e9e98b0706b55017854c71d0e1696eca45960d26c680cdce95f17b35302f4719f1d9c8a4e46c0538f958f545a7ccdd65bb97b50783ef29d7402b6dadbaf80cef58b8178f12724c3341d08ed6f000aa0a6e159f59b65936fcd6ce385dbc1cd7f65fd7fbb14d5b96d70f5a66b621ec22f3149c4a78a88093447b4a9a1ef9c5413cc64a45255e3c3c37c29d0810da36bbd59c196103d742c4cd1f7db4e108dfc30dd06f324289b07eca64e4651f6560b6e7d5ac9620d9fffad0ba1441d3ec19f75efd0249eb40adb80cdde966f84710f25e7762d5700299fb79f5f0d7a2e013c82561754547987f62ebfc078dc5ff481991fb3c592b95f0efba448b6e5ebc50edfa8a1fd2ce2426036eefcb846e4c0ec80c6ca8c240b3ab7520e6d23c215d05bf5e642c2fb912bc685ed3a03a83f94ef576e9ea0532c58c6df1ad88d8901664e0b57a9dc0983d79e85b27437024c4295894fd1d8667a6ebf13b508d237b50d73107f3de7372d08d91febbc8090da28eb2f6589ba32d3d7f51c5cc3b15a1be5b9d98eac86930ce64cee5c7b4400486af188908bfc3a56fe974482687ad4f0b4e9cd02581db80243088fa13982c160be1f17a1eba3ac6a2da2d0a424ee66c722ae8435eaa1bd70d6329e95ca5876c5730313b25a6032f76d9c6a5874fa4d84a53d7760c4a7dbbe7ff6e0eb5f5a4619360005f4c8302181303cedf194506e27a921628cefbf33f0949debd08e6fc01b5bfd281f21da22013ed8e389a2c6f3f35ea5226a70da95dba583315d470eaa591663da91e15fbd788cd01c0adaaf843ab8dad37f01f01adfb8a1362f066a6b5298f55b73781dfe328604d855d46653d86fbae22601550a48d5154b1fa413ff7324e832ba1d6ee3ca5c5f4786cbc9a67f9e58048073d9e6b9f85f266d9bf4b99e630745ec61137a16c9e6f64c2abec68589a3af3e27b8554c1ff818e093cd9db9b9ece1d27648624b0414d1cea24a90ab05945ad9fb67f64bf8812bce2c7cbbd37b5aee632daae79ada99fca95326949e6f453ed30a0da81f3b60f8fefdd67f8992f47ca00cc9a0b71355b74fd13bdd843d786126543cdb3419c64be1c864f3ba995a5234db13c53a64f2e7a7e8e57f58a7738238362c7b8e334318377ecc3c1de49d817ac05bf4f74211c4d48ce0cee7f50db87150d1a4e070ecfef3ca1d927801afc52093cc42d7d340a73aae98a3cfafb6f303ca3cc6560661784d44a0acf4e05092eec1cc73a61a3d1a22b9be3cc9e8e1dca06b2f84aaee67e35d4f8553c8c2b2b88836548a2a08407f292cbc92c4aaa1bb609df25faabc2e9b79940c4adddcaa466ba037c7079f225e0a871c7d5c7d027777ec376cd943900988f858c5e770bc9097e23c68bd583797db74519a591b6da8ed925bf8c287dfccb875fee263672846e91ac46adfa798d2d9d405a772467e0cb4724b8a1469ab16b86142b4d5a5c81875333b7e8890a22465ba41cb3d6f2a6b4419135a2402f081b0cc68377a32743b316f13b21aef5d7fa59f54ac63b57ac48266325d0c2ca1f4149df5515c8a81de807eac9bd296d9387e2ad6ebd5b73f8758d7570e4e5ccf570989c1381d45683aa335a2d97f7e3e919ade4cdc21b7e2798a2b47179703bbd14bbd959dd1995afec57cacd378149a5ebcb6b55e6fcc7ca9fcb640a5bb74505cd23670624a50aac447e357c26b65c9fb8820c29eb8e7d30a9b207d3cb97436ec9a7c3296bde355931c2cef0b4ed8bba441e40fbfb908853cafaa3a302be0e93e7a5f0b6e02724c442038345b7ce33fd483ea97cf5f4452b82e7b3898193ab7dc766ca1426c1a31878f7e29b48c1654bb28ecc368c74029a766b0fe46180d810553fed7dfba0840586bdedc6197daaf1164443e693a655a6a35c1bab461cfccb9b007e8acda871ce5621f8ab130d38c4fd438e1c937b11733183fce0ff40aefd875e7dd6c81c3bf1dea4c0fa6e0c4c72e7f02ee95d0e4f8783382672ff6006efcaf92d42980a8d1e2c1eec7caaff0083bccb17f1dbaafcf57e2f8ee71a53a9df0a954a2471192c94dceaf78d9705e2ec7dbc59937d6af586df2e5f42f7cac9a646c9ff4b904d31504de67e3ab11bbec9da5cb7ab89287e18f897b61b38d46eb6cb7fd041bee0b1956eeb19d9e634ad72b7c759a6a1f7fd0f12ac27613c968bf6c0e0daf27b29a7f4afa29fed3dbf4725d9f81c80844ca93ea367f5b28e767dd8839912d2068244341c396f914235fbfefe8bf2ca812880b50c1984186f20262124cc0bf11322453568b67d0df2bd6f8e3a4954db1aae263e81bb69d639a1fd6158a5bc645f4703ce95ccdd273752c6386efb7143cb7d1efac16f60413e20f70f3a0c6b85a78f08144921e4627554de6c507f12bfb3270510880451ffe6ff4eaa988001581d8fffd6fdbcbdeb553da0ce1c832bf5870830a3e02fb8e1bd3a28720d627353ed307ccf4757c4b122445c13d4858791581b0f765aee26a144d6089dff213d8aceba807ce77d71cd7ba5f70c5c9ff8728051d5eb8063c22b0ac371214a06929844ec6b2759a43992868453c1a336f076ec9d006b9517122f20b88812a6f5f7e58ad3db011eca0534fe0ba894123dc60289098df5ec5ddee031e1d6c38e064cb8e388baab485d125a85b9d51f0b9c7cafbc9d47a446898251f2832d75627915559c6b68921530c8c9774d3c818752a0beb5039bbade5eba59e06f543a8ffc321304b6147fab648c550d9cdbe8db43ba86bdc65629407f7a94dee266640ec1bbe77583e2c947279b3181ab0ab9d92422921ca5566e1650dec88f2f08990adfc3cb5d35d95bd6ae7e051b9fbdf639c8770e70ef633f754d33d4978702d05cd0db1425bc4e97f287acf6c9236f26f14668782bc796629b50788e177285bad70594ca7bd88b288dc8ba80967037ae8d2d411f1f5617b81ae5ee8a188d026714589109db9145a7b5824a30de215656436919c49134a95759f7c4f8088ffba751c449ef3e933a434cf796e3790f6bbb511821237be931ca727c65a64f17b15067b206c04c6793701e6db0a074f6605f489626520f6005b6d4084e2fbf13bb7f566cddfa1bf09a1e2996ac6fa1f00f0dfa79dda3fe71874e8a5f23fc2df2c1be07746f87bba812b22d25a4726ecf0fe3d3f160fafffc581df48bfaf8962e7b2d074caf5b4d01699945a8e34386bf457c05ed9834bce68de9368b11df6e18c7ddcea7be3f5906ff40022fe773e392321c5002307a23eca1f2b0c04b09fbaae13bb87508eaad103b0354bb12dc933e961e9429dee9239e9dc9eecf829d753cbae3fcad078ed8db50f8e012d0a00515687c79e5676cee598d270f9fd6bd820a7d7c27da92731456b049117eddf441860044c4923b70b40b6c07df408f9ce1dd88ab452c4cb9779d23dfa53a8d2c68729784cdfc8eedd5a2b38e951caa27d0585b0cb25985caafe4cbe8a4b860b5280e64df93dbc10fb76b616c81f1a65bb5068b3a701592c02362324762dc49f3c973cdb63b9ede4f24a3abe1cd4eb6caf9db81e4922b467bcb462212071e3251818479d2856b08b00e69357b83a9f8d2fd0338d8afa52c9f5fa77b76d6d32a035f49054d365b55d6134c574c7e5cecafde4c0aafda57c7ae9394aa007496e638066860455d7fb0376de2c1ff38e1bd3bf4884896d507e3b188441152af0d81ff20dd44f08fc0ea9702a8a1dd085c253bdb7b36179bfec4050579cdd9c768574f1705a29894dbc2528022dbb2707678a8087d201d4f4bada31ea2e86a0e57c12da2fa166862bc2fa7338d68dabe17d1384e5bc3de01af4db7383030007f20aa9d245b867cc7a6ded61b4525413439800701270589bb0e6e45dd8b922012e2699880088c0c2dc6b71f24c91af380da4a4e95d1eabd332d298a5da491f61c4641aab1a339ab4eaaa227fd01bae75fe1d3746b5d5c598d8a27787e6c30a7ab5a57fa7f5bc7f02f41c788f3dab24ead62e4f096ce1b44e09bdb58663337da8fd4e1060330000000000000001a7b142009cd1ff6a833018aa571d1f0c7abe58c9b6acc600d208a2cec5eb5c3536a4f19d89b90717aed58951bb2f5d3e1d901bdbcdd5306f4b95cf89c306d763619285e171239677dede222872031690f060ce3f531f934588fc432f2d5dcadf17d9e9e96a4c21f1c6b486444bf9ab5087587209b33243b1cc7a662a80da4fe31b614463069f94d78ed11f31145d59ba5dfecd5635cd80b18f8ce4f7f48ff418338e804898c7c17aea898a46110e99db960e3f3e389264c452837f3df976b5375cc9b0cd4f29e3ec74e9c1675ab47a193237b8030640254dd3bd8973d8f6431d163786a00a278cf70590d1347eb5fd7b667e6293461bb2fc202dba487350355d9257d933c32a754ee122cd052cf26aaa2498ab3e766db272915328bc549ed914c54ec8c3d4e9c6307d185bca0add2794f6680350ea36893ed27867defad36e49c9ceac3b182d79fcbf43cf6fb360a6ddf3e4d4561277f1bc9ac7d2c19d4b95b82c4ff46651e02ffa7c1e785454d89c059264eb937b5c2aa0c5a32661a697f3e205ee9cbeb3d692dd28014ceb513a4a6c43c7152d4237f8480dcdb233bd15166a6dc57e3c099f93de73b3b244103ad380f1bf9af2cb4bccd52ff03775108a7cad2d3616a21d830e453aab98406c5a8b9218fcf11ce4bf73d0e6437d8c0f74a8d6794d3a6edba8058ec9e05ff54b08fb22ccbbb93042a603fa8319daf87cb9ba613f4f5b95c6d44f9f2e2b634c7e87e6c6ce8cad73997f45acf98e0b02d1c771f1cc83e0d65e458e11e2d13a66d3f537b9a7c6f9c7b94c771b3d6a98e885dd13fba0fd237752c294e1e23074b35e8ae9d249a711084b101504f73a17d61b6cadd05522aba00b709e3866e6420912eb63290d3bcab9821eddf9b1cfc21e64385c9733b149229a0f1fa3d18959ab66d2f2b08ab5819b5ca6d731183c0bd8b63981a32e618d9d380c04bb2bcfc089477c9fc433ee5450e41f3fbdc513d64c17634857f78c2c3b4de60a4a570913e18b6d177a7649c5f2237d893e651d3c9476ed9cc0d59a9f71a9baf939259a82510b3d29400325964e746eefa5c23bad31b9ceffd6656d721bd4e4b0d6c7eaea07da1f71c6fa45d9bb1d5597b2c691f0b8e3febb080fcc5c8d35b8efe213dce05c96013132613cebb5fb863f141948d267792e50edafa117e2ad8fa4bf0a1c93129b67fd9058952646e3cc8a1c5d2b2450cf638342180613e55b066df787f04a52d411815d3919d907ce68246ef3b2ef545b9382bb86ea36df92dc77053ac633c16592e3b3e20660643fc8a76844a6196521d5dd3ea47cb7d57018b8eddd863cbc31fe030e1321f5817b1b2261233897447c2c5cfc205ae2b3489adb4882bff401c2f2939f6b767338ce7b0a4ed2191aea644577ca095fbc30ca88a9ffeb57a2284c182b600918fef28fe775ff11a438303c418ad7391116d94f95d294501e28cf936ce6950212e73bb41b6acafc84fe87fadadeb1a497c2adc740929dda14e0fb4f28e44b1bc12775478765f28b2e8fab3cfb54bff94e7714a7101aeb444f03b9387647a9f268046890719175c451ef2c377e5b8226fe454f32282e1de837927b62a5a58e70f61dff28fc0a94e930382555aede11865fa00587ac9887b4262f6e6a878530d25c19393d30b765d61b135f51226f411bc939009f0b4ec5d68c560b857ba6312c47f90bc8a9dba1bfdb728a014a0c2f553fa253a9056ecf438a854b7af316c64c6e4753b6d0519bbe583439aee09bc14b946b0a2848d7a6859ee2c55969bf2a732066d60bf26567ff3686031dc59bc229184dd8ea0674da8a01341db31f18b254ab821242c7365bf45496dd805f6f5f0b5c65dd2c5b26aeae01d72996de7f29c30515c551bb2ea55bbc09d7818c2aa7ec1847941821cb9a3e8cc6e179fbfba365b49295473b5d5b83f98cd1b24eed4d82be75513d6be3d3272b6a67145d1c64bfd0e584aff7c16e10e15e648c8a4cbae44593ae8ae4e0c73939c8ff526e4b259ea4b7e3686b2f096821f1cdfdb09c502af230d2e6758bec2d900656bd85546aa9d590d93bafb4d76f5cb5b1628e426bad29e05739fd6d9073a0a7f15ac6363facd9b6114e712b75496dd6252e2d9b19ce9a784aa7be9ac1ec34b849e2647393aea574bfd374732f8a2a33bcd5e6ae0a1f7a2a594a76cbca2161011b7aace7e653a5fd749b72c3fe7781cfc132f7840a56821e16f67006da587bdb03cafe5c67f23aada104b6493c62bfe4a0a8d5f68e181ef474ca948c52e84db25c24ed14493847f94d7765d652b9386837f5e3ba3dd74bb36a3685a7c49e52fb08b35753d45462bd8ab5a8a221d946cd5b3c5353d1affe5f681d5a7e09fabd3e9022b0e023a12800719a60e789a32fac58739d6f76a398b35326debaa172a1916f91b6c89ad59fd2fa1a343dcc8f17f66e391b5cc9092cdab09fd5c99b60bd76ef61bb31087b46dabfa52b75c1008677c97b5780e26d45a1efc86d2a5ff7066e5d2f04b776556715591a42214b101a43d96fce9870d86075d502f378b7953a879d2571c288a8be27e932744f476dc8d3b62e96ad03a270d2936756ab7b025a0f721335ccf03e688f88dd2a8cdacd618ec2cf90a5dbe7136eb15a6ae70b727af779ef03de17ad64e2e9a7e33906275e6ff8b2120d01231d0ee5fa6fddfcdb7966d2af9a02a070484bdef517432ed892227895248f46bc529d9d58542a63465f2933222aed21953a0eaa25a97167cab759e4b7bb29c492b1ff817837db99c7580e559affde62231258a2e992f4bd7464ae500922461b0a0f9290be0e1d56e61704f79cd88d0d168572bcc58e75a4c4d6685b435d97e2704b23b22f8ba327dcbb47fc940a607104f4b7e512caf5cce1f9c1fd90bcce50818bf80da7e86d902e4a5d1ee4d24fb4d4a2f3b5c109a690bbbbb5be4fbdc5fd89bc69f6453cc8867e855de3de5495d2eadd2c8b1f7429ec22e23ca5d5bac748f2ce5bb6468f8be4c7b12090dd052c35f4d8dcb11f97e6dc6ca1daa16a67ab007b6b942db094f8d9a78b7ba8846280b24e18d3add0106ab51ba77cf7e048c2d2a218bed892faf415854cba71d71759f861b0abf5613bdacba327a05d9c59f31e1c8e8bfb5be12fd42744b76513731c527da36b582a78a1607c2e065cda561ca8501f626987835b9419204fbb169146256d39acf219f725135f97851790af93c7c858a7437b67f04bd4b10a0dcee8ba2d8580ba3f3772a4563fe3fda6b1f94bf34baa6ba606b32e459134ca727f34ff6c16715f604a806876726f8b1436d33cd4fd66bd8a80040c5f9f42f21282fb0d2301c7209814c05e44f35985183db0ba21dabce156270f00896b3af18c4b7575587c82bcf99bf526879c0314e56cc3dda762af038d229533d0af93bd4f33d1b61572adde63e009cb9291539c41dc4e883d556b4f9eec7c379cb1749ee9f2fd6ed1849fad7dd3a2dd319e41b400defa10bb6f3e0a21a27de8f3c7cca604dc47559d8a93799870c571af43ed3611539305c3e07a78196b30051f5cc401e74f8d83dfa44af4b5e603555cbdca24d9c75de7ea4ed890dae984f0610931bd4e1206c568aa15b196017b8e76fcb6dc9b87a91ee3f7b6c2cc8cca4b04a79ce288398572ffdc145dfbb3214722460f8923b55b70ad4f03b2314a298308dc21539c54f7c29ae87e5d1a6f47334f54b172aca7eb0419fa03144af3efad7c4d58884b825da5ed3e1c2427225cf1e9af053df9206fb03bf4dc73b82dba2c9085bc1ef8a8a7b038367a01333c10ab542528a405ee33f98d29b9b229a3a889e2b13fbc2262bb74f6f6a55a70afc2dedbd00a8dece729ffe0e8ec7720393dd206ef928551bc2b7af6f45a71dbffe82c7a4cddbc9ad5c8a81d90d7c54fd19f4919a0c01c9a0bfa137a0c4a2c9a18228259441c2585159638062ba3fdea714da57d9bf74cb083d05fb31cf00158d6f47b3b1a1e289318ddf921e08621c95dddda93248be067600ed70a5ff8c8da0214ec88cce39ca721b897328e8ee577f312234f09b0673e458bfafb47e947b3bd9844c2ce442a5390c34802d49b62889eec215b9d28f329cb93ec47e793226b46e8f57b11ac588c3562cebccb604f3dedd516cf9df33b66c9a0c0954887db9f7f3d11e5a32781340fe47d9b7643df9673d105c14e96f2f6911d2dfc33e18f667e3ffa85d071aa380591fcd33afff1f1a6d9e6f9d8c03de0e8aae3255d95ac3dee9859da32e4b8c931b2cac22e0e6e13d5806b8da939b433b9ed789e739fdf165f2a23923782d661f60231b3f0671f2feed4260ec82bdf7c2ce3de4d316037c12a3026c281f42085e318a77dc45297237f9570e5007347590485a8a46e1b0f40181170ae920a9fb230e3d465d30bc27778cec8ecfd62884cdb910997841406e906f351db373174d0aafe5d00eb02196014105a3f8786f4f15df2a3ea1ab56c7e9ecefb9cff4d7683a74f7f079df318267424bb195e58cddbec6c85d66c7ea48086ceeec1c07f9b203931bc6801d21194049a0704bdb10b1752f54005d99ddbe7afbc0e69bd87da86db8b786719efab12800c1e0fbf24d6b65eb0d9a32384b8dfed321a05343e3c0beac7e8fced4571101f8951451e1ce5dc6eb154be981f917d6a1b0cf3016a332053b24c29ec455b8156e04d395d03a9ec1531bef51ad93a9eef34bc2dd411c735faed7ef6ebf1063460c4ecee754024806f7e2f6abf612a986ae556f8a103bba992b2739a371c2b806f298356e1f99169cb8a80b255620eb5f2b1f31623c2813bbbd08838c863bedc99389e6cc5da482c4a772586efa7eae002ecfd0be9150b7a1b9e42cba36f0d86e8e2727c9d7a42e0f078cbdb34d63ce0a70e1735d18fb361b2bc60686c699c66bc7607e2c41ee51b0837381f93c7757fd33e40fd3d84c7f75874f680e3dffdc72cfe2580487a9f691e2132bd6056d42adb25234b04aa06d66ecee186f95365d687bed1dadff98ecde8b9f734eaa0b524693a72315971aac106508b2888940d31065e353b37e0ce717c8871e7b41ee218cdb11392973c12561d50468a673666d244ce5dbb1a4178510783570d58d503de1aeb1df45a7a87bba564028cfa4c7337c4a6e4f35ed100cd394175bdc509b39e4bed2de2854b7a8ca9bfbbe3d53471bb4e12fb95fc85b0b1d1f4a134a576bb30ce55e7766396a406dfcdc47edfef85ee3123740afd71f7ce9ef79e776990238047fa514bd61c755de4ec356c58e869eb21e59c106e09327cec4efdfe53b06f32d487ba05f46c168e930ffe6da62731bbb855910567e28e1088d25dc59ab0f9f2295696737f0d208f58831e5b3ac49490e6305439692e09b76ee85bc8008fbc9d8383eca63487eb8dc18f78b0d9576f56951f0a9fc1b224500a18efad0635224fca1dd0b29e9a49f2e8bd6ccd6324fd7ba54d454b1c5c2d2af068d7d940e7420e8ca1dc0b3bc331d9c6ffd68aeed99a0bcbf92d180d850c3d553e4a6dff877cc3cec81a4fc219c2eac0c0761434595e50a11d9c7666fe5916e8bc69c3d262cd0ebe4341c47f12322f8d5672d23ad699b2a454546612e4c1c57c50c1c1ab7c54c2f20daffef4d10258d7e2b46bcd439f8ffec518850a0daced3b5179fe0d9c28011f876c2e0ba4a2e289bf78ec677f6e151b99e83d4fba17bbba8f9e4818d1fb314af8eb735af3862a9efdd368d2ff5d14ffcc1c47a1e93fd4998a30caa47ede35a8b89bd14c9853d9e483540956647afa8d9970fda50fd4c88e1ebd120c233670f1cef6299a59f033400306a59357329a8b2643656354dd44eefdb77d70f817d697190d32e554a393987b6a69f6d5f382aa5d13dd613d827a14c4e13fc1bc75d3dba7fe012b14dbb546331b02d3e9b29383030007504d6be69d095b6665bed30090fc824d047bcde4fa35784917aad4aa1af009f20e9f2e06321971d97570033418177cada694ad909eb7378c52c29a25d09ac688c55350df13dacbb8a2a446178c813e246e73ca00209ef7683ed8b15166eaab28b932020680ae4389937865712e870fc72314f0325b80b8aa2c4a4a69a385b37cfd4e1060330000000000000001fba53100595e86d4ffd661123c83489478df9ee1273484296c4855895190fa22921aea28479ce99e301142aa3f49e282542c019867c7e448be18d0ed1f3992eb7168613f436c01a73ea398eb5c85f4d56071dc8d85a53b6a9bc46064ff27c8d083b910d5baee9503b2a039ed1c37cf63c8788f9d13a38270b5a07e149560cb2727ea72ac381d7fdc6bda07dd804766f34b69c3ccafd4e00f1e95a147bd5c4f45c86a527b401da7e0278e3a436235ee4e81dd57e4636de522906587b9a83f2442709830a64238888b350290afb207bbc26a69c6e3c9285f9f1796f84b421f92a867efe6c424eaff5a0801c5742225b47eddb1715c62dc815edd7cd2ba30e458d8d3fb848d3f92279b031b412ef9a82b4fb7af454173e63defe8e9a095978434e2b3a4bda5de323608450dae16188584dcd748523877d38cd461cebf5b821fe04aa9d7cf456c7c5cff7adccb4597d9be69f52a3f4238cacd0e787273388fea20b9e4f94d52ade356b4e4110b53ae6a8031e6aa5172d20f7ce47628b81ca2c9cc807a307e42029a4553faff88d62f125f68bd7eabb1b26a9d8ab5071965577191dc16747ee6432ba000e1d61f159e4f605fbb5ea16761df26d8d5cef26970b337d345fbc7910f9cd73735cbcfa09d6b6991e6f1f926d7015fb745df9567773fd97493c588cf5418fcd3ad35e6fa6c33bc018e202bfc3bbd8be9827f6527ec0493f5c7e62ab70074f0b568004c5ad022aab9f5344e62caf4285d8900fee7f83ff5d621bc11fa1ec0cb53e9ecec53c0571871f154fcaed2ebd65c16b94e1e74c056e601ac3192f28e0d31db23de538622ca48f53043ac55b9cb8888d28b07eb1c0b1aad0fc034f950021a5c43d9b1aa70db9a1d7394edbe511a2c44b70106db52d9fad2ab5fc71dc7b8a7b3f7fa11efe6ecd7db67e07cb7ab949fc0604e0867d688dd8ce8c2f7e1e9465fc6a15189887d727f647af31f636307a1dd433f959e78525c9916405d80db1d85e5debd47dd4ff1dfc041ad9fefd6f3e84fe97d6d08c439e463562d61e113495f59c906c030b892c2c1ad683733307dcdcd0fadd5f840258373a190d824cb6a1f1e278772d7fc87e5f56ab02a9bef588b129778f39212962ca0fa2768634f243c088469f7e59b62e629a222e5de09454d148b7568700c56085f66338bbd210f7e002c987304fe2fc07d00695a8b73d7e28a24e133c5e4405d4f233c4b26d673d7e083926cd094515fe5cc68ffb229156ccf35e0900f5bb9333cfa9125d36ed4bfcec65a3fb43fb12447f3b95f059b79301c5865997c1faee8df650636145569366c660c855e1ec33929cd8de4b4ee6fa62bf11da356cc0bec2b5b278e16d91e029a6bec49ddf6ed812d391c9cdbb2b0184ea98bb59965f39fdec4d241021b87f852a768325cded6d2f75fe63b2f6dd1504a1279d3f5aa2a5a169e6c07157901124c2ade14f56d5884afab4d88e2031c6687f730f3755084a5c813eb99b2b42d070276b8faa6deffc2241b83d79c9903d2d7e744f7dc7305f8aaacb40c917163e200d6def853933a563d110ca837fe315fa43f660c36d1c848275320dfd1717c36c5cc1f0fb62988d3b3f0dedac5330a18c02e255d94c8e49ec09424366a89cc9e00ab11a24ae10daaa1b795f94a88db47945c519eb2b634abfc21968e08d5935264b4b9e13671c7fe88a549a94260c62e32b3e6093da7a32ae2a85845a7d328c1da31b3d24c5cc8e9ed0334f7b0b9b58c2905e0afc2d8ecd3b7ca5ce0fb396c89936adb9bbd2b2d82db303c203804bfba24900b59bca85631461156a2132abeb25b65f7cd461f9785a7d6244ee34f809371f5759b7d2d869cb4007e453ffdedb2414066538e3173483489bb62c4442565f242b80a42830af9b8a38ce711c867075b9176894fbc2a3505472b5364b30a4b95bf179e1e555e84a94e152d01b0ad74378d98a9f24ca63b0b088d3943e90cdd96a48aa85691e0182ca8d3f409568ae08bd12f0fbf012326015c341fb9a4204dcfe0fb90def6be7776632cfcbe10405e7846c73f6a7d749619413ecf8c2c168fc0a53600b38c4f098da8e7e0da8d0601db4b31ab404908158e657f7add0a9d3a5bdf25ce0284b20352a9d89f2bd39baff95c77b44a74fccf1a87b31e54df1a8608bb7533808f40c88660358342a5cf1305be23f1c3a35fc0a41ab958cefb694b13198f9ff4b28dfaaa7c1281823717070ac25f15699793b47858e0d59c8e633c0b5426d81470fd908a993316422430a9360c7289e70a74e6263f1279dcc98bf8f9466b474dd235a67f385723f1cb6401026d2d045c2ff25833b63d1fa0b5b49c4811d7791a0741d2456250e8f7eb70d76832954412d59141edfd8c42ddd6ba85e76566fde3b50cdcd54286f5e7000acbe5edff67fdb23876c5b2d2753ac7823c52b3627b951838d8395cbad667dcf6306bd51444836d6353a4a9778285d618be8aa7ec9de5efc80eeaafc40c8a95b83f40886e2305f5b35eb9b36f00f84ee53ff628b46a58df9772ae8af2fa8aa596f12f05aafedc17efdb4da8c9559813500228d010accbf7b50a86ee98d64e85fbad9186ef33d4a248ea0ceeff4d8346c3d44524cb21aac0f6b459fad7c69db598fbbba71701181f937fc181f645687bf2583869f39ce0cc622f2abfa968be805288ace10f571e1a4168477c56fa7cb45734e70e7dc82980bd41102c9f7c5b1f73d5a3942f137b8a6a95959cb5bf478c2f71c11b7e07254f558d865fff7907dce97d82fb4c7d4497c287b7f8632a6baaae762274bd5337df803303fa0d965e85cd6d273e4a2670fcd8f7657eab6e6e5dc27ce6eb4b9002be97e0c283e852253136bea6f127b2320b36fbdbd318820ceb1b04973679c12519eaf37e7b4443bae8b13f30ea0194a46ac15ce0013a4ed80bce3e02cb3cb0a05dc3688e0eb640692d89fa56120f397d125677ab77ed63a0ba5037b7181f44a20785acdd645ffb788cfea09cb3a5dad19573c277396fc73463381fb6c9c08c56c845dabc4128da4ea7fbfe3e63de0a1e982ff60e428fb41d28c34dd54375ee30bc5c6760b410f68338975ae9adbd0ab630ed96b6a98830f789438405b3884d05fc5958f31a50c15af509f0afd108c77a7e3288d90390eb90d6b111e66cf017de1509062c583f533864b5a0754137855038853f2f598b4ffa89c4c9d09ce472ce8eec8adeeb06af10178d59a4eca3f56ae982ffe3927cde4a7ea59db78181a6b7211eff3031774bfe3d99210a81e25ff938423ac07b39c73b3aacbe05f3d5a6c5b192b53d2cca1e7321446370581e8a0a82c508029130752c5462fc1333973c271d187f347a1be9af343b46b8043d64c084e37fb08a01c70f5ef974267f9180a08fe3fdabcc5b562a8d786da3ef9284701d484ea29b3be33607e617ad95ae502e0f4c65da5f41e3bb67ebc17a7a32eb24606f7394115097bbd62d655bc888ba834c293fc4b31b31b426e06e90786e1f189b198eac462ecfa91ddcbb2b1f9b134c827fc19a1815fcc79694d7435367be0d73b367cea7da01d19ebc58902a855a3af1236d3b2a006e85987cd8215230066286e08daf3b392387f8e58073523617c45ae1da5e6d681692fd3b3548f1950664a34bca641839174b92a089781fffc26f2bfd3b181e6931499db178da4cb3f8b17d5ed73618c117dc1ce60a5ad1035ef558e3d6eb9bb186d48e9ceb1773bbd1f0be7a6f0dee921a03745cfea2e46f051dcd041a1b91a35e683a939be17a48f9d3f1e041bee4645e65adae7c1bb0de50a8be073c5694ad0b47d2d12ae52ef54b9c815d548731e72e9eb6c9fb795c3250d9f658a6774798bbe2dccd46d73254338aca678cb1623c86695d118aab8436b214b31a147eb6f93d2c2b0239b10c444797f92432dd4d2b7ee9070e2f8e2296dca14a6d2efb84db6079de1e1b45d8b0cb44d581ab97df978a98b48e7fcf712d7c1f2dbb2e3974f46b409dac82d85339420360168179a088b62b1bb6eaaa6a83f4f5afcbfe739f18d9e410a884e712d2036724ad5dd5b555d5d96a9209fb7d33a7993724afe5535cc5bb30fba4481d27533e35a02f9f0b515bc41569bfb707b1dc7a17f67facb624a90809106ade6f5c8fc75b0522226492a9bfe605375ca17731041ed4a90e79966993a9d647253e8e011a20d4bf1a1c93a782384286b50c31cceb736b7550be4fafac83cf2c70f319936f4ea269ce3ac2546cdc24e9d9f33b59f78663540551d363cde14d98a3337a8b92341e29bc310ec03ab1f43507fb227ef9f9a51cef1e7dfe63aa15794f9617e560ba556789a7356cd1c1b68813ecb02fe243f993b248a7b7b446a555e605b2c88ccb0946c3ebf25c017806d1008bff55714de64f5a2ba45fe15563cfe998b780fb1a690bf0a08b584130610d1872498a19fe680ddca174162844df1cd81780be87e5639d0248f1f538c551dda8cc5ef3fc47f26a74ab04dac9113e546d45a2d50640220bbcaf5d7e8979f3673e1774e431e73849a1e7283dfba90726bf13e035515e575bedb80ef3eee76fca2cc13d00f647323218743dc8e25e9d594e6d8b17534fbd407c18df71640044c96262818d4b432e04810173ccf1659436bf1e040e76adfb17e99763e80069025722e57d88c47cfd53f1f86e73d55c1cac9e097c7e33633e46e8175a4fa98fae3d6e8bbccbb05141d90fd3b669ea4429f569b64decc31f51b52ab44081ab1b01c5d78b16a32c8520855128bfb0e86b6cf62737a2a946b5d061f72506ff7dbda30b0dc6fb695dfcf38883573cc6fc9a11a3a4fba58b0acf7edfb74bec1ed6d2941d6088b12a87bd1111ccfac25020fed5292ac6c39d7ce92bc253d81a1bb0a5053fd4c3b904a4ecf98c2b4d5b697de710c409740f0bef73bb0c3169d9069a8660baf683467cee9be2eb115376c7655f8ab6bd4dba481765fc77a12e96a53865241073c1f730330024f28b6288c35572080327e378067dd2878d4400a9d8d5a607fbca20e2caa2a2b54f85e1040bc76e7e23513050c7f0bceaa8080bc0a82a77bddd536fb1b525ab582a05356ef8581e205b2b6a5e16c4d150fabbd4de0ca852594cdfd038ac8a34b17059d8e179c22591751a5503811bc558396f4bf603d2269e8b297954b7823fce12b38a0efa44ff4d5d620e1f66a2abadbee99cf2cf9a8a5549dcd3c85ddecde9e2223170b9785637f2cf2608c1a564d0083fa3309298fb66015155a255ff7e7cd8102514fe5cef72993108d66868c7503622cd25ac2c9b2a05fa7f8920a54b499affc00061a19922271939fb01b083bc95bfd417d581a209c6b7267085e0a4b731c5aed3834c34d20f1e9d82facece46f6db004feeae0a2b6999e442ebb44411e24ff9024f190a967641b4040740227fa030d7ad03ab2ff07ea7ef69afd236f1d7712bdca667bc0d2a040a600c1c10c12985b25d8007f1bef7ddac37ca78ef9b46320d222c62829d759f712abb1851f6847d8db89cb330f646f9460f6c101cdf4ad469d32ab72f7e277f5a90eed922be42f6a240edbe41ca649864bd522ac2c511089e396c5c99747045fbbde20d51fa0c074bcc7bfab2e9cc50de3dfe7e342550ed20ef07506ab4c81fdec8b313e0b4754bf686c5bbcae186b22bcd1f0794ea55b3922628fd57ddfce1eddb359c5ff4cb1b3e1e35abfb3a259556c5c2d2b26928c8d4f369d4d2fa28875dbbd4ba2b3e72833d0d00048b761f2676638796c2d0dc8cab2cb77330861ddc31175032fb7e978f1f2a286a0113c3949f175f99789c808a5f5c19c6e5d46f8b5533b129429842b8ac627f4cf433833fac2331df781296d8daa58f449f30e8a37d29deb149a3e2ffdc326b03651801f8c3825b79e5308bdd4090140000",
+ "trusted_commitments": [
+ null,
+ {
+ "asset_id": "736ea365c9d5785af1a76d5258e4d6f80ccabb5e16703fd2c685d365275f5fae",
+ "abf": "8fe330d17dcc9f6b1d0326dfcb8b420ff6f26ce2b24eab8bd646f4345bfb707f",
+ "value": 20000000000,
+ "vbf": "ff9c46718fcfcedf1f4425e83c4ae865be29794aa521384b90d3aad0a35bcbf0",
+ "blinding_key": "034714c3ce7803a35468fc095e92c8fa7b64d74e8d37b1c00289af0fb60d833f6f",
+ "asset_generator": "0b80642a9d722e505cddc88254dd82cf1b2c5e9eb116d3338fe91ea7d159fba915",
+ "value_commitment": "0916a5a318ecd0fcfee73c51d91742e5a73a49140df4a4bef5042c05e5dda77efc"
+ },
+ {
+ "asset_id": "fa658e74d8c665ee644474c1200a8cd8158bc98cff9bda835b096577f6093e26",
+ "abf": "5d767d4dffe376417a2f83c8e3a8688160affee11705592e7e26392ea7e07540",
+ "value": 19000000000,
+ "vbf": "7e7ea5d389e2644719fa3779c93b5e358f8b6e357b939baf072d9f4abee05a33",
+ "blinding_key": "038c3f2e7b293bd42d1916617a6dda18486c8a9a8653b1d84b52b09d8fca54d554",
+ "asset_generator": "0a0fda0dd9c09dae6b8f4013fb00987d7374935c8d178042f320f1d3b5812d5fc3",
+ "value_commitment": "081259f0c58bffa7d42df32ad3a9fa2d984712c5275a60505127715c2122fd93f3"
+ },
+ {
+ "asset_id": "5ac9f65c0efcc4775e0baec4ec03abdde22473cd3cf33c0419ca290e0751b225",
+ "abf": "e39fe5eaad685ee12532791984acf1de0fed03bb90d011c481f62560835cc752",
+ "value": 20999992110,
+ "vbf": "faf0df1f6129b7f30f2782fba2f59123c07ff0c1af39f5fc162ebd2af6603344",
+ "blinding_key": "03cb9fc4128e274258547e392a6d2b54b4ab45998fbf5d6054d973e9f965d5df17",
+ "asset_generator": "0ab00051f0302aab5eaf7722004aff379c67157db6538e2b5573a3a472d8d6cc9b",
+ "value_commitment": "0828287e07dca852e32cdec590fef9af36432bab7d7b67f85640a7e76fb90c92b5"
+ },
+ null
+ ],
+ "change": [
+ null,
+ {
+ "is_change": false,
+ "path": [
+ 1,
+ 31
+ ],
+ "csv_blocks": 65535
+ },
+ {
+ "is_change": true,
+ "path": [
+ 1,
+ 33
+ ],
+ "csv_blocks": 65535
+ },
+ {
+ "is_change": true,
+ "path": [
+ 1,
+ 34
+ ],
+ "csv_blocks": 65535
+ },
+ null
+ ],
+ "inputs": [
+ null,
+ {
+ "is_witness": true,
+ "path": [
+ 1,
+ 3
+ ],
+ "value_commitment": "096eef754d78209d83b164a1ff9bccd97156fd19a77b1c79164e9cae1b072d09c2",
+ "script": "748c63210225213e4085a0ec71875f6d8807c91547db47fdef4ba9673e4aef84a512e3d041ad6703ffff00b275682102671fcb7787c6c7fe475b952d28b284706f68b418fbb04420b3e80398b7a6b259ac",
+ "sighash": 1,
+ "abf": "a092acde75b0d5691d0d7d9413e9ab6e61d0cbf353bbb03f5c3408fcdd23cf87",
+ "asset_id": "5ac9f65c0efcc4775e0baec4ec03abdde22473cd3cf33c0419ca290e0751b225",
+ "asset_generator": "0b1bd3cf0b4935f64586b7c324cebcb036cb4b8781b677651a9af8318c984b2576",
+ "vbf": "b94b446789b83f532f20b0c0e6deeb9ee1593eafbfb3c1dbb28f879368515a91",
+ "value": 21000000000,
+ "ae_host_commitment": "7b61fad27ce2d95abca09f76bd7226e50212a8542f3ca274ee546cec4bc5c3bb",
+ "ae_host_entropy": "3f5540b9336af9bdd50a5b7f69fc2045a12e3b3e0740f7461902d882bf8a8820"
+ },
+ {
+ "is_witness": true,
+ "path": [
+ 1,
+ 4
+ ],
+ "value_commitment": "082b235a0ccd9c92a0f20cdae1cf0bf3cdb54e6477035955e78d9870c34d30f59a",
+ "script": "748c6321031baf375bda184d6badf47b5c24967fe732ea24b5309e854dfb17374bbed9240aad6703ffff00b275682103c64dab4eec709646f366f5c38dc9643ce85fae86396d85d2645969eb8356cbc1ac",
+ "sighash": 1,
+ "abf": "04e5bac07ee115473f88a800db81cfc47b3ccf021ec73f9c3da9113607d7bf80",
+ "asset_id": "fa658e74d8c665ee644474c1200a8cd8158bc98cff9bda835b096577f6093e26",
+ "asset_generator": "0abdc78c3357beebbc83d707113a8116e9ae6041ba16153cc242871ce59d92c945",
+ "vbf": "cbb09c227bf6b86afceaeb4c2a453315ff9542dc347d078b7d04e2ffc1f5436d",
+ "value": 20000000000,
+ "ae_host_commitment": "1e1cac808cd75fbfb707f5c4b2a124e61ca4b102dcd5cc34d0633846723bfe86",
+ "ae_host_entropy": "08b3f1ea6cd16574f624b64a98ccabc7971580f58d6d696f664bc4e04268e30e"
+ }
+ ],
+ "additional_info": {
+ "tx_type": "swap",
+ "is_partial": false,
+ "wallet_input_summary": [
+ {
+ "asset_id": "5ac9f65c0efcc4775e0baec4ec03abdde22473cd3cf33c0419ca290e0751b225",
+ "satoshi": 7890
+ },
+ {
+ "asset_id": "fa658e74d8c665ee644474c1200a8cd8158bc98cff9bda835b096577f6093e26",
+ "satoshi": 1000000000
+ }
+ ],
+ "wallet_output_summary": [
+ {
+ "asset_id": "736ea365c9d5785af1a76d5258e4d6f80ccabb5e16703fd2c685d365275f5fa0",
+ "satoshi": 20000000000
+ }
+ ]
+ }
+ },
+ "expected_error": "Failed to validate input/output summary information"
+}
diff --git a/test_data/liquid_txn_bad_swap_taker_recv_lbtc_ae_in_summary_missing_asset.json b/test_data/liquid_txn_bad_swap_taker_recv_lbtc_ae_in_summary_missing_asset.json
new file mode 100644
index 0000000..0f38aba
--- /dev/null
+++ b/test_data/liquid_txn_bad_swap_taker_recv_lbtc_ae_in_summary_missing_asset.json
@@ -0,0 +1,119 @@
+{
+ "input": {
+ "network": "localtest-liquid",
+ "use_ae_signatures": true,
+ "txn": "020000000103ce91433126cae2a6c5ea177dc83351d356b18b7ae6b80ec2241bf0c2eecc6be301000000232200200226754b6b9a37a01fa7a6dde68f65534e6a3fe01a268895e91314642c1cd643feffffff2228d040c091132b328ee5615e5ffd7e36a23cdf1a442ba9778e83f96d050b7b00000000230000000000000000000000000000000000000000000000000000000000000000000000feffffff047559805692ba6c8077b39162fa335c1a75a404c1dd9250bb62ecee6d49f3d601000000230000000000000000000000000000000000000000000000000000000000000000000000feffffff050bfb6aaea50bad7b8fd14fc4530558db6b01ce10c7b45b45c6ec136f2b999cae4508dd967ae3d5c92c00d72e2b6588e82108b5cd8035bdc063be23aa5080306db06d02b82d7bf763e392c15e91078352d622bbd83551f0b3a1343b6487e678329d6b2f17a9144c72dc194326434eb3012acea8824f33445797f1870a56d7864ed61df62f736af1ad6059ca45310d479cc9cfa5fabdc77c83bc020c94091ed0049aeef226cde2ab7a3404aac4502ad03dae843b3f0e77ef01d3c0e640b60325a9f32863ebb33c1669e6c43514d185750a173a8ec1efa353fa9a60ad54462b17a9144da0f652bae4609e3c39876aba4ea54f7d3cd986870abf8b7f9191012a82cf327c87629ac02b099ded94db91f34a78dca28d0102fb52090b3620874fcd00633f0855b1e9a5c9445894fb93c151c98e0247ba02d81419080378a9f0dc0f7e80a0263c61cfb448f57e0f21641b2dadca9c9390cd134c4c307817a91494d69aa3c403f8674291c34472ae8a5a45225650870b094dea9db5551cc9d2390c728357345076b09574362714b2d7f3601d24c3e1c108ce891794e8ceb81a169d00348aff3e35b7079faa0b2c9126df310d2cd8e1a41f03d476c4ba093a71323f1ad055272ee352c7c1389be7978cb6deae5b9ff4b08f5317a914f5ae0f64527662f0a217549bc81a05bb0b91aad5870125b251070e29ca19043cf33ccd7324e2ddab03ecc4ae0b5e77c4fc0e5cf6c95a010000000000001ed200005e01000000000347304402201c50ff76e35e890c2ab698feb6d43009670faf62f391a7146a5d1cebdcc65d55022077ead2c98d2371d9378b48a0afca4094622ccb044a2b5bdf98b94809bf109a2e83473044022073bc5efcf57f73704a38617422535309c4cf771b34a866b279db9cbb7131698a02206e5d41922ffb875472879a78f6846fd6b098106d2543604a2b68dc50ca6659a38351748c63210225213e4085a0ec71875f6d8807c91547db47fdef4ba9673e4aef84a512e3d041ad6703ffff00b275682102671fcb7787c6c7fe475b952d28b284706f68b418fbb04420b3e80398b7a6b259ac00000004004900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000490000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000051748c63210225213e4085a0ec71875f6d8807c91547db47fdef4ba9673e4aef84a512e3d041ad6703ffff00b275682102671fcb7787c6c7fe475b952d28b284706f68b418fbb04420b3e80398b7a6b259ac00000004004900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000490000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000051748c6321031baf375bda184d6badf47b5c24967fe732ea24b5309e854dfb17374bbed9240aad6703ffff00b275682103c64dab4eec709646f366f5c38dc9643ce85fae86396d85d2645969eb8356cbc1ac00830300079055301e46dead61d02c7735335f59002fb98b18adbd0a5943ed4a5db515045f5fd1591ee1f2e6dd98c279b71f7de3fc1f4dd03537dd3b9ce7b8c70a5be6c98664c26c30e7e30458489cd5f251ae83a05c986cec4dc1b46eee51e5f420dbc8107c1e06024c0ef2066bfd9d2235b356e1f9f31d73485841ab8ac84dc655dbd769fd4e1060330000000000000001b6708c01857c2b64eadd092a650b7049948a94e79d7309b72eadc05e763b7236b5483f2028454625da5f03fc489181fdac1e1c5308eed06100efcfd554e5803e166144da7555f4c0d8478d28c482dc8921453cc253fb2eaaed9e3ad3e30b5da765033d7e3d49da09fcfa319d68ea478893be3384c547b2c24edb4b1a6b69c04c9ead5253a0d3ec8d4bf46eddcc7d43d6a7596a0238daf37e300d3b34e9a0dd87a8defd57d72619b1c0397082d49ac16fda50010106ab904962fa18bb59e671caeca2ab228ef65a53d5d00d4eda6abd378e93d14415cde1341ef2a831636824a7575bc23ecc20997f6abce867fb1cd0d59cd29902ee69f2254eadbf14b49f78b11fffaac66dcecbf357cbdae62e0f9a83a5844bdeaf615d2a6825f23ae154c49cf9e752488dfb603e16aa0d41571bed27178335223aba915f6c77397e6ac85d3b8b330f38a02445c658a080b0841221b4e902610a760fa44ade2a4dd7b04e03869fe97ddcbb437ff8cc55d26564eed34461ac2bee1a41c6919da5985984c2e1a2bd62760d532800547a60a6d2a362bc7e4bad1fac40c695a400405862a59435d320bbfe21b56cfe81673d88fad4cd6d9438b6aa2540bc375781566c1e3bce68a83131b2b03c4f85f4ae3b522de3a7cc5ef0a6a62c63a93187705affb66cd6401e99f2189662daf930aead509c24ae8ed3394b6687a6268c1b9722b43301cc888db524f391b679c3038e099987c8fa97846541fd9b13bb660fe1f721090381713dccba448f6471ac5051ad94cfa916d22f1b0ba0a3b65603d94d251614756a626302195dd73af0e2b88a218f768537934b636daf79caad8f095f95e5775d7e64a901a3dd1ac3958cb23517bd0c8813307b95477bc681d48812b0f15b22354a48dc83b574d066938959ca0b7b4f6d0c16cfc1420842c34d63d18ab4d70314c868cfd87aa5ef052dd18bda49b4e7d36c022579be0e55d01647356c8818e74afcfe19aa4b046fc85480ee45647532580cd5b862e808bb677a86eab4cb26951651bdd47d58aa6958b3fc966bf53caf9c05084d0210302e92917899375b351ed9f52ff7f0ebadfcd60ec5cf95aca88fabbaf45a4dd97512314c5ff92772c08efc31c9799166e7e335c4e9901257889e1f4684b44ee1e1373c130977848afd901fc057a01528b17250421466b13d1345755af6a72f2f3aad3e068fbd124565902aa8c9a54f2ea51eccb9c67119704f2b2a5c255e8251658c3a61898e7d1e318fed7b322165285c2e7372492d1fbe14c333ce2d06e75dd4f0b48ba17d1917f99d532fff4260ccc3ba3b748fc4ddc0f58fec88bf2e59e16723bb94d5d5619ec279743fa1ba6f778e00839f6d7a76d687864093633b8155ef4bafa36db02f921c017817c426236e372e4c55a237b88b3f51a03d4ffca44bae2d2a76b26d928a15a81b3fe670d089abe944d56c72936b833d4ccd3747ea25d4b1d9a6bbc2c0aa81eb11271e73fd8e45867be4dfe72a84fef720d12823d8868daae70664cf74aa46c7aa8cf4ef6c4f0c2aadf34fb0aaab8791f15e3e7ada4566b1fca3dd3e1827ec1b69fa83ea2ecdf9fcbf1d0ef54b86b87e1abc4a27735b1150466deb4d775194b8484b02a4a705d5a65522586b3a6477fd1ebd636475983cb68b31cf760ef6dd2802b80a35a3a2be2401bb5936f961cab5b484ac4b1691d2c39ed45906fa0290e1b8fd8d72b8b4c6c74ad4f96c3f6d7550172669f82369651fbd69d17b7cc7d172bb19ee04f8823ecdde2260d2a21ee0b09602ae181bc79a716dabbaea8a094033e3c07b59551f08b1f6655a138ae333fd0414ee596c9ed70cc5122c2ef11475ec4d4d5253d8413c8106371fee2138bdd2dc83ea11655feeed250fed57458e230e065b6f4b1ff027638cbcaf90f294d494f1826716c2ddb9162dd47d6d675c804248ab2a6ece41b97b78e2f9d010fb7bc6cbb9a5053b45beedabb6a0df68b0fac0a98ce8884cf93a604099a3682fc1732bd71edaeb9bf4e7469ab212a947c3cccef2febc9bf6a1cf5226511095b0d6d70e19d1f7d809fbd44ce8bd7a030fa61bacbed55d5b174aa9586870768500e195504fa3ee5cbda215e0312fb6ac6cb9f44b108ba8953a89d9a0b4e6d0d2b3517964e82d0d9e1b052bfad4118be5f3c7043aa82b0d55c7f4514766aa99898ddb73a5febb06e1c413ca3fe28f968fd2d5207e58d8e9121c0ea16b7294b46f00637be1a955a522637e94fa703673d9a93128bc1366375a5bae81e06bd1b15a472ae40c977927c1a22a9c5c964f36d45b63fcef065da3f624bb61e418f43e31735d0066a050d097f43c8f952d03cae0b5091596d9cf153879a7e2bc5575b366928dc2c8e1170c95e6684f3eea995ebecbf10fdacbfee3d3299a153897d703144c3da6b7bec58135f03227d5a5c6b23d916533f77c18a9dc18259dee0205f20bde27464cb0a9d7f5a99969e87780edbaa73b356c16f3fb2f9057ef55b999c464d05e5ba69c70250833f7fd62c40c1c474c654b1a5a3c898d03589e0bd989ad06c742837df7f870f223a39c89e416257e86c7d874332bd180993d7b8c3e199fec4610172359be269272c3e77e0b3d2c160be52f44c47d633a7f0ba2a93bf1ea9e1c75531a3bf55d6f563f14069159fa8d5af6f5ea42317d4e40e01c98d217e4eccdcffae06926acf9ff9e1b2894c4cc1f8dd84733cc23c9b47f008b0d6c88b6562c8bbbe5aa05a2de41ccb61986a06752de8e8da1a719bd96bac17e879deeffcc7d8121d2a43e3809dbaa14feaedf9460b8d5febb96ddc5c0cca1bb2b0ce64e9edefea00446a6325cbfd4d13326d914eb5b98a17c82676997e9cc90d11393c7eff6b363e78b9e4ab247c41c4e1f36e11c77f6534f7183dd6d18f189460733078f43637a31d4f35f22f271968d68ff8bbb41f7f27656bbe0e03d1abb31de40f33decc082e9e704fc12b51a7e6367b93e8a848c1bbdfae22040f74485742fa7c10a1ea9451f3a55a7562e4916a3cf65c5f5721f647ebfc34e292a1cf8a441af0512be662e0c204d71bafc27689d8dc16ca29781b3b95c530b9192c304430bd77b5bd8b77c16005e0988b145cc94a18b7fd047019857d9672625c4bb0a699aa83a87cc5d0cd74ab4d972654db0559cf2a06a674ed81942eec3f5c3c7633882db5f31b77a02e00b9921d29ed07f69362578a36ddc956bed1608a3f42d1dd021a81d1a867eab6944a67602c81a551a9939a4571231b3773f903156940b47fd03756b4e5c00b22628ef42e48f239c73e5843322da0f458bb85fe8d85742af2206a0978023ea581ce5637c5e2aec30fa82c36409ed644e20799b3688790a5191e331c8862e3f3c9b9567ddc3b6f44677476c1fcaa9a738b3c402b5df5ddaeec2915f7f7dbaccad7f20366d1d0e32aebdd3e24aaabb58cd1a98d8f7b288b1e7952cc65d35c27b7c102a04d35258c05074b9f19cb20be77b55838d5365fe0a7f6c81ea7825828ff58e586474654aaa25a5fbb85fb10d70b1a4dded0581174bc779e9facad40f5d0033b42c609c786077e9f113e1c5de9ee38bf061eeb22dcdd268588b5605d0deb52fe9fad317b3a70283d292358b213c1ae2af30bf8b7bbf0bc8d70843ad4e61186b9221c4e2298c434733b463ca2b5298395124e452e1808472bf1fd7e031bb92a5c9d068e2ce6107209fb23eaa87f23b66261abbb10c1d9f443b43a3acd630989ae611cb82f9abd7d793cf9aea1e22874b6165e6db9b32e5139363c88cb54133caaf507a5bbc3d4454b44e2ce7a31d1debb326e27e87382eed364ffd4c097194b4d68c891fade7bb11a6552d6bb42b4e5aa1aa09aa8549ed4c483d41330e9c46db4a516c67ea2e012a742f462c6a51a3b5ebb99e3367ce1f5fc51870ac80d493dd855b656e598bd713d8d174081c7b989563c73887d8ed0d4170ae34fb1f39f8dfb8d98074ce07fd84bf434f9a2b25b8d1b03b2f842b0c8faef8ba55f70580f39dd53a9d9f0b485f310e15d4f156fcc5d3295bdc0433da969e8878146617a0c59a69381d3db2cb1cc922fbf301a0212dbe73ef72c3f1e3b4e6eb44d81678fb818b1f0e1c39bb20794f7cf7ed9ceae987b8bd40f08329c46ef8340792d133e749eefa6b938e77776da8ff950e63e808cf3d3c2e3e9b9ade89a7f555c6f33d96abdb32554a1322a66595879ccc2889e46eeb63e74101d15f302dec9c273470b3b44d80e0700fb8d4ad530aca7ebd566bf3dab1af2a4dd3de1f7b91d8ac9a94c68be719ec35d95facf47162ddebccaebaa1375a8d09c8454d49307bc4d5d08607de64ef27cbb46715626edc83104c0a846e7e4fdc57cd2211221ee4ec31637e53951138dec9496b7c8b06885f999754e533e76848c05e7e70c7bb2cbe92a4ce0be6bc21db161b56368e8242633d448e279adc0fa6767d32b73bb3f4d4ead4f81a032f8af731db26d73fa6f6e4f89f43697a69483df0283bced18457f12ccd92f1538209fa28edeafdfef05dfe06d86911995eb4066df1cec5ddbe96093c9f787978dd32569a5f394af399ae2213042c3304f9267b5d7e651e273d8bb33660da12b19df922f1ccea8a1d54c6aa38a2257e1b657d2456a8934915b966b44aa88b4d1b27a0b6853af2975488a720c2f044d97f8ae25f644016104a4c8206225dfb5db2a612b99346b6a3ae2e0e6ffc8e447fc2ad781842a76505e2860566a2ac3c0aa94ec8821649e7095b9f5b3e892e8874e88082dbea421d7013d357247989ff2f10213dd7426c764ac03f92a8493060a008ffbb7eaf73e6e8c8654fd5614fceab430d3fe39a7ef6a4f6f69ef7be9bd5380f26e293aa7d394f0a9c6bd9ea2f1c157f58f231b5ec99cd9a20306a51846d8efad1a5106a5f1ae62e6aefdd84a7770e4324da88abaac246956868c2f1a2a0c1b1bd22eb1ec4dced1c8e680bf20456fdfd05a1032e2a389e821ec2621f8e073126f2e310a56e2bb9fdbd85d72896e1bc624ace8faa8dbd3bfdec5094ba358cc11c4db18c3eab1b98a17388b5575414b1de79efcf93d1a8e2a94aba93358de47dc261f4f6ca7d6a2c37ccb8fc42b3ff4aef40d9953b7836c229c9051f42b0d0884e3933deba23e3790be6edf2ea96fdddf2288c1c1ff1e2582649d6251e8e07862a1dd5cf9a51efcb7101905ba6277e3acb7a2e3fd474764c35822473cdc750489a19a4620261c2ea53d4ad0f7c0d62ba37447a24bfb172cd0ff7f959a7c768c9ef640979a782680be507ba4b5324c877906fa98ed84f1114772824cb205e09a2af605cc999384dc5ced066e9e127f33cf7f032476c3ee1ce361058ea9f169adf7528854cc19f3050d3f8fb71880baf56fe7be018bdf77bac84f41e63e77ccb570dedd4656d77d95c4a4bea9a4d5a65218457da2917c7afa79a6ebd28f4823cbd07bdc747dc41a7203362ec13f2096bce2caaeeb950d37dbbcfe87a8fb92335e140ede671f227bf1bd62f34e113a89f90c1beec706317632f18fcc43e284a2af5f0cc19b6d26a3ab34f32dcc5c09b6dbf9fd2368226cb1260be136b2ea3f2d6c845b1d264dbb34e9b881c3c2d332bc59b8b23f6fbfed74d0325bdc14203bb63350b16b02d3e2f5b017bd009af44bd9f9bcd74a3111d6d7ef54061d917e8db74265acc2d90d199b8bd5eb17c1bccd6057b05f9a3ab794a59250605436e206bef80b56a663dc06d9cbbab97e4d577d6fc2de0faa9ec027a424958e37aa955c9eacb91b0ca60753f267dc9d89ad488ac77cccd07b76ba531725cef8beddc48cfa932b34b1e824f4d15d650f250a3816ecebe41147bcef20e4b4519271b5a3c32a52debaf9cb67fe7535e526c31985c7659c5b619ad2de9c8cd68d09a4a3c245aa1225f91d4c5c08501ae16de8303000700362dcf20bcef8192b10eb21da6154bc317bb681af72fc325c1a966edaf4835b17f0f99824d0b62985a2d6b7cd0e625834caaf00110c720c9241041e34bb51fae4c81a2d385f6fc7b7626814af378ac61c542bcb5c1b6ddcb8f16dea99fccaa847f8e5ff22e4d44faf8b4b2593a1971b22abd1db57bd2151310c671769a0e82fd4e10603300000000000000012125ac01bbf06f3bc025a99bac408017b11a84c8a93a43772beeb87e71157836a637f84c5d61775d7721b763e18deb595f1ef0af6243ea8b628802f29300dac3344737dfb0f01be3ac3c621f099e290cf5d9b6fea5bbaf9463de02a128cc713ca17847a06984e592e3ec8e8ebb0ec94268251311fcde35b1b10b14409b2c5f5e682cdbf7f7dfa691cf6892c355b6201f80b863ca7e7a2295f8a484f0a150727a3a40d2ac0ec26eb34564555068f70b281ff63c3a71934479a1f9e005b37d240fb299771e62b271fe878b0d263906be3d83458e892209bf82c8088ab0fd835b872a4e1965f33b66f6bff2a4c55a0d513fd1c28654735ca3e7b05c125819521f83a124e5e15f6ac2d6a553fc9fda5654d9a2f12eea973b4f2cb8fb1a64ce5df45d14e352a939f6d516946c0e239ad03dd1fc7a5e9830f0567d8d837b644a9ecbca146d0c69055cf8ea863915aee50815bcb71d8688e19e6b2cb77db02ab1a12f365612ca89cbcc9f692ebfa105e57afb18e224c49917436f81745f6e2034da11fc5a33f6b40c07345a33acd8f1e99d5b1d244a4f224f469168f2e008f408ab91ef6c3d1c72a6fd2176f3d376a64651c372aae5b223220f0fc6ca3682053bff7a1aaeb44ac12878d7f41c42134a75e4a68eb0e01a266f41c7861e03aaab8e1205c893752db875f9e7d3f6b9a5df11ebb8c30855be33e76b4646771b9ae1728da4476ed27749dfa01128ec0e15f397ee7c03261fc27b0225695be94b810246d153c94f4fb8c35dc5def01ba2d56315931bc3c4de8415b9c5832b98921c796767d63dfc1a90c26b7033ba353e305b84f95379d8b8335d1b52b3b03cb2e217d1ec2d2cb3ffbadf0ebb7fb1ce0d1ebf8427592b3cf1c5c6a2072157ec6489952ba90efd620ca65f62c9b2a2401a9946abebf3f8e84715d33d56dbe5b62037f3b7e2ae5f5fa2f3045accef651c70a67b7c64a0b057f7ae7f81abbd1dcb2877717fd8c9b3db9c68adf56dc70d43fdac90cbd60a270ab3bdc7e5958756945254e377816bb6ed2a530f4955bc4fb01c25e36ce158933ce5601aa3bdb913890447e34ac1580b9621fd9f25164b452f14653fa1e638b852eedc1b8f0d3dfe0cd244803fcf13092f2e79ab72ff68bec3163e700b024c13c7456abb408c40c4589392741c2b1eba4f8cb43fbf663ddb6ef56e987c67f0de892b86079608b43258f627ba8837e20b71cd3ef0fdff9c6e02fc15f6ef879ccf98f4f18498b3a18831335878aad5db7fcfc86edf92d5b8928fc670c92e21bc76f427900b617e49ab2b49a9ccd2107824cc7fdc7ada76f9242dc08495162e2131542a34b2554ec6050d7c62fd87162de079d20e215cc33c1d6edbec8643241be57306387ad32bc053f307bec6b5924a68cc021de5d2b3c6090207e7658949bb75741124f2efe0a1bd576b05bfd5b8137216f847ccf0269f69192ac9aca76e946c65a334cd68d88adf9b730012a1319943a84203696519e3a306e89f2d1a1e098632472263cb09154f943b6d2fd9e1bd579beb12a9b4b5c13937d9b7448f84f13e580d84b6e3d912a8c8982f3be8b713155e410e2ef4fb01909f72698fb2a0664787d6bcb8e85f98630e18f33b1b4a2e7ef592754e3de334ad410dddf2af1a6ef69a1cbd6f334b58928be860ebab63f92061f307a068c5662d415a20752dfac8cb95cf14bb075fc92fb6530b222e43a7140d529a91270402e757211c47f67d6859fa9002ec5050f2971f0609ee9f5d7859d86d2cf8bd9bfa5b3a2db549c942e13c80061209df366439acb5e0e4803988f93fad953217bb6131471bddc7cc20b9b39d2313b987d7882c5f6c87fbae270047d3ebe6bb2545fde0b3d9d78d88865e09c1b4905f3a1a63712e8ae358c87a6e69930047efe83bad926bc41a2b043427fce34b72f10ee7b1d1429d5e0ba385b6c4f95d63acd21b2d7fee3e6c5031713f36afa0ad7267684754ee37db56a9ac88288ba92a3eca62f237796d0291c8b7b642c8c8154e844585c26d55318147c721fed8db008fea23efd218ee367d298f577fdccbd037843a9b28361b4b66f5c80e744bced6078adf002fc867e41a5de69162a9f800791d72b46129d7f3f7f3f5e6597c8698e04079b2a8b325c7d382ec825ad7033c016465cef4983f080b1ef5d86f7018314fbde4c6d416ac8f9a4a192584bc70ead4ed86d44d9fe10638b9fc9987d900a36dd4504ed58188fb1b5a80841c43dfe32881c3e77a8f6a8e4e63cffc5c02fbac5de276d8a30204839accdd5cbe603947b924bfe58b207863a73ec4778bb6cfb15d7eb7942b5f20464f491b01055427afd0275892f10bfe209af0cced0b054d0c56ba253c37760523eb22555626f695369011b8919634c085b26d773cad8331077ef4dbc09f46b0c0fb1651733aa0447965cfa3dc88db2f65e3f050a68b62c5070db87e17ecf22fbab56d7c66b2eebeb5881ee72cd09b16ffa89faa73cf05761956bdf6f2161a21ebe19fbc8ff87b22cf363473bdd5860c3bbc97999f3a8295ef20f81d3badeae9226af39be18113c7f2f69bf9e1897a68b69ff9d0aa8e8351dc31c10c8c4d75bc1622151020a397914babffec950fe6e8c5e77cef0f9601bbf3dcb634e16825a204d433c2370709615ebc4ed3ba2848212d515bf106852123ad24e3a75703961ef5f68d7be042412ca9e45b65599ef03386b6676cdbd3fa1bdb703d0153572c68091b0eaffc08155d415ff4c0c400fab9aca6221c2f4c02ce5e4c272d574fde04ab5872913fea75a08fd35a03eccf0b1f5ac29b399de6d12ba1685c34c0d726f6005e544a285e2ef916f416d4a46af0f6e91f9994319ccddde7495f4ea449e73e16920c5a2e42871188609d6766b876981c157c2fe85fe5f0019508509f130e975bd362a14154c3ab30ab829b670b208ae867efa4d3bebcedad5375d077937ea692470fb69e73563183c793e69bcd416e7e28ec2c691c56928d3e3f17040032cae3fab1798aa4e5bca63259597811579e4d3da5ddd7161c6f57c0a7f3ebf20624e9ae6b9ccfac243039bd4a9267d202251c8fcd371a49f412255a12fc32b6223388a445f8aac8547cde9804f69f96708c19b10e9fa69c7552c46802e5bb56ed4cdeeb2bd93243b2479bc21b64d43210a1806993e342c89bf81d9f26e78cac402d10c1aeaef7d4bb907ecebb0a45799dcffbdd5cd09fc50989a7eb69144655f24426951a45d5b204e24e95838054a8807a301fc8e2b0574ba3739013d6cc2b24700774f3b27ab5b33eef0fe7c483b59b5e55e50443cfd4c0c727aa75da473a1de16d76834173a819541c4bd89b4ccb4cb5f8d1e0cc65efbb1eb92accd5c39f9f3a1c4efc60dc23f219773379631a42dd0cf348df97f74d45ddd92e824f39ebc1ba08c58e7d4e4276acc66bb861e19931099c25b4708f460ad91426d42d70baeb1c3059c75595b5fcf7f8f1453586f456293af9dcece52cb85589c124cf2e2a047f131f3f553ba96cbc75aa27cb829c1b91ac345f24dc3831a3fa68178814e51ccdec622dfc1d58423511377ebac23398dfdc77edf22d4e4cbedd1c7a22227252dc033c975d1c51621f91c492cf2677d97aa1b8041cebd34db887fcabc5d3f737970c209e2d3ca14f0447ca267bb94370553558dedbf4adb01df1156c19a7b1aa9990210ea44b0ceaca96c95f041a7259a5d650a6287114cb94d25f0cf5665629cbe1a66367779654d13c0616ea2a069b40cdff1460afb69fd30810ea157d489f5556d14ebd6c002af8e314ce7e0981db986aa6068248ea03b9687a3679d74074a69a36ddb9b3637f2b09a8b53094d67975d0b56bd3c8753abd99d2288936d7e48517457e3f025b487f87ff537cfae9a39a447483b586641f9c6814e9fc207e986065fbea25f91b22150d6df289d27de71f4edbc6acc684e5ff80d094088e6637e1d4918c9012a9a418ad4209e81ca6ae959abffbaf4017035af8fe9594493b3262009e7a3d80eaee0c2cfbcb9bd5f21363f0754261e12357de7693c82242ef76d04b976c9556e4c95549b116d14bed5cdf33d51477a361e856d160381b613e70b00b8626b2646efa19fcee26be285ce2af16e530b9ea96df2811911c2e5015db08c4b392b5039affa6f313b564df2484772ae786e12cb618841bf0e1843eeea5a9b2d8dffd40acded165b7b966c2cd27fa98883bbcb6f57e5ed8f26f642533cc4fc7b96357cc9dda02e00006c7aecf12a6008e562c17e2af64ffbf2c4e65e37d7d08ea5d3ad9430c83ca2bdcb3d19e2034882db96153e8fc41872ecfd4f957594a076aaec6ed705cbd74ef0c5bc5d83017d61393ee8bfe95cac12adaa4707c10545b1a74bb4e32896fe764c270c2ce98fc2cfe894db213ba40ced18e492611de59a5f90701b3fb8d2da8e6c719880246e35fe3ffdf8f2c99cf8318e96b53f4691a50eb09c151cfe4eb4a8ffb9b2965b3a18a9b257ec2390787b1998199bdb8b63ef92a1bba11fde7b412b18234d0f003e2854f0e0006696da1e984d8398b4e8a7569098cfdbc8d92b7b823111f8890d92cd852e2ad18e8445e397af7cb36af3e4cf062dbc97d1a6ff27618a3b4bc52128688a00561b382757d05e1649db6c603b7132316e0ea66048caa77149fc819d4c2b4a311c171987336b597cd3b452c641e432936dfd16a0606421fd305fd88075f5ef478fa21ab70cd34777618eb3a84c3500faffd33fe8ee3aea2495e2887ee35208a6644e5d1d10399a660a9a255891d1e5582f22230897264b1781869e287cd587645bdaf9cd8ebb70db0043eca18cccb40ecf322b28c9492cba107cf5a7eff74bd15ce7f9154706aa2e09f4f0eb66faf25f4e49c7e1072425c54f2d395881bad9768976143b20aea97bc624d336497c3294f3dd5d9b6f4f0f21bd955e0f995d31aa8b0e2a0f9c1a622456284669d174d11e69da941eeb795278b0a3b334386242bba047b35b06c7514192935383f895e8f0bb6e09cd26b0547bdf8789a1069f3c052dda9ec45b331063e83cd95eef92ff4e2efe6b3ebd802067142b957288ff566b79c83b567c042abe7f6b4be9c9ba175b5811bb78c5fa1ccad955b0c8dddfc3751da2b95e8de96e836329fe7cef4e1164f10b01422f189bd9edf06638de391dd531022844d2860e6e979b1198ca4329c03137a424897829be44f6feb221a645a655db991a4524080120c5e5094f09668fcb707f1792f052a534ff2bd2d63b6d66e5badf77e41d63d4dbddb45125d652b7ca1e7634c12bc0a3f20a261ceb1317bb9611430ba80fed0ec450b137e196cdba34114e116c0d539a4ca8a3a033a22d9fafc72cbeea33650c1c883c6954bc05634ea39e96dd67de15930dfdbab1745c89eaffa859448df0bcf3def7fad3b25d1702eb5c0d4097c60961b37753893688aea8cc88ed17593f05cf588bd1a410ae95a6f97d0324450a9f51e9b56c8cab2da1ef4d399a813d30c20d22a6415c7d9812a30bc3bed9ec89b98d15e5a2e04ab633c1a0c494f421e5e113d10740e1a21f7e9c61ded5c5b6b29a06b85786c93419d372dde0e0c3182ad2d5a91533cf8243bc57d8887386003ee8a8f6a2435a1c0ca172474586411411c87efd5768697bb45527619be50447ec377132ce78c4406a80918637a157c380967758b6468f5dd0230812bce478a91f0a493b2a04ce271ef10574bf759e0893bab45ae9880f3e635932ef98989094143a5a1d3b037499716502d52f51def87f3a3007e591043e51fd6b7b202d25da6f6b060ce6edfb33c5653637cc7e4a6bf7b72f0822ec7c59610e68f5eaf40e3470e18906b8603e514845664958c9fcf4738aac186c1e1d15d31062af2edd220176fec3f5a14e4475cada132576e476c671a8303000735342de5f83d26c973bef0254374c7eecbd5219fd305c17f01aa45f406461f300a99d5a56320c7f47fc994500d2d879f14a0982e6b3f7977a50eb79601f862e27113b747a5461b18141b5e8d2820e1cde18faf8cbcc59acc44821d42a74df574d713cc73b3dc5ef8ac78577f02093ebcb0e4195a536a3568972c4b8c626e2a55fd4e1060330000000000000001665d8900588fec2d66fbb047afb680ddfff2f091cd13aaaf1273da39424108596e4021aff52b6733f3ee32ad381b73333a22aaa3f8a6b3a7e7ff9aef28f811f2b286777dade1f3f8337b859a099bfd6fa0e15eb8bd22cc736756334c336e1f03b3c9e990d946cc2ebec268fc24c2652dc188bdeda9bd9f76a21f2faab3430b51fa1ebe93c0f5548423829d8b8cdb447feeccfdfdaf1ba9458f46505def456b5d68066ae1249f5e6b796b4d8b3f68dac6ef8dbc303b8a77216f99d8268e37cb59d7f6cb8bd3dd27fdd84d3cefaedf8f5393cfb2477541c1fdd4db0664217711bbb32468b7e3229c9ff02ba87935c4d74932a6159f9504a126766282b0faa40a01b41b698a8223c579b8cdc31901a828a4738cd2109a2066ff59e2a349a56ade26b9158339da286d85876b78835d9dbf9ee061adf3a8f6f2da337500938a84f7b33c236b8ec1a8d8bbfacc5926b514d708fe1cf7db007272bccf72ab2f6a8f7ab86352b0abb2e4a75261dad36ac64e15aca6ee6707186927c694a0698ffe14870693196142703743c5ec97d2e8af652126d8d41d27b971f505eec9f8b65dcd7a2ce19d8f57235969efd6287d417a9867cb96722afc856029c1c06c782602ce28edcc3e53acfefb7ba1f1a30987ed759b87b8e3f4a0b3bbe442af98dd34fda77d4ab0977c1515834f7240e817ffe6ed8dcc013a6d64302f12a93600cc0078402dce3c3da13333fc5d74da84845f5bab33c2fab0ba23fa2c5adb395b8cdbfa8151fd364a07d4dab91ad09c951e3d73244de946b8c14655a2b1755b5c72e80d53c6144462768aba38822519f9e95d409e67edcc5b37603208a5eb1db9ceaf43e09f342902ac5e3cb1e2b8e6c9fb29c8d5fe6256e4ec823859eacecbd12a739ce11dca4dd9313b9d93cdb267ce4cf16f003a9581def595b6c675b340d9d162cdc38f91257ae113fdbcba69fa2b62f8e906eac2ed7f6830a6cf9fb6c96cd63e8c529280813ae3d64404c26895b38e5102550c344302a7ff629063a5c4147647b6cb5d719575d0fd48c59d0e8ce438c88472b373dc96f5c533afa711897261e86852a2e1ca2a3de8caf9379e95b0079bafebc81e8641343aee36d72f7faa3e96518d726324cc9d77f3f4b763b02b1556f8c3830cef1fd85619cbac7a58ae14fa828adf9b8d9d23794440a4c6744ba44beb558f8b2e99d750e5ef78b473a2de6f811b283d65da05f97798bfda76ca7d6a6e782dae201e0a92b8459940874f6cb3a51465cf8db04f38dad40e1b0fdb35de7ee52da8597bff48ff78bb656afea94b03043fa0fd65eb2ebbe1132d365cec2c60f7f103eaa5ce79f94a5cdb7fe316f9e5d23470b9dd8ccb561053cc2722c9ab3fd201809f7a071b0d590ad91f61988ccb02101a13e4085686be561f3313dd7418ed7999abd5a43009905f0c8792fad9757bcc781cda21432c4599307a8c801d98221af2c28ad21e4ecef89c4bf8c1b23ee7c9a647b2c4cc89d6e541ef9823092251ee1ec257c38464fa211bc24856cea842d3cf950cce117e5359477ede4f179759b784662f83cd346eaf115f7485f3e9abf62a76d8239a9a9d8d13af3ccd53ecbcb6974724f318f03ec160a90aa0e3214181b8a880007532a46e70af0a731c6cc487fd3a1fbae33838ccb6e34becab0d193662076c1a71a97c624daf3a536e029f29daebe1146b9cd9a926a60f8a2a3b8e29900140bccb4b558cb718638b883a53036155aa78cd21d95f0cb24f7b0a57b2169be3ca30aeb3ce07242f08d7cc6a15651cf000c98e381dd028cfab826010bc7c0896f22f2420ff7c34d3ae7b1960f989afd3096dfbd2da5c45e99321f4b9014f9633b432e2db23af1f2e622f93b02e1b4bd89d852794b863e1d08811b358170f5f979ca91e63152fd1c4cb3d342264963caf2ec16c2227d29378114e7e66818ebc3c676e402c3ff3693e664b4ea07449890ba20170b15f6554fb78a0005b4b36e9ccaf8bef56e9b17c7d8a782f2bf5ed17c5ff90f64d573ba2137041315dceb7fd19624edbdf6af9476527ae7230348711a63fec3be162cf73cb29c97f7b1f52a254913c7d8e45f0c0254fd97eb56b5b945022c0c4c148f4c21c8867931f2e03a4c56cb5f2fb9dba913f0417f40c6c48abbadad844da7f6328b095313084fe69510877bf109af4dde0631a6b5d6c284332eb49ac3d1cabf01045bc081c6769db918aa5f9a6f6550afa34a2d0709b5c46f419c4f708ff48ece01fff207283e9773ea92eb1aab41f55232ab3c3087465e7e4c40d85e22e2957e55c2aec1d56483e827ec274ef003f0ac0c568988cbf43a80f6687f43d3974d0a5832142f0e4b6f0a476310700ece42bf51f274f89c88e78e8891368bf037cbd54062964444a435657bb817c4bcc21dd42421766a0c42c37cb08f9d0c1b62a743cb9845fabdcf543d0e70c44541bd7e1d474dabd35f225142bc4e46e7548e0c20c330c1850d636287e2083d98f2cbaee8c35887207c3f05c5ebe26bff796cd62568885aa880fc92ac576d1d9538c469292de8576ba3d03ac0fa2852cb3af85e9fdb34b89cb894b992def5292e7830cc89b660275c780b5438e5072cc9aa73d764f6def5215011021885d3f7396d3634714ba388804cd2f43e0f5f2016aa1b15f3b3d94898a77f192982951d249549c2731fb39695da0b2667d0b99bdbdcdbb177bcf1b0cfbe309c67266aa493510845c7e7b2675cf2cf5915a9434099e5e0c94ee619f1c4972b46d3060a47688682954112fd51c6fed2a3f7477731d997948e3656747d791e69c8dc0db3253729973c05fc072072f3becf30dc477e1cdb691d8f331d6d2b48a4b9d950340e1b8d6771ad45313d3a9218e9b62aad2748c1b9faa8f0c0850e6382e1e1850f65ce63b0cde5e33aacdef8e9f9357e1dc15d697e8dec0ae1f48cc512b070327c375cbaebcb620220e3730811c264f64129f187e791222d689db36986cf485caebf1cd1cc1e925512ed0ed1d19dae8c655a3a287d3a3e9e979a60de229678d21f806e2c0d6c4e624e2bf020a2d84b1c120215d50f0e64be991e04d921a93842ca3c483e59a2e44080a6afe4271c34cd83148d5d9607845ccc421acf0cf16b3ab7f3070bd355fb62068799934abc10de6b44bbfa76f6d8c5e162d820bf758eb6b3c350de0d580c25ee130c4d94652f749e87a74e94e248907c856e96f7dc91a1487af4be54f89a72f26a64de5c4bac69c27a78f34bb225cda565b5389a592e40be41571c6427b0e2b31bdec2024917ce3b4f951c18bfac39a801238552499d0ca7f24d2d645fefe0cf33631f824b32a2e16a5d0bba7ca7a91c79176a5114457c7695b6e1f7ef59bd59190a50ea1144899d1b61bd4d2eea54e3a4db0c1fba5ff59239ba0397e5df72fa50b61cbf8a2f96376071276a9b096114386dd34aa4259f7d45cd4ec9cf116d6082a08ca2bc56c7b1ca9a4fc399b944bc97cf52f2cb86b6cdd84ac7cb930830dc7ec1362a2913bf9949f1ee0c5dc5340b8c32abfd8b04668448c6095c59df7482f0bd9a6285d4f653a4586d90c07c9e34eb0ec74bf68bc693fe45f1b95d3980d1851b9eafc18161a513523e962e5091b3284907841993e1b01e2562ef1e1d8cd17f8c7e138b3d3de23976983e1407d9532b4b79cd62e88861af8fe68bb81e135157273136874c9c47180aa833bbee2781aafb4c2fbc141e72cc39c072d1a92f71db2901e5d4f544c8032147185876c4dce727cbd0a486c9d226398c0d02806d690a06bf5a04e695327030e11a8ea35691b491b2688616a13a12a353a9ce5cbae690fe5bd59ce07adedf0edae9db1302b53ab2f69c2c0198c046ac02b5590a47c9f375009694c4b5ea1512efcc86b55181d65ad376ee1279d3034f331db4a6f3aa23ece38c8a1a474dae0bf5f0a9b247a00df7ad8f9942eff36ca075fe38dfc9524eaf994baa5894e541cdf1d8bd48711b2f0b98a505394742b9c03e72a50e84017f1605fe3b154974125ae840fd0fdd78b9f5303b9ea5d39150cd95e5a6f6d84952063d4dadab30c62fa1f89dfe0dcdc27ab2af9b017853e3a1f866b62e886e7044c6190ad48aa158e80a815793ed65bed9ce2ac4178f9f0a77acd07ec7771006aa1bbfe36d40b90ecc934726c212c1ab064171af5ad0a8713ae4d8b47224c38e1977aac74e60881c612537d3348f7994b78f83018d7041d9c74249d15fdc2c6062698b60619537b4e2fc025cddeadf576cfeff4db5e370cae987ba302bff14cb55e82b2df76ba7785dce1f3c69440f12fd6f5a947f3c480d0148bead0d1184e2acf7afc59bf786549502e3ff1b0ca438236e5df1ce03ac8242ec6f41662c30dbf21d1acd00ae5eeae6867df3c8730825e29f3f00404deff1bc0325909575da9fdd1c6447cc1035ae265662829509f389add97f54526aa3424fd5ea7dfdc42f4d3ad0109bd303d1df6b36badf6ff23abfe63404c3edc6055c9cfff1aeb033d6f122d9b14344ffefc75085b5ddfb61cc497222bd5a8405ad20d823f2d5ce0a139552bb563beb6a306aff7c587e47067d9589d0b6ea38bceb149612157c14aaa3a90eb6777fc0839c89684a9f4ab34b07042f3581fec57efa783fd58292b7b2bb649b087041ff822738652ab6f9f6cd76d53a98c633bb598f70e58ee089a8e5707cf66faa6c8da814353563c562826f85817bf3b32de2634baf46ceed13e2819fa588e8c48f1746f422323597d5ce46b744ed25881407aad4c7c0f198db94018f4fea4ad8842c3f31665030bb93d2d5216b1328de815932627d8daebab41461cd6aacb6c9e4475d0dfe5931800c67f40815da439427abf7bb7ffe34f2d1793b3292f3d0d43b81683df1a5a7d92d78e1864ff38d3c6605b38efd4fc7088b6b35c593bcfaebc47a29e8be283fd5ec58446dd73f21630b82d7ca9302432841e8f9b37d8353be327fb5b1ec298a638c80873a09643d7b0b198b56f3d2916b447cc1f320552ac3f743a1277a93130baa6d3f0e7490ef0ed8c0e8944c1b83724fc0e7b57697af7ff37b99516f335baae67155162f3ea8556c3e8ebd1b4b10040589422988949494d75911d108feaa1c47a7ee6f7129a27e543ed8d44f11df808fabb3588458d754b17dba199e36a692cee7318ea64d8b97c37b6fe55e978fa3ef60efeed32b62e1e6f6b21554f94e15d68b311942022183143e2ce328a5ff0029739a573fb94457dc83647bd11b29eb8c0f98e3f7a5fd99d3115a2f5bd2a63a4557b813eeee2b23ff9eeb720da8dad9d66326d95e6b5c45693898c048dcb9ed19c6fb1fcab772fa2a0e854d4f2f125530f9401117f113236a23343ddb9af9d4fe29da300fd39acd7cf30e3de4724b29da7b2ee68857de4c9896dc82b6b372c2cab1a1ea7ed45070dfe632ab26a35e8502b4691afe2249a841ca7c393e66b4c3a47a10abc57c59e9213144dbcd678791569896916806e4daf7c1ef25dffc03ff851add6b86d69dd5cf762bc1b73cfceccfd3ea8241950edcf49494eda9f8bd33598272085c2aaa133d4c7a1bbfd49be654a5d25f4460e0f3c53806486eefd54658a86b011eca5298a69a0a9fce06dc6938a166528975ea374d892bb06592ce61e729323f60ed38c4589deecb445a38889c4b740c44c06033e1e0b4f4601dd94bf9590ed78f72e394990aaeee455ac510a1845635ef121ba3df9bf1ab99767b407411180a714ee5a9234ce00fb1a68d542b465c3787de645375759503c8864a001cb7dacea6b981fc71e988aaf0faa66a3b7da5405755d27a630b872758026dbdfb40be417e576b90089c761b80c271dfb4ddcfc0b5f8cee001cd2c777d6d2b3f626e3eec6f95322fb3a402c5627d2b3df715284b1c0d64eed258492be433a1c83030007e33452c260958bfc702c48c42cca067ab86bca7a95a06cbaebcf7e73198f72337f435d1a6304d084e02f67de37e3757aa384d2e261c32d0711b21151cfeb5b463eaa55e6f3617aeb5e9f8fd39edfd03b1518fe29c5979d1b42490cf86d457dfdfb0ba99a4ab675e0ac412a13a71edf30394284e89d5e53a40fa1cbaefc6471c1fd4e106033000000000000000187c1fc00de5cd274370d5e98730b3e26271470a30972183641ba7298d6a6700db2aa4c7081f3ee7ed00912d57ef8660a110b744c694033f4ab7f82ab70171104c5eee93b6f200ee17213374e514f79e524631dc0ae3108db5a098242c1a33e69687bccabffa01d8b5157982ce0547896538f8244ae55b96325eddf1de763f1d62933c230a2527087caeafa568546b253cf829ce5e46a0993a2cc9b3d6bef1d55d0f0c0b1a0b9951992d6172d455e07d9301b59c4b2568e28c8dff2e056a1c5a5bc8e1244dcc238d0bab266532112b0d57211d56ee6950fa88ad9177cd2fdec70223eaad249c6d04cd03ddaba900a7d5c607397b9006d202b420984d8ebe86f0911dad3658711610c142c668692b843b3544b507c1f975518c6833e8ac909906065de3a7d8a0dc5aad8320c410074ff9afdad2c8a41f97a9112f5b02530bdfb747e03f2b1dff431746a02d637cdd2369d9a4e97a256419af74478ece3a0f0a28ee6793c1ad2fceb8ac128fb6db2593d3ab2fdcb69a25513b3fc929a8fad7c72d9336767975be3d4f7f29d32a9eeeab92cf6d57555aeba9323ffa1d918d2ea21e92f1b4ecb2b67d72241e4e8037a4a9f90ef3d4d3710caeb35382faea42022a65491dcfb58324aa6b084d4b79d01e3591b99a13741a3ecc0e81d418a380f4dd4081d391c9156c89765daffe368697845a1da97017a3eed79017cfd936da14f4873a7ec5cba188b1d5f547222ac8671b9e7b4401d9ed8d7512d0f331452304af2cd4304c28b186e0be5fff50e2a6b84ea89158439fc6f8b4bf7ceb1e722805b0fca4f7d3bf0b2b453af2b6c8ccf8864305414517ae75da806e79fc3c6206bf12560382da267cadf2660c5feb7b3b41e531d54a7c03c6cc57daf7e4d18ef86219ba0ad8aa4da6dc32af2f02722c7bea4fef27d82436865943c87111d9a31decdb144eda0b668d84e54c091b858c068658e521da81affe1c535c02e01ef8b72a6092f0d352da553159f07b48caad4152d5588f907d2ca2b2cc4035ec05f6ef20ffd596abc0c39ebf08cfb0e6e317f16ba13e865c6871d6fcc8f77991d12272ccaecf4d0a40157f75309f83edb6ab956d036e1bde28b42027b23fda8a60808babcc7273955a8ee9b493323e260df0b54ac60079e2adaded71ba8df413bf50fed764264b5b75f560ddf24c4cf0c377f5a4810bc9bdb67e52015d47a45d5337bcd239f55252d83d2469043856b49d9ab27655ee0f9c8abf7fbc0367cc0938c44d15e90d1594ae501f7bea46e0f0aaa5a72185270caac07a7837acc17d875cef7f382a813f667e105dbd754489ab16b8948dd31c0874e3da95a9579b0602caa4d207bb90dbe4bb75b2d13336267a62f8a9f415aa7c306d9583d16601f7d7f54130df9654e373d44784d83943d60c679293c564f9063e6a9a463511e64503942abfe4f0ca3b7b81070b963558bfb7a6623e7b0146125cbc4caaef8d1d546761ffe5091a82c46d3e7456309f738873cbcf15c129a3cfec2415e9ff54104ac66ecca2550d6c350d6e264805692537e305a13b2b220b206822d1b0cedfcaa8d85ce6e96d8256eab3cabff68a04a8ea702ed03ae1ba34057a03335ea9789d4fbb95e85b80e36c28cea4447d3cf3a13c2fc0b8f0a627f4a5ef58aa1d8b0164479552b7b252b85469f208d3624d303e14015bd27a68ecd1f18bd683e717a995f1cc466844bb6e8052c55bd956e9021650f8554d5af637c5d50c3757096d360fcb8af8d226df34311e9f616ac5191de1870d69c965a63218b1256206d984248b71d6d96478f611ca81f96a284caa5a54e849984f83e62f402f6bbe3fae1325f58b3248b766e189dc35182d1038993881895025e1154ae76c484a7fac4508b6762d9a21ee75348d57ee3d41226034179876dc10a4787106c2c8d397e2df9659e1863738c21d2ec086d5579316aa209e8f531bcac025f959bf3efb29c351c08a2d3791c0b59dc5868781d31aaf2b18ee32e503c24f34f275b0b6938a905ac0c0d410fc0c9ef0d8779953496929a1c5faebffb16a74ef483be3fa59360925eb1002f78f0177deccdc56b28d4a5af5c2ba3ff274635c48141394bf98e9b0709e1936cbc3c53ed0da6e66b823ca51d64be4a932c0071a0205bca6a0d4d7387300ed624752538ef520e5c3ea9123b7820e46d0936f8868620dacbec8fc8147db9da0820e4e32e0d13bc46e7a8a4dae73cd5f7dd98e98a91a71e69c63170646d9d5bfc8c1aeb8548513b048e3383b4c0b1e10444d20106fd7772df860d51c08fb6bf1391186d66486a5562f087a297c7dadaa806c0a5c13909a77c55ba9b70a85f44ce6774a2e1428dd6a139d340cb11a58d7da745e28265a8f81e304af2bd39377f415fedfc9caf82f7bb96b22a6cb2ad1fc30368acd33a576435e847300203d1115de9ec01d9ffadecc5b16768e92ff1feee9de5e261a802a5e92f528efa77f65d1413b034872ad0e4c1c2a5d5f22c796fdba82f86cf72de119eae38cd1a7f0fe5ba7a18ff4df9d361505501517d24759463ab2aae8d7631c0804aca9a29bf89e60c5680aa84e3113d0e8e09595ef9d4fea1bd1d3d4a03b51e4fa194fa0883d4b4c0a0ff46fe3dacfaf1a5fa03fc72695534e2012f7028fa5711b6cc3f0bac6ec58347649681bed0034596c6c5258370985df74cbc3167a566b9fc91d7e2dc742d9c338cb890f82dfdf337da6e231970178f5a5aab596b93ea66c2b9b313c5f00a9c2090c308465e0b9b34f975da1df07bd663ef9f7728ddfeb1139aea2ce61487786075fa8bca84e5594caa39c9dc310ff9468f24ff8670b8bc3ff01ee6c7fe8fc9d616e111a3d2b2bfcc0f143de64e9932ecaccc5b5593507c3480a40b0ed257426b9040845533042f0137b790f0d7f4e606c6e527728c28e2e97f921e5c61636f50e494df3887c114f0c37c1a4ef169573e3cf3d476d4e7fad4ecda8ab7d2852b6d1a1953160fb9ec60d319ee317a6d2e59f58b4a54c40a89d762c1d208c2d886c15e67b39124ca1c6679e402366124e305afe4bd2e3cfbef802100f2276e53e1fc41af73bc511336e6cd6b7616bb3244e7b4f858393428b6bd475336e6a8ed631f9ee6507fc6eb1efc19976e608e13743c2e6c700e7afaed19059046cde597461babde63f162aa9ca41476f53c2678380ed15e0fbea2a43aef2a281298cf96839db4fabc7cb403bb25613dd893106b61291c48a30e9855c748bdbf3d95d3444b2377d89d715d80bee06b002d63a30f8d9c95b2cfd6ae4eb67f85f2eb0f3aa728ecd431fe6fe75e140942e62839e198c5eb32ab2d5569498f6335f00134ae482155a41fe719aaf120cc47386f742e54fb89169e525e49c16599a1a01b3eb3c44af5fed67a2544020622a5f03b3063cc81036ffab92cde57761e0354f97fda9ebe9328808f219004c3a8b0bc89ef564dc34bd17f315838a3cc457a8dd73cf048b7e2837c81158ed05f85c29949029d1b4e0d5c0a5d7c4742807d5c2e9d3c94961c54e7132597cd2dd3fefab9bf2ef2763f3ddfb351adde16ef737724698c91927a246e0dba8c2c04955ae4c60c2f06787a0616fce24d599b4c36711d99fc7201ef060a7374325a766cca9bb5ae9f8bf56a50dbc7664464cc7af1e3f198105c13d10b605458b7ea55fcbc63afb94b38623fea68e97ba50ba9c81b0e531413bea5ce4291193c426792dfbadd526a2393705c8855a169ee809faadc0969126af2b224b87fd69e6d133ba0ac481dc5af5c5f6d4e7090bcf39243d592c418118db4f811e269c6e99bca9367133194f38f0faeb254cfb82f69143c079267c46ab46d32d5383e57a5d1f77353f5969c1713088df98a1564c54b4816232e9525e2ea63778671de741688d6255647db21eb0e8d8a98d8101400132f170807fa4bdc27db26a4c5ede0ec05db128a746e92901ac579b624abd84544eb72fe64689cb3e07e4764591d14b05fd6bb45288def4d8be225e9263c431def9e095f0eaeb3eb491e2706c4425c4e5d1ab4917d021fd7e6103e0f8a17e4fdd60c872002d2fc77c0087795a19ba91f5818da125d92586aa5856c464bd544b866355d6d4ba117ec6bce45c7d9c9ce79fbe82c4d210854f5e29489443854427c839cd620d92d5ac15631322722886c66b1bde4e1ee11fabdc77b22e9138f0d3e4ce453bb936bac9be8066e0dde2fa08c2ec4dd80aa7e9730dcd7c8121563c2e3bc83343e0376aea923d59042d391f26790cb681469f1c222b885f5e4dca8854fed0d29d2361cb01d9d506e3994ea159b937e5de4422f8dc2fa49efde5486bb3ab43f0e7dbe3d3ba36c0a70ae5db61c3d0fa7062d3e776ad2391022a10a2b139b6265ce8ab2a0012cb28a8c6130127d6cc18a356885792c13acd5cf4f1d6bc98d7a92ba10b5b6060931cc214da0e08d21b4efa862b1f67ba6b91594cba4f88799f68176ca8a7379638948ff2796b705272a218de56c3e9a6953e2050f40f5170a6736760cf6b4749f094ef73327ec984513c651240d391b520ff20804c67a3a634e5a98c19284d2550091969fc4bbfa450ff412c9adeb492483f2b07ab88ebb0c2e74d28b75b1d7295284400bebe4a429065fcb49a65f185757476f5a24beeaeda98dacd5ca0b7125f15cefe890401721d5f3864826b636cc402fa4ddcaa30d6ce4a5fdd55a55c0ed3ab2b5b4869ffd20d4de07e190a3451c242e16488a97dcd9f0dd7151798346efcb7e9d76a8917dce91a3841130f408a1eae9c2e5edcde49446db9918738170b88194608f6a6282f32c4f6bad81b521dcadebd1f1071cc587343f9f5ebeaefd69f675e5593e6b069cc350e840beee7e254ce0113600fcfcd8bf3c70e56d1529ebc484e425f8a87aada9edf598add9694ac4a0c6a621273e3b739d5277aa2fa91d70a2993a4eca97408f88ea72b1e2038f8ac4ccad85d44419932c9d7251938cb50ebd20eafd9368fcdeede7c2fc148f2df96689dc6b4c4054799279e9839187fc83f860718ac727ee79c810b11481ff032ee2917b0ec3a12239f5089b0024f94ac792b819041c26d1195e2ab3cdfe74ae62934c45237dbe7008740420c765a9c56e552882f27ffa72252f16df1bfced0937ee582fe1112ff3d9f0d3b400d62aa81d10970b53362685cfbca3e93ee2ec3ac7f13839ec81629112409998402228caf4a838c0d3b5993ac3c3de2a4e091b33d3da292b2a05ddd1a2f44d26aa6c15b912451d7ea2bc0eaac452fc2f690e297271c789173a4a5edd7b6992016ab1c6277dd9121bdbd39c7fcb70b3bf52f8878b2dff6e31d4d697aa85d9a31408fbd20516ace323a1ddead108d6cb28547e49ec7f63d7e15023385d1a337a21e0949952f8ed1d9d0ed35b1d0ad97f4d7c64922145c25fd4ea2bbc3fffe04f70a059fc3a38351ff1d5d6e7470521a277caffb683e3debfcd74a58251a9c75a9bcfa5f68f6b7297357fa37f7439414e26d52203a09df93067ba08aea469822bcd97271bef72b1bba8f654a0658b05e0d9c6c48442ce0c030edf5bac97714c8298c2d57f6a6eb8d0f172fec837b6308afded08859937ae59e2ffcf6d83370f9a4da563e9764deac2e776ccf7328c2dff0dcdf156499150b792281833262a6b19df9ce11a0f63cc5af22cd21a5fce319992f4981c1a1be5cada42c6b8af872916e14b5992207bead8c77052160bc24fc85c3854ff4e4317b0df188c889ab8df887db1350acf6c3a02dd6784ec85bca8350a59271e040864da803179b26160a979a8aac3593ac4a2f3d9e0f674b6b8b787d7bb747fb5c0bf61ec170eb87ed425d6def6bec085bf0f324ee9f3ed51f4e2260028f86608093759172f41ac2ed65747de56ca253cc5cec5f85575d56795ec314a4d5ef0548f0000",
+ "trusted_commitments": [
+ null,
+ {
+ "asset_id": "fa658e74d8c665ee644474c1200a8cd8158bc98cff9bda835b096577f6093e26",
+ "abf": "7b23c036889f4ecf1bf583492f7f861c65690b028ca19140f338372466b2f2d7",
+ "value": 19000000000,
+ "vbf": "e08c237939fddcfe8ffeff95e2d9ae8f1e3438ec70128d59d44ab92714c24aef",
+ "blinding_key": "02cb2aabfe04dfb88bce9537c75c8809c9a011e69f82a66b3465c430f329958109",
+ "asset_generator": "0a56d7864ed61df62f736af1ad6059ca45310d479cc9cfa5fabdc77c83bc020c94",
+ "value_commitment": "091ed0049aeef226cde2ab7a3404aac4502ad03dae843b3f0e77ef01d3c0e640b6"
+ },
+ {
+ "asset_id": "5ac9f65c0efcc4775e0baec4ec03abdde22473cd3cf33c0419ca290e0751b225",
+ "abf": "43f8aec100735ef0f3984f13ab617518e2cff12b34da11dabf1f766839dd36f5",
+ "value": 11000000000,
+ "vbf": "826a6d52189157d2b086c99a42fd5a208f9b9656adbdb509487a0081a441cd03",
+ "blinding_key": "036fa8dd4d081ca55bee4ad2e53101dee27f3a5c426a288b4d0e161bd8829a6074",
+ "asset_generator": "0abf8b7f9191012a82cf327c87629ac02b099ded94db91f34a78dca28d0102fb52",
+ "value_commitment": "090b3620874fcd00633f0855b1e9a5c9445894fb93c151c98e0247ba02d8141908"
+ },
+ {
+ "asset_id": "5ac9f65c0efcc4775e0baec4ec03abdde22473cd3cf33c0419ca290e0751b225",
+ "abf": "3558ae6fbe1c8a37929ee7c3a93336f9248fc4b7997aeecbbb81def28e4c2e74",
+ "value": 20999992110,
+ "vbf": "cb131c6fa055549e939a1003d1f9fef44a803faccaf1f4758a8b435646cae23f",
+ "blinding_key": "03b63ff58d7f5729225404baea78d68686c3151e782308f33badcbaf0fb2ca47e9",
+ "asset_generator": "0b094dea9db5551cc9d2390c728357345076b09574362714b2d7f3601d24c3e1c1",
+ "value_commitment": "08ce891794e8ceb81a169d00348aff3e35b7079faa0b2c9126df310d2cd8e1a41f"
+ },
+ null
+ ],
+ "change": [
+ null,
+ {
+ "is_change": true,
+ "path": [
+ 1,
+ 29
+ ],
+ "csv_blocks": 65535
+ },
+ {
+ "is_change": false,
+ "path": [
+ 1,
+ 28
+ ],
+ "csv_blocks": 65535
+ },
+ {
+ "is_change": true,
+ "path": [
+ 1,
+ 30
+ ],
+ "csv_blocks": 65535
+ },
+ null
+ ],
+ "inputs": [
+ null,
+ {
+ "is_witness": true,
+ "path": [
+ 1,
+ 3
+ ],
+ "value_commitment": "096eef754d78209d83b164a1ff9bccd97156fd19a77b1c79164e9cae1b072d09c2",
+ "script": "748c63210225213e4085a0ec71875f6d8807c91547db47fdef4ba9673e4aef84a512e3d041ad6703ffff00b275682102671fcb7787c6c7fe475b952d28b284706f68b418fbb04420b3e80398b7a6b259ac",
+ "sighash": 1,
+ "abf": "a092acde75b0d5691d0d7d9413e9ab6e61d0cbf353bbb03f5c3408fcdd23cf87",
+ "asset_id": "5ac9f65c0efcc4775e0baec4ec03abdde22473cd3cf33c0419ca290e0751b225",
+ "asset_generator": "0b1bd3cf0b4935f64586b7c324cebcb036cb4b8781b677651a9af8318c984b2576",
+ "vbf": "b94b446789b83f532f20b0c0e6deeb9ee1593eafbfb3c1dbb28f879368515a91",
+ "value": 21000000000,
+ "ae_host_commitment": "7618f7da8c94c9d71ea25a806ea829bdf1a01d380a56dfcd6a7b5383ff08dbbc",
+ "ae_host_entropy": "a440c3773fa808815fb638c247ed582325a266fce7504ae7678a714254747cfb"
+ },
+ {
+ "is_witness": true,
+ "path": [
+ 1,
+ 4
+ ],
+ "value_commitment": "082b235a0ccd9c92a0f20cdae1cf0bf3cdb54e6477035955e78d9870c34d30f59a",
+ "script": "748c6321031baf375bda184d6badf47b5c24967fe732ea24b5309e854dfb17374bbed9240aad6703ffff00b275682103c64dab4eec709646f366f5c38dc9643ce85fae86396d85d2645969eb8356cbc1ac",
+ "sighash": 1,
+ "abf": "04e5bac07ee115473f88a800db81cfc47b3ccf021ec73f9c3da9113607d7bf80",
+ "asset_id": "fa658e74d8c665ee644474c1200a8cd8158bc98cff9bda835b096577f6093e26",
+ "asset_generator": "0abdc78c3357beebbc83d707113a8116e9ae6041ba16153cc242871ce59d92c945",
+ "vbf": "cbb09c227bf6b86afceaeb4c2a453315ff9542dc347d078b7d04e2ffc1f5436d",
+ "value": 20000000000,
+ "ae_host_commitment": "a78e073082828fde80d427a8b5acf3b3ebe028d2625a0af0fefe987270f65796",
+ "ae_host_entropy": "edaa5550808bf69e6ff9f56719b26b926744139087b8d733da0a4b2335e456ed"
+ }
+ ],
+ "additional_info": {
+ "tx_type": "swap",
+ "wallet_input_summary": [
+ {
+ "asset_id": "5ac9f65c0efcc4775e0baec4ec03abdde22473cd3cf33c0419ca290e0751b225",
+ "satoshi": 7890
+ }
+ ],
+ "wallet_output_summary": [
+ {
+ "asset_id": "5ac9f65c0efcc4775e0baec4ec03abdde22473cd3cf33c0419ca290e0751b225",
+ "satoshi": 11000000000
+ }
+ ]
+ }
+ },
+ "expected_error": "Failed to validate input/output summary information"
+}
Why this scored 12/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.