結果

問題 No.3050 64Kiエーカーの森ゴルフ
ユーザー letrangerjpletrangerjp
提出日時 2019-04-05 23:29:45
言語 Ruby
(3.3.0)
結果
AC  
実行時間 88 ms / 2,000 ms
コード長 39,416 bytes
コンパイル時間 61 ms
コンパイル使用メモリ 11,608 KB
実行使用メモリ 15,408 KB
最終ジャッジ日時 2023-09-05 05:29:46
合計ジャッジ時間 6,546 ms
ジャッジサーバーID
(参考情報)
judge11 / judge14
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 88 ms
15,184 KB
testcase_01 AC 83 ms
15,292 KB
testcase_02 AC 83 ms
15,148 KB
testcase_03 AC 82 ms
15,400 KB
testcase_04 AC 83 ms
15,192 KB
testcase_05 AC 82 ms
15,328 KB
testcase_06 AC 82 ms
15,204 KB
testcase_07 AC 81 ms
15,184 KB
testcase_08 AC 84 ms
15,140 KB
testcase_09 AC 81 ms
15,340 KB
testcase_10 AC 82 ms
15,296 KB
testcase_11 AC 81 ms
15,076 KB
testcase_12 AC 81 ms
15,208 KB
testcase_13 AC 80 ms
15,156 KB
testcase_14 AC 81 ms
15,208 KB
testcase_15 AC 82 ms
15,400 KB
testcase_16 AC 81 ms
15,324 KB
testcase_17 AC 81 ms
15,160 KB
testcase_18 AC 81 ms
15,240 KB
testcase_19 AC 82 ms
15,188 KB
testcase_20 AC 82 ms
15,124 KB
testcase_21 AC 81 ms
15,148 KB
testcase_22 AC 82 ms
15,248 KB
testcase_23 AC 83 ms
15,396 KB
testcase_24 AC 83 ms
15,136 KB
testcase_25 AC 83 ms
15,296 KB
testcase_26 AC 82 ms
15,204 KB
testcase_27 AC 83 ms
15,220 KB
testcase_28 AC 83 ms
15,144 KB
testcase_29 AC 83 ms
15,132 KB
testcase_30 AC 83 ms
15,296 KB
testcase_31 AC 83 ms
15,220 KB
testcase_32 AC 84 ms
15,316 KB
testcase_33 AC 82 ms
15,352 KB
testcase_34 AC 82 ms
15,196 KB
testcase_35 AC 82 ms
15,408 KB
testcase_36 AC 82 ms
15,276 KB
testcase_37 AC 83 ms
15,144 KB
testcase_38 AC 83 ms
15,152 KB
testcase_39 AC 84 ms
15,192 KB
testcase_40 AC 84 ms
15,108 KB
testcase_41 AC 83 ms
15,368 KB
testcase_42 AC 83 ms
15,188 KB
testcase_43 AC 83 ms
15,240 KB
testcase_44 AC 86 ms
15,216 KB
testcase_45 AC 82 ms
15,408 KB
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

p ["99c9672d348903c9a18bde776f61690b644f89b1677dce51bb01e1b8e6d62477c8b01a7672500240e7ac2a32ea0496d276db7e34ce62bfa529eff49f79ed9b81f29581792f253049db19ed3fa23fdd51ef6c1cbcfebfe6b6a8da425a90a3827330a0eaba203a48f914a8885c2793f5886d6eb1e78f3d477de56faf4dc3b511cfc352db64e7dbb1b622ce4c6334d0f6cc781e7e3d26b5969050047e94de6d3ada268e0dfdaf6ff22f578d518374279127f30fa213c51d2f4bc0a31f1509147c5e62b19a345886a47c28b43f281cc288e8085a809934e0a8f24b6929ed7209cdc90bd5f84917e32d052ea147f5655154fd595d6f040c14ef8789d0160010fd4800987cd007bc940a109b4f795ca8e840426c882484de7c1e9fd5ed9719096f6fdd3cb63860d0d0b6e8d66cae301d95239090f4801df062f402a4ff480c2cb4056d170c22147e6c60a822dc34d05e184a56c93a136c681e9c0a360a42065676a0ca3910e3789b8c3db6f6957c204e1c541f1264851a0396f3369dd0367c483ed04638ec32de7854cf6c918246f414fed68830d0120ea49cb6acb353b5b80c705a63aa4e98aa4a197e8038c43bc739b0a27c36a0be8892bc38fecc516d37c9059731f30f7214daa8ba30e892ec40c46c65513334f248deeb96986098fa8946fc466499950bd4f8340f57d1edcab5317353b988a14d9bef799af1f3f335bdc48d05d76f54ea8ab6293acc8a02b00c20ee99fae08ec8ec16d2e8ed08448aa26d6b736b92af478f151798df234b89dba27b6dc3cbfb582fa76fc5c2b48a6833847cac884ad878279ebf94da6efc58441a995a82dccef7adb938c5e20dc93fdf998f1b318dbbc923b9d117aa6b8053858948ead8aaff66aa620e20e43681ae998a1a3432a6dadc45ccb8e294532721ffa4d3e51b2b3532356b411d613c895fcbf503ba0f39df1fd0e8da7ce7a400006af688a22e497a2ee63a9090126aaf56306c6aa18b93018449d3df25afe2278d35434f74c751cb037dc6853b9fb5e7206b48cda4bb34e70249a2e7ddaf6407d8a7f8af34bf00f704cf9952f7777825cdfe03656c9bc5bbf72572bbe342397d345b0f660d03f41bf2978eb720aff4a93cc1f5350ed3da8708dbdec58ae7a4f319b4d9811e374902d12dc819704ff64dc84d63ae27933899fb10b7c9d4878e211c911ccfc42d247294a49eb5e681d297fc61de8dda3b5d9609e73491219045992e8d2c8dd635cefd9f1887ed629fd3360369fc9d28e7d449d0457e170227c30f80a5e8f5ec556c4910e138c1954c7b211e97e9a41fe15efbb997fbe9806b57988def525d53a059f514fd6eb1a285e83df4a76081e7bd769136d588f1e207de315c0571f2359c7148252831fc5298dcc48e660e62b78efbf2ad2e77987b53c4efded456e7c4ef6a93ae4230269039d88590616808e4ed48055d6c05b881ac9d3ec5be4882fe6cc4503074ef4c776ed1babbcacb4b5e5b8f7171a16269c1a8cf11e9fd492e2b41eadd6305b9f7269b0aded2806d4e926e9681d24f9f687da5669b6eeaf634d5ce96be229f10f371ef47a12c35d97aef5327cfc19cf3bd009d59b7fbdffccf4b1a37e6c3b2cf6843e6d6be7ae67c340e2c69c69db45308d958bdd540a562c036d11c9daaa34eca3a5e20655807a0078cac4c9f2c3b534c5bb6db4ae30e0b68dc888c02d296c8068524851c5f40c1e2b9dd12696c9d0c55c649fa3532cf557f1c43a091e6d950af50e5b25d3b6edde3445de7c2219574eb27a5b95d8acb5dee8779fc63413a63c186b18ed76e993a894ce99c6909bd7e039ad936fd4275f20d8a8929fe5141eebf7944f1d5de1518fff6a92e7d6318578f6825c3022797961586f794eb3a31842b28cc1aceda6baecb40d1c80bc2d334491d8c917fd00901a6556df8a5d0659afde0892f4e37613edb7b9c23477a3344c36413e68762a3566b2f4b0471e4278677e0bdb80fcadfd7d0c1d546f7db0005310e4bcb05cd590863b90443134e1dd5142fdbe21b2225cac776d7081744c53fc122d1ea2f32db1e63fe87566b530b81e32aff09272f151cb59dc7b75122917fcbb5d738e305fffb703c22627936f058fad47e74de819ad4e8842464c6c4d9444c8ceea1a37361565907bfc9570c37934399cf4297d9a75bdd806dbf0b697860885e6dde3244d6428a94819eb1f4447aaa3c4230af5c58b404a96b87e8fb166f936d0719af0929779b25e32f8329f2fd8ca1e363feda2eb835306876fc88c282ef4e87726848c0c6a0b24fd6b6be1a2b4765fd807501b3ab892ec9d36dfde9ccb1f74f513d1a25f5ab175cde8ad84768a44aca021e9e1699f25a4c1e88629e9e33d2d84a8e1917870fecbb778b4de7969f4d0d33f3742b59e36f9fc2632fb7d5c016ac8167579808846ecbc2c094bcfe556634282ca173a3488670526082563cc6f0ba44e17d5359d977f58b5f2264d2e6784a24d6e8d4d47c9b498524f69c365b025210224ad59a40d67c07bd959ca488184a526c72d47682502cc85e879825fc965ada605c3a9a0a9c08368219e4652271b4b112aa5734baeeaa34add644f9f6ad28191ea5dc846e2696fce2de9aa01606a08952e7de549cee3850fcd418549c4e0c7c18b903077cba1080c91c0e5c0a18b7b8949a049d7befa87460a8b234beaec61a70b22325adb3f595270f81580604beeeda06e40ec49e04172d49bc4c5434a188f0ac30686f203c1c58b71d85f816fc4d390f23ace31be1b5ff428ba7b1114b6c5fa5c59f375a276b9d753c9c7e24bba8fc345e064afe7c3f60d684a60430b69eb33654342e3b69a93df8d191b16f116645e9a58f19e08ddfc9cd993af56d51531a205a080904d4581892241cfdc66d289a3658fc40da57f27e48ea9951f34c5fe6b389bdadcb3513ab117ddbc5d7a1e586a1ecb5411b1c6a1c06619a4ec202a80c7a632263d61654ba667a98772830fa044de983bdf6c1db29914f988b79e71bff6afb858d7b55789933d551402e562a8daa18764eb8322438f7047818c400de6ec8b164f8f20e93b18503aae38129ab4d04b9279f3519766d6f09495be0d3ddf907546af26ed5d2c83466377dd30c7ed08d7be98ce05278770c4c86b2b3ad37ec6fe08f15c384f3e836f718624bd6f5c3811c4d18156f514cb4328a7782bcc29aa79d3346346e157bb934a6ea1c413430f8ee912f118f20e75767175a928a4f65030a104ad74d53a30cffbdd1496ecfe40a6e6aae0920740cfcdd0c4dd69a52304d9a4c4860042f825f87176daecd658b8de890e403816798e60c15ed69450a794bf5ffe44c9ace9f6a48c6f627072f70c8282169716486fa785ddce4ec722ff7bbbe0f1e57ff3ba855a490d936ca55d6add1e9ba15cab99d1d5836b6d69166d0044e979307460e4a9975c9f00c96e06f08d4be2afdee6d3fc8870986a9162c065f4c819234d2abe0fb5b48070b206bfc8aea33e701004c2a8c7da649b3af9cc1ee88ee0e4339ad98f08ae1fcf987967f5984e99ad65e37382146567ab3f2e3179e5387321f045f68812a373c0d204171f7f5b081c3035d249500c778d9cc7f50d9c33184e3065ba7b361165b915f0df1f4cf85b311400fa63373bf22539e3bd811baf53e0da3d375a4299f2909fe9d62513a131ee362975cd7cdba651fc4c7b2ea96ad5e7f928a0efd4e9de5eeb1b956511acc2c5df1234602ec288fa229d1074c2fa656a8981d273faece54e74207e108a12b6a0b72885279669bb2d85a8150a9c57c89c178c9a638b4461f36a242f0f54da574e2709bb72b0a8a8014895cba4010574b97ee2352a3136b92a74aa63bc0e0637061f57966c9b2b929694aca9072752e2a10385185c10a08623f6f17e6204ca037a4faaad8d32d2793aed349cd951cf86003598fac6e50c98341dbdefff75f874a858852d216d6dbd05a5a56c16e2d1850e06837c2c0181040057ee9bd8d592041efa96bd2e65a7b29efba447ad753bfbd7879c52365064e2caa6192921880f597b9fc288c17e5f37a6c70e84ff07a82185f99471c4f2cf7d9bf6e893624291a48cd18a56fcdc0bd8059bb01863884c2b7263e9e9c71b38d763e2a6bd1678aca30b8054ce604fc282b74a14523c69b6ef9a0c7430d371f96f9687da49d239b7a6902d563d392908aa161c3c58b69d460202173cd4143cf2a8ece2551cf62afbec797355cdb0c473001578947915267da797687e5c1b8914890cc6e2b95b750ee4ac70ce12c5ca281fc3b76ba2099db65466c24baf152ee1a96181b9c0780533241863fd0b3548728e236d262f152aefeb47b9d4bd6ccd8a1c68b7afa58bb7a8dac14160de355d45a928a074e734b81ec83641740e5759b09613ac3d6156a87c9f94c8da4a1e73f1ecc4a6189338bf32b2452dcbbb7437d43dbeefe2e0dfdd7f8572c8921d38ec7cea9cc6385b7ed0f4a9d94cd08594767ce996eba586064141874cc4eeb3d6f11f9733d3b759442da7472ec76aed82e73347955cd0e93e8cc05c8c344477cc3188eb77cb17f812aabbcca548486b8bad0d49e55e76dc34de9dfd59334baa67a26326a42388fe0af5391dd4dccb5d7726d7029169358a1cb5403f195e77978296475227f971f3aa9d0ada86d7050168d4c49bc0bba6d13bd9263204bb8737d3bc78974f18d04fb5e7b682d368b23286b878b8d496c4120b01e7e5a4eae30c05b8fab6d319b7ddd61b6a23cf2c0b63442d644033615d909c0dfe6b4875c6b280b5065e074aff635036d842faaf840b2ec62e45a0cb851c1dd8b51bdf35f4b5edeb85c48b8587a3e5e31fe518b6f44b9681d76d367971b9708e12e7f9e71955bf86b4ceff3290e5a8a4319f98dc371304eccada7f93783b99e7456bb09f13419e4037155e6ad12cb121d3f235fa138c7744f94ef238d5a478610dc9e813ded7c125671b613a24e287beeb532e63ce383af2e842c54295cf63212f68fba4d0455a6cd32fd48ddce0f6aeedae2484d405e2a7cd12d411a44344b44c5908c46f5088fb82caa27331f74468ac89df81f21c97a6106e76a1535e5398db0d72c6f9c673b3532273e171b19a64a36d7959523f3233ca0bca7737f87df71beb8c26f71ed8219d2211b4fb8e1bc812a4b99a9d11bccf18e131e8db5cf88bf1cdceadab8ddc0e048fed14b2d1e5c462f25d3a814aede7f26e0b6961fb7776c33280fcfef4cb154587142eeed267d9d15fca9a0c1b19118c0166c0f6878bade91bb85fc92a83f7d4334ee328a0926d8641e0dffcd23b8f75747af440a901737ffc800649721b327107731f565c2dd00fe5eea02cbe47cbedc13fcd3b25856f093da2c54fc74296abb67737d3661adf3ad1ef0aeab7f8362768ae511d95dc6ad37c1139c801a0417047006a6d921b156da8afbdf33c0a65efa751278b01e4f3587b667c64b05f3fc0b9412eb682a0792e9278972352269c3997c2e8a04818824f002a13d09f8182833b3c3b8a8fe9a9fd604569acd66e5ffda9369caf16834fc075a61bc6ce823802bdb9ecbcb4c03162658eddd3b9e005c9e27ccf5b177b6575ceeded0e52797ea585855889d2740bbf53c75ec8e0cbf72598886d0d7de07ef7c2fdbfa9306cb423f200d86a1626f8b594f4cafe15d37d2e526890ab3320f9e77fd3f4099aa1535559f32fdab433f0300ed1f61fbd45142b12d35b833bc796e0790153c2f9191ffbc3739875730493c0becf50027fc2b70abe5d021f3048bbc92544988fb9cca54a182e1cda8a5b5e6fd94e0727b57b1c4ae262e0964c5d7d7226dc88c88a2e3edcd30863a2faad7d15ed59b9e73b43030fd0c677c30f84150513dd65d916491ea387098f7fca6666c7f1b974e809e45812502a6400aa156ea98d8af595b4aa3cef7b1c362ddbe48b932546dd8ad9b2952e9eeb1c7ed82466804bdf452a8504bbb9be816c4d1b90182e02846df5eee0e4cfb8d479b1a37adbd193a28da6f976f46ee5635afd5931e4bef0b3f56e79c8a86aa72b12cb2c0e6133a1f243a54289102cc103850235689e5156d9c891329ffcc3e784fcb972064b48b078b49a071ed1fdd8abaa018b974f640f4bf39dbd2e2ee41e3ad824c983a37061ae66843ab0f480350d7f35bba0f5e46af3470cf0c0d21710c41a4fdcd2926f88c107758ee0284736ddf98803835ef69ded60c6ac5a2524c1035e19f71ee41b399450f78cf19f9f3c3da2339b56bc1d4c9d76d89949e66dc6db41c6a5ee28616fa81d68608ba18f20a568d3ab0229a0715ad7b626f856ddb7dfcb5878115cdd6cd471d5dabec7ff565834e7c8ab603fab4b8b4b2ec0cf14665a4deb260d8544851d0ca10220d692f9ceba6234115f15705e52debed43498f491db6594c49219f8436f89843d41262fa0464663b12576e2a4c9622ca5241d220b288e5493b1b488f43c149730a7b8fe32913ac03c1c5a7f7b2e3178555c84c663e03da30c0aedca21c3261c680a828f4144a043f446c0c2a8755496144a1bd75379d1e5511afefb9b8d1a7e52195f255c57d6fd466b833d5c974f008a67df2b40ac4be5b36f8b0e847ad31f43e94d2dca62ace86383e30d7f389f319a953f1a5e2f0fea2ae828c3acc34a04cb1ef6b44babc2639ea560a320a57da38da34c99f2fb4f86010a6a29ef89606fae00efe64b98047fac8dc16f0106c2c54a0e46ae4f34e87ba43427768a8c992804a98aafbc4f6e71883d4b7a4f7d2f802da0c9e586aa2e4b048ce87267554baf66690d8fa923e74182660f80c9bf199a8e60c805bac1a0e42c02d98f06610d395fd9c88647c22ec8a10965e288a1923db7911ebcd4577b466ace204e2d26ca634968c457ba77c649c549f68fc02706861b82c348001e7075806d4c3eb5111940d398fcf19a66d07f389357481136bd9d90a8d71b707d8c26ace1bde38d2a2780edc106fd40c9078d89a3aa08b04202ea275afd7a7988f1303e537f6fbb9a34f7fbc13b193339fcad777ffc1844830d8df2802e0320e623049eef58418ba5a245ef2f1a66468cc59ef2ff00f86cb97d1638d1f3f8b35439da7ebd75512ad34995f6b7e9a52de2f062caa147092ca43fedfbe14b42496e8e85194169a6e93776533f20bd9c36b29cc659935d3e19a8d4b7f6d3f741fe19bbb74b8daa85d8ce440528eda36347fb85a98a2fc24fa8619a62460320d33e30d16a97387d173ac67d729956792f3e93ff771d4cd3f337d7df41174f50ca9f8bde20fcef7a11be03968c18c311433e47960816dc80f99eab38d409f499c87939d719d4ecbd7f0112776b1efd8c945605d66876e991429cc2b90612d01d21192ddfc192e591ebde899cd0039d1b62369de15a5de9dfc8d5a5d5a61e736e74b6445937883518eff0eaf98091687c897603cc002bab3da49d8cfc8fbf66d18eb5962e12f488df9c4d1712091242b6ebd4459eb508f9d32cb7396370f683368df28175cdb2eb996eb330f7493a8bf08d770c590d35c93d1c6eb1bc0d509fa3b8982835745c52df0af7bc2f5011cb3eb7e3db7801fd6411e973ca7dcb50c4db3f5e24b3ecb7c7f0693eec7101bedce19faed76dd9821faeeda0c4e26881ef8e7aeabd05dd43bc4dffdc0116ae4c2954c6dda99beba68524857c0032877342c98e79cdf11e41966b51a7d9a6580e0302632fc16c4e6b74097dce960372aef4524954bc9e5d7a8bf497047b9d7f1f166331b646707c19d7518c9fe24e290f196aed03e2916b3734a39759aa77edc5a1051fabeb4bee9aa6dadafdb6ff61319ca878b69f381b4dbefae5f1dab8f4d020ddfae03346b80178833383234e2580c72b6fec9668d8a9fc6c53cd9e3f40bc2083e6b847762a5d64282b260efa821a809a410244d48a90ff4873c0ba083f2fbf60c425c9852103c6cad70355ab31615f285df0a7b5449a047e603563fcaa781e38c21f48fee8f948738536aabe33ca99d9e43db941149a4b7e58bb3054e7b3dc46b93fe393dec7b8f16ffae632a8f6ab7281774d9b1e9de95ae13ceefd6056a7f7abb1d4e39c94e43590c3ddd7c31f41532f9308917947f877c316bf69b171c756ed5883b4811cc4908be428c62755ecbfad1043d4acb3e614904b1c7143579ceb9ad22f948336a1d76552ba2b769decfbbb0bf911a5de00f843d8e89b6a9de4ff7db240b201d56c568bd1c555a053fa24d1fd075b7568da9b273f917279de0b7e146ff7d982bd11267e182314641d285e67d4cc18c399b3192cf16d18a35f68b82212645634fe537dc473523c7a596e9bb175dbd3809036325db76ab5daf17e4102212ff0a441482c0f8bc4c83c8ecd26888c496dcc3a8a824ce95f7fb750c51e7b375bf3663258363cbd86f11a72ff11225ebdb497ee4e2d2f56e0cb874ca24d8bb928fa802c24c681044c31cce30168f49b130557289e57b136dc7398ff3b3d96785cd0b3207d033c921e8aadca8f9f4deeec6d4509a61c21da2e29cc6b6c202bf1a486618876fed1106bd4913779d44b1cd89d73976bd27eb35117c3d998f2750924ae4a14840962a4e70ce289bb4f25efaac6a8e42b992fc9a068157cb632e73eb0bf5530cefab79f153fec7b58f3ff3501b8fc3411c5814395dab78aa50c8f7500caedc98b5ccc4fe6811d17f8c0c90c84230e8ee78de24ea319b8fc5edc7513587d45e94109664b6f87a18de2c93bb112448f8d8fb782e668a9431b02834500faf31e07ab8a68cd02604021c7c566e20e097ba79eeea64d05e2280f8bc7a86f4a817feb94cf1f6af30bccfca8a46f662cd205ab7f8b59e8d40cb627a742cd006e07cf8ae1c4ab6d1f0db3c7c72e4eaa69a3a02925ecca43eb4ade1e7304488eaed32d2ba9aaae7de88701cf1319f983244aa6cce807ca0ec621c4b1b791bf561237971fe98aae000d4c4fe9c8c308053e709c8be84063926fc8ea04a1b963062201b170d805c589d29d3e74e4bb7a9cd4308ab4dc94fa3ee1b41b1673388872bd109d8284e64fdd4a0208eb208960a35d6e6b2529030c66ed94a50343667b119b136d9f9a963c57c75e31d812942f1a765416594e5d9fdb398a884ccc17c8ef0fec60e1403c60790801a1a0c16cef38adc483c1bb349680d6ee90757f9a335379d791da329613f7b5a875c1be36d060632d65d16dc56bcc0faa671da756a9814c8b21cc8a724026ecac905eb699481f3dd7ddfca070b234d93e0635d55e71972710f75e9146a1ee60b421c422e5ce80c4ab5de906e80645696948b04949ae6934d311fbc43bd151bfd6645dd9b9bd53c7d6b49299ffe6b2df92362c11aadfd9f4a8f22d46f6060de4ce4d7c0d44d44e30919086ba8265cd43b0fff9e6eaceb2db5f0d1fc1d8b0f3c68228fe177541a824aed5ac3a10dceefae8c31dc1686ea08edb8c471d4a9150f345bf483f6c7c1776b2dbc09c575cf8292360967536b702fa30d2dddae417f38d3a685c639de59380762f6a4c844b10221e631d03f4893a88fd942ad99258bd3fc9fa989f76c84a4ed8b13f5b899fbbb9d47223bc26f9a539fd15a817a8485c084fca02839449013e0b107f334853c2ed8246dcbf9ce4ed4bfdd0182adfedd5bf73c94d2818529bccaea9253d255ab0b0ee9a650370836e04238e7f09017501b7b1d6895003707b5b7608b3579bfb681eec6d1003095f07739657be83fb1178b754bc5f3d4732f93ff375b6fc1387dddcf2dd513613746ffdfb3fbe591eb4ff4d77fe7a126a962a8abf22079dc6da373c3c8c38395c594f9fe936d7b009f066453ae520b1816df2c101b9e4d0f3550cdca9e86fce851969876a2598e919cf6a82114ad7c064ee4e9e29e8eb4e65bfceb5de38e117804bdfa1e17286e39501add0431a70186772473b935938e03d537b3068f2e8aeb38d02f80c787a1c79e278db9c33b177793345f95c789ebb32bed9c1515bb0df39f03bb627795176d51d3e3f7de2bd76515c69f3a6015c638839ce5b1bfe37a4fbf97053a93865125ab2addc6184f609260827c078c34af206f3d6d2869b444402efbdf63308e7a09816b3ea7c6ab178d9ab02cfb310f5efeb816bb7adb5dd50a11fe88b9b4b0f0d008b53cc87f749145c7108d6c2ff28b8f25bd15e49943a3b9c4a8f86f518dd70413f5e7e325eeb14f14770ea5c6c1bad544479acceac26c25fe89424d8cebf403e433c57a613fffa513202793ab95c2320af7a9a98958151da903cfce8b1a651e839f19d28b1ea471ace256b21c650c5081f479fb13ece768d06c3a71ab716cce66fd492f88977873efc5ae74c8a14da532362426a52281a7577ab79ec06bd4649a8c6c7b98dc9100f7e339345b603714639aedeadf30db7336271ca37a73e21bbbb04ffa2bbaff6c73354545874ded6df969c50db59d1f2731c379fd6f651d9bcfb9a36515ba196e27f2fdced1a5769d1cabfe75c681d96e554a4ddeed2a29564ce61e487272f2c269cd5931a2352351173cd0c86ab2fe080e4c346ff0cca74204fb88551ac33475a87ffc1deea356aca92e8ec73e282670ca16ea6844e0335bbfcf96df256fd58686da9e2c363e748a57245f2c6318cf780745f85548773a8178b5e3fc43dc6970dfe02f2bcdebddb7578b5157258559e7fd8dad7789636333c3a5f99f5f33d9d6d9f8cd0039b259bbd827987b8e9f84cf2d66f52cf36cd18a191739ad5a9f28c5a98f2113c99adda6efcfd7b91bfb82af244b7b91832f6349f8d71553c9f4a938b87338f2e582d301c7296a2b9d590d6b6b19a691dc551fefd1d371f4990003bf0bd16d5b5e1dd06f293502a6b68e349012f0e6fcc22294d0a092e24046d2aa24e042caa4065fc0f1e26d2cc57ee7bf913142f92027c1054f80b9f64dec653ac7b4a8a8fefc349472e8de8288160e9a14f2dee4d4c834b086685ea489db23845f4273c3a96b757fe813b001f9c5a3811134f3ded969d3d9d549f1ac03bb018f88e54046294262d9aec15bd51d3eeb835b532d3d17d8898e93398163311f1aff22fd8df1abb319d809c2fd979f33841b4a17fa2fc08fd1608db8f96aa58c850f5c075a6dda0768b79f6f97413dafcfdf5bad7f510bdb954d85815f31d7cf3b018bb15f3de20d3eb102616e09eba8fb34953a4fa06329ba99ca1f7e190ec1da88d69002007eb292db91db29d8f5cdadc1309458a43ce4ecde448011d03cb162e45ddc13c6d5ca639a41d4ab66590a4c6b2672550e4402a0646068cc4430f133ed4bdcb3e3b763ca1a520876f452142aff0ceb70693c031867cf1ad7e801462fca4bf3d82f607f84eb844f1107d1db272d016fd5f90fb9e15ddfbdf1bdf1b569c1cd8755b5099dde4104935c311a9d5d22b12421c695a65d294aed28898891aead884dd041cd5f580368d00b0cae7822c48fd87a912a5309ed1e0fc6ccd802fb53c33c76eabfb1a9e2adfeb9eb4b569cf4b3c1ffe63a54e869208f5d1d7cf3fcbcd95400ec6444c1e4ca051209096ba2ef7289a871df7f55070a273d17ef30e8acbda9c711a23179852727d417d938050009100fbedf90630a50bcb20c017a87ce6f6e53ae1de8791fb4876f09b5d512955ddf9bf276cab5b1e383fa6331c74f514071dc4b3c7b130d24d5f4e079fcf23a061089f4faef729d5b3bb611ee24bc6a09b351b4de12c3f54df485789167930e5814a151857e5ad48427d47d53bf8805c8184ff800126c64dbacca6b1abfcbb5620902b3a7bd91c205b199bf48cd304e57007201a29b91ad11325da5d7fb6b0f37b7084fc12f556b954fa53e0d49bd2d0b0bab179abf695bc10d05df3dd6ed873b6d2c1d18a8191aeeed1ae5f7ef65da259b81d988adeab17dcd94ab52a6079c9ae720a4db9eecfb22bfbf8bc495b60cc4120ef15c6a502c0db4c5e29882094a651a78c4eec174e00ceee63fecf981858655b0ee65e80a939cd4c1020aa5c4138337b60fc4f7013d09002161372bec13cc16b9a41efba6d3e7d9c1e0b1c1d9eb0137818f58db67d7b783e537e962fd5da111a103dd631e87c7a3a3691fafa118b5c72941806b9c84531a52d77e6d5de339dc7d4f3339187bc47d713368551c94ab4cd852401c0704f21f6e57a1b9de9152361490bfb3f302fe8455ddffb88730e7efe1001cb203b973e4c6d6c4f3401f759d902944c001045a967a6cb1a06e8fa2198dfbf6a5e26598057525ff0faee737c1cd6af26e37dfbde5cadde3cfc55780bf9d3835f89db0dbd6b7d8eb0e762aa4d05562eb864ffa1bfab9c871e340e3459bfffd6225db3d25c8d008dbeb1de70e1f93153589e871ecb5181307cd6c9bb808a51008e4300c6d0482816ebd9b33be6f3af228d4a1bb5596e6c029295b6a0b3277b3b9fcb0ae9509fd08aefa485d34910353cc4f48c8f3341e140698f7c4c649fa63ef09b65b3a5c2ef4dbc0b11ec0ca96ce82c47a4400b21868cac0052497a6c4129ce17edf615734b996698a3766d0bcc708d5009f927bf12bb0939a0cd294177c65164cdab26ae2ec2c803c023024a674a1340bb230ee4e34fc78f0c8aadee03b4f27122eea7b4ffb2ac06cec34ec6e1ae8a107ff17cfc1e9b35333f6131ae346bb22231f81a1a7cb016bc5219c8c7a8c64c0d87a9e59537548749c5dc74d887012f060840cc65eece6ec3fbe3d925836becc8efc5c8010803cdc966cf5ee172638aa8ad1c06565394a65d841a27ba02a5a83c02d2a5f8801791db2bfa0f836f04b1a0146284a9a984e14eeacbc58248c663c2976830630e2a332d38ad460391605ebf61380dc3c51f89d3f00af22b018e94cc54a92e05cd03ef27a9400846e1231b2b2688400a42226fe4c3c948a71ea958880d2afbaefcf58db441ebc511a01e1b4450468eec3acf3b16adf282a3c97047542179006a13ca2d7c8b3da75cab22261545bc28df43604cc96f9f80eebae5c57e014c180c653e4367a54a6b7c491c847ce3eaa533651cc6592623f60a8bd3667a059641a74711693a17ed58844c24322836fa61f640a7891ecdded08e180303adbd41bdaa224f852a252f230aa40208441d4a81cfa1028e6d270d8ac70166bfe8b2a2cb85d7e59d7581bd4fc2cad0e1d3b4c3b1eb4ccb95435feca229d48276804d0403c5c6cfe4056c056aacab603d891481cc84e614c05a37102dd185316359cd0a6b118ebee232429cf1522d378fabede49e053fca0fcf4842484d45cfa6cc63aaede6f2c8d481068726c3c5668a222ead4855de9de66726579ede288f86a106e326e40095bcf4f15e5ed7be7e7e6ab2c1784cf069bffd1a113ed49c7412584a89e4ae4b2c422064355bf00a8d0a75d37bc9cea765c76dc9692d6f6a2c1f673341014b0b6d85454441eb28ae69a4aabba5900b4781cf1660b277b2091aa9f96dd1eaebc41d897a0b34ac78767f4472626de1a956ec76c48ace45650045208c28eaa42ea4677d6753c5cdc6bfb316e0d16297fd77d5d75315273c15125355383cacb6a036b710204ee3aec1ef08a185af768037b9712cffce4deb47aeeeeae6492291bab3afd764f7f61cf99e32304518f71c7b7fbc1baa726a54b37a28908737719a455324c0a4cbd0b8f9ac29a42b58ccd275b2401be37ad8bd8ee461b592379e8c783a08b019eb78b99cb4cd832a775636837fa5143bffe6bc8bc20a4433d9d2a588aac530adbeb493a5ff8cd9bd3aed34aa7abad73f11b398a6b3365dfbb53e946f1fa8d4fe3dc18a0f8ee7c0e6eee4e57847d77f9d24fa47e1af6c49c50e438a01f93397eaf1611eba31dc1913b80b169a15971134392a98a43bff5d1674d1c204a9d5d91039695dc9644cb28f94b45ab52225cdbf7d3ccb6c2c5ec27f06c5a0bc3f7c943d5f729b788ca0623d6ad0090628779dbdc3ed237e3e3a3106540dedc0fca5dcd4735f6c0103965290a0c98b817d46298a8428cd0386b9ed442a6802c0e689f60b8789e7714338e90863b289364d7b2027a7eae694cd9ce959ada0a8dc6add63eecd0b758f68e34942cc2cc6bfe9ec2607ca28a10ffb4bc7222f72d176e00986bc70b657e03e87e7471fc2b15c3d18086662db9c91afa907786110a9074fd1b95394bd1a9a9fdc6be9c69301b32746c45b3b52a36545599c5298887401ef0c9fea3bf89db983cc6bba3a743d10d2aafda45d557559769e732017d875d9129935e79e683315548b4b4420a56c69a16c24b98cb65dfaa5f2426f22ef29c56d0b8648191e7da0316fba5f14ba3fb3150cfe7cf3b3b11690229ce6da11318b30edfd3d522d7a8f04aa86fc1c1f2960a403f227db743f2531c07c3079af458ab9bbfeb3241b554690ffcbde34f67869244dfe73f52b16495f78338ed6a2c24b4dd9f4f3e506e2eddd4134b9954b17259194ba6e54aefc99183bf4fbbfebd9fbf2f73b91de637525155030e8802f008cc58ce100edfc45955a5fa03843c164c5c9600aa44965b89014aa5a249d1974197798d305be16bd5e1811f96839e0f9ded8c7244411a6782ecd6a4507444cad03e0c0ac0cad8a3464d0a343e000f1e1d83e5d4db2a71a25708e0be5b34f1883d9ea503c5fc3542c4d24c497a7732143e84682808d0d8d6305ec462c42b326d9ebc12989e9620b0dc34b4aad3eb9fc410e0dfb3cf6c8e7680dc2c909cd2bb8b89772da19713e99faa77e021c0538a939565c7a33ddd5575b3d632e404c014c2949861e70daa6ac259f3895a720c743c047e04884cd604c95c7fb6a87a042e783030d0763ae68ce244f71449b2dc66aa9f447bf7eff6570019a623ca462c6720b10e458803a30f5a493c908ac0d9bc57d2dc9654064cfc96906e36ca7446bc8f88992a288683ecdb5ad2149d40f95d0e1d8a7eea279c7bbb26b376aa404952853c6ceab0fe4ad0000aa6c00482e3760cf006ea0254ea48300a36a059c4b5a806feb374330d88c9661812d39ed325ba81400a0603d22381b80700a4b8879ed5b863ce7e430090870e3b20e58200f6214e3b2873c6c64af8e49f7ac63fda5e6df6689d18a06d5ac6e830b0a1224586dbba5caa57004da2a9c8be11b0669da4935625f82c141510cf254cb18ccad2eb18db0dae2d6260ba1be8b7fd22a9a86acecf862f140c5e209ceac8902624dc5a90ef34de54489216b8ea8eb8923a4c9f2cd75622f88d54f911f0ed7a2a1693428b1b5693164eb83526d12e1e4a53a6251ca0e45e8a56c8825084e6b0220296c996879c540cd6dbb86305475eab80bb2e5582a0c40d3c4fd2b5341bb14f22394cf2be0e9b726d58f8f8a6a6629c0cb8849edcfa42166126bfb4f4d448967a120cf2e0c0fac9fda5bc58bc3d496d38ee0eaa9462b0f8ee2bfbf92b3f598bdf0583eeb782bd46274a930db1071bb3a981856f123e04767c826a6c541795ab265e42676d3f3a16d8167cfac2fc48462e4293f8954888404ee492e404385c5844c6863a3d8c13dc488c78834ef9f9b13097ce2fbacd9c727ac5b0abe835d6c941b1a80d06cefad22bf48dd8b4f01678fe786600dc6050fadade3d441320c4282c0d54833f1188df50c2cbc62eec0a6e8f92e27deab5a34f729f9aae7af005434d9ad4ec398da3129d166383f5044a4e9d51b1907402bcdd0425f7cb042bdc2a6d9298749c92754a922592f7db615e1b7e6deaf1a945af53c4f77b4db12e8a52ef139515d4218bb3116bde3f61f2b9984f502ba84f6633e4c6923cf2e17cfb007f5221825daa8dafda9b31f3df35e0b153ed0d24a89c4fe341abd05f43013161aefd70737091f143ac29c4beadfa32aac636ddf25273e2cb51b9c2394acac6a4b34b83fe24288185cb58edec4f3361985e72c311a7acec6e20a3407fe1f9405588dae77200be44d663aefa5342d1512f4e1dee1dc533fdca55c7af61aed32a70e1221cbf406d0bfb713ef15b09ddc111e91b948b3b29bb3b87d707ba338567390d5571cbca63073dd35f131501924535e1cf823b2a626334982b10bf99ad851a6929eb4b22795469e96536c374027b6438137690437ebe1f444377d75e2dc02c3242e0999ad61a001d3c5954fedce146c18e46e8fc75d62066e67c6fb28595b11481de96694cbcb31e441906c0edca23fb3f149b12597fab6d480187bd6de6294ab093b67c79a845d177714ced9f6bb5376183477453c1619daf2f1b2b62a3ad23e183bd63e35ecf055dc52b15056d74cd6d871be2213a9e758c08bdc0bf0799a98c298d952bf00f24438b796435889a431a309238b2ff4a0e472a8d33bffe6d6a889e6699fb754854a647a559b413f4f18313d6e24cb579656ea8fcec1b30e95f2f9495c8e2ed8692b22a468d629a3b3ecbbfa51edde25596d1775f31bf0c3b0517ff3c50803929cbf528095559ffdf7e3b0d3ef19883085fac6f52070c843ca6a2e1106f8c9f8e11ae19ae752fa2f3073139b1a4b55123d72e6e961535ab1b5037ed63dfbdda91dc91d0bd95f758d384fa9922b00890ce411e5601220f61b54e23b250da3e9b63af80242eaf2d198adff2a5436f869e044f91bf9eb8b4503dc4e7c9e188a3d4eeeb62ce1ce636efa212ed76b9ed87f6cbe2d368f30415205b44cbcb866b3e994043def71f183fc027d4fbf41b95cde95d2f7fa5354d0fefeb3b8131ef09336d0f09a70945196771d94281e85f7829ce214d42097a85c0a50635a55abdf8513089aec1daeaf2f248122a34ba33f59351b209c9e18d788e4cf22ef2a008d436f58ee6ffc8d6112e6760d1acd9a8c9f6c3dc6d50ee55347cc9b0dc4cf4de3622582ed8c1fbc59f5a33af0fb7daec4ec64892f6760afb60877efbde7354df1d6491d28988998871e7e4e37a55cacb18a74bc58fd39db91bbdd3a7073f81e36bcbed6b5b135ff54f374f034f454619dad5d6ad8ab1f3983bf6791057c0035982ad2287ae9dfec183953d624b9491f5ffe707a78a27a27d4bbd45fb9bdebbc48fb3797f5da3dfc441e1a161e00b48ae43668ed3c2af836f4b9a61797b6d036735fa49accd9b1b0bcb631c076c3dbfddc9c56776b5f4dfc9797e7c4a9a543c626e56b004c2b68cc2ae3c987e1072d8b87e46927ad71e456007727958575711a19e5144c375895b2af150d776b5c073c432786e68bcc0ccec9e940cdc2650041cf2784614c45416b8c8a45dabf35cebf68f73d119d11dac3d6897bd0b6fed89104f56752d5bd59369fbf8192fd75f6483d030c904b693262d859d6bee55f76dabf58d6b8429ded3f90d8de9591ead4217ad3b6b1775c8a9463d432b5f4cb30c4f70d3c07ff92069163b44a5e869d3187ff8a9146bdc8f27a763f72fd15f63377b91631da54b57a34fff19bb69e9677b954b39e675c8c120edf2c103e45fa6e3888f80bfcdb2d1d86b58e526811e0aca708224ee38daa9fdb93594ed97e98b843e0c20f8345404c462b346a2019cce77d28134a7263b36bf56dd4c3fe46a5720d06bf8f8c48ca4e8a4f4da18a38fe73fe4d3612bf966f466842a2c6a7a524b4c03c2893a37d0971f9e434eefe88fc2170f143f8ed3862748ef095f4d79c58759c3397ff13bc7abe1d70fe3d90d352b1f5d752985697a99cedb92dd26051dfac5e68364c54a11f5924d061d0aa5564586bdb687d74102ef5a66f722440ef8a6874a246564bdb30becffd4b41eee099b75507c2271b57318a99c43ef4da62658a58d5d2214f4d6c54e592bd306a3e6c295da525296b63986ac35ac171f9d48d3804724cf0ff5e1711a791f8735f43ce0cfcd4db7e67f592b63217441bf624f9aab8a75e8b992b760347ee2a6d9002d806998ad5843620339fce96f47712b466bcb2bed5aced29ba1ad15da5571d51bd7a46faee30e418507626902826986387034f665e2f833e8178d91980128c0826a931f5ffc84eeb9a1630e657af72b09225a6c7721977e0c18bea316b7c92dae8586bab7025ae8eeda9f4ac853686d799ff4a544e5192f0f284f978b9d04f3d830432afae796b587afff4ccf7b95e14799f3afccd7c5c111c37973e3d0bbc555e52bc13b5b32334121e16b8bd5e7985b1961bfac7bcc5205ec12c36253e1ed6fb89b75133bd29d0413194b06a7e48837867c03ea6a076c5ecf64b11ff1867d783a4c801225dc68e8d235be61960012cdd83d8c34863a391c52c858786b16e7518f08852a8c1936b4235ede09dc04ad868977a168e37e39b317aba6af8771a160c1f48c75f2c6d142c56d0b3372473faf9125fd5d8b4c1723d5c3aba10387188bb9817171cd75e37e973f0dfb579d8d4f127739efab9079083a3fc8ae85a6b39f51870a8791653b2a23e69f5741a6210a9e5736de94de6a47e2a063140d3f0360c95caa1228316b1932eca8875d19b2c38271afc3841e0a41a58d24e8eace77a2b5779fb60962c24de62ce8243291165cdfa0539f09788184f794c755d7ab951e951de59f0a56aed56777679e47db817985e00d6f924302bbea4da835ba93b4fac05c9269c01d58ed0c411c1b5a4f2968b1c59d0b47567f35950bb480c42567d37d5e851bc7a94b8c2b4a8dced5a5e3c637ba360da64ef6e6863906ac9d6853b175accfb8c2d6a86f87b7a284b05f69e160d380fddbcf4c0a62e7b95b14889a2649c2075d8d66e7a2de7332f876b04adb1e8839741de99fcc1788a5993f8364afe391c547843b199527ffd68b297d3b23860f971dc98a6ef870b3049a8e3036085eca6f668a2eda6e22fc5eafce0ebe8c67056505146ddd6ddbf130fddff1390d4aa9371d756d6a8d6dddf3a8bee4fe719e0e761e981afe3398938e747062d61e74e3b0e4fa44d9b94fe46b423b21a9955de1df2d550da541ef85a9ca7534456d5f46105a94f134dc706456be2c2178a184cc8e20a04c4aebb64a343a55b133e9dea9bbf9e997f2d3a7f37553d4bfd96587bdc4edc78d2d9e90f8e6c1de8e58f070c0dc5ebb0224aa9012b0648859848224a42f15711fae332505afc5765189d39315a099274d813358efd50d6fd8d20c396b9f8040ac2ec3864a8e5256598a9404bc01c783707ee070fe2c56d4f68a588afb9921a5f95bf363b1d0f27c3a9c2edeb4be400858176589986ef872c7d2048ec0c69d52d432e893517980343cae10780c5af8b41496e674902bd4a54e3ebc7446963296d61612f8003f0a15ac81c6abb47c4b52aa66ce4a21b0dee7e0b5ba392c2fa2fad85c66201e0ce0163086ca0de6176018f668b24a1cbcc4de3a30884074f1b76f50a2ac3845f0ecfa0c28a7ace85e205d670f1cec6406a826c2fec234b6f00da92beb95fd95e7e39e3cfe969a5ac8bad41c5aa47be18584446c70f100a6d6fa84e3603c70885b31f160e61c4fcf954ff20f55b3e38196311ff7cda99ce93797751f34bfe54b1322e2885e915a12f618706c8858b1ccfc8a643a42406c3dec12622069ab1b750a99ef9fe1bb56bbb17bcbb7646fed17dfade8d9fb6b6502ca26e0e184f87ea0ccd0d2cfccf7c676e8888a1c3637c6c23a2a4da3f7d0b7f273abf567070b9d6333537b8f8397e9f63174353f9b0424f04a399ee258b20a64602d003dec7676bafcbef8676874146c2f9bd125c0710d27cfc570dd61f58781e611f7f359410ecdc587dfb6c4b00c5b4c360030f62c4a205dd43a06e6ae40702e132af648a0b95fa78750ffafe395f3d8e3673de963d683d54b0bf32a937b87b1630a67ecbf989fda23ea8ffa2d471120cdac5b565344b908e35e53eb1649399247d7c2a50bc6d5757557dfd8a97152071ba2a9354e5bdf566ff2293663d69b50f788d3ab0bbe49d25b16f79ab7260bc637bf1e3745b84383f08397a8eb7e790c1bc4a31164856bd63165a2417f8c7d5ad17097101d0479d43420ca8e1966ab864150c5f267e25dfbec5f37f6a1cb32f7675ee3fe0f7087fa478512ed19a013fdb40d51eaf5dced8019ba6da60dba19c54544ebe46d066d342f3891fe69232c6157ec1da7ac4d9b8ca1a199b3afaa3df954a7492c0715ecdb3d527d4637fa7d2a65a8c5d4977d1f66d77e7deaa18e058209920d016a256a53127dc0a1bc566c802e226e4686975ad324b3ece7cc9b1f5c67a08274d7b82b6eabae7004f4b8b1b4f14891e2d68ae59c41114c0976d72ed1aea1c270faf69e347484145bb8db30f320af3e0f119e2d15a1e73f2a339980e78de50155824757569fb139370522f51e1cb6628bd80e80ba43e0319b4ee143a0e15624d68a475c5674127d3c15cbc3d927d83fe58a5b8b4f0711d0e33bf04f4b1fb5f524995feeab30d9e0cb04c712f6eec208f428521cdd6659028dca8dc8a17decc910dea8b5b4bd729b4a94f69084cd38e7d4ab326a36038cc36b689360edc0dbe2eb38908c987c6696f812a504dd5aadca1952516dc819e0dbf095a051c6638e21535564c190b988f1f045e8bd283d11a63b71d6cbf56acfaf9a219bd37dbb0c1587c259531a3d83a6f5e9ac611e7dd6a9bc79448f040f6bef520146a910654e6b0e3590112b001b3550fb975ab7cfbeb76229e037d2b3fdde71cf56a501a455e9e2876aeb287da2ab40573c120a00bea7fa51a03744c306b9e8975fe2ab1fb2f9f78853db20db86b7808f6c93a95011f544e721d2093b5cd7d82de0879c2346192a51edfd2ce7f44b7c3b38470053548b195cf32784297d24cf674015af8b11fb2649b7bc51690063c39cd5671cef2a1772ebec0b0005dc57b9a7be176eeb080f8aed826b28df2b43b56d0a192597bf8dceed43ef21e94819930f1d01905585c3873a985cda29d6fa30e4d87a88bcad90e4088cd61c788841889658d8fd9bd3f306232f579d7baeabd5e77713d87b21c32fd728d78bbfe97c6e28d66786e2e6d2b40ea6d1a0493ebc04eaf6dea4a188ec22f40339d17011e6697d3febc30f4fe719e763ebb5795fe6efc84fdda95e8cdad853f034fc946a46bc7b5c93b448f2dc44f8a60d5266e0f69ff3a50b4c83f127bf21f8611da5e34922510fdf2d130ec3c12bffd6e634b02b4866aeac264e121c61901a403662b6b82a976e82e2b8319bd3ede8d1834f15f3086b6be1b5f7828f75f3e79d568167df51b404fceb3f2d603ac05c09a062a6d284dfb4cce21887a7edccbcc02e0486f48c40900e0c9991d37761a1f5273ffa781208bc48187a64488e2c1df543343410701dccfca670543b5c9084d05da50f20fe5800eeda780e4866a6703aae60e11abf06882872ac94fae27204942e1c7332bf2a6f824bc4d4898698d2e866f3f8aa37281f982f90cb7ae85a926ec06a4a4ed4e0d0169714ed9ca206dadcf49064fc40e83270c6d07f1389443034060bda1452ec4ec5fe2c78f8277faddc9638ccb268681af492d07ae3f135d5b5932f9be920265cb4f604ca6422e85c2c0dd12b7c86d0264772868672b2990a6cd6c4b9a53bfc347469f91f69d441eb0921532cff1d29739f52a31df1538d5a3d6f69fdaa182c187fccaab41ceebea64203561ae4b2128834aeff3eeaa8146b115563a057ddc96fa9e82d13090d013e953bb57d176a5b6dd51f9a02c6a8c734209ec03098fa45d89d1692243492281e55be2e0206675f615001d2097b7bc90d85218db3895965e9c7f71e879cf7d3c510781c3ec3420e348ed688f017e8877cceb28a48a62cc10474d07495a52f8762e38fcd911342ef1baff13b583731fd73e7cc9b9385e59e2e94eecd6e3e0a24b8a2948e2f2ad4b4f8a65ae4c0b154de0ac4affd6db5d645a1956fcd9e99d5f3af5104e54f518d2d946d5969df16ea60a0dff482d0a4b3916fbc9c543dcf5112dcb4ced5baaae624a5c5e98a23ea01316dd43f34d66d10ea5fc23b7b7ffa955a0b7387ee6890c8e13836d2285f018b5ede1ad907e5baaeac369f2e0ec4606fcda32b6647cdfd692e4c769119b53ece4e5d7bc53b1ef383275386c510e8e21012b358b06ef03f821f0ab4e6cc7baa76d08a9411e685695145a0f94b851f4ceef0558901dcb0d0ebdfabd94849391f0102746c4ccde0269240135b83202a14319de1fec298a25f167e2448cdf789c42fd8f54b5160c9a8dc87aad221126f4143a8c9f4fb714f1e2a9040d7e0469c10176f7fceac9ed549e542ac1c4ed97ef65a18f5cc8deb06ab192c3958a268750ed7d4babceb0afb93e6b7bb5293b0382a637bc188969ee07b72f3fb0954afa6bc30f6a321ade006e67d264d1b1cfb7d860d1cb4587d1aef7804dc37c8e72fcca3bbb0fbcef302eb82556ae966db31c11d64f5c183c372e5aeb9a01fc6df02af398b0209ac31a1a51bccbd199df14b66d943c50b7a5d98a9b9a9182bac9d245fe495b89bcf416964b9112d436821147b8619547788771667019c61276e0758a8c40b98c508a014b514ed1d8881a18c7956beec4de11b3e98087841ca8375592001ca22a6801d53379628d8b368237d42f5ef10b710be208790e9d0e6a08512154d5649556a3da04cca8cad646c820e6d25a54ce0842fc76f10ea228e2b4650c47a0993e1dc9fe43da7a546a3aacee9e054e7e8b7f54f4cf1c407cd8f149af6342b30741c9675c5ddf22246a79fefcc441efe71eac0e2e2315b116b3c8f07db97f0f6940165e5e8e844c7c1231ff8af5dcd19ba0fcc143ab0ba19483e6ce25f60bbac52444c896a6ef4ced02b524fb74f8d62499db33d5670be39318dc612de857d816dc655531dbf8c02963c136400b0eafdcf51ccd280ab353f1474eeb66576bcd6b63571958a87f695b54de2f546683786744158efffa7fe31d26b97abc420b670997c441aee9d0b8946b44e8b294f3cee268a8b3e00643208a910351fcf8e058a8196f3af619303f4f1380be02db51b5ae3d641e5cb70f27879130f15554974805c7dd50169f5a370e8b4a953f7b6b1defbe95910b184f3e6b1f3714331d05bc6432e77ef39ecbf7062b44007a197e20a7cdf346df4c67a4d48933892faa5c38dd8f0ee1c19202aca1ad217fa5530814a67ca013c35ce97b602e6a2a4a5403016a683e1f79090029df6337aa058f3eee97eb4d06533590eceb4d621267f75dd88a9945b3ac5858f91692437223f327ffb5940b3cc65a9a788463491a34f37b5b7ecd2589ba17b5dad8f005830499f3f385df8adf30fb6d1ca119617053f75d3c45d8c4bccb961b7865b2a9ac850cc96008c10468f3d7b53ad59d9ffe15c96c2a8a440063e282c3bce9f63d774cb8a401388d110a99025d8c4dff6db2147784b1ea698f862ae4ea43ccaf113c16d2d7723b5e7100aaaaa345a4e3e94f5ce6d8f67193fd6a763c2bd76c70cbb141d85de55e937078786377ad94c0347ffbca9ee57cabbcad47c3bca0b1ea7b025ffc930530aa9168995dd77c35edb51646be40d2e8592cfe55a351bc1414f6267902406c634e66e60b857cff743ddc59971654ee23c36aaba1c361602cb4033a3a3de7f1014b168158421a0034c1287c84f69db02976cdc5816f898e8fe604c4d2d29d191578f4f3f826acc8c26705c7a1276b732d9fd57147b3c894883378343cfdacd861542857f4710cda88705e56c58a067c3c9e56139809290714df54b05c1c47aa49bc3dd40cb6c13c35d22b3f2eb1421771b8ff57acf68d9a4ebad5986458652c4c86de945e6a6b89d3abb06f44463ce3194b6be47fb5788d816428966fe6a5aa4cb6c63ecdb52d75a372c27ace73ce2ba6e2661da00b296a9d1955c403ee34061749612d1b0071a949c5713b3e6ea7c04df905f4b11e6ff86f7f0f109512d914e77e89104b30d01f68576c7051530b8c8c3eff57f517f5c1c78f7792753510970e64c7753f9122f8ea1459f309bb8f520fbf5216dcb3a8df6413249e7f3b0c158623a5c166ff6565ca8cd47e192bee66f61b37a782c18a54082f6fc2d5b152e733e95ff3d04ddc0583ff23e79922fb90fc6c5164b314bbe8ce81ec17ade3a28c1afedd88090cb293f96c600e0cf243a0864e7a95bab5a2b8151b590603c5907494cf2d0c9e3c11316572b0713ba776c0422e876f17c0470b475367d3a2ae65485b28e54fecc7726cd0dc92124c1c719c34acaba75334de674d6572f775548d979ff09c6c058fecdae5272b4d5458d3a0032bbc3fbbec2c048bf280ee07019f9a11803043d2d1dc43f90fe4144921b3687037f74fd28bf0bdfce529022ef2e0ef0f829d1c174aa98772fef9e60b8b451b082f224d9bc7137f0531580c5b6ca6af5b48fb2bab62fd24f17346fffde37be504c297dd7a21e8c264df463cd5d1a9d08a69c9c49239b1e02e01d22357fee4b9d060572bc2acd7cbfb6fcbedff447d382bb3b7083e4b700f50cafb84d2c899f03e374d71f315da4c578e7769d70c7e4713f1582a78c1f6bc3494497770567d51ec7d9b759d26f80039773bae3c617d679a675e2b501e777f853d37fc9a6ad5a91749fb2134eaf42278d02c1477e0f4650a6bf82093e0816b5b015810201515cf18c4e1e47d395f078c62243785b37adb20730d4f29677ddb9ec842287d04729585543fc7bbe660a4386adde96b249626979d0e1d13e69602442e2d546d4962e3ff30782a236d1d1d9dc26f650f344dc841e8db551fc7bbc45a111de69be70574a107970dff7fb34b514937f87d806da12a3da40ec923f232f1c841c59a151bc9ccee869200076625d7ff557246ff737e75692de457f95824c6267399b33fc7f412ded4e6568ac0694ee3bacf2aae639886dec3c743cc79a8a9cc6f0354a332babe5baad9da71da8a46cbdaf7dbcc6b02dc5a1a5224157d513541e9ebefba2b080baef8903ae30e65d4b99683cf2943d60f0caea252f3922279e19f39d5e8b86baedd85c9b94b395b77eb9c213d5073878c2ea6922c0be924fc533841a70e5d719fcea9e10fbb0d0d45a3dc93b7b2e4b2fb9ad5b627bcb09415730271549f35b94fbefe105f64610503d2036ae8012626e94213002e09602aefcc6e55afa42dcbb9dcdbdd21905c5efbdee05658de7b5b4b5ff8949a5acb911393beebe6e1a510ee0e6f47c801e116c0da69ecc2c9e34c87f08faa20677bf59f04d6ac5a3ff6ded1d6b6b3d0125197d1fab46cfec976b35e05c18bcd538bae4a696102897f443c03aee0efce6daab22fc58f8598de3c9d47db3ed45a75c9f858b13a72267915d830d6ea13bad5d22b8f84adfae7a685044cadcd465b8f41cec4e741cc40b342ea0d4c761750f8067e1b14feda095cb83e519ee21234d31a3be036d2d13989888f9ad3bec6604c02b4cfaa07ea005e0e8feec51a1dfb0783c6ec852accac4000a684bdfa5f909a33f85510a2c56f0f6dc5816a800d694d72bbd9c44b8bc9b909c04cc00bdf8d814088b876578be60788ebaf60ccecef2d81448e6dbdae104f6327eb8b8d02458306c7abe7d441da2c590613202039c869aeedc59ce2cfda2a91449c6d5d824d24e68229c36aa8872f6245df8ebf234682aa044ca6a7610101a242ec44d699740d8c0aab5ce0cb0401a63d2a0a02ca1d18f984634882af078708806e06acdffb7cbf1b1d90143741e64b4b89816d4028028ec3fd7ed249290fa5dd6b6c8368683164c52bc5fa7590c381cb753a1cf4cd3914f6b29f8cda9139f2d7a798bbfd54772cb053b2726aaa07eafdecefe2064eaf002fffea4c0f0f606206c77883e46d845ff5bd5f0cdffa3fd2318470f2fa1e31287b52783a55295bfeb8d500ed0c421e4fa626e7ce656896c8d120870e246eaa2fbbe7046bc67655d089d2ee961d757abb75dfdb7d73fdf15addffe6740db51555e5cb6da255278f8c446f6b0cf40bbfcac829044d810672426c4b263333105de5555d78b114e6d977d8d19b8e5a75f0dc9e019112b97da7c986085942a9810ea3a3ad62b22b29c5a5a3c1082f1ca6ac4c039efa3b7e20313a3dd8fe6a3616d5333785fa1e79b0b30cf6383c5eda659849f1c218e850e0d1ac1d739b887d83172194815e0710ab923f86defe0c95310c58b86ddffdfed53b43581ac33c1a8cbb9dcf30d9a456a19eae14ad94cd9b017b7932ea736f58271d64b5685eab9071e1b3d40ef87d86b27764f969b7c9366f7b12841c3fa85b98e39274ae5e64378cf767500db40ca403c528f2a3b1861a853a62fb4e50b148b0f2a35278a379f285f7af96ccff08b5daef1d1c87f89904ddb1e47d06d588b363f2297fa81c1916c5188c34a633403649ff27f5bc285c5e22f8b0ea597407dc38f2177fae5e13abbc702d9a986c31bc6c36a07a25bcec35cd3ac47fda3f6515aa746db26315613d6ef0de67164cb54fd20218a7ad60ca436a876bc2fe20376b70ebbd017f5ec55703ef4f9c48d7a190a3c4c548c07e83374ab8ab60a2b64d7058c85a8e748d91281a4e030e298104268461bac5b9a4f9a5b9efb0b30c7398d037ddc7135481be1ffd161ba6b99f40135c16b230873d232164a3bc87af212c754d9d3ec392f64216e86024edfb0e61a2697a29f6727eddd4e6529922f8f95d775309775628987aff173deb7fbf26732e5eaa394fffc02b4e6aee0764226cd8e0174759c81d4bd67ec9bd45a74f3485b1e253648f660c86fdc555831b682da6d540d2fd83f32c11a3bde23fe50264c2e6ac0d4e05dc095ac2dbcc5a23deb70df8c773863383f36ddea2de3c5607fb03b1013804d0cffa8271d70a3c74cad45e893df3ae95511031f30e163246171d027a324b92b8c2b1a11fe434453241550137f279e2bc6af48fb96b38a930807a384f785a84f8bfef7e72c1bbafb78f7dcd78dc6d517aad9051cf51974072e55e89d547b48a5f428decae68112993edfbc510a396ec7eff60fc7ae3de3e45ba3ea9f22d91407aa8f71b8ed2554cb4da271710c257039ac3d9c69067f5e49d969e0d1d455ec659447a85dac7d4d1ab38d2203ad06f37314911145cf833e2113fa39e726356b8631117c51b23baeddc4edc087603fc113c22d3e09d07d2e0d62e1908d2f97152df41d45d333fd8c69d9bb9755a2491b4749c1be39a173ffdecc245273bade4cd428d0144ae7dec026142a7c80384f6c52c040e58f271bc4df336b6583bc9f171b294f42ebada31fcf2a13bbfff56e62a676dbfa38aa14e81cd61bbcffeeb608f8525064a9fc3e5e2a493f63b85f3a538f05437f63e345d9cb1fcb531b11a6652439b3679c64e4ac4b006eac7ae2809005e859002692868c06caf9424cc0c01f0329bb9a07fd6f07c5b281570d350900c543637d83b0a749c7fb2ae23c840158420214463c36f6bbaae6f646365610b6697e86da48fd3323f5a25dcb37994f4213b101b307f0f385c7e345c4ddeb1339405a9cf7810518e06caaad7282c07e32979eece46c634965084e20b88678822a162268f651b7a7cb3d593921bf1802900e561686ec72a4ac9c49bb5314fa943eb5de24fc6c1a4ffe309ee4b1534724a0706e0c0016a402fc1c7e148e9a01cc5b904cea906e9a6cbc28eaa61ce69d68b7803b78adee8245c86cbaf0c87fd66c21de1b721f6ef544bedc70acd6049898ba869c8c571a613a0a1c88126a9a7e5a362e00404c9c9f3db5c85ef4043744a40080e49d6868ea30ef39d1ec00d4c2bc86063c72a8a2681367794d3d8fd35df1a278ee22dc02945e9c6012d0555f1770ec0004571c86483ec03d2c008864519bb79ce6c0c591e771fe7d53197dff667f439569ef08bff585ff2d78c1cb9515b624c4402d98ae00242e10224881443e3ee24e281cb651e236d81473e14913c6eb91b917e5c23dc5cd2f095419ff2905dfc4e76559e36cfa9c28c3f01e4612586e5673b07782bc3c1a42ba9e0dba40f21419796f448baadfb95d19ed39e9d75fcda97dbb6d7d6a613c756537c63c26920bda9820dca2da9055e8b1741cf604bc5c20754c224c8e9d81cb57a847b33131bb587b351fa3d7a24f1595a39f96971b75e17292c4b2bf46f21e9c20cc3000c5343006285a2ab434ef14ea9ac4ab592d3d50f1694183151455bbcb7d155e2557d1612d3271e559df"].pack("H*")[eval ?(*8+gets.split*")*3+"].ord
0