diff --git a/auto/gui.files.go b/auto/gui.files.go index 79e952bb..93bac785 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("1f8b080000096e8800ffec3d6173dbb692dffd2b505d5a51b64c3949aff32e8ed34b9df49d5fd32413c7bd9b71dd194a8424d614a902641c4de2ff7ebb00480204405171927b6fe634efc512b0582c168bc56277814e26e4345f6f58b2581624381d910747f7bf27ff88aef329f929670b1265314064054ba66591334e024e292996949cbe7af9f6cdd94f176f5fbd3927f324a5a3700fd03d4d5322d071c228a7ec1d8d4372c129c9e7d02ce184e7259b5132cb634ae0e7227f4759466332dd4067e4d7b3b787bcd8a41471a5c98c661cbb8b0a3283da2925f3bc0492924cd0f0e2ecf4f9cbf3e7a2fb706f6fb2ff274f93ac205396df40df8f48c14a3a86beb222c94a5afd5ea725c7ffcbdf647f022d17693e8d5272ef1199472907a0285b9469c4d46f04da1b96f085032f66c5f0786fef5dc408df64331856b62027558b7095c7654a83615d371c93cbe13ae2b3285d333a5b1661c1a28ca751418757a36381a864e93402f42764087c13f8ebf6210c609e2c82790905499e91e0deb228d6af59fe2e89291b937b35beaa6c443eec11f81880614ce75199163c7ccfd9fcbf6804652fa395e8f47f0e4fcfdffc7cf836bfa61974bea5ed699e5f27b46a6bb4944d2d8242e0dd791115c9ec67982cfe22c7ce0349247e8031f3e4fd23324c818d87c3715dc1cbb9ac08ffe4793614e5b7a3635f3788873246e317381dd102e601c802786c63b2b460799a0211c3f3aaf4b460294c96c6673ecbd7200c82153a9fe17b9acf2284aa588db308bdbf7b06d5c095a3e3ba74418b57bf40114a5b538ad31cb142ca8e10b28a79a253a430a3820e0e001f6e8f5b95201176f96a73f60ca764689466b0d810c9e59503c95986e337c853f56b9617f92c4f4f97c04b58a235991a0cf01ad582851bd444f61ceb6c6a607dd0d4269dd175ee182916b302981af9ea5e03d3137ae324af5c2f1848da5936cf5573bdf65e9e05837a22e530cfcbd98c723ed0c5a09ae26aea5046015ddd12461bb1d932188558735cc32673126089dede945b5c1612a469755bcbb8318794c64f1b71a8a1876c3584d5f18ca6daa281c23861aa9c04f07da4d7e232c04a9c78bdbcc8cbd9122b2ed6312a275975db26e36ce62182d115a873271d765545449cdf6429a8032721112f284bf8754d8af853cf0cac2c315f34a6b1314bc8f96fc4bab3782fc791644911684c1755c1f0df325adce4ec5a88ee7084b21aa5c17009ba65d882b65775c3ac8a84668def4846d3b09b0884e5cbb240267643bad48d49b483b93f47a0ac6dcefa87c56851b2ccc70ef784f8b8fe611acdae6396af410eb8d83a40375fd3cd348f58acf6e55bcfa4740db0561e7318c712819d0b5de8fc101006d5de7c408613be01895c018d5cea096d53862513b507670ae8b14b0424462003db6b248fa46e0ddcd429e4d504e9ed9aefafa67fc20e1202cf78a06bd95138cfd9f3083456833c89dbe871c68acd9a82e5a66beecb24be222727a0d6c112834d1b8cb761bb297ec0807b49c1b823735acc9668e151e8955a706e3e8bae7e446a4f8650403334182fde9c9de6ab759ed1ac4082fbce428be3da305a4c773151fc26148d401b6b07f113183b07923ef720705ab03e54f8c9136b5c55950fc55766fbceecf74d435dbe7dc29cebc13d66cdd0eabdaed10ac872b439d0dc0303eb26188d0d8802eda500610e6bb3704426e4fed1d1910999c46aa7af3e9a1509edcd81c112c2b58a27201fcbc5de27246419f1573719d8c66bca8a8d983acf14554724c752b04a0ab6f160c14e85fc25d9748d16c2af51b10c57d1fbe0684cfe46f6252f05c459f6d3a6a0fc6d5ec0a9ebd061f35a50c8bc22f648448d372f8b6d5dbf2a8b3e7d1b60dece6fe1600aea8d04d4c75a8b29477d87e000bcf548397e9ce786f6a6b26d31487bbef73a689f02dcddb5cc6e542f78162cb9b1f96271dbd270ed3f08b7750792860858b2d97586b6916e0b183dd8a861a2de4529acb16fb00b2fe6f3225fafa1672766e11b28e41a1ea226757423ea9bd615b8f87b79741516f90574c04e616a60eb3f9015302f535eb0e0fee8d81c876a7e420668d5836936201f3f92a6f42c4ee9a03d16597d00d524183454a269fe9ab219e87b3c41cb893920836f4703e768154bb4013966fc348df85798f0048e7a5f60b6633c1bb2cf36d9c68c0d13981b6fcf6a210e7d46758386cb89f7625ab36415b18d1393837dad393485e28b4f24ec93be113bd82bdd77425f0bfc47fdb01a53b89e15302a8080ddc22927b8b0641713178046c3719baf62379aa739d8f3d08d5b2da297c6a116b1f874be68fb2050cda30fc2debc5483f025fc3d7b76650a1d02ba0c7d2c0fd1ca4ba9e8169908ac706d6ab56a5d932217f6cfb0a7b55cab4e29a824c0c5d2ee1976a16f476d8c1d5a67f82ce16af8b5367670169d16ff1a7ccdaf77e5a73acaeec2b415587bdccf2d5b59ffd3b2cbd68fbd78662bc3ad3cf3eb461cebd338665f99638a30c134ec1ed8d0a5db7fec986f8de5ff6743682981ce7dca3f94dfe8d66940624c4a85a0693e740f990a421daf5df47d49f6a409ecbdbff9fbde32cfb0ddc6d8b1c51d73b83882159e6944c8408f200086b4a0ba470ae9adbacd1a561289f5d8386fe01015de30a5d9a25882c945ee7b465cdb071d0355d8c056f60a830a516d950665ada8da9e26ca60e0b350ea7986ee3d8d75908e319a125359ff70a6fdc16d44608cf5a56be0ed29cea424b49a05ad09d3f8d2972941298f5ca2d1a89345dbf8d38739bd3943e3a438a7057aadb997339309986ad7944404fdd168a340db4d5d5d716bb57eb5ae4ed855d817010323b2162a20fdd0dd46105ebc799e45d35484d70257f553d8ded660da902760d5ba30fdfde2ac9b0c00d01b62c840f1a1afaf1d631c9ec33c8fdec1eea1a29115532d699be1a222ff387ff532c4007ab648e62d2a350ab141be2e44886929a2d4fc11f930c43c045080876f4126456c68bd4e1319809b88d8f0ed6ddbbbb1ceb9e5eb83be606c40d05874e2f274585e0e9fdf10704d441c6b1797a83bfa2a1c767a59cb3071b8f81d33d15bc079c9e09f7c4565f6c24c8678cd39abc3bedf54c245ff2aa394bba57c6c0bf7887cfc680d5f7eba5182c48e4d096fe925455b9bbd98cfb2a4b36b8429391e5365881887b88c3899529a11aad65bce489c70f1ddb243bbd6e977df399771bd4e1f3b8e9fda34b91b0933f7c869c30a7fee5d0842c5b1333987f7db96b197d3559e00b949d2946084180f86535a4b1008a10a19b6186d4f7b78c1e9db17e7c21b630880aaf00fc4ce563023b3ee413c0525b2019a6f48a5130946f5d374b3e7e8c394788fd6d5e4ffb803895f6d5b12efa5207c9170d089caf6376c4e1beabc602107955904c3312afe68ad29abf79a25f73e0415bd0253a049426851d1287d23f4b8d7bdc90c302e3df0f984857c78f59611be3627d6c400106f932245db66f0a62e1af8a17fcae30d516e53a90c13ae75170e8c413902f3bbc6a93d5b93c23cb4f778679e8eaed1cf6f128c41dcd0e91a755ebd1e616d6622f4ace9cec0bd5c5aeb4a2633293460f621c9c3962c742c5f7b95b69159e7751337c8cedb6445f3b2081a9bc25efa3770a4c96fc23a0f47eba5fadaea662cf4ac47ac3b139e2495e25f5374558e913f91c02b9f17a2e52788675935fc6ad2a906e934746c0bdebb56fb0f51439264b09d60be27aa6975f6d606de2353a26f4a8dcfb25219369fa49ddcfcd492767ad89fae2c9f5d27f6b6a762718c1f8f4e4ecf41eb245da12d1903435db5b817d2f7b0fbc4c107587c55238b14ec02d8f7fc3d6c551d4a5e819dd3742ec3eb2d278ee1c3b1c7db1056f9cb28876d919cd4e7ecba38fc334f32d82989432123f073a02467e13dd054af9920da383ce394556cfb0ca7acc4f6dc188c87de92f82f2d638d2ff39ba11b57146f41e69ac50f3abf306b6f93452ba0ffb6c74cb694a8732add305f9fd1314d6941b732dbead15225bad5de62c9f6a439171ffa79e39cae946a7d6846b5be14646d0f4d2120db74685ba9484e41d34126a8182967eec4015127b21e5aa85b153d067b8701b7076d4f806df03a0edf9d5253f9dc4ed1f110e7191d93e4786f47a1aafd938e5159508d2e73e9b7bb9e067008f6ba95e94922778524e4b129b0d2eb0b150707aed88f0e7b995ce99e7953cf771caeabc6cd888f2d5045b96d98e067ca6874dd23262493ac009347b0e588d7255f06f69ee759e021cf591154e19888d14f5d877d853607a38a55b87c968d1ef8f02a9ede7a0737e6adf656e58dee5c4c0958136dddf3099297b5d808c2736c8966d6334ca40fde2f448e114769da3d0f95fad066bd99bda0a52294e059be7d0d4cf3a073b7cd8726353a0e7a8a864c01b365c3e7dfa7211ef09ae4d5fac2c856e998a53462cfab8cb34e1b46bf8562d0796952ade25187e4fe95206babf92eda4d04251e2b6bce12307ad38d3dadbc603aa9cda6b9bbf036aef54e11e6c2c4857f715b4da3190d66b5321db7c3655837b2aea3683307783c2e9c75de47602a383325dd7bf07803d5bb1d3c540bc3b5e63d78686d405c52914552cdd907dbbad5c1956562a5d25ba6c9b6ae2e2bfd7265df276999940e542a228cb676e309760384183b114a6cc0130cb65b19812e5205245edbd37aea38d8db6d7fa1740d2d0eba697b1db168c5c36b007649df36ecddf51f3f927fffd443270a68cf530876fb194e217044b3c47eabbc7f3064ea1148efa71fcebefe90d158e91cb3bc33b9ceb718d006399601ad1038c5c582aacdaccb2bbbce5cc09a4d60afe15ac3cbb4083c1a39b1b88c62777759a52d4e645f6e3b441b8434083e482df34811d27169a231f3c579d84d6f2b03b98671e80bdb0890b08646b1c730ac62bd12e7706c4348ad0130766b518fea043160aaa14921ea051b612bc3dee4509b1b8e91f668f08ba9e15c996aad762ef4f621429e99ab365212d52fdf4102e59ee3324f84a0fbb6e6dd8fc34b38bef0d67aae24c4b26bc1eaf02d33ef1e8bc9256d531ef118a66f6dd35446994a810ab4cc91d1c8e32495e8c499cc61388b4ae1231c8c8927a82567b15b93f7525b9fc799a484ca9016c7ae6924a67d2571a1c5d3d767bfd08dc1a799292a68b3d6502ccae27c752e724982874763f2f081c7739a25852f33c59dd7a1220cbbde81a9aee3b92ec16ce971c74ba515d3dc17473508f51a80482db10fde5b8852a9323b12553f4ce025ca179bde12bd568e2bc32def75bc58b85e36e75c17bccbf3e202aede28c0bfbf46ebc0bf3abc0844a676d0aed64d7b73f47a528627b1643221671df92e194dd05340a20a4f86992f7496621a9fbd0102b61b4a6ea2acc02c8e885f8bd05bc90103fc5ec9ecb8d9324f6634243f9505428339362c441b173a4c062917886645e292c9901e28b128c5386fb91e139e2316f881a8c5db22e40688762203620af41c8807652899270c8e9cef12607c48fe7b4933f55c8cc49270bc4dc9a99b307cdda6c607a0ab9c89d766327c66869125fcc349b4c8c7489de2840bcf5f25e522febc67d5e2fe2648fc0d29c47591cfca15d0134a0aeb13f924f8f111fcef8f8fe1fef1ef7c7fd434825fbf9fc03fc1e51fc757fba370ffdee8e31ff0ef04f69d7bf7078e4b8962bb6810786f269aa46008b6697482f7c19acbad78fdeb7815bd3f042113550f8ff61f7cbffff08776d2127ebcc9f71571071a4b1eebbd1c1289735f44e9dd08f083db6679b7a7026a62b79980bb2bcddd7202ddc1d88e7cc01e744835b02b09c65b2b3bef625d29021d9d9a4fb4ecfc0882138beeb8f11db18536bc78b3f58ced57c732650f15c08b882d503fa2ea408592e26f504bb43a674bce56c90bdbed235169cab861145a86a6d0e6771b8d9ef1f7b908c330f44b2a5369bcd705ab9d58a42a8997a11ca937f2991084f81467834f6a0713c4291f3c18b81f3c10d4ee28d392d02e2ba83558b7d3af7da1a17e02c860a7787cad75a49a3f93b6fe09f9fee83f7e386ed5250c0ef139433bfafe0f0ffff67deb202f30863fa7d18293ef00bfc475d0b41b8d84e7c151e1b9792a9f01b2cebc76670aa581df8fb41fc6863889741bb1f2f1a12d07f4faf6196afab6bbb21d668365cf92b8fbceac33d030504f8954183e4d50bddabeb645b7085e34cd4bbf5b1f57a680e8957da2bf780406df595650f60eda9844c934bda3eaddb6ba63cd440fa23199567468775522716b445ee76e6eaba06b5c014c9d00ed1b410acd63053e72cdbeae3155916af64435532cd8d3b04a1fa0c06b45b35b7865bb06b36cfaa46e0adcd178235c261ede4461b3e8b16be722e8eebd41f0444760d38007a3b4c22b6e93693b72eaf0e518e1b0d525ab5c578a0c252cd5a52fbb43e18258e93da69a37a99594b2d23b4ba5b768858926237dd4a93c116a2c35a9484d2a60ff4d56788d0124794cb2d220264e1649c1c70854b94c714a00d4beaaaed01f55b4883f120139d16f918baf69be905fa2a9e87a84cf94d435f78f2acf16f64ccc2751804630b625667368924c83c7baaf25a519c816b6da93644f256de2cfc78fe4a1da6dc4259eb29007fbc1608cc99be755e4f066092a9a04b2be8abe3e26f045aeb38621b25545bca424188545aec81194841c9f0a0d1e689a4c757d70a230281018b9e4429205aa42f63e26383260894153ed1b34d6820229f217f94df53e87e058f3bca40a830fb3085a44e6a392d57c2b6cda135cd9ba2cc6443c47e1100a510dbdfe9cbca771508b9cd1aad1b9adf72e2b82a64986b79efbd3d3d68ba250086ead3b7d1be911f13e5a21b13c012dffe07bb2afffb18220027272e2003d76f5dacda507233cc90ec9df935d48eb43d31d88f9b51f319d54dca1fb5fdcddeb2f57307c75b792076c33dc26672b8aefe4fe13c99978d643fbd3c1cd36e85de46c17cafa90741731eb454b271177e8fdfa0b08199899acf844193388775e1ef6741aa537d186bf2c5753cabe8a7c3bdfc1d1c9efc5a6d7c0e2cf4cae8b58fd4ebcb8441431611e283e8b84d3c9e5ef93df7fbf9ab4035c12166c08f1a5360b4ec8430f67b4d13bb93308c37082a72589509a003af2c3072315c39b0cb66f9db0d163d8ef5f938bde9716b63151a0b934b876ff6a1baf30332ebbdbca74bd3d29401b97f9b793c518dfecf251138b434af28e06c35c78bc644a4b175d3a19f2a9f7476478aa251ea8ced55bf275b178d1799696b15523ceb5edf404753712709fa8af5a17b71a5aba5ae33bd100f8580a0f1e624f06057d5f0c48b63814fe819381e9d7bb54384338d60c9e3c9e88964faa3794bbd85466c95fa588586b4ceae2d15f253406eab2c5af4889368a34c9ae1f3538041bc684a6ab31898a82c1816856b0b42d945816de0369e394f1b0ccf832996b7700f1a1efdfa2d49df1225e43eb1323af3e32d405eab14c630c60091b1ab8ed04969401677f43a8a4d8b4b825f2708eada69a634a8fbbd703b9ea200e5dc9082efdc89c4429a351bcf924f2843bd54fdf761af0daa140f859b963952819abf963b6b9b512533bc5594c28fa4a92589767e16bfb7fa1764f9bc9b36ea97653e00e0f6502e58f497c323c6846ec705782e25dfb06577104616468a80bb2d7087d0ba3d750ab8fef8e91c815005293d8df412f2a3df35013e9ac71853cbff08a130ee09d37d8e7437bcbbb6029d4087ce1b258a59f7d0f2ef01a3674f19fadb4422ede60745424b0cb3a8a6769ce5d784410b0557e5bfd770c9083ff0b0000ffff010000ffff7298cd1a7e670000") + bs, _ = hex.DecodeString("1f8b080000096e8800ffec7c7173dbb692f8fffe1478fae53d528e4c39497f9d77519c5eeaa6effc9a269938e9dd8cebce502224b1a64895006d6b127ff7db05400a20008a8ad3dcbb99d3b48e042c168bc562b1bb58603c26a7c57a53a68b2527e1e9903c3e7ef40df9677c554cc9f745b920719e0044cecb745af1a26424649412bea4e4f4cdebf7efcebefff0fecdbb73324f333a8c0e00dd8b2c23021d232565b4bca649443e304a8a39344b19614555ce2899150925f073515cd332a709996ea033f2f3d9fb23c63719455c593aa339c3ee624e66503ba5645e5440529a0b1a5e9d9dbe7c7dfe52741f1d1c8c0f7f67599a73322d8b1be8fb29e1654547d057ced3bca2f5ef755631fc5ffe26876368b9c88a699c91074fc93cce1800c5f9a2cae252fd46a083a0822f0c7831e3c1e4e0e03a2e09dbe4331856be2027758b6855245546c3a0a90b46e42258c76c1667eb92ce963ce2659cb32ce634b81c4e04a2aacca631a03f2101f00df163e9759ca5c92b40cca0e2224828a00a682efe32fc3b2ff1ef9ae35f761d5c02594db7118c7b9e2ec2790505699193f0c192f3f5dbb2b84e135a8ec883868cba6c483e1e10f818805142e771957116ddb272fe1f3486b2d7f14ad0fa5f47a7e7ef7e3c7a5f5c0155935d6d4f8be22aa5755ba3a56c6a111401cbcf79ccd3d98f30c7ec55819d879248fc003fe7e9ed531264c0a4a360d454b06a2e2ba2df599107a2fc0e788dff9b2ce2659165803438af4b4f7999014335beb159b106991043d3f906dfb362162354cd3a9c36a0eafa07a886511e4f9ad205e56f7e822214ba6d29ce765c72294242d66a66884e91c29c0a3a50063ede4d5a9530c376f96a73f603b238304a73587342902e1d48ce721cbf419eaa5f97052f664576ba041ec34a6dc8d4606859a276b07083b6c85f629d4d0d2c139ad9a497745d38468ac52507a6c6bebab7c0f494de38c9abd68b1224e72c9f17aaf95654239897502dbf8783310ad26018b16a36a38c698b072b583dcbf5ec61e1a42999c338432c4ec5ccc33fcf04048b329a2ff8124a1e3ed451e00701005cc05da49713a3329d23c25a0944699ed0db377341cb903c874edad8cc6584cb47024f2ca86949e32bb3f8eec0fc76373444f14191878346e0a5389c4b3e0df4e5e262128cb06909521197b365388c4cf6e160e5c8cc31758fe7ae59db86ac539abcd82e9b063a28570168851f68a6290b284cd252959310be0ff55a541758890b442fe745355b62c5877582ba5c56ddb5c9389b798828e90a763f271d76554d4452dce419a841272131e3b44cd955438af8a799199074315f34a189314bc8f9bf08fd64f15e8e23cd531eb684e84118fcbf9cf29ba2bc124b3c18e29a8eb3305882ea0e5ad0b6f6db32ab2661ab0bf72463dbb09b088465cb8a2313bb215d6ad924dac1dc1f63d8a46ccefa8755525e95b98f1dee09f171fde3349e5d2565b106396062cb843dec8a6ea6455c26ca8cb9f34c4ad7001b253b87712c11d8b9d02d5d4a1e9260cc362091abc0a54f61c9c4edc199023a718980c40864607b8de4a1dc834237750a793d417abbedf737d3df61a78d80672cd477a361048afd650c1a6b8b3c4ddae871c6f8664dc1d0d577b88b34b9242727b0fd81e10ac60ad8ba814b6983bdfb9a822d4ce694cf96681053e895dacaddc967d1d57748ed4900053447fbfac3bbb3d362b52e729a7324b8ef2cb438ae0da3c5741713c56f42d16676ec4c7ee2c7307606247de941e0b4607da4f093e7d6b8ea2a1f8aafccf6bdd9ef9b86a67cf78439d7837bcc9a41da7b5da3159017689ba1590c86e84d381c19101cedca10618e1af37948c6e4d1f1f1b10999266aa7af3f9ab50dedcd81098b2c150ea38fe562ef1312b28cd99b9b1c5c8f352df9464c9d678a6a8fd2b114ac125e6e3c58b053217f693e5da385f073cc97d12abe0d8f47e4efe450f252409ce5df6f3865ef0b0e4eea91c337b0a090793cf1484483b7a8f8aeaedf54bc4fdf0698b7f33bf0e341bd9190fa586b31e5b8ef101c80771e29c78fd3bf6a6f2abb1683f47b7aaf83b6b7e4eeee6e72d0766fd007ae98b1f96271dbd270ed3f08b77307928608425ce5681be9b680d1838d1a264a7828e42fd8851733e3c57a0d3d3b31d740a8441d3da03943bdbc39cd62f615589382f3f827f025412faa74231611262e555b0fded4b4a826d0264d32ea9f1129b281cffcdca241df43d8d61e4ceb325dc5e5c689c9c1bed61c22f6b7b49cc176192fe89f3e91b0a3f846ec60af8c0b0acd26f05b0eb71bab3185eb1987510104e855a79ca06329bb18bb00341a266dbe0abd3dcf0ab07ca11bb702c1b80f3aa1066bb1f074be68fbeaa80ed157b795bc6a10bd466c3f5c9a2287802e8318cb23b486322aba451602235ccabf1694e22ae8694dd62d946bd26ed6a56856b07b33b7388a715a2ae55f965df62aeec5337bc9eee4997f05e3585f2449f99539a608134cc3ee810d5d1ae8bb8ef9d658fe3f36048d08302dfedaa94dfd43f985ee9c0624c6a454089a163bf690a92094bbe4a2efcf644f96c20ef18bbfef1df30c9b42821d5bdc31878b2358a18d2a42e57ae41c30649cea1106a4b7ee36dfb29248ac13c37ec4212abc2a1a0c860179e41971b38b750c5461bb38bef40a833a6ad9290d6a4f55b53d37d2c1c0b78f36f30cdd7b1aeb201d63342506acec29e325fa28dfbab73a3c627ced1a787b8a732909ad66616bc234bef4654aa84c68d168d8c9a25dfce9c39cde9ca149cacf29c72824f372663c0683e28a9298607c11839fd076b3f58114b756eb37ebda63aa4f3d1130344e942205a43b516d04d187772ff3789a8963a5d055fd02b6b73587fae7607bb930fde3c359371900a037c410b0e243dfd829c6ac3dce198baf61f750a77035532d699be1a222ff3c7ff33ac2f3e37c91ce5b546a14628362cdc591c1529cb6b2a7e46380c7f0a0008fde834c8a58ff7a9da5f240652cce38efeedadeeaba6056ec06fa82b1014123d189cb73b5bc565f1c08708dc5b9c43e212ef7a9a308c0e8652dc3c411b275cc446f016755097f8a159587f73379b469ce5973dcf9975ab8e81f559c31b7948f6ce11e924f9face1cb4f374a90d89129e12dbda4686bb317d33996747685301543674a1e8de210973123534a7342d57a2b4a92a44c7cb7ecd0ae75fab7bf399771b34e9ff94e25bb1a0933f7d869c38af8dc7d0842c5b13739478fda96b197d3f5f938b949b38ce0891fe105e6aad4120442a88e805a8cb6a73dfac0e8fb57e72266600880aaf00fc43ea5374fdadc8378014a640334df905a27123ca5cdb2cd81a30f53e23d5a5793ff490712bfdab624de4b41f42a65a01395ed6fd89c36d4392f23062a9387c108157fbcd694d5ad66c9dd46a0a257600a6c0f955b546c95be719474d0bdc90cf09c71e08bf109f9f0ea2de338d29c58130340bc4f7986b6cde05d5334f0437f5f241b046eb25f302b6b5b1d0d8c41390e5af73d77f46c4d0a7360eff1cefc145da39fdfa41853bea1d335eabc663dc2daccc551a2a63b43f77219dae7150d1a30fb90e4a0250b1dcbd75ea56d6496bf6ee206d9799fae6851f1706b53d84bff065c9ae2266af22ab45eeaafad6e4642cf7ac4ba33d1475229fe9aa2ab726bfc07c35ef9fc205a7e86785675c3af269d6a904e43c7b6e0bd6bb5ff103524690edb09a63ba29a56beb736f01e27df7d53247c9695ca98f82cede4e6a79684d1c3fe74656dec3bb1773d158b63fce83a3923072d4fba465b952518eaaac58388dec2ee93841f61f1d58d2c52b00b60dfcb5bd8aa3a94bc023ba7d95c1e97b68238460cc71eef96b03a5e46196c8be4a4f1b39be2e8f722cd434c2bb5f120f04ba0a428a307a0a9de968268c379c629abd9f605bcacd48edc188c87ded2e40f2d03892d8b9bc08d2b4e762073cde2479d5f9885b5c9e315d07fd763265b4ad439956e98afcfe8846694d39dccb67ab454896eb5b758b23b09cac5877ed1386728a55e1f9a51ad2f0559db435308c8361dda56ba4dff140907460a91fb2058d48953ec16ea56458fc1de63c0ed41db13601bbc0ee7bb536aea98db29061e9222a723924e0ef614aa263ee9189505b5d5652efd765f6f008760af5b996eb24dfe3504b6230758f3b905ec457aa947e64d3ddfe15cd78db7239e58a08a72db30c1cf8ea460737923268f60cb11af2bb60ced3dcfb3c02356943cac8f63e2927eee3aec2bb4051855658dcb67d9e8071f5ec5d35befe0c6bcd3deaaa3d19d8b29056ba2ad7b3e43f2f2161b9d19e879cf63227df07e21728c38ceb2ee79a8d58736ebdbd90b5b2a42099e15dbd7c0b4083a73db7c685263e0a0a768c8941e5b367cf17d1aa183b74d466c2e4aec948e5946e3f2659d41d469c3e8b72f0c3a2f4caad579d411797429c8da69be8b76634189c7ca9a972918bdd9c69e56c64b9d54d79d89bec2bb0dad778a3013262efcc56d358b67349c35ca74d43e2ec3baa175bd409b39c0e309e1ac8b3e0253c39929c65ec7e31d54efe778a8164668cdeb78686d405c323ae334a9e7eca36dddeae0ca32b152a32dd364575717b57eb9b4ef07b44c4a072a75228cb6f63612ec0688f0ec4428b1014bf1b07dd087540189d7cfb49e3a1c7bbbed4f94aea1c5c36edadec665bc62d11500bba46f17f6eefa4f9fc8ffff5ca71305b4a71782dd7e012f045c344bec77cafb4743a69e82f47ebe73f6f5878cc64ae798e55dc175b1c38036c8b10c6885c0292e165463665d5cda75e602d66c027b0d371a5ea645a06be4c4e2328adddde5b5b638917db9ed106d10d220f828b5cc5345484712fcd6cc17feb09bde89690e37300e7d611b0112d6d028f61882faac57e20c463684d41a0063b716f5a84e1003668f9a14a25eb011b632a64d0eb5b9e118698f063f991ace95a9d66ae7426f3b11d267aedb484954bf7c8e04ca3dc3659e0a41f76dcdfbbbc34b705f586b3dd71262d9b56075f89699778fc5e492b6298f780cd3b7b1696aa34ca540855ae6c870e809924a74c2277318cea252c4080723e239d492b3d8adc97ba9ad2f134c524265488b63d73412d3be92b850fee2edd94f7463f069668a0adaac0d5419e749b13a17b924e193e31179f2d81339cd53eecb4c71e775a813867def34d4d7ab5c971a76f4b8e725c19a69ee8b801a84ba052f524b6cc77b07512a55664fa29a0bf95ea27c67d33b4eaf55e0ca08cb7b032f16aed75b3fd705ef8abcb880ebbbf9f8efcff13af4af0e2f0291a91db6ab75d3de1cbd9e94e1492c198fc95947be4b4e538c1490b8c69363e60b9d6598c6676f8080ed86929b38e798c511b32b71f45631c000bf57323b6eb62cd2198dc8f715476830c7022edab8d0613248b540342b9254a53cd20325166778ce5bad47841588057e206af14606b901a29dc880188e9103f19e0a25f3b40497f33a05c647e43f973457afa5482c29c3db718cba09c3c75d1a7c00ba2a4af1d84a8eafac9464097f188917c508a9539c70e1f9a3a24c9c3f1f58b5b8bf09127f410a715d14b36a05f44492c2c6231f87df3d85ff7efb141d4e7e6587c36d23f8f5eb09fc092f7e9b5c1e0ea3c307c34fbfc1df31ec3b0f1e0d1c97ccc476b145e0bd6966928247b0db462703d002dbcb8af0633059c5b7472064a2eac9f1e1e36f0e9f7cdb4e5ac28f37f9be26eea1c692677a2f4744e23c14a7f46e04f8c16db3badfd5ef86d85d26e0fe4a73bf9c40f7616c473e600f3aa41ad89704e38d91bd77b1ae14818e4ecda749f6bed4eec4a2076e7c2eb6d0861fdeedf4b1fdea58a6eca1027815970bd48fa83a50a164f81bd412adfd6cc9d93a7961b77d242a4d19378c42cbd014dafc7ea3d133febe1461780cfd9aca541aefa5b67a2716a94ae2852347ea8d7cf601213e27d8e093dac11871ca0bec03f7057641ed9e322d09edb2825a837507fdda171a9a275d0c768ab7c75a2ed5fc0769eb9f906f8effeddb49ab2e2dc1892f4ab4a31f7dfbe4efdfb41c798131fa318b178cfc0df04b5c0fb7ed86431179705478ee47ca675d2c9fd7ee4ca134f0fb91f6c3b8254e22dd45ac7c4c668783dedc3e434ddf0e57b68fd960d99769d27db3d379d030504f43d4183e4f50bddabeb14577085e3c2d2a7f581f57a680e8957da2bf600306df59ce69790d6d4ca2649ade71fd5e59d3b166a287f1884c6b3ab4bb2ab1b835222f1d6f6fab60685c014c9d00ed1b410acd33053e74cdbeae3155916af65c35532c38d0b0ca18a0c06b9d66b7f0ca765bccb2e9f3a6297047e38d089978781347db458f5d3b174177ef5b04cf7504360de81865355e719b4cdb9133472cc7380e5b5d9475e84a91a184a5bef465772842102bbdc74c8b26b59252567a67998c16ad30d164a88f3a931ea1c652938acca402f6df7485d71840924724af0c62927491723642a03a64aa5e35b32f542bf4c7352de21f89809ce8779dc5d7ac58c82ff154743dc467279a9a47c775640b7b26e61317402318db12b3393449a6c1633dd692d11c640b5b1d48b2a79236f1cfa74fe489da6dc4259e8a4bc77e301861f2e6797d7278b304154d42595f9fbe3e23f045aeb32d4364ab9a784949388c78a1c81194440c5fca0c1f6b9a4c75fdf0446150203072c985340f5585ec7d447064c01283a6263668ac0505c28b57c50d2d4f4155a342bbd39f5554c7e0411e438bd87c4cb19e6f854d7b52295f577c24dfbc740885a8865e7f4c6f6912362267b4daeadcd63b8f3541d334c75bcffde969eb45512804b7d19dbe8df498789f5690589e83967ffc0d39d4ffb10e4104e4f8c4013a71f5dacda5c743f46403f28f741fd2fad0740f627eee474c2715f7e8fe2777f7fafb0a253e3a5bcb03b60976c9d98ae233b1ff4272261e9fd0fee9e0661bf43e72b60f657d48ba8f98f5a2a593887bf47ef5270819989925ff4c193388775e1ef6741a6737f186bdae56535a7e15f976bed6a293df8b4d6f81c55f985c17b1fa9d787189282e8579a0f82c124ec717bf8e7ffdf572dc3ee092b06043882f8d5970429e7838a38ddec99d41144563f49624426902e8c88f1e0fd519de78b07beb848d1e8ffdfe7772d1fbd2c22e260a341706d71e5deee21566c6e5f75b99aeb70405e83664fed7f162842f4bf9a8498493925ed3302844c44ba6b474d1a593215f3a7f4a82532df14075ae9e526f8ac50bbdb3ac4aac1ae1d7b6d313d4dd48c07da2be6a5ddc6968e96a8deffe02e033293ce8c49e0c38bde503922f8e447ce06460c6f52e14ce08dc9ac1f36763d1f279fd266e179baa3cfda31227d61a93ba78f447058d81ba7cf13352a28d224bf3aba75b1c820d2342b3d588c49c97e010cd7899b58512cba207206d8c962caa72b64ce7da1d407ce0fa97387367bc8837bbfa9c91d71f79d405eab1ca123cc012363470db092c2903cefe825029dfb4b825f2702656532d30a59fbb3703b9ec200e43c9082ee3c88cc45949e364f359e48970aa9fbedd34e0b54381f08b72c72a5132d6f0c76c736725a6768ab398508c95a4892ecf22d6f67f42ed9e369367dd52eda6c07d3c940b94dfa5c949f0703b6247b81214efda37b89a2308238f86ba207b8dd0b7307a0db5fef8ee18895c0120354dfc1df4a2d2330f0d91ce1ad791e79fbce2440078ef0df665606f791fca0c6a04be68c957d917df83395ec3862efebd9556c8c453a38e8a14765947f12c2b980b8f38046c95dfd5efd22307ff1b0000ffff010000ffff0a471d467d660000") gr, _ = gzip.NewReader(bytes.NewBuffer(bs)) bs, _ = ioutil.ReadAll(gr) Assets["app.js"] = bs @@ -73,7 +73,7 @@ func init() { bs, _ = ioutil.ReadAll(gr) Assets["favicon.png"] = bs - bs, _ = hex.DecodeString("1f8b080000096e8800ffec7d6b7bdc36aef0f7fc0a66b6dbdafb5a33769266fbbaf69ce34bba752f891fdbd99e9e3e3dfb7024ce0c63495448caf6acebfded072075bf8c34bec57bda0f89471205022000022009ed3c3f7c7770f6f3f11b32d7813f7eb6f3dc719e8d46e440440bc967734dd60ed6c98bcdad57e43b7a2e26645fc819a1a1072d422df924d6422ab2a618237acec8c1bbb7672747fbefcfde9d9c9229f7d9fa10c1edf93e31e014914c3179c1bc2179af181153788d2ba2442c5d465ce13102973371c164c83c32594067e4c7a33347e985cf1096cf5d162aec8e6ae2c2d309235311034a3c3438fc7074f0e6ede91bd3fdf099e30055481cf16938db1db07040c29943a36877a016a10bdd873373cb458a84ef33b93b384d9f1c68e90f88eb53a57607d8c817f47c802019f5c6cf08d90998a6c49d53a998de1dc47aea7c35c81fccb58e1cf631e617bb83ff72deef39072288a8e6139f0158e89185f0d6d19b5de6cd58e1bd90066c7770c1d96524a42e34bde49e9eef7aec02d8e0988b0d209c6b4e7d47b9d467bb5bc3cd1a208f2957f24873111660d59ad158cf85acb5f079780e03e703c7e0b176634db88b90e6924d7707537a8197c30818397e862f68ae7d36ce98487e23d7d738ce6f617cdf424f6beb37373b23db2aebc0029b08a19596341ab94a8db2ab61c0c321dc192478a034a83963da6268ae895e44408466571a5f364f0899086f41aecd4f4222ea79809033115a8b609bfc7533bafa3a793605a29d290db8bfd826836f997fc134772979cb6236d820d98d0db22781db1b44d1503920cd7c6a41dc3c337f62ffffcdbfcc7a0ca89cf1d0d122da265bc32f59506a3b44649d408442451414e0ba09971f59e88b0df2a308a90b7f41f3940081dc208303501bce24a078091866602a5d501036946e0ff5c61b6b23ba5a8e5174ea4f915fed4fa73020ed4f33c8de52c88d4f33c85ec68589901e939677a1082b74f962262a6cde269b5f9747ba70c78071becc073c128aa3466ca34c814e5e543be04a3ba170263118059d75656e1b817350e02c6a951781303f0ec2ec1d8fabc8a730963c045967cec417ee798a0788b6d56490c7543e32c131661344277f30a1eef94ca2c5c35e8404f46793b5172f5f6f9017af36f1bfadf5afcb1c94d4e3b1da262f0bc4a7fcd98aaec8abfc7ecac81770fb457afba64a17885938f428188e8a9cfb6c0ad86ee6825e226f6b33bf6d249ffa7c86fc4722bfeee655cae0d410d7f98b63419ef300ad260d758326c01c91bd7639e79a394667f0d54b3034256b70c92cf75f6d6e3642f26a86c5d2ff02cc4a1716de5005d4f79d12175b114a5efecf80799c92b5805e253cfdebebbf4657eb198044af60968dc04c80488fed9da2f6658d0919fd05641fe65a4d28c96c2d81994ca3d966c3d9703b6b4bfe024c9160652630b192680e9c56a0540488109704876a22193d57380ffb025e972c9202def14104470a664898d02fb99e17215a795243f2975176bbc204096c4a47e52613c79d915141988947762a7eb6632834f30f7831e44c44a02a92a00380f7427a91cde3f4029fd83f685ed29f1e9bd2d887e916fc0066daf1193593a69d4b763c9e01c1399202d1327986b3106845b90f6722c1591a8c7778304b9fa0dd1a10255d9cc61cbc72b65e7c65664f6267f7c1cb1730b71ad9b3bf4763924da63b466c526073ee810175ae60b62bf76f27965833e8fd3760163c1a37cec206dc3869915212fb053a52ee147e1a85cd08373338ba501c26f0389a81b96147e1540c437659e08f69081ea316613255db8bccbf9ae830ed007fc2bf7c44ac77601d357001cfb38ed6d6cb1d149930f317d11c7d1392fd72dc39bb90f0378e0629d59fb340658a9f03015d08154c0c2cffe55c503f86ff99542015bb83ebeb22b9d842e99b9bc1f8bdbd0b4248aeff9cb4fef34d99c9a6a39165418193239f97f99ad0e2491179e2322c534b13c6fc69506d07723d9ba197890626b92842a9d0387ee3716d11fcf87938017eec4c325107d5d5c8ad09fca3a5fe7341c9fa0d5818979034648c33548b630856f3844502c7b073e0e69e5719b12a097b9e47101c4ceb422e92a6887199a95d18a17ef4c208b872c92c673ab042905df8648ce417dc43b559016b9815f4a9b5daaa17eaae9875a09d82bb1d1b797f2e7e9418f67561338739e6e8f02179a8e6b14601ee85b4984e3b31b6e06ec73f98c03595baa7184ea1f9bc039f130bf12139482722ee87324cd9523b2c88f4a24b7b10e612a47746b1df6c3df3273b23a0c6c48923985eac3bd03293dbf6e83f7cc3a5d2e0085c6e1011fa0b02a1ef6548f89484cc654a51b9f89a243c25975486e83025be46023e99109f03fc299f1d85388567661a00e78e430919df093cf0088ab36be139f081f9c4fcef24dd9667846a5be4b5675aedcc5f16e6b4521b138a0f521981789279cc03cfeae538e35d7b07e877550d7e5418c2b33966769007b134de14995345268c411c412f30cb136bf0f3c0077521088337bc61eeee9020c66148104377336964723de06094410f774651593c3ad1c7c0b3e2a5f4f053d0395141d1472111c4898967f4a89a5c75216a22e583b64df9d5a06130cb374a97858be4674d39d82cf6c1910659ae887e49c85378f8623e3d9b389aaca1f78d41d37a0ea151215e2fd30707e3e16840b887fc4e7ae04c2dd78c448baeaff195037cb086bf864787e0189b21844b46b58589610dfefd01d0aef89c4bb5aed40e5a821236a95ea59971ed4a9e1bf0c1a7914a1dba087c32ccd0fda9446fea0de24d20ec331e7aec0a1dd21af81e9e72d1e122964bc3432e996b86ef37629281c754cf6f6ebac0e7aa410a118b8579aaa98e8bacafbbc9a940d21a37d1449547a22ae2c9e0a4a251e44a79205206938cd3b5defa98be6ac36a40de3c163629507c85543264c93544e83cc2a0ae010ac2b14170d3337c2adb1ee1c379b781d2b4cb6d2c2878c15d03d84b3af64a416b125b260277746852c55e2b4da376a2ee4eaf4d5e3822626107dddf9896f74070a66177a23b753e0270adfd5f124efe3ae42104b0bc4d7a7ab325713c1cc5675d7c7923a5b8235b9a69f89462e18a00a2dcaec00f7d98b91421ffa7714dee2e1b0d96f2537160e68b4957ccf6376843fda688fc3ec46066a07fc37da6602ea2fe255da8b7713061f2e6a69ac019730d1826dd6f901658fb0b6d604d784851fdf63f1d7be722e8e2ee0fc27d38e6fa08fc7e786b403d21d6babe883d0723735fd0ae8cd23b884cde4d4d347217feb6b7a72d863a8408ccf27f4c36cb590a7189e1596605b2d4687d147320771d4484d43086357fac4099e9a08bb8dd5da06ebcd981ce26d96ff309b3ee3e993ce1ea548714fd4815449846571f448aea09eb84ef86e3271089bc0b7df0537f66aa8b8fada09e5760bd154f7748629877997bcebab4fb68160ac9c83193015798a2579f60782c128883ba8f112a817bca836416041dea777a5176e1f027aee7779be24c87ca2c3720a76eed3ec193b6200b1e99c5d686d0b516959adbcd31727388485bd24f91e40118e4a625325c16c809ee91808238c7e57e974b9fad145597833a71f568386372d0689fc8e79f93beb320ee0f93dc630db360b77588fa4cfc4907e4608e28ab65f436eb585322e216e9b762f20c97540a6933232bf796370b0178bf8459b6265bc890e1db07d31926c97e49d798d7d67f7d3a69324b5e9a1fc32b07f1ecb35651f4c5c1350ad3e5f384666348ee9899caf1e9c8490183ff484bd5d3529d29f3bd1fc97bcdfd7b09c5d502dcb960087f9e4644a3a93a571d0c38387e7fef0c70a318fc0c17f4ab125fc06548752ca9bfbd7573f3e77f9358ef3069464ee0ea6e0c82be43e622a3d52f5f68a1a9ff05e6ad26114a4cc04057dc9b1bbc5a6b697b149a68eb0c2f8b42b6fea979d96bf27c1f3d241f45acfb331202f8fbe764eabe247a0028ef85a180a883bdfb9e3cdf2531d8c6290f5bcd616f9ee3ced3b9905d39d6b477728a5bebef946ded0c3bd2ed01b86bd1bca86217d7c307cb9852df6df4ceecedcc30ed17f2d4faaeb893cf7bf63d9daed0f9a7b4eb5d8b2d7fb73bcbeea664c9f6b4a71c0edd36f6315e68eaa63d50f87367efbfd712b521c22c51e75e679b032ef49c49245d3da575ea0607fcae0bd4d5fd770d301addf5dbae562384640da6e8fb3fd06a7595457fac56971ef649cdf2b02b35bbe77940ec9df27e562e1050492a7e476b932d7af17bf6fa133e0cd10cdb45eb4e9fb5faca1f31402757fb8402d5771e2422f8f7f0f4901500e8ce4afa87cbf78009dffca74dfa8ecabb2bf196d953a39a771b337c66f7280e7d16cef4dce6ce3fedb6e3264fb2cae4b7427337371677d97b5cf08b811fe81317d8823d9b334fd7d7707778c6030666009c55b63df8763b08b62198bdb9d94e4f46810b39959c859ebfb03e35be6446c0e8cfc3ef362e78a3cd1b8f8b2a60f6fa5af9e8778ea1cb417af7fd27d9675cd2806c837e76980f6fef9b33dcfdcef8a55bb4934b409279c921f0a28bffacae16b5437e6d47e3caa7e10af62b69629cd1c468615580ed1190a85c114bc58659258261c8f4a8ae1ba771846749c9887c23641cb49e87e8d5b382ae675ccfe3c9109cc5914bfd603eca30184906e3a898aa63f18339df464e6c83bb21b1847c17ba9909b91879c28dd1974d8e60d65db7c2e3076509572a6e62c87ebce47cd43d74dc2008b650c641fb79b2e5c75ecc322284cd429e5b9b884baee007a51a64af4cf8695b195b3220cab8f7987bb31937341e605caf80bac0f0dfee0525c6b6e3b9c82f0e321fccce575f8091cde8c822fed241918482fcec87626093f0d0c78411f4e73708208cd90d53258492480a70360273aa982c8035e428d458394493dc051c82c06ab900789fcf99eff3e4a46762ba774686e49c3bc9e90a73f4a48535326b9232223db891d39fb739c35b18bfa73ce4e15464e48f8b4df761366bd89c756cf48d5cd2cc0b49296923223d7cd64a427ad82d2500cfb365086629dd849a0c1a162ff199664d83978f5a7eba07de33e3366cc3f3e8b01543ee7d0439f3a99c01060b4c1d95f8077a2554fac4d2901c242cc8a059303f02ebaef994bb464e2b62483e0f3caae65f171345f9faf57a2ea78549e112784ff03f9c872b053ccc252e89e194717d1d2cecfef57c86c383e0e9ae387898cdf2f61d5bec804023076c42300929f8a6f6acf847394ae10d468dcc34d4a20f5cd3ea34a5943ac859afb6d9947aac814ef3d0f138f545a20b8e3f6bf41eedc3a46a4c8b0769dba057583d123e7f55decc845b1c7707cf115910a73757e0b519552b014a9cc8fc70edfc550fa0bd60a2b7df00b4eac3d468abf9a23b532183a49600fe1c24657650d2de98715a929ec517d2fd19c6bf3377afbf00ed728ce5fe028b23a48086a1096f879f25bbe371334dc3538f4bbda8675b777c3a01f73e6718746ed104091d5b2d3a8449065bd5dee56184e7f79225981a87739251dad3c46641f20da149f1a58a3a0d0a257d0c17ccfe20509658625619114be27aac0bf431e6b853ccd0ef6027dc8399d1a0d7981b4d23a6169958a2e6262f51c3a1a4e885bea2142218edc86a785316b679575fc320da01feedb7a60186e818a9000cf1d46568470e6750635e88993a9b8a660d8cd08f4972ce7a4012b517f6b1595230e086e41439a04c1130349df813800a535c0a8cc91a373b10bdf5616b66bc4e69b3caa310afdd920110fcfc348739c8d665015f018f8a62a30d72ce588474071c483065c44c0d32c32c73da149803af812895a857b81d4c0bb10a5d2d2368f4779849ec125d2d8f238c1c9e9305fc263e0dcfef0d13c3d0b74663ba9131920458a748798229737cd717e2dc6adf901c693c1e18fb9e6126f9f2852991465d14425c148021717185c18eb39812702be09915abd0ec22511bd6af5335799b30f35222712d5ca884e6ed6b2d757bdbd33c52dc17668c23ba0dcbcd63e403117373466c77f0ad08d2b5fac42222a8267bd8cb0052bb3fadd9d045f523df4533746a4fb5874ac3c48ce39018fbd42eb87eacec98a1ef553d5d7dff4ca5763d0683adbdf4e70a9cf516c04aee1a56417889a948af69bac08307d6fd42f6e79dde760c325c4fb5bcf558bc31261ad76f28443e11a88b06351bf068dbd600ccd0c4282827158c7bc4a4713568ac0586632e31b135c8d7c2965864e9cb3d46706784b056f07b1a525abd8ecf6799dcc2e9167ac192c221e5212c98a4cfb2438c77cf6e9d427f4bf25bbdc8c8b27066bd1b50c6c304096f7a9df90fc445d761af030c767a20daecd2a04d4fe7d653e64f071d049918df9633c0a3f9c50102c987f8af776d179862e3aead898706642b711db9c252d230ad30d01d0561ab271705ad18fbf42c7f540f8c560b879a1643bafab9bf580937f877c64ac5558da6e74dab1b4dedfac45c394243fc5989b91a9eb6c45ca66f3b079a99cf36afb3bbf9407de38c684026e158c63c9ce4ca736492365515135b1386b464424bacd6312f9ed8931985c02c0ef9c7183797808242f388a2c717ee0e46fff30b75feb9e7fcf7a6f3ff9d7f0c7fbddeda78fdeae6b351eb446ae8ec175599a6cdde70c350658145c3b33cb23ac5ba17c01d9b56024b39b559499295e2580cc98f492081f7150c06c612b66e9f75a8cc76a856077e35b4ad136fd96b0c9bf1d3655170b2c0c6b6bad78e8b714c9bfc37a1d4379ab90d4e8970ad8a5216fed9e226c5415e7bfd2a8f618c0be6833fb5de1cc66ca4318c095b5006f09f07d4ae0dd7374c1c43d69c75f314770b4b654a5faffd63bdd447e82f9670a5e6cad99bcdebec77b37258e565999db3cfbb2d5dc5db4f5f1d14ad1cde58c5c019006513f7afd1616ee4523366dbddd290655539727bf6a8d6c932b8cd3ed9a7b985c26b8c0bca46294d679813f9186700f24c0ec94f1cec1208bd2b998938f894709d87f50c2784214165d11cf85b88e4d7feb59e669362dcf44755aa3958237c9a15fe203b28def9c9110307d365e6f6f0ce7ce9b44305f9aca97d84ccea6f8bfa6b5d9f0d21b7f2635ef777631a292842c483d21371d5269cad6a689e5a55b4da93416ad1a0fce8786d7daba0fcf6a8fcd29960896968b67ddd91b73d638a69cc48422ceba2164ca50850d4f1f42709b098ab080b795030f158b6aeda20cf245e265aa5f07c54a68b30bd240179e208d403f225943cf9412e9d3eaf8d73eb79fb471d68cc9624fd9309d776dc93a435b9c49c312632713e47bf2e19e0e4731521f966efcc7c59c25ab2867cca12fc5619bed6151935b047e2cd897893ae6b4b9055bb2c0d5ef1dc40c7a181324ef722270a627ed432d3a1d9a299eecf1cd48ed8366fd87f18f9383578d9d292881a2aaea91b6015bb306b606a7a85c16fbef97fc4b42b8edb0250b7926daa66eb4a4dfd8df2e52d3e9d91c7849b87438b9bfe30b51d44b86e683133f5eb29192a9dddb055e0ac6d0011404fd3c300c026c3cc576af21d4cf7e495a3afd3c9e33eeebb7df17bc6a23607bed86265173e7f7930c6ffd3015e6a948a2e7c0180dd9952b85ee2acdbf86ab9445a20995b18f07077b0f5785985225f9b3cf7e2f3cabaad3d460d9e02485e2e9820b1b876b9813398fdbcd1dd42e622024b5de89a8454d1cc50cc03e8e42146b8f71be8d7b18681ed46f867115becccf22fd5043755813716b214fb5b3afdb7f0faab4b2c8925e8b30ba661553b9f959ad7b61929e51071eb9c89d6d029e58550889bf96ec68c8f3b3167ebc2244f85d1dfc2d84e1777a2814f8b9fceb96066780d5703aadd39c48a1018fa8bec6dcc78a599aef61dc08fb0a8947c65a09cf12c08cc1f8b4aab2e2add7911a9f7871f3ec12252faf1839615a4e40339eac9ad20d51ca0d24a4efe49877b5eabe9ca683cbcdfdbe89be0790f169a2579dc9d4a8e21b817d021b10f48d70e0303d9fa2a38ea39b855b2883a88de999d2a6a58c0e7d142c61fe9d5290bbdef2711a8d0bb58cf044e1c782c0fb810704dd6bee7fb23b5de8f054568ab7967053694507a34469c30057e88d91f0e96fed47cec007397e91db2d697095548b766440da5476446b23fbec48fe4dead5852837707aed4717b34c61c53093e0bf34fc011664a838082b412d01b881243e373a54ffa31a606efd66ca963f69836c496c1b32a8b1c31b1bcbd698dc9aa66a400f02e86a488d793cea2568f52993598c3749756b64e52986db0c55e18be098db73a58928b294e3195b7ee2bbdf250a295e27b8c3bdcaa5c2178b7471ea1e8d33f5fc28c125f8fed77756f297a65bcff9d242fa9cabe4cf46c939565aff6da1312be87e2a62595bc3f0e8f1b1889b757e361f18d07655f4bf2e2913cf3c4f31e8cfff6fee896de780a62455f1c3a1c66bd3f9a997baf30584362f7623dc73d25f6341aae2ac97ef41a10b720d676fd880e945297427a8dd4a60ffbfa4e09a865544759a31ae5392a4fd7a2d4caa62846be3d3b3b3e358b8f4045935551ecec87d30e83920c3d36fc1d98e153f375b87d292e15930d2c33cf93c73d2d71e9957b6661fdfe5c8e9a6eafaa8df53dc1c747e47b964df26b3bb4a0b0bd4ee3ebd1c5a6f395b3f5caa11177ced9428d5ebefc7200924a670c0f9f2ff5f9fb1d9bc5f374a96d3e3e027c71a564e00c5a4ed419c8691635ff486fff4ff595b2c34cdb3ed72c06eb60b958c8a4295cd454f2e281c7f1a154642f14e12210b12266e4cc9a803974de64614e56f45a4e3e99cff2e48eafacf419dedfc95ac2aae9772ba1d248684b0a3e969f3af94ea86f3e9c8fff675570574bc8ef994fe7b76ae67fdc2d515ffb082b0b5db98870c7425c64305776939a47b9bf3047378b2b8492bae7e6501a084504a050bbd486799728fecfe464268da26c1118404cb3ada712bb33157bc1d02260bba1cac3721dd91eb9488ac0e0650e7c9aad36c988d119e5958fba96f67954bfcc1e4b3f2fac82dd966733bb6e4d6733c96666af2b9e6bc4f52c37d9fe174f4093fd05a117c00c13da514daeaf016ca5d8d38af34f71e24956762d778e25bbe0ecb2fcc5d8c203b20b5dc4b8a737b92eca4883a645b2b4669e779057bdb2f70f714c7e231f942dfd6b1f0289923d82ed2c168d4e3f1e0d7722fdfee47eece6cf854f76dcd66ce6c5a5b3754b170b47f7c4b197dd7c2beecd68da8f36dbcd894baafa60a36575556c2d954a0d4d52acb692d457c16fa309fb6d34b0192cc8ea67b556874daac1566bc5e6d6d896564fb7264e7123438a30ca74c8e12e058dc09b7ba6b8cfdab4b85bb150f9d0c8b38316a0c7505d5f23c4233ccaf10bfd158bbe143ef791f5659f954b26628f59bd99a9398b8dafa7bfb1be2405e36a6ed7df4c799455692475b413659e0e4fc1d89a5a7e06bab92a7d7e22ad0ce9e5329316702c5465ac558d311f586f9517f349f7b2b81445a12c3a09230cc45418e65b252ad3d238a60e8ea96ba3b403865e385b2fbe1a46b8ad40e9054281d904f306be437d3e0bb789b3f53a02fff3927b7abe3b78fd6a40e60c59667e8fc679d5a89d09f8e099b12b54374f4ddc7c2bc52d73d64b53e581881676343e77e1e7d7e4c5e6d62bf21d3d1713b22fe42c3bd33315387fe3a2d00126253868b0906a3b9b27dab6f6777da6272e79ca58476c8f4a10d87dce26265dc46bcf434fc2dc701887731a3436907a1e4bb27785c70d4fdefc444edd7900ac6c6abbcf4272cabdb96884b40f7cf2309733e73e8f54a5e659e56bfc450bb632d1df81d6283c0e8487a1b0c25b1d99efc0809043ce8266b6581c2386d4625964a99a5a9d2c40cd4e63dfe717b4b197bf33a6392042431ab2b027c5c59f2d829697cce2a1ebc766bf7149ac9498ea4b535d4512e3139a5d8058c4454c0b62966390d49c2b05f633e1c34c3604c11d59f7e76f027742cc240d02ece407781ae35c87c1fc066992fe1724790ff37920e2c352c1b96a9fe87a4db89ec4ee39d3a6df732ac19f83607f04a6e30a6c43e5c6b29e0f69c8416801011181ebc87a748ea78a863321663e3355f5a2910ac1415d3833012cc87eb7f7ba65e83db50d5721bb50cacfb27d64227d9742003d18e7bf47be8cdbbb7f09ac46e4c951e8aed4e787f8433cc2cc858f5b3b06e3f2757b87afc8010c4688e696fca0bd95fa04ffdad312c96517ccf726c0e0ca9d25a3bb017a2741fd3c2a63722639fe0ae92add5f70708fc3d1478aeb70858b964e579563d40d98fc3ea8447ff6ecf577a7ed446d3a86a3760837bac710e9617a029e34f8473432540dc6fbe9f51229b51d9d41d00416b2da536a98f2091f2f940b2e98b6336f421b6e9f1d7eb01becccd3714b4327b35cb778c5413f92f5e8ecc3c798c985f362b8397cd9dd3a63dbe8831ae53cecc62f8a2a0dc0013735adc13fd001b0eb7f010000ffff010000ffff192d18151b970000") + bs, _ = hex.DecodeString("1f8b080000096e8800ffec7d697bdc3692f0f7fc0ab8278734afd82dd98e27af2269578733510e5b8f244f369b273b0f9a44371191040d80927b14cd6fdf2a80f7d164ebb266271f6c3549b05028d40da0b8f3ece8ede1f9cf27af89afc360ef939d678ef3c964420e45bc907cee6bb276b84e9e6f6ebd24dfd10b31250742ce098d3c681169c9a78916529135c518d13e23876fdf9c9f1e1fbc3b7f7b7a46663c60eb6304b71f04c480534432c5e425f3c6e49d6244cce035ae88128974197185c7085ccec5259311f3c874019d911f8fcf1da517014358017759a4b03baa890b4fa78ccc440228f1c8e0f0c3f1e1eb3767af4df7e34f1c0746858323018de6bb23168d483477681cef8ed42272a1fb686e6eb9382211044cee8eceb227875a0623e20654a9dd11360a04bd18214846bdbd4f08d90999a6c4f5a9544cef8e123d73be1a150f7cad6387bd4ff8e5eee8bf9c77fbcea10863aaf9346000167a6411bc75fc7a977973567a2fa221db1d5d7276150ba94b4dafb8a7fd5d8f5d02191c73b10103e79ad3c0512e0dd8eed678b301c863ca953cd65c4425588d6634d1be908d16018f2e60e202a0183cd66ea2097711922fd96c7734a39778398e81907b9fe00b9aeb80ede54424bf93eb6b9ce73730bf6fa0a7b5f59b9b9d896d957760814d85d04a4b1a4f5ca526f9d538e4d118ee8c523c901b94cf98b6189a6ba217310c42b30f1a5f364f08990a6f41aecd4f4262ea79809033155a8b709bfc6533fef075fa6c0683766634e4c1629b8cbe65c125d3dca5e40d4bd86883e43736c8be046a6f104523e50037f3990571f389f99304ffcfff32ef31a472ce23478b789b6c8dbf6461a5ed18917542110915531080eb365c7e64512036c88f22a22efc05c953021872838c0e416c389380e215609883a9754181d990bb3d941b6f4f1bd6d5720f59a7f914e9d5fd740613d2fd3487ec2d85dcfa3487ece554980ae93169691789a836ae40cc458dccdb64f3ebea4c97ee1830ce97c584c7427194886de42990c9cb7a075c692712ce3401a5a0f3aecc6dc3700e329c45adf6220c2c48c2287fc7e32a0e28cc258f80d799330d847b91e101ac6d2519f831e38f9c718cda04d6291e4ca97b3197a8f1b0172101fdf974edf98b571be4f9cb4dfc6f6bfdeb2a0525f578a2b6c98bd2e033fa6cc51fc8cbe27e46c8e770fb7976fba63e2e60b368ec51501c353e0fd80cb0dd2c18bd32bcadcde2b6e17c1af039d21f07f9753fad3202678ab8495f9c0bf28c87a83569a45b24016c44feda95cf35738ccce0ab57a0682adae08a59eabfdcdc6c85e435148b1dff73502b7d58786315d220702a54ec44287df93f43e6714ad642fa21a5e95f5efd25feb09e0348e50aac6c0c6a02587acfde294b5fde9890c99f81f7c1d66a4249ae6b0958328d6a9b8de7e3edbc2df9331045829699826125b10f94562054040621ae084ed554327aa1d00e07025e972c9602de098005270a2c2418f42baefd3244cb4f6a4cfe3cc96fd78820814cd9acdce4ecb8333122089678624df1273b6684c6fe801743ce450ca222093a00782fa297b91da797f8c4fe41f592fdf4d88c2601985bf0039869c7e7d4184d6b4b763c9e03411b4961d0327d865608a4a2da873395e02c8df6767838cf9ea0de1a11255d34630e5e395bcfbf32d69358eb3e7af11c6cabe13dfb7bb2477263ba63d82603e6730f14a8f301ac5db57f6b5812cda0f7df8158f068afd50a1b707b698b6c2449501a47469dd24f23b0f9c08d0547178a83014fe239a81b761ccdc438625725fa9886e0316a11a5a6da5ee4fed554475907f813fe153362bd03eba8810b789177b4b65eeda04c8479b0887df44d48fecb717d7629e16f128fb2517fce42950b7e0104642152601858f1cbb9a44102ff33a9802b7647d7d7e5e1620ba56f6e467befec5d604272fd59dafab39b2a914d47134b8212252701afd2351d8b2745ec89aba83a5a9a12e64fa37a3be0ebf91cbd4c5430e945194a6d8c7baf3dae2d82ef3f8fa6408f9d69ceea20ba1aa935857fb4d27fc12879bf218b920a9266187b39aae53904ad79ca628173d83b71bee7d566ac3e847dcf23080eccba908bb429625c256a1f46281f833002aa5c314b991eac10641f3e3921f925f7506c56c01aac823eb35a5b0d42dd15f31eb43370b723231f4ec5f712c3be3e6c7cb031c7470f4943e5271a197810d26236ebc5d882bb1dfdc0806b2af540369c4173bf079f530bf1212948a722198632986ca91d16c67ad1273d087309d23b932468d79ec5939d098cc6c48913302fd61de8b0e4b63dfa0fdf70a9343802571b4444c18240e87b15113e2311739952542ebe26294dc91595113a4ca9af91824f0de233803fe3f3e3084d78aea60170e1385490099cd0038fa06c5d4bcf810e2c20e67f27edb66a11ea6d91d69e69b5e3bf28d9b44a1b138a8f321e81789279cc03cfeac55e4ebbee0ed0efaa2bfcb83485e73e667690068934de14f1a92253c6208ea09798e54934f879e083ba1084c11bdeb870774898e034a488a1bb993632b91e7030aaa0c73b93b8ca1ebde863e059f35206f829e89ca8b0eca39018e2c4d4337a5449aebb100d960a40da66fcc3a86532ab372a97a58bf4674338d83c09c091065eaeb17e85c93378f862619e4d1c4dd6d0fbc6a069bd80d02a10af96c98383f1703c22dc437aa73d70a6964b462a45d7d7f8ca213e58c35fe3e323708ccd14c225a3dac2c4b006fffe0068d77ccea5525769072d4108db44afd6ccb87615cf0de810d058650e5d0c3e1966e8fe54196fe60de24d18d8a73cf2d80774481be00778ca65878b582a8d8fb864ae99bedf8949069e50eddfdcf4812f448314110b52584140e8fa96c2679aeaa4988356a49bbe790ec4b9f219b8e44974111907f79dfdd174ba87c352c09d31465067f6c79d60b934b2dafa2cfdd50fad0103b4621b5375e06032b03d1d11b2767d8d704f987481a3e89c95a4e0b3f576ec56c69c7bad4cde8ef631347e449cbb9ed4621d7b0b4c6255f2eb2a355506992a2a4b6155f0338126b964377a1b626aeb0deb09a076d9b749a8f22ba496914daf9596dc88403b516d5aa96b5eb5ec7a840ffd7e830853db6b0c7383520a0f00f6928ebd4a9224cd65a40aeef8c82c4d789d639a740feaeee3b5c93247c42cea19f737a6e53d0c38d7e8771a77e6ec8610ca05bfa494fc75cca34b1af02eee194c96d4d175149ff7d1e5b594e28e64691fc3c7648b7920a67d11f25fa10d0ddaf21ff74184b981fe0d0f9802cb4f832bba506f9270cae4cd4d437f730d18a6dd6f900e58070b6d604d794491f90e3e1e797d11f651f707e13e1c7103047e3fb435a09e1069dd40249e83799040d0befcdd5b8803dfce4cec7717fa76b7a71d6a2a8278d7d27f8f6c567342e20a83e1c229cdd21ecd592c80dc75121152cb1c36bc91d2c832a76be9e0767761747b9b3de86c9283e5ce97e1998fc44fb816d8c3453f5205f1bc91d507e1a256571fe96e287e0a71dfdb28002fed67a6fae8d809ea590dd61bf174a724895c9fb917ac4fba8fe791908c80cf1e72850b22ea234c8f45027150f7314315704f7992ccf2ab4383bec58a33bb4cfb13d7fedd4c9ce95099c51da4d4fa6ddd2778d21562c023b3b4dd12b835623273bb3d23d11e20d18e645f2c79080ab96d411217618a010f48f78197eff2a0cfa1cdd7e5ea8b6fbdb87a349a33396ad54fe4f3cfc9502b88bbf124f7588b15ecd70ef110c39f76400e7d44592d1b6fbb8cb585e1b74876965395b880554a521a5eb9b72c6504c087a527f315f0523e12df3e9ccd3125f94bb6a2bfb6feebd3494adae165d948bc7210cf212b43655f1c5ca328dbac908ed928923be6650a7c7a323240e03f9232cda44cef02c5fe8fe49de601ff875993b9a32159803b178ee1cfd38868345517aa87008727efee9d006e9ca4e9ce5a7c019711d589a4c1f6d6cdcd67ff22b1de51da8c9cc2d5dd08047d47cc4542ab5fbed042d3e00bccda4c63e4989081acb8373778b5d6d1f63832d1d6395e96996cfd63d37290f17c173f241d45a287131202f8fba764e6bea4720028ef479180a883bdfd9e3cdb2509e8c6198f3ad5e1609ae33e5f5fc8be0c63d63b39c3830c77ca35f6861dd9660cdc236a5e54898bbb0f46cb88d2dcdbf5d6eca4cd311d16f234faaeb993cf06f63d9badd0f9c7d4eb7d4b0d7fb3fbf8ee2664e966c0a71c0edd36f6315e68e6a63d50f87367ef7f80c76d9d4ebb21a0f03abb1c70a17d2671e8ea29ed0a6871c0efba1da0bedbb10546abbbded757ebde809eb565d43f650b94f636c679c050164f5905ccec35dadd255b9b9b83d79edfc5b8c9e8a830a6640d5ebfcb3af80ab8eeac846a7575bf6e94bbbbb9c3b27e330db6a4cbd1de1157e9f3657b271e6cfdbdcef67facbf571e0e49b7f3a82fddbeef7930d83be572adda40409528ffa3f9de220c418bf6654a41fa7c29a27b89f106ea87fac2d2bf79b057a7d48098affeca1fa15f2f55874480f5771e2410fcd770f0911400e8ce9aec0f4fff01f3fcc54f9beb9f54b730e32db39148b56fe967f8cc6e041e072c9a6bdf2e997cdcbdfd6d01449dc86f84e66ea12ceeb2c1bf140e013d30142a91057b36070bafafe1eef89c870cd400c4286c7bf4ed76186e2b35bab9d9ce8e1f42e430939c455eb0b0a114be6466c0c8cfc36fe92f0521edbbfbcb226036d45bfe187658a8cf877afbfd47d9cc5f9180fc144c7e62166f1f984209c30ed266e720d24b40927969a5854664d77392b6ebfc69f5c869497fa54d8cbf9a2a2d2cbdb13d8121420c9248c5c679b98f71c4f4a4291b67498c07b6c9847c236412761e3a1ad4b382aee75cfbc9740cfee4c4a541e84f720c2692c13c2aa69a58fc600e919253dbe06e482c19be0bddcc855c4c3ce126e8eea6e79c9bae5be9f18392842b95b411e420597208f11e3a6e61045b8de6b0fbd0e6f2b36566f598e92b212fac4ec49576f0833209b2572642b5ad8c2e1911650e4060cad5265a51798072fd00a30b0dfded065862743b1e3efee230f7c1acbdfa02946c3e8e3cd153398d958ea03860a518e8244c7a4c19417f7e8300c298d432a5782889a50067233447f7c90248438e238de57934295cc03130ac960b80f7b9cf8280a7c7a953d5bd3331432ea8931e6132e7bb3a4823f3261921b2d351c5f88b36e7780b43fc8c863c9a897cf87be5a60760cd5af6e49d1879235734f742b291740d223be1d93984ec446936003c349a239867f2d3d1e4d0d2788fb54d5e316bc5113a78cfccdbb80bcfe3a34e0cb9f71ef82ca0720e182c306358a11fc89550d9133b86f4b46e8907cd3e8963d0ee9acfb86bf8b4c686e4f3d0a3caffba9c1f2cb62dac177c5a320a57407b82ffa11dae55c93197b8128a26e3fa3a5cd84dfb8585c36a0bd9664878985b79fb8ead2842a091033a219c46147c535b90e1bd9c64f0469356629ad1a20fdc90ea2ceb9439c879afb6d98c7aac659ce6a1e3711a8854169c60deea3dda876969a60e0fd2b641afb05e77c17f593b9be48babddd1334416d8e9f507f0da8ca85500a54e647182dd7f3900e82098e8edb700adfb308db1357cd19d9990615ab0037f8ed25a56c869afcd3c2dc9cae30bd9b61ce3df99bbd75f80743946737f8115483240e3c884b7e34fd32301b887aae5a9c7a55e3493ec3b019d827b5f100c3ab7680287ee59293a022383ad1aeff228c643b269d2b541e162c8c8ed59eeb3c4f966a06985b39a388d4a75b30c15ccb630109644e262022296c6f5587ceb7dc27183a019bf839d700f2ca341af357d9a454c1d3cb144cc4d5ea2814345d04b7dc5194450dab195f0b6446d7b16bb6512ed04fffe7bdb0443748ca3000cf1687364670e2da8512fc498ceb6ca7423c3f47b242d663022a9d80bfbd8ac2419706372861450a6d21eaa4efc094085a9e006ca648d9b8da7defab83379de1c69bbc82313afdd920010fcfce4830db2c58fc057c0f3d8d868835c3016e3b8430e4330b5fa4ca13f432c73a41b8803af012b5546af7017a01662957175cca091df71ceb14b64b53a8f783a5318fca6018d2eee0d1343d0374662fa91319c0458674879822973463e10e2c24adf981c6b3c839b049e2126f9f2b9a943485d64425c378029717111c2ceb39811702be09965abc8e490d586f5eb5483dfa6ccbc94725c07156aa179f7724c53df0e548f14b7031ae5886ec372f518073008df1c8cdb1d7d2bc26c8b46aa1111549b3e1ca400a9dd96d8aee8e2665d85b21a3ab3a52322a5c130e33ca4ca3ed30b6e90283b67e87bd54b18dc3f51a95db2c1606b3ffbb90265bd059092bb8654105e622ad26b3317b8f46add2f247fd1e96de720c7f54ccb5bcfc56ba3a271898742e41383b86810b3118fb76da1cd1c4d8c828aa182728f9934ae064db4c070cc2526b606fe5ad83aa62c7b79c00cee4c10d60a7e4f4b4a6b508d8a3c935b3ad4442f595a9da73a852595f4697e72f3eed9ad33e86f497e6bd030f22c9cd9e60028e319929436830a6b84e2b2ef8cdf21063b03106d776950a767b6f58c05b351cf804c8c6f6b8660fd8bf20401e743fc37b8801298d8a46f47ea9101d939b89e5c6125699895f1e88f82b0d5938b82568c7d06d6186b0646ab85436d8b217dfddc5fac84e73a7a63a5f2aa46dbf3b6d58db6764362ae02a131feacc55c2d4f3b622ed3b7b581c6f2d9e64d72b7571168b58806641a8ee5c4432357b59169da54d5546c8319b23a111db15a8f5d3cb507724a815912f1f709ee3f010185e631458f2fda1d4dfee717eafc63dff9ef4de7ff3b7f1fff7abdb5f1eae5cda7934e436ac6392caa324ddbbde196a9ca038b966745647586c565803a36ad049a7266b39224af77b318931fd34002ef2b980c8c256c714ceb50995d709d0efc6a685b27de92d72836e3a7cb32e3e4818d6d75af1d97e3982efe6f43696834731b9c52e65a15a53cfcb31584ca93bcf6ea6511c318172c007f6abd3d8cd9c8621813b6200fe03f0f46bb365edf30710c5973d6cd53dc242e95a92fbff6f7f54a1f51b0584295862b676fb6afb3df4dcb6129a5657ace3eefd774356f3f7b7554d6727863150567005455dc3f27478592cbd4986d774b4596972229f4d9a36a274be02efd649f161a0aaf312ea82aa52c9d610a31609c01c83339263f71d04bc0f4ae6426e2e033c27511d63334086382c2a239d0b714c9affd733dcb2625b82f90aa4c72b010ff2caf76427690bd8b0343060ea6cbccedf19de9d2ab874afcd910fb1889355c170d97ba211b426ee5c7bc1aeec6b48ea00c11cfc74fc5872ee6ec1443f3d48aa2959e1c5287041515031aeb5b25e1b71512965a8225aaa15df7f547def66831a6316309b12cee092633294264753cf44b42ac982ca2521e14543cd686ac3728328957a954293c1697cb22989734204f1d816640be64244f7e922b45079ac5d3baca2c3cea4463b624ed9f4cb9b6f39e26ad09968433894cb4e7e8d7a5139c7e132622dfec9f9bcfb7584dd6924f5982df2ad3d7b922a346b61282298460d2755d09b27a9795c92b1f17e9392b52c5e95ef84441cc8f52663a345b348b9df9f5a31aede7341e863fce0c5eb67e2ba286826bca4558c12e590d4c4daf30f9ed37ff8fa876c5715b00ca56ba4dd56c5d6988bf11bea2c5c753f29870f3706a71d31fa6b6c318d70d2d66e62311948c95ce6fd8d2775637000ba0a7e96100609361e65350c50ea67bf2cacdd19c3e1a0f71dfed8bdf33167739f0e5162bbbf0c5cba33dfc3f9be0a54aa9ecc29700d89d29a5eb25ceba8daf9673a40592bb85218f76475b8f975528d3b5cd732f3fafaddbdad3f3e02900e7158c091c8b6b971b68c1ec37c4ee1632971158ea423738a48e668e621140a70f31c2bddf40bf89354c6c3fc23f8bc46267967fa926b8a90abcb18865d8dfd2e9bf85d75f5f624935c1905d302dabda85556a5fdb66a49243c4ad73265a43a7949742216eecdd9c191f776a8e5446699e0aa3bf85d19d2eee44039f16bf4f75c9ccf41aaa8654bb3ec48a1018068bfc6dcc786599aeee1dc08fb0a8947ecaa39af12c31cc1f8b4aab2e2add791169f0d7553ec22252f685918e15a4f42b54eac9ad20351ca0ca4a4ef1dd947b5eabe9cb683cbcdfdbea9be0790f16992579dc9d4a4e20b817d021b10f48df0e0303d9fa2a38eb05b855b2883a8cdf9a9d2a6a5cc2e7d142c61fe987331679df4f6310a1b7899e0b341c782c0fa810724dd6bee70713b53e8c046568ab7967253254507a34429c322c736ff68783a63f335f14c1dc657687ac0d25421dd2ad09d140e9118991ee8fafd023bd772b9234e0dd812a4ddc1e8d30275482cfc28253708499d2c0a0c0ad04e406a2c4c8f85cd993618469c0bb35599a983da60eb1d50fadc822454c2c6f6f5a65b2aa1a2901bc8b2229e3f5a4b3a8f5a354660de628dba595af9394ac0db6d88fa2d791f156474b72316513537bebbed22b0fc55a19be27b8c3ad4e15827707e411ca3efdb325c4a8d0f5c47ebcfa96ac57c5fb5f89f3d262fccb58cf365999f71aaf3d21e67b286adaa1927727d1490b21f1f66a342cbff1a0e4eb485e3c92679e7adea3bdbfbe3bbea5379e8158d117870ec779ef8fa6e6de290cd670b0fb89f6714f893d8d86ab4a72d8780d885b0cd676fd880e945257427aada3cd1e0ef59d5250cb461de78d1a232f5079ba1aa551364531f2edf9f9c999597c8451b46915c5ce7f38eb5128e9d463c37f03357c663ec17820c59562b28564e679fa78a026aebc72cf246cdef7e5a4edf6aad2d8dc137c724cbe67b9915fdba125811d741a5f4f2e379daf9cad970e8db973c1166af2e2c59723e0543a6778f87ca9cf3fecd82c9ea7cb74f3c931e08b2b252367d471a2ce40ceb2a8c597b0877f0fb3921d66daf6b966315807cdc522264de1a2b692170f3c8f0f2522fb918816a14814313367d604cca1f3360d73baa2d772fad17c9627777c65a56f5dff9bac25ac9a7eb71c2a0d8776a4e013f9b193ef84060cd033ffe7c58f574bc8ef0781b8229d92f91f774bd437be74cc22572e62dcb1909409cc95dda4e6511e2cccd1cdf20aa1a4ee853994064c110328942eb561de258aff233d9949e3385f040610b37ceba9c4ee4ca16650b408d86ea8f2b05c47be472e9622347899039f66ab4d3a63744e79edcbc9957d1ef92fe7920609731219148555b0dbaa35b3ebd6743e976c6ef6bae2b9465ccf72d3ed7fc914243958107a09c430a11dd5e4fa1ac0d68a3dad687fca86275dd9b5d43991ec92b3abea67994b0fc82e7491e09edef4bacc232d9216cbca9a79d14151f5cade3fc239f99dfca66cc567fb108628d923e8ce72adf0ec0bed7027d6ef4eef476ffe5cfa52cb6dd56651533c5fb774b15ef8401c07e9cd37e2de94a6fd32badd9cb8a4aa0f365a5657c5d652a9d5d024e56a2b697d15fc249eb09fc4039dc1c2bc7e566701d9b4606cbd9c6ca18d6d45fd6c6be20c37326408234f471cee529008bcb96f8afbaccdcabb154b950f0d3f3ba801064cd5f535423cc6a31cbfd05fb1e84be92b2f795ff659b56422f698d79b9999b3d8f87af61beb4b5250aee676f3cd8c46799546d2443b15e6d9f80c94ada9e567a09babca5747b2ca905ec1335901c75255c646d598fda948ea46b6e0178a4fabec5266852aeba48430103366f0b72aa3cc4ae3983a38a6ae8dd20e287ae16c3dff6a1ce3b602a5170805ac09e60d0287067c1e6d1367eb550cfee715f7b4bf3b7af572447c862433bf277b45d5a89d29f8e0b9b22b15b5cf549cbf95e1963beb15537928e2859d8dcf5df8f93579beb9f5927c472fc4941c0839cfcff4cc04da6f5c143ac4a404070916526de776a26b6b7fdfd799928aa78c75c4f6a904863de06c6ad245bcf13cf224d886a324f269d8da406a3f9164ff031e373c7dfd133973fd1048d9da36f124076fe420d117603b5cf8ddd6ec8045e48c7bbe68edf000c8e961cac7e7018f6b008a1a654d45b7326dbe03e152786a08cf4c6121b82632df819e21479c85edd4b338c60c8982059665eb784f17208d674910f04bdadacbdf18d31c10a1118d583470c4e59f1dfc5854d6e2911b24665b7285fb9498e92b53844512e33a9acd8258eb45cc4adc58609096a6abc4ff731180c11b037f4fac97f457811b26e692862176f2033c4dd02462ccbf41da84e43949dfc3b41f48c2b85297aede277a6853aea7897bc1b4e9f7824a70fb22a126a0613e800aa9dd58d6f3118d38f036202062f030d980cef1f0d1782ec43c60a6f85e3c5111f8b10b672e8004f9efee5eb7cc78cf6cc355865daaf867c93e31090197429c3dda2b7e4f02997477ff02488dc893e3c85da9cfdf92df9209263802dc0132daab5e7777f8921cc26444a895c90fda5ba94f70c33d2d71b8ec9205de14085cbbb364763740ee24889f476542ce25c75f115da5fb4b0e5e7434794f71b9ae74d1d1e9aa7c8cb20136f23795cacfbebdfeeeac7b509b8ea1a89dc28dfe39c4f1303d05871bdc281a9b518df60eb2eb255c6a3b3a87d80a3464bda74c31157e015e28173c356d0d743a36dc653bfecdeec3334ff73a1a3ab9e6bac52b0eba9b6c4067bfbd4f985c38cfc79be317fdad73b24d7e53938286fdf8c571ad01f8e9a6f435b8113a0472fd2f000000ffff010000ffff50785766a79a0000") gr, _ = gzip.NewReader(bytes.NewBuffer(bs)) bs, _ = ioutil.ReadAll(gr) Assets["index.html"] = bs @@ -83,21 +83,36 @@ func init() { bs, _ = ioutil.ReadAll(gr) Assets["jquery-2.0.3.min.js"] = bs - bs, _ = hex.DecodeString("1f8b080000096e8800ff8c59dd6e1cb7f5bfcf5310060248c0eee6ff0fd25ef8a281e4af2852e4ad578a51c340c1dde1ccb23b436e488e369291a2177d8c02b9310af40572e5abee9bf449fa3b87e47cac25d701026bc943f2f07cfcf83b67de7d21f0dfa393f9993857b78f1ef39fd3c56a5def3f78afea479324b0b46da0e9fd3f96ca75a345212e6da168e2dcd8a08c586b73d796fb0f953243a9576a6bbd0ed6f1198badd2abb5720f483be53dabc27fa98319359ceb97d5b5dd891363cd6d635b2faebdac141feb8236d5b79deec1c9aa3595b8b146481687d6976db8c3a0f74106ed83de604cb95ab64b65beed8e30c6b666a5c442b91b1881b4309bfd075368dad14fd37827fe802e71219fecba93a1194c12f2e2d3b6e26b3e57ebbadff2c9fc5a5c075deb3ba8690d09cc9dbd8321ac93adafa50fd8ab93aead67d7903bb5daffda5beb89ddde3a5dad83f8f7bfc4d7fff7ffdf88efe5c62ec5a97515ac5288b056a2b46453282c9e58139c5eb6f09f7f4c3b7e727d8bf5580b9f164a5c9ba09c0ffb0fe14eb9c7f9fca7aa568175bbd8ffe6110a9d664fedaa85474277c1a7763318e8a476a6b6127125e33679a052d80d3ac3251ba53b733e2b3447efa9926e89f1fe3c9a398ce1e5fd520fc4f0fe3deee97a51239735ee3d377376f426e81bad5c1ae9846015b1b24d2385575be9708d42bc7da4b78f2948de3e123207bbb00e13c5ad918d5e612258b155aeb4ae11120e6960979528b45f59c4deadb025fb2e2d9f910a578ec2af68dd6a2d9436e29c8fad5470ca400fec7e367f3c8fc7e6b412b0c8f85c5ad9f66792d3b2b443ba18ca293e83137a8dbd67dd6d9db3eee3687eae61a71f111d706c4a8ba7b083be4943ca0d82998571f1467b9a144b1dbc9030abae8c7530de0e41246a6b3714b0308f58ada54138cc907e4a60c5f3932b5162177feb836aa269f8bcbbb672ba2cbd53484005efeb462c5a0a4a61246c0615a38fa10ec6f840f2a8998953a569df29ef133786042eb0a3e0ef2d40da47751bb8a920271658228037cd16bfd395bd8091a598f9d00d2091c8137c3ba7b6b55c411cb72b38830ab1bc15fed6ac0290b4eaaf04e19d7205c7326e93932c7af599f30ad988936a4f6ae02ea173045dd090b3f1c7508fe94b57182ca681d5da2eefbddcd6217f56a456e96c933d201a59b0076ca07c3150c24f04d0e42301dcc2f3bcd8e9ba86ee480e13c85a14d388b590e37b55b730b61bddd823ed01eb6ee4b014f7927e2a91129c518220294c10d025d24779d5e4595e51298ee26898a1fb935d25003baec58f57a4196e252e6158086cbcd87f486fcdd050ec4b52391a338fbfb83e13272dae6590cb8c73622ebddf595730c4c7bf8380464ebc692b184ddcb50ed1675a825578c395f5fe3d5cfc892d91067cf625af415aabcfd97036dcf1026f23ae7bdf437c648ee376b0e5271553b878026dfe9b32a99baced52d6e269463316e231604d5b9670f0001292f4189693b813199fb3f419e384987710e2e383c059cf0ff828b7f3b273a5b6393778459f27caad653d78242e702d4fcf44ad647c782f100e29827e2b4bf8a2864a831b5cd8d5e1752fece6fedb1ec80a02ec7e81a3157181a71764bc6a6ca2bce2d0423f484a291626b1ef64bb0dfe23999f0543f1134e5d7e7fc5d1b93efdca1fd322cceb862e404969babcf16e2837d8eb651b808178ae1181afd44f2d0ce8d33e33a41708995a338f38312527535e7cc93a5e02a8fa11889d3deddff1297e0ce72e11f28359fed9cd234d540c08c27ce6621c1459e2e539e7eda6fb5d9635409207d39f79c6741366340ec07b598a05d09a55a72318bbd70e8f9d27141e8856964d4266bbd00dd8c7c0c827adafa2597cb43359b71e49e58d102a4e17d95d6cdafddf7b30639402163aa597bd6de732ac7bd0cda113015ae18da5900277d9b684c0e27582ea9553cc627429a0486115417910ea6780c64c5c6125982b5401e83bb9a2483bfaebb158497aa344ebb152e215117e8df05dc15665e40cf31234ef0ecca3235c11751b284271dc206e566b13357105b2f24eb555004e1ba42874603bb31664e2192ce6c5156962a66f7847c38a888d34f1493c5982d43b62e5d08c802c64d02780eb8cc4592e7632314b1d02fd720340983b05eab71bf17f86104b36976d7c32c60580cf8b5f9dfc70c8f57f4cbc826c77c20cd51fe6276c618dc11b2cce8862dec0534731685e6b55707db24c30a1934094e8d677ee8ea994ad3e48a6814c848c07d16220493135dc6f0bb7f6629ec2e05063e2600f2809cc88a6bc546dfc7b3c858718b72d8612148c643ddda5f442dea8a14a9ddf1640705890829dc90ae5825f13c161823248899d0e6be620aff7ef416df9f14b2c02e035119492081c26159165883fb6aa8624284b4d6c02c983f4e84f0e5421729e3ed306c6ad6bced44e80d5788d63b96861c12bda2a1e452798a4c16849c16be2a34b470792ef25885d002640164a2409d3e771f2cfc40f3023652a8d7b220f543fc32f8989454bb12dce5ba420c2a7e703f1cebc87e7f4c542e889785ea258f4d34ccb6a7204389fee391374dba550c48ed2dc293d3207ea3ec186024a801ba6478038ec802612cf0e6dd48e41421a1a21df38d13d16024cb95369c12b04a1261d3970d1ba0d054ee5a0271cc5fea55c0f28c3c2824002725351c9975fd18f3ccfe178eaec2e31321e50dd48166bb70418e22bf1dcbab68919311eca927844c41cdcdbae6cfd79240d18b8183e3dcc1b68870d8afee1be2cd143d0e1a2a128d720628dad978ae8380c25c852b3bc300aec5a60a95827d38167cb51b1d80b6a03f771fa8d9a11de966147598020e58e0a95275459285b3e1e1f85805eefdfd79c187d4b62d16d40ee8fd953c81b6b1e7fac8357281529ff11f974978988a9418527bd56b0d992de200202710bc74714330ac54d0462a83703f607778bfdfef3b77f8e35a4b20c18975f29e7280396d2e1c5e33c883ac206955e06aec1e7e944caf73358ae3fb1c7f61933562a6105cdb46136ebec4b0fb1ac2aa72a7ead73c76b952ab876098e5adf0a792375cd9d0c19c4bb77adab7ff9858b2d9d9773d968c462d032e30a6c4075a95aa4ee1e5d88bddded345006762a41b55cac52faf09154285395482c028441df90c233d11baf21487209f1e1a32c14911b0fef68eb5956ff7c74600c4770a3f40a504948b55df4884ced9b70702e780558463c5a75fc002c85220d5387a7c09d79ab41acd3f59559b9db2db9a2659ae09826507471ed5bc00d40df331e619644c40c046ac3ed236cbdad65a076109e1b5a0b27dc51390e4fc8edb6eb2c608bb2c37447c7a1f2a7e6136f1c0bf18222b82bbd11da0debc5b1cd2f5fa1656d2bf85fea64ceae2390fac521177f034a830d00b961ffbee298a8e88d02899989672e4e659605f381909210ed1250882d7d6aaa4cd21b62a62f504b512b93db8c4886cac9a699f655192ccdac76ebf61f4aead1bc26224859749ad449bd0066ce0c115cc501576afc3b892a15dac5d7d48be7caf01b1233e99e17217a1122b09549ef4f477fa92325406074c14e04bb6d6bba31b0e3775f0fb8b0c775115a88584fd9843ff19ad5a003b8183bd3b40d71f5497487dfca55f232b07cad286978d196c24dd65db0d3a8aa144cac062fdd1876aafd871ad54ec61c843a164673702788345d0436bfa8b9ec4bc47943fa11d311a7001b24c332f9e5b26d1ad82b6d77a1889447aa4db38be0d8c70c17bdc6037366338216921161ae250edef429dcdda490ae4cd7a815d971481e865b216dd84982c13b951da5257d1259781bdbbc7f108973bc7d94033e553e7dff0a26fac801fca2a4cb88a3d4963cee545e13b152f4bd2376858ae12db8f600fd783be85043913744765893694ebd54fbc418367d43ab6ca9e19880e8334d2e8e126ee5b647381e9b8e438e02d1d6831e252cb9516a3ba1762c775467f18bc69d5cd79c68319fba949c3028d2f796bf5009c289a787889be19342ee001d7b15bae39b4444659e241f3c1428492b3abc8708c66f0eec3734c9ef6ccb8efc1fb1e486d5d1836766a4fa9ce81cefd85fcd1f52f2a3df7fd3a3057f14a8c1e88eef078c49468bee5b0efd5f40d9a3d9f18403561c4d8f7996e206004e5972f4e7e3d119062fcf3d97eacdb761a67f9ebaffa462aea899b6a0dc42fcbae30403a72a75730e1063c26e48814a71306fcd264ca3ae3170a7a4ee8405d207a5340a8dd3919f61d6d6e89f5ad55d6950da76772a00f1bafaa49fb6d41db9d7f7b8723613772d38ab0fbc9f37bddee2e182cdafac78f7658aed2f9961e5194af577efd2544f99aeb7a30f5ff1e7039fbdb8f190ba5af14dee6794f8eeea6abee05aefc5f5592fd54d50a1f0894e6ecaa7414f34cfbca608900537f5241331c2cc09a306816da3392a651834fcbbd02f0afac031045c4f0dac60ed2c7dc1ebbfd20c3e1f7340322b2354b40812e339d27d7cc75d5f97d3e7008651d7c1e88210376ec78dffaac3240a8cd9c317ebe3e2feeb2931eaa88c489c1e8495e62e43a5f8c24b1576448163494dadb35b7e5d56d4700279c20a7da3387bd96c8d0cf469ef67e42d987b5e4dc5795f949fde672f97ec15a376421f3ed9b8d96c6328033dc85fb622a7eb4899b8dbe9f8812919398a5235a2329d20a3c825ca3153e9f8f5fd85b3fb5fa79cd4e7a8fc4dea431294d058c38cd20cfa059f6813fc29d6b9dfcb6e004c968dc35e919481923e1f01b5524ac59c6529b221e94a857382b614d23049a487dd499a3e1ea6fe4c7020b5ead117bffc170000ffff010000ffffa42caa1d47210000") + bs, _ = hex.DecodeString("1f8b080000096e8800ff8c5adf6e1cb7f5becf5310060248c06af3fb05692f7cd140b26c4791226fbd528c1a060aee0e6796dd19724372b4918c14bde86314c88d51a02f902b5d75dfa44fd2ef1c7238336bc97580205af2903c3c7fbef31d4ede7f21f0cf93e3d9993857b74f9ef29f47f3e5aadedd7bafea279324b0b06da0e9dd3f16cae5d1a21097b65034716e6c5046acb4b96bcbdd7da5cc50eab5da58af83757cc67ca3f472a5dc23d24e79cfaaf05f6a6f460de7fa65756db7e2d85873dbd8d68b6b2f2bc5c7baa04df56dd63d3859b5a61237d608c9e2d0fab20d7718f43ec8a07dd06b8c2957cb76a1ccb7f908636c6b964acc95bb8111480bb3dedd9b42d38efe288d67f14774890bf964974f86663049e8169fb4155ff3855ad5fd96cf66d7e23ae85adf414d6b4860e6ec1d0c619d6c7d2d7dc05e59bab69e5d43eed46af76b6fad677673eb74b50ae2dfff125fffdfff7f23be976bbb1027d655b04a21c24a89d2924da1b078664d707ad1c27ffe29edf8c9f52dd6632d7c5a28716d82723eeceec39d724fbbf34f55ad02eb76b1fbcd2314b266a7da2fad316a195441f33f2ab7d0a6208f552a38654cb6d1a95db6705ec8b638b5ebc14096da9ada4a84a08c27760395c2c1b81ebcb7563aeffabcd01ce8274aba05c67bd568663fdc170f4b3d12eebb0f3089eb458d5cd430d1cccc3826d641df68e5d248168201c5d2368d145e6da4c3350af1ee89de3ca5787af744c82e2f847598286e8d6cf41213c18a8d72a5758d90f05d03bb2c4541064698de0a5bb29bd3f229a970e528528bd62d57426923cef9d8cef00abb9fcd9ecee2b15d060a58647c2ead6cfb33c9bf9db443661972269fc1b9bfc2ded37c5be7acfb38f05f68d809a1e0e1d89441a7b083be4943ca0de29e8571f1467b9a140b1dbc9030abae8c7530de16f1266a6bd714db308f58aea441384c91a94a60c58be32b5162177feb836aa269f8bcbbb672ba2cbd53c85505efeb46cc5b8a5f61246c0615a38fa10ec6f840f2a8998a13a569df23de276e0c095c604b79d25b80b48fea367053414e2cb044009a9a0d7ea72b7b01234b31f5210f20e7c8137c3ba736b55c421cb72b38d90ab1b815fed62c0340b7eaaf04e1ad7205c7326ed3e563f4ea73e715121727d59ed4c05d4276045dd090b3f1c7508fa357ae30584c03cb955d3c78b98d43fe50928bd2d9a6f3806864c11eb081f2c540093f11009e8f04700bcff362abeb1aba23394c206b514c23d64217dfcbba85b1dde8c61e698f0ae0460e4b712fe9a71229c1192508bdc204015d227d94574d37cb2b2ac5511c0d33747fb2ab04b6c7b5f8f19a34c3adc4250c0b81b517bbfb54968686625f92cad198ddf8cbeb3371dce25a06b9cc382766d2fbad758c96e9ef20a091136fdb0a461377ad43f499961018de7065bdfb00177f624ba4019f7dc96b90d6ea73369c0e77bc4019c5751faad907e6306e075b7e5231858b27d0e6bf2993f2646d17b216a71d9ab1108f016bdab28c35634f7a0ccb49dc890e9f3be9b3a2e64351bb761f82cebb9c317e885986161f0b05a301738051ce77cbce95da7439e3534d4bf9a3dc4ad683e27181eb7a2a1fb592b1765f204c5264fd5696f0510d550737bbb0cb7d335cd8f5c356d8931504e4fd02472be2024f9565bc6a6cba6ec5bee57e90946a2c4c62dfc97613fc47323f0b86e8679cd25c97c5c1b93ef9ca1fd222cceb862e40c96a723e7937941becf5aa0dc046947144e66bf5530b03fab4cf1469074ea7564c458e4dc949d62dbe641d2f0160fd08c4ce4efbfa7e841fc3b94ba4c260967fe679a48f8a0141b580e91c074527f1ea9cf3799d7f97650df0e4c1f4673763f284198d03085f95620e1467d5e908c6f4954311f484ce03d1cab249c86c17ba012b1918f9b8f555348b8f7626ebd623a96e23848ad345e72e36edeeef3dc8317a01239dd28bdeb63319563d1877a113815ba1f6524881d36c5a4266f12641f8d2296637ba1450a4b08a203e08f533c0642aaeb012e417aaa01838b9a4483bf8eba1584aaa5da2f55829515d845f217c97b05519b9c4ac04fdbb0323c9442ca2710345288e1bc4cd7265a226ae4056dea9b60ac06f8314850e6c67d6824c3c85c5bcb8224dccd15bded1b022622d4d2c95c70bf4058e883d3423800b5d3120e0cb46e22c175b9918a70e817eb90120cc9c0225dc8e5a0886104b36976d2c25e31ec2778b5f1fffb0df2efc98f806d9ee9899abdfcf4fd82212707146d4f3069e3a8841f346ab825b9cc4c85145a34094c8ebb3bb632a75561f24d3402642c6a3683190a4981aeeb7815b7b314f61b0af3171b34794046644535eaa36fe3d9e4281c66d8ba104052359afaf087379a3862a65bfcda14dc754b9eddcb8dd7d9913790e808781291798e350aaf815f122e635838cd9eab062eaf266f7018c986b66221fc0b689a08c455c311789e444fcb1553524c1746a2221c82d644f7f72a01e94d3f8b936b07d5d7322670156e30d8ee55e8705af68ab78149d609206a32505af89b59a8e0e24df4b1029018a806394c82166dd636c988a1f60654a641af7c439a84387db12818b96625b9cb7c85044574f23e29d790fcfd98d85d093ba47b4a3fea8637335f9095451f7540bba6d53a4624769ee941e9903eda2604301444029538d20ea3b609744cf431bb5630c918646c8374ee45a2240b0b34a735e210854e9c8818b566d28702ae704c12cf62fe56ac028e616bc13889c7a51befc927e74f31cad27ce6e1391e3019547b298dd6c6288bf44d0e347efb076435023be122fac6b9b984be3a14e12e547ccc0e6edd2d69f47fb809ef361d162c6413bac6d5d0ff765891ebcf6170d4553ae8d44d45080db1eb1c2d90b451d008c2cc8cad36e5914d8b68069b14a6607b597a3feb417d406aee7d41d3d95785b862d6510029cdf7ba823a26646d9f2e9f82824c36af7a1e6a4ea1f4ce679030a9d987985bcb1e6e9c73a7885ee94b00359437799889856d4eb522184511754de0844c42d822602a451e8a722c643bd29ca4a70b7d8ef3f7ffbe75843ea04019f5d01748eb267211d8a29e750d41136a8f42270db3f4b2712569cc172fd897dd9983219a6ae59d04c1ba6d36c5faaf1b2aa9caa980874ef71cbd434b60bd0dffa56c81ba96b7e3c9141bc7fdfbafa975fb8bfd3dd72ee548d980f1ef4b8e91bb0686a50e9ed912ec4dece3b0d94819d4ab038171ba33e7c24f5e6d49812410117d137a4f054f4c66b08ce5c2a26f0512714511f357db4f5b453ff7c74600c47d0ae5460a80ba576327a44a617a3b0772e280b084c3c5a65ea0102449186a9fd53e0ce6eab41acd3f59559badb0db9a26506e29881507471bb5dc00d40ee331e6102469c0fdc6ccd2f56d87a53cb402f502855b4164eb8a3170078426e36f931035b94b91e383aae9081debb78e3d8fb1714c1b9db476837ac17c73657cd42cbda56f0bfd4c99cf91122bd6687aedf1cb0256c00b846a357714c5454dfc08fa6e2b98b531d8183f9c07549887609e8f1163ebde34c52fd31472fd1a6d1432b3f8222192a279be6a86ff8606926cc910e20f7de10c7a42c3a49eaa4e70726e50c11dc2002576afc7712552ab48b95d88b17ca70fd8999f44035895e84086c6552edcacc9a1ec104b8912ed88920ce6d4d370676fceeeb01cdf6b82e420b11eb299bf0272a610d2a818bb1334ddb501b3089eef01bb94c5e06d8af14250d2fda50b8c93a073b8daa4ac1c46a5025c7b053edee6b34521de620d4b1309a831f9f48d37960f38b9a3bcac4c9d7a41fb1247102b041322c925f2edba681bdd276178af87e64f1343b0f8e7dcc70d16b3c30676746e2789629cb0207affb14ce3729a42bd3356a45761c128fe156481b769260f04e1d4d69499f4434dec597e53f88c457de3de9023e3555fd93194cf49103b8a2a4cb8883f4127a98555e112953f435263e4415c35b705b03eaf26ef0280e45de1251624d8ebad44b6d558c61d3bfa1952dbd712620fa4c938b83845bdd8b4a381c9b8e438e02d1d68367515872add466422fc0fc883b8ddf5beee4aae6448bf9945372c2a0485f83fe42dd0d279e1e226e079f14727be8d8ab908f6f128995dd24f9e0b140495ad1e13d44307e7360bfa549aeb32d3bf27fc4921b365e8f9ed921d5e744e778c7fe6a7e9fce1ffcfe9b1e2df83b440dca77f830604c3ab4c85f9ae8df02ca1e4c0f271cb0e2e0e89067296e00e09425077f3e1c9d6150791eb8546fbe357709e7e98303a9d835eb4c5bd0c9217edd61828113951e8af61063c26e48814a71306bcd3a1c455d63e01e91ba1316489fbbd228344e477e86595ba37f6a55bed2a06bce772a00f1bafaa49f36f4f0f2a0ef71e5ce4cfc20c259bde7fd6ed36bb336a903b9360b45a2b935b8de508e9da687d9e375a04dfb49543c38ebca8af75fa6a4f892a959374318f1fe7d9aeab9d6f566f4912efe7ce4131d3f86a497b658ccfb1925bebbba9acdb9c17c797dd64be5096a413ef1ea9c1271f04edbcdbca1d091053f344a667004b613861b42e9467338cb30f8389173a628e863cc10a93d3daa056ba7e96b63ff4569f0559c2399e91cc1a9457419cf29e2230170fd63007dba60fc75197fe704d5713bfe48516530a3889a3e7eb13ea01ebe9e12a3579e11fbd38378d4fcb45129bef042852d71e7d8c7d373de2d97a5253d8281756185be519cf66cb64606fa0cf933121e94bf5b4d2f02fd4bc0c943f672c95e31dc27f491968ddb996d8c81e015dd57b84806339b13775b1d3f86252347516a6354c743c82872813ece543afe4f052f9dddfd7ac468705e439df4364a1844630d53513378a4f8c4dbc49f6207fdbdcc03a0c06c1cf68aa4d495f4a90b7097522a263b4b910d49576ac91326a690864922afcc2769fad0991e8582031b564fbef8e5bf000000ffff010000ffff853f651f1e220000") gr, _ = gzip.NewReader(bytes.NewBuffer(bs)) bs, _ = ioutil.ReadAll(gr) Assets["lang-de.json"] = bs - bs, _ = hex.DecodeString("1f8b080000096e8800ffd4595f6e1cb9d17fdf5314042c2001fa66fd6d3679f04b20dbf146b12d0f6c2986010101a79b3343a89bec25bb359e151ce43401728d1c2527c9af8aecbf3363797763aff7c11e76d5af8ac562b15845dd7d45444767f3737aa6b7470ffbe169642c5c530b59068998e774e1722df476dcb35ee9ca05533bbf6d01034a07f33a84c497e188a1872cdd318bc26de8cc3abb2d5d13e82aa89516e5be3676f54791b90f935459eb1a9b697aadfdadf6223921b5c0039aa2c82166147ed4ac6421f21b498fe75774559bc2fca86ae32c73a7a4042c5c100fc74122ba6aebcd6a5dd3bfff45df3ef8ffefe82feac62de891f32b5236a77aad69e9d807b0821e3b5b7bb368e0f9f05074fd12f968c2135de85a0c4ba3447659536a5b77ab1a135ad0c6164e21205452312244d09f72231127bf3da98bb8fe63c01cc7dc949480562d0a4d57733b17d0e0b305d4da53e6ca5251d095f2302aa7eb23533de47dbd3e22d54624390f46beb5aa341918b5a34afba5f32529b8abc4aa33ca4dc81c42694b6e299e4de2b338fde79a2c2dce7b27711e0791f8d4c0037fd53e608f524c4f490320262d4d60062d4c1d48794d66659d87e19bb5b6543877c37103d3285b2bbbd26186a3a109124fcf2e69092d611b6a5d461f7c02adbdb95153099fe4ecb11cfea550abb2c2f76d5c5f206349d12cd41d01c19f635f6462afab42658063e25c823da7c596c2d666f51a16756bf81c534d17567957eb8c714befcad63154aa5c1ce310029e2c8e4938259ce01d00d406e1d3c614052d60314e2b9bcfc183c8a9db40ca8a06cef593d5fe0af3271788dbc498388ae4efafcee9ac01dee23448d2a1b90a61e37cced80fb10f2a4090f903c2c2ea059f1b986869747deda527116db54f39b01b2756e116aaa027ed7116c89436828e73df2e3182cfe548d1bc3b6d62e31e6a843fd3ba6ad38020c784087a0eb30367da42ab78594d2809e6b2e98aa6a4bd409a2311ee4147fa5064ec821d5a84be501c464267d4f0b305bc2349498f2556e552a2e367e6d137e1244a7c80dfab78d9d438fc36e79cf54affd0c021a115dfcb8ba21762d585eb3e7134ce9f445a1c0e1817aad41d4b3e5a262234716414c92f9f3109ffa7cfe5b2305660ed30316c47b74332ceefcb25bd463612dee0b303ac9cac895df2dc94b87f078efb103b29c0be7a93b7ae157fedd02274aeea759f26da3d8e2945e3b2e0bdc7b55a359c33e84d4a2e99d772c19a2561f2dc694e3e35e97738a033ba84242a30cc8534e555c68171fcf713ca9465e126405221ef515823f432ac7f192fd32fc798e41c3977b451b1861a7e2680d7b7466f4605ab20f7d1a3c8abb317d392754a4a409d396b7129d0391737b758fb710c80039c56acf35b8cf7316107140fee0498883b60dea00954482d30b05777cddd257702b58a1e6b8723065d689deb7cc06f2911f65addcaf192df4442ae8463385ee4bae4700a6bbe62e58a1c44d5c6d46bb9857faa483b51cdbd49881ad238b144f80dc0525947c8943680e642ef50e9b305207408e71697e5d22076b96e1b9f8f19bdc095cec1ccf480f4c52746e170a4bb3e2e2baef57fa8ae33709322ad1df60c8b3a0d226849507da4c4cba5dba010e1d2ae6e3aeb7e92483b5153e7108c1ad238b15ce3d1833e4ecdcef0330124a81e79b749c5c99890404dc50798bea1a7ce37a5c026a404440ea7394a3997b9626f15730fa257b3f66818fa143125f5402968698d14b6d0d015e000620fcc5ab1c380a91263e1603900a3be35b865bde1e845a84847cee53617a4da2d1f8e67f9591aa666048dde830f2142900d3da518a3dcc970a246ad8c56b394d3485b6c694c2d56a32c8e7911fa67c8bab5df42df7ffef1cfb1919f407f5c025f356ab5f27a25f711472936d864a9c46f1685c98a2da95b650ae996554d77778d2fdebf670b7f89786f004c5c9a55e36361dd6fbbe2768a5b07be1b710d9a5b9e6546bd5f4a3ef63ee559b8a705c5cc88db6ca47ad69afcf926ec17a96de6b7157ba9911bd6cb0dcbdb276d4f0e0f218f9d0b456e782e2a70f9dfc81301cc447f5873cb8f768a6529981fb913b3a805aaaaeb32a162d96547cfd3a119e50706511c7bb09c43a4ebba103ba5d825c123f7476e54e156d859657aa7fd761730dc049c0a206d4ad25de5c54f0c849bdee4b20414564d91b37245bfff76508685da7318609703073a8648f9e8d6c18b4bb14db9c0f8341a132af4f49191abb0d61c6822547178a862e0dc2fcdb0de69ad4da888d822ccbd2894bde96c3fc8df558190909592a4ae54cf2e5d0333d27d791ddfeeae9b070f7ea7295dcfd747ed8ea6baba7f5cc0e1dc598aa4edb4103a4e4f49273bf6febac60c9c233bc3fbe58ac17311ccbb41cb7dcaef63f2c4d52fe0a305f64dd2e1cb5433a996c9561fdce49f2bdf9be08755fdc189ee411d52d71b13a6f5e2f11fbeeb0f8abca516285d4ef69f95d3f6a074afe1fc2f870dc7b39353d9543afebf13e1225200cc389c8eff76329ac32217ee5fd19768e87d4e6dacf9a1d1f72ca805ed5556719bfc115bbe1f17555e552bcf6f87978eeebe4e51f8b5942143ce5de27415c65535fa8bc3f03301f83a13960c5aa2a63f5f5ece5f4bbbf1fdd579044c89119c5ec518d20e23e30d3fedaa5c5e7b94d4079c264ee59c7292298dec9daa07afa15d80e4393f070f734ce0c790da39f1dc27d37dc8f47e9bf64fa269d4b78fea0033d86523fdea4acbb40b5d6fb8f68a0d1a3f7d6c256566fc6c81c20212e6564b148bf1a5aab335e977885f1496ad34b77a7dc7f85b353d3afe6d6cbbde76bdd55bd43aa2402c87bdfca65363f7749b8b65d51f038b0a0dffa58445e2e0abf7ff050000ffff010000ffff84efef43041e0000") + bs, _ = hex.DecodeString("1f8b080000096e8800ffd459ef6e1cb90dff7e4f411838c006dcbdf47aed877c299ca4b9ba499c4562370860a0d08e34bb8267a43949b39b3dc3459fa6405fa38fd227294949f36f77e3dc9fe4920fc96ac81f258a222952befd0a008ecee6e7f04c6d8f1ef6c3d3c858d8363099078928255c58a9989ec73deb956aacd7c1ba6d060c281dcc29ef139f8723861ab254c7ac2abb813363cdb6b6ad872b2f968a2777419be59f59e63e4c9aca18db9a42c16be5d6cab1e484948107668a22879851f851bbe48df06f243d9e5fc155d095fe51046d0d71a7a404acac670bc74122da66ebf47215e0bfff816f1ffcfe3bf89bb8b10b7864dd12849110560a4a4b36402de0b135c1e9458b96f70f79ae5f221f5578a22a1558b1344a64ed0b6b8c2a8292cc1c7e27882dda5a99d06d7c4cc8a08da9ac409f116995112182fe22353b25fff6a4ce29fb8f0173ec965352021ab1a8145ccdcd9c4183cf0c08ca4161eb5a80578d70a89484eb23dd3ca4a3bf3e02919d16ac4386dc1a51eb0219c142a35c695d0d022d5ae3ae0b906426f4b62dd8928d9fc46771f94fb558da9c739643210e22f1a9460bfc5d398f6794dc7e4a1a0071d15a7b62c042070fc229d04b631d2abe59290395b537e45aa81a142b6196cacf307a14a0c4d3b34b287116bff541d5d1061f61d65edd38538d3691643189f6051f44dde0f73aeecf83362060e64347c0f890782ebcb0534d250a84e3c292e341c2620b7e6b8ab0428dba3d7c8aa5a61b6b9c0d1c80503a5b67c3402d241bc6a20b38301826fe1430c8770038ad673e6c7455c10235c66825f5c979d0734276a4a26ad1b86eb2dbdf60fd6402361b2b134791fcfdd5399cb58837180d9c74602ebcdf58c729eb7dec8313a093b903c2ccea059f6b54d1c0e886db4b4f22ca28977260374eacca2e44054f723833644a1b41c7b96f9718c1e7b2e2e5f8379138ca60de0520abbd871ae1cf946a726660e4981041cf71279e926fa544bce2269404b3c5749353d25e20cc3137ee4147fa50646c951d5a84be10e4594c27d4f03303de0167a9c7ecbe7c4fc1f133fde81b7f1225dec3efa778d906cc0746521a7ba57e68d1203e8befe545d10bd6eac2769f182de74f222d0e078c0b51ab8ec51f99894e9b383c8ae497cf8884ffa7cfb2acb461581e2686e9e86648c6907e59c26b4c50cc1b7c7680a5e53d91499eeb1aafe481e1dec74e13e0b93a2db369d95e3bb4089d8bb0ea33473ee3986514de1f74f678d3362da5117893f24de114dfb9ba045c5c5a45f928807a87313b834b94c4ba0dd7c2cce544418e71fccf13288421e1d6a3a4c054087e85ae57e0fecb78bf7e3eca24e370dcc146c4b26af899004eadb5da8cca5c46eea3479157672fa685ee9494802a158a704ef5ce1af77e1c1de000278b75768bfe3e26ec8062e04e8089b803a6039a409994819eacbaabee2eb91308225a2c0f470cb8504ac6ba794289b0d762cde1c5bf89844be57aac1b2716a651b419b9125faee4697e4517325fa80387dbe8b0e23bfba78ae48502353b3ece90c689c5c26f10cc7578844c6903a8647a874a9f19805e0518d278b5961add9aaabc71e8cce0051600e4e744f798d9289804c64daa0ce2b6e25e7fc5e93a0537c909f3b06718acea50041b18ac55524ea6426f50b6502118da4ebb9f2492176a8344c138431a27966d1d36b58f536b34fc4c00f6b747ce6e5229332664906d9ae8a17998186d43410fdfc053ebda9a0113520262de87395684b6b0d5de62e81e443fcdca61dfd1a79529a907e6f848c39ec10533ac301f2e142ee2d16440369b65f861c074126df048386446adb3b765d890bfa373f1a30095f354f02a5b3e1caff2b36698aae115f63614b6e8b4a4e82944afa64e89b23ed6e2d8cad61cbfb045278879ca282cbb6392c5f96798c283dbe27cfffbd7bfc74a7e84f9e316e8de12cba5534bbedcc8aff1e475915a887651e9a2da82580b5d71372e02dcdeb6aebabb230d7f8978af00aa58ea65eb62e1de1fbba0768d5a13ba68f14ed56b5a6506bd5d6a4a142e256d344f06c55c8a57e368ea5956f9d32dd86f5299c26d1bb252cbd7b5e3eb9a8e8fdb2a8916c2cc77ce142e17a842c14ae2869f20504dec3f033d2960bb46b2e0f58fd4e9192c2c9aa6eb62718ab2cba78e96c366971e3078e2d8e3497291aeab43dfa9592f761ebe71a416955de2c90add1bedcbddc0f010302a1069525aefca387ac2002c1bb4e42d6095d656922617f0c76f07359d0f8edc004fd993a3e3102f890a6f5fd49eb762da7a81e3d3a88c6f4491f628855f297234166ac83d443530eee7a6586fb4ac13d53996efe54525cc4da7fb41feee14e812bc53e0d4958ae3d2b6a846ba61afe3dbe075fbe0c11f14a40bfdfa289f682ad2fbc70b0cce9dad70da4e1b81e3f45475b2a3ef6fabccc0387c32745eb61a3c47a17a37d8bf9fd2fb1b3fa1f51bf860817d8b74f83a5559223349eb8387fc73e57b15dcb04538b8d03da843d3f5caf8698579fca7effa40e1b7da0a6b9a93fdb1729a03a57b90a77f1275389e9d9cf2a1c2f1ef4e988b9e82c082dce9f81f27a3350ce6c2fd3bfa1c15bdcfa8add13fb4ea9e0d65d0dec91aeab93fe0c8f7e3e29457e6c6a42a3b0f13a321df7f929eeb065f99bd74f4a67969e1f6ebe4bd5fdf4568cfb94d9cae32b96a467f09197e26005d83cce241262af8ebe5e5fc353736df5f9d47c09418c1e9698e207918196fe8c959487e72125c57507a39e5f8a6e4546b3e731106afb49d634949cfd4c3dce4e9452658cb16ff68731f52bd3fdefd8b28183d1e8cea073df00ecd9df152f1b20b153654b3c55690de5fb69c6a0b7a3bc1820425f45ab1f7b3f2b508c50ad43bf47b2c48b33435957d6ffaa5aa1e0dff36f6716fbb66ed2dd6483c016b8efad2c352c0d3533987f3ae3f041627d4f4171c128983afeefe0f0000ffff010000fffff97a48b0bf1e0000") gr, _ = gzip.NewReader(bytes.NewBuffer(bs)) bs, _ = ioutil.ReadAll(gr) Assets["lang-en.json"] = bs - bs, _ = hex.DecodeString("1f8b080000096e8800ff9459df6e1cb7d5bfcf531002024980b2f9be20df77e18b04b615a7aa2d5bb0ac04050c14dc19ee2ee319724c7256de182972dbebbe40afda6c2efa105df445fa24fd9d437286b35ad9698058b3c343f2fcfd9d3ff3fe1381ff8e1e5e5d88a76a73f4401c3d6e765b81df476769696efb400bbb9f45e76c67fdb052d7e2b9ad152d3efc0154ca89de08f3afbff47549f35261930ed66df628dd6edb2917ac76aaa077ca7b26e4a7fd1555ae8dac348dbd150f8d359bd6f65edc78b9547cb10bda2cbfe63d3d58d01e57374a38d9d19a90bc45895a091f64d03ee8b7bdf2a23eee836eb4c72b6bbe1eae31c6f6a652e25ab9b572742a3ff50e1b2416b136d2dec30ced7af9df5c9f4f7cd42f5978fe9bde3dbeba113744fa6324c5f2cdb853d4bd00c540dc58cfd67aa25c0bf6f36bdb6d9c5eae82f8e7567cf13ffffba5f8bd7c63e7e291754b70588bb052626149c5605f3cb626383d276dfa07ec311fdaaf02d4ed45953741575ef85eafa509d89e5838578d0accda75df754e17dc9ddbaa6f9509837cd31703d5ad69ac84b3c978cef96e3bd741e4f799ee9b5a4767fe331ec64be8f5e0cb698ddc64e2cb4c3475e682f480337f63e41c2b3757e68a1db00a7a4dc4c7fc6620a2032adbb65278d54907016af1fa48770fc8455e1f09993d5f5887857a6364ab2b2c042b70e5c2ba564898a385462a516b5f595cb31176c1964bdb67c4022e73ccaec7eb7468799587101292e035fe224695586bb7ec2185ed2777cb8536e4f45926299caa56ca5574636206ae4c9edd1ca7bb6683ccce598e1e3cc021f2eb271af77ca79c876153a0a45f9ece59e86aa5d5941af2b7da138980b9219553422f8d75d0e1ed4a19d158fb86bc165a12d54a9aa5f2334424e431e2c9c3573814cad8f8a0daa8a16724fa706879aff0f0e178382ba881ffb378a5e8f81d6f210fc54d00cd18c9b4bf8f9aa7eb76bfb4aa3cdc0bc5fccc4ae9a2382dac5993ad6b7806c144dbe1f73a2b06669062e6c3f002915ae33696dea9ae9115c8217dcd31568bf9061c982aaca09641e4810d161237edb69e62b78643e004fa554b1c0e95d716aac105e59d832e38bc9d6af95ad601398ea7a05649a3e458050377e4459209aa224e17ceb6d968a295351bcdc2a79d3088557f260028770870aee77571ab9b46cca133f0410aa468001b214746d5f430bcbb4709c4c76ebb64d109c146b352ac4bd89496b251e1f3383a0206186ba5f611f8eedf56257c017f8e2e0c0e1a5eecb68e0864cfac2a82f081cfac2bb670c442b6455ef8f6e64220cdc1f240829801aea4f7b7d6d5447d690319a9c32b45b19b28179916db3f701282c68df905f04b694fc6a48a92616ff33390c0010f656d12a9a45646b984dadfeeb6060a28246aec5c36e23c831a27cf21da96bcaaf688a710fd72c4e5449fc92f1827c4d518ed441fdf46a3164090373d55aacb18e563f6339eab01de912322933f83609eb246a364ccbde7ca19bdfb051727da81d456f74bdad0a2ba87545c01bd899efe9285dd07f74df5935c285266c24b490ec794254d2b77ff08637ebb94ef04a3f0637672cebde2e4a97ef4b93f2d72702bdfe9b66fa7d858026bde521cfba20f7031531374bf54541305d6f673dbce0913c7236bd5822e961855d53b9c3dd685cf6ddc64c617d87271ce863e27479c64785e7d2e5b95ae3a40807048ab63e0e4d5174f6905ffe6df8b45a30d93e7c7bc62860533790f3c7bb110d780c7c43843e50af8404156902d2dab8634fe4cb7d072a1777ec16156470b78f805eaad7d45bf80f3385d67fbf958d1544efae4cd0578e53d5732ac462ccd8e147137b91b15331dd5f833f17d42e0ca292e6bf442809dda1252028cd43ba0c44cbcc24e804af40f8792827ce24fa7a2928636f71e3b252051f81504a9a0a3452c1f1eaf54abb9ca2daaaf08c9c7c03c6d224831573371d110d24a30b3db02b0bc16ba11e6989960549c8967608139e0008d3c11279dc2a5bb5fe1fb299d633f956cd4485495ed5da5399c072d71b88b5b19abcd4b45040cbd4193830ef876e5d45aabdb498fc0500969767fef59b4d42bfca61ee1e5c3cb0ff6035cae8068a057081b83742b2e88ad35ac77129d28ff6e544214a27b47879c8c1e3442c924a80ed4c2056504977d6cdec396829e5cee5e6b8ff49edce5635230d14400e834aafca542b4b4d215d927ad8ae74ad5aa9e1091b990aa2a243459b0712dd7b18d91fd7a3ce71af00f15538470e14201e45754ec70b152c4d1ad0e2bae47ae775bdaa349eb3118636921def69a4aa80006b86aa826adc76cbc3250b39953d4422f7b37f1946bbeff7bdcc78d0f135ea57305a4a88a4b277b6ade34922314887ca4216705aa706581b3a8f29ea2c54c5ca2a0a1d0a6f71e784bf80123e54a276a89f570910e22f8a240435d66fbfd868b63bbb63ac72856dbddaf6d8602850cddced90506351e28abc0f96d72e34b9b1aa563fc2e960dca6dec419f891232e512aac08b6a9283b48fcc3f5c508a8382767fa5b8e3a238764445f2a152cfabe8d87759ea438d6b23320750d585af11ee00bc53db4a7f81f4f46ea060ef7de4ec6daaddceb38773732bd77a1911f256cd873d7d849bcfc513ebfa96c5a01c917f6732a425718512d956b6f958b5d725ba38e81812dad41ff3eb11b9aeefa7e4e641ac9015e60a177be84990a266795f249062b70da4ff2de92eccee1ea10d74ce2139197278bb08b71420705e9edb50e7429d87b28b07d33bf88438e568ec52575a356800d0f5a47d5cf7a8fedd67953ebb3bf918cff10a3d2821c35cb1286722060e75b494fca044f870cb10213614040c6e4651603086e3b2197248701b9cf7ef9fff36e533c5408c90a410e613597083f37b13afa0d63402c0da12e908fcf9be195c1ff046a01ae22066adc46c366897f2b95c2e9d5a72d2cf59ab4afd5d3f6f74d5e0cab5d40d4f486410efdff7aef9e9a7dc8a4d329d5c3a6ec4546e4fb5efe015732ed1e93450714d496196870dc389055355098485f748eab0a997a4a284471ac4f84c8cca6b09b05c4a07b051268a988e043e393a769472efbeec8c1eb901c2c41eb1a3c2860ec39bf242463337a6a4030317938db0777721b03295db7464849e0b0cc70506f913f7c4350c0034bee0375c6651658792e60d5737e019901568c0048fa6bd289a7e248318a056d70ddd0e8e580c18efe8ba5a061a67f1c1b18aacc96787961c9ed6325feccd9c056b2d113f30b6d44981e3987652ebe040bd58c02504b556caaced06cf6f7b54e435aa2bc3be90cb3d768a9c2a9cce8d1dc45224179e734147f3046835402729551419c6e741e6ba1848c1d7baae494d008ca709557f503db725881af6d824023fd70a2e9f9314ab65b73da3f85bd39c988bd3d8ce401e9ea608942e9aa639b58ae646ae586b49493faaab577bf6468442ab26a5a6a1d2a631583c8ccd8d42ba6f6a328414fff7455176fbe0c8fbe0519ec20f8f48740d6a091a8b90d94ddfcef17c160de73b64b4b8504bbf521450bca92395a0e8663b4eb29d511989c8f5a32aa294318babb593ecfa3e923932200d22c1243a25d204713c54e99edb0db47d542110a7c958d149c8a88c65644f95d8a5b916213e5dc475b421af8a3c1ba0f744a5599515cdf7b9689937d2bc392c59d127ac49a2430721c4d84c82a13df5380bdb4387a992781d47cd5f895491bc3ecac191daac710606afbb63024e5bc900e2244d434f0f300cc5a29ce1794bc9797096008a96a12272782ea894a109709e787f25ca1a8938dc1f82513735d1797357e70ce7a3e2c16de3f3382c4d5afde9548bec7fe495b629a6a050ea1ba5ba331ad9f04c372388890303fa3c53313814210c0197d221bcce782899c611f75c37ec6a53ed2af322a9fea0778cb70fc39eb24aa56f65711dcac9ce5304c5be03b9b2d9faa03f96ddf047bc727ae8289bdf2fe34ffeffcb1127f85304ece94f0f43c559c689e1fb11fd5f83df93d9e9193baa38f9ec9457e1f820ac283a4efe783ab9c3203bdd27172b122ad4771a04e6b4c007a49dd6c2d14f4ba420774d687196cc80870e74704f66925d75f054e216660ab81a1a8291c0eb6f502436bfedd58785c8de10290f1fd9d1d8e51e27ab0e4e413ee25037ddd2d1c0fc9515ef3f4dcef929975f69c5b1cba28a4a8b632575d31dfad216df0e34546eec4d1fc635257ef7ead5d535b78634091ee8184ee25a6ef38a49711abb16df85f2caf7f4b143d675acf9a91e23703c634c2054857ec80d6528be0e0cbe5ed7f481a444564f0d4fb0366ad83affb63fce5fb6b9e890f4119b7237e3c78fb1f004d4392882be7a0da37d36b0ecbdd7c90869672a1ffa5860e3c5ec7e514637382c90129331cca496d38517691e3c2c158b3857e1966adfd869d3086ec389a3a2b9158a43eca0aa9e029415d5ca50ad847a87a842e99e7753cf3ef6ea85a652ad523ae46fd15b73204668df30748b5e91cbb849813649576312ba6852d7c04271cf10bb7196944a010b414d0e432e3a6426cb0706aacf8a53b3b1fe105bdd17bd1ede10da90c2d85292b29ea42f4e664801acaaefe840d43ad0414c413405805179aadd97c4e95c4d5f28790cb06dd013f048f6939ffe030000ffff010000ffff86892f6cbf210000") + bs, _ = hex.DecodeString("1f8b080000096e8800ff8c594d6f24b7d1befb571404189000bde3378693c31e6c6825ada3ec97a08f1801160838dd9c197abbc936d93ddad9c506f91db9f912c0071f0cdff698f927f92579aa48f6c76824dbb0ade966912c169f7aeaa33f7c46f8e7e0e4f2829eebcdc1133a38add45a135e1c1ca7b1b9eb5a1e3929b42f1495ba1f294b7ae5f0cc83db5f54693c5957baf1f8956e5c30adf39bb194cf6fcd58d8eb1058eacc785d1466fbabdd19d4e36167f198c7abcaddd189757653bb2ed06d504b2d7bfbd6d8e5373ced52fbdab46973df6a52163b98dae144d405f74dbf98b5aeb385a66bedd7da8bde162f8cf214f0ca94ce0fb20f6cc9b3aef66f94e73eed96729e73ef9d1fce727a794bb7ada9cc7bd5e2902c711b646ea50883bd5ce58298fe547baf7a8d4e5db3f166b96ae93f3fd197ffff87afe82feaad9bd353e797d0a4a476a569e1d86050934e9d6dbd9977b88bf044acab61dd950bbca1e2d7fbd6d91036a760969dd1b6d581a870959a3baf4a3eca93accc99ae742b4a5e778d37b5e9d53c33a170d6eaa2d565bcd4d1739671455763fdde0efd8b0938cedc9dad9c02d654dceb46058629fe0d85f24b9505cf4b2340e6bf83c1f8a987711c9aa058c6a7304e527b507c6ed5bcd2747b692f27989317bd4cab3d0c56d70a786a9487da25bd3930cd13c6cb9b035219ee04f3bf39283756d5a6c040eba8d17ee17c2d7753c33205956c3a0075436e21b79ba6cf58830bbbc46fc60e6e74709cc9765189121278c18a2972936d7958acd9cd3d0e235b6f7fc4de8a6fe3dee2b3fea48cec1ee2f9ed33030bfd55fb00e1e429824257f1a5ade3c0e00f22deb021030fd0dcb48194d7649616602be96ea52df0e8de329e177c8295b24ba8019fd48419cf4e6e688155c226b4ba8e767901fcc64513d47db1326b4701f2b230908c6d2a9a770c22c251e7c6c99a78c286c1f0626a3c39f04eb3b1de51d11ab753f2dd95b8690aadaa1b3ca78306329614cd42dbbf80779640889c0b18ab5401719cab146f2a69bea1b0b145bbc281fbc3f43af009b0a349facbbd0846277b6cb0b275f53c9d73303bd558a907c3025ca0a8e8401cd1365eeb1a1abd97698e7405a7b6f2c0e2d759ade3fb5668bc6bc5bd69e15d9d2f09db9572490ec815c7d3e118466fef0960dd20e374672adc0b2c09f0b15919f300799bf15f541deec6df370d64b63fdaa8c9520c84d5d2cdf29d3a8050f670d001e870427359c06bc5a45c4659aca545946302afaaedda64d0b03691b2f37a032ce47205f4ca37baedd9e9dbdb0b3ae9a0bf65c762caa34b15c29df365ef222a6844d044cd5150a83045072cf1c86af0061fa349a7180e7be7bc60585b7a28e0f224e6014685b0425ca13fddb7da6a9f6838feeeddfedbcacd619ab3cc562cf274fb29fcd0e952b1450df3a2d5edce8429f55e0d9c4b4b11c8e2176525dbcadffc4e28822e7bf690f3c85b7871f6ff2cfd5ceb2613534836e7800fd17bacf402870c1c172aad6218defeab6a4d9d3c69149e5eb8e2d1633385552cf3c004ba044b4b30e9b48fa89af7f34bfdd0fc87cd26c2fd8dbd54ec2b22be2b582b1cd1bb41f21d09199f8a674ab8a5c3e7e6e917e1a80fbb880befd80a23c7ca22a3655e772d68d096ccd8571a47096d34b8025c4b84f2d132f01193c0d7684c9184232ff64a947ee58667ccb8388b2fe19bf8391e798580d58f09fde9611cdbc454766d8624edf5737e85ffe7e7c5a23256e49ee13e44437ed1bbf16b9bc7cfedce0848edf5423872323d185b7884c2f7d3b406e24b2706623bbf00cfb68f591bf4b3fdd9ed1afb3510e44d99ef2cc42b4e14eec7f496675caa7635906ac65024601db1c32942d331c3d277898a0b902353bb5910d42c9d66da6b49bf039dcce8063391d1322656208d820177f88f236c6d797217305371140a2b60bd809d16316fb8ea5a3e5c354eb5847c2b026a4c93c14c2f10a4229d321d2bd107ee110cd4885ae8199d572cb4fd51f68ffab0160d3c898389a72ea6ddc0064ee848b5ea7bf1b7de36e2ec74a7621e79b2049132423950aaf590e15c7abd36fa6e5213f004704b5f7d4c6b81ab9397f792fef8d8f33b447a699d7265ba60ce5ce34a0e232af2b38bcc00311c9e17381c30313043f2948bb3287d2f9b1d49469af80d8618c9338c1ebac1413c30027ee30c22a4ddf404608f68d22b6dace1d26c678c5e69dcaa44ce736051173a48d0f3bbf2d72877255af15d8e5e63d39c9df6bff318481fb6677f907c85dd25ac38c7911c65e43577a65d491a225384c586940020b3d1033bc549127b153447823d35d76cd8b7e5d23287a605ca2f3fe58c6bd1e23bec2a154d92cccbe6fd64f7c99452e68ca5c50746eb02b3041e013d2f0c50cc69f6942166f4125917bb33bf0f205ae60c057a48e958b4552c4ad24205978bd887c39a64133b07a7333d8f9e890184ea5a9cbf15e30d666474151542a2e47c83c67709de2f1d300ab21b62010f72be81198835c81a53d8e0547c944072aade7651e5bc08971add5271324ed16f24078c0921334739ca3ffbedbab6c48ec2198d5a8e50e63a5f809c53f579bafdb5344b478b8e835c2f24787eeadd5d4ae02e2282c902ba4b35ea465cb7ae6922e8f3cf3cd2354c3bf4053d73beab45c245229257bd4f7274a24b24c80e15fd63d96062a59c0cf22534699a7b24aaf1faabf83e13ddf5c392d901d3cfd1885419b442d4986baec66062621bc7a45fed6e2fb7438a8d5faafbeb40b8eac49327cd91e016ed1d7b14502a7d1dae9cb84ed16ef1242b365a61a377fb227905ae95d8af52068d0d8626c9b0484064163601eaf930c714dd8c8b5d0e8f30f0bcd2b5d00a6d809dc89dc899290504683843c069fd06ebfdf79fff9e2a090d4084620b9f8ce1b007ccb8a1cee6e5951045e868881e0cf6b4132fcf99bae5fccdcd663dca39c8abe5d203929c09b0ef003da648d55f37af4c516d48ad95a9a449a25afaf0a1f3d5c78ff1ce4274a1edcf3c8bd381a2abbb4a4ad15cb86d3ff12aa9eb509ad0e086e7cc9d80405e6ba44e914952ea9f012c8aeb71ae313947413a62d6acf26c285fa9662ef32994e042b250247d84f6c9d21974c58494b121a0004a903481d31129296d5ead54b33776d8b264aeebc313d20c61c428eab9ceb29d5eefee31b1be06e4370d1bbf93c423a61a0c1da9944b181e347d216f24e7e2340f0bbd9566142c84acb0e5e612aa5f9e0beddf73f16e919d354ddfb0c0128b9efc3d6f572ac9bb64e158b6970ccfbe5007b06ad14b802b41b23408f04b00469968bef36a2735c28231a9557230d3447a856d4c0400ee4be7942d1a6ba50acee270c31a1e58b30f0a17f1b9141f4c4994ed2cf7185a55abed2f6e27f5e1ce48aee0a4ce6e2a29b2a5af45d7862311aee0fb2e2d8da3e71c3aa59ec0540a6d546ba8cb509566413cb28bf7184f30bd3d38186c64532cea93686e6d11f22153cae52147eeaa92cdaae88f5f8e326a0428c611b4e3de14ff4464ab9033e0387289b6abe7f87d1caf2134b0561c808bad343b874c6a18d25c21c65b19453923cd4425b513ce14951a87e9ce721e8ee8ae488c87a8ad2decc37a263525d1110dc589399e6a6e6cc0ee76fba9868740412620cd0ac60bc1654afde79a42541bb5186f5212c66a729ae624059957cabedd7300a81db3fd48816b55a066dabb56ebe28590b06f2a5416ae83b55292f0267686bfa6946abc39c8a04eb5d2d0d10270ee195bc24a32351da65ee6d11e9d55363b28fb876efb733a0183349a4f895d125e61efeda7a85b7cf7350df90fab08fc729b4bd6464974dfc8dce51b0c9d54e3c6d6d1d45002268698ab46cd4cd8edadd68db4cfa4e99a4f047966bf718797d837e0738c0921b6d86c3996822a35ed1ed8b3dfaf4e49a7ca836ce2078090f035d5a11cb0db0b6c7e0750fcb88a7a1c7ae3e2f5fec2e6b17587e385dd14fcf04f5f0dce2f5f0a705de168bfff1f67e7ef3f01f17f25543e9c1d1d0b26e9f0ff8e6414188760c18e70f8f7a3c91e1601e4c1a3957b5880737b15551dfcdf4556389a104170558aeb3d251c8f18a111c2156505a8a26d022dcdb94e87aebfc3909d353f74fa771c62fb0981f8c1ab69b84bb2efd29105f87d4d8b7d8052fdeab7f6ad4d0542fe99471a76a9b3d4521d3df5e34bcf0df21b471f3e4fa8fefc63fc5cdb76d2b0864f20394a63438274dbecfd6816bab9195264e960ec762386414d7fbeb9b9bc9672901bc9d25dc686f1eda8419ca7a4ee6a6a864cfaa4dff1e70e554a4f50498ec5d4792c74c29c5b1b41ae6a475f027af7284bfe4432e6ddc05dafd639b995930a990667a6d1cd11802301729e53749a9b3840c5a8a7dfc3204e2b73d749a8b3e2e79643fef6a72103bbafff8097fda7d03469c54cd2323386a5b418965ace35d7ed1d27b1b19ae6d6da466249c19d29e4799861d65a1c59ac53abb658917e07e743f69d67735d3ed4e3fbcc33022f72256d97d2ac8e1e2ab6dae73d612721abcc32751927291616f13a7d17e14637931596acd506557cd155920dc052a3a7fe42e424892990072378de6f09f477f2b758b25e9bfe05b252318bdc076e813b7a2d715f2639c82c7e049fb33a5ce63006721ac3c4b6dbde37fc4991e7c41f9f7dfc1f000000ffff010000ffffdd14897953210000") + gr, _ = gzip.NewReader(bytes.NewBuffer(bs)) + bs, _ = ioutil.ReadAll(gr) + Assets["lang-es.json"] = bs + + bs, _ = hex.DecodeString("1f8b080000096e8800ff9459df6e1cb7d5bfcf531006024980b2f9be20df77e18b04b215a7aa2d5bb0ac04050c14dc19ee2ee319724c7256de182972dbebbe40afda6c2efa105df445fa24fd9d437286b35ad9698058b3c343f2fc3fbf73e6fd2702ff3d38bbba104fd5e6c143f1e071b3db0afc7e709a96e6b60fb4b0fb5974ce76d60f2b752d9edb5ad1e2d90fa0524ef446987ffda5af4b9a970a9b74b06eb347e976db4eb960b55305bd53de33213fedafa8726d64a569ecad3833d66c5adb7b71e3e552f1c52e68b3fc9af7f460417b5cdd28e164476b42f216256a257c9041fba0dff6ca8bfaa80fbad11eafacf97ab8c618db9b4a896be5d6cad1a9fcd43b6c9058c4da487b0f33b4ebe57f737d3ef151bf64e1f96f7af7f8ea46dc10e98f9114cb37e34e51f702140371633d5beb89722dd8cfaf6db7717ab90ae29f5bf1c5fffcef97e2f7f28d9d8b47d62dc1612dc24a89852515837df1d89ae0f49cb4e91fb2c77c68bf0a50b71755de045d79e17bbd9626607b62e15c352a306bd77dd7395d7077ae3d361b55055513c1f96e9b7eefb6038dadfa569930e860fa62a0ba358d95704819efc251731d447e9fe9bea97574f83fe36164845e0ffe9ed6c89526fece4453872f480f38fc3746ceb1727365aed849aba0d7447cc46f06223aa0b26d2b85579d7410a016af1fe8ee21b9d1eb0742e6e810d661a1de18d9ea0a0bc10a5cb9b0ae1512266ba1914ad4a4535cb31176c1d64ddb67c4022e73ccaec7eb7468799587101292e035fe228e95586bb7ec2185ed2777cb853614185926299caa56ca5574636206ee4ededf1ca5bb6683ccce598e303cc069f2eb271af77ca79c87615330a55f9ece59e86aa5d5941af2b7da138980b9219553422f8d75d0e1ed4a19d158fb863c1b5a12d54a9aa5f233442de431e2c9d92b1c0a656c7c506dd4d033127d38b4bc5778f8793c9c15d4204658bc5274fc8eb79087e22624d618edb4bf8f9aa7eb76bfb4aa3cdc0bc5fccc4ae9a2382dac5993ad6b7806a592b6c3ef75560ccc20c5cc87e105a2b9c66d2cbd535d232b9043fa9ae3b016f30d38305558412d83c8031b2c246eda6d3dc5770d87c009f4ab96381c2aaf2d54830bca3b075d700a70aae56b5907e4389e025f258d9263150cdc911785287046100b67db6c34d1ca9a8d66e1d34e18c4aa3f15483a770870aee77571ab9b46cca133f0410aa468001b214746d5f430bcbb4709c4c76ebb64d129cb8d66a55897b0292d65a3c2e771744c1860ac95dac7e478ffb62ae517f0e7e8c2e0a0e1c56eeb8840f6ccaaa2343ff09975c5168eb9906d9117bebdb9102885b03c3241ac1257d2fb5beb38bd5eda4046eaf04a51ec26ca45a6c5f60f9c84a071630d42faa5d22863e105acd8dbfc0c2470c043959d442aa995512e65ed6f775b0305141235762e1b719e931a17d821da96bcaaf688a729fae59897137d26bfa89b886f48d505f6b9e0fc21aec62c4054f16d34769120f2a6a74a753977f958398d6724c13b72a464f26710d8533569948c75fb5c39a377bfe0e2443b90daea7e0d34b4a8ee211557c8ea444f7fc9f2ee83fba67a4bae152933e1a5244764ca92a695bb7f84b1ee5dca7782b3f363767eaec9e2f8a97ef4b93f296a732bdfe9b66fa739b34cb8794b71ec8b3ec0f54c4d29fda5223c1558dbcf6d3ba75c391e59ab1674119e5455ef703659ce129ec3c31c721daa2acf6d3cce8c2f407471ce2e704eae3bc104bcfa5cb62a31718000019456c750cbab2f9ed20afecdbf178b461b26cf8f79c50c0b66f21e19f0c5425c23a126c639b9ae9051282c0bb2a565a5912d9ee916fa2f2cc22f3830eb681b0f8f018adb37c10bb895d375b6ac8f18a872d2273f2fd25dde7325c36accbed9c562a64e8e48f0a7a3ce6126be4f39bb728a81905e08b0535bcaad485fea1df2ca4cbcc24ea4a1e8390e2084bce54f27a2928636f71e3b2592a8f02b085241478b08381eaf54ab193b17782d26f12364496d625a63ae66e2a2a1dc2cc1cc6e8b14e7b5d08d3047cc04e7d19978061698030eddc81371d2295cbafb1551910000f613c8a3f6a4aae08595e6401fb4c48940dcca884f2f151170b20e9a5c7770d02ba7d65add4e3a0fce629066f7f79e454b1dc86fea3c5e9e5d7eb0cb608003a2815e25882e2e88ad35ac771c9d28ff6e54ca3544f78e0e391e3d684c3293a03a809e0bca9876f6b3f95ed629e8c9e5eeb5f648efc95d3e2605134d04804ea3ca5f2a444b2b5d51afd2aa78ae541d7b9a8188cc85e256a104ca828d6bb98ecd91ecd7e339d7b83563e0e139afa16840fd143d0c8328b8fc8aa013439f22c66e755831bab9de6d698f268bc4408d4045bced3501b200e6188354934666365e19a8bdcd856da197bd9b78d135dfff3deee3368a09afd2b9021256c5a5933d356f1ac91126443ed2902323e3304ec15984e3a79964262e018f28ece9bd472ea6dc020366dc14b5c47ab84807516aa3200cb1204cdb378efbdaea1cbf586d77bfb6394d28d4f576ceee31a8f1004803e7b7c9c52f6d6abb8ef0bb583600efd883ae158034d519c2f30536e500ee23f3670baa5550d0eeaf14930cb1637f551426028e5e45a7bfcb521f6a5c1bb37600555df821e52424f6d404d35f54017a3750b0673f72f63621c1f3ecfddc2acbb55ec6ec79abe6e31edb753110ce9c833ec79244d30032eee7e289757dcb24545af2ef4c866a26ae80c56d659b8fc1ca2ed1c5a9cb5007a7ae9a5f8f09effa7eca1483df18f617ff9173b9a7112b949eb9029b1e0a17a4f159be251248b1db0632e4968c1066778fd006c6e3d89ecc67bc5d845b8a3444018f9ca8a1a28648d9c5c3e91d7c421cd03476a92bad1af42568c6d23e865daa7ff759a54fef0e6dc673bc426b4c2966ae5894531123901a6daab0503982a1e55c2336144d9c418da208e34281cb662854c16d70debf7ffedb94cf144c31d49242984f94da0dceef4dbc823ae69849d69648c7ea92ef9b21869043297387381f5a2b319b0dda25d020974ba7968c2c7269ac52dbd9cf1b5d35b8722d75c3831b19c4fbf7bd6b7efa29778893722a978efb4395bb66ed3b78c59c3b043a0d540c69295ef30c6438b160aa2a336ae13d921a7f6a7109f9f0a485189f8951792d653e976a0e6c94896271004a981c1d1b5db9775f76468f02046162ebda117aa2c3f0a6bc90d3a21bebde813990c946d8bbbb105899ca6d3a3242cf28c6318a217fe256bd860190d62ff80d6339828fc04d6f18428167e4be40732f7834ed0532fb910c6290feba6e68b670c46228168eaeab65a0291b1f1ca16a4d3e3b4c0ae0692df3c5decce5b4d612f103634b9d14384e9827800a07eac5022e21a8b353666d37787edb03f6d78070867d21634a768a5c739cce7d25c45224179e336aa43107b41aa09354738a52e5f30c765dccc9e06b5dd7a44e03c6d3949e7f503d7745881af6d824023fd70a2e9fab1dab65b73da5f85bd3889b1170eca6200f0f7904f091a62153ada2b95174d65a127a88eaead59ebd11a1d0aa49356e80f3349d8b87b1b981d6fba6264348f17f5f14d8de0747de078ff2147e7844c56c004a685a4366377d3bc7f369349cef501ae3422dfd8ada3dc59b3a5209903ddb7152368dca99885c3faa224a19e1805a3bc9aeef23992303d27c144ca21d234d10c7432be0b9a741d7495083384dc68a4e4246e55c46f654895d1ab751c6a78b18ac1bf2aac8b341f69ea834ab92b0a165f4336fa4797358b2a219599344870e4288b19904a7f6d4482d6c0f1d2648f23a4ec0bf1209dabc7e908323f572e3680e5e77c7045cb69201c4711ad29e1c60188a052ee23150c979709612142d4345e4f08ccc94a1c1741ec47f254ab0451ceecfe6a8659be8bcb9ab734ee7a3e2c16de3f3942e0d80fdc9548bec7fe495b62986b350ea1ba5ba539a18f1a839671013e715f465a9e2e4508430045c4a87f03ae559691a50dc73ddb0ab4d2058e64552fd41ef186f1f664d25dca5cf7c711dcac9ce5304c5be03b9b2a3fba03f962df747bc727ae8289bdfef078effffcb314ff01712d8d39f1c4e15a7394f0c9fbee8ff1afc1ecf4e4ed951c5f16727bc0ac7076145d171fcc793c91d06d5e93eb9589150a1bed36930a7457e40d9692d1cfda4cc14e4ae295b9c2633e0a1031ddc939964571d3c95b8859902ae86866024f0fa1b1489cd6f7bf56121b23744cac3477634dbb9c7c9aa83a3968f38d48d79635287726108e2f5c34a47d1749e06c523628fdf0129687eb0e3a7a49b6ee9e87bc02b2bde7f9a9cfc53867169c5b1eb038da5c51191dd74873e24c6b7030dc196bd51c9b8a6c4ef5ebdbabae65e9506dd031da7a5b896fbce62109ea6c7c567afbcf23d7dcb91751d7b07c27594644f39b75076869ec99d65283e7e0c3153d7f4fda7ccd09edaac606db49475fe6d7f943fee337891f41d9f3000e7a11f238045ca7450047dd41bbe5cb0a3c8de7b9d8c99762618d247a08e17b3fb4519dde9b0404a4c6646134ca80b6fd43c09592a1671aec22d61e8d8fad3bc70c305a8a2211b40267650774081ce8a6a65a85642bd4374a205c8bb6988300e0f0a4d25cc533af66fd15b7320d668df30218c5e91e1e004e84dcade58cc2e9ad47db050dc7bc4f1004b4a90c2425093c399c18bcc64f9c04038af38351beb0fb1c17ed1ebe10d652d52185b4a52f594f441cd0ca58455f51d1d08cc041dc452466309189587f37d499cced5f40196e712db06bd05cf8f3ff9e93f000000ffff010000ffffeabc4784c2220000") gr, _ = gzip.NewReader(bytes.NewBuffer(bs)) bs, _ = ioutil.ReadAll(gr) Assets["lang-fr.json"] = bs + bs, _ = hex.DecodeString("1f8b080000096e8800ff9459dd8e1cb7b1bef753141630b00bacc7e7183ee7421736565ac9678ffe365ac986010101a79b3343ab9b6c93ec59ad0407b9cd2be42a4280180ae02b2137baccbc499e245f15c9fed93f3b02849d69b28bc5aaafaabeaa79fb09e1dfded1e9093dd4177b7768efde466d35e1c1de615e5bba3ef2ca51a57da5a8d6c34a5dd31387efbc589bca38ab3c3dd97d986e78a63b174c74fe62be2d3fdf7df0c64df67b1d026fbc6f6bedf5eee7cb6b7abe1a86e5a671e774649dbd685d1fe845506b2d87f868ecfa6b7eeb54fbd644e3e9bedd1a878b60bd5149858077771fac695df87a9069adeb6da5e94cfbadf62c823f99da797e59d9dd478bdb8c3adc747a52f9b6338b88bbfd3a5dd0fbf1e1bdd317f4229ac6bc5111c6e3f5fc75f7f3eeaf8eb03e6c6d5c107f3cd0d546f9e1b1eb2ebc596f22fdf33d7df15ffffd25fdbf7ae59674d7f935ee5153dc685a39b621d4a57bce466f963dbc16eeb0b463e3357c18a07c8005548d8fd748d284e741af7b63a30e8318369886a0acccb16e744ca0e9d47a54f2d884ca59ababa8eb74e8e47bd9e3aabed5360e86181e8829c66de7b6710ae853e9a4e7ea352397a25736acb4dffd1d9e5365fbfdda08c2f9efa80f7f1bf09d96a6e096e539baf3a6eba07ddfaa65a3e9c5a93d959b47b3c54ef93aec88da53e5da56c1869df250bda6977ba6bbc3307ab947aa840001802ff7ea0bab5a5361213aeab45f39df9282d35a58a7a29acd07d85e905b897ff3eb0b3eff049e7175ff46911e42693ccb416652811d8d27b4357edd370a27f7b393790f31ac71d6d21bf6844b3aecde4109acb8f184c57055a0db179897870f0cecf3adf6019ecd3143b3b58ec337f0322d4d0ca4bc26b3b6c0564de71b6da971ee15c3178620a0dfae75582014814a4b0f8e9ed30a52c24588ba4d46380a45e6ee1f302a545d996aa38d771438ae44b8aa716babb033fcd89ba0c41c6d5f23fa7f562c5f22519365e81b168efd405a1115f8e8e93d92e22d5c53b3e36ab89942546d87efdb74fd40c692a24588c3030427ac98eee975d7a80adb250f7130d5b4bca07061abb88101e4724fc34405b90e8e34e24ff6190b965b570a6e5bca2d813df81237e81cd91e30ec14149ba9f1638f6c01f3f4cb104dec77bfb0406042712417b04c14b972efcebb28114d2b8fe3b29ba855b5b8c901a81eb604a00e0909e8ca06c80db24ee7a6696809db01736c488638f01d0bdcaba68737fc0dc6103dd6620fc81afc492be439fcd1b0441f793732345461a7aa06e238cfb0d9f23e8b0335ef811a9ee56aa47931668e0cd648a240ad7ddf290990d12ce254294d6ce9f2f89b172774d4e30e162124998eb01ece9daf530db21b4966d893b6a43280d76e918038f093ca516ad8ad221e319e2d5d5f7af975847d0f844c5fd356fb9c74bfc1a7219b7ed3b8a56ae8b8642549de9236b46711b27c69f33cbb4ed3eaa5fd27752327cadff24c52039d0e5943d497a7c8bca763e097171e6add9504247b1f2b49c9dfe65029fb1ee17a81537fa3552ab6bb3f37d1b439a8c62af4c855b7dc58566fd84aa7c8c2820bcec674fb5bb758a999ee7eac381e64fb958d8f7123afc79daf4952ee3d893ea9a2b4ffd0dcfd3c1c0cd51419fe355f3a7255c53993082b5b27e29ef61108b735e7e767fac71ee7898d9fa07a23df26618229e4c194a6b86e308f28629e88da4f2606e6e24c27c7c9f31c6493f22c6b4f1070f2926bf59575c03e2f8ea1f7f4a1a48b87c3f7d5aa31560fae633682d819966d59bd776509c9ebe98ace900b8bdaa80fb6f2a86e6fe6fbd64eacc2467e64c050a7a69607b0305b5c0b85bc64dca7c08b3775f19518f50cb598b9273d2e79adec3e55713326cb829b945875820b9781aee7cc49dfe5145b792d64c4ac08dad54e730a8ea45f233f2ce839de4452810a4c3955c520dbffc3012a8be597fb8037397d52d800cd48185ca0c566201176e3c6543901a475590fc954a2d88279f8ee1db44186853139ef72c6652d0cb47dcab56cf76e38bf630420eb515f521e8b44268eaac9a70e669150a6739578e0d1ba577eec734ebdde1a7d3e63f5bced5b137a35d2f019b72fef3e3b7a7c2b77c7fab05567ba4b279c77b670c57e0241f92e67788dd8514b649f2af32d3c6ccc3a0bdc1fa13126861224c71c04d7d1d3c9d694267e25434cf633a4a6debcf184c080b8f56a2d62033207e3ccee824b27b33fd3e0876823c7da9217e989d675ea1d767f4285878102c3ead2ee3334b8529ebcda4e9e42bbc23b87cf658d8d1d2544849a7004850dd319a12393403a3771b348459afd83a440994308bb027d32420d0001bc4fc21ea6b85f8c4746ee1c43ce2d2bb3ee0bf718b68806dfe144e95242e21145341f877437df5dcbf6e94678eb9e6bc74d803619cebb6665103a4ca5e7b96281a482eab7d4f23c20c172f650481499702513a52e230baa2488ab9e6bd935c18e14a2d936295a7153c0030fa2137299cd77038582c6e719dd8f1d108a9be3db64d1824b432df482e085b96030bd9e5044a6dfb14f2a272138ccd8edeebd1c9ba206b6e4a4c448ab6f2474679b3ed63833d70b8eca1160aef715d2746e28efed3ed466ede8019ae421acce04c677bd3bcf6ced244117856cab99608fd2a2ebba84f5f2b1acf41d2728fa1ca27ddfca8e9e9f687e0483f7a3bb519ce8144cd855aeb99ded8509ddab137de697246cc7b2366bc259fa263d2fa9efece69d25f4f2c7c98ab412b44109596ae817606362232fcafeb461e50cf7a16cf37ae291611d4737bd04ef6cd611dc2a9e732001a132aee13687bb10ed5677e6278804c3b56c9c71a8ae01bc2b2e89688338b2b993441918e71da380a0d17a72f2586ab9c121a5f0e246960b24acba6c807cce227401bca4746935faa0541aa0dd02e935fa0bc8fbd71fff365710c7eb4a0b463d47d05299d7ee90159322895adc9633942408d4e45e4d8a47396e4147c48d81e268de0ac8f5623118952bbe5aaf3d20c9b480c3876b70955bbc7e099b341784f46a1a197ba8486fdff6bef9e9a7dc77b38a71f70bbfc4d4404289bb263c97526a42e7ecee97ade67429f292127cab2269a24c5532a4b43a23541437d9dc46325d0133315b567841a3c95a4e663ed70f9e5de44d29d9a3e8cf44a7b1c1f82c598d91b7e662522b69148596289653abe9593167b9a122a564a8d22c4889a92fc99e995c23782e3ab6782f4c44385e64e8480f5cc3da48cf27f2445817133d10b257325582613ab0139e12a1a1e57711b86f18c216fcaceb86e10344ac86a4eff9b81a94096788e0d490d70ccfa10507a65ad14b802b35b136a8e96b78569964b5a71057c811278d7eca822ab392a4bb7b9f1b68868002cf4bc82394f391c489d12402bddc48f195d2f8a2b7b85a54ad021109892c8d6506e81ac71e70550add6466504b1e7d984e74ab659451bba9ca502d0d00847a320f05a6726d1b8304ce0410a47030a6e8076521e292172105b6b2b9160d749ac757042a646a7122d872dfd46c5e45fff3c5845ba340319a00149e37f14754b6067c01771367dabe45b3084b883b42a7aaec6544d846736cc84b1d231ab43a792755399e64187469e9563228493965bb7b07c560a8630d1b1ac1292b93c6448dda7a1949b0a232b9f43c5a8286794a94c66650d2739043f2476efba0a2cc9c38ee3b25554646b4f2c975f24b81011ea7e62b66638ae684872c1b655f5db94552beb4005bf5c6cc83a9c8892e7984240de79e65e57a982bb3849769d4fb1565aef172afa03bb74de3d00a38ba626da92dd9d6b49f07960757f455382ecd6419d6456f843c0fd113c6702cbce0401a5e9651f35734b21ee8853d32b662890bba7fd5a832fb1a2c9bd561b41fcc8d2308625cb966329584ad5e69dd1df2d854a6a9f916d99d0c8021c01498df5adabe56c6288782803223b8e1b4e1a436734c5516d9a0d7bbfcbac3e3844fa2e6952dfa5751e1a72dd3ad189b77abff91d8f172e132dfdeffdf2fc74897397f032e76707db01f96481f7ec2e1ff3534de5f1c1c0afe68ffb30359ed99c8858a55dcfffdc1ec0c8baa71e3cd2e59d25cc3e845e721e8511690090128d2456ba9da29f60f87d04f3f168defa1deb32c563c815554176d7f83297b6ba0e56fbbc6ee23aaef8dfee9784272bde3abb1c3fdcdde7f615fd9dc10948f65a5e3783aceb3d2c9b7611d9c02329f3b7afb690e8c4f137f8a69ec90f9c3dbb77975e4442fba6b7ffd9201d2b08739c4e579c4b8a8e9ff9e3f3f3d930e90e7bbe3469f57e4f0c9e8378f4e6532321f847ec7bf5aa85a867f4a581527cb4349269c656156c6af8a93f1fe102475cdbf744c336de07157744edcf2bbf48b841a7e58e678775b498187405dbbf4fa33dc86bd3f0ceba770286fa6ae2ea5cf86bf81472c77efdbc5cdb7186173fd5d34cd4630335e6626a8333252586bb9dd52c77326afa98de6e9da85d4908a2754207a78c36cb504b5d8a855b1da80e0239cc1b9cbdbdc908f8df88d469ae2f8b2b54ae73b1b0381065d62623ff4d227b870996ca16e89b5718933997e42f74ce9777fe15f74ccee231aca461801cc36f956fc53398fdc80d4c0bf7de18ab17401227b362018dcf47d9e819aa1cdfd9e73129b4a7c04cff0b42f120f6772e48891ca1022d52bd43874b792ca84e4e4d9fe708ce19f11f9357cb061ef939ffe0d0000ffff010000ffff92e32a3a4b210000") + gr, _ = gzip.NewReader(bytes.NewBuffer(bs)) + bs, _ = ioutil.ReadAll(gr) + Assets["lang-pt.json"] = bs + + bs, _ = hex.DecodeString("1f8b080000096e8800ff8c59dd6e1c37b2becf531002024880343927c83917ba48e09fd851645b82467210c040c0e9e6f4d0dd4d4e48f6c813c38b7d186b817d013fc0ce9bec93ec574536bb7b246563c0f60c59248bc5afaabeaaf9f895c09f83279767e25c6d0f4ef9e389d916b56a0e8ed3e4c27681a62eda3c5496e28d2d158dbeda7dae2a1174d30863cbb1c4955a5baf8375db3db946564e9b6a24eb94f77c7afc349d50a329e5f264d3d85bf1c458b36d6de7c58d9795e2335dc0e63fd09a6b9cb6bb0b42b214fedbec3e9b523a1f64d03ee8fa87bc9b31b633851273e53638048b6fd66b0f4d0d36a37337a3a31f3b94f57cecac7ef5d3aee20be1ff4ae63d9f5dde881b5847ff01716b480043275d30db10de4b0363f7928df56cf979c009d98acfec7aeb74b50ae25fff14dffecfff7e277e96b55d88a7d655d0a61461a5c4d292d5a0a978664d707ad1e179fc299ff667eb6db1122596efbe34ac8b6815aeb650413a234f7b159eab460556ed4a96cac93cae7d618d51455025cdfef81e0af9a60bca64115b74ad32215ffeb9ad470359ead63456025a329ef346b9469625bfd14ac2cad54a855efac752336eaf54a9ab913a349ee1db4f8ec1cb0253f466b13decfe68e4a251e2e6d25cc6c7e7578fdfb348504e14b66da5f06a2d1d742fc5bb03bd3e25d8bc3b10b2c7b9b00e13e5d6c85617980856ac955b5a073ce1a55a18a31025591368dc0abbe4474dcb675101e0b1a6b3f828688cc71a9d7522931b09d534f8d7ba5285c999786327640819c1f9685f8b6ef08959be9f73961de6c510335e6818e5ad721e8f97fc227dc333913d462664595cb3d59e04c442072fa0bad095b10ea6ba5d29231a6b6bc22d8c210aec51293f83fb2981152f9e5c8b2576f15b1f541b0d41bb3a2fdcee7388a8f0d8573a11a4171a1a88152ee7b72646a48d2e05bed40eea7ad66e26fab75cefeee884139c100f988d358faab67890929eabc4e30ab87cbbc6f74dba320e1452cc7cc803f0433848bc9953eb461610c7cd4af6a0522cb6a44e11566ce8fe3a62d92018e002ac338eea5a8f18d0623d5e396d0e312db0ede8b8935a06d9d84a98dd673a432c1aede82d495b4648048363afc557b9191f7fefb66b67033bb3583adbf6cf215a5a8ae7b000a5237f52fe5820c2dc13c0be9ee7c52d5d64018bc1d3c97c0467e033f4d02e9a0e16772313f87a5b9630c1d2edee8ca007a2d7c2c356ef8165c9af8508151d5ab96344aa899887c21520ee59b2c4e48a8c42c2069beba2cef65569a33a2a8190d728381622de60137e47d2ee3c9ab89f787973269e74b88281cb720c1397d2fb5be848d2983e69765f706d1a787ccd8d8fbb937cce286abce015720b349fa44a962e27a9f4a5023052d09cd7729d83e1cbc62e64239ef74185d7c7b191b3ef494f63631adc8b8c67b016fbbd6ec6d9eb8c9d5a5c667f678de3286c0d271b5c76c8b8e74aadfb781293a75aedeec8717bd0f792af70494fd1bb5132a549659019b27f64415becdffb95ad1fbef69eacb8442c7d7081a7283b5db5c78278c59ea95e937e8e2549e6a76ed395f7443e080e94cfd89738018ac373fdf41b7fc46b765f2a849d8cf4211b66a9d14e175d80b02929a05ea9df3b588cad7a89e4d42016e83064d1373626daf7c3003ce3ec398fdaf2049fc6136f64abd214328a19e680699eb8783aef072fce79e03c7f5f2e1b6d54a208e48415319c4667335c985ee0faa159c49a8ba59823743181731cd347b395e51b93ed5ee95687b1056f42b5bb53c46db2e9fc42558ed2043dedbe1d2f8004a7cbfe457cf42ca73762f70553a398d3afb894613504b91e1531202a2438420b68c2baa388277e49a1b1708a09835e0a285c5a45a13308f5018e3f13d7580943410d0459270bc2d1e1df8e44210d2dee3c5622a08179ac80cc02065ac6643ddf7da9114f12234f09028184a322f21552838516e7a0122af2014f610314a515441938872eb53148c3d7aaa80dc6a222747c8de3fb78e539e6626b6ccf2712c3c836613715b73252b5b714c82d322756861ca32e9dda68753b61db9c11b0118c5ffaca814fd652dce3da574f5eefb3ead7d059f90778f5954a24559c1143d9e0350e23349e305965ffd6692acee595f931a35fbc8aceeb47ce319289eefe98a78f040930e3edea698eb9529e9e795f5bb28ad9aac6ab47948595a2fde6f441e245f7e6c41ba5ca48d52fda38b240bcfdb2c9e9642e3731b6129dcd83d0a6677b373db9c82f3d4744866d09ea4c0dc81310a5900b980e8c1ce256871567fcb7bbcfcd7b70b3a64ed99ca1b391640cced69208130086d43c1bce09548ac5b462881f358d99f8e19c4ffd05a77015c092285d246d13cf9948962cda0b05921ae681448120808cbdd4a41f38dcd4bd67e235d803f9228d7b444772787a93c46da235f8bee7d3ddb8f00c1480a2cf4c6e8f7d77779cd6f002b46f9bb84fd3f4c6d23d7331b391c2b709a36fb59762c027cd187835e4515f817ea5304fdc75c4c4d8c5baa82eed006e2ba28de1ffaca499e484f9aa0b25761eea5590cb3c693b8792fb592ac5ceb14d3d54618c4ef1d4d9db4482125c1769248bd9f53a82953fca61032466b2e837e285755dcb127b43bd243286b804abb5856d1ea454e94bbca2365c611966887d6818e10bbbada8921882cebcaf2d26e52c09267f990fc5c77423e6e094920021c23cec29c8a0b3b42a0b387e0753a17832c498efeda10dde901d6fd208f076196ec921005d6e63507d420c5ed9e5e9f4108a9c4cbb94dbeb06bcef6ae0b05bcb5a91e9541269a055097a2d37a7f7f5f10ab51a4501f806dde85844e7a1ca8f3216aa0c94d62d8703b1055462a4a344930235549d211d04b7c57efffefb3fa6da2209d7385f6ea25dcae3a4968797701d44ff2058e483c8fd29f5f5c70c6f3b1314543d5226b91579df2c1b9832b0ac2aa72a4ed37d0a2a52a9d4a1d62a9a2dd49020c2d42b4008f9f8b173cda74f0c2c5e4a65d790bd625e8d6beb302142ece3fdf29106b0c852579d8b65c30017497529d560c419400ff486b49c89c14c2d852797023f5ea3178a911a5977b2758a53a311aaa0087cdcd8f05c6e31379035f6a19ac34f4e8b418b4f8b6462e837a4055c94992deaaee931138b2b53b8ed9a0cde3129704c0a08385c4a96303642ef198f300922de057e547323062642cd1ca8b1821295d60aafffa0ea16f5be5caf73e58e2d9639a03b3a0e598dda38bc71ac6b4b0267ae6401a696f562d8726a2b3517dfb2923adaef392e58b3fab1dabed72a1c95a2a5a467a7784fab92a81face60108d86c23c18c2bc9d7e27b4994be8959208958d7287206eae3e59269262e5abe8f6186e624c746e8e4237925e606b4d59102961d9f07483220a9feae005ad66dfa32d8222552ca1f99b15207077a36bae4870121ed9a924c26c5ff7d3ba2af48798414c0ce9331f011d908e925503f871ec874ed029f8fa38901bc22bd1cb8e64a11f279d19a60239b647162ac2dee5aaa94a14e431f2118aeb5754ed581cccc5437e655981cba05f05b0587ec93f102de926a05ea94e8e5d2d968db85ad29da6ca8f1a03630458798c394017f91990d924e14d4588dfdb0f3c47abdd5884a59a60d0bacaa6743b505bd895db3d2ac230b84077701e8f9390447d554132c6d075ba5b4fe2e363bbf178919bc3be8e19aca92a1990337be676ace1bc9d0e23035ec8ea6da12b6127d8cbd16521f685ae90057d250213757bf178995bc3b38896af4150963bfefea10f979cc9a1cda81b2a5d3b2d708483e9ada871144b8b2cda84d0773d54aad8fa91bc90dc5d45205eb06282ad9825a0d5d36ba1701651173a2f479dd2367e573dac408653f49167de8c5fba38743db11e9a3dc850dc839c9081915cdee736b2803dc07861b572a0f1e392a5dfe3bcea6db0dd7f2fbbcf8f0ffbf1b3c9cdbdc0dd8d4d1c34e7edc7b78fed982fe96d0f4707674ccd0138727473c0b2843b020bc1ffe763439c32003ecdf68623e434e3f56534645a3bb27b6d0025a4ee1d8a9d32b2a6cc3c4df531c000a3ad829ea3a0626a94cef1455a6504283bf1dfd058b7646ffdea93fbd0d441e7f9c35751efef26b3f829f1b539bc4e42f6aaacff3c49a3ce779ea2efea410f086def2205471b2bbb6e2e3d709cf5f7f4aa562153bcfb117f1f1639a1e18cecd7af2ab0f563cfeab0f370946bfc58c4b7cfabde0a7ebebcb39176a2f6fcec6bfd9a4094aac349396a4a6e3e8178c7ee6176ade430d02af64a644b1e99843088557420e902bc3a8df9d5da42ca9e13f0eb19e7a49c1da183c99a076f414152263340cd322dae79872b2d0083b15e7e4bd2e768205afed9bd90f045180b1467e9f3d7e9f01410fdf4a8949e763c2b5f408809aabfd4af13d172adc12358d652f35b0b69c460aea0381bc610568203b375b0b491b4ea33ec0ad41a3fbd532fedc9c0ae707cd055b2502742ca802a8637d0c7b3563d49b2d2548bdb2eb7e9c4cc8e905d941f7ad072206d3f0f1018415368da5775a907e73203727d225fb92030b47b18209336eb22da94b931fe0d7586afe9c1b2abf8257b20dd8f8303935cb0260939bd991dc74bd627d2a12bbbbd0522d4fa2b84e964e1b6bfa998c96e281a815f5d5a7ff000000ffff010000ffffc2e3d99d09200000") + gr, _ = gzip.NewReader(bytes.NewBuffer(bs)) + bs, _ = ioutil.ReadAll(gr) + Assets["lang-sv.json"] = bs + bs, _ = hex.DecodeString("1f8b080000096e8800ff7c91416eac300c86f7ef1451166f5688cdac5ae8a62731c4402493a0c48c8410776f0269caa84c171013fbf3efdf544a3f444be07d2d47ab8044070ae5c73f217ea50aa5816c2f85e98b74bfde8e0cf5b73741e07adc76f68a6ead61349cf2571503066d2780d0f1f12ed6d533f0ecb72d73811ceecf206b263c1584123f818983eaae963a48cb6fa2a7651ae28dc851508947d4a8ca089e3badebde7ddb7ee4cbe19e4d94c1c56b478d55cbbe2f76607c4bb3c2d7649ab625eb513ef7e9ac6574e715343373f0c0cb84b53c3e32d3b011e129147630134ba18021fc3d3feadc3258dd57f4c7561c8ef6817927ff71f4d3fb679cae2a0fc50b2f394c413abe000000ffff010000ffffe37f5ed168020000") gr, _ = gzip.NewReader(bytes.NewBuffer(bs)) bs, _ = ioutil.ReadAll(gr) diff --git a/cmd/syncthing/gui.go b/cmd/syncthing/gui.go index 3c750f36..e55bc568 100644 --- a/cmd/syncthing/gui.go +++ b/cmd/syncthing/gui.go @@ -106,6 +106,7 @@ func startGUI(cfg config.GUIConfiguration, assetDir string, m *model.Model) erro getRestMux.HandleFunc("/rest/events", restGetEvents) getRestMux.HandleFunc("/rest/upgrade", restGetUpgrade) getRestMux.HandleFunc("/rest/nodeid", restGetNodeID) + getRestMux.HandleFunc("/rest/lang", restGetLang) // The POST handlers postRestMux := http.NewServeMux() @@ -459,6 +460,17 @@ func restGetNodeID(w http.ResponseWriter, r *http.Request) { } } +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]) + } + } + json.NewEncoder(w).Encode(langs) +} + func restPostUpgrade(w http.ResponseWriter, r *http.Request) { err := upgrade() if err != nil { diff --git a/gui/app.js b/gui/app.js index 6d667146..11aa5e6a 100644 --- a/gui/app.js +++ b/gui/app.js @@ -9,6 +9,7 @@ var syncthing = angular.module('syncthing', ['pascalprecht.translate']); var urlbase = 'rest'; +var validLangs = ['de', 'en', 'es', 'fr', 'pt', 'sv']; syncthing.config(function ($httpProvider, $translateProvider) { $httpProvider.defaults.xsrfHeaderName = 'X-CSRF-Token'; @@ -18,7 +19,6 @@ syncthing.config(function ($httpProvider, $translateProvider) { prefix: 'lang-', suffix: '.json' }); - $translateProvider.preferredLanguage('en'); }); syncthing.controller('SyncthingCtrl', function ($scope, $http, $translate, $location) { @@ -40,6 +40,17 @@ syncthing.controller('SyncthingCtrl', function ($scope, $http, $translate, $loca $scope.reportPreview = false; $scope.upgradeInfo = {}; + $http.get(urlbase+"/lang").success(function (langs) { + var lang; + for (var i = 0; i < langs.length; i++) { + lang = langs[i]; + if (validLangs.indexOf(lang) >= 0) { + $translate.use(lang); + break; + } + } + }) + $scope.$on("$locationChangeSuccess", function () { var lang = $location.search().lang; if (lang) { @@ -134,21 +145,14 @@ syncthing.controller('SyncthingCtrl', function ($scope, $http, $translate, $loca $scope.repoStatus = function (repo) { if (typeof $scope.model[repo] === 'undefined') { - return 'Unknown'; + return 'unknown'; } if ($scope.model[repo].invalid !== '') { - return 'Stopped'; + return 'stopped'; } - var state = '' + $scope.model[repo].state; - state = state[0].toUpperCase() + state.substr(1); - - if (state == "Syncing" || state == "Idle") { - state += " (" + $scope.syncPercentage(repo) + "%)"; - } - - return state; + return '' + $scope.model[repo].state; }; $scope.repoClass = function (repo) { @@ -182,19 +186,6 @@ syncthing.controller('SyncthingCtrl', function ($scope, $http, $translate, $loca return Math.floor(pct); }; - $scope.nodeStatus = function (nodeCfg) { - var conn = $scope.connections[nodeCfg.NodeID]; - if (conn) { - if (conn.Completion === 100) { - return 'Up to Date'; - } else { - return 'Syncing (' + conn.Completion + '%)'; - } - } - - return 'Disconnected'; - }; - $scope.nodeIcon = function (nodeCfg) { var conn = $scope.connections[nodeCfg.NodeID]; if (conn) { diff --git a/gui/index.html b/gui/index.html index 9d9b0320..5afb12bb 100644 --- a/gui/index.html +++ b/gui/index.html @@ -153,7 +153,19 @@