blake2s_test.go 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653
  1. // Copyright 2016 The Go Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style
  3. // license that can be found in the LICENSE file.
  4. package blake2s
  5. import (
  6. "encoding/hex"
  7. "fmt"
  8. "testing"
  9. )
  10. func TestHashes(t *testing.T) {
  11. defer func(sse2, ssse3, sse4 bool) {
  12. useSSE2, useSSSE3, useSSE4 = sse2, ssse3, sse4
  13. }(useSSE2, useSSSE3, useSSE4)
  14. if useSSE4 {
  15. t.Log("SSE4 version")
  16. testHashes(t)
  17. testHashes128(t)
  18. useSSE4 = false
  19. }
  20. if useSSSE3 {
  21. t.Log("SSSE3 version")
  22. testHashes(t)
  23. testHashes128(t)
  24. useSSSE3 = false
  25. }
  26. if useSSE2 {
  27. t.Log("SSE2 version")
  28. testHashes(t)
  29. testHashes128(t)
  30. useSSE2 = false
  31. }
  32. if useGeneric {
  33. t.Log("generic version")
  34. testHashes(t)
  35. testHashes128(t)
  36. }
  37. }
  38. func testHashes(t *testing.T) {
  39. key, _ := hex.DecodeString("000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f")
  40. input := make([]byte, 255)
  41. for i := range input {
  42. input[i] = byte(i)
  43. }
  44. for i, expectedHex := range hashes {
  45. h, err := New256(key)
  46. if err != nil {
  47. t.Fatalf("#%d: error from New256: %v", i, err)
  48. }
  49. h.Write(input[:i])
  50. sum := h.Sum(nil)
  51. if gotHex := fmt.Sprintf("%x", sum); gotHex != expectedHex {
  52. t.Fatalf("#%d (single write): got %s, wanted %s", i, gotHex, expectedHex)
  53. }
  54. h.Reset()
  55. for j := 0; j < i; j++ {
  56. h.Write(input[j : j+1])
  57. }
  58. sum = h.Sum(sum[:0])
  59. if gotHex := fmt.Sprintf("%x", sum); gotHex != expectedHex {
  60. t.Fatalf("#%d (byte-by-byte): got %s, wanted %s", i, gotHex, expectedHex)
  61. }
  62. }
  63. }
  64. func testHashes128(t *testing.T) {
  65. key, _ := hex.DecodeString("000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f")
  66. input := make([]byte, 255)
  67. for i := range input {
  68. input[i] = byte(i)
  69. }
  70. for i, expectedHex := range hashes128 {
  71. h, err := New128(key)
  72. if err != nil {
  73. t.Fatalf("#%d: error from New128: %v", i, err)
  74. }
  75. h.Write(input[:i])
  76. sum := h.Sum(nil)
  77. if gotHex := fmt.Sprintf("%x", sum); gotHex != expectedHex {
  78. t.Fatalf("#%d (single write): got %s, wanted %s", i, gotHex, expectedHex)
  79. }
  80. h.Reset()
  81. for j := 0; j < i; j++ {
  82. h.Write(input[j : j+1])
  83. }
  84. sum = h.Sum(sum[:0])
  85. if gotHex := fmt.Sprintf("%x", sum); gotHex != expectedHex {
  86. t.Fatalf("#%d (byte-by-byte): got %s, wanted %s", i, gotHex, expectedHex)
  87. }
  88. }
  89. }
  90. // Benchmarks
  91. func benchmarkSum(b *testing.B, size int) {
  92. data := make([]byte, size)
  93. b.SetBytes(int64(size))
  94. b.ResetTimer()
  95. for i := 0; i < b.N; i++ {
  96. Sum256(data)
  97. }
  98. }
  99. func benchmarkWrite(b *testing.B, size int) {
  100. data := make([]byte, size)
  101. h, _ := New256(nil)
  102. b.SetBytes(int64(size))
  103. b.ResetTimer()
  104. for i := 0; i < b.N; i++ {
  105. h.Write(data)
  106. }
  107. }
  108. func BenchmarkWrite64(b *testing.B) { benchmarkWrite(b, 64) }
  109. func BenchmarkWrite1K(b *testing.B) { benchmarkWrite(b, 1024) }
  110. func BenchmarkSum64(b *testing.B) { benchmarkSum(b, 64) }
  111. func BenchmarkSum1K(b *testing.B) { benchmarkSum(b, 1024) }
  112. // hashes is taken from https://blake2.net/blake2s-test.txt
  113. var hashes = []string{
  114. "48a8997da407876b3d79c0d92325ad3b89cbb754d86ab71aee047ad345fd2c49",
  115. "40d15fee7c328830166ac3f918650f807e7e01e177258cdc0a39b11f598066f1",
  116. "6bb71300644cd3991b26ccd4d274acd1adeab8b1d7914546c1198bbe9fc9d803",
  117. "1d220dbe2ee134661fdf6d9e74b41704710556f2f6e5a091b227697445dbea6b",
  118. "f6c3fbadb4cc687a0064a5be6e791bec63b868ad62fba61b3757ef9ca52e05b2",
  119. "49c1f21188dfd769aea0e911dd6b41f14dab109d2b85977aa3088b5c707e8598",
  120. "fdd8993dcd43f696d44f3cea0ff35345234ec8ee083eb3cada017c7f78c17143",
  121. "e6c8125637438d0905b749f46560ac89fd471cf8692e28fab982f73f019b83a9",
  122. "19fc8ca6979d60e6edd3b4541e2f967ced740df6ec1eaebbfe813832e96b2974",
  123. "a6ad777ce881b52bb5a4421ab6cdd2dfba13e963652d4d6d122aee46548c14a7",
  124. "f5c4b2ba1a00781b13aba0425242c69cb1552f3f71a9a3bb22b4a6b4277b46dd",
  125. "e33c4c9bd0cc7e45c80e65c77fa5997fec7002738541509e68a9423891e822a3",
  126. "fba16169b2c3ee105be6e1e650e5cbf40746b6753d036ab55179014ad7ef6651",
  127. "f5c4bec6d62fc608bf41cc115f16d61c7efd3ff6c65692bbe0afffb1fede7475",
  128. "a4862e76db847f05ba17ede5da4e7f91b5925cf1ad4ba12732c3995742a5cd6e",
  129. "65f4b860cd15b38ef814a1a804314a55be953caa65fd758ad989ff34a41c1eea",
  130. "19ba234f0a4f38637d1839f9d9f76ad91c8522307143c97d5f93f69274cec9a7",
  131. "1a67186ca4a5cb8e65fca0e2ecbc5ddc14ae381bb8bffeb9e0a103449e3ef03c",
  132. "afbea317b5a2e89c0bd90ccf5d7fd0ed57fe585e4be3271b0a6bf0f5786b0f26",
  133. "f1b01558ce541262f5ec34299d6fb4090009e3434be2f49105cf46af4d2d4124",
  134. "13a0a0c86335635eaa74ca2d5d488c797bbb4f47dc07105015ed6a1f3309efce",
  135. "1580afeebebb346f94d59fe62da0b79237ead7b1491f5667a90e45edf6ca8b03",
  136. "20be1a875b38c573dd7faaa0de489d655c11efb6a552698e07a2d331b5f655c3",
  137. "be1fe3c4c04018c54c4a0f6b9a2ed3c53abe3a9f76b4d26de56fc9ae95059a99",
  138. "e3e3ace537eb3edd8463d9ad3582e13cf86533ffde43d668dd2e93bbdbd7195a",
  139. "110c50c0bf2c6e7aeb7e435d92d132ab6655168e78a2decdec3330777684d9c1",
  140. "e9ba8f505c9c80c08666a701f3367e6cc665f34b22e73c3c0417eb1c2206082f",
  141. "26cd66fca02379c76df12317052bcafd6cd8c3a7b890d805f36c49989782433a",
  142. "213f3596d6e3a5d0e9932cd2159146015e2abc949f4729ee2632fe1edb78d337",
  143. "1015d70108e03be1c702fe97253607d14aee591f2413ea6787427b6459ff219a",
  144. "3ca989de10cfe609909472c8d35610805b2f977734cf652cc64b3bfc882d5d89",
  145. "b6156f72d380ee9ea6acd190464f2307a5c179ef01fd71f99f2d0f7a57360aea",
  146. "c03bc642b20959cbe133a0303e0c1abff3e31ec8e1a328ec8565c36decff5265",
  147. "2c3e08176f760c6264c3a2cd66fec6c3d78de43fc192457b2a4a660a1e0eb22b",
  148. "f738c02f3c1b190c512b1a32deabf353728e0e9ab034490e3c3409946a97aeec",
  149. "8b1880df301cc963418811088964839287ff7fe31c49ea6ebd9e48bdeee497c5",
  150. "1e75cb21c60989020375f1a7a242839f0b0b68973a4c2a05cf7555ed5aaec4c1",
  151. "62bf8a9c32a5bccf290b6c474d75b2a2a4093f1a9e27139433a8f2b3bce7b8d7",
  152. "166c8350d3173b5e702b783dfd33c66ee0432742e9b92b997fd23c60dc6756ca",
  153. "044a14d822a90cacf2f5a101428adc8f4109386ccb158bf905c8618b8ee24ec3",
  154. "387d397ea43a994be84d2d544afbe481a2000f55252696bba2c50c8ebd101347",
  155. "56f8ccf1f86409b46ce36166ae9165138441577589db08cbc5f66ca29743b9fd",
  156. "9706c092b04d91f53dff91fa37b7493d28b576b5d710469df79401662236fc03",
  157. "877968686c068ce2f7e2adcff68bf8748edf3cf862cfb4d3947a3106958054e3",
  158. "8817e5719879acf7024787eccdb271035566cfa333e049407c0178ccc57a5b9f",
  159. "8938249e4b50cadaccdf5b18621326cbb15253e33a20f5636e995d72478de472",
  160. "f164abba4963a44d107257e3232d90aca5e66a1408248c51741e991db5227756",
  161. "d05563e2b1cba0c4a2a1e8bde3a1a0d9f5b40c85a070d6f5fb21066ead5d0601",
  162. "03fbb16384f0a3866f4c3117877666efbf124597564b293d4aab0d269fabddfa",
  163. "5fa8486ac0e52964d1881bbe338eb54be2f719549224892057b4da04ba8b3475",
  164. "cdfabcee46911111236a31708b2539d71fc211d9b09c0d8530a11e1dbf6eed01",
  165. "4f82de03b9504793b82a07a0bdcdff314d759e7b62d26b784946b0d36f916f52",
  166. "259ec7f173bcc76a0994c967b4f5f024c56057fb79c965c4fae41875f06a0e4c",
  167. "193cc8e7c3e08bb30f5437aa27ade1f142369b246a675b2383e6da9b49a9809e",
  168. "5c10896f0e2856b2a2eee0fe4a2c1633565d18f0e93e1fab26c373e8f829654d",
  169. "f16012d93f28851a1eb989f5d0b43f3f39ca73c9a62d5181bff237536bd348c3",
  170. "2966b3cfae1e44ea996dc5d686cf25fa053fb6f67201b9e46eade85d0ad6b806",
  171. "ddb8782485e900bc60bcf4c33a6fd585680cc683d516efa03eb9985fad8715fb",
  172. "4c4d6e71aea05786413148fc7a786b0ecaf582cff1209f5a809fba8504ce662c",
  173. "fb4c5e86d7b2229b99b8ba6d94c247ef964aa3a2bae8edc77569f28dbbff2d4e",
  174. "e94f526de9019633ecd54ac6120f23958d7718f1e7717bf329211a4faeed4e6d",
  175. "cbd6660a10db3f23f7a03d4b9d4044c7932b2801ac89d60bc9eb92d65a46c2a0",
  176. "8818bbd3db4dc123b25cbba5f54c2bc4b3fcf9bf7d7a7709f4ae588b267c4ece",
  177. "c65382513f07460da39833cb666c5ed82e61b9e998f4b0c4287cee56c3cc9bcd",
  178. "8975b0577fd35566d750b362b0897a26c399136df07bababbde6203ff2954ed4",
  179. "21fe0ceb0052be7fb0f004187cacd7de67fa6eb0938d927677f2398c132317a8",
  180. "2ef73f3c26f12d93889f3c78b6a66c1d52b649dc9e856e2c172ea7c58ac2b5e3",
  181. "388a3cd56d73867abb5f8401492b6e2681eb69851e767fd84210a56076fb3dd3",
  182. "af533e022fc9439e4e3cb838ecd18692232adf6fe9839526d3c3dd1b71910b1a",
  183. "751c09d41a9343882a81cd13ee40818d12eb44c6c7f40df16e4aea8fab91972a",
  184. "5b73ddb68d9d2b0aa265a07988d6b88ae9aac582af83032f8a9b21a2e1b7bf18",
  185. "3da29126c7c5d7f43e64242a79feaa4ef3459cdeccc898ed59a97f6ec93b9dab",
  186. "566dc920293da5cb4fe0aa8abda8bbf56f552313bff19046641e3615c1e3ed3f",
  187. "4115bea02f73f97f629e5c5590720c01e7e449ae2a6697d4d2783321303692f9",
  188. "4ce08f4762468a7670012164878d68340c52a35e66c1884d5c864889abc96677",
  189. "81ea0b7804124e0c22ea5fc71104a2afcb52a1fa816f3ecb7dcb5d9dea1786d0",
  190. "fe362733b05f6bedaf9379d7f7936ede209b1f8323c3922549d9e73681b5db7b",
  191. "eff37d30dfd20359be4e73fdf40d27734b3df90a97a55ed745297294ca85d09f",
  192. "172ffc67153d12e0ca76a8b6cd5d4731885b39ce0cac93a8972a18006c8b8baf",
  193. "c47957f1cc88e83ef9445839709a480a036bed5f88ac0fcc8e1e703ffaac132c",
  194. "30f3548370cfdceda5c37b569b6175e799eef1a62aaa943245ae7669c227a7b5",
  195. "c95dcb3cf1f27d0eef2f25d2413870904a877c4a56c2de1e83e2bc2ae2e46821",
  196. "d5d0b5d705434cd46b185749f66bfb5836dcdf6ee549a2b7a4aee7f58007caaf",
  197. "bbc124a712f15d07c300e05b668389a439c91777f721f8320c1c9078066d2c7e",
  198. "a451b48c35a6c7854cfaae60262e76990816382ac0667e5a5c9e1b46c4342ddf",
  199. "b0d150fb55e778d01147f0b5d89d99ecb20ff07e5e6760d6b645eb5b654c622b",
  200. "34f737c0ab219951eee89a9f8dac299c9d4c38f33fa494c5c6eefc92b6db08bc",
  201. "1a62cc3a00800dcbd99891080c1e098458193a8cc9f970ea99fbeff00318c289",
  202. "cfce55ebafc840d7ae48281c7fd57ec8b482d4b704437495495ac414cf4a374b",
  203. "6746facf71146d999dabd05d093ae586648d1ee28e72617b99d0f0086e1e45bf",
  204. "571ced283b3f23b4e750bf12a2caf1781847bd890e43603cdc5976102b7bb11b",
  205. "cfcb765b048e35022c5d089d26e85a36b005a2b80493d03a144e09f409b6afd1",
  206. "4050c7a27705bb27f42089b299f3cbe5054ead68727e8ef9318ce6f25cd6f31d",
  207. "184070bd5d265fbdc142cd1c5cd0d7e414e70369a266d627c8fba84fa5e84c34",
  208. "9edda9a4443902a9588c0d0ccc62b930218479a6841e6fe7d43003f04b1fd643",
  209. "e412feef7908324a6da1841629f35d3d358642019310ec57c614836b63d30763",
  210. "1a2b8edff3f9acc1554fcbae3cf1d6298c6462e22e5eb0259684f835012bd13f",
  211. "288c4ad9b9409762ea07c24a41f04f69a7d74bee2d95435374bde946d7241c7b",
  212. "805691bb286748cfb591d3aebe7e6f4e4dc6e2808c65143cc004e4eb6fd09d43",
  213. "d4ac8d3a0afc6cfa7b460ae3001baeb36dadb37da07d2e8ac91822df348aed3d",
  214. "c376617014d20158bced3d3ba552b6eccf84e62aa3eb650e90029c84d13eea69",
  215. "c41f09f43cecae7293d6007ca0a357087d5ae59be500c1cd5b289ee810c7b082",
  216. "03d1ced1fba5c39155c44b7765cb760c78708dcfc80b0bd8ade3a56da8830b29",
  217. "09bde6f152218dc92c41d7f45387e63e5869d807ec70b821405dbd884b7fcf4b",
  218. "71c9036e18179b90b37d39e9f05eb89cc5fc341fd7c477d0d7493285faca08a4",
  219. "5916833ebb05cd919ca7fe83b692d3205bef72392b2cf6bb0a6d43f994f95f11",
  220. "f63aab3ec641b3b024964c2b437c04f6043c4c7e0279239995401958f86bbe54",
  221. "f172b180bfb09740493120b6326cbdc561e477def9bbcfd28cc8c1c5e3379a31",
  222. "cb9b89cc18381dd9141ade588654d4e6a231d5bf49d4d59ac27d869cbe100cf3",
  223. "7bd8815046fdd810a923e1984aaebdcdf84d87c8992d68b5eeb460f93eb3c8d7",
  224. "607be66862fd08ee5b19facac09dfdbcd40c312101d66e6ebd2b841f1b9a9325",
  225. "9fe03bbe69ab1834f5219b0da88a08b30a66c5913f0151963c360560db0387b3",
  226. "90a83585717b75f0e9b725e055eeeeb9e7a028ea7e6cbc07b20917ec0363e38c",
  227. "336ea0530f4a7469126e0218587ebbde3358a0b31c29d200f7dc7eb15c6aadd8",
  228. "a79e76dc0abca4396f0747cd7b748df913007626b1d659da0c1f78b9303d01a3",
  229. "44e78a773756e0951519504d7038d28d0213a37e0ce375371757bc996311e3b8",
  230. "77ac012a3f754dcfeab5eb996be9cd2d1f96111b6e49f3994df181f28569d825",
  231. "ce5a10db6fccdaf140aaa4ded6250a9c06e9222bc9f9f3658a4aff935f2b9f3a",
  232. "ecc203a7fe2be4abd55bb53e6e673572e0078da8cd375ef430cc97f9f80083af",
  233. "14a5186de9d7a18b0412b8563e51cc5433840b4a129a8ff963b33a3c4afe8ebb",
  234. "13f8ef95cb86e6a638931c8e107673eb76ba10d7c2cd70b9d9920bbeed929409",
  235. "0b338f4ee12f2dfcb78713377941e0b0632152581d1332516e4a2cab1942cca4",
  236. "eaab0ec37b3b8ab796e9f57238de14a264a076f3887d86e29bb5906db5a00e02",
  237. "23cb68b8c0e6dc26dc27766ddc0a13a99438fd55617aa4095d8f969720c872df",
  238. "091d8ee30d6f2968d46b687dd65292665742de0bb83dcc0004c72ce10007a549",
  239. "7f507abc6d19ba00c065a876ec5657868882d18a221bc46c7a6912541f5bc7ba",
  240. "a0607c24e14e8c223db0d70b4d30ee88014d603f437e9e02aa7dafa3cdfbad94",
  241. "ddbfea75cc467882eb3483ce5e2e756a4f4701b76b445519e89f22d60fa86e06",
  242. "0c311f38c35a4fb90d651c289d486856cd1413df9b0677f53ece2cd9e477c60a",
  243. "46a73a8dd3e70f59d3942c01df599def783c9da82fd83222cd662b53dce7dbdf",
  244. "ad038ff9b14de84a801e4e621ce5df029dd93520d0c2fa38bff176a8b1d1698c",
  245. "ab70c5dfbd1ea817fed0cd067293abf319e5d7901c2141d5d99b23f03a38e748",
  246. "1fffda67932b73c8ecaf009a3491a026953babfe1f663b0697c3c4ae8b2e7dcb",
  247. "b0d2cc19472dd57f2b17efc03c8d58c2283dbb19da572f7755855aa9794317a0",
  248. "a0d19a6ee33979c325510e276622df41f71583d07501b87071129a0ad94732a5",
  249. "724642a7032d1062b89e52bea34b75df7d8fe772d9fe3c93ddf3c4545ab5a99b",
  250. "ade5eaa7e61f672d587ea03dae7d7b55229c01d06bc0a5701436cbd18366a626",
  251. "013b31ebd228fcdda51fabb03bb02d60ac20ca215aafa83bdd855e3755a35f0b",
  252. "332ed40bb10dde3c954a75d7b8999d4b26a1c063c1dc6e32c1d91bab7bbb7d16",
  253. "c7a197b3a05b566bcc9facd20e441d6f6c2860ac9651cd51d6b9d2cdeeea0390",
  254. "bd9cf64ea8953c037108e6f654914f3958b68e29c16700dc184d94a21708ff60",
  255. "8835b0ac021151df716474ce27ce4d3c15f0b2dab48003cf3f3efd0945106b9a",
  256. "3bfefa3301aa55c080190cffda8eae51d9af488b4c1f24c3d9a75242fd8ea01d",
  257. "08284d14993cd47d53ebaecf0df0478cc182c89c00e1859c84851686ddf2c1b7",
  258. "1ed7ef9f04c2ac8db6a864db131087f27065098e69c3fe78718d9b947f4a39d0",
  259. "c161f2dcd57e9c1439b31a9dd43d8f3d7dd8f0eb7cfac6fb25a0f28e306f0661",
  260. "c01969ad34c52caf3dc4d80d19735c29731ac6e7a92085ab9250c48dea48a3fc",
  261. "1720b3655619d2a52b3521ae0e49e345cb3389ebd6208acaf9f13fdacca8be49",
  262. "756288361c83e24c617cf95c905b22d017cdc86f0bf1d658f4756c7379873b7f",
  263. "e7d0eda3452693b752abcda1b55e276f82698f5f1605403eff830bea0071a394",
  264. "2c82ecaa6b84803e044af63118afe544687cb6e6c7df49ed762dfd7c8693a1bc",
  265. "6136cbf4b441056fa1e2722498125d6ded45e17b52143959c7f4d4e395218ac2",
  266. "721d3245aafef27f6a624f47954b6c255079526ffa25e9ff77e5dcff473b1597",
  267. "9dd2fbd8cef16c353c0ac21191d509eb28dd9e3e0d8cea5d26ca839393851c3a",
  268. "b2394ceacdebf21bf9df2ced98e58f1c3a4bbbff660dd900f62202d6785cc46e",
  269. "57089f222749ad7871765f062b114f43ba20ec56422a8b1e3f87192c0ea718c6",
  270. "e49a9459961cd33cdf4aae1b1078a5dea7c040e0fea340c93a724872fc4af806",
  271. "ede67f720effd2ca9c88994152d0201dee6b0a2d2c077aca6dae29f73f8b6309",
  272. "e0f434bf22e3088039c21f719ffc67f0f2cb5e98a7a0194c76e96bf4e8e17e61",
  273. "277c04e2853484a4eba910ad336d01b477b67cc200c59f3c8d77eef8494f29cd",
  274. "156d5747d0c99c7f27097d7b7e002b2e185cb72d8dd7eb424a0321528161219f",
  275. "20ddd1ed9b1ca803946d64a83ae4659da67fba7a1a3eddb1e103c0f5e03e3a2c",
  276. "f0af604d3dabbf9a0f2a7d3dda6bd38bba72c6d09be494fcef713ff10189b6e6",
  277. "9802bb87def4cc10c4a5fd49aa58dfe2f3fddb46b4708814ead81d23ba95139b",
  278. "4f8ce1e51d2fe7f24043a904d898ebfc91975418753413aa099b795ecb35cedb",
  279. "bddc6514d7ee6ace0a4ac1d0e068112288cbcf560454642705630177cba608bd",
  280. "d635994f6291517b0281ffdd496afa862712e5b3c4e52e4cd5fdae8c0e72fb08",
  281. "878d9ca600cf87e769cc305c1b35255186615a73a0da613b5f1c98dbf81283ea",
  282. "a64ebe5dc185de9fdde7607b6998702eb23456184957307d2fa72e87a47702d6",
  283. "ce50eab7b5eb52bdc9ad8e5a480ab780ca9320e44360b1fe37e03f2f7ad7de01",
  284. "eeddb7c0db6e30abe66d79e327511e61fcebbc29f159b40a86b046ecf0513823",
  285. "787fc93440c1ec96b5ad01c16cf77916a1405f9426356ec921d8dff3ea63b7e0",
  286. "7f0d5eab47eefda696c0bf0fbf86ab216fce461e9303aba6ac374120e890e8df",
  287. "b68004b42f14ad029f4c2e03b1d5eb76d57160e26476d21131bef20ada7d27f4",
  288. "b0c4eb18ae250b51a41382ead92d0dc7455f9379fc9884428e4770608db0faec",
  289. "f92b7a870c059f4d46464c824ec96355140bdce681322cc3a992ff103e3fea52",
  290. "5364312614813398cc525d4c4e146edeb371265fba19133a2c3d2159298a1742",
  291. "f6620e68d37fb2af5000fc28e23b832297ecd8bce99e8be4d04e85309e3d3374",
  292. "5316a27969d7fe04ff27b283961bffc3bf5dfb32fb6a89d101c6c3b1937c2871",
  293. "81d1664fdf3cb33c24eebac0bd64244b77c4abea90bbe8b5ee0b2aafcf2d6a53",
  294. "345782f295b0880352e924a0467b5fbc3e8f3bfbc3c7e48b67091fb5e80a9442",
  295. "794111ea6cd65e311f74ee41d476cb632ce1e4b051dc1d9e9d061a19e1d0bb49",
  296. "2a85daf6138816b99bf8d08ba2114b7ab07975a78420c1a3b06a777c22dd8bcb",
  297. "89b0d5f289ec16401a069a960d0b093e625da3cf41ee29b59b930c5820145455",
  298. "d0fdcb543943fc27d20864f52181471b942cc77ca675bcb30df31d358ef7b1eb",
  299. "b17ea8d77063c709d4dc6b879413c343e3790e9e62ca85b7900b086f6b75c672",
  300. "e71a3e2c274db842d92114f217e2c0eac8b45093fdfd9df4ca7162394862d501",
  301. "c0476759ab7aa333234f6b44f5fd858390ec23694c622cb986e769c78edd733e",
  302. "9ab8eabb1416434d85391341d56993c55458167d4418b19a0f2ad8b79a83a75b",
  303. "7992d0bbb15e23826f443e00505d68d3ed7372995a5c3e498654102fbcd0964e",
  304. "c021b30085151435df33b007ccecc69df1269f39ba25092bed59d932ac0fdc28",
  305. "91a25ec0ec0d9a567f89c4bfe1a65a0e432d07064b4190e27dfb81901fd3139b",
  306. "5950d39a23e1545f301270aa1a12f2e6c453776e4d6355de425cc153f9818867",
  307. "d79f14720c610af179a3765d4b7c0968f977962dbf655b521272b6f1e194488e",
  308. "e9531bfc8b02995aeaa75ba27031fadbcbf4a0dab8961d9296cd7e84d25d6006",
  309. "34e9c26a01d7f16181b454a9d1623c233cb99d31c694656e9413aca3e918692f",
  310. "d9d7422f437bd439ddd4d883dae2a08350173414be78155133fff1964c3d7972",
  311. "4aee0c7aaf075414ff1793ead7eaca601775c615dbd60b640b0a9f0ce505d435",
  312. "6bfdd15459c83b99f096bfb49ee87b063d69c1974c6928acfcfb4099f8c4ef67",
  313. "9fd1c408fd75c336193a2a14d94f6af5adf050b80387b4b010fb29f4cc72707c",
  314. "13c88480a5d00d6c8c7ad2110d76a82d9b70f4fa6696d4e5dd42a066dcaf9920",
  315. "820e725ee25fe8fd3a8d5abe4c46c3ba889de6fa9191aa22ba67d5705421542b",
  316. "32d93a0eb02f42fbbcaf2bad0085b282e46046a4df7ad10657c9d6476375b93e",
  317. "adc5187905b1669cd8ec9c721e1953786b9d89a9bae30780f1e1eab24a00523c",
  318. "e90756ff7f9ad810b239a10ced2cf9b2284354c1f8c7e0accc2461dc796d6e89",
  319. "1251f76e56978481875359801db589a0b22f86d8d634dc04506f322ed78f17e8",
  320. "3afa899fd980e73ecb7f4d8b8f291dc9af796bc65d27f974c6f193c9191a09fd",
  321. "aa305be26e5deddc3c1010cbc213f95f051c785c5b431e6a7cd048f161787528",
  322. "8ea1884ff32e9d10f039b407d0d44e7e670abd884aeee0fb757ae94eaa97373d",
  323. "d482b2155d4dec6b4736a1f1617b53aaa37310277d3fef0c37ad41768fc235b4",
  324. "4d413971387e7a8898a8dc2a27500778539ea214a2dfe9b3d7e8ebdce5cf3db3",
  325. "696e5d46e6c57e8796e4735d08916e0b7929b3cf298c296d22e9d3019653371c",
  326. "1f5647c1d3b088228885865c8940908bf40d1a8272821973b160008e7a3ce2eb",
  327. "b6e76c330f021a5bda65875010b0edf09126c0f510ea849048192003aef4c61c",
  328. "3cd952a0beada41abb424ce47f94b42be64e1ffb0fd0782276807946d0d0bc55",
  329. "98d92677439b41b7bb513312afb92bcc8ee968b2e3b238cecb9b0f34c9bb63d0",
  330. "ecbca2cf08ae57d517ad16158a32bfa7dc0382eaeda128e91886734c24a0b29d",
  331. "942cc7c0b52e2b16a4b89fa4fc7e0bf609e29a08c1a8543452b77c7bfd11bb28",
  332. "8a065d8b61a0dffb170d5627735a76b0e9506037808cba16c345007c9f79cf8f",
  333. "1b9fa19714659c78ff413871849215361029ac802b1cbcd54e408bd87287f81f",
  334. "8dab071bcd6c7292a9ef727b4ae0d86713301da8618d9a48adce55f303a869a1",
  335. "8253e3e7c7b684b9cb2beb014ce330ff3d99d17abbdbabe4f4d674ded53ffc6b",
  336. "f195f321e9e3d6bd7d074504dd2ab0e6241f92e784b1aa271ff648b1cab6d7f6",
  337. "27e4cc72090f241266476a7c09495f2db153d5bcbd761903ef79275ec56b2ed8",
  338. "899c2405788e25b99a1846355e646d77cf400083415f7dc5afe69d6e17c00023",
  339. "a59b78c4905744076bfee894de707d4f120b5c6893ea0400297d0bb834727632",
  340. "59dc78b105649707a2bb4419c48f005400d3973de3736610230435b10424b24f",
  341. "c0149d1d7e7a6353a6d906efe728f2f329fe14a4149a3ea77609bc42b975ddfa",
  342. "a32f241474a6c16932e9243be0cf09bcdc7e0ca0e7a6a1b9b1a0f01e41502377",
  343. "b239b2e4f81841361c1339f68e2c359f929af9ad9f34e01aab4631ad6d5500b0",
  344. "85fb419c7002a3e0b4b6ea093b4c1ac6936645b65dac5ac15a8528b7b94c1754",
  345. "9619720625f190b93a3fad186ab314189633c0d3a01e6f9bc8c4a8f82f383dbf",
  346. "7d620d90fe69fa469a6538388970a1aa09bb48a2d59b347b97e8ce71f48c7f46",
  347. "294383568596fb37c75bbacd979c5ff6f20a556bf8879cc72924855df9b8240e",
  348. "16b18ab314359c2b833c1c6986d48c55a9fc97cde9a3c1f10a3177140f73f738",
  349. "8cbbdd14bc33f04cf45813e4a153a273d36adad5ce71f499eeb87fb8ac63b729",
  350. "69c9a498db174ecaefcc5a3ac9fdedf0f813a5bec727f1e775babdec7718816e",
  351. "b462c3be40448f1d4f80626254e535b08bc9cdcff599a768578d4b2881a8e3f0",
  352. "553e9d9c5f360ac0b74a7d44e5a391dad4ced03e0c24183b7e8ecabdf1715a64",
  353. "7a7c55a56fa9ae51e655e01975d8a6ff4ae9e4b486fcbe4eac044588f245ebea",
  354. "2afdf3c82abc4867f5de111286c2b3be7d6e48657ba923cfbf101a6dfcf9db9a",
  355. "41037d2edcdce0c49b7fb4a6aa0999ca66976c7483afe631d4eda283144f6dfc",
  356. "c4466f8497ca2eeb4583a0b08e9d9ac74395709fda109d24f2e4462196779c5d",
  357. "75f609338aa67d969a2ae2a2362b2da9d77c695dfd1df7224a6901db932c3364",
  358. "68606ceb989d5488fc7cf649f3d7c272ef055da1a93faecd55fe06f6967098ca",
  359. "44346bdeb7e052f6255048f0d9b42c425bab9c3dd24168212c3ecf1ebf34e6ae",
  360. "8e9cf6e1f366471f2ac7d2ee9b5e6266fda71f8f2e4109f2237ed5f8813fc718",
  361. "84bbeb8406d250951f8c1b3e86a7c010082921833dfd9555a2f909b1086eb4b8",
  362. "ee666f3eef0f7e2a9c222958c97eaf35f51ced393d714485ab09a069340fdf88",
  363. "c153d34a65c47b4a62c5cacf24010975d0356b2f32c8f5da530d338816ad5de6",
  364. "9fc5450109e1b779f6c7ae79d56c27635c8dd426c5a9d54e2578db989b8c3b4e",
  365. "d12bf3732ef4af5c22fa90356af8fc50fcb40f8f2ea5c8594737a3b3d5abdbd7",
  366. "11030b9289bba5af65260672ab6fee88b87420acef4a1789a2073b7ec2f2a09e",
  367. "69cb192b8444005c8c0ceb12c846860768188cda0aec27a9c8a55cdee2123632",
  368. "db444c15597b5f1a03d1f9edd16e4a9f43a667cc275175dfa2b704e3bb1a9b83",
  369. "3fb735061abc519dfe979e54c1ee5bfad0a9d858b3315bad34bde999efd724dd",
  370. }
  371. var hashes128 = []string{
  372. "9536f9b267655743dee97b8a670f9f53",
  373. "13bacfb85b48a1223c595f8c1e7e82cb",
  374. "d47a9b1645e2feae501cd5fe44ce6333",
  375. "1e2a79436a7796a3e9826bfedf07659f",
  376. "7640360ed3c4f3054dba79a21dda66b7",
  377. "d1207ac2bf5ac84fc9ef016da5a46a86",
  378. "3123987871e59305ece3125abfc0099a",
  379. "cf9e072ad522f2cda2d825218086731c",
  380. "95d22870392efe2846b12b6e8e84efbb",
  381. "7d63c30e2d51333f245601b038c0b93b",
  382. "ed608b98e13976bdf4bedc63fa35e443",
  383. "ed704b5cd1abf8e0dd67a6ac667a3fa5",
  384. "77dc70109827dc74c70fd26cba379ae5",
  385. "d2bf34508b07825ee934f33958f4560e",
  386. "a340baa7b8a93a6e658adef42e78eeb7",
  387. "b85c5ceaecbe9a251eac76f6932ba395",
  388. "246519722001f6e8e97a2183f5985e53",
  389. "5bce5aa0b7c6cac2ecf6406183cd779a",
  390. "13408f1647c02f6efd0047ad8344f695",
  391. "a63970f196760aa36cb965ab62f0e0fa",
  392. "bc26f48421dd99fd45e15e736d3e7dac",
  393. "4c6f70f9e3237cde918afb52d26f1823",
  394. "45ed610cfbc37db80c4bf0eef14ae8d6",
  395. "87c4c150705ea5078209ec008200539c",
  396. "54de21f5e0e6f2afe04daeb822b6931e",
  397. "9732a04e505064e19de3d542e7e71631",
  398. "d2bd27e95531d6957eef511c4ba64ad4",
  399. "7a36c9f70dcc7c3063b547101a5f6c35",
  400. "322007d1a44c4257bc7903b183305529",
  401. "dbcc9a09f412290ca2e0d53dfd142ddb",
  402. "df12ed43b8e53a56db20e0f83764002c",
  403. "d114cc11e7d5b33a360c45f18d4c7c6e",
  404. "c43b5e836af88620a8a71b1652cb8640",
  405. "9491c653e8867ed73c1b4ac6b5a9bb4d",
  406. "06d0e988df94ada6c6f9f36f588ab7c5",
  407. "561efad2480e93262c8eeaa3677615c4",
  408. "ba8ffc702e5adc93503045eca8702312",
  409. "5782be6ccdc78c8425285e85de8ccdc6",
  410. "aa1c4393e4c07b53ea6e2b5b1e970771",
  411. "42a229dc50e52271c51e8666023ebc1e",
  412. "53706110e919f84de7f8d6c7f0e7b831",
  413. "fc5ac8ee39cc1dd1424391323e2901bd",
  414. "bed27b62ff66cac2fbb68193c727106a",
  415. "cd5e689b96d0b9ea7e08dac36f7b211e",
  416. "0b4c7f604eba058d18e322c6e1baf173",
  417. "eb838227fdfad09a27f0f8413120675d",
  418. "3149cf9d19a7fd529e6154a8b4c3b3ad",
  419. "ca1e20126df930fd5fb7afe4422191e5",
  420. "b23398f910599f3c09b6549fa81bcb46",
  421. "27fb17c11b34fa5d8b5afe5ee3321ead",
  422. "0f665f5f04cf2d46b7fead1a1f328158",
  423. "8f068be73b3681f99f3b282e3c02bba5",
  424. "ba189bbd13808dcf4e002a4dd21660d5",
  425. "2732dcd1b16668ae6ab6a61595d0d62a",
  426. "d410ccdd059f0e02b472ec9ec54bdd3c",
  427. "b2eaa07b055b3a03a399971327f7e8c2",
  428. "2e8a225655e9f99b69c60dc8b4d8e566",
  429. "4eb55416c853f2152e67f8a224133cec",
  430. "49552403790d8de0505a8e317a443687",
  431. "7f2747cd41f56942752e868212c7d5ac",
  432. "02a28f10e193b430df7112d2d98cf759",
  433. "d4213404a9f1cf759017747cf5958270",
  434. "faa34884344f9c65e944882db8476d34",
  435. "ece382a8bd5018f1de5da44b72cea75b",
  436. "f1efa90d2547036841ecd3627fafbc36",
  437. "811ff8686d23a435ecbd0bdafcd27b1b",
  438. "b21beea9c7385f657a76558530438721",
  439. "9cb969da4f1b4fc5b13bf78fe366f0c4",
  440. "8850d16d7b614d3268ccfa009d33c7fc",
  441. "aa98a2b6176ea86415b9aff3268c6f6d",
  442. "ec3e1efa5ed195eff667e16b1af1e39e",
  443. "e40787dca57411d2630db2de699beb08",
  444. "554835890735babd06318de23d31e78a",
  445. "493957feecddc302ee2bb2086b6ebfd3",
  446. "f6069709ad5b0139163717e9ce1114ab",
  447. "ba5ed386098da284484b211555505a01",
  448. "9244c8dfad8cbb68c118fa51465b3ae4",
  449. "51e309a5008eb1f5185e5cc007cfb36f",
  450. "6ce9ff712121b4f6087955f4911eafd4",
  451. "59b51d8dcda031218ccdd7c760828155",
  452. "0012878767a3d4f1c8194458cf1f8832",
  453. "82900708afd5b6582dc16f008c655edd",
  454. "21302c7e39b5a4cdf1d6f86b4f00c9b4",
  455. "e894c7431591eab8d1ce0fe2aa1f01df",
  456. "b67e1c40ee9d988226d605621854d955",
  457. "6237bdafa34137cbbec6be43ea9bd22c",
  458. "4172a8e19b0dcb09b978bb9eff7af52b",
  459. "5714abb55bd4448a5a6ad09fbd872fdf",
  460. "7ce1700bef423e1f958a94a77a94d44a",
  461. "3742ec50cded528527775833453e0b26",
  462. "5d41b135724c7c9c689495324b162f18",
  463. "85c523333c6442c202e9e6e0f1185f93",
  464. "5c71f5222d40ff5d90e7570e71ab2d30",
  465. "6e18912e83d012efb4c66250ced6f0d9",
  466. "4add4448c2e35e0b138a0bac7b4b1775",
  467. "c0376c6bc5e7b8b9d2108ec25d2aab53",
  468. "f72261d5ed156765c977751c8a13fcc1",
  469. "cff4156c48614b6ceed3dd6b9058f17e",
  470. "36bfb513f76c15f514bcb593419835aa",
  471. "166bf48c6bffaf8291e6fdf63854bef4",
  472. "0b67d33f8b859c3157fbabd9e6e47ed0",
  473. "e4da659ca76c88e73a9f9f10f3d51789",
  474. "33c1ae2a86b3f51c0642e6ed5b5aa1f1",
  475. "27469b56aca2334449c1cf4970dcd969",
  476. "b7117b2e363378aa0901b0d6a9f6ddc0",
  477. "a9578233b09e5cd5231943fdb12cd90d",
  478. "486d7d75253598b716a068243c1c3e89",
  479. "66f6b02d682b78ffdc85e9ec86852489",
  480. "38a07b9a4b228fbcc305476e4d2e05d2",
  481. "aedb61c7970e7d05bf9002dae3c6858c",
  482. "c03ef441f7dd30fdb61ad2d4d8e4c7da",
  483. "7f45cc1eea9a00cb6aeb2dd748361190",
  484. "a59538b358459132e55160899e47bd65",
  485. "137010fef72364411820c3fbed15c8df",
  486. "d8362b93fc504500dbd33ac74e1b4d70",
  487. "a7e49f12c8f47e3b29cf8c0889b0a9c8",
  488. "072e94ffbfc684bd8ab2a1b9dade2fd5",
  489. "5ab438584bd2229e452052e002631a5f",
  490. "f233d14221097baef57d3ec205c9e086",
  491. "3a95db000c4a8ff98dc5c89631a7f162",
  492. "0544f18c2994ab4ddf1728f66041ff16",
  493. "0bc02116c60a3cc331928d6c9d3ba37e",
  494. "b189dca6cb5b813c74200834fba97f29",
  495. "ac8aaab075b4a5bc24419da239212650",
  496. "1e9f19323dc71c29ae99c479dc7e8df9",
  497. "12d944c3fa7caa1b3d62adfc492274dd",
  498. "b4c68f1fffe8f0030e9b18aad8c9dc96",
  499. "25887fab1422700d7fa3edc0b20206e2",
  500. "8c09f698d03eaf88abf69f8147865ef6",
  501. "5c363ae42a5bec26fbc5e996428d9bd7",
  502. "7fdfc2e854fbb3928150d5e3abcf56d6",
  503. "f0c944023f714df115f9e4f25bcdb89b",
  504. "6d19534b4c332741c8ddd79a9644de2d",
  505. "32595eb23764fbfc2ee7822649f74a12",
  506. "5a51391aab33c8d575019b6e76ae052a",
  507. "98b861ce2c620f10f913af5d704a5afd",
  508. "b7fe2fc8b77fb1ce434f8465c7ddf793",
  509. "0e8406e0cf8e9cc840668ece2a0fc64e",
  510. "b89922db99c58f6a128ccffe19b6ce60",
  511. "e1be9af665f0932b77d7f5631a511db7",
  512. "74b96f20f58de8dc9ff5e31f91828523",
  513. "36a4cfef5a2a7d8548db6710e50b3009",
  514. "007e95e8d3b91948a1dedb91f75de76b",
  515. "a87a702ce08f5745edf765bfcd5fbe0d",
  516. "847e69a388a749a9c507354d0dddfe09",
  517. "07176eefbc107a78f058f3d424ca6a54",
  518. "ad7e80682333b68296f6cb2b4a8e446d",
  519. "53c4aba43896ae422e5de5b9edbd46bf",
  520. "33bd6c20ca2a7ab916d6e98003c6c5f8",
  521. "060d088ea94aa093f9981a79df1dfcc8",
  522. "5617b214b9df08d4f11e58f5e76d9a56",
  523. "ca3a60ee85bd971e1daf9f7db059d909",
  524. "cd2b7754505d8c884eddf736f1ec613e",
  525. "f496163b252f1439e7e113ba2ecabd8e",
  526. "5719c7dcf9d9f756d6213354acb7d5cf",
  527. "6f7dd40b245c54411e7a9be83ae5701c",
  528. "c8994dd9fdeb077a45ea04a30358b637",
  529. "4b1184f1e35458c1c747817d527a252f",
  530. "fc7df674afeac7a3fd994183f4c67a74",
  531. "4f68e05ce4dcc533acf9c7c01d95711e",
  532. "d4ebc59e918400720035dfc88e0c486a",
  533. "d3105dd6fa123e543b0b3a6e0eeaea9e",
  534. "874196128ed443f5bdb2800ca048fcad",
  535. "01645f134978dc8f9cf0abc93b53780e",
  536. "5b8b64caa257873a0ffd47c981ef6c3f",
  537. "4ee208fc50ba0a6e65c5b58cec44c923",
  538. "53f409a52427b3b7ffabb057ca088428",
  539. "c1d6cd616f5341a93d921e356e5887a9",
  540. "e85c20fea67fa7320dc23379181183c8",
  541. "7912b6409489df001b7372bc94aebde7",
  542. "e559f761ec866a87f1f331767fafc60f",
  543. "20a6f5a36bc37043d977ed7708465ef8",
  544. "6a72f526965ab120826640dd784c6cc4",
  545. "bf486d92ad68e87c613689dd370d001b",
  546. "d339fd0eb35edf3abd6419c8d857acaf",
  547. "9521cd7f32306d969ddabc4e6a617f52",
  548. "a1cd9f3e81520842f3cf6cc301cb0021",
  549. "18e879b6f154492d593edd3f4554e237",
  550. "66e2329c1f5137589e051592587e521e",
  551. "e899566dd6c3e82cbc83958e69feb590",
  552. "8a4b41d7c47e4e80659d77b4e4bfc9ae",
  553. "f1944f6fcfc17803405a1101998c57dd",
  554. "f6bcec07567b4f72851b307139656b18",
  555. "22e7bb256918fe9924dce9093e2d8a27",
  556. "dd25b925815fe7b50b7079f5f65a3970",
  557. "0457f10f299acf0c230dd4007612e58f",
  558. "ecb420c19efd93814fae2964d69b54af",
  559. "14eb47b06dff685d88751c6e32789db4",
  560. "e8f072dbb50d1ab6654aa162604a892d",
  561. "69cff9c62092332f03a166c7b0034469",
  562. "d3619f98970b798ca32c6c14cd25af91",
  563. "2246d423774ee9d51a551e89c0539d9e",
  564. "75e5d1a1e374a04a699247dad827b6cf",
  565. "6d087dd1d4cd15bf47db07c7a96b1db8",
  566. "967e4c055ac51b4b2a3e506cebd5826f",
  567. "7417aa79247e473401bfa92a25b62e2a",
  568. "24f3f4956da34b5c533d9a551ccd7b16",
  569. "0c40382de693a5304e2331eb951cc962",
  570. "9436f949d51b347db5c8e6258dafaaac",
  571. "d2084297fe84c4ba6e04e4fb73d734fe",
  572. "42a6f8ff590af21b512e9e088257aa34",
  573. "c484ad06b1cdb3a54f3f6464a7a2a6fd",
  574. "1b8ac860f5ceb4365400a201ed2917aa",
  575. "c43eadabbe7b7473f3f837fc52650f54",
  576. "0e5d3205406126b1f838875deb150d6a",
  577. "6bf4946f8ec8a9c417f50cd1e67565be",
  578. "42f09a2522314799c95b3fc121a0e3e8",
  579. "06b8f1487f691a3f7c3f74e133d55870",
  580. "1a70a65fb4f314dcf6a31451a9d2704f",
  581. "7d4acdd0823279fd28a1e48b49a04669",
  582. "09545cc8822a5dfc93bbab708fd69174",
  583. "efc063db625013a83c9a426d39a9bddb",
  584. "213bbf89b3f5be0ffdb14854bbcb2588",
  585. "b69624d89fe2774df9a6f43695d755d4",
  586. "c0f9ff9ded82bd73c512e365a894774d",
  587. "d1b68507ed89c17ead6f69012982db71",
  588. "14cf16db04648978e35c44850855d1b0",
  589. "9f254d4eccab74cd91d694df863650a8",
  590. "8f8946e2967baa4a814d36ff01d20813",
  591. "6b9dc4d24ecba166cb2915d7a6cba43b",
  592. "eb35a80418a0042b850e294db7898d4d",
  593. "f55f925d280c637d54055c9df088ef5f",
  594. "f48427a04f67e33f3ba0a17f7c9704a7",
  595. "4a9f5bfcc0321aea2eced896cee65894",
  596. "8723a67d1a1df90f1cef96e6fe81e702",
  597. "c166c343ee25998f80bad4067960d3fd",
  598. "dab67288d16702e676a040fd42344d73",
  599. "c8e9e0d80841eb2c116dd14c180e006c",
  600. "92294f546bacf0dea9042c93ecba8b34",
  601. "013705b1502b37369ad22fe8237d444e",
  602. "9b97f8837d5f2ebab0768fc9a6446b93",
  603. "7e7e5236b05ec35f89edf8bf655498e7",
  604. "7be8f2362c174c776fb9432fe93bf259",
  605. "2422e80420276d2df5702c6470879b01",
  606. "df645795db778bcce23bbe819a76ba48",
  607. "3f97a4ac87dfc58761cda1782d749074",
  608. "50e3f45df21ebfa1b706b9c0a1c245a8",
  609. "7879541c7ff612c7ddf17cb8f7260183",
  610. "67f6542b903b7ba1945eba1a85ee6b1c",
  611. "b34b73d36ab6234b8d3f5494d251138e",
  612. "0aea139641fdba59ab1103479a96e05f",
  613. "02776815a87b8ba878453666d42afe3c",
  614. "5929ab0a90459ebac5a16e2fb37c847e",
  615. "c244def5b20ce0468f2b5012d04ac7fd",
  616. "12116add6fefce36ed8a0aeccce9b6d3",
  617. "3cd743841e9d8b878f34d91b793b4fad",
  618. "45e87510cf5705262185f46905fae35f",
  619. "276047016b0bfb501b2d4fc748165793",
  620. "ddd245df5a799417d350bd7f4e0b0b7e",
  621. "d34d917a54a2983f3fdbc4b14caae382",
  622. "7730fbc09d0c1fb1939a8fc436f6b995",
  623. "eb4899ef257a1711cc9270a19702e5b5",
  624. "8a30932014bce35bba620895d374df7a",
  625. "1924aabf9c50aa00bee5e1f95b5d9e12",
  626. "1758d6f8b982aec9fbe50f20e3082b46",
  627. "cd075928ab7e6883e697fe7fd3ac43ee",
  628. }