Skip to content

Latest commit

 

History

History
254 lines (232 loc) · 26.3 KB

bignum-tests.md

File metadata and controls

254 lines (232 loc) · 26.3 KB

Input specification.

We assume the last 3 bytes of the binary input from the fuzzer to be the length of the text.

E.g. assume the following binary input string from the fuzzer (hexadecimal form):

2B2B2B2B000080002B2B2B2B7208690000040000 

It is then divided into two parts:

  1. text input: 2B2B2B2B000080002B2B2B2B7208690000
  2. length: 040000 ==> length of input string is 4 bytes

Test Augmentation (TA):

We generated 1 random binary string for each run, and then, we placed the length of that string to the end.

1. Functional test sets

a. AFL test set

functional = "\
2B2B2B2B000080002B2B2B2B7208690000040000 \
00000000000000000000104500000300F0FF00000000000076FF200400020000 \
B8C3047B0000FF00007F1B000000000A00040000"

expected = ["2B2B2B2B", 
"0", 
"B8C3047B"] 

b. AFL-TA test set

functional = "\
D4CC351BD6CE46455A82C0DC5CAB0791305A6175D2FD8F9F443FE8D8BBEEA990BADFAB91240000 \
D4CC351BD6CE46455A82C0DC5CAB0791305A6175D2FD8F9F443FE8D8BBEEA990BADFAB230000 \
3232321432323232323232323232323232323232323232323232012E000000 \
E6E2BEF8463CC77C09ADB492BC71B4CBEBF0B86BF36B20809857A3771286C1F86880F0AEBCB82AC565DE5821500CEC3BFDA4A6F010C670A81E13203B0000 \
EEFFB91515751C990A1349000000FE00040000 \
BFF871FC60C09416FB99374BDBD5A43AA4BC3CA18A262D85E7DB0825F9BB59B9B3CAB5138A492A86E261D1BE3675F8DA31347CBB5AA94141380000 \
A6E671FC60640016FBFB2A2A2A2A2A2A2A2A2A2A2A2A2A2A19FF7FD5C30F0000 \
BFF8400060FA99374BDBD5860F00F8E803000099374BDBD5A40F000000 \
D9F87EFC60C09C16FB00E6FB00E6FFFFFFFFF2C09C16FB00D202002F64D5A460C09C16F000D20200040000 \
F87119E803C09414FB996F64DBD5A42B000000FC60A094000003E8374B740001000003C09414FB993745DBD5A42B000000FC60A09400000316FB99214BDBD5A400020000 \
BFF871FC60C0941694161702993ABFF8817C60C09416FB9900000000000026262626000000000000000000000000000000003A4BDBD5A41C000000FB99374BDB00007FFFBC3CA08A262D85E7FB999414FB993745DBD5A42B000000FC60A09425F9BB57B9B3CAB5138AC7C7C7C7C7C7C7C7C7C7C7C7C7D8C7492A86E261D1BE3675DADA31347CBB00FF4141380000 \
21E77DD79E2411B0BA7FD0201461F350E16423E6130C114E81181D9C7ED399A0BA1677583B8809F508290000 \
21E77DD79E2411B0BA7FD0201461F350E16423E6130C114E81181D9C7ED399A0BA1677583B88260000 \
BB7D0C61F350E16423E6130C116D81181D9C7ED399A0BA1677583B8809F508290000000000 \
0218F47FEF00D020144EF350E16423E6130C114E81E9E9E9E9181D9C7ED399A0BA1677583B00040000 \
A13B6F612746CA3D29F2702DD10C3CAA7EED7BBABAB93C0047D6B130D70C06784776D96EBCA3ABE5951B1266284E11A63B8C61F6459DF68C73A8BC4AB4C2C2FB389B69F43E15D9D430EB3A583A4D0000 \
A13B6F612746CA3D29F2702DD10C3CAA7EED7BBABAB93C0047D6B1301C0000 \
A13B6F612746523D29F2702DD10C3CAA7EED7BBABAB93C0047D6B1301C3B6F612746CA3D29F2702DD10C3CAA7EED7BBABAB93C0047D6B1301C00000000 \
A13B6F002ED6AFD6B1301C1300301C00B9B9B9B9B9B9B900FCA900FFB9B9B9B9B9B9B9B9B9B9B9B900FCA9BAB93C0047D6B1301C0C0000 \
A13B6F612D46CAA13B6F400000003D29F2702D3CAA7EED80BABAB945002DA13B90613246CABABA00010047D6B130180000 \
A13B6F612746CA3D29F2702DD10C3CAA7FED7B612746CA3D29F2702D200C3CAA7FED7BBABAB93C2DD10C3CAA7EED7BBABAB9070000 \
A13B6F612746CA3D29F2702DD10C3CAA7EFE69BA99B93C0047D6B100040000 \
00000000000000000000000000000000100000000000020000 \
A1976F61275CCA5E29F2702DD10C3C46CA5E29F2702DD10C3CAA7EA13B4C6127AA7E136ABA99B93C004AD6B10004000010ED4000463B6F61A13B4C61275CCA5E29F2702DD10C3C46CA5E29F2702DD10C3CAA7EA13B4C6127AA7E13AA7E1327AA7E136ABA99B93C0047D67BBABAB90000CA5E29F2702DD10C3CAA7EA13B6F6127AA83136ABA99B93C0047D67BBABAB9000047D6B1301C0000"

expected = ["D4CC351BD6CE46455A82C0DC5CAB0791305A6175D2FD8F9F443FE8D8BBEEA990BADFAB91", 
"D4CC351BD6CE46455A82C0DC5CAB0791305A6175D2FD8F9F443FE8D8BBEEA990BADFAB", "0", 
"E6E2BEF8463CC77C09ADB492BC71B4CBEBF0B86BF36B20809857A3771286C1F86880F0AEBCB82AC565DE5821500CEC3BFDA4A6F010C670A81E1320", 
"EEFFB915", 
"BFF871FC60C09416FB99374BDBD5A43AA4BC3CA18A262D85E7DB0825F9BB59B9B3CAB5138A492A86E261D1BE3675F8DA31347CBB5AA94141", 
"A6E671FC60640016FBFB2A2A2A2A2A", "0", "D9F87EFC", "F871", 
"BFF871FC60C0941694161702993ABFF8817C60C09416FB9900000000000026262626000000000000000000000000000000003A4BDBD5A41C", 
"21E77DD79E2411B0BA7FD0201461F350E16423E6130C114E81181D9C7ED399A0BA1677583B8809F508", 
"21E77DD79E2411B0BA7FD0201461F350E16423E6130C114E81181D9C7ED399A0BA1677583B88", "0", "0218F47F", 
"A13B6F612746CA3D29F2702DD10C3CAA7EED7BBABAB93C0047D6B130D70C06784776D96EBCA3ABE5951B1266284E11A63B8C61F6459DF68C73A8BC4AB4C2C2FB389B69F43E15D9D430EB3A583A", 
"A13B6F612746CA3D29F2702DD10C3CAA7EED7BBABAB93C0047D6B130", "0", "A13B6F002ED6AFD6B1301C13", 
"A13B6F612D46CAA13B6F400000003D29F2702D3CAA7EED80", "A13B6F612746CA", "A13B6F61", "0", 
"A1976F61275CCA5E29F2702DD10C3C46CA5E29F2702DD10C3CAA7EA1"]

c. Hashfuzz test set

functional = "\
00802D2237000000F92DD3FBFFE8032D2217000000F92D41170000 \
6464646464646464646464646464646464646464F364646464646464646464040000 \
FF2C5D00807F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F807F050000 \
FF1414141414141414FF0000000000000000BAE3873FA2E387AC007F00141414141414FF0000000000000000BAE3873FA2E387AC007F000000 \
3FC9FFFFFFFF008089898189898989898989898989898989897B8989898989010000 D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D7D78000040000 \
20000000220B56000000000000000000000000000000000000000000000000000000000000 2D2D2D2D2D2D2D2D2D000000002D2DFF000000 \
0B5740000000000E0000000000000000000000 2D2DF5F5F5F5E3DAF5F5F5F5F5222D2A00040000 \
208000130013F32D2AADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADB6ADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADAD000000000000000000000000000000000000000000000000000000000000000000000000000000000013F32D2A00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000B00000000000000000000000000000B00000000000000000000000000000000000000000000 \
208000136313F32D2AADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADACADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADA9ADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADADAD000000000000000000000000000000000000000000000000000000000000000000000000000000000013F32D2A00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000B00000000000000000000000000000B00000000000000000000000000000000000000000000"

expected = ["802D2237000000F92DD3FBFFE8032D2217000000F92D", 
"64646464", "FF2C5D0080", "0", "3F", "D7D7D7D7", 
"0", "0", "0", "2D2DF5F5", "0", "0" ]

d. Hash-TA test set

functional = "\
91A5A45FFA3BFCB03E5095DD9DCBD463E5F6E487C64D8125983724919B94DA2C3A7F8B34BA88E5F8D87AD67545AAD92BA0BDB2670A338CA36A390000 \
91A5A45FFA3BFCB03E5095DD9DCBD463E5F6E487C64D8125983724919B94DA2C3A7F8B34BA88E5270000 \
91A5A45FFA3AFC91A52598372491FFFFFFFF3A7F8B34BA88B000040000ADCB9D5FFA3AFC91A52598372491FFFFFFFF3A7F8B34BA88B0000400009FCB000000 \
91A5989898989898989898A45F00000100D463E5F6E487C64D8125983724919B010020007F8B93BA8800020000 \
91A5A4E4DAE4E4E4E4E4E4E4E4F3E4E4E4E40000E43A109C05FFFF059A88E5130000 \
D46364000000C64081259837000100875095DD9DCBD463E5F640DD9DCBD463E5F6E487C64D8125983724919B7FDA2C3A7F8B34BA88E50100875095DD9DCBD463E5F640DD9DCBD463E5F6E487C64D8125983724270000 \
91A5A476FAA4A49DB2A4A4A4A4E5F6E487C6A4A4A4A4C1A4B4A4A4A4A4A4A4080000 \
91A587C6F6E487C64D8125983724919B94DA2CDA2C3A7F8B37BA88E50F0000 \
91A4A45FFA5764B03E5095DD0200D463E5F6E487C64D8125AE372491B494DA9D9D9D9D9D9D9D3E919B94DA00FA8B34BA88C8FA3BFCB03E5095DD2C3A7F8B34BA884D8125AE372491B494DA2C3A7F8B34BAE5270000 \
000000000000000000000000000000000000000091A5A45FFA3BFCB03E5095DD9DCBD40095DD9DDDD463E5F6E487C64D8125983724919B94DA2C3A7F8B34BA88E5270000 \
00000000000000000000000000000000FF0000000000000000 \
91EAEAEAEAEAEAEAE2EAEAEAEAE8EAEAEAEAEAEAEAEAEAEAEAEAEAEAD3EAEAEAEAEAEAEAEAEAEAEAEAEA7F00EAEAEAEAEAEAEAD2EAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAB5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B8B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5EAEAEAEAEAEAEAEAEAEAEAEAEAEAEA10000000EAEAEAEAF2EAEAEAEAEAEAEAA5A4E400E4E4DFE4E4EEE4E4F3E4E4E4E40000003FF60000E43A109C05FFFF059A8840000000 \
0091EAEAEAEAEAEAEAE2EAEAEAEAE8EAEAEAEAEAEAEAEAEAEAEAEAD3EAEAEA0200EAEAEAEAEAEAEAEA7F00EAEAEAEAEAEAEAD2EAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAB5B5B5B5B5E4B5B5B5B5B5B5B5EAEAEAEAF2EAEAEAEAEAEAEAA5A4C500E4E4DFB5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B8B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B501B5B5EAEAEAEAEAEAEAEAEAEAEAEAEAEAEA10000000EAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEA0000 \
0091EAEAEAEAEAEAEAE2EAEAEAEAE8EAEAEAEAEAEAEAEAEAEAEAEAEAEAD3EAEAEAEAEAEAEAEAEAEAEAEAEA7F00EAEAEAEAEAEAEAD2EAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAB5B5B5B535B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B8B5B5B5B5B5B5B5B5B5B5B5B5B5B520B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5EAEAEAEAEAEAEAEAEAEAEAEAEAEAEA10000000EAEAEAEAF2EAEAEAEAEAEAEAA5A4E400E4E4DFE4E4EEE4E4F3E4E4E4E40000003FF60000E43A109C05FFFF059A88400000 \
27EE2BF637CD9C56E025A1B65AB183B4AE894714EADD7BF66153D3BFA8ACA0CF9ACCC5D29961287987CA30E17BB395293CDC3D26B9B81C1B0CF0DAB49C7A83364649420000 \
27EE2BF637CD9C56E025A1B65AB183B4AE894714EADD7BF66153D3BFA8ACA0CF9ACCC5D29961287987CA30E17BB395293CDC3D26B9B81C1B0CF0DAB49C7A8336464908E0AA315931FB8912763CA8A07984DD9F3E96BC59A2AC3356485C0000 \
27EE2BF637CDAA56E025A1B65AB183B4AE894714EADD7BF66153D3BFA8ACA0CF9ACCC5D29961287987CA30E17BB395293CDCC426B9B81C1B0CF0DAB49C7A83364649420000 \
27EE2BF637CD9C56E0292929292929292929292929400029292925A1B65AB183B4AE6A4714EADD7BF66153D3BFA8ACA0CF9ACCC5CB9961287987CA307F7B000000 \
27EE2BF637CD9C56E025E80AA1B65AB395293CDC3D37B9B88336464942A1B65AB395293CE23D23B9B81C1B0CF0DAB49CB81C1B0CF0DAB49C6C83366C83364637B9B8833646494249425737B9B883364649420001000000 \
27EE2BF6B395293CDC3D26B9B81C1B0CF0DAB49C7A37CD9C56E025A1B65ADEAA56E025A1B65AB183B4AE894714EADD7BF66153D3BFA8ACA0CF87CA30E17BB395293CDC3D26B9B81C1B0CF0DAB49C7A83364649420000 \
2753535353535353535353535353535353EE2BF6FFFFFF7FE025A1B65AB183B4AE894714EADD7BF66153D3BFA8ACA0CF9ACCC5D29961287987CA30E17BB395293CDC3D26B9B81C1B0CF0DAB49C7A83364649420000 \
27EE2BF637CD9C56E025A1C5D29961287987A830E17BB32900007979797979397A83363646B658B183B4AE8947DC3D2910B83646B65AB183B4AE89CDF6FA0000FAE025A1B6DAB43971833646490B0000 \
27EE2BF637CD9C56E025A1B65AB183B4AE894714EADD7BF6B183B4AE894714EA7BF66153D3BF7987CA30E17BB395113CDC3D26B9B81C000CF0DAB426B9B8CA30E17AB395293C00FF1A20402A3D26B9BA1C1B0CF0DABA1C1C1B0000 \
27EE2BF637CD9C56E025A1B641B1000200004714EADD7BF66153D3C5D29961287987CA30007FB395293CDC3D26B9B81C1BF3EF8F8F8F8F8F8F8F8F8F8F8F8F8FDAB49C7A71BFA8ACA0CF18CCC5D29961287987CA30007FB395293CDC3D26B9B81C1BF3EFDAB49C7A71362F49287987CA30E97BB395293CDCC426B9B8081B0C7FDAB4420000 \
27EE2BF637CD9C56E025A1B65AB140B4AE894715EAB49C3083364649140000 \
2700000040CD9C5FE025A02800000055553D55555DB49C7A8C3613E8030000 \
27EE2BF637CD9C56E025A1B65AB199B4AE894714EADD7BF66153D3BFA8ACA0CF9ACCC5D29961287980FF30E17BB395293CDC3D26B9B81C1B00F0DAB49C7A83364649090000 \
27EE2BE237CD8356E025A1B65AA383B4AEB34714EADD7BF66153D3BFA8ACA08F9AB81C1B040000 \
27EE2BF637CD9C56E02583B426B9B8CA30E17AB3A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A80CF0DABA1C1C1BAE893D14EADD7BF66153D3BFA8ACA0CF9ACCC5D29961287987CA30E17BA8A8A8A8A8A8A8A8F637CD9C56E025A1B65AB183B426B9B8CA30E17AB3A8A8A8A8A8A8A8A80400A8A8A8A8A8A8A8A8A8A8A8A8A8A8B395293CDC3D26B9B81C1B0CF09AB49C7A83364649420000 \
27EE2BF637CD0100E025A1B65AB183B4AE894714EADD7BF66161287987CA30E17BB395293CDC3D266161287987CA30E17BB395293CDC3D26B9B81C25A02800000055553D55555DB49C7A8C3613E8031B0CF0DA293CDCB9B81C1B0CF0DA293CDC3D26B9B8401B0CF0FAAE894714EADD7BF66161287987CA30E17BB395293CDC3D266161287987CA0000FA83364649420000 \
0027EE2BF637CD0100E0266161287987CA30E17B25A13D266137CD0100E0266161287987CA30E17B25A1B65AB183B4AE894714EADD7BF66161287987CA30E17BB395293C4000266161287987CA30E1FFB395293CDC3D2600F8B9B81C25A02800001E55553D55555DB49C7A8C3693E8031B0CF0DA293CDCB9B81C1B0CF0DA293CDC2A26B9B8401B0CF0FAAE894714EADD7BF66161287987CA30E15BD195293CDC3D61287987CA30E1FFB395293CDC3D26B9B81C25A02800640055553D55555DB49C7A8C3613E8031B0CF0E0293CDCB9B81C1B0CF0DA293CDC2A26B9B8401B0CF0FAAE894714EADD7BF66161287987CA30E1000095293CDC3D266161287987CA0000 \
6E2D811405959E04444E2EDF452C9C0EEF52BFE6E4C3B356B0E6F02A1C7D078AAA889EB01E3CB4628AE241D00FDEDEFE309EE41461976A370000 \
6E2D811405959E04444E2EDF452C9C0EEF52BFE6E4C3B356B0E6F02A1C7D078AAA889EB01E3CB462280000 \
6E2D811405959E04444E2EDF452C9C0EEF52BFE6E4C3B352B0E6D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9F02A1C7D078AAA889EB01E3CB462280000 \
6E2D811405959E04444E2EDF452C9E04444E2EDF452C80FFEF52BFE6E4C33C56B0E6F02A1280FFEF52BFE6E4C33C56B0E6F02A127D076EAA889EC91E3C0000 \
6E2D811405959E04444E2EDF452C9C0EEF52BFE6E4C3B356B0E6F02A1C7D078AAA889EB01E3C2000000000 \
6E2D811405959704444E2EDF452C9C0E2D2D2D2D2D2D2D2D80FF2D2D2D2D2D2D2D2DF92D2D2D2DEF52BFE6E464B356B0407FFF00407F8AAA889EB01E3CB44B0B0000 \
6E2D671405959E04444E2E2C2C2C2C2CEF52BFE6E4C3B35601E6F02AE17D078AAA889AB09C824F3D0AE6E4C3B356B0B0E6DA2AE6D22A1C7D078AAA889EB01E9C0EEFE6E4C3B356B0B0E6DA2AE6FB2A1C7D078AAA889EB01E3CB462280000 \
6E2D811405959E243F4E12DF45009C0EEF52FFE6E4C3B356B0E6F02A207D070000 \
6E2D811405959E04444E2EDF452C9C01EF52BFE6E4C34E2EDF452C7F00EF52BFE6959595959595959595959595959595959595959595959595959595E4C3B356B0E6F02A1C7D068ABC889EB0B356B0E6F0451C7D068ABC889EB01E3CB462150000 \
6E2D8114D9D9D9D9D9D9EED9D9D9D9D9D9D9D905959E04444E2EDF452C9BF3EF52BFE6E4C3B356B0E6F02A1C7D078A2C9C0E2D2D2D2D2D2D2D2D80FF2D2D2D2D2D2D2D2DF92D2D2D2DEF52AA889EB01E3CB462280000 \
6E2D811405959E04444E2EDF452C9C20EF52BFE6E4C3B356737373737373737373737373737373737373737373737373737373737373737373737373737373737373B0E6F02A1C7D078AAA889EB01E38B462280000 \
802D8113EA978C04444E2EDF452C9C4EEF52BFE6E4C3A8D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D956B0E6D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D956B0E6F02A1C7D078AAA889EB0F02A1C7D078AAA889EB0A89E04444E2EDFFF444E2EDF452C9C19EF52BFE6E4C3B356B0E6F02A1C7D078AC3B356B03CB462280000 \
6E2D8114E6949E04444E2EDF45EF52BFE6E4C3B356B0E6F05C14F1F1F1F1F1F1F1F1931E643CB46228002C9C0EEF52BFE6E4C3B356B0E6F05C1405959E04444E2EDF452C9C0EEF52A9E6E4C3B3F1DBF1F1F10DF1F1F1F1F1F1F1F1F1F1F1F104444E2EDF452C9C0EEF52BFE6E4C3B356B0E6F05C14F1F180F1F1F1F1F1931E643CB462280000 \
0000000000000000000000000000000000010000B01E0000000100444E33DF452C950EEF52BFE6E4C3B34FB0ECF02A1C7D078AAA889EB01E3CB462290000 \
000000000000000000000000000000000000FFDF0010007F0040FF000000006E2D00007D078A810700000004444E2EDFB4623480AA889EB01E3CB462280000 \
D9F2FAA0063D18E7A0B5F5878847746A46F140481A0585607835DB5F198231F3742C937A69AB6209615791E99E0554E5F6942D330000 \
D9F2FAA0063D18E7A0B5F5878847746A46F140481A0585607835DB5F198231F3742C937A69AB6209615791E99E2D0000 \
D92E2E2E2E2E2E2E2E2E2E2E2F070000FAF140481AE984607835C95F198231F3742C3B3C57800010008036481A0585607835DBA3E99E2E2EFA0000FAF140481AE994607835C95F198231F3742C3B3C578000100080402D0000 \
D940FAA0063DFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBFBDB3F198231F3742C937A69ABE8030000 \
8847746AE1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E118E7A0B5F5878847746A82F140481A05856078481A0500024A00DB651982318C46F140481A058C5E62481A5F198231F3742C937A69AB628847740046F140481A0585607835DB5F198231F3742C937A69AB6209615709615791E99E2D0000 \
D9F2BFBFBFBFF203000000BE5511625791E98D2D0000BE6211625791E99E0F0000 \
D9F2FAA03D18E2A085608B35DB5F198231B5F587F140481A058587FF00481A058557783500742C933F69AB62094C578847744E46F140481A40481A0585608B35DB5F198231F27491E99E200000 \
D9F2FAA0001018E7A0B5F5C000160101001600FF01010016878847746400F10101001600FF01010016878847746400F1404819F284607835404819F284607835A35F996031B1742C937AFFFF6209615791A1822D0000 \
D9F2FAA0063D18E7A0B5F54000D9F2FAA0063D18E7A0B5F5400000006A66F140645A008231EB743C884774AB6200006A66F140645A008231EB743C884774AB620B615710E99E150000 \
D9F2FAA0063D18E7A0B5F5870000000146F140481A0585605735DB5F198231F3A0063D180040B5F591E99E2D09000000 \
D9F2FABCBCBC00FFBE6EBCBC8231F3742C934840B5F591E99E2D0900000080BCBCBCBCBCBCBCBCBC8231F3742C934840B5F591E99E2D090000008085607801005F198214F374BCBCBCBCBCBCBCBCBCBCDABCBC8231F3742C934840B5F591E99E2D090000008085607801005F198214F3747F937A69AB62096157CFE99E2D0000 \
D9F2FAA0063D18E7A0001587F3742C937A69AB628847740046F100000200858847746A56F140481A0585607864DB5F746A46F140481A05856078DB5F198231F3742C93B07BAB62096157918C47746AE99E2D198231F3742C93B07BAB620900000000FFFFFFE8000000000000000000000000000000000000000000000000615791ED9E2D0000 \
D9F2FAA0063D18E7A0B5F5878847746A46F140481A0585607835B5F5878847746A46F140481A0585607835DB5F198231E7742C937ADB5F198231F3742C937A69AB628847746A46F140481A0509615795E99E2D0000 \
D9F2FAA485607835DB5F19F00001002C806967E27209615791E99E020000 \
D95C0000000000000000000000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000000FFFFFFF70000000000000000000000856078480000000000000000000000000000000000000000000000000000000000000000000000EF00000000000000000000100000000000008000000000000000220000000000E7A0B5F5878847746A46F140481A0585607835DB5F198231F3742C937A0000000000000000000000FF000000000000000000FFDD0000540000000000DFFF0000000000210000FF7FFFFF000000000000000000000000 \
DE74654BB824281562DAD08C49FFB5FE1D7BC894C5F1EA6E8DDBA4A5D168FBAFDC60FA230000 \
F5F0F5E4F5F5F60FE0F50000008062DAD00B0000 \
CC8C654BB824281562DACC8C654BB824281562DACC8C654BB824281562DACC8C654BB824281562DAD00B0000D00B0000D00B0000D00B0000 \
00001000B81528B862C82BE181EBC60A80D0010000 \
DE7465DE66B8242865DE66B82400000028B862C82BE181EBC60A802B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B0000 \
654BB824D00B0000654BB824D00B000000DEB824D00B0000654BB824D00B000000DE74654BB824281562DAD00B00000074654BB824281D62DAD00B000000F40074654BB824281562DAD00B0000 \
000020E0FFFFFF000000000000000000000000000000000000000000000080000000000000000000000000000000004B4B4B4B8000000000000000000000000000000000000000000000000000004B4B4B4B4B0000000000000000000000000000000000000000009E000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000004B4B4B4B4B00000F00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 \
0016000020E0FFFFFF000000000000000000000000000000000000000000000080000000000000000000000000000014004B4B4B4B8000000000000000000000000000000000000000000000000000004B4B4B4B4B0000000000000000000000000000000000000000009E000000000000000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000014004B4B4B4B8000000000000000000000000000050000000000000000000000004B4B4B4B4B0000000000000000000000000000000000000000009E0000000000000000000000000000000000000000000000000000000000000000000000 \
0016000020E0FFFFFF0000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000000000000000000000000004B4B4B4B4B0000000000000000000000000000000000000000009E000000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000004B4B4B4B4B00000F0000000000000080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"

expected = ["91A5A45FFA3BFCB03E5095DD9DCBD463E5F6E487C64D8125983724919B94DA2C3A7F8B34BA88E5F8D87AD67545AAD92BA0BDB2670A338CA36A",
"91A5A45FFA3BFCB03E5095DD9DCBD463E5F6E487C64D8125983724919B94DA2C3A7F8B34BA88E5", 
"0", "91A5", "91A5A4E4DAE4E4E4E4E4E4E4E4F3E4E4E4E400", 
"D46364000000C64081259837000100875095DD9DCBD463E5F640DD9DCBD463E5F6E487C64D8125", 
"91A5A476FAA4A49D", "91A587C6F6E487C64D812598372491", 
"91A4A45FFA5764B03E5095DD0200D463E5F6E487C64D8125AE372491B494DA9D9D9D9D9D9D9D3E", "91A5A45FFA3BFCB03E5095DD9DCBD40095DD9D", "0", "0", 
"91EAEAEAEAEAEAEAE2EAEAEAEAE8EAEAEAEAEAEAEAEAEAEAEAEAD3EAEAEA0200EAEAEAEAEAEAEAEA7F00EAEAEAEAEAEAEAD2EAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAB5B5B5B5B5E4B5B5B5B5B5B5B5EAEAEAEAF2EAEAEAEAEAEAEAA5A4C500E4E4DFB5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B8B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B5B501B5B5EAEAEAEAEAEAEAEAEAEAEAEAEAEAEA10000000EAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEA", 
"91EAEAEAEAEAEAEAE2EAEAEAEAE8EAEAEAEAEAEAEAEAEAEAEAEAEAEAD3EAEAEAEAEAEAEAEAEAEAEAEAEA7F00EAEAEAEAEAEAEAD2EAEAEAEAEAEAEAEAEAEAEA", 
"27EE2BF637CD9C56E025A1B65AB183B4AE894714EADD7BF66153D3BFA8ACA0CF9ACCC5D29961287987CA30E17BB395293CDC3D26B9B81C1B0CF0DAB49C7A83364649", 
"27EE2BF637CD9C56E025A1B65AB183B4AE894714EADD7BF66153D3BFA8ACA0CF9ACCC5D29961287987CA30E17BB395293CDC3D26B9B81C1B0CF0DAB49C7A8336464908E0AA315931FB8912763CA8A07984DD9F3E96BC59A2AC335648", 
"27EE2BF637CDAA56E025A1B65AB183B4AE894714EADD7BF66153D3BFA8ACA0CF9ACCC5D29961287987CA30E17BB395293CDCC426B9B81C1B0CF0DAB49C7A83364649", "0", "0", 
"27EE2BF6B395293CDC3D26B9B81C1B0CF0DAB49C7A37CD9C56E025A1B65ADEAA56E025A1B65AB183B4AE894714EADD7BF66153D3BFA8ACA0CF87CA30E17BB395293C", 
"2753535353535353535353535353535353EE2BF6FFFFFF7FE025A1B65AB183B4AE894714EADD7BF66153D3BFA8ACA0CF9ACCC5D29961287987CA30E17BB395293CDC", 
"27EE2BF637CD9C56E025A1", "27EE2BF637CD9C56E025A1B65AB183B4AE894714EADD7BF6B183B4", 
"27EE2BF637CD9C56E025A1B641B1000200004714EADD7BF66153D3C5D29961287987CA30007FB395293CDC3D26B9B81C1BF3EF8F8F8F8F8F8F8F8F8F8F8F8F8FDAB4", 
"27EE2BF637CD9C56E025A1B65AB140B4AE894715", "270000", "27EE2BF637CD9C56E0", "27EE2BE2", 
"27EE2BF637CD9C56E02583B426B9B8CA30E17AB3A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A8A80CF0DABA1C1C1BAE893D14EADD7BF66153D3BFA8ACA0CF9ACCC5D2", 
"27EE2BF637CD0100E025A1B65AB183B4AE894714EADD7BF66161287987CA30E17BB395293CDC3D266161287987CA30E17BB395293CDC3D26B9B81C25A02800000055", 
"27EE2BF637CD0100E0266161287987CA30E17B25A13D266137CD0100E0266161287987CA30E17B25A1B65AB183B4AE894714EADD7BF66161287987CA30E17BB395293C4000266161287987CA30E1FFB395293CDC3D2600F8B9B81C25A02800001E55553D55555DB49C7A8C3693E8031B0CF0DA293CDCB9B81C1B0CF0DA293CDC2A26B9B8401B0CF0FAAE894714EADD7BF66161287987CA30E15BD195293CDC3D61287987CA30E1FFB395293CDC3D26B9B81C25A02800640055553D55555DB49C7A8C3613E8031B0CF0", 
"6E2D811405959E04444E2EDF452C9C0EEF52BFE6E4C3B356B0E6F02A1C7D078AAA889EB01E3CB4628AE241D00FDEDEFE309EE41461976A", 
"6E2D811405959E04444E2EDF452C9C0EEF52BFE6E4C3B356B0E6F02A1C7D078AAA889EB01E3CB462", 
"6E2D811405959E04444E2EDF452C9C0EEF52BFE6E4C3B352B0E6D9D9D9D9D9D9D9D9D9D9D9D9D9D9", 
"6E2D811405959E04444E2EDF452C9E04444E2EDF452C80FFEF52BFE6E4C33C56B0E6F02A1280FFEF52BFE6E4C33C56B0E6F02A127D076EAA889EC91E", "0", 
"6E2D811405959704444E2E", "6E2D671405959E04444E2E2C2C2C2C2CEF52BFE6E4C3B35601E6F02AE17D078AAA889AB09C824F3D", 
"6E2D811405959E", "6E2D811405959E04444E2EDF452C9C01EF52BFE6E4", 
"6E2D8114D9D9D9D9D9D9EED9D9D9D9D9D9D9D905959E04444E2EDF452C9BF3EF52BFE6E4C3B356B0", 
"6E2D811405959E04444E2EDF452C9C20EF52BFE6E4C3B35673737373737373737373737373737373", 
"802D8113EA978C04444E2EDF452C9C4EEF52BFE6E4C3A8D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9", 
"6E2D8114E6949E04444E2EDF45EF52BFE6E4C3B356B0E6F05C14F1F1F1F1F1F1F1F1931E643CB462", 
"010000B01E0000000100444E33DF452C950EEF52BFE6E4C3", "FFDF0010007F0040FF000000006E2D00007D078A8107", 
"D9F2FAA0063D18E7A0B5F5878847746A46F140481A0585607835DB5F198231F3742C937A69AB6209615791E99E0554E5F6942D", 
"D9F2FAA0063D18E7A0B5F5878847746A46F140481A0585607835DB5F198231F3742C937A69AB6209615791E99E", 
"D92E2E2E2E2E2E2E2E2E2E2E2F070000FAF140481AE984607835C95F198231F3742C3B3C57800010008036481A", "D940FA", 
"8847746AE1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E118E7A0B5F5878847746A82F140481A05856078481A0500024A", 
"D9F2BFBFBFBFF203000000BE551162", "D9F2FAA03D18E2A085608B35DB5F198231B5F587F140481A058587FF00481A05", 
"D9F2FAA0001018E7A0B5F5C000160101001600FF01010016878847746400F10101001600FF0101001687884774", 
"D9F2FAA0063D18E7A0B5F54000D9F2FAA0063D18E7", "0", 
"D9F2FABCBCBC00FFBE6EBCBC8231F3742C934840B5F591E99E2D0900000080BCBCBCBCBCBCBCBCBC8231F3742C", 
"D9F2FAA0063D18E7A0001587F3742C937A69AB628847740046F100000200858847746A56F140481A0585607864", 
"D9F2FAA0063D18E7A0B5F5878847746A46F140481A0585607835B5F5878847746A46F140481A0585607835DB5F", 
"D9F2", "0", "DE74654BB824281562DAD08C49FFB5FE1D7BC894C5F1EA6E8DDBA4A5D168FBAFDC60FA", 
"F5F0F5E4F5F5F60FE0F500", "CC8C654BB824281562DACC", "0", 
"DE7465DE66B8242865DE66B82400000028B862C82BE181EBC60A802B2B2B2B2B2B2B2B2B2B2B2B2B2B2B2B", 
"654BB824D00B0000654BB8", "0", "0", "0"] 

2. Hypertest set

entropy = "559FFADFFF6DBD7FEFFEEF7FEFEBE7F3FFD000 "
entropy += "559FFADFFF6DBD7FEFFEEF7FEFEBE7F3FFE000 "
entropy += "559FFADFFF6DBD7FEFFEEF7FEFEBE7F3FFE000 "
entropy += "559FFADFFF6DBD7FEFFEEF7FEFEBE7F3FFC000 "
entropy += "559FFADFFF6DBD7FEFFEEF7FEFEBE7F3FFE000 "
entropy += "59DC5E5F84CC2C722AAA0E8BEECCA43A4DE000 "
entropy += "38BDE8416A6BEEA9052AD686645E2DA1CA0000 "
entropy += "3420D90253B5E34A572D8C455D094A8AA1F000 "
entropy += "2F0A855FBA9AB1D128A73F80F2631292313000 "
entropy += "65168913AF9DDF73217D3FADADE868E01CF000 "
entropy += "1D6CC5316D1987CCFEC0AAA682F06989D77000 "
entropy += "0FF391AFDDA51E8DC4044C6818F59C87E7C000 "
entropy += "31F1B7704BFF5F9DA057141D6FCF4E2A9E2000 "
entropy += "76371F5CCF03CD88757DD1D0D106CFDAC6F000 "
entropy += "6B9045051D1FA9D7B848C6016D807D46520000 "
entropy += "6FB3DFB4634467B3AA9D9350DA3358AC45C000 "
entropy += "3668B995965C9F6D64057E0114AE1697AD3000 "
entropy += "018121ADF52F2E1067154733EB7F8377182000 "
entropy += "166A42BE1B0D909AE042BC586A12D24FE25000 "
entropy += "209B9F7954B4BD573BAFB8C20DD71D403C0000 "
entropy += "61C4216281750F865FB49781881DA36C350000 "
entropy += "32A2CA6CDF3FFFBDC957EEA24B0B32A11D3000 "
entropy += "46E1D4BE8F4B5EAD40049ECFD8E81756D8F000 "
entropy += "21024FF93DB6206DB237B37C2809054EF9F000 "
entropy += "559FFADFFF6DBD7FEFFEEF7FEFEBE7FF292000 "
entropy += "4499B457663F7D0AABC6861C07516EBEDE1000 "
entropy += "58FCC777BADF17F9102FACA726F128A8B50000 "
entropy += "4D2594219DF794EDAB8C49F9A908F856FB6000 "
entropy += "11DC054364FDA7FCD3FF52220CCD96C5DCA000 "
entropy += "57ED11083702B0B7AD52E5FDD8D4A0F7F93000 "
entropy += "2387E1D0DD4EB1E5DD77CC1458297505BAB000 "
entropy += "4E8EF98E4F59AEDE66728DFFCD832610798000 "
entropy += "6D561C14A14135C6C672AB67E5203103903000 "
entropy += "559FFADFFF6DBD7FEFFEEF7FEFEBE7F7135000 "
entropy += "1E4AA79C54842237CF71ABA1A543B7395FD000 "
entropy += "7A8641BDDD66F700F8D3FEC937AB5CE26E8000 "
entropy += "254424A54AC1E6B72AC9350AF086F4DDE15000 "
entropy += "559FFADFFF6DBD7FEFFEEF7FEFEBE7F3E05000 "
entropy += "559FFADFFF6DBD7FEFFEEF7FEFEBE7F34B7000 "
entropy += "1CC64EE8643B953D12741F12623089E84D8000"