diff options
Diffstat (limited to 'llvm/unittests/Support/SipHashTest.cpp')
| -rw-r--r-- | llvm/unittests/Support/SipHashTest.cpp | 1871 |
1 files changed, 1871 insertions, 0 deletions
diff --git a/llvm/unittests/Support/SipHashTest.cpp b/llvm/unittests/Support/SipHashTest.cpp new file mode 100644 index 000000000000..7c557eb488ac --- /dev/null +++ b/llvm/unittests/Support/SipHashTest.cpp @@ -0,0 +1,1871 @@ +//===- llvm/unittest/Support/SipHashTest.cpp ------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +#include "llvm/Support/SipHash.h" +#include "llvm/ADT/ArrayRef.h" +#include "gtest/gtest.h" +#include <string.h> + +using namespace llvm; + +namespace { + +// Tests from the SipHash reference implementation: +// https://github.com/veorq/SipHash +// from test.c and vectors.h, with the latter vectors at the end of the file, +// forward-declared here. +extern const uint8_t ExpectedSipHash64[64][8]; +extern const uint8_t ExpectedSipHash128[64][16]; + +TEST(SipHashTest, SipHash_2_4_64) { + uint8_t K[16]; + for (size_t KI = 0; KI < sizeof(K); ++KI) + K[KI] = KI; + + uint8_t In[64], Out[8]; + for (size_t InLen = 0; InLen < sizeof(In); ++InLen) { + In[InLen] = InLen; + getSipHash_2_4_64(ArrayRef(In, InLen), K, Out); + for (size_t I = 0; I < sizeof(Out); ++I) + EXPECT_EQ(ExpectedSipHash64[InLen][I], Out[I]); + } +} + +TEST(SipHashTest, SipHash_2_4_128) { + uint8_t K[16]; + for (size_t KI = 0; KI < sizeof(K); ++KI) + K[KI] = KI; + + uint8_t In[64], Out[16]; + for (size_t InLen = 0; InLen < sizeof(In); ++InLen) { + In[InLen] = InLen; + getSipHash_2_4_128(ArrayRef(In, InLen), K, Out); + for (size_t I = 0; I < sizeof(Out); ++I) + EXPECT_EQ(ExpectedSipHash128[InLen][I], Out[I]); + } +} + +// Tests for the ptrauth-specific SipHash wrapper. +TEST(SipHashTest, PointerAuthSipHash) { + // Test some basic cases. + EXPECT_EQ(0xE793, getPointerAuthStableSipHash("")); + EXPECT_EQ(0xF468, getPointerAuthStableSipHash("strlen")); + EXPECT_EQ(0x2D15, getPointerAuthStableSipHash("_ZN1 ind; f")); + + // Test some known strings that are already enshrined in the ABI. + EXPECT_EQ(0x6AE1, getPointerAuthStableSipHash("isa")); + EXPECT_EQ(0xB5AB, getPointerAuthStableSipHash("objc_class:superclass")); + EXPECT_EQ(0xC0BB, getPointerAuthStableSipHash("block_descriptor")); + EXPECT_EQ(0xC310, getPointerAuthStableSipHash("method_list_t")); + + // Test limit cases where we differ from naive truncations from 64-bit hashes. + EXPECT_EQ(1, getPointerAuthStableSipHash("_Zptrkvttf")); + EXPECT_EQ(0xFFFF, getPointerAuthStableSipHash("_Zaflhllod")); +} + +// Below are the unmodified expected outputs from the reference vectors.h. + +const uint8_t ExpectedSipHash64[64][8] = { + { + 0x31, + 0x0e, + 0x0e, + 0xdd, + 0x47, + 0xdb, + 0x6f, + 0x72, + }, + { + 0xfd, + 0x67, + 0xdc, + 0x93, + 0xc5, + 0x39, + 0xf8, + 0x74, + }, + { + 0x5a, + 0x4f, + 0xa9, + 0xd9, + 0x09, + 0x80, + 0x6c, + 0x0d, + }, + { + 0x2d, + 0x7e, + 0xfb, + 0xd7, + 0x96, + 0x66, + 0x67, + 0x85, + }, + { + 0xb7, + 0x87, + 0x71, + 0x27, + 0xe0, + 0x94, + 0x27, + 0xcf, + }, + { + 0x8d, + 0xa6, + 0x99, + 0xcd, + 0x64, + 0x55, + 0x76, + 0x18, + }, + { + 0xce, + 0xe3, + 0xfe, + 0x58, + 0x6e, + 0x46, + 0xc9, + 0xcb, + }, + { + 0x37, + 0xd1, + 0x01, + 0x8b, + 0xf5, + 0x00, + 0x02, + 0xab, + }, + { + 0x62, + 0x24, + 0x93, + 0x9a, + 0x79, + 0xf5, + 0xf5, + 0x93, + }, + { + 0xb0, + 0xe4, + 0xa9, + 0x0b, + 0xdf, + 0x82, + 0x00, + 0x9e, + }, + { + 0xf3, + 0xb9, + 0xdd, + 0x94, + 0xc5, + 0xbb, + 0x5d, + 0x7a, + }, + { + 0xa7, + 0xad, + 0x6b, + 0x22, + 0x46, + 0x2f, + 0xb3, + 0xf4, + }, + { + 0xfb, + 0xe5, + 0x0e, + 0x86, + 0xbc, + 0x8f, + 0x1e, + 0x75, + }, + { + 0x90, + 0x3d, + 0x84, + 0xc0, + 0x27, + 0x56, + 0xea, + 0x14, + }, + { + 0xee, + 0xf2, + 0x7a, + 0x8e, + 0x90, + 0xca, + 0x23, + 0xf7, + }, + { + 0xe5, + 0x45, + 0xbe, + 0x49, + 0x61, + 0xca, + 0x29, + 0xa1, + }, + { + 0xdb, + 0x9b, + 0xc2, + 0x57, + 0x7f, + 0xcc, + 0x2a, + 0x3f, + }, + { + 0x94, + 0x47, + 0xbe, + 0x2c, + 0xf5, + 0xe9, + 0x9a, + 0x69, + }, + { + 0x9c, + 0xd3, + 0x8d, + 0x96, + 0xf0, + 0xb3, + 0xc1, + 0x4b, + }, + { + 0xbd, + 0x61, + 0x79, + 0xa7, + 0x1d, + 0xc9, + 0x6d, + 0xbb, + }, + { + 0x98, + 0xee, + 0xa2, + 0x1a, + 0xf2, + 0x5c, + 0xd6, + 0xbe, + }, + { + 0xc7, + 0x67, + 0x3b, + 0x2e, + 0xb0, + 0xcb, + 0xf2, + 0xd0, + }, + { + 0x88, + 0x3e, + 0xa3, + 0xe3, + 0x95, + 0x67, + 0x53, + 0x93, + }, + { + 0xc8, + 0xce, + 0x5c, + 0xcd, + 0x8c, + 0x03, + 0x0c, + 0xa8, + }, + { + 0x94, + 0xaf, + 0x49, + 0xf6, + 0xc6, + 0x50, + 0xad, + 0xb8, + }, + { + 0xea, + 0xb8, + 0x85, + 0x8a, + 0xde, + 0x92, + 0xe1, + 0xbc, + }, + { + 0xf3, + 0x15, + 0xbb, + 0x5b, + 0xb8, + 0x35, + 0xd8, + 0x17, + }, + { + 0xad, + 0xcf, + 0x6b, + 0x07, + 0x63, + 0x61, + 0x2e, + 0x2f, + }, + { + 0xa5, + 0xc9, + 0x1d, + 0xa7, + 0xac, + 0xaa, + 0x4d, + 0xde, + }, + { + 0x71, + 0x65, + 0x95, + 0x87, + 0x66, + 0x50, + 0xa2, + 0xa6, + }, + { + 0x28, + 0xef, + 0x49, + 0x5c, + 0x53, + 0xa3, + 0x87, + 0xad, + }, + { + 0x42, + 0xc3, + 0x41, + 0xd8, + 0xfa, + 0x92, + 0xd8, + 0x32, + }, + { + 0xce, + 0x7c, + 0xf2, + 0x72, + 0x2f, + 0x51, + 0x27, + 0x71, + }, + { + 0xe3, + 0x78, + 0x59, + 0xf9, + 0x46, + 0x23, + 0xf3, + 0xa7, + }, + { + 0x38, + 0x12, + 0x05, + 0xbb, + 0x1a, + 0xb0, + 0xe0, + 0x12, + }, + { + 0xae, + 0x97, + 0xa1, + 0x0f, + 0xd4, + 0x34, + 0xe0, + 0x15, + }, + { + 0xb4, + 0xa3, + 0x15, + 0x08, + 0xbe, + 0xff, + 0x4d, + 0x31, + }, + { + 0x81, + 0x39, + 0x62, + 0x29, + 0xf0, + 0x90, + 0x79, + 0x02, + }, + { + 0x4d, + 0x0c, + 0xf4, + 0x9e, + 0xe5, + 0xd4, + 0xdc, + 0xca, + }, + { + 0x5c, + 0x73, + 0x33, + 0x6a, + 0x76, + 0xd8, + 0xbf, + 0x9a, + }, + { + 0xd0, + 0xa7, + 0x04, + 0x53, + 0x6b, + 0xa9, + 0x3e, + 0x0e, + }, + { + 0x92, + 0x59, + 0x58, + 0xfc, + 0xd6, + 0x42, + 0x0c, + 0xad, + }, + { + 0xa9, + 0x15, + 0xc2, + 0x9b, + 0xc8, + 0x06, + 0x73, + 0x18, + }, + { + 0x95, + 0x2b, + 0x79, + 0xf3, + 0xbc, + 0x0a, + 0xa6, + 0xd4, + }, + { + 0xf2, + 0x1d, + 0xf2, + 0xe4, + 0x1d, + 0x45, + 0x35, + 0xf9, + }, + { + 0x87, + 0x57, + 0x75, + 0x19, + 0x04, + 0x8f, + 0x53, + 0xa9, + }, + { + 0x10, + 0xa5, + 0x6c, + 0xf5, + 0xdf, + 0xcd, + 0x9a, + 0xdb, + }, + { + 0xeb, + 0x75, + 0x09, + 0x5c, + 0xcd, + 0x98, + 0x6c, + 0xd0, + }, + { + 0x51, + 0xa9, + 0xcb, + 0x9e, + 0xcb, + 0xa3, + 0x12, + 0xe6, + }, + { + 0x96, + 0xaf, + 0xad, + 0xfc, + 0x2c, + 0xe6, + 0x66, + 0xc7, + }, + { + 0x72, + 0xfe, + 0x52, + 0x97, + 0x5a, + 0x43, + 0x64, + 0xee, + }, + { + 0x5a, + 0x16, + 0x45, + 0xb2, + 0x76, + 0xd5, + 0x92, + 0xa1, + }, + { + 0xb2, + 0x74, + 0xcb, + 0x8e, + 0xbf, + 0x87, + 0x87, + 0x0a, + }, + { + 0x6f, + 0x9b, + 0xb4, + 0x20, + 0x3d, + 0xe7, + 0xb3, + 0x81, + }, + { + 0xea, + 0xec, + 0xb2, + 0xa3, + 0x0b, + 0x22, + 0xa8, + 0x7f, + }, + { + 0x99, + 0x24, + 0xa4, + 0x3c, + 0xc1, + 0x31, + 0x57, + 0x24, + }, + { + 0xbd, + 0x83, + 0x8d, + 0x3a, + 0xaf, + 0xbf, + 0x8d, + 0xb7, + }, + { + 0x0b, + 0x1a, + 0x2a, + 0x32, + 0x65, + 0xd5, + 0x1a, + 0xea, + }, + { + 0x13, + 0x50, + 0x79, + 0xa3, + 0x23, + 0x1c, + 0xe6, + 0x60, + }, + { + 0x93, + 0x2b, + 0x28, + 0x46, + 0xe4, + 0xd7, + 0x06, + 0x66, + }, + { + 0xe1, + 0x91, + 0x5f, + 0x5c, + 0xb1, + 0xec, + 0xa4, + 0x6c, + }, + { + 0xf3, + 0x25, + 0x96, + 0x5c, + 0xa1, + 0x6d, + 0x62, + 0x9f, + }, + { + 0x57, + 0x5f, + 0xf2, + 0x8e, + 0x60, + 0x38, + 0x1b, + 0xe5, + }, + { + 0x72, + 0x45, + 0x06, + 0xeb, + 0x4c, + 0x32, + 0x8a, + 0x95, + }, +}; + +const uint8_t ExpectedSipHash128[64][16] = { + { + 0xa3, + 0x81, + 0x7f, + 0x04, + 0xba, + 0x25, + 0xa8, + 0xe6, + 0x6d, + 0xf6, + 0x72, + 0x14, + 0xc7, + 0x55, + 0x02, + 0x93, + }, + { + 0xda, + 0x87, + 0xc1, + 0xd8, + 0x6b, + 0x99, + 0xaf, + 0x44, + 0x34, + 0x76, + 0x59, + 0x11, + 0x9b, + 0x22, + 0xfc, + 0x45, + }, + { + 0x81, + 0x77, + 0x22, + 0x8d, + 0xa4, + 0xa4, + 0x5d, + 0xc7, + 0xfc, + 0xa3, + 0x8b, + 0xde, + 0xf6, + 0x0a, + 0xff, + 0xe4, + }, + { + 0x9c, + 0x70, + 0xb6, + 0x0c, + 0x52, + 0x67, + 0xa9, + 0x4e, + 0x5f, + 0x33, + 0xb6, + 0xb0, + 0x29, + 0x85, + 0xed, + 0x51, + }, + { + 0xf8, + 0x81, + 0x64, + 0xc1, + 0x2d, + 0x9c, + 0x8f, + 0xaf, + 0x7d, + 0x0f, + 0x6e, + 0x7c, + 0x7b, + 0xcd, + 0x55, + 0x79, + }, + { + 0x13, + 0x68, + 0x87, + 0x59, + 0x80, + 0x77, + 0x6f, + 0x88, + 0x54, + 0x52, + 0x7a, + 0x07, + 0x69, + 0x0e, + 0x96, + 0x27, + }, + { + 0x14, + 0xee, + 0xca, + 0x33, + 0x8b, + 0x20, + 0x86, + 0x13, + 0x48, + 0x5e, + 0xa0, + 0x30, + 0x8f, + 0xd7, + 0xa1, + 0x5e, + }, + { + 0xa1, + 0xf1, + 0xeb, + 0xbe, + 0xd8, + 0xdb, + 0xc1, + 0x53, + 0xc0, + 0xb8, + 0x4a, + 0xa6, + 0x1f, + 0xf0, + 0x82, + 0x39, + }, + { + 0x3b, + 0x62, + 0xa9, + 0xba, + 0x62, + 0x58, + 0xf5, + 0x61, + 0x0f, + 0x83, + 0xe2, + 0x64, + 0xf3, + 0x14, + 0x97, + 0xb4, + }, + { + 0x26, + 0x44, + 0x99, + 0x06, + 0x0a, + 0xd9, + 0xba, + 0xab, + 0xc4, + 0x7f, + 0x8b, + 0x02, + 0xbb, + 0x6d, + 0x71, + 0xed, + }, + { + 0x00, + 0x11, + 0x0d, + 0xc3, + 0x78, + 0x14, + 0x69, + 0x56, + 0xc9, + 0x54, + 0x47, + 0xd3, + 0xf3, + 0xd0, + 0xfb, + 0xba, + }, + { + 0x01, + 0x51, + 0xc5, + 0x68, + 0x38, + 0x6b, + 0x66, + 0x77, + 0xa2, + 0xb4, + 0xdc, + 0x6f, + 0x81, + 0xe5, + 0xdc, + 0x18, + }, + { + 0xd6, + 0x26, + 0xb2, + 0x66, + 0x90, + 0x5e, + 0xf3, + 0x58, + 0x82, + 0x63, + 0x4d, + 0xf6, + 0x85, + 0x32, + 0xc1, + 0x25, + }, + { + 0x98, + 0x69, + 0xe2, + 0x47, + 0xe9, + 0xc0, + 0x8b, + 0x10, + 0xd0, + 0x29, + 0x93, + 0x4f, + 0xc4, + 0xb9, + 0x52, + 0xf7, + }, + { + 0x31, + 0xfc, + 0xef, + 0xac, + 0x66, + 0xd7, + 0xde, + 0x9c, + 0x7e, + 0xc7, + 0x48, + 0x5f, + 0xe4, + 0x49, + 0x49, + 0x02, + }, + { + 0x54, + 0x93, + 0xe9, + 0x99, + 0x33, + 0xb0, + 0xa8, + 0x11, + 0x7e, + 0x08, + 0xec, + 0x0f, + 0x97, + 0xcf, + 0xc3, + 0xd9, + }, + { + 0x6e, + 0xe2, + 0xa4, + 0xca, + 0x67, + 0xb0, + 0x54, + 0xbb, + 0xfd, + 0x33, + 0x15, + 0xbf, + 0x85, + 0x23, + 0x05, + 0x77, + }, + { + 0x47, + 0x3d, + 0x06, + 0xe8, + 0x73, + 0x8d, + 0xb8, + 0x98, + 0x54, + 0xc0, + 0x66, + 0xc4, + 0x7a, + 0xe4, + 0x77, + 0x40, + }, + { + 0xa4, + 0x26, + 0xe5, + 0xe4, + 0x23, + 0xbf, + 0x48, + 0x85, + 0x29, + 0x4d, + 0xa4, + 0x81, + 0xfe, + 0xae, + 0xf7, + 0x23, + }, + { + 0x78, + 0x01, + 0x77, + 0x31, + 0xcf, + 0x65, + 0xfa, + 0xb0, + 0x74, + 0xd5, + 0x20, + 0x89, + 0x52, + 0x51, + 0x2e, + 0xb1, + }, + { + 0x9e, + 0x25, + 0xfc, + 0x83, + 0x3f, + 0x22, + 0x90, + 0x73, + 0x3e, + 0x93, + 0x44, + 0xa5, + 0xe8, + 0x38, + 0x39, + 0xeb, + }, + { + 0x56, + 0x8e, + 0x49, + 0x5a, + 0xbe, + 0x52, + 0x5a, + 0x21, + 0x8a, + 0x22, + 0x14, + 0xcd, + 0x3e, + 0x07, + 0x1d, + 0x12, + }, + { + 0x4a, + 0x29, + 0xb5, + 0x45, + 0x52, + 0xd1, + 0x6b, + 0x9a, + 0x46, + 0x9c, + 0x10, + 0x52, + 0x8e, + 0xff, + 0x0a, + 0xae, + }, + { + 0xc9, + 0xd1, + 0x84, + 0xdd, + 0xd5, + 0xa9, + 0xf5, + 0xe0, + 0xcf, + 0x8c, + 0xe2, + 0x9a, + 0x9a, + 0xbf, + 0x69, + 0x1c, + }, + { + 0x2d, + 0xb4, + 0x79, + 0xae, + 0x78, + 0xbd, + 0x50, + 0xd8, + 0x88, + 0x2a, + 0x8a, + 0x17, + 0x8a, + 0x61, + 0x32, + 0xad, + }, + { + 0x8e, + 0xce, + 0x5f, + 0x04, + 0x2d, + 0x5e, + 0x44, + 0x7b, + 0x50, + 0x51, + 0xb9, + 0xea, + 0xcb, + 0x8d, + 0x8f, + 0x6f, + }, + { + 0x9c, + 0x0b, + 0x53, + 0xb4, + 0xb3, + 0xc3, + 0x07, + 0xe8, + 0x7e, + 0xae, + 0xe0, + 0x86, + 0x78, + 0x14, + 0x1f, + 0x66, + }, + { + 0xab, + 0xf2, + 0x48, + 0xaf, + 0x69, + 0xa6, + 0xea, + 0xe4, + 0xbf, + 0xd3, + 0xeb, + 0x2f, + 0x12, + 0x9e, + 0xeb, + 0x94, + }, + { + 0x06, + 0x64, + 0xda, + 0x16, + 0x68, + 0x57, + 0x4b, + 0x88, + 0xb9, + 0x35, + 0xf3, + 0x02, + 0x73, + 0x58, + 0xae, + 0xf4, + }, + { + 0xaa, + 0x4b, + 0x9d, + 0xc4, + 0xbf, + 0x33, + 0x7d, + 0xe9, + 0x0c, + 0xd4, + 0xfd, + 0x3c, + 0x46, + 0x7c, + 0x6a, + 0xb7, + }, + { + 0xea, + 0x5c, + 0x7f, + 0x47, + 0x1f, + 0xaf, + 0x6b, + 0xde, + 0x2b, + 0x1a, + 0xd7, + 0xd4, + 0x68, + 0x6d, + 0x22, + 0x87, + }, + { + 0x29, + 0x39, + 0xb0, + 0x18, + 0x32, + 0x23, + 0xfa, + 0xfc, + 0x17, + 0x23, + 0xde, + 0x4f, + 0x52, + 0xc4, + 0x3d, + 0x35, + }, + { + 0x7c, + 0x39, + 0x56, + 0xca, + 0x5e, + 0xea, + 0xfc, + 0x3e, + 0x36, + 0x3e, + 0x9d, + 0x55, + 0x65, + 0x46, + 0xeb, + 0x68, + }, + { + 0x77, + 0xc6, + 0x07, + 0x71, + 0x46, + 0xf0, + 0x1c, + 0x32, + 0xb6, + 0xb6, + 0x9d, + 0x5f, + 0x4e, + 0xa9, + 0xff, + 0xcf, + }, + { + 0x37, + 0xa6, + 0x98, + 0x6c, + 0xb8, + 0x84, + 0x7e, + 0xdf, + 0x09, + 0x25, + 0xf0, + 0xf1, + 0x30, + 0x9b, + 0x54, + 0xde, + }, + { + 0xa7, + 0x05, + 0xf0, + 0xe6, + 0x9d, + 0xa9, + 0xa8, + 0xf9, + 0x07, + 0x24, + 0x1a, + 0x2e, + 0x92, + 0x3c, + 0x8c, + 0xc8, + }, + { + 0x3d, + 0xc4, + 0x7d, + 0x1f, + 0x29, + 0xc4, + 0x48, + 0x46, + 0x1e, + 0x9e, + 0x76, + 0xed, + 0x90, + 0x4f, + 0x67, + 0x11, + }, + { + 0x0d, + 0x62, + 0xbf, + 0x01, + 0xe6, + 0xfc, + 0x0e, + 0x1a, + 0x0d, + 0x3c, + 0x47, + 0x51, + 0xc5, + 0xd3, + 0x69, + 0x2b, + }, + { + 0x8c, + 0x03, + 0x46, + 0x8b, + 0xca, + 0x7c, + 0x66, + 0x9e, + 0xe4, + 0xfd, + 0x5e, + 0x08, + 0x4b, + 0xbe, + 0xe7, + 0xb5, + }, + { + 0x52, + 0x8a, + 0x5b, + 0xb9, + 0x3b, + 0xaf, + 0x2c, + 0x9c, + 0x44, + 0x73, + 0xcc, + 0xe5, + 0xd0, + 0xd2, + 0x2b, + 0xd9, + }, + { + 0xdf, + 0x6a, + 0x30, + 0x1e, + 0x95, + 0xc9, + 0x5d, + 0xad, + 0x97, + 0xae, + 0x0c, + 0xc8, + 0xc6, + 0x91, + 0x3b, + 0xd8, + }, + { + 0x80, + 0x11, + 0x89, + 0x90, + 0x2c, + 0x85, + 0x7f, + 0x39, + 0xe7, + 0x35, + 0x91, + 0x28, + 0x5e, + 0x70, + 0xb6, + 0xdb, + }, + { + 0xe6, + 0x17, + 0x34, + 0x6a, + 0xc9, + 0xc2, + 0x31, + 0xbb, + 0x36, + 0x50, + 0xae, + 0x34, + 0xcc, + 0xca, + 0x0c, + 0x5b, + }, + { + 0x27, + 0xd9, + 0x34, + 0x37, + 0xef, + 0xb7, + 0x21, + 0xaa, + 0x40, + 0x18, + 0x21, + 0xdc, + 0xec, + 0x5a, + 0xdf, + 0x89, + }, + { + 0x89, + 0x23, + 0x7d, + 0x9d, + 0xed, + 0x9c, + 0x5e, + 0x78, + 0xd8, + 0xb1, + 0xc9, + 0xb1, + 0x66, + 0xcc, + 0x73, + 0x42, + }, + { + 0x4a, + 0x6d, + 0x80, + 0x91, + 0xbf, + 0x5e, + 0x7d, + 0x65, + 0x11, + 0x89, + 0xfa, + 0x94, + 0xa2, + 0x50, + 0xb1, + 0x4c, + }, + { + 0x0e, + 0x33, + 0xf9, + 0x60, + 0x55, + 0xe7, + 0xae, + 0x89, + 0x3f, + 0xfc, + 0x0e, + 0x3d, + 0xcf, + 0x49, + 0x29, + 0x02, + }, + { + 0xe6, + 0x1c, + 0x43, + 0x2b, + 0x72, + 0x0b, + 0x19, + 0xd1, + 0x8e, + 0xc8, + 0xd8, + 0x4b, + 0xdc, + 0x63, + 0x15, + 0x1b, + }, + { + 0xf7, + 0xe5, + 0xae, + 0xf5, + 0x49, + 0xf7, + 0x82, + 0xcf, + 0x37, + 0x90, + 0x55, + 0xa6, + 0x08, + 0x26, + 0x9b, + 0x16, + }, + { + 0x43, + 0x8d, + 0x03, + 0x0f, + 0xd0, + 0xb7, + 0xa5, + 0x4f, + 0xa8, + 0x37, + 0xf2, + 0xad, + 0x20, + 0x1a, + 0x64, + 0x03, + }, + { + 0xa5, + 0x90, + 0xd3, + 0xee, + 0x4f, + 0xbf, + 0x04, + 0xe3, + 0x24, + 0x7e, + 0x0d, + 0x27, + 0xf2, + 0x86, + 0x42, + 0x3f, + }, + { + 0x5f, + 0xe2, + 0xc1, + 0xa1, + 0x72, + 0xfe, + 0x93, + 0xc4, + 0xb1, + 0x5c, + 0xd3, + 0x7c, + 0xae, + 0xf9, + 0xf5, + 0x38, + }, + { + 0x2c, + 0x97, + 0x32, + 0x5c, + 0xbd, + 0x06, + 0xb3, + 0x6e, + 0xb2, + 0x13, + 0x3d, + 0xd0, + 0x8b, + 0x3a, + 0x01, + 0x7c, + }, + { + 0x92, + 0xc8, + 0x14, + 0x22, + 0x7a, + 0x6b, + 0xca, + 0x94, + 0x9f, + 0xf0, + 0x65, + 0x9f, + 0x00, + 0x2a, + 0xd3, + 0x9e, + }, + { + 0xdc, + 0xe8, + 0x50, + 0x11, + 0x0b, + 0xd8, + 0x32, + 0x8c, + 0xfb, + 0xd5, + 0x08, + 0x41, + 0xd6, + 0x91, + 0x1d, + 0x87, + }, + { + 0x67, + 0xf1, + 0x49, + 0x84, + 0xc7, + 0xda, + 0x79, + 0x12, + 0x48, + 0xe3, + 0x2b, + 0xb5, + 0x92, + 0x25, + 0x83, + 0xda, + }, + { + 0x19, + 0x38, + 0xf2, + 0xcf, + 0x72, + 0xd5, + 0x4e, + 0xe9, + 0x7e, + 0x94, + 0x16, + 0x6f, + 0xa9, + 0x1d, + 0x2a, + 0x36, + }, + { + 0x74, + 0x48, + 0x1e, + 0x96, + 0x46, + 0xed, + 0x49, + 0xfe, + 0x0f, + 0x62, + 0x24, + 0x30, + 0x16, + 0x04, + 0x69, + 0x8e, + }, + { + 0x57, + 0xfc, + 0xa5, + 0xde, + 0x98, + 0xa9, + 0xd6, + 0xd8, + 0x00, + 0x64, + 0x38, + 0xd0, + 0x58, + 0x3d, + 0x8a, + 0x1d, + }, + { + 0x9f, + 0xec, + 0xde, + 0x1c, + 0xef, + 0xdc, + 0x1c, + 0xbe, + 0xd4, + 0x76, + 0x36, + 0x74, + 0xd9, + 0x57, + 0x53, + 0x59, + }, + { + 0xe3, + 0x04, + 0x0c, + 0x00, + 0xeb, + 0x28, + 0xf1, + 0x53, + 0x66, + 0xca, + 0x73, + 0xcb, + 0xd8, + 0x72, + 0xe7, + 0x40, + }, + { + 0x76, + 0x97, + 0x00, + 0x9a, + 0x6a, + 0x83, + 0x1d, + 0xfe, + 0xcc, + 0xa9, + 0x1c, + 0x59, + 0x93, + 0x67, + 0x0f, + 0x7a, + }, + { + 0x58, + 0x53, + 0x54, + 0x23, + 0x21, + 0xf5, + 0x67, + 0xa0, + 0x05, + 0xd5, + 0x47, + 0xa4, + 0xf0, + 0x47, + 0x59, + 0xbd, + }, + { + 0x51, + 0x50, + 0xd1, + 0x77, + 0x2f, + 0x50, + 0x83, + 0x4a, + 0x50, + 0x3e, + 0x06, + 0x9a, + 0x97, + 0x3f, + 0xbd, + 0x7c, + }, +}; + +} // end anonymous namespace |
