欧科云链logo
登录
Ethereum logo

Ethereum 浏览器

Blob 详情

Blob 版本哈希:
0x01ac22a3102123f27ca8a644001a5192f57517ff2262048542f7c7e85c55297a

概览

  • 承诺:
    0xa1a0f6eaac0602975502ded57d8088fac806ea9a4fbe253eb90de6e0e4fd00aca6a343c5e41f168da6a3def11ce996e1
  • 证明:
    0xb1363b75e3739bd06c735f58bc9969d961f66c18d8773dfca56e3628d556bb8fc68b5f315767ec7633f8fc928dbbbf68
  • 大小:
    128
    KiB
  • 交易哈希:
    0x7479fd5756ed4dde538e49256ed928b427b549d6bdd630c3d5551b82cd844b14
  • 交易区块:
    22446997
  • 存储:
  • 数据:
    0x11000092df789cecfd075414c9fe368ecf0c39074992330892830441725492921982249124492439cc8c8020080292a105899224497600412467507246b2c4212affc8ee5dbdffdf2adef5eefbbe67bfdf3a87deb3a7a6fa793ecfa79eaeaaee3c761f4cf31ae500e3ee45106ad082e0e00020ea0a3d9322360f6ee1d1f36cd73b1195c0b7e76e30bd80226e72c5ebc031a8fa006e35f5e9b11bf57a81f549a82776f0508a4b6997dbb52ed0c2f03d63a1eae4f4c0ad3b764083f4eb736ee2e62665f8fc64c5040ee26d972f9dcd97cf0f899e80af967b4050ae70c8230358b80e8250fa3df2041a3630f403642418d0ad688dbb3b6f6777b18c45b9d76b8fbe1fc1bfe41a7e7f4365d4944e26c5a2dc27806052d9fddee5ed85a139aa6cb10603bde26a324a61716c137b464f062d7c1d659403ecfcf24f87e92aa9186b204318c40f3f38c7761529d0f6310c050159b23fbd1aac47333e340628cf0950b33713e751117a354be0a225ef78e4ef3274457df4f6b62c121773cc4539c0b8e87f3512ae17d8b2912071e64ad7bd99538f2fd9b2711feaf571eead8b8de8f9dca12b1d13754ac09a5bfca539aa46624c3601cbe285e13d0c6e95e0a9a978c746d11b6f1215536c510eb0731f7e3a3ac63073ecd2251a1c64e25b5bca7872076ae8275539910d7f3d8ed25a2803710aa010f37e5d33c9624635b8c4d35b442c2439336f72e2b6de28b3bd8e71d59022df1d94034ccae3a7a3e3d7ac7845ffb285ee10ef6ad1f662e0b3f377b9315a3687513815e9b0a9646d4ce0ee157a5277394534ff38bf68ebb36adbac26169f5543cf2a45d6869ed2dacb5b5ffb0c630482a03701144138570485ed59ffa8cf408160df0cd92edd5bbd254fd3a99642e95fbb332d324c6ddad68b084ed448553ca16e017410af835fd90761be7c7688ef67742542f25e496e78d2347ecb729d28d133fded6f709ffc07b841ab2c3b1f3465de2c4a08c166fb0dd1d0743322ce9f2f7ea4bf23687eeee85e1f40f37aaf34e29c1df3dbb82028eea50f87b881f99a9262374b44e71ff5ae620fee7e831bf9d3b83a6080097becb8a0937655e9da36191d56daaa8661e453deedcbd72e501912733276b502223ab2b7312e09815b542d28395465e35a2aac77b4f919e7b075747537a58831bfc18dfa0f70a5d90e82d619bb4b9e355365094c90970e6f0b1f1c912a3e9e13a656ea15ba2a07883fc2658fe1ae95026d9b8ea3dec906705038c49c24e3db719d8ecd3c50288be7f806f7e17fa0739345e4913888927f6a1aa371441e22094e9123ad383e2fabf12643be1817c316f0dc8ca93e104d78b173bd00fa2b942152d8e4ea220d0fb1dcf81a11633f782cf21bdce0ff20defd260942c8050585191bc20750d3b9d7056fd5eac2f4fca7b58aba6e80d7ee3e0124a016e15e374a761f1ab0a776038deb5014a96047ea9bab1456133531d6b3da39e5772128202fb87030d8034110e80c2008cb93805303762247cb4c8f8d9ce86ef7b7782b2996b84233023383293c00fdae6481c6675e06e086a5ee9bc144fa108350e52c2f5734425d5a9e68c237409aad46e8eb5935116edf0083ae2208a0a9ce08c297189dcea7025f4ee1708f6e28e3b130f2d0537d34fe3907dafb48e9c5851588d821641311f9100011c0778fcc18ff94db2f65abdfeb44f81136fb8ceaee58720d0edfdb2cf2d2dd3f806184e710041b61d093c329170f2414c827f727dc25a96227bacc167af35359c470cc4336df854f214e72b95277ef736f024a412bed9cbd0002c322bb380f5c8685410445588f4a44d5f41fb11746295088547d03ccf59f0e6bdc11adf07920f8d4a0f53308366d818bdeec1cbb4da29b378dc217e818972c03ec07adfae51f6a8f7d322639833d7334b9d6a5788ee43a519c395fd847ba39adc96f80b9ff13e0790edb1bd7ebfb4aafb7bee2ecae8ebbe2404f32ccd84c2eb877bf7ae9a9a90ef613e04af2ea50a47a95502a61e450b986aa4377bd6b9114561c89fb5d1f623a7e1ffc6f80cfff27c0894bf74b2ec60bbdd833ad353e0e238c35fe20d4faec6248dfca26111d62be8106d0610aac181e5e918aa5d1b19e0321228c9ea4b20caf719482101ac6114617db7f03ccf3f3c06020a54c2814fb2899b9292b19cc43c1b8985e986b7b548ba0fb2dfe7ddd20d084fc32a0a8d33a2ed2752142ee06ad6957f8ac0216078d6d1114f638fafcdd06a22dfdb3df00f32527c09f3be36029005d43f396547c2dc824df33f8bed025b4999ed2276d21043f9aa50089042be3e62db7231c944c1afb1b7e94524d6540efe616e1f8edab5a0758b4044e2807581cfbc985030e3edf7cdaa84b43b637dbd14dfd2c29f12c4f2cb87479d49007cf62f415841cdad5029e50980f603d3d1077d7523ac8d5c8d12976e0661f9708a3b7e579c5f27301e503bd076ef92807586ce8ef709c13a7c1383b26848de6f492902a27b3902fd214600d1ab82e872b1edf6b5e8d089a17ba3b0cf028b00a857ca22ee9b6f9f8c4916e7b40bcb3a8d9884f5b0ebf2b25d2b63a5e1eca0116dff73b1c7fe16970a36727558d0ea566562a43b9e228a8867a5619022b8b459f2e85730db44da25301240f585d1d7704d29baee7975f1002a22726db28a5f5b248230e059eeda409de4239c09efe0b8e89f8b4394599c195656b0ab8ecdbe7ae49678692f39732590859df9796361d8e518e052726190267e44822df0f847b27447d9aca7673b35720343f36ecc5abca29e42bc141cf9d4539c028eb7f873b2b735a748a0921ebb6af2384fa57272e59308fb2d74fbeddb24494231579ab149cedde9c04f0cf457be00999d31d6d3eb7ced75f827425645fcf900b52cb1763f6bbbb8e187d827280150cff0e47c7795a741f0e7916bb1f0891af27e574073bf5a11a9867a6c0836e3daae683b85d36269900b722ad260b28b23106f378cb9f66ee9a73f2bdfc87dd1956ddf6dd7ee8bdb57e2807589ad0ef70e40ba74527dd33cdb16627859c530fb0661ab70e383cd36ff2e0699b2576f8c3cf136fe88860803584dba9316e9664a235a59e8ef3519a82b3d226754df27d555d3757defbcd515f8cc0f63b1c2bea34b803cd1e7a8cb7f006a9660fda00511dc516bbc4fa4487d41437479ec4ea2e537500766844ce5d73de8862d673d1286eea2850cc1e656f2e736e3e36fadb2fc297ccbec0b1fc0e271c7b1adcce7d03dd8a3ec24754b9ec6c0761aa37aad66ff7a544bc40736b7c424228645562015c4e1216c5b1dc6e79a180c1d5ed930a86b51ac1ca188ec451b467a356197aa513ca1e34af1041608802c17c8a4f438bac96eb1aaefd881f3acf3eb3b56f96a18353fe2788dbf2f9b1e9b142e1ab6e1840c76fd1d0e8dd2f8680b2ecd27d3c5786dfd329f438b1f84c3bff3c535f75cebc3dca1ed63882c05baa3f1dad1770624f3bfb0d584c57f1798180f20612397b70a7a4d59fea6dc36083af098af911c0ef51701198704f97eaca33cd3614695cfd8edea5773c2ebb45818aa951bc96cb287b5813c8cfa2f156ea0d4142820df91fe8d20929434bf2bce0376f84b5101577df7109b3614588023c1ac3cbd7b62970f839595756e95974a5e75d57d88f302273990ff2fd6818de7d896df467d1fa370deea7a97e8e0cb3bb73ddb352fa3503f62a331bc8f11affeca27d9cc6e12b807ca3ab0c57d82ffe26080bdb3204ade21e703473791d56eccbb9fdd08e4b9c1c287b98d04f2ad90728bad88f26772e5c7afc20dc7ff4ccfbce0b8621843910907d7f638a59764d6d950fa0938575147b236b31155b2e38afe628e98ebc6619e84e684507b1798790ab52fa1e640d86e188c02e9d41c2f1454051e870fcc3951897f2dcca5dfb43af9bb843e72354a01510443053ad21d08f0be329f5e05f6b0f9ef97f8083827b47c1dc2f7200befd1fff94266526dbd515bc599805edbb881cb1718773f63f6a4c6f2adffadd4a92867b1701a03f04b7a53f67750a3f39ac211176577c3731f450dde787780f08b95e38e118f0cad3a9a2acd5ee8afb37d591beb938ebb149deffb20c8457be7bc0b3c749189869c9312229ec4157fe52815af51484bf584e7afced1037e223a59ba0f1443740cb5f5ccd37dbe88c7692afff7e02af3337a107440570039799acb670b9ab00d23645f7e811fb7693f3a5c4f3afb83d651c6e06cfce7f5d3e8d3720b07bae094e0e3027a2a8a81eebc1ddf56b30987c22bec5536ef4e021076a28c249350d2884022d6384509e29eec8bbc298b1d7865c6dcfdc3c73b68ec3732b4a26c9fe1b41c93d1b00fd2589e5076174384aa6f8532f1a7bbeea32cb5e06ba5c07466c093a6b72f3fdafb8eb1b08ec6805d0c9e10b2e64413f7defd255ea5cee3c3d122b7ff2ebd51ba27fe026f9de6b4412ef9274e5aa5217bee431200bd332b14d2724d0bf962826700f5b05a077c89e281a591e8d92ba31eea917fbce987527d10c2b6b5f45b5da1f8dcd4611f61577b308811d00469e1cbee00ef39206e6bc8b510d0ab6de7f9dd02adcb87997f40f5ca3de1b8cbb5386b1b6d73a03afcd5d14460ab9e5ee5368646e0437e0efaeacf801faafeec0fa96686216e79ef92124b20d0470abf9d901ba4c0bbd0f248efd47df2c53c7a211d80692a093c3a9b8d2de990c4a7ef9335bb292abe654fb2c81669470ff2bec6d78e01aea79cd79dc9b807235eed007a2e3c4cf117840b4a78f33ba9cff0898ab24bb659e37268d9c28f49b2e2297f3bf031708eddcab557695ec7d515a5871b7ac527aa88bfe0f6043fdcc3dba79b22b24bd25c5eead902e9b02744bee9cac99721f32b76b49ae7d806383033d9e3cba3efc194b3ee79c68faeefd14063780cf4d6859efcc95bdb4d7ec5f0176b5fe0637522e0a9428b82ee5b8a8e9903d7a29ecedc80398dac41c14113327ad840403d634e58f016bacb3110e75013cacafe96fbc972b47aa4a53d56b463426adaa4d0302cc665497e3468a3b82580ae2d657765d87aec62a5f24c4a67b1ce911ffbe2779ed9b80298411d82a28e4c9e1941e0d062e333331446233a5112e81a8c6b68fdf00dfd90acb344b1a6894b3b2237bdeb90c705c828bd9d97b490492d57b119c50ee71a9ccca4abeaa41219af2014ff9b9b983af01cfad21b0690d4127872fb8fef87299670c46e809db04fdafe7bdc737b03ba2fd033790c38011cb863077552e4042d2ef95df6678294eba786f43783147762d5b65ff2e20ce20ac27af2b5fb4b438afb2a30f4ac711dcc2b264eb5806633205384e465ef8260f8834021b6f0d7972f802cceddbb23873b7b84a3d58025d94e4332654d329e506e0de08c47e33cb7de7a5ed411f84bf6bc18273dd8cd4f1a572dca82a9cdac73cef6c0081e8382a12c1cbe126b11d34cf2cb7fb1e51ecbfbf912147a730e1cf1e1fcbdde46bc00a0804c6f6240881e927be00bbbafbe3356a73716cec21cff00d3329400ec63a6ab864f44e3932a726e07cdd24a8c8b92e0a10ac22db892f0233ab3c477833e59abbdd426bde156a6a3ae868bd75f50c5774d0575c9adf71b13849c61460baeb3f5e29ca63e15329d717cd0978088c713c1042d3ede635e8df13ab8e691e76e1fdd6202e608bc72b31fac8307cdfc0706be345f8accf7e6b5e0b6aa598eed525959661fbe4afb8b41bff092e01bfdbbd1d6770856ff4c6b1f936fcc9456e1995e6a05bedda4f3535958eaf016c0ea2a8582e776bcf54bfd86530e4eac5fe98c9012c2e3904bfdfe64db883f67b5407ac98028171ece3f4fde517b9e5a1e8a4f12923c6a9d301a79f1972f43e70ccf1a0184c48a01e422590b635bc8a331ed7299687bc47d56505ee2ebc0498b23dd33cedfd62503366fb0ff003a7d7d66aca7c8855d6d72ecedc72e8a4f440d9c3e84bbe0868f913533a358a26f6dbb74c201a65943ec6beeece08cba1dbc7c47db193b24a0c2ba8019f4de03153a75403c9cc77b91674cc468d9fdef74b08a5ecee328d84118b53811c8e8e05a130f2f727e982839986a2fe6cd8863ee7a5f6bdf2bda031ebb997dc93a0bf059f2c5d695b925bb798f7647d7896ca63da37e9bea36c976766de2b953ceb7a3ed047400214b2627867f0e16c1a0b63cc61e82d523e57f840d525791d8c61722c579f11287b586fdd091dd855e6d366cfd1c16718ce715222a82a63d7c716ae38e122d55be245caf4a5a3d65db73422f1004b6c83bcd216e3751340fc86ea8e087a61bdc11300359db9f2f216dd4381f9bb287bd8a8cdcfa1f5019747cd665404cf3cbc9be00b0c273c3542a54eb1cdd05be3b835733dd64b52c08e0074dd1e1b39ef40fade314775583c14568b7993d2dcdebf597c7f23ee33168d1908650f1c93fd59348ac02532b6fb400ceda0cd45e4d6bd6a8c00ffd762a89ce7d296e72a7d4b3621801bf50b97715930811c17feddada2336a4995457572f805e7b2d2311fbaf7390b27a1ec61afbb7e164dc46e07dc1a70b85f01d1ddf081bf48c27107fbf0e6495911ad13bb7d110b031cb8ac7a7ff592dc154c0b574bacd8f87d993582c5d7551814334548cdfcd0734869500e70082ed1cf26ae6ccba3ef6803cb213c7986ed504e696dfacdde3b03fdd1543a945a1f4584382670adb3ac2724e927f0dd4ad29ea6cd910eb2a5278f8d3f8dad874bdd485ce945f355943d6cb8e61883cbe3205aab5b25ca1f614b228fa3aa47ab55b57ab3dc08bb9c325a49fc8413e32dc047a21b9295f45eeb3e6540cec7296ccef042b22ea7b690cb53e30c8b1add09a3e54f21a8c8932bdbf40504ba91f3c4c901161afc17ec8226c69c3b5108dbf11409067016058635d7942df27156451f47ef2c4d0d27bae0ba88694ecc3799b5bb877400e09a83f71f07353ca52dd95d95c2152da86aa0db2ecb47d7582e132246eeeb66a2dc605b120834582d23eca5c39f7209821483caf9bb644088206982c213355a55baae588f180c9f39e72bd2c36cda38da1fd018a9840c86e3192662927e12150474911f9e99269155474cb08fe785e01545d2893cfa14430f34e801fa8135b458543ecc55e004158e6e951a0595301fe2cee390af15a9bdde1606b475c0907ad07205387e55cdb771478e278064f6fa4395e6dde5a8c49b5a130958c8bea7113a5dfbe3d9cf68fe277d652feb6de5fa2109be80ec554c0af729b36b43e7cc478c9f9eedae107d8c6e6b052c00d75ad73ad0ee49b4b717b0602e3087c47693bd6f5fa6f6a59d31b13f3c7bbd386b0fcf09c69ef93b6131e6281fe80b72fda879cac4e4a9691888f11c769db73c7a051e7a059b03e7291778b30457e3207f5c8f7b4afb5f5d70624f6b69c8ea7e39095af997233a0168012bb80f1f501f24e7edde549f2ee12deec29dca118bbf3bc6cb6e6b217b212592545e060c7d1b34f879ceae79d7fe3a9d76fbd15b4fb29e3b6d155e25ad6c580fc19021c3d4235a13e2dc4582fad2678b6af79c473e77d9ae098a7db8b17d5e47e099216100c44c0242053e075de44f6a6b988b96bbdfec30a25a7ed0466f363ce8933f09462b27abbeb6fd62f85abc8240ee5d57d3c6565e814e3b2d1fe3c9e6f0790c8eb4f4db5eca25b60964292091721eb2c98e5a323f121473b46bcac320f186168c731f41e893b7bda50dcb6a4d1d5e92098898157a5261251cf3535d50617c16ad8a5ae28ed45adc6669315d01a7fa85938ca8bf8c3b7aecc430b97ecbe70d0efaa23a863b273618739ef5782f267e4ef351235bb94a6265f7947722e57cde2ffa95c055ae0f2d48289e40fc94cf3a0d7b7557735c02c3b685d70b7bbf2d57092aedd43e875c7b483d08fb18847474deabdd2e12d3f020fd54c01087c6141d00ddb91a433721d02b584c0bae7a7b79f990da385c3b2fe059a5963cbcede2e81590e17a1951e9bda596c3a540108e810237d40d3b57a6e7ce3493e98528f59a13e6c662fb8ba3f726f7fa5b53452438a9904e0b859fee69c54819895991f7ce23236ca8d694ee50f9c56fa5764dc78170cd83f70fa4a8faeceedd385cb8a4dd2e3cf04ec0e59995c57ea3968780dc3291b821223a10b67241e4acd8348173ec2fa470f3c043da78e9031169f071cdb5375ef920fcfd7e2ea6c753ec2fc716280bd2bc23533254430d123e128733f335bbe0d04333afa92c54b07193505108cf142faa53a94cccafb3f5805dd7850569b2b462d5ba4104c685ac4c4f49f6f1eb1bf9af3169758d60651b49a671d06874d7ab58a0eb337fb80ebee5ebb271df9033c9e1a571ae37b78f82669ac3ab9a27d4e30f8759565eddb204110efbb035b7226eb63538a578bc229caa79525be3cddfe9a8079b914762f80299386fd9add31cfcad0b9aa53c6e53040ebe5c2ad0c039aa67fec8ed33647fe9752b98b845c90a70cf335365182f651fbbd41bc296cae595c6ed0f959c8c4847373653b5c9dd12b193e0370d7c4394164f4ce8fff8111fcfebe928773d745a0ea3e681cccf60074afc9187d05e394187873c938eb4931a75fed4c210c7623e79bfb8fa9422f809167459555121e3128a2c51490cb858aa06abbe3f72404ae07c599db01c852f00c896fe1ce589e9a827c1fb2bb906dad3dc092ca57bb2d48fb873d5f2a5fb4633bdfde9ba33799fe7dcf9f223accef6ab60595d7dbd9326f8a3ea4f40200e623e8c44e3e796232c5125fb65efcc5cb499a32f93a1837441439e151e56d6591e2e72f4092471e719cea7ca871afb22685f2af387d10c54c57d39077a70d66ff71ec06e56c7c7c728d06fb76b287fff2fc5c96f121e3ff8ed375db6f8d3ef72e8311630acdaea8f1aaa6a2d9a72037079b43edd5450e29c0447532f9517ebf1963c113f7c3b28cf22c75427dbd97d0713b3089d2374ee4cc76d72370236ff31b81d72b18cb9f181e49cf058c398858ea9122022d966fc920f999ef751ff36ce6d3e1be485b1911a9f1709ee9926c47cac3cc4789447d1b1d6f2360a3e9da5c636099b28a3e3eb1fcbbfd27e73dd3c66629c687cedea230e5d23316fcfb0b294700a1a65ecc39927cd22c3f8fbf870d28b8201e9373eefdf4493f0f02a3f53275624281e527384959e3fce572976363d7a8e5fc9486a2937d98965f9c3e8bc8ee00225b742459b9fa7de9d80d0391a879c22902ee8d85c953a928474f4538dbf720d3b8de519f7dd1403365207eb6bd04025e123dc0e100824c22308df3eb9361f23587f474791868ac4932b37ce525101be301ea594d7245504ab3d4ea7dd27893afc8d453534da64e344141b6b13c4730b07b3efdf9ebb75d69f33ad64784fe833210fdba2988257aafce7f003de404b0e6595ebdbae764df4bee7863fbed57326519bb3cacdeaaae7b57aaf07c662631f23c075d42e28b0e9a1ba878a4a53b9173dede8d21f411dda19455fe9e91f56122cebf184cf047b3059b395eed6c4812a7bd8b2c788892f2939438568565a5a5e8047b718df2454519c439d533745bf06b4b28f72e673e82feab8083036d1beb97787f38c12ede4d5876a4f3390784c2f2bf8871cb1dd7bd91fdfa97dd10663bb5febb7bee637f4bdfe88b1ddaff3db142e5ec6bf51699dbf963a51b5b5971dea34e28fb57adbb365906b3a0346abee2b7c8f96f635ffa5c0d018ae9b3de035ab75f167a842a20873c7eaf16c0add25013382553fb29776bb1e261299c7f309f5c9af862e035dbacd1c2c6fb2131a0f2484e5c6bc04b90b15efb2f14f507016ef298e56c214484777eedc11a8d811840b2c9fcb3eff51093bf2821aef2dee87c1a9fd7b6be884b88f812e8c889cc9be2f37c24ca19b527f838edc0f2b461e8fa7083bc71b13df56e62312afb2cfee400b3cbacf1b431134352bf99b4673eebf6964f3f6fb3ab6e7fef69bab5df831511d189bf8ef9e18d80bec9da57278f66471abc5e079e4f3828497651d854961c10edc56e141ddbd23afd78d5c6eb548917e76eb13aa1c7223e94399aa1cb2527e04b85331e73613bb5de5ec49db5a14bf67a595f9d0cf44bf5d1197ded39d7cce1c0495b3b8d1ac0c4f202164f5dcc53090e67e36839c4e2bf33375dfc4bee2c039e296231583969b6d3fbcd236c4bdd446d049d17ad689463b4e5d61c136dac6165b375f38c504c3ae7539f112b1135f08436b002ec54588419bc0cad548cfbb2369da778c3183424656f158fa8c5d2c087af52c24a8ea123c4155accb827faa312f14f4d3aeaca75d314e73c2cf64f847fc7e54694bcfdefe77d79fac101eac24a8e7b531cb881895a1e1da453b0da8b66946e13ec4e83666c88d025a7dcf00181fd7b77426d2e7e8d52cc69a7dcff196ec2685c8b93bbfbffd82609e9ff67c21055816b207963a5931819d1168f7f1bb4e0e70b06978544e1213db7e20fbc80726b1b7dd66de13bf83e6d2a029d1664a035c4550f91bd97252ee53549239a534fec7cf34feff66d95c71d326c986f4d98ee305d7c33e5bd5fa8b7cfe61167e074bff57144828607257661f245f74e11d65bd6de9356d32b6827489c207c1bc10c6438cf2e7f150009af68d634c85c6350ae72e1095755dd37dc6f7376729ca18f5676b1ba8afcf7696df83a03c4e143c76434068e3102707d80e5554ee9b4f25922f97b44dbdc249b00a3fa4213b7ae5d60315d3abd6796440502418e8d651135a2c57945c788514c54701d47a199445014e51dd83823c26d3029b7580ab460febe7e48ee4870e45050eaf4cbcddc38b4995f35fcdec9a6065e49aa0f0f7c02d61263710100a42241c6df3ce779ef28159ffdb4fb74a48155f65111709a73c05350951f23dbecc4bfef8e0c7cd2106a7d42bfca8d6969e9bff147edcdf79ba3db37656ff4ca79ad96dd52e3f1d42e63acfb84cd13f3dc1c9125653b0e14971109dfc0fd76e73a7ef14828a43cf5154c49bbd1df83081471730f714507ef9822fceeaf2c1da20f4007f6309135d6dc953c96ce9dee4194cc1a6c714012719313cfd1f91914ba7f0fb6f64a40fc89e0f9dea2326fe8497272bfb7adaeb19f7db2d64a7825df7e479ba4b39e9592600f8de8131cd044bd7da4732325a7c6e44693bc00635359ecf1df357a2e39ad9b3271931fb1f9111cd53f8fd7732f292f9d51f2a6e6bdb665fde964e799aab6988203e677b96071c117d5d656fa23301752124eb0b7e47738dda1161197bc6462caa23d1612f02cd29f9388b2327189437be16c4e200017ed70085a3d559fc1fcb0829636be20c7ae1ce1256a2a5157af00b1032c0f4c7cd4fcd88e28f6a6de9b9554ee1c7fda7d283b7fe34517f564eae5a10dc8b385c6ceb2bfc967441a52e43251a37418cdb505736479894ea11b65c1706a03723aa6d1a9930e5377f2d3421bfd1b1ef39748fd8ded41d3f230a930d1612fdf5b6294bd2495e4e0eb044e6bf70db94b8fa4236ef73e497a155da2cd3b42592daba6b3366fafa60990a4b927b2505e5fdd6fbf45bcc9a4fb42000ce6c0e2d73dc7c6e3583d2ea2c0d8d4e32cdcd20be5113fd21430a4f5b8bbb0e5f7a8a3f8f02029c708884a34d3dfb3fd653c2b2a4591fee0cd7575a942daf4163db5f0a203a3ea57df329f5753faab4a5e7d638a5fd7f677c4395e0b5392b141adfaf22b347e6821e467b570c960e92e1988bf4ba313d5c6d03a05f62f3abcf473e6037e434138f0dbf289f1b158215e44e1b6be79096d5e3617a9211c5ff111939ed0d21e47f27239fc6169aea3118b5ebaf3c0bfec0daf21e3ded4a044d9a35a1182133f7a27b3c1470dd960d397a82af65f79a572e37d9776d9cfe517bb8facc002be4ecbeb9ddb1e0494694fe4764e4d629edff3be35bd16b231da33dd54d81da38781a95b957cc5d293129b517b5bd5b7aa8aef7eff8038a0560db820186b5033f8d0f0fcfb64c2179c1b69b11c364f3d982820f9c6a2089e5e51054e9c9d554291d01c6a35e4080d35edac231635dff8e47305837d1c608f2caee21a1c06ce41367ea69778964d9d01983c47b8aa5bae7860615d6334aca20ef060d212b009e070d8c920ebfe49314492b36dbb533a6e926c5b15e874e592c46a367521f09952d2321a89a13e61a700418ef0c15029c961d0bc72243fc29f320acc0c40a43760650b9c246c551f95f8ee0f7b320c1c05c8564e8473413ab9aa945f4fdc60501358d757eb41b0319a575f2c664398a240055731249580afcf3d3ee0ce423cac220fd67e4933d2df7834472d00e2b4cf8e3be4670c30101c623e24780d3d20b7f191041fef5866164f3af46f0fb59906020079b449ac74cdf7d7743bfde7938783499213a9fefd1f3416ea2d83768eacd84809374ad9deb4ab60083134dea51e03565aa97f92c45a1c838cebc622caade98e3afbde7da8b6f22f8bb7acf7db2b60caf5d49241878403e52debf1e546773ac9e112046169e3ea1782640c3633fe42783b884868d5837c077bfe43d8e0b85b0d9d63edbf5955e87babda4e77264ef3797b372311c5a5ce3bf6a2fdc8300e3e1a920c069cf9a7fa0bd019cdfd49ff135b5fffd2c483000fed4196ee7d58f4cbec8c1e0fb397053caeaadb4cfa21bf725f68e3e7be6900ec069e843e6d025c1ea12771ea6ec258b0f23095119b09b78200a8e3c6c973e1139757cd5fe4609028c19368400a7b019fc6ddaf3115cfcfc1b71090905cc5f9d63eb457ce2cf638c164a317308398bfb5af9b11a5b8ee0310ed9da2abb2ec0d02168bb98ee05d58d145adf9c36f8d668a48c5ca77b8868862f93d5e49811f157e686a608303a048a0027c681fe2ee69889fb4b3942bb2c482830b054c65e7c1e42d6185b5f77d60a04762a6f29abdfdff4d776b945ede94633a40d106adcd82996cd96b1eb58a4cfcf9df3ede97423a41ab0b472a834cb09235b88f9cadcc40001461b76468013efacff6dcc8baf740f209931915000b965259fa73fb4cfb224824d6aba974b8ba5d9019dd6418a13ae538cd84436017a823b2d77d53d6ce1feaf85e531d2a1db4c56afa2891e8fc1104624991f9d15e15f3bbbfe7d0418adc40c014e549bf87e7fc7ccef78e8a917f48bfdfd5f67414281050d591fbdf3ef0a8dc73de44c3165f579e098b6c5a9d3c314e5ad165886ead603041d52dcad0c22b1177d46b8da7933daefac3212250771e0f68d905d75a824312efd3aef171e40807d3d654e0eb006adbf30ef5778b9da44c107fae2c3a3ae3b6dcc82de558f2b97cc19dad3752b50056747b1afbf7033a3a7c725c94801a432069a22f57b06cf6eb00c56884e040fe4912f2175705478f434333965b4e2bf3682d0ff2a2fd267e34fb99da15f78bd7dda6273c4b0cf74b45a3491fc9ab6a614112db0174bbe5da962a277b56d87660790e357e656a90853fb781d0f7cdb75302a520f2fc6b35e64d993a8b069e148e566055a05640fedb7de4a9f04cf59ce00806fb39c8783d327a20a49b1b13c0549db7cedd5055353efaf719d7d290fad145378077517ff1eb7dfcb29b74121a7dc4685204fdd8ef0c302fe765ea763972636a1e85a4b446f4ca9b4d3841503029f0f8480c01034740c4c2cecbf0670da170a9c1f55a23ff485fc6ffd0f0b5a48fd5a4cf52583cc97a9f46ed0875b66b724416e58d9e4172f651973060f0d56e0ef6f5daef7e4bf11e8e95049d6f00c7f0bfee8f695ecb4a55215cb1443de0975dad1ae3ddaed4b48c64cc6826711fe860741a01dc2ebac9be897b78642f21c82624fc3e764ac5c699541bbd71e22deee135487e08c92abe6bd77c17c0c78d1aafab98a8b24a1ef5889a78e2b6c4d600312a1e1b25a7dbf0e5b502fbbdeb1b629ef52ac99bc6cbd3626c64cfe8d8360621247ac9803a1f7da628d7df714ca8931a833df1820c140882b7ea1fa344ffcca2a19914bfdc936a217abc71e83f56acad87d07fcde340778001c03b8009948bf2b9c9573c935e739b3b1accfbb6f2a0d4cd198b7f39f7c184594974250455f9c32169e398444806f50f6c2219349517fb66680962b646324567d1b6378898364278f518bfc623ee673cd71ef3c6cfb961f8aa27d4d0b09051aba833e93f0476435697af7de28c6dfc1a9aa3de0b5fefc916dbf0633b2a7c5500a2048dc4f0fde1b14896b0970771f7e2889ffba4f9492fb45d9525095769672de58790c0415f52ea66874697802d56504b84df1321c9ce5f517ae859080850352fff02f63079b1db3548d50c4ec4dd47309c488a306538192f495414cc5d1a0eb6ff50bbaf38132ab40bbc45e5ff858c583cb20f5e27571f4354015572cbfc05a9b3ed4b7d7b72edc0f82f23eb9122e36c0e3772710e036d6093858ddf73bdbdbb41959b665cc3bdbde8604030510915bd69ea805245ea454f55d1ca3b24d89a68500b28fd6d407571c9b1f6e031484e06ad03d8665fcbb4cfecb2948d9f08d8fe1e8a5ede7043fa2f07967ddccdf568063207be0935142191e04353979ea0287b46aff1f5b010d63bc8d96ef5ea4101646b7460b578bb0ac35f1f96e4b1c6849e2b35ccf1f9e15f082c98faa7fe69ec4775ee6f9e9fb8948304069a7b9fbfaf9c38451f74a761d321d3764a874cb7653bb42c51d2185a3034d3280aacc58eb356e63398a7c673f455f4a81651d117c59bf714b76e2ded30f751f656f558063217be0934eebef3f4d6a96d9ff8fa54618a30945854c516381f5c55674a56c4ccfe7a5ffb0b50b10f79f65e2ee8e33e9c476fda8b92d3df70f53f7839b137f9ab13f2b482870613da2dba0c5a43a7c5b28f6d2a52909d6b7b2a3fdd35e902666c9a63bbce398800244b7b809b186a29adf32fb0dc76162bfe5992a664e258faccbd17e75982d8f2450eeb08f8e08309146251c8ccbfae74e456b88bfe4e530f1c746d45ee0dab3294a2f2ccff6032e3a5eecf7afee37a72b48239d52d82f7f587da9b8345b07dc31ea9494d61d22fbfc1a5f39e3cd50eea2fe8240860e877a86dae487bb44103203941b6cc1100126f0baf103d8f63dd4f679b36f608d0074db47bca6a3816ff822c22e2b0ca4c0b332c69faa3f2a74c8ee6e6d352c4d7179b0d84ca46aec1dbd0145eae74377d546844fbc9685c9d5efaccfe2cdc414943b6cce0a01c6ef70fb066a77a49af5b5c26f76ddfa09a838c13948191f948002e8128a8f8a1fa3c77308a3f41fc32640f3f6ee3aa380765580b9ebe5d85ba9c274755a9c89f8305bd310e26bd414c54f787c755edbf9a3dc61cb1b08307e2dfe0f609b1a8a90cad06f297dcabb0917479d6ed211fb2dd872de373a781c528a835e497ff3a326339d452621404e836b7201d26bd1f5783753d681da28e7360ebcf08eb715d53b1a0127278fa611943b6cc11b01c62fe0fa516a13383549d7bfd198eece2df63d77858c3ca45c99ee093df5be8d22c8029312de505761b25d27c13e0082cae552394a5230944710c853401f1491304cebea98680701959136828565bf44bb8400e3befe37a3d4f6c754997fdba35261ef08db3256e4cc4852828316b853601f1a1a0d0e16e4347a1e64f7c7a163df07b052bc0908397bf70caff304debfb5d89fc47d1111bffab85eb1f21df25e3ee31a2a0446df029f9944c2f225ffc2408821ac00bf29f8fbab10ac14e255f7ada8408c59333b633a5c5a1bf6365c2584b882130d410d203aca63e02cf9cea71dbd66db256dd9ed9b34a1e13eb39fc16c9af16132f927c6dc4c72b12ea81058aad90999be85bfb2d1dc5453d4f636f4b7fbc1cc7ad701de4fa1a84007c795e06a6b510a57fe51cc64b3660b174cdaa70f5bcf01c2ee0d36fdca7ebc3d22598bcf719672dd3cb986712bee4a581a5cd20b7942d0521e08413d3919971bdbe197d5657e7b9413eaf21788a15fd1370e323d1914a62e330d8dcf7ebae77239446e2dcfc0c77d8bf99199493ff50b4eb77d89c6f71ab1c00b67bdfa71355b1f79baa837b329bd82ae4953ca5ab5b68fd18e530e9530a31839cb20a8e2135a8eaa70856103f8e89da1bf6b918f7653675c5c82ca100906d01ca0f31d6f7c31f6f3fd4be3cf44f7602e60368bd3384d12e86e92fbc824ba033242a94aede515c55ba4a239add5a476269811db37756bf45768aef79550ef6c277de5edac0e57c861848fca007f1b6f6da5b4e58c68262418a86e71f4a1ca30194bb423d19cb0ee2b777f6a3e2b4d4b24041f09c8ee0995350264ee3e45de022f6e6da9e91ec9a82e971a2fba8cbb10babc8dd39e906c0b230dfccafb89245c323ac6193ec8f3b7dd54412331e9dfe650da4582012306803a478c41458a3b9b3d328d8840f0ec006f423a17221a7df715490b0617804d7359560d119ad7da7e0a682d92894737fced5cb19b95ee472d7bbaa0e9e2c4afbc2306e0523820787f0ef46fe34d8ef854514808468281eb335da6362fe9da0e56c7d5ae730c5225ab2cae4068c7312423f872843e0cbb5e049892a7d6fbf0675f1f4d79378bbd35560c76564c95ca52efdfce54e55fd8bf72a6020d0ad943f33961fec116feeaba0f36f6180187e81b450989b85e5454c118b7bb8b62dbb09e143d5013120a029b3c1b520e5b0755a0a14f1e8e857d8fe2efe5b415f4691ba98053ea7fb140588b951d65dde4588283fcc7522bbc85e8648ef4af167a7c4c710729fa77558aa6c4072837fab777f2b4eb3d3e89f306f68d59a0d50ce1c3b7773858fbfebfe77571b7197593d7caf3a6adb9a3cdbfbddfbef310eb25877b0f6782187e7b49306dcb500bf2fdf7d8fd4bea53ca29af84fc67af7c9c36abfbe959df77ca7fd2fe27e39f1038a5feb4f8d1bf8ceea7817caf20c1407e166e9cf6ecc69ddcce276b465b8d16b798cd831bfea317340239e7038226b30045af92776cd80daea5a44e93927619bd177bfdb3d1d7d855d209258927625d97beb5e050cf3716b4f98e053535683be690ff240b3a5fd4a94e1ac79cc526330cbcbfbb8987f341b487ea0917bd4637a842f9d50d917f4be1af5a5094c46da3fe619b05056be1ecc5d61c16d300f81b35fc97d4a7947fae057f2efeffbb1684029e136112ce49de6bafbae23bb7b722f4568629c16ba6ae3d86a0e024318b94f380d8fdc77efe69fe98c67b85f6422a29b18436b19a13556292f3be12c61a03e72dbfb5e000ea274641bd9c68a90913997f92053bc0a00dfee18b1befcea77a44c847fa121d1dd80fa48d877f6064079cb2a6affdb6c5af5a70b809f1e21e3835e3316a4531e69ade2b8cec4fd7be35ee5f529f52feb916fcb9f8ff6f8f82ac7a4122fb91121ef2d072ac7c79b3283cb03bfbda218158eb5d1fdbcf35a6a803eea1e4cf9b527d973ba59eeddc75ed18a89bce7ac37ea54538178f6c2391af7a0bf2ad058fcbe0af6e31c26b8fe13f0505d5235950d38cff240b9a3da73bb7b3cefa34bf13f3354f6cf8d52caa0bd6348cf98d70453a05ff9a82ffaa05dff28dc4a6d4de2eb87fa07bc5bc7b0777ba0c29e07becfe25f529e59f6bc19f8bfffff62898e52671a324c80486493af2f0244647ef130ddff375c9f313037144cc169aca5038a045259ec5bc89c133f7dc12976c600b715d828b2c59d4d16fc2bff33ddf782079059a3f640fcdf7f74fdb2fc02bedaae1b5c7b01f7850875cb78c0ef8277990473a720d2d9e727f68bd1a37f1b5958f8747c18abe36370a893f9632e6486b397fdbe2573de8eb2704968a11aac7922fc6f1bfa813caa2a37a43f87becfe25f529e59febc19f8bffffb60700194ea8ba47fadc6469d89ec41f3142ef16f501456ceb402a83155d24d7351c137f4d9bd7486b10c5ba7bd14b5eae6e93488db594ea4ad5b8c23a65a4cccd64280ab421c81e5adfc930f8bc04fe4ab70c5edbac0d87b095fca905a1156896ff2705eb9da6eb7f24eb5fe816df4d0bd868d3f1f8de69f4200a5fac7bd19c725b0b7d192d42f2ba49b7d356ea12f9ae541f32fd157ae24e9398a8e7bfa5f557ad3c1c56fd92a674807b83f43521f8314d2e76c72ae1afc5f0ff96757fd5daff4635e7e2ff55ebb2fee891c04f72f86e418201a1fe199e8ca92173a8e80625af970b9ad833a3364ac6bbebdbebfe67245a530e4c01b131228e5457a1b4e08d172e26dd312f72bbed600952da7b0b8e0083c863b967df5abb94f57fad7d01cc15920fdac2e6376b0bad63713d89b833634518def9f96c561e960a4061d5dfbe70673779de399055e4db16bf6aed3181266fbea7e7379b86cf09642a52aa9a70e15411fd5a0cff606bff5cfc7fafb57f8ec3770b120c84b182d5cf3047bd74d5f3951d0b7268764a042ebd62158fefb724ddf0f81c960498bb8c075e0b7aabf2381d1847bc156d0acd70d4abee12701e27e3d94e8c8d19e5b7d62e21fc5f6b4bc61314ed9fb660facdda9d80bcf19a4ffd9cb06a30181e359bf3c426e97c52268e52068b14fb0bdcf1d57f7b77e657adedf509af71fb81ebec318d723bf6d2b065d214f5cb5f8be11f6ced9f8bffefb5f6cf71f86e4182812c8dd587eb7340beecb9010d881da1d3eb3e9e6cd7f6b6b821aee1b0f2443e4bc0c5f2da50f27deba3c3319a4fe5a80b9d1cfb7d622f69864a456796a336489a5bbfb576fae5ffb5b631361e59acd4cf8dda93dea46d1ccdf4e1254595d92ec6ab2e5545ea4c1af054d72d7bbe29d626b9ffb6f3ec57adad1788c9991eb71eec2cad2b265d38fddaf83d06ddafc5f00fb6f6cfc5fff75afbe7387cb720c140c19854fbdbdd0601e89d9b2873677317b0ed58733fdc6ca9901d5a71999377b7069c7a7a30cbcfe29a6b2619c74a1953ae21322dba652d13de891f338b46e7ea29afffdb84bce07fad2d2c1dffbcecb4bb70bf599b025d6b31e0e8766a045686aaa765839778a3195fbb0f0d6d0b99070ad7aabdff6d3ff1af5a5b673eea4de0c5da774d296ff3af7ac6463dd299e2fe5a0cff606bff5cfc7fafb57f8ec3770b120cbc70410bcee86cc5aa15697edcd63badbcc4bd2eeb70d4b41e79847531c18903c10718f557cd980e4611a3b66f29d4621846c1a9cf787a52f00cf1b57021dfb73c57fdd6dac54bf0571279f05a24c7ff5c6b7344dcb2a638edc6e66fd6ee9b8df97053f55afe4b7c763e484b682815eecce83125ab408ffbbed713f509ed6f5bfcaab5afb248dd341e219f5b333a327abdd3b203c5d5a7f8ee17727f2e867fb0b57f2efebfd7da3fc730bb050906b8edde54d6c1d5cb4c13862b254b0b1ff14790c5bbc984ceb0b5c73d8de2376f02580f93147709f0d7bd149cadb55e0978ed75146abb2d50e2128d2b8cedec0f352df786a03c4f8c6d30037f4503faf2f7bdaf5307ee081dc4afc91bfcf1f68ee2f9d8cbe784ba56aa6cbc448a2fe3b34f9ff1c760599dca93391629c71835c802eeed443ce8f69087e14abd4fe56852196ff0c49119782be2aa3333a815693562521e054145fc063e7b1af88f3729837ea7868402c63ab7f60d7024d8518f6cf7c710c5631ab75f3c53f5b2d095263fe26c88697c0f58b132c51c21df720089aa6d77c43524a159da849a2d338bb0d7b47a726d5233d97d95c48835544936d41fcee6ffbe851f09050683564814080f43841d152b443f2cdadc1d11c70db6862a57ca6819db36d3f602ac87ccda6023da19539e84b02a124efa5809f314b35d12af083dd9448a17cbd7bf4a62c4f88b92fc4e0d0905dcb23bd78e0a31baec2f1bd08630df950bf6ae7dc2826a8cde9e96c9bf2f904aae09a8047e31a733e4f1e1345b606620f5f5ac1f178b7388048b5c116ef74a7d1dca5eee0309ddfb6d3fcf93d358058139a2b743b5407f7493c49a57163be99d9c2d67a8df04d69e97f77fd4efb18c6c3eca9bb6c4d56b8fe904cc9696ade21e77ec45413a3dc8069c32ae0a13a3b16e325d1eee6da6627be6fc90f6ab260391bfa6c9bfa815e9bc95be7e0b8c2e4f2eb171fb0b9258b8169759065d0c4b598f7155477bbd00f4081034e0151c761555754c4a1e3caf2e2405f4715e489cec3c73071e77be17106bea6b37311c3ab59ba00a9f112a83fee82604e844e6850ab7e95d9dd5483662887a975cb24638d89e298956f1817ad6904d1680311d83df99358a29a45728c2d2da9a60e3b2fe46e6fa5d0ab2fb06098840ed7b5f25317cff8bdde4776a2c30c0b1ab322003d244830da43cf8c830c010750d05543d3b18c699617b69ad148007d8933ecc997e85a3e21c44d3452fb56a2c341993ce03ca196b69982abf11d56c9afa559299e15325991dd178be8bfc43920da1ced2abddfd3e4353f75d3c4919fd2f66c860b65c5f7827dc9d75f424486300c01d237eac27d14d5eed3b12a5cf61764912eea07e30b6eb96dbfa6902b8d0cff2559299915f94e4776a5f0075cba042f156bb62bef7fb5db5064f0e86c30c5d0e0efcf5b75930c7dc6b321d01c015e1ea7160940bff99dedc7899e102d6ba8570bd5d70e1050ad4263f052b9b43b92f04e5f5db1e8033a3a75b879cf6a9b0f757eb1c94ab88f88f9f1b5d061433427fc4f7a18cbafb1e2fe763a919f326ea4f41b6cac06d02cf0bfd0a01362b6889fd1fd74d235b156270ecaba9f1b2b7e639832eba08fdf11e081c7c663eec17bdf33b37241490bc95353e5e26fabee02321197e5be3f981e9194195263cb9060782e4049c3907c0dd42b9d2c5de80ecb301155adbe6f6a591e494dc581f3db95cfd8c3b4ea08618541e6ca2ff840e380088fab3ddfad072059c1b99c53d12f8b3bdffdf238bc6ed2641cae575f9e4d59e4c7e29eb290adf2736d6032e31fd4d95c7ef4a0b091ef9070acbefe85eeef0e85c0798853e49ddda6ff22bae00c86ad159cf2fbc70e077f11e4de97dae2b024c368394a83cd838cddf4a577631b71d699879f2f28fd295f3fcf1478a968fb2d4327bdb2c43ed9d876e1170603054d18a8e8ff06fd600ba9e8b5bd73cb333e343c8e4b44a6d6c22ae82c6519716b7f4513c5d295ce2f542a83c5898c0df4a97b2e6ce85a4f13327ea2ef603020bca3d5ef892e4d1b98f55b1ee4068af740bf49c537d87b364847af70970dee6181b7393e8e1b6f56a784bdfa02c703d78e58e2f7bc69b1a6f12f37b7904a83c1d38e3df4af77cfb406cb4ccb3dffec91b97b98e73219282d48b650faa3f92e435d075b58fa8e66c28bf4167757acda6ca0db0c36c2f8a5711f2e9d446ec1d5a0df1e7ba5b12bcd048d71f716dfd1c01ea01bea85bfd77d285b4655352d052a506d0d510c77e1f4c2a943d8f2f1481a9ece52430b3e149a47c51e75d517b3d15097321c04cc1ac430e17bea03171d393b1f8411bfdf075bdbb31426f7924c28a29a785b23fa2f2602ff7fe56baf38d2e04a0c5c913bab61af6a92c0e4f1fb5da16611ef710186cd8d993b9890374e466fa35e54a71e100768115c2b55babf4403215b1288ee54b30833cdc2b7281e01c2ddfc5708d5645541e6c21ee6fed0c972e1e7cf8b4117162b54992f249b3fb7d559750d4faa495699eb28ff9cdab94493c564709791f1a71be9f027c7a0af28f960fa7b133f3901edddc4aa42bcae203058f2458c28b5d6070b322541e2cb2f66f55b769b4e4cae781dd1375d140f6f613d1aeaae31da6f31fb46206d88419cfe383a2b2cf6df9ef17a93dcf02c8f05203579b063f94d65caf56f26476e51e5b9feb742e9d487576fcc4c87821ea0bdd36a0bf555dd2d2d8a2f0dc8b27ea5e501e995215fd989feee872d366651b8dbb19e3384bd4eda3c7455ee8f31cbccf8079aef1f1e6b00e84e742d7619cbd19ea1dfcc3d0ad0e89ec816e96b8677bf6c1a83cd800c6df4af76c0084f87ef5e1093af8528280718387ada872fbea23928e45ab97510dd10fd6432af08e2ba86a5a157700dbe927816e26490cd3fdf636b90f5e766e248cbec42346aba9f2da28192acf7440e5c1a22bfe56ba32f1aed4ce540a2774adbb1827021da7280dce54d119bea9bdccc979e52efbb9ac2bba2928911aa9811780defddaee278dbd4a083e222789f9c48f6583b52a79de8c07c429a0f5456e54c47e9dd48305fe981a2c9a33fdf9cc446390771d015b28f8d774ad446ebe625e62d27be3f1068e32ff0d9607012fafd0a91fbce9b048502f06dfbd01903f16128a2d0c6cb2130d3d1b257437fd9d55dd0bdec0328ac4101baba7dee187dfcc4c705ffd011feaf7576626453a85cab1905fa6b09e4d0b57d0ea26cf3c6c94936a20f4c527307bf3bcfdfc733365a911c3e27c09ef49e02a53fe511d91bd41ae3e11341d2338171b5f0dbb6b0876ad85552af8c67635ddd759e4a6e32fb2caed8214de3c61a5bf0425e3c36218e7bbaa4ea9325d32e0f32a57daee9c05ee149f57245b9e7c1270965dbad9d10a87214c8b6b73e72c23872fb0531b2ee18a99323090afcda4acfa95d5f295af11acfecadbbc607f3af1c6cc93595c74acfb033b45bde4ed4524add9f1a1e99928b5d2f4d7f6094341f3c4919b633c8091ddadcb79fa49e2f9e9216c1997a2413ba721b44a870586d9dcf6bbf2030b095f598db0ffa2563d9e997088cc17ad42103afa5d0bc4afe7c6b3747a322b34a1e9661b947018582a3fcc8b1b991a59023a6eb5de53943349eb1a6ad239dc24258aa6dc7733796191ad147b9e66a72d313cdb292ff5d55fa435919f4a417b7257a12b271332e7587376354d19725773931ff94ad88bb316d7a63392f079e97590c6009eb16658604737d3fcfb8fb74ba5332a04b687db35e7260b4c15310df036633694474250e127620d67fd620a513e2a97ac694e52f80407cf2618e4f28988ffd525230f576195dd70a773db39c78c3182304e49daf8142f2391d7a3b0806ae109875a221dacf7a0bd8e5c41ebd65a0b859ace68a7c1af195ccbf945a9922f91e3779e7c608b58fd82927dbc2a8c29324a087defbc47f23e26afbe43c0fd0b790acf7b0647a4010ff1a1227a6d9c1c2a43a33bc405c2ea4bd91bafbd8bb0ae72646f18964a5f6df4feba8c7c9106e70791877f1032833d4efff365a48981df527af81f2b261e1f2ae3d0f1c2f667670a1ee1d041aeb4f92c68f4b52eaf1e888d3ff31f7a930018e4444d5bc7a32d901eb2127754051eafc9e98ba73ea15025b15c7bcef16e9ae0ab24d9a57096fa252678af1c36ecd5e45f59469a44b4ca289c4822f1d29782b415e19a18a94e5e803564c3ea5e2ce893d98825bef97e45a72f511d90a266eb11b028c60569c50cb63c89f5da53e10b0cad2cbd6f0d084f4ba32148fc2a494ef21facbe2749ac375c2a1efa872458b73a757c056b308344ae5eb960efcaf08e44f9e37e739764e7873efbb4b3722a2b00b702bdaafeeeeaddb886d62cfd070f8402a20e17f93b49940a05dd8a72e3ab1f287787a05c4ec08986e19943c8933ff4c889a8e0c89cb9f723502b286979e0ebd1586a4a6bfa2d28424996cd1709059255c2fa9d53bbf31b343867d1dea953d835e2a6d296eb449577f8945a260a5503589b6fc6dd3ea380167c41c7aa31b30d191aed394d0dba63cccdebc0b1dad31a382a0416bbfe050b2828f3573e73847bdb95ee0af0dbd71db4967aa6260447f3a4ad20fb5acbb0eb1a2e02c870fe0b5872543dd153434e7540e041bb64f96ceadba36daa21e2deb81269b4fa3794076509e425578fbccdb5ea5121b007c6bf40868ef9d2e0e0c26f025f7738fef499ca6cdfe636d65392b94c0fc53d3b05b54a1f579f065164cc553f710d088006bb88dbe19644232837d8fb815d29e781761ff5f1536dfbf33e54073e2a7c6a433d8283d145fe3a1bf0282fa37c76f86f6c52261e7b284a0fe6981639b1ead0db0a8168dedbbcfc347466dc9ba04143729c12e08b876ce2f152500f7df6344861529cc5f5dd27377522736ed525ac9f1048cf38fcea989df47f7521bf7811f1f19b5cbb7372e3a5d5ac42462757f7f8f6356df6364f8d4aaabcc62cf34524297b070cb67a22e5590075dee395aab716ccdd7238c29ab8606c117c0f365fdf3477cf0c13deeb1facfabeb26aeefa45561167375fb09e8c0238fe9c1d26ce65ec3173a4aeefce56b1d5c54153e1f95dc97cf7d0a67030a63b23014315335bc9c342456b4bd28b8f37ae87375cc8a8e02e562e9e4b2a98bda51619fb1455dbc75f64059bdea3c23d1932dfda943aaeeb5984a2d72c369f535bef7e2239552a894e19ab3e705d8a85408614c0d0dd0b7fffe0e5f06c7edc7bb5baa1ab1bb50dca3958911f36e801d2cba50c4624dfdc6015fd455625c01cf5ec8956083c1cf63345fcc6b914f1ed0b7e177ce4680352023a7a536ffaa555dfc9210a043cc6bd33e91b1c8faa2fdd087419956ecd388268509110f84617dd0afdd8fe7e399b811cdbf8176995eab549be3fe95806cb75fbd00d8bbd79977740fcbe97523140c04d758497d95b952536ade65c1e0cc0e5aaa521840d4fa2c4d9478844e00ebd7ed91e47a5baf95ca98c62415c26f1322a04964a7742a56fe0af7c4ee5f334e52bd6dfbf321dd4a4544625df724b78471b34c2bc2b68337363ed7a8e7c892343ba9c1c456b2bc09815226af5ac38f49a9eed231e015e4b30e7f382ba3a5e23bc05f7918b72c21c085408cc7dff17c8fcfe6d97930b417d4293f6aa5964043856f7d50328861729e5c07ec407f5f98d2025912b04d239805d7b9e497a5a5a18319536e9c58eec4a61978bc87e2f7137cf87e6f1ccce376f7d93302cdb5f4c1335c580dbf2c9d8d9c635fa7175be5872b5f2e0ea352d87d64c4c34d199c793075403c6d9775c767d9e021ad8388edb99a54fb794283d515931e6fb9e50a3db0df4714c3a4092d6c17274059804b2072638e9dffcb27027f22278061002c7613e8afa028556d805239bba40132262e6d114a198092d4ffe372a2c011b4e755f1557b058f96262bc11bddfe1f8eaebdb4c2105afcc594ed69053b731c55edfcc234979de7df97641a8ced282bdc99f7de6eb4f1f5f424018e95a8c0798af046e31c98c7b53174ccb099ae2278040200c01a29eeecef0dc11378b3ac5ca861bfa384ccf5e8341e02f9db85ed3c3f64565758203bb632bf7ff8fbab78eca6adbdf1ee9909406e946a4bbbba5444a1ae94ee9eeeeae0528dd48282120208d748a342ed28d2f5277c076efcdb9d7b3f51c7e9e31ae63f81763cce7339ff9ccef9c6b24f5ae05c74e5338def4e6331335cb202d7b592c8b3b0980a09747040aed12493f5ebd7fb166dd2f8556140af1fe62921d8383821f04520585f99a4ffae5f84431970bc81214f958e2cb3f421c3f3520a4249ff4ec692e9825ccbd948023ad2f372a11d410aeb40b794a4c9ed9ba00072a4112c43414adab2b6b059055059f6e3ed12adf96aa9d37bb19b5aab6601a14e66b317c0798cd7584ca8ad13f60d0a535078a127d583844483f6e0daca56e2873f7fa55d9f6f108d39895e29bf30272047e0cdb54616a94c3d1dced87dc8afef0b431eb577a5b87e9fbbdc88ba993a007305f2bc2bbc0f87c426eaaf863469161aeda59aa0906ce3b878e5ab6a0f63d30e0464454daac12c777fc62abb0300850629f26cd5122aa3e939d16a6c6bcc419c87bac50ff2e13bd25e9f3c324b4f82e5098afa5e61d60be7d1091384bffc302b40fbc094b326f75b6d82db282b71bc26da01b8a0ac6464dd04c18ad7d941f289b02f7e24375921a17b553e792f4acd48349fdb9eb9ade51bf99714a3aa6861f1da6bc8649bf03cc19799b9813ef1f30a451391aa0538f076d980187e133f01c5f3bf3bc1b2a084764ee07a1941d9cca03965fc09f9863f738c5643de3542e22f2f8620b9b56ec5383a350783ca382cf5c020af5b534be03cccafc188bb9c12c1f308888db4dccaeb24478bdebd44f983ce5216a3c261e97800d613d89ffe41a54f72a6bc6b3462891ca59997867ed6d7dc763815074b02d6d6f8a03e103c40e2031e96b630aff7b963fffddb04c9c97e60089302ab212663bdf12275f41363cbf60bc9838f8c01d15350e81370398974ade43b0b6baf75e7ae6c468d2d8fb38d17d6e94b38034f9ca3ce50de47ea9f25370393f08da68bf1c7a643fe810d4307e11882985b5555d7353d47e322ab59a526196fbdef5cb26f9413eff8ce3980e4f7fe54923fcc7efae550d3d43fce7f6a167eff6f79f7d96e7bba12dbb6b9c1ffb863d7ef6903ecf1a7aecd093ee3f3022de1b6b0a433b92eaf6ac05f8ab051028374363bd9f802af5dd46e554b457a70ad4d73f1fb4ec8706a3c83e12f9c33398bb1bfae2dfbf17f4ff3f868e0012017043a521a454ab897c8595a248f7c7029948828989b6512bf8d1e22e0ad000e3927dabf62acecde5f9d5d638b2bc6537b901443c4bb375d08c6e7a9bf4d04c7d1a0428f97a35c6bff134871ed977cf3b333ec629b64168a005ca27a0c870bd9041934f6f6c3d041c503645caa80703140908e42fdd4609f65a6944e4f4e5e3a594b20a32120dca3cf5236e010720e21b16a581132885810af1092db1e0d36e5cf141ae3c4b261947fcac94e303c0a225ef1e6aa113945be1fc04397da3ffc518f84408122e09beaf06b3ab3ba0f80319b865d69fc1b57beb79dd86f3e73dfb16858b2ed27850b5a4f588bf1a14d8c63fe20dbcad653d766c123ac1e46d55dc8b73cb63fc40e032ffa832af76435d761b530202802a8c6d5287704546bc7adf606d7abecefca18df613fbb20d77229e1784e051d70fe0662eff53e7cc619eb05b89f73996ea55dd3b22763f3b70f0820f680107f4442e668a648b92ca4b2db8b80e322923dfa9f6554759e8ae31843b3410990b003aa88098f94b12fa71c2b9b81935a230f38163ecb0ec33942cc8870c99725d827fc1d1fe05f73e35feb051b36b8ca997f0124303c6293c1157e1451ec52d38dd99b7fff202654689e78bedd97cfb558d8bd07382cb9e4366fa0b2d35e0c0f6e4761175f724856a4e779fb4b9abfc5b8255bdc7479b7b96c9ac762410d90d00c3ceeb8becbd668a667f5fd6818b3683d88cf14a751672bfcb4f0c3c015f52fb7e003755ff9fc26128081a7c369d8df626726985279dde8ba713806b09078edc2445291c47df8a4176816fcfa92618b0ea68b2a3b5bc6d479ca83f26020c5701f0630d6712d6e44ea17729ef69a0bdfa4c3bb0cbfdce5d9941a2659b2b7ed8a9ff0770a387ff299cc35717cbae48efba502a8bcf577b7239bd8f74a822bc01e748e25292edb8033e6ffb8b482a360b973e9bd9e6947b2bfc9a32761325fea5c083b66f2ce32a0ca92bd5313dd561854307f672d2fa5249d4b6eadb4e2d546593223f800315fda7706d2cae5bf8a1eda54d5058b08b68193b9751682409e0c0e35ae7ed2dce08c1e0322644657ad1b918642d57f6a30aed453919633f205c2640e408ae5de85934def3ce9416af778fd1c898cb032d1b70b968dbf83d1bbb75457f00776af79fc2e524814f2427f606bceb2f2beeac68182705d4305b0fc001eae6b2e782d27076c44decb3c1ae7e0b9da2994f7b5fb362768321d5b7161f8a020257b66f873ade679f0b88cbc3ed60c1ead04fde1f6061cf204ca957153f5557fb0b8ee62fb8159cff142e8fe57e48b0cd8c974cfaa3c00832d8140f23a181166fa06ac0e56422f95e6cdd03570485b73e212c97e25ea5f1b5ec47f40d0d2226bd22c6009bb8f7749184680bde218c5694b299f99ea292c4ce7dc3090d4786875597539b7fc1d1fd05b7edfc9fc2bde0629a7df4f41d84804d008a3b0df9d6098657488b3740fce5138d67faf87cc9abe3fa650d693fb327473e3e6c06f574c64dfa53cbb1e58014337c877023bc902134b870f0a7833c82393a5e010d3d1b4f1e9e73bf92c35d8a1f0cebe7c9ff144eabd297aadf1afd3ed069f08d28fe639ce3c621410b38b0703a4f2bd682e45a6a78a941fcd0a5d2cc58d4f0d033daacb24cdc215ddeca01c03287b6cb2ea15ed922f31cb7107b2fa18995895b1bcf76bc25cb2590098c6ff307c3ba8dfd9fc2f999235bf35997e468ddeff4bf07a4c678af0a52136901073ca088f6552fb72c52aaeb5b754823ea5203ec962e2da4759eda76317ae03d5906e8bfc6f01e60b32cb0091d4bcd604986c17e8d1c2aa1dc733140ac2f87f3625003d5f8ba62f9011cc0cdf9ec0f3f40029ef062b01e1bec8e1f20f9b3959b2d81281a173fe9016feb5ef4079a4182c92d5606d85e1de9d2267a29b7578c28399b4480525ca93e17e6f36659585062227d4b9da06e1e08fe6455c1479e3016a5bc2069508dafd3da4fb0c3ef33bff2acb82bf6f75632b686c29428f462ac6418b8092f2cb616089a96bb94bab4100c25e76086ad14364e3e02f6194a43bbfe0a9617b2c2791fb4c362309b12b1c4e75f668fe6d484107b1efa26836a7cddfc7e82dd2e666c39617357ecefaddcb81dcc20b3b397c41bc5608971b8bc187e8f9dbc1275a81c6783ef2862285b2f8f14e0539e9d7b881f7adf9c0ace12e95b157f47ae5c8505a171207f5ba4ba05dccb50508def8ba52585645e01a95ef0ce21f9a3951bb73faf0cab745af8841cea58d1bb4d15a9b201fa0fa6ef5ad100c4ba4361e4ae1dc800b6ca79736f0cdc3a5c81fa171681973ff1bd7db1d56b38d0ed8674287304d9afaf43e2f1136ccbcc51d80ed4bb627f09e5c6ed91eef7b36946d05b3be429638918d82d49e783f44691b56f2c275d49265dd662006e47b82348da551ded103d1d599541ad8ca10fb28e2db5bc8e465139738c06ca41a01a5f17e027d8f198db262d2d77c5fedeca8ddbe5c64b84c7020676f15d348227ba1e351c2ca271af3b63b61988c0b949a2a22100068605839d36b8c840ef543a55d7969704d20b50b975052d4dc93aa7052a456dd7d956fd091f6c87191a037057ecefaddcb8dd2d48b7a3d1e23a3edc5408ea51b5121aff3c350e3a898e5b412b97a1fc524eea0958b39ce578e8fb13431986599faf9a77ae0cf66c17c350a71cc1837141731d3fbac6bef80976e455d0b6f59db3fdbd951b20ee6519ef18864458b8d8d71bbd249ddbf48a224b1bcdcfda34df37c407a4503603e465d0305bd82f36bc3e61aaa7ab44d11b9d7ab1167a658bc9957e4ea76e2aeb62bec616ff1976d709d63bef3b63ffd1ca0d363458dfa65bda0e4ec857e706128679d4849421da57f0ebf3e828f24220ac1d32c026809192f22cc0dff8e525e743dfd1945134814eba600f4437d146efd4531c36508daff3ec4fb07317ed0aefdfb96e7f6fe526db65534bed5e4ff5a8e4d33d429c992c981df5462f18b303c0e90759c427b6be719b019cf3f78c15ddde5ca497997f4d1375df385961f138cc9073d19039c497c95a6dbd5e25f97ee6368a452efb9da7e4f7566edca6012d2ff41f81a017b01f9ab6c7e2b929e6089858f1370be588d1842d96cfd803c4306914f89a51114f6ab62ba2ce58fa596767471c88ae5c5d6aeff377e605e7823c6a7cdd3d7f82ed93da68947de729f9bd951bb7dbb56819f7ed9663c4c81acd1d4a5088838c76c83afb6cbda255b2dc1caabc59003b83196487340449e2dc053051f9fd2fdfe6a23b57ceeb1a6822e42144188ca240a5be6e2737d8bfe9b1283e58ae67c4e31a6c372ebb29d7da6d05f0bd87306f1b90bce78d704cd33c963c3098726ec48cfff18aa3551620429de129681ac7cf57901445e21779eff9b5e82dbbcff7b438a8119c6faefb35a8d4d7d5e2b7e286cf35339f0df1dde00638b93d462b15ca61a488f0a1266e18930c2bef9aaf5c4890e7cc22f6f263d3006a471823db5d4edd8f712ce79123f2e1a1859acd216139756dea6aad8920ec06aedd152dfcbdb86936eb63796e37b8911f62974e81cacf6a6c046056ba58cf1ab9d11764b5796a0f5bdcb55b5b3155001e7848fd8ac0fa454111fd88d9671b692b991154153b6309012e66f34e276828a0525ff707bf1537daf7f49bb675d80d2ef326f0d38b7e26ecd7d391f206996d3356615be58fcfbeee165d354f36e3cd1803014c531e11ecb55f0bd45c56bd687a446935aa64e5f349a6239354bd2f3f381a05d7eef6fe56dca0e7065b016bdc37b8b5549fc6efe392103c9bf4d6cd7956a8377500ad3b5f68fbdc29f94b2c91543f19802782954258eeb28d1cafa8a7c00500f13867e23381667cd87ba5682d8917709f40a5be2edbbf15372bf1332c8ea70bd10d6e021371d7a7878a18a5d0537c8d97c2f5b4b50f35519c3a64084237b8156ba6f801725e78ddaed0a75b6f2385fddba953cdc9e6cafd823fbee331251c08484b0b21bac6fdf05b71c330450dfdf777ff38e6b75864ebf2a133963e31d13905f1a15aa58e1cbc9ac2be879580ad79057d590b48ed1c9b2bd51eda32a3e83601f30ceec5452236af0e6b3e1d1943d6cc9de44dfb5e5786a6df8a1becc93f35794fe2c65dbad23908c8edf6716cb448985377048eed866965b1962f43b49f33f627c9c8a0010a5f33ac817b5bb1f1a7bcfe64488f59c54b99e5a8e29bf7a83741fb1bbde3aed753adf4b7e24648f2af577459deb8ab97b90e897e74341aac248fc9037a485f25fbb26baa79f754cccc2a4afc03e45e1ec09f1d6980a43e25363026b8550a73cf3935f5645d59dc4f8023119679a7a4f9d5b5bb94bf153791092ca166f18f877dcf4f947a321ee0f36b3fe2b72e6635233b5e32736bae6f591eb6f312beefd05d0c70917d4c2335518d41e67918d8d2d16fa7db75ce4facdc04921c153b689feccb4f725d199c7eefaaa6aae5b40fb77a83db3069858c49d4214a414eb05b28a2c68eefb7503b5b4325d3b886ccefe9de690c4817a61b1ce72a4ec1945205289d09306420e1c2008e2196fd24805a844a76e5b5bbebbf15370ad11702dec5fe260c85a2c56e99857ae739f1090b2f18d6f85f381883a7299f183d1b7933f486b09ee51d80d3b755a4945ee35641697518f45101f719d43ec21cfca61c2b2afb96b199b6f9352ed16fc5f5e7f7b0004f0ebcc1dd92c449cd152cf6cb2fc44cc16526e52b78f5a291392a309149a9df50ab28f92340d696649100b2b9a3067e15c8273c817916aa698f602b8318d820d11acd86540e2af5757616fbadb8712c2fc64596d46ec210beb76789e11a5ec6b7de0fbfd99d5bbee5483565f24a6161aa3dc1a017bd431660ef61736b0e3c3ed25ba0ba7a7471e5e5cd38f461c9c7cca8a8378141b2f82ae8da5d94dfbb08bf04bce82b5fdcb83bd661072a4a85d94d18b5fc8c81f5beb78599488dfab178a954ca21e303adcd13e0012fa7cc537b2dd6e6183da6f40e930c53057b68d88f43582eb59f584f99c55b0b28dd3dfaadb869f72f152225426f707187f02e33ba023ef4a027f0293ea4d75e07ff00d31f4571c74a9beb99b4fb9e10605defac0908ba4722f234c108d437350b3f7004d15aa4b379e964bfad7a51af7eed2ef76fc50db4d3cdb3efdabfc11d05365742db646865a5176ed011aff7c852c3d5e1893c51acf3c75d34fab0844406c013404c2d541b902884147a316241a79395d21a68419163676b57ce17986c2d5ce3c6fdde65a2445ad240acea26bb705c86783e901038b820b71ae5ab76e0187d7a2ec0c1d99df1297df4e3b7943de0bee02c41495d87261b6f1e2f86f0841c2fb3440ee7764a52c47a4f7d3f94fd55c07518607fef168707e26d1fcfa71b3b8148bc23e653fe52822c470409558f6f931ab8ac9a2564ef9e10d3523f80ee1e04a469adc23c9d9e13b9940ebdaa8f299457530d047b284f6a10e804b39efd1208ee7a99d0feadb849a19fbaa990cb6ec250fd9ac6cbd818d190b0a7a4034a3a7585796dc0aa7d50deff254e79c325c374ff2e608950f39438e9f3d2da73ba1ff081e5721f5bd7707639c87a6d2506754f056aa36b5c91df5b77e3ce4ab5b617dfb8fb887a0f528c89a6a54a37db8a269d37291c81a161d08a08bc853db359296a6e19b0c2a5d26c6079e511cc75f5ad342608ee44eef1d7153b30d390b84420f9324859f06b5cf0df7bf163e7176a82fcfe0617e45c339edbe4e7d71ad162208eb2c280c0a2e94b8bbdc4c2ffcc7291fd7c2200b00e9a515a672e801f28280567dc0a3407f8ccbb2fdd35b446793d7b84831b3baff7bb9ebfb732586cf6440b16df8441c5d59940d098a177ea1eb3826d01025be1be550395e5f08ba0a7133db6da2802f48009ad5d1939a914fc7b9502118f65f9d4e314b76f57d335ae1f1cbc79caf3c83aae2b43d76fc50d500d94c2ae51b8c175b6d41ca0097a21a3953af9744efefe71fa526685d40797dcf80ba59da27bc20a00022db5b37545982d37135c41b4fe5336cc861d88d1583fab509e0f1f8c5009347eff857b64b91757221172cb1f0fea8c8d409c07fabf692c555c4a780c70d8c778413e1d01ff60132214aaedd36b003c8da5ca0039b8d0af58a7fb22bf59743e452d7abab45a2a3b11bb01e92405545c6fcfa97f2bae8f59b04203fac73fce193af23c9bdb2a36ab297cc927993051fc0fa6241d69b19f04e577b343b19ae00378338c7aef46cd0933e0d0faec86d2bd2a5687ce03073e87eaedceafe71d517ffa769dddd9df7bf13e95cd036db8fcc65d7366e4095ac9d382f295acd98361b5b4c854bd7b4e943522288ebdaf5e16c9ca02a88f1d980695c742c3f6238d23f8292745baf21e68a82d51ed4d181c25eb330e5f8761feb7e2860ef21e4521ebdce04a43d07ef3917b103c8c8a2e72fe100b4fdf95ea636096b0daca3145af9a4ea4b82560e691b8c13d790f1d319632ee14577604f7ada9343202939bcb26cd62438170ca35eeeaef269eaf8616e1c043dce0f667915abaeb8fb2efe3b3ac3129787fb0b7a94b8c730d174235923ee82c4d7b0bb0a0503516afd26524b9de4b28d57fbf10e2a2ff283229c2d41f80f1a6d65f684200d5f8ba66ffe42432fa6c4fe813e35d4f22bfb717833d4ff232764597cec855cd26662e9d29c2f0dca280930e548cd45e77b93834ea02b8bc95e2604da1323ebf4a86c93db5c11b2ac4d56ba77e5f2fd4738c131d3f8f1b54e3eb36f013ec50f18f604177c6fedeca1faf1f10cbc0d4fd1a28f2209a416cbaf4310cfebd41c599966ee186a1296298b48fc4cf015463a61565b91e5d010cf7cb3d9bf034c3146d02a30ee26d7bb35d62613c6230508daf73f3cf08ab13f78ca5ee7ce3eb7b2b37158395db6416213201d315f8a6ecf24af9d9570864435ed557b9df7cd99420c9cc2c00221ccf20990a72afe6c38618cf467b2f0d32de3494fbefbd5d4d3b2abce9c2fd934035beee783fc1cebef265abbcf33d2fefaddc605bdaf5797c9ab84c8ddf5986e04eb6ba58452ab9489f03c5e1d579245afa592003dc6691b8a1ddbb23c7233e02702c3bfb44209b4a30b917ce865a0e653cbb7025d7d9e6fcd9ddd17513cd87f377be3bfa472b3721c931184d9dd3100fab8d81115e983bb9526654680773d8c33e657bfd5442dcf9fe47006b35e7043e48f90aea99979d9b316d944772581592ac9b62696819fee4b252e55fbf2f3df34bb320bbf90f815d17ef96ebb3892bee502d0436696b3c79ca771e26afee39f250f0dbbfbcb9aa709815eecddb384d32a8b876447b5fd9af78f08e2de04035d694a0e8450dd9f3e3b2fa04d1481e8ce659cf6a2754c7600facf357be66733300ab431473ec71eee0ce0edf1ac5cb9a922a6b34b894226d7eea48c0ab6ea330ec2f28c5bfa1c233ee02e50dac70e88331453fd1efa0b0244e34c11e3cf81a2c26992f6e0a2007a9927647e5009e2766f2081333450d5f0b9ea790f06eec2606524cefea7ff0c1ff1ca138446ec6f61794fcdf50e80a7773eaf9602d3f5d6e34bbe977343541adf259a98b1d838642792eafa0c10abaa51fa1007a512570cb3fbec281f7882365991da9d7b864dcc4ca79e5b29ae208eab6c1ba7e347c4c2e2608f5a35f1bb48003aa3b7e3c5ab33c5df9f43569222adab3166b76ed2c1daa1bfa36b6a3ed557a2d768020f447b41e3be84f7a1526e720775df8802eface503ed1389f212eebb514c8e61f39652271b7e1abc12332163f694c69ae40576feb246a10c128c5e47ebc8e43762c18434e5fb1062084b0859262f24a58e6c8dbcd1a8b5cc533cfa2c77f35101c183c2ac3d870f7fd51a68aa5ef367cba97cbd05b10c14756f613d4d5519c83c67e1d9d5becd215f9e79f1eebcfada5a902d8fb6d3c3ccf53fc06a39b7baae075bf7d827b7ae527afed93c604b64d962c36fb179425df507eec771b3e92fb4d044d6fec4f1d170dd6bf21b3320f358799d6c228d43ceaadd112e0b71b0212dc4b3a4c1a286e84abc498d8038a1af720d0f8b35c2c377468e65f8ec1a0e7017f413dfe0b0a7c33ed6e4e794d73c8bc70d8c52d02062a06b7ce44f018f50a394d7d2cf8c19aa1edfbe99900e9ca2d324c024bc3223a1286f71e89b8af07ded0b04616bf95d8262f27d072a1fd51a620fcee96a95ab23e4f13caed11c3cca2291573096c735c0ff4cb96ae66adab4ec15f9b6a86024a3fa30c61641892ec56cc2bae4e71c9279a929753233d87c117a3cc0951ed88b2099a7d82a67773ea6b12461ee6ebc4e7dc8e44cd142a4439e10b2f02e655054818b1c8299ec8132c03860f6d06a9fc53d6eea14d274fbe3c7dcaecd10f6b0c3e0dd8d688b49056365af523a7b2a1ef96297ab223041f301c7f1da9b1b7092baf3c88a578f10c43b6b653cb79b0ba0630e73501b7dd16cd88e6776d6c10ee58032383edcb432fc2749e7fb6f86a13b0b9e3fe31ed2f2885bf33b5857d37a8ac763cd3735fce16b7d26f58a05ca92c2b91e4ceb7946b10dffceaab4005aa8c0022295b56b003af78cab220f891a666071ec553bf9e0fb5267a646b6feb887d1c7e18e4d483b0bb65ea4519a2c830daa16d2bca45a87778699757a861cf239b5a971426bdf2d2e4b206c096b0ae3cec9ee55b8da0f1010ab545b8873eb4ef43afb424a6a6f843ac611bd37e30fb20d49fdeb124b4bbf447e729b35a3ebed296d67e1631185b4f3dd5f256bfae245c63862e6010d0ceb133397af53c8ce70d827f3336526381b85845f660a05a6a8849bb77055f65f08f82ae647737a7d4293b554233acaa2a01314df44f21319215dc75f29e0b8fea0935df9abf7a620c501041e91fd2b5660916c7bc802d928cb82732eeeab461c332133c432596ac6ef11794ec3c50e02777736a0924d28535717a9067ccc1686828166d88731829d1779ae5101deadcc3726a9e083040b2955130190ff6f77ea482286bf49ebd6fea199dd3801de2c54b7f7c42ffea47508dc77773aade41129146ec91dc1aa895ebc4cad3cf230edfe93892a8aeaa340f56820e221f305ea41dd7e27b978ea25f9c1771aae10ba583f59e8941aa70cbc68a43516be8f38f86cf53f36e75cac2db37f1a06f890a53f8439b7e395ca2b40a54f8d38088723f3f78e0db97d70195802832bfa60807790218d6a2f586f45e3737d476b326ede973930ecafb1892a9e13f9a7d8efe381b3e2b6e66dc4be807e757c0470dd8e7b582d2a9702cad2dc844eb8ce28f393756f501e540346bac15299515244c3e1231856ea53728fea4471f1bd1cf8c6428208e20a77f0485b170372804768d57234c798f08a6a4c819d46d71347b14f137994d1528b396203a0dca7401542c0efe0de7a8b0c666e6b2ac458e13c5c0521a69abbcf6938f97aab36a972c3f5cfb0cef0665d45244d4ab97eef8ee458f321b3157d7c97eeb5973431fc3715b198db6bd6617f0a090f23d05b12459723829038417f5e7be66e9727cb5d5b2899a92c4a33de859d91f547408e6b5bb407903335bf5dcbb018b331f0d34ce873838533c714af9843f432d9a2e1a80db42c614033c9044cddd23ad0f3b8cc2708f1d534a3997b97c7781a9e7028f358fc4e7d9107f0485a577b7a0c325777265597adaaeaa27882ebf7ce7502ade899ec4f7c53538c093ce69886dfe08306ab75bf45acd147fc7985a86108d7a5af1d4d787033dc148694559bc92b7e6d08f769ef57877732aa254eb0bcde3ac3dba11914e7c03f5f65567adb34ce787a96daa45f013ee88fc80e958e31737ff96d6cc4f2511250f44da2b8a3666eaf1be58e3bb7b5cd2317d7dffa33ac5f3fe6e754ade000a20865663e052b27f2dea917a37f8d45451bc99a726e349009b0098f2043960531deb06c014eeddaf151068e68d53b9f0413865d8a9f356c9908cb0d0c694f95113cafdd59de7bf097a75c2c1de6394afe3c59bce339d17a148b2b00f7ab3e671091d54378e414a4b59009e7c1f8c22df9333ac56399e07038432c56f9d41395f239d43e9cba69ff5138bb6fd68eb72817e37a79837f5997c46d625037884a43b2a675d3b0ce29fa1877809e17f65a87741f3c707b42e5409ef07076441440e3f3a11a31247e0ad86bb58d2de7332962e1f21f94af2a392804c72b7a0439a850231e65dfe51eefa3c69f4fbda83c358537dcc8d2b8fbe903c71628d3806dc9fad33c74d4f246e31b33d65880ebe42dc0ddde239c80f54be5a57b1e7e378f5e0472acf27ee6e50adf919c2284c45e3417e4fadbdbc77b77804b985e6aca51e2b0820f46c65be4c013459d3e9762fdf6d2f5a4dc51a32ec2439f7f9bd16dbba8fba3b1d21ddd13a31f423a74496ef367c61d8518be21697b80f2f4c10cbcc71527a2f9e72abd8f15928acd76b5b5970b0db02c6ecbcae7ecc65239f97a5c7d4226903c31e44aa0c4e083604754368b268eefd70f89cc9efe6945044fbcbe1ca87f71889f4b19ee0da0bd4378a4c78ef53b5b0140e4337aed44c03fc4444978be21a060bf03158f3e52b4c90c7c121af79d15f7f462b7c064231faf8a3d987d0753724a88585b9230fbad1c5e977bd9c15a4d87bc7584ae59cf8fb4f70617454039d1a5f029ae63030582a5e3c1e7507f6d2eb29c60dd95cdfaadffa2037c33a4f141573dbff2853d0317783ca38fffa507f5f083f5dbd81d8c0fbc102eda1aa904038911a6f5b160dd9187134608ecce4017d4ab01eed4ea1f6d2ae9efcf5b346b237414501b06f0cb5ca944cecc08f862f62f16e75aab8c41a964e70e7e3235fcf1cc70908390eda1768273d087c532bb46fb4e83bbe01c8505c08686cb36c6e2b07bed9cd79bb8545f2f0f1762556bd8f31473264503840f6be5a497e6916a43708903f7c1b1fa4d8dba94ef8efaf78ba39f614b40969ee5dde87be349a888f34038596012e1d3eb8acd2977cb90828eecc5deecfdafb9ce6570e7ce66241b05c1b9c1e18b33ee02072f6adca289e7c71f4f1f932c8c15773ef27a21a46edd50f1afe121d05688a555a42c2874764bbcd1c2335236d0b3e314ee646218a3fe67725d357544004d04f18efd197208da5f414f55b7baf3f36c523e2948e2f07af98290a987742da50be5605bf5185fc18fd6f546550b09b58046f75f573818745221de4f399538dd858854f5a885d5754191566a9e62b73c450d567b280a026e3372fa244d301ff00dd28f150630ce1978f2d3a1a74c802b9ac79cb5ae0400ebe7a097fa26adb95d02a78db6024d6ae064bbe203a099314f9c375f4b39775e080060c1dff0a543f9804ffd35908804ce14482840ee7b1c3b026faac9d6651d19775043f9f524b3759eb4825d94a5e9083efd3c67f76186a9b3dd34bc4fb96c312e33e64e7dcb9f2f11c86c65af8e53ccb56dc89b9da96b1e7926bb6880ff71f00260d929072c21bf3197248beb99bcea9fbf869950b018cb41fd58db0770614aa400b0ebe81e73f516da55ef447bcad3a4457449ffaecfd807fe43747b9ba375b1d142ead3db1448afb3b6b6afed472f080e7ebfca1c1d2d5895c59ddb5fcface3d0bf6eee47c6da438086df444cc178a03207b5f89e77ec989debeafdefd1b835918c5cb096e1b8cb1079eaef9f200c17cb429a945a0d84281fdbedf1ef4744a021a5d4ec505fe1c0460df2d2e565111e840b8cc9a394986da192d3526df86bab015914a49a22ba06e030af37d497a233ada7e8717a1df386027453d1c399742891120657090d32ce203d52fb393c3491910dfd41388ab2f0d20d9f18b68c66fea38b90e06d89a8799180e7d76da7b78f6656204b114da6cd2e9ef976bae165c3337dd70b984ff9b1150a6e63f98fffb2b0244dc70893667b34a8f16279ff79ee422231142213e2b7f629c8c333b8a66566c0020ccab0c2efb3ef22338e6d25d251d5d7763e2328bc1f80ae5f00eab2d72a56fec6ff5eeb73f57ef2e2f41f1fd5b3e42d02f55c44a8dea0dc0c569825c4169bed5d6d526154dcce7c60c3e4e45cc3003584673afaaa9bbd76d3e76add13f824bc698140b9ce396e8bdc4b95066c902f8527f02013abc5187abf853dd0f5c6f3bfeb58ab5059a2e6bf821f7e48cb12be72f06f2119cdef5fe35a85c44b707a2550fbdb5cf444db6255b6070e5fd812fc2cb54da7f3b6a7ffcfbd9a7af7ef69d0eb0167060f78948fd21cc05d73b932f8315c9612acd436358cb56d847eb64961a4fcd9513ed00d7a8544c369583312327628e23324c27d931d58179c40617f679309f957dde44ddea77d5bff4bb1333686980271b9d3dd01290a243e3704c0467f941bf613d29fcca6a630ff613281c1f97b50abe415bdafe1ff49bcb477fcac7bcbb84510bbd591764daa1fc592a1d4b9f75e7e99791b710ea5159df007bb3e4b908a240b8209f9afda86535f05711ebef1e386c37a97d590e5539e5aeffebbd4fbecae97ff73b10f86fdecb92002ea86b7883a57fca4171297f614b9d288a3d2552df5e45fe58c8885ca430ec7406740ed22f1b2084ec7e43f4f6525251526386ad22bd4850580765eb9bea400b29642617e09ceafc371638dcdf585cb5f11c8cd151fb5670510855ce358311a922eaaa2c99de2f2fb4f68f7f6216448b37209e98566f308e1d5b4e7ae433878f28202186d5e5b6a9a24196c94ff9f54a5407c07eb4b2a4da4ba406d0d9e98d302af8099342dd931ddd8769f0ef082aa76919fc1b0baee45fb0c69a4d8e7855611a1c790465706d9a4d0275a4060b7f19cbf3b947fd5cdce3fba9dc2b5b2c988e17e426821f20d198098b4b633a3c28f1b08187d3688f19dc0f0ee73eac98d48632603f7ab292d7c6cf65693e1c9e2f492737f7d74b1efdc06347feaa194aa4f1228424627074f72a2e5e16dacf4a067da0d12629f6f67ffe30f5498b37f0185d34ba84099f6ea6a74d1a85031a2a7f130cb2f5f997cd77f90c33cbae5cd9ca00171043ce51d0d7759f508f458c31a6dc7acb3da451036a8ec6be7a5f8bb773eb1764e34d7e51161c08500de70a82acea39156dc8b8ecc8fc60be29dbc3e45f133b95a7ebb748d1030e60c2837dc8e969862b2c87ec4fb4ce3be19b7ff30edbb81f6226b089930ac15b9bf3766f477f59369221577b162dc52594766ebcdb02be07d236b583817e6e21d9f1b0914e6adf0fc0ad36de0f242b528da221d43a8f3329e5878ba59980d1ff1c72568d176c3358fbf7d8c352fecbd89b132b76763111014d0a1c09171bee55b2578bbcffc5b1070764834f6930ed44fb5912be74381732a777f4618d89264f24fbc3c76a2afbcc6b4003e8a104afd9cad6655cb1d5a82fbfa630104e2160e988bb1176e3bc27448d3a68bf355360fec6f290bbdb4c8110dcaaad313a4ee0f9c4b942d872568625260d23674489de841d83fcd8fde800330a4dc1a87af2a85c5c2d3bdcbd9270451accf4ebe7d3ece0ca4883560cd12f2e02b7b361facb83d4f24033dab0b9c6f2b9cf76101c553ef1f84caf834bb8e236210b4734b1c6fd620095396e69467a53a8b0c7dea027fec3c603c4f73378e611d58d4750f2a896c3527fbb0159f8971bd7bb271bd700883374f80b85870809110b45d6d67d6332bfe406640b38a0cc64283c82b4fb4e47db19cff68184648f03e7cbd1a5b75e4657de420416042299004a819f708b7e9c025c87dea9b93bea3b9e094b19da953591075c61d93cc16b6f4061be62f87f6c6fbefc17951592a72c0454e4fdc7f68644c6aff465e601817b29af88d8433ed7831cc7780d08b5723436278c8af8d428409f785ead54e594978ffa1b2d66c5f3c28dbe42f5858eea27576d33e3594a07ca93b78ad8eeff5d90afcc359c50d027142c54bc5628be89301dc83f42ceedc9049f61905f0c231c1202e032511fd9130c056909858195312e762d70283439c6d89458b95b9131c00ae2fdbd0283c3fe8df580edc741feff2cc0db50f5524cd8a48aa05779d3cf3f06d32ac24ee6fe84fbff6205564c318739a9e1138b44210807af1c82621c8454c95a2bd99b5c783495c9ec9ad403d0390e215e3db7de2650ed5b0d0e1aabd119186b6d63dbee0a6ca6a7e2a3a054b95d36c67e79a648b82beb8535e5d7894a7996b277b02e2cf53dea5971f9224039fd2cbf35142908906eaf2780118b41f5b538e7a456371e6d0e083e36561ed7a1ad01ae4937f419b0bd3d41cd7e59d6642c4ffd9bfe8ade3cb4f9389c8c7eaeb0e723b8f3d92481a281b1604060783660dedef2fad33b9fc9837893a1804f9f7c1d2b744b012658a55205cbe87d448e6fb77b3bfecb4bd50c0342dc746f58a747c83c521b5366a120e9be76bc34bbeaf1d9f19a50cdfe5840e4a2c1dc62b8c6fe2a01526a3a53ed9d7d6dbb7fee7dcb74fccd1d453d9f490a9bfa7108d0c81f75e13bcfeb42bdc1ff3b5c3ed44a5c6e39bb079bce4e9bd12ae9316f6c563aef18ae29f01807858f6e3b3f43a0aa4c50e044cc307e524cf8249210a2331ff4ca7fb43e811420145efd089b531877a02462465fbb1a2d882b8f518bfdc4e30274581212e644620d2af5cd3afdab333ff4b05e54c5193df88e4907ffe3931bba4590aa18bead7ab8d3b849961e2747475b215b65b26b1ef3aaf825dfca5701b4d197d90b45ab39128d632a3570304e436af5fd6125ea4146d631cae45e3941b74367fe34a36f146f0e562875ce26731eb280768f57cfd80539e11d3cdb7dc16df737d60b3bcb6200d5f0de3d0fc3cbe7042b741f94ea361f6a0567efa3c4391c938d7d3ed6d7d855bb250b60ff72d64fc1e64b61e33e11c279bef67388df1640cb6d6014f0acdc465b4bc57241705617e0e864e70208b1722dc12a04707a44d72f5f4e1fcc500b8ae73a43566c6c82e06f677de2977bcb7b90d52c31973076b96136981dc37c5e4d4684fe3640c66a122bc14a24c4f9a00630f3e5e7ea45c8b166a0dd2c9a3eea7fdc7aa91e4bf892f92d2dbbb597fd2afea3eb4c7cfb9f65c29305801004f40b6935c403f084b61bb153658746331270e9da9e25e138695303d86afb06e4cfc777e10f7d6343075898534b61961c059750abf6c5b4e8bacda86e67c221e2975d5210c5e72e16bb32d4c915a8147e482f5806bb9f325feabdd390d40a1f8f298b0c6053906cf4b30df65ff4b0f6a1bb5c7680e9cbbdac9f26bb7838a017ad0546b87d3b1338bf9c897c15858bca0509f80c2bb729f8cab8e838b8d1be18ad291174cc10308309f6250033d8e005857d514cc9db4c271a689dafab03390fc910c5708bdd330a31b3c62822b73331f9cbb2484c9a74425aee11196db1c20450a9b2ea8567ec283ed42060e8edbfa842e4f3050832439ff656bac81b100d0e3075e63cedc333308623745f4f2c71f3f7ecb302bfcec4d9ff2813a34095632aa542e8058650af0b5cf496b56fe931f9a70cf1b3f402a21d743e514a58002e2e2f75011fdb94a81c4a9484a2fa4d34cd8be50ff8dce8ab2fc80e0dfc61490d1167c2f2d7af2ce4783ec64a74a82ee53fc4ac08be175c8b9e9f9fd96b4fb21d015462af1e3e0cbcc8cae5a4626183d311e9a0d3a6e65c2846c3ccc02951e8e41eb9120453ec93aa778000d97ecf04ee2f47b1f26472fdde0bc4c0329f7c6b02182c623364a717f7997479f81c7c78c8e0e2c028b2dce4a632161682825d41a02bd1e7fee6248afe9baf95c7e9164a88dfb71d7bdf8ec4d42fab3a3c82780f4e2241a6caf4d96bc0a803eaeb0b9c5c652996776ac4c8de6fb6a1730044cb46a90b4e28f690a2d70789fd150d14e5825d6dc79b8f846596d8bdfcb04baf2371fe2e3f2b13be4ae7f6577c7546b210331283b000b6df51a9699cca3a60e1cc77e21c72860530d9cb14412bd844de772b678be389b14e271f0b570ad8a6c63377ca1b109f41bd3d5ff17e391225ae280402b562687b8f9ec459262a631b03accc671ad6f0a6f119a46a1a172d800da203a75be25bc368a60dad0e460e3fe428da9c1a2172f43c553333694066b2e3daa58bffd9c4297b6f8e4c74c14494fdac8337277ec5c4b7771d5c4ba4bbfeb81852af80acdc1c3084aad17ba4a7aedf13f32e172fdfc35a1a15e24d78322be6387297805e6b28e9df87871f837f7a780803983cab09b4fcf5b189d4e7af69194bb8b13fa2e365f7ce6865bac704c199d6eff41d921f916f073590950050d46d945ac3079ec1e8566f3171e434d658ec3635f72292750ece76c4495b0efe56ff30fb1f1e5d82036eea60c97c92218be5f7c2a211a327ae14b98cf20ef291ca0edd100d3c7aea8a018747e7f5473e7ca70b230519e8194facdde34a133985f9ca6d38183fa931418b5f0fd5e5ff2cd034352fba020a3d9c0317aa75c66b39ba598579b595948943c4988331b4abd05820017c0e3dba2d48900067f7d3d5679324fc7d292e72f5d373fb4baa936d6578617bb7032ee09703fd926ca9875a45a464829754045f1a121cf393467b376ebc7c75db6a1fa8f0130ce005e7475682b8891af9d6ce32d4e4926715f6b2215743c498c332320cf94a19a93cd72e5dfdcf029d4453e35583bf20c0adcb6ed7ab96e7b89ad9301e377ff821fb629e297193b31b60404687cf9a2821751461bec819a972c0ed3b94728ca14a97a3600742549c270085f9024b77b8313046539619f8fdc6004d3248416fa0abc4a730f205a3209ceab1ae13a73aa8844d81591728918a77ba800da3abd113ab5db9abcdbde7b2ad0ad831d3e8df385f3c970f7dc5555e854af328e0f690e1ff72a586885224c2433da56a0f23745c38f836e46abd151be34c702d38869fa4ad3149034096f6f330694f87ea6c8c7ef20c31f9841a1fcfe04f211af494123b77b556e21da8d41700fb9f0d599c6d871d224eb39562e0c6601bf10d1e857af16b6e2a86b0ac56f0bdfa2423ce228075c3aa56159fa9230262380d07b6abdd39b01e03914c64b94bec0a4615fd23d1352ef8ff6e61e9dd03c50fc32cd37f028459ac5dd0c88f5d5a6395e4b339fcf798a9f6b58b009d80c6c7546838d83c147a6f84c9441e2546e777efd79e9e4b3eb99cb63339f4bec685f89fb9186bc6d9e723d989c363da9dde5dacd12c34d46039817a597b198380255ce7731706e8118684c3be517e0edf24a82a8991199953781a6dffb51b36cbd27bb08d2d491164ee0b81ec175fc4e16b8d120ff145f5d5a980125e096da9ca7d1e1f4c24c603766f7f6ba9dc961b6f96f613cef76045f2c86155061c0790e0f2a3c5e22c38330658023b3f5310f18c2400dc97b8952e56582c9dbe99f3f5a494ceac5317dffca18d38e171c48d7a147823410e7ee0fd0e376afff6b3b7c28984b66960076e064677323e5396f45ccaaa04e2eb5776b6db43d65f6b7c10aea7dac8beec3b0cbe0fe863f0efbd235e61272ed99e5c31396c53e5d19388e69436bdca8c7c223aa94b430c32f7052ff9b38bf1c346135ff79efafa8aa423ea27d242854e5a33ddeae2155e2bb24764c56967190d3c52c61c0230d36c859660fb484cb7481a21b20100544355e408895f056563f68d5a745ba12fca45b7f851590caa22c3403079c7165efb19f2a75801bcdb769e976774cd345c24b38fe5075e32b5d0bfc42a46816dca2f7b89627a7ee22464e06c1515cb2d684869cc0055b1004197aac83b4b328086541ff691f5e982b44f754feeb32298034ab4d3f68f1cecb6ac068a2a4d9b67d73d2bf8536c77467ff3096b5e886309b09b3a04e269ccae54bbd5333287093aa12b2fbf38ecea902318c628182450b63f9be114bd94d01fdd6690fc2d00e84fc9c17ddcf27e523f1bed28c5ac329a19c8c72ff00593e35b3ee3294231b0d075cf107e312948d40b71fcc7da76510faa5dd8d3b592b0a8b994b4e0091e4c17e914c96a49f10051dcb02b75da5014b8a0874faad94f4da6c7cee85d3919eb79e9719a9daa931d5c8b85ff928d2300a11b49bfb95a87d98b44cdc6435a29fdb4d76a6ca24401e108732f1ca05363f8f2008c588a81daa8e8ac2ab7d336162d183fcf9a13a8858b4df997ae09fd9d13cef6d73696ff524046016f44649819c7e3a7184b41b9c7cfec900b1e5dce9258a567910943a8ec43590c02a867a50491ee66450f1e3a15070b70db3344429eac898b853dcf6252b386dd5ab8162b32fe534cc7b3c20b2739a4b76be812f832fa80895f9caff256cfb4e019d333313db6bac54b35f06682195fdf0bc4a5b75d343cb750f354902ee60248440fdcb3139c775b66edc396fba6d609beb0cc8797e0a1f5ce37177c3c2360fa979e35e826f00c4dc2cbc514a5c9646e373a5008309cdcea59ac48d56a8728cc077c1ddb13fdc4067d6ee3cd973441f75d5771e3d94ca8566a2501cf243257ddfc5546c72ba7bea425fa6c91f0a6147df2862fc82d335cbd6dc96741e17ee05f616fd4fe0f8fd981c57bcfafa57fffed1e038f77037be911783b975f33a7763c6280e2b32a8ede7cd231578aa16f1ebde00414fcf712d4efad412b0baec181759e6d30c73979f0160b99ac3a24625d381ec1055d77fdec17e33a2bc9fde189f651e3aa2a2265b88f4aec8343fa4dba272dc80f8ef0433c01164d408441313a1341f8be683494e44a5581607441cb7c82de16ea50594c1cf4909be0b558fd9f62f39467e4190964b39111c12c5f19339a9ac732f86ef9bcbc0c99f39e095d6821b7a1d50c2e1f17edc46eb90cfe8de7ab679e31abfaae4f4d016a346558fb60732a11ac753a9de1a1b8c9c7d6b905f0a15e317c899806954e87d7625d7f8a1dc62bc8a6911991b5d598d6e1eea418a08c054cdf122be2a3696179ff307b0784068f0a85e104e4b75f215daa91b8aeac0c613b45c80540bd709dc8f46902fc8e8ec9cd8b3738609bc6ba72d76d409a2a5b8a78dd4357ead762477f8ab54950a7582449044304dbb65746d3a57e406afc74cb46a12afb6543b06ec42bd1ecfb1fe08eb437a90b0917e4babd5b8792e1eb7a2d7000337005a330924d84145328a98f923ae348207e149514448dd1d97c5148c36eb5d762557f8ad17af46c2c3b5537c884724328b1dfbf84f196b7cebad5b39da7cfb06bdf0cf494196e38c92deb955457be622fef2d78c6c923b5c81b504a02e8b92377193ae3b2be6d5c098738e005be28b217583df998314e5d7b22b37ad1715d62a27eb15263811d70765bc5886abe7b902bb47d486a41f886928b6a79632344e1a5df67f41140db3a832981e9754bcd2e3a4ce914a98785de45d672bf88b5839b45b18966e6622828ccf713ca1f53e3bf3e0692005c56dfe8f73b36f70ba42e1a25c15925c51d5cf2b04cb613897077d30fb5bfb82f17a466439dcb0256643b4e1966e987f4233b0e50096c6468e5a08708ed67950a3153e4f7fcfacc40f67e104873ffb40c0739636cb69adc7e24477400c3a42b2fceb2f289f153af667004663f9de14664cf4ca4d3128a1264c9f57323b69492ea53535b5d32bad6bd9d61f05a5f57eeac7ec408cd0525f2a39c25cb116bd148ac7f148d3ed4171ebfbdf4773658787c8bfba6495fa100ddb0ac42d02a9810b78fdf3434793092972d3e2208c8f3acf11636619bee66215bd659e69f1e641617998ea563b4a7a5a436454f57555d8be65efda3e85930572c2ed8ad272cc4e0e4f7dbc30ffb9a1e1cbe87bcaac79c874e903122229a51b9a27efb49303c11e0ad92d5762cbf88a31a5ed91aef0ce9a0c588876422e1b3ecc9499c40a501ecbb4ef1c12f561ed3c7f4249f816c440a65aed707d3120e8140314cf4484223fa9ebfe0b6f0b8381670af839f0497ed8833d539dde08abab73318a731f42b0dc3e80b14b8c51049da37a0703f887bbd7f24cbe8bf29ba9616d62398df5fde1995bf90f89c83a657cebe7e804985766ab922239ffb83ec9314c915e104a9c21180aa50cdac979ce88887ae7851c620cbe9292199a3241765bbe53d12c97bf9021c4fae69d456ef907318c61a6f8bef4bc07b678c5036061d3ff2b7f5501e47072e9e7c949065751cb153f3c373bb89917d00be8463e6e48e0df256530602d5325dfe38099b2d4b33621f2c30ab909452bd2990831f040aea3f6f372172d967366e672e5d74d4118790df9e3e47a0b1622064b38ee51dfbc902df7bff5894480861a6a406005956db5e723f828a01b9f97156b5a07515e2db823762fd8f213f30d1acf508655cab6a92fdb32ac7768e9fc4ede9c54ff36db027d21af4aae09d3be341250e1fe90717f205299caf7c85b1cf96dcf48127a43d5712c395e7afe524c7e118277bcc5d0bcdd9f80d5ef91799eac2bd4a780fb2f7032f43f9c7a47b0e31acdf3bbefd6c5ff8b248d0bb99e9d22be5144614c91954c6b5155ca1f02116d946eccf48a558b800ae7ad250993c43c12be4f375076aa62f22a0b3ec562c0d1e5b0b6e3452f602cdebe90566fa9f888e00a172ed413426f942a51e7b69d804b688e08a24643cb9815b6c19417efd85a20ec0b3bd0b8aa00035149716e683389a6f384d03b8ac41eabc9f2a6895f4a39beb3487af33a6f4f10edb0c59bb7304bcef194b74c6d0b1dd0a2a40484fe66fd057ce2c9da7810f81bf92b0b1fd8c1a9b104708486a3aa4892ec3e93c66b53564e331170f4a57031e8bb4e7a544e50d08a2c8b15f4ff68a5fdcce1525b4db85f3d42158d59df876bf92b15735edab345d43f3a28024b30e398f2e2d05f4d2d0abeb96f5893555f64436e95e2383430c77c751e8904c8033515d1d77875d8bedfd6265594fcb8d14dfc7ca4a4170221f1e2c7515c83206577dae91c8f0b53196ad1ae505e0d4b986850ddbc94aa1ac37f3262ac7e4f48a4615dabf6b8da485a64b9b9892fe3a51d938ff38b8345bf00ac9eab71315ca546971164727d3cb871c7950bacec778b09c90c25d3bb067cc171efc293001401968d53f7dba512baba6fb09e550fd94e8e5e491e91b8f0b61312162f3e5a49b2bc435d87f9e3c9a0fddd02f6e4f59a1065cd33abca772d35a30615e2a450aab3a4f3fb4f5746f976bf4592045efde07e4e5bf1ae54f414b0738ed090caefb65e2ccb98adb8e229a6cf4525d8e0fadcbad5e472aa0e4bf8f14068f1b0935f2f763219dabb94dba1303d27da6c2523b3675c5e3c2a494de37f62e05a6b0ec736f365300f679bee913125c97b4e3370e91e729180629c2c3a5a01bb28306dd336a698ec36be30f9cffd1788d829334d6dbc6bbd1719bc93ba3c612d1f427e8cec04d2a9df745c7ccc8b7be141fd8e575ad323404200e8e98d3e5178491d637585b55125f708ba0abc7754f3e94709f7da68cfbdefd7af3be25700e754487dd51e0ecfb3ab2ce6159f58493a08806de9093bf77f16d72c7b2d6e20849447703aba464f57d6a40ea3c98dfecd06bae4ec4b1e64dc866ed19dd39b63dcac657694cc88198805647d4eba057fed246700480298ab5a90ca91a23ed3329a078fbf189426e77611e032166a15add05ceeecb03008a09e2be0dd8b66da5264e504fa99247fa194252f1e8469b638b156b19953cf1f54630fa17af359734035b14e322f32591b154e21eeaf4c6937622ccb2d3b06bd43bb46187907203e82ce6d8bc5f9a58732b2a23662d3fea304e8cf0263954cb0de48d88501f7107dd3848aa95fe931dc90890448b19812cd9eb6a5a97dcfdc8e36b13ff9c52e5cb270f0574a8ba0f6931258300cad84427e671db7b7627b54bef82c5bf3637ba4cda046e9b691f91e4f60ad9d45dcfaa42e27f9e553475f97b74b7234512dad0b8cc36f365484917a7428648b9be4dd5dc950865756b161f1676e839252b60694cf80f3306f12bd2a88d819e1305ea17f33185b84eee351763f041308684f3eb415c09a54b87514053085d027f935785d422a0233287a08a288771b6856bd806c6613f65f8f5bc3e604fe42cd0dbaf3bb4eb98b81feeb428aec5a79adb8c66305e9310c35adfb477d479edab3ae23ffa2aae7ad91c71bb8768ed66b2555ec43e9fa4009e3360bb4b460605baf43f2a62851bb27eb048458d0a30ee39e56894690f773173356324690de1ca5c848d7a8927d9d143725ee8be1ab9eee1f92fd6e3bd081b0ebd86e8acb5fbefa648a936940d515b1a24a73ebfa5d6d2c6cfd29dd404d83c27e91e108c354ca7ab47b3ecf8951cacce6941384aabbc19d20c32c6e29e812c8ea9f79f6243e5b9d96276bd9504a9c5c89669024ede26591f6fd9f974351e1451214064c28fe8b079c2ecd8f61ee1570ae59227e815d847a3e1f216007ee90395af1a45bb6fc40c261687f8172ad3a0127930e62ff93ed4eaecad3281d73d11dbf9536c861e2da8a83b49ba2ad4e8dbbbb45ed68e4327b45b3d7bf706722a04b9b7037ff34adaed5479c7b2789ebe93ca3e8b2c52dce69b95ec00805341500babdf47b13a3827a1acbb3225727432787e88ddb89bc9dc6f7c90b0772d56fb14a714234062ad8173c899248ed06c18cbcedcb61f9c5a6c5f9d959b8d7684460a0efb3cbe0e001dde7436c7e61542516d261a9bc18d1cdf6467ade50b43a53d1f613c1237347d2df6ea170f7baa6640250d2b472c16c93a0f857ae1cc8fbda803321169c26294ef7c3e86a2b3078cd627996a635e3cee527243393a455704cd2d1acfd13af0a510f2c6c6e63e9ffd8bd83f1ed08d0286af499d9e446111ca552f0d4583d94770ca0206d28aca9ff4cab398a163b88d6a00c1d36ad68fdd364d10739377492c9b33fbdb37bda6d7d7f70ebcb02e9530f70aaec56a7ee910620407b1117ac691f41c35021301d1863874172427d624b207aa8cc8484c185db743021cab09fd98b1561b54588bcf2fcab1bdc748a37d5aea96379c5a1857a6df6131bf06d9fb6ed5fe7345a113a38c3fba7d658578a858b4bebd3cc1f505ff7d872b70b8d8e64746c402306ba6dd45aca9f78e6f80e7320905acadf8d9198f5a8815ba7569ed19e8d0c6e6ea4b95ed521fc032d0cb5f4f01cf5f9a022300d93c3010062723c96056bdbce4d1137a6822e513ace0aa086e6d42aa99bf270dd865440c66d48a2242e8741ccb0a7e60b7869e3c0ae5954bbdaf232551211541e67ebd01bf18fec78a728559cffef9f6e636ddc2cc8ffbfd025c425986fa18bd2409a7382711a1248450861507faf6a72afa00ad3c26d4ab7e090da4c231ac650430613f6d947cd38e278c02fd4d0bb25fdba7ae7b08fe8b1525f0dd018e6bdbb8cd2b29d73e8a7bbb79dbecb39ea74a5361cbeb56a4737092b931004d10fd59613478071dc5ac0667c21209d236ea4049839139b256cab67ea9e8fe7560aefe14ab880a81eeec697b566b4d3deb3c381a732e28c67a2b9d61efe72e4df8da8b5ce87b097b892e356a314dbd6d70bf301ce4eb7444d5ecbd035890230cf23ebb67d8af024409657d35b7106d3ba1eaf329cfea84b406c768c3a1b9162bfdc5b39de38d32d9b4b60f5c3c783e08dd224d6650deb83205d9b12d6839a3428dfd655880be3738beb24b1f2060a3875fa7cf33eb4d3927c58b2ce2d06956578aae27f1fed701caa340bc024f6f5f59565289fa9341d8ac75294a7050a4835a88db3444874f350ba3e70400ffdecb84aa1a09d2155af7c0c0a593e1bd8482ace7ffc3db79860f9965713ca14b8b0e3ad420a1174501a50da0a125c00cd28b04410ce0000a4a18860d84120482385483f8d2254a93624008a00388548d34e9521490203842a4207d98755667879d657c76f743bedefffd9d73eeb925f7dcb72ff1b9675e351f3be376ecd2f6d413bffca781324c6c6913ff32508ed74c648a5f7caaa8db846e1a61c1fd32aade4168cfbb68dae8f1991980226c04fc90b7f4f6e1fe4c6afe311b29ecc16f35956ea0132554e90aeef3087f7a6ba7c3ee0f016940f8a89804a63e704f2083cefa6db0138e42b40ab170328b1863c0a4b9aa364d8040cfa9b1d30ac628d15c36fbc95eced767a35579ee0e2c3fbc5ca6e2926211f03a85e11f392afef3c1fe83de0d17fa97847956b41711b5a90b4703cf0c8db73ee86909f0f40c76997cee3e63caa3e570991d10f24eb0b238ae967fd4397d0178cc319cbdb7277531952989d3bee5f3b6585e6a9bf0c36f8411bcfa45020e23e2fc9daa11ce072543bc0e5e5b625ff8f04aba7e378fed4a1be205ceb5fd6c20c9dde4e60a3f22da636c16228dc232db0970a427d7311eaa0478ab2b61466b3e0e97059f403a2a56ab9649c4add25c69f66db1b55d89d180e2c373dfe465f9dd6594c75cbaf70a070304560ffa891e3cba5ef6fea71346fbe70016febe436bb258a98fa7b9e41d395fe1b8753e8e30673bd3877c729eb1455b2ceafdee2f80ff705aac562d6d14be3928f15680b4f444e34d454b72172555801b0d05bdcc2a8e099303bc8ff23bb314113c3e8ec0a52d32f24acf9bf4f98d8b4a89f783d63ca48352bab6c5a82d9c5c330f6e6af3950da507a811e0febcf36f5283f2e7f60e4a7a6039260f523998504e80ab34de5004e1c577b35c81180f5eb6018b65d32198b3a8054ac4661169e9658a3f0bc30fcf92e010311529b7370acc2f732f92dc9572f527f2ec9036ce1df70d25b671344344d043fc175c94315c06db8403dce9d7a98aa05b435e2334c127e3286be4530a6a48b5c37346d7fe8ca5aa7f3710f42aa082503e5ea11302eef13d22970a9477fa7efcb9d07cf6a2ddbacd34d2b2e0b368e43f451b921b24deb30b092555b6bf2f612294d9dd927fae2576e3a2ea1638859a70808904305f4dfc06d248e316f36fa301ea58a7b0277a6df6f5eede71c865d0055e80ad274e65fa7b7bbe531a638a289130b6a027c793c79791a51c746ade25a116d3af23214d34e3cfd77e3966462aea29710baf20e15199530aad024b52457b8aba6b2e4180c8e3b9f5eb52482a13e2275f651c2a1a2cdcaf651e3b4d8b2e32436dd81ce2fb2c8adf35a908c1f63057d201f2540af38273a4d2cd061d3c5a75c53dad194179d274a69f02a0812a09e15ea1e9b8826255def34f68f7c944332c4472c23872ccd1c686cbd0eeaf938201cf3ca39f63fdcfe6e05a6a0cd38955c2dcc68714bb288f52567203c97002470960059769c3ed6b4f2cf0f6f1f9ee02e1c834c40b54418075c4116936cbf3eb28debfee5330a0875d0d48993b873c54a1cf9de43fa610efc5e6a2dad39d708ddf8d18acc769094035a614456e0b8847d59df9e92224852a87435146c8038b1b27f854320c65604e5fe3d311e5c439cf42e9885f11991b6fec5e523699a4b7de3f862468c19e85a8e25733013d78c925bf9881e914ec7707d3bcacba31c7e4c865b6e7ade54f8fa692f6093329552c8c8a7fd4292c44caedc5e7caea45b65f4c39bc246c2fd063eaea6dd21b6ec52fd91c9259a40ebec3bbaf6c78decdc5f4cb94bb756b3e9b9873dc83879291ff768bfeeb87e10c319bc000d125403bfced315d68eaa08fa4e11bfa1b9b44a3ba6b94ac4d5fce1a0e29c72540b66b025eff801eaedfbf667b476100c14351c85221084a185d0a0db0d798cf647847b282f0b1b267b7b34a99da6a2815e1ff1ded4e75796d704d239dde60aff81729cc6cc34f13456adb6a101c4320bfa525544fd574ec733afa2ef4c0d101db0c3213d057261e482a30b8d733cbdd7e63645dd45662dca19bb339a07ee87b34c896d8b9bd28dada95180de812cfc81b85943699af88e178e05c3cc26b6a2ef3c8e7af9e1dd0edbada32670e1c9dcd3258708cf33525b215dded3e372fc1373716395c599f31e52bf890eab50ede2693ff4dccb355e24111fa5e29f37bf56c0c6b7f0306c687f882acc19adf9c27f8ce19434da3ea0911c7027429d57338df5b13df3be184730d6202e6c5d43ee7b0612dd84ae1293708af067832dd8f58e51b9d8b5d579d283569dbdb2c56f65d9a519bc08fe6ea3ed77872ef301d8f562e2dd55a7dbb9bda3ad7a81c9394d4b5712f1680cbbec1809604395d299af0d8ffa28fcd1b6c4c7cfbf38754214df6fdd0d9e785db625cbb149387ae223be6b83eed685350ca3ddf283d4f6a36101752852dc84cd752a256b70021922875368f28cadef5a5daaac9ab0a0c8e2e88d00eade8f6697a0d63cfe3a8051b20b37c00ebff1ad8b093687cac6c0b5e57c624a5b6f2a21e9fe313c444b137d7383974185e3f781f8ed20f0281aa40bd2010289765a7b714760ae503b1d0c2d82b8b40ce0886e282efe176bd7bee953b3d0e01d1bc02d13f090281f6422f9a60305a8bc54a7f19d341abe21365363530d986a12f2babcb745c913aa99cd7b3563353553891a777ea02441df4a919d93f5ccd8923a7fd71a445f5e83681818c3300035b1fc282e1ba507a92e182dd03304e91b7df97404a51d36a5a7ebd069c3824850cbbd58d7b84bdadd0e3827260d97aefd96a010b51b6821086d331c6bf3301fc93212508bb30e44e0bb59df2850ae4d9d39e6b774702dc9a8dea1e9db1bf1006cb69dcd902844f1610d9c91f8c8d42d64ecd23ac09ae8f107071455ea19801fd9dbaf0853f7e6748be899aca22f4bf34ca6d01cf897779d00406c45430d13b2a0aa1f3cecf4e1e2cb49f5e74d6f8deb171ee66fb7d7799be8e772d80d27d3c9916607f4983b401b9b18d37bb35067f79d84acc1b136acde02babb7fb5c10200661c1c7302d7ffd81458fefb6149de878e5785cf4c60dd9d8d56c9ac0cac70d8d0ead3f4bb5ffa582b089ccb8f779cada9aca67cdf4e7529a0443d65f757413200580611f1264d3353700b386b9a8cbb1e3ca740feb69785b33ba7008db8021ae7b1bf56eb9320fa333f9997b7ff4d7701b0413f4a5901db4eb150a4fa1e90337632ec925adfccfb971c02db6c89998431922c9f89a84c10e2877ba99b2bc2fe51619622a6b7b1e837b01284958404585b3ca25f681c9a43949c52c47355d03ff7c5ab547f3224b9c92ec676e01d7afe1669f742be5f7bc8276bdd3d46a07301fcb70561eff3f705f85ccaac124b544db6deec856f726372fd0d9750ebb402c391c644f944faa6fa401ee37ca2f7c70eb9da408ab17c48d3653f720dafdf1232f249157b58977f7f5c632e223b526b76123e75dbfe6209ffb7618ddfad35503708fc456d8fa9acd9cdfd43dfafe26d12a6b7c1faa111d2641ad379c4241ee08c269e55b5c76a159359e36ecd034517e164a78bbcb443cceb888c36a3e472100ebef010000ffff0765d91800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
简体中文English繁體中文DeutschEspañolFrançaisPortuguésPусскийTiếng ViệtTürkçe한국어日本語

OKLink 是多链区块浏览器和 Web3 数据平台。Fractal Bitcoin 区块链浏览器。

浏览器
LitecoinBitcoinBitcoin CashTether USDEthereumEthereumPoWEthereumFairEthereum ClassicTRONDASHOKT ChainBNB ChainPolygonSolanaAvalanche-COptimismFantomAptosArbitrum OnezkSync EraStarkNetBeacon ChainX Layer TestnetSuiDogecoinGnosisCosmos HubKaia NetworkRoninLineaKavaPolygon zkEVMScrollBaseopBNB MainnetGoerli TestnetSepolia TestnetAmoy TestnetPolygon zkEVM TestnetMumbai TestnetCantoManta PacificX LayerFractal Bitcoin
关于 OKLink
关于我们用户条款API 用户协议隐私条款
联系我们