diff --git a/auto/gui.files.go b/auto/gui.files.go index f7e3f2fd..71362583 100644 --- a/auto/gui.files.go +++ b/auto/gui.files.go @@ -28,7 +28,7 @@ func init() { bs, _ = ioutil.ReadAll(gr) Assets["angular.min.js"] = bs - bs, _ = hex.DecodeString("1f8b080000096e8800ffec7d7b73db4692f8fffa1463febc016953a06c6753fbb32ce712c5ded3c6b15d969dbb2a45b902c9a1880804183c24b36c7df7ebee1900f3044159c9ee561dcb16494c4f4f774f4f4f77cf8393093bced69b3cbe58966c783c628f0f1e7dcdfe115d6653f67d965fb0289d03445ae6f1b42ab3bc60c38273562e393b7ef3fafdbb93ef3fbc7ff3ee942de2848fc23d40f75d92304257b09c173cbfe2f3907d2838cb16502d2e589155f98cb35936e70cbe5e64573c4ff99c4d37d018fbe9e4fd7e516e128eb89278c6d3029b8b4a3683d229678bac0292e29468787572fce2f5e90b6a3edcdb9b3cf8ad48e2b464d33cbb86b69fb232aff818da4acb38ad78fd7d9d5405fe17dfd98309d4bc48b26994b0fb4fd9224a0a008ad28b2a8972f91d81f6820a3e14208b59191ceeed5d45392b36e90cd84a2fd8515d235c65f32ae1c3a0290bc6ec2c5847c52c4ad6399f2dcbb0cca3b448a29207e7a3434254e5c93402f4472c00b911fea67e080c2ce28be1a282077196b2e1fd6559aedfe6d9553ce7f998dd6ff0d5cf46ecd31e83970618cef922aa92b2083f16f9e23f7904cf5e472b6af4bff78f4fdfbddc7f9f5df2141adf52f738cb2e635ed7d56a8aaa164121c8eeb48cca78f6123aab789561e3434124be40308bf8e353162420c6fd60dc1414d5421484bf15591ad0f31b101afed74554e6599200d2e0c5154fcbe3324f40f08acc8a59b6868e25b61af9d0c330898a926a013b6995244200d82f590a1a855c921ab4cfb1c6c90ff0fc40b24cda50cd66bc285ea608df343c8fcaa86e0f5ff1820def09bcea63859cfb7c1597c3e0c3c91b820a46871a544313aa6f5b74b3a73521297cce0ecc5690a07091e52fa2d952512a8e023061f105b22d3218614976311c10d460cce83d8ce7f5a77283c2159f89e3430b8fc69d55cba870a37cbf396c5973f4183677464c253cbd28976c9f3d3a6f6b375d655605ea15c4052fdfc72b9e55a52213ab835079c20b5e0eeb01fb900513a2bff8b688d3193f0ae0916872a4550da5760c1b2d31ca799e67f990fe4299c2fd98fdf5e0403eb851d44d826e55b69ebab658742a9b320088903b145c12030d478f82bb13d8a3034b623b52d0d5bad57287313aad9f761b24d588c3e7249b4508558b11bb1b4ce4d50f502c8c4efd14187af3a3660bf029ce21515e8a8949f69c6af066d96a9d70a2e3887dba39d4cb70b6f13d3f499123adc1b63ce5c45b61572659e1f3b373ed394c963cb1c1571b1ab141a03d4d01d881639d676536cb92e325cc1de04a68ba2a6172becef212c417d98d89b2b720de985f7b6b3b98025f287d818cd9a456eb8b1ca6b8937491c97a6e257c3898e08c371835fad62a081614ea4012134f7ad1aa3a587136c4c7316905bc3d2388429a4278f2f0a139161100c009ee2c3ed7c73b1a8cab2889e7af084d9ccef9c7370ba265c49e1fd9b309b1d5e82ecef302d8b6ffd39c4797869537ecc9cd4853d3fb593a1c348341f4efa990d3401d4a2e21a1c1af6b424f45394c76a350179f98279133c35a75f273d338219a72723effae55ff063ac85701b82f3ff044f16ae0e13ccee573b0da713e524bd19460210e35f5799955b325167c58cfd17b144537261927330f11395f81bfeda4c32eaa899867d76902fe9a931098e8781e17970d2966f7b55e8cda616476c1c9ce35d1ab8e86d3fb9178e314a62ce5b1cbda355586c1ff4b79799de59734548311da9c2819064bf04b35e400d962ea862b96558972714399aa51cb41ceb0bb0bc29e9ac9896ca9b514d8c7f55635265ad153e7d29cf6201787dc5c98562821f74fa75435f6c253438b7aee71494cb0b028c5b4478fcaac170baf60e8272768bdc458f9623e204001792fdf0145c386b691e24042c42a9a62caec8aa45705d9e9084263318351407b0db1e432cab9088b1119bb8ecb65682a3bcd3daa345e230e87ff8eb88f17962a48ba8f1b9a6a404274f2c398a9dc3492ed52e577602b4afe6708d7cf0441212736fd4e9a91d91fe2423a29bd28062de4d09bb67b7356330011c4f996368f77689006f596e63c63c607aecd024d3be9745d3c650763ab049c785fd149fafda6e4c5fbac8c1227c09baadc02f1dd7c0ebd08e81b0a2378a2c3dd1cbad9ab3b7e3b77ff530a022006f0a2ee301cc7e4e65282c2d167667769be71f8664d3d107e78f71d3829eb129d5187cb0496e264c1aa22bae04c389f38752da3824dc1a36429073bc0c160d43852b01e733ec339603e3631811db98e200e2e331615979417039f25c7efabe892b388cd96593ce321fbbe22ab33cfd2a0a43a262aa832ad2e10c58acdab1c89c2a9368e120cf22a08528a8cec162f112d2581c8685988808812624291f5e36c11e745c9aee2222e43f65f4b9eca9c9ec000e66f8dc9429b204c3f36b8006c9591bd8c52cc03e66c097f0a165d6463a44a726fe2f8bd8259127dc03dad04cd1191f5335285934b36ab5698151054a14149a2191f4e86df3e857fbf7e0e1f1cfe523c18b595e0db2f47f06778f6ebe1f98351f8e0fee8f3aff077326683fb8f0623dbb1bed75676b9d1060940d4a0ad7034808015e33fb07ad7e0f13e6483c355f4711f94888a9e1c3c78fcf58327df1c1c182e36e398c074580120e8a12282672af67d26703da048daae8c2f74322aa76bd1b4ddcbd9a799814f3318697cfe12fe166ac8d40c40758e206b6f4c2e977c831253c0502c0869b84d7a5b6750cfb2aa0e105411f9b423cf417271661ac8abf916c9a114114f3105fee1dd09ce69590abd2e987205826652476b4cf599c841908e92dd1bf8d27279aaa8c624293199ba7ad24ccf891ccb98d2009653e91161ad2237ee9e3ddd4030b1d244ea16654180415f51e939059a3bf0b373a211a89d2274894e903cb0c476d3cda9e18c09d99b530b96c0f471a4d26f3b776595a78af43b4644db288e0bc2fe2f343cda19fe5b248dc688a431f8eace478dee6935be05366831ebd012b38a921a325f375da3d6c4a30d60a5f470cf8905fb189c1d4cfd8cd98c72e1076e2a9a3cd16cb5c6d5b35bb08e22c3daa89103e1630dbae0f155afbcb989f28b075fc8d8c323afa48094733f5a1406547e74077d120a5e31e309144d10b5a73b5c0642197463d68ef5b1b707fe39a6f7b8091f30f42f7ad86025e0e86d885101c1bd0051b69e86eecf9698bd1d22cc7e93ef1e81d08961dd9d9a1bbda0a4c7a1be2e3252ff98d68d7d5641983e1c76e087bfb94edfe6d03d79b9816a239f9afbd5dbd6b032df78b0d0f215043321856540fe4f51b90cc1b51b421fff8d3d10b224083506030939623f130a8557ce1d5aa5b52cc2becea6b5e8cedfb606e66dfc86cda272b68498ca275a4b281ec366b3e000f4b9a1f8722e5ef49bfcdb4153ecec015056aecf38130b27bbfa3acd724b3f4e0435b77063685f422f6301803bd9091885c7f542d4bdb878b15a979b37d3df40de7acc3d32cc80b988650bc01db2bf8ac19303eb97b3a34e0899c3087fcbe274188c59e021a05eabd27151eece494eba5b564f63449b42dacc9e3b3d822f6f8a843adb986e461df416595e0a12818828e71e61d4eb67f8fe53b436b226187f40009ae5312f8cc6448f873083154315d7c82129d387ae5f56dc681b082dd57aab2cabd15847b6d5438235cb9ba2a409aa19151dfa2057f4b53c96897caf8f7183ea6e93d06bb44f68fd6847bb65ac314b37b87de6354dcaca90b21f42334d4694e9482e0b6be62ad09da3ad12b8e27901e0bb722fab5956ab87cc451a71d706b555f19ddb946bdcbb36aa2f8d9badcabd151d3b497c0bec9666e8c95dd999da6e991dd5c3d40203a29ed33dcdafb353b118a452e00afc715354b670667620f60aaa74ce17980a0edcd90084b84c7171f2d09518b0d6e384bd8b535af567f7b0092fe6a2ccd66b68d989b906c240ddd102ade27965739c44c59f209a18f4e50f90cb1c974a733762da192857307bc8a6a64556813af13ce1fe1e11432f70c5813a1ab4c7b4b0edc1b4cee355946ffa609a45697a5b548e9e30d401097dcbf3194f4b5c21f9a375e2919a31bfd9a60f62a330c53884df5adc7163d5b4613dc3490a2020c272aa1c4e75a289890b40a1e1d0942b45708b24031b0acdb86d11ba24b8474413adc3b1d117b89a38cff0324d0168b5bcaee9575f6df75f9bd4cb1149cbeddc096dca2e839ecb1e750d69b4cd6a5d866d05c17ee1d659a2dc3261ffde32b54d4b2fc1da837fab60fdb600a9c7906b9b5829b709f2d4222e9f7475438b809e418c45a18cf8ba6cd9b71d4aa1eeb4fc67b1a010018edb5f3aedb29f959ff9d66ea8d72d5a4afbad60181eb08bbe3f523c490c73cdcffeb6b7f4334c2ff3d7b45a6348476717395861de4b4d0cc8b83f4e4aae7abd486fdd6cda8a9209ac875ab8882c4abcf50ef87b30b83d1c37f36107a312dbd9c1b95719e4e18fadda20676759da734a1e0c7c3372d3cfd0bca7b20ad2c1a3ae3110c24c8b32c7bce737ee4913b769bd76316e76b158b733ab0d8d0e53e4d2572843e9d753a551a788b6c9a78f707a4b86cfe3f29497b889a5f04a663201d784b6a3e0a644dc5a0275376d8429a5b55acb749b72a00a01dd1b6decada12d82f0c3bb1769344d6843f8d055dcecd1c133322e4c7fff70d24d0600981b43a51ccc5d11a68b1b5df126bde9cc5690b9c301c3fe71fae67588c7ced28b78b1b1b29f6a856c5dd2de89259ded2a9eb24f98062ac1b8edbf077da30dbbeb75128b5dd1133a5175a384ce22ce5f6785337d3b4682c6d4882be4ef77e4e336c9214570fd13442475572edbee89deca5b5439fcc9565c9cf99b891db27a9f358710eed58ac37fafa2a4706bf0d856dc11fbfcd9625fbcba5182368e75ed356c8ea4cdb11ded78c9679708e3dd94c6e558c2ad6871419f7d1eaa730cb6bea97b0c3ef31d2de8aa442eac7bbf93bac27f2b82d028ec4ccefea3ce44ab2ae9fad40abb8e71633087fab8ff8e371a44eb2cb4c1db10b4ddede18782bf7f754a490a4d0164819f11fbec8c7ea8d0cdc47760443640f335abed1dc3a31649b2d973b4a16bbcc7a22afaef5c6f6899f523d035de4b81be92b365bde7b4ccc3024c66390cc668d4a3b562ac3e2a5edac7104c34260eedd4bd65f4f56df8dd13c8004f160c7c4945d28f8e9ca6723042ef58cf6987d1d6c94056721ccb701e10536de8e9758cabbed77cba462bd38c00180da8ff8a456995dc50504393c5b93889069c282439b0164ebc03c61e1726322bfad5713bce3e0e1d83ed1a0284ec3a6c8e2329add41f8d669a238c2e45ea3cf026a8a4bfbab2c88cf96d954554df4d57ba56085c4756ba15d24f897546a7cf3a425f4c6eb7411e00ba9534ddc252ce14f593967508c941b642b2f7fca6c39d7746b3467457a3adf21c1c4c59e37ec83f82d59c0f3fdd8ceb10cb26059b00c9bcf80826d629210dec94270bb12dc8482c6879059bdf96b03a87c30bb1c05f636a1e6bcbf9061e047e31c7f5e9f03e8cf7b73911ad0574d81bb5d8b678feb19d29d0840a98e2f9efca31b562995d076e5cd17c0b32570f7d526581c7fb3669b48a67c03b6689b004f088ab316e7a749c79dcced5736e98bb95ab38acb355b616366bc0ab8ea3c1ae3ba0764fe5ce5d201dc91e67a45eabbae2d7a95a2d4a7b0c7ab19bc1a043995bda63c4736577a8d869e15f39163bbe0cd446410f66bf80619369bb036c9fcb11ff756a4d9dd239c6d8779ea57ccce2c3bd1d95aa497f39b8b2a05ab3e432555fea90220bf698143b24db43e49ac2769c2557c23e823d8bcfd5c4af6eb23be2bbba72cbf1a1052a29b703147c6d395cae0f6fc4e4516cc1f1ba2a96437bfaf20c70d7362803aedf38ecabb4199e0fab71f9fc0f35afee353cbded8e7e62c2e315d5c9cecec114836360da9e5b685e6a88d1799341da73154265deaf440e8e21e6edee87da7c28bddef6ded0301152f1acd4b1b6d7a449d0166ef70dfd5e8c5d7baa86d82a6aeb862f7dcc438c78d8f34659eb4b30b66ac72ce151fea2de99dae9b2a8376b68749ee9542b17fe10595b9d6caa37214a3c4ed5228fc17f4d3676b71665ae92eaba7ba3aff2b6d9dd4e152ec85b85bfcd69c499b293d0588dc1b291f33c80ec39c0e3c922acb33e0a53c3e93b31bd31046eb8dc2d869035b4ec8e378650ea80ba2474c6baeeb34fb6e7aa827bf776fa7625fa9a3a4b95adb6c66d5c864be94025171cd18f5656ee9d0021a6efc5d19b22c6b55cebe88d8b5482c4fbd694965cf3a7b7ee8f9cafa1c6c36edade4679b42ac24b007669df36ecdde59f3fb3bfde367e4405ed196160b35b220c88b62c95deaacb9f347d790a9a79fba0ea6ed94127a3931f718fd43adbe2f86a4d598eaf44e0ec660baa718fceceed327de02973b93df61acb2c56cb31a471627139b3eee6d27a941f89b6dcfe83c28498c83f09ebf0541262edf1768c1679e984938c43dd8d6d601ce3dc9ebc05ac66096c1e827a9950e00cecd3018118ed0063d7a6723403882190a74b5b0a713c3b8e1be822d125644ac3c1698f0a3fea96c9b581c9a8e7426f3bffed7901ac2334517ef30500ea590709ed9a52770f63f12a99c218cfb58658fe28780bbe61e69d1b71cf81e982231ecd656d7c91da99923b6386ca8682d1c893a714e828967238bc544869bac19879d643442f765be95e66eb6e9240fa0532425b1cb39db65fe94f52175e7ef7f6e4473a1fdeca69a6ab0afa9a0d541ea5f36c754adb10864f0ec6ecc96305b53e51d27ae887775b674affa529625d17d78c5e45f905de6682977ee05520097e075f95d7b3a558ab6672e7d87649d44a5079ae02b3548aee5df9326ed465e1bb220cf3c2afb958fdf1ee8fae8725adae89b3400ef7822e0be3744ec8b7b4a36fe3184c105e5c6631b88363f91a995d87f60c46dc2eb7b95badb9984f1315dd596d18c6c50f62c41eb1af0ffeff378746599cc3549ce5381a1e7df3e46f5f1bd331610c5f26d145c1be02fc02d7c3b6de6844fe83a3c0b38d5e5cce67cd5c766312a586df8fb41fc6963881741bb1e24ac02dd36cb3b518b7ff98c18299e482219dc7f3ee0300ce307f202e5b99d4186ea7a8decc37ed1b772db69901c334abfc41358e3a82e8b5d48345efcc7b4abbcc9179a9a977b94fbd4c11a68593b4e4f91550a3b32bd6a371419a92c94dd34ad273188dd9b4a644d9e218d166437180a6dde48821af04983a01cc8da412cd33093e72e9956a67e52359edb9ac2645b0a760153102e1b5b2d4065e51afc52caa3e6faa827414d9904be5914d14b6e6049b760eafeed65b04cf5504360d78e236a9f1d22664254592b84ed2aa44accef2dab595644865a9f70adb0d928bb2525b4c146fd3586c5aa98d25c29b5ce102d248e53a117ea122529d8a44a70266ed78853be44093c72cad3462e6f1455c166304aa432a79ebad7da247a23fa869a13781801da9876de8231ea0a50fd1949a1ee10d084dc9a383daf3c596997edb02d0c8f625669d3541a62663d5174b780aba85b5f604d953411bbd7dfecc9ec8798cf68756a558001fe06d24fcfab4ce085e2fc1f8b3a128afb3aacf187c10e3ac1588a855132f28198ec23293e410256181bfdd307cacd848d9f4c32389418200e7420ae0d7cb02d1fa98216720128da62676d0c6820429b357d935cf8f61124083a64a4cbf40209bfea6ea43dad805524dfc8a8aa940296d29be934683b0afba0e2ad7218dd975d45efa4617f7887d43740964217ea4827f84aff8bc28a3d51a8f8a1755821017519c2a17bfe3c5c479d7c661bc7f9e1de9f7b93578f52887409f69d4d52f492166a0db6d4ed4b6e0069062edd19639bf45d3feb4824a0171e74ea820fb92cf10372e6f868d98506a8e63f4b29cd125a385b34d7c519bb627dcf66afba99e2eebfe77c9bc6d15d76c5a7c920678a37bfd9492a637b46ed23dce192d2ee1e47d4fcad00850e5d35dfbcd10dbae62de2262a70ed4f2f6fe6245b3c480b4347eca8d7aabbe5ca10ad2084023fd2efd5a044627b1619cae718cd1195ec768a662301c2fe38f7c3e6c660dad56eb9019d7fcd7044de314cfbbf5a7c7746de821cd3d8dfbe3f3b20f98f77caec0f21c1cb5c75fb307ea9b95e724c8c99103d4548d1e527a3cc2cb2803f6f77817d2fad0f405c4fcd48f984e2abea0f91fddcdab677473fc25a35a1fb04eb04dcf561c7f7be85f48cfe800b3f2d6214d13f44bf46c17cafa90f4256ad68b964e22bea0f5cb3f40c920d0cccb5bea9846bcf3d898a7d128b98e36c5eb6a35e5f99fa2dfce13ff2af9bdc4f416447cc7e4ba88554f43d286f728270f5fca99f6824dce7e99fcf2cbf9c4cc610b580803e843e3d91fb1271ec928dc3ba53308c37082a914815078f12af2fdc72399a69f0cb64f9de0aba3bffdef2945ef19db6d422434679ad41e9d6f93156e5a49bf6c643ad25f02b4bdedfa2f938b315e74e2a3664e7986f88a0f838c52dd6245ba8b2e950cf1f3794f5970acac2dcac6e5eff3b53e32fe08cb2ca9e65609a5a6cc1548797206701fc98f4a13370a5abe5aa3370c80cf84f2601eea68804eed80a517fb943c3c1ae809fd338913af9d1f3c7f36a19acfeb9f3de9125395c6bf57b428a508a94b46bf575019a84b2f7e424a142e9238bd7cdae220318cc1df5e81a35e96398691659e984a89cfc2fba06d05cf8bb04a8b65bc50ceab6082f0e728712f6ad3c52f7d96c1ea97b8911ecc6395ccf19e79f2a141da4e60411948f667848acb8d212de386d3a633dbacb5bab4d630e2bdc7565e4d4f3fb6410b48058b929c47f3cdadc8a3e8d14fdf761ae2820984772a1d47204d3ad6c8c70878ad3d639dea4c1d8ae9ce58fd7984a1f6b38affa7d47ab7e932ebd66a3705eec3d429a1fc369e1f050f5b8e1d6b196078d73ee66a89208cd857d905d98b43dfc0e8c5ea97cab169c45962eec17143dee988a1d59d9d27c817813d657dc81328217ce1b25c25773e87967199e028fd0f63e78ff8192347413cc3c342d6e35992152e3cb47a6f3cbfa97f3a0c25f8bf000000ffff010000ffff745e54fd92780000") + bs, _ = hex.DecodeString("1f8b080000096e8800ffec7d7b73db4692f8fffa1413febc016953a0646753fbb34ce712d9ded3c6b15d9695bd2a457b059143111108307848e6d9faeed7dd3300e60942b292ddad3a566249404f4f4f4f4fbfa6673899b0c36cbdc9e38b65c9868723f6786fff1bf6b7e8323b673f64f9058bd23940a4651e9f576596176c5870ceca2567876fdf7c787ff4c3c987b7ef8fd9224ef828dc0174df2709237405cb79c1f32b3e0fd949c159b6806671c18aacca679ccdb23967f0e74576c5f394cfd9f9063a633f1d7dd82dca4dc2115712cf785a607751c966f0f69cb345560149714a34bc3e3a7cf9e6f825751feeec4c1efe5a24715ab2f33cbb86be9fb232aff818fa4acb38ad78fdf73aa90afc5ffccd1e4ea0e545929d47097bf0942da2a400a028bda89228977f23d04e50c12f05f0625606073b3b5751ce8a4d3a8361a5176c5ab70857d9bc4af83068de0563761aaca3621625eb9ccf966558e6515a2451c983b3d10121aaf2e43c02f4531600df087fd33e84012ce28be1a282077196b2e1836559aedfe5d9553ce7f9983d68f0d5cf46ecd30e838f0618cef922aa92b2083f16f9e23f7904cfde442beaf4bf760f8fdfbfdafd905df2143adfd2f630cb2e635eb7d55a8aa6164121f0eeb88cca78f60a26ab789d61e74341247e80318bf8e3531624c0c6dd60dcbc28aa857811fe5a646940cf6f8069f8bfcea232cf920490062faf785a1e9679028c577856ccb2354c2c0dabe10f3d0c93a828a9150c27ad92443000e7254b41a270942406ed736c71f4029eefc921933454b3192f8a5729c2371dcfa332aafbc34fbc60c3af045ef5b142ce03be8acb617072f496a082d18106d5d084e2dbbebad9d1ba90143e677b662f4850b8c8f297d16ca90815470698b0f801de1619acb024bb180e086a3066f4338ce7f56fe506992b7ea7111f5878b4d159ad8c0637cadf3707edd01c3386dd9dd2a0129e5e944bb6cbf6cfdad6cd54994d817a0571c1cb0ff18a6755a9f0c49a20149ef08297c37ac13e62c184e82fbe2be274c6a7013c125d8eb4a6a1948e612325c67b9ee7593ea47fe19d32fa31fbf3de9e7c70a3889b04dd2a6c3d656db1e8143665011021f7c8b824061aa6fbc1fd316c7fcfe2d82d29e8eaddeab943191dd74fbb1592aac4e1f7249b450855b311a71b54e4d50b782d944efd1406f4f6474d17e053b421515e0ac324674e5578b36cb54e38d131659f6e0ef477686d7ccf8f521c91d661fb3ee534b6c26e4cbcc2e7a767da7330963cb1c1571b5ab141a03d4d01d881639d676536cb92c325d80e702534599530395f677909ec8beccec4bb77c0de985f7b5b3b0605be50fa120766935aad2f72307147e92293eddc42f86830418b371835f2d60a08be28d485043ed1ab18dc1ff47d16715e940c41aae882d71e5112c3c3b5b0b9e453e14330bd7950d45e918a8d3c2bf0c222697fd14b8b5aa4d79c2da32bcea2ab284ea2733001ec83683166039e0e545405ea62d9a1ec895dc7e00daea272b62470068c829fbb27c7603fae97e007b0c1ff2c773ffc7d40902a36d10874cfa601415734cd4afafbf0cd206c35b7b0c7e9c5583403a16f7501983936448098960dfc7846b085b415f0e4d123535921008013dc697ca62bc4ba0f00b88a9278fe9ab0810b5ac2725726cf6549735e5679ca921066917f7cbba0291eb169b3a2ebcf8da185518dd71dd756eef994edbb3a6915093a5d4db3d3bd33874d3ecf797469f46de8f89b91a63a1e64e970d02828b1e68e85ec0e54f5a69256cf101ae1ba25ac9e2807076414e29b03c37741b61816441f168198e688f4b0426bcaf9fcfb562535d041be0ac0a57cc113c5d38487f33897cfc192c6f9487d8bea1d5fa2fa539f9759355be28b93f51c3d7af1eac624e368e62122e72b88819c74d8af6a22e6d9759a800fed24049c0f9ec7c565438a397dad67a94e189942087c728df5aaf3e7f44825de3805374279ecb2404d9361f0ff525e5e67f925a9cf608476204a86c112f496861c205b4cdd70c5b22a912f6e2853346a3e48afe7f68cb0dd2572ec5b6a2d01f68d7aab1813ad183d7169e27a908b4b6e2ecc1dbc21975ca75435c0c27b462b77e671134db0b028852b428fcaacd7105ec3d24f8e50f589b5f2c5e300a305fc5ebe078a860d6d23c5a9075322ba628ac783a457059986080c94f02ac81482c12b9651ce45aa029181652a97a129ece40fa8dc7883381c3115e23e5c58a220e93e6c68aa0109d1d18b315347d370b64b94df83ae28f91fc15cff20080a4762d3efa41907fb222ea4e3d88b6290420eb369bb9ca7f50020aa3bdbd2e7e12d3aa445bda53bcf9af1816b56a0e9273d5f174fd9ded87a038195efd551fac3a6e4c587ac8c1227c0dbaadc02f1fd7c0eb308e81b0a2378a2c3dd1cb887574ffcf6d1fd77290880b8cc8bba43711c52e8414923c79c99d3a5c52be1db35cd4078f2fe7b7052d6250608533b29029ae26801ae32fabd222040d3b58cc06f062f9fa51cf400b8b4518d2305ed31e733b401f3b18909f4c87504fe7099b1a8b86c9c70fc7b155d8243cd66cb2c9e813ffd43455a679ea541496d4c54d0e4bcba40142b36af72240a4d6d1c2518785710381619e92d5e225a4acc91d2b210011125c4e922135b07105771119721fbfb92a732cf2a3080fa5b6302d72628920108e102b05546fa324a31379bb325fc0301c5453646aae4e84d1cbf556025d107dcd1dea03a22b27e46aad0b864b36a85991a41152a94249af1e164f8dd53f8ef1f9fc38707bf140f476d23f8eb9729fc333cfdc7c1d9c351f8f0c1e8f33fe0df09442c0ff6070eb7faabb6b1cb9b364800a2066d83e9803d62189383d6bb068ff7111b1caca28fbb2044f4eac9dec3c7df3c7cf2ed9ee9de338e4965871600821e292c78a662df6502d743ca6ed88df1834e46e5742d9abe7b39fb6419f879062b8dcf5fc1bf851ac6360b50b511a4ed0de372c937c831050cd9829086dba4f7750aed2cadea004111914f3b724fc41767f687bc9aef901c4adbf114b7254ede1fa14dcb529875312857706e26dab4ce549f891c04e928d9b3811f2dbfaab26a4c9c12c6d4359366ca54e4bdc6949ab19c4a0f0b6b11b971cfecf106828995c652372b0b020cfab24acff390edc0df9d8646a076b2d0c53a41f2c062db4df7480d674cf0de342df806ccc754a5df76ee30c857b8dfb122da4e715d10f67fa1e5d15af8ef90345a2392c6e0eb7b5f35baa7d5f816d8a135588794984d94749df9b9e95ab5261e6d012b6f0f769c58708ec1d9c16cd398cd687f62cf4d45939a9aadd698bfbbc3d09165d81a2572207cac41173c7eeadd5037517ef6e00707f668eae5149072e6478bcc80c6fbf73027a1182b66a181a209a2f64c874b41288b6eccdab53ef6cec03f47f51e36e10386fe450f1dac041cbd15310a20b817c0cad6d3d0fdd91233ea4384d96df62046c0741ab0ee4ecd8d5950b62ca0bdce3212ff98f6f27d5a41a83e5c76e087bfbd4edfe5303d79b98166239f98fbc5db96b032df78b0d09622043321856540fe4f51b90cc1b51bc21cff853d14bc24083506030e39623f130a9957ce1d52a5f52cc2beceaeb5e8cedfb706e6edfc86cd28e93eb4760abd4cf128367b080e409f1b8a1fe786523fe3df2e9ae2d61e0065e5faac33b199755b5fa7d902eb371241cd1ddc18aa15e9a52c00f0567a0256e161bd39f8555cbc5cadcbcddbf35f81df7acc3d32d480b9b16833c01db2bf8ec19303ed97b3692784cc6184bf66713a0cc62cf01050ef1feab82877e72427bd5d564f1b886642dacc9e3b3d821f6f8a8426bb7b7b48a3b7c8f2529008444439f730a3ded3c49f3f456b236b82f10704a0591ef3c2e84ccc780816ac18aab8460e4e993e74fdb1e2465b4168a9d63b65598dce3ab2ad1e122c2b6fb2920c54b32a3ae441565968792c13f94e1fe506cddd2aa1d76a9fd0fed12df596b1ef2fdde0f6995735293b434a8d8aa69a8c28d3915c16daccf542778eb672e08ae70580df76f4b299a5b57af05ca4116fdba156a970eb3e65ddc16d3bd5cb15cc5e65bd4b47758fafe8c1920c3db92b2753ab60baa57898526040d436ddd3fd3a3b169b412a05aec01f0bd5b28533b303b15750a573bec05470e0ce0620c4658a9b9307aec480b51f27f45d9c528501fb0abbf0622eca6cbd869e9d986b200cd41d3dd02e9e9737874954fc01ac89415e7e07becc71ab347723a66a4db983d98337352db209b489e709f7cf88587a812b0ed4d1a03ea68d6d0fa6751eafa27cd307d32c4ad3bba272cc84210e48e83b9ecf785ae20ec9ef2d13fb6ac6fc669b3c88e26d8a7108bfb5b9e3c6aa49c37a86460a2020c2728a1c9a3ad1c5c405a0d07060f29522b84592810e856edcba085d12ac11d158eb706cf40dae26ce33bc4c93015a2baf6bfaf5d7dbfdd726f532256e75543905d965d073dba36e2195b6d9ac4bb1ad20d82fdc324b945b2aecdf9ba7b66ae9c5587bf16f65ac5f1720f518726d632be536819f5ac4e5e3aeae6811d0b388f1552823be2e5df65d8750a8d5afffac21284480e3f6a74ebdec1fcacf7ceb34d4fb162da5fd76300c0fd845dfefc99e24065bf3b3bfef2df30ce665fe86766b0ceee8c3c5115085a49a189071bf59d289f4d6dda62d2b99c07aa0858b4dc126af2b4dc15bb1eb3525b6c61e760c54623bdd3bf30a833c90b3551aa475966f7b9ae4c1c067919b7986ee3d8d55908e31ea120321cc7951e698f7fcd66d34b14ceb8d6be0e6148b7d3bb3d9d09830852f7d9932947e3d351a75b2681b7ffa30a73767f83c2e8f7989452c8597339309b826548e824589585a026d376d8429b9b55acb749b72c80d01dd85367669688b203c79ff32c54272da5270bd6e6a74f0dc920bd35f4f8ebac90000b33054f2c1ac8a305ddce88a37e94d67b682d41d2e18f6b7e3b76f423c0a985ec48b8d95fd541b64eb926a279674deae78ca3e611aa804e5b6fb01e48d0a76d7eb241655d1133ae576a384ce22ce5f6785337d3b4682c6d4892be4ef770ce72ec9218571fd1344c475572edb9e89dec25b5439fc93adb83887391315b2fa9c350743beaa0587ff564549e196e0b12db823f6f9b3357cf1e94609d238d6a5d7d03992364739dae192cf2e11c65b94c6e55ac252b4b8a0df7d1eaa730db6bea97b0d3e738452ca34b91b910bebae775277f8ef44102a855b93b3bbdf996855395d9f24122757b06c9feaef782341b4cf4205de06a3ed690f4f0afee1f53125293401902ffc03b1cf33e9073ddd83f81e94c80668be66b5be6378d42249363b8e3e7489f7685445fe9dfb0ded60fd087489f752a0efe46cd9ef392ef3b00095590e83312af568ad28ab8f8a97f63104158d89433b756f297dbd0cbfdb800cf064c1c0975424f9e8c8692a0723f489f59c76186d3506b291e35886f3d09eaa438faf63dcf5bde6e76bd432cd0a80d580f2af689456c80d013524599c559468c0894292036be3c4bb60ec756122b3a25f1db7e33cead0b1d8ae2140c8aec3e63892d24bfdabd14d73acd425489d87100595f4af2e2c32637e576111cd6f272b5d3b04ae232bdd02e9a7c43aa3d3671fa12f26b7db200f00dd899b6e6629678afa71cb3a84e4205b21d97ba6d6e1ce3ba35923baabd156790e0ea66cf120e41f416bce879f6ec675886593825d00675e7e0415ebe4900676cc9385280b32120b5a5ec11e6f4b589dc3e185d8e0af31358fb5ed7c030f02bf9ce3fe74f800d6fbbb9c88d6023a9c8d9a6d5b3cffd8ce14684c054cf1fc37e5985ab1ccae0337ae68be05996b863ea9bcc0e37d9b345ac533183b6689f00de011d795dcf49838f3b89d6be6dc30f7cb577158672b6f2d6cd682571d4763b8ee80da6dca9d55201dc91e67a45e8bbae2d7a9522ddef658f4a29ac1a043b12dedc9e5b9521d2a2a2dfc3bc7a2e2cb406dbce831d82f18b039687b026c9fcb11ff754a4d9dd239c4d8779ea57ccce2839d5b0a5593fe728cca826ad5924b557da9438a43b0d7a4a8906ccfad6b02db717c5d09fb08f6343e5313bfbacaee88efeac6ed880f2c5049b91da0e067cbe1727d7923268f608b11afab6239b4cd976781bbcaa00cb87eebb0afd066783eacc6e5f33fd4bcba57f1f4d63bfa89098f5754273b3b17530c8e81a97bee2079a9c146ebf204ca85f6dc855007ef1722c78821e6ed9e875a7d28b3deceded0501152f0acd4b1566bd224680bb7fb867e2fc6ae3d4543948adab2e14b1ff310231ef6bc11d6fa6292add2314b7894bfac2b533b5d16f5b6138dce539d6ae51226226bab934ded264489c7a95ae431f8afc9c69ed6a2cc55525dd77df415de36bbdb29c20579abf06f731a71a654121abb31f86ee43c0f20670ef078b208ebac8fc0d4707a25a63786c082cbdbc510b28596ddf1c6104a1b109784ce58d773f6c9f65c55706f6da7af2ad1d7d569aa94da1a37a4192ea50395dc70443f5ad9b977028498be17476f8a18f772ada3372e520912efc0537a72d94f6fdb1f395f438b47ddb4bd8bf26855849700ec92be6dd8bbdf7ffeccfe7cd7f81105b4678481dd6e893020dab2447aab2c7fd2e4e52948e6dd83aafb1d0e3a199de311777badb32d8eafd695e5f84a04ce69b6a01af7e8f4cc7ea72f3cc596db6bafd1cc62b71c431a27169733ebee2ead57f954f4e5f61f94410843fe496887a79210abc6dbb15ae4a5134e320e7437b68171ac73db780b584d13d86308ea6d428133b04f070462b5038cdd9adea31a400c813c5dda5288ebd971dc406789ce21931b8e91f668f0a3ae995c054c463b177adbf96fcf0b601b2189f22f5f00a09e7590d02e937afb3016af92298cf55c4b88e58f82b7e05b665edb883507a60b8e783497b5f1456a674a56c60c958282d1c893a714e828967238bcf492d2748331f3ec878859ecd6d2bdd4d6fd2481f40b6484b438ac9d56aff407890b2fbf7f77f4239d0f6ff934d345057dcd062a8fd279b63aa63284e193bd317bf25841ad1b4ada0f3d79bfd552fa2f4d11fbbab867f43aca2ff03613bcf4836e1dc4bfc157e5b5b5147bd54c568e6de7442d0495e72a304ba4e8de952f1b8dba2d7c5f84615ef80d17bb3fdefae87a59d2ee9a380be4702fe8b2304ee7847c5b3b7a19c76082f0e2328bc13d1ccbd7c8ec3ab4670cc4ed729bd56acdc57c1aabe81e7143312e5e88153b65dfecfdff6f0f8c77710ea638cb7135ec7ffbe42fdf18e6983086af92e8a2605f037e81eb51db6e3422ffc1f1c253462f2ee7b32c97dd9944a9e1f723ed87b1254e20dd46acb812708b996d4a8bb1fcc70c16cc24172ce93c9e771f007086f90371d9caa4c6703741f566bea96edcb5d966060ce759e50faa71d51144afad1e7cf5debc3bb64b1d9917cd7ab7fbd4cb14c12c1ca525cfaf801a7db8623f1a37a42999dc74ad243d87d1989dd79428258e11151b8a03346d912386bc12e0dc096016924a34cf24f8c82557aa9e958f64b3e7b29964c18e8255c40884d7ca521b7845bb16b368fabc690adc5178432e95873751d8aa13ecdab9bcba7b6f113c5711d834e089dbe68a582a4256522489eb24ad4ac4ea34af5d5b49861496ba56d8ee905c9495da63a2789bc666d34aed2c11dee40a379046eaa813e1172a2cd5a948742ac06ac72bac9003491eb3b4d28899c71771598c11a80ea9704aaee4a9883dc714ecd5b4d00f81804dd5c336f42b1ea0a55fa273ea7a843720346ff6f76acf177b66fa6d0b4023db9598f5a10932351eabbe58c253902d6cb523c83e17b4d18fcf9fd91369c7a83eb42ac506f8006f23e1d7c7754650dc903c14efebacea3306bf8875d63244b4aa8917940c47619949728892b0c0efd3183e5674a4ecfad1546290203072c105f0ebe50bd1fb98e1c880251a4d4deca0ad05095266afb36b9e1f82114085a6724cbf40203bff559587b4d10b249af8270aa602a5f4a5f84e1a0d42bfea32a85c873466d7517be91b5ddc23ea86e812c8427c7108ff087fe2f3a28c566b3c2a5e5409425c4471aa5cc68f1713e75d85c3f89d006caadfe7d6e0d5a31c027da651577f248598816ecb9ca86f311a408aad475b6c7e8ba6fdba0b95021a9d3ba182c397e30cb17079336cd8845c731ca397ef195d325a38fbc40ff5697bc2edacb6bfd5e6b29e7f17cfdb5e71cfa6c52769801f74af9ff2a6990d6d9a748f73469b4b68bcbf923c340254f9f4b6f366b0edb66cdec262a70cd4fcf67e8b48b3c580b4347eca8dfa4d0772872a4823008df4ef37a859604c121bc6e91ad7189de175ac667a0d8ae355fc91cf878dd5d05ab50e99f1d50b3541e7718ae7ddfad363ba36f4906c4fe3fef8bcec3de63d9f2bb03c0747edf137eca1fac3ca7312e464ea003545a307971e8ff032ca80fd35be0d697d68fa02627eea474c27155fd0fd8feeeed533ba397ebb542d0fd826d826672b8edf07f52f2467748059f9d1c14d13f44be4ec3694f521e94bc4ac172d9d447c41ef97bf839041a099977794318d78e7b1314fa751721d6d8a37d5ea9ce77f887c3b4ffcabe4f762d33b60f13d93eb22563d0d4905ef514e1ebee433d5824d4e7f99fcf2cbd9c4cc610b580803e897c6b39fb2271ece28a37772671086e104532902a1f0e255e4bb8f47324d3f196c379de0aba3bffdefc945ef19db6d4c2434a71ad7f6cfb6f10a8b56d22f5b998ef497006d6fbbfed3e4628c179df8a899539e21bee2c320a354b7d891eea24b25437ca5e153161c2a7b8bb273f99d89ad8f8c5fc2324baab9f5865253e60ea43c3903b8a7f257a58b1b052d5fadd11b06c0674278300f351da0533b60e9c52e250fa7033da17f2a71e2b5f383e7cf26d4f279fdb5275d6caad2f8b78a36a5142675f1e8b70a1a0375e9c54f4889328a244e2f9fb638880d63f0b757e0a897658e6164995bdf0684cfc207206d05cf8bb04a8b65bc50ceab6082f0e728716f6ad3c52f7db6c1ea8fb8911ed46395ccf19e79f2a181db4e60411970f667848acb8dc12de386d36632dbacb5bab5d60cc47b8fadbc9a9ebe6c8336900a1625398fe69b3b9147d1a39fbeed34c4051308ef953b8e409a64ace18f11f05a35639de24c138ae9ce58fd7a84a1f65597ff27d4fab4e93ceb966a3705eec3d429a1fc2e9e4f8347ed881d7b19a078d7bec1d51c41185157d905d96b84be85d16ba85fcac7a613e71bb306c70d79af2b8676776e6d205f06b6c93ac9137843f8c265b94aeedd86967199e02afd0fa3f2477c8d91e3453cc3c342d6e35992152e3cb47b6f3cbfa9bf3a0c39f8bf000000ffff010000ffff5aafd5ab267a0000") gr, _ = gzip.NewReader(bytes.NewBuffer(bs)) bs, _ = ioutil.ReadAll(gr) Assets["app.js"] = bs @@ -131,7 +131,7 @@ func init() { bs, _ = hex.DecodeString("1f8b080000096e8800ffbc5acd8e1cb7b5defb2988018c3b038cdbf71ab6175ad8186924dd89fe261a8d0d0302027615bb9b56155926593d6a090ab2cd2b646521400c05d0caf046cbd49be449f29d4316abaaa75b968320060c4f17c9c3f37fbe73e8971f09fc7370727e26eea9cdc10d71706b25d74a9452e0dbc1715a9edb36d0e249a15c21695536952e64f753f7579b7795a578684bc51b4b5d686ba413a6fb79bce1b16aacd7c1bacd749b8bdfbb9f9d1e1374ca7bda78db94caa9eea7ed35355df579b9aaec953831d66c6adb7a71e9e552f1e52e68b3fc9a4e9d2b57eba09d5066adad281598a86464c10b09c68daef11716daa02bfd228afb75bec318db9a42890be5d6ca1149fa4b97d6d11910786720ddc0d33e6ea2086b2ddd0733d1d3bcd92ea3069c1b2eba757e292ee3e600edd2fae5e82c990f5bf2eeca7ab6d91d55aca4cb9fad31aaa0f38288bbfe16e2a4d2cb291bb76cb3717ab90ae21f6fc467fffb7f9f8bdfc967762e6e5ab78410a5082b2516968c0279056807a7e72ddcc0df20c2a7da29388587f01e2a9425fedc4149097cf76ad96a1394174522431a572094983955950a2cd1ed4ad7da0c329d6a5f44b154c9d72afa8d9fb830efb1455b2b13b2eaf28789c4a7f6ca5456c2a165bceb1b55d9429712ea612316aa991cb85d6a0e21faefc011fdca411397c611c3cbd390499b76c5cb6d23e7951297e7e63c066bd06b6ce5df794b500e8aab6b094536d281fb523c3dd0cd0d72c6a70742f68125e0c64f0fca8d91b52eb010ac68945b58570b09cbd55050214ad2289c7f23ec828d9c8ecf88813398c796ed0b8908eb0374b8cb82666481ac8d2f62ddbd75cbb692b8ba9d5c4d9ba0555c357788d77cbd24bbc02906fab32ce8d867fb8f7734d4f38d721ea64d717757f9c031a104c4f0dd2fca4f763794243c1d10731d10914e09bd3470b8525cad941195b5cfc8a7a11881f8314be56708707065c49d932762012a7ee383aaa3524e7c4f93ee12a5c58e62a53422cb13234c5c96508284c21d9ccfc186b282ddc8037f61f21ccd4a180a074db42567889e92a79b67633922e3354c5592214b985df820eb06bfd751215e6823a498f9903f2062a1d728271cae9205b67376a3082bc57c23fcc614610505b0708ffc88071607576ab62f99b0d7b028a4d3f59ca5842fc28010a1b1c2b470cb4682b1091b3fb44821504f3bf74187b67b4b04e122b291cbe83c88bd3127d704871e0347bd5838dc97ec246a8a56d8c9c273117708437f2c9096ae6d005dcfebe24a5795984379f03cd224f93c1c3ef4fe5f542dece1f66883f958b242d8c223ab8a0532a0a45bda40fb9105c04cbd6f17ae54b4078c38a24c358cf5c98ab6cc9325ef924bd7361c284370dc61bb720d2465f79fef5e9e89931652188a2d4efd58f757d695b1b89955acfd6d885b62393152503e760bb88758baee35847e1f4d04871bd5242e97bf9de87df27b2376e3000a06a48b3630bfef21a48c722981dfc55f392fdfadec5c56e2b44f6fb4e166eb817d96bcb26fdf4e2c20e1537b8f4eb3fbe3515adfda7f5656b14ad4100d29240b71c6e9489ce74cc5bae0afc81ca364d31fb8a754d3a741defb407259d84e80f7a1194ff5a752324284ee2f55d0750ae4a1b6ddb7c56e6555b4b06797384711601fa462306869c799f7e868b2fb81a4d8e3edd736d610c5a961e773c1f9fd16473a577171784fdffcd41f6d55f3ba7bfd9c642648378ec449beed8f8ec83f6a0362cb94541c1eab1f5adccfca7ed8bdab15b27da4cbae8a2c1c9324d53182363d9d87369e18544d58419c9db2854f29be476821ae1105bd48c1c6fbf29704ffae1f7a8804c137d95a5d5b4750a6c521553cbac709ee5efebd5854daa87da0ea91e9576f5d5b42ba7db41017c8debdaca869a67028d12fa6fb96967549a6ba0f6017c606e30fdcb7ac27402c62fb2df33c82ff395df6d667b35c005b10209f18b93f702ec36ac8f6bd33c6caa0a20f52216b5a4afde2db54230aa7185ee98500b3a55594dd8350cf91ba66e2094e2203820b82ddb220cf3dfce3116aa3a1c3adc749cafec2af1020c8650431588540456665874c3ff27263131f9c5699b119e5a4ee35b84181806ea96c50c1202e34b87d44d5b87b9def6fc82190a2fb7ea3649228244156e9d6ac164e0ce24a46687bb26ca52b738c9d3bb5d6ea6ad2ed70bcbbeecd276bed5b49e4dda8e1d9d7e53c3e79f06b0d0db6e4dd2a817c7146696d0ddb1c4627e97fa7660f1129e7486e85e6f238e96cf84826982d3e8ebc5d107cb43526a35fc943a3fde46363f3eebdc19387ec170da2a01a00f8bb28969f8a0299a3191e2b6dd07d0f352fad89874a95b13feafe0cc402f5786265f7ee04a37b626608d80bb98e75d5c9f570ec02ccf7d8fb1bf0a8c627c81681438ab118459c5f117e63fc350abc2b1d56b3586471844608dc1a12668a80924123ceaca5268f85b3808e60d03456ea6cb83a90283ea5a8855eb6db39e08239f9163773c3e6237cea49a75b8983c981924f8cf7c6781a36212a844e291a51477dc434cdccc403604aca09f4dd235553e291c831096c466dcda6b99ee21fbd43d89927907d540d15c54087b070247c0896917552e41ef0088eaf521c3cb0f065088f5fa34503c005b6d01b0313a77a45bdc5081e53ef11dad41035d4f41bca58d4f268b3eedef0e5b9be5156236f2bf702da8b551b4adc9cea0f45f1e071b675807eb752937dabfbb9d44b745d161193f7b0e3df74f62a61d3b3e8ec80a16b453dc6402dd8a689d171cead6b5e681b4a70e25371c7bab666e76ce98ba24fd07a3bd81cb54e9ca315b085adde0f64fd18c9c6fe810e71ae1aaae4245912f555fcde27cb8bfd3b53289e88618f1baf73472556284473052e3d142d48d3b1c111c39685d5d4a293eacb9161f23ac8572d07f56414e4ed225c5160c15d791c460d1fb563ca2e6e6cdfc1343455c5610894079184c9d01452b4333aabe430121a91e01953ca5cd784a061c06b94dc9ced7609e245db2c61faf71140394fe5ed13af7610f14ad59cdfe68ad5792c62d8d374816a3e0c3daf109194e8c4061e1c13be51411479303743510d6e037afffcd3dfb639811e54a1386e1cc5f65ceae7f6983484c8c90000f5b6ee2f939cc480375a39aa83dd8ff96aca1a26702f6eec3a0e5f66b32c1d011ab95c3a040ca11e0a718218456ac1db390c556d04aa81ae7850258378f971ebaa8f5ff59311e236746fe914411f8e746a6afb218df68d35dddbb5829222c1340282802f5f82d4ab5713768a3e9573e33978b1a4390835fa84c724cfc9c0f26ca4be9a526ef214b253bf295627a09a09e9c8fff02daa8e426249d50ff8841a79c65d91502909780dd785948eb3e3c5ac2dd3084fb2c2b7e84f245588de4d437a6f196e31960de44c3ca928a173149233fec2d092d02c50e7331e0642390d40180df7fc319f45767941d16500429b26cf88406291cb93a3eb4ae042dcc184e3d8a42487cd83123857cd7cb12b73212f3570ca12e695bacf23fb31a028f482f2ace8dea42107f98104988dfe27005206a4ca5ae3e4e058224922c529536b205a90b504b8f211000e05112e364ca7a6cf1b849f05d56cf37d9b5062c95327066899ed456e1d4a849967c80def4ab5780818783d5c824b1c7997f85e1a10d9b225c8406326d5cedc39d0ac1190a6d2259b128d415b95a46429bef86cd446a02a935381659a0ed29fa8c415200e2464939ab69ee3efe36814dfc822d91ac1b65214257ca821df4607116d34d4638dae364ac543ad98690849acbbd7600e2a3b55d0a6668f2586e25caf926b9ee332b389d738c6efe77a92e7c0e0d451d0833cb7cae0933293029f5c1215792eff651b7e3ed2f0cbff800271f5175ffe17d508974126d71fa247eec700d0d4f3c0f091d96d99dd9d8a4c13f57f47936345f60a24d06e1982ce2b699e5d9324f26fcbbedeace50b6d77520a365a4770ad4bbdeec2b6505a82884fe3abc7572201cda7077dc248edf630ad45685ed3396389a471719846f547d738e6a920bf4e50a6e85b5e64517a538a018b6b61060bacf8b47f75f94a0c90177c610f4f6b89e24cdcbeae551efa66d5267628791c4d95c37e44de65abd13c1eba7aa654734c333c7e47485224638edf2ca08180924dd0a1e661de31dbbf1f50edb92ddf54a70643f68ba4d0dd46df7579183513f0d27e8bfa00bf70e3defabd7e369d73fc46c283807ebbe13afcf2f321e6f9d5ab020e3fda1df6c77dcce7574dfab704cf87b3a363f64171f8c911afb604e27d414c1efee16872874131de2bdb9636f58e968e791e021f9900b5055e2554cf3643a218fec739fae303eae820d0145123d6a3cb32f3ccef0728b3351a7c7e9820dd3be09abd166a68beb6dbf8c5ee71c8af78c0a57966867e103a5971a2cdcb0d05d7699afc9ff4607dbc8110be124f2c206a0a938f5f4d362788f6f2655a7ef56a7ab8efacfafd664c7df274fc443e97795699f7108cdb9e740d8bd4d0d6d439fb7e20e6e31482bf6d6dfdff274fce2f18a1dcbd3c1bd17469e5bd8f2de9a1204ec52763ff6fe95d50963ce1960c8a29291f73d2a26c0ec3518cc8307a3fcb815896f49638cee89e26b2c15a36fcefe39b9fccff8308e515bbe6547b0cc7aee74ea1b562ffca6f616387eb4fc6541ed37445bf0001e7dd9b7ab65f8ac13177cba2c464223881d47ae4d79a47584bc5d2cd55b8a2de23ce6a68fabbe15a55d00415181d27f45a71e2601dd532142b34690855344dfd699afa0cd39ebd4a1a47cab6b6ecae5005b8de02d1047641d1fa6d9ccce3451a10a183f1a0f53fa9cc910ca935eb7ea4a753ddbdf3053fe72b52dfe857e8fe1e0d555807774516a2676696b5efe7f896c93c2a1becbb34b0d779a0f21d2540521a5b0b36a2b9741034154cc1c9eaea675eb142c65763ce9b8c4fd39b56be46d3933d1dc31fc61f7cf4ea5f000000ffff010000ffffd0b017052c250000") gr, _ = gzip.NewReader(bytes.NewBuffer(bs)) bs, _ = ioutil.ReadAll(gr) - Assets["lang-pt.json"] = bs + Assets["lang-pt-PT.json"] = bs bs, _ = hex.DecodeString("1f8b080000096e8800ffdc5add6e1bd776be3f4fb121208004b04c7b70ceb9f0c509fc93a4aa135bb0ac06010c1423cea634f0708699194a510c17b264d735ec584d9b2246dad8711d04e81d2d8916458934d027205fa14fd26fadfd337b8643c94973d326b02dcdec9fb5d7cfb7beb5f6dcf99dc07f73179716c555b9357741cc8dbf1f9f4c9e4e1e0a3c9babe9d7ab7127e397cfc5f8ed647b3c1a1fe0efeef814fff7ec28df17d7625ff2c06f31e63546ec8ffb939dc913317e353e1af7c627eee01bb21da74116275b9553b0436ffc160f8fe8c17884dffbe363678144a629cffca7f1210d9edc2bbd94a5d7e3ae1d1086f1a6b818c5d1562beea46225f5d6240b946441b4f601cffb11c21cf1cc7f3422dd83841044e0cd10920d21d129ff748c7710b28b3f7dfea93f1e8cfb827ee1339c4c9ee01c231c8e66f6277b1f5851a228ee440d299665b22113def925f6dcc6d81e6df576b28b5d4f78c5eee41ff06f3f9f3be300fadcae8cddc95e958cdd336434db5ceaac294d3e274d4098412ec2e5a515b1920561f095970571c4c3bec3027010c87da476f879fc62fccace08e354da71038c7b4ccab5afe328920d5a4b7c98247152da18ab91ac87f891fd143e5290f572dcde4a82b5f54cfcd77f8adfffe55ffd41fc8d773b5e1597e2644d78912fb275299a31d91f7a12d82d4b82d50ebc30bdc05bfd33b4d1536e4ebe88fd8ea0b247d8e311ed35795cb5304c8d6927187038d98558188e45f0e343cc25550f95435c30625e91a1cc94165ee1305db2afab852b41da508a903e8ffa01ceb0439b8c6813ac362c9ffc4adce8b46494e576a0881ac00aa72cf88ef21e77c26614c61e02d1d3a2bc848c1467239299a2f6a860496bf40ffd40e1c1333c3fd58238d2d3fb1c0b4a83a6b0804797c0606ace8f6781c18791b71a4ab1b2142d291b5aef50b3f9851d9bc94434e256cb13a96c7b090eef8b5b7341fb0205cfad39e119f410718217fe56e4b582065e64b168cba419272de1c1635ad07443f8642904ee96889bec5c7a7a9d241110655f190c52935bc10870782cbbb87461e9fa8d9b58963ded0863a093c93738329c8cc692f2df4ef67082c7d045bf062f2337519e46613a2a4887054e10e3e4b5a4214c5191fe90a16f40a08d190cb243966277fcc6f810cdb22059b7aaaa8a3ff3f2a3001aff5b99a4f0368338af6cd89ca895e9180c635817dbd0310af3a1ce5690d2126235c852e12552046b519cc0249beb3212611cdfa63885d24563dd8bd6645a07d84981191f5dbc299a5825dd4a33d9520a1fbfc8e3f650fbf12e695d8c0762721faf8e211b329718bfc60b8ad61dd2eb016125391567b77d52dde40966efd5c5f8998b8f9874ac4c0925e62b620e60ec81e07352c0f758ff7840304bfb43daba7b7675d8165cc727c7f2e18622cdbc561bbf6f28b5a622888427ea69661f00b97cb82feb2691edd06b603874e3339ef862754ba45b51235b87d2ea3a16b4fac9731c71212a6cc3495605da70fc1c698c7e81cc03ce6910bc674600d3ba08a91d520a260af6697a3730f13879ea8a0a77edb1a7f685ca4282f4cd48a760547b73690ffd6e5f130d2016566148e6330c270fd842e45b47261d56e8b59dc41983a7682671cbb88e68793ebb4e8c404d440484829c40ffa9015060caefc56610866215b601b492a128c411df9909f746d881fb254ad93f29fdd209ca590367614f33b8a6e243f386913e944ad6acaa23e5a71cf7430adcd254b602fd820572d060cf03e673063a35eb8c8afe5ea149ebf72c2ba519728e7b64164160aad3588f879de60a677754814768e502c4c72b8be262072a8a00939c94c49297a69b71e29b09bcda09c1bbc6aea990a57ff9c4274a2b257cc99359c56e8089442793535abcc47158557ad7df60f34f02b841246650cf5fb0968c649227e40365f13234d9d161bcea85e28a49423ceb5fd8e4c4a5e9b844027b95b89f73f7f23233c9e8c1d4d2b3934a69f152862f0909ef3d3e87f22ffaa1d2ca3718a5f2e5317be53e760568d9719c40c492cd2da9f6824a902f617889fb157cc26c7055cab6497da92e9a46cce038d79244500ac757578534e7863c13e667fa04964e89fd84d2d3acf8056da9b824d4b2a7e2dca6503b316e4cd9fddf88effd02ab97d6104be03f56846d82ab93d28ae71b5bad59b27541b077b0f4a71e412aaf627d850cf26e73bf14cc2d2e33a433b915f357834befa70bbcd8bf73d5718f91d69c4c154765f63b8db885046a167536bedec990c3239f28cb0df94507b64d676eca061a54780e53880754e5c0fc94431e1832c8c2d1e666d36b715e1de4cf90b616afd08bc52b8a6d9fe4ceabdefa84934d8d943a3c0e7599d0c7296db14987dead58e19ad7922eb84eed0218969a800cf5b10bce77fdaa6296e3efed9366330c22a909e77d4871c2da1eda0151fe1e8b95df228d5f6f8a65d01fa3937332dd78e4cc5d8bd968e42d9f042d5424aecfbc609f63865ef213a637f807cc86ca8db2535c476025816fbc31d5e1a5180fdb94cbefee0c8733cb2c79d97a4e3e4c6c29a222419229e650d2b43bc444c4679ab23412c9c54dd014388f1f4ba23499905f2255d5c54dcc44e10ed9407e12af411137fff70ba2e14534b99362a6073625d275e04203da6dea6ae005b108927750198be0814c8ea7d0e354b9fb291cf9095149a50630ec7f354471c83663fad273a1bd46c466a4394c5e091f31a11c6285ef68479287e836ed77081a43a7c16e234229265fd38d0e43f3050b3aa0cdef01644e5c22b3c4d82c36bdc0a22356a463edea04d4ad99ae04bdd1c59e9d9ec88d406e165a340ed09f92fb30496095d22f0f27df90b8c0d999cd99bc8eba71f1d3a906ccb319938037cfa12adb8ab9217593412c5255bc012f9ad71eff8ca140657e1c35a7e915dd1760f23c73456a360c49f50bf90ed6597344aaa8e573577766a834509101ceee06382b50dc945db672fba7f9e49402e07c7d509cbe2142ad0041b5ccb65d65c3dfb55a1c75203d58f33b2800f1b04a6998b826a5affb3fffc1635fab70501efbf6dc054c5d7ec656cbde86a19aa39cb1b8147319fab015fecbeaa3dab1e031f02602252eae08b3d2752ac8b8a072a06b33c8d675810a93bed60c7787bb66944aa862d2bc7cc0003be246e10317030aec0c9e28141c9c4913eab9a819e927d5b982eb1b3ed4b1dbe95a66e13f83b0dccf4a0bd9402500a7c9edc8e3947085b57c5eccb4e7ec68ceedc535b932c8e7023544a0d336909a1a22c56c50179fa21225e8a6e729f233e5070fa94097a8ca24754358398351a54ff18bbfa6d33f2bad1ae2a92ff22d5397374af3af551757303af4151a6b467dacd301d793d412d19a2163164bcbbcf584f36e6ac460bc1d708b4ca5493c7646452288703acfa7825c531fea9b38b539f555b28e3ef9736e8ebd664f2714b7e1b4cf1d08aec6690923a5e05689ea9b73e8f4ce92ba93f910c9fa75a10d6947c59da4014660fba386ed197423c51ddad18c04979278d394b37402db3617ea282c2d84c967c5edb6868ee7daa5861cb1aae0b4cc67b9d3a68424de171fc549a765157ec831b60d1551cffd7d31fe892370d77167102db194c459dc88c3f3cb5fed6e23cd78bb67f473dc1dd693387253dbcbea4979fea049395abdc360ee958975509d558913a4b0a12023b2bbe403d8959db4579f5e2388e0708c7a853b86346e669b04230859be9fa1461e35a064dcbc50dec46ed1551047cec7c0bf57be61e89127bea02b39dd48eb717966af1cf2cb0647c2947b572a35d467e506612754aed069af259e6f1778cee5e0a8d0f4cdc74faf904ad9e2c400a4223dd78482326afd12dd6c27f16a285b9c21c416624525e34866a261ef86ea205259b285f5fe7bfb678d685dc5f3289a6b8e044c2aedf11e29b8322a33a59ebad57ccd4738e50e58e53d93ee8709870e0c79cfddbab09a2ccea3a6e9bdc9937add3a0c116f6f6d2d916bccce099c103c4143772e3bab61d008b784b7e10521df6b7899b8f35e2709dfbbab34fe92ef744eb97f76d6c51ec1dca33cab709a6424a6bfeedcc18a77ef16a4827e9bc15a2751fdb33c243c6a52539b94ca07540ac106495e7794dca2d4a35d8b6c6b06292a00f65b58dae620689192cd010cb36deb4dca250621724ed233a28fb445bbdc79ee73f6cdc948971393be08310334ae08eda72303b253bbeb1a8435f740a7b2530aaa6d9d1aa8ebb1e3348f96f366bba347193592ad3619b7c3a43f61d24feecd5d641f8645ba5ee4275c6751698712ec36df4b41f5edd0cbe89e29adf15c91065f51633b4245d66edbeb012cd1b42420a1ed7c2fa35b2d5e58b5b47d0a21dbc4466cb5582e0e2ee6647ee085f11a1cd20bb45dbec3d9e8c6fbbea3567d2565ab136e689f599fa8b2d8b639277bf9e5418f49c3216b9a5ad8a3bae082be7c5fce40a7e7682e480228187ca32c6b5ae18500ae993bb553ddb1deaf66833dba67e8171a738e450b7569d7dcfc5b8ac91d3d4725a41f879bda5a9ebaf3a67edd27bda9f3ed2a5aa008afba23a4d2d8b93823fd4ebe5677799c08eccfe4965d2eaf0f503f173d0f5009fb469a08d9a29f2ed2040a9ac067c7434ddf097d72094ffcf1f74e0720cd128a67846b4aa0841f41ab427065f81c3b60d469ade2e79a72a1b4ed35b467fa5eba2e093178529be2dc0bcd1d141fd0de531c9708161e1d907d55e9ac42d0784edfb40f2ed024d6d214e9b4dc9dafad6aec2d4c42d5a71938a06ebded2bee5153d8b8a728255f03f016aaab60884f97c11350a16ec0df42a4c7cac403e5378c57f7c9299c12852c473d870375b56845742e79cd8d90f1d99eb9eab137bc3bea6eedb7302d92eb1ffff4ffdfc05a73386ac1d408fdff93c63646a6da3be6a26e35f4a2db75dd42c9553b3422e81e97adc398cba96f072a5746ca618f12ccbc74d3af197760685d3ddd525f66fc59e862ecd69c4916baef98dfa2820a4cf909335eed25625edfea2f4c9f4009cf06a16743d30c256c85aee980b7e6b8697368527ae1fee6cfa2a242a4ef21f8827e27ef9bf04ef64e94fa8e2f729bf085b4b5c5b98988719edc4af5ecbbc2742fab7c8d5a91c56f0cf205178ac6e1d8a3888c43e73300d8eab694ed1a7d2fc19f3cd47fddad93f305c48c6ded962ddd4bf0cc4bb26c9537564a51d8d486f450b570758c3c641debcbe9feaff0e4c4ed2dce8a94ea66e3ff7ab75c3d69b93333ffa73fe470cbdf1085a88817aa11b766e0d67e9b467f7c1c64bebe50e35012f37fb1c06f119a18d8a0f89dffbb85c21e11f8a409acca76cd0c5cb53719aa0f748a73b0fcc57469cb25c5679e801df616143b571f2ff02d15b9d78e8e9881fe60c12268cde2674df030aea806ea9436eae8a4ca15faec2eaaa255051593ac6d1633a77dd0c33b18a913055f74e4791e519d7876c7ead3bdfcf272a65bb4e992a63244dee9c2e417f8e34a743b326da61fb01e71cd7d1d7e4e6f67a54dc871c57c4c502ed49d7154d04b7133469da911e0bdbba539798b13a5a31e74f76e7109d377a96809e403cff9e4d0b94cb373a888d2a30d6b70ee67e873b0cba86ba8f174c60d88f982f78d2a941d9130ffaf6fde5c5ae6a6eac72b8b67aea0469a7ae45dbfead05f0b14bfc8ca5f7f46df73793edf1b7b5c2f5356ad31ea533a6e058c0e5ee67c986421c8f7e91b303725a774e398c571bdf461f589fa9c60681bb3aa6da8ae7746fc9930972408c987aa60a91a5a8d2487f92ebac5a2dbbe874ca80ec6a3f2c74e39e3993e7e1e56d54a90a270b35428a403272a03be835893ac9655996d523f43f5c1e902748b594a83aef750996346b021196b59b92d2f6bac0bf9255036dcb2b3a9a3ee74d2cfd26ee50dc42c5d9f81dd253292f7ac3519b9870d8973f49d26fbcc7ad7b9b872be32abf3fe0fa916d559bc5f203006ba0e548b896cca26b6b95d7f36868914138786c5cde8fc5bd37fae5bc5dfe6f1fc79dc51fa67c3c3dc74ff9ac1c3a5a127f6e2a8b47fe1feca5ce9d2e9341fda25aaa11aedbbee57354fad38017d494aab4fbe56ad04752932793cf7bbbbff030000ffff010000ffffa31861de2d310000") gr, _ = gzip.NewReader(bytes.NewBuffer(bs)) @@ -153,6 +153,11 @@ func init() { bs, _ = ioutil.ReadAll(gr) Assets["lang-uk.json"] = bs + bs, _ = hex.DecodeString("1f8b080000096e8800ffe4596d6f1b5776febebfe2c240000970b5ed62773fe4430b274e5237892d44768302018a1167280d4cce70678656b4810bca8e444a14457b2dc991ac8d2cd99269c992283bb668bd58407f4a97775e3ee52ff439f7ce0c67483a69817e6b8018d4dc73ef9c7b5e9ef39c33dffd86e1bf0b9786afb0cfb5c90b1fca9f41f97e70bf79e162b8386a161d5a0a1eaeb9cba7f1635565574d55a315bef9239f7bec1d9482931f93eb5f6905d3d61dd31247bbcb4d12fcfe25dffb811fef26042dcdb649a27d56e37f2d752d68fd96723973825d324c63326f166d76c356c634f13acbd18db17f124a4d4ff98d433e7fceefd5bcd5efdb67e7de62c37f55f61b73fcd18ffcf1e1cfa7ebf1798661168d8cc64634eb9666d1766fe5b47d56699f1ebb6b35bed2e848bee79de295ef7f59b4ffa3e298b88fd7a8f2d37a307fe0ef3c8dd63e1ebec16e387a4effb3e2e8a64162f4481ee62d9463b99c696ba14782e5d9f8b169185a8676b24f2ccb14b7084a4fbca3d5aed79885494b1f1b77d87f3e67bffbfb7ff83dfb17e5a639ca3e32ad31a6182a73c6359635c9c4b817c3b18ea58f16e146fb43a1fa6cc57d31e7ce96dcb5d97e47f0fa5cfb64abddaafa2f37bdda895f9afef974357af9652da73932682a3bc14aacd465ddce48fd355506cb11148f57cd4c31af194e6c177f67c7fd61c15d2eb74fde7484268c9ca920ec14f90652e1743628ad276cf789aa8b60f68e1afee941f2691ccd72291dcd42201dce52ac279c3f3194d19cc66e0c1bc3e2964beb709efc339670348b65cc7c5e61b656502ca8abb26f2ee8850f2996beb9c09428f2996961419d3494bc9ec18263b28266654d2bcf1438240f7b64984aa643d44e32332b7c176e1f12863a6df1e92df883d7e6f8d966507ae8afacf35a29585d449ccab72248dc852dbefe186f9079f6f3e9bc5b59f6ef3f94db533ae0aca0f4d2df9897a238c52feff0ea92bbb0e9fdb4195f328ec054ec7daac336ffaa5936fc18268dbbb3e86e5428a8d65eb80bcf78e54d4a18f7cdeb36c9b351ddb19962694c1f334c0b369b18d70c9633cd9b14a7b00acb8c2bc698660f213935861d9f5ebaceb238c59eb41d2d2f2de22dbde16b0ddeacbab3effcfd393ebfecaedca10b0b3d10d9c1ca3dbadaf45d77edaebfb9cbcfcfbca5adbf95eec08fc03f7166a8f3ab13eff52156920a4b0df370884aee52e15c663b4abe80bf6fc98bdb4c3798c2866c277e8074531114e2429656c8291988e342aa4817958d4e327bd2c838e3b869740ba90434ec2c21f796db274fe03b995df2667cff2e2fdde7cd3264bd67277ef955eadd80297779853f7dd76e6dbb47274072f7e196bbb6ee565ef98d1ffa5eaf60998e485596b5cc7c647696575461761351683103f9645f64408e1e01286b8b7536a1e7726c1426427693bd287e11bc4e14cb995c11aeb38624a2bf699f2ccbc4e453ab883c77f12d5cd86ed5e02a7e7618ac9ff34ad3dd7b2a654840d80836689fcdc0ebf152bb3547812bdc1f1a66e534284d613baf6f068f66daad3d08c83706771bbc32933484f09648afc876d1d26737aeb04b45686e2035055cb161c5b6274c4bc01a2dfb3b357f6f961fcc789ba7bfb00d216ca5b78455a5344d45a67198dcfb850e2b192c5532e9b9f7e8893f75962e9e9f6986668510e92d6e7a8b7119fc2c678e2a397639021469f4065f5f4f2777b75ca26c26c57b8a67b82f8da372470f8e5e5173b2c62dffc53bdb8f9f8acc67c33128889bca1495a91b497eae69850869248338ffabb7b412e2cc522b92fb0296b009db739a22abaabb56025591f53f963233dd86c1317cad99364c97181b069e77cbc6689bded4c595c4861ea37ca95032085921b578104cd710d47d04bf65023e3f1699274a221bf85cffe8b7f6607847fef4590879228964998c6512e75c2b3a003043257cf94afb5311e6b21367acedf07d548b7b944fbb55f730ce92ab42477e6fbbf300097fe5b2883b91853e74ae6c25d2404aa89405d9300fbaa553a25795bcd61148a7c55513a92499c6f40b7e7f2e7a7eed73b163f398efc7fce25a369bd30d196f8f3613c4e39a113d27c4483c07a85dcbb21100af5cacf17bf3eede56627dcc140623c37fa1e7411f12e6470cf0f2b13439621635afdbf0d7103f96ae460e1406f7b767fc0755e9ae486e5871c63bb8198590c4580db591420b54a3502410655f87689bb134413af42c8362aaa9111a3b4cfb163032c4ae632768285e0edcb6940c85dcc07f0cb28c62d0e6a28d9d0a0a01b3c711df1998222b6b7d1c8604b52282834727fef43685c6d1017f771f18ea57b71205a746f2a8c6b36542f093636fb70a19f7d5a6fb7ac77bb10dae22decceb0740bef6d91a281daf3c8c0f2084af1de1e004c31c1689cc261449f410935ea3c6dfcdc7eb96764bd72652fc5df8e4f13d7ffb2cc5dc1f1f26e2e6ab4b5f76b373944777e64db0bbd843d1bfd24236cbae10dbbb052f0c84ae2fd7802e120482e507e0616cc07bf697c1ceced889325562a3f6644b425402434a5c8203aa451f718a9af4d9c23d1d499b7cddadbabb70d7add7fb2b0d8408cd28ee07da0b4ad8b5ccae6a9a2ae97db056f2b7a77e413622877b4f101efde446945b5ae70af153e86da4f64aa5e375c03c9c42b921e809a58e3d4e9446509244064de8ceb8601dc154cb7d5086b67cfab07dbc1b945678a91a1b0e1128c127410f463487f49739dbd84be0cc8878d5d7385a741b52a2520ee14b9c9f1255856c28e5ef34bb4510ba4c0fe112494a14380d0443ec4bf027ca5a7a6e032e091a14a04048aca4198652c140776a6e78eb7b71c4e172fc7c3a785c21838ac64fb2a404999af11eb5808149338ca34797311c6c1c784f8f7b0298240c90612882b60d8c2fac10c48f13e48ff8b353944a12bb7d74de553ee4f1842352ab6ac99dae82c1a594293a2aded6db368f98450b9dffc7d12c63619d3fab269514a1fb91654e84844cc6a157aa032e12e466c4310b0519ddfce8259f5a73f7625e30522c10ccb0dfb24f4dab980f6bb75bff094ffcdd65fe24060eaa286c18f4dacc98b9beb44e169aa0b44a08555b4474f5237974ceb88526ab8356722340d4ddda4b8aa5d2255dc646e2c6621c803faa41171b86646449e18e8e00eeecbd79204d9bb47b2ca01b70a748b9d478c136b3ce04650562578c52a825a1fe4133b31f76bd627edaadbe08670b27ebc05d6a7440d105576fb74a92a8276a41e2edb6682b24b274a9de0b32fd2f60b36261cc52d4f79e20da625e2b7b3fadf63dc1d6d08412e4201fc98417994c586a69a99ea2ad1acd6979813d6c12712921d8d0d041c5c39d21d42cc79ac479ff55da4eabd13e3d6dbf5d8075c054dac73361175f9a76ef3428a7dfbc0c561fe15f80bd9c0b818378f5777ca91e6c50e2c676f09f6f0f0d0d45fa131d50c6c62c6d4c70064a4684a59e095bc1e2684ecfe42699724bd17362f6a138ecbb0f8a56ee83db1257e60fbcd6193a65bf51011503aba636fabbef2071fb76c24ef41e5c33ab8f152dd90275824ea1769a3a49a2296024fa2dd2658875ee9e279c0b5d4c268e8424d6a3dea78e963df4ebef8113327025f85197d85c254a2bc636502e117d020093514291f8ee5c8a52c700138b13bbeea419196bb240a62b0aca6109ca411e174daf0ab301a7af8827825b119d03edba296644304321a73834f341334d7b99adff99fa70032cac5088870a38221ba3bf45af531587264ce260d981ab145571cf8d70cb0bbd44bc8902a8ea4ace1c83bb153db411727a6a81cf3da67eb56bb029e811789b7b50e74f9ff33bafd04053a590cf7f1094eddd8c7f7ee6bf7dca5b2d624868a9dfbee2f5e6dfd06a27ca0dfa08deacd394aa3ee796674952cc47c9a4a26193c451be82d8a42080807a54226fa9095f50acdf6910899ca9b92f36bc35f0c46658ab9b08e8437763a6c72fc82ddcde088b4e4c8369a2c4c07b7455b8052cb79853c9600afbc3ef129cd8762c0a0c04964d09819f286139147f7844b8c728e647f1fba234b05d5032a1df54c51ed728b6c5a60245a4924bcceb625611973899dadef71bee52856cbc7f1776f29fbff4ee1c03f8daad9700477e6fd7af1ebacb65bef7d03da8912d975af84de38fd63638b47ff78c2c746f97ccf6fcd85b39033e482a2ac936b962ef214e135b1683a5237ebc8d57d0bdc9927b0ff9f4ddff1b3302f9fef0c7ffb7c684285dff7d368d6c496cd614f46d34a7183787fab4cee8a1a0098e953abce720408af01313c5266ce4b26611e60bb9d63772c6fd8f2ca46ddf5c88c020ec253b433dc06e8ff545050f6dcf06c201eda0f4c2f694748428912bfe938d5e8fc09e94fde01f89199f1c50cb393b14eb22915030ce6c77f61dd29d66b4c208124892bea0f3612839cd1e90f3a2c194a1447451cc99b9c4a01676bba969858b3486169364712302bc52359cbf6e4f859325c052652e9e2f05e57ab72fe257c4c7e74372ae448b64d17e4eff1fbe51d62840af8c5544dd2f8787956c36fbbeb8b7fbfcdf9cd8b99fddddab0cfcf1f79dec171f3a72a0b883fd01e06294fdf1f729fa5f85b203438317450cb281bf1b14ab8869086628f007fe7d30f50e0385b6ffa5a4e164febbfbaf797da71702a866898f28d2b8f813314a0ad0af44ac094d6408f2e325d02ca147dc5491d7a2d7b2011a813c5d2542047bc47030f8eb262d1afa9f8adaaf5d872f22eee91bcdfbdd54a009d22fbb5e0c0742bf773bfd8671d308fb2af0266f3dee1d6e14287b2e8783663954edac118fd6d875134c31cc860f6e8b970af68c6406410c176edf4e6f4bf72b42be23d0f50170aee703a018fbc82fca44653a8fa905cc17a8cf0afb2529c09f3cf05afb49b17fbe7e7d7844f4da9fddb8221019984ec376b941ae471bc20974f4dd74ed45b4f0357dea515431555504412568bd28e0863039af8b48579cc4c792389d54953e0f2571d9a659a1639af1c721f1b11dbe474c493495df82fcddaadf00cfade3b7a447610fff763d040ff105c82f83a56d534b75672ee1ec5ea53b81d45f758da5065a298eab27e25017b398314d5c6654732688f6cbd904cd23274581c9d0600fa4193bf45b9ac8766192bce264c699f62df21c8d48b49ba61c9de946974d3a63b21eb3f4a653cc6579b31c99ab1a2c3fa00a1fb3d8375368c5119138df7f7d24534e7e79a37149ad84ce54d25c7eb02b1941d748257932df9fe7d38d9e91cabfc91100f4899f80cf0b1b08e3c3e434fd74101b5a546564fdb8d3906f939583dcdbbc1f464744b0a32375fa542a7291169fd317f6dfdcfe6f000000ffff010000ffffb8e0d6502a220000") + gr, _ = gzip.NewReader(bytes.NewBuffer(bs)) + bs, _ = ioutil.ReadAll(gr) + Assets["lang-zh-TW.json"] = bs + bs, _ = hex.DecodeString("1f8b080000096e8800ff7cf903709cebfb380ea7b16d3bcdc6b66ddbd8d8b6eda40d1bdb68d2d86e63376a6cdbc99b734edbcf77def9cf6f6767b2cf9d0bf7653c918af21208b0b8b0202020085292a2ca202060a520201f40a021df4f3a137582deffe0b88869baa8d89bb9b81b390141844ced8d81c452b646e64065a091a9a7e37720ef3bd6a9a5aaa68ba69c2cb789bd2dbdd13f30f41eb60e20ff7c78053c1c8c4cac812ec4c640734b3b3ed2b3b62e52624b533e520d363946390711a085a5a4971350c54b5ed5c4cbda84cb9454809f98d783fb9d802dd0c588d8c3d6c6ce99db838ff45fbadcefbfff39662025fe17c4c59a8ff4bf4b69ca29128bd83b0189d9e8d9e84c1899998839b8e899d8d8383898698999199958191899189858e898b8b85959b91919897f7f48dfb939999a712b8b8affe6f5fec4476ae1e2e2c0cdc0e0eeee4eefce426fef64cec0c4c5c5c5c0c8ccc0cc4cf70e41e7ec69e762e44167e74cf6878228d0d9c4c9d2c1c5d2de8ef89f6723637b57173e52d23f22d83ac8c9fd256ce7fc5b51ef2a63f030726060a26764b0b565f803edeca20c34fb7f433bab7a3a00199481cef6ae4e26eff63023fb3facfedfa87f004d4dfec239b83ad9fc2ba7a90903d006680bb473717e8765fa17f6fde6dc0a4e96ef0634b211b53771fde7bf52a27ca4aeae96a6dc224cc22222624c9c1c4cc29ca2c24cef7a6261e2621417116563166615e312ff43e0ff22be9fd09bbee37231b333313173b2be1bea1d538cf59d12a3183b2b2b1313bbb89030e35f5c293b6717233b13e01f5ccbffe1b2fc3f71b9459c80462ef64eaaf6f6367f5c45cac6c6d5d9c5e99f6362111576e28f1a9676a6f6eeced4ff58f2f75d814e966e405371277b5be27f4dc16df97f6ef0afd86c6cac469cc61cac744cac5c8c74acec5c2674c64640233a63a0111710c8666cca083422fd8d6cfaff21bab83817330b1327aba8109388d8fba53945d999c544c545c5de6510656417236578bf8da909b78ba58b0df0b78b09d9b8fcfe6563f98f09b96d8cecccdf49d29902cd8c5c6d5c48f96deccded894dec1d3c7919fe037b8767f81f2ac3ff21c8f0ffe7b47f8ede23e19f9f7f43f0fde16f1003edde23d7e93d44db93a10541409a77a44485543d968eb3a07c54d56e87268e5466bc83c9af27bdcfd4d0d1d15194fae98db5a6be191968e82dfc723d0162f0c0c246a18b25004049a7491242ae65733ccf56df3aec7b4ffddd95a49859d2a5c653275860d238ee566f4fcfb29d27364022b5644fda02d3320751e46472058a0f08dd9d567ed627a1968c7f9fe3abc67f74c7393e3b4896aef1f05a3c0016a4a6eb5ffaafca97a4a6eadb79711dd6487b1170d0c7d17c10464ce1f3d3d1ca7dd644a092dee9861b7235af9aa8774663870c2286fef72b17d6078870f220dc3e6ebcae3004d35390e2dc7ac667a2eec83abdc2d46c45184e5566998928a69c7a6349d78f54955cda1fc829f4c55b9adf2e14386a8d7f6d4ad157c36750b58ccb905e98b78f07193adb339df15b289e7b5ad1e9a4d993dd05ac2ae129d248d721a0800b21fffb0dc4758e25a121a62c0e44cef99ce6b19bc92e28e92effd96b294cfe587680e845cbbe4fea6b28aca221d685578045e0aead3820d7f3d3cedaaa948a2b206dc4a205e921faeeccd95eaf2dabe967e33cedc31ec36b01d4c8fedbb6ca48bcb10919f46fd940d932d6e5ccd66531852c6748e8ec663febb7f31945f80e8710862454b72f6660d91081b62e8b7525fcf4e2d4d607141f5ca5070b78e9ca3feab6b9989fc80fb91bd8cdf2557f63cbe9ec8cbff795ffd698a4655627f25b6fd0b0aae44e519fa1f4d5bba7bd35f35b4aedfd296a5e24657236c00ebaae37ab1c2f722104ef5adf28ceb5d515b65ef5a028f17cf9f516f0bf3dedb3d897ea5c5c345db7682cd0eb3428f0f9d1e63ef1fed440fead1f0800ea252ca618b20a3389dda8d68967bd6b8ceff3a2497f73a151101bbdde9df78681716511ccb40afa317c8f8dc9da139bc40de25b5e074de61a9d5ededc9c8fc1dd4d38222a34c894eab1e45f5d6058d23ac97f303f1168adb0eddf8e945e8efb345038fb9a7b64b6ba653cd8374f2df956caa2dcf3039ccfbc11f4c233be944d6d44f7a84bff70b1d1aec8646c8fad7522fa26ecb7f01f15135584be9f41efda812d0dc50a987fcd5cbdb5a1a6aba839750488aa055ae0aa2b067b5162a15746a54350f0637ee469edaf37e91b523be3af5f6a330fc7a381feed0a8ab9a46f7a815130b41d61149a4f0839c8027e83364c4cc0c25db74541952936b690d5d9da4a80593e8ff52da4743c6df98bd314d42f03bfe7a97a673275a4dfc2e50adaae7e3c690d52fe59e43d7d2d63fe85fb3a4dca856e8153212a65fabc172e4c7307a33ede63758d6bdef7c6692e7f2fd5cbff976e7472f05f71745219c7cec8a9b27d1f449f86a9352e1aef95faf7d423d6c23166688dd9d282d5eebc101f6e5f9e539c4f526be6fc2e4ef5638baa84fe5acc2a7a56489da73f363bc394c8efd1b3388eaf06f9186635a8276e521b97a0230d566da0ffb27afe219e5053f7ea3b8dc202bdf71b545523ec11e45f3d34221b59d505fb6ee3a447ce30b489521f3be1ec6b6727967c16db10cb47120ef884b12e9b12e0ff565dd3de65e7dfeef65d87869787e310bb10f62f89c16246369d32c6ac8c2cce97699acfbdf9342e5d0cb1b55745f8ea1ab2306a5a24e4eb063bbf6a2fedd5cef8da46ebad597a587aff172bec2165dfe16fa7cc8bc965db8e718b72477851cf8b9053bcd1422d6d9a2a167f8c5754573e9c1775a9b75f4e2e8cf2e1fd911ebd54293a53c762a2fd6860243928ffa88c71aca75b82aeaac4593c03f7c6e3222943c1e04d6675bac97f32d35593e17f0ca3422cbf200a6fc6d04cc4e271ed202217c97f94d5e14cea579e05071d42ec940a3d34b04e6def5070cf5314fbcb6b4cf610d884209fe6b6f8a25a1b33bb220f12d413af8d900f1e645c0df399c8b7e1780322be8dbdcac9b0e86fa0ce0ef3d71207f98e368cf61fa4ae956dbbb7a6ddfb3217475b769c7f05155d70e75aa8d1d47c79ad27f274b7ed91fe2d578299b0851c12cd1ee62575ea2f3fa5a51db8b7ef3a3605911334b51135924703920222c473b3d516e22bfb2c6d877643986f1b1d73e4eb433ffee043cf70d396e223595ebd4d53dbad2c2a4037365f60e3437151f322190b4b276f2d17ddbdabb29ba5936f59ad12fdb72745e2d3fd0ab23a600b99687dda39b2011bea948bf835306c1e454c158c3cc9275fbf52fcd27f1fb98730635dd1781f4fc0191758ff3f2ffcb46e0aa1bcb73ac3043c1d8bee8fc9a4718d97e921961ca6bec627b60ab052e35be3dfad5c947eb2235ccbce61b7644bfee9f93fe43e1495fae66beb572fadde59aeb324c15c968b3c08784be21010c73674ae8a93fe1096ddeb39eb8af9a7e8bb8d45d5df7830647487f080fa0cedc778f9b1e6830b2a8f4f3bbcab4776abb834a5f5410624f7085cc9883d105d4e83448fdfbe998fec7820dbdc2a4fc4c52e10b6399f3e69cb418ce3ff75891b77425126a141db89b85a04be138ad5131ba42a625778b42fdc6859c7c7e42ffa64c7e6c63ec037c015fe475e24d4971ff48950c8a54be8cdfe1cbc9f720bf51bbfaec1e983835e0f023a9eaf2f0f7bbca70d38fc52051c916ef95e7c3bd9a035b5a9da07203bc1ba78f53af61775f069f89d36ae03ff2681372899b544dd69cf85e7ef2b26932fad234656798fa5fa219003644f56a81eb5ca7396c5069f303e7c1d232d9ca1e923c711a01a06ed97e979a3ba7f7334cc0f522b36103b7d730fcc15bd99413ab7e4ee806e3ed028290f26cb1591130cb6ca811cf2057cf664fb7801be9ea6c3f6ba2ac780d5a1b91824ccf9d1cbb31a222ca2d8753c7db43b72fa6e476195bf69b77ec11f8220be98f4af1b7bd988505298addc1ecfa8b28e4eaf8e636ec5ff00279b8b50653d0cbb9996c528d2838d9a447484455f32b5b04e269ea014aa162b36fe5c92cfc23c315ed9a8af5dcd1c0f1bbefa81731bb6fb4338915fd1027f3852f90b2e468d105ca5ae7dc78e76926111694eaadc5087b75febd7edd36801759a1107ca3f1e3d4fabe8a9c34b2edb522ab319e369afecb8f4454c3fd655e84765213fe0390dc4747e1c5d2ca41a86d28b7a7081fe02b6f00b799f344e2ca34e3e4d6e1f7f0991dbac87917915925ff92dae008bf5913ff43c26a38b47b4dcd5c99ae7dd948ef96a8d5a2a5aa6fc6f972cc4805575fbc57a74aa41a503a5e0215653254bc6746c569694ab43c783f743d7a98d0a30c9f31d3e38894e5134d492f7a54d13d3f918fe48c91d845dd5c3d024198a7de6289705e4d7a3b97a083666c5b16e391ba2cf935ba7cac3928846b3dffd52a40aec6fcf6b200dfc416336dc7e375741e72bce5fce65bdad39fbf3f8b954832c4c7084397a5260009e6cda86f1e31cfca25999181481f19e5a3ad0552d1d6e3ea5cdd03c76e29e875f7d00c0932afd446edf585de3e1b6317a7897231032f397036860b9cb3e09b981cfd11aadafc46a2e4f8549f9fde39bf3da5861be8b611484fc48e34c8d99a45abffae2439aebcd02b7002d8d6337876a2d73932166ee41089e836ccf7891f6f1138d7efb5d7b86d8845d7719c46fcb68d70a7e8bcf3693ea7a28f347cecf91e0ad4ea3e64633f203b456a222f926c9315250210e9afd844f8c7ac623aa2ab19dd3bfbf9624a8fce8da2354b2565b9e61fcbdfc8768f9a2b6d6cd2e99b39580bf49a4ba5e1c42f4efc0a093cb5d1a9255906ebbb810433e8f2779cfea3bc029a7348a84a2e0eff5d28c4c2390e67b03220ba214c6896e26e9802e480302e75ea8f02343932228de0cbbc2591493bc43cd384defa0217f87bb761338f32ecc8f42f106bf538825136872d44ce5351ed15304f83358be5e26b3d1215029dea2ca4d86b12786fd226c80758edc50c1dad4d7aef2bc9b07cacad0b30c0cd09e61a414eb756780c9fbdd78016ce0c98ed36d28542157f277ad48c024563c3129c62864f03856c9876c15afe79c4330c28d91e6219e0375864535f4291eab7d24c933aae9833ac3af0c8d475ce8656ac27d119e432e6387463febbafad90b770af79970505cf437454d8cd25ba6199e623a8f6d34c539f92980bcd62fe59a6a30850a47c90c087acb547013e6ca3045b15e3019adabdd405c8ff828b5db0ea9426136eda32f91aaf518cf12482b1a5fcf8378940a7f47f5f0195a7267c9edd40c77099d870b13460941815a26aeb96c19084e827160d7f56880005691304f9b0df8ad50af442679f7242b8decf758b0d03d43852c22abe78c3a6a64df5b2b44c96e2463a74768992e25ca05241af5fd6a6e1bd13f250523d02a62068f504f36d4d23b42d8f187685978d4ccf805ecca1c1f01a69b42f07bc6e80fa207621aa40427137c42d837f4e1739c92601ef7f99ad652774eeb1619be71a09ef69900ca4f2fdce0c867bd1889f45209f326152e4a9584dab7b4eaede3e24b5f94bde25f99ec69730a6432b3e7e85d7bb67250d826a997faa979cc0f955c2539221db49ec89b4b19a790a59454f8cbe909cacd3227686f2073572a844235d8483799e10a8201ca507402d1114705c27145ae0ff159b04b68e881502c2f83a49783f50332a0e4c3a0e434a085d37bf22aa2c35f276baebdb97e8cfbdb555f7717b4010c816533b5c6123a0f3f4f41cceb82bd5cdef886ec725c9bb4d563eafff48ba21582df62f969a86c7bb66484105ca2d99bf46bc463d0a9cc77077a82c6cb260729d9ac3dd39a57cecefbf8c3e3f53f90054cfa951049f30130a6c0795bed3ea76b61a6f3255ab2511671d15be899622a9f6ee3fea8cd3fbcee3af62e365abc3b76d7eaa6c24c1b96ed1a549a5a9a070805ea05bab1a7fb25e7fa661a47dced86680509702943c5bfe87ef0b6c8d2b4d02a902e812c78125edf7f1550497c648cfa535d238503adf0f8e8b84e0687048203fc15592355b260613930bc6881a3747a2a46bac5555a3f94b026d7f7b4896c6a6e7b7701f1177c322dbdb405b295cc17a3ba3ae909db2dfe6d07615f1da53a0280416a35ee30ea528ac38352ed4696402e036f8af43c8d7c9c56ca8f09f6a95f8a82d51e593d7c3420da5d7307910f4701f86aa47356e6819faa695b4edab1fe1a58121d46f569ff20651622de5776e0e0de02b5e43893ba1e5b7f851ea5fae85dc2da084b6caf13e77b2393503cf5d496f5122b22fc2bf06ea15040b4a6758412624cb7e01471c7f5637dd5b1b1b98ed6629a8c43a05c508fa53a769255e0692465442a99f7b6a76d0bdee9aa1b7ea3a2927d2ca53500adacd163b5c9fba872f388b22b7c06f98f2d0305d95c4fc94c052e0f8efacff804b4fba9d174e8d5c209a5289b9b24b8313453227ce9e1aeeba360a76ba4336b2b06a176f4e738f17e80970d3b760f49061852d6a6bbaa0103d3f683a9af49963429c8248e436879ae1598448c43fa01d632bb974f9b3573e2e9b253c672c02f705fbf2bdd3cae15cfb6bf8d0232a3fed42a1c08807d9dd0636f2a21fb1db613d9456b413e69fb4d60b02648a180bb1c531078e81793d30012490106b7eef839fdd20bcb30e26478a525666e9c0ab5aef1ca8a9eab4a08379cb0229d8dd115cefd2c5376709be687db6638bb3565488105af1ef965364079ca5e20c772bc7ae765aa145b74f662dc0cca9fcee99b567f1901f3e9fd908fccd98682e5386e445841adbc5ab84d34f8dd8d6cf88cf3b1d10b2de53cbbbac77a47f0b7dad659088aec0023ea6408c210f504f139e40adcbc8911a1265134d922e11b782f607a1f9e69a4187ba7b90e8e8f4329a229bf457a1c642220cd761960d0e26f7c936f2eed282dfc67f01077e2b32bda74d99029f9e21d7fafe93e1b3196e5f209472e9d9320d92834fcd15430500e71d97c0ec2e5bebd791cb95807c017a668322f92b8a50ddc334951cb11875f589605c853992d1aa90b0539eab365b25d1efeb2ba3fba755a3acd40496e7e102b07c9ec66a0eb349bd67a15e97a74d4fecd5c9b46b850807123d3536f6bbc79dfb7aa1150dd42c42f18645772c54dd963f2524fac06130f11af75aa5f9cbfdf4857743e1ea8dd57a551edbeb5a3e309656a375a49af0b08944bb6bbdf57a47b563d0925170bd0adc04f7981c3b4f4302cc761d7f0dab0f0d561ad51364f2c0ab9ddad06db5ac553f7296bcbe26421f92f1caa9222aa47ab44a8a84af4dfee1802f69e02ab398e82ebafc9de33a7b757719fe7038c115ab1fd7145717e032e625b90b0e42ed7b16b17d81106a11a54e89e91662b04fd510238d9b4ad110cb2daa6d246b11c45ed712918ad318bc4039b53e152b7ff792a4dfccbc331968b06811be46f979b4361822b4f4883c5b9ebbc40ad49a3126691380626ea2d2f997a382a22cafe407cf19cd1ee8264382b63ef9f3097388ad12d32dbf2a18e9a11089a4346bba82c775b7830bc48e4eecbcfb04d8c65e9cd0bb155941d8f64715ab52b75c1cb19e3d0c09b9aa0b002e96fc84cd4d69bd35eab1e0bafe5f8db2cf7d5dda66048ea9ddf23387d89e3480aa8d122fa893319eb425503ff9d09f43a047597fe792a8ffb7e66d0e4fcb547fbdc821b76a61856edd15ca30a893f4ff8267706e9640bbdefe5bdc311942a60b1153735c03cd0a098ac3c11132bb72160748bd82df55c6b7a92c0ba05ff3ba37c0c0dfb28f478c210d38898718fb4e9283576934b4b8c549f999d62128e05b923a81e51e58847b3526ba842cddbd5065bfe8c9b26865e4c72207063ae0af3525f340d171d7d14131b900fae223933732dc72e92a717a856447fae98bc5489e2c746971e97ea73579c4c64915c04eefde1efac2aaa09a5202d93e9f9f2d45a4f5fdf4298247608dcc335c722ef3679f94a2c8fb86aa2f1a8ea61e1cd45bba20de97de81336a0ca4ceb2f29190a009f386b2df3782eee87a990c94a3049265e236c2d1d21d8c2d84f360d4cbefe352aa763558d00d9cb4abd2046bfbfe952a373cb77e1590bf657d15fa2d2b2e1d2ef3a1f40a766a77ac4dc592255e4c269b829fb5e3a5804618cb41319e2b8d70f5d870ca95f00d3cb5fbd0ba658470952c0fa9cbc460b7aa9c20f73fb2b70f3a70161c57a5736a8f0d2df701f2c695ecaeb1627694b3f245c71c3cf5801d4bdfd7f7960eb10fed9cf2d81a759db1fcef977e8d2ef3be18167507d2b10d76cd027a83e4b0275bf95454a1fb12d5208e6694ae97911200807e458459011265b8a3255ce5e2f299e060287f013ac9373f5325193bccd3545b1538c42d9540b09efd83f4902853e3deb7f5ff11625aa3abc277deb3cb11017fb9345d853662b88f66d72388fe856d5cc2de3a0788cb83aeaac012b4b7474a6f44d6bc92deb5fcfa237680051f2cd57a46360159e6672403cc81cc2b260ab2ec817655a12ae2f1956a846e018656b04ee2265250fb46599c4a61f09bcb5b268049e833c940a48ff28152fa6654f917ae319c2fed02a57c7b9f9361bb904ae94b323543faf5bc1feb17f2259fc103b65edb396dc94052e41c4cd945f5789b1d38923968b0cb3489896cda5ef270c94f76c6da496be5c5bc82eb14e9e6f49fc13ed71e441af4939b1154f07efaf2e73796013fc966516a2cb163550bab0887b3782d2f0dd2ab875972970ecceb23193bc539ad59add7c61dadb9b7e40679215ccb11e32569635e821b681d66e4b1214a689eee306b10acb16224a7debe5a0a0ef535ec60ffc14511ef4397141824ee031f0ad9b9eaa91fdef108d2e95fe6668ee9ca3648f1a3f328bbf398b31b9b1791be960701693e0f318e6c4a1fbb5117b7ea6c60d6622439c671463a100e53eff278c6b0303bc743dfbe2e5f715dfa7928c8d8a02c4d2a23b1b44190015f4f7623b30db717b7e5de1763b1b8b3fe17848448285ee2895ba72018bdce1fdae4466472fb7650f0f174133c990edfce06f8cfe2f4c1f2f4a49a251a3457355661acd4f2674fddce7ef0d2d5a316c94679618fa68df6bce279496451908877ee79543dc73336f8316db929b6ab69c53ebead29fbf675f541650b683fc657a75ee9bcec8fbf631527909f3a5f5f49e4543582140ba849b7ab79ece08b1606840107d0713d44cfcd7ee9e6a6d221f9dddb00f65987da84be89736cc0d790ba91259b96091ed6c5951aad425b5d16fdde3fe9051770f75c9287fd64b5d81b62b312b855c4d9d653ce55b642fc8b4c4a8f5761dacaccb9c2c3fd17d70037538527b67da00b1f5c5a4add783ac9508f12d60b599513feca42887eb7fc8b51a947840549242d148678661b04daf067fda9625619a3bd3be3a004cbada18fe55dd1b715482d3491fd285d932f6e46c043f4874f5173bd4f5019216450b7b6d42d992f2bee71b898dd51736438c9f9e2ac7c4746285f3f76aef86127a8a8027d8fc32aff058ac993b5ed3d3caacb10d6606f19cbbed7e0081df35db76d2c66ca3f797917fa2cb456f5e8a9f490eb99fbd2892955508f607eb6cec340491e94ab9568d6f0ac1230b9878a461591aa27d9623413768f1d2eb230588c38d928ab3fdd05d955d2fba5b6ce3cd61a46787d47ddc66ddf649ce3c853c1afe5f233c747f36ffdd4da00d87ae366f7bde75c9b256e9918335d52a184f69db9f6443ee6151b21fe8d3fa0e0fac11042653d09329334c0bf3f060947dc8ea660628cfc8a25e4b5ab54b0283dc25bd185f64cb3890a7863b43e258c6adce688bcd5eb6f5bb8eb1e0d342fe2c7aaba81cc7e9f6a809bc56d0473d71b9323f108cd34906787b9bb31ef0cff921d03fde3256523b8be047cda4ac6d7021b296efa9e31790ced12a275ad95d77a4156569196311b909ca098295fb227cf0d9bc5cf0073e2622dd78aac94114894cb8bd762cafbd4f7f2a75c0ff7c22419d41712788d47b7325b426419098cf622606de4e2dfc548ad2c34e915d3323e1353452c58c4b4f256ab3c1354a156b5bd3747f09dc7d0dbf023c1d13651414a9646fb027c48627a664218015ce458a51881ba38796c39a00a3362e0091b612a57e3b4cb4c2c927252d53eb50b7ce82ac11f09f4aa7512daeb9d3399689afcea2ed91592e0949028781ed8698d49fba7bbc0b9604bb54650aceb6f249ef2ecfa28c2c1d09304a406f43d4a18f646479f9f93ee28d0f47c32defd5aeeb401dfad4b68e42c8202ef4cc03182caeebc748d74cf37ee8d83cc5aff91f80dc218dd0d48afd9655b364eac728ffc533ebf27efd9b904f768824c63ca77b396a738139b7acedccbd0d3b00038ae359119488a8705355dc71c98a476008c7ae994626739267d1669b0b018a76dabe552be8b50c334d2b0ddaf7c05ced81f5e7de79a0b8b7eb27659c0be1fcb424b53dddba7d1d1ba5df6d8c1aacea2fe3f0ed8a572fb2172fca7ded7ed891f12c668e1f5dd7df2da63d3bdbde8b4c45977ab0dcee87e09b7c49d70af0f9cfad861661739ca9b8f29ab4453e6df07bdb54d896898d1ade79a315b8292be23762b1af76ea7ee66faf04679071a7ee86d1bfd37e957cee1255668e2d9eef2d5cff5ea34479eee8f4c0f86307232b54d2e7411d3e83fb2254c25ffa769938fdbc25d0c162ebc0bd440e750f436179dd7e522e7779c69eed150fcee3cbbe712ba2086132b172e29f03b3b235ce034f6b86d67f7848e7321f594eb777fd12ed928ffb7cf379166ef6e9d1b43b025ea7e0ec0a5807f6da5ed75fdb099bb68ffee0cf08b7abe40e723bff107b556a1cf20885d6f7c9790bfe2c0061c7aec080fdbe800da3bf3208f1f58507b34ce26ec1f82f0ff1dca5a1891f0db1fc7b9e9bce8b24c2885fed5a3d0482e937cf8e937fed7b3feb9e84d2cc1386727b31e0c8950c4b19be186b7c9b8868e6615f266c1192c43848a3c5e35425984f6e11b20aa1484603ff929674204ef3c7f1acc0ad26bd1ebb6fda17f9311a863515b4040bd03f414fc08f8799aa6c8d43cd3fb836dbd8321d57dfe05477405fea305afbd6d180987f938b48ab38831137d5dcc86501d1a1e1cd6575410b8d936062e9f2357c8b730795b8e3a9a3f8ed68980c8ab65be33275b1e91731a78e94e280d60489998d5dc20346a6920bcc2a1d8e94ee3d89c3eeb016f94401e4126e92f3a60f5a8cb930d431b870138e8c1f5741ada5331d660b84fb949f93d6b5663f573aed45fd1f05d54906a774a704a299a1cad10540674d98500335ade264b8c9d91e09edcf2ac2386ed5f338c55e919bcafb6282c039db6c7dea9349b450364ef971c220d4a810d07ffa317cd47bd4931eb2e46da4fcad967c88725dc5c2e1136f5de9e7ec08f418ba716060305e6b711029ab3cf259f945afafce086e4e2f98251ba3c6a56c3d385c6b11bbb79626712dce03cc7a7e508b116c32c8d48d9ba30a83009c0efaefd5d7146832bd17d5a5990ed2e4752e83691a83d95846a675b8632cbcfad60cf44a631d7a9cb76a42fa0007287090c68da1467abdbd17dcc2e45381b1a1fe14174e12462022c774ad390cb8a0e4449ba8e4d8201fceefb802c2aab6e8b93322a539b49cba4a142a024806379f33e8639bccf89a2a40d593397b282f056bb312d7840a08c8e7c8950333b0d98087d835dd3f69793cbe85dde8f72a8f179a227e53c8e4c3d4c1fcbd8e6093a7a6ad5e699451f8654c54c5634daafc31bebc6f8020295727a94ca9eb4d25192b7b49eb83d98758c961a2ad3997b4cfd6e1a06df86a3bdc25c41ff8b97f9e3714b70ec13432b198f1747a5cd1546d62b333fe53dd311cca6c8f89bf4b09461026e15df2428d67e02a7bb757abcd1a28abe3a7d9c0085e4ffed4e7d4f6e7d74028e3d50eef408ba40efc21c5fc53218727fa9eb75812fda3e0906e9c5a980c0f05c7e15dfacd4d675591e2d64237c0d8907cfbce88a57dd891917906d31578946e13260cc840e27c411859adb0242607ca7e431060e9ba2d304732a4f9e7c5f15480cf5cbd73cb715cbc603716ac507fe0a2dd7ca7e7495cf7b2fb6b07db6c0eebd1af8a7b4293b3e27c6656fad8a881f233cd8ec9b77e31ffa15f91fd9f05d9eef0523fee608d4d667d43a146aecf1e07c88634c6f2c2ddefd6cc9d8f2951a5a55b333cde92fa832c079be2e1884c572969b0efeeea7f3665bfbc934688c9ac7a6abf705a0834efa362e0856f0d4358adc56277d8e504c997b9a6822bfdf089d1a3355466ac3e18d3d07f68da194250d9e7f19428f3719c8df096ef8587c32113b69c28a21ef708450879bb6b8a15cea25cb2a6707245a188817775daea5061a1f29acf347fc21656efc5d2ec384d72144655e52e6f2ba2bc3152d428ed8675a2b8fbf8369607cea31f2380ca5d3da0db68567f7bd610f30eb161a2287da094d6e04e14cd671a1aef631ea994e5c2163e09c90d4c55f96c3cdd0bde39a8836a4210c538393c57534067a5f7c5035fd47ddc0b2cc9fa44d19b042472d2a8d66615b1b4ee4b35d6177d688c027048f99988899dfc358de92e9a0f42b4246a1450dfc60c4e3f7c720def3ca958dd3e8fd34626cff2c00f6833830e6a70928c59413b4212ca57cbfdf1206688c30ec41ca9c186d1144c4b0f85799f37706f9e26141dbdba37c0dac80d47484b28155d416d8f95675b839be2354a6f2dfbdda2abc1ec158eadf104ac254fdae2abfb535e15947ed0e72d84b076d6de61e74d5816585220ed6caac01d68c080f213fb11651124fb77752ce2dfe7503706c5f63a824a52ee9ef6b8cd2de1b4b27d43905479eb7f95a3ea33530d98b8422b0d44580a1b38fad681b770d036af8e0d84beafa5fb6f06c025554c96f7e5be749422bb692dafc50ad152a8a74d4a3c2c60b2a976e813b8530b1613758ccae4a695b44b2215b77d60a6233d8f75819af4251ce776db5d8c2baaa98ae9c78e83686e684ce23c9d66f2b99bdabbbadd9622fefebdff08364af1ce9f20921bc39a8a2b716defcdbd1ca423d5913c084a5e12acde9716a3c26460a6e6438f9e86d09b2d1df56a93ecdb45c5ce92c2da31991af630ac50c25a7a53e54526e3faa82cf75a1a31eb3c3da2a8d6829fae5fcc672271243c702163c9dc4b504d89893449deea7b49f4f7bb9734c6063f8b8b2bfb3a4940703e736b52c0c784647287c0c27ba3dfe17ceac6a33f02cfddb03b6a850ca27b656da9d569773f3a5c9a5f19d7d5ee54c377bf68117ea3bee292d165d8740653f2050964f40e477e311891da2c37424153e1d4d954adeeeb2e136e9aa2af3bdcbf7bbc10899edd61a09b6af2d50b2243154a7823a1974b1c7f1b59ce3d023b90458d9292d9a6bd905f231bd8fa76d9b75c1784021e8913080062052424f165eda8c137b9b78a8b09e7d362f724e2f64599206aea1f83b0e88d1650f14d337e40591d024d7767303018172fb55fa79d6fdcf5db1257097c74ac402fc68168e7343b8507c862291b698bb68fbf7dfb2cded0a5d4537e206e088b7aaedd63833784758d5ba2fb6013aaef6751d769327674c85153458121c1f8152388f8e62a6c10c5dd161fa394f251c422680b99340817b9cee9fd7ed48156877ce5e109995354a8d581fac9ddfdba3a0597d95f5d9f9c79687a4a506aa3b071612c4b41b663784ba7608f168e332b6725050c52d0e656ac67d35d2fa889acbf6154951a792698fd9ad2c2f7982f308ccc195ef1f8a296f68a893b979701053d54e440dd8215bd459f4e769d750dc6e577bed8fda3897faec9f7c454291005dc72151543b8eb8530cefbbd648628e43ae583a7047e1a44899f413d7d885ecdc2e137ff669d79e3f28002e5a371081e3dbca11bcd8a9d4da678a056d0e883d160e3a522db9e012b6c7cf891a9c91716a3b44a38cfa9cc9338db6f2c7973d2f94d9cd7d5cd6148f0d5717e909653a59b4651882fcd7ac1bd76daa89b61e99528672ae56d8bcef689830d5b15e6bf36bb8e5f60d100b66c31336df1d6a5af836394114e29de140d7ec4c28350bad1c6dfd3bd08c510c6b644d204990b314aefc316bc0babd3e4065847241e4366e5f692b81cd12c80b2210e4cee47ef843e0aa4bc771c67c549582873e3b62b2343d60458ffd671ff9eabaf74eb65badc8fd8b3512c2f8586409b5ea17f5f73491ea195a6e4a92c5d4496f94656bf8c4091eba61a98f724a20aa2e0d233691039f73615d13346fafc1c89d4186907cf0ef675ed2cfd966f57718d9b18f6e532861b83477988df1c1a869a4e2fb378f82adb00349f17ab7d3ce5429136e2d390d230531ef75b91dca518d2c42e2acbc50af67f8d9c4cae531410be34836de550b088e68cf51374c9ce205bf9b9fd4919644d3958b8345c8db8be0dc8ec83ebfd4633cf216449f8edc9891a21729a5a15cc84a42a46ffec0a493b1f75f580bc290154f1770dbe371cc91ffb989e669f768c5c555db7bd153c545a9cbf4b3b2e8d91058a74fdd77d69070aeed8c2181270f9169e22bc05ad96a061671885f6368795a43cb42cc1d1c4cd4b9c8a2588f7a6dcc70540aea588e60cd8529d6c75a93ee1eee839a0b6a679c5ee4f0b0f5892629444977212400762122a0eef7d50ac1419e89961302aebfebd986d17548b82a474c47c9224231006efef99658f95a97f3cedc47dcfc5dd05281f2cc947bbf7e1f72719e6409d7928c5f41ef8f935e1ec764990a3bec080e22da3e9ac80cf1b112b0c1c5c117f116f88b36802e75cdc9ef3d37de5b400201aff91e464b684c1beb1289c878b1cce66769ebe6f5d1c5cc238512e15bf1a2e19086319ba7fb3e9a26c87df2e404fd44af5a5a0dc6768e5c3fdb1e2fe23e74573cfacedb06299ed5eca4cc4579ced68c2761cf4911875b40df58440557c4f9d97ddd831cea87f9566f9009abc25340ac09722adfd69d2930859a24332b672ee4134124de0903bbeb0bf92207914b6837153c6ad3b4701a18f930c75b0bb1fcd75f5780ae03c3e0faf8d4703d81566677e6cb2a43ef938d66e0d4d6eb68ae0a75071d09669e304ceef71cee474ac813ffcdfbb629f400079d195f454f78710886d6896e3ebd910714889c76d43ba46fce9f301be8e67dc0fd95bebafafe9e7eb01b28c127918afa9b80cedc210e5d4b3c0ad16d3654be7b6c688c80a3d03296c87dde0dcc76df599400ab47da8c68e725bfd56340996ff5eec26bf3112482d861e08e6365d8860f3f9a443d02c0344dede274bcc3381cfad3dfd57467464d3970e65dc85e9141ec692ecb2c3df248038e9474fab7832792b554172b08e4454f8e7984f1f1f5793d2729a07755953d18af2fa8facf908343f03e66a0cfc98512f3efc13e0a5e4f86d87d8b6e891768156841eda0ce3c60a937a1bdf14bdd8407d95c712ec2c9bad77a6fb104b2fac0737096ea89dca6b253bf89246cf8fcff1f7534ce3969c5e7d971d35bdfa3fdc325edb6f5e05acb4bc81b821b23938688c365218fca48a3be37fe4de74fe968d488b373f93da306670dc3715f3deb76b6b9c38210cef4a4fde4c162e258c6222eff3a190674000cc65b0a51b04efb1d278a144586c115ef9b2aa7fa6ce0cf00c8a0bcbb74c80c08515f6587a5e9c6f271c97f2da7b0569f89505493426078bc1cf98514e05360d7edba373f4bc2ee963e2b18ccde2f984964c2f8ad090a43f3a8e3442b1b450c38bd01a168cfbde8827a37adc6563b50cc47788405859dcd67265931186835963466a0702cc1a2054d698c4c8471f141613be4e41dcd78a8b9ead2aedb0d14338e7909604484738eebae8a7aadecbbcc59422967fbb37a45b6978fd18d110b3b11240d29a6247e8a71e78b64764ac9c7b09d141d1f994c6d58f677654465c9bab2cbeceb90e913211da925c6b212b4bf295ecfaf898e60a8d036aa66332323672c821c26c11fe3190286786dddf115d82ed9f24188a2fb05f688f47350ffe3e0502f4742944bad7c0385bb9114da27028b15ba9b48817e6cf7f5256c471e58ed7e09ec6efaf453f13f26761075d077e487700a67e2e65a821cb0d161fa93cdf20f0b70997fc317ad617a642db58c1e8e12590f0b9c768c4f3075c777a25a08c6e4d081047bb107fa25553f576cff822bb0b3a8009e1d521a866c133104c4c2955c060051755c4632e733cb2e3722c3892223e0b02358a27667fe8a9049a494c30abdefec8bb9f7687fe5ffd2057947ba1da76f85a26d74c76ff9598b143652c364ab1f5b2146dd53b51a0bfea30c12e65fd228f8b9149b427216dc7808cdc46fd27098eba245ba4e2de023c8dd54fc30f6e1e468c0e2b641be3aef8569cd6a0e7a11dc5829abb1f8d45bf17dde957557b5d311c462da8274ebf941442fb2e6b408ea42620fa08d5b8d033d563614c17347f5e91ca64ab63b9681113d1651fe45ba8cdb6f3d65ebe14e38ab3f92f5f250b265f467b39e4836fa097da708dd28afa2ae31276b81b6421b9a9790b0eae940c9f5d33980b86677fa7c556a67791630e3dfe3571521950137564a8af041bf3a3315cb77477d174385ec5d0b905afd7533a25d6be4865cdadf8b40ffcac91adce35772a9bdcd1f2a14fd89eaf884fa2d839a9e090644dc5192b89ac0d17584ece06ccb57df81ae3f754d4ba39c7f0e0e66bbf77e57d8d062997f3830298dda7b50907bfb00d29bab1e3e1e8befe65c1204cddf917e6efdd2815a630488764da0c1663304274e73255d506a8ab771196b47ce12fc184b7a01b5d2c8c924f579beb17245cb151c8becc3eb8816dec29ddd16d00c102a24bdf32b8c799571e0a01c2c19d7e2523eac06e36bd4ae68e91d3b6ce51184ab757a6f6ed499a1c7d6f93b2d887b860a7c02dafd0e7c1a0d1fe1d9a407386aed0a899c99bef1d5f54bdaa54babc3c09729677f81d9f819feeb3b718362a614c2286487a88200a4d12bd91ecbc8597dbd1c968ffdd054cb78297a7252315fb6d7187f008a23a9f9d245958a992cfd9cb9ccb723a3969eaeb09745403a403bd1f81ec3f7c9f4df1ef4a1d56dd076aaf1db250b452b182d497ce46566a5360e7a092990b04dc65d84574da40cb283f1c7f358c18fb458d29a98a4bc9da46951e50e0ffd33c64462160df2b4997b536d67d39230db55438fc831e9712fb27410be71ca7246594fbeb29ef1bb20d998e02a287c51dff0705a273083e81751e241ce2eb74def889031744255f33e8cc15d25198cdc6ee1f1cfa48cb9e3ae4b78ab4dd2b032d0d8d664be1d3966b86282d2cfbc9a20c98b80681eb3896bb10dda4916a81c4189f7e6cf22d0d4e4807eea99d7b6aab670d0b29e08c6793c38095507c2069b91e92f5a298a121d424660181099ae1c093b5013552921909dc8a17e9f6d67c797d91e6467c09c3f3230638d3d47f3d627298f8194270468c7b2ed667ebf3e5d4d345b70e61c5c58b62fe8ee856da8c5042de44f6e299e9bcf5b67ccd5f11340317a40bcaf86458363a9b8c2d79ef2bcfcfd0ecadfa030fb32b214007eafe407efd8f9b93efbba098cfb5a0a207c8d4ab5d1acb974036bd7d94023e13ed45295a82c48b2c460b6d5873b9d112673c16d9da005ac71b570763fe4ab8f9409f34fc979d80db2d0d35175e0b710256e7f9805ce56d081e2a495ba9342c61595197bce8f3b0e2a9490b36bb3287f03b1b4254e7da5feb6a30c3aa09fcac8c70f46749f85fbdeb2da634aab8e005d4bcdefaac26f86746c11937ba4504bcf5caf0d4899c4115de429345b639cfadb8795978b1ccbe29d84c9abb151a73a447e9a696e3ddc1e4684f77cf9a683eb5babf3692a62c7d819dd1279f8d0691fad0e1b1c0dcea21801e693e79f7365c4dd450a3ff1a48e4b1dbb7b91f6db7cb026b8edaa5f18cb460a04d6f7bf738f45e9958ad16126424e3b11e150e440c66f3bcfba0930443c7d56dafa60f251b797266d2f7dae2f615b0707729194ab9e4f3e1bef71d66f8bf4a877e3ff3b70b0fc4e4ef923068d5dcc9a3367a0057226603cebd0f9e3a78fafabf341d22c18a8b036d084dc1615896bd1d93a643a315140a7c7743885f3acce77bce5c8f54de1ab0f0d5d6a63b5f8b5e47ee2aae45785690a3cf69bf36420b77b1a072d57710ad9d5d77ea2abb293c66eaddf7c33742d7cfc24dab941926c3a235313ee6173464b97deae369dae751b7a7602bc26ba81a899fe90283763fe45b84df4c705e9a99f851e07be51f8f35c9344a51987ed03510cacc4daee40bbae6eb2240cf14ecc6a8c5b5b3505d68f158fd4de74664d964d94a70ad4e786d06633c8535e08ccd0e3c559f31a2bedf756fd491fa66ebf06ee873b157485d2a7ee1551fb7ed0bd5dafe133b5dc98d32cea96081700d8c6df32c7b68834198999df995d7000a60bcd3c2c1d43fcfc2033175a685af0a8c0f1c789f9c92d7ace45c481187f69433f52b8d2c3c73261eb6f234d3f86078a06870a6919744d2ff8c1070d1623570d0645360e2ffadd3f200f564cfbe29a1a0cdc47c81441389f8363b6dc21d9739e988d390d1d7fc76038d05aed4f0db14ff03d4190cbf60bb7c89a6c62b1cc1169e0541e5d49dbd5691ad963a107a4ee5a6568d96346be25151cf3290b27527eae6c9c24530897d232666c46eecd765161aae1ffdf9022e033a0f684fef262586727c053ff6f4a73e27439f882012a6140237ec941965856ec9c86b1ddfb81b73b32a207dcbb13fd785bc716279534a1b1ead224f3f4d4265c4faf9c39bc5f7c5ed1e499fce6aa6b99f5f619a1bd84f7abf6ace7e73ed516542415ff663b0b0feb59ae7fb3605b1d94f93834935d1954adf3e0476656c04871f6fedbb7ea3f3baa8698d989a6d9fb4cb7b0d68b6beda57c8d31afe8829b4d6624682517a27a11aefb2bfa6d579dec3105911a6d59771498bafd77dfe383ea7514163f07683b420eb4bb9235962d016d36c2d27f7a8bb48bbefcde127017158abf24a20c30bbd2a4175b52a2ebfbb7cc3130d5b63d40df3bdff0c569ef59ab45ae517d5ba65ce57c7f9906c439943eab1e62d5c659dce2f9c806ca476cf65ebc75f72751bc2f4df89afb1537bdcf15913e7472c7d7c1e1d5a13a4c9fc38b0560e4a5c37ab6d47713fc6d553305e2ca41f316fcbe6ed7112134a846aeadcf29555e8e6d37b3b96bd6e5d6e3af0619a3706ba8c9f2c041a77e25e7f4aa7e5345149f420c8e35bdbbe036c4ee230283b4ae31297822fc5ebbe72d8e188431caa470835c780363ecc6a6133def8e4d54eb82cd570a3e684c3417e9d5170d5ad6bac9df653113dd324cff2ec2bead7d310b68aefaa78393f705efac1713bf900a0ddc192d0734059b3ee5d5d770d35d3e7d082f05d8e0a55c567f7d0c782cc6613c177dd207369df97d3cec203de7b7da0eb2b28598973fcde8d157b2c3974a44adf35a4ca2d715be86f9d772564b22b99389ef83d93cd8fd55c019faee1a849d145ddb7c4f6f9d9f1a62255800af854b0341360bf262094e930a04a5f33220b900c9f764d8a2de557af71a99238ea739796239be296dcde54869cfa81471e97ee4d1093a957ae20f08ae37bd6554cff36c4ad8db41dbfc7d2a69651776e8b9c2c9cb250fb1d748efbf49996547ade81b2d35c4971cca56e8dab8e09740e0a488851891aff88ce6468a9e545f165a305a54511bdd75072e2ac32e0bdfee39eeeabd719bd9c844ca9e47535554d9b78c0b3929762e1114138321f57ddd4a593fa244becc1f3f3b7484aca4255b5d2522e7d99f8089e57eb8e7bc14d028f38a936766b584e344ba1f02268308e167a913a86e9a5e013f1692cfdd0fdcd234415dfb241068e5a40b79868f505c33cb22d24ea6cd2c6dde33060e4c487dbe0e79e9fefdaee30dd47952bc8c3b8280fe8dd4edbe9fa49a6c349bf67ab45eaa2b70bef7dd01271e2ecd6625f7a5b93257b85035d385b06e4b0cc19256ccf9e1d1faf57dafc479698b53bce8c66b2dede04280ea388faa8c88e385dafe5a16d6b8316e5e5cb1dbaf786df271feb0d35cba4cb9663fdaa1501533cdb9f296719089bd5a5bcb8190dcedb102b6c0ace5f275464d92398889fda4b51a8b091f4b5e4a306af5e9506fe83f05add2385eb4085f57e33fc8971325d219f2baf851f6542c830026d1c9dbee7395b332204f4bdf17856ec3819715cf6cca7a872085ddd43d64d6788819889b96d3f9308a5ec89ed24e63772b9ae07d4bcab042ad09ce71721df89c1046f6ae41a1946fe893d44398329d006a266dc6f0f42cf84faee335f3d327d3e8dacf37d63766824d7c7e677fecce9333fd72047357961c5e4b7a68795c195840307a6867adefbd1b1bf52e9bd48744ece77ba8b184ebd287108291b6590c4751d33e759dcef88223bfd0c7323633f907fcd363ce38b1bc90d7a6176bcf7740eedfcd435cf4eebd79d062673f7f68b8f531b321056d5ccd55699888d1bdc5ec1024ad7630f8f1b02afba8300ed33e4dba9824bdd841f11810f4ae3544fffc181ede67a70e403095a09a15af8970582e02f0b4460bbe23f680b6257e18d087b9e8e9e154f2d9bd5aaad93706619cfe69834fc989a448a575abaf059106aca9895c0228db8b3acade7cd0b5ee4042e5960da9f4b38e62672f0a5b0e0fcd5343a5b1aa49a2ab92197ee88da6182d0a79d826c4ea52044ee22e6626d40014be161dbbac40c01fa7ab71d8d1bf5be634cae2fa7f92319209bcd32979f4373f8c8b2bcf7cce8f94f205ba1c718fb45382b9f6c4cbe6489ed34c76dae3bf3abbe3ebf92f9940809b32278f297b00c3b131116d0deef315b8e0757b45c07c9ec93b2ce458454956ff05d0d9d8eb11f2f528a757f910c1da2753c1e30a069f26f15ce707c12a574d3e6aa33a1411645f68a915379bd9e47db6c1ee98452ca96cb54c33491870112197fd16f984868bde4acce5d207091adc20ccf5ae6123fcc1615d2f2bbd3d7d5858df8548d5bbc72b1c86cb93466104c7741bb59d9886d4ed1c72a819b9fba4715b9c5604033d6bab7529a8ec773cd317265d02adfb25145e7d3a474873a976a62b31ed64a18e3a908bc219ebedb1375dc86a0f90c71d60eb8e6a36b7b8db1d67c127318129e81edebec2c34e11801b0713ac0076b158822ee585a4b140587669d65aeb141fcc29e819c1ecd8b9c1d0922d1bb1e33f23093804883e8fc6e9ea5954b96726aa6e1daa7c2ee2aa918339676de5b17491b09db398a6de5d7580f8499e97812952332789dae79852a5e9507447f69bfaab67f70e2c320fe22cc930825db1bc022216a63bb689d8f734c4d268c5a1918e5ea74bc305078eba1ea6ad329e72e9571b7e973d0eecd21e4b3c40b90ad3212b8bb7fc39c1bf59200bf807c28c7fab5cb8360f72a47f309234468267afb8bc07d0411ab2f5716c2d04c68e94f9b9edec30180e3026345b724c029e56393df57d14c3f6b856e5729d53e0a60b0cb69d6a79d23fd37c24de56a8a6a80f33d5897434f2c424d7d0deb530d4d88114bb8910cabe321210b875a8bef85ccf4b58e7a109b63a59150dc6c1d3ea5aa1e9b546fad96fdf7261fce9c6805ebce571b0550c7cd64b064bc359d0177821b4e987b6604a40049f07d6670ef5868b327b1cb3986aad4f12e7bd890451bec865c6db44b040829621b2ce774da069a303c1311c33d78a4d90721430c94c1cb0d8c552cb8b0fec7ee3548b33e30b07ae194f0cf1022dc47d12fb5d78a04fd523e0e82ac7595c784a7e2b0b3f815f06e52d05ec4614df25ab313959a5e123dd450fc9611a4f020a94a9ce967ccac7c80eca44e979b823611543e0581f6999233fd3b26b85ed4d6c74bb0547d074a036c1cb9098ac2bb5d5315bb8ffadd99c665738dbe2f6c09fb5cf2e4719c020a9d2f330a0f41840a28129e56f5918cb72df92ed5bc670f580ff22219f609775c724a760ffb6e074912feb97cf7b4e79cf7bb71e40f44bd22e6f321b884a63bac8ecf456b341cfe0e586bd506c71ef90da4f78d7c9c0f8d0aa798e2e3af699c00d8e02ffc282b8a86705e5d542a19be6f50bdb5578fc6d1acc6fd8ba5c45f78fd83de8d85d79de242eda80687b2dcfe64ff6c97d879975db8d352ab7548ca84b67db4d62ec4bb778bd17fb44f845e9ce8978a338840ec8ac1d59b6b490468f26d4f38e3fce863f273d61a7d580c4c452a4d64a25e95d8f6042167289db3eac232e0838f0e83cd27d231daeea382e5ee1db1bce8d9a7810dee34f9016ab4b25be4bd05a05def9335de694a9a2d9c178ec5c62f143251e44d9569e34a9a904ee59fe00cd45c9b851576c0bd376ddcc744bdb360e256617791ac9682db4dd469ee10832a49621722b610facb8c53004944ae06a6fd7c53d53d1bee5228cba220bef39483e33c9ff5beb0096aad73fc986f4468a4ea00b304f7d3ae005ea213991611adf245ee415629e34bd4c8c77bb8e6f2aa1217f9e6961040fd2f8f2c33faaebdd54bb589aa84e2b5e929c99300d148ce13faef57065e59e307ee8125d50fb861b6d5f77c96d3c74ffa58e159a9a17433014a294970977267f4c813ed8e4c1e04b681102f96a75cd37a2330057bbc1463adee86e402eaf8ae81729d17590bcdc788f101f5d3a818d4b13e7689d63327fcdc6f7c642ed8c8295b24bc530de4dc11497d0ff8950088b882e8b3b01a16449e205035418d0cf5c8be1aa17853161fd63a90c1bd507ae533671ec0fa264678de740504d94d9897f00617a7e413fd729a25340e26cc661a04dbca23eb3ad4d1cf2b16e3521a46ffecf3b4541ffa751e844ef9d6cb459e7d99446b293befa5a8855b41b94558b248fbd2c7b84399edb67884aee50c63b3a988f0d0fee468beb70b11a2f7c1dacc1e8d9e84601bc25e01cdfcd70d8eeff7a648423892812350faa67d7acb79df4467efa6fe40979b68950119423d086d434d460b859818a19ae05b9519c58deb878a2238c234ec1f8e61acea99b78c520bedcf849a9b0c209892152d4f49893a0b6b6299af7be12de4b3a525b4f235be3b672eaf6f3ccdd6dba53f988eca23d10675afc1d75c0b295089a8e49b49d5325dd724748d77330d73bb3f66e02d3e53d15ced3fbfa0af915c6764558d6a812e9fc3aa92053140713586e928c673be0cb688cc9654c1514e1e3e736726e618828b1ca2e61b4af2c762f724d8e9f8c3bb40ef2a220ccd0e811f9248806422c478f407b11469893e3e6fe42444560f28172251cafb6eb4b00db98907da2fdce9ef64ef448790b0c06a47b185a8a606343a8fb5657ec7159eab0035983481853344970f910f56e936c5c386e5a094af9b2f3be27f2e5ec4d2bfb0243678994ed7d59ffad230312036d77b6440366682f228df9933718afefa98bba9da79d9e2e9534272165cc1cde75555dcc5e26ea11a30ab560c2732ae453be6b92f8c5e36462ddf7675f9ecdf3e9abe351e05ebf858c3c5d2ad2c31862a319e1d54e502bb799da141b835bd440f2dae19d73bd0b5b66c80ef7f3087825c42bd79fd45005c619593ac5463168624ceb69371e24b45e1d5696b9b9f11ced7545c99cb34e1007254e835a2ac57a5fdde2f5ae1b83f48008ab1ed43f72573cf467bc97c19880b2e32811ae27ba1b4d8cae93aa1701af821e6ee9ff15e12914cba8cefaacfff7f004e40b1bf060ceb7f43c9b149a045a6ae63673b5710fd9c28d5842f78249b687d6cb7fb6c69f65f362937bdf7005da4b765ae98c08b10cbe83b567d4945e5c190dd50f5b3b43f03859ee3b3c3faeacb2b1a4ceb3fa5c9222ee8debb45dfbbe9e7e6db29083e8378d68dc3b9829eaf82d769895a2b21b3f858e22708a32f3c3daced6bb65371faec2d7ca741cf04dd30637c17da55235191fa9a3ce7a12b50a44698808f189b3fd7bc7c1f58e3664595383d81d705c2a80b6f11fa4c425ff0df10f19c2d91594e6fe7d2db5e1fb5e234b889077cc781f385ae23c316bb421c7391593cfb96b769bf1916951b99ff1f9f1bb8ccc2bba4f3ef3b9bae97bca12a2f6f1e7c064bdd10d6340bacac8ac05381daf085de21871f04b49eb68e9d333687abbad1de0f0fce820706651916c550b0bdd2130c8674b0ce70e90df74614bbbd5f2370c4d170afd46cab14a9f92866cea0eac70f817e687ba9915b2bdc8b739f3b91cbeb7a8b7cf123db94fb57be299d77d7e95c5a1b2b482643ecc4dc7bffc7afaab5ddeb3e0ba5c593685a1a7d4187cfcd97e781cfed329404bc21b8176db38a231f93b203cda54ed92eb35f1872768ad077f22b54c82444bd18a38b43a1cf69f3b89c3059514d3690e63d7f13df69f003d0d41cafd12552392a529f93e63c7441a4cff1b65ad8cb5210bde2d8b9e3b8b8d45b8db423d138be88ce366506d179732a36dac9aa477349b3ee19cf6775b827aac5e9bfd60a7a9e30fed2f3c2b27e8c4f679b19cf43c0373e9a82fafdfe3bc3c3ceca3e2e0c3da727f1b943e2edc69b874fcfa1d5c1873362289b3f982848901bb6abc80cc525ce0046f06d25972bc0822149460a99cbbba4846cdcb06048d3a838dd59e501db896048e17e1e0846ae3ee66a78c4b94c8b44e73e12f632721c971e33bef35e27e8257b77fd41eeadd0c1d204a8fe3890cdb3c511e77fa6dcfcc10ee581d5cfd217e85461d0b46443ac7231b2006551f70efef41e2748a1dbf6d0fccc057772b8da838b4b93f8767d8718ee434dbd9762766a6bde59d96cf5eff701dfa6ab2ccdbcfb51fa322c8cfaddf0fa8d1ace9e3c8a6fdb23f4d1474d5690af7e61aed071d043a42589d3130b6d2a52c521673f2fcdf9db183c9b14a1cd94016776a00bfa4788bb968b6661433c75c0f79a7801979881edf65fe286ce07457ce7614fd1361462c29bc2ef6556d40bf92e4343ea2e41e75d90af7bf5263e25f74208c5066d24fbb7bb2e5b1c35e741ce12af844258f3c4ebca0dfbbb8ebe8f934d4283538378541d2abd2acef1ad009637b47bb2193e9ec48221852e9a2a0b8674d1d707a1c2ab81558c9ca0605d9605482a71375ca0a69ac26fa5a3e20bc4bccef1e6fe9362679b9f900d11febc60aa00b68896cdccddf72a71e8cc4fe48b1edea5dcf7cdc7d2850fcc13869edb8d0aa9a8f7e753bf5bb4813ec7ba90896a550548c9192df43d3d291ce51586cec80593ad57935f728208a4ead856fdf0ceedcdd871590a97fef45966455540a43f2ab5cf6512879e3b31d4f795ce59384a281af104ed8f2df6cd4e5cb51671f8ac97c47197150212ee799a80285f48c756b7a82f2b8b821e9f3a56183507fbc5ffce911783207488890dbc136506ae275fd8774048df7d43660ce7db74bd97c48215f9646b26591941455b9b50dc8ead5632c25d0b2c65460a5d748b0d14a8953e15bc1a017494898da17ac2e8d7d0cd0b0715a767b48d870fa9380d553024b6b9f1e7ef8fc2cdf4a25dc870158ef4b4c7046ab9b7e10bd23845305ce2499827124e9464ce64b6c44a1fd356bfb31334f578f32c2cb4a025d2eba4972b95b3c69f290e9af68c3cf7ef1be4f92f6d55ee5cfa98387ace5942ff29596c0734eac6677549402fd9f301484a08473c97c517f41c118ef27226db708ee79b9ec05590402f3ffca17e6c4f73bfb84596da29a6267566454dce3e8dcb2808dde2abefe40ca1dfe92f1267b51d5a38c4559d2f8ebbf849beb00f6eb18717fa72d795d8113660e14cd649d86cff33475a62a80deb17252a27f41c17b27720dfa1bf5d9af6e7c788abc614b367f2759dabd7962111a869e1ef7700f14ac3dfcd2cc08c0f23f8461d2a6d50371580ec62429045c6656d2c05a30e199b0a9efa7f7753f1f95ba956d8dfb3f6bdb67b2abc36a64dc8822195ba033067c52178667b059845bec196fb90bd3569c7adf1363c4506734366e50e77aa19da6812d17573acf43b72fc6009397ee03b263a9a7d3b46a762d5e706e2ac32d1f274e3d2f3af9766defd917cc533dbe59bdefd4ab9e3f31bc549f306f0edfb9ba262025303a07df3fac7b4dc75212b4fc00b428fb1e3400e6d1762029fef3d6118f186207dab287bb4d5ff5c094863165fc025657516ba0c6b1792c5464e27902f79f4efc0f3ed62e65c5513eb0f12d24f13275e79157626e45fd0f786d063cc70966e0a897551ad01c8a6495c7c6a48de7bd2b49b1710d5df3be6847a98608a2035dc1fc25e4576a9e102b5d6af81df58a5a3426df671082c801131ace19956098a124dd033d50c454966c8b3cbb47d7923572d4b8fc252abb0e0403f57fb606bb91b76567aa0d8153022db9a04de0882c444ac4cffe2fec159707951e8ce9bb2604857ac3a023f5578204e6e5edb3bfbf4ba40c32da8162a4e99c5d74fc57b98c50d537ab123505d35a0efdbbc48c8ea380d3c81e82918b3ae325760d5382f99c425e78c058e1f2b9d75135585febdda919f97ebdb572dd177ae59af1fdee16062b159d6cbdb571d14dd8e2f3893f55ce3c51a8ae78e4b9e28f49968d1d67dec0e5daf34d9395be2a0268b181649d551b1851cddf513cee08d1c73aa3f01e2d37ad16ff736f55ec2b84b67135e3c9f9ddd6a35b8eb40e8357ea178c6b55faa9f3db9ff3796a674916b61f954e137d3ecb0b110f27a63bbcaa6fa28e50d5810b39455a2848e6d4d9937ad09dd4136c7b3652e56480c43dfe57c568742bef390346dfd274df2ee12869fd789ef38f07a52578e9ae75f0295407cb86b83a5c5698c4075fa7508a82c6507365673c252be70f4cf80340b9cd72111c6e4da21f70f72daf64db5c059f5dfb340412b8f3a60d19e1a585be284da800e6da9a87d72784e48cf9b2e395407d7af3902c73daa2198a19937a1d81bdc45fb30db6369881197594f15fa0b8440789f81001b944a2cf5456ddd479f0b03a76da75356b7666fe0df7c690503fb908057028eebcce71675e6db74bb0e26cf3fa01ff871a9feeb8645fae6a51bf5b2031eb69b1eb981ec007dd392f7853173cf054f5d08fa0f014e32e573f1e92c9aefb25015531830a51d5d38770e46e36c8ad055403ff4d3277af12f3889371666251f30b548fdfca9f79b12b043e8392e55e835e11ef047aabf13c3bd1b04f92493289d8c551f44ea3c30f13a33852133eed256bf3387d4559c74bed0777fbf1d4465255d2cb94eba80522c229fdb65301d73f1a17b41891a29fe652d715456032f9cea024da002d5432a8bab71703465e52d7510069e99a52e7e1c056acc6f38a85954a816d1ef1a2d50b9b8141086cdbc81b86ae323274e49707e343cd24e36477aa1b9f352b3ad337b04aa812eba1b5ee92e5537dc49151e056ab3acb38d7ca404fa51617a43af349848c56463dc65b3ac129cdf210966d1ebabc30e786f6f155cd33d0d7aa684ce78f7ccf672b86743a951668b181d9bbb6c5f85b939b368be4a03d2e5b0feceea3902f28b2d4a622a279bbe77b34bdfbef249bad87d899d078d7ad82ec3bf85563edfb6c7d57c7ecf7930e9caed64cfa6b7d5652fbca71ffdf5105df045a6fe0e6dff5220fa3eda3b0b4321f0097d36a1fbe871ead72f2f0b9565986fd37d6c48527470bc5ffbfec36510abb009449480630b085ea4ca8e38ea5fa776a206accccd3cfcd678b650f1776e525f914d204ebbf95afab520ec1b322c0d14bd38c5524eca0fffa4971dd84a7f66964bb623c3565b49b4de0af99cce7de9a2b02bf1791359fec5b08855561666c5a7179fdd7130df7b62aeb6eaad23ff3386dcb5e07ffab2e7e8b7cffd662b641428caed8bd750b1da3f541b739c62f5053e7fea1aeda715adcbc380451e677d4490e80a9cd4f70bce46b480cd70cb56fde12f032f705c6a9b0ef4bb5db8d26cea1c29d3b634c61a13fb9efa754d3c51fd32689a915f35acaf783a070b7d4f6fa36d5ad2f8a962e8b9ddb9949c59e0aa8d4c9d490a9b23abf4d2fd5b49c5918d743cd03501b00515dbd1cb6001c7f8bcaefd386b423be2730b111913271baa2402025537f2a0365cd8f89840a553878c39af233be6d928a7c294b999ded12b1de6774f056b083c7ad87dc7e7d98d2b54b0f3afb7ad3b062ffd5c61f431b9198221fdde133357666393a501bb62ec195840b1c6049d6ae0c691583f21c5d6c6c98a575fe37b8cbd900a90613177962d28565967e8ce15f4ea2ecd7bf13670d77ca4aefbe8696de51b5b48457885aab661b14b1c79c1875c5e973f432004a9ca5872f5cc7613b8c4cc85541034d907914b2f00beeb88c1d0d4f3a72c5ab1c7b189346bf4dea62c204cac931cd1cbf67fa66d5ff9b5fecbba7d745151157ca16af17441d39e8a9ee95c7afe34e2aeb384791cb4af5ff4354ac50903cecce7330bafa4e50c6f9d3137d99ab20da46cfff381b58b9691c33f1fd34bf79d5c1fe475a55797b6c2901953b8d4bc2bc19ad83924d65d63a16c08e400a92cde431c95cbf57d5b96e9dbbedea8eddf5ad9c4d767a85742210b66122bc294934c4eda279693fd5b3ed1367ebe838ea90a43a0067cf17c9fd3f2f8767dc6f219ed6612bf3bdb10ab617cf9821ae84cfffb29ae381b37ce38c54a20e0ddaa971df858dbba7cbdbe6ff311da9ecefa7192260c3faf279fd96e3624658d3036c6c275ae930593cb2c6c67cc418df80c76f6541836f362faceb386b7d258845d332da6b05bdbf5dd53da778b16eb87771e21e5874e3e47e6f750f8dca27ec2e83917d077cd4ce275c6453a0a3d5ba09ac2fd21acc95854d2068b0f3d78e611eda791859d21cdb3c9f0d4f05c189d638bda72b2142ef3d714c317876a0d17f268eb279c21a075d01a18ed88895321325e03e158f4841d7dcf46555bfbfe0271f8acaf89a72e2e66075a50acc6533132571c77e96c71d0b4cfb4751f3da87ef3fa465279346c2f53ed874f3e92daf7bb8e047c4d77ef6669136c499d844167f552173fb1aec91dd26c4da362ab5fb06b366141a19841dfb9e6f3d872ef656702cdcc1ab047dbb3f161edab7f2cd2b67d7db22df562eda76f767296b84fa8507d443ce3fae780e707866541cd165f71a9597cc741267dc7aa86ef1a30ebe998399710bf37256cd5c6aced827c8c1cf8f176ff3fae7f9b0ac33f3499e88777b0eba0fadda227f9fc9e2f4b73fe763d97def656bae0b5366891c936420c2b29cf16cc4e3a6eb7e8c70f2dd5d67db04adfbf752b29d9eb07a47961ed23ca5e52baeff5c08a571fd77ef8f497936cce1dd576aef999fe7f5f0a7d273f204dbbf94e2e21ed5a6353251c47ccd8baf6ffd8bb0ef0a88ab5fd9db225bd1302a185de7b6f520415b0a0625710d47badbfd7ebb5d76b57bc2a7641a54a07e984964020740284924042427aafdb4e9b7fe66c44bd1795dd3d67b31be67d9e2185ec397366e67cf3bdf33553405b3a396e1c4461190975e589e2e6af3e542ea4ed524ea75c8e355d94d3b61dc6e46f9e61d6a777b11d077c8ae563b42e048bf44912dbb84b80b981939ab331adee407a5a4f711f99e068bb72eee03bc2da8f3e56ceecfd4b59ae5c38eec02d45dabf3a851b7cd36cc32dff7a83098eb8c39be5c1480caaee1614c64d3d83b83feb1e8747f13b10b7ea2e116658706d1be81a61f6d97e1e2fb7c1df765d8493957608e5399f5c23e42d26798e5ccdc6cb6361c20178230695013f8dc61717bd7488090879861b74e377c445ceaf41364d5b9d0113d5a9dcb5b3a67023ef5c202e7ee54df9e0fa8b7a58c6e4cc0307f8aaa203600a1ca5c5868d892ecf7618783d7086544fdda9b831f7f70063404bf0d47d1b21092b281bfd671130e4245d54b28fce16d67df28e726267dd5f3e22569ea5c4efd25065e1758619b357038bc66aae80217200116166e3bbc4b84350b9be13a3d8f8aef7eba37c111f101330e6a01dc24fafcf90b77f9fe7d6eb7721cde2787dc2db863b5fddc38f9fb910f7b5f59f0a5e424a7163ccc10839ea4b516d591226c589f2e18d495859ce466517a922e12b073e787de0357c54debde449f1a7d7f7fee5472401e4fd6b2a94dc934f61929ac1f51ef70552e3f535de261d16607b8d6bc6b4ec04a820934ed5151d3410f77d2e5fc9487d56f8f689a57005fb3eaaab40c27fee5dc28d98966db8f3b5f598a845eb64496deef663751e3a09894273fdc68d2316e75cf1e7d9f7cabb16a45c360efecf20d841deb32c53c93979177fc3a3ebf901933fc53a57b437a69cf7caba62c0add84512bba75072ea359064480921265884c969671f26a71b736ae1a9866448c1bcef7a28b99b7f1a79f059575f4df0430bea255d62fbbcb96cd7e1cd2120f8df4d2233e82f4495e5661a677c34591e3af52561de3fe6415d85b6eb122b44a8aae827a665674d082a4938c3b6e9752d131efb1656d43db318f1c6091e9fca90136dc17e009d3fe21feebdc4fac6f1f9d2a62f1e94b67fbf0d5597b876e07078630d1eb799c6e91f242187b58df6eb5231812c46e0ef725c57be864c4192d84a97712319682b0b5709abdebb4f3e9668f3f472e2d23777e32f53f8f10faec7e4bff5ef14596281309ac93d15b0d464a0baf26dd2ce1f76285947f6c82793aa54d75e49040a1fda7d49f9abfaaaf9c2e7b39e5072d3eb5cfa74d17990d67ff2259bd0271e02425ed0241ce27fe55428cdd67a85e0382223b709f39f9b29ef5febf241949cb27c3fd769d0e3ece09b978216e5cbfe17ee5543098e0036a1ff54dd623c3139650ca64c61f1cb37629299e1d11b95771ac46f9f58c2382ca7b911772c43969a4ede5050f51715a46ca03bbed90c7d7dbda6ec2b08420d1c7c39a6954f93d3cf4f96c2f4ed395061972088a799eeb5d826fd96cf5d380ec2977f7b0b6a2b5e668c014d674648c91ac11acb761e3cd7fce6f625dcf0dba2b456dea49df33732bcb14c2b01cf04040de0474cebe2d166d4a223703dc70ef138918e29089433fb1295c24cdf3fde24e4d410704a58fef67871e5bb2e93d3df90d41ce5c28977419ff7c0ad648a6c9b9ec00d9874873eca3d1e37deb813afe3fbb520a7bf21a927a4ed3fdc8789a85525a5782de166c7243d593eb6ed5571edec618e6f1fef6b7ff5daa7c4b51faf934fecaa52151c4a4e7d909c567fe098336b86abe4f49218be780a842f1e7e0f04c771d50aa57d3f83c04b4622bf062159ac618130fff91bdd21a797deedc479cb40b0fdacb9cbb62c0313161dccc677715921e587dcd20e7f76a46eaec70c53242c7ef5764fc9e96ff77a61fe0b6952caf2c94c50b8eef133ecaff61afd9a02ce4431ae82585d5946fffed186c0a128f0c28058181e17e493328a64c37d26251f5ed85788df1167565ce437e3ebc146ab6f23ff28e0c750ce1f02c7abe3df96f62e9f0141e116682a25a9c8cc080e926def2ec37defeee086ddd645cbcbcb07d7e72945595bc1a04d840792659e69d3eb064fb2ef32edfb276062e07991724552948c7dbe9f7c84b88a1a0332c4a5afdf28272df24c819004909216fc84af99a513417599f9b2edfb77648222866aaf7c91cc9d7c81b8e29d473041d53c2db0b8eccddd28f7c4f3600adc221fddf23771d5bbdd1daf8c1b2b7cffccbfa5f59f1e50d2931daac5032940e1a3e4d452fdb13067e673e862ba47c244c93e562b1fdef039c97aaa03c83b65a473f627209e093c26a70b9e7f50debfc6233729947f0694635bbfc4efb5c64a88044c440b2396772ecb48a65d9f3148914374790f82c24952c427e43d3f699ba51bcb3d71c1f3e7e4946577e07b94e939fdac37145406dc4ba04508882053375f6f90bf71f121f070f7689fec1fa9a37a5f620e7c75b21c0238564d22e42f7b25396471358135b166cbde59f4e426b2bfaf5fe4b082b8e8e51fe5a485632020244dddd49a4ae03a89e9141dbd8df7bf9788496a3f2dafab5c485ba2c6686901c10e6ca741e399c8966ebf9c5c9f09fd80653cdcac19f26cfbe5537b4ef9fcdc1acca5d2d237ef929216656b32a54736d72ae70f6dd0499976b91c1513dbf61a2439c234ef893990588c5f93b6cd3daf8f40c17ac7577ffbc2f1d2e849c20fcf7c236d9b978dea2a144feac052788bd0e0655a5bbe0293d36749222c4df8c7e93d1b19ce50a893fe4dddc0fe7074d492513bc4f9cfff1d93534df41469fb0f7b4112b52faba4c80c920497ccec4c700470dd460cd545ae1802005d38feadb476f62a5de646514098fffc0979dfcac7c0ac5f225516eb71766f1891ec92eb3c3821d4047d63025505df22286013955f13c7d0a6492389a802f1003fd337d62789df89721b4cdd98055b726a21c4c03aa5b99f8c2d59aba4a6a9abe32a60724a48aa179c07508319ba4940fce9f543c287778e42969a772020cc76f902d47e08e2f22b3a5a6192ba961f7e7b37cd38eace1f93a0bef2ac36ee6b2421896138ee5f7bb73e6e340313147a9dc79968cd41209f4cde8e4ab2259f9e534c22958b279f9652961dd3ec9a9200cad9d43d8c3e04d5b545620c20070e233577ef55e38b6dfba46ddf2fd0f5d0aba65c41e5058a2eeec914fac11c725e58fcca634a6eba668617f9e4ae2225f7e4111d0e7e78f0e31c10ba82bce72c972f2e78e1114c4e35f39250caf32ca8383b95d497d6e1b0c1b5b9444a00962f437489b262b92269e7fc775c4e88e45aff4992be1560adf94a1f1778e7a05abdb1d66c92eb8ae2d8f810d835b513ecb8a5137c30a2258c6811a26645adc744955a55b501498c34be75188c6ce17be56436e6d4c02d989c9eaeb4438891f5bb6049e28a6ce659974bc688b293a07ae181c9a964d3099ec2e446c93c5027bc73f34bf2fa4f06236bcd4a080c179b0451552495a4f2f7bfbb841b7e7b8c2697bc78caa694e62e570bd76bb3299a2134fa7ab73edaa6a7896ddfbfbfc7a7c98aaca00b69beeddeeb4ca8b3589cf78f259a1320de701818d6d2d88fc844c4998065876b9e31931c401c4bfc12e59da6419f14ffbb369216fe4b39b1535bb743f28e2ad21e1dc247688a953f82318084efbc24a7aed63664c15a0b4a466a1a6330eb31972eb13476f0cdcd2134aabd6a25d212f8d950dea9efe443eb7375d771f3cf82f8d31b6fe1774f0f0f0360f1f651a7a791860cbd1d93538be89e853ed8c042b74833fcbd670cac9fd21e7e9e9200372584ab31adc435951a413d6b1c16ba77748cf039f9f4c58932b83f91244392218067fd726cc98a0fc4ebd7e82241b5cb0a6e4ec54ee73e922e36b93a7da8a614c4f59f9e14debee976e9e78fc7214bf57a088c70f83d51c5241564b9377fe3d31f33c191da70fa94e5ab31a9d1862539acc0761d3e91096be6faee1ed6ac0b92a59e1ee96c6a3d3ae1907c64b3efbaf7923e72866a69c367ff46a539da9fd11cf8b91cafff32bd4eb4af9883f79bd881896cd15cd3f8533276764b96bcfdfb755483a7f8bd26cb03aaad58236dfa628d2ea2b734f76c93c96fe0ebc0fb3496615bc4efffa19797844f14c766c263bb331c0998d6502751d728aa9576ce9fef2def0ff9c8c64274e1f817c40b4af3d71ab73abdb4366205b2880adcd12902666910df48f4fce171c1b078625bf8e9ba76d03d2a00ea0445a7b2464d132a7142cea455646eda85997cd27aba2aab5a256926ce7f370562040d36b8ae289283170726a9ac772ca84db6903c21aa9808ec11debde546e9e78f8683b5fa7b2624aa524da2e1afca86682764ee5ec3ccd9776a324679a78e83dd9aa226ecf178c1cbc044341fcec4b577b9ac0837eaaea1e0a9bb9b2910e4f4a46da822df77fd32792389fdfd41dafe7d862e6bbebac401a250d8e8c61949ec018aa26d361242422a0ab662b250071414bf7bf703909cba6a36aad4c59003f8dae56a4c248537e612e4e49ffe836a74cabf633015e2fdbff1434064a98be6d48bece396ea8dcab1c46c2f3e07483b7e58c0f0c612ad9f8798a62ab436cb90d8390756b279ac047e38bca54a2813c2b4f5df9fd83a14364e690fd3bb45810ddf8bb8fe5ead6650d4104b4a0e04887b28492ce590901ab34b48683d26f1b50e19aaedb2fa3be22c1bc2731065e660729b500837f95e180471eff6a778d3cbc7f7220833ba3eb664ceec22894165f4ee2371936bf24156a47487b461ce11c7fbd3660a7366f5564eef7e8a31980f33816192eadecaf8599e0ac1066ce761afb2dd47857bcc2973d34139b6659166a79f2c1fce8db8738c6b9baa6a559ce87156548414949beed3d635c61464510e6f9caf4b5981066a885b75a33e24c703db6b4c3ba471f20f8624473aba7537d8eba9124ff11b9983f7d8aaa26df2ae057b75bc0b3914b1d0c1d65b4032e4103655c93db14d373e7568432db2d5098d7a486d0a04aedbc8d648ebfaed781f978f6cde82bc2c23f13df395cc83874872262d418e844a355d5fe08c378d34f3f0f5b8d62a91d40be41e5f5ed34a4da6f4d6c122f5e61cdb34dc3008e9bc94c706fd5a1484d493551a7c33c9f7e477468e85008e81204c3a037846b53a12cb5d74000fcd708bc12d5afd6ac063c6a984d4d99cffe78b20e56e383f77a921bd8f7083fc13af00624525eec13a8310542b5c254015f92057e4e7cbc7b67ec67619fa05dbaeef006ef04d3733912d6e6682c23b22bb9553dd687dbd7c04e91fcb75e5c74dbf4f38b57b8ec78c66cfd2ada6a1b7166069d2d263cb1b26256cebee5398b09805577a02ce761916c9761cd81b6c1e18c6c82183c37a4c4e5d75d267e78d2316c0fc42f9f41ebdfbd8b8874ea62060e33ab6f238e1d57f4953244b56b0d61ca25a3cc57f2bfbf2be95fb5155b1de7ba544075b67f0264017d3f729a776ebe617894ab215900401df2bb0b1427e988050609a27c4aa59fab5bc2e6faa4595857bbdfe409200a8ba5861384ed3ac269a1354878c200293a01f27b485d12dbde33afacf7ecd80e8f2afee2f52adb7beca512f559efc0df154e037a4b381804203e924449324d9219960c9cfa146d64934cd06880ec404947cc53f479a583ce63c2643bc3af684841282eacff4ae5da849257775a2ec9744954c33c9dedb3cd0f56c71550e4975c1d6fda9594e04de6883ab10cad95419b703d2e62f0fb09d87bcc626f41dc80dbe652213de6c121312d51d132d13921c4ed7045f8c2110ac84d8cde27a8cfe562675193d198bfcb345cac5535bf0863953adefe809f086cbc4b61bc6c426b4c004f58afcedb8eea37b8222b7f3e8be242b6edab62df89ebe5b0b04936864a95650494ed30e4a210728b218a7a99b31567c30012994f6ad2ca25a3cc51f10485db70cf0f39ae17e04d90b73d9b8870d4861b18c8c769679d3683b60394212f3e4b3fb729acc7905de340bf1609111f2783721040bf328f86c74bcd7c8e92f78aa4f3335a1ceeca3251064f05ec657d4f00ffacdcfbf12ce5fbf92fe109249ea6292666459fc3303619884c560721985896654c3d7689564f22ad18c6af84a7e0ee49d3540af86507d62e18dc5e4aeba4a26ba891f2a69ce1aa87141ae13d452aba47f71348e07b93cdf2e9e3b7ad5d7515032f60b4ac681bdd2e6aff6b21d07bdceb6e9d19d89ef3a96ed79cd7836287c3826f111a4d6aa6a11f215eb2a9129c6805e98588fc50475b347d7b2d5815298b9848befe2394125d209a116fc98fb06099907d65ed1beda71c0484f0f0118834942a5391ba96ee71320e22b5287eb5ec4eb841623a5f803c1a3fbf5699624ba56b402499dafad7b29ab1e809e460599725399281e89f65c46a33203a4d6e9cb839ac38d09e18df2302f0d6c0ea72b6cb025b75625a91e91cedffcf04b62a1ff269d2ce3249b98373abf328c4a3a09b98a56896503c954ad9cbc1af319fd0b116d20a324432dcf804fd6206d4c10f756328e3242e08ffbc22f16d4f860d7096a8145044667ab31c3e2b1ad2e2b930aced1c5f69bb75e397750c1ed2470869360307eca0db92596090c1bcdf59b388e69d6762c1314de010936005180c6ce084ce24cb8c137dd2025ceddec69cc89bc7dde3eaeef84a37865f4f3f8b98815b545c75b98e0c8b5a8bef2cfd761742bbc4d475feb913b28b14c5a6b4fc9e70e1ea5ebd827408e148374b86e1900d094881414147ecfbd889aabc3752f36a941aafbf1b5d2d0996f3bf026ef51742b495444b2c13edd37b6d11e86b8c4be33ac051c2db342b5435649e37fb3ceffb674fee2564b922c91a2358474f20db1acc4b5945c22806355b2a9bacf62d2e474a7e52e593b496c6774c0afa4d4d4e09e6be428e9747b6136907fffa53b0802790e5aba4350eb046fb9a997d095f6c7248b3439691119a3e5f2f61f9633d1f181dca0297dd9ce43af675a759d00c6807e20891c888d64d421873706f358b5fe2880479d5072d3edcae994356cef71fdc0ee612e10c9016c8bcec399969d2251c6fe3f65a86c9b1e6dd966edbaa2fa0a70fb208a6501ea2a372a59471c74e1fa0c4135eb705d1b1d5a0a0a8a2600624133e870ddca26c503145b5d15d6a56bf0f76e13546251346352f6fc80e68d5e16a45384b366eaf37b0bd4d84d752534104dd29886ef89bb6c84c9a0124d356110269a24869390ce66c4d219685013089146fe9fc4829a494c287e4e5a0ecb3b040ffd9a29cafff88d0cd022dce0569999bc7a518da5d6f5b99dd7a704f54a874bb0022accb42a6b67ef650282f74258b337f861d3ba33edfb4e61dbf599021c3750cdcceab079af840db95f584c0237fcf636d2b6b91e972d51320f2c677b5ef3a2277b811324a18dd89e1f7dcf0021637fe29ffe655c87be4872c478e225c198832471c70f5bc046b3bb3671d018400a0a8aa6023d148526758847cccc65980a60d68d9abb7b119271f4d68ee1303ade37ea693ed03512d2caac609715d5baf94b26db984092d5d6a07e25e53f887b2d21aa669ef1fb8cb14d0d24d956bd243b43dafc90a10a8a026d438d2ebb9a573964a8b48b2ac7413a3354c41bf2e94a7363e40811b2d58be2eaf7d22030348d098d798f1b316d00dba6e70cb6f390a9204b51a4148c5776389637e33ef4c2df7a4c50e5934999fccdcfecc0df4ef6b863b244dc7c6f6602431391b5f60fff8ceb7fc3351ebbf7da2c67950bc7f7d395e95344528ffaca663ab41414144d4446ea91d8cbd89406896758ae0c58aed2dd2415e46384e04def1aed330fd52cd0008bae6b4723dafd1875820c153692c1d73ffb4fb2f02684b92e2b0aeb05a87178e1b95916e4c27394a07a0a4cbe300113a595efa682c194ca751bf96f7ee2c38f311d063e0a0e4b885ab646474984f0f599f0e61d35b956493628279396b2fd264ed6c4cdb755d76bd8f6fd0230f1bd2c5b677b8c6698666dc7789498892486a8abdca09cde23d2c5e83320493af4285f154187968282a289c8483d6283429bd220b17255a95da929af508b1dbb0187a240efe84018d622d8a71e8c9253ff46854d82228be897c9a3c8510f8943ee18eefa813f71efadb44bfa5bf43903d8f76f2ca32b4d43880e908f6fcf73ccbee77979fbbc81200adbc160065d7db51d36e0fa4e8863c29a69723969fbf79b71bf2f7a2e41194092d815c29a0df8c3bf0889ecc59883123ccae06b0a54e4033f27824093bbfa98f255adc3755b9119a7c34b4141e1e720a7b2b53ac9c8a64350a58ba741cc3c52c018ddf39e116504635b85a8f19914145ae168990d1cb2e297070d44df0ee419e81ee57a285f6ead43756ff682c73909d8a335057551cf451097bf95217cf1d07560b77ce124a93a8151ef17adc6a36ab1764bb22b5155d17a4d6a3be13e7123efbcfe8ffe9beb77c34024d8ddcff64a5e12d191892e9edc4b179d0f81cc0bcb176b7a3083d712131a1dcff59d104e07988282c2cf65a48c656485d68a276330776142229b0c19fb25402eeb52321a171aa9611fc473303836882e380a4db13bbf4e5d5feeaccbc66eb28220cac4438730d70ffb4f57d89dd6539dfbc8306ca55a03d99fc1f160b8ffbd9bf81b1e6beb8bdd53b28ec8c2170f3f0ef5552b495f754488667b5c7d1528e9c94b195390e7ec4212816dd6f606b64dcfff0dc46639609a278cf188589331ad2a5a27a76d17a8c4f4214802a0daf20235bbb296ca9731209c69d6b6371d600a0a0abf866807545751aca98c24791f625ab7e7064c8a6b5204953198b2dc71e922495c820dac5b96220a8a3f42b155847d45f57e5ba647c40495bc136126d7ad50e91536b5cc91aec00418396c95c8565fe1cfeb84ed36b22d3762da0ffcadcf6de16f7c7a0498027dae8f98a482b46be1cb6030d5e8781b12ecacd9aa918f6f3b8044fb018fcdf8c4ea1512d59d69dd6de0ffcc5dc741414c68f470678cae9b3098413eba25512beb31854610ec20ef5f7381316afb3e92fac378dd0c07de48c7988282c26f812c35201fde98c768adb3284a24d68386372982ea38b6235badfbe7aa22a300b40836a8255a28fc0fa43c10a95f4b9a2f61fbc55ab85023f86d1d544250fbc4b82e7808312fa817d51abcbaf2538309c40b27ce0be97bfc7afdf2631f7804939308a8afeeccdff0d876d3cbeb3fc2bf8bf4b53a50f2de151960abdf4232ceea35a59aca85b3a9a27c62c72a307a7ef0884905cf8fbc6bccff6c3ced7a0d6482c3e39d6e12ee3c3143087086929d46dd7b7d1106d31960596d2ddbc422dfaaeb0426a2b9810e300505857fb32f3643eb6c39a41c1e3ff2ce1b9890a8a64350c5dc53658aa214b9ea2948329592322ea43628856f80cc8b8009924554a0cc26c1d92a3ba414d6c3cf59d530ef54057c70b8049e4b298087b6e7c2ed1bb360fcea73307543969a98c71740fafee3e94af08297ab2e4d464eb7f73ecd5c27a8c4bdb71ccf03a9dbab773f31594af7e775cef59bd886ed3ce441673917fc440e8b89898c7bc670d71b470c33ff339d6ddddd679458545b8649dfbe935869d7ed4c0434cec4842e9c580d1c5fe7393b9780896a7113d3aadb6f4e168cc00dbb6d30b25bdc3fd9c4d740c5d91be46389343b920f42c9483d836add4fbe78f945a90004040fe6afb977181d610a0a0abf86c3968e90acedfea5eeb72d6fe286dd9ae0cd476142228169d9d9ec5146fecb6df34e5d952b6778430e9245977c9789052ec4c8014bf323e9bfe123a765ae5e24753265a8c0448664ba25a55808b9ac70387f2e27bfb33bbfd608b29ac48a7cee52939dd535499c23717f27ea831dffee87d315f04cbfd8467fce159955b01f136ab3c13f0f3d6484d4babb03625d27a8e430a1d621bbe51aeca23801240aa7fdf55d20a783867bde7e142baccd7e970156120149356df941537ee0fb4cf8bb9c96f8beb86dee3a949bdee8a72f4ade691bd7ff7ad54d5107685ed2434a5996cd8fbe670b8446ddee519d52e2e61b1ed7936dd7bb979c77fa8473d7319036d6234acdf1a09c4ed90c7e5823f9aad8aff2ced481603f0406d38dda2a7556861b32f56169e7fc64545140079a8282c23f75c594e505fc98fb73c11cd459cb30152489116c87fe0fc176fe058ff66e57b6e311778c605b76be06596b404babb04a50e5ca6249ca3b7b818feb3014b9c280112de7e239a169a8f989496515269e9598685662d2594548266ec40a5a6e757e4f48676d03e97460b229488a6a711464a792c6b28c4a38c9810121a0c40aa93620bfc78d6320e032dc8765107c9e560637b40d83ae918d570b9db8b7be7ba858b520327eaa7792b9e9151da892545771a8c802fc2fa6633dc172b22d717e8ebfbe33dc35f7b58390c807c17679031fb2d593853f881b74e32ab6cf847d4a5ae2c752e2dc0dcac57447a310eaa030e0864f8b41761d4a43aaa74d862a4d2d5504966a90f6af5e61b8f1e9db91c5b38a21c86109e2474cbb46deb3f4043950e006df1ccb44b5ea0ff67af7c7946133958cd47d7407f151083690cf1fdecdf5bbee464d9524e2121e12793b3776fa57d28ab753f47b691b364f4569cab3c4c2af8932292828bc0949b08222edc7df75d656f65a81eb3fe911fe86d38ba4f59f9ed25d88b4ef6732dcf2afb791adcea8352354b56864ad0529e7d449be753770c5444be437895f444089ea7feb8c844812c259ed901abe3a2d9f653651259d6ab38a2ae9ac1715b5b4885d52d4d22a7609a9c493f98568121d9464eeff8574aa63cfa8cdcc63d2e961825012eb596c11e1f99402583e29014c8d949c28abc60e39b50298fcd8242fe1791b1def7a4d602b9efb636536afc4dd321c9f8f64f1823f8e2f131a0ddcc83bfe0e0e6bf49fbf840813d53ae21e320c13d56198a81e978f6cfa5a494f5a25a72797fd11b9d5a5cfadba1b9890c891807448e6c31b40c94e2ff594445e960b641ddd82f7866c3c8609aa7ba5bb206e47912da730711d3e4385e78031050ec36b30caed7318838958e8b6c82777d980c267a1641d49e287dc6c47824ddb534fbbc5c00fbffd1d74eee038396d9ba847dff96b677567fb5c7b8bbc7bc9367cbf23f83e52139c2212731042572a054523f0046b0d48fb56ef334c7aec01a4a93ec200d60722f86beefb50397f78927266af6e260f26340a0c77bcfa22921ca33caa67fe6704d54983d9a3ae7e9890a7524cb208a96aea71a864e80991acb64b5083c9663526a0b50e052aec221e03094a55c229a90494904e12034a08a715934d9bfa5551c90be11f2c38892671b1bdf43dfc6aed0c3030e0ed7ca4241bf3d69c5a782db510de1bd1b251c67854cb1078b4570c7c7aac04428dfe97788bb8f7469a79181ae73a413d596e83628b00babf462c473c26f2e4f2fc727f7c0fb931f7b765c263675c31c1c4c44a15fe2cdb9b1b7cd35758b17d4d293ebf5cdeb96099929b7e809482d1bbcffcf807a780d13c1c2bbada6f1084ac65eccfd53af64325189907ea507dc56a26b4d93fd58c786e5f480626226e00d769488254782e9b1b72cb30e4b078b48695eca3eb68f65e1fdf338bb38e2087f53830ec608f0e382ef34e833978247ffda32fcb2777bda6b51b1b131acdf163a7bf07912d26e335fb0a08b64ca52c67b3727c47a27236f5809c915ae72dd7395de7471681bbe6de76f2891dc974b55250340244db4eac9b90cd50db5a9d646f0c89bcde70dddf5e759cd9fb863ee434068c4f7e7f17d3bafb4b60ab053dcc949708aa7dd74f674d03afb760961474a54c9818da0a2da24adcfc91a092a7b4e2be136b27219db582f3fb724c3209e15489a7d54940499c27219d846892af9686afa4e625c73458341b4826db4034d9066b27b17c0619589fb732933e7e76ac14a20378f867ffc689477d695073d85b580f69655608e4fd6b4de1e500dda34cd0b799ebd94f0f9758a00aaf41bd89b99ac1f7fcd134b9e09cdfbdaf98980226987f07872dda7581ad90f835c00a737326a2c59386bbdf780c93dc34a5306ba57c78c31639ebc82974214dd4fa14d0f0c0fb03b95e63e6a86ec7ba0c0a2b03c79fd167413b404e5dbdda70e33f9e44d61a8f6a7b20490887d0e8d14cf3f6d998ac8ef6acfea921434edb76806a37be0de5740aa9a9bb92ed396630681d7beda807b66daf978d8f7c99237cfbf80f5a1dd0100f0de3e3f35e83f06693c15603a4fa2aded47b30316d7af0d73df24f98f870ae929fb14b39bb6f0326c7a9c8525584f2cef8e90449a416f154ac68fe4812b95150507817f28175e7f9713352c118305ef303574c1ad9aec35e37cefc4fa5f0fd3373b43c2464c29a81f189793761723a0fdf87d3cb87f6124155eaaa4ab0b2730a0fd2a02bfd30215e84d86554da21ba45b0cf4d3eb164e6d5096a8c2771a92df90de12cc52494b8de129249120f11925d8fff8e104f9290c85920d649342f473c490b31342dab317926e232fcdabe4295b813b2c879d9dd9624087a7f644b98ba2e4bb538737ee4eeebc06b67429b50d5b3c055ec2db0b8f539778e6518dee097a539b831f7b583f0d8073d76cfc5ca2c264c1c9677fd99d65dfbf3ed7abdc68b8eb34af6d15d98c4264a3be69fc224b840c94b570849739d959a81eb35369c9bf8d0836ceb1eaf62721aa60f39650009f66a54ae9f862cef5e9aca0dbfe320131c3ec223ab916807aecff86bc11c94044161dddc9e433cb628e7c42e25637f3d50f8be0296b66d0dd7fffa1790608bd478f103b2d7b36cbf89df181f9ec30bdf3ef91d489e8598138b80e189ef5e60daf67c05acbfb10890432b2c0790e8201a405ba645fb195ccb4e33b8eb1e294155c5075161c63a79efaa64e5e2a92c5474ce7f8256259164fc9c6498f5f14dc2c7f7fd7c65429807b6cbf070feda07efc3f2a05a9cfbf442a45a4f2828285cd6c6aa8a4029cd5dc5b6ed355ef3433c22236df5c00e9cfc89a965c70871e5fb6f2aa73d2f2dd8404e676072fa0526a7017a06785e22a8c86e7128d5a5a7d9b0984157aa88107a562f2870b0c802c37d90a03e939ca7668575aae5ff3b8cbf904ef612e96420d815ab1d6a7a192489fdcecc31f0eec122c8aab6c387a3e2a159a0772b768cc06be91ffd9ac1eba9856a9668bf50c4f0520835b230b695eb213de4c0e470493d98582fac2904b23d79f9597f5b974c441c70436f7d1c0bf168edc602eb9202c9f26e376361d087ed38b00ffee169638f31c4fdf99c7276df09acc49d4425d9e9f2de1525c01b8926461af990f41b3168c2a4379489ef1ac90dbeb133988327b01d07dd00b2d086586df51b149624333aa41cdda29bbb36aa2905547c7e29d379c8088fb3f986440de1ba8db8178f89fbee4c2c0b4afe99d57ab83453680f253d290b955d5c0dc191b3dca9b5fe97b0541bd8dee3be31bdb0ba97b4ee9397e4e3dbdc624bfca8bba3b8090f7dc4c4b49afe3b727a19010a4203117658631953e014a6d3902998b4d583a5e69872e1d866f9f0a62de8e2a9d3a8b6dce1f39649879565dbf49a6b9cf5092725ce5dade49dfa9f3d888d4d205e0ba1dca0297d980e036e633b0cb8112b4b6dc06ed90c3cbf90ae720a0af7f74579c70febd80767bf897590185df43ffc8e332dbbbc617ce4f341e28fcf3d2da7279d2307c66ec9c9d1f746721366bdc344b77c442fb7decb1254a5b61c8413c98703c6df3f1d59af5cc61362b72baf0e9eea17eb53e566726b05d853500f3cee546325fdf157907924eebecb32aa20add40aaf0c6d0137b70f57c7d25b78ba7f73d88de72f09afad203fb0548bb202fd628360489cebba774a611d9458242f24484224a94ea65c5974dedfd6247fcdbded98f0d8e9ba2537221b83e3d2092621c1d16ce72143d553acee2349ec2b614415b85512b51837c139a0404e6f884f7704fedb584c1a4daaab8e37ac0a98ac61053819e94cd6e483eb36703dc7be8e047bb447e36b0a6ac104843ce5242a8c5beb9721eebda9ab0e5229ed1fc0240da43d4bbf32dcf2cf7b91a5daac8b4263af6798969d1e373c387b027b60cd5b52f292d5a8bac4027f91388cb8f34254cb10c3f807ef64fb4c7c1177adad33b3b40b7d24efbaf3102a18387e24db6dd448b6eb883781e5d351dee95de8e2c9f5e29ea547a0a2a0968c8527c751bac93d868966074e5e61ec3d3e49494fda0292781effcea6ca34456ecf761dde0742a2fbe23f6e87ff9e01123f4ee4226feccff5be36524a595649573a05859bfb6b5a62a1a1ba643984c63ca6cb219e2a232d2477c324c3dfbf1ac6671ffb5a4afce65b25e7640eb1e0fe1529267292898a0fe7af9d7937dbe7da7fe15fb571e6d3d09f0ffc2effab525f958205127151b9624640624f0fe2bde0789915fa360bf499494fccad85a27a11828d348bbabbbb61081ebb0b98e8cfd892030b5a85c023bd62606ceb1008f0426c28395420aebe93d69e576b831a7cdcd597645d9e9c10ee969beeeefc7a35d19891d33bfed40c52f6f153524eba5fb94732912d801d3a95584f23bd3ba9bf73b9213198710dcd37c6c51c6c978e6cdeecb402eb079284095516264240f0dd1e59519162021937773736bc7e95dc13bb95dcf41a2aa1fd48014b5976941f79e712b53494a48702c6384922c376e246dfbd801b75f78b4acef19fd185e389981c9fc5ca541db0acf31447964c4c645c2837f4d61e6c8701d731cddb4fc6bf6dafbeebc8c37a04c423c399fc8bc7d7eac3c4b5efc3b4eafab469d8add9a8a2609f9c38f77529797196bbaf6143d387a4da2d2c269d63d97e13c7fe7e0c18a71cfcefa466f833783f89615a74e841b630baca2928dc049689f2f11d73f9f10fce40d61afd48947a705e13c1b4e9fe82e1e1398f82b57607be6f227ebff749c98b8ab10cb56119ea14d09260e686dd168e89696fb67d7f2c27136e5089a97a88efbdba2dbf23a8f6a4651702c6df9f059ca1e39506d4127d9c9450f929a3d267082ac99abbf04cb99a11959671f70c464c14c918eec8ab835df975d03dca0c13da86c135f121d02b3a00c28c1c182e63a126f1a324c6b7c22141a77093ea3eed2a7a4607c24b83e2e0ff92f2d458545fa5a8e459a3020c7043bb50973f4b9272110f041326fdbaaf558e07b9be3a19e9904d56d76e8fbea71d13d17c3a685c04dabf4f9058521e6cb77226e5b8deb7c2ca3548294b97f0931ebf1b6c8d78b641b2f71664aed2d56d9a42fbf5535306d29e65ef1ba63e3b15d55786ebf60e139d85d41a46d0856ddda30b24f47d8e1b7e7b1d2653f9f87f7f71bd08c364351ecc4141e0b03bff5e8fee90fd8e7836908620816ddec120299227274924838aa8ef4421e7785cf19f2b0cb0fc304a5029283cd4219317a571436e590a06d383ba59519d82a921ac09cb41de34951b7edb54f22a7343a796e217ba147f4f0400614e11600a8cc73aa35995938db4e7febe82a622d522c17e8009307674455b3663f2b00213d4593da2a15384b9d1277bd5b92a385c6c755afa2843d56249434003513d556e57dd7ee71c2dc5a48c83843013b40832aac98d089925648d902e62bd3e576d871afcfd8289ede0ba76eee5892156db644c8c57e3390d36f8663caa434230b16d3026efae67ef4d29a8879c1a07f044a1d17badca0a88c776ecf3abb517d90278623d7510eb2925a797c6c51c04f281b5df2b178e7be57e4ad6915da02819f8ce9d1b47a892bad0ec3939691175eff543c829cb32b9fed7fd87894d7843f7f8612226487233d2182604b7aeff43c4ac75bffeadde30078272fed06c39754d81070f2539dd6e7d48a1b15b801b38a5afb4e56b40d52574915350b8bbbb156783b47bf147fc84876f03590af5ca7b4e0ef49c07ce8c333c8989fd9d1075347e99f1dff96a2ab515e0485d9f4a941f97582e26a84516093e3cdcf8428a64ebfdcf91924b255e28b4ddf789eb2d218a64e1945b25d88709d6d28c4af8ea78297c72b404be482b85c5a72b603726956556192c82022fa414a8f3e22ede1ade12da8599c121fbde6983eaec8007e6ee2eee799f6ec9a951ebe5ea9fc017f794e34e89174e64fad39ae347dfdd9189887b10649a14e757a9cd0272580e493b17acf5d62d95f4dd5694777a25184d8db4104ca0e49dd98d4ab2abe802f04305aca614c49f5eff88319af703e3c59d9990d1cb35af6d9a2cb158a44adbbeffca23624edcf364a9caab6377457b0a3f007863385de114149e415af3d1197421ed3f606c04235f63cac82b25a86a3f25c72efcafcbf9da837816969dadbc9435b7b1f0f6812238596ef3cbbaac7e455619e7c18419cf7bb08155eb7712775ff2351837f27b62c02656ec5315767865affb87c7c44afbe6b0387543547c8ca392d8d19ed10130ae95ebeebda4b6ee8edc3a75acf457f08d20179e3baa94e7fb4dfc29b19e72436f7d0239ace1f4b8e9373005819cb6fd7de5429ac39bb795330faec0ebc8d128561cdea066ef7525811f856f413977c82aaefbe4293007d75c1dae4df8198323ecf2dee5cfcb87377874c2864a73403eb6b580bcfbbef378f8f90242da71a3ef694b5737058506243571ee6c30051ea123f10704d5b1676536b2d49c524ffe5c242c04cfefc987f4f2c6310dcf3f5d01f34e96fbac2be8d50a426017e2b9597ad6fd647fb7778a8407ba45ab756b7d09a28ce0cece916e25e34acca985dc5a8757b2233398a04a17cf6e55eafc27e12237eaaece4c44dcfdd47afa5b898d655b7df57279e78fabbc7d6b3969d171a828d8079cc1fbcfadc817e4e4c507e802f06f10176d5472e1393006429327a924a9d7a93d6f491be66815a379d2b72ca8aae2c730a6c0117465535068201fd312ebe4addf3e0dc6001b1d8dcb1054b9bac421e59dddc1f0ae2b21c4fdb3b05e849989395050e75da5722b56f69fdb9d7fa9b629850f2db2861ab3afec2d840b35eeaf8b5786c641cf98003509964f905305419b50134cebec9e7befdaf3d56afd546f2c57240ab5f69d0b53fc65cd3051f1c08fbee729e4b08451ebe96fc62538a2405cfdfe73de8a3dfddd1a2acb05a5386b11b1c67bf7a4c24062749250696e055d01fe0d545701c29c99dfa0f2fc4f9cd6c0264a52c9218ec3b652fce19977d05f94bbb9e2b1bb78ea104822f22979e8b002d7e7da81a44e35050585067ae5b237f728d9c75e868010ff918f0c53080c9ba33b4125298fc533a9bb3083775d8082b37ee6f1521b4cdb988dc988773cd0365fa881995b73a05e90c148d9a94f821c5ee4d639e0853df96ebbe9c6061ae0bd112df11cb320fb80af2f891d9dd629025a06bb7e9873b6d2ae9697f146c91e557eb0cc7ec55a97eb370bc65a0b58482761219d432c111444b8868bf2fe357fc32da7b1ba20252fd90a2c5be4d59b1acda05c485b832c34fcb44990d4d21c4c521ffc072abbb8a4499254e2e56030ee1757bfff375459a8d9c3c927769e07594cf3a9f33a121b1b18da0bbfa3817465535068b4cfae78fb63a82dffdea9fbf8b87cc4325cc93bf3a9727a77aa2c5a73741c5e178cddd876b2b16d35e6c6b66dbb7163dbb61adbb6ddb871637d6d7fdffd332777efec7b3373e79db3bc9d73ec41d210869a1f7a0eabb74b893c100c9cfbf3520d27f29ace7a53ca1554925d0bde4c38358ea3c8d732ba38eb3e0da1d85c1ace355a72653f19865b6143475e0685f81def6d07cde34d20a6c010ae0d662c5a738c3d258a7183c7833e7c4da30389b364d728b0721e892896d5e0fb396319b17afc5c8869b8ee98292bdc546f3abcc600d4619c7c1493de5ec1979a8a9fb2447232748ad304db05f712bfa9bed2928fc9e674ba1f0ae459489363c03a9b09848c33d680a9382c90948b49e04c511589332a243ed22d2defdb57361764cc4f15e9a4290472ba1d7f938f29adcc081229f4e5388680c99d79e16d58b603110db81aff4a7a859f826eb9d44144dc312486ca7526af186abc6175f87236156eb8b51c25ca24355583b27b94dbb8db153cd43e84d882c051216516be07ccc79f2dcdf45aed67bd9e0e34e2d23bf2d32d3e861aeabbc6ec530c5b011af347a92aef7e6788b702a352173e1ba81916cb1eccf12aed9144755ee07cca4ec2b421265a57bcf4f05f6775badd0fcc1bad4cef55bcb122ab4020290de3785379bafcec2625648899a0bbb61ae76d5eb5ae77c0872eabb080a6192bb9ec928b2dd20a9d31db0e933a2365e2044d883c443546e0a261f0f26c6832b7cc393a302d07f57c5488ea3378a81659a6b33628d8879ec59013ce0748610cce986fc12f67544f831bee24c66a104d6061f5b0888ec9830f1bccbffdfcd50081c16a88fcdd46ca44f6d2db362e1fa1d7440c88ee616b0f2aab919ebf4cd56c8d2fb8fa272121b9c4aac182875e0d044869b6c985f8531c076f4d35309348600ae013201952aac580df734856affc2006e75be71dae9ea99da9f8162ddd71f6f00b435c31413974f1cf3d5c14c443f48a306ddd5c2e6a1717851e608baf874016bab023ab52524f3210697dd6313d96afbd605e773b8d96573e3223384fe2e1518a6e86c95fe8c59e957bdba3519473ec35e22ce4d33d8ac22080e7ca80b914af7f07042c526ed3d0f9380655817377fdbebcd0f4c28d5d23ddfdd27df7a43132309845295d90379b53b4fc870b195029674bdd12caf576ca9444db6c72020d9a9c2b9d824d23d2dc546e41a4183c07049bad5b06df2bccb8f8d5ac425f39cc8d0b32607309e903ef54dda64687c8d2a89b10d92b4cd2d601be3d2858d7456f5a4fd779aff936e099d07dcee099c1ba095ddbfe78ddc7ef5b85c4249baee7e5d1c8747c2a81f74c57bf9399d385f91a3995183aa89f3bea248634d3cabadb473e2e17a594e70b98896568d3762579b1a3fd2a563fd24d8e026063da88897404359f2ecbafae1b5fa64bd2730d5518b2342a3b321973544c6a1993626de54a2aa45528cbdb1a8ca7abfcf3ab0a17fa0c2aa0721e73a70fd8a5f9f0679f0b73b9b67bde29b94dd36b52fc4c2ac1b93dc73a640d56c57371c0c3305673567e1b1d74ccaefba1a3af272e6a194e5775f42adf01d04ec029c2b2dba510294b1243ed891496ee76df9020230f764ba48b1b3cc8ead66d30c971102250f8958d541b2fbeebb86152564f8750b9eb85ccc426f78f4fd270299a389efbe4d1539622dd472f6ff2c8e4134966afcf5c775e4dd73abfe22a3c4485e2ad878a66e779d0db8710932d553fce6d4f6dbebc3d6c6aadea6b5c65af9756800d453a5d9637cb49e7d34f53622ea18f84b9cba261f2094ab679787118c331188189f45d555720c09f39877fa7e88ffdc427797bfa85c88e12c1086a2f39fffd2ad5d8d076c59b4ccc156343f103e76c7b6351ca6a0cd2a1d3fddce7f438f66b103565651851b7df895883a6f31f038ed06de5e9f638b13c7c33ac35094d6a999a4a6e99f21ef676dc5567092cc38208692aa64d0f12814ec8f05676f07159f994024c5c1a8b148c6713a2c718c8b16744d825904ffadb65315d1141fbbb3bc8a3f290d8befe1ed16a200f70707a9c29f22b489120601d1142569bbe200dea7abebf76d502f06566412f70ea079cab990929e778871ce6e730cf92d180e8abe74b480b5af0a909d00521cc501c5732a75f06fc80efe1a421d482c0e915de0ced9ab51751243adf40d80fda72ae7fb9146bd3e25da285021263529fdbbd5e1e966616296bc781fe319bc47ee8d64f95a7871b420dc7ccef87cb1c94d4fd8850683fb426da1c2300c111963024a62387a2e7f6a802d97eb1599d45c8101d0a6eea6d0e6f74abe7ee67dcc3d1dcd84903991cf1abbc9195e0f329f6f304f67afef46aa33946b2c2c502e2fd0c96727cdc62a8d72f9f12599f9bc87ff459d9a776bcc4104ebbad174103ff196a9a8d140d0d2deb6002c3793b0dd11e04a07699770f875eebc7c282dde16787584aaa360c22ed2a3d708022bdab7aeab68771febc82e2b634e4184371928268ba04b5899de3bb29b94614a6c81c7a26eba8bbe62e8d9235166a260dc5e65e6ab71a1c5c0a923a57b7bc34f58881dbdd4b0f9c52058b45d69dfc0061b9fa2a5d7d7db528d25a3b47318f508b649d9f923de7bd2ef5bed437156ca0a6f068a42025714ed0d6bc4d4b1f9ccc7bda3fd62ced6ab9e046af881e176b533128bde133d2a142153eb17316dcf0fd031edd12090ddb6aa4baafe1cc1a13a724300d0a7ce0262dcd2eedf0e9643abfdf5da16600aeddde3ee5d093b8f44a6b382dd805171733aeb945635a724b8ae250b5245c1533e2cf8df853fadc69082639bfa1750e5bf90495550cb289815a4ff138be5391fdaad57fe47cde6d2f90388d3a01d9db18114c42aa7e15dca41a7b5d3693682e611236bcd750d225a9fe3449683a0bde72b957563c293f1f252ead19473d9acca229a6cbee679af4bb37d0a6a8e0190511910517352963d024abf1b0fe711073aeaf2e7f55af6bd7333c5574b3752878bfe38abf6df3258dcb19122bf59a14f59ed6f67aa22e01b762c3c98a84bb1651a215cef199c7dd3522080347d54a17887a2cb9f74abcfcbb8d6a62f1b9bb3cd8fbe37ec15bac32e591c29c76e9d75cfb28a4d1bd298e87a164d606c45d9471b10106063ba5b6ff7b2028390fcd05efd127c2c999a32f153b66f1a03deb4fdd3bc190ba93b5cdd90d5e83433730418b5b6c1838a2f1b4a0fd707718545bf9b1838b852a28f104f2cfbe4c397ed4aa88f93d39f83fd9d4aeaf68714fc1b8da047f1526d89e12d650cb5201ea9a57593dbecc8488be54f9d60a38f8e70aed0071b1f6de19e7be17f897ebe9488eb0be9743e4cc846be74b9f8f984864a6edd7bee74aaa735acc371b8c873fc5cbcb5a6ebaa695ec780043f7e57b979c0a7785972f6063465fb71a7c2a9de04145a5f5eab2420e9741298c3f7129ee76699e7bd7f1814a422b7490a1addbef0577c41f4fb55f9cf637e93743c2ec765fa2bd6126ca6f7af1a62a7c5cd46bdb8a722150fb352b930e6b121330fd29ae745b90343f2765200c192244d8fd643772a1d38cc4a7739a4ce4667fbbe7802a319df29f0c56489f69a38a6f1304490b7caed761d6d5d611e22714a0c2c1ed40a59326d09d17f33f33e5792237b92cb83e54c7df38fc1804e3660f625873a42fa8328beaeed64dd3cea5aa6fc964048ae6f559d7970e82354b4df225b9b3d7d0ca4e838effa1f43b55bac689d97866f753d6c5ac60d005733b23da9c0fc4862fd09f6ec72b88b9ee8b035f254d276276052772bebd551d1b0fdda0ee6e808f856f4182ab0bda8757bc899cfde47ac9a5884053be088ee3c88cecf965acf596fffe36addda71ffcea19de15e8174a28b020e146704254066338161ecb583d44a2417640b8ea6bb5aa11bd93c80c0e2ed50fed1458a5a914855f1e81e7de5bd0362b86896d7ac6f6c101b3731e7efd8bee6a2a0d91c0ca40abfae49b8294625127af79adc3fe9be4db1c53eeb296c9e36dd19bd295d6b1d715440e81b7d34464dc3b26ca387a36e766b2c80aadf3592d783a6f0d81c406d1b6b816f9ed8e5b8406e084ddd608fa6810f720f7b45680ce84c13c673573d4238c3353e56920a5bdc98dc045bb8801c2ee6ec2926c143722e98a0be31a02805e6458bfd29084f97b8990afe9171c673435b618ca0b93af4230856b5e6ea0d28625457fc2487613a905c18abb8879cb411ede9a9ef1c801f3afd815f5c5e27be9ed85890be30a3b5498d4c910446b948f2d613ae7d6fd479fe0ac063ea4f378f5790c546be4c29b03cd0f2725692c05a26102d93e11ab2cce04570823ee3a8a52a8967d8efaea73933cfb46218f2a05560fda6664113975f52e31ffd0086392c2f1fc8445a25afbe365f6fdfa4e4f6f31becd568076b39b952787f0befc4648c66e689fa39dfe8160980c106bcf80f1d473d076b1dbfaa681169d412eab9a54a8452b4ee1b2a2df966a3bda9dc5700a1bf9c270334e5b8ba51eb6ab9ee96aec1e6707c55eaffa063ac3d87305df9e0baad55d4f6a905355fafa9e21c860224545bd34d0402139012b1bccdb17b28201521f8077f01165087ef8962fd6edfb39129f02918c5fb37a269dfcabe922e6d9437a79ce0a6079b3f2c41d71b4d74639700305d4cea9ad5cd31bcea2719d9260824e313e94818fe20bc6c0961813f4ee565ac9200ffac3be641f8f011100b9154ae66c2dc5867bbf64cb449da3aca489fd5b8debf095c3e85578c9d6c3c83188095c388b6c42cc1b0b41c12ec8f70931532c05c031e2957072e8c6e1a2ea5a59b7f48b6d67f2d5182764d2af42d5efad765ec196cb47f07efb03adf5fc123b419fe6c88489fa5b09400a8cf788847587de7cc990ac5443112f35ee16fa2f6be78fa3d0cb2505f3592226e54a7cfca389b136029326a5ef0187b91cc1566c78373ec5673c83c9e2c97fb6b17d3d0295b52cbc78da88b7ac804685ae3c4b5e1155a911370b9258180721275422ec61eeda554af4249703b6b5f6ce5e1730732a9a334dc9d32fb2e62a6ac02cfeb1fa0d6ae280e94dc08235b5a4571a98b5c42502768e32aafc4579fc1661b5f54c9492cb8963c3d784b5e53c9cc123e677df6d3e3865b5a3ac8318f6918359031a4a44e4a3266f4eab55a7fecf036b937d77c12fb537b27457348bc15c580f2e94ddcece6fb5cb39c025f5a261e8298f4fbd85383c2cd230f7e11d521aa61657189bcee6446db142b5b8bd6fc9c7bb0ef543de98b470331c209be1afe72b68ebbdd1847376fac79f6e477d5823d28bab66313f62b48c1f33616d0dbd62a95b6bea993b704baa27c0c02782d4a35fc86be6b0e3d43eb71682430632c5dbdb6bc2f94016aaaa2b2e0df209fbdcb0b187efb3b16320b9b893c38762a8bd7e0ed21509f7e2e1a1631490234bc9cbfa0e12342378a89427b5172063e4540e66fa53d40f22af1c9460e3dbffb86f1b798ef0cf14450469ca8207aad78fdeac87bcfab04ba187da0744d8892f474544845b4fc7b6971250aaebde78a7044468d2b61c9fc0545d43ede5fa2b8d03712b38b60dc48f63d5f2e63751df7c31297bcd07b305f57ac59a907fddab01557ff504f7e3ddfc18643540b4b3c4e6edc2aaf3119ce4ed30985f47a09d27d13064af9066c7814e710d98528e954262fea23f784b233ac6e7212d90a301321cc022369e1881d83e4b4dfda6293fdc04c5ee482e2286d820bf15aa346a889e1248e80d8b93abe7c0b9e179622497485e6f338e513e31bc7d401a94fb760963767ad1c99c261643b64c6924d7d12853a4bd42cc90cc592d50bb9c5d54d3fd016a544e3e56d322778e904dba79474d851358ab9d0e3b325155c1bead1237f0dd329bcc70cce411157dfd8655b79554859efea07a00d5dca9a8c9dc5af0c7716125e023a97f22534f11023b57bb3e2d22ba437b81a73ad090d836cb39b6c9ed0195671cfd12c0895f47cf8b763b6e501cfdf945387951421a3bf910aca2b65d6b5bedd8033b7a506ec9414aca141b054db108dd64965d5458788fc7832c2d47b321ce72e14e0f999d47912343983bf36501e3393bca5ca5f2675074ee8fb4654652c6ac12e62ff37785a2430ea222d821ed865ff03088c03eb157f1f576d4410c25cecece9188eb0b43ef49f93293a069edad6a53e21d3150cc1005b009905aabf89112f6d7f64274d5f274d360b709d7e62face92419d58d0b823b31bda57f33b7f5775f8c602465299fb42f1a6d8833c5d37fb394968fe8c837a0156da3b27cd0837bcc1fcdfb59bed43cead9ba3a5b6344ac08375d41062e5f8b04f7a762fbbe642d669dcefab369580b35caf693776bd515ebc62f47e3abd55de9701135ae6bd963845150587c4fd5da8b2a2cfee3b66b81f54cddaed48bf040a5c7587af44584d6cc864ac3efd077f2a836effa9f1a4ba6691eaaa8b43ce5fcd256c5eb14e2b63fbd6f3b046914c82a9bc5703cdc4d3aa595b784fdb2413eb9950b506d6bd7ae23bc4d544f59f69ebeebb41750bbe85a0dd8e3053c86b4645cc27abc8bb8dec83f3f7d37e2e947ff5beabc4fe79fcb81449f06acb98be0129b8eac9246b4d5139b796709e0ea36cb280fb513494ef2ef93d766a502fba198bdf556123b0b879743dda809af63abcbb3a4ab2041219dcbf6eb9bf60876667c5757178c41034397af8d82bc65dc3ac11156cdaa606494e18e1e5f5c1038855bcb409a5dfb7712a3fb8a4ca2c5e3f2a74982c16b51d8cbf12e45f93f9ee704a6765ba62fb144a822e2a7d5d7fbc4aa7e6ce30a8ae68972b5f87697a8d1c3457e82a1a123da88ec94678c84e34e92478c43d993ff2cccfb5bd7964e3c7bf9976f8bc7ee770b7a1ff178cefe718cf731176cd44931b68f2188aa30703f7d2b596ab89ad9caab0bd1b33fa1f67977c00b06683f2207f91bd1d1a2fd4b31fb145436a3407fe19a7e43aa8d08c3c974629bb994ce470a1faa87421bf4a73cec7b2927d894f6100b3fceb2dee8ed7ef33a41b1fda6962f11ce82d73bc88b0512e15edd20a3a8c8d8df46c3fb8bb649687e488b4bff1084b6fbf14788a287af187c6baea1821fc15b9adee516b9eea0979676f75c7ce713b1ae387a3bea621a07b3ac4d3ff99491fc625402428153b913892dd6bfdf58c245566665b9edd97bfb7d59b53ab886c231ff71b754ec91daa9bfde9c77137cac8988e0def5810ef1d575a1498c680e5cec95847c354a77feedf0b6936f61561bcab87d7dceda24d47817d846b01e9699f75536407be5849020cf0c4a7ebc52552643f14920da637b461de53035b0de76b3f2130fad57b46755281c89b982fcb1f5a60cff4300fbf3bb869af7eebdf059e6f60e3faed71e3b6680d4e1f980b6482572a1f623c5e50092fd54209dac5b57eb36321328c9ee6ad76fd8bddd6ff02e904a2734a9f6be7b2494dd13041929e3cc692018267618a93deca9df9920ffd490aaacfcc65d6b571de2afe5e969389070fc5d3723efd81e28baa531e9cb3169fb501dbdef62b897bede6c1bae839cc41a9e72b5b670e41443db292a29d90e117905192cbbda2e65fb5aee1dd09ef5757c1124b2b4cdfdb6d964aaca7b8812cd7081bf9d3233b692e388e076a0d34b828730b167f924f9f3aea10097b818209ceed101abc48f510cfe3e3fb0fd2c10cecb9bddc25c6facede33234d0d1db6db38c2fa3f687a79e10c5be16b55863f73827435e8d7bab67e515ca0aff29c7e48485966f1b7a1a486e32ad3b141dc0c48ad11b9dabfa851f7ac64ec98952a5373b1e99d9417b1feeedd785577aa00f2fd853b5d378b743a18cfcb156d2f40cd6b32d839eda71bbab90db32af0566eefcea9661ea2a709bdd508e78ef363a78275878459433f9d7e04191c79324b4d73e4e84491aef64b007f146b43e3e65831361c430d82ac430d02bbe94895e99e8e85eb67224f1bdb199373c4cb2ded50af6382a42e5596f2a2c04a6ffb129316bdacaf6c7fb506efcd6fc7b4332f6f555dc00e644cb45d7e4d360e7b3ce0eec4d8576556ac098a5bedfe2d6b90b80d78a295039ab5904300550e20e98a87090c371a0e701de5577ecc0263c4a06079aee694440f248a46db9dd53d8e5046b43f40ddfb12b5ec4059897512cad082362322cc329328e3295fbfe50784cfef130bdea033aadb6ba24a6b06d7c0b2594b26e72bebfa257b4ac12d963168430f1250d1f92dd544ddd48327d579249e0fe40c546274c5d981876922d29970e4951bd4d54faed080fa82e7c1c1ef4a7f669c84a919a99363fe6b54c6aaf5e534dc128a00742861e8ea0b73c18376cc99196d717cab8264ad477d252747b1d46681f6f07ec74a3abd8ab5dda2200797adb4fcf85e36da2a6762840b0e282dd2cc751b9425061edab53e0f43c515824bd83ca080c0c67dbf1998c0ea794ec59bbf3d2ae22b24352d10ba894e99e45842a7f16b1f371a5075533cc51696ac7c5b74b4264a6230364e514410a7c1d85ca6a159d402653cd85c49daba3af5b9e8c9c67d316c3d8c87ff3429f9a3af4c3cbc4dd08c340064ea9ff35c746cbb1f5a8de88c5a5b0a8bc3c3ccb4e728b8f6f963cf27f2a9190cfc4b1f37724a02c05cf3a24ff70221b3191ed1f9444302ad08a3e86966fcb3ce7e043f76f413629473da3655fcf9ceafdd2d696eb78f48bf147483723a9b66d9e00b8010430e13df8c7ef2922bf31b85f2d2928bf77bf726243cb6d8777fefad4a11d75902985d1f032f68ea5cb13cc2e0f086bfdc935125af270ef897c6ee2130eda227ffecb4d5799bf9ebe14caee935b660afd42f54a0f33d1b0afbbeb2198b74655daf254259296bcacd66ed248cbcd4aa6d3007b3bfcfa48f13bdc0c465efbad4d6749c38d3e0a2ba561a507ab48d7aa1aff30d9b788a54da7177830d1a8c13605a404a4aaa95234b17fca5a8a5b8840e264dd94d8f43affa683c3ddb5d93d5d06dd15cd5c47a88a499e3f9f85e134dee02bbd9d4e47f1592573c325eb005167eb2dee004e156bb471ef191071ee01eea421db9ec2c8069d6ae8c423bbcdfef956ece8f8a8f5402068c782f8c30f4dcdcdee4946a5e91bb15dbb354be5ae2074d4dedadf47d0714d8d922215f5f5cf071d69e577107244ee8e75d0cfcd74685a3b3ba42a24cd6e193ad237f0c709068095275eadd3171562ae871a8fdc0415b854123821799af813624615849091e13f09e25587a1055d0ad13c088a7fb4bc0f81fad8a4c0c7838ca2f4bf158cc61dc3bcf9d24f6332f073118d41fcc1bc0f51b20e3298db8465a166c744f438bfb9ac9d4d654cd0195b367084c9903f36b2913680731105370c0fc065d74bc471d0c59f847727e44cc9d5098d86cc126dbbe00c821a9a5244c9ddb07cc207232134a47935565e39fd79b972a9a7302d07edbddff93885662e278698b9e2831be1851e2ed5bb512e6ed55fe8682bbad5bd3cd0650c54be99d1f5fc4b711840359ac9d2d2867a49a4499a9fd5883897ae611813d9f956d10e1d7459b753b3ef71ff858baba247779af86c93cd2486bd3c1ff5b3f931fb781780fa6fe1866549dcb676d721ac9d7fb5303fb176781ffa12d1a2c8048960c08b44208498b31622f0f3734c423b2ab330300f95301c9626c488e5eca713394a62eb6d7add197de260dbe7e39a7f18b627b067b8fbf97ceb9bde01961373758977e32f04c78b6643a3e7c1169d55b66ab4a6fbdec3bbb18f7ae203d71b1fe51cdc7819a98ad8b3e934986f38dc1ed6c0ce0cae31f5ebbd40230dcf16e5e65f648ca94546d1a06a233987f6b4a658a760f9d70a7574db92741b3f2f9c1f67fbfe258b1f34a3a769afa208eedd2d504baad1f3aa9e40266855516786c045c5e8db6447e2b5d7e2297dfefc9fd91f449f86b16f28f10370df7f8a5f05f7010f2fc2486b928e2bf0afb928cb7352623cbd0ce87c984a30c2e194f142affa28497f7468a32344c2dfa60ba0a8dfb5aac02f7995ea954e0e7a5955e75aefdc1c28b5f350bf610e0bc5c5dabc2802468b8c85ffa94255688c7f2c3fd22758ebf3b50282b4be4672bdf18dd971eaeb69aaaa337f57a8f1d578a3d358a8024ef0da792c968d89a18c1b7d67d3c6dd6c7129d460bff98176a598681c40ea9e02f9dcd20404a9d16be409d823c0a5888058eec822cc0aa59263ba074f44931cea12a8f844859d32d8cb90d8e2d71a8308f59f0d892a36c6aac2e70afad00edc7e9574220ba88c70df35678704a5e978aa6af2dd1e177ca19d616d9704d3f0f3786015479d47398feebb33235bae648c4dee2f0d93e1f34b0a7b650bbeaab1870785da1789eefca06bd2edd6bcd1d159e081f01a7e528bc099a782f5f4cf8ec3d29ee479e9f6f08196a311ddeb795bc4d72165f0bc570566894307ff73fe33d272ac85a89050c6cd68ab092454fb82cae0228eb885b3044efc5cf9dc98c8e9603f080cd1696e258a125befc445e3df1c925ca411523ea60aa055d3bf37179ea66b94ae17622e4838d21e575dd344128bab526cd31705268f5fdc8c471cd81f162bf5f610e047edd6ce573fde5bad6c402143058316f9a7561f337c2cc0ef2f8aff71040ea702e1b63bf9793f355636f0659cc000c1e2857c091f4251f736e17a2d7ae5333acb4a4211169f17ab4a68a99836e0b0cbce884c2a911ca7cf58dbd950412f7b64c6c976834983b3b9d0aabed2797431642d5c6ef80ed7f6c81058899ceb3df3c2061f826848894c3e647dd0971664f2f5b6407df080d7625c05ee13626c9d4a063e3494d10f3c28e63bf4bf4b5a9a5061cca1c1389aec843dabc4e491b2428338b28c06cc068edf12a21ef13d21d2f03dae5404a93da6309604db5efc52c73616723566c2215bf6a4b9209d5cf500fdf340e1f7cbd94ef3b1f9518d267b8a8ce81a0401576053cf9c51441d876c17f2845c38d3654faea4de6ad1884b769e7cb3eba1ac7644fbf5765f1758a4f244cfcd8efd2835b1ed833ab7def5cfe8d0438ab442b81b0903321a8e7bd1a9c1d892234907232d4060e0665238fcd9fb6e865d9d6bd900a495a69c21c1e7ac3ffb27fd8d53362d42485a97411f6b66be5559758cac44c173f4ce67ae0f34061f08c561b07ba2d28b1ce84ac205d5cc810a687f949a370a096d97318acae76a700cb4dc6eb52aba0274b1d1fda4e5e54ef70b52af529453d41740f3ff09fb29b4a884ec156fc597f8ea694f0b0686fb62f2fafc98a127708f7cdb25a2e967b2e1fe0cd115d4cdb84c8295b4a254beeb4664eb317198e957d11bd55ab2d5defe7427bccd67674c9daafb4e8e4a9cc4edc71a4bc83b2a0aa190f4601edcd433d5b890f16e0bfe77485b11393d1422729916978febbbfe3e570a1755c52700373f098397656456435686fc7f46f981d7e285acde954bd7c9e90a510178c746e3ebf844513562674fe0175411683974dbbbd37c94e43deaa8ea68d07297e1c9a4891c69e11f4803b3c6b3d4201e1ced8f278597d5f646843b8794abf1feda4abdea668e85bd450361f58b65b449af2295125d3824fd71ed521ceac41f7960178b40b3a2a7f5e3a9b639e0a4bdf0ba120b7b310db7d0b3b4e9a438222deb6896f9ff07054ecd021055a1e8743f679d3f7bfc9adf3e2e878c7e49eedb2d0b941a13df17c643570a8a6cd4c7dceef18d7bba2fa4558af74e7f719dab195219a3f846682cce51f00c11874b951a956ebc27d20cfe70b4341012c204c3eaf951c61c08f5030d4d15135b92be2940577911a11ffda52f70c4c36904061b1beb67e27b8706596f50e2a1c1bec6bb9ec7375e73fdf7bdf7f936d17b1771458bba126cbfdffc0accc27b7bed664194aef2e0a2a0c987bea4d53ee6259dee14aee7c5ff39382a0c87e234110310b15a1bec5eb55c56274c8392af859e3814521c2c3742e5506e3ad822c42929eb8068a203538094dedf1a8d66c2d5c3083837f2168cae58118574db358c049272b18aad46e4f45504b7c10adfca6cc7d1b69f98a5d759063f22147f8112fddb4858ef180badc9c1f99d068a31b5c2524c9ebc2c4c581f7d906f83ff71e5afba6b2024b62b49194c5a1e93f838df7580ed21efc88955de3552d05995f3377b673d79191fa1b7db786ee965a50844bebf3a860cad8cac4b465ea23bdc6d1f4a2bb31b10c3a88f77bc79f20f02dee6b3899c90d41f39f13181f66102331ab5c7f8ae2b9a7e1e9a177d714675d43f6f1e9dada5ad6641485b647638a21a1bd5425bb168c7b6730d02d32d9cba5e90bbc8378f7683cdb22260f1f1c88311105406734584048ba1932b28621ec5eee1aea0e864e92c5678b05f3b95fe61bde5d94c58f1c0188793d4a942a4ddfdf1ca5a5693c000051713423a91a1b79536c466bd81492edc719ec0a5b299d65bc7222b7b2c2938f3011ce3d69481cefa6bd6412285f47c05dc7f121afbf13759828161f7b6e408396cb8c84dfc08b7d2e2107c3e6bcf27d9f1b0866919d669162e0ce9beb5016299cc9f8baa11b7dbc9e6f1d5f277c78bec3f146437dce4f9ba2f70ba37ca2888d7f14c49fd23a4a6caea06e82ba7fb6213d10cc43a39d8d945e5f0dfbc817cb2a7d8a0b597d36117dccd420896665d9bfcb522c848676f3c7de6afa9779fbfb6605d9696b2a1af77fcbdbd1fe262ea28c18202e276d5c4141db02a4b530a5d698c7415cd8773162c79f959ddf830eb97cf807d22d9c2b6324bcb294a36ca58e84a1055010d57b09ac4deb709ad1fadbc8f1ffa41cb64b6967a09a93f5fb98f5f445077bcdb3efdb70577dcafdeb7a63d763a0124150f15eb4727edb97ce10e70637e9a499da7b609544ccb6d65e1380c0f825cbd6b68d25b7ec322b65f35642eee8e8ed47358053d9ec98798c808404088cbb1ae1fa01ad6f170abb2edbba9211bf4924a7512289ee7cd01a99bca1293020ad2339994a647c7d77134fddf277fa7b136decbd69c173095de098e4987372fb53628be127eb8f78f0c0f376f0008d70c2fd67b6b6ff6babfecfb12323544515f139de71ec1bef9291dbaf76e3beed25badcbf765abaa7f2fae951f95b6c36ec5a9de5a908eb5e5957ad52e9c4ee1d4c85df736cabef21407f57a4c9102b42d4d56d71214a73eb4c6ebcb1c65a21a59d9ab79db6c193b1fd8bf19614d83493e54e6ebb899d6e86809e8733f463ebf81b9d467b13ab1095ef14d874ece7fbe140ba748393d0f564ff368576a7c1d80723e6f97767319817a1d1d51facd0802222488668fbd8129655c6ae93436a964727630d6129554bb99c468faf330ded4ecf60a756a2a73796bb06361bf80b1664bb7c8c2b6ead923b1f9e213576a493eee8cc78ee8a9eedb12d1bcf7658fa0b376eec274d7e695ee5b62abc757ddd55cc1cd5414eff4c8dda7d14ea3f61e3ac1d3c71d54f6d3f48b98262ff34615e1d5521a3e8dbdc723a249cb45538da4f3058be304670b938c14650585ce3de6d7d4574b05e7c1b5efd4967b8b68c4e7837b437ba5983dbd22d8fca1029d6937320149ba27ca66ba2ad2f5d7269eeba60787732a91cfa1f4b1feccc19cf68fe2b23a9d224565535585f5d3ebed97306dbeb9ebaf1c442d956e43cfaaf0efb020207156622885ac80243209eda9c0dcb6557b5165adb52515df56fe074ad67d48f02ed56f96ac54651fce9e02fc2cad5c117bfbac0541d72a449cf351dedae500a3382ce17b59a77256271af9c4bbc8b7dfbd5560ed8eca9800805a8495b56f788dc7297104415802c78f4a2b134e7c6f9a86b31cff66deba43c0ef3bc8be432974c1a75fec5a97766afbea2a4e25e08d1e10d990202020be22a7b5d00d78b1ece50766f8ea70332f3ce98eb8a3b7a32c483c700ae8572bdf2ccc8d438ea2e59d97132913d3a47d0e9f10dafd4430c7deeabfb78c94d39b5112e251f82be0c9927d9b022772ae7860c8d49615cce18c2c397ccdf29361af74e398db50cd1ef30e1605062f6f5e49a831766dd955892ca99cf8630a5e447bec6f2d881977aee5be67fadb82a45afd4104026685ba00fdc96bfec8fb9ae4b8909ec069967317360be2f490a84abebe815a1c59289cc1d32f63ccba29e59f856f4f5a1689d21b50a228572a2f879248b74d6424475150813d87d9b7482a9772dac07cda9415361fc60828c1e14bab00b47f6f65b79a7fdc2e2f96ff68f556ce29a48efc090b1cd2f3ddb71e9e16643fa8fa0b01046251408194a75ef195b2fa6d3d82af3ec75942b5f8257c95b699d96696167a7dac509aad926996aad0d548ec7ebefed4e5eea70d158cfb205dc5a1217bff42ba079b691a0610b5b0c8e88bf9a451d2f182c5dc4f7c2fa30f8b974bc85017b71a4ed360cb58f68e8c53756fadd1d4aa7d493b7bea8ff544ce911d2fccd76cb03f087aebd8890142bc572f74579c295dd3740705818452172415d791aeb1fa9949720ad344a243a73502be9d5c486644cbae7fa25af5ef877ac48a53b62c25dd54d22f6b673d46d525766b9db563b06e879002edf18f8f31688d9640a247779625f75397d3f57720c162b6d2d3b621791bf81fce7491bd2d885bd7b520fd3d01644568caa2ef77db6fd75084ca23c5fd9256a434c8a12e51d22cfcbf13272416bea035be1c3ae2894075a91214ed105994c6ca879c984852a513e1ca4935f5e1ab0f01cd94e2a4d14b50add967a66fe6836e4e5d06426c323477ddc19e0d9c3f732b2c0f1f24a4cfefdb0fc586f43aca5ff64667aefc66edca876851ffce27ce43445f298e62fcedf3de27bdbc94200c401fd837522a229f4bb0243bc9e72603ccecf86f6402dd4f9aca5b1269bebbcc3e7c6322401a1eab433d571d623370cc1c07af7a2be73104b265b6dad44aa339f1b99ca6b9b437902fc0168f6db136f9bf9bd9d36e7dbc28992775b4aaf40d498cbac94c39c7ab3ed20973fd550608f62e90fa797eccfdb12254da72cd5e93fc44be388ea6a4f09b6b14e5a1d7697c5be18b2ddbfddde0031b2f1ee96f61db5434add8e69172804d9c1d8b7292980106781c29f5bdbb856992c657aba88b040dd2b84805332f74dcf4a382d367bf8c11d1f2554ab35b620d959747649506fbb77743f37787daaf7e18c9ee594a287e6fe79c6b724b692bf07fc10801e26028ec713daf349bc5e801fe29e2c12cc5ab216af56ac01f96ca2dac195a09873875c7ca04d10b3947d41776915c8595d0da468ba8acd4a3e02ac0d6ec9ac41e642d717be92d32df88d84fb7eb22b165f2e52eac02b9085b942117dd094cef27960f2eb153c26496adc846bdc74d3ea229eaeb85241481ed4ef4d96fcb25b5fe023825e2fe5cb2aeba5e57adc9281b631e0b2d839f4f8da13791c9f41e387f390b22191f70c607ab10e023a32e9817cde89d20dea15c9328260b7f07a2915632077e8c31cbcf7a079862bf06950d39ae78e0528534062ee5df613a9740ac40a169af85d3b41550c73f09147a13941d46bb342ce0c38cc1d61935a9a89838dd68a7d2708706cceb46c4cfcde1d895c2ddfc90c58a9972510120fd7ae786f4227e3bb580de525512a712857af6e032ed422aedf0e0eae2d16b6b206414fe276b00a6623615a984f295de7d9e16cb5dbe98a45c17209f3fd96f02fefdf73b7cd4c937a935401b2130da45e28b043dcac05a6d23bd99b2fa660103614376b5ae07da82d3175694660f4c5791f228ffddbda99901775ca4221cc2a1b51155b67a39f90a4c1bd48d7b0f4f87c9fb72a92e7da5cdd308db2f4d6f035edbe6558f18de437820dbbfc9b6f67e33e9f9fd03a4cc96472962c5f37ce96596aeacfc008e2933154723e6a9111f3e177483f3db1e0b7d7e93f9942b114a080f69a7d28d6d8e75030f901a76f2d9e941eeeb6a8409905a1d79e8ca90f73a7947fbade75ada286857fb58eeda6fa9a5fa16aba03b31702a80cfff7750003a52d934daad69dce374f284a7e4bb4054a872cbc120dd5ab865e2d7788bbd103af3b32b483270aec21761efc922fd0bbbfce48dcc134599a4cd8c5fb2ba98547759cca72e23bf515c5c2d294db3f63898f663c2dc2b839bccd45955094ff3b83e5b3971ac2dc5b9ee8b96066973f4cad46b9ed0bf22ff1d6d1007013c967a661dbdab4e8e2d2b36fdcca958f0f50e976e4119280990c93f9f1e2ff29e80b378a08658ea9e4565b6bcd8c6d4ea2a8c78b833a029c1efc07866dc664356491b32387ea2439a2248947096289e1bc4af5519958a6e7800a2612ee489b36fbf306423b60e5938eb8673005de7fb96cb1acd5646822d954bec79f7d814096a351cf9ffd0c1011df42f22284d21b99045d95b3feb217f00c5a1a0c9dc7412627944efc040bce18d41e1aca9f1c2694e035f862043e1e3463c88aafb6036ca82fead5b4898148aec90d7dac27d9586266da4480498126a22f542a962cb57d7077dd7ca885dc0f25e2427e6fa0166f3dd2ead8401bbea9f1594d85ac3c5ece4c5a6771a9d65a4c5f81740afc197b25cf8f21d156933fef182be24a4f2a0552c362bcd699ed1db7e902d3f3b065d4192a8db308fe28da247328574a26c98b9bb0ead93e6e00b97069963506537b0cff42c48d2aac86bc0a542b45be34cf693d12bc1cd47e0bc6e17571b552d9afce349b2c20e76ad4e6090e43fa605f3ff651a1452396d2a4d71a35a83a4222e02c912ac46e790dc06ec5763567ebe22b3f92915270bb3fc5c369cc28ad2056c8eb25b0be8772f7778db7278eec22c23dc5a0e0b89021ca98aa8d1c30dcc5a8f336bafc3481e7cd57ffc2241fd23ad537479ad7a49eef3b7638da205994942607615ef821c1aa4fbf401a8aa8d82f394a62630e3701867d4f514d3b61269cefeb1794e5b55d85cba76f49a50b5a42ff9301da6446caf05eebd4b7fa7a4e7de06fe3bc3bff34286ffc3de7bf384e314d354001aa3d644b09080e651deb98dd2e0d72a5f74482fa72e5c5d369a981a9aa922c803160b9d92cc6f0bbd56e69b05175f0cb5fccbb2b7cb2f8bbaa694586c8f64f708b2ceddd2a9bf89b9a9dc3bcfa9ba6fd9b72e7fbdbefd67604c62e05648cdbfd62d73ece93ebfa40fa3374c096fdc1494294fd66537c7aee9259b61bc9cee339fca1b16373af3cbabeee68b5581f2e3cc5bcad88ee2506c29af88436b1bcb931432aa1d1044f74824700aa91dd41389ab6f3d8b2ebbf50fcbfcf3f25e2698b288382fb9c0c7944346a68dee2c3adf59220814b5212f55e67e9a12d054b30e4b35a58069ac6a2ea1624d42f38d44e17bd61bb1757cf6d3c46f758d29bf67a8fa9b12fde95a22996d51a4673a7795ac3ea0c6c82d6bd254dd77bb57ef76f48c5b970e54ff2d31032e482055518afeb9e3ce75706e029503234e3d89b3909824bb4700da4651f8598340aa8831ab2e1bfbcc4c66ea34ce5ee1581b218db433b77649513f68934d419edd5c7c0bf58565e43566f1d6148af9ba1d1e5239a94f54641bbf7627427afa246996d71bfb8d3ad16bc9cdb4f3d5de21c4bfb16950c0e3b1d7f9b1bba991541af319cf2cf10e1f172bb4f87c34b52105f265335c35a3e5b2af8963b50020f6ec49954d2deb3a0fe580dcd02903cd51beaa8fc04669c2f0804a83d9d4031fb492923a708d7fae58c5d6bc80c03a96db3b91f03c5c85c94c69b56e747f4f0bd35aca1337f9d5083e355090452c238c7caa514afff1c4f6a56346f5a0f8ff70a081c7d00eaf635d4f11328b528d9fa938f5a80dd524bebd835af2c3899587d14d0d83545c9c48d546b8755f93a9a78a1573f40b750881ce9d34a63f30a4dd2bd11dc6e44d7550f0550989972e2b64a7cbe8917a4943869f08beca6d008cd07f569399f12c38657a5ac7604faf14507e12a2883d8f18490253d01e971a734f146befc9a7b93bf6aee17c0732aed2897abe19fd274b98b2dcc2b222f96cfd938fe1dba58402dd112343dca001b7d2a132f3a664eed688cd71f9d03515f089aad76015c0adb3ef4f1fa2d75f4d71ed3d9b043ce24fbfd273683f2ea2a3113b7630a54216dc2aed76c0eb3fdb1e53e95643d491ff1f65194be5d34bade02f3fbeb3d80d8bd2613a7db99f5bdcfeb64ee2fd27b6d84b65a877a234b077db3d6f1d2dabbb31f347dafd3349c90692e6d4882d1d5b6d5e5ac138be8f1827e153c8a2b6afc4457edca7f05fe4579458a4b6111cedf8cb6bfd8d226ef6649a831d91f4fe79415f82ca37b35b81d77dd999fd5cfe71d1b36c74a409ae450733ecf80919134dd5e5ee98c7a115fadac1a4fffe5f60da519443af6971b04a61c74317f1e7af8491e46c0509bef346f61410ff5072b4b6853fafdf1e832a7f9f78bd9b460500a1440fc87f21f181b448826774b3e71484d7f344dcb43f543341d099a7f10b8e3086bc8c73d467a4d202c58d79aa8015c127fa18fabf265076299bc45f8961fdcb8172e714e21b0cc7a9b2c724e40a3e84bbe8cc5667b7d88b4b2fceef48483b564081aee049ae977f42ca13fca423b213ace333f3faf69a62ba137f37ec9f89c32c98ce932f3bcbf44971fd14417747e67c357c35b8e2f7e9cb627482feffe3f72b6893ccf6bc005edc160b26384b309accc9939a1dd860dba1ab024f6cebdc7aeec3ebf7d6f43546dc0c46fff518107f8a11a50836dbc6ebf6f48c09741e9a8e1dbe8a01a8b327edefd00acb99e882ca37880a0deeac8c07ce36a2ef057d37eccafbfcc4fe8d034770d6e66eb30852eff8f9605f7e08df3321db852dec0a03ad322553f53e58399c924ac4d2fa614705ef9ea70ff25fd05789f59a2bd0b9d8d7be4abd93b9a4201308e216779a1517dd177b2c4183e7e8b4f6a9734b6fbb4f76f760120798ffff5ba11fc3c6f1dc6518d93e547f926225319090a504e7f1842b38a4c662d74f3de4570b2eef78bcb87698710601feb5809d119f632be002586b18968f36bd72818a5ed0a7372826c3b3a680d8638521f1222bbed4f52b6de8563ebbee8e92fe8a7543436b92ff4febdb12de762104d6d200cd3f178cdaf27e333444d7cbda881a159ed95740aa481df62d1e2e685a6f651e85f53cdb9ff7bee25d1c1d602ea383ffff2951fd1dee675c92a0800a7dcf9e84eb0b864cfa848a4409497c44b614d443efa8584626f9d4c2b496951e734b67d3facb5dfb45552586efbfee80009edf63e289e8ae97fb9eb7a300f751480a75669519e2099796da40bf020bb18a28a996e69dcdd61b4f4269fd1605fc3243822f2778ff076e287917c77390817adf2fce29b526ce29f3f1cb390d25790c5518a3d923c1bfc52d36a5a2067159f9ee9befed6c6d748cf5764ba59b01f67feda0185ea3cf140cae97175813c5c73be4e6e83a5f1b74067f63cf94f355b1842ce9852a6b928c5dc4367a9c90593f7edb5983e6e8b2bad8010e14649f10fd0700f8646d289dde42ac42c86b1ce834fd16da20680d5a5ee383194bde0dbd10f02941241de1f733264c39387443c0305bae369d574fdf5efde269b166fdbbc0bf9d282414cada1f4c230557ae726c3e613c935d2adbb12f4dd87d2465c97d20ee48b1aca2035b5819214463b729403a115d67e1407b6ee5bdb1fe6e16eaea7067d761971b436ff47faa9148192ec1eae70428647beab6f175fb74f379bda84ba698c7f3c649a4c89b88a185197341a899272571a6ee449ca0c312ee711269796f6f9ba8fb37f4addf4b7c41aa8e1e12e172ffffc7e52bf06e4d05a757006ecbca436fd79ca753e7efcc26d0cc67c8cd148e85394465c105d8293c240dc8db3c84d481cc43e9ccfc6e21d1ab54cb979cad371b7247cb3b17851ad493fdc2fd92ff27290d02796a2ab97e098d29c621a0d12e6df2d33790e53901e78db6b83339eeec21f7458f7ffc2e27bb41384950bdfe5dc6883c6d2d9aee0002a9e4eb2ff0ccc746c5730e4c583f1b5bcf672ea40a5dbad500c034c87f2cca98478f29da9c23ed7cf658a59d35dbd1ea173d47273c2b1935d7058a7447837d3892482997b0aa3edc85a9c86271dc77f336f1c97e1e1a3bb5d013d6c50b5e49b8dd0ad1f37a5e83b4bd7b5fb47779576763dcbf7d5a1adaba4ec2ae80fc7f9988066771ea850c82e0d4e39b0e37732beb49a1680e537f141b354c8a580ea6a1280b5be27e72f50a1e1f4c6d6ce96cc91dc861b8df8776608aa6170cd6a51957ba732a8d01d6b7fa3b5dd7465adce3082dc9a56ac8c4ab8dfb4ab4ce0bd53324533624d5d635be068fb56b39e4fd9bb91bfdde03020ee27e0e41b05fa04ffef74f52e2f26235220641ff030000ffff010000ffff02db8fb83dbd0000") gr, _ = gzip.NewReader(bytes.NewBuffer(bs)) bs, _ = ioutil.ReadAll(gr) @@ -178,7 +183,7 @@ func init() { bs, _ = ioutil.ReadAll(gr) Assets["raleway.css"] = bs - bs, _ = hex.DecodeString("1f8b080000096e8800ff2a4b2c52284bccc94cf149cc4b2f56b05588564a4954d2514a490512a93920220f44140389b4222091510a24324b80441e48b600c42a028915970189129092d26ca5582e00000000ffff010000ffff351f5c8d59000000") + bs, _ = hex.DecodeString("1f8b080000096e8800ff2a4b2c52284bccc94cf149cc4b2f56b05588564a4954d2514a490512a93920220f44140389b4222091510a24324b80441e48b6a044372004481781848bcb8044094855693690a8cad00d09578ae502000000ffff010000ffff3baac21664000000") gr, _ = gzip.NewReader(bytes.NewBuffer(bs)) bs, _ = ioutil.ReadAll(gr) Assets["valid-langs.js"] = bs diff --git a/cmd/syncthing/gui.go b/cmd/syncthing/gui.go index a49d68be..9c46115a 100644 --- a/cmd/syncthing/gui.go +++ b/cmd/syncthing/gui.go @@ -503,9 +503,8 @@ func restGetLang(w http.ResponseWriter, r *http.Request) { lang := r.Header.Get("Accept-Language") var langs []string for _, l := range strings.Split(lang, ",") { - if len(l) >= 2 { - langs = append(langs, l[:2]) - } + parts := strings.SplitN(l, ";", 2) + langs = append(langs, strings.TrimSpace(parts[0])) } w.Header().Set("Content-Type", "application/json; charset=utf-8") json.NewEncoder(w).Encode(langs) diff --git a/cmd/transifexdl/main.go b/cmd/transifexdl/main.go index 36e8a8cc..4d358261 100644 --- a/cmd/transifexdl/main.go +++ b/cmd/transifexdl/main.go @@ -51,21 +51,21 @@ func main() { var langs []string for code, stat := range stats { - shortCode := code[:2] - if !curValidLangs[shortCode] { + code = strings.Replace(code, "_", "-", 1) + if !curValidLangs[code] { if pct := 100 * stat.Translated / (stat.Translated + stat.Untranslated); pct < 95 { - log.Printf("Skipping language %q (too low completion ratio %d%%)", shortCode, pct) - os.Remove("lang-" + shortCode + ".json") + log.Printf("Skipping language %q (too low completion ratio %d%%)", code, pct) + os.Remove("lang-" + code + ".json") continue } } - langs = append(langs, shortCode) - if shortCode == "en" { + langs = append(langs, code) + if code == "en" { continue } - log.Printf("Updating language %q", shortCode) + log.Printf("Updating language %q", code) resp := req("https://www.transifex.com/api/2/project/syncthing/resource/gui/translation/" + code) var t translation @@ -75,7 +75,7 @@ func main() { } resp.Body.Close() - fd, err := os.Create("lang-" + shortCode + ".json") + fd, err := os.Create("lang-" + code + ".json") if err != nil { log.Fatal(err) } @@ -130,7 +130,7 @@ func loadValidLangs() []string { } var langs []string - exp := regexp.MustCompile(`\[([a-z",]+)\]`) + exp := regexp.MustCompile(`\[([a-zA-Z",-]+)\]`) if matches := exp.FindSubmatch(bs); len(matches) == 2 { langs = strings.Split(string(matches[1]), ",") for i := range langs { diff --git a/gui/app.js b/gui/app.js index 9c467cd0..5a27571c 100644 --- a/gui/app.js +++ b/gui/app.js @@ -86,11 +86,19 @@ syncthing.controller('SyncthingCtrl', function ($scope, $http, $translate, $loca $scope.upgradeInfo = {}; $http.get(urlbase+"/lang").success(function (langs) { - var lang; + // Find the first language in the list provided by the user's browser + // that is a prefix of a language we have available. That is, "en" + // sent by the browser will match "en" or "en-US", while "zh-TW" will + // match only "zh-TW" and not "zh-CN". + + var lang, matching; for (var i = 0; i < langs.length; i++) { lang = langs[i]; - if (validLangs.indexOf(lang) >= 0) { - $translate.use(lang); + matching = validLangs.filter(function (l) { + return l.indexOf(lang) == 0; + }); + if (matching.length >= 1) { + $translate.use(matching[0]); break; } } diff --git a/gui/lang-pt.json b/gui/lang-pt-PT.json similarity index 100% rename from gui/lang-pt.json rename to gui/lang-pt-PT.json diff --git a/gui/lang-zh-TW.json b/gui/lang-zh-TW.json new file mode 100644 index 00000000..331329ca --- /dev/null +++ b/gui/lang-zh-TW.json @@ -0,0 +1,120 @@ +{ + "API Key": "API 金鑰", + "About": "關於", + "Add Node": "增加節點", + "Add Repository": "新增儲存庫", + "Address": "位址", + "Addresses": "位址", + "Allow Anonymous Usage Reporting?": "允許匿名的使用資訊回報?", + "Announce Server": "發佈伺服器", + "Anonymous Usage Reporting": "匿名的使用資訊回報", + "Bugs": "程式錯誤", + "CPU Utilization": "CPU 使用率", + "Close": "關閉", + "Connection Error": "連線錯誤", + "Copyright © 2014 Jakob Borg and the following Contributors:": "版權所有 © 2014 Jakob Borg 及以下貢獻者:", + "Delete": "刪除", + "Disconnected": "斷線", + "Documentation": "說明文件", + "Download Rate": "下載速率", + "Edit": "編輯", + "Edit Node": "編輯節點", + "Edit Repository": "編輯儲存庫", + "Enable UPnP": "啟用 UPnP", + "Enter comma separated \"ip:port\" addresses or \"dynamic\" to perform automatic discovery of the address.": "輸入以半形逗號區隔的 \"ip:連接埠\" 位址,或著輸入 \"dynamic\" 以進行位址的自動探索", + "Error": "錯誤", + "File Versioning": "檔案版本控制", + "File permission bits are ignored when looking for changes. Use on FAT filesystems.": "當在尋找變化時,檔案權限位元會被忽略。用於 FAT 檔案系統。", + "Files are moved to date stamped versions in a .stversions folder when replaced or deleted by syncthing.": "當檔案被 syncthing 取代或刪除時,它們將被移至 .stversions 資料夾並添加日期戳記。", + "Files are protected from changes made on other nodes, but changes made on this node will be sent to the rest of the cluster.": "其他節點做的改變不會影響到此節點的檔案,但在此節點上的變化將被發送到叢集中的其他部分。", + "Folder": "資料夾", + "GUI Authentication Password": "GUI 認證密碼", + "GUI Authentication User": "GUI 認證使用者名稱", + "GUI Listen Addresses": "GUI 監聽位址", + "Generate": "產生", + "Global Discovery": "全域探索", + "Global Discovery Server": "全域探索伺服器", + "Global Repository": "全域儲存庫", + "Idle": "閒置", + "Ignore Permissions": "忽略權限", + "Keep Versions": "保留版本數", + "Latest Release": "最新發佈", + "Local Discovery": "本地探索", + "Local Discovery Port": "本地探索連接埠", + "Local Repository": "本地儲存庫", + "Master Repo": "支配此儲存庫", + "Max File Change Rate (KiB/s)": "最大檔案改變速率 (KiB/s)", + "Max Outstanding Requests": "最大未完成的請求", + "No": "否", + "Node ID": "節點識別碼", + "Node Identification": "節點識別", + "Node Name": "節點名稱", + "Notice": "公告", + "OK": "確定", + "Offline": "離線", + "Online": "上線", + "Out Of Sync": "不同步", + "Outgoing Rate Limit (KiB/s)": "連出速率限制 (KiB/s)", + "Override Changes": "覆蓋改變", + "Path to the repository on the local computer. Will be created if it does not exist. The tilde character (~) can be used as a shortcut for": "儲存庫在本地電腦的路徑。若資料夾不存在則會建立。波浪符號 (~) 可用作下列資料夾的捷徑:", + "Please wait": "請稍後", + "Preview Usage Report": "預覽使用資訊報告", + "RAM Utilization": "記憶體使用率", + "Reconnect Interval (s)": "重新連接間隔 (秒)", + "Repository ID": "儲存庫識別碼", + "Repository Master": "儲存庫支配者", + "Repository Path": "儲存庫路徑", + "Rescan Interval (s)": "掃描間隔 (秒)", + "Restart": "重新啟動", + "Restart Needed": "需要重新啟動", + "Restarting": "正在重新啟動", + "Save": "儲存", + "Scanning": "正在掃描", + "Select the nodes to share this repository with.": "選擇要共享這個儲存庫的節點。", + "Settings": "設定", + "Share With Nodes": "與節點共享", + "Shared With": "與誰共享", + "Short identifier for the repository. Must be the same on all cluster nodes.": "儲存庫的簡短識別碼。必須在所有叢集節點上皆相同。", + "Show ID": "顯示識別碼", + "Shown instead of Node ID in the cluster status.": "代替節點識別碼顯示在叢集狀態中。", + "Shutdown": "關閉", + "Source Code": "原始碼", + "Start Browser": "啟動瀏覽器", + "Stopped": "已停止", + "Support / Forum": "支援 / 論壇", + "Sync Protocol Listen Addresses": "同步通訊協定監聽位址", + "Synchronization": "同步作業", + "Syncing": "正在同步", + "Syncthing has been shut down.": "Syncthing 已經關閉。", + "Syncthing includes the following software or portions thereof:": "Syncthing 包括以下軟體或其中的一部分:", + "Syncthing is restarting.": "Syncthing 正在重新啟動。", + "Syncthing is upgrading.": "Syncthing 正在進行升級。", + "Syncthing seems to be down, or there is a problem with your Internet connection. Retrying…": "Syncthing 似乎下線了,或者您的網際網路連線出現問題。正在重試...", + "The aggregated statistics are publicly available at {%url%}.": "匯總統計公佈於 {{url}}。", + "The configuration has been saved but not activated. Syncthing must restart to activate the new configuration.": "組態已經儲存但尚未啟用。Syncthing 必須重新啟動以便啟用新的組態。", + "The encrypted usage report is sent daily. It is used to track common platforms, repo sizes and app versions. If the reported data set is changed you will be prompted with this dialog again.": "經過加密的使用資訊報告會每天傳送。報告是用來追蹤常用的平台、儲存庫的大小以及應用程式的版本。若傳送的資料集有異動,您會再次看到這個對話框。", + "The entered node ID does not look valid. It should be a 52 character string consisting of letters and numbers, with spaces and dashes being optional.": "輸入的節點識別碼似乎無效。它應該為一串包含英文字母及數字,並可能會含有空白或連接符號的字串,且長度為 52 個字元。", + "The entered node ID does not look valid. It should be a 52 or 56 character string consisting of letters and numbers, with spaces and dashes being optional.": "輸入的節點識別碼似乎無效。它應該為一串包含英文字母及數字,並可能會含有空白或連接符號的字串,且長度為 52 或 56 個字元。", + "The node ID cannot be blank.": "節點識別碼不能為空白。", + "The node ID to enter here can be found in the \"Edit > Show ID\" dialog on the other node. Spaces and dashes are optional (ignored).": "要輸入在這裡的節點識別碼可以在其他節點的 \"編輯 > 顯示識別碼\" 對話框找到。空白以及連接符號可不輸入 (忽略)", + "The number of old versions to keep, per file.": "每個檔案要保留的舊版本數量。", + "The number of versions must be a number and cannot be blank.": "每個檔案要保留的舊版本數量必須是數字且不能為空白。", + "The repository ID cannot be blank.": "儲存庫識別碼不能為空白。", + "The repository ID must be a short identifier (64 characters or less) consisting of letters, numbers and the the dot (.), dash (-) and underscode (_) characters only.": "儲存庫識別碼必須為一段只包含英文字母、半形數字、點 (.)、連接符號 (-) 以及底線 (_) 的簡短的識別碼 (不多於 64 個字元)", + "The repository ID must be unique.": "儲存庫識別碼必須為唯一的。", + "The repository path cannot be blank.": "儲存庫路徑不能空白。", + "Unknown": "未知", + "Up to Date": "最新", + "Upgrade To {%version%}": "升級到 {{version}}", + "Upgrading": "正在升級", + "Upload Rate": "上載速率", + "Usage": "使用", + "Use Compression": "使用壓縮", + "Use HTTPS for GUI": "為 GUI 使用 HTTPS", + "Version": "版本", + "When adding a new node, keep in mind that this node must be added on the other side too.": "當新增一個節點時,請記住,這個節點也必須添加至另一邊。", + "When adding a new repository, keep in mind that the Repository ID is used to tie repositories together between nodes. They are case sensitive and must match exactly between all nodes.": "當新增一個儲存庫時,請記住,儲存庫識別碼是用來將節點之間的儲存庫綁定在一起的。它們有區分大小寫,且必須在所有節點之間完全相同。", + "Yes": "是", + "You must keep at least one version.": "您必須保留至少一個版本。", + "items": "個物件" +} \ No newline at end of file diff --git a/gui/valid-langs.js b/gui/valid-langs.js index 127b3de2..93bd2edf 100644 --- a/gui/valid-langs.js +++ b/gui/valid-langs.js @@ -1 +1 @@ -var validLangs = ["da","de","el","en","es","fr","hu","it","nl","pt","ru","sv","tr","uk"] +var validLangs = ["da","de","el","en","es","fr","hu","it","nl","pt-PT","ru","sv","tr","uk","zh-TW"]