Checkpoint; not sure where this code is, but I'm rethinking.

This commit is contained in:
2018-10-27 15:10:19 -07:00
parent b30fe6a75f
commit 43b73139cd
248 changed files with 801610 additions and 516822 deletions

View File

@@ -0,0 +1,24 @@
d: 23bd96c7d8ec43a28887a2d20c87cdc368a57ddc1f88590044478435a8dc90f77fb0ad8328b0c0e3b968170a7d659b13c2685f6d3399732cde50e7c031a8cbaf3c3a1b184ca7b9a6e2f358b0203e0ceafd853194163256816a4244bdd89817738d361a60e5b8706a0997d355a0e55077f293d0a0bb1f662f9f58cbac9491fe083de49bd401d269bd9f964b03cff9e6e54267df21a0a59fadb5cbf4c24c350264fc8ae8d15adca20324bcb0a1c79c280ae1723e6d660c961f9674cafde6e617bbbf47fb729a06834e5d197cff969a588f52f6f61562a780154dd189cb17e44bbf3fd283c32a3f0568615f8bdd53ae55d4bf57baa7b71d421e274319319c799ac44785bdec987c8c3e49af27f0e103fc653b558da2fab1b00c1303f484f47bba57de73fa08a4c262a9140214f120d973088abf5b4ee776b76322b48f3fd007ed3247023b2f7e43fc0e5e7a0db15d9e70dab30f53b76f4db2d8aba83ae6f649b59bd676b2c8b8ffaec045c2f180f670e002d32712716801ff02165e54466bb799f31a4d7ef1878946773fa170b2ea3b7609c6a2f035e1a36c2e5363445c52a729b9571ebe93bdb62cb59835312a18f1c97189330608b5c7aed4cbb458b96f24d4ec8bc7649e1d6694eaf2f3f9c5108b59e9a4c4b2371daac2eda1895c23aac05ab89bf3c743466c2831a0806c7fe73dac84a544a140ecd29e1bc43ef4a64ee34f95
n: b385f8513939c8aa77974aa8fac9afa35c074f0dc07f4f1cd18133988ab8e1b783c4061445a6c6dd447b6c268115fe8418732b760c46922904485cb598cb9c21b4dc173d1f85608e24c10541fe19aabac6f9edea509717afe267e929f216776c77495cfdee955fd8a424b570d53753d58fbeec2513fc7468d7e9d946ba30f71b4cf57cd927749b473d3472aa3a71b7f4cd73368692ce6f557c8e106d6c6b744d16924c63644a611919836a941eebbc220d25f41f5cf3cf25e8999e5ca07511aa4c246e1f52e3b92fd0479dff1bf7c83b52cb777c8e6c7f3255b3236ffa7e86b9d1839de40065647eaf9f6990f540470235f248ff569350eeed7e2de81372c185bff558a9a69359f6726c48e8134266a4c36cfbea9a516f9741819ba34c1af5ee35d0b789932149432f757cc8ef017f898c920fdbdb96d942d1ed62385e3bca6a89f457c57503e6d1a0c6f93a133f3a5e54a21d9c9060cdb0c2f9d4dc2f0c3f8d3f542fdb6ec885cecd335ddc8fef4010ab3187534103c7fcdf16cd036816cd15bd535a946cfee3a3a67d87957bd8e093c5740902c93b63fa5eb3d51c44750a1252bc059bab64837a40636e2ae2d5a4a901af5b6dd2b97aaa1d396b900a807be2f74ebf5ee7e21670fec673a73022660052ac7b95263165651134b6fd62cbb5626804f36a9ffb3d9737731d29b7a7579c619a18259c91354e18113ebfe64394db
h: 256
m: 35a210dbbc412f7e18d4219b763cd6ca665a386ef79a3d3e0738a1dc172f051d71391a3a711490c7add535de6715c066816f36593fde3fa9eb140f552aaa0d59f4c3fcca48f947cb9130400337dcb620442ba507eaaf93c618f4576b9c60a9c961d9b6248f2100b4fbebe348664a3d772da4d173e1e1ada8bf242ce0c47a0d1e6809a3763813a58435cd42dfda17a7c2b7f4b202b9dc7c7ac73d6a60cfcf60c936fadca1d5d1bbcca4cc7b1460ea62825dd39e7d36488e3d63c64c2dd99ea684b081bf13b1b7ccd8d9f1db9de75165f55238ff13d9457c51377a97fc8c43c3698b227bb46ee96c901a289f17fd875226e92a5ee614727f17853f3fbb3f0d2e4a14d7531041ec3996b026a536a892a6e2aef2dda49e32e67d3abb338399f0a7c6dbab13f4a26f4bcb9120c18099fec4aa1d0751217a35c91c4f57
s: 2c19651d9d6415fddfd8dc08dd80b618c79d0a9e0412e0281c7c73692a68a72c07167a682d284b41ce62889734a80f51afd0851b76c91e831ec2637d790f4913b50c13bf08a1ebd2350eb41fc307adf6c00b92fc93654244a3d1c5ed1daaaf7cd2fbccc1ee36621a20bb1cf766dd3e7394006f2e5f5fc8358a475e13f3a03accdc25423d7a506521fb580973878d615c2eda53c71eee6bbccf2effb75ee8ae07a2f0908bd6b7368b0b3500e65a4ebfd057ec950965fb42680324b08c11ac0e021cf0775df8bf0df10a5f8ea5a397fef230e6f9690c0714027a407d8fca77c41905f166e29f02e78d45c6ad0d5d5155142c344e9d10c6a974740bf3e066b64c20d082bc477469b6d9f547989dba126dba8c17ecec8ba221e7fe3d54c2530c4d348b6d3bf6c1befbbe6caf8cda65dc970366e786ed4f486bfaaa5431dade7e1585d86b5258c958767be527392bb507c6e366b3570b824de72a8dcd8e9c67a457ed8675bf355fd349fd265c7482fe120d068138d143d5ff16448ba275a6b5de45fe9ca69504bc4fe5747c1298c8c8e797e08fce89220e56c28720a68f05c37d2cba0998732f68e1cd5bfb95a18e90be61981763e058ebf1b6054413a4a005755debf027b18a205be1947439d3236e05a06376fb45cf1d5887bc8b9b85e931d66c00e1614a85ba4cfa5b4c1926d5ae26eea85aeac32a30db69b0c6e0527169dc70f2
c: 186e8051e6afac47589a2dbd981e36ab551fe5ca822dee05ea445ae6ef54803e14b88443d85845e10d3cbd435485c48c6c65e0f224dd132985d4e13fc3807f71669eeb51e61160db6ad7a11093a8f10653764ce1c77ed4514ca5e613f87e5bab6cfec94891ee518f7eb0e42c1051c9cba33f836db70df275473e113057b74cae39c8e75466bd6e54ac225d759599476e4ffe1c6a6fba561b7f34002669240e77718d60b77712da404555d94bcc432b87f509089276bd636287cd9eabad4aa04b4ee7af233058d8e8f7efc56d51f5b3549e8a931c9285e5d12e176f4d6b7d873002f7ac41d9d4236f51b7c60657c6aef75530fd448503591087b03d979a2eb961863064ac4452fc6ace6c92a9c52e9bc4359d667d5d07fcd7bb4b3f7fd5f870c9ee0253035eda76885112f9d688082abfe2ae5547795e0fda784c712ad5959ad6c8952a618737bf8ea7c2dae5b9bd8614fb3f6dd6dd8bbd13ded087c13fdb490b5921e83688e80d797246ba13de5a4aef5f0a86dd1067ec1f785371a9c8a37387a91a67d9f69b6fccc5503f829ea3bde5e4685de8c76ae619003533bfbbc44eec85f9e25473dc00cabd2321e053de76f61fd23dc3c82d0f847fa2acf37d94d91ac11cbb8aae84473a43af298e9b3a44873dfeff810d525447e821f73c4b2adb56dcd6e1ae6a022d2ca37cf206dc2f96e9f370544048e4290375eb305772aa465e
d: 30ae6776ace5260b4bad4958d30b6ba88520bed3d34568f2256fadb4f53f3cab829e67a0039311ac7adace2a6e7f90a3f9ac96c0c3d6e943a03a102e4996294778dc8163a10d31ad0e87b5d54455ffb51ec24e266c56ae9124e10f46c089179047ecbdbbe11acc2fe81996add3dc4e5034161956f22db4d84b4343882bc684b0a9890324b3c1add977d9c8efb684921f1eb727fe179d7c326bc6547af6ee5e05b1dffca1981138ea51a6d4ba5d4929aab6aabfa9f4219355162f8c2e52e9539cf0df8315111a1174709069162ffc1c85fd448c71cd36a6b436d5ffb12a10f6f029021a2d77dd30e4eb74b4a1d689343888800a190e510dfa4e87edbcddaaddb821b228420a5c7856bc2594ea0512c2d1a35fe69c9b3ee9c2e1c51194ced8166aabc08820273b41ddff87d3b928acf58ee2a92dc05cedf5dbd75801152a03a8b92042d7312b1a86daa8ecd65ae86dc5fd1bca7cb588f93d633a4189c735f5259155e1942def2fb53ee74d5ef05d8cdd4454a7dc4995d09e1580341a4242d8fbf93ab6c65e931bd75bca0bdf0cb734a129653d5904834f8aa7632dbae09ff191269d7b2e3386d60bf7dc94c26ee7cc6841bd74407b528891d6d33e79a671210aa2f604791b27d2017f38706c22b30581da21f39f49bfe6f7413d9bb2916b2d24724379ef15b6a08c71db83e974595be1eb79164ee8c944696e725860c59855dd2d
n: b9606981cb444bc72cbab124cc59f8e766cf5ddff9f313c11d9ec80efa6341da8cc986772db7ebd2c25b362b66323806a3867b04bf13271383f0dd1a1447e31ba58837df03bd03f3f4612305a1efcd5a86cce1c73375db9962f1135b4682cb4fe8098b608e6b7d0ddc28d3dd9e2be5cc67e394b5bb2f4b5526c76fa5e8ac046ba2e141bbf63f76d7d7692ecf7a6e11255721df66030b030a5c199e3051a6ded6817302c49429df31d0f0599f63b0b3dcc087834d2c8ccb9d2a6caa29fa449fe069dacc4096a332ad928cd7c02c8a03b48d7ede7498e366fb89c78efff1c083dd944bf013e723b027925e4aa9f5cbef655fbbf8e7fdb600c76322b2f7f75e648f271547b075257036bfcf7b5448b410021b44b034ff04d37fd1ad2ad9973ffef2d065a8bc8eb2c711a5c07aad30dc35b9b96c4541a682611a82ccc5609b453e6867eba2a9dc5ea0930d7b39329bfdb15fcd3d09b102fefd84f2828543b6a5d85c2da14447a1c85f9895ae8e9298ef3142264b764856bf6a3958cf02b645c58a9a317529778397aabd3da525322e02c205d5363c2c1637cde376c45b92dc1208c2d28fc6f1ed0319afa4442c5195c73ab4cb5c70b9b5b7e1efc01b0c3424f34a4713b0ea581b23cb2563503319160d1142b29ad8ecbfb2db7d0c44235ee8217a2951ae28d5aaeaeb1b1f41543368bf55476ddbb5618f3605b70042319cb7e565af
h: 1
m: a2809bbd06ced9c7c100d9650e9cd2cebedef1c742136c1bad442087224210b2d4cf71b4b861c29c00968fc6
s: 241a1feb662f326c35c325db0a5e243816cd4e741d9761d97ea4161cf8d1c24b656ca5e9ba37bf53657bab0a2e68edef5bbadd8b45b2045de4b2842ccf34f60c0304a0acb5cdc7c300ca2ea4698c7c4086981d37d44f970023b1f65b4eee01404d86ac9eb49185a8efe4bceb5072265293e6490a88dae2432a94fe715c541ab7eabd34ad56d3113a65449f439c692f4c9cfd58cc8f04ef0d5064278e10be9f0d9e74450a8fdd48aff1ea2a8a3abde597ce0a8b12e450ced1d81e5b1d67806ca491c59f406ca69aa1208f99237cec86caedf3f7ec52627385268f25edb4ae22f10a713d46ee2d49f1cfb73e1cef2ca19d37f61b58efdd2a62ce6bc3a2eb71ae0deb03c30860f702f760929ff12977685c4ed0517cb9a98696c7604461087f28ef4f9d524db46f9cad7193b650d75fc4a74e764480ea93e529d340c2e9e7564baf3bc55de1cc4b57fb960e8d0ad2bf05302cb3bcd87c5fab387c5611303de97199cc576e06d09b6950402aeee7e5d332cb352f875fea83ee88c7fed3ad9ff296098833711d667a01adc3b124b7c8c554d56860487564a6cbe471dea07e3cff143d0cb36cfce347acc23686affeabf8ed189aeb67d30a67a544af0b4e6f86956f4ef40506541839a6324db26e48759685e4e1c1f703426fd81d46064087f4143ea18649a2d8363cf6b0c4017055413b97fee9e8e93422d438e5eb51f388a0a8c662
c: 046f4759e1d0358fa216158e00b5e3e16af2af37d875b0568e413e063c63986e3ab060c4a585c5cde9ee2e14a7509375fd0a7fd27f9cb54e7d3663c1cdfe795b63064abf65ef7d1914a93465370610dc73f898690b7c795958ceb9e991e5ad05d5f23ab6bad9fcb0f3fe9ce62ba02d6962d2ed84b2414bdbd8f6bd36b5f216af65730245dfb8e3b9ddb1d2ae562cb52d9f0921084bc29de793fdedb3880ec8ba0d78a3e7b1da8d6cab2fe87be359bc9bd5db5d169b20664810f3fb12425a5df20084b71008128aeb019c0e4c25ec5b53c0c84b1150bd19d3d214872b7bd7801e5dfef79b8a7c6a60dd4ed4b0e3b4cf9adee33134d467b4503e6da118e65eca5f1f2eea03adf86f2364e4cd2fed4a78c12f865e38e6379e200e16f69ad55e3060296c9a693ec944a7d94c195ab722867b6a165fce28291db478296facb4b5fc9bf33f038446a6e4f785cde0e31be1c4f4401c8180c73e9ddfee64b4c709d7c800e13232f80a010450b6831c94a49bead3ba51e9ee3982bf96fe6195bfdcb93ba39618011f8efd5a4954693e1650aa5e5c928144b301fc263d63cb03cfc5a692c8357854fed044452ca1b41432fd75794feccea94ea3f68f0e22694618419a6e2d5f92b2a97d564ec4bef2f15d68a9d5b06a9cc2545b3ddf81ab19a5e3dffef45f200de2ad9f6a0a03258d11bbf03441f4b93c0733ec2574bf464531aa3ffeb255
d: ba6aed307a22fd6b205893f174d06c335f9a111b8bfb72c7bac05a9c57344fc07050be8aa03242880c68e0d0ac46a7b1e78165e73b0f36dbc2d8cda199cd924c05b5cb65a6d2fb4b8e68742630af8fc0c2166e39a15a16a1de300c100528f069c40932df520dad479ed52ce6ee29143da675708bc3c1ae85c3ac0fa2cd96ccd2a012d429a586f8415d1d77be2815fa68078930920cd500389010db880056112741637bea666b64dc9fd55104a212094b5ef0e93a0577d506e7962719e4f6dd6359d38a1942ba50c30c6510ed5603989bd3a859507640e4e83ae85fa3603e56da7d0dc7d3d89ee333c65e7479378e6ca8cad5371cb0dfa7af768a86e7e8435cbb2a4a3059f7fa27a320721648278a61cfec0b4e13dc4c39b2ccef84b15823fa20b5e53938cf84d26bb23c7e17d0426c0b51ac6e2244264fa13db73fdfe30ef941ca7d7fddc1cef7a5696001f54a607a4caa7029314a30ab02689e0c7609bc916a9b6dd8f1c4c089ca88709e7df68b00195533bc65525fe3527b57a70e92b16c5c1188d4da9de3468a1e9410ee1ca8f064df96a044c474c822a07f79a01f262750c5ff855827e35afcbadd7d9ed793f9bd50644f7c54d57773e65d6702cd3d8a62189fe07c7dabf2c421f8843c472e39faf4818fd018f573ae6d94d96e37f0533d12570c6b902ea6f856c8a0135128892661dd044757f31bfeed9cec104889201
n: 93117a5d68c98a1a2028ca30267707819d3b1eeebbd49b3a1ff9c12c550e5202f56718bcd72a1dc37f5ca37b1c13fb3e5ed3aa54e8b2a4d10a6af29244304258d36eb2609938e808503bf6f9036b7d6342896b24bb6d0aa344e3234dc2a40f70f9a60964fec2119e690363965eb7d28f5e0989aaf596a386124c62db356dbd44937190f35ba9b4e1e3e4415dfa57acc3a798d382c0cf85c2e8f41a8144ecb9c774009557df215db51182846b405d9e76a839060c91b4f037cdfe77aad5d85d5e71c588d0e70337371db524f025083adece1d53ff0fd4e41edd8959f8b3c6f95eed6338502c884548b51c2fffbdc164c173f68a03dedaccc487dedbab2407501349b5c056f44240802beb81f3a5ebb3bbd48db49b7ac57a8adc46c65896559be3cb77479b51525f173c6d97ed7dc20fe4bafc690e0a00e7dbab1a67ba18f92af38807915fa2f318537896338d37ce6e38d3452db5e876d5820a481be51cf67fc81bf12d3b163636cf33c62b1e24feb2abeed0260394be667d704f42b53ea15eb9067fe7ee83e554cdc4415341fce757a42dfea2f79cae3adefebb82035b088096e156522400e5710d652cbcb6d59c44e866de9f2d8fa50196c26c41eafd83fd120c38c139afc813178165bee19c898041cf01dbbd8bfd019491a571ef4f8c089a34c07a7dd632a6a7e2e9a3a090a0b8f76e158208742420accbb9603b317b9c31
h: 1
m: 359c9a31830760bc7ba6e8608c81c6b3c32fe436cfcd0c0bac982170e8a07d440bb4f3cd32bfcccf884d21b902808931e1abcfbba6f952f65257bbf313e3586aa3c323c00d9b923a196698acc83022bfd2d9dfd73cd34eae7ec3587718aff20a90657f1dfaadb26670f66044e86e3742d5763f7190d96981c12caa
s: 3b40ec5d8d9393e3dad1c2d17785c88d872abe51af99b5d88787e73b2f6c6781b5e9807117d3568c321d3f4626501d990a5c6df1572b9e1fbe7b6977d7c63097ae5f357db88e3a20fbfd183573c78d63b087d4e9245bbfabc6ed3315f3f2e4e2cfd2a23d67cf4d468eec8cccc7374ce57bd1a43845e9b5fa6e9616c330eb39c2abbb364080090ebe018b3b77438d7e76d3f62931eab44de9d6cf17d5c3ff9522e9da4b63725ea83eb9326a4137634b2ee9252d576a398433d9aa43f82872ef1c59e0152c914618b57fb856130a08d8e0e827dc0d37e01c5fc1c7cf79dafe3e902ff16496803ffe4e2d7db61bbeb96d34c28034e307a08accbb98e0af3f0c946ba2c6c229282f567f5e941bb9ebede1f07943d1062467da40a1322bfc895a32d2376e50b13ad4ee8cab0e27c3c79c4ead5bb3e5625c3dcf35f2ea0520c524325844935afe79086df0fb150f8695ba8f6b979a029505909b4e0718546597d0a3689ee8b3847873973634ed9f54f59d20dcef5040c5d979a0a1c870ba8d2a8e7ce62d6da9c35e53c64d60b2cfdb77bb45353b6f574b46b1592acaddf51f6e3ba3934e7b75e0d21560c2854564855b44153ea32704cd96c51031691a49437b514ac9533c8d38b03db0508023388dcd58dd53bf71a283dd1f92dea5f6f760646dee9d8c4cb624308ea791addff74a4dafffccf299e7a17ed3d5a0a5c82adccf347f25
c: 7d4c532282115ae3637876f188a20a4fb91b362eca65782b716769968969d17239c73a4e6bf027e117df6051100cfe70279716781766f3aba5654508a0b3f131e2f9e768acddda388b62ac6b99dc19c898cdef1512b995cab7633542630db6b42f776fa2c6cb63930fc1bbee0231b418cdc4b3fa43b7992e45338ab5a275bd029ae5a0d779a4efe857060c4cf86d0a90e2862aa60b915fac106e5e0c61207e85717859f49bae0b32839cc632135f1729be6fd8534b3678ff06f0cea368140f3cf7043846cd2a939b929bc4bc73adcf73eb889e07666c56b3fc135a93fed68fa39c776fc91cc1255df8a844e128c025903bd3448113a8af397a8edf6f7c478ab7c774c045511570ba4308efd931c78e2024e83afd2fe3a5f35d6abcdfdfd7d4584f1ff0579ecae1ed37d33b1d071a23aa82135cc1fe2e78eb5c1cabd3f8d67aff0073786688bfb101698a8f75ee8c038e89b661fef1df84147ae1e84d648832c1453363fb55dd990c13954cc4170c3c63f537643a47e57fb66ed52fb31d91da95af7678457038b92bbeb20bfc961922a3f7cead321cf9f2f978f2c826370d77ddd95a46e5c20d8818fd2c6ea59a3cc19369da7025d8dc6ddec891e4b9745290f6fe6bb6dd7fb076dc01eb730c06f7350e6553700ae71faace42fc68479f4c1b37f491727c0b0407a344e5ab9c434cccad020c53adfb7a4aca46d86b9c6cf0176f
d: 279cfa4a361a58ecfce1dd10f825273eb4a9d070f293b91c6cf3cff06c5d013c60fdb103f84d98bcef731bc78edf60fc6610e1a95f77692d5fee501890b80a9de19089e6132dc2f0701418b222940abe1bb26b7fefc9eb0937eb1b3c4d636e3b9229fa933d40358387a61c9d28f16666196dbc4e8a8af0f26cd9b33c9b39d532022c2b1e54811120888610c859a3c8cf7e05aaeb0605f6a70e998dfbdcbe078745ac227ba820c7f354336f3185e1e76ac241ee3a8128975bd723f7373697da478d8361444fd8f6e26841df16d5be2c83d30b3ceab7d649b5ddde092140b4af7a575b425feb3274ffc73d23620a9aa7a52be23075ef7ddd763120fe87f6f06a25a6c3e0f193d7536ae72da760f2d8dc223796221c60febd32d015903b5844cc8b03b5608bb681a230eaae0b69ec3ca9ffa0ed9af7f5125afd45ef27e89bdcddb6ce51f595f311c4c81f3da65899d33a8c769200449fd142445c77962a85f8da23ad33ab107d75b2d703a7fc77747b3f908d2923e56e40dfbaa12af92a0bf439c2e318f180a421129f09e3a435f9dd7c655bf194c0a7f16818c1de9a60210b02e646bbc3f53dcdf07b99797bb1dd3541c7d203e95c2d3897ea30d35edfa2ad08aa882bca89917f6f55c67d87a55ce315f429c3a8caeee8c6a3b32981ead139d847adaf0e0a93932a7e3a99911ee71fc319dbbacae4920e76e2baa946343719441
n: 8fc2c95d136b6bead6533b3d3d19b27bc8a05b1b1c0a4bfc4e41476e7b9413b6ff28ee54f61e2e6b79cd0cc6fe48a7a20bfb92be8aabe5e88a4bfbdd14f388daac219481d944cfe3b0d46ca861c510bd418eb1a16d29a92c7f74dae83b1ea23c3003346e449f7db59064503029f0cb4213a2dc1c38ea02af38e03f384de3a768368fb001cf267cc58ae7b61c6c97182a222bd3a120e700ca1798fa1a9d2c36d040d79752420755b81ecaabb1d2013f3c04433859e2dc3549ff17094e85e24ca7cda68a9e420a60b59792ee0dc0ca0cbae3efe53e97d479241879d2edd7c9570210083a4c8dcb3aeda670801060ba6637514df91578a500e3a0c36f6b0f2a0d52a340643bd767ba9d185b1c8e0765123b252b487b610bce6a1ab1134c41505d3fc97437470cd957de20948a75b4f87ddf2dd1ffcb31c4dc9895d534c50ec0b4fddc61ce7d7e57638a5047084fe9b036071208d98ae649e3c1e482aba3eae10af0acf88c6db3dcf926c9138d5f2e64d2c0d08251b214d39b6f3951f640e76ba3f41911bb8a0457b71625242010a99569e8aad60814e11cb5ccf8ec14d1dd758042a6857356df5bd7e162df533323250a14b5c92127945f55ea139db07ee2e897fc62ba50ba8e6aa467ee8fd7ba37761b68fc8812d2a0662dbc2453db73ade7e2c602a5b837c701e06c8f856f2b8cba02a9ac83b79a022830199917ef83e432017f
h: 256
m: 8680bb22b2bdf41478a115aea9faf962b1c705a27f0cee8d52e90eb9732eda1df29b4662e6fbc34e18f43dc0f4487a7ddcd343ddb6616763d001fed7c3895d071504ff4a9132f87fedc9fab62ccd8666ce2beb2ec5fdd2592132e2136d008521b4f3324eb2d7c25b40a0f59e8d51f0831ffa95ab54567814690621ffbea95c66cefd7773a8eecbffca12305e1270f9b285d124f85c1887b56822a5b1a75d252de6cc2b97a9cebc0f804d953115bb493e767a0aa933ed6b45786a2d210b
s: 39a4401f3afd6f65f7d050b4709ea747a38e31d6b5992a7e3fd0e81b4c9bfc0e97a8796f01c9e351fc8c986be46925545e63e100dfc53c49da2f65d006f3a301a03ea3717ed93e77c2755b79a83978af0f0f6ddd5e76f8af539aed138baadbc752dbacf18437fbea413a1b40166c207dce0dc8fac9c6fb944bb0a8c3db034f7dada2f022153989a4952d671d44913d2380af93b40aae0caf03f500f7744cb47b291ed926be38160c29c72aaa0cc7d90732614646c6dcea83c2ea0c264fb62feb6dcaa469d55749587a86db1eefcb6778eb21e5a40f7254ad7331ae1d07096615eb62e3efd7f53483d0625ee013d0daa4424b8a72c41c1a60e5e9df2f35824e6c3177e53dca084058d8b8badecfb7b4f43559cc154ed2f787f1f4bfeabf7495f1fc5ec1a83ffaa816e70762b56a14bc7b33b07723292d95e97af08f1976c659eea28fa030e12818c7c2c9bafcaa2c683fd057849e0df9454c4a1dd2c5f121f8f0a7a4bbd7b341d4765f4671f0140f8b519b9fb009e978a309b9b39e146ccff277adaad952c8a904c85617aa1f27082cadc9de717275ae2d7e0b5507702b99b39dfddd1c4e32ebc78981e554166d92af638281c6df6e134c69872261e8266e01d0cf1665e584c4a7465cd43f0c504ee7642398f4b1757fa860687594c0b5048a07253ca6d18138df32951f060efdb296ac230c23a3007b739b718af278649879ca
c: 2d731bd0ae3df0d4e79b69a9f2cdfa5661c16ac3a872778a084b7ba85007886b8730b91c354f99ea19b219556671c5a2eff00657ece0e8e501401ce2a41a8f2e214ae699e52fa70a12243e00845964e6758e56128d99c7e6c0ff0b10aaac5778a77832f17afa8a8ff734477bb45126f4e05157dc1924e84955e00ae0780d0dc4e1f6a83269bf606cd05e3f531638755608c279bed34ffa8db1a7343ef8b3cb2bb68f92a17c605e8ed197c37245c340fe30a05b93a3317565dc72658214056cd414552dc5c53684dc5a73d7ef7671b7b59cc8dadf972c2e6d551cee66d222eaa811312d2b99aadcfa4442d3cbe2ad53f1ccc7bf0833d136cd28e78f50710aaad645e1389bc63a60f61cd53ea29a2e2acecc1aad828013f35d02e25541dc65af8e2a77f1bec58292013db21ae7805419854708db44ce5fb0e84db283429f055d76a4c7536240e267414d1bcd2364d88489939fee30809043656d11633ed7ef457b7e925d4d4bfc9a47e2aa4187c830aa0e451a5b2d99795d30fc47f9e2d6a50da406d007fccef696278b8f3b4bacfea26133ad5d4f067cf23e412bc7c957ccb5de39f8ac2246064cb2bf9ebbcacf28de28ffe9a154e2f9f952cdab35f43860d6b4417d8e5fc26d4aa2734af272536895c38a5635da4ee7e367df597f4e219dfd3500be5a0731b71d710122d55aeb3ee5e21a8afb6d54bb8a3480027753f5520e27