[Pkg-javascript-commits] [node-sha.js] 48/237: code to prepare nist-vectors.json

Bastien Roucariès rouca at moszumanska.debian.org
Fri May 5 09:02:54 UTC 2017


This is an automated email from the git hooks/post-receive script.

rouca pushed a commit to branch master
in repository node-sha.js.

commit e799a6f8b15a9a3796dce295d9485defc7246568
Author: Dominic Tarr <dominic.tarr at gmail.com>
Date:   Fri Dec 27 16:26:11 2013 +0700

    code to prepare nist-vectors.json
---
 test/prepare/vectors/Readme.txt         |  25 ++++
 test/prepare/vectors/byte-hashes.md5    | 196 ++++++++++++++++++++++++++++++++
 test/prepare/vectors/byte-hashes.sha1   | 196 ++++++++++++++++++++++++++++++++
 test/prepare/vectors/byte-hashes.sha256 | 196 ++++++++++++++++++++++++++++++++
 test/prepare/vectors/byte0000.dat       |   0
 test/prepare/vectors/byte0001.dat       |   1 +
 test/prepare/vectors/byte0002.dat       |   1 +
 test/prepare/vectors/byte0003.dat       |   1 +
 test/prepare/vectors/byte0004.dat       |   1 +
 test/prepare/vectors/byte0005.dat       |   1 +
 test/prepare/vectors/byte0006.dat       |   1 +
 test/prepare/vectors/byte0007.dat       |   1 +
 test/prepare/vectors/byte0008.dat       |   1 +
 test/prepare/vectors/byte0009.dat       |   1 +
 test/prepare/vectors/byte0010.dat       | Bin 0 -> 10 bytes
 test/prepare/vectors/byte0011.dat       | Bin 0 -> 11 bytes
 test/prepare/vectors/byte0012.dat       |   1 +
 test/prepare/vectors/byte0013.dat       |   1 +
 test/prepare/vectors/byte0014.dat       |   1 +
 test/prepare/vectors/byte0015.dat       | Bin 0 -> 15 bytes
 test/prepare/vectors/byte0016.dat       | Bin 0 -> 16 bytes
 test/prepare/vectors/byte0017.dat       | Bin 0 -> 17 bytes
 test/prepare/vectors/byte0018.dat       | Bin 0 -> 18 bytes
 test/prepare/vectors/byte0019.dat       | Bin 0 -> 19 bytes
 test/prepare/vectors/byte0020.dat       | Bin 0 -> 20 bytes
 test/prepare/vectors/byte0021.dat       | Bin 0 -> 21 bytes
 test/prepare/vectors/byte0022.dat       | Bin 0 -> 22 bytes
 test/prepare/vectors/byte0023.dat       | Bin 0 -> 23 bytes
 test/prepare/vectors/byte0024.dat       | Bin 0 -> 24 bytes
 test/prepare/vectors/byte0025.dat       | Bin 0 -> 25 bytes
 test/prepare/vectors/byte0026.dat       | Bin 0 -> 26 bytes
 test/prepare/vectors/byte0027.dat       | Bin 0 -> 27 bytes
 test/prepare/vectors/byte0028.dat       | Bin 0 -> 28 bytes
 test/prepare/vectors/byte0029.dat       | Bin 0 -> 29 bytes
 test/prepare/vectors/byte0030.dat       | Bin 0 -> 30 bytes
 test/prepare/vectors/byte0031.dat       | Bin 0 -> 31 bytes
 test/prepare/vectors/byte0032.dat       | Bin 0 -> 32 bytes
 test/prepare/vectors/byte0033.dat       | Bin 0 -> 33 bytes
 test/prepare/vectors/byte0034.dat       | Bin 0 -> 34 bytes
 test/prepare/vectors/byte0035.dat       | Bin 0 -> 35 bytes
 test/prepare/vectors/byte0036.dat       | Bin 0 -> 36 bytes
 test/prepare/vectors/byte0037.dat       | Bin 0 -> 37 bytes
 test/prepare/vectors/byte0038.dat       | Bin 0 -> 38 bytes
 test/prepare/vectors/byte0039.dat       | Bin 0 -> 39 bytes
 test/prepare/vectors/byte0040.dat       | Bin 0 -> 40 bytes
 test/prepare/vectors/byte0041.dat       | Bin 0 -> 41 bytes
 test/prepare/vectors/byte0042.dat       | Bin 0 -> 42 bytes
 test/prepare/vectors/byte0043.dat       | Bin 0 -> 43 bytes
 test/prepare/vectors/byte0044.dat       | Bin 0 -> 44 bytes
 test/prepare/vectors/byte0045.dat       | Bin 0 -> 45 bytes
 test/prepare/vectors/byte0046.dat       | Bin 0 -> 46 bytes
 test/prepare/vectors/byte0047.dat       | Bin 0 -> 47 bytes
 test/prepare/vectors/byte0048.dat       | Bin 0 -> 48 bytes
 test/prepare/vectors/byte0049.dat       | Bin 0 -> 49 bytes
 test/prepare/vectors/byte0050.dat       | Bin 0 -> 50 bytes
 test/prepare/vectors/byte0051.dat       | Bin 0 -> 51 bytes
 test/prepare/vectors/byte0052.dat       | Bin 0 -> 52 bytes
 test/prepare/vectors/byte0053.dat       | Bin 0 -> 53 bytes
 test/prepare/vectors/byte0054.dat       | Bin 0 -> 54 bytes
 test/prepare/vectors/byte0055.dat       | Bin 0 -> 55 bytes
 test/prepare/vectors/byte0056.dat       | Bin 0 -> 56 bytes
 test/prepare/vectors/byte0057.dat       | Bin 0 -> 57 bytes
 test/prepare/vectors/byte0058.dat       | Bin 0 -> 58 bytes
 test/prepare/vectors/byte0059.dat       | Bin 0 -> 59 bytes
 test/prepare/vectors/byte0060.dat       | Bin 0 -> 60 bytes
 test/prepare/vectors/byte0061.dat       | Bin 0 -> 61 bytes
 test/prepare/vectors/byte0062.dat       | Bin 0 -> 62 bytes
 test/prepare/vectors/byte0063.dat       | Bin 0 -> 63 bytes
 test/prepare/vectors/byte0064.dat       | Bin 0 -> 64 bytes
 test/prepare/vectors/byte0065.dat       | Bin 0 -> 65 bytes
 test/prepare/vectors/byte0066.dat       | Bin 0 -> 66 bytes
 test/prepare/vectors/byte0067.dat       | Bin 0 -> 67 bytes
 test/prepare/vectors/byte0068.dat       | Bin 0 -> 68 bytes
 test/prepare/vectors/byte0069.dat       | Bin 0 -> 69 bytes
 test/prepare/vectors/byte0070.dat       | Bin 0 -> 70 bytes
 test/prepare/vectors/byte0071.dat       | Bin 0 -> 71 bytes
 test/prepare/vectors/byte0072.dat       | Bin 0 -> 72 bytes
 test/prepare/vectors/byte0073.dat       | Bin 0 -> 73 bytes
 test/prepare/vectors/byte0074.dat       | Bin 0 -> 74 bytes
 test/prepare/vectors/byte0075.dat       | Bin 0 -> 75 bytes
 test/prepare/vectors/byte0076.dat       | Bin 0 -> 76 bytes
 test/prepare/vectors/byte0077.dat       | Bin 0 -> 77 bytes
 test/prepare/vectors/byte0078.dat       | Bin 0 -> 78 bytes
 test/prepare/vectors/byte0079.dat       | Bin 0 -> 79 bytes
 test/prepare/vectors/byte0080.dat       | Bin 0 -> 80 bytes
 test/prepare/vectors/byte0081.dat       | Bin 0 -> 81 bytes
 test/prepare/vectors/byte0082.dat       | Bin 0 -> 82 bytes
 test/prepare/vectors/byte0083.dat       | Bin 0 -> 83 bytes
 test/prepare/vectors/byte0084.dat       | Bin 0 -> 84 bytes
 test/prepare/vectors/byte0085.dat       | Bin 0 -> 85 bytes
 test/prepare/vectors/byte0086.dat       | Bin 0 -> 86 bytes
 test/prepare/vectors/byte0087.dat       | Bin 0 -> 87 bytes
 test/prepare/vectors/byte0088.dat       | Bin 0 -> 88 bytes
 test/prepare/vectors/byte0089.dat       | Bin 0 -> 89 bytes
 test/prepare/vectors/byte0090.dat       | Bin 0 -> 90 bytes
 test/prepare/vectors/byte0091.dat       | Bin 0 -> 91 bytes
 test/prepare/vectors/byte0092.dat       | Bin 0 -> 92 bytes
 test/prepare/vectors/byte0093.dat       | Bin 0 -> 93 bytes
 test/prepare/vectors/byte0094.dat       | Bin 0 -> 94 bytes
 test/prepare/vectors/byte0095.dat       | Bin 0 -> 95 bytes
 test/prepare/vectors/byte0096.dat       | Bin 0 -> 96 bytes
 test/prepare/vectors/byte0097.dat       | Bin 0 -> 97 bytes
 test/prepare/vectors/byte0098.dat       | Bin 0 -> 98 bytes
 test/prepare/vectors/byte0099.dat       | Bin 0 -> 99 bytes
 test/prepare/vectors/byte0100.dat       | Bin 0 -> 100 bytes
 test/prepare/vectors/byte0101.dat       | Bin 0 -> 101 bytes
 test/prepare/vectors/byte0102.dat       | Bin 0 -> 102 bytes
 test/prepare/vectors/byte0103.dat       | Bin 0 -> 103 bytes
 test/prepare/vectors/byte0104.dat       | Bin 0 -> 104 bytes
 test/prepare/vectors/byte0105.dat       | Bin 0 -> 105 bytes
 test/prepare/vectors/byte0106.dat       | Bin 0 -> 106 bytes
 test/prepare/vectors/byte0107.dat       | Bin 0 -> 107 bytes
 test/prepare/vectors/byte0108.dat       | Bin 0 -> 108 bytes
 test/prepare/vectors/byte0109.dat       | Bin 0 -> 109 bytes
 test/prepare/vectors/byte0110.dat       | Bin 0 -> 110 bytes
 test/prepare/vectors/byte0111.dat       | Bin 0 -> 111 bytes
 test/prepare/vectors/byte0112.dat       | Bin 0 -> 112 bytes
 test/prepare/vectors/byte0113.dat       | Bin 0 -> 113 bytes
 test/prepare/vectors/byte0114.dat       | Bin 0 -> 114 bytes
 test/prepare/vectors/byte0115.dat       | Bin 0 -> 115 bytes
 test/prepare/vectors/byte0116.dat       | Bin 0 -> 116 bytes
 test/prepare/vectors/byte0117.dat       | Bin 0 -> 117 bytes
 test/prepare/vectors/byte0118.dat       | Bin 0 -> 118 bytes
 test/prepare/vectors/byte0119.dat       | Bin 0 -> 119 bytes
 test/prepare/vectors/byte0120.dat       | Bin 0 -> 120 bytes
 test/prepare/vectors/byte0121.dat       | Bin 0 -> 121 bytes
 test/prepare/vectors/byte0122.dat       | Bin 0 -> 122 bytes
 test/prepare/vectors/byte0123.dat       | Bin 0 -> 123 bytes
 test/prepare/vectors/byte0124.dat       | Bin 0 -> 124 bytes
 test/prepare/vectors/byte0125.dat       | Bin 0 -> 125 bytes
 test/prepare/vectors/byte0126.dat       | Bin 0 -> 126 bytes
 test/prepare/vectors/byte0127.dat       | Bin 0 -> 127 bytes
 test/prepare/vectors/byte0128.dat       | Bin 0 -> 128 bytes
 test/prepare/vectors/byte0129.dat       | Bin 0 -> 129 bytes
 test/prepare/vectors/byte0130.dat       | Bin 0 -> 257 bytes
 test/prepare/vectors/byte0131.dat       | Bin 0 -> 385 bytes
 test/prepare/vectors/byte0132.dat       | Bin 0 -> 513 bytes
 test/prepare/vectors/byte0133.dat       | Bin 0 -> 641 bytes
 test/prepare/vectors/byte0134.dat       | Bin 0 -> 769 bytes
 test/prepare/vectors/byte0135.dat       | Bin 0 -> 897 bytes
 test/prepare/vectors/byte0136.dat       | Bin 0 -> 1025 bytes
 test/prepare/vectors/byte0137.dat       | Bin 0 -> 1153 bytes
 test/prepare/vectors/byte0138.dat       | Bin 0 -> 1281 bytes
 test/prepare/vectors/byte0139.dat       | Bin 0 -> 1409 bytes
 test/prepare/vectors/byte0140.dat       | Bin 0 -> 1537 bytes
 test/prepare/vectors/byte0141.dat       | Bin 0 -> 1665 bytes
 test/prepare/vectors/byte0142.dat       | Bin 0 -> 1793 bytes
 test/prepare/vectors/byte0143.dat       | Bin 0 -> 1921 bytes
 test/prepare/vectors/byte0144.dat       | Bin 0 -> 2049 bytes
 test/prepare/vectors/byte0145.dat       | Bin 0 -> 2177 bytes
 test/prepare/vectors/byte0146.dat       | Bin 0 -> 2305 bytes
 test/prepare/vectors/byte0147.dat       | Bin 0 -> 2433 bytes
 test/prepare/vectors/byte0148.dat       | Bin 0 -> 2561 bytes
 test/prepare/vectors/byte0149.dat       | Bin 0 -> 2689 bytes
 test/prepare/vectors/byte0150.dat       | Bin 0 -> 2817 bytes
 test/prepare/vectors/byte0151.dat       | Bin 0 -> 2945 bytes
 test/prepare/vectors/byte0152.dat       | Bin 0 -> 3073 bytes
 test/prepare/vectors/byte0153.dat       | Bin 0 -> 3201 bytes
 test/prepare/vectors/byte0154.dat       | Bin 0 -> 3329 bytes
 test/prepare/vectors/byte0155.dat       | Bin 0 -> 3457 bytes
 test/prepare/vectors/byte0156.dat       | Bin 0 -> 3585 bytes
 test/prepare/vectors/byte0157.dat       | Bin 0 -> 3713 bytes
 test/prepare/vectors/byte0158.dat       | Bin 0 -> 3841 bytes
 test/prepare/vectors/byte0159.dat       | Bin 0 -> 3969 bytes
 test/prepare/vectors/byte0160.dat       | Bin 0 -> 4097 bytes
 test/prepare/vectors/byte0161.dat       | Bin 0 -> 4225 bytes
 test/prepare/vectors/byte0162.dat       | Bin 0 -> 4353 bytes
 test/prepare/vectors/byte0163.dat       | Bin 0 -> 4481 bytes
 test/prepare/vectors/byte0164.dat       | Bin 0 -> 4609 bytes
 test/prepare/vectors/byte0165.dat       | Bin 0 -> 4737 bytes
 test/prepare/vectors/byte0166.dat       | Bin 0 -> 4865 bytes
 test/prepare/vectors/byte0167.dat       | Bin 0 -> 4993 bytes
 test/prepare/vectors/byte0168.dat       | Bin 0 -> 5121 bytes
 test/prepare/vectors/byte0169.dat       | Bin 0 -> 5249 bytes
 test/prepare/vectors/byte0170.dat       | Bin 0 -> 5377 bytes
 test/prepare/vectors/byte0171.dat       | Bin 0 -> 5505 bytes
 test/prepare/vectors/byte0172.dat       | Bin 0 -> 5633 bytes
 test/prepare/vectors/byte0173.dat       | Bin 0 -> 5761 bytes
 test/prepare/vectors/byte0174.dat       | Bin 0 -> 5889 bytes
 test/prepare/vectors/byte0175.dat       | Bin 0 -> 6017 bytes
 test/prepare/vectors/byte0176.dat       | Bin 0 -> 6145 bytes
 test/prepare/vectors/byte0177.dat       | Bin 0 -> 6273 bytes
 test/prepare/vectors/byte0178.dat       | Bin 0 -> 6401 bytes
 test/prepare/vectors/byte0179.dat       | Bin 0 -> 6529 bytes
 test/prepare/vectors/byte0180.dat       | Bin 0 -> 6657 bytes
 test/prepare/vectors/byte0181.dat       | Bin 0 -> 6785 bytes
 test/prepare/vectors/byte0182.dat       | Bin 0 -> 6913 bytes
 test/prepare/vectors/byte0183.dat       | Bin 0 -> 7041 bytes
 test/prepare/vectors/byte0184.dat       | Bin 0 -> 7169 bytes
 test/prepare/vectors/byte0185.dat       | Bin 0 -> 7297 bytes
 test/prepare/vectors/byte0186.dat       | Bin 0 -> 7425 bytes
 test/prepare/vectors/byte0187.dat       | Bin 0 -> 7553 bytes
 test/prepare/vectors/byte0188.dat       | Bin 0 -> 7681 bytes
 test/prepare/vectors/byte0189.dat       | Bin 0 -> 7809 bytes
 test/prepare/vectors/byte0190.dat       | Bin 0 -> 7937 bytes
 test/prepare/vectors/byte0191.dat       | Bin 0 -> 8065 bytes
 test/prepare/vectors/byte0192.dat       | Bin 0 -> 8193 bytes
 test/prepare/vectors/byte0193.dat       | Bin 0 -> 8321 bytes
 test/prepare/vectors/byte0194.dat       | Bin 0 -> 8449 bytes
 test/prepare/vectors/byte0195.dat       | Bin 0 -> 8577 bytes
 test/test.js                            |   1 -
 test/vectors.js                         |  32 ++++++
 202 files changed, 657 insertions(+), 1 deletion(-)

diff --git a/test/prepare/vectors/Readme.txt b/test/prepare/vectors/Readme.txt
new file mode 100644
index 0000000..99d14c9
--- /dev/null
+++ b/test/prepare/vectors/Readme.txt
@@ -0,0 +1,25 @@
+
+File formats:
+
+There are two files included for this byte-oriented test.  
+One file contains the messages and the other file contains the hashes.
+
+The message files provided use "compact strings" to store the message values.  
+Compact strings are used to represented the messages in a compact form.  
+A compact string has the form
+	z || b || n(1) || n(2) || ... || n(z)
+where z>=0 that represents the number of n, b is either 0 or 1, and 
+each n(i) is a decimal integer representing a positive number.  
+The length of the compact string is given by the summation of the n(i).
+
+The compact string is interpreted as the representation of the bit string 
+consisting of b repeated n(1) times, followed by 1-b repeated n(2) times, 
+followed by b repeated n(3) times, and so on.
+
+Example:
+	M = 5 1 7 13 5 1 2
+	where z = 5 and b = 1.  Then the compact string M represents the bit string
+	1111111000000000000011111011
+	where 1 is repeated 7 times, 0 is repeated 13 times, 1 is repeated 5 times,
+	0 is repeated 1 time, and 1 is repeated 2 times.
+
diff --git a/test/prepare/vectors/byte-hashes.md5 b/test/prepare/vectors/byte-hashes.md5
new file mode 100644
index 0000000..97a913a
--- /dev/null
+++ b/test/prepare/vectors/byte-hashes.md5
@@ -0,0 +1,196 @@
+d41d8cd98f00b204e9800998ecf8427e
+c3e97dd6e97fb5125688c97f36720cbe
+038701ca277a9d4de87bff428dd30a12
+bc60c6192e361d99b59d47250668a852
+542c3a0ab6b51bc6a88fa7bb567bca3e
+e035f9e748a2a09a4fbdcf18c4f58bf1
+3b4cc9226a236742d72578c5915b6c3c
+35950208a022baac90056636827158ce
+84cedff2ed1b78b395cc8651094f4ce3
+7badf748f4cb700272a72edfea22e9bf
+a1bb6e142739dbdb0925747d95e0a1ad
+0cd9b72dfdee8efd2e1515f4c5a62284
+ef07c13e75d50578d09052aa21a7cffb
+cf3b261af9344bf83b4dd82b30242c78
+530710f65fb98fff8eb927e2938cb8c5
+4e6d73658b27e19d4bb4500625001e39
+c8e5f2f272b1ef88ec62dd0d9d54e902
+031cbf1fb05b4ec09f3c93235d0f49ac
+8c0e1400df02ba8c4809b705e5f5e114
+57ec48278e19f71f54c570a5ab306df7
+ecd3dc346a2337b95389a094a031610f
+f11d91eae492225cbd82ef356aa96f9f
+26bd8b480216c723ce75da98b9bd430c
+80999c2d12f623e4f87e0550a8e3523a
+00945c1bd739ce389ac24bb93f6f9a85
+7ab55f0bd5dca5b17ecaa7fef73ed87b
+e3cedd606ad51dd18532abd3079a3e0c
+df5ecc6732e22cc25836398a10222e97
+863b6d9962ee3761bbb9cd8a8367589e
+683c9384e29efe82dd3ac847904c28e8
+b3d948e72159ddc9c600d75512c5f115
+ce8633a6cf189b07e022147bbbd0f350
+8df17372eb32a0afa4fc47837262ff61
+62c63ca91890ce6f78a59c0bdb1e7bab
+1eda4bb0259a939548ec4ceb39facde4
+c4f37a2c450f2a23322513b372e668a5
+cab8f06436c5ad45f982490215836f4e
+3a43bc720714a2a42a73a76085542f86
+03f2f4033b258e6eb1e101f1ed4c24b4
+2ceb33cec5ecad4a50f6bd3a831ae77c
+dd808f695d28f93562cfcb164bc3cce4
+01c6d7a87e94bf685205ec8d7c5196af
+ef0e93e8928f8bae1b216da8e661fc9b
+c8da55117d7d4b7ee8ddc8dc4ba73aa6
+bbfc64583c6d4c2ef4b0358464d4d028
+3bb5864481f2e66387419dd1a168aadc
+0d725d3a1d3d97d7b5ea8293bbbf32ba
+915eb22a15f7673f983672b6c353b6c8
+13b51da3e8a1422bfd58b79c4e19de64
+e69d6c03102464f22c395f9fa27108de
+132fa4cbedaa7bd965b0b5900211be48
+e37ff5d9f14249f327a19dd5296e6c7e
+4881a65cf107b1d034ff3ecd64ab9cb4
+547e92d01c0b699cfdf43f91714cfe2d
+aa2b3a055b56845f19109f21d3c783f4
+eb1f01cc647ece73b2192537200bb8b9
+1db274ef41b1ad71f713df2b05207e1a
+d8b4ec343b4310345efc6da9cee8a2ec
+082ee3b2be7910f7350368e395a63d90
+d247c4070ae1de106bcb438a2dacac23
+f8cbc4f3af45befc792679f2b113f1cb
+9031006a437019c5dcd987a31731ebd9
+a6b62759ee3883258fbdeeb8b56e6283
+4933898605b4a1b970b674a2dde92292
+f0684ca20de4607232f3e158e81a37f2
+c0b3fdecb3bb7b4ff0c936f378ccb027
+50652123b5e0e51bb5bc3fdde3c6a750
+ed4526ba8226d969f47edbb27b2f1144
+80e6f61dff9da8673fa16dbbdb14d03d
+1d52744bf1450d7c5cfdf1f0bbf967c1
+3438a953124960bcc44611923a8844ee
+b2f341296dd7aabbd4fd8e011be68a7d
+322dba69658a92e9a9ace4d7177fb97d
+b94a434a98efa493fbbc989360671bb9
+cd9ce9a01ed810af70999d8ce4c63811
+4c639abb75a0ae0f22c3384cb9c68441
+fe31ffcced1717988c854c2f3492466e
+b56d81337f9bbf0d838df831e9b40216
+0be9161adfeb2dd1c3f20338bfb3ec4b
+be7b7c9fa1ab09d6578a3f2a82bfafe3
+f6bdc04b4611ddf0aa8403bcb04292f7
+1c7146a10f3c76b0c1dd4af354b14982
+0d3d987f94aee65f84436696bcf33ea4
+1a5c9ac3ee859361ad5477ea792506a3
+e827d60f27e35d8e5b05af748ba897dd
+5b7899bf7a6267d9b3b8c82f241a1d7b
+6dc9fe740cf4a4b93cb0953a3c2a6026
+27adf814806fd4a51c1ffc84122c5c8a
+f74e94ab992c8f27de264993a09ab429
+5eee0f1591d10c159763749ec86b9ecb
+46898964a3889615d9f7c22a81e0a0e7
+8fb58d6770971b0f12e40b31ad65b4a9
+eb4ce130268dc13731dcd16ff492d0a9
+23532a54e8005860ad5e77f4e3392827
+07fedc4dc4891d1a90c501a781a666f2
+83e8341035b37dd70a92a6eed5406927
+6c9f7b3b25734d58f21f5050642874a5
+ef661042e6624f4052ce86d8f233d780
+efe794cdfad5cb86656e29854a1f5c92
+e5f19a0045481443bae165f03598a9ba
+b8fe8691321edbf308a9d60bb817c6af
+f31fdd0f1aef106005e6d29b72229fa1
+239ed45c3cb734db446adfbbe3dab8a1
+2c2303411c7d25617a54106aca18070d
+de179c41aca8bcdc388964024948ff8e
+ca335b74d59bd50832267d3bf28f81df
+dabda7a1cbaa8ea5104c57c8950b703a
+076352a22ecea5ebc876812f62c1cb8d
+ee0a2bdec712a9413623d8a920714b96
+a927c3a99f2843de4133377c690db9b7
+1fa98cff485549d49799dc8cf987a8af
+74013a076a786a26c7e04217bb51031d
+a44ca9661e967bb2e98af65277dac72f
+d30897726b635548dbfa5cebffd9cd63
+4ad04a250b8029c9a7bf6529ee8793c3
+de41e337d96fd23619121ea709861e1a
+18e070fd32cf732b9f37a0083320eec2
+7dd4b27ca8906182f684d0ee4ddb98c4
+70a440a8bd06ff40f6e9135946eb174d
+b8d052366e752ce7c803abd24854e934
+8ab9dfff746ce3e62c6e04feb7b48528
+ecfca8b371616efe78e9916dbf825f5b
+5f76da828c37fc4edb4557953539c92a
+ecad54f76ce3bc233e02fc6fd7f94628
+e8a1cc06bfec7f677f36a693e1342400
+9ad0fe040e44a8e7146c3dd8582b6752
+4e56f978f94cf72158fd4311831b4f9f
+3b95686fe49f50006607d5978aaa3efc
+fa354daecc45f14b82b0e7e567d24282
+b7c30cf902e74c10e3d5c3af7e854f6b
+e9369a7ec98e63186bdae77025cb5519
+57b441e2f3397d2628657e636cd2fc80
+8ae3a1e880ffb884260ec26e8fcd71a5
+eb7d8f9199945e8a1e5c3708da45e08b
+d7dd1997c20a1029f9bd0fd1e2d2ed92
+a986ef62ef378583985cf0d0a34d17d0
+ad5bef0d6ad3434f871983ed09aaa43c
+326f662a5c18a14d26c3d35131ea4b4e
+ea4bf919aebf4add0024d91ee6f640d0
+9cc49e156084d2c757bd6d502bae8309
+9c18d4c75cc02337c277532ecea4b9fa
+4159a65b7db275742e998fb855e7b9f3
+df34d37f6b4ef078bd9570efdd8fd2e2
+84d2c12c4f0c28d288464d33a23f227c
+17b55bbd4222066960e54182e1e95f0b
+75eb69b22793852bc892ce264c421a1e
+de4abe78e28e2718200c76237f2ed42f
+1149c8fc988799f43f6e5069355e108b
+4129891ff13ddd62820f6f3cdbfa95da
+c8758df3c9ad4d311516ea39fe734052
+360ddf0b658fd764ef5ae9bf7a8a1a12
+ad054e0e84e2b8e2b02ce4dee7688226
+cb434f8c5fad9793ed142805afa861a0
+83a3d5436f96cb2cb31d929794425f31
+34dde0f0fe7d4fdb359df1fccbf5fcde
+7b77219e9549fad49e97c380f7e1f362
+053f4e89ae2355c5cb259d21e85eb9cd
+fc45c5118f642cc479e6a550756f1a4e
+0138351089a87a2ddc2d98255ce6b8cc
+1f3e42daa4b315f2a0e6a530e0cc6976
+aec4974f238a6e04dcb07e20ad861230
+7a27fedaeec41b5832bda3169d76cd05
+154bd1371ae66ad3ab9a9ee6b1324e36
+a4594c9e974eed1fc159cc306dd7378a
+431acd1a4a4d6036057c9906da8add5e
+f6afe47bdedf075c7e188b2640152cf7
+8bc3bd8625778f64ed7c29698025f292
+51f6bb4db8e6e61cc4333450c6035139
+0baff1c675866bf259d3ac9417a33464
+6e8a56a9a005c6c6239ccbdf48f59aa8
+6565bceb49f962f797f49084f3f819a1
+2267037a7f3e753c653218fcf67ce9c7
+aca1ae6237f498986991565b0307f0da
+785bb09a5f25730a3aed4de12da4d9ea
+4eb5472f4e5243fcd4a76533789e829a
+7d725ae9a8e569f49c56194226b64dee
+7396f5d4491e79ec1ac0ce7a105bb233
+aa64644a4877da34e2197c5f2dc375c5
+2165718fc24bf21f1c4e0623c8e8d811
+e1f45852024724f00ced7935e297983a
+deac06cde1f6b18a53a2cf0b03998da2
+8371f0970efbc6099c50afbbd4f0e477
+985d909280bc20607f4cb4941ae535f2
+abcdd18a791546544b52c0587dbd6107
+23e8b5a657c962a3e77979859ae1400e
+cc4fab29cc180ffa888be396ce6aa6f5
+b553506daedf701ccdc437fbf3e6bbe4
+d707ae093ab94607010ddda09fc8a5a8
+76bdae04521ba996636c4dc431040031
+556c14fd0f3ff7bd6b435bd630e48811
+b500501957d4b8b412ea0102c842dd5e
+d18506a74c66e4d8537269c10c783923
+c9b4b691f4d88b7d2b4d5b770b05c8bf
+ba915c678f944fe5a480364ddc3382a8
+78134c91a1ffb2e21594daa2c2a932fc
+6fc6c8790dfc301ee38b8b63e18def5c
diff --git a/test/prepare/vectors/byte-hashes.sha1 b/test/prepare/vectors/byte-hashes.sha1
new file mode 100644
index 0000000..f251291
--- /dev/null
+++ b/test/prepare/vectors/byte-hashes.sha1
@@ -0,0 +1,196 @@
+da39a3ee5e6b4b0d3255bfef95601890afd80709
+3cdf2936da2fc556bfa533ab1eb59ce710ac80e5
+19c1e2048fa7393cfbf2d310ad8209ec11d996e5
+ca775d8c80faa6f87fa62beca6ca6089d63b56e5
+71ac973d0e4b50ae9e5043ff4d615381120a25a0
+a6b5b9f854cfb76701c3bddbf374b3094ea49cba
+d87a0ee74e4b9ad72e6847c87bdeeb3d07844380
+1976b8dd509fe66bf09c9a8d33534d4ef4f63bfd
+5a78f439b6db845bb8a558e4ceb106cd7b7ff783
+f871bce62436c1e280357416695ee2ef9b83695c
+62b243d1b780e1d31cf1ba2de3f01c72aeea0e47
+1698994a273404848e56e7fda4457b5900de1342
+056f4cdc02791da7ed1eb2303314f7667518deef
+9fe2da967bd8441eea1c32df68ddaa9dc1fc8e4b
+73a31777b4ace9384efa8bbead45c51a71aba6dd
+3f9d7c4e2384eddabff5dd8a31e23de3d03f42ac
+4814908f72b93ffd011135bee347de9a08da838f
+0978374b67a412a3102c5aa0b10e1a6596fc68eb
+44ad6cb618bd935460d46d3f921d87b99ab91c1e
+02dc989af265b09cf8485640842128dcf95e9f39
+67507b8d497b35d6e99fc01976d73f54aeca75cf
+1eae0373c1317cb60c36a42a867b716039d441f5
+9c3834589e5bffac9f50950e0199b3ec2620bec8
+209f7abc7f3b878ee46cdf3a1fbb9c21c3474f32
+05fc054b00d97753a9b3e2da8fbba3ee808cef22
+0c4980ea3a46c757dfbfc5baa38ac6c8e72ddce7
+96a460d2972d276928b69864445bea353bdcffd2
+f3ef04d8fa8c6fa9850f394a4554c080956fa64b
+f2a31d875d1d7b30874d416c4d2ea6baf0ffbafe
+f4942d3b9e9588dcfdc6312a84df75d05f111c20
+310207df35b014e4676d30806fa34424813734dd
+4da1955b2fa7c7e74e3f47d7360ce530bbf57ca3
+74c4bc5b26fb4a08602d40ccec6c6161b6c11478
+0b103ce297338dfc7395f7715ee47539b556ddb6
+efc72d99e3d2311ce14190c0b726bdc68f4b0821
+660edac0a8f4ce33da0d8dbae597650e97687250
+fe0a55a988b3b93946a63eb36b23785a5e6efc3e
+0cbdf2a5781c59f907513147a0de3cc774b54bf3
+663e40fee5a44bfcb1c99ea5935a6b5bc9f583b0
+00162134256952dd9ae6b51efb159b35c3c138c7
+ceb88e4736e354416e2010fc1061b3b53b81664b
+a6a2c4b6bcc41ddc67278f3df4d8d0b9dd7784ef
+c23d083cd8820b57800a869f5f261d45e02dc55d
+e8ac31927b78ddec41a31ca7a44eb7177165e7ab
+e864ec5dbab0f9ff6984ab6ad43a8c9b81cc9f9c
+cfed6269069417a84d6de2347220f4b858bcd530
+d9217bfb46c96348722c3783d29d4b1a3feda38c
+dec24e5554f79697218d317315fa986229ce3350
+83a099df7071437ba5495a5b0bfbfefe1c0ef7f3
+aa3198e30891a83e33ce3bfa0587d86a197d4f80
+9b6acbeb4989cbee7015c7d515a75672ffde3442
+b021eb08a436b02658eaa7ba3c88d49f1219c035
+cae36dab8aea29f62e0855d9cb3cd8e7d39094b1
+02de8ba699f3c1b0cb5ad89a01f2346e630459d7
+88021458847dd39b4495368f7254941859fad44b
+91a165295c666fe85c2adbc5a10329daf0cb81a0
+4b31312eaf8b506811151a9dbd162961f7548c4b
+3fe70971b20558f7e9bac303ed2bc14bde659a62
+93fb769d5bf49d6c563685954e2aecc024dc02d6
+bc8827c3e614d515e83dea503989dea4fda6ea13
+e83868dbe4a389ab48e61cfc4ed894f32ae112ac
+55c95459cde4b33791b4b2bcaaf840930af3f3bd
+36bb0e2ba438a3e03214d9ed2b28a4d5c578fcaa
+3acbf874199763eba20f3789dfc59572aca4cf33
+86be037c4d509c9202020767d860dab039cadace
+51b57d7080a87394eec3eb2e0b242e553f2827c9
+1efbfa78866315ce6a71e457f3a750a38facab41
+57d6cb41aeec20236f365b3a490c61d0cfa39611
+c532cb64b4ba826372bccf2b4b5793d5b88bb715
+15833b5631032663e783686a209c6a2b47a1080e
+d04f2043c96e10cd83b574b1e1c217052cd4a6b2
+e8882627c64db743f7db8b4413dd033fc63beb20
+cd2d32286b8867bc124a0af2236fc74be3622199
+019b70d745375091ed5c7b218445ec986d0f5a82
+e5ff5fec1dadbaed02bf2dad4026be6a96b3f2af
+6f4e23b3f2e2c068d13921fe4e5e053ffed4e146
+25e179602a575c915067566fba6da930e97f8678
+67ded0e68e235c8a523e051e86108eeb757efbfd
+af78536ea83c822796745556d62a3ee82c7be098
+64d7ac52e47834be72455f6c64325f9c358b610d
+9d4866baa3639c13e541f250ffa3d8bc157a491f
+2e258811961d3eb876f30e7019241a01f9517bec
+8e0ebc487146f83bc9077a1630e0fb3ab3c89e63
+ce8953741fff3425d2311fbbf4ab481b669def70
+789d1d2dab52086bd90c0e137e2515ed9c6b59b5
+b76ce7472700dd68d6328b7aa8437fb051d15745
+f218669b596c5ffb0b1c14bd03c467fc873230a0
+1ff3bdbe0d504cb0cdfab17e6c37aba6b3cffded
+2f3cbacbb14405a4652ed52793c1814fd8c4fce0
+982c8ab6ce164f481915af59aaed9fff2a391752
+5cd92012d488a07ece0e47901d0e083b6bd93e3f
+69603fec02920851d4b3b8782e07b92bb2963009
+3e90f76437b1ea44cf98a08d83ea24cecf6e6191
+34c09f107c42d990eb4881d4bf2dddcab01563ae
+474be0e5892eb2382109bfc5e3c8249a9283b03d
+a04b4f75051786682483252438f6a75bf4705ec6
+be88a6716083eb50ed9416719d6a247661299383
+c67e38717fee1a5f65ec6c7c7c42afc00cd37f04
+959ac4082388e19e9be5de571c047ef10c174a8d
+baa7aa7b7753fa0abdc4a541842b5d238d949f0a
+351394dcebc08155d100fcd488578e6ae71d0e9c
+ab8be94c5af60d9477ef1252d604e58e27b2a9ee
+3429ec74a695fdd3228f152564952308afe0680a
+907fa46c029bc67eaa8e4f46e3c2a232f85bd122
+2644c87d1fbbbc0fc8d65f64bca2492da15baae4
+110a3eeb408756e2e81abaf4c5dcd4d4c6afcf6d
+cd4fdc35fac7e1adb5de40f47f256ef74d584959
+8e6e273208ac256f9eccf296f3f5a37bc8a0f9f7
+fe0606100bdbc268db39b503e0fdfe3766185828
+6c63c3e58047bcdb35a17f74eeba4e9b14420809
+bcc2bd305f0bcda8cf2d478ef9fe080486cb265f
+ce5223fd3dd920a3b666481d5625b16457dcb5e8
+948886776e42e4f5fae1b2d0c906ac3759e3f8b0
+4c12a51fcfe242f832e3d7329304b11b75161efb
+c54bdd2050504d92f551d378ad5fc72c9ed03932
+8f53e8fa79ea09fd1b682af5ed1515eca965604c
+2d7e17f6294524ce78b33eab72cdd08e5ff6e313
+64582b4b57f782c9302bfe7d07f74aa176627a3a
+6d88795b71d3e386bbd1eb830fb9f161ba98869f
+86ad34a6463f12cee6de9596aba72f0df1397fd1
+7eb46685a57c0d466152dc339c8122548c757ed1
+e7a98fb0692684054407cc221abc60c199d6f52a
+34df1306662206fd0a5fc2969a4beec4eb0197f7
+56cf7ebf08d10f0cb9fe7ee3b63a5c3a02bcb450
+3bae5cb8226642088da760a6f78b0cf8eddea9f1
+6475df681e061fa506672c27cbabfa9aa6ddff62
+79d81991fa4e4957c8062753439dbfd47bbb277d
+bae224477b20302e881f5249f52ec6c34da8ecef
+ede4deb4293cfe4138c2c056b7c46ff821cc0acc
+a771fa5c812bd0c9596d869ec99e4f4ac988b13f
+e99d566212bbbceee903946f6100c9c96039a8f4
+b48ce6b1d13903e3925ae0c88cb931388c013f9c
+e647d5baf670d4bf3afc0a6b72a2424b0c64f194
+65c1cd932a06b05cd0b43afb3bc7891f6bcef45c
+70ffae353a5cd0f8a65a8b2746d0f16281b25ec7
+cc8221f2b829b8cf39646bf46888317c3eb378ea
+26accc2d6d51ff7bf3e5895588907765111bb69b
+01072915b8e868d9b28e759cf2bc1aea4bb92165
+3016115711d74236adf0c371e47992f87a428598
+bf30417999c1368f008c1f19feca4d18a5e1c3c9
+62ba49087185f2742c26e1c1f4844112178bf673
+e1f6b9536f384dd3098285bbfd495a474140dc5a
+b522dae1d67726eba7c4136d4e2f6d6d645ac43e
+e9a021c3eb0b9f2c710554d4bf21b19f78e09478
+df13573188f3bf705e697a3e1f580145f2183377
+188835cfe52ecfa0c4135c2825f245dc29973970
+41b615a34ee2cec9d84a91b141cfab115821950b
+ab3dd6221d2afe6613b815da1c389eec74aa0337
+0706d414b4aa7fb4a9051aa70d6856a7264054fb
+3cbf8151f3a00b1d5a809cbb8c4f3135055a6bd1
+da5d6a0319272bbccea63acfa6799756ffda6840
+fb4429c95f6277b346d3b389413758dfffeedc98
+2c6e30d9c895b42dcccfc84c906ec88c09b20de1
+3de3189a5e19f225cdce254dff23dacd22c61363
+93530a9bc9a817f6922518a73a1505c411d05da2
+e31354345f832d31e05c1b842d405d4bd4588ec8
+3ff76957e80b60cf74d015ad431fca147b3af232
+34ae3b806be143a84dce82e4b830eb7d3d2bac69
+d7447e53d66bb5e4c26e8b41f83efd107bf4adda
+77dd2a4482705bc2e9dc96ec0a13395771ac850c
+eaa1465db1f59de3f25eb8629602b568e693bb57
+9329d5b40e0dc43aa25fed69a0fa9c211a948411
+e94c0b6aa62aa08c625faf817ddf8f51ec645273
+7ff02b909d82ad668e31e547e0fb66cb8e213771
+5bb3570858fa1744123bac2873b0bb9810f53fa1
+905f43940b3591ce39d1145acb1eca80ab5e43cd
+336c79fbd82f33e490c577e3f791c3cbfe842aff
+5c6d07a6b44f7a75a64f6ce592f3bae91e022210
+7e0d3e9d33127f4a30eb8d9c134a58409fa8695b
+9a5f50dfcfb19286206c229019f0abf25283028c
+dca737e269f9d8626d488988c996e06b352c0708
+b8ffc1d4972fce63241e0e77850ac46dde75dbfa
+e9c9bf41c8549354151b977003ce1d830be667db
+0942908960b54f96cb43452e583f4f9cb66e398a
+fce34051c34d4b81b85ddc4b543cde8007e284b3
+61e8916532503627f4024d13884640a46f1d61d4
+f008d5d7853b6a17b7466cd9e18bd135e520faf4
+bd8d2e873cf659b5c77aac1616827ef8a3b1a3b3
+b25a04dd425302ed211a1c2412d2410fa10c63b6
+a404e21588123e0893718b4b44e91414a785b91f
+a1e13bc55bf6dad83cf3aabda3287ad68681ea64
+d5fd35ffabed6733c92365929df0fb4cae864d15
+c12e9c280ee9c079e0506ff89f9b20536e0a83ef
+e22769dc00748a9bbd6c05bbc8e81f2cd1dc4e2d
+f29835a93475740e888e8c14318f3ca45a3c8606
+1a1d77c6d0f97c4b620faa90f3f8644408e4b13d
+4ec84870e9bdd25f523c6dfb6edd605052ca4eaa
+d689513fed08b80c39b67371959bc4e3fecb0537
+c4fed58f209fc3c34ad19f86a6dacadc86c04d33
+051888c6d00029c176de792b84dece2dc1c74b00
+1a3540bee05518505827954f58b751c475aeece0
+dfa19180359d5a7a38e842f172359caf4208fc05
+7b0fa84ebbcff7d7f4500f73d79660c4a3431b67
+9e886081c9acaad0f97b10810d1de6fcdce6b5f4
+a4d46e4ba0ae4b012f75b1b50d0534d578ae9cb6
+6342b199ee64c7b2c9cbcd4f2dcb65acef51516f
diff --git a/test/prepare/vectors/byte-hashes.sha256 b/test/prepare/vectors/byte-hashes.sha256
new file mode 100644
index 0000000..7332dea
--- /dev/null
+++ b/test/prepare/vectors/byte-hashes.sha256
@@ -0,0 +1,196 @@
+e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
+09fc96082d34c2dfc1295d92073b5ea1dc8ef8da95f14dfded011ffb96d3e54b
+33a633841666a5c291a82bfae65deac5c537d05f9fe926cbb5b7281bf90ad150
+8e2cc699f7e677265069f172d4cba15c146e954d7e4f2a8c176576035275b7a0
+8096d72b968a2dbb7ceee163c1981f7f1ec11ee10051b2dc2a8d7601d4e56971
+2cc06402328f034d1909fa7b95f34cdb5585ce7f9096bc4082c97904921f6304
+99a8d6823b803a8d41ed7c26322b4ac8fdc86ce4457ffaaf8600e99595f1577a
+5d73704556bd458af1b90383d98591c1d01894d99b394fb7647d3d0cbd45f9a0
+3b9606c772ea20bf2889732b034f9fd476ceddefe8ec4e3704c5993e38dace1b
+b858d7c61b67e1688c267ca83b57dd0947c4e5acc4eb3d130fbd92222b66a9ab
+87574390294ef6d212b6d8c44ebd5c88e932036dadd0b827c6cb25cd120bfdf6
+afe90242f095e967523c12333b0093d4e532a0db0f27dcc25d44d23ffb62094b
+55731252db2418c49f15d7f0f146c6506589f016a82c72cf8a6276ac6bd123c7
+c2e0ed603bfa67292b78a29264e409a2e0c98482cdb59cf4fe7cafff69853d11
+517f007a8b65d4197411c35b14edb1340490a9be7a6c66b8c827b1e101a05b5c
+76c977fdc97261cd0956ce1319476d314bc57d8691c7884cd0a7ff3cf825c31f
+f10c26637ea8ca2d0898fa661f087f13f174fe0ca1c91862ce3b6127c3430f51
+679b95521601c0ba63ce882046abd7a8cdb8e78d5c0ee9f38c21dc47ca846195
+af369f2162152e43847b4d0c595dcf2d27059563909425f37928bc01090f2f34
+7e1f6f080a60c402bb9c39578f75afc148a0746c656ca243f75038b82304bdf5
+8d6df02738597d95e2eb9e870d4177339728d9ab8b8d61aa96f0b6d1b5ad6efd
+d0a9699291dead3f6fba3b648c28537a04caea4b96b145802c06125a17c3faba
+d504026213b322cbcb0dbadd6a1fc6c708825019da9bac7aec973f750cbf2d3d
+66c1a2578b41c3a200296e85d4d30a1876f8ca5cb941ffb1420e04d8e37149a5
+b8a87b047350912e4861e4aab7d1046d5372797ecea81d187f8e2c117db535dd
+8d2b52d4d4074d471d037cdf9eeb13c18ef9ce4949fce00d106ef0880f2db5ed
+3d182e9928b2433c94255452170e59e3f4cca3dd29ea2e9b01e94e89da595393
+17c3f5d88ed7f3f62be0e28913357d65916389c1633db8fb62b92e14230d3611
+93788128441c894247bd9ccd6fc8af146c0ee76cdbe4e1c5a8dfa81dd0c338b4
+c7855ac54d2c5767273eec327efe39fdb3bad74121bdd8d2065484268727539e
+d1e1f2aca9cfe8c6460f576661190a8008705ef13207c4c7200a2d6b0605f519
+b1843454b0258016558abdbd899319c1fd12d03e0c3d9e882da03de9cb981777
+2834dcb6957b97fdde61b532d151ee4482bface8714fe36cd072b4783765901d
+47d61de59879013f64eb78fa8f6c8b906f7d25b8e1c3ca888f32421749c0d042
+855fc59aa873328501ab0b1ce9c60a7d5582662c725605ebe02b64a13e34b3bc
+e05939e8ff4ed77a11522dde249a74841c54970d984e0bb6f77ac64f1fa313b0
+078778fed0e382da5d7dd36f585e1f1aa9b92d4caf20b85c0f6dd346de8d3998
+263140810ae46430e19ac1a4a98b6204b63031b282ecb28594bd837268104308
+ed39f65ea0e6cd8fb39bc5d94a1554dfd0002733e01618161d58a7b7dc8be834
+89830272d1fd54040f9329a39c7f491f15eea851095e0bd2d0bb412baeda7445
+c9b63e8ac2e87494f98c9ece5d74f4540090c286166efdaedc6d59a0f623e5f8
+509e6b7dacb70bfa62f3964eba990b9c576fd2485c1040fefc8eab5f07269f4d
+8bb7546f64ce1cab770407de791ab25f7bfbac3e071810310ee674c2824e59ac
+ac5bf3cad821e7ad8b2ed7bbfbaaa5e7abb30606afd8ed5d6a18a0d0eba343d3
+f7995f433d17bee25f44c918de82eb147b3bfef24045ff8fb17ffedf559e06b7
+2c465ddc53e88894a2279e30b9e6feb064c66b15dcf5a38722f5c92d65a84bab
+b0ced82dc52c4f9b1dec098a80a23a4a711f3a8c9c3684f0761b0e8a29ba560a
+f8dce75572495bc241288c07246acf7a157d462a9c01d1491618f073e57f47e2
+46d89d780f178334d19e02c41d5af2e265e2190896dce94822b99c19adc3ff6f
+968954bafff8e2a118d3aedffc6283b30efddbac0af2245195c2a32a665a5d54
+33f78a8a6adc466fed41020fa799aa537cc1c1bb4e938c06a1baec97f7b3c26c
+5f7f49d1c307363de95d450b558275f8d5a6780ee47246268e6729f7733e535a
+9f126c6e07ed2744cef5de1f468b2ed1c51a13ec3c8351935b9656458a3dc40f
+b8e3d23621cb02bcae060bdf5b6b7db1f024651f98ec63766c20b7883bc033d2
+689c608602d5e5d37a0285eeb5006d97addd7c2b8e006770fad588eff621c971
+17c6f0073c4f92d5eedda57ca2506aa6002695c6b7bf12e4dbf4dd1a7fbceb08
+504472bf96d0a3da1098dacacac48886d1ab92929187de95c7f42eab9907801d
+ad3a49ab7ad5b69182301d9ef971feab72f770f4d9f60f6db308ffea746db005
+5cdcb342f26857e8db5ac97a89da6197759adf384ab241a8112795241983238f
+4ec9883c8ad72131c79f14e4f1e75042a61100a5bc290fc344ee3c2adc99c143
+375c64eb3361f34b4d89078fa95d082c74bced92436aa3d50031839375d6473e
+8a0a36538da941bea6c614b2c038424588d8d2505039f70cbff291d4f0f9f6a1
+a4dd6338174ebeda6a25b88d754fa5b95cad27902eb0bc8321b76db62efb1abc
+a644092a1de8e05e17908ce565d55fcf39e30585565d96bf1c13eeb9f3401803
+7697b1435a5bdc094038469fc5268615cbe94641b2165bee62466426ab414c97
+62f249a85b14b477e764e63e9821d3f44dd2c745293f3586eff976266311a39f
+eb2c75aa7330a6589d09f58231d1218e4124ba49b7b0c5245a76a5101d136449
+90c096f9852990cf0fcfbd36ffeb577b4d106d66e9c7a18abdc6f7a3b1ddbab1
+327b0e47ba3bc200579ac67ac38968e0df655e2d22ffe3adf238f7ac9029a1de
+bdf4ef8fcafbe13b772ca217eef56a316210e71f69cd943433087c68d9a67bb9
+72c955a5adaf9e49d565342b41b36ee5ab9b5a394d003b804e4e361a46bda571
+cbd287d6a6707e2cdc8e63a29f758facbdab375bb252183d3af877dea8d25260
+7aa856fd19741a16ec634b1f653cfd5ac224278652e0b0a2903e274be20a048f
+8410cdb01c659f05741fd29469d0dbb0251b4fd8e708abeec4a879047fba7c37
+b5f811baf9c441d04f010f76bcd7eae80c5bb249a40ce37436f0a0296849b8ab
+9be38d9ac8a9c30e8a5e86e3ede291b23bb381ee41dc662421e394f6b8b9881e
+ef45cac2d6f325a523c40a989f5554e152f8d65cbd22d35824d1f28378658432
+8e3d126f3a316e0ec49741a3ae6215e29c4acaee364272b7087d9b766579e00c
+a43ee360b1dc90c573bef4145e1d4557166d7cce6ea1ed33e0cbd909643c3621
+5396745f9645dad55b732efde57de49c2ae40624fee192579014dc2b79d814d5
+b617be050dedb47be64d82dc19e3d84b6799b5bada18944df5417759a85e445e
+17d5520a82dd7c945de6a92200d036cd95bb16330f0f95df802d23e90c8e5c2c
+b71e5a677801057ec719ae2655732720644bc8f999a8698876c92e4323d4ae0f
+80c6a41efdfe452d1ad6f3b0d5eb31b962c332a9bb7e4f7ee6f4aaa18a3b81d4
+32ae8512b486d4523ca7a630556758655a5cff12aa5cfcb8dc5e65b21a257f4a
+0f14c68ffe8c26e9d2ecdd5ea8027b6549b3e8742023ffbdc7547227cc27ec2c
+85dff510ebd3f1fa617a2273ed67ef5abe4774cfe95657fe380e75b25090664d
+7a852eb3b59ad350c9d47adf1ce0812d06866cca8e1f2c65c893e7952a62eea4
+49cfe8b6302a2d45b866a26c4940d777df4f588ebe1bafeb275a8a03a1eeb0aa
+e6e49ebcd83acd3a9ec0b100e26c4d82388eb9378ecfcbf967a31c4951ad0c01
+9edf4d38cdd6e73e857f1ec91132499e7f930d2cdee6b3583a8f062ff7e9d848
+768dbebcd6aa66337810b7457964c63322904e9242229e5d98b808799f7f4cd4
+867a5ab42d15f9843d67438db495a8a581eddd39c3753f3d203225b60eaa9a3e
+d7acd8d042b8c6802f6d9262055a6e296f3254674745f18cd1b21244e1acb9f0
+fe781c4d49e73ca9f82389b6d58f3def857cffe624acfb6a2a5a8e9559623f37
+96fb72ddb440bb1f00dbafc97768f9890effcc172fcc395de4f2a19318c46c86
+b63555a77fefcadecfa88a770e70f1d51d46ae68fc672ad4770804495eb1b867
+161d1a609fdeb2fa425761bf0b751dfd25e7a0a02995920921f99f63331b76d9
+c80931a1263d7f192937eea3e453006b19525ed981314ec3fd561d256e8e135d
+a3b6ba9a5cba6071a99b1a43454053bfc3e6d1338ccf0063d5d71247a6b57566
+7d057dc07ed5a7c11590262a0a18c8cd614a029ca12fe08bfedc87307b5f65b9
+0b7744d3394c04618e6376cd450cc3fc81586493ab5081a9b3b155938d98563c
+e8d1ea7154ec53c175761311295f69037865db32ec22976b6ddb981d226760ad
+40aa287bdf661317439fa5ffa77cc9fa9ca3df504aae74b0ba83b2fbebbaac83
+ee2e8fb7206e2e8fdae91afcc3e903d534b304069f232c68f53407cfc6d0bbae
+b940c011eaef2b772ba03659581d525e0b6148f9c59cb7120db55ce18bf6d695
+9574545ba02bd75bb1dcf038884bf9d7892bc017215308f01ebba7932c014a62
+da685c53ddf810225507141759e3c74ffeaa1c5eecbe150386a83027e7014077
+5c0769369e4fb9f9d9e599612923554fb2f1e6d87eaeed283f6106845b66b532
+19056a3d33ebe1b84a100c27fc72d0265ceeb9c573d7942a4d44983238d34ea7
+8a5e6e6cae30d4283fd70af96d9c53d8ea45ca48892d313981fe208b1384f0dc
+880992dadfeccb31f289522214209eb87f41fea5fd3155ab274e9a6fdc6f9f64
+ea7a2b0e780fc6dc8843643a2bc18a17226a1bb3d9e1467cf0be2201decce2c7
+2077395cd7562dd5e9965ea620cedf32c805f50f748c4ee6e82af960c5ce2d66
+2dbdc632baa5d0831808518beb80e3737de5bbec3dd0438e75dd30b2ea7fbb90
+ced4cf34982e0abbef40e876659544c4ed01f1975351490984aaa429fef321b0
+69339b4534eecca329ef2af397ede2a882d7e315a871dd2b781b8e0f4277ee66
+79cfbb9b52e573e22cd3427ec258d69e2d19fd27de15df96ca9006ccebe7b58e
+1203d54626871bccfa8abb8bbd740b9af3c7266bc8490a210074d7f2b0806ae8
+0c15140d3b5e4b180b0b1517a51fa08f82458c02185ef2bc59fae37543ef9011
+ab71b18daceecc7c8fde7cf5f77eacf118262d760bcd383dd7bfa2170895d518
+fa3174d3432fe38241a34a8387811b54c3d0f183468cef5cd6d3fb325b270b66
+c13fd9ed22d33aa45f73748782e4dbb835d180dc0662e160c0a6c445c76f0c72
+b88a842dc14c41c2b5bd74e48fdd2bd0d43cfeea1eb9b154bebfc4f03d8a102d
+45ba1056e49828a0385b0b5f9e4933905973f15b2713fee1c1755e2a7a3e8d79
+a0d7d4fda9435ef292b761aed2c9fea576519437a824e96150a4324dcc757605
+7906439843a1c1758c232182eaa66d5e6bd5ad2fbc0157fdc5438e1038966dc4
+35e5a6c17906646cf15c2bed4884129b5134eb2b411400e4d8797126f51a4cb7
+d19ddbd98476519a07cd8917b95eb609e5b50e8088ad68cd7426e8139d5bffc2
+cafea6a1183ca8934867692684194ce9903b375a8036c4c5deb8fb379c3423cb
+7e4734ce7e22a515bfe60e296640dec121a089f75034240408fe7be2ed9e5c87
+b09436c29cc3823c434a4689bb67a73a49164bd23ab40c4e04ed99320fd138d2
+d6752f5e2738cbaa2e154b749216babc990297af411dfa2b66c9f942480ff4b9
+0f0cc4994a2a88f58cc38afdf61ff43952473c437d235cec426139c8f43ffb5a
+eb9dd875ecf9ec930b1482b8a50c337d48b31590f99cdfb80bbdd160ad4fb49b
+ec7435c1c8e3eb1de2871cdc797bff6969b863e5b9fb005b3a7af4ff96680c63
+e5afd502015d80bb43ab7f92f138b35ce5fafa980c5fba78412ffcfa281f9d8d
+14e7975021e84497b4daf367f6861c79820308883c4e1254c038a7458a3f2913
+bcefd79629a6d7a8afbf0c8ccfc2c5889f627989e71c3a212d900e3015e460fa
+74661206cb19ec00619e1fcdcae443486adfa69a564672c9ee9f48f8ea35d5b2
+341bf4dff841088f3b902c2471b67b49498bda5c045e9befd58af93ade0a8df8
+e5239ecec9ea7737f614ebab502df1248c0a9a0183fc70441fd9ac88040846ce
+58e09b4047770bc998b86a4191b7a11eec6fc65bd5e5d0fb6f30d4b7ee0cd683
+9e01666f3284aec585338d0b452aa1712b9d1392c4a265a2ecfc9dc4cadd002b
+33aa52b6be6991965ae18124232f108ec7b400528e848e5d8a8d7cf75783ee19
+f854ce37a0821dee06b616d2e86383271c91e09328f884dfef2107712d267601
+a58035c4921e7114b97fde8d4cf04224971d49fc6b23ed5d61a29e133684c809
+4d8963b832c44bab059a206f162890fff4eafd71e535a03609a67fe3c31de9e3
+6ebf98b52fc3c4e77257d176b47d10729baeec4066a9bc78a89d7d02af7ab2cf
+366cd811c075198d1749db7075c4c333b6f347b64e44b3744ef28a3957a0feb1
+712157d7d59011c4bf1ee690217f4b0f855816e9bbee6b6aff277b9645340c9a
+1dc0a697f2a7c1da301b256e6822879f212beb56fbc7fe1b8e877ccd964c132a
+6fb0514a46f06be4bc3798ae82fa6cf14103926f1969b3d70910a9c5d9589e58
+9731a6c8ef6c4d601781f231e5b17c0a5194495d5b01b27aefbb4cd857c0c7d1
+b18a49b7c4114fb94d16ffdce1e1677e6bde99bba443936af10cbedca6eeaf2a
+ce197d61ddae42c8b8447aa698b3e7e5d51d9f0cd2034bc64f1a9d1b2b18e3cd
+7d9a3aebb470990abb92303f0c2ce5d6c38f9a2198d8f1ae8ab7fbbbf007cc7d
+e52d8c79b31f45d4894e0948089da5fc236d33dd79a80d2304043e8c234cf88c
+b1870cae9e54cbe8ddd74782c98f6c9ec6eeb835e2765252530d71779685d4ea
+69850fe71261572f61d56863a7dc12aeda7931225d0eafb5b7b45aef7b6c8586
+18fdfb38e4f516734cef5de8cba84a54a17cdaf13228621dfcd806c5e822eccd
+9db6e6591134181c2c19bbc57f24e11ea161165cde584e1f58c4df2fb5ee8c88
+86eafcaf23edfef66753d664eaa7813b5a16d1abc01a95f74ae88a02e42cadfb
+7be29e433c7e17875c71eea08d10ada5a17eea25ead94d41cb1711e8fd204c06
+c1f98aac0cfc98f30c3fa13fb8011b2a1d553e6c03edb8e2a35f47574237fc64
+981571f9393463f49cd5352c024a8998d7b139bc8aec7a512101edb18a7e0954
+8628162a5c9d34c94e60027175f819e98a356832a3d3898a7f11b95e171e2a73
+1c4530860ec79ab73b141a7e64b0de775192a002fa2f3832b6c24972797d5161
+d97097c16c4d0cf169e61cde78e807cd318b8938992066bfe4e266e14146fbba
+3a18179cf693d234a8aa913b7362505533b414d60bf7eaf02427157759defaba
+8ee61f98cea2659f5ab9d8ec444de3b3e843ab02baa7806e96230a64dee93774
+bc69420ce99aa58de5d5c9ae32c3528b02546347e8f85dca651187142bc2a40b
+79b2d4da202168d2c6f7dbff6dba414f71e405731a287a23b58af903f9b1c770
+068c65431e6010461cd77e3d2859fbc978857d1195dc1506ab1b5c9344e1099f
+918a1d14de8c5fa363fb3137cf5014020646a1a2235f78ef3ed0d034c74f5761
+ef88b649d012178186dcf0244835232b5b7392e0c1f8f141f5107e9ead559e74
+326f14fc54954b73d704935b213dc797311f7c8fcd88c238c8ab767286dc3f94
+0087e37129b9a2d58b0987a218a3c1be67cb1e08142cbcf889aa617ca3e4640d
+93294033c9de9361a3c6cc0df539e2e459f6d2babbbc0623859e18af0d0ccf4e
+49640215294d9263bc464538c3c29e42edea637d1427c2f04ebcd828d6fcb480
+ce5cfa5b3b0485805cf5bcc8c24594a6b6fec9249698d317ce20bc84d857eafe
+c9ac43870e02c7b36bb1e7ba3ce2e234507c0076f8a77494f268777edf5ebffc
+30eb195e3aad4c288af76c66e26c6096f5f7de1b56b43d638ab7119d73cfd214
+338225e3b94025d2b327d72ed3d763a66856e1d1ebcb632bc4d8752000ad9966
+69b6cc0729b2d2877d46a08f3c251ae18f043949a33797c3027668b23c969d68
+3d35c10650a2da8413a2a11b8e7fb891af5da3a9763584caa6cd71bbe68de6ba
+baf3bcf323f3e5b91649eeb5f1be977a8bd91915a66297a22fdb1a906d1a7e53
+7fd9b3abc4684e6f8ee591bbac5a36c5060bb09ef7899690416e5300cc14fcd3
+429e454c0cd5d874d7887f8f8def3390a6e54af783c102af6bc3c75c62f3661f
+0987d19048e10b925bcf394dfffcf259fc1a15e403673a80bfd4e7fd4f43cef0
+fc774a081d9c93d52bb6a8d99a06ccd7bf32a10154d302524b8c5c5dc1b2969f
+6c6afa35f1aad6301dfde6c4ababe2da47d92033a9a41e84ca6f00e5eb29bc60
+1e858dd15069f54478023c4d8518cd5aa814fb15c9eb8df45c44efbb050587ed
+5d73820315ebd00f0e419a7fe418ff109664add82a68387daffff4239a2c1b23
+f7f4721be31524d014bacf105b06bacc4bdb953bc04d5a048e1fd4ddc395667e
+426cbfa5a10024c4f5deae9146222146c2d75a5bf13e8215c04d7dd17f455743
diff --git a/test/prepare/vectors/byte0000.dat b/test/prepare/vectors/byte0000.dat
new file mode 100644
index 0000000..e69de29
diff --git a/test/prepare/vectors/byte0001.dat b/test/prepare/vectors/byte0001.dat
new file mode 100644
index 0000000..6f4f765
--- /dev/null
+++ b/test/prepare/vectors/byte0001.dat
@@ -0,0 +1 @@
+$
\ No newline at end of file
diff --git a/test/prepare/vectors/byte0002.dat b/test/prepare/vectors/byte0002.dat
new file mode 100644
index 0000000..26136c5
--- /dev/null
+++ b/test/prepare/vectors/byte0002.dat
@@ -0,0 +1 @@
+p�
\ No newline at end of file
diff --git a/test/prepare/vectors/byte0003.dat b/test/prepare/vectors/byte0003.dat
new file mode 100644
index 0000000..d3b1468
--- /dev/null
+++ b/test/prepare/vectors/byte0003.dat
@@ -0,0 +1 @@
+
�
\ No newline at end of file
diff --git a/test/prepare/vectors/byte0004.dat b/test/prepare/vectors/byte0004.dat
new file mode 100644
index 0000000..f00c578
--- /dev/null
+++ b/test/prepare/vectors/byte0004.dat
@@ -0,0 +1 @@
+8x�
\ No newline at end of file
diff --git a/test/prepare/vectors/byte0005.dat b/test/prepare/vectors/byte0005.dat
new file mode 100644
index 0000000..9b3ac32
--- /dev/null
+++ b/test/prepare/vectors/byte0005.dat
@@ -0,0 +1 @@
+>�
\ No newline at end of file
diff --git a/test/prepare/vectors/byte0006.dat b/test/prepare/vectors/byte0006.dat
new file mode 100644
index 0000000..611a56b
--- /dev/null
+++ b/test/prepare/vectors/byte0006.dat
@@ -0,0 +1 @@
+��
�
\ No newline at end of file
diff --git a/test/prepare/vectors/byte0007.dat b/test/prepare/vectors/byte0007.dat
new file mode 100644
index 0000000..0af0f7a
--- /dev/null
+++ b/test/prepare/vectors/byte0007.dat
@@ -0,0 +1 @@
+��q����
\ No newline at end of file
diff --git a/test/prepare/vectors/byte0008.dat b/test/prepare/vectors/byte0008.dat
new file mode 100644
index 0000000..90e3f79
--- /dev/null
+++ b/test/prepare/vectors/byte0008.dat
@@ -0,0 +1 @@
+�|`<��
\ No newline at end of file
diff --git a/test/prepare/vectors/byte0009.dat b/test/prepare/vectors/byte0009.dat
new file mode 100644
index 0000000..6012eb5
--- /dev/null
+++ b/test/prepare/vectors/byte0009.dat
@@ -0,0 +1 @@
+�?�`���
\ No newline at end of file
diff --git a/test/prepare/vectors/byte0010.dat b/test/prepare/vectors/byte0010.dat
new file mode 100644
index 0000000..ebe5263
Binary files /dev/null and b/test/prepare/vectors/byte0010.dat differ
diff --git a/test/prepare/vectors/byte0011.dat b/test/prepare/vectors/byte0011.dat
new file mode 100644
index 0000000..bc046e1
Binary files /dev/null and b/test/prepare/vectors/byte0011.dat differ
diff --git a/test/prepare/vectors/byte0012.dat b/test/prepare/vectors/byte0012.dat
new file mode 100644
index 0000000..3464653
--- /dev/null
+++ b/test/prepare/vectors/byte0012.dat
@@ -0,0 +1 @@
+�
�0���
\ No newline at end of file
diff --git a/test/prepare/vectors/byte0013.dat b/test/prepare/vectors/byte0013.dat
new file mode 100644
index 0000000..648b68f
--- /dev/null
+++ b/test/prepare/vectors/byte0013.dat
@@ -0,0 +1 @@
+�����A�
\ No newline at end of file
diff --git a/test/prepare/vectors/byte0014.dat b/test/prepare/vectors/byte0014.dat
new file mode 100644
index 0000000..b19f410
--- /dev/null
+++ b/test/prepare/vectors/byte0014.dat
@@ -0,0 +1 @@
+��G��`0�<�
\ No newline at end of file
diff --git a/test/prepare/vectors/byte0015.dat b/test/prepare/vectors/byte0015.dat
new file mode 100644
index 0000000..1e4de6c
Binary files /dev/null and b/test/prepare/vectors/byte0015.dat differ
diff --git a/test/prepare/vectors/byte0016.dat b/test/prepare/vectors/byte0016.dat
new file mode 100644
index 0000000..7c46183
Binary files /dev/null and b/test/prepare/vectors/byte0016.dat differ
diff --git a/test/prepare/vectors/byte0017.dat b/test/prepare/vectors/byte0017.dat
new file mode 100644
index 0000000..5b45703
Binary files /dev/null and b/test/prepare/vectors/byte0017.dat differ
diff --git a/test/prepare/vectors/byte0018.dat b/test/prepare/vectors/byte0018.dat
new file mode 100644
index 0000000..47c17ed
Binary files /dev/null and b/test/prepare/vectors/byte0018.dat differ
diff --git a/test/prepare/vectors/byte0019.dat b/test/prepare/vectors/byte0019.dat
new file mode 100644
index 0000000..4ed952a
Binary files /dev/null and b/test/prepare/vectors/byte0019.dat differ
diff --git a/test/prepare/vectors/byte0020.dat b/test/prepare/vectors/byte0020.dat
new file mode 100644
index 0000000..a7387d7
Binary files /dev/null and b/test/prepare/vectors/byte0020.dat differ
diff --git a/test/prepare/vectors/byte0021.dat b/test/prepare/vectors/byte0021.dat
new file mode 100644
index 0000000..a330c33
Binary files /dev/null and b/test/prepare/vectors/byte0021.dat differ
diff --git a/test/prepare/vectors/byte0022.dat b/test/prepare/vectors/byte0022.dat
new file mode 100644
index 0000000..70bdf45
Binary files /dev/null and b/test/prepare/vectors/byte0022.dat differ
diff --git a/test/prepare/vectors/byte0023.dat b/test/prepare/vectors/byte0023.dat
new file mode 100644
index 0000000..895cec6
Binary files /dev/null and b/test/prepare/vectors/byte0023.dat differ
diff --git a/test/prepare/vectors/byte0024.dat b/test/prepare/vectors/byte0024.dat
new file mode 100644
index 0000000..37ab0ba
Binary files /dev/null and b/test/prepare/vectors/byte0024.dat differ
diff --git a/test/prepare/vectors/byte0025.dat b/test/prepare/vectors/byte0025.dat
new file mode 100644
index 0000000..c5773a5
Binary files /dev/null and b/test/prepare/vectors/byte0025.dat differ
diff --git a/test/prepare/vectors/byte0026.dat b/test/prepare/vectors/byte0026.dat
new file mode 100644
index 0000000..04b568d
Binary files /dev/null and b/test/prepare/vectors/byte0026.dat differ
diff --git a/test/prepare/vectors/byte0027.dat b/test/prepare/vectors/byte0027.dat
new file mode 100644
index 0000000..b068ef3
Binary files /dev/null and b/test/prepare/vectors/byte0027.dat differ
diff --git a/test/prepare/vectors/byte0028.dat b/test/prepare/vectors/byte0028.dat
new file mode 100644
index 0000000..98bc2d9
Binary files /dev/null and b/test/prepare/vectors/byte0028.dat differ
diff --git a/test/prepare/vectors/byte0029.dat b/test/prepare/vectors/byte0029.dat
new file mode 100644
index 0000000..97bfc3d
Binary files /dev/null and b/test/prepare/vectors/byte0029.dat differ
diff --git a/test/prepare/vectors/byte0030.dat b/test/prepare/vectors/byte0030.dat
new file mode 100644
index 0000000..25f09c0
Binary files /dev/null and b/test/prepare/vectors/byte0030.dat differ
diff --git a/test/prepare/vectors/byte0031.dat b/test/prepare/vectors/byte0031.dat
new file mode 100644
index 0000000..988f3ac
Binary files /dev/null and b/test/prepare/vectors/byte0031.dat differ
diff --git a/test/prepare/vectors/byte0032.dat b/test/prepare/vectors/byte0032.dat
new file mode 100644
index 0000000..f31fdcb
Binary files /dev/null and b/test/prepare/vectors/byte0032.dat differ
diff --git a/test/prepare/vectors/byte0033.dat b/test/prepare/vectors/byte0033.dat
new file mode 100644
index 0000000..396509b
Binary files /dev/null and b/test/prepare/vectors/byte0033.dat differ
diff --git a/test/prepare/vectors/byte0034.dat b/test/prepare/vectors/byte0034.dat
new file mode 100644
index 0000000..55c11cb
Binary files /dev/null and b/test/prepare/vectors/byte0034.dat differ
diff --git a/test/prepare/vectors/byte0035.dat b/test/prepare/vectors/byte0035.dat
new file mode 100644
index 0000000..cedccf7
Binary files /dev/null and b/test/prepare/vectors/byte0035.dat differ
diff --git a/test/prepare/vectors/byte0036.dat b/test/prepare/vectors/byte0036.dat
new file mode 100644
index 0000000..f597deb
Binary files /dev/null and b/test/prepare/vectors/byte0036.dat differ
diff --git a/test/prepare/vectors/byte0037.dat b/test/prepare/vectors/byte0037.dat
new file mode 100644
index 0000000..6bcc7eb
Binary files /dev/null and b/test/prepare/vectors/byte0037.dat differ
diff --git a/test/prepare/vectors/byte0038.dat b/test/prepare/vectors/byte0038.dat
new file mode 100644
index 0000000..48e731d
Binary files /dev/null and b/test/prepare/vectors/byte0038.dat differ
diff --git a/test/prepare/vectors/byte0039.dat b/test/prepare/vectors/byte0039.dat
new file mode 100644
index 0000000..5ebdf8c
Binary files /dev/null and b/test/prepare/vectors/byte0039.dat differ
diff --git a/test/prepare/vectors/byte0040.dat b/test/prepare/vectors/byte0040.dat
new file mode 100644
index 0000000..4ee0307
Binary files /dev/null and b/test/prepare/vectors/byte0040.dat differ
diff --git a/test/prepare/vectors/byte0041.dat b/test/prepare/vectors/byte0041.dat
new file mode 100644
index 0000000..1f7c825
Binary files /dev/null and b/test/prepare/vectors/byte0041.dat differ
diff --git a/test/prepare/vectors/byte0042.dat b/test/prepare/vectors/byte0042.dat
new file mode 100644
index 0000000..9c9044f
Binary files /dev/null and b/test/prepare/vectors/byte0042.dat differ
diff --git a/test/prepare/vectors/byte0043.dat b/test/prepare/vectors/byte0043.dat
new file mode 100644
index 0000000..5721861
Binary files /dev/null and b/test/prepare/vectors/byte0043.dat differ
diff --git a/test/prepare/vectors/byte0044.dat b/test/prepare/vectors/byte0044.dat
new file mode 100644
index 0000000..963f6a8
Binary files /dev/null and b/test/prepare/vectors/byte0044.dat differ
diff --git a/test/prepare/vectors/byte0045.dat b/test/prepare/vectors/byte0045.dat
new file mode 100644
index 0000000..8bd9b41
Binary files /dev/null and b/test/prepare/vectors/byte0045.dat differ
diff --git a/test/prepare/vectors/byte0046.dat b/test/prepare/vectors/byte0046.dat
new file mode 100644
index 0000000..47ecdd2
Binary files /dev/null and b/test/prepare/vectors/byte0046.dat differ
diff --git a/test/prepare/vectors/byte0047.dat b/test/prepare/vectors/byte0047.dat
new file mode 100644
index 0000000..9d1116f
Binary files /dev/null and b/test/prepare/vectors/byte0047.dat differ
diff --git a/test/prepare/vectors/byte0048.dat b/test/prepare/vectors/byte0048.dat
new file mode 100644
index 0000000..13f3bd7
Binary files /dev/null and b/test/prepare/vectors/byte0048.dat differ
diff --git a/test/prepare/vectors/byte0049.dat b/test/prepare/vectors/byte0049.dat
new file mode 100644
index 0000000..5d6a89d
Binary files /dev/null and b/test/prepare/vectors/byte0049.dat differ
diff --git a/test/prepare/vectors/byte0050.dat b/test/prepare/vectors/byte0050.dat
new file mode 100644
index 0000000..1dcf3ab
Binary files /dev/null and b/test/prepare/vectors/byte0050.dat differ
diff --git a/test/prepare/vectors/byte0051.dat b/test/prepare/vectors/byte0051.dat
new file mode 100644
index 0000000..f9c5499
Binary files /dev/null and b/test/prepare/vectors/byte0051.dat differ
diff --git a/test/prepare/vectors/byte0052.dat b/test/prepare/vectors/byte0052.dat
new file mode 100644
index 0000000..31af0d4
Binary files /dev/null and b/test/prepare/vectors/byte0052.dat differ
diff --git a/test/prepare/vectors/byte0053.dat b/test/prepare/vectors/byte0053.dat
new file mode 100644
index 0000000..79876b8
Binary files /dev/null and b/test/prepare/vectors/byte0053.dat differ
diff --git a/test/prepare/vectors/byte0054.dat b/test/prepare/vectors/byte0054.dat
new file mode 100644
index 0000000..89373a1
Binary files /dev/null and b/test/prepare/vectors/byte0054.dat differ
diff --git a/test/prepare/vectors/byte0055.dat b/test/prepare/vectors/byte0055.dat
new file mode 100644
index 0000000..fb225eb
Binary files /dev/null and b/test/prepare/vectors/byte0055.dat differ
diff --git a/test/prepare/vectors/byte0056.dat b/test/prepare/vectors/byte0056.dat
new file mode 100644
index 0000000..d0bee1c
Binary files /dev/null and b/test/prepare/vectors/byte0056.dat differ
diff --git a/test/prepare/vectors/byte0057.dat b/test/prepare/vectors/byte0057.dat
new file mode 100644
index 0000000..e13d4de
Binary files /dev/null and b/test/prepare/vectors/byte0057.dat differ
diff --git a/test/prepare/vectors/byte0058.dat b/test/prepare/vectors/byte0058.dat
new file mode 100644
index 0000000..011f9fc
Binary files /dev/null and b/test/prepare/vectors/byte0058.dat differ
diff --git a/test/prepare/vectors/byte0059.dat b/test/prepare/vectors/byte0059.dat
new file mode 100644
index 0000000..372e461
Binary files /dev/null and b/test/prepare/vectors/byte0059.dat differ
diff --git a/test/prepare/vectors/byte0060.dat b/test/prepare/vectors/byte0060.dat
new file mode 100644
index 0000000..48cce5b
Binary files /dev/null and b/test/prepare/vectors/byte0060.dat differ
diff --git a/test/prepare/vectors/byte0061.dat b/test/prepare/vectors/byte0061.dat
new file mode 100644
index 0000000..814eed2
Binary files /dev/null and b/test/prepare/vectors/byte0061.dat differ
diff --git a/test/prepare/vectors/byte0062.dat b/test/prepare/vectors/byte0062.dat
new file mode 100644
index 0000000..039ee6a
Binary files /dev/null and b/test/prepare/vectors/byte0062.dat differ
diff --git a/test/prepare/vectors/byte0063.dat b/test/prepare/vectors/byte0063.dat
new file mode 100644
index 0000000..a7f3d9c
Binary files /dev/null and b/test/prepare/vectors/byte0063.dat differ
diff --git a/test/prepare/vectors/byte0064.dat b/test/prepare/vectors/byte0064.dat
new file mode 100644
index 0000000..5f46b83
Binary files /dev/null and b/test/prepare/vectors/byte0064.dat differ
diff --git a/test/prepare/vectors/byte0065.dat b/test/prepare/vectors/byte0065.dat
new file mode 100644
index 0000000..1bf5eda
Binary files /dev/null and b/test/prepare/vectors/byte0065.dat differ
diff --git a/test/prepare/vectors/byte0066.dat b/test/prepare/vectors/byte0066.dat
new file mode 100644
index 0000000..0d9dda4
Binary files /dev/null and b/test/prepare/vectors/byte0066.dat differ
diff --git a/test/prepare/vectors/byte0067.dat b/test/prepare/vectors/byte0067.dat
new file mode 100644
index 0000000..7b2b995
Binary files /dev/null and b/test/prepare/vectors/byte0067.dat differ
diff --git a/test/prepare/vectors/byte0068.dat b/test/prepare/vectors/byte0068.dat
new file mode 100644
index 0000000..2c67326
Binary files /dev/null and b/test/prepare/vectors/byte0068.dat differ
diff --git a/test/prepare/vectors/byte0069.dat b/test/prepare/vectors/byte0069.dat
new file mode 100644
index 0000000..5609f91
Binary files /dev/null and b/test/prepare/vectors/byte0069.dat differ
diff --git a/test/prepare/vectors/byte0070.dat b/test/prepare/vectors/byte0070.dat
new file mode 100644
index 0000000..13620c8
Binary files /dev/null and b/test/prepare/vectors/byte0070.dat differ
diff --git a/test/prepare/vectors/byte0071.dat b/test/prepare/vectors/byte0071.dat
new file mode 100644
index 0000000..0644e65
Binary files /dev/null and b/test/prepare/vectors/byte0071.dat differ
diff --git a/test/prepare/vectors/byte0072.dat b/test/prepare/vectors/byte0072.dat
new file mode 100644
index 0000000..6fa76cc
Binary files /dev/null and b/test/prepare/vectors/byte0072.dat differ
diff --git a/test/prepare/vectors/byte0073.dat b/test/prepare/vectors/byte0073.dat
new file mode 100644
index 0000000..2a7b170
Binary files /dev/null and b/test/prepare/vectors/byte0073.dat differ
diff --git a/test/prepare/vectors/byte0074.dat b/test/prepare/vectors/byte0074.dat
new file mode 100644
index 0000000..516f7e2
Binary files /dev/null and b/test/prepare/vectors/byte0074.dat differ
diff --git a/test/prepare/vectors/byte0075.dat b/test/prepare/vectors/byte0075.dat
new file mode 100644
index 0000000..fda8bbc
Binary files /dev/null and b/test/prepare/vectors/byte0075.dat differ
diff --git a/test/prepare/vectors/byte0076.dat b/test/prepare/vectors/byte0076.dat
new file mode 100644
index 0000000..c311f89
Binary files /dev/null and b/test/prepare/vectors/byte0076.dat differ
diff --git a/test/prepare/vectors/byte0077.dat b/test/prepare/vectors/byte0077.dat
new file mode 100644
index 0000000..88a1675
Binary files /dev/null and b/test/prepare/vectors/byte0077.dat differ
diff --git a/test/prepare/vectors/byte0078.dat b/test/prepare/vectors/byte0078.dat
new file mode 100644
index 0000000..bc59710
Binary files /dev/null and b/test/prepare/vectors/byte0078.dat differ
diff --git a/test/prepare/vectors/byte0079.dat b/test/prepare/vectors/byte0079.dat
new file mode 100644
index 0000000..bb83930
Binary files /dev/null and b/test/prepare/vectors/byte0079.dat differ
diff --git a/test/prepare/vectors/byte0080.dat b/test/prepare/vectors/byte0080.dat
new file mode 100644
index 0000000..cd8620b
Binary files /dev/null and b/test/prepare/vectors/byte0080.dat differ
diff --git a/test/prepare/vectors/byte0081.dat b/test/prepare/vectors/byte0081.dat
new file mode 100644
index 0000000..3ec8953
Binary files /dev/null and b/test/prepare/vectors/byte0081.dat differ
diff --git a/test/prepare/vectors/byte0082.dat b/test/prepare/vectors/byte0082.dat
new file mode 100644
index 0000000..a7f1edc
Binary files /dev/null and b/test/prepare/vectors/byte0082.dat differ
diff --git a/test/prepare/vectors/byte0083.dat b/test/prepare/vectors/byte0083.dat
new file mode 100644
index 0000000..7ab631c
Binary files /dev/null and b/test/prepare/vectors/byte0083.dat differ
diff --git a/test/prepare/vectors/byte0084.dat b/test/prepare/vectors/byte0084.dat
new file mode 100644
index 0000000..32ba3e3
Binary files /dev/null and b/test/prepare/vectors/byte0084.dat differ
diff --git a/test/prepare/vectors/byte0085.dat b/test/prepare/vectors/byte0085.dat
new file mode 100644
index 0000000..e2f3c4b
Binary files /dev/null and b/test/prepare/vectors/byte0085.dat differ
diff --git a/test/prepare/vectors/byte0086.dat b/test/prepare/vectors/byte0086.dat
new file mode 100644
index 0000000..b2093aa
Binary files /dev/null and b/test/prepare/vectors/byte0086.dat differ
diff --git a/test/prepare/vectors/byte0087.dat b/test/prepare/vectors/byte0087.dat
new file mode 100644
index 0000000..c289f0d
Binary files /dev/null and b/test/prepare/vectors/byte0087.dat differ
diff --git a/test/prepare/vectors/byte0088.dat b/test/prepare/vectors/byte0088.dat
new file mode 100644
index 0000000..839cc69
Binary files /dev/null and b/test/prepare/vectors/byte0088.dat differ
diff --git a/test/prepare/vectors/byte0089.dat b/test/prepare/vectors/byte0089.dat
new file mode 100644
index 0000000..990cc8e
Binary files /dev/null and b/test/prepare/vectors/byte0089.dat differ
diff --git a/test/prepare/vectors/byte0090.dat b/test/prepare/vectors/byte0090.dat
new file mode 100644
index 0000000..689939c
Binary files /dev/null and b/test/prepare/vectors/byte0090.dat differ
diff --git a/test/prepare/vectors/byte0091.dat b/test/prepare/vectors/byte0091.dat
new file mode 100644
index 0000000..47dd878
Binary files /dev/null and b/test/prepare/vectors/byte0091.dat differ
diff --git a/test/prepare/vectors/byte0092.dat b/test/prepare/vectors/byte0092.dat
new file mode 100644
index 0000000..cd092f6
Binary files /dev/null and b/test/prepare/vectors/byte0092.dat differ
diff --git a/test/prepare/vectors/byte0093.dat b/test/prepare/vectors/byte0093.dat
new file mode 100644
index 0000000..0c4a5eb
Binary files /dev/null and b/test/prepare/vectors/byte0093.dat differ
diff --git a/test/prepare/vectors/byte0094.dat b/test/prepare/vectors/byte0094.dat
new file mode 100644
index 0000000..650f3d0
Binary files /dev/null and b/test/prepare/vectors/byte0094.dat differ
diff --git a/test/prepare/vectors/byte0095.dat b/test/prepare/vectors/byte0095.dat
new file mode 100644
index 0000000..37723e4
Binary files /dev/null and b/test/prepare/vectors/byte0095.dat differ
diff --git a/test/prepare/vectors/byte0096.dat b/test/prepare/vectors/byte0096.dat
new file mode 100644
index 0000000..d200428
Binary files /dev/null and b/test/prepare/vectors/byte0096.dat differ
diff --git a/test/prepare/vectors/byte0097.dat b/test/prepare/vectors/byte0097.dat
new file mode 100644
index 0000000..11cec37
Binary files /dev/null and b/test/prepare/vectors/byte0097.dat differ
diff --git a/test/prepare/vectors/byte0098.dat b/test/prepare/vectors/byte0098.dat
new file mode 100644
index 0000000..33d8657
Binary files /dev/null and b/test/prepare/vectors/byte0098.dat differ
diff --git a/test/prepare/vectors/byte0099.dat b/test/prepare/vectors/byte0099.dat
new file mode 100644
index 0000000..4a33315
Binary files /dev/null and b/test/prepare/vectors/byte0099.dat differ
diff --git a/test/prepare/vectors/byte0100.dat b/test/prepare/vectors/byte0100.dat
new file mode 100644
index 0000000..12b6aa4
Binary files /dev/null and b/test/prepare/vectors/byte0100.dat differ
diff --git a/test/prepare/vectors/byte0101.dat b/test/prepare/vectors/byte0101.dat
new file mode 100644
index 0000000..620966b
Binary files /dev/null and b/test/prepare/vectors/byte0101.dat differ
diff --git a/test/prepare/vectors/byte0102.dat b/test/prepare/vectors/byte0102.dat
new file mode 100644
index 0000000..12de2a5
Binary files /dev/null and b/test/prepare/vectors/byte0102.dat differ
diff --git a/test/prepare/vectors/byte0103.dat b/test/prepare/vectors/byte0103.dat
new file mode 100644
index 0000000..f1f74fb
Binary files /dev/null and b/test/prepare/vectors/byte0103.dat differ
diff --git a/test/prepare/vectors/byte0104.dat b/test/prepare/vectors/byte0104.dat
new file mode 100644
index 0000000..1a7557f
Binary files /dev/null and b/test/prepare/vectors/byte0104.dat differ
diff --git a/test/prepare/vectors/byte0105.dat b/test/prepare/vectors/byte0105.dat
new file mode 100644
index 0000000..c021ab7
Binary files /dev/null and b/test/prepare/vectors/byte0105.dat differ
diff --git a/test/prepare/vectors/byte0106.dat b/test/prepare/vectors/byte0106.dat
new file mode 100644
index 0000000..db0552b
Binary files /dev/null and b/test/prepare/vectors/byte0106.dat differ
diff --git a/test/prepare/vectors/byte0107.dat b/test/prepare/vectors/byte0107.dat
new file mode 100644
index 0000000..f656eb3
Binary files /dev/null and b/test/prepare/vectors/byte0107.dat differ
diff --git a/test/prepare/vectors/byte0108.dat b/test/prepare/vectors/byte0108.dat
new file mode 100644
index 0000000..cb49945
Binary files /dev/null and b/test/prepare/vectors/byte0108.dat differ
diff --git a/test/prepare/vectors/byte0109.dat b/test/prepare/vectors/byte0109.dat
new file mode 100644
index 0000000..90bd802
Binary files /dev/null and b/test/prepare/vectors/byte0109.dat differ
diff --git a/test/prepare/vectors/byte0110.dat b/test/prepare/vectors/byte0110.dat
new file mode 100644
index 0000000..e114f9e
Binary files /dev/null and b/test/prepare/vectors/byte0110.dat differ
diff --git a/test/prepare/vectors/byte0111.dat b/test/prepare/vectors/byte0111.dat
new file mode 100644
index 0000000..17ee790
Binary files /dev/null and b/test/prepare/vectors/byte0111.dat differ
diff --git a/test/prepare/vectors/byte0112.dat b/test/prepare/vectors/byte0112.dat
new file mode 100644
index 0000000..5b5507e
Binary files /dev/null and b/test/prepare/vectors/byte0112.dat differ
diff --git a/test/prepare/vectors/byte0113.dat b/test/prepare/vectors/byte0113.dat
new file mode 100644
index 0000000..31bcd32
Binary files /dev/null and b/test/prepare/vectors/byte0113.dat differ
diff --git a/test/prepare/vectors/byte0114.dat b/test/prepare/vectors/byte0114.dat
new file mode 100644
index 0000000..14cf88e
Binary files /dev/null and b/test/prepare/vectors/byte0114.dat differ
diff --git a/test/prepare/vectors/byte0115.dat b/test/prepare/vectors/byte0115.dat
new file mode 100644
index 0000000..939a09c
Binary files /dev/null and b/test/prepare/vectors/byte0115.dat differ
diff --git a/test/prepare/vectors/byte0116.dat b/test/prepare/vectors/byte0116.dat
new file mode 100644
index 0000000..defa29c
Binary files /dev/null and b/test/prepare/vectors/byte0116.dat differ
diff --git a/test/prepare/vectors/byte0117.dat b/test/prepare/vectors/byte0117.dat
new file mode 100644
index 0000000..68c1e9c
Binary files /dev/null and b/test/prepare/vectors/byte0117.dat differ
diff --git a/test/prepare/vectors/byte0118.dat b/test/prepare/vectors/byte0118.dat
new file mode 100644
index 0000000..83d18dc
Binary files /dev/null and b/test/prepare/vectors/byte0118.dat differ
diff --git a/test/prepare/vectors/byte0119.dat b/test/prepare/vectors/byte0119.dat
new file mode 100644
index 0000000..d697b62
Binary files /dev/null and b/test/prepare/vectors/byte0119.dat differ
diff --git a/test/prepare/vectors/byte0120.dat b/test/prepare/vectors/byte0120.dat
new file mode 100644
index 0000000..b6bdfb8
Binary files /dev/null and b/test/prepare/vectors/byte0120.dat differ
diff --git a/test/prepare/vectors/byte0121.dat b/test/prepare/vectors/byte0121.dat
new file mode 100644
index 0000000..c8c5a60
Binary files /dev/null and b/test/prepare/vectors/byte0121.dat differ
diff --git a/test/prepare/vectors/byte0122.dat b/test/prepare/vectors/byte0122.dat
new file mode 100644
index 0000000..d8cae0d
Binary files /dev/null and b/test/prepare/vectors/byte0122.dat differ
diff --git a/test/prepare/vectors/byte0123.dat b/test/prepare/vectors/byte0123.dat
new file mode 100644
index 0000000..1c41f96
Binary files /dev/null and b/test/prepare/vectors/byte0123.dat differ
diff --git a/test/prepare/vectors/byte0124.dat b/test/prepare/vectors/byte0124.dat
new file mode 100644
index 0000000..7821c66
Binary files /dev/null and b/test/prepare/vectors/byte0124.dat differ
diff --git a/test/prepare/vectors/byte0125.dat b/test/prepare/vectors/byte0125.dat
new file mode 100644
index 0000000..8a426aa
Binary files /dev/null and b/test/prepare/vectors/byte0125.dat differ
diff --git a/test/prepare/vectors/byte0126.dat b/test/prepare/vectors/byte0126.dat
new file mode 100644
index 0000000..76ff47a
Binary files /dev/null and b/test/prepare/vectors/byte0126.dat differ
diff --git a/test/prepare/vectors/byte0127.dat b/test/prepare/vectors/byte0127.dat
new file mode 100644
index 0000000..77a0481
Binary files /dev/null and b/test/prepare/vectors/byte0127.dat differ
diff --git a/test/prepare/vectors/byte0128.dat b/test/prepare/vectors/byte0128.dat
new file mode 100644
index 0000000..6227f74
Binary files /dev/null and b/test/prepare/vectors/byte0128.dat differ
diff --git a/test/prepare/vectors/byte0129.dat b/test/prepare/vectors/byte0129.dat
new file mode 100644
index 0000000..4ce3fd4
Binary files /dev/null and b/test/prepare/vectors/byte0129.dat differ
diff --git a/test/prepare/vectors/byte0130.dat b/test/prepare/vectors/byte0130.dat
new file mode 100644
index 0000000..c413d09
Binary files /dev/null and b/test/prepare/vectors/byte0130.dat differ
diff --git a/test/prepare/vectors/byte0131.dat b/test/prepare/vectors/byte0131.dat
new file mode 100644
index 0000000..8f74a10
Binary files /dev/null and b/test/prepare/vectors/byte0131.dat differ
diff --git a/test/prepare/vectors/byte0132.dat b/test/prepare/vectors/byte0132.dat
new file mode 100644
index 0000000..34f4858
Binary files /dev/null and b/test/prepare/vectors/byte0132.dat differ
diff --git a/test/prepare/vectors/byte0133.dat b/test/prepare/vectors/byte0133.dat
new file mode 100644
index 0000000..a033139
Binary files /dev/null and b/test/prepare/vectors/byte0133.dat differ
diff --git a/test/prepare/vectors/byte0134.dat b/test/prepare/vectors/byte0134.dat
new file mode 100644
index 0000000..66cd42d
Binary files /dev/null and b/test/prepare/vectors/byte0134.dat differ
diff --git a/test/prepare/vectors/byte0135.dat b/test/prepare/vectors/byte0135.dat
new file mode 100644
index 0000000..66758ce
Binary files /dev/null and b/test/prepare/vectors/byte0135.dat differ
diff --git a/test/prepare/vectors/byte0136.dat b/test/prepare/vectors/byte0136.dat
new file mode 100644
index 0000000..6e7cddc
Binary files /dev/null and b/test/prepare/vectors/byte0136.dat differ
diff --git a/test/prepare/vectors/byte0137.dat b/test/prepare/vectors/byte0137.dat
new file mode 100644
index 0000000..18dffd1
Binary files /dev/null and b/test/prepare/vectors/byte0137.dat differ
diff --git a/test/prepare/vectors/byte0138.dat b/test/prepare/vectors/byte0138.dat
new file mode 100644
index 0000000..4079790
Binary files /dev/null and b/test/prepare/vectors/byte0138.dat differ
diff --git a/test/prepare/vectors/byte0139.dat b/test/prepare/vectors/byte0139.dat
new file mode 100644
index 0000000..f076de6
Binary files /dev/null and b/test/prepare/vectors/byte0139.dat differ
diff --git a/test/prepare/vectors/byte0140.dat b/test/prepare/vectors/byte0140.dat
new file mode 100644
index 0000000..07b7bf9
Binary files /dev/null and b/test/prepare/vectors/byte0140.dat differ
diff --git a/test/prepare/vectors/byte0141.dat b/test/prepare/vectors/byte0141.dat
new file mode 100644
index 0000000..22a8ca0
Binary files /dev/null and b/test/prepare/vectors/byte0141.dat differ
diff --git a/test/prepare/vectors/byte0142.dat b/test/prepare/vectors/byte0142.dat
new file mode 100644
index 0000000..fa95449
Binary files /dev/null and b/test/prepare/vectors/byte0142.dat differ
diff --git a/test/prepare/vectors/byte0143.dat b/test/prepare/vectors/byte0143.dat
new file mode 100644
index 0000000..907d2de
Binary files /dev/null and b/test/prepare/vectors/byte0143.dat differ
diff --git a/test/prepare/vectors/byte0144.dat b/test/prepare/vectors/byte0144.dat
new file mode 100644
index 0000000..7f4c091
Binary files /dev/null and b/test/prepare/vectors/byte0144.dat differ
diff --git a/test/prepare/vectors/byte0145.dat b/test/prepare/vectors/byte0145.dat
new file mode 100644
index 0000000..b20f4ab
Binary files /dev/null and b/test/prepare/vectors/byte0145.dat differ
diff --git a/test/prepare/vectors/byte0146.dat b/test/prepare/vectors/byte0146.dat
new file mode 100644
index 0000000..c04174b
Binary files /dev/null and b/test/prepare/vectors/byte0146.dat differ
diff --git a/test/prepare/vectors/byte0147.dat b/test/prepare/vectors/byte0147.dat
new file mode 100644
index 0000000..3c84c27
Binary files /dev/null and b/test/prepare/vectors/byte0147.dat differ
diff --git a/test/prepare/vectors/byte0148.dat b/test/prepare/vectors/byte0148.dat
new file mode 100644
index 0000000..e11058c
Binary files /dev/null and b/test/prepare/vectors/byte0148.dat differ
diff --git a/test/prepare/vectors/byte0149.dat b/test/prepare/vectors/byte0149.dat
new file mode 100644
index 0000000..a058ae2
Binary files /dev/null and b/test/prepare/vectors/byte0149.dat differ
diff --git a/test/prepare/vectors/byte0150.dat b/test/prepare/vectors/byte0150.dat
new file mode 100644
index 0000000..64c1231
Binary files /dev/null and b/test/prepare/vectors/byte0150.dat differ
diff --git a/test/prepare/vectors/byte0151.dat b/test/prepare/vectors/byte0151.dat
new file mode 100644
index 0000000..58b85ad
Binary files /dev/null and b/test/prepare/vectors/byte0151.dat differ
diff --git a/test/prepare/vectors/byte0152.dat b/test/prepare/vectors/byte0152.dat
new file mode 100644
index 0000000..4db244f
Binary files /dev/null and b/test/prepare/vectors/byte0152.dat differ
diff --git a/test/prepare/vectors/byte0153.dat b/test/prepare/vectors/byte0153.dat
new file mode 100644
index 0000000..bc27593
Binary files /dev/null and b/test/prepare/vectors/byte0153.dat differ
diff --git a/test/prepare/vectors/byte0154.dat b/test/prepare/vectors/byte0154.dat
new file mode 100644
index 0000000..be5e0a4
Binary files /dev/null and b/test/prepare/vectors/byte0154.dat differ
diff --git a/test/prepare/vectors/byte0155.dat b/test/prepare/vectors/byte0155.dat
new file mode 100644
index 0000000..eaf5f96
Binary files /dev/null and b/test/prepare/vectors/byte0155.dat differ
diff --git a/test/prepare/vectors/byte0156.dat b/test/prepare/vectors/byte0156.dat
new file mode 100644
index 0000000..8ac675f
Binary files /dev/null and b/test/prepare/vectors/byte0156.dat differ
diff --git a/test/prepare/vectors/byte0157.dat b/test/prepare/vectors/byte0157.dat
new file mode 100644
index 0000000..c742c47
Binary files /dev/null and b/test/prepare/vectors/byte0157.dat differ
diff --git a/test/prepare/vectors/byte0158.dat b/test/prepare/vectors/byte0158.dat
new file mode 100644
index 0000000..2998df4
Binary files /dev/null and b/test/prepare/vectors/byte0158.dat differ
diff --git a/test/prepare/vectors/byte0159.dat b/test/prepare/vectors/byte0159.dat
new file mode 100644
index 0000000..87d68a4
Binary files /dev/null and b/test/prepare/vectors/byte0159.dat differ
diff --git a/test/prepare/vectors/byte0160.dat b/test/prepare/vectors/byte0160.dat
new file mode 100644
index 0000000..668a383
Binary files /dev/null and b/test/prepare/vectors/byte0160.dat differ
diff --git a/test/prepare/vectors/byte0161.dat b/test/prepare/vectors/byte0161.dat
new file mode 100644
index 0000000..22968e0
Binary files /dev/null and b/test/prepare/vectors/byte0161.dat differ
diff --git a/test/prepare/vectors/byte0162.dat b/test/prepare/vectors/byte0162.dat
new file mode 100644
index 0000000..cca9a81
Binary files /dev/null and b/test/prepare/vectors/byte0162.dat differ
diff --git a/test/prepare/vectors/byte0163.dat b/test/prepare/vectors/byte0163.dat
new file mode 100644
index 0000000..2f62067
Binary files /dev/null and b/test/prepare/vectors/byte0163.dat differ
diff --git a/test/prepare/vectors/byte0164.dat b/test/prepare/vectors/byte0164.dat
new file mode 100644
index 0000000..a7f5981
Binary files /dev/null and b/test/prepare/vectors/byte0164.dat differ
diff --git a/test/prepare/vectors/byte0165.dat b/test/prepare/vectors/byte0165.dat
new file mode 100644
index 0000000..eb72edb
Binary files /dev/null and b/test/prepare/vectors/byte0165.dat differ
diff --git a/test/prepare/vectors/byte0166.dat b/test/prepare/vectors/byte0166.dat
new file mode 100644
index 0000000..c6baf33
Binary files /dev/null and b/test/prepare/vectors/byte0166.dat differ
diff --git a/test/prepare/vectors/byte0167.dat b/test/prepare/vectors/byte0167.dat
new file mode 100644
index 0000000..b10d746
Binary files /dev/null and b/test/prepare/vectors/byte0167.dat differ
diff --git a/test/prepare/vectors/byte0168.dat b/test/prepare/vectors/byte0168.dat
new file mode 100644
index 0000000..1029311
Binary files /dev/null and b/test/prepare/vectors/byte0168.dat differ
diff --git a/test/prepare/vectors/byte0169.dat b/test/prepare/vectors/byte0169.dat
new file mode 100644
index 0000000..caf4906
Binary files /dev/null and b/test/prepare/vectors/byte0169.dat differ
diff --git a/test/prepare/vectors/byte0170.dat b/test/prepare/vectors/byte0170.dat
new file mode 100644
index 0000000..40beda0
Binary files /dev/null and b/test/prepare/vectors/byte0170.dat differ
diff --git a/test/prepare/vectors/byte0171.dat b/test/prepare/vectors/byte0171.dat
new file mode 100644
index 0000000..a3b0686
Binary files /dev/null and b/test/prepare/vectors/byte0171.dat differ
diff --git a/test/prepare/vectors/byte0172.dat b/test/prepare/vectors/byte0172.dat
new file mode 100644
index 0000000..d10b184
Binary files /dev/null and b/test/prepare/vectors/byte0172.dat differ
diff --git a/test/prepare/vectors/byte0173.dat b/test/prepare/vectors/byte0173.dat
new file mode 100644
index 0000000..b9d784e
Binary files /dev/null and b/test/prepare/vectors/byte0173.dat differ
diff --git a/test/prepare/vectors/byte0174.dat b/test/prepare/vectors/byte0174.dat
new file mode 100644
index 0000000..0754a29
Binary files /dev/null and b/test/prepare/vectors/byte0174.dat differ
diff --git a/test/prepare/vectors/byte0175.dat b/test/prepare/vectors/byte0175.dat
new file mode 100644
index 0000000..5c37de2
Binary files /dev/null and b/test/prepare/vectors/byte0175.dat differ
diff --git a/test/prepare/vectors/byte0176.dat b/test/prepare/vectors/byte0176.dat
new file mode 100644
index 0000000..a189735
Binary files /dev/null and b/test/prepare/vectors/byte0176.dat differ
diff --git a/test/prepare/vectors/byte0177.dat b/test/prepare/vectors/byte0177.dat
new file mode 100644
index 0000000..bbb0311
Binary files /dev/null and b/test/prepare/vectors/byte0177.dat differ
diff --git a/test/prepare/vectors/byte0178.dat b/test/prepare/vectors/byte0178.dat
new file mode 100644
index 0000000..01ab4f4
Binary files /dev/null and b/test/prepare/vectors/byte0178.dat differ
diff --git a/test/prepare/vectors/byte0179.dat b/test/prepare/vectors/byte0179.dat
new file mode 100644
index 0000000..baa00b6
Binary files /dev/null and b/test/prepare/vectors/byte0179.dat differ
diff --git a/test/prepare/vectors/byte0180.dat b/test/prepare/vectors/byte0180.dat
new file mode 100644
index 0000000..157703c
Binary files /dev/null and b/test/prepare/vectors/byte0180.dat differ
diff --git a/test/prepare/vectors/byte0181.dat b/test/prepare/vectors/byte0181.dat
new file mode 100644
index 0000000..2c08362
Binary files /dev/null and b/test/prepare/vectors/byte0181.dat differ
diff --git a/test/prepare/vectors/byte0182.dat b/test/prepare/vectors/byte0182.dat
new file mode 100644
index 0000000..935f574
Binary files /dev/null and b/test/prepare/vectors/byte0182.dat differ
diff --git a/test/prepare/vectors/byte0183.dat b/test/prepare/vectors/byte0183.dat
new file mode 100644
index 0000000..7f76afe
Binary files /dev/null and b/test/prepare/vectors/byte0183.dat differ
diff --git a/test/prepare/vectors/byte0184.dat b/test/prepare/vectors/byte0184.dat
new file mode 100644
index 0000000..2ccd7d4
Binary files /dev/null and b/test/prepare/vectors/byte0184.dat differ
diff --git a/test/prepare/vectors/byte0185.dat b/test/prepare/vectors/byte0185.dat
new file mode 100644
index 0000000..e6f9444
Binary files /dev/null and b/test/prepare/vectors/byte0185.dat differ
diff --git a/test/prepare/vectors/byte0186.dat b/test/prepare/vectors/byte0186.dat
new file mode 100644
index 0000000..f89a548
Binary files /dev/null and b/test/prepare/vectors/byte0186.dat differ
diff --git a/test/prepare/vectors/byte0187.dat b/test/prepare/vectors/byte0187.dat
new file mode 100644
index 0000000..8b2326d
Binary files /dev/null and b/test/prepare/vectors/byte0187.dat differ
diff --git a/test/prepare/vectors/byte0188.dat b/test/prepare/vectors/byte0188.dat
new file mode 100644
index 0000000..be3ef38
Binary files /dev/null and b/test/prepare/vectors/byte0188.dat differ
diff --git a/test/prepare/vectors/byte0189.dat b/test/prepare/vectors/byte0189.dat
new file mode 100644
index 0000000..01061ce
Binary files /dev/null and b/test/prepare/vectors/byte0189.dat differ
diff --git a/test/prepare/vectors/byte0190.dat b/test/prepare/vectors/byte0190.dat
new file mode 100644
index 0000000..5df1d2e
Binary files /dev/null and b/test/prepare/vectors/byte0190.dat differ
diff --git a/test/prepare/vectors/byte0191.dat b/test/prepare/vectors/byte0191.dat
new file mode 100644
index 0000000..9b23e57
Binary files /dev/null and b/test/prepare/vectors/byte0191.dat differ
diff --git a/test/prepare/vectors/byte0192.dat b/test/prepare/vectors/byte0192.dat
new file mode 100644
index 0000000..3e1b730
Binary files /dev/null and b/test/prepare/vectors/byte0192.dat differ
diff --git a/test/prepare/vectors/byte0193.dat b/test/prepare/vectors/byte0193.dat
new file mode 100644
index 0000000..1c53876
Binary files /dev/null and b/test/prepare/vectors/byte0193.dat differ
diff --git a/test/prepare/vectors/byte0194.dat b/test/prepare/vectors/byte0194.dat
new file mode 100644
index 0000000..12e1e1f
Binary files /dev/null and b/test/prepare/vectors/byte0194.dat differ
diff --git a/test/prepare/vectors/byte0195.dat b/test/prepare/vectors/byte0195.dat
new file mode 100644
index 0000000..b858c0e
Binary files /dev/null and b/test/prepare/vectors/byte0195.dat differ
diff --git a/test/test.js b/test/test.js
index 25206f5..703e697 100644
--- a/test/test.js
+++ b/test/test.js
@@ -98,4 +98,3 @@ tape('hex encoding', function (t) {
   t.end()
 })
 
-
diff --git a/test/vectors.js b/test/vectors.js
new file mode 100644
index 0000000..a74962b
--- /dev/null
+++ b/test/vectors.js
@@ -0,0 +1,32 @@
+
+var vectors = require('./nist-vectors.json')
+var Sha1 = require('../')
+var tape = require('tape')
+var from = require('bops/typedarray/from')
+var hexpp = require('../hexpp')
+
+function makeTest(i, verbose) {
+  var v = vectors[i]
+  tape('NIST vector ' + i, function (t) {
+    if(verbose) {
+      console.log('VECTOR', i)
+      console.log('INPUT', v.input)
+      console.log(hexpp(from(v.input, 'base64')))
+      console.log(new Buffer(v.input, 'base64').toString('hex'))
+    }
+    var buf = from(v.input, 'base64')
+    t.equal(new Sha1().update(buf).digest('hex'), v.sha1)
+    t.end()
+  })
+  
+}
+
+if(process.argv[2])
+  makeTest(parseInt(process.argv[2]), true)
+else
+  vectors.forEach(function (v, i) {
+    makeTest(i)
+  })
+
+
+

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-javascript/node-sha.js.git



More information about the Pkg-javascript-commits mailing list