Add ML-DSA.
This change implements FIPS 204.
Change-Id: I0043850767c93cc7235a15c701798fee6e1af1bf
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/69987
Reviewed-by: Bob Beck <bbe@google.com>
Commit-Queue: Adam Langley <agl@google.com>
Reviewed-by: David Benjamin <davidben@google.com>
diff --git a/build.json b/build.json
index 9d0179d..9cd0f85 100644
--- a/build.json
+++ b/build.json
@@ -270,6 +270,7 @@
"crypto/kyber/kyber.c",
"crypto/lhash/lhash.c",
"crypto/mem.c",
+ "crypto/mldsa/mldsa.c",
"crypto/obj/obj.c",
"crypto/obj/obj_xref.c",
"crypto/pem/pem_all.c",
@@ -442,6 +443,7 @@
"include/openssl/md4.h",
"include/openssl/md5.h",
"include/openssl/mem.h",
+ "include/openssl/mldsa.h",
"include/openssl/nid.h",
"include/openssl/obj.h",
"include/openssl/obj_mac.h",
@@ -520,6 +522,7 @@
"crypto/keccak/internal.h",
"crypto/kyber/internal.h",
"crypto/lhash/internal.h",
+ "crypto/mldsa/internal.h",
"crypto/obj/obj_dat.h",
"crypto/pkcs7/internal.h",
"crypto/pkcs8/internal.h",
@@ -835,6 +838,7 @@
"crypto/lhash/lhash_test.cc",
"crypto/obj/obj_test.cc",
"crypto/pem/pem_test.cc",
+ "crypto/mldsa/mldsa_test.cc",
"crypto/pkcs7/pkcs7_test.cc",
"crypto/pkcs8/pkcs12_test.cc",
"crypto/pkcs8/pkcs8_test.cc",
@@ -882,6 +886,8 @@
"crypto/hpke/hpke_test_vectors.txt",
"crypto/keccak/keccak_tests.txt",
"crypto/kyber/kyber_tests.txt",
+ "crypto/mldsa/mldsa_nist_keygen_tests.txt",
+ "crypto/mldsa/mldsa_nist_siggen_tests.txt",
"crypto/pkcs8/test/*.p12",
"crypto/poly1305/poly1305_tests.txt",
"crypto/siphash/siphash_tests.txt",
diff --git a/crypto/mldsa/internal.h b/crypto/mldsa/internal.h
new file mode 100644
index 0000000..1c75761
--- /dev/null
+++ b/crypto/mldsa/internal.h
@@ -0,0 +1,67 @@
+/* Copyright (c) 2024, Google LLC
+ *
+ * Permission to use, copy, modify, and/or distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
+ * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
+ * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
+ * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */
+
+#ifndef OPENSSL_HEADER_CRYPTO_MLDSA_INTERNAL_H
+#define OPENSSL_HEADER_CRYPTO_MLDSA_INTERNAL_H
+
+#include <openssl/base.h>
+#include <openssl/mldsa.h>
+
+#if defined(__cplusplus)
+extern "C" {
+#endif
+
+
+// MLDSA_SIGNATURE_RANDOMIZER_BYTES is the number of bytes of uniformly
+// random entropy necessary to generate a signature in randomized mode.
+#define MLDSA_SIGNATURE_RANDOMIZER_BYTES 32
+
+// MLDSA65_generate_key_external_entropy generates a public/private key pair
+// using the given seed, writes the encoded public key to
+// |out_encoded_public_key| and sets |out_private_key| to the private key.
+// It returns 1 on success and 0 on failure.
+OPENSSL_EXPORT int MLDSA65_generate_key_external_entropy(
+ uint8_t out_encoded_public_key[MLDSA65_PUBLIC_KEY_BYTES],
+ struct MLDSA65_private_key *out_private_key,
+ const uint8_t entropy[MLDSA_SEED_BYTES]);
+
+// MLDSA65_sign_internal signs |msg| using |private_key| and writes the
+// signature to |out_encoded_signature|. The |context_prefix| and |context| are
+// prefixed to the message, in that order, before signing. The |randomizer|
+// value can be set to zero bytes in order to make a deterministic signature, or
+// else filled with entropy for the usual |MLDSA_sign| behavior. It returns 1 on
+// success and 0 on error.
+OPENSSL_EXPORT int MLDSA65_sign_internal(
+ uint8_t out_encoded_signature[MLDSA65_SIGNATURE_BYTES],
+ const struct MLDSA65_private_key *private_key, const uint8_t *msg,
+ size_t msg_len, const uint8_t *context_prefix, size_t context_prefix_len,
+ const uint8_t *context, size_t context_len,
+ const uint8_t randomizer[MLDSA_SIGNATURE_RANDOMIZER_BYTES]);
+
+// MLDSA65_verify_internal verifies that |encoded_signature| is a valid
+// signature of |msg| by |public_key|. The |context_prefix| and |context| are
+// prefixed to the message before verification, in that order. It returns 1 on
+// success and 0 on error.
+OPENSSL_EXPORT int MLDSA65_verify_internal(
+ const struct MLDSA65_public_key *public_key,
+ const uint8_t encoded_signature[MLDSA65_SIGNATURE_BYTES],
+ const uint8_t *msg, size_t msg_len, const uint8_t *context_prefix,
+ size_t context_prefix_len, const uint8_t *context, size_t context_len);
+
+
+#if defined(__cplusplus)
+} // extern C
+#endif
+
+#endif // OPENSSL_HEADER_CRYPTO_MLDSA_INTERNAL_H
diff --git a/crypto/mldsa/mldsa.c b/crypto/mldsa/mldsa.c
new file mode 100644
index 0000000..f1a85b8
--- /dev/null
+++ b/crypto/mldsa/mldsa.c
@@ -0,0 +1,1690 @@
+/* Copyright (c) 2024, Google LLC
+ *
+ * Permission to use, copy, modify, and/or distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
+ * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
+ * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
+ * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */
+
+#include <openssl/mldsa.h>
+
+#include <assert.h>
+#include <stdlib.h>
+
+#include <openssl/bytestring.h>
+#include <openssl/rand.h>
+
+#include "../internal.h"
+#include "../keccak/internal.h"
+#include "./internal.h"
+
+#define DEGREE 256
+#define K 6
+#define L 5
+#define ETA 4
+#define TAU 49
+#define BETA 196
+#define OMEGA 55
+
+#define RHO_BYTES 32
+#define SIGMA_BYTES 64
+#define K_BYTES 32
+#define TR_BYTES 64
+#define MU_BYTES 64
+#define RHO_PRIME_BYTES 64
+#define LAMBDA_BITS 192
+#define LAMBDA_BYTES (LAMBDA_BITS / 8)
+
+// 2^23 - 2^13 + 1
+static const uint32_t kPrime = 8380417;
+// Inverse of -kPrime modulo 2^32
+static const uint32_t kPrimeNegInverse = 4236238847;
+static const int kDroppedBits = 13;
+static const uint32_t kHalfPrime = (8380417 - 1) / 2;
+static const uint32_t kGamma1 = 1 << 19;
+static const uint32_t kGamma2 = (8380417 - 1) / 32;
+// 256^-1 mod kPrime, in Montgomery form.
+static const uint32_t kInverseDegreeMontgomery = 41978;
+
+typedef struct scalar {
+ uint32_t c[DEGREE];
+} scalar;
+
+typedef struct vectork {
+ scalar v[K];
+} vectork;
+
+typedef struct vectorl {
+ scalar v[L];
+} vectorl;
+
+typedef struct matrix {
+ scalar v[K][L];
+} matrix;
+
+/* Arithmetic */
+
+// This bit of Python will be referenced in some of the following comments:
+//
+// q = 8380417
+// # Inverse of -q modulo 2^32
+// q_neg_inverse = 4236238847
+// # 2^64 modulo q
+// montgomery_square = 2365951
+//
+// def bitreverse(i):
+// ret = 0
+// for n in range(8):
+// bit = i & 1
+// ret <<= 1
+// ret |= bit
+// i >>= 1
+// return ret
+//
+// def montgomery_reduce(x):
+// a = (x * q_neg_inverse) % 2**32
+// b = x + a * q
+// assert b & 0xFFFF_FFFF == 0
+// c = b >> 32
+// assert c < q
+// return c
+//
+// def montgomery_transform(x):
+// return montgomery_reduce(x * montgomery_square)
+
+// kNTTRootsMontgomery = [
+// montgomery_transform(pow(1753, bitreverse(i), q)) for i in range(256)
+// ]
+static const uint32_t kNTTRootsMontgomery[256] = {
+ 4193792, 25847, 5771523, 7861508, 237124, 7602457, 7504169, 466468,
+ 1826347, 2353451, 8021166, 6288512, 3119733, 5495562, 3111497, 2680103,
+ 2725464, 1024112, 7300517, 3585928, 7830929, 7260833, 2619752, 6271868,
+ 6262231, 4520680, 6980856, 5102745, 1757237, 8360995, 4010497, 280005,
+ 2706023, 95776, 3077325, 3530437, 6718724, 4788269, 5842901, 3915439,
+ 4519302, 5336701, 3574422, 5512770, 3539968, 8079950, 2348700, 7841118,
+ 6681150, 6736599, 3505694, 4558682, 3507263, 6239768, 6779997, 3699596,
+ 811944, 531354, 954230, 3881043, 3900724, 5823537, 2071892, 5582638,
+ 4450022, 6851714, 4702672, 5339162, 6927966, 3475950, 2176455, 6795196,
+ 7122806, 1939314, 4296819, 7380215, 5190273, 5223087, 4747489, 126922,
+ 3412210, 7396998, 2147896, 2715295, 5412772, 4686924, 7969390, 5903370,
+ 7709315, 7151892, 8357436, 7072248, 7998430, 1349076, 1852771, 6949987,
+ 5037034, 264944, 508951, 3097992, 44288, 7280319, 904516, 3958618,
+ 4656075, 8371839, 1653064, 5130689, 2389356, 8169440, 759969, 7063561,
+ 189548, 4827145, 3159746, 6529015, 5971092, 8202977, 1315589, 1341330,
+ 1285669, 6795489, 7567685, 6940675, 5361315, 4499357, 4751448, 3839961,
+ 2091667, 3407706, 2316500, 3817976, 5037939, 2244091, 5933984, 4817955,
+ 266997, 2434439, 7144689, 3513181, 4860065, 4621053, 7183191, 5187039,
+ 900702, 1859098, 909542, 819034, 495491, 6767243, 8337157, 7857917,
+ 7725090, 5257975, 2031748, 3207046, 4823422, 7855319, 7611795, 4784579,
+ 342297, 286988, 5942594, 4108315, 3437287, 5038140, 1735879, 203044,
+ 2842341, 2691481, 5790267, 1265009, 4055324, 1247620, 2486353, 1595974,
+ 4613401, 1250494, 2635921, 4832145, 5386378, 1869119, 1903435, 7329447,
+ 7047359, 1237275, 5062207, 6950192, 7929317, 1312455, 3306115, 6417775,
+ 7100756, 1917081, 5834105, 7005614, 1500165, 777191, 2235880, 3406031,
+ 7838005, 5548557, 6709241, 6533464, 5796124, 4656147, 594136, 4603424,
+ 6366809, 2432395, 2454455, 8215696, 1957272, 3369112, 185531, 7173032,
+ 5196991, 162844, 1616392, 3014001, 810149, 1652634, 4686184, 6581310,
+ 5341501, 3523897, 3866901, 269760, 2213111, 7404533, 1717735, 472078,
+ 7953734, 1723600, 6577327, 1910376, 6712985, 7276084, 8119771, 4546524,
+ 5441381, 6144432, 7959518, 6094090, 183443, 7403526, 1612842, 4834730,
+ 7826001, 3919660, 8332111, 7018208, 3937738, 1400424, 7534263, 1976782};
+
+// Reduces x mod kPrime in constant time, where 0 <= x < 2*kPrime.
+static uint32_t reduce_once(uint32_t x) {
+ declassify_assert(x < 2 * kPrime);
+ // return x < kPrime ? x : x - kPrime;
+ return constant_time_select_int(constant_time_lt_w(x, kPrime), x, x - kPrime);
+}
+
+// Returns the absolute value in constant time.
+static uint32_t abs_signed(uint32_t x) {
+ // return is_positive(x) ? x : -x;
+ // Note: MSVC doesn't like applying the unary minus operator to unsigned types
+ // (warning C4146), so we write the negation as a bitwise not plus one
+ // (assuming two's complement representation).
+ return constant_time_select_int(constant_time_lt_w(x, 0x80000000), x, 0u - x);
+}
+
+// Returns the absolute value modulo kPrime.
+static uint32_t abs_mod_prime(uint32_t x) {
+ declassify_assert(x < kPrime);
+ // return x > kHalfPrime ? kPrime - x : x;
+ return constant_time_select_int(constant_time_lt_w(kHalfPrime, x), kPrime - x,
+ x);
+}
+
+// Returns the maximum of two values in constant time.
+static uint32_t maximum(uint32_t x, uint32_t y) {
+ // return x < y ? y : x;
+ return constant_time_select_int(constant_time_lt_w(x, y), y, x);
+}
+
+static uint32_t mod_sub(uint32_t a, uint32_t b) {
+ declassify_assert(a < kPrime);
+ declassify_assert(b < kPrime);
+ return reduce_once(kPrime + a - b);
+}
+
+static void scalar_add(scalar *out, const scalar *lhs, const scalar *rhs) {
+ for (int i = 0; i < DEGREE; i++) {
+ out->c[i] = reduce_once(lhs->c[i] + rhs->c[i]);
+ }
+}
+
+static void scalar_sub(scalar *out, const scalar *lhs, const scalar *rhs) {
+ for (int i = 0; i < DEGREE; i++) {
+ out->c[i] = mod_sub(lhs->c[i], rhs->c[i]);
+ }
+}
+
+static uint32_t reduce_montgomery(uint64_t x) {
+ declassify_assert(x <= ((uint64_t)kPrime << 32));
+ uint64_t a = (uint32_t)x * kPrimeNegInverse;
+ uint64_t b = x + a * kPrime;
+ declassify_assert((b & 0xffffffff) == 0);
+ uint32_t c = b >> 32;
+ return reduce_once(c);
+}
+
+// Multiply two scalars in the number theoretically transformed state.
+static void scalar_mult(scalar *out, const scalar *lhs, const scalar *rhs) {
+ for (int i = 0; i < DEGREE; i++) {
+ out->c[i] = reduce_montgomery((uint64_t)lhs->c[i] * (uint64_t)rhs->c[i]);
+ }
+}
+
+// In place number theoretic transform of a given scalar.
+//
+// FIPS 204, Algorithm 41 (`NTT`).
+static void scalar_ntt(scalar *s) {
+ // Step: 1, 2, 4, 8, ..., 128
+ // Offset: 128, 64, 32, 16, ..., 1
+ int offset = DEGREE;
+ for (int step = 1; step < DEGREE; step <<= 1) {
+ offset >>= 1;
+ int k = 0;
+ for (int i = 0; i < step; i++) {
+ assert(k == 2 * offset * i);
+ const uint32_t step_root = kNTTRootsMontgomery[step + i];
+ for (int j = k; j < k + offset; j++) {
+ uint32_t even = s->c[j];
+ // |reduce_montgomery| works on values up to kPrime*R and R > 2*kPrime.
+ // |step_root| < kPrime because it's static data. |s->c[...]| is <
+ // kPrime by the invariants of that struct.
+ uint32_t odd =
+ reduce_montgomery((uint64_t)step_root * (uint64_t)s->c[j + offset]);
+ s->c[j] = reduce_once(odd + even);
+ s->c[j + offset] = mod_sub(even, odd);
+ }
+ k += 2 * offset;
+ }
+ }
+}
+
+// In place inverse number theoretic transform of a given scalar.
+//
+// FIPS 204, Algorithm 42 (`NTT^-1`).
+static void scalar_inverse_ntt(scalar *s) {
+ // Step: 128, 64, 32, 16, ..., 1
+ // Offset: 1, 2, 4, 8, ..., 128
+ int step = DEGREE;
+ for (int offset = 1; offset < DEGREE; offset <<= 1) {
+ step >>= 1;
+ int k = 0;
+ for (int i = 0; i < step; i++) {
+ assert(k == 2 * offset * i);
+ const uint32_t step_root =
+ kPrime - kNTTRootsMontgomery[step + (step - 1 - i)];
+ for (int j = k; j < k + offset; j++) {
+ uint32_t even = s->c[j];
+ uint32_t odd = s->c[j + offset];
+ s->c[j] = reduce_once(odd + even);
+
+ // |reduce_montgomery| works on values up to kPrime*R and R > 2*kPrime.
+ // kPrime + even < 2*kPrime because |even| < kPrime, by the invariants
+ // of that structure. Thus kPrime + even - odd < 2*kPrime because odd >=
+ // 0, because it's unsigned and less than kPrime. Lastly step_root <
+ // kPrime, because |kNTTRootsMontgomery| is static data.
+ s->c[j + offset] = reduce_montgomery((uint64_t)step_root *
+ (uint64_t)(kPrime + even - odd));
+ }
+ k += 2 * offset;
+ }
+ }
+ for (int i = 0; i < DEGREE; i++) {
+ s->c[i] = reduce_montgomery((uint64_t)s->c[i] *
+ (uint64_t)kInverseDegreeMontgomery);
+ }
+}
+
+static void vectork_zero(vectork *out) { OPENSSL_memset(out, 0, sizeof(*out)); }
+
+static void vectork_add(vectork *out, const vectork *lhs, const vectork *rhs) {
+ for (int i = 0; i < K; i++) {
+ scalar_add(&out->v[i], &lhs->v[i], &rhs->v[i]);
+ }
+}
+
+static void vectork_sub(vectork *out, const vectork *lhs, const vectork *rhs) {
+ for (int i = 0; i < K; i++) {
+ scalar_sub(&out->v[i], &lhs->v[i], &rhs->v[i]);
+ }
+}
+
+static void vectork_mult_scalar(vectork *out, const vectork *lhs,
+ const scalar *rhs) {
+ for (int i = 0; i < K; i++) {
+ scalar_mult(&out->v[i], &lhs->v[i], rhs);
+ }
+}
+
+static void vectork_ntt(vectork *a) {
+ for (int i = 0; i < K; i++) {
+ scalar_ntt(&a->v[i]);
+ }
+}
+
+static void vectork_inverse_ntt(vectork *a) {
+ for (int i = 0; i < K; i++) {
+ scalar_inverse_ntt(&a->v[i]);
+ }
+}
+
+static void vectorl_add(vectorl *out, const vectorl *lhs, const vectorl *rhs) {
+ for (int i = 0; i < L; i++) {
+ scalar_add(&out->v[i], &lhs->v[i], &rhs->v[i]);
+ }
+}
+
+static void vectorl_mult_scalar(vectorl *out, const vectorl *lhs,
+ const scalar *rhs) {
+ for (int i = 0; i < L; i++) {
+ scalar_mult(&out->v[i], &lhs->v[i], rhs);
+ }
+}
+
+static void vectorl_ntt(vectorl *a) {
+ for (int i = 0; i < L; i++) {
+ scalar_ntt(&a->v[i]);
+ }
+}
+
+static void vectorl_inverse_ntt(vectorl *a) {
+ for (int i = 0; i < L; i++) {
+ scalar_inverse_ntt(&a->v[i]);
+ }
+}
+
+static void matrix_mult(vectork *out, const matrix *m, const vectorl *a) {
+ vectork_zero(out);
+ for (int i = 0; i < K; i++) {
+ for (int j = 0; j < L; j++) {
+ scalar product;
+ scalar_mult(&product, &m->v[i][j], &a->v[j]);
+ scalar_add(&out->v[i], &out->v[i], &product);
+ }
+ }
+}
+
+/* Rounding & hints */
+
+// FIPS 204, Algorithm 35 (`Power2Round`).
+static void power2_round(uint32_t *r1, uint32_t *r0, uint32_t r) {
+ *r1 = r >> kDroppedBits;
+ *r0 = r - (*r1 << kDroppedBits);
+
+ uint32_t r0_adjusted = mod_sub(*r0, 1 << kDroppedBits);
+ uint32_t r1_adjusted = *r1 + 1;
+
+ // Mask is set iff r0 > 2^(dropped_bits - 1).
+ crypto_word_t mask =
+ constant_time_lt_w((uint32_t)(1 << (kDroppedBits - 1)), *r0);
+ // r0 = mask ? r0_adjusted : r0
+ *r0 = constant_time_select_int(mask, r0_adjusted, *r0);
+ // r1 = mask ? r1_adjusted : r1
+ *r1 = constant_time_select_int(mask, r1_adjusted, *r1);
+}
+
+// Scale back previously rounded value.
+static void scale_power2_round(uint32_t *out, uint32_t r1) {
+ // Pre-condition: 0 <= r1 <= 2^10 - 1
+ assert(r1 < (1u << 10));
+
+ *out = r1 << kDroppedBits;
+
+ // Post-condition: 0 <= out <= 2^23 - 2^13 = kPrime - 1
+ assert(*out < kPrime);
+}
+
+// FIPS 204, Algorithm 37 (`HighBits`).
+static uint32_t high_bits(uint32_t x) {
+ // Reference description (given 0 <= x < q):
+ //
+ // ```
+ // int32_t r0 = x mod+- (2 * kGamma2);
+ // if (x - r0 == q - 1) {
+ // return 0;
+ // } else {
+ // return (x - r0) / (2 * kGamma2);
+ // }
+ // ```
+ //
+ // Below is the formula taken from the reference implementation.
+ //
+ // Here, kGamma2 == 2^18 - 2^8
+ // This returns ((ceil(x / 2^7) * (2^10 + 1) + 2^21) / 2^22) mod 2^4
+ uint32_t r1 = (x + 127) >> 7;
+ r1 = (r1 * 1025 + (1 << 21)) >> 22;
+ r1 &= 15;
+ return r1;
+}
+
+// FIPS 204, Algorithm 36 (`Decompose`).
+static void decompose(uint32_t *r1, int32_t *r0, uint32_t r) {
+ *r1 = high_bits(r);
+
+ *r0 = r;
+ *r0 -= *r1 * 2 * (int32_t)kGamma2;
+ *r0 -= (((int32_t)kHalfPrime - *r0) >> 31) & (int32_t)kPrime;
+}
+
+// FIPS 204, Algorithm 38 (`LowBits`).
+static int32_t low_bits(uint32_t x) {
+ uint32_t r1;
+ int32_t r0;
+ decompose(&r1, &r0, x);
+ return r0;
+}
+
+// FIPS 204, Algorithm 39 (`MakeHint`).
+//
+// In the spec this takes two arguments, z and r, and is called with
+// z = -ct0
+// r = w - cs2 + ct0
+//
+// It then computes HighBits (algorithm 37) of z and z+r. But z+r is just w -
+// cs2, so this takes three arguments and saves an addition.
+static int32_t make_hint(uint32_t ct0, uint32_t cs2, uint32_t w) {
+ uint32_t r_plus_z = mod_sub(w, cs2);
+ uint32_t r = reduce_once(r_plus_z + ct0);
+ return high_bits(r) != high_bits(r_plus_z);
+}
+
+// FIPS 204, Algorithm 40 (`UseHint`).
+static uint32_t use_hint_vartime(uint32_t h, uint32_t r) {
+ uint32_t r1;
+ int32_t r0;
+ decompose(&r1, &r0, r);
+
+ if (h) {
+ if (r0 > 0) {
+ // m = 16, thus |mod m| in the spec turns into |& 15|.
+ return (r1 + 1) & 15;
+ } else {
+ return (r1 - 1) & 15;
+ }
+ }
+ return r1;
+}
+
+static void scalar_power2_round(scalar *s1, scalar *s0, const scalar *s) {
+ for (int i = 0; i < DEGREE; i++) {
+ power2_round(&s1->c[i], &s0->c[i], s->c[i]);
+ }
+}
+
+static void scalar_scale_power2_round(scalar *out, const scalar *in) {
+ for (int i = 0; i < DEGREE; i++) {
+ scale_power2_round(&out->c[i], in->c[i]);
+ }
+}
+
+static void scalar_high_bits(scalar *out, const scalar *in) {
+ for (int i = 0; i < DEGREE; i++) {
+ out->c[i] = high_bits(in->c[i]);
+ }
+}
+
+static void scalar_low_bits(scalar *out, const scalar *in) {
+ for (int i = 0; i < DEGREE; i++) {
+ out->c[i] = low_bits(in->c[i]);
+ }
+}
+
+static void scalar_max(uint32_t *max, const scalar *s) {
+ for (int i = 0; i < DEGREE; i++) {
+ uint32_t abs = abs_mod_prime(s->c[i]);
+ *max = maximum(*max, abs);
+ }
+}
+
+static void scalar_max_signed(uint32_t *max, const scalar *s) {
+ for (int i = 0; i < DEGREE; i++) {
+ uint32_t abs = abs_signed(s->c[i]);
+ *max = maximum(*max, abs);
+ }
+}
+
+static void scalar_make_hint(scalar *out, const scalar *ct0, const scalar *cs2,
+ const scalar *w) {
+ for (int i = 0; i < DEGREE; i++) {
+ out->c[i] = make_hint(ct0->c[i], cs2->c[i], w->c[i]);
+ }
+}
+
+static void scalar_use_hint_vartime(scalar *out, const scalar *h,
+ const scalar *r) {
+ for (int i = 0; i < DEGREE; i++) {
+ out->c[i] = use_hint_vartime(h->c[i], r->c[i]);
+ }
+}
+
+static void vectork_power2_round(vectork *t1, vectork *t0, const vectork *t) {
+ for (int i = 0; i < K; i++) {
+ scalar_power2_round(&t1->v[i], &t0->v[i], &t->v[i]);
+ }
+}
+
+static void vectork_scale_power2_round(vectork *out, const vectork *in) {
+ for (int i = 0; i < K; i++) {
+ scalar_scale_power2_round(&out->v[i], &in->v[i]);
+ }
+}
+
+static void vectork_high_bits(vectork *out, const vectork *in) {
+ for (int i = 0; i < K; i++) {
+ scalar_high_bits(&out->v[i], &in->v[i]);
+ }
+}
+
+static void vectork_low_bits(vectork *out, const vectork *in) {
+ for (int i = 0; i < K; i++) {
+ scalar_low_bits(&out->v[i], &in->v[i]);
+ }
+}
+
+static uint32_t vectork_max(const vectork *a) {
+ uint32_t max = 0;
+ for (int i = 0; i < K; i++) {
+ scalar_max(&max, &a->v[i]);
+ }
+ return max;
+}
+
+static uint32_t vectork_max_signed(const vectork *a) {
+ uint32_t max = 0;
+ for (int i = 0; i < K; i++) {
+ scalar_max_signed(&max, &a->v[i]);
+ }
+ return max;
+}
+
+// The input vector contains only zeroes and ones.
+static size_t vectork_count_ones(const vectork *a) {
+ size_t count = 0;
+ for (int i = 0; i < K; i++) {
+ for (int j = 0; j < DEGREE; j++) {
+ count += a->v[i].c[j];
+ }
+ }
+ return count;
+}
+
+static void vectork_make_hint(vectork *out, const vectork *ct0,
+ const vectork *cs2, const vectork *w) {
+ for (int i = 0; i < K; i++) {
+ scalar_make_hint(&out->v[i], &ct0->v[i], &cs2->v[i], &w->v[i]);
+ }
+}
+
+static void vectork_use_hint_vartime(vectork *out, const vectork *h,
+ const vectork *r) {
+ for (int i = 0; i < K; i++) {
+ scalar_use_hint_vartime(&out->v[i], &h->v[i], &r->v[i]);
+ }
+}
+
+static uint32_t vectorl_max(const vectorl *a) {
+ uint32_t max = 0;
+ for (int i = 0; i < L; i++) {
+ scalar_max(&max, &a->v[i]);
+ }
+ return max;
+}
+
+/* Bit packing */
+
+// FIPS 204, Algorithm 16 (`SimpleBitPack`). Specialized to bitlen(b) = 4.
+static void scalar_encode_4(uint8_t out[128], const scalar *s) {
+ // Every two elements lands on a byte boundary.
+ static_assert(DEGREE % 2 == 0, "DEGREE must be a multiple of 2");
+ for (int i = 0; i < DEGREE / 2; i++) {
+ uint32_t a = s->c[2 * i];
+ uint32_t b = s->c[2 * i + 1];
+ declassify_assert(a < 16);
+ declassify_assert(b < 16);
+ out[i] = a | (b << 4);
+ }
+}
+
+// FIPS 204, Algorithm 16 (`SimpleBitPack`). Specialized to bitlen(b) = 10.
+static void scalar_encode_10(uint8_t out[320], const scalar *s) {
+ // Every four elements lands on a byte boundary.
+ static_assert(DEGREE % 4 == 0, "DEGREE must be a multiple of 4");
+ for (int i = 0; i < DEGREE / 4; i++) {
+ uint32_t a = s->c[4 * i];
+ uint32_t b = s->c[4 * i + 1];
+ uint32_t c = s->c[4 * i + 2];
+ uint32_t d = s->c[4 * i + 3];
+ declassify_assert(a < 1024);
+ declassify_assert(b < 1024);
+ declassify_assert(c < 1024);
+ declassify_assert(d < 1024);
+ out[5 * i] = (uint8_t)a;
+ out[5 * i + 1] = (uint8_t)((a >> 8) | (b << 2));
+ out[5 * i + 2] = (uint8_t)((b >> 6) | (c << 4));
+ out[5 * i + 3] = (uint8_t)((c >> 4) | (d << 6));
+ out[5 * i + 4] = (uint8_t)(d >> 2);
+ }
+}
+
+// FIPS 204, Algorithm 17 (`BitPack`). Specialized to bitlen(b) = 4 and b =
+// 2^19.
+static void scalar_encode_signed_4_eta(uint8_t out[128], const scalar *s) {
+ // Every two elements lands on a byte boundary.
+ static_assert(DEGREE % 2 == 0, "DEGREE must be a multiple of 2");
+ for (int i = 0; i < DEGREE / 2; i++) {
+ uint32_t a = mod_sub(ETA, s->c[2 * i]);
+ uint32_t b = mod_sub(ETA, s->c[2 * i + 1]);
+ declassify_assert(a < 16);
+ declassify_assert(b < 16);
+ out[i] = a | (b << 4);
+ }
+}
+
+// FIPS 204, Algorithm 17 (`BitPack`). Specialized to bitlen(b) = 13 and b =
+// 2^12.
+static void scalar_encode_signed_13_12(uint8_t out[416], const scalar *s) {
+ static const uint32_t kMax = 1u << 12;
+ // Every two elements lands on a byte boundary.
+ static_assert(DEGREE % 8 == 0, "DEGREE must be a multiple of 8");
+ for (int i = 0; i < DEGREE / 8; i++) {
+ uint32_t a = mod_sub(kMax, s->c[8 * i]);
+ uint32_t b = mod_sub(kMax, s->c[8 * i + 1]);
+ uint32_t c = mod_sub(kMax, s->c[8 * i + 2]);
+ uint32_t d = mod_sub(kMax, s->c[8 * i + 3]);
+ uint32_t e = mod_sub(kMax, s->c[8 * i + 4]);
+ uint32_t f = mod_sub(kMax, s->c[8 * i + 5]);
+ uint32_t g = mod_sub(kMax, s->c[8 * i + 6]);
+ uint32_t h = mod_sub(kMax, s->c[8 * i + 7]);
+ declassify_assert(a < (1u << 13));
+ declassify_assert(b < (1u << 13));
+ declassify_assert(c < (1u << 13));
+ declassify_assert(d < (1u << 13));
+ declassify_assert(e < (1u << 13));
+ declassify_assert(f < (1u << 13));
+ declassify_assert(g < (1u << 13));
+ declassify_assert(h < (1u << 13));
+ a |= b << 13;
+ a |= c << 26;
+ c >>= 6;
+ c |= d << 7;
+ c |= e << 20;
+ e >>= 12;
+ e |= f << 1;
+ e |= g << 14;
+ e |= h << 27;
+ h >>= 5;
+ memcpy(&out[13 * i], &a, sizeof(a));
+ memcpy(&out[13 * i + 4], &c, sizeof(c));
+ memcpy(&out[13 * i + 8], &e, sizeof(e));
+ memcpy(&out[13 * i + 12], &h, 1);
+ }
+}
+
+// FIPS 204, Algorithm 17 (`BitPack`). Specialized to bitlen(b) = 20 and b =
+// 2^19.
+static void scalar_encode_signed_20_19(uint8_t out[640], const scalar *s) {
+ static const uint32_t kMax = 1u << 19;
+ // Every two elements lands on a byte boundary.
+ static_assert(DEGREE % 4 == 0, "DEGREE must be a multiple of 4");
+ for (int i = 0; i < DEGREE / 4; i++) {
+ uint32_t a = mod_sub(kMax, s->c[4 * i]);
+ uint32_t b = mod_sub(kMax, s->c[4 * i + 1]);
+ uint32_t c = mod_sub(kMax, s->c[4 * i + 2]);
+ uint32_t d = mod_sub(kMax, s->c[4 * i + 3]);
+ declassify_assert(a < (1u << 20));
+ declassify_assert(b < (1u << 20));
+ declassify_assert(c < (1u << 20));
+ declassify_assert(d < (1u << 20));
+ a |= b << 20;
+ b >>= 12;
+ b |= c << 8;
+ b |= d << 28;
+ d >>= 4;
+ memcpy(&out[10 * i], &a, sizeof(a));
+ memcpy(&out[10 * i + 4], &b, sizeof(b));
+ memcpy(&out[10 * i + 8], &d, 2);
+ }
+}
+
+// FIPS 204, Algorithm 17 (`BitPack`).
+static void scalar_encode_signed(uint8_t *out, const scalar *s, int bits,
+ uint32_t max) {
+ if (bits == 4) {
+ assert(max == ETA);
+ scalar_encode_signed_4_eta(out, s);
+ } else if (bits == 20) {
+ assert(max == 1u << 19);
+ scalar_encode_signed_20_19(out, s);
+ } else {
+ assert(bits == 13);
+ assert(max == 1u << 12);
+ scalar_encode_signed_13_12(out, s);
+ }
+}
+
+// FIPS 204, Algorithm 18 (`SimpleBitUnpack`). Specialized for bitlen(b) == 10.
+static void scalar_decode_10(scalar *out, const uint8_t in[320]) {
+ uint32_t v;
+ static_assert(DEGREE % 4 == 0, "DEGREE must be a multiple of 4");
+ for (int i = 0; i < DEGREE / 4; i++) {
+ OPENSSL_memcpy(&v, &in[5 * i], sizeof(v));
+ out->c[4 * i] = v & 0x3ff;
+ out->c[4 * i + 1] = (v >> 10) & 0x3ff;
+ out->c[4 * i + 2] = (v >> 20) & 0x3ff;
+ out->c[4 * i + 3] = (v >> 30) | (((uint32_t)in[5 * i + 4]) << 2);
+ }
+}
+
+// FIPS 204, Algorithm 19 (`BitUnpack`). Specialized to bitlen(a+b) = 4 and b =
+// eta.
+static int scalar_decode_signed_4_eta(scalar *out, const uint8_t in[128]) {
+ uint32_t v;
+ static_assert(DEGREE % 8 == 0, "DEGREE must be a multiple of 8");
+ for (int i = 0; i < DEGREE / 8; i++) {
+ OPENSSL_memcpy(&v, &in[4 * i], sizeof(v));
+ static_assert(ETA == 4, "ETA must be 4");
+ // None of the nibbles may be >= 9. So if the MSB of any nibble is set, none
+ // of the other bits may be set. First, select all the MSBs.
+ const uint32_t msbs = v & 0x88888888u;
+ // For each nibble where the MSB is set, form a mask of all the other bits.
+ const uint32_t mask = (msbs >> 1) | (msbs >> 2) | (msbs >> 3);
+ // A nibble is only out of range in the case of invalid input, in which case
+ // it is okay to leak the value.
+ if (constant_time_declassify_int((mask & v) != 0)) {
+ return 0;
+ }
+
+ out->c[i * 8] = mod_sub(ETA, v & 15);
+ out->c[i * 8 + 1] = mod_sub(ETA, (v >> 4) & 15);
+ out->c[i * 8 + 2] = mod_sub(ETA, (v >> 8) & 15);
+ out->c[i * 8 + 3] = mod_sub(ETA, (v >> 12) & 15);
+ out->c[i * 8 + 4] = mod_sub(ETA, (v >> 16) & 15);
+ out->c[i * 8 + 5] = mod_sub(ETA, (v >> 20) & 15);
+ out->c[i * 8 + 6] = mod_sub(ETA, (v >> 24) & 15);
+ out->c[i * 8 + 7] = mod_sub(ETA, v >> 28);
+ }
+ return 1;
+}
+
+// FIPS 204, Algorithm 19 (`BitUnpack`). Specialized to bitlen(a+b) = 13 and b =
+// 2^12.
+static void scalar_decode_signed_13_12(scalar *out, const uint8_t in[416]) {
+ static const uint32_t kMax = 1u << 12;
+ static const uint32_t k13Bits = (1u << 13) - 1;
+ static const uint32_t k7Bits = (1u << 7) - 1;
+
+ uint32_t a, b, c;
+ uint8_t d;
+ static_assert(DEGREE % 8 == 0, "DEGREE must be a multiple of 8");
+ for (int i = 0; i < DEGREE / 8; i++) {
+ OPENSSL_memcpy(&a, &in[13 * i], sizeof(a));
+ OPENSSL_memcpy(&b, &in[13 * i + 4], sizeof(b));
+ OPENSSL_memcpy(&c, &in[13 * i + 8], sizeof(c));
+ d = in[13 * i + 12];
+
+ // It's not possible for a 13-bit number to be out of range when the max is
+ // 2^12.
+ out->c[i * 8] = mod_sub(kMax, a & k13Bits);
+ out->c[i * 8 + 1] = mod_sub(kMax, (a >> 13) & k13Bits);
+ out->c[i * 8 + 2] = mod_sub(kMax, (a >> 26) | ((b & k7Bits) << 6));
+ out->c[i * 8 + 3] = mod_sub(kMax, (b >> 7) & k13Bits);
+ out->c[i * 8 + 4] = mod_sub(kMax, (b >> 20) | ((c & 1) << 12));
+ out->c[i * 8 + 5] = mod_sub(kMax, (c >> 1) & k13Bits);
+ out->c[i * 8 + 6] = mod_sub(kMax, (c >> 14) & k13Bits);
+ out->c[i * 8 + 7] = mod_sub(kMax, (c >> 27) | ((uint32_t)d) << 5);
+ }
+}
+
+// FIPS 204, Algorithm 19 (`BitUnpack`). Specialized to bitlen(a+b) = 20 and b =
+// 2^19.
+static void scalar_decode_signed_20_19(scalar *out, const uint8_t in[640]) {
+ static const uint32_t kMax = 1u << 19;
+ static const uint32_t k20Bits = (1u << 20) - 1;
+
+ uint32_t a, b;
+ uint16_t c;
+ static_assert(DEGREE % 4 == 0, "DEGREE must be a multiple of 4");
+ for (int i = 0; i < DEGREE / 4; i++) {
+ OPENSSL_memcpy(&a, &in[10 * i], sizeof(a));
+ OPENSSL_memcpy(&b, &in[10 * i + 4], sizeof(b));
+ OPENSSL_memcpy(&c, &in[10 * i + 8], sizeof(c));
+
+ // It's not possible for a 20-bit number to be out of range when the max is
+ // 2^19.
+ out->c[i * 4] = mod_sub(kMax, a & k20Bits);
+ out->c[i * 4 + 1] = mod_sub(kMax, (a >> 20) | ((b & 0xff) << 12));
+ out->c[i * 4 + 2] = mod_sub(kMax, (b >> 8) & k20Bits);
+ out->c[i * 4 + 3] = mod_sub(kMax, (b >> 28) | ((uint32_t)c) << 4);
+ }
+}
+
+// FIPS 204, Algorithm 19 (`BitUnpack`).
+static int scalar_decode_signed(scalar *out, const uint8_t *in, int bits,
+ uint32_t max) {
+ if (bits == 4) {
+ assert(max == ETA);
+ return scalar_decode_signed_4_eta(out, in);
+ } else if (bits == 13) {
+ assert(max == (1u << 12));
+ scalar_decode_signed_13_12(out, in);
+ return 1;
+ } else if (bits == 20) {
+ assert(max == (1u << 19));
+ scalar_decode_signed_20_19(out, in);
+ return 1;
+ } else {
+ abort();
+ }
+}
+
+/* Expansion functions */
+
+// FIPS 204, Algorithm 30 (`RejNTTPoly`).
+//
+// Rejection samples a Keccak stream to get uniformly distributed elements. This
+// is used for matrix expansion and only operates on public inputs.
+static void scalar_from_keccak_vartime(
+ scalar *out, const uint8_t derived_seed[RHO_BYTES + 2]) {
+ struct BORINGSSL_keccak_st keccak_ctx;
+ BORINGSSL_keccak_init(&keccak_ctx, boringssl_shake128);
+ BORINGSSL_keccak_absorb(&keccak_ctx, derived_seed, RHO_BYTES + 2);
+ assert(keccak_ctx.squeeze_offset == 0);
+ assert(keccak_ctx.rate_bytes == 168);
+ static_assert(168 % 3 == 0, "block and coefficient boundaries do not align");
+
+ int done = 0;
+ while (done < DEGREE) {
+ uint8_t block[168];
+ BORINGSSL_keccak_squeeze(&keccak_ctx, block, sizeof(block));
+ for (size_t i = 0; i < sizeof(block) && done < DEGREE; i += 3) {
+ // FIPS 204, Algorithm 14 (`CoeffFromThreeBytes`).
+ uint32_t value = (uint32_t)block[i] | ((uint32_t)block[i + 1] << 8) |
+ (((uint32_t)block[i + 2] & 0x7f) << 16);
+ if (value < kPrime) {
+ out->c[done++] = value;
+ }
+ }
+ }
+}
+
+// FIPS 204, Algorithm 31 (`RejBoundedPoly`).
+static void scalar_uniform_eta_4(scalar *out,
+ const uint8_t derived_seed[SIGMA_BYTES + 2]) {
+ static_assert(ETA == 4, "This implementation is specialized for ETA == 4");
+
+ struct BORINGSSL_keccak_st keccak_ctx;
+ BORINGSSL_keccak_init(&keccak_ctx, boringssl_shake256);
+ BORINGSSL_keccak_absorb(&keccak_ctx, derived_seed, SIGMA_BYTES + 2);
+ assert(keccak_ctx.squeeze_offset == 0);
+ assert(keccak_ctx.rate_bytes == 136);
+
+ int done = 0;
+ while (done < DEGREE) {
+ uint8_t block[136];
+ BORINGSSL_keccak_squeeze(&keccak_ctx, block, sizeof(block));
+ for (size_t i = 0; i < sizeof(block) && done < DEGREE; ++i) {
+ uint32_t t0 = block[i] & 0x0F;
+ uint32_t t1 = block[i] >> 4;
+ // FIPS 204, Algorithm 15 (`CoefFromHalfByte`). Although both the input
+ // and output here are secret, it is OK to leak when we rejected a byte.
+ // Individual bytes of the SHAKE-256 stream are (indistiguishable from)
+ // independent of each other and the original seed, so leaking information
+ // about the rejected bytes does not reveal the input or output.
+ if (constant_time_declassify_int(t0 < 9)) {
+ out->c[done++] = mod_sub(ETA, t0);
+ }
+ if (done < DEGREE && constant_time_declassify_int(t1 < 9)) {
+ out->c[done++] = mod_sub(ETA, t1);
+ }
+ }
+ }
+}
+
+// FIPS 204, Algorithm 34 (`ExpandMask`), but just a single step.
+static void scalar_sample_mask(
+ scalar *out, const uint8_t derived_seed[RHO_PRIME_BYTES + 2]) {
+ uint8_t buf[640];
+ BORINGSSL_keccak(buf, sizeof(buf), derived_seed, RHO_PRIME_BYTES + 2,
+ boringssl_shake256);
+
+ scalar_decode_signed_20_19(out, buf);
+}
+
+// FIPS 204, Algorithm 29 (`SampleInBall`).
+static void scalar_sample_in_ball_vartime(scalar *out, const uint8_t *seed,
+ int len) {
+ assert(len == 2 * LAMBDA_BYTES);
+
+ struct BORINGSSL_keccak_st keccak_ctx;
+ BORINGSSL_keccak_init(&keccak_ctx, boringssl_shake256);
+ BORINGSSL_keccak_absorb(&keccak_ctx, seed, len);
+ assert(keccak_ctx.squeeze_offset == 0);
+ assert(keccak_ctx.rate_bytes == 136);
+
+ uint8_t block[136];
+ BORINGSSL_keccak_squeeze(&keccak_ctx, block, sizeof(block));
+
+ uint64_t signs = CRYPTO_load_u64_le(block);
+ int offset = 8;
+ // SampleInBall implements a Fisher–Yates shuffle, which unavoidably leaks
+ // where the zeros are by memory access pattern. Although this leak happens
+ // before bad signatures are rejected, this is safe. See
+ // https://boringssl-review.googlesource.com/c/boringssl/+/67747/comment/8d8f01ac_70af3f21/
+ CONSTTIME_DECLASSIFY(block + offset, sizeof(block) - offset);
+
+ OPENSSL_memset(out, 0, sizeof(*out));
+ for (size_t i = DEGREE - TAU; i < DEGREE; i++) {
+ size_t byte;
+ for (;;) {
+ if (offset == 136) {
+ BORINGSSL_keccak_squeeze(&keccak_ctx, block, sizeof(block));
+ // See above.
+ CONSTTIME_DECLASSIFY(block, sizeof(block));
+ offset = 0;
+ }
+
+ byte = block[offset++];
+ if (byte <= i) {
+ break;
+ }
+ }
+
+ out->c[i] = out->c[byte];
+ out->c[byte] = mod_sub(1, 2 * (signs & 1));
+ signs >>= 1;
+ }
+}
+
+// FIPS 204, Algorithm 32 (`ExpandA`).
+static void matrix_expand(matrix *out, const uint8_t rho[RHO_BYTES]) {
+ static_assert(K <= 0x100, "K must fit in 8 bits");
+ static_assert(L <= 0x100, "L must fit in 8 bits");
+
+ uint8_t derived_seed[RHO_BYTES + 2];
+ OPENSSL_memcpy(derived_seed, rho, RHO_BYTES);
+ for (int i = 0; i < K; i++) {
+ for (int j = 0; j < L; j++) {
+ derived_seed[RHO_BYTES + 1] = (uint8_t)i;
+ derived_seed[RHO_BYTES] = (uint8_t)j;
+ scalar_from_keccak_vartime(&out->v[i][j], derived_seed);
+ }
+ }
+}
+
+// FIPS 204, Algorithm 33 (`ExpandS`).
+static void vector_expand_short(vectorl *s1, vectork *s2,
+ const uint8_t sigma[SIGMA_BYTES]) {
+ static_assert(K <= 0x100, "K must fit in 8 bits");
+ static_assert(L <= 0x100, "L must fit in 8 bits");
+ static_assert(K + L <= 0x100, "K+L must fit in 8 bits");
+
+ uint8_t derived_seed[SIGMA_BYTES + 2];
+ OPENSSL_memcpy(derived_seed, sigma, SIGMA_BYTES);
+ derived_seed[SIGMA_BYTES] = 0;
+ derived_seed[SIGMA_BYTES + 1] = 0;
+ for (int i = 0; i < L; i++) {
+ scalar_uniform_eta_4(&s1->v[i], derived_seed);
+ ++derived_seed[SIGMA_BYTES];
+ }
+ for (int i = 0; i < K; i++) {
+ scalar_uniform_eta_4(&s2->v[i], derived_seed);
+ ++derived_seed[SIGMA_BYTES];
+ }
+}
+
+// FIPS 204, Algorithm 34 (`ExpandMask`).
+static void vectorl_expand_mask(vectorl *out,
+ const uint8_t seed[RHO_PRIME_BYTES],
+ size_t kappa) {
+ assert(kappa + L <= 0x10000);
+
+ uint8_t derived_seed[RHO_PRIME_BYTES + 2];
+ OPENSSL_memcpy(derived_seed, seed, RHO_PRIME_BYTES);
+ for (int i = 0; i < L; i++) {
+ size_t index = kappa + i;
+ derived_seed[RHO_PRIME_BYTES] = index & 0xFF;
+ derived_seed[RHO_PRIME_BYTES + 1] = (index >> 8) & 0xFF;
+ scalar_sample_mask(&out->v[i], derived_seed);
+ }
+}
+
+/* Encoding */
+
+// FIPS 204, Algorithm 16 (`SimpleBitPack`).
+//
+// Encodes an entire vector into 32*K*|bits| bytes. Note that since 256 (DEGREE)
+// is divisible by 8, the individual vector entries will always fill a whole
+// number of bytes, so we do not need to worry about bit packing here.
+static void vectork_encode(uint8_t *out, const vectork *a, int bits) {
+ if (bits == 4) {
+ for (int i = 0; i < K; i++) {
+ scalar_encode_4(out + i * bits * DEGREE / 8, &a->v[i]);
+ }
+ } else {
+ assert(bits == 10);
+ for (int i = 0; i < K; i++) {
+ scalar_encode_10(out + i * bits * DEGREE / 8, &a->v[i]);
+ }
+ }
+}
+
+// FIPS 204, Algorithm 18 (`SimpleBitUnpack`).
+static void vectork_decode_10(vectork *out, const uint8_t *in) {
+ for (int i = 0; i < K; i++) {
+ scalar_decode_10(&out->v[i], in + i * 10 * DEGREE / 8);
+ }
+}
+
+static void vectork_encode_signed(uint8_t *out, const vectork *a, int bits,
+ uint32_t max) {
+ for (int i = 0; i < K; i++) {
+ scalar_encode_signed(out + i * bits * DEGREE / 8, &a->v[i], bits, max);
+ }
+}
+
+static int vectork_decode_signed(vectork *out, const uint8_t *in, int bits,
+ uint32_t max) {
+ for (int i = 0; i < K; i++) {
+ if (!scalar_decode_signed(&out->v[i], in + i * bits * DEGREE / 8, bits,
+ max)) {
+ return 0;
+ }
+ }
+ return 1;
+}
+
+// FIPS 204, Algorithm 17 (`BitPack`).
+//
+// Encodes an entire vector into 32*L*|bits| bytes. Note that since 256 (DEGREE)
+// is divisible by 8, the individual vector entries will always fill a whole
+// number of bytes, so we do not need to worry about bit packing here.
+static void vectorl_encode_signed(uint8_t *out, const vectorl *a, int bits,
+ uint32_t max) {
+ for (int i = 0; i < L; i++) {
+ scalar_encode_signed(out + i * bits * DEGREE / 8, &a->v[i], bits, max);
+ }
+}
+
+static int vectorl_decode_signed(vectorl *out, const uint8_t *in, int bits,
+ uint32_t max) {
+ for (int i = 0; i < L; i++) {
+ if (!scalar_decode_signed(&out->v[i], in + i * bits * DEGREE / 8, bits,
+ max)) {
+ return 0;
+ }
+ }
+ return 1;
+}
+
+// FIPS 204, Algorithm 28 (`w1Encode`).
+static void w1_encode(uint8_t out[128 * K], const vectork *w1) {
+ vectork_encode(out, w1, 4);
+}
+
+// FIPS 204, Algorithm 20 (`HintBitPack`).
+static void hint_bit_pack(uint8_t out[OMEGA + K], const vectork *h) {
+ OPENSSL_memset(out, 0, OMEGA + K);
+ int index = 0;
+ for (int i = 0; i < K; i++) {
+ for (int j = 0; j < DEGREE; j++) {
+ if (h->v[i].c[j]) {
+ // h must have at most OMEGA non-zero coefficients.
+ BSSL_CHECK(index < OMEGA);
+ out[index++] = j;
+ }
+ }
+ out[OMEGA + i] = index;
+ }
+}
+
+// FIPS 204, Algorithm 21 (`HintBitUnpack`).
+static int hint_bit_unpack(vectork *h, const uint8_t in[OMEGA + K]) {
+ vectork_zero(h);
+ int index = 0;
+ for (int i = 0; i < K; i++) {
+ const int limit = in[OMEGA + i];
+ if (limit < index || limit > OMEGA) {
+ return 0;
+ }
+
+ int last = -1;
+ while (index < limit) {
+ int byte = in[index++];
+ if (last >= 0 && byte <= last) {
+ return 0;
+ }
+ last = byte;
+ static_assert(DEGREE == 256,
+ "DEGREE must be 256 for this write to be in bounds");
+ h->v[i].c[byte] = 1;
+ }
+ }
+ for (; index < OMEGA; index++) {
+ if (in[index] != 0) {
+ return 0;
+ }
+ }
+ return 1;
+}
+
+struct public_key {
+ uint8_t rho[RHO_BYTES];
+ vectork t1;
+ // Pre-cached value(s).
+ uint8_t public_key_hash[TR_BYTES];
+};
+
+struct private_key {
+ uint8_t rho[RHO_BYTES];
+ uint8_t k[K_BYTES];
+ uint8_t public_key_hash[TR_BYTES];
+ vectorl s1;
+ vectork s2;
+ vectork t0;
+};
+
+struct signature {
+ uint8_t c_tilde[2 * LAMBDA_BYTES];
+ vectorl z;
+ vectork h;
+};
+
+// FIPS 204, Algorithm 22 (`pkEncode`).
+static int mldsa_marshal_public_key(CBB *out, const struct public_key *pub) {
+ if (!CBB_add_bytes(out, pub->rho, sizeof(pub->rho))) {
+ return 0;
+ }
+
+ uint8_t *vectork_output;
+ if (!CBB_add_space(out, &vectork_output, 320 * K)) {
+ return 0;
+ }
+ vectork_encode(vectork_output, &pub->t1, 10);
+
+ return 1;
+}
+
+// FIPS 204, Algorithm 23 (`pkDecode`).
+static int mldsa_parse_public_key(struct public_key *pub, CBS *in) {
+ if (!CBS_copy_bytes(in, pub->rho, sizeof(pub->rho))) {
+ return 0;
+ }
+
+ CBS t1_bytes;
+ if (!CBS_get_bytes(in, &t1_bytes, 320 * K)) {
+ return 0;
+ }
+ vectork_decode_10(&pub->t1, CBS_data(&t1_bytes));
+
+ return 1;
+}
+
+// FIPS 204, Algorithm 24 (`skEncode`).
+static int mldsa_marshal_private_key(CBB *out, const struct private_key *priv) {
+ if (!CBB_add_bytes(out, priv->rho, sizeof(priv->rho)) ||
+ !CBB_add_bytes(out, priv->k, sizeof(priv->k)) ||
+ !CBB_add_bytes(out, priv->public_key_hash,
+ sizeof(priv->public_key_hash))) {
+ return 0;
+ }
+
+ uint8_t *vectorl_output;
+ if (!CBB_add_space(out, &vectorl_output, 128 * L)) {
+ return 0;
+ }
+ vectorl_encode_signed(vectorl_output, &priv->s1, 4, ETA);
+
+ uint8_t *vectork_output;
+ if (!CBB_add_space(out, &vectork_output, 128 * K)) {
+ return 0;
+ }
+ vectork_encode_signed(vectork_output, &priv->s2, 4, ETA);
+
+ if (!CBB_add_space(out, &vectork_output, 416 * K)) {
+ return 0;
+ }
+ vectork_encode_signed(vectork_output, &priv->t0, 13, 1 << 12);
+
+ return 1;
+}
+
+// FIPS 204, Algorithm 25 (`skDecode`).
+static int mldsa_parse_private_key(struct private_key *priv, CBS *in) {
+ CBS s1_bytes;
+ CBS s2_bytes;
+ CBS t0_bytes;
+ if (!CBS_copy_bytes(in, priv->rho, sizeof(priv->rho)) ||
+ !CBS_copy_bytes(in, priv->k, sizeof(priv->k)) ||
+ !CBS_copy_bytes(in, priv->public_key_hash,
+ sizeof(priv->public_key_hash)) ||
+ !CBS_get_bytes(in, &s1_bytes, 128 * L) ||
+ !vectorl_decode_signed(&priv->s1, CBS_data(&s1_bytes), 4, ETA) ||
+ !CBS_get_bytes(in, &s2_bytes, 128 * K) ||
+ !vectork_decode_signed(&priv->s2, CBS_data(&s2_bytes), 4, ETA) ||
+ !CBS_get_bytes(in, &t0_bytes, 416 * K) ||
+ // Note: Decoding 13 bits into (-2^12, 2^12] cannot fail.
+ !vectork_decode_signed(&priv->t0, CBS_data(&t0_bytes), 13, 1 << 12)) {
+ return 0;
+ }
+
+ return 1;
+}
+
+// FIPS 204, Algorithm 26 (`sigEncode`).
+static int mldsa_marshal_signature(CBB *out, const struct signature *sign) {
+ if (!CBB_add_bytes(out, sign->c_tilde, sizeof(sign->c_tilde))) {
+ return 0;
+ }
+
+ uint8_t *vectorl_output;
+ if (!CBB_add_space(out, &vectorl_output, 640 * L)) {
+ return 0;
+ }
+ vectorl_encode_signed(vectorl_output, &sign->z, 20, 1 << 19);
+
+ uint8_t *hint_output;
+ if (!CBB_add_space(out, &hint_output, OMEGA + K)) {
+ return 0;
+ }
+ hint_bit_pack(hint_output, &sign->h);
+
+ return 1;
+}
+
+// FIPS 204, Algorithm 27 (`sigDecode`).
+static int mldsa_parse_signature(struct signature *sign, CBS *in) {
+ CBS z_bytes;
+ CBS hint_bytes;
+ if (!CBS_copy_bytes(in, sign->c_tilde, sizeof(sign->c_tilde)) ||
+ !CBS_get_bytes(in, &z_bytes, 640 * L) ||
+ // Note: Decoding 20 bits into (-2^19, 2^19] cannot fail.
+ !vectorl_decode_signed(&sign->z, CBS_data(&z_bytes), 20, 1 << 19) ||
+ !CBS_get_bytes(in, &hint_bytes, OMEGA + K) ||
+ !hint_bit_unpack(&sign->h, CBS_data(&hint_bytes))) {
+ return 0;
+ };
+
+ return 1;
+}
+
+static struct private_key *private_key_from_external(
+ const struct MLDSA65_private_key *external) {
+ static_assert(
+ sizeof(struct MLDSA65_private_key) == sizeof(struct private_key),
+ "Kyber private key size incorrect");
+ static_assert(
+ alignof(struct MLDSA65_private_key) == alignof(struct private_key),
+ "Kyber private key align incorrect");
+ return (struct private_key *)external;
+}
+
+static struct public_key *public_key_from_external(
+ const struct MLDSA65_public_key *external) {
+ static_assert(sizeof(struct MLDSA65_public_key) == sizeof(struct public_key),
+ "mldsa public key size incorrect");
+ static_assert(
+ alignof(struct MLDSA65_public_key) == alignof(struct public_key),
+ "mldsa public key align incorrect");
+ return (struct public_key *)external;
+}
+
+/* API */
+
+// Calls |MLDSA_generate_key_external_entropy| with random bytes from
+// |RAND_bytes|. Returns 1 on success and 0 on failure.
+int MLDSA65_generate_key(
+ uint8_t out_encoded_public_key[MLDSA65_PUBLIC_KEY_BYTES],
+ uint8_t optional_out_seed[MLDSA_SEED_BYTES],
+ struct MLDSA65_private_key *out_private_key) {
+ uint8_t entropy[MLDSA_SEED_BYTES];
+ RAND_bytes(entropy, sizeof(entropy));
+ if (optional_out_seed) {
+ memcpy(optional_out_seed, entropy, MLDSA_SEED_BYTES);
+ }
+ return MLDSA65_generate_key_external_entropy(out_encoded_public_key,
+ out_private_key, entropy);
+}
+
+int MLDSA65_private_key_from_seed(struct MLDSA65_private_key *out_private_key,
+ const uint8_t *seed, size_t seed_len) {
+ if (seed_len != MLDSA_SEED_BYTES) {
+ return 0;
+ }
+ uint8_t public_key[MLDSA65_PUBLIC_KEY_BYTES];
+ return MLDSA65_generate_key_external_entropy(public_key, out_private_key,
+ seed);
+}
+
+// FIPS 204, Algorithm 6 (`ML-DSA.KeyGen_internal`). Returns 1 on success and 0
+// on failure.
+int MLDSA65_generate_key_external_entropy(
+ uint8_t out_encoded_public_key[MLDSA65_PUBLIC_KEY_BYTES],
+ struct MLDSA65_private_key *out_private_key,
+ const uint8_t entropy[MLDSA_SEED_BYTES]) {
+ int ret = 0;
+
+ // Intermediate values, allocated on the heap to allow use when there is a
+ // limited amount of stack.
+ struct values_st {
+ struct public_key pub;
+ matrix a_ntt;
+ vectorl s1_ntt;
+ vectork t;
+ };
+ struct values_st *values = OPENSSL_malloc(sizeof(*values));
+ if (values == NULL) {
+ goto err;
+ }
+
+ struct private_key *priv = private_key_from_external(out_private_key);
+
+ uint8_t augmented_entropy[MLDSA_SEED_BYTES + 2];
+ OPENSSL_memcpy(augmented_entropy, entropy, MLDSA_SEED_BYTES);
+ // The k and l parameters are appended to the seed.
+ augmented_entropy[MLDSA_SEED_BYTES] = K;
+ augmented_entropy[MLDSA_SEED_BYTES + 1] = L;
+ uint8_t expanded_seed[RHO_BYTES + SIGMA_BYTES + K_BYTES];
+ BORINGSSL_keccak(expanded_seed, sizeof(expanded_seed), augmented_entropy,
+ sizeof(augmented_entropy), boringssl_shake256);
+ const uint8_t *const rho = expanded_seed;
+ const uint8_t *const sigma = expanded_seed + RHO_BYTES;
+ const uint8_t *const k = expanded_seed + RHO_BYTES + SIGMA_BYTES;
+ // rho is public.
+ CONSTTIME_DECLASSIFY(rho, RHO_BYTES);
+ OPENSSL_memcpy(values->pub.rho, rho, sizeof(values->pub.rho));
+ OPENSSL_memcpy(priv->rho, rho, sizeof(priv->rho));
+ OPENSSL_memcpy(priv->k, k, sizeof(priv->k));
+
+ matrix_expand(&values->a_ntt, rho);
+ vector_expand_short(&priv->s1, &priv->s2, sigma);
+
+ OPENSSL_memcpy(&values->s1_ntt, &priv->s1, sizeof(values->s1_ntt));
+ vectorl_ntt(&values->s1_ntt);
+
+ matrix_mult(&values->t, &values->a_ntt, &values->s1_ntt);
+ vectork_inverse_ntt(&values->t);
+ vectork_add(&values->t, &values->t, &priv->s2);
+
+ vectork_power2_round(&values->pub.t1, &priv->t0, &values->t);
+ // t1 is public.
+ CONSTTIME_DECLASSIFY(&values->pub.t1, sizeof(values->pub.t1));
+
+ CBB cbb;
+ CBB_init_fixed(&cbb, out_encoded_public_key, MLDSA65_PUBLIC_KEY_BYTES);
+ if (!mldsa_marshal_public_key(&cbb, &values->pub)) {
+ goto err;
+ }
+ assert(CBB_len(&cbb) == MLDSA65_PUBLIC_KEY_BYTES);
+
+ BORINGSSL_keccak(priv->public_key_hash, sizeof(priv->public_key_hash),
+ out_encoded_public_key, MLDSA65_PUBLIC_KEY_BYTES,
+ boringssl_shake256);
+
+ ret = 1;
+err:
+ OPENSSL_free(values);
+ return ret;
+}
+
+int MLDSA65_public_from_private(struct MLDSA65_public_key *out_public_key,
+ const struct MLDSA65_private_key *private_key) {
+ int ret = 0;
+
+ // Intermediate values, allocated on the heap to allow use when there is a
+ // limited amount of stack.
+ struct values_st {
+ matrix a_ntt;
+ vectorl s1_ntt;
+ vectork t;
+ vectork t0;
+ };
+ struct values_st *values = OPENSSL_malloc(sizeof(*values));
+ if (values == NULL) {
+ goto err;
+ }
+
+ const struct private_key *priv = private_key_from_external(private_key);
+ struct public_key *pub = public_key_from_external(out_public_key);
+
+ OPENSSL_memcpy(pub->rho, priv->rho, sizeof(pub->rho));
+ OPENSSL_memcpy(pub->public_key_hash, priv->public_key_hash,
+ sizeof(pub->public_key_hash));
+
+ matrix_expand(&values->a_ntt, priv->rho);
+
+ OPENSSL_memcpy(&values->s1_ntt, &priv->s1, sizeof(values->s1_ntt));
+ vectorl_ntt(&values->s1_ntt);
+
+ matrix_mult(&values->t, &values->a_ntt, &values->s1_ntt);
+ vectork_inverse_ntt(&values->t);
+ vectork_add(&values->t, &values->t, &priv->s2);
+
+ vectork_power2_round(&pub->t1, &values->t0, &values->t);
+
+ ret = 1;
+err:
+ OPENSSL_free(values);
+ return ret;
+}
+
+// FIPS 204, Algorithm 7 (`ML-DSA.Sign_internal`). Returns 1 on success and 0 on
+// failure.
+int MLDSA65_sign_internal(
+ uint8_t out_encoded_signature[MLDSA65_SIGNATURE_BYTES],
+ const struct MLDSA65_private_key *private_key, const uint8_t *msg,
+ size_t msg_len, const uint8_t *context_prefix, size_t context_prefix_len,
+ const uint8_t *context, size_t context_len,
+ const uint8_t randomizer[MLDSA_SIGNATURE_RANDOMIZER_BYTES]) {
+ int ret = 0;
+ const struct private_key *priv = private_key_from_external(private_key);
+
+ uint8_t mu[MU_BYTES];
+ struct BORINGSSL_keccak_st keccak_ctx;
+ BORINGSSL_keccak_init(&keccak_ctx, boringssl_shake256);
+ BORINGSSL_keccak_absorb(&keccak_ctx, priv->public_key_hash,
+ sizeof(priv->public_key_hash));
+ BORINGSSL_keccak_absorb(&keccak_ctx, context_prefix, context_prefix_len);
+ BORINGSSL_keccak_absorb(&keccak_ctx, context, context_len);
+ BORINGSSL_keccak_absorb(&keccak_ctx, msg, msg_len);
+ BORINGSSL_keccak_squeeze(&keccak_ctx, mu, MU_BYTES);
+
+ uint8_t rho_prime[RHO_PRIME_BYTES];
+ BORINGSSL_keccak_init(&keccak_ctx, boringssl_shake256);
+ BORINGSSL_keccak_absorb(&keccak_ctx, priv->k, sizeof(priv->k));
+ BORINGSSL_keccak_absorb(&keccak_ctx, randomizer,
+ MLDSA_SIGNATURE_RANDOMIZER_BYTES);
+ BORINGSSL_keccak_absorb(&keccak_ctx, mu, MU_BYTES);
+ BORINGSSL_keccak_squeeze(&keccak_ctx, rho_prime, RHO_PRIME_BYTES);
+
+ // Intermediate values, allocated on the heap to allow use when there is a
+ // limited amount of stack.
+ struct values_st {
+ struct signature sign;
+ vectorl s1_ntt;
+ vectork s2_ntt;
+ vectork t0_ntt;
+ matrix a_ntt;
+ vectorl y;
+ vectork w;
+ vectork w1;
+ vectorl cs1;
+ vectork cs2;
+ };
+ struct values_st *values = OPENSSL_malloc(sizeof(*values));
+ if (values == NULL) {
+ goto err;
+ }
+ OPENSSL_memcpy(&values->s1_ntt, &priv->s1, sizeof(values->s1_ntt));
+ vectorl_ntt(&values->s1_ntt);
+
+ OPENSSL_memcpy(&values->s2_ntt, &priv->s2, sizeof(values->s2_ntt));
+ vectork_ntt(&values->s2_ntt);
+
+ OPENSSL_memcpy(&values->t0_ntt, &priv->t0, sizeof(values->t0_ntt));
+ vectork_ntt(&values->t0_ntt);
+
+ matrix_expand(&values->a_ntt, priv->rho);
+
+ // kappa must not exceed 2**16/L = 13107. But the probability of it exceeding
+ // even 1000 iterations is vanishingly small.
+ for (size_t kappa = 0;; kappa += L) {
+ vectorl_expand_mask(&values->y, rho_prime, kappa);
+
+ vectorl *y_ntt = &values->cs1;
+ OPENSSL_memcpy(y_ntt, &values->y, sizeof(*y_ntt));
+ vectorl_ntt(y_ntt);
+
+ matrix_mult(&values->w, &values->a_ntt, y_ntt);
+ vectork_inverse_ntt(&values->w);
+
+ vectork_high_bits(&values->w1, &values->w);
+ uint8_t w1_encoded[128 * K];
+ w1_encode(w1_encoded, &values->w1);
+
+ BORINGSSL_keccak_init(&keccak_ctx, boringssl_shake256);
+ BORINGSSL_keccak_absorb(&keccak_ctx, mu, MU_BYTES);
+ BORINGSSL_keccak_absorb(&keccak_ctx, w1_encoded, 128 * K);
+ BORINGSSL_keccak_squeeze(&keccak_ctx, values->sign.c_tilde,
+ 2 * LAMBDA_BYTES);
+
+ scalar c_ntt;
+ scalar_sample_in_ball_vartime(&c_ntt, values->sign.c_tilde,
+ sizeof(values->sign.c_tilde));
+ scalar_ntt(&c_ntt);
+
+ vectorl_mult_scalar(&values->cs1, &values->s1_ntt, &c_ntt);
+ vectorl_inverse_ntt(&values->cs1);
+ vectork_mult_scalar(&values->cs2, &values->s2_ntt, &c_ntt);
+ vectork_inverse_ntt(&values->cs2);
+
+ vectorl_add(&values->sign.z, &values->y, &values->cs1);
+
+ vectork *r0 = &values->w1;
+ vectork_sub(r0, &values->w, &values->cs2);
+ vectork_low_bits(r0, r0);
+
+ // Leaking the fact that a signature was rejected is fine as the next
+ // attempt at a signature will be (indistinguishable from) independent of
+ // this one. Note, however, that we additionally leak which of the two
+ // branches rejected the signature. Section 5.5 of
+ // https://pq-crystals.org/dilithium/data/dilithium-specification-round3.pdf
+ // describes this leak as OK. Note we leak less than what is described by
+ // the paper; we do not reveal which coefficient violated the bound, and we
+ // hide which of the |z_max| or |r0_max| bound failed. See also
+ // https://boringssl-review.googlesource.com/c/boringssl/+/67747/comment/2bbab0fa_d241d35a/
+ uint32_t z_max = vectorl_max(&values->sign.z);
+ uint32_t r0_max = vectork_max_signed(r0);
+ if (constant_time_declassify_w(
+ constant_time_ge_w(z_max, kGamma1 - BETA) |
+ constant_time_ge_w(r0_max, kGamma2 - BETA))) {
+ continue;
+ }
+
+ vectork *ct0 = &values->w1;
+ vectork_mult_scalar(ct0, &values->t0_ntt, &c_ntt);
+ vectork_inverse_ntt(ct0);
+ vectork_make_hint(&values->sign.h, ct0, &values->cs2, &values->w);
+
+ // See above.
+ uint32_t ct0_max = vectork_max(ct0);
+ size_t h_ones = vectork_count_ones(&values->sign.h);
+ if (constant_time_declassify_w(constant_time_ge_w(ct0_max, kGamma2) |
+ constant_time_lt_w(OMEGA, h_ones))) {
+ continue;
+ }
+
+ // Although computed with the private key, the signature is public.
+ CONSTTIME_DECLASSIFY(values->sign.c_tilde, sizeof(values->sign.c_tilde));
+ CONSTTIME_DECLASSIFY(&values->sign.z, sizeof(values->sign.z));
+ CONSTTIME_DECLASSIFY(&values->sign.h, sizeof(values->sign.h));
+
+ CBB cbb;
+ CBB_init_fixed(&cbb, out_encoded_signature, MLDSA65_SIGNATURE_BYTES);
+ if (!mldsa_marshal_signature(&cbb, &values->sign)) {
+ goto err;
+ }
+
+ BSSL_CHECK(CBB_len(&cbb) == MLDSA65_SIGNATURE_BYTES);
+ ret = 1;
+ break;
+ }
+
+err:
+ OPENSSL_free(values);
+ return ret;
+}
+
+// mldsa signature in randomized mode, filling the random bytes with
+// |RAND_bytes|. Returns 1 on success and 0 on failure.
+int MLDSA65_sign(uint8_t out_encoded_signature[MLDSA65_SIGNATURE_BYTES],
+ const struct MLDSA65_private_key *private_key,
+ const uint8_t *msg, size_t msg_len, const uint8_t *context,
+ size_t context_len) {
+ if (context_len > 255) {
+ return 0;
+ }
+
+ uint8_t randomizer[MLDSA_SIGNATURE_RANDOMIZER_BYTES];
+ RAND_bytes(randomizer, sizeof(randomizer));
+
+ const uint8_t context_prefix[2] = {0, context_len};
+ return MLDSA65_sign_internal(out_encoded_signature, private_key, msg, msg_len,
+ context_prefix, sizeof(context_prefix), context,
+ context_len, randomizer);
+}
+
+// FIPS 204, Algorithm 3 (`ML-DSA.Verify`).
+int MLDSA65_verify(const struct MLDSA65_public_key *public_key,
+ const uint8_t *signature, size_t signature_len,
+ const uint8_t *msg, size_t msg_len, const uint8_t *context,
+ size_t context_len) {
+ if (context_len > 255 || signature_len != MLDSA65_SIGNATURE_BYTES) {
+ return 0;
+ }
+
+ const uint8_t context_prefix[2] = {0, context_len};
+ return MLDSA65_verify_internal(public_key, signature, msg, msg_len,
+ context_prefix, sizeof(context_prefix),
+ context, context_len);
+}
+
+// FIPS 204, Algorithm 8 (`ML-DSA.Verify_internal`).
+int MLDSA65_verify_internal(
+ const struct MLDSA65_public_key *public_key,
+ const uint8_t encoded_signature[MLDSA65_SIGNATURE_BYTES],
+ const uint8_t *msg, size_t msg_len, const uint8_t *context_prefix,
+ size_t context_prefix_len, const uint8_t *context, size_t context_len) {
+ int ret = 0;
+
+ // Intermediate values, allocated on the heap to allow use when there is a
+ // limited amount of stack.
+ struct values_st {
+ struct signature sign;
+ matrix a_ntt;
+ vectorl z_ntt;
+ vectork az_ntt;
+ vectork ct1_ntt;
+ };
+ struct values_st *values = OPENSSL_malloc(sizeof(*values));
+ if (values == NULL) {
+ goto err;
+ }
+
+ const struct public_key *pub = public_key_from_external(public_key);
+
+ CBS cbs;
+ CBS_init(&cbs, encoded_signature, MLDSA65_SIGNATURE_BYTES);
+ if (!mldsa_parse_signature(&values->sign, &cbs)) {
+ goto err;
+ }
+
+ matrix_expand(&values->a_ntt, pub->rho);
+
+ uint8_t mu[MU_BYTES];
+ struct BORINGSSL_keccak_st keccak_ctx;
+ BORINGSSL_keccak_init(&keccak_ctx, boringssl_shake256);
+ BORINGSSL_keccak_absorb(&keccak_ctx, pub->public_key_hash,
+ sizeof(pub->public_key_hash));
+ BORINGSSL_keccak_absorb(&keccak_ctx, context_prefix, context_prefix_len);
+ BORINGSSL_keccak_absorb(&keccak_ctx, context, context_len);
+ BORINGSSL_keccak_absorb(&keccak_ctx, msg, msg_len);
+ BORINGSSL_keccak_squeeze(&keccak_ctx, mu, MU_BYTES);
+
+ scalar c_ntt;
+ scalar_sample_in_ball_vartime(&c_ntt, values->sign.c_tilde,
+ sizeof(values->sign.c_tilde));
+ scalar_ntt(&c_ntt);
+
+ OPENSSL_memcpy(&values->z_ntt, &values->sign.z, sizeof(values->z_ntt));
+ vectorl_ntt(&values->z_ntt);
+
+ matrix_mult(&values->az_ntt, &values->a_ntt, &values->z_ntt);
+
+ vectork_scale_power2_round(&values->ct1_ntt, &pub->t1);
+ vectork_ntt(&values->ct1_ntt);
+
+ vectork_mult_scalar(&values->ct1_ntt, &values->ct1_ntt, &c_ntt);
+
+ vectork *const w1 = &values->az_ntt;
+ vectork_sub(w1, &values->az_ntt, &values->ct1_ntt);
+ vectork_inverse_ntt(w1);
+
+ vectork_use_hint_vartime(w1, &values->sign.h, w1);
+ uint8_t w1_encoded[128 * K];
+ w1_encode(w1_encoded, w1);
+
+ uint8_t c_tilde[2 * LAMBDA_BYTES];
+ BORINGSSL_keccak_init(&keccak_ctx, boringssl_shake256);
+ BORINGSSL_keccak_absorb(&keccak_ctx, mu, MU_BYTES);
+ BORINGSSL_keccak_absorb(&keccak_ctx, w1_encoded, 128 * K);
+ BORINGSSL_keccak_squeeze(&keccak_ctx, c_tilde, 2 * LAMBDA_BYTES);
+
+ uint32_t z_max = vectorl_max(&values->sign.z);
+ if (z_max < kGamma1 - BETA &&
+ OPENSSL_memcmp(c_tilde, values->sign.c_tilde, 2 * LAMBDA_BYTES) == 0) {
+ ret = 1;
+ }
+
+err:
+ OPENSSL_free(values);
+ return ret;
+}
+
+/* Serialization of keys. */
+
+int MLDSA65_marshal_public_key(CBB *out,
+ const struct MLDSA65_public_key *public_key) {
+ return mldsa_marshal_public_key(out, public_key_from_external(public_key));
+}
+
+int MLDSA65_parse_public_key(struct MLDSA65_public_key *public_key, CBS *in) {
+ struct public_key *pub = public_key_from_external(public_key);
+ CBS orig_in = *in;
+ if (!mldsa_parse_public_key(pub, in) || CBS_len(in) != 0) {
+ return 0;
+ }
+
+ // Compute pre-cached values.
+ BORINGSSL_keccak(pub->public_key_hash, sizeof(pub->public_key_hash),
+ CBS_data(&orig_in), CBS_len(&orig_in), boringssl_shake256);
+ return 1;
+}
+
+int MLDSA65_marshal_private_key(CBB *out,
+ const struct MLDSA65_private_key *private_key) {
+ return mldsa_marshal_private_key(out, private_key_from_external(private_key));
+}
+
+int MLDSA65_parse_private_key(struct MLDSA65_private_key *private_key,
+ CBS *in) {
+ struct private_key *priv = private_key_from_external(private_key);
+ return mldsa_parse_private_key(priv, in) && CBS_len(in) == 0;
+}
diff --git a/crypto/mldsa/mldsa_nist_keygen_tests.txt b/crypto/mldsa/mldsa_nist_keygen_tests.txt
new file mode 100644
index 0000000..fcdd92f
--- /dev/null
+++ b/crypto/mldsa/mldsa_nist_keygen_tests.txt
@@ -0,0 +1,103 @@
+# Taken from NIST's ACVP test vectors at
+# https://github.com/usnistgov/ACVP-Server/tree/master/gen-val/json-files/ML-DSA-keyGen-FIPS204
+
+seed: 70CEFB9AED5B68E018B079DA8284B9D5CAD5499ED9C265FF73588005D85C225C
+pub: D2FD03F3A1B7F635AF9F34D580A98F524C735BD5BA2355DC6E035BD21765580CBB111923F194A7CC8A7BB2EBC5C0E71AA637CC800E6103B850A539B2A39E1B6D713E5DB8314C9AE1F8BF8A38F06AFB9D73B161B0FFE3A4891706AE26D54FFB496DF8DC0F1983509500C9ABBD28E59B3FCDABBDADABD45EC31499378BDE849E7C1F19B7044D67E05106D7136D95380D5605D4465D877557065DF0A75D3C28542F40FEED42EC7E280637B083D988BCA5F6394E02396C4676184FB63318DAFAF5BBDDE00E308FE84019C2340A3F3E1C0865624970711283356AE14BD6B94D1C9AE188DE1A8A2CA824A8EAE2FE6AFB38D83A2D99996AB21FE3E84C0BE6B6DA08879B677374FA7C691B13D40FA9D4CC26B2288D5A8C9A43724381004D61B0D57FF400314C8E30EE796AF10F7EE21BF13D08180465ABC72EDDB080C6A07184E3EEDC47C19AA7F09D1F3309E183A2BD9B0573DDE474A81BA4F78D0C523D0C04F90060FD571A35C037E079C5E210D7390DF568F2E2F03CE44420C82F3FE69EB9B48EE90962D6B0F24440648F71EDB241EE6566FC1A64CABF66BE6FECBCB1387C82A7BC202D9E367998E2A291AF0CD1570677FE8D63A3285A2EA6EB29AF9DC1AEC1C36C4706B12BAA20839692F286A6E0321468F7479345C4D52FBDB2F06725B554B89E2492612681ACEBC6C7BADA9225818DBC35D64C22C48BFF80A730D0716DFAC99DFD5B8992611D0C93EE90BDB260022AFE25D913E06EFFB59CB1F8A60CBFA5AB2F459A16F467E989525E0A37EBE56E833FDE55DB9D1530ADCF45846DF281E47CAA1E0A27EFDE2107D354CEA0F6A454692F04CD838EBDD46E191E5D9C11839A2C3F488A4FC7CD265A7B5D32B08CBDBFAB9D2CCD76222C8EE37DDCBD2AA063ED861473A6454CAEA377850B1A2B9DDBBCB374FAB5B12F351C8E5888872E5CD1F60A4FAE1FF837D192C22BEB41EE6FA392FCDF4550FF46B5CE906D017EF3077DF132300D8BBFA9BB03C75E79E2F04C284AD06A44399649C3E2A2A8D1EFE9B7A4E0C271047AB75908BFF7DF9E30ECA547745BAE23A86FF9A8B58C2538B88B866401076902DC5F0BD761687B49EAFE36D350CBEDFDD36C121CF23786BFCF7E47076496EAB6BBDA774049C2EBABE2DE99C4C24F2DB73684015B373977496760CF9AC23D8B623133DB2DE10D73FA6AD1C6DAC8434F28C6E251CE7293CFF3F3B61EFCB5A435123670F29846A13DF3EE712604461F1BAB8F4EBC836DE058978AE734396A98081B35CC98188A86949C99270D4709854C5B35B17F48A373134C814CC8A0F3E2FA807F2A918530907864778282D75E03A41B2504EED816A417A3AC6BA16080C39B7310192002A728F7F20395009A9E16767CE1971F5DE7D229A50613369E4382045A8E81901F4DBA8102F3D413FE35B326A874F233B719A7137600D35D33AEB6B7259624083AA968730C8F78292AD28F14EEABE660835984FE69EF23DEC8C327C0EB0B882D587E1EC433DA85C9FD1E0A34994DEA240C854452D18C30F496E49EC904B602E0F5062EDCDA03280A53B4313574CC2C0D5471BC9613BDFD6641F5BD127BAB5B5EB3D499A33114048220E819F8EE12CA922C8F17D9C9F51AD5BD6883B10E6AA2483BA49DC547DA7686151344F4E9099B38E430B5226B059832CF03DB48FB02DBA4E61593DC4576360491890E53EC0E6AC73CF32B25D823B38456E286505A541E5AEEE96B1914F5F76687CE2B0160227ABED77993594BCD831366206D75714082F1C46F1F4439AC81A57AF31C81C555307A070FFA94E0479B784BBD88A60CD4C7CFD94E6AFE02F6B21F72AF0DCD6609D40C965C14E5F2389183E53DE930F7DE1D44215CF49144844E8B87F78A7F132AEFE22BE80B4E3A05EE3A68CCF609EF44047402E4493046E6F9C767FF8A75E28B3CE077FDE7E7EED313B5BF7E460127CA8182E9BC794C0DFA730FB920080575A751B5CAEC85A109B4422BA266743F0D032BDA8F1CA6248CDB917530DF1302A5F8C18DC642D52478C98C12A3F16EF2B62B4F59EA1BB58DE7B65B3C7153CE6DA5E4950746F80E087A0E3586D097791BF36DEF865D68591D39D0903773EEA962147F34704138B54DF7924CDD8C333DB5E1A409CCB2B34E2C3C8C7FDD3FD8D012CBF382AAA85E83A12F235A2D147D035B7B28B34B6F57949F322482A7D4D3B15045C420D5ADDC7F0E69B4DC1CBA58B01D872480B06A260D827D891B13C4C5CA50C748DE3C771BE61E9AA170165CB01F4BF5DA27A7791D3AD3F6267B4CB4E61B28FA1708418D932DFC4161880C5D3B17A9663A9061FA8F1804315850FE4E7306C882B38227E867F80872CDC1944D472615EA4900EF7D270B881D4130F56C5CC980D92A47ADA6657EB6F37A385D2D8CC993E1442EB05281853636991E34AADC68954D04E7ADEF76BF880F059B0CBB55D915A4B123E2F1339A073CBFBC409BEFF6400AE096D5AE18EC42CFFAD5B4980FA35BF03413ADB5D7E6876AC355D1C9ED70CA2B973954D12B3CDD76AC6835DB96003ED8C4E288B71FD77DBAA7635720E12AE0A317DE808C664E317F55275791F3245CA4FE5D4D41077FC150A6E403D5A208E46EADBE8F2CFB8AF472F4A0CEAC015219478E6B86C958CF86525B7485C1734C7EF00E90683FFF5DBD0A7D413A855021026A1B32013A4616CBCD3700ACBC705BE3EFBA625C69A025267BCE9D135E3F5B5CC8C43956407E84B6663103E29C242035551AE797F56C6374BE0C798C0CF398F1ED
+priv: D2FD03F3A1B7F635AF9F34D580A98F524C735BD5BA2355DC6E035BD21765580CE38D1C14F6467C35A9F380D27DE61F7C75031569EA2EC8260EEE9105261B7FE160C91344B0C6764C204E5B8D424650BEC06B9E2E625AF07E23F4950CA24FB4D6EC2C8B3A717C9311EB87279FE25E311F48B8256501F6463412B50DBC89A869BA2241112648400738730212442544575483725033356258423201621183610245665648356120845260685045655512724747212125402221428117650306426152134325243382121135623332074786223150837084264345645148311486246686743371366726014707721161588558387183806701657870647785600288534846622583548804744012574371077544387121142208887223588746148553716773822822741403577328718380781434875207647401607561060861322146156542670820841073130361028650452612166833552584735354526517106000385777812426804146432667410603554128333725230677821516317300087526584634638808846451112405321011181864782241003855754210468343733880078343787413576232688065864853483551585074460588700772013100875488142084166115605685115808058863018286131417220168171786585310622852822615043142885431780580115045688233663636406515244767064536422686750635413347851217808387655142313887566205174085281417213812608124414575018287101002132557042172427861117005304772132030216744315771455710541665741524024371512055116783678252533566424613702232740007068187175780286801721004275522864253158176308640831143305382735303723568704541157314123164326663562151508210302338172127102314227577283771627506887214187313030150715862866288868603270146172271385381703388681378810486573016523140830756821032312850065081630675766511601417121255564811411328826207476424482324775326081758115637483551478685666681732021367522746683445700666477204722285687124702480702542301257137367536005268153335820613732408717615224260185343116457761761566876606554781033631421832160155580423842031312343625273082812547513544126735001001838574424013036127812626811887435120627127515610222281118141666638208675561240065461127440345858781007852572885722222550840041260836462878467805022820771360751443687864313877737355412700540708286880045383432281006435486766501775761275438162403343453887216614704841431466587845820225457315213203024880801371255432720568652468040616835054533737272220680825508472867422361680075518121784448115645071105815511010471621075861187800527264521743234076486730776364875131638468745363842354661048363385214842038251103357468016433402070353221275733465833387438517503660880258758088316360182132261568741110331413053416726535501334808710264868845271442358803557705484287055888683862521827261177885176773005771117851106563570287401340012653451205467518807033356622620070232687726311133333814170622861514731302546511761580741613737061400548877756777665316726666887643583104875706764700436358605203442736486123721610624208608323540355557300610365342714158662558016531018261135468246132583477050060156021168545303687336418886334252015833423288568177555148481201581385041471835707545554552827313602123268321382587028585344867273428418220883610214161712415748852510260736761266172132360325411011226660161632642605186351585131425384566627833354507646508025434157357825430282384745701567517747803152750000947BCA93C27D584E2C66EAC9C7640C1CA217EEF66DABBCB260B4C34300FA051357820F57392544982FD11057DE233E6D2DD84972A7E47D4DBA99BC30CF8F2AD5A2C0243195ED2730FFA92D227D153095972D4B3447FFAC45A23EB41CBC87CDD1250A8A478B0F7A1D5B39AA2206E48645584FE7BF7A13168F482765E57BB924AC6D9A11369F4A6AFFCD169B7D75129B35D5134A31761BB8355AEEED27E201A06313013E307A01A73AEA7955C0578C8C5E5A1A2D2FA4593FACD904C62040BDB9F329933536BF8D81C4256BAAE8723FD4DC66BB5E7F9CA49031A193ECECBB5DC390EC6D5513C79A052B3FD43612FB7375315D8091F79BAB1318F17854561BC93AE0E5CD6D131E562C8114810C939AE563AA10B47CE4484317F34ABD02D0CCAD58DD29BCF657BBD9254B01CA9726091938ED32054B37DD617240F4434C1A4A8711AA3A399A8A5388330B7059ECCBB6B1B9CF7187ADF10B0C9171D3C0F6E2D460A419247672E3B9FEA2C95910BF2FB6A5D61F257453B07AFB64B0BA2758BCD735751F2D53515E236FE8A5B4393B80BF06DF97BDC6380087E6AA8DDE6E098111A7343FCDD1E903708E637EBF28323CDA6B9405810EDCFB3691149ECF224C50F8DF92A94AA4770A0E91466194BB0E27BF1CABF16ADFD351220033F76F5925557BCF9634E9461359621D80B4BBAD7E2A6E432DC43B126CA42AB88AA88F0A84AF58029C99A0248F0C454071F35B831FED1254D6F4E2720485786215F7C7F0C4ED15FA853CD3AA07259B39240A82135C2923A72B876FABB3F0F2C09613DE39D459A07C14E7BA437D8041491FCEC1433404BAD1DA9EE9471E17CB691B2A353710C9FFA4E5178112027764EB7DE809C3E1F1FA4178A5D4DC9EE27857EFF26B91711FC144D5A775B8B50D5DB939BA3207680C242FC821947F934C8DAEE203563D28606BE624A32901932DAE85712AF6C8016026927E9B8129574BE3CB1E95332B052707AC8AA8F435E88B7E568D4987C6AC0E902B0609A02D91B3F5FD3FD901DDD0DB9873BD7C71ED921D4577A78C4FCC9BF075203D38F5E76E74F277484E057B6189004131B0C9B1A155294D1CD3D5208E266901D7D314FACCE7E2AA584583A11E4D7C21B94A32E508EDDBBD7A65AA86B4FDFA6BC285D4CFF53926C7173FBE1F89CC303234B878C6B8101F58AC8D3E5E1BF5AB6B26297CC97B95954AABDB25BE008A3F47E56487B00D3DEDA890D92C83957FEAC6B8291AF65959E1D1FCA3BD196E9FC9E67E0607094822E5B4191DB96824B9F03F2EF57F5238BA7E1E84ED55B7DFF3D6C2C1273692A9A19272166130DB89FC67DC94DB614E3E82BA3A3512B012D51FB486B5A3150B78E724E2A12DE07D8671FBA2DA7FD5D147208FC3AF653E6520FC40871AF2177E65CBD0EAF304217B367A665F224CAEDFE93006AC1E14BCD67A88D171F3D8F3E358A71926BA3E5C239A531263EC9437BF2A033B8B55B2C0CB6E7E97316E22DF77CAD910D20EECE1C50910A5CC32ADAB09377550F92D5BB1F4C07F4A2822338E2CFF5348DF77CF8EF8E6657DED1E0CE058E3CCFBF39B3F166E303D33C3556C9AC8ECB3DF7C74AB36D0F2794441BA9808827B578FB5C29E494E21539AD3AB2B41BF161D7F69589D4524C54C89B486F75D252F541CC63B9E706D64A1289A2306C595363CB6FBEF0A1B5B17AB5B1794BF27036F64EAF0BD430DD58D80010CCDADA4A5A3A1E41A6FBF129D73779A37AE5C8D6841A9993C51E364E04FAC8E25A4E6872F6C860FA265C1C4426AD9C21D26DA8C278546ADCD831F2B8B26D4E1F670623D95C8362DA662D1FF0AB687503F328DE095810EDE12B49EAD1533519558C1E940B46E4EDB027BE9DA2039B25DCF7357E19E5416AE268C14FB3A8BABCB3D23F70CC9D59681C5D833AC22E653D86E22CE822540755D8D243C15213D076C6B26436DDC07C7E001347B0CB8783DFEFEDF275FEC4792686734007F0FF8540811C2AFE6CA151420532FA5526A1074C3D789F2932DE42E3ACFBF94760F426D96CF033FA49E2F458F9A9C2E71DACFE009DD9C3F3C8AB3282D6F383B981C82D6364F0E4BDB2AF6A95BA61F474150CAD7233F8903DF972DBB0328C0CB9D0CCBEF883D2E6ADD180ECA1B662FC1D2DBBDDB3634219E1EFF38B1E52875356C03EADE942055F483504BBBCB4302A417CF6D328ED793B1A3C0969B7B3418F50AB39F83C5666C90E38356F7F9D494A6DCB63D67C34E3D14A4E15596497926C8568D8EC3DBD9C2E82C385BCFB8D9674863BD4FBF1757DB447BF804AE950147C91FBF9AA17891044CCAA73B45528597462CED751D015EBBA9E2B7CDCBE6DC05AA9EAE0C86848A3475BB1C5744F5903EE4A842A469CC181271F245AD70D02A4837863B296B4ADB4E8D03D82B64AA11DD31CDF21EDF1DFE3276C4DBC877E35B15FB2835EC3A1C453168A38CA8E563CF3E9A00736CD5CFBD2841D10F94AD55799C2927E5461B28BAC5174D0CE3F8F7CD7609FBC8DA0C38CC21695CEDAD12F8D2E64951A8996E510D6D52797C5BA0EB4AFA6BF2CC43DA09DE3179E899BD7188B32A98A499D372F3707CED479B0981CB50C0C0539CF7E3100B720E466652A4F499C2BA3A17F5232268730B962BC572C0DE96E8C9E28F7E3532C2224196AA9E27688DD050D7CB7854FB3C35F9C62EFB10DA84833F29BB1BE5EF3B533638EEF743D8119DDC290BDF08B6F0F9E4E1E13446C53ED69805DA26908A15DF1C48E009EC1253BD5A5898EBB5121CC24904C8B10E24E680E565985076FDA11D13FFDFA4DB28AC9F0AEA2F81FD7ED4DCA8D3B2E3848B4D6046F6E0DE3A4F683F25E0605E84B36F483C404EF899CB3FCCBE8CB2A6F0A7E10B1948CD4F93F181555F661D31D426808BBF9F66FD60D649269CA3FE991B22428C37AD2A08680F747CC0360CCD373DC6A9F43A66470E014E72B3D8C38E020442D8AAB974E6049374145B04CB7F3044AAC1EFDAB2A18BB464D4F2F2D8143974C95EEE856D59EC00288ED43FF5CC8803006C995514A2CC9CA622B61BCD75EC51C202A917105B4A4BED1B80146831DCED07EFD2ED25739F54096911B150D3077CCD731A0361682725D53803F8FCEAA83919291EDB4493EC84CCE1D0F82A679236EAD1002AE8018CAC9FDBD246FF093D803C0DE3326A57907B0DD6B01D081458C75728C600829928890A56AAAFEFCF7423B70A6D86B415B8358DD044ABEE00B9C9795FC8F61A64686DF5F876A8F33061599AE830F7EB4C4BFF875F4A936C403C5D160DE5D33CAEE40FB718DDA4478AC6F51C59C2155254BD77671118411E2609D000306FC9507004A31E8957EA40C2564B83C3ABB71A87C11BD18D7891C449DBBE79B4A4FB048307CE0E812B2C68ECAB77FD1111526AB0817306CEBCB0497C552431CE15E4AB52283F679480D69DDDE1F2579CFDBE0BCA95FC5B2DB0C5CC76A31950F5116AAE5F02D46710E4257A75FDEDF2F47CE37C203E7F24D3C9179713C5D807C296149A75CCB444F0C6F6ABDD2DBB2985FE267482858A1E
+
+seed: 4B4B71C5A1BC1074F2167A1D68729CDB9E16ABA3651FF02A0A0F4C883CAAC827
+pub: F8D4945A92CE46DD24D751DA02F068482C69B0DBF0501634C4A247E1ECF98B270474C81AA0D8F45C0E8B5D02751E797D101904586782EA09F4E3A567C2BF5146DFBE766BCF8D0E4EF46016C6ED7B167490FD2F8E9C53CB42660331B1B62810D21477F5C9301D6D054FB076E77F35C1942AAE874669E0957A031223861EB563AD723781105567445B5422B179E4828A4306079C4D42B793A1358B05D02D4565E4AFA2D1CD32B6E7A4224D3A86E8AB79E1DC33A11D99411636F939C3AD0D39351CD057FC6BDB32ECA7427CA0842F70B416DB14518796F68C66E3CD04720DA02B32A3430E0E027F48974602EBAAED0F1FB5763A914CD6DB7C4ECDFBE076B0348DA1AE1F67C63EACA5DD8C27AD54900779952239539DFEA22BE70D54661BFD973D1342F71F6A97CE798EFFF852FD789DA56C867C1FD2317C8174CA0E0787DE99F77D264655A36B1D8589B4C4C1743E742C31AD19539CBF8366EC188DD606392D727A53C3BC4111CE2CD330FA0E484F19324AA5FD577DBB055A3BA6F2E964371C0D4B9150E4EB9155DB871B6A3F321DB2B3EB9E679ADCA62EA6F7DB5C4471F470D42D6C161CC1A43870E7BF845CFA696D71629C21D53A4DE22AE73C39837222077ABD8A1AFDFAB6B4DC5A2D68BAF6EC95621BAFE7257071A62F07848180FE4BDC29CE7CAF2911564BE1DB7DA45EE58852D0457456D19979CE66F3821C30539965E4C3A1691DCBB4AD0E7AA133185D2486860D4A5FBD260585241772B5976EB449A72494637DB59CEF54567F7FED5B0ED618C9527C28C38BA362621CCEDA11A00DEBB824D31C7D5B3599077B9FF736C3245F1F3DCCA6D8D74BA96B195B51CDC1C68E29E5EAD59CDADF5A05B924B2A790F80CFD8B8B17AE1FAD36ADFD77B078C5A535A5293696C7259AB0305C589B2986B6A841F21CF8686D6B186EA538C29C7654A6AD74DAEDCE943627BF5D497CD7611DDD900EFEBE11F9E611F416B0694B621D4EE741CF21759C92BA8BFAC90ED9D274A9EED59774CABDE532D7644D048B83CA97BFDAEF30F0B2400A1BB647C7BC9E60F57451915A0B531E29D21C2007AAEC522F4129A7C251D7FFFAB20BCD5B0563ED78814A3B2047A375DD9A919A3E8FAA0EDFF63E0307EC9CD14FAB372E965324CBF541D99EB498CD093B188B1CB79DD6ADACC1C9E306483BE70C1BDDD1F67B0B86DAF8FD905F7BB6239138A73300C58EE30B6D48244803A5FFA9936B0A06B16EEB2A880FF2FBDDA1A0813006C96ED0B6A30B5D10528CF5AFD45BEAA82369BD8254A1A7250048252EEEA523DCEC9FFF069006B2F9A8653103D47ECF79BDAD2572A11871C018646505164837DCF91C2E22CC55B344990BDFF2D50363FE34A19C5CB46CF0C193175248EC50978F2CEE4E83ED2B7BBFDE4471859017D3418CF3D3822BCCEA6B8D30CF11FF008569D9F0BF462CE6D73F8C119E3D3AB30A68D467CC60A907661FA1DD47FF3977847BE38ABADD7D4B4E1B127EAA131BF3B0B1FAFC57165B69A48500753B9DC141B9819CCD9B4CACFBDFE4E05CA5CDFEA912602CFF1EE04FD2914780E713176AB4383F3CEDAF2C0B5E6B640D3B5905EC8EA9630BD3672A18135701E4140627E98F1BDC78B05D9F2224C59AB3951A0653E6729B7B4BB0035FC964C15086FCE0C6AD85155B940C1AA13428F1E6C20FF95661D283F2ABE3D43C072B169D68C740E67E3CD9D44D80BBF1D455204D3B56F06D9CD266A2A928C918F737A9E475BE20F26D97A3C0B7194D6043CABCB8BD14BB4BFA94D13C0D9BDD4E6B062D4685D22F3DD7A2EA64FAB53A0E06E0E425FD487E333AC6669017492AC45FBB9E2313F6BCBC6E484A5965E9412FABAD6A6FD03675CE1C70158B33E17CD18FB44392F06753D565FBAB2D4CB09A85EDC20C9C12276557B03DC41B7042A0D7FCB5D236BEC4B907F6FCFAC62C3A07BD92EA85740F1A501591FB8D930A527FCACA427A61256F6591DC1F3CBAF19CF3F9B5AB5AAEC97A95BD5D9056F5E463BD86EE03D1CD5A14312DCCC3345958DE85488D1DB2C54D3393B8BBF90C1411A9A8B3BCF9A13305FC5AF52818FCC4039D5C8C6ED87D8C01A089982ECB6FEB7AD09A79603ACEED01CF453B4620CD36E73B76B91924D9BE973C8BA8B5B360998A182F9A4FEF5563A0C5505B18110723A268CA4543039979231FB082A639658B9F5468E1BD16F96A158E0F39A160109A7CF244CAD177B2B1F41806279296E7D6622425B75A1320E7E3CEB2DEBD1F739B29A8A3BEF23D5DD2712A82E320450AACD8E9EEE78A7D019AA09E42CD9923702086829308ADF09C0D0A88B58B2F7C4534F75631AF1A5B0B68552F402481F9A96B6A6A0A14E93E2772EC72D286AAF2CC9EC6450E80F42673A2DFD25C0E0D5831DA8ABD631966DC0688C38D602AAFE8BBAB8FF5FB9003BFE2E45A74A1261598AF634F896CD8F4C04C5FAA6442A788121CE8163A085B4E66308FF572CF005E960C8A21A82552AE6DD1ADDFE08CA37B82DFFF782609F03DC16E0B862398C9FA09DFA4D35510F4BA7E77C0233CF923E4792FAD9C5D7A05FA174438537740EC822B2670BF1F244280A5A7080B21CED5646F5077CB39F23555A112FA1E1458BC45C491D5092B763AB7D291B8C07BBEA2E39982CA19DFF6E4EEF17557E8EF101D808FFB6ED73DAECEB77C4CFA2E391CEA50F1A75801C2D34407AAAC4B5138B4632A710A40F39BA7ED36454E0B054E00BAFC027D01303273DD2289E7666D98C3B602CFAD31B7680E6B1572
+priv: F8D4945A92CE46DD24D751DA02F068482C69B0DBF0501634C4A247E1ECF98B27B870452948D3FD91DFABBA184B7778E2223C610196918C5AC471FFE27C45C216906A32E421BA0C8EB43BDE774C8151020BB33E6DD3CCB67E07FF1508A591C40F29C4F4E03C0761DAFAA6C4E4D7515D3D044F7E5D9B6F76C3523F07B86B966BC2050273654131572050232540265501410321121824027783508650550741845227675205140764772006807238701150672363522380823186775485346122741232101846044762034061346508846856004508217531847506553422270003465001318843366570722341256676412710345762503442766148802031700065838665810155802123526425443477780225517686668627385732838374183830578328430875075738806006057215372237255330206645686206532007402436187730431525465867647825811554786647043104375540063472868467521138444506855840850622072745156652883730438734305732524737387063014705036441133615604518408815122131125202504810267182170514218811002085201254838156820201088584847214346753735887361787368723385680274880675716073083468858754024781441460451718621650764072470876430018540463314037653043260254403334013420554376741651526887384367232437772872571236432846113158844048402448026234443446356631655624571084504437148135030305335563616217056075630605830233420552628432373442580105268442188606664005688153573261574404273251112701374300315715427425557365723036707713333154501238558575528577180345582234204444027511078611230842318434676756513328416871728302630727767221615188778420705148760282006015420340813653580172668162025543061257714607056886527838253463775286557467874302385541175163873125403136883123024782644056005776454050450463856458231030266773238561883245373725805362358236861886558048054373517006153723263352805784612747766872528551515675467320836133213785558662842164780507124010780705382731865322261671658563251820625605486727154222632331845371780377110620406316868745534211605053684662067164782272500355338031585232841457166288521403104854878437265654262373837268281560786012704588254043617732675622047062353066104016602755704578677260376636082632526506057173816361868253348168171755151062823522066020418818632307513542804243556317063765822868038468506613448543036820231730106212347485234367884828616827033357121850832050360848747865116708334325478114764064545882530235517784101378158280387668200424153038757453662564868561401622005841426338428326845853813752150205647048731768316114171432031210530176405308626212315625877622410617144857321075301351544462610553051243543667566675865335022131344837646363774338358017020828322812301042686502414653278867536671246033825211786357550517555870412326345585188457210000315518722276643085112001162624655523063655320741885067301234547663482785273242871867433610317833314257358238168035870421442233173234774652833582072540045143452135211450447284405865524301678168533008608553068110010402510031273465112253237686727627477608688360860655175382170833104267041778753258183846702848155552758183213003518102058824468267721170670211086383333614167717873621734000234476376137205763060645015200727731656541667312526120835206388554240354487387761200858280506664805026810157822733523020574251831872646604616365770712618804337567105781AA2BBE68AEE92FFD1BE88D01DD90EBC8D1A9F5DA65FB482FA23E92A0BFFAB2416637956B1A4F7D0E392B910710069FD0E18EB26E6CA741ED0915FC9FCE0C0EBCCA45C7BE24649829B0AC3A43C4CC2E4CCECC827FD3191515DF2A120359341577BAF0BC05F8358D518A57ED3033A73B8230E8B23F627F6145AFB0ED0742146C61A21AA6CE40AC75928F007F39E2696383FA48C75694F106E623B6F41E070D0E985E9D542BA2B5F53A47B00CB6472F9D03C3DBDD1C113B08128105F6FCB281C302C0410C32234E0E9F279AE96F3CEB0B0A490443A8CD46BDE80AEF7B1BF7DF48F98215B2F556D0EB916695417DD643C93AD1D703CB238418C6199F7FB4936CAB6490072A245577FECAFA7507A2ABBF3E2D185D9DCA22CEAA93662168F43ECE8421B7A9A5A2226227F22BB497615426881EB9BAFAEB7E14A177AC6102425791A1511FA9BCF2B3E453CA701D0C8AC45714541A0478353173A6EE57078F1059517910BCCCF0C9842483CC8E5D35166AC13BDD7D9C760819752AC40CC61528F4A93749BF5711216101CB0EC79B6E0BB92D4F9042DA176E6C175EA1B2738B7A6355551AF4C11AEB5BA92ECDF28E521E1730598E480A6EC130C65388FAFAF5BD3F43F566D0206A6CEFFDC01AEFBF52B46BCCABCE80AF453D1CE840B3157D4B1D15DDBF0E864939A5C411B471A9077E5785ED9928EE1C05E0BAE9D4FB8C9B0B7A814A23784B04F63BB5A533AEF4C186217A24302E706AF88D4F9E85B71CE427D19C149E01AC698EBBE6B5CEA2E3A43DF2976CEBEA3C96424D2FDA27DC3DCD7A36990CE7B9547F247039E83194E34B3DCD90D65D3641AD5B90C4114D0441FA46FAC16A9F0691B36B39012F2361EE0B87C23FC454B21205AE0D7E6D9C162061924C2513C369CA744DD2DDCF9C0C314413D4898311080757309D5AAD1A3761A3223B60F66B0E392F821597A011188BF35B25002C298F01D6A5463D3176E1C7FD0FF1A70E112ADF9230E9FCC9C423E310E67C35860A09CC4D3DFC4EC0B16AF467373FAA59D0E326D82B6054382476A1D47CEFD2709EC829E3B29AE0C09E6B41DD540CEC37F0032C949B9298ADE79306E376C6184FBF7440C14D217B1A557886CA79AF8625DCB9142126A70FAD6F813F3A5625F2E138E625D38B399E20AD05D682552180FEEE5C1E370F2B6E6D5720AD313B98BFD466468C727DC1F2F1CD141DC7CCE3592A46FB3C63302932B832F309AE30E6714AB952AB84D76A59306D05E1251171F8C7F8B7B2ABED123D47428741A8583EE5B8E973950B4F5C754DA4679F3A06EB18115C3049DE8E232AFB65747C0AEEAF5716FE5B89AD6ACE90F8CC4E137A8D9C65CC3A98C7FBAED0E7451A8F623890538DA9A7B821D8CD9F49A1AAC810EDDD7EE00AA8CF342F0491A50E617DCD535242D54F0EE8392D1B8BF7D69C81FA335FDF4AE163A1BB7024EE883DBFF9A1CE154F4316D6063DC7283F151C4ECF5A9E8D1C25D0238CAB9A925788FFF6BD68519713694B231A07E826CFB6F3910428E3219116782E07E132228B558CD380591866C028E1F3BD2327BF7C61FCACAC8485EB43213C20922252B2931861E077712CBB5701876BCF66FAF1CF6582D4F4EB87CF82C1B7807A255E73DED3A7FEF23139DE96AE800C2922246A54F3F3A6EBA2C8E8388DBDB41A4131A69280924F6D7C13952ADF9F6131C1D6AE6A3A085F8FD5E4A45C2951A8D65C345CC067B13CA32B1A6C28A6359C48DFC119FF7AE92054169DAC29119508F17FFB0BC925E357AF70B85C214DB0368E1425AC878978C346485CFEEB9935BD94D203E271C2EE9EFFC63C54B6D05C15EAFE0D0D562C458B0C7EB0D84CC123FBC30EAAB78B47F9CB11AD7ACB54221F56998177D85EBC62DEEA042E411707FA78C545445372461BF5D4C9E4B5778BDE3C9DB02F697965D2CD2A10BE66AA9DBEE728B52A9117C53A5A2D90D59F86D8A601436CA41D4A99E3C2E66261E37A3A5B7D4DD21CDD46EB4C62268520FFBBCAA8BF3DE714652CBF83E7E2CD57FEF6ABF8946392A33D984FE1CB1A08FE5DD088F974499B704D94F0646C7977DCD7A75E8012CA35E39CA7EE7AE1C0C27013A32DEE29CD141379DA504CFF6ED8853959840E829170D2D15A265CD9A8BA48718848473090F40C1BF3DD4159267324BF9858400091FCE515D541F6608D395DEE9C5F673375E443F104339F444C4819A630232EA7D413CD8A3556E60D7D20ED42E45CBE335AA1EC684CEBE7B32C5BF4F68F969932961930247E2A9F279F5C587120879F3F61025D6B6DC617C9FCA4AE8034B00C8DFD6797061A36C12979E85F4AA7C9F7E57FAE4AA44DB1AF6306E982A723B6F58E9008B4BCF4A948FB131D08AFEA9B4BD093CE76F8F6366ADF4EBA4E31FC5EE6DF22E1FF1370C81937D29007A9138904F569B95A38C5DE1BF03711C9D41FC0E72744426EC510E600D1231C99C7FCBD91EEAAAAD1EE8A27544D0AE7871B4B881D80DEFE22F3188C250AB8760277BE2295157BE5F33201233B53E2348661384134E6A9BD89E8F85B2F4E217368FC86161F491413C8959DB67AA5D51DED0854FA779AD305E3A6895542CD84DA2E8F4739585F7AF91DFDDCB35F7E8C6F90D1EB810D8ABD36334AA02E84A4CB0DF03961F5AADC0CFD45A7F59678B06204CE0613F040F3DAFCFF3D59C56B655A3D3A0359340A0F91AB9AB1A17621A1A57AF588C31385D44667E9258E5870756AEF7AD2E2B3E3364BAEC218E0D6BE14EA5139FD672755F7942F4BF9E023ACF94B1E15C58298E29B958276F0C4F04631D41D99559E7A7483AA39252647D8600D33A4C8624D9A663AFA8C927808072A4C6A63B92A76F76A79176261D9050E890D52CA68279AF0B09B443C001A4092531BB8E251F7ADCABF4E49DD1616F42528CD67283F2C52479D7DFF2F383AD7EED58C1621E4DAD50AC9C9FA5096ADB9EAE77B19122ACA00D48E967050303C93D90976A3DDD5B3BA4A816CF0019B508DB2E65CC47B187C78432E41DC9BAE328EC529DC3F6C6BE048CA843832EC04348421113A02B60B35CA66132059D4D5EC297E9B92E8AA3130E30DAAD74EE7E021541F0B3FFA72DF618969D18B7C6936242555FFF1161D85C033BBB934894825BE9271EAC5A445363743F81C46315F547995D6925FE76BE6B7145D022AD1A015C0B8101FE30A81D363B2BCD627BF178FF12023F1BD82665393A49BFCC5AA1F1C4FA318736A301D00DD5D015A14640B91E104C814056892DE7C624240C06A3C5AC14E565FE5FC6170BF315913CA6F5BCBABEB9C110803E12D81CCBEF3C48B0DBBEC02F8616227CCEDCE48437D801861964934B149CCF34FDF7D60D29FFB46854CE5F3929AE9B6C051C6825399B9EC10A9BAD1586D2E75DAAC68BA2527B021E3153F419B0AC23A961799F016A37572C91EF790635A1D7B7E7968AA570B5897C6CF03395B5FD2022114BA84DF417F8F105810384BAA41EEF2A5B0C7C3E320237BC67DC36809CEE73AC388FC9A0873B2AB63B638AD364F28B1B7D002EF2CF5C
+
+seed: FB27DBBB4ED8F4F7D2700283C2B092866694246932EEACEE72DB730EFD172576
+pub: 0FB4B45D59D6BA35576D1F75ECF682E5C901372E65678E959DD61F6652AE3F0533A0BE6A3BEF98F0A550CFCD43CB1CB9ECC3F4F7DB656C9FAE8122A0A88DFA6262F3B11454457167C1DA30042867A37B26AD62D594591BDFDB36B833DC83E4B8109CC2EC0D4126D24B2BEA48781FBFDAD7659F1D8E60987B9722DA54627EB895226B360C61FE3F2A10A69CEFABA3219AFACAFF22FF5BC7B564B01A65BD698AED8A7AB78812EA6960C2B766783ABFB85613B069A7CC173425F701B62238FEA489407ED3F2ABBF538B1184996CC7B9AF15FB5754928F552AF73696B18FEE24038A1E9A11DF0C78ED6814CEF3671D60DC38D483DAA6A6822FB4381FC036C805C8D2B7151BC6A6B12466211C0E1EE663BF4EE737F4D942881E9675FD7D87709B5F473054834599DFA499306B3E727EA6FCB7990E0ADF348321DCBFF6FA886C5846B1D05F5E08C6C4BAE416FBC7ABC1867082834616E3B4757616E9B7E04E2013B534258015E06A114192F48E3C5F0E6A48775EC05F554D69843684FFDA6A2FAB8F2138817596115832AF77A10E43A4FFE98DDE79A9F80C0710E5450B681D620BCE626FD0932B4D9D87BE222B7D0D8FD010172F3C5BC2353F44C08470871E38EB3DCAA19C92D3D028D61662C54EAF7ECA32C0D48F4AE0B2FCB0F517000A8BC96A76648347687815254ED5905A1B4A2ED4E43364B48886FDD5B86F90659AA03B2AD85B54D3E85E3380FA2E050120F555FBE241B86E481E020BD0AC3445CCE71D9F8FF56A7475B073F1F388454B3605EA18A5E183831C948241DA34EA3E1112BC706102854423A4DC16D9D3A79BACE600F8098AA60744E1C7FE18A047BC7646DA4A569E0A8C41D0587053A22209371E4BDF5A7CE8241D97670BD81E7FC61069292BBAE13D8F729B7F5C2ED3E90BCAF55DCDE5B20EF92E1E7A159B6205E7ABF72571F02505526928DB09F65562D628443925E7DED9586393DDEB4E59874077CDD4F7FD4CE68D2CD311DE78B245872AD56078CF3DE1D88FDCF541AF7D6CC69A1C96C2E5763BE310BF77283A820359CDEE43B53B2F004F2FA2F1725BFA6116AB9A8F37FF4011106D1E65C6A3828AF1E92671953C26ACAACBC48031D7E9919DA915B9E5D89556FA82E9498A0BA980892B9B9427B848D095A0BAF3857B6D6969E99CCC337EC6E166B1E1F55237BECDA10256C8D97A38B21986AE06DA7C80A17F84BC448F9539BF3630D7D01E12E80B616F5F98C47170DF5E16450D393CC4542FCA66359D48B1C29D4C997C6FEC087540AB588663F5824A4F09E5871A78E06C18D3A708CBCD7B4A957BB69818D38BE03888BBD62738DEBA58E3A6DB3FFE477A5EE262297F96C26ACF7CC419CB7F3EE8D09E47AC1B134B6AAC3191F7F586B507F58FF9AFD67FCA0C10E7676ECEEC78132EAAD0F8B91588C62658ABDBA03C9FBB0630B2E9603E5A93F9A04A3E07A09FA0B3AC4861D368ADB53E8FCA932F997952AFC5DA4058C48AE6F9B634B624E50D2DB8E3CFA23FE41C2B88C3C588FB22066A0894893D4FCD55FFEA4352F8A27D7714A18309B7997CE71EF16ADA021FC52F3652561A1D6518559C250CF1E35D109B04408C998E457F06F73349CB8BECA963EA4DD65826141A59FE60F1DE7F8D8A67F5873A7696E206E4EEA9FAD9FE00C97A07F7D7DAFF316CF85BC1A465F61A381B2EDB3EB4053B8F134B75DF5C6D133E7CF38AE416D24D4AC66AE61DB1F682A6B42B26A421E7497FADA9A97717D2A9D7B028FACF01CE14F3F834D84264E688BB7C0305EF9EF28D5A0A491B0C4AC763FADC1E260790E0EF2A70E6BC78A6D3A136E0EFA5D86C9C0993F3E91F5AE6DA55BEC8425F1838298F63601B4E9E71AA12C07D2FB6C0CC5661BEC9A0D929FAFD8AEB545B729C7BFF035E67EA7377D2162622018F54F780289FA8BF24F9FC2E85D06DDACEB91D064D4DDD3969FC213AF6292EF7FCBADA5CB3D5D1B5833CAEF100EC657056B69324F2E5C3ADB519120193157505F5A0C1044C0034C03A664CEDC465C79BC2B915B749AD0DC2E88DEB3FD6BFA8EE42631F22938D735186CAF7F273D9C8361851028362F54A9CD50536E31BF835D13DD4435911CF01B1A8E27339033690C35C311760DAB34E391FDDB690156FA47B169043E6D5E1AB721619CA3B8095194B7802A7FDEA8DCAB9F43BCFD1F5893EB4F58EDF1C0B9DDD0BD4615FC1EAEA46C68BB84697DF3787775E4DF560B1A43FBC7A33A3E084ED97E59C000529CDC1F97EB92E9DB331EB207BA478E3457D1648084D267C0603135B8DACAF2C15B42299DA433C0E5225C934DADA9B701751ABACF9FC47D90CEE43A2FA47F6D05D169623B369A7133D0F73922B2EB869E91B5737FC3A2DE03A3A92DA98A253C022B4466DC591772D39E04CB1E4F176C1A282BA15E912E2E5C8D81E00F92A2FB8BBB16D6B7733A785F620BF52557B3C3E87EBF625B4FB0B7B65101053532EA099A1B0264DB218EFC19BA207203089CDA1FC2B32BC416C454A4BB977FC3528E423A3553ABE4C48DCF662BA7F5B7E1B2A4E2DB9A388EBB0E39BC229AF71ECBF2F40727D6CD39C2FCE2464AAADEAECD47BD08FB1FA5B6627D274E3D31C078FFA3C3ED29980941CEEF8853704262B23DFE88780FD9CF259EFEEAB01255F0CD354A473848798CC5C1CDE63AEC6AF2EF078777CB67A4BADE7C3D5F345111FC73261B55E8E257EC5824CC829B5F5EE31D4ED03A16590396E2FC381A7923E81E3F582252EB19A7D61ECFBD72F0C3C16FC79
+priv: 0FB4B45D59D6BA35576D1F75ECF682E5C901372E65678E959DD61F6652AE3F05E8F6C5312F27292980146AED5BD4CDCCCF105C59DC052E9A5604839CFBE13920A93E9DAD0A618E59915ED8D751E04CD99BC661E5EC654FB33C82AD84ECA806453B9145C9335E1A95D987D85954A8DB9BDA8280BA76402E489AFC07D90DF7567C36560273017280466156464484345270285178305711250242618355037451272805831334710075688556205675635811344085746515547468075008004432316642077378448408234860066117021246184447148263433760087826350221845428303755534425555717783464144721524485283480133537526651561143130746043842062162336620037333860708821510700458474260707108783552112553517880140325080003741440347208756274083066034241155117413308076178401187304037688762030146873725228304172627873352187338032728273353058572467830523107526832557771072150587632044015331378888724574122703235400051288424471463017425114740686283126323770788487586151073237435056574117185656340627503508855871406032154132457173517406070365623071357215822006317662446377112741371334240268625017522547202654825346782030134741711776706347452824240741863480127103262631840235133582166006304237018151562258370018144006703338563061314556680178581266374583457127838148005138183311168871835130403368588740370785287432187408630065074371213480444706406001571542517601870046628537585864013505382654286745611688562826411460181216012170130671033666664050228621047288450184107351840765645803278162817607642382073553002556568788426586683475530285773666151835665516303380616363227666858618761871385373345822418160086702271023726638411777186012145217307263853282062146678035810787254502315346844448377284120122775352576074324353408540721484446660113184477760757722801866776724528834717535547588852626733700730625755854828563408352458634703417047181611758852002888110270451664011082677250413015718850326577835815683880356606382152683807252371042722116282841206422056134168747282480661425448572771268256417857244404004266015646767320855751075500451662804257710454343255256810735615778555006233143718626653125262772466865157188155020522535172225206165001848253325225481217513861451643867711572822836715814443656054847322127382261373454384541346144146522301347070057540552088832373200502381445727625633138630426301227580101874474535184582276070136541128502418006160228766041816107568722737402742376833648820075260766071780446008477251682432221347088684304624471851307716637632473404150070457208081263267878825854610503616057514005155454106025132382716413517273075776773481460567806534468274677273732307402176400528254003850741282758634420707000148538120762573172316826678588360778452648825333124015705775726667545085706211188383356315880631315705723620874123576711420723155615800885213201562654580242880636273014718214588481101167063874558732715713124774232421012565602130506631727226611188335482535363622858870107022383508628013502852406025771446035382361661005267412153785415157213823542604756172745743260401151135822128877563768657521545878000334705788040273517532403014046181623871830487143472731360310027464080371511476477842670552846448716276586070267871218265501785588404888023122544554862135404377441518C06B6969446A99968141308658E13180DBDD324D01DF12295072B0689AD24B8D909F5B912FD4484F8715495095E72DA498D11E17C8FA5179C034D020D13333D45F044FE079EBB5CAAB5AE07027DFE0B451C647A7CEF0F2D7A516278D0146904E6BC5F9A019946F64F3A69C8739B47FBF768BDC2D10AE0DFB3EE486115C3D29D0390E9A6F0C66F32D20EC247C23A95324346E87E5064A651255FCC49092B4C7E7C1FF85C6BD646F40ED3A8C0BEC3EEEC4357DD01EA975523E50A5E1F1357B0BF59087F056A70AA4757348F5FAFFF7BC3388DA206D92ABC9A373472E188B55F03A2F5B2243A3C2FF86A3934AD1C63EE4D31EC38B980F22141FE77B29CEDB621B6E7689343BB29699FEBEF26346177BE01999A5A1A916987138E7B84EFD5A8EAB3B995C6E4202354B659A391EE0305DCC82347C50CAFE8C3D25D5BCB25648CC4CCAAAE062FFB75041874FD14302B3189C8EF04500EB3B9E6AB7E021647C79E1FA19BE67D1826D3B96F3E6D49C6EB5859F8EFB241B8E583005536A8235C5358A64E894847194A3EC4CB7BB6D445C66C08AD99D4BE4243FECBB6F340E175CC9373FB62ABF024CD913F03BEC9E8D28F7C8587E1C3A7620A83C3D4C31DDDAEEE9E1C965823A2F143F1F295B4A9665715EB2FC4A82AE0E16ADD7F58986E68A720783D14D0C48E92467B3DECED57A169CE42E9281B180F791C3A9A84D936BB4CBEA671510899F35A4AC0EE2F8547C2685913069FFD11CA7DDA5349D545BD5705BB5FB3E233F11A6A6B21DC638A4410FFB2420B123CF8503FF4FB53A19DD70974D90231B90914F92E52A38B13800C194427204D3AF3DF2436AD50F85DC6EED13BE12870FCB051023505363E848BAF4D01594BC35A9C35DD23A4986ECE378A425EFCE6CC49C65F5D829D4A7AC4AC54C3C4766928315F23400836DA42717ACCF7061CF91BBBE8C47127F5A8DBE151B37FABF6477718B11C3FF2CAE39246CF44520C92411A2D9B365570462F2545364A6CEE318330123FA3389E732BBD135E74C6CDDE764AD713A40F19EEB1315492378130247187C9444D7E5AB0E56BEDD59ECBA7D27AC32618E1DD23D1452664D465B968D86E53DD0D9B50ABCF572BC1A2B072C1FB6A6B2B4DFE7A8261E5D074897EE0ABD4E82C53624CBC3F94879323A4A7DEF36E80E579F824129D379515BD42F67F68D2A0D0D212D102B19D2D1BB4365C0F5DD6F6FA2F32010A9CA755599992C68FC61E4528A68A38F6ED6E70B45E1604221C27060F6336062F6F85A846E9586D8D9950C0517905C23BB99384092E333985D1E8F51F9A1AA6ED855B4288674D02A04E15E8485C086F952B746351755F31BAFD9BB9D0BA02D7D23E0915B8A1C5C2E8372FD6965EDFE496ED5A2859440B1851F2822F1C199C041E863A9D23AC3E03D510507BA8B4FB7ADB6F85D421B0ADE9B3B6606C9571E49EDE3ED93CC85A23E4EDA6D014B9F93E6B38FF145C8B10BCF6D019E8BDAD78B8FC0C70FDA4B21CE9652CAD055EE62C195CB2031847490633F9BB81D1F2B81E9FDE6F8101CC0E633676D5CC8B0431B917AE43248BB2749CF38561F409EA1D509BCEDC177601ACEBD99DDA198F4E4F215AB890CE8CD9AE75384D27EE7C3460DAEB72BD2BA90FDF270FC05C52DA014BF09F1C30DEF071E1750E5F9218F57DEBA0C90192D582B25A63B18F84E4E06C741AE8E125753F5FBF4E5CF08D64F6BC8A155B1BF4A6CF1A252A8F6167833D3895468B438EC98548A3AEDFCF0A3A31CF1E0D4E442B6FC59C86C10287631B134CDC1832D83AC335F04D10306C75C1A45AF63B48BF8EB03F89CA6E0DA78BE299F98891922A977E6EA182A5AE7B544D2666CD0F3CF2387FF3C5E4FAC94C220BF532394269304FC8A57FF17FDDE31B6D233A0EEAFA3614DFCAAC06BD6CBEF6EE74248DFE9C6B7A5A0F284A0CD4EDECAF3DE0B4589D2408F851C2036812C7D46B15F67E8C9713ADCDC1F1B2B82ED7DA48AEF24DF9B400BB32FE89AE95608D7164C377279F779CC1E8FA6D6DDF67A264D112CF7E0733FC450AA97B286EEDB959A57BB82AFA333D1F0CF965087815023B51B1E41D035E29AA99C90CAE7E16B0E7C03E52700CFE574A165460732537C413C701E69700BA941A9386FE8F71FCCEE6D3C10F832439B754B8BDFD49E3052C0AB1DFA70111A4558B86CB6054A4DCE74F81990850ACF6FC778DDF25D395527577D9D0CC34C72029AA9627D3649565F9013F6DD2E586824BA63C18D778F6E9D8AB85682DBDD723315AC9DCC02DE0E8789F64F1DB1A7F011CE71B028BD8DD3D1DB7C2496E67838649DF2CC4E4DDD1F5F3308DFE57DD1A5074C45F0346043BFA4D949AA2CAC83221D27ADA31EBD5A4F458A54D128BC7B20F410BB6C19F1652B84D05D5C173261D701D5EB7053769BA9C62362CFC52FFBBB536B1C21C497732C6894F8FECCF35C513A14EAD53C3A067585C1E021ECC3F023DF543F624DEFED6168C92C43B0858AF64DA72240C0BAED28C53C59340AE604DCE4E4E2B316FAA0B04A39800DEFB5DC91611754B00FC9D028BEB2732568EA481FEBBC3324E21D2C9A3F8990DD20E39806D90FD50F1D19D34CFB18ACEB5B7D8810B57F79753D372D0E7F4E14A6BFD4882A351083FF53DF1505A5973CF63CB015A38CC8F595AC862EC9FBCF3A3F7CAC508E6A48535AE97A56468B874AF26711CF989756757F8D3F31CB1A22E5A06B86AC8CA86D4ACDF5815F52B6E3F34CF728F1C735ECB35DBBF9B0FB14932D3B1816BBA6FB3DE65C1F537C0A36579EEB49F34A82881FCA14C2D6D8F2C7F9D9DAA879C8BC0CD3169489F44303A90434E8FAA1387885286B5F837769DCAD8F8B654C85C6FFFE02ACBB7C2881A7E3A3B2466E3F12EC79138A3FFB47C7758DC2F7A6AD0C76A7BE44604CC264F8CCD1027812AE9B47C94B70C27DF3F208231879B72947F61F98AED252698ABFF431C37170BCDB9D5894FC0F580F7260720C389CEC04D82F5CF60A6D3501554065DA790BEEF3F18A2F05625D0FA18FA51F0FE8D1C0583933FC814006EA9D3C8D94465E5EF36C65F9333B08C63CD0220B98313A465F5B25F406CE4906E74BC44D3F7A98211A0440A8BFF2ACC2F6FDD48DA95A02F110D809A0304A756BF23EEB96E2E72FDCB5DFCEBD2FBBB293736064C39C45209001FA2E4576ECBE80BB7B69B99BBB8DAB7BC45A1D39F8C52EEBDACBAA68650C20424B6D77FB03B39698DDE6B33860A485CD2DFA29EE384B7318E8DB0A8A1BE5BD032F75DAE98C5F3993DA601BC00FD13BDB70460635D4DAB8C59E1A1B74CD5564501214893C915081957EF886A68198AA776C29BE1EB747CAA6F68DA72543A5AB3107F46D6259F932F616F3ABF7414516D59418B14E95BCDB1D5703131CA20BDC8C429532212068437A90E8F992DEBF36CD1412EC24E9029D83C0DD6C6C049F9134F45968BB94C9F8004EED39378FA089241DC3084E253D42A0B9B91C5367E6BE1F1B35C37699ADC1DDF545A1DCAE0F0D002F21A32279DFC1DBE455CF17A7FFFD3EF781E727AC
+
+seed: 334ADAD056F76D74941FD87E5263E449D97C06D748A82018D0C794154C20A870
+pub: 05F90F8FD12BE86F4F09A59E0A0873933B75A7C33C76BA4CBCE5A2216610D5A228E9CFF23DC094B0D3690EE5B3DC55F243F2FEC1DB1046CEB35578AC48F680F9F9F8E20B4C96C67FEEBA4918C4D7AE555CB82338D92A2F2A97B722F09107FF5DDD88C86007FD3187E8EF195B678F1765644D5FAA99773F0188DAAFD9DA6BA2598D440F2639BF2C0A3729078CA78907C54E332EC2AA6D9E79698BC72D082787D7FF28929CCF6FAC633B2EFDC7DD0B82078DC8CBEE7709512583EB2BDD9177C4691D4AFAB887A739B396B308B7004BE2C7E9D83404D185DAC00168869F5882FF81C9C65FA6AB987C0B356C56F3E8ADC931E780F2255C39E2D40C0D741D4266B1460344737457D5DD07889B30B640BE49615EA8FF6CEFB05A17AB44DB8DEBB3E883E8682158F566561FD4FA8027A04A0153ACC065EEEBDFF09138F621025527079E7FFA9010FD95C8791CA36377B60E2F92383841E15C8A8BA07F2BD34F78D9D2E6825DC476687AA780B642B26A08C33CAB33860DDD1858DF04A94C2405F94EAC54A005AE53B7573CE87860FDF4A59F0E96FD87B451A2A897D8E9EFE4294949E8D663669D8474DD5FD5580A366CE9A282A5357DD7B96A66DF961484072EF21552CBAE892BEE96330FD3A2C55008D71D23A4F0579BCBEBA343C65C3D565B77474C178DF9A97B451A4EEB90041DB4B50BAA022037E1E60D98F4109B9FA51275A7662BABBD7C6F791F54EA56752E20284B56CBB853368A2F54C02778BDFC742E8FD566ECBC97596388F9F823CA2EED4CFCB83084749165B17425A8719F4822CFEB3040EB3C8611E1322799D5247FD27D403C74A80FA0A672FB1CBC62443A222DC7A1E783E5BCBFDEEE18A8D880C65B9E827493C318478A6573533C4C36A6387CE1CB01CA70985B39088AA76F4C13A774DA5B86599DCE9FE1A87D2A48AADE42DC5F1849AB42C8877B5936FF2E53D860B54918B02617FC78CBD03765EA6D9F554C8A6DE18D7AEDCED60BEC084BF93419B7B5FF489457CE976625236CB16C26686C3BBC5BBF2E1D37C69D70976A7A3B332DEA756B3B84FEF984BCE70637FC376A8F4A02EC317D4E67A3F259141AFC2B061D48015294497C276D87459894A80B2C7B9C46D988E6550567EC4F3035E23E1921818D2A4D060552AB0088A27C9A022DB688BE947C231A99F22D6D0B225FFE5CEE23A5E89789F5AE58F4C50603B37A0624A96270B849E867366D8D82E02445773DF5648A15C857C6B04AEB21AB4A04A0552E9F30CC253B2FE7CE0071D3335976BB702B11716420B43AB11639589E5D5A3E7477B95E598208AA46DD30E1606F30DA0C616DE7A3CC31653545894FA958E8DDC026EA1A8A8B807EA45297A04AD11EC7FB3EF4DA1377BC6C36CD3E0BA08FC90B4B80C541BA6A5B7D2D91E299D4AA9D854EA59F45E0D76F8090127E8E834F3A652AF71F18935A58DBDD18E9384EAB5E2E10D78CD57BD4EBCDD45BD2125F2E0896BCE153B5F84437E076145B61C050F3A45C1C311FD8D880F38D65E89C4302FB3DC58C6DC1F58B0C52B73C00A421261AB5B9EB317C79E2F885ED5734F638C8EED36081404A048C26219B04E526FBC1D1A5058685AF88028247D6ACB43FEE3F546CE2BBE4BA456E6868CACC2557C07ACA318E1C8F70AF0C9F55AED0515905E775F5921B3AC8EEB5137182F487ACA7DFEE88E77954A94DE3AD78C518B438915FCED9160A4CACE1D7A005FD60BD34E1B328321C22F58E70741117ABC5F819722742187C9D3DD19BC3B7726DC3E81DA040CEEE823157A14470E9C0A04DFEA594A05DFBD1E256BB1524FCB591786379FCECC7545A875483D4B2E58383DA1807F5222CEE95E21BC52316A886590F55BECB6F2D5F8184330C82BB50427BD6DEC0C5E164ABDCA44F77E80231FABFE8BF02012FD377536BABF6C7638FAD14870C97F1AB0D4273DC9C4BA426169B659278A5BAC8B63E4318A0E85C4B22403F13C9E74B03633FFADD939FBA9EA3D746B37E4BCA503370DC6ECB7EAB6537E16EC64DAA24C1ACDD2F98531C594CE745C70CF3ACAFEFFA1D36CC062D4FAAA76AFE291B8FF281FFD546F500786DA4E05E7ADE2D37CD519BD78819F27ED9B9A950ED2D0129253DA2B7F3F660281C9B0183E5F753FE96D123DBC27FF6F56FA5465B8BC9F48CE4AA4963D17FCFB50FE546164F901B04ABD909B78108ED8C5DDC8BCAEAE0669B740E0F7DCC833FDD91A789603FA9A2EE551A387F944C3A032F231EF0E7CA775905CC5ABC8755886BA211E698211ECD3B04B959BDBF431A454A08558D4CBFF01D177901671831E2A0E9838E7D9D0CDF1C6C8827E97CD341DEDCC53097C9BFBCF0B4347E398E1132C5CD5A505D45F6F5D944073716672A2B0BB6C41C8AD65F843B1738FADC6018B4C8D6D5B2E2E331B8FC41E98A91A0F43DA608F49AC0126561625D21147BB3D5A9120BA264A703D5E37494FD4AB883DCA023A73DF9AFFB4A3930B5ACA133CE57920207D3D1642365EE718C430B51AD7D4FCAA294B1F42D8BDD7F08C5B8FEF631EE7F18904EB84F867B7407F93DA884128EA3E4E1E9144ED351F40FB460FD511AAEF20ECBF20398C701717409289AB22C2518BD464D28D76D9420AF9C9E91734E36F355544A80E50BE0D3A36556620D9D217946CEE219C990807EC0D1F2AC904CF661F6906D58D8A8F500C3D54F1966A8557F8224415F17279FF93489AAC8E8C09BABE490C6F34688EF162133B19B55FABA9E3AE1E2573E51966CA827E3DAD50FF9
+priv: 05F90F8FD12BE86F4F09A59E0A0873933B75A7C33C76BA4CBCE5A2216610D5A2B3B647FE6B2D597C0BB64BF8EC612AFE415BF8C6EE9C1C89BCC07825BB4E0635E279D6F8DC3E90FDE70867F7176F78C7375112D6738CCFA4081C0A267427E6456A9CC1B62D301B2E61490266CFDE8BFA6105E0A538AB1C1D0AB74430B33713623581386483755445243753473438078511606051368073160115738012354521300214633143005060458451614181317625600850828658142078641844516326445870256686653680383537701272643265207087826247876408370160122140768874166087151412676620180320686408856302667266662275523315434588681761074568070028312208584121154004344663581510807865182675883813108000025672850572778605381322036260037871137460676071517771314675682566577436544573460506504832281442435167233455724534277207215216360738167150836460874031736450610842824275257455405400364275587451282130682375546268016543663485208367258707108220164027637784307552716318515481724518532741014070576523654860028123444648726543434463586358076328861862385412143118625642628126672617763635717788356608737358238865854478487075717624743613147755325577155202642662650113374865061032648163018768724404227837151260534245414730837040272670625518524816844173752604713612421427581014835327884216357004103827372624624825607613685321838718783121783201546220877332618523484033418836504550354845557501255723257746365364533724770053004852604007145007653484371135700033413050162143608712741065021721558584332535787122020613285457067071122166270825871245825500252511451404363724313586561623662725341448326850605637645520652710734061103603553721504585707324281583008610265170617622430557127532416631412258328838374307302264678282601782132034871337644843401462742842107215876302171452753735780621218157840378626106652400582488562616865716354530113688531563273150642540215680704544160562010462168227847102043537372863606227863485764564280612335786655251320053243774704426146103767351675004061227771882487418563217101228257228474177206416048740843757752314642706176054186108442840481072688807888245121437337668018848605137653166518641703180318156612602033260572357615555665686231008127660607683820542312302436523202472348222103574847503136060448373050426708734310818546100012558051246608155643310633872255780650310786552541215201745381263325165137452788463576343674204721826037356042184745266584825467165112106006355167510788781105623465658773756883868012110284321513014454716525175616611768137427681534886023486205351442728858581666752868236430175106745042638321062083108321702340453041130612457481178582752050626158025384055005352376672458346427221748425807137606753806442562318172647335860725474830371583802351251766113664310376562367167407343086650862744558342510760512033105786441765808007204600605264376872847174351175438301566013163416683413510128707207468874177221405114514851318225231514632664730885425005816216567873025118726014288180357621523872378502177300555886517581515484033478831137167558052224442144782845268072021678508733840333135173515826820635274207417088856814547057513727206644577603710446785322314856685424538803253760515563520538716116405141054573465220348762101770782046356737660564646108A71710BB56C4A58168EDB0C30F9ABA6528629B1651EC7F3D4FE010447640C0C2463FC2632093713C10EF12918F6716BEC6AC202B2DD43B2637A4BB8EECF09091A92FC1B9F1081128E4DA97706698A51AEC985B77FA207BBE267EA379FCC692A53EFBD31773E886C3637A229EDE8DA0CDD2AE15AE92D780700C84AB8B6EC9C0B337C52BCE50FA59D420FB4246E1E62264C0EAE5D22AAEC278FE76F27EE4F43165E6F28678B613BB2B482E36470569AAEDF12B0F6A1E8D63761668120810A035FD8AF1BEC04BCECE6CDB44A97176F4E1F5A8AFBEA4F4C08B6C42CDC167F933777F012D11BBDC6A6BF83E1C7CAECE6069181B7CD884F482FD02FEA80CC499ECCAA88B46847020E6154B30DD124FCB9ACDCFC1B458B21F2DFBBB4192ACE07E445DBC9024401ECAAA68BBC1FBB615BE93CFBD2CC1C395FDC0F31E7054324F37E00506DFBEAFCADA9EEF08E082F130396A22F0A1B82854B097FA713126BA0309BBDEC3BEEE33042044D9FE6A20D72948E54421739E3B5DF5F07DCDD343EB4947873E77E1D092357781F35E8771714A168897FE3C458D16621462F3D2130D661E83CA346BDE9B68F238B264B5EDBE0EDFCE0FE7AC1F6D51DAFAE7C15FDCE3CF6ABFF710CE4CF52D7340C6C6C5FCBFE3ADEB72987B53CAF3C8462DF45649028E57BD96FD918156A42DF582F2D404004E4B4C589C2214937200B4E8AFEE6FB4A00EB88E4827D39ABB8741FA6B2A65632F76BF3F242FD2455FB6FF3CD06D09B4548BBC0FDF4E3399D5926C62C2C962C708FA6A58A546A1C27D5A4F067F7CD0D6BBD4032493A68C6CFC5D050D779E9F389F8DB5A522FB052D2967DCFC2F99A911AB8F7BABF73944696B334A3F3DFEB250BBF6E79E95ADDA9F8A1678712D752F4A0F2028C6871BEF429D9C6784C7739FA8CFEC41ACDB06496D8F7D013693DCB1000E8B8269A3AD0685D7E611F9D0E268D5C0BEE1DB5E0C103AF2B416C6207E498A4B15A3F6FEF22E1691BA30E296790414C4CD257501DD5AC4236D338E092B32170120ECE4A9699FAB32BA0447B32DD4957684793A77B53B7088545BCE9D2351391C6F68D4F5B7AFE553ABE675C716B66B3733D20C87EB5E334829B0BA1EFAAA6B909F9FC2D24517B38FCA6F0EA0093583C0925B0627C5536CCB9891C801C2B5CBA522A8F8F036D45B4022DF9763186D34D2D137BD4D1D865BB5C49D7F5A73B2DAAC7299723A36C723367083E76D2AFB0B74CF90EB9DBEE3B39D756A69299AE2042F37B087BCEED9CE935FFC25344E5D9EB9337A9EF17637A200567FE6C3E6BAA5A69E8E340726D60AE730CF963CDFD0AD05745A145E9FE92D80546D7AB67602A09B777581A1C8C7DE45A6ABD1DF2AE9F5489059C40EF605661C75B5D526BA9A928B41FFC93C36ACBAFEF9EE13DE5660790E44BE35D8C797EB9831724C86A069BC4153E44CEEA0746B04B9821B24CDA4A98FC7A42C8BA35E7A191B937D4752619CEDCB00D21CFB9AC21F2C933669AB073CF8F3B51B6D5791BC979C7B7BEC9D49CFE66CECC937C5045B21CB6FC234C29FA963328B174C8537D204D79CCF2250CBAA5AF3A8BB1014105178A8B98A4EF49E09BF837452D6D2AEABF589674C893BEE8BBD01EC13417CCC95B7A07C6139B5EA1F069EB7FCA0BF92F3744DBF1E24D469FA24767D2C0E7028CCD6AEE3807A2D3459AE84E9E5516F50CA3C42669F70A61CA3427919E3D3C4F865176FC08C68FDD7A48EFAAF92828C29AF85F050B45F03511BC0BBAF555627A12C53550BBCA665884239D3B68F419214FCE906A47B036F3C5DDB300B1E58A545B71C74733AF367D6DE5519FD56775B84DBC99ABBF3F135FDE98052CAB7B42825C3D76B5D3E0F6BB0C04FF8CF2FB3888F3350C4BA6027254E124D1E9871DE84AC5289A465688C4BD68A2D187D461BBC4535F824CCBA09DBA5B7FE5EBF9F7F97A85E31D5898D13D770DCFD92FA3B7872EC42853760416AAEF34C0CA96763D8B38694827248B062948A42821B841E623089709B55A9A26E7C985CE42B5F1DB99136D057069D582E2AF5AD2A18827C6EE2B5342D2A1DAEAF1FB1E0220B95E850CC04F5806FFC11B304F842683CA1B65A02E76FD0A2320819B27E43E50D7F75F4CC3988C087FCF409DCC6BD92DC9B8C72A67890FDF4919A2A0E4BBF932C7806D25B5E728DE08B26AF413F0D74BC7CAC88FDA1B54B6C4FB584FDA5D7D6A9E2F24C4548BF3F7A3F173845AAD914A3A78BAEA5877841329694A3402600C5183A1E773010F7351FB0E57062D715DAFF483EF5E85965ABD16973DFFA3558ED9B50ADF802C495A223A3A19B82C1CC1AF654C2690E46FB629FB5E13A8DBA83A176338A298057EB7FD674B43446D0BC50070A420AB426A1DDA272148CC2D1253AA827298D6D402CFB1D89652E3993E42D52DDA92F7A171EAE4B652CB65D0F6D55B54D7CC5E2108E6D5C85DAC4D5FD8E05E3CA6A060AA0AF6BBE310F61CD874C16AF5992609909543AED87019D72D07781CC8A42DA9F0D680035A7703309E191A044031480D19B8A6A6CCCFF7AE2AD1804651FAE4A2971C28D03863F5960F31DFE57831653F09A7BBA185FD036DFE22C594D63342588422F1836F965150750C94F27B77085E49DC02E750275F6EE30EDA4A0CC30725884F8B563B9F7DC7F6B3C27F46298F8AED120F634755D1CE1CD2E2E5E3EBAE4BB5BC3527C6DD97DEED0FFB644053EDE8454BD55C3307A12DA90AC6940361C310C081F13BEDCF3EDDE165162E4E20B6E33201E3EB4E7D9307D5AE918F0015158A500E4E3EF914999EF073E34CAE6A1C483B84372E29E600ECD1CB69115119BCED399ACFBD65DC3049BE0377CB27A1670A76B8C162F7167B8ED59EFAE205BDB393374B8AA7D23010D475DA30331F5D63AC67D2E1AF8161CFEA4260ADAF702464837CEA071AED36A217A029F59E7F38BA9E1C1DDCEF91DC436F5F685AA0C2A1BF3F30EAB6B6E2F7D2E4E43ED72FB8782AB5B7DD91657613081D04959FD045AF83330EE67DE3D388B7B20787A5768D1BDD982F5B7615986172387CBB65DC3D6EBB1F08F9E05EA69415383F51BDB25A21ED4F8DABCF3BA769630FE0A421DD644B1971F56709BA1BEC4F69BDF336977122129EA64310792F7A48BBB12CDDAE504A179E3094964A8835B360ECAEEB01A834C383A1E726290BB2031242952FEB5A4C3A02C9106A66905DD6BC931DC245DCC48995BC1BE9F0264148D13A92C16FADEA763BB62DC71454FDF1170DBD696C34C3AED4D20DA0983C7ACFBEC2A87E0C45C2A1CD2445564B400105CCF9964EAA5B64CEE57412B70C0EEE991DC9E868F1BE1C254DD006E814ED5412B5BC7EB5F60D3881A4D36D5DEE5216DB93F2258F42F96E21B58B547FF72F93DD3D5228C2C17771ED77FABCBBAC14D2775C098A1CD66028A0E448BD33DF3189B10D9D7520B0E3ACA333B5F8551A3554CF140D2EEFD6E30CC1E900B5A2906D11CB8CCB35FBCEB3776573E86B9DCCC6B8DAC94959BF1969804CBD7990F664B517995093886D4606BB0
+
+seed: 06C016CB8566F5B81F8457F56175AE77DD05C35EB37B687EAE89147DD7ED008D
+pub: CD136BA844EF8BD51AEE2DB3103524DBA4AA971E5521D273DBFD2D69F0EF2CC3AF64CA232E59C2E1F4EC56A8C2AA886F2D5266B72B1717E9F83EB353089EBD02636BE7E2629D9128819E0E3B47C28F05AB0F06805BCCA20FE0BF1CA4DD2DABA5B9012D0D828A9F752074C5C40BA640237BF00E137DAB33468B4073B7DFDB9BB3F512E092916F137C77FA23152B1C1C6C0E7204DB7B0D0263401BE8474A54F00B6E8BBC5E596ADDD254FAA848224FA50551433BC786D063368ACD6D412D94B34C5E6067651F0356A30CAECAC274FF0C1A87117F589C41E6C7D62822F0DF036DA4A646406CD44780C0CE6A6C960D7523241861A9AFB5434F3C6A36F8C317FA267D0F1A25C1E4E5B62318D19C7DF5F2AF5A269205B638119D3479C692C611DF51D2D4CA3E68306FA2C8564532AEAB82F5AD8EBB33668028AB8CD97E8859EFAC229199B507995B1F96B3AC5683D00F3B44729A9710084B1069663552F64BCBC1EFF043F53FB1A689C6EC82FF5A0FE1C91978C52140B048B4A656FD535143D9E970172B28AD4B2D41E28EF62618D7C6E7B9504DE18F3F845A3FF291EFFC26564B2FA62E8D73788004E47899925B63712F211E707048BA59A9FBDB2079BA8C0E35CCDCE7009BB57E425C734A9A2430B32647603293D6E769E6BEB0448AF3AD30B6309AFAC2AC80E1BB5285B233A87BEEE427A02D983AA02D6261E92C7771DD297CE29C1597481E4D8B2BEFE04915DCF2A2F2391424BA449BC7F741B2AA0E8653F92B8A03310EE8D79E060212DFBDDE4D17BAD0F78C84F21DDE401B94318748994771D60C0C572C51FCCF8BC6F45F5D5556A827E8AE043127D7F2C948B45CCB5D9BE71AA6B02AF82DC2702BCBA3C8B970B0C6BDE654CEBC291EED77E1691852555E3C01E8F6F28537F1F20A9A175FDF01C333806011955B4DAE11D9EC8DFA9277C77F03172754EED071BE138D240785580F653CA8A21CE95C10152D9F82C1F50FDE555496EF081CA858BF719AB9BD245847EC23B6CD76175F94D26A72BFD150EF152D7D5C975EADC946472F2DD7A8EA557F9A197CD420928593F1A971A95C99FAF383B2786C3453892573F936FD4E58344E3577B062DDE2F58413787759A861AF09E94AD4EA06B37F818893093C76290FF0C96183412F0ABD94217D830BC21827D0F6B18747A8A31812364A8FB9988CD10CAC3BBB2A649C4D5614ABC022143716BA5351ACD138B2A06957F5CE978FEB935933119E2FB0A8965D0EC3C14ADBC82D37904E4AFEEC034CEE4031A3BA4EB3B1FD6033B45B4C35A5D309AC256DD9DDA40963C69BE485653EA7EDEBB8CFA20B422AA14DF1D5D91194490D8905740C8165F911D6A311C5CCD3B6E07CF46F0A9C57DBF4DC4A5382AD40460CEAC5F6EA9CE7C79F8B7064239123A5563D2C33C1C122F5B221CCDACF9D577576213267D6AF351F601B7D4C22B7956F363A42910D90A99CC77D4C858918007FE70865A6256C0A2C82821883627F2FE31798EB532D24317AF4818BDE315B82AE5ACD3E9B468F2AFB40EABEE4E05891D4A09709A409B0DB9A5A80F30906D99E9B67AECCFC8862B3E499B7CF7B77A2E79734B93724FDB0C35983DDDEF4B7476BA43EF8CCDD6E1E09B538E777E71BCF9ECFB6D26ED0846D58D2552BF2525242839D8DB26F82D9C6404695E1AAAD195D3D0F4E6F9795CCA693554DA5EFA82B3C773A04A526D4086CD1AEBBE609D55DD4A0CD49C2D5DBE590EB66B9B061639C524F01CCEAFB110361AE8C9D819220337F38B6512C68DA333CC2325EBD47C0BBACC9BA651D7F60B6E7AF1B8A04D3F64F4FA011EC5A15493A08F823AB7878684D9D6C1B23CCFD136EEE2203F6E7585F97E36E4DBBE652B4184BF6E761475C0AFFFA4A92E0FB139BD8D736AEBC10448FCD535598188B2DDB4D4DBF6D2662F769A9F55412B50D5ABE76339FE3E162FDCF3501AD9182C250AB14AB6ED95666D757BAE8486FC0633193CE3D3A3EC9BC8F29259BA6E8AC0F699037A172CBD5034DF788C3B9114C9A605A1F19D63ABE13DB3F4255BD1C7205E9A352825FF340D794C70FE5A641BDB47573C5C884A575D768F6AC5049083387B348C77BA6D11F506CED5FB296D23899DC35E3C13EB984B1B8874C8A5C333720162E4EEC1A43C77535A885C43DB98BAF15F0F07BF2C74858E3BED6EBEB210EEAFBCB2D771F8815B567DB720ECB17A1C675C1B014C365197D4ED8AD420D10F103D5069C83D0D2E39852AC777E0EDF6681EF4A048B3AD6F4B6134B7150E8B29D1B1B0FB69112E99185E513A7A05E470A5384956E6196B2D8B1018F7C2F876ACDC83763C390DC4A057073EBB972B89FFEF171459652B00DB20F0058FD0CCB8161FB0EDBC881B84ADBA66EC0FC5826A4128F45BB1ED48B5F6D7CC8D8418C43B444F60E7C9D8C2C1F04A3D86516AFFA6E418A4660ACB13390B44E7B17B7C63DAF2460F4C00E9EFCC531F2C1FD31E63336BCE51B89BD1E6B867ABEA8EDDB837D23B3B16FCCA05CDD2924E2A35802F55BD8AFBC8B96C50E55FAC219FBA35DD618F31C81ACFEDA2EEC25350898046106815713BAB9210D2A05A1B478170AFE4B3778E051375D021831371B16402F9BF9E137D55E4FEA29AA18C3AF0760F6C9C647D472EEA663B41FDF52F3832C8CE454E451B6E4DA179DD5DE087ADCE8DE05F2A5D5961ECCD6E362F76329A27AE77210D2330EC2AF69E5898805C8402CC41F2EDD9A2DF411FB8FC7EF0C7B590A1D751223C6D770B8E180635C3A7EE8
+priv: CD136BA844EF8BD51AEE2DB3103524DBA4AA971E5521D273DBFD2D69F0EF2CC396F5787D5293F0AA21C1EF4982D6D92B03578807EE3B173529E67CDBC4592C01FE4C422355C1791E28132FFE128EE7400A82DDE9DC6C4A9A4446552457FC67014618934EC838799C91EC12872C9A7B41B56AE1B4F2D84E0A1C45E63613CF23B8143058026560631877225541240870755028612211601113257620730333171113133326014734054530822257254625481781338656606531637062386428216843125583177381435215743200728750178828264283858572338340174666155423803410245053881552033512106268217163576701115100151420758458254007203647278565678136022872018662578473315183258324430858168453864072542224242317055776525374818573571728183430228822052531150150563757546718458310706857665406856725636865568642212311532331480501803576035710033308324482566338724804414110081242517212343043345322274804530744840017770682328836674404578040172026160252354482574075878623707433412042010420315324686631430437621117246135145667012805637822015676733372011026256612787756404678851224687705061484330880505326284055581054124668286658020382004078761776361161527740048635207170416215413243527764483287008340567823406070005843544321560087377528537112747351413323761711545608265808303065815242428578631040654613162778428574137416806766647656885762514121044168162303486044752838523570078420858537671500835356333734424688301521706686448255386087425664222682810214243348461332478264228721251287155070578654184140476811887216103058536107683826460515064853244078875520430770825153374152041800752886860880705277852311445620558643661375387135831547560175412405304476660057527456133616354524282235243658540065376850627062681617338104541451788220635858838672766573864142370366455786746353087604586187606056712725063187712712448173850448611574436042456606878057101783345634527487132824126777640311332086444211084406665723663416404615362244124732217810466715618067505057624817681836341825188410360207772465666127650130242187521306645231253000028638486005737424660746138014572216528038511631376771854823406270830132667674806184712737536564845562848003181411682763004664515632264310472672641657307765353303431853146262328068560152456358001505514157483485470687546573587047517328521130710682881183360163073041784613833175275612544847536060656800117884142016825672787262425284372054865151236484576661230323038363486585601502573856284167732206132578258425346636431584100337878378274840833177664013564252244411184708104348334304276470112213147701405086214104113215886548778307185000683785205742088186133061432162674560501614305005453476872274532448663370472187828212621133266066680423603181222832354734806782474407505641561545776848377668885033003456617755578432240766407055388340333658406402462202510811201771475150833626185035600871018847510308042575856566110553231327801543061080331388054232227503550601672838252561463072541831582337012688050512015154818313653303778611543867346215811512217107581100031233816616052755553316276881007300046414722210544405685155425152663633145137786125875381612221375311321043307001662685838057425460185646272147556360106708043553528546214161058211015442016678886740618868527873410028761B9B238BADA333C6E82897B4A54AB928D97C4A87932DAEB797FA5D677E173B5BDDB92434B1676FF7B965AB309CA58ACCBF0A6CFAA4B0C0C917677C9414FA1E9230BE5F75CF5C63129C70C2046214904DA3C43B4DFDEC7562261C2856D1F86724673F89D790BB11B55623F5426106D2D5625CEA933459A75DC1A8DAA87D6000330112EEB17537734ADB71B349190A2A70FACB2F42CEDA5681691B6CA9DBA1B48A4AA72C1C7235BECF0170B8CBEA2833B25C064F320D8912FD8B5B30E4ADF2CB9AB32BD6D2A63DF5118B12C37460FF7E8F9D9830C51E36C7E725B1A8E1F52A94985BF1E5BE49DF468D46249F5C9B664A1BE2CA6444F8873A76813078E4DB1F05DFF8A8A66759F94FC117EA2B6415ADE0982B73C9BB8EC1116DAB7670F46518CBB729CC8EDFDF8DDE4E7DCC960F15E4B417F655A5FE1B69A1AF0DAE73EFF122A5E52907932CBA3930322622B00E35766E0D5C55F1B7995F5729C857EB80F2F109C3393F7251D45AF89D038A0F303A4C273A4FC38CAD50D3BADF909C4B8748C760D6688FCBDDEA1A1836FC133EE714874628E4611959291DCD686FB40693D398214B2C5CE4A0C88A2D9E6C1521F4FE425ADC889B8E237E90DB6D4DE8899CFB85EF1B61A31EE0C68F6D59E1CBC52EA02B4FB66C05FAE0B4E78A492B883A15806EC911F58ED3FE072E779DF0251771FCA6354B4972B21F5BEA540875EE1A72D2D8A3A9A1707D6B0F562CE6D045C9D925F88A709BE8C1933AE1EC9603F497A5013B4BA550C024C1DB116783FF1053A6BECA7393E4313F407316571C113004572F4A39346F2A67279218DFBF61BC7C7BD1052A3E38014F926496E5CC895C6412CBAA59771A01B5480027FE3431C6A09BD2DB91F62C35B19F0A92451167516E041F49DB672D99D71E1EC63B59A0BD8414EAFF6C351C4F7FC9B73DFB508C1A3C198F9DBE0155F57E89CA8546845BFD8D4BA6953BD5AC46C7C652911583D2ACD204B24B2A9850D6944A5B89A4FECAEF23387BB845E5ED9630F72E3A54B2DB5E6FB991AA77A4C2714AD041F6B88E5E013651488ACB4F74E327FCC55CA05491E8919701D597D1510C5B47460B9163B736713DF60DB65EFEF3E022C326ABA7D3A48ABF958F630F15EC8ED234BC829D7BB4F1E7F4FF512627713205B6451804E3167FE01B99BA0BADFB77C203046C750216852A4E7EAF44F97E24A5DC16245E738B5BC153B39F040488EDB47609FA698AE5F8F86BAA6B051BE56063C9EC478ACB41FB247A7349B9E8B1AA1B1E8F3351D2849AB1080E75BEB8C68E4CDA3F482C6F8FAB0AB67A916DFD2A98F5F22473D55FE31508A73A14A1035161714FB6D813EF94E25D1AC9F8FBFA3641C45F5AA2083AF05E31A458F8ADBA3A23E9C260D9EB3DD99FF4E6A5AC63A529D0F09BF70C9FC9E4092510655AAC4F6C07BDDB7B6BB4113E66F843C0826BCEADE05C0F06CF3E93959B9F0256E3EC12CD2B5D45527F1A99C2D51AEB9FF19E9B0C4B33EBC7F689127C5074A39D5CF78E7F5433279DC235749EB8A1242CF4534643137796DEE5B74647087282241FD91F01613606517F852ACB9B6E7FFD2B64DB930F7459A47A4FB74EF9280768E7C427129BC6C488459C023B06CCC997FCAB04BFC0A012BBA03FCF13A38C225366B948C8874E5E958AC64E68DF8EF055D071AE59ADF52ED94E2F83EEB207D9630FE28FEE8E78B41B1B46A1673E6EEE92FFD61C9ABF92C5507B183DCC30A239D3998D7BC2ED70E6A2024D18D26191F47EBFFD7B5535A871A9071481725EDA4312C59207B90188146F6F22D0C25DED8F0FBEEC69C2F7438891451C366F1014F4410EA91491B77569EEBB61C9BB500150F42C3586B37C39836D7CAA54CE6CADD9880EDEF79EAAB352131AB1A9A9E61732F74B20B5B438411EC812EBCF717A07CBE0FCC2C5D70BB46A741E0DD7E2B97297310AD0281CFD683565B40D7DB04C47D34ECEF6FF88965B4D858564533E3A6E6744E84BA84B250880FEB8E88E748ADB8B545AA0255FFC70574CE9ACACE6FA948D4307EEA22F4B21711DA0276A64365F00F23A15827D16DD172B33CD1500D59F6A093E787FB38ED23E3AD1F2CC5D2FA18043FBDEE30108D1E9D2BCF53488BCBE02E7979DB238B079E88D90175E922127A7C6CD6B72B87AF752522CE2C0D6E766416CFB97930AAAD9FCE7F6BE37B3BBD1E6D4F6759265974B5AB9F6BCC1BAFE0F3D9810067E2F1ABBDDF421A21A22CDA9AC3123BC479FF33DABFDD5C6F49E139FB05B0B7A5DD024B2725996FB0AF19DB7FB1462B7C551CC2A7DEBE3CFEB95170381A407849D0E0CC9E11089EC05E2E898EB2456044BEF899F24629B311363521208B1EBA36F8A619DE49FC20AC474FACB7AB2318491F72E26C7FB9E0C387DA35DD7869D82134A9C61919C16790ED81F07FDE26C56E5ADC9E0803B260CD0B85391293DEBDA809F61B781C79C252E03EA43026521BC435E47842D24B711CB5F75C6E12E2B10BE53E09EBDB5759291F4887350FF986A16862DEBD9F262C8FBE71E2F106781F8DC94BD7E3F89DE77893B3853146F1FC5265870F713557CE2E514B92AB652BAE9E758F4ADCB8399EF0BACD87231BE1A84FFD58F4B6CCA555EFCE7F70C6E18D1CE8380EEC6DC8D34A41383B97A7B2694E8FBB09AE1EA9976CB1423418A9C13603AA67D167C7DE85481CE58EF553D9C3781A795B6022C1C00B119256547091F4B5A334016DDEA662540AB95882C608BF370513E1D041463AFBA71AA2086EA700061474FDEB1229A50E89BC1294CAA0F892E93C2257925AF7F18F9D28EA8D8419AD1121A6D8097E048C82FBD885EC3EB14E90DC59FB365C30C12C427CC9205E56CC1FE60CB6758E351440F4EDEEFCC35BDF6BCEDF4A4E2C1C68A70ED0FFEAF5A03D4DB22DEDCEE8DA1F7B6B37046EC3279DC9573E128F51BFE42285D8E64CE98836D6C80F470C64048CBDE71C10DA83556803DA4671323739FC4BA80278F2959D1C43E59105C3A398B8DC626FD58377373CEBB033FE1211F05583EE5F4AE3283780C682056BC77C7855AC186C1703B8F5CA6BD50735C1C5369EC4E180BD5430A5E33108E1547914D3C0B7EDB6AD734EB3022355F9327A23BFD535124AEDD1CC9A36BA514E91785B36695795462F5C4BA58660313B1023B075812239A12320787C5C6721304651BA9F269F1E5656A875C8EEA9E782EB912D52EB43F622A6D770F3201CDF2A5C20CE6A1D1945C5A93CC6C65A2A7627E42622B7954625D0CF8EC441C16B04DF7602F52CAD75BEE96403BBBAEA1B102A60D4AA3FCF4D5F8208A30E821EA585A130EA928E74BFCDC435BDE8AE646841BFA7A535FEA5FE89510B96B33C7A3002C442E311A45A1147F705E1E73962DA730CACF5C94A10286EFBD3A7CAB12AC574ACEBB4DF64253F387FBE4036F9330DC3670AF3D5C5E5D39E9D527859CA6CB8CC47833BAC8A07F80CAF9DB40D927CF6B2F88D4F8FE74E0DC4200854045B4E7BEAA849D23A7FAC82CC7DE0FDDABF825B720777A4FC2B4FD7BD65549F156A8AE
+
+seed: AF5A2ECF442AF8C0371F89C499ABC337021992F221C1D3A66B551DEC917F1B1A
+pub: CD40501C8F6E1240FFF9B675CBF9F802F93CA9016083A7702216C49F56FA13802B4AAFE16A2BC444D2F77A328CF9839DA78E4138842050AF64AD2D071B941A5C525C66A5CB33C4061626386EB5BD8586A4A7D3598BCFA9367D58BF650006F07754F6820D7B43B312E6A4B7A3C19E870D34D80372F54BC43EB93BF58AB87ADE1ADDB21F3DBB7CE2C3A6A39A89D3E1EA741A6C74D8ACE6BF37E97578DA064195161D174602AE8EAB65C8DE1D33896F3FA4A3181A5D6E75B5B718D3D8E36F39C54361FDE078E2286759A322BA97AFD217B72517B3F1397CE10960726700173783865AC596B47B6B8BBDB8D6B64D4CF8CB7ACD5C58DA9AD194D15E849D96CC51268C288EAA6133B8567607215778012FE046BAFCD663D2FDB47101C02326A475C2DC8DFBAB87790A11CE0B672F41E102980E7039E07B52267DC7B7F46AA07CDB42B65BF9E7580C16C05E50AD305CB0E4D68EBD4B92980EBC978E67CC115422391489E1C067BDF627F78F512C77DA348BF38BCFB89CA9053317D3C7B3CD1FBFC2793A367D367EF412454863B00C6782EB813A59B0E46F4D653F2711E225807D59D5398A12D57653193B951B25AED9811A983734C5521F068C1DBE1E008088A81C88A7FDE81D8A44A219C987CECF76E1A1849443E17F07C2B56A6CDC36FF4D9F30F4AEA525853532710E21EC5DC16C24D1276C11B36C328A5D4AF570D6C9DC7820258A71E1D5EE4B0548B49AEC9C21CCB5C2FADC7C9BAD23D8DC8B746FFB82CD78E327BEA707968C82FFF2DB878AC9810015A9D88493DD6FEE55A5FB18A35B595D7A4833EDC7114ED47DD87D5CD236533B60D732CF6A24D27ED0B68DC9136B276CEB4FC918A87C1B410CEF13D062763C54735C267694D07E6BA17D66F88CA7A3B082492BA8F4AFFAA66945F7B5AB62BC5777C443DB0E7F84F2E6756087A5634EA81DB361A78409386F569F898FD257C9307C9FCABC5BA0E391A012DA3E65101492A7FA9D5CADA36F0D613C1CA3C1BB57E9F6165C06934EC1859D13A1C3888178087106C6F4F1FC46A10FD4A9F1E5D83165C97B7D1D71A9E09B1D8101058739499342FA5291112409B93953B989FA7E68B733AACF0927EFD4302572052CF508D3FD9AA1EFFE53B4D57B22CA8E9ED9F0C06102F47BA853AD5E4E01501B6E77E31F2010F7813F339F01BD0F43C3F300B15D36AD32CFD7AFE8C786185AC8773E0F30A8CEA310D24B7CD068872FAB88120A24448637182F477AE10473BD3653FE453002CBAE148AF0C6C4DD1034AD15843AD2A83795090B1C738DF100BA32199D0CC01D3FF7844C524973B652156257BEDC07A533C0F1083827B24C3D77DF19F07249C8523F7DD350E75EF3509B99B77ADFF5CDDBBA4FDFF0BC89A3F2AD2C2EE8137B0EF847B4B879EDD39E299CC205E5E79995D80DC8D67EFB93AE3D6318C2FF67F8C31EB39818ABD6B3FA0F2C6D6646E9795D5727458EA5918FFA9A62E7528028403EE1F34213588411E691672DC1989EE929F69FFC1A87EB72219577E24D3F31E8013CACF03F8600490C84CF2348E10D4B1DA72573A9F4AD9156B3FFAF41B104FED8204E64A51353F47904B42DBC4311520E3951A45E2C1373F206D558E0AA127C400CDED08D087734E52FAD8366D786622A62A617A3A6CE792618837C635F60C45608110F191912D3584FF51D84C35340B9B5B3B9C94D6234E17E7B3A0FC76B48B34DB6409B0353B4245E21A15253D03EE89FC1C25DA0AB260ECF9994FA14EE59EE88048C12CEAF3E28D1E0208BC09F4E173FDCF0CB4D985913D093B6A37A3B1AF4989948B979446E89D24B121F4EE30A3BD9611D698B1B4B9F652724BC80B2AAB623727574485377C20E9621F3F5BEABA3943B61D4938238509A327EC910C4C91DDBF0B4A648B1F621DEA766217BD65AD8A628A39F28071B741CB1276620A2C55D975B1C2C56F6E81BB57B284AD1D6985A204478FF3A4E849F5B0FEE7B428C058D1D393C90F436D772FC7B8F9B9DCF2052E275F917E888FCB7E2916D48FC51E93AF143CCF0BE2ABBC05BF10577D769AC2706177D5919F5AF6DE12E99B3D9F09952230B036E3BEF89B20B235B9E250A02D4CDB9D14551ECDD5C5B0669EE409EE6654A9223F24C8A1FC4BE88C993F8BF25D783C79087BC66C00EC0664F33051B18BC2873B997B15A38A2C7E8B904C00170B5E9874DA8F50B76490D0F1649134107BD2ACD3717B5D5474B49BDE361DED36EB52A0132BCF5EDAFC82AD33618B77F3A382BC32624D39A6732522E4CCC05BFEC4B8A0AF5AC143C3A403BD5F14BFA86A71A85EDF5EEFFBD081C99C221355D5A1657A45370C5815ED7799BE3308A774746878309180DA20792943ACD1D30137DB52DC46E39563E1370C4EB09577FF3D58D1DB81DE0C7241DD1AB6254362FDE4850719D5B57B237882CAEFDA260CE190536AEED81503F2D7713D62C8E6DCC668EF5E8EF6DA38BD71C2E0E2B93D66E1406A8930D36376832A1621B1BA35A7CD1F572AE2A795FAB0787ABC98EA6BD6089D9F02EC071205B603F988BCA2E327D70259F08C6D57DB635B740BDEE9DB47658426ACA91A2A40EC65FE7171B1D8053F05883EC08C8484E599B2EF851C330471F78C0A8819154BE4770401B7A309ACEC2C412F3DAB3C89EAE5DB44B9D4AFF661D47AAEF05E63DDC8C4AD2BCD6A7F32C6685D69D97D28DB01EDA78B988B974D275CA566ED69ADDF84F34E5A7CD4E57A95E19E73ACBDCE88C33242A932F2945F2096ED0688D31
+priv: CD40501C8F6E1240FFF9B675CBF9F802F93CA9016083A7702216C49F56FA138013C48B3CEC2477128AA4F1138D64C065E4AE6F90825B8883A318E3C0E57D79608872D8B10C822DAA41CFF163BD1BDBF8F00E9422BAB08E519A346A00559FE33C1937B0006E751D8E89206D6BC60CF86C989CEDC6A650A9D8CDD7A885A5D5959750448826460188004101125111186074620576284254126602486514650254327504054426658404637850147516850678005764401755744635128034716451535421171000447534622142286762007017285656210134675821180311780513280388413616213558436053280311820410525136513060540160781021887535516157262345448444784701867043127643363865707424667300015652134858161472800247384008538765723005036486454028675180110070100585227018422187630788540325626225188813123884672141516606825703365081484622675274186476437010486026151361553084613341471802783747425386776481227074016862284216366468674776440845680570115565427708841053204705545428355530152603721866522350763826432546480520011000217246455705043270634768453003815312660206530127032003278361545060180436455308127725487262482742654007210440273753502818225888755041314584755808333558051776484568406766162183053205233717482617042441680463342553134108652603646478047082474478071810434283471763142724425102083470712525401031116854048436637142716444771867644085821750556353854203622388308758477100636263240477537720385175337344211355475034614513544055425640506651668811324364614815740531827808364780478544043850587041437810503082400163542252323515405157863646838612144458502587220415731546766633753238104428464045120204231781335071761541014428403711427277077374826708330641275013578628428874500743644104623670603744818368054481625408140001614207775166058635432827321472400672317435015252346535680281888151477005612260638815080663703827487130616081186003343810854681567106141615804734621383114175553858354054073406806336125653830065280187374320341007765836446711861021424842660758755784704122132480132102238862510143518701447661211335031546207621450714706100313847443215510114355878185523877811720703570726544284774414545134241257007847220580113313158613736252646822524660278672558356438724635513883380417860673588850524465417657131258443717224832306011153434405086734832734238855846814657087130365072151474425107710001447436647300443625157617824024324281003277361345864124855547568664642638575406011371083735120870107051813268152180133151542028272641804564120630702784343172240455064040414206576102854172281178857284212558163858228783344551685467747877225614622512371447002823523287806683488140720812213887102060221860281611143315388888484862187875060500504384547208612234821708336400356848478172006063423822373324570772060541305847652773286164648028265165301157086073527525123782386608802465083320180637434353766062137470236812473248565115246843013483416800782261353501433487770254236463403451508568564101825531344410267156466015063128101007831428421211188415154723111285433565758007356644774022346717041065367152658860424264228021125381712078461548403462250318848437146704741046774408631383441511034835475844544150855632038827538235253151753601010467407471214815105021732547307206305612530887784636307521185FEF35B7E37D1212C06AD85C4AB401622C11D1DCB7BA0A9F7552B03D3F263D4A66A0986F2EEC297734A9D60561FB3C8129C37A3BA600C75F4365911F47D8DE507165F9C6C79DB19992779F091115BE1569F4237446174C11B193532C716BFD2AB84BAE3852ACEC911DDD3C0895040BFD0587F898B70E09E71E1C8CF9BBE4580F17AB55CCEF554ED6745F46455862B00EAC4F3CA7EB66FBCAE117D94003C1DF2A43CB4BD00A4CBBFD252B0B6956A61893F022F0709000ABF488D366A1FF501C32E1F3EB787728672ACE02A5F6D2A40D734592A8BBCF5EC8111DB6DF677A6D0E01006EB862FF074377799C7560E983FEB4C382F89DEDAF21D5B2A39EAFABDEA4C3693B63D0D1B121886E5C3EDBC109FC0D412A548567CF467EF10830098EFD8A010038236B05DEB89D1D36664FDA3476C5EB93D71BE938250D307E5D9B42DD6EF72188A2FE5B408518DCE4A36EC95C4C1E23E73827DBF9AEFCB93C8B5DF3D281EEB9BBFEC3B29C29AF773433F3DD11ECD5CC94C0E9B58F96315BB12DC9C7F43FD1A148F1F95BF7F10ECDCA26EC30515249869E2C73B976499E14628090203FCDEEBF7ED6B91F6BC99A8B346421E991BC5B2E938D73D04B93413B870DFD517E6DA6EB8A94EAC931B83A68BB40482AD982ABD87DDF0F32EEE6699FBF7679205006B6D103432C9AC032FB18AC75A1AED57F37E28F3188D143340666677A1F9F6F5F7FFBF777D593BBBE243999F24172D2F74305F082DE10517528C0DE33F4DF1D4CE360EBBDC1FE3EFBAAC2E2E573D2AAE42F0535DF07B6A2808A5960A911D6F04B87B15731BF08A394DF18A7E2A9F9738305DAC46C5C0B8054F8B06E9C4F846A0E49B8D194DDACFE9478D0D08074B7C27E5FB13E9A8B6A7AC3C85717E39870825AAA1853DE322A904455A9C42DA9D8D6C0254C943E5978899C6CD910E7FFA2F666DF2864CF0CF668AE1CA8B062ABE1DA95132721921ABE689DA865DD04EBC092BF2AA2FFF57DA38DDE2FD9DF29E48D2049C61D7E506D9E5B0026900B80A9559FC6745A794F5264794EAA738A56829350EA9ADE450C2786CC6D51D74A8F8C8FA724B4458CBD35C71D02FF49E09997D6CF57E3E0B3EA3EDBAD9AA594D69355A501B09873B433997FB9FB03EDF9ACEF14486C491D4543B6D22C20F5B82DCB757AA7CE5A58B6644F45DB334622FAE70D4BB957CF1365BF1DF8457AC1A6116D50179B9F4DE05367B0313463982AA2177F9E66986EC007A6EFBBCBF6A7DBBDA21536246EE27A125C40F42399A56935AB1D52CD64B66D79DBF26AF291EEE29FB7D2FE6B07DFC2768B62756671AFF32BF43AC85A36E62BDE7F8364FFAC0BB74E43B4620C18E308C6694EE8F6656ECF25157BE214C498DD7EEC3CE6C8CDEC15F90DA71BFDAF7E35FF79C10CF28BD2B4E6CC5B006D8892BB49F3A1AF40ED845AF81F7EE9D26D6199DD628F0A1A0965760FE30E6C3B00C3ADD14C6484664D640933ABEEDF8AFD38E4BAC598353ED16CF66ABE9A27156A16743036D0FDADA91563013CB4577F691075FD5827796531D3C3B4219E904C08418F3B05D699550F9B6A42A2274A07D3BB00A1C127869BA20DA27B494904737EA8D06C75C26C74E745680BBF20713CF7DF7F800CB9393A6EA984AB452D8472AA18FB9B77E1EA98E2B949E78E7DD5B136DB996FE57493669A063275131A7C1207E7110E4620569C51B5DA00E6ABFC839F3A301B65F6EE92EA148F631FECCDABB60E6C64A3D1A03AD1FF48F540D0212E6F49C283E19B805040FF74EF6982FAE0FB8BC3B4BC123405EC37DF7A76A7F90522017702DC629A4D4CDC38EEC96B786B7E1C7A8BD559D28CA2782618F771A02D6AE77C64B0340F1205F2AD0AB202AEF7BA2908DEF8FBE78848AAF2A7FF551FA952D0BC58581A9C95C7A2BFAB8DA745DE41A694425BEB6DF3652DEB5325D0A42E5F2795BAEEF5B76261A1DD5C836843B50BFF75F53CBE0094AF351990E3B3AEC21A7EB5341EB652EF5EA8D8E6DB9EA862E1807531ECD0C0BE38A51282B8FC579D8FCBAC82E49691FAD4B45364F280D7BAD3902E745A16A94929870DE881207DBF076691A7AE81A66BA6CED9FB349A466935BB34028EF6C30A03C0E68AB4C39C129FFA85379152013245388984808C56185C779510ED716006F4B014778A5706D4B8D02496EF7C47D3CAF14C980BDD48BE3D37AFE25BE1B6D18E131D88FC1043AECB1CAC973707F61CA8610A107793C796F87F40F67AD15A6B2E84CE6C8E6C58EA2113FFBA3EE77D357322AEEEA80BE8E6B2FD7F52C8689AAEBEC7203C56F6DDDE1B2E29AA4CC6034A9F2DD07DA138B21285F075FE2FFC8329F5E8BE9D82F4762CBB746CC7F327FD21720B74FD3DAC57B8786299F49C6C602C7956ADF6BF661594CC5E90F4DA73AD1305FB1B554DD4DA00AED39BF0EE6FFADB87F427095E10EBB336B7036FA99FFC21CDA513AC77DB20998DCC3156AB73991A158E9136A688B70C85048F09EC38B6691FC708B53B9B6E520AC55A48F7D50F3C863EEEE841D984C75444105937FFD6B3ADB67B48E7342323856C636DE826209FA66411AC5605EC7F7F255FBF88B236AB77B2763F25155265411C74271B5B8A5B835A019CFF0BC55233EF268AAB76B4E9859538E90E818E6F660CDC4AE93906DA2A5E80DF4B1D5E0FF92243BE91418D5E3FDCE6B50D2727948D2559994C2C40A5FC27CDDC97D1EA18194DD3974325E8650DE63DB2977B824D7354F5C90E91A2950E69F4F628535D2C7BC994FA6F175B31B7EDB3CAE4D259BF6477EECEEAD8178D6C67D44D6C4DE1EC3E5C09AE82B40C65E181F0A70F10199322A7CB53FF2BADF4FD53733E5760B2770AC53EC62E25A9B82C3B14DA51F746D6AE4CF7713AE33ADD9ADC97DDE11552AE2D9A75455F97CEEF197DAF5F83DAD6B96E22773E4B0A1EE2C4916E9C07C0931DDBDBB251F3135C979AC8B81BC76AA46BF932EBBEAE2303E35E723B7C90C48B61811B210001564D4B9A58D18C46E58B33D70251699500854BDA27C1F58DF5FF692B138C1E8A42504D83369BEEF19CF466DC78A9FB69FDD283BED6E70E89693A083E577F628C099AE38065D38FC2FA9CE5AF0289AD653A3C4658CD7A65784F9935CA396451990CC56064933D7A52A5A047BF87C551A842F5BFC0D29F21DA27C40771B86C310B7345B5A9E29F99960E795500947958ABC2A22A166AFCF6F60A4564E5B00E3955318AF13E10F79268992D58A73C3C17D739B2B1F3ABEEB1EDC560C2E25C846C31BB644D4E3F24A07E7FB23506DB4D8FBDBFCFF61FEB010A02C004F33B39D99EB602035B190950E5F0AFF31DB5B603B1D578E054AF0CDC324E2D4AC1753EE363AC120BB50B70FCA0E7A9A30569A701C7723CEE90B3E25299D35EC97EE34A8794D730BA79F249D7366BEA5B6AFEC2B3071343198B3077A3290957F89DA865C1013D80A3B1CE9A09B282F989218DF94F15F675A65DAB79840EFE887AC9A15CC16F1C075E6C7941812A77CC8938BC46FD8621DCF20310FEE350EBF4C07DFE758
+
+seed: D85D7C2928288CD0B90D7269619F8D8B4EB3541F7E084CDE0E39CEFFECE9AF80
+pub: C105520234769BC75FD0F4ACD281DCB4B43E2406041E50BABC04ECA333DA1B18AF77A88253C8892F6EBFECE56F0433C3E0D5500CB944BDCF554EEFFFCDF172CE264916F22B21D87FF3ECB966F0BA2D34A36C726537ABFBE2EAF279D740B4AFC1D4AF798EE5212C7B6AD63E0B14A10AD15C405F2C159CD98FB38DF453448473CB86634080F983B1309134427B95C48CE4D80933A4E8C20969AE50D31B087C3AF9E2E5F189B5E92221C7A699B2874BA12319FD27F1A96BFCB603752C24B89E02EA863C80E5D5B906F5AD17F8812FC928BFB27C168D87348287C6112BF1C48569C719C20586BD825FC4C8CC214C8B8ACEBE8C305255B078035919D22683A3CFCA6CC1B02EA3327DA2483791EBCAC9F1884CA45F16FC2086169856819AC7F73EE4BF3D1FB334AB587942021FACE990AC71EC9C938AD8F9DA7873BB98C195FA477E6D66815264068B2267800E7036E955DFCA260102D9DD90849A603F2504CC142E3C0FE2744BBF908674370FEF10374554D090C039E78558F178412F65C59336E8D5351AD74D4BEB2E82C1423AB672B58E9D27B3DB4A39CA733BC6F556AD171B5302A9D93A194296AE78F4B3591D85CCFA3E75BDC7D59A080CC9C42004C3DFAA70492F2019213B72837234783A11F1CB88D6A0E35C1CE3D4B8AAD793FB0E16F10B32DB641DF8452583C8059270FAA562A0A94D250304FA03F6C445EC45F6F5EE7E1CA89881108503FE71182466833FD09E6229AC09CF285E86D2F755DDD58E6E0B4250898ABDE89C802B7F1D8960D74FB9912D156B81A4E9C9D3DC052DCA9045E0B666A85AD6F334E4EE090014C3B2D23E902757DBF78FC382AEDC9F2EA122A582CA90907C1BB3987AC70E353FD45A3F819931E53FA1ABB705F2D143065CE7BE38AB8144DFE1248B9B69C2367D377BE5588DACBE8B572540A0E6585EFC801E4B03786AAD9592064459DFCCC3583132DB9A8A500A87684981B121B6635D5DF056539DFB063BAF1B3486A4CF80AF43E828B8C1A1B41C9822475048C91281D206E056BDC06B1B8865ED92FA5286F6BBC00014A4F3F28A2C47A609AA667174BD0EC308876F0043193F68E3067279AE809CAE4DF6029CE44F836AD611B27DC35DA4295F1126903E681F5A97239F08A2594768A91D01374C403243283EA763F4D23C530CC383A6E532D70F9B02C64847394C44285C20591DDC84EA24581DA5D98FB248BFAE3E66E20233893F89D50320E74473A1045E0C2A540F0797456C6C121B3D2F5BB94809C0FEBE8FFAB8D9FEC020ED5979685B9191BF509592F1C1D98D3EAAFB0FC551AEBCD53DAAEF10B997A46C593C0BCB3605F58B8847AA9DCA8A04F3CD980825F8B61055253C4DE89D225F7907D9D0D3E9D5BA1E3AB13C3E3AD89BA579B28F7D11FF0C757DBB8C1653C1C28F39649CB19AD2CAD524FFBC21FBBE58A4CFC367BCA0863175567BFA73A681948C462AA0D7146307988E3903C9971A81BEABBEF66AD382B69EA297B80422B480F0872CC00BAB0FACCBA788941D4374FDFDD56419B6031A1DB23A5A4A7BB0B363366AC5DF5A75A72BD9DD57069074E3AADE3D154ADD4743225564BABE2E68B1E0028392E23A3A4B8E1ADEBF4661F64191DC9F46DA8FCD5B769C06B8349C1C25090A29EA254D9CB9537662D339108D5B8C7D5D2B81524ABDCA3B2C5F18EB38F2751062CB30FAD5886D287E968CE885AC1631380DB84A304C5ABD351F78261E2A4F42A9A175B87752485C984936831A7B8012746FBDDCFBFA2BDC0DB4FCD0B79F7E652E5D402AA7B640EEAF8D607AB02021DBD0920EE6188ACE856EB0298F6C2DDEFC46B4D5A38D4B8AB9EF29065499A0A83D5F319C634E281F54C7519235AEF1DB1963D436E0173CA7A7FAE1B54303067D95D33EA9A25A94A490C55634CF4628061A864FA25E6E22E2E6FD7D733B0D1996C4E47190BBAF6E4578A81B7A1704CFA07951F61D8023AB3F1C5E173785F974D53ACF35B3C66A99634D2DC3A8C404247A51134D41A2161C4A3D0E4251B0579A9FDF7B3A7FED59637BD9F8A68AC98BD5B1009BAF290EF5117D6FAF7C8DD87BFC21FA226A9B0126F35BE6694D507695FDDBC48528C104DFB00662DE32E79E0C132FF9C08FB5EE336C98A93F7115171B6C2B3269E3AF5690241A66645E96799ABB45BA96CA3F558E293681A28066504F3B70943C99A465925906FA7CF3B820988DB0356AEEC8C9132BA78D212A33576524812CE85DCA2817B3364D68670EE07329980CDA3E39D88A8ED2199D55F5558CF7B817739E618D9405BE4B8427A3793D8DDF359F19A9FF09B2E2BEC22CA7DB34F2B22D88DF8CC728F5DFD167294CD22B144788C97CCB5D93361E6B74B072191BDFF77A6FA78F3220A47924A3D04948FFEB146838006F58239496E4EAF29C66ADFCE9724090FACBDE3951C053F42F34F764EC61A1D3A8A113CE2D5209A071BEA934101A571797F5C1C0194B9C1FC3B6599AC9C4790D83F55BC1875347F3607BAFAFC4DF2701DC07B68030A693BE88DF3C0372707318402801BB20CE414795D7F250053D0AC39C75FB68EF64EB419FF859D89A3C86C879CFECE9BAE38941F2307C920F1AE48C3DF72487AAE2BC63FBC20F165DD1C22091392D43EABAE0A6C4FDB3824E48548310526AD7A74E4EE6D73BEEBF13EDB38A59D7232E14A3778DF9DE871596C32F0546A16FBA37C16295B69EE997641791C7F3D5777F09AF55EA3F65314D27785810371470FA5617CF2AE06818318A0277474984
+priv: C105520234769BC75FD0F4ACD281DCB4B43E2406041E50BABC04ECA333DA1B18EF9BC3E4CA859E29C9AE87D9F6ABCAA84A84B20DE0894F37538E4133F557BE79C5075909BBDE7F5D579760FC0E58AB046E437DE6407CFED9CE5DD4D5E29AB04DAA70EB9EBB4D9F8AF32E0F7827F8D21BF738584C05D72BF4849F86A939718E8758445758814405066377236336162422838141762541276638856732360636423606651537874070450512230825442745831855684586351301333083575603024146601761737864228634768611208800655885828450737877205363001110217403351766632673281486707612045613182023667776367266083085712334830625737734852167672546845358411430645183583205065515383430563752021515024067500252010305132523852061423631568837802262668835487215855713274656266553465801348565243281764238745587354847434233833785336228853521530475450885388486887835421722800658106572655224626170632788231534531055663633012723460285353506035756252730815271414513036013604238484541566535734773380388840006280582113173886805271424366177715072681663764401431567346132851240273782202733172167802164088384310178216148840587511022757608251252064470305511284744230376254058476377274278086212488134263172827505611528825772601057638282760062084248067366371506358270582646651731160837361726605566053122200085235782558202084671262280830376814326676177807216075382173587246317674115285874745625236467814027788077336464042438520155042207346565724471747218387263118251375556767004053380182005875423780068363181661642242542646383023783342543587832154174778867365514222838388050642140134550860437148533084783344668707368431437015074670186306765104170870588047846213541524414736145150241215537864250374007845472700883417116237873657100750277242403235832704882353311545437405684075044150771571660005121055388384687305874147352600277663431646864700661301872840663534130204184605151861678802848543043027112104621511332255801120370470314425616558471472110733484223773623516535806637808681554467580118184582804154876801541184062762533732181015884585322680581165844687268617606655544276240638067611886232388527868508066182130307666322465628720528384531681113858304217150642806020144620080026852272610816183175145551704480131107232330465767126775852210875576883641346622737681600741174706303221251408630641587163003138713755442054141327080413822046600263640713611635310468722133311135012064031401143771510032260820885658416866680820730365314128654311255766615845301470057467310803472744450477206372254274621747370402131043815278774511034112778031445315048801015187323248127122555821044371482802710874843188101116516365815731456515676384256760350158471615247286366525363544813275860301445876074135438836883327838320860533654243487313251171802278742026065607171267878685588702652134688634745721733478005842454053488684540346456381110877324404284677613573082782065301706732632677347535583500558363725728148105342685468251370277036362661674818553152823343661441735136803538852043417412770322111347850373120404206488162576682561408525683855506861223536747512321018852123356208573123754682321451266335483743432708612575374514747037003725505244127842514108713422352781075135017606254307364886354437140385584416227381884E738DF38784D80AFE74520CBE851F26E4100D19105EB33B399D0F6165349133CE404E2030F5CAC75974179AFABD7E4D86FDE3830B6B1BE3E413814A2A06DE211380DC4FCA05B008125D64A4443FF3663725BC63345E388CFEDC27F2EE4C8F8085870C29E360B3A695C984A30C63511E479ABA406A782A2EEFFB4B6D787F867C45D1F6EBED522C852AE8FA4A561906B019A62E654DEA793EA955C6DA7ECF03261947EEF8FBA2C47BFD27A3314B46FA227D0D2798CDC22BEFAC39CD11BF0DB030A68A9CB8C33E7890BCA2AF77CFED475871FA7617E98C86A5FF711B1A4F6A68D2D29423AB4A9C7C9844F93E90F3118DD81198708A1AF8017B7B8178EE2117AFE34A2847A97592B9BA517A1A54FE7CF4BA360B62A1DAEA0FA6ACCCC1E588C46129F8F0BE8123C8215DCA2091E8227746F62C7FBD2E0C4EEF88497C185CC912436F45A64724175EEE4FEC4605B792E336E3D457BF1891C79C9737153C9339544D59BE170FC0508D96002A7C70E2A2E826F59EB661EE644F1FDC88469D851A9A5114787EA6C29A3C583A3F15D32FC93E0FD8D725D2257B8151CC001E681A51E05E26BD4FB60E39E2EDC1F6CA39E7E55F8FE1B24CB959B44A55268932E7DC18B5D80E97182AE3E1042BCC32CB57FA5648DD6C8053AF7FB0CD6FBA70BEE596D9141AC92D626FE36186772D75537BD37FF20BF97881DDB831E9B3D1CCFE9BFA5B8E5A52DD3703E5E11459C17DB76DC12BFA716458E1F0245C9B177E341E3FC113AE2B827544BAABBA5DDEFE017CB3098BA6448AD135FB0AF73B42090FBC3968E9802BBBE9C6162BCE1F76CD5516FD323B415ECF937E97CA231A64B7E587E33402947A9D51CFF658FB63B529FAFCE3A6A5CCCD13DBC3A24C08F6ED0D2B218571340C716C4130925D9D0307645633CFC52E6C38FC41215D367F414C5C123B1AA87DEE2D91E5980BE6B2D1FC9F46AABDECD0A7C189803E287CDEED22C683ABF3D4A9E1925B2561BD880CDB1B92E2A1C6AA4C33EA39A06FE4F358B73A87E935713745FB8632CB52DA1E46DC009BED11FBADB6B917026134529A72340B2BFFEC7184B0EE9E5CE7558AF7EED869C884448DC3F7FE694F1529EC766EA9B5E212FA217AB0D6CA1F6F99B4DBC7F62DECACE5FF9F9197EA29CB99D3ACD62AD709ADB2399CAB425AD994DA40CA7BE048BBA952E7E0C9E41EEBED32E0A4DE84DEECFCDCCAC70F270FEA91BD399D24A9E0EA318888C3D059C7230F5E8BCB616EF8D372F34345F478250512E313A828143B4596892F19818DAD08BA3CE4F8A57FB343EE0B7A750FB19F7C598609B6EB01EC54C571A907411D72D5E04EBE8FA14574622764D7B1C087FEC221F1ABA307F8E9316DB1D5E843526657639E60FBB7A8A1707656F1E6FFD50D0A2B6C900462A2A93235151B6D3EB32F75798147D69CB2D55D48C48F68DA83B578A8DCAE89C480520DF326CDE6C92367D373E473FBFFDC81054E8BDC470690B1DF0935A77F004231476FF2D6A47DB802593AF5CD584ECA26AEF41E6D8C94C552481790F6EBD50D48C142F575E3B5CB5B3B9C01EE818BBABDC9324E5E88A842AD90743771E4B542D468F7623EF77BC0F330A71CE2F5F093E3EE3B4F0DFAA56088DDF128AE9953B0A5AA1264DFCAF098E43C77D5A2C4BAEA68CB34507BAB46C516B06F7DD0E9FAEC5BAEF6000FF918E53D15E4D8FE7828720F8608BF2DD2BDDE7062F4ED9DA5C547EE0DC2B1F4B9035E1643D5A9868ED871DF630A007E1AB95B8A2D42ECB35C6059E162B7E2A04CAE5BF1911C1D01508B96413E4DCBA4CA62BEF8AE8613434621EAD3A9C5EA09F170EC59F7E276B669E4E133DB5A3E49EE89C98D3223DDC2FD36C2F14C03D51300991D3EB9AE3E432C6119AE978302BE54052BC4871EEBF247A79EF131E39ADE8020C61BB07D065672FC3CD14F91DF7B3D48340456EA9FC42C3D5C0AAFDD3F04AF870629698E9AD9F5CD9EC8F3086B937A6DEC7619AE58B32295037DA9DEA0DAF9EFD6867DC2E045BB8C38CEA5A9E2F32E1129D29FA3C44590F0D25D84B851760EDBE3EBDF02263B5B1AB4A3556CA3A66483A2D415F261E03CE40620BADA221305CB7E811EAF8FEAB983EF9463F41D23DA60B7D737677F7AAD8831C81BEFAE0088322C9481B841E0268FE919397B2C48BC6D4828B375675EEB0BD41CBE839C9225D92DA70958DF89269316F263100671FCA80218EC06BA6BE4DF202AE0AB204C2E3C06CBD25F160EC690FAAE53D977752713DE3C6140F828AE24E1157BC6F5552E306B08CE3B3445694A7CDFFD491AC58A2DE5C0544369B9BF6FEFD1010633BD19691935BA21E31A2BDE9E11EC2ABD52EE99EF84E792CE7D5756925A58ADCD522932E8C3DF4A7BDC1E6D45F0D32907082DDBBF5FA15D1AB759F6B1E5622592D6F867F0E680672434341A653C9B435551AB55A1990061A8E4FF56700E76FC3FD715FA2CDA54D5DCE687CA17ED530B13F8E100306AB9A5DFD3655C3359BA4C20933632CA2A00004D0B8A6C4167B46949355C1379FA6C34F5D7A2AC4D3C3357C3B1C14D7D7D66B520C80A39CA5494F2B32F9F94063B1F6BB20CBDDDA4BC56F6599C343035492299D28D0889D3D794424C224DFE4BF48D414151662942D8269879DCAEE5E924819985CC88F49F1D9BBA5829579E823F0B95BA75BEE15A828EF9B77AC2D08352477AD23D8EDD2A0BF64F2EE58083B2EBCDEF0DFF4ADC99C2A809786DC4E1E12E6CB6A6BA15589CC627A11C784A944D255B8EA82D48089451FA1DE1E8FDCE437E97F8EBE4D3418CD830705D1B134038D95B8AF89E0B851364C8A75874FB98E1914783556D1A81D767E5A346A7EFF827392A0CA0680A48BAFE20394FE98AB290374776D1CD314127164338C2DC78FF219EF6DB244BB73CFDB3A2272DABA26016A6A82BE03A50E970CAF008326A51976D717C121B22D2196582DDE1CE8F226D53BC95572DE85B5590806AF84589B7D608E6485AE2DF98538074A56D5B15406DC95C08DBBC27FBF6534668D77386EDF9A079F79A6BEA49791E55E53391B2D6A21A394BA1FA6FA9955A500D702624C8A26992CC1454C5118814F959A3BCE54E308353C2252106A4679635A1692E160EB5C5C028EF93538D082D77946DB74C0175FB07CC7D2E98C77E674562DCF316C7FE27DB9B95CDD3AA13857CCD3107CE654EC46B39143A411D4A30AC43CC3203E8C1702CF30FC879D1647C565A0E3F204D87CBD8A3DD7EAE4D3339023B995B85204E8EEE81106B8A51F00C8D8178DAFA786BAF1F4D236784A9C9B3C02976605A820B9615D1BE26E8F43421E49AB558B07B4A05353571CD088B8CDF1F7077209486B9A3176F5C934A5A3EB79D2E60FCB687DF8BE0325681BC48ABA956D006BC0022D6DF92B14456087DB752C4FA8DC5D3A7ED18EC9A5678F43AC498D1BA6C68F1E4BEECAAA3DAD0B6D5BD678474A21CC8CD4E188FD229243D08D7F853F79E4EC4DD73599F826DF9BE380A60A896DC2490918792D76B7A7761452A8C839DEB25B09BB87CA360E
+
+seed: 62E511A6731C2FA10DFB5F68A538CCDC1BC578C16E7EFFF458A82627438E78F2
+pub: EF51EF72F1C3E29FA159F3AD631E7BCD3C593D3386F4EBA484DAAAAFC94C774D810D2C97E964D54DA11C0B0E1525D2AA06A90B4FCD30ED22106FDC449A3405398F7F7D3C48D5B8CE2BC01AE8080D7530F7B37BDDC656F530C58EF169451340B9E77F1D6524CACF35436605D4BBE69DF7041209DFB7EC91250D5F81E8E18D1668C46163191F96C81A82989633577880AF1E16A4F46A7EDE15AFC9CE8123F8881351422F69B3EB258897CEFF699742871F2C2A9680CF8E9ECF81AF1B5350203C7C6893D02808208092E2976ADB732C9D4F48B919D61580F19EA0DD6BB86DDD200CEE38D631BE40936D869C50D9F2D44537B1C4A6E42407C427B41FA05B65A12386C67C0589E2741D580EEFC484B46AA6C5F7A588722F6F6A61509E92BE36992DA24182D50A4344FDCB8214A1DCE582C1763FE83605B3C05AA678868CBAE21F168E10D585B83A0D815ED9C4E82AF259DE6C0334C6BA3613B4D909FE6425204CB344EEC4370F171173BF4280D817BD3A60D8C6787A0567A28E08B931CEDB65E236AF33EEC1F40D8F5626649A9F7D94AA3A92A735B33BA79F755B7F0D5E85242F71BCBAC7BF03EDC47A7170C62E007F2C0FBF62738A4C2B4D4DA2A3EA1D297EA7F0C2035ED2D73689389C8E2A8016BF17838144983FA4DBDF402380E2DBB34DCEFE65FC0FD8A66439794ECEDFAAA71D767AFFE9D9B5DE20B5F6EBD276B474547537861F4B09BF224CC0244EFFC27F77380E90D9ADCC9F51554566F9C40096E4F922EE4AD9E0AA1E3DB8B1F1067B68CAC4B5BE9EC9B055194D9223F2CDD7C1CF244CF6DAFB0BA08505D009B0D9878B555681E32D47D056139D415366AA5B7DAB20333AECD22E661204F6AC710FD8489E24CF4E665ED1CC4CB6B38A690EB5B44EBA1F664C7F3EF4058A07B903CAF36EB5D53FFECC16D217623984F3AB54696AF2F68B3780260EEBA27FBA1C968B8AF0CDD8E3D53FA9D307CFE3B7885972BB129876CB12FAB77918EAA6D4DE61E4038C3791B9D56FD46C7EC08F2CA37AFE5E88B95A55FAAA3A0A014BA87CAE8ED39BE46D9E3D59D25C48A08AA1120167B6D03E7B829DBE1F53B3C626ABD9D971CB096424D66053DF2252E01A53D6DCE5670A0BDBB79CCE9982EC044E8F2EFDDC47E90AA819FC6D53C63BE6231278F15BF5BB295C775C72E77F26D4E24D8EBC88988C08AB1E4A89D62EA91A1C3C66C102736854B2A04DC4CABB39330960A34122C9620DF3FA99A1326A2B6E56EEE28708E6C1E51DD1B442AC0B78EAB11A887348EE2ABE3F1541FED4B7663FA46B6C17FBE2DEB0D2F0EDBEFED39C07D16495FEAB5FEA1B07ED6FF827BD0D34F2063745755CB0009660A2099D9CEA2DB9AE6B59DB696CFB7082FC585046C03A4861F798638CE6761DE09F4112C52B4DF752A34507469FAF20C302E33AE7E9CCCAC61123AC80E2B7368D68E21B14AC237AE3705A4E039EF57D6A93220C644C74EA59B565BEC30777AC494CA92887B1D460F1D6B0CC153201948076C94847453F9AFB845E56E6D8D5D6D4C80A1D90032246989F06FD556D4FD8268A1221E1825EFF23049724A686C50F9322A2778D85CC368E80402464A578C98810A3BB7C73FD347ACCC742AA20C096CCA8A9AA971225D78F3A5031B828AE7E537BC77B3F956648F29D4198CCEC25D05F2CEB0FF38792B727BC0567FD1820C8FA0D4C15B3935597090E91B961BC2DC4898F184581CDEE606A0A8F23BECCE52192DE1CC9F2047B5D28BBD8082DCD7679C923344697B737BF564A2AA5372BA50D245E80B3CAEB8B615767B7B395240D844711B025398A4C2E35837B5805BC97E4C36E8D8ED45F57FB4CA404F484446304E5A548309FF4F024CDCC27E89D38E1E4E131928DB431D0150FABFB2ED4A928B167D1E296E68AA860EEE76104718B00340872994B369C368410B30D427175184F5242107CE1B8DE0AB862796D637ABAB7BF5E62A4730C8810E3CBE109A6ED835D66F9D5C192632CC1F2CA69F675DEBF82B3F464DE1E5A22EF221A87B6D8412296AABFFC87E86C1EC25BEA15F0B193D5B8D5EE58FDE46EE76DB19F6EFACECDED8DBABB62DC0D7C1B7B4CCCCFC5D6BAEF0369C16959C7EE04AE41283A187D8BB83255CC0081EC18AFFD608002610B168EC1FEA21806835C183BB37853B3F19C5121AE3670648E162048F248BD669EC2E9F90869264B7629DA97F8A48985D59B5E317B5D41DF7BA781564ACE32673E4ED2C267429BFC26C03DAE87BF1AD04E600B8EF12881D00AB2BEBB88BE9B80DB3A59AD91BAF9567D3F02D38A84F01AC9DF8A6E6733499448CE8891A7DE203660F064CC3C3BD9505FA9B0D4471693A72AE18E35F52E218629BD7A92A3811EABC1B3CBC78F36F1209CE73D536E9BA3539AB3D6070F493DEA35C9921BAD86CF5CFF9283CA21260D01B5293A85982CC7B257B007DCB366AB842BB2F827AE1ADDE271A3FB87B801C47F3B350E46F15AA15D76C12637286BE088EADB07A66139FBBF4ED10FE023D758E55C2C8D890097125F4608EAF88B33AB5D72EDD4479059A2813CD074A0E34CDD75D13084BED9E7A006371EA1E797BD57DCC737710DB399FF2D7C40B05577EF13B8FA0A04496276BF54E1E6D1C3F9868DB83F854D22B4CA511348C1C138BB095AF9D9295FA9ACF1E34FC3E153E0DC5E3FE6C26732B91BECE623D0C0A75EE15F3EE55725B544B88BE6D7D29FD77C18E063696AB7DB9C7D9C7728FE418E0CE81BE10AEC7F2650E270B60557CB36A88D18F4
+priv: EF51EF72F1C3E29FA159F3AD631E7BCD3C593D3386F4EBA484DAAAAFC94C774D8543967E2BB6AD85E15A3179E43AB6210B92C397EF2A36304015F31F60DC83520B3E2E2C7B7E3A652EC0B51BBD31658BFAA01BEB6CE0DD16703E8306F1421CABBC2EEFD701D60E5F2072A86796AC63A284748DE25B6786D7576C9591BED5250D1121664437027712683823110134744782325716701825326106281417512402562610760774070343722070662367530147028781502758603157256305388552722426744506877140170222115755788830108151370532112385248757273210600417046550866454217847036112165217026334580616264266850007412410034322610722874412460415117243752444301602835170505851723667537487687808834221236561731042711113664647265734388234256740808277021024657346336844647180827423804866772028353351361670188658044347366350218124262267334435473855537211130380776088281881551766412145021645553875408724137851647668330658315135038267670382522043487733486060561457458043303027081056283277024535724768402670634777386227288035465267040734338784170132363651088253345304861706644881714370321243303456008237433072503686580630655646152582141715035716673665747140801705080317547517185862266481747431722632188065665210410582248202410334706237247575063208513068542270135344480624807537048480257675722323868828523667548614484014178247848124228773143444620546765572057224808221064011331533864761613330733788818550157340764213234637215043534188225246248281740085824730061387131717516063000018352515166156772488565363385310845267712035500857213573868153280775421661767877171368115267572412817754047622165670213137627105670022861852722630553286872248723225586151310467404677764356827417400515120767731720865132638665281483360808157072283037470672371102636515325400318878128348651077203370773663621888364417646737251134728117508742145812273038200087512187114012422063043160048858500181257281883384253120871138472364018411544174868763812527841472624285482785457751546051004821681781406613433481252758641876587085482852562232237523732553411565212412604250652414531618530613526624881737841718756787780272121431872321183822088511353210454732244658312661582133328744116472840474843221621543832313310685346707326357765544520442308307863180375243803077277353233600485441327804771085561221300415863220114516267846385655746223526784608523021285328004700858523753543662754344646814246060073571775452627175168743175130112638655838615286783432204861821730783716411812363468715234157311333307828807358242827006155513883707261038435330521613355045286071466437258168088086533315463186611606788828853586717026080606737676270286022426073737051117462454068011642116863107044530477611414484156003044801451425172355417510241275561626552532775433703464354358238878657601860456477867740546616006031482073282787538313203724131644133801723168488715667283314218312128313170507635704084481126205514816851386454877547178307011008511063001268188821288520661657308875484062782067558134202582486678183064415640006521703113811861612754566427581001647120348066328787758180026152053480046235012435117513720852020136141848740456316226257681303354467224068344155288562637885645005055251476280088665121557083876761876614184437734187175A705DE4CE30DD419A30FBF87F172F493F6346DD3FA5C18C5F5506F4DA575F7E76A12F54D1483FBB94D05AFA2EAB6115DEA5AD6C86943D11B5F914174530AD081E5B99D3630652BC23534C4DCB5774AFD15445075AFF50D97A93C7C83D80AE7DFA051EF731E3DA1960CABCAB92596054E42B6D3AB9D4324F147F3737792EA623A4047091F692A02F11B46C992509087B4BCAF1A3A5B961E52FB08C28331A26A7933BE9F5285A6F49F617B504F31D822F8A7716CDC23B1D3742DCB3C5E039A9DC0C049EDFBB1A615DE470B035A0CC7E15B6F1EB7A92F031541358234E70495C375152ECFFB86F158172A0C63C490CCCE17318386A5EE54319281EE85E53B6FB44DB01412AE8E8172FA3A09A4907B7D8AF2202801CAA448330E8CB0FD28048BF01201ACD838C30FBFDF7D01626574287D93078A0CD752800B761DC4FFD79E997BB1179C67624A0BF3B2441C9E266C78C07E99F788C55A4694005F8505191EA20B3A6C41D2E6AF4ED78B9B48141F498425257E015805244D88AD9F7E7803EEFF88EB2C74D940C7F4F93BB99CB6B582C0940D412787081003CB9BE3F3D2974FB0C5211B8C7746F8C66D0F5DB018BC8B5DBB4C5863C10247083B3701904FD7A498EA1011EC87A31D3F22E3637965DD63F564717C737CB9EAE48B00EF49F3EE4D875712DEAD9634078FCF28FF19C3DCFBCE7CEA5744DBB1BEFC10CD4B01A3E818C244EB1330F7BD35C2F18AF7789A2040C09F040505CB5036630A7F3EDA0962B2D5DC590AFF47D6F1B39C4073F5CBF139D865D531828C8FBF5C0D5A2366AED1610974BA8651D152E2DB71D5FA7BCAEB56B9C0A73C1ADDCD35DA6828FDF652F6E92A1A0307A3F274A9DD3639402774BB62AF2CDA387854450E34589F1DE919852DE1E7FF90C58743E29EA4402E64E30F75C8329A5EF95F66960904B245AAD166BA02D685589930C4128A95612826BD06999A967F9147B18D3E966C3A9071F709671B9CB6847EDE93AE225C70DFBB4623CDC0066DD7D13788CA2EE4ACDCD857B8803C01CB90DBB650B324AB2BDEA62304BEDE414B4422F7610F113EBF9B7E137681F209AD1774EC5D6389EB46C736D1503DFA228B7FDF5E69BEDA7901F61F2024D9699A28E3B3AF085EFF26C17B962D6B340CAA2EA1FA927F273D676667A1A873B60607E7CE4EE1739D334321FFDEA839B9B9DF69D621BF1DBDA580777084614623500E3315A570ABC6722CFBB1E20B32FD410680D87A789648E00A129FAB4BA628C060DA271877425034A52E2DBDE5720A333C3CBAE2AFF7638D3005553CE6C69456E835E23B98EDF88D5037BECAD644EBC0413B77D942A73B47C87A399E18144323CDD51ED50038485D144344F56089ABA4ED70B8DA96A630D71EB80CA91D410764A030AC66BF04CE2A837A345747B1BC355B751A591B95974D2C7065D14C8DB475ABD6061A9FF3FFA4701119DE5075CDFF32DE15150222DD9F6EEEF8197E73FD6EA63C778DC9341FA9F312945DC20E8E24C607512C501921B7740179F2ED8DE976AE0D6F8EE5D821A3668CC9ADA6ABFAE60816BAB6E67DD74AB8D3C271F0BE15C583A561ACA92A7CB63F2BF60C0DEE6DC87ECB3C0C1BD5F16956C8A937646595822DAB1CE09B1E194C77735A50F8AF265C630D20D8612A3080B2FB41EAD3977D177AEF12C2498DF63EDBC91A1BC2929283F7C66ACA5CC4B03D9A410043B8003419E1CC5D09293D526D79304ED589AD6EC522D10CEF80FE742CABC90A82A209EC4B0BDC1E202928BE4A6DEFD6EB37CABF3574DCDF357CAB6AF07B22416E82722C5023E96CB6B518754ABD8DFEF198474A37AFAD1900755BB1DE56249D3C5BE147954670C91C4BD940FEEAF275D87C04D2934BC71214A96BC3502448156F5B4F3DED83ED55149DEF3CF1B39F43BECFA1ECECE545111A996C8B6F46066F759C8F307C7ACAA31A1823F27CFB8A0FBC4E5A11D6AB0A180E78AE4FA0DE073200DF8717D08021B72F1ED67089000F5694E518FE3C286610E0C18CA312883F5BD806CB6EA30F4BAF513FE183FE3109C43BD5BCB42EFA5FA0A5D6FF7EDE6CFF61DA65BCC6EC78BA9A35FC2B05BC4D3255A19C79332F80AB35177352A6DBA730C6071099F3DD56D510A129E6DE2D38AD6895C5B917E22CC6763CEA81E8B2A88172AAADAE3600A911D34A0AAB6DDA0374DC776FF50CAF62801E2DAEFFD58453B27E2A367F24106E35D1625936D31E3C26AEFB9354D70417CF264BD5B394D5DDCDE1F90C20CBEAF24323BDE3078395CFA5D9AA74F1E97BD4628B190F480D717823786C3EA5B6C0F54ADBB0B2DAC9CE7B1CDC6EE67B036F16CAFA4D25F6C74592E535302F8F3FFE3B91476BF588CAB45580CD0EB2C421183805DF21D51BAA4D6607E40469A5509AACC29605F64C1E48D4FF1E91674E52CE9A6D5043380580EE746CECFFA49B6DED160B70B3C62C43A233D6F584E554EA5D791EFDFF310A7F5225E7873B26BC5283495CB1C3C2BF64D868B85D463ECFDD28B6682F2DF7E57840F535D95153F6AFC2BD713228D1E9FE546B9C65D665CB01603C9FA03BCC4F8292C81F7195FB9453BA15980BF464CE57999547175981ADA808847786ED93460A43627BFE051F15F871B38D02C9CA224AF4F90E0EECCD4B2DE7E7AFC950C2F770AC94ECED9C18B05DA5B7067D6A984624F800982F89E6E0385DB626203F958392B16E9A86FEBCBE65231E8F3EF03AC7DEECD07543C8F8BFE409C3CD0EB88CC39223366CBAEB968EADACEEF97C5C7FD24C3BA4D97C898734C767029BDAFB3B11419CEA7E2E4F913B85333990B5B0F794E86342797D8ABF0F4742895A0D93D03E43DC03722FE38858E00976981C555DB0B708B3089D344851CA1CC42C7F9DB437E6F2750F21FB4243557F70A591354621E43712A047CE2F8951483719CE639A50C951E1E7326A7F089D47E0EE2BA28BEA4204D8478237CE7DE9482FFC1A8B7D3A56D4022D159C5099A69DBA88C71DE62275BE5B1707B4567930C6C3AB019585998F5A1F167737265DF9F1677B9AC771AD5A1E3F460394FDC249918C1911668D7464786293AE2D81D41C27EB0242984F922AD5596BE51C31BEBA3B9C474ECA02A440A2B4E9F4767719A92632285D176FACA6D06DAB7EF77B8FA4BA88168A9802912B3B2B3326FD1CE0A1C960CB5A197143F547B657038140C79B7CCF828D81A9C1D4FBC7F03FBDD2F6EDBB163FE0DB9BB9B68ED9389372F0D767FA985C573461A5F246AD3BA30BB6C90BC205C763677CA8871BA4682939F64180AFA9CACADF68EC838B56E6A71A952C8769299C4CF572B205BAE167DF5FC183553C152085B54FD5173BBBEEB615BE96E737C5C1A52FE068C71C433B512C5FFFF769DC2132F94FD7E1F1ED296A061C63F8BDD401B76E602247A109179EBE7F47E7755A21BAAA0F3E5118A3440CFE071B1A3D998423BEF4BBC48E2C172F1BFF8A5FE505016C9270BA787604D29DB56EC0B953DA5AC54FAF7505FA30516A3F060E3894DEB7C5ED8175493DB7E246D87467C2021C
+
+seed: BC4EF6C46CB18061966CD872D2CB9826B0220173E42F11B451DFF93C0577CDF5
+pub: 172044F0965950FBA5280238696E84E25AC1A1911FCE85C13FEDCBA82879572CA7CF41D9BC636574F8629CED228AE8F626FEF7328FF39DF8079AB8C24840B1241920B4849E57981DDB978AB5B4437EF87198E91E20AAC7278EF115FEADC43E58F9C0F135E7833D289A4F33738FEE0DCEA8B50DB3F0521C1C3C76987A7C82C0AF3C38C59AE1A888B9397258CC71340AD2886D98207ACA566A30605C4E2E545161A9BCE5488870FE6C48C13B0F47E5661A7409A6C5A568988C9814FD2862FC5B1A690841478F579BA587598558C2C07E988614B7D8628FF00798F57CC1440A0C5163156D490F3A3390D4498881BB67A58964B73826446965AA930537B55A701F4F635A67FE975838B59962DCE9E020C77352929FD327D0106CC0160B3AC5F63252F85C151C889D096C942939ED146A04A44C9F2395CAB0F4399E1F603FD0E3E5D4E7FC1DB51343425D8CAD80076FAB19E3DD33A007903D12CAAC1673FCC06C401E8315D9603CEC9D3C7F0FBDB3D00CC2B23E10DF63A9E4B2D3E0CCFEDDC5DA1C2207A7EA9A0B81D4878A7CABA63E494A67466A401D1988270F6DE08608C304EF6316B74B39BA6EF4D5BF3B66E297B275B81DA2DF24FA1129D88785D558C3F79C235C8243F0FEA80018DC6AB8F375EB17A778E349A87C7B5DE5666D17E41154BAD3C5B00E5B07CBF9F46CCF1759FCA574BE7257F1160F65E9695EFF1FF32F92C386489AC19B3322F30214AE8B008E342E21ED559A035299CB6733CC34B2C2732BC3A3A5B5C5E4370CD940FAB60D9110071DFFC23831D984A446FAB028907A71A423E5D22A073F069A2539195F1CFDDAB21E3B163D2A1A3B16C749C181E3E68EA90E1C2E98D64661E0830BE2E2C967C0EDF86FE3E0021C6B217367C8D0F3CD28B8BDADB49329DE289EB3746BA459AD8B783155FF8C151ED791DBB33BC6EBE60E6985D98AB003F613674890E1FB72CF2FBB11EE24C2C3CE6148A152A4B0F44DD890AE262D53B0A5FB18C748BE880B432CBEC5616FC0AB592B9732B69E6A7C4EC149AE75CD286D133E812D94C262E273D7D6053007DE2609A40109EF7759045C601774DF800222897974438D6CE98884FA79C99B205F00C743452710BFF448AE9CF00401C99BB75DA90E7D99877282D1CD6C9165F372ABACFFB6474E94E7C9DFADC925B7D7F14F2AE043A0B8A75124C2152DC45310FE37036874F466E088FD22384C798A486E1878E784DA4C4BD790C972CF118A64F176FE8A8F6E565EE26A293A4593FC80B685AB615CA5BBA86BC046C413D9937D544E9AF7F23C717796416C56401A0E68043F0ADA7F4C6C9E2C257F36580B2A63F9A6D8961EA4DB955739DAA153152B8D6C2DBACC52B24BE9692DEC785509A23C01E1969C1A6E2225CD3B28F93439174C104A24A6258C813E74C46FD95947D8AF64D93461B6AA50136C799C140097C7D8B24EAEB87BA50E73FCC8DFE9447C228DC6438574E21A23BD082146A0E617A439BF81A9118FF3094B8D794C72EC7ACEE9E60C24E151BFCA9D51CE368904AEE0C608DF45FCA8C2C536A4F0F1038F280D06A15CA43FA836DD54F2A2235C1AB14621F8F57F10ED45814249653F1DE0FDADBDAB1E95FB502DBE85D05047E7CAA8C4C6892B421F2678C8868F852A51F0E5BDF82F776DD1FD40DCC4404DB2CF4625597FD5FB69F10806866334853F0B40FCDCF64A02641226BB7BF4F33CF8449CA1921380091F5255DA7968333EBABC8F9A84F6F8C84041AD2FA7EB9C80F95D874A860ED43980D7597E4789F8A69424DA042351EA9D5B19E5C128F8C5DC505AFAE0956D913193D1453EA24FB0D8AB64584718A61B447EFCE208312C475D2074928DB96FEE1BB910D06DD6CC3F474F4335EEE418BECCA71138A3B435787B4CDF209325865676EE3DAE6AADE50AB8A075C4EC28DAFD308F53028A5944272A9D2A6F199F08FAB81689786F08312EE0AF4AF1FCB0AE0B693627C1254AF89BA8C1F2613B1D5D46C0FA308AF2372248797CF2B3AF9CCDFEE69DC21B09BB390D4B2AFA00EE51B83065ED83E4BF1E60C9CD0B79E5C7EEE4390B28144FD2FFBF03FDC97A4AA39361B9EC50A2AE3BF8C931947DE3675849361608E171BAC9772296BB218DE9505544B50D8BADBE77959219A611325A3F6093549362F07C40FEAEF71B25A9A7F928A001B1180BAD6B4C57BEC8822888EF44BE1EEEC17600FFB00305C877379815BFB09CFD4744B4CAF48DB5E4859A476C198B4118B48AFE8176948E837BB8E54289F995C4900B0E8CEC41A6550876BFD950E5E3F346791C4AD110F6D6C728E5E58EE33E47E57848C7DB6CAC53DE450CBB9E1A679D2C74E0FC8A01E0D2D9AAE47855BD6C1864AF95EC834D229809ED6D3096113C199C156A80D10EEFC8FA3B41BBD23E5BE9E618A379160FFD6578D158B9E04790248737A43FC8999D25D549F67E194D992E63E51DE388654C3B5956626443BEACD55F433AA07B010FAFE318B5763BCBA9FDCC17C88945FA5358FB0DB345EDE62FCAC8D70E59E3E326C41944F26E6E9414AE356F7011AF46C21CF051982F56E1269BA3286BA4AB4142253E75FE6F38EF6E43A708D7F12E18CCBFB88B31B2DC2E3604AE8067A29ECC47BA2A7EAEC61C20A286FF7C2ECFBAFB722120992FFD8DE17DDCF8120A77F5AB9BF66E0ADD0AD97444EC43322950FA02D746D4182D649A6407D5ADEE07D215566860364DF3F554F784F30390B1B4D942148525F7F5B253BBEBF71EFC2DA6944BDDE76BFFF42B
+priv: 172044F0965950FBA5280238696E84E25AC1A1911FCE85C13FEDCBA82879572C29C756D826F40EBE63389844B3856FD107649DDC3AB99121F9B5F658A25B2BE42D2B0D0AF78FE1A314C90B3A426395967DD3BAE3D5D1029DBDE410038E39BBFAA7E20FE03217656BFA7930D08F4BC65E22EA8FD2054D1CCAEB3071650956921C8818383516546652345845348341062226750117678070784570688375188710570177501547154781433305500441388730375103588405375867617654308866302441600407576855334525682615663181476154841163774257413648636855878347220644304842024115888285246226138068538618624402515488050667520351648113356388605656772231715728008745145588726836117405018742345584424117700018427422172663251250586644286578757304668042003246205338202634818086486123301785675071012243767856118835760130687363568514152268258478147501550424740841243831124168575576778672513600028474115545671848450525620062025268211708511303805861272607274170036384165863223506451565485030532523838221603121287121258746072176713758303632550312407040655188220360357083342722457032075015106782627515768051832500124057822141806717818130204348522116668168451131021286034235335052683755014564880081527078434626244324244510065258144513486042326238540065740028287018174303318278605860268612373017402063473525711430312023244056812545442844100520001864131458455054357850851616055356500742453276075824111777566866705768584830046800321427826811111278128707133771780512815062885416415722083566437861458372806671084678275584322766418754517617566503460016327270648231052836222025133383052468854188306714172464176800512243177780687715053575280724703280270467263745336412286256741502851718788040761600037416853226678306578787264856847665327562026070278647542104163834357747751682268186422832211685401007454675858764182640437071260473443336570828403305146626232784033300107168103446217346137550463081382500454211446123826604371182686275337146882401545335814524011776880487111118424037210424342370242086353287448665040282354413775244701060055434041608100180153521065422144718432411453616532145776130503005125174035851250505745133537151673466754538347058334505557141046336117404485764114821312541582861414507838063640842508474877435530016238621821578103225262201873646007042385113361266433360344375647126042186828638601077581056113382282548525480625002560854472737373661454043588228486646342684336122607353740480842165545624654407006382410124026814128213476402880362710601084361726087002868561358056824863415583231157101337220888846877801156782588770147556680432713113728653328533633450458645337136485473234337704500632556522004715764426011055020800404283451041078541112463436778348678102033630286016710360132806074553635343634681186558240305064843460704424377205042621258166181681515748037366075414103086201016510622332567241352646460736353614088313652185275227160484630482480168165272140537778813161341883025552377040525524854466625216273363852012381002677764353275847134654001617637546856066738302850036854362132481856731425248733072822146707717830226726020857302425511116774864817318644468555074138657504402057020263158005116668616551570538040051435731622821807634486281403783750583701308338531138562104F2255924EC380D004EA05A4303E25E0C1778839405DCF83B74FD2754CF15FDAA6DFA98B2637DCA46E9DADFA726EA4AC153EC7DC0CA42E86F26D03494E5206BD4408DF6E7C499B5919869C447963748E4446F2F0C38AC7DF52BCD04070490846041583216B2D157DE1051B4E55FF75DC6A03BC20895978E3D6FA56F43CC5C7CB645D97C028894A25FD2BA8592BBE355E903162615150CD05416835570F12F5A5C9229AA1A9D7DA3E4D2DA4B3F80979B944A30004EAD2A590228A828C878F5176AC162892F11369811C7A5877771A00C47EDF2473A4C01B760FC2598F505B942C92CE8483CA8A3050D63522B7D669B3BE2C3CB85A3BC7E618935E6B72290E2570F719EFF0FCDA400DB8A7BBCB6BD66BE529B200FFDACA580C0CDE827AE11F2D920D2AB1A55900067A4E3C0464C80F12A7BA1A0F7E8C796BB391995A439EDA1F11ACA434A24BED01DC28CCF448791190EFB864A094D564B3D23005A492D0D2F1D6845472984C8C0822822C9E978F85F9E36E38BCE8FF48E3B485C7D6888BFAD21A453DF01BE666A4BA5AF49A1922BB368EDE947E12D4AE08237912699731F33AAF445C8482DFE2AB567F7B3B256956A800CEA10765BA7F10D5168AE9053C2A341DBB59290437DE92C05A93036857A19207821AD6693DB7552F22229CA392566E4A019BCC21F76AD18EFA19150681B4EEE85D1292AABA0A6792D1514D4A550FAAADE32DA084DBC9AD9384B11D482B10F8FA1858A9E558383D5ECFFD75238DEF0C09C9CBEA14871A310FB813E6792897B5054FA56371DA801EDF8AB1EB122BF4A2F01A1511490A48B8339BA9C6DE477750F5FEB46ABC9E3DADC5C667847030D4A8CB532B89ADABE7F2809AC03C4C88B09313901B6F358B3F9EE0E48428469884974A726EA63B675E51AF76D4ED98F2108CCDE6C639473BB9979AB51DF674D1A65F889B41D9B18DABFB776BCCF4791DBC901A24FD9EBC2FB2C9452589CBB629E681393C019E35F5D6BDCBBCACAC054BA8656DB830F1881FFBCA556B0C6AC73CA5416ABD5AA4816F5BD277DF79D984A06CBE50E4E0AF9B9B150099AFDDBBC907580B09745FD335E006CA7F61934B890BEAF2B94F52F99BEFE94811B2827006042254CD2D8075A0B34FDA4B31E7420DF4D96DB803C0A62FD802952CFD8E1BD3048540D1918E52666E185A21564BFC9CB42AFBA374979B139555A8909DC7BF49C4B4BE6842C3D692C67188C169E10AC30D5C988165C33DFD7DC21269D276F1D3FA22C10C9012A5C8A0C8423C4838A62302094CF3A213C5721087AA6C43E589C3B0FFF04FDF91CAEFD1498FDCEC993ACB4659935D5D90BB5A709704774181FE001EE1E05A9DBA1251115A79173B1C33895EA761F0C5B6DD42BB06E96765D8C242D457A986118FAF8CE1F089EF1CF293518E066410EB04AD8EAFFBD0A59209E2053B7FF0C2E221A6F27CF8F05022BD91B0AAE3C01ED28B41732A4D89CD55F7D491F4E431C40A83752D470AEBB54EF96A630576E8DA05EAF5218F8C09A8D1F3C80A90DC77F15B3B44CCCED6149ECEB7569EB5ADD3873D2A23133BD723F71A2AA7B0D3E2EE1CC75493DC0361477AFD5E6658E9787CF117243CE7C17DD8B4FCAF65B3107AE60CA15A8C5FE7A9745E27EB4674A6B55539B445843A2870AB67BF2AC6F80FDC5B53929447C6C0A4B42DE8BC3CD22783A17B5AB083B4649452913DE9E9B5321E86544BD771ADAD0BBB5417213E3FA62D80E92548A4AA7518E2462B08EB141B98FF44D6B4D7CCB1CEA4552B75AC71C1F4D10CEFB20A6C703559F26899DC2693FB287574455EF767BDAD3D668EA8477B4E5FF4E263C3C7F50151487480D7A6C271412ABB763748E342CAAE563A2B2B421E067B275F709CC452D011B2AF96985275C1CB1945172CD2019388894D7C450D5A1DB83A80771456D9D0CF16FE983086090DDFCECD8BE9F6AE66CA936FBBC0FEEF1F73DD2C19F4ED1F1F2855906A2EE18A100B79F1C3FAC6FBF990982B0139664C08BFCA09277370F2639C5260862AC4C7D03B7F4E48EAB9DF4E9050F67A50FC665B1022B00B0E7635D9462EDF1D602E04808DE10A0C123DC21C4F8BA28A94DC1B1EF5F070F70AD18B6BECC8F9A529903502AA982E974A6D17FA57A52BA878508713E7BBDF882C2FA50FCD0EA27F54E1A5FAC2D4101AB0D6F3FC3251D922AB2E3F90F8D61598EB15C77869B32F96D364B70B609D9630E8EE18D71A4A05A0767DD2632ACE2342F037BCC0D85ABCA48F10E3839A8D727BA55A7ADAAC526F63A60775743E06D61AF9B9C20A3F10DE2B8BCD545C3296274751AEAB66B7A0883CAB9B07D48A24CC567AD135BDFCA30B61C47AE969509F34126EAC2FFA5F2DD08984A23430B7ABE4FB7DCD8A6EDFF1BEC22E7801ACAA855FA5F3DEE21EB1FCBF9204DD2586F6F78F775B26856ECAE89C80EC645372C7B21036591CC20CCC96F92E16E1C36D4A0D80F8ADF3D8BA6D2536FA67A5F9FCFFCF291C29200F9592D3EA56F85ADB431D481F4297085FFDB8F669E523EB96BEF366DE05D2DC8FC0485977FFBD719DC5CBF4BFCB3CD191AF4BAE90696DBF52BB25D164DE472A64C57002D434A1C29BD379D72A4CD86C1380BB8132BAE06620DC219C8E35D0B042CAE54B32358F68554E34D55275CBE89E9526D5285818D5D9907B52AA21F34ADA8C74576C46CF25794CDFE19AB419AC44F3B05D0A40068945F7564B17012499D0602B4A1774002D18E4F7DFCAF3E6CB035776704457632913826B64C71018C4949E7B97C4A31E042CAD3D25AC3B47E540D3D0DC6491BC021FC56328E6300462D8820EF3D9BF7A40FE779218A0CEE30390A183F571CC592FEF2ABDBD47B3A72F1E779815C0787FAD9A4D5F817C20E1CFC2799783F09DCBABC4A4692538F5B8A8F71172A738F947B899FD431B6C82673F78FB88D528649E8FC794A1D3A89E7C3DB3075C2C3AD5CA00539BEB10C4FD6169A05836A3FD524405BACE465D0AAAE4CE9DF3836701CD7914382C27E73CAA08F1B252A4B7EAEC1C861CFB443B28ACC5FFD0058E0E9BA4864979C7EE56A42E0070CD18B74340D92A83DB40276B1AB57F84B6ABFCDCAFE227C08415700B6163B7D57EF45FFD23BC0DCE56F1CA8FB58E52BA415A58B87A46078F44EC0EEC9482E4E032D61512BA21ACEFA846B408856D64A1D868EA98CF4C518EF6D0F9CADF76F13FF1A90EF4B42B49ACC0FB61EBA9D88A51D6F9143C3713C91D623D173EC0BE6DCD11B02B2B7EF08ADCC1C7A78E262441D6D919E3E3AAB0B61C7ACD6C5EF95908FB789D44EB01E505F9709CA1D47C9AFBCD88806038DA554B6CD3CDBF274A8E0292D9B451ABE590D7F7B8B32EBC60848AA5C0528A8DD435498EE46AA7E89F72AEE8D96A590B5FA434FA4159E190C4A668912C80803CADBA8970D57EBB2FA73828F955754F81F2A3B5144F891F886E74D3F2604B0E6A2537F491B786A50EDBC03CC756C89D59C7A29E372AAB728FCD082A872CFF573D0E8D0C6C60BCA9B21627651BFEF05975499BBC05B2
+
+seed: 135DF872744277E90019BD1E904DCBED63741D863E82388B61A2B069E509B25A
+pub: 60F19C2888D3332957F177B055ED15294B33E36071D56CAFB5318FED1C8C590596037B30546386F06E9FDAB6AE2E88BD93633E9C27EE046CF437994D9FCEA1BCBED601082DA3973209A408440CDEC12AF383AA23DB274E7393884CB7AA4672AFCE26A95511BA62CF43EBFC7945800D79CFEBE0C41FCFB7A7F1B11DBD5D530BA969A56399E76EF1E8244DD225204AA140C71C90400D0E6A99593B346BBE05EAF414AE396F169911754E3A631D9C28644319BD4BA952B7E935AEBBF0AC81326A8FD03EED551623BECFA9637898091FCF12FFDA8CC2636C1699909804FBC6050617F4E0454A45DBEDF647FCFC47F678730DE0FC9B7793B88125DD22DA136105A23FCD1E7B581CC9C8D62204472BC2A8F8690543812A157AB1D3F7C3A8380BF7724ED623B938318CC45D1D8B907C460E1516192BE22678A7B508477EC3FFE1C2F085146CB921012010F82AF16ED8E8A4185D4C77A21C1A6DD6B56E0721CA1F701B92B04C9429C460E04C02E07345D6305205E21DAD975783669E4EC89521FAB64BDB3A31EB76B18C33F81CF39D5AA9BF1B19F819EFCD38AA04EA3DE374A6E155F8457768DCC6B7E14D2700AC4248710D527A60CDA5A2DC3CBD0E74EB82625A1642CB80B7310A230392148A4812CA7A64EC7DC9ACAB74C592A1CEBD7E4DE2B05953B3500AE2586B4357A511340821EAB6C8F2DFE6576487C93C47B4B2B76EE0C96552EB31A5C4415EC909F74C5BA9513A10EA8B54ED292D8D76AA92CC131BE5F3FB10DE22D5480D88499EDF7C3B265B96DD9CD13A8964C6D642A10371D69F6F1948C203AF1E321CE53C48AE77A06E2DE4B4CC942E9563E94B75BF4284E7EBA1BB3850CFC2F1E9AC42D7AFD4BF6D7F99E621EF640AD2BEBA85DB0721CF550AB3E2BB3346B36C9D13E34D7C9FF5FAC1EC257DC2B38122855C5A762CDB08FC3DE4D546F2FAD9B51A3F6D5D11AEC965BF60B834175DC3DE02431B2A82C528689BA90C735DDAD72BD930939EA04E750E33BD3F94F47D4F39A60E0EC2B30BE74CF49CA04B100F470B8AC60BC47522064F540F9A5D0F57D19452C02F0BD526D17E86942DBFEF921D82F343835288974D4DAFF657D0D53A08D1530ED85A50F8683A98D98B402C67FE58879687A39F05192A082C830365D577EF0545D4D1BC183A2EF070D817CA4CB941562B4487B4BDCCABE417567C6C5DFBD09F512E34CF996A3C73A5D2E1ADF8EE94B255ED8EAB9FFC7CC5B1CD8D213474BB1213E47F6F7B040C77517C58CBB8E77F5165C590691971EB4587FA441410BBDA483AE2E92000D2C96869EA239131039B672D125034926D0B31CC481EF36CDECEC45E3258791C520A185249ADC4E1C946A9214FA6D29F264A07FC039737DC0A4B0FAECB74A8B539AD875C9BB2D6EED2DEE6B69CE2E12E1E92F3F0EADA8A64AF5933BEF893C0D9AB0E4A19B18A9EB56F7079D7D730C1695BEAE4821CBB97E3D5752BBEBF6666194695BE5E1FAD0ABFCC280FDFA1FE2BB45F371F642C93EBA3A0D7FA69FCD30AF866B1360A8FF6707C54504EAF05AF44D2F41670033460009A8C7156B24EAFDB2BEF3A2FBA97AB039518EB8950BB8E9D07D5138AF47F43058EFD57AC450E7CAF54C275121BDAC4C2AA70CF6422F7910B01D058CB4806D28C55C69FA3FE7801DBB2C62BFB86D7A0925136C4055FFDEA8F47FE22332F09A580CE44DA4311CF51EA68495D69079A5C9C8FB442E7681A021A32EB88AE12EBD16F91753C54A56435E5F244F0C2CA4103DFF9AEE7E780FB423BF148C9026EC9E649AA80CFC411310C3440B5AB6FA3605867751790EA9A54E053C81970B3CC5CFF5FC000261616524768F7E06034B55053EF0B7B24C52ABA0F4A40C56E7BB72857C893AA25BF97761819A2EC8B9319C8B8F55A8042879795D06971EDB9A63D85D2E5839CB704D66497508A8628AD4A7B8C862F965DACC4D9BE011EEB5C46CDB6A2AC03C6AB7C72DA20889E6EE48B9D6E84E2ECDBCABA5BBB7CEF9DDB7B97286185283809E6D6AEE4189AC17BA586A274E5DA9FDF56C0C86ABBEE67525D27B15E08CB949F8F38FCA263271B5BCF92121269EF692AD7DD182B917E50DEDAB1B8C5A42621DBFC682B2767A4C91E1DE942A660D3D1F4E998FAF32F652C68C09D4C6D278FA8DE215F6EDF6E254AC8E9A8A09DC43E93ADBBF8D9A6D5BDFF52A0F9A57CBF07B2F1C2690B2D4D1B92012A0062CB0D39C5F51E1357A3A9F2B3F063A194BD68D09412DFBEBB39A19E0B6994392F9925D1C7554456D0D633549616D56536B4F6AE1F0C6F2991899DA65BC1B8F2913F05B88ACBBAE77F7BE27302EB04789E605724884525219327477E4BFBC964207408DF867A12C8554216DC7F0EDE2A74F3450F09719965593AB620804F6160D493437BF2647B17AD8E9087FB9ECAC796362B20C47AA45F5F0EE2A3320D844E78AE6DF61597E05B25B4EB804161678C180C70978B5DB16F0532C524FE4644507A178A31D84BC823241390F2906E2A5007D9364CCD5E332E65595488F65CE00C15C33B5A7E0D2AEB23BF53C953858130287B021AF19FD83ACEC0160129166B7CD39305B32029423C9EB7C1C86FBAEB08302E8E98783DDC23DC2C88A916F061A17A436208D565B2F29D31F38881CA031EE00FFDBA53D5F27B1CFBF8959138D3935AA2340CF37F8F1519849A087DA12C3D0E025E33EDC19022911C7F78F49B1D3FEE3F87250E38EAB61B2E607173F880B9534B370ADEB83BF9AFF3CAFD9BEA06878E66DABF
+priv: 60F19C2888D3332957F177B055ED15294B33E36071D56CAFB5318FED1C8C59059776BF0982F58C5BF8760131D784CBC59C83506E9C37073A735B862A90A1351FFDF2CBF21F6C592F36C142E7372741317808CED0E64E75242A8CA167DDA0931C12067EE31EC05CB5D76762ACCB588D97F885DA913EDB932FD9EFC597E31C8FE7483732182417476267842312383478154743246465608704018564385702145640032387477480015217732076670716666467833626011865105780352472546415744556138516780087816437287418113876478510168466361118214334241670114075453510780284573135100347550388577701188017176163033247283666855118737431883475501656605683610738528276807102471644770484440320781171351481611644187385155343613247758636820584746160088566426010428203244046441730233448316034754248183573334761217257455360176028465830788381643240768766280464653231063260878410470574307373316874208716171123303817623837725475353711451040420210541882572050248682047242423200011856287765407446474167417575752066354152702022122578670844232737845641088335275415401011387716361864551521567112453813325131754308472287050122011151372646414852012325538044287833806555000572835360174353656765502258874142856141381211338024426087777686324317468856134168305145721077050524706654710068461234873625832256211720256300534682510444126505380610114274108128652105757116102101610027146353055681174423780414631814766604742016505380053811753008368165204378032838721314303164347700288275788623102537480584471452714476335173848668614437618187610552480265653710132536135642551212270583780386871528154403781704407403277421066170314475687213210526636380221070102627478732365161434256612014823302523866118448752603774022243324574346365536516014470447434451828251230234262820774158573160724435457606050617288264125822135802242853578238058441418124730762135158784477176721846631804675433384776456172658806162800784657603315350128042358401711706737852082571514521858816256047683653501611414232632543716484572216533733465564646410787800711631308540481036537622137273362580821460630373846686536351643184220531260100470718632847612280013042337373536221652732260400271713866033384882613587553853154040621820351770001324430483350066467206672766355051513856777165413015284625031416666867715458402036710374272215323506650536575663454041153038824213555822740826103470534308818637830853622438247348816776304148463123075133283488484062036787547713120366474014578455581134567708113412242521388135757240176263555784173124460318616660500408413380503574433416272072522707577581862022240481421307758281540872888122804243684675014071523047532418622155330485380820231333301134246558278003026512810705606767804263084124781578616637246768362221215416245532858754872782888871325412358451314080488111481442478110611135071715543656513067667176448838086323467381317537420507301435855664835265066015501051842518277816662454485756187478822648427083443138015222802362876282417008521324004255156877406860744830428285413554573067703281106187011234434728360065728454415716563261413046158800686358771553030874538582228413307033286145140814246244015884017253404030718260532684216764132301055016015132773621625305843836355723257172476645626154671D230BFB6EDE64D1F4CE65CDFCBA4F8B6167127DAA9CD1A3251479BF6BFD0CBEA010D6D3EECD927DD933C6784BE30834AD1DB0AD5B2E416D86836615051F434DB116D8388EA6DD7F7BCBF7D28A72489CA067DBD3F478010F9E1CE759D5B1AF7A5FAF197533023B7C05E835256D849C1CEBEBF17844F39E36D0ECAC807874050C8456855F01EC40AEAB3884D384E2A12F0EDA8AA841E8E0B1C5BF11E2BB6A29E8444BD802C1F460405AA21E7717EF90739E3F7661BC8F0EF1C66208E66DA244292995889158F64819551F4174038EF3C2D60B98EEB43C53BA96056542A215055432FAFBE0E7A812F0F685E24E66ADD8CF09DAEB92445DC2FBB144176866DDFD663238E81F668AD55B4411AACDC07811BA48163C49056F7B442BE8533D9E3A2B83A057F6A996B6267CBB9433FC85A4DDDA41806DD8E067765C29721E6D5A1BB34A80333C199E00C2E3563F9F77185CD100B4A2FF5F1F97ADE70F1928CF198E1298E35161CDCCA9B9A832F4413B732FCD271FAAFBACBBC9664C43FB4C24206365E7FE7C5E30D12FFFF90A3064BCCD44BC8C59735CB95CE2A91D88C0A635E419FD0BAC0270800109644EEA88C36FD78393B42384CA9B58EF61B3BA9EA7EBE3FCEE044054FC1BD24FA70C71243DA12B338AC7461C39661CA4F2C7E9529AE53937800BEA814BBB2324AD2C05785920AF96834B994FFA29F8674F30E2DC5E502E74296E8B5B731B53DB9AFC4497C2A7856D23E28AE1E78D957BC73E8EFA29AB3664A3FC27F5D9BAD4317EE47EF6CD1B6077236600C2767F7BE560AB260D07C6FE184F7B9D928242D269C655D7B896B859CF410C2C61BD5E6E5C34531EFC22ABD9B02E21887BF37AEC7B4B7B1C7AC9BAFD050CE93E6586916BA766F4AE1EA035B0CEEE4BC362CF87AAF83577427C8F76BF36D631B72ACA5575F48D293F451F66F11FCE6F725C6D2DAD3C7045C2CD74875E122F14B3D988E207FAFC198CEC59FBBCE70C6AB11E686B5775CF08673DDBBD296AC617326D3BD9B1DAEE12896671CB0546A7F6A74ED11456EFF0A74391136A5866F61A5D3FC6498CAA1ABADEB900A0C9C36931A4A25987F25E31E2A72388D84CA70102409168C348AEB13833BAD91281CFF1D4C76A4D2F0747448E8F5525763543E2731C97D506F826232C55C1B85C661F5FC726EF9C2E8667D9FCE4D3386081657629CC1658D3BA4559CC0F0290215BCBA010CFA280B87D23BC79FA094B3CB4A08157A69E3BB41B009DD5354D2EF5C0C617A72853533A24322AC5C85BE8C31C3C8BE7A71065978006D5867A3968DB01AF0165B12A557D3B0BF8B44321F948F367A5E3A5BFC9F190F26FB35527DE4C06EC155607E377789E2203FF48A04F837BBAE45E2E4A4F049E181E2249F59F38B151C3F66765130DCEAD1436BDAAB9A4B813E6B2D418CCEDC699F126321E429CE9837B9D00FD9413AE3EFD9649AD2F58D0BE9A1682D9105769C111886B68EB0DBB6B16AB16C9578D3952D24C03C8E6E43347121FC1510952228FE16CF87EFC1B0E6CD47A01752DF9AC81479C7434EAADB137433256ECD2D9DFF8C49A68E758AC3594A0C06B84A19393935C4F6A894B0E90D7166F2F65734568CB3F837A406A8CAEBF9922E5327D5FA2D2BB98D63EB7359E75FB836F5D392B25D32997DADF301F8154F320DCF941D309C78D09722E17AF06055EC65F2F9DD341BE705134C83BA04DD32064CAA6ED894EDE02B81CB33FD86056B40F303CC4B236EED3BE34D4555C8F51E8BC20866EC97BBD57FB754956A1E52F371E4287886AF8152347589BCE15267BC603E9E707A83D14B0AEBA6E94205BFD62F743CC4D6C401FE1E1CA130872083A039F7D3B52CAC89A56EECF96BB3244C4CAEAB615E2A45814ED80A153EBE5BE67DE0F87EC8D48A404120D2DFE26395AB2FAD1A1194C89A0AAFE42EA15B64AC806AF8BAE70E770E73491E55122303D0F0A258086033E6716E58F18519C13B13E07B4567B8057C06F68C6650BD7225DE1F8AFC79C0159CE5161652A10BED61895AC2495777CB165912C0E24331A21B6F4604E8D6F689E06A1EE856968E419FD01E8E36BD3A071F21F9B4B778859C0C524DEA1E1F8EFF0D92DE8EC7BF8FC5DA396046CE9966C198B0B1968EF2776C43278A0416DC2904167CE9DABDE13D82676A8AA9579564356774AE62F4A7D86B43AEE8EC84B3FD55445F1C84DFFBE038C0D5899AC1BFA5CC258AFA4FEC802737F6CAA0BCDA4143729F233E4AFCA6B243CD21B44906A5EF8F2A45698E91C23B0F3BD7BB03548BBDEFE24900B400F5DF27822C2434471F460DF2118108AC3AD2D7CF5D5D824014546D29D4FC258088B2EE8601729BE1F2C8509446FA37FEA4BA7D057216A14758C88E75D7D72B625C50B18BAED848BC23B28B775007963C010B1710243A455CF3F4F2D90363D4E50339B990C449ED1A26E95F997CEEEAEF283FC98D59C172F0CC9127B564AA488E3B18330EB1F945EE48475FF1968E0C2DAEF0F582EB5D0184A983159A894687674ACCCA811C570B5452492E8C79C21F8373E379C5B189948ADA6099A3465003F8A1A3F8D89565A09189E8A9F86186EB786C4491C728542ACB5B333B0FE345FFBCD9E0069619B04502A06ECBA06D6C3D9BE70025346A4E879C55BF000B9FB374716DD20F41B91BE43059AC0EE454D11BE599FDE39386EB72B6E195365D061DCB06AFF60543117F7742EC0B0402F398FF1E3AA7777400108C2230F266F27D3BC29C547FCD0C57EC098CECBBD10E12CBC26BF290909A62E6D359A823EDFB728E714ED8EA40ED58FEBFE6CE2316D8F294CE3C9EA68F08091659A99B3C12F4249D931ABD465F8BA18205F57C46BEBB5F245D1F9F29C64F3791292A8F9DF9C6473418AE055351962795185DD60555BC277C8A7155172408F0B99B78D43896CF17755FF5200A7DAF16112A93BDAED173A2BD934021C22F25AC6B761FEC2B992BD8E28F1246670472AC2A2A76B2E15F336F211E99912520728FA86C130951A26D456C47D5C51B8322208A0944704A815975DE32074DDEADF567B9346DF1FB066F687354828D5BD41A0E3FD2C38EBBA74010BE647EB75E866CAC2C8289B3A097832EF0B2FED44F6AF239A7556027C41E7CD42B18DDF709E75E94360C0B404060CE057FBCF1B6100E2D9516A91B7F7546305A447C2647F76F588ABD7EF3CD823CB6042B59160B8BB1F14BE18AF1134C8959A84E25C1B5C22D1BAA419D547107791E1CFEFDD112C9488A9A57DDA15FBF312DB3A122F70BCC5BEAEEFC35732070465309D2888B65848DC47464AD50ACBF88DA25384240BF2E3D4FF2EE4B59E85FC47F7127814EA1C014B127B1F09BF09FFAFE7E748EA504B6EFD20180329582ABE04EBE4E20C7C508C32B2DCA0BE8E01E80F21693EBF250E1FE7237BF04C58E5EC60116BE1E6BE90655D5EECDA10D59858A678A7B137F82618A913096D3C479145D361FAF0E926F2D9C87CADF302A950DAA88B4F9CDFA66B1D111C3C9B80259187E78B2C0DC3ED3D6DAADAEDBD1865
+
+seed: AEF72BA72607B5D3E49C579752BE9CB9FA67A01B2E8B654EE92177BBA596066E
+pub: A5BDF0F8455F85CC9F37DA908E52A9F70DAC2C1473306439E4F3051E897673F5CF4217CB02FC3BBE5E08E9A257D0B22F3CE939D6E809C88560A0847C8A51AD8C6FF596A8708CDA9CE65190FFE3D24B457FB29C88F670803DBDF7042F8A07A2CECF2E8711F639E561B84AA9357A6C403174E942A05919B4533E28BA1F4A9724C1455A82FAD68762CA8EA8EE25A024961D1991B2E4A5587D2F48A61B00B348B059A44A41E44498DBCB2026AB577083A10EC5A527E27047C3ADABDE815555D16CD092ED86C26863145C296C9523DE0286328BCC16FFC27D7A2E5BED590D20B77B51FC2D5646DDCD385F79D03E63AC83B7522F01FD1A9B5A7307B5D6783006E935465DA875DF5D53CE648B0F570F5646E607CA5D226E2FE06451CEF35E687056AABFA25834F69275634D2E223B2814848EBA21EDDD175C895F66EDEB9A59F4D303C873236FDB5C5551DAC07F5693117C93827201B56109C398A490136D67501EEFE48BA2DCC0E0DCA3E7BB099182AEB71A5833A258985035D8B19AFC76B622DAF4F5A441387F069A6CA00F4077D22E666E32A9953B34384B950FF2A9F4759AAFFC066BAB54D6988CFB35636F2568E76ECD41BC6823054C733DCEE6AB65870DE742A4D61AF0FCD5ABD5210C40463FAA984A27C9E731DD994657274E3FCF55C436B8A956FE21203CBCE1EC1BA965A8E43F5580F9AA4DBBDAB65564DBCD86B1B28FE0033CE376049223B08BBBAC9857B5104CECC681A8003C40295B69E0EA73ACD0252DFF155AD4340BB95B9DDB0AFC97F2CCA3FC70052B2FF327CB4FE8AA6BDA893BA30D2BE86B2430F7A99DFE1634B98AB67327D50C366369AFACB1C842FFD41273DB7510E07CCF8C062AEE290095B3ED299EEEBC585C2BF2DCCC9FC3FED5CB80BCF8A6576E67EE732979D3D82D0619AA0F0280CDF50601AB7A6E3E3A0F62F24A704E6252293D0F2C343B2CBB4F3E988B6309A287EB4A3943290B9C82F6EA93768DFE50A8D51313443CE3444E4B99790964B7282C49CB98CE2C28C254B0D508677DC2E2F44DE41EA0428A5EBC125E7CFB3034247BFFEB234DF2910B7DBA0F4DF808C1EDB42E9234A1BE15735F0928F05880EF8FF25E7C03393A2EDEE2828B374AE0BAF1A63D266FEE71DB913FE4B404DE35E28E1584AE938F9578C5B06799DA2EC43803980F77850F4A557892DAFA4708EB4D933510770C40DB4DCB7BA4F8D9138D78A2799662990FBD6142CEE38B7CFE9F7D39ED50B4327FF111ECA523714A06C642AFB2406299362D16472CC49B9D01A6E0A38880B447F3903AEEFBF5A920145143D559E623CCD860432121B5B0161A43D8FB8280AC4E7320A412E36053F78FEB287EF0AF32E1FE5A1C1E9BDB6497E7A4EF9FB4F0A2A9983F40F66C5DB8AD972E422E2098CDA4955812C09E649842636B6CBEB0E29A50260078E3505B1235471DF74E2E737588078D8641AF48C1AC39CF05632F80C99836B0935CC15FD80F3FE9E941E68C3FDDC8DF1CD641722288A20EFCBB09620F0376414F34E380E13CB09B43B105B3A22A4F54518CF28CD644830BCB267D18793542026A1258F8E3EC4920FF798152E054444183CA5621222006AA18DD9E42619BFE90F35634967CBED9DE93722D38D8011A5EFCA178C6314A43F12798F150FA2AA9BC9C2BAEA30008BD61E1BF257144B67A704BD43823B3E06F6E251819CEEB264383CAEB49B1D7180AEB56DCC735A09C0EACB926BB4407F4AD016346BB9F68624087A22F50D5EF91521F3CA8A68906E56761C37A5F001B0B2120CE86D1FDD86A2F795086C1E63300EF953DC5F94264350762780F703F89100653A83F9E80E3327D6886F85A6FB4A68C22C114DD54DA899008347F08C7ED6064DA26DFC8F9250DB0D33263BB5ABC997A949D845AF963F3CD51CF4240B6C2EF3AF3D0BFA3938BB5F48F0562A06CA59B662D726317A8C02AB28395C3EF958E06816CA972792C6FBC051123C1564E65C9FE5E13A8E91621773694FCCFD4692D4D35A27F6E2412B49804CE472672692C636F3DC22A2A6FC050CF9895AF34A33851AC37AC2E7A2E42D401088F119BE6D66BF6AD4B7C9BE4B65937C34137924B5F9B789D93F598C5162C500C09E8EC2E4CCB47CFD919FEE8671239A3159534FFD44711F515286F4C5F043C02B94727832F41862ABAD03EB0A2DAFD8CA9B766AE254B1568B75CB65D8491B488DFFBC6E5DAAB4F6B2910A18B0139AF77F10137026116DB1C75BB206CEA39C2EEE4A760A37187DCFC9A3BFB67A7688190D5B408B8F93404F22BCE4DCB1EB2443EA95A12495F9881E303AB7491056C1BEF4EE4DE242FB2ABA8FFC4210D9290A291549804F308D1F1E79453B8EEF08B7E94F306C9350263C2C3FDF9288E6B77B74308548BCDCAACD999B72998E6F43B037AA19746C92964EC170D8F4C45C9E276CFB38090287A1FEA8C2A3DE69F246F66BD1EE6D99BEF25D817136AFF0518584C04103EB4BAA1B0C13A09F53A5470CA0D3BF811F78524F8BB1059A6AE908959015917EE1D6C458067B0238125ECCC3870465FC8DD6FCE667DAC35C3395F2F99D9412478F69286176F842C12480AC3C1F10E17327FF41A9C9F3CA25B1DF71746E38D495AA39278EDF66784200E41939ACA3A5C6B30133FD34648CBE9E05D7F8203C4ED349F61B06898DFB59472A50C5065FFA3EBDCEA251B37FDDBBB1638B7B7ABC392DEFD6D8C2A623B5F8C6B2AF21837E4DBFA31049262A89C6DFB0DF74D4236C231CAB14926955BD861
+priv: A5BDF0F8455F85CC9F37DA908E52A9F70DAC2C1473306439E4F3051E897673F586D92ED7533389C0202DF540751374583C97B825C4370216AF4AB36DDE304D43D0DACA16C3F5087918EB0AC74D767F421FE3D1FBC7EAA3AACCBD5CB5D09F333CF4B78F53C71C613696DCF9DCAEF19B3C1EE2EFAF0D828521A6CE01FFA7F61A9348527342744071064226038054116606320141710221271257486326667037121338804027786413333762444565247120260711112481538554528818355348570835703121724850217680085831247330511727221071532777537181252433162511266101870334182868555603545033287523215207404240325534605842331807636112112578123748213488427847140378435253062845364733136513038331863665164167881816537665065848863257260565026575136330876105673463618643727206285030703671806436818322112274163527184354571804314504110461483305276281527585556577604221866560252247227633024375431035511576001826578516576032642038878266403868054841663872067833221181722456668288121320355140013335216064378035186542241363324612723361344715333431546685723672037350475440828822807350518723244126165140441743684004218174044766245273324152220377505024108077250427538553813160114380427476282474087652860170448374247256182540047212386666433380053013860147850648461451277375447570165767818683367627182818503143056367684131733603212447465727282433537555073853150367373683784851317615160568487055012186553755658442635833444503161210303854541265435850086145313831714057147057120854520605228538737665130427538038232223511606506354232283180315487066067657113311376130525682787352874263703354678684763224515801735756766354734254556702053117703010838153428847256422882168222781354461343605223116617002218761072342227774472342364510245075075620557536146654153377441306448752117273127761641170377382766582167256065853886542021656228353632167205880115560215680560306250271500428858201477207883872516256244502862366650053734802237606638246801357641266043847685428523576470862427772605087355417711178011230254130776185056386880131707363610348377857813822161177008735870862408816363434033522876874245827032130687514032517084000404550331071880041411855515353347350748833163660475436163376714460516374334807032470377016148566161642212524742565118144158720586251383718220750427038855211255848338323237278850416582248665388024224073714504355652603153613411853445800308877122483607514485078628638685574852023328770115826675755280543602581333212557321868322175661562521048051805784217422803480451341517247206525267651220578854840124507450130330783180120225057375467878261257470561528834570641813282421264533224140164101541355026886165283383701241282521170736675535341222832655883108544384278163414862621416360817830726530353375153418874861316345662582058367316632462543274165056545780126454850320726117724140462523727278438211532634765078536860488641558502057617183425565211328306367418664731407825108631866633714182740052163310713218483574715351876351327521183865501355706182848758085863563015436623450348571177625576370888877313167468486714351112267202247833152524060633413850751063367135630834183838550563386607380546701865460634035501871746162676710175335260356668310562162041187655378322137251758003287138288249A1A4563679824EA12950B80F31653B5EF7BEBC201E938EAE950102A93B46E11F5123313957EBACE11D440BDC9459D1B9CDD345863D81F2FED1C4B534D0F17E0908F1FDE10C037FAFAC1E0FC865B74D15D41E1211EC7AA0EF69F87FD0F8F9CC42B0E0E827570776232D4ED86A84D1F7A2201B2F29B6BEC81A3238DA71A1AC6667AF0A3F35124133C5F3F10D7F5FAEB27DDFE82B59C85D4EE7340F84787D4EA738D16861E4E66238C4873957D0EDDCA68F884B726E10AF47E431DC904EE034F9F491208466EB6168FE6B399E5ED34E118A77DEA15BFD11DE8A531C8C25F4F73F8A35282E32094F291308B6EF60DBF7B54CA3B0F5386AD179DA593BB9C2B7A2461C2B7C1713231A1769F03FC1B2C7C152AF80809453EB6E97C8B4149A04626C93E150EF3DCC298C13A439CDB871893CF3456B9A59FDCDD6E5A873BAE7E5C778C99605EC7B01339D8882DEE88B7DE879BF3AC89910C00F99EF2E8DCFA2EB7D8FA6B5555685EA2B5350BF55633C0AEB1F244C1026E62C82A5685757D3446B756D9ACF6C049A18EC4C9359B4DB246D9B455016821EF4C598BBF834DD6FF82A494531BB5E0A533F225D068A1AC496AE8D28F08DA00DCB8209BD40CBB0CFED32241FFA1C33275A2565D1CC24D3A6BAAB228C2D8764680A105A834B36C18A9D522D0A25EB34FE00B32193DC9F976B0A23CB220A6799E4D596EFD98A71EBE0454E25E93E233191D14A78B5DB29D4CFA2435CE41B13404A2324517F0EFD5B59F714889C66DB5327045DA45C38E3DC4D8AA433E1962F9313AECA58B3122B437F0CA17B09414EFD52EEC5E2F94DE8CA5079CC79F1A11E7F968844F8DA1CCA85D9AF2759A3FD75A9EC44BE6857B403C88E69F1A9A66764CE7F92E622D963E8ADE4BD4973D739FB946ECEDD9BD829D5BCF02FB87E25DECD98C8EC507EB5FCEE4A0AAF62970A6C4F4D66FB4BF7FF735391A27DF24B848E93B4E1CEDC8B77497A8EDB73A3C9AA8B4EBD9443235261C2DCBDF5606DE190C35AD76494DDA71E9DD8EB70DEB2649CB944A60F50F38C4B6EC1E64E12F029D1E0A2D619E4E783BE3AE5A06FC4A355511F177411CBE64395AF69F744773572B5073FC1BEB8797D0508204B3658EF87C62D94EB85E991D2C7A4CD02DF7D64B6587102D4FA321D961AF7116CB37E62CF3B1AD0C3FFD9D9401F175A359D69DB9E86EE9A4255F1574BFBE38A18E94BF0536125045C20921D10CEFF864A3A583C5CFAEDC1151CDBC4C31043A8763AB3714F942DA758D352CB03AD534EBC81764D21285B10E0E0AFC28CFE72A84103444A2D1DD6CE6D7964FCB66242F08B36623800E34510DA71F518C941EB8452C1BD29D0F6A575C7551D2A208CB579F05E9F94AAB26AFE4C7484E86CD05B41BC669B7A1EA0DB9E9F581528D5C29B0A684766E7881E46625AF5D0A37BA1D50BF3F90FE08697B20C7A205362943282350E1747A7B91CD9D0358F2101F5759D81533FF5B83190BFF33443F6C73A0D3CA0BABCB4A7DE4832DD9DCF2A144690F6DAF40431C7F9FE41944E4D168474700C8AF6EE39668FE2ADA2F8B9F015314EB7C230EC3C21229EB886D37F17F9457233C055A7F4504999521EF38CC8B4183088B52CD9A8246107C46108586D8AC5EBACA4072D8639AEA5743086B46553E10A6803BD86B494CE06D7FE6AEA812946D6B939A315F7E200A7DFE2571CAAF009C909FCB75938E421CD542507F50DE26F813B41D10E67E4B5756E8412E272715764C1C097D27434E2D2CCCE49E6A4477CE65008EBB1365865ABD4F709129E7E045368E8DDB80ECB4180EBF5705F53551E2250978C21874FCE6069D4A5A51C2DD54A2D61E189AAC9247DDD58DFAE54EDB816A5895959E1BDE574B0316363658B71CA5A3B859212799DC9D1B1EE75A8163D16263D7024D03F76FFAA106E7CABDA18B5F943F39B420486E45FEA2714914421C79D4315BDADC6FC2A77DA76D2099C28D59D865850152588F33837A06E33323263ADFC75705C1EF5E0E6703999E3DAFB419BA86ED5CE3486D6655D6E320C3D43D98E4FCCD31E28CC2F51B524414562AE41647F16EF6AA763E354952B44AD5E5576BAC79C2DDA9BC2361A08BC24697F6A129CE30999A3453B3ADDA3410DEC30CA11EDF278B47A6E6F92B0C6670E118EF97138C2D6BFAC34B20B11175260994BD93D41FD44B7BBD5EED310B3C13880D095B1A73887288BABA953ED922A46A42450D377DC23495707A35510EA3D0AB741BE55E1107A439F136BC7E1D03B75E733FD6AA3236F379C7825FD5401D1217003C11C422CA7DB8A8AE40CDFFA642F76544CFF87385E7E45FAE6E68347D45A2E32FE15A25DB579642B488C05D3BBF597DE46CE67DB5EED0EC59641ED85281D5E2CAFB15A43744B3B60DBBCEE50990DA608DA0652AAE2EB1CABABB36FE42C414DB0689112A37DF8CBE831B236967497F4FA17AC452B2BD8935211FB423D415FA916058E45CF7AD447F3F19660EA9A069C447D14603B23BE2C6722A581661798A1D9348EE1CBE235243645B20A6F0584621F460D3BAB447520372F041684942C76C7CB510DE9258BCAEFEF8FF3B7C3AAB4D9C4F3FDC9952F1E4B3A232EBBA94FEA8DFE75500FD89221B7339A3C61CF0B44CC36CC17E5339137A5FC7265438D76ADBA37465E9E30E858B5C9B4B162B4769EE7EC9A2D2090B1D5CF77A86FDF7F7AB76B15988703454FF678AFF7E7D221F2A3A5E984739C214BED903A842B4DA9F29E26E820A2D70EF0217C544A930A8C2150FF41D6F1450DF4BA0C81AD2F6AEB54BD5F82612B11DD9717112F424DF4C3F27006B37A51407B133110D0C827640468B287B8D41ABB6693D7A041892DDE1D494CE08ED493C59C68E207A281F953EDD91B978D31F459DDD6BB9AC2CE212C5BF3B15457287E4B95347A1AFB976733BC848A709900A08FCAA732F6558BD818920509933E915EC76CFAB7EE55821C56804FF8322C246CD2D14B66241D0D88F1670124B5E48FC5744E4DF74F5EA51CE9FEE5C5ABD4523D88B98B12E0BEF3EC7CA3AAE48B7C3C311A8840D593F74134CC0D4D6244051AE18C44E5308B3A997711735B438AA4D2409481DA436A84664D64BE7F941DCA6C4DB2724E7F1FED95D4FCAB4960ECCF7A478B6F6AB5C7674E01867D6DCD3BBA6D51747C19B94A4F0039226B658BEE299F23388FB5E7A71493EF7C2016754D020825616B2F4810FC765A67876F979E73DFF831F0ABE6569AFEB611CA67997253730B44979FFBF105F0A06D6FB360BE8877C111D6D0FDB5D2578BD95B34F4408D7D894B8B211FF1F753FF3290E54A9D05C6A5CFBFCBA0C9501FB4441A4B9362B1537C589BB27A17113EF54B068B28FB6F74474D6FC5AE8AA7B66B156FAF6AE9954F52518EBC897172971BCEEFAEADA9B43E4DE8B074EF0D7B47800930D076C6592E859C722960D32355A63DB0ED8138BAF10DB3C235293944153C60F09739DF20B96F76A0171C11B8A704AD44B035EB9366567F9B429AA2DE76FA9C12D285B53EDD61AAA85459EB7951D
+
+seed: 16759CE55C6741D02EFAFEF5D7521BC0D2B3ADB55088F61F0028656AC970C70E
+pub: CF27EDD0B90ECE6104CBC5AB296C0301DAB751FE1C6F0648469E74231A5CB309168B20B154BAF03E312224727FFD0F08E7775B2B9FBFDAA283E0D6DD20B3F8F0EFC52B971F2203B8973D0AFEF578DAD5875142780C13728B3E658F87C1FE077B39C9CD7B7F84F28948250D51D5C3875E58A74DFA7F795C2B0957C6F699127DBD0C2265EC4F9CF0DC6C3D725936B3078ACD64B7C6835D5D21FCB9CADAB91A3DB704958FF70D33C1FF00396FA561A1BC4B4B0D069A71D287FCB1CB90B369C96D88987FD3147ED2838C7C15BE066768C48955F3E1166C62A5E3BD3B66151B0291E3E6438A682606E15C04BA8F56BEBAAB1E7008391765BF0D55C4C9C7E535AE9E01FB3EBC261FAC00B483A77537231C532F453E6B6F1F4D0313612B907005C3DCA1B733CFE377D4D9AB990DABD1B85C3EC423992CF77667D685C318912CDD91BF31350708FE8F401031E57E06878CBD155BF260AB5910757335E98026B22141460CD14CEC795EB5389D025B48C0F2D9C1B19A41D730B508F0C23DF59A93C64A7A2EB32658080F546479955C410399390E2273AB80F87F28AC0892D059E46C338177ADDED57900EB14D554A0F807284CA2B1495E6DAFB461054B0E6E14E7FF9313D1EE9FF83A32DDED566836CCD22B72D6DC6E52A58C7E56ECFAF68133A8B6CFA5F754653EA2F0C5AE9D26C10631B747BB4A452A54BA96F59D339EA45DCBBC0ED32028BF612753AABEE62D59A59D1660F88E6D9E2F1679C7E4196075260D45C9C3058961F0BE3BE6F61D26C30AB6517BECBC07FCC4B06B98E7B5FD9D14EC59E7CF89A4C7E1014BD3D157F0EF8DC37139683F21AB04E9AC8C3525554957294009796B80F0E1C05FBD63B3B1ACEE497DFA493F2559379B3F9A5D94D739BA9AD4214F746F4103F64B0DA83F779D2C404CCDBE4672177956F6600DE124F820E799F69EF86EA372F49780EDEDBD17604606971E8A41BEE1770A85B7DFEA6E6B8B2810E41D8ABB894A506E0880079E093978F11F9FEDEF1CDB4CFC370CA5BA9CE0DE73811CDDB1E7B2BE7840C3378A84ED126CBFC75C209984ABE1360DE2139ACC0363979EE99449B50BEFF8B48AFBAFB27C9458C9A914F3A7607A8E8707B3D2B1615097BB80F07D83BAB83BD863D46020F49BF08F343DAEE8F320AC9424D36BBB91F3D7A8D00579B07BB7C53BC700CF771A420ABF7C656F9CDD5134B2B0C6FB53C8F93BC5C4A475C11AB043C1B0A50FA5B9FA29D5A1E684F50FE9E2E48B8BE54D7DDA7B94EF28274EF5B88C3433D60E027383ABDA44DBD1E0CA737B48AAABE9F98984D30F2DFD50B678741993B8A5B483A2C56E038046B64705E23621BB23870514AF33B36911F97D45DF2D47DB94A4CBFCDA78240C77E9F7B99710E5A59A9EC2F5C89DA2E9C927CB40C58E562CB0AC1971F92A5BC1EB371DA6BD1541662EC4F0F78FF3702CCD723D1B4FC3AFDD757B75BB44A5F4DEDB9A63A15FE399B6E59928CDFB3342AB4AEE2F4DB0DFD48C5969F7409A69DE1CA6939D9121D119AB00B16F934707D83728916086E22F1E09B80A30E3DDA76D1F76DCBF9706B3CD4A3554671D9092E891D14FFD74DF0CB8835951D0233BC1068D6D1BD766E487144DB791DD5A72CDFB5A39F0C5DB47141706925FFF615A2605CE1B63792D35197CB9CA7E518F27E65CB32617BF91A07D5D14C186A4CFB7E36ABDC8C71D4245B2D70F20B6412D478B36E72CBC2E1D44B23AB09C5B89C4725CFA3CE27C79FC2F7451DDF529183FE7C1E230097DD5AEC1F23D3A817ECE30F843BE07FE76DB36FA3447362197E69575719E80588E93E4A57C11FF8AA1D8657E54B1425B6150FFE3BFBEF5BDDD58B867CEBD10DB74B4249A0B650E3AC3A65F828582FFC7332F945E82241CFA3D25D731C01FC7601E2F5874983F2D9E9D5AA781287AE5FB25F8D9BCF73EF5576CC46AFB1076B95382D89875CC30BECC32719098B5BB95FCBD22601930D5A76660B67870F269965F6115E1771D558631002E7388C4761AD4C18DFC07C3B93E7D11257099900A9B6ECA8086970B9CD7F0EA9C1FDF0E37ED7F18F79A81EFC726780F544F4E4F6C49956EF2A70F56152F030BC73C0EE7C57AE991F7E3362115A029FB411CDE0308F2B1ADD50590D7B6110F161BCEC333C5F70A52F6EC186FDE7331A5C2EA232F91C7CAA5308E79E85993FE7FBC06930FF98AA4356170AE3BB262B22C24F3971B3092AE0C4EF033B752B17DB8AF26F660C775EEC805880E12F0F87D5E1965AABFB1D235D5DE332B177427650E0162C7599217184FAADED2CA7946F3033BD6DBD59D9B2758386F463D187D97F2CD436E789415EB50D4A567B623A45B3ED8E1E8E03242E7B85CB501C04BA6244AC3010F7FC8047DF6F46D2B86662CE0C3C6F3AEEAA5D8AB02FBDA8039EE7385C4F139D47F70C5623B2D434A138BD4DCB5B7C40965512CE283CD83B63DD9B1739B19172537C6C50CA6B212117EB2B9F26A94151D473C865E5D860B272872E9113C8399A5A150376CE51EE643918EB0357EB4E785E8BA5FF3259831D63195BF1E21FA81F36D213D7C8BB52B4D9DC17D1C592518B6B97D0BFDC160CCB1C44CC624BECC28B49E294F206073185EB1414A4B80B18B376BC1CA498A9873E76A225DD2E8F8535FC267E40BD627F6ACC8F94B8A70563E55823775C4C58EE180E3AB69E42164E3778E389DC4A4689132CF41BC3816437B97AF05C126D658386DD57159CF61124448FD580F539DDF48FC22B46B103790705A63E0
+priv: CF27EDD0B90ECE6104CBC5AB296C0301DAB751FE1C6F0648469E74231A5CB309D14E7CEDDC2A30311AA8FA8F33273747D84A4F0D8EE7E194564633AA61E52915D5D8E2DBAFDE6D3F5D79C3B28AD634EF193197738F18E4A676CFC57CD89CD0AA6F0E234E1EF9628DAA5784D6E88DD9BD172917508BD299439586A2C69EC9EE37516408456805453875186164354434762851144032503062044733174535345336243074007370072077081545713763660866431727740068416380203118388213565687636452870788087330528072715111223815614114023416424628572273654761365202371732860200885645176752622184560057533370811066568577508011873252658610003344817466632285818231285557473165208431105636756216358276868345764816338628113787615730106550304583831526218881611205302483650721835183030737847070762778474055733402548878760487075428407073405005144801723170186433372802720438860108856746505547118015547131122453566773381342522407281545850801183484018184666083467106168381252845568124004675454602314541338432622742687024545623154163133642142284145826740831864111748641572426058870067085812666034786330234235402238130001884155852477742051765281745785073343582078116414130602308708382046610771844771422553017257116530515834771623210643083653453123174273203072120652165461603377577853268801105230325786774860038401255212558785474148811005612536620386306604704351810446347070743027613512061524183212465467663737220484528055077682744477361738537607035114778361715572673801101334710201843154010635705268423258373218118673778880168467346108724815012616873216832455740487844547741518240111500865103473675713041381803575311157872410255701424078321127582473648431113027582351430662278746751035665641182434584325772861215525770615370625335026857551177161702753358126622760777226647078220754285585438101185067104306615265684566031171156370644844601446724773223546111143485217226474815348070603068162168730827730621315400104575240651321414881564033855112770221780800225157528348444266604837745836675662685500716522842326213800620274755378763818201620041432256675142301443166263778606832838270748825315058517802584084457456813426874047456608883514726678781223637518532315712014762086217806235541401078781766415284331567726815303634475775271858640741021524306284275220610644874785084105424161267563884428838216142316446781311233544824647208842466574102173038377413542118331143367050032021043212425764087110600105282382455268312103048345414288052540078876487667764823025775566311214818185543787576556256857315236518510021215252482803706248475668860228066666672561867742220301027605488000438235713416236536151436128508016780048467212168013085034575086368465731676561760082315388865064664006463851448257676647715152480874332803114601541422802066821101585027654741377572383658717163467081225212357315441278864346071400588203756538864216143433263515106785455401547748303686407408160384157550870668870806518373802647386257117430103643478524250667688677831215028557767150786248416665782857323615017621284673503646038567228556675312835873622053521367101744308644383425387466430243221642874703241566431377885506752554645704356662457447386007618112165350121803204124113324380005611435572303115406311786186209CE53C40AFB0F90429725B870E47031CEA4209326358FDAE2531B5CE92A42C724AD1D1CFF79DB6D07F0215E6ABF1DB5F9303B27CFFC420580A0A8612C08E1F54005EF429BC8378F59DBF6A3FAFEAFA03D9C41EDBBC0DAD976D8E103CBB49A9DD674BAE19E45D44D87BCC9D83E8B6C9D99E4EC4406B744718F49DFBB12932775C82161C63ED883BE33FDC9F724B44F2CC2544CF1851237D53303B82A6C8E2381A7B92345530A7740A6A456DF5245388726AC8C568C075D849EA225C42187D25F435DA2543E3842D46F747400AC1D566CB1763133EAA110B66A72E025082B70845813A7AD6D4D39F017C9E8CB006C11A73C369DA6E1E20B6282ECD8D0553CFDC39621890EE0110F0A0CEC2FD1220C7DFACB8DDE955E336C9536DBDFF7600A64E59B113C28C86CE93B035C75E204F0FDEB7362F598475DA64251CEBD14B95600B39269C6C5FE67462ABF76B26363946B3DE38F6A3A53C261990A5E147CB12D093016342E57CA38E28736ED4F331EE1A75129386DC2A2D8C49FE616BFC5A321B5650FE51B38EA51776D1EEBC454AAA446B1C2EE18C10690AAA7889EF9C2C25FDE8E988EDFB39273A0D180653488C1C541308305ABB2E8C430EB68AFABF503DD082D8EAE81E196781A735D990CC89E024DD22901C5A3C382960D25B076BD38E01FBFE7173997760ADFD97D94C49BBB4848DD24666AFE02AE5D592CFD8354ECDC74C1C3BD713355D733E7BF531031491F869D01037AE0336E979F263D7D1217EE11554B90BFE16A103CECE88C19FC1D9B5987BD0557AC9D09F07B0CE6C01D2FBDBEC726FA5C7712E60F70F1AD4C566733CCCFD650DF6ED846727D7C3D6C8412843ABEC36750D8296776123A10A1FAAD44EE0F19DEACF8C7233C8E456D3964E0DF8603FE8BC04F73A261E1F37EBD5DB516645F4C800186A10FEE9D9271B68A0B27EA99BD19ED87E91519F795C6A1A5F7FE26D0B07D9B618CD7153E8B302FBDD7010A03A58817D00F4B9BB5BF8D9F9FBFC5FFB3FADA79F1FFDA8A028F85FEC0A6B74019EE18CB7AFD4EFCFBB259AA3104545A64B1B6F226A72065E053FDDD950096E8A7FAFF0125B4AA880B78C84D02F00421A72942C7D7E36F3D346B4434703FE26D063DC65BA0A9F15CD05021AEFDB4A5FF916FF20BFEB723F90BE1517D49C16DF4C919E9F46C54A508A9D564CC781C2271DC08086ED0265F60AE93D8BDD7D1A6AAB191F3A91A13D7F513A136385D94C83E770972FF7D4602BFB1A95DFC204CC0024CD5AD7EAD3B5D464EFDEE19A01D57AD19EF3E47BE36CDF2913C145B77A144C9457841F5A855FAEB9470BDC69641EDF4A800F20BF88BC5307DE87C5A0CDB7114ED6F18D7638ECF577A406110B2C343C6404C5A4A1E235C50E48C81F60AE78A351080122107DEB5B3E296919881EF977A12F3D5DB6ADDEC4A89E31DC7FCD81F217E31674072C5E199C43A7BACA72D697A3093766BAB7C2DADC817BB26257D032AF358DFBE2CBCFA8C2B87A530323D9EFF5709C2AC3358657A51C13C0F8B55BF17CCB04A29359380208CE79F80DC384EDE6B501CA27E290E51B02321AC77DABA35F297A552E21AD4231298F58C91E56FEFCA7C66D27BBA45ACDBF7B63DC48BFA63A0753C47822B39D11D60F4734B81E7FC8895E1ADF2B7C4A4574EE9C0F4A829806A4A99841E6F836DBB8D6CB007014005140D2C39DA195E9429A23B889ACC8223104125C68DE0E79CE6886BC06ACE7479CC99B3CDA6F568FD8A02329055EC10DAFA1AE57E09EB6D54A9EE3444B73F38D2E6B8224F7D7B2C80C490C28FAFDB2E22A83BAD4D75658DF39F4372C0B9F1C50D284642C303E5D7F54DFD50B5D097E2F1DF300D7B8706461445438FDF83CE2BE35E17CE5DA9E86A843AA24072F2B20C5377841DCA8A45DEB6ACED51B9C95FBB93B2E4D80274142DD1A20139B7E1DA43748F1DECAB315FECD77F74ABC890E6443917052F428FD8A41FC938343A3DB5D89338F2AF43B84E83D7AF389156F88D06FC97658B37B9A6BFB6238108BAA40E9C6ED8A348E2ED58FAF6EE3D3833E4F0AA517CEC9F7D83F5DDF46F88DBDEA230F761544E1A10E0E69517E47F94D7230C0C60371E2A99897EB97D7BA3D8B6931FBE0B3849265C65F1E2B8BD120645BB724A0EA60C2CBB6FE46287387610F139CF5FCB6B0BBB32A44BA4C3B705903DD54CF0EE1933F4D7257FDC4331D7ADA07FBA0B9179FAF1FE3C8F4F9B654BC6719AB70F9B36799476EF0C4449F1CAEBBAB550F52041F88F0F4F32A0697FCD0A28B73E26A4D8FBDA826A680C37B3006B059363062AA7B04D561D38170B831C47D656AF0EB7BC00E25CC423FE75DD89BF7527BFF04CA793CFAD973706D5ACB8C4362B4ECB3DEAA59E9ACD999137131A1A324FB43D88D9A9670067507FB95FCD80B29E675093145442BB9499428CE0CD635D997924AC4C38C5A21C452E5A399AA1BA6CA0050A0E13CD6C612E9E7282BA21C4DBA82F4C65D6A6E0A5D616AE2608C804D463BE286F73526E70719EA9DCB16790B31A6AB7087DC60DBC370078BD1C56219CD548BFF20163B8568056EC6DDB1EACAC12C873DCEA792BE7B6CFC7D792FD57808FCACC0C32684DE298E6EB382C0CC03D6E6AEFF28EAA92F028757D27C4809614AE4372293CE517CFAFB94D6C49EE963D2B887CE13EE6994E56BF47C7927058D1FF0DE5C7DDE04F6148F8B0694FB6D99DCC4F84417EF371F76638B4BAF8B83CD7810116DA648B202DDD928C91B0DF5E9D4D1D830AFDA050397AC882E315F809374C7FCF31D9D011F367F0AFE7B0D05FD0330C3EBBF0B5003635D007461B155911D26F93CFE7822B509B7149771979FABC066E73B5B959187FD903C4E0960A5C748358F7CD0A86D44F58B53CB53B37C47558E1253440250D0CEDF6E19F9EB8C341DCA787E05E1E7BE7FE2DC244E2B5F915BE5EF2CC789DD77F8816D1D29CDFF437F4D6C76BB0F99D395B66EBAC0F8BC4414260B5AB7AA5C430B330A4B325A725B709DE25BAD74D3A08F6F7F76C76001AA207C54A83EDDC4368A0585EFA3C5439CCF0BDF11F8874FF7A196A1703004714015D28DB1BF8A626CEA8E9439A0919FE802B5CA19F3A4C1BE83F0ED3EBEE4A03A3A438DE157EED40FBD96C379CCFDAB89FA5FBFE123F10D552CBCB3CDC055AC854E52D5198BE1C745A79ACC57660C22105A786C8E1349CCBD5A7A76F115A7DD98F16308661E2AB3842AB455D11BC3D16658CFF8C4E128E36BC8912461F883B29164E984F8808DE92AC0AAB4CC3C8D966B365312A6B525E421780FE0434FACD08E09FC65CC84B8B21E42FA7115BB5A1FE4CF3FF75133BFF1A437BF2087F7E31C7D7C3782BB75419DB512DFFA88297B50C4BB234435A301489A066FBF12A6581F634EA9E219C3805CBB63F9ECF1A47BD4A1E5731CDDB28CF8C0C40F8FFC2CF7290503A22F4B118A7ABDF6E5FC44C6DFAAB37C8E3304A10D601AADA7228029397B58DF0443C155AA2AFCD634E505BE5B1CBA8EAE7373C5A933E429CE58F8C520897A98D6FB3D4A
+
+seed: 1A1520478204D8CA028FB48EFD49367A562F66452E43B305118C85B4444675A8
+pub: 842770BC8569EF9B4564D078EEB6270114392348DE1AA90FF94B56976D15AB3E1836BE3233AF866B20CC02AAA8D87FCD7FEE1326D80FF94E2DE3A72AE84AF0FD92016765BF45634B405DECC316B73502E31674F8FEE147801679DBE2FAC60774795788B5125266762E8BCB71AB672119CCBED4EE4C5DC5429D98A6A6AA102A79F245752044F2C74992B08329D30A6B51A12A9B5B36CD00DDDFDB5DAEE56EEF87CF31CFB0BFBF4C51F1150DF8209A85231B9F3A22E12F64F27AFACBAA0141207D452C53E0CCDBC6CC09F3B4A2F1264500668971383AE96441FE2C4ED0DCAA91ED7C2452F1826EFEB2421BB1B336C7707B6BF68F8BC603CA56883E437B5075DEDE9B50C094A51C6E47B3D06FB25F5369480AE7BEE9C3D9635D684E563C50329E1D32A6CAB3AA491B53E6D48BEA9C140C14BE3AC917475ED7FDA2593883B6EB71C950651F2A82D16F446B58CAE9709C700C2AB622D824A425785DA8799FBF875CFFBB5F55AF583378D624DF7B21A97A241130C0F18EA8B4921FC70542CE3DB20E6730FDF6629566E2656F84B4C96E6F021270A248E31E9B718B08B47D2C42558793E148FF4548A09A091592F6A57D8D0242A8C2B0EB3EFA26E477D9B530D091EB884B2B720D9DE025D9C0D0E4CE5961CF59C550BF62FCD7BD659A3631159C2F0FF4DB34E64A2C3E13B6D48EF5E420444B95655A0EECCF6A8E898305D6C9C117F4EDB5772415C0A005A1CA40BE58FBA18059BB10E25E2F483E3B58B2C59EA4794A07B493555AD4A555FC253C8019AF81DB432AB4624A59C4004A9BDEE75C91CC41A20401965BABC0C55992F87F538F9ABB80EA4C91CCC954A3E2BFCDFFBE8D22B9754C8535F0F642810B2DD2ED3ECBB2BDEC3243E6D1CE1B489BF6C0BE50B8316D0045FFF424F49961157BF6853E1F902A3B118DD650C529C603E9438463204F7DA7F489CE50F7A77157346AFFE9BE973DCA0AE076B2DF85AADB46DDDB57302F92C28BB77890A0F50B9D74E12AFBE40FB386D08B394AF62AD94C0538AA7A77A7422167604E9AA9CC7C08B443A25F850B093AAE707D883FCCAD208B7D991A9C0465BEFEA4865B6A267427A7F2D02861EDD8BD6E72962EAA6D2578FD45A27036F5E9EB6631EF5ABE2084AAC7AFE8930DF7834F4B13DCCEFAF45A632E7783852CFE5FFFF87ED126155D3EE0D40CA5F2E76E1BF47FA91BC450602584301A7E8B20E78DA1290AA8700BC6F0863053D0558A35DA679286CC974BAD7337FF1B8BD169CDD3C15A17ACC02201D536869C6FB56AD8D3CC0E3BC86816E94A7C07F220D03A12C86B77C13FE2F03F455A5EB3339FC709DB02F89DED1D43967495C75DE8FB8A4F37F458159842FD69C3E1AFF691C3FDBA87027603D5B99B2ECAF26752A115B0AD623CB527A82F6AEEA016F75FA381B2325C7BC4370357C2D53FC27BD2DBB6B81FE1522533016861F1DEB34B78F3F76E12D30F4C674FFD86EF1607309ABB3F015A9E81E4E292F41EF0FDD97E81565C546E4A8A2336408A1E6F7A7BF878F352338E18A428FAC3CFC7DF4F9013678CDBCEB12FDBDA4FAC1144DFD42CFEC6EBD951555698732835B701B6895C0383CE71B07ADF320893C7CF3A50F3D067EB9BFE93F4994388DDD99928EFF959C6C1A78B3474F8311938F6D8E488BB45CC72FECAA84224E5A9D9693FCD8486F78385B81DC192B2126E8729DFA640CEFF389CBD01304801B56B23E3CD64F32982EC8AEAF6D1BF875B97A07CE44F342FD351188E9798E59EAF1BB3F80B710D732992323780EDEF912CD529391ADB9C4C7900A3B5D34CAD48C14C49AC3CE951EA8DB4E944E8DDD5E83BB2EE3444B165C56FB6DA01F5CA9BE7A7D2FF84B085D8939B3B17C6DDB32D117E1B0AFF70C9B6C7FC29264A709A92B216B8C62C29434C876A12F7F44F1D27D58F7A5F7707B6CE80A538D05C40FD23572B9AA2DF9C6C271296E0A6D9078F42BAEF55C62809E8FD044C898873EDD2299216571F832DDB7C5DF718C4270ADBACF6D5EB3C5390418F561A2ECB4CF28E24A082387CC373C3A59CE2FB294E1E547BE587E65D8045A1AD8F58936FB2BB7776CDC4794E40A11DBB22B9EE9FB06AEF118FB9A72A7B710C1AEB4761034BF4AF7042989B600B4EC8D6DCE81184B2D6FC27FD97BA2ECA40EA85FE3006566BE60CE8674CEEB9493323AB6561FEABE98373FD7B45674C8161B16F147001B1A2FF74DC51A0A15AC87F3CE086BA134BC3579FEB31625C07F698533BADD414E9A8CD0DBD21E0678E2ECD7356609FFD4E96ED65C3BB6E917C6911477986665BC9D3BC2FFD480B5624C143E09FFCF5EA8433411DE214990BB6A452391C1586C37D6AFF7941B686D564AEBBAEC3F704E4EF03968999EFE95493368853458A40266CB1B1F1C3E0249D816CFF02C42980A73CAFCD929AA9536D8AF31B5F9AFD0E323C3E174AEBA0EA50F9DB0FC04E270EDC19249D65AF12A09F133A02913388B386AA897A7D4F4BDCD3F90B3282FB48DB6EBBFB21257644DF17C58E57A150E36F78F802CB0F05FCA557D5A77821CC74A0B5D9F76E0D5A9B63AEAFFA3869EF79CF2F2A139CB07E245E9A5AE90037FBCE24CE4B076D4795224C2AA886E423785E0E9B014D4A7FFB688BDA6219DE7CCE223762EBC9A48830A4B935D0F4D9768F84F7247E896015063AAAFC1A613F575458043420E2E5650043D230F06B6A78D093B660A26573A645C1BDC900A01B8CFF95BCF5A2DB23A69A69179681F550E04C324A48BC52E92DA43EE0
+priv: 842770BC8569EF9B4564D078EEB6270114392348DE1AA90FF94B56976D15AB3E71C7A10C110A218599985787FF89F74BC94F14CEED203C92F76B5D67C5B8B6796B86718BE88A979951E9AF1ECC344FB99232411F87888F3FBE77FEFB6626DCF784DB0C7EC04A3261153E64729255E5CE6B894CBB1085A600E4BB0B03317F8886231702201058730723376188778513655812720172542417247143646428467073443314821558505445472081234686830274636170123228128315700625348670708056866251602156687542664438717868470378622443800377346336674542226381071034445030257183710411707658015133175365315628308222508432565388880836567878400317604235388313286765740235347182434457158814480762440746180380258134310686500677042318457626156280488882282674122811574762127248672012054076701118281460302420147013883802514645737522146600613056240136251846755266808132084387728784208687387732824316004177161457846583175562587327431712865534241213236603884536300716533078315626426655820641212230038185751644338668423426326635871105864138063716425330034814786417767388845064650681757471566615121140773133884856204744373720784387445647085255465817762845160020133010878367040062383084562467661733017263525738783274220670582858510453422721212564255311404704722055575627231518700445822334550788684185480667112556485545130470664356488815156248663062318887582478736241505814413368843465478500161842054157741700704620375746677448687646640465602446038662064506232040688488545875504681671327453411777175183001230743263842058632518307126387382745311055143874741412652558685470007145300836667478266765746720400414877053756562543853638554022055767416327752773186204257730441432226483061516523786268418417712485468645471672265731856455178786356443681803602068235327538110083351515556343615860803101225335447663035673464647078555401071381357720555132331165637465300650732644127750530363550200566217756741351568334658823132266106657664531167085175005811475037652261325817387606338288620565380266463665550880676743051820742216586384231472841757814014150130847064753035562530164461378674013218167481421451275114210804288236311323672003873724375163251155154108303660515386682522367768687520216231844201453516302058387034720361772125260457738774237645072531304857314868085873347454730385585338757726430656643873504153136638132646508716410685703137771500478115462036447706678642871630833317150172751226273671655845870784214880067160103258382278756008163457685251154205335015838270738631741007511261313311742713137207824551084847527852768414008530840523524707832357752407838621837744764534808245473201313077736628712454463573282036047606177628356273553851122846857773665077638871445056113471408877065460343677241566065401740402885336200350816455438826025210267242615477370212156817586755010774300244226438052721318725583862702644650137844613448618726312407205277538504854674606264472087585650666470602431007157683533714105566221537353610384157440670683218006615808544110058801184806484305030012037257405731613708843171027163255001108804531421323638770136218052673025686322362266664828487564412206143775215655602403825841434121722386033731087561201120571426628221551541811228681254526288715703202548412644DDC673FE876BF31B6D62AA38B221921675EBFCA9AA50D8C0717D3FF935281266A40B58D839659D70D618AF9961C2F09DFEF7FFFD9DC74FABDCBA2BECC333FEB52599A3F8B570E6DDA5FD6FE6502B04C560A1CD59AE5C67EFED02291FE2A2B190C226EFB19D5871371D5DE58883D163437507226F54E01AA46AD228F395AB023F66A866AE5DA63D9DF0B66314B5223802B27DF610449449A29851565467C348740D53D1ED8E4E0C36A4F422079704C39702CA65AB322A370379733AC070C30BADB277E629CAE8175504EC40F52C12D6C6B2B0CD641158CFF4526973827AD68D7729E26A56DFAFF82831D8EECC3DC1B296E2956C7F7848CD3C70FD67F4AC16405AAAB4D4C78A1FCF2646D7F763D6F295F0D35095C4A3A2E83A86CA83D9E24EA38EE2C8667804AA73D369C5FA0EB148ABD763D5E04E16D7179343FDE380715F87B2F5C1D96CA406D412E0371B9C5662BFAC94821D3FB1246FCB77A7FA9232C9F3972B0484DAF748CE475AC1FB2339686348B6BC674FB7ED3E4E6A6C92A480C839D153BE71AA61B23DC004E22D7D1C6E1BB696565DEA94CD434E458D3580E1847DA39BB228D13822695850C73464EE3E88C9209ACB603F2097504FFE662B0B20B8B27138DD27E0B338A37045A93DA327D7EC4F28BBEC8415CD0A5BE2D0A95C67DE588A539521C11FE14346FD714F4B51F07CB6E7CF466F8B1D979A2362E08F1F49F5621D6AC52917151E61ABADB7E2BFC10A6CC96664CC0335BDAE35DF198CC44ED61B282B69C7A1B3FB71DEE7B3E053B7193170A768601978DD4A8DB92805E3C8778AD770CB7D94098E4EB999C16F4FE59552A3073C194251179A81BF3BDFB6547DA36D70F46FAF467BB216DA5074E8FE7AB595D495A20FC5A0210D6D0D660DA3F716EA06BE4C56CFF576CCC2328EDAA460E37103A7B03ED2A867B1A454A9C667C1D01F132F2348ACD9B8A7C4B18FB1A2C64C2EB54E3EC265C864B922AC2B1AAB30E7125E5F6EC16F37D63C720BB320C40B12A39E4259C9FDA98C37ECEB212714055E0BE07F85E39FC4679B9F7DD1FF402E7E6F97CACB1D2548E8C469C0EB5C25A98693AA70813BBA53B351463FFFD5801AF39E58F8490665D4133EF03FE83ED3B6AAB0E2BECF0BA18A66B6401308FDF1720D03005A94B4C2E319BD76AC95ABABACF9B26EA783A231B444CECBC8C55CE98A038983BE9439158FEACC518CD113C27DE1F901E43BC060D7A32AF33224639DC2A2A0CCC60B31721F44961DD64B81E1EC48852D0CC0A784B23179EF02BFE135790AB578B473F95EBA1679E48679C0EF848DAEEFFDA4C1310F0BC23E4AB154DE62FA80727341622E0E77062F52D4586BDF4AF660D067727EBB7B050FECB835F2C6AB3D2C8D758AA6EC45AC79845C62F92759306FD1D9B97411A1907BE21EF244651A9B22F196E59F21567F9988C8021B85B7C981E60105F725AF1089719F039F6EB31FDE133E783F085CD5683C22EE3E70A5C0593C500CEF37888797874DF0A3DF2440F1F8898253D477CB53431DD42DDD25DB96CD6193AF62C6E3B69EB0C73BC449BD7CED979451937249C05502BD32CE73818794484190D3570D3C3495A46144884E1D0683266EEE8857ABA5853BBB5A0F222815EEF93B2F471D2054727238F19383D29827FF65A093E1EFB0B14141CE90391E8A6CB166F200B6C763DC6FE3E5A1BEEA03DE341277465F89D78FC1399BC92D4EA0D5D62CEBCF1876BF37A137B8229CF0183C835FE9DFA73B7239E6342D0078A247908EAF1252A1065A60CFCEB37492E9F524CC408607EA865B361DA0AD206E2C9D4D4CCDFF50F9F63D3706C9163B1055693EF2D9BDE961BA85994C304047EECA80646FD81F8FD46CC44863457DAA860EFDE929A491989C80E6ADFC794850EEF0A0C01D343974C407DD514CC66050BD439F9053F663C4B4CC486F3F11973C161E532E5D8E9AEE1CEFDE8E5CBE1A80D1D8C436544AEED490A664FD8F91B6FBA3077334637FEA2E549E64281F306178F9E1A8F56ECD758F95F94DC952E38D78F92837B99472A13F677E6B5AF3EF6A6CE2E9AA54C622941CF98F938D79B78355F3AC80CFCD0647C0C1E1DBB4B04F5688E1D5E0F4D30655C85515DFCB1C49EA1DD2D7FD441B7845E60369A9D73FF79DB6C183CE9AF44265B450F076E73D089D8AC083D237CDBA4A715D33F03E8EAD25B4120148B36C63F2296D9DB09D017C946A265CDCAD3263E72DEB0473ECED20E9E3FDE02CD2DEFC2A166978EE2B01E4EC75F1A32E96B24958F1DA8F0A3193F6E0200F4AFD59ED941909EF3D5D041B1D1AA1B1ED79280A82604AAC11F8EA04EB14EB8B0D4A06FAF2FC99D2A5CCBC5A759500CF648A1A67A60F10CC7CD0B6B5A4BCCBC7622D9ECD7FF83E1599343A22085BB4A11DA0446B22C668078D5211F5DE6EAD9272165A631BBA60FCABFEDE47AAEC562970DC24F7946C279BC0E9312DC6B74BFD311E24C18FBD011D59853967DB754B17FF0AF52F6F1B602EB0DF2C2880E47EC87DCA35AA46F7E6604D2BFCBF71166EF6160ED38C70AC14AEB97E39FB97692B118A6E18B692FF6AB91D196A4E718C60C2558CB5CB658AD4E5FFBD90278B3169512B5EB12FCBF21563249699C8F2DF7BEE98264901605C1820E1DAC4D6D626F4C5CC06A05CD6DFCB538B06C0634F5E147F555CC54BA7AF371F70978FA3501F069C481F43933A979822D2A79104C1DEAAA9363A520475E2CCF6321F0F123E3AFCFFEE327A0F59883C17FC1D3EB5FE330AF9E981A3B895A78FB31FABC1091575E189705B0B27B04E05EB9EA6D05A6AA7C6D32436AD27AD9F4096DFC6EBB2E85D4449E308835A4B49349EF96B0AC82CCC6730E1429AF80DD8D5E0B84BF3F841ED609E898F906E1B09753FA0E0A5AF43952C84B400D6EF09F7CFB78C430D6BAB17FFCECCA98DEBC078236FB65944AE95B34CA33D7AB27DBAABF52ECB3123A8278C2142FF7DC357FB491D7BDDCD3CA4284D949D1EFE905F02A01DD44620A9A0112CB78214057F6F0711755814EE3C596EFD7230824BDBAB540445010AD16DDF5FA0EFC4B5D90F2AC2F57CB1F88515A9977724C643737B472619278BC747BCE1877C041FA8BD3027B56D7F4C826B75681BB146E2D42C4E8F205EE779929D74C419B1A309B9B53A2F7100355894CBE365561FF62FE3F0F0E9079B37BFC52E1198DD26471B7A6450AF9FA64DC9A070612C1650C9805D3F7336BEEF26FBE686A9A5314E0EBBE82E5F80C6D596D145B9B3840063A7FBC04D3A2945B483CA721B90CA75DBC79191A1FCDEDDDB499A96A0737556A2B6EF536653632A92FAE2C6106F069FF829F2CCF8FCE667AE7D617C9F245AAA18B60A57103F6AEB0E225971AEBF3D9A5D63866502DB16CCE4326C5B544B604145EE44522988614A6F92AC10FDA5D064413EED3B14CD9D410BA73FD59599C59475201044982DC6617AF7A00010F99614272B18CACF644BE0126C1840ADD2ABC4D20CBF39212379BE93C6AF8B1978E69C41C514FF528B6E3BAEDE9E8817C479EAD
+
+seed: C2B63699D7C013E2D0C3A6A5D79CB60122B8C8574694975F4D703D75035DDD6D
+pub: 919F02200622095E1406B0D36B1A90A3702302AD0637553809B0A3B8FD3B1DCD170667CD085153D0943CD38A3D1DBF3D912FF53FBE702635789C4DAE8F6BC6750483D1554E30AB38AC6C796B7E838B39CEE22570048BA090BDAD7A851C95BBE48A564FEF34D9F72C88BD7223ADD4FFB1577F0A24FD5DE75289710830695932FC0F619A7E0E41B26436E26F277C8C1A6320460444EE13363A353C003B8D4DEC547FB6B5D054382927984E791C9A718566AA78C04C744FC587AD18F55157D269554A5EBC1FE0A876FA2B1ED8BAA686625A99DE374B93B300EA39571116A9F7C82AA6B96CFD98F8891CCD2B7B8854C3EC1145D9A069F0BCF0D34F9DBCDE3DB51B2E87AAFED50E92F8D4DED20C5F7986BC99C0A0780ACA994D56D867A10890BE4A89548BE3E790FE52951AF0860FE66B8665802D9DA9AAF1F32B2E37CB3CA788A11F842C851AD20DBA6EBCD90CD27377FE75D3972A07FBB99CAB3ED4EF317B6A43DF763A70A5F6C23B5C5EE6E0F104EFB6C57B338FACAE6C0C437EFC90D5BA12C0146CA119284686D863B5B35470E620025AD064673C0CEE9839D9E047B78450C4882BBD36FA17E4DDE53AFCCA9527EE9F3B1A5A99C65128EC41F3ECE1B3782C20AB53F2860F472C31D04206AE73E8C9A43AE565DF540CDFAC9B7B267723D324678D11BC421F3D724CD2439762CA45E0E66E06DF3FD2D218CB2B35848806881266E3AF9685FB1487D81B39EA53A90F449693F7D4C942255B3621AF43B46E928E0CCC4052432D1066AFB4D03C6BC118740A2056044896A2C6460D0FEFD7E5C9E19B2426BC4423DE45F9F698BD5A803178AADE9AABF9D3E9A01377C299820C4F61A2341FA1BC5321FF5E80F9D1A99D7475C8B78B851DA80167AB21B815D4EE09FD51A2C7FE400914D2FCB2455AA43B96154B27D6164D0A48AE97F5AF447444A15F0228D31C2655241C98AAC48719EEED2DFE0A766C6E199699DB26CA099BF1943359D8AE608576D33937992A268CF6490755D79C1B6A14F494C2CAD7FA3908F9222C786E4776AB984BB7F77B0C892D806C867EFBDA69FF21BF473223067FF55913BC844C2CA71790428BC00EEE3D60F1ADD02ED9E27C631D3FFC6AB6A0D381DB59A82BD9C0FB751AA0AA3E12399C0B04195A852EA5294C27A31D9080B0565812F829A8E9F4D112E29ACC735152FBE32DB5A47A9B519B01D392BB1DA7C9A856E3CD9B1F9F462F8990C7668F289F7B03FA92F443BF11A4494E18582B0A778548D193810EFFCB0DDBCBE9DD02683B9A9BB231187D5955E04AF986A3448DE0A377887E987F7BAEB025EB273739EB77E88DB7B7855444C6CCF9F6343F30AD4D53D7B2A4923265292DB0D1D0BF85AB199D7A6FE544541B66544CBEBA4518BA5F47A7264FF66CFA2BA8874135B4EB23E094A61A1D3AFC3CE418CA9CF97A4B08C512C6C1B6B50FD6B393C278405AA5091B54F12B576FE0499369E90BA685EA7D5AF915485F5A93A721A342D999C985FC32C6E2D1E43D4CE319A8C907874B807182B5E0F0794338E851B21543ECDE72080FA348FF7CB9855819F905880C9DE0081B149B9D74169D0881C37E89E4874E6D8D665BAC4DEC61D3200F4C7B88CAD336449E0B2FF4E46961685645347280BE9EC144ECFB60441A3249CE8C9444ED17BDA3803F075660AD88296DB499C54C17934DFB76E1B1557D03BB14106960A0F2357832B314478F694EAE1829D53CF696A7200AA667D488C85D4CD25A4669ABB2F69B3CAA7382F99A1A73E75C48994D00CE8A9E844E4A9D74301F8138A765B48980BA5605221C3646867A19A02D3060AED73858BBB4DB5B21FD9C03BC670A61774CD447F55DA763001D56B5121FA9AF4AB04E7CABA5A34FA17A40A696E11C40FCD4C9091A61006D7A0790F0384ABCB8EC3A00C882BFA11058CFF423E43E0645D20F5603D116BB3DDEAC4FC27165D7D5387EA0EAA963BA3FCD28BBDA753053607C9D76BB2977E7E15695A4E922F348522C3DF49D789281BD70A39DB9718AA259997A3A5C9C7BDD7FBDE7078792CE4909CA2EFB7ED0FCBAAE72C48AE021C0952E5EF7E569A2E12DF64974A2C0AF1DCCD4DD9CC1576E1F630CD8F8E60BD5566DE711BC40EEA8358C025984DAFCDE3838FD0348AC1D5D7F4513F20AC862EF322AC22C2E1D6D238631C5048522C1C5464BA55F9FF4C1DC8132CA7C3245D540374ED191CA00CC43BAE8FC824E18D83E481374E43FB19C9EB861F9CCAFB005C009525D5024C47100580D5EC7919DDB28972B0988B4B0B408A75537B424318C0E706BA8A4EDB0A13730D6232FB1A5555AE54760CDDE6E1344476774507E414690DA8443FCCEA1C1EBD5C47A96FE2C1FCB69E7D377E359C43F2571256E7ADB761483F3D814D96C1AE16B242E91BF78AF86F8EC9485B5A1762ACE803C64305C57D0897F4A059778A1E9D6CF18352BACFC47C57ACBB1AE6E04E27E83C0FE3875F5E245F04E983DB085A3710FCA645533B87F8E3ECF3A1A01B8FB88FDA78F4F20CBAC99F71CE4C50A829112DD9A5C27F4191145A514FA8894467704CF58CE847D5212E5A0ABC0C2A54C8CA4416C3B99FD5DDE80FE85276F166E017BA7B73DBC33CA68D681694C93A495FE42A5C463C7F0F920AEA1209A5CBFBE2D1CA7F5C2A00DD79E5C4F511031B5F4503565D5F3A7FA9BE4FE244CAB01E9A3F0D432A58A8FF902C7EC52D6D5956D57DE83642E4CB86299406C408A69EDEFB75C73526CB5DA5DC9C726CAF4A67841E2EE89EE84B2
+priv: 919F02200622095E1406B0D36B1A90A3702302AD0637553809B0A3B8FD3B1DCDD6098D72264E7D6D4D2526269ECD818BFAD40D6E450F1CAED968E46DD015BF860C64F11F1C8B68B0A93E3A587B4A7B668405275BA0E02F7A9B9ED5C2A3A07D58638B2F079D879E4A963A71E48AA6A1AD48A53FB6975BE80A87EDA3DC2C45E3E2535347252511162373444883864234312171761112443113274541262551337205657337562142564641810327758354632066283246026032660562804546204201032100470857008704485318757233871080537100440075887712430860310035716105637805207148726226407183117674134077685281072455240143304525435254517217271628230002881303005708644321451536774560055002568231011653601844825336871747306308225147337254564776486761652475071243277768387525351423682277653676710247471164822022210263745461742764530838303826607831325346722787012407686084857676626567311027633317684127048724810304183188573153261558525367337033801513347178210115184560288328727438522687047476323872420601657314862574234236007814048147752447545347484058034681872780107524724278612143027328675538021258766156243708623415106424264857207356713470438274025516222771841842254336038556352053512561056210538731218660581146781731417410102603685057454531087820334516527768741004147848406586028810822338421580355365452504827026415403608881208676827215416335512862313241750784333244556575172312606561322356524231667412531172858170544156587437378562074674811724802217158383553162701447171412448374380216533350052350232168585430430038546666427434215210776566432862887475236726102445460355684288760664335323010118554183206073738163224141810160528738375535763352866840268340018558752747872223772826467564754525856800736608302314355680585125466035281342871425278510600680607610868737872577318456358351064687712720078162564728847764466144165122526208337786674382106466856735504105256432573426072255878810568204077874201326268870137766250031860247320056725710627478252872153077206662734770617680505174037136271378240535272306826168630171048300027443113217376461110152053250267224762485262338638447582146463383730585507550657233653638216033427160072055538301436882311630532018878501457673434108006610310811853163472486135380248156020871742778818010634356287622737627032567085008145130063600135307373066250323073525614304006334526265375820448468046114113141828615350121800562146785177371376766480605223276434131846634530460107814758043353551835534481112537700631102252224444448644311222281052385284857636008820160843864850064545034076558382755214271046680842130583103778217641677217787005862414285106751001024270630427040075517615787225164836210742813206221343126760806276705656662837772503318234073411728338565231372213525857540671013027723486135138826824336244204230151581264235632588644223333771521856662577177028188663150465003874131033684300235477368611231125344672380206712007222430300558053788063326274337621554730280578778138875722058258442357632740701132645843862338815650446440677274306103004233323287706324404276838811203068132048447336288350384168670840521354057564146760626677354826831558367781860451050315725567188201475818213440704580241507306186380161351432371542176271552136705726572162781943A096ADF0AF810187F7FFBE7E1889300AA1174F9E6D0A86989C07D14BEBA934B88A1C1BF040A0F417BFC476AB1F88F58608609DE882E23EAA30B70720422BB19F8FA49F47AAB5FFAEBC8943FF6D379F0FE8B6F8D3501621A2C550BCCAB4DFDA85773097690AA34B1D5629CC72BAF11DAFC173B3EF79BF07E7F227876BEE79911241664D127C56B89E0CF0F0CE2682616BA0E0712FB4BD025C744812CB0EFCCA37BD57B0CA6E732B2E507921F6B763F398E0418AED1257A75DA7BBA0BC52D3179CC3D35079702DC9E4A96A384D7D6C0056F0EB8B0C5974EDD43EA0ACFBE53C5F7198C4F7DDB2B5D07544BAAED6E8DC14FD14CD723B4E90EE80649EDDB402375DF04111BDACC8BA98775E2806773B311BC4D104801590C17AA20046CDD6F28A44536E6174EED2D0AD4041B5617AA9395712031F1227646AFEABE17C43EEC78154EF0D5E890EC372CF314079E80C6C680529422C82E4E74C8BB35BE3AD04C4FF6045067E3C2E4FC1055E68C8BA0FC55F21DE15F50E46EE5A455865B48A41B44205A01ED6509994BD7FC9A0237323EE302ACEA0152355BD7EBA6350FE80314C9B6D30FEB4B5AF6AC0DF133733C5345A5B2EB5DB77A401F4135EC523F95F13D109B42C4FC3B8C824BD0D11BE7A6B5A74B70E24605914E4AE44FBFF0F14AC56E75A8347DFCED9B1CC22E2F6CFC1A72F444653AF7ABD1170774DE8BCA0F7D8B80390CB8ACA45EF671CC467A674B3C1B212F41F029E492FAEED1749AF0E57F3F513DA2A43DDD5A39DE2396C3EE779507A3E7C99BB1B101260B60354553C8142225AC393F633E1880EF686D3DE4AB903BABCAAA27109949BE89045D4FE4341EF15B833FB0C1DF7B49BDC3C949687305952B4BA446059D168C4218DA3748D88713A49A14467D38C668987B461EAD58934B0FB8ED1B92019E10E511A1A2B302A880570DF72B3903780B281C17DFBA7B9D1448A81219A5212E228B58B9EE6B73A28ABA81006AB7C31BCC56D3E7C9C5E8F1E1FE1D62FB61E1B26121456A909B9516D01230F4B841189FBE50DF83937057F038E4CBE75D347EF024CDBE00BD73F9680A36B7BB26640C49570F6DB11AA917145D14C56091D0585FD6D42DB68B8BB5EBCA9B555364737C8AD68DD72BE29608324E651766B1A6936F8C8B42D902ED712E3EDC6F6B5E5A07D4C2B65033958C4102A0B5A6251C27E2CB6DB3A0F246E0D7AE6EF8BC1027E91B705A674F9690A73CC2D5396726C977E15DAE96859A01F1CF0133138F043403CBBFDF079FEE2C0E345C598258BB03BC9D77DB0C5743D56F702D9031FB3254BEF6A141FC529F09F1FFCE797A5D343FAAB8854DB3B88EA42DFD2AF8F463CBD6F7733A221C528634FF3BCEAC7DADA963FE6BFC671527AE0D117ACF1127580B55E5C4B9FD980528242341283D20BFC220FB3F89B5710AACC60F9353FD31FFCDCFCA6F5B1CC594E9F8FD0F3E9349CEAE2B25955A7B5EFF5606D0E54ABA830B29BB257AD63C94962F167F32C174B3FF9BCD0DB1B97ED070A3C81519F65DA57E526DED042488C0DDC4B4746754564A0022592DA6F25023F086BEA4A9ABF5023BBD53F193C949A455F1EA061A8DA38D93FCF0A41781E46E91CEEB1287A7A9CFBCEB62C38792FBB967268365E9D6469FC18FE2D2E0CA4C5DA62A0FE4B8E58A7AD31F2617E5377EA66768AC3AF8AA6973F36747320CEDDD50B687B314E4345105248F2B9B1B9451C909B7197556225A56030833FEA15F1B9A088450D8DDFDBBF073481F50795F5CB9CA2B8E1BA02A02657718D823EB37499824CB0830FC6368AD6793EA27D171E7F1351AA04D86652E738140B707B17C7548F9800EF75B2640DA5DDDB88D34E9AB788239F37E6E4D5F7BDEDA86A1A35514C022C24107248D15C2B07E1CFCC7C2F239BE83C585F7485DF3D893E99A7D6A8A6C4E58F5F8D049571BD45506C6B64B02BCD3F778A652DBD5745CDF4415C524E29BE7E00AD3AF934366C3E90B7C7E987F6DF87498525206027AB905ED56CAC425C3F89F676B1CDD1E1E44ECA7E0E2868B58A81ED88AF0673DE18E22C2C58B4540D03A51D5740A5AC058DB3BD115A45AD77EB66AAD1AFD01BDF61E7A81946F0B52AE30ACF0FF545A4574F6B8383C041BCDF1B358C2E40AF9A98B31996D5EB214F047355C59DDF6CDC74E1ECC931BA3814E2854AEC822EF6B9F7B22FBA347E340A629CF0E49AD22513BB390F88BEB7993F240D8A0B6DAB823ED3F13A05B392B22712B20332E876D14C51FD09F2158833F9A7DC653605CF7E77AF15BAC2D1FE6455DDC105AB28FEC90B142297984F0398D5D5C6678977850A87CA0977B94D0E8DD2FE094EC00CA615A13E7CA73EE2632EF460BC06F3480E214263F8C3D22AC12153BF2D5670C87DF4548521F1FF527CBF044C01156B3FED897059D5EC24659F50210BA483D0828CE8E4BBF64E06739B04AE712E89439EE16EF5056082C45DCDCFDF008A4CB806749036A05209101FACD435E456A0339862485335B7C0AD0EE13312E18EC8E9FEEEA48B8C2F1BC07FF9911255C0B1A9836DF57B14A8AE166B3624CBC71C4B9F5BA0652C4029CE365AA6EA990B032957B26D02932C2325A3A956051D5BCEF413B0DE3FB94E89797855270D27A2381BA1039942F59A2675E4E645B672FEC30AB3B73F2495C27A47EE3EBC400ABB1CB54FF15F934FE8B791FE3F3A228424222B88D8E676F8158A5F39034417249EF1CF70CB94B7FCCAC8303DC229E6187B2E1B0B04701D9DFBD4ADA26F766EF6A89AD54906A608A973D5F72C189A2BAB4993862FDD7B54E24E8E249E6F0336207B754396D1E508943DA1329BA186A366376F653A0CA2D4092228E1D82B094F7D96CABB71673533F51CECA70263744D54E945FA027F2577343DCDE29ED6B1820AC47BB5BE66A9018A5BA9277598267390B5B63423C6C8D6211F037E841AFFB719B35275826B98DC9A06EB64195376161AAF7E34E1767367F42E25457CF6843A6D5263F62124A7C76B8898A90578FA477883776E799B822D5F595F2F7169B76FA211C48B7A8169AD4C7EBCA7D967A7B48E77DB51D3FAA346753970D50E5DF88A65AD8E319666A553A68F4CB529BE3585400211BBC4496DBE5B0BC75A7C5079FBB3DBB6946D911361D69679AF4BCFC8296928A4D5FE3FE21BF0D0EE246259331BC7C1558FBCFD53741B4680D80AA34F67E1011BCD4B27A7B9C6FA6A90FBD916EECAAA000AB00FFF4A933273EEBBC587AEF3C7B2E172EF16087F6ADEF740FD12C30FF23D2E78D9FD36C74739C86AB3F1258C8C04D66DC611092EB653A7661B28B2785AA6A9A9EEED2E33D857926DE535FF13A6A8750E6013AFEC7A25CB85D35CFE4C39B79E767CB6A0406ED3DB06B5942B9BF364E1A1BB13E69DEB759A0D0FB49830886D5DFAF405741C073FE3D6DD3AFD4D4F8282B6C04C89ABD1BAB8A2E67E1BA0005861A5D06AB2BFC4B674A0985C4145075FA34A69036EB7C23333E986963590BDDC8A849606A173AB3002DFEB4268D26391D55ACB0FD16191AD78
+
+seed: 821ACBFE29F941CD0F02D6BDC0112688B212D5C925AC08FAACC248E7510CF88F
+pub: FD5109D8F14AB2D879B5147687B0F8B89FF635D61BE11E0F7542BA19D611758B17B5A84B76C1B3E7ED0C4C857A0C27F3DDABA85382A3B84768185346EDB47C3DEF01B18C78A91BF46B2D8BE7DDBEA67AA746CA879FD71BAF265AE6F3A9C977C055C678365FC92BF8AA042D197A5F9BED4FCB58AEA2B65FECDBDD93E2AB456510A65332E08233C0672E9213B7124820567264C5D12A5A996A595440AB364F4AED75B98A77838C8E4E98CB0F53BB9D44115BB69F02957725BC11050CFDF0930F82E45EAC8F709FC805683CD81DAB07A6B6FD3E44EA3251BB67D0EDBC895CC9A3794D240815B8618EE49EAA29D7FBC6013DADBFF2A48837B4084BD6E8A7D522058F5BDC77F378B3F76D483FB4C9D99856843C639B3ED99AE06537630E7ADFCEE1A7D3D9E44E4464F79F9ACFE32C384744DEED50057FE32028C9B2A7B84086EBE6545E619521DFCB6FC02B90F00ED8769497531AA39477C3AF9DC8E2BF9C51FD329ADEDC1725F760FF5E28B5400D917AC413EDA735B58B26FA7E0C6E07749B1A5D087325EDC2F08ED9F9ED5A98E388AF03B44860930904A907A66E00D09CBF98C0921248036F48323EC5A42166BCAF893195DBEAABE232AF704BC64BFB10E43FAB2874602D8641CC997FE3C074924B6CAC536D6536C87AC0F8F658FC3F99DC98CBD835520BB3441B55CCF3CE7F263451CA1B3CBCF45D12C3B889728EB7E401C1C2458528DAF2C40E90101A3B423A4E1B8609E74C60C9B7595CEB8F35FE51AF78122D9C487BD89A03DF414746D0F2009E852A3360AA422D035715E5713F7CE28D7D8DB37C40BD86EF6CD55C0589B6E52CF9C7643ABE4096EE53CD1C1EF65E1F9C7286452191ADDA05F133BFB18378B5D898201F7EF9FD77CF76A4A81B8A732B316CA1C2682BF25C4FF2F500F55FBD60EC6DCB48282984FCA4054E8A3DBF5E0834B312B2C867ECD962F27846FBD1B5FAAD67FB4B17C20BFB0211D96039515F9B0BA6691E8493F122236F9F52325AD5B1E30C3301C0D3F60DA86B77BD81B4823CB636ACB3DD28052A278737D2E5B07B5E9363B2395B51F1210AA53F627F58109B695516E2A8CF756E5FF531DCC0C51F3FC5BB95B28B2EF1676F15C6827A4CB2520C719A90BA2AB409B31E74B99771CEBF87AFF0BFE549BBED6B678ED0B331C154D42FD7F6A7F07B99AB0460FAF7803FCFE336CAD1D3FD5760025DE4C2727D386306EED3B3D5D17D9851A5744EC70B3A0F29A76A180C46D2D49F50E9D8D1046F2BBECA53543A0C3646FD736E39175A2D66E142B0A94927F2A937846A1C44CF00F55CC9B9D62D4F25AF4F87A25B8BC932259823F3CD59F3F09ADAFD033F1802293EE5CDD49E70D8DDE9FDA65C0EA4063D4F5F0810671635885B49C16601F531C7FABDDE3A63611DED6ECF67D621F2CFD48488DA31D0FD102001D44AB947AD5296635C45D853624BAF09A5BA447CFB8C874ED98EAC7B867BA6CC10A4675E6C2F5F54EEDCD52D500DA4E15C338B1E12CAC96B0E52D483A17F9D1F90C4DD385CF00DC0AC12DB97EA1FF33C3DF6DE8BCC81E70C6C153C2BCBFC6001A815D17ECC8C61C24DE9933BECC9C9F18A790564174BAE2599F93E5BB1216FC2674FB34CF153FFA690962BEE4E9080EDD9B49E3EADE139075AAF1A187531F51D05F7BAD888C1E717BC4B368FCB12ABAFEE6B29FE72132ED8173C4FE6F711405381D3E2049A627F4DE50353CE804CE5EEA3F3C94008156E7042BB252CFB13F512B1A5F28A10CC70686B22E9759C4C8A62E021F8366A4173A0D3BCDF8B550EEB9EE396BBE86D0A851B77B2B404658AB1A8B3D69DBAAF61CC7D539FA05193A6F70C2956B0D2B3757157F54AEF2D70DBD8B0D48D70FAD4D88B11465375B7CB6178F3DA79268079DF5110F668168C6E9BD362525EDB99B80F87FFBAD11E8D88935162251F7B4DF2578DE0532551FCC2AA0A23993C6BC289AC0215CF664FEE314BB4C21354F8B69BC920FBF0B8BB2DC499D3E4BF583B9F2EB574A5AB25205FDA5FE123B09A777B10E945F508A22BEF885746B6F4CA38CE73D2B4E843A3CAC214146C71925EFD237E09707B138A252D6396D8E9188BB08ACC33720C7DD7A87613E55C903C436BAB24C9D5B74B7948EEC3C44B337201643E4CAF2FEFF9B6AA4A553D1A6678592C630D11D357348E14A8DA3B6C274464F96AE6554AC76BD4340361E7A599207CB88B7517679CFBA163AEDA592CA982AA4E3E37DB705ED5E26592CF91DC803C4BF9A8B6058CCD426BA80B4BE2FFE8D0B2B5A9BBD1CF149F4EF6BCDAB30F7A4A9FD2F6D0C2C9887EC40B41A33E4AA0FA37FB61E9A1736A78E75B0E5B668F648420FB37885BBDCBBCF7898B77159083BA58918F7F190A7AD04F6F941FD99A09338920E9522D9F41F9C8807FF02C0350D0A91CEB260CC8F4690B2E9D5A6FD3A4032AA09AB96A7B4C02B3AFB62407546B0C584E142C93BF127405A17548FFAA23832887ADEE53B90117163D8D5CCAA96FAB1FAD4DB883688D376B3D582363D9816CC85E16A5BE1167F25883184FC078EAB9A0C09A5172C0F557BC314686F961FAAA93BE14B8C239AD5925B2B9CE7C2D507141C4705671E7105190B54AC4008D8D845435A9F68164E7DEAD5893406DD21898E4F6AB7CC23EDA1D768E427F2349F329FE8A838A03DD7DED95657D82D05F6753B6E3800C2CE345B1D33AC488534171FDD124360ED5EB4B62061D61B89D95EE2D3D9D5F8792FE679ABD0ADDC5B1100A5D56FF8C8393F6698CA302
+priv: FD5109D8F14AB2D879B5147687B0F8B89FF635D61BE11E0F7542BA19D611758B37F4413E6607D0819662237E4F7746006787833B1F0BE10734308C1E564C8FED69592AABE7289459A5882BECBEA41861C798A02A0F36DA0AA1D00BEDE17B87FDE6DE5DB5083B879955B99177B83F46383E2E5048700863247F8B00DDA1432F9475845411106010802403124423006207171123637626358064004744217668563237888426103620752544733884730188200687105834153425720865281708118271854426277451381137237063130331623234106723431860347548763207658577260187146861448155686826455003173682641840333567008330412485633328752625476441625800267213531873672382311441364125312140451047067036187188453426367824516587741606322451571174808077083645343475863427745255815618608637822668140778022078564357408860015574881153222705772820283282645138703666837082845457545642483327554486635104572840030702644546883155868854848727734687116530122331273316185560038723621705252685722207460533380311867184216400552714105740853578622762727822013200126021044283211375323117003650187002088603640345838844504335503120832113026778216041020078002871175114780338718740318457762655342324868368435104511507781314186715333714808404824660120450275541327480357767864878521734380425386623801541346774823118010158808603360723632020412452027121234068688716164441521887108240101786315371520841447607250516005315365686168717574678054651203116875838316668026521024171872707164174688353341467360173172577764432418112331306083318608605402151567381436862124117738672361158226325887710338805385437741854660070530741053300731051058032536663754782277723523405535684511367423724838044746436665367216702401504057760861543160842185113378015224425623321268204241475232123052525186526436170475223506404246556168704551444551388733525384672264531670007310781725425740047878568634613747664237017616081148818153324800302322626514831370370752655505652444514474570366145827603375858080460822137114012511117868251538483208262330710570084046510350650067607452046145226203135104263664202836618344162630317470784727848257402470148421118752145271066152161743850236604061501516023741745433718841304847033226752765102660665216844000747725857377655737286628628855470800115846468544603448604421136682275115820474718124475360816350707076840045427737648741006206344653466760485601222162728263052643450841137207405423267533600508015253620825076388520610231453565801282615681627051432685018612236467086817638250582501884472046848272635753014406331123268541531386173156646817565463500686735817646042771537270561435557563865543005755720030384235037845153625183357188765067524510541785723483746082513261716357675385520117254805854813722260257761547732624410547504153484802545113081035450188274886618452447827427357657813402550236060754048666817727427460350022175101303701227746503115654701150825304136500402467436180731888868347168086754418454456816581305381780810850606827744730528684184014655603763554220413703356318438650383817117084323856267162872086718276068621466341542271674584731366742432452022720723523885440383735736758540137861645710336031513401537787442784487630878114247615133473366832843613332177588724308575184307203156767071BD4D1A723FECDFDE655FF7613698836154D8F6C5B46E3CC037A90876BAFEC493D244CB2B771BCE1BC5AAF7D9F8A75D94A2E9C6746DAA9058ED347D992A707C5D654D696521403D04BFC933DDD819C17A97BB4685A827F2FA843ACB0DE979BD88FF69CE5E62BC74BB3B0917EEF8C603269990CDC67E4AC99A6645412A1C2326FC2D13CB588740F71E9012AC9A07EF086670BD981722F8A7103CB68C33933F6132E78803316C85F6AB3AA8BBEF2A33A19000031CBD73C643E226C156E5CEA88BD3743B3B0FE16452FD7BC84380CAA4DEFD3AC5D38DB01F74B9AEC1E3C368A77B9FC8DF87A1C909A7E10B9369DF94460B8567C38B75267EBE99CB7E07EE626772BF70E721B00050D350BAA16B0AE07FAAAE61716FAE72B10922673534E83950769A5AAAFD95D3DBE428E66C7148508D2CA2914AB6DC20F0BF7AE92FF51577093AA98FD383A5E62791AF20206690BB1231736CD5449ACE93061E2A71FCFB4CE9752188A4A86302C6799B882E44545FE4667023FDEF2C13939B373E2A85030D23DE62FC85F3AB765699E898D3F06794193695BB0495684A4AFAA4C9D63843CED531BC122EBBC3D9983319968FE57D037699C3722545D5AA32FC648CCE93EC746C020607513559820FD9F4178FEAE2620BA278613A0832A3068BB65A445ED00D0623DC6B668983A5FCED6D8BDA41164E8ACCA99DE3CCFF3C4A6D5CBD019F53F6B70C97FDCED46ECB1D6D969B16191DA7FB093A0200AB28055A045AA9B544A543C96AF75EF9950E36B9D661999929DCBC2D697CFC6A3540B56EA3E4F4187B8D892447B63D80B75035D8E594BC8D7D8FB55694DADE5463804985B3718FCB59A946BB3B66D6BB38257D0430E18605399C6F460CD33FD9E4353CE5F7DABAB57EAF388310B828BB008F1F8850626680D2BDF2D1D7FE348B18CCDCB1430A689954CFD60A683438000C1295711F7196F9CD524243813388702248346794DE6AA4CEAE1CAE5E1AE474F4CCA0CE754B8021464522E4A845C1FAD51F775EF7375DB6A21004DDFC8FBCE0DB93DC275494E937424C4C3EE97063650930794917F57BFDA70D2CA74B1BA7235BA947C587B1C9D86AC4CB9C8DDBEF333DC988894FCB2615B3562FE939A5D171257726B6C789ADBA53DDE401D5168418FA6C1CBB65DA20308DF78EF6A719C059EF43A5E01CF6B2EE5259EAC541CBA7B6321E5B592ACC42F6E5278785AACA977E2658145258EAFE96A544A648E709B48EE39646F1B1F1040CAC64ABA7B6A69DE4866832FA041C36252843F20FB4679744D6DBC09C8260A3CEC898ED2D8C33CC790D2D7798824F0A05A1299C4D7F2A4EBE7496956A5C7A033340DE8A044619D48013BE1E4B43213B3689C2267D4541853314E807EA6A1C69485CF57B80A106246F10242E3C96093C960EC0F9C0159A45B9007B7A8141A1834B8B328F44BA0A1FCFF7208B476988686BE639362CB120465D1AA9A6054F596270E5A3088329A91A070A6A9B8D86489DA8AB6FD21F21B163D0DBE579C2DD5F102DFE9FDCBD9EEA6EB32A236360EC67CC685495DF8ECD4E0DA5AD27E9F313E3123828A3A7F54D793B1227214759A72AEB0D64FD2E9A134BAF89ADE482ED7CC5DB0C9593C63219CF38CAADEE0C0D297C9201F7F25680F0EDEAF516A4914B2A4606234528FDB99E5F5C0CD2A881CC1B670EBD170360877E7FA4D884A67EC0E3D6A4D3CDD304C4633A1E6DE168AF86FE586895EA49E390C0A9A92662EAD24E05EFC92C048372EFBD3AF11B87809C0D7EFA38C24C7E082DB4B542468EFCA41F88CC7C999FFE3C6568586C39F3750745F0D3F551620C227109DF9155437A87A04E08A4FEAA648E9288299E47C351E34AA509EB4F772C78E33ED4E36858E4055E7E3AF5A958E96E69E93BD86DFE5DA8D1A3AAF0769DD87558024F2B26C6C6C42224760D12B52832326B7A1F70CCD530B9951CB3B7A499C35043789E79EC68CD8EE1FD56CA5F22A5D54FAB7F0689F1B9584FAB8AAB9842A3A30C8780132F14AAB121CB09F0B4941A882FA8BF4935BCC7F2F698D93FE10F2393FA96B9F957296B24669DDE4B600927BF5A469C0001F0B1D8F1DF0E6B208EAF552D52F15FD1A80B1B4831E65057641FF84E9CB6811980DD38C4B26B11265B4E71CC306DED99E3D48209545DDEA12328A1A99972AE9C849718A2E1D4E356BA7E93409F9BA01BFEB6AE78DA17DF50924E428926A844580DBADB3439D98C6B89818907EBD7B7EB11DCE48478CABE0A49DBE5918BC45DB4B88FC045D1985B918789F9ECC59DB72F2256382841AD1317805DC32E60CE2096562BEEF9482EDB130FED0B00335AF2A8EC79380349E1564C3A382418550623E7A87A7CAAC056EA6B44FBFEE65C93890FA3AECCDCDDD24469D418FEABC03543BEE545F9FD977D77FD44352553D32A365AAB23E0916F18775E3DC4D41163794884596AAE4251F7527725C98483C72786D46EB2A11992B40DD0C69AC7092067B3EB63A179A5C61446FBDCA3B21BB919032B97962B7E218C2DC34409EBBD5BB360F2B212669CD16F45F5AF4EFA777627DA59B6E2AA0EEBCF2DF02D1954B16BC0B5A718BB95C1A905400C5E0EC0F326C8ACAB20DDB69525FEBCDD32067CC74DAEF2E79511F10CABEBB69F11AB14612B38190F8C02C4526ED189793D059CE759D56B00505774AAEA728C79CD8D2588919500EFDCB2CF7F870C999EE2B5CA16CAD7CD92C50DA46274A1946A0D8B3EF4FB6D498339F2C7793267C92B0AA4A73CF40C362416B487A83A9CAF3F7C6772AD70DDCC5A9D1FFF56B5E37B821FC398DCB15E60E1FC0D8E6DD569E315C5B12187FF345D749D66967F3E7EC97117330894138DA444597DF7B5F7A014431C253C8D19F9E8E6D143F406B6E9518F18EB3E3A3B72CEF48F2AA245CFBC1F1219B4508BCA6EFE40F80357A1CF1C9D061955A746318A75969EA691C83B5219A9354E0FD92ED1302314944BF62EB3E75EC9640E2CD6E0A7C955EFCF41DC0F90D25C855FC9F54ECDC4CDB40AA95E7E53F8DD2DD6CC33F2703E8DC4C09C6781DF792E6DD945FE0EA4FA760FE35380236138F6B49C99DD5D6FDED1151D5C461DAF39717916CDE27834BAB0A5E3D5C0C5FDCDAFFC3E372F5335DF494288D5176786CA73DBB2B58FD519B10531A2C9D6D390F7D4EF4D9C4F8D0C6F36B68E3B502E2D0F4C97D027CF8629E2239B3ECCA9547EA8D9E8A357602319CE01B0B76D2F5CC5B4A3A906762554A37F0B8FE5B4DF29D434D98822C9D3CA495A103D1096DD042D6BAD442BE6D7A5882AC7B79C9B588F10CEA4EDA495ADDF22A8A52F49D21ECFE6FEDC77A459368C18819BCB9380A0C115A5280CFEA7136EA7359A78392C27049A55FFF75FD69F70D08E2FDAE617DDF1E43749D9BD0DCE026FC0B8722DB70AD47FB3ADF73C1BDAC24A27A596739F7AB09B92A6005226FF18ABD52AA5131BC9F86C786D87576BD3D8291A471D4F40EF51B214069D7B0096744BD9856C499641140EFEA44192F40ED4CBDF2C562E30881532543471258282
+
+seed: 19B20AEC7AED1C129B55D7A5143192A3CF43BB55069017D695581B74006788C5
+pub: C1876C7591D9FE2918AF831763B053D7CED29634CAF7C28E44CA8DDFE79B741612FD62C3049C2B665EE8EF14D040867275020733F0E2673A1AFF38F32C07C4F0792A7BA4777256077FDC933F991ADAE12D5C0C79299769DC28F2445FF043D563DCBCDB9E8F3B238C441CC329E13925A779F9A3B65552EA2793F99A95577745BD8CF86DAD4373B22A7FDCDC1BA31543C649C4B6B7C8E60795AAA4C4A9627D97B5C8A04BE0EECAB50E02F59139751DEE11A401FD23F3A0B47837EA00CC146D668992DD97AFEF17751A01449B0850E3AB1838A512015737199483769E060CFF8B66793CCE1FB3E4EA781C6D09D12231775AD1D98CAA9B1EAFB9390D67D76EA3026113396B8DD311516577ADB15A77CF47C2082B7982B07687C2C88A6BDA5F9E5FD7F2AF932D947DA6FD42A219E297E65486B5187330E4C465DDA55DDBCD1823D7349D9305691C3EDCA07DD547E46AF919C780BB03C670359EBE80CD4FC98DDAF6449677FA7C045CBED1C04BE230690177AC880286407E301219D305DBB3FBEB56B0AE253AF69ECEB2FB19FB66302C828D375328CE26B8EF9FB97BC95B35D9F0294E157A98F50AF78A451AC533529E98196987D2D0E63C6F9857750AB8CE1503814C87FDAA84B0D345C477BD8E87A09DBB0C176573B5369A083C852EF8B49D4F30E6082E619CD0E10A141B161832E94B14D6B0150CF32A8054DFEC80C2500F230D4FCF86236D72C02EDBA3CDFD83B28EB7A282D4CCDFA1E1E5438F54D15704E76C92352FF2F28BB112372E5B532AEE918DCEF2585E3163520A08182CDFE1A3D35F8F4039105AD2BD4400C6F8EBFBCA9FE312F7D95019912E2945890AB754881AD378AD92D00498EEB82113897D555DFB6EA7A49B8D7115DAE705C2C7BE0D5BD7C79A19636884686B9173AC7EC14310D08361BE6ACFC6FDA240A73722B6704CC3D2BC0F0C0C040E44D11E185A21FF149F8AF17D2E056A3C3B5A06FFFB6E8BD3650E538AF954024C4E0B55B23941FF945513A64453A0BA9A4D3DF118C31263A06A3DFA7E258862FB8BD066179117F878662746872C7AB66F2264E4765EBB0DD19CB31F55163D8BD964D3B359A0A79D4695D4E0A1D6106CFF71ACA80FA61841BE0783D3CBDF843C65EF755A7891C0C40C98E6DAD9F565E51FFCDD4E982173903ABFE03BA08BF60E5F14D3C88E00A2D882253D88CE6860EEA90A9E4C2AA2EDC6AB0424493C1A79B5B6A3F73089F4A64D0B2E55B7BA0415A53960B870BBA5799323DD2D00199E2FCBA9547A9C2B823F753408FF143BDDB72B3C1E6696EB3C6C3CA2984453B1916FF4DFD6B3B43477C42CBF433C752D0749FA7D13E53363E6A22D085EBB93AAF260D610EA9694AC2DF8BD0E7DD543FEF57685E381630EE414FFD89269CE6F0D9D1B1E32EB744120325F092596DDF8CCCD53FCA530440EE9000EDC1D9708D0359A2B8C20008639F164A7DEEF0E1F83FAE0C6D06AB8A4E82CA74ED9AB0144A93F681BBB54356567E24D8F8A8C013D1E879F666EC62B94F2617C85CD57323A72FF71AB92E322C339AAE371AE06BB79AAA775C3E52B9480619D6D32335C8BB45EBFD11F8A5C5CA339B69E0F3FCED6A857EF3435732919568F1212DD9D02CE7F3FC1B22ADEEB3BE460D19235DD54C85AD0DB8165F30AA209F34D043A9D9DD186003EB29BA7DFF1ECAFEDD36767A7A389C685C4D3ADA09626C652C7985F237D69C31DB93A8CC116BBAE071DFAF8466908A9975C29D8CDDC236BA5EB447EF045AD83CCFC8FF9663D027A8138C6133A20D9AF2F89B2C183811B8A6868D5701C9466C54C78DEBF571A18DB524A7AE18C935B624446A8B94F25060D695949D7AC47DE11475C427B3BC987CFF890932E8BD341E51D0DD8B178D5C4F40C35B9B2E2F2AE493029C6C63867EFE1D7CB4B02C53C5646A9EEAE87E6FDE7C073BCC7F0A79B4F7E25383185292D735F0DE85B4F3FE9FBFDD21268CCB903640CC081E19BEE7184D3C2338C83E2259E59D8606357F325D5867265A2DE3FC8BD88AD8EB2D4AEA4E89CD08283DBF1E7C5A7E97E3AB43D9A385F162CE3AB3CCAC6F86AF9C45FCF60D997C3A6DCF610DD4C6978A3BD071BE03C0495DB413D5D2ECDFCAB95865F0CF0C732AAA3ED403DD9901B1DBFB603FE933F994F6C0B5A7FA6788AF95F676F20AFA37D7590C31D10AE2B0FA71239499737C004E7436B1539ECD7E442AFC74EE027398AE51D87128BEDC2C2F1E8DA5FC017A748D6D51428853B71B4F8D07A593AB61FDA4C401CEF4AD4A202E957DC207B20E15F5923CABD23E5FDFB19C66EBB92E1A8226F546A3637CF69054CD173614E5B69462BBD53FE82386BBD5AF6B807DB21B6FEC62AC9B6FE7F6D1BD777B2940B43516CDBFBAE26722F6A88552544C656CAC0C1726A3E5EE30BFC1E140D40EBF234BFBF07AE5B3FAD3ACEE3F8A134CAC9B9EC925E8763F21E85A113C6E59F5CCA70EEDDC2540BED7C92817B22D464CF0B13CB824684728E1FD84E497E4D8B1968F9103E5B820D97BDCE02BBE71CE0D6A8C26769ABFE48ED47BFAD693EB992632B6B934B54EC903A5C35CD8845F0E43A0E856BB8ECD9CEB4EB70010BEF602C7EC170BDDEB6A1CE2474E3323EB133BE60E1A23C0AA0A88DAFDB69B4C492981A53EE45F006F687951F13E6399C0D3953F134B5015A62817F8F631F22F029EE3167D9CBDF890CC68818FD12DFFE4BE01B4BB04325C36770E85ACEAB462A919B5A2CBE9F6198F9E3C8D8F253818C5C1B6B3472DF05C8
+priv: C1876C7591D9FE2918AF831763B053D7CED29634CAF7C28E44CA8DDFE79B74160D9539D135C3137993C93CB7E9DB32D97BED2F47CD513927BEAEA3EA4DE8DB3BB6F69EFBE8BC30B741160501F042738BE204496408E7B322B4F8810CE5F0A1B4F5853BD042BDC71BD3F713995F90D2997BE98853A3E0B05ECA0C2CD529C62D1D31142720430162555220261408757487051805486321463505328548138872674635348656038584807581556616567024781108748714006466586518105002840004152155071684402283301625468608582682871478285880112418701887856542813261486851086715532015038018055506582001004343174024123728627110402632383478155035530668058030807805254735026344715438314074570828778555510310503127760081644038768664440013167025735144760220153688771326556654136677416836236681275767825505783518026507108541306761822164356817775213250763580875702357583307542021077861788684686144273011537008501712324033761721553654884040484566604226000214651473588064077132555143158421687651533365271426802716634284747711533266322568582853708027003861221727624188548224553846320154218535004558846614210714725845776845035032840301165860462661558567062356487726862640113066862340546354378052445185333237853473826544553735144445868050241350888774173617075453531720267316818175415433376853422836031112605825812128668124221221813720163332878132662740616835058334581511783268088514555323113603245767313468456805542257754161745144715584644762635222801770257403571224173224101775575421637641653561651523472523353220007246647685422882100323788035807815471744883353670332227331383575023847310756871261578822337587022523242818335102643211010036128440207207414604308060212184302087706651107415366331635141330688886357276684550512668846326170485080755401433066163136305042535141770172143571578534537566273505072131666672802302137400258356111170004050122176802185713363384107338013714068046336638073677671825887712654440634342104756450234366074785063373770138355536602834482336117841811656443744500552574381774725612554820152456181136173480528377444617573837506101566008482616254362626412148541878576272451278865273175261065121480628166312811217332443874218160274773587204140232054516151580731416010517360222140016312345165580552765116138228663835802871501003418662168472077781187768025576001388352286135461575165005568123188068230433318746647171256317558746767878042633203465265747801218226257524465703521066601441767437260017503655584555626781625645828607216813374401208635875826640523026864485803177516421032408802243351517420170357837500517573422583060107563784043772507424567258253886871303426754383234648741138366371401462647365832748247554435886122467742424232347324855363843371303526333082723501448384560734138412613126277377455378767072466561765062756763081555387882428742444264545182347872215788716415115613725675021506301847681043752187440344541180617014583366082216418784124548587567538635417676816656583151701337688684365852214350536148165082118684731162728603020045865388212864485217252720226467655245757761056558883368818036647577235233732437782724674158151572615477036118545377305340788610187136740007740123076210307123022813564872374047362802876653816510510783134134880883380826444C8103AAD8657AA9B63770DC7A193DBFA1E0118E192420247B0444A7F836CA9CDC3A0980662EBFD520D15D923C37ABC4C3FC417AE01F017B157B85CA4AC48B3A5FBF10BD5E1F3BD2CE7E7477F4D47CB502DA2BF1D75FC48CBA9CC78781E33A3076A96F7D482609820FB1A1EA91EA2C423DA8C5E9ECC59F34BB5D58CA360DFCB4E4A10ACB046AC8A0C2F093FEF48DAB309A7645EE2FF18D88CB14737400C44B2EFD12D8C03579A5E0FE1B260F691B9A9D001FAE92D5C04A46D0232751D51B4945B86609AB60D80A9B04F573318062929CDB4EA895013B78D88B6379C1FBA2E729C7BE337DDDC9ED90FDB05595D48E12CC38732E00FB97735476D423EBFCD8B91D7D17D9C9F23FC65EDAE2281BC482EFAC37B48B23B9D1FBE8B8AEC1533844536F1B61BC8AD5C0DB80DF89B3DB99EBAF8014A8050F721123B45A913DD533C8C9A5789F2D6BEBD95CBA04555E36779C2F1D0F562E5C8597970C009A815FBA3F86D76BA778365365BB5D897B67076C9B826EA46578DE54285A6DC36BD9EB85F0B282376CAC0EC1ED7E22B05CF123792CCD02EBA13BC9079C62528075652685B70E291A659B578CFF8EC7858CBF990929A639F20455F3CF14A6E9FC8DAFADC9415B3B20C8B26B5775F66DD90851653B30C382D3FCBF8C823EB5F6FCF70C0357F71EBC54BDE2055615A1A1CFDF3A92888C5831A3AD66B5CB128397210804C3DED05CBEBC4B9F982CD5AC73154EB629E8EAEA4F5239E7A4F6A4628469169FFB74FDD8CD475F395E95C8F6CC451E46AFC3977BBE7EE3D2ACFC1C29C197752863C0ECD61060C90F3837A276DA89A7496435923C2B89786724FAE94EB1F585E8EA4CD6B0B8127B241A889BA2FD60CB8AE279F77BA7EABEC33EDB596D6EDDEDF252800F448C2FE0DEB52C00B2C59DFECDF7761ADAE9FF8B7908A5B441A70B451E136473FAA2310C59733200D238C75AA10FFBF9189580C53EA961A72FCD49EF3F7A7834FB0E0FB5101F0DC77819319223D1BE54CE05321D70BEB5347227EB13C2EF4BCB75DAE62B80BBC3F89FB40D83A0BA7DB94AFC86C469EF7EAF8843C508C465D90F850F85203A978134C4240479EA0E241F805161E7C0B28B2E960EB281270A26FD00B0FCC8942125B0E73474B186BBF1B2A22BA5CA4EE34BDABC5CC9729B25F02AEB9BC4FB18F11053DE96BBE76611B1AA5D3C8D1E256481BE19B03CD3FDFC9BE306F35ADF8B229CA3E2470D65DDC3F3774C453AC9F049D4E81AC955283B8C85B5F52F13A5B9AE74B08BBEEEB7FF9C7DB6F0DC10A8E18B5DE83725FA5B1A6E5A009753C694078CB88E8A2E95DBA4C5AEF8C041B8AADB984F533CEA6B560807CA8FAC3E16000DE18C94D0346BB6B6E01A739685207BADC4C641201C159BB256E56216CCA2DD471F34E97891785CF7E6BEDD14C92FE0160EF1B25DA80FF86739568F006E778AEAC09EBF4FB56D2DC914D549FC91CAE30C1F044AF84F2F814C3BD9EEA0FD43E04FB7C5ADAEEE456414DED08A0270B1C418AA964C31C0D9326618DB93BB2885A7F734DB1CFBD903D5A2ACA03185B3406E015DE23AEF3DF47F4394C6C406D63EDE57EFD3D00555592FF3454608E00D5B04B276D8D52E8533FA59D8DF4DA27AEB1A4D6E54FF340C9AB6F79DF17057517B7E50CAC46E99C2433A3F14CCF5A398AD94C433826D0497DE022529C0731FC5D567A2B63CB8473B1DD8EB40EE86143562E6A549CB58A94FBEC6E75E71ECDB0321D4E5FD2CFB9E8BE3E7B6A9CFB42FC42CF3D8A8FFF70E2E31A9D4DF35D6AA73AAF44A0E9FA0C49F1AD3A624B88DBBB2CE5754850914FE76938D2FA56298E56DBF447BC1DA818B2CBE6DBA78A240A070FC43A9C776562864A6846A4929C94B4F1138ABCD75DA0945C9AE6F1EA9468249DFF202F2E338B9BE3CE4CA099315346ADA893A49B969D26ECB3A05913DA9FFC13327CEB3DF6F0D1CD855282CB64CFBD0F695ECA2D4C24AB18FE07A79F2A129CFCDCEF608835AD2F56001E7B73DB415A132EB72D0E752E08849CF5F663A841D25792E3073A4A2634D9B41C3F9C73464F4694D116EC073C67C507C05FF3EF5FF1441D2396FC4583C8709C89E2EC6CB688B3713934E76B95E8C10CD2F3B9D0F298D2B66380C547D992894DA2554CE583743490A6792FF5490CA64868DFCD95C4D3AE21130DF4B00FC50CEA9AAA2277B76CE9F7CBF8778C30591A81F2FDB4F16C614FAD89600135B8084BC2494A119470C6D622B4B6DD534D086074874202F9772C190C301987A0BADD318C2152697E8397D4EEF55547C672F35985E3F298881BE917043C8B3E9679AEF3A65EA7E641F3805ACDB18E716493B597DADC3021293C234B5F3B548E82250FA5A2872357D961486CB95081829BB567AA3B352B64C0FB4F7072055FD8AAE50F855C9AE69A1850BEEF309A41D1B91A5E181E5020FC73DD5A90AE7271186F470E20D2093F44E128E044E5F7B516D746818B18A8D4E155B0CC322DEC548324B0241F4038C29E6CBA77C80228AC9291D1E5046F7AA321548AECD85847EAB71996E3AAF47738D06010DD373DC12FE362B599EC7B060120AF6435301B6324B7B99771300C7DFD369F7983D1054C1C45D37C8063C73765CC399CDF2C7ACCFF7A3B6F80C0110748BCA149DB1C7503E47CFBA8C4D44A9466D1DC0F3758932BB4F960AD5A67CA4EFE34F5D946220BEB96C787D88F87587D3C09DC4F6DE6CF1A91E463BD48398AECD75ABFDDB9DA29839D78260DB74FCD26D6918600C74C4218096D1BCF7054D7DB853379B88235AC069EEBA3BE170D9D5742E085B468D3ACB79FBA3972E46AD34CF645A979D3AB0E93E1B69F16B4C1225C048F5E5CB06AE5E9D84C59DDD9AFA1BA1291F3E02CB46DEE9B22EE622393E58AD1CD6EC3A9EF39BC5CB2252C17EFEE60F2A139EB84BD7E9131D70CDF35983D81252927FCD3CEAA9A6256CDBD0BB4A310945E7A6EBE10EE50AE002B281797313E621013D1F9E9537A51A9C32D89FD4C830D47E6F87F84B9C600861FB7191A73EBF28F9CCB83D031CCAFAB2EBAF1F4B67B651128CF35F70F8315D03E9AC420B730C7C7EB1C16623B89B89015E59A57EE9E4AA835436725459AB6EC1C3509384E1E44C50B86251EFA538C3050032DC9BED5245CF7708DC6C07382CA7B5664ECE3AA5C357492A1CFB76D49D4CAA23D237BDF1EA3F8EF35D2C893BC45329027AE33D9F63E9845BA7DE22DFE6A7222D1329060C4C8181D92C6B399E71ABA66FFBD4C29CED409B8E083012ABF3A8A1A9CD64F97E972CAFA4CA3861F5F73D891155F7DC9B49FDFCEA857981590E424752F9D80BACB50CE48AC3B8C8F25062DD793AD88B89E94A93A4A38753DCD1EE3FCAE78D680638C0B181A99F08EBA730BC90805E56C9C89BBCD093E1C8D9737FCFA8B1958D1C5E022072A04CEBF6CD3552CB1805A598EE9FF199144A5C4CEE2DFC1D318965DDEEFE9D2668281263143D9C38F4681A72096CD7DA420305ED6D5AC10B021D8CEFA981B0015099F5E5725B8D735455EC2FF2B8ADAF
+
+seed: 12FB6DF663126191038F413001776E0791E024B1129DB3084A1CDB809404B555
+pub: 8DB98D451A84D7C9FDB7E2BD7628EC0EFE6BA51499BA12BF981EF380195E1D8BB3E4B6E7AC1320C295DD121AE504385663CDEE9BBDC461D9AF9B74A36F30E52598E024FDC912F1D51924E3BA090D5E131218F69A80C44D920AA8B3569B36505F4D50F161A5DEB45E736CF04E61D6AC17948F496BDFCE3E9968861D267CE87D3233D12E0FC6A4DB86895F7D1F436483AC051DEF1E5A4738342B95890C90176FB8EF27029026E333E944A88D08DEE0340580A08DCC4A6ECAB4761279D76CA4DED5AA147D656DAA41EDE66F4C838F0A04E2A7B8E18E4413BECF01CE5415A17B6F39A5B7996A84D4158CB664AC36EB09980FDDD8323B2207384F60A63BAA446C0CA5A8982EDF24DD4DED8F07181000A22F9FED786FD3252749DFE193301414174CA01BDFD362D25985A6CBDB315026F813E3220FE8DC1E35EFE3F07772BA54861933B9CA9F8F68BCECE60F9F28148395C1605890D5F2B3E859EB7EAA3CDC66C58C9782AB8D67BA6EC271F454DD8EF82854D2CE61B5A513AB8FAE77A081D4A5B34CCE0100D31DAAED0852B9E77C904EED16AEA439B46BB2BCF42FD3ADDF320B4F1CA1737B8D7D3F7496C7C77107F2BFF1C907BB145CC2FC7F92CC3A3A4289CFD836AA2B7490393563E2848F0783EE4814BEB9F1FE75B5371BC9944029FF463361F65EB6654B588F9816FAE2083A4614DE3AF064D65A1254B4252C8B02F1919CFA11F7E523F51C99EF17CEFB5EB1F692FCDA240C3A0C504F2527A477A41BB2894AE3F3117E96FE3880D3447E1110FEBEE17CE73F1BA7956F397023E6CE4CFD8D3E1E84868C94C0737ED138FD7EF28A7D6E0A047215A3490A031C2E7085EA975FB16D129B7A70521AA45E9300355B930916D40FAB7E197244CAFDAB36C55CACCDD9EB203F48CBAB6DA41A29D686AA198576BA05F4575145DEBC8322DFBCE5A1D0899913DBE93F96033DDD73E8CFA20D92CC1E9869C217586E78FE30351EB421CCAC154089EDA5E4716E1BB022F264E76385AF044FB2EDD00D351B0FDC49B10ED29510FADEC7D7BCB72EDBE46650198C7B221335B354A7F6623842FAE558380FB0EFEDEAA161D0AC5CEDF64CD3FB1C709DB76C8C046CB5337438A72F283476687D26987B2C6C205F9B39BC2DB90EF13CD5440993F802BFC120F6062F8B62344231A268128B4AA66EB6A30EF98CB94CBD50667D9BE107A04C54631570584FD0132EC1F3AE8F115C54CA0849C05258CE87E6343BECC597087369594D1B847CDE8AB9D7D3EE1911953FEC22A2473064AE8BC3F406D81AED4C546C8E0DEC5327F2CF883DB613D5353837C823C005420E2114468B6B29B862FC6D0946964DE31D2490A14D5022ED160288F1C1B08DC9852FA66FD00138FDFBF6A1297B90152580AB8EB3E7374B627F32233E513FC9329A5062B3B376C5A3BD11E82979A0310E6BAB7A66E6A8CBF829E46C69BA03A9827EE64E0077DA863E7B046EE8521020166108EFE63D089A598E1930748A6446E4E817EC5450A07A01D49C767EBDC711F89B07C63B2140052C42AC2EB6243A4386E4E8FBE98F17F28C3C452AD376A2BF51C5E305904A1357D1F1B12EEE2D782F91DBE7891C7255872F43C697E8FD6CDC923FC866223812C568EEC14530BFFB2987E45F44E0F792B234718307275546DDA727789F918EF4897A6B586F9A614187FA19CB3AA3EAE11FDCF108F69581082882AAF9A85744BBC451263AE2E71A2E9EE1413403444FBC4CF5ED48E73211835DD7F2EB21545F4749CDD8FD83EF61A836AFB24FE46DA4A70E8241E81080D6AFA07CD3BEF47DD96A17E079EBCD81231D0D6496BD46438CB6342B7B7934A42F375A47B64B9CE0C08E21C5050204E576E552002FC90C86E92CD46A8E038A647B3635639DFDECDE6CC2628BAF8680529E9669EB28D02F1DD514943A034374C14A603327DA8F83A196FF531DEB4D642513977742745222F18DE817FE9BD55C4DC0810B56F516B673498F7EBEBC49BFF7C73305932E8F86DD79512EB52767154734816624DA121A925DE9A2CFD9104CD2C67F1CC2ED5413ED2C56AB5634DCA211DDBB333C8EBAFAE42771D9F4BFFED56D4C0B1C6683BFF51D0CC804E1E2F6B288C78CF292E0840D60462130DE3224AE058533B510D70CD9D5ECA048AA7472C5DF3CD8CA66FEE21194798237CFB506EE058319764FBC09F21B46850459CB581AE2417992351339F5F253895CC4251670192824A76F8FB63D926EFB1A070E0CDCFCA3B6D91E4564E085AEE5034A10FA2DF175E0B4EF2AC9BB6CE88DC16BEAB87A5A73350D5B7C964D005FABC58BA0C6CA62A7C127A49B8F01B6EB8AA51D3C102591E7A96029A248E4C65529613F177DF501C88DE3938C378EB4C71BAFB61624C15B8A14AB6C5B0840E0BEF1F6BE9FE4D469AD7189B3FD79B2AF4E9FB2D019F98E57E56D33EE4F32F2D21D8C11FB3190E3DE9DBBE9B5C96044D92E684B16C8A2AC216CBAEF735B2C72690F7692392904CEDE6BF8591833D4007C7732E7C0D70FAB6179D13CA6F77ECF27E689F7A6D4702D9BB293F3DCF7761DC6405CE43E32E73D8BBBC46C9EE7DF606BB4DECA8B197BCFC79D6494793C6DB02BDB2F14C3B81AB1D5F7E5F9E07AFF50B64CF2D82254D8E7658D3909BBC27522AB2B6A31394E925C84B665A4A030D5B1399902C0E31E27733E1761E460095FEE4E811C98A8FF6CBB37A27329B9DF33DF55A22E52DD17DFF78643675E913640FB6EBF88430487D1DA2CDB6148076F0EE6C84393D5
+priv: 8DB98D451A84D7C9FDB7E2BD7628EC0EFE6BA51499BA12BF981EF380195E1D8BBDB2D29E491867090B9E965A697B5E5AE1CF087CE91425ABBE0CE0A5AF62653F1AC1EF5C1FEE6B7F332FF0876353BF37596D0FD0BD5144B2D28DF122762C53B0E688BBABC6FF40CA6B59885C172D7B8B03DF7E9EB847FC64437129BE6491FC9F17844745181084765356218212331443581827422547478716583235137304142402455774301672220067702281740345182635367206821152585408456654052728583200823033372154310824870472281817357366180438076076674475812436718415054614482424484278483046206360807771787771054735117481860335283427845150441828024348673056854648847118566408478657304738565734805614324307071342515464763053856836203744407720261127508640865603645571763504615240651218232156110531767574417578488131402811708672300570030415207614860486716278605250054542784421203140032858080104483743443502057255687503365145364325545780515742727205012463332228222545378481253257774532743251224012706856360000657410838731676482345513625233382538338360685487381801863581234163171801118480454512304805870580353572172486653225874875432158856321508853750572842660701771844633807757246836606614711553870048011642387468317806408144712357547215517244347457800162502560134340120227860884181180845236075730547174351241070547148484732728430350804426817052716534122672621650022564668418360272021232568277144644726668188641422271467488778515871817362810073182218026675237214022420675082370102767463268407376823612174601552176822253665808322107310413688206233547728348046326336582588831571550353146288604673611722768507738570106650282730540010814825386303560441675734048647887803531221650516815166201144723144731234257121763440850075481006600576245770066430232611184655640121061423732475158340280276165264230773851076665813040613203748418653067610885602255487480571513758574384651854415626417420543166747785171622576046385374026360446536560323364081514531124255163224126611340585256771327070023233175712863557000643568748470265527880027314325564436741673163013613563057262677350520653061006868115275687721800851442668541753630261381875745384251303754538638404618280501713206120252623514460810823423805714323631500120804284855515134331476516481847486650288541442660882611657005023631346640283306348184686066537312548854776538144604140728572838456414638133171874875422240152881130760145071162647006611762068256704854336802543356764210411586424602276003305764112061322443824572765215233587274448602602032341352101470571466720431168327107605723515030588630603022537525532211385730001520137417308382054521477265701811070771684871876723563513581351236548745640701728104731485470714068785004725608360521461771588538108418144581302136103731866083078237762606701124574620400076086186400026430204242416313181665824713128874033465213378736357151255754782458148571410206886244328708502561842137167528742821045110640483861757763044035404758481557643071506274125252625457522422851864812233285804123447364523664267670644684325263185521744116250655620038007410050478715435430444716138012661608280614268743443256531360686636133112133285152162217110212444684675883403052787004876652088607383057786732820085417285882C942ADDEFD289558DF68F84C5D3EEABC4272F5977AD513D3A8539D23950C631FB6FEC0A49A32EA5EE0B732A751FFA8281CF1C1D4A278E6F9C87F64D6D7DF0AF6DE3521AF8623512F6E27D4EFE4A716FB72F483FC9811832A56BC22612C7DAA2779EC83276AC46D188158D448FFC8316E526CE5194A2F2AFE14DC009EC89C712C705017E68EA63E9FD3FF5EDDF24AFC4533190A999F2E3909B93B0144CECCE997B32EEF929D73635EEC938BDA1660F58D15E5D9241C6061FA2DC43BC8E282081E324975DDE1B84C32C1031987B8252E1B2D3047EBAF0206691348A5FEDCB7988BA0D967D7FA8610CF7DE3B08A8BB536D2A80C75D74DBDC6DC1383A74B936E5E342E3F425E64660D230779C1BA1AAE18001BFD14EE3EFD849FDD81A561CA83F31531DCD1777AF16A8A7E37280D2C9D7989198AA342F845BE6F3FDC99FF6E4A2CD7E5DEF8D44CF72CFE0FE7A659ECA1816919613B8BF2255B77565CA0E332E18959EF7C4E3912F98BCC325AA4341C079A04C0B62050C9405F4E87C52C829C84AD60CB904B99B45653D5BC9B7CC96B4A8EB2BD62282F2B58A2FCDD4F48031B355B2C5D4D940B3E5EF791277D27E4D9E91EE5C1DD53C5F2C0F77D0CD693B80A97D7AAA4CA942D34879430BB0A5B354B51B3D61B47CB9C53339BA44BA39F617E28BAD34125090052479A275F9C9F787FE355C4B8E965EFA9EC3122CE4ABEF743361422AFB61D4136D5D83EC2476A17682B3E16FBFC14348B2A3618713F78BB39F23843A5FD50906920185AD1692597DF722B6C8EAE0324C615FB051474185ED261C1FEAD15086C88FD18A99226AB93DCE1A11C289B91B6DF0D7466B1AA26880FAD838B520EE9EB1753479FB5E9D17440336302A2E3B12A5602EAE3D561ECF7580B4308852BE844FBD025E598D3E4501DA5F0E4E8059AB05388505374F5EF6BF6D587AD79EDCE255211F91878B4CA75465884C75801995B4F21A2AC32E38DE736FD4D1C9C165F4C5FCC8F9392B768206084F4508ADE4AF5AB87DEA58B42F82AA64B03E32CBB5DEF948A14B6D93881EDFA5890291018F7BA6CC7148398823CD8840075A3335B5E0B1C164750CBC43D852C4D1778F258BCF6898E363E368B4DCB4863DF4667FA505557C35EF6150E74862FFEEF1C42779E870FEF08C55C1B7DFD433CAD4A6AD2DF25A90E840C07D5695AF96120BB6A41D48D4121E05FE703B1F5C8343BE403BF30868B215A36B9E79141409A0AD19E087E39AFAC1102A7D7A2411B4D435E4D731E6CB826F727508B0E7B360BD2AB2A778087FC0D6C2FBBB171EBF7A0CC40DA389836E895A6E0AEBD0BC0101D1E10BD7FF82DFA214631B38688BCF620F7188F33BBDF17CA3FDE11C60D4A68F62C2FAEB9082514944C93E31C69BA1446F4DA0390C250DBD21336667657326246A4CEEAB541803F7810FCC2A9136A186319E8A164D25EFE0CF08D98EEDEDE98BC226826F3AEDF19F5837818514E15960757F5B705FDD106E061BD6777A000169961D5800E5CFB63F81AFE396861CF87271C767DB3F023EA090270D46E4566533590CC29553316C3BA34655CBA17EAF8227C14A87019324D843641D3AA9E08BEFA9CBDFE9E43693E10E3CE2989AD595B1C279B971CB03B02644C8D205AD9AC00E52C9D66042875ED8A8340CE37CE026AF25B8ED1EB503AB1F29EEDCEC95C1053AE4CDEC7987E1AECF5FBB61ABCCD1AB81C38A674067B1D3D1DBB587BE58F0ED4F390F329ECF85EECF686FE7FAF7B065D14AE1AC5805611EBB4E24C609ADD608864FB88339A7C50135BF3B9FD149AABC7B812D9DD9902884ADA215039D1CC6DD687207BA91A9EC8FC2C18C15F2A841E2C7539AFC58C2F998B8D6F683B786F8A0859808150129BE0E57F7FCB39D102BA7346527F6C24DDD21B021835B32E094591087D20E0CA859159E033BD06C7ED6B76D56E49BB8DB788FEF5C3649197DFA25572301076AE65F3CFE0F135B8784614B65C458FF7EC6D386F10B673B5D17E5A2CE710835E5504902484DBF2D4C99B66821F94329F6159DC50B5F9611356F47FF4CA62C0BA7EA6CFF3953F68B3A2C4161D63C74AD4BED2EC2B7B57C81166016141F8684C26B7F7B7A6D136F1DC6669DB16215AEB0664B322E339AD8ADEAEB2631A18E423BD66ADB9DA0D7E29210A82F41EF96654032378DE32083A9DF91D237A69F7895D2AD7EE5695E498D7DA5FCB33ED831361A3AB049D36D605E3FBD7F019651467D06E9D8F14975EAB9E1D30296FAADEFDFC435BE54A23774D2D34284DDE0632AE5BC3EC76CE59675494522AEB4242F296B32D1E8F71B9255D7424CABF83377F94417CB6BE226FE2E42B020EC0132BE43E0D0F0A346A8451AC76122A44A15DD801573C704E0FEB63E9E5C2A7242A1BE0D3BAF8C887C05E032A4E5CF49C462DE9FADF951085420FD67A5E31AD9AB33B8FCE6C22C5E3CFE8B87BD3A13CB921CA861315C7714F96CEBAE615B179A62AEF869E81A3A5A16AA6C5A7EB6A7025BD47D1E734818A539AB8AABB6FD1D14F2D92A22A9977C9DAEA678DAD360EC2B7E8BF72A5EF72556251356937F6F515329887914D81B66FA071C538152D75208B58BD381139F5626F5373A6A319EEC4C79A37F759F27CB2CB76D18CCF5185370D3058C9B9571845554BD64D87D5999CDA335E3F93AEA99588F2BAFBFC9DBA476B06ED3A57D8D913C46FB9734A4B5FF97ACADDF5F6E08C9273F712639633A04C7E7B7CEF00876AD865F2895680A808EBBE6E8AF85EB2FACA81C33E4AE8097A9A003DF4161640CC96506F42227DE85E93177100AC01F05A6E5701FB8841DFA529B35507442480B00088C5C60026AA77DEF2B81EA411C88EA6770C5F849528EAE68F1D83E2462AFCFA372241A988E0738514AEE3F32723EC78EFD8C04ADE28291C309B2217D251C19BDF9E051394414E49AF076CF8A5DF9BE6A4C7825839F1805D3DA89EB2071B9E2486FBEEBF1A5967F1AC58A072901B82DBA4D6090E4A40020590351837EEF6CF6E4CC678F3FAA67BE1E16740E7FDA873BE73C71ADD485001D002CB3DF4FEF3ED277D130BF66D8C4106491448C10B8C402DD50C95CFA53CD8EB375D64E5E7500C66932B33E0A1A1433B8FC80D0EDB37004A2F64A3207512CA591123313DBD5C0C5D99475595F2CAFEE7E9BB138E518E679264D977E2320CFC59F467D889B5B4D3756D532C61BEAE3199EE83D905A440BA311D8F8B7529CC0350BEAFB908BFD7BDD542F6FFA460D2116008F16F0471157C117982506D82E13A703EB53544A8783484526D8251628E1020DADD2F502A5E70FA9E90BDF1CB9899F79B2F24BD5D09DFB876B1845515D947F8DCA2EAA40820556D16BD93382DD3283D98BC11CCE2418C43A35E07AB307766206C0F137254FE736F15821E3AA07EAE299A33C31C896C2569BD39D2A0736ECB396FA4AF9799180C693B342A56D7255659F75022E37D301041297377C228A367A8672D0FAFF459A0DA9C40BFF60ECE85782E991F0682DFA73099A87AE293860B143EC788148
+
+seed: 2D6ECBAAE0E5A784B543BE58A0650680AE813A01C7E0C9FE65ECB32A304DD218
+pub: 1C2B6801785DCC358FCBD37F578673850CAD84EFBB28ECD828783DA9EDF6503BFCA2420ACE9FBA45D4F39487658C0AF41E5C876C107B772C7366B70DF124C15DE0029FA1F002EA566AF04441D7C7E33DFAB7936F19F34A73AEAF42026E4A7245D6FBA3C21F26EDD80652442522019A72E586BEF8C655AF4B3E6C6AE8B8678A81AE39E3A4D756AF595E15AA8C4ADEDCC4E5BA4F8EB4AB5BCEFAAAEF15A629FBECF7BDC657910A62E5E02E3FA3F1D7FC4D94EE56F252B53020E325C25129C5C4501FDED83D071C59FE6454AEB1271161DD062D0308D1C515360E3DE60C383074944762EA6464C175F7A9D317CBEB83A8238FBC383F02E299EA185C37F259EB4BBE3A9B26353BCA9A1D877007A48B1BE4ACF21AF2B6D1B27EDD5C3DC2A77A17C6EC0A9988F2DF6EF5087FB15D482439D26CF63256ECEC16BEBC92A65A112C2A277DAB80A0FC49A18873F9F62E48E44BE451C161D5DF260EB14EC62083485CF28AE98FABB0008FEB12B0387AA1BA88E70CA703F8E2DA0F7DE8F08419FCBD0A5C120081E0F57A91857D476DAB4BBF70B3BFB7695B48486F3E8ED074B258B930C092F73D749E2671A9163F631B9EAD06D631BD8325B4DCB40BEDD67D9CCE14963C5D4B2EAD21EBEEBB441936039F99BB12E5629D5959DFA5627335757A6FA6A2482DEF787BFB173BABC595DF3D03477F8CA89B82923799BD5A94329CF9B1B950260CAF3152441B51B576C5CA9213E8AE2B34858BD4BFCC5642FD4A65C1F38F5444BD0FAC0C24E6D9AB20791FD3AE3298CFFA4B1F2C113CCACE75ECF9A83015C83ED7C6B20FA037E83529D8182A16070C6AF08652AC7F4190BCB569A7BA00BAEE9FCA16D9B0485FAFB55F048EACCB80D72B34299C9820C0D3E06EA8B08F844D296C180D7F86AFEA7355BC0B48C58A65C55F7582EBFE9D23FEA305B645F31EB1BC7C158F3D14D74101973FA0975202CCC83CC962B2852A409E6C757427E9309746BEA177FA23FF5DAC5ABCC5F85A8D87861104B41B04AEF79C31C907F9774C06C2A4CF36C2E17829149743455E419E672F744C3A75DF01D6239E4492E643CCCEF324FFDC0E42E531E28D98E9EB41A5906BC6EC0C4B41ED82CA86262F768D89A3C8860C18F1B42356ADC9C1DEC2A311DBA00F7E24688642E75C1325D4F72619535302B520660EB56BBF4E7CC7F35EE8261D3AD2174EF0F5B5AAAF9F664B61AE18C5368F080A9238B6D4F4047836C9D784B95B84BDE8AA165B3FA5E582A2F24AEFC50F1DAB9FBF666E4ECC858599568FBD3CF90EF6F23365951A00F808AD1B8B6EC09084C97268330A5E24F4F8F5C73D5C365A5F88D1287C5E37076BF79D3CA40EED1FAD9DFAC8B7A954CD58BFB24C200704E19844BB47F5CEDB184AF2939341D28229F63EAE74D1AA2D14550474247FA3922D2C24E40A5F3A765B3E41F0126DF8A494F8C8EEF43F05E8AEBB1FC899013BC21B764C33CF4EDE643055DE39AE5394C570646828AD265FCDF37E0CD152DD07ACBA5C28E57BC8D82D871C49C457DC3CECE1758EA883E0E13166E4B82262492136FC221A15B9725647B10663ABF3A3B589A73226D8CDC97B7CA86CEAB4AD973D83F85190CF0F50938C1E11D3796FF3BC839308C3E8D96AE71239CE9C189F7F00DB181A95A5F59D371B3F238F456D736AF7A948D9CDEC9AD6DAAED77E47AAA925D9EA0B0B4007E6FE9078CF127729AD03FA43789F38D7277262502D17580A2586453B1C38A24C7F5C59D96500FF01BF04224A9A868264189DA9CF4F3508B145EF402D217CE991419B68E5A82E00BC46DA3149E392D042E785817A41E33C823F4C6D2551D5EB03E9EA862CD175D58FFD1B5D7BFD1C7AC8C6A505D937A36C89A60702B7F64345D13D82BD29C86302AACD1B1835186C5F3F56B9E44E085106CC96907A332F0FDBEA742A6715BFED95D606C9F05B5F37F8F51BB049BA47DBD5EBB80739817EAF3F09810B00D9702A91077D60A09E7E70562EA84492B9DADFE4B8DC957727FA2296A97D24CA5F065F17DEB081395DCF58033AFC2F424A0CCC3220C477CCD627AB4E1D7104477D799833E2AC49AAE6D055C97D32391F7C138DAA8CA142D33CC035E4FABC57F3D1B0D8F93468D08BA33BE80C820EA5B3445B4E07E584B42DC27DD24FE42DA51B410ADC3D8AD3B8FE21C573858EFC0B6E709F91D86F6360C5B7F1F98A4B7D0F606DB60BE93CEAEE79A2112A93D0D6581A58ABE136FC6A87A6FF3D993020A6E5BBC682BB2175C5E6AC38708BE21A501E515CDF4D87B0D1C57ECF232936A78C525FE54557695ECBFD0B8751BC299F0B8A98979960939A1C88F3553A98A30021D27C72C9B25D274D642D50E0B438A65A68C6A2FFCB3D0E7CEFE9F0F5722E033F7358D7710D18A1BCDB12E4D01E3E8A580EF1A830DA29207ACBC45FD589270A9A82D7E090406C60DF24886E62F3055CF4E9E2D03400475D226228DCFCBF396868B1E79F91ADAAD9542CAFF5FE3483D51FFEF8CB247F2E90F489D0066E40BAD3D00222047BCC934FCBB4084D5D6B0397C93DECFBDD0D22CCB2A04ABA3DDCF8E6BDC4BF271EF1B55F808AB58CFBE7B8D27D334F0CFB0E2A8E3926AF6B584BF746DD8E7106EB4D0272B234A48707A9731159BA9F772D1BB885A8BE43CC527EA6F304D1CC25A41F876D393838C13D3FE8E7B1232DD59C553977D86D2F0634C9061CCCEC779862398D13753F046CBC1C6BBCB2184D3B93EF6307D094600520A13C9A61CF8F24B966F33A4E1D4A63129B
+priv: 1C2B6801785DCC358FCBD37F578673850CAD84EFBB28ECD828783DA9EDF6503B2A3D818FA1632E882FB4B102891F36847D725EFB265104C96C6249D614CE2DA2FD15B9A2915A14F0F18067A2EBC07177869430C6A3900FFDAD11EEA8256258954C53CDC5092E082B959CAD36E830534AE598CB9A40805DA6AFE3A33C781B67682304811862666262674883630257466336654176127111610188405651882248835621772103713057301461408544446057187771006674605835060402676635418131476413436003120645277455515485670383644331501872624770716378003605043343662173545134662807012482221028367326430336535664448056113574018581120523841166041143840318651156482606328312581566713531544126481316674737206548863641151137443513805664368650232741372866237083842038500867032145440548358704527308541843850274876810732814453828163568433334252171168355156128245552322375020411688726150257732451832171850113208171275024208763087043620431368784852342633345325381082054768367221670638442265455241150542031786524420340504232434554630307202834160338843770683236510173416158055663006632524311202770074186756864725651225115207874172102767108723215410126544502265753858458031284223785244845208708477813813164616574044334063467141642437824662515130780320530524304615455323331052410022757028285822155463465307887721528548442757207157143662703603322523164328585723017213078884661343736471304300711110210007661410452167826762283616602211111814737670478671581647376618273266215607470650400468274107273140772805621181485466005826678168630861123665356648222147531357331816374484742736281012353528830064601303473326670343601815332320656614136537004121661334847127484167341210426215347444665228633775855605113481362562501604066143748138675085214380117534354518528803214733100542576016451870144542343240477121026665084103270221073287781215258026275727484778353836573535212634148130745855242442608642460711873814258078850618877672413774513172426032072356862074508810306014067080867427757824824028824108174406026218102520624880108734712762825145441131055432206348270026562148550718452404551485343104823587357361075363067777608700730787068538524620734084330357617168267260432467052780270082138751130213247302351083133755083746701327633651771612817385522241687365428627888010160240244451556860642616888021741676615122361567710825223512105410650126041326541401456171026106665284806160355012356447348246653058504148285820087475110160353520303780551734644523605167821608646410237607101761118786078003148446280063422132668120564163088754007557568310505200680472867527162330302442631523115778167707572822871262554364140832017606753138334338852737720140605628627473251125862002613337020675245162661260861007155034720455157108418561023828220700355382181424101273721445815451858423724440784253713785183511880022873741854405034651712631638575532026648282103088505253625664346403781263188161174460770820772032382661577887440223154505470856385852111666161268622021383012686823504876281517266854274311810301526324508130485562286633448201880388745815358336710062432506786440757406072140568841501477456514813456204417571574122527482775515235688833535654757407187843821823872746421510747450775537360482055485647333021465B68C4EC5CBD1447A46D08AAE37528E592C1BABBCC9F5FE65F159E1C54AD88B07A7C424748C63C42101D44A8CBC87510BE76B9F61F3314BEA466B2F7AD9C7831DD8F077ECF863AD498AEC0735DBD6D0A86F2DBE80487C08E0E15D4F7CA9DC09822E3A541D65A07BB3BF9C39AB410EF2C0A2F707985F8DC2A72C9269912A3282D6D0480D37927959BAE33003B5A03A2F82850BD15266F977EDEDFFAABC2B0BC9BA8C550B5D7519806A574BB1402812D52D6133845DF5EC6172352C2FF5D258D3D5858A2EA5EE606A40CB2D76F461980816BF6A536A79D1667AE5422346BDADBE2F6C70FC143AA30F4C154E22E5DCFCD641CE01EEEE50F42AD9BA102FE9D8A186190A495FA807A5CA7552B8827D90FF2FE48F8F195391E358754A3B032D155286A324CA507F16A815706A3A5A1F127E134BC5B5143659E4601212A46651A4C7F8823AF02BE5E3E04F41F47259C66B131850A7D9B0DBD3A415E078625127DE9F1D602DBA207C0720F3F96A44D86D60802ED16271AFEEC041FA8AABF92209A4D9E53B311956E46550E4326A5C50CCA7AEAEB692176DBBA39C51272036B38FF92182A22C4758D1B865C1BBFB342C1F9407BABEE19DBFE046E122E18CF7A25FEC6A28CE4C33C121ECD9316E9AF0016A16BCCC46CF6329D878F48990351829BE43228F200656D57813FFAC51DC487A86F6858FCDC46910024AEACBBA199DDC66963D914E970EBD38F18EFE709BA2691DDC8CC272095302BB2D25657C32BC64915575B173085D920AEDDFC37177B5FE4F38ABCE426EC46E0723E00982FBE5C7E8E5A4F26540E37DC39E022DE7A08F13B3E9F88D05C30C8970899E2C3FB898CFBBA00AB8DF919FA51CDA3E8193F52B8390D7C274C7F5A344EE42312B823DB36BCCAD37C4B213011F0310DC9BA72B851658DDD5741731F21A6CE7F9059872CCB9ED69F732B7410033D8B5ACBD66B33928E3A7D7D5A28E3245E883A2AD84F7C2409AFF0402E982BC95719C10BD187A454DEFC7D3693AC537ADA62BE47D6681667CE11F9AFCBD8031F92085400BC086CB4B61FA363096DF205CAD59F6859667A9BF44888A0BEE5D4B63C4E95AA59F02C2AA9BDD02519E1758ACE89AEF92F32789656E071BCB10767F2727C309107847DE2A0C06360DAABB356C35086E4C95AC668F0F4760F636754879CED6A1D569FB11E5EFA2802E8B1C8C3935F6C5C097B96EA478143C2D2EA5C1E64FE19E03F180B70F4EA91FA327AE0BA6F4C3179570C62C10A7AF043BE2419959F53A31EDBFA1E091029F96EA203BF98E6798D96727DB60909C09A9339FE71CE9E4DA0BE641F0E8E53B43277EBFBD0682459DC028C6F7C042C1CDEAE9DAC9511E6EDE9B4927454EF9BD651B233606B644BC2DA0B29500B0890D64CEA0EEC968146C5E5FE395087BB4884F0206455290BA892B0D929632D098C33C8D6E27022578249C9DC0C207409799801ECABD7CE84729884E8714A19A05B9C7C8E6D203400ADEAFB0CA2669C8241914F85186EA0B50AB4FF646C5D386FCC3F4178EE18BF5AACAF6B1ECF1F5F894ADE5FB8F5EA336BF88548102EB3C897AF6CBDFC7A6F6667E075475359840328BD9131D2D17FEC3A9034D3C7766110EA3118161A42D3B61AB5AADC71352BCD0B5A1DA9CB741F70A6ED9EFB8ABD5229697852AC27C189CCE811A9025BDDDA939167BA717F1C3EADED18D9FA05C2828673AF274488F154B63FFBD853AFA274E182D83D37C97C7090BB9F2DAF9B37862F846C46E55BE02AC19D23AC0760E2B657C0B1B134FFF3C6753F96EE8B2CFF394B0F5B50CB77E8F7614664FB3F0EA8BA85D45582A71F3CAC0DFBEEF6848C63A270DE0D2696AC4FE1EEAA781349B02614DB517807CF4D2B0AC80FFBF0160CACB94F2C700D57E156774D85B52F5245DA4DD8E4FBD2B9DD1B9256FB65D538582CA08C20C289C5AF404349B12E5B3A431F53194E894A45F7AC68FE4A0BA8FECEFF0749ADA4A9B87D52563572F1B0594C62586BF28A821DE955696AC76565861F6F44A167534232C3EDDCD921F5D939284DA288A8233193B231905C76CA822B72FB04C21B4D7011D4DFF88544C1408FFB8159A597E7C4184BF2AB570C9CD7C0B8682EE942B864A52F4B71C6A79121E16C40DA0AB4718FD859598A4F52790835A5D87018339C221DCCB8011796CA373C9DB8EE2926046B0BC01C4CC6BD84E824CAF382EBB9D2BE3F8366100116F0234CB3C53CB418BED8B8A530CFB64832C78E6FCDC31D830E894DA330737C0D14EADA335E7BBA9E270751BBC0D72A137F3496D3F4057428F00C5E8A6782ECAE0E48C3B0D1220F2738AC092793C18FD30478B57BDBD2C4C9462A37B1639163BDAD2D9A11C36467AE1906DFF0F3C5A7134D09168DF7811FB2418C43D576CCC191F0343373CE73432735B178BB122A9A65AE84B27EE42707895C6412A4970628DF736082D11D2022C08C2759BB086547148C885128882C0D716DB047A5821BC1BBEE85E4AB3C5B8B40A5D673CE74357A475D47E96EC40337FA16C6B2FC3F09EE71E7FD4458712112412F6549775D0F66DA948E34BDC30FAA8BE5241D57C48DAE353CA3191AEE310A055850A266E04BB78982D0432D84531B0B20A2B3D238C2EE1556468A193A9A032657226AC726D9757641829615989251393CE0171AB29F94C1D583ADFE35EF8B9859B67364DFD3EDE5DA27CF277680C65C0589CD7F715727017F02F14CD9622468DF17D5697AC895AE8D46CCB1FB0DA103AE57A97F316BD0179B297061F6286C07294C55458144C6AA2E1932388362559F28289B0361EC79A8D81E6C77E7EF0D3327A85ACCAA082862BF5D99DFE89243125A9BD7BB2FBA35DB442E41E1DB8563F54AE40D444974307F410CDE68CA0BA9B923F82D5F181C141F3160A0450F57454FE6DE530F8661D49E1A87883003C5D1B83E0F21004E2648970E3807DF2B865BB961242943733938ADDD5D219B7FBDBAC5ACF5EF250A67A0923E8908C265876E56907F71FF287A6C16F21F61424D72F58CC468D399045F32083A17736A99A263E976E14492A6791E1EAD4D568AC062168A7E85F115CDC302B567E66A6FA7BE6FC6D6F7D4E8751603079A64EF9E46B9EB1DD50D94D0D85CEF2F7BFC58B5BCC193555D4B83D454CFBC2F910FF7D6E22E9A27BAE8A95A229D79C64BBCA7F563DA32246BD8C7B1D5022E0EDCFF163B03E4A3CBF2ED74409FA652D82311A753CFAFF4D9EA50BF7D91212E60B23424C90EDBAE25F0202D71CB566D6C4E5106C6D618B8E49ADD7156561D11963D2A1DD17A7C2C00145FB0AC9673788D8AC7886470719E405BFCE819A7083DE2D841FE616078208EF2AF75B38A20C61573A4094A6826DC2AE481A2E3391260BB9F01075258B7EAE81E2CBE387FFC018EA827BCFBC92CD49ED433DAFCF00CE55812FF8FDB0F566DDA8C6F7942CF7A9E07E2BCEDF02D2AAF40A66D0A55912F32A1F1D5C5071DCB5EB86CFC576791FBB66B5F0D38C9D2F2E31F86965ACFE661A9954F3FA8E9652988D0D2BF72
+
+seed: 3199830796190C3968520DAD86A85B677558A22257E43459AC684B68CE336DA7
+pub: 525654293354C2A1B9A2A76C9A4908CF2361EFB2312F8751932347FCB8153A473CF3EA6AEBDEE745DFF2CBE7A31EDC4221052D97347909F0567ABF97ACA00EC5FB1D9044A346866B1D7F99084C55E01687D6482390FF78468628D011FF6435C1A0FA157A895AE77B1745E49EC365F051A461980C4A22715FBDEA55972D41FB6549BC5085E175042CF5554C03D4179095625449D7EA256949E94469DC1E1BC3D5D91F2DCEF107EB8F17EFDA721EC1D1B0F6BDD2DA9F4B628B4D467584A1DC37F33D4BA326A6E783C562548EED4891DDB715072A7105CD1F65D4E5CF147896E3D16AFC221CBE3ABBB3633709A91293DA31A0C351C9974731FC48D72BB69BA69A76F06EF17E3DE3818570809848DA31EDE05D9BA734F898F38058C8726B8E08A22CB0F07482E4E96CD9AF73C9A04A16E3DCAF2DF45DD49EB0AA4B0F263D071141C0AA08CFC61CAFF95AB9AA4D66C20FCEF62F2E4D7A85EC0E4996AB14DB4130BCFED9C9465BC93D8C424D1904A732E5A198D183B7184E0BE2123A135139DBFE7721B5863B30F8A99FBC5221F1863CD22BCC710632B300C8A667C702E091807A3BA8DF2A96A072C991673851B0F30E0570A68BE0D1AAD7910E68C40C240A6F151B559A970A1F10A81A91FEAA8226389C9378B178BDC69A4DE7AEB439007741EEBB06F2C57BBD01D80114659939715C42E7CBABBEC944E40129E4C626A53CB1AEEA0D4C1EF556A9CDD6411010227CCCD4BBFCF634B2B59FC7F51E42AF50339ED2BD88F7D7840CF2A26CB5F64B1CDD1D7671687400219F4291FA480134E3BA5CBC8DDBC463E552F8F92268962D97154BFFD77C061EF9C14D343F49EA0BA241124DD41211E1B75F6C0623CB0822E5FAF8CE10BC07E9AE9441BD50F4AC7D79846FADA78C9793A55BBCDECDD98CE0A669665E33E0A8A142CB338D05CCC9F776A04DF80A95AA00775D52803EF71A57732657EAB19493C212F9EC961EFB24302F32A489624CEBF07F23DD09412045A413C67FA16592C8BAC0C98A5D5476EFCA9B6BFBB38E87D301579F8D8AD6DAF8B2C6B9DD026C19C931C42FF9155DE9D0959F30E04463F264FFC1589A9DBAE3D96E247925892C230A6200D446FDD0010BABC17BE23EB98183ED8E333EE2837B43895E5378D3BE60136696C2CD55DEC42AB817844E77E430964BA68E700B766BF046655954BCB9685929C018B0B3C7747B8CC37F1141AA9A3B190E46578FE93DA3B44BB48F339C861FD4F97BA0B0B4852F839785C542E4151D9944E26A131D5C248EA31C9F41B158F8DA5E025F3AEF3D2A15386BC095FEFB360E4818BD76446D5F0A72FD4954E5329523202D7C05EFAB170D185B2BF0D32BDB32F33A7460DFBC4ABDD929FFA5FA21340A5EA68DFE1DB724E0E9FF2E734FA6A11E5FFD61F086C90ACC6EDADFE8DF68946901C5CCFB5A74CB6B9CE8C490709B0834605FBD161839568FA1413571BC7B350F78F48D23F67122FB629DE30A85C594620B92284766F9F2664C7DD414F2933E0E62C0DA5E48A8C82E34D66C559D9BCA52A06E55E42817F4B5AC06ADBFD3B06433442216E47FBDEDA317C50E2107E8D6592C0BDB963DD4DF016102C8BD78C5134E9E120D0462606EB5E3822D00D235AD9C7A8CF169610C65AAD5480C45E2D9D95C80ADCACBAF5857F86FE4CB5DE389ED1803B05FFE13F724B02FEAD70E900F3AED263624AF0EEF24DDAEF803AABB07EA37366323B6C306E77B81B00B3A5823611C803A62C9287A09035834BEE86ACFDA3EE3A3FC69AE707A74C37CC597AFAFEDDC3490E4F19CF0195217DF1BCD3E24D1BE5787C6A08369EC6867593388E2CC5677A10CE6D9AF6C0FDD970F0D484F041C5A4C2697F92E52DEF895ADB8194A11711F055FB06C5B9137D446AFB847E562A1F5DDFC6F17DB54DC8FCB33C600EC7BD5045F8EED910D2D19D14B422EA6C1F31D3AA272C2D6E4635F38AB155FAB5C8595F5A1ABD240150C1D20DA320A7702A499BB3F51AE6DC74240BFED48D152FD628E7B2854F894718D3B5A94A887B12BFAF7456C418A83356F5D0ECD7EF4955CE1079D4781BA21044E64E71CE375B5AB6977D09957DAAB44CB2B349670B11C3F740E85518124332EB859718719E4C3A7EC3EF474C0F4EAFD0C104C1753396E8DF1090E4E42A4900665BA62434D8F1D3E3DF25569950E401205A3A8649853EB34DD026D35CCA312C5D05842D2744B643728053A93EAA878AF045632C4DA0986AEC5F4E5E0F93DAD38911A8307622A2EE9FBB93EE62B7F2D90B222AB0D23211E71227A2152D6DC2E536EA0F8118464A9C8F9B1D85D6C10BABEA6FDB2262595687ADD404C4C15C4C2189BFB7660C5CBA279EB6FD85A4C5276005C7EC5B3765D299783E926124597132D7EB623D665CEA1DB454578985E785022F680BD1439AAFA60E90694CB720EEDEB301B9E948E424B5D5B4E6D976B6E3BF31029F346024DE71AC2C2B42105FFB6054226FEE8A80C2471C052C3C07D6A4CF749135E03A0B263576F9F19BF7FAD0FA16F39A3A8C4335B0039A197C12465C9C9D6E5D5964186FB6FD7E7EC615F1DA758F207ACAF8B219B256CDC6B5200B64FCB9CAEF6540E2B4D5F382C9D8682B72F3D359650D74E69038527A215221980B30AC3C066F2198F781D1D318B53F0B0EF5A8FDCA5D1B1D6D978CFA7D8681E2BDCE2B0D494A30D7092DF7536B1EAF0ADC98E00D9FC718CE797240CF4E3AE2B8AAA87AF2FAB32922E4A87CD267FA2B6F1CA38F4F5ECBDFF0C879E12
+priv: 525654293354C2A1B9A2A76C9A4908CF2361EFB2312F8751932347FCB8153A47AB123CECA94687F65EC4FD6FC892101A78F01026F29E0135AF71EE700E7C2CBC73CF903B7B4888927C0F819C0CA2EDCBD907067803377984AA4FF3E17734478A57E2B35B766399418F75C7975ACD04F60063F2F0BFCA26E50F070B0A1A195353724566837267013523843061217340448208603377516427785068105543815455713385838378638182068387137202878174761230078700864648646024855062224860686668854027226160574716084705654107343266361631364842553385601555588856047580535034530370012175508353073724842155863748067168114848882320522407062271240544578230102367855236538671440435531266463107672883753384543572436706682450834316033375243560363701823084801423101304218866444185862300771604518682156827233004524227545010242832663758743810826325221807752832476605018480872813137847777000653666127557527716638486160042404864166636102870313548832240045178714184303667865718102217306530807425665255147226317774324026116685410151810861754650667058078686427182806416042711402016888435813707675336867138675385874877012367321122252527373105272488877008643087733704347456662422460586083063645404228215715050611018103186084667757203763065215143246526035450665527055616815808787430678265678120245012578311308256263333860323880466256476062110526427163351471203052665006541664736828465247818142306281443835837182183652107651602852387576021550653670563332605536365174537158126383246523487401623134168384464856206204768217870623261824124585771546525528033177675181171075524844712203858364348868366630338263454740137745641040281333252087128027252246866743284811231073882131764045468851375840422556572064517855348352776346620056667224700385762102065606267611202427345130114347574537103157673262766574536203507836868203424662260332464514814176307376835282323336537583824722072737215563716516622534570868515740510531360567302685310330081808880645123531722346410845162360657713551527237544415554545544676603556376177653716885147033372853404163258617884540527813328211514033674414257460047837602245324068143272035585220146643616441718725600482680403063464864523457642605402244220645225704532847633875702715808568343465273572577521166715627587343885578373673372766332716633554116600462443030006236252146783520750515425417144815346847112732253776133677705301441278410464448741113474825577724608565567664387072414188665482012132181145627744672156457615822101260650685316686216446276142280271565741485500215068572175027842512176043780617184765347663010028034833058116425222513618208124855666167843357777361347708737016118061814685808301052444558752468101207730047385746728811752708526513738756226634713860484428284725564228166015837222131614501433104081222168277767128212721462486143511455718342443083388355003610147772667647654723627762544342374672085384358876058841431863634132804448410306706760647544551074056854262848837436080043515363533205588831716267387132602472322688526176687873184770211636173375004366841185377208728801202224543227412038046055442545283515488671645386881814722167054187675850246200624520546261410308840183184005181485267722758628353566744521701762386445637465210013676767755BF422E848963E128A6250E1EA8CD6994A61AC9A0145EDF10B3F305466E0ED49A068336C98B0567F9FB23C5A87F7ACAF7F22A9CDECE4215215B168AFAB7821266C858A92579D96BA48BC94A120657B5C60BA282A2BCA3349C13C2E56D7BBDA2D0DBB6072FDEA7A1D8FBC9B9D965E9C8DAFB3DD8EBF78BBC57AE218800125A80765173C6C95FB23FFF90C87F7F090758A1DAC96DA7537B8CE57B1E313312CB26799A65E9AAF0387D2CA3DD5E348918B7CA888E0BCCF9136E55EE70903A2DBBCE3476AEF4CF338E7CAC5FE067E23699FAE85A9EFD9E68242949786AB2A2EA82EAF8053E20953A1EF07BB9E22D7847D9BDB6A06A09948038BA5448337264179180AAC89158B68A6CC91507E552AC1DAE3619FD2FA2E0CFA0C2489B3C9AB4FACF1EC5BDFD188BEC71782AA4C3C6B0C6097AE93C7EA5920A832F6536CF5E81D1A222B9B936D5B57BF539014AFB8ED19B076D5C3EC355D06A7B56523273AB4231A4DAC8942D5DDFD58A73F968CCE3A8BDDC5D4F703CAAEBBB910C264EC2079FF75F9417A97502C91DDC2FF5625A3C535C04C8F95FB0B557B6335299DAD717D21A9973433C5B11AF908BF9B88E4B1941EC12E9BCB9F2B2331B7F08B2EB04FC30CD0A99ED2CBBD3DB18E32CB5C160FA885EDF8188FA8716C0FA9232FECFD3EA34330A61465D4E10C25497BBDBEE15070C3EA66E172EADD1DC7686CC32418CC26AF4B2D61259672B51D6E86DEAF4208F6822FDF28D4F3706D92FC66EBFF9E6AFD36D2D18F25292E8175ECACB7465FC04E674ECCE3A62ABECF9C2D1A52171FB411FDCC893C43C6CFA94B1731F21278378EB94ECD9774054F2D6DC682A07980C87F6C37D3C0822FA30334B90DA764856BC84CFE131172E75639935E9FDC42027907FA20363B0A32C7A29588C003DF13DB2AE9C7BD6682B743B7919DE78F8E819376C1D9E64FD1EA0750C335F56E9326E94107DF6E441EC38507755D3C48301B616782A1F4ABDC98BC8585A18C29E80A32DB88EBC3959DDEEB53638F6D58B58888EE0FE37AC86148BE1DEFBBF3E5FF194F9538044036B95639DD219592F0433D695C074CE6E9710FF9C0B1D6891ABF1396B5CF34BDECE6B3F559B1D813CDAA5DF038A949AED51DFF2C2E821C643032FE6DD6A74803E2E2DED13D446BC969AF4A0BB2B973D5CC54E2AEF9896EE166D807B0E41353D6DA28D8F5FC2F3D991CE68AAC6DC75663323080D5688FC6C6DBA56C033896F0581BB8E9F0E9E3AD561490FE9B8702D9FD32B652C7E7B74B74A489B981DCB598B6DC38A7CD69C8F429D1B2B0C827D8AA31860842758AA1720D87B23074DD0B70601FE0C2AB6B72BC4FC836C81EFD49B94AAF378AA828CB90242448101732633D0E68DB2573588809CB76A80066109F6805445F3880A4CF143D02384A5198E84796EB9E3EDEE3C64DE761DAC094B05A4D8981CB54B72C317E4ED791C49159A4E4E8C21F869FCF320F90C0E67B0BC2BA193E29E5018213C1AE8E9D256D8740C5103DCBA8EAB450A6E259B334E3448CEFEFF100D03104F810A7CC5D085FA80F054E4AE67AB242545A818E4EA1F3586945C3A4D242EE5ABE14DB6EA38F50407A88DA116D6D3BAD935A32817B4A24119E9A103FD7E6FD5D5E020EEBBA1390E5151FF456669E4C14EA8E7F343769E7510AA68D624553ABFC6EF2F839AEB4D6D5E1FB57510D3D7A7F0EE969CCB11FB023EF279FAEAEC6CF377B524D206C5BF4E529C315E6F23D9AA4D8229F3AC1A0D77B26F3530C80EB77A55F45AB9FFB9FFA8B8EC28F733BC500BD684D49DA1FF31EDCD20C24231086BEC40E937C2AC1F2D4C9EF4D4274E9F15A6F961820699B40D0DBF4D11149E5696652A75D571C61E8ACB9EA96B5EE185ACFB344C9DE2EAF7F956F0569766EEA44AB42F0A2982F0957F5C70DEB7248F6EE23D322669E2FB3520CE9FC98BF79636F5156D9678BEF7B19F916A8ED1F7EF9D34FF853923CBA360B10086A64BE6BD6B52A90EC48D763C5E00A9BC0822836E594AAD9BF91D0945638B6C6A961DF953F69C4DD75799C7B73CA6864746EC3402BD341CB14EACB6343FBBD244BDFE1EC43BD6A5A0B1D3FE2D896A04FE8419DF95A691020BF61D214E4736EEAF25EC01304E6CC167D8EF969B8E2ED2BA6F5328EF83903C73ADD97CC6CE4BCA6DB63615932D3D0865EF837E335BF54AB3CADFD6EB4A7AB5FB441644AE5748CCE75157F669863CC89930393083D8BBAA83735DE31812E471B9858E267C7E646C3F204250F8D4280494ACB87D82052B0BE33002806912DBF10597CF46D78E8C64E648A0BC8A756D8F09D1927B73385E8E8E960CA2F3679ED81B0461706F4864043D5DF4E5CA59CEF9A484513C86E2FF44C496498EC88C0CC8BBFEC45C9A9E233730C4336A8D4DA876BE797B57635A6CC532DDC701A688AB712C8380CD169FEB3CBCC1004637BCC616B7D300400B6C55B0134FA2D6B96A8AEE0A54FF88895E9A16FFE4EBCD308C7E112E0FD81E64C08239BB95D52EF32266668E4F0F39EFD341B159DE7C8EE179A223D398BA70A07B774C04FF711EC50B94631BE472232731808291AEBFCF6894632B1C1AB119243043AC5D0C054B60883D2083564133FA82F3A46FB59F86334BE0C6E79E201DB85D35432BD1793ED3B28DA8F65C7970DCB9FC6EA0902E9B83C4C8AE86BEFE01D3D5DFBCAB946F017CB2CF63AAF8B65BB26C8D6A5A73C9DAEFF2FD482839916D9D60D3919607CB99A7434574F05FCF15F4F4F03293F3EF2F5C493CF867A4114F134043C5A5CC26F8875B6170C787FDE2247DE3AD7E80610F6CC09F58B66F6DAD4354795D49F994535B4424244F18FC65881F9DDA7900F7066B3CEE542575F13C9B0E3E236E0813F2D7580AAF8F9E564A3AED65DC17F0A6EAF79F4015ACC811F5D2145E51F72A1680957A97D36050028DA3D3FFE4FCFBC223CA4907BDCED64101577E2418821D77EFB9D868FC824D7BE13A28CF1EBA4418BDBBBAEADB54B3E162DEDA47FE29C993488D2B5E41B390BB4895A49717BABDFC798474E852CD8B573E960B44E85A2174FDA806F97A991BF9CFA8260D0EA441A032DD91A24C2AD52F3B8064226B22C73DCCAAD5DAAE55E5FD30FC31A43B022D997E14E71D3DE8A8E1F4027324E22E2A7616FEC4E0ACDEDDC12C04A56B65F0C00A95B8C1DE9B61F7C589D0D8F158E5C9C65439376E5E935CD7B149DC883FC602370D38676571CA764E6E5A2467EF5E775336BCEE1450E0F978BFA4A0B4CF5A72C259FDFB18E54425ED83E6DE7086C5A175729E38DDE3B46E751AF79BDAF0325EDD7CA791F4F760FA7279A7C17CACA8DC172E47362F90097EB36A8CF14DA378670639D239BCDA3A8BAF29B12803CB26891E4B0B24BC61066A490078046F000324E5186C39EFABA39C5EC4AA8E9BE23BBAD6D7ECAF24A5BC0EA0DCDCD90E17EB7B90AE56D12420786F07C8F2EF7944442AD36E2ABCD1E66E694D6B949EC2C5DBE99832271F3A70782CE889A55D93F78BD4F5FD19C580F456E684644DDE65A045D6D64BD99
+
+seed: E788F93DB12EB4DB91993C6636C009D06D503D5331125A2AD635354AF49ED3A5
+pub: 370D66BF2921162F6025F1784F8CA45A58E6E72EFB8006078785BC023D8CDAAC29339D545F3F03DB0EFCC2AD356020BF1DB8178B123AB7222FF4041955E4E9338DE146932623EB6517BD73687A51A67623F79A36735AD64D63641D2AD2A040E8CE85DABF03D47DC9A3E98CB8098FB22F84C370D240AE0DDD46369D02ABA059E31DDFD5F56FCFB2CB7066B488C73AF6958DCDEFE66FE5CEB0FCBF298CF576C48F3A1DF542B5343EBC8F2E80CFE4A2D31DE6913EE5962A889DBB22067FB377606CC1AC663787C04BA8C2BBD0273D38D71D18BB7AB435544535A60271B3B2045636DEC30B0727C3C527F00DED0F08D372BC985F3C8FC12E1A46FCE031D8A2B5FC93EDADD15EE8431435A7C6797AA343D33B57AFDAFD870A643D927EA85C01CB43AD709B72F1909DF60499B75B0A29445CDBD1211EDA6666695052E4A80BA3A4B22C33B40BEB3CAB8100017807E5FE4EA49E3FE419EC2A86A39631638C0122728897254A58A4571E31B46583A8E37AEDC5C437E27728B1F14CB7493E5698959B6909FFE54A0293A754E34B335703DA5D99D6B146F4C7118A27AB8E1F9DDA161F03DCA0C6408DA273D5517683E5E1F7B3C2F29AEF73F75F5E60CCEB99AC5327F168A283E590E637D33D6535001492DA965AE977212056569F2456C8F9596DA43989D9162DB32D8B2B989000ED4B3B9F87D1251F5FC9EA71780740761711E74D7EFAB8D007B81E848CD2493117D3DCFC2BEDE8F85592D8265AC04B95282A06EC534E056ED8CBE73DBC07522E1E03E160227CA1AB5CB3F08D7BAA56D03F9B7C12DDC71B69EDE3F6181FE721A75DC0931C11F75D08754BB461F4A2C6CD584AB8419B7BFCB7EF2E39D8A4C1292AE9528FEF05C1F5D6C7F57AD50EF626B32EB916501E6FBB5F9A854095D28F8F6CCDC3C8B0D56D6BEABCF8578FA38FD947445C8A486A8AA17CC5012C64B21709EEDDB0C4D5955FCCC688A9838DEDBB005B7D73FB63480B296F23282D32C01601758632EF62045E9DB865BCBBD026F5E560A8B3A7784EF75B37F03D2A588B53B76DE01553F78477731FC4FA2759CA49D03004A722825118A931E9E0B360B2AD76293F52CB80A0311790CEB79EB2ADEB151052A4B8C220140BDB45699C12824D1416EBD2A1A18A16EA70035E69D2902873423AF69E7A7385F1245BF06D1683CE862441914D77DA427C210311EF8A703CC2BFFDC70FF7BBF310ED56EF30EC8D9125755AF03D2809557C89B32CCBBECB40110E0B786567D8531216EAB5CCB8C96DDCF03A3CD7E0E5D6104239D38B8DEA3131716238B2429CC6E02CE3DC8AF757D852AF7CE141E70A0BE92AE640ACC586FE960A440C4089A515A6979345D087C9A31B7F6594782EB57FACF3ABC51FE40D5CD0328CD90A4C840C058313B97E3C330BE1273C27F4F96BCFC066A3476F7D89B5B1609718A1CB91C3580CD215DD9EAA4A95564F42D6D6909C52759B030BFE18EB47A7B9FD72E1AC05C946C372B01CFA06682B48358F48E0D76F9DA3CDF60BDD53B9A09A641E12CD593B6593A62702A1FC7925447B1D7AADA5C8EA884E1D2A9510BC2337728EF44D66411E112B71B2C203C1F7746F918CF4F29033293BE45AD2B4A7518C3055778FBFBEF015E57777BE7A8F6AD535C0985E174AB4BD96CB78F322C2EADDBAB2CAA52C8989C1F3F03F230EEC98B52AC6A0A2DE8C7EB09D0E1B81834B686DD3D9AC1920EF6D817F429B3C314240487B0C527D4FE754A3E0D42D8167AF4B05283437A76D164731B51894F4C3879CE88645F389DCCF109BAE5ECE09193EA6C35DE193F6C68BE0827E38F4FE434A06E761B8B669B22896B9BF891F2F0A339FA0938CC231C37A223D44FC2E44EA78398F452D32BE8314802971ADCACFA737B2B90CF1B8FD3387D4D774C7BCA754BBE8A06C6425B24A0F08152FCBBD0044063BD419F6286B26CC3104416CD3D34FB06A7494D1FEC445589E56E2FD976E96912F72D377E4BBBFC482803694045EC116F4D5CE28AE3D453100F2F2ECB8057F47D41DA549FEDD18C27D79499CCC62A503F4B91E44EE4471D13B89A3630A4B622151EA3AFE335F19ED80FFF32267A32A2FEF8B49E60C9437B7405A35412292B74D3C38C825DA7D27EFC433167AD46AF0E341E8309CE6A95881DE1C8A67A9373E712E95B1EF948AFE624E66588060CA6A4197335E6BA537520DB6869B6BB114E718519BB72FF3F913074EF5FC9CF8C115104E514B22E37A871C48AED07FF93656FC99C3F1F1BEAF5EE12CD9D86A8FC6EAB7CAE5CDF5BE07699B0E801B9B83947C6D78254DA8E77B82330585EA02B42F87329A76CD09703DD0A24E01B1B63ED00926B4F4E9DF2277256A06EEFB77BB04DE09DD8B19237D40F141304BA7DE9F9EBACEBA0A86B0A73310E138E02F0FA284AD4F47B2F7A4F18F0A166E24025201F5449F1BCBEAB76A18832F27CC5650F9B3AF19C9FBB8EDE9C5561E43FA39503155C865BB9FA2D97FB64E8675CB8540E10480A85AD854AB01C94909C07A4A8DC2122ACFEE00450E5455B7BE692DB87A94CE0F367B3E6E40687E50D427116A9DE98B1FEB0AD0042FED0482CC695EE6ABAF5EBA5FB10DC46820643F4C40226197096714135716F74A10888B2CABBC27EF3D4C4A51E18EFF63771B43C5833B3C7577340D9E729CF730702F2AFF7BA8C0C3812028AA36A112686DAFCDE36D5132D4EE31203623224127DF3E69372C45D7B9E0370A3EFCB9577BE0952AF2E4C2856C0C156858A12AD1E6C54E51E4
+priv: 370D66BF2921162F6025F1784F8CA45A58E6E72EFB8006078785BC023D8CDAACB6D6FB5A7F5B3C55D1B7B4D99FF4A4E464226FEDA9E8C986B4E5F41A37EDB84F87FBD62731259FE7266BF78C8C1622425EF797EFA30EC80432808B12AC45919A2C30DFA9968D2FA70B94C03CE2FE4CB15E52A9B0AFEC74FAA276A5A6C3913558165301232343767500140645258743061342542321447425681352486528374628548377702443573345023511515432272262636387653371116077564331128261673582164376865470573778011771888324265183248748526461364218768355482805103865333082167526282242560783314370341456383857383578161652306885528655175662755151047138555553146534343846644604080124474864542472815033627744112223432243010282717120330873340070542331872402377068660004410221333432814123760781816702355556354318770785856176381340622240247180674627437023487887142122356311528327715685414266201482028121764321760138877428245535571814667284614438305271345087160060677013335670831368663514625548365687250184502508737813417187476721462666327610566282504268562450465824881154630675748446771056374112326181781302812218455007821574286647628015822857841575474420251404400700360143301022535255431143253062813825455084682005502132778411085234725034175400186665763287222312538538408377111638782350433570758668635031106555035670557521681012082802587051366781137117633440736821514153673831736211187582851663268227614710433747764655121055850228627771006367547345372746630418234207825131867834621675040540865400710271240446255678587535712646677663862756162648235733574803251637433612543243468478708540037560522713432554677321560753633540782667588111844775721082267830084100184201347637783057758451023428802706114581247815517568146814871862414358208702618046381513554368158677108340188165884412034464317538338522232138722036733523471141710411066612126271743047838718830351623801480688837684510742872845350422860251052626017351858365885606700612771843631480036820157031348205867520520487765402767737510616772508510833486814641587451664151854305857511507587221816184780048357254801883803628823755313454274573606336453016746307562240318134330413451401315522363547183446584200387332666582654003115726104061523538637014810542557514371810386337213708847727654658851037453520630457682353101720774353267248527376013051436822206685057775611555457025261832548641805611352714453114181682076074007865877368448848734003148417023366531156644485347310062806883886101206088240403774741141888061787233830058632806617875630436082502522148484676107601474733117287574076826454801581084362107263126264670065123516671432478772264052013128365223266326033557830542056876118774244531751804203463628628086531048064586012217077568726234013258648566632205661202682265777756507302764142182572022616275154047553442287404117336235135884581014567433756542883011752430774456756024433362318460726861231472815238026480165521125855780525541506454870715826252784875538606765743657652331856072572662706465271157248031452273677063333062566472476428010820161672272014834502781064534320058730853758777214125800834724680368831480488687653825566260382261818011441503256800555554122412786818455524643670578000882636824433184045576563440255AFA30ABB273C678163F2E011A3AC11D88762AE6242B03E2CFBD09C41F274AFED4E7B529A15CD5D36CECB76A7296FD7EBD5B56C185AEC70357C401FEAE5F89AF063AC7333ECF31BE378348FE5A5022A54F3A202BC48676BB6EA1B284E85D76EA61CF1C09A97584756145D383D3495A2EF5718D2A4DEFC2C8F46AF896B41D399BD324987CFEB50CEFE71170D668EBD607969325C3C342411B647BE4CD2D77653EE3F5F9C0685BE270ED0299EF45E119CE37FAF027EA64B0D54603C59566CA9708087A67B2D43CD438848C4A3A0485FE9F9DB87522F3E552A2C91A18BFE6685D335D48FC9A633301C126D4098310B4B24E1B142377FDFF5B9E55404FE682E8743A36BDE3AE2DF8698E8BA14EA9CB895BE64D9AA061E2ADF95692AE3C28E90A30F65662A33DDDBA2598CF925C5EB9A76D7388BB43108FAA4208565D77EC00ACDF271FF2A3D017CEC9DC5893A655EB6E438714AA9B05AEE119FBF4E18147C2D21357BB68686165ED35550862CDA47A9B374B7F7AA5913A4B502DD3113A85B5A125CED5E88F384A4862A9BFCC42B74F52DD34871C27C03C90F288A43BE6AB6EDB01CAA1E99B311330950E28893D355978FDE12BCC2261CCA37078D4C74ABB70E46F82D5062BCCC4DA6176183B4DCCEBB601D2C8BE0953754652CCE06E599DDC35C3C717BA398882922333D52F70D9021C57EFFAAFC163474707749105460B9061320CF20E7E53686B306C2963FB84DEA297D2B4C4192F1497F369D52460705F25A1C9D1CF428A59020261B100A444FD057F2CA21A5401B178F3795C6D95260673EEC3216A93C128E7B50A6E7C70D2FDAB027D4E192FE36BC45D738CF0A08BA7922FABB19EC4A755C8B22B57C66215C6CCAE9421E93719EDF47929E4999538241D144C68947B5D9CE9D382F797D0C993760F0E42DA8051E8C1709DCD8BCA4534EBAD89C67187E704E22636893E910D10C125A873224BFA48ABA7D753DB4677F2AB120BFA18F8F0493A396128F6426D2A4265FF5B14D0A287834CF4581F6B978C66F306688BA4FCF67FCBA53FF05A6E98F7E288DDCA4A1DFC43A1492F3587D450099693ECD43BAA35DD7AA59513E515C1EAD179C6004D9FBAF3787EED000374BDFF6B72789ED74191B821B595DFAA5D359DA953E26E9B572A040E4CE2172C4B73AD0FD3CC21F2B099B7DC203472BFD8DFD40C8AD841D81A1AE0A7677A666CA8BE53681152E682A18EB6C804F4605630A1429A58C0293B880F455C4342EED532E240D27861D084C14D32469CBC8C62F997C24C8E43D675673C8713CE03F460DE306DD194AF165E021F049541793C97343B1716CA0BF9B5AE4D330985B3EAA44C60F706326208C8BFC2889351656DE62F647AD6B40D6ADDEB7345BFBDCCC14099F34A77D09DBDFD65E2D9CB09F24EF14CAB57AFFA9C5FE48C483F63212821CD2C8C9FA1046594646881D40A66656AD9E0534E3EBDAEBE1DC3FE5A6F96BF5FADA52A7F730411635B3F696448A96EE1C5ED717D13978D6EE381065AA9D3C8A2E3508BA76001427ADEB8E9C706E030AE2C41E64AAB319C767546AFC2DDB7E1E5AC0F51EF6D235C6FCF2401F9DE246C80261E2469F26B8F77973F22460398DACA28FB963AD5FC4715999DA55FB88864E72BEE8415B441521930A00C08577B609CC1240723E565B06541522075446BDFDFA6E21A45CCA5297032F0DB06024B59F347BA50F2787112131ACC9A67F41E81A8F4562BBBDE74381F3142F43759600BA69887F5E80E0488BB1DE61E1169088DDBB188D2464722469C9D9339019FDF3D1421390A156B33F73E23CF9C2E1E8139CDC12172433D7E5B62AB55A88E34BE956CC62AC6E469C4DADDC4A3BEFA5B3D7EF2B061C541A6C8ECCF2137CFD0EF24D0052646492014BF6A604BD3B8E3491497EBC008C68033A48EB54673DD28ABF05137C408EC9051853BCDC392F6AEC82F8EC5CF285B7F8EB7EDA1DD96EDF0B264880232EF5F659EABB78ED48DE3BF7FB439D3B1BC92DCDC1F53EDE8957C8FB244483FEF72CA1F18F458CC5F1B8A15DA992AE5E69C364B59D69E2BDF82B25DD56AF4E34546DD732882E83530952AA7ADD397BB69FB4A5091DE23E60EE3F2FABD5D81370AD1A16DCE0D4660A5488925BBDE4E7F3C989026D8788659EAA0CEAAA8EC16261F255DF7298906D9418B92DBCB4D1471A4BC7C6842321794E3CCF1DD5EB2E3D13A47E5489223BC1A9630AE2B881A160650CBC38E7198494A58FF65F2099B81B44251DEB1D4DA99EC3658366FDCF918919741A4C2A0A91844F4B97F3C135392A9E0D41AE6C189D0D93D4E0F6826D142D2160B9CFE60B7EEB0AA148BBBAA4DA7669C72990F8BEAFBC6ABA9AB11D3083E2C337D3BA6778BF7009F444C122AEF14F6C8C1D800619D22045C88E80FE1E80C505FEBB6670A79802E85E96CBC73E15982DA42BF530FA5500DD321D8BF5EEA7E02B578A16C099ECFB47ACDCBA485436FF5D13009F51E53BE19F457187CE214C7E4D1C4BA0AC68CB54D3471F5B1CA714B5ED52BAA5EF9FE75E9758D1C92BE75B821692BEB24B8025D2BCC2D54F46CE8F0EF4BD81D35BBEE670592184F63C6D87E458F442718C7D5E85BE6F0C1EB0D9EA0238A33040D4D8CB0CB0DEA36931D1D932840893743AA426DF8B9222E80338C15883DF42DE0AA6B837A9BB7ED65F570ECD05DDE4294A4AD23D39588B218ACF34419F3FA581E22B4879093E4B35DD2ED116690A96AF422F10C511C49393FA25B61FAD39A14AA33564EACC82C8F65A5D0227657118527D66F942CBECE1C776E252644B8A97E5A564038E3670C31F3BFE93366BCEB27648A904152FC907E6BE8B6A91103CD55C8000BEBB60545276D595CC738B4A2B1F9E30693FE9D6796DCEE7709FD2458A38856E579347C560F8DE440F2888F38FEE3C905BE51303807F2957932F96A3ADE5CA77E5616A44B510B9686500CD8E97950AFA67680E236A0B5258A13DBF0E096ECD086C74FB5476E2EC7BA929DEFE11DC8F4BFA2DBF21158EF72ABCF0675B29709AB9FCBD2755633BD274AA3D5426EEF9B1F712308E7CAD98CCF4704F1D49CF5E189FFE80B4E17F950A1A4D14FB6CB6B0C0D910BD527F35498A1379C9D034A15AE852BD20395D4302358B3E09ED64724432ACE05DF83C3573D71BC5C168C4CE160ED2B7A79684AE20662651F988AADAE591159A1400FF9B91E13279764CE8C14F293A0346FBD8EC833BB9D6A4DA4260DC221401A4AF80CD8B71420551BA188AD8DE6D9723F49433A7AFB855747530246A4D1128B28A85A6F16B7584D4AED3809F9A2BC0064B5237823FCD1EDDC92C5F24A168AD3CECDA772D8A9740FFA20FF91612B1E13F905B2A81EC4A2C69D088DF89F2F20E59523667109F3664056BDA4A5D70718302E509DA989106B1AD7370C4A9527AA79D2BF8226ED487FB44A5B872DE95581E491B241667C01C4AF5B639BA1B496A2191A23DE453C15F9EEE2EBFC4FCC3D6098E31C9C33BF8908D4A21CBD14302E0F0AEA458DF776D75E929487A623A2FEC1
+
+seed: 03D86B249CF84472E3B78B12110E2C09C7428FAB65D362760D0800914696D411
+pub: 8848322A566CA6F4AEB022CC41ACE242F84AFD48EC429FF2A107FDC381DBB63AD301F719FE8E5784BBC4F7952B43182748481EF5F9AC848D277C819E86827DE234CE3D1D90CBCBEF2725971CF3A559CA903896566ED66E4B452A1080B7E825179882563CD73AAB0FE07452DCCAFC27FBDE1A94D750E27C2A67F1B47397C50BF0B53E1C2CDC2DC13B333E9BE0399F271287E4C9BA16FA122C418B7AC8DBD5769CE792A66475ACB94CC55D70BD7CD91A62FAC1E59139EE46072A7F76766AE4A1AC3C52A0C689ECC001849F5F6CE436B29FB5552FA5F3BDBD662A85EF86228EFF2EE4C9B0CC0FE78F8DA5A70231D6594430A70C878DF82AF33F1EC8C979FCC8777E00E77C457300461CB93E9D33ACA87102F0B217D36556D9BA2C2A23A736628357831128B5BA6B649109972B42B15C563B51CADEDE4CF3D9FDE08B456F7A9F2EF28F3A7F18D5F3CF4BBB6BDCCC98F801391D78FF0511A09DC07CCA1A81E63B08C0EB738E1F942387946D3B3BC7A0F658AE2FF83310988BFD4ADEE4129C68DD665D12211211C2D9582F80AC92CE3F943B61C6C45B935D38B27D3C1C2ED6DDA42FE43D5DF6E5F6BBBDA654C35DC259114D288C9359FD41AE8C2233AF33D991BD283310BFC261CA0C45288DACF1319A70E93A221ECA835A6CB1FEA3EF0CD1837C0C20C51C3C8A6E81A2FA638355EE80B61354F50A061EF5DC9E3F3D41B37BB08CD9BDBFE42A0BB909BC24EDC022CA57FDFA2AC70ABBFA851E2A2FC73E72E06DBD0A73CCAA91F399C72879DFB993F17408C9D8E5B60A6E74C61DDE19893512E63DB8CB69AF370A8D0A91EB39334900EBAA892BC6DAE48D97073553B4A479475EC1AFA797345C6743BD395D95A16B2E8D494BFB306B83D67222B09CA917334406EE4A021D318F364405D74AC23859899B6C758762369A63EA6EC3C9236FC91578C6601ED2ED93F0873026E792C010E187C54FA1CFC58BF88939D295539566DC50600B4182D5013C262889AA964FD15ECC00DCFDF57B2F7513A623A405E31811481937FA6D4DEADD7402CF84D050E4FEA37F5B86DFAE2370B1BFC8B9E6DFAB3859A6AD8712558E782E5D5C41206A007D19D20071E925EE25E8F10A9F04B09F03A4E1AA017A7779CB13AC5D67AD0E45F32C216F60897DE2B77B2741920EA73DA07ADA1CB1E3AB5C7FF0841C8B4D3B369DBCD7E5E705DB112D0BBAA7549ABA02AD762460BF2A80D39918B99B5A0D8CF7BEC174C94490C3FA100C19595786AB729C05E0E02538983A145E4DE6CC10936CDF2ADF465401A15492A9C0834D5A61F41099BDD7E92E27CAE2377D44F61E52C5FCC46F58981A1FEBA332B1F19118362EF2D12D12CE80BF017A1AE2753C20A9AE0E8BF4ECC5568D741BC64C3F783CD1397400DDB3DA525A3338F1A725EA5759A4A2B0B4D3B0895EE07D534154FA16D77A3AA3B205A8CF06274957C4190D47FB9108EBDE24ED0CD544086C3ECABCEC0DEBFBC368C0AB67D065ECEE9CD671784DCB4DD769A944E44D9B951AB3F4A890C215C1B9C9B962687A576A0BB15357CB5F250EDBAF7AD5EDC3FCDA793425AD3516AAB5AD9A01F5EB036C1B6DF02EF51516BBA767E1071178CE25D8591BCB5276D59233F91EDEF0E217F39AEEB605F6422EA5D0F47CA2034C4AD449C87DB3C42A5F2DEE9F111455DDD988A7EB4C285711AF467CF8BE4832DEEC585F2CDF7F68DCB3CD25339451283E618A6A3FD8095DB07B8F5B5DF79E8055CC8EC3C2B55E0B23E18CAA12A991086C7C6B87A0713B4268A72A9C3A2DB6B07514C6B7EB0449F20B096F88A754638E55E9ABAD72343C92DCA03FD2C4DF16BB2CBB1963C8B9F48704CAEAA22359468BA67D58FF29E38D783999218888650D6B414A41417D239E6FDFF8E382F107BF4FEB81744E074A51531C38B6DACEE427547E17BFD2C2E4F4596071CAAB4ECB31CE7769F5EDBA651F6CC4380A8A1711E3BB12A3D8A061A11F669246713D29442F0AD39629722ABC838CCB51BF80E9C440C2E2EC88D93076253F56C61816FB725739B4E44427FA7ECBB415B6E5675B6AAF736D592C28308CE432D117F388536C83F90CA8FB66F1DD543AFD147289DA0C8DBA45FBEC3499DB3EE000B26B49B0FEEE4044F231D5AA9C71405FBD754BB43659E3B59980FFAA3E0D78B8E067CDA206D7809D76650E4672EF4DB8C74E6244E82EFA9AC02502E3734FC188F434D3ACD65CB7F9B988B1D69B1FFFB69D88EF2EB1F2B70A2D165B0EC78CAE92447EE5376B0AC4363B98689076123F2DE26DE1928ED2C4182C3180056694CD6C8949A85FF3B1E24EF12614151EFC76D8652F04017ACE8E91D57D059D826CFFB93F3EE6A0405D9A4CDA1BAC97D906A14537F3F4E62DF70739B94442884C0C0694B438083B5009646BFD58B73FDEA8E9C97B18ACBC3693C07CB6C750353F8E8B704B2D01346619ADAC4A9B05FA4A478C7B8F2F6FCDCD6F9766E059E9545BC566E2ACF6961B29BA91BE7C425B1EFCCFD2F8ABB9E3B9FEFBA2A4371F8F9BB20448E9F2BDC6B5B0DD4CBBF04B30A6F819FA271635FA5CCB6F5FC1C3A70E40E31E2FA23A640AAC6B4C56BC07B948710E66284E483A2AC418313126D8E79CE9D31A2B657BC5E5D7260019E101F04CCD200B29DFEC7CF888CCE69C11E70115E36E62D94BFEBF99C2B37427AE66E576A9A7D66CE0BACDAB0836343FFE0C5AD719E503A07952FAA8A08BA3380AAD12C1B16918719B8035109B932C17129B881015F976CB27854279888BB5A7
+priv: 8848322A566CA6F4AEB022CC41ACE242F84AFD48EC429FF2A107FDC381DBB63A8B9205612461E15A894899F582B63CE137E1A2F6449844C6E1AB07FFA975AF9257EEF1899B521DC105390DBE918F8858644D8B4BE502F657606AB402E005A1E646FAB4CCE2A201FACA5D3F8073585D77E8DAEEBBF03327BE684DA62F446FB8BF11333781374634823864042432083342054315306250442250826183726662656836707207736660161824455431866318670240311553240312347115152581385651705245784026155414134588730150508327407213452331305655400268516817024258565182057835868833071380163376245221257278005855363453284531033783707576026861505718742866514771740874438446244726810142022470677257603785402032470565871511738035371647503025642426405205382454702086852403683351111368612567430634780474174484634822170721682005744765345483340267364815826771864626134365402244150866005531353283300630053128674405643208648637486012828554178631542254248251856301082170407214768471150867840383624825684364366438030362238282104043061255215621210686101367563532532562306760522550345502415700162084747110886865313326700027831108836087336210727177214467302222658180777371060148146602645888401352857182336671315855802221313438166008560261203061705863553051286285235608241467031187205708420581371001823637854571517586144832155022232600160485088873722360483602837746658646860177715055875558150641212362263864175584814328466146518265263274857302328063567642227558860841183338043285138556553222668166416277534867861727330746664576480024537803586435081208274002737517430415402722305805887888006778232512782523462685012826525455106007263311385032752711256051815357843176702263215670485563168666680358667680544184345338385515177482431554648487165220470888673712742761144130066376423527701312468340042581563652578411642814866606020050483618642353848611076208376042661087664224038705704184504657206570044150271443252440031002705772661801304248550017226385876682044215363807531016374814725644264133280774048845453460315230256666151016313714182805604006003275203431342570007274782878487383272346602306120123182336428852143161760614620647282877803338426417217267534810317714120637715587447884238722162264175700647268123018833033454700328881216065721525378787614880383841413262040530202264523768288244748401630013064582441506825281343376027562685201588256074212735338587526201851804705483838426483651360202665338765886456254245744670566111870525780254234553032810841267361136718675661103883076155035127073645528165635100567720655217755421301357108034726505744587147310040141010805646522087147007255714057158741217277422625282364731745870783664616160434555775443743502840544863386473378018153247320635606807438754156737641371466713704031817403002217663388070881274501471075834867805472376776326800354057684821603313825840027201144475741126230724105836354806407505613633022136647710632508145086447881758420157178754808160145254472146725788070481561266847405464138405113446032102601304210208730306401431145205104734535487474140772264560342348655301266821517162211403658702262776371234537788132058858823145524452147323040308527184140733703820531813674657553835474053654050304073176263545064447138716350737634B643A171F66CDF58DDC280697C53B4E42A4BEAA9754E6BE2BA3A38995D758B1139FD3553664E16C952BAF99035D4E2D089E48D5AD9CC29E4D2B41B6A413D7807F5321F52B06C51480F368B2EDA86074AEB9E30427BE5CF548FE5042AA154DD0DEE531E37AAF546BDBAED6F7BF1226FD5395449897E9935770991B81D23C884DFB0834B1493781662514C3F1D666185ED811847CF1C0042EAA330F42139C94928BCFD81914E52F29BF32E9EF9276B381D6D17FB6E487CF8CAFC1FA8988394161595DF71D66D504B4AA20B17EC08848D59BC328EDDD2CE0B618790CBC344AE2721DA47092A438AB33B41A490475323593968858B61EF2C0E9FEA7D67243AE69EA6561ED8F586C3EF625B0E560A7F908AC491F6F76D68E73DB4718346F5A3DCE4C3BDEC93C1CE41C1A86DE45AFDF43E73B5A3226367DB267C39D75D80F831033C0932E537A8A8B27B1C82190990B9A949AF6A2B9CF6595D35862BE8BFD084C117494B56CB00C671AA902A6A7179577C0B9C4D615F7E1E2058820A12B131BCB96BE297F14407FCC7F99AEA65F1E4F2557F6B946A55754B594C1DE5758D76B541B568FDAC78F3C6ABC68EDFFF0BE8CCD2DF86E536F1ECFEFF0160459EE05F55BE0BF6CCCEF37DF0AA22A2C01A28A0FBAFC4ABC22A07A2B60907C6523E891F18C264EB0A0589762622F664B7B6B65D9ADA3DE8B1D3A417F88B9A821CE7D5D321FA2A64D4B2017CBA63FD177D5A866D537BA28E1D0A22DA42B471A5D4CA50C9CCF42494FA002A35D4B9B3931DB7B4D30D1C6FAF0FDF7F3980A20D1D5861207FE143222415FDB586A410FED5B40DDD57B5208B804261880E25DE41A4880A19F7F6D49589CE530961FE2E28827621F561515133DC1FB9E2BB61DD7183EF2CBE906E292C0C7D61E04A0D61623C897258F4BBD645B30D2DB836C75481AA3313C12660F8DC1ACC7EE159D6799B587C85992BBBD1A7794068D7980BE486426156A19B9096EA4ABF36E4E8B524D474CA60AE27B9DFF771C64F0AB2844372E6DAA50DF760E5A56F6A0BDFDAF7224B48692CFC811ACE083F19CECFBB9A72C309CAB467DF8B79D2F34860C7C056E8C55514A53975D407B4000119EEF0D0C8EB05524EF006886764580F697C849B8B2D2E4E1DB15992EE072BF4B5252AA1542ED4CC9E714C0EE6A447B838D233355228BF4E427790D8A46132C50D3E340018A9A3999CE187777DB336FAED69D7259AF20E104E9D13F4F89AFE3D60E449C8075001365EA6A5B150706B94828106776831D8335078F1D590F6EABFE3A01C351DA0C8AABF324AEC14BFB0729AF86EEB4C646D293C3F5F3520554540451573A93BB05BB3D70771240652751356A52429A866AEC7396BBA9D71AA078221902DC1ABFF960DA9583C58D4806D65D509BE5743C9D42AC7C8F7611226368A49D60F8E24DE73FC614EEF55D705DBFEC254B6579E207322426687E3B1C5C0A05A869CAFDDE8C4F06E799010DB17FDE4815008E9DDBF7DD9A3C63ED11866DCC739C6C97B2EC58B94900657F3D881BB9761D8F64469C68A5791311ECF13AC0D22877D4D2E6629E5C4D4640DDC30CE904C5FACA5356C72FAC8ABFC421E18642A1A7CEA716D9A4A93E115D749E16C79F29CF637A5A6A17577DA4FA5184FE7AF22A88203B77818B24FB77715DC2B44A59FC2B4EBB58289BC308F8C0B8718C8E40A87A6E6B5133CCFD2D846AC98E02EF3B210FD2E6E1CE8306BCCCB4BD9C345F4BE59E931B8A30E3F9F82549C0084F72CB13D6C645FBE61C81319BF98474B386B7799D561E53771AED22AE04FA425D3F61027FD710D897CC4E6894973146A6FB2E485EA3C127EC6794554B4282F399DE9897E1C70F2886D4A3F487220B00E85572A4E291B99691AEF60E10D4DC1515D3259F8E74144087D4C5EC5B0CCA2812C27E3DF2746C1A015644FC5B21008227B29328109922DC95128E9B646ECB9468374594C748DE019C492BB0B6444743ABD20A08EFAF84892B578FCD389DFE25F0F6BC20AA8993759AC87A0920D7A43B34CC43CD7FCA8A2CE25BC8FA3D246869E3D965D98CEF0F3FC39A5A62239D803B7E311BCFCB9D9C6C484516AC3E65038DAA2806D4D0D4073EA623A60F7F68B66C97511C1E15AD5F72ADBAB64F772C4A3F4E161E0BE0386D7EFC60D497F664400DF69924028764A92A26959F3FCAA30923D3F3D219C91F0831A1F6F02B24931D57D5CA427D8E2C02D4E4E6D4EA3EFEC061CFC72941DEDDCF09FEE339E3A208E286D9E0B8E4F9CB900D9F36C013ADC673DB1F69D6CE170197FBE60EE4E28E9DC66BD1423E80B78A10BD0119BD59C1C2D4EEE1CDBF028BD9D0C459CA885D83ED2BA145CF9CA5917F6F276B4DD4C9DD4E1A0D4545D2C66492B75A42DA066BE5D5B40A28F023F49AC263A45FB430DDE7C55CB78882BD689DE65C36AF223925EB14F26CFFB6CD082CF6AEDA6371DE32C5276D3070F89EC7342E94ADA62DFC11BA4A0B05FB6537F36BBB02630643332F121C93089F26DE6EAA4886E4C1BBE25E2D0660A1DB2582A6F586C1EF875A406143194E2783BA9BCBA4BE28E643887D14A13652CB8ECDBE9E7DA4A73D05C926486AC2518DEC9C82409F20679EF33E48AA0A44BA2FA9FA2B26A8922D5EB846C96B32392C46AB9F7930ED7A0B0D121FF874DDDC303DFC57D278760180B9692579BBE0A079B8AD5A41FAFEF9A8DB95BEC8C5BB0512479D2E810096C729AEE88741F85A308ABA9D5D1AEE42564C1EA76D41BA78AC1B05D5C604D3860EF722D0EBD73FF6DC894F54FDB8E4205BCFD05D199544BFE6AC3136DB83FE2794C5376BDFB6EB1C886A03CB2939F31761B0EF1ED877FF28E5C9F2FBCF7D1DC24079B4790825410F3319C76425CB9E8C385DCC2917AB8A9A743B8BCAED7DCA410563565B553A4D89EC927DCA4A4B8C1085EEEC5C53F5D43F99C1737587276012E5DE24C8C012600907737C487C472117BD48F726CA8D4E876AE35DE494E63D0D844C53CEE75AF13111251E338D057D5A88DC3132126F597DEEC69C149220CACB942B07746200CC72758412FAF7A22C0F73389615BD5FB87590C4F42BB451E48A21BBAAAEB12B427748F4FB02382D105FA962B180D1901307B1F03DB38C8A0AD97A8CF615C0A9C18FA3A6C10E1B7E0A83777A9BA648D25B0051BE791A05BD7CCF713942F17EEE24042B0FF47AAAEC674D0C9876BCD3AC11580DB1245691DBD8DFE791AD40A1860F485933C477ADAFC3EDD030624DB77DA7E01E7F81417E394B3629C687A464DEECB42C1ABE5EF245A717FDA612A85663CD9684A58B3124CEBD1CC5CBA3A2A8A48B168FAC6760375B8A62BA4CD7BB4F177CEC05ADFC9CE35908D78DEBE63E3BAF803F2A0079528BB4B2F782128C0AD576092140C94A980045F998D89350278BB6867806228F8B0A8617A6CAAF54ED3C70337963B986C68EEBDE477790BD316E572D823D2032D065891EF8560BACD14F910D3279501F97342A6120EC2FD8A4F130DF18C0880304697662F66877BD07AD2E79ACB4CFE4F039
+
+seed: B9446E8F78C8B7B2ACD335B10F0B8FE1B34007A1D827EB5517710569E060AFC7
+pub: 940F3A043905CD31A66A0B5E776022C026B8CC8C9DF839951EC3038ACEEEF9F203EAEFC937D6D289CDDFBE4D5B104ABAE3BD76989357408C69922BF39217134DF5C806D34574A1AB61ACC99A82F51852F173E0BD61E50552CBF5A8AACF06588470F649ADC715E3C7CBC646E168B4BF0468043679AA7363144CD6F751578BE3EE5F74C96107189ED1759929DC3107C1CA5F14FD14F3CB31503FF08C8E79875FD529AE80A1421C0643DEFAA35D6889FA5B6E018ECAC896447BA6F5095929B4A5CB636B4C9E0875D5B02DE68CE6DD54B24156952E081ADF436F064795C4D099A9C17F5CEFE19B8EE8406F1BF40AEC03A15D243F870E2FA2B0AA54EDFF17D2189D240725354C2A680F3E3F7F937D2190A2076B6437F5DD6983699F2F87CFE04AEEBB22A88132611FE673EAE978F01BBE3959AA3F4E9891EE9CF6D6031436C8CAF9FAAAC52E037BB69BA454C6D1A7F1472D85C66F978A2784C79E792D1B8B0155D85A7FE1F9B049F012690A2362A82F4CD9E913DCB0EBD67D68595B0D17D085AF96BC64F84E069C9CB9572A7864CA1DCAD25AE60F37889D416A8867D4DEBC7D1AF997AD04EEEAB9BEEB027ADED41D0ED3B46FDDA94584C0F787802B7A9192D8AB1547A15BBDA48E7EC65AF00152E4A385F755D6C156B4A5443A145F84268A55437EDE5A732CD7C3B2A6A728EC698E975758A1B65906307991AD8CEDCAF9ECA859DE2A7635EFAE365647B4AED61B28C24BF4662F7FEA3F14B8E373E4F3E4ED51FEDD1D39A2B70460BE3E7D213FC51357C80E292B9649AAF7B464332FAB8595BC1F87BAF2056574AC9C73168E13DB1FBFBF29820EFB08E5CC9465BF31431A96C91364CDEF8A7A53AC440FC40BD990F327DB60E980499B7314CF5A63D95FE20BAF80D001BE16ADE597188CAB8CD217877521E9815F274D8FEDFBF8AE11D36BC42B8F1D2F1C7F4397FF4087B73E00AAF4E9FDA6F9499AA469220B153DAB01512ABCC6F5DAC0C54356ED2ED0A1A260F3F8BA1F67D047CCD333A26C5137BA76DF6A45BDD731366A04BCA2F80F7B011BAEF941E91835EE218AF34357F47A48C6D5B47DCC282BC53B1465D5775FAF773807634A647701BDAF3455E1536FE96CEC471A090D5FA7B737AFB670CB0E2CDB5EFDF5757CB52669AE1907D991A187E87F19DD5F2751CAE3205FDF832B312FB44225B7D9285328011B5E081CD0261E255B4C74A1AA551305CEC1703CFC5CA1E55A3D1E4002410A5935DEA3B3F33EA0B9E17793CE6D171E70D954634DDC50D6B06A499F25AC5959F282E12D8B9C28A00C58371A56A4500B2C507F57BFE85FDE137F82929FB9B813B205F72FEAF23B9457B746E8C70EBA61C80772FA8DCC94AFC0AEB59426043CBFDD6CF69F97DA634D884BEEEAD96F24963E9DCCC71FEAD90938956140AE0C486AD185FED8266C515037A1FDCFA2E211FE52E0E45436215F123D8137DE4A679B19922C9A6C1860BB7430D0950BEEB635C0937EDFC5966D1AEB418C2E52AC41D134B43CB9A4A3305C4C669892F65978006FB56EE2F8A7566F2841BA1FECCBABDC49BB92BA7E06842F6C7B24427923802EABDF84CAF5B3E77DA7F1207F8B0497D17EC1B5E3527AF0539C64277918EAF8FBA7457833CA80AE2A8E001CA9BF08DBDBDC19CDF82F4230B494B07594B8AB32710E794605F93ADB877FCBA8B4BD3A89D907A92F1FA309727754A42EE1DA7EBACFCE46D07181D4B7F7D20028646AB680CF108BFC3A43834BF955483866759C7A34105B4A34F92DF2190BE8E5272D0DAF80E8C5DFE361B66D75A7D8783DB9BDB92DEAB2BC703D13950EC2ACFA686F97AC0E04B1E69E5DF49E54AAFE615A493E96BFBCB008385116FEED54A2B984930886A514521EFECE22F449EBD0F18BFED1970A86E7F4D96EAFD11F135A9BD8320A12AEF389BBA46B0DEFC101C3A90A99F00E6D5CB28298BC35DDB62A1629374353EAA79830BA5B051DBA82FEB251444B3044B432E675792DCC8E464BC40958C2BAB862208486647AA879B8AD7A71F48D63C3BD0B38BAD9EDFFFD1A28FC3221F67B26A2A36A40BDEB3D01E0F4AD90B26C5CC9AD0D80E24D5D354D5AACAFAE1000AD21E4F60D994891621B19214F92657006E01EB4B28B94F804A7BAD9A120226CC03CD634731CCD5D7610218FF40735F7964C6E2E4C119A590786E693820DD75F6BDD58CD6A1B8857645C3C23B52C96694462832ECBFD27FFEEEC6284C4C27B1FD95B7252857BFAAF2E5C34F51A4055DA5C9A2C8E941FDEAFABF87074713DDFD9443AAB31270CEE2801588E7B89F3329F3B9E9F398738FB0EB0F50E337BE42000B5876E84F623C258C4BAD7D1E536528E8BEF4AC6F6869AE9738AD76BCF8FDDDBEE023A5A836020DE542CD56877DC97CD33586A637FC6C1406ED18333A32995E14D79DEFF1E258B7FBE76461680C9F5D7CD79165944EA50C29087F46AC6392C1CB8C3FF9DA336D4787E81C3662C384A603EC6BDE0089A5D48136D08DFAC460ACAA0BFB0770D85ED2F859CF3D2F1E4C82D5C5E8D6F9BD5F1538E21FA15ED28407AECD7E78633734118CC4C5EEEC2E2D01FE75E1B7D9BD0D149B13B57FF5246655ED2259544BEC5D06639BF6180BB8DAADCB49ECF1C0732D530D0817337C4FDEEC4DBB99F0DF41ACCFA48ECA5C5B8E48CEC321C8A1187B3E2018211CAFA625209296D77F6EF6F14DA8388FEB69C11A912619F514DD8BCD5CF0AC64E7FF3C97FDF06B6620D18A0F95FFFF5DA533BFB61DED91BE2DF2B
+priv: 940F3A043905CD31A66A0B5E776022C026B8CC8C9DF839951EC3038ACEEEF9F24A60ECA34FC68FC31F37093DD96AA4B9F3D5830C6F16E5218B03461992816F1E6C46ED2183EC938F9BACE6D938995AB55B79D7718E0A65ED1CE086775CC7EC0B9D8ED16CA18D454DFD93287074F1753CF1A106D43832069924E934B69A056D6D176426004013076575326430863137681154388472321482327058660264144318587126616777245665846085207077377620134715340864342265500652186150467601565650873175644064416834227733720173774587668873453654245237887584735816803431317252007518455862453438544280565558788488641766433715102273116838853016286781356764553350815576130623142120288320447330858634146116010314662770062074375774867186530144058337264066324211032656066333521814241564325222500443323140011323440703778825861335111403817102184704327185386633608142215442067221665320752283741503126550045540138523388552553756710758782221066048054785368634370510608715285855830261461583231884206487168348502251624181358250452363431358088283280220684850274887682136732878487628835676427436605335002250861670280661746364663333746081501851137351028871688754020075563164387882072231828620163852404354634175131783368268806428070410450722647813676878073455762434565702154475408122163541077486410856021580604143745384424577785383320062585216722084220844048307024134432474888345716725321201005120225816884018256740445853733442120313688418144003171551700522688612013631552624366072347843226703122460417203012430812021833811420720661868774436374256462732481621436813002757624755522350808162680011825038722214273025248005052317717234810061288158327831563165021287226153061841412807135642600053623232871172234266585054154037728672161210616458710643372418828532614851034330455673523587742236477452251870078026584337870552270745526756623860278447626062284834315340427146171232766872568061730756050724247027148476041120506552842756071205358731326167423273744026237525138835086634357501537604145556133481414804060470432652463216123837200443812665470481367442016456162841127017802443686606775850025538847122687372785518286573566563606242666874533554403325385363656115174748320261462840552772623674410481265030724763256241631486648346756261368748180167401048541280737780881841151540185080052416176233736633170701131856087368601514425225057047273141367358256783768616620301431740016335013544305727222457250283187257250743134642552508353067725664027065305156731547334833675272822335860257083672157731427677103643242465216121111244014577786563871520155270585467046042052457113044834347701052060663740758787647888206363867766446811488063441365214110100556377588423480631304107844013871142521788152386654530207028734623080264311677371668465072078164640706288825415386285222822305247408773601071322560410302142821481811133677651772473201332288815205035613301832085104746827523346476715450002575314316042733172642714440446820038280042757635636678707806871714311068015364432431546245667366443671858840683530203154356038363103684425222575835848370481228786854711047404557132636566284507601070068815183715138065502835833765443038333301854266005471082640210720634670243202468375243858240881712734844607240223EE143A505C81AE49370E4B4215ECC3A31B3D08AB2504AAAD76952654536312F6B2298A20A48791A9236B32BB68004CE49F169A4A91C189FA677AD10A25604A4BCAA38BAA0E572421A79CB1F82E3543A285C5BC6BF25EAB82287027C386D543242119C74576C1126E284DCF1E25717306223CD0AA9F6AD025842709572D1A1A2D656AE4388B6F3F491A0EA231798A70A3A0FE3A7F0C97E74251068D009CD0088B8B9026EC8FB19F181F0838BC4FB5C7196127D97D91108D5C7AE2893C85C32023175DC204D0C000261B382FA078DBB3F0745902A445FD5A32A7CD12AD7AB014F5DF7B9D504FDA8EB8A00DFE5DD832348FDF7A6298AF21A8D9730DDE60964EC8FA10B3140D409278C238A78DEBEAC947E740547530AF8A98C24E6A2474F1BEE79E762D710CE68ADF282FC8110FC099041B5A0CFC307176FB9FA214C3D42A7F2BBBBB27FEDE0EB37C71D84811DC34C83ACE1A41D078B936205CF5B726230109A099B75ABF9152824E04C352A9085BED558C7C894D886DAFB46C3BBCFC2A74AB8B4407E514767D90692F94862B2F7100FE76CB36F52C3BB2C7920A76F642799C213B80A6561A6980D611D2887A0531CBB412DEA4BE23D41F515BB8AE38C77D93BD603F9AE2E55B5F0DC6F4B2E217C98F6F2F03F9952F43BE49E6A7EF8129A265EB342AF271D2B3CEABC86729E962200FAAE9EAA62D04C64ED91E0B3D8F8300A7C24719A9F64AA35804D2B5FAF7F3F617963BB8199B2B842FF5317D43F32B04052CE5F3B7DF5DE8E2FCCD0B183FA767A3779307D8DC95ACD2E36F4A99945E12C0098B2FFBAAB97B08AAAF9B30D2531906506EB5194564C74468385A83D0D4291EFBDBCEE7A3E781DBB81C3F876957DC169C19E376D76F7E4AA0663FB3E332410ACECCB0457E076F25CBB2436A89D5BF25C376392E719B2B49AD2EF20FE5F51595217239E0E3C7D40BA0EA3F3BDAAFE29E283B9A2B93BBEF4977E2574082E8BEA041DE33244DC52D71376FD051BB790DD94899C80466C2216879166FA46766B7D23899916FB8100ABF1A1ADEF0FDBE68DE44774E13E1104432503C0CCF39BE4444E3564A4740A101DD654F76DDEB32C510077186709684EF6EA61B325B8FAB6E039C95D6C19BF09CBCF7F6014E1FE85920AAF974C164D8079E3CA16707BCD5DA704F0A66A48EAB2853225A795DEB51D45632AB38A07F093308545A7EE29FC0309B48A177DCADE869484814652B70073AD0CBDA32D2965E26E2BD2AE66FBD91FC11E9B5D71969953981D020AB89EF3CFC3D902CE078ABF948260035F9583C34F1650E647992A7FC4B3814EBC58723349901171EFC1629C0C2DDD338891C48A19810779C2941ACBEF58361B3A84DFA71D80373DA5358990B65922E17ED7066E4153CB637FB56605684A94284A907C92A2D717243B731FA6F3895E8BE09B7EA23A023C6692E8F2DB4872213EBA4B402D764D2DCA50A3F2AD278F33493E9AB83777F971476A1CBE9F7A448E3E9D9E47D55D8A7F04B1A380ACE616DDEF3625EFDBA9A625B19715D38EAA295185B7199D81700A9BA454A07C912187BC269C7BD8D499E14557BF206A33381996038E27A28D19EA9672574B017799A27582421CAB69B6F187CDE5AF2526266EC10EBAC90E4554143ABA9FA448ABB8CBD380903EB2249E124F2FBD230E6A91342972B3C01F81D7993A5A1BD25C4E0F564CD4597A18E828F536CCEDBF66DC85F343949B1DC2A50D58FFEB67949E596AF43E1E00E13C3BFA84FEC72E364E88509B8F95E0E9C0341F3A3DA99C947BE21DA56DE9ACF630DDBB190CCA9312142640556962599A52FFAE981E3FB372C0A2B99EF2CB3B86CA9AF186939CF277F32D503A5E6554ECD0259C52B348A7E107DE4ECFAA35D86A62F98AA403F911491C1B393F4CE1333D517A731E106E191C66C7ACFC13EDAC66E9E2C5C3AA261FFFC6CE688BD711BC748376E25286923E55322E6483D96DAB4765AE5D91DFB477EF5A5B61FBF78F248A92D03B18A7FC247615405701C08E5147700F41A35CABE1D1A592582A2BF2067653D7C925146776C0BFC84A4EAD67619C0196A0293B94AB5FC30900C25D341E819F443C2BFC9CF7D4C3960C6C7E6C33F656B3B512752A55FEE1DB2B4FD799DF192FEB8B775E141A0B263A24710AA98FD860C18D490C55D9A44A92E1ED5FB9BCA06562F2D1611E35559C2DFEE0AE1DDB8D724A36CD16CF728B2652C92CD8619B96AE1EF21B2D2C692CF02F9BB43FA0E4C87E001A3D6F1B7177EB43028F88FC024005FB095958BB35DBA11E72D800A971B1FEC05548BDEEFA046947449209964328C1B95607AABA6DCCEBAA3B9A4A175760F65990E36F0299604545311179B3A0FA7A3695053EA99B5164A22E1DA59DA3964D76DBF5D46193055CFE1408BA943B86C0B7CDD2CE95EEFFA95EED74EA018D42D891D7ECBE5C8DAA52C04510253F8CCBEFF351274CDA464F51D4762B68E36C783041063128878D9820AADABB2BEC4FFDEAF61685D9C0FD2CA6626F8E3BA66678BBB3B46ED7FD3A9B4EBF623E37D90BB6FBBA31C9823E8D7379EE6A42C4AF6C15D183666195F509F3A23D14ECC4FAA4A35B55D122D4F0BAD9E0DB8DCA918CB2D13E96B5E2EB2AAEEA1788614BEDEB39691B072A094EE22A6DFEE43BA77A46A9F341C9A95640C26E7596CB6F0D0889F75789FC54E31FEDE42BE11D09F6EC514BB5570568D395751CE5D4764AC64F4709C919967AA7E04FEB19CABF739E1B240CFCB302321E3D012A2231D0DC0D1038F84BED48ED94BC06F65A3F437C9D8FB2961E49B292698618F55D06360C8661DDCB990C68D1F47BE15640BF059B7D7EC8317548E20C83961418C38B4EB278C9D86671AF17D2A2E22A2BE605FCE1E496B5B1DC08A0D4E7B956CA5A28116CF83FCE69190B1559DA0C19A40ABF85D5030E0E979C3B8E174B42D0F2709E28EA9579332E47045733C15A63DD2026C6540654C5B481DF921B2C4FA9729B817A3282AEB9568A6AF7DE57D73ABF0A04347A96263C97B575EDA6E1E17B2CAF8B1374FEF9BE11042813B4D64DBED1DCE9D452CC0E17F67D51022B8AF47D32494188868933BF44B956B9660A9103E2AC233F907CDF2ADCA9CA51318148B325BD29AA508D9A6F121CFD6BF37835F9EF9E3D9523F53BE11687A2F19DA1580BB868038A1CB0119585AD8A2AEDF39C8B3B7130FC5FB02EEE22279EC7ED7192B4FB87FE60CD64700CD4CFFDC4ADC518C216DB78C77D8E78E2A8509636B9790AF99616BFC5CF3394EE1E044F4DA0E22D50495B887C6B2A07102828E8CA08323B3071972286022AB78A794E3CE3A31897A2DD60D26C952F51AF92DFED277FB671CDEDA5667887CDCFCE78103037742274A82DC620B37DF769EB2332D95E3AD6E2B38EDA6E9530FA7803BF52A32A1907A880E18E7B5CF7FA751751D24A59CED3C08CF90305FD55F19C6C902BA7AF6F02464C1F84A67FD85F81183866C544F080425FEC22CB6304296E00F41B69F2ADDB5AE7F286D39EDF19DFB02161BD6D5AF66D2D
+
+seed: 910E96CAE3F7DF10E0686DCAD2D6CF8E0DD9ED69F3661F0799DF91CD6C494986
+pub: EA95D53403E54CAC9521C5635E9F335F75DA4CA76005562E75F666BA598DF28DB7EFFE2546EAB9785D75DA10F4FABF8BC5A3BA57B8510AD8825E296F6D1ACBD0350B05DFB4E58A120B6D001DD51732740BFFE855ADF7B48AE537BB790DEE364A702310323EBE2883609D8219E85AC252EE56FF58C5D6579323EBEF4D3EA265D1E65B446AF2436C3164B0B984DF75B63DAD2D3CECC1F41BB23560ED67842CB76723DFF07717DD3D9516580F94514B1FB3450D88F507F1BF07A3766A6E52C93F972F052BA165BC8D7A06A7C96A0FEF43EBCA6FE4BBB0D236832B70DD54F4BCFD007A09D4E1024817EC0AA397E9A88E4BD740D6588B30B6A994701DD970AAC571E66CD86B3C9B9A524F144D80A96565EA9BF9096721787D5E484A7CFC24FD04D7384455905DF6BC6E3F526481A38648F0EE49335EC0B9C067AA8071E0BD4DF9F23960754CA894342673CEE8A3F5A6C26DBC476C42715E23D222F3F8365F69F2571E777B4AA51126303A1E90AB3F9A445DF08FD853F64ED4A737BDEF71AEE8E54454F8AF5680C0B996F7EB4E3D3F01B95CF449E1301FDD80B4D3D238E7DA61F7BE64E26623EDAFED874581CE54C35C4FC6B302B565A8A1EAB844D086001B74DBCDD14424721BC36828EBF3C3B70A8FA289C11F0B1559988D4993B696E1C6FE6E62C97F4239E305524157540E9F472E979F9640B26FC6F79E69DB22928E76813E46A1B056A938730C1F4C0D5D5C763ED3B78FA56073D2A41C639F4AEEC923FD761844882615AC1EBF3DEC850E33B7D00EBDC62E2BBB0729CC465ACE1C8A50B4B35B4CB6C51CA9016EA38A79B65EBA47A955D41DA2F23460D822BAF79E08658253C019F1E393C0392389E527FA0C446CAA5B93EAF129C5EE2E0FA36D08D763042AF0A9CFB0FCFE6A36DAB0A78EEEE90AD2D5F63F3EEA6357EB073F9F912AF9BE8E04D86F4A34B9D7A351FBDA890AA01EB34DFE519195043B116AF01D47A45E5FFDD73D799CE1B9A5E584DF247B5B4F1128861F43A322AD193D94EE12741817A6324E0E8F747D20B20BD5922B1A1B3BCA25C7F910275DC3A93932CA5B6257E7476EB35DF4DA8B5545A6073D308CA77822A72CD72E2C3E82CF108DCB05F50AB61DFB879BF731AA258877628DF11ECE67758390946519D566AF6BBD45D621E53BFED5D874CF1D22AB489AC8DEB3F8943F9927AEAA68CC4381CC919D25CC10C2F4938496D9C787FE032F956419D8463ED1385A0D1C96D3510CED99AB14E14CA9AAE0FFB645AA8AA0D09C19A4CC4A6F83468148403AA88C2655ACC1C95F93FBC192DEEDD77A7046F97824B1E412FD8E70A71514892FE27B53118E4D3362878DC31EC6343D3595CD0BEE06D9BCCB6E96E8F5DB7CE8A8F31B24F989C4CEA43E55B3D2AB85ADD1907C5543551FDA44AAB69DA22483C2BE0000D3C49D00AB453F30F5E2453F8C02B20A398BCD082B6254FD6B923F1EBE56AF4195A336246EEAE1E92B8AA72FC6E355A0A1FA1A982363BB4C73C6102CA1393267A0A9DDC14CF5AA12F3A070FAA3C1865ADD1080836C2BAEAA598FA3F522133E7213B9BD4CDA65F0B98C377432A28F6FF093B6FB769B4E9777ECCB333A9977BC3C1C2B8D95D2A44CBECD962981948F1667EE8D64DA1989A8266056B632F5F7DA9018F290C98D6B546F98DD220DF299901AF1C0C8A2155230D7D46061BE46795A5982963FF1A6D507E256EDB08DF304E8F9358A32ED22B8BAE3B06154FB5DA7C4C0E448509A0B61CBD6E4E585823890BB1E2B44DDA6A8822C762F6E8BF07529C4F5A7690C24DF96C5586FE5131CE825937A5E5C8D90AD3848919D937EAC19FF862E5E4ED51C7EEEEE626D601CCBBD055F68C03BED53D67EB8B1668E06CF7ACBBBAAFB7855964B6C7BE342E63C9DF5B935338BA29FC651F8E029499B6F8E12971326AB7A0B836ACB9B0C67EC72900AF728C55755596894C8C9E0923799A5B7D0F37372CA168044292A1263CAB005323DB3747CBB1F6C08341320DE056418B32C9BBDD9DCDA8842251ABA76DA423D40DBB390A62F696FD3F1E063BB0ADC562326F2884C0CE745740C1CA4C3824349C175F75BE9C3DDF418894FCA12C0121D428DC9DF635A7DE5D6C1DB6D359A07F02456B01DABCBF49B505243A0E295F3BD03CD70209C2323131D9A300E7C626E8A30013716EE6564E11E349D53404C2001F1B77744839154D52CBF3D1045D71446B4B0E7C4E3ECFF88385C35A0764AAE46296B9EA80197D74DA2BBEB8A430E90AE1C341059663F51B58D756290858B054AD60D0CAD93AEF729824F81B9809D6C0F3E8C15CDB5C79F5361C33CEC09FF86195888F214B7CF69A19E9B3D3A91C09FE6EB43C970A1C6262180B9A0D599629F12A61702F03C0CA5A45F8518DB4481C721155791368CDBF786D1A7CCA77BEFD436F836B5BBD548F079FC87A3509D12179EB3DFF109EB6EEF56D21F70A3982B24C3661DB64310412DEDD44F6AAFC252A2CD4F8DB9BBEF12E0FABA2381C18B5A43C9A16EBDFA9F9C2A4FF5912E46FA2599FD16A318EB62A971A03890C8DA8B9360065D11FD848857568D08E8E5813B159CE3FF0FEA253593625F82B5BA5794C015BE84AABB34409E937C51DD3F6565932561571AECFAE711B61A9AE5CC1D12AEDA3659669A481A433137BD5EC3DB59AAC18004DB0F96E708E06990C35856DC612B24BA27D4D837B3E8196A2536D5E388D8E51C6FB25D54043D0D2DD5FB1F827B451B7846511E5F51B6F48C3EC08FE39A677E2C8E
+priv: EA95D53403E54CAC9521C5635E9F335F75DA4CA76005562E75F666BA598DF28D24492CAB5EE1A838CCB870B738CD2BF15845081EC92FE655EDDC3DAABBD70463345E717BF4E9B77E4E42C41EE081FB7609E529306FAD0D010253818BED6F5C36E80F0CF2E1CDFC3644B0FBAAA332C91B8E9BAC48542587DDCE3B89B85AC95B67205358448251106374330761616370840427403060131555776484032685263315404265627140818478237330461730266886678220206757852370307812313186670777525377243410283855032620382282420030862325482173385126618006425080660754150507021155510527010400031730580268480057432412702246646585006018341365521716483413675564656536487671660142316774020375316380713786272377283742823337111220565020523286660270378010320780454435727328225012270684854752384080330327232568564232334624785300247078327824557671535222210477505366750273350760622046230230260051216004274018134720587804852011513328437632380487348538761062461618530322680868132352785267226346453636340478012526081750131434530007670441442545000101046220634032432113214835787158680732862056026304846838602761436702478386234638586703304407840415284465247473208178635703585423748148856167002814048306441188623612783876688861220036258078151885032812826481381533241417755607323112011074124487501132778203584733520654651330088421647830628846050045765114501255050401362864274111122784215666102828748217571715050331524203557710257341457213042182483316853151265470516218556873288758186361667570271538733143722872641133534773365442068318176733601261602087128454576104402730785325228074080124728136803212012176421321531125876743834555426446750774328825708846140833734063225565260787734461625334052344861774220588771408021810607471156332580632280701173562858681586364176474502351131460358610510860814212667307781071767853607451544703521337335512585050362481526644627232206577243115336803784153432761563147764470542241266534771730877768307535531184023433563146435118336554118553322683875347873514134711335415277733516356657622323524047003022507454625047621173572485725784623060878303721555357201478557707263311371545530238434748271222817073038030533437284816784301801712411264351214303745068324677180701387874004318531672172357360350653266358643677401786781602256310774310423523102138875113656455771583275031265507486382852658323110101755161235083527248117325406547684577540263666157667871418616544150267046727347840767160533104681104207400671472835332830774825088686527066365754634711824660710703543823161528234747317210601368642418361673115730670838723373875628051373556788162537260577837888028732672353482401052021665413247585302187633005427258870173180733401656355241728775560065687277881464582763237044678011865760682717142166374624528785211470160157277740506621763080770285055044428134504455441747414021514780758088166611667254100231637072441607706077511335806828544374880608121171511770560080601164106110827266126106183135415882627445120836107122852801612426738230306530455072677400205525856874676132831248508378511646237882435637476882748587424351284047403241180001573406464365334575336777303464222072838174364367877848211517701774258316522054107175211473552828834313110583621807140335000560AA86F8697754821BB4793B67A97B27699FC1124FD3CC779CCE56FD068D0A004D91A5A8BBC7C8517437AD5FA4114658257B24FD6CF7D1E7D4D0394DBCE171425087C232DEC09410FFE82C67427A4D97845CF0922C29BF38D3E6E31E8758A43839569925EB3D9834C352C2D2124EE24F5CF61207FD6BEDCC70E1D665D12BEBC188F3A1E6AE462464BCBF05587BD0B5E960A9D20DB52C7326DD7BEEC6D2B20BF82B9D551475B32A77AA5540D2C15D44C948A2F0EA266F6EF1F619659B0C4ECFE94D45045941FB3E3D4940A0B7412B2152AFD4796104D0CEFE9B5EEDB94ECF11B0F31956E2EC3AA935BEDBBA75AE3878667DF71006587AE20D9310A2E4D32A9ADF94C7995EBB2D72E1EAA238EEF912458918099AC43D157EF4B4480F8C87EF8F8A14B083F85CF46F795EB40EDF4CEF2661566D605CC62AB1BD197CF13596777429D7E7AB5835D736AB302CCFD90E5A0A56342F27496F7FD30064B1CCFAB8C3A052353339DF7D25C05601B8B7BB86D0B43BB4E1851636FF4471C26478460FD4F90230F3882AD8D5770B366B8A2055ABA7045DF54915850B48C4C191DDEBB20F0178B950F711757599C73B31024344EE04EC84E57B818F3C77C939698E895FE92BCFA7B2A8E6F271C39718C9CD91A278EC554A3746ED04063964FF384DE5D9E53D8D018D99F974F022A8820B1AB4F2155FA7CA8D8D454058AA179FE01CF8808B33EA1CE9FA5F57F59EAD79E60F374A5AC959F35A22A336F505061D75497E374DDF66889B6D72D5AD04E73A7BE7DC43EFCEBD248140B0A57E31152EF1AF3E6EB4A203B6292A867ECCDC211DC0D42B67D7FACC9156D159CDDD0CA254D338AD67093232D10E94B5D6DA4492704D9A35501FE279B2B6836978C0520B643323D9E0FE1830B2EEAD1BA1ACBD76DE53C8F4539EA793415E2059582406601BA40A2981EC3B5CC4EC5328F6F636FEC2751870923788D0F8331313B0566C859E01FFE88335DBD0BA67F5A6F73B41BC9E501272C7D2B6DC0047E3C7796B0E716C1D5E2D9601E84876B9A94E91FA7A48883FD3829786162BBAE86B4F6E0B97EC079BEF8C57FD43444D2602D3A9C5DF317C870C34D8B530C92B905A8B192F0CF1CB31F67CFE717775652D3EB6BFD7F3736CC3B956BAC5EEB82B73A29D6BC8FC64375F4CE18A066DD7E8AD4DE9B051DFCD749232AF775A24597BAFB20CF25BD08EDC60D9A5030BDC28E600EFA01701C9F19EB20755F17FF66A3BBCE48CC727F7D0B51FA1652EE2A9B8CCFCBBCFFF80EA6F6CF977A757A1F079CDD91094E4BDE475DF195DDFAC60D47101E459EA750A9B6668F66B7832B1F96EDA29FFEEFBB4F4B988CAB6E0000377B19820B0A12D0650A60DF4606D92372376134D184E5E7F94688AE41C3E7067F191BA295C1CB0F283BDC5BB02D6B77DBDD22B36D7028AB787EC423F026C5615F4BDF04859EB68BB550797756F148ABB10AABFA479271B202AB399A3D5B6B269C3B04B6E6B8282F38155AABF1B5DB61513DE96993C82F7F4528894EFBD76F99ADDCE4CF7C6BE8F73C341EE5BE2E9F6298BE4E1A00D9751D65A5414B760CA2BA96D26A7B2E77884280647BDD9E6ABA0DDDF1E84AB104C34D0FC10DE4D634C18BA991932DD0BAF307BAD274EAE729CE4E642A070A9C0F5B5343816D3DFD78EAC59A8A36CFD5CCFBE250F5F6294FD58587BECE6C9255C2A419B7614A08097AEA3851324C533003874849CAE7606F190090299C473D3C367E2A11D61363C7BE70A0A9E8553E572B926BA73ABA9E149890E61A07088406EFF8A352189F6D68FABDE060E3F3592B9F729D83272D62A02C933A2D425B71D9EC5839E53AEA96CC7761064DC37DD434B6AA283FACF03A5230F54AB0A6FBF7858E1434EB58D989318FC7270E0C76ACF28EA8B6697408668B1F556DE9A53ABDB587E7F8D7816418EFB92AF93E8EFDE2F0843208B604E483E7BA28565E4ECE92A54501639CC754F0D5BF5BCEA727AD2AD5030FCCBADC4BF27A16057B3F948C45924968D9F69F0FC150944E4D541416CC46AAC433325AD2788A944A607E001CCD824C3A1BDB3F5E0F5FA93A864A7C7B0C2F95B99A5E64944F07C4AE95F9EAB462E90487EA2FD02218BED373536E1E92EB7B9F48F6027941A289E2A63CC9CE55083D93514D5EB734F9CDD5045E4A910B824BC105858E6B4B2A964A5303A9593E26824D5956C18B5E7CD5E926DF580043C54B3862DA98CB9D84A68954E96026EB0B9C9CB21C6F04E783E759E49B7FF5E33CBA7B10DBDB4DBD84ADB01D725625B86B60B8819B23ABFB84F8540A953A53E9002896F00636D96928F5D6462DF2F1E5E3BADDD3E7EE5F9BED9ED8E29499AA327083CF6E3C6759F34F61B3BE3EBF6629646B6D7370667A36BC53056B1C045A5D460AA6603DDE5C0E80B864EA6550D2529F9DE9202A8731D21518E489D90B16F89D1C31734CBD18DE5F1F31872593AB9037F3DD87EF3E91877961D075532305BAB20FF22ECFF44DE46CD7E4CC5E19DD5C101AB28487DDC6EC920DB72A30EF983E8F4D009569F2864B35B113D050032CDFBAB343086BA92D2BF00D7CAC698BB5D436070566604D793E945C98420354077FFF14D5D4B7366AE9FFB7B3F6E8B240A82E85853C73FA6165975A4C11108678E1E30B82B5F6346B283C41964FEA6D525D66B46C2BD259137CC02B4EE78532A1B76409F95498655F6A28C4EB4CB280E6F78019D2D5C70BEBF9BE1943FDA6897EC6B56ECF64622B520AC230BF261F60C2E66CCB7BE18A0B16BA0A08B6F8468F2A0797AFC66BE782A6F6684760CB189A287F74996DC6A2EBB0B17FED11641D89819761D3C0E4E13F165BB6AFC6706FB4C9D27AD6ECA1F8F8FB4C919D88ACED483DFF586203904EFC7741ED28771317645FA2FB2507391A663F6E58ADA8E219C9B379F4DF03DC578CD0AFBE62B65BD18943C81B9B7276F47E81351BCA38770A57894B2F54AFC746155111E928A7A65E7B4620C976BAB3BD48401327300680153C2664D303B5365C0F967D39BD92DFB53583ABD16838110DCCA3FA0BAD45F485F686D1003D62C3F7E86D87E908F3CFD77223AF4D4F6EFC817F14EE85617ADD35C630879FD6EA0E20645316C26FB4B9E66AB6FCAF5CEAA95302E3258EEBA216082A033843D592F9D9B655A5509390C63B02E904DC2EFD9C1A4F9B782BC6AF1F7AE315C0E7E25A5A8DFE3FF2745504BEAE8D41EF908C45F3FA6F2E40262C88278E89B02B3C8415C2C8CAA76F687EF30014C2C9ADEE89E46B06383F4FA33E66FC80B7C505972D8164F6B651A4D037A5FB2ADAE708F4FDCEDD202F9D114F4F78BD2507274E87FA4701BAB73390650D02E254729C33DC1378E9C97BFCDB32D2755046E1FD63CC0504B8117F82E7C1CC796DE16126AA3F50A9AF0373A819B01EB63FF834EDB711DE4E877EF2F1D46AA1B7E0EB0DF171AD0FC1F2CD0B6B029CA782FB259C5F860428478DD9E2270A0B9A05260DB661CFBD0E80E75F06020221115BA18B0D6B455040050B23BB87D9DB5F87877E7ED688
+
+seed: D0632A6EDAFFE0A71E94E62A5135066E6F7ABF8065774A2596B6BA2F7F138BB8
+pub: CA806CF2D4690C7BB3AC7CC12320888B62C8202262BC7F8766EB6D7A3A067A74348698A5CDE30D2256E33639E45307470DFB674E427A6A441012D80ADE3CF8133B307E29842FFBA09E7D04C123ABDB4CD41F27291E5A6ED55827769503EE1112AC884873EA789644C70B424A6056038E2A0D785EE036DA2DA53B724CC1FEF74831897636ACC26947129B21ABDADAE0D105B07FA4C1CA63651D23355419307E8C44EE19373AFD8CB061F1B1E8406627482A1BA2E2DABE2E5A0CABDAC7D2A7025A8BFDDA46D9ACB02AD4C9466FA203059CD5673C2018923A9304890E3A92DFFE7ED3592CB07E0B23181B20927F96F0E85E4FD59EFFBD51FEF48909E36F153DD128C001B59F164EC759C9D8D07B1DF6252F1B8DA19B9E9019FC5B2164A88A4B4C34DA7A8DB6B96E653750BA8039A34D5699ADD2B5DCF3C191F4C10F4F3F772074B4B726E65E783AA34E3B09079CBE2E68F0F52C647EAC333FDEEC274DC4E123E078D47FD52D01961E2BBBE62A1472311BA4AF5481D92659594812A4A1D841CC35A3CEED21F5D69C7F1C4603CD4E1E94B9FDB5FBE2EBF720D5481FC0A095FB987D2F2B0C5E54E9509B87EFE228A21E547A28AD9784477D275A8959AB2013BD8C8702153FD2B1870F02BEB1D1B25B2CA038AEE8E93A6BC6E5154624C6A734736124C3DF027D3259F5F89C51B18F4C3772795B1E31C7C566FF6F2D8BE4BDBF75F6FA4FB5EE4D9243A73F6D7C6DEC8D4E0E5189D50D0E419FDCFA07F03246B00C9D866E87DDFF61BA2B7FF863B7B120520C67BC5EB4690249EF688065D94AEA220EB3E3A11AD5BA7A29D9F262CC28A2E24668834DD679A87C1A0A3F36F905DCD7829A772B1308FFD56D021E58A81B60BF95276EBF04B1C1D6308559FAD1E80F39627D82DA5B0D23CA64BAEDEE87EFDD8C34BBA8CCEC047843C84AF46C435AEC0B23F9471C73A78456734A715ACE1AF64BD69FF7ACB6129B1C78608D5C64BF7CCCA2F9696ED1C64369007541D7D76DCFFCEB8D2E4F911DEFADBDF740A4048B0006EFDE5A73B73D553505B7286211B85F64C7B9CBBA721652B8473B4086C95FA7D0743EC2F9CC5C887A727DC2C7321BDCCDB028644ED73EAB821BE8F951A26A516779FCD5F68EC495C9EF78660683F08A85A610CFDECFC58CF49A79A3B9E3B5FF9E403BE51C274DAFCDD07E2051B44849C2ACEB79CCBF64BD6741B58FC4B6BCFD23B4496918E9BAC4FD4FEA6EEC1ABAC8757C6A972D3909BD94169DB5EDB540225550B600BD347EB3EFA51A5F6171321A6F1AFD6FA0A7AAEC65A612DBFC300AA4A1921CAC1D77EEAC226CA0F8993D1929F4E0F0E85FA38D436C035F49D85D1A802F4DDA9E4DA98BAC92A0FA7D5C2BCB1EB89F3394226766E4AA513928DC910311B086B19611A58F6A9A2B494E67E22BD10DDB62E6DBD775E7269270E2A0270D60191C8B2C8FC511D6CEEEBEC5ABA95375412E14BDE0906F2007EE4A61EF0E535FB22E6DA4FEB9BABDDF775E0394997574AF4750ACC98DB4C7979B90D9DAA0F35EA877D4D868F828340D1E38C767F413E89DE0645E1E2241A79FAB882DBDF87A04B279703435E3528CED89479D163917C1F990DDBA9B625509EE7B8AC53C38060BDA1EE697A6F237C5AD3E3347A7C6F4450A363F171901165C2DA96393FA31A057B1C1964607D923E5E4C658177D5BC0B05A6CC0DE1BDFFF0F1D0DA1F1C8752D3AFEDA44129507ECB0A8FB52114F5ED6F0CD1BB486AF44A3D74C8F88A2AD42A1B72FDBA3D6BBD2943153B55A9C8A4DFFFBE8E0B0794E60C9B64D7D716C58634F7AEC6D33CF50E604048A2FC28E9C03C7A77511D7EF20482FD11F815852906B0B9F4A40D45FBB972CA67149CADB90F9BD3EA69E42291BB1562464BFE78AA39240CB24B0BBB8D76BCC8057A3697A2B5DC71C8E9AAFCE7EA04A0498B365520621B1CD4B38C5BC3B2CEE7FD7599FB79D67269BDC4E5E2ED33F9C90D6EE42C9829845D7E6D6E861EE870119E99095777327297927A552D2D3D8D850D3E4B63C8934FF69ABAF1A69B408DD2C630B3B7AF05C1F0E22DC7E90C4A31F585FB9D9E4DEB4E9607CB49C47E6D8DCEC439AEBD1EDF4CB0075B1164A3F29C33DC9D0D59ED5763AD8B1646D0F655A00B6918A90A417989F9AA44B5CDD08CF1BE46874218E1247A263E64DC1228B540E70CE9F0FA70EDC4B5D02CDC450AF18F6B586FB850848E09682C5B6ADFB680A6262F90856FEAE11843B277EA039786313A1AE260DB0062AFAE786B61D4A4C3B30B8194379BD44436879EDFD61FFACAA894498CC26E2F7D823F0AE7687ECC67930799DC402BF4F95DB72001F508D7DA37EAAAB0C2C553A53E7587ACC342167F62EA39C37B3E61A5D7AB113CC38F8B7525768A67BEC285F0ABE9BA6A9957C77A45602BF82F1059E55AE9B9FB126D24E3003D4B21C9CEE851527A324A6F48FAF80387D09B59CAB3643925EC74FEC4374EC3E63853E741638EE27D829CE5DC11B8120279EA9605061513C6A69796FE9CB8DCFA0EC70EEEDDD70927703FA4C64BC723B94D358371310ABB486F086ABAADA7B78B1C0C55D88EF497EF7B10071D8AE72E2E28078D04ABF04581FC9D4FEE6AAAC4637E6F9F6F65AAB1BEC7526CC1BE743A0EA8481AA9E069A9CCB7DC1575345305FBBE7338C1D82BC10A1B64E69EEF7EAE67C5819A3B49BA603F7477F19B217AFEC4BC32DADD26255E2F917806ADF9E64F769AF70AE5691B26070A6C65732530D93AE6D1CCBDC77AE37C494B51775
+priv: CA806CF2D4690C7BB3AC7CC12320888B62C8202262BC7F8766EB6D7A3A067A7482939DE8E5383E4A4D7CCA79A9B7B5F621A461B2A1894E53315103F03C391E0A38F615C6BA1E541A423565FC34907D84917BEB652AA4C7C89B35EA83F793FB3869705E5DEDC1D7D34ECBB4D95C1D35DD6B40DE0CECA740A4E31A27A3B9B98B004167782002506841243131365280841862554703104113155456536303543617108241084365386764253004844717327286064008824375547612437003687713635685066644742221774873358808665720400037071175028268662180577204401046247407058352323335075052670824212300407483106303227830177854464331616047542826861670237417840476056071515848278403033816884841214314076440461221508580035331828782618221062670850105785181770543082612856215036712840812726467805080064220170772536041034233473660817847175128245640505226614302508264364233558221033502567126054184687247511388085075262104876576227676324033577673623810188261171678788152746506166666437714701318570634332258550030740802413325435742263763045437462580115223212302255580103400865160557838787133716521241880267285308440147661876354467437784576735016345306611633062308811754584122563375147088373865225564243753521041540308730534446822385070861372114166326555121551770304536258008600364651176054363425836546104588565084542687503166017467336054565181617671174833865845685463658560857723333778762132475402167621010761623608348147038670132886240342442203328236027687753446546143324435782630665465553071476465625052657022353521572181631224342003132015665731086200251034727642342042768724157205803313336582551523358281602585074476178580187227145207635537012102513281730837422237248644518856730446206270316046650705818616665454358454738580353684110371157587563500822416111325582357584873627108128414201573148520755163811133056706316481086737445764287175387115416137177806484511265720218435445723261765302547621018234141462250030101638825222058372031833322338705318630036282520683874156368725686845163013242685832845523211553403620674105511622738815740862134023810117557426767760474585642644381655073854814045378307374382347381682033386078518685732885231765713423524881768718425148633644633286058714086311531058034818681263601377352475382525127272081155327226706655400072010405570087661815758158316283675713547420087156758728037757338135282288202782248501716018427204542088117607023584376282157782581470415233186584826507805762724272460033571412651326634402130004312645872667823075287652008020443487546340027782053437118628753610138356363183678428866266814623572045615003787625306877435726552077775273853857342148168433307612655423471126126802170023576688573236778627018467128804074385508720177344051461510855273367027750453251260135356145844210610652605165255220226672777165242368018647605284032071386241066412541114087584161112462346880726742547517663078120246705222743787525124154100750480507431087464341512207843441744722418777548374068250520572687713551245737701746245167380432348183857040811300514238606167175033186851181631382615450327661753468814784210764752450808523060630255288500182478823571263715802420751310703278612077507052483158216127060610280280340534522742587786314172781347215116342513C16B0A1B5B614ED286BE55E5CC1777A2680709F20FB7C0BE8326186386A4F081761EA493C531A8A89B64AC384C313F63EF47D643A8E614A9D8D00EC276D1FC7D84034EA545B2FD2BDADF7F90D0BF68EC519E47A35F14510BFC78314E51AE02001C503E723A4B6CBDF23A73D7E0150A27CD344520027639033E28C34E7E6413827C4F8213F09BABD184118676D5E1361B056F3CF3D5E0CBDAE14AB817EB1C8C4F9A94B65900259F62B3E099DA04A73CB7A671DD3814FD163472983BC8656C8BCBF2DC6EC110827656B37ADD2B79E3B7FBCA07D40DA224F67A06EED7E57B0226434017DC436754C5A9464C687BDFD74E5EF2ADFA208F44F18A40E36EFFB2271C634F1FEB5DDE90C929EF2106368C73A7672217BD86489E0F17B5EE32A61AF1950DF50E15E3E0DB1293E0D02F9DAA92999AB5BD13EC2AE956BA90C226FD88CBC6BF31FA87B403AD68D166F60B25E539B769ADC1A80918218DF163062A8671F090CF07686490C4AEEB58D396CD41C2111316444FB56200FC8B902A2EDE74F410C30153B8EF03552470F1C00852C564EAF18CA6D5DE6386F2077837388D3EC51894D90C2F86601E4CE8D6A974962189C43AF8C9F682573C794669379FE22EFAD679E4CC797DAAD13E7F41EA7990D62074DF58E69F0F33AD8A1C77EB95FD8253C692E3009239B5664FD4B86ACAF7403591C3FC2AC97FD750F09786A430351079FC257DC7884A45F9B418EEECCAE1D5F63759E3C9D61443EFCCFD751AC19A9959455AF7A49433032F8CC4F5678F65E9D6FA74761B9B9A1252928D760113DBED52CAA13DBD0B1B9D63D7F97C4A71A417BB8C823853236ED58721F903D8F3B8BA4142D9E4D3D95B59756B9A7D5FD0484AE286CCDAF3BD033F9B743F5DB8592253848FDC1E2DAE0FC717D056D8D36FE91B3B15C1165E018BEEFD0A28C43BBBB5D95A82CFC1FA2782F2593DCD3F982143E7AE80F70363AEDF228A7D847B185CDA5AA435BEF32D2E4033C34D3C164F0CDCB98DC36BB52A2C8E12E3E3B3D08DDB265528C7F4743E34CB72CB663EF69E086E6D46002138E35B2130FF2CD40D9854D674F98805B0041123CA280589EB45F066E7048A2A6E612E81AB1FA93BEB0FE673A9092C6F72856B696CCBFB6558A39209C92C800FA0ECE324091B88E67FF414AAADF439322E4DD3D6EA72924E4960FB7A4D9357BE2EC4C3279BB9BBF39AF61F0E390C6DE1F94A4786689C0CBC2E9ABBF3DC6D0D3538BD872B882284231CB76C5AD72560CA2FF6B7BF99639459E2861500A34384862856D6AAA944737ACB263294264209E02501D97FDE1307C45D733C4D35B4EA5EBF63A6CD16A8D0D3294CD4C678AC133BC2B6315E53F4E823F3FC259FA2696AF74E1EDE6C36A5452BC5A339068320123A24D097A379EAB362619070A62033949204024915836AE207E0855C28512DAEC08E70A931C69D96AA565C55B4917CEFA3D16F6505A77CD6DA985B4D2276658A0DC6055F5BB0463C6B8A521AA8F7DF7D9CC08BBA26D85670C888FC2B2DBDBB0D42A1B15067865E0991FB0CFEF9CFB7531769B5B3311845ADF229DD808243927BE8604495F7FEFC90021D1B5CE27D372DD9ACE488C83D99EDA25A84C794FBF626BECFEA5E3B1B360D520264910496C4922A59EFAA779CC9F5491000AB2A5043E18718FBFAC21BD187CCCA87199F63C29BD1F402DC1115F07CF993C9C46AC89F394D96A58F68D9682384AE586BA5E6F575837270B8F00062EE4A072AF52C5915B770C30C372BA591120DC8B0EB63CA29660AB16FC95D8F5F804479786B68D0BE9DC758775921EAA7B1A4DB99DD6FFEF29AF98DCD566210EFB33CF062C2555F0495BC654FC4952AA72E4B5C9793917440D63D5F5C4ECB0F901BCFA5F3309D57ACB366396B88EA9DDF1B9A07F649D5C0ED5B945FA4BEAA1F01A900F5B3FB64FCFA7D087A41CA397895EC045BF595C2B4DCF5488506A3C7EE9C4B588AB0E49FCBC7547EA2A8F867813321658A6240F12A1C2E47B1960BF1BA97FEE40A82B0AA13146BA443A891EAF7E885E82089A5EC21D75760BA5B0197DF5306B3438D3FA2B799C6E171B6D9BE22377704AC307B54A6EC6FD1FC98C57BD4A8B2E5CD5777799E3B86FA8F0D0A683EEE2167BF15C064DB860794D93ED601C425598F5A4D5B354CF0B8367AD742144B1CE70DB908A466F4312FFD7FD55FDF8F820398BAEA18ADF3B14710325B93877EBF94A8F68BD5A57D899D12FFBCD261373D2940D78A940D936F9B2F88599491928A9D54735F676516330E6D3E9F284FE32001BD5A72C0C0B29E2471D77FB31351CBA2D41AB5EC5513C568EE993457BCD6950D259E41E0682763F057D3C2234075C6380D65221E6E475AEEE13CB9DAC1D789B0BE04941985146149F3BAEA4F49053CF915721D53E4969B9E5EDC83342A2328FA0FC758E806C8B9507464E9BEB51379B650F6548F26930B7AEC18FB76FC3CC6E74C21A01D3CB206E2381EB61D9203C3BDA62B8BC2AE048FF6B3484E0EBE49D3689F51061A02D31AE18D0F3090598E4E0DA7079914B8BF4D9826B2ED5CD4FE1DEF48D63ADC7D66FDE0215A74A333F13F743EEF7CF61F6403CF927EEAE489A978F0EF1FE039E1AA74EBDE3434412474F4C9EF6F5A0F1D765624E7C7F5ADCE07434F8744D966B685139258006DB7107F7B0995C923E19A1A778639DA3B596F4ED950B4FDC87057DDD5BE1D59A6E52BB6BB5E3FCEF06ED76171DE35D7342E1143A7FF257CDDB98194934ECF249468FA77339BCE39223C299840D7F9A584A3C9E791399874235B3F1C0551486FAC4BD434A4AE8F04F011A849F2C8343900F0F9BDD9F9F8B80A7E6D9D1B127ACF0A37170415A2146B03BFCFAB50AA890EA64BE874D4A67AF2799FCFBD7772B5FED6CC2E6646845B007545EB24B12F7C5EF5F9B2AB7B4AC774B30E8FFDEBBDA4CD07CEF7023F20EEBEFC5D32D138F7DA6AC5C55D9896F618E274CC0BA43F058917667894F99BD0CA6E25912D6848AB545449D1A86BFDEB77929CC9E21FEFA8315AF65FEC0A4596F95BC3011A9F461A67E65464D36A7F7FAA07C487CFD2FCCEB9DA28745B4A7543C5EF49835914B25493A43DE0DDF4ECADB68EB4DBEB7EFA3DCEE7765D07DF439BB632F9723877DF94BFA7EF26936610F41B07D56026C91933F019C923CF98C255AA95748E99475B77F21F787D3606A3676A215785728734A7446B0A54EAADF962EDFD0C11F31187F84F2629069CDC97F99885A5F0B8A52FAF7B9171B40AC47B14E00D6C708A109F03C7E7130B1747BB5243C73D18BED9F97FB2F2D0449A0A9F4D4348B0291C47F2CE493209A7EFD0487D19A41383FC7C6CC8989F641918078ED90D2154E3CC3D4D0627FC86DEE37196EE9469D5446AC97A1A491E3FECFB656A4A3FB198FEA6D3CAF6C9FC09F79935589FDA995C90AE9D78BFD33954D0F78D322EDCA54E3C4F78F9B99B9C60CEF18C611ABEEBE7892D3CEAF5D6954F7C599BE6F283E9C1F60EA8509D8EA192EFE792E389D2E2F0180B92631226
+
+seed: 74C0714236873EE53E7F8F65B1159ACCB1994B4E9D3E8FF194CC87D7116BC0B4
+pub: 10EE0CD7D3E3C3D54FDC1B5367B8EF0DB5A20C92946B3471D8AFF7026C8D7406ACC5943341CC53C189A843AEA7399002EEFA251842F86CE14D00D974B4208734A416A048806AA9BE9D7B5B9EAC0C6CD7A3C163801253DCC0CCDD9AC2B4A663992B9E2B7EF3E2E8B1D93E4B677D1B36E8388A919E5B3A2F90E4EE69CE88735B8B105E98299ED5A9AC192479052030E6C56CF1FB2E5A822B3300950EB73A8FA59918C5468E3EFFA4A410E44FF78750D7B209F0BF48EC6E3062B76690489E1AE93A278D4FF6EF799079A8B42863688BC71154A32818CD76131FC400F2EC7AC3DE5C2954DF90AA3324756C8F31404A9094CFDFE98FF12D1F052C94C68026A214D0825A9E009A53AC5B8AC30777E05254E0C966160397FFFB0436A2CDF4FBE10B373349524AA455BF3A1A90AE05D9EF25843C8E9AEADB5FF113ED03BDAFC1EF32E3EE3F073C0FE0906D4331E2F18EDCD335F094CB3AB30214E3AD3A919BC1470685E514F86AE2008172226495349F4A9E55C3303072497571C1F4A2A28328E7D83E2B392943A5ED46095F55CB28A38BCEA6B801C1328031889A252851093FDF0B888E2E35C0CA28B5D204955BB6A41DF6AB0256B985D59FAA55880379B080DC7C1B856642985198F4B693AFB943B6C9463EC255013265C586371774AEC9E3251817ABAF21580D50A849328A828E5CAB4C9DF78C177FBA51527791437AFBB01B2D7E88824BB7A138AC8741606270EA33EA27AFFF8B3EB0F0732F60A8D179B95A513CDC9A8072C202CF4A5DC2DDFA51BA3BD186F6299C3F7AF805993808F3AF31E43BAFCD1A53A494E0D6B2B230FD9EA2E647614E50694B9FB19A810A83DE294C6BE35D3053CF2B16591E57A76B0D67C97B1BD8AED950BFC5F8526F571C72E6646F2B9FC09C9070E4A761FD82D723FDC96110A3D50D2B58CAF753DE0C8E55F32C80932662A8C17AC9B219456AA9649629CDB604322676C3E3BDA5EABA95F4F0DA031DAB5ADF92D8AD4190EEF2742CF42B26EF53A310C15D792DDB795114505222D05C21AA2567BB52E0C20A7251A672267D3B1F6728F5A0C00E957A534BA80D996379BF00BE4A725F2822643803F1F6780785B0583E0D41A67831E9B664C4E843C8BBBBE525C10FA7A7D5D3F082BC9CE72046EFE9C40EABDDE491C1346395412845B3E94EB9AA0E54381BFAFDB8186D59CF00E9EEECA5C369FF92930B569215FD7733BEA2B7BD8DD511C12EDE27ED5BF1A28080737C73557007890FB77BC5942433E8AF06234BFDCE21FC132C27A754709AA5B8640EB2C24D5F2D3E6DA9B9584317F27FE2BB5F74F95F512CB81BCCB2A0D70333B52415A39129759D6FC97954D0CF9DB5DE9F091784BA15D360B2FCB7F0F43F07FFEC2C3161C5C80C9586BA6323714391FD388A5DAFD74B436CA9455A5A025DD79D8F35632536C1E4B1BF67A3AD009878D1C067635AA9AB6989EAA3B8D788887ED3A968155CABF5BAECC99BA50F5257E9F712DCAD05EA58412B05ED7B484F54C04FE9F235E5E65AEBF23A55F60953F165C0820A9B2FFBFCF3FC6DE3DD30C1A82731705146E8F9D32B61E4AA16279AAEAC2E04957025C3C8D8AF4064924DEFCE4CA07E6F76BC56833A83B3CA4B9AC61527577C1BEF69312FE3C61A09954B0CB6261BB1272A736E66577F3DC268C026898961886EE7822056149C35CF6F96FED8885342D12A22AEC7B669A4700D19DBA1C275FDDA86EECF0393840EA0510F6BB5033C05914CE4B1F44615C12347A45405CD323738C2BE21385DEA60ADE73CA54D52F14203616471E0D0B3C1895BB7013FB7E549347D4F8AD066E20F8AC282B8EA89B83014303D2D9FEDFF90E3FDCE51124F167C9D32235E8126679D8033567FA1E5E41985CC108E5AAAF363BC677F961C30C1C34E7A866243E0FCF79271571BFB713D86F28F61C5AD2999FE7259F15EBC0622607553AF79AF73F01E8CB369CF6716B91F46444E6E5392AAFB8DEDAE015A50DB6C032EE026BB1C33C5D26B7B6656F6EEAF7C099172BDCD632F03BFAFC76F8C2A81EA19BD8981901B4C4304912B0D4CB25A27B3562956FE094422570B08089F1E28D87F46057D4F4ADE163E9045159D0967AD8377792C4FEF17A25F11E36B21DC0347A70D7BC79DAF4BAD4A6A153FD403F601AE7BB3E78B597521633500532B75A046CB78183C5E1EB84E3AA84D09EDEEEA0354B9DB64E9B5634E2AFA4FD66D08028538D1756826CD9D467DF890AE16A9AF40E4399BED757EB5D47B21B16D271E58DBAFDF8A98B669EE8FCD42108C746AA70A050E950828E4FEA76F3ECC3CECECB99CDA5CAB069A66E216CF977C623035346574198B607CD9E4582FD7F4FBE32DA87F7681451252D9440A33BC7021E41280DBF732DD2EF73CE59131F972903EE6E46D61B1E7CED204CB149D8429BF4B05E25E28685B021ACA8BD5F70D8FC737EC696DCF647577CD3ECD2CAD3116D9EBF7177F6AAB6EE5980822E57AFCA971D4057D141F1F55B82BB8F420A064B6E7C71077BBB137C0DED97B2AFA2A4988CD3951D2447DBD3D5079920CF75E569191EE46AB04393617B188EE9F2FE6F0E256C8C95266732007A1CF3F2A388CAEFD375BA4B78FC8CE538FC3E70151E94706A111B8A26F5076C4832D8B6691012081EA71AC204F3E318DFB7590A873E0E70362807693A30B7F251E9F363E494428BCAAD217FB9D035E4195C2D0DAA0B598B426B7EAF237F88965B4A4D674056AE40F5EE78ECE6A862144AB77F48F5B37486075D2
+priv: 10EE0CD7D3E3C3D54FDC1B5367B8EF0DB5A20C92946B3471D8AFF7026C8D7406B9EF82C67AD72D44F22E10F89E426CCFB2811A8E07750EC2935A1F9444FF4131CB48A42D748BF952B8690AD6524023F73316D90AD774123DCC5319ED02F202FBFA1F1D197EFDD905014C177FDAEE49DCBC747225D2FB3CEA3ADB8E2F10F5755F31436765238773811321733542255302236533175246241780115462104128007273467573581348025535202227888706643664845147473688287871520557661451418514328878413038641373366831185718407742631304024076022441684115028005630816212057231680771587242263888473502112263046460617144852151674704418681846542541312625882506057864440533060357780443856681154777055701564087151872280855644718015658280312863677851147420664002785211407513254877075818406464328248013813154001322331624050147360555283035458016011331203524038706005326522546840872070671102851110243378174102083335884817020806875402760403831201100510876353316634888227144764415084733285837346265644801676051255766352818487278123042115281377854803730378374471578305031582424347547435583025488480537442240264682550287888171205276633203648543708665200471783114087658344004102353745875558615862028665386814251361853842784661712201842436134335654038651468851708818528563106713814084732620424444237602114074526706512504115573852618086623748284154003702757757885036608640844880578740408271280183246214564565328110404504021103016366323280028504148533853428165340303521887433431373146283407730451035150720684600438720240345177513074482742355148418025323238586232103826864137218026215613418453320312007670683531321512305778830220658672678877563067006255872600208024500124245128464104281008478520046576600633618564710588403104531170654438824562483140304830274223077451374414444447124376042865584403545752862327612288316107336565543304420625625012177810618312506023087408115701507637225608287258644060687666174638270058500353333121758648835266567510606053434880354021738386588676806063236654101672728166185228385412582015006285747468822340712803265176441520244078283446424774241033356353475612312701617237258760886425214443261704054342328120028688506282815074881887174845040542014534164721023455783006371746652275687272147487705001375251724275752155608832577703522335257124614767107557731356735056633724055282726761568051586048862533873550710632478825084814164307166347670722803851310738410137755085005608733655557485423453372808253002062253267038441144230483053567613201418323534713125770348632334075865343351277534834615026336638362833351283363448556373502072322478778438815815664723328454262752274860247747123500500630273565256443614682104088854483626725222523065686710162472081316104233804041537588555546274842073138881460052176546281423571573185338586307437833408755217507062427213105610460654803111545817106235831580136240252415456220148378568237665852106565412111146242167358174564532174715154103728681582144676477318056841602550434801435838750170373643147742013068813731813005134634107011047674042315218355460415773452841407821547664873708810126218821246161302682282412113460675813240713848158403046611047337524175380380808012270778466665852652317643364873677411852533564414508451220153F0E1707371B65F20CAB5D5EBD4E8E11B4E4F5D822E845589D4DEF994F5257DD296A7A8B7A99B416B8A67923C9C493A9E4D235D76686F0A80C3B1D922147A744D5094C44F262C209CAE25B9424FFC972DC73F836FB02178023FA1C32F80C9738BE0B43A1D592EC849D675B7294D2F44CFE4C1075D945B06C11A2DC643477A1E4AF420C3599D3500CCF5CD9BE91602F3A3DA09678E49E076642697D5AF3BEADB383BF51FF2CB2E2C2B64175524E1F55113A4920AF070BDA6AC714CC7F10DBAA72879B73234B693B2A929FD8637A13A93A8CCDE2C5B3E5003BC9224FE8F0A0480C8BD9D12FF50B4DFBDC0EE6EB93038017377F024B2439A5E1F4C918818F3A775C63B8BD67F4D532C0EFB323CEA9B2F4860619000DF98E5092ED4E55B5D56D658A7F92FE58CA2751A17C91B82043A9167E891015CB90B1AEC900BF74770D7F442D102119F26DB95E31E70E8B3D31604F8D3F3E74E6B0936F5AD20AACCDDD7A70396F0167419BCBA7CE8B32334D2EB0688755838A03713A9C47798E4B1757734021FC6288E516492B37BF2A046E56419A1910564A564D642F14DEF38D81C4B963DAC9D23B3960E549DAD867F4280567033314CDEA6092AFC9D9A42AEA5E551EDFC4AFFD3542671EDC7740CBCAFA2299C3111287115CA755C7F9F14BAD648427A5D8DC9F687262EEA0E594D29B0B9AA6405219400C0FA2B6B8AECABFF90B0906CBC77A22926EDFB96AE021E20F930D307479D1831956EEBB08F4444A63597B3B3B2788C8D05CD519CB40BA1F74D6B8A8F6E71B809393A47522A8AA8220D0B1042CE95A744E81B65BB048B6ABF484F1747923D394BE5DA2C34F0BD81A28A2B0DCD1589EAA9F88F2451EB22B5A4C7906E818E0D8ED383749A87740F9261FB122F3E89DDE0D1CADF056D40D293574C0D8BEF6C7AE7FF2155B5098A2C83960F77E778CA8602F0EB6C019529D01B73EFEBD4F97FC855E4D11B2B8F0C791772A72931A4617535DFBF99F5FDC39CE1964D7D6F42192EE5A2F58685D18062E50AE46DC5C65D3561D4D09615111EEBE6D3ACD0B7E197255CA4BDE22464DA1C05C1601D72954E7AA5412541EEC3F43C3DA5956FB65C3CC0128AEB685C00D8B6C0A4155C1AA505D0C93AACE11BD702CA0E7FFA2B21E840DD71165D5E734738419D8A01549B4D1EC3194C6CC3243D67054C4AE559BE3039ED73BF7E9594051C30E32B31FE7B83577384336BA458201CE23414CB2DDA8E99F660B287B391F023DE4BA97F6FA87F7C2E98DF43DBF31A852EA4AC420DA3597EBECAE663A35949241C987AE63F2E0EE3A051C1F03C402FE17101680E21163886860B9763066EB9E2708865C97D9D2E06C938153BDEAC0C4BD252C5A9EAD82A5B2E757405E2538774E4E17C403C0FA87D92275C995B09345E288179C36815EE2FECCB138F5647275E4F87540A913DC6EF4C280F09549CF05A6FE2040F402C81BCA531D51A3BDCCB5552B48D4162B64F59C65E12B5B2DB7A6ACA488E5BEA8637ED36D5D1A774F8820274FEE0899CDF9BB802BF37311E398F2516DE4D4129B2A7043B39D10E0ABABD0EC17EA263F174CED22937C3DCD184531A79CD1A96F3CDEE3D1156E65623B1723F666FCB1B0DE4C0FE5303C99BCFFB31E583434E09BDD74932C1C77B1BA299087F584CF2C58C573413F84D98E499F89B50CBE9B261B0FE913F2B4C9C79C8177B749617F91ABDB62F1A7EE394FBB5CF355BAFBC6CE1E0CBC2D536C56CA0C72CC618132679DF48CF13C5C769487825F8755F616D62261B68B3BCC9837C5ECD952109FE184FD8AFD3DAAFA61C873E460C4362CBDA2D1A240BB919FD44914DF357D4BFA3943077B3FC3D052C98F325A1D0428E528A4BD88BC1E2B453AB657D514C0C38DAE4E628830881E73CE0FF6EE2D1112692D26DBEC1E66A7ADC56010BD25F9F6A7DEB15C2D9D8EE5CD0AE8FFC88F1175F5FA7380B8D1B81F0A70FCAF97B0DDE29257FA9729F5C423D8B532B3EBCAC59974DC03F487BF29CCC5D7ACD904D656DBCBB79989767A198E0EBEDA8F96840A7AB61ED3DB3C863B742B6A7EF8FE2D3F01530D554578C18E174F8A8C49F0A2B66D246346BD9D8122087714AD87FC884C42714BE251D28FB2CA0AE72AE94B340BB6EE71364F9E6D4A56F302DDF19D068E4ED6ED57D2BC913852902026E41B8AD643899FC77FC4ECF764F66EA6280D71C4B3A4BC8CD08BB218A22F5254B819626E5F809D9334A2F84AF3960B52849B7534705EC80075859CA6565EFBAA5594869242801B602B3A0D25E749439035D8EF7CAF3E24B40C7D4A666F83B0945232C192F60FA1341122C772FF83A9F41CE6EDBDBB4880C2A67F340A3163A28F1450499381B211458CB711723EB29C6470AFABAAD2B0BE532291A17CC537CCB4F8ECB9263A2AE4850C6C51C9F0195A284A90A22BBAA60C111B561D00FC0D3A9E82FD49A932E516DEA0C20E3F48F2D02DCFCDBDBE046384CE410BD650EAF21252484FC22A8E5DC4157AE37C91380F74ADE3170F70515AFD3143394BAA087532C523A2F33DB97AF8DCA20DEDF113633371974E23FD5E16B5FC5CD6A9FBB5201D0B5C55E2FAAC5AF3DF589C1A8F3F30CB4566CCAFC4E1E29618E03E936A1AB09AF052D0ED3D382DA96DDF004D59201AABA01A9809BDF5BEFC65C18FED60F885003827EC4B285C108FC5EC86CC54F400AB14B8424163857C8BDE700BB1351E1C8D9F4CA2CDF4071E5AF5623895C5E027C71B69CD0F50DE48ADE15E59F3FB5159B588F8D707BB6F78E178013D04E0B57F4601D7E473AD99C19A1077D6220AB78EC6A29F79B6F7A100A5B722343246C0F5998D77EB22DB6FDA2C14A143BEAD0BB9153F5B46E02E7527AC77B712B31785EF66DA524BD680097D1E4BF448951968D83817BA6AC22E08F337032944B070E0DE17D58E0CE99A55BC758F43BF743B1E978BBACFFFD698D85C356481CBD10C272DD6EE2DFCA53913AFB41E0B5EACB693ABEB5F10F6D9F4475A73184D208698E7D89D7623466EF4AB8332B753A4419FB459E29B67F392D008A2B64B97FDC17EBD81AF4B54F5ABA6E9B66583267472DDE96F20E5767D25FE0954A2EE9DF8F6D71FE8D31EFC6D0321EFB677C2BCC9EFAC39F517C66660B0D616FF28BED9CEEFFFB72C6222EAB8F8B85788422E0D450C1F8FC81478A6AE1523AB9C5002E0D46D83480D7885C43C990AAEE60B1697CA9153FA1EA89FD1655C5BB7EFBC097F1323B3D9373BE36842BAE4DFD30A215CA0386520B6FE10C18DCACA30E22048775434D95436D37D58BD521F7AB1CA8179744F236AF8DB5C49EFE51E54BAD9D254533D086B31C2752D1BA51AC37478728E22051A70AB190B860049D379A2A605F36BDFEFCDD7349FB8A84A1DDB132AF28F87F17A01D32CA508C1384537C79A6DC538E1C412BFDAC18A556F630DE3858D292A89A0BBFBF179AD4403F746A62D02707AE7F4570CB3A40B065B987A3D92D3D8327B1230DFC0B1263D66EE896A58FEB52E96CB87565C9A1D5185F907FF852BFFAD7ADFAC
+
diff --git a/crypto/mldsa/mldsa_nist_siggen_tests.txt b/crypto/mldsa/mldsa_nist_siggen_tests.txt
new file mode 100644
index 0000000..83a15da
--- /dev/null
+++ b/crypto/mldsa/mldsa_nist_siggen_tests.txt
@@ -0,0 +1,42 @@
+# Generated by the NIST ACVP demo server.
+
+sk: 9cd9cc60f6b34610741570563f88d692943c5545535218625447749d10f9ff6afaccbd4795ebeb6e5df57e597fb5664d2f770cea30388780881cbc15a327c2bf8925bf168074d8dcc752fe090de06b61f6a0b827ee4f36d890f9dc34043f12ca53bd197be0e46b69bccf6574f21ce5f785c8cff28955dcccaa3679755314105464014018368761140742017040433235881005304481041132317135442575882646007563571180411181458616526101317740167272024777306366863364426181725432835145326157360412873845844637548801728463648307127155857878564035365833624563231720425075770534541383868022201534211637621731138460665457077346550650362377813871207554351224652540248582281355504820250118222455607884310287402855720037767711433275557286627233357467066737148086373664218607436776704753205720852140448127351104063277725084667333376543028106704434311341672558760516176052221610507115785543028746865244232051544843144632725005521437101311206273405455260658702440168428533844385808017243564443875721146641858886202600582222382870286846778251286626212506028486554152460677631636246178204658288284300600422450727348881682882733731315714688255660768001031310516816545236613618121112857450781686613065512387442665667437770365020401071072502353402338527080726522360113703753313277441047641316030170107224238117642067514861843655348363421673015433152375032650808112653215218272385540578633807610813750740812515357425581268712511357656482302008527828108456453841688384121118070537028227084805262528538665755463374084781605103568110887768847737188200545510125734353882181258505618510307112513644222478521241701865020563141157366123143801476164426430127626874532558388736162185068634813730337886032245574342542121120606886772044484346317401862648035531668754417866521342234105062051840673843260301207468367881113763021358467252758431653845244841681423123454547485327480052080512481356850177143601603150581035080272882267681103207280373384682144588602122676815425864037425735741383841886805003265340181604627684726213434628224873705878452807357183373561615863205463188604445228856261723045741465555522541827768628027301547426281761504778477067111678512705563666827543382553158441668826220787468532417445816374610512387878280201744582588870877076612020870016221456054002418310022778358165665240430618103867833453485863057456828650865521457743375244737820714360405182783037838251017383853170148402428012566440678406413826787735323562838275036863873852325168867238708710227245447503320113702347515701855124844377876453164786875405021443116801680521838575855482175620588574684881207385160212735621054465062645352133766131781662870622607358633244218166513526427068421535050478666544644822461532767588278822657833772834458827350527637534853225588706621486883235074125254071723236636308801388427038631254638571474135588758581340378887258105746034601545012072347238852018051676230565404041337502016684485874447354306553310347706858143767332425154056487002844065221471301135406838430040186015638612776455830214242314040186270218424641154120021242580170152362624766013275844574003134504006412600637775204660175538282728540831533014221668715407877754142186435726666045584701027683004747af15e04917cdaa771fb737e301b109a25c2ecc639e22c77e95e63d15b7155efef3880c238811ddab9d13705a574dcf6fc8070bb2633ef631d9fb2778effe548784a6e0e5b19a53d8ce00a6304117147737135bbe739eb8dd9109a291d9ceec2a27f8d4312965c6621a8a0dc581147418005903cb628d9aa33bf724c7fb3cf975b9abfc120287cd303413cfb04ee57b3e617f7fe2d4299f1f2be59ea22a158a5df03fff5156e9a5bd0eeec75e9536f78cd001ebb466f144552063cf453485ffad295ee0796d7d1ba8a93dde33e0b773d903f6298f201c52caec136770a68378ac44cb72547f573191f1ce324cf5999d4410af683e5f13e17698e2d8da9117b0fb944043387cffe24ddc55e08cb53b68b5e1339c8334ab28a7b2156839b1edb35d6158c96e92da3cee6c9ed6355c6eda21a227b17c841704a174548db494fb2ae86b026cc181f19de7aae1e192a4cab5a86ce574244872098d35142a9c4a6e617eb29ed3cb14a9f587b2f03fc7a8405e5dfcf65eab1d5d849e9c4eaab0b2fa008b849d4378fdfe7e106d6385d6f996bc10edb2bd083d25f99d07a3e5e86b28f771285600931e5f8ae5e04e2139271eea24f6f0975a48eecb9bfbcb870efd21707636a0d7b03d8848c309dd33ee5b6380bf69702654919497db4d1634d223829351005e38d5214da2bb3c800e52b807e4f3a2737ae64001b9d51391e6f717442e181b56a01a34df9bdc21778a6c213908e57341c8de2c24537e40b30747f59e5c2a5a569086222da262301519eb1651d2e0ca5672ec5e641099593104de76ca6f8e5d40bee718e0d1b320db7a9739d4254e094066a1ebf8b015c185518918daed09390bf7405d4d3f1f5d2090cf683ce9a053f9ac0bf6c6b30d88d45170c48bab405f863d5c975c75c949aab38a68157e17d283f848eb49de6c5b12d8b0a326e9aee67f359a5f2173ec318284e9226c7eb7177b486006aab2bd57f373a2f633a46d7f7121d9e1c362b226030e0e6f6fae384b6545fecf11efc6075f1ebb376f949590d3185eacde0868fde3e84d1ff8f5d38ee2040d97b1d94185dc513662f8a53cc053f7bd17f54b02d78fbec999f56cbcbd17a5b88c95a39c555acdd5d38bcf50b89c6ad6e8b13f96a792c43453233a82eeffc181b2fbff876757fffbce8fa3488016514ee7aba5d898f39e6353d6b7f88ebffeb6cfe65425b8541f5a9c10dea1189e05b094bfe9aa8d1727b92c3ad1ab89b4354e095daeb5ba45882f2330f024f3190138c774a78a76a011c7e0d9b38d4bb6582be7dd3c6cc3baee48afffd579538fda32f9787caa967d6d9f15948799732c9026475fc02a13456114216da7bca44981f92ca2f00236de125c46bd4303c21a8da025982bf2361deffde7789cebdeb55cfd87300055c9ca83efcba4649c7f0147895088d1c5fc914871beb8985205b1a9cdd2a7af16b2e5f88f7ff26496c89ae5eee29b79a9663acd79434d992102e9a442334161078a23067e76364c451d2d1130d57a6db48e8fcae7abd42e0dceaefdfdd8ff163ebfac78f749d548f8a45210e81434ff46336982be9e9973e6e72971ac4c50b6f7163f9b621664f8c0f3f4c262b431a7e27ac3fb030066a0f0bec1f9d5909c59919deed0b5cb73cd60d55de23fab67d049268d88f0a7418d04b94d7ba535ab83f0381f7a56102e0a8480317eca5fea6e06d41e384978e1970434651f212c21b32dc715410d732169696477edfbe4d2058a12cb7cce3da8652496126b7de7bb318161738af4992324e68967081ee916a129ffe59686762bc89d48b4957b1ac3d340f87e8505e9e5976f9f46b2f43e2c79307a755acf5da90a0dfae4971750cbe4de47798fcb5a51405f4a079ca1289b30832192196e90aa6c5cd59fd11b46fb3120ff28a1fee2c55540ae461b22f1ca83ece467d22462740d9aa8702adf316fcd5393d201d1cd8456ddf77a8070cce9af9783079361d650bdfb5bd36f6cfdf669f393c63f601efdd8b8891f88e75a462de505da284573709da4572ad2f185f968d3ea8cff93cfca38f4e3adedc24ef08bc306fff1f1d243e75305fe2549d36dd1cfc0882567b802bc9b64f2bc451aa83f4b23f8eb71d1ef842e1b96b45b106aed14642998480dbf5eedde1a5a848a9f1c886988532591a3042e3790b86e6fd533cf98c0657b2d9a89a07d354d2dbc69912bbb0952cc731ad4904f9d9c0ea427d2a4063a8be58a07321b954c7a2ca24886bfd628250fcfc1ead71049b7cd090aefb6b80a25f080336180f31439c1291bebbb82bf601b749f572566b5419c94f62dbfbe9a558d125e0081e3c77ffd82c3274df2612d8b1e539259b141491d75228150413076f3f795bb50e95b9cbdc32f787efd52e36b4842a977629e8704c0edc1550308e3ac578244b2c4c38769af903410df1d87a39362eada4b9c767630a49e4af9d79f9177d26b259b77013bed16fd363ee4358b5c53b5657f6c44648e80740c36b167e13f2039acc5e5c6b9886d78d1495988eae865fb600539f2551d02ad1c6ea0ca4679bd47a02b764d2016cab6a91fe0f56b2d43da1674d86c5079c4734a03496f2b46bc790b07bdd4d5394b0e53662100c4a5bb1b62930899db4809243155475d13b975b38f09688337f67c37467672eb6adf74024baae07f94cb7da7e54738653f47febfbb93ad6135fa3b396b622a6d28efa2a03b6c65bae2b5f552bcd6210981cdc3b948d90c20cdc95c5ba11a7c2d83b561d901467c5bdf31962de4c0853eb8825e3266a1cacc3f430e3a2138b6c7be20deef19b0a2e74b65bfc9c0ae9c5a5b1dff378534a622717b28e051f2e221b57bd68ee7c57ea4dcd2164301284cf81fa9ddc9c61c9ef4df5a6a2b9912135c5014cdd9fd31a2cf54e2076037dbdf286e88f1e4799349a240673742ee2b9b83c12448709f8e9e2401279d0dc517d20c778922712e0488626131554b328396927ab8c63102d4db4227954ef466da53abe8dbcc6dd2be901869b423a08a41b3eccdbb643141f4502de7396ae5bd8b370d8cb82da479f9dfed4cfa9d3477a5552dd812212ea0ef25a3c5cf3f41bd4aaf9c5c1db36e7ce18affdb0b6a01cc1c8e474f74f2c85197d5a2a6f869469857e2ebb13a7c3390a85f979d7c578e62829509379bb5e996986c2a6d0cf270b368b19779dc258d0fe774e03e0dd7152e02ba6883c9da037a97906757cc113da375af85ded53beb7aca78b9cbd6e3f47956ccf4ed2ab8a9984ec179b440274c51acca02f7d940efd1db56fc38afd686b89a3a0971711d3eebe66dbdb46ed36ceaf5f6c2f6f3f4ce64dc37035ecaf97f0a43810e35d2fbc82d524940017d7549c9e2e914017de7995654758ef7c8d0a0c8f8ed999900569c4de657d4b532aa0ea7b40ae38481b6d7a88aea81c23fa2bcada8f9e2ba376133c71163faa35cec0f1a5382a357d178941adba3b5151bf817b5a8e46430bdc4d118ae49bd4c01b42c40974166791491814a9889b3463039adae776212ce02fcc944
+message: 627b5e14d5f24378c20c5c936f523d42efbee2641d17f34974
+signature: eee98d7678232076241e8a318a0d06e009300c6a8e21578abe3dd22382795c09ebe6ad2035733725d88245e77b8b7d7d5528d41936e7fe5bf682500c25ad4f88a2409cb0d53e03c8e6dd2307506415855299a49ea28870f447380b15f9d32fd42f8d497bda37ea38c4b79f4d339b5d66ac1727f5fee17291eb67410560fe47792a6e1b6b8d5a3d92b8e24d703dc4695a40e51d8a71e8a2c8ebb1b96734e3c88d5579bc18263510bdec73c8406a23ca63f23d2e782f504767caaadba0c12aa2567d908102c2596d2ac9b60aa342e01c3a7f747a72da95e93635f8b3648d7b4334c2d47bda1f6ae81c5c98f551e690d0d0f701efc2a07dbda20e25882b63cfd7f6b908b3aa95c6fb0f7045ca3094e1e7301d7223bfefeec13bf44d1cc1a72f96661cf3f3cb233a517c5167bb0fc6a076a8d28bcb9ac7cd9e3be6a7b6c2470878ced1905dee2cbe88f5f8114dcad00948717f6784fa80fc11827a4a17b14e5ae3024e0c8f09d06d3c4f0919c961d8936bb057b329ecda48be1d43f631f30b9ee7ebf7297a23807229b0c994e471b236150a17f7fbb5b8f6daa39c38205876f1a3f05e13e5c48a8a6464bc55158aa3ed443df4fa21589ffd9da5464cd9c66488f29c500972434ad9c3b9922c3792318bbedd3c59f5e4f4c4aa04413b149b3be5bc2eec524a28f625db30e8d0e1047ec0f0938fa150d6a3d92776151ed8047eff39274fc703051494d7e7b863f184d6b9e900dfc1928c48496dc903765a2ba4d92990a622f77ccc232de5388e67ebacc40cb0d9d7fe1fd6a56bd03a3c2af5de102487f9fb2351b1b7182f93cd8aada038c8a8ff0524c8a6d54273ea1debac52de77d08e725e48679a0235e240bcdd549cc352de56c8a4099424e3fb4152e4f6aa13867704fea854c1710ed8bc3b7dd165ee85c8f7e8d8c5b396dd571a9e555efa1092420a7bde9a25a75a71d24c8d3e9700e35f14def21da5b482142e8802da80bf90f855ecb6423a21bd97f85be0ffb6703c5af1bbb0cbcb5a2ce159b0cf65df2f398859614b0d2d672f40c9a5eeb3166d4ebcfbfba7f794e3e83b9b58b1b670c82bf0e62cf15761010b4602178240900eaf41dda70193a87e45f5107f5bf1dd12cb14c41cfaaca4b5061374083673fcf80b824198e5f02e95e7e3539f111869ea498b68a6de30d7563d5ce9d3cba8961cb29eacf99fb8334faa6cc1ab6f687ad3cf1ff4eb144c50b72f37670aa0569bdd7c4aeb6563d09bf9d9ea0706ca3b56638ac29016f0977623a3704ba04a0e6d32cd3ce2d92d76c0375118e15b6347ce7fa55af1dd1e95be9cf19579fcb560c287d9c69481ee5ddda5dacf5f974b0345bfb4bd11335f230622b7786c6457a86fd8ccb6b087c0c4ab7d7146fe9ae9de76a8ba9b891fd2acd8795e75645e566db13ff5eedcd7cb819ae089112b592bd7275da3bdae90ec5d04c15af767de1a77ad5924ebb2136530b2f6398727f7ea67680c7ba67e7e6d767ab489cae7ea0aa10240d2646885980a700bafc05d85fd23e2bd06604ff04de54e89c0954d2b349e0d37dd72176d3e664be9135228f046f4a869b27741372a8f9856717e353402152c8c0d9b601dced67b717ff5085015cbd864c7c3cd71af006cbd984ca9718601d548086e67bcc7d31e651efbc6bfa5fd97ba18cfdbc7d9d94f7d6b4747598e15419233796c44e2b70aed38dd9b7c35c071b9beaf5772a6897c53f44a0dd12b29162301ed255ab6542526a13e974c13ffb79312527870c9de6c19256bc394fd4d718cd72287bde9c082e981aa2eca187dc229d288ba240aa6a78e6d03e9e1b6a93560edbfd2c11df550424fda40f082f39b6acbe3b70bba96202d09757deb19ca0195f79b0334549980e98f442a69e6628610ab72c6158f02390c6c5c0099175bb2eac3207a1a7fc211ba0fa383d205e8ba193b4bfd79ec61a5b91184a8c4d1c08238eaddfa5e0d14edd0121fd1a0a1ce2c3ee9ca6ad1f6337faf3e6d3ca904cb53156601db3a952af423aa839522ff20f001d64f5df720b95b2c9545a294957f792782494b7a593ab46ada225ba2357e583d9df234b82ecb735eb9bbe32d50ed81d207b583a64c35c71de23a0728990e285b20be58fe73c421fd812c54dc014be35e964f884a167665711b393d13e4e36b3d09f03fdc87332f379b9a4b13a7adcc569fc277f9c2342f1392026a84b0378d39e082e5adf1549c4112006227463e512c99d8582a0797b12e354053c277c35544add0ac3a33cb98e55638a6672685b390534c755d6389a6060f80b56b47a7308121f4f318315f5632e692a64e5a509f62d176804f16c18e5625b43264cc99a246faa6891e0f86f214704a8ecfe8e99c3cb95b34cf4346556b31cba3790da69d33f0e010e4d2fef200b734fff16848f1859b2a1b76a82518e68d7c95eea0d2b20590f4b0d7f4f5eff2309268796fd244b9ecf8d68282559efcf18154227a9e79dbaefde2b58c4d7a173ef96849a1b4f8d8e242b8ab17b8fd4806218799faacd09f14ec63f1e2f9898ee0575b8902d6841999a01038706a89ad275ac19dc5c361d4908d33d039911cfea3c051d2ff515d241d0865c33fe9ac93f1ee0e344e9d0103c94b699937312891e80ec2056f6e9109ce22df9d0d4f1c7627e22777cca0375158d88b25b3d0388c6518402a206649111eb3e693fe23f337f1801f5f796abed6b4c5d5205aea4f8d6dcc289b1f036a6e635241aa8f02bc992220fb192888226efac4bf45ef1e8d2319c6b24fa63b06b0fa9a5bd91c8eb442c0c3de4b32b82e2f83b632b9a3214bf8ec003c1ac39f128b8ca49f15e6774f13b19efa7c8382c1ae041361736c190dc2b7d1fcb2e7f386654250cd12f1db9e3f64f42e0707c7202c62b838cb1c8afea1f20a27f5c9ec1cc3c74ff0a2813fe5f5de88506a8fee5e12ac673ce52b26b374d79c403bb77919ca147f742f53eb5ea93428aa1bb80df8b43d67f8a0f99676e937cc6d2cd7c7432fd3b94a7a8c12b2dee96b724fcd6f9abf8654d607171dc49723a5ef091a18e6cdebfb4282f160492e24f11435ea45b932e8c6875b4e84f44ceacfe1c83cbeaa2d14e2e6e964c22834cbe75decb45805136d82392591d3a94bd8fb8814375c7a87bfcd7fba8cd1b9062cd2bf2e9c36ca101bd8dc1ae6b2461a184e3d7eae536c4d6008937ff3d9f25d26b6ff16ffa4bc009a57c984046c25baf4b44cf8bdaffcc67d5c7b8dde75fcf58044c334bbb99410b69fd7a71762db9bf044811830e8677159129a40fa6de02ae68f32a0b3f6574bb0c86a5b01f20a74a2cd3d606df6bde18fdafab957f0f17dbe6cc143f0412e39f13b015374c681677dde8b40bf4eaeec601f13892dcfa166ceea894a3e517c30deca53962349359a174fca13fcd54423a2cc0a243d7a5f1ffd6be020f38d0e2d852cb1a17ff9639dc072c321988615e401890624a3cb535d8376aabb8887df9070aefdfc9d4db149d9699b8ed32fb6f9776c61f23b23e514eddb861364e60a49c05ee5f41eabc9d8bc99e0cb5cdfdd87c2f80e998f6b28dedf4ab3145d951ea5c1a653d61cb51b33609c07dd49db97f597f0fa542540a8e439a8e833416085a63f4ce928d2c40c3dbe00918f44f8256b8e6c5b96a1ab206ffbd97bbc0ca10766c44d48748b1412a5f4119d6b8c57de988681d871622b9200d28e960e869158addab0372c7d5327d66a4be62857539fb4c6c1f571db9bed20a21472ad59705f4f5daa9083f2ef4670a976bc49480b96f2aa38afa74f01caef167dc75dad72f34032e21fddd9cf799c6738554ee8dd3bb012a09932003c66b19e153be1fefd58c20d799021e8b529c1bfff2e6463e3d2f8229710d06aa06db5c60d7584d5ba6f06dc5edc214040ad24609c8e385e3f715a768a7fb247bd5506210a81f0fa30baecaf4d4d6a6f1f797c30843467a446bf697c77c3e3f3c96001aff5ff15cff86b89ec916d773b91c115fc95b12d701ebcbaffececb903c74a26fe2765f95ea203e91c9255aada59901043dc7966cfa91a28e675dd5ee20aaa9582a8577920374db7f816c10d0694e49f8cff64b4facd62b793f898d267acf39ae5779f9cc78baad1506531bc179661bb355967cf1273a6499e5f6e2a59da1c181a223fe6dd549da34fa0e5367b53f041db902b8a43b9cb92cb8b5cc3a64f004de3a37b73290ae6a7b2dd233608f0afeb24da88a74af358f9aa4e3c18e409c25b25b73de109d0f170059ac4a58334fba72df84591dcf821a8ba79f6c0e8ab892a32ca0c6a51ffa2d3a353b4292fb2214e691e744f48639bc94c2a9ddf256e6b174a08a1ca4589324a3e802902035b58c0a4931285bb2cb4e483cd8f35f0ea108e2907cd48531a0210a6c2b793c8e070cf29d1cac8968200fe956b223b1d418434fd07fbbabfc8bebb5959c8113cd36fcdaf8d390349c6bc853f6b7c004a8215917950b3b26ddc7807fa136005553030d4d6b3f54d9c09a59a9b49dc19c7e0af972acb3a91e66c5f1ca3bf484dd7295d6dacb63c4428a9a46f8d054264c52bfceba1df29c31dd5f325242858b7b61997b215b5dcf32bfa9f729b172f788fb7d2235fb1df1292a6f28b98a8d6f00937dbf2fd1081a6b5e1ebfa000000000000000000000000000000000000000000000000060a0e13181f
+
+sk: 259fb3ba52db733c662e2f4ef223ec3848f6715d3fde5aaf465f4add9edbd0dd91c9e36ef6a9ad965f2ae4505833947f2f1a05ee7580c55b683f412a972596d66f7c048b955aef0286cafc9129c2ccdcf4b391d721d30916d7de76afbc7a4f142a8e3f057f60a17197868ccd27e8ac173ee24225c7124a26288e3834fd1a102425102642857314035037635137544862417145784334674523732730173003803174101506658662223670740681475034381242512035220212582441044056280817355342428108075612514754111510241721221842558210557880228132081123787550176804457078341805743070283485077445061217034747445534735813242665656644838665025856281266223208745070772464381062340783503056571417610788863318577510326280871267426255787536364088336266108138154414057501854104841841528358643067470403548541502801737361153886020661275753864567754085636875380883840880008731206157721731152236344786062338107874473378145173000170871601126251721171483007417442180222165380250816541716060547033020481068214103225255254068657803766420462748442010788531353836876158264551162632243178168513350060251713268656108202875180205733513250354601148420555644537440724033878662652668486106580863428757708414107660842150310547643656301063100725565727073124373052718824576426086088772336523311744042423532437055443106680582036673528552508323565677753684321434248220007438304523438062271007300844402115314127217125666208206315475153485488815663438838101888004787743276442086176406783027400526014830547505117416448674242451640587401702183457100711470426345033173867518145204554418742827535527617108013755777505508300610768118420481848506312610284876667480083376514217183724542716858813425615323146068444462335041217703122640028577582714721045300152075630773708415838080022433763461145507154863220528875218352867571405872312728013215781355201725077802871163501087111737316604645018804875158006443582066841241406846818860280080071732471433652234237404187465006583050041333570112162016137117080455414386051577421362014126046832332587864267473750335283274600407826434352363555044167171137053766703828401401675578477813870505224005640000461167062336552383771633271855668638418252445825668147643018115633701371104464505058402232640435180258571034047041446024325837452408818214322660043050248845317104146182060014385317562041028376476410187151762264708708156232236301381681520571250114218267312838378800851853218232373287153156231268817356404553356084251788265177758856341405780430133503208475627878433278062206047031853476111538474764242503720228730786712113173182222106215576364308065235366033653733018682683707311674432282568352112864448848407202622657166163625767186462671717308361648236444462080341088867051254826665151811887406306646007557666676525164640510748726053215203731046651854872230381513058482850755186018280360503310861510287036324887873465282306827125355600726882875386526077236484221848115236156232542588477342664238164257726283751742671850344863381641833855845213660054473053445244378613260562558270617361174613684066811382885253563511064068742852863530432354847806758027578752863766737705137162646660457750536345213162616221812874474336125472050364211786477531864132271541785615517510bcd3a95f464995b662caa78faa83a73686a69d5713be7aa9c2eb3aa3cfabc3983fc472171dbcfe9d3daafec181106617a1b2e4147ebe993203fe00433e39cb34a78898ce3d5b9aa2de6673fdcaa23bdf9dad30049892551fa9a3890e7ddc9907058a75644e596c612d031809966b2f9761d55b4e57d97b539a7a8b0a3de275ef37d1a8e1c2867b6eb58ab02434c16e1bbcb5191ec61bbae71500161fe6d7020337bf3801660e927313d52afff403402ffbfe7205e3426106f92d54676f9bf505c660fa136fb7865588157b420f984fb3c636f357219628f32b6879977261c14eac7d13c0c7bc9f2bb2589aaeaea2909407f0a4cea08ba788a94da4f18ef55b719a6a7676a4c84a3755741c3889ca2adcc2baccd99e0531b9a83bf8898fff699fadd3944c1310132f4ef348a895bc402e5fbaf83fa3cd2b91fd8faf95dbef993f1da573624602786dc7162de1f2610d4e01c31bb9bc147734d64ab851c83de808378003d83b29ef6027af89456cc7b6d1eb45797dc6b3fab80f60b828090130112a8ff4fbbbaf52b422551de640490a033f0834a0e93ed15256578ddf085881882c04ad8ae899297f8466d5116236ddc89c55b31527a429b9d976585c14c39216b2221723236369fad36b4652d2370256d4e88a48425dec3713a76f81e301079ed4c9104c784e85401994943ab65aa2e8412b1f0bac6cd7e80a2c3bcf6ae9ff5218109c4471206c6c927f846e767fa2d772b665fa02f068cb9d333e2eecaed9a1e964a8b4c0abe52fb254f0ecf739f30d8b2f4ab37a2ebd2f34cd4ab8be6e8192a7412beed2e5d0c751c54efed7f303cd705f1a94af653d8f70e0349f9989841fe2d6c4c06c78ce66970cf353baffc0c730c5ce141180daf2800203a7f2ea3971bde551aa974f998a6a914ad98c61220eda44b9880fd4a8cb05534f99cdf9114670cced068da3238d218628ac18fd17de896fa91684f06c9d18c86e732c3fdf0f62adb4e4dcf54ab7c659a49c437401bf00ce4a4321486ba8656aeeaf55eef2a540edbccf2d822d1905343f8c773eaaf49f081b0fd10ec8361d515269cfd46b147165688c591518a17bd9568e877cd24a324e7192b834335fa76a02bbede113415928507bd3adc3e497096452d98e17e4f63c2c79f5e7b97a8673a9e4bc4fc04ecba739ce4ad6aa222ab3109b44e26f9b2e10fbfacd4efe8b6b3f794944c9374357b3e48225ca83ebc7fc1236223ad6517641c23566c2d3c71ec79e68bf48d81f0093505f7f3ab440344f1f2cfb7ab944379bd96ba8f7aa2c1356cb6aa1625e2d6c4a4798079731a558fdd276e3482a093e2bd6469dc0a6a23a21088c64ca4644aa507aa734071fe988b63ffdd72705ae125ce70d7d0ee8621371074163130a07ed5671c229d025e1a8817e9c9d2b7f06d9e21561d0926bc494aeaf2fe026b5dc4b4afde1700e3f2224da2ba209592977003b2ea1f1ae2e40d5e66144d629584c194589f7cea78de9f87111f6e017ccd53b25467d8fd3a1f4551d58feb903ae8bc29e36e88b043c7a45f9bb1d90606e095f67d6b823729f638b28f1d05d7e4c2f0e383f1ea2f4e513c3bcf8bfb2c08ea188ab86e90210e4bbba777a15911dd59379fe0b4863e3e593418a2b696b948da8d3f463e11b3b1f24ab1a4822d14903aa8a0fe1b357705b7ad592a474b114197dfcdbcb489c4cb066f498dc6df1098d7fb9c1c2321dc9dff4c4b2fd3dd89025ac60094e06a2942c6f7af269052c603424a3048906f6d00a108478292c20a5875bbb83ecad16bb4f2e9c0ef2c6a115845a564312116bf0f4fd3d49a7ae0679d9ea062cd11f4d1d27941258b48c1d5b0f9b17d731efd8dd8d709ad845c7a04dd5e31c144dc9d13fc693a2691d988fb3ffb5439013db115c372e6f300e39e2fb0a999554d80b79b30d0c40f26726693061a77950b697dcd63ef12dbb5b3bac50d74fff663cf79e687932a70d0017cefd7fea261e541114247c58b54c7a92953a06a917661c1b4f853dff626379ea5ea47dc879f29d81eba826860680e6fa91bc783d27df31b70af910cea2a40469121beaeda364f43b48dc0dea37200ab0bcc3eab8e43889447288de7d34075e993e979f548057a260e636a7940af13eeb0a2f22cbd67827f255f67d65b6bca6fa230600e6c7b9c0dbe92002fa409cadb6829cb0224f345bfb756d33ced3ced04a2a73ff884b13d86e516a209f343dae57097d8f9c61666ed4dec3430b71513b9fbafc9a0a5f90b2710e1e677752290af0ddd2d50247040b6c179742a1e136a9a885dc6efe9deb2e35a6e06ceac0ee2087e4bacf1c71b5c645fcac283bfcd2c02b325a0ef1445988cac57ca6f7e2a1cc72fc8595ea740ab168d99722a3ac55a2a85a0c9a8e1fdd20abb59b0bf72cefe93167c3529fe1e59d196ec55de3ee47b9f55469ef1c84bb6debd69a4c9fd011c719caa15fade4a55d6a1d1463b3e7f34ebbaf247adee77a6d49239c7c5bf24ca27f46e925285b7b2618503b1b9a1850c8867b0aeb203e32507f72d379ea8bb8aa90ac83438f6894f43b91d74184c2ef3803cd8e1c42dd8c1478ad8ad67649c79b753dff3ccc4f289736eee00ef7ae7cac54272f6ab9b427eb3a0c65b3eef3b4c22148cdaff3107aeb6d541562f20fe528e4623ca5637f94ed9b6b7edda3b17b5a9f852afeda06469839ef50dfe425525a62111fbf42e29969249ba697181a8c5ba9e03251c57f69a87ea06952797593f9ee86b28cca1684a9c4ffe12d7d7bf01fd192c4f59c1292aa207747d730e8a788a5a8c97716ed120dbaaec9ef6b4a0afbd02cf2897cd375354ce07b95c295e19c3bd45425c5233ecfea3266eb504745ae0ea741c658c851b33373013e5c43df2da43ba9b599af81ff70759c4c91e99f5413dae32412d8c37f4a4cd45d41f81f0366983ae90030e1da16a9d0425ecb07438b9aca0e2ba2ed9472a2e1a7aea9ee95b8747116eaaf2191360b9c9139b67a696e46f52a8ad6d797c167234b687227ff4613d4330967557d8c07818bb5af26390e225e9a3cf076ed6250c419eef80a63e63011f63909252520e449a55957652002f8716688554b383e218911b2c6ab033d4a4a2f269a167f893becbc8402266acb68a02fdc07e061e862e9af70047543b67f098c3f8af318740eedf0a98eea487e5b46f4dbfbfe8ef76a7f5fcd42d8f2b13e8b50d70616a276d361fd91a38b759a1b08321e1e704e80c80e2ac5546f9825c03a52c13b8491606d2b198e2cb63e221d301559faacd520e966d2eda9f136e9e83ce83cba2e06b1c9a50e5dc66ef7e0062fefda7d44ad3f9a82842e64cae2e95614fd2c0ed6d6b948b0f4401afd800f42a7bf4e592a3f44840f4309e5fc59c2e392aefc871096ac16c9e8b775149a7a4b923fa601a9e80802c4f32b499c0513c7c1f037087439c1637b3fc4622addb013a0e70e26c0247b7b935b7f2ad524bb3356ad851fdadc681d2de7123f1b089ed8d44977d67e955de8f94cdb0e53480fc776831c
+message: baee87d45678d3fafcb47ab672e5a2e197d428b26dc678
+signature: f5d0934eb0b1a6a9da938b927f7b126836660e5b11644bc493bd20b89848a11ac19f7a6570651890d531e3e2e10c151f9acb2079a148b5a36948986ccfe6a1df4029d320d31a5d79922e8b424db0785f73701332c9c688cd040bfde150ab26d1d956988dd3663ee6f1a70e80be7fe82fa1fa712f5611a916e9fe072950aca568d77319dcd268cf031d5150bfe1f9e2420bc13d556ad6ac897f2e4eb656b8a0fe70c21774ffca73e7dfe6b85ba94f315124dac6e8c56a57bcf2b3dccd415b412917300f6acf6ea1319f95cfc984eb1509f58513eec2c8362a6dbf3826dc3bb2a9e1b825fc9201f054261a70b4a0b07e6f648caf91ba137ad0f92868169a5834656679aea37ac24b3de11c27cb2261605c60a252a4c0ea15d76960e041f16f6b41cb474d7499b19120f6ae95d41649ffcf75775cc567e0dfc478325eb755b0aa2c27ed0d790db5e40fc7e0efdc513e545ed3cb6809af17e369e3802933dbb5286df4df55a617e93d57706f73accac41ae2fe93582801439328816a22cb199a106033b165bdbf0d3148d68296ad7b926791fdcffaec3befe0065f63da40479150e70bb5c3280ce259c7a914af1c01dc187993b73ca646c5bd352085d8f40fe09265415013f0c1fd62b429358b2da04b1999896a4caa1b37e358d2b29ef1d2118faef10cd3924af9938d1bb285e3f171f3b80a674b224b7d6c54fefb9516cfa35fbd22e2ab6d094be71808c24c7129c327d7f9d2bc3e5f5a925d1cd816cbe34a3897ea76469992341156344abdd04436784440c8d58308797a9c6563c7989f3495b4a85358fe6d63fb5f3d4e7c9e51dc411a6b027f2197163596956776c72c5079a94a9887049a9fa0dda7e9c81eeeb52e2bfa8b982038977e01dead66cdd0de0386fd44bf31f07a5018996c0348a4f631450188ca79929518e0c3e15d2363e6a83c51db039e49f5ec7d1294537c771508845099b3878c2c2f4c7f12704f935c95b0c0791d4eda7ccdf7c08732dc87a8d906ec106055b516b1c6e1973340fe28dec21cd0ab5b2b85dfc69e011053df7a700a8084894243bb1674e00ec7ada3f364ff57a40f6bfea75f279adfae6cb21f9c0409f1ce40efc03207eed2aa7b67d758a726aa8c7498cde40c97f76a9fe9223183e3e8dc273c43c5f86312ac4f589d3ff5b49782cddbe063f014e0ec990c41ff0460004a75fb8b5b88f0694581c3ad5f1c5201814e3bf0ffdbacd4cf1f96c9063d40b2f9e51031b577a12bb92dc9ac83075762ab3473b13748d4ac6a052095074fef508006d412d1613cf251be973f82be277460352487f24d5746850da55f448cd564d834313174cbb0ba788089f490e50f9f759557798e9244fc4df97c444814631e9b8484aaa655f9859ceadc85c0ff51053bd75db37426801d8aaeebc64774b1c65cf69563643ba7c7ea6afa97a6cf4181c540447af843b3d59d4089f9a3b03abf30afd0e5d62e9756eb06c52748e7644a7250dfc61cfddabaf54ad1f49b5260fb94c5b0f1c63fd3bdd9501cafd656cccefc9d69709431bf92b7ad518f32e02cd38c4faa7dc7feb55e751eb1fc6d1c5f71f6ff2e00f763af54860f46accebcb8412e7d5fe86d124f34e1ec44c83657d84925fdbaf6f331cff50276e06c0fc51503164cf51a19bff3de999b25911cad7c317789fed47006a692a73474d5298fa5694e9b96a077063ff66bc710778f5f507f8c5fe1ebe886cffb931c08fbae7d8918736565e71d6a1c36e2f97c48a0a6249dfc9018996c46abc1a91e3697bd983ad3cddf84dbe527636399b45390b3308671bdac3c47515a46f1e7ae64dba0966a2206808665c8da5e84a68d90047e512cb02577acd1baa609294789f18c37bfe677fe12becc6981b5b7d253bffb0960d4515ddd89ae9724657050d8f87d6355baa4a384305fd7ec42a0d11bcee588782b9fe7abae83db7fff3aa46f3dd2f5bc3619f12e21664515720c5223984d0334fa27d82896d26cbac0bd20ada31556693d7ab41d9b684d3e4a490af5cfdcdebc7ca5ac40416f5000d3aec100c301f9861d692c94f106a3615aec4c259d3e983995c76d1fc675943cfb56433b6216cfb3a5854c887728f78bbb423c6504e33ee2a5c272b3fb0662d02db218e3533efbda30e89b112ab98a7f8d83cbfd990118e0d2d8c4f7931a2828617d95a577c46da621ddbc11a4142247e507936bd51c065db82b861c7be7a26762a5c9e77ff1066d4398f8129befcd1162230911d69fa931f5c50ee754c36b27547fd5a77df2413c2b8f29a8acfcf314ed7437b09b82c9bdb162d6b33d35acbd79dca45a783aaadf16973a4519212e12ec7b435746fe3ddf4e1a41ba72245e2436cc9c26df6d731f7b89d7ac849b1de7f2a92ba96395c80a37bc80797a5179fb022d77e4538bdf02d3646a05fe4935ec894b77acd9cbdc878dfbde44380fe2c5f5e3a2b895f46c619f066c6b74750d6321f64297843e487c43ccadbd69da59dc9832f6eb6742810df877ddd86a284c1a8651d57da677d6f6c773fa9736ee8b39dcd4169b99329294416a5e1960f578365501a3205dc40fd8b1b393807ed7e99317de7243c8ea147bcd2eeb0270d7de157a6fae91dafcf50b016d31a87c8f2b1d1a9fc7d8e82e39d8da5113e04e989c46044aa77c7acee46aa8398848e57170327d07d356876749eb81d2b51b05a948b6f170b39a928a7e876df3d8d81067887aa6616f2008e25c8ec9d55721254a565d4e7bad88c02669061d432039ba81eac457f34a263e5cc34ecdf85ebfee0c81362507de74d750faa24d6818815c647c7f38a3cc5087a6f3267aa3f1ceb85f27600253e65b3076cdfc4db7d1ed22cd3fae25effcd0bfe21e00c01b34f15928cf3defb297e1612087e2ad356cb32bf57cc7756e84e1c87a282890900e115ca28e9fcae35ff515b294526c107daa4d66c437e6a566f3dd7a78a7a7d8d2d626964007cf9996d4291b4f98e6fc1a06381bc691dbf0f395b888eb6a2839f8f7835517f919026df365bcb93afe288d3a399e54f89cda2b74c6c1bb9c815cc94f7f52da6e049b2cc3cab44c036b164b579a30b31d925648b4c5666de21200fdfef5fbd4d9dabc4000a248748f4fc16b2c168571490491d330cc937bd66bc608872677ff2b0f6eb26e5bb974869015af96267508b963e96f9ac3e202749ae5abe4977a46ba773fb6b1d0a4332049c2de28f92357f5286c72c8c2e516bfe194d2676c903e430a62dc1be9486284eff8bafb39911ae347d0201cde3afa47f51ebfddac371f9f20136c1d0a98a2a2f0fa74515c68b4747b82db0a32d1caa3ce0d952b869aff518c361a74756f23750469f0cd52e7ee71c17c62512d79c69f85ccf5ec6e63f99d22efe01555562e2e4270cc32284fc09b7a8ff96c5dd15295542b74395304313e3eeba7abfb4475e42fa87f35b2a22d4b78e3c9c7744adfa88e93a236bd09e9945439a7533965019264115ba8831e8567272e2efd15e2b31238a7aa38cd3a6252b66b002c201e5e0e0d20f232970e6533e81746356e8a4657d30004839a0653ccb6b053872284afefc762c0f9708e4d418055b5fec7f84b220da1daafba79a68ffc14fd416857644b7ae64d5f0d250349b8c90fb23a7e7f9e0b9499026eb9be7682c0f71323bcdc2973b39467d27387ee93b75ac123b10d613791e493bc550d404b446f370bfe246c9ea3d20bbfde3282232543d91e54eae386324f56824de74d89f72b95e3b7d260da810f38c9fe009c045b487df630449593669ac425202cd2c32d835e66ec3252bef929134fb72152f907bbc99756da84e63fad12dab0cb4df6e73eea3554da191b1e50e3d690f1b2a7cc71342caba5c077e66bf2f9a0e4c446b308e098d8caf0a3054a82dbb10e2a6d00ae0bc067db4b5ae4ca1f00c4f8cdc57a0d3d56a2e2595eb8126ad0df4756065e6884e7f11b983ae45194558c032c9b06c4683a74f9646be44deedfcf21699588378752daa76c62cb3424891d3074dd5524dcbd1ddf68b99d925eaa436c45f65e3b27534dca1ebc36a7991eb5ab5a4ddbb8361846b85d35fd253b2c39edb5dc3a64776547e7263d9eec852bbf30945a390afc3be1604db4f5e5e0372b34853630e9c96ef2b62223ad4a9d88f3fea1e11d6bcc821fe7987004401948cd2f78b31b1104f8c63104ed8fff3dcde2d5aebd13f8d58efa0cdf07541888d2454ca0000d04449fa1843b9af65a7d82e4e136897cb55b41e2497e6914fe34d99849cf4dea78b0ec16f33543389db8e5c4398ec8ae26d54d877a370621f2ee7e5b9a8d86247ca1fb5dec54cd017a2ebcae9651f1d257756c3978b252da082e0d68f3b8e70958778235fe2e3587f2995684193d9afe890c5edc79a1f01525a5854f806d1c1dd58b9510b2a066a8ebf18c881a3a726a62f82fc5a9aee1f39e35eee374470a33da0ad930fd77657f5e7c3df53e4cd9256488dcbdfa4bf33af4249d960cadeac0cda69634268d372f51ce38c526abe38becd72278bf1161d34a5ee18c30b569f3aaca45977b7e2e4b64e16b91bed44c140ee5764ecf3463ec86cadcfb0998c3ad1551a5d48af7054d7493a8e4096194d1e9141b1d252a3f464a4f5b798c96d4d9fc445b9295aff2041f4972c5d113516374849fa2a7e7ea000000000000060b1b212731
+
+sk: 46f7ee12d1dfd859c99edcd2aa3f788120c803f701c09f0ac6c6006a483f24b1da754c8b6f023f4b54148fbe903e37db10a08599f96f8c4bd88a12ae75ef96be826f43d8fc233dbf369de3894a15bd72950f4a1bd12a438c9468d7df7a784cb28e09c297d8e3e2e06cbf856314f854642128aa48f1d81107664c68002f1ba50771423777768661318652015301701675452862114455332773240712141272658004037486673755466713872721373206385526082588308822844208174688072453847156374652725883312588184847322037118082345284381535072827750620662552658044573714372684730422750822250061416227110411556485254483788175852771738712621540400206858455182417814481826834621808352730504246002115415455165247178656208243708256718505813574783345456844462225042852555577350324615665327383222274504124222026616711536342134430650632386417511674246181263466784636432445703858648457807380165132651763017006355180848338044356202468681278060027101326458580835553466240113212356486357853212024020453037300580101283520580812201253578764554470416780240631408657744833706810023505262061270786148163871108775548683446757563265484721614576034522707800276722378841034284735584580756666461565258510743180813685480225221470132882178730703166671388816006803462573287416370277131253007375473250045031130647035823125685133745752681845357338045218703473070362031642145488016544540452453023823502257025214448656424588430643753604833300874424202332461071425122082142350200401824152537544381237177722217727633546864408411173338583140671235433478064534356480676316082265651756660226003728275535182173332813247361530405648510313032883458440765686853262566147881386565224766820864166864516783653010824205641620713113482037081234878224867168646784881773201313021632477421615438835667618815087848520704526505585865500205604480224226303081361000620145326865572380701721113354304771877436582402131666877451377628321376664361654588507846387766538275421685083567705182437586276316561133318482843637041402810728312642856125725238105801386052508861664687186765734510455727788000561778362754470402736610765373506004558734317664804776844102321703310825842303652775703147637547720466808071868504268885388551533325502405384401005615563218645174380204708446683777176144148365432645423880258774627670044711457176742352567612812085806187382610808748221231283432473333541776208348647728577566661658231253311510461277454382330113644178314751114378018232433483584363547408521680546482008778558800817710548747221562714177851866712163523786574361183304435056041766032322012233501804761662526630583641288647125773053468670476602134552773367506333357874428681430860111213832365766306488856318886587065748465158552817407275663437485871884287731574025534537602104773110222445245103411574771736777031884572153521162063073123176570381783081662443365157412440766167753001431543047783213006503344500306555273751822135005732244457841718622640536058148277713415633448702412014037774185385003241666558205150852814456103475538332701325287660032174125324326513868368284456683830858154604704386624007456517765617237330180155257786621726344432540022127281001880628366681613051545183248500271267634507544421048306221558840168602012e9adf86fd33153553694e7378ba0faf9894885630800c98e0eb731b167e676c112ec523a909d08629531afd98323601cff0d335892adea4dc775a50e6d0d92a5fe423b82aaef5b1e5d84b7b39eeceef9e96545ce8e897413b75230216579265862729a513558be71f696049912f4ba024ee21c69fd082d01831cb9b675a4163c66bd61167bb019342696884cc09bad8cb52f1161a7df6c15227320b67af756f9dff17c315932fc98f045b18bf648ab429007b3524bef508722ce84009976f0b29624f0744dad29da090048c81b0f44fc389ebbd280f785162f414a3c2d40be3d3102e2b13df286f2d1e89d3b42402a4d2a916bf36a31587d83bc94e6ae63063d9caade3a8099265ae300c3167f3caa7d9f9bacd7b6415863997559a5a281fd37fcce36431ca378144e319c4df70fb05ac588c5fab8b21e3c422065b773619f968e4857d552fc23690f43f6fab30262186fb7918ab6d3652b4a53424f98e309a14576720d067497f0eb92037b2f38d32db6edc6d671d6a33bdf0480d2b78546ebbc628d72d7b63f0e37980c508191d7b5e54de39aa6adea00ccc87a95249861cea69f704baed2a4e4ea7db9b50309b1f6a0e81eefe48c99d0f34becaab0877b8a936604efd9696d9ffad9216b5035503e9c244007abafc9c17d066a0a8c2c60a4cf7e2ae53067acf99dc40b28ffa410150e51715192dd298bfc332132df0090fc55dd7e5bf9358791847f05d7c463afb7c808686e5127b8e9a16eebd53017e4de2fc92dd8a9ad98989fdc6892b727289d864426f1f2a2894e7eda91b3c68bcf62767b8c5070c72094f58a0b242352db0bac524dc3f7ba05e05acc8fc2c875aeff94d45c88759212e48e2acb3e304c97af069397a9c6cdcdef5d9cdb038ee435b2b9e8fc36e83e8fe88c945c53f073ef6c11401140a8b873ce39355ccfbf3b3d9f1083b5637c27e3567696b0ee233129365d69f4caab5eba78bf415d5afcb048eda571abfa11b8d2254b7564ab10d54284220790215a7c492be75bc79c97e27f5586944c0470464e7e722ac7942dc35362b62eab38881316e0579318cf98adb5e4a2af01fdb3119261ca20989082dc5fef340074057e7b765e93a8da0090ee49e9fd3165da4d8ddcbd3e73f444bd8fc9fe8c946d2fdadee3f7b6c099dd8df73aca99fb80466278cbf56a327b60499e28e3f911c50a43b4f9582996d2b1c79912943c857ef7ac0b49573851663fd9509e74568d2fa52b7d79e4c36a7b7e8c13958c20c72002b2c84e6cea5fda6d94b934e86af4292349ec1c5b64733f3a38044208fbbda65cf33d50719702283b9399d96dc49a732bfcd8df4b8244668d120f8c2d5545d95b54560154d1dfb8de6665a3258623b6d65d687c354860b72e8b9175ff6478694138e78f11b2dc02456108b30c3cd1269d91537e96705ddb71c9d8e232a671fecd80ed3b831af8d9552e2e87c38a2c4eb029555243263243d480d83a13b7451b04b2b4c51ea4ed28164f274f61c18805d59a2f80a077f4ffbe29c3b9eae32883177e8c32e206c16fe46c22e0007d1810a671041908f54e715b6067fae2b9e34949b6815c79c3658160490eaf8a637651c000b84d6f80556f496209eaed4f8e63a40bd014ff8eb03b66c1a08fa350a730afff81feedf80b2f7b8b790f546f32fa16692c65ab381c7fa84ccd1244e35b424ddf212da5f9e09ecfb6f0262b05829c199869c98d7cb6f4f22f5d1854d79fad38f1c99bf7973e11eb56905b1357cd9bc0bc08c75da4ebbc5212d53ce478fff70cb2d511e223c98c240b01ce1c79177aa5e765578ecf9d35d7009abe75f971f1ddf53e4544d0d8ebda42ec95466b948df34a70309aa10d068776cb5166c7b0fd36cef5c0f375e69f19cc4e547e01104d2e96802876f03bdf5bfb6d0913bdb8d5cab83cdacb6d220d137aa46657b9d42a5f2008118a217ab775a8219ecbef40db1bbcee312e1f8d3e2f0607153d36b57680dbf82c37635e3f34666a9025deb6e8d17ef32019b7aa2d86b612fc064c7586728ab8eeefe685abb50646da0e29a1995213c5a2c74f6a94ea9ac1dccd8aeeeb13f1af1343ae8b196f32d3dae53669a15d9346bfad6804ddab60c1bee16aef5856dfcd87822ce10a545fd315324758a869cbcac513257687fa580d7d4cb6937b92d293d56b82ce80be03018d3fba6fd5863207a8ce9253f75d33f3f7b272bb25497adfacdf0a8e3f5e6f0eac215ad7ededb398d5af59f791876085cb299ab878ec653734898057a83224512116d8ffa8fa4d1e5c0d1eac6b956f59116263662e7c26fe1bc0d9b3eb872887a0c2c7777885046cdae6a3ec6b2bc7ecb73ec50035329b78a2d4d7f6d606c5d91dc72bd0bd33a8e2b8cdb657204125e81a068f72ceb4f176f8c3a40290ce43a640af3bf5e6bee31c4c6fc5674c92102870846bd38bee6e97aa0a4503e61de49056b625debf29169cee544dc6ffcfbca60c2e521501b5b2ebedef2bf2b118d6c216c4dbd26de584e80db78758234fb3aa54ae4cfec49d084239cd081d64e538e2e3c4ff5a9f8c5ff3ef4f4332c545dfd88e8180be8d6fc98b2b4045a85e7cf2e3837319e50fdca9a28cedf7893a29acedaa8e6ad69f2de0be84e924ca3b5d972ac662c70072fd94cc008069a950a4066fa1ca0a9846ce02a09e157082ab27e5fb78617a89b619aeeeabb43c7a3fb9a4e4b7eb67f3be0deb5a2b30363b1c59ce93818c23ffbff52404dac84596159e704938c0275ccda152d6685ecc06bb3cc747f9074f26896dd84fcfa84fb7f3009c5697f62bcc1c6fd7ed1b97dedd71e3b2e63d6aa8bf4e030185591106ca8f557bc22bf38ec63b91d541e902bd5ffc521beee799c1375a4aea0e1003cc4fbc859ab55cbfc99b285fdf57e977e9ec7609719787d946d9d3c6da3b7b1000013bb3ab6e2fc26bdfacc2d752781ca2363538bad2d08c5ab17b0ad9365cf2005e53d304db96af6ddf5dcd2b8f151211eb9c0b6b3b75d1125801acebf96c3659565a8a31a8d1f097a91d3b3b4b26df58d49521d73fc9b480d8531e60ef24752975c1bdaf8789a6c8810cd0c2b8369fe87817b5c52a95db75bd694100bb904ab4794aeae32266ecd9d8857beba2b2d634194ec236bce822d34bf3c261f714eb1299b1bf426be06b93cad09d2dcc52fc2cdedd6d7b37a4ea8265b08b3f3eb9fddb560201b27fd28bed37560bc85d33f86744231c676cb77a23f35cd82f2df227fe13c50cb9674ddd8895e7d815b6e0fb280252c418e34f3d5ff2c2b8815727bde5afdf8aed58c86f9021caaad5970eadd4ebdfadb6e0db25ef19097044ec7c10cd5930e3e4a1f54cebdfaf954daa120e2b21811e06f656237c78b2d658b6233cf44cfa35901291d9749d0623816fece0ab0438c13cfd78192df442267e15a1cb364d8b10260f05fd3ce6f441e45d0b48e3147b4a4628c7adb567a02cf047e761a05cc68bcf8703a95d9ba5c5f4c82bf032bdf26a3b8175406f63d1877a15c3edecb15eb73e86c682
+message: cf16dc59776432c2f98fb53ca01fee3058
+signature: 1e55e8a49a3bd09083d3c3d317761233462bee47285e93bb0614069d0cd61b2a46e915f8005c9b91207dbdd8ae08a8d9febf573c98e06faedbb6b9fc077e4925ec54ce1a788562b8e89a0bcda0b61c654215e8cddadbc23e007710defd0c46abb14ef225c13468f38d0c65ab9b1644f0a748cb7bdfb66812c8abad0754ffddf4c8fd027be6622e403f6f6159aa0ca75a749fd87c92477d2641dc6ee64fe97f295624e90a4e3ed91434df9ddcb8a7d2796772233e02737b2a17a0fb577e859fb422a0387f6d63bd44914d36f8b009fdddebc56c06cbf49747262d1dea9f5044433bd86e47ce00c27207b824786d839b81191f5807768d6e3d0a4ace758189a9012d464d6c5502b89694b95afec6aa94737f04584325b6873545cb0752de540d03c40fd8ea99a919e5306e315b0d18b5902188f5f4df63b154357ff8ea76ac0fc6e060ef8cc88df86cc2e9c8371373feebe05094b1eae6aa84129a34edf16f81bddd63453b548b41efd85c2a87e0cb281beaaa3e6dafa7c2e7921e6dc38396c72d4e7a21dd8bf17910dad21714af926dd40efd0e972f02a8178259b240b682b20fc28c3902c23356206e082f18b4101d6044e544d3518b67421183af4ea261f95558aa1f1eccd45efdc8a56d3acf4e4a6b8d5d877f949abc4df2e2d14e6541d3e00207a4bc2b5db3357c11038423c6740b7d707a83b04e24f4b125b3de4df15f839881b8151f2cd4ebcd905e52ff5de5f9f4c8aa10b3fe1a68f9f05e1f37dceab0d6f76bb489093534c9b9fe7bc5276a22b3caf67b4ea1355ddd60daffa979b59b590618c3992d08c13ef97de5f359feff052c2324ada176b100915c03795fcfe0127e46d71961b37065215ba2b8f851936538d72565ad058f4f5f3c0728058aa51e9dbbeecb8de155007a516d274f9849d7d7e5c220ec6351c9e19ba8be1a05cb0266ef12d83719d7a86c1b577c41a0a3ce751df5c16f3e7779e8d27681be3e2e4543aedf731b5a35cbefc990fd962d609501bd978e9c335f7c8fba07079a638227f77173178ef6fd1dbe0ae537535b02205ec04b13ff7b3b65687ede7b2ec3d274c7d46c4ba1ec278194ec26ce132cbc066ffcd063f8ec9ab508e58f25b526fa142267162fd0d077feb7b089db249801c4e4e0e523b1cb6a1033747365d67ce69fb41d97c0733dd33bf9c31e323679f0ddb83778c5dade4386f18d2e29760c4742e1b2e208e8587cf81ded26be520cf13dcfcf0cf745ead3acc0caaf2a4cf79e94c4fd53509e1a37a8aea43b77ff23cf2bd90dc494d25a62d9397d86f7c4c85a253108e54f9588c0f832def936b2c4c57396dba03b6db231462c5961a93bc368fcfa97326d64d4540a088934cdbc856242b4fea7a6f2e4beb7965d3fc7b9bb25f79961a3a295878acf43805a4cbc6cd31da917f73013e70e53b38ac6a965d186172b8bfaa0f79b575ba99c803def09ec913a49e6de980e4255ce5ff5be4fed9429c7e62d90b66278abee6070fadb3c64de031f9ad33dbbf873ba04b8a5d9e21b9bc8d10d400d9ebed28d6ef200147662ef90da32dc3db3758af6b3eee8450b494a7df7f5379ff22bc66119f7e6a09bf2b7b83e335c3470f8bfcd4ad5ea143a9374badc82fa7e9a2141471dff6b15347f9c8509ca2f179d6be25e495dd63b1a32bf1311ed120d0a876379843cf6aef5241b5451ee3c7526edaeedf7f283fe6e1ee8167e96c9832a897c88e51d039141199b60b12574604eb2a92e05a39fe9339c57331dfe75e19feec1d527846b6ed764e3df4218c09c1f843500d7e871ffe0adcc63cdac367860bed6b09b8e92bb553f0511d07c5bec35fb14e65ec54adb60c700f8f975760f3163114e9351e27dd39f2f742bbf7cdc2b6a7f89abd753d6f0590a675a3505a595930394d4c49776677927fdf34ed5bd7b1204d529046fdcb21a2f4570839abc8cbe11a277e909f00e55d4e8167957aee38a1c104984ac36c935c2fccace097595c40380f339a3e23d8398617358668f4dad58dd7d74577fbbc33339fcd16bef341397775e29af7089a87eb228cbbe491f871d8fa03f2f7d72e01fc9255b8ddd1c0648ade10efe5b5ca59fe04599b930501ffd570605a5c8471634aab4de55875925089dd480000735cf43b8c7f24413f90290a216eaedf8e39a4c421e7afbc80028dac31319fa611155086f2d3b341f5d22f2a4cbf7a319d556d5c26bf9abc8d4295bea10c0ae7369d835cf41da060f23914c8a27994411a3d11897009e601c1529fd88f25c196225dcb1245c884855bed6ef2297396f6657bcc76ab0fc643963a173e77071772242b30de12de4bd03a439725a211eae5b6272043e013e65c265a60355cef66172012adf551d443b65960bbdcf34a5668b529d16790db62cc7093719258a6fa04fddbab46069bc3de5dee7a610bf8672dac9752412d4672346cb184eaa319df93b1af93f2b3dab52a62f6503a935be085b1492ee8f2dc64bca5f85da9762ca74beab63afc68cd33d7d5dbc0219f8760cfbe1381abd17c5cba3a68d24bd35f5e88a8653692d6bcecf693e3d878c068543be024a436963a3d72faf2a8d74f91c77197b607f06f3923b564ea4650c064f51dbff6dc681550126d47b62989283ac6238c704e036da993f146335c18a402442652f9aaa0b9d5683f6ca7c7029ba12542a39123f8e07d5c4308a89b26919a3b3c5ac3e9577cc132e73379195b337fea670675130484358a9e975c39724aa058828cfc54ac9f60ba9b5cbbcf45e377fb9318ed7e4222a6ebb221899f17127c42069d8ae87ac79dbedf3b1af981a9c920dfd3653eef88c08d5acb05112e6496c4862b967ea6483faed1b6e25a137b5adec954546ccca82920fbbe72f9c6641fdcaf6c6c0a81f5b9cb01170110cf6e632e68a68944989b02e5cea47b428979e7d987b8aa655280a742e840a889d6482be00882119ad961a07d2714a0605470acf11e56d32f3fcfbd9089687ef2295d9274b441323bffdb4372fb885e5052870a15158f002ae16b9b2791e68616cf613f78d9ec1ecf8144e89dc18aec9a21b00c4d1f16548805567aa7e90429626ca2aac06dd111c128588099b1c9a136842cb1b95bdfb9a0c36d9d9ff7cb47aafb97bcce69d323ef300f1f5e9fe17391e871093c1aba5054008adb9b8d38f580e6d363bfe50b468e7b99efa4f6d6f49cb3e4b5a6e61c07a5f3db1ecb8e5e6c5cfe36e6c6c94108f8b66192f428a36ea4350230b26a86379085c4fff72b459ba6639d2ba2b309ee061a7e7ca50f1031fec1690967e4594cdc0a3fcae6c551ba55814be6b61390d61965d8015ff6ad6a41f064ed2f6500e69077ea21eafef7168736fd2b9b1847e52dc27aa863467bdf18635a8bc8947cecde2b9467fca440c71f47220791a42a0e3269daec1dc2244aea1e5d13c624ac16dd35e0047d723aa37bc308e1835fe7f8548c3f380b1363a9e1d2f2c38c18cffab20debe064052f48900e1f4db0bd422a842ad7bee0177526e7b19ad83398a9185b62bb3dd19691489ac5069bec65eac800646e49c1cf221d0ddae09859453bab50bc53b79a3ebf03f611423da5bd29d1a0c82fec9cb8bbda1767b442e419b8801862f05dd8eb5d1e0cb30112906fc2c897a079946001b703f619b3fa3846a612f22062d085fe4c13e24b3011d89c4e88ed689879bb7c864f051780986a78e6ad3a7b5fb492fdd72bde302440040b6f2177e4c14191f77e6b1d48f2a86b7eb7dd4ff6053766c1cf2cbbdc5fe94c9336c73ad66fbd60da2e28c2c5b7821165c9ddf5e4e51917cef2f30a7ce9863117aaa38e22ef9dcad87eb3ad067d6722ca0a19d29a202b15e5898cac9843ae4860c8d420cc77805607cfe09da83925f7c9b9c8568fcdb40cd20ddbaa0102416542ba7e3bdcc76890e1c5a665d6a1ad3f8d852a27e2f5224aee2d353d5fda846635979cbeb2e129bc6e38f12775f9742e7f9f75ee414f8e18f69842843400e922a362daf31e6c81237e964cfad654489e5778f2ac4bd5e853674e7cc2a74c8e98b69948b95dc4db95ad2d38c5b4f2e854583c5a36e4eefc8c20f55ecb5254c49e47a18abe125737bb7fb5ce65ce40b176d8d7d7c40c3defa1ea47bfe8eaa790b174939029a89588480261ebeb78da98326106ae5b4d2d3284168037a5e5de386c0d3135997e14a39dbd2ff8e21695139c6a9dad55073d0e6ad8491569311e2c7f427af80a0b86e381a849858abda85b280c46ac7e4c1b9062d95485c36f92e9e0849318bbf60faa858d9242e44b1a685f7d75a25eb3cdfbed60e4e1c13681eb930ac143edf73b496f0f892550caa5807a9ba60fd631f7534c742037cdb5384cb0e2aff302b1455a1ca52a7c797394956b7d11ade07ebd702b008009879b9180cf7d2c2870c6c5d0b867fc5c9a38d8f20ac924d9037aeda3ea2eabf2b85e4418f00d3d783bc5c6403f21e0af1655185d4b40944a2def7f3f385a9e661891a6bdfa6f0ee94e6a842a0601780a174c6429dcfbd09197b2255e97f4e82f7f222fc3cc74d897e1f630b7116e94f1d1e3fedfe9557a4a50593d1e28df5a2f6e9dfa8f2ee79abce0b55588f97b4d7f2fd0f567da0dd1829686c78161725262d97b2bde2e4fd27788384b1c6032655db000000000000000000000000000000090e131e2428
+
+sk: a15db57e2704c6a6eab469b0b27eb80c71a72a9fe1d3d615533d1ccc0ea5b88e2109b7e286e9e2985074a7e944ba9c63c711fff7b5973949655d9766f8ca4596650e923de2d7414a282f5e2e98b21b0472baa9eaf15cc972ba816b57254a3b0028a31c0a29044cc765b64d54c7ed6961fcb1e6589136f35ea94c7f8538d522eb1550006735077008476853324604668314460845480253873262428175507865438737500476814421403015727531640843167048002311254583445128631312841342135487512002787870887023085707668262718805148573455278504155434553650151655742781074071460701113375831852144101363541081565435640687681381646325612842074206736056713022877558075333667033056844313084605180435782845845638501735154720820238576437117274182511687532554824854810414207332685727853780767772273351776245222225558526831414277317711110033645512467618037154052042744450264255632221276360348134320848744632021557271544770303070587376117200143534830853178610248331241062480887628847688584612462535408504242368252254272000218888264078774772142002360541763427355080237841746128654216415508005148580035217643011611388436030854246074387574763388758363588761001173514631572445161342338733044447450788534374828107537726766324702767031488865401388571028658243322507524131033170203060122146247208260222720017567100186884311048655510012473481425250135735453620888254348535188154736663844304850334483333378731802012041286262561768665237465700206835284511876067655367320184480285063731720516188167257262640845686238571651171133533774673750382603546343547854436072384562825424872617457312372448255055723366880076033423054083128474873101257463715801420442441610546788038100533543551105881380717327602862533256887054016202507004258841321003710382811847010024862683564407266162026238354025885428722156540180020057526526740144767755064778435062728241016421178054164557074710676136050311540320470173817552336460708514012681780078047841566852561380812637207275675055064821018545644087450082774116042460768022771636324252810532047561108661356825072720208437326801187085043626337636371836846817230082201848072687702057266728168852101178284245748741887230610470524240461703853583485542100035622820282247861086720155782006660171133681452615511380781120842608052230450606683754316521042418005857762352338626060836145464281305120020572033386762213110462557550384302120326338568815710444065134503021437426315502730467834247436665188725447756050234336471251447485101012845630824346151187541222734416620778408736882074133622540372325666206043270668824687726516448363577564042385832675871065585836633147006745476838207608766541270285467410537156810340644121175554140522807310481603418406781281778574675571558550240805376302228324084642550855161617510403344216821472825501825214610413557428176205624730627338284771477646453203515735457760577564343468228631584506145544881661551715853431616157567436556762045562014661342142586802537600382408758475561107176208730147260115480815875475378465728748314427857113145018510711201100642075772064621084550321866181843048223338510564176021028022075824642046050118101154427406225321311130603734818726165267167638826516258274106525087803738132481627823638863673711157228ee2d705eda607d1e4e9d43db69d6c445935e719b5873c12fab2cbbc83e5b07ab0cc5ef4dafefe67a8736553d883fe1df174016bb1530e16ba78e210172a734c5242db937a44ed29374d90f4bdf09c20eb3a6409f64c2750ee6e8b196f50f1dacc544bd74aad68fcd6cf5ad8d203e51ad72b6a52510df51d7307f967860856ab7943898b815739047251c1dd2f37f243689f44a9d188862cb0602e50cd717e48bc2ebae6477b801948635c751af0b88361603956a0ed6689ac8710f748e10c64bf65f87935331fda613504c94e5c8cc767247f16f05f04ebad76c6dca4e37590e71e2b6019d2b23094ae82e54cf66dabb912765841ccbddcbc55075c4fca12b2540a2be9b1cf6e989d71398374e4eb0aeb3e094cdc92722b46884c12f503fd13897a9bd1bfd34c61a8916569d163b7f40d81c8f2f2d76b978dcf0e69baeff098b607764cfaf95ce8b736dfc94dd41f5dda4deb24566bf9e4568c7841075ed2f3d4d71e4470b034bedc6da855bba273316440325555c06a94e9dc340f4f3aa4715bcaae1f87582fe1d29a202c55cfe0f171b29de4e4884036c7f4c9a739928100352272675da45e861cca6f67836405a84a94e79100033894e46bab45815c51cc3d89e22d6fb17c9f646787be12a392bc8f78872a26e673cc1289dfba6b4ca20e264b80c8200cde5fe9128065e83f8a1f870216474f3221c9dfbd18db8e46ac31d385517d73ee82626d875856d3d8a3de0bebab5c7a704218ac0e453745c3ac1aa8c2c5c9b27c27752b493661c539ed8f08dabec339eec1cd80876ea5217ceafd4783a70ac01da5c362730c4ffed51c26b1c7140c00944b708ab78875ca1e10d274e10b2c2a0cacc8d9888246971089dacf46ed079f9887ecc2d795d6662d72c2f94693b6b66c1ebe9e1917263a5cebbb3e94b8649a1ab444092ded0b937794fcacb696b253fb697eceb9b6665907b55c26cff3222f64b73b14a8e7a19aab5a6459f19ebaeee197eed22ccb2191cfc19b1994276056b5d4715ddb859a54d8d98aa884ebf2b964bfa3b29ba11a001975a4e5e5bc82c207f4960d40aab99191268303a911d4c2bc533432e9412fda54376a0875a3f2ef0ca7f3e8d7bc9bcf2a284549649ac3c140544237047d71633e793efc1e160adf5fc47d8211de67a575eb8f3b68cbd0028968d70cb353b65487d13ee1181045c55037a48a79f3c0f647999eceb7c356953b111b2d7ae1e7565cfbfc00a72cbeb6cd8c126d883e61959bf7f9c05ce0b4a02f5e1cda37ea24aa6784403b3f678c86e76cb56651049bcc6d8cd41406ca7b1bfdf29f76f53f9efbdab425cabd3c8cd6835afbcac1b49b8f052653071b780d7b5e994ff78de59e593a4dd29b65c6e49fb3139cc5842b3b3b886cecad51ef9b9ceff791178fdca54926952c7f811614220a37279c84c20f0a09e37ca42be83b5a5f97af595d2548de68d92e1a9f89795f1eae583863adcd1db74aec01265c3e6b0f923302301f8232f9e187996ec26d6effad45ca2a27d05b5975134240bedb05dcc933670254063b1bddb8f7fe4d0448ed53935aa040b8d97c7ecc8162ebc07c8c92f5119281fe2da6ae1829d7d3834bf851b99195c3e788a1e571c65aa66a634bf59802dcc396f77865836b498eb5762635fa1ea6ae78728936bb1886a7d4cb95aca48d3d565f7284bcec0195ab58bf49a4e59244e155a66bc1643f74158561388167104425f04057001590729982f075028922e8ec2fabf2e6d3ff13a220bb3d6f82105051616f46675d2cadbbb20a9ba6015052fd8e88562a466565b5e0b29a88a5faa6d953e01e1ba9fa2583b1e657fd63ce651be93b71b02e27227f9851dfcbf326b387441ea8eb6bb6d45ee2858a484316a1852612f9f3e0f025620e860df19161d7b6b2e852d49f2e0a0b97acdd19eb2825ff8ad6f37ca061e9e261b5f289e388d21507cfbec348e9be50b1c7cd83db7a42c1c59183fe505b4ccdf31e752d8e1526d6b656741a19618ca3bf9a628ce41003528f2345da4975b19acd9979c60f72936bce787cba2271a791d7daecf911dcad0b17c0bc5bbd4983a0090439f0b7dbd3c100a6322d4c521fce7e7b7f9dff212775981961609ec91998fa85f541ffdfd667c7dfa5072e6af45c1693ac13b62d3398f3c5aa4b04e34148fe7689964671250834af4fc528704888e5770b0a1c8d04a49fbabcd4156412bbfdcc0adc06f1d662808ff4e70dd2d3182e2dd47885ea23aa5137ea3af970f156c8078dc7c27cbf2406cc927abb29009e45ae8a1c870bfac8b04edeec6b377c336e2683dbed8390044abd6ca3b92e7b839d47de433da5b24b9b4dcfb0e2d31231ee58ca51f2c6eb70dea92ab11a5c06032ada92d0f7a045e02f5f10a4357904af061bad83521b9c9f3906c62cf68a5e30680f8e5782f901193094653a06fdeeb8da29b13895e60ee033edcfa1a3fa175a0b96fb8a98a2a78df4c8de9716f4a2f286ce4bed75a1f125ba2974f9554b144743dcef9442893df748d950ddc832a23f9fa5ba84ad9f21c2a107eb2fb9c243f85118f00388007ef20561ed47c1c4fc0ae9f7d195efc1db5cb746041e587eaa6f33cb350e4a9596cb595f93da4cfce2d35445f51280469bdf74ac779d00c0f076072b417dd5c8bd0824959657040924bc8ac69accf7ad7a7ca5ad9d4f780abd905b530df1f9530883a366331f8c87f2134302206678b9e14f6672fe65440796d36fbb0bd3eccc91add03ea0bdb347e44fd0bbbd1624600ca911cb6b9f2d39dd787f86cc1470d7285907f134893aa3a1f634292301e16ea1a6911ed8f5bfa0f665d16d2ed066af5d932f2e3c75efe76825ed51f64c4da93399990dca4d97d283482d7adda07ead30037c65cc3e7a3fbdc9efe2506c67fd593118bbc8eedb2e14613604d2a14849ba911abae993523de930ac7d5ea39b7982ce6733adb981a3c081cf8b8dfa394c54918cefcf2627281600d0295159b1af6d36071193b8fff3f7deeadd39c845812ebadbefa4997870a8554ee6249e2164d7430aa0927b6022672f600a2b8f1826159806f1ab6b20e3270b5a284a50be6fe70cc2c0efee40f5993221cfe45d460c32bc98d298135aeadf88cc7e723a309cdbba36640392d35acde3a28d635a44cd1cb802899fdc877ff81c4f8025e8cba504b623fac519b3880ca1aa235644155f7467b0715e9195ccac77ac260b4bf51c2dc2a5bba438deabcd6a8607fd1d7f59e0736ab1613b7bcc2abc88bf7d6f21e057ef8697ab5c03829aeca69380859e05daade1343f4ba5d7ded1e751e92ffa4b9c85c8333fd4018d606ecb5a966c3664f84eaffeaa3270cac5a39b56a791738fde214b90609ae969506ca7e73f3e90f0cdb2f6ca2fca061fa2e6671d347b6bbf3dc99385d1dcc989e80b255eb463c947a14b99e832d90ccd48e47dc3b04eb7210533a81cf95d16331554de21d520a5bdfd68b0d68bd654357b14bfe29a7db235e426d009de1e6b314741856919acd20680e2e220feb4e
+message: a71aa68978befb4642795b6b24e55f210d86c956ff46a8252daec44f3200e5ee
+signature: 487c9d4840caf2d93dceab67839e0784fe17b31dd2bad76217aeaa4b53aba391677ac5962de7120b1b10f6e0957bacdcefea80b2e9776a7d7becbafbf933f2041e24ea6cd5687e82ea78e58a0a470ddf43cf800a049ded93d4dd0315862d3307b04db13133d0403773cf0a14c395c85a86369d424b84db87b93be2d6bbc6cbfd895f987a1d5e24e3d056bc23cfdc9ddf1a3a9c44b6897b68563f9db61d8aada3543a1c350a7a7a753dbe7b6e48affa9273c0dad0173a3fc9850ca3a4432764c0ffeecac83327fbb40ce9c5062826cd660267ca703c4fbfa63cf524fecbd70ee96e42c686b9b20f9fe254841e11da6ef8125079f9d5ecbf99f52af2d183eb83a322fa83505176afea04a8a6a6939acb6b9b9d048cd5cbe020924c881eb2d321272d4290fb0c10a266d36f5278ff9d543c70c36830db44ffa2394596b6f143422965f796430fb35b8e050bf1b7ce53c7e3504012a38d806d1f499050e11da53af5da770ab648b0e485c45bfe84a068fe3c90527146523158ba9720e7246e640095d58309d6d4c7d3d1e817075987ee6f4a5abb60e2be8a8996a9c27b87849944c09224a23f1c7eb6e23eb3a7c51e0bacb5c2b7d451f60be3521182da61da949317091baecb2589f69b93bb740901e1495a88c1a695c241334bf22c713ddcf72906c5fce5021bd4aa118510625983c739ae3ec576d16028bf1e71f611502391d71fafb0e2af512a68086a15fd4012323b92ace0bc9f8f6bd3857cfb85b02364406004651eff2bc3fa7e516e1f0bf19332292c49921f04537ee7bcfecf364a1ffb7769ecfb50ecec6d2ef50427193d3df6632a52f19ff792c823de7223ba2d58e2a84705ef5d67bbdbd16c3c9be13dd47aebe0eb126689f34bd792b1d4d7ea7596e3868c62c2f40ad3e2b91ae27797797d72cb6a91b3b827e660f8e353c9b35f554ac010430644f440c4e64418a9980f42d0885b8e9ff836cddc5a7b04ed1d0b399f5893cc0dbd475279693f251ba3c9c68f5112f5faf5def3062fb2fa007478a7e74950af47db1c3874ac6b6d21ece4430877582a213536af739bf9a373dd83622f6fc7130b964b443c51fb910ab8d90c0977d1b23395a7cd63a1087650ea8ab5071a8c48149c473cf1e248c50cb5ab9b804ac0ddaacc64306370b4bc1ebb5c11292b4a31daf70410caaf28e77bc4623f6825445a9a3b44c30f535a947fc1223886106f379130e9a566c19781aa981e866541e1955727112262cc98a8827e3f6a4f28a3526f205ff4bffc57ce6fcf7e18a212b0cbb1d21c6b97504688b8a6761842bf419db27236255e6955b6c3ad0d51aa1ad1f865819155e2b4cbfb47e347b14a9009e37286582d6b524877cf3550de54f2bac20c0f5ed4ad7f1fdbb2182dfe36e0c9bef7c887a11318ba30b6b34c59da530c71f86275298c494528d31e3c544de722d1a9e8c9422a98855fc3569897231e0ec31015c2bf3e79664f5bac696f01dce06c035a40d86f0ee65cd37ca9c5e508317426fc184c810ffbcca422970c17800bce20ce2a844bc270ab683e2abccc38d7f640c7cf8e23968a700a9d08c48a37d2cb2c87784e3d49c414a78bf73649076fc8d9d89afb7df211b1f34f6fef9f60f5eedf23aa258578d9969477f0374e0b55aa33b95a91f533243a362f3e83afddacb3b306559e06c2f42bd125d4fbc0cc36af61ad0d4a3b74c0d34035e249ae002d91e9838671a4f569fd2305c7af2d9b993fcd637e65756602106b855c4ecd2f30175ad54d402bfca29db4c22747425bdf8838d730329889182bc6505c712d778b106e6945ca5f1c67b3e5f911f38f1a52298b8fdc05c49bc5d2fc3115d1a3d3dbcc53b22aad7066ef9657b178202bb8ca328d1aa288f7c3058b54aadd366f1d63cd5b7276d555eeea7857e5a06659dc154af00e30706d536e55fc02ea298851d79afcaa580b5601771ebdd716561706736af5494d5a372e146239e97cce8f175e8bc439eb921cd30cc5c886f85f1da2baeaa363335a9df825596259b47f99821c6b2f5badb1f386460eac787ca3604100ede3b301a8c2f91229b3f381860b433a65a5b1e9a2af8a51106ccbab8bab551cde315c02f0f25bab56068e4731e9280cdcf65d2c92bc09ec16a82b93293ca5695306cb6a18c6552cfa5cb1fd66ebbf60d04a2c5e0a383624377cccf7b06574c3d37a4155ba6f629decf59bf2190d5901435e85b0f3b902f73d6c1b39ed0fd5eb00d1e64a89e91beca3e2c58435d5906f77e2dbe4a33b2f896e15cec755b649383ba1e0af0854942b8ba5cae7fcb2ce442028e4d95ba3b49994dbe768681a34fbaa1ecfe12b3c00e314dc1d952196b98681c6a341fc3fc9799a4547a4935b8e485ed9f257a09d3de77199882448fae19aae01d8df2b9a786690382f0113e842248d9c5f0d1d48ed4eb6a7233715648c309fc733d28c01558d34c03f2c7cf488a69582f053770fccd404f117a652d0a2d64946ab3e840eb23312d9d991ae3a8da67edf0befb1270e2dd9bb6223f89dd2cf47c59478a50cf7569a8c117d9372169207811a04f8a44f52a2b2601a8a31874eb99c92c314701d3049f7e4b5061e3e6c659b44868dad0167a53359affa9b8689cdda0389c271e31b05fd388ee78ad99dc533ea5a9542df4f41b0caf492c45a7490ac818c8bb7a7313267df614a92ece98eb248952d3a45635feb3e871631a7ba6c08679730c3d46600d6d189d139a16481a8fdad5330fb94851d57ee8ad944fd71a1781a5f3a9289df68302ee20aff058922312dc1add1e0567b58a1e297afe83f5f3a1e110ecb58d77920913c2ba2c9b061145bfeede1d11ec3238f037f5cdcf2ac68858c7f2d7aed354c930b592e9a1bcfeba4c3cbe025d7fadb9ef557b9423e8b039d79279e22b7c33a6334b9f3013c312c589e55e18078516f28591a8a7ccc6988b17376ab87cbf098a5a0a32456f538e9c4969170386dacc4c0a4f8ba73be95f6a3c20639e22bab217cc6bf363d2c12023eb5053542739fd979c5cf6545468106f7fef791809cdacbd7ffdaefba380b152eb0539df62e956b33a7dcc9ecb68439bd2b8c7270c4bc75699f7d71929a1f0627ababa19442665cff3ebd0654db0cba51913bd49c8195ae82e25ae231a1c6b50e660bb37e8a19ea02b06de470831f58edf5a107cc02c4589390ca9d1c547b7624c3141a737344f91d0158d968a45e594bc1acc93db79e734d5f9d4365cb2f4eb35dd61ed72e2d0e724d935a258c7b70061e8e902011387b92b6a67fefce74d4c79c2900baa5e6951a324f55720c3a1a8d924266d1681d3424343f6541815e23ad948a76f1ca76bd3e57c86b76275f3b04b752ea4f4fcfef729c3b8ef4e1d643efd03cd532528b07f7f0f656ed409cbf5de161ab7a7111cda3a052bb9dbe592371928d9eed08c412059cc829769b5a002a97fc5f8b884ab0ed4911c09360e5fe22645f0f9590b510ec1f8b9a7486aaf2869b3cb94801c09678061e5da3af9e610bc4b4ddd761dbca2fa59a0a2f27540e881965e826b356ba161ae63e95058db746ca23fa28c3b39e55aaf7e7d0cc9a4824c0df4857ba720707741e5088ca8bc0ae6c2eaa5831ca02134ae3acf14fde282847d405aa187c04cd53fc585cc2804523fea92bd52dda0385eb7efdcc14613ddf4bd8bcc128b2630e84020bb77210a7e6021540bcf8a06d4811206b1717f9c3fc6f4586f98439824212836796e706d7c60abc87c71ddeb7c3dc05f24c10fa8e28c3300be2a134c866dc2be66032c9b275828ee67d5244bb92c2012735c692fce9a82e7d500f43f1318d4297345e2818dd2c19a5958e42c747b73ad56b6cba6628cc57181a8045071cfe96220d693ae4b09cd1555f842badf09cd4a50cc9e1556c0744700cf5104e37c5ec49c2d47cdbfbf822c5fdb6146b4c5e7ab7f78aa38e0262c5a679df4e3b254dfc1db54a2411fc98e48c96f5486ba61bfdb18a2e67bc11f70beaf05a3c4f25c22d6ec615569711e2a7cb6d8128d64440388721ad0f0e0ff5b2a9536fa11701ec1cb1ca6e38233bc8e2536e9ebfaaa438e560f583d1f96f1b5efbc3aeb9823ebd73cef63f2b6f3082a7f76538584abbd093a250c9760e949f7738a775fa6c592fb10eb2f3203cc92e071793914e17679492d0452d811eedacf23bd32a03ac717ec0a448273d58744987ac550244e1969d7367422bb2cd2ff8430ea16492f579a5654c843ed87b040fbea6d908280f95695d5edca906342cebe25a53bcc3291c2a5033c55c4b5abb3ab9238813de974b47677267d84d6ae6fb8bbe4f503bf9851f9584fa7f6c76cc18460fae5e6f5e4d34d43ec15b03d37506e56167bd40de7a241b6ecb999523d5a10aa37c7b19c9531d654729c493b6815eb7857e5410649f4ef72cdab628fe2b1acd86752f62e65f7cda006d0933d55ec618ca37cb9c194d98a455966a5f0260ba605e8133890d9dc2537358027cce49d9893d5c1a2c71d2c970ecf77c4b0a7f575faed8b235228b6003ca6f08fc20d00bdbdd5602199f2db6313b419829245e336402ed8f2253b92585adb69fb7169294f6c4760e29a43b7a94638ab11418666a7f888ab2080a11215b71b8dbef78888bafb6c6e8898f3286c1f800000000000000000000000000000000000000000000030b141b1d21
+
+sk: fefcfa34713a2252985dc0c4e062e8eec75badfcf83f799b572ddac1f0e4399a055d29ca204b271e49416dbb6e7edd99626e64e14063063dd87c780ea06c78af19d904659937ac8aadff206d9597f69a895602ceb723d5b852cfee428363855966ffe7925661aafdeb471478d3fe6ed4ccd06faf104a59fa20f61a4f9a8e7ef545743846302528012812746602036376867382651008232600723642068087148471216813826437884611180533554865404865334274336742823385054883215500058420750022524285808311188475342227355182870886031814731357850726856301148180832324827272222744554141084806248756320581251652643213137476155462664344512003550777163640373877555780088207188808804744024670044714068002583638832486763341175765884021140656056831825437080341205140070737240660620124737353668086334128661458637348671155811865501534131011347665664771627233773686782545727878666400807835843451187345380233381675402173215027538072482145850106760463502861702300687413203845140162025667280265887864517623517270042628132767206278654734550608815741562107076324576188512520720610854615602738314256711418883277442414621754204501764468647784358327867171252724787340076245040615284720028456332002770223878326275426477811581144251108448604522770062730180185183757872105405137018122360340163146784853287764253100421466363258416214475617620015668275056838283555161355175250106736055602882513672516180535110853450221726486744472477528501048326326622084808502380040045360367655202873775261275388304321821880244025677140637221717552871885802874853743743732554680238518066564817748154485844233236162547417168335643072826016202408250476286384234002438187084168738228830885546826543541628271228476166380478288542542770620703015115758567422161027187853474084087481784127748010337772624012258680434280473080605236504530543336821101560314727643783026714616540287510736528880000217414470278702783724865533805036458001370306724040721508814671460475054551364177301205646355205734801847435178148386203380735068822360701677168444651124576815722828175365227468464307644148057353428183144674873705774365515522558036575638170483773200380767388013117432476552210468824255846610570724163884200527331536886400265673357571652638345245516630800730620774077384137485638563408577224725051505515365403507367242638316746347770768373472536127153475507510073773082547684338356356186116713227685845514233584268114468872372173211832756470146458740338743457460773075640360668111282620365622102270435411212140361566185577433838585068860842427473414462676316240820555801074423353678570140018405642338156267060025530644273306281866538253840586364872614652816046210160612880057823142805532225666824450238612337644731500515276762682427038658134805308136062848826386843638312028483778281823605640605808427007257162138112073551676433003538570007163857434677426501041525381523726112070208802260606321841185422870405058584580382861470864765206803651871801878187582371376265706182571548186635778032045526212525402503715470533606624822445248448087234576270801442750452110520753330857862474310114486531070850447834508414334555358881702141083732008716151866126373775468143054261014011422888088103151061866787734218364706600732362a351599d12b07816a3520c407bf4ef1c877526b78d89f3708fb6bbf849e296b2658cd3a452ab56cc66bf96ee1d3ce8c39a5a5544313006dbdde52159a7c78dcefc21a393c956f88021af17b0066ff64be2676be970f796fbd4cddd9af9b4b8cc4e7c14134421d4f186786599bc671cfa869f8bd0ea74a6319b57ab78ef0cc91fa9d0d5f06cfc3aa2b1dc2e2a7c6bf9d96c41b921d96d5ca51065337105a9121408c8651b78021941c95c371b6f94399a543209f7af6b63b76cc2f2cc3a2b57b245541b0ded1d8b569f7ce92c62d2c08810e0601fbb3452b6d186649b8b511dbd251aba840a5f7a0c8b1fa773b2ea895b4756a3aaa259e768542d60e6d50498e2f0e652a072878e6de48d5c3418a0abf4daa4e775a4df5a29f8086fe122dc2dbc363215a4ea6b4bf1dadfc7d2b5f7e07707c743be9fc9d01c5068ce625db093fc40cb9087c1791ff50f3cb4950b70cb4b370f4e7ff85f83c051d90f73abc3963409077735b76da5d541260c21974d1cee77b9829c79e40768cf64d2f68d9bfdf39d10d2649c14bd8b1c0ce6a95bdfac982735be3d5612ac8e4d5ef8479712dc186726634d778d5f5535c42cabb8679836dad6cc73db00716f731498aee983ee29e93fae76fd8461e32e5cde76585516bef3a4f945fc83a15d55ba93f683dafb7eca8e9d01ea1071fb2fb247f84e65e394c802a2e73243aa95e5d853658f1ea7b64b22104ef5f19153a05d33b40678191555920da523c90ac0417a646a342600d59c7c28918cd8d60ad1da6d108cd7978fbaa4983675c495babd9fe9fe4b7dae8a9adabd45df536310b4c982916928554b4a952e035e1d099bf42c9ae83961c05c3f4b332c18cf66e5aad84b9d91dfe28156746bebaefd361fe4d5ea79e74d59da7a1502d9806bbf1a28a37c5d4f3349d4ae7f5dea34e49f72b82911993ea236c13b6800fe61ff9275c7e4a3034df628c6d88d89e17584f27be69c54c6fb5bc45247e9ebe82fce6c7792f5c51febb76d91134c7ffc4d5a2a5633fca45e41883be1cd153d254968599f8a08e781cae63d869f5a9b77c4d8ea360a647d44361b3d717fdfb0c3070e7a062bb1d3f605e646a6bcd99ad135dd7bba56653641a133eff4aa76f63ded616496d9655c4327f82f5871b4cc025f941541038b7c725ab340cd7d06ca445c9266d45325eaf09282d2b43312a6970c1465269a10d0f72d74fa33c9057b64f9349babaeac6724b6a84dc969fdae87f94acf02be8da571dc664d268a20531ca7160f2f8f896497005000ed2f52a7d986515b983bd5d2d010b3d198d9c15e10895810238ebffb4b163f009211e90bd481d2d020126019c7dabf715c8e0241a342e18a3c5f57e426018bb3a5e4ad60446d2c58b979cfdac7c791ebdf00299159595981a21b6f5a5531f4f874b06932fa6f1070623efe5f22319d889da0d1f9954eabea275829d8293a83ad979544adb5d404c5ec6f7b603220834ac9e45bbb654acab632bee69801825a668b06315530def6fae3fece23fef9087d1ccce5a4351ca1cc29a64e6cde7d564fe508c749eb9ac3752dd32a625a82c3293b76263ca80a1b2f7d79029c353b9b1791b76e9e6fda87833cbb339d9cade710a5e7aadb77b7ba8cba8af7d55acb0d72a275758b503210ac167d989e9c20c15f7a7f53becd28c6b9844480f559183b0ea63b1bceb00a8b36180db78cbd54382272016d63eb67447ef8d6f4870a317def1f894fca4100ee31824614ac88177109e2a2558cfb82aad64027775260fd26aaac5c778ec46109c5bc3e6c822efae750f4c8d6d89e80e863e9db1c9f6392319885593dfd5eaa4bb65c285e61d340e88c41afc5e81ec2ae430233f3f6c635381c98b68a89926ad43d9e06a78d09ce7dd9344e0da7061df9eb35086e553517c9e01c8afabc1bc919a26561046385c90ac6e96c065bbfc259913af41a51dd256d8cead9d935a3f4701cae3b1b7948b22098c2d5e67c5707027ddf5d7ea5dd4aa45bb35e2e625c61ce769ac0616611ebd366063484bbe4b2bd68ac4d1c0e88a07ea98d958c147cd16687f766a80854171744dc3bc59297fa8438ead7ae8b5aae7e4860678e776375e5c9b53ceb3d8c63897a1d9e51b0a117402c81759f169cebb8be35502a00395510c14a059ba0786577b546f744d9022fa1a3d696a0f9daca543b3464032f62dff3d29b38692a6bac84bbfa4deff3b49050e54edfc94fb0d41b09ca77f58b667b7d91192054f64cfda1be9c1b32135b038d791b3145d57150e4ff97d959532385f63f215463c0b9c356ae023a5145e417ad1d51e005cc08d053b76a0e3e42b2b180e40de7c0ab7a6258c0e638af322cac82e892d5c54dc4a350d966011c23c7274e0340ba9b6ece5b25bfb1edecd8ab669fb4b888c4cb1d74cba29b6c305597cc709bfdc457eb0fca6beee738e3bf42afe551ead8225559788b6e018c2cd3ab4bf04ef27e761f3d6b39a9374dac6c955f83155bc898c2e317a821c3dbb71d8655ad18eecbd013c020854bc760d0ff52fd03d5310ecc2a787d33be4a270818798c38bce6293e7b0835f5b32ef11d817b63e953aa01f2e4bb704d8afc00d390a5e0c66c33ea430c58774c745fe0d1bfd94ab6bf6e96d67e93785c187d30e225fe4f0dcb9527da94916402cf7e907eac7d9d2b0aef2075bfceb09d1b64dc6358ded5ac058ffd8bfc2b0315499929f56c597f601608c3a80a6421038366a4bebd36ecc71c0373e72e0d2e51fa73fd8793fc0c26dadff7f446cca707d730cdb7aa3331922a50d6a9fbe341cf4d3d8fe6d17aebbc19d5ac7eec7a62b9637f693c75e2283a6e1c552c029a93e7f09973e1f1d5ad4d0273cf2b797edb53e7c51c35aea6e4137d3ccd1ba0fe8e77ea131c0ad7d8d64fecf83cc6ba7f07219071fce940dd37bde66bcf9c18d81dd8ae97290e617e2fab197c7ee17b273b429ebf303943473966d7250003de66dd9cb139fe1bcd30f50bf7d5a2061084d5fb220250f12e33ac0cdbaac6952472bb29e458c69a0aa1c8a30ab245b01ec0ac65d517821c723ab90ea4e6c17ad08b78ca1f780147b302ed0be155fb739e80249b9672ca3e5589a4c6621ac29cd7cc82a0b477506c1e1c64e9cc150db14953d8ae61756da8d2eff8e949e76e33cdd81ce1964bcc6a1d60d8ce67491165b428dafdb995554ceb60560e81e16c7dcefcd473e292ba5e73e6f83596f1927037bffa7284fbabd42396f195093dea9fa8b01e8285630ad2bab021d9ea018dc18801414da9e210f5f107410a0a9dc011c2ec45c6efa3d1d2028607846e2e6be2a097193378e22c4a6b06a92a93d8e2d7d11e6030db2c8ac596aa1e564941ddf8310e56b8da0cf80daba452cc59689c83accc7a77ef2947c9c5287e325d6fa35ae588d80b21175d893366f69d9c834c485d09f30fa343ebbd950fce1cfd976daecdfa1444ce9c27cd06eb9846243850902a26539f94c7f1f76a60a3c59e4dc56fdb9f828eccd5680ff296703f9b1e09fb141f9e9970e1
+message: 73b615fb606ce2824dc904f9f62b7ccce1dbd7a56d40a24b7540af78
+signature: 119d6b04201800ffae308c96ad7cf8c89ffd5a538121718e6eadc9368d84e5691bdbf8bd498808d220224a31f6bc54c76568c2501fff85d921244c45663abe64e0a21f08e951c2a92cc60708fdb008180084dbf381f76359920e939fbc851d7d1e7374712a24e8ae438ed876c458aebdf7d87798bec7d2db0d85fcdc694f1297bf23a020d8831681c78f093ab34a53e4977d023be7318b1e59f527ae331b204dc8961b0433ca24696ee7d77a46a0ddc05ff54d2c2f9fc1e7cdeb4e01483f003237cdfa2c88094f10892df8680c8bf53366fe5c5aa43e972b286f4eb03b0d2b5f9e23cb8a60656a1a2fc21e901f800fc87074716a353495088b041850cd4e57a334679496fd5022134b2bb16f546a69de28d126f0ee60b2461aa6604106a91b06b3195b09a863a38ac5a82169aa1bf5bf320d139642f01c747346c9d90d4604d4f900feeefc06b1dd4a0ee1a2781c4b1c3d2d7311874c0dab907e22aef30d7ce2a704d1ddc230259edc56a6b33c7d60acccc099988416ce67c04b03750a54e25acc6e0ff874794ee47ce629dbbb0211703dec83f3c07d82779308f52a4aa1c820069c8d07154928165ec077286ff0b29f1d5a4fcb0bc2ef8638562ecda0eb9fc107c94aeecee7fbbfbc58b2b5f56ac01503d9552b56e72c2c6f7c324fbd56a389ff86e8bb1b243a788bcc11d11b72d0f665c50c60df9fb3baceed99b593f4fae15f8edf520bd6677f72f83c119c2e570bdd2ce25d4a1796156b131945e82ec84cfa66866a8633f210e25f7db124cc86e05e51929e77fc6d32b8856338457e01d211d973b2a5d24c18e54121dd85afcc754f100960d8881297d5b534bcfbfbeacf0096cf060e630b6563dc931839d4765ddba8c864bb3a7b412b811ab2c028df00ce00fb83072f37956d29fc372c518bd8ad3f9d57d60551aec72fa96505559e6308f3018649f82695b17089e1a3cf1413cfe11e66cac63d644b7e04c8ea5d400bd95521eab793ea5dc5468f1ac823a5adcd89c241b0b701c27d0ac4f9fb3f990d841cc6d3827f3362ba78d8c82407eaca10f0fd274f84b634c32d62f04a472b74243366b1dcbbc1d4cbc3465d16cdd5942563448f9938854ac9c9a5a8c7ae5fa1964c829a35fce92d5b9d115f389387986828b281fd95aab714a4636a435aff08525f97037c7d0705e5df222a930cb1b4946721a6d4e15f155760d239c54b9832f84619b4f31dfe0975e781eaea10c0ead519e7e3b873cd9f04b03c64a74f232e7feb8b4a47b4481a1a62826ef53fff66b3e2b0b730ddfd86cb378ad1b600672c75a65e3ab79bb824802f709a12928a1d5abc678f2bb7c3772ba853db5901c2cb08ff693815775a74ac4cae5fde9893a60e3308791d32cdce57f5ae1896333c2a2f3be3390c5baa392cdd915bef5d5c7cbdb6d75f37546b805f7f767ba2fd716c62e0b7cbf97159d8f4cc24263b2b887fe30f89e8b7f078bee9aa45611fb6bf10e73522bb7b4572ca59437f9af6b91015826979ff8625510ec12694b3ce551dc233722a1a1a4bab102632d237380014dfcc6e6cad63965888caed71b8d6a8ab067f23a751d7460272d8b45fc990704b2b661d1c1f83764e20115cf8418f73f6675ef16da1e48e2696e57614e795f2092eeb918f7d9d2e6aeea6a080e2383b326afcef6b7303a37983122ce4127589b6cf3bcba21f4a6dd53b5d02e851dfec2de7f1fdf25bd735f9fe0c7fcb77120e8cc66e508765ca7f2e8f6dbe77a3cf3c70ee8d1126ed84748a0a44f8b6c9d3b18f37b1a8acf62c145ce25bca999f47270a418b5ee9d8fdf0e585637c02c4b55c8b6fa14c7b9d36922fe05cfdfac04c48911bbeb3f560c114c37d9f32bbc38edcb863f005ba8ee64b6e504cb9d601ec1573db72b691734edc94a07b13a15888ada3e990cf377da4023cc2b3de19e3ef1fa46690313247765c0e48b29c3c3b83e6c75d2408409d8518ad6adab51d44db9a2b260a4a6afa080b1b7f5b4226b6658323c5613f4e9d9f6f8e95780974eaabe21f45268f5d4a956e159c3cc25b12d5e2056e17994b2c318b20036263d327c93e70f3bb1f825dd7797a8870b140c53fb900f0aa23f88bb6f9fbad852810108795158b76601c61c0d4120c0372e2cb1c7fcfafdc8734b29460c6ff0b0bda1bb2d82710abe44702872c42fe6fc08d744f10daa16f0f933029f09b4f60760fb9918f3d40193dd764e86e8da7dcb8a71f55047458d8471bb2932e722584fe413b03c71059fcf73680d412f67d9b126993faae9c510b9f72dda2a177fa466be636ee242789de5d1a53b244a50762b1947098a5dd1fadea886128bad4c1751a1b069e8bcdb6fc215d664e954323f4da175aaacd743cbe48e0ec3484fc202835e77ad455ea53e591431547adfc52f028840d33cd0f145ede0078fe9862c1aea02f4c321861f5ca6fd5e476eaab0534bb67e08250a18a7bc51411662b6350648704938dd9be67d1c3d6f3c0e3cb798c92518513788db4cf599c6cc9146fa888f0021ce2d6a2b4e22fbb702055911bcf60293ca3f2cb92b789fe5e296af804a958cf0835fbcceb4e8692ab9533f1cdbe88e8449e169c6d970f65d7599cae34fb60559002bf9c77e7f602e79da8994fab7ddc713ad24e3a2711f5613458983707c1078516175628f8f4e13f045a671d6fb82cbcea27470680cc79f5ff8e34aeff48e9e5a3f1ba6eea8b67ce1f857d192d947daef03d436fc10965b8e4f5538c683c4b62ac9e4830711ab8b18fde68384890a12ab7c3b18b49cc38c201249f271abe367c6a96c155a9c7468940d215946b1e31c8caea44ee11d2144a16105c29e71f9dba1632c5318a05df212a2d3f376955ff9c3ae5073bb92a7636e26fcf662f0f65354c6d9f6d3c7273f790a0932e86fafc6ea719a62ecfc728dcb2706cfcf934aa858645b6aebebe500cc2f7652881bdfcfa3b78bc14748b24c9f195a247ec8d7ae778893e994dfdeed72a9b11d0edcf7e06726f356ef3706ccef3746910876511d1e46b43e82e27e4b187832f92149cfab9a3c76770aeccc1ecadd689d6696a7d80d641b029fa23cc74db4b5b4609bc066e6176b25ee3cc7d719be81d43b0f55282c8862cd4075fe97de559f776754d51175d9bdfc57adc68da1f7553a4a8d5e10e1a7f2ae84b8ca40bab88f08bead03685aba27514a5cfad2a3874f9b6db00de4f20aee00704a30bdd752856bcd519e56bdc916cad48eb9a07e7ac9a3c0bc89dbc1816a7afa05ab8294a44db9d8f89d8b7c878bf81c806d191f7663bcca5d9839635b02297b1c0acd54b2f595005e100a107be02bd3d9daefb99b837fa45e778f69f809b9441503ff03516d26c01da2e6822b169d2512ba20ec89a427ddf69d0948379eaf754e7675888080b55a6d303defc40a1ac4a7e0357dde7e56b6bba98fcfab20842fbc6628b4f0235a9b385145b54640fd053e633775852b9643a85da442322e5d27318654033a9f3e5415e63d4584af7cd9a717c9028bef16d88a461c309e3598ac0e33e18142ee2338f4cb4939b757311c6c6d28656c709a963baccf942c49a3c2245e474f9dd680dbd60f3b523c303a25c95fa2930c16932122339bbeef17d9e7e059200b977eb4507d0f95e198720ef07a679f773ee2de7643d811d3180f78fae61107ec88d53149577e2692e324d1c11cbc755fd84180ee41e5e24c079217dc8d3bae4dc592672ff14e0776cf40bbcb6cce6f4fad579caa09508f61883115302ecec1ac609bc88b4acae5f74740e8e9935cbe56a30072500f2027924b74d56879f0cf3988c283847f3c4be71bdeead4e5876b68f2f005c82bd24a4fb19df51ddba6151478da4613ddc0f0864f491331bd727dce532acbda10d43499da212a510d1268a2f0ed7810fcde70cf1d6111944a6f52c3f7c110f0e067d9dd39c79191875d1e1a4421fcb2be9749f298761ee7a63419abd1b3fe30c2cbdd0ca28ec6afd376aeb7af4645b2bbdf39401e97e226a90453826eb8c2bccc9709babe4cc9a43d46fff1c5aa733f1a0cc72902a7ef8fe09afa21a6c172f507fe7202bde281ba063644d7af595c01694562963ba9f2fcaaeafd199181ea18629c0dd986757c94af0ee8d2e98c1bc0b57dc4065219e1a58885c4d9ba05f46cc1977775737846c0acc64ed45ea455a44f89e7c212c82172699457f25a0726ec3396ea281af908454d212c2cda000d8d776d7a2e29ba43b5c2cc9c8fdb843492e240cb0fbf9bf994b3a3d67b3bdd453fab660cb5db3196fc6da1df3d3b7706d75ad2530796a3c7040a5d075ecd6d23f56d6e659d2ea13ae43d5d4751027a6c2873c61689854113ded7136bfb0ac680222d114ac670cd211333c124666d0599a47e03ca6d5938babfbeff0f0e88876b72fd5a03f5a521fa9fc2eee6559a74a45cc58d918a94307e7c0a095f469948736ac77444c62b8a34db037a5bd17a6b6185cfef32cff6ff0c03e4d20dde1d63cb414a344f484bc28a329daf5a62701aa5214510857ff2e7a25b33e9c8e1f5f7403f2438d2cede2433383bed400b789b42f0b4b68c8664fe504c99098420106be90b4dc3275849c19e9113285c637426f73834789999eaabad00d18398ca0b2c3d80d1f223c4cb8cbd0e20d626ae2000000000000000000000000000000000000040910182125
+
+sk: 64dbba1ed1b73ddc884e4ee65709c961ff377b04feb9cfa1cef66fdb2120e96660e958c99081ae126d1120ac2cca01269beb41815d2fa5d07334d9f29f1282e9cd7074a37750188c1e00cb3745c22e0fd18982531f6d51bd2cf732aeec49f2b8859eec45a168a78f3bd70873076a6bba0ec2cf6f12573c6a47aea615e6ed5636647186223775608162055517467486547878846487170651442766486713543884528440245056707406583552560416102717617658653024013470280163644346145633081452855107804126666574517820720832641671185500185272375878777534260031611112701073416642203160242472478855160710857070840141103151715464031623608771641556718480260427376875481435472856144054067082626878254126277534727028173854602112411632024626782311661847752226165027656654411264130502810256817216202013578302731773785238550507357060468864368367561168704257273160273033446115123748302672112603420462686860833388753207086160786268310315846285021360161387516748507564612621383042463016868202463758113831151863633714046102741785500720068825678608505564187244452671131766444225213200405012607178073715448631450185236385726183434032276737602521068127854212754838525113250663144127731625708134443402716811468331381573761140764418385610544201158132380355200422836723315221815786875020460482103635462065443716075138178584813312502833012516548305710717602158568354101162242265870571836626645118147460575263715366030443260476062681646151447516200200011118457774580258760877334685282653133251308755846271530035226102588760671003385653368322851184223042548757055017326416135646744244103441643433372188218431074818858036361577302263268340187384318722416728654781314046018411150547160701415224785304256321588588343288757373024720084817445452872762443652237858425348530518876428016855400780435672743385063682424830833167863636470261820768113404216738568838217853387880142403651867148815254222725173086138378078371300561145281527086117787757137233683876012552135225623120763106343577758657354331107317501781423247571658810855345378463632807411223637132200608581044060470652475517028423014462312060427577521878786855281761382768327784027228783786850255370024644068816802224311444755457786244588625476037306556858287714003602412777562741623425120284450583876357778252782585712738266652023146817712803214260580348457640243776702355248637777412336723208215828124004055457634717114507647406257073488825661526710188617242371082000681631522518537106710013471535010321767246368251830860560485032833310110722854085254568102340753215652816617426271106525562604321725853047543316358266458721104458106343468343176754657723077483842153287222377870254025347458435657702280182806604817702744767168056040524162782221461865078356366713127775225100384088166146475586222230846856610031570188676054760640427244814774331178882465226481861635443330628380051463230750560018443432583886874300842636177060028417421254667538618240803838478278230783120015657067630530774031148875300361514024822300647821116333171025623565858483153346766203336371061728006248215770840371148443478843288748034867051426300163528855211218222384736588471153322601072458171345748238678472200154547278518214273028710768337855424762844235886247b658af5af88facfadd7a012739850027eb9007d4527836c489ea5a613f890d1ddc97f615fbf478269911291c4e45a8a075b2917e2a3a1b36396c3a2473866f872066bc62d983df0576521b0cfe879dd4e22e5bdec06a94f4952a9d514c61ee242cdf93c6419122f68b6f27afdc5596d1bd17b171b06d313de72db00adac5c35caeef10a07acb990fa3baa7bc1e2fdc3b2e3c3452937a68b4e08a131cd2ab91ce822044920736bcccffeae6f09818d51861bdf78a3a74b5d67762969c17a82870fcc0640357b0f44697823738eef9e9623bfbd833e34c69a859ec98a6e54d5a121c47f0e888af3ea952282a4ad45ca745845ac7aa1f9579fc655cf86e935127955ce59a8fc6e712b3f32e949002f87423babb28fb6b33ce58ccd2d2fa1adc88170abbbb46be5c0c4436fa750fe8bdfbdff4bc1c4808c074549c998c97c627e31c8a65a633ad41ca76f78fb9d8c001d11c06bed9c025cd2223e22831e27c1860d02a51ce9e74343969dc9cf786567b37ff9d21179f57a382e2eb467b33550015bc584f2194f7cba990131500b3a5aec1fd3c1dddd747082b796df778724335383de5cd74d7d6ff82b9fc2d6d347b5917d5492a9b4a451dbac815a83ab56b08a1898262505f08bb7be9f9ac72d3c6633fc439760e72c863f414d21bb1fa9a49adf12291247457e7788457bb9bb34a0cc443626c51140500082d782256caf8da4ee583768f18338d87bf49642b221c2787073b0fef65e065c5e7e80c7be04666fbd340775b65fcf81ce0d8a08e7430f24a8c677df2ad05b3744a8cd99d7f7e670823b2cdc4d97f070bde4112ecaec79b69edf6f8221c0775cc3adaae1f3003c6dcd042092b4e6c962f54443f87a3752927a79b3fa7c95e0c9d26c229153d0b1822b9807df2e3e5d1f87e459ad811d4a73c9827674cab5eb0e6563c9f55f133d0d57b7b54146c97bf7da559a894392e61a98facf16224acefccebc57ef5eb112523f7342c88ae17197073c145e426ac08eabf1923f86066f6fb5157ba471051497580979d93ff96f6b98330c7608316f7dc6c9d5ab2b7f8b6395e8638d496f6684ec6547d4a657c1e24651617074f36771e2e80175a1d1c623df31fecd0599487d5dc04b4fb648068666f79217e31f626f315e41073d8be64643b0cd5e89ebc4e4d209b2155189dea2260152fcf7e03e1b81ca97a4085a4bf5fedda530b75d8659e4e89ebb873ed2e93cc68cc4c3ff0a06b6e084a043095d141ab0fc082e5e916831d780a1f48143a33afdd3aa6bc636120c7ff8e02b6afc0b7dcf89f40dbdb684c5ceeab02427dada3f8fcc0d6f53d35c097c4a17464ab00f8436c2b0a7f5882d7383e21d24dfa418d0ab5c12fdf5a3ff6a3a22dc20989440c80c9ecf1c3db246f254502eded8e0f3a8064532341dad93a2ec6ac2750676f8e49868fe7b326a43bb88576229fa0c0c0fd7c5d3027b8396f96f5aeab5e502ea49243eea605b6904ea235e249afb2160f3fec53536a3087c907f3299cf63c0e714067bdeae1beb62d4f984382ea4094fefd79d961cad00b677f558daca55ec9f18d32020731ed5dbfdbf002f34d1b4ff2a642604926f0857350d8c76fc1d3428f55feafc1ae11fb2ead18f899c73b74dcffd9dfcc9332dfe290c04322ac922ffdf981d0187b3a3ad98b217b22e471718ef184e632726629ab97493649e94591330738c1d3e2193f69da8bce056ad9da520cbc9e5f926a8357aa005f354984eb2f7a24946df871ca3f91187ab7bff002c18a3e966802bc05959a21f782c00374fae73b39ad733a278b13c5f02f9d74f7144cf230f1389227ebb652e7cafb3663a963c28ab58677eeaa2526e36a9158ba237c4c02ec3740dadd1c37ffb9e6404e44d4f954354369d11e88c6a5b4ad51a38df038ce8883782086a76f117977612d2e49bf1c527ffd6bc1642cc1d2ae1f9f8d690a235ea049fa5533599e624a160e44e99a055f1fbb733840f2efafaac34717e28911e8c438ca882608dbd45e2e523125d10a0c601f4001e167e257552cafc7f74184e4fdb988cbe978437ea4f8670fad864f15d91462809ed00ea4ab89cab6013b89ad84b9d78cd71dfd5776584cf45d3c8aa9922121b6c22ee382516d37cf69a6be5bc7a21f57b290006461594ef8019a879e3364d22250a5a724e155cb26647b13375756b5aeeb2215faade8e51040d30cccd09b1a5752dc92bd7b4badb6c90cae8b8bfdc50b5c450e909b7ca129eb099f23e67345b447ceb70e437394d2c17229a77f75ea68bdd97ad072234831406967c8e335daf55af3d53b0783c35a1694390266c841a97156b26a776283f62dd9b040f80ab55b9714617dc634ae826aa909acce53d5d50912c1f38497f196506bd9baf4c6c8dbaacd83c308c5514e12adadbe722b16262d4d0114504f768ec4a417a8be2f2dd95f4e3ebe07affba462391aeeb2ff915ef1d4c4d72d1a4fd90454b73e01e8e91c160baf007f1429ae887d16ba1e339120a9685dbfb77244c2aa22c8b4b38186be688587c2434ff8eb31047adf8a3e034932e6f2f0c8f1137d2c1a14dd860ffed14f0c47ec1c9584ad4185f697dea4aa33476509354040909e2b1cbe7a8cd8f09b0f8f2f92a265a8395eb3ed21c73b519f14624d725fdbcd1cc4dabfa024df2723ea0301713106c5f60f5c6001598b992e1df5a6032286ad9a85c0709db42e70d3baa77235dbcaae191aa602a17d817bc4e52c57047f3383afac8bfd5588bde8f5ddabdcca739432a68f3322bb2fccdbf93995352d842722b3ae31411453b4ed09f94a111117dd42c48f74fb34e42a0703f047779b5a5513f8f919074b03add5496b43c927111a72d178e860dc9685035ffe71cd1670ca6adbcbbb60692dd78763208e588c9af773eb9f0b38bd0ff9d0bf974294f92265c92d0a9f0b00f90b8b531a8a9ab39578a7caa185cb72ddac77a3dd08cba008e887efa6522a8c82f78ce0439fec2588b8fcb9b8949078a0ea27ff55bb5e85696cdb25f8fb16a826ab5ac74fb2ee239492482e118dff232cae51c296a757a96361c85ca8fb339f204902beb7a00bbc47dd2b09128f92f91fd2cb5a3d0553027b16037a9711521e5dd2ba772b088dc51524fbbc70b1bcf07f01102abb60e3c1cdff1deaf2732d93cb37eddee8a5200f85e0bb68512dc9afee27716bc523d13a8a09d5f2df098e02394e1c8973a7ecac7dd6f106cf3827699c42d916eaf5458b7b780d9c25983adf7ff8d6fc97b5a8b237ef2cca5897cb94ac10ed6a4711dfd6071eb70306988e9dda73e7a5c175219528d5cbef4e7bed0d73b14f96a23562e8610d759d218c1dc032faf105d0abe405726b2440e63e585487339c4b0ee5a7c787c3ab546be00b7ebd0c0fe4ac2b990da4d28f174328b813f692d268c93a9d5d0237d6a5b0db48f6e6eb7687e03e5f82716f0369e1d9f2540a4b2e99ad8156afc82561861af507001a1595930b80724068d4e5d940bb2c88ce977a46d62ce0bd4d514162e54fb10bb8a104539
+message: 31ca9507861c7e957465f59a4b7c439790a2
+signature: 0536f68d5454cdcada986fddc2dd69a93b4218c55a149856b6b9cd37c152004ca961b2bb163baa6e9046d6ec0bc27d8ea7f57607ca6ff5fb4f8e5a5229f7ca9de39baf7a462961bca5e9485ab68ee05bc4fcc3267be77fc21c139c59b5f32cc138011744d245c4f6d90adae221c8060236229e30fa2db6e61fa23c1c0c30b3bff76469477204b42dcba49fce33872f2547b8e91ecbc11b3aebf82fb273ca342c10f16c017a40c64544c5221b8fcdf44eead3e70ed2445147d31f1ddaa834cc6d1f8400c84ea7cf2846ef0bb0884b35108b116a33fe8d8622d8ea63ca8ef700dc5530183e875dc3ab101adab139a587d734b9e27cc467ca1958da0524814eda268b0741cb4efaedea0f25b9473e3cb41be93292ff5297ffb00b31385ce61241bc8e3bb63125f85a823dcf776465918467579f25982522ee9360e925c3a9e2e0125cbf4af6eac5fb1d816d1f88dc2fc7c43985ef1021fc90c290ca28d3635be87aed9788fba995e4e16e0b6939d9e4e73fcaf55e02acef6088191522e99a275289451e1430b7fa83f395f6e0680403b7c81e53a259328c18aa78ddcab216dfbc3fed92d483db47f7118bdaacd654fe14a6296fedd127335e6dfa7247323bf4d0b6c8f1df3701d32538224e77d7b066ab8232ce7e0e9e6b208e3bc77cd8aacfdd09fda1b10ff2be460866b4cd9626ccbb46430f85d5adf808598871b15d654a7e187fbbf5303f5996813a47155456965c0deade7cd8191ff6fb34b78628f71ba398d0d7c1cda8ea91c40eede0361bdcf4abde8536d0b0601290be4eead9ba08b8160f17342093f4598e3990bdb9d1d3aa1aed06927e9eb2495c0d840c4af5233a853f2602779eeea88e088d657b5740f892eb4f9e26f6a9e23190446490329a5564cc470421fc06855c314f2fc6763b3abf584be7dfb75c12eecd2213073a6c5d393a6cac9e3fad199d196fba710cd08eeb57b8fe16d6af859e5b71be83c39fc33cbfc2922c538a656fd7b6848dff93b7a98ac34fb56974d9420c8e7e4a2c81be296734a306c530dd89a29363eef14aae6411804ab4563934c917da4eb4c4685a5141e52e0a7cf59f1e119a0f0d9379a2e6994f0c5e9fb8f6ffd66d463d3bbae47061aa23584ec4d9b9a4cee7925f58b9a4f3f97b35ca16da99169668f556f346068f4f95782f0f094c3ca55f46faa8ac4cb8d9233ca8773bfef110a6cbaeb0fe7cd914ea0c54e1ba8abd33d44ff5760a1351f03ac02f4bdeabe8fceec1ffe81913b7200daf3134a89e4b1fe609ac250b994fddb989d8f382d62dbcb88bbeb926f49930cd2a5ac4ac9f2617a1a9bcc975979618aa4669f86215135f32d7448cfb799fa926a49e8f59e7725a76354a9359e87b54c4a6d68f53b9d535701e736a566a298a6b51e6d5faa6522d92f20ca274f93f8ea82d2237c4fa07611c4d5d980a6dfa9b841bdb7caab30102973cd05a4e809b372bcb4d7e0e4901988b3b808329084c8e0adee1931339925b8d9bfa3b042a7cd520acf1164ee15f5afa0944ead4f10ee898a74712139a0806e169c0c7bf95108be3b28474ab7a34cc977398e3af7ebf62064427f15df9143b60a6ab5604df0706580bda35a6a3658d48a2f3a9c00d62e576bfee993961cab5a4f63efaa2049fd3c7009876495b5b871efb0ba7350aca426634825aa3dc8976587012b2edea96f970ebc2c41c24138f23c2eac1c27b7bc7b621bba35cac3be86e8c414a80a0fbfd9b097bc48e4a97bcd2bf18b28eb20cfbb43bc02b1edac5f851795fac97abcc91565f2848d4b5a8165b58f03270bb6c702c3e9fa799f2474f56cb5548411102f98d08a59e7a447ad6dbd8330c7013255797a4b8a3fd552f5fd48b985f8f70f1fb9a5d074897b82e47e5def25b604081c00fb7197a93851b25a5bf98709762eda9a4d8e2ba13693bc26600994ab4b0a18d913bf76b726c365848a7ab07f6ce67b9298bfba8405d0aa9d0d6de4bbc5379cdd044f8ff6a986bc6daa41d88f2141e134918be406107a96bb762c7e45737c584cdf320c24737adf1b43c815e824a8c16565cd6cd90ee3a884d65602227bc28e3c2dddcdc545d41ac4ad124d5f9691f2c4134b3267a641dcd34568397914fb3ea41d4217e863f086746a4d79e5ef3cb4856bcd87b6882a12c1950b67adca6668b8b123ef914acd938c124eaab53d220d0369757534eba47944c603722718941acd9b9a536339b69d776ddf8325250c4bb0cf73e8700d3b8298952c326f7f67f7333d7c33c521e5913a91e292c8ae4ff18c41bb61aaf1ce65feb42ba6a6ac039b72552c0cdb6b398276dc279193c35068409b54d21fa3738c617f1fcc7ca1f15098142c81aafa6e81c02d58400a21b7f740df76c838e43ee1cddc86b0dea748191441f7e58b17b8dbac74f20ea516fb0dd16e9dd02cc6018d8bb16ca106bf2aa5c56d65df1be5436be1001ba32baae1aaa4643e412a973f0eb2c12df15233711c69576ccda803eb495043b546917bca78aeb85e8fb5f03b146a7b971e4f90f72db9c26be754e5b0cfa06882ff873350126ed4555a05512b3f64cc19986d9b898c6b79136d76a0fb1f116249b942f2b1b1d801802783d73b37c34bc96a078bfe932099754b15731d46f36caa4c73c37fd30286d08e8c9fdaa119449ebe3b11cbb664d3d1b452d85772e9a16391f78d50861bac679eeb1ab0d689e1f877e0a6cd3722f08557a5d31bf1833278474eb0a99d3cd9f2d5bf6df2f1013d303f5ba20ec3398c3dfc0f843888fde40f0afe374de9eed497d64acce7e7510bab1c5c8faa1bbc31e57c822a13bd01a98a79934937a978daaf6d28b47a6db79fac1e4fddeea7c189a24755cb6ac7b1d3ef73296f5e1a0104f520aa339803db7849db48286a909edcf8107889d1c0ff8ab549564f6a7c57d68b40b9097a6aff838b49ad3a8a206973867c731a2a3dc9fdb6b194a48af7df8b8e000704c5aef9a9626352a47b95e714fbc84256e4346978befd2777532b307306a017b34d372c9f873c189b8289b78ccd701383b9712b32d0a2cda216664f71735c87b8beb2e9a49fe1e783bf889bdea60d59791474e1e3ff5593e210e838e0557e8dfa9b23e509eddb1e616d8f15de99a6264b5abe5f4153b70491ac8089e3be2c40d600a703f5b825e7b3adfdb5aad8f29367fbbc0fc66a89f7cd215936c1f2a924a2eceb5b1455c3add73154c7d8ff3704e577d395648d1c00dca3751db5b3770f843369babc6b577696d6460015a89b0a621ee0176d43f5ea8ed0a243ac5d0a4728841b2a80ba49d0cc9bf61592dbad902e9d568626d805a7c6a148f538802e76b82455904d5ef27dd719924786fbc57b27501032c07dc2d680c3769ad3a8a1c6d974669def08103b2a0a01e684609b7de54f30a8a553c0f0320767df91f61f110cb15126d40774f01a6809b36a27f5160c7f83720aedbacbd02cbbbe2279aa7bd1c10f6f87343224eacff4c77644e3214c77091faeb01a2e9faf16a1f539f4d9060438204dff5a3423f5b99b07b3bb8d7dab4e4c7acb96a572ac984f050549d8e939b995747971a215cd95c429e508d342ff7b93c1245dc82450483340d2be8dd7e4fc635851319e3499053889877bffd6ba7cd530d15bd20942626003fdabc1fc90d2390791882efcd5664d3ab33caf958fe2906b0690b049f9ef82989c2f56c55f77e3785669cc5e0799b48cd7f8ce108a76d467b10d9668dad55bdf6bf8480079eed3d986d7890c890bf4acb58247ce98ff9bc5c1f0a5e93b5b14dac52211b46f615adfcd74089d03af9360109a9d8c5242d69294297858428dcc22214cebc300cfb575e5827ee460d4411515ffc17f4414046cb3eacc03151ed093d4489033ca423c560f19a32aa145ca1e045127c5c15a9c9db43674c97be1d3182f0a54ee9cfceec527b64d2b893a00ededd71c6a99fe196694612a9771ab21d29a822f80870bcce89a478f7165d33e050b618c34095e84ff445f12aa15fc0232c203215106f45cbe5f2a5d8293d4584bcd398b060976688a04682af9f868f58a7da659d2fdd5196a6d750077bec9300cf315b7750d940ae7b84a12e942df05feb842f94483699c35fae74c1c01a7fb7bf767ef2ffc2f13b8c701cdf1eecb08fa046527d894b0198add88eccef5eac5e7bdae34bf1e295ea83dbe639a99e982dcd17e388705cb91d1f55021ecc23560f0b49a730be08ca285a93272536130c73f58bb6e1e30830f831cff69fa9377db5a6b2b2a1ac8714f032cf92e89bde5d7cbd6fd6aecc4a49a5616c3d9b552d3945f14fdb09300e8e3052bcfedaa2aab83e72020334bde344bf6e49ec80a95aebfd41bd6123915bef5b312e1af5800bfbf25e314890a53d510004d0e174c0ac3673d1f6ee7bcbc08f9c36a54f682f490a4247a41ec31a6c755fca1d365039e983ff959eb17b553504a3fe3365adb97a7a30af164de4c61409e112b4511aa8f91ccc75652ffa342e20f700171fec5e7e275f0e80f7d25cfc1b223055ee262916677444991387d5ac475d01b3f027737cc4dd6b16d0e970f6737287cc8b0ab0b6b34fc26f1f7640f3fe04e2cdf5e73356599a9bce004978f25079879ad2ed092a3c62979fa5e3e93c79afcb1148768eb9df00000000000000000000000000000000000000000005090f181c22
+
+sk: 0e3f9d4ca15c9a5de43b2c7e9e9895928934ee25bbeb2a5cee2f6ebf07040dd4d1b18e398d4c9f6c71a71215fd68a25e157fe5e8bb1aefe55b8145534499baa26f82b2901c8a66fd165aee117c11ad0d09a070754f43a5d756ba18cc7f3fe51bf00cf9d3044d7dca8ce6d73a63cad8e8a6d96fc96f7ef98b9e97c5ecff836ebd680317176578747411707362056364211376807764328885445686675060468273117702634845227030785876066626370807224664111707073717686766034181418640778626100862768007108745075468035572046686702172148761617464637358462863565007162801851446817315067283153251266220647663802405721244748652543803135887140471078622743762253542301383280666001771606055881486538313171106271227541840675474832443063424447406685641101832775635278044773431105232330320612774150547474204643521578704815021164057676704542712273760164376888333045021752755406346534183774604662125546211475053451230712668366713231057676107573344484744288763042346847220425686728885243547447027465142732562861113071701264428504318881643731608653487448582851002050567510873132334835672836575144221662130814207566788426550744325858160451013625514366282002213215816203773153737483173002246106248522032117073354688585306321751618624160417082604047438346785750052828878042180287760717741552546320500863787688158685713866455567083537475514833287647786426256534558165736547465722412540807355866760302756231721686183410405222634814768145818525210130561433201465548803574231100103316334132168178578841357850360802204120683441840487143364101504303053800301430341724408577106247010657451283028078472047105035618838214633483748231050537105627244507624467644256617152842055548747153888525513720824150614083450700148401817460340258501382818227270573545620220582455212534384324862780344213381300060322863040703362872114120464872818538468227438343318014823521254218375146020524262483815863361480732412030738865457404026618410156764274106163373275432708320241746648435730607443464033568506302021075822253327346222038362018768624477117148436102630040763572487365588030302472213512126610452105075334270831104358525660711304440727731412162304644678714583152561576410707443733301107122587115843545017863102030241474630045710202822081305244516513825100183420138511061354636586625722032348743453305276010331426137668627470545138056326481183331235848307740040623207448103106747785411160140788715660637470415716201336772383321410380418586471605548371136850388686384885563452410330147127123307684841272703071721016807823148834710285477312026546874415045621321484203807387731130217004325327000178773063268162165657506735808822476247780060314077436375078760137271508107115487325567711540732188208281417365143030008230877558060175456352048580685436752266410241724526413574618475257168604253746536282507857423041644633314406808208284138335683035828332112657246708870164411784685817073273021001754124364721645827678556215070468207066305052825000480044603250570138810045046558430537742310886812250303386812217171005221405400551802461862373766865164158748787361537688880423730877671710438850475087377666151806867128535837831730177253088587622660263431782411722530332616700828477688874701783265400527820171148e753bf90e1069b4b2c01501f892e48f80e09c4115cb2a8408fcdc2d7a6cc6804fdd9a00c9e5221344affc70974184176f9e1232176d3e2e5c9d1052b912765d7124956a728604b13b2c8215005ac33e872ef47069a1c1991247f42f8f7dc9b9e57081396472d3b50d34d5560124cdb4388a78e6678e3fadd09b7cbddc6113c082f4922f7e2a23a24829f35d0e5fe30b547ba8daa984b2649ada9627c0703e9b93ba85dd7f9b40a975a24d24148e64ed5f75bf3a7d83b9d345c67f797e7edc1fb224c25292b540d02cc108226ba86f2bf5c92c398423eaf41c26b96a1aa90b3bd812040faeb8e2a0a3cee869ed0460806c4332dd6f799a63f4145d0db8e966d41f64bed3310f63e34cb098c979b3b14d1ce1ec71b0336c79dcae75559afd4ebbb5a60b64b486a8f81a4899091ff44d2134dc36acf674d209c65181066894766d80f737d6eded80c4da78eec92ef308469abfe11c8580ddebdeb36b77755c6808d5bd8d39974e108d01c2a665bc88daa9ee57d4aacc436645d4f4d5929e3a5a0ce7c5bcd95c67e66fbb9eba9ffa6e3a96e0df560dd0c98ccef63186efaf8c7f1b681dde8ba2efa1a6e994cb6c1f1a41eb603146d31e5e33fd0515af0069324e5ec28c358226f287644cb4c812a6cd98cd3763b7b1898fdc8c001e68d07cb8f005e3d66878f165b66ba308b6157c4152f9183b2dfbefddda59cdd3cb7faea6bdf2c40ced146737305d8bd318bdd73706df00d59e3c1cd785de80feee5bac9e5c59d871f3c4120cd4022a19bdbcb0acaeaa0e0ecb0940a22abb8085ed0c1ff3aad5b4ca23bbf4310c67ecb3325b468ad37da58ed2678b689b24528a15eb1d5ddbc6a0766ac9fc3aaa7cba7b1b08a96209acfffb73bc979ea9f000c8f4fe0e64388c86aef929fe1c98317251092031907032377b0b37ea768e48bb8a77d7ec251db165ef03e9a68e79b73c6afb9d426eb86cceb23b663dbe338d4dd9ff1a55d528cb8c8efc50d715a150a6c1d731d3fd3c864c3b3bb4ec77fda326a3f5b55a4e2beb1eb18a74559878f27e5ded2fe7cac12c611bab1b8c158ed3f421bc53a0fcacbd4e1e840bcc324966fc98f51e1a31dcc000e75e607dd3ba9363af2cb735ee7cad1d96a319b2a08674c9c3a23f16d9a24ff270c385646b639bd0e792fd26768967a4dd488f5e59f9a6cb40b5e28d2e54587f47ce79d4caa26e9dfaf289a7ec86b050c315b322cb1fb370c445ddf416d101fab7e8626871e67b93be886be7663e24ac2a216e622666c8f6797fc95d413d9b6f15f2e9a98c282384bda32c4ff408ff744fdb098632f0360fe28ddc53f9c3b101bf6e90b7a8b917352f0f596d379b0129433d595bcf3872f9f77f107a61eadcc715fe83db69eb8820c96380a33460b19ca7f4d8c5081d7bb185f2ee2521c7fcd30c01000b8a64af0f273a4e18ce7775723ec995036dc1cdfe592b14ce074615aeb10ffe8a350d55b831448c84d861c89aee571119d5894ebdb6df577bb0b3e465db884f723d306c71897b78bfd1e832da0b9380753f5fd45c7676a7562832b1941056a6c422b48958dad652cd508c3799f018d6390c3a0398f5efd54a59be61196511cae0777d502c3d2e942ebd20dd21a76d162654db1e4952c2e8127a9081cb90211657a4ce4547a1533410fa5538247c575d1110c938ff0e03dfb1c808bd4b7718117633f6da157b7b81f2772c7b5e31174f4702be55949d4b019e7c72a2d96235ccdbea98fed1cec326a560e1c94d02d1c496dbb35342329d631e77bd43ad7c15f60cf6167b0dee52180d34001c8df881a07a38f265702f9751e5b7521df7847b784f050e83c4c507feeb6fdc9f5d7fe7c97d8ca603ac2477b722b6c59c87ebfaae58a88bb7a98ee0064b8df24171d24298d3b14b13d817b976a382041e259cb0cfc0e8cf9b2e8091a79bb0ba6dc66e03b12f07197007fedfca3ac1f087adbf9e9cc431f22427a6c1896ecb63c2150da507964ff97df8327a418c3ce57e48485d9cb63a54218126b76a2fd9afafd0c48dcbb006d8fbe011c7005a7ae458289314ccdd5d8b205b4733a7342aef7c3a281e42eba3d202726346246644e39f2a61b5159e0f1fb926aa3f8ac189d713f268eb45a827f0abfa1acf42039e15827a7107f5437026f77fed8610560ff764606e725061c91d9ab08f62d769cd2c901a41ef3cf8f425948594507c1c30a18d849d8317e1e77588f2d653c317bc426c91f01c710aafc3402e3b26fb702d2278ddb90872fb973622a68b2123f60e8526c345ade28af5f4bdfee2f370b9f2bc8bd027dbfa6b6eba273e8eb8199b950a8c983a6ecb06e4894fb1e4928d7d4452f18462295327f8ce95864ddcdbdee84b90567a48c54206ef5247d93d8b63742df79df0cbc426922ff0085f4a6ec37a135f32137d54b6171c14fb7f88b6bc5cfa506e654c723e82aa84b2340d620b7a4679257e9319234c28d1d166e05d30b03edfc658e587703233a9ca8406247f53f08afce93823def95a2f5a6c3ecaf809e2b0954a90457b172adaad37a5f899c70f639bb10b3eaeae5fb762997c2585b7b2e219aaf1e5e9b17a9a0ffdc47718aa68a4836bb829f88ad1362297f5288c9f0df6427f85a3041a22c7ea23bc704ade12ff7c0c6218c524c4bb99e85044d8ec9308966af83cb35a602c86ced43bb05c8821bf14579ad1fc9fd193e45fc1cca2f3122dc356bbba125e58670dff59044ec2cac8041e5776cc4a9fa6a9df282d1e1a3148a870cf7f933d1b6e00112e94aa74f4e8ff4ddee02f6f8e34217bd189193cddb75c8bd8a7a2e8b9a35edeec3da689ea0ef6238940384633e0ca15e7f2f45cb5d68aff42f66e6a0a2191b7dd95b903168aa5cc2c83e40b9a375b75cebc414140ddcf8635dec199ac07089662e18ba3c9b82d6e6c0c2e95b12e348915fc9c476d3a4f1c31252110a8ecf541ce3507abe8392870d1cb2b22701bd193ab2e87983e2936dd3b4cc8d6ecbcec73e4c9316eb4ff68c4ae34af65fb26c92cfc561a70eb083185b944aff933807787bb0f04c2d57111fead01b9395f277bd356d2134facbff4786b56e0fc464866c2a8299babe5750e0bfa9c478acd8689ca76e1ebced9335131d16e118e1dd0f96eb68989da9e0a8dcc74bde265a7452294330538ac85eb5f99fa8c7b5a13ff7f82d51b851495383c4375f4bfdd01c14b9d9fe91b177b84a67f252155a41707dcb65aedaf5537cc9f860304f0b19836881eb5d6e2df1bfaa213e9f572fb4900078949389367ffec36206b7dade0cbb437f1098ad30b403635489a509660cca8c59191472877cd0f1eef1f291559f8e0165e7df4f36239c12567d9b76eca5ca4f67c6dc65699519d84a1bae1e2ea43c66612e8c694c7bc754341c7dd8da64d9f58d2c209fd2f2942261ad1f67817dfc9c5440b0496972474cfc2d9fa9c51f0a7a192479be0d4632bcfed4b122d30a393c40caf0d1be312d59034af4ce8e764e3d929a6022b4daa1170a212e0dfc648e5fa1b748e2e76b7
+message: 1ce34733e611226f66211dc29dabe8ff7d
+signature: 4c0190d92e195b3c941f2b72d5a96248425e82d7cd793abc9177fae6b596696bd66a8032990139358e02503e3dfa72f5cb5515db0f1e093c1c80dc51c55565d7e009e68e2df11f2b4eb9aa8cee56cc5151ddaff0dac34a46926ba6ef4ab1d4a27704ca7a192014b94404ffbe6a29f15b10c70aa354740b5f6b54d4e672665d9644a83559d7f1e4ab1e5f0ab987381207eae8f90f695cb4b71952d7d37e0a084a2f0e4717fb70c71bf82f8fefbb6343928dd2a389554e7622372802986cad94c65baf48a32c5019082088f4e4c9837890c967c6efde0aac9e71f2a35a990bc1a24512a5fffe0eea26a7292576f8990c6d6ea79e3c4d360d390869b5ebe31dfbfde72ac2aca6af73801b7e1ff75df3a69049cb20a11cebbfde83cdd8e1391b94b85f166c2c1de81e63bf7f42aee1d196036f16c914dffe71015f453e892def9a062e5c259c8e3f56b6b116b4d6a891053216fbbe8fbeb4a200fda316fbafe181ac23ea17e5ec33bfc7ea9377bea8cfb41a06df941ecef2bd50af73d9556ad06b01bcc5881d446a9c25a65a54df2fc26150ce245c112113e59cd0c6adb17f77f477629c4fa527d7e0330307c98b868d7460bba4ca5c6bc73137b30ae67bc74194d2a1b0907a72ddb1509c746816603be744d8bc40ab2ab0e240d010df33caf1072773c2be2c303cfad062ea210f4a23c9ff14e263a3d2f1b38b31ef3a8248fcac82b4656a8bfb1be483560399c4698a29d4cbe1a74797fc568998799f91c908add860acc368c16329abdac85297298fc361e98374f2b0beb8e215c7d8a92b168b15f2fdd843917f06111268fefdfe3bb9d714908f1c0a1102ecb5495bd502859d3166cb4df5f135218588b68e82b67ecd70bb0028e3f43192085da16df978ddf6281d8329d79e9b3571df69c7c67e2816a9f48dd6d7f93aca5f01a7c363731e541b5874401bcfcfe7521f4c24b3ea6276500be9515cfc5a0f27fe8e516483598c96293cdcc452cb3d8912adc5e87618aaa420404ad2f0937438cb48b9747130bf894e170da25cd1fc04a26479c3a668abd694eb07bc27866708aa86db1a39b3082993235d02f0b49d35009b6e6327fa174c7bdddf9eaa0b9eef7c6ccfaccc489d432ae9be31e15788098f0017a3b210c2b37f2d187baee8bbc5a88aaad33091e6ade26c1039193e0068257fdb2a9dab9e7637a4b1ddf0088879c15e993a85cc47439c5a1e43c17c859b25c8d9decefbe3fbc3a014a05777db83cf0737e3620ecd699671d0e1112bf089ca39dc70abe8a6c46f0b49d2f5101b0fafb856f9929d3773c58151622b8c74512643bdd607443a9230f5aea1f583c52d726bf1b899e1a9cb4c73b8a7943d9ca4d4934e6f254689c5105436857c3b91a8c20309927c340e87dd7bfd818dc3bc17fb012b72a5628ceb3f4db0551ba4ebdcc2fe67a0e8dba6aa26746ec03b1f694e8408d7813d5cc8a483ee7322d3962d6137c90166817877999cfaea6d7ceb23067280a63ac180743d133a684fc05934edef60b3c826e862029c300733fa8178dbf3f6006d0e999aa7cc420f1a027ab89a14bbf63c92bb6b3669e449ba123dc46276b92585d694e4b8a4a702109e405681df68a12a7c48ed4f2c96cfbe0e689a975d86bb774fbd0bb7d0eff8ea58312df0d29e7c02c874e0c22fd5ebda7bb7712423d770299bd0799068379664a9dbfc0c7f76294339f75fd959680215f27b53e685a1aa7c22f9134fe9111289634d459d9714f436b1f6b62ff560207db6a17e361ebfa4d542fa589ae0e88f8683a00454255dcae16836712f9332634bda2e6f39bee1a387ebc03a5a29a236cd95fe9db30f3605c250716cf04778f2a4cacfd50a4a3c38c4283b1995fb23176df6b68bd355ac617e33b1ddf3c4cda72b87ff7c97c17a5a41e5dab03c405c6a163dedfe815fe365dc88596bc4d8e060f8967fef3f9729451cb8657cd769b510e6fcc8b22e8b410a9c8d8fdb93a46a8488294b7320b876f1202aaf6881fb67e214e55ff2f2de5393209859d75fdf9c50bc60e41ea2fafdb06ad768a6453108bb1192d293447e46dfbb5c25677291591a189d6fc319f8e828b8f532f42da878cf03e9d71a24f9bfa7f7ac9a4b5d87b3d82ed0f29148d452bda9baa6d475d3fb7698cca0809f5865937a4d45a1a859c5a494f5aba4d3617d28d8e1bf64e6061b269051276baddce2950ac69f684d43c05a1f6d13c31ad9097c4e25419b894bca0818c03c620f165ff374c547ba9f0d7906fce732f94c57b818216ec29804bd00c8c15812ab7d2fb352d18c504ca6662a894900d72dfa430459ab0395e820dc906e3e4d4866ea772d4806daed3e099a0caf2c68183655551c7ad6c94f2f2453be7836887fe37686195a0d6aebb6c4a8560fb6a0acd83e59ecfdc6fc992fef253da8424526ef9f1d886b52aa6b56cb4a028b115a2745809acc6e7ddc061d2e631846839af270697f8360f171ab292f02c9b7f83e297c69ebd0911f19318d09ba90848dec3638da71caeaa7cc160aacd349b6835ce79417923ea7b7d4794adf6b217643336c10bb232dc3180b3b309ba334fffcc5491fb8b540bfee11c0a546cc8d23a688a766f584280f7d5cfe7fe464782311db008ba00b037f6de3c1d35bccc3fd6543e213813e1419b9fef7a2becfcebd6bf69ea0c1e749bd5d024594792a5d08a651954f400eb871736d47b84e8e8bc58f1df54569e3edc176faa115c563093b9b656cc67f5d397baf24bb35f749be6f0b1518f17377cfbf808304ac108e4a894a9070b72ab6032e894557cadc39a94d300582df79f2a451e217c978f7a6acd0138c355e34b33a64148a99fb64f3ad76747a27f685ba73aeaa314f7a936b132b9190b2542dfffc451dd49341d93f94757b45fa4ac34678f80f268094165d46d4e52ed8785f0b80b01ba29a8659fc68d4d70512b066700b3bef598bf43583c58fbbadc7f6992571b645a13b9b96e737e3c92c4dd5a17b83d1a49733da257bdaef1629d6158ecabeab7aa88a2e2e0a6292c43c92ee64e320a883fb4a298b36a897ca92493ed63054126506782c491555fc568e08027c89c604e2d80461601667f7e2273a017a32563a38eaf155c8c5fde9b9f421c24d48869e91f13166fc7ebbe7062f035cb10c635f68b3a587bdcdd69c0415cf1f72bbba4894ca8e5d9ea3a1883ca5813bbc777419357c0f2a59b61714073dea261697d8f746b5c2f8ca92df34d774eaa6a7463c8b40ebf898466d0ccede0ff7f45b595a4e23165a0a1600dc5a6f3c601b702a90fb18bc8484e413398fdd0c043afd975612a175c9d72c29214de434e9c425a55204e9a26aefe5bea78f675339fc055ac4cd3f0308986fc54f03abbc5f24ec7bae8bd031e158b08d7fcb2abd4c5de847fd28ed82af2d20cead0f0bcb53aa7872c31d8b6594823e792fa2012ebedb14502b75ed0186cea12ce167eb169bf740021c255b79fce2ff71e91231cf6603669e83c2276d7ff9fba70efe1f0e56b4ca9b85cebcd036b830712b7be350ad3b02fbdd76fa22c225828d643bce228c15825c671773d4eab3278b029b190e1b98ac871d52c24dd63afab353ea0b522d96998eee930aeaf5272e71dee4a80108cc5a63d4674f6b936dc2c46f656cde891fbf4ef5f8f3bbb2424c0ffb5f9442ad7c8fb49c73a9238e46c347a6fbaac00d0e74883453705683e20bb1413c8f7af7450986db1a660d6af0d89cabffa1c276cd9cb51affcd48fce794d30a447d2e98c09cdfffcdf47626d4d3fee97dadedfe606a795af2ecf79c025161143802f3fedcd1dc48476b53129705d4e9626fc4252f90f4e67d9c99eba690384e0861a78087d0a4fcb800cd54b37e6c84fd2ebc71e61675fc6c32f0b4b26425b7676c96047006c6774fa50ab0259373c3434020a985f9daa6f22887135e404b16bcd3be31cd76ce52631f0aa91a546a8481a0ebf92e5fcd23c20ca53acdb65f47e83a3cbe7d831361231d9df0e48b23f324803f1784d6bde7da2f293f517c1921544bcb1522ec511d936f0d3ad2827b519b4253f3dbf656701367e59fc6d7b90d21cf02e1217643e7304ac23ef7df6cebffe3bfb8fa830048da54002c8969f5524de2cd3f1d12e71a201b7c21cac828866edfe9b54b0a88b502fef20d37cfa10aa495bae21000355682b0f916db2c8bec24c8dad6fbc436e6b08b70206a029c6b2c0a0bd13affb72479763f57b7425c01b66a9ca25ea4be9b80f5b81d838dc8972132d9ebd2e5c4829df937fca3b271b70a52dfbe7e9a55e26488b18b48cc4447f2be75202a366620126ec67c2b54661606f5cb8739d30cf583431b4d630fceea5c9eea136d5e4fbd5f1402813944da52df65f599053b0d0e4d44fbd07d9d336fba564e57540f223468264813240aad24e1f09d2c29530e628e2a35bf3128cf8f3143f3c0a388956585749d14d658ae080fe031cb97ba1d6983cdb7dbf12726ab565819f8a7c9325aed9ac9fc2c0b00bde939dc113181216a5e8eff3f1647ed302a52cf523bba4c2702f71f8736a866259650c76e26111b40ee51e12655b5ce78f70c78848354f57a6eb5057c98bd84a6e9fa265d76e9f51a293d42a3bb559ca3afb78c9c9de60a10252a637499de000000000000000000000000000000000000000000000004090f141820
+
+sk: 9dd0ec94323c0d51182f169cd13ecd5816737e710f30b0242071c7222e9409d926faff9f4f4928d49dd67dbcd1066fd5d30755209325c3a4d1cfe3a949c02f12b4d7c74c5ac0edd1482c17b43d29b64a48d4ff57475881e149224b8c5402c24a031fd5eb03ee909bc39bd04f88a9d7f8dd9f75ee987830cd2782b8b1fdbfcc1d165022244027772363484773133142435377437260275428566482540852407052547872602605415328123335250386770450770731526134368878252875085028831552718341610188745264747011603678044463473807016106101388535203333151865024674386082700247487548458182877630535148423383434445845416485583722865178102005387213578338174270403063338723551041533307565272835012028886637756877544023872688365366021703725407080424278674226873572788125612812846782854216411226160215338453035072054360306786070114748252252848638433118504131836781210752431123447835477111826548454783542804878133747733782260263721508572218342881347276607718518242050340280410580136214026251326034726025681513615825433362787166008161323503446801787683145876756002127364073406830643073072081535568357224584583302306678268448077727108422324380040854721361555307052036660258340620578803634613083777644115564331045755775777602636410883037665055427770278353755435775507284646166187155024725266142000708130774250251106205203266717110724734534054051147111003111118172461676033648086187023427214326572667534644360327287020811164885237543456744226128554476558326327460377687575186845734430380077118632722464583333204654115865037371835047518404711661038514678886220330112820523626755120351810150826848237302184813315722705563687275036238456682633456643742741840000408806282678375447475673835472123855127088622154573675662618186522371778352012753353640637535626363237121121718774607756853047411883355862725124468806358423435376061281444247156232585185507347550574574883186175742243534866343836013226321358248763655001706022006023035801118588243104841878442440321144362236100563871453101775164883708317356047865821350815413586136621142654342422365146476247868515126220742733667232861120247208616160071374652266334651064132274848313634651222343755740763523316314743368471146421812512236516068461358150603146027842675684405637176182611113810303728788215851024257546045046031701526261875043052513423037772531261103584152010842466150014224280278528133104051003206380344456020563867202837272275843141782730365822636852415304857871752460185611221023654542537007544381542365640332563424647431711064704710346585146024686515482730170204732440336557645420553810854064712120188168862287082201073202880641335545587151115388075568811420435561064051228783427478487788314717018548060731423543663803041382433856336536251018337617866158173120514045367740670258315313380655210002582053778561506814783280252303615387062244473274167251380055054083536265171867873586681813227170282006743548651472875656788327277784465820877611017774653812585186738776068177123621880061083700161353628768115504020481830370225753553638511106762247387543665233264217085453886413382280347216550117750808513028670054005533444205605852652462282544314625121812365743311024627823616168402027573332467770867777322687104824413378426367f01647eb3cd19d795a29e1f4aca8b34442d8bb132226090085cbcf074d463dc654153b52097f63aa654c90a2b8c912f1784f6e81742f0b7f57e6c5192ac3105ee18d1eacde5f390f507557e5ced92fad35c871610e7510f874e4a02f78b90c82a6436ac4f6422446078436f93a285a8d0d819a80c4c5a2df07641198a08243b6b90c82fbba1f1866bbaacc4b76dfdf8263cbfeeae6cd0f9b17306b15b4a72d6ac4158bff7fa6f156679b03f8e12908cd90f54ef45c8c1dda12a0fa88f751d096f9bd378bad31ced18e03b42b33f4001bde78b80ac2f2a89b2e9db8d23f451de3b3d171a1eeed0506df420e6b73e4b6d845d69394a488c67374151cd8b2bb98c79835c4a4de2ccb915c37896d60c4844ca049c7e2f4d3e35d9850040c0e8908c09778bdeb0a712d9f27035cf4979bfe5ae1cab0d158ffec31d0b7652873214471be9d6716b6fa378b3ba2e72ccf4e38c71d3d88c966c763f1ad77fbddbc3f1046ed72fc59b6112d1b972c2a71fe95b8a028930e19d7ce7544e684a1930c67d24d523e073365c35c58c92a849ad660f68a409e57d7fb615a3b9b8104bc5edc2a54b1e1499859242c0f4b4c5712f4140bf06ce6818075f109bd8155d66f8e458916b8d337b139cef737664a15a10a327cd35ddba762b0573fa9f1bae3a4d82a6212e1b501dbc135ee2494693bbf05b120d6714cb03a72e91dc0cbb00a7a41bb0fdf2fa0bd9853978fd324e8bbe18a8564933ddbc1430d524cdf95c54939a9ad5b8256d8742972710039e7ff243f5e09e32cbd42f48c5d7075832c99ca8f79325aeba2cc21808313230792277ca7a0467b7ac5c2b7aa757623a6d6ae5db312cc7d8f2525da5dd67d5ec539b5c74cbd915b2446ebd588d73ebc7ec5716c73e713aea940ca5b9aaff9cfb7b16380721a04fa1cf35a47baa3e899743dd47ae10ca6f950f5e933bfbad6ee7a9c1f95b61adcfc6b32b63906deba23325f701df55dae539a7aed63d24ca0deb7bef2c5963d48f8557fdd23c07873c13064a16c5fd00482d5bd72ef64750b71230355446558ff6b8f7d535310f73bfb8cbcea9cb28dab54ca7715d9697734dc6ca10fdbcebf78034b0688262e315590d7910562f65f0c420b6e488c3cfec3bffd486d5e10c7ad0def6b74e462fce98bb822535af0c20fe964dda225dbcbda1042e31d79fc35b4d83d38aee0a2f6d0c86dadc357184887efd6c4244dcaf7034bcc80daab2cc85e5d132148d3c7b0df78869524d790c3d03f0e9b4b2ed2f58f033d99b11ee34737a77b45b76bf54031efd78772d9b9097943dca25bcc03a2a3019596b24a2b0dc8f0dedd038371e646cead445641c7bcd4f1607859aff3c58b68468ccd8a2164fb1f6b24b88951f4fc745203dfb43abd3a8b9d7941c8ce2ce3dd30a680d1b097e1d7fc022ec9c9b33d51ad57da384df4f25ef5887b17251cb82d22a954d8c6096dfefb294eb284ab1a2aea2cac0236b13f7aea24836495e88383c79eb3454d0d4f962475064c7e2ac19dc2393755734a26d5375e4a5294714d5af7dd23b4dfb9197b4189f325dbdc5aaee592ca7e2e8964e70f928318445456cc26f19ad3c025771750e71cf2215ac2d32ba9defafee20ace4f121cf035259060cd83ffc6ba8bcfdc11eb5eecf79a39a753c7aaafbd9c2c79da173f3a1a214f3e04c822718f3f7f75a2fe701be9f23e133e3ec3f0c3e8f7d6f2ca655e06139039fe83983ab1fe60c2f71ba2b4ac076d898d5dcaa2ebe0b50c5a85e1204985f275daab0a62f43de73af147cec6d1abc0b8083ec48e8f02a63e952b76610e95b02fd97af7bef53827cec97ade1aeba73ce1e732ae6b3c7bb2caac71b2e3fa9c6c1982f5244fba8d62b881ac2055afbf0cf5105adfe2728de8bde98c15684bcf4e0669e4a64a1ff27dc7576021b6933dceee6550aed6a6f5e6f09ebc865d5487ac6baa68851c115b2397ed0f0c93c982d7c18d86c9b4d3472f04899f628407544dda01dc7692010fba529ff8f23f0c94e454e2a044792253525013e2a05b661387761d682bcd8b311886b48af47947d6dba324fa756830061eab1fccc6b88392599db32af0a6c8e8f4b6573184cbb07b390f45dd7668c5ee85e9890e259c1f654781e473a767c60c5c87be0552b9afd127fdd7f9aa1defe30aeb20adaf8fc2947bf56a735c2951ffa3523e2753769dae639078ff58e401a7767d54c2a298833f9ad377b4736510512dbd826cf1dd0bdaa09b19f2a353dac7e25eeb28e5f5257239eea645ca7b4b28b92e456be244df9b8f5ce530bdfad0ee9b635f682825ebd02b46cc8b9b63ea9fb6c8d8ca9ac3e708fcf95232a1603e972cafe440f9d001218b5999f8be19121cd25523eb2a9ac6994406b2a7d86ead149c809604fbd2e9887e37118eb5d81c8f5ab4cf381c58b79893399fb3400841435975c932c2811eb0b884c9ba4fd5bfb2211777b22334db7be30b9fe6776720c6da858a03203960ac13b8fa687087b057a1319d91c6a528cf4c789a1a7e4b18794bba703f689b4eb5610ca2b107c5d0fde0512733110d77a393d3ebf0d72114248f4366be9b8a9cb80c7b587f2934fc3e6869ffdac7883766ef979dbf87688fc05c970249828b566b482cc02dc1b1aaa8b44e934a38401d5f99e1d7f49e368a48a6c203c41a3c0a1ca1e09e4ccce436181852677ed9313e054da81b3957891545fe918943b6caad5230c67c560f815e7b61de229b76d5b5dca964c285bcdcb6774833b02dcf0f998bcd5ae592594c19a89105aee92d272c16688b6401083cbd5bc430e9e10602b1e4ccbcb59fc1c29e7df0d6fe01f2438752296a32af67e75b6aba579706ee355ee112eec8772db0948c7ff15f2898d23f34dc13923df24e78049f8b78fe1585858b26f81d309a4eba4e1ed478bbec86257b83621604e1e4288ec091cf16a08630581dc7065d65eb92dd93ba9d70f2d50c9b5d1f5e407d6f79ce61eeb5c7affd4baff9f0f3ccdf501ddf7cc3a9e6396ebfea6a88639e996edc001083530bda6cb3744d36ae630e174502ff9363dec632ad54f444e28bc947b84420a2e8f284fde5a5f60ee4176d9f38a27912290b3d48a5ca7991ccb43ed92c347ccaa0e2b54556a6f04cca76f904b49c6f95e1c3838390d52afd54a320d339bfdf6dc04008369e22be850b1c5ac62fe9bbd03881b07daadbc33b25e8a127be59e67e4fb1179e0bb19c6046a853e38cdb1bf9d51dc58d7a840449277928e11dc560fa4d3c490d648bf236623d2a4464208a7e67fe18f57846a61e4beab48b8cda254a9702ba02a0ef4e7cb24579e8a188c4fecb1be1d99c848d3e9b524e71c790edc612044b223c690dee56f9611549d9ec4b1528d29cb329dce11489436c85b4d063e50d53659823857db387a9a7f1670afebcedfc04022db2d5520f3f2f1dbffbc246c75be31625f937d0d44815169736f483874006e6c57d3879b177966bad91b00089f2d51f32ed5fdeab6a9e414b992dcaf3de794baa7e27b709a123ac1795c81
+message: 613513ab10a9eccf653fbb44ce75308d024090ff4fad37f64ab7d7a168e9
+signature: fe37fdea70178f47575270116850ee218d43e0439a5fe9d90edffb3d0a7349a4b8c09f4e6b8d33b30b292b6e3cef86988e2cfca9b38101575f5f6d06cc0bd37088ebe4564bc0a24c18422dfba639fa8482baedf81ea13d0315c19b91ec9197b4be0748806d34ac52b8c1a66c5f012dc038e498003032abf7b2fe422b3133ec092fd187c61d6e1dadb84210ef5b08e5777f5f0b0f78d65a93419ca4d638a087ed547f06fdd88496095ef05723cf672a0b867a6ce85dd50573313faba996ae2f32dfbb9cec06bc109b60097322fec0547655eb2732f73aab9cf4b8417bda3248b27263c48f55017cf752f0e534a98797099b5f7f20d7b1bf54c166dde52e3fc18e92e28c5f3b715e3d3bacafac25e34f2cb7dd87395eabd6ce4c79d59c578d85fba343abcf15f7a8c49c9b72a54679835d5aac9d7b0f8a8320f3464bc5586c03c0efff15ab9504f0a3e4b629bcca975fd82154382c78afc5eff1644a623dcc947a5667603fd410a4a156087e747033ea91abfabb872979747db1380dedd296253c883cc0858e6c506df84dd95e08ee4db901c10bd6c3cc46fdc9c767cd04a9814445de1fd1bec60319488f89cda84b418db03e0f750a60c484f61789efdd350ef9b887ba488a93b9eeaba05cc342a74f15752d07a7315735f438ccd35d74700b255b048afef8e4f7b0719c625113651899f1d422bcd8e7e462615484664baf9bf8f28cbaa65c3acfd16f41f15f4ba32353297a82df42b0ab19d0a0425c2eae788e937d59cdd283102d9314297313ba5c3965587d5109614aa8182dca27a634031f787d40563f61ed25203c8f33aae16f57838e859210f646592f62baa1cd61da78b3b21cb3c84116a1133f19029b59c6ad6c808b5f689946072b8c71874cfc6629de154b98cff763b686b290283db270dd8e664eedf7f4c59285947eeb04411ce16256e35c59e3211b16d23640f26a3a737fb7a7dd44e65805b6cb2a58e30f2010f55d7bdab4c020a95526af6ab4365801bcdf3bef48cbf0258e677d9ed82efda34746b08ffcb4d24a6f12073d6901d017df328f754b3cfbf03cd92d254f7f760c95eaa7b73c52b006020b5ac59207e2ed3f9c04d018c7dd221501011eb456d1ac4ae369b98f8c7cfff05a48c92427df3b0324d6d1a3c8cc4b6eb97a196da1d02be3f7e8d1d21a3287a94cd806b4cef97cda0ce3bc7848da5cf9ca5ae258a5d9fb28537a474c54d2f8a818e6dcd25610fd52d020f0cf7880469e5bd9a5ad3297b640c2147cd48ed7dd01caadaf87d04a3d05b631e979d40be89249f846c90ce858dfe790ebda1f475ef8f3f1442e2cc1201ef3aeb967cd72587895955f24e277678c533366ff897424fad60a396e673642894e614d344be20aab7bb2deb4a7c9f4758141b4e8c6ecf914bbef71328f059958bcbf8cf497f63ece1ee8e607523d7557df1fa5b0e33121f13ddc5d44672eaf1c5ffa070a4e4afa7349092910b19cb80e3a9357257b8653f7574a7de1cda7753cba42ab39ed250fbabf03369b0523438f0f7ae1c9bfb0f89ee983819cb9a58a1bf66ef642ef3fa5d8ca355070cc39ae43b6bcecfb2c908118dc9e75795beb448d00af4327de9ad0b6a30e6f241e9cd9670754a94c8822b1e25866047858788e9b47c9be49b200a5b60914d0461e0e9556da48f9a7dac9bf322030e03d066ad4c6fa3a8bbd7f97d6297ea5c626391aa478e3082b73ec18656c0d523618cff7df03cf85292dc86767fc8159566c825ffb68ade394cdd7e00eedbf4a3aee0f970945aa216305aacc58c740449f238406d48e5496f5b59f93da1f4082c3860ca03cbc78f0725d62f70ba26b9223a55ae45036349e7ad77fece18892608ab251b3191d4f47d14730554bacfbdcb5cdc14d2db3faca47d33e29d656b9b8759fb7b9a71498fdf68876d10bf7d864a6dbfb3c897bed1864c6b7e552af38feea740400c3e38004591710ba4174538ed37a3429b7a69575c3d6f41b6c74414202eeb1fd48f67c380ffcdc4fd8877ab9983a912e4474686922cb15c0e4143f9fe1c8aae63795ffd838dd7cbb515e41e6157ea4f1ce3e209cb0c4bd0bed467d1e23dc0139d1157574d5b65670b9c4752d7bf274eec6696177ec2756d609c3a26528b2b4d8d8683f88f9196a639ea83ee871ab52510c0c3b8ca05fce1ac68d7120f7e62a501a2dda9445269e6c2426f971fe152011d0c5584ffdd3c9ebea8865865bd9deb9ed86a45300d46aa296fef711c8be85f6271a4c296d9114fe279012fba3e9d1ac3d405645834e2ccfabb559b32a9834da644f2abcc3f03df6611861528b48c573bdfaadbc1e05193f66f1b52a0adf9c3e2882d154995469eb0b8c6485df035d96c5a53d001f7f0ec2bf72a59c728b771581be4a52da4c5852d35ab822560fd1e9557a76b2c9166f0f69bbbb9505e85fa577f931c354a67aae33b26ea71f37bb3aaa04d2209c98df7eec9bc7a2bf6328563d4feb33f107d80f895eb91bfed9f4d4fb399bc130f0c851c68a6a973c0e4c6dfc1d80f29ec04d3cd8e1212ecd4b0d0c16a0f32a935fcea7c66bde59975ed4c6c3022c009652daba0990c17929ad8114f3e4de9c5243b59c9a7a9569d1fe1fe08e465f83877c232e748c8bb3cc8903c29dbb2dd7741cad8c0be1af7063a3796137ff497382e86b5ddaed6382bd132daa71ada74ee6ac965b60b81bd28069a9f2cec3e7265a803c799338cbda5ff6f1d7dcf9330bc4663ccbf58286067b847d9afa47dff1c4191332023f52c03b034a522d16667bfbf3d2c024d3c2640c6d347e72f1487d0864c2f3ca4b2c27b921da829bd0a559df9baadc2491adf68b9be0dd750f8cb49450ad8feea2d9d28f37bf6ac7efff2ca4fd5b5d39d14560b8ae9d634b3340bd7f43937ee77a2beb72fc34d75aa13e4e7817a8d86b98ce2eb29b5f7667527ccc71f97f0fe67d3d4e8f2d48b7d7bfa1fe97943af90cb9aaf771d81f7a0a80fcaf099e646edfc726c9dd8fff2fb6a5532eab530cb552ef13bd66fd59a57494e5b6d88fabf7106dd01233aafe9ccc855cc5a2ede8738e9ab1d82c41cdff43f66a4c19e47bba47022b3364b6892a74f9267a74f8879d90f728ba25ea8005f46c988e02c045581ebfc606c9cc1da627781f04902f6e38b650b1120b20d8e911b1694d972d6ad1b42d18c0836dac95b2d562e3b3035a05ca4140c990e2de523489f67cd2f412e47284c2124df24b2e7b82bf056a0641247dc8ca88a8077e97cdb55822a084c4bfdd705356f0182080e6cf1ddcab79d28f0dc1cc76f0d565a0336367e6dc6f9ff12dcc7970dd7462abb1ca0ecd2f3d5afc89ba0ac4f279cafdd184f74f41a39f4c6fe582522df40161a7e922e12b28816e9e7a72e52b154ad4561f9a7f2c2b2726c6a244a7af0bb3553460fb936eee7bfef2981a2c00f77fab9c5a4e774e36defc95893b871c51201af7283cb8c9de1550c3019da4717e92912ad5e3af0ca65cbb5b89824fcd8d45ea06863684990654f94bc552feeeaf65554014767b2cab547b00983ba3f9f569945e8dabf84f4a11b0f664a0ea438b6fdb57d47b5a94de6059e40e699aaf2da67a04e3161e574ad4d88df49817dc25b78f4683820a10b40a4865df53a23a32ab484b8d15d74e9c657b4cbf40a69f9d91e3e3b7424188bbbc9913073a436c293a417265f87bc9103d380ef7b2ef46d56063ac399a673415555557c02f3a4bc2fb3331c3ac9fd488351ada38e86bf70328f1f4ca5a9f1aaed912b4a9eaf45404f8d0b494cef26313a3b0012ce6de497e63538df505cc0e9842bdd5a543fc2e8e95fb8381f2391bf4a4c65c69930bb7fe0525e248c80eb2acc17292974b95997525d48cd2321336ed5fac00474056e57d690ca3f5b2885c24637b1c8c6178dc339d94fb30b86edccf3c514136446606b17b201940df738d7e6ead51a925eb1b8d664afda86a5d09dee6ec4dac2e6a142b68dd1a0ce9cff8c694e10fb6f4b1b4eb0f97c8c5e5f1877b0b74420e30857dfa1e48535f1c16e1ab2723a22bbf74d890865d87db20d8466bc249e38a11ce463634fd10241296d0151cea46dd587c1ba9dac7524a16ec76509a4646df9babe3edb7123006d202f2ef7dd1ed7a1e8ca5ff6468a079523273ce3f321b04a2e6971ed5972a120f0ffc6fc8929a2cdeb09e2bb233e4bb1abaf35b42d2077492d582d5b232ad29c9b52195af38413c8dcd3f5abbd6369e088ea58117cfa32b755b1336beae743966db4c0c6be8f11815d747882fbc99fa43712c965f2f60c975345c13b6c72b4f3689c686ac6449663769c27c1371e9a222ee9dd59c6b11f7722cca6f1cdc95e95b02aa583dab0225642f8c6d3fac4004b35499c8d0a229728f520e299f088f8e42dcf673221147c02a34426a575739bb1d7654fe2a2288d5174b1b4d9779435d16a672d14290e2e15390647a64f6fff1ba2089e0db2986721a1d76541bebfc0e5140e03501a7899fbf315a33a2a028e23b95b6beb7679a0138899a882d11859729643979f2c6212a7b3377b1532fb60e77c832584356835be385ce5cccca2d0de4a62293addff3995bd773778f1ac227283138595a8994ff3b889a9caa2729346f79be1e377a83021a355f63bfd0141936444cb7000000000000000000000000000000000000090e14181f25
+
+sk: e9f2035989b3b47b9a4d47b7c1414e2f54d32cbc92a9b1c70fe31943e19ef13fdb1bb527e58ff8887604c6126c837f8f6e82483c09bc510b35c8220d575bf85010cc348510e17ddda0be58895851f1774a0d396d90b3e711cb8203e10da7a94050f0250a2c15e38f5a13e44e2255db60355c6216d40a0f7b61728b976a7b482a30678637574326708564001802753625404208138570358730357038007481856602372768707636405878077325156570547550552686608807805528200024258404371604345414115257328520104024774386045423044857050817574724448612663343656386634261200884241334426650746046352432243476362553554236764577813286512654140436463476185038786462156757238801874084083655740767538205300337211832671635714227754613562276522821424853662335274572113467504066736412510474403048111485133600152461167650553727248415306124037506343674576062283570141027772104035481574648102512421824660078674616685663255622458840146611503145841252026614658036812501107426481182100445764037470473655588352803168586668345186236123638426884587446584440413436756681152417616712614727875847368470650260227215011075037857672003888681154137617275474270871026605470337230743654674887236351372852103356554753088156202020536728467282678104268807155336473374868587720088822858377573522534575081467746216175166660428483042517884882533247202181833546744361415617784071735771416000653661645514740522182158152350545762866842612733208448570882264132333528007701082031726221700443768852754676051666454775237311042368727358355067713338618551425022554882826334131264708564126411276411456232817355686433450144382716575704727788637352687286515784246348430037001452775482128611561872828454335162684487026183722148247843801176012742651836727834076156858567645458734787816110121715471811732382044862037452716667462125573053287652615546420455005205026617870142176172264717123435008577708123864550852076231165324586331027382044101245421776273736614001123116025884007134702847186122505047437562281452733045640138880561703761581454366547047630665501506603114851811564283863583561065402365436132677654476063683202653047804341347658050801722151405417068681772362181157521781818505223481752551877364262185687421226500127086043501127477063450131653852845111238584325047562268724077221613872517617406753718085282333312585808187710501784374002305502623737414005065265406077736518401555287558271158026552011221573358070645713483635760183310214514083441858473182388206811226331085487471567581186823144833476125803285836022236544482662808276810008230280856101544022666144215524455022257357022018316108612210560621576618765810737842685484155727006841586741572637860255362187006856417617186657174643571326471187017722583835048512242272545488214807350513858450227085332006342548776258860236674702182072884007350212656567370215611765824241844747602512086264566867530605833607115317740360382064004721582207252578674871127347718058362003424733551576463034550437258172381353865553482561012427678842748173511207347623343503545145564882883762331884717883262126183400784447580020615301645623512455408144603602538580622141837638377124151328146324817134161245242616682578588537501083814561347573620736025721237127542606778446265ac518f38f9e2b53d11f11e76986ef6ef5b9fa798f3e652df12845b1137a34bab8d4616016760c7fbe4bf864078a6e53c5153ca1cc8ab85950d56795ae03c623fc1feb0c0068cbd2f4cebbae7641dd41c0e475d4649d42070189f1b940248bdd96b8b6b4c64be543ee6f994d142d096b4a584e83e7a79a1af8532dfe6a6be3e661b2eaf2d9b750f83d371678ac7b9400a610e5b152b1b66e857de6187cda0e3d021bdb621aee16e30b34944f020fa14be8c6068fd0181ce956cffce78003e3e31400e91ac1f7d4e8b003efd7ba70c7f2ea3d278cdab4be952431fe9c2ab38abd20c3368aa588bd4c1ae2e07b9f90c73a9a7dd36ecd5845560d70dfd6afd00cc817bcb98690ff9215db4b526d53d4d4c1befcb2dd380289cc65fdb57aee1451ba3892ebfec2f8304d89988ce73c5c6fefc8221aea01d778e7ae138e62f6c494b36fc8070b729b044906f1cd19489911862cccd481cdee8eb289fddc743876688e99596f6e19d7b3115b47fb8996c271608b85a5c93fb461e708d0a86b8c395f1fdb1dbb211e634b1a74ed3853f4d237427806a999828b3ab485e355771a06ef08121353cc34bed4d8cc615311dddab6cbbc03fdf06a79a5de66fe489ab0cb15590210a665946694b24f19afb74ffe55130379b887dd02cddaab5f40ef510de3c57caa702be0a509707959b312fc05b65f9226853eb7b61e989573dcdf0d8954b7cb309c7aaa3afe7c0f957993f0437f2305a7aa42037dd8072d462bc793112d611cec212ac84acd9851d3ba29adb9408248cb0ca18f74e9dd6c79bca3a8553f55e1e87b51e56f7285db53f3192119b9373041d0458cea66b3a739258a260f522d6365db6219253ca7d46594ad38a3193bfb66bf0dc29b9596a4c53eaaaeaa7ed9710128aadce01149b8ba97c8b5cf5ee3a4179485ec997557818b21dddbd6eca53c7b8fbf9462af2c7ea07c9163d03372ee1a3e377f8ad87d642b43cc236682e11d913a74590210490db486e80a4844e1f9ec2d39dae374c6582f677de84340ddc98b4ea790e54a39a530c1e8610abbbdbcafa4913ff901764a2434da78264c7b00b277f2241e830e83dcfc58c45b067bebbbf541fd0ab1ad92ab8107be69f8cb45c42a2afb8acd19fd49afcea75ebd3ad33209e428a345f55c95bc4cf50c4cea6703a90b42220528e1f106e389ab27844491db3590c887d727f4f8596d053b5604a694ff6d0f255b78a4cf96740f380982773130c1f335df55e447875c607127d7689e8d2b564d748dbd98fc56af29c57851393bb71dd14bcc421152f6990196a3cbd9cd9f11c6c03ce3747ea0e5e1c5e1c66a8cc17898defbed976339d16e32424e9e61460cbece53e45282b4e8565b87092e5a922315573c3d28f6f2dce33f69c975a4334980bf92bd69711ec7a3cf5f2bd36210b24396be5749a8bc824c0d08f7ac397a0cbbe402aaffe2074d7453f5e1832003f2086b72bc40f2892ef91d7fab7ab602e1e47a8ba750529c05d2beace970bc49b00cea827022c7523987152c456f22bca619d42fb61afcf3646cc2026253d101184e3a2ab2b22cb6ce1fd85caeae7847704f009c3ee513637660db53ff2a5b7c87c3cb65b7562294f80a1d9fc0def6197f3e276a03c10f0122ba10e91540cc829f98aa68d4b48029e481d26cc6b6763143c34d96937f703f916b5515b36299b89bb10cb35d3ab7beffd86cb932904a9a8120001cc89a4f95be705d76eaafca5b27841fef98ca1b82bbe0db2b40039e9bb89f0698b4e0b2d5786993ff36a5f09162ba588b9d9bf2ad80528202e87dcbb3415b9f389618cc06827c115b0fbc3aabb488d4590cbb8a29fa4cb0bd19c39bfa537e10ea33d354ffe7682b13d6c95856e2e8208973327324ce7d506cae6407c5ddfc46c82da064c4776caade3ca8265bc1592e21ed27f8e11bd1e2b276c7eacf6ba8673e85b6b0d7b13b7366dea6c98bd5d8ce336f99d7a101cefe29e94dea131b04cfbe86084edfeba4d77734848df99256ae47422e0371c3e38eafcb317851ff134f59037cc92caa8189905afdc88d5a7310fbd5ed0991c50efd1bb2b499fb69d260ae043f69a5cbe63d15ec404ccbe84834ca2155e42e9345ee75544a526b03b6432de6f1c6719a68a4263fdeb957de8434916887bcbaa2ec3c95a20815318d768ed92ddfe2cbe3e71dffaf1aa9d3db725c1e6900f4700086b593b56ae4ec04298eae9e6ed4f8ec860314be3d9528afe9b71e694502a0567ec40818e61b86eec2f8fdf757cbfda0abd564e104a281e83e12a5fe9a00ff2e7fb434d070e8f473946b894f0ff2892a5d1249e9bc2ba6657e3755613e21311b3dfa93962e08bf5321944130b2c773e012c67127996942e9285a1df1553a14ead5ac7d6359de42118a48617f41d798554f9ed1b6fe92d7d1e7b68e2b7ed689c2e5050a91c110d530bd83c6de9c451de8b024ccef03e9326029c275c1ea0269f08db7bbfeeed180489b813d0928ea93172a491882efe655df8b1ae44420eb40bd52abeb90257ef61ed3ba4e978ef78e24f78c3ead7baafc48561c39550e3028cf4cbd276829276761c7edaa859259ac50fa1baad69eb713d1043ccba2813edb25bce47f066868d918b8741aabfef9af191c22668090f0442f732c15a2bfab898939c35abd9f83150fea05c522d0d1e74a719d0256a45b6aa1e92276d1e11f49ee353b68176fc318b2eab018064822365753c3a948df0a672d15ae0725187db0c1fcdd100badbf32e84b6af3678baa41bb193e5aacc3f87882a5f08c0cf92356bf52b016b942ff1e33ad8085a7fdd01e1e0d83540b7a6018faac846ff36c97a0df2fb96d6ab9dc2ccf9108ae111a0a05461ca4c1518de3adc992584488c3ed0233db30ffe322d43550f4713d28f58a31ef6a39dbe73348007f406ad89f4d36e9947d695a5d5356a3f1052f14059375cffe2350a3c084c38cda3f5cd2ce841179780c56eb820962b5c80ad5d107f718a401ac5f7686d14f307d4e0fd077fc996e516e7fe756b85941dc6b420e8162e7221041dff7e3bafe15a16fbb7ea81cafad63f83945d77c0633166ada6a645a47fb43d6e47026ab3f97cd2da078c8b3ac0752831c930653a9c0a6b1735a6d9265b4d1af67b993e49c8252b02e75943928994229bd5fed51d58221063951d6d6e647eaac37e2fce36a0b0851c8fda3f11878e2f2a1d6c13c856b00ca68d4ca908d1064cd1ea23277b23a4fef73970d82f6c793c0a51752ef43c266551f4675a4861d41ba652f9749d47528d53eb7fcb84c16621f0862a3b0c4ed5f8fb311b1c31007a123728d2889d52638be63d787d244202d9a8aea1895900e24981f4b80d9a1cd0f6601178d20e9e8851fa62d8b5a14c01489f6aefe433fd70364f06fa023b24f3cbbe8a150ace5bac7ec96709891f1dda8f1aac5fa1878a6864565f16ea7d701a03ce3af74a6cc4b9f9f8cd05715b86328e44c18e5ba5366a5da89560a071c600ccdf08597219b661da5f688a50446cd705257f
+message: f3025c89bb89d6a80936ae473e11e03ade5e4144ccfcc66861
+signature: 13a2f05173f61b2d23513473ee4d59324485cf7a36eba011430348820619cbf6fb72daba39b718a0eeeb83cd60b69437361809da4b2a13d43fd34702a9ef6ed73228901d77c2b74c00c3097ddc2f0fed3f87ed2dbb15c5a293cfdf0190a93977fd14ef6d1f018e6b3d356c24c0e0f8711258b485faaa8f83238241fa6b6763dad87463708ca9b315cd70e79a75322bbbe90cd392b828e9dd74c3377706edb41b59dd99813f0551e957ab9af6a76548535f1f4b49470025ca31654ee03b419ffe17be633ead449c06fa6ec822d1784f6b80aa81c12f6550d816164f2f1b225f0763645007d5e1ab224d759dc4a420662a41628d4246b2df928d571adfd48784ff5ee32e84141185d636cea66b0db5bc24d021882ad91a413bf34ce93ee75f4998c1b3a6d4617ba26d1956e2264826ac6470699f4d6026bc4b90f7b35dc0752d8d3a0911b0aa2386b3b06950813fa70af257bec08b8874dd2bd849ac1b6b5a36d630b60e955dab23d2904354a7d0a75340316e7d3dcc5ad204ffcef9e3694ebe7ff4cf5bdcb4815d353e633d17a814802d6d679662f9a75818c4e9a45e36339ad53a32fb736f5929ff5c525c9cf86b7a28f4540a5d075270cbbb1a4716fe370e3a549675938ede08ac72eb95ca58df6ed2a82e46310896775cba413299f6e19ba14e1b93552f73849745266d13aa7c3aeb446d45bda65d5c526778f58782aa94f1eb105d3a233f7f528f58150f922dbc174bdf7adff33644f52d11b4e1f8347e3b24dd3bbd176d6f4e9e39e66a7e60a67a065fce41307a49bf4b66f2da7dbe5ae6cec30b1bc7716113de58253ed604aedea33feb6d7c7f141a29423627b30a6fefd483f4f875abdb8861fe651a3df29558c77a56938b9cfec39a957392544c0f2b468abedcc1d3603e9553be106dafef21447af75b6ad65409e360062f7f73ab69ea641d67697e7d4b6b8161fc6491555429dfbbd212a7c6a564718ecf5228b52ab7f98d5259691aa87f92415728bc26a559a5b7549696bea23cb09663854d08a0565b6fe0066772122d78065fbc9e7042f40f4bf019e0698fc0e76478453bc9e0bec42addfd07c5792770db84e3ed50f47928791757fb68ce1cedd780072bacfccdae5d474b0492ff457f134e7844f33db7b2b0c0e0a01d68ff8a840a577175282f416c6949d9991c622e68f4397feaa17b703c726b76aea4c415857ec3a15ced902e97f964ea849007cf5f3b85acd4c4ba5c8fbc6799dcb8aa1de76e7d00a43709fec49531fe7d148e574e89bccf81fe25ea83a28a82e2a020841fbaf59c4e86ae544f4ae442716500a675558a42a5cf52774f5772edfbcff9ecd86f046bcf6e298a0ee8b9e14888d15a1074501f331e5c4176402ec619529e0ba65da1e9ffaad0c1ab159c1049abcb6cf326d1d591a83dd9c68fa71372ffa38942caafeec8acc7d3f93cb2362f705cb79bca1d65e2e674733db9c2143dd150139636e1f19eb2bdb6af6250a6ca8dffc34b9675029e9756aa183bacd604fe7983be1c29b1ecd721e497258146ff16039b449f80e5c49c05d1efb635b28f1f829bd01e9a0472f1656d0de60ade6a059f5e23dcbf6932cfd9bafee55bc5849e570b9aede8eb1d0670399907bbd8f70c98adf4835b746a44c4578d7c15082908ed3f2e3c7fedbf116a91e180abb8a38912e9a3ffaddda2f498045dfa49967e1172cd5ffad88723e5d96daec839461c637c9cbde6f3ae7eaf91048a526a1c4787865a77d975b61275a8e777db5b0c2ad00a64cd093eefa7a0c0c74932b4ae88df564c9b6c7e958b1f20aee9ab3f310d9bcf5ac808545a8c3071dc9811e0f63e1f7043069d3d93c24fe3af4e489275781c345d7b47ec2cbdbf3e97cc7fc7f4946cb61c7c1a7af8bad66a2c575d0a8f338f7cc7d2f7f2934e192d3884069d554cd3893d0ccd412e7a538cff397bc29e557cafff3c39c949e89d9ace1fb968807c930d8e39162075910f8e20f413d70a327dada5bdca9a428854348af5a2728fb74e4e825a403652e76b3ba45f829e1556e27fe00f1a500c8862677b5355e5a4c0fd41f421d9c9a6641634e49a084f19cece1203a9a04eafc5b776940cf0c5bcd4fd1c713112aabd00b06a6260c857c4395f69b772aa89836457f89c004e7d5b608d7369b40ff3e398d107ecab2a7e113878291500053eef6f0abb064fbabfcf87c226a555fee27125c88fd06dda3957f96c2b9bf7078d3b207bef88fccb3ab16e3c0825de1637fe4a5ae4cedeccbb4bb68fd75dc5f4cb90c25799e28674d3599122ad2c60a17d8349270717bf46ec2062ac256b32df90a3a9092e3ca974ccc815897ccb97664f6bf425e7f02dd83aa03d4f560a1094af84bbd1c8afac98e8cc88d8c2db6a639b0a17e66e40ed4d237b7ae250695535f4f9e6a6cf671da516325dbaf6f34f1358ba10b60afb5753f72becce1e95ff1a2d4cc9a52b7bc59c997cdccdea473233179d928fe26f30c7331972a1e2798d1ccd81753e564dff506ebc6557cd15437c0c8d5811dbfd45abf56abf5ffa3c807a3f64c18e620220a27cd71e35738b10c75cb93190770e7b6fce91ec4a85f4771a54edc46c24752a0aac8de6cf5fe87e52c3d84d9052dbb967938e6b00a58fa9216015ba9bcb11546b3eac49d5f66283868088411f9001234f5cfcc5d7be37858bfd2501ab079665d89cf32f56c16ff24457760a4c03ba464600bbfabe5729b37629217de3857bc5be6e707d43e8a1fb97f6d1b57895909d5aeecf7adf7789c239f95317a131a7e72a88bfff0203011a83b8df8755ae93dae2e843e725ddac0813b3b60c024a32fbaf195df03d6c79360a168fcb8349cf16d2d8b78909e837b4305fe800a38415b5af5dffa01ed8234b1246f26ff540006547aebda6610cfc5bdc6f8063efbcf41751f884ed89fd00c7e3ac162e73cbc21b8476e42b4d83564027111c8a51ad76c61670b0989d733956c767a620b1989ffd3c38d409778c9919e912ab3c448cd0d843bc96c27f2e7e7cf3dc477d9dad931ecbdf01f910816f5264fe8f930aae4088aad04075cf3c74b534d91e6bbce53f5c4e6e5267091fbcb02b303a256279df9d0bc3d03031451113ceaaccd470af21be41ba6e7fa7b8fe85d91f17a3bdd74c02cb13ef8ce70a66db17e1ed009b670172ac26050a015f5d3436e6fbf3ffc46eef3a1d8db52ae9450585a92f5f1be01a8e00f37df2d226cd715e647d485a6f536ce4cd09b9424c4e80be782acfe96a177760b2071231cb9d5013e1a1930d29d9bb1423c132e9b11e6eaa77c887ef30e9b8867291e36cc5f1ddc980d4dafff82897a2a027c6f527195c26cef462f9cf38724545983cf95fabcc6d146ada089a6a1050ed3798c5eb0d0561bca525ba413255fe524c5fb1b39a9d01bf23efb8f8af70a1abeaacb204fc96484468f2323e6163df6fa1d6f86147e48079c05f1da7350b77cf49602411a4825a302ecd8d372be8275c04b0a724cb68939e0fbd5e91e703323f6930c993193d69bf3057a51d6d8da254b6828c7dcd105a65334c9dc961fda129ce4763a9ec39627d01b18ab2505f882ddfbef99a8d384353843fecb5234db77ce3b716214961699cf2eb66bde0f20976f2fad352419f6b9da7b8e6e97d47fdf8a1cfc3ffa23073e1f230c808b8ddadf9fcfce76e6732c03289d0281f4377913a63c094b23181a3be5232b64ad4d31c710e0890e3081981dd3f7255e804f1100abcaf4dcacb288d43ecab10e2e658b0e38e8c79dee6e77ab771cc680f22831e1e0d94ee269ac52971cda5c5aed5beb918df967d74e4ad60868bee2f8f35efeb9d67c3d2c0e16c782200d5a74af9fcbfee8dcc93029cdf94bce8889b6b36a237cbeb005664e6bade76452572f8fe46c53896879209adb146736c9aee3ce87c2494d8059eded2444410978988258de6ec69e43953e9327dd207190e2649b4a3f85e8baef0b927876135476ee1a35d06f17b7e572dee4ab68f33b57570701ef21f9001f6d29322a1e00cb704a607b8aafcce14a1177b0eda9bf0cda873c994cfac67b16bf60262f3ecccaafd0df2d0c477d86a15d498f2eb2c4095ca289fce0cf8b19631074a2d3bb1d391feb1fc7145f8c45531595d2b555865b7c840c18dd676edc18b77d1fc52482bd6887f7d9f2473f7ded014f191a4d51f0c54c20d63f7f8fa968816f7df41d6abfa2ca4b672d2ef7dbaf61792db682ac4d2a0f4455d2ce6cd178af41d34c72e4081fb133f7c68b67f8850a271a85824c92c987af2df6d9c8c958cfdef25b69c15c5ce8522d61032045ba9053db4c023450a686b2d91ff1681747d9386909eed7321d7e47eea9c3fa0a72e698cc8ee64b250f89ac77042d9f753f39816a4c74d8104944950f803e4c502adf627db0eda33d5621fdab14cc33d534d486be4f2cb456b2c8d24c8ce03bf34620132666f70abef2a76a6c9a351f5f4cb3c53683af3653b62b896c5ff74268d7d794b59c0a2f166e79a2f3c0906dd5b76b58583e1538f27c59f96564cedc2ac3f89f294566d4e6eb341f96f77372d22408816a7d659c2a1072aa4ba9301c42ed6ea978249e817f0f0914b5c717e8f93fe2e5177b40b1c306580cfd4d5e8036c93ad2c3a4c5797d510162140416290a9b5b7bed3d9e0e600000000000000000000070b14181e2d
+
+sk: ecc2dc256abc80f7b7bec9df85e7492c5de4a442c182df0f670b0659326425662a0a09d9c69373c23447c2a95305b8ffd5910ef78658d40097177da6239e08138436ac37223f878af8a399b83a107b543766c4d6a3f5aeeb192b853e1ab708e7203395f543b69b5d02d7c718dd92e218c5f8a3d9d3cc71b929e06551851e6ee342336124478440123301411018321332110348334748844655711664412165235816753451506281556716613008421783312458163142781650071340708212626608800035220250758860522127413125881304306348081048332720728553034472686274845064731586114812376266431422488272026062247627108658788822431376207816464704650171463757742145271864834641811032003864514826117653664220156410757442602758205510150655160334237731327300675770158188602332306620631467268625321206822726721084153272288403008553761816628832868346828246771223745600451116657365336064804625425780726781071142874610155221381823858370787562801418565301084674730873261814681014887230237727130565308467174158163173842257258237055738281572314187583237144545263461800373573632120374402878734645455471717576720044806846545804706477017118254437433050075680426470837046778014350683052673035214280225445530476448730070034864512288208034348806310667208650740770311303083184144338241207246875011256810332784302304160505183578784345205842845385433280883770415838825327710303815287583468165425744665743752080682380487307865112041207342303128733403118685165553823657447661104586581514243154665326450711331621267538612730884751637676064161485452541272186601581442010751642855003677612771436040016438070288630016050730366532536462683278654686258718168784312255672067215558557812204474225115544546373137445782316206712607885525038823524835348017544324330610001601811183541762816041306057481602351735434175663281127257518261737486804811745620350683274325564378147582587130200272504754438186210540154123806383664620870028333878021630253742374286851051373021280404310286860053353545754746415800870137103767000204473758380703406450173742236340073217080004063215551666375313184146332200465547187722158161832805712827747783134707816143013006043441524850255703227117336726278020187505872564223761800584858803247718377617024845835567642813027617278624404727216630488150707235611008563784353406406438678662465516726124558766500314887616476324373810818054153223263013680143743182411443028011035608842284403406345206677453017071617071371423515016442366073538018177332045717081583263452287244600531254512855205317523327545605081162800464808657451261114575740680273407732818827326886423525783077538685360068517570027178511131526328553427744884483567626220700753311102755372818704537040107304771842417886008266211152014266685066613645226172774467262723712041064862257144781231886630306537787457203073756411065683801121614847872737423836675283051066085801746875722754158658553200261412424871076442133152538045468176543835712806061386226576820814555028342568260051157038041538207671750073667204742102582847466268846645360152372874370554127576741321342525753233646264303264630564434357515212648785507650247731215770686523622645471176413683042356200856062810245065730535766622841317004015358440767854666802458512002260a9bd922f543617065ae47635054123f2c9e8869ccf1072d6a9fc1564e0285c1725fcf5600e3f36a8f9cd12c31b3ba0491cff1a4e81da2764a26cb2330806a6bd1b2d67a9e5a9630b9914e133e847fde617d7aa62d90067094d62563b58510edb69aa0eaf82065cb4b29e05ea4d6f43a837a12d6b578e7da41f0662cc6df661d5e1359991d70f6d13c26a148f78fe3b805c0b82a84a4a0a6207767d616f89d591899db22cf0ea04ebe2030145fe299c721b88cb8c219656ee5d9fac9d14eef46808312d42affe85f34e3681928c55c0fa4527a319d9769181743c80d75d13521f0c764c4265b112cbc856a562810409e4681884b33917408ca86aff78d55112a5359ac346e8b37dbd64df49c6dc816c53eda61d1fc11bf9e572a9f141a480820bfcad1d66addbced817015f184c73c1054d03ecbb6cbd60fcf455bece77e8f761e6e1526122e83c5a5c554e23b7a16cb2c1dddc2d099a641e768cb24198e4dd9a0e19cf11a0abb2aef4d4f57582245c8a59b6b840fa3492e926151838d8309f4eb1c086594c4b2f1c6edc6f26fa4405400f0c672c1a759de2a1ab4c2267b472d10a8c32f3fca370bd92b2661e89bbc49e5f47943472034bb6d36a9c774e5cc94499c14f512d09559bea271cf330ab89462a104e8943ef23b7d21c84ec4666ca989ffc164739d2af5c06e3375022d88ff9ec687f568735689a17653a7af0356d70902de9ec85de938b4cb0704ab750039c5439183d1085b7e2aadf320498a7b1d822850893f1131f034abf4d88e29057d3e1c3970b773970bb5d7762c5db750b6fdc271825201ac3fb20261d64d2e5ff4547dd68b902d3c2bcf128472c461619ee98ee59c45999373bb354ee080653f00b8ea193a0baf40aa62defd119dbe3523ed281688637322ff32b797322c379fdee7300b10b706a285a67fd3a87561c6f12974768b5205fd372f8041319be1514e1a02a0231698534325d9a77de900999e74220c7f0cc3bb766854488e752021279b6868d968c31d94b156dd2f6ea2ba32420d3c7ef21f627970809185834d775586c96576ba86a223f5e10a6cd34a40ca3a26709e403ed5ce415a13b7011d01af37a9428dcbfbd59797bd990ef3de1763ec0ff9fa30f2270cc8059ad2794748d9792967896c4edc04fa27175cca85cde93928f441d45f7dec888866e8ca07812892fceee28ce284b4ffccf26487a93d719961024806401de54d59b624f743aa05e06c928e3722ba64a8515394d488f4c98401768cfbc47105865e6d07ab24f1db5c07b9b46982469c754ac4a52b0b38760236bdb1b32cf9956bd7c157da73e93350cbd924f97aefa43d141d3fb4a5f86db203829773418acf61a6b2a973c074feecbcc4f56627108380455068433d54fdf66e9a86fbb28e4258af697f9b4148b04469a70d85ea97336b3fef71cf81da5827cfb435d35f6848f907b70b7ea05288019c06885db41f51c2d8e54c682042fd5b5e84fc968f814d01a7f8f2fcba8a240fb0bc3761589ca0196efc77fe6f98fced9dafebd36d20fce577b91355f6b28138a52f9a20caec0705051db56d235c5e854fdcbbcdef3a7dea0e34aa3021e166ecb498c0a30255ab83b0fef8a78f7dfcd87fa2b2876d6a28624fcdebe7be7b092d6ac3da81fb75280a0a527670d90a5399fbbd7ee5c7760c8293050e11697547d3c4ab2edbf9794b8d1f0c49563779a959954b671b6a4928fca4f09f29119fd446fe849bfa9fe5e1c0ffae6eeede017dc0e68ad6af8c3dd21420fb0b1d33c376af2cb92ffc880b7fe85c0bca3cdc556369adc43b17f5bc1233773fac71a7c9e74b98bb84bf39535ec87841cc943f20ad457606bdf99ffc8618efe12124b495ce14d7464d3f3edcbf0a96826aaed4d3c027b4870a9fd2dc02d9b66a673bdb3cd63418b168ba3f25ff43862106918084cd41a8e914f9728712c8d144c2b9592529fbb22cf1adcf7c1aae743cdf992e8b9ecfff79be3d69cf2066c32e6327230467ab8977fec144a8d5a17137dff82a8d945f65c4973d8693444cc635ac01c46d5d1c1f39e16c75199c56d26549ccdd341d156cb1800ef2065fc7f23125d37bd9c1c6ae758f29e122dc18af6cf1b11befeb325369d4b696ff94265bb3341ab37fd0f0c4da49fac6e384884c30fe7cd578bf9c4bc62344537be9394819cc2b8623fad61d448306de76fe271045949aafe46c2056351097d345a92d5d7fdaf3a630a44573bd978ca25797f09911701341069d18fbb9061186e205c4a4ee941e9196f55c4ffd7bb0d00f8f9a3f6d1cf09b2fd5d6f6a7a4165777118b43eae2aa76b60fa2e6624751c9d9c58b91b0910eea916ad4a4cfe9f9635db57ab88ddfd582b2dac6986367b559717c48153e169e35b9e70da0af03e868335fddfb6bd640cb8fd9384cead24dd26ee49e9d13de68082d9a82f606348daf3817a30ef6c556e17f0871cfc6dc2dac41fb692b7318f95530c252108673dabc87698aa659b37bf25912c82c63a310ec7799ac6e387de6fe0c2d83bc204ae9687eef47ee273e2d3b675cce4c1b704fd1128febecba5d474a6d0c4726792cb105db381354a6dcaa2081f979d070fbd28a338e1d1e05bd1fe6edc99d76b6ed87258b4dd7c2d476b06900b0756fdde165c7e87454beee53d7d2ac46af4fe9b8f57eb4ec0bcb653b6c2b8f9545ed741c381a2758ab0dd9fcf629650be7983eab2fc3a16c862f65aee206bbc932d66c150875ddd99006284efb204abc98f8a42cf652ee494404edd0f5e98709c8e13a56789dc9aa2a6793ddf0092f23007735c7fd3972c8468d7c8ba0f385a2bf61d19ab7c33bd82479db47e3c4dfc0f6e25a4817b134fb449c0af029017cc7351e529307cb2b92418c31a18c29ac707b1a3b529a8b94edd2922c2ac81b0e448e35a6dadc41b38ee787beff4eea79534017525e7d85279fbfa7a1e7f13ac2b5fa9a6665f2a450b074744c547f949133be1859160c0f10181cb7c5f564b898eaf58de66e19ece69ecaaa6c45932f18cb53c8be98eb8239daa74fb258da016c19b5554a5182bc9d3fc634a5643cfa6fca60fcbb377ff6a83e81b8f6b269080092478c868f965695dafb0f38a5172538e5ce8b027a0d6b97ceb02e5e6ab4cae29eabbe796c674f64617e3b6783bb2dd6c6b54851d5430ef803d15bf407cd91c364d6ba59efeaf588daba15a70a6bf447e81bc641038d23d3afe3e628f12906cc2c08d7bd29c8aa802d1d3448adcd84793a9f4cb461ff86c28b3b6bb1865dab4ee75f927d50c6cdc57ee2b08763498f3c32b6eb2bc745ee6143dc0f516311705a0538a90ea584c6449969d5967272895be11f0e4541491584b929c87b86a3761ec26018fee3ff61d10d12a43cecdf5dbbb379b715b0eb14130914fd8e897099777e7cc4b56d875de598fb044d91b0b1201701f4ac5d7e46276b397b7cc531e17494a2d2a0298a7dffc5478e52cc771d5cfad9633b04f9a4296fdc438d7bafbf0b1ded63a3e9eef71832bbc91e41f3f42d56d
+message: 2a1fdfacf1a0a37463ad6e1d5a43c79d480a
+signature: cd4c37bb20cc2769effcd854863a16d15fc7779dfefbaabe3e5068f1469df38a7d1e01cd7b14ee5ed9c635048bb9d9b92a6da69e193bec27dc570290a14f32fba9b17ddac4acb9eb59863d245d3a5b70fb41270fa26c7a4950e6da40fa965bc90e81f80171e05972cc73a537a42bd5f581fd5e5d9056faef15eff4cfe1b1bee95a591606565de6c45eddac199000814bb476f2cbfda86478d2f86db4a835289ac48d801fbb54ea05e38dc61d14070d51989c6fe63ec4b26b0771e0bdb593bf12f50011219939f51800ff489cf75d6fb77739d56525613a8a523b80f55f10b1f9bb4816601ce175d3c735c45dfcef3a7906e9c733f19d8931d8e42b135755b9cbec09b9a75d31a57736c5108b941b071879fb884cb67212e4e7dded77a34a6ac3db43d911cd3efb028e7292c8ebcb31667278c3e78cecd00adbccf59c3e7aa098f5980310c886631b6869ecedf533953383e4230e814f510f0e001654fe7cb82e79fd97019ac18b09ab868f424687fd72e0b0c98f95a55e58f5404b5d80d1e3ede1c9534087fc56799ff6ec8ccde49888f222beda7c67a92b64103c1aeeb029b8c6d074f508f0b2c4561acb6af65f7d2388a435c786784c5fd4a93b0070d2e814bc2629f08547e51ab2030fc5bb9f9d2c9f8ffc559469e61f36489c8ead592369630e1e59cc27b76d2853beb4a3d967352424aa0d9eb483296626365c0a06bde67baf3e4fc3be6af69cf770f73d417b8143f257cb7149ec15e2391ceb1e5b11f7bce2a11d22ac9ca12e4edc3e7e1560a97f0d0e08d3ed5b2df9ebca90d62bbe41b5d377d23227eebb2b22fa592d5c4608592e7081c2d586d64b51ba27324a016fdf0e8fc9aeeb4bf3ef65f1e20937abda7e7c10b7f6da7ef0cd3b2e0551285ef42c8beaed5f01bd4e28eaf821acea857fcbd522614ea0fe21169e2a69a78fa92c1ebedc4622a1f6ec7105c90134a92ff2ed5755a2060fa08f82795ee02c8bdec53237333e0a81c5a0c545b2e24e8662d09c1a64ab70bba0667f3af7b319056798715ca483d64eac2ff1a8f533372e00e87d0a83f25050ed8478ec509ff4f59492ef03fe6e0124bba9cb75f308db99941440dcc1663f45e0994a8427d84340fe684bd82767c2d6a6ae6d1ad23624222bf36c03508c34fce2350bff5a878095963d95c41545f6e26be428b38cdf10155900d3789f2f5f86b26bd4e0c483ea26bbf19cb752ec35ddb35e9dc1f23ba16ba173ddb70a9f40b3f6c13aac83a52e6fd2995df4dddba82f2622a57d360bdd3abae8146d0cc4f62b17dd995758c294bc6b12850b9a6382541075ee308dac2227b4a5963c671ece1744ea93344fba9c29c5d4355231b06f922124144df729b5f7316a347ba081bb0656664941da867750c9ae329fae405d268b03f2859798e3cfbc7adb76a3237976c13259b597493a3e01f39487ddbe4d0685cbcf3908ff11264f2c8620568a2388f3cc979d80cbea6fdb670a2a208dbd5bcda5dc5a4cce1464b9c3edfdba44c165e44152b220d4bcae06dbc23ac2aff8f18779595372a164de1f805b4fd7c02b1e1acfa3a66197a52182248d8727e72a8e237c8874815b568f298276372a1a646d8c8cf317cee60bd3178ee03884d4a55984ca2a9db8f94256b187cc382108938341f04b2839046aaa9e2df3e3956dffed1461f123ddcd2ff6dc7b693f2ac7f08a4517b77d4d329041cd650568b53ef63df5f1aa4f04ae8f9c9cba278252723450a394b1d98672592fb588f23a1e51e14656b4e0b2a7663583784f5c37573e90773b052e39804452323ea299bc8b4fd1a70b31e8603c9ad859f5fe2bb33a304745c7b98a9e32ad8814b08d23d866d4c70258b64704741680f36280b43be9d0623e4d2a87c79ee09259d35287fa29748529ae4422f82e9173452f14cb94fd2bc9f90083df08fba2ce4731e65131747430748f8c21aec99a99c01d351d9fd94ea888f0cbbd7a4602ea398cec77f995933d4518e7c471ac82701113733a7898eb39342ec8a4bee4e40e8726ddd60588200e39a2780cd04666caba5ef689db00df579b21e5ba3aa61253924f83663e590107a9b187215c04ab63958a612b50dbe7caed4255bc0d3f51a7f8445e8bd24fd170b8106b3a573ee0658dff56da16e424487a07dbde422c50336562a90e8e1f30b537ecf88bf5ce04c5e7b3a0336f33fced8aef8f3df94277544712bd218049b48c915aa590f8e49b55417fec3e2edd5e4783b945fde0b5132adc2e478af267ca9adfd8d5d0963ce2bdba6b2f4794d201fbe2cd6417f6156b1ac820acdb7512e16e492ffd3052639838afadf6b383ff5c7f2761d8df64404098d4d7c3fe63df2f7a030aa75ac03049f95b82fb40a68c892deed93e7b4a802732cb0ea90304d0401a246c92e882b330b3a78918a76d0ad237da6802ac53b7ef80cf33f2b1a5d662484760f0514eba1a41155d3d2902c417bac916b39c0ea4bbc8d718bdc54e8a8fc7eaa964a47b1441c1451a0ac0596eb85464491dd20a8482c2c9a36ef8ac95886c2008ad5cfb44c564e497d215b1c442fcf66ef75d16d2afd3f05237b1c3a73a4134f62aade6eeed1bc10ee32734261991fb2ca0436058678b7da292e2de3d2a025a10eda9570b5c723347ac25eb37ea966fa65d8e5114d00c665812bc777cf22a23cf9c9decbaaf95224db2e4823968d37e56d989b68e15a48d4b8d8560951488f20ed855253dcc341f9d5f42f6a89c0aa3f651bee75f51df95d1bf0598adc01f69cc59970782056d8a60716f51335fd43417c9796f84e724771531549c8b72765f5bd87f70a6b282d87a2c1e4bde8d23ded4b81aaf68724140e0e10784d86b1c10880584a78868db3c9f932f367c2b28141eb4af2ba124b31e9b548c47a5f49c80be4e9376834e070eb83031e937eefe16e3f113883c8fa86114c1744d4f6051a25b165d43aca46dad1484df355bed68103c28a8cc87776d534ec65f796540d8cc78f26f8f4413e16031c325ddcd57128cc5ce92bc832514729d2e6589ef6d35a9c9651caef65de9e29414c6619c05021720fcad48c0846859a3ce06d3ed240039321fb35180679272d85b68ae146b7fe2715238863ab8620c9506bcc416083d41465a316174714058dcba18ac19cc7ee84f279b42cf53c31dd4978adf2b430a9174e68429e280f066e88bf26168078495f12389b4d80d14bf286ce6b4651db66b59b1bfd06588346db21b68c00633b67349e9c609e4844122fe727261f16c765c6a42ea3015a79bb60974542b5af0902b82021e4768a6d974386ad87abb4e4f99e6993fef7bc5ff42c12e93cf231523a22eca3bb8533efe60092ec54a4e001912b7ab4093fb961a5d0a6f0450068993357188f75095de36dc173f4465ae784e773cc69acb0b633a5d301202711bb2bc17a1390cbacf3ce8bec159b732188b8cafe49c04a73f020ca423dda4cb7109310f3466f2626bed942c46c45e6116a00beb1a5d5244213ff3b9652a901e40b5d4ebc1b5ef2ae7eca7808565b3c04d66a6b2b384d262b5dbebcd685054a6ef758d0fa4d9d8e82636ed0c50249cc2b2a6645c4f8d17f1883e61ba3a0711720723b21b3466e30613c83c6223c2c7faec600e7935617f8ad287a8f69a0e24fd55bfaa02ca19e83a7766795c541f4e0ffa6d1ac1f304f75c09150facb0ae330fcbcf68520a7adcff76f0c29f605b9ad8f67489718a45af264a763caf0bd1f7b21ae4983ba3b923b02be44d71029cd57df7e414de428694179f239615bad522cb3116a78e58309f5c4e0d15e9659e2652866fa4f0d2e803c6577709277fd0035c169e5cd23f0d6fb9669026b45efd02b678608aa65ee05772aab5a59827cb1476181bae69ef208fbcadd94bbd2827b76a07656a626b37b5b6765bf38ba479d767b0ad661fcc5f5e1c03059c974b83d51b1c356b66bb9bf4b4e1540c41c0a3b9947bdcb776eca40e3c63911f663e696b369904928647b500e16365a65374e39288c463e075ed25c47ab0f265821995571bb8a843b35c6d2ff5147392b9ec04d905dd24af0f39c3f0fd7bdbce9456169388e2ac0cf713c1694cfb7dbdbfeb38692bff7ee5281c6936df2320a9da21480d1ac7fa84830570963aa6fea49399c07959aa6aa245e03490a216e21a27f09dd930c16f56248ac6963640b46b586db49f6cf913fe880ece1063ba89f8cb782d225c2d7432d44c9c311753f19c58e77113e1969bc9be5763c04c8d684c9d93b4ffbf8683573274af0e9fe0f6b9994d40a100ec008c376e8187e1dfefec86d06cbea89cbd9d9ea838c279451bcefe27f3e720cc4022f4deb34e8512a888975e2384955458b3d219d089154f9d356e716463ac85e87124b68a1d880256203dd3d8ff54bb4a127a24d1efdb6262e84ffec1e6c0f75d15cc9fbfc7b3affced3de92970101535e515bf6dce0e620f1f530f08a25c3f25f7b518778e3208f6d607c7d232153c635622b7f1082855fe2c05db91ff86735e29c42704eca2af5e02612f82c0780471a020819af310125175ebb4d293b3831a6ec21cca3b7c8dfd401193a6d03c2532b81e0506e73cca430991b3430e38889fc9ddef1525567174a7b4e611171c39549ab7c5fc364e728de0e8eb495c78a1a6bddc0142466fc4d40000000000000000000000070f181f262c
+
diff --git a/crypto/mldsa/mldsa_test.cc b/crypto/mldsa/mldsa_test.cc
new file mode 100644
index 0000000..71d1280
--- /dev/null
+++ b/crypto/mldsa/mldsa_test.cc
@@ -0,0 +1,346 @@
+/* Copyright (c) 2024, Google LLC
+ *
+ * Permission to use, copy, modify, and/or distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
+ * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
+ * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
+ * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */
+
+#include <openssl/mldsa.h>
+
+#include <memory>
+#include <vector>
+
+#include <gtest/gtest.h>
+
+#include <openssl/bytestring.h>
+#include <openssl/ctrdrbg.h>
+#include <openssl/span.h>
+
+#include "../test/file_test.h"
+#include "../test/test_util.h"
+#include "./internal.h"
+
+
+namespace {
+
+template <typename T>
+std::vector<uint8_t> Marshal(int (*marshal_func)(CBB *, const T *),
+ const T *t) {
+ bssl::ScopedCBB cbb;
+ uint8_t *encoded;
+ size_t encoded_len;
+ if (!CBB_init(cbb.get(), 1) || //
+ !marshal_func(cbb.get(), t) || //
+ !CBB_finish(cbb.get(), &encoded, &encoded_len)) {
+ abort();
+ }
+
+ std::vector<uint8_t> ret(encoded, encoded + encoded_len);
+ OPENSSL_free(encoded);
+ return ret;
+}
+
+// This test is very slow, so it is disabled by default.
+TEST(MLDSATest, DISABLED_BitFlips) {
+ std::vector<uint8_t> encoded_public_key(MLDSA65_PUBLIC_KEY_BYTES);
+ auto priv = std::make_unique<MLDSA65_private_key>();
+ EXPECT_TRUE(
+ MLDSA65_generate_key(encoded_public_key.data(), nullptr, priv.get()));
+
+ std::vector<uint8_t> encoded_signature(MLDSA65_SIGNATURE_BYTES);
+ static const uint8_t kMessage[] = {'H', 'e', 'l', 'l', 'o', ' ',
+ 'w', 'o', 'r', 'l', 'd'};
+ EXPECT_TRUE(MLDSA65_sign(encoded_signature.data(), priv.get(), kMessage,
+ sizeof(kMessage), nullptr, 0));
+
+ auto pub = std::make_unique<MLDSA65_public_key>();
+ CBS cbs = bssl::MakeConstSpan(encoded_public_key);
+ ASSERT_TRUE(MLDSA65_parse_public_key(pub.get(), &cbs));
+
+ EXPECT_EQ(MLDSA65_verify(pub.get(), encoded_signature.data(),
+ encoded_signature.size(), kMessage, sizeof(kMessage),
+ nullptr, 0),
+ 1);
+
+ for (size_t i = 0; i < MLDSA65_SIGNATURE_BYTES; i++) {
+ for (int j = 0; j < 8; j++) {
+ encoded_signature[i] ^= 1 << j;
+ EXPECT_EQ(MLDSA65_verify(pub.get(), encoded_signature.data(),
+ encoded_signature.size(), kMessage,
+ sizeof(kMessage), nullptr, 0),
+ 0)
+ << "Bit flip in signature at byte " << i << " bit " << j
+ << " didn't cause a verification failure";
+ encoded_signature[i] ^= 1 << j;
+ }
+ }
+}
+
+TEST(MLDSATest, Basic) {
+ std::vector<uint8_t> encoded_public_key(MLDSA65_PUBLIC_KEY_BYTES);
+ auto priv = std::make_unique<MLDSA65_private_key>();
+ uint8_t seed[MLDSA_SEED_BYTES];
+ EXPECT_TRUE(
+ MLDSA65_generate_key(encoded_public_key.data(), seed, priv.get()));
+
+ std::vector<uint8_t> encoded_signature(MLDSA65_SIGNATURE_BYTES);
+ static const uint8_t kMessage[] = {'H', 'e', 'l', 'l', 'o', ' ',
+ 'w', 'o', 'r', 'l', 'd'};
+ static const uint8_t kContext[] = {'c', 't', 'x'};
+ EXPECT_TRUE(MLDSA65_sign(encoded_signature.data(), priv.get(), kMessage,
+ sizeof(kMessage), kContext, sizeof(kContext)));
+
+ auto pub = std::make_unique<MLDSA65_public_key>();
+ CBS cbs = bssl::MakeConstSpan(encoded_public_key);
+ ASSERT_TRUE(MLDSA65_parse_public_key(pub.get(), &cbs));
+
+ EXPECT_EQ(MLDSA65_verify(pub.get(), encoded_signature.data(),
+ encoded_signature.size(), kMessage, sizeof(kMessage),
+ kContext, sizeof(kContext)),
+ 1);
+
+ auto priv2 = std::make_unique<MLDSA65_private_key>();
+ EXPECT_TRUE(MLDSA65_private_key_from_seed(priv2.get(), seed, sizeof(seed)));
+
+ EXPECT_EQ(Bytes(Marshal(MLDSA65_marshal_private_key, priv.get())),
+ Bytes(Marshal(MLDSA65_marshal_private_key, priv2.get())));
+}
+
+TEST(MLDSATest, SignatureIsRandomized) {
+ std::vector<uint8_t> encoded_public_key(MLDSA65_PUBLIC_KEY_BYTES);
+ auto priv = std::make_unique<MLDSA65_private_key>();
+ EXPECT_TRUE(
+ MLDSA65_generate_key(encoded_public_key.data(), nullptr, priv.get()));
+
+ auto pub = std::make_unique<MLDSA65_public_key>();
+ CBS cbs = bssl::MakeConstSpan(encoded_public_key);
+ ASSERT_TRUE(MLDSA65_parse_public_key(pub.get(), &cbs));
+
+ std::vector<uint8_t> encoded_signature1(MLDSA65_SIGNATURE_BYTES);
+ std::vector<uint8_t> encoded_signature2(MLDSA65_SIGNATURE_BYTES);
+ static const uint8_t kMessage[] = {'H', 'e', 'l', 'l', 'o', ' ',
+ 'w', 'o', 'r', 'l', 'd'};
+ EXPECT_TRUE(MLDSA65_sign(encoded_signature1.data(), priv.get(), kMessage,
+ sizeof(kMessage), nullptr, 0));
+ EXPECT_TRUE(MLDSA65_sign(encoded_signature2.data(), priv.get(), kMessage,
+ sizeof(kMessage), nullptr, 0));
+
+ EXPECT_NE(Bytes(encoded_signature1), Bytes(encoded_signature2));
+
+ // Even though the signatures are different, they both verify.
+ EXPECT_EQ(MLDSA65_verify(pub.get(), encoded_signature1.data(),
+ encoded_signature1.size(), kMessage,
+ sizeof(kMessage), nullptr, 0),
+ 1);
+ EXPECT_EQ(MLDSA65_verify(pub.get(), encoded_signature2.data(),
+ encoded_signature2.size(), kMessage,
+ sizeof(kMessage), nullptr, 0),
+ 1);
+}
+
+TEST(MLDSATest, PublicFromPrivateIsConsistent) {
+ std::vector<uint8_t> encoded_public_key(MLDSA65_PUBLIC_KEY_BYTES);
+ auto priv = std::make_unique<MLDSA65_private_key>();
+ EXPECT_TRUE(
+ MLDSA65_generate_key(encoded_public_key.data(), nullptr, priv.get()));
+
+ auto pub = std::make_unique<MLDSA65_public_key>();
+ EXPECT_TRUE(MLDSA65_public_from_private(pub.get(), priv.get()));
+
+ std::vector<uint8_t> encoded_public_key2(MLDSA65_PUBLIC_KEY_BYTES);
+
+ CBB cbb;
+ CBB_init_fixed(&cbb, encoded_public_key2.data(), encoded_public_key2.size());
+ ASSERT_TRUE(MLDSA65_marshal_public_key(&cbb, pub.get()));
+
+ EXPECT_EQ(Bytes(encoded_public_key2), Bytes(encoded_public_key));
+}
+
+TEST(MLDSATest, InvalidPublicKeyEncodingLength) {
+ // Encode a public key with a trailing 0 at the end.
+ std::vector<uint8_t> encoded_public_key(MLDSA65_PUBLIC_KEY_BYTES + 1);
+ auto priv = std::make_unique<MLDSA65_private_key>();
+ EXPECT_TRUE(
+ MLDSA65_generate_key(encoded_public_key.data(), nullptr, priv.get()));
+
+ // Public key is 1 byte too short.
+ CBS cbs = bssl::MakeConstSpan(encoded_public_key)
+ .first(MLDSA65_PUBLIC_KEY_BYTES - 1);
+ auto parsed_pub = std::make_unique<MLDSA65_public_key>();
+ EXPECT_FALSE(MLDSA65_parse_public_key(parsed_pub.get(), &cbs));
+
+ // Public key has the correct length.
+ cbs = bssl::MakeConstSpan(encoded_public_key).first(MLDSA65_PUBLIC_KEY_BYTES);
+ EXPECT_TRUE(MLDSA65_parse_public_key(parsed_pub.get(), &cbs));
+
+ // Public key is 1 byte too long.
+ cbs = bssl::MakeConstSpan(encoded_public_key);
+ EXPECT_FALSE(MLDSA65_parse_public_key(parsed_pub.get(), &cbs));
+}
+
+TEST(MLDSATest, InvalidPrivateKeyEncodingLength) {
+ std::vector<uint8_t> encoded_public_key(MLDSA65_PUBLIC_KEY_BYTES);
+ auto priv = std::make_unique<MLDSA65_private_key>();
+ EXPECT_TRUE(
+ MLDSA65_generate_key(encoded_public_key.data(), nullptr, priv.get()));
+
+ CBB cbb;
+ std::vector<uint8_t> malformed_private_key(MLDSA65_PRIVATE_KEY_BYTES + 1, 0);
+ CBB_init_fixed(&cbb, malformed_private_key.data(), MLDSA65_PRIVATE_KEY_BYTES);
+ ASSERT_TRUE(MLDSA65_marshal_private_key(&cbb, priv.get()));
+
+ CBS cbs;
+ auto parsed_priv = std::make_unique<MLDSA65_private_key>();
+
+ // Private key is 1 byte too short.
+ CBS_init(&cbs, malformed_private_key.data(), MLDSA65_PRIVATE_KEY_BYTES - 1);
+ EXPECT_FALSE(MLDSA65_parse_private_key(parsed_priv.get(), &cbs));
+
+ // Private key has the correct length.
+ CBS_init(&cbs, malformed_private_key.data(), MLDSA65_PRIVATE_KEY_BYTES);
+ EXPECT_TRUE(MLDSA65_parse_private_key(parsed_priv.get(), &cbs));
+
+ // Private key is 1 byte too long.
+ CBS_init(&cbs, malformed_private_key.data(), MLDSA65_PRIVATE_KEY_BYTES + 1);
+ EXPECT_FALSE(MLDSA65_parse_private_key(parsed_priv.get(), &cbs));
+}
+
+static void MLDSASigGenTest(FileTest *t) {
+ std::vector<uint8_t> private_key_bytes, msg, expected_signature;
+ ASSERT_TRUE(t->GetBytes(&private_key_bytes, "sk"));
+ ASSERT_TRUE(t->GetBytes(&msg, "message"));
+ ASSERT_TRUE(t->GetBytes(&expected_signature, "signature"));
+
+ auto priv = std::make_unique<MLDSA65_private_key>();
+ CBS cbs;
+ CBS_init(&cbs, private_key_bytes.data(), private_key_bytes.size());
+ EXPECT_TRUE(MLDSA65_parse_private_key(priv.get(), &cbs));
+
+ const uint8_t zero_randomizer[MLDSA_SIGNATURE_RANDOMIZER_BYTES] = {0};
+ std::vector<uint8_t> signature(MLDSA65_SIGNATURE_BYTES);
+ EXPECT_TRUE(MLDSA65_sign_internal(signature.data(), priv.get(), msg.data(),
+ msg.size(), nullptr, 0, nullptr, 0,
+ zero_randomizer));
+
+ EXPECT_EQ(Bytes(signature), Bytes(expected_signature));
+
+ auto pub = std::make_unique<MLDSA65_public_key>();
+ ASSERT_TRUE(MLDSA65_public_from_private(pub.get(), priv.get()));
+ EXPECT_TRUE(MLDSA65_verify_internal(pub.get(), signature.data(), msg.data(),
+ msg.size(), nullptr, 0, nullptr, 0));
+}
+
+TEST(MLDSATest, SigGenTests) {
+ FileTestGTest("crypto/mldsa/mldsa_nist_siggen_tests.txt", MLDSASigGenTest);
+}
+
+static void MLDSAKeyGenTest(FileTest *t) {
+ std::vector<uint8_t> seed, expected_public_key, expected_private_key;
+ ASSERT_TRUE(t->GetBytes(&seed, "seed"));
+ ASSERT_TRUE(t->GetBytes(&expected_public_key, "pub"));
+ ASSERT_TRUE(t->GetBytes(&expected_private_key, "priv"));
+
+ std::vector<uint8_t> encoded_public_key(MLDSA65_PUBLIC_KEY_BYTES);
+ auto priv = std::make_unique<MLDSA65_private_key>();
+ ASSERT_TRUE(MLDSA65_generate_key_external_entropy(encoded_public_key.data(),
+ priv.get(), seed.data()));
+
+ EXPECT_EQ(Bytes(encoded_public_key), Bytes(expected_public_key));
+}
+
+TEST(MLDSATest, KeyGenTests) {
+ FileTestGTest("crypto/mldsa/mldsa_nist_keygen_tests.txt", MLDSAKeyGenTest);
+}
+
+static void MLDSAWycheproofSignTest(FileTest *t) {
+ std::vector<uint8_t> private_key_bytes, msg, expected_signature, context;
+ ASSERT_TRUE(t->GetInstructionBytes(&private_key_bytes, "privateKey"));
+ ASSERT_TRUE(t->GetBytes(&msg, "msg"));
+ ASSERT_TRUE(t->GetBytes(&expected_signature, "sig"));
+ if (t->HasAttribute("ctx")) {
+ t->GetBytes(&context, "ctx");
+ }
+ std::string result;
+ ASSERT_TRUE(t->GetAttribute(&result, "result"));
+ t->IgnoreAttribute("flags");
+
+ CBS cbs;
+ CBS_init(&cbs, private_key_bytes.data(), private_key_bytes.size());
+ auto priv = std::make_unique<MLDSA65_private_key>();
+ const int priv_ok = MLDSA65_parse_private_key(priv.get(), &cbs);
+
+ if (!priv_ok) {
+ ASSERT_TRUE(result != "valid");
+ return;
+ }
+
+ // Unfortunately we need to reimplement the context length check here because
+ // we are using the internal function in order to pass in an all-zero
+ // randomizer.
+ if (context.size() > 255) {
+ ASSERT_TRUE(result != "valid");
+ return;
+ }
+
+ const uint8_t zero_randomizer[MLDSA_SIGNATURE_RANDOMIZER_BYTES] = {0};
+ std::vector<uint8_t> signature(MLDSA65_SIGNATURE_BYTES);
+ const uint8_t context_prefix[2] = {0, static_cast<uint8_t>(context.size())};
+ EXPECT_TRUE(MLDSA65_sign_internal(
+ signature.data(), priv.get(), msg.data(), msg.size(), context_prefix,
+ sizeof(context_prefix), context.data(), context.size(), zero_randomizer));
+
+ EXPECT_EQ(Bytes(signature), Bytes(expected_signature));
+}
+
+TEST(MLDSATest, WycheproofSignTests) {
+ FileTestGTest(
+ "third_party/wycheproof_testvectors/mldsa_65_standard_sign_test.txt",
+ MLDSAWycheproofSignTest);
+}
+
+static void MLDSAWycheproofVerifyTest(FileTest *t) {
+ std::vector<uint8_t> public_key_bytes, msg, signature, context;
+ ASSERT_TRUE(t->GetInstructionBytes(&public_key_bytes, "publicKey"));
+ ASSERT_TRUE(t->GetBytes(&msg, "msg"));
+ ASSERT_TRUE(t->GetBytes(&signature, "sig"));
+ if (t->HasAttribute("ctx")) {
+ t->GetBytes(&context, "ctx");
+ }
+ std::string result, flags;
+ ASSERT_TRUE(t->GetAttribute(&result, "result"));
+ ASSERT_TRUE(t->GetAttribute(&flags, "flags"));
+
+ CBS cbs;
+ CBS_init(&cbs, public_key_bytes.data(), public_key_bytes.size());
+ auto pub = std::make_unique<MLDSA65_public_key>();
+ const int pub_ok = MLDSA65_parse_public_key(pub.get(), &cbs);
+
+ if (!pub_ok) {
+ EXPECT_EQ(flags, "IncorrectPublicKeyLength");
+ return;
+ }
+
+ const int sig_ok =
+ MLDSA65_verify(pub.get(), signature.data(), signature.size(), msg.data(),
+ msg.size(), context.data(), context.size());
+ if (!sig_ok) {
+ EXPECT_EQ(result, "invalid");
+ } else {
+ EXPECT_EQ(result, "valid");
+ }
+}
+
+TEST(MLDSATest, WycheproofVerifyTests) {
+ FileTestGTest(
+ "third_party/wycheproof_testvectors/mldsa_65_standard_verify_test.txt",
+ MLDSAWycheproofVerifyTest);
+}
+
+} // namespace
diff --git a/gen/sources.bzl b/gen/sources.bzl
index d8e96ea..f65972f 100644
--- a/gen/sources.bzl
+++ b/gen/sources.bzl
@@ -369,6 +369,7 @@
"crypto/kyber/kyber.c",
"crypto/lhash/lhash.c",
"crypto/mem.c",
+ "crypto/mldsa/mldsa.c",
"crypto/obj/obj.c",
"crypto/obj/obj_xref.c",
"crypto/pem/pem_all.c",
@@ -543,6 +544,7 @@
"include/openssl/md4.h",
"include/openssl/md5.h",
"include/openssl/mem.h",
+ "include/openssl/mldsa.h",
"include/openssl/nid.h",
"include/openssl/obj.h",
"include/openssl/obj_mac.h",
@@ -622,6 +624,7 @@
"crypto/keccak/internal.h",
"crypto/kyber/internal.h",
"crypto/lhash/internal.h",
+ "crypto/mldsa/internal.h",
"crypto/obj/obj_dat.h",
"crypto/pkcs7/internal.h",
"crypto/pkcs8/internal.h",
@@ -727,6 +730,7 @@
"crypto/keccak/keccak_test.cc",
"crypto/kyber/kyber_test.cc",
"crypto/lhash/lhash_test.cc",
+ "crypto/mldsa/mldsa_test.cc",
"crypto/obj/obj_test.cc",
"crypto/pem/pem_test.cc",
"crypto/pkcs7/pkcs7_test.cc",
@@ -816,6 +820,8 @@
"crypto/hpke/hpke_test_vectors.txt",
"crypto/keccak/keccak_tests.txt",
"crypto/kyber/kyber_tests.txt",
+ "crypto/mldsa/mldsa_nist_keygen_tests.txt",
+ "crypto/mldsa/mldsa_nist_siggen_tests.txt",
"crypto/pkcs8/test/bad1.p12",
"crypto/pkcs8/test/bad2.p12",
"crypto/pkcs8/test/bad3.p12",
@@ -950,6 +956,8 @@
"third_party/wycheproof_testvectors/hmac_sha512_test.txt",
"third_party/wycheproof_testvectors/kw_test.txt",
"third_party/wycheproof_testvectors/kwp_test.txt",
+ "third_party/wycheproof_testvectors/mldsa_65_standard_sign_test.txt",
+ "third_party/wycheproof_testvectors/mldsa_65_standard_verify_test.txt",
"third_party/wycheproof_testvectors/primality_test.txt",
"third_party/wycheproof_testvectors/rsa_oaep_2048_sha1_mgf1sha1_test.txt",
"third_party/wycheproof_testvectors/rsa_oaep_2048_sha224_mgf1sha1_test.txt",
diff --git a/gen/sources.cmake b/gen/sources.cmake
index 11d97be..4647360 100644
--- a/gen/sources.cmake
+++ b/gen/sources.cmake
@@ -383,6 +383,7 @@
crypto/kyber/kyber.c
crypto/lhash/lhash.c
crypto/mem.c
+ crypto/mldsa/mldsa.c
crypto/obj/obj.c
crypto/obj/obj_xref.c
crypto/pem/pem_all.c
@@ -559,6 +560,7 @@
include/openssl/md4.h
include/openssl/md5.h
include/openssl/mem.h
+ include/openssl/mldsa.h
include/openssl/nid.h
include/openssl/obj.h
include/openssl/obj_mac.h
@@ -640,6 +642,7 @@
crypto/keccak/internal.h
crypto/kyber/internal.h
crypto/lhash/internal.h
+ crypto/mldsa/internal.h
crypto/obj/obj_dat.h
crypto/pkcs7/internal.h
crypto/pkcs8/internal.h
@@ -751,6 +754,7 @@
crypto/keccak/keccak_test.cc
crypto/kyber/kyber_test.cc
crypto/lhash/lhash_test.cc
+ crypto/mldsa/mldsa_test.cc
crypto/obj/obj_test.cc
crypto/pem/pem_test.cc
crypto/pkcs7/pkcs7_test.cc
@@ -842,6 +846,8 @@
crypto/hpke/hpke_test_vectors.txt
crypto/keccak/keccak_tests.txt
crypto/kyber/kyber_tests.txt
+ crypto/mldsa/mldsa_nist_keygen_tests.txt
+ crypto/mldsa/mldsa_nist_siggen_tests.txt
crypto/pkcs8/test/bad1.p12
crypto/pkcs8/test/bad2.p12
crypto/pkcs8/test/bad3.p12
@@ -976,6 +982,8 @@
third_party/wycheproof_testvectors/hmac_sha512_test.txt
third_party/wycheproof_testvectors/kw_test.txt
third_party/wycheproof_testvectors/kwp_test.txt
+ third_party/wycheproof_testvectors/mldsa_65_standard_sign_test.txt
+ third_party/wycheproof_testvectors/mldsa_65_standard_verify_test.txt
third_party/wycheproof_testvectors/primality_test.txt
third_party/wycheproof_testvectors/rsa_oaep_2048_sha1_mgf1sha1_test.txt
third_party/wycheproof_testvectors/rsa_oaep_2048_sha224_mgf1sha1_test.txt
diff --git a/gen/sources.json b/gen/sources.json
index 3bb5ea5..1ac7ec2 100644
--- a/gen/sources.json
+++ b/gen/sources.json
@@ -353,6 +353,7 @@
"crypto/kyber/kyber.c",
"crypto/lhash/lhash.c",
"crypto/mem.c",
+ "crypto/mldsa/mldsa.c",
"crypto/obj/obj.c",
"crypto/obj/obj_xref.c",
"crypto/pem/pem_all.c",
@@ -526,6 +527,7 @@
"include/openssl/md4.h",
"include/openssl/md5.h",
"include/openssl/mem.h",
+ "include/openssl/mldsa.h",
"include/openssl/nid.h",
"include/openssl/obj.h",
"include/openssl/obj_mac.h",
@@ -604,6 +606,7 @@
"crypto/keccak/internal.h",
"crypto/kyber/internal.h",
"crypto/lhash/internal.h",
+ "crypto/mldsa/internal.h",
"crypto/obj/obj_dat.h",
"crypto/pkcs7/internal.h",
"crypto/pkcs8/internal.h",
@@ -708,6 +711,7 @@
"crypto/keccak/keccak_test.cc",
"crypto/kyber/kyber_test.cc",
"crypto/lhash/lhash_test.cc",
+ "crypto/mldsa/mldsa_test.cc",
"crypto/obj/obj_test.cc",
"crypto/pem/pem_test.cc",
"crypto/pkcs7/pkcs7_test.cc",
@@ -796,6 +800,8 @@
"crypto/hpke/hpke_test_vectors.txt",
"crypto/keccak/keccak_tests.txt",
"crypto/kyber/kyber_tests.txt",
+ "crypto/mldsa/mldsa_nist_keygen_tests.txt",
+ "crypto/mldsa/mldsa_nist_siggen_tests.txt",
"crypto/pkcs8/test/bad1.p12",
"crypto/pkcs8/test/bad2.p12",
"crypto/pkcs8/test/bad3.p12",
@@ -930,6 +936,8 @@
"third_party/wycheproof_testvectors/hmac_sha512_test.txt",
"third_party/wycheproof_testvectors/kw_test.txt",
"third_party/wycheproof_testvectors/kwp_test.txt",
+ "third_party/wycheproof_testvectors/mldsa_65_standard_sign_test.txt",
+ "third_party/wycheproof_testvectors/mldsa_65_standard_verify_test.txt",
"third_party/wycheproof_testvectors/primality_test.txt",
"third_party/wycheproof_testvectors/rsa_oaep_2048_sha1_mgf1sha1_test.txt",
"third_party/wycheproof_testvectors/rsa_oaep_2048_sha224_mgf1sha1_test.txt",
diff --git a/include/openssl/mldsa.h b/include/openssl/mldsa.h
new file mode 100644
index 0000000..521a155
--- /dev/null
+++ b/include/openssl/mldsa.h
@@ -0,0 +1,143 @@
+/* Copyright (c) 2024, Google LLC
+ *
+ * Permission to use, copy, modify, and/or distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
+ * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
+ * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
+ * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */
+
+#ifndef OPENSSL_HEADER_MLDSA_H_
+#define OPENSSL_HEADER_MLDSA_H_
+
+#include <openssl/base.h>
+
+#if defined(__cplusplus)
+extern "C" {
+#endif
+
+
+// ML-DSA-65.
+//
+// This implements the Module-Lattice-Based Digital Signature Standard from
+// https://csrc.nist.gov/pubs/fips/204/final
+
+
+// MLDSA65_private_key contains an ML-DSA-65 private key. The contents of this
+// object should never leave the address space since the format is unstable.
+struct MLDSA65_private_key {
+ union {
+ uint8_t bytes[32 + 32 + 64 + 256 * 4 * (5 + 6 + 6)];
+ uint32_t alignment;
+ } opaque;
+};
+
+// MLDSA65_public_key contains an ML-DSA-65 public key. The contents of this
+// object should never leave the address space since the format is unstable.
+struct MLDSA65_public_key {
+ union {
+ uint8_t bytes[32 + 64 + 256 * 4 * 6];
+ uint32_t alignment;
+ } opaque;
+};
+
+// MLDSA65_PRIVATE_KEY_BYTES is the number of bytes in an encoded ML-DSA-65
+// private key.
+#define MLDSA65_PRIVATE_KEY_BYTES 4032
+
+// MLDSA65_PUBLIC_KEY_BYTES is the number of bytes in an encoded ML-DSA-65
+// public key.
+#define MLDSA65_PUBLIC_KEY_BYTES 1952
+
+// MLDSA65_SIGNATURE_BYTES is the number of bytes in an encoded ML-DSA-65
+// signature.
+#define MLDSA65_SIGNATURE_BYTES 3309
+
+// MLDSA_SEED_BYTES is the number of bytes in an ML-DSA seed value.
+#define MLDSA_SEED_BYTES 32
+
+// MLDSA65_generate_key generates a random public/private key pair, writes the
+// encoded public key to |out_encoded_public_key|, writes the seed to
+// |optional_out_seed| (if not NULL), and sets |out_private_key| to the private
+// key. Returns 1 on success and 0 on allocation failure.
+OPENSSL_EXPORT int MLDSA65_generate_key(
+ uint8_t out_encoded_public_key[MLDSA65_PUBLIC_KEY_BYTES],
+ uint8_t optional_out_seed[MLDSA_SEED_BYTES],
+ struct MLDSA65_private_key *out_private_key);
+
+// MLDSA65_private_key_from_seed regenerates a private key from a seed value
+// that was generated by |MLDSA65_generate_key|. Returns 1 on success and 0 on
+// allocation failure or if |seed_len| is incorrect.
+OPENSSL_EXPORT int MLDSA65_private_key_from_seed(
+ struct MLDSA65_private_key *out_private_key, const uint8_t *seed,
+ size_t seed_len);
+
+// MLDSA65_public_from_private sets |*out_public_key| to the public key that
+// corresponds to |private_key|. Returns 1 on success and 0 on failure.
+OPENSSL_EXPORT int MLDSA65_public_from_private(
+ struct MLDSA65_public_key *out_public_key,
+ const struct MLDSA65_private_key *private_key);
+
+// MLDSA65_sign generates a signature for the message |msg| of length
+// |msg_len| using |private_key| (following the randomized algorithm), and
+// writes the encoded signature to |out_encoded_signature|. The |context|
+// argument is also signed over and can be used to include implicit contextual
+// information that isn't included in |msg|. The same value of |context| must be
+// presented to |MLDSA65_verify| in order for the generated signature to be
+// considered valid. |context| and |context_len| may be |NULL| and 0 to use an
+// empty context (this is common). Returns 1 on success and 0 on failure.
+OPENSSL_EXPORT int MLDSA65_sign(
+ uint8_t out_encoded_signature[MLDSA65_SIGNATURE_BYTES],
+ const struct MLDSA65_private_key *private_key, const uint8_t *msg,
+ size_t msg_len, const uint8_t *context, size_t context_len);
+
+// MLDSA65_verify verifies that |signature| constitutes a valid
+// signature for the message |msg| of length |msg_len| using |public_key|. The
+// value of |context| must equal the value that was passed to |MLDSA65_sign|
+// when the signature was generated. Returns 1 on success or 0 on error.
+OPENSSL_EXPORT int MLDSA65_verify(const struct MLDSA65_public_key *public_key,
+ const uint8_t *signature,
+ size_t signature_len, const uint8_t *msg,
+ size_t msg_len, const uint8_t *context,
+ size_t context_len);
+
+
+// Serialisation of keys.
+
+// MLDSA65_marshal_public_key serializes |public_key| to |out| in the standard
+// format for ML-DSA-65 public keys. It returns 1 on success or 0 on
+// allocation error.
+OPENSSL_EXPORT int MLDSA65_marshal_public_key(
+ CBB *out, const struct MLDSA65_public_key *public_key);
+
+// MLDSA65_parse_public_key parses a public key, in the format generated by
+// |MLDSA65_marshal_public_key|, from |in| and writes the result to
+// |out_public_key|. It returns 1 on success or 0 on parse error or if
+// there are trailing bytes in |in|.
+OPENSSL_EXPORT int MLDSA65_parse_public_key(
+ struct MLDSA65_public_key *public_key, CBS *in);
+
+// MLDSA65_marshal_private_key serializes |private_key| to |out| in the
+// standard format for ML-DSA-65 private keys. It returns 1 on success or 0
+// on allocation error.
+OPENSSL_EXPORT int MLDSA65_marshal_private_key(
+ CBB *out, const struct MLDSA65_private_key *private_key);
+
+// MLDSA65_parse_private_key parses a private key, in the format generated by
+// |MLDSA65_marshal_private_key|, from |in| and writes the result to
+// |out_private_key|. It returns 1 on success or 0 on parse error or if
+// there are trailing bytes in |in|.
+OPENSSL_EXPORT int MLDSA65_parse_private_key(
+ struct MLDSA65_private_key *private_key, CBS *in);
+
+
+#if defined(__cplusplus)
+} // extern C
+#endif
+
+#endif // OPENSSL_HEADER_MLDSA_H_
diff --git a/third_party/wycheproof_testvectors/mldsa_65_standard_sign_test.json b/third_party/wycheproof_testvectors/mldsa_65_standard_sign_test.json
new file mode 100644
index 0000000..fe8a362
--- /dev/null
+++ b/third_party/wycheproof_testvectors/mldsa_65_standard_sign_test.json
@@ -0,0 +1,841 @@
+{
+ "algorithm": "ML-DSA",
+ "generatorVersion": "1",
+ "header": [
+ "Test vectors of type MlDsaSign are meant for the generation of ML-DSA signatures"
+ ],
+ "notes": {
+ "BoundaryCondition": {
+ "bugType": "EDGE_CASE",
+ "description": "This case exercises a boundary condition (e.g. in the signing rejection loop)."
+ },
+ "IncorrectPrivateKeyLength": {
+ "bugType": "BASIC",
+ "description": "The private key has an incorrect length."
+ },
+ "InvalidContext": {
+ "bugType": "BASIC",
+ "description": "The context is invalid (too long)."
+ },
+ "InvalidPrivateKey": {
+ "bugType": "BASIC",
+ "description": "The private key contains out-of-range value(s)."
+ },
+ "ManySteps": {
+ "bugType": "EDGE_CASE",
+ "description": "This case requires many steps (e.g. many hashes in the matrix expansion, many iterations in the signing rejection loop)."
+ },
+ "ValidSignature": {
+ "bugType": "BASIC",
+ "description": "The test vector contains a valid signature."
+ }
+ },
+ "numberOfTests": 67,
+ "schema": "mldsa_sign_schema.json",
+ "testGroups": [
+ {
+ "type": "MlDsaSign",
+ "privateKey": "f5408337d0fee65c28851226a5fa81b58464632c78e2a9bef70d330f2e3a5f743fe2130a9185402b9ceee616adcf0aeb1b0adc5b7bd65b8469d9f73abdd491c7659d92d3c6412cab96a2de13921e6e28264326efab5964afee6490ef637e546aa6b61aba997daac4623b0ff33b4bbd1a11b2942500c737263b5a7b599c454d8442073855220447142672283106762324611334160331766716756876656306340247416643645788214401245418430332335014484266482863377264642414206877226544283410340543730247627225170453086122730061663720413006672700563545553308822632620516184200008121626450075764267612441006130131054105366434124552571655324024583437672387040523848872722438820242507702366302474748842265201861837063577540747600354316761325342724414244818807083666356763458818178730038860216678417556380528118134053806822634757706213780383068245037164828641644088712486666263228563278454077257226514241838623545046705775223416234252343326255430503041432773656045076111030080425435056385571604503837242375546781881637734567572558705071178084805270422810171125366178026263016101361657832287864742571181540760851116286862663367644442262567158480021516651834322735675322048815731072442030787610367014103700472855221118750731347147044142277174111214348353566824008064045627684488722675430832058628153456611117540326632627423710448122776364844470152004860248280007708325718482525552264175551177652286873852661125522335557583772044467545176204662306421267463234564162341677110818645117237332101582140278868362167651433830007175820104352222533408675507171265571436206825831530330505138722014332544414101453361865663285823831165654236338452842635115828271801121281582618708170531302365851580567783463004004872080286853401722161683240507540174321162726623307704357168735441623362805550771378557544025577664653883727145477726652161328654636765354441580462755002525303617004457666056523833318532171037664380506224158805461788342412558636736557807030038168058241037440287466117173258168248137753751448321557734277603877752226522005384287417756673375054253360826560561501724117752720403752166506773562110186547571130831846605687668266432088723466508134167088157733748882573483206443607642671007311272002682616013071771238832745526182648607836043640787500384324825714344453303465740312784685175588706426626253688784802024002168480055006521746017031355351420356313376038357500434586744155331653510137233135501164040340443180537652161358720413477471755650162313051181844240248360407773704517351058764775404747121083306411352302550060311617664848461285205032215087833220558462453850275140274158215805155381750850757850271010637641250528012682211173613444785706268032670127024707747567314772632848841668565545456641117066848041360116507056675046470163210801085300085527862576471877326436205146166232414075335513375673166307774724018723351488672332685528233522486007870307457262016571753124063541231514175538351737543321726247362412023101043212535074048080016006886215511021520172701460518406542024738500552450424583471822538241124124282248288348872240758184343246825136527273210452765138144072540628287154522674671801747806751802628540570743817583756538088277258068473227163621044527db3e8a7b37950eaf9af3770bd6b8f8c9572b54256463bebfcfa8920624daa12fccd1c228c4668f688976a5094a00b6e30694ab2e017cdc2d4315a381bbe84ee58340cd6bc6fb225ddc2bf8dc117ce2be59993e5a521f5296126f290d10097bb2b9f171ff3f5de8a5047e76a15594c3caddc7c0caa852b8aff91f435d3f039d3f27963c357691e9c9ee543f32a77691f8b8ad98d711f8191f5c9891f593d8c754b07621a42cd25a2e95c32156a356f7bf71d6a3d1be00c7364741f2eac5d0c5fb3ef93c6339b559c9b2c4f518927fbe1b87d49546d0c9ba801c224a1cca84916aac512fbaef6841f725c72b927b55d920bb9b8df4e89b9b09da7adc24fa3f9834a8a0380bd42f07801e4afac2bc1e852dfe41b0903990289190ddcdcc214a680e0247938a4b54b704bb6f0affe7ce2171ab7e05f8cb96abc352e44e9b9f60f6ceba0ff95703209197657d8228e93dae9a9f478a30700a6cdddb4ad484f963afacb39a3186e94e097fa25ab149c4c438458b24369f62f87159396f37de36fbcdae2acc7b996a90f66c6de64ad905ba6d4508d3c453e7d43ecb7c8692244f3de88c975046189a438f61a1a84e8d0eb11f93dae6c80dee63c2a3ece5b794483d60493a84dfd4d267eaa205ad0b9491e656e267eec42f5d3094982452ca10b420552d684242bb72d651d47e96da49077d73dec8fcbaeda2ace53156bb4d4392e21fe094a2a32d3eb3d4163ab50a8528800464c05cf2db162da56dc13e709844dda7cbae47ef8364c8c3d5fb471f9407bffafef778486c304088801624aa2318433459b4794f4c31ec2cac49d56504602db94a5b882a92b06ba9ea1ac40523fbf4ec1dd473c076d3e397941c821895beeb4b5fd5eef9246ed1ac724a2aeab43c56a6584bffcf4aed0c6629d5a59b719e5d677539c3dd620d861ee7f9c0a5f116a17e4bb3b16a8017e668612c1038b576e39dedaf7d848d02024c0065f1b896ad6594af4477c73544ef51f3e612c80f11150b1f394b9fd899fa6d927535efaafb745133a45442241579e57701399ba23b0ba62a2ef13b5eead46f02d2c5a91fc031e458be09a8b5d53d9843278590bf556e2258b371f14f07cedc213302ecc895e15be2eb0e771e4b1d6d10fffd2ab945dacc52287e8667ecefaf3c959dc5bc18d0d953ce392acaa67e3f457630cf266c7665253c3c04cef5a73aedee0cfd06efc300887d4694dbbb717f2813737d0fae91e434922ea831ae41349e44ed0fe9101309dee68c1337f050e9e16113e8ba47877202b97113b3b876f4333ee620cfe37b69e597162ad40d78f5a7be33ebdb38b9eb84dea68e01de157c7e74f4522836b64d146f719df851b60fe69cea4667daa057bc47a47248fc3073a904239c0f8757cd8aa52e5d837fbc6490a0ffd9a3dfbeed09c24c61e48df0695d8f37f5670aca01a3fbb2a5fd3bd57cf38c453f80f9de428aa0d860b13231c5b2e435905bae792ee21e6104535204f9ab1f90d8c3123e57e2d01b0091ed089b9083438510579190478b86980370bb0170992673394509aea3a64d241b0d5388614282c4172796b00bcb034769bb492c0fdbc88c1a30a040d637a7b9c496f620114546133fed394ab79413268027d5418bd61e6ce3ff18ab83f76ea0a2e5694a48c01931cbd1c4bb02a3515ba3fcedad86e74b2848902089986bca91694dfa712b97c4f2878f287590aca47afb18d1ee6f502b90749f8ca1d796309c5bc96f5899f70fe0b4b5061668e62891b5285546f0dd2176649e5cba2b206953c7b66c57fe2e67c1c6e45682322d82c569c543840722756b7b4c92aa059e59983fcc327833931556346b83d7519b3a6b93691e74af6d26fb61bac9cce2f880d1f194d084171809bef926e99218f664bf18f58585985534281b6008d86f48f8c4044a4e4c89f4f08cee869c6a09b96df42d6435433d247e9e1150ac5b09da7f66d4f2eb0fc7f8f22bf11a0b03c9958f0562030d2c93b1c4a554e86b00f7c2e464aa54fe018bed4578f3ca0ee8644c3537b86da324703e7779fa897fdd4b867f7620e7fad29957f28067524ea180380428995ea333a3f291fdc67f0364cac8683e199a9a85c7caa3cc29db52f84aa0d0d07d5677d74816873e0af727a8555149d41d40a1eeb5944328a23b1be9e55ea81bfe461c86bb1fe3995e9f8dc83a77b06257c6356089bba2bd44e2a7acacf6de34262d22b0f899d0abd705637ad5ed1de2691e498851db106f1bcdada3a2f96908d3774f661fe2e8ec3ec598b936f4dc4d04b80efa4f57f3c55d0ff990b313643a8126aaa14d898e338f5a261ae5bb17b854cb1a87ad626d3b4ee29c567baaf409ad53891f707c148f49ec16f9882db396d1f140ba9e8b0c9a0cddde6592e5e82de0b18dea363e8605ca364aa68ebdc5f3220b810125fc787d339c6a5a68c92cbc64b5d265ce7a03a06a2409a8a18f000691cfbc5b205bcc1926efb589b82a7404d1bedf09e88ad286f7711a6d67ece4bf76fd86556e840d73f353d31b4d1c3dad5e83f72d540c601983cde7171e67b805bdabe3cd6788e30938b0398c1c8cdd5f8f1028f123d2d612611ce15f7637d2d751e59df171a4014efa4e8420bfcdb75b77c63ad1dfde967d4cd44792d1868d6df3c5bb5f1f3617861e24ee6fb58c33e6b82a57b29422dc0c5aafcf0ccf44557ede0e9f7d32be95f4a214524a30d37b85f1783c3e77b7d52e8648afbb9a03435c59d6afc2ed3b6ee434620c0b368ca6337cc7228916c5857d1bef27502014a0798ab099a7d7d9f053175b9e94d4e3736794034bcc92a842edd555dc74e69906a8021430655b3907ff0d5af127c847902c783e5e51bb45a3e4da6bca417774417fe2cd5d8448c5422eb55ebff2a44a378d528ab06419e6ee4ff6608eca6b44b8c71f55faa714bff9727dd3163b090330713d90813375c88b8681d491527f89b87f9433cce8f6dcd83fbf4f00215b3caef344b38ab4bd9bc5e3dcc3624fb60ce34acd7340b14d9ab48df15b1cc839265b791a417f90cd463df719fd69869aafec64df9bf010498e8d6397e1cb696fd68b38ca9ab1faf67b7123ad01781ffce12a3dc2b703cfa73dce16de7c3a09eead7ed6a644f96ae33a4bf179122906c969e99d9d99dc3472de3c48e80be4e9685602b23400bc292ad6f2fd34a2afb87660a010fec11d3ee82c164fb267957b6651d9150cfba16650952f8f8863709bf5644b0e4738c45199824511fae580548c7f655f0bf0bf3102002d80c2b2c3adfdf358f2a38346032120519b31dd906d3e26518b867d1dcb91caa5567976cada346044dc8e7274c0bdc0597556ad059f711868b83b8da5920304d08cdcfd3d5d427287f5b637fb7e2c14253452915fd6c6614f93c3900c6b3469d7bd87e2e5f15629316a7e8d4dc12ac80a89bb8c6ae7238144f82792bd04c2e741beb130c2a5a9caeb09e8f02b1480ad42486d0d8e5229072dc139115493c2c747920ad76391dddfd66feac8744d5662014bce98728b8d",
+ "tests": [
+ {
+ "tcId": 1,
+ "comment": "baseline",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b",
+ "result": "valid",
+ "flags": [
+ "ValidSignature"
+ ]
+ },
+ {
+ "tcId": 2,
+ "comment": "empty provided context",
+ "msg": "48656c6c6f20776f726c64",
+ "ctx": "",
+ "sig": "69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b",
+ "result": "valid",
+ "flags": [
+ "ValidSignature"
+ ]
+ },
+ {
+ "tcId": 3,
+ "comment": "non-empty context",
+ "msg": "48656c6c6f20776f726c64",
+ "ctx": "436f6e74657874",
+ "sig": "3a1f0e89fa72e489e2c4c1607b0f22ad03513725660d1ed7cc9a6b83580247a101ff45480e4ba49b1feb3bde46952139d3e1d34d7da0124e8ffa05bd19698be57ffbd5c2411f01a0588898cf4af2b3f3e1fd83e8befe03806d91869eb496c8ce989761da7190e036eb2bd14a8f9e195d5ab8a1b2b11dd56a098c1e7ec6d508856aec98b74850e1b934600b8b7d33cea5f79877cb9b1452a2fbf5fe09651c83c2b965aeb496a2a4edacd4f6f39d56cde44c2f99c2f0b548501220f553a1ad14c6d8a970d1cd6dabd4356568621d22c70dbbb21dab61c10876e34fb20d3f012eec956cdc9ed81c98e2810c218dfbe1de709ceec9dc2eb2590d31fe9855f8a1d14849f9df5120bda5a0392fd6cd93e2e8e5f80e6b30f45e9b409f9e251a0ca2aa8ab99394e9190f3c2cbd1bda77b49f9ac887e7ceefc333cbc49d080726cf373753addfd13fd4204f12c07a21fe2ae5d513eff664c0ae4780f4d4f87a807ec63efe098e7d196223276f4564efdd574402c77390d2cd72f4785501f89175f6d38768b6c77838723cfa66d42e3556077039ee8fb363b67c174fb70f78008229263350c14b54fd9361a9cdb29fdc57909c757f96f9f2c13905f44c3e40a16a92b0fe509ae9cc3647afeedb032464b176b6a1afa78df4fd6bb765e37071172bef2b6d045b9a51701d111b60d0a639c0ba034d5c6b4c146d079a340fe53e9cace778a995ceb2d39f302f066097eec6f65f775a5e803f10af031dcb3eecb2bc4939f478c5fdb96e0513d9ea90ee2cd46ba7fd45f88e8c38a23e06fc5b2c624708a5dee0d00bcd976a8f75e35c80caec5531ff4ef8bb735cbe7ffce86290eef23248b19272692b758bba1de7a66c63a58315e48f5b127849c759d185908a730f1f29272003e6491a0b4aa9446da297338e04a60bd5f8413778aa08cc0d146ba76a5ebadc775af2b0b3976acb54de8910417f857499d8395be90d207615dd061317e5385b886281699e484a7f958715dfdf3ec30d5423d94e0d1657a24478967513fc741fce01f848f9fdb8fa407b7cda2f7a0eed64d9795a2bcc9e12c1d09b4d71cdc9dc3fd2ba82251f0a9fe5ff32732d2306900184e4296bf4b5b92c106d72a638c5f6713f49a7099786b32ba7a8081aaf0ca40f9919e0645fb255c8a7f4aa672999ab84a19b9d759ce478b7492b48a83eb9bde46e7c5ea1883d03487ba01c8a9c4c798a765b18b311115d02911dbaa5566190006ba40f5ee86bc22eda4ca3d0e8fee49b1a61c4057d95cf797c30a7e06d1012c1af3622629de1765d3bd928df0cb9cc7e30299c5148f782af4871556a0ec4358019ef6a434ea3e0292e97c714fbdb3ab14837257947eb7adc9c1d682123a016432e1eea5afd039bfbade397a9360b674832d2c55d521820c0cbe68bdfbba6eab8189aeeec781362fb289883d2a2fe87e287b8d940ad6a4136b7b388b38b0913f2fba42dd079cac04a071636b7e5bca67b44860cdd9e5f9cd77f07e524e9491addac1c6a66dedf5a4f814fa54eb9586bfcb1a6d4a1a166b1074d28a9915167ac4cf279e8d22555df57cfba8bde251483d9b2aef08a180ff74edcbc1bc2219f01fef23d77fcdc1d41ebe683ec96a75a4784945335736770f63a5f000da542958558b5ee375c1c16a109d488d8b17daf2450f35e0ae08fecc139bf8d5f51f1d9a1cd738ac3bb1e91a3bcdbf79c6bcc9a09eb11bc97a7062fc4e4e1c2e796241dc42481d3dc89b31d2337e8cf727c43dd393bb738710ef7ff96521dd92be410f295c765a823e1984e63c534d5f040753715edee4c3f0c78cd468eb9322ae8d5aa92b88bb172082cd08148a8d208d21dac81f0cc516d08f9c0b7097d91bf73badf049b62085328e347e20cd6ac26c64be5271f4761a16ce90ec9c58b2b71c998404e1411f1a1c5c6a6fcbf260eb3e325d1f70132b5f41a279b082712005347fc7d8a6a960ac1ffefb33de83cd6bc704eedd8ee937487635b696975a7156473937d7c301579c4e531170a6d109d50185693d9dbea24781f391fdc1baca492f00867d362797392af50da481552b86f323bd297b6a0cdce20287f0ee6119be14905ec55851768ef95d50130965c6877ee8d91e1fe19fdbef7c80ef7f93968a0d717c354f071bc8cde4d69c84a6e876a261e620a0f7c959da0c638b32d58325b13ddc9fbf566e1f411edc9b38a2bd031a7225551c4bc596958b1c22d5ecfabd2c09448417ba8568938a1cd02068d4ae3e0821dc96247ca6b704a0af99acbe5ec66b28b7c461da48743ccf387771a15eaca6392341dc4657d5c4c986b0648e712ec50f22e3d68b272dd9c34b63aec5686daa5a0f9bd259138b6d967cfa368c04c48657b2de2133b4c47147877e080d5588b09ab0b19d947b6554aaf43601b1c7384707f3091331a0583abc41bf448283eaa4bb001a44836de63e66eef64b04d82ad32c4369bdca012df554097e493e77e1b26acd103b564b6e8134012aec9cdc52eea80955a76d1beb2cb87782157adeadf2ae6c6a4b49c031d6769be9b42e6f85c8c5a6d61947f931c321b45dc34822c8523408c77bfe32048719537361fe6a1c9a8f3467cf5529dd597e19285304c716f9144debdfbeeb16ed742fa17440e02cdae4816699faab22cec162054df5d6ceb6394cadadf5d60abfe5c1dbb3790e4a98bcd9a84f6d4aa8e5934d80b40d8da632ce6640ceb070ee6034947a094337c013075c1a1267a95c820b7eb5f2aaaf20736f09502faa043cecc39f2ce7ebc0a14f846e38fbd514b935d2a46dbeb778223f20694985d27273a9be7e1be3c7dc9b8af87c58d35f4cf6559f48d27cc7eb1c050c76d85edd69995ea3b2e54868556758014ea18e18c11db61c56436ca2ac66260635d927a72cd707ff5e533704477bf9f578848196e311369842846588febd3a229d0b4fc04a5848d98ca55c3996e34d2154efe73a63f052da1ceb72bcd844dad8a4a4546cc6f94b2029b4e2c8a65d2b50673668e7abce6f054d50145b744b8103592bcb4804b446e1b7f4910843f5cba5a34e5b17309eb287c39bb98f6c220024e7582367d3e5e83737ef64944437c9d462c94f61c754a887ae4e5f1d2d64497d2b7fe8e885af00e8e8ad2d998b921a654616866e492a32742f319efef91df3f2e3d2697a4a12b107ad94da1d64ee6c67f0e9cf5aadae3eef52a22ebe342199cbcad564cd11685e0678ea3c91bcb67278ae4a6ce5664e39e86c3233cbdaf812516aa824754f6493cd5559848a71275b35f503ac84ccec4fd172b09f9ac40543a54059eed72f77eaa8d56645986ec8767e78c2df76f33e549b561b977fc5daec7436735a46956077b661fd05dfa124fc30165d5a14d9215e75c3134cae2a7a8fa490dad2fa745003c2d74d83ed13db927f4dc5cfd856c758b39915ccfb695c915c3ec5f3257ec38a0ddfa1401c3527ca271c856f2b00fc4f44416f7a387aae1e88ca212d81a6b4ca1e61c1ed2809e41e78ad8fb170ba1e0b138f061fde62eb7cce2eb8ae434b37fd4eb78b85990e7f6d21b32b4cf9dc57fd9b46fdbaaaf25139315a99419cfca963b19c3fc2923c041bf43ccc6147c3f9736a162a20152ee40effd6a3a29523d77dcb14a70b4ab512bfd11980e30bfd77304eec045d50b5923e22def0c83439e4d0326d9a20e53c43797dcbf17014f80ebc2b66fa6045a8b402b7fb182b43bb8ed6d569568732723b0f7807ac79bb676f35221258fb1283bf7c275b2872f2c625b7e1211b381454ce044a3e8a634488ece71e6fc58b84668aa744302b8a061b5674cdad160c2d9ef600385998c9f002fde9c829a6be84fd27b8cdb8f328064210918f28189e0dba18535d978efa8a8157cd5a477db7e3c909a54ae886008a65ebdc3eb3f06b89ca21ac3981d064fa15f01b1ce801a2c515af3298c4fd5979e6a651cec9ca50476773a755f96478397dda65db9fc32b2166dec033bb46fbad0edfd03f3c543e144c15dbdca9b83f2c3f0d5357cab1180472c7264317b319ad50dbd476b8f6545d86e5e399cf6177461141ce2e438db3100a0bdf957266c9758f7039817141bab0b3ea234c317554a1b30081eeaa6ccf3406a2a3e38d0376d2c50ff03e770be90cc3bb1c05ae9ab546e21d5f1cad5a4df5b53684789e534f2983bdf41bf9244d9594e889a2eef8a64789b0e327d3b48a06229ff0e48d669cabd64b7d0aeaeb4990571e275c3026a75106083b32dd1f33511877c7bf78fa415243d59474044bad21c773e39bf48619a7bec8b55b951b79f097cac697860b20c09bacde7a5e8054774db8da54742c32264f62246ad1945be13f1f7c856810e9205fa8dd797fbd4def035107f85ea309c1565f0ee1fc1e312d0bf753aed6a8b7704d8a1b2e88703511e6ec48c17ad33cac96aced306c8c08dbfc12c242d6fa52c4e51faf4cd3b331f57544f371fdfeff6c2d5abd7a38ef1abeef3a003aaa7ad6d4dbca80cde878cee6c46429d86c64c73671093e9567cc807f9f3cd9dc501878051166220c2d90915ef8e5eb46c0c07befd7a63cb38f5e9b4a8f32483d998b67fba733e7888c6297359fd32791beda81f7e8cb5d8ee05124b646db4ebee1e477c86bbbdc8d9f2151d99b8e6f0f23250649faadbe7ed2642505d7c89919bc10000000000000000060e171e262f",
+ "result": "valid",
+ "flags": [
+ "ValidSignature"
+ ]
+ },
+ {
+ "tcId": 4,
+ "comment": "longest context",
+ "msg": "48656c6c6f20776f726c64",
+ "ctx": "414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141",
+ "sig": "88b645448a1c81f55c81631d057b1ca1fa8bb42af19f1c2dd2bf12594f23b86e17e383aefec687503d0077658497fcc508c8f7b9b6ece29777cd6625c4accd38e27cc4822ffb61fef18380362d29ec040773c9a2ce8b6dd7a1dfa233b76774ea41c766915afa7954f5e24f992d1dba4862802bf775d70c422100717a0e4d9ef9e6d217588cc6b9e1199aaa4d89e78ec1c7ba567c645538e4e6cb7cbaed4dc0663ca36fa036ec1d4334249cc6183033459c3035b4b56f0837f15ad908e2d9560b39e13580497ea8d5e8ae5ce71ae876b5b1e1deadc205e8bec65a724eebc1534155c1f81a93fb5bc6d00df71d8eade2905942a4d6234ce72bec2eeec3edfb7da4a6cc67af12c616bc63dbc16ff1467f02fa0c99a4b135b6a71e37222982f91cb466ea920fea4a729ed09d763e4dfb1bad062ace603c65f952e2df88c6ed63fb344d353265f21aa0e5548676c5d4dc24ff7f1ab1aa91ee19e9d0e72599c85f51fbdbd4f7d21a35ca87ceb19cc9d28df071538f34382fe278bc512f534cbc1f747a4497bc5827de2aa7b672bcf44988611c2e8e8ff88ec64e4ea101d47c88672b1794c1af23ae4317b6b5fd2923ebb7c25239d9efd86489fe8177f6f27de7e80833a344c3b907300c73ce9f9cb2a39296c59d70e180f14261a51814ca7c8117e33f800c126df8c92de498ba9a443b480c9f6c23d26e73b0299eae2a1223756132e3999cdcbdd436a9fcd5073c3e6212ca0dd3e734e355567bd26776526c15dd1b2c2d09d8604da0c0cb38dbf5fc4615d9d5a5ad217690308e34f549981656be6b144de153b9a428a314a19549688d57c8bb4543f12424622e1971c3b26772b3e74743d668c9008debf1ddd942ede5206ead676f249b93a324d60bcda8be119a61f9bec64253ceea1fc95ca5235ba41ff8814f83698bc3188ab802f2a6f33b25412a729635b7e530536bb90972750ec905ec1336e613112ced0a3e68427a2888b4135f8eebe4d4a9cb104627ddc182f319bf0586b82a9edbbc17c11abab38f2add065fceb1d419259597e4ba91ec5d15502f3253bbeb75917b2fdab1c8457af97ec864263d8dc501e9ac754f59cde0373efd9b18463a27eff11199afae22711c18172e077a0feb457b08ae8e3bc6614a2603e95eba9eb230dbf48c5173c1893268fad24e31a5bd323d5b224c0a9fa5fce2afd61178390fdce163b4ffa1d8aafb248ddce727070677310cfb36695b8846c4a32a9973c88ba0e17a1c26d62f716858200752970ed6490eff966201c9ed9cf223ce714eac732d52e0f63365c3b2789bf8a09642475407da12fa19394c55919af3a02d31e26f4270d71eeccc5c5373ae35d1fd9a07d500623b1827c4674287083cecb466f584e31ec933bde9c83c57e8a90a141eaf4c456688f8ca1353e64ebc7cce779241df3e34e7353cdd3af446812c4448383efe1613e5f1f6e9c08c0d5971e7ec28874d7865e3bd4cb1fca0f7ca1fc499c718a8ede6f91a8232991ccd78f918ada16271e84c6b8b679a8d5ab5f7a07ebc82b01f58de7a92753a028679ca244a72b13eb5ed2910da55a998c1f427d2403d33862b05292b1c0bec902b51f4efa0264e6295318c6a44befc85e00ca887350ad86ef9fc45a4a01322522f74b7ad63abc6c08da9118319d84c0b2164c9300feb1f2ce80de5a79918bae083397d42a9f415a40f0347d25c82723d62b1fe52d02a90be1cd7cfb5c1732d644db047eb48b50ff38ca74929edda7385cea85a07c798cf773d4d4e29efb70125307582752001d8f3a4ecde8db26964d34f5563a6683d4939d237ff6a68361f0d2e863bdd15c39637e83efb2b75902220434a273b3ccca148267aae092d8a2b0aca3ff1b352cd6b331bb63ea3e69cce2c86174c8b2e0d061a35b067f2fe7d9999e2c1c07f07b1e98246af36403b2a2bdf48c7e4397b3045303dd8e3af1138389b0967fcd146124fcc97fa524e10afb0ddc1294b7543f77d0dbf0bd845b7f9c36dd91222ac30f89d59d3d048949a456b43338cb1ff1b8392b083fb6fd71797cb21ed52b94377c9c69d90111a30612e65aba8e85fcd95fe53b49f18952380c1a9d9347d21e9a00633bb119481d7292ffd25ec5d4dd842ba2c775757f1a5d26025e4156f3db85741bfcf60f5efd580bea6fc617ebeaa78baf88a0db57b13bb5dbabb9cfd6c8a56b635ecbb1fba800a0cb30a6c241096f6df1f04bd44b3b99a93545c6cbe6986e5260384824875a4ea2ec84e6574fb6f08103c4da71c6689cba16cd28e8626233bafb4edb9ea07bd02676351d57261586832ad67b87ad61a59b7e7b8519e85ccde56722a6cd2a7649afd5034f98f1b9c1cfb7d320f491dc90002bca428a88cd063a3b30ef09fcbc5d6a4ecc6887e0b05b4179c0bd4d8f4791c5cc6a801b4c54e6568469b22b52638a5a514e550df53aaa1ae83fc9999658f86ee16661e301626fe77b064bf94b00fea4b8dd0237906fdfc6cc5294e526528675dbead67c7a4de642af3d9311cd8f2ad66002bcbb35668da0b8f2f02feb11b1b89c264cb5a088de45093cb72c4e6d54ecb5f1ba5ceeb2b95c023b412ab52e77338bc3859369fbb6996a35842b578a3d844d1facc6e7ff7bf31959fb16680cec82534792913dc2aace4143f412b09fd09aea82ae48f2d16323a8abae6527967058e62311f3458ec0f999a3ecc087501b40a0bd25f6fa6d126775bf261d0f3c4d428dc78c6b594bda8426342728ae4035e8527e24e01ec3ab9193dd2a72c84524aaa685bd3ace318dab3be7d89eef18a887c772242895ad9d555c444c670f2641c462295ec0620eacf3ba75b8fe914f1be38dfd9d12b501e09f931556c8798e1a40806c67833fbd2fd40227e3854e6af14a7b9b300fdee969e84c76b9a142b23de64c27ccdab63394c6d39e66315ba1a376282e8f7580ed60eddf9ce0724c57aadc7a8ee5b491605ddcd4c4949cfd6cdc0abbaee10238d57b5dff3b38d3607e8780d7bed5f52f524ea06a94ba7e2ed980aa132fce04004670d520215f715e2ffcae2ce336af653a754e53de4ac26feb591e923a6a5cb9aa97e71f52d0f4698f02eeafa894faf56121d380e24d2d82dbd5687e162ac7e93c6d97029660485d5db8c886480c6339df8d7724201a80dc54cb9637767522e50e5ce696ae29a04fb5b4b6740bfda56a9b80b507bada2aca4264f0de6493e6a7f631394838aeea1eddcc9142fe31558b4756f4f2745f31b58c2c1dc1b2550cb5bdea478872ab91393048a908673106690c8afad8096bd928e32c965bdcc3a7cddc9411cc36faff3d9d4e7a5afad0d0c5d3de867b990490edd8497f3a03ecd131e7424d5b0d29543b3cc7ddb6a1522372b11de1649046ce787f6fc8219b0a3bb508f1d6ec2981066dae16fd127df52cb9055a139d7a68f0f4bbca77e7ca8ff6902a4d87a59671da1b867840fa0e07d8e3667253a41525ed18c679c74cc2fb1b7b00ea98090eb6f2a24da3885efcf6fa31c66732614083d114e7a2b0478184bd801fb36e79f670eaffedb9a3b56d7648009c6e4c33da1f9888b54ec108d21c68fdea0bc60af17b6958479f91ca9685d9704553d2126c3cd240deaf5a0aa8bfca0e37899af660fa9fb5aba33ed1a5ea5e388015b6cfcaae014e933969623a66060f5d396d3bd0793ea79bf9189ba24a36c1b79dff7bef60f921f27d2a46874b282d5ab9839722b495fd6b0ff494f3410e0988006f8b4bced46f7d0f41678097c4f8d5b690055d47c37a887e0fdb1ef45d90be23f59d637f27bc13f25750b83c005e68ce669fe15e47f33b4bb989f043fdadaf7c11dd0e652542d5103ae73d41ef574dd82f0a1144508076276023c91adde4b126772ef620b6450bf5b25fd29dbe3a529014b47243328e309ff4245a8aa667408ba5b4255879ba6bfd4f57cfed9219f88c7656838afeb58aba3d86157a4d1385e7a29d4db695702566f424f3b84f9464a1de1e5ead4683b38f672cbcab96b2c23e796107ff5bae2f63418fd3ab622868312cb1aa45911ebe5ad6ceec0d9138f1e10410758f024f1b641dc099e5bcc83fad7d21d503af50f7ee12da5ed1883689d8dd0edebf6085d90380f5b55af179ddab5df7673c24a253bc3d199d41a0e860477eb1055ab7883528c9602ac748dc1de5cb18d191db75f81eea0db9949ac34cc284643b2f84b5b3cb13369a5ae40a4b59a4462783c66df5c84d123fb6e171ec2f7801622b5efd6dddf28dce5ae844db98e07a24295ec20159448e2fcbafac66c004f6f9a1c29ddef7d500d83e783443f192c79205efebf0c104f56c59c59ce7e1906c6c35b78417f1d9faf94aea8e9c77d84f1e021b40423688dad22c209c9615f0f09557ccced493c06f4b1a4bb841adcb50070eee4d40ce61eaadab7294051682318d6fccfde090f447303426949dc93f2aa1b78c70e68e7409969e74aac563748827a232cb8c277a3a71d53d8ad9044e78ee4dacdfd8f31d9def44a9cf36f48f019f7013a2c622d19505236d18b3ac6ec5eec629b801783979f9bad8ee2c363268689c037194bd8cdc3b4db694e443328ea40122235f7809d403910667d99324899ee1b5f8890d65ae93d5a899fa9d5ddf6324a99bcbfc3f1688ae4000000000000000000000000000000000000000000000000000004090b131a1d",
+ "result": "valid",
+ "flags": [
+ "ValidSignature"
+ ]
+ },
+ {
+ "tcId": 5,
+ "comment": "context too long",
+ "msg": "48656c6c6f20776f726c64",
+ "ctx": "41414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141",
+ "sig": "",
+ "result": "invalid",
+ "flags": [
+ "InvalidContext"
+ ]
+ },
+ {
+ "tcId": 6,
+ "comment": "signature that takes 1 iteration(s)",
+ "msg": "0700000000000000000000000000000000000000000000000000000000000000",
+ "sig": "424ac14fd2cf3f7eb28b104a7418909e84eff42d2f6e7c4ed3874838f8580d918a5d229f8ad72a0e093959da15f05e9942fad12ac1fe73c9de377b85a0f9d7203e6f8d3d4e83e5ac52a82b7a77c0096d92d40f2c1b7e194673faeaf16d7bf11342956d14d7bcd45f98ac9003ec86da5a1b2775d0723ba7350b81ecabc464be480d834b3965fd6554d340b9a11add210c6228f29a8932b8b6a00263777039533e1580faca62a7885372fe15b4e441a7595a13966fc05a95926fec9eed7563b1347d2b8d55e15212148e9f7e6e6b3e8dc30c6a1d213f66f574588ddf5d559438b1bfe01e851b15108baa97b64273d2e850b8ad504d2defb158e1ef3d4af5e1cbebfdf8a0e8037ba4def90bfdde7f2eadb3da96becd9e6a95e286e120871217aca6a8756f3ed7a11c2f75e1a82f9ab0234b1cc2c8178ad690e8c2798f1eb8b83178f39d7fdd09f44d7df268e7e062566a4516b1a1ceb97049df4646e8156e678c5f1fe2705b0c261db71a9932b8f41950e326a2200908c4c0bf3681384ae1501f5ddef8ab98133519452c725eb84f36814577108508809015af4d8758c23afea3815a09537477e8f6c7694a81c1d08c822843b9e67d95592eff819f6c2927e403f9962f36364ec2dbfe494049884d61695331e32abe6272d5a44961b8679879a67b142aa40729630d8d24bc69caf17774c6e2b3021b9181a8a498586a0f7d4109c5c82841454785873670dd2f60a4c278a373986333120c1b17b4297620bf72c7fc126205c1b240c6d60399b715579adfd96492e350a4145ede8d075ae544d051f58bb9991575a6ddab224c9c83a39b6fa9b49444fb0d2b8e32464c216e42d02091ff25122f85f9454f6d818034a30e6252cb0d25b572de3ab1c669709e04fbdaeffa26d0fc67d250da0864c71d74f8c08b5ad15cb95a33ca5b03d9573e83b35cc173afd97e88b9ea859861384cf8ee6338bbe5768cdf9c84cabdb8b332aaa7574ba200d496aa1d6be562f59be022d7d9cc63fe6a35100b664694b5bd1f5a610cc3d7a670f45b47befb8cf705339a8a5adec9fbb9f1fc4196fd3ad2a5ec9f3c9bd48e96bd6ac7276bb00705aee192106388f2fef2cd3c7cf00a159459314260dc49d9630d9bdfd0245db95fff41703f3236ed1bce77582dd6de015ed6d8dec0f2f2952fafc0e11479487a21c1cd61f1a9410dc730dfdf01527c6ae4072eb1591fb5f9b6117dabd9458331d9fdf582acde4b9001c6b6c6e048120cf15534db40e7b8f77fdff60b08a0ed6a802095fb76c71062dc34a612fe34f6598529c2028487457530c154d18709381cdb36b4ec697a2b921ec9056c86c5e73dd74b63f1844b1240c703c6f6373018c2daebb7beb55ec0365c76725063a3fd212ba80bc951baee1b58ceab532e58754ea44b0cf815a0624e2a0cf5dea9bfcae56b7ac74e4627a05bd8a2539ea4d25a3aceb003c8e7b750f0e8485eebc84b130a54ce8926b54cbb54b94db057f993ab426fe1a3be7a997782fab08cd704b1628b9d40af916730014d71d71d82bc09a7a17855c314b9febd079e371598103a4fc6923fa47a1979fea54c0bf7542a6e54d5cb92814c824d94753095d2fab232153f204d16aaa6acba4c72ae358eab79a8b51ef06db93cd5acb606ddf4dfbbc031f697486c284ef2627e3e65a5998f746d6ed934cedc1204c72694f6738ef0de7cf25bd147c938f3e7efd6def80c01b690ed200c21f56df02f7f31e90c0f05e61c60e2279b307664f491fac8f3315e48040ed63f6b68cd7821bd9447a8cd9d95aca3b16d721ef8e90d668636ebb4974553f41e7e9b075eee4e83e118fa74f2d7197fa135dc53146e7c194645e4f07412693320117cc3cdb1bca814e0e30fcf5590ce237e0479bf088cb0f68c2dc0b53203c7c007a4bc6361a32e3e153cbef1163eba0a3d7e5e133fb30c6f37b3f92e94abe270e7c3e8c97056bd12a1d588f919d65db51accf624e0a356d6e6e0da3c67dc298746a39b6313bb658e3451a2b1abf7efb6c1e63b83cfaeea9a17ac8f22587254227f5adb2f41f367bb9e4530c7fb93b78cbf60b7619a25f2f7a00aff9d935c294e82102eb0e96da7c3d4c87ccb896a5e5ee3ee13da3d94655a66c0c3d781a67c23bbd53cd7eea563a8d63100144ede22e3af96b69ca18d5d5be5849d27c1db28298d485e2fba3c7f68297c7f883049d73ffbb3a300c5aacc1d8a805205602e410e76fc48adb109cd47624c2822e6dcc0db0a28be5401a79659d19b8bbdf131ce04fd6278130aa2f203b9e0f52134a3dec5a97c4753da3127288ea0969fcee232837ea067e8a34b6dd4e1ecd7f37b8e956d137be78be955854a75d84a339f3e80bebe8d295ec1149bbaf115bfc84e8cce1cf994fe067dbcca2ce1c378180bbceda95444ae535a9ffe1819caac5cf95b86219e95c62581d1110daefeb4830043a7a9552de5a55f250e7f1aa5993f87647c92c27256753d6daf32da18c1cef9bd5ff5a7a8e182d071f1e75d10be89f02c861a0d05257c08c9e12f877a22c8382ec883c592a34722f1138a1e8b5ded41e970b97ba2a69c386f94b508b38a59b464dee983741e61d0096f499f3c552f43ca317ddf073e0450e800585053830681d4a8a8ecd5b86c901285c84278c06b86375a04fa7002b259cd61d5ecca426aa334659284945ea6c5adedb7d40835c6134271d641bdb19cc3617bfdd53618252b4a684a259b82982b0a13cc90ca931c4e90915d2d7a0abdee3f78764b41e3236e2ac21e138c0cbce20740cd17f34eea236720acff25161ecd4c903e33395f51d2c51583407b35a044d54caee2b66dcaba84359218c6803040b19a39c0e4ef570fad7330041e024cd194326891547985b10e505c6e6b1abdaf3fcd63c3f2f08b2d93aad41e83167d969e54b12745b328b5cfb93266afa793bf00c86270ab98e2ab44b2be16b5e522ca280cfb0a9a4f744900f0f44f6126b787274b2a36232c84b563dc3a5879c83c34cc6d644fedc3912b10e9806f944440b00883bb76d51782f928139117c7358cd38a460ff73af4d417278b7bd463da86ba11bc88cff14340a24f675905c7edacb121fd625187b90a3152115b3ce1f49432409fa629384509cf51426948c71e76da8efbde2eeb7d3f3e576f18d4fb61f90d99de2bfea2cec28468368610670890ef26e05bb108dde48095251574c20611ce68890144750c62a9792815a89ffc50ff0d76fa0f708d917f3bd9f840b11085445784d2017e54266c69f3fbef4c8fa82c0723ba58736aa8466a81b00d563dfa074a9a06016ffb04f029bc12c53585183f237d84c343a13b08b484e1625be1b0c661f697ad5097040fed2d3d46c6b1229157729b306694bcdfeb4eece5b5dfa8043a6fcd607e2f82aeda46e88f8d59f2032fa439365bfda8ac7b9e09ed8020c045757d510d5de5dd0b2520b0f74a99d8fe7b1915d82491a270d1a1c554d0c05d14a1419e71dbbe5df225fea5c49b73b84fbf079dbef25ae8861e58ab8bab6ec4ad07dc10072c5627029d4a74700193d12f439a5bdc41a284b92499b3ab0f3973529ea148053da54125c2969603fa55d3dc30170568ac9642aedcdc817b0f4b8d5d31925428afbedd21fc7f1132fc7e85284723b4f26ba1b50bd5fea2d81b12f4451f97331c6af0c82aa9d962ce034df061c32a1113990a9f320291993c9d614c42e2aadb5dc52c58daf8d22bb302e1e64b32e16394cc0c44cf93bcf811e7ad772754b6e9c2dda630449e005a0303996a69f5ad647f98908af4f857af804294d416db784c34d2d5aad7d840e135ecf6b636dd33f4ba29d0f12fe3967260013662d8bc23a34a0f8a5df93e111e8792140487eb04854bfd9bf679e1b38de028ea5fc457cbc8e2706fced55f5363425b0c2c13cbad1ef96d18f11b0fb3749a561504b8fee8cfb4ef9c948e3efaa2de6ca38fb445382af66855f3c0603ab175aca17e1b005deec73b03eb952cefcb3cd5860c40578e8a366da62a431916ee212d9e5740fbfc42f6d0e0951fd2f213a8f6f21984e01832c0dadf56b3de4833b849b7d0c9125d7b9ae5c6f245703d77c0298c9b6abd563529b3f2986ce54462f050d18dfc85a840b1633b2b0373e585f77c106d70ff711d03362af483f7812965405e586d6988318effc81e9fa918ab278e97e0d6d3932e24ac17ba537f568f8b16bdf3d45488cb34f696295f7321b63a76101ec283f0427a533544f752cc9d3c277c59997e01604192746353421884142fa23dcccb3acdac509a5688089ee919230a9e0ec2804254a153f544977a634bb13880f3241daab08d1b73bdd8fe4a187e9b4c3758eba88cdcd9fc104360b2512788f4d31a23c80b78c150af10e1a41dd279e895ae9e66ecaf2bf32786c11573a74cbbb93b82255f9ed190dafce6803f07271889828696f5f8173772a7142ab46899c609136713cf7a3f4c5e9718c84ee8bce8b4b5ba83a09e421c830eafda214c0e0b3dc28d0f1adde9b5fd9fee6a07a328807d0e983cef6383ab94c415dd1e649d9804f571581ae0c7ab2896e86a470a9eab94f2fe9e138e91ac103cd770d27af9648ef83b5254696d72d7174188bafb05114a788d9726c9d7eafb182348618cacbec6224186909c00000000000000000000000000000000000000070c12171f24",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 7,
+ "comment": "signature that takes 2 iteration(s)",
+ "msg": "0f00000000000000000000000000000000000000000000000000000000000000",
+ "sig": "46b40670bb3da2c35f9649c9cd3fe613e63335a645b948018b3cffc864412f8868192a9d81da08d1e768d0d33d4f7a609dae1e72d4408fe5f5660f7714d7d3725deabd87d32d66d041124a0921a71ea30d8758427cd8978c2014d83746c7c29ca7781125afa4ebe984a11da34692342493df2c8fbcb50c83e56c9afc3df2a5d317add757dfb4439841a8d91d596eefa656f1953e7fdfb63e29a23ca3825a1c04e09f766ca10aa6bd05b9dfd7910db1956f99326766839c4dc0f653f2dd5e3a508fe13c2f0624d3dd0c0f764c164d231cd1f73646e542d7bec86e7ea0336583e86c2811db5e28e18f34122e86a37e1de65f5d7836c35db6079bcddab304ab6cf752dac710004fc24729d760d3d9380270c5d1d777b67ac830dd52c3548bda02f0f7d0331aa6c8414fa7307237456105c3c5f8463aecbfbf4d8c7f7c3b06f940592f12928a7a018595c1972705f8798fc75e2833e95a163ad24f367cfe85545fd0e0992775be5c074ed111cbf001bd536d1ce4a0430d963728a2e25d71c3efe9c385a6841d7f4c6d293a64f83429f064f3584ae0983dfa4f90820dd229f900e41447c07db5dd2a61868438b8f4eabd475da53e8f1c7d1120e366d774bb95839f6b3ada1f704198e06b13760447768753fb449c0d53acc22845a0a4e5b047d008e08e2f65c577026863ed25e1dd7d39cd4f0a7d823f4250474866b80ae3a2d19838cf24a265bee177d20b9fe59f2015092b3362a415f05e91bdf13ccd1bf3fc901a63ef23ef74b41cd74606c687ed6fecc665ee4fdae3a305392f59f9ba7e6c4a890c56c3115a2cc760f3166ba1c4e534a69bbf738c764cb228204799afdedd6660fd4a6b7856a84e714e58247fa068f859796cc4271ae915e62d3ca3fb43bf884fb8cfc39ea89d3042e453953849efcad7852d67471d2004b4ba8937a5c508109a19519fffa989a39a6c68f1ce9268469af6baaa7e0a93362f5b87b0ca24d5151b99bdac16885d335d6bf11c2a574a734999815843121bec25ba9775593ef19f809be5b63f5fb01b29f8f0eee9f1a69f514c0f17e90d40ae9a97f6fbaf5804bd036b6ae7cbc161865580f763d9abea93625096f3730c77cd0242f387fca2fa573f2638887417bd80968e86594e1ff547ef5ef4b9b49b0524ccfdb3701a8de2f7ab2eccce22ba93bbafafcc1359c2e3652b67250ed313d6564ba245200c0107fe749c965ecaebe28c79f24955a436c41b6ebd7f321938f4dbef88e30a34e5b2a3763381d0af8bd0176feabe3d467eb985cf4ab28e465b7896b36d2aabfbbd26931fca9b76e2eb1befe51b45d640ba468488da4093fb2ec7c77ae43c785b6588ebfbf5568c1299eebf0046e28b5f1e897516edbbbe99843e551012daa0157e03d1d41daf987b73ddb361c064917b6b8b4b23c31dbfe01e56960e63cec546e5684b057ae5f904333dc33ae1b0018875cc13f39e11b247db82e43409ecf16051be7e8525c9a90b68cf491830d2c583db07a5bd95ad69af0e4327cdccb9339d96a4aa201ebb86edfbe7176cf63a409872f73107c3f4f068df79ef817efb2f0837e665c7f2fe0a56c4e392d63a1032eaee2894f3bae6df6a70a430b22e9be6e15bef3a9af5545332ea3a62c94d5a6aaa8870c303b3460b3be88fa848fb818a3e1771c329f676941a628acd948b260541ecd1701c6cab3311ed86eaf0950675808ffdadf0b97f98e9da2193258b74d589054014dabe4c501f2e0fd81fab9cba2f9c8f70be8175da44bfcf01ec6ca5ba7f1039b29e27e5bfd67970e5e561c693a1ec2023d53cb1ed32f3614cc132701dbea3ab4d99398f23eac52b3f5c5f46a110d77f0d9c660b432bc57cca8bd38b4b5dcfc619aae56d7cd686f3fd94fe419f8fc54c9ea6611b4f512504ce87216f768abafa48f3825b2f9afca3d419151d1637bda8aff5e2f9a7921421fdac429c66c6a01832c7041f74fc81c47e4172f9d95b200b1a84af4dd9b677670bbf356d590f2fc1aa70ec53ae94331b2ac0f1a8bbc7dd600cb06c76f2f340aa2c8ae102cf9c4ba7126414da52a1d8ce3504ee282a02a9564b149c041694313ea3f11d9e697ce692441b3baa25b308f42eb7f9d03ba3b5638fb96004fd0ef2de66c6a573ce2570e19e75d5c2bea7d5c656c2ad6990cd2d8feaa9eb025d80b6483e6612888ae3a66f646a61cc08534fea6f31447af5535308e81e3dbac05b488fa9dafbfb31b7fc1773fed73556e9caa5864b4871ae4d2d472385ff62a61113ed0f7584220aac571b69373f2618887392f88e4813822009fca474af81a342e1fc7be442079fe882e8bab95b147c1a196eb079c7ef718c194e5d6a5332a63f3f15cfa08453afe796dc433399c75d8e7ea603c17bf1a133fa1407dd76489c9950e501e64d09a7ce59f886b3b80af926443bd3b04e33e97adc795fb4b775c8d6507dfb7aa254d3b994e6412838a03209ed3ae2c15cbf67cf00793c7b7bd4d1e36b56aba5212c0e8c82752da39686254e5357d2eb0ad691be3feffb1b09620c2b0b2181e510b47ec2fc0257acc3b847b90c0704eaaf48742e5a50498fceaa8945180026647a7f474cada887dd657f4003080d5081c1d37d4c2c8a1ba5e8562319d741b01bec47cff4fe1625630051b12accb6c919171073ff9cdf1d138ded6ead47440bb2f99424218156fee650daff3c777168b43548da1b946bdd16dfdd099d83a7c427f97f83bab18acb2650846d39cb41e5283564232fe21394318a2340f3ed2c6c7782d27ebaa780ea81ebbd33841f834756b74d99de6a17280088ec6bdad04144794594ccca8feee1fa09903953df806291667b686c9d5f77d89700b0a29ac9c95ef647d0b4a6ee30b99bbc9392a4769f4197f4289892f926d744d8b62e067edb5af6a6590981261b7a9c3c9f2b69833251916e00ec5710514fdb29ba3c25285001ab2652de3982f7bd960b60ac2fe285525f588167305afd30f059ab723c1105e6c657b5dece838d79d4dbb2c14cc50d123166cc4a4f01d15d7f8d4ce10acef8ab06132cebbc4426762b6616ad9c8d700dc7c53a1bed753569b28f6fb38e2334e50efb6b7de233b93ac1e0b4a71c7cfbb7002d6bd2a7f91d22cd080c182b989c2045fa5719eed2aadb2b409a73ea00ca3e9ae74e7fe61b18e25a8abed293651352d50eb2a341ae24d4549c93102b5bf8d9523da6cb97d6f0fbf4b64d7b65e0ffbbdec1ac74ab2217c464936205760f4d46139bc9066fca14b65f004b9432c723c4091ee0e81f5549200aa99445635c910303e697e0a08847645a98c12aa9eb42fe38265b09fb020ee3f6fb23f2e501c3a8ce5fde7326d2e9aa2e20aa770d810c3c11d86a6ac0296b296f2a1215fd83cb369abffb3d783b9805b0f46d853c73c887038584a30a17c8bef62ed7170841c09416924f67198bb07749cbc12412185f1d5fc4021a504f1c417ed5965a864140364904d33451937d38e14e8452f7d414949e9932e552afe0b33ba1bc63baf2190d8575e90cfeea69f5d0a3182d726cec66595065cf9dc22657cceb7cbd3afec14c84e900071d9d08849bcb1e20ec70c1dd4046f914f80a41afdb3b435b75bc125cfa2e6896b288dfe947f8c3edb82113a6eb6c35bf450191ad5abc514d9eeb6ed6fe5123f7e5caea3de2f19116c85def416ef5dfb47ee08957fbd87920e9fdd418895459b74a2fc62ef11be0943cfa22fbf14cb859de45a4b60deafb70e072889344107d0fe924fc68aa9c13429350eef78caba5352566f8d80b64d016265e264a1b5f00064de79c539b0552dfd3880dd9f77903465c777cc78fd137f199030bfb292383be3caabc1b6bcfcd0dbf4b7ded13b93f91408751808216e55a2ec4d39051cff5784b0db9e4d3c38fb5093bd23b29d82cce55e77710bedea7d9f0ad6a47929faf26f8d50bb2b2f038aba8d970939f4e6fa02c3f6cecc76f3a4298f66a7976b475d787c3d2ed3496a4cd9c47f864451f140be914141546580364a64215504d36cffe6f61a08a4f1940d965f39cb442c6705e932bfdbc29b612a8abb3925c3d9bec1c9630f622b0ffc7d8ec2425022882dddfa46bee778fc94e304e9672cb9931cb4b75edb5514c2d930e0de245f15c4dd422c0fda02f6b104c0b37ea2df5c04f83d9a3f644930eb54e19b7a2a5356359d6370bd4635fc576918be8547b7aba9f11f1dbf10697c8794b06f7ca1316c0e9ece8e51aa3a6d0a77672292ea5fdd50b399175d452f18754e4f3ebc41325982e2ba3162974c30e19fd49bbacf10e3cd96254cb3f43d6ce1115650a0522ac1b14acae1a3231579589062bd63a55b1aad407c0500b420d0840e49e941a5fe6c6cc196ce45d0d16289199cf9a29130f6235a3bf9e8598e2b0213ce87fd676ab5b621a284567172fbe5fcaade672cd55d1f6a5535348472fc836be896c332919fba13652b941a35087b44deecb7121191c548e8a7161b561a6f8f7cb4beae6b7f3d194f420ae758d209abac2f36c144f067a829cbef57304ac7541f7089bbd97821312a4c074be9daf5a000137825e7a406ab564cc16fb7ecfab4babbf00b1f13f8e009481e88f55050d1d2e313e424b4f6687c7973350585b5c66f2fe698a8cc0c1021b53637dabaeb2c7e0f35154babec6f7fc00000000000000000000000c0d151a252c",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 8,
+ "comment": "signature that takes 3 iteration(s)",
+ "msg": "0100000000000000000000000000000000000000000000000000000000000000",
+ "sig": "0d0d1a7af2d4eff6d4af7435a634d28ec5d23595fe7a72cf76d30f1fe16620c64862e4aad54fb78f8ea752b1e43e4e5884d7226840beb36a76f6a9b1b7d50b0faf7b8463f57c66240e06a22f5f3de4fe35c1bc6b5e42ecb1c0758069223e02f42efdbbbfbc87b4c0736141a70e6dee41bed27fcfdcb94f4213a0f99a02beba309a93d343cc932a6fd67fb90d6de7a81101a678e6d47d8b1c8bd67fe386dca360be789555196e2ff8704c175ab60a8bf3c9f3bbae1ee5a128f67467d21fe8a62e5f8ad8127b8d7eb37e43abc963521e79d0f1ed57fa341f743246fe69d97afc9a13824c79f7f3dedd286f3de739158a0900c99d9c8e5603df109c25d993f634582c832a79c7bd8cbf3ba07fc4d9e9ca8c1157434515538285417e6424209173c6dafe54c37e4424de0f25454b1713fdc3e72d01a2acbeab4d7f60d17dcd073c60b0ad5252cfa137c138448c931498f61fdf8f449225b07e7e0fafafb1f274fe5cbaaa136e62362877f643c7c94946075e8928ec47c04ae54d2085f7f2b1ef0e46dfb31b9a19135b6cc9da876dace6f61c2766b463b24c0aac5068714e348dea399986c4e8b8bdb16768e7ab81e9ea13e435f97e35d268bb679071d5b99d0d2f1526833e8624b6e4ff1ba3f5af2b23bce93dc7c2c4370cfbe698a3297005c9fde7af66bce7c9ef68337b04d7681e303a824e00acdae2ee3eb8c3e7507e46d67a4cfcfa9473bfa6334f2170911bf2ea75a3618cac939d11d6a778101e033cad958aecd89feabfa19dc6dc73584917834ed6552966f7bec4546ab24c643db25722b3ba412de04e9195898388d9ce04cdd9343da69ac9b3d3155620dde4052e9e30529904f25dd6233bafd4493b66844c8fa5d831377dc3ff8829114000799801d46586dc2d2059f6bcaa43b899e089b4f3a5ed4e6a7f1df5b8d42fda456a70e10b2ae14630f27e4c7257f5df23ad032c1edde44073585c04c1231e085591771cb64aaf62febedb33df56bc62f4d126cf8be4332ce4965e6e67d0be7871d81dab963c576ad7123bbff510f282bf66c0c1ea04aaa05a7a4d410d0e7b6ed22025dcb6ceac78f377306e973973adcee776ecacaa560dc8008799b306d5e617b2f51159b1e5fe5daf40f8f488f077cc55bbefbe8f5a61c28ae2b1493272dc6a4e34854f73f74c3442d9c302f96b6e721e2956ee0bcdb9999ff36d74b8d4ef036afbdaea5f977da2b94d0aa9136abd6dc26348873090cfe3d4bdda4d962f9382576bbccf8ba227af4ca8e017f65b469d2e3d35132fac40cdf03bf8f6beee66fe9214e1bf684e0aae75e4141d9daa1c77ef409f56424b01acc7ffda11cb9bf64a9aa71b484b49b9ee82dd8178dd4adc91d8d176f83d2cc7516d2195917fc246ebdc0dba4cb5a54ac6169bacbcd79adb72d593fcc3fa289f1e4bffb4612ba7a3318e607b0b27733cc70a2e2b4099056731ecda3212d1719a6902cdd6a05bd70d389da1dd0d0b4f6c4968676fe33c6e32d791c85b16cc9f4289bdd09acadd9f902d9a91f1559bd40eb6b73da7a623048140f73454e4ccb4ad65038109f6eba9fa01b0a3fe1af228e2c4134be136db2b029879e101aa8ab264e554818450734eb5a900497d906e20d36eb3848b092c778054c5ecee767c00185ddea39160e4513be858bfe5c7c7febf97ee8e2b2fb477bfb10c11f3b756c0da1d87e3121ab4454016b36fcd8f6d2633c73d4528221974b3f21ed3d464d47bacaadbb4647320bf0bcde38b0a75b6c3aac8b72d3c2c179417d05858ae4bd72d9c16713f7c116dda3ff8164710d4d14964b33b00b268007f8cde2eacea5108fed77d7bff70273f351b4e160d28d02576dd5f3fc3ab264c5927cddb6f9a81b852d24842bd5db5c5f2d893b2f013fc75426ef2414bad1b845ba7833c88a8ce76fe2644455be2ac1b9d1e31791693fd65f1ce35fee9d17b42b444bf1277f2646a19d76952b3fa3846c3d258f9a1835a709fc21472b0f7de7a729111e850f27f88764b3ab4baaeb6cfc644b9b6a552a61a7286b5af8011ede05845cb9359232f02ad8b3605b00cbbd83069f26b610378055c004a456c7c44606125b7b076b3f955117e03eaa514da82a9650e8b9247902c5048ff776ecaaa5ea57df61d726ff1754d4b1393933599edc49617836ecf78cc7dd45750b666b73150496e3999e339243f5644d5a3e57c6cdef2ea6c967f8bc93c27aa56ba5352666ab6dbccec415f610bcc76879793935df8e594f5c6b80dc0adcea1a1d5854f447604c54dad61cf0ac91d27ef963e6889075163e89cdec0aebf32080efcc58280b705a029511f21d311c1644623f82039e096f7e1d2518928847abd479840b65cf10d15851976e47444d64c6d4425310a3b5efe9b584ce7aa01b1f79d6e3092486f91fe75288736e852c0132561a7616f21b7713ec53f0dc53432f53eb4ad778dbe14664b55553ba342eaf94e9f76320f8f658b4c5173ab938fbbfe20c9987318c1a5104efe41419926218d30b0c97a366e60f6d1240e7f601a1b119df36cda11bdf7fb531a27979c9823efd2a75c70387f0296dc7382f570fe59568afb406a48e7c13bcb40204c92cfe13b3980410b229767a5412a7db82845da135cb6d5b2f9f5b22518b2115dfb02115fa1c4c3177a55f5c194450f0f0a518df7755b0b12eb412f5f6ee2256bb95d2985bdf1257769718de9b4f4281c3eb3407f175c0b43fee6b94b00875dca0983ae763624bc4e84e9a78f778dedef5eb078ee87a34941005c15cf42ee05cafe098005b1770ccce4e59d9d3f6eab9fb2673766d9b70ac11cd6d8b9d00809e58a046d95ff62e78a8e5525af54094c907019ec661600ec2c4ce5337371a1daad0e37f3a5cdd96a3d985456a588b5c1f61f36a33c6444c3b67c445bf95e9035cd4f77191a95a7e4c20715e55dbe43196809123499148a930321e7b2cc7809cf517fc4b2b0b49e57cde4b6aae620fe8cd0b38358685ab80061c1c126a1f3a96ab34fa957236cc6c59ed962b3bb006a1c122da796bf6bcf7dbeb64f4339c63d3a437b5898be19f6ce62024cf9b9c89964569f176fb697430e553a7c0936056183223fdab2f910047ad5e64098a44a2edbfd3007b0b5e4a5d1e6ecb44f137dae2dfc45e96f03e75c900f3f84e2653efded35a3c8b27e310dc361c0740524e52a1bbecce57d59c4913313e62bbb63c95a93512bf09228918bbf921cd5c62b8914b7142d6abf8d632c3ac44ebb6936c638d56cfaa7cee463838a921398acbbcb44bce621bfd81fab34a8ec33810eeb89fbc3cc469990089d2291e1e873b31398f2799b8d62d429b998422ed634bd7a6de8e991ba8492c001fc5df8b0014fda377cbc5ac74e40d50773ab5c2b4d08dfbf3cca590a77f4db0380fe7af822207aaf99c38676327ccd9aad50b2d4db5aedf74b1cdc50c484d455429352ef0aacedcd9792dc26c66081c28ecabc445b6f1f547a24403e18b0468c8881bdc3e82f7bcce254944271c3ba06c80555c8f3d2d051fb6007507eadf8fb991f45c0c9e9ff08838a425a96d72fc20d642c2eef45b4fa43e7b380d8b6648695c0b9440cc66665435ffd3df10fd786f7638e13706f6c5651dfe5f125158ff3d1da84cad23129e11d79d0f95548318b1c794990174daa895e4b984c175136185be534ed6bff9231c215fbf6bd297e24f528cda523d62b44aec15fdfb36281d804625db07567fdb06779325987f69f16f19df737d5f65d1abadfae70a1a4daba5a87e4ea3a09751ece2ec21dd24f719b1f57e795819689c8f2e83beff593735825a1ff8e4e4df9d031dd66120dcba07e6bfbf1b0946b3585a5eb807c1632a75353e8f7b8c4f8ff0af978afe2bec80d3b94917773564d7efd92a79cad26360b599be49bc657b132b25f459d58166110fa626cf1731be419105b4bd235176d60efa939fdd8dc213c695674bca27f161da4514f646f33557aca06189698f2953674ee73be89e3fc4c014877c6bec370ca1fe446686200a94ded3382c4f4bc58cdc12c354a486463959cb91c2ea0ae965f912364c5d98acd40ee312178b479b540875fb2a0164b7134564bf7fabf59add993b08a904452152031a784cbd36e19a47d4c9371e7774d3433fecb5d072d059b01ebd3279ceeba80b356e3628874008d801ed74717c70a93411603f1faa3924414665a95c475ac42de8d616de8be5c00fb90e5ad13079e54d1c7000905b62742ed70555ec406b49cd4aa6ea68342aa7763530b180e4f790475eefe1094426b7de9e0163a4990ea3494909c6c6de6b7462d70c8f2dca3152d81c93a8c184b0c54da7fb604f835df34506731774e6b8f2361586ccc17f35c8e21795ccb68a5cd73355c98a17c9ae35ed22f6c0a36c4da30af96ce7347375144a80dd851fda4971f20e9d6d18878d74803b577af4fa8f34c05b380acbc5282eb63f9345e4dc1f9f0cf8808a204ec789ed31ac9f009790d5c9b7d744ee3b29d911014c12b53ff691fce0ae5d53dfe1c7a367e694fcd2f688d46758ec308f3f9736701dd825153df883c0dc539c9dc3dc7dc9a9a35f453c306fc57faf76451bef45889e4ab0a4a6dbd377996c7cf80e0e7192234475d93f3f813197ea2d3fb112c2e97cceef2000000000000000000000000000000000000000000000003080b131920",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 9,
+ "comment": "signature that takes 4 iteration(s)",
+ "msg": "0800000000000000000000000000000000000000000000000000000000000000",
+ "sig": "70094678fbb346b4b40e967be25e40f3fd6db4e03dbac8ee46c962c4e7f7c4d2f18a7b44df87b89e8d101bcc264c30d32ad4aa54e27bd70a4d7c4717653c19887afbf6f2359957c895ad477f7d9964e1e941092dc4fc8fddbb77157b31462a46e84f57906fea21df705a01c46b01f3212d91011e0798548ba8eccede6f4d9bbd16d787f5862b6e4dc3d7328511b199c32b609cf90599f90e156d2c00a97bae5b801d80479e612ec53fe59d0e5e6d7c2d2cd2a86f1b0d8caa3856bfb437ecb57ad2ba85d21020cd31cee7296909b19a45cd3303247e4e918db4bae21314366dfac729776c17b5852b000f9567018e7d052226b3b28fb5512bfba7c3da3d1cfb0c31c7cfebdbf5a4e5009ef76cb73316f6ab64570d84c39472f85a7f54918e9fb003a293c8d2787ac533b19832524e5956a96722db2d429aa69e15f3bcda7d887796647f913d5d4de4fcac8024c8da8223f62c973169cc21809943114b6766d3179a17c83e58a752468eff1d23f04f05d844d0ed40faa81bed6f1750d8f15ea24b69b403e12213c2291419d04555c15ce8c1645669f7c4f46f4d26ed4cdc4655b6d6c61c18739163c1f6290a5b535601f345e5a1564df056a9519a3125107b7a082a4c34dea36bc7c3d57af69b7bef90e5ee02426b96dc28c8300e1207b7df14c4209ecabac3142b57d059081da49cd4221c1fc4a159a34bcd95149b73d4a9d9d7f25014fc011ace2f814543922e93737ef968e8e20e8983d3793d733e24cda69c6c36436cfb658bd0d1cd7102686e33ea1626a61ff6662a8be36d0032fd6a2893f5386b471028044e5aa38ab71d3d8f43992f7eb196af9057aef710ae149dda63781d269c248a3c257dc21e30c7423d0bf7322e4f87780f284a92930842feb15c3e624d713a4cdfa5fbe9675cc9b1bd36707285ae31038d419643fa959839ebc93cd66ffaaa720ca4c3bb2b109dcc2dc890f19fde05966ad0d648a71e988ab142b6acf0426a19bced43dc0c83a38685ab5f255e00ee0f1d5a7a341df518d5bbd9ddd31aa6b38d129484ff2b93167123913ddf7e11f6b7be7115c07566c4821d12cfc3db5d24591f040608b7b06267048c944b1be8f67607883ac3c645a5746dc107afb8fb4c730929bc6c99b72b701c46602efc3be2dcf7a25c21467a6413778208e58485b3a7ecd688a97aa85f9ae2f0023d551a970c7714b7bd740ca173cf0f787ef7f961e9f97bfa5a59bee561fba83bc19d0945ce0b66883e5288e4099b4809124cea9426e81aaf1fff02d350a2e9876754ebbd6dda2faee542e768d859398db6ba8323bb4c16c0454020e97da1edc2be24ace53a0cdafde1bafb69e8ca06996c132a19ce88f7693391e2fd1e6483a193244f2faf9b1cfae1d511f34348dde860c585ca548bba32c13165cd3044209ce59d10e30a0bdaa68b8187e0fe6361c1ffae271c6ce3edb53e1f9cacbe9623ef5a6dc21ec7ce626b1863eab038bdd2c1290629ad90fb59de197b4f1cb1368a4ecb05bbd0b58f52fd8ee87591c3f4dc08c06ce8664e476043d4e85202a51996f9c0e5ae2c22ba95099fab8447ad3f71aa2aa95fbea73ea99780c8804037584739b3e1d7f9d63335c9eeb7d5a76244ef7afd8cda16c47faab70550ec39d800d51b1c8f85d366d016fc16c51357642d60d21e3f45eda3a7ed0815d7c585096725151d3a82fbfd90b8a609b6f52e0c18e328332cc0de273a5cd4ea3481913379aff1c03ec5de2026321d4bbc4fd13b1f5b4c5bce87a236fad1ed604809ea2378d9f3cea73c45923d9e4eae4e126792825b883f9d46046ad7787bde86b1745127812534955bb6ed28ebed29e65030babeada913b8b605a636f088d90b91d7166f5e914941d4185002b3aa6e38b312d384c24a4312a8cdf22846752a9bebb1655a3fb904b6c0f1224cb2a83887bf218f339d6d86faecf258afd847f73f5a3f80562e65a07a7c9ef1b43fd84b40b55b000e6c3d661e1fea1037e6b80f5478e744e6a6190226f7ba09e2b8bb89c8d720cf36b9c2bfd33dc34c22c1039ffb71e2f4275dc22c3488744c4b7bb7444e5443b211d3ca7f687e7db1023082483e5ca2eaf89a7eb89f993c194c806b331e905da74830bf8219e2ab6dd80620fedb6298c5a772597dc71a274589314632968c82d66a89e9433cdb6465aef8eeb33f0e738276daff510735089100bb9ea86711e5acb9272e7dcfb512ae2c3587f9e199e9a889566323a8e31ff6cc623307e49920ed9b863edcf54bbd740a7e93d2e8ed71ea0c321ade6ef7a068214f73ce8809b0816f4f2da5bc23890b768324f86a29552af095137854319ae2845ce820633457678072748f9dfc53c26c5e57bc1da00a635f2f7f1343b8adfb83bb3c54a78640441ee244b872d6c86699617e6d7cf71eb1cf0b8ca6bbcc89e3f36e0b64dd7b150604b3509974f65f1ad0adabe6dab7634dceaee4586f6628b2dae7f49663a9a25ed5bdc91b874f893d2fa54afdc6174da985fbca021315f10fb16ca6278521c490598c2e9593467b4af9ebeb822339e6feb7914c70ef2a127cf678c90692b1dccdf79c86df0014bd76aef174469bc904918c88d0acf32f5211dbc9ab007522ff85345d41e083ce7e79e14cf16dcb934fdffcf99c8026b546c2bc00fe356cae580623c74a00661d2a18c2364737e0683a1f1dbdb2e3be4a3de06424bfd54b820a30349d930ef2a4103d3586dff198044ca9e59bbe70481a3fcc955952d69b9d01c452990793cf3021f400d2ffc4a97fe248863219d16a457434f3056084306b8094cd11f97e48e6f2d45ae9b3b7047deb2e13c43fa0eb8fc710e82f29633a5d4f065986d66323884fe87cbc66c114026745889c62d254928257e68afe0e52e51e25f337360dd227dba3ccd54f1e99dd4c704c9bd126310e4c72160da70f176de957a340fd481f84c1fca83af372c9fc7f2555baef334614f02068a820cdf2b9b1b440d0b5337f4b4a380e6d95f423ebcebde2b455ff74811ab431b2550fcef6c6c671bae84c910611176e94f0b2815d55e7328804a1ba1b490b7f86020238114a063068decb8b3c4d6ae62f6ef6e8767b934d9cc817fe50470b9f0a6733ad446d12a115e28dbb8b610f01dfb1268625841efa796378fe64293fdcf859f38406dd11e247f41906cd6c6c9cb2afed460268f78b170edbef056fd2db36bb6937ed3bc52bf1fd098af62177ce44723b65ead8ad50df2c0fd89df098dc56cd51d5a74709c5cf1b7a09683817f0c12ef399e83f6a4e8a17126da998f0a224ec2f198ead30c543cf403615f38066e9417ec3f2b865464f8fb1b7ac8c3fc6251aaedf16807ad851b980ad9db62ac0e07d9b856bcf579305d9eb66859e460aa269f0ac69c9e88b014721c906a1f3bc8a1258e04683343f2256fc7c81ce17fcd93395c430cbebd6b0544c11de1eb426927f172a2f51aa78aeceb83aaeffb1b62b66a13b19c0035ba1c41604441fe22ba1bd8b8ea29547599b4e00996b2da1e937de02a58954cd77ab29c68ef2a03321fa2ab299a2018d625de8f65c1baed074ffe2577fa5b0a4005aaf284e7e3bb8d9fc365ae978fd528e0c427d43414b14ad6cc7a28fde2f71d1e7187a3362f89e2067b5839a71df40164c5d5059d9bff06535d317e331961f17bc5800455a96078be095e8ef8face39f58f62f0991ae3d97390da8c69b900cd47d749a75e7b7cfcfe1d4ab3b01eebe0f4a00ae2c7ebbd134e731075b83dd7eb726daa461b7dfb31d3e0f3f9cb15ead0771ec9193bcb899469100dfc378750dd811bd69b8acaf4c646414e5385b8737653eb9773dc9eacb89349e8cab56c3d0fdda5d646c82d2039fafc38b0aaaf77b93d86b7daa2016c0911ee6f46f1044c851176ead85e775ffa9330e904d28bdae0c4820b7a4ad0844765e05f5466d3ba1eb2381284c3ccf0de5c31744acae33720f05b38f7cb099262b94f4b025cda69bec27ed08c49b0e113f510d2c36a39bfb013654fc27f8802f414f9b894d4f9673a6bb03ea26b5d4959bd69c08aeb2eee3a28ecf78c61715751e43d5a5f6d8bc5ea7a70de3571d16ec9b5def79e3b3e0fd61e900d98bb0bcfea8e2c29651d9edd613693dba51b0eff6f8dbcc51b116244f1bf4a14c5ae484fbc5189533dfe011c7e8b75ac8287bccf269f98f2628ee419354b02bbdd9825b10eaeb0dd8d13423ecbab0425c98a1750f3c75738d27202ca4e9b9b760dfbb6fe86914b7cd3876800ea409b65c12dc01e2d81d6a2584332e63be08058566543b064bce5673b7dd9dc4f69c45acc7650291ddc87d4ae9e1723d51701f3fb3c11376019a53ab613b8b7138a83fc76cac853355a1b713f0621f8cdaab631da8a0941c58c0a934cfcaae84cffd95ff7e831cf38185734972942549b74d9c67beded7174e4c76d0ee55148443e785fb73955a582e9a94a14c621d6d6cca5b9f270a84b030202db41000965e0ad66f5175124f211064a2af0c36591f16734641c87af774708b7b7b8226320b34f488050fdae7555e0fffd1c124986ef03d2205b4b809514e5cacd34e7d0dc8727772fce98e0e975c64ec8258e22a94bd2d085a6c808c8fc421346fa7b5e91c8287df545b1b3589a9073877c2cdd70000000000000000000000000000000000000000000000000000070d1113171d",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 10,
+ "comment": "signature that takes 5 iteration(s)",
+ "msg": "0500000000000000000000000000000000000000000000000000000000000000",
+ "sig": "604ef7c921fdb209de3a95ad6c032162ffe69ebf86638fb7e5a2a9eb3ba4b68fb7667f6b5555d000e4ba05a2eb6a4d324b04311e4ea01824c1d6cd160802ffa20196ff1b0f0c1789ede25d58bd01930986817524beee3d93b1fdcf85a3479c7086029d04a3ef378a8d4658310ccbb441ecf9a273a50a7d57d2a58087fa0c97c0b31b9abd8246b1e9d46e1dba106e5f1b5682fb9f8c8c7a8a170b4f12fb5b2ffc08514d7f68dc81d9005283abad65299a75421ade87ef90300d9faabf7b9a7ac3eee8abdf8269946b0d3fb4cc674d58ebfd99377bd39f63c54313995ff3ac36e8753637534b8f913311157a149db56217ef758b65afdc3bdd7d2aa59ebc42daf9aa027dc753f051db015a9d8b6793ebf50094dea5f38ca7c2824936f96981fe5c75032921b6817b81776e28d18485777cf6e96ce2a57a9663d30d804a2e07e188b77804eb54aca4ae43f3ba71a3a07264a1a1aaf6edffdbbe37783e11ae3ef0b3e8f5093c1c6566366e65c5bb6711d706cf64b1f579a44fb3a267cf962751d66d46c0208d1705d535debc5f969c519ce415731ff49f93543b56cd2689fd1f94c57b6268afc5135c3a92eb3856156b4918e79bb690b99898cf5a213d63fe0a1d5aa3512282215691baa6c6da5c952f9bfa3d11c4cdb1ebfcde709e5c3347fa6d990e9d2d805d63bda508ea9e3d4e0bf2f5055201936dcdc360900116309970ab4ee0e943248f021e2acfcd4d7f7696dbe33beb7b40d5deaf042ec6cfd50f45d65f94812870c71e3c2b61db121f634cf3fabed0e48f6fdb63e7087d2042a1bac7f2c296bbdd70078303f05a7974e188480d6cc1a777576597afa9429c3c3cfe549fc41887993f883e4d823ba74a79075dfe5a3a26d794768c27436ec5f619e3ad605cab8c894e2242201f4381d7ab1ea3fc346ae17e783e53c95ee2d9bed1942e5f3f9ba65277ac7a0658faadf48272c78a8c9e38d6f21be59b492f4e0c134d965dcedd49b0af638ba010f8e2df94484b97094f63bcf8660add7a05149fb2c2753d06bdc4196e2c18d7ecdf685358ecc03b3d67b496828881a8f00cb16667ee52a969ab67f6e2645da8345d86d5748119cf28401d369270c7aafdb3977de4ff328cb34147e1f37db7778aee3e08a93523cd5ce244c78acca1e2a7b1f6d72b76fc86e7457e9de61e473c605a305fdd5591c16efb499c5e5ba83831d202ac14222b802e8c9941522fb0029b43e9f1cbb6892994382230456e899d60655f9bb29fe10811098a0de73a4ff87da05d0edafc2fd7815fb1d87edc40316ad7ac11474b68b013430c4023924e021706752307788f0309f86548f9deae7736431e98ba50f3d66b3036111dcbd1f28a51c83b1582fe61eab90efdbc9800f2493973d1fcdcddaf29b191094c67cac62dba01ae2c82139e65c29d11b927a3ee0bc93bef952a77c6dcb94c081ae022bd2d70629d630c7db08b0318c915cf123416d6633405703bb670694b4932f716c67ea181f4aa56ddbc781094029837f335205bd4eba0d3fb0e852d4a80e98ea119ac6738af8bfed0bc83ec0cd4b01cb75e1fb73f790f265908bcaf0fc3f3ef3549c149688ba16fcd5033828b2ccd46e22316bcd91e821231111b9869ff2257e996dfb26e9ad93850d6b607a5a5d197bff5620fe753f5b494e21e44d8abd5bee41ae8c81f8f7d0fab317c347e7d00712552610431242870571ec6fe77c1df51f7f78c353ff85660b196ddbe065c6f361a9c05f380eb18b50fbe0a0daa33cbf70d03e9b399e9bf3414e4eeda59ff295a6c5aeb40b2b458e21f43701e625a93a8b047fb221cb3dbd83a86b03ed9de58acd816a58e0dd571edc95d145564fa86564f86aca2c61f49ea4a736984ad58fdb02c0c105843c2327ddc97822d66667b9188a6e371aa5e09110b6d72854d0903d432c51f13b4c61107a7a197602e56b8dd522985af2ca20af824be8d503006913f6537fbe4e288c684bc82144c6123e253e8989c59bbfc83f68a9a8ac0061f2d5d93c253d2ac9328dede266eb44b1f5f9a868ee5052fbb2476e11f9751bda60c8af5f1cfc6e8b9e1bf54ae2ccbdd676e3f5158d174974fb0abccc3b47c1ef353e12600a60005a8732d267e33b0a3ddf7d66e2494e6afa3c135615e4183b3f7be8006a5e2c3ba4f1d948d1b34a320113faf891d93824cd38dce7e0c795ad623877839964555768ab7aa776cb3ea18827a752ee3e7c6b025bfc48b8e8c99512578d2504a51fe29103d93eaf7728652dcf75caf53ec55ae9436a5d41995ea9febfa38c13299f22acea0f59d15cff0a88a4750ad68d2750fb8ac550459e2a954141c5b9382e2de8cb83926f2ce102d4846accde022c502247259918bf44caa8f43c93dafd89bcf727548a9a30e553ca37109d85a6923b42eef083007f258d57b1fce21dbc830618c37257119592b8e8aeda65a98f9cf6f7287a53a8a2c64435c212a1ee90f52ecb9381b56d67592395dd8af5325a09f643504adaee45be117dfb70d92a3ebd78da21529b3d0af76eb71b2f13dc3e2755be1df35dac40c0f9c1f37058c249c44f09a3a2602017e7110760654f7945d5bf653119e78455586a6405993ec923c28909eb7f398aa02f30c1c06b59be51b9fa7645bfdfca98e18793b6e09a89e9e76de835df9a0126cc6ce9973d2bd32029f62e7026df3a03e9fb4ff9ec1b3533eb43440a290df0216b6a78d13d40b094ebfd3797c85514c9f3e57f03d4499ad7e5b0d3f91febdea51738a9c0bedc86df1c80b90864e3710a6c3d328451f3275c04c9702861ff49824d87828bbd5c1e16a7ae950ee2896dff2b82de43a937e31e2de22d81448a682b70c7cc8a71493b08a95ea8a034fcc5cba59b5fb09fd1044b649b192c76a9621fc329baf425c34c30285adf948587bd2757d733a7ae82bb7c71404e9672a40ebd37acde5c0ceca7febf2166e599d8efc1080ea0e9b5efdb3c1a3b54fa24f10c4a706387b7381bf094265a07ad9c85f18cf00d92c66e9257515c131132250c007fe1a39ef05529243797a96370fc51d5db7322e447d834fbf7fa09d136fef12dcd31c3cd5ca35616d92342013f8bc4d895ad00a27a8e641084bd734f1617cbb0f243fa83230393487509c6041f8122c5b0cea200aed694ed603f104ab14b462c722476bf2a95126c9f6bd9242c5ca6a264572700850b33e415742a31cbb85adb1ae6e6380f059441b898d5bed3d64a9d146f3fdcafd788b9f65497d6f547c15b652bf70844848dfc003700c2645381e6070d314b7831b1e429a41754b0ad2fdd71348217f35711c56271a6d7bb4ed15a765d06ce3f970e4568f1ad60af3df6cc2e385fa55686d3633f3c82345bb0c3b539ca8ff2125fcff6bb5a4e3010e68515fa28bc1945a255ce12a391e0e4ec77ffb098cbbc2292696805e8c4c3978d3b4863a6cae10755d2fc016b2a9ec2ffd5c8d3c5ea9b36ee622040e189c2ce167fa90d07164d70dc5e5d3cd9db359dc5b94a4bc7d6619170fae9ec1a82996e0b75b6902ad473255f179edab1b3ad097ed71bcd873850d2e94223c903dce00557f616a48661ae937a402d2a8a5e1f1f6da8641dd423ffa54672bd9adde84ef8798ba5a8c79b56dc2e6ff694fcd63722be9c9146743bb68bf6a8e0d92376848f39f81bc4e061bb8cd63a6d7707985a95b699b37dcd5c0da66ca9b8c7912ab45c435034b3b629d3c898f7d979124707817548810f07658cc72e82af5ee86c28a89bf070a80d2050b251a0dfa75b567e7decc2fae12b50daaf26326f30ff072c1d509eb59c0e523669264966436d2d14bdf2538fcd58495d80c580d6e3343e9bec883033c7c32fcc693eb123383ce7eb2ee5d5b1b09ceaca617346754ff30fa9cbd3e716620bc5219a56111aa5dd6d0de5e3904bf22839b0239ed994dfc7e6fb6c2436a950d1b925fa975f57419ef7d9c3cdcf19cee53044d6db371d1c1c8d0c4eeee9e4b963d197265c42dcff55c5281a742d696292ba462e622429ec0b8dd3f6a8479f7a1fdadfc505d23de0777155fd53e4bba4e2433033c88ec9a8578d9896518db1d1dc30d23c5b82b5db14039cad18389b5dfb6015003ebeeba0e2313045ef1cceaced1bdf0e0721b8fe6a636f983186c7f3c559377e88ed149435bfb8af17e3cd1ee277b0305a1717a0964b0eee875756ae0967c04dfb051933c5fd706ea2ac35cad984553ec63ea554246a2aa10266100ec88619edbdc3cc72b14f2c8a12504336dce5fb00517ec36838a5ab856ce0929414d3962795e0a4ae7dc80031bf5fb732a092109eb3a119765d69f4648e0e690898608176f8233bc010654e01d12844291722a4f195f1cacfbaa5b4ab674cd96efe868c377c577eb25f81e44977c928780d49ec3e52694e2c9e8fc26a8cac64bc927a9cf0dd90f36c11685b172c10ad7d9cf9d0aa4ec26ed6d982c90d7e97123d9cd67cf17198e282934d0621702d22cef8846c2dd4b4c639410f3da93287f4c1929638d1d624be1ad01a8e5364853556ab837a274b61800a723b03373b3da771d0949875ebba692f0baa606d70046c841fa16f191702dfac9a48c8ef9915a0057234b5b6999a9f82b424d6b6ebcf9101c28495575c1cefbfe0517303e414c5b5d8ff70f30649fdeeb021e3d41476f93f300000000000000070e18222830",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 11,
+ "comment": "signature that takes 6 iteration(s)",
+ "msg": "2c00000000000000000000000000000000000000000000000000000000000000",
+ "sig": "55248b18f7b86d8cc873c73d809b0453f5db7b7aa436797c77fa7cd51624c0a8d924808b8166aeeb2cb3c2a013d1529e21e6b8a4a7ed13caf47861f90399a17277953e2505fb1fd03b16b5d1e1e045f2e56f30520d3196c1e54ae84bffd80cb27b3f0d11ec93e3522d4d3f9b66859311d3b448412816745f34f4b07b8e593be1bc747f4eb8e8e20b9addccbc4db5fc155afd4409fd5c8e23399cc55bf67bf9c4614a44f1342aa58f462489764491233edb1bb8c4084fa605d39028e7ee7f8e44dece7f58a28d09665624fa0e0b5495a43b6a623bdcd0fdb6d0567d446dc6949cceaa15cad8f3f3e6ee63de3019f6f5df02bbd7ac5ea6024f4dfbcc7ec4fc9d618b2cbeee7d72cd5837d6263a1df0f6bed8708d66be35e474783d8f39cb08e130d300fcbf0767dbb4c6f8ab12dde570220f1abed2bbb029d80a927c51620d5679e6a4bcd2d34a4906ef8a0b5f7b87082a57b701879a557a989dcd255a2a845f2b7ceabbe05e853c6a36f8b3120b61821cf8e557a4a487e5065be0770ada01fdbc64a607e19b975b3f90835acb28a023955a713c6022a593208cce54a582329e0890ec4fde395d5eda4da6ae5f17578aa1552c84648d7663873a7093745b7550096d5da5b8aa25e9750984f74d6bab5fa9c751bd828f455a4784844cf8db1681b47b05e5f6c60364bc647196134133db8b2d672f290d37e238f562bdf52e35980e8d94910829ff7170bf403a29f210dc42e7ea1e2168c5d04429efd560ba9c11b21e9d8f081503b861e2fd1d832397bf069f699221199b395015b2e79808be26c9fbf6e18280c3796f29a1e0a4be5cc9901c6b31c84fc69abf3bafb07745ae08fd4362875832ee768c378c3e387dac8e06b7578d8752e3ab4ad161f8952354f1569288d9400f28603b0bd7e239ca2de916e2718653673236c1c3f172d67fd9faeca57ff3cddba66f0f589d297b49c311a75ece1daa7230316128f28985210fd2f1725ef5b976ad67dd436902c7fd6134870da02866ed96ec997554a684216ca9574264efd28810f59883f5f73df115024d56871fe24d68b142bf5906fdf3d3839660ba7d26aa6827f47a05c80f1a62254b6cdfeb55de694e723851a3c2ab89aec1e312c7647b1b66acea5ddb7ae62ca71c4bd5592381761fee9d85c38f2f42f54f947bb3d4ee340077fc86cbe19af332c96d67f8ab84a1f0b0f039f5e6b518c9f9eed9edf2a88dded19903a0b78e17353fc5e1485cc722dc9a0b12501374db57b4161a12852a45d160ce3a21a44a8e37cb8dbac3d3a2ae131fadcec0063ce5b777df45b67744609da238f53aff0ff8e1175fb11a22fab7fd016c41f8aa636aa2ab7c4508f445b01852a9944277309f7c77d1f64048dcda6206293f89f914152958c1ceb629d7991589edcf3e40cb7a75090cf48c55f1d16b98fe26b55d31dd860b31e077af05012c8d4a9084647741f6b0e667110e9cac2dd031c1e82deea92569bbc8454f586f415c08c18220428fd25fd0e06517cf89ce7673961396f992a0f395eac5e3ce1b81a77a78db440039ce36670644592d36d43e1f0338d8f54fbc5c97c5166d9914d4837e7d005269529072c6b34fb1e5e8ad177d8e92530395896584aa3b587cfaa74d4effe70578d64c8fb4e4920528ab0bd4bcbadf344a148c1ee0c77f28dc6e605f60093948733fe8caee60766678580ad00d685d932ab692e788f37a54342d0047457cb48efcfd994c47cc57cb4abe7aca0508f3c5551c51d448a111ca477c16a0018d1758599405ea49efa618a164d2220dd714ddf9832d1c7d1830d93e54ebfe9353d5a90f2a255ab1578199c3e379aa4e6acf2ea07aadfe7c8b2b59a7149feda9c35ea80db44225a081a489a9f2ca447e6a577d87fc46931e01e41b67485fa59951192ed7949913243922ae9d2178b24eef6c608113e8ca3972c705485b3008cdcd6fd7bd112c13ab780214c47ce1d7141f00a4c06c6c8f9ac508e01c345a940ae26d374667b1afe9c89fe5d7ead12a5011ab593de9b4f5bfc68498d2e3dc6d1cbc4b16f7c36c30e2f1b5243df73230f4b61ca4f9507c0c2092d7eccbd88d3129db25e76ced278445b7bc91680bcfa73c89c84623cb32e5d9ee335be23af54a54226b1e7a542e75d6cbf16faec7867cdecfebc5483b4b4bf50776f87495d0bf6c596e382c859020556670d70af2272f816b3881aadb663eb91ba95f31dc17ec606d64a55f44c12a54051bc7119fa3af23ccb55ecc9dd0875e8aea1da93e78c77096c9b81c24232a6f64aeb949e65f0527fa9f9d86d24ff1167525c5ef0ac2c6a1cdecbe5c98ecca4958d07c80a5f41b2a645fb78ff17828210ed843f3233913a021a7b5f187db60476fe139b89217a942da48201f3017d704a9e9590800241501fe6526f0e3e05af68c0a4936bf317375d39e19d502cdc938072403516844efffdac2a1758c2ad1ae29cf8578356e666b5f6b60e9198d847aa0c88a903759418bc0ac2eea77802b2a41c514bec3149bebe8fa0339176b8380e5b08fdbc390e726167ba15757842c4c9a8d1a8377811f9ca3906640bb38bd3156dc2676eaa49cf6a4cc90635da341be52dc7a7b3900ea89c697f450b6dfea351cf0b0673ac50c72d7b2ed3cb45b06b856a41c3603bb50dee0ebe272200c6e48a33639bc6369963909c6ac67ada94af7b03dade60927f35b97b27a5251e3819c71372bb6abe636966323f0abc04e26a699c46fd8eaae6f3b4b097cb40eebde51f6df2694f14b7178102ca2448e3389656442febe8ddd6d663710f63a8234fa6dfb6f3a9f9d0f69042b59b58066197ba83536f4aaaeb4d9959af819b40ab43e09e140e883037f5e896a5f747f0b70083c4c720f017a021a12746c72e231ec86d684a99fc85f8cb73dedf83d23f9aa6d27877666670481bdd97d428cc1eda80e4c08ef00353aa4c371c3f938c766da833a76929d9c78b34f540381909affad1cc12667e6a8dcf644b51e968512d80017b876790e58c464d222665502c2d1997f67805232d6e6af2b868a801a9e32404d30c02b1fd8ea671daa7e97ecaf72addcbdcbd2f6be3794ba20d938a8cf15db52ef323ca6b47b644dc93d82508249411b9aecb7ae10fde49fa1b209a2160581d62c10962ad419c2b82d553990b7583106d153a1ee63df2a283484c6a0ceb2cc71919d00990f7bb87df0e6c4274fffd98525bb325b495d860323ce49a2df510c2421904f4bd3afc9a45a9ba84ceec0b8de7f77f14ffca522b424778157bbf0ac8e873f05837daf02b9b158c7853a45f279dc5238d202403378b8ed8fd1c69ed29fa4e5eed31a2b803cf0480425bc7746bf39255810e57bbef7cef25686c0893271c57feffdfef6346552e269f661a6e396ee399ab69641e7ccdc87e1867fafe8a754d77c7c05e49196646b21b06bc955b4ab287a4fe3d0749fb65ac042408513a736e32c382f9c81a6381d03c7af37a54fd3406f278e4b4f58b98f3202d7340933af471c840c0379cb11a3afa691d6f50ce50c20b02623b45123b75e8c26b64a221b5c36f3758050870413efe61e0d8e7f7bf77424b3478240990f9333f0ccae39fd1d782ad05bcd1aa05b0b6d58fad5766d056a4587ebf5e848a8129e07bfeff86ff50547010d4378b9b1f565a67207be7571c8f330f03d5ee6edbe06510918d7e81aa916cd49184098c99959fcab3858e6bbf2ddd62571be3869bc1f3d7e559c657319198ba47885c7da9e350f26b4e25c17d27d55bfc7e6813b6c30cb1f8e59cebc5f044e5d41f59c46c317d7020c57e13cafb8931049caefdc3f296c0363af7f7a89ebe18c0602cc19e8dd4da1bd14f296066183e80c03c806255a5767639c1bfca3037cd7efae6da14cf00b33f64b1021fc0a690a48abf5c6a781560a86d7501f8d0d05aec20881d23efa9d43747e30b262a3c4e3da85283cf5cfd94cf4e485ea56ae0081bbee0a9f41a333ae2aaca92c7dec0a2df94f47587e59fa21f80624a16e6b449194d1279ae5ceea47ab02b465b8da93ff50389aae3de69f5fc8a0eee992ec43e08b55be7dc9684264665dcea7ed4055306a1776f531d2a386e2e839bcc4d6e47640927967dc5c2571ecb8153827c44dc0ea5a60399a4a285798893fc5e9ebf74dd4e42575316bebba6173065e6583bd69d7f9ad0b8b9c6930c1c4198c5407f06008c9d04b1002bfa3868a8f7ed20a1bcdb1bf75a80bfa5cfff2a29b23e3fa963c6d7618c772538d98355d82905a66722824ab3a2859370baa9ddaa4f4ed6e6676528275d993bac69f66b4efeb8806f65cf8491e61879f0dce6bea760e2b3351a24b0fd65857c5aa099954d42ee9975b7c32b831d97fa862fd8278450d8ca34bb65a23758acc6fb96a81a30f1f28f85af5ad8c7d5868ba908da53e8fd0da4eb182a3770b68e2d72576ac7002ff348bedb8eed91f96af6a6a46b99e5e639845b4962fd98cad0112d74a6fe57fabb250e42c136c34a199e1923d2fa1d1e16abf8ec661c4f3eebae21627ac62a8eab8ff872c769f4b8eba495cd16d73b7448cb0a205da2c5e78c85d53cd78bf841cdd8f94cf16666615314fa389de3a5b63a3c05b8b939dde0041496372758fbe006caf4c718690d8849ae5eb000000000000000000000000000000000000000000000000000004091114191d",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 12,
+ "comment": "signature that takes 7 iteration(s)",
+ "msg": "1200000000000000000000000000000000000000000000000000000000000000",
+ "sig": "577e0d1047704e02b4ed8653dd7a36c7a469f50314399d9b1e07fdf02a5c8a6071c4f2df79688c1a6d32ae9182279c76311762aebfb94e9410d1a74ff0191784a9d311dc970ffe4b51834e9bd49bd21dbb47817df5991553b6072dc547048d58c7644217ed1671c993d60f9882359842b82f48c619f318ec138842e4049ca3f0592bb06b14ae50ecbcfbc2a6e7c806765d404bbc5db8afa7e4d37f3a8fdcfe9867cbf66d1a971540e04c80e4a2403a0c9e795cc457c0cf1cdd7897843eef8f7e1642b3a9b7f4687763423ed0acb11270fe0bf01c1fdb0077787c591d20f2deb39ba6aaf3f433c3639a6ec43e314d212eaf1cbd4598b0bfb0f4f778f86415ca66122949ce3f101c667eda97f8cf6fac74d92472ef5fda6ebc1383a6d04bbb41b0e89ff80d7f0439b19b1bc570d8e29729b4d1ceb12648ea7ce092ff3311d910bc3495597f40e191ccae4513da4f24d88d211473468de354f1f03be275da7da36bf18233404f9d6f401bc9835544b1307312372a88714435dae593839d8706d74157a81fe8b744fc6a59c1e05f49628f8d39e0585c1ff156ca8101a53d4e48ba22d99ac7aa3f5e84af66140e57dd068ba296a1850581f6156671bfbe983d17e0e16d89511791b5be7350283f1cd100b9bd3ce62b607d00f3ae4174e892b175934c7c885c5c6b2cd3c533fa82fa7256cbd0bf9b53d009196c49d87779b855be3e97b4ef3adf68f02bd3e19ddfd876b55f0565d5600780733bfa95d58754fe7155ac413d67e9d5b5819c66140c15eeb622c0c8c8e15e05c79ef3c030de87a94f5601640f3bfaac0c961d4dc03b9d313097d20b83d27fb9e1b028503a624db1fb862bcdf7996443173ea1dfe544f285c4a029b6eefc5ae70ae3869ee66d220b89f83cd5879d2002866ca765cddfc8e499bc926dfd08cf86888f957f57ad2273e9155aa00ac4b618620953afbecbb4ffc6e93e82b77dfe4f0c6bcbb4e2f849f3fdd70f9644d1d420cfa938ded26dea5fb0052319848456f611f64e5e9a890a0643ca9ab8bf96b0b89864197d75c85620dd76ffdc0525d8872815b92a8369af17dd5bc4fe9519a2903bd8c1e6f844cca5ca2e79fd08d2b66939ad1887e5a651968f93e804e72dfcd6b244a66332e8358c7a39b337c001708dcd088c02c8152816d3ffdbdb323e4c8909e1b1a7fbe3e2dd87c8a985ad008e54153ee21590ae89459bbde19eedf5a23e019cdebad0f9448a72e12533616b76803dc59bef6a5e32e25caaf4034b6e3340398e95a797a484cdbf1433041522cbec6eac497d437a8374e2954c35e7ef105b45f92418b674694180e3abc3903f9a865bf24138ed0f7b5c81a8e49a39f11f3f81109a4fc9b1ddb6dc0d3f9697c4ad3d178b02373a46669fc8b6c7fdfa07e0beebb47b5043bab910190c1b5680a5e49ff786ffe7e0aa243b58c5fec92c148fb48432d20c76c88ac3b4592059eb414e2bb9d50c8db83f8003542a1a58826dd0d91fca351067c13917f817e32a438c02de1d51c3e2817c280f370a96a9145863a7ac1b6a1ed1ab640ae1acd2c72a05928b30ca51276ab0d3858e6e5638f061219af3fc0795a54d7d81c368898314498a6b279ba111c3a79514918adc6675b279a5571a3c7a9b9d79d725e852c2204490230a0270f00e758bd685885518bb15a456ed6344786dbd5c4009f94f04206e87b51d092aed1aee3473f8211a3ba22a5ac092a53831f37f4d15bf0937b9db11336018030469aa296807e6a5ec829c8b3fb741cbf0207692fe30b1530d545a56a48fdb5b3f72a8f158dcfd4808e30ea8fd7e2d6a19669ca7de2d50015c586dc17a37e6835685e691e516e517be2021a81d42f0330e29e8114fd729dc1aacef69e006f87ad74b0944eeba1687a2288607a3ac930c106049bc7a9435d548fc275b1474299c7bcc212a41d9847caf8def2ee7293986c42af986c0cd28ea70e56993876aeb3ad7900e84daf267adaaf5e9df3877aa1267cc99c7c6ddef01867a17019cc013ca1a921a319f1172500ac75cb8a200df0e38c1cce4054f2b0fbc98f76d4c7b61d6ef3a54ac0c42eb2c9ed53426dc2fd289e71f0532a026936629b6eb8657241b77b94d6ae11c54a9bf5c7ed7772e7581ed16607bc090c05269052fbfcd3653a9cc4fe8d0fc0692dbc497344bc73a3e9044a79d7dee977168d1c1e462b03da281e4124deb377be97b286ad5a1e1ca93529676c25c7601fafbc3cad171ba3265690d6ce37b760d053a0e5adfafa070becc84b59c39d401a4b3b84b80c55a9260ae2bb510230c8ac81433f466757affe6c55d6b52c367c37eaf0bbe5134a7ca5f1aafb745fa9025ed419e9360d1649bdf87696033742cdf7a6804cf88ce19c7d0f33482c83e65aedcf0e3da55b395198579a02847899e5778fd5369a88d04eacc1de1ed23028c4de2cbe5121a6c65cf648550ab340dff5b49e51e9543d6711ca1c3d26a744d1949edf649b81b7fffcd663de4532ddd1e7c2837d6b30995029eca9b30c8e2a00dca5a44fd603430daadadae3d4ffa83fbb4c97a373993adc8216638f0203eac09be5ad7f222738907a1c2b793b419c317bc0312723c0e8371cfcec8a13065df31978751df34ff3eccfb5b37315fb66a506083e5813295373c048b182dca86876528209d157a44a739cc9cb99e076d82f51885ead7933100d030a3a7745cf81cc36639e50be9e067b09a2b0015a7b86446256fbc977ba87ef6ee700528e751d5f346d6c24308403107aa05a95cce61c1e3894a1dfd97cbba4f3a130dd491368787593cf353d3eeffa56640a3451cb9eb207c19de0edd3fa886db645e260618326095e8ea93a1092183de833b66cd0379b94ef4a1cdf87581167db387e0ac24b750c47e02c98adda5a834b9b00e88d9a981aa98bb30cd8982afa2cbd7117236e03a23cf13f6ab2f67dcbd580a1171deef889889daaf156e281eb5a3be2ac914841f2c7907228971981ee9567e18748c03ebfe9d4fa67dc2ddaf865e1abe1182ff33601b97c44706a948f2c0bafa57f3ce3819005b5e397eddc9022bbfef2f65f9f29d86add3577a6fd117139a9ffa190b725d60aecc19370343a82f1f0f584896aea7d57fc092b74c0769c94242605b521e1f6a4cd2fbcccbb4a80745d3f431e1a12beb8af87145b9eb4b0ffd9a863e27b18b07fac43bd686bbf08d040c201ca574baf00daafec8f92c8a37e43f3bdc7ea514f2e0367a29642e2e89947a39c479c4ea940fc3771fd57c37f96e759f333f24c3eb1a67e6b202b459107042de9a1b789f9e9e8013cc3f2a89975fbe6c1514ba2572ed81629e0b418d8011659ed339bb37f0909ba8993475a4558027613efa516e575336d735716ceb77dc54678337a9e1d70b87ac85a3b6676447de69d6bae2a0e19048b70e0af8b767165353c1320612671f17430a5233e2fd95237889e4f11e5fa8ef905fbfdbd09db873acd82420e6a5d0bdd6611e5caa0183841804e19da3cec5a21bb75b91a01a47d7ef749af0fdf3b224a2f0d6abef86f850d16a9d7e0df467f28965c485156fe46e611f311bf59ed3f5d690ba6572228893e95e9e370f022b2daa966b31f41005e184e758b9ca396a23f01adf0838f9987433c87f9b0a98b5c208cbb57f66014f66bdbe793922333ea1aed91419f10a90d5f18f983027b901e5f70bbaabfcabebb53ca657c93b0899950b1dc2c02f5f6ec3fe58a4ae5816013bd7b15111b10779b13dbee751427673aa97e00eb9175dd2bab020e1ac9c9dab87806ac164a5d8f86217a15d4e75d13fccaeccc0798fab7551bb9ad89b2c804ba49606ac08adaed603422726a9c7b4c5a30bbda9d46004adb1baf11c4aee456bfb369390e82d504d0c300b18608da25086bbbeeea9baf586182246e6dfd6f15e2f199887756f6a914ba6cdbbf5fd5029f67212c406f1b5b88c36cdeaa982149f787e273e32be8f713535afeb960e302b129521ed3bf2d0a911908e7471527e7a177748149ac35e20e4d4ecdd95c356d84143e4cb6e627a1bac0cd813c00985913a148806bf00bc1da3b6d123da765a2863cb07b208125d640afa03dc3f2025461d228665da2590e3cf692163c5061c811f1f1608614d9ae6301794d9b35dcf0ca31ce7f475b085f14c6edd944cb343c08e5af9e9680f2e20656556cd60c2b4b3b10a66e71d0eefa893a88b7d3e789935173c39d4a5d6918f3b41187001b5cbef0cc6fc2b75b2cbf7b4581d97ab046f1d926fbc9a900e19a5bfea2989d3a63744443637de57a27269036ab9f35205a6577191f2efe1c01caef6f26c697fe06e7fafc6cd7fa533a76cc3ba9a2ba2b07bb2ae7cde729eea9b5460fcc9dbe9e1ed7d024668adb632321b2a649c2b285a19e2c5b1f18102be86f3181c0264d262cc55b2f2d60ccadb6329f19303a012ce1693a474d651a14148a0179855cbf57d149aea3165adb2bc54a53452f4faaa758e7961c80ba00dae2f3bbd08ef95901f4747d6b36561bcbae89364d090ad6fa9fc37287b5c901bf19504bba36f0a814634673918b1141b49578bddffe2b30331db1fcefe1bbca0ae41ce4f1e1cbef7daaa22929300404974c4db0b132f5dd4176eadb0d02e35555c5e5f6282afd1fa494f6c82adb3bad3e5f4fd09222a62bbecf700000000000000000000060b101b262d",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 13,
+ "comment": "signature that takes 8 iteration(s)",
+ "msg": "0900000000000000000000000000000000000000000000000000000000000000",
+ "sig": "ae6b9da548f432f42eb2f2d6fa196c10500fd99674009ec015f6c5b2e5fa39218f361eac40652d671454bca3ad7e179fe8e44aee00e1731df3d0557e2f6b96ea805a7713d82fdd1ca369c868c10654dc0b38916a1559517334ca20021489c6bffd9942aea8c7ea9354e42d2343c6700422c97b882299909dc15f653e6d69c44bedaa068c129f0743b6dba58e0df1e30c4db0df591f75bef4fa209cd3b12b48a7e3cdee1e7e4c54f719ef10611aa4d2a668fa6f9004252eb8623f309069d73b46198ead952e30b5d2971f57d7c983a098d9f7a25c8117e2601d57cbaf36d0434ea72a11c2214c170e0e0db7431490ed801f850002b2f959eafe961971d8992e4f306745c2b7fd7b12f73ccf6757eab25b87e39b0a2ead28e3ff3096c706305d880df78ee77cbae24791796c05b537531e64e69eb71be60bf60d88c076cf0cb19a6858d435fc333d962a668a979b31a8c96036b516911290d7ec16b6f6fff2dce67fd4ae815e658ebc39b2a35666a7d1fb2444c905bfa913bd77146ccdd33adea9bb35ad871b8c97b9c2a836721f967e62382bd0c62073fe60b2d3eba75734ef612917b1f7ab0cbd34843fb01029b1b0c499e808095a90887a2612411d6cc8f85020f3b903d1231f5ad3cd251d6925c3bb87904186fae16c0421144eb98cbf30403ec02f38199a62c41f175d19eea8e3cd6c25897e773005d5bf931b45e2494c7553903bd64f4bbb316a11fba9a3d2ecb3f8fb6dc28a07241ae8a4c755496a494d6b0b9d4205e35a46e028b72c7af11d6190b23a2c70404624fdac2302c509974520bdfde087f3649a241967c9afcc16970af251b5ab3046cf217312ff0ad54f6f23ba940840a340498a257dbec3ffa44532057fc2e4e12a36dfd88e7ec42a3885a6684568af0b8e821b17abe98f069b27dcc045e8fc2403cf1e764d1adc4aad6547139d107f8b77d89f1aaa2d3be24cf480c9e03019c151c173015cb1db490850fae6be852af08df73ae2b98f763444d28408469ef1104f7816257a27a7cf78708dc1e310bc0f7cde56ba7f32def255064fe81e9d78490ec9479b9acf7328678ca8aa3a8008902a9fbc954d8c1ce50aecc797943d3b1ac681548144cbbad4805773408f2c2455f041e68ef7ed757b504981a38610f678464075e662a156c058e58a6c9fca1c5c352dadaa66041bf074036bc3258df98794dcdc64248a4af53cab90d7873b1bfa2dedaf6eed93a594ead4ef4a1f4e843bfff325aa756942b2851a9a526f812158c591f041a8c5240d19603bff6afb53fe8d6d17a69b5f0752e2e7350cda72baf17d77fd96e1a6c5376c358f61cfe5f484bc401aad80a44a8082305bec47fe643f782cdad0f8c1b46b9e0243a66498942ea5cb749ddac0f14c13dd03cfafa9840cea8f012f68c5787e7a48fafbc8c670a564341dee0331387e3efb7864a56b3982012da04abc3348e46eacc521dc9ec86c6a737421d5e7cdaf957137a427efba3a0837cbfd17919c93108ad6ea479a7b41a294e4ceb8b68585ee6bccdf500a504867094a4a40b20d254ac12ebdc0f9952b20d582dc737c5f7435b6de29c5bb73da4b55ebbfe1bb7e0a4aee4c1af9d1781013e082484665964eb913f2fb8c547096e8a7a0cb6b8600530c4824c0b7b61ce65f1f4c04905aeffd6ef705859b19ffa28e88c65d1080c61e6f14f769900bcc66ead17e7f8a6bbb494efd4141f7e158a5f6924646ff7019ff67c0ed0e178e9dd47f53c6585887afec69c41fb40a23713d889141a0ff48e84778b1e6f1112be5c80a6272d77f514af6bc9dd47bc6d85f0d7cc166c20c2b8255c2fb63c4a9a303396592cf43a8de7aba3ec7a0e45470410d8bcd2a01016a326617bbff7e110b18129a56900515a8d54224467773a7a731f28e9bf5a4bbe640ca5aa012f1b4ab22fe14f121f3a486505d01e27b19a87801efa6fed57a636880dafc40a820c73ea49c2870f34bed3b504c2f61d1a61d073957dc0dbd97b2c68dab42d9e48bfe559643776004d2fe5f7c0c7e7e843628ffb368dbc65d7579a826932bddba17db9de0f3e573916f2e80bfe65f1be24aa0370aa1fb9b84a140c3d6f62fe116a88528aad07d190fdafefa49b10c4bad1ecdd2e6168310c346e0143f57099cc9ac8159e003e95158cef5a518195e8e53682e09bbf1d259dced3aeb19b3ed9089be1bf50ff25080cb7be32e64ea027a54ba01811b9fdad60afedbb7423a2d958b90f1a568c413e50284cba2ed180d3df64a13f210a824dd309871843ba5a5df8dc016092a716bcaa39e59c74961bafcad934fbfa1ac73d8e876afb160c98f7ddd27139b5cd3493cd18e08290e7869e203e7e3c5e2a077219dacb8838d3be44fcde42ea5a3e4f21037f1f0f66ad8b526d723c31b037c4c660171cbac2aafefba2afb0cf667bab8936a9453e6221c71956ec22cd70ad54226be512911597add00b3847347505e4e7a412854463444cb66f71eb359d4258c2fd33c5532e4fff22ede008ab72fee788e4bc10c4dbe9dc3172d6406f6b829903d6268206fd0b10bffdbe1fd62895790dc2f0bbe10ccf084605e3d19d4a86b4b64bfe62d3e7a1f43afcfbbaa5ba55348661d4c416c7219be1de32d038db26b8cd1e947fcde7e3a819e89891df896490996cbf958dbd4bbc5b82bb07ed2b83c96a87348fce5ac03f5e4ffb987c02675a80465ba54add3ae26f67da4a53ee326499a44031defa232cb152a40450ebf9fd2fe39f6c18b27142045bf53e844535339b0ee3e1602e499bc4731e8e536eee46d7565be292d2cac2586c2ac0e139ec733f2b240fdc69dddee8054fd0eebaf8df2d9d36f15179c0d05cc309142ab8d30a75a613053a21c5a4d9e1dbfc7ac0ca37168b999646711a61e29327ef73f462be930228f97e563e6b1db0ad480d3d73f0492131f2dbd94a5b3fbb9d2194adfc1a396e60bc2d27b51289d491428219eecc092f56250debbca32182a31fc7ea67163c9ab89191505be15f3abf1fb397ba6e540cdfb3661693b6eb76b4da66e7d9f887d7b415ed946df1b593e0523b41f20cb1edaafeb53d733ef11e0cc0e2eea5a8d4497c82f1c5a3bfa39e0e9d49b3acf3915fa69e4b9ef7b69a7f0825131e6587d335ca66c23d4e54db4075d61ad0e6171711b94e1b647e62a8b9c63c089b0c2f3bd9addf550df187a1b9d7f122278c697b91091d0bbd8da14d3ce2627e5076556cc54d3084c447aacc82f2f667f96ffcb41fc11f5306d2e096825f257f86d55289cde430b07afcf2f8b8123489ef36e58beb4bb7af07da8bfe6dc9c2bfd0a2855848dd46b70244b7d2023fed10a332ffbfe1402ed48e30ea1b3f45ec88d09473ece65064b4e15e62ef959745ebff674e9ea0f337518814d3e9d7aa1c240677dab91b9c0e41e40cdaa5531799f3d240b7dbe702b84e88688bffc56bcd55c6d3d4f936ebdca448add1c8c84c54cbc7412fe201d76294711cd5349007b027fc52d91acf51359dc68e30bf80162450b2e2334dbfc653636ae67070ae6cb23a8fbdbe8f5df9d5d88cae4d515ae6997b22d2ee3eddf2c7ded6ba7ee30ecebbbf8cea56f0ace385b3b4b533f99cfd7f2930783557629bbbcf03f54b5685ef612f4c15f9cfbc3105355214632718898c829133fe2d69ae468cae0a6215d531f4cc801fffd416ab86c4823c8220059bbdccbb945aa7edb32d8627f1f94299e36448a30e0aedad92bef31c17767783b16c818e2d005621b2a551591249ba28005137d81bdcd637dd98169bb6a849ca57a439e726f5ff61001c949c73b5b2b76c1789e59c64c739a6b10ab7fd3af7be25c45d194dd5a961911dd628ab447999b84863b98f53d6b06733c2144549af2e28d1dffab2c147785eda415caf4e9aceac3a018a97f45c2bdfdf84930ea0ed5e5b5e55e328cb44217d89dc5b8592e9f82d2e9eaa43349bd1b82548efb44adb3cf8992de1ddb0389bd7074b0696ac25828dbe1eaa0a1e46e60dfb6b92db42429c01d7f7829e2732cc0136503d4bea76fb98554e17aea5fdc346c7d457ea65f128ca37846e8fb72de28a05079ae802ecf48195840e2a7aa935d817f0bc8d38c4c283f25f3d8b4a92eb7d48ea676cc5109b5cbd651e047ce44238171be96141fd30968e4d71e3ffe7299ae7ec87192ba819d27ff91781ce58835881c941daf943d675d486f6353e7b067becf2ea8d71d08b2aededd6f1045975c74f8840dedb352255fea9f9220b31b1f677a4f7ca415bfcaf3451b49fc7f3c57267119b36ff60e618a70423808f87c7ba2e511b4bdf37ea80c4024aee17953165127a16e88d1f745db529a048175497421716bda17f4af5f28be9d0a5932628aa6ea433202d6dfcb49941d9108ea1b2cd0b4f5d274f35d52bb44a8703651e0f0cecfc7fe933fa5e0dfde92cfadd2c4e7766fbd3a9f214bbaabe2a27c1ddd16e563b9d7539d7c793d00a52e2aa1ada1be432d41defdf6cb4cd4393266dd3211309f37dee5f31430dda1e9346217d94bab66b41f44a93cbd7bd10c94906fc95a1f533f03db5b4b241c7c388f6fc2cb1d455bb5f46017e07468fa7ccf48e1a6763e8d8330528439501419214353676a96a4d405424892c8cc19346f71ecf1fb0d2a2b348395abcf044d64666989b5fd03233978cef4f80000000000000000000a10171f272e",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 14,
+ "comment": "signature that takes 9 iteration(s)",
+ "msg": "0a00000000000000000000000000000000000000000000000000000000000000",
+ "sig": "bc143b5f4bf58441c91faf8a0f173603ffbebdf13ad89694b29fd3b6818b273e3f54ea9cd7dba3d4510ae2c8f14d843348820d2de5708d79984d05f5496af374477027560edb4795d84b2fed1495d55a1d1f42de240136a7596889a5c03a19a7659f39f9dfd9cfb86fc6e96182b262a94b315a627634ce2fa57f3c1c609bd5bbe27b735e13e133e14acdd1e177ba97bc48873a11ad3f5c49c7a7fe1af5fa10e5dc50c89c387a8982fcf562b2f36af26d05e05680f039d422ef9aa86a5a1193ce24bb88b4b7fcd12440873867fb572cc160008902f9163a4c238396ff943c99505a7b73ceef7fce692be774a3bb5e04dc82df86ea15854f526a2619ab59117d5faba3a2c4acaf2d2d8dc1c5a13affc788e561b1b0923ae96b139e4b3bb55e134f6c2d0a5f8f25fd37ce52ded270d318808c6df359185dcf554a7cd8e1b6afca029c5611f314dfea7e008b1640bc57fbe4a0f69aadb51bbc52a94eb20a7e494db577c04c33c570afe493b52ac0d49702256bf1d948b23e0fa01728a0d7699ce65a2ec8f51c94a452a10f2033b5d6de6184e3fdd07df3fba52836ced06955660ebce4906674ae4dcb5d32f33e87e5889bef909126ff24a9b4b7d51455c19424591c1ebd20f608022236f42d06e90d4cc5e98819fb93fc1b53b8f0f374013271b59ad216bee3101e217a15a58b2f59ca2fdf72dd039c76b5995226a198904ba1fdcfe2685074c07aa60748564cea870bc16f13afc6ae17363b625d0d5b95316a0cd3c4b5d9a5578e57f240c6f8e38ce0de11393c7a2f86b35e50fc19933967b7f51c066b98e88235d459c54d4d1a28d7d194964ce1449081affed934c99854f7092e8c7a6b5b6987d50c1e2dfc4c8b69532b9322c7094c56776ef509030539ed74e991db7fb14b5f676aa7306a0e67d38ad8639971471b578b3b40f35b4ed6d4996de86cd634b1f63948c1a68f056516984e417ea2e1815428a14bd153424445d1f32567a0432fb06a33ac65b861c89aa2f2b79fd911c2a79887465f3ee2220620bffe347bd21d57a25f9e6c97fc7f00c4570a26a9f013624af4d3e24e34d42dbe0fa6c8ab7a85cd735489dab9ac23a1e5fedb11f4c5a98646841bef52f894ba45245442febfd60a66af764efdc16925cdf6449543b49bfe34d3d5dd51fa242e9dbd7ce9082169e56217bb8501947c0d8a4b41f12a56ea30a071d2c6cd358ef952b4f18f417f324331c500e7c056a2d47d0e4dec4e892a0b3b3773bf74ef9769e7d42815af6499a7263719da39a88fd74348af4f53385d76ff0caa71c84d5561b9eecb27e74cd20c46104fe2fd0f86fea87f83ed0213c350d0e16c4e6d8c973c0ff0918e14ca27b97b19a3ca0767f0c213613febbccbca507b0a17b2bd2f042b8509f6c8c38c38842c6dd61cc5cb6772b23307cc4c400f4a43d9c644f448d85abd0b2740c0127002c6da081067d29bcfc1ce1aef5a7e375331b5b9c9ccb8ce74c179ffbb3476b102bcea3e33f947bff12f5c1d1f95df11e5c06f123f23083b7ea655d135b804540ba7a12cf4f23a0c28743289c37b6684b5d357f7a0871ba5f10047309cc4dbea769da1dd0c24db4f68de2c811aa3e2b0c36013daf6b801ded4aac4d83572f4e28f3e360b1e4da0ce26cb98e79981231d2ab7b3eaec655c3cc5e746e7d89b7790ac7aa29404d004a8bee6e758ca9759d272ef565878bdce47c3fe89060450525f5914778553f277227c3bd6f970107ce3b03d12821d09bc7850305446d42665244e3121407f8193ea379c322e0e3ccda4f8c24a1a8cba43c25f27fcbedf24c62afce4e143fd76802cf1bec1e2411c740a111498e2e999a54149509ba83b3d3703e576aad701257df6b969e57c58e4c8ae0e5af4ffd347454a0d101ef50146e565f6fec8e4309225c2ee39c4e0e29027eea6f5cde089a56067262bb297880aea34423fcc1ba816b06ee2bf9bd4732691b80dfdacb015bf005a7a74a486b6cf19d5dea2c2621ddd19bd834dfddd97af99002ea1dff190471a6675b61454408795af44266f438d4f94ef8ca8331755fd9ff4a5dcd03e88661b2033ba3e615edb7b061cb6a2196bf41cbfd4061a2580b5df7a4064ed173810e0d35181b5c324476fd99275d2b9384ee0d40c1cd399c2078ce1f5b622b67ab424da06f5e746b1e8cf7ae8b90244b0dd637de6799cc35910b97dd03ba01521dd9a29cb998803fddb4c680308597095f202631323e00fb85fd939494ad59e34077f1af3caf085ac82043de604c9fdf851bfd162ac152e70f1dc5749a6d8ac0f55880117218a8e09e3bd6e2e2c050fadc9352305ea51d9e6cc073cceab1c2369f0279449564bcdd7fd686c57a2123bea9735d89ba4b25614a20609f6bfee14fd03786fa0930b04e7567dbfb51c408842f82e658064a1253027afea7d4d825d1ad60caf8596c641a3cec52874eef424e63e107863abafbd0500fa0e620dc6fd397d42c541536dece5936a556feb4b8563747008496e4a9d5bb1267533c0b9ef60737ba9d4a0f6e7b2016a57311ae854e55b144412f085c647d747e631acaffdf97410c693d089fdf227ab8ae0318636235f189278e0823eb68db6801ac6c606fea32905d000ef30b1489d6f4d0124d10b97b12f4db0726b7374f8a5951cae97cbe1e30209032b9cadac407cb474fdecd6fbab06b5da028e04e0dd77172239f41ce56a3876d4c56bfb5f8ccf5d819302151187674ef477eea1451a6e4d09371358995c552b467bb216e88ecf78c78c6a3ff4c455c7689c3784d4fdd50ae4250110e39ceb0c2a04e04a3abc1a2ae95ad9011bf2364443ec7773a596970b16d7514a0a7c27bbb0f2436bcf27202ef21543ab1eb1314fef197ee50b4bacc3d8f64bb9a32936e20e0c0826d1af1500c11e704d951824fa0a0d44caf8055f5bf06e8e0ef2f0617875b2d44a3fba8006aaaec6abea7f626f90b5fcd1e44bc2401e0a486a8b6c2f96d76117e70186dfdcc10a677de2888758c6af53bda8912374bfa25bb48bc8d8281970b38bbe2c536f39874347c91b3193531c456974e02393d35dd57596f540ed9ebefc87af562cdf653eb41dc5ca999ae1cf0ad9a2ee47c9f641b68fc56e289844f5f17dc94e3acf4987b33bfd36b1844c43fd2f0fe91de2283dbbd0dfc1ed98cc8445c768a1c25835b9d6ced33d5defb877a7592a7182dd29f5275b0ae7de9954fc000daab005d3289c1d183840cac1832b0a13b4dd5e3f0ec39ef60842fee868e44b946809f8a1879c5a6ce3820b1a71aa6fe12fd19a79376c5246878b000b89aa0b010b449a080a901a24fb8ca8a92c5c2d9d52bc27c56505202f7e7964c04fb22bd6a8812c2bb759ca10f52402233ca15329bd9ea9ec76129f884355bb677470155d3a866727ab923316f271724ccacc23328a07b327835cdba5699f6dd4e29d80d45efc6708f8b7b17d20dab0c0c074e595a1c2565cb98a47c589ad761ab30d4b46c97a1a4d52855f8bfdb2fa59b63778c7b6676c0ef5acacb7155a1362dd2ab49caf6d95b676529da71b2bf6601e7fbadabeeb5827f782fcc80f8325142eb172660d2e5854c21876f1c40d93042b1b2b6e0e5cf2ccdb6f2cd7264ed7c106fdbe63fdd2d130dc242f1e71f5f9b7647dc2feaaa6162b6fe0cb3825136ffaad90b67bb67d2917e657bb8a623a5f550270072d95219ace90168bebecffd3733402fad12f31fc9894ac6bcb51ce94bb88ecbd5b66bb8ed88d2260523e21e4f6fd20d8db7df6c2604e0a659503426ec9b167a884f277a9860481afbecb69b2c8ade9c270d5f6d064b4e6c95e63d6a20e06f59ef800d07261906ea6541e77af7128f4fb3e6ec5932a46b1d1e0580d68896d256f29baa055ed91bd177cf1b1ae2f386382ad95c1da7d7949d398b6ded44859b9b4af1a117ca76cda1399a1def5085111d69fedea3fda8947c0ea3fa744755123418f127fb2bf57eb04e9480b1e20bbf9a091cd9830ef6aa6589df921d498a149096b1637ae5222c9481a826f34d5c5e66dcc2a977fbf141814c274fb2c07b6abbb973456354ed4de863c3a74dc1ea7007890129a9ee6ac41c026bbe9faea3ae9b1f1bc38fec4924b805143c0734776eded25925ab85aa943d628f17d5c4cf37e41197d1dacfcc1114eeedfa449fedd5749de33cf83add605c9d0bd3e32ebec64102b706961a40ebd9381128bb2b430748b5b62640a065cc0874d0092a4660bf00978b563257aaa4fd9e210549b5262510e695f5987369588eec3f6d0ee034a68ecb25eac0f0d9764fe27819d4039af013727252808a6c2507e2da48403efdc9fb1b27ab8b1de11a4b372b2311a939f3f08b16c77bdf15f3ec5a4a916a179ea7f64b94ab37bba8b8ad8cdd03b3a4e929f832dc0ddae5ec0bda1975ffa2f5d89c060b77c88ae263c3e5d0a157c3b2102275612cbe3d26a0917b525fcb759b958d3682550da4d9cb46d8787215d374c126db9da46bca02cc4742bc5ad984718477678b3c1201afd2c94245fb4a591593f38caa53b476c9af0784e999a50e62954fd2fb6bf5536c74a7a9877d9e20598977c9d400ad84cba1899f706d65666060f991f3483a2cbf8fd1294a7b5c7dfee0338414b7c7d8f969bb4ccdee8f205172e30c83249787ceb2030375b7588d1f0fd0000000000000000070e1c21262f",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 15,
+ "comment": "signature that takes 10 iteration(s)",
+ "msg": "0b00000000000000000000000000000000000000000000000000000000000000",
+ "sig": "d54fc0ae94872d53a8ec295b549a9754c675028a84f54c25695a3acb715e1a3d8ba9778b3ddaad25b8c487d21fdc62b879f43dd429dac7f5c303a485d0cbbe1e9f65e53ca8f722cad42c27392f63cda0cf5569930deb75d02bbdd3f971f6a9ec96aaeaee32be48c9fdb4969667744489b349bf480ea1249cd516ade4d4b581e3c41103b5267ba72b8dfdba0e4621a93edc18b37fedc35878d6f2bd2d0115cd5c2e243ba4aa02b95ffe6d3ef1f12801ff1ec09115d4255e202d957d0b8666b60dc8767b11f11b311d9d1f0c99f67167025ac9a0ed6c77c319a5d261ca5416699bb51c961d3a077c51949091e6cf0d4cd261224b6a88158d78a45730b6a86b4ca31380540d3d04228cd51c00a6671fc0036b657f3b52bea56ab503adbf4fad1e452bd3b1b29f27ba1e24d6f302ea788a7e59435ede2de69ab30e356dbf17bbbfe176c2182f870ad9a8a819f5b85587d229beb13fc6d4034722b72de83c1613fe434dcdd26c0346571cceb396e3389d08e1094fe069219a509e59ea17381575f4ab1b4ac79cb6cc64e5dc5897645631e187cb4f4ebbf1dffb083f7dea6bf6b4991a32dfdddfa43910bb526b84c797495df6176cd7e5ee6f42ebf6bcc28fa9fe396a8f72668d33db7821ab5ce54b7930dc7a90b97b9dd6b12f5d370bde4ad41955c5d7c1871632fa717237d4f39dedaa0cc4ed74900c688ae91571fa717d5c8f70837b8c27b26bb604ad340c98dd5d1878ce286b1fe4451a20a88a4e8902e3a1cf10268d26dc6446f7ec48a84b8bed9641004e1af82b679cf1bc29c7f9126f8aac9688ead72e14c4fb18292ca507c976408603bde8ca2650e3e50043ee112714692f871ad28305122149f098535424e4f278730c0be7c1124890cdd4260dc32d63db460399f9eebd339b73a738b58c0a008c857853f0df76789428213f65107c4359038fcfb366fb8cd74f2d955e6f2b30b3e96c70d9100c781f1d6031e210b541c4eeaf30bbcb16ac3c7b21cf1093fde4999c8fc254eca328dbbff7c5c880beb3e295d2924f7763720d5ffda0cce07e8889e556edf40e681e6894fbfc49413fd5b3ff232ac029579ef7f7cf60bd6ccd48d9f76263e948049a217f12453db900ad213e7f3e4fc409710fee4c92cbaea422e755cf51505730298decb37d805d1d333ed46a84e3c7659f187a344f5090bf338bcc76aadaa1e77f726b2b11880ef162f5d2812890a0dfd7b9a21f294bf18f6b447d1dfd92d009fbf144fbedf86e1cab012ace0a2ab31401c5f8f8aca4dc92c3609fc263cfcf56ef858446d9c66383efed916ca0c0ca351b539a7b4110658ba425d35b4c2cd1e235ff2c1c0840a292f23e34ca7121273ecac5ba01715f4b0d35bffec379da93405994ea997209efb895496eefacdfe9161f7c69afe3cfb9fbb3b68e105edbb0b27b1d0514c47d8886d58dc00c6cc20612630b0acea51396ab086c346c07206888257b9af5ccc06b867ceece53b4ebba63cd4a374503a524672527ff66f570dac73094f90c6dbd8fdca572a9388d243f63521c681ad8ea17ccbdb4b1bb215acdbae279ae5ae1908bae519d7398c7418cd56d0804eba259ac01a11789d538d848b76afaf7b93fce336b5bdee63d23b3cd6c46dec665af77a8c4efaeb9e0ee1576fdf7aef9807b4884f767d6c3e14c99c14c726c686ba8feecfd54c14a5234d7ce4ad7093c673d1251b353edd080e30aae264037c61ba8540640aa38101f73ae91d788a534511314b0cc0b4c52911032bcd286919ec56507fee54032f79cc1e1d6cc6c88d9a06215e9f3ba38d5f7bc91781e8cd863108300db6adebb51a790f7a2ebbd8fb116596716b1c7028c8cd9c1fb1db566c1641dc732d41d75fc7b8b0151d1daa407fbd0aecfc0fc484b1d43f68ec4614a32a38864d4acef274c6ebd8c8a6450a29d4e63503af63db37d22aced927a24dc40870ea3a891045a5a77c906b963980f58c5ed754ba710257fadd4f50cc13825a69e3548be0f5e10f6322137943e44de4a5b3f48d62ac256d7309e942dd1f3f211c3b8e745f79984dd25cb9c6650fd5c7ccc6e222852d8160fc8c97b52bef915407e17c88cce2eb560d359a92092846bde8f36f5b1894a3e69efff64fca4d6c0c3259aeb556370328a3eea80c1b2e61ba1f9ac0c5bb047a4084aa0668103a51ab97381bfa7e6a6b631e71a91d6191c6983d6698efea65cde4a23dedfca7e6b9a329b132c3865308d7ee89bb49de4bedf2f1b09dbbf729c1f0c53409feed48a120d2cdf57301974cb05e78619c848ded1fe6fe493dfcb581d5bda8ff0146508ab2d0caaef2fb1163bdda0f57da71805e6e53c8cc56a33d3bac12250ba331f380f090d8fd9c29c94935a685d6ca3567f140ca4278970ca42eab4c75056700bad477ff9865462dd82f7bf05dd0b4acf59b238a9bc9566997de3e3ffcb1778d7817b7196e3d1e06efb4c6f907006837c8a2e5117931a3921965db84f51390bf48ce8b54d44c6d8af12dbb6d171d50145178822fb457baa2b78246540fd9a348fd3667fafe1c4b983665d2bd676dab43a63821bcdad0896723b7b6c33e78eb9dd7823e48e028197cf494b16ac3fe0ae9978b369ae4f144c7aa3dcb5f2263cd2a29dabb0b14a442d804fadd786870565b40874982fe9a1f1338d1c02e286ceb42ba0461a73bda8e2e1304dbb98974f7dacec8d90d6385cfef3f453dbd098647eca6d33e028fd6c0279a090e36a068871a1ac16e298aabc64d4e7d66f3e6fcf74f56ec909d8aacf8db5d9af2185fdfe2de96ee568f78f94910be75ddcbe9b06dd7dc290e7b7e162bafb6a3cf8b6c90a8b02e417b40b632d7c0875e37ebbfbe21f2b60535b2fa76c3b1cadbfb8d4176dcb13b530e660bb2340f276d3be55ff24b29746070bde345fe7bb8d06b7a4dfb85336acec4bd02c95b8819b81d1611c2a61b31f185d70653011f7affa1f6dadb8ac5e832659e09f71322a60770ab18c3bf2033da08fc6bcea35c4f3d00b36d9beb7e5baeb7dd63ebce5bb46b600be9fb7674fc4788d72f7a98bbcdb23c49dc6d75d7223dba5064cc5426c781ecc73fc08a975039558ff2041278116ba8a477c9da4b4d9a19433de8709eed7c18a2bec23aa6c2b20a6cfe1e36e27bb4f4c2b0fb74baa624d3e61715aa9f0188c45d4405ddfb4d31af661defb888150116639156a92316f1d77df1c3f25055e5ecab769531bdeb1f5e75bfef8e0b521fa6df84ff2d30544867bd556e054a85660b8515c82884c46f8f6bba9e7b1bcd7ff6858d97d219acae3328daf5018eb671965e8bfdcd1660785e0377a72173cb26c6db4394a7565a91e119ea0ed09f549edf01e9bdab543da2b1372f977cf7402735b5646514627c2fad38370e10ba0271390cf987e6fbe28770961cdf51d863899cc6ca6730788815496ce52e80ccb7a8e4a4b26642db8d652cf4db330b92ac6d96e7d357432dcf15fd831fd3ae65c57dac7e4ea822a6f24744c2512127fe386b9caef4a82f75694779a950bc33c2e86d50efe6254345793458b5f3089df8a9b21268c5d4031fbf095afde2d9f5d7f8e79df08ccd2e6c892051ceaebd82fc3047a38e6ea4fd6372d3724af26031b5cf9ad7529f89bc45b68a25d56267dd55cc4b768159919ee83210cb0c2a967fdf9bacbdf8b91a2adea2c51d73712c8dd051f17c6bf74a0d1607ea48cba029811a24101cfbf6c3951e112d39acb3522f3a38066f048a0ad2996f846258a3d136831619f598b408cb6db93d4f2abc1875eafbc778623ae0f9750995372527397f3d427d1a81316b448ad9d82169ea3873a0b06294981a604574256e9408770e2e6cb4c0fe67931f015d6b844bdef6f703ee80b62517fb81f9c81a20daadd9988f912578c5ae932899949256f09a26dbd44eeadf93a708ffff3d6edd1aa55bd7e681564f4b183176561437ae8685be77acc1878ce9da23b280c1b5b46dc34c4bbab39a5969dbda6793248e0e2efcb56ffcffcc40332cc54924f042ec3a5008b1ed0db81bb1d7af47e110243bf388bd75af256be280f3fc9486fd3db45b9769420c159fd593eaf4b507a038760e72e65c766a120c9925c4cc4880518ca1f810b52c326e46dc489f694e6f68b13ffb669ce5a1bb399bc9d25bd5d98c2842e12a0ed9108ba5136b865d819b1c0c8fa020d3096935b78c832abdc1ad1b22bbc80e10843ea4fa9412002133f5a5d825f86803cc699e42521a6249b7a5a8742b9b214e6557c84609b1fed79893ee97fae0172626a9f00ca2d5f7a7314ada0037ccdb73a294db5235edcd6e5ff7752794c358494a9c1bcd35046cccd6e883cfe07a47f42a9e8857bcbb0d89a388a55553d4dd120b3d30d6ba29192f76812a21209984f4d288355eac8a5f9513e28994ad8780b3cac76eff15b5e0f4113d1ec4ccb20392c282e14dd52d370369eba9eafe0175ffafbdbf72cf9b99afb23ed2e9a52a96db144837e0b83d31c35518c0becb701c8b79ab7acfe308262028f00cc9bab4cf905edaecf060c77756a0d56625b52e26ca4f177897abafc4e730d8a2636ad2b065bf32bc17c954f08868c1d8a8a804e5e00b3a0759a174675a1a9c1cfd0fe052d4a537592c9e7edf3f7fa1f253966a6ce104a65696ab3b6bf0c26727576ef4a79aeb00000000000000000000009151b23292d",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 16,
+ "comment": "signature that takes 11 iteration(s)",
+ "msg": "0200000000000000000000000000000000000000000000000000000000000000",
+ "sig": "b4ecfd11224c059a2731e7232dda71f943490c5d84a218d2cb00a6bf8f96746497b327d54ef0528952171868270aa6cda099a943123ecead4d61138a5a2bb90380865ba0caeb5fe3a4eca46bc8da8dd6c41c5294f3fddd7aa138e1386f8f833c7271838853873a61912813171b0003578a8db71536a98eff4900a138a1848cc45475fcdc2295fa322b21d054791db116b6cb123fba5d51ed4c133985ced556e20590b102a53567c84cf41bc68102164ece90b87744aa46dd6c84c67ef69a87f34093ae127de228416ca5c795ad3c4ba56097119e6085073e736f0dc4cd51c4877d022650f911c7194aee9ff7f13f94c5f73b0886b889ccea790cd13c6f4c52effbad4c4ab89dbfa816b3ee6bc1e84e3b4d948713df5a3baa2ba4a2fb8d9978cba124d214b251a1594f956c5f175d3a5122ea270a085d11f133810f7ac6b07c51b13f02a590f39b50b85c2757eaadbfa802dbba616c1b1077f15644f1e773fbeab05111834df770e31a460d430867f3f0a1e4a77951f54aaa1b04409dc75c6e4e56063a531c30f2e4529f201a641a2a7b682f6d26e9f18067f16b0d619cd7ad06874e4c5ac7f7f508598bcb044486ef50c1b075f8f879e8c7ac93481f4534e6c982ebf9b16f0f83c94504e68ad99c187d2aace43e1c4726817e156e2ae2c6551f9a2285ccd5608c131390058cdf292e6619f7405e68453842d8e12c08d8f0cbee7b25bb4841a9afd520a4a25f92d00fd65852a0f03bcb70c49d2f95cc06f64312fae537bfd4787def2b3c321f576cda847eb14666cfffe2cc61c35139c88a308d54ea4f7500fa1f1b69abbd50e85f6baf0374cdecafecbbed52ab0d9d72ea79931d78d8c86652ebbd30dea1ad90eee7ab63033f4e0efd14622e5e9426adc9fd40847549c304535a5eb562b89b38a2d40d2173bae8cdcf5f3a049c3720db29967c65af8485d12dac3240c803b128fd89eca7f9afe3e994894c4c6112168cc89db5c924de54b346146a917b0427ca196eb5b9668fe698f678f24c4d612092ba8f7bf26475838dc52e2daf146ebd915f896741864b01f7730d02b97b3ad58eb224148c33c016fbbdf1435e3e8b842f2d42d4d427f0543f4294069394c884669a87d9041001413d257e5cd81354926399361196f40852940ca48a4bb74ccf812883eb19a4b404ceaf245b83eebf8f47ac6b0d00237261522c6166438018ad900f6db322d1bf8efd6ef63a0065a1366d93885b2d1c1a13fa37d17419a9f6ff878b720001c1bb16685f8b5932b75d734d3194b9eb39756a7780cce344be03fe5655987d0bea11d0a00e526c7eb479632a4db51d056ad351ad37f51dc14780b4730662b90aaf44ab5f2e305685c641411dd2b400baa21b2b44d723ed7af3ca3758b850675df9ef5bd1707e90ca1c6fd462b6d000668dd625023bbef9a6c244d27557afe307382cfbda0ff068fd228b863164ded33ea50a16872e759302dc44b4f3538a7dcc8bd0f82385a79effa8cf7db60d09bf8a349dce50bad2789cb1829a6624feca1d15505c5f37aa8e3f08ae1ae2ab8274498546b2931c2a823427c2c5200bb74739953a18b9cb96adf21493d4784e08aa0318066ff0b75ab9427b21212be4f09c3413c9c84bd704537c850e30fb12bdd862ccb1dbd1c31373ab9dec930100a07b32d6c6b14afe50e5b5b8fd2d37a90a443e3cd2761e31800cb16e31dcab74c76323a0f462ce7f7320b75ee4c21e0f0306c67a8f69201454c38a466f183431b155080860c641adeca00260567dc73d5065e1acbc055351c2eafc1121697cff2fda1eab331ed6a3908cb10ce16ca8fc6179177e23f9088f17232425b59180542056b8ea61d7ec0e58d8938fd205fa62d7693143d6f0abbc6cb4f41cdbf44dd67f5d7a21d7a0b7536df2a4609f644a7f8d96b861e9e853bb2c9dd828c73146f1e9e20b46a067e48b1f3694cfc44a256b3bd97801d748ec4de0b3f8ba52bc2a8bda92d79618045ee5ceb20b756421dc92747813aa625839b3578732f2ad1d801935718df8d5e83edfc3c23e5a5e15d4684c42d3ebfa42d013aeff74c4ed05f8ef5143409a9e1c1d8f61baf5c9d0e3b072be3aae7ab9c2317f2786d39b108b12d948a0373634e7cbeda1b35fe9ce694a825d6ad5d83743df1e4e4537ef7fedd3b312d56c0754426f23a865dd667e6896a82e6062a1f5b6c8a60d08377d42ec5b43c534e634d9d85f82b913ca10922cd6dbd2c3d7d35ecc98cb37af974a615831846dfe9aacf9f801ca6cbc4290bf5e8d6bb832df0dcbeb93025baa2ebd7f3b4941e617d5437fea49d5f64d78c2e2b422bfad3efbc4bd2572cf6559cfb7001e4886959ece69b5305f0799cbb871b540df18c5c1935ddfbe17c491b9e1e82c2c9a1fee6879617463f60effdaefb51bfe749ee3fc2905a3a9026e087c984276a543cc3f4e7a6948c8d92985d24edde89b36ee6d9b3d7e300936548c34436389f4e7bd055f26a856ef9cc56de2733cde47fbd173a9874b73d0b8ac3a9a09502c2dcc18585810916a4ba6a72bfe94bae53767e55495207c2989d77e0e0f07e707f66a1efdb93c8e149839ce72b31b4e17d616ae0a674cb349c2d9fbb5c72b833e7b7916246c8ce495b3e1d7b199ac085dadfddb2bda88c8529474f245797d7756251344305891b098c711dd6a74d54036b299ae35bee1fe7284c9ec11bd8dea6b8238690bc40648036d56401f26b92584f726de2445030cc9865545447abec4b4e2c0c06681ec5ec0243d845f35dfa8d80127fc2542cc04cff53842e977a3e9420e6f3303f5d1c11d7d09c15fb229d0d432857987d6ee4440be1509321511b8cf88aed7cb27c1d745b672492d183815de62f1d8f69c8581d7e6918f13225f215f313585aa597a3c8876ee67317c0ca184bee5fdcf08ebcbf43d01b0049af2455bad78bc8c28f11252bceec019032e4feae4ed2c5d0670f9c2b6d5ee96055469c25661fbc8c09e1a486013b46cfb0c0eb4774dfb65b8e3688a02cab987923a98e7f75b44261d44c4bea44a0df4ec2b8186079f3557bae7c951009a64cd6bab08410df3f4ec65b58bfb8e31c3659d1f4b3254386d850385eb8cdc19df92f011d86ce13ee526bc524bcb465ef1aeb8f08e809273034be71d95064979ac196d9c53fbac31789ddc3b3eae14d2c1e1730e2f5b38fbc352759c1f573ae742c6cc2b15fe41fe6292f3856c328814f7d70343d3320aa754f162e530e666889fd0187a65c48b42bc2cc87e79d17102cbf66d8564ae5fc71b92ca49b04d1705394ff1e6af4593792d1a6ca5b00e972180857af83d289f6d0aac81e2006eb40a8d790c7dea7e075404e5e28293f4385edac77094f2e2dec38a15b12894787bbef906d12f8bb4657c7e3e2c8767a310277f63cda040bdc68c5340caa2b39b7579873cbd593cd81532e628ebbfdd8794b4fdf82d6c6b20d7f6bf157096a96a5d327a972faa5cab92c442e468cbd6705fc8ee489489cc687777377f87b470a84209e24e18150076a1a462a9572fe037b8a69153d1b7a41b440cdcca5a2d7b4d224bca60c7184828eb519e77f2c98b4567f23251bd3d01d3ecbe70eaead160681053b4a733898d74206bdc25eb6fcec2a65d6a972c680e0aaaa1e8b1e3ff095978213d242c6af612a62dbb58425037cba5209588ccd3c11962ad47a9c4455b98a626f92264a0527a28bda7f47e804ccb393caa2590b957e5fe3527c0d5aa2ae7d931fbdd2ebad07cb69be0d5179eb6c1343b3bd4448cfbca6ffa1597678f0bf6e9d2f81f4d6e3a8a9d8c9686826c86415ca025dcd1fa1a5dcb3ca8df92b2ea76101c484dfb1fc58d35c1386a29e588a6c80538ddd18dc44fe4598627031ed1650789b3d0cc1233775e1d45e97504d33043cb721a6c210d6e4e6b70e4dd9ef000adf591e465e30adf27aaa4d8c255f4523f1dea00e9cf978687870e8b75f05ce4fa8dd6dd692e936dc2d48b410d3b626faf8ab013f7be8910da69ae37d1ad99136c15e0e8f4194942a24ccfd55544ef63e692f1d4e9b621b28fbe8efd22920983167daeca33e0734af9aeb4b77af4cb354cf9489676514198a47d8e6d614a76af5bceac2c32799ce43cc010fd421468f982bea4f56969953766f629e43cb2a0fbf3d095f98257a2b6e3ba76f73415d0d920adf9b21bc102fc53744f661d42a9de6feabe59b2e273733df75be8ac972651818e1a72260bff1098c06c572179f7c5b0c8e5e1c9040baa4dad473f96b71b25d9dc16ae2312683868ea048f85933d844b7f2fb685db40ca89f24231b14249a3872f313c14124ec1e505f14c508ba483e6a4e559c8ec0b3dd7ff0446d14e4fda415ff4031fea1e65de59e5322279112ac4f64664066c4b5bf5a08dc160b6b313496546b679eeb31315500d81504706ae14ba526009a84b7270d9f9ead65398278b6385cc136c69e3e431843439b9a75e8b44678fd38facd65c638a3b1245a78bbbc26b85473a5569c5e6e0d2499d1570203ed563540096bfff6208502b12f107894d767798b5fd5ad7389bf55a6a90733511bf5d6273f570626cbedaf5de00c5f905fc2dce53f0f90d67153492082255889a9ccffc83a1af2d45466e787cd3dbf5f7fc181c2024454c507381babcd8e9152a6590d6f3f5143845565fc9ccd10000000000080b16232a32",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 17,
+ "comment": "signature that takes 12 iteration(s)",
+ "msg": "1000000000000000000000000000000000000000000000000000000000000000",
+ "sig": "5fdae986af0e453c98062fd46d281750ab398c0d9be681f09d8a22793a5fbccaa0982761e89509ed0427f0ec73c8f9b4b905dd1703132646ec472f0908440c2e21e690e58ad56c3c4da022c2459c059e9a97709ff8327785011f0378c8e5c14e3130ebc43b2481b016a23ba76e61c2e0da8bef8b6424eafb1fcbe6c1a984ce767b0dc9c824ca1f9a5e8896734c3bb2e01b02bb18138ec550f343efb45030bbd2d034e859145fcab6cf42d48e8e6fbc3f9626dbfdd42044b86adf6dc6df412f15f51261373eddfa7ae848bfee57878380aae7d75612b0aec5d8e1f4f8809e14bc9b244fa50e5c345decf47c597d3bb0f5f2f0e6bfe3648bf7c4ff841d4861a3faf7cb09bdc97ffa37fe75fbb79784e858f34ecd2caff2ffec7bb53627f63bf4f423a290ac26439b722e859acd4fa61673deb275b50a309c9a1b07c7513d8718eadeead0703e5d4db41618dd23901d1abb77c6a728f5565c911199e056dff8c3c0a8ba7cdd05df179ac37292dd2597e38e17eb2619472cfd4181b2b4aa6bf649757010cc5e67121bdc70454d429a8b42850c1dff199567d700159abd3b485788ee01d71ee7ff163c4557f688fff928c5974f56cbb352ba8b3ad07b7ec3007dcd606b4ab84d42b004cd2204451d40198bbb023bbc9d3891d17080fd7d50e282a715fbe97f787a794d0efaa64db07c373c257b0770fa0fd8011fd15ae4edc1d4fc69187385634a48b7405e6c1a473c5640d5125c80b60fc5e48d86829625195a3fdcf6ed3eaea76a1577845d26244e1dc679fb0386d46851e80b130da1defc0c6797036dcc65ec7e0bb485d1f680cdebef97f2780d20d8d664a90b844e1fbe6e7126d15edfcfd37877f0c07d483287624b38000c5689e77fba19d1be415da83501494b0cfb15962243798f6f415206f77f3105f20e6dd73887e7ce26d06b968f3eca04b6a49ed9c31ae0561cd1418268b8405cac00dac88ba433b98480734bf981c4cd74192fdce032c41ba9836088b9e0acf8dfa97c085cc60ecc75f1f5b91738938c2a19764089ed9d81c315c1d91b7e3b1a6d3beb93893e31ce32f97e8c8b837b26e07b523cd857edaa268ede52e0b44f3e54ab37d45d53079cfc5a58a8c992d683a37e9dada046557adbee8838e10ef464262cb0f59029797b6943b7e6b9e0c7010dac5605d6d581a496780e6e2eac7b07b95abcb6d92acf293cf394140f0fb16302dcf94992438050e84a66c236f21b56a756ed0324977ace2196ff58ae2c8db667b0daa54a2d42a3920d5fb5463cb8d06a2ff730a9f533f7171ff470b8ada56521eeb0b5c150308450c6b3821a071fe079925f62320cadd8da8c180fc8a9daa2c8e17561b21b9fd4e221893ea6553a4e61c1fff9fe8ab25488ad1c0fc3521a4e236df4cf15480df5e2b75d67ae5743fa537fa06575e86117782f912cf14b9c67a461c34632fbef9b1328ac76a8dec3f442541e777241cb9eb39dcc009e87532cad63005e5e93a063a32012fa889b00e9df5a63fc6aa81e1cf8e4d967f8036b59b1341ac3502da9813bcd4401e516b716cc2b5ac04f5e57895e39965a3a022f408d40982b2f9e08324dfcd060130ee5f700946e09254932d85b6a28c7bcd5395936f08ca928325f0273e3c268883366a662ebc9a7f1bcdccd0acb6c454f79d67bad0347d85e5acb01bf3413b6dee73a208a40caa15d6208803e3f9cd708ec17497d7ad77eb3ce50353b5cb2b9ac447ef4d58a9e60837ca7724629f32dd894a3ffc3d1e7adc206b385b82ea0bb478f1ed7f675177787f92f1aecaaa2255ab5b48a4f60d2691ec774d3caf8fe5d5f2056f125d240bb82114cae0ce31e2f0fceed910fac6f7de9de4da88e8149b4b749979d37dfc3112e3ccab549be830aac9ae053d8474e1f248ff0b5e598731dd63cd62ce630b55933859137514e84ff5a4059c0410f564e477a1694ed2eaf3169ee8a9ba5069922129df8a94e4ffa278f4fbaf52a605aa76516938eca5be11142bb83087e6def74264e7e991c763e5191492035f7705bfdb17c22d4933fd2509dbd25840614baccee3bd3bd59a377484b55a09dc517fa298dc7f04a24304dc91002c000ae61bd5b75242c0680988d9e7e5c05f44aff949ea3addbc4fbc26a0ce3ca9f3229a4ebcdb6c754fe95748c2ec479b76e311273c23a1d3d4816de71a9bc26a74153c624cc449f068ebe2cb6cee7bb5e02ea4720a86a00a5e0883f4cc0a6d967596672646d439aef75fc13e0c4e0890ff68fd3a50efe3943548b446c2d2f89a2b16710f22cbaff9b1cb501675902362b0cb5f1ab9d09909952219eb933ca1e1dbf271a0fbe1fe40c928fb5d1fadb935b1fa84cd939310aa1d3c30deb64aa7cf9ffe7301bfe602ad3596e07e87f65e53b23fa5017880e70053f65aa7345b94829ee3db131813bcf76d0acbf69f988e88ca3f49cc4311ad327edd90e2a4b86910880f45c16c9ba8513fc72afdc4f4c272f052575b71e3de70f07161eda29c83bf83aef0fd46f11095cd4fcca33efd8cae8f8c2d0787112723cab9cac9ff9fa02bb45ecbc9879414151751bbbce8cad5c60405150e0819d076b699d9d9fb62505a6c104587302fba8fb17725e80e9732563411e576bba1a503b10ac97a41caddced4fa591ef6980aaebe3505df212201fd0d892d15bc08d6501df3a3263ff810dec62adce7262c07360d1de212b1684b239050a3c87acbc7025294124f86a8f35313a97ea373a701ff4187a7eb44e30c282c4b1c30702b442a606aaf3d5263716ff0fa7be107d0874581703f9ac04b6f8169872e94100ca1b11e44cea2bc63f51cc1822c65d6bafa8c639c8f32b4a60c928fd049282dad586e46cd622fc34f1fa5ff7a67d06a427fa22d05e485394344a1b41e8aca7c624306eb3a6c9ec319bc65d8f878b1badf3a4743ae1b39ae8f1ddba00bfebddd149f5b20836aeabee2c6710aa0b128fffca57783bef39e66db6df7b4a7d7fae067d3d65c63b020105437f448d644f4b0bbaeb0490ec5a337013b4ea5a16f82567ff2588070afdc6d0998ac6a11459ca7a8799dde3ec3411beccad252e897a360e1d4ce9e9e0a82c57c79a24abb99ed5190f27e43144f9fcf076becba38afc9640f9d18bb67f6d4b5652bd5393c8483ee348a2ab3431cc92dce30d0f069312a671fb283aba4e527c72781f59fb7f6d1704a3ff80d49fb53ece26f16a15ce40a5414475732384f8eefb51cd22b34b8e901c43eea8604354522c28031852da10e0acfe6901a3321a275f86f025459ddfe1d90c561bdb132ed4c22209e71728300a7f5ab0c84b7ced352ae3321462bd75f6976849448018db9c2241d2cfe684cb6c3678de2f1dc91a4b4b6c2572831d4b2036aa457476f8f19be70e405e2cce6e4e9b9e82be48e078216747dc6d63359debfd2fee14a0e8bc0de95a381272d3accd94617875e9c08162817d5294549584ebbe8dcb36d94a6cdce34e4f30c52541d425422ea0e2d1c00f9b381d021ecad3892a1541dd81a42a1eb8a7362b5a125651db02f1992efd6f9515f3f1ec66566f91c1876d159c61195383a4c5e4c89555fa026b5b3bcbcd34d8b6b0eb026cfdcb8cebe45884e499f7bd1f40f1e4a2144533f2d57e1eff0584805d5beb7d6ed7fe29e088379d1a7ee70805f0f8133d26156724d4ab6560d15f49053a1c8a8007a8eeab8f6c09265c4a545ddba9eabef6434b191d87570ad3c88485decce9cbf52a11895aeb82dadd9921522f368843fa7e246411cadf0fff4b236641cb516057f102e9875e9363bfbda62c5d40fccc935eadaad4da3723b7ba6cdae6cf88b3d14364b6d30b435627d7781aa1003bfc4c9fd145f6c6e82e58df863488d27e7b219949d554c09124c582591305a80964416a18f70b563a761ab713d4832a1780300c7ff01cc52be01a60ae53affd3cd4a0c19eaf60a077f792378be2d3c958108bc068760e1b920119b311b406a5c59658a9801c612140d9c8b15461701ae2ea1bf16ed9650d0a26b52dc59d927efcf8174a421409877064d17ae3bf17831e4759e3de408c616c9565eeb8cbf83729669fa7afb13e662961db2622136bfbc69f1a80a150a604c38bfde2c8de8eb5addb54825376d4f8b0935b6a1f34d2a82a29c8a725dab50649b796379d61e5382146d399df86de0fa51875baa1dd2b3b1490e34578dc9da393fdf26ebc36ea3c40b760e526e30280e05529ae6e5f9f70a41a6e36da9f9642ea74639a5631a6bb30f17f3403144d9b503d921917628a327a5422f79903a205f7dd33a34e93da5a553949e25c29f952e3b5f8fce39cd625c9d34c79d414f104a69532b4596bf7046c3c6115b4de3dded2bc270eb4963db75db38d73f2fc3719dee8730c12afa6cce1d867d7e949d7fb607e39bd2b09c1e80fce2fd76c41669ca73b9bae914f42a5a5903327059c7bda73ac88cdcde315d5de897fdc188b42ca521ad5d80e1a6a95c729f58e921fe2c258fecbe03858412cf0d4660c6fcb6c5b16be8342c970bb19390b7c393211ccaf35a680e1da855bff9c004b067780522c8f26770559af10a0fefbf887a4035c7456a368e3d9e50ba1423039767bdd6482e61a2e47829192b9131635608a8ba74a4f94959fa462aec7e6000000000000000000000000000000000000000000000005080f161c20",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 18,
+ "comment": "signature that takes 13 iteration(s)",
+ "msg": "1500000000000000000000000000000000000000000000000000000000000000",
+ "sig": "73bc2954da39fd7abb7ef32f531cb8144198e50cb52dc4ebc9dd5ec0edb90ba730716d93157995e37263b1456cf55882131ce6d537f10096dd8500d16166de80f5bda2f94463e8fa18e0b970871e4cdde1ce7d3e154d30643fd4a3740908fd8b1249dd3fc7da0a5ef591de4f308b44daf5018e17278267b56f7df5029a130c736f56283d50f97ea4d817eccc6008be603b19a70f1526e1d3a2b1d97a52402eada5f3c7898eb16fa2438b0e4ba9cd745b1c94f0a5c4d0be6ba5ba9f0186feb4f741260fa0f441f1839d3264150cff7792f5269bb2a82cc360e30a15f61b2568467d9c8d404784996dedbce426c71001748c691cc848e776023cbce13438aa0743b6ed57eb614bfa8fe6b199a53207c45ad762ba80efdfdd31595d7bb0da2d533aa65ab0ec3ced551a0b6ec2cc8a216944e670d7342cfa367542e86edc2086dd14de5c0ef8b38d677379fa986548bfd69e84bd892af28b4028687ad8c94f55ed56b50d611ba6de863c201b16b0b9de779ea393be40a79b6405bcd3f1f8685018c8fa61280289a948831ef7963f3d30f3570855e58873b9f9f02fd344f8362ef65f723fa0c5b8d628264e74cd4fea73ac6105be0713e80d52c5bf55c21c1f502d73ad0afa6144b6bdc227570b85b47143580c736fe4f2b201ec4f4f78efc3d4afb2a4d81c8184fe36011f7fbf197335ce1596a0ab39f8cabc02bc77ffc005665dbfa356b43ce805fe0dd2c24a9e6c363cf707ead215ae245963c5684ba85b55118d6e8e55c040012158645aa0d0004c184f826b7a43a2ce81a3bfc6c4ea5651e8dfd10fbb22b371d03e7dfbb3aa23a9e604d8c452a3e065afc05361062db3acd697e52614baf0afa010b7cce9e2c36d8e41020951154695bb13bcdbfac5eed9bcc8f0701ec5bd6393d83f828d3c85a591bfec897203109c57b87335c48ebe20b8c963ecd0d973c2cce02676fbcc38febf292616b05226c523a4bb6de9222de497caddef9e5bc65fc084e152f299538479f994dc79e19c806f0681ce43fded54c634427ca1f14b691aaa1e7294741ab9f86c15a68cfea5f5afa27e068564353ec51a39dc220ec0636a455604671d2d11e4de86b5d8b766b872563ea6d7a507a5c82a1babc6dee32af466d560cb9c9835febb4aa2d07d7205cec32209df17475eb635861e595b1f4cefbd9540aab01e1db317fd0ab6cf56a03f12688257028dcc7f344a87ab0f16c2ceb3a7c3cfab665c92a4b03a423eb158ad7d3a8958beaa417b4fc71948ece95058b56b9fadc25e9f3acda7020cfe201c1a584fcb2ef38c9b524941472d4651d828b17e7dfd31f022f2430bcadf48414aaeb49c21e52f40d5feb0e9216be4031c35f4b8cc6ade2ef156113fe63827179b0e6f30465111c7749b2e99adbd5e451f121f6832a4121abd9510a752a7a4a9893942d04abf4164346f4fd32a01ab7baeace93f678333c4f27889facecbf4f41ab234fe2b24c0de9cd58ddc969d53b5c7aa6ffe35e58dcbaccdfe9ffafee5b3f1d5222e6187957a6c653751b631f439b691d5f2cf91808f65de831e4f076c37b48fd9f96a09144ecd06510e3093429b37abf729e09e1fdc8dffade760a584cb6ee668a72d4619f421d5ccd663d379e6f143088c143e29f22ae9d0fb993e8447cf44015c36326e0efe6f16c547c3a212d1dfaefe654dffe6b231c5c1d8b3288e4ab38880b324249087822a32eea1ba798d2e7d204ea86a990c7974a37df998bbd7bc99d799458b231b4e45cb37dae19b46a95f597257e75df509b2f3a7d7e524134dc71eaa13ae8d585fa7cd45a6ca91ea96085e0092035ed9ee335fa047f4671d744a7b559b52a738f0d20ce5ca76127ab9d549b869a3eb6b66c57c1d317f68f3f6768a7eefbbc9ac06b4c45a6de768aa3b1cfa9aa19b792c23054ab84917628f94ab3dabef0d6445ebe8a374c4157408f1f84c33163a75b8f4646637dba50dc09846f1faf64589cfd1e5124f6e70770732df2bfd1102197d9a7f45215253cd9d05b7eef329c36a6fee9f3f38050658112b48c22c5561842ca24803b96d58fe1f627c2943ab1d9366d2abcceec4c6e55fb044e5a401d032f04f7ef2e49fb89f67da3a619ffe5702227a7ab06970f5079549dbf6bd4416722788805d4682374c982577b1977680e1d0a6af0e06ffe4103587b41f650a85db8eac9a009dac1f9f7589271f6fadf60c98f669f70989a913123f2ded18b2966abd257590ebae4225cc436cdea6430a3167f9f3f42f5cb135e11cf31b8e2e386ab51b6fddcb0e30aa3f2d8cb12373aeb8a364e3123fff93efe83fa89a44e97ccf4f9b5a107c1968436d8a08647acc88878cb7438b7f5545f59b2cb79e20ab8d4750243c6898859ee1d9d350b686aed01b2a6fceeb62cf9f824b6e76d57cb6f16566c4cac2aa17cdc8b72a2223c2f92bec38b0f481631d0096b2ae449370318bdd66e196537a24f0ea33aab87ac5c94bd0645824778cc329e76d5b38482d126a335573cbc81c895d225c3b724fe901ba5ee9052655ad9c059412d4cc25e00444e860f683558fc0cadcb33800e67c87b93dfe9adeca9aac911391632ffcee4a3ec48dcf03842498f674a6a8f689f058d825e931673d520700e284d3a26f2e5a3c3f2fcfee3d49f09775514b837dc35db8ea09e1db53d548ab580c4049e16327b5b0638a9f6e3513fc393122c9d9156ec532d462788a649f79bebfa626e38e261fb839f560f5276b36e462957674fee0094354dbb6275d09d08489dbe1fba5936d1801acd87dd89ad608d33f28a65d066f642117915b9acb32fc7459e15180e8ccc579ab2234cb64c6f4563f5a696eac76f158575276f773e0138545b904feef9cb44e1a13d3004245a33b476ad3e8170929e5e6adc68a12367d090091f7bca5493f7a448e88eb4f13cffd7f648ce368b092416f3b577e16512bb54dcd06e0bef24ed69396039741d37ff96aa0f3b7dad92fe7c67d32ec3c5d936c410329445c4126e027b1691f9964e39910ab4d1a6ec84fecd2934ea9e0f74f371ea279d50f70afb352064804d30fea26e4ecbea3eb6f96b7b4324913c71a2db4bd4a8f8459408eee1889f8ff15cbe14343403ffbba1d95c8b050f050e3bce3f394ed35bad88ce9e1235b3dfccfa478f730ca162355f1df0bb4d1205c8920b5b090851e9798487e3a858e8ae1bfcdd543209b1f8713fd1a80f6f3c8622c10315c1bf21c42d456667e64b1668f96455cd1281e3d76d3a52149621ec4beb651e245b8bf1f3f3fa770368fc83eae60eceb4f4d5e2b70e09a3015cb3dd2be4b307fb5b02db05a9225b6c21047b422c65ee788ccba14c86564f7fd6889a09a258e03ce3d802d19b33def3d223bd427a7cb4d9fd6814413e290a16bdda7acb39c477cbccbbad8c664aba0c97622e65e04c17cdcf51272eb8cf906ee15cd7ecded36bc66139800a4a7864401fe328f8df0505b1e13bf3bbad8b4a344a292d55a17019393e4f0105be7722837624b84a183ddb9278e9121b2ffcacc08456646653df5d5b88e77f8c61e341a869548ae1b286ad8b85ccb763e3d10da9c05e895fd49ef02ebbb60621dde417678ce965153284053d0fe38da260effb844a62956d02b1ec6e5c8ea661ac8775a95afa1861cec82c396a7ce98e5cef55429e3a4d239092f090ba10daa78811e59e9c094d4bd805ab89b5fefbc6cde6fdcee6f21b19c979e237a273e24d9db1d2a7aa6cb0443b5d8fdede41f5203442e658c6f9e63383407a4d67680b6f486254c597428f613e9478cd2b6e765029fb73ab72add5928752e558506e6ca46a3ae1abd4d2aa5f5d7b6556d07440b09166b0d93d5a939e190df2341415a132bbc0b742d3acae79d507628e1da15ae962ba93db1ab75e1bd6db1e99264e68db450bc6d242fa131b05fb73c050e6996c4c2f2ff95a372f12a9d22cd85eaa538db6e7096b765d730f7a35241935fcbe23508b18f5e61789af328cc00ba9f2eb9e004afb253317ac9b0ca2249f63040ce4ac99905508a6d349df6e96c6e675bd3acb3103c611aaead2046c4499fcdb17783bdddeb3c2c75553d338b877f6da0e9d12452943cf6040988fd036fd76deb09ebd8d24e464cad1b6f8d05ad9eab9f18c15b1d6a1e33437e874beded7ef0ca0e27f15229b6746cab74d77e334db74c013e45199e6b0c33e6da136c2004cdef5754c5b44d67085d9cd732bceb1cf20551fa0f183b1149caf1e39d88d6a5e0eebad539c3ec63ae9b2017d484866cbf6a9f5029e2cecc71954fe11c0fee7b1b36f8d18a0f138e54d45aff4f98aa922170a5d3f81d80121a29e6b2c8605214e6a807071675855099f305c9b0041caa826bbfbb216abf05339cc96cca1b143ec278ad3a1704653fa273d663f09addaa860cea934821e7f6d0d005ef1e8dcb62649907994c682481923300baafcb997150eddc0e3c1ecb6d911f51979e04cce3d1afcc40ad70eb0f3051189bafe36275bc313b5585126acdc44ba14a7cf6864a37a407069a266c252c121475d5132492be2120a43c80112360c847eb128b8b4b569153ef6205b6f24d0b5b641899b7244f0463324167071c91bb0f5f70777c8b92aac9cafa13181dbfc8cafa2485a9b612379bc72ebf2d3b59656980d200000000000000000000000000000000000000000b12161a1c23",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 19,
+ "comment": "signature that takes 14 iteration(s)",
+ "msg": "8e00000000000000000000000000000000000000000000000000000000000000",
+ "sig": "f35a6312f8a053655499f4476cecf4324dce61e0e98a6fddfeb391b714201119964d2891579c9ca0cb74b2850623808d9c2bf5cf38bfd051ec4acc1ae827b68383622793527e0eb3fa7be83c1f72b7abdd0073f7ba4244b7740aeb5fb66433847f3c8882811421a86a55833b05c1c2f24949ee29332f5ca5e9fe97daefc85ff6e9636b9d188c2d172c3f9644df60208fb298ac2a08490bb611828f1f5cc93c687b8a6f7441a8995a3cc50e894a11e9fc7f6dbd4d47cb087f7f3942a92ee10899d56a65d27eea66ccedd9a7722bdae4aec8fa6eb0b45be84dbd4c68560fde71d04fca514e10bcd733de9b3f99454b13cea8453e2c9cc5f29c709f2c131c972dfa2f47983d04d997ff217bab57d250da438b13ed640f3ea5017f78a394f2637bc708e0e7db2e5eefb18bb1c68d4ab59643135d08de302f9575548a2239bcc385849e1cec32765748940a011daa3f208da13ff97453e4d08fb668caa1a282530a0ff8e0d9cac67235be0dfc06d0fd5eb0ad56746191a84fd5ed68aebfb3f3d5fc2b3a391cb62958c471cf9533609bd564129aa6479f90c2df8ab3d5bbc51d9ae862eaef0e289c81fe4988ec757170289f5beeaf851888f1bb9b349d6cabebb5dd3d7fcc25c9e4dcca721f0e395918a69496c1e578662e3a42bab10070ce1c01f61cbbcd1ea2fe7dc18c318d649bb663fd7b6022cee490de54d309b0be08121765082bb5b634415cd7d16cd11e69f12d2bb927529554cc6cd2ea48612e93f59ab9fed4aa2a72fb78a7b73c39c7bb1c2bc3574fc7e2c209b64ae2c2e50781ff24ae6761e05e65f670f7d069072b6d73a479969b0ac345a5f1a214929e6b783d542753c9075bfb97dc72af2dd269a0e0a739430b04f0d6988206974d747df8d07abe115d2db2670fd66c2527f288077e49fcf1dc627464a963f031f438861bfbec5e21d973a5d7bb0ab20bc52ca3eea5c9f6fce2339e0a65170f5f7fe8c8d0fccbb1d5b8c5a5f7660d782406e18f75571e43cafd66cce56474b6d933edf42b2f01408d919df23334f5caf47a96b68e845f3b4e4e110e3614cd477ded26f1bf7c92f6ce93291ee809e61d48e824ac80317ce49224b7319d8e4e3c335fa9788f1aac31a3fbde6590c22216ee17d27e387805082dd3259ff68c162339c57404f291a7dbdf12f220575335e189d2c9536f412674e918d4e4d5f1761453d6a080b766db3fa486f961c111b1e661f28f3eacc0cb8e21f34fb143873113ad70331e2a915f0fafe29c0567877a8e947e13e7e7c677af3fb1637805c37877f994ea93cf6e2cac41817140b4721ff48e9a569bd285a821f5aa389f6e5b08dc2be22da23a31610f7f37dbcfef33a3c85b2975727711eb0b54004f5fa0035416018935add492f2cdc00cd367dfe6b4d16829755dd4ba7e5f25151bb9f02b31c05e26fade8b32e7c9569272887c8f32975fecd9c725ad92ee08a819e2f473c800d10c47798e921a69372b6770e664224f4672265d0b659680b0cc83f0724ff727f723d7022b966f67ad5242f312c5aa832deeb9a721957edc71d3cff4b19023462c9114c7341aab6d6f22bfa926128e98cd79c2380fa9844374e67b7317da9478add4579ded5fac480ddca2b9e19c4679447324286d7dee578e7c0b1358f2754c1840843189b45a8c69702f6be6afe95d4739f205638ea9d2059587724807d8f5033e9106791df3e1056b3b9d8972afc72746519f453c3b51a754cac0713d440c094f4b707cb07fbece5eead8a7c82fa6949b6289ee41e1da5b801924c24aa85b30c95c7a074f464c320c836df0da10898c912ba1b3b3bedcb64fa1bfe78477f33f5d5058e306c3ad6bde51908e9ca8dd5f4663185b1ac46cf6ae98059aae95fa0967d775f915256dfb90f80723c59c1d86ec4c700ba795ac0c8dbc87d9616602d7d67bd0b157fa9b1040c40c71e2c2b74d673ef26345c825baf86dc8ae8307651a14a06a341ed4a0d570b77c297c012740b2d678b6963ae1058e7b514da045867c42e04638b9cb361bc35770112492bc457ca1baf1811a8aceb3f622a770bd1958b5312201d9c2b228763e8eb0351a1f6a70bf2b8a746df2a4a354800faf6dd7299d4c70d0c55560f20a71b896553c731cdd65e1a8d83145f8c89fe587a299dabd29050fbfbc7dedad1aa67b96970403983d76406c04eb72dc8a77f4af4dcbd640e82e12628898345216aa350b8ca67136e4271bbd33670554dcec8d3e9e3f05424ef83cd7003454a9647f864ea143438519b0478230b794f7635a960ecd17565e85f2163061ad947bef93399f5f0977dca1bdb4999459f529fd7eb97e426978c10c20d8e6fe9f20aa908a2f734d88e0ad68f804e7698e69d065caac268e73025d269d06775047c028e1030d163730afd474b47f2782bc9d21af573080daeeaab9e39761beb659a0d1727f91ac9e28b1b332130962ade9a5c30376b23f3874e1dd9536d1c4db6dcff16224f1c6a98d4705e74a1a75ffaef200cedd73a79552783bb3757794c30c7ea0bdcb8b504212d7218253f777250369c8a65b321ff719d3918ad54eb1e5fb9dbb5b0a4925200f8edd784d1e5d5ddcfb20ebf6565e1125a8a3c3216ef32a2df02df47d38b90a45edcd940095d8a672bfbe505304cbe438f74437a34cf43ba2f6627c56f3f5b7a818c7dc754424eccf2446b0ddc03bac858ec34c1aa484738bc8bb6078adca3b2898cdd117846666410c490b5e6ead1e1fe3c231bb223a245a817d864a70743dcd3912d7011d70eeeb53ac1c0463359fc87a3cb179c7313cbda432b85374568db7610b97250f56a82cfe6258b4a68ac61e9dc281d5b887db4573b9f7a01503f243403e3e119f149ee95824f8370c64671b2e751b2c211c10c93ebd7fc8847e1d4441b0fd603ac7d8f6dc76e56351a26f8e9894f5370abc816d182d7a5f079827b095152e7886f087a9aaa5498dac8208b53133248f493fda96889a17ed9629a7c4b9e103ab59662a1347e0593779ece0fd00991cc9e83990e8c673573017329616cc03e90353a2eaf89af0b98731b5cbdff28b9e0af4478b631d6fb3748677391c3dcd342a80958b5e3cdd8460f4a3ef7786ae706991569bed078bd2c7a8902b1692a844f704f83477c456499bf6f743a12ef9cb1b560d060c0f864c8d84d3fa0162e1f128e19e16eaf230351d3a40999017cbdfd182037977a3ea8847877a1652abde40eee28bd9890d3e29bf626a1c7c5a7b02405e84be97fc9f3702d65854425c57dd85e7a680bfb16703d0d5c13a76696f15e802f2f0c757caedaf0844618520179d24d3f06273b87c9aa3cdfcf8ad05877387468d937904e2068522309518dca63a51c4063872b0b2089271b96dc1c62aca9423a9323295f2cdbf1d68e7600406abe86d54cdd1918ff3d763245da9a6ba4ac791e613ed73ee50aaa6744a2427aab021e2ef24f953042f6429fc451e39e796f6c7d64b3c40739b007699fed1c057f75d2d4659396d20f09509413eadffe78c75cef3e9eb65a12e332edb9e3b2e8e64795fac153a9f5bc30a7e3d35d65bee29cdda5afd93dcf7f5f42e4a448add1568d199ffb5774c3383cf8719bab694c22e5e3986dac4a679f741da198a228bbf4766fc7622ce5f517bdb900068c0b9b32cf4c563dea50bbe7025fb0e436ea86b0a8c2f58578d48f15eded8d19444906dedc2b766c376e6d0dfc90d761799d02afcaedbe35c9a30b3d302e4463186d9cb1867de8122009d52ff8fa8549451b438a379052ac63770cb04c8a80ab894efe019f414b48bc9460b33fa51978fdefa2f2701a440dfce6a50d92ac7df6b915314f76d7d79636877dda24ce3356ce78de29fe40f2ae4104712be865b17e9156998ae7bbe937556cb05cb155a600d303ef8df20940563b583bad366a0ec1ec023aa685eace86a495e5bd63d83b7d68039d18a83ce1ba5eb78f75242822d06601fc082518f59990e12b486a1d64112a80b80c6b0f4f3d5efb82bacf1b48857d06c305bf6f6eae815a39ca4753280412e340095d53379a0288cc977ba069962241bbcaf288468b9abd23118d3eeadbf706468e41199e57e9839b7c0bc1763d1b6a7a42187723373ddf6c9aa70765b0363dd4d5e70c9a9cb682b672f95dba7e156ac11cb3c526411b856152d124184227c53e45141ed12891d3b071a453b5cacb6bc07daa9404efcdacd33d7381b95ded01a2e54a7bbaab38096c08cdd795378ffbc055093e0602d8cc872f1a0e20e1577b0459953bdbe606a0147462c3e790e093c0110833f10e71226c1717cda055ddd82431ccdd7309648b5799384e4d776ce800ce7822cba4c2ef34045149e619cddd634f45fbfdca78df367d5f8c50392767b972ba01fa69b4907f1a610222943075ee385382652cbd5cae573f7edd8bb7f5f79e80eeb85669791f444ad3d5a9754f1e6520d27f563341ec0646f8395ee03e89b091a7e8bc5265b9f06040cccdca852e1b25cbc31c2a5b65b86d5ee855f00c7561c99cc8a622e8a4e7e2d238db3f48201dfbc381ce1ab55e7d6d0a1c5c5c7de5b095161b90a2696907662e3819aeb5a1198e21b2b760c994549747c9fbbe3152c3e3f56a0b82c2e4464798191d0e5206c9295b0014e606677aacdce3d717fb800000000000000000000000000000000060d161b2327",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 20,
+ "comment": "signature that takes 15 iteration(s)",
+ "msg": "dd00000000000000000000000000000000000000000000000000000000000000",
+ "sig": "191fc745712fc8a225adb8de855d779eef8cae43fe75418ea2b02611b979d39499c190bd59c31000eea61c0071a6c765f17f03310002524c8d1ba8df6c259405104df0a435658b488a3aa81c82d9ed06ab0886d456d7c021129f278edaf04477e9b27b2eb35d211691b43e36e65c823070a99e89e0000af939be62f1d95e94a168d953ae5d0933a39d223ab02631932d0006240fa5d3ef265519a5cec6bc796f932345f61e0e63dadf53461a1e444aeb7ff96b32cfa9c8ea4896ca5b5c58afa77e43ab34b011e6a93f9bbcb8dd8805ae7351cae0a0ca95756742077be679da919436faf4e386329000916e206545b18011221f25b8bbe71103aab949769d2add6bfb4082cce81a95b66dce001ede20fa6aac7b4c853df8205a432bf5bb0ffd3dae68e4eb195dc408450748143c8f5e6459a80a1f26b1b5b148d5394158425f8442a0d9faaf05a5ed8df9afa8bb97f499a8454615b626098fb3daa4c4ddcaad2709afebb8d6e1eb5bbe923ce5a4c41b3dc1568f4e8634455de6040cd3653ce5f3d63cd54834ffdf87e72e2c51cd2416041abbb51398e1eda1e22ca4e7b4bcd72eedde8581cbfe2b2b821918a338bf02a5771286ec7c992ad7e8c1f46dffbeb101e939f4b918d9a7b86fcf9940c12f0d2577e57f2702a263f177ab0467bfeb3384647c179f88ce508eb0173bfb6af85fb662b0861ee8051fa4c1820266f8aa6bd6f5c6dfdfe31f15a86df16669815df1af36c2c03d10a8364f488dfe3c266d012a69e538292d2799254da27d9ab3dd900185d00ba45110071ce6132fd2fbd6c129977bd68a44bbe3d0d90b70c5c4d7bf3ffa9f50400168b4a2f28c572b020c175562dcc3160df4a71e77854d555cb8d40f7e773e532934dc896078b269b719de189daaa17187e506d7c2cf06d7b7f4d7ebaa1e1b8f01be3e5fb514c4d3c23736b059f7f6b2a071a20debbc7aba923e040673f7d63a6ac223e86a85e665a941b1067f5a5b75d5a2d4622f30f61f813c9790d0bb62cba7c982d34dc6041f57f204df50b9774dc7300834f53f19d303479bd5df42b378dc28bdcbb81f8d2948b2eed172e57bdbc44d688dadbc2e30609e25c4ea4783ce53d4e8ab6ce921d43ec8e9ee82acfde0cb40789a50a9c696e9711e407e0a2383b252fd25f5d2b5456b4e4674a579f1c1c323d3abc7f1c14356c7dabf22d85ed4a9b5e75d40a5c7fb2912f4ec1e8ee6da96f352fe41c41741f312ffcfb079de51437467a4133c274dd539399b40e42d0805143fa8c7fa9743fca370059167f6f3346fc302f5b6dcb060e80b53eacc6bff176c739a6536f6b1bb4168852c68b57b787c330126ad0fb0414433ce263e2e46b27680ad072ac36d653cb95b0f0f6386c9f9db8285c3e06c38de485cc74b4610fb99714029cde977d9951c91803e9a6d864cf42215a4917aa69ead9509ce0086531d32cdc8cea5e0008bcfa709d18d0de3df22f50e87f59b7a512f3579c46de310dfc8cf95a7f940bdf86b8ce744433fdf50b5a9ca6ac87a7a7d1c7a2533c1c09790506f2cf6f8ff395d2122db9021a746411abedf1b991a0bd6071ced9135cf4319a45c564721945fdad887099efdcd1fcae03f4df332e0c7fbcf04fc66a286589ceb75c6a8f4dd2c16f67caedbe476ed4c57797078454fa66bd532494b83c03e2e5eba44b7d1f51d3d4b93b0cfddb290f05a24038871c766a4ac48cd041dc66a731b4ffb851a7648927f368e92ad45a369a4c9093f27476fc6e878ca8a9b0a915d88a3f55c7e712927ff961fde415e0b99bea5241e80c8eebbec3892ee13a4ad4d77deede0244f45f7c2f50949fb6224209de50d33047fdd60cc3610aa562adfd77e11057fc592e83bc2fc698ed156c57bfce86e444203b158948a0fd266f3167e46a061d05f5640fcc6cb7210cc51e8568e589fc950aa20daf7ddb4d46f5779b20d0d46890761132e23757535b37a009f078a09ed3ff17214574518eb1d03feb0a531f2fb59a44c96c27b834ded68470296be1ba9d4b1468d8e3c5daab19c97d388342e3c91ec82f7f9b50373add853b242b9274c8e7d59b4e84826144cdce31cc8a2d42052bc2723d1cfd01425d7cbf0a72bdc64e07e9f50410c0d84e128b4cd71f4c8a318da81567f320151a82d7b78d4369fdb6cb33a9dfc74394fea9b6e1b32bb4f2ba5fbf6bddf8ce0c93cf18debefde8057e0fe2135240021c647b48bb197f3f205621bf34e0bb7477d903d01e0814774e1e3868f30bb090f67dbdb786baebf443ae31e517c3e42f18a1651efeea26131e763cc3190cc444f8d9675445dd52746bad7b80854f9c4a5836167ecc0a4c1aa65a915de8eb20ff6dee1b3005cc2cb5cb94fb12f64bc010cc382b068ac9dc3cb78e8eaad7bfbae4c8527c44083dcccfa2916fc54814b3d6f37033dcd7c8d56efbfc358af36d8c39eb725d09e74be2cd280ad85431017a50a8445306f6a473da9edd363b7111946dcd03e8cc79c030c6819aea4927f1975fb991882ae05421202024f1c9373ddd32d66f30c3933e5c209af4cddc4b485ce2474a7d49e3375867ef0c6ac721a643d578a44f33b0474c7ec0d734d7021fa5a0fded8b3c2cb03d451b4084e5ce0ef62330880e97234dcfcf4bb98902602aac8500bc367675018b840a0f4859c89e37ba7eba8583ddb60e08f2bf0e2cc60fe110d51c07036133c40cd98b8c9e877ed386b87d114449986497aaa3043cd8caa74277b0abaa6efe6b837cb873243c912a708d3e5de41295574d361a6fb39fd90664537ef8a13cc7ea3ff2f42c04c5b9593d6e34f5759f3b8a4d855aaa6372f7554a8ca58526e80ee5d405c265547c6a6de5e534e058aed9bc41f3a34477e093888b1630e6e3d71a79879c7563705d9ab7cbbe296c56efb9071aad4972f3519e096cee67107f47d32cfb3f484d5fcba19206d108ae66c6c62702ab3e0a3bbe70755b97d1ecae411710e84ad22912daf8a86dc1f3835c556b8d6fe83888846ba8b230a5f41ebb2684363220f2b84eb969878e764674b0b8ad64856af7c65513493397562a65d635cfa8290a037112650810d1e94591e69a7bbdd1f31528d866a9033e8e02a08ed36abddaf1cc74076e7e449fb08a90e247a9dfe7070dba8a929098a3ce1843f633466a2634b892d241af0f51ecc0f5effad44f7c7706b25a7e85636a1c67ea858414bb2e71cbb519e53703132206cb79f6ff3db39a90300fca172a283e5ac43f67d8a8bb9efaee9c541fa4086cdcf727ba0820485857118a963f6c2606cac4d292f1e4364d3389b03fb817974a323240bf986d723cb7fcdcd84bc7d4bfb37d3d94cb0818b569e92cb582e8d4a6deea11cbfcb3a93af11b9c59b71b3afe3f96d4e1550d2bcb082c89e8edef437a51c719d2b81d6ee77b5922c9da992afbed3de1ff76b7fca4e5f9e6afb6f175053e4fecfdb4696181cac8d040134b9d2248b9035cb9e2819711983d7797abf2d826a893c9ec78128a551a4f02cf1b9f5a6e1699a2f6abaa499f80709f42c0ec89deb8c828b35142f49fd0ac247e09fc5dc826b20ec840ebc858b8a265561cf9f616862f02f7cce26f22dc285646c1a09f7777179104d1c12c5f6624c3a7639c18c9ca58963f6db0c36697a542451e7a9334fdef9e2853c175d0ca93ee009d408a9dc9e0830b620f1adf11c3b1351b762d8dce5d9bc71c108cd154a879f277e8fb5fac3a6e7e538edf2545e09c2aa3737fab0223ee9ec65ca5d8c11b9e1a21c540d22fb2159f1a0158c6697616df55bddc37a516438b718261e700485e7a3a62e3b0d4e97b41f2b7e834acda632b8e9fda46397dbd75ff3761c9fdc2899499bdd9dd0f1df91b113e90c1765e27432b4e70270e380f6fbe4f8759e8aab00c7ec6137ef8378bd8f512e7217784f87b6692f1837e75825c0718bb8db0c60f82ad883aa51c70e68f4d37a2e5e8655ab792b46e1243cbd112a29573af7733eee36788f6e4d7b966a68a3874d0f6559b441d3bb11a8e1b4e1859ca11005c447e1d7aaa9f6fd6e0f177c1bd0d15d05312524edd18fc2e233698d35a0f8fe70d4fd43e3855cb10f0d9101e37f3d1317c9d7d78a57a15b736f759d8eddcf1ca94e00282db8631f8bf2d2a49535ba858429748df9b8dc592b9545fababe496bed4bb525752cd5e338c6e666f8a3961df74c29b8221d720a1bda05fdf01f92d32b3ed9ce8c3fa70f21ef30132cdc30bd2ec9c5aeb73bf712293c545744734f180b327a08a6b4749273f6d853429dceda4471533952ed47b28f78ccc91ffea3eb0dc56192355f64d36dd001e822cfbac8ce9e2bc98d9a56567d77064e60713a0e7d676b17be0d05cd181d0a9e101560d4d60153ac59acdc5cb8bb3550c27a39b33c399aa54b488272903f97a4e3a9842b30de82a18eadb3cd897d4bc92a23c576d780a83829378e15248c027d1eb76bac3f1f7f0413cb7a5492a9c44a3ee78d42293483983a7d1e90fbbe277411992c034b649c8d63054a02b17d97398a87fbeed698f0e890c479b2468ced6ab23a986ad6c41ac712b137afa93df37fa8080564cbf67bba235914d7a8f832fbacb7f3d5ffe2097f032e32585a76a9aae325a5cb121619344a6466696ecbd11d656d9397b4e2142f35580a22292f3a3d46494db1bbcbcc000000000000000000080b161d212e",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 21,
+ "comment": "signature that takes 16 iteration(s)",
+ "msg": "6c00000000000000000000000000000000000000000000000000000000000000",
+ "sig": "3e41b01c01bf6603b6d0eef00cf02bf550767797e381cb6530affadd09100fc963e864c42e24059a35b54421dee314dd6ec4dff8c13e761061160673d1a94008b1131aaf1cff6cee99fdcc7c79991723d46cbbd3d9e891972c9d5f52f20bbb11c54e5ecbf557332c25c9b54179e6064eed210479dc6446707f5204aeaad9db2f8f21ed5f602965bd137982ab5132d9f24caeae6bbff8ce95a4ed47f63d7d258fe1760d8e8a7e4a12db37d3ad11131605d2be5eedc250feba39574bce461ba88a0ef59cc7ac109b76c83026afe2f2f3656f1ab477af4b49eefd56c9a00ce804427d78a5867ec497f07a5c488762c8883b839a584ef014d91e909724ecf77fefb2fa3c68b548deae9b3efccf3eebf62a5bd76f966f7489a71d85abed7c06bef1400db6f188aa57278a874cdd8613b64334c59416d1b64b121fd2df20bbaad74c8136219086fee3400f6ee37ad03fef16a9bb7579683ff421e046f9cd407b61e9a8aed130c60596de5be4ae7fa50667db07505af533bd199c12128c03a7d740c0ecca1aa7f33dcc60009cff2b6339bfa041fa82032eed9b2021037fcfb00c53c096f608fc19fcfe5fd0625c3bae39d1ed3067f3ac10344eba67441919cfff24c90bab23ba36e2c835ca1059d762108698cfcec610e711513060845c189c507e34a3208fff884c8825c4ab3befe08f36e378503612f926fcb99949d9a2cea0b2fe59542e69f1c8f99603d10c02df15ebc4193ef22cd45303d24ae70d93417e87959e209ae8ae6618d2007c281ea8fa5e73be5ac16aae20f4b037df559835b25a80502543709916bf1f20bcca93497472adf33b43cba42edfacb51d3294b476db006cdb534b0e0659a90a26a9ec68b3b335d461a613e2f03e94aef417983af6707a543ac99cccc341b540886892e209f333d4426f6dc83210d602d357ba70942506bf391c747a86202ffea712e7f0448105cb61310dd1fbf6332ba0d6e27e3ef22cfcaa5834df1b7f5e8eff50b4aa7a3889a0dde43d1b09246aeca8bab043044f7daf2f14a61b7fb71ac24c804c07619f31b94fba83a586a9be34706386683e5e3965ff4c242e524bd4745eecf30db2865db5f217c4f9dfe78584895d4214abb2b7084d7bf64363dda987987e0da8cfed427c20e83bda6550978d35e995368e6638c055a971e7b8460f77bf59021f3d3cc4edf36a44ff18b618d0b854c5c3cd1c8bf1006999c99def36fa878ce03bcb01bc48e1b5cbd975c7afb9d3029317e4df17031d97315027dfce18dfd16ab5012eb0a24876145c0e2262627582884b18619b384ace8fcaf35dbed5a95c38096aa006a94ff6b88fb7d800574feae49a7c9a8b29c36ead729fb194770e5202c5eec7071541090c0315493547da789b15f2fb28ade9354e0b0952c75541245dd0d82e0cd553911f2f844daa2af5e34dfd2f886559b69f038e41dff53cdefba8663cd4c3b270e41ad01cd9c69d84117729d51bf9c0b8249a48a00ee7662fe0f45e3f522b0e97547c6d382c205c47a2711d20cb8a6d18ed6a227c49a2fe261e9cd5427acb8f8b09477791cbb13c161892891aec718a2089181dda7c8f8bf7774ce109d8aa4bbdc6f6451ed2eed41561d7508fdc123fc7018b67585f5f7cee14645dadb2fb1b5d6de80cd5c5900372400164532f1186b02cccf8066dad549b3949714975cb92edf3f98df302ac01e5f7ee254ef0d76f3a5afabf805e81d95afcfd39044ae1fcbedadb35e737a7277dd31f9cb5c68f0306495b5981efaf676da2d28dfba12fd87625e14a6757e3ab313586c68dc8ba7ef1e90c521fd13e980fb973210ac36ff5c223cc258241ed45138b7b8044fb63e8899faa15dad544f77955c9dd39ee11545a10e613f09e01efecd048b9b61c9f89e10acf59c4fe10e17f276c0d72aeac60971673ae1b13ad5d6ec116dd92df3e0d6cd79c71893b812d1ebcb6d2e32d3044dd0815c4aef995486eb6a2262d5ade9f975ba176bb3be9ee4a0bb2b9b0dfcd679f3772db9c7e5219ea538f1bf4036edcc9e52623c9b209e092524d023dd200308217b7ad3df4aa312ee8d503fbdf5bdcc6578f32f4bd292f5e7f0751d6e18f5500ae5013291941f20355003731d764e973c17a7120daa0a790e5362dc13ba377aefdb1e2228ae1e2bce9bbb66661f016fd184973f1b156bb2739bf4aa6cae8b935273f8e821de354a85a21ac92b08b5b384e4889ce5adadec098a2efd960e407f6c1c5cb51776b49cba25454633b0d804dffa9adaa22a62475feca711f510dba1b927452948875c23fe50eb04af36960ea8f322992d48cc136b2cf44c4fbc45e84bfe347a1136e11efdc4ec4125ffc4feb8a7c2a832e29de612ec28ebb59c3d82d45323fc35b1a0136fb18aed7e761fcae68944f6bbd63b5c66621205c525d0c409d7472c263e8e1b556aab713924c44000e347f743ab9768c46cbb654d699bb0892f3461d5a8dab4aed8d1f0816fecd297a09d2ea3d578b74356709c5c019e0c6eb44cb9185b96e78193fe5f3c19437057ea356d8f9af450f5bd9c230fac20efb37341809228116dc5676f43cbb970fa1389dc8bcedcaa0722e8dd0aaf54eade137e8f18d9d7341867fc2799d05681aeead12903857ae7046fb335cc290e5756a2812ec9925ecea01919df31f0b99ba516b74a1f29b17ebf02de6b712a12786b8b280cca0c8c6673ab037db91612d38b48a1a4d3644b0b52a4c3ce262edb5691296d2d53071a14b7227e1892927089a19dffad11f1f1bd0c25e6553541d7483ce277a96bdecac31724784aa9d933d3dcdd3f42ca1929663b5e1102430d9ae33b60421b37381ebfc65c4eb23afdc533170018ff2a3009367e32ab9cf83d806dc6fa796de92476705eb434075206e0e8e1007f94dfec75021906fb1ba90cb1ab90c4e726a03f8b1eb40e0b6cb781b84d44535945a2caa50c0228f1f63509208add3951d6fdce948d316a7ac5422db6e065928bb32d495730ce8c3e78bb7b909035f90c01e4b60bcad19224441d2495636a38904c45b98e38ea5ffe4a4a5dff4ac585a037e129a5809a864fe763e21c3bc35f026bd61cc5bbbbd490465f66dfd719faae6e21836942f9bc56fd728dd5c835943e4289bc83e5eab913385aef4c526f42b9143c3a430b399cd469395c13bdf91f0b61e1352763321e439a15f464df8901e3eed66788d91fca51a81fdb8dab7a0d9b67202b98412f39015bd390496e0b22209353d812b8d4a458c2e5de71ec5c17c9b034d892855fa70f1199a942c3ee4835cc920603d2afe28f51259892a7c610774e4f77fc40739f6bc954dd7f30720054dc4a9df4f302ef6fc3d379c67772cf4a5a6aa6024a2e7b60fb430fdf2a1f1f44ef966f6a731886b8ca6de72dbd72b648af68fe543a7534fa42851c1b498ddac2b6f94a18009fa03b976e5592a818e87322ac344ad4e981b590bb57980fc903bdf0d84a23ebe4eeaa5a658736c7b91a7ea31462a7bef3cec35630cf5dd82344b34463eabe9c37468a8cddc9db577365cfe061bac2aadd6a339c35caa61944bbd76d1c5f605399b9c60897b41ede89d4392c9881d8ef54c5b623438633607c917e5a148f91f69330d2cfc3a07a385fa636b1b176fd2099a8532e517603f461e1291b65e4de6c534d6dfa3a50f9b0cb4358dec901823fd3fcca7a1296118b261f470cbd2e8438a6debfef71787cfe3d9fea869beaaefee5159c7e0e3d98e8a2f4dfda6a42e01504c04660ccf06c249736aab24968c3718037a9b693c3bb09f3b7848fc70c60df838d0080595acffaffbe8184771615896a42664c3aa7a25c7365d696a23644c625bb964b699ac048f78320e064140ded9c3779cb5453326b7ffb66c14193420c46a16537011d8c058e5689b584feab9d82c3387d5cc9035f58b7f9d9cef7fa4bd8fe4118e5c8aebcb1bbcc831ff5cd2430ab3b90393987d7906d03f92374eb3bee8c65ac043b038545da445861860b59f34a28112750eb6449c8daaca5a3a8dceffe8c573ed9278938d6bc47e8a0c0c645040e1610b39744391a9191bcc34e08a31b9abe1ae69ad9f141016fcd1b7d4d5b23bb709b1240b3b7a9a1ddb622ecf276ed63f1a92a184a7cb80adf9dadee15ca87972e530026be137cde18cb59b0232a12ff5cda724b21342108ceb83fa30dc50af8b214e638f0e88fb2e11664f6b14ed6421022661dfeaf0903f732622fcf19375daeee2ec601d3e3749c339ea85ea1f02938f972a0ae2804cca49aff7ffde527d084e0aeaa45fa91660063bbae4fa03c3ebf20d00a8b32f17c4c1a4672f66b8146fab2597620aa8bd9ad43b7bb238c851b3c37e8551f6de1a8fa41dc3082dd0d202b75524cb9685812c9756ca8bb42ed74175a9d6e70d904713b08206b1cce2c822bad661634536f9f51e753602cbe61fa783e3b6f0b84de0ca9b89b8b9ff8432745b45d4f38c660529e8626ad737c76810b97b89602fb9b9a8b8964bd8c79f5439cd1d12aebc7d240041ad00cd244ebf266a3b2a964d6371b3bf6d676f5fd97c1a514c3ac26c0442e891efa56fd67971ecd81b90da6ca20fb2a6e83aae5581d4db5bdd28efa1015066788a90d1dc1d1e253f5a5c64c6df0b0c3b588006cf3352606290cbdaebeeafed0000000000000000000000000000000000000000081116182123",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 22,
+ "comment": "signature that takes 17 iteration(s)",
+ "msg": "2400000000000000000000000000000000000000000000000000000000000000",
+ "sig": "45f7b98506b52cf17ac1ca661951dc3cae6637b2b532dc3dd3e49db1ee098bcfa20be1b6ef9a4b278589b8e7c4cad32a16c5600901d47f0fc06272628bba29815f237fd0839e079f0fe6739dd45fa3e5a93d7d1311536c1daaa2d14179eaed2a2933d17825f88e034c9be9cf5f5934ee9201e3496a65e4aa7a2fb18cc323cac3a1997cd9e953654fb504f1c9dbfefd35e09aeb6613ab4c06e571a782acff038df56a04e03ddac640909858e543e9ca2015ada794340f3b8187faad2c088e9a18fe7087f8bfdb3a9c234daedacdfbffae1dc67e04e429555d53b42790fa1735e788d930889ef6618b1e58ed5c327ea6723f2c11f1f466a9c145a11447131dee81550ffaccd5663a5a14e25f21abd330f71fd7405dfcfa93d8227b142cffe58d575507da2c19a631b307570e2783dd4d77e73ab2639c6a4364b3a2b1b7c92d93366f81e7042f2fff359b78630f6c3203b1c88ea9bd0fb7c732f3e5753139c8f9103480e77c57a6c8705ea245b47cc0e64e55ed2246d45e93cd638d0104fb43806b329469e2dc4fec7c9527b5090a47bdf0004ca0a6d4c747df14e8eadb88af3951cc2fed195af08657f35ea1eafd6bf53755b4a66153d4f8aa62f1feccf69f92ce4d5338c422e6743c23c51326be0296d80fded7d5b01c54abf10d530ad0f136313b3d19e55c5ab9c584b80e83f5dc99960392359a6fa718b4d1d6be467de44a8e6678d05d0a1261517d4edfea6bf90af2a80a11fd9bdde875fd340aac5880b201e0a935f58489eacd10f9c18597e51ac0604be6a5df0fa83267bbd28827668fe05bdd26fd7cf09a2c8b3f42df35412a68cb3b45679c76e012bcb7475522234d0c50845395c5cc896a336f1e216e8c62a5d65cac474c8e48f0af8d9f160f08208f196c4cc4c9d2dc4e592ef1407ed6da5471b0622d789300259ffb8a4ce75130343ee0215a3f501291efb8ea7a43b0492264157535d79e8edf106f9100573e486915e54219c989c40cfc6bf6f058f4a34f952a9f10fdfedff8bd173be598f2bcedff2ef2216386cd1eb93b9ce9e34179a29569da669b641297b3874f7477b8d08075710c9bd83cc722fd94402929eff0961de5297e803067cdffded15c42f5febd63f61c8f19b24adc1f599454b8d40b5689ffe5aa759517be2d31c45f5024f8fcdacb7fb0147b4a67f2c2e62bed6d99f2ea15f36ca051b29082e64f5272c7628f923738ded2bdc0b58b2f92cc11046055351bd65b3efb9779d3bd0b28a0e2ef1f2e807b5eae196c2bae7b07149012a8d52ffa80644c04a0ea7cf5226b008e7fc40b95fb0951c2bc9416d60d677ce96f86a655b89f504cd047eac6c6d1905358de689b518cf8651227146fdfc8306e574a38ebb39d5db0697c8320cab784e5c0e71f33adbcc5e2d38894e6006207dd97e545f83201bf1033a107c92e6fbb63f7fa9d6d80ab96b2baa89c89182198e1f93102cb9b10a21db60fba15820c1d82244dae2dbea9124bdc44f69931ee97904e15200c91bb525b3dd37837224c5c52659786e53701dfb0ab836e5ab3924beebaead548b67119d63b52ea88def1f28a0492aa047c346e5b37240d52174f609d82a46be480145f6644647d814608d2aa2077e97227bf7265c1e8e41e263abaf76eb4b705b334d7135794e4e633be36c0eadd86c9978cb5dcd34d85f959fca840a837613f35da365530b4a075bbb0de3d5251138390db3e71da1377527fa3cd5b15fca0147f9646b0813a64f5090b5bba0c68e6fc3e328215877e7f1405346624f8ede7eefa90778982fff9ecf84330bff13e6ae837d891535be7e9d52f4c828357aaafb129f7f1472fd0ae17aa73ea80894496d805a8a393e1626b1bbbb8906f3bc1bff8beac84d1b678fc2fe0218c5983787e7f98db793731fe8b5af27c90691d9ce029db1c35fb9c27659bb09e01b22be955c64fa62cb3cea9d396c47a25e3ea80aed271ad3eba5e48a743538a86a9471d82003bc8708ebfc3f2b8433a3ef418da91281e24525266b72b3c975a030dd41d7a3f76b46eb916c951c27c6db83f56338e12f4b8d517f1f39e18a954ffb01a34adfbf8b14ac5166c7ece5d8ca2e236e35a339360366aeb62cf01242ab11d18a95665b7b3c29ed818e65e14cfd1443e8ad67e32343c90272ba9a262653725d1338694c77f12dd1234f735d0fc59b55de9733d6cffec59cc6c4b1027a7633eff36fd547b549f2d54577b4d3e883064e1f96eed8003c44eee8ade5a26d59d657355d17ebef8264fd07f006eedb3a0182bd6cfa708803d5a521a669fbe2ec256dc69e704c31174fae1f5ef3688a6f6a5568b872d7a61251640871327350d6e00818538f60c7627ae84ef6773a0024790a93ba11be699317711ca3710aa8c7f990c1533277d38d117e0a8ce92490758dba144de16a4fbc97c2ed2fd466361cfb07a63fea544a54a1f4b04780171672b8f9987214055d65309f1a41c78befe703501c41520c50afa576371c91d1ea726d4542172d97f38355b7d7cfdde25010468a63ab2cee6fbae270a82f99384d46322e84c883996ccaea15eec01f07f9728cac753cda40ac6954b52c751e375482776788155edce5a23507c4628ecbf715262209ecbd7ba91948ec891571c214798e96ede019b5c726c8447801bbf76d565e7201d95cfd47064caffa3ee0757bddb9ffac0b42f4a804f68591cc7f2e0fdab131a8ffe5a7c776848927bad752f01dcfff7241003e501623ebebf2ba036100f3dc5e28a23d18d276476ea014494c693d9f4484267f1ceecd7e1fd6c75e74b416c795b516cf9f99a26d669bbbc9cb2bff8de6371bd4ea97b35fb8bc684c464d185e3bf40fd26a8323d507c7b31d203aae661add13c6531f7b56635bd6509979de917268bc0b4489f5cfe2bc2d117d5f27c1cb0de2a85c024a555a815eed435b28fdb97debb7fb6631e72ca1fbf2de560a54496b7ea79f72e41edb21eb28e7c910f74c85122240175309be4c419c2a6886803313d30ef93f587b7fb0232c91ae6d12b54406b495362276afa922af02ac6357b04f817b56cefa7a326376b82aa10e35a113c61666e9b9c9206313318b7e1097166568239eb3455478008e42542608923174fcfca8151e0894decc12fcf32ec9a2c12b48dda7a6896db728ae779d856bf2efbc34d7423eb48c87e00f4b4727420cbf4555fe5a46c63505fba5abc590415dbdb842abd728638844934609980c95985e3f127178f0fc463f4180fa74b5a5cdba1039db813e68fc1de1334857b55dc6a6aab0c4c665a9046a4191eaad90bd9b2b112a46e2a4c253d28c175823334d49ba9e07e85634c24dfedb348e592e4c994a01a5fad53964b7af28f431a338af16f28bb22c645d65d6f40150e7f10897be7b8496601551cd5c813057f2e38a5d59f310b5bc1b52216c467d1916df0da345b3e2f0aee80f7079648876cd2cf3127ef3f18acc55f97e026e3760ef91531fdf81e71c0af14e24bd2fc1bd280f1cbf6e82495e31daa5dc2eb9c0d6568e9b980da14c4efd8e80e853bebb34c259762d2e5ffb918bc2f85100f8d60b0e2353f0fc1f7ed6b3ccda17ff778db565d2942898579851409b31c2ebb860397780174ddac7fbc5e558ae04d6d60c3098adec601882ea9902b33fc43a92e16db396e345a995e4487ab2d07354dc65c04dc873cf13e1f189cb19c84627b892ef586a38dd649c02f3f4efa44943387c493b5edf476f8e68444c804b2543d780b4cef1b71e80251b1cd64958ceb48cef6956ca74a590b6623c7181acdefb343ff65ec776ad12594890ba5b77d1d2d37d0a859aa3a0037dd70e1c0af0b686559bc2c619ab8ca3f649c38e6d0f2b5a6458743293ad38ad26541c843bb00c8005407bc74446206af67173f53043d9c95c2696cac7359023fcdd655dcb2d8afe068df092c8bcc3cf18e438c12848ef078383f6126a5f2f9b4620d193d6c8b8b9f1265c827c4a1928e3e523b2e653efa378800943cd3e1cc639ac3821f7fb44f5f01290a144f11d3e26244163e1cf60aa627d7318dc3f42fa9bbc0292d6fa61cf3e04dab98a3e2ed3a1cecbf5f2e08aaac5650343934958f15a2b915f0007c7a251623c93826f2e1a1c5c8aa0879af6dfebca672c616917ed96ba3c4757ef0714fd8b88e0f21af580e094d9381a5a8fe18fd34156627dea4cc154bbd9f2d9eacd1e40747222015fc93671d745488c8848c259c7a2582c0165a1afdbf46c9a75590cb825074fbd410410a94568c444b2b964d331efbaf82771524a6cc0bf84ac2ebd1f1dd0ed8033178e79f24efeb43a0018351b13759035120dae2972f6e314c671e3b918ed9ed89234dc27c17ec9abdd3b2fc64d8e562ebdb7c90902a0931d6480386dd633185e15459ca4471177281d636d6280433d260a51522b251579833e53ee757c9fa2f87ea1fd86af051381d6f20ad947f5981300bc93cf5c44defda770975bc1438b053537665535a9c764f7fb7f03038305f4eca46ecc6faa60247024d12eda7bcc626d924894e2c538dacdebf4fd2b64ee428f8fe30ff104d21b8e1f3897bb86c567a31f153d4e8ff3be2d9a539baad2335762a010b35bdfa1a1b5df981abc8e612314445dddfeff0fe49b0cddc000000000000000000000000000000000000000000000000000000000005090d16181a",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 23,
+ "comment": "signature that takes 18 iteration(s)",
+ "msg": "f900000000000000000000000000000000000000000000000000000000000000",
+ "sig": "6593932b139ae1104d35507504133096297012e45c9865f57a7bd6fe87a6e4a10394f43226ec77841ad10ece333a381c37c91bbd82a63bf87fc8091ed29a4599042715ade54f5c94a6a0e1222816e112b4abf893f0261fa5bb5d774c6c8d35bc1c447e17d3dbc25798803518cf6f6bdccc7e2e77d77cb8e6ef24564a36b5054d91836c7ff1958b6d850d25f762f78b0b55c2850131437ad677b28b8d11d91b16508fb91f250c1c59adc4a2415ca6d20acf50c90808b5a4e88c043caa68a9e6a2ded7dd4f92844c2440589540fdf7e48349ba43bc26c23da748ac9d75f0b188688541de951a9ca4fb918572c96f7d85a040655d459eb3130c03bdd865583a2bcb382819c0b59f80e6369dbbc0f5d5b40010c2490c87acb9b50ec1a998be39694ef591a3653e9364c52137881ce175da1a97326b33a969d035cea68a5ae85e5febfe82cb5ac731f88a0c895896680a9ae8b4e7b3eae3f7a7d4a10f4063374f317a1ba377a01a3433e1242b2f00c0584a094d157c5be1a864b84712889c016e38fe757d02c30d63dc4c5d087f8c78032865ebc87de03747d03bd6bc32eb9880e8b640ab46e630815d11b3e4d88edfa6a3c006b568cc9648d4df218ab91bf1168852d4102f4503061f96bd401491aa76ae8314ef47d7941a767fdfabff79349d089aa5198248cfb2524ca6489ad58fad9ca4fa6d7d1ddce1fa88c3dadb434cd3a1f49168460b36d9987eee09ef17a1a789a457b98098c85311deb3e7f4d7c2a84c1c78c2db3e9823a5b47b9e313458d8023357aec8cb45fd052da9404c731062508ba31db91cb670f474319948538dfb7b811368e4325b24ac77cfe1f852bbb33574f175738f6924aa937aecc41397f8e34d3c75f44d6e81714a98a552a766089b8b2059bfef2f890edc17f9d98df040b3ad9168c285be95ee126ffd3d75658571f75035a0e9fbbbe66ad6a85a80077d21cd19bf9490f3fabd69991d6ba2589e1b9a3b8e64f0b879f3d80119e6715b827dea6bf40c09c02490e60b37e13d09d963a841fa58a4feeed6982295eb6be66def030230079a61494fd7295143c3a99c9fa722e1081853153110206cc59ed26a77f9125eaa98944d26708609594ddfa78c7760a8e9bed82e85cd991b2bc5ef7e2216e0bca4d16017749a1579b54dedcb165152d9324ee63fb7012b2798da17d3700c6d8280c9d7bcbf6ea8467542e92c8a0868ee9d5fd08bd397641b20d7ba15dfd079bae86972020c1ea54a0e641665b9f20dfd7342efeaf45e2c0682fcbc75569db5d8fefe4e1cad4e8865e86ebfa52ebb4c3bb1f9bdeaf2f179980424a62eb40a07196a78069ea6b33f52dd50bc42245517346a846a63bf08bd27d341ebf829807595f12ee0b097b917529cc0c4dfa7715238eae6cf336fea3004416f18546262ba801c8bc255d325524b7259bb747c3f8ba51aad3fd54d98c882c3c4924c3d01c2846690608575ff94e6778200ea316dc7e802f889a255e642c94e43cae57c68ab4f5083d15921e4abdcee8d7c4e9b60e43cd3a234780c0a6173b6b132d2482c7750e5aea328397f6c87898cd2254437a37f3b0e65b3f448f541f8c455476aecb3e5d7494188ac19cbb5f2ec45e246e66202dab148f2d5c0d388ec1dfa17495c9b3d255da2f48211b1ae87b2beac31735fb79561a1986e80651ef0f32bc9181fc911ea32855b5c0cc3a4fd807c5fbae608d683e81b33544a42bf1f89861b4afa5585b25e57e651e5402fee091d6bcb0444ece3e2d907031716c4488b6391c90446da0991eef10d982578b6999beae142cd85aca38e1a6ff07553f3254de236620bdcd17e24e9fdbd1fd7d672799211cfcf4e24184cbdcd3cda0d8d03f3dd76b0e03606c63f8fcfeae5ecfccf4dee0d5158567e86e3a4ce343ddc3c4c3c1449f142774547f25a9538eb80191b239e510ab0d5dda4d1d2e8af018ce177c6877771a7eb5dba26429f7d9772af8baf8220d35b28545d0127b14b524aa5afedaafdd3998e6c3bbedb0b1ac72ad30073560ee23e85432659a3ad60fb95a731b98884cbe826d3205696424886341986e933b97d67ae5c0886979be4c32fdb94aea47b9a3efb2d062806ed25af606e5072bb4352f3903711fa94a97a86c2dc2d32e6ff8dd221fe07e539f22da92a158e8a8df936e38d02d53d1b0fd80b63b6ef40bf826618f962a1d64ff361e546b73d2c7d47a5c0697af49041dac576de3f6918246877cf50504b641a457fa8368caf5eac325e468b07ed722c8833c66a2fc42b1e3f5eb588190deeed2c10524f1b05c6efc9d72a6a1f4833eb58db9a5e11b4704d879d25c998236fb4ce4b2720716c9e66cb339cc2293bacb546260385e2d860d727d952b4bf07618a04b30bead38bc41d2fb7fbd49931e099806a6d255d2cdb7fe62204a0efa2a883c4424bbf875af04d1f7cb2d9cba74946b0022f614c6a162b643a212523e7e7c7165ef5d6400f1664cb37fa555398f988057fd8aa3918ef644fcbed19549db991d5ff2c99cb9f6be56f24aad7d7ee304ed38240a609df19a2b82571b33d9552b59ea540ba909ad64e3f8342e9c2855a3577eb910fb47b7feed8a23458434ee6e0b0cb484b11c63175685a0ce70e4ff7d03c47b7b9d1e18a73588e8546739e6e9c3aa0341f4c121e1c662acd77a614c4d87e84de703710455bbe937b30870d611ab1ec256a98fd884568b8e945b0d88400d87fba756c17311e3210235b3942ca5061fe91b072523720a4d32d174c88cbc65868b5d7d6113b948bed240d39d160dfc6daf8a43a1f6adfde7e71e0d593c82033e9f6b7a4baa0166d8f28c46114c57e364d70f0f122a7b463828cce26c1982f03cac961b42b805820b9af9c8bb2240eecf9daa990d61c42f01ed37ca723d092fecb767fc0ddf905ede494d7b2dabbc593360f569df195ceb1ce3741c08b60f5f5097830535c3049bbdcae2098b058ac9a50e4ce7fcd694d45b20e1e2fd86808d474480e131b17b1aa8ac351fe249708aecffa6a0c7bab3115ebbf8c43bc5382a2a8e2011bf859ad034d14d8d24d56475424c1b50bf85e534dc8b4745e79d6bf098fcdc86a5025284097b0ad564f6ada364837af4df60a30620dba25a3c5d739edcdd490fdf4b7ae7c67be90f6356d9b94963495d9c5c8ca7154b4b2ddbe1ef1c57d8e5e879a064c7c76be3ab86312657c3a971ee1f87735df1a2849018a7d1e4867c9ad9019729c3f43eace4f2916384acb25f5e340a534d6782aa7f348e37fb7e9895b9c4cbe732b4e7db46341f93cc8193407c0b699ebcd9b7e3f80b5612309b5d959a701d92f4fac5b251031db6f39d6339e75368fedeeb3dcb022b6addd77071af1f40504c875d19a5add799a7f0e5079fb39a7d5eb991b5bfc33f517c090b9bef48db0ae16d160f5a81143fdc0a793cc3927ad0ffe7df402169997c4386a6c01853a6c6d21f0607b209b0cddceba91af3757926195750de29ae82172840205bdc57051d7b273ce469fce06bad5f758febdaa498a3399d4e3d807bf62fd57819fee31a18fbf24e501b8990fc25253d6143cee42fcfc898dfe8a414ffca27356102762cbbbccc70158b318e5354801deb17bd202ac11627d6effddb25c172fe13a6a5756ad80b450839086a46dbdbe3570628747d733f4836f6d57c382a96c7aaa9d83c3a4d5b5ac4421599b6311219b733fd9601195dda1abe2fab8bffd26147dc555c8c8fa11e3ae36c3afe9e1cc98670d33804c0a60b2f68f98282c4b705dd9ad3b9270395470c90bc75a1483b946822a1b055852effd2aa8aa93a4d633dfb9022722982de780dad23dd5f2021f3c4c92e048b2e6aac3c6666abc2970a2684bb4d749b3b05539f90a9afab6b6cf5b05188ffdf36941974d5b622bbb85aa7ba3198104cc1111a914ae36291552f40825c0812abce4fc32a9d4e29d40a5320c29eb49905d907343646a638709ff078de5afa9b106359dda4d33da38170a5d2c17d57ed1dee1edaf1cbb019befcd4cfdab6e30ccc146fba1ed86968d7224630118137148c3d4add5e9797ac90bbfdbe1fb9b4f472616083fd8c1d72042af00c1960b4e9e44a820a50ae932975a0d4d64c0c26d61038ccc5132b40dad8ff9400758dac4f41cf7056069430104bb7de19a478b61340002562fe26cd831f6a7e662605d55dc6297b5c2cd248f1ddb5a272dd5851aefc0bc2e79c59a901e18fa9df2e3312a15852fa8deb733529884c7e0e6f4a247e51a2dee34f53323b98b2cf38966ec33c9b8d3697d056a9c505dfdd8cfd1e54733a85e184e46e66d57f726defbaf14bda8b35a1cf9b2a570e61a5ab1128d7b1ad791d0a6e0b79d51b5845a909513277ecb51774a76f02909851f57f4b7ab2ad8d3b3dddd74494a003f1afac6072d9abdc45238e458d639fc827270c37d15b605f2b91ab9f1a8065f5f65c0b4bec40a26f2fcab9dbb4c6c6176c4300e3425c0b4638b8dc0a98c341ffe5fc8e0e8e017f58647285633d0370b919449e1cb03e9e646371f17f85b7f837b9b641a38a3302036285e37997f144752059fe15cd62ca0d503062dcac9763514fd77751514e5a8593130f925012a63711a366dab06374a5e82e6ff0418434f646784c5dc063f558906426f99c9cdd1fafb00000000000000000000000000000000000004080f181c25",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 24,
+ "comment": "signature that takes 19 iteration(s)",
+ "msg": "a401000000000000000000000000000000000000000000000000000000000000",
+ "sig": "6dc1fa2984d614d5c52207db2528c102886bed81844437049d558dfffbb799f71a9dc992107666cc595a1981b75e49b36fa4a2b5d44a5d7e82a002c5b0fb8f8c811d82d19a84411ccdacdf86912db7dc9d0a8df1784a155c2ef1870d706583e16306106a0d0095aba7483e484c22c246077a743009b664f014d86d6358ef4f415e20d9a0b8ac2911756c72a1ab41c4d333f7376cd23405cfb5509e1885337b2e1f391b9e23517a0869f090db5e89a1f84075bf77b46115052a3cf25b3893a112a454a1b6c23836a84618030ea12f8bdbc2fd7cb2b789925b161f71c2e5300e08b9dfbfeb6e700cb09b9b101d64a4fe8ed2f1e66f7cafcd4985002f827098bab1722411845ba01bd994fe4b3b774096e353891a72414bd37af0df4f63580f5d3e72ff1c916c13bfa6828a44d281fed7ded0916e84f80c2bb41f818dcaef8eced887d7de680cd48d0e499913348d74f6a1e3fa81a10a079901a3db3e7fc6b55899714396204e4b442e156bf34915df34365f771b7c5617c7c521f88c43b03b738c069d96afb5a94b96071a43da76cafa8ba2d8f24f53fcdb7008ed7c73c5de081f9b7d2df75ba160009d05f1edd00aa44b6edac9e4f0f6413c743d925a70b87fbf551af7a3bc46b47814e02d7043e9b92bdaebf9dcd35c0e5a0c49bb53b6309456624e8484285d8e434d7fbc252191f69ca8c44f8eebce2d18159ed202a24b77e6ba9f907b14cd9308da274919f1c93b2ab6a6cd383b9b954d6fd1248aa35fca4eeae628d97d377d703a7bbe976956f5b46c2b884c6261cfb844bc3cb3f3219131e78aa2cfccb4276ab1cbcd42eb3b5a5cac311c340dd35198a42d13742290b0b23c5c8a7619acf12bb41e6ae570ebcc99deb82295882ff7cbef6fcbacd5cb0a0680d654be9b18325e8a11a33daf8ddb1118db078537be93a54c529673c366f89e2d497ec297346337fcf10b2288095f572dd62c1ccc4a830b2edbc6e9ed8905d688ff4333baacf412b8a95ff2de36b37a7d0d230eabebb0d128a1c1d9df3567f27a1beb31b822c4e8b535bb38539b9c93a8611a785d35f8afde56c09dfca722cf0364d99b9d0ca55dbc8f9d21cb69ae8b49791e4e1fa76bd6dc9c28dfaacf12add31cb150757070a39225510372b773459f8c86ccbcedd27015cf6daaa73f6698feb3bdc118b03211b261bd8574b116de124634626386f1a91092270d15c16a5a143bd0a0fbf26cbfd34718173fa19e466c9894d3276bf0c887b09b77a584fe80e0134bccf5c3bba566686c79dce66e554bd9229c74d4c02831f86142932a1dd449fb920ef675af899db8b99e758aeb3b32b0474316db13c9ab2665e651242bdd2b696c6a2f65304ec643808308934f727e3bd4d1e04fa5f52a452dbe966f7eab1ddff16950f211034ef755e1fbfc924f44f1e5b91c38ddc9cf755204c4f5de26b59a253b6c940fecf5db125d5d604a10e4384a0cdcceaa0ea4d4e580753b4acaef25a77b7455dcadf0f5bc10f948027062cbeb5ee2094e01374bad834af4805b98cf21f2b99fecb7b09827fcc295867d083b7696e42c2ffacc5ffb5d26088c468b1da4c967c97bd91bfcc5792cf18b66e5def3ee01e7e251c0796179ee3a38cbcdb656a3c6e4e1a970259b2d2e2dfc25e0b7d7229f5b144c24129d1ebc2e9e64875b298f9c36dcebc1d43e451105b16d20839f7e6fa47ed7076b603b5e17e78f979d01d5245c084e500deb96e6ade4d3fa2837cb400c02943dca4ec02b1367232f5ee56e70d7302195c2b6f9c0a213895030857bf8353c0a0d0275d0216c47f6b0cfb54471c6eb897689a64a5fc2d5b51f6be93b7ee0cf31baff1a5143a274779299a6b903f44f8018c5729cd8617919a13daac169683258a8340014d54f1e9cd82134eaab14c7719eedd6089da30a04e1d873b683316bd64698c81a6ca28ccdfbfcd69edabdc03da3bc84d51d770c806cb53597e8db6cfe2ece1df088f1aa6ba75319ebb27f9208674b19783da8d4d94653ea7a0ad7eeb0ade84db5ac471db947ed77c8b11de5ed23282e75360cb3969cb13597d66d041c3efd7acec993fe14fc6fe536dc5c2a6d0f0a787df072c2559f824ec077059b218541c995a030769896bd619b0e66240ef244c8b3aaf0e3f79abccc4a69387d2cfa3131b45ad4c4817d478cb7cb7264aa8dd46e5ef2d3712e3dfe91e615a321433daee0bbf20afc7051d3a5404dc66f2a02bb8fecdd280718712010115be7131d09737677293c635bca6ad085a8f8c159d772bd52c80dcc62e27db799b81d84e337424a8d8905d53adc68c8a222b6970eb8078d796b64b172965f55ba5c90c0fcb006865d7b1f0745e1458b1ab75c54380b3747da09ee3543a013e0b807158c9afbffecfa5a3acfeb185f3334d3ee923edabff723157c671330ecc64633a90347ddd77be425713b6c0f9b41a9789136c1ab74248afce4f0f569fc181cfc34aacaf3f1a4f7e8e84091a3a0849d87f3b8a7c6ad4afb7d357eaa0a2c915beeee2f1c6860ef3fc5f4cf0bf43c1d596b2c84a89b87d36c2dbd143dcbefe0bee5dfa04b7111895c8e2d9803d57270b347374c7a6e83957145d00e801db52df1fc37bd8e8eafe7a6c5b75a8c8fe32b6b2cf0e33aa6e7c4b559d2687cfd3e89cb9316ba05facd121f0921726adf89cc2094da9fe3f296305d700479a6ee3da724a39ba0f5990691436abb03e6813c4071913cbf3e70c6549589aeae288212d2257077c434f306c611b932c754d022bb3d40d91fe0479a9a250eb4689e118def6cfa516312c4ff022d1619c5aaa535e996af16016e670fc5931fdddd9e5d6105c385239a30e61c8d9dbe1185fa13b375f214965cca489d186a84e5eef189243212eeb570109c544fc8aeb4fd13227055878a15a723b70a27c8c902bd8f1c3f9d8865fb2dcc554f2d9c0e9231e691b1712ef052a9953daa36823151c86c2e1c43def615f4eacb610ff684957f08e58f9b07c633e0c71ce838bb8c742e0ecb301af85b4000b61e3b2f824e6fb283d310c69623c3b78e34e85f2c5a319b3e30649bdf982183702a4b3adef8844d960ca80ee90ac92237cfd5a67475241f0d8fd558df07dfb952fc54219fee76946c2d3cc498dc85b0b04b1d6b121d6210d5c97e1f75bfc1eeb7ca62feedb10f4c0384c771b331b230e951fb15ee5c5d6a2adff8a508cef25c6f7ba717a116b2fa8cd18e75fa5c711e036cd1c609dd5fb6f26c9f135bc214c13691d27c9624f711e6581a36270aa27ab4a2afcf84383170069a8c8eb7d9c8e86d328cb5eb95c81f3b5fd0738ab4f44fb0c71f543e66febcd8f4157ad4235feeec30fd3e4cf9e0967f34015bf5bb12a15fc46ef5d0af50e3ccf810ac4310fce50ea1fda53d52dd14fe8795645032c4976591123b74e263797cbc7e41af7be9b56a2195b4813a1d3438d83e3b4da2421746cd97f92176ed9eeb1ea29cb5a0b1629819bd7e7d40c963e629960607aaf96c2a3e93a9f52a37eab47b8c7611b61d5a1b9fe3d8cddb7acdc04d000286b7d8e09e8ae4e58fef9bf71ff76600bfd9c0a7f40a69d58c76459436959d916e88ad288fb4e82a3586b79fcd67f66b2711dfc0d9d140cc22c0a40f6fe46d09c12caaf56a45a7065663d879e8e6f12aa05e9265b16ce1aa2513aece0ecd83d15133f69a7c91fe0fd44eac29b22658d3eb16bbafd2e11647f0e1f7ce67168f5d3e2b45843defd6a4fd8ba901fb4950edd98a4e41b1bdeb1581c44694804ea07544c2220aef5c3f3d58f7d053815d280a202629dc6a45a931c7d86bc8256575d58cfb1bbadc473455fc22a7fd94b229cdb8ff4f8510c126887593f62040ded2894fb7f53665adb2467951efad062d30adad1c9c5daefaaa5748c614991887cb87b421970b6c061e55bcb2e2ad0dfa3c17e869b43ac272b04fcdf4fe29baedf3bb3ab6ad1a22bac0188ee3712d3db309e57efe5fc9b60c3b4fd2bdf287bbe16e88b3822f45868872a99b78265fc5f2c123e7520411ebb2c65652d01a0e2fea8e7cee2a7f667733e208f20a0ef5c845621cf4c2393f360f0f7a0b32d6b1621cbb8366c89ef90cf20919a6c9f5dff89803a50cd281720bfe75c7cd6e25d12938f43596e5ac23c948bf73b05e4e48b0135d1f3c59e93c140cda00463868dfecc077edad546cb99a54348104dd60886874cd680a38e74f515f3e1612a42bbaae442a80bb3af176a73b24d929825955bf33a1541f62cf4a00b7adfb0c7f20442213bf4a531718c245f8885b306fedbbe723cc33a1dc27c52052c4755ce2a302a412955173941c109f52901528739c58dfae6047d04845294d8ead6f94f06e33e96ed95222b1eca8068570aeae6afb5ee3d5d93302b114a815afa5e5ed4202a9bb3ef0ef373385692645bf4aa5b0192cb2834488ac105aefa23b4fa03fec0319b0565916791b50ac339942cd34e875354c27757f4a4aca0c4f0f2fdbb06869f4ce5e1c8cef81791f2280b42bc2d6884050d431bda7a93d2a0e77e72485bef53c70965e7f5cc599d48b7e00e5bf1f5c9f4ede54e56bbdd4ef28d7ec127c0e9439b09ca7f568e18b234943ad6991d71911e2070942517089d2eaff1f4e6e7dbec1ca498f99b7d4e0edfd191b40555babf8075eb5f2fbfd0000000000000000000000000000000000000910181f2425",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 25,
+ "comment": "signature that takes 20 iteration(s)",
+ "msg": "1305000000000000000000000000000000000000000000000000000000000000",
+ "sig": "0e0e0793a9f00d1014ac745f73ee18458e19dc0c9a82d62c4f7c5f08cb302f270648d108b2a87a51c5b83e6aa54f4b40531f01bdf4f59315cfb96fe20a21bffe3ccb5aa55050ab5ae428308e9f1a95ce546b09b68d9a3036a04c71ff617dc48b4a3a732b4b688389a8249a7ff14a35d52b6c96cb0a6d049054de0f7ad08669b82f94745cb89798d86fdc0c2375303f5849c8992400889cf61ecbf63bb5343664f6f63854d3518f5a63fa55098b33943fa5642745b0a907c8af07685a18d9af65b121e90e7fd0c0cf62ed87b09eba0f06559ef813649a08a03c0819da5479dee4d170c17c11a119b6d9055151bfda6ec850b70939167b4d4d5bedf4e5aa19c380b3f87b45ca8b71dd9007450213ff67338a2631b83ef73499c4cbcb8ac6210f836e73605eebb09bb911f63f8dac03570c245b1826ea4ffed10e7d6934fe1d2e5358d52f18329259c05b1e570528e7bd160435a826e39781c8d3ce0b933d3ae34c33c09c6a4e535e3f0678c27e4da154ebb05039d3775a3bf948f579e8920b12b2a50430694fbdecb7ae7563631776e7b5aa3d889b3071964417eabd2bbc3fa551e28fd49abed8fe37326770db6168813903a4b1f4a149cdfaf2e49d88925a6ccecb85aeecaeccbeb94aea175fdc4eff8eb6cf0ac7cfa2897c74bf6c1bc5daa283398b86416be811bd6dde7558bdbc5853752f2651369d3b142394fdbafc1f2f8d1139df065fa16df69bdc9acd8497a89f037cc6cb6eae90292c7bc8f1ef5d89a07ad877334c53b80419f864031f78be57a82bd89d523126e9161a1a5d126e52cdc94831d68cb1907545c0c619bfa1b7246aa50355591217018b7227447a7d17b28324fa6c7ffa1f5a119bde3eebd11dbed6bd9d8ad95b4e1d7b4d673fd35cdc96631e1a86dabd6bb7b66ad5985bca8888d5e8e145a5b5f48953bead5702180a99b9402a5658a7e7929344fcbfb574beea901367a3dd8ea90a75b54b08c391d5ea6373ea8bd10cfc563733c4f533f30ba31d3c0e49e4a5e5c91d45d4d638712aa80892a2a0c5922edcfee867e2fbb7f18aa032c774e9cdbfa59b1c27baa14e932f59631afa69caba7855bd3746a12888d5a1e64271242dacb972cc82bdcc64ec4a2c146306f39115d5c824b71c93b5833020985ca099a4e937aa527bda8e69324005462f5f8431d5bb11bca9e4c59e5b14096cea9e40a540546efa18e1364c4f1ee855cc8cc564dce2ab8dd683bd9804b11d02a1f510ac98c120b6ba64cce16b203e53ea3d1bc69bec0d06a17b30639cd9b24fd1598e92890e88f7dd1397445db54ad8df5e136ee60f22ac090f2bd905765e810f54711f01c63564ef90cb01108b2c2bf1a6fb5fb8078d609117e111604a1d927fd24c18354ddc006f286975be3bf1ce5593715a8cc873c820f778e9a428e08fa3db1a5f52fab22ef5d16056092a6b1da23e3c64f205b3490f0460e9aebf80a4fe9acd31e5747431065f575637c8c4cbc5dadc2753b90e69722182a344d3b154bf35da62c1fd0e98921559f7d6010fcea31a79d36bd763cee1b2855dd05b44b36c4301cf6070408f02689bc75ffe264f55cbe06886019797b3ce3206654ad4995628eeec2db47a2bcd5feceb2f3cd3246bf162cfeaaec8abbd63b2e6cc441b908a3301c860a3a15c1b9253cdff625fcb6de85ab78bd802dc5e073a0cdcab0512a076427d7fae7b663d9b81bff8f0192fa7db81dc454f32340e200ba59bae4eab701662ca6453c233be851cde64c0a966ffc6012681dbc407c02073b9890781c8f484c295720eadf934c73e2b412b484ce4bd599a7b8718088c55433ff1a78072188e289ade5861bdcda6d10dc5c40f1c189ad96eb188bb46741e5ab956214046c2db868c8e019ef5a37d90b92fce70ae8e4a5339f612c0b8eb43c61c0c63f3a59edbe6752d05ecdc178a8a90059d6fa7e0da0bbb7984b7cc1ab8045095558ee505b3ddc1b3db2a78494436aa9334f6b3b3896d33e556e8e2b9bf728b5c53c204a964a697da252a73b8c120b363923aef38f993a3db4c24c9a4b1f10f444be9f87677df5ff2c26e419bf9c2f8e53ea2e6f1bbbdf2b6c5090dba385a5cf5652f9929295eaafcaf282826305ec5766fbb03ce153b32d49aa7a66752a772d2091568f1b6afec5e53dc2d5f73eda96834404bfe58fa5aa692f266d0383ddfe12da56a61f93933b6794af38ee9e31c3721c1bd52a6690bfa68948ba8d6577ae6acb3d5adef9091fbb7d4007aa8b96a7d17cd58987525296682fc777111ea979c9f3b893fef381c03319d7c6b9d4d523a0e5b98953830e46f1bafc94aa6c4c323d2a8a76ed1364caab808dd7eec175eb230de35e8d6f4ecd0dcf32ac6b1be9d7d6ac740f458ae7530a64baee19357ce5a3f106841d99935d1606d4ca7edd2d5da69594770eb86827ca9180713ec4df96de4857323333dcc4c3497e089ba6388a39450d251f39a1d2d6c1d6befebb7111189bea14c0ebb75b1c64eadc76d8713ab2290a7402e86c16ec2eca769febb9d8cdffa530eeb75854b08c52f69c1bff47c2f775353484527f2e3f37171d3fb44553cd6dd4d79e81574d01a6d4924d7b2dda910f438eb4c7ec938e5211ff4200305fc3e9659f8d52bcd49d5ef6ff5125d1f8096107ee01633e32f159ef17e1343af03076061b13bb3b25d4422f21b616393cd2d36ddcf96598c1d3f6b4e29258c94ffeb07410d1294c754f25131f68b4018ea155a1c800df5913cbb5c7520c7e33c3adb8e21fbc692b9d4ae00ce6e06df53cd3c13b1d12dff0607c423d41bdd53f4a632a2b80937ea64605e49c9694cb68e3f82fbb164964863c9d58debe663db1ec93382b8149cba27be1c79b2ec53396421a0251f3c4fd3199ea45c944e250d9402128369ff9d7fa48b0dca0c945eeba9b90539f3d4207b00d86687418dea895a4d467fd7e48fd6edade5d06434b9b1b82ebc0110b24bcf0bd4c58f9d7e5121c5863708b0382838423fcd9105e6776dcff3e914c5c425b85b9a1c5ee805d28925f313931a500e5bed7a4be914ea3a1a87e8b798702d45c6961afca988059bd23f04c38a0f4c3e9d59eecf1fb1d07ab1cb41b472b8848e5a149226966d540b095c23b293d982682dcefb8ee426ccabb3a5ffa070e019de02aa3f4fad228420f27a07cef98fe7cbdc676476ace8e45a8be1e282c136189d11df419053eea59288a16e0708b1124535a2a9d42e5ff42d514d05f344d75d26abbc2435c42daecf028c60621061565f6fd5787d74ef09ba4e1dd3f4043f0a6164d82c1c8a56971eb1ca21a966f80f67bfe32c2b3bf34e680a5abb3279c8e7c71130c77337d439fdee9f0589c268bf2b116eed8c6042e3def0986ede75a7ddb046be0cb9c2f5982485fd18bfd4af6649c73724b9c2046de6eab8c12ed5b1c56662b52d45eddfc9441f88d6dab41afa2c351c4779f623a6b3e4f8de8a749de2ba28447994c57566178c29cfe2d927d7be251b9945583e0d62591acd43c664cf8e52a9f96b08bdb914e5cd40aec4d9ee49088be114d7f1c326622262b9437d4ff41ab766fd164cdbb831023e7b8a4c2f215e9d412ead4176445c5661affeda6bfd4ee4d0f39304ecc8db068496674f89d5be493a4e225239c0dfa31b8ffb4a71b71548ccc1cd8adbece95d2cd76e2f951f6862aa265542696a0d78acf0bce2e20cbd1afd6339f33ca27efd6289ace29fecbf43beace6395634e3cf6ae7d207f31058739eb878cea44af09d18d0100c719241948dbb25943f8426d70c76011a6655e47eab980ea419c0baf21bf3c1cd08a6b56a95cc7ecc803bcc6caefde0603267954cf865423437f3af6c3d229382d4e6e4ec8699ac7929dfa22dfacda6846c632c8006c0f1c7bdda56b9acb231a52a532b2c5ec3791b3c3b7c7e507b9d0a271afcd983474ee55e56fe4e7cd8a0bc6e5756f118c513c9049257bb7251038866517c4c00be889772e7d42995686cfbcdd5f343fd3f41ec7162b61006e55eea57837c0739c8bf2fab9d24590edc3622d2b1c472a1c9a5a4dc63a883834a431f976f1fac01254c5c319cb4da867d129f007a4dbeb5626a9f53ce8db7044bb5e1d4f974a0cca9cf955ec1561b8d0afbaa14988f6d14c705adf6c87bd3f7416611867a61fa33368a20bd19f295c40858d9d0946e3da6771c41ca3b23bb97659ad5f5ca6f48342c323889bc3f00fa116b9eee79af395b24eafb213bb3f74d2ba57975564bd14bfbb97bd824f5ab3996bcfe3d3728e6d2fa65aff6ec874aa468d297f4cfd36fa55f7c9e9d8ce610ff1c36aa2c5b596b017495e298df6e199a6746093be6b4ed0737e834fcaafb52d9a0c37a82d4afb0fc19d81d577ad451edce943112aafae8417e29de50541ec0a0cba83ebb61102cb9aaee51886fa5b46f32f43a3a6caf58201d09466577619b369986a3af1d5ebaa1c0fdb699328cbc95879205b3f519cc235026420a163dd96e0829ec098bee25386a90971477cb12c4db6bf7f48f032e631f106441e34450866ac7e547f3cb76a0452d1c305b3cc822942b5ca815bca6adcf267d8afe7763fcc8b70e4c31999edf5bd25d42793dccd212193bd4e808373b3c99b7b81219aeb4d9dbe5ef0c16455573858cb8bc0454a7eaf7172385cde500000000000000000000000000000000050c141d2227",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 26,
+ "comment": "signature that takes 21 iteration(s)",
+ "msg": "8d00000000000000000000000000000000000000000000000000000000000000",
+ "sig": "bb8a458fc151be6dd575d810ee1dbc1b0a0c0fba3b64d9282b33e80531e9cceebdd7f266d7d810d0e4ed65a2fcf188c79d0f8b72fb7942431510ed1a9a0dc5dc53783911ff8e486ba22a0789a685370bc44dffea387de0bfe7e610b769b3b701f8c544ca3d53df14e0795927558ecda480cd7ba8c0d19cbf954e032b253289c42c657cc18ff7d5ebcfd4ff5163e8a36f585ba1409f1f8f039f87b1ddd18170048a08e4366a19439bccde7bc9d220642eb94896f4a64b1bc3631089f71ed0be13b4a38c092cc5999ca9c4cf4a4bab102f26599f651133f51cb2f1df9f6bb7b9de9b4899a38d26b9c6ecb29efedb2038bb92e2ae3401d97f3ad3e1bca5601b3f897a2ea831e6a046a66c69a7da9c1e256da45ca11d4d63d3d5d9de9470c117a4f62f3774fc9c919a73f06fa9e27c440dd94aa19d52de6e53c5f500821fae286fea255486434930a444ad90a9eefd79bf9e335a995d652c7f335d09f7519354f01dab9c10d292dceded1c0db39591544a4045cc7d3d28e4da6be59760ee7a74e312e482ddac340f6c6f4e09db4df3b53052fdecc96dc7aa6d6bc160b991099f0aa81ac1982188245dd1d8b111186377f2f617647ecbae26f321aff3931188d2df051f3a4296e406790514a33080fddc43ea4418d44e8f3fae0660748ca4ab61aaaa58a6e2fb56b8ed389b44afdd63243bb592e0d531d79e75d396a007da95535df0ae74d9fe6b61f997811e3934150f4ce8aa292a0fa59f66c5141e3bb339eec3587b86be94b765aba9f2362ba607bac1ba18917ab7b15f3e3cc2270109ec0bec9d53fda5c276841d41f29f91db419fe91b7d5a2f04c5322a15f552514ab592ef54b59539fdf2fc66617f5baf1ac054da64f9064b43392d2d14823082151ae5f8ab536467543ed5cac30eea35904b4a737a11f53fdff7a5099e915b1835aa32ae57e0a14a781966d17ffc4b66c62dc4f35fd414ae0a22719241e863b60ba63e82e2b16dba8672fe7ce565007e8ab53687561c8c41dbd736fb8881c5fae17a28cab7c1b2483a2ae932b55e5b154d05b66c3b6db45a7049b5934ee5880471c3a63321b193c642e6ebe89c54f6e60f819dab75c4838eb6ca1ee80416dfba41e7836f3f2361fd4bfacd3102c1f28ec517ca8db5b38ae3f48f502229f2144750d5d93e4c8125168ef9ac066fab91c295d47e04a01d30f1cc7889e9f9911a1ba9b6d44014637217571f2e7bd371775611c00d651dd5fecdf342e8370a303dc7e4e936dccefe0c66a8d12912ce2fac1f99b45a5fba11a942fe927005ae7e9453fef8a926fb6c8c3c90d6ab39bda85dfe50ab95541c71d4aa5debe9b9a10b92f74f24d09341738e83fa7687bb97054f20bbad10ca1ca2f88a2d9f51fe9e940680785181fce68693727c4a39c57a108f37e41d35efc7e8249f60eb05a68c8b14913a85be41ae96e8b28a9f97541643657f13d6823535edf8ddbba95ea0768d98bdd126f9829025b799842e2b58be73022e16cf46b0160bbb93f97e80ca5b7b4c2581c3be3d7bfcd81a2399afac6e6388a9707d7fd7e1b19a56c786344195a89da97108c2b103ee87172be50943de28d95cb76722c070ce96383b4bfc1958162b1a066faa9d880dffb4b6c4a864b0461b085eff9dbdecd2a2643b1390bc3d5f00830e6e43aecfbd3b762ec023f2c684407e9928ffda93df2082231172f42f5b887f49454e1ef973275a865950259afe4d3b9dd5fc1d14f07093248364c37db8bab873070fb4720130095eb7e1afe4899ff806ad9ac19c09387157a560a98d1a68a1f0665087377f5e17477279c094ada07321760177c3261b9042c36c42060b700316a93450cf8dd280a0f3455ac8c1e0de4bc40aa0af63857efc77023077e7f16a805e909dcb2a9e60a43e7d5d22fe30f8f8a8291c79a2c08a8b5c3bc9dac5402e6e3bf87898496511be0483e9e11c69b6356740bf8cdc075f3a38f9d489ef3b7f88d51734c8bce0acf6fb5beb7a3ffded49ddf0bf54d6958f4276421bcfa666c273f3a415ff69ca61b736eed168bb3795f9ce647cbd413b027e520e22ebc1500671bb11f056b3b41865690ffccac3718a597e16b217eac9b4fe268520a5d342f1de7817c3568e6249d9f4f014dea7b90730dd06ae4acab0a5e598fbe72b30fac6355068a74d8b311348210822d6f8409e77806a259fe4eedcb5934d2e09f06f2fe82274c942058861d5449e6eb923ac947d06806a1f812b6e4ae2e0a929aa244779c075d7b4cb9edcc664679b6be833c81d5c688517eff2d10eaab41f93e48b7961cfabb5b9f087f5f9ceba4dd8d1aedadcf5719beaf1ea95398634ba3cdae50ebe9e46928f4a2fd153d38ea9af1cf2e7b832c19712ec57dfb516507dd3b12ae1eb82035c1e3347ab97c7868142c68493756493fa571abe71c635b928935eb50cee1c25a9bd60e88258dc777dbd7f96e751f1bde620940d8659730a4734c77402b7664d5cf6d8c562d64284c637456dbccdef87b25e96c21f9962eeceafe99a9d6199cf846a3798fdd09997ee81cbac964ee68bb34b29d9dda00f251f7e2311bc1b6d4beec8bd4d3035a82285c2288a90a216a355e3d1064943649e5fc46011dd1ed2fb9289997afe982093619a6f72d4a6b6093e1303ee88c74721e4bc7ea6289f437cdbb9ed0a6cffa5d7d918368b986e070c3dccb55b1970457d189f9b59ab8e963e5e8337292d4c71445ca44241f9696d1ce3910804fe7df2dcf5854fb9116f96a1a8652c8a7f2c1ad07b07b1da41a21148bb9b24e8d59dd023e58470a188453c4cd9ca7022520ddc6c53f64a5ba9b3563a7d59ad317745a226f7f0d1af6f71a5e1816c71e12aef1e8a60eb67c4c6371a191a1199424cca295a9ecec99bebdd1d386e955fe0d4b4e7b853100f17e09d5e12c8ff569e67bb7d118759ebfcd8c1e954a6cc351c39393ace4d531b42e8aefcb533020169991231d525bcaffe20615d0adf79f258d7b3f7872e1c39d2ab3c616ce79ad8054f0c55241ce148437818aa8419231d72453dd1fc28790b724fa49dc41e43b838d83d8e6978da66038258008e72e3009ebaea2624af497309d9dfbe809a97a67ffe71e68da7550f12ce66e333a7196f5402dbfc35cf9c021b8150c91b535b76f3f6cf2925e2b5c7dc9318a34184bf1e84b06d8edf792f8a62845c0e4a47e5af5327353256a164b167a895b6617a503de6eaa46f1be6a736b4a5c81eab9a6c7c7e78855b44d9dd673f91307977545341926d8444480a44da1f7a38cc85d266e0b43896db4e8df8f87ca1994160090884d417eced5ceef498f3d86bc482e6787ba9fd9f95fa451a9e49ca51e72453802937b2e1817daab14b6140e1d12d4c2cb07567fcbf4d7deffb0ae80859ff3c3e07f7494e16671ff2c2eeb921c52fe21891ec58042bfbd247d6576da111a7b40d0d68d7a66abfc133b55912df8f85fe06985cf91dfec0c6cefdd646ab64b30abc9f402e39f246ca3b90f9b3c7791443967fc31c15bc38a256661125082ce326d61ba7b9ba49614cc584507cd974baefcdce6564a0332deff73db28129a79b28883878e738551107e255a719aa10f5a71bb8ed70d053c7a0f64ff47ce85239bd8965dde32e87720a5661756d2bb890e0485bd3ae22f4f030a9c76da63fe0d27146f16fb02109dd247a763c74359f0ec63dcfd7146eb747e15be6a7be46b30b1c7e91645926122674a722cd920d925999a9d2bc293627b5395143769c26e544e87eb076124d4bfed589f9a0b5cca4a7f52f16da6cb35e3956cf758d0848a6715ec8c3abed15026d40ba323940f85348c6c7759c5d7fd0c309ae46e75fe76042f2bc3884afb8972f87f3f11bd1815b39869c1ba5f4e35569786839c792c7149fcba176623566d29ab1dc29f3bf2d374f24eee794e2003af92a90b06a5ca67b5ccc7916e9aaff10ff1387b72d72f6edf6b450ec2a47a21311f9b4b0edcd468c43c53b7e6a233ce134512ebc742b9e59f8be7e7605f2df5fed2ed705e679cea3fac404eeaafd03b0345764aa821a40ba383d696be7749c5d35ea43519b789c06f316ccb7fa468f5562f688906442c8dc36d3997e51c14353e6022cc2b882e8296ea274808bb87ae9e62c307c65cbf30ddfb2453497d58075c2c4e6034dd8261032924750fcffcc5fdffade784907d7ef657978136ab2fa29ad20c9c83c3e348a408c5065911fe61e0c439a1d7ef058116934f6497d96dc661f8ba21fc255c021c7b52b6aeb0f1d2d219ae131ab0e0bd01967698b63b859c14b3252a7204da5cdab7bd2f78c6cb639f024c92465635a41d115ea6d042f3722d605e7be2e868909183525ca088719876ffb987afa2f0bc147026e1863c528562619ee551c64380ca2d8c315803a4098f3657d982397be8262f7d34ff4c05f45b6b0eef3d7c13fe542c851509e08b9fcbd9e48d1ec72c790cbdb9dac3fb8c7a57c8a9e2eb14ea840e309579b0d04096ae896ba2f3e45af7939dfa922b96d4b76da3c3b992cb72ed55c2a424f371e020fca507058ca189294a772db81e05f33a50282c689cecdf4c28df5e17bf6cee74be67ab96d7fe26cb1d3a0333145557a9db5e4257b1977bdf7fb41496b74758c94d2f7154d5bdd0e2c4a4c7581e600000000000000000000000000000000000000000007090e171b22",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 27,
+ "comment": "signature that takes 22 iteration(s)",
+ "msg": "7d00000000000000000000000000000000000000000000000000000000000000",
+ "sig": "7b2fab305f92793314f5aea42c8544b5a0af4ceb7fe57f194c66778c320257377aee97acd7b9fba4c8fe18cb462792452d44c507f7840af2c6380d1a25254ab0874ff347626511b93723bf76abb608ebb0fc056b453473b1d2c6d7264f0f2712ead95ee34fd8f620925a36decbf3097ae92f04dc9981e1cb96da9fca9fcbb41b64fbb617a21b17b37661ec5bc538f00a1acc07aa667482daef1055dde874d59b14327dea97ad4f97fb1430972ac82360e9fa070c9b3ec2545037cce1dabe34c274c1894add81507268721c2769f19fe089178b400e55822981c2f8b9f51f96c48d83ac24ff55ed8f5a0645d122f1c17da2bc8da50cf1914d2900b1389ab9f1a00b6253a67bf907641ca5385b49a07ad3ea0b37e458e6caf5b4dacc7c74dcff22ba677f23ffb64e9c1e2edbee99e7c73207d3f288d2285a7c0e14c3b2ddfca88df6934acba9857083a131d50c88d8f8ee8d24304e5610dc53574b8d14198fa008435d33d03c42e377ae3c627190a1c6a1639ddd98ac90b6b6d0bf7a50672000e0d09898f21c705c9a5de142e9be15c0c0f9b06347f61a0ae9741aafce0c418ffc1908c8c20b68be48a6d5c8f5c0762932ab3e73a284ee039123c2b9406751ab6cac8c610b2aaafdfe539dfdc1e800269a0a1fbde3b5bb03cd938dd08160fb8f236724674d016a76d24832f4857bcaf7faa8daee394ea5d97cc12c6de62081050c0d0f46b10a456ddcd12e352f9fc5a9776087fc6d16341e0346eca5cfb3ded070e278146b987ffcc9d56396fa970d22a20491ebafc95ce00f5b6d8ead65868bcb6dd6f31bb2a9d85b7951f9ce8a8f7bd7da2753e54362c8981ee4714afdf398dc258f3f0e485db710f0393c60a301ab97d801c7f268385f5200e6bfbafaa69ccd87fc1eb0c29a2c6f73820d6b5f561ad3659e7b895a9ca7798422a673594ddbdcd17abab2afa6b7f5d5c0236b33b3b8e6129d9a40ed534bd158d436bc3279c769abb3bcf4ad5c4e864f2461915266ad45b7bdd91023a09e1b3b2700d8294472e1b4a40bb1a57844183f80dac369ef701a0bdf2290f3283a681dc432b396451f79853359ba9df78e8a6fe6a1ec4017405efc4a78199e3365854a1c94ae7affec9682d1451d1a219c9b9b17ee6726281c025479e2dd64f835ae15aa2da8c38f4f07b014b0e71e88a60b95999f77aaf33a64cf6bcb1bb93bb151b1762dcabd12201a5a1e7df878b0c1055c2c263bb10952648e1429839fd180c173c6270f7a0c43c7d1c0bcadf81c0400f1d8355b7d0983802878d36ca0dd0c251477c12cef09f764cb261e171c1d8052491e7dd0cbc3c2801a06d7cf6a67d55c3f9633a8a2d74a1bf49905d29c7f574d2a2039f41835dd6f7880f3dae8b60488580975d9b19d1c2d5b64f91f01b22caace58142ada05cf6bee8e6903362c18296195b1177b1aba590e9865d4df042a33930180fb4a99a7e0ec262a38f739c098e9b48f8a6033434bd506e68c46fa0a0e9dcf7562e27b48e450c71e33602200192fa91828ac40854f33ecfe8ebb0aae4ff1dc951c3ee248783650d9e4a56e7d913e5903abc845b970397d8ce6666f410505336e7b906ba63e77470900397451a8528ff8c376a70403a4300f80b5573921f29ff90728286022f6ea62f28e9b6884f1c6e9d07b3d20ac2b281596ba6a2730b9cf447cefcd72bbf8f95ec88d0565e711c286a8c269ae9ceb287ef6e6d00502a8a89c766a8c39d93c3bcb654a07acbf75c7ec12b8c1c494b55f9a41195d3fd5e19bb4d93cbc16ca4f05be0a86a9aa8994d12584be162cc4d71fa629186af1e3d3b74e5c905c8be923dda76b87071e84883da2585f2afa64f0955434a53f0c0cd63761291c88a4271656e3083982e9360e0b76e18f6fea30736cf97f59256b5739faf5e87c51bc76a8fd06b4a8563a11a3f2466249beb3eb8fb8fe8a3d0b9f06484f6fdbffd9aa7919188b626e8310f9d1c83392ead724185c62bd1b2ceab020cd305c4abf081bb3984cb50c1cdf7c59456c96f91016e9ad32c2d47c67218db359248da09fb14feeaf6bb343319633e7869d6103571bb5b587256eaf4551d5aa74860ff266f57e55f8c65a2ad87aa938b7f156f2022b62282a0cd4173dc090c5a74aa5702e50be4495258c509d22ed34d63622b62c0dfe1f53464325280281a95a2c273e17319dec4ccac46f31d953743e03bf22f40b0fff77409072dfe82876d9d45a11dc0f1d64010ef32d57eb60a5288b089ec9d02bfbfca6197eae336363bba37435e1e558178613807da640fddb0ef205d7c91ec186b397bfbfa10d588235013aab3ad21744a5957def19bb7bb7cd4f676b23c7bf87579ae2a5fc8c0cab31d72079a4d0cd69944564252f9603b508f5a83e19f09c704c574066617e8b6fabe690e85d92dcac354a435319a93cc2fdf3010c52e38d6799381e8cc861d69db0ca8defb5f8b1c017dda46ca9302d8cc1d3b1ede0c9dd63349bf6011050c968ca3f3011109314dc9655d1a30f198cc84bf12c812e90939d7f4075e32697dfd2cf6d17589494e775ca982952b61f8b99a84967a431deb64ef7ec9e882cc761c8bc66f7de4006eeb13f9b6ff2d92db458ffeef5b2cced63172c0f4764da145115b615cb6c0388b6e93aea63de74bff64fe40dbaac7769981bb9655de32a881ada616e96cdb74579a0065bce2da90b64a813d57abc8f6543310065cafbbea9512355cb3f058b35bcd357bde9f55fea564a6b14bb341c6c755d4dd5a72ac79d855fe50aff80d683530ee563249d0d65f64debcb24962c61ba05c5f811b9e0f4e5942797c24d2b08a4592d590cb871272f5c1228e9988955ca4f990ab2b138cbd33646772767d4f76e8725377818ff1cf03c01fe64bdf05e61a1798c0cf3b4b69b1df9f756ffea314fadd17a6c6ded6765d59b22e449ba8c78b1f8f7b717de8a4462b02d1bf22f24e821888946f309c7e60115049997f0a98e5f04613acb46b5e231da31c482c25e7eac53f09df009728675e07cc3b33a0b0c6e9199664a00c8236a3a9ec9d6d5aa2e9317da6efc75e03d95d4747d51767485c4ef9fd438b767265093bb8340119f94367b506796bbb6ef67dce782d879a3673c0e8415c6b55c4faa3556c7c823879ebec0694dd0783ab8f5a60ae10d1c3c42e309163bdadd31aea4869a673eaf797138e332df0579567ab7e0d1e72820de3e7068ac2ee207794ed41737dd698f3d9884bf3d8f37981406d856a4ad5a6862df70400fbfb719acbcb0fd6bdf6d7c4ab3aa10bc8d6d7452fb9546845ce1478ec9804b3fc0b64e2a292a2b1e244a3601fab84d082eae74f635aaab4b5c1e6c342a695f6804238887ace79dd8dc63c2266d259eafd2fd876517ed9fab048444a61da824c0c836977a82591e1f7a813b0898863c2566a3651c0570821ee974c4d031ea7df06264d1616d48bf6b2ba17be39cb363843b06c78d112c76cde5cd8495c52019359f4aabfbff771acbb91bf97a5acb1d46d2e721f78695b8a66a145c15bbbafc77e5070305b37e854eb16adec67495c35f44068ffd1ab55fcbced4c146055343dcd7bd366b604ef8775a9985a1bf0575482d162edad96ad645f186bd2bfb266c3b178f01729037d9b7ac8a77c518cb5f316c050edbeb0d90362e21d5dff7be1f8632ae42cd13f9d7071f0ee0ba5a1a50a77b05fe3f089f1ba56ff7746ef35ae7bfb16c2267118e203b75ac19b334200949f8db6dfea57e0599ebd3ab484bf5be07a1d1844aae9d63af81cfdfdf1fff686abd1093d27abdf2e92308ee6e3e15fe197e3a9bc6a9ca889e06cb73cf824363267d45095e8b71f84a9ca49c66ae58713edee540cc357a08a7b855efcbffd95f2b765fc9d7bfae809726c3632915a0af1cd1a01abc864a56539d5fbaa21f7a58f430164e81e65b90f453c15f83fb9236ca8f54fd2c7e50d0258e9a383444247301aa1b42c3215337098ed426bdfdcfb251b8ab08c35fb0570dd08ec68c1896a7ac95ba6da0437954fa029b03aae7c64de3ff3aeffe38ef8b208d9dffc62e32f44bb968518b9a0059cb2ea2e59b0c614b7787d0068ff7fb5bcf59ca605dedba63a34626261e7193e97e7e6c45f3956fb46c10e88a94b8c097cf2016f1c2f76a4db6568e038373a7f959c09ea1223c66a5fe011c241f206e03dcfa03964dca7bef53f1a442591706fceadafdc7fe0b1ce3a54a2e391e51555beb3a290c29bfd2d88f1bee4dce1c6357b4966fed12f61a8af8c90bdad34b8d9bb9d04df6c12b717ba937fff7875cd58ccb01c8573f4341fa3d3648cde127b6a9c4a7b09dfcf50f39bf44d1fd94f5da7d2fb1c2578b9c6ccf19b9920bc76d1b91513bd9088ec1e818898609ea9f5719e4b458b9ba28cd9dd43b0402774dba02f4e1e6e5c71b167caafadd9678932176710a41184ba19702e3c40663735a1811c56ea6817c99f20b5f9595855b46839cc64450acfc71cec14c5d56c2a799ac26569cf58a8d54b0f984828d379869cd8f5eda5d0867199c914402b016decf3e98a2e63948da228f29e6d52a9fad658997c1d3dae404179370ab68075e49868abb5d20fcd4641a83469bc20a288c93abb2ca105b6bcdfe0f122129303850e3f33f6189b2bc89dbe3ef000000000000000000000000000000000000000000000002090e171c20",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 28,
+ "comment": "signature that takes 23 iteration(s)",
+ "msg": "b900000000000000000000000000000000000000000000000000000000000000",
+ "sig": "c00dbc9431a2e5689d27b5a3f09c62fd6bf48550b9c6424db5c6027bc0b5cc8e9d29f05fb9d8f50a85d2c5d8b7a4f7f36813bddbf7caf8eff67a6c2e148890f9438a5ad85e6f4eaf6173f122dfd160a0ad5cbb091d08130677f196d22c8bb6793d174f71516d42bfdbb18fd9a371286d03ae41c7515adf78b0b9d0279538415f886a7818c6e09117ea092235cf18bcc834cc07de3a639c472d63cc2c42f6178a4c1fc61e5ec1fd5456851d586f37b59ffaf43e3887616136f8ae775063d5e24c137f63023d056ca2bdbc4f9e059a906fecffc72cbd6ff702f06429a66420bec5cf936c4d8f0e2f888c9b5bbe81644be03bfbbded0a1ac71b1e4c2c4df783d6d2621208f88c58dbcd947fb62ab972bc0865dd043528b9fa057c4e7a0f7cfcc2623d46745f4ef63b66aab5ae5999c625fb20da4f40d2112e53122707837501a0db379f262977c853083913030418cbb78a12bc6fb85857f401b7e9671eba59c1d11b55f83fcbcfad880c0d8492e03935341488bc7f1f77daac3972a028adcabc1b3f3ed7ac41a5caf911aaf8c76e0ea75c1f4ddd109a21e47c7a5fa2103dcb5e588c354d80feeb15c3495c9c0303f7d42e2a211dcb9b0600245b35448735877d6fe378b38aa279d81baa922b56693a2cfbde2efc23fdf80a78a8f50e9c587f2d63e29f0631633743664a83ad3a61ce12fcec36858714f399591229f7269023412b7cb3cebe64691d1c63a297859d10d12d221a43e37432da12c9c7965aa21bc82f7047ee6018095f0e832677d83f490b238f00e21251cbbad5a9aeddf11d4d4dcaeff0ff89caf1e8639ef0d26b31535c3fb73fb42a6c4c399882961a51ab5799109f58104abca73d8083c2a4b64ccbb9c1744b53d8c416bc902802abe8d7eb9a39405c91b61234ca7d35735e18e620067404d0226e7410f63c52a5ab4ae58281496d683b84e88055e970462b9d11b75688f8cb3dc47caa0ba1caa5106621bf59078ab30b113b4408d891e63eb7dd1db637607e6fe8b8b835b2205c5b17e7650a26ce59c3ba37a691a8efc35b847239fc7c60f61ffa06d3025855fd8e63f1cabff8d3f76f19ab3ebbae67786de70e9880887642259bc89d4bca52bd243b851b7e229ed4aa7170d24339d2e09ea779189921866a9bb773f09cf832b93c95b8846e2183f8e23b47a92d54af739dd9ff8cdcf13dd9fcf3eba396d3c76569b733aaa543051668cc436b2ff40a366284a0eae55246389268cab3d516b19e0d5184324fab0d0298872fff58af31cecbbf9b7abdc26509792483451da1cf5c53effb81b76b2cf28d0892de1cad6cd4ccf91496d64d31b9e8eea56cece8a99813ec49ff568c32763e3164b638ebae34852f8a827b781ba03f4d42297b5725c97f9a6e82668405f3b0c589ee7073121e07c7c39901e338685a5b1da04a127cc2301d4ca4685777ca9619f3cc3041a68c4d6034cf3d58dae42e61a65339885151f70c12eb9d32baf5d124bc9b47775b612e35965f99ac25b60bfa182b84188eafecf4e761b58be536d8c241a5df7cccf92bfb51a9f796521f6fa8ecaeb8574c28736d2e9a3e05aec22125b8ef6972cf5ea446737931e2b3c3c27dc3c84951fc60c89151082d222008a271888317c7fadcf621c115774038f21f89558111247a81f6f5e075577bca24d798cd66495e4f4eeb405488d0c39ca05e8d31619a5e65bb6b2d5b8e5683532e9475cbb65190a4abc6edf981a4de572ba400e6f200320cbcde65f64fe9cb8bb204faa9ed6cbd505b63aca60ade2ca9c79978bf0d971a8512c11e2f8bb9670984cdf29fc1a08c2e0f60cd4bd0630c0b3b34ab16f98e36e68a72841e34525bb5c7bdaae3c221e6d62c5b495166a9acd5fe878c766179c4ea5d88b3faeeb92bd0ff372de4f0b4f7e9002c097c2ff679c25467499b28912624de5252fa5d48014289e75a73b01021fe0f302e71342d525a53e754c4ae74c700bf187d004ca04c7bcbc956599976f70044fe70d22a0c82a3cc2a4aedb839f3c1a1d0ff61d815fd5cc74ff9c4eb40454ab6a53701913f176df2d57eec4457a98ed417c6e475d4fa068c6efcc2c6fa68bb80dc14d88d42d692e81e3b791955a2a4db7b9e0b2e959f4c4f04157ddf3f6b71f93e2768bbd25e807dd3a73f3db6641b373f1836782fa9da011c16cc5b6ffbd1fff811e23b1a3e0ab162c879369a13161010f5997ebe78fdb5754a34ec51fbadddd1f2afb927434175cb7060801c4ae80d4fbc8f9548381f6bd941e57bb617fa5d78ae28708e054a343b143dde9d5afafddb9181484cbf910d431dac96cf60670753ef1471db18911c4de0f14468376aebe23a37d7a661089e5487d9d3c5115a563f24267ae8fef4acd06105c7f2da0ef1691ae589105a45ca335c408e765395b2a3cfeeb3a3d6479780e38e7b52af3259cce9206f305e7842471c6ef555bf1d3fc6e0afe2b8ab769e2aae1b4b97339c273c051abf2b62ee283935f4253cfd1e855a2d549c3ed591838f423db0aa4ccdad5b14956e01e7afa729bc86a563030097bd6e446c990f83adfa5da4a2d71e42aac0256e8e48957f301a745733a5dcec0f761d7da4f5842c99016ae2d91eba8b29a9fc48ced59a08dcce4efa84acd21583442a24f444ee03c8611dcb108f1e9d8d6cb40330bc324831af3adb7585966f3312762d131ba54e45b2b695804196f3b1bd5a5a633429579cd18fc4dfbefd7c7c53873764d29c32938f25578ae0a7950c29934d9d878623640adfab823aea5b248348ed029d69a41f2762e3bb859fa62cbca757565e56759dd51501feda8f3be5468dea32f51d5503e9641e3bec3b755aa0fd6352a08254c1c95c5b65472717c486ed6e090ebaedd6eb4378e75bd71887f19bbca49ef148f913cbcd0725c5097cbd601e78a8746464e552c08127eeebaff5de1540b37b7b9dad95c74583eee8183504dc4d61d1b30d51e5a7d561173404d97b563693c17083bb3b055effcbf0b40e688ffb37f46d3a291ea0b54cef41f8f49464480b17f7017f7f6e9df2805f81fc056472e69cce7222b827b92c3fb1aef3bcaa6225d1e8c23e0cb173c2c2c936b43e89aa89886371119c3203b7cd3394e7bf29a0fbb64ae19d476f118dee4700a7ee400a73a07a8896a441614e3116f76cd58ae6e8b9bde7ec97ab8776e84c9dff4f41680fc306c026ee5caf39b58c3627477c19f3f39b3e35bd4695ca73d4080a80cda55be5d3dae4eeef8f24057f45b932fb6e58c965512d3bb07fdb87797ed007f675d0e89085d7eb93bda336692cfc211a289fc104a9fadca4b1de6db0e5868930ac571814e175cee5fa8db276ebfb1e51809584da93bfbdb0df3397ac9f4fe47ea2bc772c7de7006112cb218e5cbf402a923baedcfd9e4991a8cc03b860beffc9afdd8bf7265559c5af0f70c4372b1c24eb8d4126debb564780f7286aa17149697e7d9c327ca50babef283c6a991bcf8ac1fc83743a8ab4383cee0768c556c02194b1339f92bd1f1e4919585e74251ecb7defb768021156c7f096dabd1aee777774b5d2537957d1136bb457b7d37dbebd581a1b60c4402f25c273aebc1bcc9d2ac03fe3f93709932b5c95cec947316d8762f59784baa0039a33e8916e16ac727005ea0f1b6eec3601cad5b34bcd6e4c8f3b49fe0b98ae9e081e6d6aedc88dc3073e753a11d0c3a4b64fa0d4204446aeb877cad71f78b61442da7ac3fad1d8f581be0496ebeef0c4625c18f10427983675e57ab7a80e415217133352b5b3819c76d228f79047cea790440810040b878b2a54d18430c43c322f83150ed13ecf3349c158805ba0216b736554859f60d62c0ee8561597f52a51677beca0db358ce367da78bbfc6f1c3a9445c53fd91e0d698b26c7b8a2b4a201842f50e0d21e1539d90877fea7299fc08a831cfdecc45784febfbc462116a7bd12dcecf301a7da2a978f6527e57f1be5b52e833039d9bd00dcb87dcca99dc887ca0410646df7ab7671714e76fee5b78006ec1c7f53b7b5bacdfe0bbca426035067e7e00242a604c568707228ca6d5033c26a9b2dc6336124e329a98e78c1245ebc14efaa499183c7df43b916d47dafdf9126904c8b3559ade438b2062aafd600d3bfc3ee5f3123e50750faf9fe59571740d892371143706befe00ed39bcae1d7ae604a9bce4e889c4b0669e5fe1103ac5a4e615903a5c3d645144de577d4aa9d3a4e5abeebfdc96abfe5a07ff7d68aeab1b3e18c5a118d049e1e0213e2cf9da583d2b9f7108b972d467104599e557bb36a710d0beec84c13cecaaa0f511355ccd351da2192f450035d6df92b955b7e241755abe8ac2face7ca735bf4d034bcb289dd37e7336b382b0de8ab1a02b59ced9ac9f12a38be2a9d3215125ea5aca39b1b47db4756a402d2c5547819d0907cc3245a7ce5b3be4ae2ba86c62374337903c6d77986c496798789498b378227565d7b977b8eefe14351bfcf49d6eb15c3385e8f63cc9fd13eb69c37092781e8c2dc3845f744c1511c25a6ea363d7b3146b5602a07111980d9ab1ac4376d46fe5990e75bdce9de24b9af38bb6c65e6ddd410a1638b5eae14bc596110528a237a9fa7bf1838614e6e7f8ad3070a97cb010b2e30438a9bc1d0d1dfe9011517596cb1000000000000000000000000000000000000000005080d111d23",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 29,
+ "comment": "signature that takes 24 iteration(s)",
+ "msg": "2606000000000000000000000000000000000000000000000000000000000000",
+ "sig": "bd1c81add57c6fc6aeae596d5e88a9a40a1f146e21b923909e3c90f10a77c0451e9af75db5309434860e43f437f04063d72c40363967069240efeb1d04aede6738b9b9024b8186041cc5916b8cb0098fb0dde884e093911e4069949d720ca2e9ed86d442ff7e07f985348b569206c6640a9d14d3d89d6529aaf4b51295a6384b3a6e63a046d3e89bff5079d58728780fe8050369a06b397beefb82a6ae7d9f6b5219f993d34655b578454f62fcdb8421b8bdcbdeb43139e4302c44d1ae23334dfe8b51df8feebc24a936bee7b4b647826994da416318abed7004abd7f8b446a32e8229e60f1007b1fed5795a8df27392e7a3a1cf8aae5184065ca28312fc38395f70b9ea8b8cfcf1015b6dd4ea1b2c17b22af14234bf102a06ebb70a35ce2c9d0c8afdae728c169609f61aa09afb14ee9911cf41e6632a031c9342f8448f4f78ab81ea49cb57d18d07feb70d18c16479a03d4cf00b2e5e885113a16a50594901c6daf75f49ff990893370950684a8625ca8e882be5488cff442ba82d9b3b978e6908edaaab70ef89bafcb1327b3ed7277bda85f1b39b70d5f3571d5619ceeecacf60e29a37d9043a3cf41e03a79b4747025fe3ded7ede991939edc8d6e1491ba27e22a493ae6ebc189828ae00a13730dc5653da364a79f0d3fc00c0c5fcdfc7107f235b9781d5ca972eff4dcde7d38c1f30fcbd3e51d79c356dea6694d2ac49ac46850e06b509e51f6816e404b3de241cd3f869c68618709373d54eef4f244288e13a0fe8331a09df7073c9668ce07e83cea9a20ab76083835157e8c75408694a5a012df1b1e1d08343bd06d81f6dec60b2590ad6ce34bb66bdf6ebf0e21b1f2c4acdd25b7b212cde6b2bf826c13216f8f62be455202096de344759a1e66863da69cb0268ded55de9f41e4d75dbc15c43eb7aca6b7f8479da0f25d3116b1bf28ff205f8d25129a01f22ac3976c80eeddcad9e963fbd60743e8976e2175055bd6ae589c3808d41e51e2077d7e2f9a5fcf1ae687d7170b96bbf8d1cb67d146480dd38d6b52f877622f489354e587a4610756246d647eb1dd002253027032180490924c8ee0317bb4d8d7c1ef415a0df37bcbe1201b4d9dbcbfde250a8a89a7695c280a4be8361520869b5d23aeb6e7df2737eb1f28812f5ffb9b1302d5b030182a008ed813d8232347342abeb3ae7f7172d8e85947899714d9a4af587a43bc29fe14d577c37a2606178d342aacd2e9a33e159aac81f29e6500f7f8e1027d3c60c63498bd2e391e4be4caaa6c715c20316eccaeeb2b0f1e0b66809de88890a0d14d251570e409de7b84a4ef7d2e5b489a7ae7378123203ee261c06380b44cd6e256568c990d86f6cdfa444c333ec851932f27be415d6be7d8c1e063a44b62786fc1449815072c111f5b98e8c7d4d994c68cd21d0f07099c7eab7432b7853ba55ae27cbcd48be775b9b5a9d407c939206bedc59708f1efa733ce1b7f3df559b4df5b1bf8c27f8860bd837184cca59480fc7605b9faa4f1680c3389687030b68e343fc56fce77255267ae53357fbefe4f122ec52ae2caa58eeaaebab6cf7dbac4cfce5c95bc7dac91517a85b14c560eb604e5fecafa596fd3e76bcdb83da6b5f239ba8cce4a9e14957a71306e7efdc048b9d949a8cba9877ea329c39ba2034da897e57d4d8f94efd4328b38bd27052b224c7366085a578524b6f42ae9a2d047519e0575b3cf6b10a4578850cb5008446bb32996940d25c7da5300d9561ae96e43ca17614cdbee350e55e4a07be349d5b181ccb3c806a2cc7c1ac165a3dbecbc6656beae26bcd37be4480dd88bbeca8cb2c1d12d4594376d1876f928dfd25559ed402fab01b0a3a3d7eed61a845a31d3f2cb8204b7641d875304dd0b9a84957914fbb3a1d7c15553855f8122dbfa5275b0bcc66e49741bf4f88c37e830f4488b24459076039776f1342e1a5fc0af17d81d96c939e1159ebe04791fd920dfd6eb7d8a74fbda316d70b4d327a5411fbd0e25edf7f9448dc275773c2f05e9ec8f16006c4c8ce51c6c3b9be2f3a78ccf90468154914716162df15f008e64720218a59e69478163473af62c08780390b21638c7c86ff5ed90ba003e9511651601ac7ca5f505686b3101e53c736a213bb56d86438b9707187429d48e3dcece259b4f87eca78cc9720b1139bf27f5deeb6614002e5932d44f2220f22058e5644157e334ffc348d25a2be6859e88b27d365c5a07f86fc0d74b68ffcff73480a14973b701eda3a0d16fb39b86c7d344a51f10d3e4d80fa4a240d66621a436b01e549dca7d6ff595967a41ef9892ee3a316113f5df6379c529aacc5e332f4e108a613c799102f962a9156c2b7d807ec4de42b315a9131338f2aa35f889e385a79db045c042d6b4199ce0d924a859bf182f8897c1aff76c4470077c732147df78ad688c38f39c41c525feac6cc92cb0e58cfdbd24f14ce7d799ab19a57ce7542abe78372143b39b014678b7d02855d7682f2d1cbaa063a5911de020500d7bd4b3e45eca31d992881a3b9d8044d51c4ad2b3db4589c3c6aca5c714d31310e3ecf91950ff12306e52302b05aea52c2253a6caaa21f1c7b0b4be41fc00e4f2b318246785157f77ccdeb1f8e85aac7b97d28db41a6eb5524047565c9975b155d2aca2b98d85fc9d1a4e269adca169d145fa138899a975e13183720ab912051bc9523be26176b910d98fc8e191dbc564ccb1a0767acf1c5f9a92e501f8098199360674727968165293f778f8f87335f4b9fddabf278f65f205179a43cc8fb60047bbc4b26beadab79b35b1f316283b595046aee055d68e7e86b5664fc8b32343f9b488b31aa0649433248e531fe5d570a531613a50c73fa6bd546c861542ef16be17f35ec4fe92d60905b6baa3a0645ac3ee67bc6bd5361def91a6a9786afae9dd11c49928873b7d8efae32772ff1c5b2c065bd9ac18baf76606889dd80ccab7c9f0d3eb773fca1d561d5fd0811faf01dfb1f8c1c13010d23f8c1f467ed5c5577ab6002234c295c622044a306299855588fe45a48e00fb15b314d646d80daaa01d918c7a5cc1c3eed27f12350b58c6fd715fae1c932280dcd1affebe0d09335ba3992bd3d1db2a4b215b123da1a68c75de8e187297c625db9a9a1533a4bfb1ee3c6acb69f2d8149189d35ba80077aba0a1474d164ceddae3e8092c423099a0ce048420b03cadf05e897b8fece53857f0d2fa126b3b9bd80e31cadfc4400546eed633e1d5f0e4759b918eb675849f86931541678aef583b9b2894c905d7a5a0951355d5ce741c61c146f2324a372b87168ea7b380164a9e36bb3e63c3982eafd6f68e122a1263e745fd11dcc623d41c4a1f191cbeec16b2bd23ad9ef5a6067a1065f21a59bbf76a47f35a6ef3601dd6dffa00a96381d037e969ab938a57f21d38979c79480099f621cf8951094bcf4052d9c6b0c45cf35a987f254400b7d43f9ef50677192a9ea867046e5efcc8706aa599f82cf59ac0a67fbe162cdaf2c988addc0d7f934b850cf5739bf65b7053d280a79ec3e7e5bc738c33a883e31484d0003f2dde5fa7e36889f544d126e2e081bffcb41ebef6185e73399a9a336ed07c119cda65fc115290f149802f9fd73a6528d8bb05f0b210fba11ccdfc814d16cd6add066a8ab72471cedb354a4f60ca209153e7b0b1d065f37bc756ad1100ae851c1c998bd36c649f8c5a44ca5958dbffdd88bd925653081e2cffceba6cd4142a4bea47cc8fcca2f5e46534494689d45ff296dfe2b1985896bd71caaedbbb7ec7ceaf6d540c2cbb8c2c37489a5932263ba0597c3ba25a6ab50a5a09af3b9cc6a2a2d4411dd0d3608fd163355cbfec4a6dfc1bc4106b44196a4591af1b6e3a75e7b1f3769ee924984781197b9c2730e9bb1750005a65cc74689e8712c2eb16875c5da03a8bb29852e77c08a16bc23d777c99f628c688a023ab8431db5f3d0f463d90e698e3430bf2be8d02fdc41035b5047c1bfd21c936ae69af73eb258c3907efa308c71d3f8d9ab0d40d45c3888256d9c3a04f26c83eb63a77f290f2b58c6dd4bddc346266f97e55d0f044e7344c37652b8b0fa492dd5445e84988ffb92249fbc69be049c825186a2973631d5dc4d10896983bde511c87e2850318963cb1e239a7eba4c06b6a2e9ee2bebf127f54c487fa3b28636a2ebfa0ebe042adef1fa17913692ec0d1647cfcaf6c90df6f9b141d8fe9cdd8949d80bd9ebb0712bf8dc1466c94c625c9a9736fe4ddf78aa6574de6b1724a7dfc5bdabb99dc22cc3deb93d537dd5d1b75eeeb4505c8f6ec102ba1e694858ae94a66eccdb977432aa02f1b3616141c8c77fe5512ce888262cf2a3f248db8cf5130196f73dfb90dc716b0e21da55ecaae1abd53968a6262a1759724d2e4ace335aca4421b38ba903f501adde8bacfd7e6cb254e15a1aebf1ebbd812176beeaab97f205f570f5c2e96f9327af9c17514b2e62ab07161ba674e46c1dd6d77c070114a90eba94a212e4eb5e6fa62084418afbc0febd8224210444953603af26d21ad0a5ab8812044dc9522cd42605556c501aba406089bedd703ed61fd3df829ec92d5137c4161286ccc43728d99b2b5d2f014161e273238535661a0f1277177a5b2f86d71acb3cbe1eaee4b78d61a6cc400000000000000000000000000000000081319212427",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 30,
+ "comment": "signature that takes 25 iteration(s)",
+ "msg": "4301000000000000000000000000000000000000000000000000000000000000",
+ "sig": "5986c4549caa794e266a06862811cb2c44d93bb0ce32d7be8957b222eea8a487e8ea7ae835d09779ccfc38f48f7988f828b7b26db80d5e391c6e19ef4e190bec207775b5f0fa2d3872c8412a895d57c490c6da737df3c7f0bb2fd62a676f1a78389efbac474f277c4fa9b08f3dd0a82ed8876e3fd7a3b1614cbd5f0c51538621cf478c27ea39d6542bcb62338015a4098b7aeb69f0131cd15ad80e7e797bc327c8c20139992d49a66a63ab341a17c080db529df3c30aa8d76043cd781b3f6acfe97ec231db5f026a86d5a54bf0028a9c6b9452ee01dbf7ebbc910ea50f8e4480dd393466c8def5943ba822a67e7d5e20eb92243a84774e838924d7adf1e45c65cb85383c653c1864d51663621e3914b1985868f50c7fff42e04d57440d5aecfa221c477b7175ff182d461448e820dcf7b5f04c132a8194fcec3d4d02df24db406a8782aad71d7c27bf81e2cf4d11e23754c01b3dce63417e9d812fe5004c13c97ba3e4674b377c91e54c707f15f0ef9f131e8fc875d52b696fd46500088c3925da2ab487a6869cc8597ce2336f6e3ecc4fa42cce8c24f5783d52166046b19c661f3084601723196a65bcea4930a4814a99bf26c48f84bc810ab6829e82351641f21082b784b46e2115a08e32aaf4dbbdd6b9a5c72107f405c47d0cba1168f80e9842d4e47a0dfdd42e18d500e1bdd573fd4e4a7cc18f44953ea81d94bd1694bec08e67ae218074c1f179063587a65cffea71e385ffdee9a162fbb113d4247822e46f13ebb3462a394323684baf59bfa80cd0a1209759fd39f87a367c19995b92c7ef13216a39d0233ba66487c1ed46d5ffec611f427abda454f5be5e34465481898ecb4912c1a68067c4aaa33f525911d77e28e9d764bc1124a5b889fe928aa090f80e41807756541ecbeb620ab4d507ae30b17a684e2a18af0865f400904321a9f736fa476aa8c5f7edc4ce3d883c197fd38edc4ecfa26ddc86653f13fce2eba247df6cb818ece36df59ba220b7ae5cf6059eb23013a88ec4aad41d4264d2814921c9723fad5aa4393a646ebad0ea1dc277f6f131513bb77987c9275d9efee0f593f4126b490c1157c72d4de8676c748f8ed5b8778e5687e000569802c1273a52209d93b6de376621932e9743857017ef1af4f313a346c956b2a0169d4f3059a7ec5160f5485b8f00e67d04d36294e5f4514251c5001eb8da57398fd085d9564b959d4e2480b94b05bedd937a00fe713f1e894ed76ea0349b79ba0343db1761f23216ce929b20ff49cbb7cb2cf77d1ffd2675125e18270e081b18c86e811881695fc9df5f17842b1fae833dac14e1b10b32fa8e8d83789949aa0c23e46202453d6836511e4731dcfd1817aa02463ce1f175aa3c6955cdbe5c58d970dc0d58385bc27b2f33beb6eb638fc9d8fe285006436992d96948076b35a6dd50f97fddc72fe9342408841a5aab7893183d465694ce956fdea8f7539c4412d80f6726c2d726b23ee6efe01bd520ea514fb751aeac7767b42927ded102acb1cc985f6d371551306126678fd6cb64073683295cd6b84299c3ba36a7acc6810e4732389408919db59b2acf0f71178af017d114d9d543e72f74e0a6042155a34e9eb313106428d15f753f35547216e47500d3dab9877e0d8a8342606c4ab83e421c01389087f7763f7f5ff10c600c2308255701cfd04e63cfc435cd1bf1b24eb8bb8a6812d6b38b7fac21fb67b892e04bbecd2a8433c0d104e950771b2243595be35423833d46a6b28878cc16a033385e6bf6a94a4a6d1d5518d538fcb475af1d1c476401edd05dee0b014d5ce68d95a06c8a30c68d8d33419ab4843478708d938af757da39d45a7b77f79a8f8a2c944bc95779ab747d555094f1b04df45dfac56877377d5483b56ffb1ca69c4dfe07943b41a4d434a7ccfbcb64a374b61af0bb203800a10255b87c715a6366cb1b6b5582135e8703d64235cc714beecba43e4f31cc920c6bf59343d5e78e4235b9acfdd8ce49fb38ad74113a0feeb647f7179a33299b1a4bfa60af1e70ebb070dd07d33aa793e434c9d7aaae98f018e72b1ab8788644c4fef6b0028a39c30da55187e183413fc79ebe18a84561c15469e294900a74494e58339972508086dace548868594071467360f24efec75414ef502e5f389e4411150672b91f62984dda1b4760de4e738c23f95d9d6c56ebcb316e4ea71253368ac460e6a754faa69f2ece3a13c36dcbeaf142ba85cd506e30877baee307ffb945afdb387ed02399ff21aa9746d850c5637a937cbc6c3b03a27142b945c3da9839295a212d644833c0d85984cb5df2f7f139da90d66e6e73f51c9c3ec8ea590fefee063abf28bdcd2def788f25e40a7e25d01c11def224fb2a42b880f725e1cf2f8c08c8e6b3f80c90a6020ded9cffe0742f82d55040eabf0af6af911c336ad92f944480f46adbe8b5db18d6b34a3330bf2c50a2028f707d9bda1fad9ca620db5bf2037415e07d2d6b7c73bb0177f7a1bdfd349b87adbc736bfc7db2613eeaee51d08322f20a0e683af01aeb6c1d9dd9ccded7b9125b8458f052e7998ce4a62612b815f5fdcb8eff33a9c72d6e1b4fb35b01554d6bd287c43b8e4e8cc8465379b85f84176487fe89eb43b7c7042d7c9c1bc0f35c55236df89d0c186edd0cde61869489c0605946a936e90096e7f0614a74265adf8bbab764e968996ff759afb9603c359c195d7f725eb06701a49912401ad296d2240a6467a80a7fe2a440280eec32a300b2438b08f5152376c25550d0dd8e8237742af59c85020b4757afeb91aad5db9bdde9b7031445ef56956963cf27470cf5c914e267d29a70f7ad5b9c76d281e5a284db8a7d6a69b8bd626e47d6edbc7ca0bdb6df8192a230d8be6fb19193add1bd107d395dea7dad6f0901748a0d6ba6bdacfea046187f0b60a2f8b922059ae9565b6a20f99ad9b107c0a287e2d5c2358d7597ea4c029de58b4f13557df2012bd8f71a99d924947672866965ddd930abecfb5e5a4955f561ed9b7b00757fe8c3f219e7955d43f1676d544f678e3dd8f5ad9e36b3ff2b8ee15272924ac8255a53cb9a9e9202765746365181fe5ae49c96dd71f4c3967cc2a8bdb9a58f18ef1b8808e3ea44f076f4ad2dda7b2c78893960e844d3ff18aaf815286e5a5c04850848c3f25c0aa5f87fc0d62d286c0ce82f51c6e69ce0fabc3b862cefb8fa616cc46a1e34b3f893a4ae9b6d4de83c7419748c35df9841099ec8554aa5f7f310eddbde6cbbbf04f76336eb47fe161246ebab18bef7a9e3532c6a9ce0e2dc73579fd6cb1643f6f01c465ee4ba1d7256130b99e0e0f2a16d457d394d4e763ba36c918690ab354155d2fefda366cf756044942712cec0fb1d1941043dff020b16b39dfa77b064b9267de47f5d9fd5da780c173cbc729f17e44ec884a63b0eb3ac2208b725db57b6701391ee8d3bdc94f3a3664b5c6ecd2c166d037c0566473443345953646b9de89ced08dea5e800bc4aa1f8ad5f8aa6da89e9e93c2c31b1cb0ff0c9b7b4d5dc9259b65848949effdf6a1970326381c8ae4d039c372dc92baff73cdf14eeee4812524c85090cfe485ff6ac4e8bb5d96596adfa62138f27cca7befde57494c1166f002eb62d32b5705a7e9642ab4971bfa366f73dc268db53940ac5e1f34dc24b9a8996b527f15c69d9579b77b7b6663f2941f45448572aa5998b62c8f5d495176f6142c327217e1da4cff053c607673f14a912d9344bbf9ad5fa7e623ed769bbff53bf2b5a1c78f79e69fbf53fc99c6e171c90525803751b25ea6c9b7d496e8a7b294c3f2ff2455cd8715071238825ef6cf8684bf29bb490a1e3111fb305f3bc87357e7263e417cc7c10cb685077a1cf6f058b1108021f78a532d7c948a485ba35c50249c79add06a6cedb346792b4c02a480a2bc669954c24fb13fdf4cd6b5071b969677e5bef6e30b69e84b8a69c98de885d1d325526c58dfef5f72fccf7748ae8b024d915e14fa01c35e018b677a44babfd32b9555b749979e61bb4ef464f8010d1f8d457bd9ed6f956a6631ca7bc768b86be99fc5d2cff06d66013eb0b128f2245f6f284faed9b13a6c6e4a14c3e4a742967e598a06a119d84b5e3f8bcca18f28f64c9824967b6280cea61326ffa2b20790069e38265a337447eef2f739365559e96032d3e17349176963d9a05fcadeb86013c5869457a182f4a95f1bb5e4c64b640de8ddedaf516f7d80afc8a08d1bc5c50aed4e0fd32e2e3209958fd814abe06267b879035b05d251fab57c104b3fc4169d090b6830e2a64a221f67ecf08122f91d638d0a53bc211c654ef8162e625d75ed0a0764189312630ec3534d16a33d4e55f95fa5db64675b7ad8a06596faf5a8a47f8308b61cf16aefa2e6107cabd21524711ef971b77a1d4ba8ba1318d041aa7351324895ec6a45dcf5ecd14151d6b00ff611071cd686668ed28a0fb77f4dff6095aa72d7d99792aceedc33eedc40e30260fe127bceeab8a5c1e7edd27d0873fe1fa7017cbd9f3757fc5d92676d5f7e8ef5e85827be2ef8287d47403c68ef0c369ad5caed8bc88089f34f84e69f79309317eb49c2f34c74258c711181a425e93b5c5d7f308103a626d7cfa0f3d6b77a04bac00010819b2292e5f8794c500000000000000000000000000000000000000000a1116181d23",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 31,
+ "comment": "signature that takes 26 iteration(s)",
+ "msg": "4801000000000000000000000000000000000000000000000000000000000000",
+ "sig": "3a274d893c34e200720af504ad6cd4b00d7a534b6af57ba65951cfa7025ffa7004d07669533fa01ddffbdd752b84d2b44273aad42294a90bde3252f0c755fca0d12d203522874612dba90d195d5ec83c8bc6630671d7ca2a0ca83c89385937c5d4b1a1392df9a378ba3288427ee327b1643421695aded6f1ce3fb11ad9b4cfc5cd0720c9b012eda021df8039bd2b8d5f4f6f78b7995b0479e515faa6539e2f36646f35b9227fb42e23c6d49f3bf32c4f0d509b6064d5489faee9b5409ca29d73fb0eabc62e23b1dfe784940f7ff0a9560d4d7d278d41c22cdf07be384aad9232a17a59f401f3b768403f5adfa4a3f9b1085f09962f2a9f0e590a2432140fbdf3a416b45c8a5b206671e8121cbdbbd89bb35bc8f900775cc7f9c636883e9a3bd1c3367354138dd98913642b934e6189d1ac221cdd7030833c5da24c70de3ee205b88ee357132417e35509624afd510b73255266b23b735c9292540e4eaef743c6f30d8844b044b527333d2cdf16b37d1f1b81637727b1e7376ddf58287d01da6d000371428cdf431995a7bd02ebd9d59f7d2a1cd33bc33026446f4a02132dcfe734d5f8f993946ea932f1a4648df1fe0d76db2f613b269d908ca87a12a3948d110b6bb2048a1780c8bbf6cc5d5385df362fba179ae42a10ff706a106722b41bc17c56d6eb10130d31b5bcb715fd6ddd7aacb536365c5f5c8b92f29f8f5d65c0c68f382a7df50111707628cae2ccf7913174ef53dec3d6ac7111c1bc40264d8e367c4f42ed57cffd874cd7a5c698fa405ae3121050e302da8ac890ff3aeaf5e388e95023d082e7ec4ce625fa3340c9410499c9e1709cb4058edb31ca1f723626290c8912897f73f8a475a3f06173202c154e33812135ac26adcaa585c72667e3c6f20ceb1ef978815d4907298d1821c7a5fd76489ad83c118b38a9cd9dba5989c5ea00623c964dbaf4b6f072b478fe1b13b8f1ebf4b938ea8b4bcfb868e8aa43211e73439ca50e06d3f5b2d9a2a638ac113ace0d1cfad0cdaea234921cb447be52427c9726f581af29c2046e9a4e60905910de2194a624df7f4285ef058b430d9803bcfa83be0b75836f317eb6ccb2bf32594a3ee2765390aed29070249d1a899fc5836187eb65685867efcd75e84948769d9794686afa30ca9500a636a9a90f12e2e09f2bb5b716a5d970efba2dd317f9e0d5819db99f0d041ccef8f5df8490ec13854eaed2f86232c10dd9b0914814bf4b68679d11d2feca8ad67a3863b73928ca8fc2e4c00adc5ab81ad699c12a592566e3e13b5f814e43be38e32d6973f68e7e5d0cc7479fa5e937c889da2de8763c1abf517aa5fe879159328477617980aca382dbe22831a8ef278591aa3e9e9e87beca16b873724d500b03cdf46eb3be3ade2a3698c1189d376fd79b62f3f491cbc925d04567b735d43f8f622e2e7520ca8b9345bb4e5163be6ccd63d01553a148581e1088eb666bedb6cb0d3cf65abe30100bc530fd1ab6aa111f3780aae419e564c64ce6253741fd9800b84add684500d3ca1becb03832b3471448c1bc0251a7e1ecc84928983863bd2e6ae09a5840e9b9cd74ce6b40e78cd5dfab8755bf36b6146732b599836fc2db9af2688cca570c70dd7c7fd4041b9a4c8ff98c7981b1d09dbd009243459864ff562abc1512f2f844713e3bf883b2710c3595e570bf77d180dc47df51d79d505ec4a9895059d5d3702a93f5433985e1b51078199743508a398b2ff73269d3a566b2dc64cd1421c5a7198d544079ab4906cb35c596739e5d7e1f9c212db2278a1dfd2d1c9628f5b59cecf15b6145779e9de4ce43bcb5cf880355365e192852fcc0c85d39db6c5052633428019a50ef7266ab9793f9e800f1455f1fd77e2f90fb13e84af7ca933a65a07740d6d11506f650755dd8bff8d34bcaca2c2764b23d749c116fb2f2688e5abce0ea28f79c6ee013b904b28698a17c8d012e821504963bbb6af7567b12bad96ecc3df7a69d22cfba305291e7b7bb6466bf179a77b8d2481917eb491ceef67cf84cd63b5bc87b26441108b03c8126813a4f545e23cfc0f285152cd5f2f77b93a000008c2ea142681ab1b9f7b076e61cae8e93bf7759a7f2bda2cfa86b9eba74b77b03b53f13f6fdd96681337616628e06a2bcddc4b4fa4ae12c0171063229f1eeea4f28e2fc26a43bcc7318edc608c99b898212c3b04bf85b33abca45749b87a76e2240b987a63a29d29f01c78fd91f3240d915adf41f2b5d80a848781dc060d0ffa737a0c6cfe5b453cdcb2a50a39d7ccd58565a3b6bdb2823cf9d7ec1a204546eea31a9db531b51214547d66e85e590a663f391b0bfd0c67a2271fa5fa6d419c659b76a7254468e80e78434b786b385c91c6f9fbdfae0b1155b87a708e922a0c82f1f0189e9d953deefce4f139cf6d0a8bfe67cb5f6cd44627750c79f54cd0e1272843b5d08dc1e192686ced88eb3617ade45516159b39c6aa65d197dd4758e3b290c17b9112c04c368ba01dced699d28de4d89395a49ee36e931cd3591d3db6f26fe300309ff6cc1d98e0d7f03f30a3b6b8832b77f31f951d89757f1d789b47a87715718f97089df9540beac7d7b05776e30451944bbe9de43bc7ec69ec984301a251e9adde7e83d5c9df050d063728c6f6bc2c76e8906eaa87ef040729cb00aed35830645c81d1a39a1e77bafa6d4f06b415e586c42b5aea4d8e6c6a2061ba0497f7c93a1df188b2d79abe9b7373d6f0f63bdef5edfe82b37a690fd51f0b044cd3192455979a768450f7679e86ea1756434fbe3fb8003f376d28e666fd4728378b316944cc7899b07a01449d53314532ca8fe04007f2c37a5807a53468a433d62aeb4c138ce3f9f33d3ed548e408e7ae0da25b5180a6773f0037422d7eeeb0b449733be27a6ea43f26d101b74fe47be2babbb8925df95e6de1498069be6d067f232443e11daf9b8ad0566c923f444fc7c6705a3fd8b77fbb2ab13b9a7492297d6a2274e4a3ba46efa965094dd4005b0d9a32510a6ac9c172f705c26dc81b702d47166bb8a930f16f19419dcba6ae187ef91d79fad465485aecf38a801b8866e51ea5ff1d93991c556de9d91867052b03ca4ae4552e6f0873f095209bf8bbcbc64dc90159b105be69d436b7095fea150d7fdeba96746178e6052105b11abe7795504b078eb8a647af1f5ad3d2186282ed2ae7886c40955b93448036412ca7dc49f2e562c5afe8694525711e7f6e49b2515e5a87c480479f514f4bae5119ac3dbcd730ab3c3f2f06d3fd81a0475bb1eafe456dbaea87d2cd880c96d34c348e4650cda3329f6a082cf8db220876cbc410d0afc945b0c059a3cdd28e094fb7de858a3aa75fe3f344fb018a121b26d14b970167ddeb9d1eb3ee53e32f14611c05d6641beaef94921315ca760135961f182d1747ab5f66933945e1147ba4e2dddce4bc0329f22ac00ada5d4d311125831a98561d21331e578ed42d0b894597be1172e7261decbe9ffe0a4420e2a031ad2143524c3ff272eff4646acc7eb60048e99c733c0bb7a0fc957995c8e6656183f0e0e1ae552dcd5fa7c8df4c9ec37180a6f4cac16366639fbe2395257629aba0715ac791be689d8560779014b8348d271aaa91073e5f1fd2bb0be908bb68991dd59443d23dec0dfab6e0b7cc659bc73dcab4f708c48aa53b8433e787f80cc8803eb18d6647fa629dee201e64e04be60d32f5dccaace5e1e2fe6742aa695c06d9839eb30121cf5f145bed70e3f191f26abcee01a6d3de849634a4466bdc57dac8e766b9fa66c57b8412df00d34f586fa9c3322a8847bbc0cdcdbc6eba26a3d88589474bd928aca477fb6a766fe375e224ee54d17297146593adb3677c7713342f05059c53154b67f97a4cb949f5911ea2dbe43adbccfd151ce69061693d51aa86f651d981f8a1221b8faf9fbb9dd923ab5fcb7ccc625a2984d59a644c50cfaebecfe76193f69b4e1b410a607418cf09e268fc4529cc8b809bddf0c594f25248d09cc3547aa87d08b330d4f783bdb17e238a17a481fcc1e1a38676ed2c8849ec96226bc24e085b66fcd15fe0b5923690e80a4cd198ac10c8c07af0688d77ce0125916fec05aacf2e792c73fd887ce36b007a650d4033cd1e3ddc5c74c2f9b68502c307790184ad1b7dd2ae3009b155f95253a480f832435e8472289ea454d3762c6551b07335137872c2feb4b824211b60cdbd077783fa8ee0eb49d506a37d77c4606c42d27d6c477d20d4ed89249ad3455d4fdf53fd4122a82e5114cf246dbff360e4427704a7569c26bb477c82731ed984a52e3368f7aab7df25a32c1932f4981a27d4e82e0b61830b238e97e7e601abed437de4a9a009148e865cfbc75a96b14315b1accfd252e1d661cab2818008e1841a5773fbca270756ccd2166318c553aacf82af9504134de4f3cde8992c14c0fada09364993e7de7fe42f8b54996ecff54e722b25fd51df037d4d3493ded04f6507c1aff93016a49e1e0a6e0da42cb4630a79c5aeaa61ee291ecdba09e1fe36a4039fa456781dafa4defa0ec2bb0b195cc0fbff9054fe4442404d111a7a8fe75f61523dc720347fa80816d1280a03c9415234996d4f41267688892b5031a1e344ad3245086bacbdadcf007185c6d95d9dddf94b900000000000000000000000000000000000000060c121a2224",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 32,
+ "comment": "signature that takes 27 iteration(s)",
+ "msg": "c302000000000000000000000000000000000000000000000000000000000000",
+ "sig": "2281ce37d3d0d0894dde142b097455d69e4ac08e358f921dd86fe71a294db8b2732912b1de60cecefc89483393815556dcccdb912938f8469aaa536861d8c3d315b8efa1204e9c7022dc44490ae1fd7e2e9d640b6d0ae8a3a3c01d6a5d0594a52229c8a7028c763f688d3f72e3af83d25a01cfd3b6a7fc31e34dfbba78ff78effec007555ebf96b4d9b14eefd1bd19c66360bcb1e5a77092f36e2d749eece8c89050003630fd0c558bcdea939a53e61ce80ee98842cdd8afbd8840356817731fef575cae80b3eb8678d9884ecc66846c625d1f2d617d51f1fc77fe8bffd994a483689f9f5f05132706308448a3342718d487604e5006d46058fd1fe9302410171f93c3293737e8db35aa27bc901cca074ce2e19c4dce9d029c36553cf92a1500612b7badea5cc4e20389eb01b854dd547850976df5e6d9f74a30c7ed51b2debf80e9e379cf2645d6afce7757c449ed673e12780e2cbec4aaf1732e093b255ebf8103bd41be041df5f0a18f13c8f14097e8f998dffeb55269d2c7f882588e942eba0da32a3a5a193f7d18921ea5c82d7751dd939a448c891fe500efa06632faa47309a8734fa2f700659b9db7037320c7c00ac9b68f1f7de71457289e9b8290d6a203c48c21437aef6adde8ab2cc43170e65f1704aff58af037d422d1519bb756beb6f3f4c0ec653865a354658f305a495d34f183b5e17bac2ad98bf5246b440dc86758aa047f02aed76fa5f27935b3bff953871cd3de843688b13514aedee789bc8ed44eacc66d5b8d6afb80890fbef7c6bd87efe597868eeff71b92820f353ef580ab5e57faf63a762581ef91f864c99dc34d7c2c8dce0ec103a61a443e0c6d78cb03788974ba6a2a261b31ba71f3db05c2c39fc8634fdcae6498c46fa37bca4072e1a0b2c67c01a30b89b944e6a7d2298504b1adf2a5cf00d02efb14b2dbdd1839c935a3620e1ab8dc1c2be6fd05a79af94943ef98b64a8c86e47e3903dc84b7ae6e84caa9b79f2996a015ce6a4e3d7274d43fa71526fdc4d9d9d364d05a2f7f732cbffc9f80a4e5268f9eb57206d380cdaf39b2d64a54295dd31a11ef2f2f4828f57ba6af8ab69271060e25a1d987231d6692bcd82247727a211804879219cc981c1ff6cde51bc630b698e767107fdea768ccd0efa2c1e307bcc32a6ae0483f94a0cabe09e01e2edcfd08445870150f2980d23bad7b5187b0a3eef6e6be018a09b67a1cea314e588c0c41ceaf53206859f1712bde6f2e8e7d30209225de2de928e4d42c34344388feea70b1da1da7b0951e0ca7acb239cf95510dbe0c3ac01187661f2ee604f86db26abaf8113358ec1fa976bfdc0917a28837f63a1d87b95bbffd2266fbd2c50cb6b568782049627731865c43d9a5b6f637927044a49bd7c99efebcc7a65e773aa8e846f4c793d4e9c193ecad8701e6cccb7045b81b3788f23b1b523286f2e6e4c570f2b6c99bbf14d5a79a0faa9ee55c60c4e23e06e8eefef6706babc9a2d0dd3b81c2c8056227d798c8a55de8a49af91f9bfcdeb8683a31e576ced44da0efe91d20f4d15b1c14cf148914b6ea366f676a97f60680e3fbecb29e34573da9d100aa525760eefbc96f9864ab360623ec1f41ac55750af455c0f24d463c2f8b249d49ee2fdaaa7f5c54c9650cf1e94de0e56f04ed2e1b0a02488a3d608f31e67919481d53ceacef129e92b3dd56b199ce2b7df00abc793d2ee82694490ed97df05365c6205e3c502ed9b8f712a9862eea823514fdf9d7b2fe4bdb9754f1675c5b453a4c2ca893d584a014615309d346823169f732fb4ca1c1cd84ac527ac560c9fef1a207c9f35a9f898a06601a5b910971a3319f6c29d0b39df7ffe09ef464a9dd924b86b641a0b66432aa964c94b608c8681667df08027ade6b013173956a73a6787c95a13fc753a7d4b2fc91206c864be82382cc1a1d4e4c87e0d1d9a113bbc39f377d3de28f63df010df89af0cc3ecf30546f2435adf22fa43166dc24f01f441d7d97c235c5dece7108e3601f878b1c46c2ffe75363bebcd293caef5c4b0eb88d88c1f340dc8ca4cbe5552d9136ca1e3d5d809cdec4c4150b86e75f02d0189565ed27b41efb8ba982256bb38ddd04e61b3b77405fc5e5cad0b0ad58a009b68cd7014fa45ce704b3fb295d2f52953871a6ee94fefa1967030f2ee1d031f826ea9102d1701136aa5c81641e2a6afef50624785c8c2467e76f0f903be8bbe2656fb92691cde368c3f9a6fa870f50d977b8b5592922a49c0ae14d82fea5af9b2f7176898869feecdc76b6efb0472a0c24c0e9a2a2970d74d8f9dd1568ddb1a9c7a835e33332236e5065d72bf4522d4b18c7b3d14295a5986928d7f74ca8b63dd79f6fd464c5e0cbd98ccddb1318eb9738f32ed2f1c3b4e929e145accf8502b8a4f3b8f20afec1fe4cef9438ddcfa55a505dbccac90914531f82d2aff47976b8ee1e20f127478447896b3fd2c1a35be09ca69ee75f9958e569b3f4951149d32de2918fbbd3d2b5896f50961d35fddf0517f597c8273fde3712c6127d35d640ea580802ab2b5709399df4ba0e2f2a5a06013dc6779373672febf0381a25cd2924ebb597b03a1fa0f22ac14d77a524c7ab5fea1ccfdc1d55f37252121dbb050555508f9d9fdf0ec12153a48b12f67b6c95ad844a199a623dbae872bd052ab47289a3b6ee103aaed7755accf08a38618ef4d4669ca931d0e14bb8e9ce77e54cb61ed64aba5300105a85cd303bcfeaf167663aceb81eba106ea896094060945906bf4dbe038826e1ad58d1ed44796fcc7a464faddf16a588626f658fe21a526988e78eb129dd0bb4b645b2cf85af83722b4385f535155a1a61af0e6cd5d009f37621b3393b67fd29a171204848cd66797dbd3e43c088c473c26f124f7359e09c75e55bac5b43a19542309acc4b0ccf961cec404635799ca8516b11c5ff7a6348dbf0742a1267abcc48235bb95835047c74cdb1d378351f283e07f48945c7807fb7820564ac2c207f3ecc66ba24188dfb22801dda9b75b308593ab2f96e86c4af563a2c355f7e153901529e580edd95b7ac8ab3e1211519f99a91dbec7873b23b18e776a2904af31fff2e8e100b13e777e5b17f8b35903f9c9558499a1f96a8b8c9f1ac5cfa676a194d86ccbf94eb02368b781c301ad6560210bb28b5173da3a447e8a850279e0b65c828dce1c8e7712973f8a08c4159a9e15364be3d2147896b1a1ae214826df8643b4e573f2af8e6302c2551989ec1c8943be72abd2be35c4ee70fcb99baba7ed4ba46016f24d490acd4bc987c2c434b1dbd8b39ad1dd2004fc7a174ea59fa2f2db6bccbfde2d208e6964b128773eb6eb6d1045df96035c250d56381d451c52503b1f66934d87d449179979e4dd50c6274c1bbfac72161627b288029c5eb70997caf11ad6fc3d46814b08aebe28f40dfb9cc85f4056821d9e159ec9c4dcb586fd8c0d8881566669a8a961e7b40e4b83d068fb80c270f42dcbca2df7bd6ce6890e9024de7bde7603432253c14a0d057ad528ca4f548012dafed4b3174d851e4d2e5c6c168c2417003755bc5a8a445f3d38659c715ab6ab977f1cd13fc9c6f39dd2070b1cee3124ffbfcdb98205a1a2b88ae3fb9f245579bcde9143960f0b897a478bdac9a481f1c53c678c64a84b0fa3240177894de0c4ccbc089f14bee70f762e2480ea9438cea2788e134f0ab1080e34f22a4fb2ddc9e7da057bf0c5614a175022f06b5d126938d97d98fec87c0a917e455b78f314ee56de3251692cc3c2d9b243aa149171a62bc7035e90044dfa0a190773fbd4b00fa7e24447dd5d5722369a74326f29d48c589a4f16c92dec9da8586b1d4af66c4bc0da57e2aae07d00f9c35f031be8256b2beda0bbf06fb22f3da317b4cf22d81e88c050de9a31de6da3ddac483c49c8bca2fe25b6eb87649e107dab2c9b061885ab2a4e62debaf453b683665e7c2e8f3fd5d22b1d4b780cdff2a26b31792f646968e726b9f4708418a60f3f57f9551b9cc7cc68bec0866a294edb9978375241345cbb6bf577268a906002f9600b7e845d36ffae2c7de9d018939006302edad2fa860a4f25cb4a90308d57572284f97a7050b8750b2e02c2f8a9ad5377909ad117082570c9a5da5f512503d78c60621d41964bd12f86c89ed9c74f586b50dacdc4e52b039ed6be06c568782d9049bbe992cc867894dda3f3cb593ee9fa376a3121005b562ce8c7940d4d48960bbd95f77299636e4f1bfa4ac40bab82bc4971778faa924b6039008169efaeeb1ce29d9e44813f22d44b18485ee0a216382d0c83b1b59e34b2dceb294f9ca6cc848e018c89291525be0920f827033b5d9857c3b12b6c6e65627c132c1dc2a5da893860f5ccdf9aa2dc2ce09c45d7d1d4ed55c130bf5400ab60683ed1de5db819d42a199788dadc80e328324f6852c6021eaebbda57e276650c4d06ab792ace94f5cb32b92c40ff5403efed4b94e008ba6dae1141ad079791a3570bfc4f6770fab3fa3d04836ff06ff4ca8127c68090c36810610d960d356568cec1e66ffedc01eaf875a49baa5e5be0ec01ef1849704cb09877a2a80c100ebe7a790545e268af2f1d70b1c22375996aeb4b6b9bc325e6f7ff5ff4d6166758b8f9a6378afe0ffd8063e3f505ab7edee00000000000000000000000000000000000b11181d1e26",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 33,
+ "comment": "signature that takes 28 iteration(s)",
+ "msg": "8f07000000000000000000000000000000000000000000000000000000000000",
+ "sig": "17d5c276a96ec04caa598377bb8110226ddf85feb0dac0f0d3a4bd5ca33fb40d8cd5d752d889fefa66c900bf6e909ac906516c9e813875e758663c7fd2636ad3fc89ccb7757c0eb799010367afa46a17e113b16d546a8f8ecbae132efc625e3bc6054e3c900a174b6d47b3965b3178d3b72b0472f37d172ad579de128e19575fafe7ea64ea116b63fbfb4d5b5fc956bfcb6928b8db0cc7c5a889285237fa7057b3423cc7f7b950f834f7e4a7b168ad00e841ee13d382462df9d5fdde517e759d16e48963f60f117502b74e97f680bcb4ae2c35af009d9bbdacb794edb131715470153a0eead1cfeac73f8c8cd157cccbb17cd1386f65c4fe09097567794e2d7e7eb3c358bd8b2375f8f9d0f32d28bf863599939ff8fab29401d6acadb1b90f2bf1d9bc26221c67e78472c7ca78efb2b4ea49dee8489c01abe9ee962277c34805c024de06414c4ed63370ec5090752a6fd19cc36a50d3f714ad58ee060bf67b6f4f988c35d5cb1155f702311eadc7fe25ec25adf929033679f5d0058a45dcb58e8b4079b374226e26003e5bc5f76eeea6fef86af3ae91f33c8c359e2a297a69a105817c7e67a6a00a4d8aa31fc848d8c4f274b3b5ea34a2817b515a2050ce80bcb0c21bdb81f0515ee05633d94feea1de19534ef33da85e5af0d4fb0e81e4088a981392f96f70dcfdf0d0b9d308c26120e8342f8b6107cd0bf3553554e4deff879ce152425e4eee9860025dc4ba9bb090971903a0db863c043dca4e8fe35e9a6b0bc26129e18b94935fe816fffca11357af56ac6c837f0af36da11e4b43f74a0ff2ed62f18fd5c02c7a064e649031c2d8f22d6dc1a1b94f39d3065447abfd9714462e137bb92b720091477ee1c1c1666f4b92d6a8b61c70d49200c86e8cd9de65b209a262cd0c6e6774810daa62b16054d6e18955e4a92d3015ffffc7584bd5829c040ace9011d5056bc914960ed785b2225aba0eb56346aec0d7bdb1a3c73d1e39c2a395fc874cc56648951a98549a04eb71d30e38a90d7e545fe92c82a7663b10f761eaa01e96edcb799fda895f9fe14c3d0ae4922f34a89908cbe60c107bf9d8055e050d08cdeaefdeca1688a7b26e2ba558650e90b24306e575d046e1f3ee2d9c3cf159bb20d711d26c92c11735a50f40184c97a2dacd02a1acc4abe4ca286e4c599b4d4b5674eac6cdd4e472559d59a13dde5d4feef9bc47d76875790c8036dc29448516be1cd56504e97acbee7cdc5273ed3700aa7f459e1c25efdec86402f181664e764866d8eba3adf852b83cf135ded54d0eca77527870650da0f2851bb4906320808d302feb7e0f9db7b8cac98a62a0cc7cb97e7f8a7ffbfc38a477a201719d70172e59e8ea89c482e61633f9a0a3cf672f6217479958aebeee3e6f06ee8ab9f5e9d0523272c5164f1f94a3711b3e681ed03c177a692819ee56da4059ceb171af119c3976b197f005fe8622e1b4415f358fb34a73215bfbaa53886ad84ff57ccf42b7d57847a26234235ba0b722b89f9963446d67dc719bf8de49f4dedd4c516dbc1e1d74bfdedd36479694a9acee7dcaa7df55f978d38da1d183bc9c0cfb049c9f7da0821be315b6118d3387734922723ba4919fb703cc2446bd4cf30c1825a8bbe7daf08219ac5c1a3f897cfd7f66e77de3d0a0b7b73f1166d770b9f7c0c6d41320994aeb526b6ddd4afa6dd10295dbbc5082dcd35e43ba91dc972f78665043228a14d75cb666e503158bfd4c668a29d358a5b2e03fa1cf5bf15aff4890813e52a2358ac79174273074c118b63cbd1ed85c8c3e9cc7ff5c1c9bc92b848bde3a7bbb74447d430490b6bcb86158120479a02b7ac3ca61a07d76dce2942b1fc09bb33972695c0172a66dd4fbabe80e333dca17aa5806eaad072f4b17300135ac118f943dbe9041d4701b424d1f88b27b8eec8308a5bd153f7949137deee238c833c57bfc12b87bbafac73e1505d0e92e873d53772f29c7c3a2e6ba4e11f825d631a9d1caa3e3f8985ced7f49235bb907c2074fc368b77bc90b6d1e4cb987088518e054f767127361d2faf1d5feb35cf9210a92a4e3ef144bcd45dff7e2c2757d472d1255549db29fdba7616f9f9c0c472c0f4349588f94e77f8f0cab52a50029b93c3f08473f512a27c319d45e9d6b52cfada0adf2dbba6db96b326c3594f16880913cc6c1b3be8f4953d95ae5096f03a4a1224135e2bfd4b5b429fe564405dbc2ddf004f36bf633e977887915a44105ad2652fc17c398fa2e7c0eba0f69fd98baccd64875dbd5f2fc660af49a5b50dc831f41890872722d7cdb906879e03ebcdd321a0e81478276733bc121016df6c9a3d1a574a9dcf6ca489f4c82058ed0002c367c92cf87712348b7c774baacf10c778db313dc5c83b3e0120ee369780827532a52431faf43b03585dccfe97ab204c33fb2b98c9531c95f6be5ec435b0a8aebd7ff4310bfa221be76283e7534679917199f616e0e05a49b382cd26a4baf0cb0e1053fc24bba4dfd2636680f750c9c69fb34481ba0f62d106937ae7959604ad554fb2ffe53fdb926ef5a589cc21e5adaaa7ceff3e2a8ea8606eeaa79a05c6d9fe2cc674eeeae2a13cc716720472b0459e8fba3f0d77d60ff3e48f08479deaa1c098547da855b59fa12338baab82ea960184b72da4adeda15666610164743db8701f2b6da9dedeb2a147cd1e4fa5125e8f72ef40f14c88f73fffedfb6ee327c8e20708dbc0e4eb8b7c969b11ef8ed3b63c55027773b228f08c3dcd2a24feb716bcef64b5d2d34302ad721f6cc236c6694756990addcbc0d6d35a6e9a9445de640ce02ce9f2b081f09774ae09fda994fdea5c63b7aaa37db7268c56e11898856e94768e47c18272285050a1c182979a63a573c17b747c5393b8ab21dd17849a00889c11bfe28c60d1d604fd716202949adf2bf49db903841f4ab64bbd7af3de775f66f219e40a6a61f5c2eef5377a196ad8c7837b4211b531aed7c9969125994d6ede189f872f24dde4b92eb13f027646ede13d35d02c58f5cc094ba76873c817367805e2169011760e22b8dcaa5755180cd99c7e8318ff61bcb7efd3ce0303ba669419937e0e41bb4bfa960d773a5b73282919dc9d70b3427942078e7bf1706a67ba52f047c8795437d28bdef9e78e95b3ed9545177db31920d138454238759cd45e7cdb9c4d6bbab70654e2a65e1056c2ed98d9c601e13a356ffd254231c867b81b0f9ade2affe15ee88744629eb79a5cdc5ee4e485d663bc72cc1faaa61c651cdd2e9632019a747d1b342b1f493a1395b82854f888393f4f75907b2af70defc62e5087f1f4899d30f4a97581f009caf78a29b20cf38eddc1cd80066b1727880bc936be866ee4a14c994790cffdc7dfd977d9af1c3dd23d5371b8dc6c2a3b043e8f92ac954e7839e1b1934ab04b5f51e8c650bdb4357c2309b657ab2b968430b903c363532c8ce386ea00ea8f8cf9614884ad42098a01a4c054853149a5013664f5bc69c3bf9c237eafb9e97629af355855936f56d0d943333dbfd401a89a8d3b0f6ee8a5c7916d887c73088c481ed8963c54517040846fbba24191a1ed20c09f2cb2a0032e1a68e4a922c2e1bfa51ab6e7326490953b7a5a1197597c7adbeed7b43d6329c9969bad56140b6fe5819e5915ebed1ebe120970639467ccb2c7dc5c290ad0693aeb6ba1a27a416b3e21801ee1f239cf179a9258e9c527b5e52103e7ed22f67789a030530a536d90cd8b6e08f389921779ab97fdb4129d07a3792e4e1a64528131c38463e6d576d554f87207406e1587d6cd30caa6a0de6a7f0254e334054cb9f39430ae1b2faf0641908c09f3ec50ed1ca74f3655457c96b1e29287ee075c219c82c9fd2ecfa53117c97fb46f8398dfd351cf035da70345999dd6b0ce4569ad448f6475f343433848e8bf886b45cf4166b63e1347a60a66e05d76b6489c4c1eb621e50ca52f1cc75a9f9304b6d546240b28c986883e2a0be4113f8d615b522ccc40569978572264d277636e82428af59ceb8c2b175b4d3dfb053cda248ee5ab5e44b51d6865271c9aeee589e2b2b68e16f91be8dea83a5144b24f5b410e48877ac7f1a734b45c5934589d2f5d5acab37638fe9a5c52004958be19b731c5d98a3339df150a80e2c6ae6ab1e6669065e9eab2d2b1b4e29edaa919ed1b1462f02b7da4e651fca499f6c114434e1775afd9d1c44c55ddfd5f7936687a8cd6fd2ae67daf6160749d146c5fd1eb7d73f9cbe8ba3d4f50f98da9e221d2d5284c8c258d12966f6faa422c3872021d71018839557d80c7d7bad4929af61bc195b34800c7a3a18a9935cbe648a383f4872e796b87b462fd585d14e8ff432777c798a431b56714e5ea4a44b1f049435d2e80e2d7e378c97f8c289449919eec2cc8f535fccd6f53379acd16b55db0bf7f4f42ddd3228430c3aa89d632e9fd76a9d71512537b3984f56b11618fbee1a79a5aec4256c4bd2d7b0fdbeba2263934dcb4319c850776fcbb0b9e1ddd9da387241b0d7a54eb16147d0be86ac55c35a5a2222827339f73ead716ade758ff346d3f981fc5e90bf2aae42cfdd059ee634467d09214239119ab494c0db85111333507996c4cee61423264662b6e2195a666f71c62d8c9b9fc7ecf6020858eb4998b3c2f000000000000000000000000000000000000910161d2126",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 34,
+ "comment": "signature that takes 29 iteration(s)",
+ "msg": "2001000000000000000000000000000000000000000000000000000000000000",
+ "sig": "d3ecc39ab0177953c2e5afefd2a75e55e7795e49c87a44706b7b4964bb9f9255f4b24b92e7401e86f5b79be5dfe9280112599526d7421d52c9d9d49626042b94ee4f2ad3295f4767936029b153c5859ad6c119b9f35504ec3fd0e002cdd67764aadec5e38b11d79d458cd290ede3372a41c7434f285fc4ee45599c02c85fa99b5e0b96fca57f07a494c621530be5ed69598c2adf48230caa2129c470052c9047ea0a622b15efa8c9cc5b1e8c6970b99fdd7281273dba1399a319428f79969fc0cf07785f22c6eda6e768ac8230e440c8bb05606a9cabebfd264d1316ffeb9d9574103a70ab3cae8f22e04c3bf97b5bd293ac496eebf9787269e430f4be6a7591ae1fae037f76b14af90046e6ee0edbd2314fa16ac3eb69d69d803492cb5769ec93fc197d2302fdd46391a724dd51c59229246deab0809ba4f1999c0fa2c85e462c4c26138a4a9f299bb25eca43657a7afe4a1e420faf756e3bfb77900da25bcc183bbef7413ead287cc539f03de4f56c2ffbef8312b5909b87977f16dc0e65245d4d1069e46bb7614034ad73acfcafd64226b692dcc03e695bbc78ece5b1a5926a346fe5e8aeb81a3841cfbe010c69c9b06a0b5b81f772f8ee7248572279d37e325e17e81ae2479de6702df4d4c376be417c859921c7bef00f9b22bf1c3f56c36ff9475eff8462102f79c75478697838b384b1c57f842780a9be46d3c4e6f7c38da187945d283049d8c0278f3237660e612f50eb73b389580f740f05382a732b94bc7f3189d6cfd2de2c6fdc6d7d57de3b897df45c44ec7ecf1d4cec370d87f4cde4ff470ec42df2ae0db86f172b146bfcc00b34d4672cd80b06e74c5b302a7e5fa7996d930cf821a22432f40ca9ee7f3b0799c87ee1c20ffee186c15e73d32fc4a3d77853b0c3caf44757369fb5956158315358269b3c93db934ad24e0bee4b323359e97ba982d78873189243a0eb5d7760fd842fa2c04d52f3ea45f99eff1c236d833bbc8ecd88604b7e33f8981fdcf2695069f10d8de32fedb94f58fb438dc9af842698d4651c74383b63e2d8925211e02601b8642d34090449ec8703040ad0e5dcbbdd46db0f9e2f29f590b6688070cb2c868d41d3ec67d7305ae6a0e39d9383df31e30aa8071e481c1133c8420b3e5a3d7a2681f490039717ecf088b219258c4449ac8fed4c40c805ff4b77d7c28d0b5a0c8cd2d19e2370142a4fda7eb0dfc9a84cee9e4c845e8643c8108cce254b716dc4b562fd2535712ff840415212bed1fd2417279ad11b743fe2895598dfa938656b7408e5b1497fafc13fd12b3fade0d40a0820f81c430cc50ad677bebbcdd74ce14682944b9e9024d681759b4793c246ccb7ca40d889015f752f73f66e60c61f5e0f459bacfc2c413b0c4cf63fc2b7bac814ad822ba4caef6d6b7fd216465efd0cc6cb4b1a20fe66157a8853975b1b2c271fcfedc2912d1535972fd00f4d37a5b08619e0abc563ec994cf36f5a89cc5ca6fb244d283599d42c6a21767442282a4d18e39e31604aafbe240e48fa1d7a89191120daf5df393a9b115e9867c336113c45742a90d1d4113c66891ea46871d822d95197f077e8438ddc7eae6c33dc4013562aecde7a0168f81afaa2ddbed3e2cbb4810859c2fd5a3495213b97d6e5aa7d9aaf6ec2118b6ae7c500ff3aa12e5469f2b58fdc9099eaf8ffbac111b49b913622289c81f6a690c4b3470a619ad960bcfcd1582fa9ed07b2b9c839c78f712573306a9ab454d7915315f1514053923dc53f7fd66cc142036e49f0bd58e708862cc263734ec967d5e4054c3be0369565dcab83c9fab99219aaf21a168e72584083fe2f46fc477902b7954dbae30b668db0507f29d4a64ac358d3366abd0b7a9e8ace99f9b0d16316ea74739dd47a010bd6ac51a9142122ab699181728ca1c381a941516066ef624c835ee0df7e4f202c4677417953775d5fb252bf8ba53ac17fe2f1af324a168959f81567da9e73c3bf6bda37d3d53d9b58efa392b9dd81c5827d5fcab7bb4ade73563a26d83c8a535ae23339820c153f0f79b1f9cbe2b16cda032cb7883d3ae368859ebe159c0be2ecb5b11859d27afbfab3df898a7b90efabdd58308ee3f099ece6f7fda1fae5cb6ed55111fd4d6cdd9015218d830162cbf03b5c4cac717de09dad6c0998b501a51cefb76c4b0199c58e2e316127aba37682de5c04dde16343a33e4e5ae3b6295793992467cff5e8e6132ce46e2af6747f60e4e91bcd7a143d1f42c8e9fd12c68221b067e7f8c4b1d0c30234657b7e4d64c2016148b84287258ebd1f1639bb8c517814fd9992fcca0c15633148d7ffc8c8531aa0bf43a23ccdc423878b58f71dc57fd617c185f62a51d57aa938b95a9fd85c4d2c7da5ddfdb83e14231a1800ccf9e755ec4ac01970cd94cb50681137a8f00da4938021120414caa08fe36bf3e32b7e660402cdc663e8cb4a9392e10c764024469f6fcc3b10779f0cf3d7beb160ca7638b949246e679d534316ee8d61dae3b321a37786ede9f94dde73f88d5e49aaa40121d0ee9b16e8e1c56aac332b2bf503816d6e22cf50d798e3fd4bdb003c5f162e61c887a0c3fcaa35140f3d718a220044f4c4c581db8ebb167b42c2c9ddae5ce89458a0ef92d7e741b1fcd295d49698eca399fd98089a0284c33f13e715eb19883c42af2b54995f17a5499340a20f38a109d218cd7bffeced7a1d16f3b2c4636e84d580cb8c1246ddcbaf1e7f5a52c5ea48ee90b46ff64f91b65379fae27d134b5b8e284237f96389ea2a94c2fda31abe211d02907dcffd8ab33f9a4badd34472bfb22c5afc67645f38da26ad169f699f76196f5e33087e15a38ec615ba6547b38a58ef56d81f84dac75528b5e70c88b2099715322771eea2d741c39047f5e460baca9ee95b2a19b2f5bfd988020f918e6b62e9cd405c95c473bc1b6e038ea2a07d997551488490a15e46f58f8d6fd239cd0991b6264e348e9f1c6cec3348eff7466e7e48e91aaeb9c645fc690f0a89bf8048f67a7d67967b42be31b9d53c5c92dcecf1e16c451564a2d9d7a34e3c1c7f17f71eb920aa8cf51cb609a4af0c5b6c44ad4e3ccb8346f7a86589d05be01ec908eae69ebfeee12d7d05c431c7ec7ccaa0498e899aabebca31230919861e881f948f085bd519407be92ce923ad6470853809bc4367d9ace4b0df2f43e208bd98ac18a77d8fba7fb16ed95ca128db6b52c12d33274f9d169d2f559545e40e3ec97c1a779f04ce772329a4fa09768b9681200ef3b999c6778ff606d6d2600c4651da56c6ed88d0b2ee4a1aeb7ec3cf60b3762ebcdd9111027d3bb2bd07dfdb01a9a551a338cdc3b1cf03ca36c36453eb60d66943953bbc2c10594911e6fba766020fa1ef62d7f2e1c59f7e208c1dbbdf4dc27c0a4495d299d8c84671bebe8e8647ec6a8acc6359380dd15c26d1c262371d9dcc0472202da4d8bbb828a48f3345b6939830f39fa3e570ddfd857f47f839af31fa152d97aa18092e685c6741efb93c04a31d91140140b0f34985a4a9ae4d960bb2e151a629247a79aeffb8ae91273f8860dd817c1760120a571da080f2eb41b4743ab714ca418b4645fdfbd755320d7eba610684648b3c9d25c0abc245fdb86397b1eb1ed4ffc280527e20a6cd7751cfe6aa05c836a4bfdda89ef9a98d947d316feae68be99a6e26819255cf1d20b6f5b8c2ed24df630b43d88da5e9dfa82e980f75f8e2e1033aef4831558e93bf89a103daaae10c963b85a0e2cfcdcf0787ee869cabf8c8ad45a9857fc8d6c467439ea0a0bad13b7989805b81c3c69716e74f78d8c45b105e589edd9f3b2df2b94d79caf99431b85c19f29e72e7593c61e93655109a289695bdb38fcbf48031894ac5e04519f101a7982e3c1b3bca79d49e387043255908e55d3e268da93e07c894251be04dc6ce639df29125d69e7bf6ec910e96b85c9608381e8c207ba05c33dd7b45b43bbd1c410983028498bb9d7a35e8df7e4567a6c5b497df1436a9cfbe0476fbdf72f4657593aaa11abef92c0fa8ceef1e47617abad895b32233376254ee97420970ab413ec4bbb5386b26df0dfe7851f0cdb2537c0a4e184b7b3097884c4ba7ebaa5c11fa56059cedec40f3d6cf982496566a6d29fca2b1de8efcd131889472948d020d45ffda51121d247611bb498f788adbc3b43d893eb37774c97956d438f902522ade3c18ac82ad9fba333cabd2368dc4c438d2479de45795413ebe3beb1ba61589287c55a6f5e07281d0160c0be7944b5209836b7c81dd88935c922fe9c9554f5ad6301d12c2fe3be54631c809ecf259924ec99c9dcc3bbe0be8d5f4846aacc352d56e882ef62a9645a46b0bb8dd2d5b4de64839cea783b86205b81ae419eabf66e5f70074f4ca5c12b946578fda9465008219781741e43c2ae047a2f0bfd54e37bdf22eebf5c1f7bc2cb8988c7d6a73cfc78eaec7dda51d6d7f6377f322f07e98243b71cbf2187c318b652feac32654b4476e9c2a5b07eb9aa7dd5593c867190ee9d896d549347b59619649f01ed617a01f35e847e9b29b3a3d503ef8d89039515d2622c6b1c0237da29b3648faa88d43008dbd466381102c31353b46cbe4effc4c7a87093cd0030f1886a6bad636396465789bc4cae7213643508185bfe00000000000000000000000000000000a0d10172028",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 35,
+ "comment": "signature that takes 30 iteration(s)",
+ "msg": "4901000000000000000000000000000000000000000000000000000000000000",
+ "sig": "ae24fa5b2e13f7ee71d55906b8d83994bb96da7b88b98568987fa7ffe9a72544552d227e935844c7b1602ad91fa0e40ded2dd5ea2d25321eb4f96be7a9e167718259e901197df2d53efd428411a073346cc9e57a23c687adcf5864b001237d34c0de91cb319ad3cf698f11fd2ccde9a91aaf2891b30f0aeaa24529c84134076b014b410029cff5d4de892bd24affeedb4972670b12eb3ea3b06fd6c91ac1517515c3193bc2953fa5a9bfe173c5da8201da2fbe320d3fd2569520a16342a30da1d78181bef31a5aa53d2b8ec5460584082dc93751ee7ebeec1108cb60f5e7853e49e7db6055df2f7cfe35fce2a2f7de367dccfc980155ff080d2d7035679da1b7a83a4df8f2d0dc105650db1b981a744338c3512ee99abb78d278cc2678add260d9d68db7e2830c35dc8a32124bcd99c72309e47ec19d3d06507ed6eb8f7aca81a9839361a89c81d3f965627582652c97b00251533a3cb6cca24d492308faf7f685929ce463cec39ae77621644e8d1579fb3d208ef0e299d11523e4b631e011317f78c0ebc1bafc8c9b158168466158b1334fc6050a582ec806c8dd882f21ffee4c884dbcc5dab1d69c2efb45e4de6fead2f6f5ec9059e4b76b2356466dee3d8e0f2eae27a2eab778bacccac670e495ddc9a824f506c5a6c2a0a024f74530ef5ada75547d124a580572299c4705a24e263d2f90f1e9121726ec267c47cdaf31fbb0c5f0a4d98230fd3c4dfdb29ba2b6dcd7c12c9197f1520c1fdff81ce570e9b3c7693fa79b7154528e843443fbe1963ed6964a4703242498dda72da2d843e2295dc633b2d6755e4cc5154856b208e02184aec24cf05a00336e4d0ee4f640592c9b24777438eb9ae28b783c43ed5dd500e2eceacd2309c9f7356a4b276dbe89b69614fd749fb4181d5d6ee45d256b48a55c892d4df68f190ecde11b87fa650262048c99b00c3e894eb3587d8905f261e47489938c626fa611bcd6d28fc895bebd72059f912231404a56a238a3062f978ffb925ae0aa03ecf3be140f1bad2e4bddf3127bd8904186832181a00a8cbcf23c0b175544c1e45d9c3923317fe1bfb29d8c04c7f0a08e3f6b37da851ace7e9bd33392fc06fc49d262d1f8b4d80174d43f8b7196aa262bf0f8f25b42e13eb0e827096f2074830464765020a51b074853cb8ee88d229cf91d07a1c02de057564d3ee5125bb443f7b981b429688eee5ffb82c972c14d3b5237fbe4ac5611784223ce00f11fbe4636519f3ddda9893c87dc942eb30660c816444b1dd7228a40b907c9b3f1a46cc166a75dfdedd6c76e38c89cc1537e63cec449c44be2054be2bdb0df0169f7be37788f4cf8f9ec5110029aca9e32f76ffa2b68db9fd0480490f894e93a66bc9870a17c1b9ae0fd477db2197a3da06015ff9cc172f6b297b5c79a4e6943df6384a737f64caea0c5abd7a799ede4dd789bac30d7846b19ed32f9669de319d67e7e4a61bd233ac77e9da19696c9c4a791fdebbccd285dd4fc0bc3af634a9556650e4c730381075050ed834e036b25fa9125d262520dd095b7811c7f4b33c82171ceeaa664227502b0dfd3cead3593b2fe80002754e00c20c65c7454ab8869e014c3a635d9bacd6116b320f487bfac58b1d4620542ce4f9303217b7455a9a0b7f92f93334b2bbcc51928d04c77e2fe376fcce692d7c36d17316f3f85fa43c994a4b672a1ae2ad8555331132b35cfb313daff67aeb9fcfce5dc440bf87062b24f9001b857b735430826fe4bfeef055a7657269c352fce093270f1b1a7241ef8543ace867fb142c2c78c4a1fd9bd094d8810f3c5c93dc9841535aaaa573b50814df0815de79cc1ff7dbd3ae869f193da637ddc5ea4d8fc88555364d612c3c5ea0230df9f75732f8decd035a98d76aafb58b5ba98fd311561aebbb4f161b3b78a6f64000972e57684ee68c9af4f708f5126692ab09c23866bb6cce9130057a99901647de175734d830039f21cae68133e00f7c0c13baf9cc8b7b09281bc2902b4f1e5e17493554fe7a02964a2d020694bbd049250dbbae5f088b6127d2845741a75249e163e8107cad459b68b52818845a04dc373d475f25e236f72f4b8cf883f4a25e857241508469a2c424ebc06450bfa33dcd2c342e0c3d170a06e0c8ac7ef2f5efdbe57ebefe1782eae6a16c9119e767248abdf2a3fb02bc9419c0de7fb8be0b8dc07afc74074d8d44cf6adc0009ba73058602c2833f4d862579e8b6049a42de92cd76da08b3b8b8e442a832b0c89238e1ecd862f629c691c5ce627e0298574bab49373710d096fd06f12c1d131f134bd3c51c48abc06371a8c48ab907aeeef68c14eab063a6d99c9ec8ec6c860b97f43fe0fdfb95b91a4cc0757ab27ea22ee30d2a69704c7526377b66b9b2c139ba52a7b5b03971eddfce00d155a26ecc56093f6834726e86ab6eb460798ad3c6208483c413562b62c57591b44ebc3dc623f01ec7f622de28ce0025df34eb9f669ac95e0c76c0dabc8b084230ba2ef1f11b5db27f34e7755656be244bd72d1816f33992cd8268bc94ff8e9cee4ab0e34083e9ddfc4ee1c5f0e7a5a8a05a0b76863f4b637aacc8d1bbd87892ea844ab3368a176859eb48b2f6d3bd89c9f4276a5cc1924792fe3be2d1031f003107fbdbf737392c0ed2aa950b00e9ceb0bd4bcf2964708e17340e2d314f7cb912b9a4d2d45117030f81d6e3746fba9cf5886c94638f1a53f0ce891f0b88a33538a311a7da219814e450cfff5e76b4b872dc53a88f3441e12df39298d90cd4126987a56c1fcac0ae94457b1dc8d2ede35c5aee0009d28865f90a1a360d435ecf71d6d0f60a978a69e5fc75ee639d15b0338d4a39e12c09870caa4bfa89989ae7c0067d8d2e142d6457ae900218c524c074c9bee39f987f040968a57fbffd0fa7989feea3589d68f0bc281cc4f7dfc02441c631724e480c7fccff312bd4f3c3eebc3966780e2b719905994e7cb66283b313eac6702521a919994a1d1bd9616964388ce9a7f39527728c67c7ea0bab7f85bd13af7c4518f7c58fe963ae6e813880019f7f4d6813c74850385b8f6b9c0370728d248764855fb8281a5e5acab688d39b7f3e246dc111c3b83c187d676402163bfc63370dd1fb3f496e4617e6503f6524d8f6ef509e54893cf70333d6907f5a4f3404fac891bc6daeb12df9dd16713da93982a4d85d26c1b1ecf2f4615008b5177ef6877a980e1caa9e9b1d53db7c4b2547f6cfa4daa908b292d2f87c7780b48b9024487d27ae1172026a3cefdf92b8866dba1736355b972d663c376aae45558156e9ada92c6c7d091a036e78978626a679eeaba0216fa0eeefc1f60887ef9e80107f9fb46e76cd26dc7dea30ef1ba91dfc2fe431f7104df08e99ba84943917904e188ac3079186aa472b1571d3cc4de95a454eeda9b4592b9724c9b4cb768790474a716d47b7c46ef9bc486cf1b3231ba38d3dc58136b1c164aa9f4299ae99b3474cec84016e9b7b57419a6353cde8889a5f48de38bed8dead721c2ef3871accbb94b19c8c0112c4d2e7b2fb1cc92a144065251292119c74a0eecc47dd8b252a44f7668ef100a5b661967bd5e9d2dc386547a2c73005faf300b147b92140460bfb4c29219b411394b9e60e20d89fd02567bf3568938a93e8025e0c1c24db2614293c5ed62b3dc75c9eb6909578afd590aa11ded16ce367769fa3c20cb5e068fc6470819804f220e2008ffb516d27a7857d5e8a8785097701d056756e2141142204e13882ade1d97a0a575fc63152a39c44f2da987b027c2fbaf41745945974c87610cee657f76c9cdb086b9ad84b401739912ca96bbfe3877c17c74a333ff98e52be971300a095c740b5b093edc6ee473b0bdf0599656282becad7e114768236f1a2facdd2d1e085e88d375be393412fc14c646b9528d09def2b9a5ef44cd75d3356bc10f1eb4b5b135bf607d32a0741b7a77b03fe44b4a8f21d2b5190b01dd04961e2b3c599ba6c8e175116af78124b67085d5f075d54f1481728e60aa4a007f7124dbfb03225b880893fd7de61dd8d31953c988d5454f973a84c4bf56f0aeb7511cdf3c24bd715923da359afd11e3f4d92b0a17bd88e8ad22e19d0eca5014d8f16d0ebbd81a0dd75f32f2a7cda47b8fc03563d5cdf5917c2b4dda39490162dcbd37e87d9ad37d75369e02ed8daf73904ab802f9b41495c3cf3e22096921e23e6abc537462ef71cff0f365e2975f3a3a5836e5a09b27d72dc4b30f8c67f33092ef288e5eaa52f62ffdf8fe7130c8dd93f99c530c0323019830220d37fb3f716d62bea22914bf0114eb0d92b9f3a2a8f1764b61b2f89d40f1780c834161e5f41f75a46c338418e5738d23aa2e3dfbf580fa7147a42e6865d13a69eb6b79e0603d1176354367cbdb4adadb398b7239862d54403118ebc5569f0454ddd954a2553820b3cc2349eb234714cc618fcdd6399aa3836228256d418f80e96c26ad07f9035b7cbbe0de919c51cd5c8efa7338483bb4480d21a770200dc0802aac83753f882c8fb555bc01c3bdc09e3d5cc2c10dfb9337ae7ee9868e34cb671a0d4f31da52eaed9f6513b825467de5f2129b79b007524f402e3940556a6c97a5b9e125495173fe0b394a6898c337999ae10683ec151f3cb5e6000000000000000000000000000000000000000000000a0f15191c21",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 36,
+ "comment": "signature that takes 31 iteration(s)",
+ "msg": "3308000000000000000000000000000000000000000000000000000000000000",
+ "sig": "5057aec74324b4d5dfa965882d49ba03badaabd76d7e56d1339d35893ad040fe52deb881e999796ac3ebfc749a6004b51ae140a6c0f3105c5b0824fc17d253931e48ead138217bb5fc3776f4695d4a6a34d387856372add58aec8ddd81442af399b0be2c79c2f4ac6fb0daa61bc48c1731cd818c9a421e6e61ba1228e9a66cb5d6e72cfd79dc144ba3a51849814df30c7f9434afb991d8f824d42c7c42a9c055211bd69816862e462ca4897e8661ef3a3147f362e0926fda48deaeb0e7062837c071b6f69b880f389ae55f2e4c80f4ef3bb116490035fde777663eba8a4c7e518b4721988539708bb714b1cd26da8702bce552a3b905113f3edbb6b77dac1427c0166a3fd46ec1c4ec3858c4b529145e1b9f053c1904d35f0a114cf547ceb588d5d8a5dad2880a18689e439603586ad119a04e03ddaa0188e6331dcabcd0dc223c469dc32e041ed18bbd1676c7f05b731b262a0c0a00e86753b20c9dd3d5af52c449b9c462626de5bc59cf018ace4ad9892e924f2c9af15f013710c31832609a819bf99b09b14663a9f4b0078335e81ab50696a65f8c151301cbb16bbdd3397eda0d11e5d56d62265e49a78a34e5e5bd9893fce108da77d7c17b50abd1f91fb9b7368084a8b2820eb7ffced530f7e4c78c20d1408e224ea17a19887f4ded7f7c4fad037a7f566013c082d633c3e62ce76599a294fef294f79334d7aafbb8f8b5bf3b9b58a82bdc0fe49c73f82ff86d87d9ecd2885476f9755e2c270bc01dfc8344828ccc3ceb88423e1d52285e60cc140bbe1b97cc9ea4017540e7078802207e94a037ddfdf0b681b433bfab0930fd1412c1b36ef643df0f3b3b00c05669dd77d37536c3f48a4e7889b365f19d2932e146f7c9702be9aa88f5310ad738a1699aab1f02f7a525f212bec566cc34a10d7c82e543efdad640e00f6a380ec319f1d48d8584ce5cd6cae835d23a099d91f0c42c0d27a14cabe283ba043401ac7dca1e8b42d8a8c37923ada7ce4bcbe0453055cf83a1ce54366a794e95f62e3f6141f3e0fb78eb181138b77c0474a0e300a7765603f35a2523b6618cbd08072ea8323af7a714d4ee6f64cda0ea157d52cae5775f9656aee2db5728369f9a0492428ae02efd457123f4d08d92a29a9d7943ed38b0387dfbec6dbc96732d29caa78ed8765947637c00fcc028d676d8a9981ca97fbb5f252e836e93aa8dd37000d43d047c57009bb88dec672b77d8df3dde4ac85b01773dc00a43c9fdf2cbeddc04ba3798ee18126b0c750c6d40ec0ac076b8dae0d5aa71b3e72a71603c82083267849b263251b86ff5fe1cca0ddc3747a353392a47ab6962c15e005b2578094f9f9a8097243dd15110068f941a11902d3148143cf65ed30fcbc172e7f016d629f60a584d9f4a0c539561714f1df67427331f3c8395f559afb56ecf7c5702fa34e923cf1da8280583fef6ba1570eee03dd7efd9b5add767169ca11a0eb538790afb05694b2719a9daca1bcc31de44d0d5946d1e1565d6a476373b42c9f05e01b9d39a921857ac666d190205744061960b94e59c805b0d840a140bb48817deb68e6654071e7b56696f30a27368c36377ec8be0e4088fd23623158ad7cca215c70b7dceceb220de0509bd3ff530e2e7bc1d3a9358ad13794a5fb2db6c73965915a193417cfb63f3cc53fd48d94d308f27efa2c2c096a14a1495244b437b4563a2eb65c7b906816d205e02a465b350dfb7b88403689c8930d5898f41a4268059b650237f60421607440a16ab8b0b1067fbe9460afd8878742a73914c6986ca5d45dc516665dfa4fa99d733865fea4cea28ebc12d50a4edb7c1b3cb2cd0dcd0fdc6acc6f7972dc6a8ba3b3c13d487c1c1f00883c2c1822fb58c684427b837d457e678a79c0de7e7308481721d9295dde258d2f06159c98e2f70a9be35713ecaa35286042d32e85b760fb79147f11c248790a2f274c09015d43fc33366d7d1ad713e2155600eaa5cabba497044ec99c17afa680f42410b928adaeb876bea66c1520bbce3da46ef8d3ebd6f9bbe40a4b643d1ac5c88cbdd26023b88757b2f6ca78c197ba0caf240050e6483fee64ad3dec7ad61f8f793e5687d9e7ef3bc554e69bb8f6d0ab7a51d3f5778ed262c6d32408d74879614d22963bff3fe484a83ed82a181242214c5a919f8e510064f095ec8882e18ded7dd4c3e76920200cf6079f56887fac3f06cd8c3b70ea053164b912fc6f6ec347b78e6cc3516a89dbe136350ccfc55204ca112b2873359ccb8d30e748f36dc4e9e2ab85d1eb31df27f0297a6c7114915183cb106154c7ed467dcfb0ec709271cb8b64b430139cfe732f9ba697fc5833063039a5d5a2ef59d3173447510e0f59a23be4ebc341356f2205822f0a66d65b7e0416e354d1dda7f75afb864fbbea967461f69c0fb8ea80262f423bdfef3f18c1fbda0c042fd5f4bc7c0b5d2f7618bc2be24ec820d8986a6e7c345f22ef2832797e5aefdcaa07be9f31bdd35d282eaf46d796c29b1e1c34ad11e02f89403ab899c49721be2a5e4a0708abee762150069c2dcee161204cb5bd680d6cfb340680e49f79538b5fab63ee0272fcc33379dc778581eb9b5aa9b72624eb8bb28697d6ad8f16ebb6c29aaae800f9f8063d8885f3f8293c40cddc975c005fdc67a9b79e6bdf7fef1b30e3a0c3ab51cac4ffb15d320acb9a969165fc8d9cc4c9fdff4423b9582c2ba54fd73069f1e59a3ef11f01d57e55825f87346b74cf5afd20b5569a3cfe8182d891612613374053557db3d7a8c421ce649e449f7b0a6ca7ac11459694db5ca15625181aacd2184ac1c090fe583fe7607339bdbd5deff4b4c1b82b0b2832a5368901234a627a63a67a47069b78f45f6c783ce2f782082406216411c942b9f455eb081035b70c54a13f28df53c00de9c433204c61471e021d6a589ed522445007250bc398b16548b58e54b03be61caca4bce6ccb51a9cb4c553f0b099a568ca49d93860ee94de1af05bfadd7985ba8f19443f6594de33670b7711ecc838269cc918d5ec2a5509e27682956c949224c1ffc059c22ab0abfecabae3fe954660b32fd3e3c0bd83ba0e934f78bbeb35c3ee95525aeb4f62b0ebdf70cff985feb0de983ad2a52d03d7de00caa70a7ff535339957bf7bbd09a405ce6ede82455e5ca132bb3fd473db1dd087a047281ea9c27d3c98b18cc99893ce570aacc16e4c8d84eca7197390210469d309982c2e58cfc4c3c41b0c498c02949ee8e5dccb49c1317f014f5af0acf4710631fb3e85cbf126dee44c355fb9cb1e8a0f794a4e63c0841be9ab8948224490044c4e08be105c296182e3ea14e34ad132f1be8ba30468ef364999fcd1f4afe2c424e193de17181989dc2ad074971b19f8bed0657a3e18d7329525e07778ba620d8592a5ca184757e65a28cdcc5ae975ab44f8b0b4ffe6b3e85f1194a64a053e5b5eeac4b87eb848e78b0a9a10c955a37a719160a46d52e237cbf5fcd56814fbd753941a85e20e1ae3f1252682bdbffbed04a11e3ec1d0383a6f5055b2c09dfa16f5b3bd6895a9c4cf31d8c2ea76ec5039f9f8fd1c2becc3a0f69aad095f0a1cbb7800d4b57a7546363cc0a032599c4fdc50223615503b13d7e115b1bf7e3c6bc0a2d4aadd54489327961344ba4c0f933267eba87e0bbc688cbb2aa20bd04cdbafe46d5be7405ce029d53f3c376a3225e4755195c46e25c5a63c953172c1240aa4dcf2629e00e9c6c94005dce93f8810a32df75d3a67314b1126a647bea0b3059ec7f0f4a3b31f83a16b01a31a44eea403ccaa9850622ed3b6e3b41122410a08de696749b728e12e7e106263164ca1006fd3624e48dd9b796e235bcfd240d651a5a6317506b682203fdb124480e135e9791521b61880bfad227292e2052e1660bf342995ef3ab701bc64fd575eb3c3872d8cce94356caa6301ed6091fca973889151580f11c095efe49485771e6008f3e15864f2d5c0ce96e73c432259e12ee4591179ae285457a7bfb598187fea7b08468ee34237e4dd6be18c759fd3d262bf792efc5fd00c2f93ab40ff228fefd3d10d147690bc9fe0f8153cef46624f123954bfc5ec6d91614a7eac99b9628ece91e6f116dae000353a3736339d49e00ffc66a912970d7845d437376a405ec9091893ef9e025cbfd8919cec5e5e9c8ae227fbce880d3563330d32f4cfe43e62cfb8a471eca1faae3a7b1bd40f719668e249bfc2c2b58940f6f73c8985da43b0f6b41d54809913ca8f8a8a60ebe8b09c5e2e089a3c8e1de99f8ce434abb2fb4c2529deef8295f691bc36434b36792d6912e1f4e1b728414e77440b71529bfe5430e4a38b292dd2532d6e614a7da61533062e8ff84382993a8d3764f654e90740101c08e185af2dda68d0d348841041eabfdbc9ac165385b39a03d7ef359ef9c8db393f46c5e8ddb93f9e961478c353085ede0738b09ad0a4f77e094d8e873455be5225ac4a365a0e3a943d308a208da56bfd3d5fcd439b8e73a466dc366e56d4f6e7e963d0d3bba23fb3319f6826dd6dd6a44dbb5895e707a395f646c2e02a6b8432b201211761b6c6021bfe2fef8e3254e7009fac6287be9051b2162c1c3d1db05143245489496e228ea243952790a83849ba7cbdce1e8081456bac5d50000000000000000000000000000000000000000060e10141d23",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 37,
+ "comment": "signature that takes 32 iteration(s)",
+ "msg": "9721000000000000000000000000000000000000000000000000000000000000",
+ "sig": "4cef6107c57d1e2a3389a755019b029002ffc1fff9d4722f8f92e9ba921dafcb20b0604257cde0e315568622d1a665746b446a8df7d8fcdebc10b02ad687d912a944761e54f05cfc113c064191b759cd8f3d0ffdd523644123542aeaad7645711119b746ad421521296aaffdbfbe3822ea3d715a4a276ca0402803a71cf4ca6c795ba336b5ef3a093167322dbd3167502444027b8b449e12ff1dcc8e9eda0b22da66ad89b01c86de493084488e126873be44c43e4cc7972ea78d524fc556b37717bf768bf0fc7374ae56332d955988ef2d57265e43768ef2ae3ff64a70037cacac2f1af03119efe45014f45e070baba1dc5f73e7733c958a3042c743af9215ae7ba3a6284626b724249033300cbb7092e4513d14a8b19b168fd3d29bf461ccd51ab581c0617b64e46d901724238d9ea556caca19d56d83a2cdb43a0db469839cb1ccd1afc705061d2e15b798569bfcafd135b51e21119ba22f4c69b205751b177354ec3c6547ca89d86a95cf1e0b4139a001cbcc5274f4eb19eee0c6b2ee749e940ac72969845563e3ed21d350f7df7d33d969738643983acb6aea290aa6b79ede572503d57a4267d97d2ca92ef2d17b104093b1242c53ed0d966ce4100fe53d7a36f14ee6335a9b85202baae912d9ed7e3f153a0292708fd3c7922ec2b43e4801243ee4a65b875683f85a071c86df08b2a999e258de58534c29722b912a78f515c353caf170b2e1eedf52910b857aa751114b7f26a3cf9122a814a6ec65f0347511eeef5094e575b0c51a90e27ed8c58b36674323964eb9725c550eff91d8ee79ece3fdec6cf9829a6f2bba5ddf9958f1c3f2932aa2a888d81953e74111cfa6600c10022e3b7a420136731ad638d26afec4d1df60bc255f45811f6686f8c81c8de97d541f4a38b6f495aca0a760f3cadd06d72a6476c02a8f61f92049ea6a5b5caf6294e308dc675b47dbe294ea8ce599856d19dcf0ea61b3f930e3fae682d8a324c0022f4b904b092bcbc0279b146cd63b827a5efeaee969b91b5158a2d0cd41266c94b873ce7e243850257e5abda0e37c4571f0b28a92d043cbe92a220170c6de589d0ed0e75ed1b288dbad8c7069f8bd3e4151c0d5bf90e9ae55e2a2b9e46898a301c0823ec14a201da94e9c0995592770622687f1a477511563dc9cf9500968e12c5b9b9584f179694a68055eb5309a01110fd8076c96cb6d57f0e228e1afd0cc8776978bc426401aa1fac458b8f3e1f2bbec589b653469a6589527e89664dd015497b669351dcea19115f55f0814a4c68f4a3c22dcdaf0d10eab6e884c6000f86ba0d8a453f773a16e2e50e85c69f501f29e1a4d8cd4b183efa68df94b98d47923dd8b2315e953465b0f65f3ad3c1d61e6bbeb34177efb27ce59c356873ec150c5d1883d0eb69c26e24a789aa0450af814faeb6dfc46d3b0309eff2d7c6d479832bfa6f9c34e5d5df4861865e64b5b03e211bccf9f72be75ec32e4140bc81dcb69f4de50d8a24896f749c356418d4270f5161328574f25650da41035a8cada3d9b630e103477977e5bb69382201fe6612b3244452a00a68e9b66b2a532d5abb29c0412f3a76e0d3fc0ba868a237c9ca392216efdd77478c49197e963660d57b96263ac47ef7ce463d715aa098ea2533cfb6bdafd984259f6143fba4f59bfe95653fa3ae232fbfd764a3792748365f5512f945d44b014f0c2b33911b36a60306f087c88afb57cf0dffbb8d80bfae7a44ea3e3ffac7e1bfc614b4a7b345c456d7c52a359bfa4bb5499c044c91bc6ac38f6ac2a39e80aebeced421ebe402782edc887da588be58815c71ae9e8d3b1644383fc15e8bd33b729611a93c40fa832bcd803913f590ce0f3bc8d3cf95a7574cb5f2a2c7368f69421153a310e776390c9535d16be57896f6e0ac8ef8acfb64c67267e246df87f55b50670dd3463e6a9b6aae11679c11dbfd3d6edda9aedf6557653ec89641d336b0b8f594a1f8dc284230200ae677092e9e7a6d129ef63997517c5a1388637eb81b134268a1be1d5dabafb6e9ac897894aae6d1720a1f44aceb2cd9749a13b7df3ffe4e06e23f7f478e6ed7e6563355fd22a52543812ab4201f9d15fb88c5a70926e2d867cfdc8bd6f4971a2b51656be33785a7fd78712e60f7b097aa88b294b1089cf01c8f7b958aed1933c983f7af824f202fbb88951de232ca81c7629bb4281a057fab0de81fc1d46b8ada37956438ee7fd8e13f1938bc237b672e0faf93e22c36bdc7cd192c6b607b43f866c3686cf532eabce500a9931e54bdb4e399b9f0b29301dcbe0eb16638486b7f96b766fb008a7b62f1c57ef8e0f5ab59c10ab055357e9e0111147ae6d1ca03ba503613c04180adffcdbb58cf5ff7ff726744bcc65df37a3f9c847b93e14c9f0dd912dad27d442406871fcda4471e8f21dc55b63b0fc702883467a0969ff3aa2010a72a111062701622f64567ad9f8a4f3e91dab436ba552ef2e42d930a71db205de921b1818ed137615ea39d16d8ad4817eb02e79e05fcff24aefa1a10e60a939c0a8235fc27846dd032f95679f9b987acd81a6f285d7e7664d88db73b2d1ae931d82e38134f2b770cb2f834e247371595f3ff78e420f281676399a293c080c7801447a4be951eca051b1858f99decc572baaadda8c1b67e5cfc9aa4e44abd48d2f3144ef92fd1ffe13dad9ce1d4f127c98119e211ca331496edd7b08bedf3c48d225409c9e66e2cc68b6ba2ee75f2dca3eea8f7af51a4bc99d4875fdc3991b300909433f4b261d36bb150faef340aaab774996ae1c6bfde7ac536fcf1df188f2125325922d0412c0d52a77a5ea47dcb9f898981a8f588440944b36ab2195b1afe613754b0e819a5962b148af4b1068ec9761224864776ccc8a7d54dc866fd2f9462273b745a9f6cb5af6a373c7a2067e42f2bf6219640cd11b04a37488a8ce616aaf23aa84968b59385d443e1a77e25e22ed199f0dba993886ef4a572d34484b965f31f76cd90a363ca95a75d175ae78b83c7f72d039aaa5e560e2ea9d0c9f29259ba6c06d7be2877db31cd9641b5ab67eb400c17e04bbda482e923263e668ffdfa92a84ea7ad18675a1e3bef85f1b9105d9fb496301bb1cd47e40c2efaf3f9fa737506d75342c400e74f1e9e6f8b1f60bbaa37e8b32a84f93efb535fb69b7746883ffde4e966410b048d4ecaa660dde811a0b3ec93fd2411e13f1643f756a4891f15a64785b0ed44a7a18154ee7d1d4cebfb41038cc64e9ff7992c9498a35e521d8e38a01f77f2103dac97504b28dad00bf4704d768ebd1c5bfcd434d6dcdb896fd28184c452420ef9bace73885ec8a87ee8e4da935ea42536e10917960784d436fca233d91b2da3cc121f89c7321d765c2b0e1efa88e9899d2e16c1c2958fc6318702f93c27c2b18ab78f65e70fd856f713088e11985c7a179119736bd14e6fa4a5322867ade8c2777130a67c74d763f508eb706ebe1fa0ca45fa80a8d73415dddc9a94d5d7459643f899e6e6b3f204bc79d7e66aa067ddbc7f70aee71a5772349d9e2086e0faf6e68f44863d7ed4c911cd3b73251f2760fbf0e672b4b933ed64bd6b4e0117db7eeb0cfabcb292232bddccc05aa9141ad70611b88fb4d35c3cb83aee710a84a3a7587122c0d2ff622fd7f663b3521616ed143da185556a005d2ab24f7d6af16acd759b3a188548414941fa2ebcb9047ef1e01840cc33a9c666948921baa8a772fbd582a538d6bea5a8b0408ba7e9db25e6ac1a2b19d5dbe479bfb4407de495d1c7cd818c58cc9ea5ed563b4f6e833f8a08e81c9d3f6a6262230aaf6d7ad0e96c5fe394780666313c10b2db729455d61f4e962b15cd524a38711f4eada4acc78daa59490c3c0c36f76039935b135128d6990fffc19f47b164fad639e6fc65921fbd4e491dc32fe11eff24ec5cd25a321b2af69ac8208fb712335c081d09bb05a587d95a7bf66b97a1f2dd8f5861f0575e0d156f7e1c3d59a0012b3dac27c84590bf8058dd3617437577a333875a2e1f0439038b469334d3f9457333e981ff9dc9273d5383e8f05249eba7b0d60b89eee427a057449802c5deaa90012d4b92e50846ee923c90b36de7f4b51aefc122e744e11b4cac695841c430710a5f261842f078284f68e49203f47f0a1805b13999b3b5a169b0ae792b33785f14a25f1158ac702ef5701aaecc7e8952ed4c7b39a10985cbf3e948084e61380e0cdedcba71a5c7065a864c412f486f510fa6f8c97c9a2946fb031e48e8be985508df9293956e7523b2a0bfbfc5564e082a94ff85e395aba4c3513fc1f55257ffd581fdc7f05dc4f014fd92c450c3422784e6a906cdc1fec67edc40688dcf1f7e77314c914a2a696112dea20296c73b3ba665d9ef39411cba46c2b66aa861f7e4dd05a3135c12801bdd4745d847d8947829fc99df415a2385b7e012dd6a5e53fde708fa552e418023735f830301813a3d7afe2567d3cdfbe790e318c9670e32b6b2d4406f1f1b03c57074add69f594e8ae8b0d7204041c309b2e52b58f82928d6bd4ec655c7df9ad79e8046d3b558decc148e89b02cf1d189a4f18171c948d974e8d14ffc83de76c334d001e3dc7de40bcf4f7fcfd191e447c8d95d80d39424a8598a5ad4f90b7ec2a515c859bbe00000000000000000000000000000000000000050b121a1e24",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 38,
+ "comment": "signature that takes 33 iteration(s)",
+ "msg": "b504000000000000000000000000000000000000000000000000000000000000",
+ "sig": "2aa38484627db138769301dfd9a5286975f4869810ad211d9055bee7e25029f41460d92e9b4c68b185d8033d360c0f2a5c9f0004e4d043c368ac22d395422e3d5ba1a4a2f219e38f1b300539a11481d086d93bd4ddfa8531acfeb8d418593c4142f624b881b44d306f0cc355573d25105118d6b9affc066c8910f2889f9fa45a87ef7fb5cb6aa508c4f5ad21d04742c110824a48569a1042a66a4f21723b046461c8c6b382e112c825af25a24bb26d7d874a6715dc338af7e3d4a07c27d5ce243536538ffbe6481e3542a5ac218c536c60ff0954dd5db6551c80abe9d22fd56a1486e6ceccb54ca7993d44ee52444d4876c247014bf459fef5e4b68640e6a20c5bd7ab5e11dd8a1f5527a087b97f57e9935c0ab742f399ba2eb9e7bf255d8d4f7ed820fcf5de363915d23b9d292d7a08e5cf5092516caaccfda5d4cb9ac906d10287bed5a13fc2df0b167e5bcd37768d33665c6adacb8157d9c385cc76fb9ffc53babbe3789a698d8a73fa5e110c1d87aeebfd839e2bff061d37c749c5aeee8bc63441e6ca79e1dc055fd8d789ad729dc475bb94729997e97ff08a1f1708d93612d402a64de159c26175c271d4d77114ed9176c5b9ce4234916e63cc856d9436186b137f7f7aacd7a367af9d28823d46d42add2c2dd975d23d31083424c141207a195b4212ea7bfb6da8eda7f69027552efe7ad4952ba49ac38115d93b4dfc2dbe173eef47934204f50ad850bdaa6fce06b517340b2562e468697fb84074626cb263d03a0b62a7b497ee9462c859b1d7894a543d1e261971751d325819dc071682c8f00f62153bec73cddbd5ec21f6824d4eca53dae13eb9af6c448d8d75c6d676ab18ba64836c3ecc7c20c79836a53379e809d87abc2f04f0413d10176ddb27f72936beb4d14cac5b0e684e6dfaf529b80f9b68121bfac15c8e60cae44292e8a8e0c32ebf066e708aefe5c3aa4fb4bbd7215380cedf0b19fafa11fc37c534f5c3c14cf6d28f9f624008355c1ec110159009690ec648d6ec11fc6de44831c620dec4331c900032bce86eb4ec44725667c15cc78a71f0baedb5ddc251215aa64c527a8dd8b30ed4931047b19b725d9f205a7943614850f9a619a805ba004d272d5206900846259d02c06153a0e2c109741acfb459816a7f8ec101a5e9c38b7ef9b8add48b68f7410db4359ce23cbf62507d584763744e44f95fe2233e76f32d13e660ea5d4b203bb908207ee9c621bebcbef9ad30666fb306e8ff894b2837464d3ce91caa82227d8666a3e2a9e6017f62b1ad65bdc5ec5a4c76f414ed2a15b0da2456694061ffb3296186a0ce18e366e5c5dc8b832e5bc74ff775f4d496802b600b39e5b7b531131709212980f4aef9bdeaadababd7300f75018bb60f48a9fae84f5e694f0ec6c74d3f34a77e358dc7c4f26536eb2f76adefd14e9f8822a85b1b579611975035fab27eb387602a3b4a858b17c8729bec1845b67d0725b38ecec057b0083cac04d4e075d848de5243801417dacc3ed83f89e63ba90dea0e724ba394fcf9226b50b6cb6e6017c0cc0526d7942cf5260efb79aa918c67e9c116c4183eb8068e94f25647923658825763acf820c56deef853bcd33a0c12ffebec84115e17f675b9b25dcfdd6cbf0c0e3a1feeb7c387d059b138665f70fa762a42fa3d9d360d3063b86e43f67e54c1011283238cddbf4d054d9126416b8d4c9116f8635e8cd19c2f202c90ea4470d91bd737b8032d4adcec9c98983f789c97852c2a60221a78b41e3ca75446f2e1912dadbe04b2304291353e32e73e1ee66e698a9395c0c93214a2865661dcca210b6d48972fe80368706e041eafaf9f7a96810e395f72c2ff9aa7e5d5ef845907184f224ba37b4c186c248da8bfe403df87472107da32ec0c0ee10ec6c867341ef62205d879cbb9ded18dc5d978ba96882b5a8ae2df769eec25540a431059a52176cee356a6e3c173c4ae79c3694b1af60ee164408e12ca1131d3475eb5467c7a95f8a794589e13548cd8b11c126244008c9424226929a6086879dd5a4bda4a82f0adc2d03d239fb99034f497851c204dc08961782fa41449ebd588d27b4d7da94cf8019ba42286987bc9d8cf0677ef6c45f0ff79dd41c3895912300b70587f7dd4080a65e81f5d12b0ada473bb597149e667e43804526fed0c9b75ee2f9f09ff32e87040e145ef779c9aba90f13f94c514f6aabe7690d51b6835f3e405a613c8a1e0a657cc259862ccc5a41a514c9ad0baccce1b8142de115994847b98f20ef8fea606a85c770a9d49cb1d37fb701119e6515307b62714d385f3854d5e0b16f3b062afd35586d71b5baed356e14a43e77e0993b8d30084d402bc8f569c5b837cf2c25e6869d2183daaa7553436cf48599cbe24337eaef1b44a8695d5a990241255579c564bff1399258090aad8525e0e5e75f734d15c8331415fe48d776f8d50efdb10aa72252dc43ecc13ca6322fa06d750cc9b817c879a2bd545ebce4b9ef00f2c1cde4d4c7b38a3c865026af1d108f66bb235b07935045d9e86abb228f99b94d82dfa098e680ba7af3e69a2e7ff1f2454f6d8f2165d7a05744e0ee3bcbb320a8b44b9219fb0d81a2127f112eb8d32c20a4e365f2037815781a0eec8d7d87b665bbe3d4c5df6aa798fd3c66d74330c78551d96a237e7125f79f9372b12828c40f7cd9d1ed7039635ed18ca5fa353a878913c9b2cfac7c9d774535cd6320efd7c1e6f2301ae3ebb3aba0d83e46a80a176109078cd101609898f41494da47a366d16848f3aeb61c6663195e1d744e18d284e38e8e303395a3aa6e11e55aac90f011f90a7717febafa8f5be44d033f3f3878877823a10b6e9721afc120f1ec60dca8df125c3c4d052e1afa6a921b66d4e2d00618a2bfba3e7e4fb3c15518ec5bef7589d2368a10af77394236c7061ccffc21ad67af1c9ea74d82a2820b11cca55a156927a677fbf57649b735d2af79ba93f3883f59aa403be37cb84c6b00c4fcd7f28414b665d77f093f4d6c0e7bc5629473ea1c31afe2c1d1a2bdc6459c92d4539d424436113f630059b9d90082ff9b3629e4c13149d6cd92a78a5defc5846f03ceeab92c88a53dcd5f019ac69aefa553ad4b4be71b08fcb7fce4c6dedcf046a09a7d3e1d31ab3afa543026dad8ca9412294004edcd16ae39c18144abdada4acf209a023811f5e60e5357a18c242691f990045652ef63bf86dd8d7f5d05f4f46b4276f580d1170acfec3ecf5426612938e37e65319854a9e0931e0981da00dca67e8fbcde6b94dc54b30dad04f27022aea635983ec8017cf389d482ee6c104c06ef7cf9273a9902c13c4a3f79f88d85088cfcb32396105d62f2308fa419ef1f29283ffe1becde3a2ca28e4b14532cf581d91c311beb4b41a9a9c55ae753e2e28d222d0b36b4c290a6f1b846cee14f03ffa91f3d743fcbf37d5993241ac2efb030e2652622e65be238cfd7e4a0b5e3e40e25e6eb5601120253a08be5eebd20f08af1dea872dc41b305aec03272561f0745aaee1c1b069acc0e61b16f4effccddb0086154ed66b98f15ad58975c4604ddd96e2fdfa674fe53c5d226d376081ae0bd2283f7106558a54e613900a569e799c98e4ec2f024c0d2b15cbc14bc96bfc6094560ec6c4cd9b9f879e3fe74a70c0d3ddba82f055780be7db1ce650cefb313618a2a5336d9b1168fc605518f53708afd062bfeb9a7f66338115e3213e8f4e90864e10b4b3a8eaed966f99240c23a7ad527892b3a25e1a3d656e724b84c46484ed9c0c2624ce62c46646b13003e3eb2c8ac1e1e307f40a3092d96e13463ec1bd75d62b679f4bd1a9e4967323f16c85ed92066b283b12f49fe50423359f7db6c0df64e04568d470c480681e6c6df4fab81d896e13735f3a1a18d26aef3e436c86308a4c184b709a4918670b870502d30d44861d360a88e4bb8a693659208c2c82da46a25dfdfbdc81e7c0a5addcba03d2872b8c24ab2e1761e2ae10a67dbd724fc4652be47650ec912819b70a4d628c4c16f630d24bc5811ae66fc1afa55234d5fb83271d5f8eec99fe398acf3275de23bc002a7652bf60c293e7c04fa6e10795c00e43743050f138b5422d4c09030dd12835a4556ae423406cda8b4936ee4e039324963a1fbe8768798c384f237f7b8d23cdc75aefc035c0ce65fbd9f8eeccf126f37352d9c75a40e157eadadd12b64b582bbaeea63b50b20ec88098e54623bcb373c63eac44a290a7ff8841a417c17bda385992e3f5b952951884273ff45b94067a819efe5cd90c7ddf935c3636ee486c98f67be2eef9ba4cb10c701b308861720f54c3017357e9aaca6bb5fd826cb39b8e0d908171963bd068a589860fcdabd8bae591d4fc6a6cb8bdca9a0380b3c70e49af9819f07100dceee2174331053b4878e41fe06782b5421ff93b7051deb43a61bd5608a881423940222f2cc2bf795721472b2fd714ca7a59373fe0e1c3c9dd5dfb97e345a250f63def1732f19085a5d1f50bd6dd7d26b22bd68aa239450d21d97e85929745896d3adce416c9aa28db0c3bf104a246f70ec5e24a11c3618280cab7bc6faedfca29eeb92c9ce708538f796469966ed1d5eff70e274d5f747bc5dd6d8a99c52035666d80a4bce2fb525b6b7eabce0c1c486e82f50000000000000000000000000000000000050d111a2026",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 39,
+ "comment": "signature that takes 34 iteration(s)",
+ "msg": "b502000000000000000000000000000000000000000000000000000000000000",
+ "sig": "fa54682a8226fa50a7728ee9ce8aa7b72bdd00a4f5643c4771d6547275088fa7b32042cb5441cfa8880779a602c32a536236b3be35a6e2a13360d4825d52f511252d6a3e272b493bc73878e0e3711360b5360af83df3f57570667d866c8558b052c540027a690df9eeea1135aa50546b2136d349cab85dcd698fbae1aa6fe0fb2eec20f3ac4f004a55be8510c4015f74538fe2e695cdc154887631dfe924774a6731b65aa4349fa16d536c7e9b5642966606e3fdb271779ffb0d3599bf958d3727fc443a6a190f4bb2f2853f5f6d773dbafc371772bb3d2b0e88aed601c9ce8ffd60b2496315f507bdbb50c7a309fcd68d85fee1f5aaa9420c4d2b52147d7fcb38026e21b5c467af3ed4b16038f2beab5f54b7c134571c079dbd28c54c6e06505d69b6dbae1e720e8a8bda189867861f84f5f6fa39f9af2cac8c6153bf1533b21f1e70360baa33860353eda4f0ec700c58283e2a3fcae5f0053c395be917ab411b8c2bfa94d892bc4fa424f6dfd97f9fa982b02e4fbe6c43b598eba769629ac66c3cde157365053fb6595982daaabae610cd3458811da53cfaadc053d8af104896e438d7bbdb025c474abc2493f74e16fa8ba563ee0765f4a06dbd874748302dd52df925df631e5bd5a7e335909aa7f8e7a65a7db7cd1988add9b9f34a71e3b735da6dccb4b6f6787af5f1e519e24a1e15c5930f43626f5ed734d4c442125896aba42840fe0613bbb8cb68325a6bb26bf1bcf14a055fcf63f11020ef7572de02b677315a6c83a2d0bceaf049e91bc715a085a25769ab9c9f4b6592a41c4c7e212c3380d723d3b4da5d9baaeabac9410e32eaa58f38facfe1f7438e4eec3ce5091a1e38f98100600dcc215d3c8ca850b46d60e2b941e10c66d809282f9d38d710a9202f9bd9a79a62cc30b32b5a1af6f9de111bee6a5bcb65e9125b8cfabb6db6c750c7553d6e3975be064feecd24e26c7196e931d8b1ce48ae6be3977db6d7eb200aae36191f7f0a2be3d3d7c9e760be49c8fb0b495338771f4b1676304c850db67d24422d7b153a4c34ca37a0ec287dd47739c2295dddd32e5809afbab880da22a82dbfd4c0041b0b8a6b9168e7baca62a6499fb621278ec25a81104eca44d2cd0165113fe6c68a56fc730ba9c7dffd039c978a701ed9f6acc61e39316ce53082c0dce04b4c0cb305aa53ac14befc5f65be4fa4bbdb79ab17c12698df9343de0b4cb3feb355cfca73529f36198d21da56bd343643a0d27d040f2bb7d048ecbfd1fc18b4bd27217c8532d63b47fedc445430caa18b2007ca9ae7fe9dae5bdb0371b897a3def628b0dddd3ba9b0805056caf5c02b7c3e44939b34ce646be0edc1289daa3aea0260643d34ebed8218aed531bee5ff772f2342e96e27ff488a5d1afddc3c5094a7f94f01c70ad619def58612f767cb21b3c742c43e94ff21b4f30348600a766e0f66d418b9f450e389be3ed10d3f080579248bbd7c72ee02985424c09c95b8af7229cc57e6dbd7bedc4aa2b08259db76736aa82bed4ab3198f748593189b0f5ddee1b1b8164f1f82896b458b6a5794170c056377b40e758c1d9f16a4b060f590d0299a3d6e8bb4d9046b194ea49051dba75771159d58d67d88eae6cd6d3cdab259d3b0422b1d1e0b40388d7007f73f3e1ff362c7bc785dbfbca4b4d007f3c799e8f4d11b806f26d82277f02ea2a61fa1cd5efac837aa29bdfa19cf00117f72b67c4df10a49a01efda625506de427d2ab9a514c9cf201ac86fc0692b66063aeb86b0b23e4180f6eb362b10a8dcd44f96983d5decb7b463882f7e0bc455c34998c65706e12c77416052bd36490796afdadf360ad94183907f807113b8c0533ff36b311ec6f8a31f1fe36f822ce27a580d2e5582a9c2991be1b43d0ff9c91447932ca726e57ab3ee076319eed5768decd05aa7ee857ec82b9132556cbe968f6ecc4013fbc49568c8c779d9a6d9dea52617e0f521c46d4862b47691038d9c36adcfe17a24a7f44fbd87114ef18bf1e1df13d15e060a01e2ff31c7b7ac4a355b0f5a3e98344d86c9510af6fdf934346e0b8c756fc5a14ee062d190ef7b6f78764e2063040bd09c4f7e43f1eb64f06d2e5c30b020d6c133dabaa9ebecad1623e3fa26bcfe1471471a6517de61f780b3082007676e5ff6ee9d5f31afa57c9faee333e639efc7761b0466f4c3b096cfda85d11700a4ec5db2deae29042dce8b74db1132104d9b9b0ef72962ddb6c23497bcc76e481871c322712ad44af7387a3e9498fe9a7c86ff73a012a2c5f0f492dc6766062cc296472f4ee671185892fd0704e8fb0c594eac2b817916ea7eda1822544a7ab2c2854e3b0c578fcf0d0b4ce731932af21a293e0c0e06fa5ba4b58dea2695fe4acd9fa6f7d1e59ec3657fc1f37e73e8e3536d7560bf502a103703cd815c9a10756da5d9e651234ff8d46f5f97bed85b89b6fb9c9c8026948d46dc5575679e8eb6cef8026aabb9a648fc87cc5e0fb06164cc22d6ab541caf5fbac8c6140d0fcb57719d45f22e055ad82b217cdb07dc986c4af4c847a8922be5d95f5367933b04b805e8626e73476a5da495bde018836ea5fe9cb34b3abe0b65885c83e918b5f5eebb53a962ac9e460dd6fa39795c68320e6b5f5e00638a1f18e40c3cdf75cc82794bf5f4a524081403894221f469efd48d460a8915721bcf0d6211949245cf7baa2f1ac65073409d9c1328e44142c9161ffc8d31ed8a387cf3dd0511cef2b61622de0d46d3639143339b9b6ed75cb5fa7c95011d878bac8b1be21be2e6608f040f76fe91f5b6fa92387aa081687da647712fa3b7b5e32ec2f5d22920acdfa5557ac8c071491bd4518c54f6d93bb8cde1a38f9dc1145af011c309c87c5b627690958fd466a4e8c073796f1cd07d844902e7e4eb56c031dd8c0dd6d9369c2eb4b89e4a9900bddc8114463c3ae2c87ddd1013b2defcf705ea746ff48d2821e5e63e033f4038cd842de7c838d9418c8e27a8dcd2fb9b88d8a0d0ba9c454d7a0a167a44cdc878f3274ebda260fe95a031c6d8917458d3882e11fc5363ccb034fca155ad29d622be4a047b3ccdffd362a3550c552a1b698e87dfba1774e527127017fdee76a91525993ff46b5eb072c79027148420fc958d1cc62e39dceb827dcd9baffcfc8b13888072827b0132cf943e31c71131e602444028740e6771a49615fcd00cf34ebf09bbbb2ab63b57803db54a1fd9c49957971d308548c94de5c5b6a5f345050ceb75708c8aee3c624e0d8290b2bcdcc918fbdcda7bc30d3f5f5ce1fb2d4e6cca86d6ec163f73858b84265baeeb0fda0f40e7bde058c85a2138bfa777c8be45da1c2b7915f94089074f4f22c0c1ecea9375ee2bfc23f90c521b8ed51434134abca11a9c3fd019244710125e9b7dc27661d23bcb4a40d5e87479d6b07ac86cfd91b5d89e664317336a2a6a80ee88b7b24ae1872bd99bd372d06cc21d835fd2336ea2ae53b7bf8a1c14ef724eba94e971524a1a290f9b7f265665b6195ee20719648b2a4a4a66c705705cf48b41a7c9c7f16bc2ae479ef1d5c23a4050acbdb0eef0a8c792f547952170a0b869f9b5066c06c4fe79d22379a5f8145c700049c4043215f60a7433955b2d9c681133149d845de27c355e1dc40217dae2c0a22c7d9b9e346ef585c35fd8cf96ebfcde2a7d4b7445e6c11046f0644ef7619e9c4bde19d33374061c7d55434249f4aaed4c7eb39a86f9d1007520d048301c9614943efbf9e55e11ea0b4462c9995c430ac4e7c3587df2a9f6d374580d0dbb48973c909615fb846705386c55d486063f8a0c9813419c9689317119ab6b7b6b9b72a2327bfe956859f8e3edd2d0e6a2e3446adb9c130fe0eab8dabaebd7593f9ca7b50df7c0f9643415b18f3c18ae06ec6ca1d39064b3bf8d8d4b841970e3c38c4e609fa7d6e8a938c371d7e4872ef88b088455715c5766126882cca88be8444a951b3984e1e24e38f87cc2d22dbb4459c258f7f6d9c4c70075061ab9c9a60fb23c0d4f5c9170c3368795acf27e099d9788d72e488742e04f779ac217f14eecbb4e3a41ee5d1b7e174b6df258ab1d8851c321c7ed74663e9f836ab08d8a5994ad7ea1be34ee3029b35550d653de0679b0d385315621282342dbda3abd445c695f67ba506ff9d4812a3a70996f26c45d71b9039ac4e4868047a396d838e3a625264e23178591cb966732901cf3960f0d83d4659b5ecf84e3948efde4413ae675d21a25e74aa780b3d4500b8ebb14898e9b8f332ea4524c7a560a630c049eb36b4ab1b4a77c9eb5755ff8a130786da3292383bc378ffedf2a7f3ddd8bdd5b7ff895608bc0c79ef3360c958d8e4854ac76dac7992bb69f6515052c47716a19bea1eaa0c0e33fa4f24207f7b44d5b48ed9ece05d5ca9d728b740e427823390c1d0d7998ce5edfd989c5d0ac351990cf8f291de748ddbcbda698052ee52cc078e15b7fb5360d890653c7b26458d0fdb813df3641f7f67613f5bd951d98128bff3a92d2b2c8b65adf282ff168af584730c3afdaeaa6550564655ad7700e5c34c6f74d091f1b367b210011788ababba86ba2e8eb6f2776c3e275637237c17250bbe31394a5a6f850c8ac1c9dbfa0f162b2c5e5f6e9cbbd7e2ecf72e7ec7d7f1f41b4d7b7c9fdcea4e6a85a100000000000000000000000000060c191f262a",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 40,
+ "comment": "signature that takes 37 iteration(s)",
+ "msg": "d20c000000000000000000000000000000000000000000000000000000000000",
+ "sig": "1f46df1c64f499ad5738cdecb7cdb03505cb055d9ce542e947092e56ff01ec2969072aceca72c59d51e93f1d7ce7de2540dfc1b0e2031597295ab90a154fa59e625c00ac9badd3eea471f51617673b9a963c8538971984ac28b77af69a6c1b24ba5ad2ed4cb30e9e4393e869af84d39146a2e2c8a31154b72d175f35da837f6089c2080776da166aaaec56563a220aa138e9c21b4d66de9490b8a0df1e80ac8521055bf24866e529943f65052f5be8765e1d340067f0172c33f9c68d10bafaf0b88930fd6579897d94ff21d74b572213b58509a29b396ac1cd0cc00cffd675cc6a11ef51dea3093416c12e994f42f24ade5725903c7886729d240941b45cc4089e66b8f995ca1106fea5ad912bbd3c5e47e1819496930eb044a273eaf6237de39b291a7d1e6192ee01f05d487437858bd1aa182ba2c04c894d5a5165f6336740de417f065360a70dfcbf4f86fa781ff6ee799a31887f37e9f7dedb12b2ee5508b28ea97ffc9cc87a0483c8d9a1334f8b29e3d9acceadc55e140f763a413d5e1c5d7987eb5abf3cb9e68838b2058e2f4df650386707b62b9cdc23733d5e58fd456f500a51746359378506724b87fe07aa24c192f56499becc194e128c9ae5268b22a6a22a5c5ff197881e880a13d52de0e5c6a7ab7dbbdd07d65cfd1806a84abe6455c4542d0f832d42fb3f72b6b26ebe1f4c306ffa6488509c93faeb7204811188223da6e932869703602b834aa1a3b65dff320f540be23ecd843b1e2901965d5805c46c711015a47ab82d0b1d9d12fd9fe8c6be4eaf89df00acb07a3d21fbfca442298f70ea4d2acd8edcb2f9e88c3c02ffb667c3fc0e2b2e778b908c206e35f6f3287a6ef9601f6340e037ad38a5d1aff1bb2e50472234a01164d5e213dcc19657c32174fc89fedb70c8e7e4a4dc613b820f43a57ffa04a9e00546f2918e1381d9bc2e3b19c3f79f74b998bbe4f08e47b79b536e737104af435b96a7912eac3f83b36ad6bf77fd29110dcb1cf6d4a2d422f26af1d77507383aca643095b436eda471cba8d3f97ace49ca048fa5a43ed7eed1de5c9f591d2fe1bf6b99d1978bd87032e27598356352029e5a16d280c07e6e702ff7ba900416a7246f0d0b0ca6f9bdee5686766a6bd63f0298852d26f6b9e6002b5c2a704dc6b82a29accd800b39c46dc534c82659bfd63c82d1f9f291510078a6682cdc1aac22141549c4d9ef2d6a5843b12e376dca96cafb5a359612662946e81ffbb6abbadd985077c9a1fe81dc9d81446ce554effe92f879811932a3f8ef2d2b5619670b9d5b9cc6c547b655e41233a618a3eac821c8a8bc427f913ae319e6339ad537121ecf3b22f153d93331f66f594c8b71157c321a753d0b3aede490db20977019de46a0652f9dfa175da85212599c5726fff321cada571524c6f2003af70dd9fa28c497a7584078a23385b88a08edccabfca847dd45eeffefd30f8f4df276486496b1fbb1b7e6d49921ed0f25aecebbfeaa9062b47b9e2a773e644e2709022f66fac061e012cbcf94324814d07d7aca6fd165f90298b70efc207c0367fd51f1f172df7d96c46c9ffe72c87ca3cb42e6bda26e2352574c6d6341c6058ea7bf9e5614748382c2047504bc97fb4f00ee120c8d17a2802f5807636e754781b325fed89cdbdcb41b279c11f7a0fbcaab32f569f8e98204aa1cc04ae6fd1d70c29f1a3b286fafb5002f46916094c36de8b8b0a6afceb7103da9522e515e0abd3721c7402b12a3cc93e31f81c4714a4d86c3215b8dfd201af03c5dbaf5f41b35525e13402d753fc371b9d46e8d141ee0dc7a04f382ea1ed257579d06cd68a0f675ddc5137e5afe71894483f1c184dda00bb12e62afdcdca6252065224476d28f3ccc362dd443e7412d21d945a20c4ff7f11054031351fa93647709ddc89ec667245d2b0feee0522bea979f3e077ebbf2d6a8fb861de7ec495725374b19bd3bdc0108b526caeda1f946d022651a1b05a71ceb9c3bd1eda12728f58cbbb27af266e019323a3dbd149188bff16f6f154e4ecae0f01504afd8bda993028ed478c7eca673aa1f33af88b5de67f1192c668f4136179cab9696b44173b305e6cfd30dc3f42634524cdfeb2d77bdc8d2f247af73c774f39f1af9745a46c33f0a4714eaf6f7f511f437b2283596e8aa6b55d3bf5a94d210f54b99bc642549da972e94dabd7d58d0ccf33fc53176afac3a0fbb6c653bc2e56351adf0980a14c312c38ec6c9160398cb97657800881c01eadd0c8030d7123f6982201d1eb4277b7d895246fef315e39996064ffb115e3b3dc50cdbcaa6129f6ddb2330c64d57e6fcc2eb83db1a4cfeb73177187dc8323888de1abd7bd8bfad2d184033292c21d3ce851d191535a605e3298c8c88f649b819848ad76d4b2f08ae36797ba54b5f3dccb32c8258a38146b6c86f175a888117d78796d7a90525aceb8f6986e4acec13281915f33a4207e1f4077d586c6b686ef10b2d16618aa841fb817df37968be3099a27de57c44ba8f8e55c0f1e401de53b8578a733e9e81268d462e2321af29aa50f814dbd7bd05856d890008148eee2180b8870ae846e07e48a6660202a6bd35a7391821c550e3810fad442b589ab6b3e0bca5d7858066260776148a778c3b9df8c391b72451df0c87c0c64491b2e5bd4e264575cf047cb82f20f95ce3101d92aed4834b98c8f0e5c81c8e6baf0ab3de870d9207bb64b6b99a395ae2de378f8ad233120a968e091b7e1aa81195284f3e9152cf211b1fa26674307a57390e56cb812e030fc50c9d18687f67226245b70e60ca87e9ccaea0e7d36a5d951a22b374d71a1b89129a0b4067c60317fe9795e4a0b41c4e03c3314ab9437a1670e4bae274c2e93197b2d7af9bf501becc0545707659ea737f9042d7dd711ebe6a801d34b3cd45d7c1275fe8559bd33d9b160744d6107fab7df7f419cceef355f513d30aa82e2249857bd05bf524273d46b9e906f557e02604210e34f1be3213b121994fd3fa86da4c5c43fd4bd213e76387868e7f3b2ade5bac9ada99c54d0e948520da7ebbeacfe48e2a8113d000a9ebe5c14f7dac827393a7ed2a5eb44d8a33cb2c010cacdce5b868f9ad8ee93183fdfa1d05a2febffd902b68bf192682a0b5a418bdb900d86365a25e5c11486ff4a2547fdd7cb24839c3bd6d2fb95ec390416dee8d5b4a1993ceef53a5f5ea77357674c7c0a27f78c483925df6adbb5c49074f5cfa660969cb506abce22c764de475ff9c41e064035c48c088dd6c69f384aa76aa21e2c0e4b38f4405adde76784b0cc331484cd3c954776e63a5808f7f973bd73ae418f8648a02c29a8033214099e4e65ffd33066913bb6fa1d5d360865bdb029896a8a5d5b4ec4ac8953e6aa02326d7da96a9067d968ed2e6cab00ad00eac6a296fb48bd16acbcd1acc02d221325e4124c3f3e69f6b0b825ad513abc0c7fa7899142274e2f8bff11704e45db46adf1c4c93754c73e8eb6267e5f69cc4c24b1a9bf1039a39e8e091d944c2981864e78290a87d9773a43898de581e26fbf0919b8a7bce07365e1df475fe75c3ce9b315b07cff1e3cbaca2b16f41309398eaf299b11253a015dc3f067a91157cd6abde00d7c69e9907f6c1222fed29ff9223f3761d0c4de8bb07ca4637ae5e0fa65f22a61af6dfeca7f007b28e764fd187ab52c158690ff734a8dd5f03f202707f27bd271ca982e5e39ef53c18f4cdee8a6285aa054683974c85b52ddbc3d6083b2d88adac9e2e4bc708f05e70e0f24d5b318757192905cdf1e5211b48ad256abeeed49bc752ca5c69c8c8481094ba4652a0a0d2c824b16048907b29c231e86852a806ff24014fccdbceba284ef0a6814696a2889d64c5e750b132d63f9fcd693a201ade06b92084107c6947efd9be127a8fc4e871cab766cef81aceddcaf89b50ee6f17652ceb878a66ceebceddc72b23d3c1f22de6056e27d56275baeb0c8e782151f843b4a90fa5f7bdbaeb8428620882db8bbb94e267961ad43d9f0649aac0a773e714fb18e5e7b3d2be2ab1b53e65bbe5b22ea43a1c20d56cdce27da15758d83d3b39536341dd59f6a174572c6b182bc20df8cb5739c1eb3cdebb72b8a602ea3b4e025a9a150097bbfa79473d056dbdaf2fc2b587fafac2b58b1bb452b2d62b815a36ae59a5a8902d7c63c125077906b397a4c73c45cffeeb57efd12c7fb76c568ec76f5d1cd0b151d946275b4a94d4908ac6ae08d272ab81acf1a4cc4645f299e8c84e8f0389dc0a625622a6a0f1d9a5080c918d2e1ad2b18ecbf64681d8d2088773c306537f8d2bf2fbee5c372b315213a78ad3506dd4b6a6cefbb939b6e0346ce2996fc6c2600d08760ae3aa1c151cdd5d0039bb071c71a70c0eef8ded0148e0368c79988c53c18dc8aebbadf78d6bb69b660f86a24a3a06f78445e00217e545d8e3323c2292d4ac683efd04a9f8c2c3a383acd7444d7ed39474102b2a436de7094bac40028acd4fc9d100debc4b9d5de7ae508068dbe40a7e71b1de99522252fc9d309f62229a5cfd785cad97b58cb7a5a5f9da5b5a50622f72519d1e6f2183b1cdc25e813e8645f0a541c0a3984cd6d551bf0e293239616769a9e35f94a1a4e8f52c2e5a98edee01020b1012306093e2465e89f60f4a51bcc3f6feff00000000000000000000000000090f151e222a",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 41,
+ "comment": "signature that takes 39 iteration(s)",
+ "msg": "cb0c000000000000000000000000000000000000000000000000000000000000",
+ "sig": "6570319fc14d783b583fd81dbacc93c9f25e209c7e2d1db45fcd193534299d97fcf05beb603478f83fdfbe3ec2bf9b808b20c98d8d72b717cd72a5185c448e725023a0563f98943926a79fe5a2a79032e08c393d2c5a05fb93c85b56f13942ac010b90048fde95b3b4fb15741143321473ba593377ffdf7cd22d84a626259ab652002101eb3d86125ffd59fd794d9c5a728d7d4b5cbf1eb65a1d4d8d81483bd3771d53b7598495e12692db46e73a433805fe7fda3baaad3bfc5c0095fee660914c85380a0663f0d6858a065262d2de624c46d94c1604f1f168ddcbd2bf7b771c0a251b9bea65c3526e1f12d677d9fbb2a65bd35050fd2d64c8929ae862b89da6dd0510f5b4da25b9367f0cff726c9b3f0b7db05a1e5613e598bd8ea4306fdb17a7898c5f8f3375a8cca6fd7c1621d1bb870d12fe3be62440172b4cc57f7aa8d15acb44b2ec4152a65a36d098743ff64b8e767a4013b089a9079eaa4989c6982f84f4fefdae1ebd3ed204aef26e367bc7a9ff803f0c11917b0aff5bda98bb4fd7d594d1a6676312827fedb48261521c891252baac6beb46bb7e12952b114c13b1e47b42ccd108f9c9772ced3341cefacca3b7baf0940225cdbb03e4a1c1f0a9805aa6a5e85e6772d7c6feb44a0983f20ef222bc2db11f9a755d5033078bad4a1117c16159cd963b2e7d5ec56918399e7e2bf9a60a1a9f5d095a136aa9fc0cd559c85fb2b5020c4cc03fba4c34147ccdc62d0419c5913515e9b21404d908f2f9298be61437222b3b54d4db7017fcf063c03ec7540b725e5c9d0c3b9a415c7ddfd795ca26eb269c194393b7f6aba85600c2314a2d70865db05ede213e128e63fc9c165d88b4b72c8ac5937127a1635b35a6357d41f16eca42233986be1b9cd2e01c0c584371b2d7a75585b8e2c1fcb0ec296a22f81e2d5abbb57ce4cffbcd0393bf263e2a9bdcab358765b61e5885bae17e58a647fe50cf09cbe6b84461bdca74341db00c592d6ccf7ce5ad746d03b822344fddb152a91c1bf17fcb75c7d0fd60fe208650493d5353cfa211d95dd4d516a5ed6ef5a5f53a83f44d45dcf8cff27f7fcd565acd684d7bcc3910c3ffb2675c52735acf3796400de88048f8d1df93ec618fee34027f2e45f6c96a67e43104eff82d53d7c298d15758d5fd2b466b9a00f7ec438dec6a35d6745265250b46c7fa4c1c3d567d1837debdc1c72d0d7e340b03d3a3151037e9c3137af1b80bf266b8282d02bfee94a01187aebe854659c426f12eefdef522c050d8b514255840f870e0694fb191e918b5ba89df01047b8f4f7fb4142f7942247344ccea2e724fb30e75f824b9b244d13b4ec29b8baea39f494f5b17ce1bc8b3584780ae622686a7934249131ba8165473c9e064c0b59bc0db04d92784976085a389c04fa2fd6b15f49c70a59890af0ca86f05db1128e39b36023700919a89faf4db37d96b29b73e7732b37866b90455322fadf4fca1ff26fe9dde33a1e4645d394f24dc38541f8fd7a21e0c80ba0f7f5081874a677e337c802f5069121d4df8079b9b1143cda5edf2ec1be98f6bc60fb26ac20012ce73b3c56dea37cdd25ff02398be4dbcfd8f681f5253da1fff4b273634c1bb6f3ed991c2728c2aad1d1d1287f394f0f9024fe4d805f4ecf059bdb4786c4125af37e65280fdb8df9206186df5870b48cded097379d3c3f23c0c5920cf0f5b9abd7af7d5966a204be229476b42bec5ca903df94dbbe1e89941ccf36d7aaaf4beae2ec1e4ff5189c4525db0e9f30c11dee8c8673360634d49e59f928df07481754df3b0d4b14e30cb596763f3268d1106fc571705c6b94d7ff3e1be58a68bd1119910775eae6e0edc89ef7e3a4fbbbf71435c9ee55539d45ae764289e673d21dd62e38d1e5ecff6a2d76462454a5f366a017084b9b63ed39379a15d1088c2acbdef377e78bd0850eeb278fa4a90154783d64657ce67ef0bbe4ec673e2aea2cda4695909cda72ef13a8be8fa81558bcefa0373613c74bfbd5abad71b06b98edcd4383ba05dd89261ab86c28b8760e68761e928530fa733c71ec1ad2153ce8651fd5cae23ccfba0ca792ae0285421139b49fd4e1e3f6b7e84c34b0ce9e8ae3cfdba198f325ddad28144bdc8d04beb45d311f960d1e0e730180b4677c01d3023ce79416e94df5782bd27a150a97ddb7b4cbe7feaf30733253d27f6dcde4c50f912fc1b01f899ce1dd3d48152e67aaf1d90731b3d4b578528538c8989f9f76911b3bdc6e36d9894f781a0c4c74edc0a4e102702f66f1c8261a92b38754291726fc8eee9afadcf4a256745884063faca94b2a8b98ae96b0581ef2319ec9ac54619ba66f2412e95d659e7ebe39a909408e5ea7901c5bc27c74709d0621597e9e84ac59befe675c51cd075a25efb4c9351baa7d3d9c983b27ff1595a2bee73952c7c0b6c9fc252c8c7086402ff025c121b92c2425b3428b743496455954d38ece2b3964a9fac4457552388127c012a26bc88bf6866504568ad32a742f87123d61525ebd1f4109324e3b57640052563c9eb9cfbe683b5a325c6e8b028b6b9cef425d895ea902031752a5b7ff96a2af6ee1bd719bb0581a4a4159c0c58bc36e74c7360051934433ffde1b6a49f2c04e93077d8231865b3621e272b29a6f50f7a2d059eb380b4b43c3155d7b4b2b6eac7da5b135ae5b419b5f3dff09f68251bf5fcc3e10168ed331f5f0d1e0fb51e5ac777b2eb4d9a2befcf049be9851f791a6f059414ae3001acee646a07a222884387f1e56445d7852f7db92d40662e91101d5157dcd7ff517d3b864b557316b1dd21706fe16adb337ca7782ed5bb21e970afd9dc16eb36e08b728bba8608b15c30875fcbf6f939d96c7056edf024af12e1583758a005e6187cf7c2e2af1167700129ba74ef20e3afea22cab2ea9a24f90807cd839b884016c8b624d2cf13917cf427bee7548c51d4efbd1fc98b0034921c72645657350d189777cc3bec591fd205721d704de42442d2b8b742f12136af848ae0ed3150bb4987e31a3a544b9f79456a2fca7b149a8f1802781206b57d7ecbbd465c40a1b4a0e6f3a1f25c5ee35855908a46e4dec78dd586c086c04eba75769fdbc3cfae0cf2cd32abdcfe48e2b106b8df9a4b98291de33e648efe6f4355ee437ee7cdc854a3cd47c616eae431d6955cb78548ce93caec1547f2745e32686d930929982fa2bd1a187858511218c7342ad386105ea90887f0919d875685600706ab5bb683e1dc5196d8943ce821a639a7931e175df372b81901af3f08ef4bdcf10a18127efc074d190519a831e8ccaae06a84f641a2f5fab19fdc708e8d63fd66106acb2a720361f9f03a3756542d9a12d3ebb9301c121aa30f757ce4e56a2243cb882f9d7df7c26a52fc8ba8a0af2c1baf6746851a9c2a3e65ee15d456f9395482b5893c7937198415082992b7d7f34a547d77c68cdb77ed32ab1218d409bd71240857b13b0974d045e2c89ccf8e6a62104396e217f793a990d162d41ce4bee49792940496930a20724c9d4949eac997d9c2e5b9dfc47b04f0cb0b694e66f4e9cdc5b121893f79e52d3d61fca23e667da19286537fb2f3a3953947206806782d669ec03c17b1c7bbd09b4bff50d91252707a1a99d7cd1689bc4eba2f985524903b19d791da6fffaaa3d748918ac7653336924c960794bfc06f039580fc1ddad59980d1818c7ce79446f35576b7397caea996e359da3a3b3b7a882608ade4a9cf32380216633da5c5672cb0aed04512b6c784fb4b165ee2b878c502a4a3ce3c8fa48723694106166736b93b5e688961092f1ffbf603e815aab3faf971f9e3281f784ffa3a2dc23a164cdc4e81783d5486b4b6132ecd404744b248df1c32c769329f224674435237cfbb2f9806ccc1ba3c8961b4c34ef2ee69db7f469072a116f842b5399cea43402679db4245512a95107095eb057bb6ff24b6bc418b8c63d7bdac31c6802b29210d3662cd27d57386f1eafccbaf3837e2f8413f66239f2e689e537dc017d005ddcf003bc5c25e6e7b75b9af884e1b164717a14bd10633b4685b6d2ffbe03d5f5574b73daf7eba0a800f8b93af81850bc692b60913e16ae210b552ea00c4175c4514218ce4ca00fc16cc098c5c6aa499a2eda2b39cb80b80f39af8dbed96b9ea9b010990b6524e0133babae543296a6773577e1bea164689993cc2f4f14c63647c4bc9fb70091e09c85aa3d394f445567dfebfcbb2ba19dd37d4c0810cb929dc9ff9d2e5d5320439c7e568cfe1d4a1fec65ce576d9981ac8d45e5c21ee9eb43340b3db7d4de838730742616fb2d95dc2986960f08283207c414d907a044a3c96fe6a83beeb79ceeb9724ca40e2f0f340d8d2c6e64133d619594e73d592a9d24c5b00aa1dc8ce4752c2d86df0cc79e3d81a8a1b1d0cf50d47207d555be63db4f1d87e818082620474b0f8dfd7084941b14e8c99967d2af0552cbfe6cd388665ca8de290bd2593d44e139d24c69c1e09be1048da389f7b32828162ce85f830e4e2aa9f81eeb6e2f3e41fefffd2e611de17dd9f35062039c2b940b809560f9b3a749f0f60a04b06e024d107991ce612d2b0f9eed003b831476d71b7d1f07aa3aff90a353e778e920b519ca5b8ff394183b7cfe4f8fd4e73789cf600000000000000000000000000000000000000070b11171f24",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 42,
+ "comment": "signature that takes 43 iteration(s)",
+ "msg": "fe03000000000000000000000000000000000000000000000000000000000000",
+ "sig": "bbcda17759a78276b6332f3f95bbde79b676072fbd6fd60a4d43e25ce3cb2c34c4d81dc1a278a99c5d5faf8596b5ad4ff060294922ae3d220e5eae86212332da242a2e77c78db4e06a1d28220e3f4a100022a3b461d263c43d9bc5ce2e3984e192f3f8a5a2e1f25bf7a5e88dac482888fcb8657117a0911dde6c9cff20561460d7378821a073fe7eb2c6328f52c2c74f6448bedd9bee33c9b4bd28ad3410e3af07ce1f9770fae92d8996ea766e27c95fa5b8021c735413e86b277727f467f5786972c3df4e1547a2b921cb265f48a4a0e866eae0a44bbb32be8aca8cee6a6f9bb60069c3e8949a7d6c448f84e05cdd726bcb3224a50b49f6260e2482f45e047c3f49ac318a8ca1d9aa730c807f286303e837e6e8c33079ab12fa20433860caea7b91dc629feebb28ffda66e1e8636b1e4f90488a9dab533f0bd1596ac3d3708cfb2d30a08636e411fcaacd7aeff28d2253b128494d37878e9bef3676843352d01e266068081be7da3abef9603c7d17229e57714c61e512ed4e9b516d496bfd6a58d17be0910b280ef2e0684d94d957f80dfa1cf3a45c1b65f5a0dedd946b09f6d0f5e158f1dc931e4d44639a687924f8de96f1b061132224cead2c5fdde857e6848052c6ab47283db6095fc94b2c392dcdb741ff223febfd0a637f2162e862f4e9647c8f9dcba2e1be425f5308eb1bc507cd10af0df3a559d1e9d9fe91ed0f82b71585a16f8444e2908f166ef8af1152969a73efa663fca2aeed5273e17e84e694373d25265b0214f90a8f6b610e12f73af764183cab7e99f5adb7fef790ebb61574a424e2c40afda048ca5ee38d0e50f000c03aa3da579729f92b71f4e79e6fb386326863a2c48289224a22708e8cf3541467f0456ba6f2009c4937f88dfa15c0ffdbf4aac6d7f677544380b87284e142b71dc4ff51d385bc78752e6cd9cd7a12f54d6e38c7b7622527bae2ddc033ef88e313af84e18aa357c5ad56df9b1cb5ae393521f21ac8f912e5dbac2fd51aa7522ffb927f21b8e28d4bb9a3eb58a7b3e7b63027832d811ff57b1ce25583d2bc70aaf8cf91e6f8ece51433d97fe437127ad7f3b0647ae860d88f9e20dc6e281bac2e8f090911d7d390c6e8547240179871a55e0e73dd1114f0df5e380c56910fed56f674db18914eff380467d3fd01f3deee25bc525a672724d62f73fe7c0ff813c8a3202de503e38ba7c538219a56a44d5719685de991cc996f2b483fb8c0a2c818378ed02c4482ae0239fd494249151ccc433013dc544708b0fe45d98a6e0a6528b88c32892f64acd551a7d0b7bb884f3c7a18e58b8722e7a90b904d21d3004a00b468a5f06f4f141bac688d04f28bddb7f2421f0d2e4db7a9d7be94959dcadc9b1252b1d8547fb14cb81b089cf8c4d99ddac314519bb4c9a19eaa3018e805c642ea1362243caf68b8d4972bbd2f9dbd4f571fbddb00b65688ccdd344a47bf616adfa9b6927f796e08dad32605d97a90acfb70d4b4f9c95285541a820ca6e9e959bbbb1b77e2089f87fd41e824de384c3a59c251b7c571c1d89e40043307d170a4e679cad7ccede16cad15cbab0e56c4005f56fda088434eddb1b4eb04af6d7f8f5120b33fdc19858ece0cf755a57f3a2006750ba15d687a507d4e5215062ec3431f78f168218874bcb785262068e0daedbc750c1908420f87eca0f02fd304a52abb78c0968330a77e587a4e087a0baef408d3691290d2edc5387bfc169f52ade0b387f218dbb7efb9435d93a3a7876aee38e0a49c9c69d9a98197e092ae1faaf6c8ec41804b7da6e62210c4cc673952b95f55b929b1a8ea2b3d08dd5434c2651edc7a41dd031212538635cad974b382b670014a9241a1e2820b2a74998a46ed419900cc1464c2ffa33f4d20823efae2452aba5149e825ef1955572b6671f3ddb3452cfa1928e4e5fe84fe875ba853b3a56618be73b3c530ad3a6f8725883f7e23d136f64ff7cb727f1020b1f4a394719a71238e3d7542a66ac55011caa451a3a5e101c72be22fed87f9a663c5f0b0a4d711502391d1edbe0e90215b00fc08289b72425a0dac72546b539fb9cee77d3f084a39cb8071f504ef52979302836de1bc784b58dcaf8a3bb36981f45820a2cc35a29bb8a6857e7fae2e1632a857db40d1fc5bce39356d6c428cb5b4b8401aee5165be259031acb0af2a7433c41819a1c44e74a311707fc15ba6d4f0997873bc64358a5bb9fd4aa22b1caa9c030136e2b5f5b0a999e7ce009e3713dc032e4fea8f516a3e0ac277a36c29b5e2bf15cb4ff86110676ffcf33e4b7973a3bf248c7f6c02c9f091da8b85380684ff829bca245c3e3e53b67bfa4bcd34f0a598b5ef09bff00123ca0dad69518a765419fd72eff17602717957e3ee3df45a82a573319d6b40dd6beb7051966577d41383d97137eff7db84a2225e98d014f2111357edac272a89a7c50e0184b27d6a6ec611f70051100e9887657cecad1f34867e6d144c360e9eec53bff7b8a8a4ddd9cf254e5c74054bb8eec9359ca1fc91eaae77a9487685a209ea960b43a8cd198107b112deff2391cdc326300e35473a634c96d933009fd172601000c28fd58243469bc7a634c462b7f2147c99de6a6f03524f15fdc7db81357ebeb1eff404fc94f1c6e40912ce2661d8eb9d584f572a6152ff88d764c20ff024ff22f6f13605b3bd380d0e538f2b060ec6afca3fedc244e18f16a032eccf437f38b9db144770aa247e0fe7fe7001aedada4cee551e5e37a38b64e086e442799869b7948493526179807d628867bcc9fc6fff1a8d2a7203a5f0202e00fa2b7a851892bced0e5b2ef90501df3984f1a28746e6584fe944f6436daf003a6ef2613c20982e3ca9191228835ee1102e5fb67d5acf87e300a6de21d7091d6a573167b0a65f2dc79f979f5d1ce55dab07e2cb2567266f8e90ff619b6174110372f43baffe24e3711f114be914c0e01c56756e2460293281cdea5cf3321f789f64fc1f19269471f7373242c63563c7081e70fdf014ac4e11d1648e6eda56bf964599f7f91fa5b85f9c012236f700380a45b12985475ea38f03f1fa5453a782d059bdafa71344bbc2c60eec43d0edfab113d7f8761bf37adeee2ef88a5ab5060f004de5d69cbe2d772a627548a85618899a2f3d56ed971c8ce87acd78feb6476eebfc2f50075e984670a31d45d9a351886fb72cfd889c6c3486a824b0d6829d6db49812095873d9935843fd0433bdf9d4f4ebccfad9fb57fdb7f4bd73b0ceb1373b6e55d564f48f2d5d0036850ee0e04f824f45ccdcbb735dcfc5cd1f38c1238a28119008cfd6d608bc816d1222a01cf368f5871a9c25c3d6b023c235f8e2cc4e32bb365abdb16f5f9959236aeea856c562432129c1547b845ff4f143989e5d699003453bfa694577c9d5b9cbb21886ffd65b3b1d799ea31562264493d4f5f00b4531e132f7f608333382c23024936851e1c4e785f073a3441bca8823f8f56fe8ee7b484d09f98d898300f83974b9e39f56ca4184063901fd34837ae0269939d598131b93e68e982efc2e9f23183194d5b1bd977f886be2f58f7ce51a317adb1c29dc153316f7054cb17df75e455c1bdb3556e008a66954ee1c082e23203d89d8ede425dc355c592681fb20b8dc5d9ba8563da39470c3a86eff22c218f796f9594a0cdd39b7e12d2ebc46e30650756f656241606a62875b89f864c9bb7ec6f22a3086377146a053b373e5e6016a690c5eaca8c923d17e7d49cd2e81a8c2b41fe008b742983b48b973a2e87a03295868dd6ec34ea1cf51c359d5ddc8a0f3b480b443f9aa05ff0b98da9bb79595708b9ccb683e4580d20b933b19dc025f7e8037ca6fa70260a0ce40e354b73304b0840121892d408a19ede4eeaa311166d27e711deb9e4c2f22486d01db58a504caede74e928ce2c39e68fda561cc748cd20dd5930241eb700a177fea79a33f041c72bb5ade325eaa2f7ae60d9a9c65c314ed410a94299f608a9fd3be24f427f682bb27fb32f9bab81dcb492605779267ee0b7195ca1b7c52103692f204fd4cb665f279fb3a4a392022b8736bf5af8480bc5f766834a8e1944c83f41185d2704b6938a5d9d03263e3deae764d5e9882b7b2e4521b379d870d4968eec4099cf9007e6519809ff133b36eb2f728159b36934834990096418c1620dc41e53f3eb8a55c6657687a1db8e5756c2a8250d8ac9d08e5487ff27d75b8efe3351318dd23b791e580f09feb7b13f4d82fb0667fa66c32f6074bddb6843cccb7a6cc7769822dcc0ab6487f54c49d61f2109b47cb2c87c0f6f158298fd22f1b9fa39ce57c1ec04b69f4ca155f8ef86d321fc3bfd52d26b58f9c108c729fa5b5bb3426628610ba05e816f362815b685a14aab96b63cf2ee717aa975ed4d3cc7172e17d97eab68a8e32220a59279e543b2f4894fdcdb792a7da257dd004eea12cac243c7b9b67b0b035b5d9bf5dd54d7e1fcb0a44c7a18cf45c765777c3fdf20bb4fb29adccd24952047234331feb580651282e1a523e96e0d6bc35a50cb42ace95edb1eb7bbdb91e499d3cfb463b61ee61f851bfff32c944f8b1090e7e3fd8d02f05740a840fd6b04e969ea2b6c3f9fb7086267ba3bbdfe3ee414994c30622254253829aa2a5c6d4060c35444e7f8288a5b2b6d6eef8fafc0000000000000000070910141f2f",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 43,
+ "comment": "signature that takes 44 iteration(s)",
+ "msg": "bc10000000000000000000000000000000000000000000000000000000000000",
+ "sig": "7886b408e355ac8eed58a28db36fbcbd60e3c9fca1f77e88ab399acdf57fd12c03fed5333307614b530ea3446cfdaac07ce1fd5310cca41e224bba5c0387aaf0091a1ff0727cb4f62bde0cc681d1ff59294df794196d69a377bf46fcd717c44904184f0b697713bfecc4ebed5e119f23deed3de861965ce6c8c7573e45f29f819c5a67f858edd3a223ab300fe97f3a019a9ec43f24058ff10241ffd008164c78acadbe329340da4a98b07ad384d87a9dcb82dc30f341f699e1d6865c00ce0d33533f52f6a3186add7d5c56555ecc7a4198550103c46a60e9987e00588c8720f4bafdc8f52c76785bd7c7ae66954b1f89a3372df91d963cacfccfa384c9dd1f00a381dc16fe205391c60ccc9997f50a05d7ec28a41921001228450ba221c9887c04f6c127a4b979e595d9d48734147d261587144a702ef180e845733abfca6b60c628e2cdfbfe9dc9e5c310cc4a9a79e9fff5c61af2e9b8eb25df72fac662f3b0c4860f5cb30ad2510013428c18cf2fac4fe524a86d600460d73bbdd287e470bc2c3e92df0c132dfde71447583dbb0472c2f6c6b99835d351788ddd09d2209191ba821fdaf237851d2d8698ebdae44709ba44358a49924ed5df96755b30fe5bd467714860e92d5c68c22eff2da7024d53fbffb6f04dfda5e9efd44b529fd708dd6898311e5a9bd73d2acc5518afb2341144fdd63159a2d8c092cbffafe65e43fd29b0e6a3183ba3eb0f4a0f393d4b096a195aae986861e7ec97a70d5553941e23bc96b10ef09397bd938f47d32c6a4efcbdb45c75214ad4f43d1dd73bb4a929b25e5c7fd00b55d16a0fbd2b4cfecd03ba0d94feb86837d404f03a296514cdfaa9dbf424b9c3344a84f2a99efa4d273701c32780a8a0bc568959dec3cb58ad52010253eb1096f752fb3eaf9edd4269cd53195478d6d9ac8229aff4efa1a7b7b924b38d9d5babdb6efd62029d21227e5c49fe344980a900d395a5635d5a5d5e4e60df03e587e5a69e0ae1114d9128e8162d111753456e0e0e9266587873f81ad81c3121eaa4f1937d5b2f3a36680002e81cad221678122a456f0304b36bdadf95de811143b1daaf48df48db876dfece80e7a02590a597d30cb02f43fd0ed854806d8e586785c01633b5e1aff69fccac11eb74dd4d15d4c7785d0e8de88163c8e05c07b2dcbe2ae0a6001e4b696751ee80393036d8d2f825d88ef3d7ce51cb2d24870eaef40d3ef91293457319151efc02403b5ced3ba2cf0eb4c825230e8a8e89f31016ca19d5cf3cd20d2d5b44d9748afaa034f8222d5cf20183783a26728df676ff8f55caa3f17df71149d1d4e9f71d058a3d1d6c2d4e4d2030d31c795c2fcf08832a4a8d1c2b2297ea3081a1b6c5c74e297b576a3b3901b071c6cfedf84e619e7c879034c36c0759282a271dc4c1444c6603fa2225aab788a5ae11aa242ce8dbd3422d4274dfc807812fa1c7d119a6d43a9e35d4af818b3727d165813d65441d2d8b42bde43d56d781f5b9b341bfcac73180d88c933d9e25c9a64cfcf07f3e03f89797156630f953e8380859f37c6c630fb4a95b290fcbd85b9f2e05778aa874a4936e10638d21fe3cfe0176191399ed293cc6230451a163dcc2a525ef130a8d1c2ad93ee87682ba8e061101bcc332794c6ee2673ab298982318a3b68d10dfc46e5ecfda4e1164b35dbd296e4bec9a01df32704b76315ac1c5c660b871f5d0ccf4065d8de4c1ffcc8dee4178bbab66f1b02179e6f73bf19822ca9fb284021afe756259f051c11694814b8b019bdaa9fb261e8dedcafd2d69b19d1f96f1bc82ec77ef51031b96dc65481885763c5e6746ff0bca40d1c375be2b2d4cde654cca8415cb2a83a66d216001d692c4937c138e6e3b1c18c54c02042f8d58033fd49936308d1377e5d88b98b4429afaf5e4af68f4a1f5b2e039cd6b5dd3d04777e65c1b2abaebc20549251188f697d1c7373a62cb7b08d2dd367021bce2b5f4a28e6e93d61733eda231de2b35c9e2c84b8063e9128671a9a27b21ce5b2c6196769c0837fc1f815439bec0536f017f10803f5ca14f1280988679d604e19330f625e3965e66d59bd820cc15a3ff8f28692381e2477453d153f5e139855e6ede385b5b7d72506a3bf53ac3ee843a8dadaa8dab1e2f84fdea598e2c6aa4e3b4ffc58a78b53171952d7d49b05fb6e59ed5ec857747f9b1526a256fc0f048c0c2e239ef8dbdaaf671eb75c56309f56397a3515ef8b696128c08cad511fbc86492e55feecc19a4c854c40d36cf7215d3980b7243107caf3a3d7ef580f2db196e1424d35dbeff8277d8c0b0e749e26735b78e10db19c8274a81b1168f09504d0a2aa90213a72bbb6881064db6b488c8c4bb5620b8c2793e853660adca017e12815b378106a88e59505be0eeb43b03afc211103f2d20174e5ef5772b9e87953f9ba96ca1e69bf79939d6eb75833dfb233d2f7fffe6cd1212ad896105492ee863883382403d0e32124e8a5fb30dd3d5a44c5859c2f7a1ecb017410fc7208145193230273e306622c8cff46393a73807cb210ff8c8e9bdbbf474377758214b4bcf6d2d45ffbc3b7664cb4c7f4d9dfe2fd8d76a2f9a09922d6f5876a09fa45617ce12e0bf0ecac9ccb6041568c0e1da7b023ff02542caca8198844eaee7144d535583bc7628c11b3c02d285ba06445cfc96149af917ff7b23a3a57aa9593d458d10e48c380396debf3d00dad69c5e234ef2dd8f27bde03bb8a214b8d8500e5688e5eb75ff30d6e0ca650b283d726096a46376fcb77a9ebfeec2a1a796193111f491e7c25e4a817aaa8333d4485a73f6646ff228985080376264e290cdeb8abb5e52b5003b6bdad5e941012edc370533c1773e8182f019c140595cc28ee1308c6eca317eeeabf6b8c630274327ce81da763cb7adcc4a625f0c2252d3fa2e2a75cee7d1b457f74760accb952e364e68b300e509ad72b06f64925a410c5ad29a55433b926d1cd6fa754587e1c761035c86f1b0130acf97a82a89b7a9a16981d8c451ef529dfeb7a8b072089fda297efc6f795fe4e91c49a00a5388d19bd553d0dd2db09bb53aaec2f2b1db95d5f3ed9b470d8e8ca43c83e04aae5865f84f590b58e7fb9c86b665bcac31841c31b965622e40f5d2f01bacbd2cfc9a97645bb303968c2bc041074fb9f80ffb6f7c4ae869942a1b8537c5bceac69010991cbfa28eef201b6f31bdeb3acaefc6a5fea55f8aed6ce9160973d621879ccc6d3c96921bbe4e3febc7e9308f0cab473874812051043011b4c1d73476592a5fef111e6e858b88fff4c03b99fb22b49817a7153c2251f4524ebab30968cbc0317cffd227183c3fabc5281df4467cac43f17d1ddc40047d1ae3935e354334ac595f0b756a8d9d712717f7ed6d83c0a58364ac96b294f17a411731b4d46535e20995af972cf729f7a8c222237e4aeb7cf8694d7432c95c7e9125bb03b0da402a24dca423eb97433685e698be8d0555292a3af58a36c5f23ba1cce6854e5cba1bb1d6c989ad55dab142ffaf46a1ce65d73994132962c6c50868bc697b2848f6b9f78ea71ccd9122cb6686775d7f39d3245ed1fef51ab2b9d6c95201169c1200021a315aebf2501460859b32feed4e37709c1d3fd82c495c69981043ae54ba577276e46e155f568b7efa9db1cb204a6b601e4562535ff4edcd884a2ec25d96286f560652c5ac73f12933d9137016f4fc3dc0ced8957523109cc0f97ab47d4d29d577c2618e88c4a4b6302cf01242a6af14aa1bfa3a287a3887885b8d0d276f3b113b1cd601f6e78e5b0a4aa1bdd15a5dac01213f57fac75bd292693bef59a3c1dba65d235c6834568f9a25e0a9c8150199f378ae482ada1adc67af79177d7e8d2c08e743264299bd2e92803256c8f7da050c4b8e097b5b8edfdab9c3d6fc8f6b2077d99f914d6fa20c10b65391be16b6bc0ad69794ee5e6c68b722765b12542ec9d93e6f622eac5a75551c0826f95c69a50e6ba8e7b255e002a6e8db7233cafdff1c0e3106b7126bff22c577874a861d86a1b323eb3936a4cc429e85023984f7940db34bebf39ba32e6242bdd78a9e707ed14e874dd9b93e76cb258b19a129a4b7368e424a56224187a3155349060e8bd0c0f71fe47a003314313a5bc93e774eec2def8a26f48ee2c84860b08e3cd414054792e2cda188d14a7a13ec99dd4641b5ee12592b312192f20ab577b1df34c445ea1d656c9c7ab466344bfbd4be5a4b548bd201031eb3bb49ab4b9c81a76022c413d62836ad9d5355f6b69b9215f9e729e8dd5cb9d9db4b2cda30928886ddb9ff89b48c49c4490abf9dbbd75aa0db55409ee084ecf6c0b604fcb6691e3fd8f54aece7c783e4c623920d52b5aa79ccb6e0335ae1c215c2198c0e65d0399621896009a21b824686114d958bf5211a4c51d0890a376335e50442cea9241ae3f6c50f3cb53088aedb6658254210acc27796bbd7ecde4d12f80db93971907fa13fefa7203e566c63a121a3bbe61c486cb044bd94b8f14d172469160984e5cbf0577d581d4500a9b1a94403de6f9dfcf7c65ecc9f92acc734cc6c0c59c6df459e383b73c265f337a83b0bddc1b0a494a0e67c7fa2455766779ac3080910162627c1101f3d4a545769d6e36fbdd8ecf075c6d9fb300000000000000000000000000000000000000000000000060d161b1f20",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 44,
+ "comment": "sample_in_ball requires 1 SHAKE blocks",
+ "msg": "0100000000000000000000000000000000000000000000000000000000000000",
+ "sig": "0d0d1a7af2d4eff6d4af7435a634d28ec5d23595fe7a72cf76d30f1fe16620c64862e4aad54fb78f8ea752b1e43e4e5884d7226840beb36a76f6a9b1b7d50b0faf7b8463f57c66240e06a22f5f3de4fe35c1bc6b5e42ecb1c0758069223e02f42efdbbbfbc87b4c0736141a70e6dee41bed27fcfdcb94f4213a0f99a02beba309a93d343cc932a6fd67fb90d6de7a81101a678e6d47d8b1c8bd67fe386dca360be789555196e2ff8704c175ab60a8bf3c9f3bbae1ee5a128f67467d21fe8a62e5f8ad8127b8d7eb37e43abc963521e79d0f1ed57fa341f743246fe69d97afc9a13824c79f7f3dedd286f3de739158a0900c99d9c8e5603df109c25d993f634582c832a79c7bd8cbf3ba07fc4d9e9ca8c1157434515538285417e6424209173c6dafe54c37e4424de0f25454b1713fdc3e72d01a2acbeab4d7f60d17dcd073c60b0ad5252cfa137c138448c931498f61fdf8f449225b07e7e0fafafb1f274fe5cbaaa136e62362877f643c7c94946075e8928ec47c04ae54d2085f7f2b1ef0e46dfb31b9a19135b6cc9da876dace6f61c2766b463b24c0aac5068714e348dea399986c4e8b8bdb16768e7ab81e9ea13e435f97e35d268bb679071d5b99d0d2f1526833e8624b6e4ff1ba3f5af2b23bce93dc7c2c4370cfbe698a3297005c9fde7af66bce7c9ef68337b04d7681e303a824e00acdae2ee3eb8c3e7507e46d67a4cfcfa9473bfa6334f2170911bf2ea75a3618cac939d11d6a778101e033cad958aecd89feabfa19dc6dc73584917834ed6552966f7bec4546ab24c643db25722b3ba412de04e9195898388d9ce04cdd9343da69ac9b3d3155620dde4052e9e30529904f25dd6233bafd4493b66844c8fa5d831377dc3ff8829114000799801d46586dc2d2059f6bcaa43b899e089b4f3a5ed4e6a7f1df5b8d42fda456a70e10b2ae14630f27e4c7257f5df23ad032c1edde44073585c04c1231e085591771cb64aaf62febedb33df56bc62f4d126cf8be4332ce4965e6e67d0be7871d81dab963c576ad7123bbff510f282bf66c0c1ea04aaa05a7a4d410d0e7b6ed22025dcb6ceac78f377306e973973adcee776ecacaa560dc8008799b306d5e617b2f51159b1e5fe5daf40f8f488f077cc55bbefbe8f5a61c28ae2b1493272dc6a4e34854f73f74c3442d9c302f96b6e721e2956ee0bcdb9999ff36d74b8d4ef036afbdaea5f977da2b94d0aa9136abd6dc26348873090cfe3d4bdda4d962f9382576bbccf8ba227af4ca8e017f65b469d2e3d35132fac40cdf03bf8f6beee66fe9214e1bf684e0aae75e4141d9daa1c77ef409f56424b01acc7ffda11cb9bf64a9aa71b484b49b9ee82dd8178dd4adc91d8d176f83d2cc7516d2195917fc246ebdc0dba4cb5a54ac6169bacbcd79adb72d593fcc3fa289f1e4bffb4612ba7a3318e607b0b27733cc70a2e2b4099056731ecda3212d1719a6902cdd6a05bd70d389da1dd0d0b4f6c4968676fe33c6e32d791c85b16cc9f4289bdd09acadd9f902d9a91f1559bd40eb6b73da7a623048140f73454e4ccb4ad65038109f6eba9fa01b0a3fe1af228e2c4134be136db2b029879e101aa8ab264e554818450734eb5a900497d906e20d36eb3848b092c778054c5ecee767c00185ddea39160e4513be858bfe5c7c7febf97ee8e2b2fb477bfb10c11f3b756c0da1d87e3121ab4454016b36fcd8f6d2633c73d4528221974b3f21ed3d464d47bacaadbb4647320bf0bcde38b0a75b6c3aac8b72d3c2c179417d05858ae4bd72d9c16713f7c116dda3ff8164710d4d14964b33b00b268007f8cde2eacea5108fed77d7bff70273f351b4e160d28d02576dd5f3fc3ab264c5927cddb6f9a81b852d24842bd5db5c5f2d893b2f013fc75426ef2414bad1b845ba7833c88a8ce76fe2644455be2ac1b9d1e31791693fd65f1ce35fee9d17b42b444bf1277f2646a19d76952b3fa3846c3d258f9a1835a709fc21472b0f7de7a729111e850f27f88764b3ab4baaeb6cfc644b9b6a552a61a7286b5af8011ede05845cb9359232f02ad8b3605b00cbbd83069f26b610378055c004a456c7c44606125b7b076b3f955117e03eaa514da82a9650e8b9247902c5048ff776ecaaa5ea57df61d726ff1754d4b1393933599edc49617836ecf78cc7dd45750b666b73150496e3999e339243f5644d5a3e57c6cdef2ea6c967f8bc93c27aa56ba5352666ab6dbccec415f610bcc76879793935df8e594f5c6b80dc0adcea1a1d5854f447604c54dad61cf0ac91d27ef963e6889075163e89cdec0aebf32080efcc58280b705a029511f21d311c1644623f82039e096f7e1d2518928847abd479840b65cf10d15851976e47444d64c6d4425310a3b5efe9b584ce7aa01b1f79d6e3092486f91fe75288736e852c0132561a7616f21b7713ec53f0dc53432f53eb4ad778dbe14664b55553ba342eaf94e9f76320f8f658b4c5173ab938fbbfe20c9987318c1a5104efe41419926218d30b0c97a366e60f6d1240e7f601a1b119df36cda11bdf7fb531a27979c9823efd2a75c70387f0296dc7382f570fe59568afb406a48e7c13bcb40204c92cfe13b3980410b229767a5412a7db82845da135cb6d5b2f9f5b22518b2115dfb02115fa1c4c3177a55f5c194450f0f0a518df7755b0b12eb412f5f6ee2256bb95d2985bdf1257769718de9b4f4281c3eb3407f175c0b43fee6b94b00875dca0983ae763624bc4e84e9a78f778dedef5eb078ee87a34941005c15cf42ee05cafe098005b1770ccce4e59d9d3f6eab9fb2673766d9b70ac11cd6d8b9d00809e58a046d95ff62e78a8e5525af54094c907019ec661600ec2c4ce5337371a1daad0e37f3a5cdd96a3d985456a588b5c1f61f36a33c6444c3b67c445bf95e9035cd4f77191a95a7e4c20715e55dbe43196809123499148a930321e7b2cc7809cf517fc4b2b0b49e57cde4b6aae620fe8cd0b38358685ab80061c1c126a1f3a96ab34fa957236cc6c59ed962b3bb006a1c122da796bf6bcf7dbeb64f4339c63d3a437b5898be19f6ce62024cf9b9c89964569f176fb697430e553a7c0936056183223fdab2f910047ad5e64098a44a2edbfd3007b0b5e4a5d1e6ecb44f137dae2dfc45e96f03e75c900f3f84e2653efded35a3c8b27e310dc361c0740524e52a1bbecce57d59c4913313e62bbb63c95a93512bf09228918bbf921cd5c62b8914b7142d6abf8d632c3ac44ebb6936c638d56cfaa7cee463838a921398acbbcb44bce621bfd81fab34a8ec33810eeb89fbc3cc469990089d2291e1e873b31398f2799b8d62d429b998422ed634bd7a6de8e991ba8492c001fc5df8b0014fda377cbc5ac74e40d50773ab5c2b4d08dfbf3cca590a77f4db0380fe7af822207aaf99c38676327ccd9aad50b2d4db5aedf74b1cdc50c484d455429352ef0aacedcd9792dc26c66081c28ecabc445b6f1f547a24403e18b0468c8881bdc3e82f7bcce254944271c3ba06c80555c8f3d2d051fb6007507eadf8fb991f45c0c9e9ff08838a425a96d72fc20d642c2eef45b4fa43e7b380d8b6648695c0b9440cc66665435ffd3df10fd786f7638e13706f6c5651dfe5f125158ff3d1da84cad23129e11d79d0f95548318b1c794990174daa895e4b984c175136185be534ed6bff9231c215fbf6bd297e24f528cda523d62b44aec15fdfb36281d804625db07567fdb06779325987f69f16f19df737d5f65d1abadfae70a1a4daba5a87e4ea3a09751ece2ec21dd24f719b1f57e795819689c8f2e83beff593735825a1ff8e4e4df9d031dd66120dcba07e6bfbf1b0946b3585a5eb807c1632a75353e8f7b8c4f8ff0af978afe2bec80d3b94917773564d7efd92a79cad26360b599be49bc657b132b25f459d58166110fa626cf1731be419105b4bd235176d60efa939fdd8dc213c695674bca27f161da4514f646f33557aca06189698f2953674ee73be89e3fc4c014877c6bec370ca1fe446686200a94ded3382c4f4bc58cdc12c354a486463959cb91c2ea0ae965f912364c5d98acd40ee312178b479b540875fb2a0164b7134564bf7fabf59add993b08a904452152031a784cbd36e19a47d4c9371e7774d3433fecb5d072d059b01ebd3279ceeba80b356e3628874008d801ed74717c70a93411603f1faa3924414665a95c475ac42de8d616de8be5c00fb90e5ad13079e54d1c7000905b62742ed70555ec406b49cd4aa6ea68342aa7763530b180e4f790475eefe1094426b7de9e0163a4990ea3494909c6c6de6b7462d70c8f2dca3152d81c93a8c184b0c54da7fb604f835df34506731774e6b8f2361586ccc17f35c8e21795ccb68a5cd73355c98a17c9ae35ed22f6c0a36c4da30af96ce7347375144a80dd851fda4971f20e9d6d18878d74803b577af4fa8f34c05b380acbc5282eb63f9345e4dc1f9f0cf8808a204ec789ed31ac9f009790d5c9b7d744ee3b29d911014c12b53ff691fce0ae5d53dfe1c7a367e694fcd2f688d46758ec308f3f9736701dd825153df883c0dc539c9dc3dc7dc9a9a35f453c306fc57faf76451bef45889e4ab0a4a6dbd377996c7cf80e0e7192234475d93f3f813197ea2d3fb112c2e97cceef2000000000000000000000000000000000000000000000003080b131920",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 45,
+ "comment": "sample_in_ball requires 76 SHAKE bytes",
+ "msg": "9e17000000000000000000000000000000000000000000000000000000000000",
+ "sig": "c900c9555fef3710097fa1a132c5d61623c554c4c837d185b7f3d1671a8926062e094cd3680be899883c036db34e39698133f314f6148dc3aafa088c06dc01009685f1a0ddca3b0311f9f521154c8a692a165c3a488419c4745412cb06392dc6a4d12286627b6eaba2f376a3225ea85f5890df2d03ef9a565ab2f94c99c25d9239bff7ac74e94df677e7282c0dd44c06fc2f26b33cfbf8da05b50fe725ae9de58d6be87628dc41ca774c8ce106428f012f2a806631cb5c763c722e04fc7e44f86fc75b1398a54412af3730a3c60e47d611530b873feba32ba4b34081e02652bc006b9e106ad6ff4b698445e0f0514837f94e4c49f52f42b6d1b655f90254adb8456e903224fc60271f280360a632afb017b5255b6923eb8c8cbfd62d24643e8f100391fd713b27fb7e8adcef58c26ac4953c3a73bb6d12262f78228774e274283f8b810c317d9ec0eafc05c6dfcac42d6bef8f8963d17667f7029182dce0566041612a7c9e6a5a9bfd953caa1e88287a20a83985ee07eae3c5c8aa408667556f7e19d657fe11036a227342358b7e42d5015513ad8ec587a5f19b33ec2e06a146904edb381ab11b1c0b0cada40d89cbcf5d7c9f4e15d8d7cca01ead1a66281d8e5f64ddc1393c2a1270d4a97b405d4d21adb189b8eb44098902eb48b50c5f5d1496bf5d5ed0f74e58b8aceab89a7cfbfff608a8a90d2baacd652115596e72fa1740848b2cb6b5bd8ecee89aec60118f16f4706edc781c6225daa0bc8539d82addbcb8810ce2687f1a171a3aee07516cfd6697c2e5d63629bc43ea3ed4a982bd516f3f448a50dabd95ac314c92f92d468f4f063b1fff69dcbdc3a4d8d21c01deeaaef7b9be41e934a68c144643a99ccceb8e3106ca28e7b0bfb3a9c5e31e33a822573db60e4a520e8f2190361b3387ca038c0210fadfd294bf8c1b302657211a54ff4b159be164680d3eb4c9abc7d6b07c2b81a5085f4759465f95f367005fa33544d56458c2b51bbab862135745a22d994e30692ca39b8fdba968b3766bb627dd6463c54487b81a27cdf9b1daab2a83c6af174f96dc454feea043bc0cca7ff9cffbe6e1ac04ec830a0b4e5d698681c9ce860da61249f3137e7980bde1cd4eb0a545c10f725f26a9e0d4e59987c4d516c28e938290bd88ec1729a553f6c7e52ce9fcc402fffdf1aaf47def0875c8afcb8167a530a94291cf107e095f90d92998f4200fbde7e5ebdb8a3c9282f57c2efe94ccec3b5aaae61afcb7892f0b20c3878e95b53a70f21f327b70555550a4805ac6a706d4bc408f73016b1045e2fe2c2be0195af8c44855e3233f99d5aad848cca7fcc43a0b5a0b37f54fd8d9f24c365011448a85f7fba7a9a7b4aec183bb680198d1626e24948027081d8e91aa6cce10cea8a6314eec2c74787cbb627a09f4ba7a691d963c8c026a2c1abd6a14059ff57493e5bf14c18fe982f7921262c85f80ba72f4dd88eda886ac13e63a8bdd9f72b04a781ea9e4ee2f58a15acbeb2a693a8f61091c02aa0932154817aaaebdcb7471b9d0b4aee6dc34f2ca644b0114b6244579f77e096e121e7143b77443459bd5cd1ddd9623fc5784bf34267bcd78068a0b2225f21ad1935ae44bcfd1a23ab4d012c8ffc9276d4e0abb5f100b6a90ccd7ffc73a44b5169a027b2f92f7a49573c997554e94fd5a4bf54f4cc473e794b60cb3a0b0c5ccfe6263c4f91d77def6ca8c0fbf91e923234c8a2657d91f6ed08e6ee04b3b2a62f29b5f467168d580848912b5c2c05386aa52ff2999d6f7d5b142cb1bb78a70db30d4bdc850d52e0febcbe452966f5a5d6f5fbd28aa498497ab03da0b3b773bb2849a4f1d6ce50ed0d356c3142d33eda4f07907c6205b52cc66d49a5eab02d8fedd50847456702f74466bc54d9d12841e65c0594bf55539c177cae24e9572b1adb5b26310ed4ddc2a14421bcc142ffb3a43acd612df758abfd95042fccd186d3d9c5b0cee0857f37231bc9f8fd80d4db3259465ef11d0679210394713d99bda76d6ccda91d31a287ad749a344050a9ed08f01be70350cc2991dd4dccc04ff78b9c9d339d097ae2d828afb843418c82a707c0eccaf9a3b412fc68d5725a31a064112930a8c6c7350664604606d4d1f817c842ee4ff032f69ecaa0cbd49768d13d06835a07ac388da3bef18115fb096ec01d42966d84795551b9ca8e0d11734161c71713de45b545695b14cf2d883e4cd8524e9da3f26f390dff3a23b605e24e812c561af01ff087c544af8e1b4aadcb4ff5cab5ec1d064cb9d340a8b0273f178bdc8b413ac88cd274b7f0c1bb67f758682e31376632e6cc2cc4c16705eab7b1fdc1127ce985c0caca5818f661994c7a6cede3ba865488811e0cd226def609c0a857cd2fea55daf0e116d18d0d1ab393403ea1393fe4736ecd5f0d31adf6f43eb6be97cf58f8e5bf5b54cd2ac0d2a444e8f5088396fbd587048de2fd1ce1f3dc69e1601d0f723b843cce8cd9e6144562003e5bd448510a3d385aa231c12432ecfcbd58279778b93019f03e78ad39883dbc1907d939c1dbbf5f21a76ded80efce94867de48fb54e64aa0cb93b2931fcbb7cdc45bedee33e1552c624d19b116dacbf4bc874274bb242cf3ed50489d7dda672833f26d7978fc0766c44ee270dc4c70f16705ce3af7eb4d9acd2d135dbbb3cbd8ece1db7aba3e783c853f1b25a30c04fdce0d8382b60df232b3e94d976b66b356827d55046a317dd6ebe6029472dd2733d960dc4b6fd1610d4ce57e45c48ceb482b8af3ff722ec97c9e569fc066edff9be4df60f66e862c06a6e04d7401bb2b7156f8b85747e9c51510d5cc6e0ea37bbef7f8d8124fc857258e91f9e1c182eeff2c4644fa079527721e846ef62bb01ac56d61ce40a2b3ebe75c0b19e716b40a83933e9d4a8a3f31c7245a5cf049be097e7a70921b850978f9f4205d58a9e0360d8421060bf32eb6b46ab7e3378e9c28657c42b14a94e2b658d2f5d3cc3a5e13f50d929204fb4d66230d2075831646fb3775d7dd99755df394c81ef115cbac093c69c735cc07f8917732dfd564d13454f617826b23849a73191b7af7992320ed5ae41b89ec7fd62a3e42bc48dc987ac55f8e552d0e056343b80981c9c2f2fd2d05ea3c8b7be5bb115a686ea99917e8569160a0fac13b7602d46f29190c6f80f69e46c519619d8178b7f79ee1bd6f87afd5beac38a3842f734bcdf6014052ed8769af35ff8a329b50942d1c99134fc0c31bf5a57a26367c0e7d599e5385dbb328d64557d6034122fb8bee15ed62d8de367a1be38f0c62777fd1f27438fabc01b186cc4c045c4c9aca26b64fa1e41bafcf859bd650836826c45622892ff9605b61cdd8ddbf59a4a1bbaaf8f9cda01545f25957c2636668c8e9c2c88dbc129d2633b6dd8152831996bdffc019fefbbb0178a524e4b0e69e1c477bb9007d679725f1ea440fd94ddf2ede8b6f909ff6de1b45603ecf44e63a64d0149599cf49b60db5e21af00b3aa99afa349e96a57cea5763a096d97c17b7cfd6148fdc89470b1873ca1bbaf004eeb665159d57a7a0dd330e560caae5ccf348818984dd5b94ff8d78931624e771f22f0cc18fa54a5068fd9c8123218c4bbd8e8996f128ae39a10118840c63a5d8819d550aef6a11252cdaa0a39936de328c12c5fea5e7f2013b812510e8a75492b5f694f90682dd8176d4fed45b3919ae39f90c2bdc568392c139f85a84940b5e0ea2a79a7b28ac3d5a79e32e545f7b9de9d6994a6fda228030f74288e967d9b60c51fcf047af3b4a86a5163849bec0d2b63b2f89ec5c6f8784341818d2196a7e8c98881aeca2869088e7de9afed497e4535894022eb36fad950e396dd1befe453b14e968b6bd9f810393193e90774eb4131b6ae211641b15f13ed5482b5fc29e68f91046b1a895c3a9464d1e699a30abb85afbe40af3e33a1dc7e95f93294b3712ca8eac40326a32a7f6470f10ec9888708be86c90122df4e3a8da7778ca05a187539064ddf9908d7b6a82d1ff8905dccff610c9765953cd67e3fb4ccfddfe3009fb6f2674bd99228ee3613715897a35849a86bc0a38416540de2b5343c15b1d70d2a73da969ef67d25484bbdb2d9fa7031930065d4487ea212f9fcf7fe9b044d90572f98add754b8f13757651f065b43325eb0cc6a6b72381347f8d56b99876b0cbbd936bb2ac401effb14a5e828a2d74d12fa8aeeed3c64fd15868903920fbd0a4134f24f3f1cea1122c7cf9a5905b70c2162d9436c456d240d509169a67c899b0256d9304c064682a986272d12b9b4562ea4dd581e468b65653d290bbbe6fb42c79f26e2a12792ba8c18bf59f6fab262c2fdcc5e1679b45e8e5e400683b8bce46d4aa7401daa837fbc0f2834d84225fd82f3d35e10f505ddc776a960e3387af22681d85e6a5f3a0318fb133ffddd7603183dbfa4d36fd66e8bb2adbbbd72ccc3f003b0af15f1a03893439b3953670c1a5a9a67aaec332db413c55896f9ad05691ac236ad7a01338152972add9c221a681b7350bb00d365b5b88d04923d118d547ba7bfc74d80e4a54b3b23a9b09c79e9b368ef10d9e7baca7249beeaf1df2a3de73d79a670ebb4d6d708397efff2f303d44464c920631a6bbbec2dadf1321303845585da3b5ea063d436869aaf3fb00000000000000000000000000000006070e162028",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 46,
+ "comment": "z_max below the limit",
+ "msg": "8700000000000000000000000000000000000000000000000000000000000000",
+ "sig": "0d671077c3e64cd312a5554e0d6728bb10120a34b3de9a7d85ce41ea84fc1e02695340f707cbdb4dcfb3d6f590978c29426c111719a47a90d0223edb934a716d7dea3804153a75c60d56d0bd4334e2d7ec9bb9db4393eaa9a98b1bc37d9b90df162945841c4815b17fe28090b7305d2e61c3ca0d6f2d7a6e39c60378f043494d541e7f47d70a6813daee881ddc46e8244df4732c82b2d32ce01c0edb0a19a31e63516f0da13228ab4e2aefd5b9d069329af236a971cbf554713cc6484ed052e7826388f5f0a1fd8b2bd1b92421edef80478f457c899edbd251d5efbb77eaa4549f2d923d7fa5ddfc3b559af16a8f690223180ad08fef97e992d5d0e44af54714484359ce1a891bdb019de9ef87b1cc626d0c9a09a2949f15095850e997d42e45774e5ba9bc56bd6e6d19be2ca567b534c155905deec8dba9423469fd25cc807f079dc7bf2be38a350904c4ee3f4d271c90e323fde28b66f91dd47ca7aa74cc3faa9a5f1d314189985b135aa7e6aae41d23a162a8af8e51709b54265b51d9527fcea0c86226cfae391a4b0e18634deae056e8e34ad7902f48b099242e4663e2dbccb9c145dfe0d780590451ee139195ee493c7104792b63260291da3957f1fbfd2e8af9774c22bf224d547b1565759e2437fe48f5a976c2f273316acc789e3ad247266048d19172a16972599f50d4021afbbdc6e4b6f03ab79e5fd4e550f8419b9b2a8ce174c521d48959f83ccb15d8dd55a64b12d5c8d6037382c3a232c89a8b56318f1553c9844b81905d1e00c46733f24a6d5f88b67c0245e206797c1bebd61576b20b179c2ee7092a978a710c74fa32fd648ffb7ddde487309f14866d3466922dbdd6228316519cf1338a0e544de4266fd4d9507216913dd554c4603e74d2b5f8e4f2114059f24bdd3ca44a88d88007fc45d571767616aa45bafd6ef4977bf8459099ad4434b8a214207289bbf59438d0760bc46d555acbf6595a5e5e9ebeb9e175d0b6c3e4b37a99d1e5ab0c07cdfe8145344c9e44fa1ca5d77f28db5246953e4542eaa186ceb249ff12c15f6e59b1b22ad003c974ca59c29e87034d5fce8dd5e03a55bc2c3dc22f3298ba4a0e2c3f85857fbf1d209af66dfa242ba7713b7f0d5b4fcaa73c6e6af62d3676c77474d88c451e19520f0b6783052e70e1f51b5a140b1b1584fac8ebbdb76d0bfe41712a982b82836c40ec4396ec084cbe92a0e925e798a4dc2e91fb6b07bde510e2f4b12731c4a6335e2762b8d65eb1a2ecf0d2a52698794ac293cf4a9c936d6eb21167d923daa11d3c112e3670fcf486bd40baaf37aff16314dc364ff74172f9deb94a70f8ab0ace974d6b22a15415476beb193199e8657ca7e4259e883c8736a975f9de2f7d3a2ad67dfa1169b4b2d83fc2c64799aa36797afb106970ddb63867eb8febcaf43efd467a28212f0f3208a2e9bf8f62dcb849091fc98d634796515e1db40f58d0a30d74a5d1056dd735d30aeb07f63c44614e131a6f0649dd2645560ff7ecdfbfa2700282d3d297054d3ea93657e5a39bbb7f2f1a563fb3f6792482d6afff95b6edf1c38e207d11e453b67996c378c22b8627bf04143d60e7858c07766e976b5e786441dc96ca44c584a32d00e64bc109fe2e0a59d039d73ee82eef1a50d6640c7dbaa4bcf7f232221eaf31c51de48761bc66722ff46a34ab567d562e60322ca9e501f8f4a7dc3eff3d264d59647c0ec9854d0c0c9d8e2d063766870976b4be7a52018cf109113a2b8b295f40a0604d0b31f0ba0cb395396f9ceb29c470d24f6e6d3d3dbc33ee78c2c8f3c47dbf2730bc131c9e1c2f9937dd796f6792b1d5998970b14876080c8e7f9035d63e246ce3e67f60d66e662d3f76e8195dd0d2c219e7115d79283645d0b9a1cf59d1e7e5a5e4163e11d755a2ba7975b983f40d59fba6956c73a79b64fd9f7c975cff311b0e2b8290f51ae2d086c782895878e68dff23bed99e4dbde108b46e5d0b6de55045dc34090282a5cf3e3df31a4e9ad37dce65585a6c72f3ba0e3ee15d8f68cea8356713015a001fef56079a8b4b934765ade73bed70aedb27a08c6f9dd0bef90fa4c7d119810b3e07dac414444df971824104bf43786f9337628322238e8886cf8ee02ec38b2c4ae42edfb0e95d3d354c82da8eadf476d145adf89917f619d32f126033e816f2b53fe8116641998305f48e86062d26cd9720722ab85aea392c804a3e136a00513be362e433eb1a8e9a5904ab3131665941b175c135031d7878c66dac7a010edb12c45e8cbce97837f122b2beb2159052313fe3f51148198b6d3c97851ea3ea26b87e92b7a16abf2c2c8c3a9717bca590ff3cc6d062055f14551e03895c64500eeb25f87e219832cf40f3cefda3d59bed69a39e5b46cf8f3f8a6c300122894954b95b3b8d995504ee81646da4301b6914066b1274f96b21386adae3b2ea22122315c59be277fd309e81995a84881954164ae1a59addb58c9edaadce1793320310e3dc955267341088e398c2d8397bf839833cafcaa94582e152b8ddcbf2c4bd45d17519614bd6de3a08a32e83492c2ae1285d26f667b41deefb6d401e29cb671281e2e06e79cc1ebf470e444da552bf0052db7d087907a06a50b633a6d0461f0ddec6ea2c71df74d85e3a920a77cb43c02f3126880febd1d20794315a4448177a4d2ffac04ab3aa0980a7c413c7baa6f8b097ac662bc104a4fb928e72602adbc4370795434ddf9f48f96a9c6a9227781069e209b826ded8c5239d0609f24b71d31f564dedc6edee96ef862e2a9fd559702a49bc61173023edc0ba2742f1b2278c85887953941d5a58720a2e2120d49bc3e7d6a7f2f00c6a039e137c77db5f7a7c3d43ad2eb0cd564af81a7584ceafd603e0a83823de3a12df635b795dee53cd93145df3bb8497da2b683e7523d859319dd4ff19f2cb01763e0c41574d584f4c5619f52b4b4cc2f2c74925043eea26754d5db6ca5c8b639e79ea8a09c39d1d4c436c0ec849450c1b66e450b3704fb8c9587297064fda4cda8d6be6e10c9a6bd089bbebf8decb1244fad182e6cab87fe3f3edff5c13efab840183db736e701e51f560c1e14827b42d738d37d68ffeca42dcd5466d50841dfdfc6aca437bcdc24884d471bbf20a6921a743c536bf01b2b385fed9a3f3626798cb577bdda634f8c158833e52d121b343dccbc31d3044092ca4cad39e913dfd32bcfee874afd9a02faf07ba7108c05c4beb78c050d5539eebc699fda08b360ea334814caf4fdced62f87c47d36c1fff5d8865992101069fb6679d3f3ac87b7e6e2587214105dc25f76c4a6779a1a9e6022ed9ad59ba3a7b4bcbbd0d63d2bc0674c5fe77fd4fb6a0ebf65b5a73bb87cd5b36dfb71e7a54ce2bf8d9b6a86057536c4a7f0a7c5820828a0280adbf0cfdded491fddcc8804eaf9fc5230d59906dc7a4ce514117f1a9bd0499dc065ac404512b0315a6ef17794bf296d9d371115f60a94015da2f50cb9ce4123b1ec8c0c94213ad8b7018dfa325e182a68602417c95eaf70789d521c9d3124621b36cb022e61f211b29baee96bc013270948a601fa1d3fc66eda9be473b3ec13fd0bcd59b06736e8296053a4758c7e7e1afc5111e1d43dd199aa708d95e548ff21c2d3e4328d43c9637baedb275fd9cda7d1225ef0d40864e6771e53bf5fa836121b4b6e9db6e1021d7bd93e5beef63af89b889ea83429abcae0bd9e1a079bc35e71ca54152c281e1a27921ba4e6b8f7594df32676d4762b82335f1097a92f49a86e5641bf1d77175a9476cd42f90aab18671bcd7c35dda9a1cb5da2f66bb80a5187abf85afb1557e0ca6052c63b6bf9627604823c3b6150eebf657089451bd04981691098092dea8cd5a26a693f0b38f42cdf42f831735869a15dbb3d0c322d85b0ba40017c4cd72e1a60d972a0d8f254e48fa6fc702a555f0f76598d1de2975eff26371fe13a6ee48da8252053ce0396f352191b416ee2f94dc847196def54f311f66896893495f0a013c04c442806c3d4e1f6320039db9bc1d94a51515344249b480087c7e3e937ab3124254c7824a99ca6b03f165d0fbd026a641ecf9e538f3aacf2dc6cfcec150aa7bb45acd5dd9f20e0a1d6ac2a2254a365130fb48f69fec83699413f5ee3e88b678c2b2d1dd316e5f8fdfd5a344c4241719f55e17f2ce1a4658067065efc4a4f970db9f1a52cb0ce7eea901c451ba95d6f2cad66610c33c9e1d63af3310db7e7cb85e3523c79dab34eab84296d7e2f610d23c4c9ace9387dd0d77ac3d37f1a35c78c7c31a7e55a9a4a95139fee0339c2647a56b32864060c43b9aa9b62888f4fbe09053dd5e5d9e71d311911f3ec864bab3f3ffae8c8b790cce1d8d45c3ed020ff01a827e851aa090338602920013e0ce3453104a8abb8e69717b2f7a9c1469bf0c23b79bf38c73231e7eb5537fdb2c677bcf1ccac3c37310738246641f4647721e7a3e165a187ac1400a0ee967ec60dad51eec6da1b858985345da8715284fdd876292493b21208d3d305ab93207c67180d217c22102011f824c7b15c92f2f32d6a39f9d9a17fe2874c84fc4456d39490dad28388e4ef46c602db21ed43054beed2f8ba71fbbc9d03c6dbdeb11327883a7be0c0e1c315d747c7d96a2a5c3d7d8000000000000000000000000000000000000000004070b0f1523",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "BoundaryCondition"
+ ]
+ },
+ {
+ "tcId": 47,
+ "comment": "z_max above the limit",
+ "msg": "6e01000000000000000000000000000000000000000000000000000000000000",
+ "sig": "289ccd0e0e58656b8d32556fae8b0a317eefaff794b013ad8a43234658706a2db12585faa83808a733a3a88655a5d7e0201b8bfbbdd3bb545dc306806a26939aa9c93ba58f46ed8d9c37a9f6e0e0afa09f6c3b3f3abeeea3c613d122700fc91e88ffddd965df08430eb37fa28bca6db2886601e075f77bfecc67e415d1ba783a01c4776e9b96fc26a215084828b0921c90c59ef766bebf0210bacb23b7f26b8e572bae202b9131e725e367563c1b36218d63f8a2988dacbc73f4a46f313b97f660057bab41c1ddb99df76df8b22b16754c333ec2f141302bbd2a1e967c50882699860243af42b6ad5f368d245823a71c02a338ce037e337d4d8c5e2c2c7d54436ef786878e1e25304a27058d89e7212f688c50cb701395a5c2f0cb3310c9dd48777f80edb0d2a99a91f0a444296c1b4976b6161a9a43e5ab551b135e0dc66be2f06aafd8c50c109d413215ab4b39d3063e061cbcf57d2af9ff36f89f0c80d483af483673595824ed4c4c71a02ab8c4135a6791889b8e43958a5b509332e84b1380991d79c6397aae3cb3dc522a7da89e925b189a840c2ca9cec4cdfd8bd3831486d2c0d15b1b9bd44684a8aee873806610e9ae0fab2c61e1c0366f981d5a42bbe1d9cd179883f249a7a155b80bdeaa1cd017e9d3e0080ad03a93f09693da8773b1256b22c20a6531a9957ccff0bb44cf0ac3e5b0438949a589755d516fb2b596336c153dcbd5565b6786cbee057a41c10fb762c280e850accdf476392b50cbeb2d8e7f6a6856887e4a2098cd8f4264cdf39972add334a5aab45002058f19c6506069d7acecc184f245a25a1d242cdc41d52f2b3cfe23ba797c4bf87a33cb593963179e5fb08ac5edc5d4521af466cc3c28e6a11ab2f5f8d06d668fed5b09a7f3f6686dca450467c8ce0b8e81ef605ade33349dd1582adcefec138f004df5057b2a54173fc587ebc3de699506d19e61380291fd59e50a8620f1c9c2424f80a48cb1c342534f26f50e52ca4056c315348dadd204467bbb485708007cc2d8477c518047c42a5c7bcf83e763297a2e4e0fbf547b4e3e577c2bca76762b35d3b849966c9a0e9d5cf570bedc0ff1b779148fa125566b67d14b62421761abb1eb04a9fef43c08d9dc793585fd30330d3cb1b4651ede3121e836cf427dc6f93b4dbcd1d3d0b096be780cf6318aa31d23f6353a86da38b34265b277b7710a025e0e91b7133d08f5ded6d74efc88a4f40bd256a6c6f86d4b869e27953a6c1a40d19f76311b48e3be34973e65f17afe1c408062da2e2a8c474c6a3cf32adec928c4adfd9611671f8b04538f7605ce6afe0d7836ecb06913555b730337bb19a222d3a7be5ce8ac44db76a79120ffc7dfa81c07590955587e61828f782e176003dbc8fcc38fffaee982f61e3bb503ffcc44806a23d3e480b4fc5d17c630b2b5855d67e884d6a2ace9e0ce81a7a0d127dfba247bf7b90634f03049d7aebc1419eb4e7b2ba3303dfd3a28fe5d42a73a7e190df163cd241bca717679c819a5bfeb11ff46e06c46c4c9fee4005a466a9e8660e01d050fe1c103d73bf6927e0ebe4c14b314b3d9300362b67ba5f0dc334a334eef48fc248a7604269dbd9dbc0a380af5ef51a91a48689d190d152213a818df7965e4ffb87b3bb7b65fd2ddd35e947789710c898e95b431c0765cff907b61a799d65e2cc99c5696777e703d3d6459a71901c0080c57c636d21fb0c9d1846e356e0e3cc7a6518ac177a61cac9b6ffa8b72cc77bbb86165303813c21c750f2b930c240e4e1a3a5b1801d1c8f4d8e4ed2e205e9b99fea36b0a26e015ebf7dacb547c17a847d495d5d35828683f1432cbbac95d3b5c77b151bddec5fdac911de1f096cde0baec71e5bafd5fa93a4a42185a4f324ad14a7165a38d659155c4afc72e1591689da8f152d2c7836f3ded5e31931b3a31eaeb83362f2f48e04d1951c06916f557289b01ce62592bb97122c110d9b608a181141b78e5ac37171f424041ac9d7c56e6d85fc635279d81bcd9ca023859bd152074b07337cafb0756a2532d2c023e45cb48fafa19030b0b0d79aef3f4576e35ff822e7cd014fb9d298dfa6a7e8dfd4ce2c52ccb88026a620e985a170535425c01695f3b71bc67a9c3bfde4b7035498378c9fae3921a087148cc61ca84953dc6e86e07f6056d9d16f2b4220fbb1b905a1a89ca8325e3d7afa5c18533bd478f47aa69c7d0d1d1f75cbc093cba23c439aacd1911b152107155462ec9ccc893448620ff2d24ac6d4c0d3694de957c53fd21d8f7b83e7cc2ded752b61ddeb1a222fd6b9576e6704d0d1adacfc963cfb5844df234d7eb97754a1c559fe81b4e64907166ccae5f581a4f8b90bc63e478b02a7d6194e3607a1dbce74fe2aec7eb63ecf484ba30399fe1315e59dc2c97f9f6cd188164cae2623da7c83bf96031bf14812612d8bc940cfdce410c7cd5f4668764051b82327822fca43cd49f35db19e1d79765ca4b662c8bf1bbeb180776867021054c3461619bc477c70e6fb36b80feb206a003ed12c3984ecc328d4d476b66a402de1a711d9895700897679a2c6bd8481794ae3da3bf011ba67873757eff29c135085533139b01f3a83a5504bacfe73cdb48acfb08357397c7d612ba4811fbbe51c9a18d50cfc530616622ca8e2f06801473538286ebc46a04c877b72eb8655b4b6c5cc9bac27bf6490c5f593dd020c5d30bb462023381cf1fac19d71e9701c49d539244e5a9922807ebcb11224cf0ebaae37262184c61774df08726981ca49531e417c90e51df7965d0f8508e525bf9cf4c6027d74a11f8141b777da862e50af076572f4c78026c7fd6b565624fe0e2fcf3111b3373f854bad57006f276588c9ad57bda5cb5a0e02e659cd0dbcfdc174a1639e6c9046516d916534cbe5aacc933ac4abe52295c8533a4a1051b5cb4dee48055e7e1d1bcf2154e1ac81a54f1f54fed9b920ffbc2accc896ba0ddeac418a71576aeb9abc0ab3a0bc15e57787ce0fcbc868ff2545a83e27ae616f2fb5939de3b71bc9ec5a2f064a736ea3e4afc1c8b5996f0ded8502c5a16317daeee9ce8320ca4346b5434769ad9b8784898599508e173d7f14d1232a2f84ddb1fcfd8de75bb0d59f8507214df21e89762bebfc4030bf0c9239cd7b6bdc4085f1a71e732a01c0e2024d13e64eb0b582bbe36a214454bbb51eea590ece8d1f81c95891ba8f203ea52c068bda155ea6f992ff1eb276a11c584b5394e562bf6341829fef1936397aefe78264fa7b9b3055c3140cb4635f20b3e4dc809e4e48ab4520253330a35360ed41ea3eecc0ed7c4f77c6d86b507934c8b800a0ef652962d6d4a5d810ed17643e950e3025cff4bdd524c8dc19b9a56e3c79c6d5e106e4e199968660588a063bd3ee369ca6f8c0e7f2034caee4ae4824ec663c4fb485c81df7ea86d7226be80d5e63b3782076a9bcd0f253c3564032f7c82c22050607ec01831f2d5a78f197681365bdedbeb6076037a88aac92733087a110dea7d6103ffe6b8596d70032b903d1e619494797d6e56e133538f80a91d305b07ff4ff718ac8fe0452bb3314f89555d81526a02cf189326861c4248a40866faeabe04cc1a7c88196c6d4fb3fe2af385212a3cff398caf2be65e7576befab7624f1e9f71c285899207c2efd2bfce2ae6ab9fcc6e46c42b028c857a86dcc944739ac4fcdba51b16dea3672149f166ec8e5e6913bc355208e3a73b89480e83890f0e4331aab624ddff3a103fbc4990de6ef8a2a48eeae86d7c6fcb136aaa52860e41a135a50395e12511635dd7dba11281c410173ab8df4408c9a2b51b9c1e0ad9655062957ef4d8f0572afeb829ec443825c082d67866618946f2962f6541c6b5ed1528cb410521e493680e9d937a50ecc0c50784233358a534e8bdb0c922e6a89b179d2299c47c26fd9f3c783514ea19a87b14694211e55ee9e4714bf5808c4da9a9605b12c53148e52014b5983e03eb47755ad4770bd54dd1b071c9ed0c4cf24103973b815d267f3512275e066f39c2c219c475018e0191c5d18457a2f4f224fad67deb3333620fcf48f4b4df62f358960b56387a501e69ace7d6b438af7550d6831d58f0f642630d3ad590c9a588e25610a963ac2577f67ede49878d87a30e69da83c6ee600022f87072b9618137c029ec6292d03b21f54ceac63f740c5a5b938b5c28cbe6720d55bbc43fd9cf915bc199f32911dfcc8642186b06988443e1c557a4713570505ff98b0c516db185da76eafa1aef72732816ff31f1a829798d1a5df2218649013a1463984e585952ef618e31ca2208b162687d7cd723e0b933fa373e3d795355ce1bdf5cbc74e8b2a43b72ea36dfff3cc7e21a4e117829f2f547fa475cd776600967b0c0db0bda413cb905c86eeee28bbb4f1f1dd29bb283a43cd04d2661f069077989a1eb7fbf2c709b304cd9fc3277f86d85b2012270e6fb2d083a814388622548c999938f1d52f3f9f532a9632787bcf8a63c6ddd5e5cef2d19e635579273ecb0b43670f12bf0e93793ff345afc2c49bfced401152f334188310c4fa83f7d3f67b6008e98d1ef9dc383541b466176bc166a0a1928b99443b94c585a5c71727b8096afb4b6dffd293093c8ca0e1028667797cdd4f80a154a5d94b2f662748bacf306345265c2db0000000000000000000e131c23282e",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "BoundaryCondition"
+ ]
+ },
+ {
+ "tcId": 48,
+ "comment": "r0_max below the limit",
+ "msg": "3c00000000000000000000000000000000000000000000000000000000000000",
+ "sig": "8c5c7a82862de1800a34b8201c791d6c7288225427f7deb02f52748a35a8ac269104927b4913e528717ea107ef8605f9b7ae265f798846a3abf6bbe7bfe0a4d6bef6a1f6b49d40b972a5a1c28d19db196f709b4d962fdc646a7988f80d5af74b29adf34c7a1aac065f639925423d37bdaec428de53efce1db750fc2686af90ccc9e2865497b7cf736829981afc749e85e7e9b5044a92b9ada3740e3fb39251c5bc400379c4ded2615bc3deaafc54e34129b5cd1f4e9612964d353546ee5dcdfba712d985cffec78e74bb2e6c12ab45233ab42f19aa095ea0082063fd0fc8e1023ba1bba2b4816f011c644be94382af44cb7f40c27236ea1e1e6f49ded751927fea168d5a5b2f238360835adabeb4d1b1ce12ccc6c1b8e1e855cfe323d89c34a1a683360ce9189db6a9a93bfa5f70b7238d7f796757d547c31f786c9bf1c91546b325a05034cccd586a6f37879fafc6973fb02a540cf84d1a4f4c3f3ccaea925567b9571bdc116cbb14c884fbe35974980121f7d1e6b0413fc3cdc42dd4fdfa4c33d2eb774b3b188c3a2f2ef07f36489e80027bf5a9e3b607ca45839bbddd9370c9dc98efabe00635622562ce4a12c7c6e2271876f880b8d8a9a63e5c10f349490f982e5215dd94bbb74bca994aae7143c22285c5a15ab950ded53059821a526f6f10fa3feaac97c8b83453b20f314e8cc509fde7f5daba0b2cf4676a9286e1d9ff51f7674decfe2ea54c11a9562b34bc15577cd591088e5abb0e49c152135ab4d496d8f7abbbedc1f332a06d7ba9d9a65ba61b1bf3bf67f9a191c96be2b51d790f8dfa988d9e69a5ff9484967d5fd33b0d7e004a73839a9603dfe2bd2d1f838fea9aa15c9bb2c0f2dec02d17a3041d6e4291bd7d4c00ace00ee1f4a6dbc5e4f76fe39fb4ed231b5df55f7a42b9366396816b5c372975d5fba004a20a7649341859903760ce8fa444945136f9ad67017cc70d3f6c4d8ef7459f1a544dd93d135b888ac4b0f6cee4daf45a436e967f76ec477c8efecad626da1070ff4ab94dda6bf04d19a5391333a2ec6033e780e6b3c9575e9281423489db02201ad6867b3e36e1f462e6b196a2410206a71073f19d707ac63320bade5c6c42e2998c55da602098695db63144da3f9a9f38b53022df84ddf8777a19d678659e44e35f3d8e069adeabe7b79856f8796453f3a413b4ac93d87ddc119d82ff235cad30c561138fda8b0310cefdce08d4fc7794e964df23d5f153a711fb73f694ddbba93cc63902fde5488d318f5359b77ba076337ca43ce59c4a9012ef52d86c34411dbaeb3fb2edb4a70199885d9e04e019c4a406817b96d478acc29f5db9b4cce0da8474bddd09619198d97b3609ac1a3161e75ee485cb6830c307436ee1c48d80290cabe41f3d4b881c4af4b2c2d82f4b6adc9fe6a1532e39b96350f7fe82a23bbd1d9516e1d25f089cc085c5c72b880f0306f73b5ac1fc805b0dc5e80506e06d965f55485fa61fe6e9ef0338e9de6bba5bacc703eee361de69b3264c280d75ed858f736ce9815344c859ec67a95048cb5dc03e328e9d10ebc6d3dffce0765c3fdcf5861c5de3aa7a607bf78334e8d7ba00daaa7ade8f79060b1e57b9d46bd6f448509934debd4e23eae219e04e828d316b77ef5f15041f3945b1a98374d1c47fdfec4e4714cdd7d2391df6670b164805b0a95b2f31d937446a058a8f3a8e968d0da62b8299405fada9e67e001b6e30cc4687120fa759cbb390237cd7acefb0e474dd95d9d790423bb19c390f233e3f8b7739342fb2adfd623d4c780a5d1e702b8efe91e0be39a61a8a93e48a0d730814954a41d472e6395999c828a98d5d9bef23ee7dfbec1c27a79cc8edd035adc5763eae1ede0bf16235b8da7616c4882a6724bfe2f7745dd992accbfe90d1af3e8ce26a9a63701089151f4ca826e59bbcdf40935e6d3b55329d757dd3461ea78f6bb109389b92e41c5d18f811e783779f1dc3a14f0f3e30a15bd7b377c1bcccf621127865f66f64231a4c77a913d2f9f5319028a1d585ed38835df077e0fd0f6101a5b110650992f029bf70b151189acefa1b4584f5d56676c401804a6dcaf7b18d43078089d580eb6632c4757ab77c6c5fe3b28e3a1dd0aff4d00584235b2515971b9644d100f488ec980e1f86188526a37d6343db87f23ec9424c900404a0d4b133df270cccf54338ef5d6e0bd7a2359a0a892829ec8a1bd8f8529a55ceddd1f343ed20e08a0a0b68e3df9b22e1201b1ddd8184e7168e12196f84885d317fa0102753e6dee29a5203d2206fd6eb094b60a58fb3b0a5a59b4cc109e948823781ec9bb364ddbaafb1d553dd4933191b0ad56b7bf3398a4b1269aa329e47646f4e9d97e3aa2fe320efea245db47b63d0c36266c3f7d1c2b51271b06dd995e7bf6abfe861acdaa3534e9c2fc090988276257228c7338209f2cbd77f85b8182150d3287bed5934dec2a6c1d7b2b670716cb35299234fd94070a394868d95c5aa4d92ef9ec6fd05e80747d7d69522cf5d5e4d0dfae512f25d51c0d5a61bb43fcf060eaac8847fc6388377b1f260171ebdc24373a2a177b568f08779ebff6204f2cea49afcd8bb298ceb4f751d69e9bf840b567a1614871d72f5decdc8dc5808c2bdc41c5793e1811b99d3daa9bc4827c69d1dcc4cb55bc8c6366764b96a3114c093892c9e2f1a736f4ed3ef2024360253612747ed4cd3c690b98f65faa23979cb9a65e8122dd30a9c1f2cc3ac1d77783a3014ee64690a62567769cc43252ff23563c3eb4803678edd7a83701412809d343aa4ab428b6a1132b1d559f84063911832be2dfacab5836148ad7ff94ca08afff9835e69f216209aad727ae19ba24b9520bd59ec6b515c328e512e210d6edc9d8d78729bfeae0743e333d731a2b981bf5408239446ba16f37300ebe23bddf746090e4ab57290d2d1eaf1285eb62b968bdec6f5b8bdda4edfbe55cd1d974e2924289366c1f2cc38eadf153cc1666dda976d0fac32285962fb4e5ca87171062aa2a98fd7b447b7271b93abdd28d88020230f973ed7aace2302a321312233927fbcd390ac217a8252a338ffabea7b94051cb03255d04d538e5998c72027251e7f36ade0058eee853461e8e36824055a63d5ddebf3cead8033dd5c8ccea4783675d8deba1cee201dd2154636baaed297786d9b1299b43f058e5649fb01bde625c415656c30bc7c2213d82e83754d43d77b5af9cd2d04642ded3a25cc8da578ccf437aaddb39bf0db269e2e2fbe90723f18b56fc97325d57bb6b8155241baa4a784423fcb50ac5092070a76ef4895209a94f33a4072af0c3c458077be24ddc153449883b3bd6ed3da6e6be85442be7bfd96c0700c46dd79118f67f30d6eeb519323d3057da380fc0cebd9ac6d0299c9ec26f32c04bd8752f710dcdaf2f4ab235f196ad0e54c2f05e825b7d6e1634f3dae1895e4b55fada1eeccf0203d23042111c4043739cbb1b823f6cb7e5ebfa4a8359eb7511dc64ac0efb6a0c6231418e5432123f6a25f4a9f35dadfbdc10f502620e6d76ef9a72f893d76ea7875d909efff9be03400aa8a1e00db7c07cd4fbc844c8b8e86345d49e6e916066d07e06edd980176d4af31d6ab20115b3f20e32f17bc565b2f95f3709d5837fb1f7ec5a0dbc12a8f7d3eb4e7f9f9b6744e4864c343147414b4c104116e63ccb61b5af3f7c5db8b5c05b475cc7f39b888b57298051d029ce9017bde03041abf0c91f32f28a834fa95d60cec9a585c74921f60eba40f13b02de973d9f5499c9b386a5348414d333adce8bf4717d5f31faa4b3e96e91dccf7512980b8cce54ea4be82ad1dbb8373355f45ed6861b08368f9b86f86c35ddee6daa1a336d1c4d2d2658a15bfc76fb462dc0b7c36e97eb16e5eb0773e95581199ed2f7c4c219cc4095d2f8e6ca444d6d4c0754bd39b5494af3d2a01db862cacb1cd2225af884a43e5fa4fe63e5854d3d32f47a8e7af2991d26fff530fe8d57d35ea76a9431a9335fa1f057232f69ad89efdced883e6f8cc23baa485642272c515ddfe4524b3a997e173a22eeb008ba9c16adfa3830980945c758fe92eca8a96b32b274825e2688c11883d138e5d695b10f58f2e2c6931764c91edcdc40d56c72756c1e20494ab26986ebcdb2309060f4eafede1eeababa4d5da8418397a25309d19937dff876ccbe7eff4b58b87a44cddc3c8b1c4f066746036452caa32980e224b53eff0379700a30599aa2372ac4dc081020cb364546484dcbaeb8c3adb6d3ae4a9817dc2d987a690c8eae1863d38d3458f817618edf6416a71b6c30c928d5a6da732c6dffe56d7105141d5941e02bcdd55689892f0e77b9623fb065c17edd799a186f80b686ae5bec88e4f16b05923c1515447ad9c82adca69800a6b372e406b6bf5b5282480823183811a512ef5dfc0b21eb77048091ef023ae281dacdc1ba7d1ed2d9df6811dd5d1c9a1d4f1781b74ff1828a6d410eac1b54a5c251c055ec7f84cf22e3e96cdaefb8a9fb9c6ec823ccf141d2f6dbd1f589c0ec4102f6e91b3f0610cbed643c68824e7159920f52098ae33b5798ab95521f869f2b958691c4a0926ada90bf7c6678f23314479df021214537aa6aab7bb183154b7d8ddfc1431616793bdd541b8d1e1f10124263435606688f200000000000000000000000000050e151c212a",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "BoundaryCondition"
+ ]
+ },
+ {
+ "tcId": 49,
+ "comment": "r0_max above the limit",
+ "msg": "6400000000000000000000000000000000000000000000000000000000000000",
+ "sig": "44f2fae55e75d4a14261c55d3b8f9d7ce296180728713a3374dc857bae406918542bfc12db9b25fd3d1928c9927b72be345024145c41d3689654b26e1d2d6364395c150047eb8b6ce89daaedb70d8095263514fa5317af3f6c557a0b91bad5e2fb6202f90183d2e1d545f5a09fd2f5cd5550e349e82435d55deec6424abde2e6cda6f794738180260c45999b51f9aa2cab98694b8d0af27441fc4b57289e7ea07b010c53e9a755ccb9016765990942a3d389500cacbec33eed059d412435ddbf46198e3c747b3f41f96dcc879ed3056b20da470062c0e1724112f48aadcbb6ca84e66c4af1418c66ee6115fe736305ac9f177f2fc8eac53d494d24164760e827a45ea20deae2034dfef4f8b552a0b4167e1f6272918221d4610d1278aa7040079672d2d191bbb19b252f84f0cdd46150d7be832db3fc8018aed6087b5e718bbb7b3386266d122ed0f27bc5b746651316620ccae5543f993fd5e1cc62990714e585878fbf20c81bb45edd5cba6de67010ece4135117baac8522ef59ddeac03ddc9abd91b47cefa3beac2496de163c00716956589bf84ff85e0732ed2073d97c5c34a0878c3d329e99a5a5a1be3781fff22646f1bb83ebc311889a56d6def19b8a86fb8553b36a62e13cbba15a507750795119ee309577fa7ec15a69be34a15135095730ae2ffdd72a1cf6a9bb61b221531cbfa0495200ed9f471ed1bcef9cb8bc5117c6d6806bf28dbeaf52bf2a9329119c5c896449c233c4a314076b00616773b87d9e8aa69c135a7d24c51c2acbc6e58df8bb7b6fca5fb14b13c9d0b33acd8e8b439a8e5d5bc31cb5bdb51712d148f935b8728ff46112ba49ea5af30150fa80a8249a2ccfc99f8b7c897d83c428fb15e6cc6e640a697d8fc6672098aec99630250a7b82075296afc00a15507605a5dc0f2b1a0375b263c53c403883f42a0304b99adaf834b1f2599e22125881d87047b8acce7b5728158d178649cd7a16d912177623c637500dc5b4bd13bcda0824fe377086862bae9a41c180ac807896c1371a78326cdfba763946ba608400d930146bf86efa861be282f44bce6e032bf7d98408c3b4a1e96704034ffba07c182fabdf4014ef2ee8ff8ef7e837ad75dc3aafb066d07297a290af9573be900b68db9b6c2746dc0d2b1e5d11f0540d170571ed530caf1033e8a32beffe622e3d082b3bc081b3c30d8e1dd697e9a18432f2514df6f90b9b42cc2c1d321f6f9bfe095ea7229c4d1825c8db8e869b56a40cfcb924304f8eeebde54d615521ebc9753c95e9831556c854fa163990d5015e0370f5d3e5b4ae7c4404c18ee125ea2fda5ac43127ad07567c44c806ee61a79353152c5f46bd98bd2010a53acdc66df92ee6fc0f93e678bf44d5d3c8e9adc305bede02008bde91dcec639554a4dbc4f6625571cb5ec821f2848ed33fceff30d8728880956a1581b5277fd51a61d4e13f7871198b78ab3107701163da8a30b379a05718aa79bb01b528c187fa91466588961f2e58db24a2afbf0226359a4e6c3da0fc8cca4be25f0abae106eaf8e1de7ce9f1b7d24ef25bd41aa98a99610b016f062d89f678142b9c27635cb71e9dad2ec332350f76a2b507c8fed9a17e60e19de2c1875f2b3f4134b903aab8819af224fb7eada88c67875040a07699d95756ba929680191ec8ec3efafc6fedd60ccc1e1300698bf56afaa31c89d16341f3673fe07880e7009e1f5173cf79cf0364f0833a179b5886226bf8f3a6397d8b499e9c020ccfe075fee18769fe9f7765ebb6ee630df990c579580f3910e704c73ad61512a9d47507e8bc61b9a61ac006b751882b20855e6b6ec7c05e303ae533623bc0a8d30f795ae93f057c7e079688b792456deb50dc7ba9da0e141cfc76ad0a902bdb1d032d06fa47a817d43ee784cf0ca4b516806e7631e40bf0671b3bdbcce7e2ed7ecfd994e190c9e500356d60e1c73850cf5b6bcaff9746b3025815bcafae19f20468591b5114d465a47e7e439ec0741eaf533d5ab5c57df0cf745931ca6a4051bba72dccd4160bed42fae52ba39d7ee2d3e2cd20fd299707e2a6228f94a5d32224405a1dbc5f5f0d269a0880cae9f0b7d5c0ddcc01e568a03208dafc9f54e715520ac51eef04d8c4b6fd5ed23dbdc9259029129b1b5707bb197920ce1265bacf2a7a7f81b77a017976c3a51b169eaf6f77fc68ad23e2edc7a07e7d39908704123b2385011d9e6b56eda29a8bee801228e3677241121ca21efab92227475998de40d40fe76412fbdc35449255843e3e6ce620ca0dc91075fbea5e531aeb9db6cb5153c61e7f55681eb46cf49b31b2efecdcdeca7539e8b3da30519640913672164575cb1ce89d2afa22da971c371f602070e2b1c7488f89239918a5f0df2257e8206ce67106d66f308cee488974e56ff840e025140014bc776211d632413152fd55b53749262c477229da729c1e56f885f61d1afefbe11f8e5038a5688835f3842235091f7bd42b908097a8106e4760259ed7464c0dd591ce48e51397bda9f3514b443a138a115eadc2be7f08edb4c9dfc9f1f065430bd9da0849c45dce861bfe839954131fde47e059c5f933a4baf982e0ec435a8230fb3eebc9ecf7ea65d0f376854c331fafadd45b07ebbf3041cf079300a9dee19a5854e147eb9c88300f5580c54d5801af62f9a90bd91da9f52cfa6d01a08ce390a179bfd6a0d3ba8e43408826cc36fabe685e9a1229343e5303b108683a75c9a524eb776336d0687e7e62bd68f4d425bfe7e4db1dcf09fa4938933f78387e48fffd47669233cae1e8bf9d4a2c63444a776595a48b3471a67990257cf7a0417d34f553eaf423f1cc206a9257f1aed004bd205dc1e7f660aeba09dc1f9991062665d38c0e2a4638c2bf61eb459e5e4725a0bbccbddfd66b239b31c62c948a485c8041ea3b6e58a0090bcc010ceaaedf7a2e8cb28cc23c925724f099ca14a33f42ecce7584bdc073e6f79ced17b8c113075f1604f31362893a3b5ec2a4953d77b68281c001fdbc6a853f4fea04c1e73b9bde7bead3aed35ef68e0ad98f902d7a7750b7461ebea8c2b7e9246c49b585107e979dd66c01969c65d34c22ffed12ce733d3543672a59a06854fa81187f3a0b82524686beb3a84c480aaae6af5a43d6c943702e49865935065f972c466e2e33554615f242fa582e04b7a330d84d5352b5a0c1a28c8521eff8baabdff6c35450ed9609fcde9291d0d38d7cc23d662a6261aed3ef34cc281501d9969425a42f050c7e6b0b1f3a549d7ef86cd1a4aac3a233ecc36cfc2a81cd69d951c31290eb73c71582bbacbcb99f3c29fe15d28887349c9aa2496b48ece89d581c697590efdd60351def42770f51f59d55bce58c5d2886d2ccc668237f9230a155be656b2ba71f58ee343317c7f37ce47f5736d99a056ed3e88ba59581b9b219b7e972b96b2e03cbee95fe9a2ef42694bd93e7e9145ebb155b6b9a7590058eea44d1e877254d55d052f9979ec0df8b5b8cfcdc1c858ad12d4495437a5c8247a071997f95e01943207be1ab6069e7925ee2e6e231a2f133177d0a91478c37c19303097971af66759f0eeea69028de913edc1ce9cd38edbd05c3b7cb393ec781ee7263652cdbb3201527501b60b7ca443cab817e829eafbe49c354bba16c1a597703953ec059efc97ca0f1bcf4bb2ba59e5bfbf64b5cef5dd1a7cdcfa40348b5f8979e96371bdcfed5bc9a5036955a40ebba28d1c5d98e592a046320e3ff7e2b72d25db20fb2daae4e580353598ad6673163fa3eb95f5b5561a38fb1ba8fad671795e7f5aaabbeeaefc4a7962475d8b7df0fb93c47aefd46d88a25397f6be11fdc4014389121c20750e80168565771dd932f67866387050d0551664a16b350e4761d6033e4746d7a5cb07b65ad4c13fc7e64a60ab9849ee9980855106c7706253551072105e28ee78b6e19e9f9b25bd39493736a2efb2cfb7416b84b6de23cd559663c2eb8b223f8c764ee4298c75f7f068824c31d4c19cfe9ddf3871f7160c87d9565c5d67e9142f151a33e2f9ea79702c6a7285ff963dfaa68b4129233daeb77e0aa2c1ccc75ff7a35793b2fadf60a9b1b9074f92eba1cff230c461f1bb486b3e9caa0b617abac2d963434ebae2e8ba39b238a167895430f5c6eb86d93d678ed1c472c3f3e9cd58f27f24d124df2371e98fb08442296592d79db40a6f388f85c050e7c434630ba353245692d549166727c31955ed60be469cf60ea09909f92ca87d5e77567036882b11c04f03bdf89d397513adf17146d52802b86797815316c2d21d0b1e95e671fc87e067d2e7871c28257af1fce14533d30dadd947ae2b1b9b78eb56278340cce5ca9a17271e1ff03670d31ea801cb89d6364c0d6b671d190d75c7335ba00497bf43ff1de81ba5faab2dce55f29561d13cd236507a88f942e6feb9e77a552942f6bb53c857f192c126d3f1ac53845f54fab0a3114f6bf3dc6dc251d39174c0f732dd9c5301cbd39a2d7fbabbdfe0a1049532cd378c9ae999700ef370a49206f7f7b208c7fc7318056cbba332b9c73e0165c97fd25f73f156750448c5b361c30e23229f2c325a99fe19df3d884418ba1d1f00708204a778ac9dde7224f687b7d98e3e4e51a244e7ba5c3c4f00a12182c335b60da3188bce200000000000000000000000000040d161e262a",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "BoundaryCondition"
+ ]
+ },
+ {
+ "tcId": 50,
+ "comment": "h_ones below the limit",
+ "msg": "2d05000000000000000000000000000000000000000000000000000000000000",
+ "sig": "1ca68ce5f7e559793f67c657ac20bb8f3117f28c1ef02b8b828031fe11b146ff61ac67fee066d1a8b9a8d8219909195136ac9afa30909309cd43e54c18f08817c526bb135685d328549f2d0f0d8c73a45606f93e8a17fa3528a1ee64377165c7b98f3fdb6a32fe920c38863d913ed398dbe085a7ac406da7ae2baca87f922a2d5b43601a70d3aee3f182cf87aad2de0e104044dab4fd19e7121ff5cb459595d002f4882753159c7c6421ea7e6f02746f38bc424d92b8c3b353592ca7ea3703d27d58f2df3b23875eb7206b4f983873fb230979083b70ec1e5fd40afb5e3887d05e4eaef8f833339be930c2cff359cc4cdf3fd6e7caa647f3478cc863716f01310a30233bca62a32cedff973c8fdac419fec93342f71e74934799345a6797e85a7c1ccf660fee8ff6402e3c37a70771a26c9ffc9411e745d6962011b003c19e8e267b303ee53079e23979f7b6fb4b5b5a3df866f68421db2bc2eb29fbd6c40d5d73e7570c22b425f5cca416af86f4911766694bcd7d9f55acee1d9ba8f6ac07e2b0d1081948e1436da0af1e622e95e35a2e39065a782e3efa36e0b130b4f22b37ef2670e6b5797826515ca74a9a1ada669cb6d43448baa8a77a9e052e5492fff23ea68698a17cdda1a4cfea63f9c186f35369e57a6f54a161cf569cc75be9347efa9c94a869461ff2648ff1a3c984c67eaf53041edbb4d27c80c9bda409039303052639062dcfe8c7d8066995c49e5629bd0ee47b63b637b14f7ab0964f4adeacd6b139ec3af6530b6147741ece4ce206f9a24d8254af20eb933324b55e911a43cca36704427b8b37b5deecdc0da5d1758de2bf8f6fe639448b45e803df46427adfd6b3bbefc9b9c64deadfb60fd2fe6788f7d65f98aabc960ecbb8f8ed9593ab0a6a2c7d093d74ec17710ee5c98909e529847d7cbe9a69f54628017c0c2222b4ac46134281990b9bd70ba991336de07133ae25701a91306e0dccca6391816917698aa67c39998437325e39ef1f7e8eda0dd330671dd6cca57f3f99c162a54bb23992e44f3b6310de3c8b3d309e203e0e47f05b726d1949cae0abacf838c31fcbf449d7f9d6413bd911c70a823c8940aeb59b7cbb2c64c243a0fb8ead3903ab3186c6390b2678eea04d18a9405c733035ee58f79f85182c520163e7e0b4bfdc03d60034dfaf61644c32bc4cc32beb4fd77419ada027dda3d6f30bb3acf38a8bd4cac6425783b710d5238496331a04b6ad5646d3ee663ea0e50da36b453771976d2e36e0be3d10268459724bbba557505a7e804a088e82e99367508eb5e61919a8ff35eac38903de0529571dea43676e3d2b769f4baf4c1226ed921561817746ad04ea9d30cba41225965f1f29bae6b0bb3e15a59e82e50c0211f22403957d86927bb98fb48ee18260df408ff629730eb5f967bf25af2bf4147be41a5da2421ffea70796b77944479fb15a0890785bad4c0f86603deca9b71b72c6b75879b44f153fdd80412cc8c217ff04f4fb9b8662c9d3474598f806d71ef214784ae54a537c307cc1373161ae471034f70b49b6a574fa6204d7997ffa75a78ab9923850f3fc4419fe365dc4732ac4ba87db246c90466741cab4ff9c3d39cee643e006f35b76ff5cbfaace83482d26dcfb98ed007b97f0b80849ad04e1d422a8c86120d1d90099582703402dc3d8bc192bba4ee993dbfc3b7c567cc6f5e761a5cc0ccfa92fc842a31ee0ce234bcd6888c8ef81e7bbf40956e3855507e2544202e66dbb476faab34c635ff8c873bac2727b5fc4730bbf33c5bdd2f3391181eadf5f54682e13a97f0a06487232da578c89960ad67ff424215020f3fcfa25ec55db2b2d46d3646ffbd9354dd14008512e38e523285e426fcdabd8716883ddfb8db0dfd4c036b51625b26a1469fbf2282b943500a165b6275eac29ea4142afd22d647a4ba6d458a65292a64e21afa38ee30120bd49aa8a0c511f2c202293c717259a07549b12273566f3bbf4aab1ef6c076b0e68fac0d3e777e1f6cca2e75d68fe5a45e5f045b891cda173fd32d54962336e33c25a5c3b03b772403bf8ce296282b779fe439396cf995d3f81eb6b069edf19b57cb1252dd611ffa52eb0023b553b343a028ac241e4e9652f7d73ca9cebd3e3642640ecb9f648fd1cd1f6e7701fef3a551bf60ab3d4f59315cc2b0a9642e5f4e453af47039dc0c95778f2cadc0fa217c3423c2063eaab0922ddc59835a4706136d6e2d0d25f7dd8bbbd7a939e1afa2cc17194430e38b2f983e5e058c9b8baa385ff584846f7862469f5e3c71cbdcbd726ed45b92998b89d83c6d4731bf2f92fcfa454bbe3c7313c9dbbc65708ffa3d9bd8b43df4d088de3c911cecc5cdd415d587310a2c8d3dc10782458c7205419028fef4d2adfc14a55fe7e4507351044820f9d40da5077a93e923f14bb1d12181298c6aa965fd76319052d148a357b8d27b240dcc143fc579889ceb43b8e7db8deea958671b18906c01d5d8962952152eb8245f98229fc2e0477541faa3a57529e2328f27614b7b82abd506d276495522fc21b2f840e34f20cc7d605a986632052ce8e47889667edc1e4d009f9f2f6fc6e4f59ef42dcc97ec813b36c412e31856478e1fbf740ca8933632c62b02d2facea1c5e7936d3cd7971ce35227c5138c5a57e032aab24ae4c6b05ffa7d4df3181fee7b14668f07aec969300c7b0b1216c17de4def301717d4ec65041d4656b96ef7b40fa4c5113c58e265a2c02bd64f7aef278a6f5c57b2eb35fb69dbacc412cf60e06681f892e4fcd7dcb3b6a16d38b7d7b54815ecfa9c1a0bb46138959bc42df552110f5f697de1ace36c45cee32ebc9fe8fe8cd83e29ca331f85898d55fa4bdde5cf438f9bd0ddc711f516fb0e79510243debe71df2a2ac140c19b945841e8ff6baea4ce9dcf038b5a0a19e0cbc90b3c4f3d444813ac7f70b0624bc70a0251675cd9f44b30b38aee30ffedabe5aef29597820cdf2bcbaaf99ee09f9b18fe93268d5c74f44dc77dfc721511f55295e03bcda9956cb74a9bd85cd028ec05b4d064ed35a2ecfd3f674e34cca9f972824b1d7d3a1caea6fd6b51a205fa85de4b44a2f92a45edb712c73a4d10214623e8cdf3b9880cd25ac2dac328c3f54016eb98569ece9dac6f170cd7daaf37d41e6c35d62c3db46a24f2e6f5f237314000d0ef6825a9dc987379d9405547eb27c6d631fab06d5a039d47dd2b1dc63a077b4129f7610458cdad28b849fc68fd5f0c6fbb40fae533a5d8b559355b1db112a5203b321012b126fc6d5181cbf6f3ab8de483824ac07734370701b08b295362eea3073efc3a96ac9a9ee3082ab49afa034accdfced6c16c8d6a7e88b913b38468fc104f0f458a298f0c352b04eb664b1eddd9d76f308a9a29fca3f3fb730f8d1d48db53c23243c8f84c06a91acfb86cb2dcf2b1ef3a0b9b2cb1f4909f48e9f9eff93807bdc21a5a0e1e7ef1fa7bd2f9449eda1bc9b86e8b4efe33221a436a864cb272db8a50ed3696634ae458566e562a1dbbdfb20126c3ecbcf403816fb49adb749f51a76acf93869101c81d8ab1292e4e528ff30e58d4ccb34369cdabf927349fb8ab49ad569eaf0212dcacda9e1ff85493e6852418c647a4697409427becf65fc0710ce9c15ea9d2e799b39674afcbf2097d9fa9f4b10a874435cdcf2137d177d764c21a7ebcc303417a5ed5b94d0a3ae4be16417ff79fe1ae01feefecc5cef9ca7ce8cbe1287178349b33c40b7e7f08ab913844cc223951957043b6feeb1f56015fe5a039ed8d3f07cd55d5981e9f6609f2506dca0426b16c7008f2b25a67aaa3543bb8610354eb214b58b836e74090c7a43a9b47b91fbbc00a1b78400a42a1122dbb21afbe299b619abeceec31b32195ed805dfe64588703d7b12387b55486b39d909ab0690684471564417de34ab2e02da4d3974cfc7e9e38304d220d0a827a3312d085195163fbb712cd0a21cb151165bd98b77978096c1e6f38a73368cf7707083fb107910ed091d659af6a4673f9a155c8a402bf1c07ed416fa18fb66d6ac92d8a4c2d4e422b135f79ead28bbe234f818892b76fba8ed61b186b3b2cd1c773795e91e923c06829fb969926290ae2fe7585534e71c0c58b3bc662d70d537dbf06da794401aa121b4dffa36e574dda73e743c6177cb87bd78d6e0f98b081188d14050ca3f49e330cd1765c467430d197ee509dd8a000168212c683c6c7f075706cdded9c5a9609a6496280c1978d48e845c9693832768c47d9b7d1650e927b694a74ba50f36b924073f71f51b795f7822475d5632b80155264dc892effd97f561c1670d2417d5e33e7d095a8e44d8b0fc57d9ec693d12c277ddf096fa00081b2df89c46b66521295c3428df80915fa7e8f10c0627fab4e5d145e9fb6628bbd7b7cecc4427e73c6b1242fa7cc9df2731ae2fba2f9ef0d11ebb4e718e0a9b8b73b7bd5d257d22bc255ec751d1b381fe080e6c9a3e1204a1123c461796272ddc3b41f8fdd444358323edd11fab1bc5eda2111963ea999d743e6968f158d430fcd9906c5096227b7e5f377d07b2165476faefcb2301c03ea6cde213f7e165913f41fec6753aca94c0f365f60828c9bb9bbccfe030420212e3b5258668ebf1e393c5a7418292d7c819acbd6dcf109233d455a6075001416647a8dcde5f6f8fc0b161b252c37",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "BoundaryCondition"
+ ]
+ },
+ {
+ "tcId": 51,
+ "comment": "h_ones above the limit",
+ "msg": "9a01000000000000000000000000000000000000000000000000000000000000",
+ "sig": "4e4f39e0fa77c6d67f49c759b83a72c2289fe57fca50c143c9a831a8114d41edb4bfa0856c62be9f05fe4f3672fe01549277f8b0da08e940f9b7b9d3da74e07fb7cf8a953fcace4239609a492220cd8007966c4e6ca5e8b418663fb1ff486d3ef90333c470699b8abef54c3fd4a25aa34d44ae75c216dd2d3f017082fb01df0d5ca6a85b1181484205722ef118f03372d8dc119739303aca686159911e165a611a678170a5238dc9b5631df11f2bcf3f7e5e8750cb55454f25a8a6e3efaa3fc66c88ad5247397ab153af4bc014895d006307e9a92dbb4e9bf78993980c525f2313d188b0f55718da34e701607d7149eabc05d952c4e12a3516d8e9c1fde6eaca3cace1e76749b156c46f40265870b1ea2fc49d66b600a52beb187675d1b7d6c40445c678974625dbfccf20ca3b65eff29d7fc3033f3af4b2c29494f18515f378ab2f155b392da15dc1f65c7a37ea2bb2b69eb0f8f66a6507025811a2ce5f748ccf667f32b9ebdfa37b3f4a164534de8ca9bedeff425920d38b0514c62068b92024e014283ed633f1820d2851ccc8268a443349903cc70af04ddc4dcce2023b6c0ce625797972883469b38f7754b576595a97910ecb81d97c801be74e7b8e7eb902c42cba946d855cb9dda4c140d4ee37504dbed3ef92ca99572a7857f6383d9ebe3105c90e9cc196d5c259b869a8e8c092432be67cd7b873ea408d455231863c5f34e38fa194686efdb23b79b30b34998f031179fe8dece8e79023cd41f0e92e18fd815d7cdc69dd83d26ca7e850363c3369cfc8706daac31622fb7c419a37d4884edcc10eacf0c4442c2bb47473181d4cbd404ab63bf840676caecbc89cc17ce0d14849a022376ca0548ff552d229c92c05b48c299d258644ea7b6462ef6b5fe965f6129ad9db2e95eaa14e28866d7eca1c90bdc46bc8f0da5868243a0f5a2ff3f08baa067c03719da8a3bc6c1d14a871c7a630dd831911467e1e6f19ccf0a511378319976015d3a3167d2570a49c50fa8d17b1079f092727276a311fe9f0ebc005739d8733727273aa5267021dcdf629321364fcb46836209c54d8266dffb01abd69824245c9a7f6a706e1d5deb23a15330990ba1a8a7032d4efa4de64bbe9ad4bfafee9e23b62faf8ed88093f5459115fc3d2877028fea349285888f84c96a1fa415fd1da7e878496e910cc1037c0a482e65da9209f40ac89e92358374144d0cb729279ad80e28982617f5ade2dcf380be05709c0de1e0191cb873e35d98f7fe09b38fc2430778d44752749414bd554d1b0681e98fdbbf9bf437b9e0473eca06ccd7e0cb4948d9aac13ec245a850b0506c6127830c63a75685e430318365f4ff06dcbfb970626ef2dc27dea0b0a098b2fc5a0ea02fc67eb3a9696ece6c752fee088d8e71be6ebd94aace3c78a9113b8e10167da32230672a2c311f12553ffbab9436de67657725e96dd516c9b561c3b272fe889e8ff2811b44426d26a0c42c24349aa22f85ddc863d32ac91bea62f26afeb350c81439964388bbf21415226b368188e2adce8ecdabbb3e38b1fec29bb55728cd382b3bad0783356c739f343c39afe5a98512b3f1c10058c587c1bb729417c26c18617f96d2de956de1d91cae81e1eee0d2011b5706c3b07580eba78066aa2a812461fc967e04f283113c30f6ced3a237958ad71c9572c8d6ecaeda361171199953fd7bb73fed1588259870adb84744e825dc84613daebd982f4487b464f128c2a7ff49b259c991ce34a013f9374568fee8e357de35dfa5cb43542cdb297d4cd886e0605c3d1fddaba262ced5d1edf566cce3840ba338db4fba236ec926a2134fd127d40e3a84f6b158cc6ce48f238c078a795caa391e793716281c2936397a50cd417cdf9c7fb32b5a8b7690e2ae2768daee33fd33600ab6d1eda8c37bf086bd3c1be7a9a2d79ba6ef635f9321d8d03316a8dc85acb4ed7a39d7cb30a76c04c018fc9c3c4779a8a67e7975c7a45018f9f177575ade5984ff4f7b412a18f1c24402e9bbc5564ef98a920e00d4bcc9e307e854aee1a6a2f421f833da3d27b2e8a9ab7b9f1061faf105d13da2359e9d57f47fbfa56e49b372672de5b460f3c43e9d32a0e3a272fe3efd0dfa4740539be52d4ec7881d9c7915f8cda2b47dd520ab5c5ba8fac6b1888b65d1bf12c976051743d6a506a5d4c550262b23e4995cff4bd6dde88ded5fd49608e791ee74c2c62571daf881ea9e318f96447c0d6d3ebd42a1b4a448e66359db4cd875885f91f7cffbcda373af5c72c67c9e3e8e14b6e0f5d209980d4d9be3884878f7f97aebf74e86426bd8b1c11ee5df701eb47a86877dff6b7df3d343f8a3a24697294f15de1be9c20092ac2c53d2d4e9b8011a2628416ebdae96237fcfc980d69265b03b86e1bb6954ee19e4e7598b068d131510a4e13c38d2c763c32f6a270a50fbfdda0e50b6df49fc85d3b1012b374a1095479a8d330f6c4d46940854daa91d34ef96e33645a444fceee47bc7faa680a2365eabb0c7acbf73bb72364b865e587607e0f4e15162be599703e22f782b15686f32ae096ab178216abdc687310330082a057286235e97f0abfb5b00443acb5db755fde1c4d46a0ce5923d8f7b10b0c4cd66a887c12a02ddcc022e261cc3f6ec65f1d6b6182a19a2c15f412d0a364d01b5eef67f665d42a6087d798aa94581fae60cf86cb9aa90c6b9e63e3269d78eca3f269f382e69a3bf777a420ce56866aa82ca5c4131b34a7c2e4cc8c685368fe8df1ba500fc6f4149ba21311409f517332d54d10337c762e0806d66bbd9426805521dd4fadde9987708f7e5cba96e9afb256f729ac9705c8f9069f77b32f5609d553e1357fabd6afb3439f99ef4d23e1e4e65815ae079bcf0dc408d229fa63b44b50b1075ea4d414caf46654fc462a643b4ed38a037e9fa9cc56e492584a69681bdedb72a48dafea506b19e75724d54cefc666768a7b40c015dc055a8b058167965efdc7122b25807555d3b6e0137bb98b5e16a72f4ba873ebc32c036d2eb9092b64de62dd95526c4900bb64112bb0703783c416be33d3cdbbd441316d48226d63e69471845a7f5bd93ddffbb0bf9385221c3a9d80d89f2a6f6bb233f3d0c604854b86b79b1d4cbe50e76c276b58f25ca31e415e7b2dac266dc3b073f1d6b00d500e54981079d66a1f314653b733c6db19168ebef304e15760ef535b45012fa4ce3eb1ed610a5ceef680f8700c174ea474adbf45410df72ad777c72255b2e77e467453da217345354f3570050c178dba294a95c5bff31c95d24fc757d3ac354cb7d7c6892e8dfd9c0062f3d3071ef316c116511d78becb255d185c81f61c0e29ce521928ce3c83c9530d53c7c6c0535c9b384b090fab020d23c199430889db214a84cac3e06888fcf45f19ec74552e6f45380faad1380b9a7e5413d9c700c70c6ffd003f3b52f624e6b04948ea99b3fb129c2de24b47a91d910f35c24efb9f3d788827b74a566607846015e6148b4c76355b51bcdafafe1e5298ff01879b1e9ebd430681c8c82f194498e78fe3537c99888f11c063997ac36d1a00a38d51bf5a6101a2322f70dab430ea99d14ee833a0859d5bb0da477afe4aa3184e480b14e3f6a362ef3458da1ab5728994ed6c8899dd6e5a9c78b38f370fbc31661e37d402310a9dad865176486144c451aff71715378432604d9194ee88ea6f3b68dfa1b80b0a6c54a2b5cd4c0b4b1ec7152c680483b537313c4b6035cd550d0eca0df04d9a058dec727ad5675285fd1d07a4a7bf36a330ffe620a1b244583bd3b248be735bed76e4f1e47fd1f81d6ff3339be6d9fce2afc4ab2402f3d2a9907c10fe4207ffb0a3ee49a3ec7b3af256aa2d63d69b4dfe69898c858bd8de9ec4285f7de3320c18f669574d6cc9a08cc8ba745af8a5f0086621928a97d6c92103d34c229f6d8b1a36e8e2e86a8dd7ef4b039c1b9546f7ebdd5f179a94146fe3c9c695641bc51db41ff0b074f467bc07578fad564269c65337f6a0b8af6dc0f7640cc42fc8dde6fb7cf677ff7889ddab792fd225ae4c8995dc97afe843831e8d48f419879411f5152cc6e1d9c0624d8b1bd6a4b136d67074606ce5ee30b0136335526eaa352df9fced286530848115509e82a8a4a3d929a5a242415579d97995cdb20c737ce4e63e490860e58855d6574ffdceaeab8fbb6aeee1c73b7371b8d24dfa68c4e29c84a28bf78b2ed283c15248a13efdb4aca13e25f69594660e73dd847c7249d64dc2f1ec51e88c675fa2bd5b77957765e608c3e32dc991a14c68fd7e9bbf17e84b5dea7a2ba9414851a30994483e0e53ac614c72c5b5d0407c6b0dbbddebb4fc0d0c195237f9d2e4a11cd10f464b35dcf9bd90bdab7f1ce583477dbe31b0b5aec91ae86a2e0cde82261665c570f0c055f1391e60669e7e7905fb9bec5f0da2485bca04837e683fda337a302254f80ba295c96af0aa97f673efb3073b581399d76cb234296c9065f363a5e72484b7e93438055ab952fe2e55a23b34acd34957a682ed8f17b0a5778088c39a3dd8489823c8cdf588b73cf7c5010fb36c590c99fcf30cdeaea2f86fb8375aea46b60dacd83acb0b1517589f2c386069a3b6e4f81d445961646b90bfe6e9f6ff3f4653658d1e373b5ad41835848cc7df0000000000000000000000000000050d191e2329",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "BoundaryCondition"
+ ]
+ },
+ {
+ "tcId": 52,
+ "comment": "high_bits called on the edge case",
+ "msg": "8803000000000000000000000000000000000000000000000000000000000000",
+ "sig": "93d46453ecb0ad7a3e0288445607fc4fc6704f17b64fecfbfc183de4cad5c86da5b1d6c13fbbd1c1f8a8818dccdd5b075f9470e83cfa231fa5b6036ee49ff80b0fb7655f4b7f84197027c868a4d8fdfffefe3317c336101c4749b465325b45dec08ff915e606e7cfbb5558e95ef29b194752f50d7a5b11a14d131b0c9af6dd154ba49200afb1bae5b9c0ac7fb0297c72281d8462dbc89cd5b0d66256bc942905c9a805fb14b8c4931550ebb70ee04174784cc02fc8e97b5dabe50583d433d11518079803c6d557a13187cd96c8e84e8801c11e2666596f055e788deb0a713862f2daef6e1acb60d83e39003417339b871d27877823493fd360b27336eab688a71d4b0bdea6641b0b0ea1ab65fd4291c380fc76a75dc7ca4e4711af22ab5be96a2e4f301f705ff033e3e8b530bd8194b9cad4f54680eaf9abf0be7af032a2766fc75396894b2f393b1b87af6d1b9730d374a5e48964bf1ec6276e6ba4554e2f6114c04a1489990c7901b28ac94de8c61ab983319374474a2aa8a0e1b5410fb952105a5cc0ec9b9cd7663e532bf787ed992726fef537e3bbe31ba835e0a0ef00398f7d88ac2ed3d59a99f9a6cd49fea68e3a611ed1600f738ee199d3db7ffda3c1873dc9a0b1ba9b8aa224cca56460965a9d6c91d58de6c33f9665df62f4be77d333c4d62b967386fae73830389c71a563ddf7172b68b1faac5fbe64e06b53efcd058d4a960364fd879eccb76a7674a813453cd48868b9fcaa96bcd5dc815ed688f5126557158bb35f2c6a0e4ff4c010a3afb6a4122cd3521c3d9e3c717c79c8062d3fc24d51b122d8a8714f9ffc07d4bd8d0e012d7ea9dbdb2427b0ee12d44367125e63a275d70b4f5ae5d088130358739cc31c3060ddf91c3cc64957c76d451cc028555abd5811fefa5a10633cb0d8aa47a8b6718ec44b1cdb06a35d6ddb332efdabca446dba302e2c7124303343eb42ee3bdecdb894c1768d1680cc98dd628067fb39cb7d67a00784995bf5ea3f8014193c7a371dcc55ba5a3b43d3f2a2228126856ea0d97c90b6081a45491c3c8e20f6dc2ffe331496cabc3619fe86e557228a7dca189e7a3cd04e961616643bdabf6ace94f3d5f1e8429d115b3b8c840245fbf48d0172b214c0386fd320dd1e2580d5f4e6cfa9d4928431633079a90f97258418ebfcdd0aab960239ea2be83b8a057b0548022bd518661b703835e91da0cb568a4101de68d5787e31e285c335e637f83eab3953ba292244286d61e06fcb961e319ac80d5173bcfe7128dad75e2e850085be27356495b28fdb55313d90c4807f6546231fce0cbaf1fc6419ba60695eec63cae97957baca1756630550ca14b56737a52de135eb711c0a1dec9e1811908ecf299198387b741f904967404f7f8ec9f6ebab878caa4b664cb24c53bba4607a7bd6e4c4db5f9c8d712cbab6a506d0902764bb44da35cc0f0663968b3cf5bf92f83724ce08d478a66ac0e430c42ec47ef4de4a46e7d047450e481e4d8468261315c10d5bbd1ee7ac82f0a63a9d4ba54f6e4a367de6b05a560482c8826121ccb90f68037a96c8c30e41f1a96c4d84c021dadf1315c3a6f80e6ef7d26b5e4e87f5436347169d63987c022353a8155670c5be558544ee3ffc3cdb717bbd53edca18e5ee0e5646482ed38f790aeb45bf89a40e819b14d535da8b12025ed710c2f2faedfa716970ee44798de2932946018b6d80715d6f6d7d573b003b576cbe2781ed12984a4171c00d5f12cbf7e73d567cb8d243544cbc5c7921b5a89c0aabcf1339f99671fbe96591f988a06f4bd15feae56429878e40ed8f1e0e90457f1ca21bccefaba6d30709f40508c47d78c72362d5d96a279406f10f975fe70872a4e214eaf3ec9ae5dc3b7bc41e27b72da8f6824c259534216577bf506ad45976e84ad4ed9d5a4f88e3695e2943adf045b91a5edea2410ebed5d2bf10170d3a0c392e72e970c715c0216b97ffc8fdc9089a9fe1e4f4cad9ec4e4e589fe05eb5ace4083805f2cf936bd93b6410138caff44c64be949fb7acc66284bdd8781417976f7be700bef0f78f1398fee069b14e686aa985aebdd058230b7684553f02a1e196ad8661759e45bcd1ab75f8d3ec95602ff03e6b314d8c363cb7c843df92a3a6a355e29a2ca881911b7e01b8e8c40f7395a5207650b0f44bf11b1269b8b0bd4b4c989c98ff0c529e0a3b5391ca25ec366e39fc6da4c474b3ff93938fa064b1a30a6aa56a717d5f5bed2b3cf3d2270819a8100b7fc8e750787acbdf008fcc4a0deaa47a62084c3445c75cd97edd1e4012b0b76b01bc1ca8e5738bf884c6135934304bf625eb8a3ccb29087047a0834943a6bebff481994779c7f6a37fa8140105e849696d922d3e7cce3535e9711422dc217f5e7f2c379d5dc8220a5006b56a87079b1504d6628999ee8158c73d2c101cebf695adb5c3815d9328255c5dc2efb167b36b1820abb79f0eaf4fd84580ff7c3a8b178164f985f42f0dcfb728fd42401a31a2ef2ebd9a26e6832623d7d28d26d162a21c45889253f62a11a2ed59414ff03c27e48aceae70ec4629462842626d7f802371fcd7fc1b97495e861c7391c773fcaa2ed087ae8b84968c573f091ba37097008d6041460986403e8e1d2e44ba3afa5cc88d48780aaceb142512b115d47d7e5f9358678c99d2f481d5740b327555ff41e163bc40b2021d441e5b4ca87b02010a454c6f2c9cd1970cd3846d4c8021ac7028b2e94b3a9af750e76ee37bf4f4ace83b244aaed8c1ba134500357b96f587bc1464cc2052b03634b772920da0cad300ad9de1f53c8b8c373b2e12b552c4410e2836f3161fb1b7c0116eb3fd23fd632fe6dbe2e9999a3994793b713d52c811403c3b9e0f5d9b68b71835e9dac66ab9437b64151115bf3a8af2fe17de721310b459ecabf6790096df03c23a8165cbfb484dc35e0e14ea64a82bc76b888f6bbce7d29741ec435aabec2b9ccea7b61197a895b608d88666c1ab1ec32424bacd2c51b0a248ab18e0192a866c7de1ed43ec7e7eeaf300ea40143af6be9d93bb92bd0ea5d9600f99276de5a23eda8f939ec173a141285b0323551137dba54c2a46fa5decf94158646edc72901fcdf86beba1a8715159f61ce58eaba2fd09afe8b533817086cdfb641f4ec3c079cc27257688d4b1a3dbfe0a0f53e74384e2b89c774ea215ab444a459b5f9ded9019f57aae07c44eaff21c7928ffcc621339badbfa93962630c713072c5efcf52a7f2d09d4f164d0b901d34c37dda11aac6b6a93f30339c786255b1e18ed055121a5b52b1a0afd76ac8d4a3b1e72516a8ccd39cd035c11f676ede7c87d932f1ef99d3b93a79e7edb1923de83498c94db1775e9560753f65a34df282ef215a18662f446e1a80a4a64380cb4991aa5ed8fd1fd24eaed4ec91536229596b765197c10943b4dfa30750728f9b7ec39b798e33572da27e8b2bdc5a596946e99963a1e164085cbce5529183159066411cbf62033b41b2c0f59a4d771b4aa9a82bf781a384a370b73b59c8d64450b8e75ecde8c7eec2ea52351711b88b7e462dd7069c2f3c00a0656cb3cb5cc9338e2dccf2e0698be77c19f85271642b09c41932a0a54f60df6093aa41ba66734f0c91d958f9798169b35697ba42db67d33b9151b3f176fbff73e73b4bcdd9f2b80234e20ca079a0694977e6e150d16dca677f1a195348942827ae2a32a7fbb891df99eb03651ce7168d8f26db3c6d71ce778fc0dfe75010eb80612908730672fd0344d99a85090e78e454cc7edc760cb49b672702d388689819f55a353bd8da92e17daa34097c1cbc4574a243efd2dc908ddab79d7cb33ee1cc7a0c3564ef545d100bb6ada9d26bbd306ec7b543e0bc2477d8a283823b65b6a91ead38867bf83ac3643be995b38897307cfdda549a9732b2c3ca88babb8dc9c3b59b208a596b57bbff42c586b97a0e55ad9025f6c421b19c1ec36b436398c413ae55d064a46e2b97a4d475170666f6bcb7d5bbdcc2a3d28be3e5a41abea942ae836487d7325af729116a3b009b47a1efdaa4142a054bcb672951087891aa3af203f0ed41efc9422753a7b07ecafe4d9022e7c73893621a648d7dda02181809d7a687301d156bd90c3e15e1a746b6ce93fa2bc2d8309b8135a95c0d12700da6eda1bac9ea1663446cba9e8237dd019d7e016ce0600c8f1cb435a8f4f52deb8295ce00a07d3a32456e44bc2128293295e550e816069979fc379da0a44d9116b7e6a1ffebb750f2d7f86a27d6d93cfc739efadab272c77a595f6f74318d14fb4e15ac8ce9fa0f7c72ab7720af4f3da27bff92ba62fd7fd79d96a25c2fab26034e3f331db56add047c8840933b53e06a0607bf3dcfa4fb3227dfc8a33a26ec9fe03ffaa538b6a8ed9a58df01f0b62cebd303f11e24fdd373ba23adb698c6745c41f57cfc465d10aed6b08f171acb42c5bdea41cba6fa8016ec7603591468d310746513a24f77155be87f507e7fe8512f2fc889af9ebb145d5c33137aa7e3dc9e14d3a81c2a5149418782e082745235c62969d19bbb349b550524102aed4c1d66a3a98f8646f6f0c0c506b64748c6747b1c1cbdbe815005a71cef21a1c324797a0e30413292e78bcc5cc548d99a2106b9ea6eaf000000000000000000000000000000000000000000000000000050c1415181e",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "BoundaryCondition"
+ ]
+ },
+ {
+ "tcId": 53,
+ "comment": "low_bits called on the edge case",
+ "msg": "b502000000000000000000000000000000000000000000000000000000000000",
+ "sig": "fa54682a8226fa50a7728ee9ce8aa7b72bdd00a4f5643c4771d6547275088fa7b32042cb5441cfa8880779a602c32a536236b3be35a6e2a13360d4825d52f511252d6a3e272b493bc73878e0e3711360b5360af83df3f57570667d866c8558b052c540027a690df9eeea1135aa50546b2136d349cab85dcd698fbae1aa6fe0fb2eec20f3ac4f004a55be8510c4015f74538fe2e695cdc154887631dfe924774a6731b65aa4349fa16d536c7e9b5642966606e3fdb271779ffb0d3599bf958d3727fc443a6a190f4bb2f2853f5f6d773dbafc371772bb3d2b0e88aed601c9ce8ffd60b2496315f507bdbb50c7a309fcd68d85fee1f5aaa9420c4d2b52147d7fcb38026e21b5c467af3ed4b16038f2beab5f54b7c134571c079dbd28c54c6e06505d69b6dbae1e720e8a8bda189867861f84f5f6fa39f9af2cac8c6153bf1533b21f1e70360baa33860353eda4f0ec700c58283e2a3fcae5f0053c395be917ab411b8c2bfa94d892bc4fa424f6dfd97f9fa982b02e4fbe6c43b598eba769629ac66c3cde157365053fb6595982daaabae610cd3458811da53cfaadc053d8af104896e438d7bbdb025c474abc2493f74e16fa8ba563ee0765f4a06dbd874748302dd52df925df631e5bd5a7e335909aa7f8e7a65a7db7cd1988add9b9f34a71e3b735da6dccb4b6f6787af5f1e519e24a1e15c5930f43626f5ed734d4c442125896aba42840fe0613bbb8cb68325a6bb26bf1bcf14a055fcf63f11020ef7572de02b677315a6c83a2d0bceaf049e91bc715a085a25769ab9c9f4b6592a41c4c7e212c3380d723d3b4da5d9baaeabac9410e32eaa58f38facfe1f7438e4eec3ce5091a1e38f98100600dcc215d3c8ca850b46d60e2b941e10c66d809282f9d38d710a9202f9bd9a79a62cc30b32b5a1af6f9de111bee6a5bcb65e9125b8cfabb6db6c750c7553d6e3975be064feecd24e26c7196e931d8b1ce48ae6be3977db6d7eb200aae36191f7f0a2be3d3d7c9e760be49c8fb0b495338771f4b1676304c850db67d24422d7b153a4c34ca37a0ec287dd47739c2295dddd32e5809afbab880da22a82dbfd4c0041b0b8a6b9168e7baca62a6499fb621278ec25a81104eca44d2cd0165113fe6c68a56fc730ba9c7dffd039c978a701ed9f6acc61e39316ce53082c0dce04b4c0cb305aa53ac14befc5f65be4fa4bbdb79ab17c12698df9343de0b4cb3feb355cfca73529f36198d21da56bd343643a0d27d040f2bb7d048ecbfd1fc18b4bd27217c8532d63b47fedc445430caa18b2007ca9ae7fe9dae5bdb0371b897a3def628b0dddd3ba9b0805056caf5c02b7c3e44939b34ce646be0edc1289daa3aea0260643d34ebed8218aed531bee5ff772f2342e96e27ff488a5d1afddc3c5094a7f94f01c70ad619def58612f767cb21b3c742c43e94ff21b4f30348600a766e0f66d418b9f450e389be3ed10d3f080579248bbd7c72ee02985424c09c95b8af7229cc57e6dbd7bedc4aa2b08259db76736aa82bed4ab3198f748593189b0f5ddee1b1b8164f1f82896b458b6a5794170c056377b40e758c1d9f16a4b060f590d0299a3d6e8bb4d9046b194ea49051dba75771159d58d67d88eae6cd6d3cdab259d3b0422b1d1e0b40388d7007f73f3e1ff362c7bc785dbfbca4b4d007f3c799e8f4d11b806f26d82277f02ea2a61fa1cd5efac837aa29bdfa19cf00117f72b67c4df10a49a01efda625506de427d2ab9a514c9cf201ac86fc0692b66063aeb86b0b23e4180f6eb362b10a8dcd44f96983d5decb7b463882f7e0bc455c34998c65706e12c77416052bd36490796afdadf360ad94183907f807113b8c0533ff36b311ec6f8a31f1fe36f822ce27a580d2e5582a9c2991be1b43d0ff9c91447932ca726e57ab3ee076319eed5768decd05aa7ee857ec82b9132556cbe968f6ecc4013fbc49568c8c779d9a6d9dea52617e0f521c46d4862b47691038d9c36adcfe17a24a7f44fbd87114ef18bf1e1df13d15e060a01e2ff31c7b7ac4a355b0f5a3e98344d86c9510af6fdf934346e0b8c756fc5a14ee062d190ef7b6f78764e2063040bd09c4f7e43f1eb64f06d2e5c30b020d6c133dabaa9ebecad1623e3fa26bcfe1471471a6517de61f780b3082007676e5ff6ee9d5f31afa57c9faee333e639efc7761b0466f4c3b096cfda85d11700a4ec5db2deae29042dce8b74db1132104d9b9b0ef72962ddb6c23497bcc76e481871c322712ad44af7387a3e9498fe9a7c86ff73a012a2c5f0f492dc6766062cc296472f4ee671185892fd0704e8fb0c594eac2b817916ea7eda1822544a7ab2c2854e3b0c578fcf0d0b4ce731932af21a293e0c0e06fa5ba4b58dea2695fe4acd9fa6f7d1e59ec3657fc1f37e73e8e3536d7560bf502a103703cd815c9a10756da5d9e651234ff8d46f5f97bed85b89b6fb9c9c8026948d46dc5575679e8eb6cef8026aabb9a648fc87cc5e0fb06164cc22d6ab541caf5fbac8c6140d0fcb57719d45f22e055ad82b217cdb07dc986c4af4c847a8922be5d95f5367933b04b805e8626e73476a5da495bde018836ea5fe9cb34b3abe0b65885c83e918b5f5eebb53a962ac9e460dd6fa39795c68320e6b5f5e00638a1f18e40c3cdf75cc82794bf5f4a524081403894221f469efd48d460a8915721bcf0d6211949245cf7baa2f1ac65073409d9c1328e44142c9161ffc8d31ed8a387cf3dd0511cef2b61622de0d46d3639143339b9b6ed75cb5fa7c95011d878bac8b1be21be2e6608f040f76fe91f5b6fa92387aa081687da647712fa3b7b5e32ec2f5d22920acdfa5557ac8c071491bd4518c54f6d93bb8cde1a38f9dc1145af011c309c87c5b627690958fd466a4e8c073796f1cd07d844902e7e4eb56c031dd8c0dd6d9369c2eb4b89e4a9900bddc8114463c3ae2c87ddd1013b2defcf705ea746ff48d2821e5e63e033f4038cd842de7c838d9418c8e27a8dcd2fb9b88d8a0d0ba9c454d7a0a167a44cdc878f3274ebda260fe95a031c6d8917458d3882e11fc5363ccb034fca155ad29d622be4a047b3ccdffd362a3550c552a1b698e87dfba1774e527127017fdee76a91525993ff46b5eb072c79027148420fc958d1cc62e39dceb827dcd9baffcfc8b13888072827b0132cf943e31c71131e602444028740e6771a49615fcd00cf34ebf09bbbb2ab63b57803db54a1fd9c49957971d308548c94de5c5b6a5f345050ceb75708c8aee3c624e0d8290b2bcdcc918fbdcda7bc30d3f5f5ce1fb2d4e6cca86d6ec163f73858b84265baeeb0fda0f40e7bde058c85a2138bfa777c8be45da1c2b7915f94089074f4f22c0c1ecea9375ee2bfc23f90c521b8ed51434134abca11a9c3fd019244710125e9b7dc27661d23bcb4a40d5e87479d6b07ac86cfd91b5d89e664317336a2a6a80ee88b7b24ae1872bd99bd372d06cc21d835fd2336ea2ae53b7bf8a1c14ef724eba94e971524a1a290f9b7f265665b6195ee20719648b2a4a4a66c705705cf48b41a7c9c7f16bc2ae479ef1d5c23a4050acbdb0eef0a8c792f547952170a0b869f9b5066c06c4fe79d22379a5f8145c700049c4043215f60a7433955b2d9c681133149d845de27c355e1dc40217dae2c0a22c7d9b9e346ef585c35fd8cf96ebfcde2a7d4b7445e6c11046f0644ef7619e9c4bde19d33374061c7d55434249f4aaed4c7eb39a86f9d1007520d048301c9614943efbf9e55e11ea0b4462c9995c430ac4e7c3587df2a9f6d374580d0dbb48973c909615fb846705386c55d486063f8a0c9813419c9689317119ab6b7b6b9b72a2327bfe956859f8e3edd2d0e6a2e3446adb9c130fe0eab8dabaebd7593f9ca7b50df7c0f9643415b18f3c18ae06ec6ca1d39064b3bf8d8d4b841970e3c38c4e609fa7d6e8a938c371d7e4872ef88b088455715c5766126882cca88be8444a951b3984e1e24e38f87cc2d22dbb4459c258f7f6d9c4c70075061ab9c9a60fb23c0d4f5c9170c3368795acf27e099d9788d72e488742e04f779ac217f14eecbb4e3a41ee5d1b7e174b6df258ab1d8851c321c7ed74663e9f836ab08d8a5994ad7ea1be34ee3029b35550d653de0679b0d385315621282342dbda3abd445c695f67ba506ff9d4812a3a70996f26c45d71b9039ac4e4868047a396d838e3a625264e23178591cb966732901cf3960f0d83d4659b5ecf84e3948efde4413ae675d21a25e74aa780b3d4500b8ebb14898e9b8f332ea4524c7a560a630c049eb36b4ab1b4a77c9eb5755ff8a130786da3292383bc378ffedf2a7f3ddd8bdd5b7ff895608bc0c79ef3360c958d8e4854ac76dac7992bb69f6515052c47716a19bea1eaa0c0e33fa4f24207f7b44d5b48ed9ece05d5ca9d728b740e427823390c1d0d7998ce5edfd989c5d0ac351990cf8f291de748ddbcbda698052ee52cc078e15b7fb5360d890653c7b26458d0fdb813df3641f7f67613f5bd951d98128bff3a92d2b2c8b65adf282ff168af584730c3afdaeaa6550564655ad7700e5c34c6f74d091f1b367b210011788ababba86ba2e8eb6f2776c3e275637237c17250bbe31394a5a6f850c8ac1c9dbfa0f162b2c5e5f6e9cbbd7e2ecf72e7ec7d7f1f41b4d7b7c9fdcea4e6a85a100000000000000000000000000060c191f262a",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "BoundaryCondition"
+ ]
+ }
+ ]
+ },
+ {
+ "type": "MlDsaSign",
+ "privateKey": "f5408337d0fee65c28851226a5fa81b58464632c78e2a9bef70d330f2e3a5f743fe2130a9185402b9ceee616adcf0aeb1b0adc5b7bd65b8469d9f73abdd491c7659d92d3c6412cab96a2de13921e6e28264326efab5964afee6490ef637e546aa6b61aba997daac4623b0ff33b4bbd1a11b2942500c737263b5a7b599c454d8442073855220447142672283106762324611334160331766716756876656306340247416643645788214401245418430332335014484266482863377264642414206877226544283410340543730247627225170453086122730061663720413006672700563545553308822632620516184200008121626450075764267612441006130131054105366434124552571655324024583437672387040523848872722438820242507702366302474748842265201861837063577540747600354316761325342724414244818807083666356763458818178730038860216678417556380528118134053806822634757706213780383068245037164828641644088712486666263228563278454077257226514241838623545046705775223416234252343326255430503041432773656045076111030080425435056385571604503837242375546781881637734567572558705071178084805270422810171125366178026263016101361657832287864742571181540760851116286862663367644442262567158480021516651834322735675322048815731072442030787610367014103700472855221118750731347147044142277174111214348353566824008064045627684488722675430832058628153456611117540326632627423710448122776364844470152004860248280007708325718482525552264175551177652286873852661125522335557583772044467545176204662306421267463234564162341677110818645117237332101582140278868362167651433830007175820104352222533408675507171265571436206825831530330505138722014332544414101453361865663285823831165654236338452842635115828271801121281582618708170531302365851580567783463004004872080286853401722161683240507540174321162726623307704357168735441623362805550771378557544025577664653883727145477726652161328654636765354441580462755002525303617004457666056523833318532171037664380506224158805461788342412558636736557807030038168058241037440287466117173258168248137753751448321557734277603877752226522005384287417756673375054253360826560561501724117752720403752166506773562110186547571130831846605687668266432088723466508134167088157733748882573483206443607642671007311272002682616013071771238832745526182648607836043640787500384324825714344453303465740312784685175588706426626253688784802024002168480055006521746017031355351420356313376038357500434586744155331653510137233135501164040340443180537652161358720413477471755650162313051181844240248360407773704517351058764775404747121083306411352302550060311617664848461285205032215087833220558462453850275140274158215805155381750850757850271010637641250528012682211173613444785706268032670127024707747567314772632848841668565545456641117066848041360116507056675046470163210801085300085527862576471877326436205146166232414075335513375673166307774724018723351488672332685528233522486007870307457262016571753124063541231514175538351737543321726247362412023101043212535074048080016006886215511021520172701460518406542024738500552450424583471822538241124124282248288348872240758184343246825136527273210452765138144072540628287154522674671801747806751802628540570743817583756538088277258068473227163621044527db3e8a7b37950eaf9af3770bd6b8f8c9572b54256463bebfcfa8920624daa12fccd1c228c4668f688976a5094a00b6e30694ab2e017cdc2d4315a381bbe84ee58340cd6bc6fb225ddc2bf8dc117ce2be59993e5a521f5296126f290d10097bb2b9f171ff3f5de8a5047e76a15594c3caddc7c0caa852b8aff91f435d3f039d3f27963c357691e9c9ee543f32a77691f8b8ad98d711f8191f5c9891f593d8c754b07621a42cd25a2e95c32156a356f7bf71d6a3d1be00c7364741f2eac5d0c5fb3ef93c6339b559c9b2c4f518927fbe1b87d49546d0c9ba801c224a1cca84916aac512fbaef6841f725c72b927b55d920bb9b8df4e89b9b09da7adc24fa3f9834a8a0380bd42f07801e4afac2bc1e852dfe41b0903990289190ddcdcc214a680e0247938a4b54b704bb6f0affe7ce2171ab7e05f8cb96abc352e44e9b9f60f6ceba0ff95703209197657d8228e93dae9a9f478a30700a6cdddb4ad484f963afacb39a3186e94e097fa25ab149c4c438458b24369f62f87159396f37de36fbcdae2acc7b996a90f66c6de64ad905ba6d4508d3c453e7d43ecb7c8692244f3de88c975046189a438f61a1a84e8d0eb11f93dae6c80dee63c2a3ece5b794483d60493a84dfd4d267eaa205ad0b9491e656e267eec42f5d3094982452ca10b420552d684242bb72d651d47e96da49077d73dec8fcbaeda2ace53156bb4d4392e21fe094a2a32d3eb3d4163ab50a8528800464c05cf2db162da56dc13e709844dda7cbae47ef8364c8c3d5fb471f9407bffafef778486c304088801624aa2318433459b4794f4c31ec2cac49d56504602db94a5b882a92b06ba9ea1ac40523fbf4ec1dd473c076d3e397941c821895beeb4b5fd5eef9246ed1ac724a2aeab43c56a6584bffcf4aed0c6629d5a59b719e5d677539c3dd620d861ee7f9c0a5f116a17e4bb3b16a8017e668612c1038b576e39dedaf7d848d02024c0065f1b896ad6594af4477c73544ef51f3e612c80f11150b1f394b9fd899fa6d927535efaafb745133a45442241579e57701399ba23b0ba62a2ef13b5eead46f02d2c5a91fc031e458be09a8b5d53d9843278590bf556e2258b371f14f07cedc213302ecc895e15be2eb0e771e4b1d6d10fffd2ab945dacc52287e8667ecefaf3c959dc5bc18d0d953ce392acaa67e3f457630cf266c7665253c3c04cef5a73aedee0cfd06efc300887d4694dbbb717f2813737d0fae91e434922ea831ae41349e44ed0fe9101309dee68c1337f050e9e16113e8ba47877202b97113b3b876f4333ee620cfe37b69e597162ad40d78f5a7be33ebdb38b9eb84dea68e01de157c7e74f4522836b64d146f719df851b60fe69cea4667daa057bc47a47248fc3073a904239c0f8757cd8aa52e5d837fbc6490a0ffd9a3dfbeed09c24c61e48df0695d8f37f5670aca01a3fbb2a5fd3bd57cf38c453f80f9de428aa0d860b13231c5b2e435905bae792ee21e6104535204f9ab1f90d8c3123e57e2d01b0091ed089b9083438510579190478b86980370bb0170992673394509aea3a64d241b0d5388614282c4172796b00bcb034769bb492c0fdbc88c1a30a040d637a7b9c496f620114546133fed394ab79413268027d5418bd61e6ce3ff18ab83f76ea0a2e5694a48c01931cbd1c4bb02a3515ba3fcedad86e74b2848902089986bca91694dfa712b97c4f2878f287590aca47afb18d1ee6f502b90749f8ca1d796309c5bc96f5899f70fe0b4b5061668e62891b5285546f0dd2176649e5cba2b206953c7b66c57fe2e67c1c6e45682322d82c569c543840722756b7b4c92aa059e59983fcc327833931556346b83d7519b3a6b93691e74af6d26fb61bac9cce2f880d1f194d084171809bef926e99218f664bf18f58585985534281b6008d86f48f8c4044a4e4c89f4f08cee869c6a09b96df42d6435433d247e9e1150ac5b09da7f66d4f2eb0fc7f8f22bf11a0b03c9958f0562030d2c93b1c4a554e86b00f7c2e464aa54fe018bed4578f3ca0ee8644c3537b86da324703e7779fa897fdd4b867f7620e7fad29957f28067524ea180380428995ea333a3f291fdc67f0364cac8683e199a9a85c7caa3cc29db52f84aa0d0d07d5677d74816873e0af727a8555149d41d40a1eeb5944328a23b1be9e55ea81bfe461c86bb1fe3995e9f8dc83a77b06257c6356089bba2bd44e2a7acacf6de34262d22b0f899d0abd705637ad5ed1de2691e498851db106f1bcdada3a2f96908d3774f661fe2e8ec3ec598b936f4dc4d04b80efa4f57f3c55d0ff990b313643a8126aaa14d898e338f5a261ae5bb17b854cb1a87ad626d3b4ee29c567baaf409ad53891f707c148f49ec16f9882db396d1f140ba9e8b0c9a0cddde6592e5e82de0b18dea363e8605ca364aa68ebdc5f3220b810125fc787d339c6a5a68c92cbc64b5d265ce7a03a06a2409a8a18f000691cfbc5b205bcc1926efb589b82a7404d1bedf09e88ad286f7711a6d67ece4bf76fd86556e840d73f353d31b4d1c3dad5e83f72d540c601983cde7171e67b805bdabe3cd6788e30938b0398c1c8cdd5f8f1028f123d2d612611ce15f7637d2d751e59df171a4014efa4e8420bfcdb75b77c63ad1dfde967d4cd44792d1868d6df3c5bb5f1f3617861e24ee6fb58c33e6b82a57b29422dc0c5aafcf0ccf44557ede0e9f7d32be95f4a214524a30d37b85f1783c3e77b7d52e8648afbb9a03435c59d6afc2ed3b6ee434620c0b368ca6337cc7228916c5857d1bef27502014a0798ab099a7d7d9f053175b9e94d4e3736794034bcc92a842edd555dc74e69906a8021430655b3907ff0d5af127c847902c783e5e51bb45a3e4da6bca417774417fe2cd5d8448c5422eb55ebff2a44a378d528ab06419e6ee4ff6608eca6b44b8c71f55faa714bff9727dd3163b090330713d90813375c88b8681d491527f89b87f9433cce8f6dcd83fbf4f00215b3caef344b38ab4bd9bc5e3dcc3624fb60ce34acd7340b14d9ab48df15b1cc839265b791a417f90cd463df719fd69869aafec64df9bf010498e8d6397e1cb696fd68b38ca9ab1faf67b7123ad01781ffce12a3dc2b703cfa73dce16de7c3a09eead7ed6a644f96ae33a4bf179122906c969e99d9d99dc3472de3c48e80be4e9685602b23400bc292ad6f2fd34a2afb87660a010fec11d3ee82c164fb267957b6651d9150cfba16650952f8f8863709bf5644b0e4738c45199824511fae580548c7f655f0bf0bf3102002d80c2b2c3adfdf358f2a38346032120519b31dd906d3e26518b867d1dcb91caa5567976cada346044dc8e7274c0bdc0597556ad059f711868b83b8da5920304d08cdcfd3d5d427287f5b637fb7e2c14253452915fd6c6614f93c3900c6b3469d7bd87e2e5f15629316a7e8d4dc12ac80a89bb8c6ae7238144f82792bd04c2e741beb130c2a5a9caeb09e8f02b1480ad42486d0d8e5229072dc139115493c2c747920ad76391dddfd66feac8744d5662014bce98728b",
+ "tests": [
+ {
+ "tcId": 54,
+ "comment": "short private key",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "",
+ "result": "invalid",
+ "flags": [
+ "IncorrectPrivateKeyLength"
+ ]
+ }
+ ]
+ },
+ {
+ "type": "MlDsaSign",
+ "privateKey": "f5408337d0fee65c28851226a5fa81b58464632c78e2a9bef70d330f2e3a5f743fe2130a9185402b9ceee616adcf0aeb1b0adc5b7bd65b8469d9f73abdd491c7659d92d3c6412cab96a2de13921e6e28264326efab5964afee6490ef637e546aa6b61aba997daac4623b0ff33b4bbd1a11b2942500c737263b5a7b599c454d8442073855220447142672283106762324611334160331766716756876656306340247416643645788214401245418430332335014484266482863377264642414206877226544283410340543730247627225170453086122730061663720413006672700563545553308822632620516184200008121626450075764267612441006130131054105366434124552571655324024583437672387040523848872722438820242507702366302474748842265201861837063577540747600354316761325342724414244818807083666356763458818178730038860216678417556380528118134053806822634757706213780383068245037164828641644088712486666263228563278454077257226514241838623545046705775223416234252343326255430503041432773656045076111030080425435056385571604503837242375546781881637734567572558705071178084805270422810171125366178026263016101361657832287864742571181540760851116286862663367644442262567158480021516651834322735675322048815731072442030787610367014103700472855221118750731347147044142277174111214348353566824008064045627684488722675430832058628153456611117540326632627423710448122776364844470152004860248280007708325718482525552264175551177652286873852661125522335557583772044467545176204662306421267463234564162341677110818645117237332101582140278868362167651433830007175820104352222533408675507171265571436206825831530330505138722014332544414101453361865663285823831165654236338452842635115828271801121281582618708170531302365851580567783463004004872080286853401722161683240507540174321162726623307704357168735441623362805550771378557544025577664653883727145477726652161328654636765354441580462755002525303617004457666056523833318532171037664380506224158805461788342412558636736557807030038168058241037440287466117173258168248137753751448321557734277603877752226522005384287417756673375054253360826560561501724117752720403752166506773562110186547571130831846605687668266432088723466508134167088157733748882573483206443607642671007311272002682616013071771238832745526182648607836043640787500384324825714344453303465740312784685175588706426626253688784802024002168480055006521746017031355351420356313376038357500434586744155331653510137233135501164040340443180537652161358720413477471755650162313051181844240248360407773704517351058764775404747121083306411352302550060311617664848461285205032215087833220558462453850275140274158215805155381750850757850271010637641250528012682211173613444785706268032670127024707747567314772632848841668565545456641117066848041360116507056675046470163210801085300085527862576471877326436205146166232414075335513375673166307774724018723351488672332685528233522486007870307457262016571753124063541231514175538351737543321726247362412023101043212535074048080016006886215511021520172701460518406542024738500552450424583471822538241124124282248288348872240758184343246825136527273210452765138144072540628287154522674671801747806751802628540570743817583756538088277258068473227163621044527db3e8a7b37950eaf9af3770bd6b8f8c9572b54256463bebfcfa8920624daa12fccd1c228c4668f688976a5094a00b6e30694ab2e017cdc2d4315a381bbe84ee58340cd6bc6fb225ddc2bf8dc117ce2be59993e5a521f5296126f290d10097bb2b9f171ff3f5de8a5047e76a15594c3caddc7c0caa852b8aff91f435d3f039d3f27963c357691e9c9ee543f32a77691f8b8ad98d711f8191f5c9891f593d8c754b07621a42cd25a2e95c32156a356f7bf71d6a3d1be00c7364741f2eac5d0c5fb3ef93c6339b559c9b2c4f518927fbe1b87d49546d0c9ba801c224a1cca84916aac512fbaef6841f725c72b927b55d920bb9b8df4e89b9b09da7adc24fa3f9834a8a0380bd42f07801e4afac2bc1e852dfe41b0903990289190ddcdcc214a680e0247938a4b54b704bb6f0affe7ce2171ab7e05f8cb96abc352e44e9b9f60f6ceba0ff95703209197657d8228e93dae9a9f478a30700a6cdddb4ad484f963afacb39a3186e94e097fa25ab149c4c438458b24369f62f87159396f37de36fbcdae2acc7b996a90f66c6de64ad905ba6d4508d3c453e7d43ecb7c8692244f3de88c975046189a438f61a1a84e8d0eb11f93dae6c80dee63c2a3ece5b794483d60493a84dfd4d267eaa205ad0b9491e656e267eec42f5d3094982452ca10b420552d684242bb72d651d47e96da49077d73dec8fcbaeda2ace53156bb4d4392e21fe094a2a32d3eb3d4163ab50a8528800464c05cf2db162da56dc13e709844dda7cbae47ef8364c8c3d5fb471f9407bffafef778486c304088801624aa2318433459b4794f4c31ec2cac49d56504602db94a5b882a92b06ba9ea1ac40523fbf4ec1dd473c076d3e397941c821895beeb4b5fd5eef9246ed1ac724a2aeab43c56a6584bffcf4aed0c6629d5a59b719e5d677539c3dd620d861ee7f9c0a5f116a17e4bb3b16a8017e668612c1038b576e39dedaf7d848d02024c0065f1b896ad6594af4477c73544ef51f3e612c80f11150b1f394b9fd899fa6d927535efaafb745133a45442241579e57701399ba23b0ba62a2ef13b5eead46f02d2c5a91fc031e458be09a8b5d53d9843278590bf556e2258b371f14f07cedc213302ecc895e15be2eb0e771e4b1d6d10fffd2ab945dacc52287e8667ecefaf3c959dc5bc18d0d953ce392acaa67e3f457630cf266c7665253c3c04cef5a73aedee0cfd06efc300887d4694dbbb717f2813737d0fae91e434922ea831ae41349e44ed0fe9101309dee68c1337f050e9e16113e8ba47877202b97113b3b876f4333ee620cfe37b69e597162ad40d78f5a7be33ebdb38b9eb84dea68e01de157c7e74f4522836b64d146f719df851b60fe69cea4667daa057bc47a47248fc3073a904239c0f8757cd8aa52e5d837fbc6490a0ffd9a3dfbeed09c24c61e48df0695d8f37f5670aca01a3fbb2a5fd3bd57cf38c453f80f9de428aa0d860b13231c5b2e435905bae792ee21e6104535204f9ab1f90d8c3123e57e2d01b0091ed089b9083438510579190478b86980370bb0170992673394509aea3a64d241b0d5388614282c4172796b00bcb034769bb492c0fdbc88c1a30a040d637a7b9c496f620114546133fed394ab79413268027d5418bd61e6ce3ff18ab83f76ea0a2e5694a48c01931cbd1c4bb02a3515ba3fcedad86e74b2848902089986bca91694dfa712b97c4f2878f287590aca47afb18d1ee6f502b90749f8ca1d796309c5bc96f5899f70fe0b4b5061668e62891b5285546f0dd2176649e5cba2b206953c7b66c57fe2e67c1c6e45682322d82c569c543840722756b7b4c92aa059e59983fcc327833931556346b83d7519b3a6b93691e74af6d26fb61bac9cce2f880d1f194d084171809bef926e99218f664bf18f58585985534281b6008d86f48f8c4044a4e4c89f4f08cee869c6a09b96df42d6435433d247e9e1150ac5b09da7f66d4f2eb0fc7f8f22bf11a0b03c9958f0562030d2c93b1c4a554e86b00f7c2e464aa54fe018bed4578f3ca0ee8644c3537b86da324703e7779fa897fdd4b867f7620e7fad29957f28067524ea180380428995ea333a3f291fdc67f0364cac8683e199a9a85c7caa3cc29db52f84aa0d0d07d5677d74816873e0af727a8555149d41d40a1eeb5944328a23b1be9e55ea81bfe461c86bb1fe3995e9f8dc83a77b06257c6356089bba2bd44e2a7acacf6de34262d22b0f899d0abd705637ad5ed1de2691e498851db106f1bcdada3a2f96908d3774f661fe2e8ec3ec598b936f4dc4d04b80efa4f57f3c55d0ff990b313643a8126aaa14d898e338f5a261ae5bb17b854cb1a87ad626d3b4ee29c567baaf409ad53891f707c148f49ec16f9882db396d1f140ba9e8b0c9a0cddde6592e5e82de0b18dea363e8605ca364aa68ebdc5f3220b810125fc787d339c6a5a68c92cbc64b5d265ce7a03a06a2409a8a18f000691cfbc5b205bcc1926efb589b82a7404d1bedf09e88ad286f7711a6d67ece4bf76fd86556e840d73f353d31b4d1c3dad5e83f72d540c601983cde7171e67b805bdabe3cd6788e30938b0398c1c8cdd5f8f1028f123d2d612611ce15f7637d2d751e59df171a4014efa4e8420bfcdb75b77c63ad1dfde967d4cd44792d1868d6df3c5bb5f1f3617861e24ee6fb58c33e6b82a57b29422dc0c5aafcf0ccf44557ede0e9f7d32be95f4a214524a30d37b85f1783c3e77b7d52e8648afbb9a03435c59d6afc2ed3b6ee434620c0b368ca6337cc7228916c5857d1bef27502014a0798ab099a7d7d9f053175b9e94d4e3736794034bcc92a842edd555dc74e69906a8021430655b3907ff0d5af127c847902c783e5e51bb45a3e4da6bca417774417fe2cd5d8448c5422eb55ebff2a44a378d528ab06419e6ee4ff6608eca6b44b8c71f55faa714bff9727dd3163b090330713d90813375c88b8681d491527f89b87f9433cce8f6dcd83fbf4f00215b3caef344b38ab4bd9bc5e3dcc3624fb60ce34acd7340b14d9ab48df15b1cc839265b791a417f90cd463df719fd69869aafec64df9bf010498e8d6397e1cb696fd68b38ca9ab1faf67b7123ad01781ffce12a3dc2b703cfa73dce16de7c3a09eead7ed6a644f96ae33a4bf179122906c969e99d9d99dc3472de3c48e80be4e9685602b23400bc292ad6f2fd34a2afb87660a010fec11d3ee82c164fb267957b6651d9150cfba16650952f8f8863709bf5644b0e4738c45199824511fae580548c7f655f0bf0bf3102002d80c2b2c3adfdf358f2a38346032120519b31dd906d3e26518b867d1dcb91caa5567976cada346044dc8e7274c0bdc0597556ad059f711868b83b8da5920304d08cdcfd3d5d427287f5b637fb7e2c14253452915fd6c6614f93c3900c6b3469d7bd87e2e5f15629316a7e8d4dc12ac80a89bb8c6ae7238144f82792bd04c2e741beb130c2a5a9caeb09e8f02b1480ad42486d0d8e5229072dc139115493c2c747920ad76391dddfd66feac8744d5662014bce98728b8d00",
+ "tests": [
+ {
+ "tcId": 55,
+ "comment": "long private key",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "",
+ "result": "invalid",
+ "flags": [
+ "IncorrectPrivateKeyLength"
+ ]
+ }
+ ]
+ },
+ {
+ "type": "MlDsaSign",
+ "privateKey": "5a04d37a8c83d373ba07da5cf96806002e3635ad8add42ce6ee9902dfc9a1f271d69371fb6d0d47fff2c2a3e14efdd968b5f906525510164dc0922789de9a36401c37f701d3534f2b12bb1cf025d76c2e28cf618c0dfe01eaeb99e89244bd9addfb0ea382be7fd5b84fc7a542da6df8018393c1cb4447cd8a57a2a4010ef668c892162120262656660577537620858306877288262032550153645008243057054217885086730253027718543115827673734834021026655848872507780160307120610653807615026121011654045584742242028050076212304644622036857780160574258268153175682380507728864805110378511663401100281288612604554431023467464318607638564716220174250501806756485253788101817760728110332166223400053388866140755703256378713651266251025143727143862156512628830358881868827351366230442135233067730826283313276701663806868606378477354802251542518664580001676813105243524037547434312857600076111675044534078713415665851221862481576565288714147773755146042124737138577158807552174524665527655475711031167755773405268058885826085172715016873355756131635087773263680176517822621475634868037374581758202262826405358827453764185573441285177646637046482664734215076273628557418472536417670624837714315770036225287425417545552835381262180632774576104156422128657852728607634888226030104476341211350275417301320538568576126854705873358535286252876730066607400671077451488287474673781057376755636736300351584316776077034760530472112026628657855477551476720662364873460023778603037564413774656371300714764330504086315152870325575220164151244123320758775702584254563302118684674181206428565763726336522613252227150246387837431861718613367336681068173381155570303618371877421018621034688423711364265326872170560016737288183135386051588605005575601562300482072351276338850813627300827045360182475734107841807172823405464035682762454727085134112788152668335867881603747747886438728275143456437138372534838423544772560485420373145867133245230318456430385001513766856401740560506632507806758013070578760882087560664118431087766457301152570784374156607668135523235127006508001844765168205625675515522851306463808170330288717426340542061017182525753272483381887050415385621873518551456220162640581837416542202384673046227788087360284411017141668004300724058448772845202481185421185106346558106858851458334352156853014853775434371558770778756562750800618155783837362317541122253861613131105617835532140332273154670126080050054821553732466882528661165754206308744168278778886451752026474481361880682130111255183607483727825030054507078150465157304487813686635646518564474314147540677352760104147038338840886546367137471653273322815730234801515416268273212123372142508026803610111663547542260815761245004581623328122653811435308228387031216118038527465681043658728857732880011211842720148824782314800256806645741246087368061875721027666682312103868210735466403846013883051130172662338686665824445442680428744316636068502645333342510762032110182576265825132061332306783484382753165436032405062768011781085432483762467688218557682520377778334416064410850584515378203731655448168158187085814234183301526115577255068758827451712316307151624186053783455822606128666687000188750627024377333667f9ea90a30bf9214ea584ea87d0dcf45fe8c7d03d54e169a64cbb64533f801d4563e1718d439e86f91e421b90b02f63a4d8bd005575dd0badba5388c48e8e3167d1bd314810fc2c529c220c89ef3d1bb549ef3410719e6ccb2e2c359296f20d9b717704b98ec5861d0b74786be357e3368ec11fd0783034abe1d432ae30fa38ea10775686453b73450bac84f76f2b525e6a9b937bae8a593bb3e1d8fa3f33a55c20864923a2274bf766c405e785113e5efb2d572369148be39e03835a05c904866719106c11eceaeb08eb553cda18be3f685a30223a16b09f4516ff5a3a28aabbcadf48a7ed7916227aa6b04ca899e157fd2fb1219671134ed555b9d8c63cf769d5b2277c43689e215dc1886440d25b0d51e42fe94cb5af18b316f7373251598dbbaa2c828fe8f90c3892b65f159b495c7b11c3a315eb1908df603f7264b41281a6f2c7abe75b76c45b9e9dcd563d0215c022a7870ba9a77c2756cf4b9ac44be1e89b8d58108211a89b33ce610abeeab2603a136a2cec9f4a2e3abf1200baedaa33c5ce3c68004a2c9e49399239fa73ca36f9f7c38aa3f5c774e5ebfd38a416411fbf9d6dc424f1d35cc36aca3ab5e57723ced977a4c36f6f2d52f2cdfbbbb60f8e8cbd875047159b83b997837b4ba6914ee408f5c63ea8168d8386ce4be6d58a52c0dcf7e36ce356d0493e79f13832ccfda167e87339881f22d5c04ef3180abb68bf385fd85a91f2bad501f8c11d18b111967f151e75b645fe6c6e9132ea9ebfb96bc015865dedcc03a80b689dd9884ca2b03b9c3c139765b085764290e77b6f98424677315e92f9fb581cb6322ad0a6104f5b99e646e43f40115dcf43304fa3ac29e4ab019dfb5f95b1d15ac6dc7285a77066ffeb17308e8d630fe0c66d63e7fa641de17c0f18814940e4d46855f421894be71bfb4688c74bde7c96748d412b3dd77f702216847cf997b9a6f25ed951b17c4d4939c30b6e1d703a74201bc7a962900dece72a038d69e0679016aa4d198615f37e484c953e773c2d813e74d73da6f291cb7a079c297f240f779ebd15a53e62cab45c98b2645b956e20549504c1edf3b96fd3e2dd50b69e0d8a6af3e286fd8df55f4623b9c5560a7e93e7341262de6c09f1ee74101f5ab2949254caa89f43a268e86a790941e90ba460fef076e7cfb16f33ec06d5fbe61bb8d407f7a14edc7ef1bb61d9130d51559b484f7214018c97a875e87d76f96879d48486193b94553f6386ee0f0581f0e8d4f894b66f7e859f7857e089a76bcc3c7ccfc1c623c9f552579afad69bd87d050a38b860c4d8a5dd9dbeb9dcf2e2a0a21051dbdd3ee12de710cd6ab69ac26c4d97ddf5c503a7f2358995da75953841630e70ace374e03371cb1987259eb2d9fb19e28c5a46bc0e247103f9ded74fc99171a732dcc9836040389b7db854bad92c95e64d383c53324b32287f7dfd582854d218c261f49fb32aa6338d590abe900bd5f75b9db18624ae6b725bb1567226c85f5cbe59663d46e6cec63e1e11db91fecae53cbba9e45ec3f5b1b7750cddb93c41f86eae0f30d760e07980bc7e25f8c333b9153d510e5c1b92b6468a6ba76202e87c73087660adf1145f99dd5742639e034c63f235375f12a07283e2b0547ae90199eae17333c58f5af5e03e9f2e34d3752e763b618045eca78b845253a31005fb886872b30fb1c3949db436853a55753f8e427227fae92e30c3c6ba8c061da52b63410c880ae255df765742821e0236e7c5b582bf922deb404c5f7961557b150eef668b04baf50c3a2d3e21f7b942d4bf9dae3c25bd81a9ae3a0d76fe1ce0998c310cd936597ae1e178f99df6adb7b46c08a909dc51919d12dc2cde5a7d55ebb442f1f58ea53bf92a92a2e13e9917447ec09da24fc7499c5a140754d443e947338d7723c2e89c620a55650c630e63ef3d732b68b79debfce10db8a52d9f325e2c6df03e9ba4604bf928f01ece3f26ce8bca0e152c33172f065869918fdc70866823809a228993ca4282d05cfc1dc40adb514f68e5645fa7ab51109eaa2a16b60097c83beb377b5366fc564ef77ff33daa536d9bf0bdbc8f4c8eb31f1f241ed65a5ec257d0aaa689b7b7dc2b3145381165ba0e3e13860cfeeffbb295f0be75536d2a9d60ab9ddf9c2759d49de5a518c23f43f8fcdaa0e861e3f1bd0ee0fa8b4993516d111b7da0acac70fcbcbb5edd6944cfcc320f7371545ef4f79732bd215ff8db228bbd801609af01cd2aec750e13d573b6941a0dc41eb11aa9c8cc3f734c28738c7337e13754e3a3d5a378918b308fa305719b89632623daaa38c44d740d22e7f3b943acf23a7d9e416bfe75c865a363cbad9066f2b364cabccd7d25d1d4f05474594c5730918e23f2f7df47f04c5ab2a21830ef70d4340399e46deed555b0f1362fc4200ede6cd6b15c4c951bdfa98f3bc69867d884f44d70d2c8c333dbbde59208d29937603777b2fb97d0a9117202f972cb03d0752ef69fc72a4a63d63b889e83d47a190889ec5a2b543ffe04b0f51e232ebc8cd1c42a8412e1e468d9db1c80d69cd41132dbc1ae272ce5f2a53af70836025eebb061db84d10b5700959e1d79fbbcf94e95b82b7f652d8a785b0c347d0dfc74d78acfcb97352dbb69e8e02b2034d3566bd3088d782b01b980c8da9166caffdb68dc0a4ea0b67187ba124058236ff727a4f15b16361168a3816a9b084114443da01ac1ff83e754047a025f42861ed697a799db164d32748b74a3bc5112e7b14c7a7fba184278a4daf17982ca8b30f6325b69f7d6e9b191b6c54766825fdc50d03218c9a00f89c6bb9e0fbee658a68fb40f60a88cf673303326f92909e23672e8aaba8670d16c498cdac10cb7f1942df44890e4ec29be4ee7d1e8d87d42639239a6cc9cef7c70c0aed3057d9204795b3aacd78699422c69b10e77285a51c0241f37ea3cc251bcf8c2c3478344714a6862e2cfd5a16127f2a14b92788fa6f3d9e64525c8afae9d383c09d286be154a4b9d533fe7cea43e7bff797d7247a8cbf9345f1b25fdcd9567363d23b1d4e49d10a228e5f0fb1c4750b406df731daaeeb5b6a02c795e6d9fff553271031ecbdc2c4849fee22ec26fa2cbc5dcf354e7938824949ffd01d5ac45fc71fa7c75de411d023060e79725cd46e6064b5d27056d45687632952a6cf9ffe773559acaf265c9fb92f7fd348cdd21b0334493e5aa92b1012e2067760b6beee9bd3922a436aa2c218f2eab0992b1a654663befbb0559fdb9d6750121128d5cacc8e8bfd6e99d37cb1944f578cfe516a10c584f5833af9a6f895e77a433b5a7c997bb4aca1d5e8fa5aba5f876c49be22e2a200b0ef206655d3a0d440874d117adb20fbea3c4880682480e6ec0ec0df50b64f1222fe0e80524861bd03fe1990a8a014ffa43fd6cd1c0e046fd7be1eb981f9312fa72e3a3259dbe4e71c66318a6573ae1bcea28a37fd2ea38542078150937a2371efc3aab7a7b75d7ad6902f30c5f36e3c271935e96825261ae9340df4f3d2c36c743d08406a",
+ "tests": [
+ {
+ "tcId": 56,
+ "comment": "private key with s1 vector out of range",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "",
+ "result": "invalid",
+ "flags": [
+ "InvalidPrivateKey"
+ ]
+ }
+ ]
+ },
+ {
+ "type": "MlDsaSign",
+ "privateKey": "5a04d37a8c83d373ba07da5cf96806002e3635ad8add42ce6ee9902dfc9a1f271d69371fb6d0d47fff2c2a3e14efdd968b5f906525510164dc0922789de9a364bef2114db20c23e2612e09ff08803f1370dfec0fe7baf7caa0b136307c4c5e28d66131588fd95ef62f045ce5f9fc97fb325a615633cd8b3750e0a59af4ee68b585216212026265666057753762085830687728826203255015364500824305705421788508673025302771854311582767373483402102665584887250778016030712061065380761502612101165404558474224202805007621230464462203685778016057425826815317568238050772886480511037851166340110028128861260455443102346746431860763856471622017425050180675648525378810181776072811033216622340005338886614075570325637871365126625102514372714386215651262883035888186882735136623044213523306773082628331327670166380686860637847735480225154251866458000167681310524352403754743431285760007611167504453407871341566585122186248157656528871414777375514604212473713857715880755217452466552765547571103116775577340526805888582608517271501687335575613163508777326368017651782262147563486803737458175820226282640535882745376418557344128517764663704648266473421507627362855741847253641767062483771431577003622528742541754555283538126218063277457610415642212865785272860763488822603010447634121135027541730132053856857612685470587335853528625287673006660740067107745148828747467378105737675563673630035158431677607703476053047211202662865785547755147672066236487346002377860303756441377465637130071476433050408631515287032557522016415124412332075877570258425456330211868467418120642856576372633652261325222715024638783743186171861336733698106817338115557030361837187742101862103468842371136426532687217056001673728818313538605158860500557560156230048207235127633885081362730082704536018247573410784180717282340546403568276245472708513411278815266833586788160374774788643872827514345643713837253483842354477256048542037314586713324523031845643038500151376685640174056050663250780675801307057876088208756066411843108776645730115257078437415660766813552323512700650800184476516820562567551552285130646380817033028871742634054206101718252575327248338188705041538562187351855145622016264058183741654220238467304622778808736028441101714166800430072405844877284520248118542118510634655810685885145833435215685301485377543437155877077875656275080061815578383736231754112225386161313110561783553214033227315467012608005005482155373246688252866116575420630874416827877888645175202647448136188068213011125518360748372782503005450707815046515730448781368663564651856447431414754067735276010414703833884088654636713747165327332281573023480151541626827321212337214250802680361011166354754226081576124500458162332812265381143530822838703121611803852746568104365872885773288001121184272014882478231480025680664574124608736806187572102766668231210386821073546640384601388305113017266233868666582444544268042874431663606850264533334251076203211018257626582513206133230678348438275316543603240506276801178108543248376246768821855768252037777833441606441085058451537820373165544816815818708581423418330152611557725506875882745171231630715162418605378345582260612866668700018875062702437733366cf5b335379c2528de2db3c7486bee132f92e34b325eb2b474e238581051d098eb8130998a5d0ce7e8ed551a204eb0dec3e53a53025fae317c1d973a27609d5bfc3fdbe6360bd155f107108c4a5971d913a3615b28caa60b7ddc27135a14608d2f43646126402f3f591e175ee4c34f142d7c2332c6ade52ffc31095a5b4e23ed5b63dc4dc9d05496c4bf49b308f526b447e5601d98a3a111c62d349af190cc96275fa4665f1aa379ac393ccab3f5ff0d05ad217bb0a8f69eebc1aedd7dc219668f9742e1e8a2862e620bc60b06ec7700fa9060655a892f183e70f29f6d188d8b1aabc090b8c4ef967d6ea350d65fc02ef4d6f062c3c0421794ec261f42d93d6f12eac55f5803518def6b936c27e1516e547bbed41e86cb23708bd941f0c75d272a1b4c8d09164c99e3330142170c403164419b916f956e80928990ff35b52c5b09f4cb1635d212d912126592f2f73770c759b93bebf89b65d0efcede2d29324c9170a716b93ef99536714b7f5cda111499dbafafd5412efeb291f874f0401f52616fd6eb04ab7d4df4b69322ccdef1a0a5a35cb365d5b0b02d1e5c78a9e1fcf1c02426add4bea769eab6f5ad19358ebe3e6c45603fb5d056ffb4474984b7942ef2c03b3e2b2fd000556ffd1ccfdd874f5628809bd39e396e172b3b1316f77b7e11290a0c584a148ef9575e7de4547a680808a0f09e604b7231e4d627995be092d61141b874fd03da36a8933ce3a1262099097806fe9b9a0fba7b16a0343f3e76e69ae9d91f68963c4b48f9c7bac411600ce4dbf87b295de39bd819dc632fa45e3943810cc231a4b285101797f2b6d4f08ccb33daa67eb92d632eae427c63426664226ded96652d32c9b18c25c421db3b0984aebd8289e248dedc4903297df22783366de4b71cec53c308e394225042017b7f92688204ed6bc8b0c5f34011ae3335079eea47f617563498be1205166bd3a1c7bd8110d9e6503a0dc72fd550de1acf401dcfa212ddb3790bc61f04e4df9fa0112d977779f6dea4333a19749e17bb70ec8a7a18ef4373ef131d89b3f77182fda0c9f98b7a614967a0708938f2288feafd89d19a1f542606874f2eba5a0b7582b5506ec9d907b50dcbe0edf55f32a22ac3a62dc906976ed327d530c67103b5aae417a1d9dbd4538772daec64891b90e913bba087f7b1cfb8dab9a0cb95a19bad82ae6c34102cfb34f783dcb78308509325fcad64d301b59a50f7eb1337b279fd39fbf2062a314d56b1ac8d809997dbc094201a0ba7e46d2c79efef3b2f738c534083edd16c41d2d0fec673c1f15e9c3f996e830ec248f9f27049cb276c59920bf690caa54a8ca5d012a004e1aa12ee181b9df54a2688aeb38a7194b64c4be3adf2392b7ab5fc3de1a29576dc9c70060bbb633d4af5e890c6c6f7567c6cb17cfe14f75d8eaf1a303393b68520d88705b6797a78e991d01735c715d5b93f5231d04b662cd949677385415e210fae274f454cdec9081222cef1defb7818ffd1640d55cfab872718786f26fde1d00ff1192060e5d67769246693eaf49d88f75a9910a83888b40ca630fb3af98d1c1c268dd5e16f7b8e501bfb2fab98129e09439eb3fe7a6356c1c1c3019568a0dd341125536d8006a23003f1557fa1cbede1a78c046bb91b00e3f350019b7995864734c0dbdeca44de7afc847102e270d880b6ea6d01e5903228e7c7ce66ca0e1d94b6cccab8dc3c90ca168ab8a131cd9160b515382f9a667b54365cefd27006f0edb52b8dfc61237cec28e31e3e8aa8e2a1882c13d3910ef0fe61511ff5d230eff4bb990ed7f471cb5351e88d780d74686097c1c32eb8e918fb07242aafbd52f3c584a7f669fbb6d71e01ae12d5f21824bb5fd1e4812d7cb93519f62fb9bb3d7dc2eed33bc85107edb0618fb01bc38ff89f3de70d39a602b2b21413bbb55f1541eb9d4b6a997e10eff77c759e5565353dfbaedc2942053ab72c64c9bcdf22cc3f99d5130fb4b55eada0fe8b69368af8d83282f3bd2a9686b18d0682184b48ee0a0a76b1464a31b37acf8dde3a295a3ab293907fb4dd5a6703c765926e23fc58bedd769d427c1b73e0a6e5d9f21a5df54292187b9d32a2ead8b9f91540efb7e98a390f76c1ef40e9fdf9253193d5318e1092d104a7312ccad9e2fd5c9c5214ea4626d429c389dfc931333181b931e5ea723e34034a0282174ff89130533c1e6284a99f6a01e376cbb79a136cbae3bcba43fdf94616ac206a4deb4ede69a2c126854cf9a7dd351c5290951893ce6bddd3a97faa51f0807693ffaa6ab7c7a1af39883d78b8600651d2709f9c01c73d62750d7d8729fc5b410fecfa3147cd06e8a8e453929e22a1b4e6c3b5909bdb605d1b52a107812f37b0ad7f875162c403600f19f6c9181977d2e1670e7364b8184c5c61508f5c6903925bffe36b605300584e251383c859a72908260ca1a78f611364a80fad6387aa3b71ecfe175a2bb9eb8c4c801eea2a82d90f4a5483e0abe46f541042dcd4157e94e2865993b9fc45f257cffbcfa6228fee327463adab4299143e6b175065cb93cbc21b2ba4efe06dcba5477d4de623b221b435ed0d5100526393e0cd1d1c6b200277ce8f7f020f79e5119f85643d4089217db311d76ed9bb3576b6ac21f118af5c9c5bdeb9487014b5fcef89a14b5f85c3e9416a5d333e7a501199c55f388b157bb89adda91a5bc39d212b3526af5c5e7115c2419d6a92db81b5c8811b16fbb66ff09f52879b4f96aa412d768a53fc11d9651844f5e7ce16bef00da7c2d8a1ec61fa3daffeed9b4d0ec314cace4f38ca12911e9c71f63f4ecb877bed1b95ddc57872ea136d786414038834d9d00929f9c40f0e74273e2fd55d331f1b61370d8a0ef0dd212525158fcd4e0b7e6d8c3f1b367cd6395337c751d35e8d528908d7f92cb7baf384577e9902eba8b2d1c50c440dc18135e6ceaf16093e810725437c8c118c2ea9d09bed3f71a38c95f7baa0822b25f662d0709783ed0e725bdb9ccf936bf66c4a660ee6ef5f9c1a0e0227582a1a304070b286806ba772c8f1fce8ec5eb7a8735e8d15b8261d8852ec913816cfd739475d1412fef0e5a85756385a9626fee1f4927aa227ac930db6ade1da75b6752c1191ed766fe9cee652c0d34f96a5cd596b96da30a841177307d32cf375066c0f56478a3cd87653d13c010793f6912abba2c2bd53c547fb5992ea521f4c59dfe955545aec832833e6a4b51f745b1d6677947bb6492e991a2ba411d74a5e67faac65d8e9f451374987d21f17fe15f99856173760ec4692d52bb1bd51fbeb29302bc09009279272bec9141aa2444ad020ffa416fa35943c423c00261d54770074f78dfd640cade82f9e7280b9c4ec3f8bcbc63a2286b5ede8e21a06b1c251b525d1f41febc0dce86225b0edd6de59d768df541127649759de213d1a84dd0b03eec32006758b069c1e0a21121a15c706263fb3e53d6f37d04c77e35c9fd70541b2d5ad0dcc826c143fcd1076319108007a9dab1d6be5e0ecd59d609058132",
+ "tests": [
+ {
+ "tcId": 57,
+ "comment": "private key with s2 vector out of range",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "",
+ "result": "invalid",
+ "flags": [
+ "InvalidPrivateKey"
+ ]
+ }
+ ]
+ },
+ {
+ "type": "MlDsaSign",
+ "privateKey": "66239a16589a522a029a216a75a70a5b1c9c49b6432bff6e4be262d4d999c01d31cec062b9c60b50f394bbeb12d4763ab04d83d9ab3f08e33d37d554cff24048575979ac2e6e7f0514f9a35fa2a883f233fac4b86f1550758ae699cca65f1bd67ece689da47fc9ee9e85d38155f966c03799bb6cfb84e4f62033ef8be2242e7932408022154728203603167521238242353364230840231131005254160344120788857083660860677307328184661267666638880601862538013373717055743172244673222581744564318645268487647648744822181107657700224575058853430771435823763877204630043265416834412157258870070332654331552302568213762268637262867008801821217084532357413540276337416828454777738754614726243574836313011182650413353050340242281384784566827854542526708350663711276625634421783811600336624151588868527246666012701436600340457047714352287518358571324270854251487282433310441753721750336723603720741180674308741406271041706774642452275121276685488818706526802600446656727025650583587812710015638545032327123705888272323147565061337882278550370743027354311135731014805044711236501621412707177440355768371288852635175864013440875037468752876438868432811223511663656780802653611607083240013215610452127068088060675150203475632008021387162747204736830560226033878614000065603182607244627143832225054130633711381122227321416540407136366115730268703071054615715285784184260275660140373786245186018507127737863223013380368820420547741151728723556632131861616740726478661656061566425273445110884547058755872508267723373620280066057624120653788300651603066073865635224244352484606318773605547653728672606008270280735276453780660462317043586002558612567726451130817027005772250815402608374422173285628866288705502645225267320446537653037432846821705650000888813488727065835054656446100872703377120640112743320520611624042610131475885253707086280775714682262477350351765727761323766008758054845403022151314375385205876518704600321776235338834203703661125152435414454240824321336435061782411135353261425058277118344681204575500448378710553438445763504753681020215853063765112814402068831838572270273472221081135086734024067405853377738152308522703205660667452305688786601478430207157830322875031328526785111875001542476182130575450684154613326102174218604106371166783063113673272658570654485204457148261083126527761167424676528131352748632671657666381722472664166454051211324457616882352830512881345322674872414588207352835233551845170272083026635525818643630725625451844187047563466481002253406521472308546874428684758306145451321385854605053765560054787253885833180508167712352167808017137331368544008218685688678200312887258641115002164116588525433272838003582612448378074275306760485141756323744845668324835178162334444741456668210120456736301032046030511685448186102876873542041333388827130288246107660284711662262573311777184721168240586672600736406742733355000733415126854125710813870837667808140286733422622017000211343467075654811231140760847446551763153337342602402005247263367334757842664276583448212857670355080261066438777426633471027657733213460243307014534503654548465421747073103725061336286000543752136483384831425230660187866011065508630556384411877541187044c420186bcbb9bbce24b3b334a4db01dd8644cf8297d8faf526901b4abfb8a2a3a2dbb6a3d8f4776620e46c411299b1f4873c257800105c73dba020921c3775423713d08781bb1e28f17815b096babdf9d73b0f008250efe0a98ca1cad2d21702573b64d6ac94c7c5097349b2aed93420552b64d0db872c9c3daf37d8a203d285022e1261016207c8b3d00e9ed61309bc474de79d3b539e4809f9fc7fc5ee0972723d98e3ca426657e882d182b86939669267cfbd6891eca5eb7739cb2494c8dcaee745d241dedffbc9d4b98a4b4e3c9f49884dc963812addfae226371ef047f59d95d4aef899b992203d5d7724b19638472c34a197ebe03a27d160f123e47cc79da559dce52783decaf3f1490fc30e8263525b474e835f80ecb7ba3c5943222b4ee0e973d5291d8aac57eac7a66e51721335d3907fa7df9e7e7da52e1d006527a7177e4e1a925e7013557489b7332c2836e39fb3431b9d5f1ceb7e52a3fb2acc10dd0d9e98cff6dda9a84c634c9698e22da9f71a9c676956dbe6e74ee97d8a0428a3358a2748af79501ba5043b85e1845f0fa760781a456a75e6d66767ec0c184274fd1bd9a7ef0bc4bfbe29e48f15ab39622e849e534be2bbda0fb4f9f0a4154bd45bc73f065b898e4d0568f26f68d37b9fa40cbfc02ff27afe30f3855ce7605e7c0a9f7e77e364ecc6224c5597ceeed5a419f8221d46225a7785a83d3fedefbe1a232edde5f8960c74ea92c801c8f6ac9962a7e7ac0bd23efc9deb4dc32c5ad46dcdea36fdb952a82503a3d76769a5f725dc8d2386862c766e51dcc1391cf06fcd4b6978bf6624f2238c3b5b9a5f1edf85867d638503081982a6ef6cae373fc8ecdd3d3533cd5489844798d3642285b6f7eb4aea52f78ae27ada40ca3841510e08b651aa3feb9b501702796885696935eca99b55cd44511fb7bfbca18acb075dc0a0b9e0e38ae950eba2a7341b928572cb5fe0d1acc3f2ab6438db5b6133b52b579eceeba54decfb35b83ed721aae6a723e9e5163dfb506cd5e729365cf8ef19c706af7f3c925c9967dd490621fc9a1947c8ee4a14c88bdd77768dedfe546898a4714c4f739092ddcf57f78583deb844f00b13ad052412a2a631f6be48081627631b307daf576ec47eb53f9dfcac6826d214d8b0f38aa5bee277f1f320458d6447fa7ce0d81e0b0bd2662416e1e6a2eecb5ce68a2c91516ccc48c95a7078ec713348e5e84dbc0af4f0a6dcefc0dbcdbc93ee9a2e29c6150f1504edde47ca74ac7d8d415b03592fc0c564c4c1f457b20afb16701d5850532d59f8065943ec5309418a387e8f0acb30aa219d0135f2fe2cc3ac67311a93548012f4d072f2d215b78717bdf049011bf7350aa2d42885b9e1f374a00a988e6220a32cf699a5541642116e58cba9cf00f9c9314554451bdcd04456ca3ce447aeba755276085c42d4d39834b7ce1e411e7f6a84fd374dce1c1febe0647980ed79a4b99e20d285f564ed7f55fd325ada484302a58deb42b874a0caa2ead4dd8d89aa1c81e098905b12d8bb517d28131e7db30aba26ee724d4c102e7a2c253778edcd04afa44a4858484e5acf971a173c6d12dead4ae6c198d5c13fde26893f8c992a3bd1959cb7330442ae56570f9f1ce4fe44bb228dba1ea609c0e2eeeff0f6ab5dc99a79a4c3280160aebca68795106715facbaa3b5c7277c49902074ce52d414c6a210b961ea823e90118ef6f6ec5394cb0a0470fdc759b8465ffd4475771df69eb4ef8df61d02cf3829c0eed9a41dd25f4158611f591f8f7b803b8da6f1faf6100a39ccd683a4aacc4235b2831830ccca9af797dc033f9ae0a10d37b750244fc6c8885b1182148a938bf904dd535d0e15cbd647fd83273035d40b823451c5581539aecd05ff9df528ede8cafd2b5e59a7dac9e6a1cb0e434378fac8fb4a086f52e5c2285983faed929fe841c49a73c8f1da18317a0f9843f0cdd2fe451f28458e1db2d04f08a6d5ade68c63fe68b48f3d34b44ff4d7ae4a4de8a869f439bb511301d02a4929b480612de5f0f69e1d151dd5c845a1a2d080d67ac1b902529600eb7849e77f7dabbd078235b79f4dd6db77bcb75fdf29660bc8c16a4dbd9f609f96e9beb397e3635c604947517599abd47599b1ec95359de45cf039c02fc47c2ca9ace91e42f28b2abd6f02d1332403228a4dac1992febec22cc1afdb77e452a231a7ddb1b09407366081894ee2ae3be1fb14f9f82ef87b8e956831a52ce818e83f77c8f6f100221c6b3bce70d6f813ccdca43a51ba7dd91def8d6a96bf5095dfae7b394bbcd89402ec353aaeaf2ef423bb4ba904c89029d1af9417fa594f6855f465aff28c6d777709a8a120ae09d4ef426fc9ce2d13ce09b192e9e199610b5466dad8c82798c70b62c4eaf1ec5a049825c674e3ad9bebad29ba00e69eadca562b4b5715e2698287d2bba5aa92d0458df530bb9d8ce705a3371c5d5d880faa9d83d227316009a1043d7a9757056d720e8f0c139a4bc48c027f9137a1c0d3fff417318e33ec7c86343a955883f20f4f6bdb8f46b7b551f87b3993c04fcc6ad851a333fb0462892312328be0300be5f581a7d098b1a2cc1dd6d9ff898eab301c9ae2dbed850bd7d44019a161b574e3db71a37d06ddb2edb9977666ddcd34945f493ae5dc5836847ff9a787033e2160fe2ae417d90664279913bbd4156ed5fa47d70dac2e28b6cf079ecc4b1d2f76175c2a1cce7228dfcde7b75954135ce3793664280b3a3d68a3312a24968d5b46cd1f6d65380e902ca730d752d174cca9279c76db46fb7ed0b1ad323581324356164e88692c78111311c4032c43b6ba466ef63a6d41fcdefc24b189ceeb92048f2c5e5b206ebff385b7139d55dc1786159f92d09b466ca15e4e94048e22f919300c7127de01ec95d75d4d57dd1cea6fb7d804a9aabd7c40d4dca9c8e2dbaab96f39fe7de5f37a1c6830f384f58e6feb4533d46548522bfb3a21c64b42dcd11d9dd763a8a3d3cb111080e2bce67a06bfd9b741bafc380c29e91000c41c78355eb18a47c3d1a08d96e39ff3edb5ca7fc2a9e6b723b5c307ed2ba03b5284e31bf7fd457aa9e836eb5898f9aa82342cdf6a41d93a3664258b227ae25aef560e09e944d8afae81055c2301ee271136937b1f277b7dd878a2ec9c9b3f2c417a09954b9c12144ebff38fd67416c5a6854986002ff94c40afe858e12ed490a246a96b0363729b08da4e5af2f00b0d47a17ccee46991713fd9b09ce2fabde796128dd115deaa8d4174950c3ac228056d609336aa80fb53a28da927ec3b2ec194912b283e22ff70a5a0c527a1b5b3c203e04868b186ad9269ed4638f9123e4415534410e78e5c46a41feb215eef167117c204e4c76d020822f33f61ff6a7a91b544b30c4021d42ae7be8e3fd15678c9467dd336b86f24105d3d8a2ec1c76d009c8ae85be0e179bd17cafc930f8109f00ba0d7da7e50bd23b7dbd1bf9fdb87d5b0941b1e34af8274ba7c74e871062b6209ce820dfe70ec6a6d373e4bf7387566d",
+ "tests": [
+ {
+ "tcId": 58,
+ "comment": "rej_ntt_poly (sample_uniform) requires 5 SHAKE blocks",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "af2040f9d90996985b6efd6a6ef90c465369a9ab95efb537c85f137d528d26ab7a4d5035efe5f734341775263e3b117d2f2c5544b0ffffe4f548c87846deb2d34af083bbb07e3c358fc78bfac471259d87043094833956eb4d9b23d1acbc7efdde13ebc883290783e33d743bb10a13bc8eb2a2e6ed552d8a1780055b36fcf0987b032487ea60b8f51158016982cc2aa49318284d5e600eb36c405d62ac7d6c32f88b1f5d41f5f8d5bbe3393033c51a95876c0f9c2124d6d87b98634a29269be830da07725cc8621b64480492af23c67aad018e44c2b957930e36171d1ef3cd6311cca9ad14e1c58a7d6ac6d2cee66319faab0b0c92533a1bb98eb909f5feae67c16e4e29da9be03daf0092cb2ace5a4316f2a6781109c19c19e2d38631e0aaf91aa27c8b82c8def955152bcfb7b2df0b2ff0b04105dfa209b3d9019444685054d439ae117c6f50faceefa46dfca10bda1213237f898143d42c9f83bcc9672797d4a03094431567983c1d8e816011bc4e7190e3f6555fe9bf77ad61b8415b52d2a36c62e5f9368b6fc0e7dc5d82c682d46cd189abe12d933a783fe9f4b46f87b705d0c90386efd551829fa995942af1bdbec31cbcef50fbdbb7e76615dbbfa9ad581b59aef0c922a69de190c16e5c4b0a3d6f0141f58aca58965e100b50163beb67f9c57ae8e79ac5aabb24bcd3600015cc65cec80784c9d05874610350cd01ac43976276f0ca6163d99d495f034cbdb9e39d24efc1ac9013dcf380ba1cb676a6af8282473868e61ff4f0b13aa2325aca910dcd767030b2cc5e44fa7e17c32786ce7edc9a432db81d6654830a16b3b4e37c12617898d5d2b634fcf250ffe545f4da5a289d470dd4ebac4362ec08ef04a31e8021a8c760fbff797773058ed11d71511b5d95f0019240743ab44527db4d613c2759357c291e7679d06c930ee435ae77f4f2d13c4e767b7adcc32e373efdea94fb70d6aaf96e64b28ed4fbca86ff1bd2656e392c8c4707e3ac6ad8b0c85c2ed19328b942f3af5eea89a7493ee8cfdf86fad43084ba7582fec07c1bb5649d5177a312d1b70f7930dc1ddad11396e5e315ac7f1d3047887a3a40a85d809f72b2661786e311928a6e61ce7854ff854daa170b9c406feebf3dc33656c9153b9f5e44aacc084bbec9c06e79a103f2544d6f5ef06e0f525687a10f48f9f08dff7d6f5b467c287fbe15b33341e3e44f8b27a87342f40dfbd20ebc214eee221115abe3f8620eaa424a59c7fa038d8969a5a95a6476e65820afcee40062e14d498544a3ff95e308afc39d241e1d8e403fb0570e2f6242771f20de2c792b6bd2996e1214297b1fa72c6843cb4f7d0196f9a40716385a3a5344f046e33e2fb089ea1f08340ccb563373795aa3e2fef7a8509d7ca174a5b6cbba90a56d743078bf9dc37fb7887187d6b201c5b6cf0638fc3e36d1db8611c468c04447a4b670a5cb55d9178a3ad2cd7817fc01dc8063161a1f9d460c831208691f30aaa4b365f074c601c6ac29056b7dc2279ae6e6467a7c2476f3fc041dab076fcfd5a9681511283cc1dc59ecd5472c99d8b8e87e5392eab30d25eeb40cfe4b7e3158d307b690706c59eaeeba9bcc6cf3e7081847789cdb83c55a3fd77ad8952566cbe6afee69a11774f10d9272ac6351b2c086a7fba26bd36ed0ba252d7b42943185235180beafb9154c93b5f87fb7561b3cb0aa3964a5d0aa4925ed09c90c0c18798091ba0aec63e3f48bca675978050f201aabfb34cc6f0497b773c2daed9178bdec949f61fa267a83dc796af329bc15d38994135fa2c97d0f805807105123a76b86cf9c82b8879450e942574a5fe2868e7131fb66be7221b4fbd25e6e19004533b6a3d12e91b058eae18318d0a5f324b0f9528a3459737af6e25e8d2179856ef0bd9f9de025e6afaee1ec49e8c98f9b96981af3cb1ca1b1740fb6dd86d48f7c6ae9e8541dccddb505a4765dc5cfc2e3caef4381a237ca2167f263f3c5f2db11eafc52b21a98d9c54619ee5c24cde5dfc8cecbe5bd086ea2a5d6616ccb47c0451b24019373edbca55bf23d1c365ad361a21a1928d72b4c8061d5cf88a956eeea3fcbc80609ca751b5a9004d887102e93867c4ad70f09105a666c3b9a575af0eef9799df422896ef11ad1281ec0032877520162bd52d59351e70fca453e4f2c85b23fc154c2a294b1d5ec0019c7754215efbabcf82c1e7f94d5873c0a4e3ff121e64c85b83bbe94bef011d9a9c8ce9ca692f177f7d0e3f499d684924dca2a653b90b9ffd485bbe88ed87237abc4ca6b55c3b71850a34dcfeb1d3efec5c83074bfd9630c308b8d94ddcf79fc813380ea7426fb10b2b461281bc38549a38f280bb2a3032c67fcce24fddacd8683a1798bc6cfd6add30c7b2dc9e04720f5149e1b1a6a39b4ec08a0c093a67987b7dc320bbe43f05cdafc74759b87cff4731af336445993f685ef5dfa3db636b830ee33bb45c5f51bea8ee5cb9ed28a4176140eafa2c0ef593b40738b9857f8ebfef3d2930387a11dd5daa630b8fb5744fcac692891e8171f3ff0a08ba5ac81cae0cd62a364f1b51caa4aab3085acb56a47cd75eafe860e92a6938a9205418e39bbaed6cd6fa9576906e17c57682b755314f437dfe1efd5c56f6782f2a8fcd489f4fdba794b452c7ffb45b9325beb72af3e2e77f1a3a816b1e5fd25d5e3864d90197dedda58375ec4d78c7302e787902dcbeb173f43da248ceaa8dffd1ffdd23324c4dcb1346332a70dcd08090954afdbd27cd3932e9acc2e9c889c02826bef84d077ff066ea06261601a9a06e5f3e8b9732821b56dbb2b0fe476ebcedc4142b9c8255c2fdfba17fa5c7e0ddd976dd0c9e5b1420aacbe03e34d8846e8bf17f79cb82038187db482957e6c054d33ef5b63937b7f64506dc384a99e47ed4eca348fb5b62a3639b84897f17b782b02131688a75435caecbcf7cc0bf0a88615ecd2ab7af31a0cb5ac6c3c5e3c4696e4b10b9c9f4e3323cb1817b2e175dff035fa36714cf95f8e151fe712bc38939bcd47b50fb202093d297081579637fa97dc8a0690efa7c2ea071ba4d4e1896387115001276d3cd28fb6217bf2ade25f2a3eabb81d08a68bce79a58ba971dc1feeaf248d47bb20dc93a68e3f32d19658cd3f1b7bb2c5d798d73025174ae8caa6d8a25f1e0e3bcdbd90a2794ef9ae032005b6b95b701c6122693a12ef18dce8609f3a48c32cf79a0d04f94bb4a6b74454e09c0f253539b185a7d5793e05cbad6a7ddd79d80d4e48934bc2e610f7fa49640d2536a0409aee11bc62b2f4e8070ccc59038dbfb7aa2b17acfa7c841b7d943c82d6efef90dc9349a3bcccb905dad4a3beee4e867581cfe8c31bb2c2f3f187a408d16de3737865954369b41c9459fd7cb3b7ef86d3cf5cb1c3ac9b90ba78049ed35470997f15dfb8c2e02033c21b8f5bad83b842004b43de82ff88df93f2687e67467990b61511af8119c0ceb6ba255a22c7479dc06036797a27067790e3836c481cf904f9f6b484f67561aa3ce9661f95d8f67a5028b527d7d530aa1b92c6a6f344b9de8286bdc755d1e973884e402cf37a3294a873a93229689f9c5018aa151d53e4fa78aede7ebf374259ab131d9695c69232bd2c14aeeea9c1b53635b733965f391d1b1d313d0e2ff7628398011fc95d52b07cb25f8404b6fbca17362422235e119c03a1db85a6d27657822b17adf9d591dea9848e748b6ce07a28d830059700d64d47490bac5a94010618ca03c1654e81a01c4a6d93d86115f16d620fa63da2a7605ce50f97e56a020bcf22e716cbd76354e9896a264cadff5d367de89d8bb48999d6164bd8f7648e4ac0bb5f2652336e72b445f6f0232920d7a00eaa25dd6a0d46d8883f48d2b2c10b72036c6904d4d5d093f913ce625922a146f4e7c908b21a8b8939dfdcb275b5fe5b52ab1f446a4fd2a4fcf5a4bb1d0c9c3c550e6f5b0aadc4d411e87eacd585ebb8c4637f9c185cdf7b282c387ad49f8bf0b3f8c2fd63f9336c0c8c4c708b9d3fff0598cf134a9d205914cdbb3802f0eb5fbbbbde18e0fa2ab4bd3ff2005f04dbdf80ca25e08e408055ec2abd1a345845311dd8dc10c3ab128c7389bf2a9f06184651fe332201020f711bfbad269ba8c9dd749ba727169c6662e319ef0013c97c9980e1e0cd275e6bc51316f0f83a57d784c639734ede4fec26e670976415b7dce3eb197540088817bebe81f361dc992d16151b8a38b88ae3fe0fbd080a1264a4a73526b01e34495e411aacdf4ac1c893f668bd095ff65643d42783a758f8f712b906f20f284d89f6efa1453ae06dd0357297214b9ce7944af4f40e3ab8817b56f1bd3fcadb9d9f366d34271fc3045f05ed2eab57aed068ad6110050e64adfa066923baa566d9c2898b2c53bf378aafd2b21feb94873fa2e65496f69f6f94321590b43f409947e996697bd93f03e3337286110a262310e0072bf62355b84099106885a05cc1bf929a42125b337a7ced1ee2ce0f7be5a68f82021027761c3bcfe134e5b554d7f08a709a180d779152f7c85eee0af248d43631edbb845a1b4a27b09cf8c69fb1694ac69060562114daccc9ce702f6eee20398c04434471777b9fee2067a5aab0c160c3cf3d5a71797eb3de000712161a3150708eb7c7d0e8101f343999bcc8d8ec000000000000000000080e1118252e",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 59,
+ "comment": "expand_a requires 150 SHAKE blocks",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "af2040f9d90996985b6efd6a6ef90c465369a9ab95efb537c85f137d528d26ab7a4d5035efe5f734341775263e3b117d2f2c5544b0ffffe4f548c87846deb2d34af083bbb07e3c358fc78bfac471259d87043094833956eb4d9b23d1acbc7efdde13ebc883290783e33d743bb10a13bc8eb2a2e6ed552d8a1780055b36fcf0987b032487ea60b8f51158016982cc2aa49318284d5e600eb36c405d62ac7d6c32f88b1f5d41f5f8d5bbe3393033c51a95876c0f9c2124d6d87b98634a29269be830da07725cc8621b64480492af23c67aad018e44c2b957930e36171d1ef3cd6311cca9ad14e1c58a7d6ac6d2cee66319faab0b0c92533a1bb98eb909f5feae67c16e4e29da9be03daf0092cb2ace5a4316f2a6781109c19c19e2d38631e0aaf91aa27c8b82c8def955152bcfb7b2df0b2ff0b04105dfa209b3d9019444685054d439ae117c6f50faceefa46dfca10bda1213237f898143d42c9f83bcc9672797d4a03094431567983c1d8e816011bc4e7190e3f6555fe9bf77ad61b8415b52d2a36c62e5f9368b6fc0e7dc5d82c682d46cd189abe12d933a783fe9f4b46f87b705d0c90386efd551829fa995942af1bdbec31cbcef50fbdbb7e76615dbbfa9ad581b59aef0c922a69de190c16e5c4b0a3d6f0141f58aca58965e100b50163beb67f9c57ae8e79ac5aabb24bcd3600015cc65cec80784c9d05874610350cd01ac43976276f0ca6163d99d495f034cbdb9e39d24efc1ac9013dcf380ba1cb676a6af8282473868e61ff4f0b13aa2325aca910dcd767030b2cc5e44fa7e17c32786ce7edc9a432db81d6654830a16b3b4e37c12617898d5d2b634fcf250ffe545f4da5a289d470dd4ebac4362ec08ef04a31e8021a8c760fbff797773058ed11d71511b5d95f0019240743ab44527db4d613c2759357c291e7679d06c930ee435ae77f4f2d13c4e767b7adcc32e373efdea94fb70d6aaf96e64b28ed4fbca86ff1bd2656e392c8c4707e3ac6ad8b0c85c2ed19328b942f3af5eea89a7493ee8cfdf86fad43084ba7582fec07c1bb5649d5177a312d1b70f7930dc1ddad11396e5e315ac7f1d3047887a3a40a85d809f72b2661786e311928a6e61ce7854ff854daa170b9c406feebf3dc33656c9153b9f5e44aacc084bbec9c06e79a103f2544d6f5ef06e0f525687a10f48f9f08dff7d6f5b467c287fbe15b33341e3e44f8b27a87342f40dfbd20ebc214eee221115abe3f8620eaa424a59c7fa038d8969a5a95a6476e65820afcee40062e14d498544a3ff95e308afc39d241e1d8e403fb0570e2f6242771f20de2c792b6bd2996e1214297b1fa72c6843cb4f7d0196f9a40716385a3a5344f046e33e2fb089ea1f08340ccb563373795aa3e2fef7a8509d7ca174a5b6cbba90a56d743078bf9dc37fb7887187d6b201c5b6cf0638fc3e36d1db8611c468c04447a4b670a5cb55d9178a3ad2cd7817fc01dc8063161a1f9d460c831208691f30aaa4b365f074c601c6ac29056b7dc2279ae6e6467a7c2476f3fc041dab076fcfd5a9681511283cc1dc59ecd5472c99d8b8e87e5392eab30d25eeb40cfe4b7e3158d307b690706c59eaeeba9bcc6cf3e7081847789cdb83c55a3fd77ad8952566cbe6afee69a11774f10d9272ac6351b2c086a7fba26bd36ed0ba252d7b42943185235180beafb9154c93b5f87fb7561b3cb0aa3964a5d0aa4925ed09c90c0c18798091ba0aec63e3f48bca675978050f201aabfb34cc6f0497b773c2daed9178bdec949f61fa267a83dc796af329bc15d38994135fa2c97d0f805807105123a76b86cf9c82b8879450e942574a5fe2868e7131fb66be7221b4fbd25e6e19004533b6a3d12e91b058eae18318d0a5f324b0f9528a3459737af6e25e8d2179856ef0bd9f9de025e6afaee1ec49e8c98f9b96981af3cb1ca1b1740fb6dd86d48f7c6ae9e8541dccddb505a4765dc5cfc2e3caef4381a237ca2167f263f3c5f2db11eafc52b21a98d9c54619ee5c24cde5dfc8cecbe5bd086ea2a5d6616ccb47c0451b24019373edbca55bf23d1c365ad361a21a1928d72b4c8061d5cf88a956eeea3fcbc80609ca751b5a9004d887102e93867c4ad70f09105a666c3b9a575af0eef9799df422896ef11ad1281ec0032877520162bd52d59351e70fca453e4f2c85b23fc154c2a294b1d5ec0019c7754215efbabcf82c1e7f94d5873c0a4e3ff121e64c85b83bbe94bef011d9a9c8ce9ca692f177f7d0e3f499d684924dca2a653b90b9ffd485bbe88ed87237abc4ca6b55c3b71850a34dcfeb1d3efec5c83074bfd9630c308b8d94ddcf79fc813380ea7426fb10b2b461281bc38549a38f280bb2a3032c67fcce24fddacd8683a1798bc6cfd6add30c7b2dc9e04720f5149e1b1a6a39b4ec08a0c093a67987b7dc320bbe43f05cdafc74759b87cff4731af336445993f685ef5dfa3db636b830ee33bb45c5f51bea8ee5cb9ed28a4176140eafa2c0ef593b40738b9857f8ebfef3d2930387a11dd5daa630b8fb5744fcac692891e8171f3ff0a08ba5ac81cae0cd62a364f1b51caa4aab3085acb56a47cd75eafe860e92a6938a9205418e39bbaed6cd6fa9576906e17c57682b755314f437dfe1efd5c56f6782f2a8fcd489f4fdba794b452c7ffb45b9325beb72af3e2e77f1a3a816b1e5fd25d5e3864d90197dedda58375ec4d78c7302e787902dcbeb173f43da248ceaa8dffd1ffdd23324c4dcb1346332a70dcd08090954afdbd27cd3932e9acc2e9c889c02826bef84d077ff066ea06261601a9a06e5f3e8b9732821b56dbb2b0fe476ebcedc4142b9c8255c2fdfba17fa5c7e0ddd976dd0c9e5b1420aacbe03e34d8846e8bf17f79cb82038187db482957e6c054d33ef5b63937b7f64506dc384a99e47ed4eca348fb5b62a3639b84897f17b782b02131688a75435caecbcf7cc0bf0a88615ecd2ab7af31a0cb5ac6c3c5e3c4696e4b10b9c9f4e3323cb1817b2e175dff035fa36714cf95f8e151fe712bc38939bcd47b50fb202093d297081579637fa97dc8a0690efa7c2ea071ba4d4e1896387115001276d3cd28fb6217bf2ade25f2a3eabb81d08a68bce79a58ba971dc1feeaf248d47bb20dc93a68e3f32d19658cd3f1b7bb2c5d798d73025174ae8caa6d8a25f1e0e3bcdbd90a2794ef9ae032005b6b95b701c6122693a12ef18dce8609f3a48c32cf79a0d04f94bb4a6b74454e09c0f253539b185a7d5793e05cbad6a7ddd79d80d4e48934bc2e610f7fa49640d2536a0409aee11bc62b2f4e8070ccc59038dbfb7aa2b17acfa7c841b7d943c82d6efef90dc9349a3bcccb905dad4a3beee4e867581cfe8c31bb2c2f3f187a408d16de3737865954369b41c9459fd7cb3b7ef86d3cf5cb1c3ac9b90ba78049ed35470997f15dfb8c2e02033c21b8f5bad83b842004b43de82ff88df93f2687e67467990b61511af8119c0ceb6ba255a22c7479dc06036797a27067790e3836c481cf904f9f6b484f67561aa3ce9661f95d8f67a5028b527d7d530aa1b92c6a6f344b9de8286bdc755d1e973884e402cf37a3294a873a93229689f9c5018aa151d53e4fa78aede7ebf374259ab131d9695c69232bd2c14aeeea9c1b53635b733965f391d1b1d313d0e2ff7628398011fc95d52b07cb25f8404b6fbca17362422235e119c03a1db85a6d27657822b17adf9d591dea9848e748b6ce07a28d830059700d64d47490bac5a94010618ca03c1654e81a01c4a6d93d86115f16d620fa63da2a7605ce50f97e56a020bcf22e716cbd76354e9896a264cadff5d367de89d8bb48999d6164bd8f7648e4ac0bb5f2652336e72b445f6f0232920d7a00eaa25dd6a0d46d8883f48d2b2c10b72036c6904d4d5d093f913ce625922a146f4e7c908b21a8b8939dfdcb275b5fe5b52ab1f446a4fd2a4fcf5a4bb1d0c9c3c550e6f5b0aadc4d411e87eacd585ebb8c4637f9c185cdf7b282c387ad49f8bf0b3f8c2fd63f9336c0c8c4c708b9d3fff0598cf134a9d205914cdbb3802f0eb5fbbbbde18e0fa2ab4bd3ff2005f04dbdf80ca25e08e408055ec2abd1a345845311dd8dc10c3ab128c7389bf2a9f06184651fe332201020f711bfbad269ba8c9dd749ba727169c6662e319ef0013c97c9980e1e0cd275e6bc51316f0f83a57d784c639734ede4fec26e670976415b7dce3eb197540088817bebe81f361dc992d16151b8a38b88ae3fe0fbd080a1264a4a73526b01e34495e411aacdf4ac1c893f668bd095ff65643d42783a758f8f712b906f20f284d89f6efa1453ae06dd0357297214b9ce7944af4f40e3ab8817b56f1bd3fcadb9d9f366d34271fc3045f05ed2eab57aed068ad6110050e64adfa066923baa566d9c2898b2c53bf378aafd2b21feb94873fa2e65496f69f6f94321590b43f409947e996697bd93f03e3337286110a262310e0072bf62355b84099106885a05cc1bf929a42125b337a7ced1ee2ce0f7be5a68f82021027761c3bcfe134e5b554d7f08a709a180d779152f7c85eee0af248d43631edbb845a1b4a27b09cf8c69fb1694ac69060562114daccc9ce702f6eee20398c04434471777b9fee2067a5aab0c160c3cf3d5a71797eb3de000712161a3150708eb7c7d0e8101f343999bcc8d8ec000000000000000000080e1118252e",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ }
+ ]
+ },
+ {
+ "type": "MlDsaSign",
+ "privateKey": "e5824f0943ad27a943fe7b1d52b8a42f689fedd9c6b8df15a4d9a6484b06c9ccb4260dd40421adc330ecae5aa86fd8ed07c64a4903e6cb7fc1b4430759eb7f08a23b9b392a35a7817c43ea040690a2ba94bcad04be05132c7155e16fdd7d3ae96af2975463450f3b5f4c5c671914ce075a3ed6eb9d669cba93d0c7152e6373d451012815258774802104818782032181222576110521372058845308173772760420548716607536151376324557213333320701143807124234027545467765418585561717106604145250036868846674617220101203538835574378688882612050484617285663033361651535522756311478713444875812020762661563706776873503358153427214746435060281783627378658740724533560027763043823701568230442858284685805884466407024528223701488288403860405178848857062181260033548467183643180238866388770480515787745237658463668810313300337815668561582430451566678454832064558021127141758760165276170285342520372530261026137120353108485711306236358680724750770322341778007017220011815023320811340032543285500252364331381780803675717316281121746072038313618276133562372568824204448650813102122018147735054273110074766438864023073853035407723571450356068521147441856506184266043481201428012345627750231542661547343634888641840123782424672326541737703827342735283850341734244083825134768877671555212058115626177037543077055707520322084114412451538635812786042776323362773486100062013562256858716773468017638567435020345888566385304270368342657731083162623256021420564778813447786577344326274634778624737477770003408881580313508628038204831801677805308246075757672020044670155282082108254760180081533442680483812420248330816540871242422282510047233125106843517454883476106030514858707328106202714420116344002163383705815080084864810478317101855175063487011314744438218270062001541548383531636644745465620521667827673304162854773628882278436815736344402468761111613623871223626323865573113057668751875051465662141685372220684087435713022442845156563625332614265834643341467081861431274480243783355808774268150803341126823122835751221866401323626116840603048774354426586880407350801871768353452384365871466736877372608505067357244522452772553183243775610742655510145221276201880137332235881040242852254842422002411737185100802763224434760276460423710704761242257371274067400223611230782152081027588542408670476357531348740475413127810203225531363412764242337750350173134268075738452014862572850581786376630317813714473601611273228312028488531166030868464303711217355615287856305732164238488161878357547553263243435110860353606057084038724613605028025848603345568873032411303164237185267041565817400712103460304211230816851002145563020836871024328312316010363282055514523574120777717734748437742632702830311583303624402381684532214300781457014177534883678877730856140683647670662843446801884547600405422222120661186262112614272656737246704238338011438426876273706208073031800277416668884738515700452768551267207043053748178455125050277115166564471838446324582510438240714187482806776016174500007300810585327550010780642271335316272404746617421171204347582182412887873472305235308361845780026168403105754147238756635505075036437515102733383017761447680861870406871422873075655657063733314f9f8efbe9792f57bebeedc85431c414854353f4d58d067b001fea0217a44d2e932047507d0323786274544eb8d5e4193066bd2c72d618e17962355ee1cd81109df26107daaa03f7da48bcd43408ded528e1dab4a28ce5b5264293784dd6490eef07be4e28063350906400d6254fe0f9e3c66549fa2728afd1b5e0386567450c5d1914aeea01024237db89fe746a9e317620cd38eed41aab5f701bec916baf97860ea93b3a2502a756567d65b45f67ede699d9b2c3759b66595efaa8a9fb6f63b833e0eb1e6fdc01f362a754301a4c0f3606789185db0972b40b4fe715d9da8719e3695b6cb22599d35aa8964877f30d8eb88320cc897dca1ccb9f905233df81f07a81e74fabecc5636a567dc17ed89a0cec013f8bce3d5e8f5471913e8b8732dd74def638a9e1b16102aa31f1f7266743d07610c9a9c533dfc6f12ab70d9c2d5315933283152cf23dd17d0f96c4ab926a389f6574ccdd0ec8c2c08b049e4bacb068b08ac8126f1028a4c3ccbf4a35f10c9a57cf8be2048b567bffba8c5b80b1035984da19d4ad19640eeeae659872716c9f7cbaa89342c20883744c28e4d56ca306f2b9debed64c5743965708e646c95b09fa1e9b06dbb4a5be1ab1c837e828011eb51995a2105f59177c92bcdfed577f77c6a59f02f6dc5d3d7625a958e09384b4633221c524a58bbd3ddf134e8e4efa36dc9956a8429a021725e12393726ba35d7ad0825ca2c30ee6fbd1537428cbc31b250fb30111e2c4c81cd9d2796b4bd018ecc9335a85f50c620c694a51c408007f6a6aadcc7f43ab905e5ab00c782c35a0dae30602c6d34869468347e462a896a35b768e39c1fc3209225d4b162c3e42879919a71d1c2833b1549f555ac7ddc246c0a88ed5b52b6793d2dc9697018d4c54dbfde90d436c01b33d8a066315592a324a962447fd4e90a8e00ff69a819c5d0b41c954f6a41e5483aecffaf697b05312f3556596fdd5378df17200a39da32491db60882160ef97ce8410a9e93a5a1a26b1effcdbe78647e510503deb01f4bd6a8c16f922884341ebe74ad349f9541a58ed9af994ffab99a21d5ef869135f58a5fbcbdb7cdd0f23b65adfeb80cb3f73a76fa24ba1cb49e72c402e229deb40ce06cec72cd868200f2aa1087f97364f4642b8eeeb803a0d954c0faa98275ecb2959e56ef06f34a78aecdc1d28d996d859bbb3e74f6dd8534b3e2cfbbfa8243153e3c34288e6a81b8733f3de28f4602288cc44661f16ea50ceab3a856768f2d8f01f3bc937b815b28111c3e3e9b25fc40334f77b6f792fbf376c8fa07dafe49ce34f860edda2466cfdeba5c924a9e338bc3241e4ed5186a6d5c20ab6e138ade20e36dd704fd4ef552addfbff8548c6fcb37bff1a704df1196c411fdd023e7884b35d650baa32fb0a1c3f07b16cb131989748dc5bad23c97dc7ef2f55009bc14de1ae5ced75347c565f870d35dbfcf59e6d951b6097d644b4692d5b50b3ae1c1c6e912c4279860c4449420770aab6e3da9c0873c086cb97eefbb563f76ed441ce6439e3d87791d124a27c39f0ed0d2c6a8bfc5a03c86729e8ab52ce5b9572efce4b1cb4d581ebf5c4158ec8fb053e5e409d40f35abb914cc96ead3ffcb4180fbe86b3ffd6aa0f828def3b68c60e8e2d4c2631296089cb619a00cea98c81b2583a0e7e92c3055a9b9b0f699e7ddafafc8ddb078ee65b8492e343ab382cdae6581180b39a057b77bbba9f44ec740934a7d446d147623dc1f2f2ab27f1374147cbd765db2c2adddae0bf850ab31b5d1133ec4d6774f05fbfd6f766f6b12b1f201866474ca80fe46bf6e7e3122f302271f57ca2f14570cb8d0662592723d319fd7352719fa336ac7d8782e59230030f22c30d56a7fb1b361643111c862fbb5bc852a5ef811f7e8f3227e4807edb6276732c4348e39067e5df837828392c24bf36fd4dc1036cc8b06fcfebb0d4e73f2d4e89b1e32fea207ee01697e4ee62a02ac655b67c97487c36d4c2ca654c248be72ab71a65fb12f08fc71000e6d0e650cac3a1bcf07b204ba8f357029866760acbdf5b42ee5690d39b3b2c1e7c1a2bbc7dbb70fce180ab62fd62aff6309325f6069a534fba987ab2e039a0050472d5924f268007f0bdff48bdbde8725398c01b7587c0e082213a4c30a9fc8398b8af32ea30a89fe6bd436a795729f8a1c3389837785b0b46f7e21a4376ad6e7fa8d2016a79fe195cc544a4bd3661d49c7213b7b0832e53d2c0e3aaa8b33e2aa0076a4e107adaebfe64c04ce84fce23c0926364b2d1cfcdffb16539c9f8667086cdbb23e28588b9ab32b69bd989baf33707151b85db559a1baef3ea8bf0cbc20053afd6a1ec63cfa2217799ae0ff2099914fe4d3e2cf05797ab870acabd02bce7b93685246784f8ebf1065eefca1336e83fea5f2f0c58b3ea0aa2e5e46ee852a5ad6bfcb37447a386d2ed84e696c61ccf3eb373801c91f49973ef5c935b41a236c85537faa40716d68ae85e5362391d8ae2b10a5151272427551830c9a66c4f0958952d85e43f3fba2c746bdcd6dff7c9f8c0c732286d3922b2984152c83698767df04d4465b019c52e4d4568044e82a6d9d20e00ede010426ba3588b2b7e5c1d45ac48151743c6f274fe5888e12ad42faf7b796b04bc9918b751226d89f8ee430ee6feceeabe2bbc428cf2f9923269ae8a6c2c6a207105074f9cbff53cd307325bab0351963e49e1d6c6ff2bebde85c70e2569af5eec09db157c561210c07c94d291d137132fbaf3da1225ebad7bc7ea02420676a76b0d63227ec5e3ef5162391ef6ecad28012f5b89ddf96a8bb53315fbacfd408d99b1d927e1bf4cedefd8f6ea85c89eaefeb5ee387e842b7951cf2935d195556f2ab48756e8a77b0cd2f376d4f4b8a2afa724b56bc15aa60053d1e3df77f1ccfa4771b753fdc448d646e313b09dd3fe31f8fe15cbed8f8ab84b75389257494bea82cce6b9f41ebf0b9eaa8e9e5461e6b3a24d346c188d6b087949b9c526c98f2f314ce9fc0aeab8a0686b58625342635474ed54e52c73585dc06f360f1f27e61494e00001cba5da933316676d096b55a5c089388f05d404302a76f8ef124df24b243cfc911fac002794af0d32c698fc7cb58804444a3e7b4c6cbd608ff1de58649f0f62e28e9dd4c23eefcf97fff133a7ded92027ced2fb296535ba930b4048da555747b7535373980008183b5c37d6d47fe174573a015e91f94ac4d84ca237b6f85952065dc30eacbcb3da5db071ee2c0bab09d2ecd30a5b7af7dc1ce099973c2c36024a9bd0c1d2b4761b4fad24db8aa65710ccd09438bddfc50507644afbd0a1cda31c997cbadc9f4eb1b65c3ee7898377fc9411ef4c5091988801f09c17e20db8dcd47fc71f52d84d8285359f17584c1c3cee0bc7eec378c22ed7bc7275bb560fd74d076cfb7ee0de5d3a5deea24c1f4abf7ec4ed3acff17b6cd7486cf0f0875d064ce2def61a81167a1682b729b7c1e1202e91702138cd9b4311c19e30894d37da3d88b80d25c87b716bd87c5998ab1d1",
+ "tests": [
+ {
+ "tcId": 60,
+ "comment": "rej_ntt_poly (sample_uniform) requires 783 SHAKE bytes",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "ade7527bcb0a6ffe2a2cf114e9d49d1907ef13a2eb3973f643043ac1dc03f88dceeb4217afee1203f3fdac54a13b6c44516c812e4818750e40612256faa649cca43f8a9aa4995b79af4ffa93c4478a0fb4b112deec6a100baa0c6270a00922c6fb38102ecc10df9ba0ab82c2aec27d546d8743d40ce9593e1c067c863b4732eb256be88f9329a2a105d7f4f9f8980a7bbc1fd2b8aa50c3cb8b15bd4d58ad2cd9182f6550d786d600da563537ba5afc711077afcf5f2ad27bcc885548def9c1865175aaf059dce6d3a623e3d40b1ce011e5440679a7567d0ebadb76b28fd9976f8245d2cc6b5b11789a5fd234136d8898f38fa54ab8587561c469c0cc60b03ddef90725bec23e7478942df433c1faeddbed06794d8e7e983a622b8602d245c7245e9b380301321488f904a99ee31dfa6c0c2418282954a2a8dd115d599f7d52a6a04d4f91b79d4aee5c9af7387faa55a37610355fbcc266050ea6912b81776746ec3c531c36bfe326d1976047ee7ace40e88e660bd25c69892cbc26da809cbd0b806808e19931e1d50a448f1f62b08269ce7d6ff3274cb88f6ed76dfe397307211924a23cc655474b174e8112be1b5ddd7f9639f4d22dbdf6ea48ac79767e605a733c2b4cffe2fd776fc7e16df770f6d69b527799f0e484862e298b8b82b3a811d5fa347bc9def3909ffb0cbede310f0ebfe1f89c1aa09301cfbfd3ecdea8e015df52bada77ae6eb3e4f1ef4b0b7197ac7b3348cdc6f27f95f6aee2827d954127c181945ebe05e564147a71a9abdebbffba31ac4db2d8dc7b630f48c3e2b2ee984f3518381b4db2129ecd17df588e27f5a4436b1314d4e9f3c50a10849db95e899a76bc9af091a61b1d0dd35ad75f33d33eaa1bcc1f3144320a7525cff7d4ecb2fafc8d4f6fa59ec642b847281e6e44ec3adcc67e4b10d01bec2d20fadd2d446aa9621937d51fd0cbd3e56a71eab9ab742f5db52510b0816916aa1efe1f16e97052abc39ec48e3ad2f0876eb9492f9249b20143cc62285488ed5d966292141157195c8a9d7b8082809aa0efa78279824f64c6221534fe517d18ccfd2a85482e716a043e582e8e95f03536026e98b49d6db3f78576b8f91a5107ef4f4a788a9b36d97e4baab8f9a32292a74099af38d79f45383664a41c0894044fcdbfff9677bfca7fb2b405d492a8534540e5310367a5192dd482359777e1419fb29a5ceb06d0ecee0723ea2f54dc9969e343876beb41ff8cb40a40664112852bb95c5a40c96afa5751a77a958c461a6d0e9a645f6577d624fc74f31a312ff6d2c8e3f5c7bcefd0d71e2950bdd5da7a5bc7ddae856f9d30ea9784d68293911421433f3fe963f70883ad6fa692b1aa6f01060340fadc0980c07111b0c829bf7d551d8557b7e211ac05c9657d1903078cb59f22be709db3fd9ac7bd37ece1e88f6cfd7b56af127e9e2ff57c46b9e27d2dae1a484845d873c8467be6c0c7bd1ac5bf860f2771fc2767b53d0132aa6c70990813238ecc663e4eaed069554fc35d91b8e826a239f87638e13a3ce82ee87f1283c2f64ee7d715fbaf03481df6754750212f941d159553296a11c3e5e99b23442a6052a1d13b433f74b04aa18cf5100fd2ffbd66088ec58c1d5799427d6787f7fa732d665de840bfceba5b78b6ceb6a42b5916cf8be83eaf5fbda9a4c92d3b3bde73321c1ebe7783a2f8c043647a8f59a2079f9e99466eb426dd9110c0ec36081019aba4d2421ba45d1f83ca4bd7c44b319557134ac8b973949e1b399b89f722d7e189deee7e3a738e760b1c097a7768af06d0f22de67bda64ad171dd8743cf72006d5fcc4f0862f4f5d8929bfe80ac40b0d82aecde6547ccc37f7c0427262acb1dc7af40147336af8b075df1cced5b01fc423906fe0416b89c07ffe69e9cec79a3221cd60726fe3e7a921779ed24453bbc286280ef05fe39557b1b529ee10ca0a3e54c7f03abacf589541eb02fb1d4e83db8da5fece911f19f1b8644fdc470c4d7995aa4858e462b288d61ae8f81b9cd39257e593467252cc77d77718eb705d332fd6e4d61c761da7aee85667f39e601f7b14dd7fcdc4a70e6aab78c7e429b9ad43fe959221eeb53a220899e3f632cc50db8632be08385bb79466e63ce406826ed24d5daa9dfd91ef0650086e8f67ec03e11e57ce0df35a87e36363731d5e6a129c974574c28c032492fc2fe450ff6df857aa2d34f88d740026c5dc69866e1818c6ffeca589da202db3243652d092f670b173b66e845ff249e0b69237cf6d73a8d7b6e3cb3c604dc9c1f08c543a3d532373c482a08b957fd77b78779742f7f180bdc41510a5c469afba4d656ef633540c4d55f3a08de2bb3aa13dbf72454bfa02cc15f900c9909983bcb89f465bc7eb9a9aba456c588cf0ac9689a313ca4891de90921eaec7a6ed5ac7271434772234d889382b32c6cfdfcb2aa6c4d76104ecfc3bb71945f54a707cd4851c7f502680c9f74a2ff6475c10728e843e6668f95f7f25b3b63eafa8586518819cddc9f13d7d721f00e4843ff9d6b00878b024a9368028bedcedb0f8ba9f75ba837bdf23c93d4a3257de45ba05995996821c862cd3c360bd39ef1c05ef3d64f3597688dafac2418f40bf97be693099854a05ab906a94640a395e1aec6abe7a91996896276b58a1fd55d8d2645ba1901f4514bb8af173e5e95bcb4b635ec2445e4b6205f711ab0cfbc3f8fbf8bfec533f746fd7acedf11b4a66f371a02f42d1f8f7c36a4bf5f100cfc665361a1d4e3b6cf3f1b51ce6df7543fc026d7015fb973f8921384fb921b219b7d59916168eb0d8db1150201941ebb608a9a34ac99df89371971f3921873041df22274e23ba378dbb14a1d67b865101fed96dd037492b7b73f0c8f2155f6b07de6dee4365065f71f9af7cfa7904e9ef5b6a417bb19c0edf5a58d90ac15d536df091e1e735ce641c7977e83455f0d4bfbce191f71c139a02ad09da5a71669a845986e5cd81903bc2fcf87667a77511271a22e400ee8518348357e594d94c0b9c80b738464393eb314c8eb9cacd422ad674b6bb3e86488850663a4ce9b996124515acb2b941db207ab42b2178e88838aefbe786d031e10409d0dde8a46e1f10afa41952adb8eca07f1785b7682ec2eaecf58cc5d2d6d8e41c86bb6190c316798b5f7bfcda275c61c3e65da4caa99dded9552e677bc97e9804878077af17b23430c7de12bd6f6ce103d8c79bbc761b94a0e98560c442370fae8b13e73fed4c6332d74ae4fadaf025ba3a3e3b91ca42be7ca07c84adf1c18e9d844c2256b2afe65354c55e7ac3bbc4c3700381ecf945bd57b4fd85cefde464cef8fd7ede5e16d83f770a20db982ff5632631d1251b00d443b0a8449dcbddc5bcc0b2a531a1487383b0782e3c42298c30202ff5f0cd0120cf8379a7629ee913c7d6feef0b230801c1eecf65a41fdf10297a9d11d9af6d275b2546246313ea3146f62e842b98cfa63f635673f76fdfa974f1c4b9a9f7180f5fd821c5cbc06ecae488f47b1a16d6300b556ffa37d22a039e884bac33031682e30a4f37ed4a20929070f68678cfa7ddf07e85af564281e4661ea8f6f5e7adf61d0faac9fdfeb743f46321d715bf5c1a0d3dbd73f6b694d0d54733f0777e10277b5166655baae53d50bb6ff5dfdd6a8314be5511c82eef8714aa3b6f9e0001085a980f7f9b4d7a647a0255b985706e7f2a40124a61dd8cc75b23957d377be6fb791e9b2eed408cba754ad47543a788a1c86d513d13e805c0c516d0d2d7d7227a84d3fc7dbbb12b346b4f14cfcb1b46c562fa08d5ef181de0232792171a29682d12fe7aa49d3056b475df44311dbe4bb05f6d139eaa69d63754e82ee1fa8fb2c943589952fb05dc8a3566c5fc6ffbb135badf57ebc8c97c90ed22ab381960a54d9c4815744c144e270180d09c1afd13db0aa5dd2849c8ab710a5deda647a1f2ea7488ad56baddddc131711b0eabc2a954a551d4e488c339afd7b50d0fac25eb3f3b1d0a81db4678202954886a2863e50232a5e8eb82ce53c72f0566841ca10c724621cd1322b80b776091e31868bccc5785254adaa93c3dde4bffe7e3fbc520fcde4247e2dda42dccedd33be150140a1d669ca760d2cf52222f042a518a0486dfe716d76dfd363573eb2d012dee8b23cad281c6f85f013cb16a8543433ad75afec14d50585ca6077e6a44b2ecbb7c70d19dd42114c5f5391c193b5fa492848e48760f3e858a2f3521fa0c8ccee73d4d7a051b7bac09d8e91f8355f591f8555f1b93dfc673e61cebc9a7bf1327baaac3fea44ce49e958820e593695b06574feb493fea7bcd7464747ae2f16c0648ed9f285d72e82e5c178a1de77f918681a5161333e5612167fc70c585da49d32cee28ef9905efade611117a76279fc791416ad88c723f289d116917e1a9931cb3f8b8b0bcce64cab7006a793340c369b9011700e352b358fdc9798e2c7c67d4891a1d900c9d84aa435481c62d2919f360b4fbab4e2424dc11bcafe70fa94926bd07f9ffeb3d3b8411d9d87193d04f39142db168d435ec83bd3c3d0f8da76694c6c770eff8fd9588a369e3e299b37e221bb48d382ea44cacd11021597fabb4cb050a1b9baacd7e8c99f96674d3192b565f010e27747b9cc1d8dafb000000000000000000000000000000000000000000070d11141822",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ }
+ ]
+ },
+ {
+ "type": "MlDsaSign",
+ "privateKey": "622db4b1c15f5f5ee55e9911432b2a58caa5bd242a6f38a9e2d9cac83db4a399fc94ca5d6fff34ca2c1eb264a8be077fd7e48d4bb44b949da6b62cd97b788d2bb153a3a828fa3efff0d53812c84162457cec551bee54a4895245cc4364ac4823d46beac7a135c4c5caf8ceeae6d23d5566d5e13aab6a5d08b79e7376e7b5de3a08321152654664101634844151418486040318702077383314580613541362112311736244144036484110654530465000146107100564774678380202161885863125418726547760562870582781538258462410447121724352818616366527871141247024801205466712365713408752234680842058064884801783175570286407561031278867203542882383865870723050782312376326678705880502887818702814010741507614880263720502812860575462700680844510622802276671823287332662371580363433471725201642785025385155682130432827440816706532778488068583030887744652505232175081748322425634732662742362872164865521440287076416434780563358728380115876741352704836054534067857332346416620115082555311286554334006025434381052645514412538731846713122038303108167628626102157538734505638132373378323187330267034882757103320311238103124662504824033670656706621575181402172325844225422218253243002741770227864737235557543748825228263335667764166481504512530501513258873788812217847213415422232272712654175681614638213678765835184341476413172407788071117602887320867583812177226375510225488208581216335247624760640580038342253458485378871532420710208340256107348162532143354713554234454511804610886215246240423674341220722807268272574714854157737020573203736506008755485130353327367465663547336304871243875306517114168842627870754471801003805308312083088752583312446001277851027374582156531817586485000250215800708127627211505068347023526110837737511036238283245575662712387584066475661261847675650363887551237323761660716130272031483003378853700342154720335263160870854185286341388833332280625578758806215173128683088001246834752215572378405357710488183827388231330078345677625301488213657710771365474204550530478244381427747514184788504556881553154457275613682204221782566517410352634135622538312413588762072478647710573808231323470571682384724726318417303544318047044210485122008625078017014582468036753831818202880561508455812420133735306841500146564303348357702311777081400234537050086442006710511822581061557641802027172678601117704852670042122642532515057788558632775468781844800027367367800748615875717287224516564015307171001250218682511605542587522181356125680258482676447374450235015418756406768875243576777648477245884874244245418882656314337562348704424171513334852845861380540416300364586756573412732761616135653118277434708784222444700477483165374640426703086004756364532878886822828328712557340376334043487250868461212504670456468383710861761564515751840580532871448510566162802475667801534271150022580467056776043115617168333670862584252151753117541667107434163087436547257872074774262066168880573186462164028557747373346670327518823453168616336801501207442086328014346253643632106487403363037284858500543184643373716138360652372642337328651817705728585226415888745377507760017241628540267408730063075340605061675502707848603662745220370573105644783770300713661715527706362531002143f752f440f8f64f17a6eb31783165c2bbd65b3c6201404e1682bb5d14df702e01935806a69ac8dadce911f8b7c0a97f657cb4f48481a9b5a1b7539ab40dc42ac45366e97503a78208a9125cdb5329fdbe79da89f1646ca2ffb85e35259452c09ed9e4ee6bd8ad6fd73ac51756bace3b612166819aaebb16acd2aeca3da41a953027b8abf0914ccd739e56dea03bf52a57af587401b9f37c577e426c6ba9f87b26a7161c209880270ac01de7a7d7eb272280b89b877c1d11bc207015e23c404f4ed1385ce3f47daa9ed82398069e6022d939d3a52c03894010bec08a3860bb6647fe895eac0b4881da6c50a906d92adaeae9a49d7b1b90d4b7ded0e9100aefea8b88ca84628310cfffeb907bfa3108b5a2cd2328beacb5ee6df693acc1ecb47ad9b2e6edac8d2ca06423a77f2d6b2f318b798fa77544d6aa11e4b71541cd251dd47db6a069908ec5d400d3f32e7c45366af18d05442d6e9285f27a9f1930281e899415f112f62fdc82f9f919330bd01f34ad4402b862208d0c6e84a09c5a14c79a1c43976aeafcde7c9eeb96bb661642816eba09293ff8586e8d8f04a8677c59d2368d9654dd488b005ddfb97128e0b937610e996d2528f92566d9e272e8b6a0f38d1d3ee2186c1896676229e3dbbc30cf5f1fa40ccdc3f7972ef4ec6a8534b82310af9ae21116eacf14939cf211a25d307a4511a635f04ed2c320b638fe706a367a8eeb8472d2e9061bfbd008b05348bfe30882b8affb4b291a69913da0a82afc5da831ad9565321ce8a8a3a9f60eb2b303cacd960254d245630d04d24fb451f21e57ca5ad1842744e0693448735ad64a7efac548e9a82b497a92112623b0163897d79fb35db66c7c20dbeb4556fed79bf7c44984c7d9c0dd042c6a5da3c71107be4bf15c147658e13bbc6591bbe4a578122e1594563aececfe1e68d36bfe10db96a28d12ad83d96344533d757a8359dfc56f4844768d5c6c44229a72e74ed1812429719fc42a2cf91b4cf04687c0a8f0d9357633732416ab19f57c2c3da93a94ae4f49823cc74171e20d6ca2f2c1f03560836c79965e70e3749485078bdbfb2d133965dc609ee360cbce2d702a0ccce01d98a8b472116a123d75801de284553f6bf7393bcca84f113ca41b5fb403d86af5ec5cb5eafba3320782e80e2fffbfd3ef2333bf615a28f26df1c31d8319b36b28cc955d8309a611786ab3c8ca76899a79f42aaa1dcfad54efec7b827e7650a66bd9136cbe991bd195da7306274fb202a6ade4a46d68ceec54e4c67a082614374e990254339c9619bf55cbd9b244018cd307ff0d3c875e474e18178c99c8ef09d1e1817c8303fe897a4dc95083800978c9f0963ac58fba8cdc2638144a369e42ac00ba55e0193dbfe5bb614022373fcfa219ba9667ea123db95f95c065bc74b2f244e70448b9bdac4d2531ddc022d5b1bcdd7c7dbd8b5d49db7021b46991e5b03c0bea10f16b77a3904731b8be51c18d4e2188db04333b256ec989471594e7037a964aaf6d5606b9239f31f4231b5fcd3c2d293749a38f077642a877fb51bbbe4ae9a91afd81639c990508fb1efa2b5d89fa9cb4f77c7dceb7c3be1141f385e120cee045436ce16a46bb2bf006e380331ab3362be12367ee52aec3c46a52d021a2e845827f85d7e5e77e2110bcc59b950e31e02ea8334e77d2912cd16b36b2c5d90adebd50330a4d384143189e781999cb9083b416d17b4606684fd9aa1e9bb3dc07057789472114b2f74c64c6ab035b2f33eae9fda8ecb6ee0c8983e4494d8c4e75a9008dd37a0baae7196e27501fe7c69f6301e7668782af8ee6032b6fd29db4fdafe4620324f9085a241c4db87698c271159de2633603fa38ad842029cc15b7db35f399ff59523d9fbc277e836a499e59d9094526ba02fc6ff22dea61f0a389fd0308dd575092edcdc0e289d37ecc5d4ffe24aae42906fa48beeec41c38f728c23a302b1eb7376224b5db129b99485aed5a8a6aca7b50340dcb1413a3716ff28ca6998055e2e49b0e2fdf7843c98d75b768e294fe45c988df13a7ac87685228cc6f19356b67cc982ca4a4f5ae95432bef5f960a95aebb9368ec5db0e4fbaed484b6455cde520c9a078605b6962c89d46ce78e449c1e9a027cb0387f9ce7e05e6e1b326bbb4715cc4815c3808131c05eda191960a4a2b05717fddc3e27943dc63f27a5080cd10ad10d85a69af5b9b57d99e6a709f0238c500bb2f4cdbcd608120996d6f847fdd480f5392f94e5c48e558e8c8b041cd24a57ba3f8deaff334e5ef525636a154e9bda59040e7564ff69d5b3b402bc3334b8b38eefe9a7337198e5e9fc66ecc44bff0cec7b19cf60208ee7d435e730526eaf23c801d30a3d1643b95eb594f8212d3ff4bae7798799323e3198bfe16829e8fe18fcb25670d0b17d906b7ba76247bb63f311d1da6de449589ec087378f65be84f473237ac488434f43a4437688ce76bfca835efc7795abdd95986c06e1fa657a4507dc54025712f7f871eb63d1e31ccb0a321724350bc5894bbde84fdb4cbfa1c48cd5ca85b2451f5ae3c0ed0029dda5816009dc3a16113c6a6938fc11afea12edde0b2c40c43e703a2a56cc68018a0ea4837b9299fbf6ef192ff25648ef43ff256e9e648f89a8542b3c96dd228c98a0135c3ae7f932728c06fc332d3d8bbf5f3412fbc0c3fbc9994852b6563a779fbe0ccec57ff699729ac7337141c770931311483828231ac3325e61773c216e991d5bfde3e18556663ea29bcb090f635619dd6ba46fd379de5250cc402709f3ca4eb819f763d3a4f34b27031feaddac62da81024714e86e9d3c9d2c9d0376c937b07da53811153cf8e163fed589e57780e17b0b04f5a7299d5cf95c962445499e396bd55da8d77dbf7f4e14f36d5c5fb9dd4d4aa59aae5de006dfa25678d1a2892893fac464b1d1adff65de61b3cbb02991829bcbc4bb6d6ea4902b0eaa86260fc673a248f514c00d5074aadecdcfa7f5af1a311004a786cd0f8b17b803bda2fba72f5462328a1b256a767a819e49a4723df19fae33a0e7918ae270f836d01d3cd0af1509bbd293f2072707187318c41d489471faa9930ad83ea60f0b5a2dc325147355a85bf88ef102666726fce670d9d5c85ccd15e5194016005a99576e00561e8945d4ba3a7bdebaf9d7f6ca67292f3979129b402d1bab4d1c786be3b45e8efa9864636ee6b9675fc979fa2e0e6f3d77cec074b9f325d2bba5d2f7e4592708e5bcf95aff655dff90adfc4556404ad92cdc952b96a52fc9ecb64fd209ffcb22744b75d42f6e6118d09b0860c279f306b584e58612a58e396c0fe75d0f50eaa5d18cd9621663c4d1162ce71a528d0eee887b648d28e46c4815c4aba7fcfadb6c2d84554c40bdd7835faf7939ab407f30a17846180631168af13fc59865cfc65ac0cd1afd6edb50c364c319962594ae073ab1974cd3afd15cf059f669c60e7d13fb1cd98bbf44e0841b2ac47114605c00229872ec46a594d047e689c63efe0713dd138f9f4b12ce9",
+ "tests": [
+ {
+ "tcId": 61,
+ "comment": "expand_a requires 23103 SHAKE bytes",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "8f46c68b4cdf1ec20f57a26aede6e7fa768ffe1caf2ad14dddb070af1bffcdf53e996a4c5f009b21400f21a51b90ec6d5dba942d359af0a5feebc18315dc85dd4b5b7f4bf0c1298a6b38472cb7adeedbba5367a7bb86776f2405c665f2d1c77ec94f9ed7ed3f0e025c46b158ff66fb62fe7220ffd466da07b099f4e32b7be99b39bfce7cb526f0c1aef67b63c04e21fb93c0fd44d3cbd1edf4c437af20e917d7859be5398fad2ac8bf6c422a3674c2924d01ecaca88bde6b02a92d4ca31f559075a78a011f1ff334f8d33ee27ca9a27202bb1d045c15607202fea700f737cc5db44efa4448f469c07c5c690eb5d244dd7279fdd7a5cee75c2234d176c9a1aeb337803a432c563443610a646335e1a08e26baa26cd52d836e1c3309211b071d552ab3daeb0e8bc42fbb4d5877fb3814da62306313474d5e86ed9808dcc6f0c302b2f9811fc18eda56d9e3c44fc01940510fd2ed83b85300b69170290bd07596f79fad3ede82a6b8b47f31dd7e8a04705dcaa44caa717bcfa288d2662b2ba98d3aaf930a9aaa59389e5d153a4d5692dd92c5189136ee81934b81b7da6ab8c4c1d0b80efd312be2344153cb03395eec9c808a7be202ff4f51ff0021fe30c9f7be4d1f0e53b24f67c06d057810d9a072c5394b49f500a0523e8d1fd2c3e0a4441b3132ee116858d78a9b4c7987dde46e10ef202c2a5b793a3c4fce39d776cc52c6fdbe582a3fd9a09f9916d14750341e3d5fca75b2466b5e6ad5d5b577f154907ce98b5b1e6060e0e307ea899b3911e4978070cb76728c82e91a1334d61d9939a601501fcbf75d6dac20ea9bd32cb2ced147a4a51df0ddefddea0116264bdf9abb8074a6cafa2a6ebe4a6cc48eb0a9d9cc55f14d7f2e526ca6109ab213270303a0ca3b1490a6bd056358c0e741093db14fc01cf6807d8cc5596b217e61319c72aaa18dde047c3a04b4147ca127bba41218e1ed529f534d71c442149197a5ab715e427ac79f8758e37f623b73ef6a2b55207aa7ade98ef5a4f6989bf4330cfae3e3651444d5b71001dd5aae4432980b555bbb931c0fd9f5abd1af22a4a1d2e2d117d3b8f63474dca28f96049b30548ddab448872f4dfbfec63555292a0f90d54b80c5e3dd8c5c785c3e4d00c643bc8511fbb9aa716caa06b14041f9c4bedd6c6d339220a4724079e504454dffc5c9d299c773e14da80ee3d99824b6ebd93aa71d4201492c04bf2056fbb430acc0d1d425006e5b232b22d5fb1484f25181198e81e4b24fede7c0c498d55f451f2777ccf24778493ae2e0f81b1077cceaf0c0d012c96ae8b1ac5bc3a3f8aa1f361b5beeef3acbd95b7a971021a9aad77a82e059cfcc6d0bcd799121b729f12d2cc8274496bf854bdbfd8e932942e39f5b7906b6a96f4effa903c0bce837160694b2a97ec89c1b0f7f35d16a8995f831b1e5162649e711b71252822ae131a5cc23e7be487be8b1f3b5ba359216e7273adec9bccf6c15a1a3f4c96476b90f11cf94b6d04ff59e6bb19be14f35bf395d7faf85cff288842546efd8ce42b5a29a6fa620581b8dcc51dc2610cd08cccd4f141595daca8cef416cad7907248c58d9327e3d9556bc6be6119bb983cb1faa2b492456b075c7e5aae4e311b61821f51f3c3ed0749852c3788ccd3441beb9ee6cfeecdfdad4d7d4461702e2e1cb6916ae9a9ec096b7775ca6cbb13604419acd40f4b35c7429b8700c8c0a7f6243f5cfa3aa739b713974ef74f84788452ddf5be5d078cd80a2290fd9992ebcb136bc8978372b622bbaecfff00c1c6907ca231aa1441f36697bb29ee93d5a5bc951e9a7893e4202d3cb5dd6324d7db70976ad7666da4e94941862962d3af783ab2bd173c536f999f5627cb7cb7ecda596e65dad4de7668a976b0ce6698bbba26461d78ef1bdc0267c761b708435441ba21dcac62ac6cb1db54499fbe2b441f927b993649c110c00a947be9381f3235861460ffaaaf0b353ce002b81a957e39291fc4f65fdd791281a30f4ca32c297f2c6fb8327454751866239cf4772bdf79368dd99d28c61c7209aaa13297e0fa958ab9a2623c80e779c0745c10f42e792dbcc18099a27a99e9f8a0d389e191609aaf3ad9c3a6661cd7611bb778f706b74a834aa662e70bffad896846faf86a052e6372aae1058bb9dc96b1bd9111b5b1eb47e3badb26f7396642764f3144a7e9f5a903d67f1ec74e8806fc48e354ff37a138a47b3b4c8813d7a7992aba5310a439a1d90848487020c0983b48c5ee97ec658eef7bc93b030b57f16961ec655fef8408a9132ef76016e21dbbde30251501a701b9310ef387ad88c2281a7634b381c10050c50a43d9529c923a81d9b3929727e2b499fd9738d75cfb239c6ea3e94b5951c708d18102ff06aad9d20a219cd867a4c8e7e8e1ef7c84f67217c148f44b422714a381d33f72755ef056f53098cc8fd9877cd6742b2f77b4f2dba9ac9045c17515858baaf3e34f4d74a6e96e8d4fe661211674a68e0912b7c0b4b80811ca60c4518350b3f54df34db7f69de214dae9e14abcaa01c5f28ffff384b438f46547009a8f7e55511e60f2850f75bd337f0045ee00c51a51e655719ea4da79e9a60eb2397008701becdc5a83619c7f90667ee024c44ad392cabc6d7799fa59c8f6125b85284aa48cc7537ec0ef17e83deeb1c99477ebfcb3d51df7443aa692f7319933297a1de00dd310a055611efe998e1281ba0a448521fa0c63df5e7082de1ffc0534f85901fb320211f46f439f13314800826ee72f68c76fe82e45d2f19d9722d017ed44eb14a8a9864c79f29c1082054badbd6249fe8f93f8e9fc65bb3cd1af8aafbbf56964074d782564adb1c25ed8b08f8430bc16836176422fba4e7ff1684a61d881c020d4e659429b48f9f3e64f16d24021d6f89add4c75d237fa9043d32cc27784b7c08844826178b9dddf6fb823aeef3e8fd5aafe581c393c2dfd041f8148aee08a974d5318c746c22d9e4179eb56abdc72db1c6118fff4d9d8d6cb446ee19a07b7fab8df403880aee09dca1cda2a39ec10d5a78457e3aa3cff48468170094ad22d30a2d44428cfe7467a4ec539871cefcd548c3062480b2ed2b6e7a6bd6110aeef4166cd0b45dda83aea875b3ba10a9b3aaa9726f3c782751e85550d144231853037544f39d5dd039234cb42fa88fc0e5f1e0b66f068fd90523ed6e1741679035a7e8419da10a7604b13858ec59be5e5ed7d298e29bee15eb9d66e91ea004d80c261b09474d3f32b7e6bf321fa980786bdc374134e9a5b64c4549cff6d0f073a9675a27a118dc12d5b745da2b3d6615280802756895b6efef4c3dae82e30b3c275b1d34aa55c9f650acf2b727c7e1ce304e1f966dc549a785952135073c3dcb9216885a7460fafdcf7b5fba53789268a8a21005a877962eac88805d7e1286cbb26e34351c1ecfd808a9ebecd2893108fcda6a39eabc133d7fb015ab978ee2ce4f6c6f132e11eb24a82e4e43759ad1ba10dbddcb758a54cb1cc9ecd955bc7f43cb6144423ba5d62d6296c89b1992751dcfd37523b647ac22f468b37120ccc461fe4bc817796e835d0f47a351e2c18769a25c988c7dab905001c8de47aef0e75c7d5b1c299db472600112f656d3740c31ca5017f4624803ee5baeb4ad4974a04be45067e747e2071c66f1a2e607dd11810c78b48fd7249398b8b5ec18e494811e68502872a0a9862d8d9f66122533f0e4893956aac7d98c3f2fb04ea93d8a0f7ddacd0072ec18b54bd814a8ded374d26d69bd7d277422746fb8371828a8e8ff398b5230a2fec8f1ac7a750fc2c6eb6c9341a5bedf7248c796f5b87d9f3449e0f0b3a32d8e283812e98154cf002a02a744f247a20cea768d283ff113466f4775e1170b7395571873b84d5a7e1f7c06a657ed9a09a8789fbebc4fe651735cd5e42a08a5adddaf9827c33078a933b74bfc83a3d2e9ac0386693a6b5eb623a223df33d5c10df6ee4a1616160bedbff3710726f7b21d11dbc7a8a59c52a57e1dc17f914fc3c6d21bb1740faaf09ce4dfc887970cb66be3c9e154e7e554a744793b704593e40550987d60a589970f9756f7e6e4d7fee9cf673f0bd40b9899de4d8ce43c14c1a0def773cdc33dd81147a10fe6557f09e0a863e369d7374ff934563f84ebcd75267822b71acf5354efaf5d35d6299fa186ae28f6092069483b19db0396e008761203a1fa92d8e7a844ed237f3ed30c8c56cbd48a29815d02acbe917fcf2212a69f543a132204a48e8c692f78f039cdc63fa17ac2688c6d4ad716bb56671876e5f2a9036e9be1e2ca1405957e428928aa938bb96a9985d9a32b94b955acc5d4314300b10057d5ea099c65f0e0098fe5edf08b8cd43e93961c5ab94cee68f25a2b17adb7234e88a9dc79ff8b72c9ee205d457c321514b7fd87f482c0e8fe0b6294996527300a64d964d02438351caac5aeab1ee5c5be5bb38b605f974802579e0d34af06a3d5b4a0156aaa1da8e35d694bd4be6908974f5f9af626d16efb52b01d5a81487b669c23dadd71461144ac251e359e6f3ecb9475b2f89b837d1c434d590618c961cad556e5f98110fdf019e813a6bf20925167ee010144597fe8f87bb1dd1b888d8fa5fa032123455c7da5abbd2633527eadcae5f4041835738d00000000000000000000000000000000000006090f182025",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ }
+ ]
+ },
+ {
+ "type": "MlDsaSign",
+ "privateKey": "2828f4f44461a839e748b07acc053c9b0241f7b1425f9c742019c17078ffa03688e7623353690fdab2cb87ce197dcf078d8c3285ac28826b8e024df19134b857a41ee479e13b64596245f1d58b57c40b7500ff832bf828cb5525caa537d807f38c4522d4c15918ad6627fe2e28409fe61942214ad41f64ab275d25f1bad534cc33588238826183882674732632566580362001448330284227167781002135128664786646058668460720881260571120274237802246556735450743141503401342278143552058137581632173108630352324427685411488467336235784548748840848714121654657105666125730637215637355362235260265675603050413273482875838263831520270432587200287454674233525303667165816365023610712620222384650310107713081828344015076022454623877358617562131355870716747185267555043327607816883862320447818875278716282735017014760046611014257202861554665684550474340510720344200602751124754303126318240457427278365383551773258420642165715502880376007823708733536524360051857033365182723348451876326385407282131855143547135841160730870274613323175166682544705656238812056766716082221047241480804203635202402024401885637337501564460471224482247815583668473644062704543044085757107576561781257378174321153031115822077122380211756282252654766432667145584058228444606105161477848088411650126643741334115786160741370578766426400234668652030304657730420006701100620441486311437237348665250700173248065651616655804508333787503443056461041343804657334575466138341774818438886606858631461853374382630671784527825623572182273488704561128760880474346020284418765241356432260256000824480212210526615810685015033616550262527247123472782555323033532153205483308228486026143726232537738677480717176610617345770342210381831644628463238762420373747208211346782337016760343417774340517287065706481358307548684283322711187312868650437621427120508820234277442328585451337433508454307227383728603052248625360578821882305532707545738015255151413477165328780368788450286537221681331117310352635025332534252415716671503580355350753035641855038000774585815638213226727231402786460586660263622366040501632588637848407083583212541418401378031165653005260004321008177850013110352246342736752314155503577761026040151413104787031601186536771725358830263175312850836616142633738883021155545780378627041786337673234268841745585357327281381160456062778083681251122328844060508573145184181668642227607048575204242151615626274643062750504854836856137664066046718615807703037707318381885201774005268155232112877777710243683374374644575352713167734077116757445308422055476565046505821174812720141167450640570488577638125578480577727265705261300872616023422647537582741861676702506703246401531231604404016632740613325255254331504212011543683514438548222171228181871043326652013751352773665404733404351644271407273837006017351774542781511044801125142248634280644242803576474052611541473136280161182337803745406105041225364682640626381802758210542018576722441141348677320476135744248617117162542754450758256156337264551036772310557470503777366045180842517246314275714880444075446737027264775674543701886656254244054637361020587107178844177428163848676502463507413772205684767425333364412627374538427326825431706705351e5db3fafcdc953640c6c5fcc86eb60e9194987d9c853ee93176ef286c6776ac3da432eff02d1e0008a787e2135a06e24645ce5430d569e1bebfab2447845e526cb1c5f7d61042b57d7c7da8f7c29eba8947175b42817b63fb3585554444f0a2f39183cdccde2678654163b54b8fae10ff6ac9c6a590b7564d2f3fb5aabb9ee38f1795d749b0b4d603ac5c713477767d043bfe695cdf979bdedf9e8b7acf4ecca6aff7172aeb00c20129698985370e4c00918c465c70104685519feb73c6cd978905ce934af0fca96839f0e028e3b3c5fd3229456f20cc3a8b5e18ff8db5b0cebaa652fe17286fab0399a5b5c1495fbb69983372060adf3da98d891ba11ddda151429cdd377d89f8b7ec05f55819e15aa0e2fd3fc5abed1d0f8bcb73fe2499e34b7ae7d06893c28122841217fbc9f1cc8d621e3fad841a11cbe3f8207bb77ca533ada4f2d8c2b7543422c07f0d76d20fa7d6c571377601ee37e94ffcbe38a91e35b1a4943d000947adb9cb59dc6e94c0266b2826b53183ae1a8d462c591b3b14e69a4c61c284503fe4d8ac6b9b3c08a7a8c5bab31f91438062d88f39cdfecbc072d32d76fb8f73d51ab1e3bd46e5f2d75552d46b50d26ed5b24561426926fd91496e7bcad76df949ba2c3f6018267a581cd8e0d2bebeff15bd73d3377aa75b8d172cc0f19953e276267798b4e6a644044ca4c7ee48af3a5ec8513a67842b0cea6ee54f9d3a0f260208bb1764c0d307050410963fc08d3459485a9671e0516176dc3150514bb7c85198acfc251566c1960b04bf4e2ed0a5bb6a865c37fc72024a21dce74466911a33991d2e9f32851300eef0c324133afdf9590f5b062db06631007ec24644ba6717a0a8f45723fc0130602c36e04ba1d733df9755ba132ab146ee4bd56a87a27308c8c80e74f9102a051d4f705e4e36f62f0f38e14f9d44675c51e0cf21c3b5fdf007de1159f6df675d180bc0b1f3e74f38fbb96c4eb9dac622fbb53a2b8e20e090d65b3c90a6d26e2bde59bf65355ff43b7d77fe2c27091d5368fbbc170b87c75a1d58e9d81b3a1ad05b2fddf465af1a05ba6a96217cd3853cdcfde64a5d455fc8f539ed2a159810c327a056f74ab7845675fca3100cf7595317ae4ca4a6f94ccbf34f03fe98ff773342d24734c11fd5f9ff2a39e594d6dae7e72282949ae5bf7a43789d711c3d6d16e1da9337976a533971abd1363b25afa794be61d8db808019788527a98b8ee7e4d8b77d01e4c4b509cd5af528e1a9281ac57572668b84d9b1d38f7e40740e944d87bd6f4862cd0b09ea0b88f998942aeb97b69451056b2fde38ec500fb2fcdd9fafb06b04a50cf455dbddf2c0d0359db99f3a735313088df2298f4f394f539f0ec8f63a026bed2ea0d1d74cccaf40bd4631f211064849fbca97a0b00cfed9391bb0f22db7a00e0a59524d9218da8024f6995efb915677d2df7e9d07b0906e7eeb01373020edc00ad2d47391eabaad6f329106660639427ae44a57232e1d69b6bd3475d1c119c7cdb4b99a181a91a737fd96109a3553b065a76d3e82701a1a25693311f65e58a3b0923908c6f20c5dc28aae66d72b28be73b4f605a3b28df2c6dfd14fb9428d091679f70fef6a037ec82aa824646f98df44f793cb750d7bf1f2fd86993a7c1b19280624ffa07e8c5bdd3284ca254b6f7fefdf033b0c24f585ea6313a459e258a9b2c322e71b7dfc525d048ee43e3fc06ab79557776810ac733f9d5b75e876d3d870a6a3a653cd11066b404876cbb801f77a16c86db81a141adf8e056d4e1f203ebf232ba7d8d4238521da1c24e89aa1949f9c516274bd5021a4b9e66e6f8d0e73c092256674a43a3eb0a0de882beb2fd62d05c957a4a5289ca7ae2f9d077546359afbf0add1a05972844a341ff07d08970899293880cbbfdc64d790adb7456ac519f85059d28b31a322aabe2d08072af85b3bdb8fb1cbf4b5aa4681b90b9c73a9f44592ba5c43bdd67f4bac799d7b28f382d7357bdb0dbe1d0221b8d8019feb2b397cb6b4c15e8e2ce2f8add6041b14ee6749d3bb20c1e86e2a838a6d1b1a0ea9806719652811c6edcc4bf269536824756c9d4ca6af593f8dacc7a0bf753751939bc8f0a718c578bf34ad1ad4068423b72591783aab63b8f55270aae396004a5ef80e8dafa29367a74264e514ac27d7d5db636e02474385beefae2dd3ca4f3d6dc4f6bb33d6c4ac9131badde3cadd425235daa7c8ad2c62bc8f99eb73595b4ab244a614b251957798ab7a812e0b4e73ce2c94853e1489e0b34aba182f8e3d50b59108675ce2da8b9f346d2891ec23ebb4c22b97bb8d7a46a6d7379750c6b268fc338ef4959ac553c9628109d4475956c54401077d2aaefa98734a841d69ee8157a45ee474cbf3c61186d1e1f513537468eba5724cb60de199b924f6c5f92ecb0e11c994104e62905b91872e1158b7fa896c773f129700b4624237342624d011f4e7f9dbd322e87901eb602021addd8188afe432b83924f5c179c8d42bee2f7f15ec0a356f356a9c1da999758acf5b1e8c2428d68e197853498a43ee66faef74fdfbb1fe8758faec2c4a78a134335b50a9cfbc4055304e6acb8045489e9e9524f14768cc096792276607ecd5592a2b0b905211a2c0a597805e80131c42ffbf6bc248b377cf1224c25a7458161d947e0dd1c9a6401c9ba2a7d6c927a15b587470fe6888b0397d31b8e59b23317379b631a986c44c02f9f06922cc5697f840fdf17ac0ea6eee0bcdbd4e013ed2ae2bd0bc2423a806834e84c34e386e431632cae09c2a4a01564341eee35d3bba24547efc6de220dd262f837ab404ac23e0a05f32a97ace701345bdebe8c351e1b330dfc0e26e4db6c223cb9ed0b7df3af861f14062a6e8e58c8cca6cc9cac84a0d8438f7f813ea06f9d7c0b672274445446e689e64f883327fcbec426242b82b02f2d44b150dd91c1d2b07d5a47781b940939835cf7420477ada41fe7198d0aae0eba59eb9f90e035b8b7e0ae14523cbf7541ff257598752103bbf2eaa2e098326a6614933255aa0b5ab84f61e7a0ffeb792a0dbdcd4cee6ca9c85f67bd34a79b36c4509f648ef5928273f11cef4a16601f2283b12ec25653c51ed32e01b926d83f605c91ce1a69b3c7fb85d75ea496322b5624a0512ebbf5b327cffa8674b5fc06c7bbde0287d0a353d0d0d2b69075c173139037c3e8e9a928ce55dcdd4c0906be9b8409b875924addf9db6803633d2004020d65e53658b2bc48e83dd913e16eb5882112b4127ded1899318eef54841860e88c89dc2c8b0a8e74aa403b7f46138f96b6cd610b5fcb6b73c3882d9d2cb4568f0f35918dd57ba613659ee2ab48ae2c25f32958bd12202ec588047308d97744e0eec59ef60c9d7fe918c93882e2259409025983b018bba4dfee30325295638eec7e178ece8c44813fa7d17c845f744b0007393cf782405c0fd371af406f2a08637535ad0103d1a94e77f71838c9874bbee1e44d5d5dad92686b7ae0b008db57d17f8d328dd9d6b3d0e8a868328a",
+ "tests": [
+ {
+ "tcId": 62,
+ "comment": "rej_bounded_poly (sample_uniform_eta) requires 3 SHAKE blocks",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "45c74c2f9d98d9343257f12d6ca0e80a4fdf0923081fed79412e4a468c0c1cab92c9d537ddbaddeee90b1da792c2288704605e285af67a1aca821c7115c34df21b0545ea4f8d670ac7a973a23cacdd150ff8f76e7957b98104cb90c43859359189d5c82b50e13f0328305676ecfe7e98a07f4d9a91482901fa3d6cd0b704199ca72542fbbe328eea284049ee95153b3370314c3275d76e81f4fa1a8a0324ccbbc23f1a98a511dc507d23352ec119b93b1c0b58b97ee71ed3a7b0b0783dec92e3834c7a1a0054f6b3f42d97e5fe5999659ad854fc859530b50af080b445187493cdd6094a0cd8253d24609bdba9ef471c03e620800938928b5a4a28aded028493867969096cf9d8378cc7930de9afcb94200e6bdd216ca5d5bc877d5607e633a519274ba5d79c22ff71cf54af14ed7bf0ed6b0570f652ac48fc268328cf822d4d30402eea1d506142d4743ea19ad82ef2c62e0f9e48eb104cc47db132ea3e94cf8fb13ba56fe098b96b9ec4d180f9cf204a62e58d11f640d311640cf1e393e8578545826dbb387a6c22596bbb0ccadc3de519143a4c253c07a878189693c26bb06afc8616fbefea67a390d5008c61c3eb67406553f21e340d4c950bb5409646a07f2627a7d0cf96a4310455b8366ae34e13131cd8bc39b184830a47092197525747840fd3f35bb47b308174d296a67e132f73bef36346b08db87234cd7a61df9452bc9689bd2f2fde66b48c74fca4d26e12d1c4613ae1198bd447d917d6a6f117e3ce42a38fa2ae2e554a8793f575387ad49a902544e20e1acf8973ad586c659b80f66244a658793186e2241469751de168386247b42c1f573eea4b9a57a475111d37a3724997a1423392024200f4adcd251021e3af6c948278e198cbeb5562d26ba2ebb9b0e212d34d54d9c618e222c7f60a17a634a7682036d3e467b737291ae3175f280459207210822ebf74c080449ab87fee72f9574efb116a0b1bdb9aa22bdd47d17a21aac5bedf9a3a80a56ee4dc57a079fcd3d7c33608e64b7a87482d2e1b061026df6eee3463a48bc1afaaa61a6087aee5864fe38a968b4c0e10fd839431cdfe03115f158a25fa73dc945d63743e3a9477afc388697c6291ab09d5e145f2ee9731c0de90e84ed97e48a5eea05405ae0d9a12faf82119ea5c2dce8cc118b7d584e3ff296f0bbbc057cae3be7235049bba5fa0887e6915758ae2fad31d7d26e679ceb4642a316694b3e26dd2a39066ba783d1f4e217fd9dbda82ad0ebbdc5c6c7a83ea4142874ee6fa31ce1f74f1621cf9775fc139f7819a386019d0138c82b5456b3de55f0086962f1388bd6a5ae7dc2e259d4fd7aa2393598baffb321884810e5c43e158286f031f867865ce4f2b776f3a3832419bc347570c0fcbc5beaf6a939ba995ae7ec35acf101ceef7d4e415d5abd977392794d19326f695acdee4d32b0b2545f70e03154c5ff5f5ed9baebbd37a93b3a926ec96ff2f010051fc11e2e560ef718ce7f9e55b4ec9e7fb1c000e190f970310e577b72b5d0f08a52175b466ba44e06d82b2b9a14d33eecc2d7aac8a5bb1e50a91a13dc3a7b80c077ac7e7be88ac5272adbf3e361a0d2ce87fbb860c4a4016204c7530104048242ddd11ccd78ba00c064afb51fdca447e613129a8e5e568aef7b13bf06d3990bcfdcf74830109177bf46f9beddc6b4e01aa1ae3cd9137dcb47e711e7b01319267874a9c8febcd1ab4f3abe7b4ba088029af6e4714c8e1231b9d819b7f3843673da5319299036664608278175c781a0517d50ba48c3bc7d480195236a1259ce8e4ca9fec41c96a3b2ac1a4314a2739e57368ac030b85d447090cefe997d61ed2e44a879f947541608d7296a255e3b07443110201f11c227ebdabdc04990f9cb46967de0b7448c9c2caed883f849115d9a7904fa2844b1fc4c81fffaa4cb6c93ff69f0012920d540c1c67f19e9e90c60bfa285b19a92930bbdecf2f12e257c2c0d6aa880f7609dbdfcc135f8244e2b209180541c56b8a870915c96d9f6110cb6bc8ef6485cb5d4413ea2e80a42aaa4cdba7f04815ee37af3809032a0651b897d977c7d2ee5ecee346f0d9e7848780cc90f5fdffd8c23bf3f73f0b3e53b385556b23a988afc86f99a9a85815051fef4b9bfa88ce55232dcee5312b1315d7b13552939b4c7964fae29abfe83236077e600a2a02159c52b90146ccc65881db5c900101fd48150778ff7b993afdafe2a03e5841c736264b9928d1ed7aeb7036180d86a17136cd62b9d8d90bdecdf2707cb4606b350ac6121fec880659b5726fb8ed8923b342bd22a300a6df4bce9b4f70c79ccbdf7c42c9ed3c5cea4bbe3823031c44f710053740e55dfcb7c488f600cecf1b5c974dc6e483bd0205f56c2a3a674c49ad2da1ff9e37cfd8f059158a1b15c2e81ce26b83bf86712ae8718a58c58cbe10127147b5d3aeb92162b388366d779f8a126a3b5bee56902fbc1f6a449d74a7863a0b6037ca5ffbac5041bce68a2db29dd6bef264c7d6f244de69b10aea5c7bcaa379ef0c7ab47f1bacdc57925bcdc12457ef1e737111877411b74e1ef77491661ab00bb7d38f51160a90d4b500416ccd949aa17ccce7161c3dbb70769b4953adc3fe64a2e45f0fe204a3bcb37cb3b24ca07fa6c4239710129acf1d98c1922f8fd8aa8ddb207162a1b3dedc0e390a4893edbdb690d9aef686c64147cc718ded608c329eccffbe338dca3a36a4c4e4ed48160699db6b78e25e54d0b3e551c080f3c2bf5b6b78b951de81bcb9724b4c8c66d5cdbdc77292a7b7a82481febb65e90557b2effd9f253dfe7208e5e0cb0234b566dd33837a0b93bdfce7d3322b54a37e0058c93bcf66303d0ecd55f16c5c0c68d20363b8179d4ed96305fa632d489dfd64624c4042a6f0a57fcb1afa06db489a063a59b7740f71065214b542c22d1744b6dd1167ef35bd45ac047945df7b0f67e4e6d5b7aec57b07f0f74dc4922905168849fe4c5044ee65ac36bd6095d56db2c6ed1749af08e6ab80560aea4c736fe610e4b9ab6eb212c4eadf0b2895222d4e5bd289905199eb4566e0b2569055b6d6590d9a3e4f647b7366c8793327cc9462fa3bb4d9b7d3eb8ed43a5c1603e0917c2a4b55dbd20b40bdd84dd379e4c7c3e4e7880ff32769633870bc7ebc79d6396bef835afa39539a327891b9037030c75a46b274353a5ff2f1761999b6fb214158f337f0b098f8bd40a8c8a592abc004d5f8134053047412309bfcbc7faf5dfcc0f44e766d2c7e7f651ac468330bd301e21ffc863855dfccc385c83f3c024bfdb732f596cf945a9dc724f85eaa5adb2237b41b485954162890e71e23528db0a5aad3ad47b9389744599f96ff5c7189271ebd2c12ea16000f56e0d15f0362acd48a91e3863a1ca98318266c3d63555ad96f0d188e3275fca834c20ae62bd97308ccbfae323066015e3a33169d05f4ff5068a645b9ebb7aad64ffda44f9d0580560d23850177aef4ed42064de173a50f5bfb5e5bf6d9d39eaf8d565f342a8d9880118cc1d069480bbd6cd615383f85d2e495c4c33818b6106cd241e16cfefba1aaeb5f631423c1d8ae8e6553a3ac5e8a85687c243e0d4318162dcb2ffe2afc5b9d551a7a755efcb96113f1e9b596180c6bec210f9e36a81fa686f5073c573191aa23603a8067bd441cc9d46dfd55f6b1b2c36d4ad04d96fa326b05b7526e43dde99051549718a48361a40bfda5073b8c95c154741f901007740fb0e84059fb7d085408bfce226e0cd08e0361f9cbf4b257d109cac12aa86a122ea823bb4b6c13eb74237f9499799d73e8d244288776ab6e344dc2b6dab89b7e0f764cb849473a168cdb92411b0664d76841fe5dfe477fab40997ff18c13180512bddc04f74a9a0b24cadad0d969677e108d0d4c9cd878415186f958d49fbf04e2e446f362e8c2359d3d7799f7976e490fe3269afd2302bc7cd3d434fdadeb459ac76b5dfef29bbf84814d1cf21d4c374ea12fe34c4b9186c068d7075bb05d12e702c5fd6c7e6a7da986d9d65031bf3fc0a43aa546f06e46785d63f02e965e5ffdbaa9ea7a092e1a149d3eee256da5810e1f565372b5d96a899f15ac7bb97a2cf510539d110db26e98f20056188177b5eba1e017ed78f60acd6c8ef59502a8b94776699a6fc80191ade5007bfa62df60c63875153b2305a8f9a05ac662e485f4e7e9673ca8e85d306d651f37d06e860c8fc50ec6199916b72b711d4ca74d7c031f03fd41bb7405c684b136beed4110bec947ccf1b56578396fd88a70f14ba683bed84e70a72779f31d7ca3d9db73ad4133779ac7790bd7e378334badbe2a148b2de5f3277b1e0b2a1b2396b88f1dec7e49f94bb38ad9dd509fe23ed46c0830ab1f89f04d6986cc3a3b373ac9bc8a83a37847d87321df3f5cd6eaadab300c5316d8a59f8f9397c968f5f778450369bcf118ecf730392e2672a8980a6556852330acb3f76d195d95623cf419ff726172aa5df52d5163cf1681b9c4274b2257c2a247f5667923d214e0c79ee66b1f7d315273dc2b5ff41f3728a619ed0145dbf36c089710c55e5c2cdc2c8296489f817d7f7d0e6892e8128a0e3e0ba65d74b2d50826ec325359617b7eacf80a48679397b7d9e31a225276ce0e465b679cd1d5df0000000000000000000000000000000000000004070f171c24",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 63,
+ "comment": "expand_s requires 23 SHAKE blocks",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "45c74c2f9d98d9343257f12d6ca0e80a4fdf0923081fed79412e4a468c0c1cab92c9d537ddbaddeee90b1da792c2288704605e285af67a1aca821c7115c34df21b0545ea4f8d670ac7a973a23cacdd150ff8f76e7957b98104cb90c43859359189d5c82b50e13f0328305676ecfe7e98a07f4d9a91482901fa3d6cd0b704199ca72542fbbe328eea284049ee95153b3370314c3275d76e81f4fa1a8a0324ccbbc23f1a98a511dc507d23352ec119b93b1c0b58b97ee71ed3a7b0b0783dec92e3834c7a1a0054f6b3f42d97e5fe5999659ad854fc859530b50af080b445187493cdd6094a0cd8253d24609bdba9ef471c03e620800938928b5a4a28aded028493867969096cf9d8378cc7930de9afcb94200e6bdd216ca5d5bc877d5607e633a519274ba5d79c22ff71cf54af14ed7bf0ed6b0570f652ac48fc268328cf822d4d30402eea1d506142d4743ea19ad82ef2c62e0f9e48eb104cc47db132ea3e94cf8fb13ba56fe098b96b9ec4d180f9cf204a62e58d11f640d311640cf1e393e8578545826dbb387a6c22596bbb0ccadc3de519143a4c253c07a878189693c26bb06afc8616fbefea67a390d5008c61c3eb67406553f21e340d4c950bb5409646a07f2627a7d0cf96a4310455b8366ae34e13131cd8bc39b184830a47092197525747840fd3f35bb47b308174d296a67e132f73bef36346b08db87234cd7a61df9452bc9689bd2f2fde66b48c74fca4d26e12d1c4613ae1198bd447d917d6a6f117e3ce42a38fa2ae2e554a8793f575387ad49a902544e20e1acf8973ad586c659b80f66244a658793186e2241469751de168386247b42c1f573eea4b9a57a475111d37a3724997a1423392024200f4adcd251021e3af6c948278e198cbeb5562d26ba2ebb9b0e212d34d54d9c618e222c7f60a17a634a7682036d3e467b737291ae3175f280459207210822ebf74c080449ab87fee72f9574efb116a0b1bdb9aa22bdd47d17a21aac5bedf9a3a80a56ee4dc57a079fcd3d7c33608e64b7a87482d2e1b061026df6eee3463a48bc1afaaa61a6087aee5864fe38a968b4c0e10fd839431cdfe03115f158a25fa73dc945d63743e3a9477afc388697c6291ab09d5e145f2ee9731c0de90e84ed97e48a5eea05405ae0d9a12faf82119ea5c2dce8cc118b7d584e3ff296f0bbbc057cae3be7235049bba5fa0887e6915758ae2fad31d7d26e679ceb4642a316694b3e26dd2a39066ba783d1f4e217fd9dbda82ad0ebbdc5c6c7a83ea4142874ee6fa31ce1f74f1621cf9775fc139f7819a386019d0138c82b5456b3de55f0086962f1388bd6a5ae7dc2e259d4fd7aa2393598baffb321884810e5c43e158286f031f867865ce4f2b776f3a3832419bc347570c0fcbc5beaf6a939ba995ae7ec35acf101ceef7d4e415d5abd977392794d19326f695acdee4d32b0b2545f70e03154c5ff5f5ed9baebbd37a93b3a926ec96ff2f010051fc11e2e560ef718ce7f9e55b4ec9e7fb1c000e190f970310e577b72b5d0f08a52175b466ba44e06d82b2b9a14d33eecc2d7aac8a5bb1e50a91a13dc3a7b80c077ac7e7be88ac5272adbf3e361a0d2ce87fbb860c4a4016204c7530104048242ddd11ccd78ba00c064afb51fdca447e613129a8e5e568aef7b13bf06d3990bcfdcf74830109177bf46f9beddc6b4e01aa1ae3cd9137dcb47e711e7b01319267874a9c8febcd1ab4f3abe7b4ba088029af6e4714c8e1231b9d819b7f3843673da5319299036664608278175c781a0517d50ba48c3bc7d480195236a1259ce8e4ca9fec41c96a3b2ac1a4314a2739e57368ac030b85d447090cefe997d61ed2e44a879f947541608d7296a255e3b07443110201f11c227ebdabdc04990f9cb46967de0b7448c9c2caed883f849115d9a7904fa2844b1fc4c81fffaa4cb6c93ff69f0012920d540c1c67f19e9e90c60bfa285b19a92930bbdecf2f12e257c2c0d6aa880f7609dbdfcc135f8244e2b209180541c56b8a870915c96d9f6110cb6bc8ef6485cb5d4413ea2e80a42aaa4cdba7f04815ee37af3809032a0651b897d977c7d2ee5ecee346f0d9e7848780cc90f5fdffd8c23bf3f73f0b3e53b385556b23a988afc86f99a9a85815051fef4b9bfa88ce55232dcee5312b1315d7b13552939b4c7964fae29abfe83236077e600a2a02159c52b90146ccc65881db5c900101fd48150778ff7b993afdafe2a03e5841c736264b9928d1ed7aeb7036180d86a17136cd62b9d8d90bdecdf2707cb4606b350ac6121fec880659b5726fb8ed8923b342bd22a300a6df4bce9b4f70c79ccbdf7c42c9ed3c5cea4bbe3823031c44f710053740e55dfcb7c488f600cecf1b5c974dc6e483bd0205f56c2a3a674c49ad2da1ff9e37cfd8f059158a1b15c2e81ce26b83bf86712ae8718a58c58cbe10127147b5d3aeb92162b388366d779f8a126a3b5bee56902fbc1f6a449d74a7863a0b6037ca5ffbac5041bce68a2db29dd6bef264c7d6f244de69b10aea5c7bcaa379ef0c7ab47f1bacdc57925bcdc12457ef1e737111877411b74e1ef77491661ab00bb7d38f51160a90d4b500416ccd949aa17ccce7161c3dbb70769b4953adc3fe64a2e45f0fe204a3bcb37cb3b24ca07fa6c4239710129acf1d98c1922f8fd8aa8ddb207162a1b3dedc0e390a4893edbdb690d9aef686c64147cc718ded608c329eccffbe338dca3a36a4c4e4ed48160699db6b78e25e54d0b3e551c080f3c2bf5b6b78b951de81bcb9724b4c8c66d5cdbdc77292a7b7a82481febb65e90557b2effd9f253dfe7208e5e0cb0234b566dd33837a0b93bdfce7d3322b54a37e0058c93bcf66303d0ecd55f16c5c0c68d20363b8179d4ed96305fa632d489dfd64624c4042a6f0a57fcb1afa06db489a063a59b7740f71065214b542c22d1744b6dd1167ef35bd45ac047945df7b0f67e4e6d5b7aec57b07f0f74dc4922905168849fe4c5044ee65ac36bd6095d56db2c6ed1749af08e6ab80560aea4c736fe610e4b9ab6eb212c4eadf0b2895222d4e5bd289905199eb4566e0b2569055b6d6590d9a3e4f647b7366c8793327cc9462fa3bb4d9b7d3eb8ed43a5c1603e0917c2a4b55dbd20b40bdd84dd379e4c7c3e4e7880ff32769633870bc7ebc79d6396bef835afa39539a327891b9037030c75a46b274353a5ff2f1761999b6fb214158f337f0b098f8bd40a8c8a592abc004d5f8134053047412309bfcbc7faf5dfcc0f44e766d2c7e7f651ac468330bd301e21ffc863855dfccc385c83f3c024bfdb732f596cf945a9dc724f85eaa5adb2237b41b485954162890e71e23528db0a5aad3ad47b9389744599f96ff5c7189271ebd2c12ea16000f56e0d15f0362acd48a91e3863a1ca98318266c3d63555ad96f0d188e3275fca834c20ae62bd97308ccbfae323066015e3a33169d05f4ff5068a645b9ebb7aad64ffda44f9d0580560d23850177aef4ed42064de173a50f5bfb5e5bf6d9d39eaf8d565f342a8d9880118cc1d069480bbd6cd615383f85d2e495c4c33818b6106cd241e16cfefba1aaeb5f631423c1d8ae8e6553a3ac5e8a85687c243e0d4318162dcb2ffe2afc5b9d551a7a755efcb96113f1e9b596180c6bec210f9e36a81fa686f5073c573191aa23603a8067bd441cc9d46dfd55f6b1b2c36d4ad04d96fa326b05b7526e43dde99051549718a48361a40bfda5073b8c95c154741f901007740fb0e84059fb7d085408bfce226e0cd08e0361f9cbf4b257d109cac12aa86a122ea823bb4b6c13eb74237f9499799d73e8d244288776ab6e344dc2b6dab89b7e0f764cb849473a168cdb92411b0664d76841fe5dfe477fab40997ff18c13180512bddc04f74a9a0b24cadad0d969677e108d0d4c9cd878415186f958d49fbf04e2e446f362e8c2359d3d7799f7976e490fe3269afd2302bc7cd3d434fdadeb459ac76b5dfef29bbf84814d1cf21d4c374ea12fe34c4b9186c068d7075bb05d12e702c5fd6c7e6a7da986d9d65031bf3fc0a43aa546f06e46785d63f02e965e5ffdbaa9ea7a092e1a149d3eee256da5810e1f565372b5d96a899f15ac7bb97a2cf510539d110db26e98f20056188177b5eba1e017ed78f60acd6c8ef59502a8b94776699a6fc80191ade5007bfa62df60c63875153b2305a8f9a05ac662e485f4e7e9673ca8e85d306d651f37d06e860c8fc50ec6199916b72b711d4ca74d7c031f03fd41bb7405c684b136beed4110bec947ccf1b56578396fd88a70f14ba683bed84e70a72779f31d7ca3d9db73ad4133779ac7790bd7e378334badbe2a148b2de5f3277b1e0b2a1b2396b88f1dec7e49f94bb38ad9dd509fe23ed46c0830ab1f89f04d6986cc3a3b373ac9bc8a83a37847d87321df3f5cd6eaadab300c5316d8a59f8f9397c968f5f778450369bcf118ecf730392e2672a8980a6556852330acb3f76d195d95623cf419ff726172aa5df52d5163cf1681b9c4274b2257c2a247f5667923d214e0c79ee66b1f7d315273dc2b5ff41f3728a619ed0145dbf36c089710c55e5c2cdc2c8296489f817d7f7d0e6892e8128a0e3e0ba65d74b2d50826ec325359617b7eacf80a48679397b7d9e31a225276ce0e465b679cd1d5df0000000000000000000000000000000000000004070f171c24",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ }
+ ]
+ },
+ {
+ "type": "MlDsaSign",
+ "privateKey": "fc9fbcbb96f54d5f1b2b71d060404538ee428f6785040c54adb8716adde1cb1f59dfd0a63e4fb3a95a9808fcebfb0c84b8b20a411f7285b8b3850b476c11204979d2799d6df4d8e5a7f2825bf6f3bd43386b274b67ee02cd75fc58cd0f2869cbac2aae84ff1b6b96914c77c2a9af5e8b2de072ed58dc2d33a38f6def5d07c68508435720201472080486071072225140154071406254246516651644268626534267402601257852003158236200232582071543662312237040405853815203555734167802445884807873584503853670635575061818055516733108507232777886116706058511715246252550725432815730282078355815683114252413586732752162360410645402744424624407028213337413210170373433816565071783778775524274680845814310304548827431510608668520448544883823327770572536234204024206486130860738263876452775532207565721450181018116734424873612637567171014376183855618762131245563161366232037671431465064683652082822573285627303186888831445535020311442428456081052323357460340418335358020447334887718686818184636475450505412200571476184434114013213167725068785002752436460617768027063782832086723461107827867878688160363216684300372433546351307615013714587680110027064787236474207315482553206723485332126471851236576246623032675367413767707366114046478877511162750463324471211057212500355750767063144358723340583780458617174404553813805457662814376026037463510142583632311153720868307176216376164614376284230585566118475404738550285368874043362841026311768344621867578515787736320756254386323728867710842544570740605283076325161664825127006078046314008355853430520731806651553577515031800888841205375748668225636887228332180537325175346015403824663581785672347425833278600507275576012745781650013084384228407507468318362701641860861721863755125037303240834858553575220152075020141476552431611646053457776103115101865706624241137547781305461343873462458034245345350768418470617683382570266101416160153326654827146171377528485064428282532214536068201712076370548031754836844356473785750656855403146554162108176065604437156448626132100318376706247323720684557115374033677170104046767157687268145008615682777102165746635563467532524213428354278306657624125485873424166240703003366405207051231482318423755402800244064075014070108512534745008050004304556256137771460588624803630453854554208220445260705886612083087203715857402113002552233525280244763481776207384025380023486067265540702403464341657345128723768680162566627727848287647450212585216114436350005320135156434628175283555007318010777107326163766782215465107412785452684518227565036851554036002028012151718237555428721118171724034160851302152050312422355036674818516043227213762626175716422512816320581870720366327370830578120836578680563608328370883448412133448336331465744621150007221704656341417484625520010254735235668864502105407806046803205272137525161814747750325022313460374385727735713472552327418350573247276642845385082856612562227805257657823816034507272141248205087048471643374171700473423242560483802450553672383224143305535872887522758226885401262152000755363277131022363601036708228216328346463220718342733478606016744481174286524323265131358307688215362854386713231266720320486616682686662687125760301700002634758aad61e3a9af4488a1c123cd3f0ab07be3b1adb710e99bf0f1c5fbae27884d5455e9ffdf33e444d3610af63fafcd6b7412a274d212dc67efc4e4e94805843f321744407954036604829fdaf08b87bb0d77ba4c9cf2df75e5c4fd5c6445a6281cc788eca2d1b9afcdc6fcf6988c980126223dda4283eda30238053d87a7467f60a5c60112f411986bf579bad19ca41295e98816422ff6381b00216762190830843fc81b605d161b761c64a3f735cf92c706addfde1d7dc7ccf0aaa00a697f436168a6d8de1e0eb8bd86b833b093adaa2f676a7cedcb89360ecdfd7560cf2475cd1e982da65566b25ac928c299ab14c93332dd08de88ce2917d983184d3360e13f712ba782f573f5117d1032961df0c0a60205e44d0c6c996512adbf86a93158e325bc2609de320d02ff17947a9eebef51a1bd242338edb519392a8e89559a63c01f933d82c74891d79bc9263f9d6d5ee7f4fcedce7e7137db170b07869950db7172d5b80b38b38beac9310b464f46fdc6dfdf24fd55d1497a98bed459c17035917b3f2fdd31509edb428b38645e0350a495a43f8802bde65b3f720d5d810e3d72653c73803d3a55efe475c676b521b2940afebaebce98fefc9a493b04a6ac12105eb0d5c727372db84af97acc181b4f0d393d3272b34c58213090c73ac1d9cfee89e6fce1f058f52aeb729ee15220b4dcdc1fb17b647f8bc0482a92c40f920c39675240944b9eceed082d64ae9b5cc6273a0392c84993c7d44047ca9562eac9f61ebb1c50ab1d30fef37b8755a05903e33ed5432e3927e02badc0393707d0356754b4e0b14664bd7861c9d2fb62e3a2e3171def78affe828a389be7e943eb3f3da29eaddc35630160d3a9af39fa4af34e9da27a7c99a5a64d89a05b6d1344c02a77bb22cb32ac931bc4128d24d3aecd8505f9849fd2706071e89daa80760abafce4ec4bad99874106738d6e6e717d3956cf11debe186113f2bd70aad78a82b1e06afd8f6f72d374b4755201731e0d2232086613460b0f28141c7ca561b1767c189c17ac0a5ca80b8a28bd06513cda588b1d2be8bf3ede8f6e0ff1341abe28e6559378b0fe8bc509e1b5f54486d4292cd48f95ab48926fb5e86791a4e532a3bddcdfea580eebe27b6cfe88f658acf9552c53574190dff488366b1cf080f27f009e23c56ff21e367b8f44c654420f158876fd43e3edb658416bc3a761cdf9c6d9319470013d17e3c7c51cc44dcae9b3ff0f95a699177c385eb3f683c7b54843bcc9e5efc4e9c42b9f096d92b37fe42b998db75baf729138ffcba70c0d1c7ad5d8de4b48c24bc2173052618263df7bc49eb67840a09e44dac1869d9cfb6d3d224390e217122a1fb33ac2ab7aeb874a7ab7521dff67f74fc472fda9ca88f95a957bd3863f83bcf85a0222ac5d8523886532d855d67f9fd316a3ef6a0ec9a18d993cce32f724297d360791d0431e62806a570b1df029ca40a5ae4ce0a86761c0348a6f3aa95f12f6be9148f4ff0d40b33a46609d4bbfe2432abad1cf2cad4e3462ae874a7ad32f0aeb4faa462231ad7b684be29968fe3149187783ec8956c9984df90190099441a7cfdcc07aaf75e69a4c11010b4656f9eba1fd32c7ede56fb69a4e82177bc4bd68f5c0576e396710f2be0450fe16f0f7afd8fcc6a1993e3b4686117c0474b9ddb49685f511db6078f0f2d8f3f33a08acf3f46c1112ac7a83010ada065dd5adb5741001dd1fc1c46312af0712de15546d6cce9808aef18a903adb4867884b978361ab2f58795392a5819627c4c1a5379db0fae158bd75880b0d7b9568405f67895dc5a229ded60b539d36c7b8779def39cdfc58f84e62f7d2e1108b82fcb7d23b4b84b712b7e88d47e94237da6a33b8ad88866f069d75f2bf9336fb684dafcfa5ca32404c7d13bd4f340276d059fe123a46ae143cb34b4941c589dbeb02e346e8026cd4c574bdcae3c1b85b5acfc68b792db68daca370e690026877a8c8370ceeade1e81141a3e9f5b85841d56e947e98da824cb8c660e494862e356fefa79968f4614bccade94c1bcef544a6da8bc9a0d49eb9bbe7c39a6f1f7128cc3bb082d21f39ac8f60f004957d045ab1261c2e7cccdf8cb46c3d2ad31740af381e96245de666381d198f4079c09a7368a514efdfc7a11b09dc533c57dcfe2c83aa362a617d8fb9f3169ec0917b55e369573021437fd94cc68426c59819ace012c041592fd070788c1b660c8b0da6a3aca83f95c9e8d5cddf9f425ed8ea5392734d93027f1e62f523bad5b7193268e136bdf0dcc2dbc2c823a01e64e45d6be028886c96a54074fb16fb6aea760bafb29b5e85794d0a6b86a75a9d5236b785f37c4f4f6fcc2b505a1d875c21ede14630e46553bc1459890938ab547f20d8f1e044c75d6360d0057e8288cba81bd1b400c935516413cd04f3a169178540a5d1ddf67a4adf78185d04d85792b988f7aa1c1fe66c9030bae0ab89dca01c300c1abd45c7cec9cd62219a4c7952e82d5c45b7eff1a3ea13d7114ca78733ef08a00c6157761cafb7188ef5310cb1566a4898af6fe53b4733ba02799563e7e0303197856d94f7644f935d84d6615b930d9decbaa4bfeaae695387a84226db09ed5ff23b935f89bc49ef37932a007acfaf7325be7a70112929df5820a8c81036a4ad5e453dfc03dfe1c1cf804d44e5c0c6d67aef6f4dc975c8ea842d4254d4c806bcf8547eec3e9ad1b5075db87bd79e71fed823b527ff7becebc5ae5bf7532a69b5a906e8e678271ab3a555fd0d52fbb170c8970ef4a1c668761d7911b98fce2e97712d20fdeaebf5b0befb3563a94af42800ce3e3da427d50a7e0e8085df3f3e76c304f57a58126ea865dce9f176634ed25fef31a7c7bc2cb15a4a267e689e1ec3ac4f3483640f9deb1458ca166b6b6d78c55a3e9f092bf9a429460644bf95ab0dbf3a244a228a5253b0d08cde29d2a0b4059604b5a4dd380766d6b3d633f5de76488807346ba9e0d92fc1b1d2927897d03a811ad5e4e05235694e442553b88be0646e8a4dd554f4ac3fbe3c66913057db8442f0cba10d2fc89bfbfdc07ca3aec700f9820fe5619d4481c62100add7c8ebcb53c27840d50dbf6b65994812fcdc3d4b58fc3073ad67a414ae47bbf5a3669cf18b44b967f9642d2512065249febe1e79946120ff1f6a2b4d403b64fd58e0730e4565ccc468d2b8ebe52366808e213f6c7add184484d4d4fae28d87c16c3e2fdb04076c7bc44ec90ba1acf4f2493a6dcc87fceceda13056295379d942492e6130ed694e257fe1cccbbc9a789593313c3ebcd91bda3ebbdb1aea5e50d6092306409c14fffa956daf30dc3824739c33af521e68a116239847b3f30eadd9cb72f0656bb2e4767bfaf04c26d78973340e9fa53e59ddb1b2ff8a70ac3b5e0a749c5a7133a7e273f50fa3ea22207826ade4962957c083202fd53b093783091df0b05d6ff4e893c6499c2affca9e7dedc8f56239a71fe84224eac01bf2d90b331106b781aac1d05e2c7cefcfe86e143d2d8ef0d5f0d9c",
+ "tests": [
+ {
+ "tcId": 64,
+ "comment": "rej_bounded_poly (sample_uniform_eta) requires 277 SHAKE bytes",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "447024ffde9346a213b39475099459ebb1de800e2879512a7f6747cdcaefe85abb973bf9e25a460bd9ee2ad1bd70a820d8f172e54eb46c78e95f860001323f6617d9408d2e1d25ba6826f19ff9c010fdbebb0c002c2038a178a78f652f567ecb5170f26601eae1bbd555aa8fdda21ba1dcb9e351620350e347397b96f2d29645f10b3d8945d636e58308d85205739acd6b94d671a3cd14678ad953218a6b5cb7b3222c2db794e0cc468ef45358505ace711352899851c324c12767e5a50e5288af2eb3c9402114e06e0ff0051e9aa0ca2c72e6fb479c074c04b2123e6d6f9e62d4374e0fb2c3b6662332c391f630dfe44c4fdb7dac95ca3aff5a427f3d7814bef76f897bf0a7cfd2bd36d9d49f87b870a06bc9dacaab0b129b6158dea464fea551ba4c5431237a189860fe228ec8840b5eb358a68f1d9ae9dcf90dcad2a8603bb7fabb4e387ba963b08e1dd41e02a10842b579bec2a2d431fb9595b4331f46c9b0db975832272ead202dba9be105039328936c939985d1137e2d90d55d4e6787ae2837ab48f0562da0e0e58c8075b4eb5dc9dfc97635bac8866cc5f13f984869a550a100f13f3f56a38b8a350fa4fd06207c1d32eb667fc6811c33db6cc428f620dde08c42dc2efe736aefbe59c167da7793f2bfbc6cd3aaed52d3757e8d7e44c63ae8f0852d73b5ba5569214c9c1980d3852a0b88d0248175f53e9d11ffe19a1ff5ff7e44f8a5c1074731c69198de1be50b7155b49b9875bbb7473983ceb447b2b50ba230f69155d7ac4e46a4e80762c39a97fd023d4ed38f7c425902b7f747a11d7797e2f4cab63d27ac2bcacb17d08ced68b7cc5d91c69bb8f80f17d9875119a741bec5757f66042ecd2e00847c0390170ac2bdadc769cb501ec8aa38c859441d98e5bb9fccc43eba593d928209245e6de8f336cc0e2680c6a73e5df0f554301cf852fa3dd3e7d5f720320d6b079cf2211feb3b2956a0de3f59bce94148dc91e9b0288445763117cd180f7ad089f223eecbcfb06746aa2796dab2e620459919cb4faeb7d4c0d85779f776593d6fb0877041d43ee10435cba6c7baa9931e4c4dc56898a36983312cf85a1a999bcc02cb26d091b3c5a23fd4061a09b44659f6d68b87b68d3e6c18876f9f8f8edb42210ffce4e4c6a4a01584ee1b43709473130166ce9d9890eabebea8c81d532c34a166dc9dc30f1d4c0546de34990cca8a5dc6269853d69f366056f23fbaf72be1fd469fee612fa9a75feb97c079c5c04fce08f89e8087249a77e3b0d73728e95749f7497313631ad95620f3eb3c4ccbf4cc64e6113c4044541e843832a32ad7e699a75947f8ab7e48cc65a060d62972b86df8a2fb0b4bb966193545c86f201c5be342dfb361dcf2bbd9f3a22a6ec498da9d9e14770f9b7f642314bc6f66954bba2b0c621be2b20140eb6a0f536c6178fbf631ae39cf1c66d01c35763141b689e6851d578b31083f2153ae37101bda7d5a1a428582fcc19b310fdbac1cecbbc3ecaec93d73083f9f9c0f972ce0e65cdf5db90c623405863a18a497fe23bb57ad71f64ba9fbde1e462ac28e0d7597742b2eec39741d11c406ae56248c3644f3ac44fea88050fb4d0af09b65ce58cf276b37731d21840f34a9bfcdbb5322d905d88476f89aaac0c3f6ecc7957747a8343dfd8981dcf34057746dcf440aa098e5d41b5c61ce15a72380b7c8a39c982c052cc1766364fe7eb94a49441014deb484afec1692738d50762aa0ebddeafceb7b9f6cb2d384f049a104a584dc274040f4ea030345f7f887758d10864d8c4b27abddd214be79c79b69084d71897ffbdaa0dbf5cec90f22ec07d4ac7ba12ae6ddb130ea34f774c2736267cb13178abdedddad0e0f889b920b3c4b3008ce7b18d4ff36e196b1e7d8dd043b58495e6b7dbfe22d03ec72dcbb250ebde631f43c556ab8b8465b3d76ea1cf571e6726d39866fca46a0b515f0d8479a028517f9021d757ef84fd8a8464311c7462262c82503dcbea392f88f19dafece39ca11b11ee3649840dea7054fb02770a7a46c15c162a05a6a2b5ea904f2ecb78be936e0cc54327564d6097510977807a48e1b446b5076176cd8be717380f4f02f30b5f2d2c0596f45d3c064ca4763e649c9396319eb09d37d3627d3ec6ea58df23cebcec0c9bb68861d0e2fb56e075f2aee9bb1aea052ab2c05ae746f80bab8d953f40cf18afce5f331b334b7531e472d942bc07e02c67135944efb5aa7e39e4344d365d719776494ec43cf3f64d208db184bc4f1239eca1b744055c12d4519905c66017a7a8f6d47b3f0a725222bdfde1c1d605d04cf93ef3733a7b9a5a54a0de03c66866bbfd24329a565c0092856e637a832275f6ce6113656a71c1f1ef90058afe1a376aa00be83e050169b7f9e94451dd6f493fe5caf02d6e5cf1d41c5e7539d2d70ca2ac35b966ff9f66b07401f25b259000d14f9e0aedd734b74fdda9b187bfd99a7c1d241e40f87027567316a3cbc08bb70ade50e75e349e7f3d023a021c46e84b2d44dcd04e6a9c2a5ae4ff79abc2805a5f71684b8bb661421008f45d9dbb86387beb93b07583d0cd4f4946e5c16d4b62154abb7dde8b771e22798be9c39103b5319442ae8f49d5e42ca2f90026ae62848811fc38f2c930f0b266b445c7828e3d8fe4cff57b79d168e51beeaf15c693518204f5931648702f81afb1841ea2479c8acb2f42236fdbb0a99cfe83cd3cc58ad94908d61ce8b953e433599e9a086d5655508c79dc26662950697348790bd0905d4bf616ce4f411c2f76e4f91c6159c6bb317d90356c23dcd001a43ec94bd8d808b07ddf94b93b3191cd3fcd8529197f7aec255c2a25bde0968cf689263e0a5cb19be444f36ca797376b013b244f510191bdc007ac33f3f8e73bad30638679bdfe3adaeef93ee24df4fba7c405b5be5ec54cb375a5b9eb19473e981fd08b6f7408fd00e6cf2971f63d4d4d4b9ed066318efd0523250e0f70562c1f2f5c7c7317f999c74680b811baba2d84153f7ca6d1c7d0deb5ed31da60f477754725725b860a64448cfb8dd8c107613ce6671b956e6fd769ed556f8bf8310dc2f167f621de8421dc13edc84cb9c05eaaad7d9d51a5d7b194f8c3c7082e9d53c5c7a88e1c072c468a835445505c990379d34a2231407a1035c81a0a546ee27b1b3e7908d4921bc70721911a2c0f5ac25ea8a81b2509d40f2c727a9f1d7f91a4378fbc21145320f1b9ecbe54283e1237a5b90b44c9f49edbbc9f8ec73af7e6e7ad0604b3fd84191a24b3efb2d07db8bdf05b742a65e7405ef50e47fcc92d4029f7f7be4c5e7f1b3f85d1b9a5cf8c14228318ecbc648fa7ae37b3bd3d3c33bed9bed46bcd47ce89650dae8cc2c5e2965d59006b24beba14e70b1174cc4f828f11188bf0c21d552f1e5fbb022e84549b05b3f1c2936014c1c3163269abab98508a5c3a4b0d282c6b91aafd64866d01bd8715473fedcaa36ca1f1c6bdb6caf82753d49a4395b3423fd33b96313ecf41d728a5a57fdb8d01c3be7fd831149a0e0dbcd323ae4af4d062079e0c4039a7d9cd25fe20f033e5ecfa0d34e6920bbc1e88398aede6a28439e700e8844d79967451a3771d4b26eb5d012a49a5f817651c1d752163ac517541ca39025aa428f38dbf3cec4d648cfd3922bb2cd2eb8e18ffa2adfdee5b9314a82800447ad55873b14d820192cb62bfde5699b680f2b0ff07e2fe9862128c17a8d2827d5aa73023c573cfe37d372b39c13b414b1435c7a4951cfab1d8c74115711bce198053ae6a3d24ad64600e9c1f50915babdb52dfee9264142b108312222d198810898bab5e09dd09a9a27b62b6e7d7917708e7829903fa5ea835de5725a83d034aaf7321f48afdcba299086d4b20075e0537bf6cedc0b50a1e2babee1090e22e234279d658a75142ccac00c6bacc16704f1654382681498908bd55c4919e841323f4ac8888f1514f4dc9be789c604458de0ced5143c5b1c5d3a64246a68b5c3620a5869eed93bfa07ecc2711bfed1d8d3e927aa16edeff32df5ec23a53e4cd0aeb9b83cd9e67ca15be9333960147c96bb33e7ba5c9816a34b93347273c49d14423566556caae62a2e5d138498ab7d45f5681df334e885933ed2f45c1f726b4f0e231526147f9a892e78a9442aebab81060032dded67709cb278c054d5339d29025abd25b68f32b5742c9e4e313c40293a32f897e96a9422ef349d13a70f5993221fd921d85d2e55c0517cc0d241119a9b248af27cfd6eb37f6d9551bcc7d7db3f53824dbe2acd6f1c261cbfbb346ebc42a17060a01c6cb89c95f048bbc62cdcfcbc33177f5020583552c4093b278179ac176a20451d4968ef4582854ad21f2ef78c79cd5ada9cf2fa29cbd63dd4259901f5327ed3cb92f792e12965352a2a5190387e7d47eaec012daa03b3599ff4713ec6c90d84fae59f45c99825c4b9d54e1b714ae0d13fa452da84b95c7ceaeec30e11ebf55dfe3fde91afcf54673390f35b5f4d57288750bc6e203fbd939b7d3aeb04af68abc9f454132920a95c45bd7fcb35ac27d1db2ba58d1a4dc425ed4a5d315cf63321d9e7a96757b29bb5a448b79b2a85883335458098a8b41f3bb7c42930343a636e8d9dd148bdc22d6283afeeff0817287e84c50000000000000000000000000000000000000000070b14171d23",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ }
+ ]
+ },
+ {
+ "type": "MlDsaSign",
+ "privateKey": "01c8783994aeca990b8c00ec3a55a898e3eb84efdba12db8f3acecf8ad5ab9e067b9cc21a7eb780521372d627200d56af2c590dbb49957876141cdd25b0973058ea7ca3a9577089fe7ac72abee0baba7e8744f9f859b2f93021b918fe28b1ba749b6e70755cc27cbf1d62a9c389bb07dbda12b9e7071deaeb88cc0c272f6ddb663321476001085384743437266058258623670366178656636858266080222504653735777708371875154744754513374847184285867618687622673436331277726344463674415474663327460631874565276646277645547833531124331674560837683650034506316253675614808105574215860160027778222064804254123621257156714807614317086784014763847678865736853011685043087165343146430673787075264762723126015145304378451554382618176761737261238801454636673302003635530180021634805108672320126866202632485356546234515650638841026782032587611788772563217008608563670246261137361866580427724122011651752304105587374821754610655876436376716830733337786467184476745751882420318227232242213023670476883536363113844286685326141370028813184384271158257814288460232324362750245323727821082214285863602626227855778311267882762638188817084053244006331312804582806783087261713563311076641473566415044148843857857845608112450282111062715057107416147237870520580026042347185423104825226885256542016225888002703127131175052048540015246220704385146038652703620471878676038706510680666811042845518750657234816204127218267307624388131377066652712657787832570081114771747464137325823112714006510016028276871472385306861712201708202575707212164510223353681413452672580387487363247377162163762460566877487376728582653585125462101742166267405131188542741581384720811051025744007537120852802802255840243238242374276182852473576601326075454806215573635151851148714256254827447873347528046062538420016233343323023547571652166142234342063554474443083754134728420887484260771174673024801132187413252455006567471022215517140124221055481565033352440403386213513215767578124853318563323386468560085238542223826700826360650802331740420534855741465645044842121303213840327234435517242432474484358377454103113241130433477373416275533874385663772635375086845531474357823408762411431135804157332843703050606712147853637458837104430635177781363161443334618486312600543427085837360515222884471058224685650653772581225403202005444113784411306862703464503713851742720670628670172288557105641155647166854886628754072621772110753533424243264442607288085348381863360586205765257568338380276724885550488567032076280648006717556588608501771530660554354048421832786148830755317623732520274662866786412524210004816231055254050251061315855802548351666314486331811347371043380158857068635118844228157744554212148706000117180757163041822011370257108103710385616171847426372546743102523062137246121041184242405551224618507545817774238682376540702082137716141805246521806063637114065814742237817541033357746258053321837021826745383517636317126634258470120587163043317176435503184415504616601201548417177784416336661788328255064621472184243421673510474726161687571024383687487004875642347664134735737343633821026004863107010733312810171206102674167344832157086351226744143188116283727681365436358278313673577608241c0ccc91395602f9c9d3fd4ac7cca52f8dc71cb288c5af5f05f74de26819489c9ad236f241b24229dfd8b815b3d84d5752d36c2bceb55e0385345b83abd82fb83d54f919953e84b4d0fb9883e9ce523118b175ff0e7a9d9b0906ccb5cee27a4189183f0d14d082a65ed1bf54a9d3983e85a7f664133be3b16556dd3c54c9a4337af80454d4d9e0c6810896a3f01e02ab3a00a87560a8a53f464cf5adff796c3d0a709fe365b72cb798e2e7a9ed5e4d8e09eb63b06a3ca94d8a6f8d0851be8560ad375a1f23620fa29be3b4891ed4820a18194b030a05397cd494a00ffd7bbd80e9b55169d6a64074f6ee95f8a24d968b1cde3ccc2818c15c742aa701febb1593922d5bc6cf855aaf9d1ad0892e85fde7d3feb22042515b82b44ef1a5f7975fcdccd1974b186e3c145270f496bfcf96b659f98f5099f6332e5f5f9dabe241e9d7c2907228addb2f10bd475aa375fef09d513b554d3ed76eeef8152c53bd66a470ab7d772f107adb09fe65c592e877cc99b843adec1744b9906aaa8ee21d564811a6304021e4a316aa6093f91e622d03c145a58d8cbcf7ccc3c8af547c3a819e9f0c9929ac387dc60bc06630ebaf753256747fe4d68fbf25a49655b378d94b6ae165eaf69afc2e13b48af859a634c556b9cac08fe790a654dd806d4c07122449087c3975b65e85d65d9e6203f2f53cafa7d7629a3b0f85ba4248b33e49465a77fb3c46aa42bffe9fc01e930fede49f38d124fd28f263ea3d88781ee963f81c99d6efe6ece931d556344b9e30e26067c1dd9276644ceb24f9c129d470fb2e6b472aad086098907dde3c74ad50eaddf6a3cd41982345b12387ede1b65486b9d376cdeb94c464e0f33911e75612b349f181e448436aee08d4caf85a9ed8d45421ccc0d7b64554b1fbc973c69305564e80c562907ae7cba86c8a67e56a051c3bd9f219939de29625d2330c1a3273c174fd31590b07058a1ca585fc4464808297cddf8416f869339724670a6ef64df873e9e7b831721089e19ca81d8fbaaa6aab29fcd7b582d093731358f4db8d4b1afe3484d504b7bb081624261cf537fd2ac380a35dae2675ca0b369a771b1b34086dbe594762d18c6b5063b48fb540f7316b39854e7ae6ed9c310e9b2f76df40310f558814668f80951123135451b1f7f078e9218013bb034d5da69a110c7bfbb2b4d1844f899dfdd56f6eb33cafe1f3ae9f0517a25631ac589acfcb1c17f3ffc78116dd3f3fad540a38f3830256626558908caa474ef9afb9fa2702acc1578064ee332127aa94a4c42985a0cc4a13edc07ce64791fe822657b42f970d3def3f7cfe93a55f027f1260a8c1e384a9f29f02bbf8f7c54192c03f434df195a1dc12574fb625ae521c4c9c8ff8c33696696d6bd0775c4cea7e97a95632b23bcf01bb3ba9637fd4007f90cce0319c96245ac6fa8877fd3d5dad2d205b16bec2b961b027b02acb7a48caeac6728949651c3ca2364c45f52bfbd1034f5e49646ccd3cdde64768d5b629d2e3e8a92726251f351107e1f27e65723c3f575b628a7568580bdf535631a9817d4b7a85158eabd0e9b05e6cedf95eb13bc3c1b5b9b110bd892104ac043d99129321b646563e92e7f71ea161e110bc9a1789acb1661ca4b348306ffe9887538eaa705a67acdc119ec8ff0e5fd8f2f5f3d2895132ab98098ab5b81def1792bbcfe7b7fdd2969ca7fd6c4f9b03b4e0576eec2220141684e9fa8d08d76ee6ef7c87986989844ef65112799ff3b77d0817f24e9ebecefd0fc7933a7a62f4e51e7abc4e18e1d7edf6c4fbc1db40099e58f0cda1380400c86796ab759baad8968469263936ee6f743ff70fe30f4b837fdfd97b67715217fd44a8b6167a9bf6f9c75a0d2f18b5bf05d3640d2b69a5688cf37667541373ff40fff63b283d9b1325547f515635a18f3c520d69f20b6b43f13f71049b52a5aed9f01c132fcaf8e89b3499c2ce094c8853fd104abfc75ba61accb90cc20f9952b29ef22a1d37c61c4a9e7ccb8e191441e329ccbe9b957759aaad200c2056509b30427b584d44cd8017d33a5e489d728e8d46e1ba2548c9ac9babf9e8e84bfc4d328530af88b69437cd29b6dadd80bfca18c1476810bd006bebfd6244091050871e01f7ac3265cd431692108b08fbeef64b681abbb001856ea3dcf90c6fc7f6a12c306d6a3fdcdf9a078f5b0be6ad2ebb7c1ba8b0ae661fa96cfe525245c578bf5df4f6d08c03aa5e1e7ac2ee3df7695d2c588e0a0faeb8d40001c8238951d4d7c54c5003646e4f9ea5267472cbc5e5f6295045be341aef5d000982e8d8f2ecfbb51aeb4b3f968d71538ed870109de1240cc1039a85932e57a877c2020f860113b2d93d8968bdea1a80b0c3e287bed8e507031844547965ee9b6f8ffb8b0fc175771ff9cf4185b87fb8e70a1e1dfe1c166aa11d724b032c78fc8dc8ac90ab6cdcbe0e086f3a4c7a3867934f67e7f5a313cd5429918e5f612e30cef1054a2684f8f43cce784ae4e649223c99dc26b80c5339718e70a8d96a37eff6a0f9f42ff4fc9d79ea471fa43f2c3965dcc3cde278f948b64c7b22b5df7d0d263411490c2a4594f4547fb92152b9ae25bf3896d3922f5f9a07b0836155621a95d7f249a5f81115c2f8a00355c3c17d942fe56ab8a10ad62ca0606942ece02a82e0ecd280ae110b81e1416afd8ebb9d52aeca7be510439e111c9823b4e22ec365af0b8b728330c2d9f2165ea951276036a231b36db923e92c2db22d7942a9c0c284f2c065373e1816e81c0a6d46070a1af9c42180273a9dfcf749e11e1bc80c411fd1956d0c349ed6d19576083709b8995ec04e4b1322c9f3d98cac84c29dfb1567a078930d4f7e60b544fbe759277b3b9df71961ac8967fdcf7b395aa6bd7f35b50fb551e59e8ff0a7d93953544a36406a88ee6fad7ff9b7f7c7eb216728003445bd7bf8af2c8c0488442e6cf35a141ed9d3fb4a667dcce49767f37e3b60c8559a7a964b053cec816ed751af5e0d83b8b6c598b3f7bef3ffd721dca4cd979bdc13e398e13901bf766f5f54014c6b9df77c15290ee5a0df1a11f911960e2cbe821533870af14cff6d9db63783e56995e68dfe696acfebfe8ff135d91d19681048e0c91f55a7e11bb35df24258d4783145cd52968baee36f02e7266b0766bef03b8f223a2d128a4f8ee773078ca6247cf07dcdc78efbdd9c99caacba5c8004cc6940cd1ef1369450df4fcd5157ba44c3cfb95ce6fad4689b117df9c5e2d64e371c00bac2e0fef00da16158b30848a0bc76257752463cb4dffc2aef0b30402756f370cbf197ab5f121307778982e7bd884268f32f1178dc811dd3a8535e711497bcdd6ae58aa12717e85a7c380982bf21f5ebbfaf337ffd11d41f3e02f642afe74441863e1691baccbc9554281ffaa7373799bde86cac556f137b25ffa7782471b91feb4e46cf1c89b1728285f31d796e1251322a07bb313ac5fb66bc379359cba9d444a59a66ac4554c0f0040ac702173ecd6341664daf6c1628a78c371cb85fdc8f7",
+ "tests": [
+ {
+ "tcId": 65,
+ "comment": "expand_s requires 2649 SHAKE bytes",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "a6d86189aa75e8618ba96982c40f35622405b0d0b2f6621b7d7eed57d03eae4c03f3b9ea48a6f4f8d272487b4da8ab4055dc26925aa8d5636537dacb2042028ebccc9613411756918f9b699242445b23c1169a8bb525e1d4277e90a9ce3f68075aa9bf3634bda8b7e6a763df2f614d8fd9ed73ad5936b08fc63cbc60f4625626fc5f5afe853829098a13f8267aa6a76a9abddc1f4da58023b6be547d1e37ee4a220bf109233bdd4402c04a5119314c2747481966d106c333434b03fd1c4c37d47e459785cb50e4a37c0293bc20428a51faa666452a3f60f88ead932b74a45feb3193bf10d323364cf807ec7193f038770e0936bbe1d96fc758cdbde7fa7fd5b8b58d2ed25064500132edf8c8a0238f0ea7b55da8cc089b4ec03cce9e78af2e710b503b5ffcb95e564caf089aacadba9653ad780b52b6f0af8d44cd8aaa5ef8713851e691392b9998e8083131a9139b6939a90a372cda707cdab2423e72ceb12e1138ffd125d4ce5c2c69b601ac6b97eb77b30b51b64cef96e75f267cec817dad9a96a05fe91301dd58586a37c74f914104f5a8cfddb386a93c237c35b5f616a7615d58ebbfa71c3551685368c04497a3946fef065fc39c37a656ae2b6689563fab0c321a7c2b92c60eae122345145694c65ef7aea65a2a4060997465c0bbff4a71d811cfbf93edb022e50c99fd92394380559e78a5db34b513c37566148aa40443e31d18e977bc35b1260343b8e32f6d4ada3e60d084fd6adf097a20ea75abc810d8adb436eb5e3bcaca06b1d0852e9301d7d961571529a777cca4429cfba1e8c325aaf6bf24f6c8b8123a77843f8080abd9bf441d717aebd483f1cf18e102b042cb2e58a0bec238cec8b5cdbe61fea4f9c6bfcfc0bc022ee5f50c7f5b36065703f2cec29a73795f0682940126b994ee873be25ae55d430b7a671a9835a7f6fedf4964a09bd1058a5151747e27430be0ccaadf8d2f4d3e6aee2e699cf06052f77d0f9c503215a6b2004ad69acdc8747ed63d5869d8cf3bc9911630f64cf233c932ac71a098a982012ec7e25dbfc042004d8f530b9d9e24853725e679b6b751cd7bf80b25e4734f41971938df86e2eb70dfa80a2aa3e31ce9393737c14afd5f7470790f380bb8410aba8152e51d070e71a84cfed8192bd9d3ab2ecfc627fafa891e93bdd5d0224f67d857ec37ad2d5b3ec6f9711081b3bfdae4d05c0b36c70f35b3df8b174ee7fe08c4929e9c5702ffa20081ba7eaa9dcd8187938c93efee081b8854ec3983f9aac3a1fede31da432086af172a6f78776a37a61dc1ffd8e5cf2f1dd3420d8a1dacce8f44a2faf76e892bbc4d3ad744f745a7b5ace2e1943bd70d8f366fd200b15431e20f73074aa1827d59dcd3714c36d10f4b5e0b22e2e1794983e53d21b94fecdc73dcdc048df6796b4b38aaa4414fdbaaa656bc63aaea5c11c3a7c11f8cad30f678547820487959b9eccd27e96b7ade1294875ca071956196da01a9802309e27252840649ab35a3b344b178aedb82c6e3741f1049904427a6d57c977c41c42622642ff393c7aa178918d21bc414d58c81ca8953aa680f2cc5fe7188038cf1f4a0b6fb257e1c414275b9a74caed761b83989934953a19baf98a9575c35e52441487f0b7d5645215159fcb3b7b6b193892886024c508771cbc4b3f120810c7d126b14922d6f386e25309bfb4c1494f6eb4c9572e40856150f00cee661e67e210d24a147ad19565bda14c8de45a5edc77a4865e2b90fcdfbb5003fd90d7a758cf408a96b05b6237b0728e41d5847ba118fd8d42c4843b3864e3bf07c0b7136414836ff9ae6564340d4ce226b1b608b53ffeded5c14e91aa39f869b602355f5754c9c30958cbf426d1df86a498276f130e5b0e3c1862c440ce6e41ed1d8acdcd0f305a66769590244d672d34aa4b72d023332f5788649550039975e467f196cb35a276b6fcc394043ea6924ed262a3572bd354b3685d98e87ce4a5038f3961e89764359c5a507df56c18b030eda095ef6b3568ef010f57949d3633f397a7a04c319090bebec19f521325f0d8b7353a210d462e5a3e70d768c1e8037f57b51b1bf667018e354a14b6cba7d41a23d85d1f2e0473302dd840a085fbb0ad85b19d3e569346a9407329e24817e8a374156f87d2b6b5319f5861addcabd1356e712fe3757ed9230169e51c0f3234118d20f477314514e5aeec9fbeb0ddb58404df022acba911ccc5e727475a36dc9709875303807add451004afbdb4ba7e3ce36bea2ab5c10dc71fb0daebd762a93067a465297c83d5f49b12eb2c1884d430b24c3866c900b5ef882b0b819eae3a5eaf8290f86afadcb24e100fca7538672b9a7c2ff654789319070a363fb6de40fd79e7d2d35afb5adabce11df381c70c0cfb9369af2caf58871e2c48020ea23e7d39195c1d7792651077d8daf2627c0576facf26b7819f92d01cd2375432740cc3eccf93e67803b86802f176b8dbccaadd98327ff492e5a6ecf2234ccd6fab3cbc279b5ceef49cb4d93008dbd9429bcdcb1110db7fcc828ee02f66b7da8cc80d2d6c5f4fe98d8e64930c7c4d5dc20715ed88a6aced33e9b275a8b8289566d67b4f9d0364931f0462a253efd5c1e6db9e7f79a999b5f60819110898d07cf59e6c0cb39cc252705ccbd381c7260a23804060af41d1a0c57d4e684bbca270c608b435082ee5137701f433f3e99ccb3aae30a4451ca36f0a7319160d6abe4974435845ef133e3711ce15b46e5cac0b37cc62a4ded418e648deaf27019d6ff0b821bf8c0eb0d84b531ee8d98f14f4b7dccf6eb550a525746c8eef4f1d234318dbbd2969af3012d44768dd40d2421756e076bc3fc70783de3732de15bd68464f20a7980a58eaf6784fbfcdb8306e10fcdee3aea4e9f9dfc08549b9915b0df736c337e0f918913756e97e7029bd00f5f6d946de70235cf5ac260bb39eec3f71ae8dc19c7bf54fe03c6f894cbab5867bfdcf2568ab8defa4a15bca7421901f907b726970192ac2294b5a90bbd0fcfc2185e819fb0917c4e83dc6088377dab0a080e036c401a3de501764b718990c8514af6994024c9328d0068802e63866dbf911ef1fcc05a4b831df906c2efac9bb79df60a34def5bfdc6eee7425f1bbb21619648c8f4b01d8f047debe8b1b08b1ac090bf83d4363909886b40b4f3b0f1ecd486bbf7339a4a04466cc01ef7c5fe2ed61ad912b3f447b300bcab8849917c05f8c3b8be383d7f46909b2fa0ec95dc1f77e293cea49806a581719e983e90e9fdd8097cdb92788bece98aebd951d666c22e6fe06444048d674e7f8258b22b38695843b044213e0b78b22cfce0dfae13954900338c66e216103255e49691f3f36dab6aacc9d83ea5f93cb544509e0d75c92bc7637374aeb8a0211ff989e493d893feabac80644ea092301f07ca1a1febcf0276d00ea8627aa19ac3d1b5a374abab473b13b79c202dd555fde622fdee1ad6856988c59d000b4e96e1782f42ddee2f949ba17285a7ca4bc78654ad66068d7a2f4bda254748b2685966a9da2e8ea39bf7cd8b05651c6ffd7b61cb29bccc28b7bc072a6a2e76b1005ff5adcbef1394dd4ebe4a9e47dacdaad90943aeff3336180437964085e28ff94837871179745607d11d71f4f2a04441e981b7b4d3c9f85475c2e1e89eaf8b8b2ca3ea3bcc5aade6cb406b73290fecf015d36c5e244d3bfab75c7dfab47b751917158fe333321b495478eeab4ce2cd91173ce2bae318fc3d6906f10aa86c0abd975ba889e958e9fb4fc6acc846bf7196f4a42be5dd51c4d7b5f80303b0b64e35908d7cee503749bdd67d3ff633169dd4bcf39617de8067855a4e0acb680e2879795960931d3102011ae6242423abce1ee4012f7efbe556c68371c75b857c5635297f3ba7b7e5d6f030f13f9177303501ec67315198e7bda9f3434bccc060dd433f1dc4246f491ff255752d8cb103e278d5f35546502cfe85321a6fed500749fbb51316175f062080a20d3f52da159b448df61599f5754ca046dae3a14e9e03525acd9a1fe964c8caa9feb3ada82320d2fd4bae1525830c0a3eb91cb454f9dfa43c6534dfaf6a7e1d2b19d527d4f403863518f63246889614972e0bbfb126ea0b509f0c78278ca1911797fd5da6c00c8b6b212a511ea9bfe7c45fb742a109fa40f375490c0b5e98aedcec7076e1ecfa567ec3575cbc0892460c52e94d9121c4a9219049b7325f300f04182373a0f476f91a18b4ded3ace3d001900f9316d92be485b5dbefb54fc2b6ecc79609c03b149bcf2558ff915f49bbc691b45c3983fbe61b09cbe7f17bd4365e7461ff2388720fbd74ae451f61f73f8c8b51afe87e8684508f7d64ba03f2abaff47a30ee51f32e25b9d07371f578df432fdd95504d64be891762adaef094318e64a5dd86eb81decae2c30c8fdf3ddfced1a6f1a3671b6687765f9fd93cf66c52b8986c5ac3f78a8048d969fe78d057f8779a450c4c7cf554ca935c9f7ad781dc3f50ee6ab1afc087f35e02889a8cc70a333edd334688c70e85e5e33d7509ac4cd6e854791cbdfade909fedc5614190cff9b7b4f62951fb40fda1cf62ae77d00cfd450db333f4c669eea1877afb5babce2f70733396777b2cfd1e10304272a373e67698c40475d6a8dcdec141f999eb0e3e6eb0000000000000000060e1720272f",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ }
+ ]
+ },
+ {
+ "type": "MlDsaSign",
+ "privateKey": "b41031e429023d8b0bde433401da448cee6c25c6ce0d570f91fea2e8e0003b8d74fbdcd92e10a4c402dfc69e0f9a8606306c3bcfbbe54ec85e67a2dacb256ab7fef57d4f9dca6821dea0018711b3356eb35b26aa04e4e24258a425143a41461a9072917c2379147a0f5eddb581b2c2cc8c5ddb0988fbdcff9d1c08c54fcd8d6308187180323332756114621031072627086111387668451517673476308050226401431411002078314320423167445105586472837160068503711651538612002474738156771546158213203634075076627856673551174036874814672276057816182646567057838472217266464286788175223883547355604825160203284740031876124021606828645257287557536283685447586264235741522524203562786368760756626425648646301601424461344720655563085148701581538725563116434750016583787202244706671656673360543022472348386355555216740876053423145207220215288173773673254851848843544367733877367684487546272360147888585062266725530267303827303330722865600064858167053545155847718656562817220613665676265531417768538725827652265147840676841185282152102433418210682713282074058278783774832155473821247506618216626566867772460343644300857213703782575258360453511208113564123347842732384425714052332685838235276140847553510686853588183647620142084011575461180651773710873788051162231133551203282062663434133720131214726826358244448642423066650700046703701165582687044848075445244378345475630155306748508628514414573817131227848117084130108806520477762153526077440526152061718677170211587781767386357087370373546246868176348642114171346466802285776887407548463043571252705273448318775685804388232083342344318526671208685586657233167087274604642575167281425403628454588035142888023158866486354451766232612253807626146002020687740653227166855384628658488552172473352822758416218056646564887688525016571324618580506235085356136623061587126233634144808168776666835652146220745411051087080675254553611328562201757380152442582026728077460687662702730163323344587228282266180028705510081833570608060460561814416388310480718684566834250182344024141512131824564345764225113366886020557736555015867254537141460332463400038080232260884007748535462375132555608478026286674331012254577082372650150743346620632153142461751843512725203645573416203086678847823547075440341236307636683765155035855388325230212466688650848266447774187762550543165086481685166114275844214757615002211585172252045422351822350485640638787260675244484488533545681306107455850048827064173728530377256055386482335626160385474622143280244166215544816121532246616727547420711254521611663025850838555761055745283275766360537451722384665566043524462602412465142360362618885705481810822765762370758274210003446007848633018138621678428488637668412478162585226721120871703455314018886714200087410810471111736637502733516078034784482313173143201720463014387511766151684721818776150764721201276223766122234542135551203814112802641134277113538458182831151888280720407357067600528185433068807774800015204222346136551664505410340801162768715705860206114026018454151640360351626715224114084513438212270103416885145676887226254837585228402210556431316580770507816355161352215424028137545704455312621082860656805056687321652606651264631473767742691d0f2e9df43be04028c83c8ae866dbf43b6a7f2721bb8615814c673837a4d2f4b3d3d10220bb399bb3f4ee10d2ce1ea47c159b728839cbcbada46bc65336ceae50a5ada6171fc8dec6d491ac82a5a08a6ad76568e6c8ebfa06c251f4bf9458c665d0a493f10b5fb9bedc9cba828e9eab11ab0d06677bfd1d7c97304fecd25675f43d556085f6c217da1a638227d05fe3917df0b23b2a2d46a77dca2c7f7f5efdb9fb56443485e15a3525f2b07ccbdf79ca56bd57bd1966eb183469f70199ffdf3be28c1f4ecdb5441a43d6f69312ff7527a4d615aa9fbda8cec198fe551d4dd5be279689ef3a23e8aa37626d82645d7bf60ef38571aeb82d535f97a948e8f44ac7c0c049d0edee6ddd2db826433318ecd7139c79064dd47c6926d9582bd5f786452696362d5cfc282770a355a535190b8605789af94f27ba3aea9081cd9fe01c688393dd00b6c2c187c91cf661bfda0b7845b2f371f0d0d4856c0794cc67edfcff61e6de306725b05f4c0074de49ba33d551d383372d94756cd105b5ccc332b7c6ef979c325383d7d1c58dd6192b14dde5fd99d8bab007a80821400afd1c3534841c88dbda4b0ef8b99bac3befc2ab7b6350b1a018379c526759712817c86f81bb879cfa949d03172d48930f8061e92be0d9cde261af539d9cee6cd619db718fd182690879a3c7d6629f4cf0c789d7188209f8126bfd0e962f58312019116b39b213199ba6f59885cf07ffd43aeaf58bf1eba74c0dde3a448ec5baa425818bdb0291abfa875bab8916a20a038ac798d5b501e1f1a63dc3ce8feda655098d5d8d7809b30f360fefcc4e0044ca327939b3badccf0a0e4e176121680e995364c33a170627d1d53fc32fecd3f0465dd491c452682aaa681ccc5b1d4aea385aff99a9ea0942148e11fac22b42ab4e4db44057f641fd8d29a98dd1ee48892bd205048c2d4c498d693e24649d92300f627bd66b107e2f96848b22d475066e493cf8f29ef2d573d5b34cc39ef5235ddc64d0449e93204a0989a3e19d548cd2d91ed9abf424c907399cb7a3137a864a9fb9da11928f56ac1a1b2cfd5629225d2956e770e5b909d55c3ef626f8ea4074973f8215538d5a9962cd7e7731bec405cabca2015d81a0afe6023975c53a265e985e4151f76f88c56a54fc0201445d6b9ac320268d68a570501973ba985f40cb552d15f89a4e7dc27e1a8bb821adb7a3777f8c809fd8a65e2d9f74e6fd0f852febc06c0daac57da1ca921e258c265bef9351473527414b1ee0e2927bba531ffe1ccbe9d182724e7f53713ad62d1308f5a81fd5176f038a5466204040d4eebedbb1fdea6c43b97058c9d54c8a69d76d6ac78e5acfd722ee04e9ab92dacc52df554aac42476314fc8e2f4f1220045b1baf619346b83c7179f5d2390cc7cf3e7d3d2425598413df5c53b858e396b3f624bb0054427c7bda7eb856cd884c130e56d41c31a9a27648d5c069fe20c72a2b8bbc85bf4992c9fff59ebe900c2d56be65e708b2d901e61c3b98f30994af579ff300e35851425a7d1ca3fdbd4099d1b1e8d1668c623111b917ad791e61eaf2248f7247315f59b13584105e29abab6029672dfa35bc00aab1b220f816796f3e1aaa457c897689b65328f4cfafc9cf7f2521954b5b965515b132340c37ff842b81b80ffa1b8cc503b260e032b9a982071e30a9c57797b6fff48d1cdd6453594eafd8dd0630408c61a1d15cf1ad4d4ac7fbe9e45dc0278b5912f9e69c3cc107f788f2d4d0c3bdf9d403cfc61eec18d56772e00e7c5de9f32ecbe5912324ec78e6d69004b75700776e24395737d18373d9e4fd1c1c00aa3f0c457fd745aba8803db533b2b6351453cdc686e4932a7f741fac51efae11a0c59ddc6d7dd792077c7ffb7491256a00a2fee5c0fbebfc59bd1ea227667afbab3919c953c9472785ffd4cf47b3d7da0f7f6c54f9b91cc227467dcf56440a2578e6fcb40478fcb9fdce30ba99e3e44130e96bea69fec0f4acdda029f20d46430c950872f2adcacd0cfdec153b3ab0b5249b4969a2a598f29783f40a6cda4a3d6ac5944e055a8b7f0d24bcdf94ebf44c401ccb7e9771c03cc0a8140d633daf2ea7db8f8bc6eec0d4596ab8b0f67bea39766f630d9fb96b26e123d5f195a5f4cbf1a2a1f4a40819413fe4cc30c39e85c0aeadb3a12324bec0fbcf4286ac13485b2abff0454d08e996b22a0f03403cb3f5c63dfb8bdbfcbc6e965899bba2c2c6e0b32140c9f8bcc0ebade8ce0ed55c7735d3a134f5b1c03dc0e51370d2ea2b74c09340e6d788e0c92d28978718725d48482248cd5d9fc2fc5ddde9e692974322355d0237aeeedbddc9939cf8c04de6e2cdef6bd074768d73e3d363c3cce748fa54cdd1ce809dd7cc6c8d523f94a8c2af39c7d2e648581f6cab89d60f4953b23aa3c2ec48898c62d1c00df5bf376a54bb8a3e5fb6681f0053f5220bae37a89dd25c0657829a34aa3d4208bc055525debf8451f04e179a271379e79f9fc092b282b3cacea863961c2a9584c0d7f5f8c222f3dd305a38f8928826169a6b9c9e1612063049eabbf3613641e9b6741dc7608732053ce4e49ea5c3404254d83a96db1505aa3717cae23d14d57a0cbe6d21d6b3f1c838011ac5449bdc687d9cae147930ca299bb8bde55e1af6ee63dfbe75f6995befbcc6085c3c797cf87d1bf3285ab67f354e5402152c25e98caa6fde3cd8123500c9a37dc2dc26c40d81a1762671a59c1dc2f9eb12045ab2acdcd2365a559b7934c26416156bc1c758170fdd4cabb1fc2c3dff093f4f9fe0ab33479f3945653fb0f30bc1d736e3104b54c3ed2213f8c608f077445e094d6f56f683fa361befff74f825edcb4694aa698d4c16d522a879d915b84b84e41804129d0e34bd0dd66bd86323d9089e2d18807be5ef946a146a5da0143b0d4f45027967af7165abf19d451e3bea099d6c7489fe754d347811d7eeed06a5cceded556e25156795b6a99c34937ce94f60cd3f13f1d32ad079ba33808a40f66bcf4722648f5b1bfbf9340571a6ea21c4540099e2de3b79f0a51eef10cf60b19d91ccb54dfa05190acdec0e23255164ca3592ce3eab4d8ea58f69258c5d3053dbf949e7a4f8229ec3fd44d07a0179718b7898bfb8a755d688638ca344b736dc359ffbb0ce169a7076d21916e7dbacbedf8007392f4b6d3084997d39a265ad0f56d5fc3e6e275d278e7fec6097b1c1ba7f351aec704fbce599da7d2220cf1aca547a8254f9770fc1cccd747d691711c5d0470873584e378b4ac9d85986115b149ceaa3936e66dd4290220cd469ebb7ff0bfbf420f47a8ddbb3e11d102fcb417bdd2b1f6106f364889f363c588642eda3c11cf25476e72c889842458ce265379ef361b367e321b7ddf07f6c044f42b754a03b6918d75068864573a7f11eada4c99a9e8780f0aa35bea894a410351419aea02ef35eb96ff9f56856fb3c5217d18dfe1b13c348051ee35cad2a40071921bbc5dbec7180368311f251e75d7abfad41c2bf03b9bed7d847755cd1a6f9bd",
+ "tests": [
+ {
+ "tcId": 66,
+ "comment": "power_2_round returns a remainder of 4096",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "b35a9d26d3cc6ae8bb05acf2044555aeac041165b78f65f13831ec482972193f4ce7eaff57bc166a11206ac59e51f798b7a0b3776e447ce2941b99a4e0f6238a8a5f3487813e1cd00260127a67f5fd09222668f3edd5db27f9f9223417f82dfdedf9ab5ea6ecbb325f2bd4669d59a2bb8634f2b658d2d3362a79454372e2f31f81e6de020436f9bc21db4e2b368a448aa15204e170ceebf7b767290ae3634b094e569375efe46b71c0ceafc9af5eab65325403e9f7573323ecaafe5f0a7b34f3de08f124da2e2075b2295d2390b41c737b48767782a83c09d46d7ef1cfa8eecf154d35cc8b68fdd4cdc10c04e0470953221962cb98ec479d80461d9608f6f489cbbd6266b05266a52d99146d76060155a093eac3c3580aea48f183bc95aa2b77a00bf5f110ece9fda38a344a20eab6be2830006fcdc5cc5ff247c357a639f665562a527a99fd1c0e69b37d5ccc50c65c27dc057d6c7be4f970b01057c612101dfe9fe6bf23b621192c5e94a8b411dfc3bccfbd11a94ae05869f711f1fd8f6ef9b7f9b1a9e4173b56c99b05bb379865ad9e414fa44e6ba4f67ab4d93fb045ca0316ddb9fd92d1ee08c3fd8e490c7e533fd1f761355c72a37d9b7d4814efcacc66c8af043560287b54004ab30b91c03d8a510cfd5238cf3ef301d8efb042d331e3c2ea48876b9dc9b05f2e941975d247defa4f8cf2c7bed438ae680fe52ab144e7bc9d0926eead50fedcd7aac60fc342cf566671e84b02285686a0e9c49e5e05807a6b96df521c38905ba9079e9aa6673a1ec2208f8b2dbf03dab944e909b58ff791facae78e429a60dca239df3e00d48fe4848033d35b5847fb9a78b3364c9b37b7e0a9f3c497e811187f26ccb57db5fd669dd4b5bf127b5f01e6a9285b607823a82062a096e0b8911f7b0543aa6fa36b0c2a5f29fce780cec024560938c61915873beb6bd642d67d609bb43f9d8b8a72859fdb13f42f4f8ab60bd23725ddca6f586501e929d9b889dbeee8955be8d3251d41c46db3ddb75b880210f447f40c6dc5bbc52d22d2c4408d68a0d8a5adc2a2c9d7348569e858c9fa5254a03f9f1e973c66752c6fb0f09e32e8a587a56107ec4801d7c1fbe2b9de6db7a46aac7291d4081a53c2c6e9b1b0afb4d5204961553f23dad621bec8078edd3031bed2651f26eba978c2d9e230083d61f054548090b8fd5f9a31af5ef2fc2f5b7e21345169e869cb8d2707d1f7dea43f1770f153d50e03f838c41ea4eaf4679d52f23c6d41727c9922bd611b185bef46a220a0a76c7ee1d45cffe889af4331b9f6b9665830ffd9b3fa335e4d0d66bb9f1d835d7c123abb334daee683116de8e4342d11ec42a834be306f1b39ce24d9cf838f7fc8ebe939abdae09f8ee7c10adc56d26fb6a928242537d372890143605bedf8c601b031fde9cec47bef17e4e54a5d90e470cf4e826fd69193e94a21e32979c368fe9ab7dc1e582d02759f7f6b8386f4b005f3c4e956ab528b8436714a132c667ec0f21fa9993d37624d8bec1d9d759f28601afd8c7467247c8bff3b35d0fbac82604ef25e4b88ea05f700222baf0b633623467e0b191d88c1bc550a1dbef2813df92556f48c99cdd22557003c3c8d39cfb91316a4b13a078afd5d52c5a8e07009a88aa93ce463318d89a1cff5ada0d1609cf0df966b0ca14beebbecd9079c09467c1139ff8ba25adeb114dc51f662d76105cebf40ec1ff82879c8e3a653343add75ec4d75ddc6f6b76ef85092085b8d121ea81d875b362d95c4e28042df3958f16c7218215e9039c1cf485ff3154e46d3f9825a8e1f74e2134dddd56a81d8c1a21121e2dbaa322926581cb75592b99c9f90568f9b6e1e36f0fdb3a9e5dba272403375e42f3a32342354a798b26e8f295a9f377e022be8485513bfe6cc05f896cb62292acf714dd81d1e87ad89b38bab5532e337b2f326fa6cd508ff2760bc2501d729a66d1ddfbf9d622757c21b2a5308143f198eb02035adf90d44aebcd12fb161515025198a26433c7adf75f6077cb8a536826e18e4b80964e97c6354455306f3c5b6a8603c7bd2302c20faa46cba18bcd57437f474939643d7c25422ad36e56c3a80cf78deb62d9ef3b2de60ddda3a6c080a39c24dcfe88ed6a5c974a5dfef3d4b524d425bafc65dfcf4d045a1d21ddf393c73c2806ed7200a86ab718655f8951a1516ee527cd407baa36e27c72e97503a3280104d92f8248f1cb0c6c0d91b262fa39b8056796f954150d1a0911cd6c7bda3870ef566ded8d656f2ade63f13c62aed5087bdc1469eeb64418ce7af5fc50b721575e99df25432804306a89fd33c0406be8beafadc28f533e12d05bc3ffded1dd59cdfaaa54bc8dbf75b05f72b3dd555172666faa87602411ef6d97ff3254706b876844ebb3948f13e62380df05f67bd13eee4b8a2d7fcc53263072273eab92f8b7bfa64371b58a412bf5dd806c2b8054e8f6efbceee0700e20f6e4e61a6fd6dfdd170fa37e6559362e7b56c9ab7e27cfea2bbbf19c1815e1c863fa24c50ed465aa12583b345ee4007e9677f5f582c9f9377e5b0b12f34ec4e8f4199bb7a683142f07daa27951466f9d608389c17c5c50cd99834e5e975304e2ea1f6b6aca94a433294831a8c5e14dbe46017932035041cee0fba54f87421fbd14b05454543cb2e95046080da6ddfb81aedc37e51d0b1c3b6d036f8d97f8ad4e7752324c8bea832cad6f8afc499b35164b71f497d86d54c5e0cfc67cb31e01a6de5cc43b42927b20ee57b1267141eecf85bcc94c5469f68176f8313a706b2b1ace776bdb69c2fad7fa383dda1895c36836da08676a1a2ed697843f135c385831795ee32a5750fcf08013fbffba54edbd4ed3fafb6f5552a389a56f41f68d1a721b7b344f9e74028217c39c3c2aa1fd9b44b90173de0f986a3e2fae6e1cdd3458446518b2551a3d3ff4294dc2c217bfb8b281b42acca144fdf8c1ba08acc10077c06dd8cbd5d4ae2336cb02cc400a1f49ec581d1e2c62e1cd21be275be4257105836aa99631041b999a16d6d57c1bda6399aa50adf0d4fb8e1229d8531aadc834daf90408fa2120ccd2d39df7f93ea12af0873df00e201b4bd6851ccd931a23e6589f4f583772ed426ee324105d72a05e308401cdb99b283c93cc518ed7c98f230d3605e987b79f8b20d28f99c46850c025d26830dbfee8230234b3efac3a3ebcd322e84c604782830397697bd1308d07d24dff64f7e453dd0eee7161f7e376c7f5e108e04f22dcafa47278be38a4754bd7c9b657fd9aa77a76cf9889a2e6f0ddcec106db418d7329686bba394ee09c23629009bfb10b360f649e962cff1b0dec8d47016cd15a068a5c9d8a721096a61e91b00bc28816f96d4fb7229d77c4a9b3e23ee56f12cc973bb0ef158c0bef405bc6483797aa1d4eb1cc7b2e1e34365b99d3b970b8dcdd7655d143fe6f4e191b2cda90a1e6158f55553af987edc08a78355557c3c36a2fb530c5badc5fa786e6a4feb041caef1fc0e18283e00724362305ff84ac5478b4db29859b980f680b1ee2486d07ce2d2b50264f693351d2c7e03de1922bfcee5dd7103c9b5c3f5426141f293bbdf920431e639dc79e63343d48480354204e920bf276dffd3b2692ed4a9654c294e1c0c3a0eeee84549f227250a4bfef594ea0c3a68bc2c6619f85d0c96b01dd05a9c076a7a2cfb6d0e3dc616147d3e7eb7006f2026040ca208351cc2f3fe3a7e72d5f2ae2c18ad5c80e1d87d439a1afb4672729ae4d04ad517e5a5dd903fc1cb5ed3385a11762b5a4e5d9d7fe00135e6857df3bb623cc5963f0573d858a0e62d31d5ecd54ca5eb4f1344ff1ba7bc2544e7140c5a2b9c3b604c88f0253e44b31f2543ef0e682c5a50bd2933f8bc22debb3802625fd8963d373321a0088cb910f51762e496f50d822b9d445780ad78f6c8143dad25cdf555f6fa49eae6841fe8e721437c7f541ffff6596b7b52770f44cbe33e1ad00857a8d36c0ee20de9c9e4d8b4d183418c5739c1072230007c196a2f67135591c9c81cd259cedbafe7178f28ed9c1c8f72e6669ab9ca2250c919e29bd71a618f4ce5cf4eed1e1e13e052fa0279fc5e55a4e9989c17cacc46a33e39b40e29580dd07d6ba47716a483e99a02eb36fa3c103694ebbcbe9310516a56ad1f6c0863ee6cb316ab68471ef6cf8612a0e6ab593f85744564a450e1771df0523dc7b3a1e7254a55f1e71dc802a98b8c60e795d1b50af67bbda06b3244372387bd3e1cea4b660a83644f08e9ad4578e431c3b560dddfb4aeb36ffa993b411df5bd9dcb13de404f818aa051bae8fdcc8c10190d4f0c7d398a0743ca53a388120d5616042c0b1ee79821e35b7717f021b2c28e871fdbe5a4c06b1a4cb38f4b3950604dcd9791904212502b91e4e4b39c9b805fa7257dbfa632ba272ab4de9cc3fcd0c4baaa5c231d959ef27d68b9ff3a473176533fcf5fd26c0e90b7d5d65d4f8a4a374343df23e823cabf48dc372f7d508bd2eb0454a4ad59061cbd1b0a57e777f2473ff769e5c91b3e05af375fc5123b55bfe419e975153193bdfbaff571c0e7dc2df2e0d60738f8214a43ce6eb8880f2da4ad6a940143597eadb4b6de022329456e84a8b5e4e93d9fa9ddfe040b107ac21e4e6178b0eaf907114472a5e400000000000000000000000000000812171c2329",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "BoundaryCondition"
+ ]
+ },
+ {
+ "tcId": 67,
+ "comment": "power_2_round returns a remainder of -4095",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "b35a9d26d3cc6ae8bb05acf2044555aeac041165b78f65f13831ec482972193f4ce7eaff57bc166a11206ac59e51f798b7a0b3776e447ce2941b99a4e0f6238a8a5f3487813e1cd00260127a67f5fd09222668f3edd5db27f9f9223417f82dfdedf9ab5ea6ecbb325f2bd4669d59a2bb8634f2b658d2d3362a79454372e2f31f81e6de020436f9bc21db4e2b368a448aa15204e170ceebf7b767290ae3634b094e569375efe46b71c0ceafc9af5eab65325403e9f7573323ecaafe5f0a7b34f3de08f124da2e2075b2295d2390b41c737b48767782a83c09d46d7ef1cfa8eecf154d35cc8b68fdd4cdc10c04e0470953221962cb98ec479d80461d9608f6f489cbbd6266b05266a52d99146d76060155a093eac3c3580aea48f183bc95aa2b77a00bf5f110ece9fda38a344a20eab6be2830006fcdc5cc5ff247c357a639f665562a527a99fd1c0e69b37d5ccc50c65c27dc057d6c7be4f970b01057c612101dfe9fe6bf23b621192c5e94a8b411dfc3bccfbd11a94ae05869f711f1fd8f6ef9b7f9b1a9e4173b56c99b05bb379865ad9e414fa44e6ba4f67ab4d93fb045ca0316ddb9fd92d1ee08c3fd8e490c7e533fd1f761355c72a37d9b7d4814efcacc66c8af043560287b54004ab30b91c03d8a510cfd5238cf3ef301d8efb042d331e3c2ea48876b9dc9b05f2e941975d247defa4f8cf2c7bed438ae680fe52ab144e7bc9d0926eead50fedcd7aac60fc342cf566671e84b02285686a0e9c49e5e05807a6b96df521c38905ba9079e9aa6673a1ec2208f8b2dbf03dab944e909b58ff791facae78e429a60dca239df3e00d48fe4848033d35b5847fb9a78b3364c9b37b7e0a9f3c497e811187f26ccb57db5fd669dd4b5bf127b5f01e6a9285b607823a82062a096e0b8911f7b0543aa6fa36b0c2a5f29fce780cec024560938c61915873beb6bd642d67d609bb43f9d8b8a72859fdb13f42f4f8ab60bd23725ddca6f586501e929d9b889dbeee8955be8d3251d41c46db3ddb75b880210f447f40c6dc5bbc52d22d2c4408d68a0d8a5adc2a2c9d7348569e858c9fa5254a03f9f1e973c66752c6fb0f09e32e8a587a56107ec4801d7c1fbe2b9de6db7a46aac7291d4081a53c2c6e9b1b0afb4d5204961553f23dad621bec8078edd3031bed2651f26eba978c2d9e230083d61f054548090b8fd5f9a31af5ef2fc2f5b7e21345169e869cb8d2707d1f7dea43f1770f153d50e03f838c41ea4eaf4679d52f23c6d41727c9922bd611b185bef46a220a0a76c7ee1d45cffe889af4331b9f6b9665830ffd9b3fa335e4d0d66bb9f1d835d7c123abb334daee683116de8e4342d11ec42a834be306f1b39ce24d9cf838f7fc8ebe939abdae09f8ee7c10adc56d26fb6a928242537d372890143605bedf8c601b031fde9cec47bef17e4e54a5d90e470cf4e826fd69193e94a21e32979c368fe9ab7dc1e582d02759f7f6b8386f4b005f3c4e956ab528b8436714a132c667ec0f21fa9993d37624d8bec1d9d759f28601afd8c7467247c8bff3b35d0fbac82604ef25e4b88ea05f700222baf0b633623467e0b191d88c1bc550a1dbef2813df92556f48c99cdd22557003c3c8d39cfb91316a4b13a078afd5d52c5a8e07009a88aa93ce463318d89a1cff5ada0d1609cf0df966b0ca14beebbecd9079c09467c1139ff8ba25adeb114dc51f662d76105cebf40ec1ff82879c8e3a653343add75ec4d75ddc6f6b76ef85092085b8d121ea81d875b362d95c4e28042df3958f16c7218215e9039c1cf485ff3154e46d3f9825a8e1f74e2134dddd56a81d8c1a21121e2dbaa322926581cb75592b99c9f90568f9b6e1e36f0fdb3a9e5dba272403375e42f3a32342354a798b26e8f295a9f377e022be8485513bfe6cc05f896cb62292acf714dd81d1e87ad89b38bab5532e337b2f326fa6cd508ff2760bc2501d729a66d1ddfbf9d622757c21b2a5308143f198eb02035adf90d44aebcd12fb161515025198a26433c7adf75f6077cb8a536826e18e4b80964e97c6354455306f3c5b6a8603c7bd2302c20faa46cba18bcd57437f474939643d7c25422ad36e56c3a80cf78deb62d9ef3b2de60ddda3a6c080a39c24dcfe88ed6a5c974a5dfef3d4b524d425bafc65dfcf4d045a1d21ddf393c73c2806ed7200a86ab718655f8951a1516ee527cd407baa36e27c72e97503a3280104d92f8248f1cb0c6c0d91b262fa39b8056796f954150d1a0911cd6c7bda3870ef566ded8d656f2ade63f13c62aed5087bdc1469eeb64418ce7af5fc50b721575e99df25432804306a89fd33c0406be8beafadc28f533e12d05bc3ffded1dd59cdfaaa54bc8dbf75b05f72b3dd555172666faa87602411ef6d97ff3254706b876844ebb3948f13e62380df05f67bd13eee4b8a2d7fcc53263072273eab92f8b7bfa64371b58a412bf5dd806c2b8054e8f6efbceee0700e20f6e4e61a6fd6dfdd170fa37e6559362e7b56c9ab7e27cfea2bbbf19c1815e1c863fa24c50ed465aa12583b345ee4007e9677f5f582c9f9377e5b0b12f34ec4e8f4199bb7a683142f07daa27951466f9d608389c17c5c50cd99834e5e975304e2ea1f6b6aca94a433294831a8c5e14dbe46017932035041cee0fba54f87421fbd14b05454543cb2e95046080da6ddfb81aedc37e51d0b1c3b6d036f8d97f8ad4e7752324c8bea832cad6f8afc499b35164b71f497d86d54c5e0cfc67cb31e01a6de5cc43b42927b20ee57b1267141eecf85bcc94c5469f68176f8313a706b2b1ace776bdb69c2fad7fa383dda1895c36836da08676a1a2ed697843f135c385831795ee32a5750fcf08013fbffba54edbd4ed3fafb6f5552a389a56f41f68d1a721b7b344f9e74028217c39c3c2aa1fd9b44b90173de0f986a3e2fae6e1cdd3458446518b2551a3d3ff4294dc2c217bfb8b281b42acca144fdf8c1ba08acc10077c06dd8cbd5d4ae2336cb02cc400a1f49ec581d1e2c62e1cd21be275be4257105836aa99631041b999a16d6d57c1bda6399aa50adf0d4fb8e1229d8531aadc834daf90408fa2120ccd2d39df7f93ea12af0873df00e201b4bd6851ccd931a23e6589f4f583772ed426ee324105d72a05e308401cdb99b283c93cc518ed7c98f230d3605e987b79f8b20d28f99c46850c025d26830dbfee8230234b3efac3a3ebcd322e84c604782830397697bd1308d07d24dff64f7e453dd0eee7161f7e376c7f5e108e04f22dcafa47278be38a4754bd7c9b657fd9aa77a76cf9889a2e6f0ddcec106db418d7329686bba394ee09c23629009bfb10b360f649e962cff1b0dec8d47016cd15a068a5c9d8a721096a61e91b00bc28816f96d4fb7229d77c4a9b3e23ee56f12cc973bb0ef158c0bef405bc6483797aa1d4eb1cc7b2e1e34365b99d3b970b8dcdd7655d143fe6f4e191b2cda90a1e6158f55553af987edc08a78355557c3c36a2fb530c5badc5fa786e6a4feb041caef1fc0e18283e00724362305ff84ac5478b4db29859b980f680b1ee2486d07ce2d2b50264f693351d2c7e03de1922bfcee5dd7103c9b5c3f5426141f293bbdf920431e639dc79e63343d48480354204e920bf276dffd3b2692ed4a9654c294e1c0c3a0eeee84549f227250a4bfef594ea0c3a68bc2c6619f85d0c96b01dd05a9c076a7a2cfb6d0e3dc616147d3e7eb7006f2026040ca208351cc2f3fe3a7e72d5f2ae2c18ad5c80e1d87d439a1afb4672729ae4d04ad517e5a5dd903fc1cb5ed3385a11762b5a4e5d9d7fe00135e6857df3bb623cc5963f0573d858a0e62d31d5ecd54ca5eb4f1344ff1ba7bc2544e7140c5a2b9c3b604c88f0253e44b31f2543ef0e682c5a50bd2933f8bc22debb3802625fd8963d373321a0088cb910f51762e496f50d822b9d445780ad78f6c8143dad25cdf555f6fa49eae6841fe8e721437c7f541ffff6596b7b52770f44cbe33e1ad00857a8d36c0ee20de9c9e4d8b4d183418c5739c1072230007c196a2f67135591c9c81cd259cedbafe7178f28ed9c1c8f72e6669ab9ca2250c919e29bd71a618f4ce5cf4eed1e1e13e052fa0279fc5e55a4e9989c17cacc46a33e39b40e29580dd07d6ba47716a483e99a02eb36fa3c103694ebbcbe9310516a56ad1f6c0863ee6cb316ab68471ef6cf8612a0e6ab593f85744564a450e1771df0523dc7b3a1e7254a55f1e71dc802a98b8c60e795d1b50af67bbda06b3244372387bd3e1cea4b660a83644f08e9ad4578e431c3b560dddfb4aeb36ffa993b411df5bd9dcb13de404f818aa051bae8fdcc8c10190d4f0c7d398a0743ca53a388120d5616042c0b1ee79821e35b7717f021b2c28e871fdbe5a4c06b1a4cb38f4b3950604dcd9791904212502b91e4e4b39c9b805fa7257dbfa632ba272ab4de9cc3fcd0c4baaa5c231d959ef27d68b9ff3a473176533fcf5fd26c0e90b7d5d65d4f8a4a374343df23e823cabf48dc372f7d508bd2eb0454a4ad59061cbd1b0a57e777f2473ff769e5c91b3e05af375fc5123b55bfe419e975153193bdfbaff571c0e7dc2df2e0d60738f8214a43ce6eb8880f2da4ad6a940143597eadb4b6de022329456e84a8b5e4e93d9fa9ddfe040b107ac21e4e6178b0eaf907114472a5e400000000000000000000000000000812171c2329",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "BoundaryCondition"
+ ]
+ }
+ ]
+ }
+ ]
+}
\ No newline at end of file
diff --git a/third_party/wycheproof_testvectors/mldsa_65_standard_sign_test.txt b/third_party/wycheproof_testvectors/mldsa_65_standard_sign_test.txt
new file mode 100644
index 0000000..6597ead
--- /dev/null
+++ b/third_party/wycheproof_testvectors/mldsa_65_standard_sign_test.txt
@@ -0,0 +1,503 @@
+# Imported from Wycheproof's mldsa_65_standard_sign_test.json.
+# This file is generated by convert_wycheproof.go. Do not edit by hand.
+#
+# Algorithm: ML-DSA
+# Generator version: 1
+
+[privateKey = f5408337d0fee65c28851226a5fa81b58464632c78e2a9bef70d330f2e3a5f743fe2130a9185402b9ceee616adcf0aeb1b0adc5b7bd65b8469d9f73abdd491c7659d92d3c6412cab96a2de13921e6e28264326efab5964afee6490ef637e546aa6b61aba997daac4623b0ff33b4bbd1a11b2942500c737263b5a7b599c454d8442073855220447142672283106762324611334160331766716756876656306340247416643645788214401245418430332335014484266482863377264642414206877226544283410340543730247627225170453086122730061663720413006672700563545553308822632620516184200008121626450075764267612441006130131054105366434124552571655324024583437672387040523848872722438820242507702366302474748842265201861837063577540747600354316761325342724414244818807083666356763458818178730038860216678417556380528118134053806822634757706213780383068245037164828641644088712486666263228563278454077257226514241838623545046705775223416234252343326255430503041432773656045076111030080425435056385571604503837242375546781881637734567572558705071178084805270422810171125366178026263016101361657832287864742571181540760851116286862663367644442262567158480021516651834322735675322048815731072442030787610367014103700472855221118750731347147044142277174111214348353566824008064045627684488722675430832058628153456611117540326632627423710448122776364844470152004860248280007708325718482525552264175551177652286873852661125522335557583772044467545176204662306421267463234564162341677110818645117237332101582140278868362167651433830007175820104352222533408675507171265571436206825831530330505138722014332544414101453361865663285823831165654236338452842635115828271801121281582618708170531302365851580567783463004004872080286853401722161683240507540174321162726623307704357168735441623362805550771378557544025577664653883727145477726652161328654636765354441580462755002525303617004457666056523833318532171037664380506224158805461788342412558636736557807030038168058241037440287466117173258168248137753751448321557734277603877752226522005384287417756673375054253360826560561501724117752720403752166506773562110186547571130831846605687668266432088723466508134167088157733748882573483206443607642671007311272002682616013071771238832745526182648607836043640787500384324825714344453303465740312784685175588706426626253688784802024002168480055006521746017031355351420356313376038357500434586744155331653510137233135501164040340443180537652161358720413477471755650162313051181844240248360407773704517351058764775404747121083306411352302550060311617664848461285205032215087833220558462453850275140274158215805155381750850757850271010637641250528012682211173613444785706268032670127024707747567314772632848841668565545456641117066848041360116507056675046470163210801085300085527862576471877326436205146166232414075335513375673166307774724018723351488672332685528233522486007870307457262016571753124063541231514175538351737543321726247362412023101043212535074048080016006886215511021520172701460518406542024738500552450424583471822538241124124282248288348872240758184343246825136527273210452765138144072540628287154522674671801747806751802628540570743817583756538088277258068473227163621044527db3e8a7b37950eaf9af3770bd6b8f8c9572b54256463bebfcfa8920624daa12fccd1c228c4668f688976a5094a00b6e30694ab2e017cdc2d4315a381bbe84ee58340cd6bc6fb225ddc2bf8dc117ce2be59993e5a521f5296126f290d10097bb2b9f171ff3f5de8a5047e76a15594c3caddc7c0caa852b8aff91f435d3f039d3f27963c357691e9c9ee543f32a77691f8b8ad98d711f8191f5c9891f593d8c754b07621a42cd25a2e95c32156a356f7bf71d6a3d1be00c7364741f2eac5d0c5fb3ef93c6339b559c9b2c4f518927fbe1b87d49546d0c9ba801c224a1cca84916aac512fbaef6841f725c72b927b55d920bb9b8df4e89b9b09da7adc24fa3f9834a8a0380bd42f07801e4afac2bc1e852dfe41b0903990289190ddcdcc214a680e0247938a4b54b704bb6f0affe7ce2171ab7e05f8cb96abc352e44e9b9f60f6ceba0ff95703209197657d8228e93dae9a9f478a30700a6cdddb4ad484f963afacb39a3186e94e097fa25ab149c4c438458b24369f62f87159396f37de36fbcdae2acc7b996a90f66c6de64ad905ba6d4508d3c453e7d43ecb7c8692244f3de88c975046189a438f61a1a84e8d0eb11f93dae6c80dee63c2a3ece5b794483d60493a84dfd4d267eaa205ad0b9491e656e267eec42f5d3094982452ca10b420552d684242bb72d651d47e96da49077d73dec8fcbaeda2ace53156bb4d4392e21fe094a2a32d3eb3d4163ab50a8528800464c05cf2db162da56dc13e709844dda7cbae47ef8364c8c3d5fb471f9407bffafef778486c304088801624aa2318433459b4794f4c31ec2cac49d56504602db94a5b882a92b06ba9ea1ac40523fbf4ec1dd473c076d3e397941c821895beeb4b5fd5eef9246ed1ac724a2aeab43c56a6584bffcf4aed0c6629d5a59b719e5d677539c3dd620d861ee7f9c0a5f116a17e4bb3b16a8017e668612c1038b576e39dedaf7d848d02024c0065f1b896ad6594af4477c73544ef51f3e612c80f11150b1f394b9fd899fa6d927535efaafb745133a45442241579e57701399ba23b0ba62a2ef13b5eead46f02d2c5a91fc031e458be09a8b5d53d9843278590bf556e2258b371f14f07cedc213302ecc895e15be2eb0e771e4b1d6d10fffd2ab945dacc52287e8667ecefaf3c959dc5bc18d0d953ce392acaa67e3f457630cf266c7665253c3c04cef5a73aedee0cfd06efc300887d4694dbbb717f2813737d0fae91e434922ea831ae41349e44ed0fe9101309dee68c1337f050e9e16113e8ba47877202b97113b3b876f4333ee620cfe37b69e597162ad40d78f5a7be33ebdb38b9eb84dea68e01de157c7e74f4522836b64d146f719df851b60fe69cea4667daa057bc47a47248fc3073a904239c0f8757cd8aa52e5d837fbc6490a0ffd9a3dfbeed09c24c61e48df0695d8f37f5670aca01a3fbb2a5fd3bd57cf38c453f80f9de428aa0d860b13231c5b2e435905bae792ee21e6104535204f9ab1f90d8c3123e57e2d01b0091ed089b9083438510579190478b86980370bb0170992673394509aea3a64d241b0d5388614282c4172796b00bcb034769bb492c0fdbc88c1a30a040d637a7b9c496f620114546133fed394ab79413268027d5418bd61e6ce3ff18ab83f76ea0a2e5694a48c01931cbd1c4bb02a3515ba3fcedad86e74b2848902089986bca91694dfa712b97c4f2878f287590aca47afb18d1ee6f502b90749f8ca1d796309c5bc96f5899f70fe0b4b5061668e62891b5285546f0dd2176649e5cba2b206953c7b66c57fe2e67c1c6e45682322d82c569c543840722756b7b4c92aa059e59983fcc327833931556346b83d7519b3a6b93691e74af6d26fb61bac9cce2f880d1f194d084171809bef926e99218f664bf18f58585985534281b6008d86f48f8c4044a4e4c89f4f08cee869c6a09b96df42d6435433d247e9e1150ac5b09da7f66d4f2eb0fc7f8f22bf11a0b03c9958f0562030d2c93b1c4a554e86b00f7c2e464aa54fe018bed4578f3ca0ee8644c3537b86da324703e7779fa897fdd4b867f7620e7fad29957f28067524ea180380428995ea333a3f291fdc67f0364cac8683e199a9a85c7caa3cc29db52f84aa0d0d07d5677d74816873e0af727a8555149d41d40a1eeb5944328a23b1be9e55ea81bfe461c86bb1fe3995e9f8dc83a77b06257c6356089bba2bd44e2a7acacf6de34262d22b0f899d0abd705637ad5ed1de2691e498851db106f1bcdada3a2f96908d3774f661fe2e8ec3ec598b936f4dc4d04b80efa4f57f3c55d0ff990b313643a8126aaa14d898e338f5a261ae5bb17b854cb1a87ad626d3b4ee29c567baaf409ad53891f707c148f49ec16f9882db396d1f140ba9e8b0c9a0cddde6592e5e82de0b18dea363e8605ca364aa68ebdc5f3220b810125fc787d339c6a5a68c92cbc64b5d265ce7a03a06a2409a8a18f000691cfbc5b205bcc1926efb589b82a7404d1bedf09e88ad286f7711a6d67ece4bf76fd86556e840d73f353d31b4d1c3dad5e83f72d540c601983cde7171e67b805bdabe3cd6788e30938b0398c1c8cdd5f8f1028f123d2d612611ce15f7637d2d751e59df171a4014efa4e8420bfcdb75b77c63ad1dfde967d4cd44792d1868d6df3c5bb5f1f3617861e24ee6fb58c33e6b82a57b29422dc0c5aafcf0ccf44557ede0e9f7d32be95f4a214524a30d37b85f1783c3e77b7d52e8648afbb9a03435c59d6afc2ed3b6ee434620c0b368ca6337cc7228916c5857d1bef27502014a0798ab099a7d7d9f053175b9e94d4e3736794034bcc92a842edd555dc74e69906a8021430655b3907ff0d5af127c847902c783e5e51bb45a3e4da6bca417774417fe2cd5d8448c5422eb55ebff2a44a378d528ab06419e6ee4ff6608eca6b44b8c71f55faa714bff9727dd3163b090330713d90813375c88b8681d491527f89b87f9433cce8f6dcd83fbf4f00215b3caef344b38ab4bd9bc5e3dcc3624fb60ce34acd7340b14d9ab48df15b1cc839265b791a417f90cd463df719fd69869aafec64df9bf010498e8d6397e1cb696fd68b38ca9ab1faf67b7123ad01781ffce12a3dc2b703cfa73dce16de7c3a09eead7ed6a644f96ae33a4bf179122906c969e99d9d99dc3472de3c48e80be4e9685602b23400bc292ad6f2fd34a2afb87660a010fec11d3ee82c164fb267957b6651d9150cfba16650952f8f8863709bf5644b0e4738c45199824511fae580548c7f655f0bf0bf3102002d80c2b2c3adfdf358f2a38346032120519b31dd906d3e26518b867d1dcb91caa5567976cada346044dc8e7274c0bdc0597556ad059f711868b83b8da5920304d08cdcfd3d5d427287f5b637fb7e2c14253452915fd6c6614f93c3900c6b3469d7bd87e2e5f15629316a7e8d4dc12ac80a89bb8c6ae7238144f82792bd04c2e741beb130c2a5a9caeb09e8f02b1480ad42486d0d8e5229072dc139115493c2c747920ad76391dddfd66feac8744d5662014bce98728b8d]
+
+# tcId = 1
+# baseline
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = 69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b
+flags = ValidSignature
+
+# tcId = 2
+# empty provided context
+ctx =
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = 69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b
+flags = ValidSignature
+
+# tcId = 3
+# non-empty context
+ctx = 436f6e74657874
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = 3a1f0e89fa72e489e2c4c1607b0f22ad03513725660d1ed7cc9a6b83580247a101ff45480e4ba49b1feb3bde46952139d3e1d34d7da0124e8ffa05bd19698be57ffbd5c2411f01a0588898cf4af2b3f3e1fd83e8befe03806d91869eb496c8ce989761da7190e036eb2bd14a8f9e195d5ab8a1b2b11dd56a098c1e7ec6d508856aec98b74850e1b934600b8b7d33cea5f79877cb9b1452a2fbf5fe09651c83c2b965aeb496a2a4edacd4f6f39d56cde44c2f99c2f0b548501220f553a1ad14c6d8a970d1cd6dabd4356568621d22c70dbbb21dab61c10876e34fb20d3f012eec956cdc9ed81c98e2810c218dfbe1de709ceec9dc2eb2590d31fe9855f8a1d14849f9df5120bda5a0392fd6cd93e2e8e5f80e6b30f45e9b409f9e251a0ca2aa8ab99394e9190f3c2cbd1bda77b49f9ac887e7ceefc333cbc49d080726cf373753addfd13fd4204f12c07a21fe2ae5d513eff664c0ae4780f4d4f87a807ec63efe098e7d196223276f4564efdd574402c77390d2cd72f4785501f89175f6d38768b6c77838723cfa66d42e3556077039ee8fb363b67c174fb70f78008229263350c14b54fd9361a9cdb29fdc57909c757f96f9f2c13905f44c3e40a16a92b0fe509ae9cc3647afeedb032464b176b6a1afa78df4fd6bb765e37071172bef2b6d045b9a51701d111b60d0a639c0ba034d5c6b4c146d079a340fe53e9cace778a995ceb2d39f302f066097eec6f65f775a5e803f10af031dcb3eecb2bc4939f478c5fdb96e0513d9ea90ee2cd46ba7fd45f88e8c38a23e06fc5b2c624708a5dee0d00bcd976a8f75e35c80caec5531ff4ef8bb735cbe7ffce86290eef23248b19272692b758bba1de7a66c63a58315e48f5b127849c759d185908a730f1f29272003e6491a0b4aa9446da297338e04a60bd5f8413778aa08cc0d146ba76a5ebadc775af2b0b3976acb54de8910417f857499d8395be90d207615dd061317e5385b886281699e484a7f958715dfdf3ec30d5423d94e0d1657a24478967513fc741fce01f848f9fdb8fa407b7cda2f7a0eed64d9795a2bcc9e12c1d09b4d71cdc9dc3fd2ba82251f0a9fe5ff32732d2306900184e4296bf4b5b92c106d72a638c5f6713f49a7099786b32ba7a8081aaf0ca40f9919e0645fb255c8a7f4aa672999ab84a19b9d759ce478b7492b48a83eb9bde46e7c5ea1883d03487ba01c8a9c4c798a765b18b311115d02911dbaa5566190006ba40f5ee86bc22eda4ca3d0e8fee49b1a61c4057d95cf797c30a7e06d1012c1af3622629de1765d3bd928df0cb9cc7e30299c5148f782af4871556a0ec4358019ef6a434ea3e0292e97c714fbdb3ab14837257947eb7adc9c1d682123a016432e1eea5afd039bfbade397a9360b674832d2c55d521820c0cbe68bdfbba6eab8189aeeec781362fb289883d2a2fe87e287b8d940ad6a4136b7b388b38b0913f2fba42dd079cac04a071636b7e5bca67b44860cdd9e5f9cd77f07e524e9491addac1c6a66dedf5a4f814fa54eb9586bfcb1a6d4a1a166b1074d28a9915167ac4cf279e8d22555df57cfba8bde251483d9b2aef08a180ff74edcbc1bc2219f01fef23d77fcdc1d41ebe683ec96a75a4784945335736770f63a5f000da542958558b5ee375c1c16a109d488d8b17daf2450f35e0ae08fecc139bf8d5f51f1d9a1cd738ac3bb1e91a3bcdbf79c6bcc9a09eb11bc97a7062fc4e4e1c2e796241dc42481d3dc89b31d2337e8cf727c43dd393bb738710ef7ff96521dd92be410f295c765a823e1984e63c534d5f040753715edee4c3f0c78cd468eb9322ae8d5aa92b88bb172082cd08148a8d208d21dac81f0cc516d08f9c0b7097d91bf73badf049b62085328e347e20cd6ac26c64be5271f4761a16ce90ec9c58b2b71c998404e1411f1a1c5c6a6fcbf260eb3e325d1f70132b5f41a279b082712005347fc7d8a6a960ac1ffefb33de83cd6bc704eedd8ee937487635b696975a7156473937d7c301579c4e531170a6d109d50185693d9dbea24781f391fdc1baca492f00867d362797392af50da481552b86f323bd297b6a0cdce20287f0ee6119be14905ec55851768ef95d50130965c6877ee8d91e1fe19fdbef7c80ef7f93968a0d717c354f071bc8cde4d69c84a6e876a261e620a0f7c959da0c638b32d58325b13ddc9fbf566e1f411edc9b38a2bd031a7225551c4bc596958b1c22d5ecfabd2c09448417ba8568938a1cd02068d4ae3e0821dc96247ca6b704a0af99acbe5ec66b28b7c461da48743ccf387771a15eaca6392341dc4657d5c4c986b0648e712ec50f22e3d68b272dd9c34b63aec5686daa5a0f9bd259138b6d967cfa368c04c48657b2de2133b4c47147877e080d5588b09ab0b19d947b6554aaf43601b1c7384707f3091331a0583abc41bf448283eaa4bb001a44836de63e66eef64b04d82ad32c4369bdca012df554097e493e77e1b26acd103b564b6e8134012aec9cdc52eea80955a76d1beb2cb87782157adeadf2ae6c6a4b49c031d6769be9b42e6f85c8c5a6d61947f931c321b45dc34822c8523408c77bfe32048719537361fe6a1c9a8f3467cf5529dd597e19285304c716f9144debdfbeeb16ed742fa17440e02cdae4816699faab22cec162054df5d6ceb6394cadadf5d60abfe5c1dbb3790e4a98bcd9a84f6d4aa8e5934d80b40d8da632ce6640ceb070ee6034947a094337c013075c1a1267a95c820b7eb5f2aaaf20736f09502faa043cecc39f2ce7ebc0a14f846e38fbd514b935d2a46dbeb778223f20694985d27273a9be7e1be3c7dc9b8af87c58d35f4cf6559f48d27cc7eb1c050c76d85edd69995ea3b2e54868556758014ea18e18c11db61c56436ca2ac66260635d927a72cd707ff5e533704477bf9f578848196e311369842846588febd3a229d0b4fc04a5848d98ca55c3996e34d2154efe73a63f052da1ceb72bcd844dad8a4a4546cc6f94b2029b4e2c8a65d2b50673668e7abce6f054d50145b744b8103592bcb4804b446e1b7f4910843f5cba5a34e5b17309eb287c39bb98f6c220024e7582367d3e5e83737ef64944437c9d462c94f61c754a887ae4e5f1d2d64497d2b7fe8e885af00e8e8ad2d998b921a654616866e492a32742f319efef91df3f2e3d2697a4a12b107ad94da1d64ee6c67f0e9cf5aadae3eef52a22ebe342199cbcad564cd11685e0678ea3c91bcb67278ae4a6ce5664e39e86c3233cbdaf812516aa824754f6493cd5559848a71275b35f503ac84ccec4fd172b09f9ac40543a54059eed72f77eaa8d56645986ec8767e78c2df76f33e549b561b977fc5daec7436735a46956077b661fd05dfa124fc30165d5a14d9215e75c3134cae2a7a8fa490dad2fa745003c2d74d83ed13db927f4dc5cfd856c758b39915ccfb695c915c3ec5f3257ec38a0ddfa1401c3527ca271c856f2b00fc4f44416f7a387aae1e88ca212d81a6b4ca1e61c1ed2809e41e78ad8fb170ba1e0b138f061fde62eb7cce2eb8ae434b37fd4eb78b85990e7f6d21b32b4cf9dc57fd9b46fdbaaaf25139315a99419cfca963b19c3fc2923c041bf43ccc6147c3f9736a162a20152ee40effd6a3a29523d77dcb14a70b4ab512bfd11980e30bfd77304eec045d50b5923e22def0c83439e4d0326d9a20e53c43797dcbf17014f80ebc2b66fa6045a8b402b7fb182b43bb8ed6d569568732723b0f7807ac79bb676f35221258fb1283bf7c275b2872f2c625b7e1211b381454ce044a3e8a634488ece71e6fc58b84668aa744302b8a061b5674cdad160c2d9ef600385998c9f002fde9c829a6be84fd27b8cdb8f328064210918f28189e0dba18535d978efa8a8157cd5a477db7e3c909a54ae886008a65ebdc3eb3f06b89ca21ac3981d064fa15f01b1ce801a2c515af3298c4fd5979e6a651cec9ca50476773a755f96478397dda65db9fc32b2166dec033bb46fbad0edfd03f3c543e144c15dbdca9b83f2c3f0d5357cab1180472c7264317b319ad50dbd476b8f6545d86e5e399cf6177461141ce2e438db3100a0bdf957266c9758f7039817141bab0b3ea234c317554a1b30081eeaa6ccf3406a2a3e38d0376d2c50ff03e770be90cc3bb1c05ae9ab546e21d5f1cad5a4df5b53684789e534f2983bdf41bf9244d9594e889a2eef8a64789b0e327d3b48a06229ff0e48d669cabd64b7d0aeaeb4990571e275c3026a75106083b32dd1f33511877c7bf78fa415243d59474044bad21c773e39bf48619a7bec8b55b951b79f097cac697860b20c09bacde7a5e8054774db8da54742c32264f62246ad1945be13f1f7c856810e9205fa8dd797fbd4def035107f85ea309c1565f0ee1fc1e312d0bf753aed6a8b7704d8a1b2e88703511e6ec48c17ad33cac96aced306c8c08dbfc12c242d6fa52c4e51faf4cd3b331f57544f371fdfeff6c2d5abd7a38ef1abeef3a003aaa7ad6d4dbca80cde878cee6c46429d86c64c73671093e9567cc807f9f3cd9dc501878051166220c2d90915ef8e5eb46c0c07befd7a63cb38f5e9b4a8f32483d998b67fba733e7888c6297359fd32791beda81f7e8cb5d8ee05124b646db4ebee1e477c86bbbdc8d9f2151d99b8e6f0f23250649faadbe7ed2642505d7c89919bc10000000000000000060e171e262f
+flags = ValidSignature
+
+# tcId = 4
+# longest context
+ctx = 414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = 88b645448a1c81f55c81631d057b1ca1fa8bb42af19f1c2dd2bf12594f23b86e17e383aefec687503d0077658497fcc508c8f7b9b6ece29777cd6625c4accd38e27cc4822ffb61fef18380362d29ec040773c9a2ce8b6dd7a1dfa233b76774ea41c766915afa7954f5e24f992d1dba4862802bf775d70c422100717a0e4d9ef9e6d217588cc6b9e1199aaa4d89e78ec1c7ba567c645538e4e6cb7cbaed4dc0663ca36fa036ec1d4334249cc6183033459c3035b4b56f0837f15ad908e2d9560b39e13580497ea8d5e8ae5ce71ae876b5b1e1deadc205e8bec65a724eebc1534155c1f81a93fb5bc6d00df71d8eade2905942a4d6234ce72bec2eeec3edfb7da4a6cc67af12c616bc63dbc16ff1467f02fa0c99a4b135b6a71e37222982f91cb466ea920fea4a729ed09d763e4dfb1bad062ace603c65f952e2df88c6ed63fb344d353265f21aa0e5548676c5d4dc24ff7f1ab1aa91ee19e9d0e72599c85f51fbdbd4f7d21a35ca87ceb19cc9d28df071538f34382fe278bc512f534cbc1f747a4497bc5827de2aa7b672bcf44988611c2e8e8ff88ec64e4ea101d47c88672b1794c1af23ae4317b6b5fd2923ebb7c25239d9efd86489fe8177f6f27de7e80833a344c3b907300c73ce9f9cb2a39296c59d70e180f14261a51814ca7c8117e33f800c126df8c92de498ba9a443b480c9f6c23d26e73b0299eae2a1223756132e3999cdcbdd436a9fcd5073c3e6212ca0dd3e734e355567bd26776526c15dd1b2c2d09d8604da0c0cb38dbf5fc4615d9d5a5ad217690308e34f549981656be6b144de153b9a428a314a19549688d57c8bb4543f12424622e1971c3b26772b3e74743d668c9008debf1ddd942ede5206ead676f249b93a324d60bcda8be119a61f9bec64253ceea1fc95ca5235ba41ff8814f83698bc3188ab802f2a6f33b25412a729635b7e530536bb90972750ec905ec1336e613112ced0a3e68427a2888b4135f8eebe4d4a9cb104627ddc182f319bf0586b82a9edbbc17c11abab38f2add065fceb1d419259597e4ba91ec5d15502f3253bbeb75917b2fdab1c8457af97ec864263d8dc501e9ac754f59cde0373efd9b18463a27eff11199afae22711c18172e077a0feb457b08ae8e3bc6614a2603e95eba9eb230dbf48c5173c1893268fad24e31a5bd323d5b224c0a9fa5fce2afd61178390fdce163b4ffa1d8aafb248ddce727070677310cfb36695b8846c4a32a9973c88ba0e17a1c26d62f716858200752970ed6490eff966201c9ed9cf223ce714eac732d52e0f63365c3b2789bf8a09642475407da12fa19394c55919af3a02d31e26f4270d71eeccc5c5373ae35d1fd9a07d500623b1827c4674287083cecb466f584e31ec933bde9c83c57e8a90a141eaf4c456688f8ca1353e64ebc7cce779241df3e34e7353cdd3af446812c4448383efe1613e5f1f6e9c08c0d5971e7ec28874d7865e3bd4cb1fca0f7ca1fc499c718a8ede6f91a8232991ccd78f918ada16271e84c6b8b679a8d5ab5f7a07ebc82b01f58de7a92753a028679ca244a72b13eb5ed2910da55a998c1f427d2403d33862b05292b1c0bec902b51f4efa0264e6295318c6a44befc85e00ca887350ad86ef9fc45a4a01322522f74b7ad63abc6c08da9118319d84c0b2164c9300feb1f2ce80de5a79918bae083397d42a9f415a40f0347d25c82723d62b1fe52d02a90be1cd7cfb5c1732d644db047eb48b50ff38ca74929edda7385cea85a07c798cf773d4d4e29efb70125307582752001d8f3a4ecde8db26964d34f5563a6683d4939d237ff6a68361f0d2e863bdd15c39637e83efb2b75902220434a273b3ccca148267aae092d8a2b0aca3ff1b352cd6b331bb63ea3e69cce2c86174c8b2e0d061a35b067f2fe7d9999e2c1c07f07b1e98246af36403b2a2bdf48c7e4397b3045303dd8e3af1138389b0967fcd146124fcc97fa524e10afb0ddc1294b7543f77d0dbf0bd845b7f9c36dd91222ac30f89d59d3d048949a456b43338cb1ff1b8392b083fb6fd71797cb21ed52b94377c9c69d90111a30612e65aba8e85fcd95fe53b49f18952380c1a9d9347d21e9a00633bb119481d7292ffd25ec5d4dd842ba2c775757f1a5d26025e4156f3db85741bfcf60f5efd580bea6fc617ebeaa78baf88a0db57b13bb5dbabb9cfd6c8a56b635ecbb1fba800a0cb30a6c241096f6df1f04bd44b3b99a93545c6cbe6986e5260384824875a4ea2ec84e6574fb6f08103c4da71c6689cba16cd28e8626233bafb4edb9ea07bd02676351d57261586832ad67b87ad61a59b7e7b8519e85ccde56722a6cd2a7649afd5034f98f1b9c1cfb7d320f491dc90002bca428a88cd063a3b30ef09fcbc5d6a4ecc6887e0b05b4179c0bd4d8f4791c5cc6a801b4c54e6568469b22b52638a5a514e550df53aaa1ae83fc9999658f86ee16661e301626fe77b064bf94b00fea4b8dd0237906fdfc6cc5294e526528675dbead67c7a4de642af3d9311cd8f2ad66002bcbb35668da0b8f2f02feb11b1b89c264cb5a088de45093cb72c4e6d54ecb5f1ba5ceeb2b95c023b412ab52e77338bc3859369fbb6996a35842b578a3d844d1facc6e7ff7bf31959fb16680cec82534792913dc2aace4143f412b09fd09aea82ae48f2d16323a8abae6527967058e62311f3458ec0f999a3ecc087501b40a0bd25f6fa6d126775bf261d0f3c4d428dc78c6b594bda8426342728ae4035e8527e24e01ec3ab9193dd2a72c84524aaa685bd3ace318dab3be7d89eef18a887c772242895ad9d555c444c670f2641c462295ec0620eacf3ba75b8fe914f1be38dfd9d12b501e09f931556c8798e1a40806c67833fbd2fd40227e3854e6af14a7b9b300fdee969e84c76b9a142b23de64c27ccdab63394c6d39e66315ba1a376282e8f7580ed60eddf9ce0724c57aadc7a8ee5b491605ddcd4c4949cfd6cdc0abbaee10238d57b5dff3b38d3607e8780d7bed5f52f524ea06a94ba7e2ed980aa132fce04004670d520215f715e2ffcae2ce336af653a754e53de4ac26feb591e923a6a5cb9aa97e71f52d0f4698f02eeafa894faf56121d380e24d2d82dbd5687e162ac7e93c6d97029660485d5db8c886480c6339df8d7724201a80dc54cb9637767522e50e5ce696ae29a04fb5b4b6740bfda56a9b80b507bada2aca4264f0de6493e6a7f631394838aeea1eddcc9142fe31558b4756f4f2745f31b58c2c1dc1b2550cb5bdea478872ab91393048a908673106690c8afad8096bd928e32c965bdcc3a7cddc9411cc36faff3d9d4e7a5afad0d0c5d3de867b990490edd8497f3a03ecd131e7424d5b0d29543b3cc7ddb6a1522372b11de1649046ce787f6fc8219b0a3bb508f1d6ec2981066dae16fd127df52cb9055a139d7a68f0f4bbca77e7ca8ff6902a4d87a59671da1b867840fa0e07d8e3667253a41525ed18c679c74cc2fb1b7b00ea98090eb6f2a24da3885efcf6fa31c66732614083d114e7a2b0478184bd801fb36e79f670eaffedb9a3b56d7648009c6e4c33da1f9888b54ec108d21c68fdea0bc60af17b6958479f91ca9685d9704553d2126c3cd240deaf5a0aa8bfca0e37899af660fa9fb5aba33ed1a5ea5e388015b6cfcaae014e933969623a66060f5d396d3bd0793ea79bf9189ba24a36c1b79dff7bef60f921f27d2a46874b282d5ab9839722b495fd6b0ff494f3410e0988006f8b4bced46f7d0f41678097c4f8d5b690055d47c37a887e0fdb1ef45d90be23f59d637f27bc13f25750b83c005e68ce669fe15e47f33b4bb989f043fdadaf7c11dd0e652542d5103ae73d41ef574dd82f0a1144508076276023c91adde4b126772ef620b6450bf5b25fd29dbe3a529014b47243328e309ff4245a8aa667408ba5b4255879ba6bfd4f57cfed9219f88c7656838afeb58aba3d86157a4d1385e7a29d4db695702566f424f3b84f9464a1de1e5ead4683b38f672cbcab96b2c23e796107ff5bae2f63418fd3ab622868312cb1aa45911ebe5ad6ceec0d9138f1e10410758f024f1b641dc099e5bcc83fad7d21d503af50f7ee12da5ed1883689d8dd0edebf6085d90380f5b55af179ddab5df7673c24a253bc3d199d41a0e860477eb1055ab7883528c9602ac748dc1de5cb18d191db75f81eea0db9949ac34cc284643b2f84b5b3cb13369a5ae40a4b59a4462783c66df5c84d123fb6e171ec2f7801622b5efd6dddf28dce5ae844db98e07a24295ec20159448e2fcbafac66c004f6f9a1c29ddef7d500d83e783443f192c79205efebf0c104f56c59c59ce7e1906c6c35b78417f1d9faf94aea8e9c77d84f1e021b40423688dad22c209c9615f0f09557ccced493c06f4b1a4bb841adcb50070eee4d40ce61eaadab7294051682318d6fccfde090f447303426949dc93f2aa1b78c70e68e7409969e74aac563748827a232cb8c277a3a71d53d8ad9044e78ee4dacdfd8f31d9def44a9cf36f48f019f7013a2c622d19505236d18b3ac6ec5eec629b801783979f9bad8ee2c363268689c037194bd8cdc3b4db694e443328ea40122235f7809d403910667d99324899ee1b5f8890d65ae93d5a899fa9d5ddf6324a99bcbfc3f1688ae4000000000000000000000000000000000000000000000000000004090b131a1d
+flags = ValidSignature
+
+# tcId = 5
+# context too long
+ctx = 41414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141
+msg = 48656c6c6f20776f726c64
+result = invalid
+sig =
+flags = InvalidContext
+
+# tcId = 6
+# signature that takes 1 iteration(s)
+msg = 0700000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 424ac14fd2cf3f7eb28b104a7418909e84eff42d2f6e7c4ed3874838f8580d918a5d229f8ad72a0e093959da15f05e9942fad12ac1fe73c9de377b85a0f9d7203e6f8d3d4e83e5ac52a82b7a77c0096d92d40f2c1b7e194673faeaf16d7bf11342956d14d7bcd45f98ac9003ec86da5a1b2775d0723ba7350b81ecabc464be480d834b3965fd6554d340b9a11add210c6228f29a8932b8b6a00263777039533e1580faca62a7885372fe15b4e441a7595a13966fc05a95926fec9eed7563b1347d2b8d55e15212148e9f7e6e6b3e8dc30c6a1d213f66f574588ddf5d559438b1bfe01e851b15108baa97b64273d2e850b8ad504d2defb158e1ef3d4af5e1cbebfdf8a0e8037ba4def90bfdde7f2eadb3da96becd9e6a95e286e120871217aca6a8756f3ed7a11c2f75e1a82f9ab0234b1cc2c8178ad690e8c2798f1eb8b83178f39d7fdd09f44d7df268e7e062566a4516b1a1ceb97049df4646e8156e678c5f1fe2705b0c261db71a9932b8f41950e326a2200908c4c0bf3681384ae1501f5ddef8ab98133519452c725eb84f36814577108508809015af4d8758c23afea3815a09537477e8f6c7694a81c1d08c822843b9e67d95592eff819f6c2927e403f9962f36364ec2dbfe494049884d61695331e32abe6272d5a44961b8679879a67b142aa40729630d8d24bc69caf17774c6e2b3021b9181a8a498586a0f7d4109c5c82841454785873670dd2f60a4c278a373986333120c1b17b4297620bf72c7fc126205c1b240c6d60399b715579adfd96492e350a4145ede8d075ae544d051f58bb9991575a6ddab224c9c83a39b6fa9b49444fb0d2b8e32464c216e42d02091ff25122f85f9454f6d818034a30e6252cb0d25b572de3ab1c669709e04fbdaeffa26d0fc67d250da0864c71d74f8c08b5ad15cb95a33ca5b03d9573e83b35cc173afd97e88b9ea859861384cf8ee6338bbe5768cdf9c84cabdb8b332aaa7574ba200d496aa1d6be562f59be022d7d9cc63fe6a35100b664694b5bd1f5a610cc3d7a670f45b47befb8cf705339a8a5adec9fbb9f1fc4196fd3ad2a5ec9f3c9bd48e96bd6ac7276bb00705aee192106388f2fef2cd3c7cf00a159459314260dc49d9630d9bdfd0245db95fff41703f3236ed1bce77582dd6de015ed6d8dec0f2f2952fafc0e11479487a21c1cd61f1a9410dc730dfdf01527c6ae4072eb1591fb5f9b6117dabd9458331d9fdf582acde4b9001c6b6c6e048120cf15534db40e7b8f77fdff60b08a0ed6a802095fb76c71062dc34a612fe34f6598529c2028487457530c154d18709381cdb36b4ec697a2b921ec9056c86c5e73dd74b63f1844b1240c703c6f6373018c2daebb7beb55ec0365c76725063a3fd212ba80bc951baee1b58ceab532e58754ea44b0cf815a0624e2a0cf5dea9bfcae56b7ac74e4627a05bd8a2539ea4d25a3aceb003c8e7b750f0e8485eebc84b130a54ce8926b54cbb54b94db057f993ab426fe1a3be7a997782fab08cd704b1628b9d40af916730014d71d71d82bc09a7a17855c314b9febd079e371598103a4fc6923fa47a1979fea54c0bf7542a6e54d5cb92814c824d94753095d2fab232153f204d16aaa6acba4c72ae358eab79a8b51ef06db93cd5acb606ddf4dfbbc031f697486c284ef2627e3e65a5998f746d6ed934cedc1204c72694f6738ef0de7cf25bd147c938f3e7efd6def80c01b690ed200c21f56df02f7f31e90c0f05e61c60e2279b307664f491fac8f3315e48040ed63f6b68cd7821bd9447a8cd9d95aca3b16d721ef8e90d668636ebb4974553f41e7e9b075eee4e83e118fa74f2d7197fa135dc53146e7c194645e4f07412693320117cc3cdb1bca814e0e30fcf5590ce237e0479bf088cb0f68c2dc0b53203c7c007a4bc6361a32e3e153cbef1163eba0a3d7e5e133fb30c6f37b3f92e94abe270e7c3e8c97056bd12a1d588f919d65db51accf624e0a356d6e6e0da3c67dc298746a39b6313bb658e3451a2b1abf7efb6c1e63b83cfaeea9a17ac8f22587254227f5adb2f41f367bb9e4530c7fb93b78cbf60b7619a25f2f7a00aff9d935c294e82102eb0e96da7c3d4c87ccb896a5e5ee3ee13da3d94655a66c0c3d781a67c23bbd53cd7eea563a8d63100144ede22e3af96b69ca18d5d5be5849d27c1db28298d485e2fba3c7f68297c7f883049d73ffbb3a300c5aacc1d8a805205602e410e76fc48adb109cd47624c2822e6dcc0db0a28be5401a79659d19b8bbdf131ce04fd6278130aa2f203b9e0f52134a3dec5a97c4753da3127288ea0969fcee232837ea067e8a34b6dd4e1ecd7f37b8e956d137be78be955854a75d84a339f3e80bebe8d295ec1149bbaf115bfc84e8cce1cf994fe067dbcca2ce1c378180bbceda95444ae535a9ffe1819caac5cf95b86219e95c62581d1110daefeb4830043a7a9552de5a55f250e7f1aa5993f87647c92c27256753d6daf32da18c1cef9bd5ff5a7a8e182d071f1e75d10be89f02c861a0d05257c08c9e12f877a22c8382ec883c592a34722f1138a1e8b5ded41e970b97ba2a69c386f94b508b38a59b464dee983741e61d0096f499f3c552f43ca317ddf073e0450e800585053830681d4a8a8ecd5b86c901285c84278c06b86375a04fa7002b259cd61d5ecca426aa334659284945ea6c5adedb7d40835c6134271d641bdb19cc3617bfdd53618252b4a684a259b82982b0a13cc90ca931c4e90915d2d7a0abdee3f78764b41e3236e2ac21e138c0cbce20740cd17f34eea236720acff25161ecd4c903e33395f51d2c51583407b35a044d54caee2b66dcaba84359218c6803040b19a39c0e4ef570fad7330041e024cd194326891547985b10e505c6e6b1abdaf3fcd63c3f2f08b2d93aad41e83167d969e54b12745b328b5cfb93266afa793bf00c86270ab98e2ab44b2be16b5e522ca280cfb0a9a4f744900f0f44f6126b787274b2a36232c84b563dc3a5879c83c34cc6d644fedc3912b10e9806f944440b00883bb76d51782f928139117c7358cd38a460ff73af4d417278b7bd463da86ba11bc88cff14340a24f675905c7edacb121fd625187b90a3152115b3ce1f49432409fa629384509cf51426948c71e76da8efbde2eeb7d3f3e576f18d4fb61f90d99de2bfea2cec28468368610670890ef26e05bb108dde48095251574c20611ce68890144750c62a9792815a89ffc50ff0d76fa0f708d917f3bd9f840b11085445784d2017e54266c69f3fbef4c8fa82c0723ba58736aa8466a81b00d563dfa074a9a06016ffb04f029bc12c53585183f237d84c343a13b08b484e1625be1b0c661f697ad5097040fed2d3d46c6b1229157729b306694bcdfeb4eece5b5dfa8043a6fcd607e2f82aeda46e88f8d59f2032fa439365bfda8ac7b9e09ed8020c045757d510d5de5dd0b2520b0f74a99d8fe7b1915d82491a270d1a1c554d0c05d14a1419e71dbbe5df225fea5c49b73b84fbf079dbef25ae8861e58ab8bab6ec4ad07dc10072c5627029d4a74700193d12f439a5bdc41a284b92499b3ab0f3973529ea148053da54125c2969603fa55d3dc30170568ac9642aedcdc817b0f4b8d5d31925428afbedd21fc7f1132fc7e85284723b4f26ba1b50bd5fea2d81b12f4451f97331c6af0c82aa9d962ce034df061c32a1113990a9f320291993c9d614c42e2aadb5dc52c58daf8d22bb302e1e64b32e16394cc0c44cf93bcf811e7ad772754b6e9c2dda630449e005a0303996a69f5ad647f98908af4f857af804294d416db784c34d2d5aad7d840e135ecf6b636dd33f4ba29d0f12fe3967260013662d8bc23a34a0f8a5df93e111e8792140487eb04854bfd9bf679e1b38de028ea5fc457cbc8e2706fced55f5363425b0c2c13cbad1ef96d18f11b0fb3749a561504b8fee8cfb4ef9c948e3efaa2de6ca38fb445382af66855f3c0603ab175aca17e1b005deec73b03eb952cefcb3cd5860c40578e8a366da62a431916ee212d9e5740fbfc42f6d0e0951fd2f213a8f6f21984e01832c0dadf56b3de4833b849b7d0c9125d7b9ae5c6f245703d77c0298c9b6abd563529b3f2986ce54462f050d18dfc85a840b1633b2b0373e585f77c106d70ff711d03362af483f7812965405e586d6988318effc81e9fa918ab278e97e0d6d3932e24ac17ba537f568f8b16bdf3d45488cb34f696295f7321b63a76101ec283f0427a533544f752cc9d3c277c59997e01604192746353421884142fa23dcccb3acdac509a5688089ee919230a9e0ec2804254a153f544977a634bb13880f3241daab08d1b73bdd8fe4a187e9b4c3758eba88cdcd9fc104360b2512788f4d31a23c80b78c150af10e1a41dd279e895ae9e66ecaf2bf32786c11573a74cbbb93b82255f9ed190dafce6803f07271889828696f5f8173772a7142ab46899c609136713cf7a3f4c5e9718c84ee8bce8b4b5ba83a09e421c830eafda214c0e0b3dc28d0f1adde9b5fd9fee6a07a328807d0e983cef6383ab94c415dd1e649d9804f571581ae0c7ab2896e86a470a9eab94f2fe9e138e91ac103cd770d27af9648ef83b5254696d72d7174188bafb05114a788d9726c9d7eafb182348618cacbec6224186909c00000000000000000000000000000000000000070c12171f24
+flags = ValidSignature,ManySteps
+
+# tcId = 7
+# signature that takes 2 iteration(s)
+msg = 0f00000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 46b40670bb3da2c35f9649c9cd3fe613e63335a645b948018b3cffc864412f8868192a9d81da08d1e768d0d33d4f7a609dae1e72d4408fe5f5660f7714d7d3725deabd87d32d66d041124a0921a71ea30d8758427cd8978c2014d83746c7c29ca7781125afa4ebe984a11da34692342493df2c8fbcb50c83e56c9afc3df2a5d317add757dfb4439841a8d91d596eefa656f1953e7fdfb63e29a23ca3825a1c04e09f766ca10aa6bd05b9dfd7910db1956f99326766839c4dc0f653f2dd5e3a508fe13c2f0624d3dd0c0f764c164d231cd1f73646e542d7bec86e7ea0336583e86c2811db5e28e18f34122e86a37e1de65f5d7836c35db6079bcddab304ab6cf752dac710004fc24729d760d3d9380270c5d1d777b67ac830dd52c3548bda02f0f7d0331aa6c8414fa7307237456105c3c5f8463aecbfbf4d8c7f7c3b06f940592f12928a7a018595c1972705f8798fc75e2833e95a163ad24f367cfe85545fd0e0992775be5c074ed111cbf001bd536d1ce4a0430d963728a2e25d71c3efe9c385a6841d7f4c6d293a64f83429f064f3584ae0983dfa4f90820dd229f900e41447c07db5dd2a61868438b8f4eabd475da53e8f1c7d1120e366d774bb95839f6b3ada1f704198e06b13760447768753fb449c0d53acc22845a0a4e5b047d008e08e2f65c577026863ed25e1dd7d39cd4f0a7d823f4250474866b80ae3a2d19838cf24a265bee177d20b9fe59f2015092b3362a415f05e91bdf13ccd1bf3fc901a63ef23ef74b41cd74606c687ed6fecc665ee4fdae3a305392f59f9ba7e6c4a890c56c3115a2cc760f3166ba1c4e534a69bbf738c764cb228204799afdedd6660fd4a6b7856a84e714e58247fa068f859796cc4271ae915e62d3ca3fb43bf884fb8cfc39ea89d3042e453953849efcad7852d67471d2004b4ba8937a5c508109a19519fffa989a39a6c68f1ce9268469af6baaa7e0a93362f5b87b0ca24d5151b99bdac16885d335d6bf11c2a574a734999815843121bec25ba9775593ef19f809be5b63f5fb01b29f8f0eee9f1a69f514c0f17e90d40ae9a97f6fbaf5804bd036b6ae7cbc161865580f763d9abea93625096f3730c77cd0242f387fca2fa573f2638887417bd80968e86594e1ff547ef5ef4b9b49b0524ccfdb3701a8de2f7ab2eccce22ba93bbafafcc1359c2e3652b67250ed313d6564ba245200c0107fe749c965ecaebe28c79f24955a436c41b6ebd7f321938f4dbef88e30a34e5b2a3763381d0af8bd0176feabe3d467eb985cf4ab28e465b7896b36d2aabfbbd26931fca9b76e2eb1befe51b45d640ba468488da4093fb2ec7c77ae43c785b6588ebfbf5568c1299eebf0046e28b5f1e897516edbbbe99843e551012daa0157e03d1d41daf987b73ddb361c064917b6b8b4b23c31dbfe01e56960e63cec546e5684b057ae5f904333dc33ae1b0018875cc13f39e11b247db82e43409ecf16051be7e8525c9a90b68cf491830d2c583db07a5bd95ad69af0e4327cdccb9339d96a4aa201ebb86edfbe7176cf63a409872f73107c3f4f068df79ef817efb2f0837e665c7f2fe0a56c4e392d63a1032eaee2894f3bae6df6a70a430b22e9be6e15bef3a9af5545332ea3a62c94d5a6aaa8870c303b3460b3be88fa848fb818a3e1771c329f676941a628acd948b260541ecd1701c6cab3311ed86eaf0950675808ffdadf0b97f98e9da2193258b74d589054014dabe4c501f2e0fd81fab9cba2f9c8f70be8175da44bfcf01ec6ca5ba7f1039b29e27e5bfd67970e5e561c693a1ec2023d53cb1ed32f3614cc132701dbea3ab4d99398f23eac52b3f5c5f46a110d77f0d9c660b432bc57cca8bd38b4b5dcfc619aae56d7cd686f3fd94fe419f8fc54c9ea6611b4f512504ce87216f768abafa48f3825b2f9afca3d419151d1637bda8aff5e2f9a7921421fdac429c66c6a01832c7041f74fc81c47e4172f9d95b200b1a84af4dd9b677670bbf356d590f2fc1aa70ec53ae94331b2ac0f1a8bbc7dd600cb06c76f2f340aa2c8ae102cf9c4ba7126414da52a1d8ce3504ee282a02a9564b149c041694313ea3f11d9e697ce692441b3baa25b308f42eb7f9d03ba3b5638fb96004fd0ef2de66c6a573ce2570e19e75d5c2bea7d5c656c2ad6990cd2d8feaa9eb025d80b6483e6612888ae3a66f646a61cc08534fea6f31447af5535308e81e3dbac05b488fa9dafbfb31b7fc1773fed73556e9caa5864b4871ae4d2d472385ff62a61113ed0f7584220aac571b69373f2618887392f88e4813822009fca474af81a342e1fc7be442079fe882e8bab95b147c1a196eb079c7ef718c194e5d6a5332a63f3f15cfa08453afe796dc433399c75d8e7ea603c17bf1a133fa1407dd76489c9950e501e64d09a7ce59f886b3b80af926443bd3b04e33e97adc795fb4b775c8d6507dfb7aa254d3b994e6412838a03209ed3ae2c15cbf67cf00793c7b7bd4d1e36b56aba5212c0e8c82752da39686254e5357d2eb0ad691be3feffb1b09620c2b0b2181e510b47ec2fc0257acc3b847b90c0704eaaf48742e5a50498fceaa8945180026647a7f474cada887dd657f4003080d5081c1d37d4c2c8a1ba5e8562319d741b01bec47cff4fe1625630051b12accb6c919171073ff9cdf1d138ded6ead47440bb2f99424218156fee650daff3c777168b43548da1b946bdd16dfdd099d83a7c427f97f83bab18acb2650846d39cb41e5283564232fe21394318a2340f3ed2c6c7782d27ebaa780ea81ebbd33841f834756b74d99de6a17280088ec6bdad04144794594ccca8feee1fa09903953df806291667b686c9d5f77d89700b0a29ac9c95ef647d0b4a6ee30b99bbc9392a4769f4197f4289892f926d744d8b62e067edb5af6a6590981261b7a9c3c9f2b69833251916e00ec5710514fdb29ba3c25285001ab2652de3982f7bd960b60ac2fe285525f588167305afd30f059ab723c1105e6c657b5dece838d79d4dbb2c14cc50d123166cc4a4f01d15d7f8d4ce10acef8ab06132cebbc4426762b6616ad9c8d700dc7c53a1bed753569b28f6fb38e2334e50efb6b7de233b93ac1e0b4a71c7cfbb7002d6bd2a7f91d22cd080c182b989c2045fa5719eed2aadb2b409a73ea00ca3e9ae74e7fe61b18e25a8abed293651352d50eb2a341ae24d4549c93102b5bf8d9523da6cb97d6f0fbf4b64d7b65e0ffbbdec1ac74ab2217c464936205760f4d46139bc9066fca14b65f004b9432c723c4091ee0e81f5549200aa99445635c910303e697e0a08847645a98c12aa9eb42fe38265b09fb020ee3f6fb23f2e501c3a8ce5fde7326d2e9aa2e20aa770d810c3c11d86a6ac0296b296f2a1215fd83cb369abffb3d783b9805b0f46d853c73c887038584a30a17c8bef62ed7170841c09416924f67198bb07749cbc12412185f1d5fc4021a504f1c417ed5965a864140364904d33451937d38e14e8452f7d414949e9932e552afe0b33ba1bc63baf2190d8575e90cfeea69f5d0a3182d726cec66595065cf9dc22657cceb7cbd3afec14c84e900071d9d08849bcb1e20ec70c1dd4046f914f80a41afdb3b435b75bc125cfa2e6896b288dfe947f8c3edb82113a6eb6c35bf450191ad5abc514d9eeb6ed6fe5123f7e5caea3de2f19116c85def416ef5dfb47ee08957fbd87920e9fdd418895459b74a2fc62ef11be0943cfa22fbf14cb859de45a4b60deafb70e072889344107d0fe924fc68aa9c13429350eef78caba5352566f8d80b64d016265e264a1b5f00064de79c539b0552dfd3880dd9f77903465c777cc78fd137f199030bfb292383be3caabc1b6bcfcd0dbf4b7ded13b93f91408751808216e55a2ec4d39051cff5784b0db9e4d3c38fb5093bd23b29d82cce55e77710bedea7d9f0ad6a47929faf26f8d50bb2b2f038aba8d970939f4e6fa02c3f6cecc76f3a4298f66a7976b475d787c3d2ed3496a4cd9c47f864451f140be914141546580364a64215504d36cffe6f61a08a4f1940d965f39cb442c6705e932bfdbc29b612a8abb3925c3d9bec1c9630f622b0ffc7d8ec2425022882dddfa46bee778fc94e304e9672cb9931cb4b75edb5514c2d930e0de245f15c4dd422c0fda02f6b104c0b37ea2df5c04f83d9a3f644930eb54e19b7a2a5356359d6370bd4635fc576918be8547b7aba9f11f1dbf10697c8794b06f7ca1316c0e9ece8e51aa3a6d0a77672292ea5fdd50b399175d452f18754e4f3ebc41325982e2ba3162974c30e19fd49bbacf10e3cd96254cb3f43d6ce1115650a0522ac1b14acae1a3231579589062bd63a55b1aad407c0500b420d0840e49e941a5fe6c6cc196ce45d0d16289199cf9a29130f6235a3bf9e8598e2b0213ce87fd676ab5b621a284567172fbe5fcaade672cd55d1f6a5535348472fc836be896c332919fba13652b941a35087b44deecb7121191c548e8a7161b561a6f8f7cb4beae6b7f3d194f420ae758d209abac2f36c144f067a829cbef57304ac7541f7089bbd97821312a4c074be9daf5a000137825e7a406ab564cc16fb7ecfab4babbf00b1f13f8e009481e88f55050d1d2e313e424b4f6687c7973350585b5c66f2fe698a8cc0c1021b53637dabaeb2c7e0f35154babec6f7fc00000000000000000000000c0d151a252c
+flags = ValidSignature,ManySteps
+
+# tcId = 8
+# signature that takes 3 iteration(s)
+msg = 0100000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 0d0d1a7af2d4eff6d4af7435a634d28ec5d23595fe7a72cf76d30f1fe16620c64862e4aad54fb78f8ea752b1e43e4e5884d7226840beb36a76f6a9b1b7d50b0faf7b8463f57c66240e06a22f5f3de4fe35c1bc6b5e42ecb1c0758069223e02f42efdbbbfbc87b4c0736141a70e6dee41bed27fcfdcb94f4213a0f99a02beba309a93d343cc932a6fd67fb90d6de7a81101a678e6d47d8b1c8bd67fe386dca360be789555196e2ff8704c175ab60a8bf3c9f3bbae1ee5a128f67467d21fe8a62e5f8ad8127b8d7eb37e43abc963521e79d0f1ed57fa341f743246fe69d97afc9a13824c79f7f3dedd286f3de739158a0900c99d9c8e5603df109c25d993f634582c832a79c7bd8cbf3ba07fc4d9e9ca8c1157434515538285417e6424209173c6dafe54c37e4424de0f25454b1713fdc3e72d01a2acbeab4d7f60d17dcd073c60b0ad5252cfa137c138448c931498f61fdf8f449225b07e7e0fafafb1f274fe5cbaaa136e62362877f643c7c94946075e8928ec47c04ae54d2085f7f2b1ef0e46dfb31b9a19135b6cc9da876dace6f61c2766b463b24c0aac5068714e348dea399986c4e8b8bdb16768e7ab81e9ea13e435f97e35d268bb679071d5b99d0d2f1526833e8624b6e4ff1ba3f5af2b23bce93dc7c2c4370cfbe698a3297005c9fde7af66bce7c9ef68337b04d7681e303a824e00acdae2ee3eb8c3e7507e46d67a4cfcfa9473bfa6334f2170911bf2ea75a3618cac939d11d6a778101e033cad958aecd89feabfa19dc6dc73584917834ed6552966f7bec4546ab24c643db25722b3ba412de04e9195898388d9ce04cdd9343da69ac9b3d3155620dde4052e9e30529904f25dd6233bafd4493b66844c8fa5d831377dc3ff8829114000799801d46586dc2d2059f6bcaa43b899e089b4f3a5ed4e6a7f1df5b8d42fda456a70e10b2ae14630f27e4c7257f5df23ad032c1edde44073585c04c1231e085591771cb64aaf62febedb33df56bc62f4d126cf8be4332ce4965e6e67d0be7871d81dab963c576ad7123bbff510f282bf66c0c1ea04aaa05a7a4d410d0e7b6ed22025dcb6ceac78f377306e973973adcee776ecacaa560dc8008799b306d5e617b2f51159b1e5fe5daf40f8f488f077cc55bbefbe8f5a61c28ae2b1493272dc6a4e34854f73f74c3442d9c302f96b6e721e2956ee0bcdb9999ff36d74b8d4ef036afbdaea5f977da2b94d0aa9136abd6dc26348873090cfe3d4bdda4d962f9382576bbccf8ba227af4ca8e017f65b469d2e3d35132fac40cdf03bf8f6beee66fe9214e1bf684e0aae75e4141d9daa1c77ef409f56424b01acc7ffda11cb9bf64a9aa71b484b49b9ee82dd8178dd4adc91d8d176f83d2cc7516d2195917fc246ebdc0dba4cb5a54ac6169bacbcd79adb72d593fcc3fa289f1e4bffb4612ba7a3318e607b0b27733cc70a2e2b4099056731ecda3212d1719a6902cdd6a05bd70d389da1dd0d0b4f6c4968676fe33c6e32d791c85b16cc9f4289bdd09acadd9f902d9a91f1559bd40eb6b73da7a623048140f73454e4ccb4ad65038109f6eba9fa01b0a3fe1af228e2c4134be136db2b029879e101aa8ab264e554818450734eb5a900497d906e20d36eb3848b092c778054c5ecee767c00185ddea39160e4513be858bfe5c7c7febf97ee8e2b2fb477bfb10c11f3b756c0da1d87e3121ab4454016b36fcd8f6d2633c73d4528221974b3f21ed3d464d47bacaadbb4647320bf0bcde38b0a75b6c3aac8b72d3c2c179417d05858ae4bd72d9c16713f7c116dda3ff8164710d4d14964b33b00b268007f8cde2eacea5108fed77d7bff70273f351b4e160d28d02576dd5f3fc3ab264c5927cddb6f9a81b852d24842bd5db5c5f2d893b2f013fc75426ef2414bad1b845ba7833c88a8ce76fe2644455be2ac1b9d1e31791693fd65f1ce35fee9d17b42b444bf1277f2646a19d76952b3fa3846c3d258f9a1835a709fc21472b0f7de7a729111e850f27f88764b3ab4baaeb6cfc644b9b6a552a61a7286b5af8011ede05845cb9359232f02ad8b3605b00cbbd83069f26b610378055c004a456c7c44606125b7b076b3f955117e03eaa514da82a9650e8b9247902c5048ff776ecaaa5ea57df61d726ff1754d4b1393933599edc49617836ecf78cc7dd45750b666b73150496e3999e339243f5644d5a3e57c6cdef2ea6c967f8bc93c27aa56ba5352666ab6dbccec415f610bcc76879793935df8e594f5c6b80dc0adcea1a1d5854f447604c54dad61cf0ac91d27ef963e6889075163e89cdec0aebf32080efcc58280b705a029511f21d311c1644623f82039e096f7e1d2518928847abd479840b65cf10d15851976e47444d64c6d4425310a3b5efe9b584ce7aa01b1f79d6e3092486f91fe75288736e852c0132561a7616f21b7713ec53f0dc53432f53eb4ad778dbe14664b55553ba342eaf94e9f76320f8f658b4c5173ab938fbbfe20c9987318c1a5104efe41419926218d30b0c97a366e60f6d1240e7f601a1b119df36cda11bdf7fb531a27979c9823efd2a75c70387f0296dc7382f570fe59568afb406a48e7c13bcb40204c92cfe13b3980410b229767a5412a7db82845da135cb6d5b2f9f5b22518b2115dfb02115fa1c4c3177a55f5c194450f0f0a518df7755b0b12eb412f5f6ee2256bb95d2985bdf1257769718de9b4f4281c3eb3407f175c0b43fee6b94b00875dca0983ae763624bc4e84e9a78f778dedef5eb078ee87a34941005c15cf42ee05cafe098005b1770ccce4e59d9d3f6eab9fb2673766d9b70ac11cd6d8b9d00809e58a046d95ff62e78a8e5525af54094c907019ec661600ec2c4ce5337371a1daad0e37f3a5cdd96a3d985456a588b5c1f61f36a33c6444c3b67c445bf95e9035cd4f77191a95a7e4c20715e55dbe43196809123499148a930321e7b2cc7809cf517fc4b2b0b49e57cde4b6aae620fe8cd0b38358685ab80061c1c126a1f3a96ab34fa957236cc6c59ed962b3bb006a1c122da796bf6bcf7dbeb64f4339c63d3a437b5898be19f6ce62024cf9b9c89964569f176fb697430e553a7c0936056183223fdab2f910047ad5e64098a44a2edbfd3007b0b5e4a5d1e6ecb44f137dae2dfc45e96f03e75c900f3f84e2653efded35a3c8b27e310dc361c0740524e52a1bbecce57d59c4913313e62bbb63c95a93512bf09228918bbf921cd5c62b8914b7142d6abf8d632c3ac44ebb6936c638d56cfaa7cee463838a921398acbbcb44bce621bfd81fab34a8ec33810eeb89fbc3cc469990089d2291e1e873b31398f2799b8d62d429b998422ed634bd7a6de8e991ba8492c001fc5df8b0014fda377cbc5ac74e40d50773ab5c2b4d08dfbf3cca590a77f4db0380fe7af822207aaf99c38676327ccd9aad50b2d4db5aedf74b1cdc50c484d455429352ef0aacedcd9792dc26c66081c28ecabc445b6f1f547a24403e18b0468c8881bdc3e82f7bcce254944271c3ba06c80555c8f3d2d051fb6007507eadf8fb991f45c0c9e9ff08838a425a96d72fc20d642c2eef45b4fa43e7b380d8b6648695c0b9440cc66665435ffd3df10fd786f7638e13706f6c5651dfe5f125158ff3d1da84cad23129e11d79d0f95548318b1c794990174daa895e4b984c175136185be534ed6bff9231c215fbf6bd297e24f528cda523d62b44aec15fdfb36281d804625db07567fdb06779325987f69f16f19df737d5f65d1abadfae70a1a4daba5a87e4ea3a09751ece2ec21dd24f719b1f57e795819689c8f2e83beff593735825a1ff8e4e4df9d031dd66120dcba07e6bfbf1b0946b3585a5eb807c1632a75353e8f7b8c4f8ff0af978afe2bec80d3b94917773564d7efd92a79cad26360b599be49bc657b132b25f459d58166110fa626cf1731be419105b4bd235176d60efa939fdd8dc213c695674bca27f161da4514f646f33557aca06189698f2953674ee73be89e3fc4c014877c6bec370ca1fe446686200a94ded3382c4f4bc58cdc12c354a486463959cb91c2ea0ae965f912364c5d98acd40ee312178b479b540875fb2a0164b7134564bf7fabf59add993b08a904452152031a784cbd36e19a47d4c9371e7774d3433fecb5d072d059b01ebd3279ceeba80b356e3628874008d801ed74717c70a93411603f1faa3924414665a95c475ac42de8d616de8be5c00fb90e5ad13079e54d1c7000905b62742ed70555ec406b49cd4aa6ea68342aa7763530b180e4f790475eefe1094426b7de9e0163a4990ea3494909c6c6de6b7462d70c8f2dca3152d81c93a8c184b0c54da7fb604f835df34506731774e6b8f2361586ccc17f35c8e21795ccb68a5cd73355c98a17c9ae35ed22f6c0a36c4da30af96ce7347375144a80dd851fda4971f20e9d6d18878d74803b577af4fa8f34c05b380acbc5282eb63f9345e4dc1f9f0cf8808a204ec789ed31ac9f009790d5c9b7d744ee3b29d911014c12b53ff691fce0ae5d53dfe1c7a367e694fcd2f688d46758ec308f3f9736701dd825153df883c0dc539c9dc3dc7dc9a9a35f453c306fc57faf76451bef45889e4ab0a4a6dbd377996c7cf80e0e7192234475d93f3f813197ea2d3fb112c2e97cceef2000000000000000000000000000000000000000000000003080b131920
+flags = ValidSignature,ManySteps
+
+# tcId = 9
+# signature that takes 4 iteration(s)
+msg = 0800000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 70094678fbb346b4b40e967be25e40f3fd6db4e03dbac8ee46c962c4e7f7c4d2f18a7b44df87b89e8d101bcc264c30d32ad4aa54e27bd70a4d7c4717653c19887afbf6f2359957c895ad477f7d9964e1e941092dc4fc8fddbb77157b31462a46e84f57906fea21df705a01c46b01f3212d91011e0798548ba8eccede6f4d9bbd16d787f5862b6e4dc3d7328511b199c32b609cf90599f90e156d2c00a97bae5b801d80479e612ec53fe59d0e5e6d7c2d2cd2a86f1b0d8caa3856bfb437ecb57ad2ba85d21020cd31cee7296909b19a45cd3303247e4e918db4bae21314366dfac729776c17b5852b000f9567018e7d052226b3b28fb5512bfba7c3da3d1cfb0c31c7cfebdbf5a4e5009ef76cb73316f6ab64570d84c39472f85a7f54918e9fb003a293c8d2787ac533b19832524e5956a96722db2d429aa69e15f3bcda7d887796647f913d5d4de4fcac8024c8da8223f62c973169cc21809943114b6766d3179a17c83e58a752468eff1d23f04f05d844d0ed40faa81bed6f1750d8f15ea24b69b403e12213c2291419d04555c15ce8c1645669f7c4f46f4d26ed4cdc4655b6d6c61c18739163c1f6290a5b535601f345e5a1564df056a9519a3125107b7a082a4c34dea36bc7c3d57af69b7bef90e5ee02426b96dc28c8300e1207b7df14c4209ecabac3142b57d059081da49cd4221c1fc4a159a34bcd95149b73d4a9d9d7f25014fc011ace2f814543922e93737ef968e8e20e8983d3793d733e24cda69c6c36436cfb658bd0d1cd7102686e33ea1626a61ff6662a8be36d0032fd6a2893f5386b471028044e5aa38ab71d3d8f43992f7eb196af9057aef710ae149dda63781d269c248a3c257dc21e30c7423d0bf7322e4f87780f284a92930842feb15c3e624d713a4cdfa5fbe9675cc9b1bd36707285ae31038d419643fa959839ebc93cd66ffaaa720ca4c3bb2b109dcc2dc890f19fde05966ad0d648a71e988ab142b6acf0426a19bced43dc0c83a38685ab5f255e00ee0f1d5a7a341df518d5bbd9ddd31aa6b38d129484ff2b93167123913ddf7e11f6b7be7115c07566c4821d12cfc3db5d24591f040608b7b06267048c944b1be8f67607883ac3c645a5746dc107afb8fb4c730929bc6c99b72b701c46602efc3be2dcf7a25c21467a6413778208e58485b3a7ecd688a97aa85f9ae2f0023d551a970c7714b7bd740ca173cf0f787ef7f961e9f97bfa5a59bee561fba83bc19d0945ce0b66883e5288e4099b4809124cea9426e81aaf1fff02d350a2e9876754ebbd6dda2faee542e768d859398db6ba8323bb4c16c0454020e97da1edc2be24ace53a0cdafde1bafb69e8ca06996c132a19ce88f7693391e2fd1e6483a193244f2faf9b1cfae1d511f34348dde860c585ca548bba32c13165cd3044209ce59d10e30a0bdaa68b8187e0fe6361c1ffae271c6ce3edb53e1f9cacbe9623ef5a6dc21ec7ce626b1863eab038bdd2c1290629ad90fb59de197b4f1cb1368a4ecb05bbd0b58f52fd8ee87591c3f4dc08c06ce8664e476043d4e85202a51996f9c0e5ae2c22ba95099fab8447ad3f71aa2aa95fbea73ea99780c8804037584739b3e1d7f9d63335c9eeb7d5a76244ef7afd8cda16c47faab70550ec39d800d51b1c8f85d366d016fc16c51357642d60d21e3f45eda3a7ed0815d7c585096725151d3a82fbfd90b8a609b6f52e0c18e328332cc0de273a5cd4ea3481913379aff1c03ec5de2026321d4bbc4fd13b1f5b4c5bce87a236fad1ed604809ea2378d9f3cea73c45923d9e4eae4e126792825b883f9d46046ad7787bde86b1745127812534955bb6ed28ebed29e65030babeada913b8b605a636f088d90b91d7166f5e914941d4185002b3aa6e38b312d384c24a4312a8cdf22846752a9bebb1655a3fb904b6c0f1224cb2a83887bf218f339d6d86faecf258afd847f73f5a3f80562e65a07a7c9ef1b43fd84b40b55b000e6c3d661e1fea1037e6b80f5478e744e6a6190226f7ba09e2b8bb89c8d720cf36b9c2bfd33dc34c22c1039ffb71e2f4275dc22c3488744c4b7bb7444e5443b211d3ca7f687e7db1023082483e5ca2eaf89a7eb89f993c194c806b331e905da74830bf8219e2ab6dd80620fedb6298c5a772597dc71a274589314632968c82d66a89e9433cdb6465aef8eeb33f0e738276daff510735089100bb9ea86711e5acb9272e7dcfb512ae2c3587f9e199e9a889566323a8e31ff6cc623307e49920ed9b863edcf54bbd740a7e93d2e8ed71ea0c321ade6ef7a068214f73ce8809b0816f4f2da5bc23890b768324f86a29552af095137854319ae2845ce820633457678072748f9dfc53c26c5e57bc1da00a635f2f7f1343b8adfb83bb3c54a78640441ee244b872d6c86699617e6d7cf71eb1cf0b8ca6bbcc89e3f36e0b64dd7b150604b3509974f65f1ad0adabe6dab7634dceaee4586f6628b2dae7f49663a9a25ed5bdc91b874f893d2fa54afdc6174da985fbca021315f10fb16ca6278521c490598c2e9593467b4af9ebeb822339e6feb7914c70ef2a127cf678c90692b1dccdf79c86df0014bd76aef174469bc904918c88d0acf32f5211dbc9ab007522ff85345d41e083ce7e79e14cf16dcb934fdffcf99c8026b546c2bc00fe356cae580623c74a00661d2a18c2364737e0683a1f1dbdb2e3be4a3de06424bfd54b820a30349d930ef2a4103d3586dff198044ca9e59bbe70481a3fcc955952d69b9d01c452990793cf3021f400d2ffc4a97fe248863219d16a457434f3056084306b8094cd11f97e48e6f2d45ae9b3b7047deb2e13c43fa0eb8fc710e82f29633a5d4f065986d66323884fe87cbc66c114026745889c62d254928257e68afe0e52e51e25f337360dd227dba3ccd54f1e99dd4c704c9bd126310e4c72160da70f176de957a340fd481f84c1fca83af372c9fc7f2555baef334614f02068a820cdf2b9b1b440d0b5337f4b4a380e6d95f423ebcebde2b455ff74811ab431b2550fcef6c6c671bae84c910611176e94f0b2815d55e7328804a1ba1b490b7f86020238114a063068decb8b3c4d6ae62f6ef6e8767b934d9cc817fe50470b9f0a6733ad446d12a115e28dbb8b610f01dfb1268625841efa796378fe64293fdcf859f38406dd11e247f41906cd6c6c9cb2afed460268f78b170edbef056fd2db36bb6937ed3bc52bf1fd098af62177ce44723b65ead8ad50df2c0fd89df098dc56cd51d5a74709c5cf1b7a09683817f0c12ef399e83f6a4e8a17126da998f0a224ec2f198ead30c543cf403615f38066e9417ec3f2b865464f8fb1b7ac8c3fc6251aaedf16807ad851b980ad9db62ac0e07d9b856bcf579305d9eb66859e460aa269f0ac69c9e88b014721c906a1f3bc8a1258e04683343f2256fc7c81ce17fcd93395c430cbebd6b0544c11de1eb426927f172a2f51aa78aeceb83aaeffb1b62b66a13b19c0035ba1c41604441fe22ba1bd8b8ea29547599b4e00996b2da1e937de02a58954cd77ab29c68ef2a03321fa2ab299a2018d625de8f65c1baed074ffe2577fa5b0a4005aaf284e7e3bb8d9fc365ae978fd528e0c427d43414b14ad6cc7a28fde2f71d1e7187a3362f89e2067b5839a71df40164c5d5059d9bff06535d317e331961f17bc5800455a96078be095e8ef8face39f58f62f0991ae3d97390da8c69b900cd47d749a75e7b7cfcfe1d4ab3b01eebe0f4a00ae2c7ebbd134e731075b83dd7eb726daa461b7dfb31d3e0f3f9cb15ead0771ec9193bcb899469100dfc378750dd811bd69b8acaf4c646414e5385b8737653eb9773dc9eacb89349e8cab56c3d0fdda5d646c82d2039fafc38b0aaaf77b93d86b7daa2016c0911ee6f46f1044c851176ead85e775ffa9330e904d28bdae0c4820b7a4ad0844765e05f5466d3ba1eb2381284c3ccf0de5c31744acae33720f05b38f7cb099262b94f4b025cda69bec27ed08c49b0e113f510d2c36a39bfb013654fc27f8802f414f9b894d4f9673a6bb03ea26b5d4959bd69c08aeb2eee3a28ecf78c61715751e43d5a5f6d8bc5ea7a70de3571d16ec9b5def79e3b3e0fd61e900d98bb0bcfea8e2c29651d9edd613693dba51b0eff6f8dbcc51b116244f1bf4a14c5ae484fbc5189533dfe011c7e8b75ac8287bccf269f98f2628ee419354b02bbdd9825b10eaeb0dd8d13423ecbab0425c98a1750f3c75738d27202ca4e9b9b760dfbb6fe86914b7cd3876800ea409b65c12dc01e2d81d6a2584332e63be08058566543b064bce5673b7dd9dc4f69c45acc7650291ddc87d4ae9e1723d51701f3fb3c11376019a53ab613b8b7138a83fc76cac853355a1b713f0621f8cdaab631da8a0941c58c0a934cfcaae84cffd95ff7e831cf38185734972942549b74d9c67beded7174e4c76d0ee55148443e785fb73955a582e9a94a14c621d6d6cca5b9f270a84b030202db41000965e0ad66f5175124f211064a2af0c36591f16734641c87af774708b7b7b8226320b34f488050fdae7555e0fffd1c124986ef03d2205b4b809514e5cacd34e7d0dc8727772fce98e0e975c64ec8258e22a94bd2d085a6c808c8fc421346fa7b5e91c8287df545b1b3589a9073877c2cdd70000000000000000000000000000000000000000000000000000070d1113171d
+flags = ValidSignature,ManySteps
+
+# tcId = 10
+# signature that takes 5 iteration(s)
+msg = 0500000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 604ef7c921fdb209de3a95ad6c032162ffe69ebf86638fb7e5a2a9eb3ba4b68fb7667f6b5555d000e4ba05a2eb6a4d324b04311e4ea01824c1d6cd160802ffa20196ff1b0f0c1789ede25d58bd01930986817524beee3d93b1fdcf85a3479c7086029d04a3ef378a8d4658310ccbb441ecf9a273a50a7d57d2a58087fa0c97c0b31b9abd8246b1e9d46e1dba106e5f1b5682fb9f8c8c7a8a170b4f12fb5b2ffc08514d7f68dc81d9005283abad65299a75421ade87ef90300d9faabf7b9a7ac3eee8abdf8269946b0d3fb4cc674d58ebfd99377bd39f63c54313995ff3ac36e8753637534b8f913311157a149db56217ef758b65afdc3bdd7d2aa59ebc42daf9aa027dc753f051db015a9d8b6793ebf50094dea5f38ca7c2824936f96981fe5c75032921b6817b81776e28d18485777cf6e96ce2a57a9663d30d804a2e07e188b77804eb54aca4ae43f3ba71a3a07264a1a1aaf6edffdbbe37783e11ae3ef0b3e8f5093c1c6566366e65c5bb6711d706cf64b1f579a44fb3a267cf962751d66d46c0208d1705d535debc5f969c519ce415731ff49f93543b56cd2689fd1f94c57b6268afc5135c3a92eb3856156b4918e79bb690b99898cf5a213d63fe0a1d5aa3512282215691baa6c6da5c952f9bfa3d11c4cdb1ebfcde709e5c3347fa6d990e9d2d805d63bda508ea9e3d4e0bf2f5055201936dcdc360900116309970ab4ee0e943248f021e2acfcd4d7f7696dbe33beb7b40d5deaf042ec6cfd50f45d65f94812870c71e3c2b61db121f634cf3fabed0e48f6fdb63e7087d2042a1bac7f2c296bbdd70078303f05a7974e188480d6cc1a777576597afa9429c3c3cfe549fc41887993f883e4d823ba74a79075dfe5a3a26d794768c27436ec5f619e3ad605cab8c894e2242201f4381d7ab1ea3fc346ae17e783e53c95ee2d9bed1942e5f3f9ba65277ac7a0658faadf48272c78a8c9e38d6f21be59b492f4e0c134d965dcedd49b0af638ba010f8e2df94484b97094f63bcf8660add7a05149fb2c2753d06bdc4196e2c18d7ecdf685358ecc03b3d67b496828881a8f00cb16667ee52a969ab67f6e2645da8345d86d5748119cf28401d369270c7aafdb3977de4ff328cb34147e1f37db7778aee3e08a93523cd5ce244c78acca1e2a7b1f6d72b76fc86e7457e9de61e473c605a305fdd5591c16efb499c5e5ba83831d202ac14222b802e8c9941522fb0029b43e9f1cbb6892994382230456e899d60655f9bb29fe10811098a0de73a4ff87da05d0edafc2fd7815fb1d87edc40316ad7ac11474b68b013430c4023924e021706752307788f0309f86548f9deae7736431e98ba50f3d66b3036111dcbd1f28a51c83b1582fe61eab90efdbc9800f2493973d1fcdcddaf29b191094c67cac62dba01ae2c82139e65c29d11b927a3ee0bc93bef952a77c6dcb94c081ae022bd2d70629d630c7db08b0318c915cf123416d6633405703bb670694b4932f716c67ea181f4aa56ddbc781094029837f335205bd4eba0d3fb0e852d4a80e98ea119ac6738af8bfed0bc83ec0cd4b01cb75e1fb73f790f265908bcaf0fc3f3ef3549c149688ba16fcd5033828b2ccd46e22316bcd91e821231111b9869ff2257e996dfb26e9ad93850d6b607a5a5d197bff5620fe753f5b494e21e44d8abd5bee41ae8c81f8f7d0fab317c347e7d00712552610431242870571ec6fe77c1df51f7f78c353ff85660b196ddbe065c6f361a9c05f380eb18b50fbe0a0daa33cbf70d03e9b399e9bf3414e4eeda59ff295a6c5aeb40b2b458e21f43701e625a93a8b047fb221cb3dbd83a86b03ed9de58acd816a58e0dd571edc95d145564fa86564f86aca2c61f49ea4a736984ad58fdb02c0c105843c2327ddc97822d66667b9188a6e371aa5e09110b6d72854d0903d432c51f13b4c61107a7a197602e56b8dd522985af2ca20af824be8d503006913f6537fbe4e288c684bc82144c6123e253e8989c59bbfc83f68a9a8ac0061f2d5d93c253d2ac9328dede266eb44b1f5f9a868ee5052fbb2476e11f9751bda60c8af5f1cfc6e8b9e1bf54ae2ccbdd676e3f5158d174974fb0abccc3b47c1ef353e12600a60005a8732d267e33b0a3ddf7d66e2494e6afa3c135615e4183b3f7be8006a5e2c3ba4f1d948d1b34a320113faf891d93824cd38dce7e0c795ad623877839964555768ab7aa776cb3ea18827a752ee3e7c6b025bfc48b8e8c99512578d2504a51fe29103d93eaf7728652dcf75caf53ec55ae9436a5d41995ea9febfa38c13299f22acea0f59d15cff0a88a4750ad68d2750fb8ac550459e2a954141c5b9382e2de8cb83926f2ce102d4846accde022c502247259918bf44caa8f43c93dafd89bcf727548a9a30e553ca37109d85a6923b42eef083007f258d57b1fce21dbc830618c37257119592b8e8aeda65a98f9cf6f7287a53a8a2c64435c212a1ee90f52ecb9381b56d67592395dd8af5325a09f643504adaee45be117dfb70d92a3ebd78da21529b3d0af76eb71b2f13dc3e2755be1df35dac40c0f9c1f37058c249c44f09a3a2602017e7110760654f7945d5bf653119e78455586a6405993ec923c28909eb7f398aa02f30c1c06b59be51b9fa7645bfdfca98e18793b6e09a89e9e76de835df9a0126cc6ce9973d2bd32029f62e7026df3a03e9fb4ff9ec1b3533eb43440a290df0216b6a78d13d40b094ebfd3797c85514c9f3e57f03d4499ad7e5b0d3f91febdea51738a9c0bedc86df1c80b90864e3710a6c3d328451f3275c04c9702861ff49824d87828bbd5c1e16a7ae950ee2896dff2b82de43a937e31e2de22d81448a682b70c7cc8a71493b08a95ea8a034fcc5cba59b5fb09fd1044b649b192c76a9621fc329baf425c34c30285adf948587bd2757d733a7ae82bb7c71404e9672a40ebd37acde5c0ceca7febf2166e599d8efc1080ea0e9b5efdb3c1a3b54fa24f10c4a706387b7381bf094265a07ad9c85f18cf00d92c66e9257515c131132250c007fe1a39ef05529243797a96370fc51d5db7322e447d834fbf7fa09d136fef12dcd31c3cd5ca35616d92342013f8bc4d895ad00a27a8e641084bd734f1617cbb0f243fa83230393487509c6041f8122c5b0cea200aed694ed603f104ab14b462c722476bf2a95126c9f6bd9242c5ca6a264572700850b33e415742a31cbb85adb1ae6e6380f059441b898d5bed3d64a9d146f3fdcafd788b9f65497d6f547c15b652bf70844848dfc003700c2645381e6070d314b7831b1e429a41754b0ad2fdd71348217f35711c56271a6d7bb4ed15a765d06ce3f970e4568f1ad60af3df6cc2e385fa55686d3633f3c82345bb0c3b539ca8ff2125fcff6bb5a4e3010e68515fa28bc1945a255ce12a391e0e4ec77ffb098cbbc2292696805e8c4c3978d3b4863a6cae10755d2fc016b2a9ec2ffd5c8d3c5ea9b36ee622040e189c2ce167fa90d07164d70dc5e5d3cd9db359dc5b94a4bc7d6619170fae9ec1a82996e0b75b6902ad473255f179edab1b3ad097ed71bcd873850d2e94223c903dce00557f616a48661ae937a402d2a8a5e1f1f6da8641dd423ffa54672bd9adde84ef8798ba5a8c79b56dc2e6ff694fcd63722be9c9146743bb68bf6a8e0d92376848f39f81bc4e061bb8cd63a6d7707985a95b699b37dcd5c0da66ca9b8c7912ab45c435034b3b629d3c898f7d979124707817548810f07658cc72e82af5ee86c28a89bf070a80d2050b251a0dfa75b567e7decc2fae12b50daaf26326f30ff072c1d509eb59c0e523669264966436d2d14bdf2538fcd58495d80c580d6e3343e9bec883033c7c32fcc693eb123383ce7eb2ee5d5b1b09ceaca617346754ff30fa9cbd3e716620bc5219a56111aa5dd6d0de5e3904bf22839b0239ed994dfc7e6fb6c2436a950d1b925fa975f57419ef7d9c3cdcf19cee53044d6db371d1c1c8d0c4eeee9e4b963d197265c42dcff55c5281a742d696292ba462e622429ec0b8dd3f6a8479f7a1fdadfc505d23de0777155fd53e4bba4e2433033c88ec9a8578d9896518db1d1dc30d23c5b82b5db14039cad18389b5dfb6015003ebeeba0e2313045ef1cceaced1bdf0e0721b8fe6a636f983186c7f3c559377e88ed149435bfb8af17e3cd1ee277b0305a1717a0964b0eee875756ae0967c04dfb051933c5fd706ea2ac35cad984553ec63ea554246a2aa10266100ec88619edbdc3cc72b14f2c8a12504336dce5fb00517ec36838a5ab856ce0929414d3962795e0a4ae7dc80031bf5fb732a092109eb3a119765d69f4648e0e690898608176f8233bc010654e01d12844291722a4f195f1cacfbaa5b4ab674cd96efe868c377c577eb25f81e44977c928780d49ec3e52694e2c9e8fc26a8cac64bc927a9cf0dd90f36c11685b172c10ad7d9cf9d0aa4ec26ed6d982c90d7e97123d9cd67cf17198e282934d0621702d22cef8846c2dd4b4c639410f3da93287f4c1929638d1d624be1ad01a8e5364853556ab837a274b61800a723b03373b3da771d0949875ebba692f0baa606d70046c841fa16f191702dfac9a48c8ef9915a0057234b5b6999a9f82b424d6b6ebcf9101c28495575c1cefbfe0517303e414c5b5d8ff70f30649fdeeb021e3d41476f93f300000000000000070e18222830
+flags = ValidSignature,ManySteps
+
+# tcId = 11
+# signature that takes 6 iteration(s)
+msg = 2c00000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 55248b18f7b86d8cc873c73d809b0453f5db7b7aa436797c77fa7cd51624c0a8d924808b8166aeeb2cb3c2a013d1529e21e6b8a4a7ed13caf47861f90399a17277953e2505fb1fd03b16b5d1e1e045f2e56f30520d3196c1e54ae84bffd80cb27b3f0d11ec93e3522d4d3f9b66859311d3b448412816745f34f4b07b8e593be1bc747f4eb8e8e20b9addccbc4db5fc155afd4409fd5c8e23399cc55bf67bf9c4614a44f1342aa58f462489764491233edb1bb8c4084fa605d39028e7ee7f8e44dece7f58a28d09665624fa0e0b5495a43b6a623bdcd0fdb6d0567d446dc6949cceaa15cad8f3f3e6ee63de3019f6f5df02bbd7ac5ea6024f4dfbcc7ec4fc9d618b2cbeee7d72cd5837d6263a1df0f6bed8708d66be35e474783d8f39cb08e130d300fcbf0767dbb4c6f8ab12dde570220f1abed2bbb029d80a927c51620d5679e6a4bcd2d34a4906ef8a0b5f7b87082a57b701879a557a989dcd255a2a845f2b7ceabbe05e853c6a36f8b3120b61821cf8e557a4a487e5065be0770ada01fdbc64a607e19b975b3f90835acb28a023955a713c6022a593208cce54a582329e0890ec4fde395d5eda4da6ae5f17578aa1552c84648d7663873a7093745b7550096d5da5b8aa25e9750984f74d6bab5fa9c751bd828f455a4784844cf8db1681b47b05e5f6c60364bc647196134133db8b2d672f290d37e238f562bdf52e35980e8d94910829ff7170bf403a29f210dc42e7ea1e2168c5d04429efd560ba9c11b21e9d8f081503b861e2fd1d832397bf069f699221199b395015b2e79808be26c9fbf6e18280c3796f29a1e0a4be5cc9901c6b31c84fc69abf3bafb07745ae08fd4362875832ee768c378c3e387dac8e06b7578d8752e3ab4ad161f8952354f1569288d9400f28603b0bd7e239ca2de916e2718653673236c1c3f172d67fd9faeca57ff3cddba66f0f589d297b49c311a75ece1daa7230316128f28985210fd2f1725ef5b976ad67dd436902c7fd6134870da02866ed96ec997554a684216ca9574264efd28810f59883f5f73df115024d56871fe24d68b142bf5906fdf3d3839660ba7d26aa6827f47a05c80f1a62254b6cdfeb55de694e723851a3c2ab89aec1e312c7647b1b66acea5ddb7ae62ca71c4bd5592381761fee9d85c38f2f42f54f947bb3d4ee340077fc86cbe19af332c96d67f8ab84a1f0b0f039f5e6b518c9f9eed9edf2a88dded19903a0b78e17353fc5e1485cc722dc9a0b12501374db57b4161a12852a45d160ce3a21a44a8e37cb8dbac3d3a2ae131fadcec0063ce5b777df45b67744609da238f53aff0ff8e1175fb11a22fab7fd016c41f8aa636aa2ab7c4508f445b01852a9944277309f7c77d1f64048dcda6206293f89f914152958c1ceb629d7991589edcf3e40cb7a75090cf48c55f1d16b98fe26b55d31dd860b31e077af05012c8d4a9084647741f6b0e667110e9cac2dd031c1e82deea92569bbc8454f586f415c08c18220428fd25fd0e06517cf89ce7673961396f992a0f395eac5e3ce1b81a77a78db440039ce36670644592d36d43e1f0338d8f54fbc5c97c5166d9914d4837e7d005269529072c6b34fb1e5e8ad177d8e92530395896584aa3b587cfaa74d4effe70578d64c8fb4e4920528ab0bd4bcbadf344a148c1ee0c77f28dc6e605f60093948733fe8caee60766678580ad00d685d932ab692e788f37a54342d0047457cb48efcfd994c47cc57cb4abe7aca0508f3c5551c51d448a111ca477c16a0018d1758599405ea49efa618a164d2220dd714ddf9832d1c7d1830d93e54ebfe9353d5a90f2a255ab1578199c3e379aa4e6acf2ea07aadfe7c8b2b59a7149feda9c35ea80db44225a081a489a9f2ca447e6a577d87fc46931e01e41b67485fa59951192ed7949913243922ae9d2178b24eef6c608113e8ca3972c705485b3008cdcd6fd7bd112c13ab780214c47ce1d7141f00a4c06c6c8f9ac508e01c345a940ae26d374667b1afe9c89fe5d7ead12a5011ab593de9b4f5bfc68498d2e3dc6d1cbc4b16f7c36c30e2f1b5243df73230f4b61ca4f9507c0c2092d7eccbd88d3129db25e76ced278445b7bc91680bcfa73c89c84623cb32e5d9ee335be23af54a54226b1e7a542e75d6cbf16faec7867cdecfebc5483b4b4bf50776f87495d0bf6c596e382c859020556670d70af2272f816b3881aadb663eb91ba95f31dc17ec606d64a55f44c12a54051bc7119fa3af23ccb55ecc9dd0875e8aea1da93e78c77096c9b81c24232a6f64aeb949e65f0527fa9f9d86d24ff1167525c5ef0ac2c6a1cdecbe5c98ecca4958d07c80a5f41b2a645fb78ff17828210ed843f3233913a021a7b5f187db60476fe139b89217a942da48201f3017d704a9e9590800241501fe6526f0e3e05af68c0a4936bf317375d39e19d502cdc938072403516844efffdac2a1758c2ad1ae29cf8578356e666b5f6b60e9198d847aa0c88a903759418bc0ac2eea77802b2a41c514bec3149bebe8fa0339176b8380e5b08fdbc390e726167ba15757842c4c9a8d1a8377811f9ca3906640bb38bd3156dc2676eaa49cf6a4cc90635da341be52dc7a7b3900ea89c697f450b6dfea351cf0b0673ac50c72d7b2ed3cb45b06b856a41c3603bb50dee0ebe272200c6e48a33639bc6369963909c6ac67ada94af7b03dade60927f35b97b27a5251e3819c71372bb6abe636966323f0abc04e26a699c46fd8eaae6f3b4b097cb40eebde51f6df2694f14b7178102ca2448e3389656442febe8ddd6d663710f63a8234fa6dfb6f3a9f9d0f69042b59b58066197ba83536f4aaaeb4d9959af819b40ab43e09e140e883037f5e896a5f747f0b70083c4c720f017a021a12746c72e231ec86d684a99fc85f8cb73dedf83d23f9aa6d27877666670481bdd97d428cc1eda80e4c08ef00353aa4c371c3f938c766da833a76929d9c78b34f540381909affad1cc12667e6a8dcf644b51e968512d80017b876790e58c464d222665502c2d1997f67805232d6e6af2b868a801a9e32404d30c02b1fd8ea671daa7e97ecaf72addcbdcbd2f6be3794ba20d938a8cf15db52ef323ca6b47b644dc93d82508249411b9aecb7ae10fde49fa1b209a2160581d62c10962ad419c2b82d553990b7583106d153a1ee63df2a283484c6a0ceb2cc71919d00990f7bb87df0e6c4274fffd98525bb325b495d860323ce49a2df510c2421904f4bd3afc9a45a9ba84ceec0b8de7f77f14ffca522b424778157bbf0ac8e873f05837daf02b9b158c7853a45f279dc5238d202403378b8ed8fd1c69ed29fa4e5eed31a2b803cf0480425bc7746bf39255810e57bbef7cef25686c0893271c57feffdfef6346552e269f661a6e396ee399ab69641e7ccdc87e1867fafe8a754d77c7c05e49196646b21b06bc955b4ab287a4fe3d0749fb65ac042408513a736e32c382f9c81a6381d03c7af37a54fd3406f278e4b4f58b98f3202d7340933af471c840c0379cb11a3afa691d6f50ce50c20b02623b45123b75e8c26b64a221b5c36f3758050870413efe61e0d8e7f7bf77424b3478240990f9333f0ccae39fd1d782ad05bcd1aa05b0b6d58fad5766d056a4587ebf5e848a8129e07bfeff86ff50547010d4378b9b1f565a67207be7571c8f330f03d5ee6edbe06510918d7e81aa916cd49184098c99959fcab3858e6bbf2ddd62571be3869bc1f3d7e559c657319198ba47885c7da9e350f26b4e25c17d27d55bfc7e6813b6c30cb1f8e59cebc5f044e5d41f59c46c317d7020c57e13cafb8931049caefdc3f296c0363af7f7a89ebe18c0602cc19e8dd4da1bd14f296066183e80c03c806255a5767639c1bfca3037cd7efae6da14cf00b33f64b1021fc0a690a48abf5c6a781560a86d7501f8d0d05aec20881d23efa9d43747e30b262a3c4e3da85283cf5cfd94cf4e485ea56ae0081bbee0a9f41a333ae2aaca92c7dec0a2df94f47587e59fa21f80624a16e6b449194d1279ae5ceea47ab02b465b8da93ff50389aae3de69f5fc8a0eee992ec43e08b55be7dc9684264665dcea7ed4055306a1776f531d2a386e2e839bcc4d6e47640927967dc5c2571ecb8153827c44dc0ea5a60399a4a285798893fc5e9ebf74dd4e42575316bebba6173065e6583bd69d7f9ad0b8b9c6930c1c4198c5407f06008c9d04b1002bfa3868a8f7ed20a1bcdb1bf75a80bfa5cfff2a29b23e3fa963c6d7618c772538d98355d82905a66722824ab3a2859370baa9ddaa4f4ed6e6676528275d993bac69f66b4efeb8806f65cf8491e61879f0dce6bea760e2b3351a24b0fd65857c5aa099954d42ee9975b7c32b831d97fa862fd8278450d8ca34bb65a23758acc6fb96a81a30f1f28f85af5ad8c7d5868ba908da53e8fd0da4eb182a3770b68e2d72576ac7002ff348bedb8eed91f96af6a6a46b99e5e639845b4962fd98cad0112d74a6fe57fabb250e42c136c34a199e1923d2fa1d1e16abf8ec661c4f3eebae21627ac62a8eab8ff872c769f4b8eba495cd16d73b7448cb0a205da2c5e78c85d53cd78bf841cdd8f94cf16666615314fa389de3a5b63a3c05b8b939dde0041496372758fbe006caf4c718690d8849ae5eb000000000000000000000000000000000000000000000000000004091114191d
+flags = ValidSignature,ManySteps
+
+# tcId = 12
+# signature that takes 7 iteration(s)
+msg = 1200000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 577e0d1047704e02b4ed8653dd7a36c7a469f50314399d9b1e07fdf02a5c8a6071c4f2df79688c1a6d32ae9182279c76311762aebfb94e9410d1a74ff0191784a9d311dc970ffe4b51834e9bd49bd21dbb47817df5991553b6072dc547048d58c7644217ed1671c993d60f9882359842b82f48c619f318ec138842e4049ca3f0592bb06b14ae50ecbcfbc2a6e7c806765d404bbc5db8afa7e4d37f3a8fdcfe9867cbf66d1a971540e04c80e4a2403a0c9e795cc457c0cf1cdd7897843eef8f7e1642b3a9b7f4687763423ed0acb11270fe0bf01c1fdb0077787c591d20f2deb39ba6aaf3f433c3639a6ec43e314d212eaf1cbd4598b0bfb0f4f778f86415ca66122949ce3f101c667eda97f8cf6fac74d92472ef5fda6ebc1383a6d04bbb41b0e89ff80d7f0439b19b1bc570d8e29729b4d1ceb12648ea7ce092ff3311d910bc3495597f40e191ccae4513da4f24d88d211473468de354f1f03be275da7da36bf18233404f9d6f401bc9835544b1307312372a88714435dae593839d8706d74157a81fe8b744fc6a59c1e05f49628f8d39e0585c1ff156ca8101a53d4e48ba22d99ac7aa3f5e84af66140e57dd068ba296a1850581f6156671bfbe983d17e0e16d89511791b5be7350283f1cd100b9bd3ce62b607d00f3ae4174e892b175934c7c885c5c6b2cd3c533fa82fa7256cbd0bf9b53d009196c49d87779b855be3e97b4ef3adf68f02bd3e19ddfd876b55f0565d5600780733bfa95d58754fe7155ac413d67e9d5b5819c66140c15eeb622c0c8c8e15e05c79ef3c030de87a94f5601640f3bfaac0c961d4dc03b9d313097d20b83d27fb9e1b028503a624db1fb862bcdf7996443173ea1dfe544f285c4a029b6eefc5ae70ae3869ee66d220b89f83cd5879d2002866ca765cddfc8e499bc926dfd08cf86888f957f57ad2273e9155aa00ac4b618620953afbecbb4ffc6e93e82b77dfe4f0c6bcbb4e2f849f3fdd70f9644d1d420cfa938ded26dea5fb0052319848456f611f64e5e9a890a0643ca9ab8bf96b0b89864197d75c85620dd76ffdc0525d8872815b92a8369af17dd5bc4fe9519a2903bd8c1e6f844cca5ca2e79fd08d2b66939ad1887e5a651968f93e804e72dfcd6b244a66332e8358c7a39b337c001708dcd088c02c8152816d3ffdbdb323e4c8909e1b1a7fbe3e2dd87c8a985ad008e54153ee21590ae89459bbde19eedf5a23e019cdebad0f9448a72e12533616b76803dc59bef6a5e32e25caaf4034b6e3340398e95a797a484cdbf1433041522cbec6eac497d437a8374e2954c35e7ef105b45f92418b674694180e3abc3903f9a865bf24138ed0f7b5c81a8e49a39f11f3f81109a4fc9b1ddb6dc0d3f9697c4ad3d178b02373a46669fc8b6c7fdfa07e0beebb47b5043bab910190c1b5680a5e49ff786ffe7e0aa243b58c5fec92c148fb48432d20c76c88ac3b4592059eb414e2bb9d50c8db83f8003542a1a58826dd0d91fca351067c13917f817e32a438c02de1d51c3e2817c280f370a96a9145863a7ac1b6a1ed1ab640ae1acd2c72a05928b30ca51276ab0d3858e6e5638f061219af3fc0795a54d7d81c368898314498a6b279ba111c3a79514918adc6675b279a5571a3c7a9b9d79d725e852c2204490230a0270f00e758bd685885518bb15a456ed6344786dbd5c4009f94f04206e87b51d092aed1aee3473f8211a3ba22a5ac092a53831f37f4d15bf0937b9db11336018030469aa296807e6a5ec829c8b3fb741cbf0207692fe30b1530d545a56a48fdb5b3f72a8f158dcfd4808e30ea8fd7e2d6a19669ca7de2d50015c586dc17a37e6835685e691e516e517be2021a81d42f0330e29e8114fd729dc1aacef69e006f87ad74b0944eeba1687a2288607a3ac930c106049bc7a9435d548fc275b1474299c7bcc212a41d9847caf8def2ee7293986c42af986c0cd28ea70e56993876aeb3ad7900e84daf267adaaf5e9df3877aa1267cc99c7c6ddef01867a17019cc013ca1a921a319f1172500ac75cb8a200df0e38c1cce4054f2b0fbc98f76d4c7b61d6ef3a54ac0c42eb2c9ed53426dc2fd289e71f0532a026936629b6eb8657241b77b94d6ae11c54a9bf5c7ed7772e7581ed16607bc090c05269052fbfcd3653a9cc4fe8d0fc0692dbc497344bc73a3e9044a79d7dee977168d1c1e462b03da281e4124deb377be97b286ad5a1e1ca93529676c25c7601fafbc3cad171ba3265690d6ce37b760d053a0e5adfafa070becc84b59c39d401a4b3b84b80c55a9260ae2bb510230c8ac81433f466757affe6c55d6b52c367c37eaf0bbe5134a7ca5f1aafb745fa9025ed419e9360d1649bdf87696033742cdf7a6804cf88ce19c7d0f33482c83e65aedcf0e3da55b395198579a02847899e5778fd5369a88d04eacc1de1ed23028c4de2cbe5121a6c65cf648550ab340dff5b49e51e9543d6711ca1c3d26a744d1949edf649b81b7fffcd663de4532ddd1e7c2837d6b30995029eca9b30c8e2a00dca5a44fd603430daadadae3d4ffa83fbb4c97a373993adc8216638f0203eac09be5ad7f222738907a1c2b793b419c317bc0312723c0e8371cfcec8a13065df31978751df34ff3eccfb5b37315fb66a506083e5813295373c048b182dca86876528209d157a44a739cc9cb99e076d82f51885ead7933100d030a3a7745cf81cc36639e50be9e067b09a2b0015a7b86446256fbc977ba87ef6ee700528e751d5f346d6c24308403107aa05a95cce61c1e3894a1dfd97cbba4f3a130dd491368787593cf353d3eeffa56640a3451cb9eb207c19de0edd3fa886db645e260618326095e8ea93a1092183de833b66cd0379b94ef4a1cdf87581167db387e0ac24b750c47e02c98adda5a834b9b00e88d9a981aa98bb30cd8982afa2cbd7117236e03a23cf13f6ab2f67dcbd580a1171deef889889daaf156e281eb5a3be2ac914841f2c7907228971981ee9567e18748c03ebfe9d4fa67dc2ddaf865e1abe1182ff33601b97c44706a948f2c0bafa57f3ce3819005b5e397eddc9022bbfef2f65f9f29d86add3577a6fd117139a9ffa190b725d60aecc19370343a82f1f0f584896aea7d57fc092b74c0769c94242605b521e1f6a4cd2fbcccbb4a80745d3f431e1a12beb8af87145b9eb4b0ffd9a863e27b18b07fac43bd686bbf08d040c201ca574baf00daafec8f92c8a37e43f3bdc7ea514f2e0367a29642e2e89947a39c479c4ea940fc3771fd57c37f96e759f333f24c3eb1a67e6b202b459107042de9a1b789f9e9e8013cc3f2a89975fbe6c1514ba2572ed81629e0b418d8011659ed339bb37f0909ba8993475a4558027613efa516e575336d735716ceb77dc54678337a9e1d70b87ac85a3b6676447de69d6bae2a0e19048b70e0af8b767165353c1320612671f17430a5233e2fd95237889e4f11e5fa8ef905fbfdbd09db873acd82420e6a5d0bdd6611e5caa0183841804e19da3cec5a21bb75b91a01a47d7ef749af0fdf3b224a2f0d6abef86f850d16a9d7e0df467f28965c485156fe46e611f311bf59ed3f5d690ba6572228893e95e9e370f022b2daa966b31f41005e184e758b9ca396a23f01adf0838f9987433c87f9b0a98b5c208cbb57f66014f66bdbe793922333ea1aed91419f10a90d5f18f983027b901e5f70bbaabfcabebb53ca657c93b0899950b1dc2c02f5f6ec3fe58a4ae5816013bd7b15111b10779b13dbee751427673aa97e00eb9175dd2bab020e1ac9c9dab87806ac164a5d8f86217a15d4e75d13fccaeccc0798fab7551bb9ad89b2c804ba49606ac08adaed603422726a9c7b4c5a30bbda9d46004adb1baf11c4aee456bfb369390e82d504d0c300b18608da25086bbbeeea9baf586182246e6dfd6f15e2f199887756f6a914ba6cdbbf5fd5029f67212c406f1b5b88c36cdeaa982149f787e273e32be8f713535afeb960e302b129521ed3bf2d0a911908e7471527e7a177748149ac35e20e4d4ecdd95c356d84143e4cb6e627a1bac0cd813c00985913a148806bf00bc1da3b6d123da765a2863cb07b208125d640afa03dc3f2025461d228665da2590e3cf692163c5061c811f1f1608614d9ae6301794d9b35dcf0ca31ce7f475b085f14c6edd944cb343c08e5af9e9680f2e20656556cd60c2b4b3b10a66e71d0eefa893a88b7d3e789935173c39d4a5d6918f3b41187001b5cbef0cc6fc2b75b2cbf7b4581d97ab046f1d926fbc9a900e19a5bfea2989d3a63744443637de57a27269036ab9f35205a6577191f2efe1c01caef6f26c697fe06e7fafc6cd7fa533a76cc3ba9a2ba2b07bb2ae7cde729eea9b5460fcc9dbe9e1ed7d024668adb632321b2a649c2b285a19e2c5b1f18102be86f3181c0264d262cc55b2f2d60ccadb6329f19303a012ce1693a474d651a14148a0179855cbf57d149aea3165adb2bc54a53452f4faaa758e7961c80ba00dae2f3bbd08ef95901f4747d6b36561bcbae89364d090ad6fa9fc37287b5c901bf19504bba36f0a814634673918b1141b49578bddffe2b30331db1fcefe1bbca0ae41ce4f1e1cbef7daaa22929300404974c4db0b132f5dd4176eadb0d02e35555c5e5f6282afd1fa494f6c82adb3bad3e5f4fd09222a62bbecf700000000000000000000060b101b262d
+flags = ValidSignature,ManySteps
+
+# tcId = 13
+# signature that takes 8 iteration(s)
+msg = 0900000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = ae6b9da548f432f42eb2f2d6fa196c10500fd99674009ec015f6c5b2e5fa39218f361eac40652d671454bca3ad7e179fe8e44aee00e1731df3d0557e2f6b96ea805a7713d82fdd1ca369c868c10654dc0b38916a1559517334ca20021489c6bffd9942aea8c7ea9354e42d2343c6700422c97b882299909dc15f653e6d69c44bedaa068c129f0743b6dba58e0df1e30c4db0df591f75bef4fa209cd3b12b48a7e3cdee1e7e4c54f719ef10611aa4d2a668fa6f9004252eb8623f309069d73b46198ead952e30b5d2971f57d7c983a098d9f7a25c8117e2601d57cbaf36d0434ea72a11c2214c170e0e0db7431490ed801f850002b2f959eafe961971d8992e4f306745c2b7fd7b12f73ccf6757eab25b87e39b0a2ead28e3ff3096c706305d880df78ee77cbae24791796c05b537531e64e69eb71be60bf60d88c076cf0cb19a6858d435fc333d962a668a979b31a8c96036b516911290d7ec16b6f6fff2dce67fd4ae815e658ebc39b2a35666a7d1fb2444c905bfa913bd77146ccdd33adea9bb35ad871b8c97b9c2a836721f967e62382bd0c62073fe60b2d3eba75734ef612917b1f7ab0cbd34843fb01029b1b0c499e808095a90887a2612411d6cc8f85020f3b903d1231f5ad3cd251d6925c3bb87904186fae16c0421144eb98cbf30403ec02f38199a62c41f175d19eea8e3cd6c25897e773005d5bf931b45e2494c7553903bd64f4bbb316a11fba9a3d2ecb3f8fb6dc28a07241ae8a4c755496a494d6b0b9d4205e35a46e028b72c7af11d6190b23a2c70404624fdac2302c509974520bdfde087f3649a241967c9afcc16970af251b5ab3046cf217312ff0ad54f6f23ba940840a340498a257dbec3ffa44532057fc2e4e12a36dfd88e7ec42a3885a6684568af0b8e821b17abe98f069b27dcc045e8fc2403cf1e764d1adc4aad6547139d107f8b77d89f1aaa2d3be24cf480c9e03019c151c173015cb1db490850fae6be852af08df73ae2b98f763444d28408469ef1104f7816257a27a7cf78708dc1e310bc0f7cde56ba7f32def255064fe81e9d78490ec9479b9acf7328678ca8aa3a8008902a9fbc954d8c1ce50aecc797943d3b1ac681548144cbbad4805773408f2c2455f041e68ef7ed757b504981a38610f678464075e662a156c058e58a6c9fca1c5c352dadaa66041bf074036bc3258df98794dcdc64248a4af53cab90d7873b1bfa2dedaf6eed93a594ead4ef4a1f4e843bfff325aa756942b2851a9a526f812158c591f041a8c5240d19603bff6afb53fe8d6d17a69b5f0752e2e7350cda72baf17d77fd96e1a6c5376c358f61cfe5f484bc401aad80a44a8082305bec47fe643f782cdad0f8c1b46b9e0243a66498942ea5cb749ddac0f14c13dd03cfafa9840cea8f012f68c5787e7a48fafbc8c670a564341dee0331387e3efb7864a56b3982012da04abc3348e46eacc521dc9ec86c6a737421d5e7cdaf957137a427efba3a0837cbfd17919c93108ad6ea479a7b41a294e4ceb8b68585ee6bccdf500a504867094a4a40b20d254ac12ebdc0f9952b20d582dc737c5f7435b6de29c5bb73da4b55ebbfe1bb7e0a4aee4c1af9d1781013e082484665964eb913f2fb8c547096e8a7a0cb6b8600530c4824c0b7b61ce65f1f4c04905aeffd6ef705859b19ffa28e88c65d1080c61e6f14f769900bcc66ead17e7f8a6bbb494efd4141f7e158a5f6924646ff7019ff67c0ed0e178e9dd47f53c6585887afec69c41fb40a23713d889141a0ff48e84778b1e6f1112be5c80a6272d77f514af6bc9dd47bc6d85f0d7cc166c20c2b8255c2fb63c4a9a303396592cf43a8de7aba3ec7a0e45470410d8bcd2a01016a326617bbff7e110b18129a56900515a8d54224467773a7a731f28e9bf5a4bbe640ca5aa012f1b4ab22fe14f121f3a486505d01e27b19a87801efa6fed57a636880dafc40a820c73ea49c2870f34bed3b504c2f61d1a61d073957dc0dbd97b2c68dab42d9e48bfe559643776004d2fe5f7c0c7e7e843628ffb368dbc65d7579a826932bddba17db9de0f3e573916f2e80bfe65f1be24aa0370aa1fb9b84a140c3d6f62fe116a88528aad07d190fdafefa49b10c4bad1ecdd2e6168310c346e0143f57099cc9ac8159e003e95158cef5a518195e8e53682e09bbf1d259dced3aeb19b3ed9089be1bf50ff25080cb7be32e64ea027a54ba01811b9fdad60afedbb7423a2d958b90f1a568c413e50284cba2ed180d3df64a13f210a824dd309871843ba5a5df8dc016092a716bcaa39e59c74961bafcad934fbfa1ac73d8e876afb160c98f7ddd27139b5cd3493cd18e08290e7869e203e7e3c5e2a077219dacb8838d3be44fcde42ea5a3e4f21037f1f0f66ad8b526d723c31b037c4c660171cbac2aafefba2afb0cf667bab8936a9453e6221c71956ec22cd70ad54226be512911597add00b3847347505e4e7a412854463444cb66f71eb359d4258c2fd33c5532e4fff22ede008ab72fee788e4bc10c4dbe9dc3172d6406f6b829903d6268206fd0b10bffdbe1fd62895790dc2f0bbe10ccf084605e3d19d4a86b4b64bfe62d3e7a1f43afcfbbaa5ba55348661d4c416c7219be1de32d038db26b8cd1e947fcde7e3a819e89891df896490996cbf958dbd4bbc5b82bb07ed2b83c96a87348fce5ac03f5e4ffb987c02675a80465ba54add3ae26f67da4a53ee326499a44031defa232cb152a40450ebf9fd2fe39f6c18b27142045bf53e844535339b0ee3e1602e499bc4731e8e536eee46d7565be292d2cac2586c2ac0e139ec733f2b240fdc69dddee8054fd0eebaf8df2d9d36f15179c0d05cc309142ab8d30a75a613053a21c5a4d9e1dbfc7ac0ca37168b999646711a61e29327ef73f462be930228f97e563e6b1db0ad480d3d73f0492131f2dbd94a5b3fbb9d2194adfc1a396e60bc2d27b51289d491428219eecc092f56250debbca32182a31fc7ea67163c9ab89191505be15f3abf1fb397ba6e540cdfb3661693b6eb76b4da66e7d9f887d7b415ed946df1b593e0523b41f20cb1edaafeb53d733ef11e0cc0e2eea5a8d4497c82f1c5a3bfa39e0e9d49b3acf3915fa69e4b9ef7b69a7f0825131e6587d335ca66c23d4e54db4075d61ad0e6171711b94e1b647e62a8b9c63c089b0c2f3bd9addf550df187a1b9d7f122278c697b91091d0bbd8da14d3ce2627e5076556cc54d3084c447aacc82f2f667f96ffcb41fc11f5306d2e096825f257f86d55289cde430b07afcf2f8b8123489ef36e58beb4bb7af07da8bfe6dc9c2bfd0a2855848dd46b70244b7d2023fed10a332ffbfe1402ed48e30ea1b3f45ec88d09473ece65064b4e15e62ef959745ebff674e9ea0f337518814d3e9d7aa1c240677dab91b9c0e41e40cdaa5531799f3d240b7dbe702b84e88688bffc56bcd55c6d3d4f936ebdca448add1c8c84c54cbc7412fe201d76294711cd5349007b027fc52d91acf51359dc68e30bf80162450b2e2334dbfc653636ae67070ae6cb23a8fbdbe8f5df9d5d88cae4d515ae6997b22d2ee3eddf2c7ded6ba7ee30ecebbbf8cea56f0ace385b3b4b533f99cfd7f2930783557629bbbcf03f54b5685ef612f4c15f9cfbc3105355214632718898c829133fe2d69ae468cae0a6215d531f4cc801fffd416ab86c4823c8220059bbdccbb945aa7edb32d8627f1f94299e36448a30e0aedad92bef31c17767783b16c818e2d005621b2a551591249ba28005137d81bdcd637dd98169bb6a849ca57a439e726f5ff61001c949c73b5b2b76c1789e59c64c739a6b10ab7fd3af7be25c45d194dd5a961911dd628ab447999b84863b98f53d6b06733c2144549af2e28d1dffab2c147785eda415caf4e9aceac3a018a97f45c2bdfdf84930ea0ed5e5b5e55e328cb44217d89dc5b8592e9f82d2e9eaa43349bd1b82548efb44adb3cf8992de1ddb0389bd7074b0696ac25828dbe1eaa0a1e46e60dfb6b92db42429c01d7f7829e2732cc0136503d4bea76fb98554e17aea5fdc346c7d457ea65f128ca37846e8fb72de28a05079ae802ecf48195840e2a7aa935d817f0bc8d38c4c283f25f3d8b4a92eb7d48ea676cc5109b5cbd651e047ce44238171be96141fd30968e4d71e3ffe7299ae7ec87192ba819d27ff91781ce58835881c941daf943d675d486f6353e7b067becf2ea8d71d08b2aededd6f1045975c74f8840dedb352255fea9f9220b31b1f677a4f7ca415bfcaf3451b49fc7f3c57267119b36ff60e618a70423808f87c7ba2e511b4bdf37ea80c4024aee17953165127a16e88d1f745db529a048175497421716bda17f4af5f28be9d0a5932628aa6ea433202d6dfcb49941d9108ea1b2cd0b4f5d274f35d52bb44a8703651e0f0cecfc7fe933fa5e0dfde92cfadd2c4e7766fbd3a9f214bbaabe2a27c1ddd16e563b9d7539d7c793d00a52e2aa1ada1be432d41defdf6cb4cd4393266dd3211309f37dee5f31430dda1e9346217d94bab66b41f44a93cbd7bd10c94906fc95a1f533f03db5b4b241c7c388f6fc2cb1d455bb5f46017e07468fa7ccf48e1a6763e8d8330528439501419214353676a96a4d405424892c8cc19346f71ecf1fb0d2a2b348395abcf044d64666989b5fd03233978cef4f80000000000000000000a10171f272e
+flags = ValidSignature,ManySteps
+
+# tcId = 14
+# signature that takes 9 iteration(s)
+msg = 0a00000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = bc143b5f4bf58441c91faf8a0f173603ffbebdf13ad89694b29fd3b6818b273e3f54ea9cd7dba3d4510ae2c8f14d843348820d2de5708d79984d05f5496af374477027560edb4795d84b2fed1495d55a1d1f42de240136a7596889a5c03a19a7659f39f9dfd9cfb86fc6e96182b262a94b315a627634ce2fa57f3c1c609bd5bbe27b735e13e133e14acdd1e177ba97bc48873a11ad3f5c49c7a7fe1af5fa10e5dc50c89c387a8982fcf562b2f36af26d05e05680f039d422ef9aa86a5a1193ce24bb88b4b7fcd12440873867fb572cc160008902f9163a4c238396ff943c99505a7b73ceef7fce692be774a3bb5e04dc82df86ea15854f526a2619ab59117d5faba3a2c4acaf2d2d8dc1c5a13affc788e561b1b0923ae96b139e4b3bb55e134f6c2d0a5f8f25fd37ce52ded270d318808c6df359185dcf554a7cd8e1b6afca029c5611f314dfea7e008b1640bc57fbe4a0f69aadb51bbc52a94eb20a7e494db577c04c33c570afe493b52ac0d49702256bf1d948b23e0fa01728a0d7699ce65a2ec8f51c94a452a10f2033b5d6de6184e3fdd07df3fba52836ced06955660ebce4906674ae4dcb5d32f33e87e5889bef909126ff24a9b4b7d51455c19424591c1ebd20f608022236f42d06e90d4cc5e98819fb93fc1b53b8f0f374013271b59ad216bee3101e217a15a58b2f59ca2fdf72dd039c76b5995226a198904ba1fdcfe2685074c07aa60748564cea870bc16f13afc6ae17363b625d0d5b95316a0cd3c4b5d9a5578e57f240c6f8e38ce0de11393c7a2f86b35e50fc19933967b7f51c066b98e88235d459c54d4d1a28d7d194964ce1449081affed934c99854f7092e8c7a6b5b6987d50c1e2dfc4c8b69532b9322c7094c56776ef509030539ed74e991db7fb14b5f676aa7306a0e67d38ad8639971471b578b3b40f35b4ed6d4996de86cd634b1f63948c1a68f056516984e417ea2e1815428a14bd153424445d1f32567a0432fb06a33ac65b861c89aa2f2b79fd911c2a79887465f3ee2220620bffe347bd21d57a25f9e6c97fc7f00c4570a26a9f013624af4d3e24e34d42dbe0fa6c8ab7a85cd735489dab9ac23a1e5fedb11f4c5a98646841bef52f894ba45245442febfd60a66af764efdc16925cdf6449543b49bfe34d3d5dd51fa242e9dbd7ce9082169e56217bb8501947c0d8a4b41f12a56ea30a071d2c6cd358ef952b4f18f417f324331c500e7c056a2d47d0e4dec4e892a0b3b3773bf74ef9769e7d42815af6499a7263719da39a88fd74348af4f53385d76ff0caa71c84d5561b9eecb27e74cd20c46104fe2fd0f86fea87f83ed0213c350d0e16c4e6d8c973c0ff0918e14ca27b97b19a3ca0767f0c213613febbccbca507b0a17b2bd2f042b8509f6c8c38c38842c6dd61cc5cb6772b23307cc4c400f4a43d9c644f448d85abd0b2740c0127002c6da081067d29bcfc1ce1aef5a7e375331b5b9c9ccb8ce74c179ffbb3476b102bcea3e33f947bff12f5c1d1f95df11e5c06f123f23083b7ea655d135b804540ba7a12cf4f23a0c28743289c37b6684b5d357f7a0871ba5f10047309cc4dbea769da1dd0c24db4f68de2c811aa3e2b0c36013daf6b801ded4aac4d83572f4e28f3e360b1e4da0ce26cb98e79981231d2ab7b3eaec655c3cc5e746e7d89b7790ac7aa29404d004a8bee6e758ca9759d272ef565878bdce47c3fe89060450525f5914778553f277227c3bd6f970107ce3b03d12821d09bc7850305446d42665244e3121407f8193ea379c322e0e3ccda4f8c24a1a8cba43c25f27fcbedf24c62afce4e143fd76802cf1bec1e2411c740a111498e2e999a54149509ba83b3d3703e576aad701257df6b969e57c58e4c8ae0e5af4ffd347454a0d101ef50146e565f6fec8e4309225c2ee39c4e0e29027eea6f5cde089a56067262bb297880aea34423fcc1ba816b06ee2bf9bd4732691b80dfdacb015bf005a7a74a486b6cf19d5dea2c2621ddd19bd834dfddd97af99002ea1dff190471a6675b61454408795af44266f438d4f94ef8ca8331755fd9ff4a5dcd03e88661b2033ba3e615edb7b061cb6a2196bf41cbfd4061a2580b5df7a4064ed173810e0d35181b5c324476fd99275d2b9384ee0d40c1cd399c2078ce1f5b622b67ab424da06f5e746b1e8cf7ae8b90244b0dd637de6799cc35910b97dd03ba01521dd9a29cb998803fddb4c680308597095f202631323e00fb85fd939494ad59e34077f1af3caf085ac82043de604c9fdf851bfd162ac152e70f1dc5749a6d8ac0f55880117218a8e09e3bd6e2e2c050fadc9352305ea51d9e6cc073cceab1c2369f0279449564bcdd7fd686c57a2123bea9735d89ba4b25614a20609f6bfee14fd03786fa0930b04e7567dbfb51c408842f82e658064a1253027afea7d4d825d1ad60caf8596c641a3cec52874eef424e63e107863abafbd0500fa0e620dc6fd397d42c541536dece5936a556feb4b8563747008496e4a9d5bb1267533c0b9ef60737ba9d4a0f6e7b2016a57311ae854e55b144412f085c647d747e631acaffdf97410c693d089fdf227ab8ae0318636235f189278e0823eb68db6801ac6c606fea32905d000ef30b1489d6f4d0124d10b97b12f4db0726b7374f8a5951cae97cbe1e30209032b9cadac407cb474fdecd6fbab06b5da028e04e0dd77172239f41ce56a3876d4c56bfb5f8ccf5d819302151187674ef477eea1451a6e4d09371358995c552b467bb216e88ecf78c78c6a3ff4c455c7689c3784d4fdd50ae4250110e39ceb0c2a04e04a3abc1a2ae95ad9011bf2364443ec7773a596970b16d7514a0a7c27bbb0f2436bcf27202ef21543ab1eb1314fef197ee50b4bacc3d8f64bb9a32936e20e0c0826d1af1500c11e704d951824fa0a0d44caf8055f5bf06e8e0ef2f0617875b2d44a3fba8006aaaec6abea7f626f90b5fcd1e44bc2401e0a486a8b6c2f96d76117e70186dfdcc10a677de2888758c6af53bda8912374bfa25bb48bc8d8281970b38bbe2c536f39874347c91b3193531c456974e02393d35dd57596f540ed9ebefc87af562cdf653eb41dc5ca999ae1cf0ad9a2ee47c9f641b68fc56e289844f5f17dc94e3acf4987b33bfd36b1844c43fd2f0fe91de2283dbbd0dfc1ed98cc8445c768a1c25835b9d6ced33d5defb877a7592a7182dd29f5275b0ae7de9954fc000daab005d3289c1d183840cac1832b0a13b4dd5e3f0ec39ef60842fee868e44b946809f8a1879c5a6ce3820b1a71aa6fe12fd19a79376c5246878b000b89aa0b010b449a080a901a24fb8ca8a92c5c2d9d52bc27c56505202f7e7964c04fb22bd6a8812c2bb759ca10f52402233ca15329bd9ea9ec76129f884355bb677470155d3a866727ab923316f271724ccacc23328a07b327835cdba5699f6dd4e29d80d45efc6708f8b7b17d20dab0c0c074e595a1c2565cb98a47c589ad761ab30d4b46c97a1a4d52855f8bfdb2fa59b63778c7b6676c0ef5acacb7155a1362dd2ab49caf6d95b676529da71b2bf6601e7fbadabeeb5827f782fcc80f8325142eb172660d2e5854c21876f1c40d93042b1b2b6e0e5cf2ccdb6f2cd7264ed7c106fdbe63fdd2d130dc242f1e71f5f9b7647dc2feaaa6162b6fe0cb3825136ffaad90b67bb67d2917e657bb8a623a5f550270072d95219ace90168bebecffd3733402fad12f31fc9894ac6bcb51ce94bb88ecbd5b66bb8ed88d2260523e21e4f6fd20d8db7df6c2604e0a659503426ec9b167a884f277a9860481afbecb69b2c8ade9c270d5f6d064b4e6c95e63d6a20e06f59ef800d07261906ea6541e77af7128f4fb3e6ec5932a46b1d1e0580d68896d256f29baa055ed91bd177cf1b1ae2f386382ad95c1da7d7949d398b6ded44859b9b4af1a117ca76cda1399a1def5085111d69fedea3fda8947c0ea3fa744755123418f127fb2bf57eb04e9480b1e20bbf9a091cd9830ef6aa6589df921d498a149096b1637ae5222c9481a826f34d5c5e66dcc2a977fbf141814c274fb2c07b6abbb973456354ed4de863c3a74dc1ea7007890129a9ee6ac41c026bbe9faea3ae9b1f1bc38fec4924b805143c0734776eded25925ab85aa943d628f17d5c4cf37e41197d1dacfcc1114eeedfa449fedd5749de33cf83add605c9d0bd3e32ebec64102b706961a40ebd9381128bb2b430748b5b62640a065cc0874d0092a4660bf00978b563257aaa4fd9e210549b5262510e695f5987369588eec3f6d0ee034a68ecb25eac0f0d9764fe27819d4039af013727252808a6c2507e2da48403efdc9fb1b27ab8b1de11a4b372b2311a939f3f08b16c77bdf15f3ec5a4a916a179ea7f64b94ab37bba8b8ad8cdd03b3a4e929f832dc0ddae5ec0bda1975ffa2f5d89c060b77c88ae263c3e5d0a157c3b2102275612cbe3d26a0917b525fcb759b958d3682550da4d9cb46d8787215d374c126db9da46bca02cc4742bc5ad984718477678b3c1201afd2c94245fb4a591593f38caa53b476c9af0784e999a50e62954fd2fb6bf5536c74a7a9877d9e20598977c9d400ad84cba1899f706d65666060f991f3483a2cbf8fd1294a7b5c7dfee0338414b7c7d8f969bb4ccdee8f205172e30c83249787ceb2030375b7588d1f0fd0000000000000000070e1c21262f
+flags = ValidSignature,ManySteps
+
+# tcId = 15
+# signature that takes 10 iteration(s)
+msg = 0b00000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = d54fc0ae94872d53a8ec295b549a9754c675028a84f54c25695a3acb715e1a3d8ba9778b3ddaad25b8c487d21fdc62b879f43dd429dac7f5c303a485d0cbbe1e9f65e53ca8f722cad42c27392f63cda0cf5569930deb75d02bbdd3f971f6a9ec96aaeaee32be48c9fdb4969667744489b349bf480ea1249cd516ade4d4b581e3c41103b5267ba72b8dfdba0e4621a93edc18b37fedc35878d6f2bd2d0115cd5c2e243ba4aa02b95ffe6d3ef1f12801ff1ec09115d4255e202d957d0b8666b60dc8767b11f11b311d9d1f0c99f67167025ac9a0ed6c77c319a5d261ca5416699bb51c961d3a077c51949091e6cf0d4cd261224b6a88158d78a45730b6a86b4ca31380540d3d04228cd51c00a6671fc0036b657f3b52bea56ab503adbf4fad1e452bd3b1b29f27ba1e24d6f302ea788a7e59435ede2de69ab30e356dbf17bbbfe176c2182f870ad9a8a819f5b85587d229beb13fc6d4034722b72de83c1613fe434dcdd26c0346571cceb396e3389d08e1094fe069219a509e59ea17381575f4ab1b4ac79cb6cc64e5dc5897645631e187cb4f4ebbf1dffb083f7dea6bf6b4991a32dfdddfa43910bb526b84c797495df6176cd7e5ee6f42ebf6bcc28fa9fe396a8f72668d33db7821ab5ce54b7930dc7a90b97b9dd6b12f5d370bde4ad41955c5d7c1871632fa717237d4f39dedaa0cc4ed74900c688ae91571fa717d5c8f70837b8c27b26bb604ad340c98dd5d1878ce286b1fe4451a20a88a4e8902e3a1cf10268d26dc6446f7ec48a84b8bed9641004e1af82b679cf1bc29c7f9126f8aac9688ead72e14c4fb18292ca507c976408603bde8ca2650e3e50043ee112714692f871ad28305122149f098535424e4f278730c0be7c1124890cdd4260dc32d63db460399f9eebd339b73a738b58c0a008c857853f0df76789428213f65107c4359038fcfb366fb8cd74f2d955e6f2b30b3e96c70d9100c781f1d6031e210b541c4eeaf30bbcb16ac3c7b21cf1093fde4999c8fc254eca328dbbff7c5c880beb3e295d2924f7763720d5ffda0cce07e8889e556edf40e681e6894fbfc49413fd5b3ff232ac029579ef7f7cf60bd6ccd48d9f76263e948049a217f12453db900ad213e7f3e4fc409710fee4c92cbaea422e755cf51505730298decb37d805d1d333ed46a84e3c7659f187a344f5090bf338bcc76aadaa1e77f726b2b11880ef162f5d2812890a0dfd7b9a21f294bf18f6b447d1dfd92d009fbf144fbedf86e1cab012ace0a2ab31401c5f8f8aca4dc92c3609fc263cfcf56ef858446d9c66383efed916ca0c0ca351b539a7b4110658ba425d35b4c2cd1e235ff2c1c0840a292f23e34ca7121273ecac5ba01715f4b0d35bffec379da93405994ea997209efb895496eefacdfe9161f7c69afe3cfb9fbb3b68e105edbb0b27b1d0514c47d8886d58dc00c6cc20612630b0acea51396ab086c346c07206888257b9af5ccc06b867ceece53b4ebba63cd4a374503a524672527ff66f570dac73094f90c6dbd8fdca572a9388d243f63521c681ad8ea17ccbdb4b1bb215acdbae279ae5ae1908bae519d7398c7418cd56d0804eba259ac01a11789d538d848b76afaf7b93fce336b5bdee63d23b3cd6c46dec665af77a8c4efaeb9e0ee1576fdf7aef9807b4884f767d6c3e14c99c14c726c686ba8feecfd54c14a5234d7ce4ad7093c673d1251b353edd080e30aae264037c61ba8540640aa38101f73ae91d788a534511314b0cc0b4c52911032bcd286919ec56507fee54032f79cc1e1d6cc6c88d9a06215e9f3ba38d5f7bc91781e8cd863108300db6adebb51a790f7a2ebbd8fb116596716b1c7028c8cd9c1fb1db566c1641dc732d41d75fc7b8b0151d1daa407fbd0aecfc0fc484b1d43f68ec4614a32a38864d4acef274c6ebd8c8a6450a29d4e63503af63db37d22aced927a24dc40870ea3a891045a5a77c906b963980f58c5ed754ba710257fadd4f50cc13825a69e3548be0f5e10f6322137943e44de4a5b3f48d62ac256d7309e942dd1f3f211c3b8e745f79984dd25cb9c6650fd5c7ccc6e222852d8160fc8c97b52bef915407e17c88cce2eb560d359a92092846bde8f36f5b1894a3e69efff64fca4d6c0c3259aeb556370328a3eea80c1b2e61ba1f9ac0c5bb047a4084aa0668103a51ab97381bfa7e6a6b631e71a91d6191c6983d6698efea65cde4a23dedfca7e6b9a329b132c3865308d7ee89bb49de4bedf2f1b09dbbf729c1f0c53409feed48a120d2cdf57301974cb05e78619c848ded1fe6fe493dfcb581d5bda8ff0146508ab2d0caaef2fb1163bdda0f57da71805e6e53c8cc56a33d3bac12250ba331f380f090d8fd9c29c94935a685d6ca3567f140ca4278970ca42eab4c75056700bad477ff9865462dd82f7bf05dd0b4acf59b238a9bc9566997de3e3ffcb1778d7817b7196e3d1e06efb4c6f907006837c8a2e5117931a3921965db84f51390bf48ce8b54d44c6d8af12dbb6d171d50145178822fb457baa2b78246540fd9a348fd3667fafe1c4b983665d2bd676dab43a63821bcdad0896723b7b6c33e78eb9dd7823e48e028197cf494b16ac3fe0ae9978b369ae4f144c7aa3dcb5f2263cd2a29dabb0b14a442d804fadd786870565b40874982fe9a1f1338d1c02e286ceb42ba0461a73bda8e2e1304dbb98974f7dacec8d90d6385cfef3f453dbd098647eca6d33e028fd6c0279a090e36a068871a1ac16e298aabc64d4e7d66f3e6fcf74f56ec909d8aacf8db5d9af2185fdfe2de96ee568f78f94910be75ddcbe9b06dd7dc290e7b7e162bafb6a3cf8b6c90a8b02e417b40b632d7c0875e37ebbfbe21f2b60535b2fa76c3b1cadbfb8d4176dcb13b530e660bb2340f276d3be55ff24b29746070bde345fe7bb8d06b7a4dfb85336acec4bd02c95b8819b81d1611c2a61b31f185d70653011f7affa1f6dadb8ac5e832659e09f71322a60770ab18c3bf2033da08fc6bcea35c4f3d00b36d9beb7e5baeb7dd63ebce5bb46b600be9fb7674fc4788d72f7a98bbcdb23c49dc6d75d7223dba5064cc5426c781ecc73fc08a975039558ff2041278116ba8a477c9da4b4d9a19433de8709eed7c18a2bec23aa6c2b20a6cfe1e36e27bb4f4c2b0fb74baa624d3e61715aa9f0188c45d4405ddfb4d31af661defb888150116639156a92316f1d77df1c3f25055e5ecab769531bdeb1f5e75bfef8e0b521fa6df84ff2d30544867bd556e054a85660b8515c82884c46f8f6bba9e7b1bcd7ff6858d97d219acae3328daf5018eb671965e8bfdcd1660785e0377a72173cb26c6db4394a7565a91e119ea0ed09f549edf01e9bdab543da2b1372f977cf7402735b5646514627c2fad38370e10ba0271390cf987e6fbe28770961cdf51d863899cc6ca6730788815496ce52e80ccb7a8e4a4b26642db8d652cf4db330b92ac6d96e7d357432dcf15fd831fd3ae65c57dac7e4ea822a6f24744c2512127fe386b9caef4a82f75694779a950bc33c2e86d50efe6254345793458b5f3089df8a9b21268c5d4031fbf095afde2d9f5d7f8e79df08ccd2e6c892051ceaebd82fc3047a38e6ea4fd6372d3724af26031b5cf9ad7529f89bc45b68a25d56267dd55cc4b768159919ee83210cb0c2a967fdf9bacbdf8b91a2adea2c51d73712c8dd051f17c6bf74a0d1607ea48cba029811a24101cfbf6c3951e112d39acb3522f3a38066f048a0ad2996f846258a3d136831619f598b408cb6db93d4f2abc1875eafbc778623ae0f9750995372527397f3d427d1a81316b448ad9d82169ea3873a0b06294981a604574256e9408770e2e6cb4c0fe67931f015d6b844bdef6f703ee80b62517fb81f9c81a20daadd9988f912578c5ae932899949256f09a26dbd44eeadf93a708ffff3d6edd1aa55bd7e681564f4b183176561437ae8685be77acc1878ce9da23b280c1b5b46dc34c4bbab39a5969dbda6793248e0e2efcb56ffcffcc40332cc54924f042ec3a5008b1ed0db81bb1d7af47e110243bf388bd75af256be280f3fc9486fd3db45b9769420c159fd593eaf4b507a038760e72e65c766a120c9925c4cc4880518ca1f810b52c326e46dc489f694e6f68b13ffb669ce5a1bb399bc9d25bd5d98c2842e12a0ed9108ba5136b865d819b1c0c8fa020d3096935b78c832abdc1ad1b22bbc80e10843ea4fa9412002133f5a5d825f86803cc699e42521a6249b7a5a8742b9b214e6557c84609b1fed79893ee97fae0172626a9f00ca2d5f7a7314ada0037ccdb73a294db5235edcd6e5ff7752794c358494a9c1bcd35046cccd6e883cfe07a47f42a9e8857bcbb0d89a388a55553d4dd120b3d30d6ba29192f76812a21209984f4d288355eac8a5f9513e28994ad8780b3cac76eff15b5e0f4113d1ec4ccb20392c282e14dd52d370369eba9eafe0175ffafbdbf72cf9b99afb23ed2e9a52a96db144837e0b83d31c35518c0becb701c8b79ab7acfe308262028f00cc9bab4cf905edaecf060c77756a0d56625b52e26ca4f177897abafc4e730d8a2636ad2b065bf32bc17c954f08868c1d8a8a804e5e00b3a0759a174675a1a9c1cfd0fe052d4a537592c9e7edf3f7fa1f253966a6ce104a65696ab3b6bf0c26727576ef4a79aeb00000000000000000000009151b23292d
+flags = ValidSignature,ManySteps
+
+# tcId = 16
+# signature that takes 11 iteration(s)
+msg = 0200000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = b4ecfd11224c059a2731e7232dda71f943490c5d84a218d2cb00a6bf8f96746497b327d54ef0528952171868270aa6cda099a943123ecead4d61138a5a2bb90380865ba0caeb5fe3a4eca46bc8da8dd6c41c5294f3fddd7aa138e1386f8f833c7271838853873a61912813171b0003578a8db71536a98eff4900a138a1848cc45475fcdc2295fa322b21d054791db116b6cb123fba5d51ed4c133985ced556e20590b102a53567c84cf41bc68102164ece90b87744aa46dd6c84c67ef69a87f34093ae127de228416ca5c795ad3c4ba56097119e6085073e736f0dc4cd51c4877d022650f911c7194aee9ff7f13f94c5f73b0886b889ccea790cd13c6f4c52effbad4c4ab89dbfa816b3ee6bc1e84e3b4d948713df5a3baa2ba4a2fb8d9978cba124d214b251a1594f956c5f175d3a5122ea270a085d11f133810f7ac6b07c51b13f02a590f39b50b85c2757eaadbfa802dbba616c1b1077f15644f1e773fbeab05111834df770e31a460d430867f3f0a1e4a77951f54aaa1b04409dc75c6e4e56063a531c30f2e4529f201a641a2a7b682f6d26e9f18067f16b0d619cd7ad06874e4c5ac7f7f508598bcb044486ef50c1b075f8f879e8c7ac93481f4534e6c982ebf9b16f0f83c94504e68ad99c187d2aace43e1c4726817e156e2ae2c6551f9a2285ccd5608c131390058cdf292e6619f7405e68453842d8e12c08d8f0cbee7b25bb4841a9afd520a4a25f92d00fd65852a0f03bcb70c49d2f95cc06f64312fae537bfd4787def2b3c321f576cda847eb14666cfffe2cc61c35139c88a308d54ea4f7500fa1f1b69abbd50e85f6baf0374cdecafecbbed52ab0d9d72ea79931d78d8c86652ebbd30dea1ad90eee7ab63033f4e0efd14622e5e9426adc9fd40847549c304535a5eb562b89b38a2d40d2173bae8cdcf5f3a049c3720db29967c65af8485d12dac3240c803b128fd89eca7f9afe3e994894c4c6112168cc89db5c924de54b346146a917b0427ca196eb5b9668fe698f678f24c4d612092ba8f7bf26475838dc52e2daf146ebd915f896741864b01f7730d02b97b3ad58eb224148c33c016fbbdf1435e3e8b842f2d42d4d427f0543f4294069394c884669a87d9041001413d257e5cd81354926399361196f40852940ca48a4bb74ccf812883eb19a4b404ceaf245b83eebf8f47ac6b0d00237261522c6166438018ad900f6db322d1bf8efd6ef63a0065a1366d93885b2d1c1a13fa37d17419a9f6ff878b720001c1bb16685f8b5932b75d734d3194b9eb39756a7780cce344be03fe5655987d0bea11d0a00e526c7eb479632a4db51d056ad351ad37f51dc14780b4730662b90aaf44ab5f2e305685c641411dd2b400baa21b2b44d723ed7af3ca3758b850675df9ef5bd1707e90ca1c6fd462b6d000668dd625023bbef9a6c244d27557afe307382cfbda0ff068fd228b863164ded33ea50a16872e759302dc44b4f3538a7dcc8bd0f82385a79effa8cf7db60d09bf8a349dce50bad2789cb1829a6624feca1d15505c5f37aa8e3f08ae1ae2ab8274498546b2931c2a823427c2c5200bb74739953a18b9cb96adf21493d4784e08aa0318066ff0b75ab9427b21212be4f09c3413c9c84bd704537c850e30fb12bdd862ccb1dbd1c31373ab9dec930100a07b32d6c6b14afe50e5b5b8fd2d37a90a443e3cd2761e31800cb16e31dcab74c76323a0f462ce7f7320b75ee4c21e0f0306c67a8f69201454c38a466f183431b155080860c641adeca00260567dc73d5065e1acbc055351c2eafc1121697cff2fda1eab331ed6a3908cb10ce16ca8fc6179177e23f9088f17232425b59180542056b8ea61d7ec0e58d8938fd205fa62d7693143d6f0abbc6cb4f41cdbf44dd67f5d7a21d7a0b7536df2a4609f644a7f8d96b861e9e853bb2c9dd828c73146f1e9e20b46a067e48b1f3694cfc44a256b3bd97801d748ec4de0b3f8ba52bc2a8bda92d79618045ee5ceb20b756421dc92747813aa625839b3578732f2ad1d801935718df8d5e83edfc3c23e5a5e15d4684c42d3ebfa42d013aeff74c4ed05f8ef5143409a9e1c1d8f61baf5c9d0e3b072be3aae7ab9c2317f2786d39b108b12d948a0373634e7cbeda1b35fe9ce694a825d6ad5d83743df1e4e4537ef7fedd3b312d56c0754426f23a865dd667e6896a82e6062a1f5b6c8a60d08377d42ec5b43c534e634d9d85f82b913ca10922cd6dbd2c3d7d35ecc98cb37af974a615831846dfe9aacf9f801ca6cbc4290bf5e8d6bb832df0dcbeb93025baa2ebd7f3b4941e617d5437fea49d5f64d78c2e2b422bfad3efbc4bd2572cf6559cfb7001e4886959ece69b5305f0799cbb871b540df18c5c1935ddfbe17c491b9e1e82c2c9a1fee6879617463f60effdaefb51bfe749ee3fc2905a3a9026e087c984276a543cc3f4e7a6948c8d92985d24edde89b36ee6d9b3d7e300936548c34436389f4e7bd055f26a856ef9cc56de2733cde47fbd173a9874b73d0b8ac3a9a09502c2dcc18585810916a4ba6a72bfe94bae53767e55495207c2989d77e0e0f07e707f66a1efdb93c8e149839ce72b31b4e17d616ae0a674cb349c2d9fbb5c72b833e7b7916246c8ce495b3e1d7b199ac085dadfddb2bda88c8529474f245797d7756251344305891b098c711dd6a74d54036b299ae35bee1fe7284c9ec11bd8dea6b8238690bc40648036d56401f26b92584f726de2445030cc9865545447abec4b4e2c0c06681ec5ec0243d845f35dfa8d80127fc2542cc04cff53842e977a3e9420e6f3303f5d1c11d7d09c15fb229d0d432857987d6ee4440be1509321511b8cf88aed7cb27c1d745b672492d183815de62f1d8f69c8581d7e6918f13225f215f313585aa597a3c8876ee67317c0ca184bee5fdcf08ebcbf43d01b0049af2455bad78bc8c28f11252bceec019032e4feae4ed2c5d0670f9c2b6d5ee96055469c25661fbc8c09e1a486013b46cfb0c0eb4774dfb65b8e3688a02cab987923a98e7f75b44261d44c4bea44a0df4ec2b8186079f3557bae7c951009a64cd6bab08410df3f4ec65b58bfb8e31c3659d1f4b3254386d850385eb8cdc19df92f011d86ce13ee526bc524bcb465ef1aeb8f08e809273034be71d95064979ac196d9c53fbac31789ddc3b3eae14d2c1e1730e2f5b38fbc352759c1f573ae742c6cc2b15fe41fe6292f3856c328814f7d70343d3320aa754f162e530e666889fd0187a65c48b42bc2cc87e79d17102cbf66d8564ae5fc71b92ca49b04d1705394ff1e6af4593792d1a6ca5b00e972180857af83d289f6d0aac81e2006eb40a8d790c7dea7e075404e5e28293f4385edac77094f2e2dec38a15b12894787bbef906d12f8bb4657c7e3e2c8767a310277f63cda040bdc68c5340caa2b39b7579873cbd593cd81532e628ebbfdd8794b4fdf82d6c6b20d7f6bf157096a96a5d327a972faa5cab92c442e468cbd6705fc8ee489489cc687777377f87b470a84209e24e18150076a1a462a9572fe037b8a69153d1b7a41b440cdcca5a2d7b4d224bca60c7184828eb519e77f2c98b4567f23251bd3d01d3ecbe70eaead160681053b4a733898d74206bdc25eb6fcec2a65d6a972c680e0aaaa1e8b1e3ff095978213d242c6af612a62dbb58425037cba5209588ccd3c11962ad47a9c4455b98a626f92264a0527a28bda7f47e804ccb393caa2590b957e5fe3527c0d5aa2ae7d931fbdd2ebad07cb69be0d5179eb6c1343b3bd4448cfbca6ffa1597678f0bf6e9d2f81f4d6e3a8a9d8c9686826c86415ca025dcd1fa1a5dcb3ca8df92b2ea76101c484dfb1fc58d35c1386a29e588a6c80538ddd18dc44fe4598627031ed1650789b3d0cc1233775e1d45e97504d33043cb721a6c210d6e4e6b70e4dd9ef000adf591e465e30adf27aaa4d8c255f4523f1dea00e9cf978687870e8b75f05ce4fa8dd6dd692e936dc2d48b410d3b626faf8ab013f7be8910da69ae37d1ad99136c15e0e8f4194942a24ccfd55544ef63e692f1d4e9b621b28fbe8efd22920983167daeca33e0734af9aeb4b77af4cb354cf9489676514198a47d8e6d614a76af5bceac2c32799ce43cc010fd421468f982bea4f56969953766f629e43cb2a0fbf3d095f98257a2b6e3ba76f73415d0d920adf9b21bc102fc53744f661d42a9de6feabe59b2e273733df75be8ac972651818e1a72260bff1098c06c572179f7c5b0c8e5e1c9040baa4dad473f96b71b25d9dc16ae2312683868ea048f85933d844b7f2fb685db40ca89f24231b14249a3872f313c14124ec1e505f14c508ba483e6a4e559c8ec0b3dd7ff0446d14e4fda415ff4031fea1e65de59e5322279112ac4f64664066c4b5bf5a08dc160b6b313496546b679eeb31315500d81504706ae14ba526009a84b7270d9f9ead65398278b6385cc136c69e3e431843439b9a75e8b44678fd38facd65c638a3b1245a78bbbc26b85473a5569c5e6e0d2499d1570203ed563540096bfff6208502b12f107894d767798b5fd5ad7389bf55a6a90733511bf5d6273f570626cbedaf5de00c5f905fc2dce53f0f90d67153492082255889a9ccffc83a1af2d45466e787cd3dbf5f7fc181c2024454c507381babcd8e9152a6590d6f3f5143845565fc9ccd10000000000080b16232a32
+flags = ValidSignature,ManySteps
+
+# tcId = 17
+# signature that takes 12 iteration(s)
+msg = 1000000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 5fdae986af0e453c98062fd46d281750ab398c0d9be681f09d8a22793a5fbccaa0982761e89509ed0427f0ec73c8f9b4b905dd1703132646ec472f0908440c2e21e690e58ad56c3c4da022c2459c059e9a97709ff8327785011f0378c8e5c14e3130ebc43b2481b016a23ba76e61c2e0da8bef8b6424eafb1fcbe6c1a984ce767b0dc9c824ca1f9a5e8896734c3bb2e01b02bb18138ec550f343efb45030bbd2d034e859145fcab6cf42d48e8e6fbc3f9626dbfdd42044b86adf6dc6df412f15f51261373eddfa7ae848bfee57878380aae7d75612b0aec5d8e1f4f8809e14bc9b244fa50e5c345decf47c597d3bb0f5f2f0e6bfe3648bf7c4ff841d4861a3faf7cb09bdc97ffa37fe75fbb79784e858f34ecd2caff2ffec7bb53627f63bf4f423a290ac26439b722e859acd4fa61673deb275b50a309c9a1b07c7513d8718eadeead0703e5d4db41618dd23901d1abb77c6a728f5565c911199e056dff8c3c0a8ba7cdd05df179ac37292dd2597e38e17eb2619472cfd4181b2b4aa6bf649757010cc5e67121bdc70454d429a8b42850c1dff199567d700159abd3b485788ee01d71ee7ff163c4557f688fff928c5974f56cbb352ba8b3ad07b7ec3007dcd606b4ab84d42b004cd2204451d40198bbb023bbc9d3891d17080fd7d50e282a715fbe97f787a794d0efaa64db07c373c257b0770fa0fd8011fd15ae4edc1d4fc69187385634a48b7405e6c1a473c5640d5125c80b60fc5e48d86829625195a3fdcf6ed3eaea76a1577845d26244e1dc679fb0386d46851e80b130da1defc0c6797036dcc65ec7e0bb485d1f680cdebef97f2780d20d8d664a90b844e1fbe6e7126d15edfcfd37877f0c07d483287624b38000c5689e77fba19d1be415da83501494b0cfb15962243798f6f415206f77f3105f20e6dd73887e7ce26d06b968f3eca04b6a49ed9c31ae0561cd1418268b8405cac00dac88ba433b98480734bf981c4cd74192fdce032c41ba9836088b9e0acf8dfa97c085cc60ecc75f1f5b91738938c2a19764089ed9d81c315c1d91b7e3b1a6d3beb93893e31ce32f97e8c8b837b26e07b523cd857edaa268ede52e0b44f3e54ab37d45d53079cfc5a58a8c992d683a37e9dada046557adbee8838e10ef464262cb0f59029797b6943b7e6b9e0c7010dac5605d6d581a496780e6e2eac7b07b95abcb6d92acf293cf394140f0fb16302dcf94992438050e84a66c236f21b56a756ed0324977ace2196ff58ae2c8db667b0daa54a2d42a3920d5fb5463cb8d06a2ff730a9f533f7171ff470b8ada56521eeb0b5c150308450c6b3821a071fe079925f62320cadd8da8c180fc8a9daa2c8e17561b21b9fd4e221893ea6553a4e61c1fff9fe8ab25488ad1c0fc3521a4e236df4cf15480df5e2b75d67ae5743fa537fa06575e86117782f912cf14b9c67a461c34632fbef9b1328ac76a8dec3f442541e777241cb9eb39dcc009e87532cad63005e5e93a063a32012fa889b00e9df5a63fc6aa81e1cf8e4d967f8036b59b1341ac3502da9813bcd4401e516b716cc2b5ac04f5e57895e39965a3a022f408d40982b2f9e08324dfcd060130ee5f700946e09254932d85b6a28c7bcd5395936f08ca928325f0273e3c268883366a662ebc9a7f1bcdccd0acb6c454f79d67bad0347d85e5acb01bf3413b6dee73a208a40caa15d6208803e3f9cd708ec17497d7ad77eb3ce50353b5cb2b9ac447ef4d58a9e60837ca7724629f32dd894a3ffc3d1e7adc206b385b82ea0bb478f1ed7f675177787f92f1aecaaa2255ab5b48a4f60d2691ec774d3caf8fe5d5f2056f125d240bb82114cae0ce31e2f0fceed910fac6f7de9de4da88e8149b4b749979d37dfc3112e3ccab549be830aac9ae053d8474e1f248ff0b5e598731dd63cd62ce630b55933859137514e84ff5a4059c0410f564e477a1694ed2eaf3169ee8a9ba5069922129df8a94e4ffa278f4fbaf52a605aa76516938eca5be11142bb83087e6def74264e7e991c763e5191492035f7705bfdb17c22d4933fd2509dbd25840614baccee3bd3bd59a377484b55a09dc517fa298dc7f04a24304dc91002c000ae61bd5b75242c0680988d9e7e5c05f44aff949ea3addbc4fbc26a0ce3ca9f3229a4ebcdb6c754fe95748c2ec479b76e311273c23a1d3d4816de71a9bc26a74153c624cc449f068ebe2cb6cee7bb5e02ea4720a86a00a5e0883f4cc0a6d967596672646d439aef75fc13e0c4e0890ff68fd3a50efe3943548b446c2d2f89a2b16710f22cbaff9b1cb501675902362b0cb5f1ab9d09909952219eb933ca1e1dbf271a0fbe1fe40c928fb5d1fadb935b1fa84cd939310aa1d3c30deb64aa7cf9ffe7301bfe602ad3596e07e87f65e53b23fa5017880e70053f65aa7345b94829ee3db131813bcf76d0acbf69f988e88ca3f49cc4311ad327edd90e2a4b86910880f45c16c9ba8513fc72afdc4f4c272f052575b71e3de70f07161eda29c83bf83aef0fd46f11095cd4fcca33efd8cae8f8c2d0787112723cab9cac9ff9fa02bb45ecbc9879414151751bbbce8cad5c60405150e0819d076b699d9d9fb62505a6c104587302fba8fb17725e80e9732563411e576bba1a503b10ac97a41caddced4fa591ef6980aaebe3505df212201fd0d892d15bc08d6501df3a3263ff810dec62adce7262c07360d1de212b1684b239050a3c87acbc7025294124f86a8f35313a97ea373a701ff4187a7eb44e30c282c4b1c30702b442a606aaf3d5263716ff0fa7be107d0874581703f9ac04b6f8169872e94100ca1b11e44cea2bc63f51cc1822c65d6bafa8c639c8f32b4a60c928fd049282dad586e46cd622fc34f1fa5ff7a67d06a427fa22d05e485394344a1b41e8aca7c624306eb3a6c9ec319bc65d8f878b1badf3a4743ae1b39ae8f1ddba00bfebddd149f5b20836aeabee2c6710aa0b128fffca57783bef39e66db6df7b4a7d7fae067d3d65c63b020105437f448d644f4b0bbaeb0490ec5a337013b4ea5a16f82567ff2588070afdc6d0998ac6a11459ca7a8799dde3ec3411beccad252e897a360e1d4ce9e9e0a82c57c79a24abb99ed5190f27e43144f9fcf076becba38afc9640f9d18bb67f6d4b5652bd5393c8483ee348a2ab3431cc92dce30d0f069312a671fb283aba4e527c72781f59fb7f6d1704a3ff80d49fb53ece26f16a15ce40a5414475732384f8eefb51cd22b34b8e901c43eea8604354522c28031852da10e0acfe6901a3321a275f86f025459ddfe1d90c561bdb132ed4c22209e71728300a7f5ab0c84b7ced352ae3321462bd75f6976849448018db9c2241d2cfe684cb6c3678de2f1dc91a4b4b6c2572831d4b2036aa457476f8f19be70e405e2cce6e4e9b9e82be48e078216747dc6d63359debfd2fee14a0e8bc0de95a381272d3accd94617875e9c08162817d5294549584ebbe8dcb36d94a6cdce34e4f30c52541d425422ea0e2d1c00f9b381d021ecad3892a1541dd81a42a1eb8a7362b5a125651db02f1992efd6f9515f3f1ec66566f91c1876d159c61195383a4c5e4c89555fa026b5b3bcbcd34d8b6b0eb026cfdcb8cebe45884e499f7bd1f40f1e4a2144533f2d57e1eff0584805d5beb7d6ed7fe29e088379d1a7ee70805f0f8133d26156724d4ab6560d15f49053a1c8a8007a8eeab8f6c09265c4a545ddba9eabef6434b191d87570ad3c88485decce9cbf52a11895aeb82dadd9921522f368843fa7e246411cadf0fff4b236641cb516057f102e9875e9363bfbda62c5d40fccc935eadaad4da3723b7ba6cdae6cf88b3d14364b6d30b435627d7781aa1003bfc4c9fd145f6c6e82e58df863488d27e7b219949d554c09124c582591305a80964416a18f70b563a761ab713d4832a1780300c7ff01cc52be01a60ae53affd3cd4a0c19eaf60a077f792378be2d3c958108bc068760e1b920119b311b406a5c59658a9801c612140d9c8b15461701ae2ea1bf16ed9650d0a26b52dc59d927efcf8174a421409877064d17ae3bf17831e4759e3de408c616c9565eeb8cbf83729669fa7afb13e662961db2622136bfbc69f1a80a150a604c38bfde2c8de8eb5addb54825376d4f8b0935b6a1f34d2a82a29c8a725dab50649b796379d61e5382146d399df86de0fa51875baa1dd2b3b1490e34578dc9da393fdf26ebc36ea3c40b760e526e30280e05529ae6e5f9f70a41a6e36da9f9642ea74639a5631a6bb30f17f3403144d9b503d921917628a327a5422f79903a205f7dd33a34e93da5a553949e25c29f952e3b5f8fce39cd625c9d34c79d414f104a69532b4596bf7046c3c6115b4de3dded2bc270eb4963db75db38d73f2fc3719dee8730c12afa6cce1d867d7e949d7fb607e39bd2b09c1e80fce2fd76c41669ca73b9bae914f42a5a5903327059c7bda73ac88cdcde315d5de897fdc188b42ca521ad5d80e1a6a95c729f58e921fe2c258fecbe03858412cf0d4660c6fcb6c5b16be8342c970bb19390b7c393211ccaf35a680e1da855bff9c004b067780522c8f26770559af10a0fefbf887a4035c7456a368e3d9e50ba1423039767bdd6482e61a2e47829192b9131635608a8ba74a4f94959fa462aec7e6000000000000000000000000000000000000000000000005080f161c20
+flags = ValidSignature,ManySteps
+
+# tcId = 18
+# signature that takes 13 iteration(s)
+msg = 1500000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 73bc2954da39fd7abb7ef32f531cb8144198e50cb52dc4ebc9dd5ec0edb90ba730716d93157995e37263b1456cf55882131ce6d537f10096dd8500d16166de80f5bda2f94463e8fa18e0b970871e4cdde1ce7d3e154d30643fd4a3740908fd8b1249dd3fc7da0a5ef591de4f308b44daf5018e17278267b56f7df5029a130c736f56283d50f97ea4d817eccc6008be603b19a70f1526e1d3a2b1d97a52402eada5f3c7898eb16fa2438b0e4ba9cd745b1c94f0a5c4d0be6ba5ba9f0186feb4f741260fa0f441f1839d3264150cff7792f5269bb2a82cc360e30a15f61b2568467d9c8d404784996dedbce426c71001748c691cc848e776023cbce13438aa0743b6ed57eb614bfa8fe6b199a53207c45ad762ba80efdfdd31595d7bb0da2d533aa65ab0ec3ced551a0b6ec2cc8a216944e670d7342cfa367542e86edc2086dd14de5c0ef8b38d677379fa986548bfd69e84bd892af28b4028687ad8c94f55ed56b50d611ba6de863c201b16b0b9de779ea393be40a79b6405bcd3f1f8685018c8fa61280289a948831ef7963f3d30f3570855e58873b9f9f02fd344f8362ef65f723fa0c5b8d628264e74cd4fea73ac6105be0713e80d52c5bf55c21c1f502d73ad0afa6144b6bdc227570b85b47143580c736fe4f2b201ec4f4f78efc3d4afb2a4d81c8184fe36011f7fbf197335ce1596a0ab39f8cabc02bc77ffc005665dbfa356b43ce805fe0dd2c24a9e6c363cf707ead215ae245963c5684ba85b55118d6e8e55c040012158645aa0d0004c184f826b7a43a2ce81a3bfc6c4ea5651e8dfd10fbb22b371d03e7dfbb3aa23a9e604d8c452a3e065afc05361062db3acd697e52614baf0afa010b7cce9e2c36d8e41020951154695bb13bcdbfac5eed9bcc8f0701ec5bd6393d83f828d3c85a591bfec897203109c57b87335c48ebe20b8c963ecd0d973c2cce02676fbcc38febf292616b05226c523a4bb6de9222de497caddef9e5bc65fc084e152f299538479f994dc79e19c806f0681ce43fded54c634427ca1f14b691aaa1e7294741ab9f86c15a68cfea5f5afa27e068564353ec51a39dc220ec0636a455604671d2d11e4de86b5d8b766b872563ea6d7a507a5c82a1babc6dee32af466d560cb9c9835febb4aa2d07d7205cec32209df17475eb635861e595b1f4cefbd9540aab01e1db317fd0ab6cf56a03f12688257028dcc7f344a87ab0f16c2ceb3a7c3cfab665c92a4b03a423eb158ad7d3a8958beaa417b4fc71948ece95058b56b9fadc25e9f3acda7020cfe201c1a584fcb2ef38c9b524941472d4651d828b17e7dfd31f022f2430bcadf48414aaeb49c21e52f40d5feb0e9216be4031c35f4b8cc6ade2ef156113fe63827179b0e6f30465111c7749b2e99adbd5e451f121f6832a4121abd9510a752a7a4a9893942d04abf4164346f4fd32a01ab7baeace93f678333c4f27889facecbf4f41ab234fe2b24c0de9cd58ddc969d53b5c7aa6ffe35e58dcbaccdfe9ffafee5b3f1d5222e6187957a6c653751b631f439b691d5f2cf91808f65de831e4f076c37b48fd9f96a09144ecd06510e3093429b37abf729e09e1fdc8dffade760a584cb6ee668a72d4619f421d5ccd663d379e6f143088c143e29f22ae9d0fb993e8447cf44015c36326e0efe6f16c547c3a212d1dfaefe654dffe6b231c5c1d8b3288e4ab38880b324249087822a32eea1ba798d2e7d204ea86a990c7974a37df998bbd7bc99d799458b231b4e45cb37dae19b46a95f597257e75df509b2f3a7d7e524134dc71eaa13ae8d585fa7cd45a6ca91ea96085e0092035ed9ee335fa047f4671d744a7b559b52a738f0d20ce5ca76127ab9d549b869a3eb6b66c57c1d317f68f3f6768a7eefbbc9ac06b4c45a6de768aa3b1cfa9aa19b792c23054ab84917628f94ab3dabef0d6445ebe8a374c4157408f1f84c33163a75b8f4646637dba50dc09846f1faf64589cfd1e5124f6e70770732df2bfd1102197d9a7f45215253cd9d05b7eef329c36a6fee9f3f38050658112b48c22c5561842ca24803b96d58fe1f627c2943ab1d9366d2abcceec4c6e55fb044e5a401d032f04f7ef2e49fb89f67da3a619ffe5702227a7ab06970f5079549dbf6bd4416722788805d4682374c982577b1977680e1d0a6af0e06ffe4103587b41f650a85db8eac9a009dac1f9f7589271f6fadf60c98f669f70989a913123f2ded18b2966abd257590ebae4225cc436cdea6430a3167f9f3f42f5cb135e11cf31b8e2e386ab51b6fddcb0e30aa3f2d8cb12373aeb8a364e3123fff93efe83fa89a44e97ccf4f9b5a107c1968436d8a08647acc88878cb7438b7f5545f59b2cb79e20ab8d4750243c6898859ee1d9d350b686aed01b2a6fceeb62cf9f824b6e76d57cb6f16566c4cac2aa17cdc8b72a2223c2f92bec38b0f481631d0096b2ae449370318bdd66e196537a24f0ea33aab87ac5c94bd0645824778cc329e76d5b38482d126a335573cbc81c895d225c3b724fe901ba5ee9052655ad9c059412d4cc25e00444e860f683558fc0cadcb33800e67c87b93dfe9adeca9aac911391632ffcee4a3ec48dcf03842498f674a6a8f689f058d825e931673d520700e284d3a26f2e5a3c3f2fcfee3d49f09775514b837dc35db8ea09e1db53d548ab580c4049e16327b5b0638a9f6e3513fc393122c9d9156ec532d462788a649f79bebfa626e38e261fb839f560f5276b36e462957674fee0094354dbb6275d09d08489dbe1fba5936d1801acd87dd89ad608d33f28a65d066f642117915b9acb32fc7459e15180e8ccc579ab2234cb64c6f4563f5a696eac76f158575276f773e0138545b904feef9cb44e1a13d3004245a33b476ad3e8170929e5e6adc68a12367d090091f7bca5493f7a448e88eb4f13cffd7f648ce368b092416f3b577e16512bb54dcd06e0bef24ed69396039741d37ff96aa0f3b7dad92fe7c67d32ec3c5d936c410329445c4126e027b1691f9964e39910ab4d1a6ec84fecd2934ea9e0f74f371ea279d50f70afb352064804d30fea26e4ecbea3eb6f96b7b4324913c71a2db4bd4a8f8459408eee1889f8ff15cbe14343403ffbba1d95c8b050f050e3bce3f394ed35bad88ce9e1235b3dfccfa478f730ca162355f1df0bb4d1205c8920b5b090851e9798487e3a858e8ae1bfcdd543209b1f8713fd1a80f6f3c8622c10315c1bf21c42d456667e64b1668f96455cd1281e3d76d3a52149621ec4beb651e245b8bf1f3f3fa770368fc83eae60eceb4f4d5e2b70e09a3015cb3dd2be4b307fb5b02db05a9225b6c21047b422c65ee788ccba14c86564f7fd6889a09a258e03ce3d802d19b33def3d223bd427a7cb4d9fd6814413e290a16bdda7acb39c477cbccbbad8c664aba0c97622e65e04c17cdcf51272eb8cf906ee15cd7ecded36bc66139800a4a7864401fe328f8df0505b1e13bf3bbad8b4a344a292d55a17019393e4f0105be7722837624b84a183ddb9278e9121b2ffcacc08456646653df5d5b88e77f8c61e341a869548ae1b286ad8b85ccb763e3d10da9c05e895fd49ef02ebbb60621dde417678ce965153284053d0fe38da260effb844a62956d02b1ec6e5c8ea661ac8775a95afa1861cec82c396a7ce98e5cef55429e3a4d239092f090ba10daa78811e59e9c094d4bd805ab89b5fefbc6cde6fdcee6f21b19c979e237a273e24d9db1d2a7aa6cb0443b5d8fdede41f5203442e658c6f9e63383407a4d67680b6f486254c597428f613e9478cd2b6e765029fb73ab72add5928752e558506e6ca46a3ae1abd4d2aa5f5d7b6556d07440b09166b0d93d5a939e190df2341415a132bbc0b742d3acae79d507628e1da15ae962ba93db1ab75e1bd6db1e99264e68db450bc6d242fa131b05fb73c050e6996c4c2f2ff95a372f12a9d22cd85eaa538db6e7096b765d730f7a35241935fcbe23508b18f5e61789af328cc00ba9f2eb9e004afb253317ac9b0ca2249f63040ce4ac99905508a6d349df6e96c6e675bd3acb3103c611aaead2046c4499fcdb17783bdddeb3c2c75553d338b877f6da0e9d12452943cf6040988fd036fd76deb09ebd8d24e464cad1b6f8d05ad9eab9f18c15b1d6a1e33437e874beded7ef0ca0e27f15229b6746cab74d77e334db74c013e45199e6b0c33e6da136c2004cdef5754c5b44d67085d9cd732bceb1cf20551fa0f183b1149caf1e39d88d6a5e0eebad539c3ec63ae9b2017d484866cbf6a9f5029e2cecc71954fe11c0fee7b1b36f8d18a0f138e54d45aff4f98aa922170a5d3f81d80121a29e6b2c8605214e6a807071675855099f305c9b0041caa826bbfbb216abf05339cc96cca1b143ec278ad3a1704653fa273d663f09addaa860cea934821e7f6d0d005ef1e8dcb62649907994c682481923300baafcb997150eddc0e3c1ecb6d911f51979e04cce3d1afcc40ad70eb0f3051189bafe36275bc313b5585126acdc44ba14a7cf6864a37a407069a266c252c121475d5132492be2120a43c80112360c847eb128b8b4b569153ef6205b6f24d0b5b641899b7244f0463324167071c91bb0f5f70777c8b92aac9cafa13181dbfc8cafa2485a9b612379bc72ebf2d3b59656980d200000000000000000000000000000000000000000b12161a1c23
+flags = ValidSignature,ManySteps
+
+# tcId = 19
+# signature that takes 14 iteration(s)
+msg = 8e00000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = f35a6312f8a053655499f4476cecf4324dce61e0e98a6fddfeb391b714201119964d2891579c9ca0cb74b2850623808d9c2bf5cf38bfd051ec4acc1ae827b68383622793527e0eb3fa7be83c1f72b7abdd0073f7ba4244b7740aeb5fb66433847f3c8882811421a86a55833b05c1c2f24949ee29332f5ca5e9fe97daefc85ff6e9636b9d188c2d172c3f9644df60208fb298ac2a08490bb611828f1f5cc93c687b8a6f7441a8995a3cc50e894a11e9fc7f6dbd4d47cb087f7f3942a92ee10899d56a65d27eea66ccedd9a7722bdae4aec8fa6eb0b45be84dbd4c68560fde71d04fca514e10bcd733de9b3f99454b13cea8453e2c9cc5f29c709f2c131c972dfa2f47983d04d997ff217bab57d250da438b13ed640f3ea5017f78a394f2637bc708e0e7db2e5eefb18bb1c68d4ab59643135d08de302f9575548a2239bcc385849e1cec32765748940a011daa3f208da13ff97453e4d08fb668caa1a282530a0ff8e0d9cac67235be0dfc06d0fd5eb0ad56746191a84fd5ed68aebfb3f3d5fc2b3a391cb62958c471cf9533609bd564129aa6479f90c2df8ab3d5bbc51d9ae862eaef0e289c81fe4988ec757170289f5beeaf851888f1bb9b349d6cabebb5dd3d7fcc25c9e4dcca721f0e395918a69496c1e578662e3a42bab10070ce1c01f61cbbcd1ea2fe7dc18c318d649bb663fd7b6022cee490de54d309b0be08121765082bb5b634415cd7d16cd11e69f12d2bb927529554cc6cd2ea48612e93f59ab9fed4aa2a72fb78a7b73c39c7bb1c2bc3574fc7e2c209b64ae2c2e50781ff24ae6761e05e65f670f7d069072b6d73a479969b0ac345a5f1a214929e6b783d542753c9075bfb97dc72af2dd269a0e0a739430b04f0d6988206974d747df8d07abe115d2db2670fd66c2527f288077e49fcf1dc627464a963f031f438861bfbec5e21d973a5d7bb0ab20bc52ca3eea5c9f6fce2339e0a65170f5f7fe8c8d0fccbb1d5b8c5a5f7660d782406e18f75571e43cafd66cce56474b6d933edf42b2f01408d919df23334f5caf47a96b68e845f3b4e4e110e3614cd477ded26f1bf7c92f6ce93291ee809e61d48e824ac80317ce49224b7319d8e4e3c335fa9788f1aac31a3fbde6590c22216ee17d27e387805082dd3259ff68c162339c57404f291a7dbdf12f220575335e189d2c9536f412674e918d4e4d5f1761453d6a080b766db3fa486f961c111b1e661f28f3eacc0cb8e21f34fb143873113ad70331e2a915f0fafe29c0567877a8e947e13e7e7c677af3fb1637805c37877f994ea93cf6e2cac41817140b4721ff48e9a569bd285a821f5aa389f6e5b08dc2be22da23a31610f7f37dbcfef33a3c85b2975727711eb0b54004f5fa0035416018935add492f2cdc00cd367dfe6b4d16829755dd4ba7e5f25151bb9f02b31c05e26fade8b32e7c9569272887c8f32975fecd9c725ad92ee08a819e2f473c800d10c47798e921a69372b6770e664224f4672265d0b659680b0cc83f0724ff727f723d7022b966f67ad5242f312c5aa832deeb9a721957edc71d3cff4b19023462c9114c7341aab6d6f22bfa926128e98cd79c2380fa9844374e67b7317da9478add4579ded5fac480ddca2b9e19c4679447324286d7dee578e7c0b1358f2754c1840843189b45a8c69702f6be6afe95d4739f205638ea9d2059587724807d8f5033e9106791df3e1056b3b9d8972afc72746519f453c3b51a754cac0713d440c094f4b707cb07fbece5eead8a7c82fa6949b6289ee41e1da5b801924c24aa85b30c95c7a074f464c320c836df0da10898c912ba1b3b3bedcb64fa1bfe78477f33f5d5058e306c3ad6bde51908e9ca8dd5f4663185b1ac46cf6ae98059aae95fa0967d775f915256dfb90f80723c59c1d86ec4c700ba795ac0c8dbc87d9616602d7d67bd0b157fa9b1040c40c71e2c2b74d673ef26345c825baf86dc8ae8307651a14a06a341ed4a0d570b77c297c012740b2d678b6963ae1058e7b514da045867c42e04638b9cb361bc35770112492bc457ca1baf1811a8aceb3f622a770bd1958b5312201d9c2b228763e8eb0351a1f6a70bf2b8a746df2a4a354800faf6dd7299d4c70d0c55560f20a71b896553c731cdd65e1a8d83145f8c89fe587a299dabd29050fbfbc7dedad1aa67b96970403983d76406c04eb72dc8a77f4af4dcbd640e82e12628898345216aa350b8ca67136e4271bbd33670554dcec8d3e9e3f05424ef83cd7003454a9647f864ea143438519b0478230b794f7635a960ecd17565e85f2163061ad947bef93399f5f0977dca1bdb4999459f529fd7eb97e426978c10c20d8e6fe9f20aa908a2f734d88e0ad68f804e7698e69d065caac268e73025d269d06775047c028e1030d163730afd474b47f2782bc9d21af573080daeeaab9e39761beb659a0d1727f91ac9e28b1b332130962ade9a5c30376b23f3874e1dd9536d1c4db6dcff16224f1c6a98d4705e74a1a75ffaef200cedd73a79552783bb3757794c30c7ea0bdcb8b504212d7218253f777250369c8a65b321ff719d3918ad54eb1e5fb9dbb5b0a4925200f8edd784d1e5d5ddcfb20ebf6565e1125a8a3c3216ef32a2df02df47d38b90a45edcd940095d8a672bfbe505304cbe438f74437a34cf43ba2f6627c56f3f5b7a818c7dc754424eccf2446b0ddc03bac858ec34c1aa484738bc8bb6078adca3b2898cdd117846666410c490b5e6ead1e1fe3c231bb223a245a817d864a70743dcd3912d7011d70eeeb53ac1c0463359fc87a3cb179c7313cbda432b85374568db7610b97250f56a82cfe6258b4a68ac61e9dc281d5b887db4573b9f7a01503f243403e3e119f149ee95824f8370c64671b2e751b2c211c10c93ebd7fc8847e1d4441b0fd603ac7d8f6dc76e56351a26f8e9894f5370abc816d182d7a5f079827b095152e7886f087a9aaa5498dac8208b53133248f493fda96889a17ed9629a7c4b9e103ab59662a1347e0593779ece0fd00991cc9e83990e8c673573017329616cc03e90353a2eaf89af0b98731b5cbdff28b9e0af4478b631d6fb3748677391c3dcd342a80958b5e3cdd8460f4a3ef7786ae706991569bed078bd2c7a8902b1692a844f704f83477c456499bf6f743a12ef9cb1b560d060c0f864c8d84d3fa0162e1f128e19e16eaf230351d3a40999017cbdfd182037977a3ea8847877a1652abde40eee28bd9890d3e29bf626a1c7c5a7b02405e84be97fc9f3702d65854425c57dd85e7a680bfb16703d0d5c13a76696f15e802f2f0c757caedaf0844618520179d24d3f06273b87c9aa3cdfcf8ad05877387468d937904e2068522309518dca63a51c4063872b0b2089271b96dc1c62aca9423a9323295f2cdbf1d68e7600406abe86d54cdd1918ff3d763245da9a6ba4ac791e613ed73ee50aaa6744a2427aab021e2ef24f953042f6429fc451e39e796f6c7d64b3c40739b007699fed1c057f75d2d4659396d20f09509413eadffe78c75cef3e9eb65a12e332edb9e3b2e8e64795fac153a9f5bc30a7e3d35d65bee29cdda5afd93dcf7f5f42e4a448add1568d199ffb5774c3383cf8719bab694c22e5e3986dac4a679f741da198a228bbf4766fc7622ce5f517bdb900068c0b9b32cf4c563dea50bbe7025fb0e436ea86b0a8c2f58578d48f15eded8d19444906dedc2b766c376e6d0dfc90d761799d02afcaedbe35c9a30b3d302e4463186d9cb1867de8122009d52ff8fa8549451b438a379052ac63770cb04c8a80ab894efe019f414b48bc9460b33fa51978fdefa2f2701a440dfce6a50d92ac7df6b915314f76d7d79636877dda24ce3356ce78de29fe40f2ae4104712be865b17e9156998ae7bbe937556cb05cb155a600d303ef8df20940563b583bad366a0ec1ec023aa685eace86a495e5bd63d83b7d68039d18a83ce1ba5eb78f75242822d06601fc082518f59990e12b486a1d64112a80b80c6b0f4f3d5efb82bacf1b48857d06c305bf6f6eae815a39ca4753280412e340095d53379a0288cc977ba069962241bbcaf288468b9abd23118d3eeadbf706468e41199e57e9839b7c0bc1763d1b6a7a42187723373ddf6c9aa70765b0363dd4d5e70c9a9cb682b672f95dba7e156ac11cb3c526411b856152d124184227c53e45141ed12891d3b071a453b5cacb6bc07daa9404efcdacd33d7381b95ded01a2e54a7bbaab38096c08cdd795378ffbc055093e0602d8cc872f1a0e20e1577b0459953bdbe606a0147462c3e790e093c0110833f10e71226c1717cda055ddd82431ccdd7309648b5799384e4d776ce800ce7822cba4c2ef34045149e619cddd634f45fbfdca78df367d5f8c50392767b972ba01fa69b4907f1a610222943075ee385382652cbd5cae573f7edd8bb7f5f79e80eeb85669791f444ad3d5a9754f1e6520d27f563341ec0646f8395ee03e89b091a7e8bc5265b9f06040cccdca852e1b25cbc31c2a5b65b86d5ee855f00c7561c99cc8a622e8a4e7e2d238db3f48201dfbc381ce1ab55e7d6d0a1c5c5c7de5b095161b90a2696907662e3819aeb5a1198e21b2b760c994549747c9fbbe3152c3e3f56a0b82c2e4464798191d0e5206c9295b0014e606677aacdce3d717fb800000000000000000000000000000000060d161b2327
+flags = ValidSignature,ManySteps
+
+# tcId = 20
+# signature that takes 15 iteration(s)
+msg = dd00000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 191fc745712fc8a225adb8de855d779eef8cae43fe75418ea2b02611b979d39499c190bd59c31000eea61c0071a6c765f17f03310002524c8d1ba8df6c259405104df0a435658b488a3aa81c82d9ed06ab0886d456d7c021129f278edaf04477e9b27b2eb35d211691b43e36e65c823070a99e89e0000af939be62f1d95e94a168d953ae5d0933a39d223ab02631932d0006240fa5d3ef265519a5cec6bc796f932345f61e0e63dadf53461a1e444aeb7ff96b32cfa9c8ea4896ca5b5c58afa77e43ab34b011e6a93f9bbcb8dd8805ae7351cae0a0ca95756742077be679da919436faf4e386329000916e206545b18011221f25b8bbe71103aab949769d2add6bfb4082cce81a95b66dce001ede20fa6aac7b4c853df8205a432bf5bb0ffd3dae68e4eb195dc408450748143c8f5e6459a80a1f26b1b5b148d5394158425f8442a0d9faaf05a5ed8df9afa8bb97f499a8454615b626098fb3daa4c4ddcaad2709afebb8d6e1eb5bbe923ce5a4c41b3dc1568f4e8634455de6040cd3653ce5f3d63cd54834ffdf87e72e2c51cd2416041abbb51398e1eda1e22ca4e7b4bcd72eedde8581cbfe2b2b821918a338bf02a5771286ec7c992ad7e8c1f46dffbeb101e939f4b918d9a7b86fcf9940c12f0d2577e57f2702a263f177ab0467bfeb3384647c179f88ce508eb0173bfb6af85fb662b0861ee8051fa4c1820266f8aa6bd6f5c6dfdfe31f15a86df16669815df1af36c2c03d10a8364f488dfe3c266d012a69e538292d2799254da27d9ab3dd900185d00ba45110071ce6132fd2fbd6c129977bd68a44bbe3d0d90b70c5c4d7bf3ffa9f50400168b4a2f28c572b020c175562dcc3160df4a71e77854d555cb8d40f7e773e532934dc896078b269b719de189daaa17187e506d7c2cf06d7b7f4d7ebaa1e1b8f01be3e5fb514c4d3c23736b059f7f6b2a071a20debbc7aba923e040673f7d63a6ac223e86a85e665a941b1067f5a5b75d5a2d4622f30f61f813c9790d0bb62cba7c982d34dc6041f57f204df50b9774dc7300834f53f19d303479bd5df42b378dc28bdcbb81f8d2948b2eed172e57bdbc44d688dadbc2e30609e25c4ea4783ce53d4e8ab6ce921d43ec8e9ee82acfde0cb40789a50a9c696e9711e407e0a2383b252fd25f5d2b5456b4e4674a579f1c1c323d3abc7f1c14356c7dabf22d85ed4a9b5e75d40a5c7fb2912f4ec1e8ee6da96f352fe41c41741f312ffcfb079de51437467a4133c274dd539399b40e42d0805143fa8c7fa9743fca370059167f6f3346fc302f5b6dcb060e80b53eacc6bff176c739a6536f6b1bb4168852c68b57b787c330126ad0fb0414433ce263e2e46b27680ad072ac36d653cb95b0f0f6386c9f9db8285c3e06c38de485cc74b4610fb99714029cde977d9951c91803e9a6d864cf42215a4917aa69ead9509ce0086531d32cdc8cea5e0008bcfa709d18d0de3df22f50e87f59b7a512f3579c46de310dfc8cf95a7f940bdf86b8ce744433fdf50b5a9ca6ac87a7a7d1c7a2533c1c09790506f2cf6f8ff395d2122db9021a746411abedf1b991a0bd6071ced9135cf4319a45c564721945fdad887099efdcd1fcae03f4df332e0c7fbcf04fc66a286589ceb75c6a8f4dd2c16f67caedbe476ed4c57797078454fa66bd532494b83c03e2e5eba44b7d1f51d3d4b93b0cfddb290f05a24038871c766a4ac48cd041dc66a731b4ffb851a7648927f368e92ad45a369a4c9093f27476fc6e878ca8a9b0a915d88a3f55c7e712927ff961fde415e0b99bea5241e80c8eebbec3892ee13a4ad4d77deede0244f45f7c2f50949fb6224209de50d33047fdd60cc3610aa562adfd77e11057fc592e83bc2fc698ed156c57bfce86e444203b158948a0fd266f3167e46a061d05f5640fcc6cb7210cc51e8568e589fc950aa20daf7ddb4d46f5779b20d0d46890761132e23757535b37a009f078a09ed3ff17214574518eb1d03feb0a531f2fb59a44c96c27b834ded68470296be1ba9d4b1468d8e3c5daab19c97d388342e3c91ec82f7f9b50373add853b242b9274c8e7d59b4e84826144cdce31cc8a2d42052bc2723d1cfd01425d7cbf0a72bdc64e07e9f50410c0d84e128b4cd71f4c8a318da81567f320151a82d7b78d4369fdb6cb33a9dfc74394fea9b6e1b32bb4f2ba5fbf6bddf8ce0c93cf18debefde8057e0fe2135240021c647b48bb197f3f205621bf34e0bb7477d903d01e0814774e1e3868f30bb090f67dbdb786baebf443ae31e517c3e42f18a1651efeea26131e763cc3190cc444f8d9675445dd52746bad7b80854f9c4a5836167ecc0a4c1aa65a915de8eb20ff6dee1b3005cc2cb5cb94fb12f64bc010cc382b068ac9dc3cb78e8eaad7bfbae4c8527c44083dcccfa2916fc54814b3d6f37033dcd7c8d56efbfc358af36d8c39eb725d09e74be2cd280ad85431017a50a8445306f6a473da9edd363b7111946dcd03e8cc79c030c6819aea4927f1975fb991882ae05421202024f1c9373ddd32d66f30c3933e5c209af4cddc4b485ce2474a7d49e3375867ef0c6ac721a643d578a44f33b0474c7ec0d734d7021fa5a0fded8b3c2cb03d451b4084e5ce0ef62330880e97234dcfcf4bb98902602aac8500bc367675018b840a0f4859c89e37ba7eba8583ddb60e08f2bf0e2cc60fe110d51c07036133c40cd98b8c9e877ed386b87d114449986497aaa3043cd8caa74277b0abaa6efe6b837cb873243c912a708d3e5de41295574d361a6fb39fd90664537ef8a13cc7ea3ff2f42c04c5b9593d6e34f5759f3b8a4d855aaa6372f7554a8ca58526e80ee5d405c265547c6a6de5e534e058aed9bc41f3a34477e093888b1630e6e3d71a79879c7563705d9ab7cbbe296c56efb9071aad4972f3519e096cee67107f47d32cfb3f484d5fcba19206d108ae66c6c62702ab3e0a3bbe70755b97d1ecae411710e84ad22912daf8a86dc1f3835c556b8d6fe83888846ba8b230a5f41ebb2684363220f2b84eb969878e764674b0b8ad64856af7c65513493397562a65d635cfa8290a037112650810d1e94591e69a7bbdd1f31528d866a9033e8e02a08ed36abddaf1cc74076e7e449fb08a90e247a9dfe7070dba8a929098a3ce1843f633466a2634b892d241af0f51ecc0f5effad44f7c7706b25a7e85636a1c67ea858414bb2e71cbb519e53703132206cb79f6ff3db39a90300fca172a283e5ac43f67d8a8bb9efaee9c541fa4086cdcf727ba0820485857118a963f6c2606cac4d292f1e4364d3389b03fb817974a323240bf986d723cb7fcdcd84bc7d4bfb37d3d94cb0818b569e92cb582e8d4a6deea11cbfcb3a93af11b9c59b71b3afe3f96d4e1550d2bcb082c89e8edef437a51c719d2b81d6ee77b5922c9da992afbed3de1ff76b7fca4e5f9e6afb6f175053e4fecfdb4696181cac8d040134b9d2248b9035cb9e2819711983d7797abf2d826a893c9ec78128a551a4f02cf1b9f5a6e1699a2f6abaa499f80709f42c0ec89deb8c828b35142f49fd0ac247e09fc5dc826b20ec840ebc858b8a265561cf9f616862f02f7cce26f22dc285646c1a09f7777179104d1c12c5f6624c3a7639c18c9ca58963f6db0c36697a542451e7a9334fdef9e2853c175d0ca93ee009d408a9dc9e0830b620f1adf11c3b1351b762d8dce5d9bc71c108cd154a879f277e8fb5fac3a6e7e538edf2545e09c2aa3737fab0223ee9ec65ca5d8c11b9e1a21c540d22fb2159f1a0158c6697616df55bddc37a516438b718261e700485e7a3a62e3b0d4e97b41f2b7e834acda632b8e9fda46397dbd75ff3761c9fdc2899499bdd9dd0f1df91b113e90c1765e27432b4e70270e380f6fbe4f8759e8aab00c7ec6137ef8378bd8f512e7217784f87b6692f1837e75825c0718bb8db0c60f82ad883aa51c70e68f4d37a2e5e8655ab792b46e1243cbd112a29573af7733eee36788f6e4d7b966a68a3874d0f6559b441d3bb11a8e1b4e1859ca11005c447e1d7aaa9f6fd6e0f177c1bd0d15d05312524edd18fc2e233698d35a0f8fe70d4fd43e3855cb10f0d9101e37f3d1317c9d7d78a57a15b736f759d8eddcf1ca94e00282db8631f8bf2d2a49535ba858429748df9b8dc592b9545fababe496bed4bb525752cd5e338c6e666f8a3961df74c29b8221d720a1bda05fdf01f92d32b3ed9ce8c3fa70f21ef30132cdc30bd2ec9c5aeb73bf712293c545744734f180b327a08a6b4749273f6d853429dceda4471533952ed47b28f78ccc91ffea3eb0dc56192355f64d36dd001e822cfbac8ce9e2bc98d9a56567d77064e60713a0e7d676b17be0d05cd181d0a9e101560d4d60153ac59acdc5cb8bb3550c27a39b33c399aa54b488272903f97a4e3a9842b30de82a18eadb3cd897d4bc92a23c576d780a83829378e15248c027d1eb76bac3f1f7f0413cb7a5492a9c44a3ee78d42293483983a7d1e90fbbe277411992c034b649c8d63054a02b17d97398a87fbeed698f0e890c479b2468ced6ab23a986ad6c41ac712b137afa93df37fa8080564cbf67bba235914d7a8f832fbacb7f3d5ffe2097f032e32585a76a9aae325a5cb121619344a6466696ecbd11d656d9397b4e2142f35580a22292f3a3d46494db1bbcbcc000000000000000000080b161d212e
+flags = ValidSignature,ManySteps
+
+# tcId = 21
+# signature that takes 16 iteration(s)
+msg = 6c00000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 3e41b01c01bf6603b6d0eef00cf02bf550767797e381cb6530affadd09100fc963e864c42e24059a35b54421dee314dd6ec4dff8c13e761061160673d1a94008b1131aaf1cff6cee99fdcc7c79991723d46cbbd3d9e891972c9d5f52f20bbb11c54e5ecbf557332c25c9b54179e6064eed210479dc6446707f5204aeaad9db2f8f21ed5f602965bd137982ab5132d9f24caeae6bbff8ce95a4ed47f63d7d258fe1760d8e8a7e4a12db37d3ad11131605d2be5eedc250feba39574bce461ba88a0ef59cc7ac109b76c83026afe2f2f3656f1ab477af4b49eefd56c9a00ce804427d78a5867ec497f07a5c488762c8883b839a584ef014d91e909724ecf77fefb2fa3c68b548deae9b3efccf3eebf62a5bd76f966f7489a71d85abed7c06bef1400db6f188aa57278a874cdd8613b64334c59416d1b64b121fd2df20bbaad74c8136219086fee3400f6ee37ad03fef16a9bb7579683ff421e046f9cd407b61e9a8aed130c60596de5be4ae7fa50667db07505af533bd199c12128c03a7d740c0ecca1aa7f33dcc60009cff2b6339bfa041fa82032eed9b2021037fcfb00c53c096f608fc19fcfe5fd0625c3bae39d1ed3067f3ac10344eba67441919cfff24c90bab23ba36e2c835ca1059d762108698cfcec610e711513060845c189c507e34a3208fff884c8825c4ab3befe08f36e378503612f926fcb99949d9a2cea0b2fe59542e69f1c8f99603d10c02df15ebc4193ef22cd45303d24ae70d93417e87959e209ae8ae6618d2007c281ea8fa5e73be5ac16aae20f4b037df559835b25a80502543709916bf1f20bcca93497472adf33b43cba42edfacb51d3294b476db006cdb534b0e0659a90a26a9ec68b3b335d461a613e2f03e94aef417983af6707a543ac99cccc341b540886892e209f333d4426f6dc83210d602d357ba70942506bf391c747a86202ffea712e7f0448105cb61310dd1fbf6332ba0d6e27e3ef22cfcaa5834df1b7f5e8eff50b4aa7a3889a0dde43d1b09246aeca8bab043044f7daf2f14a61b7fb71ac24c804c07619f31b94fba83a586a9be34706386683e5e3965ff4c242e524bd4745eecf30db2865db5f217c4f9dfe78584895d4214abb2b7084d7bf64363dda987987e0da8cfed427c20e83bda6550978d35e995368e6638c055a971e7b8460f77bf59021f3d3cc4edf36a44ff18b618d0b854c5c3cd1c8bf1006999c99def36fa878ce03bcb01bc48e1b5cbd975c7afb9d3029317e4df17031d97315027dfce18dfd16ab5012eb0a24876145c0e2262627582884b18619b384ace8fcaf35dbed5a95c38096aa006a94ff6b88fb7d800574feae49a7c9a8b29c36ead729fb194770e5202c5eec7071541090c0315493547da789b15f2fb28ade9354e0b0952c75541245dd0d82e0cd553911f2f844daa2af5e34dfd2f886559b69f038e41dff53cdefba8663cd4c3b270e41ad01cd9c69d84117729d51bf9c0b8249a48a00ee7662fe0f45e3f522b0e97547c6d382c205c47a2711d20cb8a6d18ed6a227c49a2fe261e9cd5427acb8f8b09477791cbb13c161892891aec718a2089181dda7c8f8bf7774ce109d8aa4bbdc6f6451ed2eed41561d7508fdc123fc7018b67585f5f7cee14645dadb2fb1b5d6de80cd5c5900372400164532f1186b02cccf8066dad549b3949714975cb92edf3f98df302ac01e5f7ee254ef0d76f3a5afabf805e81d95afcfd39044ae1fcbedadb35e737a7277dd31f9cb5c68f0306495b5981efaf676da2d28dfba12fd87625e14a6757e3ab313586c68dc8ba7ef1e90c521fd13e980fb973210ac36ff5c223cc258241ed45138b7b8044fb63e8899faa15dad544f77955c9dd39ee11545a10e613f09e01efecd048b9b61c9f89e10acf59c4fe10e17f276c0d72aeac60971673ae1b13ad5d6ec116dd92df3e0d6cd79c71893b812d1ebcb6d2e32d3044dd0815c4aef995486eb6a2262d5ade9f975ba176bb3be9ee4a0bb2b9b0dfcd679f3772db9c7e5219ea538f1bf4036edcc9e52623c9b209e092524d023dd200308217b7ad3df4aa312ee8d503fbdf5bdcc6578f32f4bd292f5e7f0751d6e18f5500ae5013291941f20355003731d764e973c17a7120daa0a790e5362dc13ba377aefdb1e2228ae1e2bce9bbb66661f016fd184973f1b156bb2739bf4aa6cae8b935273f8e821de354a85a21ac92b08b5b384e4889ce5adadec098a2efd960e407f6c1c5cb51776b49cba25454633b0d804dffa9adaa22a62475feca711f510dba1b927452948875c23fe50eb04af36960ea8f322992d48cc136b2cf44c4fbc45e84bfe347a1136e11efdc4ec4125ffc4feb8a7c2a832e29de612ec28ebb59c3d82d45323fc35b1a0136fb18aed7e761fcae68944f6bbd63b5c66621205c525d0c409d7472c263e8e1b556aab713924c44000e347f743ab9768c46cbb654d699bb0892f3461d5a8dab4aed8d1f0816fecd297a09d2ea3d578b74356709c5c019e0c6eb44cb9185b96e78193fe5f3c19437057ea356d8f9af450f5bd9c230fac20efb37341809228116dc5676f43cbb970fa1389dc8bcedcaa0722e8dd0aaf54eade137e8f18d9d7341867fc2799d05681aeead12903857ae7046fb335cc290e5756a2812ec9925ecea01919df31f0b99ba516b74a1f29b17ebf02de6b712a12786b8b280cca0c8c6673ab037db91612d38b48a1a4d3644b0b52a4c3ce262edb5691296d2d53071a14b7227e1892927089a19dffad11f1f1bd0c25e6553541d7483ce277a96bdecac31724784aa9d933d3dcdd3f42ca1929663b5e1102430d9ae33b60421b37381ebfc65c4eb23afdc533170018ff2a3009367e32ab9cf83d806dc6fa796de92476705eb434075206e0e8e1007f94dfec75021906fb1ba90cb1ab90c4e726a03f8b1eb40e0b6cb781b84d44535945a2caa50c0228f1f63509208add3951d6fdce948d316a7ac5422db6e065928bb32d495730ce8c3e78bb7b909035f90c01e4b60bcad19224441d2495636a38904c45b98e38ea5ffe4a4a5dff4ac585a037e129a5809a864fe763e21c3bc35f026bd61cc5bbbbd490465f66dfd719faae6e21836942f9bc56fd728dd5c835943e4289bc83e5eab913385aef4c526f42b9143c3a430b399cd469395c13bdf91f0b61e1352763321e439a15f464df8901e3eed66788d91fca51a81fdb8dab7a0d9b67202b98412f39015bd390496e0b22209353d812b8d4a458c2e5de71ec5c17c9b034d892855fa70f1199a942c3ee4835cc920603d2afe28f51259892a7c610774e4f77fc40739f6bc954dd7f30720054dc4a9df4f302ef6fc3d379c67772cf4a5a6aa6024a2e7b60fb430fdf2a1f1f44ef966f6a731886b8ca6de72dbd72b648af68fe543a7534fa42851c1b498ddac2b6f94a18009fa03b976e5592a818e87322ac344ad4e981b590bb57980fc903bdf0d84a23ebe4eeaa5a658736c7b91a7ea31462a7bef3cec35630cf5dd82344b34463eabe9c37468a8cddc9db577365cfe061bac2aadd6a339c35caa61944bbd76d1c5f605399b9c60897b41ede89d4392c9881d8ef54c5b623438633607c917e5a148f91f69330d2cfc3a07a385fa636b1b176fd2099a8532e517603f461e1291b65e4de6c534d6dfa3a50f9b0cb4358dec901823fd3fcca7a1296118b261f470cbd2e8438a6debfef71787cfe3d9fea869beaaefee5159c7e0e3d98e8a2f4dfda6a42e01504c04660ccf06c249736aab24968c3718037a9b693c3bb09f3b7848fc70c60df838d0080595acffaffbe8184771615896a42664c3aa7a25c7365d696a23644c625bb964b699ac048f78320e064140ded9c3779cb5453326b7ffb66c14193420c46a16537011d8c058e5689b584feab9d82c3387d5cc9035f58b7f9d9cef7fa4bd8fe4118e5c8aebcb1bbcc831ff5cd2430ab3b90393987d7906d03f92374eb3bee8c65ac043b038545da445861860b59f34a28112750eb6449c8daaca5a3a8dceffe8c573ed9278938d6bc47e8a0c0c645040e1610b39744391a9191bcc34e08a31b9abe1ae69ad9f141016fcd1b7d4d5b23bb709b1240b3b7a9a1ddb622ecf276ed63f1a92a184a7cb80adf9dadee15ca87972e530026be137cde18cb59b0232a12ff5cda724b21342108ceb83fa30dc50af8b214e638f0e88fb2e11664f6b14ed6421022661dfeaf0903f732622fcf19375daeee2ec601d3e3749c339ea85ea1f02938f972a0ae2804cca49aff7ffde527d084e0aeaa45fa91660063bbae4fa03c3ebf20d00a8b32f17c4c1a4672f66b8146fab2597620aa8bd9ad43b7bb238c851b3c37e8551f6de1a8fa41dc3082dd0d202b75524cb9685812c9756ca8bb42ed74175a9d6e70d904713b08206b1cce2c822bad661634536f9f51e753602cbe61fa783e3b6f0b84de0ca9b89b8b9ff8432745b45d4f38c660529e8626ad737c76810b97b89602fb9b9a8b8964bd8c79f5439cd1d12aebc7d240041ad00cd244ebf266a3b2a964d6371b3bf6d676f5fd97c1a514c3ac26c0442e891efa56fd67971ecd81b90da6ca20fb2a6e83aae5581d4db5bdd28efa1015066788a90d1dc1d1e253f5a5c64c6df0b0c3b588006cf3352606290cbdaebeeafed0000000000000000000000000000000000000000081116182123
+flags = ValidSignature,ManySteps
+
+# tcId = 22
+# signature that takes 17 iteration(s)
+msg = 2400000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 45f7b98506b52cf17ac1ca661951dc3cae6637b2b532dc3dd3e49db1ee098bcfa20be1b6ef9a4b278589b8e7c4cad32a16c5600901d47f0fc06272628bba29815f237fd0839e079f0fe6739dd45fa3e5a93d7d1311536c1daaa2d14179eaed2a2933d17825f88e034c9be9cf5f5934ee9201e3496a65e4aa7a2fb18cc323cac3a1997cd9e953654fb504f1c9dbfefd35e09aeb6613ab4c06e571a782acff038df56a04e03ddac640909858e543e9ca2015ada794340f3b8187faad2c088e9a18fe7087f8bfdb3a9c234daedacdfbffae1dc67e04e429555d53b42790fa1735e788d930889ef6618b1e58ed5c327ea6723f2c11f1f466a9c145a11447131dee81550ffaccd5663a5a14e25f21abd330f71fd7405dfcfa93d8227b142cffe58d575507da2c19a631b307570e2783dd4d77e73ab2639c6a4364b3a2b1b7c92d93366f81e7042f2fff359b78630f6c3203b1c88ea9bd0fb7c732f3e5753139c8f9103480e77c57a6c8705ea245b47cc0e64e55ed2246d45e93cd638d0104fb43806b329469e2dc4fec7c9527b5090a47bdf0004ca0a6d4c747df14e8eadb88af3951cc2fed195af08657f35ea1eafd6bf53755b4a66153d4f8aa62f1feccf69f92ce4d5338c422e6743c23c51326be0296d80fded7d5b01c54abf10d530ad0f136313b3d19e55c5ab9c584b80e83f5dc99960392359a6fa718b4d1d6be467de44a8e6678d05d0a1261517d4edfea6bf90af2a80a11fd9bdde875fd340aac5880b201e0a935f58489eacd10f9c18597e51ac0604be6a5df0fa83267bbd28827668fe05bdd26fd7cf09a2c8b3f42df35412a68cb3b45679c76e012bcb7475522234d0c50845395c5cc896a336f1e216e8c62a5d65cac474c8e48f0af8d9f160f08208f196c4cc4c9d2dc4e592ef1407ed6da5471b0622d789300259ffb8a4ce75130343ee0215a3f501291efb8ea7a43b0492264157535d79e8edf106f9100573e486915e54219c989c40cfc6bf6f058f4a34f952a9f10fdfedff8bd173be598f2bcedff2ef2216386cd1eb93b9ce9e34179a29569da669b641297b3874f7477b8d08075710c9bd83cc722fd94402929eff0961de5297e803067cdffded15c42f5febd63f61c8f19b24adc1f599454b8d40b5689ffe5aa759517be2d31c45f5024f8fcdacb7fb0147b4a67f2c2e62bed6d99f2ea15f36ca051b29082e64f5272c7628f923738ded2bdc0b58b2f92cc11046055351bd65b3efb9779d3bd0b28a0e2ef1f2e807b5eae196c2bae7b07149012a8d52ffa80644c04a0ea7cf5226b008e7fc40b95fb0951c2bc9416d60d677ce96f86a655b89f504cd047eac6c6d1905358de689b518cf8651227146fdfc8306e574a38ebb39d5db0697c8320cab784e5c0e71f33adbcc5e2d38894e6006207dd97e545f83201bf1033a107c92e6fbb63f7fa9d6d80ab96b2baa89c89182198e1f93102cb9b10a21db60fba15820c1d82244dae2dbea9124bdc44f69931ee97904e15200c91bb525b3dd37837224c5c52659786e53701dfb0ab836e5ab3924beebaead548b67119d63b52ea88def1f28a0492aa047c346e5b37240d52174f609d82a46be480145f6644647d814608d2aa2077e97227bf7265c1e8e41e263abaf76eb4b705b334d7135794e4e633be36c0eadd86c9978cb5dcd34d85f959fca840a837613f35da365530b4a075bbb0de3d5251138390db3e71da1377527fa3cd5b15fca0147f9646b0813a64f5090b5bba0c68e6fc3e328215877e7f1405346624f8ede7eefa90778982fff9ecf84330bff13e6ae837d891535be7e9d52f4c828357aaafb129f7f1472fd0ae17aa73ea80894496d805a8a393e1626b1bbbb8906f3bc1bff8beac84d1b678fc2fe0218c5983787e7f98db793731fe8b5af27c90691d9ce029db1c35fb9c27659bb09e01b22be955c64fa62cb3cea9d396c47a25e3ea80aed271ad3eba5e48a743538a86a9471d82003bc8708ebfc3f2b8433a3ef418da91281e24525266b72b3c975a030dd41d7a3f76b46eb916c951c27c6db83f56338e12f4b8d517f1f39e18a954ffb01a34adfbf8b14ac5166c7ece5d8ca2e236e35a339360366aeb62cf01242ab11d18a95665b7b3c29ed818e65e14cfd1443e8ad67e32343c90272ba9a262653725d1338694c77f12dd1234f735d0fc59b55de9733d6cffec59cc6c4b1027a7633eff36fd547b549f2d54577b4d3e883064e1f96eed8003c44eee8ade5a26d59d657355d17ebef8264fd07f006eedb3a0182bd6cfa708803d5a521a669fbe2ec256dc69e704c31174fae1f5ef3688a6f6a5568b872d7a61251640871327350d6e00818538f60c7627ae84ef6773a0024790a93ba11be699317711ca3710aa8c7f990c1533277d38d117e0a8ce92490758dba144de16a4fbc97c2ed2fd466361cfb07a63fea544a54a1f4b04780171672b8f9987214055d65309f1a41c78befe703501c41520c50afa576371c91d1ea726d4542172d97f38355b7d7cfdde25010468a63ab2cee6fbae270a82f99384d46322e84c883996ccaea15eec01f07f9728cac753cda40ac6954b52c751e375482776788155edce5a23507c4628ecbf715262209ecbd7ba91948ec891571c214798e96ede019b5c726c8447801bbf76d565e7201d95cfd47064caffa3ee0757bddb9ffac0b42f4a804f68591cc7f2e0fdab131a8ffe5a7c776848927bad752f01dcfff7241003e501623ebebf2ba036100f3dc5e28a23d18d276476ea014494c693d9f4484267f1ceecd7e1fd6c75e74b416c795b516cf9f99a26d669bbbc9cb2bff8de6371bd4ea97b35fb8bc684c464d185e3bf40fd26a8323d507c7b31d203aae661add13c6531f7b56635bd6509979de917268bc0b4489f5cfe2bc2d117d5f27c1cb0de2a85c024a555a815eed435b28fdb97debb7fb6631e72ca1fbf2de560a54496b7ea79f72e41edb21eb28e7c910f74c85122240175309be4c419c2a6886803313d30ef93f587b7fb0232c91ae6d12b54406b495362276afa922af02ac6357b04f817b56cefa7a326376b82aa10e35a113c61666e9b9c9206313318b7e1097166568239eb3455478008e42542608923174fcfca8151e0894decc12fcf32ec9a2c12b48dda7a6896db728ae779d856bf2efbc34d7423eb48c87e00f4b4727420cbf4555fe5a46c63505fba5abc590415dbdb842abd728638844934609980c95985e3f127178f0fc463f4180fa74b5a5cdba1039db813e68fc1de1334857b55dc6a6aab0c4c665a9046a4191eaad90bd9b2b112a46e2a4c253d28c175823334d49ba9e07e85634c24dfedb348e592e4c994a01a5fad53964b7af28f431a338af16f28bb22c645d65d6f40150e7f10897be7b8496601551cd5c813057f2e38a5d59f310b5bc1b52216c467d1916df0da345b3e2f0aee80f7079648876cd2cf3127ef3f18acc55f97e026e3760ef91531fdf81e71c0af14e24bd2fc1bd280f1cbf6e82495e31daa5dc2eb9c0d6568e9b980da14c4efd8e80e853bebb34c259762d2e5ffb918bc2f85100f8d60b0e2353f0fc1f7ed6b3ccda17ff778db565d2942898579851409b31c2ebb860397780174ddac7fbc5e558ae04d6d60c3098adec601882ea9902b33fc43a92e16db396e345a995e4487ab2d07354dc65c04dc873cf13e1f189cb19c84627b892ef586a38dd649c02f3f4efa44943387c493b5edf476f8e68444c804b2543d780b4cef1b71e80251b1cd64958ceb48cef6956ca74a590b6623c7181acdefb343ff65ec776ad12594890ba5b77d1d2d37d0a859aa3a0037dd70e1c0af0b686559bc2c619ab8ca3f649c38e6d0f2b5a6458743293ad38ad26541c843bb00c8005407bc74446206af67173f53043d9c95c2696cac7359023fcdd655dcb2d8afe068df092c8bcc3cf18e438c12848ef078383f6126a5f2f9b4620d193d6c8b8b9f1265c827c4a1928e3e523b2e653efa378800943cd3e1cc639ac3821f7fb44f5f01290a144f11d3e26244163e1cf60aa627d7318dc3f42fa9bbc0292d6fa61cf3e04dab98a3e2ed3a1cecbf5f2e08aaac5650343934958f15a2b915f0007c7a251623c93826f2e1a1c5c8aa0879af6dfebca672c616917ed96ba3c4757ef0714fd8b88e0f21af580e094d9381a5a8fe18fd34156627dea4cc154bbd9f2d9eacd1e40747222015fc93671d745488c8848c259c7a2582c0165a1afdbf46c9a75590cb825074fbd410410a94568c444b2b964d331efbaf82771524a6cc0bf84ac2ebd1f1dd0ed8033178e79f24efeb43a0018351b13759035120dae2972f6e314c671e3b918ed9ed89234dc27c17ec9abdd3b2fc64d8e562ebdb7c90902a0931d6480386dd633185e15459ca4471177281d636d6280433d260a51522b251579833e53ee757c9fa2f87ea1fd86af051381d6f20ad947f5981300bc93cf5c44defda770975bc1438b053537665535a9c764f7fb7f03038305f4eca46ecc6faa60247024d12eda7bcc626d924894e2c538dacdebf4fd2b64ee428f8fe30ff104d21b8e1f3897bb86c567a31f153d4e8ff3be2d9a539baad2335762a010b35bdfa1a1b5df981abc8e612314445dddfeff0fe49b0cddc000000000000000000000000000000000000000000000000000000000005090d16181a
+flags = ValidSignature,ManySteps
+
+# tcId = 23
+# signature that takes 18 iteration(s)
+msg = f900000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 6593932b139ae1104d35507504133096297012e45c9865f57a7bd6fe87a6e4a10394f43226ec77841ad10ece333a381c37c91bbd82a63bf87fc8091ed29a4599042715ade54f5c94a6a0e1222816e112b4abf893f0261fa5bb5d774c6c8d35bc1c447e17d3dbc25798803518cf6f6bdccc7e2e77d77cb8e6ef24564a36b5054d91836c7ff1958b6d850d25f762f78b0b55c2850131437ad677b28b8d11d91b16508fb91f250c1c59adc4a2415ca6d20acf50c90808b5a4e88c043caa68a9e6a2ded7dd4f92844c2440589540fdf7e48349ba43bc26c23da748ac9d75f0b188688541de951a9ca4fb918572c96f7d85a040655d459eb3130c03bdd865583a2bcb382819c0b59f80e6369dbbc0f5d5b40010c2490c87acb9b50ec1a998be39694ef591a3653e9364c52137881ce175da1a97326b33a969d035cea68a5ae85e5febfe82cb5ac731f88a0c895896680a9ae8b4e7b3eae3f7a7d4a10f4063374f317a1ba377a01a3433e1242b2f00c0584a094d157c5be1a864b84712889c016e38fe757d02c30d63dc4c5d087f8c78032865ebc87de03747d03bd6bc32eb9880e8b640ab46e630815d11b3e4d88edfa6a3c006b568cc9648d4df218ab91bf1168852d4102f4503061f96bd401491aa76ae8314ef47d7941a767fdfabff79349d089aa5198248cfb2524ca6489ad58fad9ca4fa6d7d1ddce1fa88c3dadb434cd3a1f49168460b36d9987eee09ef17a1a789a457b98098c85311deb3e7f4d7c2a84c1c78c2db3e9823a5b47b9e313458d8023357aec8cb45fd052da9404c731062508ba31db91cb670f474319948538dfb7b811368e4325b24ac77cfe1f852bbb33574f175738f6924aa937aecc41397f8e34d3c75f44d6e81714a98a552a766089b8b2059bfef2f890edc17f9d98df040b3ad9168c285be95ee126ffd3d75658571f75035a0e9fbbbe66ad6a85a80077d21cd19bf9490f3fabd69991d6ba2589e1b9a3b8e64f0b879f3d80119e6715b827dea6bf40c09c02490e60b37e13d09d963a841fa58a4feeed6982295eb6be66def030230079a61494fd7295143c3a99c9fa722e1081853153110206cc59ed26a77f9125eaa98944d26708609594ddfa78c7760a8e9bed82e85cd991b2bc5ef7e2216e0bca4d16017749a1579b54dedcb165152d9324ee63fb7012b2798da17d3700c6d8280c9d7bcbf6ea8467542e92c8a0868ee9d5fd08bd397641b20d7ba15dfd079bae86972020c1ea54a0e641665b9f20dfd7342efeaf45e2c0682fcbc75569db5d8fefe4e1cad4e8865e86ebfa52ebb4c3bb1f9bdeaf2f179980424a62eb40a07196a78069ea6b33f52dd50bc42245517346a846a63bf08bd27d341ebf829807595f12ee0b097b917529cc0c4dfa7715238eae6cf336fea3004416f18546262ba801c8bc255d325524b7259bb747c3f8ba51aad3fd54d98c882c3c4924c3d01c2846690608575ff94e6778200ea316dc7e802f889a255e642c94e43cae57c68ab4f5083d15921e4abdcee8d7c4e9b60e43cd3a234780c0a6173b6b132d2482c7750e5aea328397f6c87898cd2254437a37f3b0e65b3f448f541f8c455476aecb3e5d7494188ac19cbb5f2ec45e246e66202dab148f2d5c0d388ec1dfa17495c9b3d255da2f48211b1ae87b2beac31735fb79561a1986e80651ef0f32bc9181fc911ea32855b5c0cc3a4fd807c5fbae608d683e81b33544a42bf1f89861b4afa5585b25e57e651e5402fee091d6bcb0444ece3e2d907031716c4488b6391c90446da0991eef10d982578b6999beae142cd85aca38e1a6ff07553f3254de236620bdcd17e24e9fdbd1fd7d672799211cfcf4e24184cbdcd3cda0d8d03f3dd76b0e03606c63f8fcfeae5ecfccf4dee0d5158567e86e3a4ce343ddc3c4c3c1449f142774547f25a9538eb80191b239e510ab0d5dda4d1d2e8af018ce177c6877771a7eb5dba26429f7d9772af8baf8220d35b28545d0127b14b524aa5afedaafdd3998e6c3bbedb0b1ac72ad30073560ee23e85432659a3ad60fb95a731b98884cbe826d3205696424886341986e933b97d67ae5c0886979be4c32fdb94aea47b9a3efb2d062806ed25af606e5072bb4352f3903711fa94a97a86c2dc2d32e6ff8dd221fe07e539f22da92a158e8a8df936e38d02d53d1b0fd80b63b6ef40bf826618f962a1d64ff361e546b73d2c7d47a5c0697af49041dac576de3f6918246877cf50504b641a457fa8368caf5eac325e468b07ed722c8833c66a2fc42b1e3f5eb588190deeed2c10524f1b05c6efc9d72a6a1f4833eb58db9a5e11b4704d879d25c998236fb4ce4b2720716c9e66cb339cc2293bacb546260385e2d860d727d952b4bf07618a04b30bead38bc41d2fb7fbd49931e099806a6d255d2cdb7fe62204a0efa2a883c4424bbf875af04d1f7cb2d9cba74946b0022f614c6a162b643a212523e7e7c7165ef5d6400f1664cb37fa555398f988057fd8aa3918ef644fcbed19549db991d5ff2c99cb9f6be56f24aad7d7ee304ed38240a609df19a2b82571b33d9552b59ea540ba909ad64e3f8342e9c2855a3577eb910fb47b7feed8a23458434ee6e0b0cb484b11c63175685a0ce70e4ff7d03c47b7b9d1e18a73588e8546739e6e9c3aa0341f4c121e1c662acd77a614c4d87e84de703710455bbe937b30870d611ab1ec256a98fd884568b8e945b0d88400d87fba756c17311e3210235b3942ca5061fe91b072523720a4d32d174c88cbc65868b5d7d6113b948bed240d39d160dfc6daf8a43a1f6adfde7e71e0d593c82033e9f6b7a4baa0166d8f28c46114c57e364d70f0f122a7b463828cce26c1982f03cac961b42b805820b9af9c8bb2240eecf9daa990d61c42f01ed37ca723d092fecb767fc0ddf905ede494d7b2dabbc593360f569df195ceb1ce3741c08b60f5f5097830535c3049bbdcae2098b058ac9a50e4ce7fcd694d45b20e1e2fd86808d474480e131b17b1aa8ac351fe249708aecffa6a0c7bab3115ebbf8c43bc5382a2a8e2011bf859ad034d14d8d24d56475424c1b50bf85e534dc8b4745e79d6bf098fcdc86a5025284097b0ad564f6ada364837af4df60a30620dba25a3c5d739edcdd490fdf4b7ae7c67be90f6356d9b94963495d9c5c8ca7154b4b2ddbe1ef1c57d8e5e879a064c7c76be3ab86312657c3a971ee1f87735df1a2849018a7d1e4867c9ad9019729c3f43eace4f2916384acb25f5e340a534d6782aa7f348e37fb7e9895b9c4cbe732b4e7db46341f93cc8193407c0b699ebcd9b7e3f80b5612309b5d959a701d92f4fac5b251031db6f39d6339e75368fedeeb3dcb022b6addd77071af1f40504c875d19a5add799a7f0e5079fb39a7d5eb991b5bfc33f517c090b9bef48db0ae16d160f5a81143fdc0a793cc3927ad0ffe7df402169997c4386a6c01853a6c6d21f0607b209b0cddceba91af3757926195750de29ae82172840205bdc57051d7b273ce469fce06bad5f758febdaa498a3399d4e3d807bf62fd57819fee31a18fbf24e501b8990fc25253d6143cee42fcfc898dfe8a414ffca27356102762cbbbccc70158b318e5354801deb17bd202ac11627d6effddb25c172fe13a6a5756ad80b450839086a46dbdbe3570628747d733f4836f6d57c382a96c7aaa9d83c3a4d5b5ac4421599b6311219b733fd9601195dda1abe2fab8bffd26147dc555c8c8fa11e3ae36c3afe9e1cc98670d33804c0a60b2f68f98282c4b705dd9ad3b9270395470c90bc75a1483b946822a1b055852effd2aa8aa93a4d633dfb9022722982de780dad23dd5f2021f3c4c92e048b2e6aac3c6666abc2970a2684bb4d749b3b05539f90a9afab6b6cf5b05188ffdf36941974d5b622bbb85aa7ba3198104cc1111a914ae36291552f40825c0812abce4fc32a9d4e29d40a5320c29eb49905d907343646a638709ff078de5afa9b106359dda4d33da38170a5d2c17d57ed1dee1edaf1cbb019befcd4cfdab6e30ccc146fba1ed86968d7224630118137148c3d4add5e9797ac90bbfdbe1fb9b4f472616083fd8c1d72042af00c1960b4e9e44a820a50ae932975a0d4d64c0c26d61038ccc5132b40dad8ff9400758dac4f41cf7056069430104bb7de19a478b61340002562fe26cd831f6a7e662605d55dc6297b5c2cd248f1ddb5a272dd5851aefc0bc2e79c59a901e18fa9df2e3312a15852fa8deb733529884c7e0e6f4a247e51a2dee34f53323b98b2cf38966ec33c9b8d3697d056a9c505dfdd8cfd1e54733a85e184e46e66d57f726defbaf14bda8b35a1cf9b2a570e61a5ab1128d7b1ad791d0a6e0b79d51b5845a909513277ecb51774a76f02909851f57f4b7ab2ad8d3b3dddd74494a003f1afac6072d9abdc45238e458d639fc827270c37d15b605f2b91ab9f1a8065f5f65c0b4bec40a26f2fcab9dbb4c6c6176c4300e3425c0b4638b8dc0a98c341ffe5fc8e0e8e017f58647285633d0370b919449e1cb03e9e646371f17f85b7f837b9b641a38a3302036285e37997f144752059fe15cd62ca0d503062dcac9763514fd77751514e5a8593130f925012a63711a366dab06374a5e82e6ff0418434f646784c5dc063f558906426f99c9cdd1fafb00000000000000000000000000000000000004080f181c25
+flags = ValidSignature,ManySteps
+
+# tcId = 24
+# signature that takes 19 iteration(s)
+msg = a401000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 6dc1fa2984d614d5c52207db2528c102886bed81844437049d558dfffbb799f71a9dc992107666cc595a1981b75e49b36fa4a2b5d44a5d7e82a002c5b0fb8f8c811d82d19a84411ccdacdf86912db7dc9d0a8df1784a155c2ef1870d706583e16306106a0d0095aba7483e484c22c246077a743009b664f014d86d6358ef4f415e20d9a0b8ac2911756c72a1ab41c4d333f7376cd23405cfb5509e1885337b2e1f391b9e23517a0869f090db5e89a1f84075bf77b46115052a3cf25b3893a112a454a1b6c23836a84618030ea12f8bdbc2fd7cb2b789925b161f71c2e5300e08b9dfbfeb6e700cb09b9b101d64a4fe8ed2f1e66f7cafcd4985002f827098bab1722411845ba01bd994fe4b3b774096e353891a72414bd37af0df4f63580f5d3e72ff1c916c13bfa6828a44d281fed7ded0916e84f80c2bb41f818dcaef8eced887d7de680cd48d0e499913348d74f6a1e3fa81a10a079901a3db3e7fc6b55899714396204e4b442e156bf34915df34365f771b7c5617c7c521f88c43b03b738c069d96afb5a94b96071a43da76cafa8ba2d8f24f53fcdb7008ed7c73c5de081f9b7d2df75ba160009d05f1edd00aa44b6edac9e4f0f6413c743d925a70b87fbf551af7a3bc46b47814e02d7043e9b92bdaebf9dcd35c0e5a0c49bb53b6309456624e8484285d8e434d7fbc252191f69ca8c44f8eebce2d18159ed202a24b77e6ba9f907b14cd9308da274919f1c93b2ab6a6cd383b9b954d6fd1248aa35fca4eeae628d97d377d703a7bbe976956f5b46c2b884c6261cfb844bc3cb3f3219131e78aa2cfccb4276ab1cbcd42eb3b5a5cac311c340dd35198a42d13742290b0b23c5c8a7619acf12bb41e6ae570ebcc99deb82295882ff7cbef6fcbacd5cb0a0680d654be9b18325e8a11a33daf8ddb1118db078537be93a54c529673c366f89e2d497ec297346337fcf10b2288095f572dd62c1ccc4a830b2edbc6e9ed8905d688ff4333baacf412b8a95ff2de36b37a7d0d230eabebb0d128a1c1d9df3567f27a1beb31b822c4e8b535bb38539b9c93a8611a785d35f8afde56c09dfca722cf0364d99b9d0ca55dbc8f9d21cb69ae8b49791e4e1fa76bd6dc9c28dfaacf12add31cb150757070a39225510372b773459f8c86ccbcedd27015cf6daaa73f6698feb3bdc118b03211b261bd8574b116de124634626386f1a91092270d15c16a5a143bd0a0fbf26cbfd34718173fa19e466c9894d3276bf0c887b09b77a584fe80e0134bccf5c3bba566686c79dce66e554bd9229c74d4c02831f86142932a1dd449fb920ef675af899db8b99e758aeb3b32b0474316db13c9ab2665e651242bdd2b696c6a2f65304ec643808308934f727e3bd4d1e04fa5f52a452dbe966f7eab1ddff16950f211034ef755e1fbfc924f44f1e5b91c38ddc9cf755204c4f5de26b59a253b6c940fecf5db125d5d604a10e4384a0cdcceaa0ea4d4e580753b4acaef25a77b7455dcadf0f5bc10f948027062cbeb5ee2094e01374bad834af4805b98cf21f2b99fecb7b09827fcc295867d083b7696e42c2ffacc5ffb5d26088c468b1da4c967c97bd91bfcc5792cf18b66e5def3ee01e7e251c0796179ee3a38cbcdb656a3c6e4e1a970259b2d2e2dfc25e0b7d7229f5b144c24129d1ebc2e9e64875b298f9c36dcebc1d43e451105b16d20839f7e6fa47ed7076b603b5e17e78f979d01d5245c084e500deb96e6ade4d3fa2837cb400c02943dca4ec02b1367232f5ee56e70d7302195c2b6f9c0a213895030857bf8353c0a0d0275d0216c47f6b0cfb54471c6eb897689a64a5fc2d5b51f6be93b7ee0cf31baff1a5143a274779299a6b903f44f8018c5729cd8617919a13daac169683258a8340014d54f1e9cd82134eaab14c7719eedd6089da30a04e1d873b683316bd64698c81a6ca28ccdfbfcd69edabdc03da3bc84d51d770c806cb53597e8db6cfe2ece1df088f1aa6ba75319ebb27f9208674b19783da8d4d94653ea7a0ad7eeb0ade84db5ac471db947ed77c8b11de5ed23282e75360cb3969cb13597d66d041c3efd7acec993fe14fc6fe536dc5c2a6d0f0a787df072c2559f824ec077059b218541c995a030769896bd619b0e66240ef244c8b3aaf0e3f79abccc4a69387d2cfa3131b45ad4c4817d478cb7cb7264aa8dd46e5ef2d3712e3dfe91e615a321433daee0bbf20afc7051d3a5404dc66f2a02bb8fecdd280718712010115be7131d09737677293c635bca6ad085a8f8c159d772bd52c80dcc62e27db799b81d84e337424a8d8905d53adc68c8a222b6970eb8078d796b64b172965f55ba5c90c0fcb006865d7b1f0745e1458b1ab75c54380b3747da09ee3543a013e0b807158c9afbffecfa5a3acfeb185f3334d3ee923edabff723157c671330ecc64633a90347ddd77be425713b6c0f9b41a9789136c1ab74248afce4f0f569fc181cfc34aacaf3f1a4f7e8e84091a3a0849d87f3b8a7c6ad4afb7d357eaa0a2c915beeee2f1c6860ef3fc5f4cf0bf43c1d596b2c84a89b87d36c2dbd143dcbefe0bee5dfa04b7111895c8e2d9803d57270b347374c7a6e83957145d00e801db52df1fc37bd8e8eafe7a6c5b75a8c8fe32b6b2cf0e33aa6e7c4b559d2687cfd3e89cb9316ba05facd121f0921726adf89cc2094da9fe3f296305d700479a6ee3da724a39ba0f5990691436abb03e6813c4071913cbf3e70c6549589aeae288212d2257077c434f306c611b932c754d022bb3d40d91fe0479a9a250eb4689e118def6cfa516312c4ff022d1619c5aaa535e996af16016e670fc5931fdddd9e5d6105c385239a30e61c8d9dbe1185fa13b375f214965cca489d186a84e5eef189243212eeb570109c544fc8aeb4fd13227055878a15a723b70a27c8c902bd8f1c3f9d8865fb2dcc554f2d9c0e9231e691b1712ef052a9953daa36823151c86c2e1c43def615f4eacb610ff684957f08e58f9b07c633e0c71ce838bb8c742e0ecb301af85b4000b61e3b2f824e6fb283d310c69623c3b78e34e85f2c5a319b3e30649bdf982183702a4b3adef8844d960ca80ee90ac92237cfd5a67475241f0d8fd558df07dfb952fc54219fee76946c2d3cc498dc85b0b04b1d6b121d6210d5c97e1f75bfc1eeb7ca62feedb10f4c0384c771b331b230e951fb15ee5c5d6a2adff8a508cef25c6f7ba717a116b2fa8cd18e75fa5c711e036cd1c609dd5fb6f26c9f135bc214c13691d27c9624f711e6581a36270aa27ab4a2afcf84383170069a8c8eb7d9c8e86d328cb5eb95c81f3b5fd0738ab4f44fb0c71f543e66febcd8f4157ad4235feeec30fd3e4cf9e0967f34015bf5bb12a15fc46ef5d0af50e3ccf810ac4310fce50ea1fda53d52dd14fe8795645032c4976591123b74e263797cbc7e41af7be9b56a2195b4813a1d3438d83e3b4da2421746cd97f92176ed9eeb1ea29cb5a0b1629819bd7e7d40c963e629960607aaf96c2a3e93a9f52a37eab47b8c7611b61d5a1b9fe3d8cddb7acdc04d000286b7d8e09e8ae4e58fef9bf71ff76600bfd9c0a7f40a69d58c76459436959d916e88ad288fb4e82a3586b79fcd67f66b2711dfc0d9d140cc22c0a40f6fe46d09c12caaf56a45a7065663d879e8e6f12aa05e9265b16ce1aa2513aece0ecd83d15133f69a7c91fe0fd44eac29b22658d3eb16bbafd2e11647f0e1f7ce67168f5d3e2b45843defd6a4fd8ba901fb4950edd98a4e41b1bdeb1581c44694804ea07544c2220aef5c3f3d58f7d053815d280a202629dc6a45a931c7d86bc8256575d58cfb1bbadc473455fc22a7fd94b229cdb8ff4f8510c126887593f62040ded2894fb7f53665adb2467951efad062d30adad1c9c5daefaaa5748c614991887cb87b421970b6c061e55bcb2e2ad0dfa3c17e869b43ac272b04fcdf4fe29baedf3bb3ab6ad1a22bac0188ee3712d3db309e57efe5fc9b60c3b4fd2bdf287bbe16e88b3822f45868872a99b78265fc5f2c123e7520411ebb2c65652d01a0e2fea8e7cee2a7f667733e208f20a0ef5c845621cf4c2393f360f0f7a0b32d6b1621cbb8366c89ef90cf20919a6c9f5dff89803a50cd281720bfe75c7cd6e25d12938f43596e5ac23c948bf73b05e4e48b0135d1f3c59e93c140cda00463868dfecc077edad546cb99a54348104dd60886874cd680a38e74f515f3e1612a42bbaae442a80bb3af176a73b24d929825955bf33a1541f62cf4a00b7adfb0c7f20442213bf4a531718c245f8885b306fedbbe723cc33a1dc27c52052c4755ce2a302a412955173941c109f52901528739c58dfae6047d04845294d8ead6f94f06e33e96ed95222b1eca8068570aeae6afb5ee3d5d93302b114a815afa5e5ed4202a9bb3ef0ef373385692645bf4aa5b0192cb2834488ac105aefa23b4fa03fec0319b0565916791b50ac339942cd34e875354c27757f4a4aca0c4f0f2fdbb06869f4ce5e1c8cef81791f2280b42bc2d6884050d431bda7a93d2a0e77e72485bef53c70965e7f5cc599d48b7e00e5bf1f5c9f4ede54e56bbdd4ef28d7ec127c0e9439b09ca7f568e18b234943ad6991d71911e2070942517089d2eaff1f4e6e7dbec1ca498f99b7d4e0edfd191b40555babf8075eb5f2fbfd0000000000000000000000000000000000000910181f2425
+flags = ValidSignature,ManySteps
+
+# tcId = 25
+# signature that takes 20 iteration(s)
+msg = 1305000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 0e0e0793a9f00d1014ac745f73ee18458e19dc0c9a82d62c4f7c5f08cb302f270648d108b2a87a51c5b83e6aa54f4b40531f01bdf4f59315cfb96fe20a21bffe3ccb5aa55050ab5ae428308e9f1a95ce546b09b68d9a3036a04c71ff617dc48b4a3a732b4b688389a8249a7ff14a35d52b6c96cb0a6d049054de0f7ad08669b82f94745cb89798d86fdc0c2375303f5849c8992400889cf61ecbf63bb5343664f6f63854d3518f5a63fa55098b33943fa5642745b0a907c8af07685a18d9af65b121e90e7fd0c0cf62ed87b09eba0f06559ef813649a08a03c0819da5479dee4d170c17c11a119b6d9055151bfda6ec850b70939167b4d4d5bedf4e5aa19c380b3f87b45ca8b71dd9007450213ff67338a2631b83ef73499c4cbcb8ac6210f836e73605eebb09bb911f63f8dac03570c245b1826ea4ffed10e7d6934fe1d2e5358d52f18329259c05b1e570528e7bd160435a826e39781c8d3ce0b933d3ae34c33c09c6a4e535e3f0678c27e4da154ebb05039d3775a3bf948f579e8920b12b2a50430694fbdecb7ae7563631776e7b5aa3d889b3071964417eabd2bbc3fa551e28fd49abed8fe37326770db6168813903a4b1f4a149cdfaf2e49d88925a6ccecb85aeecaeccbeb94aea175fdc4eff8eb6cf0ac7cfa2897c74bf6c1bc5daa283398b86416be811bd6dde7558bdbc5853752f2651369d3b142394fdbafc1f2f8d1139df065fa16df69bdc9acd8497a89f037cc6cb6eae90292c7bc8f1ef5d89a07ad877334c53b80419f864031f78be57a82bd89d523126e9161a1a5d126e52cdc94831d68cb1907545c0c619bfa1b7246aa50355591217018b7227447a7d17b28324fa6c7ffa1f5a119bde3eebd11dbed6bd9d8ad95b4e1d7b4d673fd35cdc96631e1a86dabd6bb7b66ad5985bca8888d5e8e145a5b5f48953bead5702180a99b9402a5658a7e7929344fcbfb574beea901367a3dd8ea90a75b54b08c391d5ea6373ea8bd10cfc563733c4f533f30ba31d3c0e49e4a5e5c91d45d4d638712aa80892a2a0c5922edcfee867e2fbb7f18aa032c774e9cdbfa59b1c27baa14e932f59631afa69caba7855bd3746a12888d5a1e64271242dacb972cc82bdcc64ec4a2c146306f39115d5c824b71c93b5833020985ca099a4e937aa527bda8e69324005462f5f8431d5bb11bca9e4c59e5b14096cea9e40a540546efa18e1364c4f1ee855cc8cc564dce2ab8dd683bd9804b11d02a1f510ac98c120b6ba64cce16b203e53ea3d1bc69bec0d06a17b30639cd9b24fd1598e92890e88f7dd1397445db54ad8df5e136ee60f22ac090f2bd905765e810f54711f01c63564ef90cb01108b2c2bf1a6fb5fb8078d609117e111604a1d927fd24c18354ddc006f286975be3bf1ce5593715a8cc873c820f778e9a428e08fa3db1a5f52fab22ef5d16056092a6b1da23e3c64f205b3490f0460e9aebf80a4fe9acd31e5747431065f575637c8c4cbc5dadc2753b90e69722182a344d3b154bf35da62c1fd0e98921559f7d6010fcea31a79d36bd763cee1b2855dd05b44b36c4301cf6070408f02689bc75ffe264f55cbe06886019797b3ce3206654ad4995628eeec2db47a2bcd5feceb2f3cd3246bf162cfeaaec8abbd63b2e6cc441b908a3301c860a3a15c1b9253cdff625fcb6de85ab78bd802dc5e073a0cdcab0512a076427d7fae7b663d9b81bff8f0192fa7db81dc454f32340e200ba59bae4eab701662ca6453c233be851cde64c0a966ffc6012681dbc407c02073b9890781c8f484c295720eadf934c73e2b412b484ce4bd599a7b8718088c55433ff1a78072188e289ade5861bdcda6d10dc5c40f1c189ad96eb188bb46741e5ab956214046c2db868c8e019ef5a37d90b92fce70ae8e4a5339f612c0b8eb43c61c0c63f3a59edbe6752d05ecdc178a8a90059d6fa7e0da0bbb7984b7cc1ab8045095558ee505b3ddc1b3db2a78494436aa9334f6b3b3896d33e556e8e2b9bf728b5c53c204a964a697da252a73b8c120b363923aef38f993a3db4c24c9a4b1f10f444be9f87677df5ff2c26e419bf9c2f8e53ea2e6f1bbbdf2b6c5090dba385a5cf5652f9929295eaafcaf282826305ec5766fbb03ce153b32d49aa7a66752a772d2091568f1b6afec5e53dc2d5f73eda96834404bfe58fa5aa692f266d0383ddfe12da56a61f93933b6794af38ee9e31c3721c1bd52a6690bfa68948ba8d6577ae6acb3d5adef9091fbb7d4007aa8b96a7d17cd58987525296682fc777111ea979c9f3b893fef381c03319d7c6b9d4d523a0e5b98953830e46f1bafc94aa6c4c323d2a8a76ed1364caab808dd7eec175eb230de35e8d6f4ecd0dcf32ac6b1be9d7d6ac740f458ae7530a64baee19357ce5a3f106841d99935d1606d4ca7edd2d5da69594770eb86827ca9180713ec4df96de4857323333dcc4c3497e089ba6388a39450d251f39a1d2d6c1d6befebb7111189bea14c0ebb75b1c64eadc76d8713ab2290a7402e86c16ec2eca769febb9d8cdffa530eeb75854b08c52f69c1bff47c2f775353484527f2e3f37171d3fb44553cd6dd4d79e81574d01a6d4924d7b2dda910f438eb4c7ec938e5211ff4200305fc3e9659f8d52bcd49d5ef6ff5125d1f8096107ee01633e32f159ef17e1343af03076061b13bb3b25d4422f21b616393cd2d36ddcf96598c1d3f6b4e29258c94ffeb07410d1294c754f25131f68b4018ea155a1c800df5913cbb5c7520c7e33c3adb8e21fbc692b9d4ae00ce6e06df53cd3c13b1d12dff0607c423d41bdd53f4a632a2b80937ea64605e49c9694cb68e3f82fbb164964863c9d58debe663db1ec93382b8149cba27be1c79b2ec53396421a0251f3c4fd3199ea45c944e250d9402128369ff9d7fa48b0dca0c945eeba9b90539f3d4207b00d86687418dea895a4d467fd7e48fd6edade5d06434b9b1b82ebc0110b24bcf0bd4c58f9d7e5121c5863708b0382838423fcd9105e6776dcff3e914c5c425b85b9a1c5ee805d28925f313931a500e5bed7a4be914ea3a1a87e8b798702d45c6961afca988059bd23f04c38a0f4c3e9d59eecf1fb1d07ab1cb41b472b8848e5a149226966d540b095c23b293d982682dcefb8ee426ccabb3a5ffa070e019de02aa3f4fad228420f27a07cef98fe7cbdc676476ace8e45a8be1e282c136189d11df419053eea59288a16e0708b1124535a2a9d42e5ff42d514d05f344d75d26abbc2435c42daecf028c60621061565f6fd5787d74ef09ba4e1dd3f4043f0a6164d82c1c8a56971eb1ca21a966f80f67bfe32c2b3bf34e680a5abb3279c8e7c71130c77337d439fdee9f0589c268bf2b116eed8c6042e3def0986ede75a7ddb046be0cb9c2f5982485fd18bfd4af6649c73724b9c2046de6eab8c12ed5b1c56662b52d45eddfc9441f88d6dab41afa2c351c4779f623a6b3e4f8de8a749de2ba28447994c57566178c29cfe2d927d7be251b9945583e0d62591acd43c664cf8e52a9f96b08bdb914e5cd40aec4d9ee49088be114d7f1c326622262b9437d4ff41ab766fd164cdbb831023e7b8a4c2f215e9d412ead4176445c5661affeda6bfd4ee4d0f39304ecc8db068496674f89d5be493a4e225239c0dfa31b8ffb4a71b71548ccc1cd8adbece95d2cd76e2f951f6862aa265542696a0d78acf0bce2e20cbd1afd6339f33ca27efd6289ace29fecbf43beace6395634e3cf6ae7d207f31058739eb878cea44af09d18d0100c719241948dbb25943f8426d70c76011a6655e47eab980ea419c0baf21bf3c1cd08a6b56a95cc7ecc803bcc6caefde0603267954cf865423437f3af6c3d229382d4e6e4ec8699ac7929dfa22dfacda6846c632c8006c0f1c7bdda56b9acb231a52a532b2c5ec3791b3c3b7c7e507b9d0a271afcd983474ee55e56fe4e7cd8a0bc6e5756f118c513c9049257bb7251038866517c4c00be889772e7d42995686cfbcdd5f343fd3f41ec7162b61006e55eea57837c0739c8bf2fab9d24590edc3622d2b1c472a1c9a5a4dc63a883834a431f976f1fac01254c5c319cb4da867d129f007a4dbeb5626a9f53ce8db7044bb5e1d4f974a0cca9cf955ec1561b8d0afbaa14988f6d14c705adf6c87bd3f7416611867a61fa33368a20bd19f295c40858d9d0946e3da6771c41ca3b23bb97659ad5f5ca6f48342c323889bc3f00fa116b9eee79af395b24eafb213bb3f74d2ba57975564bd14bfbb97bd824f5ab3996bcfe3d3728e6d2fa65aff6ec874aa468d297f4cfd36fa55f7c9e9d8ce610ff1c36aa2c5b596b017495e298df6e199a6746093be6b4ed0737e834fcaafb52d9a0c37a82d4afb0fc19d81d577ad451edce943112aafae8417e29de50541ec0a0cba83ebb61102cb9aaee51886fa5b46f32f43a3a6caf58201d09466577619b369986a3af1d5ebaa1c0fdb699328cbc95879205b3f519cc235026420a163dd96e0829ec098bee25386a90971477cb12c4db6bf7f48f032e631f106441e34450866ac7e547f3cb76a0452d1c305b3cc822942b5ca815bca6adcf267d8afe7763fcc8b70e4c31999edf5bd25d42793dccd212193bd4e808373b3c99b7b81219aeb4d9dbe5ef0c16455573858cb8bc0454a7eaf7172385cde500000000000000000000000000000000050c141d2227
+flags = ValidSignature,ManySteps
+
+# tcId = 26
+# signature that takes 21 iteration(s)
+msg = 8d00000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = bb8a458fc151be6dd575d810ee1dbc1b0a0c0fba3b64d9282b33e80531e9cceebdd7f266d7d810d0e4ed65a2fcf188c79d0f8b72fb7942431510ed1a9a0dc5dc53783911ff8e486ba22a0789a685370bc44dffea387de0bfe7e610b769b3b701f8c544ca3d53df14e0795927558ecda480cd7ba8c0d19cbf954e032b253289c42c657cc18ff7d5ebcfd4ff5163e8a36f585ba1409f1f8f039f87b1ddd18170048a08e4366a19439bccde7bc9d220642eb94896f4a64b1bc3631089f71ed0be13b4a38c092cc5999ca9c4cf4a4bab102f26599f651133f51cb2f1df9f6bb7b9de9b4899a38d26b9c6ecb29efedb2038bb92e2ae3401d97f3ad3e1bca5601b3f897a2ea831e6a046a66c69a7da9c1e256da45ca11d4d63d3d5d9de9470c117a4f62f3774fc9c919a73f06fa9e27c440dd94aa19d52de6e53c5f500821fae286fea255486434930a444ad90a9eefd79bf9e335a995d652c7f335d09f7519354f01dab9c10d292dceded1c0db39591544a4045cc7d3d28e4da6be59760ee7a74e312e482ddac340f6c6f4e09db4df3b53052fdecc96dc7aa6d6bc160b991099f0aa81ac1982188245dd1d8b111186377f2f617647ecbae26f321aff3931188d2df051f3a4296e406790514a33080fddc43ea4418d44e8f3fae0660748ca4ab61aaaa58a6e2fb56b8ed389b44afdd63243bb592e0d531d79e75d396a007da95535df0ae74d9fe6b61f997811e3934150f4ce8aa292a0fa59f66c5141e3bb339eec3587b86be94b765aba9f2362ba607bac1ba18917ab7b15f3e3cc2270109ec0bec9d53fda5c276841d41f29f91db419fe91b7d5a2f04c5322a15f552514ab592ef54b59539fdf2fc66617f5baf1ac054da64f9064b43392d2d14823082151ae5f8ab536467543ed5cac30eea35904b4a737a11f53fdff7a5099e915b1835aa32ae57e0a14a781966d17ffc4b66c62dc4f35fd414ae0a22719241e863b60ba63e82e2b16dba8672fe7ce565007e8ab53687561c8c41dbd736fb8881c5fae17a28cab7c1b2483a2ae932b55e5b154d05b66c3b6db45a7049b5934ee5880471c3a63321b193c642e6ebe89c54f6e60f819dab75c4838eb6ca1ee80416dfba41e7836f3f2361fd4bfacd3102c1f28ec517ca8db5b38ae3f48f502229f2144750d5d93e4c8125168ef9ac066fab91c295d47e04a01d30f1cc7889e9f9911a1ba9b6d44014637217571f2e7bd371775611c00d651dd5fecdf342e8370a303dc7e4e936dccefe0c66a8d12912ce2fac1f99b45a5fba11a942fe927005ae7e9453fef8a926fb6c8c3c90d6ab39bda85dfe50ab95541c71d4aa5debe9b9a10b92f74f24d09341738e83fa7687bb97054f20bbad10ca1ca2f88a2d9f51fe9e940680785181fce68693727c4a39c57a108f37e41d35efc7e8249f60eb05a68c8b14913a85be41ae96e8b28a9f97541643657f13d6823535edf8ddbba95ea0768d98bdd126f9829025b799842e2b58be73022e16cf46b0160bbb93f97e80ca5b7b4c2581c3be3d7bfcd81a2399afac6e6388a9707d7fd7e1b19a56c786344195a89da97108c2b103ee87172be50943de28d95cb76722c070ce96383b4bfc1958162b1a066faa9d880dffb4b6c4a864b0461b085eff9dbdecd2a2643b1390bc3d5f00830e6e43aecfbd3b762ec023f2c684407e9928ffda93df2082231172f42f5b887f49454e1ef973275a865950259afe4d3b9dd5fc1d14f07093248364c37db8bab873070fb4720130095eb7e1afe4899ff806ad9ac19c09387157a560a98d1a68a1f0665087377f5e17477279c094ada07321760177c3261b9042c36c42060b700316a93450cf8dd280a0f3455ac8c1e0de4bc40aa0af63857efc77023077e7f16a805e909dcb2a9e60a43e7d5d22fe30f8f8a8291c79a2c08a8b5c3bc9dac5402e6e3bf87898496511be0483e9e11c69b6356740bf8cdc075f3a38f9d489ef3b7f88d51734c8bce0acf6fb5beb7a3ffded49ddf0bf54d6958f4276421bcfa666c273f3a415ff69ca61b736eed168bb3795f9ce647cbd413b027e520e22ebc1500671bb11f056b3b41865690ffccac3718a597e16b217eac9b4fe268520a5d342f1de7817c3568e6249d9f4f014dea7b90730dd06ae4acab0a5e598fbe72b30fac6355068a74d8b311348210822d6f8409e77806a259fe4eedcb5934d2e09f06f2fe82274c942058861d5449e6eb923ac947d06806a1f812b6e4ae2e0a929aa244779c075d7b4cb9edcc664679b6be833c81d5c688517eff2d10eaab41f93e48b7961cfabb5b9f087f5f9ceba4dd8d1aedadcf5719beaf1ea95398634ba3cdae50ebe9e46928f4a2fd153d38ea9af1cf2e7b832c19712ec57dfb516507dd3b12ae1eb82035c1e3347ab97c7868142c68493756493fa571abe71c635b928935eb50cee1c25a9bd60e88258dc777dbd7f96e751f1bde620940d8659730a4734c77402b7664d5cf6d8c562d64284c637456dbccdef87b25e96c21f9962eeceafe99a9d6199cf846a3798fdd09997ee81cbac964ee68bb34b29d9dda00f251f7e2311bc1b6d4beec8bd4d3035a82285c2288a90a216a355e3d1064943649e5fc46011dd1ed2fb9289997afe982093619a6f72d4a6b6093e1303ee88c74721e4bc7ea6289f437cdbb9ed0a6cffa5d7d918368b986e070c3dccb55b1970457d189f9b59ab8e963e5e8337292d4c71445ca44241f9696d1ce3910804fe7df2dcf5854fb9116f96a1a8652c8a7f2c1ad07b07b1da41a21148bb9b24e8d59dd023e58470a188453c4cd9ca7022520ddc6c53f64a5ba9b3563a7d59ad317745a226f7f0d1af6f71a5e1816c71e12aef1e8a60eb67c4c6371a191a1199424cca295a9ecec99bebdd1d386e955fe0d4b4e7b853100f17e09d5e12c8ff569e67bb7d118759ebfcd8c1e954a6cc351c39393ace4d531b42e8aefcb533020169991231d525bcaffe20615d0adf79f258d7b3f7872e1c39d2ab3c616ce79ad8054f0c55241ce148437818aa8419231d72453dd1fc28790b724fa49dc41e43b838d83d8e6978da66038258008e72e3009ebaea2624af497309d9dfbe809a97a67ffe71e68da7550f12ce66e333a7196f5402dbfc35cf9c021b8150c91b535b76f3f6cf2925e2b5c7dc9318a34184bf1e84b06d8edf792f8a62845c0e4a47e5af5327353256a164b167a895b6617a503de6eaa46f1be6a736b4a5c81eab9a6c7c7e78855b44d9dd673f91307977545341926d8444480a44da1f7a38cc85d266e0b43896db4e8df8f87ca1994160090884d417eced5ceef498f3d86bc482e6787ba9fd9f95fa451a9e49ca51e72453802937b2e1817daab14b6140e1d12d4c2cb07567fcbf4d7deffb0ae80859ff3c3e07f7494e16671ff2c2eeb921c52fe21891ec58042bfbd247d6576da111a7b40d0d68d7a66abfc133b55912df8f85fe06985cf91dfec0c6cefdd646ab64b30abc9f402e39f246ca3b90f9b3c7791443967fc31c15bc38a256661125082ce326d61ba7b9ba49614cc584507cd974baefcdce6564a0332deff73db28129a79b28883878e738551107e255a719aa10f5a71bb8ed70d053c7a0f64ff47ce85239bd8965dde32e87720a5661756d2bb890e0485bd3ae22f4f030a9c76da63fe0d27146f16fb02109dd247a763c74359f0ec63dcfd7146eb747e15be6a7be46b30b1c7e91645926122674a722cd920d925999a9d2bc293627b5395143769c26e544e87eb076124d4bfed589f9a0b5cca4a7f52f16da6cb35e3956cf758d0848a6715ec8c3abed15026d40ba323940f85348c6c7759c5d7fd0c309ae46e75fe76042f2bc3884afb8972f87f3f11bd1815b39869c1ba5f4e35569786839c792c7149fcba176623566d29ab1dc29f3bf2d374f24eee794e2003af92a90b06a5ca67b5ccc7916e9aaff10ff1387b72d72f6edf6b450ec2a47a21311f9b4b0edcd468c43c53b7e6a233ce134512ebc742b9e59f8be7e7605f2df5fed2ed705e679cea3fac404eeaafd03b0345764aa821a40ba383d696be7749c5d35ea43519b789c06f316ccb7fa468f5562f688906442c8dc36d3997e51c14353e6022cc2b882e8296ea274808bb87ae9e62c307c65cbf30ddfb2453497d58075c2c4e6034dd8261032924750fcffcc5fdffade784907d7ef657978136ab2fa29ad20c9c83c3e348a408c5065911fe61e0c439a1d7ef058116934f6497d96dc661f8ba21fc255c021c7b52b6aeb0f1d2d219ae131ab0e0bd01967698b63b859c14b3252a7204da5cdab7bd2f78c6cb639f024c92465635a41d115ea6d042f3722d605e7be2e868909183525ca088719876ffb987afa2f0bc147026e1863c528562619ee551c64380ca2d8c315803a4098f3657d982397be8262f7d34ff4c05f45b6b0eef3d7c13fe542c851509e08b9fcbd9e48d1ec72c790cbdb9dac3fb8c7a57c8a9e2eb14ea840e309579b0d04096ae896ba2f3e45af7939dfa922b96d4b76da3c3b992cb72ed55c2a424f371e020fca507058ca189294a772db81e05f33a50282c689cecdf4c28df5e17bf6cee74be67ab96d7fe26cb1d3a0333145557a9db5e4257b1977bdf7fb41496b74758c94d2f7154d5bdd0e2c4a4c7581e600000000000000000000000000000000000000000007090e171b22
+flags = ValidSignature,ManySteps
+
+# tcId = 27
+# signature that takes 22 iteration(s)
+msg = 7d00000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 7b2fab305f92793314f5aea42c8544b5a0af4ceb7fe57f194c66778c320257377aee97acd7b9fba4c8fe18cb462792452d44c507f7840af2c6380d1a25254ab0874ff347626511b93723bf76abb608ebb0fc056b453473b1d2c6d7264f0f2712ead95ee34fd8f620925a36decbf3097ae92f04dc9981e1cb96da9fca9fcbb41b64fbb617a21b17b37661ec5bc538f00a1acc07aa667482daef1055dde874d59b14327dea97ad4f97fb1430972ac82360e9fa070c9b3ec2545037cce1dabe34c274c1894add81507268721c2769f19fe089178b400e55822981c2f8b9f51f96c48d83ac24ff55ed8f5a0645d122f1c17da2bc8da50cf1914d2900b1389ab9f1a00b6253a67bf907641ca5385b49a07ad3ea0b37e458e6caf5b4dacc7c74dcff22ba677f23ffb64e9c1e2edbee99e7c73207d3f288d2285a7c0e14c3b2ddfca88df6934acba9857083a131d50c88d8f8ee8d24304e5610dc53574b8d14198fa008435d33d03c42e377ae3c627190a1c6a1639ddd98ac90b6b6d0bf7a50672000e0d09898f21c705c9a5de142e9be15c0c0f9b06347f61a0ae9741aafce0c418ffc1908c8c20b68be48a6d5c8f5c0762932ab3e73a284ee039123c2b9406751ab6cac8c610b2aaafdfe539dfdc1e800269a0a1fbde3b5bb03cd938dd08160fb8f236724674d016a76d24832f4857bcaf7faa8daee394ea5d97cc12c6de62081050c0d0f46b10a456ddcd12e352f9fc5a9776087fc6d16341e0346eca5cfb3ded070e278146b987ffcc9d56396fa970d22a20491ebafc95ce00f5b6d8ead65868bcb6dd6f31bb2a9d85b7951f9ce8a8f7bd7da2753e54362c8981ee4714afdf398dc258f3f0e485db710f0393c60a301ab97d801c7f268385f5200e6bfbafaa69ccd87fc1eb0c29a2c6f73820d6b5f561ad3659e7b895a9ca7798422a673594ddbdcd17abab2afa6b7f5d5c0236b33b3b8e6129d9a40ed534bd158d436bc3279c769abb3bcf4ad5c4e864f2461915266ad45b7bdd91023a09e1b3b2700d8294472e1b4a40bb1a57844183f80dac369ef701a0bdf2290f3283a681dc432b396451f79853359ba9df78e8a6fe6a1ec4017405efc4a78199e3365854a1c94ae7affec9682d1451d1a219c9b9b17ee6726281c025479e2dd64f835ae15aa2da8c38f4f07b014b0e71e88a60b95999f77aaf33a64cf6bcb1bb93bb151b1762dcabd12201a5a1e7df878b0c1055c2c263bb10952648e1429839fd180c173c6270f7a0c43c7d1c0bcadf81c0400f1d8355b7d0983802878d36ca0dd0c251477c12cef09f764cb261e171c1d8052491e7dd0cbc3c2801a06d7cf6a67d55c3f9633a8a2d74a1bf49905d29c7f574d2a2039f41835dd6f7880f3dae8b60488580975d9b19d1c2d5b64f91f01b22caace58142ada05cf6bee8e6903362c18296195b1177b1aba590e9865d4df042a33930180fb4a99a7e0ec262a38f739c098e9b48f8a6033434bd506e68c46fa0a0e9dcf7562e27b48e450c71e33602200192fa91828ac40854f33ecfe8ebb0aae4ff1dc951c3ee248783650d9e4a56e7d913e5903abc845b970397d8ce6666f410505336e7b906ba63e77470900397451a8528ff8c376a70403a4300f80b5573921f29ff90728286022f6ea62f28e9b6884f1c6e9d07b3d20ac2b281596ba6a2730b9cf447cefcd72bbf8f95ec88d0565e711c286a8c269ae9ceb287ef6e6d00502a8a89c766a8c39d93c3bcb654a07acbf75c7ec12b8c1c494b55f9a41195d3fd5e19bb4d93cbc16ca4f05be0a86a9aa8994d12584be162cc4d71fa629186af1e3d3b74e5c905c8be923dda76b87071e84883da2585f2afa64f0955434a53f0c0cd63761291c88a4271656e3083982e9360e0b76e18f6fea30736cf97f59256b5739faf5e87c51bc76a8fd06b4a8563a11a3f2466249beb3eb8fb8fe8a3d0b9f06484f6fdbffd9aa7919188b626e8310f9d1c83392ead724185c62bd1b2ceab020cd305c4abf081bb3984cb50c1cdf7c59456c96f91016e9ad32c2d47c67218db359248da09fb14feeaf6bb343319633e7869d6103571bb5b587256eaf4551d5aa74860ff266f57e55f8c65a2ad87aa938b7f156f2022b62282a0cd4173dc090c5a74aa5702e50be4495258c509d22ed34d63622b62c0dfe1f53464325280281a95a2c273e17319dec4ccac46f31d953743e03bf22f40b0fff77409072dfe82876d9d45a11dc0f1d64010ef32d57eb60a5288b089ec9d02bfbfca6197eae336363bba37435e1e558178613807da640fddb0ef205d7c91ec186b397bfbfa10d588235013aab3ad21744a5957def19bb7bb7cd4f676b23c7bf87579ae2a5fc8c0cab31d72079a4d0cd69944564252f9603b508f5a83e19f09c704c574066617e8b6fabe690e85d92dcac354a435319a93cc2fdf3010c52e38d6799381e8cc861d69db0ca8defb5f8b1c017dda46ca9302d8cc1d3b1ede0c9dd63349bf6011050c968ca3f3011109314dc9655d1a30f198cc84bf12c812e90939d7f4075e32697dfd2cf6d17589494e775ca982952b61f8b99a84967a431deb64ef7ec9e882cc761c8bc66f7de4006eeb13f9b6ff2d92db458ffeef5b2cced63172c0f4764da145115b615cb6c0388b6e93aea63de74bff64fe40dbaac7769981bb9655de32a881ada616e96cdb74579a0065bce2da90b64a813d57abc8f6543310065cafbbea9512355cb3f058b35bcd357bde9f55fea564a6b14bb341c6c755d4dd5a72ac79d855fe50aff80d683530ee563249d0d65f64debcb24962c61ba05c5f811b9e0f4e5942797c24d2b08a4592d590cb871272f5c1228e9988955ca4f990ab2b138cbd33646772767d4f76e8725377818ff1cf03c01fe64bdf05e61a1798c0cf3b4b69b1df9f756ffea314fadd17a6c6ded6765d59b22e449ba8c78b1f8f7b717de8a4462b02d1bf22f24e821888946f309c7e60115049997f0a98e5f04613acb46b5e231da31c482c25e7eac53f09df009728675e07cc3b33a0b0c6e9199664a00c8236a3a9ec9d6d5aa2e9317da6efc75e03d95d4747d51767485c4ef9fd438b767265093bb8340119f94367b506796bbb6ef67dce782d879a3673c0e8415c6b55c4faa3556c7c823879ebec0694dd0783ab8f5a60ae10d1c3c42e309163bdadd31aea4869a673eaf797138e332df0579567ab7e0d1e72820de3e7068ac2ee207794ed41737dd698f3d9884bf3d8f37981406d856a4ad5a6862df70400fbfb719acbcb0fd6bdf6d7c4ab3aa10bc8d6d7452fb9546845ce1478ec9804b3fc0b64e2a292a2b1e244a3601fab84d082eae74f635aaab4b5c1e6c342a695f6804238887ace79dd8dc63c2266d259eafd2fd876517ed9fab048444a61da824c0c836977a82591e1f7a813b0898863c2566a3651c0570821ee974c4d031ea7df06264d1616d48bf6b2ba17be39cb363843b06c78d112c76cde5cd8495c52019359f4aabfbff771acbb91bf97a5acb1d46d2e721f78695b8a66a145c15bbbafc77e5070305b37e854eb16adec67495c35f44068ffd1ab55fcbced4c146055343dcd7bd366b604ef8775a9985a1bf0575482d162edad96ad645f186bd2bfb266c3b178f01729037d9b7ac8a77c518cb5f316c050edbeb0d90362e21d5dff7be1f8632ae42cd13f9d7071f0ee0ba5a1a50a77b05fe3f089f1ba56ff7746ef35ae7bfb16c2267118e203b75ac19b334200949f8db6dfea57e0599ebd3ab484bf5be07a1d1844aae9d63af81cfdfdf1fff686abd1093d27abdf2e92308ee6e3e15fe197e3a9bc6a9ca889e06cb73cf824363267d45095e8b71f84a9ca49c66ae58713edee540cc357a08a7b855efcbffd95f2b765fc9d7bfae809726c3632915a0af1cd1a01abc864a56539d5fbaa21f7a58f430164e81e65b90f453c15f83fb9236ca8f54fd2c7e50d0258e9a383444247301aa1b42c3215337098ed426bdfdcfb251b8ab08c35fb0570dd08ec68c1896a7ac95ba6da0437954fa029b03aae7c64de3ff3aeffe38ef8b208d9dffc62e32f44bb968518b9a0059cb2ea2e59b0c614b7787d0068ff7fb5bcf59ca605dedba63a34626261e7193e97e7e6c45f3956fb46c10e88a94b8c097cf2016f1c2f76a4db6568e038373a7f959c09ea1223c66a5fe011c241f206e03dcfa03964dca7bef53f1a442591706fceadafdc7fe0b1ce3a54a2e391e51555beb3a290c29bfd2d88f1bee4dce1c6357b4966fed12f61a8af8c90bdad34b8d9bb9d04df6c12b717ba937fff7875cd58ccb01c8573f4341fa3d3648cde127b6a9c4a7b09dfcf50f39bf44d1fd94f5da7d2fb1c2578b9c6ccf19b9920bc76d1b91513bd9088ec1e818898609ea9f5719e4b458b9ba28cd9dd43b0402774dba02f4e1e6e5c71b167caafadd9678932176710a41184ba19702e3c40663735a1811c56ea6817c99f20b5f9595855b46839cc64450acfc71cec14c5d56c2a799ac26569cf58a8d54b0f984828d379869cd8f5eda5d0867199c914402b016decf3e98a2e63948da228f29e6d52a9fad658997c1d3dae404179370ab68075e49868abb5d20fcd4641a83469bc20a288c93abb2ca105b6bcdfe0f122129303850e3f33f6189b2bc89dbe3ef000000000000000000000000000000000000000000000002090e171c20
+flags = ValidSignature,ManySteps
+
+# tcId = 28
+# signature that takes 23 iteration(s)
+msg = b900000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = c00dbc9431a2e5689d27b5a3f09c62fd6bf48550b9c6424db5c6027bc0b5cc8e9d29f05fb9d8f50a85d2c5d8b7a4f7f36813bddbf7caf8eff67a6c2e148890f9438a5ad85e6f4eaf6173f122dfd160a0ad5cbb091d08130677f196d22c8bb6793d174f71516d42bfdbb18fd9a371286d03ae41c7515adf78b0b9d0279538415f886a7818c6e09117ea092235cf18bcc834cc07de3a639c472d63cc2c42f6178a4c1fc61e5ec1fd5456851d586f37b59ffaf43e3887616136f8ae775063d5e24c137f63023d056ca2bdbc4f9e059a906fecffc72cbd6ff702f06429a66420bec5cf936c4d8f0e2f888c9b5bbe81644be03bfbbded0a1ac71b1e4c2c4df783d6d2621208f88c58dbcd947fb62ab972bc0865dd043528b9fa057c4e7a0f7cfcc2623d46745f4ef63b66aab5ae5999c625fb20da4f40d2112e53122707837501a0db379f262977c853083913030418cbb78a12bc6fb85857f401b7e9671eba59c1d11b55f83fcbcfad880c0d8492e03935341488bc7f1f77daac3972a028adcabc1b3f3ed7ac41a5caf911aaf8c76e0ea75c1f4ddd109a21e47c7a5fa2103dcb5e588c354d80feeb15c3495c9c0303f7d42e2a211dcb9b0600245b35448735877d6fe378b38aa279d81baa922b56693a2cfbde2efc23fdf80a78a8f50e9c587f2d63e29f0631633743664a83ad3a61ce12fcec36858714f399591229f7269023412b7cb3cebe64691d1c63a297859d10d12d221a43e37432da12c9c7965aa21bc82f7047ee6018095f0e832677d83f490b238f00e21251cbbad5a9aeddf11d4d4dcaeff0ff89caf1e8639ef0d26b31535c3fb73fb42a6c4c399882961a51ab5799109f58104abca73d8083c2a4b64ccbb9c1744b53d8c416bc902802abe8d7eb9a39405c91b61234ca7d35735e18e620067404d0226e7410f63c52a5ab4ae58281496d683b84e88055e970462b9d11b75688f8cb3dc47caa0ba1caa5106621bf59078ab30b113b4408d891e63eb7dd1db637607e6fe8b8b835b2205c5b17e7650a26ce59c3ba37a691a8efc35b847239fc7c60f61ffa06d3025855fd8e63f1cabff8d3f76f19ab3ebbae67786de70e9880887642259bc89d4bca52bd243b851b7e229ed4aa7170d24339d2e09ea779189921866a9bb773f09cf832b93c95b8846e2183f8e23b47a92d54af739dd9ff8cdcf13dd9fcf3eba396d3c76569b733aaa543051668cc436b2ff40a366284a0eae55246389268cab3d516b19e0d5184324fab0d0298872fff58af31cecbbf9b7abdc26509792483451da1cf5c53effb81b76b2cf28d0892de1cad6cd4ccf91496d64d31b9e8eea56cece8a99813ec49ff568c32763e3164b638ebae34852f8a827b781ba03f4d42297b5725c97f9a6e82668405f3b0c589ee7073121e07c7c39901e338685a5b1da04a127cc2301d4ca4685777ca9619f3cc3041a68c4d6034cf3d58dae42e61a65339885151f70c12eb9d32baf5d124bc9b47775b612e35965f99ac25b60bfa182b84188eafecf4e761b58be536d8c241a5df7cccf92bfb51a9f796521f6fa8ecaeb8574c28736d2e9a3e05aec22125b8ef6972cf5ea446737931e2b3c3c27dc3c84951fc60c89151082d222008a271888317c7fadcf621c115774038f21f89558111247a81f6f5e075577bca24d798cd66495e4f4eeb405488d0c39ca05e8d31619a5e65bb6b2d5b8e5683532e9475cbb65190a4abc6edf981a4de572ba400e6f200320cbcde65f64fe9cb8bb204faa9ed6cbd505b63aca60ade2ca9c79978bf0d971a8512c11e2f8bb9670984cdf29fc1a08c2e0f60cd4bd0630c0b3b34ab16f98e36e68a72841e34525bb5c7bdaae3c221e6d62c5b495166a9acd5fe878c766179c4ea5d88b3faeeb92bd0ff372de4f0b4f7e9002c097c2ff679c25467499b28912624de5252fa5d48014289e75a73b01021fe0f302e71342d525a53e754c4ae74c700bf187d004ca04c7bcbc956599976f70044fe70d22a0c82a3cc2a4aedb839f3c1a1d0ff61d815fd5cc74ff9c4eb40454ab6a53701913f176df2d57eec4457a98ed417c6e475d4fa068c6efcc2c6fa68bb80dc14d88d42d692e81e3b791955a2a4db7b9e0b2e959f4c4f04157ddf3f6b71f93e2768bbd25e807dd3a73f3db6641b373f1836782fa9da011c16cc5b6ffbd1fff811e23b1a3e0ab162c879369a13161010f5997ebe78fdb5754a34ec51fbadddd1f2afb927434175cb7060801c4ae80d4fbc8f9548381f6bd941e57bb617fa5d78ae28708e054a343b143dde9d5afafddb9181484cbf910d431dac96cf60670753ef1471db18911c4de0f14468376aebe23a37d7a661089e5487d9d3c5115a563f24267ae8fef4acd06105c7f2da0ef1691ae589105a45ca335c408e765395b2a3cfeeb3a3d6479780e38e7b52af3259cce9206f305e7842471c6ef555bf1d3fc6e0afe2b8ab769e2aae1b4b97339c273c051abf2b62ee283935f4253cfd1e855a2d549c3ed591838f423db0aa4ccdad5b14956e01e7afa729bc86a563030097bd6e446c990f83adfa5da4a2d71e42aac0256e8e48957f301a745733a5dcec0f761d7da4f5842c99016ae2d91eba8b29a9fc48ced59a08dcce4efa84acd21583442a24f444ee03c8611dcb108f1e9d8d6cb40330bc324831af3adb7585966f3312762d131ba54e45b2b695804196f3b1bd5a5a633429579cd18fc4dfbefd7c7c53873764d29c32938f25578ae0a7950c29934d9d878623640adfab823aea5b248348ed029d69a41f2762e3bb859fa62cbca757565e56759dd51501feda8f3be5468dea32f51d5503e9641e3bec3b755aa0fd6352a08254c1c95c5b65472717c486ed6e090ebaedd6eb4378e75bd71887f19bbca49ef148f913cbcd0725c5097cbd601e78a8746464e552c08127eeebaff5de1540b37b7b9dad95c74583eee8183504dc4d61d1b30d51e5a7d561173404d97b563693c17083bb3b055effcbf0b40e688ffb37f46d3a291ea0b54cef41f8f49464480b17f7017f7f6e9df2805f81fc056472e69cce7222b827b92c3fb1aef3bcaa6225d1e8c23e0cb173c2c2c936b43e89aa89886371119c3203b7cd3394e7bf29a0fbb64ae19d476f118dee4700a7ee400a73a07a8896a441614e3116f76cd58ae6e8b9bde7ec97ab8776e84c9dff4f41680fc306c026ee5caf39b58c3627477c19f3f39b3e35bd4695ca73d4080a80cda55be5d3dae4eeef8f24057f45b932fb6e58c965512d3bb07fdb87797ed007f675d0e89085d7eb93bda336692cfc211a289fc104a9fadca4b1de6db0e5868930ac571814e175cee5fa8db276ebfb1e51809584da93bfbdb0df3397ac9f4fe47ea2bc772c7de7006112cb218e5cbf402a923baedcfd9e4991a8cc03b860beffc9afdd8bf7265559c5af0f70c4372b1c24eb8d4126debb564780f7286aa17149697e7d9c327ca50babef283c6a991bcf8ac1fc83743a8ab4383cee0768c556c02194b1339f92bd1f1e4919585e74251ecb7defb768021156c7f096dabd1aee777774b5d2537957d1136bb457b7d37dbebd581a1b60c4402f25c273aebc1bcc9d2ac03fe3f93709932b5c95cec947316d8762f59784baa0039a33e8916e16ac727005ea0f1b6eec3601cad5b34bcd6e4c8f3b49fe0b98ae9e081e6d6aedc88dc3073e753a11d0c3a4b64fa0d4204446aeb877cad71f78b61442da7ac3fad1d8f581be0496ebeef0c4625c18f10427983675e57ab7a80e415217133352b5b3819c76d228f79047cea790440810040b878b2a54d18430c43c322f83150ed13ecf3349c158805ba0216b736554859f60d62c0ee8561597f52a51677beca0db358ce367da78bbfc6f1c3a9445c53fd91e0d698b26c7b8a2b4a201842f50e0d21e1539d90877fea7299fc08a831cfdecc45784febfbc462116a7bd12dcecf301a7da2a978f6527e57f1be5b52e833039d9bd00dcb87dcca99dc887ca0410646df7ab7671714e76fee5b78006ec1c7f53b7b5bacdfe0bbca426035067e7e00242a604c568707228ca6d5033c26a9b2dc6336124e329a98e78c1245ebc14efaa499183c7df43b916d47dafdf9126904c8b3559ade438b2062aafd600d3bfc3ee5f3123e50750faf9fe59571740d892371143706befe00ed39bcae1d7ae604a9bce4e889c4b0669e5fe1103ac5a4e615903a5c3d645144de577d4aa9d3a4e5abeebfdc96abfe5a07ff7d68aeab1b3e18c5a118d049e1e0213e2cf9da583d2b9f7108b972d467104599e557bb36a710d0beec84c13cecaaa0f511355ccd351da2192f450035d6df92b955b7e241755abe8ac2face7ca735bf4d034bcb289dd37e7336b382b0de8ab1a02b59ced9ac9f12a38be2a9d3215125ea5aca39b1b47db4756a402d2c5547819d0907cc3245a7ce5b3be4ae2ba86c62374337903c6d77986c496798789498b378227565d7b977b8eefe14351bfcf49d6eb15c3385e8f63cc9fd13eb69c37092781e8c2dc3845f744c1511c25a6ea363d7b3146b5602a07111980d9ab1ac4376d46fe5990e75bdce9de24b9af38bb6c65e6ddd410a1638b5eae14bc596110528a237a9fa7bf1838614e6e7f8ad3070a97cb010b2e30438a9bc1d0d1dfe9011517596cb1000000000000000000000000000000000000000005080d111d23
+flags = ValidSignature,ManySteps
+
+# tcId = 29
+# signature that takes 24 iteration(s)
+msg = 2606000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = bd1c81add57c6fc6aeae596d5e88a9a40a1f146e21b923909e3c90f10a77c0451e9af75db5309434860e43f437f04063d72c40363967069240efeb1d04aede6738b9b9024b8186041cc5916b8cb0098fb0dde884e093911e4069949d720ca2e9ed86d442ff7e07f985348b569206c6640a9d14d3d89d6529aaf4b51295a6384b3a6e63a046d3e89bff5079d58728780fe8050369a06b397beefb82a6ae7d9f6b5219f993d34655b578454f62fcdb8421b8bdcbdeb43139e4302c44d1ae23334dfe8b51df8feebc24a936bee7b4b647826994da416318abed7004abd7f8b446a32e8229e60f1007b1fed5795a8df27392e7a3a1cf8aae5184065ca28312fc38395f70b9ea8b8cfcf1015b6dd4ea1b2c17b22af14234bf102a06ebb70a35ce2c9d0c8afdae728c169609f61aa09afb14ee9911cf41e6632a031c9342f8448f4f78ab81ea49cb57d18d07feb70d18c16479a03d4cf00b2e5e885113a16a50594901c6daf75f49ff990893370950684a8625ca8e882be5488cff442ba82d9b3b978e6908edaaab70ef89bafcb1327b3ed7277bda85f1b39b70d5f3571d5619ceeecacf60e29a37d9043a3cf41e03a79b4747025fe3ded7ede991939edc8d6e1491ba27e22a493ae6ebc189828ae00a13730dc5653da364a79f0d3fc00c0c5fcdfc7107f235b9781d5ca972eff4dcde7d38c1f30fcbd3e51d79c356dea6694d2ac49ac46850e06b509e51f6816e404b3de241cd3f869c68618709373d54eef4f244288e13a0fe8331a09df7073c9668ce07e83cea9a20ab76083835157e8c75408694a5a012df1b1e1d08343bd06d81f6dec60b2590ad6ce34bb66bdf6ebf0e21b1f2c4acdd25b7b212cde6b2bf826c13216f8f62be455202096de344759a1e66863da69cb0268ded55de9f41e4d75dbc15c43eb7aca6b7f8479da0f25d3116b1bf28ff205f8d25129a01f22ac3976c80eeddcad9e963fbd60743e8976e2175055bd6ae589c3808d41e51e2077d7e2f9a5fcf1ae687d7170b96bbf8d1cb67d146480dd38d6b52f877622f489354e587a4610756246d647eb1dd002253027032180490924c8ee0317bb4d8d7c1ef415a0df37bcbe1201b4d9dbcbfde250a8a89a7695c280a4be8361520869b5d23aeb6e7df2737eb1f28812f5ffb9b1302d5b030182a008ed813d8232347342abeb3ae7f7172d8e85947899714d9a4af587a43bc29fe14d577c37a2606178d342aacd2e9a33e159aac81f29e6500f7f8e1027d3c60c63498bd2e391e4be4caaa6c715c20316eccaeeb2b0f1e0b66809de88890a0d14d251570e409de7b84a4ef7d2e5b489a7ae7378123203ee261c06380b44cd6e256568c990d86f6cdfa444c333ec851932f27be415d6be7d8c1e063a44b62786fc1449815072c111f5b98e8c7d4d994c68cd21d0f07099c7eab7432b7853ba55ae27cbcd48be775b9b5a9d407c939206bedc59708f1efa733ce1b7f3df559b4df5b1bf8c27f8860bd837184cca59480fc7605b9faa4f1680c3389687030b68e343fc56fce77255267ae53357fbefe4f122ec52ae2caa58eeaaebab6cf7dbac4cfce5c95bc7dac91517a85b14c560eb604e5fecafa596fd3e76bcdb83da6b5f239ba8cce4a9e14957a71306e7efdc048b9d949a8cba9877ea329c39ba2034da897e57d4d8f94efd4328b38bd27052b224c7366085a578524b6f42ae9a2d047519e0575b3cf6b10a4578850cb5008446bb32996940d25c7da5300d9561ae96e43ca17614cdbee350e55e4a07be349d5b181ccb3c806a2cc7c1ac165a3dbecbc6656beae26bcd37be4480dd88bbeca8cb2c1d12d4594376d1876f928dfd25559ed402fab01b0a3a3d7eed61a845a31d3f2cb8204b7641d875304dd0b9a84957914fbb3a1d7c15553855f8122dbfa5275b0bcc66e49741bf4f88c37e830f4488b24459076039776f1342e1a5fc0af17d81d96c939e1159ebe04791fd920dfd6eb7d8a74fbda316d70b4d327a5411fbd0e25edf7f9448dc275773c2f05e9ec8f16006c4c8ce51c6c3b9be2f3a78ccf90468154914716162df15f008e64720218a59e69478163473af62c08780390b21638c7c86ff5ed90ba003e9511651601ac7ca5f505686b3101e53c736a213bb56d86438b9707187429d48e3dcece259b4f87eca78cc9720b1139bf27f5deeb6614002e5932d44f2220f22058e5644157e334ffc348d25a2be6859e88b27d365c5a07f86fc0d74b68ffcff73480a14973b701eda3a0d16fb39b86c7d344a51f10d3e4d80fa4a240d66621a436b01e549dca7d6ff595967a41ef9892ee3a316113f5df6379c529aacc5e332f4e108a613c799102f962a9156c2b7d807ec4de42b315a9131338f2aa35f889e385a79db045c042d6b4199ce0d924a859bf182f8897c1aff76c4470077c732147df78ad688c38f39c41c525feac6cc92cb0e58cfdbd24f14ce7d799ab19a57ce7542abe78372143b39b014678b7d02855d7682f2d1cbaa063a5911de020500d7bd4b3e45eca31d992881a3b9d8044d51c4ad2b3db4589c3c6aca5c714d31310e3ecf91950ff12306e52302b05aea52c2253a6caaa21f1c7b0b4be41fc00e4f2b318246785157f77ccdeb1f8e85aac7b97d28db41a6eb5524047565c9975b155d2aca2b98d85fc9d1a4e269adca169d145fa138899a975e13183720ab912051bc9523be26176b910d98fc8e191dbc564ccb1a0767acf1c5f9a92e501f8098199360674727968165293f778f8f87335f4b9fddabf278f65f205179a43cc8fb60047bbc4b26beadab79b35b1f316283b595046aee055d68e7e86b5664fc8b32343f9b488b31aa0649433248e531fe5d570a531613a50c73fa6bd546c861542ef16be17f35ec4fe92d60905b6baa3a0645ac3ee67bc6bd5361def91a6a9786afae9dd11c49928873b7d8efae32772ff1c5b2c065bd9ac18baf76606889dd80ccab7c9f0d3eb773fca1d561d5fd0811faf01dfb1f8c1c13010d23f8c1f467ed5c5577ab6002234c295c622044a306299855588fe45a48e00fb15b314d646d80daaa01d918c7a5cc1c3eed27f12350b58c6fd715fae1c932280dcd1affebe0d09335ba3992bd3d1db2a4b215b123da1a68c75de8e187297c625db9a9a1533a4bfb1ee3c6acb69f2d8149189d35ba80077aba0a1474d164ceddae3e8092c423099a0ce048420b03cadf05e897b8fece53857f0d2fa126b3b9bd80e31cadfc4400546eed633e1d5f0e4759b918eb675849f86931541678aef583b9b2894c905d7a5a0951355d5ce741c61c146f2324a372b87168ea7b380164a9e36bb3e63c3982eafd6f68e122a1263e745fd11dcc623d41c4a1f191cbeec16b2bd23ad9ef5a6067a1065f21a59bbf76a47f35a6ef3601dd6dffa00a96381d037e969ab938a57f21d38979c79480099f621cf8951094bcf4052d9c6b0c45cf35a987f254400b7d43f9ef50677192a9ea867046e5efcc8706aa599f82cf59ac0a67fbe162cdaf2c988addc0d7f934b850cf5739bf65b7053d280a79ec3e7e5bc738c33a883e31484d0003f2dde5fa7e36889f544d126e2e081bffcb41ebef6185e73399a9a336ed07c119cda65fc115290f149802f9fd73a6528d8bb05f0b210fba11ccdfc814d16cd6add066a8ab72471cedb354a4f60ca209153e7b0b1d065f37bc756ad1100ae851c1c998bd36c649f8c5a44ca5958dbffdd88bd925653081e2cffceba6cd4142a4bea47cc8fcca2f5e46534494689d45ff296dfe2b1985896bd71caaedbbb7ec7ceaf6d540c2cbb8c2c37489a5932263ba0597c3ba25a6ab50a5a09af3b9cc6a2a2d4411dd0d3608fd163355cbfec4a6dfc1bc4106b44196a4591af1b6e3a75e7b1f3769ee924984781197b9c2730e9bb1750005a65cc74689e8712c2eb16875c5da03a8bb29852e77c08a16bc23d777c99f628c688a023ab8431db5f3d0f463d90e698e3430bf2be8d02fdc41035b5047c1bfd21c936ae69af73eb258c3907efa308c71d3f8d9ab0d40d45c3888256d9c3a04f26c83eb63a77f290f2b58c6dd4bddc346266f97e55d0f044e7344c37652b8b0fa492dd5445e84988ffb92249fbc69be049c825186a2973631d5dc4d10896983bde511c87e2850318963cb1e239a7eba4c06b6a2e9ee2bebf127f54c487fa3b28636a2ebfa0ebe042adef1fa17913692ec0d1647cfcaf6c90df6f9b141d8fe9cdd8949d80bd9ebb0712bf8dc1466c94c625c9a9736fe4ddf78aa6574de6b1724a7dfc5bdabb99dc22cc3deb93d537dd5d1b75eeeb4505c8f6ec102ba1e694858ae94a66eccdb977432aa02f1b3616141c8c77fe5512ce888262cf2a3f248db8cf5130196f73dfb90dc716b0e21da55ecaae1abd53968a6262a1759724d2e4ace335aca4421b38ba903f501adde8bacfd7e6cb254e15a1aebf1ebbd812176beeaab97f205f570f5c2e96f9327af9c17514b2e62ab07161ba674e46c1dd6d77c070114a90eba94a212e4eb5e6fa62084418afbc0febd8224210444953603af26d21ad0a5ab8812044dc9522cd42605556c501aba406089bedd703ed61fd3df829ec92d5137c4161286ccc43728d99b2b5d2f014161e273238535661a0f1277177a5b2f86d71acb3cbe1eaee4b78d61a6cc400000000000000000000000000000000081319212427
+flags = ValidSignature,ManySteps
+
+# tcId = 30
+# signature that takes 25 iteration(s)
+msg = 4301000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 5986c4549caa794e266a06862811cb2c44d93bb0ce32d7be8957b222eea8a487e8ea7ae835d09779ccfc38f48f7988f828b7b26db80d5e391c6e19ef4e190bec207775b5f0fa2d3872c8412a895d57c490c6da737df3c7f0bb2fd62a676f1a78389efbac474f277c4fa9b08f3dd0a82ed8876e3fd7a3b1614cbd5f0c51538621cf478c27ea39d6542bcb62338015a4098b7aeb69f0131cd15ad80e7e797bc327c8c20139992d49a66a63ab341a17c080db529df3c30aa8d76043cd781b3f6acfe97ec231db5f026a86d5a54bf0028a9c6b9452ee01dbf7ebbc910ea50f8e4480dd393466c8def5943ba822a67e7d5e20eb92243a84774e838924d7adf1e45c65cb85383c653c1864d51663621e3914b1985868f50c7fff42e04d57440d5aecfa221c477b7175ff182d461448e820dcf7b5f04c132a8194fcec3d4d02df24db406a8782aad71d7c27bf81e2cf4d11e23754c01b3dce63417e9d812fe5004c13c97ba3e4674b377c91e54c707f15f0ef9f131e8fc875d52b696fd46500088c3925da2ab487a6869cc8597ce2336f6e3ecc4fa42cce8c24f5783d52166046b19c661f3084601723196a65bcea4930a4814a99bf26c48f84bc810ab6829e82351641f21082b784b46e2115a08e32aaf4dbbdd6b9a5c72107f405c47d0cba1168f80e9842d4e47a0dfdd42e18d500e1bdd573fd4e4a7cc18f44953ea81d94bd1694bec08e67ae218074c1f179063587a65cffea71e385ffdee9a162fbb113d4247822e46f13ebb3462a394323684baf59bfa80cd0a1209759fd39f87a367c19995b92c7ef13216a39d0233ba66487c1ed46d5ffec611f427abda454f5be5e34465481898ecb4912c1a68067c4aaa33f525911d77e28e9d764bc1124a5b889fe928aa090f80e41807756541ecbeb620ab4d507ae30b17a684e2a18af0865f400904321a9f736fa476aa8c5f7edc4ce3d883c197fd38edc4ecfa26ddc86653f13fce2eba247df6cb818ece36df59ba220b7ae5cf6059eb23013a88ec4aad41d4264d2814921c9723fad5aa4393a646ebad0ea1dc277f6f131513bb77987c9275d9efee0f593f4126b490c1157c72d4de8676c748f8ed5b8778e5687e000569802c1273a52209d93b6de376621932e9743857017ef1af4f313a346c956b2a0169d4f3059a7ec5160f5485b8f00e67d04d36294e5f4514251c5001eb8da57398fd085d9564b959d4e2480b94b05bedd937a00fe713f1e894ed76ea0349b79ba0343db1761f23216ce929b20ff49cbb7cb2cf77d1ffd2675125e18270e081b18c86e811881695fc9df5f17842b1fae833dac14e1b10b32fa8e8d83789949aa0c23e46202453d6836511e4731dcfd1817aa02463ce1f175aa3c6955cdbe5c58d970dc0d58385bc27b2f33beb6eb638fc9d8fe285006436992d96948076b35a6dd50f97fddc72fe9342408841a5aab7893183d465694ce956fdea8f7539c4412d80f6726c2d726b23ee6efe01bd520ea514fb751aeac7767b42927ded102acb1cc985f6d371551306126678fd6cb64073683295cd6b84299c3ba36a7acc6810e4732389408919db59b2acf0f71178af017d114d9d543e72f74e0a6042155a34e9eb313106428d15f753f35547216e47500d3dab9877e0d8a8342606c4ab83e421c01389087f7763f7f5ff10c600c2308255701cfd04e63cfc435cd1bf1b24eb8bb8a6812d6b38b7fac21fb67b892e04bbecd2a8433c0d104e950771b2243595be35423833d46a6b28878cc16a033385e6bf6a94a4a6d1d5518d538fcb475af1d1c476401edd05dee0b014d5ce68d95a06c8a30c68d8d33419ab4843478708d938af757da39d45a7b77f79a8f8a2c944bc95779ab747d555094f1b04df45dfac56877377d5483b56ffb1ca69c4dfe07943b41a4d434a7ccfbcb64a374b61af0bb203800a10255b87c715a6366cb1b6b5582135e8703d64235cc714beecba43e4f31cc920c6bf59343d5e78e4235b9acfdd8ce49fb38ad74113a0feeb647f7179a33299b1a4bfa60af1e70ebb070dd07d33aa793e434c9d7aaae98f018e72b1ab8788644c4fef6b0028a39c30da55187e183413fc79ebe18a84561c15469e294900a74494e58339972508086dace548868594071467360f24efec75414ef502e5f389e4411150672b91f62984dda1b4760de4e738c23f95d9d6c56ebcb316e4ea71253368ac460e6a754faa69f2ece3a13c36dcbeaf142ba85cd506e30877baee307ffb945afdb387ed02399ff21aa9746d850c5637a937cbc6c3b03a27142b945c3da9839295a212d644833c0d85984cb5df2f7f139da90d66e6e73f51c9c3ec8ea590fefee063abf28bdcd2def788f25e40a7e25d01c11def224fb2a42b880f725e1cf2f8c08c8e6b3f80c90a6020ded9cffe0742f82d55040eabf0af6af911c336ad92f944480f46adbe8b5db18d6b34a3330bf2c50a2028f707d9bda1fad9ca620db5bf2037415e07d2d6b7c73bb0177f7a1bdfd349b87adbc736bfc7db2613eeaee51d08322f20a0e683af01aeb6c1d9dd9ccded7b9125b8458f052e7998ce4a62612b815f5fdcb8eff33a9c72d6e1b4fb35b01554d6bd287c43b8e4e8cc8465379b85f84176487fe89eb43b7c7042d7c9c1bc0f35c55236df89d0c186edd0cde61869489c0605946a936e90096e7f0614a74265adf8bbab764e968996ff759afb9603c359c195d7f725eb06701a49912401ad296d2240a6467a80a7fe2a440280eec32a300b2438b08f5152376c25550d0dd8e8237742af59c85020b4757afeb91aad5db9bdde9b7031445ef56956963cf27470cf5c914e267d29a70f7ad5b9c76d281e5a284db8a7d6a69b8bd626e47d6edbc7ca0bdb6df8192a230d8be6fb19193add1bd107d395dea7dad6f0901748a0d6ba6bdacfea046187f0b60a2f8b922059ae9565b6a20f99ad9b107c0a287e2d5c2358d7597ea4c029de58b4f13557df2012bd8f71a99d924947672866965ddd930abecfb5e5a4955f561ed9b7b00757fe8c3f219e7955d43f1676d544f678e3dd8f5ad9e36b3ff2b8ee15272924ac8255a53cb9a9e9202765746365181fe5ae49c96dd71f4c3967cc2a8bdb9a58f18ef1b8808e3ea44f076f4ad2dda7b2c78893960e844d3ff18aaf815286e5a5c04850848c3f25c0aa5f87fc0d62d286c0ce82f51c6e69ce0fabc3b862cefb8fa616cc46a1e34b3f893a4ae9b6d4de83c7419748c35df9841099ec8554aa5f7f310eddbde6cbbbf04f76336eb47fe161246ebab18bef7a9e3532c6a9ce0e2dc73579fd6cb1643f6f01c465ee4ba1d7256130b99e0e0f2a16d457d394d4e763ba36c918690ab354155d2fefda366cf756044942712cec0fb1d1941043dff020b16b39dfa77b064b9267de47f5d9fd5da780c173cbc729f17e44ec884a63b0eb3ac2208b725db57b6701391ee8d3bdc94f3a3664b5c6ecd2c166d037c0566473443345953646b9de89ced08dea5e800bc4aa1f8ad5f8aa6da89e9e93c2c31b1cb0ff0c9b7b4d5dc9259b65848949effdf6a1970326381c8ae4d039c372dc92baff73cdf14eeee4812524c85090cfe485ff6ac4e8bb5d96596adfa62138f27cca7befde57494c1166f002eb62d32b5705a7e9642ab4971bfa366f73dc268db53940ac5e1f34dc24b9a8996b527f15c69d9579b77b7b6663f2941f45448572aa5998b62c8f5d495176f6142c327217e1da4cff053c607673f14a912d9344bbf9ad5fa7e623ed769bbff53bf2b5a1c78f79e69fbf53fc99c6e171c90525803751b25ea6c9b7d496e8a7b294c3f2ff2455cd8715071238825ef6cf8684bf29bb490a1e3111fb305f3bc87357e7263e417cc7c10cb685077a1cf6f058b1108021f78a532d7c948a485ba35c50249c79add06a6cedb346792b4c02a480a2bc669954c24fb13fdf4cd6b5071b969677e5bef6e30b69e84b8a69c98de885d1d325526c58dfef5f72fccf7748ae8b024d915e14fa01c35e018b677a44babfd32b9555b749979e61bb4ef464f8010d1f8d457bd9ed6f956a6631ca7bc768b86be99fc5d2cff06d66013eb0b128f2245f6f284faed9b13a6c6e4a14c3e4a742967e598a06a119d84b5e3f8bcca18f28f64c9824967b6280cea61326ffa2b20790069e38265a337447eef2f739365559e96032d3e17349176963d9a05fcadeb86013c5869457a182f4a95f1bb5e4c64b640de8ddedaf516f7d80afc8a08d1bc5c50aed4e0fd32e2e3209958fd814abe06267b879035b05d251fab57c104b3fc4169d090b6830e2a64a221f67ecf08122f91d638d0a53bc211c654ef8162e625d75ed0a0764189312630ec3534d16a33d4e55f95fa5db64675b7ad8a06596faf5a8a47f8308b61cf16aefa2e6107cabd21524711ef971b77a1d4ba8ba1318d041aa7351324895ec6a45dcf5ecd14151d6b00ff611071cd686668ed28a0fb77f4dff6095aa72d7d99792aceedc33eedc40e30260fe127bceeab8a5c1e7edd27d0873fe1fa7017cbd9f3757fc5d92676d5f7e8ef5e85827be2ef8287d47403c68ef0c369ad5caed8bc88089f34f84e69f79309317eb49c2f34c74258c711181a425e93b5c5d7f308103a626d7cfa0f3d6b77a04bac00010819b2292e5f8794c500000000000000000000000000000000000000000a1116181d23
+flags = ValidSignature,ManySteps
+
+# tcId = 31
+# signature that takes 26 iteration(s)
+msg = 4801000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 3a274d893c34e200720af504ad6cd4b00d7a534b6af57ba65951cfa7025ffa7004d07669533fa01ddffbdd752b84d2b44273aad42294a90bde3252f0c755fca0d12d203522874612dba90d195d5ec83c8bc6630671d7ca2a0ca83c89385937c5d4b1a1392df9a378ba3288427ee327b1643421695aded6f1ce3fb11ad9b4cfc5cd0720c9b012eda021df8039bd2b8d5f4f6f78b7995b0479e515faa6539e2f36646f35b9227fb42e23c6d49f3bf32c4f0d509b6064d5489faee9b5409ca29d73fb0eabc62e23b1dfe784940f7ff0a9560d4d7d278d41c22cdf07be384aad9232a17a59f401f3b768403f5adfa4a3f9b1085f09962f2a9f0e590a2432140fbdf3a416b45c8a5b206671e8121cbdbbd89bb35bc8f900775cc7f9c636883e9a3bd1c3367354138dd98913642b934e6189d1ac221cdd7030833c5da24c70de3ee205b88ee357132417e35509624afd510b73255266b23b735c9292540e4eaef743c6f30d8844b044b527333d2cdf16b37d1f1b81637727b1e7376ddf58287d01da6d000371428cdf431995a7bd02ebd9d59f7d2a1cd33bc33026446f4a02132dcfe734d5f8f993946ea932f1a4648df1fe0d76db2f613b269d908ca87a12a3948d110b6bb2048a1780c8bbf6cc5d5385df362fba179ae42a10ff706a106722b41bc17c56d6eb10130d31b5bcb715fd6ddd7aacb536365c5f5c8b92f29f8f5d65c0c68f382a7df50111707628cae2ccf7913174ef53dec3d6ac7111c1bc40264d8e367c4f42ed57cffd874cd7a5c698fa405ae3121050e302da8ac890ff3aeaf5e388e95023d082e7ec4ce625fa3340c9410499c9e1709cb4058edb31ca1f723626290c8912897f73f8a475a3f06173202c154e33812135ac26adcaa585c72667e3c6f20ceb1ef978815d4907298d1821c7a5fd76489ad83c118b38a9cd9dba5989c5ea00623c964dbaf4b6f072b478fe1b13b8f1ebf4b938ea8b4bcfb868e8aa43211e73439ca50e06d3f5b2d9a2a638ac113ace0d1cfad0cdaea234921cb447be52427c9726f581af29c2046e9a4e60905910de2194a624df7f4285ef058b430d9803bcfa83be0b75836f317eb6ccb2bf32594a3ee2765390aed29070249d1a899fc5836187eb65685867efcd75e84948769d9794686afa30ca9500a636a9a90f12e2e09f2bb5b716a5d970efba2dd317f9e0d5819db99f0d041ccef8f5df8490ec13854eaed2f86232c10dd9b0914814bf4b68679d11d2feca8ad67a3863b73928ca8fc2e4c00adc5ab81ad699c12a592566e3e13b5f814e43be38e32d6973f68e7e5d0cc7479fa5e937c889da2de8763c1abf517aa5fe879159328477617980aca382dbe22831a8ef278591aa3e9e9e87beca16b873724d500b03cdf46eb3be3ade2a3698c1189d376fd79b62f3f491cbc925d04567b735d43f8f622e2e7520ca8b9345bb4e5163be6ccd63d01553a148581e1088eb666bedb6cb0d3cf65abe30100bc530fd1ab6aa111f3780aae419e564c64ce6253741fd9800b84add684500d3ca1becb03832b3471448c1bc0251a7e1ecc84928983863bd2e6ae09a5840e9b9cd74ce6b40e78cd5dfab8755bf36b6146732b599836fc2db9af2688cca570c70dd7c7fd4041b9a4c8ff98c7981b1d09dbd009243459864ff562abc1512f2f844713e3bf883b2710c3595e570bf77d180dc47df51d79d505ec4a9895059d5d3702a93f5433985e1b51078199743508a398b2ff73269d3a566b2dc64cd1421c5a7198d544079ab4906cb35c596739e5d7e1f9c212db2278a1dfd2d1c9628f5b59cecf15b6145779e9de4ce43bcb5cf880355365e192852fcc0c85d39db6c5052633428019a50ef7266ab9793f9e800f1455f1fd77e2f90fb13e84af7ca933a65a07740d6d11506f650755dd8bff8d34bcaca2c2764b23d749c116fb2f2688e5abce0ea28f79c6ee013b904b28698a17c8d012e821504963bbb6af7567b12bad96ecc3df7a69d22cfba305291e7b7bb6466bf179a77b8d2481917eb491ceef67cf84cd63b5bc87b26441108b03c8126813a4f545e23cfc0f285152cd5f2f77b93a000008c2ea142681ab1b9f7b076e61cae8e93bf7759a7f2bda2cfa86b9eba74b77b03b53f13f6fdd96681337616628e06a2bcddc4b4fa4ae12c0171063229f1eeea4f28e2fc26a43bcc7318edc608c99b898212c3b04bf85b33abca45749b87a76e2240b987a63a29d29f01c78fd91f3240d915adf41f2b5d80a848781dc060d0ffa737a0c6cfe5b453cdcb2a50a39d7ccd58565a3b6bdb2823cf9d7ec1a204546eea31a9db531b51214547d66e85e590a663f391b0bfd0c67a2271fa5fa6d419c659b76a7254468e80e78434b786b385c91c6f9fbdfae0b1155b87a708e922a0c82f1f0189e9d953deefce4f139cf6d0a8bfe67cb5f6cd44627750c79f54cd0e1272843b5d08dc1e192686ced88eb3617ade45516159b39c6aa65d197dd4758e3b290c17b9112c04c368ba01dced699d28de4d89395a49ee36e931cd3591d3db6f26fe300309ff6cc1d98e0d7f03f30a3b6b8832b77f31f951d89757f1d789b47a87715718f97089df9540beac7d7b05776e30451944bbe9de43bc7ec69ec984301a251e9adde7e83d5c9df050d063728c6f6bc2c76e8906eaa87ef040729cb00aed35830645c81d1a39a1e77bafa6d4f06b415e586c42b5aea4d8e6c6a2061ba0497f7c93a1df188b2d79abe9b7373d6f0f63bdef5edfe82b37a690fd51f0b044cd3192455979a768450f7679e86ea1756434fbe3fb8003f376d28e666fd4728378b316944cc7899b07a01449d53314532ca8fe04007f2c37a5807a53468a433d62aeb4c138ce3f9f33d3ed548e408e7ae0da25b5180a6773f0037422d7eeeb0b449733be27a6ea43f26d101b74fe47be2babbb8925df95e6de1498069be6d067f232443e11daf9b8ad0566c923f444fc7c6705a3fd8b77fbb2ab13b9a7492297d6a2274e4a3ba46efa965094dd4005b0d9a32510a6ac9c172f705c26dc81b702d47166bb8a930f16f19419dcba6ae187ef91d79fad465485aecf38a801b8866e51ea5ff1d93991c556de9d91867052b03ca4ae4552e6f0873f095209bf8bbcbc64dc90159b105be69d436b7095fea150d7fdeba96746178e6052105b11abe7795504b078eb8a647af1f5ad3d2186282ed2ae7886c40955b93448036412ca7dc49f2e562c5afe8694525711e7f6e49b2515e5a87c480479f514f4bae5119ac3dbcd730ab3c3f2f06d3fd81a0475bb1eafe456dbaea87d2cd880c96d34c348e4650cda3329f6a082cf8db220876cbc410d0afc945b0c059a3cdd28e094fb7de858a3aa75fe3f344fb018a121b26d14b970167ddeb9d1eb3ee53e32f14611c05d6641beaef94921315ca760135961f182d1747ab5f66933945e1147ba4e2dddce4bc0329f22ac00ada5d4d311125831a98561d21331e578ed42d0b894597be1172e7261decbe9ffe0a4420e2a031ad2143524c3ff272eff4646acc7eb60048e99c733c0bb7a0fc957995c8e6656183f0e0e1ae552dcd5fa7c8df4c9ec37180a6f4cac16366639fbe2395257629aba0715ac791be689d8560779014b8348d271aaa91073e5f1fd2bb0be908bb68991dd59443d23dec0dfab6e0b7cc659bc73dcab4f708c48aa53b8433e787f80cc8803eb18d6647fa629dee201e64e04be60d32f5dccaace5e1e2fe6742aa695c06d9839eb30121cf5f145bed70e3f191f26abcee01a6d3de849634a4466bdc57dac8e766b9fa66c57b8412df00d34f586fa9c3322a8847bbc0cdcdbc6eba26a3d88589474bd928aca477fb6a766fe375e224ee54d17297146593adb3677c7713342f05059c53154b67f97a4cb949f5911ea2dbe43adbccfd151ce69061693d51aa86f651d981f8a1221b8faf9fbb9dd923ab5fcb7ccc625a2984d59a644c50cfaebecfe76193f69b4e1b410a607418cf09e268fc4529cc8b809bddf0c594f25248d09cc3547aa87d08b330d4f783bdb17e238a17a481fcc1e1a38676ed2c8849ec96226bc24e085b66fcd15fe0b5923690e80a4cd198ac10c8c07af0688d77ce0125916fec05aacf2e792c73fd887ce36b007a650d4033cd1e3ddc5c74c2f9b68502c307790184ad1b7dd2ae3009b155f95253a480f832435e8472289ea454d3762c6551b07335137872c2feb4b824211b60cdbd077783fa8ee0eb49d506a37d77c4606c42d27d6c477d20d4ed89249ad3455d4fdf53fd4122a82e5114cf246dbff360e4427704a7569c26bb477c82731ed984a52e3368f7aab7df25a32c1932f4981a27d4e82e0b61830b238e97e7e601abed437de4a9a009148e865cfbc75a96b14315b1accfd252e1d661cab2818008e1841a5773fbca270756ccd2166318c553aacf82af9504134de4f3cde8992c14c0fada09364993e7de7fe42f8b54996ecff54e722b25fd51df037d4d3493ded04f6507c1aff93016a49e1e0a6e0da42cb4630a79c5aeaa61ee291ecdba09e1fe36a4039fa456781dafa4defa0ec2bb0b195cc0fbff9054fe4442404d111a7a8fe75f61523dc720347fa80816d1280a03c9415234996d4f41267688892b5031a1e344ad3245086bacbdadcf007185c6d95d9dddf94b900000000000000000000000000000000000000060c121a2224
+flags = ValidSignature,ManySteps
+
+# tcId = 32
+# signature that takes 27 iteration(s)
+msg = c302000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 2281ce37d3d0d0894dde142b097455d69e4ac08e358f921dd86fe71a294db8b2732912b1de60cecefc89483393815556dcccdb912938f8469aaa536861d8c3d315b8efa1204e9c7022dc44490ae1fd7e2e9d640b6d0ae8a3a3c01d6a5d0594a52229c8a7028c763f688d3f72e3af83d25a01cfd3b6a7fc31e34dfbba78ff78effec007555ebf96b4d9b14eefd1bd19c66360bcb1e5a77092f36e2d749eece8c89050003630fd0c558bcdea939a53e61ce80ee98842cdd8afbd8840356817731fef575cae80b3eb8678d9884ecc66846c625d1f2d617d51f1fc77fe8bffd994a483689f9f5f05132706308448a3342718d487604e5006d46058fd1fe9302410171f93c3293737e8db35aa27bc901cca074ce2e19c4dce9d029c36553cf92a1500612b7badea5cc4e20389eb01b854dd547850976df5e6d9f74a30c7ed51b2debf80e9e379cf2645d6afce7757c449ed673e12780e2cbec4aaf1732e093b255ebf8103bd41be041df5f0a18f13c8f14097e8f998dffeb55269d2c7f882588e942eba0da32a3a5a193f7d18921ea5c82d7751dd939a448c891fe500efa06632faa47309a8734fa2f700659b9db7037320c7c00ac9b68f1f7de71457289e9b8290d6a203c48c21437aef6adde8ab2cc43170e65f1704aff58af037d422d1519bb756beb6f3f4c0ec653865a354658f305a495d34f183b5e17bac2ad98bf5246b440dc86758aa047f02aed76fa5f27935b3bff953871cd3de843688b13514aedee789bc8ed44eacc66d5b8d6afb80890fbef7c6bd87efe597868eeff71b92820f353ef580ab5e57faf63a762581ef91f864c99dc34d7c2c8dce0ec103a61a443e0c6d78cb03788974ba6a2a261b31ba71f3db05c2c39fc8634fdcae6498c46fa37bca4072e1a0b2c67c01a30b89b944e6a7d2298504b1adf2a5cf00d02efb14b2dbdd1839c935a3620e1ab8dc1c2be6fd05a79af94943ef98b64a8c86e47e3903dc84b7ae6e84caa9b79f2996a015ce6a4e3d7274d43fa71526fdc4d9d9d364d05a2f7f732cbffc9f80a4e5268f9eb57206d380cdaf39b2d64a54295dd31a11ef2f2f4828f57ba6af8ab69271060e25a1d987231d6692bcd82247727a211804879219cc981c1ff6cde51bc630b698e767107fdea768ccd0efa2c1e307bcc32a6ae0483f94a0cabe09e01e2edcfd08445870150f2980d23bad7b5187b0a3eef6e6be018a09b67a1cea314e588c0c41ceaf53206859f1712bde6f2e8e7d30209225de2de928e4d42c34344388feea70b1da1da7b0951e0ca7acb239cf95510dbe0c3ac01187661f2ee604f86db26abaf8113358ec1fa976bfdc0917a28837f63a1d87b95bbffd2266fbd2c50cb6b568782049627731865c43d9a5b6f637927044a49bd7c99efebcc7a65e773aa8e846f4c793d4e9c193ecad8701e6cccb7045b81b3788f23b1b523286f2e6e4c570f2b6c99bbf14d5a79a0faa9ee55c60c4e23e06e8eefef6706babc9a2d0dd3b81c2c8056227d798c8a55de8a49af91f9bfcdeb8683a31e576ced44da0efe91d20f4d15b1c14cf148914b6ea366f676a97f60680e3fbecb29e34573da9d100aa525760eefbc96f9864ab360623ec1f41ac55750af455c0f24d463c2f8b249d49ee2fdaaa7f5c54c9650cf1e94de0e56f04ed2e1b0a02488a3d608f31e67919481d53ceacef129e92b3dd56b199ce2b7df00abc793d2ee82694490ed97df05365c6205e3c502ed9b8f712a9862eea823514fdf9d7b2fe4bdb9754f1675c5b453a4c2ca893d584a014615309d346823169f732fb4ca1c1cd84ac527ac560c9fef1a207c9f35a9f898a06601a5b910971a3319f6c29d0b39df7ffe09ef464a9dd924b86b641a0b66432aa964c94b608c8681667df08027ade6b013173956a73a6787c95a13fc753a7d4b2fc91206c864be82382cc1a1d4e4c87e0d1d9a113bbc39f377d3de28f63df010df89af0cc3ecf30546f2435adf22fa43166dc24f01f441d7d97c235c5dece7108e3601f878b1c46c2ffe75363bebcd293caef5c4b0eb88d88c1f340dc8ca4cbe5552d9136ca1e3d5d809cdec4c4150b86e75f02d0189565ed27b41efb8ba982256bb38ddd04e61b3b77405fc5e5cad0b0ad58a009b68cd7014fa45ce704b3fb295d2f52953871a6ee94fefa1967030f2ee1d031f826ea9102d1701136aa5c81641e2a6afef50624785c8c2467e76f0f903be8bbe2656fb92691cde368c3f9a6fa870f50d977b8b5592922a49c0ae14d82fea5af9b2f7176898869feecdc76b6efb0472a0c24c0e9a2a2970d74d8f9dd1568ddb1a9c7a835e33332236e5065d72bf4522d4b18c7b3d14295a5986928d7f74ca8b63dd79f6fd464c5e0cbd98ccddb1318eb9738f32ed2f1c3b4e929e145accf8502b8a4f3b8f20afec1fe4cef9438ddcfa55a505dbccac90914531f82d2aff47976b8ee1e20f127478447896b3fd2c1a35be09ca69ee75f9958e569b3f4951149d32de2918fbbd3d2b5896f50961d35fddf0517f597c8273fde3712c6127d35d640ea580802ab2b5709399df4ba0e2f2a5a06013dc6779373672febf0381a25cd2924ebb597b03a1fa0f22ac14d77a524c7ab5fea1ccfdc1d55f37252121dbb050555508f9d9fdf0ec12153a48b12f67b6c95ad844a199a623dbae872bd052ab47289a3b6ee103aaed7755accf08a38618ef4d4669ca931d0e14bb8e9ce77e54cb61ed64aba5300105a85cd303bcfeaf167663aceb81eba106ea896094060945906bf4dbe038826e1ad58d1ed44796fcc7a464faddf16a588626f658fe21a526988e78eb129dd0bb4b645b2cf85af83722b4385f535155a1a61af0e6cd5d009f37621b3393b67fd29a171204848cd66797dbd3e43c088c473c26f124f7359e09c75e55bac5b43a19542309acc4b0ccf961cec404635799ca8516b11c5ff7a6348dbf0742a1267abcc48235bb95835047c74cdb1d378351f283e07f48945c7807fb7820564ac2c207f3ecc66ba24188dfb22801dda9b75b308593ab2f96e86c4af563a2c355f7e153901529e580edd95b7ac8ab3e1211519f99a91dbec7873b23b18e776a2904af31fff2e8e100b13e777e5b17f8b35903f9c9558499a1f96a8b8c9f1ac5cfa676a194d86ccbf94eb02368b781c301ad6560210bb28b5173da3a447e8a850279e0b65c828dce1c8e7712973f8a08c4159a9e15364be3d2147896b1a1ae214826df8643b4e573f2af8e6302c2551989ec1c8943be72abd2be35c4ee70fcb99baba7ed4ba46016f24d490acd4bc987c2c434b1dbd8b39ad1dd2004fc7a174ea59fa2f2db6bccbfde2d208e6964b128773eb6eb6d1045df96035c250d56381d451c52503b1f66934d87d449179979e4dd50c6274c1bbfac72161627b288029c5eb70997caf11ad6fc3d46814b08aebe28f40dfb9cc85f4056821d9e159ec9c4dcb586fd8c0d8881566669a8a961e7b40e4b83d068fb80c270f42dcbca2df7bd6ce6890e9024de7bde7603432253c14a0d057ad528ca4f548012dafed4b3174d851e4d2e5c6c168c2417003755bc5a8a445f3d38659c715ab6ab977f1cd13fc9c6f39dd2070b1cee3124ffbfcdb98205a1a2b88ae3fb9f245579bcde9143960f0b897a478bdac9a481f1c53c678c64a84b0fa3240177894de0c4ccbc089f14bee70f762e2480ea9438cea2788e134f0ab1080e34f22a4fb2ddc9e7da057bf0c5614a175022f06b5d126938d97d98fec87c0a917e455b78f314ee56de3251692cc3c2d9b243aa149171a62bc7035e90044dfa0a190773fbd4b00fa7e24447dd5d5722369a74326f29d48c589a4f16c92dec9da8586b1d4af66c4bc0da57e2aae07d00f9c35f031be8256b2beda0bbf06fb22f3da317b4cf22d81e88c050de9a31de6da3ddac483c49c8bca2fe25b6eb87649e107dab2c9b061885ab2a4e62debaf453b683665e7c2e8f3fd5d22b1d4b780cdff2a26b31792f646968e726b9f4708418a60f3f57f9551b9cc7cc68bec0866a294edb9978375241345cbb6bf577268a906002f9600b7e845d36ffae2c7de9d018939006302edad2fa860a4f25cb4a90308d57572284f97a7050b8750b2e02c2f8a9ad5377909ad117082570c9a5da5f512503d78c60621d41964bd12f86c89ed9c74f586b50dacdc4e52b039ed6be06c568782d9049bbe992cc867894dda3f3cb593ee9fa376a3121005b562ce8c7940d4d48960bbd95f77299636e4f1bfa4ac40bab82bc4971778faa924b6039008169efaeeb1ce29d9e44813f22d44b18485ee0a216382d0c83b1b59e34b2dceb294f9ca6cc848e018c89291525be0920f827033b5d9857c3b12b6c6e65627c132c1dc2a5da893860f5ccdf9aa2dc2ce09c45d7d1d4ed55c130bf5400ab60683ed1de5db819d42a199788dadc80e328324f6852c6021eaebbda57e276650c4d06ab792ace94f5cb32b92c40ff5403efed4b94e008ba6dae1141ad079791a3570bfc4f6770fab3fa3d04836ff06ff4ca8127c68090c36810610d960d356568cec1e66ffedc01eaf875a49baa5e5be0ec01ef1849704cb09877a2a80c100ebe7a790545e268af2f1d70b1c22375996aeb4b6b9bc325e6f7ff5ff4d6166758b8f9a6378afe0ffd8063e3f505ab7edee00000000000000000000000000000000000b11181d1e26
+flags = ValidSignature,ManySteps
+
+# tcId = 33
+# signature that takes 28 iteration(s)
+msg = 8f07000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 17d5c276a96ec04caa598377bb8110226ddf85feb0dac0f0d3a4bd5ca33fb40d8cd5d752d889fefa66c900bf6e909ac906516c9e813875e758663c7fd2636ad3fc89ccb7757c0eb799010367afa46a17e113b16d546a8f8ecbae132efc625e3bc6054e3c900a174b6d47b3965b3178d3b72b0472f37d172ad579de128e19575fafe7ea64ea116b63fbfb4d5b5fc956bfcb6928b8db0cc7c5a889285237fa7057b3423cc7f7b950f834f7e4a7b168ad00e841ee13d382462df9d5fdde517e759d16e48963f60f117502b74e97f680bcb4ae2c35af009d9bbdacb794edb131715470153a0eead1cfeac73f8c8cd157cccbb17cd1386f65c4fe09097567794e2d7e7eb3c358bd8b2375f8f9d0f32d28bf863599939ff8fab29401d6acadb1b90f2bf1d9bc26221c67e78472c7ca78efb2b4ea49dee8489c01abe9ee962277c34805c024de06414c4ed63370ec5090752a6fd19cc36a50d3f714ad58ee060bf67b6f4f988c35d5cb1155f702311eadc7fe25ec25adf929033679f5d0058a45dcb58e8b4079b374226e26003e5bc5f76eeea6fef86af3ae91f33c8c359e2a297a69a105817c7e67a6a00a4d8aa31fc848d8c4f274b3b5ea34a2817b515a2050ce80bcb0c21bdb81f0515ee05633d94feea1de19534ef33da85e5af0d4fb0e81e4088a981392f96f70dcfdf0d0b9d308c26120e8342f8b6107cd0bf3553554e4deff879ce152425e4eee9860025dc4ba9bb090971903a0db863c043dca4e8fe35e9a6b0bc26129e18b94935fe816fffca11357af56ac6c837f0af36da11e4b43f74a0ff2ed62f18fd5c02c7a064e649031c2d8f22d6dc1a1b94f39d3065447abfd9714462e137bb92b720091477ee1c1c1666f4b92d6a8b61c70d49200c86e8cd9de65b209a262cd0c6e6774810daa62b16054d6e18955e4a92d3015ffffc7584bd5829c040ace9011d5056bc914960ed785b2225aba0eb56346aec0d7bdb1a3c73d1e39c2a395fc874cc56648951a98549a04eb71d30e38a90d7e545fe92c82a7663b10f761eaa01e96edcb799fda895f9fe14c3d0ae4922f34a89908cbe60c107bf9d8055e050d08cdeaefdeca1688a7b26e2ba558650e90b24306e575d046e1f3ee2d9c3cf159bb20d711d26c92c11735a50f40184c97a2dacd02a1acc4abe4ca286e4c599b4d4b5674eac6cdd4e472559d59a13dde5d4feef9bc47d76875790c8036dc29448516be1cd56504e97acbee7cdc5273ed3700aa7f459e1c25efdec86402f181664e764866d8eba3adf852b83cf135ded54d0eca77527870650da0f2851bb4906320808d302feb7e0f9db7b8cac98a62a0cc7cb97e7f8a7ffbfc38a477a201719d70172e59e8ea89c482e61633f9a0a3cf672f6217479958aebeee3e6f06ee8ab9f5e9d0523272c5164f1f94a3711b3e681ed03c177a692819ee56da4059ceb171af119c3976b197f005fe8622e1b4415f358fb34a73215bfbaa53886ad84ff57ccf42b7d57847a26234235ba0b722b89f9963446d67dc719bf8de49f4dedd4c516dbc1e1d74bfdedd36479694a9acee7dcaa7df55f978d38da1d183bc9c0cfb049c9f7da0821be315b6118d3387734922723ba4919fb703cc2446bd4cf30c1825a8bbe7daf08219ac5c1a3f897cfd7f66e77de3d0a0b7b73f1166d770b9f7c0c6d41320994aeb526b6ddd4afa6dd10295dbbc5082dcd35e43ba91dc972f78665043228a14d75cb666e503158bfd4c668a29d358a5b2e03fa1cf5bf15aff4890813e52a2358ac79174273074c118b63cbd1ed85c8c3e9cc7ff5c1c9bc92b848bde3a7bbb74447d430490b6bcb86158120479a02b7ac3ca61a07d76dce2942b1fc09bb33972695c0172a66dd4fbabe80e333dca17aa5806eaad072f4b17300135ac118f943dbe9041d4701b424d1f88b27b8eec8308a5bd153f7949137deee238c833c57bfc12b87bbafac73e1505d0e92e873d53772f29c7c3a2e6ba4e11f825d631a9d1caa3e3f8985ced7f49235bb907c2074fc368b77bc90b6d1e4cb987088518e054f767127361d2faf1d5feb35cf9210a92a4e3ef144bcd45dff7e2c2757d472d1255549db29fdba7616f9f9c0c472c0f4349588f94e77f8f0cab52a50029b93c3f08473f512a27c319d45e9d6b52cfada0adf2dbba6db96b326c3594f16880913cc6c1b3be8f4953d95ae5096f03a4a1224135e2bfd4b5b429fe564405dbc2ddf004f36bf633e977887915a44105ad2652fc17c398fa2e7c0eba0f69fd98baccd64875dbd5f2fc660af49a5b50dc831f41890872722d7cdb906879e03ebcdd321a0e81478276733bc121016df6c9a3d1a574a9dcf6ca489f4c82058ed0002c367c92cf87712348b7c774baacf10c778db313dc5c83b3e0120ee369780827532a52431faf43b03585dccfe97ab204c33fb2b98c9531c95f6be5ec435b0a8aebd7ff4310bfa221be76283e7534679917199f616e0e05a49b382cd26a4baf0cb0e1053fc24bba4dfd2636680f750c9c69fb34481ba0f62d106937ae7959604ad554fb2ffe53fdb926ef5a589cc21e5adaaa7ceff3e2a8ea8606eeaa79a05c6d9fe2cc674eeeae2a13cc716720472b0459e8fba3f0d77d60ff3e48f08479deaa1c098547da855b59fa12338baab82ea960184b72da4adeda15666610164743db8701f2b6da9dedeb2a147cd1e4fa5125e8f72ef40f14c88f73fffedfb6ee327c8e20708dbc0e4eb8b7c969b11ef8ed3b63c55027773b228f08c3dcd2a24feb716bcef64b5d2d34302ad721f6cc236c6694756990addcbc0d6d35a6e9a9445de640ce02ce9f2b081f09774ae09fda994fdea5c63b7aaa37db7268c56e11898856e94768e47c18272285050a1c182979a63a573c17b747c5393b8ab21dd17849a00889c11bfe28c60d1d604fd716202949adf2bf49db903841f4ab64bbd7af3de775f66f219e40a6a61f5c2eef5377a196ad8c7837b4211b531aed7c9969125994d6ede189f872f24dde4b92eb13f027646ede13d35d02c58f5cc094ba76873c817367805e2169011760e22b8dcaa5755180cd99c7e8318ff61bcb7efd3ce0303ba669419937e0e41bb4bfa960d773a5b73282919dc9d70b3427942078e7bf1706a67ba52f047c8795437d28bdef9e78e95b3ed9545177db31920d138454238759cd45e7cdb9c4d6bbab70654e2a65e1056c2ed98d9c601e13a356ffd254231c867b81b0f9ade2affe15ee88744629eb79a5cdc5ee4e485d663bc72cc1faaa61c651cdd2e9632019a747d1b342b1f493a1395b82854f888393f4f75907b2af70defc62e5087f1f4899d30f4a97581f009caf78a29b20cf38eddc1cd80066b1727880bc936be866ee4a14c994790cffdc7dfd977d9af1c3dd23d5371b8dc6c2a3b043e8f92ac954e7839e1b1934ab04b5f51e8c650bdb4357c2309b657ab2b968430b903c363532c8ce386ea00ea8f8cf9614884ad42098a01a4c054853149a5013664f5bc69c3bf9c237eafb9e97629af355855936f56d0d943333dbfd401a89a8d3b0f6ee8a5c7916d887c73088c481ed8963c54517040846fbba24191a1ed20c09f2cb2a0032e1a68e4a922c2e1bfa51ab6e7326490953b7a5a1197597c7adbeed7b43d6329c9969bad56140b6fe5819e5915ebed1ebe120970639467ccb2c7dc5c290ad0693aeb6ba1a27a416b3e21801ee1f239cf179a9258e9c527b5e52103e7ed22f67789a030530a536d90cd8b6e08f389921779ab97fdb4129d07a3792e4e1a64528131c38463e6d576d554f87207406e1587d6cd30caa6a0de6a7f0254e334054cb9f39430ae1b2faf0641908c09f3ec50ed1ca74f3655457c96b1e29287ee075c219c82c9fd2ecfa53117c97fb46f8398dfd351cf035da70345999dd6b0ce4569ad448f6475f343433848e8bf886b45cf4166b63e1347a60a66e05d76b6489c4c1eb621e50ca52f1cc75a9f9304b6d546240b28c986883e2a0be4113f8d615b522ccc40569978572264d277636e82428af59ceb8c2b175b4d3dfb053cda248ee5ab5e44b51d6865271c9aeee589e2b2b68e16f91be8dea83a5144b24f5b410e48877ac7f1a734b45c5934589d2f5d5acab37638fe9a5c52004958be19b731c5d98a3339df150a80e2c6ae6ab1e6669065e9eab2d2b1b4e29edaa919ed1b1462f02b7da4e651fca499f6c114434e1775afd9d1c44c55ddfd5f7936687a8cd6fd2ae67daf6160749d146c5fd1eb7d73f9cbe8ba3d4f50f98da9e221d2d5284c8c258d12966f6faa422c3872021d71018839557d80c7d7bad4929af61bc195b34800c7a3a18a9935cbe648a383f4872e796b87b462fd585d14e8ff432777c798a431b56714e5ea4a44b1f049435d2e80e2d7e378c97f8c289449919eec2cc8f535fccd6f53379acd16b55db0bf7f4f42ddd3228430c3aa89d632e9fd76a9d71512537b3984f56b11618fbee1a79a5aec4256c4bd2d7b0fdbeba2263934dcb4319c850776fcbb0b9e1ddd9da387241b0d7a54eb16147d0be86ac55c35a5a2222827339f73ead716ade758ff346d3f981fc5e90bf2aae42cfdd059ee634467d09214239119ab494c0db85111333507996c4cee61423264662b6e2195a666f71c62d8c9b9fc7ecf6020858eb4998b3c2f000000000000000000000000000000000000910161d2126
+flags = ValidSignature,ManySteps
+
+# tcId = 34
+# signature that takes 29 iteration(s)
+msg = 2001000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = d3ecc39ab0177953c2e5afefd2a75e55e7795e49c87a44706b7b4964bb9f9255f4b24b92e7401e86f5b79be5dfe9280112599526d7421d52c9d9d49626042b94ee4f2ad3295f4767936029b153c5859ad6c119b9f35504ec3fd0e002cdd67764aadec5e38b11d79d458cd290ede3372a41c7434f285fc4ee45599c02c85fa99b5e0b96fca57f07a494c621530be5ed69598c2adf48230caa2129c470052c9047ea0a622b15efa8c9cc5b1e8c6970b99fdd7281273dba1399a319428f79969fc0cf07785f22c6eda6e768ac8230e440c8bb05606a9cabebfd264d1316ffeb9d9574103a70ab3cae8f22e04c3bf97b5bd293ac496eebf9787269e430f4be6a7591ae1fae037f76b14af90046e6ee0edbd2314fa16ac3eb69d69d803492cb5769ec93fc197d2302fdd46391a724dd51c59229246deab0809ba4f1999c0fa2c85e462c4c26138a4a9f299bb25eca43657a7afe4a1e420faf756e3bfb77900da25bcc183bbef7413ead287cc539f03de4f56c2ffbef8312b5909b87977f16dc0e65245d4d1069e46bb7614034ad73acfcafd64226b692dcc03e695bbc78ece5b1a5926a346fe5e8aeb81a3841cfbe010c69c9b06a0b5b81f772f8ee7248572279d37e325e17e81ae2479de6702df4d4c376be417c859921c7bef00f9b22bf1c3f56c36ff9475eff8462102f79c75478697838b384b1c57f842780a9be46d3c4e6f7c38da187945d283049d8c0278f3237660e612f50eb73b389580f740f05382a732b94bc7f3189d6cfd2de2c6fdc6d7d57de3b897df45c44ec7ecf1d4cec370d87f4cde4ff470ec42df2ae0db86f172b146bfcc00b34d4672cd80b06e74c5b302a7e5fa7996d930cf821a22432f40ca9ee7f3b0799c87ee1c20ffee186c15e73d32fc4a3d77853b0c3caf44757369fb5956158315358269b3c93db934ad24e0bee4b323359e97ba982d78873189243a0eb5d7760fd842fa2c04d52f3ea45f99eff1c236d833bbc8ecd88604b7e33f8981fdcf2695069f10d8de32fedb94f58fb438dc9af842698d4651c74383b63e2d8925211e02601b8642d34090449ec8703040ad0e5dcbbdd46db0f9e2f29f590b6688070cb2c868d41d3ec67d7305ae6a0e39d9383df31e30aa8071e481c1133c8420b3e5a3d7a2681f490039717ecf088b219258c4449ac8fed4c40c805ff4b77d7c28d0b5a0c8cd2d19e2370142a4fda7eb0dfc9a84cee9e4c845e8643c8108cce254b716dc4b562fd2535712ff840415212bed1fd2417279ad11b743fe2895598dfa938656b7408e5b1497fafc13fd12b3fade0d40a0820f81c430cc50ad677bebbcdd74ce14682944b9e9024d681759b4793c246ccb7ca40d889015f752f73f66e60c61f5e0f459bacfc2c413b0c4cf63fc2b7bac814ad822ba4caef6d6b7fd216465efd0cc6cb4b1a20fe66157a8853975b1b2c271fcfedc2912d1535972fd00f4d37a5b08619e0abc563ec994cf36f5a89cc5ca6fb244d283599d42c6a21767442282a4d18e39e31604aafbe240e48fa1d7a89191120daf5df393a9b115e9867c336113c45742a90d1d4113c66891ea46871d822d95197f077e8438ddc7eae6c33dc4013562aecde7a0168f81afaa2ddbed3e2cbb4810859c2fd5a3495213b97d6e5aa7d9aaf6ec2118b6ae7c500ff3aa12e5469f2b58fdc9099eaf8ffbac111b49b913622289c81f6a690c4b3470a619ad960bcfcd1582fa9ed07b2b9c839c78f712573306a9ab454d7915315f1514053923dc53f7fd66cc142036e49f0bd58e708862cc263734ec967d5e4054c3be0369565dcab83c9fab99219aaf21a168e72584083fe2f46fc477902b7954dbae30b668db0507f29d4a64ac358d3366abd0b7a9e8ace99f9b0d16316ea74739dd47a010bd6ac51a9142122ab699181728ca1c381a941516066ef624c835ee0df7e4f202c4677417953775d5fb252bf8ba53ac17fe2f1af324a168959f81567da9e73c3bf6bda37d3d53d9b58efa392b9dd81c5827d5fcab7bb4ade73563a26d83c8a535ae23339820c153f0f79b1f9cbe2b16cda032cb7883d3ae368859ebe159c0be2ecb5b11859d27afbfab3df898a7b90efabdd58308ee3f099ece6f7fda1fae5cb6ed55111fd4d6cdd9015218d830162cbf03b5c4cac717de09dad6c0998b501a51cefb76c4b0199c58e2e316127aba37682de5c04dde16343a33e4e5ae3b6295793992467cff5e8e6132ce46e2af6747f60e4e91bcd7a143d1f42c8e9fd12c68221b067e7f8c4b1d0c30234657b7e4d64c2016148b84287258ebd1f1639bb8c517814fd9992fcca0c15633148d7ffc8c8531aa0bf43a23ccdc423878b58f71dc57fd617c185f62a51d57aa938b95a9fd85c4d2c7da5ddfdb83e14231a1800ccf9e755ec4ac01970cd94cb50681137a8f00da4938021120414caa08fe36bf3e32b7e660402cdc663e8cb4a9392e10c764024469f6fcc3b10779f0cf3d7beb160ca7638b949246e679d534316ee8d61dae3b321a37786ede9f94dde73f88d5e49aaa40121d0ee9b16e8e1c56aac332b2bf503816d6e22cf50d798e3fd4bdb003c5f162e61c887a0c3fcaa35140f3d718a220044f4c4c581db8ebb167b42c2c9ddae5ce89458a0ef92d7e741b1fcd295d49698eca399fd98089a0284c33f13e715eb19883c42af2b54995f17a5499340a20f38a109d218cd7bffeced7a1d16f3b2c4636e84d580cb8c1246ddcbaf1e7f5a52c5ea48ee90b46ff64f91b65379fae27d134b5b8e284237f96389ea2a94c2fda31abe211d02907dcffd8ab33f9a4badd34472bfb22c5afc67645f38da26ad169f699f76196f5e33087e15a38ec615ba6547b38a58ef56d81f84dac75528b5e70c88b2099715322771eea2d741c39047f5e460baca9ee95b2a19b2f5bfd988020f918e6b62e9cd405c95c473bc1b6e038ea2a07d997551488490a15e46f58f8d6fd239cd0991b6264e348e9f1c6cec3348eff7466e7e48e91aaeb9c645fc690f0a89bf8048f67a7d67967b42be31b9d53c5c92dcecf1e16c451564a2d9d7a34e3c1c7f17f71eb920aa8cf51cb609a4af0c5b6c44ad4e3ccb8346f7a86589d05be01ec908eae69ebfeee12d7d05c431c7ec7ccaa0498e899aabebca31230919861e881f948f085bd519407be92ce923ad6470853809bc4367d9ace4b0df2f43e208bd98ac18a77d8fba7fb16ed95ca128db6b52c12d33274f9d169d2f559545e40e3ec97c1a779f04ce772329a4fa09768b9681200ef3b999c6778ff606d6d2600c4651da56c6ed88d0b2ee4a1aeb7ec3cf60b3762ebcdd9111027d3bb2bd07dfdb01a9a551a338cdc3b1cf03ca36c36453eb60d66943953bbc2c10594911e6fba766020fa1ef62d7f2e1c59f7e208c1dbbdf4dc27c0a4495d299d8c84671bebe8e8647ec6a8acc6359380dd15c26d1c262371d9dcc0472202da4d8bbb828a48f3345b6939830f39fa3e570ddfd857f47f839af31fa152d97aa18092e685c6741efb93c04a31d91140140b0f34985a4a9ae4d960bb2e151a629247a79aeffb8ae91273f8860dd817c1760120a571da080f2eb41b4743ab714ca418b4645fdfbd755320d7eba610684648b3c9d25c0abc245fdb86397b1eb1ed4ffc280527e20a6cd7751cfe6aa05c836a4bfdda89ef9a98d947d316feae68be99a6e26819255cf1d20b6f5b8c2ed24df630b43d88da5e9dfa82e980f75f8e2e1033aef4831558e93bf89a103daaae10c963b85a0e2cfcdcf0787ee869cabf8c8ad45a9857fc8d6c467439ea0a0bad13b7989805b81c3c69716e74f78d8c45b105e589edd9f3b2df2b94d79caf99431b85c19f29e72e7593c61e93655109a289695bdb38fcbf48031894ac5e04519f101a7982e3c1b3bca79d49e387043255908e55d3e268da93e07c894251be04dc6ce639df29125d69e7bf6ec910e96b85c9608381e8c207ba05c33dd7b45b43bbd1c410983028498bb9d7a35e8df7e4567a6c5b497df1436a9cfbe0476fbdf72f4657593aaa11abef92c0fa8ceef1e47617abad895b32233376254ee97420970ab413ec4bbb5386b26df0dfe7851f0cdb2537c0a4e184b7b3097884c4ba7ebaa5c11fa56059cedec40f3d6cf982496566a6d29fca2b1de8efcd131889472948d020d45ffda51121d247611bb498f788adbc3b43d893eb37774c97956d438f902522ade3c18ac82ad9fba333cabd2368dc4c438d2479de45795413ebe3beb1ba61589287c55a6f5e07281d0160c0be7944b5209836b7c81dd88935c922fe9c9554f5ad6301d12c2fe3be54631c809ecf259924ec99c9dcc3bbe0be8d5f4846aacc352d56e882ef62a9645a46b0bb8dd2d5b4de64839cea783b86205b81ae419eabf66e5f70074f4ca5c12b946578fda9465008219781741e43c2ae047a2f0bfd54e37bdf22eebf5c1f7bc2cb8988c7d6a73cfc78eaec7dda51d6d7f6377f322f07e98243b71cbf2187c318b652feac32654b4476e9c2a5b07eb9aa7dd5593c867190ee9d896d549347b59619649f01ed617a01f35e847e9b29b3a3d503ef8d89039515d2622c6b1c0237da29b3648faa88d43008dbd466381102c31353b46cbe4effc4c7a87093cd0030f1886a6bad636396465789bc4cae7213643508185bfe00000000000000000000000000000000a0d10172028
+flags = ValidSignature,ManySteps
+
+# tcId = 35
+# signature that takes 30 iteration(s)
+msg = 4901000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = ae24fa5b2e13f7ee71d55906b8d83994bb96da7b88b98568987fa7ffe9a72544552d227e935844c7b1602ad91fa0e40ded2dd5ea2d25321eb4f96be7a9e167718259e901197df2d53efd428411a073346cc9e57a23c687adcf5864b001237d34c0de91cb319ad3cf698f11fd2ccde9a91aaf2891b30f0aeaa24529c84134076b014b410029cff5d4de892bd24affeedb4972670b12eb3ea3b06fd6c91ac1517515c3193bc2953fa5a9bfe173c5da8201da2fbe320d3fd2569520a16342a30da1d78181bef31a5aa53d2b8ec5460584082dc93751ee7ebeec1108cb60f5e7853e49e7db6055df2f7cfe35fce2a2f7de367dccfc980155ff080d2d7035679da1b7a83a4df8f2d0dc105650db1b981a744338c3512ee99abb78d278cc2678add260d9d68db7e2830c35dc8a32124bcd99c72309e47ec19d3d06507ed6eb8f7aca81a9839361a89c81d3f965627582652c97b00251533a3cb6cca24d492308faf7f685929ce463cec39ae77621644e8d1579fb3d208ef0e299d11523e4b631e011317f78c0ebc1bafc8c9b158168466158b1334fc6050a582ec806c8dd882f21ffee4c884dbcc5dab1d69c2efb45e4de6fead2f6f5ec9059e4b76b2356466dee3d8e0f2eae27a2eab778bacccac670e495ddc9a824f506c5a6c2a0a024f74530ef5ada75547d124a580572299c4705a24e263d2f90f1e9121726ec267c47cdaf31fbb0c5f0a4d98230fd3c4dfdb29ba2b6dcd7c12c9197f1520c1fdff81ce570e9b3c7693fa79b7154528e843443fbe1963ed6964a4703242498dda72da2d843e2295dc633b2d6755e4cc5154856b208e02184aec24cf05a00336e4d0ee4f640592c9b24777438eb9ae28b783c43ed5dd500e2eceacd2309c9f7356a4b276dbe89b69614fd749fb4181d5d6ee45d256b48a55c892d4df68f190ecde11b87fa650262048c99b00c3e894eb3587d8905f261e47489938c626fa611bcd6d28fc895bebd72059f912231404a56a238a3062f978ffb925ae0aa03ecf3be140f1bad2e4bddf3127bd8904186832181a00a8cbcf23c0b175544c1e45d9c3923317fe1bfb29d8c04c7f0a08e3f6b37da851ace7e9bd33392fc06fc49d262d1f8b4d80174d43f8b7196aa262bf0f8f25b42e13eb0e827096f2074830464765020a51b074853cb8ee88d229cf91d07a1c02de057564d3ee5125bb443f7b981b429688eee5ffb82c972c14d3b5237fbe4ac5611784223ce00f11fbe4636519f3ddda9893c87dc942eb30660c816444b1dd7228a40b907c9b3f1a46cc166a75dfdedd6c76e38c89cc1537e63cec449c44be2054be2bdb0df0169f7be37788f4cf8f9ec5110029aca9e32f76ffa2b68db9fd0480490f894e93a66bc9870a17c1b9ae0fd477db2197a3da06015ff9cc172f6b297b5c79a4e6943df6384a737f64caea0c5abd7a799ede4dd789bac30d7846b19ed32f9669de319d67e7e4a61bd233ac77e9da19696c9c4a791fdebbccd285dd4fc0bc3af634a9556650e4c730381075050ed834e036b25fa9125d262520dd095b7811c7f4b33c82171ceeaa664227502b0dfd3cead3593b2fe80002754e00c20c65c7454ab8869e014c3a635d9bacd6116b320f487bfac58b1d4620542ce4f9303217b7455a9a0b7f92f93334b2bbcc51928d04c77e2fe376fcce692d7c36d17316f3f85fa43c994a4b672a1ae2ad8555331132b35cfb313daff67aeb9fcfce5dc440bf87062b24f9001b857b735430826fe4bfeef055a7657269c352fce093270f1b1a7241ef8543ace867fb142c2c78c4a1fd9bd094d8810f3c5c93dc9841535aaaa573b50814df0815de79cc1ff7dbd3ae869f193da637ddc5ea4d8fc88555364d612c3c5ea0230df9f75732f8decd035a98d76aafb58b5ba98fd311561aebbb4f161b3b78a6f64000972e57684ee68c9af4f708f5126692ab09c23866bb6cce9130057a99901647de175734d830039f21cae68133e00f7c0c13baf9cc8b7b09281bc2902b4f1e5e17493554fe7a02964a2d020694bbd049250dbbae5f088b6127d2845741a75249e163e8107cad459b68b52818845a04dc373d475f25e236f72f4b8cf883f4a25e857241508469a2c424ebc06450bfa33dcd2c342e0c3d170a06e0c8ac7ef2f5efdbe57ebefe1782eae6a16c9119e767248abdf2a3fb02bc9419c0de7fb8be0b8dc07afc74074d8d44cf6adc0009ba73058602c2833f4d862579e8b6049a42de92cd76da08b3b8b8e442a832b0c89238e1ecd862f629c691c5ce627e0298574bab49373710d096fd06f12c1d131f134bd3c51c48abc06371a8c48ab907aeeef68c14eab063a6d99c9ec8ec6c860b97f43fe0fdfb95b91a4cc0757ab27ea22ee30d2a69704c7526377b66b9b2c139ba52a7b5b03971eddfce00d155a26ecc56093f6834726e86ab6eb460798ad3c6208483c413562b62c57591b44ebc3dc623f01ec7f622de28ce0025df34eb9f669ac95e0c76c0dabc8b084230ba2ef1f11b5db27f34e7755656be244bd72d1816f33992cd8268bc94ff8e9cee4ab0e34083e9ddfc4ee1c5f0e7a5a8a05a0b76863f4b637aacc8d1bbd87892ea844ab3368a176859eb48b2f6d3bd89c9f4276a5cc1924792fe3be2d1031f003107fbdbf737392c0ed2aa950b00e9ceb0bd4bcf2964708e17340e2d314f7cb912b9a4d2d45117030f81d6e3746fba9cf5886c94638f1a53f0ce891f0b88a33538a311a7da219814e450cfff5e76b4b872dc53a88f3441e12df39298d90cd4126987a56c1fcac0ae94457b1dc8d2ede35c5aee0009d28865f90a1a360d435ecf71d6d0f60a978a69e5fc75ee639d15b0338d4a39e12c09870caa4bfa89989ae7c0067d8d2e142d6457ae900218c524c074c9bee39f987f040968a57fbffd0fa7989feea3589d68f0bc281cc4f7dfc02441c631724e480c7fccff312bd4f3c3eebc3966780e2b719905994e7cb66283b313eac6702521a919994a1d1bd9616964388ce9a7f39527728c67c7ea0bab7f85bd13af7c4518f7c58fe963ae6e813880019f7f4d6813c74850385b8f6b9c0370728d248764855fb8281a5e5acab688d39b7f3e246dc111c3b83c187d676402163bfc63370dd1fb3f496e4617e6503f6524d8f6ef509e54893cf70333d6907f5a4f3404fac891bc6daeb12df9dd16713da93982a4d85d26c1b1ecf2f4615008b5177ef6877a980e1caa9e9b1d53db7c4b2547f6cfa4daa908b292d2f87c7780b48b9024487d27ae1172026a3cefdf92b8866dba1736355b972d663c376aae45558156e9ada92c6c7d091a036e78978626a679eeaba0216fa0eeefc1f60887ef9e80107f9fb46e76cd26dc7dea30ef1ba91dfc2fe431f7104df08e99ba84943917904e188ac3079186aa472b1571d3cc4de95a454eeda9b4592b9724c9b4cb768790474a716d47b7c46ef9bc486cf1b3231ba38d3dc58136b1c164aa9f4299ae99b3474cec84016e9b7b57419a6353cde8889a5f48de38bed8dead721c2ef3871accbb94b19c8c0112c4d2e7b2fb1cc92a144065251292119c74a0eecc47dd8b252a44f7668ef100a5b661967bd5e9d2dc386547a2c73005faf300b147b92140460bfb4c29219b411394b9e60e20d89fd02567bf3568938a93e8025e0c1c24db2614293c5ed62b3dc75c9eb6909578afd590aa11ded16ce367769fa3c20cb5e068fc6470819804f220e2008ffb516d27a7857d5e8a8785097701d056756e2141142204e13882ade1d97a0a575fc63152a39c44f2da987b027c2fbaf41745945974c87610cee657f76c9cdb086b9ad84b401739912ca96bbfe3877c17c74a333ff98e52be971300a095c740b5b093edc6ee473b0bdf0599656282becad7e114768236f1a2facdd2d1e085e88d375be393412fc14c646b9528d09def2b9a5ef44cd75d3356bc10f1eb4b5b135bf607d32a0741b7a77b03fe44b4a8f21d2b5190b01dd04961e2b3c599ba6c8e175116af78124b67085d5f075d54f1481728e60aa4a007f7124dbfb03225b880893fd7de61dd8d31953c988d5454f973a84c4bf56f0aeb7511cdf3c24bd715923da359afd11e3f4d92b0a17bd88e8ad22e19d0eca5014d8f16d0ebbd81a0dd75f32f2a7cda47b8fc03563d5cdf5917c2b4dda39490162dcbd37e87d9ad37d75369e02ed8daf73904ab802f9b41495c3cf3e22096921e23e6abc537462ef71cff0f365e2975f3a3a5836e5a09b27d72dc4b30f8c67f33092ef288e5eaa52f62ffdf8fe7130c8dd93f99c530c0323019830220d37fb3f716d62bea22914bf0114eb0d92b9f3a2a8f1764b61b2f89d40f1780c834161e5f41f75a46c338418e5738d23aa2e3dfbf580fa7147a42e6865d13a69eb6b79e0603d1176354367cbdb4adadb398b7239862d54403118ebc5569f0454ddd954a2553820b3cc2349eb234714cc618fcdd6399aa3836228256d418f80e96c26ad07f9035b7cbbe0de919c51cd5c8efa7338483bb4480d21a770200dc0802aac83753f882c8fb555bc01c3bdc09e3d5cc2c10dfb9337ae7ee9868e34cb671a0d4f31da52eaed9f6513b825467de5f2129b79b007524f402e3940556a6c97a5b9e125495173fe0b394a6898c337999ae10683ec151f3cb5e6000000000000000000000000000000000000000000000a0f15191c21
+flags = ValidSignature,ManySteps
+
+# tcId = 36
+# signature that takes 31 iteration(s)
+msg = 3308000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 5057aec74324b4d5dfa965882d49ba03badaabd76d7e56d1339d35893ad040fe52deb881e999796ac3ebfc749a6004b51ae140a6c0f3105c5b0824fc17d253931e48ead138217bb5fc3776f4695d4a6a34d387856372add58aec8ddd81442af399b0be2c79c2f4ac6fb0daa61bc48c1731cd818c9a421e6e61ba1228e9a66cb5d6e72cfd79dc144ba3a51849814df30c7f9434afb991d8f824d42c7c42a9c055211bd69816862e462ca4897e8661ef3a3147f362e0926fda48deaeb0e7062837c071b6f69b880f389ae55f2e4c80f4ef3bb116490035fde777663eba8a4c7e518b4721988539708bb714b1cd26da8702bce552a3b905113f3edbb6b77dac1427c0166a3fd46ec1c4ec3858c4b529145e1b9f053c1904d35f0a114cf547ceb588d5d8a5dad2880a18689e439603586ad119a04e03ddaa0188e6331dcabcd0dc223c469dc32e041ed18bbd1676c7f05b731b262a0c0a00e86753b20c9dd3d5af52c449b9c462626de5bc59cf018ace4ad9892e924f2c9af15f013710c31832609a819bf99b09b14663a9f4b0078335e81ab50696a65f8c151301cbb16bbdd3397eda0d11e5d56d62265e49a78a34e5e5bd9893fce108da77d7c17b50abd1f91fb9b7368084a8b2820eb7ffced530f7e4c78c20d1408e224ea17a19887f4ded7f7c4fad037a7f566013c082d633c3e62ce76599a294fef294f79334d7aafbb8f8b5bf3b9b58a82bdc0fe49c73f82ff86d87d9ecd2885476f9755e2c270bc01dfc8344828ccc3ceb88423e1d52285e60cc140bbe1b97cc9ea4017540e7078802207e94a037ddfdf0b681b433bfab0930fd1412c1b36ef643df0f3b3b00c05669dd77d37536c3f48a4e7889b365f19d2932e146f7c9702be9aa88f5310ad738a1699aab1f02f7a525f212bec566cc34a10d7c82e543efdad640e00f6a380ec319f1d48d8584ce5cd6cae835d23a099d91f0c42c0d27a14cabe283ba043401ac7dca1e8b42d8a8c37923ada7ce4bcbe0453055cf83a1ce54366a794e95f62e3f6141f3e0fb78eb181138b77c0474a0e300a7765603f35a2523b6618cbd08072ea8323af7a714d4ee6f64cda0ea157d52cae5775f9656aee2db5728369f9a0492428ae02efd457123f4d08d92a29a9d7943ed38b0387dfbec6dbc96732d29caa78ed8765947637c00fcc028d676d8a9981ca97fbb5f252e836e93aa8dd37000d43d047c57009bb88dec672b77d8df3dde4ac85b01773dc00a43c9fdf2cbeddc04ba3798ee18126b0c750c6d40ec0ac076b8dae0d5aa71b3e72a71603c82083267849b263251b86ff5fe1cca0ddc3747a353392a47ab6962c15e005b2578094f9f9a8097243dd15110068f941a11902d3148143cf65ed30fcbc172e7f016d629f60a584d9f4a0c539561714f1df67427331f3c8395f559afb56ecf7c5702fa34e923cf1da8280583fef6ba1570eee03dd7efd9b5add767169ca11a0eb538790afb05694b2719a9daca1bcc31de44d0d5946d1e1565d6a476373b42c9f05e01b9d39a921857ac666d190205744061960b94e59c805b0d840a140bb48817deb68e6654071e7b56696f30a27368c36377ec8be0e4088fd23623158ad7cca215c70b7dceceb220de0509bd3ff530e2e7bc1d3a9358ad13794a5fb2db6c73965915a193417cfb63f3cc53fd48d94d308f27efa2c2c096a14a1495244b437b4563a2eb65c7b906816d205e02a465b350dfb7b88403689c8930d5898f41a4268059b650237f60421607440a16ab8b0b1067fbe9460afd8878742a73914c6986ca5d45dc516665dfa4fa99d733865fea4cea28ebc12d50a4edb7c1b3cb2cd0dcd0fdc6acc6f7972dc6a8ba3b3c13d487c1c1f00883c2c1822fb58c684427b837d457e678a79c0de7e7308481721d9295dde258d2f06159c98e2f70a9be35713ecaa35286042d32e85b760fb79147f11c248790a2f274c09015d43fc33366d7d1ad713e2155600eaa5cabba497044ec99c17afa680f42410b928adaeb876bea66c1520bbce3da46ef8d3ebd6f9bbe40a4b643d1ac5c88cbdd26023b88757b2f6ca78c197ba0caf240050e6483fee64ad3dec7ad61f8f793e5687d9e7ef3bc554e69bb8f6d0ab7a51d3f5778ed262c6d32408d74879614d22963bff3fe484a83ed82a181242214c5a919f8e510064f095ec8882e18ded7dd4c3e76920200cf6079f56887fac3f06cd8c3b70ea053164b912fc6f6ec347b78e6cc3516a89dbe136350ccfc55204ca112b2873359ccb8d30e748f36dc4e9e2ab85d1eb31df27f0297a6c7114915183cb106154c7ed467dcfb0ec709271cb8b64b430139cfe732f9ba697fc5833063039a5d5a2ef59d3173447510e0f59a23be4ebc341356f2205822f0a66d65b7e0416e354d1dda7f75afb864fbbea967461f69c0fb8ea80262f423bdfef3f18c1fbda0c042fd5f4bc7c0b5d2f7618bc2be24ec820d8986a6e7c345f22ef2832797e5aefdcaa07be9f31bdd35d282eaf46d796c29b1e1c34ad11e02f89403ab899c49721be2a5e4a0708abee762150069c2dcee161204cb5bd680d6cfb340680e49f79538b5fab63ee0272fcc33379dc778581eb9b5aa9b72624eb8bb28697d6ad8f16ebb6c29aaae800f9f8063d8885f3f8293c40cddc975c005fdc67a9b79e6bdf7fef1b30e3a0c3ab51cac4ffb15d320acb9a969165fc8d9cc4c9fdff4423b9582c2ba54fd73069f1e59a3ef11f01d57e55825f87346b74cf5afd20b5569a3cfe8182d891612613374053557db3d7a8c421ce649e449f7b0a6ca7ac11459694db5ca15625181aacd2184ac1c090fe583fe7607339bdbd5deff4b4c1b82b0b2832a5368901234a627a63a67a47069b78f45f6c783ce2f782082406216411c942b9f455eb081035b70c54a13f28df53c00de9c433204c61471e021d6a589ed522445007250bc398b16548b58e54b03be61caca4bce6ccb51a9cb4c553f0b099a568ca49d93860ee94de1af05bfadd7985ba8f19443f6594de33670b7711ecc838269cc918d5ec2a5509e27682956c949224c1ffc059c22ab0abfecabae3fe954660b32fd3e3c0bd83ba0e934f78bbeb35c3ee95525aeb4f62b0ebdf70cff985feb0de983ad2a52d03d7de00caa70a7ff535339957bf7bbd09a405ce6ede82455e5ca132bb3fd473db1dd087a047281ea9c27d3c98b18cc99893ce570aacc16e4c8d84eca7197390210469d309982c2e58cfc4c3c41b0c498c02949ee8e5dccb49c1317f014f5af0acf4710631fb3e85cbf126dee44c355fb9cb1e8a0f794a4e63c0841be9ab8948224490044c4e08be105c296182e3ea14e34ad132f1be8ba30468ef364999fcd1f4afe2c424e193de17181989dc2ad074971b19f8bed0657a3e18d7329525e07778ba620d8592a5ca184757e65a28cdcc5ae975ab44f8b0b4ffe6b3e85f1194a64a053e5b5eeac4b87eb848e78b0a9a10c955a37a719160a46d52e237cbf5fcd56814fbd753941a85e20e1ae3f1252682bdbffbed04a11e3ec1d0383a6f5055b2c09dfa16f5b3bd6895a9c4cf31d8c2ea76ec5039f9f8fd1c2becc3a0f69aad095f0a1cbb7800d4b57a7546363cc0a032599c4fdc50223615503b13d7e115b1bf7e3c6bc0a2d4aadd54489327961344ba4c0f933267eba87e0bbc688cbb2aa20bd04cdbafe46d5be7405ce029d53f3c376a3225e4755195c46e25c5a63c953172c1240aa4dcf2629e00e9c6c94005dce93f8810a32df75d3a67314b1126a647bea0b3059ec7f0f4a3b31f83a16b01a31a44eea403ccaa9850622ed3b6e3b41122410a08de696749b728e12e7e106263164ca1006fd3624e48dd9b796e235bcfd240d651a5a6317506b682203fdb124480e135e9791521b61880bfad227292e2052e1660bf342995ef3ab701bc64fd575eb3c3872d8cce94356caa6301ed6091fca973889151580f11c095efe49485771e6008f3e15864f2d5c0ce96e73c432259e12ee4591179ae285457a7bfb598187fea7b08468ee34237e4dd6be18c759fd3d262bf792efc5fd00c2f93ab40ff228fefd3d10d147690bc9fe0f8153cef46624f123954bfc5ec6d91614a7eac99b9628ece91e6f116dae000353a3736339d49e00ffc66a912970d7845d437376a405ec9091893ef9e025cbfd8919cec5e5e9c8ae227fbce880d3563330d32f4cfe43e62cfb8a471eca1faae3a7b1bd40f719668e249bfc2c2b58940f6f73c8985da43b0f6b41d54809913ca8f8a8a60ebe8b09c5e2e089a3c8e1de99f8ce434abb2fb4c2529deef8295f691bc36434b36792d6912e1f4e1b728414e77440b71529bfe5430e4a38b292dd2532d6e614a7da61533062e8ff84382993a8d3764f654e90740101c08e185af2dda68d0d348841041eabfdbc9ac165385b39a03d7ef359ef9c8db393f46c5e8ddb93f9e961478c353085ede0738b09ad0a4f77e094d8e873455be5225ac4a365a0e3a943d308a208da56bfd3d5fcd439b8e73a466dc366e56d4f6e7e963d0d3bba23fb3319f6826dd6dd6a44dbb5895e707a395f646c2e02a6b8432b201211761b6c6021bfe2fef8e3254e7009fac6287be9051b2162c1c3d1db05143245489496e228ea243952790a83849ba7cbdce1e8081456bac5d50000000000000000000000000000000000000000060e10141d23
+flags = ValidSignature,ManySteps
+
+# tcId = 37
+# signature that takes 32 iteration(s)
+msg = 9721000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 4cef6107c57d1e2a3389a755019b029002ffc1fff9d4722f8f92e9ba921dafcb20b0604257cde0e315568622d1a665746b446a8df7d8fcdebc10b02ad687d912a944761e54f05cfc113c064191b759cd8f3d0ffdd523644123542aeaad7645711119b746ad421521296aaffdbfbe3822ea3d715a4a276ca0402803a71cf4ca6c795ba336b5ef3a093167322dbd3167502444027b8b449e12ff1dcc8e9eda0b22da66ad89b01c86de493084488e126873be44c43e4cc7972ea78d524fc556b37717bf768bf0fc7374ae56332d955988ef2d57265e43768ef2ae3ff64a70037cacac2f1af03119efe45014f45e070baba1dc5f73e7733c958a3042c743af9215ae7ba3a6284626b724249033300cbb7092e4513d14a8b19b168fd3d29bf461ccd51ab581c0617b64e46d901724238d9ea556caca19d56d83a2cdb43a0db469839cb1ccd1afc705061d2e15b798569bfcafd135b51e21119ba22f4c69b205751b177354ec3c6547ca89d86a95cf1e0b4139a001cbcc5274f4eb19eee0c6b2ee749e940ac72969845563e3ed21d350f7df7d33d969738643983acb6aea290aa6b79ede572503d57a4267d97d2ca92ef2d17b104093b1242c53ed0d966ce4100fe53d7a36f14ee6335a9b85202baae912d9ed7e3f153a0292708fd3c7922ec2b43e4801243ee4a65b875683f85a071c86df08b2a999e258de58534c29722b912a78f515c353caf170b2e1eedf52910b857aa751114b7f26a3cf9122a814a6ec65f0347511eeef5094e575b0c51a90e27ed8c58b36674323964eb9725c550eff91d8ee79ece3fdec6cf9829a6f2bba5ddf9958f1c3f2932aa2a888d81953e74111cfa6600c10022e3b7a420136731ad638d26afec4d1df60bc255f45811f6686f8c81c8de97d541f4a38b6f495aca0a760f3cadd06d72a6476c02a8f61f92049ea6a5b5caf6294e308dc675b47dbe294ea8ce599856d19dcf0ea61b3f930e3fae682d8a324c0022f4b904b092bcbc0279b146cd63b827a5efeaee969b91b5158a2d0cd41266c94b873ce7e243850257e5abda0e37c4571f0b28a92d043cbe92a220170c6de589d0ed0e75ed1b288dbad8c7069f8bd3e4151c0d5bf90e9ae55e2a2b9e46898a301c0823ec14a201da94e9c0995592770622687f1a477511563dc9cf9500968e12c5b9b9584f179694a68055eb5309a01110fd8076c96cb6d57f0e228e1afd0cc8776978bc426401aa1fac458b8f3e1f2bbec589b653469a6589527e89664dd015497b669351dcea19115f55f0814a4c68f4a3c22dcdaf0d10eab6e884c6000f86ba0d8a453f773a16e2e50e85c69f501f29e1a4d8cd4b183efa68df94b98d47923dd8b2315e953465b0f65f3ad3c1d61e6bbeb34177efb27ce59c356873ec150c5d1883d0eb69c26e24a789aa0450af814faeb6dfc46d3b0309eff2d7c6d479832bfa6f9c34e5d5df4861865e64b5b03e211bccf9f72be75ec32e4140bc81dcb69f4de50d8a24896f749c356418d4270f5161328574f25650da41035a8cada3d9b630e103477977e5bb69382201fe6612b3244452a00a68e9b66b2a532d5abb29c0412f3a76e0d3fc0ba868a237c9ca392216efdd77478c49197e963660d57b96263ac47ef7ce463d715aa098ea2533cfb6bdafd984259f6143fba4f59bfe95653fa3ae232fbfd764a3792748365f5512f945d44b014f0c2b33911b36a60306f087c88afb57cf0dffbb8d80bfae7a44ea3e3ffac7e1bfc614b4a7b345c456d7c52a359bfa4bb5499c044c91bc6ac38f6ac2a39e80aebeced421ebe402782edc887da588be58815c71ae9e8d3b1644383fc15e8bd33b729611a93c40fa832bcd803913f590ce0f3bc8d3cf95a7574cb5f2a2c7368f69421153a310e776390c9535d16be57896f6e0ac8ef8acfb64c67267e246df87f55b50670dd3463e6a9b6aae11679c11dbfd3d6edda9aedf6557653ec89641d336b0b8f594a1f8dc284230200ae677092e9e7a6d129ef63997517c5a1388637eb81b134268a1be1d5dabafb6e9ac897894aae6d1720a1f44aceb2cd9749a13b7df3ffe4e06e23f7f478e6ed7e6563355fd22a52543812ab4201f9d15fb88c5a70926e2d867cfdc8bd6f4971a2b51656be33785a7fd78712e60f7b097aa88b294b1089cf01c8f7b958aed1933c983f7af824f202fbb88951de232ca81c7629bb4281a057fab0de81fc1d46b8ada37956438ee7fd8e13f1938bc237b672e0faf93e22c36bdc7cd192c6b607b43f866c3686cf532eabce500a9931e54bdb4e399b9f0b29301dcbe0eb16638486b7f96b766fb008a7b62f1c57ef8e0f5ab59c10ab055357e9e0111147ae6d1ca03ba503613c04180adffcdbb58cf5ff7ff726744bcc65df37a3f9c847b93e14c9f0dd912dad27d442406871fcda4471e8f21dc55b63b0fc702883467a0969ff3aa2010a72a111062701622f64567ad9f8a4f3e91dab436ba552ef2e42d930a71db205de921b1818ed137615ea39d16d8ad4817eb02e79e05fcff24aefa1a10e60a939c0a8235fc27846dd032f95679f9b987acd81a6f285d7e7664d88db73b2d1ae931d82e38134f2b770cb2f834e247371595f3ff78e420f281676399a293c080c7801447a4be951eca051b1858f99decc572baaadda8c1b67e5cfc9aa4e44abd48d2f3144ef92fd1ffe13dad9ce1d4f127c98119e211ca331496edd7b08bedf3c48d225409c9e66e2cc68b6ba2ee75f2dca3eea8f7af51a4bc99d4875fdc3991b300909433f4b261d36bb150faef340aaab774996ae1c6bfde7ac536fcf1df188f2125325922d0412c0d52a77a5ea47dcb9f898981a8f588440944b36ab2195b1afe613754b0e819a5962b148af4b1068ec9761224864776ccc8a7d54dc866fd2f9462273b745a9f6cb5af6a373c7a2067e42f2bf6219640cd11b04a37488a8ce616aaf23aa84968b59385d443e1a77e25e22ed199f0dba993886ef4a572d34484b965f31f76cd90a363ca95a75d175ae78b83c7f72d039aaa5e560e2ea9d0c9f29259ba6c06d7be2877db31cd9641b5ab67eb400c17e04bbda482e923263e668ffdfa92a84ea7ad18675a1e3bef85f1b9105d9fb496301bb1cd47e40c2efaf3f9fa737506d75342c400e74f1e9e6f8b1f60bbaa37e8b32a84f93efb535fb69b7746883ffde4e966410b048d4ecaa660dde811a0b3ec93fd2411e13f1643f756a4891f15a64785b0ed44a7a18154ee7d1d4cebfb41038cc64e9ff7992c9498a35e521d8e38a01f77f2103dac97504b28dad00bf4704d768ebd1c5bfcd434d6dcdb896fd28184c452420ef9bace73885ec8a87ee8e4da935ea42536e10917960784d436fca233d91b2da3cc121f89c7321d765c2b0e1efa88e9899d2e16c1c2958fc6318702f93c27c2b18ab78f65e70fd856f713088e11985c7a179119736bd14e6fa4a5322867ade8c2777130a67c74d763f508eb706ebe1fa0ca45fa80a8d73415dddc9a94d5d7459643f899e6e6b3f204bc79d7e66aa067ddbc7f70aee71a5772349d9e2086e0faf6e68f44863d7ed4c911cd3b73251f2760fbf0e672b4b933ed64bd6b4e0117db7eeb0cfabcb292232bddccc05aa9141ad70611b88fb4d35c3cb83aee710a84a3a7587122c0d2ff622fd7f663b3521616ed143da185556a005d2ab24f7d6af16acd759b3a188548414941fa2ebcb9047ef1e01840cc33a9c666948921baa8a772fbd582a538d6bea5a8b0408ba7e9db25e6ac1a2b19d5dbe479bfb4407de495d1c7cd818c58cc9ea5ed563b4f6e833f8a08e81c9d3f6a6262230aaf6d7ad0e96c5fe394780666313c10b2db729455d61f4e962b15cd524a38711f4eada4acc78daa59490c3c0c36f76039935b135128d6990fffc19f47b164fad639e6fc65921fbd4e491dc32fe11eff24ec5cd25a321b2af69ac8208fb712335c081d09bb05a587d95a7bf66b97a1f2dd8f5861f0575e0d156f7e1c3d59a0012b3dac27c84590bf8058dd3617437577a333875a2e1f0439038b469334d3f9457333e981ff9dc9273d5383e8f05249eba7b0d60b89eee427a057449802c5deaa90012d4b92e50846ee923c90b36de7f4b51aefc122e744e11b4cac695841c430710a5f261842f078284f68e49203f47f0a1805b13999b3b5a169b0ae792b33785f14a25f1158ac702ef5701aaecc7e8952ed4c7b39a10985cbf3e948084e61380e0cdedcba71a5c7065a864c412f486f510fa6f8c97c9a2946fb031e48e8be985508df9293956e7523b2a0bfbfc5564e082a94ff85e395aba4c3513fc1f55257ffd581fdc7f05dc4f014fd92c450c3422784e6a906cdc1fec67edc40688dcf1f7e77314c914a2a696112dea20296c73b3ba665d9ef39411cba46c2b66aa861f7e4dd05a3135c12801bdd4745d847d8947829fc99df415a2385b7e012dd6a5e53fde708fa552e418023735f830301813a3d7afe2567d3cdfbe790e318c9670e32b6b2d4406f1f1b03c57074add69f594e8ae8b0d7204041c309b2e52b58f82928d6bd4ec655c7df9ad79e8046d3b558decc148e89b02cf1d189a4f18171c948d974e8d14ffc83de76c334d001e3dc7de40bcf4f7fcfd191e447c8d95d80d39424a8598a5ad4f90b7ec2a515c859bbe00000000000000000000000000000000000000050b121a1e24
+flags = ValidSignature,ManySteps
+
+# tcId = 38
+# signature that takes 33 iteration(s)
+msg = b504000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 2aa38484627db138769301dfd9a5286975f4869810ad211d9055bee7e25029f41460d92e9b4c68b185d8033d360c0f2a5c9f0004e4d043c368ac22d395422e3d5ba1a4a2f219e38f1b300539a11481d086d93bd4ddfa8531acfeb8d418593c4142f624b881b44d306f0cc355573d25105118d6b9affc066c8910f2889f9fa45a87ef7fb5cb6aa508c4f5ad21d04742c110824a48569a1042a66a4f21723b046461c8c6b382e112c825af25a24bb26d7d874a6715dc338af7e3d4a07c27d5ce243536538ffbe6481e3542a5ac218c536c60ff0954dd5db6551c80abe9d22fd56a1486e6ceccb54ca7993d44ee52444d4876c247014bf459fef5e4b68640e6a20c5bd7ab5e11dd8a1f5527a087b97f57e9935c0ab742f399ba2eb9e7bf255d8d4f7ed820fcf5de363915d23b9d292d7a08e5cf5092516caaccfda5d4cb9ac906d10287bed5a13fc2df0b167e5bcd37768d33665c6adacb8157d9c385cc76fb9ffc53babbe3789a698d8a73fa5e110c1d87aeebfd839e2bff061d37c749c5aeee8bc63441e6ca79e1dc055fd8d789ad729dc475bb94729997e97ff08a1f1708d93612d402a64de159c26175c271d4d77114ed9176c5b9ce4234916e63cc856d9436186b137f7f7aacd7a367af9d28823d46d42add2c2dd975d23d31083424c141207a195b4212ea7bfb6da8eda7f69027552efe7ad4952ba49ac38115d93b4dfc2dbe173eef47934204f50ad850bdaa6fce06b517340b2562e468697fb84074626cb263d03a0b62a7b497ee9462c859b1d7894a543d1e261971751d325819dc071682c8f00f62153bec73cddbd5ec21f6824d4eca53dae13eb9af6c448d8d75c6d676ab18ba64836c3ecc7c20c79836a53379e809d87abc2f04f0413d10176ddb27f72936beb4d14cac5b0e684e6dfaf529b80f9b68121bfac15c8e60cae44292e8a8e0c32ebf066e708aefe5c3aa4fb4bbd7215380cedf0b19fafa11fc37c534f5c3c14cf6d28f9f624008355c1ec110159009690ec648d6ec11fc6de44831c620dec4331c900032bce86eb4ec44725667c15cc78a71f0baedb5ddc251215aa64c527a8dd8b30ed4931047b19b725d9f205a7943614850f9a619a805ba004d272d5206900846259d02c06153a0e2c109741acfb459816a7f8ec101a5e9c38b7ef9b8add48b68f7410db4359ce23cbf62507d584763744e44f95fe2233e76f32d13e660ea5d4b203bb908207ee9c621bebcbef9ad30666fb306e8ff894b2837464d3ce91caa82227d8666a3e2a9e6017f62b1ad65bdc5ec5a4c76f414ed2a15b0da2456694061ffb3296186a0ce18e366e5c5dc8b832e5bc74ff775f4d496802b600b39e5b7b531131709212980f4aef9bdeaadababd7300f75018bb60f48a9fae84f5e694f0ec6c74d3f34a77e358dc7c4f26536eb2f76adefd14e9f8822a85b1b579611975035fab27eb387602a3b4a858b17c8729bec1845b67d0725b38ecec057b0083cac04d4e075d848de5243801417dacc3ed83f89e63ba90dea0e724ba394fcf9226b50b6cb6e6017c0cc0526d7942cf5260efb79aa918c67e9c116c4183eb8068e94f25647923658825763acf820c56deef853bcd33a0c12ffebec84115e17f675b9b25dcfdd6cbf0c0e3a1feeb7c387d059b138665f70fa762a42fa3d9d360d3063b86e43f67e54c1011283238cddbf4d054d9126416b8d4c9116f8635e8cd19c2f202c90ea4470d91bd737b8032d4adcec9c98983f789c97852c2a60221a78b41e3ca75446f2e1912dadbe04b2304291353e32e73e1ee66e698a9395c0c93214a2865661dcca210b6d48972fe80368706e041eafaf9f7a96810e395f72c2ff9aa7e5d5ef845907184f224ba37b4c186c248da8bfe403df87472107da32ec0c0ee10ec6c867341ef62205d879cbb9ded18dc5d978ba96882b5a8ae2df769eec25540a431059a52176cee356a6e3c173c4ae79c3694b1af60ee164408e12ca1131d3475eb5467c7a95f8a794589e13548cd8b11c126244008c9424226929a6086879dd5a4bda4a82f0adc2d03d239fb99034f497851c204dc08961782fa41449ebd588d27b4d7da94cf8019ba42286987bc9d8cf0677ef6c45f0ff79dd41c3895912300b70587f7dd4080a65e81f5d12b0ada473bb597149e667e43804526fed0c9b75ee2f9f09ff32e87040e145ef779c9aba90f13f94c514f6aabe7690d51b6835f3e405a613c8a1e0a657cc259862ccc5a41a514c9ad0baccce1b8142de115994847b98f20ef8fea606a85c770a9d49cb1d37fb701119e6515307b62714d385f3854d5e0b16f3b062afd35586d71b5baed356e14a43e77e0993b8d30084d402bc8f569c5b837cf2c25e6869d2183daaa7553436cf48599cbe24337eaef1b44a8695d5a990241255579c564bff1399258090aad8525e0e5e75f734d15c8331415fe48d776f8d50efdb10aa72252dc43ecc13ca6322fa06d750cc9b817c879a2bd545ebce4b9ef00f2c1cde4d4c7b38a3c865026af1d108f66bb235b07935045d9e86abb228f99b94d82dfa098e680ba7af3e69a2e7ff1f2454f6d8f2165d7a05744e0ee3bcbb320a8b44b9219fb0d81a2127f112eb8d32c20a4e365f2037815781a0eec8d7d87b665bbe3d4c5df6aa798fd3c66d74330c78551d96a237e7125f79f9372b12828c40f7cd9d1ed7039635ed18ca5fa353a878913c9b2cfac7c9d774535cd6320efd7c1e6f2301ae3ebb3aba0d83e46a80a176109078cd101609898f41494da47a366d16848f3aeb61c6663195e1d744e18d284e38e8e303395a3aa6e11e55aac90f011f90a7717febafa8f5be44d033f3f3878877823a10b6e9721afc120f1ec60dca8df125c3c4d052e1afa6a921b66d4e2d00618a2bfba3e7e4fb3c15518ec5bef7589d2368a10af77394236c7061ccffc21ad67af1c9ea74d82a2820b11cca55a156927a677fbf57649b735d2af79ba93f3883f59aa403be37cb84c6b00c4fcd7f28414b665d77f093f4d6c0e7bc5629473ea1c31afe2c1d1a2bdc6459c92d4539d424436113f630059b9d90082ff9b3629e4c13149d6cd92a78a5defc5846f03ceeab92c88a53dcd5f019ac69aefa553ad4b4be71b08fcb7fce4c6dedcf046a09a7d3e1d31ab3afa543026dad8ca9412294004edcd16ae39c18144abdada4acf209a023811f5e60e5357a18c242691f990045652ef63bf86dd8d7f5d05f4f46b4276f580d1170acfec3ecf5426612938e37e65319854a9e0931e0981da00dca67e8fbcde6b94dc54b30dad04f27022aea635983ec8017cf389d482ee6c104c06ef7cf9273a9902c13c4a3f79f88d85088cfcb32396105d62f2308fa419ef1f29283ffe1becde3a2ca28e4b14532cf581d91c311beb4b41a9a9c55ae753e2e28d222d0b36b4c290a6f1b846cee14f03ffa91f3d743fcbf37d5993241ac2efb030e2652622e65be238cfd7e4a0b5e3e40e25e6eb5601120253a08be5eebd20f08af1dea872dc41b305aec03272561f0745aaee1c1b069acc0e61b16f4effccddb0086154ed66b98f15ad58975c4604ddd96e2fdfa674fe53c5d226d376081ae0bd2283f7106558a54e613900a569e799c98e4ec2f024c0d2b15cbc14bc96bfc6094560ec6c4cd9b9f879e3fe74a70c0d3ddba82f055780be7db1ce650cefb313618a2a5336d9b1168fc605518f53708afd062bfeb9a7f66338115e3213e8f4e90864e10b4b3a8eaed966f99240c23a7ad527892b3a25e1a3d656e724b84c46484ed9c0c2624ce62c46646b13003e3eb2c8ac1e1e307f40a3092d96e13463ec1bd75d62b679f4bd1a9e4967323f16c85ed92066b283b12f49fe50423359f7db6c0df64e04568d470c480681e6c6df4fab81d896e13735f3a1a18d26aef3e436c86308a4c184b709a4918670b870502d30d44861d360a88e4bb8a693659208c2c82da46a25dfdfbdc81e7c0a5addcba03d2872b8c24ab2e1761e2ae10a67dbd724fc4652be47650ec912819b70a4d628c4c16f630d24bc5811ae66fc1afa55234d5fb83271d5f8eec99fe398acf3275de23bc002a7652bf60c293e7c04fa6e10795c00e43743050f138b5422d4c09030dd12835a4556ae423406cda8b4936ee4e039324963a1fbe8768798c384f237f7b8d23cdc75aefc035c0ce65fbd9f8eeccf126f37352d9c75a40e157eadadd12b64b582bbaeea63b50b20ec88098e54623bcb373c63eac44a290a7ff8841a417c17bda385992e3f5b952951884273ff45b94067a819efe5cd90c7ddf935c3636ee486c98f67be2eef9ba4cb10c701b308861720f54c3017357e9aaca6bb5fd826cb39b8e0d908171963bd068a589860fcdabd8bae591d4fc6a6cb8bdca9a0380b3c70e49af9819f07100dceee2174331053b4878e41fe06782b5421ff93b7051deb43a61bd5608a881423940222f2cc2bf795721472b2fd714ca7a59373fe0e1c3c9dd5dfb97e345a250f63def1732f19085a5d1f50bd6dd7d26b22bd68aa239450d21d97e85929745896d3adce416c9aa28db0c3bf104a246f70ec5e24a11c3618280cab7bc6faedfca29eeb92c9ce708538f796469966ed1d5eff70e274d5f747bc5dd6d8a99c52035666d80a4bce2fb525b6b7eabce0c1c486e82f50000000000000000000000000000000000050d111a2026
+flags = ValidSignature,ManySteps
+
+# tcId = 39
+# signature that takes 34 iteration(s)
+msg = b502000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = fa54682a8226fa50a7728ee9ce8aa7b72bdd00a4f5643c4771d6547275088fa7b32042cb5441cfa8880779a602c32a536236b3be35a6e2a13360d4825d52f511252d6a3e272b493bc73878e0e3711360b5360af83df3f57570667d866c8558b052c540027a690df9eeea1135aa50546b2136d349cab85dcd698fbae1aa6fe0fb2eec20f3ac4f004a55be8510c4015f74538fe2e695cdc154887631dfe924774a6731b65aa4349fa16d536c7e9b5642966606e3fdb271779ffb0d3599bf958d3727fc443a6a190f4bb2f2853f5f6d773dbafc371772bb3d2b0e88aed601c9ce8ffd60b2496315f507bdbb50c7a309fcd68d85fee1f5aaa9420c4d2b52147d7fcb38026e21b5c467af3ed4b16038f2beab5f54b7c134571c079dbd28c54c6e06505d69b6dbae1e720e8a8bda189867861f84f5f6fa39f9af2cac8c6153bf1533b21f1e70360baa33860353eda4f0ec700c58283e2a3fcae5f0053c395be917ab411b8c2bfa94d892bc4fa424f6dfd97f9fa982b02e4fbe6c43b598eba769629ac66c3cde157365053fb6595982daaabae610cd3458811da53cfaadc053d8af104896e438d7bbdb025c474abc2493f74e16fa8ba563ee0765f4a06dbd874748302dd52df925df631e5bd5a7e335909aa7f8e7a65a7db7cd1988add9b9f34a71e3b735da6dccb4b6f6787af5f1e519e24a1e15c5930f43626f5ed734d4c442125896aba42840fe0613bbb8cb68325a6bb26bf1bcf14a055fcf63f11020ef7572de02b677315a6c83a2d0bceaf049e91bc715a085a25769ab9c9f4b6592a41c4c7e212c3380d723d3b4da5d9baaeabac9410e32eaa58f38facfe1f7438e4eec3ce5091a1e38f98100600dcc215d3c8ca850b46d60e2b941e10c66d809282f9d38d710a9202f9bd9a79a62cc30b32b5a1af6f9de111bee6a5bcb65e9125b8cfabb6db6c750c7553d6e3975be064feecd24e26c7196e931d8b1ce48ae6be3977db6d7eb200aae36191f7f0a2be3d3d7c9e760be49c8fb0b495338771f4b1676304c850db67d24422d7b153a4c34ca37a0ec287dd47739c2295dddd32e5809afbab880da22a82dbfd4c0041b0b8a6b9168e7baca62a6499fb621278ec25a81104eca44d2cd0165113fe6c68a56fc730ba9c7dffd039c978a701ed9f6acc61e39316ce53082c0dce04b4c0cb305aa53ac14befc5f65be4fa4bbdb79ab17c12698df9343de0b4cb3feb355cfca73529f36198d21da56bd343643a0d27d040f2bb7d048ecbfd1fc18b4bd27217c8532d63b47fedc445430caa18b2007ca9ae7fe9dae5bdb0371b897a3def628b0dddd3ba9b0805056caf5c02b7c3e44939b34ce646be0edc1289daa3aea0260643d34ebed8218aed531bee5ff772f2342e96e27ff488a5d1afddc3c5094a7f94f01c70ad619def58612f767cb21b3c742c43e94ff21b4f30348600a766e0f66d418b9f450e389be3ed10d3f080579248bbd7c72ee02985424c09c95b8af7229cc57e6dbd7bedc4aa2b08259db76736aa82bed4ab3198f748593189b0f5ddee1b1b8164f1f82896b458b6a5794170c056377b40e758c1d9f16a4b060f590d0299a3d6e8bb4d9046b194ea49051dba75771159d58d67d88eae6cd6d3cdab259d3b0422b1d1e0b40388d7007f73f3e1ff362c7bc785dbfbca4b4d007f3c799e8f4d11b806f26d82277f02ea2a61fa1cd5efac837aa29bdfa19cf00117f72b67c4df10a49a01efda625506de427d2ab9a514c9cf201ac86fc0692b66063aeb86b0b23e4180f6eb362b10a8dcd44f96983d5decb7b463882f7e0bc455c34998c65706e12c77416052bd36490796afdadf360ad94183907f807113b8c0533ff36b311ec6f8a31f1fe36f822ce27a580d2e5582a9c2991be1b43d0ff9c91447932ca726e57ab3ee076319eed5768decd05aa7ee857ec82b9132556cbe968f6ecc4013fbc49568c8c779d9a6d9dea52617e0f521c46d4862b47691038d9c36adcfe17a24a7f44fbd87114ef18bf1e1df13d15e060a01e2ff31c7b7ac4a355b0f5a3e98344d86c9510af6fdf934346e0b8c756fc5a14ee062d190ef7b6f78764e2063040bd09c4f7e43f1eb64f06d2e5c30b020d6c133dabaa9ebecad1623e3fa26bcfe1471471a6517de61f780b3082007676e5ff6ee9d5f31afa57c9faee333e639efc7761b0466f4c3b096cfda85d11700a4ec5db2deae29042dce8b74db1132104d9b9b0ef72962ddb6c23497bcc76e481871c322712ad44af7387a3e9498fe9a7c86ff73a012a2c5f0f492dc6766062cc296472f4ee671185892fd0704e8fb0c594eac2b817916ea7eda1822544a7ab2c2854e3b0c578fcf0d0b4ce731932af21a293e0c0e06fa5ba4b58dea2695fe4acd9fa6f7d1e59ec3657fc1f37e73e8e3536d7560bf502a103703cd815c9a10756da5d9e651234ff8d46f5f97bed85b89b6fb9c9c8026948d46dc5575679e8eb6cef8026aabb9a648fc87cc5e0fb06164cc22d6ab541caf5fbac8c6140d0fcb57719d45f22e055ad82b217cdb07dc986c4af4c847a8922be5d95f5367933b04b805e8626e73476a5da495bde018836ea5fe9cb34b3abe0b65885c83e918b5f5eebb53a962ac9e460dd6fa39795c68320e6b5f5e00638a1f18e40c3cdf75cc82794bf5f4a524081403894221f469efd48d460a8915721bcf0d6211949245cf7baa2f1ac65073409d9c1328e44142c9161ffc8d31ed8a387cf3dd0511cef2b61622de0d46d3639143339b9b6ed75cb5fa7c95011d878bac8b1be21be2e6608f040f76fe91f5b6fa92387aa081687da647712fa3b7b5e32ec2f5d22920acdfa5557ac8c071491bd4518c54f6d93bb8cde1a38f9dc1145af011c309c87c5b627690958fd466a4e8c073796f1cd07d844902e7e4eb56c031dd8c0dd6d9369c2eb4b89e4a9900bddc8114463c3ae2c87ddd1013b2defcf705ea746ff48d2821e5e63e033f4038cd842de7c838d9418c8e27a8dcd2fb9b88d8a0d0ba9c454d7a0a167a44cdc878f3274ebda260fe95a031c6d8917458d3882e11fc5363ccb034fca155ad29d622be4a047b3ccdffd362a3550c552a1b698e87dfba1774e527127017fdee76a91525993ff46b5eb072c79027148420fc958d1cc62e39dceb827dcd9baffcfc8b13888072827b0132cf943e31c71131e602444028740e6771a49615fcd00cf34ebf09bbbb2ab63b57803db54a1fd9c49957971d308548c94de5c5b6a5f345050ceb75708c8aee3c624e0d8290b2bcdcc918fbdcda7bc30d3f5f5ce1fb2d4e6cca86d6ec163f73858b84265baeeb0fda0f40e7bde058c85a2138bfa777c8be45da1c2b7915f94089074f4f22c0c1ecea9375ee2bfc23f90c521b8ed51434134abca11a9c3fd019244710125e9b7dc27661d23bcb4a40d5e87479d6b07ac86cfd91b5d89e664317336a2a6a80ee88b7b24ae1872bd99bd372d06cc21d835fd2336ea2ae53b7bf8a1c14ef724eba94e971524a1a290f9b7f265665b6195ee20719648b2a4a4a66c705705cf48b41a7c9c7f16bc2ae479ef1d5c23a4050acbdb0eef0a8c792f547952170a0b869f9b5066c06c4fe79d22379a5f8145c700049c4043215f60a7433955b2d9c681133149d845de27c355e1dc40217dae2c0a22c7d9b9e346ef585c35fd8cf96ebfcde2a7d4b7445e6c11046f0644ef7619e9c4bde19d33374061c7d55434249f4aaed4c7eb39a86f9d1007520d048301c9614943efbf9e55e11ea0b4462c9995c430ac4e7c3587df2a9f6d374580d0dbb48973c909615fb846705386c55d486063f8a0c9813419c9689317119ab6b7b6b9b72a2327bfe956859f8e3edd2d0e6a2e3446adb9c130fe0eab8dabaebd7593f9ca7b50df7c0f9643415b18f3c18ae06ec6ca1d39064b3bf8d8d4b841970e3c38c4e609fa7d6e8a938c371d7e4872ef88b088455715c5766126882cca88be8444a951b3984e1e24e38f87cc2d22dbb4459c258f7f6d9c4c70075061ab9c9a60fb23c0d4f5c9170c3368795acf27e099d9788d72e488742e04f779ac217f14eecbb4e3a41ee5d1b7e174b6df258ab1d8851c321c7ed74663e9f836ab08d8a5994ad7ea1be34ee3029b35550d653de0679b0d385315621282342dbda3abd445c695f67ba506ff9d4812a3a70996f26c45d71b9039ac4e4868047a396d838e3a625264e23178591cb966732901cf3960f0d83d4659b5ecf84e3948efde4413ae675d21a25e74aa780b3d4500b8ebb14898e9b8f332ea4524c7a560a630c049eb36b4ab1b4a77c9eb5755ff8a130786da3292383bc378ffedf2a7f3ddd8bdd5b7ff895608bc0c79ef3360c958d8e4854ac76dac7992bb69f6515052c47716a19bea1eaa0c0e33fa4f24207f7b44d5b48ed9ece05d5ca9d728b740e427823390c1d0d7998ce5edfd989c5d0ac351990cf8f291de748ddbcbda698052ee52cc078e15b7fb5360d890653c7b26458d0fdb813df3641f7f67613f5bd951d98128bff3a92d2b2c8b65adf282ff168af584730c3afdaeaa6550564655ad7700e5c34c6f74d091f1b367b210011788ababba86ba2e8eb6f2776c3e275637237c17250bbe31394a5a6f850c8ac1c9dbfa0f162b2c5e5f6e9cbbd7e2ecf72e7ec7d7f1f41b4d7b7c9fdcea4e6a85a100000000000000000000000000060c191f262a
+flags = ValidSignature,ManySteps
+
+# tcId = 40
+# signature that takes 37 iteration(s)
+msg = d20c000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 1f46df1c64f499ad5738cdecb7cdb03505cb055d9ce542e947092e56ff01ec2969072aceca72c59d51e93f1d7ce7de2540dfc1b0e2031597295ab90a154fa59e625c00ac9badd3eea471f51617673b9a963c8538971984ac28b77af69a6c1b24ba5ad2ed4cb30e9e4393e869af84d39146a2e2c8a31154b72d175f35da837f6089c2080776da166aaaec56563a220aa138e9c21b4d66de9490b8a0df1e80ac8521055bf24866e529943f65052f5be8765e1d340067f0172c33f9c68d10bafaf0b88930fd6579897d94ff21d74b572213b58509a29b396ac1cd0cc00cffd675cc6a11ef51dea3093416c12e994f42f24ade5725903c7886729d240941b45cc4089e66b8f995ca1106fea5ad912bbd3c5e47e1819496930eb044a273eaf6237de39b291a7d1e6192ee01f05d487437858bd1aa182ba2c04c894d5a5165f6336740de417f065360a70dfcbf4f86fa781ff6ee799a31887f37e9f7dedb12b2ee5508b28ea97ffc9cc87a0483c8d9a1334f8b29e3d9acceadc55e140f763a413d5e1c5d7987eb5abf3cb9e68838b2058e2f4df650386707b62b9cdc23733d5e58fd456f500a51746359378506724b87fe07aa24c192f56499becc194e128c9ae5268b22a6a22a5c5ff197881e880a13d52de0e5c6a7ab7dbbdd07d65cfd1806a84abe6455c4542d0f832d42fb3f72b6b26ebe1f4c306ffa6488509c93faeb7204811188223da6e932869703602b834aa1a3b65dff320f540be23ecd843b1e2901965d5805c46c711015a47ab82d0b1d9d12fd9fe8c6be4eaf89df00acb07a3d21fbfca442298f70ea4d2acd8edcb2f9e88c3c02ffb667c3fc0e2b2e778b908c206e35f6f3287a6ef9601f6340e037ad38a5d1aff1bb2e50472234a01164d5e213dcc19657c32174fc89fedb70c8e7e4a4dc613b820f43a57ffa04a9e00546f2918e1381d9bc2e3b19c3f79f74b998bbe4f08e47b79b536e737104af435b96a7912eac3f83b36ad6bf77fd29110dcb1cf6d4a2d422f26af1d77507383aca643095b436eda471cba8d3f97ace49ca048fa5a43ed7eed1de5c9f591d2fe1bf6b99d1978bd87032e27598356352029e5a16d280c07e6e702ff7ba900416a7246f0d0b0ca6f9bdee5686766a6bd63f0298852d26f6b9e6002b5c2a704dc6b82a29accd800b39c46dc534c82659bfd63c82d1f9f291510078a6682cdc1aac22141549c4d9ef2d6a5843b12e376dca96cafb5a359612662946e81ffbb6abbadd985077c9a1fe81dc9d81446ce554effe92f879811932a3f8ef2d2b5619670b9d5b9cc6c547b655e41233a618a3eac821c8a8bc427f913ae319e6339ad537121ecf3b22f153d93331f66f594c8b71157c321a753d0b3aede490db20977019de46a0652f9dfa175da85212599c5726fff321cada571524c6f2003af70dd9fa28c497a7584078a23385b88a08edccabfca847dd45eeffefd30f8f4df276486496b1fbb1b7e6d49921ed0f25aecebbfeaa9062b47b9e2a773e644e2709022f66fac061e012cbcf94324814d07d7aca6fd165f90298b70efc207c0367fd51f1f172df7d96c46c9ffe72c87ca3cb42e6bda26e2352574c6d6341c6058ea7bf9e5614748382c2047504bc97fb4f00ee120c8d17a2802f5807636e754781b325fed89cdbdcb41b279c11f7a0fbcaab32f569f8e98204aa1cc04ae6fd1d70c29f1a3b286fafb5002f46916094c36de8b8b0a6afceb7103da9522e515e0abd3721c7402b12a3cc93e31f81c4714a4d86c3215b8dfd201af03c5dbaf5f41b35525e13402d753fc371b9d46e8d141ee0dc7a04f382ea1ed257579d06cd68a0f675ddc5137e5afe71894483f1c184dda00bb12e62afdcdca6252065224476d28f3ccc362dd443e7412d21d945a20c4ff7f11054031351fa93647709ddc89ec667245d2b0feee0522bea979f3e077ebbf2d6a8fb861de7ec495725374b19bd3bdc0108b526caeda1f946d022651a1b05a71ceb9c3bd1eda12728f58cbbb27af266e019323a3dbd149188bff16f6f154e4ecae0f01504afd8bda993028ed478c7eca673aa1f33af88b5de67f1192c668f4136179cab9696b44173b305e6cfd30dc3f42634524cdfeb2d77bdc8d2f247af73c774f39f1af9745a46c33f0a4714eaf6f7f511f437b2283596e8aa6b55d3bf5a94d210f54b99bc642549da972e94dabd7d58d0ccf33fc53176afac3a0fbb6c653bc2e56351adf0980a14c312c38ec6c9160398cb97657800881c01eadd0c8030d7123f6982201d1eb4277b7d895246fef315e39996064ffb115e3b3dc50cdbcaa6129f6ddb2330c64d57e6fcc2eb83db1a4cfeb73177187dc8323888de1abd7bd8bfad2d184033292c21d3ce851d191535a605e3298c8c88f649b819848ad76d4b2f08ae36797ba54b5f3dccb32c8258a38146b6c86f175a888117d78796d7a90525aceb8f6986e4acec13281915f33a4207e1f4077d586c6b686ef10b2d16618aa841fb817df37968be3099a27de57c44ba8f8e55c0f1e401de53b8578a733e9e81268d462e2321af29aa50f814dbd7bd05856d890008148eee2180b8870ae846e07e48a6660202a6bd35a7391821c550e3810fad442b589ab6b3e0bca5d7858066260776148a778c3b9df8c391b72451df0c87c0c64491b2e5bd4e264575cf047cb82f20f95ce3101d92aed4834b98c8f0e5c81c8e6baf0ab3de870d9207bb64b6b99a395ae2de378f8ad233120a968e091b7e1aa81195284f3e9152cf211b1fa26674307a57390e56cb812e030fc50c9d18687f67226245b70e60ca87e9ccaea0e7d36a5d951a22b374d71a1b89129a0b4067c60317fe9795e4a0b41c4e03c3314ab9437a1670e4bae274c2e93197b2d7af9bf501becc0545707659ea737f9042d7dd711ebe6a801d34b3cd45d7c1275fe8559bd33d9b160744d6107fab7df7f419cceef355f513d30aa82e2249857bd05bf524273d46b9e906f557e02604210e34f1be3213b121994fd3fa86da4c5c43fd4bd213e76387868e7f3b2ade5bac9ada99c54d0e948520da7ebbeacfe48e2a8113d000a9ebe5c14f7dac827393a7ed2a5eb44d8a33cb2c010cacdce5b868f9ad8ee93183fdfa1d05a2febffd902b68bf192682a0b5a418bdb900d86365a25e5c11486ff4a2547fdd7cb24839c3bd6d2fb95ec390416dee8d5b4a1993ceef53a5f5ea77357674c7c0a27f78c483925df6adbb5c49074f5cfa660969cb506abce22c764de475ff9c41e064035c48c088dd6c69f384aa76aa21e2c0e4b38f4405adde76784b0cc331484cd3c954776e63a5808f7f973bd73ae418f8648a02c29a8033214099e4e65ffd33066913bb6fa1d5d360865bdb029896a8a5d5b4ec4ac8953e6aa02326d7da96a9067d968ed2e6cab00ad00eac6a296fb48bd16acbcd1acc02d221325e4124c3f3e69f6b0b825ad513abc0c7fa7899142274e2f8bff11704e45db46adf1c4c93754c73e8eb6267e5f69cc4c24b1a9bf1039a39e8e091d944c2981864e78290a87d9773a43898de581e26fbf0919b8a7bce07365e1df475fe75c3ce9b315b07cff1e3cbaca2b16f41309398eaf299b11253a015dc3f067a91157cd6abde00d7c69e9907f6c1222fed29ff9223f3761d0c4de8bb07ca4637ae5e0fa65f22a61af6dfeca7f007b28e764fd187ab52c158690ff734a8dd5f03f202707f27bd271ca982e5e39ef53c18f4cdee8a6285aa054683974c85b52ddbc3d6083b2d88adac9e2e4bc708f05e70e0f24d5b318757192905cdf1e5211b48ad256abeeed49bc752ca5c69c8c8481094ba4652a0a0d2c824b16048907b29c231e86852a806ff24014fccdbceba284ef0a6814696a2889d64c5e750b132d63f9fcd693a201ade06b92084107c6947efd9be127a8fc4e871cab766cef81aceddcaf89b50ee6f17652ceb878a66ceebceddc72b23d3c1f22de6056e27d56275baeb0c8e782151f843b4a90fa5f7bdbaeb8428620882db8bbb94e267961ad43d9f0649aac0a773e714fb18e5e7b3d2be2ab1b53e65bbe5b22ea43a1c20d56cdce27da15758d83d3b39536341dd59f6a174572c6b182bc20df8cb5739c1eb3cdebb72b8a602ea3b4e025a9a150097bbfa79473d056dbdaf2fc2b587fafac2b58b1bb452b2d62b815a36ae59a5a8902d7c63c125077906b397a4c73c45cffeeb57efd12c7fb76c568ec76f5d1cd0b151d946275b4a94d4908ac6ae08d272ab81acf1a4cc4645f299e8c84e8f0389dc0a625622a6a0f1d9a5080c918d2e1ad2b18ecbf64681d8d2088773c306537f8d2bf2fbee5c372b315213a78ad3506dd4b6a6cefbb939b6e0346ce2996fc6c2600d08760ae3aa1c151cdd5d0039bb071c71a70c0eef8ded0148e0368c79988c53c18dc8aebbadf78d6bb69b660f86a24a3a06f78445e00217e545d8e3323c2292d4ac683efd04a9f8c2c3a383acd7444d7ed39474102b2a436de7094bac40028acd4fc9d100debc4b9d5de7ae508068dbe40a7e71b1de99522252fc9d309f62229a5cfd785cad97b58cb7a5a5f9da5b5a50622f72519d1e6f2183b1cdc25e813e8645f0a541c0a3984cd6d551bf0e293239616769a9e35f94a1a4e8f52c2e5a98edee01020b1012306093e2465e89f60f4a51bcc3f6feff00000000000000000000000000090f151e222a
+flags = ValidSignature,ManySteps
+
+# tcId = 41
+# signature that takes 39 iteration(s)
+msg = cb0c000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 6570319fc14d783b583fd81dbacc93c9f25e209c7e2d1db45fcd193534299d97fcf05beb603478f83fdfbe3ec2bf9b808b20c98d8d72b717cd72a5185c448e725023a0563f98943926a79fe5a2a79032e08c393d2c5a05fb93c85b56f13942ac010b90048fde95b3b4fb15741143321473ba593377ffdf7cd22d84a626259ab652002101eb3d86125ffd59fd794d9c5a728d7d4b5cbf1eb65a1d4d8d81483bd3771d53b7598495e12692db46e73a433805fe7fda3baaad3bfc5c0095fee660914c85380a0663f0d6858a065262d2de624c46d94c1604f1f168ddcbd2bf7b771c0a251b9bea65c3526e1f12d677d9fbb2a65bd35050fd2d64c8929ae862b89da6dd0510f5b4da25b9367f0cff726c9b3f0b7db05a1e5613e598bd8ea4306fdb17a7898c5f8f3375a8cca6fd7c1621d1bb870d12fe3be62440172b4cc57f7aa8d15acb44b2ec4152a65a36d098743ff64b8e767a4013b089a9079eaa4989c6982f84f4fefdae1ebd3ed204aef26e367bc7a9ff803f0c11917b0aff5bda98bb4fd7d594d1a6676312827fedb48261521c891252baac6beb46bb7e12952b114c13b1e47b42ccd108f9c9772ced3341cefacca3b7baf0940225cdbb03e4a1c1f0a9805aa6a5e85e6772d7c6feb44a0983f20ef222bc2db11f9a755d5033078bad4a1117c16159cd963b2e7d5ec56918399e7e2bf9a60a1a9f5d095a136aa9fc0cd559c85fb2b5020c4cc03fba4c34147ccdc62d0419c5913515e9b21404d908f2f9298be61437222b3b54d4db7017fcf063c03ec7540b725e5c9d0c3b9a415c7ddfd795ca26eb269c194393b7f6aba85600c2314a2d70865db05ede213e128e63fc9c165d88b4b72c8ac5937127a1635b35a6357d41f16eca42233986be1b9cd2e01c0c584371b2d7a75585b8e2c1fcb0ec296a22f81e2d5abbb57ce4cffbcd0393bf263e2a9bdcab358765b61e5885bae17e58a647fe50cf09cbe6b84461bdca74341db00c592d6ccf7ce5ad746d03b822344fddb152a91c1bf17fcb75c7d0fd60fe208650493d5353cfa211d95dd4d516a5ed6ef5a5f53a83f44d45dcf8cff27f7fcd565acd684d7bcc3910c3ffb2675c52735acf3796400de88048f8d1df93ec618fee34027f2e45f6c96a67e43104eff82d53d7c298d15758d5fd2b466b9a00f7ec438dec6a35d6745265250b46c7fa4c1c3d567d1837debdc1c72d0d7e340b03d3a3151037e9c3137af1b80bf266b8282d02bfee94a01187aebe854659c426f12eefdef522c050d8b514255840f870e0694fb191e918b5ba89df01047b8f4f7fb4142f7942247344ccea2e724fb30e75f824b9b244d13b4ec29b8baea39f494f5b17ce1bc8b3584780ae622686a7934249131ba8165473c9e064c0b59bc0db04d92784976085a389c04fa2fd6b15f49c70a59890af0ca86f05db1128e39b36023700919a89faf4db37d96b29b73e7732b37866b90455322fadf4fca1ff26fe9dde33a1e4645d394f24dc38541f8fd7a21e0c80ba0f7f5081874a677e337c802f5069121d4df8079b9b1143cda5edf2ec1be98f6bc60fb26ac20012ce73b3c56dea37cdd25ff02398be4dbcfd8f681f5253da1fff4b273634c1bb6f3ed991c2728c2aad1d1d1287f394f0f9024fe4d805f4ecf059bdb4786c4125af37e65280fdb8df9206186df5870b48cded097379d3c3f23c0c5920cf0f5b9abd7af7d5966a204be229476b42bec5ca903df94dbbe1e89941ccf36d7aaaf4beae2ec1e4ff5189c4525db0e9f30c11dee8c8673360634d49e59f928df07481754df3b0d4b14e30cb596763f3268d1106fc571705c6b94d7ff3e1be58a68bd1119910775eae6e0edc89ef7e3a4fbbbf71435c9ee55539d45ae764289e673d21dd62e38d1e5ecff6a2d76462454a5f366a017084b9b63ed39379a15d1088c2acbdef377e78bd0850eeb278fa4a90154783d64657ce67ef0bbe4ec673e2aea2cda4695909cda72ef13a8be8fa81558bcefa0373613c74bfbd5abad71b06b98edcd4383ba05dd89261ab86c28b8760e68761e928530fa733c71ec1ad2153ce8651fd5cae23ccfba0ca792ae0285421139b49fd4e1e3f6b7e84c34b0ce9e8ae3cfdba198f325ddad28144bdc8d04beb45d311f960d1e0e730180b4677c01d3023ce79416e94df5782bd27a150a97ddb7b4cbe7feaf30733253d27f6dcde4c50f912fc1b01f899ce1dd3d48152e67aaf1d90731b3d4b578528538c8989f9f76911b3bdc6e36d9894f781a0c4c74edc0a4e102702f66f1c8261a92b38754291726fc8eee9afadcf4a256745884063faca94b2a8b98ae96b0581ef2319ec9ac54619ba66f2412e95d659e7ebe39a909408e5ea7901c5bc27c74709d0621597e9e84ac59befe675c51cd075a25efb4c9351baa7d3d9c983b27ff1595a2bee73952c7c0b6c9fc252c8c7086402ff025c121b92c2425b3428b743496455954d38ece2b3964a9fac4457552388127c012a26bc88bf6866504568ad32a742f87123d61525ebd1f4109324e3b57640052563c9eb9cfbe683b5a325c6e8b028b6b9cef425d895ea902031752a5b7ff96a2af6ee1bd719bb0581a4a4159c0c58bc36e74c7360051934433ffde1b6a49f2c04e93077d8231865b3621e272b29a6f50f7a2d059eb380b4b43c3155d7b4b2b6eac7da5b135ae5b419b5f3dff09f68251bf5fcc3e10168ed331f5f0d1e0fb51e5ac777b2eb4d9a2befcf049be9851f791a6f059414ae3001acee646a07a222884387f1e56445d7852f7db92d40662e91101d5157dcd7ff517d3b864b557316b1dd21706fe16adb337ca7782ed5bb21e970afd9dc16eb36e08b728bba8608b15c30875fcbf6f939d96c7056edf024af12e1583758a005e6187cf7c2e2af1167700129ba74ef20e3afea22cab2ea9a24f90807cd839b884016c8b624d2cf13917cf427bee7548c51d4efbd1fc98b0034921c72645657350d189777cc3bec591fd205721d704de42442d2b8b742f12136af848ae0ed3150bb4987e31a3a544b9f79456a2fca7b149a8f1802781206b57d7ecbbd465c40a1b4a0e6f3a1f25c5ee35855908a46e4dec78dd586c086c04eba75769fdbc3cfae0cf2cd32abdcfe48e2b106b8df9a4b98291de33e648efe6f4355ee437ee7cdc854a3cd47c616eae431d6955cb78548ce93caec1547f2745e32686d930929982fa2bd1a187858511218c7342ad386105ea90887f0919d875685600706ab5bb683e1dc5196d8943ce821a639a7931e175df372b81901af3f08ef4bdcf10a18127efc074d190519a831e8ccaae06a84f641a2f5fab19fdc708e8d63fd66106acb2a720361f9f03a3756542d9a12d3ebb9301c121aa30f757ce4e56a2243cb882f9d7df7c26a52fc8ba8a0af2c1baf6746851a9c2a3e65ee15d456f9395482b5893c7937198415082992b7d7f34a547d77c68cdb77ed32ab1218d409bd71240857b13b0974d045e2c89ccf8e6a62104396e217f793a990d162d41ce4bee49792940496930a20724c9d4949eac997d9c2e5b9dfc47b04f0cb0b694e66f4e9cdc5b121893f79e52d3d61fca23e667da19286537fb2f3a3953947206806782d669ec03c17b1c7bbd09b4bff50d91252707a1a99d7cd1689bc4eba2f985524903b19d791da6fffaaa3d748918ac7653336924c960794bfc06f039580fc1ddad59980d1818c7ce79446f35576b7397caea996e359da3a3b3b7a882608ade4a9cf32380216633da5c5672cb0aed04512b6c784fb4b165ee2b878c502a4a3ce3c8fa48723694106166736b93b5e688961092f1ffbf603e815aab3faf971f9e3281f784ffa3a2dc23a164cdc4e81783d5486b4b6132ecd404744b248df1c32c769329f224674435237cfbb2f9806ccc1ba3c8961b4c34ef2ee69db7f469072a116f842b5399cea43402679db4245512a95107095eb057bb6ff24b6bc418b8c63d7bdac31c6802b29210d3662cd27d57386f1eafccbaf3837e2f8413f66239f2e689e537dc017d005ddcf003bc5c25e6e7b75b9af884e1b164717a14bd10633b4685b6d2ffbe03d5f5574b73daf7eba0a800f8b93af81850bc692b60913e16ae210b552ea00c4175c4514218ce4ca00fc16cc098c5c6aa499a2eda2b39cb80b80f39af8dbed96b9ea9b010990b6524e0133babae543296a6773577e1bea164689993cc2f4f14c63647c4bc9fb70091e09c85aa3d394f445567dfebfcbb2ba19dd37d4c0810cb929dc9ff9d2e5d5320439c7e568cfe1d4a1fec65ce576d9981ac8d45e5c21ee9eb43340b3db7d4de838730742616fb2d95dc2986960f08283207c414d907a044a3c96fe6a83beeb79ceeb9724ca40e2f0f340d8d2c6e64133d619594e73d592a9d24c5b00aa1dc8ce4752c2d86df0cc79e3d81a8a1b1d0cf50d47207d555be63db4f1d87e818082620474b0f8dfd7084941b14e8c99967d2af0552cbfe6cd388665ca8de290bd2593d44e139d24c69c1e09be1048da389f7b32828162ce85f830e4e2aa9f81eeb6e2f3e41fefffd2e611de17dd9f35062039c2b940b809560f9b3a749f0f60a04b06e024d107991ce612d2b0f9eed003b831476d71b7d1f07aa3aff90a353e778e920b519ca5b8ff394183b7cfe4f8fd4e73789cf600000000000000000000000000000000000000070b11171f24
+flags = ValidSignature,ManySteps
+
+# tcId = 42
+# signature that takes 43 iteration(s)
+msg = fe03000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = bbcda17759a78276b6332f3f95bbde79b676072fbd6fd60a4d43e25ce3cb2c34c4d81dc1a278a99c5d5faf8596b5ad4ff060294922ae3d220e5eae86212332da242a2e77c78db4e06a1d28220e3f4a100022a3b461d263c43d9bc5ce2e3984e192f3f8a5a2e1f25bf7a5e88dac482888fcb8657117a0911dde6c9cff20561460d7378821a073fe7eb2c6328f52c2c74f6448bedd9bee33c9b4bd28ad3410e3af07ce1f9770fae92d8996ea766e27c95fa5b8021c735413e86b277727f467f5786972c3df4e1547a2b921cb265f48a4a0e866eae0a44bbb32be8aca8cee6a6f9bb60069c3e8949a7d6c448f84e05cdd726bcb3224a50b49f6260e2482f45e047c3f49ac318a8ca1d9aa730c807f286303e837e6e8c33079ab12fa20433860caea7b91dc629feebb28ffda66e1e8636b1e4f90488a9dab533f0bd1596ac3d3708cfb2d30a08636e411fcaacd7aeff28d2253b128494d37878e9bef3676843352d01e266068081be7da3abef9603c7d17229e57714c61e512ed4e9b516d496bfd6a58d17be0910b280ef2e0684d94d957f80dfa1cf3a45c1b65f5a0dedd946b09f6d0f5e158f1dc931e4d44639a687924f8de96f1b061132224cead2c5fdde857e6848052c6ab47283db6095fc94b2c392dcdb741ff223febfd0a637f2162e862f4e9647c8f9dcba2e1be425f5308eb1bc507cd10af0df3a559d1e9d9fe91ed0f82b71585a16f8444e2908f166ef8af1152969a73efa663fca2aeed5273e17e84e694373d25265b0214f90a8f6b610e12f73af764183cab7e99f5adb7fef790ebb61574a424e2c40afda048ca5ee38d0e50f000c03aa3da579729f92b71f4e79e6fb386326863a2c48289224a22708e8cf3541467f0456ba6f2009c4937f88dfa15c0ffdbf4aac6d7f677544380b87284e142b71dc4ff51d385bc78752e6cd9cd7a12f54d6e38c7b7622527bae2ddc033ef88e313af84e18aa357c5ad56df9b1cb5ae393521f21ac8f912e5dbac2fd51aa7522ffb927f21b8e28d4bb9a3eb58a7b3e7b63027832d811ff57b1ce25583d2bc70aaf8cf91e6f8ece51433d97fe437127ad7f3b0647ae860d88f9e20dc6e281bac2e8f090911d7d390c6e8547240179871a55e0e73dd1114f0df5e380c56910fed56f674db18914eff380467d3fd01f3deee25bc525a672724d62f73fe7c0ff813c8a3202de503e38ba7c538219a56a44d5719685de991cc996f2b483fb8c0a2c818378ed02c4482ae0239fd494249151ccc433013dc544708b0fe45d98a6e0a6528b88c32892f64acd551a7d0b7bb884f3c7a18e58b8722e7a90b904d21d3004a00b468a5f06f4f141bac688d04f28bddb7f2421f0d2e4db7a9d7be94959dcadc9b1252b1d8547fb14cb81b089cf8c4d99ddac314519bb4c9a19eaa3018e805c642ea1362243caf68b8d4972bbd2f9dbd4f571fbddb00b65688ccdd344a47bf616adfa9b6927f796e08dad32605d97a90acfb70d4b4f9c95285541a820ca6e9e959bbbb1b77e2089f87fd41e824de384c3a59c251b7c571c1d89e40043307d170a4e679cad7ccede16cad15cbab0e56c4005f56fda088434eddb1b4eb04af6d7f8f5120b33fdc19858ece0cf755a57f3a2006750ba15d687a507d4e5215062ec3431f78f168218874bcb785262068e0daedbc750c1908420f87eca0f02fd304a52abb78c0968330a77e587a4e087a0baef408d3691290d2edc5387bfc169f52ade0b387f218dbb7efb9435d93a3a7876aee38e0a49c9c69d9a98197e092ae1faaf6c8ec41804b7da6e62210c4cc673952b95f55b929b1a8ea2b3d08dd5434c2651edc7a41dd031212538635cad974b382b670014a9241a1e2820b2a74998a46ed419900cc1464c2ffa33f4d20823efae2452aba5149e825ef1955572b6671f3ddb3452cfa1928e4e5fe84fe875ba853b3a56618be73b3c530ad3a6f8725883f7e23d136f64ff7cb727f1020b1f4a394719a71238e3d7542a66ac55011caa451a3a5e101c72be22fed87f9a663c5f0b0a4d711502391d1edbe0e90215b00fc08289b72425a0dac72546b539fb9cee77d3f084a39cb8071f504ef52979302836de1bc784b58dcaf8a3bb36981f45820a2cc35a29bb8a6857e7fae2e1632a857db40d1fc5bce39356d6c428cb5b4b8401aee5165be259031acb0af2a7433c41819a1c44e74a311707fc15ba6d4f0997873bc64358a5bb9fd4aa22b1caa9c030136e2b5f5b0a999e7ce009e3713dc032e4fea8f516a3e0ac277a36c29b5e2bf15cb4ff86110676ffcf33e4b7973a3bf248c7f6c02c9f091da8b85380684ff829bca245c3e3e53b67bfa4bcd34f0a598b5ef09bff00123ca0dad69518a765419fd72eff17602717957e3ee3df45a82a573319d6b40dd6beb7051966577d41383d97137eff7db84a2225e98d014f2111357edac272a89a7c50e0184b27d6a6ec611f70051100e9887657cecad1f34867e6d144c360e9eec53bff7b8a8a4ddd9cf254e5c74054bb8eec9359ca1fc91eaae77a9487685a209ea960b43a8cd198107b112deff2391cdc326300e35473a634c96d933009fd172601000c28fd58243469bc7a634c462b7f2147c99de6a6f03524f15fdc7db81357ebeb1eff404fc94f1c6e40912ce2661d8eb9d584f572a6152ff88d764c20ff024ff22f6f13605b3bd380d0e538f2b060ec6afca3fedc244e18f16a032eccf437f38b9db144770aa247e0fe7fe7001aedada4cee551e5e37a38b64e086e442799869b7948493526179807d628867bcc9fc6fff1a8d2a7203a5f0202e00fa2b7a851892bced0e5b2ef90501df3984f1a28746e6584fe944f6436daf003a6ef2613c20982e3ca9191228835ee1102e5fb67d5acf87e300a6de21d7091d6a573167b0a65f2dc79f979f5d1ce55dab07e2cb2567266f8e90ff619b6174110372f43baffe24e3711f114be914c0e01c56756e2460293281cdea5cf3321f789f64fc1f19269471f7373242c63563c7081e70fdf014ac4e11d1648e6eda56bf964599f7f91fa5b85f9c012236f700380a45b12985475ea38f03f1fa5453a782d059bdafa71344bbc2c60eec43d0edfab113d7f8761bf37adeee2ef88a5ab5060f004de5d69cbe2d772a627548a85618899a2f3d56ed971c8ce87acd78feb6476eebfc2f50075e984670a31d45d9a351886fb72cfd889c6c3486a824b0d6829d6db49812095873d9935843fd0433bdf9d4f4ebccfad9fb57fdb7f4bd73b0ceb1373b6e55d564f48f2d5d0036850ee0e04f824f45ccdcbb735dcfc5cd1f38c1238a28119008cfd6d608bc816d1222a01cf368f5871a9c25c3d6b023c235f8e2cc4e32bb365abdb16f5f9959236aeea856c562432129c1547b845ff4f143989e5d699003453bfa694577c9d5b9cbb21886ffd65b3b1d799ea31562264493d4f5f00b4531e132f7f608333382c23024936851e1c4e785f073a3441bca8823f8f56fe8ee7b484d09f98d898300f83974b9e39f56ca4184063901fd34837ae0269939d598131b93e68e982efc2e9f23183194d5b1bd977f886be2f58f7ce51a317adb1c29dc153316f7054cb17df75e455c1bdb3556e008a66954ee1c082e23203d89d8ede425dc355c592681fb20b8dc5d9ba8563da39470c3a86eff22c218f796f9594a0cdd39b7e12d2ebc46e30650756f656241606a62875b89f864c9bb7ec6f22a3086377146a053b373e5e6016a690c5eaca8c923d17e7d49cd2e81a8c2b41fe008b742983b48b973a2e87a03295868dd6ec34ea1cf51c359d5ddc8a0f3b480b443f9aa05ff0b98da9bb79595708b9ccb683e4580d20b933b19dc025f7e8037ca6fa70260a0ce40e354b73304b0840121892d408a19ede4eeaa311166d27e711deb9e4c2f22486d01db58a504caede74e928ce2c39e68fda561cc748cd20dd5930241eb700a177fea79a33f041c72bb5ade325eaa2f7ae60d9a9c65c314ed410a94299f608a9fd3be24f427f682bb27fb32f9bab81dcb492605779267ee0b7195ca1b7c52103692f204fd4cb665f279fb3a4a392022b8736bf5af8480bc5f766834a8e1944c83f41185d2704b6938a5d9d03263e3deae764d5e9882b7b2e4521b379d870d4968eec4099cf9007e6519809ff133b36eb2f728159b36934834990096418c1620dc41e53f3eb8a55c6657687a1db8e5756c2a8250d8ac9d08e5487ff27d75b8efe3351318dd23b791e580f09feb7b13f4d82fb0667fa66c32f6074bddb6843cccb7a6cc7769822dcc0ab6487f54c49d61f2109b47cb2c87c0f6f158298fd22f1b9fa39ce57c1ec04b69f4ca155f8ef86d321fc3bfd52d26b58f9c108c729fa5b5bb3426628610ba05e816f362815b685a14aab96b63cf2ee717aa975ed4d3cc7172e17d97eab68a8e32220a59279e543b2f4894fdcdb792a7da257dd004eea12cac243c7b9b67b0b035b5d9bf5dd54d7e1fcb0a44c7a18cf45c765777c3fdf20bb4fb29adccd24952047234331feb580651282e1a523e96e0d6bc35a50cb42ace95edb1eb7bbdb91e499d3cfb463b61ee61f851bfff32c944f8b1090e7e3fd8d02f05740a840fd6b04e969ea2b6c3f9fb7086267ba3bbdfe3ee414994c30622254253829aa2a5c6d4060c35444e7f8288a5b2b6d6eef8fafc0000000000000000070910141f2f
+flags = ValidSignature,ManySteps
+
+# tcId = 43
+# signature that takes 44 iteration(s)
+msg = bc10000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 7886b408e355ac8eed58a28db36fbcbd60e3c9fca1f77e88ab399acdf57fd12c03fed5333307614b530ea3446cfdaac07ce1fd5310cca41e224bba5c0387aaf0091a1ff0727cb4f62bde0cc681d1ff59294df794196d69a377bf46fcd717c44904184f0b697713bfecc4ebed5e119f23deed3de861965ce6c8c7573e45f29f819c5a67f858edd3a223ab300fe97f3a019a9ec43f24058ff10241ffd008164c78acadbe329340da4a98b07ad384d87a9dcb82dc30f341f699e1d6865c00ce0d33533f52f6a3186add7d5c56555ecc7a4198550103c46a60e9987e00588c8720f4bafdc8f52c76785bd7c7ae66954b1f89a3372df91d963cacfccfa384c9dd1f00a381dc16fe205391c60ccc9997f50a05d7ec28a41921001228450ba221c9887c04f6c127a4b979e595d9d48734147d261587144a702ef180e845733abfca6b60c628e2cdfbfe9dc9e5c310cc4a9a79e9fff5c61af2e9b8eb25df72fac662f3b0c4860f5cb30ad2510013428c18cf2fac4fe524a86d600460d73bbdd287e470bc2c3e92df0c132dfde71447583dbb0472c2f6c6b99835d351788ddd09d2209191ba821fdaf237851d2d8698ebdae44709ba44358a49924ed5df96755b30fe5bd467714860e92d5c68c22eff2da7024d53fbffb6f04dfda5e9efd44b529fd708dd6898311e5a9bd73d2acc5518afb2341144fdd63159a2d8c092cbffafe65e43fd29b0e6a3183ba3eb0f4a0f393d4b096a195aae986861e7ec97a70d5553941e23bc96b10ef09397bd938f47d32c6a4efcbdb45c75214ad4f43d1dd73bb4a929b25e5c7fd00b55d16a0fbd2b4cfecd03ba0d94feb86837d404f03a296514cdfaa9dbf424b9c3344a84f2a99efa4d273701c32780a8a0bc568959dec3cb58ad52010253eb1096f752fb3eaf9edd4269cd53195478d6d9ac8229aff4efa1a7b7b924b38d9d5babdb6efd62029d21227e5c49fe344980a900d395a5635d5a5d5e4e60df03e587e5a69e0ae1114d9128e8162d111753456e0e0e9266587873f81ad81c3121eaa4f1937d5b2f3a36680002e81cad221678122a456f0304b36bdadf95de811143b1daaf48df48db876dfece80e7a02590a597d30cb02f43fd0ed854806d8e586785c01633b5e1aff69fccac11eb74dd4d15d4c7785d0e8de88163c8e05c07b2dcbe2ae0a6001e4b696751ee80393036d8d2f825d88ef3d7ce51cb2d24870eaef40d3ef91293457319151efc02403b5ced3ba2cf0eb4c825230e8a8e89f31016ca19d5cf3cd20d2d5b44d9748afaa034f8222d5cf20183783a26728df676ff8f55caa3f17df71149d1d4e9f71d058a3d1d6c2d4e4d2030d31c795c2fcf08832a4a8d1c2b2297ea3081a1b6c5c74e297b576a3b3901b071c6cfedf84e619e7c879034c36c0759282a271dc4c1444c6603fa2225aab788a5ae11aa242ce8dbd3422d4274dfc807812fa1c7d119a6d43a9e35d4af818b3727d165813d65441d2d8b42bde43d56d781f5b9b341bfcac73180d88c933d9e25c9a64cfcf07f3e03f89797156630f953e8380859f37c6c630fb4a95b290fcbd85b9f2e05778aa874a4936e10638d21fe3cfe0176191399ed293cc6230451a163dcc2a525ef130a8d1c2ad93ee87682ba8e061101bcc332794c6ee2673ab298982318a3b68d10dfc46e5ecfda4e1164b35dbd296e4bec9a01df32704b76315ac1c5c660b871f5d0ccf4065d8de4c1ffcc8dee4178bbab66f1b02179e6f73bf19822ca9fb284021afe756259f051c11694814b8b019bdaa9fb261e8dedcafd2d69b19d1f96f1bc82ec77ef51031b96dc65481885763c5e6746ff0bca40d1c375be2b2d4cde654cca8415cb2a83a66d216001d692c4937c138e6e3b1c18c54c02042f8d58033fd49936308d1377e5d88b98b4429afaf5e4af68f4a1f5b2e039cd6b5dd3d04777e65c1b2abaebc20549251188f697d1c7373a62cb7b08d2dd367021bce2b5f4a28e6e93d61733eda231de2b35c9e2c84b8063e9128671a9a27b21ce5b2c6196769c0837fc1f815439bec0536f017f10803f5ca14f1280988679d604e19330f625e3965e66d59bd820cc15a3ff8f28692381e2477453d153f5e139855e6ede385b5b7d72506a3bf53ac3ee843a8dadaa8dab1e2f84fdea598e2c6aa4e3b4ffc58a78b53171952d7d49b05fb6e59ed5ec857747f9b1526a256fc0f048c0c2e239ef8dbdaaf671eb75c56309f56397a3515ef8b696128c08cad511fbc86492e55feecc19a4c854c40d36cf7215d3980b7243107caf3a3d7ef580f2db196e1424d35dbeff8277d8c0b0e749e26735b78e10db19c8274a81b1168f09504d0a2aa90213a72bbb6881064db6b488c8c4bb5620b8c2793e853660adca017e12815b378106a88e59505be0eeb43b03afc211103f2d20174e5ef5772b9e87953f9ba96ca1e69bf79939d6eb75833dfb233d2f7fffe6cd1212ad896105492ee863883382403d0e32124e8a5fb30dd3d5a44c5859c2f7a1ecb017410fc7208145193230273e306622c8cff46393a73807cb210ff8c8e9bdbbf474377758214b4bcf6d2d45ffbc3b7664cb4c7f4d9dfe2fd8d76a2f9a09922d6f5876a09fa45617ce12e0bf0ecac9ccb6041568c0e1da7b023ff02542caca8198844eaee7144d535583bc7628c11b3c02d285ba06445cfc96149af917ff7b23a3a57aa9593d458d10e48c380396debf3d00dad69c5e234ef2dd8f27bde03bb8a214b8d8500e5688e5eb75ff30d6e0ca650b283d726096a46376fcb77a9ebfeec2a1a796193111f491e7c25e4a817aaa8333d4485a73f6646ff228985080376264e290cdeb8abb5e52b5003b6bdad5e941012edc370533c1773e8182f019c140595cc28ee1308c6eca317eeeabf6b8c630274327ce81da763cb7adcc4a625f0c2252d3fa2e2a75cee7d1b457f74760accb952e364e68b300e509ad72b06f64925a410c5ad29a55433b926d1cd6fa754587e1c761035c86f1b0130acf97a82a89b7a9a16981d8c451ef529dfeb7a8b072089fda297efc6f795fe4e91c49a00a5388d19bd553d0dd2db09bb53aaec2f2b1db95d5f3ed9b470d8e8ca43c83e04aae5865f84f590b58e7fb9c86b665bcac31841c31b965622e40f5d2f01bacbd2cfc9a97645bb303968c2bc041074fb9f80ffb6f7c4ae869942a1b8537c5bceac69010991cbfa28eef201b6f31bdeb3acaefc6a5fea55f8aed6ce9160973d621879ccc6d3c96921bbe4e3febc7e9308f0cab473874812051043011b4c1d73476592a5fef111e6e858b88fff4c03b99fb22b49817a7153c2251f4524ebab30968cbc0317cffd227183c3fabc5281df4467cac43f17d1ddc40047d1ae3935e354334ac595f0b756a8d9d712717f7ed6d83c0a58364ac96b294f17a411731b4d46535e20995af972cf729f7a8c222237e4aeb7cf8694d7432c95c7e9125bb03b0da402a24dca423eb97433685e698be8d0555292a3af58a36c5f23ba1cce6854e5cba1bb1d6c989ad55dab142ffaf46a1ce65d73994132962c6c50868bc697b2848f6b9f78ea71ccd9122cb6686775d7f39d3245ed1fef51ab2b9d6c95201169c1200021a315aebf2501460859b32feed4e37709c1d3fd82c495c69981043ae54ba577276e46e155f568b7efa9db1cb204a6b601e4562535ff4edcd884a2ec25d96286f560652c5ac73f12933d9137016f4fc3dc0ced8957523109cc0f97ab47d4d29d577c2618e88c4a4b6302cf01242a6af14aa1bfa3a287a3887885b8d0d276f3b113b1cd601f6e78e5b0a4aa1bdd15a5dac01213f57fac75bd292693bef59a3c1dba65d235c6834568f9a25e0a9c8150199f378ae482ada1adc67af79177d7e8d2c08e743264299bd2e92803256c8f7da050c4b8e097b5b8edfdab9c3d6fc8f6b2077d99f914d6fa20c10b65391be16b6bc0ad69794ee5e6c68b722765b12542ec9d93e6f622eac5a75551c0826f95c69a50e6ba8e7b255e002a6e8db7233cafdff1c0e3106b7126bff22c577874a861d86a1b323eb3936a4cc429e85023984f7940db34bebf39ba32e6242bdd78a9e707ed14e874dd9b93e76cb258b19a129a4b7368e424a56224187a3155349060e8bd0c0f71fe47a003314313a5bc93e774eec2def8a26f48ee2c84860b08e3cd414054792e2cda188d14a7a13ec99dd4641b5ee12592b312192f20ab577b1df34c445ea1d656c9c7ab466344bfbd4be5a4b548bd201031eb3bb49ab4b9c81a76022c413d62836ad9d5355f6b69b9215f9e729e8dd5cb9d9db4b2cda30928886ddb9ff89b48c49c4490abf9dbbd75aa0db55409ee084ecf6c0b604fcb6691e3fd8f54aece7c783e4c623920d52b5aa79ccb6e0335ae1c215c2198c0e65d0399621896009a21b824686114d958bf5211a4c51d0890a376335e50442cea9241ae3f6c50f3cb53088aedb6658254210acc27796bbd7ecde4d12f80db93971907fa13fefa7203e566c63a121a3bbe61c486cb044bd94b8f14d172469160984e5cbf0577d581d4500a9b1a94403de6f9dfcf7c65ecc9f92acc734cc6c0c59c6df459e383b73c265f337a83b0bddc1b0a494a0e67c7fa2455766779ac3080910162627c1101f3d4a545769d6e36fbdd8ecf075c6d9fb300000000000000000000000000000000000000000000000060d161b1f20
+flags = ValidSignature,ManySteps
+
+# tcId = 44
+# sample_in_ball requires 1 SHAKE blocks
+msg = 0100000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 0d0d1a7af2d4eff6d4af7435a634d28ec5d23595fe7a72cf76d30f1fe16620c64862e4aad54fb78f8ea752b1e43e4e5884d7226840beb36a76f6a9b1b7d50b0faf7b8463f57c66240e06a22f5f3de4fe35c1bc6b5e42ecb1c0758069223e02f42efdbbbfbc87b4c0736141a70e6dee41bed27fcfdcb94f4213a0f99a02beba309a93d343cc932a6fd67fb90d6de7a81101a678e6d47d8b1c8bd67fe386dca360be789555196e2ff8704c175ab60a8bf3c9f3bbae1ee5a128f67467d21fe8a62e5f8ad8127b8d7eb37e43abc963521e79d0f1ed57fa341f743246fe69d97afc9a13824c79f7f3dedd286f3de739158a0900c99d9c8e5603df109c25d993f634582c832a79c7bd8cbf3ba07fc4d9e9ca8c1157434515538285417e6424209173c6dafe54c37e4424de0f25454b1713fdc3e72d01a2acbeab4d7f60d17dcd073c60b0ad5252cfa137c138448c931498f61fdf8f449225b07e7e0fafafb1f274fe5cbaaa136e62362877f643c7c94946075e8928ec47c04ae54d2085f7f2b1ef0e46dfb31b9a19135b6cc9da876dace6f61c2766b463b24c0aac5068714e348dea399986c4e8b8bdb16768e7ab81e9ea13e435f97e35d268bb679071d5b99d0d2f1526833e8624b6e4ff1ba3f5af2b23bce93dc7c2c4370cfbe698a3297005c9fde7af66bce7c9ef68337b04d7681e303a824e00acdae2ee3eb8c3e7507e46d67a4cfcfa9473bfa6334f2170911bf2ea75a3618cac939d11d6a778101e033cad958aecd89feabfa19dc6dc73584917834ed6552966f7bec4546ab24c643db25722b3ba412de04e9195898388d9ce04cdd9343da69ac9b3d3155620dde4052e9e30529904f25dd6233bafd4493b66844c8fa5d831377dc3ff8829114000799801d46586dc2d2059f6bcaa43b899e089b4f3a5ed4e6a7f1df5b8d42fda456a70e10b2ae14630f27e4c7257f5df23ad032c1edde44073585c04c1231e085591771cb64aaf62febedb33df56bc62f4d126cf8be4332ce4965e6e67d0be7871d81dab963c576ad7123bbff510f282bf66c0c1ea04aaa05a7a4d410d0e7b6ed22025dcb6ceac78f377306e973973adcee776ecacaa560dc8008799b306d5e617b2f51159b1e5fe5daf40f8f488f077cc55bbefbe8f5a61c28ae2b1493272dc6a4e34854f73f74c3442d9c302f96b6e721e2956ee0bcdb9999ff36d74b8d4ef036afbdaea5f977da2b94d0aa9136abd6dc26348873090cfe3d4bdda4d962f9382576bbccf8ba227af4ca8e017f65b469d2e3d35132fac40cdf03bf8f6beee66fe9214e1bf684e0aae75e4141d9daa1c77ef409f56424b01acc7ffda11cb9bf64a9aa71b484b49b9ee82dd8178dd4adc91d8d176f83d2cc7516d2195917fc246ebdc0dba4cb5a54ac6169bacbcd79adb72d593fcc3fa289f1e4bffb4612ba7a3318e607b0b27733cc70a2e2b4099056731ecda3212d1719a6902cdd6a05bd70d389da1dd0d0b4f6c4968676fe33c6e32d791c85b16cc9f4289bdd09acadd9f902d9a91f1559bd40eb6b73da7a623048140f73454e4ccb4ad65038109f6eba9fa01b0a3fe1af228e2c4134be136db2b029879e101aa8ab264e554818450734eb5a900497d906e20d36eb3848b092c778054c5ecee767c00185ddea39160e4513be858bfe5c7c7febf97ee8e2b2fb477bfb10c11f3b756c0da1d87e3121ab4454016b36fcd8f6d2633c73d4528221974b3f21ed3d464d47bacaadbb4647320bf0bcde38b0a75b6c3aac8b72d3c2c179417d05858ae4bd72d9c16713f7c116dda3ff8164710d4d14964b33b00b268007f8cde2eacea5108fed77d7bff70273f351b4e160d28d02576dd5f3fc3ab264c5927cddb6f9a81b852d24842bd5db5c5f2d893b2f013fc75426ef2414bad1b845ba7833c88a8ce76fe2644455be2ac1b9d1e31791693fd65f1ce35fee9d17b42b444bf1277f2646a19d76952b3fa3846c3d258f9a1835a709fc21472b0f7de7a729111e850f27f88764b3ab4baaeb6cfc644b9b6a552a61a7286b5af8011ede05845cb9359232f02ad8b3605b00cbbd83069f26b610378055c004a456c7c44606125b7b076b3f955117e03eaa514da82a9650e8b9247902c5048ff776ecaaa5ea57df61d726ff1754d4b1393933599edc49617836ecf78cc7dd45750b666b73150496e3999e339243f5644d5a3e57c6cdef2ea6c967f8bc93c27aa56ba5352666ab6dbccec415f610bcc76879793935df8e594f5c6b80dc0adcea1a1d5854f447604c54dad61cf0ac91d27ef963e6889075163e89cdec0aebf32080efcc58280b705a029511f21d311c1644623f82039e096f7e1d2518928847abd479840b65cf10d15851976e47444d64c6d4425310a3b5efe9b584ce7aa01b1f79d6e3092486f91fe75288736e852c0132561a7616f21b7713ec53f0dc53432f53eb4ad778dbe14664b55553ba342eaf94e9f76320f8f658b4c5173ab938fbbfe20c9987318c1a5104efe41419926218d30b0c97a366e60f6d1240e7f601a1b119df36cda11bdf7fb531a27979c9823efd2a75c70387f0296dc7382f570fe59568afb406a48e7c13bcb40204c92cfe13b3980410b229767a5412a7db82845da135cb6d5b2f9f5b22518b2115dfb02115fa1c4c3177a55f5c194450f0f0a518df7755b0b12eb412f5f6ee2256bb95d2985bdf1257769718de9b4f4281c3eb3407f175c0b43fee6b94b00875dca0983ae763624bc4e84e9a78f778dedef5eb078ee87a34941005c15cf42ee05cafe098005b1770ccce4e59d9d3f6eab9fb2673766d9b70ac11cd6d8b9d00809e58a046d95ff62e78a8e5525af54094c907019ec661600ec2c4ce5337371a1daad0e37f3a5cdd96a3d985456a588b5c1f61f36a33c6444c3b67c445bf95e9035cd4f77191a95a7e4c20715e55dbe43196809123499148a930321e7b2cc7809cf517fc4b2b0b49e57cde4b6aae620fe8cd0b38358685ab80061c1c126a1f3a96ab34fa957236cc6c59ed962b3bb006a1c122da796bf6bcf7dbeb64f4339c63d3a437b5898be19f6ce62024cf9b9c89964569f176fb697430e553a7c0936056183223fdab2f910047ad5e64098a44a2edbfd3007b0b5e4a5d1e6ecb44f137dae2dfc45e96f03e75c900f3f84e2653efded35a3c8b27e310dc361c0740524e52a1bbecce57d59c4913313e62bbb63c95a93512bf09228918bbf921cd5c62b8914b7142d6abf8d632c3ac44ebb6936c638d56cfaa7cee463838a921398acbbcb44bce621bfd81fab34a8ec33810eeb89fbc3cc469990089d2291e1e873b31398f2799b8d62d429b998422ed634bd7a6de8e991ba8492c001fc5df8b0014fda377cbc5ac74e40d50773ab5c2b4d08dfbf3cca590a77f4db0380fe7af822207aaf99c38676327ccd9aad50b2d4db5aedf74b1cdc50c484d455429352ef0aacedcd9792dc26c66081c28ecabc445b6f1f547a24403e18b0468c8881bdc3e82f7bcce254944271c3ba06c80555c8f3d2d051fb6007507eadf8fb991f45c0c9e9ff08838a425a96d72fc20d642c2eef45b4fa43e7b380d8b6648695c0b9440cc66665435ffd3df10fd786f7638e13706f6c5651dfe5f125158ff3d1da84cad23129e11d79d0f95548318b1c794990174daa895e4b984c175136185be534ed6bff9231c215fbf6bd297e24f528cda523d62b44aec15fdfb36281d804625db07567fdb06779325987f69f16f19df737d5f65d1abadfae70a1a4daba5a87e4ea3a09751ece2ec21dd24f719b1f57e795819689c8f2e83beff593735825a1ff8e4e4df9d031dd66120dcba07e6bfbf1b0946b3585a5eb807c1632a75353e8f7b8c4f8ff0af978afe2bec80d3b94917773564d7efd92a79cad26360b599be49bc657b132b25f459d58166110fa626cf1731be419105b4bd235176d60efa939fdd8dc213c695674bca27f161da4514f646f33557aca06189698f2953674ee73be89e3fc4c014877c6bec370ca1fe446686200a94ded3382c4f4bc58cdc12c354a486463959cb91c2ea0ae965f912364c5d98acd40ee312178b479b540875fb2a0164b7134564bf7fabf59add993b08a904452152031a784cbd36e19a47d4c9371e7774d3433fecb5d072d059b01ebd3279ceeba80b356e3628874008d801ed74717c70a93411603f1faa3924414665a95c475ac42de8d616de8be5c00fb90e5ad13079e54d1c7000905b62742ed70555ec406b49cd4aa6ea68342aa7763530b180e4f790475eefe1094426b7de9e0163a4990ea3494909c6c6de6b7462d70c8f2dca3152d81c93a8c184b0c54da7fb604f835df34506731774e6b8f2361586ccc17f35c8e21795ccb68a5cd73355c98a17c9ae35ed22f6c0a36c4da30af96ce7347375144a80dd851fda4971f20e9d6d18878d74803b577af4fa8f34c05b380acbc5282eb63f9345e4dc1f9f0cf8808a204ec789ed31ac9f009790d5c9b7d744ee3b29d911014c12b53ff691fce0ae5d53dfe1c7a367e694fcd2f688d46758ec308f3f9736701dd825153df883c0dc539c9dc3dc7dc9a9a35f453c306fc57faf76451bef45889e4ab0a4a6dbd377996c7cf80e0e7192234475d93f3f813197ea2d3fb112c2e97cceef2000000000000000000000000000000000000000000000003080b131920
+flags = ValidSignature,ManySteps
+
+# tcId = 45
+# sample_in_ball requires 76 SHAKE bytes
+msg = 9e17000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = c900c9555fef3710097fa1a132c5d61623c554c4c837d185b7f3d1671a8926062e094cd3680be899883c036db34e39698133f314f6148dc3aafa088c06dc01009685f1a0ddca3b0311f9f521154c8a692a165c3a488419c4745412cb06392dc6a4d12286627b6eaba2f376a3225ea85f5890df2d03ef9a565ab2f94c99c25d9239bff7ac74e94df677e7282c0dd44c06fc2f26b33cfbf8da05b50fe725ae9de58d6be87628dc41ca774c8ce106428f012f2a806631cb5c763c722e04fc7e44f86fc75b1398a54412af3730a3c60e47d611530b873feba32ba4b34081e02652bc006b9e106ad6ff4b698445e0f0514837f94e4c49f52f42b6d1b655f90254adb8456e903224fc60271f280360a632afb017b5255b6923eb8c8cbfd62d24643e8f100391fd713b27fb7e8adcef58c26ac4953c3a73bb6d12262f78228774e274283f8b810c317d9ec0eafc05c6dfcac42d6bef8f8963d17667f7029182dce0566041612a7c9e6a5a9bfd953caa1e88287a20a83985ee07eae3c5c8aa408667556f7e19d657fe11036a227342358b7e42d5015513ad8ec587a5f19b33ec2e06a146904edb381ab11b1c0b0cada40d89cbcf5d7c9f4e15d8d7cca01ead1a66281d8e5f64ddc1393c2a1270d4a97b405d4d21adb189b8eb44098902eb48b50c5f5d1496bf5d5ed0f74e58b8aceab89a7cfbfff608a8a90d2baacd652115596e72fa1740848b2cb6b5bd8ecee89aec60118f16f4706edc781c6225daa0bc8539d82addbcb8810ce2687f1a171a3aee07516cfd6697c2e5d63629bc43ea3ed4a982bd516f3f448a50dabd95ac314c92f92d468f4f063b1fff69dcbdc3a4d8d21c01deeaaef7b9be41e934a68c144643a99ccceb8e3106ca28e7b0bfb3a9c5e31e33a822573db60e4a520e8f2190361b3387ca038c0210fadfd294bf8c1b302657211a54ff4b159be164680d3eb4c9abc7d6b07c2b81a5085f4759465f95f367005fa33544d56458c2b51bbab862135745a22d994e30692ca39b8fdba968b3766bb627dd6463c54487b81a27cdf9b1daab2a83c6af174f96dc454feea043bc0cca7ff9cffbe6e1ac04ec830a0b4e5d698681c9ce860da61249f3137e7980bde1cd4eb0a545c10f725f26a9e0d4e59987c4d516c28e938290bd88ec1729a553f6c7e52ce9fcc402fffdf1aaf47def0875c8afcb8167a530a94291cf107e095f90d92998f4200fbde7e5ebdb8a3c9282f57c2efe94ccec3b5aaae61afcb7892f0b20c3878e95b53a70f21f327b70555550a4805ac6a706d4bc408f73016b1045e2fe2c2be0195af8c44855e3233f99d5aad848cca7fcc43a0b5a0b37f54fd8d9f24c365011448a85f7fba7a9a7b4aec183bb680198d1626e24948027081d8e91aa6cce10cea8a6314eec2c74787cbb627a09f4ba7a691d963c8c026a2c1abd6a14059ff57493e5bf14c18fe982f7921262c85f80ba72f4dd88eda886ac13e63a8bdd9f72b04a781ea9e4ee2f58a15acbeb2a693a8f61091c02aa0932154817aaaebdcb7471b9d0b4aee6dc34f2ca644b0114b6244579f77e096e121e7143b77443459bd5cd1ddd9623fc5784bf34267bcd78068a0b2225f21ad1935ae44bcfd1a23ab4d012c8ffc9276d4e0abb5f100b6a90ccd7ffc73a44b5169a027b2f92f7a49573c997554e94fd5a4bf54f4cc473e794b60cb3a0b0c5ccfe6263c4f91d77def6ca8c0fbf91e923234c8a2657d91f6ed08e6ee04b3b2a62f29b5f467168d580848912b5c2c05386aa52ff2999d6f7d5b142cb1bb78a70db30d4bdc850d52e0febcbe452966f5a5d6f5fbd28aa498497ab03da0b3b773bb2849a4f1d6ce50ed0d356c3142d33eda4f07907c6205b52cc66d49a5eab02d8fedd50847456702f74466bc54d9d12841e65c0594bf55539c177cae24e9572b1adb5b26310ed4ddc2a14421bcc142ffb3a43acd612df758abfd95042fccd186d3d9c5b0cee0857f37231bc9f8fd80d4db3259465ef11d0679210394713d99bda76d6ccda91d31a287ad749a344050a9ed08f01be70350cc2991dd4dccc04ff78b9c9d339d097ae2d828afb843418c82a707c0eccaf9a3b412fc68d5725a31a064112930a8c6c7350664604606d4d1f817c842ee4ff032f69ecaa0cbd49768d13d06835a07ac388da3bef18115fb096ec01d42966d84795551b9ca8e0d11734161c71713de45b545695b14cf2d883e4cd8524e9da3f26f390dff3a23b605e24e812c561af01ff087c544af8e1b4aadcb4ff5cab5ec1d064cb9d340a8b0273f178bdc8b413ac88cd274b7f0c1bb67f758682e31376632e6cc2cc4c16705eab7b1fdc1127ce985c0caca5818f661994c7a6cede3ba865488811e0cd226def609c0a857cd2fea55daf0e116d18d0d1ab393403ea1393fe4736ecd5f0d31adf6f43eb6be97cf58f8e5bf5b54cd2ac0d2a444e8f5088396fbd587048de2fd1ce1f3dc69e1601d0f723b843cce8cd9e6144562003e5bd448510a3d385aa231c12432ecfcbd58279778b93019f03e78ad39883dbc1907d939c1dbbf5f21a76ded80efce94867de48fb54e64aa0cb93b2931fcbb7cdc45bedee33e1552c624d19b116dacbf4bc874274bb242cf3ed50489d7dda672833f26d7978fc0766c44ee270dc4c70f16705ce3af7eb4d9acd2d135dbbb3cbd8ece1db7aba3e783c853f1b25a30c04fdce0d8382b60df232b3e94d976b66b356827d55046a317dd6ebe6029472dd2733d960dc4b6fd1610d4ce57e45c48ceb482b8af3ff722ec97c9e569fc066edff9be4df60f66e862c06a6e04d7401bb2b7156f8b85747e9c51510d5cc6e0ea37bbef7f8d8124fc857258e91f9e1c182eeff2c4644fa079527721e846ef62bb01ac56d61ce40a2b3ebe75c0b19e716b40a83933e9d4a8a3f31c7245a5cf049be097e7a70921b850978f9f4205d58a9e0360d8421060bf32eb6b46ab7e3378e9c28657c42b14a94e2b658d2f5d3cc3a5e13f50d929204fb4d66230d2075831646fb3775d7dd99755df394c81ef115cbac093c69c735cc07f8917732dfd564d13454f617826b23849a73191b7af7992320ed5ae41b89ec7fd62a3e42bc48dc987ac55f8e552d0e056343b80981c9c2f2fd2d05ea3c8b7be5bb115a686ea99917e8569160a0fac13b7602d46f29190c6f80f69e46c519619d8178b7f79ee1bd6f87afd5beac38a3842f734bcdf6014052ed8769af35ff8a329b50942d1c99134fc0c31bf5a57a26367c0e7d599e5385dbb328d64557d6034122fb8bee15ed62d8de367a1be38f0c62777fd1f27438fabc01b186cc4c045c4c9aca26b64fa1e41bafcf859bd650836826c45622892ff9605b61cdd8ddbf59a4a1bbaaf8f9cda01545f25957c2636668c8e9c2c88dbc129d2633b6dd8152831996bdffc019fefbbb0178a524e4b0e69e1c477bb9007d679725f1ea440fd94ddf2ede8b6f909ff6de1b45603ecf44e63a64d0149599cf49b60db5e21af00b3aa99afa349e96a57cea5763a096d97c17b7cfd6148fdc89470b1873ca1bbaf004eeb665159d57a7a0dd330e560caae5ccf348818984dd5b94ff8d78931624e771f22f0cc18fa54a5068fd9c8123218c4bbd8e8996f128ae39a10118840c63a5d8819d550aef6a11252cdaa0a39936de328c12c5fea5e7f2013b812510e8a75492b5f694f90682dd8176d4fed45b3919ae39f90c2bdc568392c139f85a84940b5e0ea2a79a7b28ac3d5a79e32e545f7b9de9d6994a6fda228030f74288e967d9b60c51fcf047af3b4a86a5163849bec0d2b63b2f89ec5c6f8784341818d2196a7e8c98881aeca2869088e7de9afed497e4535894022eb36fad950e396dd1befe453b14e968b6bd9f810393193e90774eb4131b6ae211641b15f13ed5482b5fc29e68f91046b1a895c3a9464d1e699a30abb85afbe40af3e33a1dc7e95f93294b3712ca8eac40326a32a7f6470f10ec9888708be86c90122df4e3a8da7778ca05a187539064ddf9908d7b6a82d1ff8905dccff610c9765953cd67e3fb4ccfddfe3009fb6f2674bd99228ee3613715897a35849a86bc0a38416540de2b5343c15b1d70d2a73da969ef67d25484bbdb2d9fa7031930065d4487ea212f9fcf7fe9b044d90572f98add754b8f13757651f065b43325eb0cc6a6b72381347f8d56b99876b0cbbd936bb2ac401effb14a5e828a2d74d12fa8aeeed3c64fd15868903920fbd0a4134f24f3f1cea1122c7cf9a5905b70c2162d9436c456d240d509169a67c899b0256d9304c064682a986272d12b9b4562ea4dd581e468b65653d290bbbe6fb42c79f26e2a12792ba8c18bf59f6fab262c2fdcc5e1679b45e8e5e400683b8bce46d4aa7401daa837fbc0f2834d84225fd82f3d35e10f505ddc776a960e3387af22681d85e6a5f3a0318fb133ffddd7603183dbfa4d36fd66e8bb2adbbbd72ccc3f003b0af15f1a03893439b3953670c1a5a9a67aaec332db413c55896f9ad05691ac236ad7a01338152972add9c221a681b7350bb00d365b5b88d04923d118d547ba7bfc74d80e4a54b3b23a9b09c79e9b368ef10d9e7baca7249beeaf1df2a3de73d79a670ebb4d6d708397efff2f303d44464c920631a6bbbec2dadf1321303845585da3b5ea063d436869aaf3fb00000000000000000000000000000006070e162028
+flags = ValidSignature,ManySteps
+
+# tcId = 46
+# z_max below the limit
+msg = 8700000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 0d671077c3e64cd312a5554e0d6728bb10120a34b3de9a7d85ce41ea84fc1e02695340f707cbdb4dcfb3d6f590978c29426c111719a47a90d0223edb934a716d7dea3804153a75c60d56d0bd4334e2d7ec9bb9db4393eaa9a98b1bc37d9b90df162945841c4815b17fe28090b7305d2e61c3ca0d6f2d7a6e39c60378f043494d541e7f47d70a6813daee881ddc46e8244df4732c82b2d32ce01c0edb0a19a31e63516f0da13228ab4e2aefd5b9d069329af236a971cbf554713cc6484ed052e7826388f5f0a1fd8b2bd1b92421edef80478f457c899edbd251d5efbb77eaa4549f2d923d7fa5ddfc3b559af16a8f690223180ad08fef97e992d5d0e44af54714484359ce1a891bdb019de9ef87b1cc626d0c9a09a2949f15095850e997d42e45774e5ba9bc56bd6e6d19be2ca567b534c155905deec8dba9423469fd25cc807f079dc7bf2be38a350904c4ee3f4d271c90e323fde28b66f91dd47ca7aa74cc3faa9a5f1d314189985b135aa7e6aae41d23a162a8af8e51709b54265b51d9527fcea0c86226cfae391a4b0e18634deae056e8e34ad7902f48b099242e4663e2dbccb9c145dfe0d780590451ee139195ee493c7104792b63260291da3957f1fbfd2e8af9774c22bf224d547b1565759e2437fe48f5a976c2f273316acc789e3ad247266048d19172a16972599f50d4021afbbdc6e4b6f03ab79e5fd4e550f8419b9b2a8ce174c521d48959f83ccb15d8dd55a64b12d5c8d6037382c3a232c89a8b56318f1553c9844b81905d1e00c46733f24a6d5f88b67c0245e206797c1bebd61576b20b179c2ee7092a978a710c74fa32fd648ffb7ddde487309f14866d3466922dbdd6228316519cf1338a0e544de4266fd4d9507216913dd554c4603e74d2b5f8e4f2114059f24bdd3ca44a88d88007fc45d571767616aa45bafd6ef4977bf8459099ad4434b8a214207289bbf59438d0760bc46d555acbf6595a5e5e9ebeb9e175d0b6c3e4b37a99d1e5ab0c07cdfe8145344c9e44fa1ca5d77f28db5246953e4542eaa186ceb249ff12c15f6e59b1b22ad003c974ca59c29e87034d5fce8dd5e03a55bc2c3dc22f3298ba4a0e2c3f85857fbf1d209af66dfa242ba7713b7f0d5b4fcaa73c6e6af62d3676c77474d88c451e19520f0b6783052e70e1f51b5a140b1b1584fac8ebbdb76d0bfe41712a982b82836c40ec4396ec084cbe92a0e925e798a4dc2e91fb6b07bde510e2f4b12731c4a6335e2762b8d65eb1a2ecf0d2a52698794ac293cf4a9c936d6eb21167d923daa11d3c112e3670fcf486bd40baaf37aff16314dc364ff74172f9deb94a70f8ab0ace974d6b22a15415476beb193199e8657ca7e4259e883c8736a975f9de2f7d3a2ad67dfa1169b4b2d83fc2c64799aa36797afb106970ddb63867eb8febcaf43efd467a28212f0f3208a2e9bf8f62dcb849091fc98d634796515e1db40f58d0a30d74a5d1056dd735d30aeb07f63c44614e131a6f0649dd2645560ff7ecdfbfa2700282d3d297054d3ea93657e5a39bbb7f2f1a563fb3f6792482d6afff95b6edf1c38e207d11e453b67996c378c22b8627bf04143d60e7858c07766e976b5e786441dc96ca44c584a32d00e64bc109fe2e0a59d039d73ee82eef1a50d6640c7dbaa4bcf7f232221eaf31c51de48761bc66722ff46a34ab567d562e60322ca9e501f8f4a7dc3eff3d264d59647c0ec9854d0c0c9d8e2d063766870976b4be7a52018cf109113a2b8b295f40a0604d0b31f0ba0cb395396f9ceb29c470d24f6e6d3d3dbc33ee78c2c8f3c47dbf2730bc131c9e1c2f9937dd796f6792b1d5998970b14876080c8e7f9035d63e246ce3e67f60d66e662d3f76e8195dd0d2c219e7115d79283645d0b9a1cf59d1e7e5a5e4163e11d755a2ba7975b983f40d59fba6956c73a79b64fd9f7c975cff311b0e2b8290f51ae2d086c782895878e68dff23bed99e4dbde108b46e5d0b6de55045dc34090282a5cf3e3df31a4e9ad37dce65585a6c72f3ba0e3ee15d8f68cea8356713015a001fef56079a8b4b934765ade73bed70aedb27a08c6f9dd0bef90fa4c7d119810b3e07dac414444df971824104bf43786f9337628322238e8886cf8ee02ec38b2c4ae42edfb0e95d3d354c82da8eadf476d145adf89917f619d32f126033e816f2b53fe8116641998305f48e86062d26cd9720722ab85aea392c804a3e136a00513be362e433eb1a8e9a5904ab3131665941b175c135031d7878c66dac7a010edb12c45e8cbce97837f122b2beb2159052313fe3f51148198b6d3c97851ea3ea26b87e92b7a16abf2c2c8c3a9717bca590ff3cc6d062055f14551e03895c64500eeb25f87e219832cf40f3cefda3d59bed69a39e5b46cf8f3f8a6c300122894954b95b3b8d995504ee81646da4301b6914066b1274f96b21386adae3b2ea22122315c59be277fd309e81995a84881954164ae1a59addb58c9edaadce1793320310e3dc955267341088e398c2d8397bf839833cafcaa94582e152b8ddcbf2c4bd45d17519614bd6de3a08a32e83492c2ae1285d26f667b41deefb6d401e29cb671281e2e06e79cc1ebf470e444da552bf0052db7d087907a06a50b633a6d0461f0ddec6ea2c71df74d85e3a920a77cb43c02f3126880febd1d20794315a4448177a4d2ffac04ab3aa0980a7c413c7baa6f8b097ac662bc104a4fb928e72602adbc4370795434ddf9f48f96a9c6a9227781069e209b826ded8c5239d0609f24b71d31f564dedc6edee96ef862e2a9fd559702a49bc61173023edc0ba2742f1b2278c85887953941d5a58720a2e2120d49bc3e7d6a7f2f00c6a039e137c77db5f7a7c3d43ad2eb0cd564af81a7584ceafd603e0a83823de3a12df635b795dee53cd93145df3bb8497da2b683e7523d859319dd4ff19f2cb01763e0c41574d584f4c5619f52b4b4cc2f2c74925043eea26754d5db6ca5c8b639e79ea8a09c39d1d4c436c0ec849450c1b66e450b3704fb8c9587297064fda4cda8d6be6e10c9a6bd089bbebf8decb1244fad182e6cab87fe3f3edff5c13efab840183db736e701e51f560c1e14827b42d738d37d68ffeca42dcd5466d50841dfdfc6aca437bcdc24884d471bbf20a6921a743c536bf01b2b385fed9a3f3626798cb577bdda634f8c158833e52d121b343dccbc31d3044092ca4cad39e913dfd32bcfee874afd9a02faf07ba7108c05c4beb78c050d5539eebc699fda08b360ea334814caf4fdced62f87c47d36c1fff5d8865992101069fb6679d3f3ac87b7e6e2587214105dc25f76c4a6779a1a9e6022ed9ad59ba3a7b4bcbbd0d63d2bc0674c5fe77fd4fb6a0ebf65b5a73bb87cd5b36dfb71e7a54ce2bf8d9b6a86057536c4a7f0a7c5820828a0280adbf0cfdded491fddcc8804eaf9fc5230d59906dc7a4ce514117f1a9bd0499dc065ac404512b0315a6ef17794bf296d9d371115f60a94015da2f50cb9ce4123b1ec8c0c94213ad8b7018dfa325e182a68602417c95eaf70789d521c9d3124621b36cb022e61f211b29baee96bc013270948a601fa1d3fc66eda9be473b3ec13fd0bcd59b06736e8296053a4758c7e7e1afc5111e1d43dd199aa708d95e548ff21c2d3e4328d43c9637baedb275fd9cda7d1225ef0d40864e6771e53bf5fa836121b4b6e9db6e1021d7bd93e5beef63af89b889ea83429abcae0bd9e1a079bc35e71ca54152c281e1a27921ba4e6b8f7594df32676d4762b82335f1097a92f49a86e5641bf1d77175a9476cd42f90aab18671bcd7c35dda9a1cb5da2f66bb80a5187abf85afb1557e0ca6052c63b6bf9627604823c3b6150eebf657089451bd04981691098092dea8cd5a26a693f0b38f42cdf42f831735869a15dbb3d0c322d85b0ba40017c4cd72e1a60d972a0d8f254e48fa6fc702a555f0f76598d1de2975eff26371fe13a6ee48da8252053ce0396f352191b416ee2f94dc847196def54f311f66896893495f0a013c04c442806c3d4e1f6320039db9bc1d94a51515344249b480087c7e3e937ab3124254c7824a99ca6b03f165d0fbd026a641ecf9e538f3aacf2dc6cfcec150aa7bb45acd5dd9f20e0a1d6ac2a2254a365130fb48f69fec83699413f5ee3e88b678c2b2d1dd316e5f8fdfd5a344c4241719f55e17f2ce1a4658067065efc4a4f970db9f1a52cb0ce7eea901c451ba95d6f2cad66610c33c9e1d63af3310db7e7cb85e3523c79dab34eab84296d7e2f610d23c4c9ace9387dd0d77ac3d37f1a35c78c7c31a7e55a9a4a95139fee0339c2647a56b32864060c43b9aa9b62888f4fbe09053dd5e5d9e71d311911f3ec864bab3f3ffae8c8b790cce1d8d45c3ed020ff01a827e851aa090338602920013e0ce3453104a8abb8e69717b2f7a9c1469bf0c23b79bf38c73231e7eb5537fdb2c677bcf1ccac3c37310738246641f4647721e7a3e165a187ac1400a0ee967ec60dad51eec6da1b858985345da8715284fdd876292493b21208d3d305ab93207c67180d217c22102011f824c7b15c92f2f32d6a39f9d9a17fe2874c84fc4456d39490dad28388e4ef46c602db21ed43054beed2f8ba71fbbc9d03c6dbdeb11327883a7be0c0e1c315d747c7d96a2a5c3d7d8000000000000000000000000000000000000000004070b0f1523
+flags = ValidSignature,BoundaryCondition
+
+# tcId = 47
+# z_max above the limit
+msg = 6e01000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 289ccd0e0e58656b8d32556fae8b0a317eefaff794b013ad8a43234658706a2db12585faa83808a733a3a88655a5d7e0201b8bfbbdd3bb545dc306806a26939aa9c93ba58f46ed8d9c37a9f6e0e0afa09f6c3b3f3abeeea3c613d122700fc91e88ffddd965df08430eb37fa28bca6db2886601e075f77bfecc67e415d1ba783a01c4776e9b96fc26a215084828b0921c90c59ef766bebf0210bacb23b7f26b8e572bae202b9131e725e367563c1b36218d63f8a2988dacbc73f4a46f313b97f660057bab41c1ddb99df76df8b22b16754c333ec2f141302bbd2a1e967c50882699860243af42b6ad5f368d245823a71c02a338ce037e337d4d8c5e2c2c7d54436ef786878e1e25304a27058d89e7212f688c50cb701395a5c2f0cb3310c9dd48777f80edb0d2a99a91f0a444296c1b4976b6161a9a43e5ab551b135e0dc66be2f06aafd8c50c109d413215ab4b39d3063e061cbcf57d2af9ff36f89f0c80d483af483673595824ed4c4c71a02ab8c4135a6791889b8e43958a5b509332e84b1380991d79c6397aae3cb3dc522a7da89e925b189a840c2ca9cec4cdfd8bd3831486d2c0d15b1b9bd44684a8aee873806610e9ae0fab2c61e1c0366f981d5a42bbe1d9cd179883f249a7a155b80bdeaa1cd017e9d3e0080ad03a93f09693da8773b1256b22c20a6531a9957ccff0bb44cf0ac3e5b0438949a589755d516fb2b596336c153dcbd5565b6786cbee057a41c10fb762c280e850accdf476392b50cbeb2d8e7f6a6856887e4a2098cd8f4264cdf39972add334a5aab45002058f19c6506069d7acecc184f245a25a1d242cdc41d52f2b3cfe23ba797c4bf87a33cb593963179e5fb08ac5edc5d4521af466cc3c28e6a11ab2f5f8d06d668fed5b09a7f3f6686dca450467c8ce0b8e81ef605ade33349dd1582adcefec138f004df5057b2a54173fc587ebc3de699506d19e61380291fd59e50a8620f1c9c2424f80a48cb1c342534f26f50e52ca4056c315348dadd204467bbb485708007cc2d8477c518047c42a5c7bcf83e763297a2e4e0fbf547b4e3e577c2bca76762b35d3b849966c9a0e9d5cf570bedc0ff1b779148fa125566b67d14b62421761abb1eb04a9fef43c08d9dc793585fd30330d3cb1b4651ede3121e836cf427dc6f93b4dbcd1d3d0b096be780cf6318aa31d23f6353a86da38b34265b277b7710a025e0e91b7133d08f5ded6d74efc88a4f40bd256a6c6f86d4b869e27953a6c1a40d19f76311b48e3be34973e65f17afe1c408062da2e2a8c474c6a3cf32adec928c4adfd9611671f8b04538f7605ce6afe0d7836ecb06913555b730337bb19a222d3a7be5ce8ac44db76a79120ffc7dfa81c07590955587e61828f782e176003dbc8fcc38fffaee982f61e3bb503ffcc44806a23d3e480b4fc5d17c630b2b5855d67e884d6a2ace9e0ce81a7a0d127dfba247bf7b90634f03049d7aebc1419eb4e7b2ba3303dfd3a28fe5d42a73a7e190df163cd241bca717679c819a5bfeb11ff46e06c46c4c9fee4005a466a9e8660e01d050fe1c103d73bf6927e0ebe4c14b314b3d9300362b67ba5f0dc334a334eef48fc248a7604269dbd9dbc0a380af5ef51a91a48689d190d152213a818df7965e4ffb87b3bb7b65fd2ddd35e947789710c898e95b431c0765cff907b61a799d65e2cc99c5696777e703d3d6459a71901c0080c57c636d21fb0c9d1846e356e0e3cc7a6518ac177a61cac9b6ffa8b72cc77bbb86165303813c21c750f2b930c240e4e1a3a5b1801d1c8f4d8e4ed2e205e9b99fea36b0a26e015ebf7dacb547c17a847d495d5d35828683f1432cbbac95d3b5c77b151bddec5fdac911de1f096cde0baec71e5bafd5fa93a4a42185a4f324ad14a7165a38d659155c4afc72e1591689da8f152d2c7836f3ded5e31931b3a31eaeb83362f2f48e04d1951c06916f557289b01ce62592bb97122c110d9b608a181141b78e5ac37171f424041ac9d7c56e6d85fc635279d81bcd9ca023859bd152074b07337cafb0756a2532d2c023e45cb48fafa19030b0b0d79aef3f4576e35ff822e7cd014fb9d298dfa6a7e8dfd4ce2c52ccb88026a620e985a170535425c01695f3b71bc67a9c3bfde4b7035498378c9fae3921a087148cc61ca84953dc6e86e07f6056d9d16f2b4220fbb1b905a1a89ca8325e3d7afa5c18533bd478f47aa69c7d0d1d1f75cbc093cba23c439aacd1911b152107155462ec9ccc893448620ff2d24ac6d4c0d3694de957c53fd21d8f7b83e7cc2ded752b61ddeb1a222fd6b9576e6704d0d1adacfc963cfb5844df234d7eb97754a1c559fe81b4e64907166ccae5f581a4f8b90bc63e478b02a7d6194e3607a1dbce74fe2aec7eb63ecf484ba30399fe1315e59dc2c97f9f6cd188164cae2623da7c83bf96031bf14812612d8bc940cfdce410c7cd5f4668764051b82327822fca43cd49f35db19e1d79765ca4b662c8bf1bbeb180776867021054c3461619bc477c70e6fb36b80feb206a003ed12c3984ecc328d4d476b66a402de1a711d9895700897679a2c6bd8481794ae3da3bf011ba67873757eff29c135085533139b01f3a83a5504bacfe73cdb48acfb08357397c7d612ba4811fbbe51c9a18d50cfc530616622ca8e2f06801473538286ebc46a04c877b72eb8655b4b6c5cc9bac27bf6490c5f593dd020c5d30bb462023381cf1fac19d71e9701c49d539244e5a9922807ebcb11224cf0ebaae37262184c61774df08726981ca49531e417c90e51df7965d0f8508e525bf9cf4c6027d74a11f8141b777da862e50af076572f4c78026c7fd6b565624fe0e2fcf3111b3373f854bad57006f276588c9ad57bda5cb5a0e02e659cd0dbcfdc174a1639e6c9046516d916534cbe5aacc933ac4abe52295c8533a4a1051b5cb4dee48055e7e1d1bcf2154e1ac81a54f1f54fed9b920ffbc2accc896ba0ddeac418a71576aeb9abc0ab3a0bc15e57787ce0fcbc868ff2545a83e27ae616f2fb5939de3b71bc9ec5a2f064a736ea3e4afc1c8b5996f0ded8502c5a16317daeee9ce8320ca4346b5434769ad9b8784898599508e173d7f14d1232a2f84ddb1fcfd8de75bb0d59f8507214df21e89762bebfc4030bf0c9239cd7b6bdc4085f1a71e732a01c0e2024d13e64eb0b582bbe36a214454bbb51eea590ece8d1f81c95891ba8f203ea52c068bda155ea6f992ff1eb276a11c584b5394e562bf6341829fef1936397aefe78264fa7b9b3055c3140cb4635f20b3e4dc809e4e48ab4520253330a35360ed41ea3eecc0ed7c4f77c6d86b507934c8b800a0ef652962d6d4a5d810ed17643e950e3025cff4bdd524c8dc19b9a56e3c79c6d5e106e4e199968660588a063bd3ee369ca6f8c0e7f2034caee4ae4824ec663c4fb485c81df7ea86d7226be80d5e63b3782076a9bcd0f253c3564032f7c82c22050607ec01831f2d5a78f197681365bdedbeb6076037a88aac92733087a110dea7d6103ffe6b8596d70032b903d1e619494797d6e56e133538f80a91d305b07ff4ff718ac8fe0452bb3314f89555d81526a02cf189326861c4248a40866faeabe04cc1a7c88196c6d4fb3fe2af385212a3cff398caf2be65e7576befab7624f1e9f71c285899207c2efd2bfce2ae6ab9fcc6e46c42b028c857a86dcc944739ac4fcdba51b16dea3672149f166ec8e5e6913bc355208e3a73b89480e83890f0e4331aab624ddff3a103fbc4990de6ef8a2a48eeae86d7c6fcb136aaa52860e41a135a50395e12511635dd7dba11281c410173ab8df4408c9a2b51b9c1e0ad9655062957ef4d8f0572afeb829ec443825c082d67866618946f2962f6541c6b5ed1528cb410521e493680e9d937a50ecc0c50784233358a534e8bdb0c922e6a89b179d2299c47c26fd9f3c783514ea19a87b14694211e55ee9e4714bf5808c4da9a9605b12c53148e52014b5983e03eb47755ad4770bd54dd1b071c9ed0c4cf24103973b815d267f3512275e066f39c2c219c475018e0191c5d18457a2f4f224fad67deb3333620fcf48f4b4df62f358960b56387a501e69ace7d6b438af7550d6831d58f0f642630d3ad590c9a588e25610a963ac2577f67ede49878d87a30e69da83c6ee600022f87072b9618137c029ec6292d03b21f54ceac63f740c5a5b938b5c28cbe6720d55bbc43fd9cf915bc199f32911dfcc8642186b06988443e1c557a4713570505ff98b0c516db185da76eafa1aef72732816ff31f1a829798d1a5df2218649013a1463984e585952ef618e31ca2208b162687d7cd723e0b933fa373e3d795355ce1bdf5cbc74e8b2a43b72ea36dfff3cc7e21a4e117829f2f547fa475cd776600967b0c0db0bda413cb905c86eeee28bbb4f1f1dd29bb283a43cd04d2661f069077989a1eb7fbf2c709b304cd9fc3277f86d85b2012270e6fb2d083a814388622548c999938f1d52f3f9f532a9632787bcf8a63c6ddd5e5cef2d19e635579273ecb0b43670f12bf0e93793ff345afc2c49bfced401152f334188310c4fa83f7d3f67b6008e98d1ef9dc383541b466176bc166a0a1928b99443b94c585a5c71727b8096afb4b6dffd293093c8ca0e1028667797cdd4f80a154a5d94b2f662748bacf306345265c2db0000000000000000000e131c23282e
+flags = ValidSignature,BoundaryCondition
+
+# tcId = 48
+# r0_max below the limit
+msg = 3c00000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 8c5c7a82862de1800a34b8201c791d6c7288225427f7deb02f52748a35a8ac269104927b4913e528717ea107ef8605f9b7ae265f798846a3abf6bbe7bfe0a4d6bef6a1f6b49d40b972a5a1c28d19db196f709b4d962fdc646a7988f80d5af74b29adf34c7a1aac065f639925423d37bdaec428de53efce1db750fc2686af90ccc9e2865497b7cf736829981afc749e85e7e9b5044a92b9ada3740e3fb39251c5bc400379c4ded2615bc3deaafc54e34129b5cd1f4e9612964d353546ee5dcdfba712d985cffec78e74bb2e6c12ab45233ab42f19aa095ea0082063fd0fc8e1023ba1bba2b4816f011c644be94382af44cb7f40c27236ea1e1e6f49ded751927fea168d5a5b2f238360835adabeb4d1b1ce12ccc6c1b8e1e855cfe323d89c34a1a683360ce9189db6a9a93bfa5f70b7238d7f796757d547c31f786c9bf1c91546b325a05034cccd586a6f37879fafc6973fb02a540cf84d1a4f4c3f3ccaea925567b9571bdc116cbb14c884fbe35974980121f7d1e6b0413fc3cdc42dd4fdfa4c33d2eb774b3b188c3a2f2ef07f36489e80027bf5a9e3b607ca45839bbddd9370c9dc98efabe00635622562ce4a12c7c6e2271876f880b8d8a9a63e5c10f349490f982e5215dd94bbb74bca994aae7143c22285c5a15ab950ded53059821a526f6f10fa3feaac97c8b83453b20f314e8cc509fde7f5daba0b2cf4676a9286e1d9ff51f7674decfe2ea54c11a9562b34bc15577cd591088e5abb0e49c152135ab4d496d8f7abbbedc1f332a06d7ba9d9a65ba61b1bf3bf67f9a191c96be2b51d790f8dfa988d9e69a5ff9484967d5fd33b0d7e004a73839a9603dfe2bd2d1f838fea9aa15c9bb2c0f2dec02d17a3041d6e4291bd7d4c00ace00ee1f4a6dbc5e4f76fe39fb4ed231b5df55f7a42b9366396816b5c372975d5fba004a20a7649341859903760ce8fa444945136f9ad67017cc70d3f6c4d8ef7459f1a544dd93d135b888ac4b0f6cee4daf45a436e967f76ec477c8efecad626da1070ff4ab94dda6bf04d19a5391333a2ec6033e780e6b3c9575e9281423489db02201ad6867b3e36e1f462e6b196a2410206a71073f19d707ac63320bade5c6c42e2998c55da602098695db63144da3f9a9f38b53022df84ddf8777a19d678659e44e35f3d8e069adeabe7b79856f8796453f3a413b4ac93d87ddc119d82ff235cad30c561138fda8b0310cefdce08d4fc7794e964df23d5f153a711fb73f694ddbba93cc63902fde5488d318f5359b77ba076337ca43ce59c4a9012ef52d86c34411dbaeb3fb2edb4a70199885d9e04e019c4a406817b96d478acc29f5db9b4cce0da8474bddd09619198d97b3609ac1a3161e75ee485cb6830c307436ee1c48d80290cabe41f3d4b881c4af4b2c2d82f4b6adc9fe6a1532e39b96350f7fe82a23bbd1d9516e1d25f089cc085c5c72b880f0306f73b5ac1fc805b0dc5e80506e06d965f55485fa61fe6e9ef0338e9de6bba5bacc703eee361de69b3264c280d75ed858f736ce9815344c859ec67a95048cb5dc03e328e9d10ebc6d3dffce0765c3fdcf5861c5de3aa7a607bf78334e8d7ba00daaa7ade8f79060b1e57b9d46bd6f448509934debd4e23eae219e04e828d316b77ef5f15041f3945b1a98374d1c47fdfec4e4714cdd7d2391df6670b164805b0a95b2f31d937446a058a8f3a8e968d0da62b8299405fada9e67e001b6e30cc4687120fa759cbb390237cd7acefb0e474dd95d9d790423bb19c390f233e3f8b7739342fb2adfd623d4c780a5d1e702b8efe91e0be39a61a8a93e48a0d730814954a41d472e6395999c828a98d5d9bef23ee7dfbec1c27a79cc8edd035adc5763eae1ede0bf16235b8da7616c4882a6724bfe2f7745dd992accbfe90d1af3e8ce26a9a63701089151f4ca826e59bbcdf40935e6d3b55329d757dd3461ea78f6bb109389b92e41c5d18f811e783779f1dc3a14f0f3e30a15bd7b377c1bcccf621127865f66f64231a4c77a913d2f9f5319028a1d585ed38835df077e0fd0f6101a5b110650992f029bf70b151189acefa1b4584f5d56676c401804a6dcaf7b18d43078089d580eb6632c4757ab77c6c5fe3b28e3a1dd0aff4d00584235b2515971b9644d100f488ec980e1f86188526a37d6343db87f23ec9424c900404a0d4b133df270cccf54338ef5d6e0bd7a2359a0a892829ec8a1bd8f8529a55ceddd1f343ed20e08a0a0b68e3df9b22e1201b1ddd8184e7168e12196f84885d317fa0102753e6dee29a5203d2206fd6eb094b60a58fb3b0a5a59b4cc109e948823781ec9bb364ddbaafb1d553dd4933191b0ad56b7bf3398a4b1269aa329e47646f4e9d97e3aa2fe320efea245db47b63d0c36266c3f7d1c2b51271b06dd995e7bf6abfe861acdaa3534e9c2fc090988276257228c7338209f2cbd77f85b8182150d3287bed5934dec2a6c1d7b2b670716cb35299234fd94070a394868d95c5aa4d92ef9ec6fd05e80747d7d69522cf5d5e4d0dfae512f25d51c0d5a61bb43fcf060eaac8847fc6388377b1f260171ebdc24373a2a177b568f08779ebff6204f2cea49afcd8bb298ceb4f751d69e9bf840b567a1614871d72f5decdc8dc5808c2bdc41c5793e1811b99d3daa9bc4827c69d1dcc4cb55bc8c6366764b96a3114c093892c9e2f1a736f4ed3ef2024360253612747ed4cd3c690b98f65faa23979cb9a65e8122dd30a9c1f2cc3ac1d77783a3014ee64690a62567769cc43252ff23563c3eb4803678edd7a83701412809d343aa4ab428b6a1132b1d559f84063911832be2dfacab5836148ad7ff94ca08afff9835e69f216209aad727ae19ba24b9520bd59ec6b515c328e512e210d6edc9d8d78729bfeae0743e333d731a2b981bf5408239446ba16f37300ebe23bddf746090e4ab57290d2d1eaf1285eb62b968bdec6f5b8bdda4edfbe55cd1d974e2924289366c1f2cc38eadf153cc1666dda976d0fac32285962fb4e5ca87171062aa2a98fd7b447b7271b93abdd28d88020230f973ed7aace2302a321312233927fbcd390ac217a8252a338ffabea7b94051cb03255d04d538e5998c72027251e7f36ade0058eee853461e8e36824055a63d5ddebf3cead8033dd5c8ccea4783675d8deba1cee201dd2154636baaed297786d9b1299b43f058e5649fb01bde625c415656c30bc7c2213d82e83754d43d77b5af9cd2d04642ded3a25cc8da578ccf437aaddb39bf0db269e2e2fbe90723f18b56fc97325d57bb6b8155241baa4a784423fcb50ac5092070a76ef4895209a94f33a4072af0c3c458077be24ddc153449883b3bd6ed3da6e6be85442be7bfd96c0700c46dd79118f67f30d6eeb519323d3057da380fc0cebd9ac6d0299c9ec26f32c04bd8752f710dcdaf2f4ab235f196ad0e54c2f05e825b7d6e1634f3dae1895e4b55fada1eeccf0203d23042111c4043739cbb1b823f6cb7e5ebfa4a8359eb7511dc64ac0efb6a0c6231418e5432123f6a25f4a9f35dadfbdc10f502620e6d76ef9a72f893d76ea7875d909efff9be03400aa8a1e00db7c07cd4fbc844c8b8e86345d49e6e916066d07e06edd980176d4af31d6ab20115b3f20e32f17bc565b2f95f3709d5837fb1f7ec5a0dbc12a8f7d3eb4e7f9f9b6744e4864c343147414b4c104116e63ccb61b5af3f7c5db8b5c05b475cc7f39b888b57298051d029ce9017bde03041abf0c91f32f28a834fa95d60cec9a585c74921f60eba40f13b02de973d9f5499c9b386a5348414d333adce8bf4717d5f31faa4b3e96e91dccf7512980b8cce54ea4be82ad1dbb8373355f45ed6861b08368f9b86f86c35ddee6daa1a336d1c4d2d2658a15bfc76fb462dc0b7c36e97eb16e5eb0773e95581199ed2f7c4c219cc4095d2f8e6ca444d6d4c0754bd39b5494af3d2a01db862cacb1cd2225af884a43e5fa4fe63e5854d3d32f47a8e7af2991d26fff530fe8d57d35ea76a9431a9335fa1f057232f69ad89efdced883e6f8cc23baa485642272c515ddfe4524b3a997e173a22eeb008ba9c16adfa3830980945c758fe92eca8a96b32b274825e2688c11883d138e5d695b10f58f2e2c6931764c91edcdc40d56c72756c1e20494ab26986ebcdb2309060f4eafede1eeababa4d5da8418397a25309d19937dff876ccbe7eff4b58b87a44cddc3c8b1c4f066746036452caa32980e224b53eff0379700a30599aa2372ac4dc081020cb364546484dcbaeb8c3adb6d3ae4a9817dc2d987a690c8eae1863d38d3458f817618edf6416a71b6c30c928d5a6da732c6dffe56d7105141d5941e02bcdd55689892f0e77b9623fb065c17edd799a186f80b686ae5bec88e4f16b05923c1515447ad9c82adca69800a6b372e406b6bf5b5282480823183811a512ef5dfc0b21eb77048091ef023ae281dacdc1ba7d1ed2d9df6811dd5d1c9a1d4f1781b74ff1828a6d410eac1b54a5c251c055ec7f84cf22e3e96cdaefb8a9fb9c6ec823ccf141d2f6dbd1f589c0ec4102f6e91b3f0610cbed643c68824e7159920f52098ae33b5798ab95521f869f2b958691c4a0926ada90bf7c6678f23314479df021214537aa6aab7bb183154b7d8ddfc1431616793bdd541b8d1e1f10124263435606688f200000000000000000000000000050e151c212a
+flags = ValidSignature,BoundaryCondition
+
+# tcId = 49
+# r0_max above the limit
+msg = 6400000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 44f2fae55e75d4a14261c55d3b8f9d7ce296180728713a3374dc857bae406918542bfc12db9b25fd3d1928c9927b72be345024145c41d3689654b26e1d2d6364395c150047eb8b6ce89daaedb70d8095263514fa5317af3f6c557a0b91bad5e2fb6202f90183d2e1d545f5a09fd2f5cd5550e349e82435d55deec6424abde2e6cda6f794738180260c45999b51f9aa2cab98694b8d0af27441fc4b57289e7ea07b010c53e9a755ccb9016765990942a3d389500cacbec33eed059d412435ddbf46198e3c747b3f41f96dcc879ed3056b20da470062c0e1724112f48aadcbb6ca84e66c4af1418c66ee6115fe736305ac9f177f2fc8eac53d494d24164760e827a45ea20deae2034dfef4f8b552a0b4167e1f6272918221d4610d1278aa7040079672d2d191bbb19b252f84f0cdd46150d7be832db3fc8018aed6087b5e718bbb7b3386266d122ed0f27bc5b746651316620ccae5543f993fd5e1cc62990714e585878fbf20c81bb45edd5cba6de67010ece4135117baac8522ef59ddeac03ddc9abd91b47cefa3beac2496de163c00716956589bf84ff85e0732ed2073d97c5c34a0878c3d329e99a5a5a1be3781fff22646f1bb83ebc311889a56d6def19b8a86fb8553b36a62e13cbba15a507750795119ee309577fa7ec15a69be34a15135095730ae2ffdd72a1cf6a9bb61b221531cbfa0495200ed9f471ed1bcef9cb8bc5117c6d6806bf28dbeaf52bf2a9329119c5c896449c233c4a314076b00616773b87d9e8aa69c135a7d24c51c2acbc6e58df8bb7b6fca5fb14b13c9d0b33acd8e8b439a8e5d5bc31cb5bdb51712d148f935b8728ff46112ba49ea5af30150fa80a8249a2ccfc99f8b7c897d83c428fb15e6cc6e640a697d8fc6672098aec99630250a7b82075296afc00a15507605a5dc0f2b1a0375b263c53c403883f42a0304b99adaf834b1f2599e22125881d87047b8acce7b5728158d178649cd7a16d912177623c637500dc5b4bd13bcda0824fe377086862bae9a41c180ac807896c1371a78326cdfba763946ba608400d930146bf86efa861be282f44bce6e032bf7d98408c3b4a1e96704034ffba07c182fabdf4014ef2ee8ff8ef7e837ad75dc3aafb066d07297a290af9573be900b68db9b6c2746dc0d2b1e5d11f0540d170571ed530caf1033e8a32beffe622e3d082b3bc081b3c30d8e1dd697e9a18432f2514df6f90b9b42cc2c1d321f6f9bfe095ea7229c4d1825c8db8e869b56a40cfcb924304f8eeebde54d615521ebc9753c95e9831556c854fa163990d5015e0370f5d3e5b4ae7c4404c18ee125ea2fda5ac43127ad07567c44c806ee61a79353152c5f46bd98bd2010a53acdc66df92ee6fc0f93e678bf44d5d3c8e9adc305bede02008bde91dcec639554a4dbc4f6625571cb5ec821f2848ed33fceff30d8728880956a1581b5277fd51a61d4e13f7871198b78ab3107701163da8a30b379a05718aa79bb01b528c187fa91466588961f2e58db24a2afbf0226359a4e6c3da0fc8cca4be25f0abae106eaf8e1de7ce9f1b7d24ef25bd41aa98a99610b016f062d89f678142b9c27635cb71e9dad2ec332350f76a2b507c8fed9a17e60e19de2c1875f2b3f4134b903aab8819af224fb7eada88c67875040a07699d95756ba929680191ec8ec3efafc6fedd60ccc1e1300698bf56afaa31c89d16341f3673fe07880e7009e1f5173cf79cf0364f0833a179b5886226bf8f3a6397d8b499e9c020ccfe075fee18769fe9f7765ebb6ee630df990c579580f3910e704c73ad61512a9d47507e8bc61b9a61ac006b751882b20855e6b6ec7c05e303ae533623bc0a8d30f795ae93f057c7e079688b792456deb50dc7ba9da0e141cfc76ad0a902bdb1d032d06fa47a817d43ee784cf0ca4b516806e7631e40bf0671b3bdbcce7e2ed7ecfd994e190c9e500356d60e1c73850cf5b6bcaff9746b3025815bcafae19f20468591b5114d465a47e7e439ec0741eaf533d5ab5c57df0cf745931ca6a4051bba72dccd4160bed42fae52ba39d7ee2d3e2cd20fd299707e2a6228f94a5d32224405a1dbc5f5f0d269a0880cae9f0b7d5c0ddcc01e568a03208dafc9f54e715520ac51eef04d8c4b6fd5ed23dbdc9259029129b1b5707bb197920ce1265bacf2a7a7f81b77a017976c3a51b169eaf6f77fc68ad23e2edc7a07e7d39908704123b2385011d9e6b56eda29a8bee801228e3677241121ca21efab92227475998de40d40fe76412fbdc35449255843e3e6ce620ca0dc91075fbea5e531aeb9db6cb5153c61e7f55681eb46cf49b31b2efecdcdeca7539e8b3da30519640913672164575cb1ce89d2afa22da971c371f602070e2b1c7488f89239918a5f0df2257e8206ce67106d66f308cee488974e56ff840e025140014bc776211d632413152fd55b53749262c477229da729c1e56f885f61d1afefbe11f8e5038a5688835f3842235091f7bd42b908097a8106e4760259ed7464c0dd591ce48e51397bda9f3514b443a138a115eadc2be7f08edb4c9dfc9f1f065430bd9da0849c45dce861bfe839954131fde47e059c5f933a4baf982e0ec435a8230fb3eebc9ecf7ea65d0f376854c331fafadd45b07ebbf3041cf079300a9dee19a5854e147eb9c88300f5580c54d5801af62f9a90bd91da9f52cfa6d01a08ce390a179bfd6a0d3ba8e43408826cc36fabe685e9a1229343e5303b108683a75c9a524eb776336d0687e7e62bd68f4d425bfe7e4db1dcf09fa4938933f78387e48fffd47669233cae1e8bf9d4a2c63444a776595a48b3471a67990257cf7a0417d34f553eaf423f1cc206a9257f1aed004bd205dc1e7f660aeba09dc1f9991062665d38c0e2a4638c2bf61eb459e5e4725a0bbccbddfd66b239b31c62c948a485c8041ea3b6e58a0090bcc010ceaaedf7a2e8cb28cc23c925724f099ca14a33f42ecce7584bdc073e6f79ced17b8c113075f1604f31362893a3b5ec2a4953d77b68281c001fdbc6a853f4fea04c1e73b9bde7bead3aed35ef68e0ad98f902d7a7750b7461ebea8c2b7e9246c49b585107e979dd66c01969c65d34c22ffed12ce733d3543672a59a06854fa81187f3a0b82524686beb3a84c480aaae6af5a43d6c943702e49865935065f972c466e2e33554615f242fa582e04b7a330d84d5352b5a0c1a28c8521eff8baabdff6c35450ed9609fcde9291d0d38d7cc23d662a6261aed3ef34cc281501d9969425a42f050c7e6b0b1f3a549d7ef86cd1a4aac3a233ecc36cfc2a81cd69d951c31290eb73c71582bbacbcb99f3c29fe15d28887349c9aa2496b48ece89d581c697590efdd60351def42770f51f59d55bce58c5d2886d2ccc668237f9230a155be656b2ba71f58ee343317c7f37ce47f5736d99a056ed3e88ba59581b9b219b7e972b96b2e03cbee95fe9a2ef42694bd93e7e9145ebb155b6b9a7590058eea44d1e877254d55d052f9979ec0df8b5b8cfcdc1c858ad12d4495437a5c8247a071997f95e01943207be1ab6069e7925ee2e6e231a2f133177d0a91478c37c19303097971af66759f0eeea69028de913edc1ce9cd38edbd05c3b7cb393ec781ee7263652cdbb3201527501b60b7ca443cab817e829eafbe49c354bba16c1a597703953ec059efc97ca0f1bcf4bb2ba59e5bfbf64b5cef5dd1a7cdcfa40348b5f8979e96371bdcfed5bc9a5036955a40ebba28d1c5d98e592a046320e3ff7e2b72d25db20fb2daae4e580353598ad6673163fa3eb95f5b5561a38fb1ba8fad671795e7f5aaabbeeaefc4a7962475d8b7df0fb93c47aefd46d88a25397f6be11fdc4014389121c20750e80168565771dd932f67866387050d0551664a16b350e4761d6033e4746d7a5cb07b65ad4c13fc7e64a60ab9849ee9980855106c7706253551072105e28ee78b6e19e9f9b25bd39493736a2efb2cfb7416b84b6de23cd559663c2eb8b223f8c764ee4298c75f7f068824c31d4c19cfe9ddf3871f7160c87d9565c5d67e9142f151a33e2f9ea79702c6a7285ff963dfaa68b4129233daeb77e0aa2c1ccc75ff7a35793b2fadf60a9b1b9074f92eba1cff230c461f1bb486b3e9caa0b617abac2d963434ebae2e8ba39b238a167895430f5c6eb86d93d678ed1c472c3f3e9cd58f27f24d124df2371e98fb08442296592d79db40a6f388f85c050e7c434630ba353245692d549166727c31955ed60be469cf60ea09909f92ca87d5e77567036882b11c04f03bdf89d397513adf17146d52802b86797815316c2d21d0b1e95e671fc87e067d2e7871c28257af1fce14533d30dadd947ae2b1b9b78eb56278340cce5ca9a17271e1ff03670d31ea801cb89d6364c0d6b671d190d75c7335ba00497bf43ff1de81ba5faab2dce55f29561d13cd236507a88f942e6feb9e77a552942f6bb53c857f192c126d3f1ac53845f54fab0a3114f6bf3dc6dc251d39174c0f732dd9c5301cbd39a2d7fbabbdfe0a1049532cd378c9ae999700ef370a49206f7f7b208c7fc7318056cbba332b9c73e0165c97fd25f73f156750448c5b361c30e23229f2c325a99fe19df3d884418ba1d1f00708204a778ac9dde7224f687b7d98e3e4e51a244e7ba5c3c4f00a12182c335b60da3188bce200000000000000000000000000040d161e262a
+flags = ValidSignature,BoundaryCondition
+
+# tcId = 50
+# h_ones below the limit
+msg = 2d05000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 1ca68ce5f7e559793f67c657ac20bb8f3117f28c1ef02b8b828031fe11b146ff61ac67fee066d1a8b9a8d8219909195136ac9afa30909309cd43e54c18f08817c526bb135685d328549f2d0f0d8c73a45606f93e8a17fa3528a1ee64377165c7b98f3fdb6a32fe920c38863d913ed398dbe085a7ac406da7ae2baca87f922a2d5b43601a70d3aee3f182cf87aad2de0e104044dab4fd19e7121ff5cb459595d002f4882753159c7c6421ea7e6f02746f38bc424d92b8c3b353592ca7ea3703d27d58f2df3b23875eb7206b4f983873fb230979083b70ec1e5fd40afb5e3887d05e4eaef8f833339be930c2cff359cc4cdf3fd6e7caa647f3478cc863716f01310a30233bca62a32cedff973c8fdac419fec93342f71e74934799345a6797e85a7c1ccf660fee8ff6402e3c37a70771a26c9ffc9411e745d6962011b003c19e8e267b303ee53079e23979f7b6fb4b5b5a3df866f68421db2bc2eb29fbd6c40d5d73e7570c22b425f5cca416af86f4911766694bcd7d9f55acee1d9ba8f6ac07e2b0d1081948e1436da0af1e622e95e35a2e39065a782e3efa36e0b130b4f22b37ef2670e6b5797826515ca74a9a1ada669cb6d43448baa8a77a9e052e5492fff23ea68698a17cdda1a4cfea63f9c186f35369e57a6f54a161cf569cc75be9347efa9c94a869461ff2648ff1a3c984c67eaf53041edbb4d27c80c9bda409039303052639062dcfe8c7d8066995c49e5629bd0ee47b63b637b14f7ab0964f4adeacd6b139ec3af6530b6147741ece4ce206f9a24d8254af20eb933324b55e911a43cca36704427b8b37b5deecdc0da5d1758de2bf8f6fe639448b45e803df46427adfd6b3bbefc9b9c64deadfb60fd2fe6788f7d65f98aabc960ecbb8f8ed9593ab0a6a2c7d093d74ec17710ee5c98909e529847d7cbe9a69f54628017c0c2222b4ac46134281990b9bd70ba991336de07133ae25701a91306e0dccca6391816917698aa67c39998437325e39ef1f7e8eda0dd330671dd6cca57f3f99c162a54bb23992e44f3b6310de3c8b3d309e203e0e47f05b726d1949cae0abacf838c31fcbf449d7f9d6413bd911c70a823c8940aeb59b7cbb2c64c243a0fb8ead3903ab3186c6390b2678eea04d18a9405c733035ee58f79f85182c520163e7e0b4bfdc03d60034dfaf61644c32bc4cc32beb4fd77419ada027dda3d6f30bb3acf38a8bd4cac6425783b710d5238496331a04b6ad5646d3ee663ea0e50da36b453771976d2e36e0be3d10268459724bbba557505a7e804a088e82e99367508eb5e61919a8ff35eac38903de0529571dea43676e3d2b769f4baf4c1226ed921561817746ad04ea9d30cba41225965f1f29bae6b0bb3e15a59e82e50c0211f22403957d86927bb98fb48ee18260df408ff629730eb5f967bf25af2bf4147be41a5da2421ffea70796b77944479fb15a0890785bad4c0f86603deca9b71b72c6b75879b44f153fdd80412cc8c217ff04f4fb9b8662c9d3474598f806d71ef214784ae54a537c307cc1373161ae471034f70b49b6a574fa6204d7997ffa75a78ab9923850f3fc4419fe365dc4732ac4ba87db246c90466741cab4ff9c3d39cee643e006f35b76ff5cbfaace83482d26dcfb98ed007b97f0b80849ad04e1d422a8c86120d1d90099582703402dc3d8bc192bba4ee993dbfc3b7c567cc6f5e761a5cc0ccfa92fc842a31ee0ce234bcd6888c8ef81e7bbf40956e3855507e2544202e66dbb476faab34c635ff8c873bac2727b5fc4730bbf33c5bdd2f3391181eadf5f54682e13a97f0a06487232da578c89960ad67ff424215020f3fcfa25ec55db2b2d46d3646ffbd9354dd14008512e38e523285e426fcdabd8716883ddfb8db0dfd4c036b51625b26a1469fbf2282b943500a165b6275eac29ea4142afd22d647a4ba6d458a65292a64e21afa38ee30120bd49aa8a0c511f2c202293c717259a07549b12273566f3bbf4aab1ef6c076b0e68fac0d3e777e1f6cca2e75d68fe5a45e5f045b891cda173fd32d54962336e33c25a5c3b03b772403bf8ce296282b779fe439396cf995d3f81eb6b069edf19b57cb1252dd611ffa52eb0023b553b343a028ac241e4e9652f7d73ca9cebd3e3642640ecb9f648fd1cd1f6e7701fef3a551bf60ab3d4f59315cc2b0a9642e5f4e453af47039dc0c95778f2cadc0fa217c3423c2063eaab0922ddc59835a4706136d6e2d0d25f7dd8bbbd7a939e1afa2cc17194430e38b2f983e5e058c9b8baa385ff584846f7862469f5e3c71cbdcbd726ed45b92998b89d83c6d4731bf2f92fcfa454bbe3c7313c9dbbc65708ffa3d9bd8b43df4d088de3c911cecc5cdd415d587310a2c8d3dc10782458c7205419028fef4d2adfc14a55fe7e4507351044820f9d40da5077a93e923f14bb1d12181298c6aa965fd76319052d148a357b8d27b240dcc143fc579889ceb43b8e7db8deea958671b18906c01d5d8962952152eb8245f98229fc2e0477541faa3a57529e2328f27614b7b82abd506d276495522fc21b2f840e34f20cc7d605a986632052ce8e47889667edc1e4d009f9f2f6fc6e4f59ef42dcc97ec813b36c412e31856478e1fbf740ca8933632c62b02d2facea1c5e7936d3cd7971ce35227c5138c5a57e032aab24ae4c6b05ffa7d4df3181fee7b14668f07aec969300c7b0b1216c17de4def301717d4ec65041d4656b96ef7b40fa4c5113c58e265a2c02bd64f7aef278a6f5c57b2eb35fb69dbacc412cf60e06681f892e4fcd7dcb3b6a16d38b7d7b54815ecfa9c1a0bb46138959bc42df552110f5f697de1ace36c45cee32ebc9fe8fe8cd83e29ca331f85898d55fa4bdde5cf438f9bd0ddc711f516fb0e79510243debe71df2a2ac140c19b945841e8ff6baea4ce9dcf038b5a0a19e0cbc90b3c4f3d444813ac7f70b0624bc70a0251675cd9f44b30b38aee30ffedabe5aef29597820cdf2bcbaaf99ee09f9b18fe93268d5c74f44dc77dfc721511f55295e03bcda9956cb74a9bd85cd028ec05b4d064ed35a2ecfd3f674e34cca9f972824b1d7d3a1caea6fd6b51a205fa85de4b44a2f92a45edb712c73a4d10214623e8cdf3b9880cd25ac2dac328c3f54016eb98569ece9dac6f170cd7daaf37d41e6c35d62c3db46a24f2e6f5f237314000d0ef6825a9dc987379d9405547eb27c6d631fab06d5a039d47dd2b1dc63a077b4129f7610458cdad28b849fc68fd5f0c6fbb40fae533a5d8b559355b1db112a5203b321012b126fc6d5181cbf6f3ab8de483824ac07734370701b08b295362eea3073efc3a96ac9a9ee3082ab49afa034accdfced6c16c8d6a7e88b913b38468fc104f0f458a298f0c352b04eb664b1eddd9d76f308a9a29fca3f3fb730f8d1d48db53c23243c8f84c06a91acfb86cb2dcf2b1ef3a0b9b2cb1f4909f48e9f9eff93807bdc21a5a0e1e7ef1fa7bd2f9449eda1bc9b86e8b4efe33221a436a864cb272db8a50ed3696634ae458566e562a1dbbdfb20126c3ecbcf403816fb49adb749f51a76acf93869101c81d8ab1292e4e528ff30e58d4ccb34369cdabf927349fb8ab49ad569eaf0212dcacda9e1ff85493e6852418c647a4697409427becf65fc0710ce9c15ea9d2e799b39674afcbf2097d9fa9f4b10a874435cdcf2137d177d764c21a7ebcc303417a5ed5b94d0a3ae4be16417ff79fe1ae01feefecc5cef9ca7ce8cbe1287178349b33c40b7e7f08ab913844cc223951957043b6feeb1f56015fe5a039ed8d3f07cd55d5981e9f6609f2506dca0426b16c7008f2b25a67aaa3543bb8610354eb214b58b836e74090c7a43a9b47b91fbbc00a1b78400a42a1122dbb21afbe299b619abeceec31b32195ed805dfe64588703d7b12387b55486b39d909ab0690684471564417de34ab2e02da4d3974cfc7e9e38304d220d0a827a3312d085195163fbb712cd0a21cb151165bd98b77978096c1e6f38a73368cf7707083fb107910ed091d659af6a4673f9a155c8a402bf1c07ed416fa18fb66d6ac92d8a4c2d4e422b135f79ead28bbe234f818892b76fba8ed61b186b3b2cd1c773795e91e923c06829fb969926290ae2fe7585534e71c0c58b3bc662d70d537dbf06da794401aa121b4dffa36e574dda73e743c6177cb87bd78d6e0f98b081188d14050ca3f49e330cd1765c467430d197ee509dd8a000168212c683c6c7f075706cdded9c5a9609a6496280c1978d48e845c9693832768c47d9b7d1650e927b694a74ba50f36b924073f71f51b795f7822475d5632b80155264dc892effd97f561c1670d2417d5e33e7d095a8e44d8b0fc57d9ec693d12c277ddf096fa00081b2df89c46b66521295c3428df80915fa7e8f10c0627fab4e5d145e9fb6628bbd7b7cecc4427e73c6b1242fa7cc9df2731ae2fba2f9ef0d11ebb4e718e0a9b8b73b7bd5d257d22bc255ec751d1b381fe080e6c9a3e1204a1123c461796272ddc3b41f8fdd444358323edd11fab1bc5eda2111963ea999d743e6968f158d430fcd9906c5096227b7e5f377d07b2165476faefcb2301c03ea6cde213f7e165913f41fec6753aca94c0f365f60828c9bb9bbccfe030420212e3b5258668ebf1e393c5a7418292d7c819acbd6dcf109233d455a6075001416647a8dcde5f6f8fc0b161b252c37
+flags = ValidSignature,BoundaryCondition
+
+# tcId = 51
+# h_ones above the limit
+msg = 9a01000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 4e4f39e0fa77c6d67f49c759b83a72c2289fe57fca50c143c9a831a8114d41edb4bfa0856c62be9f05fe4f3672fe01549277f8b0da08e940f9b7b9d3da74e07fb7cf8a953fcace4239609a492220cd8007966c4e6ca5e8b418663fb1ff486d3ef90333c470699b8abef54c3fd4a25aa34d44ae75c216dd2d3f017082fb01df0d5ca6a85b1181484205722ef118f03372d8dc119739303aca686159911e165a611a678170a5238dc9b5631df11f2bcf3f7e5e8750cb55454f25a8a6e3efaa3fc66c88ad5247397ab153af4bc014895d006307e9a92dbb4e9bf78993980c525f2313d188b0f55718da34e701607d7149eabc05d952c4e12a3516d8e9c1fde6eaca3cace1e76749b156c46f40265870b1ea2fc49d66b600a52beb187675d1b7d6c40445c678974625dbfccf20ca3b65eff29d7fc3033f3af4b2c29494f18515f378ab2f155b392da15dc1f65c7a37ea2bb2b69eb0f8f66a6507025811a2ce5f748ccf667f32b9ebdfa37b3f4a164534de8ca9bedeff425920d38b0514c62068b92024e014283ed633f1820d2851ccc8268a443349903cc70af04ddc4dcce2023b6c0ce625797972883469b38f7754b576595a97910ecb81d97c801be74e7b8e7eb902c42cba946d855cb9dda4c140d4ee37504dbed3ef92ca99572a7857f6383d9ebe3105c90e9cc196d5c259b869a8e8c092432be67cd7b873ea408d455231863c5f34e38fa194686efdb23b79b30b34998f031179fe8dece8e79023cd41f0e92e18fd815d7cdc69dd83d26ca7e850363c3369cfc8706daac31622fb7c419a37d4884edcc10eacf0c4442c2bb47473181d4cbd404ab63bf840676caecbc89cc17ce0d14849a022376ca0548ff552d229c92c05b48c299d258644ea7b6462ef6b5fe965f6129ad9db2e95eaa14e28866d7eca1c90bdc46bc8f0da5868243a0f5a2ff3f08baa067c03719da8a3bc6c1d14a871c7a630dd831911467e1e6f19ccf0a511378319976015d3a3167d2570a49c50fa8d17b1079f092727276a311fe9f0ebc005739d8733727273aa5267021dcdf629321364fcb46836209c54d8266dffb01abd69824245c9a7f6a706e1d5deb23a15330990ba1a8a7032d4efa4de64bbe9ad4bfafee9e23b62faf8ed88093f5459115fc3d2877028fea349285888f84c96a1fa415fd1da7e878496e910cc1037c0a482e65da9209f40ac89e92358374144d0cb729279ad80e28982617f5ade2dcf380be05709c0de1e0191cb873e35d98f7fe09b38fc2430778d44752749414bd554d1b0681e98fdbbf9bf437b9e0473eca06ccd7e0cb4948d9aac13ec245a850b0506c6127830c63a75685e430318365f4ff06dcbfb970626ef2dc27dea0b0a098b2fc5a0ea02fc67eb3a9696ece6c752fee088d8e71be6ebd94aace3c78a9113b8e10167da32230672a2c311f12553ffbab9436de67657725e96dd516c9b561c3b272fe889e8ff2811b44426d26a0c42c24349aa22f85ddc863d32ac91bea62f26afeb350c81439964388bbf21415226b368188e2adce8ecdabbb3e38b1fec29bb55728cd382b3bad0783356c739f343c39afe5a98512b3f1c10058c587c1bb729417c26c18617f96d2de956de1d91cae81e1eee0d2011b5706c3b07580eba78066aa2a812461fc967e04f283113c30f6ced3a237958ad71c9572c8d6ecaeda361171199953fd7bb73fed1588259870adb84744e825dc84613daebd982f4487b464f128c2a7ff49b259c991ce34a013f9374568fee8e357de35dfa5cb43542cdb297d4cd886e0605c3d1fddaba262ced5d1edf566cce3840ba338db4fba236ec926a2134fd127d40e3a84f6b158cc6ce48f238c078a795caa391e793716281c2936397a50cd417cdf9c7fb32b5a8b7690e2ae2768daee33fd33600ab6d1eda8c37bf086bd3c1be7a9a2d79ba6ef635f9321d8d03316a8dc85acb4ed7a39d7cb30a76c04c018fc9c3c4779a8a67e7975c7a45018f9f177575ade5984ff4f7b412a18f1c24402e9bbc5564ef98a920e00d4bcc9e307e854aee1a6a2f421f833da3d27b2e8a9ab7b9f1061faf105d13da2359e9d57f47fbfa56e49b372672de5b460f3c43e9d32a0e3a272fe3efd0dfa4740539be52d4ec7881d9c7915f8cda2b47dd520ab5c5ba8fac6b1888b65d1bf12c976051743d6a506a5d4c550262b23e4995cff4bd6dde88ded5fd49608e791ee74c2c62571daf881ea9e318f96447c0d6d3ebd42a1b4a448e66359db4cd875885f91f7cffbcda373af5c72c67c9e3e8e14b6e0f5d209980d4d9be3884878f7f97aebf74e86426bd8b1c11ee5df701eb47a86877dff6b7df3d343f8a3a24697294f15de1be9c20092ac2c53d2d4e9b8011a2628416ebdae96237fcfc980d69265b03b86e1bb6954ee19e4e7598b068d131510a4e13c38d2c763c32f6a270a50fbfdda0e50b6df49fc85d3b1012b374a1095479a8d330f6c4d46940854daa91d34ef96e33645a444fceee47bc7faa680a2365eabb0c7acbf73bb72364b865e587607e0f4e15162be599703e22f782b15686f32ae096ab178216abdc687310330082a057286235e97f0abfb5b00443acb5db755fde1c4d46a0ce5923d8f7b10b0c4cd66a887c12a02ddcc022e261cc3f6ec65f1d6b6182a19a2c15f412d0a364d01b5eef67f665d42a6087d798aa94581fae60cf86cb9aa90c6b9e63e3269d78eca3f269f382e69a3bf777a420ce56866aa82ca5c4131b34a7c2e4cc8c685368fe8df1ba500fc6f4149ba21311409f517332d54d10337c762e0806d66bbd9426805521dd4fadde9987708f7e5cba96e9afb256f729ac9705c8f9069f77b32f5609d553e1357fabd6afb3439f99ef4d23e1e4e65815ae079bcf0dc408d229fa63b44b50b1075ea4d414caf46654fc462a643b4ed38a037e9fa9cc56e492584a69681bdedb72a48dafea506b19e75724d54cefc666768a7b40c015dc055a8b058167965efdc7122b25807555d3b6e0137bb98b5e16a72f4ba873ebc32c036d2eb9092b64de62dd95526c4900bb64112bb0703783c416be33d3cdbbd441316d48226d63e69471845a7f5bd93ddffbb0bf9385221c3a9d80d89f2a6f6bb233f3d0c604854b86b79b1d4cbe50e76c276b58f25ca31e415e7b2dac266dc3b073f1d6b00d500e54981079d66a1f314653b733c6db19168ebef304e15760ef535b45012fa4ce3eb1ed610a5ceef680f8700c174ea474adbf45410df72ad777c72255b2e77e467453da217345354f3570050c178dba294a95c5bff31c95d24fc757d3ac354cb7d7c6892e8dfd9c0062f3d3071ef316c116511d78becb255d185c81f61c0e29ce521928ce3c83c9530d53c7c6c0535c9b384b090fab020d23c199430889db214a84cac3e06888fcf45f19ec74552e6f45380faad1380b9a7e5413d9c700c70c6ffd003f3b52f624e6b04948ea99b3fb129c2de24b47a91d910f35c24efb9f3d788827b74a566607846015e6148b4c76355b51bcdafafe1e5298ff01879b1e9ebd430681c8c82f194498e78fe3537c99888f11c063997ac36d1a00a38d51bf5a6101a2322f70dab430ea99d14ee833a0859d5bb0da477afe4aa3184e480b14e3f6a362ef3458da1ab5728994ed6c8899dd6e5a9c78b38f370fbc31661e37d402310a9dad865176486144c451aff71715378432604d9194ee88ea6f3b68dfa1b80b0a6c54a2b5cd4c0b4b1ec7152c680483b537313c4b6035cd550d0eca0df04d9a058dec727ad5675285fd1d07a4a7bf36a330ffe620a1b244583bd3b248be735bed76e4f1e47fd1f81d6ff3339be6d9fce2afc4ab2402f3d2a9907c10fe4207ffb0a3ee49a3ec7b3af256aa2d63d69b4dfe69898c858bd8de9ec4285f7de3320c18f669574d6cc9a08cc8ba745af8a5f0086621928a97d6c92103d34c229f6d8b1a36e8e2e86a8dd7ef4b039c1b9546f7ebdd5f179a94146fe3c9c695641bc51db41ff0b074f467bc07578fad564269c65337f6a0b8af6dc0f7640cc42fc8dde6fb7cf677ff7889ddab792fd225ae4c8995dc97afe843831e8d48f419879411f5152cc6e1d9c0624d8b1bd6a4b136d67074606ce5ee30b0136335526eaa352df9fced286530848115509e82a8a4a3d929a5a242415579d97995cdb20c737ce4e63e490860e58855d6574ffdceaeab8fbb6aeee1c73b7371b8d24dfa68c4e29c84a28bf78b2ed283c15248a13efdb4aca13e25f69594660e73dd847c7249d64dc2f1ec51e88c675fa2bd5b77957765e608c3e32dc991a14c68fd7e9bbf17e84b5dea7a2ba9414851a30994483e0e53ac614c72c5b5d0407c6b0dbbddebb4fc0d0c195237f9d2e4a11cd10f464b35dcf9bd90bdab7f1ce583477dbe31b0b5aec91ae86a2e0cde82261665c570f0c055f1391e60669e7e7905fb9bec5f0da2485bca04837e683fda337a302254f80ba295c96af0aa97f673efb3073b581399d76cb234296c9065f363a5e72484b7e93438055ab952fe2e55a23b34acd34957a682ed8f17b0a5778088c39a3dd8489823c8cdf588b73cf7c5010fb36c590c99fcf30cdeaea2f86fb8375aea46b60dacd83acb0b1517589f2c386069a3b6e4f81d445961646b90bfe6e9f6ff3f4653658d1e373b5ad41835848cc7df0000000000000000000000000000050d191e2329
+flags = ValidSignature,BoundaryCondition
+
+# tcId = 52
+# high_bits called on the edge case
+msg = 8803000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 93d46453ecb0ad7a3e0288445607fc4fc6704f17b64fecfbfc183de4cad5c86da5b1d6c13fbbd1c1f8a8818dccdd5b075f9470e83cfa231fa5b6036ee49ff80b0fb7655f4b7f84197027c868a4d8fdfffefe3317c336101c4749b465325b45dec08ff915e606e7cfbb5558e95ef29b194752f50d7a5b11a14d131b0c9af6dd154ba49200afb1bae5b9c0ac7fb0297c72281d8462dbc89cd5b0d66256bc942905c9a805fb14b8c4931550ebb70ee04174784cc02fc8e97b5dabe50583d433d11518079803c6d557a13187cd96c8e84e8801c11e2666596f055e788deb0a713862f2daef6e1acb60d83e39003417339b871d27877823493fd360b27336eab688a71d4b0bdea6641b0b0ea1ab65fd4291c380fc76a75dc7ca4e4711af22ab5be96a2e4f301f705ff033e3e8b530bd8194b9cad4f54680eaf9abf0be7af032a2766fc75396894b2f393b1b87af6d1b9730d374a5e48964bf1ec6276e6ba4554e2f6114c04a1489990c7901b28ac94de8c61ab983319374474a2aa8a0e1b5410fb952105a5cc0ec9b9cd7663e532bf787ed992726fef537e3bbe31ba835e0a0ef00398f7d88ac2ed3d59a99f9a6cd49fea68e3a611ed1600f738ee199d3db7ffda3c1873dc9a0b1ba9b8aa224cca56460965a9d6c91d58de6c33f9665df62f4be77d333c4d62b967386fae73830389c71a563ddf7172b68b1faac5fbe64e06b53efcd058d4a960364fd879eccb76a7674a813453cd48868b9fcaa96bcd5dc815ed688f5126557158bb35f2c6a0e4ff4c010a3afb6a4122cd3521c3d9e3c717c79c8062d3fc24d51b122d8a8714f9ffc07d4bd8d0e012d7ea9dbdb2427b0ee12d44367125e63a275d70b4f5ae5d088130358739cc31c3060ddf91c3cc64957c76d451cc028555abd5811fefa5a10633cb0d8aa47a8b6718ec44b1cdb06a35d6ddb332efdabca446dba302e2c7124303343eb42ee3bdecdb894c1768d1680cc98dd628067fb39cb7d67a00784995bf5ea3f8014193c7a371dcc55ba5a3b43d3f2a2228126856ea0d97c90b6081a45491c3c8e20f6dc2ffe331496cabc3619fe86e557228a7dca189e7a3cd04e961616643bdabf6ace94f3d5f1e8429d115b3b8c840245fbf48d0172b214c0386fd320dd1e2580d5f4e6cfa9d4928431633079a90f97258418ebfcdd0aab960239ea2be83b8a057b0548022bd518661b703835e91da0cb568a4101de68d5787e31e285c335e637f83eab3953ba292244286d61e06fcb961e319ac80d5173bcfe7128dad75e2e850085be27356495b28fdb55313d90c4807f6546231fce0cbaf1fc6419ba60695eec63cae97957baca1756630550ca14b56737a52de135eb711c0a1dec9e1811908ecf299198387b741f904967404f7f8ec9f6ebab878caa4b664cb24c53bba4607a7bd6e4c4db5f9c8d712cbab6a506d0902764bb44da35cc0f0663968b3cf5bf92f83724ce08d478a66ac0e430c42ec47ef4de4a46e7d047450e481e4d8468261315c10d5bbd1ee7ac82f0a63a9d4ba54f6e4a367de6b05a560482c8826121ccb90f68037a96c8c30e41f1a96c4d84c021dadf1315c3a6f80e6ef7d26b5e4e87f5436347169d63987c022353a8155670c5be558544ee3ffc3cdb717bbd53edca18e5ee0e5646482ed38f790aeb45bf89a40e819b14d535da8b12025ed710c2f2faedfa716970ee44798de2932946018b6d80715d6f6d7d573b003b576cbe2781ed12984a4171c00d5f12cbf7e73d567cb8d243544cbc5c7921b5a89c0aabcf1339f99671fbe96591f988a06f4bd15feae56429878e40ed8f1e0e90457f1ca21bccefaba6d30709f40508c47d78c72362d5d96a279406f10f975fe70872a4e214eaf3ec9ae5dc3b7bc41e27b72da8f6824c259534216577bf506ad45976e84ad4ed9d5a4f88e3695e2943adf045b91a5edea2410ebed5d2bf10170d3a0c392e72e970c715c0216b97ffc8fdc9089a9fe1e4f4cad9ec4e4e589fe05eb5ace4083805f2cf936bd93b6410138caff44c64be949fb7acc66284bdd8781417976f7be700bef0f78f1398fee069b14e686aa985aebdd058230b7684553f02a1e196ad8661759e45bcd1ab75f8d3ec95602ff03e6b314d8c363cb7c843df92a3a6a355e29a2ca881911b7e01b8e8c40f7395a5207650b0f44bf11b1269b8b0bd4b4c989c98ff0c529e0a3b5391ca25ec366e39fc6da4c474b3ff93938fa064b1a30a6aa56a717d5f5bed2b3cf3d2270819a8100b7fc8e750787acbdf008fcc4a0deaa47a62084c3445c75cd97edd1e4012b0b76b01bc1ca8e5738bf884c6135934304bf625eb8a3ccb29087047a0834943a6bebff481994779c7f6a37fa8140105e849696d922d3e7cce3535e9711422dc217f5e7f2c379d5dc8220a5006b56a87079b1504d6628999ee8158c73d2c101cebf695adb5c3815d9328255c5dc2efb167b36b1820abb79f0eaf4fd84580ff7c3a8b178164f985f42f0dcfb728fd42401a31a2ef2ebd9a26e6832623d7d28d26d162a21c45889253f62a11a2ed59414ff03c27e48aceae70ec4629462842626d7f802371fcd7fc1b97495e861c7391c773fcaa2ed087ae8b84968c573f091ba37097008d6041460986403e8e1d2e44ba3afa5cc88d48780aaceb142512b115d47d7e5f9358678c99d2f481d5740b327555ff41e163bc40b2021d441e5b4ca87b02010a454c6f2c9cd1970cd3846d4c8021ac7028b2e94b3a9af750e76ee37bf4f4ace83b244aaed8c1ba134500357b96f587bc1464cc2052b03634b772920da0cad300ad9de1f53c8b8c373b2e12b552c4410e2836f3161fb1b7c0116eb3fd23fd632fe6dbe2e9999a3994793b713d52c811403c3b9e0f5d9b68b71835e9dac66ab9437b64151115bf3a8af2fe17de721310b459ecabf6790096df03c23a8165cbfb484dc35e0e14ea64a82bc76b888f6bbce7d29741ec435aabec2b9ccea7b61197a895b608d88666c1ab1ec32424bacd2c51b0a248ab18e0192a866c7de1ed43ec7e7eeaf300ea40143af6be9d93bb92bd0ea5d9600f99276de5a23eda8f939ec173a141285b0323551137dba54c2a46fa5decf94158646edc72901fcdf86beba1a8715159f61ce58eaba2fd09afe8b533817086cdfb641f4ec3c079cc27257688d4b1a3dbfe0a0f53e74384e2b89c774ea215ab444a459b5f9ded9019f57aae07c44eaff21c7928ffcc621339badbfa93962630c713072c5efcf52a7f2d09d4f164d0b901d34c37dda11aac6b6a93f30339c786255b1e18ed055121a5b52b1a0afd76ac8d4a3b1e72516a8ccd39cd035c11f676ede7c87d932f1ef99d3b93a79e7edb1923de83498c94db1775e9560753f65a34df282ef215a18662f446e1a80a4a64380cb4991aa5ed8fd1fd24eaed4ec91536229596b765197c10943b4dfa30750728f9b7ec39b798e33572da27e8b2bdc5a596946e99963a1e164085cbce5529183159066411cbf62033b41b2c0f59a4d771b4aa9a82bf781a384a370b73b59c8d64450b8e75ecde8c7eec2ea52351711b88b7e462dd7069c2f3c00a0656cb3cb5cc9338e2dccf2e0698be77c19f85271642b09c41932a0a54f60df6093aa41ba66734f0c91d958f9798169b35697ba42db67d33b9151b3f176fbff73e73b4bcdd9f2b80234e20ca079a0694977e6e150d16dca677f1a195348942827ae2a32a7fbb891df99eb03651ce7168d8f26db3c6d71ce778fc0dfe75010eb80612908730672fd0344d99a85090e78e454cc7edc760cb49b672702d388689819f55a353bd8da92e17daa34097c1cbc4574a243efd2dc908ddab79d7cb33ee1cc7a0c3564ef545d100bb6ada9d26bbd306ec7b543e0bc2477d8a283823b65b6a91ead38867bf83ac3643be995b38897307cfdda549a9732b2c3ca88babb8dc9c3b59b208a596b57bbff42c586b97a0e55ad9025f6c421b19c1ec36b436398c413ae55d064a46e2b97a4d475170666f6bcb7d5bbdcc2a3d28be3e5a41abea942ae836487d7325af729116a3b009b47a1efdaa4142a054bcb672951087891aa3af203f0ed41efc9422753a7b07ecafe4d9022e7c73893621a648d7dda02181809d7a687301d156bd90c3e15e1a746b6ce93fa2bc2d8309b8135a95c0d12700da6eda1bac9ea1663446cba9e8237dd019d7e016ce0600c8f1cb435a8f4f52deb8295ce00a07d3a32456e44bc2128293295e550e816069979fc379da0a44d9116b7e6a1ffebb750f2d7f86a27d6d93cfc739efadab272c77a595f6f74318d14fb4e15ac8ce9fa0f7c72ab7720af4f3da27bff92ba62fd7fd79d96a25c2fab26034e3f331db56add047c8840933b53e06a0607bf3dcfa4fb3227dfc8a33a26ec9fe03ffaa538b6a8ed9a58df01f0b62cebd303f11e24fdd373ba23adb698c6745c41f57cfc465d10aed6b08f171acb42c5bdea41cba6fa8016ec7603591468d310746513a24f77155be87f507e7fe8512f2fc889af9ebb145d5c33137aa7e3dc9e14d3a81c2a5149418782e082745235c62969d19bbb349b550524102aed4c1d66a3a98f8646f6f0c0c506b64748c6747b1c1cbdbe815005a71cef21a1c324797a0e30413292e78bcc5cc548d99a2106b9ea6eaf000000000000000000000000000000000000000000000000000050c1415181e
+flags = ValidSignature,BoundaryCondition
+
+# tcId = 53
+# low_bits called on the edge case
+msg = b502000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = fa54682a8226fa50a7728ee9ce8aa7b72bdd00a4f5643c4771d6547275088fa7b32042cb5441cfa8880779a602c32a536236b3be35a6e2a13360d4825d52f511252d6a3e272b493bc73878e0e3711360b5360af83df3f57570667d866c8558b052c540027a690df9eeea1135aa50546b2136d349cab85dcd698fbae1aa6fe0fb2eec20f3ac4f004a55be8510c4015f74538fe2e695cdc154887631dfe924774a6731b65aa4349fa16d536c7e9b5642966606e3fdb271779ffb0d3599bf958d3727fc443a6a190f4bb2f2853f5f6d773dbafc371772bb3d2b0e88aed601c9ce8ffd60b2496315f507bdbb50c7a309fcd68d85fee1f5aaa9420c4d2b52147d7fcb38026e21b5c467af3ed4b16038f2beab5f54b7c134571c079dbd28c54c6e06505d69b6dbae1e720e8a8bda189867861f84f5f6fa39f9af2cac8c6153bf1533b21f1e70360baa33860353eda4f0ec700c58283e2a3fcae5f0053c395be917ab411b8c2bfa94d892bc4fa424f6dfd97f9fa982b02e4fbe6c43b598eba769629ac66c3cde157365053fb6595982daaabae610cd3458811da53cfaadc053d8af104896e438d7bbdb025c474abc2493f74e16fa8ba563ee0765f4a06dbd874748302dd52df925df631e5bd5a7e335909aa7f8e7a65a7db7cd1988add9b9f34a71e3b735da6dccb4b6f6787af5f1e519e24a1e15c5930f43626f5ed734d4c442125896aba42840fe0613bbb8cb68325a6bb26bf1bcf14a055fcf63f11020ef7572de02b677315a6c83a2d0bceaf049e91bc715a085a25769ab9c9f4b6592a41c4c7e212c3380d723d3b4da5d9baaeabac9410e32eaa58f38facfe1f7438e4eec3ce5091a1e38f98100600dcc215d3c8ca850b46d60e2b941e10c66d809282f9d38d710a9202f9bd9a79a62cc30b32b5a1af6f9de111bee6a5bcb65e9125b8cfabb6db6c750c7553d6e3975be064feecd24e26c7196e931d8b1ce48ae6be3977db6d7eb200aae36191f7f0a2be3d3d7c9e760be49c8fb0b495338771f4b1676304c850db67d24422d7b153a4c34ca37a0ec287dd47739c2295dddd32e5809afbab880da22a82dbfd4c0041b0b8a6b9168e7baca62a6499fb621278ec25a81104eca44d2cd0165113fe6c68a56fc730ba9c7dffd039c978a701ed9f6acc61e39316ce53082c0dce04b4c0cb305aa53ac14befc5f65be4fa4bbdb79ab17c12698df9343de0b4cb3feb355cfca73529f36198d21da56bd343643a0d27d040f2bb7d048ecbfd1fc18b4bd27217c8532d63b47fedc445430caa18b2007ca9ae7fe9dae5bdb0371b897a3def628b0dddd3ba9b0805056caf5c02b7c3e44939b34ce646be0edc1289daa3aea0260643d34ebed8218aed531bee5ff772f2342e96e27ff488a5d1afddc3c5094a7f94f01c70ad619def58612f767cb21b3c742c43e94ff21b4f30348600a766e0f66d418b9f450e389be3ed10d3f080579248bbd7c72ee02985424c09c95b8af7229cc57e6dbd7bedc4aa2b08259db76736aa82bed4ab3198f748593189b0f5ddee1b1b8164f1f82896b458b6a5794170c056377b40e758c1d9f16a4b060f590d0299a3d6e8bb4d9046b194ea49051dba75771159d58d67d88eae6cd6d3cdab259d3b0422b1d1e0b40388d7007f73f3e1ff362c7bc785dbfbca4b4d007f3c799e8f4d11b806f26d82277f02ea2a61fa1cd5efac837aa29bdfa19cf00117f72b67c4df10a49a01efda625506de427d2ab9a514c9cf201ac86fc0692b66063aeb86b0b23e4180f6eb362b10a8dcd44f96983d5decb7b463882f7e0bc455c34998c65706e12c77416052bd36490796afdadf360ad94183907f807113b8c0533ff36b311ec6f8a31f1fe36f822ce27a580d2e5582a9c2991be1b43d0ff9c91447932ca726e57ab3ee076319eed5768decd05aa7ee857ec82b9132556cbe968f6ecc4013fbc49568c8c779d9a6d9dea52617e0f521c46d4862b47691038d9c36adcfe17a24a7f44fbd87114ef18bf1e1df13d15e060a01e2ff31c7b7ac4a355b0f5a3e98344d86c9510af6fdf934346e0b8c756fc5a14ee062d190ef7b6f78764e2063040bd09c4f7e43f1eb64f06d2e5c30b020d6c133dabaa9ebecad1623e3fa26bcfe1471471a6517de61f780b3082007676e5ff6ee9d5f31afa57c9faee333e639efc7761b0466f4c3b096cfda85d11700a4ec5db2deae29042dce8b74db1132104d9b9b0ef72962ddb6c23497bcc76e481871c322712ad44af7387a3e9498fe9a7c86ff73a012a2c5f0f492dc6766062cc296472f4ee671185892fd0704e8fb0c594eac2b817916ea7eda1822544a7ab2c2854e3b0c578fcf0d0b4ce731932af21a293e0c0e06fa5ba4b58dea2695fe4acd9fa6f7d1e59ec3657fc1f37e73e8e3536d7560bf502a103703cd815c9a10756da5d9e651234ff8d46f5f97bed85b89b6fb9c9c8026948d46dc5575679e8eb6cef8026aabb9a648fc87cc5e0fb06164cc22d6ab541caf5fbac8c6140d0fcb57719d45f22e055ad82b217cdb07dc986c4af4c847a8922be5d95f5367933b04b805e8626e73476a5da495bde018836ea5fe9cb34b3abe0b65885c83e918b5f5eebb53a962ac9e460dd6fa39795c68320e6b5f5e00638a1f18e40c3cdf75cc82794bf5f4a524081403894221f469efd48d460a8915721bcf0d6211949245cf7baa2f1ac65073409d9c1328e44142c9161ffc8d31ed8a387cf3dd0511cef2b61622de0d46d3639143339b9b6ed75cb5fa7c95011d878bac8b1be21be2e6608f040f76fe91f5b6fa92387aa081687da647712fa3b7b5e32ec2f5d22920acdfa5557ac8c071491bd4518c54f6d93bb8cde1a38f9dc1145af011c309c87c5b627690958fd466a4e8c073796f1cd07d844902e7e4eb56c031dd8c0dd6d9369c2eb4b89e4a9900bddc8114463c3ae2c87ddd1013b2defcf705ea746ff48d2821e5e63e033f4038cd842de7c838d9418c8e27a8dcd2fb9b88d8a0d0ba9c454d7a0a167a44cdc878f3274ebda260fe95a031c6d8917458d3882e11fc5363ccb034fca155ad29d622be4a047b3ccdffd362a3550c552a1b698e87dfba1774e527127017fdee76a91525993ff46b5eb072c79027148420fc958d1cc62e39dceb827dcd9baffcfc8b13888072827b0132cf943e31c71131e602444028740e6771a49615fcd00cf34ebf09bbbb2ab63b57803db54a1fd9c49957971d308548c94de5c5b6a5f345050ceb75708c8aee3c624e0d8290b2bcdcc918fbdcda7bc30d3f5f5ce1fb2d4e6cca86d6ec163f73858b84265baeeb0fda0f40e7bde058c85a2138bfa777c8be45da1c2b7915f94089074f4f22c0c1ecea9375ee2bfc23f90c521b8ed51434134abca11a9c3fd019244710125e9b7dc27661d23bcb4a40d5e87479d6b07ac86cfd91b5d89e664317336a2a6a80ee88b7b24ae1872bd99bd372d06cc21d835fd2336ea2ae53b7bf8a1c14ef724eba94e971524a1a290f9b7f265665b6195ee20719648b2a4a4a66c705705cf48b41a7c9c7f16bc2ae479ef1d5c23a4050acbdb0eef0a8c792f547952170a0b869f9b5066c06c4fe79d22379a5f8145c700049c4043215f60a7433955b2d9c681133149d845de27c355e1dc40217dae2c0a22c7d9b9e346ef585c35fd8cf96ebfcde2a7d4b7445e6c11046f0644ef7619e9c4bde19d33374061c7d55434249f4aaed4c7eb39a86f9d1007520d048301c9614943efbf9e55e11ea0b4462c9995c430ac4e7c3587df2a9f6d374580d0dbb48973c909615fb846705386c55d486063f8a0c9813419c9689317119ab6b7b6b9b72a2327bfe956859f8e3edd2d0e6a2e3446adb9c130fe0eab8dabaebd7593f9ca7b50df7c0f9643415b18f3c18ae06ec6ca1d39064b3bf8d8d4b841970e3c38c4e609fa7d6e8a938c371d7e4872ef88b088455715c5766126882cca88be8444a951b3984e1e24e38f87cc2d22dbb4459c258f7f6d9c4c70075061ab9c9a60fb23c0d4f5c9170c3368795acf27e099d9788d72e488742e04f779ac217f14eecbb4e3a41ee5d1b7e174b6df258ab1d8851c321c7ed74663e9f836ab08d8a5994ad7ea1be34ee3029b35550d653de0679b0d385315621282342dbda3abd445c695f67ba506ff9d4812a3a70996f26c45d71b9039ac4e4868047a396d838e3a625264e23178591cb966732901cf3960f0d83d4659b5ecf84e3948efde4413ae675d21a25e74aa780b3d4500b8ebb14898e9b8f332ea4524c7a560a630c049eb36b4ab1b4a77c9eb5755ff8a130786da3292383bc378ffedf2a7f3ddd8bdd5b7ff895608bc0c79ef3360c958d8e4854ac76dac7992bb69f6515052c47716a19bea1eaa0c0e33fa4f24207f7b44d5b48ed9ece05d5ca9d728b740e427823390c1d0d7998ce5edfd989c5d0ac351990cf8f291de748ddbcbda698052ee52cc078e15b7fb5360d890653c7b26458d0fdb813df3641f7f67613f5bd951d98128bff3a92d2b2c8b65adf282ff168af584730c3afdaeaa6550564655ad7700e5c34c6f74d091f1b367b210011788ababba86ba2e8eb6f2776c3e275637237c17250bbe31394a5a6f850c8ac1c9dbfa0f162b2c5e5f6e9cbbd7e2ecf72e7ec7d7f1f41b4d7b7c9fdcea4e6a85a100000000000000000000000000060c191f262a
+flags = ValidSignature,BoundaryCondition
+
+[privateKey = f5408337d0fee65c28851226a5fa81b58464632c78e2a9bef70d330f2e3a5f743fe2130a9185402b9ceee616adcf0aeb1b0adc5b7bd65b8469d9f73abdd491c7659d92d3c6412cab96a2de13921e6e28264326efab5964afee6490ef637e546aa6b61aba997daac4623b0ff33b4bbd1a11b2942500c737263b5a7b599c454d8442073855220447142672283106762324611334160331766716756876656306340247416643645788214401245418430332335014484266482863377264642414206877226544283410340543730247627225170453086122730061663720413006672700563545553308822632620516184200008121626450075764267612441006130131054105366434124552571655324024583437672387040523848872722438820242507702366302474748842265201861837063577540747600354316761325342724414244818807083666356763458818178730038860216678417556380528118134053806822634757706213780383068245037164828641644088712486666263228563278454077257226514241838623545046705775223416234252343326255430503041432773656045076111030080425435056385571604503837242375546781881637734567572558705071178084805270422810171125366178026263016101361657832287864742571181540760851116286862663367644442262567158480021516651834322735675322048815731072442030787610367014103700472855221118750731347147044142277174111214348353566824008064045627684488722675430832058628153456611117540326632627423710448122776364844470152004860248280007708325718482525552264175551177652286873852661125522335557583772044467545176204662306421267463234564162341677110818645117237332101582140278868362167651433830007175820104352222533408675507171265571436206825831530330505138722014332544414101453361865663285823831165654236338452842635115828271801121281582618708170531302365851580567783463004004872080286853401722161683240507540174321162726623307704357168735441623362805550771378557544025577664653883727145477726652161328654636765354441580462755002525303617004457666056523833318532171037664380506224158805461788342412558636736557807030038168058241037440287466117173258168248137753751448321557734277603877752226522005384287417756673375054253360826560561501724117752720403752166506773562110186547571130831846605687668266432088723466508134167088157733748882573483206443607642671007311272002682616013071771238832745526182648607836043640787500384324825714344453303465740312784685175588706426626253688784802024002168480055006521746017031355351420356313376038357500434586744155331653510137233135501164040340443180537652161358720413477471755650162313051181844240248360407773704517351058764775404747121083306411352302550060311617664848461285205032215087833220558462453850275140274158215805155381750850757850271010637641250528012682211173613444785706268032670127024707747567314772632848841668565545456641117066848041360116507056675046470163210801085300085527862576471877326436205146166232414075335513375673166307774724018723351488672332685528233522486007870307457262016571753124063541231514175538351737543321726247362412023101043212535074048080016006886215511021520172701460518406542024738500552450424583471822538241124124282248288348872240758184343246825136527273210452765138144072540628287154522674671801747806751802628540570743817583756538088277258068473227163621044527db3e8a7b37950eaf9af3770bd6b8f8c9572b54256463bebfcfa8920624daa12fccd1c228c4668f688976a5094a00b6e30694ab2e017cdc2d4315a381bbe84ee58340cd6bc6fb225ddc2bf8dc117ce2be59993e5a521f5296126f290d10097bb2b9f171ff3f5de8a5047e76a15594c3caddc7c0caa852b8aff91f435d3f039d3f27963c357691e9c9ee543f32a77691f8b8ad98d711f8191f5c9891f593d8c754b07621a42cd25a2e95c32156a356f7bf71d6a3d1be00c7364741f2eac5d0c5fb3ef93c6339b559c9b2c4f518927fbe1b87d49546d0c9ba801c224a1cca84916aac512fbaef6841f725c72b927b55d920bb9b8df4e89b9b09da7adc24fa3f9834a8a0380bd42f07801e4afac2bc1e852dfe41b0903990289190ddcdcc214a680e0247938a4b54b704bb6f0affe7ce2171ab7e05f8cb96abc352e44e9b9f60f6ceba0ff95703209197657d8228e93dae9a9f478a30700a6cdddb4ad484f963afacb39a3186e94e097fa25ab149c4c438458b24369f62f87159396f37de36fbcdae2acc7b996a90f66c6de64ad905ba6d4508d3c453e7d43ecb7c8692244f3de88c975046189a438f61a1a84e8d0eb11f93dae6c80dee63c2a3ece5b794483d60493a84dfd4d267eaa205ad0b9491e656e267eec42f5d3094982452ca10b420552d684242bb72d651d47e96da49077d73dec8fcbaeda2ace53156bb4d4392e21fe094a2a32d3eb3d4163ab50a8528800464c05cf2db162da56dc13e709844dda7cbae47ef8364c8c3d5fb471f9407bffafef778486c304088801624aa2318433459b4794f4c31ec2cac49d56504602db94a5b882a92b06ba9ea1ac40523fbf4ec1dd473c076d3e397941c821895beeb4b5fd5eef9246ed1ac724a2aeab43c56a6584bffcf4aed0c6629d5a59b719e5d677539c3dd620d861ee7f9c0a5f116a17e4bb3b16a8017e668612c1038b576e39dedaf7d848d02024c0065f1b896ad6594af4477c73544ef51f3e612c80f11150b1f394b9fd899fa6d927535efaafb745133a45442241579e57701399ba23b0ba62a2ef13b5eead46f02d2c5a91fc031e458be09a8b5d53d9843278590bf556e2258b371f14f07cedc213302ecc895e15be2eb0e771e4b1d6d10fffd2ab945dacc52287e8667ecefaf3c959dc5bc18d0d953ce392acaa67e3f457630cf266c7665253c3c04cef5a73aedee0cfd06efc300887d4694dbbb717f2813737d0fae91e434922ea831ae41349e44ed0fe9101309dee68c1337f050e9e16113e8ba47877202b97113b3b876f4333ee620cfe37b69e597162ad40d78f5a7be33ebdb38b9eb84dea68e01de157c7e74f4522836b64d146f719df851b60fe69cea4667daa057bc47a47248fc3073a904239c0f8757cd8aa52e5d837fbc6490a0ffd9a3dfbeed09c24c61e48df0695d8f37f5670aca01a3fbb2a5fd3bd57cf38c453f80f9de428aa0d860b13231c5b2e435905bae792ee21e6104535204f9ab1f90d8c3123e57e2d01b0091ed089b9083438510579190478b86980370bb0170992673394509aea3a64d241b0d5388614282c4172796b00bcb034769bb492c0fdbc88c1a30a040d637a7b9c496f620114546133fed394ab79413268027d5418bd61e6ce3ff18ab83f76ea0a2e5694a48c01931cbd1c4bb02a3515ba3fcedad86e74b2848902089986bca91694dfa712b97c4f2878f287590aca47afb18d1ee6f502b90749f8ca1d796309c5bc96f5899f70fe0b4b5061668e62891b5285546f0dd2176649e5cba2b206953c7b66c57fe2e67c1c6e45682322d82c569c543840722756b7b4c92aa059e59983fcc327833931556346b83d7519b3a6b93691e74af6d26fb61bac9cce2f880d1f194d084171809bef926e99218f664bf18f58585985534281b6008d86f48f8c4044a4e4c89f4f08cee869c6a09b96df42d6435433d247e9e1150ac5b09da7f66d4f2eb0fc7f8f22bf11a0b03c9958f0562030d2c93b1c4a554e86b00f7c2e464aa54fe018bed4578f3ca0ee8644c3537b86da324703e7779fa897fdd4b867f7620e7fad29957f28067524ea180380428995ea333a3f291fdc67f0364cac8683e199a9a85c7caa3cc29db52f84aa0d0d07d5677d74816873e0af727a8555149d41d40a1eeb5944328a23b1be9e55ea81bfe461c86bb1fe3995e9f8dc83a77b06257c6356089bba2bd44e2a7acacf6de34262d22b0f899d0abd705637ad5ed1de2691e498851db106f1bcdada3a2f96908d3774f661fe2e8ec3ec598b936f4dc4d04b80efa4f57f3c55d0ff990b313643a8126aaa14d898e338f5a261ae5bb17b854cb1a87ad626d3b4ee29c567baaf409ad53891f707c148f49ec16f9882db396d1f140ba9e8b0c9a0cddde6592e5e82de0b18dea363e8605ca364aa68ebdc5f3220b810125fc787d339c6a5a68c92cbc64b5d265ce7a03a06a2409a8a18f000691cfbc5b205bcc1926efb589b82a7404d1bedf09e88ad286f7711a6d67ece4bf76fd86556e840d73f353d31b4d1c3dad5e83f72d540c601983cde7171e67b805bdabe3cd6788e30938b0398c1c8cdd5f8f1028f123d2d612611ce15f7637d2d751e59df171a4014efa4e8420bfcdb75b77c63ad1dfde967d4cd44792d1868d6df3c5bb5f1f3617861e24ee6fb58c33e6b82a57b29422dc0c5aafcf0ccf44557ede0e9f7d32be95f4a214524a30d37b85f1783c3e77b7d52e8648afbb9a03435c59d6afc2ed3b6ee434620c0b368ca6337cc7228916c5857d1bef27502014a0798ab099a7d7d9f053175b9e94d4e3736794034bcc92a842edd555dc74e69906a8021430655b3907ff0d5af127c847902c783e5e51bb45a3e4da6bca417774417fe2cd5d8448c5422eb55ebff2a44a378d528ab06419e6ee4ff6608eca6b44b8c71f55faa714bff9727dd3163b090330713d90813375c88b8681d491527f89b87f9433cce8f6dcd83fbf4f00215b3caef344b38ab4bd9bc5e3dcc3624fb60ce34acd7340b14d9ab48df15b1cc839265b791a417f90cd463df719fd69869aafec64df9bf010498e8d6397e1cb696fd68b38ca9ab1faf67b7123ad01781ffce12a3dc2b703cfa73dce16de7c3a09eead7ed6a644f96ae33a4bf179122906c969e99d9d99dc3472de3c48e80be4e9685602b23400bc292ad6f2fd34a2afb87660a010fec11d3ee82c164fb267957b6651d9150cfba16650952f8f8863709bf5644b0e4738c45199824511fae580548c7f655f0bf0bf3102002d80c2b2c3adfdf358f2a38346032120519b31dd906d3e26518b867d1dcb91caa5567976cada346044dc8e7274c0bdc0597556ad059f711868b83b8da5920304d08cdcfd3d5d427287f5b637fb7e2c14253452915fd6c6614f93c3900c6b3469d7bd87e2e5f15629316a7e8d4dc12ac80a89bb8c6ae7238144f82792bd04c2e741beb130c2a5a9caeb09e8f02b1480ad42486d0d8e5229072dc139115493c2c747920ad76391dddfd66feac8744d5662014bce98728b]
+
+# tcId = 54
+# short private key
+msg = 48656c6c6f20776f726c64
+result = invalid
+sig =
+flags = IncorrectPrivateKeyLength
+
+[privateKey = f5408337d0fee65c28851226a5fa81b58464632c78e2a9bef70d330f2e3a5f743fe2130a9185402b9ceee616adcf0aeb1b0adc5b7bd65b8469d9f73abdd491c7659d92d3c6412cab96a2de13921e6e28264326efab5964afee6490ef637e546aa6b61aba997daac4623b0ff33b4bbd1a11b2942500c737263b5a7b599c454d8442073855220447142672283106762324611334160331766716756876656306340247416643645788214401245418430332335014484266482863377264642414206877226544283410340543730247627225170453086122730061663720413006672700563545553308822632620516184200008121626450075764267612441006130131054105366434124552571655324024583437672387040523848872722438820242507702366302474748842265201861837063577540747600354316761325342724414244818807083666356763458818178730038860216678417556380528118134053806822634757706213780383068245037164828641644088712486666263228563278454077257226514241838623545046705775223416234252343326255430503041432773656045076111030080425435056385571604503837242375546781881637734567572558705071178084805270422810171125366178026263016101361657832287864742571181540760851116286862663367644442262567158480021516651834322735675322048815731072442030787610367014103700472855221118750731347147044142277174111214348353566824008064045627684488722675430832058628153456611117540326632627423710448122776364844470152004860248280007708325718482525552264175551177652286873852661125522335557583772044467545176204662306421267463234564162341677110818645117237332101582140278868362167651433830007175820104352222533408675507171265571436206825831530330505138722014332544414101453361865663285823831165654236338452842635115828271801121281582618708170531302365851580567783463004004872080286853401722161683240507540174321162726623307704357168735441623362805550771378557544025577664653883727145477726652161328654636765354441580462755002525303617004457666056523833318532171037664380506224158805461788342412558636736557807030038168058241037440287466117173258168248137753751448321557734277603877752226522005384287417756673375054253360826560561501724117752720403752166506773562110186547571130831846605687668266432088723466508134167088157733748882573483206443607642671007311272002682616013071771238832745526182648607836043640787500384324825714344453303465740312784685175588706426626253688784802024002168480055006521746017031355351420356313376038357500434586744155331653510137233135501164040340443180537652161358720413477471755650162313051181844240248360407773704517351058764775404747121083306411352302550060311617664848461285205032215087833220558462453850275140274158215805155381750850757850271010637641250528012682211173613444785706268032670127024707747567314772632848841668565545456641117066848041360116507056675046470163210801085300085527862576471877326436205146166232414075335513375673166307774724018723351488672332685528233522486007870307457262016571753124063541231514175538351737543321726247362412023101043212535074048080016006886215511021520172701460518406542024738500552450424583471822538241124124282248288348872240758184343246825136527273210452765138144072540628287154522674671801747806751802628540570743817583756538088277258068473227163621044527db3e8a7b37950eaf9af3770bd6b8f8c9572b54256463bebfcfa8920624daa12fccd1c228c4668f688976a5094a00b6e30694ab2e017cdc2d4315a381bbe84ee58340cd6bc6fb225ddc2bf8dc117ce2be59993e5a521f5296126f290d10097bb2b9f171ff3f5de8a5047e76a15594c3caddc7c0caa852b8aff91f435d3f039d3f27963c357691e9c9ee543f32a77691f8b8ad98d711f8191f5c9891f593d8c754b07621a42cd25a2e95c32156a356f7bf71d6a3d1be00c7364741f2eac5d0c5fb3ef93c6339b559c9b2c4f518927fbe1b87d49546d0c9ba801c224a1cca84916aac512fbaef6841f725c72b927b55d920bb9b8df4e89b9b09da7adc24fa3f9834a8a0380bd42f07801e4afac2bc1e852dfe41b0903990289190ddcdcc214a680e0247938a4b54b704bb6f0affe7ce2171ab7e05f8cb96abc352e44e9b9f60f6ceba0ff95703209197657d8228e93dae9a9f478a30700a6cdddb4ad484f963afacb39a3186e94e097fa25ab149c4c438458b24369f62f87159396f37de36fbcdae2acc7b996a90f66c6de64ad905ba6d4508d3c453e7d43ecb7c8692244f3de88c975046189a438f61a1a84e8d0eb11f93dae6c80dee63c2a3ece5b794483d60493a84dfd4d267eaa205ad0b9491e656e267eec42f5d3094982452ca10b420552d684242bb72d651d47e96da49077d73dec8fcbaeda2ace53156bb4d4392e21fe094a2a32d3eb3d4163ab50a8528800464c05cf2db162da56dc13e709844dda7cbae47ef8364c8c3d5fb471f9407bffafef778486c304088801624aa2318433459b4794f4c31ec2cac49d56504602db94a5b882a92b06ba9ea1ac40523fbf4ec1dd473c076d3e397941c821895beeb4b5fd5eef9246ed1ac724a2aeab43c56a6584bffcf4aed0c6629d5a59b719e5d677539c3dd620d861ee7f9c0a5f116a17e4bb3b16a8017e668612c1038b576e39dedaf7d848d02024c0065f1b896ad6594af4477c73544ef51f3e612c80f11150b1f394b9fd899fa6d927535efaafb745133a45442241579e57701399ba23b0ba62a2ef13b5eead46f02d2c5a91fc031e458be09a8b5d53d9843278590bf556e2258b371f14f07cedc213302ecc895e15be2eb0e771e4b1d6d10fffd2ab945dacc52287e8667ecefaf3c959dc5bc18d0d953ce392acaa67e3f457630cf266c7665253c3c04cef5a73aedee0cfd06efc300887d4694dbbb717f2813737d0fae91e434922ea831ae41349e44ed0fe9101309dee68c1337f050e9e16113e8ba47877202b97113b3b876f4333ee620cfe37b69e597162ad40d78f5a7be33ebdb38b9eb84dea68e01de157c7e74f4522836b64d146f719df851b60fe69cea4667daa057bc47a47248fc3073a904239c0f8757cd8aa52e5d837fbc6490a0ffd9a3dfbeed09c24c61e48df0695d8f37f5670aca01a3fbb2a5fd3bd57cf38c453f80f9de428aa0d860b13231c5b2e435905bae792ee21e6104535204f9ab1f90d8c3123e57e2d01b0091ed089b9083438510579190478b86980370bb0170992673394509aea3a64d241b0d5388614282c4172796b00bcb034769bb492c0fdbc88c1a30a040d637a7b9c496f620114546133fed394ab79413268027d5418bd61e6ce3ff18ab83f76ea0a2e5694a48c01931cbd1c4bb02a3515ba3fcedad86e74b2848902089986bca91694dfa712b97c4f2878f287590aca47afb18d1ee6f502b90749f8ca1d796309c5bc96f5899f70fe0b4b5061668e62891b5285546f0dd2176649e5cba2b206953c7b66c57fe2e67c1c6e45682322d82c569c543840722756b7b4c92aa059e59983fcc327833931556346b83d7519b3a6b93691e74af6d26fb61bac9cce2f880d1f194d084171809bef926e99218f664bf18f58585985534281b6008d86f48f8c4044a4e4c89f4f08cee869c6a09b96df42d6435433d247e9e1150ac5b09da7f66d4f2eb0fc7f8f22bf11a0b03c9958f0562030d2c93b1c4a554e86b00f7c2e464aa54fe018bed4578f3ca0ee8644c3537b86da324703e7779fa897fdd4b867f7620e7fad29957f28067524ea180380428995ea333a3f291fdc67f0364cac8683e199a9a85c7caa3cc29db52f84aa0d0d07d5677d74816873e0af727a8555149d41d40a1eeb5944328a23b1be9e55ea81bfe461c86bb1fe3995e9f8dc83a77b06257c6356089bba2bd44e2a7acacf6de34262d22b0f899d0abd705637ad5ed1de2691e498851db106f1bcdada3a2f96908d3774f661fe2e8ec3ec598b936f4dc4d04b80efa4f57f3c55d0ff990b313643a8126aaa14d898e338f5a261ae5bb17b854cb1a87ad626d3b4ee29c567baaf409ad53891f707c148f49ec16f9882db396d1f140ba9e8b0c9a0cddde6592e5e82de0b18dea363e8605ca364aa68ebdc5f3220b810125fc787d339c6a5a68c92cbc64b5d265ce7a03a06a2409a8a18f000691cfbc5b205bcc1926efb589b82a7404d1bedf09e88ad286f7711a6d67ece4bf76fd86556e840d73f353d31b4d1c3dad5e83f72d540c601983cde7171e67b805bdabe3cd6788e30938b0398c1c8cdd5f8f1028f123d2d612611ce15f7637d2d751e59df171a4014efa4e8420bfcdb75b77c63ad1dfde967d4cd44792d1868d6df3c5bb5f1f3617861e24ee6fb58c33e6b82a57b29422dc0c5aafcf0ccf44557ede0e9f7d32be95f4a214524a30d37b85f1783c3e77b7d52e8648afbb9a03435c59d6afc2ed3b6ee434620c0b368ca6337cc7228916c5857d1bef27502014a0798ab099a7d7d9f053175b9e94d4e3736794034bcc92a842edd555dc74e69906a8021430655b3907ff0d5af127c847902c783e5e51bb45a3e4da6bca417774417fe2cd5d8448c5422eb55ebff2a44a378d528ab06419e6ee4ff6608eca6b44b8c71f55faa714bff9727dd3163b090330713d90813375c88b8681d491527f89b87f9433cce8f6dcd83fbf4f00215b3caef344b38ab4bd9bc5e3dcc3624fb60ce34acd7340b14d9ab48df15b1cc839265b791a417f90cd463df719fd69869aafec64df9bf010498e8d6397e1cb696fd68b38ca9ab1faf67b7123ad01781ffce12a3dc2b703cfa73dce16de7c3a09eead7ed6a644f96ae33a4bf179122906c969e99d9d99dc3472de3c48e80be4e9685602b23400bc292ad6f2fd34a2afb87660a010fec11d3ee82c164fb267957b6651d9150cfba16650952f8f8863709bf5644b0e4738c45199824511fae580548c7f655f0bf0bf3102002d80c2b2c3adfdf358f2a38346032120519b31dd906d3e26518b867d1dcb91caa5567976cada346044dc8e7274c0bdc0597556ad059f711868b83b8da5920304d08cdcfd3d5d427287f5b637fb7e2c14253452915fd6c6614f93c3900c6b3469d7bd87e2e5f15629316a7e8d4dc12ac80a89bb8c6ae7238144f82792bd04c2e741beb130c2a5a9caeb09e8f02b1480ad42486d0d8e5229072dc139115493c2c747920ad76391dddfd66feac8744d5662014bce98728b8d00]
+
+# tcId = 55
+# long private key
+msg = 48656c6c6f20776f726c64
+result = invalid
+sig =
+flags = IncorrectPrivateKeyLength
+
+[privateKey = 5a04d37a8c83d373ba07da5cf96806002e3635ad8add42ce6ee9902dfc9a1f271d69371fb6d0d47fff2c2a3e14efdd968b5f906525510164dc0922789de9a36401c37f701d3534f2b12bb1cf025d76c2e28cf618c0dfe01eaeb99e89244bd9addfb0ea382be7fd5b84fc7a542da6df8018393c1cb4447cd8a57a2a4010ef668c892162120262656660577537620858306877288262032550153645008243057054217885086730253027718543115827673734834021026655848872507780160307120610653807615026121011654045584742242028050076212304644622036857780160574258268153175682380507728864805110378511663401100281288612604554431023467464318607638564716220174250501806756485253788101817760728110332166223400053388866140755703256378713651266251025143727143862156512628830358881868827351366230442135233067730826283313276701663806868606378477354802251542518664580001676813105243524037547434312857600076111675044534078713415665851221862481576565288714147773755146042124737138577158807552174524665527655475711031167755773405268058885826085172715016873355756131635087773263680176517822621475634868037374581758202262826405358827453764185573441285177646637046482664734215076273628557418472536417670624837714315770036225287425417545552835381262180632774576104156422128657852728607634888226030104476341211350275417301320538568576126854705873358535286252876730066607400671077451488287474673781057376755636736300351584316776077034760530472112026628657855477551476720662364873460023778603037564413774656371300714764330504086315152870325575220164151244123320758775702584254563302118684674181206428565763726336522613252227150246387837431861718613367336681068173381155570303618371877421018621034688423711364265326872170560016737288183135386051588605005575601562300482072351276338850813627300827045360182475734107841807172823405464035682762454727085134112788152668335867881603747747886438728275143456437138372534838423544772560485420373145867133245230318456430385001513766856401740560506632507806758013070578760882087560664118431087766457301152570784374156607668135523235127006508001844765168205625675515522851306463808170330288717426340542061017182525753272483381887050415385621873518551456220162640581837416542202384673046227788087360284411017141668004300724058448772845202481185421185106346558106858851458334352156853014853775434371558770778756562750800618155783837362317541122253861613131105617835532140332273154670126080050054821553732466882528661165754206308744168278778886451752026474481361880682130111255183607483727825030054507078150465157304487813686635646518564474314147540677352760104147038338840886546367137471653273322815730234801515416268273212123372142508026803610111663547542260815761245004581623328122653811435308228387031216118038527465681043658728857732880011211842720148824782314800256806645741246087368061875721027666682312103868210735466403846013883051130172662338686665824445442680428744316636068502645333342510762032110182576265825132061332306783484382753165436032405062768011781085432483762467688218557682520377778334416064410850584515378203731655448168158187085814234183301526115577255068758827451712316307151624186053783455822606128666687000188750627024377333667f9ea90a30bf9214ea584ea87d0dcf45fe8c7d03d54e169a64cbb64533f801d4563e1718d439e86f91e421b90b02f63a4d8bd005575dd0badba5388c48e8e3167d1bd314810fc2c529c220c89ef3d1bb549ef3410719e6ccb2e2c359296f20d9b717704b98ec5861d0b74786be357e3368ec11fd0783034abe1d432ae30fa38ea10775686453b73450bac84f76f2b525e6a9b937bae8a593bb3e1d8fa3f33a55c20864923a2274bf766c405e785113e5efb2d572369148be39e03835a05c904866719106c11eceaeb08eb553cda18be3f685a30223a16b09f4516ff5a3a28aabbcadf48a7ed7916227aa6b04ca899e157fd2fb1219671134ed555b9d8c63cf769d5b2277c43689e215dc1886440d25b0d51e42fe94cb5af18b316f7373251598dbbaa2c828fe8f90c3892b65f159b495c7b11c3a315eb1908df603f7264b41281a6f2c7abe75b76c45b9e9dcd563d0215c022a7870ba9a77c2756cf4b9ac44be1e89b8d58108211a89b33ce610abeeab2603a136a2cec9f4a2e3abf1200baedaa33c5ce3c68004a2c9e49399239fa73ca36f9f7c38aa3f5c774e5ebfd38a416411fbf9d6dc424f1d35cc36aca3ab5e57723ced977a4c36f6f2d52f2cdfbbbb60f8e8cbd875047159b83b997837b4ba6914ee408f5c63ea8168d8386ce4be6d58a52c0dcf7e36ce356d0493e79f13832ccfda167e87339881f22d5c04ef3180abb68bf385fd85a91f2bad501f8c11d18b111967f151e75b645fe6c6e9132ea9ebfb96bc015865dedcc03a80b689dd9884ca2b03b9c3c139765b085764290e77b6f98424677315e92f9fb581cb6322ad0a6104f5b99e646e43f40115dcf43304fa3ac29e4ab019dfb5f95b1d15ac6dc7285a77066ffeb17308e8d630fe0c66d63e7fa641de17c0f18814940e4d46855f421894be71bfb4688c74bde7c96748d412b3dd77f702216847cf997b9a6f25ed951b17c4d4939c30b6e1d703a74201bc7a962900dece72a038d69e0679016aa4d198615f37e484c953e773c2d813e74d73da6f291cb7a079c297f240f779ebd15a53e62cab45c98b2645b956e20549504c1edf3b96fd3e2dd50b69e0d8a6af3e286fd8df55f4623b9c5560a7e93e7341262de6c09f1ee74101f5ab2949254caa89f43a268e86a790941e90ba460fef076e7cfb16f33ec06d5fbe61bb8d407f7a14edc7ef1bb61d9130d51559b484f7214018c97a875e87d76f96879d48486193b94553f6386ee0f0581f0e8d4f894b66f7e859f7857e089a76bcc3c7ccfc1c623c9f552579afad69bd87d050a38b860c4d8a5dd9dbeb9dcf2e2a0a21051dbdd3ee12de710cd6ab69ac26c4d97ddf5c503a7f2358995da75953841630e70ace374e03371cb1987259eb2d9fb19e28c5a46bc0e247103f9ded74fc99171a732dcc9836040389b7db854bad92c95e64d383c53324b32287f7dfd582854d218c261f49fb32aa6338d590abe900bd5f75b9db18624ae6b725bb1567226c85f5cbe59663d46e6cec63e1e11db91fecae53cbba9e45ec3f5b1b7750cddb93c41f86eae0f30d760e07980bc7e25f8c333b9153d510e5c1b92b6468a6ba76202e87c73087660adf1145f99dd5742639e034c63f235375f12a07283e2b0547ae90199eae17333c58f5af5e03e9f2e34d3752e763b618045eca78b845253a31005fb886872b30fb1c3949db436853a55753f8e427227fae92e30c3c6ba8c061da52b63410c880ae255df765742821e0236e7c5b582bf922deb404c5f7961557b150eef668b04baf50c3a2d3e21f7b942d4bf9dae3c25bd81a9ae3a0d76fe1ce0998c310cd936597ae1e178f99df6adb7b46c08a909dc51919d12dc2cde5a7d55ebb442f1f58ea53bf92a92a2e13e9917447ec09da24fc7499c5a140754d443e947338d7723c2e89c620a55650c630e63ef3d732b68b79debfce10db8a52d9f325e2c6df03e9ba4604bf928f01ece3f26ce8bca0e152c33172f065869918fdc70866823809a228993ca4282d05cfc1dc40adb514f68e5645fa7ab51109eaa2a16b60097c83beb377b5366fc564ef77ff33daa536d9bf0bdbc8f4c8eb31f1f241ed65a5ec257d0aaa689b7b7dc2b3145381165ba0e3e13860cfeeffbb295f0be75536d2a9d60ab9ddf9c2759d49de5a518c23f43f8fcdaa0e861e3f1bd0ee0fa8b4993516d111b7da0acac70fcbcbb5edd6944cfcc320f7371545ef4f79732bd215ff8db228bbd801609af01cd2aec750e13d573b6941a0dc41eb11aa9c8cc3f734c28738c7337e13754e3a3d5a378918b308fa305719b89632623daaa38c44d740d22e7f3b943acf23a7d9e416bfe75c865a363cbad9066f2b364cabccd7d25d1d4f05474594c5730918e23f2f7df47f04c5ab2a21830ef70d4340399e46deed555b0f1362fc4200ede6cd6b15c4c951bdfa98f3bc69867d884f44d70d2c8c333dbbde59208d29937603777b2fb97d0a9117202f972cb03d0752ef69fc72a4a63d63b889e83d47a190889ec5a2b543ffe04b0f51e232ebc8cd1c42a8412e1e468d9db1c80d69cd41132dbc1ae272ce5f2a53af70836025eebb061db84d10b5700959e1d79fbbcf94e95b82b7f652d8a785b0c347d0dfc74d78acfcb97352dbb69e8e02b2034d3566bd3088d782b01b980c8da9166caffdb68dc0a4ea0b67187ba124058236ff727a4f15b16361168a3816a9b084114443da01ac1ff83e754047a025f42861ed697a799db164d32748b74a3bc5112e7b14c7a7fba184278a4daf17982ca8b30f6325b69f7d6e9b191b6c54766825fdc50d03218c9a00f89c6bb9e0fbee658a68fb40f60a88cf673303326f92909e23672e8aaba8670d16c498cdac10cb7f1942df44890e4ec29be4ee7d1e8d87d42639239a6cc9cef7c70c0aed3057d9204795b3aacd78699422c69b10e77285a51c0241f37ea3cc251bcf8c2c3478344714a6862e2cfd5a16127f2a14b92788fa6f3d9e64525c8afae9d383c09d286be154a4b9d533fe7cea43e7bff797d7247a8cbf9345f1b25fdcd9567363d23b1d4e49d10a228e5f0fb1c4750b406df731daaeeb5b6a02c795e6d9fff553271031ecbdc2c4849fee22ec26fa2cbc5dcf354e7938824949ffd01d5ac45fc71fa7c75de411d023060e79725cd46e6064b5d27056d45687632952a6cf9ffe773559acaf265c9fb92f7fd348cdd21b0334493e5aa92b1012e2067760b6beee9bd3922a436aa2c218f2eab0992b1a654663befbb0559fdb9d6750121128d5cacc8e8bfd6e99d37cb1944f578cfe516a10c584f5833af9a6f895e77a433b5a7c997bb4aca1d5e8fa5aba5f876c49be22e2a200b0ef206655d3a0d440874d117adb20fbea3c4880682480e6ec0ec0df50b64f1222fe0e80524861bd03fe1990a8a014ffa43fd6cd1c0e046fd7be1eb981f9312fa72e3a3259dbe4e71c66318a6573ae1bcea28a37fd2ea38542078150937a2371efc3aab7a7b75d7ad6902f30c5f36e3c271935e96825261ae9340df4f3d2c36c743d08406a]
+
+# tcId = 56
+# private key with s1 vector out of range
+msg = 48656c6c6f20776f726c64
+result = invalid
+sig =
+flags = InvalidPrivateKey
+
+[privateKey = 5a04d37a8c83d373ba07da5cf96806002e3635ad8add42ce6ee9902dfc9a1f271d69371fb6d0d47fff2c2a3e14efdd968b5f906525510164dc0922789de9a364bef2114db20c23e2612e09ff08803f1370dfec0fe7baf7caa0b136307c4c5e28d66131588fd95ef62f045ce5f9fc97fb325a615633cd8b3750e0a59af4ee68b585216212026265666057753762085830687728826203255015364500824305705421788508673025302771854311582767373483402102665584887250778016030712061065380761502612101165404558474224202805007621230464462203685778016057425826815317568238050772886480511037851166340110028128861260455443102346746431860763856471622017425050180675648525378810181776072811033216622340005338886614075570325637871365126625102514372714386215651262883035888186882735136623044213523306773082628331327670166380686860637847735480225154251866458000167681310524352403754743431285760007611167504453407871341566585122186248157656528871414777375514604212473713857715880755217452466552765547571103116775577340526805888582608517271501687335575613163508777326368017651782262147563486803737458175820226282640535882745376418557344128517764663704648266473421507627362855741847253641767062483771431577003622528742541754555283538126218063277457610415642212865785272860763488822603010447634121135027541730132053856857612685470587335853528625287673006660740067107745148828747467378105737675563673630035158431677607703476053047211202662865785547755147672066236487346002377860303756441377465637130071476433050408631515287032557522016415124412332075877570258425456330211868467418120642856576372633652261325222715024638783743186171861336733698106817338115557030361837187742101862103468842371136426532687217056001673728818313538605158860500557560156230048207235127633885081362730082704536018247573410784180717282340546403568276245472708513411278815266833586788160374774788643872827514345643713837253483842354477256048542037314586713324523031845643038500151376685640174056050663250780675801307057876088208756066411843108776645730115257078437415660766813552323512700650800184476516820562567551552285130646380817033028871742634054206101718252575327248338188705041538562187351855145622016264058183741654220238467304622778808736028441101714166800430072405844877284520248118542118510634655810685885145833435215685301485377543437155877077875656275080061815578383736231754112225386161313110561783553214033227315467012608005005482155373246688252866116575420630874416827877888645175202647448136188068213011125518360748372782503005450707815046515730448781368663564651856447431414754067735276010414703833884088654636713747165327332281573023480151541626827321212337214250802680361011166354754226081576124500458162332812265381143530822838703121611803852746568104365872885773288001121184272014882478231480025680664574124608736806187572102766668231210386821073546640384601388305113017266233868666582444544268042874431663606850264533334251076203211018257626582513206133230678348438275316543603240506276801178108543248376246768821855768252037777833441606441085058451537820373165544816815818708581423418330152611557725506875882745171231630715162418605378345582260612866668700018875062702437733366cf5b335379c2528de2db3c7486bee132f92e34b325eb2b474e238581051d098eb8130998a5d0ce7e8ed551a204eb0dec3e53a53025fae317c1d973a27609d5bfc3fdbe6360bd155f107108c4a5971d913a3615b28caa60b7ddc27135a14608d2f43646126402f3f591e175ee4c34f142d7c2332c6ade52ffc31095a5b4e23ed5b63dc4dc9d05496c4bf49b308f526b447e5601d98a3a111c62d349af190cc96275fa4665f1aa379ac393ccab3f5ff0d05ad217bb0a8f69eebc1aedd7dc219668f9742e1e8a2862e620bc60b06ec7700fa9060655a892f183e70f29f6d188d8b1aabc090b8c4ef967d6ea350d65fc02ef4d6f062c3c0421794ec261f42d93d6f12eac55f5803518def6b936c27e1516e547bbed41e86cb23708bd941f0c75d272a1b4c8d09164c99e3330142170c403164419b916f956e80928990ff35b52c5b09f4cb1635d212d912126592f2f73770c759b93bebf89b65d0efcede2d29324c9170a716b93ef99536714b7f5cda111499dbafafd5412efeb291f874f0401f52616fd6eb04ab7d4df4b69322ccdef1a0a5a35cb365d5b0b02d1e5c78a9e1fcf1c02426add4bea769eab6f5ad19358ebe3e6c45603fb5d056ffb4474984b7942ef2c03b3e2b2fd000556ffd1ccfdd874f5628809bd39e396e172b3b1316f77b7e11290a0c584a148ef9575e7de4547a680808a0f09e604b7231e4d627995be092d61141b874fd03da36a8933ce3a1262099097806fe9b9a0fba7b16a0343f3e76e69ae9d91f68963c4b48f9c7bac411600ce4dbf87b295de39bd819dc632fa45e3943810cc231a4b285101797f2b6d4f08ccb33daa67eb92d632eae427c63426664226ded96652d32c9b18c25c421db3b0984aebd8289e248dedc4903297df22783366de4b71cec53c308e394225042017b7f92688204ed6bc8b0c5f34011ae3335079eea47f617563498be1205166bd3a1c7bd8110d9e6503a0dc72fd550de1acf401dcfa212ddb3790bc61f04e4df9fa0112d977779f6dea4333a19749e17bb70ec8a7a18ef4373ef131d89b3f77182fda0c9f98b7a614967a0708938f2288feafd89d19a1f542606874f2eba5a0b7582b5506ec9d907b50dcbe0edf55f32a22ac3a62dc906976ed327d530c67103b5aae417a1d9dbd4538772daec64891b90e913bba087f7b1cfb8dab9a0cb95a19bad82ae6c34102cfb34f783dcb78308509325fcad64d301b59a50f7eb1337b279fd39fbf2062a314d56b1ac8d809997dbc094201a0ba7e46d2c79efef3b2f738c534083edd16c41d2d0fec673c1f15e9c3f996e830ec248f9f27049cb276c59920bf690caa54a8ca5d012a004e1aa12ee181b9df54a2688aeb38a7194b64c4be3adf2392b7ab5fc3de1a29576dc9c70060bbb633d4af5e890c6c6f7567c6cb17cfe14f75d8eaf1a303393b68520d88705b6797a78e991d01735c715d5b93f5231d04b662cd949677385415e210fae274f454cdec9081222cef1defb7818ffd1640d55cfab872718786f26fde1d00ff1192060e5d67769246693eaf49d88f75a9910a83888b40ca630fb3af98d1c1c268dd5e16f7b8e501bfb2fab98129e09439eb3fe7a6356c1c1c3019568a0dd341125536d8006a23003f1557fa1cbede1a78c046bb91b00e3f350019b7995864734c0dbdeca44de7afc847102e270d880b6ea6d01e5903228e7c7ce66ca0e1d94b6cccab8dc3c90ca168ab8a131cd9160b515382f9a667b54365cefd27006f0edb52b8dfc61237cec28e31e3e8aa8e2a1882c13d3910ef0fe61511ff5d230eff4bb990ed7f471cb5351e88d780d74686097c1c32eb8e918fb07242aafbd52f3c584a7f669fbb6d71e01ae12d5f21824bb5fd1e4812d7cb93519f62fb9bb3d7dc2eed33bc85107edb0618fb01bc38ff89f3de70d39a602b2b21413bbb55f1541eb9d4b6a997e10eff77c759e5565353dfbaedc2942053ab72c64c9bcdf22cc3f99d5130fb4b55eada0fe8b69368af8d83282f3bd2a9686b18d0682184b48ee0a0a76b1464a31b37acf8dde3a295a3ab293907fb4dd5a6703c765926e23fc58bedd769d427c1b73e0a6e5d9f21a5df54292187b9d32a2ead8b9f91540efb7e98a390f76c1ef40e9fdf9253193d5318e1092d104a7312ccad9e2fd5c9c5214ea4626d429c389dfc931333181b931e5ea723e34034a0282174ff89130533c1e6284a99f6a01e376cbb79a136cbae3bcba43fdf94616ac206a4deb4ede69a2c126854cf9a7dd351c5290951893ce6bddd3a97faa51f0807693ffaa6ab7c7a1af39883d78b8600651d2709f9c01c73d62750d7d8729fc5b410fecfa3147cd06e8a8e453929e22a1b4e6c3b5909bdb605d1b52a107812f37b0ad7f875162c403600f19f6c9181977d2e1670e7364b8184c5c61508f5c6903925bffe36b605300584e251383c859a72908260ca1a78f611364a80fad6387aa3b71ecfe175a2bb9eb8c4c801eea2a82d90f4a5483e0abe46f541042dcd4157e94e2865993b9fc45f257cffbcfa6228fee327463adab4299143e6b175065cb93cbc21b2ba4efe06dcba5477d4de623b221b435ed0d5100526393e0cd1d1c6b200277ce8f7f020f79e5119f85643d4089217db311d76ed9bb3576b6ac21f118af5c9c5bdeb9487014b5fcef89a14b5f85c3e9416a5d333e7a501199c55f388b157bb89adda91a5bc39d212b3526af5c5e7115c2419d6a92db81b5c8811b16fbb66ff09f52879b4f96aa412d768a53fc11d9651844f5e7ce16bef00da7c2d8a1ec61fa3daffeed9b4d0ec314cace4f38ca12911e9c71f63f4ecb877bed1b95ddc57872ea136d786414038834d9d00929f9c40f0e74273e2fd55d331f1b61370d8a0ef0dd212525158fcd4e0b7e6d8c3f1b367cd6395337c751d35e8d528908d7f92cb7baf384577e9902eba8b2d1c50c440dc18135e6ceaf16093e810725437c8c118c2ea9d09bed3f71a38c95f7baa0822b25f662d0709783ed0e725bdb9ccf936bf66c4a660ee6ef5f9c1a0e0227582a1a304070b286806ba772c8f1fce8ec5eb7a8735e8d15b8261d8852ec913816cfd739475d1412fef0e5a85756385a9626fee1f4927aa227ac930db6ade1da75b6752c1191ed766fe9cee652c0d34f96a5cd596b96da30a841177307d32cf375066c0f56478a3cd87653d13c010793f6912abba2c2bd53c547fb5992ea521f4c59dfe955545aec832833e6a4b51f745b1d6677947bb6492e991a2ba411d74a5e67faac65d8e9f451374987d21f17fe15f99856173760ec4692d52bb1bd51fbeb29302bc09009279272bec9141aa2444ad020ffa416fa35943c423c00261d54770074f78dfd640cade82f9e7280b9c4ec3f8bcbc63a2286b5ede8e21a06b1c251b525d1f41febc0dce86225b0edd6de59d768df541127649759de213d1a84dd0b03eec32006758b069c1e0a21121a15c706263fb3e53d6f37d04c77e35c9fd70541b2d5ad0dcc826c143fcd1076319108007a9dab1d6be5e0ecd59d609058132]
+
+# tcId = 57
+# private key with s2 vector out of range
+msg = 48656c6c6f20776f726c64
+result = invalid
+sig =
+flags = InvalidPrivateKey
+
+[privateKey = 66239a16589a522a029a216a75a70a5b1c9c49b6432bff6e4be262d4d999c01d31cec062b9c60b50f394bbeb12d4763ab04d83d9ab3f08e33d37d554cff24048575979ac2e6e7f0514f9a35fa2a883f233fac4b86f1550758ae699cca65f1bd67ece689da47fc9ee9e85d38155f966c03799bb6cfb84e4f62033ef8be2242e7932408022154728203603167521238242353364230840231131005254160344120788857083660860677307328184661267666638880601862538013373717055743172244673222581744564318645268487647648744822181107657700224575058853430771435823763877204630043265416834412157258870070332654331552302568213762268637262867008801821217084532357413540276337416828454777738754614726243574836313011182650413353050340242281384784566827854542526708350663711276625634421783811600336624151588868527246666012701436600340457047714352287518358571324270854251487282433310441753721750336723603720741180674308741406271041706774642452275121276685488818706526802600446656727025650583587812710015638545032327123705888272323147565061337882278550370743027354311135731014805044711236501621412707177440355768371288852635175864013440875037468752876438868432811223511663656780802653611607083240013215610452127068088060675150203475632008021387162747204736830560226033878614000065603182607244627143832225054130633711381122227321416540407136366115730268703071054615715285784184260275660140373786245186018507127737863223013380368820420547741151728723556632131861616740726478661656061566425273445110884547058755872508267723373620280066057624120653788300651603066073865635224244352484606318773605547653728672606008270280735276453780660462317043586002558612567726451130817027005772250815402608374422173285628866288705502645225267320446537653037432846821705650000888813488727065835054656446100872703377120640112743320520611624042610131475885253707086280775714682262477350351765727761323766008758054845403022151314375385205876518704600321776235338834203703661125152435414454240824321336435061782411135353261425058277118344681204575500448378710553438445763504753681020215853063765112814402068831838572270273472221081135086734024067405853377738152308522703205660667452305688786601478430207157830322875031328526785111875001542476182130575450684154613326102174218604106371166783063113673272658570654485204457148261083126527761167424676528131352748632671657666381722472664166454051211324457616882352830512881345322674872414588207352835233551845170272083026635525818643630725625451844187047563466481002253406521472308546874428684758306145451321385854605053765560054787253885833180508167712352167808017137331368544008218685688678200312887258641115002164116588525433272838003582612448378074275306760485141756323744845668324835178162334444741456668210120456736301032046030511685448186102876873542041333388827130288246107660284711662262573311777184721168240586672600736406742733355000733415126854125710813870837667808140286733422622017000211343467075654811231140760847446551763153337342602402005247263367334757842664276583448212857670355080261066438777426633471027657733213460243307014534503654548465421747073103725061336286000543752136483384831425230660187866011065508630556384411877541187044c420186bcbb9bbce24b3b334a4db01dd8644cf8297d8faf526901b4abfb8a2a3a2dbb6a3d8f4776620e46c411299b1f4873c257800105c73dba020921c3775423713d08781bb1e28f17815b096babdf9d73b0f008250efe0a98ca1cad2d21702573b64d6ac94c7c5097349b2aed93420552b64d0db872c9c3daf37d8a203d285022e1261016207c8b3d00e9ed61309bc474de79d3b539e4809f9fc7fc5ee0972723d98e3ca426657e882d182b86939669267cfbd6891eca5eb7739cb2494c8dcaee745d241dedffbc9d4b98a4b4e3c9f49884dc963812addfae226371ef047f59d95d4aef899b992203d5d7724b19638472c34a197ebe03a27d160f123e47cc79da559dce52783decaf3f1490fc30e8263525b474e835f80ecb7ba3c5943222b4ee0e973d5291d8aac57eac7a66e51721335d3907fa7df9e7e7da52e1d006527a7177e4e1a925e7013557489b7332c2836e39fb3431b9d5f1ceb7e52a3fb2acc10dd0d9e98cff6dda9a84c634c9698e22da9f71a9c676956dbe6e74ee97d8a0428a3358a2748af79501ba5043b85e1845f0fa760781a456a75e6d66767ec0c184274fd1bd9a7ef0bc4bfbe29e48f15ab39622e849e534be2bbda0fb4f9f0a4154bd45bc73f065b898e4d0568f26f68d37b9fa40cbfc02ff27afe30f3855ce7605e7c0a9f7e77e364ecc6224c5597ceeed5a419f8221d46225a7785a83d3fedefbe1a232edde5f8960c74ea92c801c8f6ac9962a7e7ac0bd23efc9deb4dc32c5ad46dcdea36fdb952a82503a3d76769a5f725dc8d2386862c766e51dcc1391cf06fcd4b6978bf6624f2238c3b5b9a5f1edf85867d638503081982a6ef6cae373fc8ecdd3d3533cd5489844798d3642285b6f7eb4aea52f78ae27ada40ca3841510e08b651aa3feb9b501702796885696935eca99b55cd44511fb7bfbca18acb075dc0a0b9e0e38ae950eba2a7341b928572cb5fe0d1acc3f2ab6438db5b6133b52b579eceeba54decfb35b83ed721aae6a723e9e5163dfb506cd5e729365cf8ef19c706af7f3c925c9967dd490621fc9a1947c8ee4a14c88bdd77768dedfe546898a4714c4f739092ddcf57f78583deb844f00b13ad052412a2a631f6be48081627631b307daf576ec47eb53f9dfcac6826d214d8b0f38aa5bee277f1f320458d6447fa7ce0d81e0b0bd2662416e1e6a2eecb5ce68a2c91516ccc48c95a7078ec713348e5e84dbc0af4f0a6dcefc0dbcdbc93ee9a2e29c6150f1504edde47ca74ac7d8d415b03592fc0c564c4c1f457b20afb16701d5850532d59f8065943ec5309418a387e8f0acb30aa219d0135f2fe2cc3ac67311a93548012f4d072f2d215b78717bdf049011bf7350aa2d42885b9e1f374a00a988e6220a32cf699a5541642116e58cba9cf00f9c9314554451bdcd04456ca3ce447aeba755276085c42d4d39834b7ce1e411e7f6a84fd374dce1c1febe0647980ed79a4b99e20d285f564ed7f55fd325ada484302a58deb42b874a0caa2ead4dd8d89aa1c81e098905b12d8bb517d28131e7db30aba26ee724d4c102e7a2c253778edcd04afa44a4858484e5acf971a173c6d12dead4ae6c198d5c13fde26893f8c992a3bd1959cb7330442ae56570f9f1ce4fe44bb228dba1ea609c0e2eeeff0f6ab5dc99a79a4c3280160aebca68795106715facbaa3b5c7277c49902074ce52d414c6a210b961ea823e90118ef6f6ec5394cb0a0470fdc759b8465ffd4475771df69eb4ef8df61d02cf3829c0eed9a41dd25f4158611f591f8f7b803b8da6f1faf6100a39ccd683a4aacc4235b2831830ccca9af797dc033f9ae0a10d37b750244fc6c8885b1182148a938bf904dd535d0e15cbd647fd83273035d40b823451c5581539aecd05ff9df528ede8cafd2b5e59a7dac9e6a1cb0e434378fac8fb4a086f52e5c2285983faed929fe841c49a73c8f1da18317a0f9843f0cdd2fe451f28458e1db2d04f08a6d5ade68c63fe68b48f3d34b44ff4d7ae4a4de8a869f439bb511301d02a4929b480612de5f0f69e1d151dd5c845a1a2d080d67ac1b902529600eb7849e77f7dabbd078235b79f4dd6db77bcb75fdf29660bc8c16a4dbd9f609f96e9beb397e3635c604947517599abd47599b1ec95359de45cf039c02fc47c2ca9ace91e42f28b2abd6f02d1332403228a4dac1992febec22cc1afdb77e452a231a7ddb1b09407366081894ee2ae3be1fb14f9f82ef87b8e956831a52ce818e83f77c8f6f100221c6b3bce70d6f813ccdca43a51ba7dd91def8d6a96bf5095dfae7b394bbcd89402ec353aaeaf2ef423bb4ba904c89029d1af9417fa594f6855f465aff28c6d777709a8a120ae09d4ef426fc9ce2d13ce09b192e9e199610b5466dad8c82798c70b62c4eaf1ec5a049825c674e3ad9bebad29ba00e69eadca562b4b5715e2698287d2bba5aa92d0458df530bb9d8ce705a3371c5d5d880faa9d83d227316009a1043d7a9757056d720e8f0c139a4bc48c027f9137a1c0d3fff417318e33ec7c86343a955883f20f4f6bdb8f46b7b551f87b3993c04fcc6ad851a333fb0462892312328be0300be5f581a7d098b1a2cc1dd6d9ff898eab301c9ae2dbed850bd7d44019a161b574e3db71a37d06ddb2edb9977666ddcd34945f493ae5dc5836847ff9a787033e2160fe2ae417d90664279913bbd4156ed5fa47d70dac2e28b6cf079ecc4b1d2f76175c2a1cce7228dfcde7b75954135ce3793664280b3a3d68a3312a24968d5b46cd1f6d65380e902ca730d752d174cca9279c76db46fb7ed0b1ad323581324356164e88692c78111311c4032c43b6ba466ef63a6d41fcdefc24b189ceeb92048f2c5e5b206ebff385b7139d55dc1786159f92d09b466ca15e4e94048e22f919300c7127de01ec95d75d4d57dd1cea6fb7d804a9aabd7c40d4dca9c8e2dbaab96f39fe7de5f37a1c6830f384f58e6feb4533d46548522bfb3a21c64b42dcd11d9dd763a8a3d3cb111080e2bce67a06bfd9b741bafc380c29e91000c41c78355eb18a47c3d1a08d96e39ff3edb5ca7fc2a9e6b723b5c307ed2ba03b5284e31bf7fd457aa9e836eb5898f9aa82342cdf6a41d93a3664258b227ae25aef560e09e944d8afae81055c2301ee271136937b1f277b7dd878a2ec9c9b3f2c417a09954b9c12144ebff38fd67416c5a6854986002ff94c40afe858e12ed490a246a96b0363729b08da4e5af2f00b0d47a17ccee46991713fd9b09ce2fabde796128dd115deaa8d4174950c3ac228056d609336aa80fb53a28da927ec3b2ec194912b283e22ff70a5a0c527a1b5b3c203e04868b186ad9269ed4638f9123e4415534410e78e5c46a41feb215eef167117c204e4c76d020822f33f61ff6a7a91b544b30c4021d42ae7be8e3fd15678c9467dd336b86f24105d3d8a2ec1c76d009c8ae85be0e179bd17cafc930f8109f00ba0d7da7e50bd23b7dbd1bf9fdb87d5b0941b1e34af8274ba7c74e871062b6209ce820dfe70ec6a6d373e4bf7387566d]
+
+# tcId = 58
+# rej_ntt_poly (sample_uniform) requires 5 SHAKE blocks
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = af2040f9d90996985b6efd6a6ef90c465369a9ab95efb537c85f137d528d26ab7a4d5035efe5f734341775263e3b117d2f2c5544b0ffffe4f548c87846deb2d34af083bbb07e3c358fc78bfac471259d87043094833956eb4d9b23d1acbc7efdde13ebc883290783e33d743bb10a13bc8eb2a2e6ed552d8a1780055b36fcf0987b032487ea60b8f51158016982cc2aa49318284d5e600eb36c405d62ac7d6c32f88b1f5d41f5f8d5bbe3393033c51a95876c0f9c2124d6d87b98634a29269be830da07725cc8621b64480492af23c67aad018e44c2b957930e36171d1ef3cd6311cca9ad14e1c58a7d6ac6d2cee66319faab0b0c92533a1bb98eb909f5feae67c16e4e29da9be03daf0092cb2ace5a4316f2a6781109c19c19e2d38631e0aaf91aa27c8b82c8def955152bcfb7b2df0b2ff0b04105dfa209b3d9019444685054d439ae117c6f50faceefa46dfca10bda1213237f898143d42c9f83bcc9672797d4a03094431567983c1d8e816011bc4e7190e3f6555fe9bf77ad61b8415b52d2a36c62e5f9368b6fc0e7dc5d82c682d46cd189abe12d933a783fe9f4b46f87b705d0c90386efd551829fa995942af1bdbec31cbcef50fbdbb7e76615dbbfa9ad581b59aef0c922a69de190c16e5c4b0a3d6f0141f58aca58965e100b50163beb67f9c57ae8e79ac5aabb24bcd3600015cc65cec80784c9d05874610350cd01ac43976276f0ca6163d99d495f034cbdb9e39d24efc1ac9013dcf380ba1cb676a6af8282473868e61ff4f0b13aa2325aca910dcd767030b2cc5e44fa7e17c32786ce7edc9a432db81d6654830a16b3b4e37c12617898d5d2b634fcf250ffe545f4da5a289d470dd4ebac4362ec08ef04a31e8021a8c760fbff797773058ed11d71511b5d95f0019240743ab44527db4d613c2759357c291e7679d06c930ee435ae77f4f2d13c4e767b7adcc32e373efdea94fb70d6aaf96e64b28ed4fbca86ff1bd2656e392c8c4707e3ac6ad8b0c85c2ed19328b942f3af5eea89a7493ee8cfdf86fad43084ba7582fec07c1bb5649d5177a312d1b70f7930dc1ddad11396e5e315ac7f1d3047887a3a40a85d809f72b2661786e311928a6e61ce7854ff854daa170b9c406feebf3dc33656c9153b9f5e44aacc084bbec9c06e79a103f2544d6f5ef06e0f525687a10f48f9f08dff7d6f5b467c287fbe15b33341e3e44f8b27a87342f40dfbd20ebc214eee221115abe3f8620eaa424a59c7fa038d8969a5a95a6476e65820afcee40062e14d498544a3ff95e308afc39d241e1d8e403fb0570e2f6242771f20de2c792b6bd2996e1214297b1fa72c6843cb4f7d0196f9a40716385a3a5344f046e33e2fb089ea1f08340ccb563373795aa3e2fef7a8509d7ca174a5b6cbba90a56d743078bf9dc37fb7887187d6b201c5b6cf0638fc3e36d1db8611c468c04447a4b670a5cb55d9178a3ad2cd7817fc01dc8063161a1f9d460c831208691f30aaa4b365f074c601c6ac29056b7dc2279ae6e6467a7c2476f3fc041dab076fcfd5a9681511283cc1dc59ecd5472c99d8b8e87e5392eab30d25eeb40cfe4b7e3158d307b690706c59eaeeba9bcc6cf3e7081847789cdb83c55a3fd77ad8952566cbe6afee69a11774f10d9272ac6351b2c086a7fba26bd36ed0ba252d7b42943185235180beafb9154c93b5f87fb7561b3cb0aa3964a5d0aa4925ed09c90c0c18798091ba0aec63e3f48bca675978050f201aabfb34cc6f0497b773c2daed9178bdec949f61fa267a83dc796af329bc15d38994135fa2c97d0f805807105123a76b86cf9c82b8879450e942574a5fe2868e7131fb66be7221b4fbd25e6e19004533b6a3d12e91b058eae18318d0a5f324b0f9528a3459737af6e25e8d2179856ef0bd9f9de025e6afaee1ec49e8c98f9b96981af3cb1ca1b1740fb6dd86d48f7c6ae9e8541dccddb505a4765dc5cfc2e3caef4381a237ca2167f263f3c5f2db11eafc52b21a98d9c54619ee5c24cde5dfc8cecbe5bd086ea2a5d6616ccb47c0451b24019373edbca55bf23d1c365ad361a21a1928d72b4c8061d5cf88a956eeea3fcbc80609ca751b5a9004d887102e93867c4ad70f09105a666c3b9a575af0eef9799df422896ef11ad1281ec0032877520162bd52d59351e70fca453e4f2c85b23fc154c2a294b1d5ec0019c7754215efbabcf82c1e7f94d5873c0a4e3ff121e64c85b83bbe94bef011d9a9c8ce9ca692f177f7d0e3f499d684924dca2a653b90b9ffd485bbe88ed87237abc4ca6b55c3b71850a34dcfeb1d3efec5c83074bfd9630c308b8d94ddcf79fc813380ea7426fb10b2b461281bc38549a38f280bb2a3032c67fcce24fddacd8683a1798bc6cfd6add30c7b2dc9e04720f5149e1b1a6a39b4ec08a0c093a67987b7dc320bbe43f05cdafc74759b87cff4731af336445993f685ef5dfa3db636b830ee33bb45c5f51bea8ee5cb9ed28a4176140eafa2c0ef593b40738b9857f8ebfef3d2930387a11dd5daa630b8fb5744fcac692891e8171f3ff0a08ba5ac81cae0cd62a364f1b51caa4aab3085acb56a47cd75eafe860e92a6938a9205418e39bbaed6cd6fa9576906e17c57682b755314f437dfe1efd5c56f6782f2a8fcd489f4fdba794b452c7ffb45b9325beb72af3e2e77f1a3a816b1e5fd25d5e3864d90197dedda58375ec4d78c7302e787902dcbeb173f43da248ceaa8dffd1ffdd23324c4dcb1346332a70dcd08090954afdbd27cd3932e9acc2e9c889c02826bef84d077ff066ea06261601a9a06e5f3e8b9732821b56dbb2b0fe476ebcedc4142b9c8255c2fdfba17fa5c7e0ddd976dd0c9e5b1420aacbe03e34d8846e8bf17f79cb82038187db482957e6c054d33ef5b63937b7f64506dc384a99e47ed4eca348fb5b62a3639b84897f17b782b02131688a75435caecbcf7cc0bf0a88615ecd2ab7af31a0cb5ac6c3c5e3c4696e4b10b9c9f4e3323cb1817b2e175dff035fa36714cf95f8e151fe712bc38939bcd47b50fb202093d297081579637fa97dc8a0690efa7c2ea071ba4d4e1896387115001276d3cd28fb6217bf2ade25f2a3eabb81d08a68bce79a58ba971dc1feeaf248d47bb20dc93a68e3f32d19658cd3f1b7bb2c5d798d73025174ae8caa6d8a25f1e0e3bcdbd90a2794ef9ae032005b6b95b701c6122693a12ef18dce8609f3a48c32cf79a0d04f94bb4a6b74454e09c0f253539b185a7d5793e05cbad6a7ddd79d80d4e48934bc2e610f7fa49640d2536a0409aee11bc62b2f4e8070ccc59038dbfb7aa2b17acfa7c841b7d943c82d6efef90dc9349a3bcccb905dad4a3beee4e867581cfe8c31bb2c2f3f187a408d16de3737865954369b41c9459fd7cb3b7ef86d3cf5cb1c3ac9b90ba78049ed35470997f15dfb8c2e02033c21b8f5bad83b842004b43de82ff88df93f2687e67467990b61511af8119c0ceb6ba255a22c7479dc06036797a27067790e3836c481cf904f9f6b484f67561aa3ce9661f95d8f67a5028b527d7d530aa1b92c6a6f344b9de8286bdc755d1e973884e402cf37a3294a873a93229689f9c5018aa151d53e4fa78aede7ebf374259ab131d9695c69232bd2c14aeeea9c1b53635b733965f391d1b1d313d0e2ff7628398011fc95d52b07cb25f8404b6fbca17362422235e119c03a1db85a6d27657822b17adf9d591dea9848e748b6ce07a28d830059700d64d47490bac5a94010618ca03c1654e81a01c4a6d93d86115f16d620fa63da2a7605ce50f97e56a020bcf22e716cbd76354e9896a264cadff5d367de89d8bb48999d6164bd8f7648e4ac0bb5f2652336e72b445f6f0232920d7a00eaa25dd6a0d46d8883f48d2b2c10b72036c6904d4d5d093f913ce625922a146f4e7c908b21a8b8939dfdcb275b5fe5b52ab1f446a4fd2a4fcf5a4bb1d0c9c3c550e6f5b0aadc4d411e87eacd585ebb8c4637f9c185cdf7b282c387ad49f8bf0b3f8c2fd63f9336c0c8c4c708b9d3fff0598cf134a9d205914cdbb3802f0eb5fbbbbde18e0fa2ab4bd3ff2005f04dbdf80ca25e08e408055ec2abd1a345845311dd8dc10c3ab128c7389bf2a9f06184651fe332201020f711bfbad269ba8c9dd749ba727169c6662e319ef0013c97c9980e1e0cd275e6bc51316f0f83a57d784c639734ede4fec26e670976415b7dce3eb197540088817bebe81f361dc992d16151b8a38b88ae3fe0fbd080a1264a4a73526b01e34495e411aacdf4ac1c893f668bd095ff65643d42783a758f8f712b906f20f284d89f6efa1453ae06dd0357297214b9ce7944af4f40e3ab8817b56f1bd3fcadb9d9f366d34271fc3045f05ed2eab57aed068ad6110050e64adfa066923baa566d9c2898b2c53bf378aafd2b21feb94873fa2e65496f69f6f94321590b43f409947e996697bd93f03e3337286110a262310e0072bf62355b84099106885a05cc1bf929a42125b337a7ced1ee2ce0f7be5a68f82021027761c3bcfe134e5b554d7f08a709a180d779152f7c85eee0af248d43631edbb845a1b4a27b09cf8c69fb1694ac69060562114daccc9ce702f6eee20398c04434471777b9fee2067a5aab0c160c3cf3d5a71797eb3de000712161a3150708eb7c7d0e8101f343999bcc8d8ec000000000000000000080e1118252e
+flags = ValidSignature,ManySteps
+
+# tcId = 59
+# expand_a requires 150 SHAKE blocks
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = af2040f9d90996985b6efd6a6ef90c465369a9ab95efb537c85f137d528d26ab7a4d5035efe5f734341775263e3b117d2f2c5544b0ffffe4f548c87846deb2d34af083bbb07e3c358fc78bfac471259d87043094833956eb4d9b23d1acbc7efdde13ebc883290783e33d743bb10a13bc8eb2a2e6ed552d8a1780055b36fcf0987b032487ea60b8f51158016982cc2aa49318284d5e600eb36c405d62ac7d6c32f88b1f5d41f5f8d5bbe3393033c51a95876c0f9c2124d6d87b98634a29269be830da07725cc8621b64480492af23c67aad018e44c2b957930e36171d1ef3cd6311cca9ad14e1c58a7d6ac6d2cee66319faab0b0c92533a1bb98eb909f5feae67c16e4e29da9be03daf0092cb2ace5a4316f2a6781109c19c19e2d38631e0aaf91aa27c8b82c8def955152bcfb7b2df0b2ff0b04105dfa209b3d9019444685054d439ae117c6f50faceefa46dfca10bda1213237f898143d42c9f83bcc9672797d4a03094431567983c1d8e816011bc4e7190e3f6555fe9bf77ad61b8415b52d2a36c62e5f9368b6fc0e7dc5d82c682d46cd189abe12d933a783fe9f4b46f87b705d0c90386efd551829fa995942af1bdbec31cbcef50fbdbb7e76615dbbfa9ad581b59aef0c922a69de190c16e5c4b0a3d6f0141f58aca58965e100b50163beb67f9c57ae8e79ac5aabb24bcd3600015cc65cec80784c9d05874610350cd01ac43976276f0ca6163d99d495f034cbdb9e39d24efc1ac9013dcf380ba1cb676a6af8282473868e61ff4f0b13aa2325aca910dcd767030b2cc5e44fa7e17c32786ce7edc9a432db81d6654830a16b3b4e37c12617898d5d2b634fcf250ffe545f4da5a289d470dd4ebac4362ec08ef04a31e8021a8c760fbff797773058ed11d71511b5d95f0019240743ab44527db4d613c2759357c291e7679d06c930ee435ae77f4f2d13c4e767b7adcc32e373efdea94fb70d6aaf96e64b28ed4fbca86ff1bd2656e392c8c4707e3ac6ad8b0c85c2ed19328b942f3af5eea89a7493ee8cfdf86fad43084ba7582fec07c1bb5649d5177a312d1b70f7930dc1ddad11396e5e315ac7f1d3047887a3a40a85d809f72b2661786e311928a6e61ce7854ff854daa170b9c406feebf3dc33656c9153b9f5e44aacc084bbec9c06e79a103f2544d6f5ef06e0f525687a10f48f9f08dff7d6f5b467c287fbe15b33341e3e44f8b27a87342f40dfbd20ebc214eee221115abe3f8620eaa424a59c7fa038d8969a5a95a6476e65820afcee40062e14d498544a3ff95e308afc39d241e1d8e403fb0570e2f6242771f20de2c792b6bd2996e1214297b1fa72c6843cb4f7d0196f9a40716385a3a5344f046e33e2fb089ea1f08340ccb563373795aa3e2fef7a8509d7ca174a5b6cbba90a56d743078bf9dc37fb7887187d6b201c5b6cf0638fc3e36d1db8611c468c04447a4b670a5cb55d9178a3ad2cd7817fc01dc8063161a1f9d460c831208691f30aaa4b365f074c601c6ac29056b7dc2279ae6e6467a7c2476f3fc041dab076fcfd5a9681511283cc1dc59ecd5472c99d8b8e87e5392eab30d25eeb40cfe4b7e3158d307b690706c59eaeeba9bcc6cf3e7081847789cdb83c55a3fd77ad8952566cbe6afee69a11774f10d9272ac6351b2c086a7fba26bd36ed0ba252d7b42943185235180beafb9154c93b5f87fb7561b3cb0aa3964a5d0aa4925ed09c90c0c18798091ba0aec63e3f48bca675978050f201aabfb34cc6f0497b773c2daed9178bdec949f61fa267a83dc796af329bc15d38994135fa2c97d0f805807105123a76b86cf9c82b8879450e942574a5fe2868e7131fb66be7221b4fbd25e6e19004533b6a3d12e91b058eae18318d0a5f324b0f9528a3459737af6e25e8d2179856ef0bd9f9de025e6afaee1ec49e8c98f9b96981af3cb1ca1b1740fb6dd86d48f7c6ae9e8541dccddb505a4765dc5cfc2e3caef4381a237ca2167f263f3c5f2db11eafc52b21a98d9c54619ee5c24cde5dfc8cecbe5bd086ea2a5d6616ccb47c0451b24019373edbca55bf23d1c365ad361a21a1928d72b4c8061d5cf88a956eeea3fcbc80609ca751b5a9004d887102e93867c4ad70f09105a666c3b9a575af0eef9799df422896ef11ad1281ec0032877520162bd52d59351e70fca453e4f2c85b23fc154c2a294b1d5ec0019c7754215efbabcf82c1e7f94d5873c0a4e3ff121e64c85b83bbe94bef011d9a9c8ce9ca692f177f7d0e3f499d684924dca2a653b90b9ffd485bbe88ed87237abc4ca6b55c3b71850a34dcfeb1d3efec5c83074bfd9630c308b8d94ddcf79fc813380ea7426fb10b2b461281bc38549a38f280bb2a3032c67fcce24fddacd8683a1798bc6cfd6add30c7b2dc9e04720f5149e1b1a6a39b4ec08a0c093a67987b7dc320bbe43f05cdafc74759b87cff4731af336445993f685ef5dfa3db636b830ee33bb45c5f51bea8ee5cb9ed28a4176140eafa2c0ef593b40738b9857f8ebfef3d2930387a11dd5daa630b8fb5744fcac692891e8171f3ff0a08ba5ac81cae0cd62a364f1b51caa4aab3085acb56a47cd75eafe860e92a6938a9205418e39bbaed6cd6fa9576906e17c57682b755314f437dfe1efd5c56f6782f2a8fcd489f4fdba794b452c7ffb45b9325beb72af3e2e77f1a3a816b1e5fd25d5e3864d90197dedda58375ec4d78c7302e787902dcbeb173f43da248ceaa8dffd1ffdd23324c4dcb1346332a70dcd08090954afdbd27cd3932e9acc2e9c889c02826bef84d077ff066ea06261601a9a06e5f3e8b9732821b56dbb2b0fe476ebcedc4142b9c8255c2fdfba17fa5c7e0ddd976dd0c9e5b1420aacbe03e34d8846e8bf17f79cb82038187db482957e6c054d33ef5b63937b7f64506dc384a99e47ed4eca348fb5b62a3639b84897f17b782b02131688a75435caecbcf7cc0bf0a88615ecd2ab7af31a0cb5ac6c3c5e3c4696e4b10b9c9f4e3323cb1817b2e175dff035fa36714cf95f8e151fe712bc38939bcd47b50fb202093d297081579637fa97dc8a0690efa7c2ea071ba4d4e1896387115001276d3cd28fb6217bf2ade25f2a3eabb81d08a68bce79a58ba971dc1feeaf248d47bb20dc93a68e3f32d19658cd3f1b7bb2c5d798d73025174ae8caa6d8a25f1e0e3bcdbd90a2794ef9ae032005b6b95b701c6122693a12ef18dce8609f3a48c32cf79a0d04f94bb4a6b74454e09c0f253539b185a7d5793e05cbad6a7ddd79d80d4e48934bc2e610f7fa49640d2536a0409aee11bc62b2f4e8070ccc59038dbfb7aa2b17acfa7c841b7d943c82d6efef90dc9349a3bcccb905dad4a3beee4e867581cfe8c31bb2c2f3f187a408d16de3737865954369b41c9459fd7cb3b7ef86d3cf5cb1c3ac9b90ba78049ed35470997f15dfb8c2e02033c21b8f5bad83b842004b43de82ff88df93f2687e67467990b61511af8119c0ceb6ba255a22c7479dc06036797a27067790e3836c481cf904f9f6b484f67561aa3ce9661f95d8f67a5028b527d7d530aa1b92c6a6f344b9de8286bdc755d1e973884e402cf37a3294a873a93229689f9c5018aa151d53e4fa78aede7ebf374259ab131d9695c69232bd2c14aeeea9c1b53635b733965f391d1b1d313d0e2ff7628398011fc95d52b07cb25f8404b6fbca17362422235e119c03a1db85a6d27657822b17adf9d591dea9848e748b6ce07a28d830059700d64d47490bac5a94010618ca03c1654e81a01c4a6d93d86115f16d620fa63da2a7605ce50f97e56a020bcf22e716cbd76354e9896a264cadff5d367de89d8bb48999d6164bd8f7648e4ac0bb5f2652336e72b445f6f0232920d7a00eaa25dd6a0d46d8883f48d2b2c10b72036c6904d4d5d093f913ce625922a146f4e7c908b21a8b8939dfdcb275b5fe5b52ab1f446a4fd2a4fcf5a4bb1d0c9c3c550e6f5b0aadc4d411e87eacd585ebb8c4637f9c185cdf7b282c387ad49f8bf0b3f8c2fd63f9336c0c8c4c708b9d3fff0598cf134a9d205914cdbb3802f0eb5fbbbbde18e0fa2ab4bd3ff2005f04dbdf80ca25e08e408055ec2abd1a345845311dd8dc10c3ab128c7389bf2a9f06184651fe332201020f711bfbad269ba8c9dd749ba727169c6662e319ef0013c97c9980e1e0cd275e6bc51316f0f83a57d784c639734ede4fec26e670976415b7dce3eb197540088817bebe81f361dc992d16151b8a38b88ae3fe0fbd080a1264a4a73526b01e34495e411aacdf4ac1c893f668bd095ff65643d42783a758f8f712b906f20f284d89f6efa1453ae06dd0357297214b9ce7944af4f40e3ab8817b56f1bd3fcadb9d9f366d34271fc3045f05ed2eab57aed068ad6110050e64adfa066923baa566d9c2898b2c53bf378aafd2b21feb94873fa2e65496f69f6f94321590b43f409947e996697bd93f03e3337286110a262310e0072bf62355b84099106885a05cc1bf929a42125b337a7ced1ee2ce0f7be5a68f82021027761c3bcfe134e5b554d7f08a709a180d779152f7c85eee0af248d43631edbb845a1b4a27b09cf8c69fb1694ac69060562114daccc9ce702f6eee20398c04434471777b9fee2067a5aab0c160c3cf3d5a71797eb3de000712161a3150708eb7c7d0e8101f343999bcc8d8ec000000000000000000080e1118252e
+flags = ValidSignature,ManySteps
+
+[privateKey = e5824f0943ad27a943fe7b1d52b8a42f689fedd9c6b8df15a4d9a6484b06c9ccb4260dd40421adc330ecae5aa86fd8ed07c64a4903e6cb7fc1b4430759eb7f08a23b9b392a35a7817c43ea040690a2ba94bcad04be05132c7155e16fdd7d3ae96af2975463450f3b5f4c5c671914ce075a3ed6eb9d669cba93d0c7152e6373d451012815258774802104818782032181222576110521372058845308173772760420548716607536151376324557213333320701143807124234027545467765418585561717106604145250036868846674617220101203538835574378688882612050484617285663033361651535522756311478713444875812020762661563706776873503358153427214746435060281783627378658740724533560027763043823701568230442858284685805884466407024528223701488288403860405178848857062181260033548467183643180238866388770480515787745237658463668810313300337815668561582430451566678454832064558021127141758760165276170285342520372530261026137120353108485711306236358680724750770322341778007017220011815023320811340032543285500252364331381780803675717316281121746072038313618276133562372568824204448650813102122018147735054273110074766438864023073853035407723571450356068521147441856506184266043481201428012345627750231542661547343634888641840123782424672326541737703827342735283850341734244083825134768877671555212058115626177037543077055707520322084114412451538635812786042776323362773486100062013562256858716773468017638567435020345888566385304270368342657731083162623256021420564778813447786577344326274634778624737477770003408881580313508628038204831801677805308246075757672020044670155282082108254760180081533442680483812420248330816540871242422282510047233125106843517454883476106030514858707328106202714420116344002163383705815080084864810478317101855175063487011314744438218270062001541548383531636644745465620521667827673304162854773628882278436815736344402468761111613623871223626323865573113057668751875051465662141685372220684087435713022442845156563625332614265834643341467081861431274480243783355808774268150803341126823122835751221866401323626116840603048774354426586880407350801871768353452384365871466736877372608505067357244522452772553183243775610742655510145221276201880137332235881040242852254842422002411737185100802763224434760276460423710704761242257371274067400223611230782152081027588542408670476357531348740475413127810203225531363412764242337750350173134268075738452014862572850581786376630317813714473601611273228312028488531166030868464303711217355615287856305732164238488161878357547553263243435110860353606057084038724613605028025848603345568873032411303164237185267041565817400712103460304211230816851002145563020836871024328312316010363282055514523574120777717734748437742632702830311583303624402381684532214300781457014177534883678877730856140683647670662843446801884547600405422222120661186262112614272656737246704238338011438426876273706208073031800277416668884738515700452768551267207043053748178455125050277115166564471838446324582510438240714187482806776016174500007300810585327550010780642271335316272404746617421171204347582182412887873472305235308361845780026168403105754147238756635505075036437515102733383017761447680861870406871422873075655657063733314f9f8efbe9792f57bebeedc85431c414854353f4d58d067b001fea0217a44d2e932047507d0323786274544eb8d5e4193066bd2c72d618e17962355ee1cd81109df26107daaa03f7da48bcd43408ded528e1dab4a28ce5b5264293784dd6490eef07be4e28063350906400d6254fe0f9e3c66549fa2728afd1b5e0386567450c5d1914aeea01024237db89fe746a9e317620cd38eed41aab5f701bec916baf97860ea93b3a2502a756567d65b45f67ede699d9b2c3759b66595efaa8a9fb6f63b833e0eb1e6fdc01f362a754301a4c0f3606789185db0972b40b4fe715d9da8719e3695b6cb22599d35aa8964877f30d8eb88320cc897dca1ccb9f905233df81f07a81e74fabecc5636a567dc17ed89a0cec013f8bce3d5e8f5471913e8b8732dd74def638a9e1b16102aa31f1f7266743d07610c9a9c533dfc6f12ab70d9c2d5315933283152cf23dd17d0f96c4ab926a389f6574ccdd0ec8c2c08b049e4bacb068b08ac8126f1028a4c3ccbf4a35f10c9a57cf8be2048b567bffba8c5b80b1035984da19d4ad19640eeeae659872716c9f7cbaa89342c20883744c28e4d56ca306f2b9debed64c5743965708e646c95b09fa1e9b06dbb4a5be1ab1c837e828011eb51995a2105f59177c92bcdfed577f77c6a59f02f6dc5d3d7625a958e09384b4633221c524a58bbd3ddf134e8e4efa36dc9956a8429a021725e12393726ba35d7ad0825ca2c30ee6fbd1537428cbc31b250fb30111e2c4c81cd9d2796b4bd018ecc9335a85f50c620c694a51c408007f6a6aadcc7f43ab905e5ab00c782c35a0dae30602c6d34869468347e462a896a35b768e39c1fc3209225d4b162c3e42879919a71d1c2833b1549f555ac7ddc246c0a88ed5b52b6793d2dc9697018d4c54dbfde90d436c01b33d8a066315592a324a962447fd4e90a8e00ff69a819c5d0b41c954f6a41e5483aecffaf697b05312f3556596fdd5378df17200a39da32491db60882160ef97ce8410a9e93a5a1a26b1effcdbe78647e510503deb01f4bd6a8c16f922884341ebe74ad349f9541a58ed9af994ffab99a21d5ef869135f58a5fbcbdb7cdd0f23b65adfeb80cb3f73a76fa24ba1cb49e72c402e229deb40ce06cec72cd868200f2aa1087f97364f4642b8eeeb803a0d954c0faa98275ecb2959e56ef06f34a78aecdc1d28d996d859bbb3e74f6dd8534b3e2cfbbfa8243153e3c34288e6a81b8733f3de28f4602288cc44661f16ea50ceab3a856768f2d8f01f3bc937b815b28111c3e3e9b25fc40334f77b6f792fbf376c8fa07dafe49ce34f860edda2466cfdeba5c924a9e338bc3241e4ed5186a6d5c20ab6e138ade20e36dd704fd4ef552addfbff8548c6fcb37bff1a704df1196c411fdd023e7884b35d650baa32fb0a1c3f07b16cb131989748dc5bad23c97dc7ef2f55009bc14de1ae5ced75347c565f870d35dbfcf59e6d951b6097d644b4692d5b50b3ae1c1c6e912c4279860c4449420770aab6e3da9c0873c086cb97eefbb563f76ed441ce6439e3d87791d124a27c39f0ed0d2c6a8bfc5a03c86729e8ab52ce5b9572efce4b1cb4d581ebf5c4158ec8fb053e5e409d40f35abb914cc96ead3ffcb4180fbe86b3ffd6aa0f828def3b68c60e8e2d4c2631296089cb619a00cea98c81b2583a0e7e92c3055a9b9b0f699e7ddafafc8ddb078ee65b8492e343ab382cdae6581180b39a057b77bbba9f44ec740934a7d446d147623dc1f2f2ab27f1374147cbd765db2c2adddae0bf850ab31b5d1133ec4d6774f05fbfd6f766f6b12b1f201866474ca80fe46bf6e7e3122f302271f57ca2f14570cb8d0662592723d319fd7352719fa336ac7d8782e59230030f22c30d56a7fb1b361643111c862fbb5bc852a5ef811f7e8f3227e4807edb6276732c4348e39067e5df837828392c24bf36fd4dc1036cc8b06fcfebb0d4e73f2d4e89b1e32fea207ee01697e4ee62a02ac655b67c97487c36d4c2ca654c248be72ab71a65fb12f08fc71000e6d0e650cac3a1bcf07b204ba8f357029866760acbdf5b42ee5690d39b3b2c1e7c1a2bbc7dbb70fce180ab62fd62aff6309325f6069a534fba987ab2e039a0050472d5924f268007f0bdff48bdbde8725398c01b7587c0e082213a4c30a9fc8398b8af32ea30a89fe6bd436a795729f8a1c3389837785b0b46f7e21a4376ad6e7fa8d2016a79fe195cc544a4bd3661d49c7213b7b0832e53d2c0e3aaa8b33e2aa0076a4e107adaebfe64c04ce84fce23c0926364b2d1cfcdffb16539c9f8667086cdbb23e28588b9ab32b69bd989baf33707151b85db559a1baef3ea8bf0cbc20053afd6a1ec63cfa2217799ae0ff2099914fe4d3e2cf05797ab870acabd02bce7b93685246784f8ebf1065eefca1336e83fea5f2f0c58b3ea0aa2e5e46ee852a5ad6bfcb37447a386d2ed84e696c61ccf3eb373801c91f49973ef5c935b41a236c85537faa40716d68ae85e5362391d8ae2b10a5151272427551830c9a66c4f0958952d85e43f3fba2c746bdcd6dff7c9f8c0c732286d3922b2984152c83698767df04d4465b019c52e4d4568044e82a6d9d20e00ede010426ba3588b2b7e5c1d45ac48151743c6f274fe5888e12ad42faf7b796b04bc9918b751226d89f8ee430ee6feceeabe2bbc428cf2f9923269ae8a6c2c6a207105074f9cbff53cd307325bab0351963e49e1d6c6ff2bebde85c70e2569af5eec09db157c561210c07c94d291d137132fbaf3da1225ebad7bc7ea02420676a76b0d63227ec5e3ef5162391ef6ecad28012f5b89ddf96a8bb53315fbacfd408d99b1d927e1bf4cedefd8f6ea85c89eaefeb5ee387e842b7951cf2935d195556f2ab48756e8a77b0cd2f376d4f4b8a2afa724b56bc15aa60053d1e3df77f1ccfa4771b753fdc448d646e313b09dd3fe31f8fe15cbed8f8ab84b75389257494bea82cce6b9f41ebf0b9eaa8e9e5461e6b3a24d346c188d6b087949b9c526c98f2f314ce9fc0aeab8a0686b58625342635474ed54e52c73585dc06f360f1f27e61494e00001cba5da933316676d096b55a5c089388f05d404302a76f8ef124df24b243cfc911fac002794af0d32c698fc7cb58804444a3e7b4c6cbd608ff1de58649f0f62e28e9dd4c23eefcf97fff133a7ded92027ced2fb296535ba930b4048da555747b7535373980008183b5c37d6d47fe174573a015e91f94ac4d84ca237b6f85952065dc30eacbcb3da5db071ee2c0bab09d2ecd30a5b7af7dc1ce099973c2c36024a9bd0c1d2b4761b4fad24db8aa65710ccd09438bddfc50507644afbd0a1cda31c997cbadc9f4eb1b65c3ee7898377fc9411ef4c5091988801f09c17e20db8dcd47fc71f52d84d8285359f17584c1c3cee0bc7eec378c22ed7bc7275bb560fd74d076cfb7ee0de5d3a5deea24c1f4abf7ec4ed3acff17b6cd7486cf0f0875d064ce2def61a81167a1682b729b7c1e1202e91702138cd9b4311c19e30894d37da3d88b80d25c87b716bd87c5998ab1d1]
+
+# tcId = 60
+# rej_ntt_poly (sample_uniform) requires 783 SHAKE bytes
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = ade7527bcb0a6ffe2a2cf114e9d49d1907ef13a2eb3973f643043ac1dc03f88dceeb4217afee1203f3fdac54a13b6c44516c812e4818750e40612256faa649cca43f8a9aa4995b79af4ffa93c4478a0fb4b112deec6a100baa0c6270a00922c6fb38102ecc10df9ba0ab82c2aec27d546d8743d40ce9593e1c067c863b4732eb256be88f9329a2a105d7f4f9f8980a7bbc1fd2b8aa50c3cb8b15bd4d58ad2cd9182f6550d786d600da563537ba5afc711077afcf5f2ad27bcc885548def9c1865175aaf059dce6d3a623e3d40b1ce011e5440679a7567d0ebadb76b28fd9976f8245d2cc6b5b11789a5fd234136d8898f38fa54ab8587561c469c0cc60b03ddef90725bec23e7478942df433c1faeddbed06794d8e7e983a622b8602d245c7245e9b380301321488f904a99ee31dfa6c0c2418282954a2a8dd115d599f7d52a6a04d4f91b79d4aee5c9af7387faa55a37610355fbcc266050ea6912b81776746ec3c531c36bfe326d1976047ee7ace40e88e660bd25c69892cbc26da809cbd0b806808e19931e1d50a448f1f62b08269ce7d6ff3274cb88f6ed76dfe397307211924a23cc655474b174e8112be1b5ddd7f9639f4d22dbdf6ea48ac79767e605a733c2b4cffe2fd776fc7e16df770f6d69b527799f0e484862e298b8b82b3a811d5fa347bc9def3909ffb0cbede310f0ebfe1f89c1aa09301cfbfd3ecdea8e015df52bada77ae6eb3e4f1ef4b0b7197ac7b3348cdc6f27f95f6aee2827d954127c181945ebe05e564147a71a9abdebbffba31ac4db2d8dc7b630f48c3e2b2ee984f3518381b4db2129ecd17df588e27f5a4436b1314d4e9f3c50a10849db95e899a76bc9af091a61b1d0dd35ad75f33d33eaa1bcc1f3144320a7525cff7d4ecb2fafc8d4f6fa59ec642b847281e6e44ec3adcc67e4b10d01bec2d20fadd2d446aa9621937d51fd0cbd3e56a71eab9ab742f5db52510b0816916aa1efe1f16e97052abc39ec48e3ad2f0876eb9492f9249b20143cc62285488ed5d966292141157195c8a9d7b8082809aa0efa78279824f64c6221534fe517d18ccfd2a85482e716a043e582e8e95f03536026e98b49d6db3f78576b8f91a5107ef4f4a788a9b36d97e4baab8f9a32292a74099af38d79f45383664a41c0894044fcdbfff9677bfca7fb2b405d492a8534540e5310367a5192dd482359777e1419fb29a5ceb06d0ecee0723ea2f54dc9969e343876beb41ff8cb40a40664112852bb95c5a40c96afa5751a77a958c461a6d0e9a645f6577d624fc74f31a312ff6d2c8e3f5c7bcefd0d71e2950bdd5da7a5bc7ddae856f9d30ea9784d68293911421433f3fe963f70883ad6fa692b1aa6f01060340fadc0980c07111b0c829bf7d551d8557b7e211ac05c9657d1903078cb59f22be709db3fd9ac7bd37ece1e88f6cfd7b56af127e9e2ff57c46b9e27d2dae1a484845d873c8467be6c0c7bd1ac5bf860f2771fc2767b53d0132aa6c70990813238ecc663e4eaed069554fc35d91b8e826a239f87638e13a3ce82ee87f1283c2f64ee7d715fbaf03481df6754750212f941d159553296a11c3e5e99b23442a6052a1d13b433f74b04aa18cf5100fd2ffbd66088ec58c1d5799427d6787f7fa732d665de840bfceba5b78b6ceb6a42b5916cf8be83eaf5fbda9a4c92d3b3bde73321c1ebe7783a2f8c043647a8f59a2079f9e99466eb426dd9110c0ec36081019aba4d2421ba45d1f83ca4bd7c44b319557134ac8b973949e1b399b89f722d7e189deee7e3a738e760b1c097a7768af06d0f22de67bda64ad171dd8743cf72006d5fcc4f0862f4f5d8929bfe80ac40b0d82aecde6547ccc37f7c0427262acb1dc7af40147336af8b075df1cced5b01fc423906fe0416b89c07ffe69e9cec79a3221cd60726fe3e7a921779ed24453bbc286280ef05fe39557b1b529ee10ca0a3e54c7f03abacf589541eb02fb1d4e83db8da5fece911f19f1b8644fdc470c4d7995aa4858e462b288d61ae8f81b9cd39257e593467252cc77d77718eb705d332fd6e4d61c761da7aee85667f39e601f7b14dd7fcdc4a70e6aab78c7e429b9ad43fe959221eeb53a220899e3f632cc50db8632be08385bb79466e63ce406826ed24d5daa9dfd91ef0650086e8f67ec03e11e57ce0df35a87e36363731d5e6a129c974574c28c032492fc2fe450ff6df857aa2d34f88d740026c5dc69866e1818c6ffeca589da202db3243652d092f670b173b66e845ff249e0b69237cf6d73a8d7b6e3cb3c604dc9c1f08c543a3d532373c482a08b957fd77b78779742f7f180bdc41510a5c469afba4d656ef633540c4d55f3a08de2bb3aa13dbf72454bfa02cc15f900c9909983bcb89f465bc7eb9a9aba456c588cf0ac9689a313ca4891de90921eaec7a6ed5ac7271434772234d889382b32c6cfdfcb2aa6c4d76104ecfc3bb71945f54a707cd4851c7f502680c9f74a2ff6475c10728e843e6668f95f7f25b3b63eafa8586518819cddc9f13d7d721f00e4843ff9d6b00878b024a9368028bedcedb0f8ba9f75ba837bdf23c93d4a3257de45ba05995996821c862cd3c360bd39ef1c05ef3d64f3597688dafac2418f40bf97be693099854a05ab906a94640a395e1aec6abe7a91996896276b58a1fd55d8d2645ba1901f4514bb8af173e5e95bcb4b635ec2445e4b6205f711ab0cfbc3f8fbf8bfec533f746fd7acedf11b4a66f371a02f42d1f8f7c36a4bf5f100cfc665361a1d4e3b6cf3f1b51ce6df7543fc026d7015fb973f8921384fb921b219b7d59916168eb0d8db1150201941ebb608a9a34ac99df89371971f3921873041df22274e23ba378dbb14a1d67b865101fed96dd037492b7b73f0c8f2155f6b07de6dee4365065f71f9af7cfa7904e9ef5b6a417bb19c0edf5a58d90ac15d536df091e1e735ce641c7977e83455f0d4bfbce191f71c139a02ad09da5a71669a845986e5cd81903bc2fcf87667a77511271a22e400ee8518348357e594d94c0b9c80b738464393eb314c8eb9cacd422ad674b6bb3e86488850663a4ce9b996124515acb2b941db207ab42b2178e88838aefbe786d031e10409d0dde8a46e1f10afa41952adb8eca07f1785b7682ec2eaecf58cc5d2d6d8e41c86bb6190c316798b5f7bfcda275c61c3e65da4caa99dded9552e677bc97e9804878077af17b23430c7de12bd6f6ce103d8c79bbc761b94a0e98560c442370fae8b13e73fed4c6332d74ae4fadaf025ba3a3e3b91ca42be7ca07c84adf1c18e9d844c2256b2afe65354c55e7ac3bbc4c3700381ecf945bd57b4fd85cefde464cef8fd7ede5e16d83f770a20db982ff5632631d1251b00d443b0a8449dcbddc5bcc0b2a531a1487383b0782e3c42298c30202ff5f0cd0120cf8379a7629ee913c7d6feef0b230801c1eecf65a41fdf10297a9d11d9af6d275b2546246313ea3146f62e842b98cfa63f635673f76fdfa974f1c4b9a9f7180f5fd821c5cbc06ecae488f47b1a16d6300b556ffa37d22a039e884bac33031682e30a4f37ed4a20929070f68678cfa7ddf07e85af564281e4661ea8f6f5e7adf61d0faac9fdfeb743f46321d715bf5c1a0d3dbd73f6b694d0d54733f0777e10277b5166655baae53d50bb6ff5dfdd6a8314be5511c82eef8714aa3b6f9e0001085a980f7f9b4d7a647a0255b985706e7f2a40124a61dd8cc75b23957d377be6fb791e9b2eed408cba754ad47543a788a1c86d513d13e805c0c516d0d2d7d7227a84d3fc7dbbb12b346b4f14cfcb1b46c562fa08d5ef181de0232792171a29682d12fe7aa49d3056b475df44311dbe4bb05f6d139eaa69d63754e82ee1fa8fb2c943589952fb05dc8a3566c5fc6ffbb135badf57ebc8c97c90ed22ab381960a54d9c4815744c144e270180d09c1afd13db0aa5dd2849c8ab710a5deda647a1f2ea7488ad56baddddc131711b0eabc2a954a551d4e488c339afd7b50d0fac25eb3f3b1d0a81db4678202954886a2863e50232a5e8eb82ce53c72f0566841ca10c724621cd1322b80b776091e31868bccc5785254adaa93c3dde4bffe7e3fbc520fcde4247e2dda42dccedd33be150140a1d669ca760d2cf52222f042a518a0486dfe716d76dfd363573eb2d012dee8b23cad281c6f85f013cb16a8543433ad75afec14d50585ca6077e6a44b2ecbb7c70d19dd42114c5f5391c193b5fa492848e48760f3e858a2f3521fa0c8ccee73d4d7a051b7bac09d8e91f8355f591f8555f1b93dfc673e61cebc9a7bf1327baaac3fea44ce49e958820e593695b06574feb493fea7bcd7464747ae2f16c0648ed9f285d72e82e5c178a1de77f918681a5161333e5612167fc70c585da49d32cee28ef9905efade611117a76279fc791416ad88c723f289d116917e1a9931cb3f8b8b0bcce64cab7006a793340c369b9011700e352b358fdc9798e2c7c67d4891a1d900c9d84aa435481c62d2919f360b4fbab4e2424dc11bcafe70fa94926bd07f9ffeb3d3b8411d9d87193d04f39142db168d435ec83bd3c3d0f8da76694c6c770eff8fd9588a369e3e299b37e221bb48d382ea44cacd11021597fabb4cb050a1b9baacd7e8c99f96674d3192b565f010e27747b9cc1d8dafb000000000000000000000000000000000000000000070d11141822
+flags = ValidSignature,ManySteps
+
+[privateKey = 622db4b1c15f5f5ee55e9911432b2a58caa5bd242a6f38a9e2d9cac83db4a399fc94ca5d6fff34ca2c1eb264a8be077fd7e48d4bb44b949da6b62cd97b788d2bb153a3a828fa3efff0d53812c84162457cec551bee54a4895245cc4364ac4823d46beac7a135c4c5caf8ceeae6d23d5566d5e13aab6a5d08b79e7376e7b5de3a08321152654664101634844151418486040318702077383314580613541362112311736244144036484110654530465000146107100564774678380202161885863125418726547760562870582781538258462410447121724352818616366527871141247024801205466712365713408752234680842058064884801783175570286407561031278867203542882383865870723050782312376326678705880502887818702814010741507614880263720502812860575462700680844510622802276671823287332662371580363433471725201642785025385155682130432827440816706532778488068583030887744652505232175081748322425634732662742362872164865521440287076416434780563358728380115876741352704836054534067857332346416620115082555311286554334006025434381052645514412538731846713122038303108167628626102157538734505638132373378323187330267034882757103320311238103124662504824033670656706621575181402172325844225422218253243002741770227864737235557543748825228263335667764166481504512530501513258873788812217847213415422232272712654175681614638213678765835184341476413172407788071117602887320867583812177226375510225488208581216335247624760640580038342253458485378871532420710208340256107348162532143354713554234454511804610886215246240423674341220722807268272574714854157737020573203736506008755485130353327367465663547336304871243875306517114168842627870754471801003805308312083088752583312446001277851027374582156531817586485000250215800708127627211505068347023526110837737511036238283245575662712387584066475661261847675650363887551237323761660716130272031483003378853700342154720335263160870854185286341388833332280625578758806215173128683088001246834752215572378405357710488183827388231330078345677625301488213657710771365474204550530478244381427747514184788504556881553154457275613682204221782566517410352634135622538312413588762072478647710573808231323470571682384724726318417303544318047044210485122008625078017014582468036753831818202880561508455812420133735306841500146564303348357702311777081400234537050086442006710511822581061557641802027172678601117704852670042122642532515057788558632775468781844800027367367800748615875717287224516564015307171001250218682511605542587522181356125680258482676447374450235015418756406768875243576777648477245884874244245418882656314337562348704424171513334852845861380540416300364586756573412732761616135653118277434708784222444700477483165374640426703086004756364532878886822828328712557340376334043487250868461212504670456468383710861761564515751840580532871448510566162802475667801534271150022580467056776043115617168333670862584252151753117541667107434163087436547257872074774262066168880573186462164028557747373346670327518823453168616336801501207442086328014346253643632106487403363037284858500543184643373716138360652372642337328651817705728585226415888745377507760017241628540267408730063075340605061675502707848603662745220370573105644783770300713661715527706362531002143f752f440f8f64f17a6eb31783165c2bbd65b3c6201404e1682bb5d14df702e01935806a69ac8dadce911f8b7c0a97f657cb4f48481a9b5a1b7539ab40dc42ac45366e97503a78208a9125cdb5329fdbe79da89f1646ca2ffb85e35259452c09ed9e4ee6bd8ad6fd73ac51756bace3b612166819aaebb16acd2aeca3da41a953027b8abf0914ccd739e56dea03bf52a57af587401b9f37c577e426c6ba9f87b26a7161c209880270ac01de7a7d7eb272280b89b877c1d11bc207015e23c404f4ed1385ce3f47daa9ed82398069e6022d939d3a52c03894010bec08a3860bb6647fe895eac0b4881da6c50a906d92adaeae9a49d7b1b90d4b7ded0e9100aefea8b88ca84628310cfffeb907bfa3108b5a2cd2328beacb5ee6df693acc1ecb47ad9b2e6edac8d2ca06423a77f2d6b2f318b798fa77544d6aa11e4b71541cd251dd47db6a069908ec5d400d3f32e7c45366af18d05442d6e9285f27a9f1930281e899415f112f62fdc82f9f919330bd01f34ad4402b862208d0c6e84a09c5a14c79a1c43976aeafcde7c9eeb96bb661642816eba09293ff8586e8d8f04a8677c59d2368d9654dd488b005ddfb97128e0b937610e996d2528f92566d9e272e8b6a0f38d1d3ee2186c1896676229e3dbbc30cf5f1fa40ccdc3f7972ef4ec6a8534b82310af9ae21116eacf14939cf211a25d307a4511a635f04ed2c320b638fe706a367a8eeb8472d2e9061bfbd008b05348bfe30882b8affb4b291a69913da0a82afc5da831ad9565321ce8a8a3a9f60eb2b303cacd960254d245630d04d24fb451f21e57ca5ad1842744e0693448735ad64a7efac548e9a82b497a92112623b0163897d79fb35db66c7c20dbeb4556fed79bf7c44984c7d9c0dd042c6a5da3c71107be4bf15c147658e13bbc6591bbe4a578122e1594563aececfe1e68d36bfe10db96a28d12ad83d96344533d757a8359dfc56f4844768d5c6c44229a72e74ed1812429719fc42a2cf91b4cf04687c0a8f0d9357633732416ab19f57c2c3da93a94ae4f49823cc74171e20d6ca2f2c1f03560836c79965e70e3749485078bdbfb2d133965dc609ee360cbce2d702a0ccce01d98a8b472116a123d75801de284553f6bf7393bcca84f113ca41b5fb403d86af5ec5cb5eafba3320782e80e2fffbfd3ef2333bf615a28f26df1c31d8319b36b28cc955d8309a611786ab3c8ca76899a79f42aaa1dcfad54efec7b827e7650a66bd9136cbe991bd195da7306274fb202a6ade4a46d68ceec54e4c67a082614374e990254339c9619bf55cbd9b244018cd307ff0d3c875e474e18178c99c8ef09d1e1817c8303fe897a4dc95083800978c9f0963ac58fba8cdc2638144a369e42ac00ba55e0193dbfe5bb614022373fcfa219ba9667ea123db95f95c065bc74b2f244e70448b9bdac4d2531ddc022d5b1bcdd7c7dbd8b5d49db7021b46991e5b03c0bea10f16b77a3904731b8be51c18d4e2188db04333b256ec989471594e7037a964aaf6d5606b9239f31f4231b5fcd3c2d293749a38f077642a877fb51bbbe4ae9a91afd81639c990508fb1efa2b5d89fa9cb4f77c7dceb7c3be1141f385e120cee045436ce16a46bb2bf006e380331ab3362be12367ee52aec3c46a52d021a2e845827f85d7e5e77e2110bcc59b950e31e02ea8334e77d2912cd16b36b2c5d90adebd50330a4d384143189e781999cb9083b416d17b4606684fd9aa1e9bb3dc07057789472114b2f74c64c6ab035b2f33eae9fda8ecb6ee0c8983e4494d8c4e75a9008dd37a0baae7196e27501fe7c69f6301e7668782af8ee6032b6fd29db4fdafe4620324f9085a241c4db87698c271159de2633603fa38ad842029cc15b7db35f399ff59523d9fbc277e836a499e59d9094526ba02fc6ff22dea61f0a389fd0308dd575092edcdc0e289d37ecc5d4ffe24aae42906fa48beeec41c38f728c23a302b1eb7376224b5db129b99485aed5a8a6aca7b50340dcb1413a3716ff28ca6998055e2e49b0e2fdf7843c98d75b768e294fe45c988df13a7ac87685228cc6f19356b67cc982ca4a4f5ae95432bef5f960a95aebb9368ec5db0e4fbaed484b6455cde520c9a078605b6962c89d46ce78e449c1e9a027cb0387f9ce7e05e6e1b326bbb4715cc4815c3808131c05eda191960a4a2b05717fddc3e27943dc63f27a5080cd10ad10d85a69af5b9b57d99e6a709f0238c500bb2f4cdbcd608120996d6f847fdd480f5392f94e5c48e558e8c8b041cd24a57ba3f8deaff334e5ef525636a154e9bda59040e7564ff69d5b3b402bc3334b8b38eefe9a7337198e5e9fc66ecc44bff0cec7b19cf60208ee7d435e730526eaf23c801d30a3d1643b95eb594f8212d3ff4bae7798799323e3198bfe16829e8fe18fcb25670d0b17d906b7ba76247bb63f311d1da6de449589ec087378f65be84f473237ac488434f43a4437688ce76bfca835efc7795abdd95986c06e1fa657a4507dc54025712f7f871eb63d1e31ccb0a321724350bc5894bbde84fdb4cbfa1c48cd5ca85b2451f5ae3c0ed0029dda5816009dc3a16113c6a6938fc11afea12edde0b2c40c43e703a2a56cc68018a0ea4837b9299fbf6ef192ff25648ef43ff256e9e648f89a8542b3c96dd228c98a0135c3ae7f932728c06fc332d3d8bbf5f3412fbc0c3fbc9994852b6563a779fbe0ccec57ff699729ac7337141c770931311483828231ac3325e61773c216e991d5bfde3e18556663ea29bcb090f635619dd6ba46fd379de5250cc402709f3ca4eb819f763d3a4f34b27031feaddac62da81024714e86e9d3c9d2c9d0376c937b07da53811153cf8e163fed589e57780e17b0b04f5a7299d5cf95c962445499e396bd55da8d77dbf7f4e14f36d5c5fb9dd4d4aa59aae5de006dfa25678d1a2892893fac464b1d1adff65de61b3cbb02991829bcbc4bb6d6ea4902b0eaa86260fc673a248f514c00d5074aadecdcfa7f5af1a311004a786cd0f8b17b803bda2fba72f5462328a1b256a767a819e49a4723df19fae33a0e7918ae270f836d01d3cd0af1509bbd293f2072707187318c41d489471faa9930ad83ea60f0b5a2dc325147355a85bf88ef102666726fce670d9d5c85ccd15e5194016005a99576e00561e8945d4ba3a7bdebaf9d7f6ca67292f3979129b402d1bab4d1c786be3b45e8efa9864636ee6b9675fc979fa2e0e6f3d77cec074b9f325d2bba5d2f7e4592708e5bcf95aff655dff90adfc4556404ad92cdc952b96a52fc9ecb64fd209ffcb22744b75d42f6e6118d09b0860c279f306b584e58612a58e396c0fe75d0f50eaa5d18cd9621663c4d1162ce71a528d0eee887b648d28e46c4815c4aba7fcfadb6c2d84554c40bdd7835faf7939ab407f30a17846180631168af13fc59865cfc65ac0cd1afd6edb50c364c319962594ae073ab1974cd3afd15cf059f669c60e7d13fb1cd98bbf44e0841b2ac47114605c00229872ec46a594d047e689c63efe0713dd138f9f4b12ce9]
+
+# tcId = 61
+# expand_a requires 23103 SHAKE bytes
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = 8f46c68b4cdf1ec20f57a26aede6e7fa768ffe1caf2ad14dddb070af1bffcdf53e996a4c5f009b21400f21a51b90ec6d5dba942d359af0a5feebc18315dc85dd4b5b7f4bf0c1298a6b38472cb7adeedbba5367a7bb86776f2405c665f2d1c77ec94f9ed7ed3f0e025c46b158ff66fb62fe7220ffd466da07b099f4e32b7be99b39bfce7cb526f0c1aef67b63c04e21fb93c0fd44d3cbd1edf4c437af20e917d7859be5398fad2ac8bf6c422a3674c2924d01ecaca88bde6b02a92d4ca31f559075a78a011f1ff334f8d33ee27ca9a27202bb1d045c15607202fea700f737cc5db44efa4448f469c07c5c690eb5d244dd7279fdd7a5cee75c2234d176c9a1aeb337803a432c563443610a646335e1a08e26baa26cd52d836e1c3309211b071d552ab3daeb0e8bc42fbb4d5877fb3814da62306313474d5e86ed9808dcc6f0c302b2f9811fc18eda56d9e3c44fc01940510fd2ed83b85300b69170290bd07596f79fad3ede82a6b8b47f31dd7e8a04705dcaa44caa717bcfa288d2662b2ba98d3aaf930a9aaa59389e5d153a4d5692dd92c5189136ee81934b81b7da6ab8c4c1d0b80efd312be2344153cb03395eec9c808a7be202ff4f51ff0021fe30c9f7be4d1f0e53b24f67c06d057810d9a072c5394b49f500a0523e8d1fd2c3e0a4441b3132ee116858d78a9b4c7987dde46e10ef202c2a5b793a3c4fce39d776cc52c6fdbe582a3fd9a09f9916d14750341e3d5fca75b2466b5e6ad5d5b577f154907ce98b5b1e6060e0e307ea899b3911e4978070cb76728c82e91a1334d61d9939a601501fcbf75d6dac20ea9bd32cb2ced147a4a51df0ddefddea0116264bdf9abb8074a6cafa2a6ebe4a6cc48eb0a9d9cc55f14d7f2e526ca6109ab213270303a0ca3b1490a6bd056358c0e741093db14fc01cf6807d8cc5596b217e61319c72aaa18dde047c3a04b4147ca127bba41218e1ed529f534d71c442149197a5ab715e427ac79f8758e37f623b73ef6a2b55207aa7ade98ef5a4f6989bf4330cfae3e3651444d5b71001dd5aae4432980b555bbb931c0fd9f5abd1af22a4a1d2e2d117d3b8f63474dca28f96049b30548ddab448872f4dfbfec63555292a0f90d54b80c5e3dd8c5c785c3e4d00c643bc8511fbb9aa716caa06b14041f9c4bedd6c6d339220a4724079e504454dffc5c9d299c773e14da80ee3d99824b6ebd93aa71d4201492c04bf2056fbb430acc0d1d425006e5b232b22d5fb1484f25181198e81e4b24fede7c0c498d55f451f2777ccf24778493ae2e0f81b1077cceaf0c0d012c96ae8b1ac5bc3a3f8aa1f361b5beeef3acbd95b7a971021a9aad77a82e059cfcc6d0bcd799121b729f12d2cc8274496bf854bdbfd8e932942e39f5b7906b6a96f4effa903c0bce837160694b2a97ec89c1b0f7f35d16a8995f831b1e5162649e711b71252822ae131a5cc23e7be487be8b1f3b5ba359216e7273adec9bccf6c15a1a3f4c96476b90f11cf94b6d04ff59e6bb19be14f35bf395d7faf85cff288842546efd8ce42b5a29a6fa620581b8dcc51dc2610cd08cccd4f141595daca8cef416cad7907248c58d9327e3d9556bc6be6119bb983cb1faa2b492456b075c7e5aae4e311b61821f51f3c3ed0749852c3788ccd3441beb9ee6cfeecdfdad4d7d4461702e2e1cb6916ae9a9ec096b7775ca6cbb13604419acd40f4b35c7429b8700c8c0a7f6243f5cfa3aa739b713974ef74f84788452ddf5be5d078cd80a2290fd9992ebcb136bc8978372b622bbaecfff00c1c6907ca231aa1441f36697bb29ee93d5a5bc951e9a7893e4202d3cb5dd6324d7db70976ad7666da4e94941862962d3af783ab2bd173c536f999f5627cb7cb7ecda596e65dad4de7668a976b0ce6698bbba26461d78ef1bdc0267c761b708435441ba21dcac62ac6cb1db54499fbe2b441f927b993649c110c00a947be9381f3235861460ffaaaf0b353ce002b81a957e39291fc4f65fdd791281a30f4ca32c297f2c6fb8327454751866239cf4772bdf79368dd99d28c61c7209aaa13297e0fa958ab9a2623c80e779c0745c10f42e792dbcc18099a27a99e9f8a0d389e191609aaf3ad9c3a6661cd7611bb778f706b74a834aa662e70bffad896846faf86a052e6372aae1058bb9dc96b1bd9111b5b1eb47e3badb26f7396642764f3144a7e9f5a903d67f1ec74e8806fc48e354ff37a138a47b3b4c8813d7a7992aba5310a439a1d90848487020c0983b48c5ee97ec658eef7bc93b030b57f16961ec655fef8408a9132ef76016e21dbbde30251501a701b9310ef387ad88c2281a7634b381c10050c50a43d9529c923a81d9b3929727e2b499fd9738d75cfb239c6ea3e94b5951c708d18102ff06aad9d20a219cd867a4c8e7e8e1ef7c84f67217c148f44b422714a381d33f72755ef056f53098cc8fd9877cd6742b2f77b4f2dba9ac9045c17515858baaf3e34f4d74a6e96e8d4fe661211674a68e0912b7c0b4b80811ca60c4518350b3f54df34db7f69de214dae9e14abcaa01c5f28ffff384b438f46547009a8f7e55511e60f2850f75bd337f0045ee00c51a51e655719ea4da79e9a60eb2397008701becdc5a83619c7f90667ee024c44ad392cabc6d7799fa59c8f6125b85284aa48cc7537ec0ef17e83deeb1c99477ebfcb3d51df7443aa692f7319933297a1de00dd310a055611efe998e1281ba0a448521fa0c63df5e7082de1ffc0534f85901fb320211f46f439f13314800826ee72f68c76fe82e45d2f19d9722d017ed44eb14a8a9864c79f29c1082054badbd6249fe8f93f8e9fc65bb3cd1af8aafbbf56964074d782564adb1c25ed8b08f8430bc16836176422fba4e7ff1684a61d881c020d4e659429b48f9f3e64f16d24021d6f89add4c75d237fa9043d32cc27784b7c08844826178b9dddf6fb823aeef3e8fd5aafe581c393c2dfd041f8148aee08a974d5318c746c22d9e4179eb56abdc72db1c6118fff4d9d8d6cb446ee19a07b7fab8df403880aee09dca1cda2a39ec10d5a78457e3aa3cff48468170094ad22d30a2d44428cfe7467a4ec539871cefcd548c3062480b2ed2b6e7a6bd6110aeef4166cd0b45dda83aea875b3ba10a9b3aaa9726f3c782751e85550d144231853037544f39d5dd039234cb42fa88fc0e5f1e0b66f068fd90523ed6e1741679035a7e8419da10a7604b13858ec59be5e5ed7d298e29bee15eb9d66e91ea004d80c261b09474d3f32b7e6bf321fa980786bdc374134e9a5b64c4549cff6d0f073a9675a27a118dc12d5b745da2b3d6615280802756895b6efef4c3dae82e30b3c275b1d34aa55c9f650acf2b727c7e1ce304e1f966dc549a785952135073c3dcb9216885a7460fafdcf7b5fba53789268a8a21005a877962eac88805d7e1286cbb26e34351c1ecfd808a9ebecd2893108fcda6a39eabc133d7fb015ab978ee2ce4f6c6f132e11eb24a82e4e43759ad1ba10dbddcb758a54cb1cc9ecd955bc7f43cb6144423ba5d62d6296c89b1992751dcfd37523b647ac22f468b37120ccc461fe4bc817796e835d0f47a351e2c18769a25c988c7dab905001c8de47aef0e75c7d5b1c299db472600112f656d3740c31ca5017f4624803ee5baeb4ad4974a04be45067e747e2071c66f1a2e607dd11810c78b48fd7249398b8b5ec18e494811e68502872a0a9862d8d9f66122533f0e4893956aac7d98c3f2fb04ea93d8a0f7ddacd0072ec18b54bd814a8ded374d26d69bd7d277422746fb8371828a8e8ff398b5230a2fec8f1ac7a750fc2c6eb6c9341a5bedf7248c796f5b87d9f3449e0f0b3a32d8e283812e98154cf002a02a744f247a20cea768d283ff113466f4775e1170b7395571873b84d5a7e1f7c06a657ed9a09a8789fbebc4fe651735cd5e42a08a5adddaf9827c33078a933b74bfc83a3d2e9ac0386693a6b5eb623a223df33d5c10df6ee4a1616160bedbff3710726f7b21d11dbc7a8a59c52a57e1dc17f914fc3c6d21bb1740faaf09ce4dfc887970cb66be3c9e154e7e554a744793b704593e40550987d60a589970f9756f7e6e4d7fee9cf673f0bd40b9899de4d8ce43c14c1a0def773cdc33dd81147a10fe6557f09e0a863e369d7374ff934563f84ebcd75267822b71acf5354efaf5d35d6299fa186ae28f6092069483b19db0396e008761203a1fa92d8e7a844ed237f3ed30c8c56cbd48a29815d02acbe917fcf2212a69f543a132204a48e8c692f78f039cdc63fa17ac2688c6d4ad716bb56671876e5f2a9036e9be1e2ca1405957e428928aa938bb96a9985d9a32b94b955acc5d4314300b10057d5ea099c65f0e0098fe5edf08b8cd43e93961c5ab94cee68f25a2b17adb7234e88a9dc79ff8b72c9ee205d457c321514b7fd87f482c0e8fe0b6294996527300a64d964d02438351caac5aeab1ee5c5be5bb38b605f974802579e0d34af06a3d5b4a0156aaa1da8e35d694bd4be6908974f5f9af626d16efb52b01d5a81487b669c23dadd71461144ac251e359e6f3ecb9475b2f89b837d1c434d590618c961cad556e5f98110fdf019e813a6bf20925167ee010144597fe8f87bb1dd1b888d8fa5fa032123455c7da5abbd2633527eadcae5f4041835738d00000000000000000000000000000000000006090f182025
+flags = ValidSignature,ManySteps
+
+[privateKey = 2828f4f44461a839e748b07acc053c9b0241f7b1425f9c742019c17078ffa03688e7623353690fdab2cb87ce197dcf078d8c3285ac28826b8e024df19134b857a41ee479e13b64596245f1d58b57c40b7500ff832bf828cb5525caa537d807f38c4522d4c15918ad6627fe2e28409fe61942214ad41f64ab275d25f1bad534cc33588238826183882674732632566580362001448330284227167781002135128664786646058668460720881260571120274237802246556735450743141503401342278143552058137581632173108630352324427685411488467336235784548748840848714121654657105666125730637215637355362235260265675603050413273482875838263831520270432587200287454674233525303667165816365023610712620222384650310107713081828344015076022454623877358617562131355870716747185267555043327607816883862320447818875278716282735017014760046611014257202861554665684550474340510720344200602751124754303126318240457427278365383551773258420642165715502880376007823708733536524360051857033365182723348451876326385407282131855143547135841160730870274613323175166682544705656238812056766716082221047241480804203635202402024401885637337501564460471224482247815583668473644062704543044085757107576561781257378174321153031115822077122380211756282252654766432667145584058228444606105161477848088411650126643741334115786160741370578766426400234668652030304657730420006701100620441486311437237348665250700173248065651616655804508333787503443056461041343804657334575466138341774818438886606858631461853374382630671784527825623572182273488704561128760880474346020284418765241356432260256000824480212210526615810685015033616550262527247123472782555323033532153205483308228486026143726232537738677480717176610617345770342210381831644628463238762420373747208211346782337016760343417774340517287065706481358307548684283322711187312868650437621427120508820234277442328585451337433508454307227383728603052248625360578821882305532707545738015255151413477165328780368788450286537221681331117310352635025332534252415716671503580355350753035641855038000774585815638213226727231402786460586660263622366040501632588637848407083583212541418401378031165653005260004321008177850013110352246342736752314155503577761026040151413104787031601186536771725358830263175312850836616142633738883021155545780378627041786337673234268841745585357327281381160456062778083681251122328844060508573145184181668642227607048575204242151615626274643062750504854836856137664066046718615807703037707318381885201774005268155232112877777710243683374374644575352713167734077116757445308422055476565046505821174812720141167450640570488577638125578480577727265705261300872616023422647537582741861676702506703246401531231604404016632740613325255254331504212011543683514438548222171228181871043326652013751352773665404733404351644271407273837006017351774542781511044801125142248634280644242803576474052611541473136280161182337803745406105041225364682640626381802758210542018576722441141348677320476135744248617117162542754450758256156337264551036772310557470503777366045180842517246314275714880444075446737027264775674543701886656254244054637361020587107178844177428163848676502463507413772205684767425333364412627374538427326825431706705351e5db3fafcdc953640c6c5fcc86eb60e9194987d9c853ee93176ef286c6776ac3da432eff02d1e0008a787e2135a06e24645ce5430d569e1bebfab2447845e526cb1c5f7d61042b57d7c7da8f7c29eba8947175b42817b63fb3585554444f0a2f39183cdccde2678654163b54b8fae10ff6ac9c6a590b7564d2f3fb5aabb9ee38f1795d749b0b4d603ac5c713477767d043bfe695cdf979bdedf9e8b7acf4ecca6aff7172aeb00c20129698985370e4c00918c465c70104685519feb73c6cd978905ce934af0fca96839f0e028e3b3c5fd3229456f20cc3a8b5e18ff8db5b0cebaa652fe17286fab0399a5b5c1495fbb69983372060adf3da98d891ba11ddda151429cdd377d89f8b7ec05f55819e15aa0e2fd3fc5abed1d0f8bcb73fe2499e34b7ae7d06893c28122841217fbc9f1cc8d621e3fad841a11cbe3f8207bb77ca533ada4f2d8c2b7543422c07f0d76d20fa7d6c571377601ee37e94ffcbe38a91e35b1a4943d000947adb9cb59dc6e94c0266b2826b53183ae1a8d462c591b3b14e69a4c61c284503fe4d8ac6b9b3c08a7a8c5bab31f91438062d88f39cdfecbc072d32d76fb8f73d51ab1e3bd46e5f2d75552d46b50d26ed5b24561426926fd91496e7bcad76df949ba2c3f6018267a581cd8e0d2bebeff15bd73d3377aa75b8d172cc0f19953e276267798b4e6a644044ca4c7ee48af3a5ec8513a67842b0cea6ee54f9d3a0f260208bb1764c0d307050410963fc08d3459485a9671e0516176dc3150514bb7c85198acfc251566c1960b04bf4e2ed0a5bb6a865c37fc72024a21dce74466911a33991d2e9f32851300eef0c324133afdf9590f5b062db06631007ec24644ba6717a0a8f45723fc0130602c36e04ba1d733df9755ba132ab146ee4bd56a87a27308c8c80e74f9102a051d4f705e4e36f62f0f38e14f9d44675c51e0cf21c3b5fdf007de1159f6df675d180bc0b1f3e74f38fbb96c4eb9dac622fbb53a2b8e20e090d65b3c90a6d26e2bde59bf65355ff43b7d77fe2c27091d5368fbbc170b87c75a1d58e9d81b3a1ad05b2fddf465af1a05ba6a96217cd3853cdcfde64a5d455fc8f539ed2a159810c327a056f74ab7845675fca3100cf7595317ae4ca4a6f94ccbf34f03fe98ff773342d24734c11fd5f9ff2a39e594d6dae7e72282949ae5bf7a43789d711c3d6d16e1da9337976a533971abd1363b25afa794be61d8db808019788527a98b8ee7e4d8b77d01e4c4b509cd5af528e1a9281ac57572668b84d9b1d38f7e40740e944d87bd6f4862cd0b09ea0b88f998942aeb97b69451056b2fde38ec500fb2fcdd9fafb06b04a50cf455dbddf2c0d0359db99f3a735313088df2298f4f394f539f0ec8f63a026bed2ea0d1d74cccaf40bd4631f211064849fbca97a0b00cfed9391bb0f22db7a00e0a59524d9218da8024f6995efb915677d2df7e9d07b0906e7eeb01373020edc00ad2d47391eabaad6f329106660639427ae44a57232e1d69b6bd3475d1c119c7cdb4b99a181a91a737fd96109a3553b065a76d3e82701a1a25693311f65e58a3b0923908c6f20c5dc28aae66d72b28be73b4f605a3b28df2c6dfd14fb9428d091679f70fef6a037ec82aa824646f98df44f793cb750d7bf1f2fd86993a7c1b19280624ffa07e8c5bdd3284ca254b6f7fefdf033b0c24f585ea6313a459e258a9b2c322e71b7dfc525d048ee43e3fc06ab79557776810ac733f9d5b75e876d3d870a6a3a653cd11066b404876cbb801f77a16c86db81a141adf8e056d4e1f203ebf232ba7d8d4238521da1c24e89aa1949f9c516274bd5021a4b9e66e6f8d0e73c092256674a43a3eb0a0de882beb2fd62d05c957a4a5289ca7ae2f9d077546359afbf0add1a05972844a341ff07d08970899293880cbbfdc64d790adb7456ac519f85059d28b31a322aabe2d08072af85b3bdb8fb1cbf4b5aa4681b90b9c73a9f44592ba5c43bdd67f4bac799d7b28f382d7357bdb0dbe1d0221b8d8019feb2b397cb6b4c15e8e2ce2f8add6041b14ee6749d3bb20c1e86e2a838a6d1b1a0ea9806719652811c6edcc4bf269536824756c9d4ca6af593f8dacc7a0bf753751939bc8f0a718c578bf34ad1ad4068423b72591783aab63b8f55270aae396004a5ef80e8dafa29367a74264e514ac27d7d5db636e02474385beefae2dd3ca4f3d6dc4f6bb33d6c4ac9131badde3cadd425235daa7c8ad2c62bc8f99eb73595b4ab244a614b251957798ab7a812e0b4e73ce2c94853e1489e0b34aba182f8e3d50b59108675ce2da8b9f346d2891ec23ebb4c22b97bb8d7a46a6d7379750c6b268fc338ef4959ac553c9628109d4475956c54401077d2aaefa98734a841d69ee8157a45ee474cbf3c61186d1e1f513537468eba5724cb60de199b924f6c5f92ecb0e11c994104e62905b91872e1158b7fa896c773f129700b4624237342624d011f4e7f9dbd322e87901eb602021addd8188afe432b83924f5c179c8d42bee2f7f15ec0a356f356a9c1da999758acf5b1e8c2428d68e197853498a43ee66faef74fdfbb1fe8758faec2c4a78a134335b50a9cfbc4055304e6acb8045489e9e9524f14768cc096792276607ecd5592a2b0b905211a2c0a597805e80131c42ffbf6bc248b377cf1224c25a7458161d947e0dd1c9a6401c9ba2a7d6c927a15b587470fe6888b0397d31b8e59b23317379b631a986c44c02f9f06922cc5697f840fdf17ac0ea6eee0bcdbd4e013ed2ae2bd0bc2423a806834e84c34e386e431632cae09c2a4a01564341eee35d3bba24547efc6de220dd262f837ab404ac23e0a05f32a97ace701345bdebe8c351e1b330dfc0e26e4db6c223cb9ed0b7df3af861f14062a6e8e58c8cca6cc9cac84a0d8438f7f813ea06f9d7c0b672274445446e689e64f883327fcbec426242b82b02f2d44b150dd91c1d2b07d5a47781b940939835cf7420477ada41fe7198d0aae0eba59eb9f90e035b8b7e0ae14523cbf7541ff257598752103bbf2eaa2e098326a6614933255aa0b5ab84f61e7a0ffeb792a0dbdcd4cee6ca9c85f67bd34a79b36c4509f648ef5928273f11cef4a16601f2283b12ec25653c51ed32e01b926d83f605c91ce1a69b3c7fb85d75ea496322b5624a0512ebbf5b327cffa8674b5fc06c7bbde0287d0a353d0d0d2b69075c173139037c3e8e9a928ce55dcdd4c0906be9b8409b875924addf9db6803633d2004020d65e53658b2bc48e83dd913e16eb5882112b4127ded1899318eef54841860e88c89dc2c8b0a8e74aa403b7f46138f96b6cd610b5fcb6b73c3882d9d2cb4568f0f35918dd57ba613659ee2ab48ae2c25f32958bd12202ec588047308d97744e0eec59ef60c9d7fe918c93882e2259409025983b018bba4dfee30325295638eec7e178ece8c44813fa7d17c845f744b0007393cf782405c0fd371af406f2a08637535ad0103d1a94e77f71838c9874bbee1e44d5d5dad92686b7ae0b008db57d17f8d328dd9d6b3d0e8a868328a]
+
+# tcId = 62
+# rej_bounded_poly (sample_uniform_eta) requires 3 SHAKE blocks
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = 45c74c2f9d98d9343257f12d6ca0e80a4fdf0923081fed79412e4a468c0c1cab92c9d537ddbaddeee90b1da792c2288704605e285af67a1aca821c7115c34df21b0545ea4f8d670ac7a973a23cacdd150ff8f76e7957b98104cb90c43859359189d5c82b50e13f0328305676ecfe7e98a07f4d9a91482901fa3d6cd0b704199ca72542fbbe328eea284049ee95153b3370314c3275d76e81f4fa1a8a0324ccbbc23f1a98a511dc507d23352ec119b93b1c0b58b97ee71ed3a7b0b0783dec92e3834c7a1a0054f6b3f42d97e5fe5999659ad854fc859530b50af080b445187493cdd6094a0cd8253d24609bdba9ef471c03e620800938928b5a4a28aded028493867969096cf9d8378cc7930de9afcb94200e6bdd216ca5d5bc877d5607e633a519274ba5d79c22ff71cf54af14ed7bf0ed6b0570f652ac48fc268328cf822d4d30402eea1d506142d4743ea19ad82ef2c62e0f9e48eb104cc47db132ea3e94cf8fb13ba56fe098b96b9ec4d180f9cf204a62e58d11f640d311640cf1e393e8578545826dbb387a6c22596bbb0ccadc3de519143a4c253c07a878189693c26bb06afc8616fbefea67a390d5008c61c3eb67406553f21e340d4c950bb5409646a07f2627a7d0cf96a4310455b8366ae34e13131cd8bc39b184830a47092197525747840fd3f35bb47b308174d296a67e132f73bef36346b08db87234cd7a61df9452bc9689bd2f2fde66b48c74fca4d26e12d1c4613ae1198bd447d917d6a6f117e3ce42a38fa2ae2e554a8793f575387ad49a902544e20e1acf8973ad586c659b80f66244a658793186e2241469751de168386247b42c1f573eea4b9a57a475111d37a3724997a1423392024200f4adcd251021e3af6c948278e198cbeb5562d26ba2ebb9b0e212d34d54d9c618e222c7f60a17a634a7682036d3e467b737291ae3175f280459207210822ebf74c080449ab87fee72f9574efb116a0b1bdb9aa22bdd47d17a21aac5bedf9a3a80a56ee4dc57a079fcd3d7c33608e64b7a87482d2e1b061026df6eee3463a48bc1afaaa61a6087aee5864fe38a968b4c0e10fd839431cdfe03115f158a25fa73dc945d63743e3a9477afc388697c6291ab09d5e145f2ee9731c0de90e84ed97e48a5eea05405ae0d9a12faf82119ea5c2dce8cc118b7d584e3ff296f0bbbc057cae3be7235049bba5fa0887e6915758ae2fad31d7d26e679ceb4642a316694b3e26dd2a39066ba783d1f4e217fd9dbda82ad0ebbdc5c6c7a83ea4142874ee6fa31ce1f74f1621cf9775fc139f7819a386019d0138c82b5456b3de55f0086962f1388bd6a5ae7dc2e259d4fd7aa2393598baffb321884810e5c43e158286f031f867865ce4f2b776f3a3832419bc347570c0fcbc5beaf6a939ba995ae7ec35acf101ceef7d4e415d5abd977392794d19326f695acdee4d32b0b2545f70e03154c5ff5f5ed9baebbd37a93b3a926ec96ff2f010051fc11e2e560ef718ce7f9e55b4ec9e7fb1c000e190f970310e577b72b5d0f08a52175b466ba44e06d82b2b9a14d33eecc2d7aac8a5bb1e50a91a13dc3a7b80c077ac7e7be88ac5272adbf3e361a0d2ce87fbb860c4a4016204c7530104048242ddd11ccd78ba00c064afb51fdca447e613129a8e5e568aef7b13bf06d3990bcfdcf74830109177bf46f9beddc6b4e01aa1ae3cd9137dcb47e711e7b01319267874a9c8febcd1ab4f3abe7b4ba088029af6e4714c8e1231b9d819b7f3843673da5319299036664608278175c781a0517d50ba48c3bc7d480195236a1259ce8e4ca9fec41c96a3b2ac1a4314a2739e57368ac030b85d447090cefe997d61ed2e44a879f947541608d7296a255e3b07443110201f11c227ebdabdc04990f9cb46967de0b7448c9c2caed883f849115d9a7904fa2844b1fc4c81fffaa4cb6c93ff69f0012920d540c1c67f19e9e90c60bfa285b19a92930bbdecf2f12e257c2c0d6aa880f7609dbdfcc135f8244e2b209180541c56b8a870915c96d9f6110cb6bc8ef6485cb5d4413ea2e80a42aaa4cdba7f04815ee37af3809032a0651b897d977c7d2ee5ecee346f0d9e7848780cc90f5fdffd8c23bf3f73f0b3e53b385556b23a988afc86f99a9a85815051fef4b9bfa88ce55232dcee5312b1315d7b13552939b4c7964fae29abfe83236077e600a2a02159c52b90146ccc65881db5c900101fd48150778ff7b993afdafe2a03e5841c736264b9928d1ed7aeb7036180d86a17136cd62b9d8d90bdecdf2707cb4606b350ac6121fec880659b5726fb8ed8923b342bd22a300a6df4bce9b4f70c79ccbdf7c42c9ed3c5cea4bbe3823031c44f710053740e55dfcb7c488f600cecf1b5c974dc6e483bd0205f56c2a3a674c49ad2da1ff9e37cfd8f059158a1b15c2e81ce26b83bf86712ae8718a58c58cbe10127147b5d3aeb92162b388366d779f8a126a3b5bee56902fbc1f6a449d74a7863a0b6037ca5ffbac5041bce68a2db29dd6bef264c7d6f244de69b10aea5c7bcaa379ef0c7ab47f1bacdc57925bcdc12457ef1e737111877411b74e1ef77491661ab00bb7d38f51160a90d4b500416ccd949aa17ccce7161c3dbb70769b4953adc3fe64a2e45f0fe204a3bcb37cb3b24ca07fa6c4239710129acf1d98c1922f8fd8aa8ddb207162a1b3dedc0e390a4893edbdb690d9aef686c64147cc718ded608c329eccffbe338dca3a36a4c4e4ed48160699db6b78e25e54d0b3e551c080f3c2bf5b6b78b951de81bcb9724b4c8c66d5cdbdc77292a7b7a82481febb65e90557b2effd9f253dfe7208e5e0cb0234b566dd33837a0b93bdfce7d3322b54a37e0058c93bcf66303d0ecd55f16c5c0c68d20363b8179d4ed96305fa632d489dfd64624c4042a6f0a57fcb1afa06db489a063a59b7740f71065214b542c22d1744b6dd1167ef35bd45ac047945df7b0f67e4e6d5b7aec57b07f0f74dc4922905168849fe4c5044ee65ac36bd6095d56db2c6ed1749af08e6ab80560aea4c736fe610e4b9ab6eb212c4eadf0b2895222d4e5bd289905199eb4566e0b2569055b6d6590d9a3e4f647b7366c8793327cc9462fa3bb4d9b7d3eb8ed43a5c1603e0917c2a4b55dbd20b40bdd84dd379e4c7c3e4e7880ff32769633870bc7ebc79d6396bef835afa39539a327891b9037030c75a46b274353a5ff2f1761999b6fb214158f337f0b098f8bd40a8c8a592abc004d5f8134053047412309bfcbc7faf5dfcc0f44e766d2c7e7f651ac468330bd301e21ffc863855dfccc385c83f3c024bfdb732f596cf945a9dc724f85eaa5adb2237b41b485954162890e71e23528db0a5aad3ad47b9389744599f96ff5c7189271ebd2c12ea16000f56e0d15f0362acd48a91e3863a1ca98318266c3d63555ad96f0d188e3275fca834c20ae62bd97308ccbfae323066015e3a33169d05f4ff5068a645b9ebb7aad64ffda44f9d0580560d23850177aef4ed42064de173a50f5bfb5e5bf6d9d39eaf8d565f342a8d9880118cc1d069480bbd6cd615383f85d2e495c4c33818b6106cd241e16cfefba1aaeb5f631423c1d8ae8e6553a3ac5e8a85687c243e0d4318162dcb2ffe2afc5b9d551a7a755efcb96113f1e9b596180c6bec210f9e36a81fa686f5073c573191aa23603a8067bd441cc9d46dfd55f6b1b2c36d4ad04d96fa326b05b7526e43dde99051549718a48361a40bfda5073b8c95c154741f901007740fb0e84059fb7d085408bfce226e0cd08e0361f9cbf4b257d109cac12aa86a122ea823bb4b6c13eb74237f9499799d73e8d244288776ab6e344dc2b6dab89b7e0f764cb849473a168cdb92411b0664d76841fe5dfe477fab40997ff18c13180512bddc04f74a9a0b24cadad0d969677e108d0d4c9cd878415186f958d49fbf04e2e446f362e8c2359d3d7799f7976e490fe3269afd2302bc7cd3d434fdadeb459ac76b5dfef29bbf84814d1cf21d4c374ea12fe34c4b9186c068d7075bb05d12e702c5fd6c7e6a7da986d9d65031bf3fc0a43aa546f06e46785d63f02e965e5ffdbaa9ea7a092e1a149d3eee256da5810e1f565372b5d96a899f15ac7bb97a2cf510539d110db26e98f20056188177b5eba1e017ed78f60acd6c8ef59502a8b94776699a6fc80191ade5007bfa62df60c63875153b2305a8f9a05ac662e485f4e7e9673ca8e85d306d651f37d06e860c8fc50ec6199916b72b711d4ca74d7c031f03fd41bb7405c684b136beed4110bec947ccf1b56578396fd88a70f14ba683bed84e70a72779f31d7ca3d9db73ad4133779ac7790bd7e378334badbe2a148b2de5f3277b1e0b2a1b2396b88f1dec7e49f94bb38ad9dd509fe23ed46c0830ab1f89f04d6986cc3a3b373ac9bc8a83a37847d87321df3f5cd6eaadab300c5316d8a59f8f9397c968f5f778450369bcf118ecf730392e2672a8980a6556852330acb3f76d195d95623cf419ff726172aa5df52d5163cf1681b9c4274b2257c2a247f5667923d214e0c79ee66b1f7d315273dc2b5ff41f3728a619ed0145dbf36c089710c55e5c2cdc2c8296489f817d7f7d0e6892e8128a0e3e0ba65d74b2d50826ec325359617b7eacf80a48679397b7d9e31a225276ce0e465b679cd1d5df0000000000000000000000000000000000000004070f171c24
+flags = ValidSignature,ManySteps
+
+# tcId = 63
+# expand_s requires 23 SHAKE blocks
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = 45c74c2f9d98d9343257f12d6ca0e80a4fdf0923081fed79412e4a468c0c1cab92c9d537ddbaddeee90b1da792c2288704605e285af67a1aca821c7115c34df21b0545ea4f8d670ac7a973a23cacdd150ff8f76e7957b98104cb90c43859359189d5c82b50e13f0328305676ecfe7e98a07f4d9a91482901fa3d6cd0b704199ca72542fbbe328eea284049ee95153b3370314c3275d76e81f4fa1a8a0324ccbbc23f1a98a511dc507d23352ec119b93b1c0b58b97ee71ed3a7b0b0783dec92e3834c7a1a0054f6b3f42d97e5fe5999659ad854fc859530b50af080b445187493cdd6094a0cd8253d24609bdba9ef471c03e620800938928b5a4a28aded028493867969096cf9d8378cc7930de9afcb94200e6bdd216ca5d5bc877d5607e633a519274ba5d79c22ff71cf54af14ed7bf0ed6b0570f652ac48fc268328cf822d4d30402eea1d506142d4743ea19ad82ef2c62e0f9e48eb104cc47db132ea3e94cf8fb13ba56fe098b96b9ec4d180f9cf204a62e58d11f640d311640cf1e393e8578545826dbb387a6c22596bbb0ccadc3de519143a4c253c07a878189693c26bb06afc8616fbefea67a390d5008c61c3eb67406553f21e340d4c950bb5409646a07f2627a7d0cf96a4310455b8366ae34e13131cd8bc39b184830a47092197525747840fd3f35bb47b308174d296a67e132f73bef36346b08db87234cd7a61df9452bc9689bd2f2fde66b48c74fca4d26e12d1c4613ae1198bd447d917d6a6f117e3ce42a38fa2ae2e554a8793f575387ad49a902544e20e1acf8973ad586c659b80f66244a658793186e2241469751de168386247b42c1f573eea4b9a57a475111d37a3724997a1423392024200f4adcd251021e3af6c948278e198cbeb5562d26ba2ebb9b0e212d34d54d9c618e222c7f60a17a634a7682036d3e467b737291ae3175f280459207210822ebf74c080449ab87fee72f9574efb116a0b1bdb9aa22bdd47d17a21aac5bedf9a3a80a56ee4dc57a079fcd3d7c33608e64b7a87482d2e1b061026df6eee3463a48bc1afaaa61a6087aee5864fe38a968b4c0e10fd839431cdfe03115f158a25fa73dc945d63743e3a9477afc388697c6291ab09d5e145f2ee9731c0de90e84ed97e48a5eea05405ae0d9a12faf82119ea5c2dce8cc118b7d584e3ff296f0bbbc057cae3be7235049bba5fa0887e6915758ae2fad31d7d26e679ceb4642a316694b3e26dd2a39066ba783d1f4e217fd9dbda82ad0ebbdc5c6c7a83ea4142874ee6fa31ce1f74f1621cf9775fc139f7819a386019d0138c82b5456b3de55f0086962f1388bd6a5ae7dc2e259d4fd7aa2393598baffb321884810e5c43e158286f031f867865ce4f2b776f3a3832419bc347570c0fcbc5beaf6a939ba995ae7ec35acf101ceef7d4e415d5abd977392794d19326f695acdee4d32b0b2545f70e03154c5ff5f5ed9baebbd37a93b3a926ec96ff2f010051fc11e2e560ef718ce7f9e55b4ec9e7fb1c000e190f970310e577b72b5d0f08a52175b466ba44e06d82b2b9a14d33eecc2d7aac8a5bb1e50a91a13dc3a7b80c077ac7e7be88ac5272adbf3e361a0d2ce87fbb860c4a4016204c7530104048242ddd11ccd78ba00c064afb51fdca447e613129a8e5e568aef7b13bf06d3990bcfdcf74830109177bf46f9beddc6b4e01aa1ae3cd9137dcb47e711e7b01319267874a9c8febcd1ab4f3abe7b4ba088029af6e4714c8e1231b9d819b7f3843673da5319299036664608278175c781a0517d50ba48c3bc7d480195236a1259ce8e4ca9fec41c96a3b2ac1a4314a2739e57368ac030b85d447090cefe997d61ed2e44a879f947541608d7296a255e3b07443110201f11c227ebdabdc04990f9cb46967de0b7448c9c2caed883f849115d9a7904fa2844b1fc4c81fffaa4cb6c93ff69f0012920d540c1c67f19e9e90c60bfa285b19a92930bbdecf2f12e257c2c0d6aa880f7609dbdfcc135f8244e2b209180541c56b8a870915c96d9f6110cb6bc8ef6485cb5d4413ea2e80a42aaa4cdba7f04815ee37af3809032a0651b897d977c7d2ee5ecee346f0d9e7848780cc90f5fdffd8c23bf3f73f0b3e53b385556b23a988afc86f99a9a85815051fef4b9bfa88ce55232dcee5312b1315d7b13552939b4c7964fae29abfe83236077e600a2a02159c52b90146ccc65881db5c900101fd48150778ff7b993afdafe2a03e5841c736264b9928d1ed7aeb7036180d86a17136cd62b9d8d90bdecdf2707cb4606b350ac6121fec880659b5726fb8ed8923b342bd22a300a6df4bce9b4f70c79ccbdf7c42c9ed3c5cea4bbe3823031c44f710053740e55dfcb7c488f600cecf1b5c974dc6e483bd0205f56c2a3a674c49ad2da1ff9e37cfd8f059158a1b15c2e81ce26b83bf86712ae8718a58c58cbe10127147b5d3aeb92162b388366d779f8a126a3b5bee56902fbc1f6a449d74a7863a0b6037ca5ffbac5041bce68a2db29dd6bef264c7d6f244de69b10aea5c7bcaa379ef0c7ab47f1bacdc57925bcdc12457ef1e737111877411b74e1ef77491661ab00bb7d38f51160a90d4b500416ccd949aa17ccce7161c3dbb70769b4953adc3fe64a2e45f0fe204a3bcb37cb3b24ca07fa6c4239710129acf1d98c1922f8fd8aa8ddb207162a1b3dedc0e390a4893edbdb690d9aef686c64147cc718ded608c329eccffbe338dca3a36a4c4e4ed48160699db6b78e25e54d0b3e551c080f3c2bf5b6b78b951de81bcb9724b4c8c66d5cdbdc77292a7b7a82481febb65e90557b2effd9f253dfe7208e5e0cb0234b566dd33837a0b93bdfce7d3322b54a37e0058c93bcf66303d0ecd55f16c5c0c68d20363b8179d4ed96305fa632d489dfd64624c4042a6f0a57fcb1afa06db489a063a59b7740f71065214b542c22d1744b6dd1167ef35bd45ac047945df7b0f67e4e6d5b7aec57b07f0f74dc4922905168849fe4c5044ee65ac36bd6095d56db2c6ed1749af08e6ab80560aea4c736fe610e4b9ab6eb212c4eadf0b2895222d4e5bd289905199eb4566e0b2569055b6d6590d9a3e4f647b7366c8793327cc9462fa3bb4d9b7d3eb8ed43a5c1603e0917c2a4b55dbd20b40bdd84dd379e4c7c3e4e7880ff32769633870bc7ebc79d6396bef835afa39539a327891b9037030c75a46b274353a5ff2f1761999b6fb214158f337f0b098f8bd40a8c8a592abc004d5f8134053047412309bfcbc7faf5dfcc0f44e766d2c7e7f651ac468330bd301e21ffc863855dfccc385c83f3c024bfdb732f596cf945a9dc724f85eaa5adb2237b41b485954162890e71e23528db0a5aad3ad47b9389744599f96ff5c7189271ebd2c12ea16000f56e0d15f0362acd48a91e3863a1ca98318266c3d63555ad96f0d188e3275fca834c20ae62bd97308ccbfae323066015e3a33169d05f4ff5068a645b9ebb7aad64ffda44f9d0580560d23850177aef4ed42064de173a50f5bfb5e5bf6d9d39eaf8d565f342a8d9880118cc1d069480bbd6cd615383f85d2e495c4c33818b6106cd241e16cfefba1aaeb5f631423c1d8ae8e6553a3ac5e8a85687c243e0d4318162dcb2ffe2afc5b9d551a7a755efcb96113f1e9b596180c6bec210f9e36a81fa686f5073c573191aa23603a8067bd441cc9d46dfd55f6b1b2c36d4ad04d96fa326b05b7526e43dde99051549718a48361a40bfda5073b8c95c154741f901007740fb0e84059fb7d085408bfce226e0cd08e0361f9cbf4b257d109cac12aa86a122ea823bb4b6c13eb74237f9499799d73e8d244288776ab6e344dc2b6dab89b7e0f764cb849473a168cdb92411b0664d76841fe5dfe477fab40997ff18c13180512bddc04f74a9a0b24cadad0d969677e108d0d4c9cd878415186f958d49fbf04e2e446f362e8c2359d3d7799f7976e490fe3269afd2302bc7cd3d434fdadeb459ac76b5dfef29bbf84814d1cf21d4c374ea12fe34c4b9186c068d7075bb05d12e702c5fd6c7e6a7da986d9d65031bf3fc0a43aa546f06e46785d63f02e965e5ffdbaa9ea7a092e1a149d3eee256da5810e1f565372b5d96a899f15ac7bb97a2cf510539d110db26e98f20056188177b5eba1e017ed78f60acd6c8ef59502a8b94776699a6fc80191ade5007bfa62df60c63875153b2305a8f9a05ac662e485f4e7e9673ca8e85d306d651f37d06e860c8fc50ec6199916b72b711d4ca74d7c031f03fd41bb7405c684b136beed4110bec947ccf1b56578396fd88a70f14ba683bed84e70a72779f31d7ca3d9db73ad4133779ac7790bd7e378334badbe2a148b2de5f3277b1e0b2a1b2396b88f1dec7e49f94bb38ad9dd509fe23ed46c0830ab1f89f04d6986cc3a3b373ac9bc8a83a37847d87321df3f5cd6eaadab300c5316d8a59f8f9397c968f5f778450369bcf118ecf730392e2672a8980a6556852330acb3f76d195d95623cf419ff726172aa5df52d5163cf1681b9c4274b2257c2a247f5667923d214e0c79ee66b1f7d315273dc2b5ff41f3728a619ed0145dbf36c089710c55e5c2cdc2c8296489f817d7f7d0e6892e8128a0e3e0ba65d74b2d50826ec325359617b7eacf80a48679397b7d9e31a225276ce0e465b679cd1d5df0000000000000000000000000000000000000004070f171c24
+flags = ValidSignature,ManySteps
+
+[privateKey = fc9fbcbb96f54d5f1b2b71d060404538ee428f6785040c54adb8716adde1cb1f59dfd0a63e4fb3a95a9808fcebfb0c84b8b20a411f7285b8b3850b476c11204979d2799d6df4d8e5a7f2825bf6f3bd43386b274b67ee02cd75fc58cd0f2869cbac2aae84ff1b6b96914c77c2a9af5e8b2de072ed58dc2d33a38f6def5d07c68508435720201472080486071072225140154071406254246516651644268626534267402601257852003158236200232582071543662312237040405853815203555734167802445884807873584503853670635575061818055516733108507232777886116706058511715246252550725432815730282078355815683114252413586732752162360410645402744424624407028213337413210170373433816565071783778775524274680845814310304548827431510608668520448544883823327770572536234204024206486130860738263876452775532207565721450181018116734424873612637567171014376183855618762131245563161366232037671431465064683652082822573285627303186888831445535020311442428456081052323357460340418335358020447334887718686818184636475450505412200571476184434114013213167725068785002752436460617768027063782832086723461107827867878688160363216684300372433546351307615013714587680110027064787236474207315482553206723485332126471851236576246623032675367413767707366114046478877511162750463324471211057212500355750767063144358723340583780458617174404553813805457662814376026037463510142583632311153720868307176216376164614376284230585566118475404738550285368874043362841026311768344621867578515787736320756254386323728867710842544570740605283076325161664825127006078046314008355853430520731806651553577515031800888841205375748668225636887228332180537325175346015403824663581785672347425833278600507275576012745781650013084384228407507468318362701641860861721863755125037303240834858553575220152075020141476552431611646053457776103115101865706624241137547781305461343873462458034245345350768418470617683382570266101416160153326654827146171377528485064428282532214536068201712076370548031754836844356473785750656855403146554162108176065604437156448626132100318376706247323720684557115374033677170104046767157687268145008615682777102165746635563467532524213428354278306657624125485873424166240703003366405207051231482318423755402800244064075014070108512534745008050004304556256137771460588624803630453854554208220445260705886612083087203715857402113002552233525280244763481776207384025380023486067265540702403464341657345128723768680162566627727848287647450212585216114436350005320135156434628175283555007318010777107326163766782215465107412785452684518227565036851554036002028012151718237555428721118171724034160851302152050312422355036674818516043227213762626175716422512816320581870720366327370830578120836578680563608328370883448412133448336331465744621150007221704656341417484625520010254735235668864502105407806046803205272137525161814747750325022313460374385727735713472552327418350573247276642845385082856612562227805257657823816034507272141248205087048471643374171700473423242560483802450553672383224143305535872887522758226885401262152000755363277131022363601036708228216328346463220718342733478606016744481174286524323265131358307688215362854386713231266720320486616682686662687125760301700002634758aad61e3a9af4488a1c123cd3f0ab07be3b1adb710e99bf0f1c5fbae27884d5455e9ffdf33e444d3610af63fafcd6b7412a274d212dc67efc4e4e94805843f321744407954036604829fdaf08b87bb0d77ba4c9cf2df75e5c4fd5c6445a6281cc788eca2d1b9afcdc6fcf6988c980126223dda4283eda30238053d87a7467f60a5c60112f411986bf579bad19ca41295e98816422ff6381b00216762190830843fc81b605d161b761c64a3f735cf92c706addfde1d7dc7ccf0aaa00a697f436168a6d8de1e0eb8bd86b833b093adaa2f676a7cedcb89360ecdfd7560cf2475cd1e982da65566b25ac928c299ab14c93332dd08de88ce2917d983184d3360e13f712ba782f573f5117d1032961df0c0a60205e44d0c6c996512adbf86a93158e325bc2609de320d02ff17947a9eebef51a1bd242338edb519392a8e89559a63c01f933d82c74891d79bc9263f9d6d5ee7f4fcedce7e7137db170b07869950db7172d5b80b38b38beac9310b464f46fdc6dfdf24fd55d1497a98bed459c17035917b3f2fdd31509edb428b38645e0350a495a43f8802bde65b3f720d5d810e3d72653c73803d3a55efe475c676b521b2940afebaebce98fefc9a493b04a6ac12105eb0d5c727372db84af97acc181b4f0d393d3272b34c58213090c73ac1d9cfee89e6fce1f058f52aeb729ee15220b4dcdc1fb17b647f8bc0482a92c40f920c39675240944b9eceed082d64ae9b5cc6273a0392c84993c7d44047ca9562eac9f61ebb1c50ab1d30fef37b8755a05903e33ed5432e3927e02badc0393707d0356754b4e0b14664bd7861c9d2fb62e3a2e3171def78affe828a389be7e943eb3f3da29eaddc35630160d3a9af39fa4af34e9da27a7c99a5a64d89a05b6d1344c02a77bb22cb32ac931bc4128d24d3aecd8505f9849fd2706071e89daa80760abafce4ec4bad99874106738d6e6e717d3956cf11debe186113f2bd70aad78a82b1e06afd8f6f72d374b4755201731e0d2232086613460b0f28141c7ca561b1767c189c17ac0a5ca80b8a28bd06513cda588b1d2be8bf3ede8f6e0ff1341abe28e6559378b0fe8bc509e1b5f54486d4292cd48f95ab48926fb5e86791a4e532a3bddcdfea580eebe27b6cfe88f658acf9552c53574190dff488366b1cf080f27f009e23c56ff21e367b8f44c654420f158876fd43e3edb658416bc3a761cdf9c6d9319470013d17e3c7c51cc44dcae9b3ff0f95a699177c385eb3f683c7b54843bcc9e5efc4e9c42b9f096d92b37fe42b998db75baf729138ffcba70c0d1c7ad5d8de4b48c24bc2173052618263df7bc49eb67840a09e44dac1869d9cfb6d3d224390e217122a1fb33ac2ab7aeb874a7ab7521dff67f74fc472fda9ca88f95a957bd3863f83bcf85a0222ac5d8523886532d855d67f9fd316a3ef6a0ec9a18d993cce32f724297d360791d0431e62806a570b1df029ca40a5ae4ce0a86761c0348a6f3aa95f12f6be9148f4ff0d40b33a46609d4bbfe2432abad1cf2cad4e3462ae874a7ad32f0aeb4faa462231ad7b684be29968fe3149187783ec8956c9984df90190099441a7cfdcc07aaf75e69a4c11010b4656f9eba1fd32c7ede56fb69a4e82177bc4bd68f5c0576e396710f2be0450fe16f0f7afd8fcc6a1993e3b4686117c0474b9ddb49685f511db6078f0f2d8f3f33a08acf3f46c1112ac7a83010ada065dd5adb5741001dd1fc1c46312af0712de15546d6cce9808aef18a903adb4867884b978361ab2f58795392a5819627c4c1a5379db0fae158bd75880b0d7b9568405f67895dc5a229ded60b539d36c7b8779def39cdfc58f84e62f7d2e1108b82fcb7d23b4b84b712b7e88d47e94237da6a33b8ad88866f069d75f2bf9336fb684dafcfa5ca32404c7d13bd4f340276d059fe123a46ae143cb34b4941c589dbeb02e346e8026cd4c574bdcae3c1b85b5acfc68b792db68daca370e690026877a8c8370ceeade1e81141a3e9f5b85841d56e947e98da824cb8c660e494862e356fefa79968f4614bccade94c1bcef544a6da8bc9a0d49eb9bbe7c39a6f1f7128cc3bb082d21f39ac8f60f004957d045ab1261c2e7cccdf8cb46c3d2ad31740af381e96245de666381d198f4079c09a7368a514efdfc7a11b09dc533c57dcfe2c83aa362a617d8fb9f3169ec0917b55e369573021437fd94cc68426c59819ace012c041592fd070788c1b660c8b0da6a3aca83f95c9e8d5cddf9f425ed8ea5392734d93027f1e62f523bad5b7193268e136bdf0dcc2dbc2c823a01e64e45d6be028886c96a54074fb16fb6aea760bafb29b5e85794d0a6b86a75a9d5236b785f37c4f4f6fcc2b505a1d875c21ede14630e46553bc1459890938ab547f20d8f1e044c75d6360d0057e8288cba81bd1b400c935516413cd04f3a169178540a5d1ddf67a4adf78185d04d85792b988f7aa1c1fe66c9030bae0ab89dca01c300c1abd45c7cec9cd62219a4c7952e82d5c45b7eff1a3ea13d7114ca78733ef08a00c6157761cafb7188ef5310cb1566a4898af6fe53b4733ba02799563e7e0303197856d94f7644f935d84d6615b930d9decbaa4bfeaae695387a84226db09ed5ff23b935f89bc49ef37932a007acfaf7325be7a70112929df5820a8c81036a4ad5e453dfc03dfe1c1cf804d44e5c0c6d67aef6f4dc975c8ea842d4254d4c806bcf8547eec3e9ad1b5075db87bd79e71fed823b527ff7becebc5ae5bf7532a69b5a906e8e678271ab3a555fd0d52fbb170c8970ef4a1c668761d7911b98fce2e97712d20fdeaebf5b0befb3563a94af42800ce3e3da427d50a7e0e8085df3f3e76c304f57a58126ea865dce9f176634ed25fef31a7c7bc2cb15a4a267e689e1ec3ac4f3483640f9deb1458ca166b6b6d78c55a3e9f092bf9a429460644bf95ab0dbf3a244a228a5253b0d08cde29d2a0b4059604b5a4dd380766d6b3d633f5de76488807346ba9e0d92fc1b1d2927897d03a811ad5e4e05235694e442553b88be0646e8a4dd554f4ac3fbe3c66913057db8442f0cba10d2fc89bfbfdc07ca3aec700f9820fe5619d4481c62100add7c8ebcb53c27840d50dbf6b65994812fcdc3d4b58fc3073ad67a414ae47bbf5a3669cf18b44b967f9642d2512065249febe1e79946120ff1f6a2b4d403b64fd58e0730e4565ccc468d2b8ebe52366808e213f6c7add184484d4d4fae28d87c16c3e2fdb04076c7bc44ec90ba1acf4f2493a6dcc87fceceda13056295379d942492e6130ed694e257fe1cccbbc9a789593313c3ebcd91bda3ebbdb1aea5e50d6092306409c14fffa956daf30dc3824739c33af521e68a116239847b3f30eadd9cb72f0656bb2e4767bfaf04c26d78973340e9fa53e59ddb1b2ff8a70ac3b5e0a749c5a7133a7e273f50fa3ea22207826ade4962957c083202fd53b093783091df0b05d6ff4e893c6499c2affca9e7dedc8f56239a71fe84224eac01bf2d90b331106b781aac1d05e2c7cefcfe86e143d2d8ef0d5f0d9c]
+
+# tcId = 64
+# rej_bounded_poly (sample_uniform_eta) requires 277 SHAKE bytes
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = 447024ffde9346a213b39475099459ebb1de800e2879512a7f6747cdcaefe85abb973bf9e25a460bd9ee2ad1bd70a820d8f172e54eb46c78e95f860001323f6617d9408d2e1d25ba6826f19ff9c010fdbebb0c002c2038a178a78f652f567ecb5170f26601eae1bbd555aa8fdda21ba1dcb9e351620350e347397b96f2d29645f10b3d8945d636e58308d85205739acd6b94d671a3cd14678ad953218a6b5cb7b3222c2db794e0cc468ef45358505ace711352899851c324c12767e5a50e5288af2eb3c9402114e06e0ff0051e9aa0ca2c72e6fb479c074c04b2123e6d6f9e62d4374e0fb2c3b6662332c391f630dfe44c4fdb7dac95ca3aff5a427f3d7814bef76f897bf0a7cfd2bd36d9d49f87b870a06bc9dacaab0b129b6158dea464fea551ba4c5431237a189860fe228ec8840b5eb358a68f1d9ae9dcf90dcad2a8603bb7fabb4e387ba963b08e1dd41e02a10842b579bec2a2d431fb9595b4331f46c9b0db975832272ead202dba9be105039328936c939985d1137e2d90d55d4e6787ae2837ab48f0562da0e0e58c8075b4eb5dc9dfc97635bac8866cc5f13f984869a550a100f13f3f56a38b8a350fa4fd06207c1d32eb667fc6811c33db6cc428f620dde08c42dc2efe736aefbe59c167da7793f2bfbc6cd3aaed52d3757e8d7e44c63ae8f0852d73b5ba5569214c9c1980d3852a0b88d0248175f53e9d11ffe19a1ff5ff7e44f8a5c1074731c69198de1be50b7155b49b9875bbb7473983ceb447b2b50ba230f69155d7ac4e46a4e80762c39a97fd023d4ed38f7c425902b7f747a11d7797e2f4cab63d27ac2bcacb17d08ced68b7cc5d91c69bb8f80f17d9875119a741bec5757f66042ecd2e00847c0390170ac2bdadc769cb501ec8aa38c859441d98e5bb9fccc43eba593d928209245e6de8f336cc0e2680c6a73e5df0f554301cf852fa3dd3e7d5f720320d6b079cf2211feb3b2956a0de3f59bce94148dc91e9b0288445763117cd180f7ad089f223eecbcfb06746aa2796dab2e620459919cb4faeb7d4c0d85779f776593d6fb0877041d43ee10435cba6c7baa9931e4c4dc56898a36983312cf85a1a999bcc02cb26d091b3c5a23fd4061a09b44659f6d68b87b68d3e6c18876f9f8f8edb42210ffce4e4c6a4a01584ee1b43709473130166ce9d9890eabebea8c81d532c34a166dc9dc30f1d4c0546de34990cca8a5dc6269853d69f366056f23fbaf72be1fd469fee612fa9a75feb97c079c5c04fce08f89e8087249a77e3b0d73728e95749f7497313631ad95620f3eb3c4ccbf4cc64e6113c4044541e843832a32ad7e699a75947f8ab7e48cc65a060d62972b86df8a2fb0b4bb966193545c86f201c5be342dfb361dcf2bbd9f3a22a6ec498da9d9e14770f9b7f642314bc6f66954bba2b0c621be2b20140eb6a0f536c6178fbf631ae39cf1c66d01c35763141b689e6851d578b31083f2153ae37101bda7d5a1a428582fcc19b310fdbac1cecbbc3ecaec93d73083f9f9c0f972ce0e65cdf5db90c623405863a18a497fe23bb57ad71f64ba9fbde1e462ac28e0d7597742b2eec39741d11c406ae56248c3644f3ac44fea88050fb4d0af09b65ce58cf276b37731d21840f34a9bfcdbb5322d905d88476f89aaac0c3f6ecc7957747a8343dfd8981dcf34057746dcf440aa098e5d41b5c61ce15a72380b7c8a39c982c052cc1766364fe7eb94a49441014deb484afec1692738d50762aa0ebddeafceb7b9f6cb2d384f049a104a584dc274040f4ea030345f7f887758d10864d8c4b27abddd214be79c79b69084d71897ffbdaa0dbf5cec90f22ec07d4ac7ba12ae6ddb130ea34f774c2736267cb13178abdedddad0e0f889b920b3c4b3008ce7b18d4ff36e196b1e7d8dd043b58495e6b7dbfe22d03ec72dcbb250ebde631f43c556ab8b8465b3d76ea1cf571e6726d39866fca46a0b515f0d8479a028517f9021d757ef84fd8a8464311c7462262c82503dcbea392f88f19dafece39ca11b11ee3649840dea7054fb02770a7a46c15c162a05a6a2b5ea904f2ecb78be936e0cc54327564d6097510977807a48e1b446b5076176cd8be717380f4f02f30b5f2d2c0596f45d3c064ca4763e649c9396319eb09d37d3627d3ec6ea58df23cebcec0c9bb68861d0e2fb56e075f2aee9bb1aea052ab2c05ae746f80bab8d953f40cf18afce5f331b334b7531e472d942bc07e02c67135944efb5aa7e39e4344d365d719776494ec43cf3f64d208db184bc4f1239eca1b744055c12d4519905c66017a7a8f6d47b3f0a725222bdfde1c1d605d04cf93ef3733a7b9a5a54a0de03c66866bbfd24329a565c0092856e637a832275f6ce6113656a71c1f1ef90058afe1a376aa00be83e050169b7f9e94451dd6f493fe5caf02d6e5cf1d41c5e7539d2d70ca2ac35b966ff9f66b07401f25b259000d14f9e0aedd734b74fdda9b187bfd99a7c1d241e40f87027567316a3cbc08bb70ade50e75e349e7f3d023a021c46e84b2d44dcd04e6a9c2a5ae4ff79abc2805a5f71684b8bb661421008f45d9dbb86387beb93b07583d0cd4f4946e5c16d4b62154abb7dde8b771e22798be9c39103b5319442ae8f49d5e42ca2f90026ae62848811fc38f2c930f0b266b445c7828e3d8fe4cff57b79d168e51beeaf15c693518204f5931648702f81afb1841ea2479c8acb2f42236fdbb0a99cfe83cd3cc58ad94908d61ce8b953e433599e9a086d5655508c79dc26662950697348790bd0905d4bf616ce4f411c2f76e4f91c6159c6bb317d90356c23dcd001a43ec94bd8d808b07ddf94b93b3191cd3fcd8529197f7aec255c2a25bde0968cf689263e0a5cb19be444f36ca797376b013b244f510191bdc007ac33f3f8e73bad30638679bdfe3adaeef93ee24df4fba7c405b5be5ec54cb375a5b9eb19473e981fd08b6f7408fd00e6cf2971f63d4d4d4b9ed066318efd0523250e0f70562c1f2f5c7c7317f999c74680b811baba2d84153f7ca6d1c7d0deb5ed31da60f477754725725b860a64448cfb8dd8c107613ce6671b956e6fd769ed556f8bf8310dc2f167f621de8421dc13edc84cb9c05eaaad7d9d51a5d7b194f8c3c7082e9d53c5c7a88e1c072c468a835445505c990379d34a2231407a1035c81a0a546ee27b1b3e7908d4921bc70721911a2c0f5ac25ea8a81b2509d40f2c727a9f1d7f91a4378fbc21145320f1b9ecbe54283e1237a5b90b44c9f49edbbc9f8ec73af7e6e7ad0604b3fd84191a24b3efb2d07db8bdf05b742a65e7405ef50e47fcc92d4029f7f7be4c5e7f1b3f85d1b9a5cf8c14228318ecbc648fa7ae37b3bd3d3c33bed9bed46bcd47ce89650dae8cc2c5e2965d59006b24beba14e70b1174cc4f828f11188bf0c21d552f1e5fbb022e84549b05b3f1c2936014c1c3163269abab98508a5c3a4b0d282c6b91aafd64866d01bd8715473fedcaa36ca1f1c6bdb6caf82753d49a4395b3423fd33b96313ecf41d728a5a57fdb8d01c3be7fd831149a0e0dbcd323ae4af4d062079e0c4039a7d9cd25fe20f033e5ecfa0d34e6920bbc1e88398aede6a28439e700e8844d79967451a3771d4b26eb5d012a49a5f817651c1d752163ac517541ca39025aa428f38dbf3cec4d648cfd3922bb2cd2eb8e18ffa2adfdee5b9314a82800447ad55873b14d820192cb62bfde5699b680f2b0ff07e2fe9862128c17a8d2827d5aa73023c573cfe37d372b39c13b414b1435c7a4951cfab1d8c74115711bce198053ae6a3d24ad64600e9c1f50915babdb52dfee9264142b108312222d198810898bab5e09dd09a9a27b62b6e7d7917708e7829903fa5ea835de5725a83d034aaf7321f48afdcba299086d4b20075e0537bf6cedc0b50a1e2babee1090e22e234279d658a75142ccac00c6bacc16704f1654382681498908bd55c4919e841323f4ac8888f1514f4dc9be789c604458de0ced5143c5b1c5d3a64246a68b5c3620a5869eed93bfa07ecc2711bfed1d8d3e927aa16edeff32df5ec23a53e4cd0aeb9b83cd9e67ca15be9333960147c96bb33e7ba5c9816a34b93347273c49d14423566556caae62a2e5d138498ab7d45f5681df334e885933ed2f45c1f726b4f0e231526147f9a892e78a9442aebab81060032dded67709cb278c054d5339d29025abd25b68f32b5742c9e4e313c40293a32f897e96a9422ef349d13a70f5993221fd921d85d2e55c0517cc0d241119a9b248af27cfd6eb37f6d9551bcc7d7db3f53824dbe2acd6f1c261cbfbb346ebc42a17060a01c6cb89c95f048bbc62cdcfcbc33177f5020583552c4093b278179ac176a20451d4968ef4582854ad21f2ef78c79cd5ada9cf2fa29cbd63dd4259901f5327ed3cb92f792e12965352a2a5190387e7d47eaec012daa03b3599ff4713ec6c90d84fae59f45c99825c4b9d54e1b714ae0d13fa452da84b95c7ceaeec30e11ebf55dfe3fde91afcf54673390f35b5f4d57288750bc6e203fbd939b7d3aeb04af68abc9f454132920a95c45bd7fcb35ac27d1db2ba58d1a4dc425ed4a5d315cf63321d9e7a96757b29bb5a448b79b2a85883335458098a8b41f3bb7c42930343a636e8d9dd148bdc22d6283afeeff0817287e84c50000000000000000000000000000000000000000070b14171d23
+flags = ValidSignature,ManySteps
+
+[privateKey = 01c8783994aeca990b8c00ec3a55a898e3eb84efdba12db8f3acecf8ad5ab9e067b9cc21a7eb780521372d627200d56af2c590dbb49957876141cdd25b0973058ea7ca3a9577089fe7ac72abee0baba7e8744f9f859b2f93021b918fe28b1ba749b6e70755cc27cbf1d62a9c389bb07dbda12b9e7071deaeb88cc0c272f6ddb663321476001085384743437266058258623670366178656636858266080222504653735777708371875154744754513374847184285867618687622673436331277726344463674415474663327460631874565276646277645547833531124331674560837683650034506316253675614808105574215860160027778222064804254123621257156714807614317086784014763847678865736853011685043087165343146430673787075264762723126015145304378451554382618176761737261238801454636673302003635530180021634805108672320126866202632485356546234515650638841026782032587611788772563217008608563670246261137361866580427724122011651752304105587374821754610655876436376716830733337786467184476745751882420318227232242213023670476883536363113844286685326141370028813184384271158257814288460232324362750245323727821082214285863602626227855778311267882762638188817084053244006331312804582806783087261713563311076641473566415044148843857857845608112450282111062715057107416147237870520580026042347185423104825226885256542016225888002703127131175052048540015246220704385146038652703620471878676038706510680666811042845518750657234816204127218267307624388131377066652712657787832570081114771747464137325823112714006510016028276871472385306861712201708202575707212164510223353681413452672580387487363247377162163762460566877487376728582653585125462101742166267405131188542741581384720811051025744007537120852802802255840243238242374276182852473576601326075454806215573635151851148714256254827447873347528046062538420016233343323023547571652166142234342063554474443083754134728420887484260771174673024801132187413252455006567471022215517140124221055481565033352440403386213513215767578124853318563323386468560085238542223826700826360650802331740420534855741465645044842121303213840327234435517242432474484358377454103113241130433477373416275533874385663772635375086845531474357823408762411431135804157332843703050606712147853637458837104430635177781363161443334618486312600543427085837360515222884471058224685650653772581225403202005444113784411306862703464503713851742720670628670172288557105641155647166854886628754072621772110753533424243264442607288085348381863360586205765257568338380276724885550488567032076280648006717556588608501771530660554354048421832786148830755317623732520274662866786412524210004816231055254050251061315855802548351666314486331811347371043380158857068635118844228157744554212148706000117180757163041822011370257108103710385616171847426372546743102523062137246121041184242405551224618507545817774238682376540702082137716141805246521806063637114065814742237817541033357746258053321837021826745383517636317126634258470120587163043317176435503184415504616601201548417177784416336661788328255064621472184243421673510474726161687571024383687487004875642347664134735737343633821026004863107010733312810171206102674167344832157086351226744143188116283727681365436358278313673577608241c0ccc91395602f9c9d3fd4ac7cca52f8dc71cb288c5af5f05f74de26819489c9ad236f241b24229dfd8b815b3d84d5752d36c2bceb55e0385345b83abd82fb83d54f919953e84b4d0fb9883e9ce523118b175ff0e7a9d9b0906ccb5cee27a4189183f0d14d082a65ed1bf54a9d3983e85a7f664133be3b16556dd3c54c9a4337af80454d4d9e0c6810896a3f01e02ab3a00a87560a8a53f464cf5adff796c3d0a709fe365b72cb798e2e7a9ed5e4d8e09eb63b06a3ca94d8a6f8d0851be8560ad375a1f23620fa29be3b4891ed4820a18194b030a05397cd494a00ffd7bbd80e9b55169d6a64074f6ee95f8a24d968b1cde3ccc2818c15c742aa701febb1593922d5bc6cf855aaf9d1ad0892e85fde7d3feb22042515b82b44ef1a5f7975fcdccd1974b186e3c145270f496bfcf96b659f98f5099f6332e5f5f9dabe241e9d7c2907228addb2f10bd475aa375fef09d513b554d3ed76eeef8152c53bd66a470ab7d772f107adb09fe65c592e877cc99b843adec1744b9906aaa8ee21d564811a6304021e4a316aa6093f91e622d03c145a58d8cbcf7ccc3c8af547c3a819e9f0c9929ac387dc60bc06630ebaf753256747fe4d68fbf25a49655b378d94b6ae165eaf69afc2e13b48af859a634c556b9cac08fe790a654dd806d4c07122449087c3975b65e85d65d9e6203f2f53cafa7d7629a3b0f85ba4248b33e49465a77fb3c46aa42bffe9fc01e930fede49f38d124fd28f263ea3d88781ee963f81c99d6efe6ece931d556344b9e30e26067c1dd9276644ceb24f9c129d470fb2e6b472aad086098907dde3c74ad50eaddf6a3cd41982345b12387ede1b65486b9d376cdeb94c464e0f33911e75612b349f181e448436aee08d4caf85a9ed8d45421ccc0d7b64554b1fbc973c69305564e80c562907ae7cba86c8a67e56a051c3bd9f219939de29625d2330c1a3273c174fd31590b07058a1ca585fc4464808297cddf8416f869339724670a6ef64df873e9e7b831721089e19ca81d8fbaaa6aab29fcd7b582d093731358f4db8d4b1afe3484d504b7bb081624261cf537fd2ac380a35dae2675ca0b369a771b1b34086dbe594762d18c6b5063b48fb540f7316b39854e7ae6ed9c310e9b2f76df40310f558814668f80951123135451b1f7f078e9218013bb034d5da69a110c7bfbb2b4d1844f899dfdd56f6eb33cafe1f3ae9f0517a25631ac589acfcb1c17f3ffc78116dd3f3fad540a38f3830256626558908caa474ef9afb9fa2702acc1578064ee332127aa94a4c42985a0cc4a13edc07ce64791fe822657b42f970d3def3f7cfe93a55f027f1260a8c1e384a9f29f02bbf8f7c54192c03f434df195a1dc12574fb625ae521c4c9c8ff8c33696696d6bd0775c4cea7e97a95632b23bcf01bb3ba9637fd4007f90cce0319c96245ac6fa8877fd3d5dad2d205b16bec2b961b027b02acb7a48caeac6728949651c3ca2364c45f52bfbd1034f5e49646ccd3cdde64768d5b629d2e3e8a92726251f351107e1f27e65723c3f575b628a7568580bdf535631a9817d4b7a85158eabd0e9b05e6cedf95eb13bc3c1b5b9b110bd892104ac043d99129321b646563e92e7f71ea161e110bc9a1789acb1661ca4b348306ffe9887538eaa705a67acdc119ec8ff0e5fd8f2f5f3d2895132ab98098ab5b81def1792bbcfe7b7fdd2969ca7fd6c4f9b03b4e0576eec2220141684e9fa8d08d76ee6ef7c87986989844ef65112799ff3b77d0817f24e9ebecefd0fc7933a7a62f4e51e7abc4e18e1d7edf6c4fbc1db40099e58f0cda1380400c86796ab759baad8968469263936ee6f743ff70fe30f4b837fdfd97b67715217fd44a8b6167a9bf6f9c75a0d2f18b5bf05d3640d2b69a5688cf37667541373ff40fff63b283d9b1325547f515635a18f3c520d69f20b6b43f13f71049b52a5aed9f01c132fcaf8e89b3499c2ce094c8853fd104abfc75ba61accb90cc20f9952b29ef22a1d37c61c4a9e7ccb8e191441e329ccbe9b957759aaad200c2056509b30427b584d44cd8017d33a5e489d728e8d46e1ba2548c9ac9babf9e8e84bfc4d328530af88b69437cd29b6dadd80bfca18c1476810bd006bebfd6244091050871e01f7ac3265cd431692108b08fbeef64b681abbb001856ea3dcf90c6fc7f6a12c306d6a3fdcdf9a078f5b0be6ad2ebb7c1ba8b0ae661fa96cfe525245c578bf5df4f6d08c03aa5e1e7ac2ee3df7695d2c588e0a0faeb8d40001c8238951d4d7c54c5003646e4f9ea5267472cbc5e5f6295045be341aef5d000982e8d8f2ecfbb51aeb4b3f968d71538ed870109de1240cc1039a85932e57a877c2020f860113b2d93d8968bdea1a80b0c3e287bed8e507031844547965ee9b6f8ffb8b0fc175771ff9cf4185b87fb8e70a1e1dfe1c166aa11d724b032c78fc8dc8ac90ab6cdcbe0e086f3a4c7a3867934f67e7f5a313cd5429918e5f612e30cef1054a2684f8f43cce784ae4e649223c99dc26b80c5339718e70a8d96a37eff6a0f9f42ff4fc9d79ea471fa43f2c3965dcc3cde278f948b64c7b22b5df7d0d263411490c2a4594f4547fb92152b9ae25bf3896d3922f5f9a07b0836155621a95d7f249a5f81115c2f8a00355c3c17d942fe56ab8a10ad62ca0606942ece02a82e0ecd280ae110b81e1416afd8ebb9d52aeca7be510439e111c9823b4e22ec365af0b8b728330c2d9f2165ea951276036a231b36db923e92c2db22d7942a9c0c284f2c065373e1816e81c0a6d46070a1af9c42180273a9dfcf749e11e1bc80c411fd1956d0c349ed6d19576083709b8995ec04e4b1322c9f3d98cac84c29dfb1567a078930d4f7e60b544fbe759277b3b9df71961ac8967fdcf7b395aa6bd7f35b50fb551e59e8ff0a7d93953544a36406a88ee6fad7ff9b7f7c7eb216728003445bd7bf8af2c8c0488442e6cf35a141ed9d3fb4a667dcce49767f37e3b60c8559a7a964b053cec816ed751af5e0d83b8b6c598b3f7bef3ffd721dca4cd979bdc13e398e13901bf766f5f54014c6b9df77c15290ee5a0df1a11f911960e2cbe821533870af14cff6d9db63783e56995e68dfe696acfebfe8ff135d91d19681048e0c91f55a7e11bb35df24258d4783145cd52968baee36f02e7266b0766bef03b8f223a2d128a4f8ee773078ca6247cf07dcdc78efbdd9c99caacba5c8004cc6940cd1ef1369450df4fcd5157ba44c3cfb95ce6fad4689b117df9c5e2d64e371c00bac2e0fef00da16158b30848a0bc76257752463cb4dffc2aef0b30402756f370cbf197ab5f121307778982e7bd884268f32f1178dc811dd3a8535e711497bcdd6ae58aa12717e85a7c380982bf21f5ebbfaf337ffd11d41f3e02f642afe74441863e1691baccbc9554281ffaa7373799bde86cac556f137b25ffa7782471b91feb4e46cf1c89b1728285f31d796e1251322a07bb313ac5fb66bc379359cba9d444a59a66ac4554c0f0040ac702173ecd6341664daf6c1628a78c371cb85fdc8f7]
+
+# tcId = 65
+# expand_s requires 2649 SHAKE bytes
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = a6d86189aa75e8618ba96982c40f35622405b0d0b2f6621b7d7eed57d03eae4c03f3b9ea48a6f4f8d272487b4da8ab4055dc26925aa8d5636537dacb2042028ebccc9613411756918f9b699242445b23c1169a8bb525e1d4277e90a9ce3f68075aa9bf3634bda8b7e6a763df2f614d8fd9ed73ad5936b08fc63cbc60f4625626fc5f5afe853829098a13f8267aa6a76a9abddc1f4da58023b6be547d1e37ee4a220bf109233bdd4402c04a5119314c2747481966d106c333434b03fd1c4c37d47e459785cb50e4a37c0293bc20428a51faa666452a3f60f88ead932b74a45feb3193bf10d323364cf807ec7193f038770e0936bbe1d96fc758cdbde7fa7fd5b8b58d2ed25064500132edf8c8a0238f0ea7b55da8cc089b4ec03cce9e78af2e710b503b5ffcb95e564caf089aacadba9653ad780b52b6f0af8d44cd8aaa5ef8713851e691392b9998e8083131a9139b6939a90a372cda707cdab2423e72ceb12e1138ffd125d4ce5c2c69b601ac6b97eb77b30b51b64cef96e75f267cec817dad9a96a05fe91301dd58586a37c74f914104f5a8cfddb386a93c237c35b5f616a7615d58ebbfa71c3551685368c04497a3946fef065fc39c37a656ae2b6689563fab0c321a7c2b92c60eae122345145694c65ef7aea65a2a4060997465c0bbff4a71d811cfbf93edb022e50c99fd92394380559e78a5db34b513c37566148aa40443e31d18e977bc35b1260343b8e32f6d4ada3e60d084fd6adf097a20ea75abc810d8adb436eb5e3bcaca06b1d0852e9301d7d961571529a777cca4429cfba1e8c325aaf6bf24f6c8b8123a77843f8080abd9bf441d717aebd483f1cf18e102b042cb2e58a0bec238cec8b5cdbe61fea4f9c6bfcfc0bc022ee5f50c7f5b36065703f2cec29a73795f0682940126b994ee873be25ae55d430b7a671a9835a7f6fedf4964a09bd1058a5151747e27430be0ccaadf8d2f4d3e6aee2e699cf06052f77d0f9c503215a6b2004ad69acdc8747ed63d5869d8cf3bc9911630f64cf233c932ac71a098a982012ec7e25dbfc042004d8f530b9d9e24853725e679b6b751cd7bf80b25e4734f41971938df86e2eb70dfa80a2aa3e31ce9393737c14afd5f7470790f380bb8410aba8152e51d070e71a84cfed8192bd9d3ab2ecfc627fafa891e93bdd5d0224f67d857ec37ad2d5b3ec6f9711081b3bfdae4d05c0b36c70f35b3df8b174ee7fe08c4929e9c5702ffa20081ba7eaa9dcd8187938c93efee081b8854ec3983f9aac3a1fede31da432086af172a6f78776a37a61dc1ffd8e5cf2f1dd3420d8a1dacce8f44a2faf76e892bbc4d3ad744f745a7b5ace2e1943bd70d8f366fd200b15431e20f73074aa1827d59dcd3714c36d10f4b5e0b22e2e1794983e53d21b94fecdc73dcdc048df6796b4b38aaa4414fdbaaa656bc63aaea5c11c3a7c11f8cad30f678547820487959b9eccd27e96b7ade1294875ca071956196da01a9802309e27252840649ab35a3b344b178aedb82c6e3741f1049904427a6d57c977c41c42622642ff393c7aa178918d21bc414d58c81ca8953aa680f2cc5fe7188038cf1f4a0b6fb257e1c414275b9a74caed761b83989934953a19baf98a9575c35e52441487f0b7d5645215159fcb3b7b6b193892886024c508771cbc4b3f120810c7d126b14922d6f386e25309bfb4c1494f6eb4c9572e40856150f00cee661e67e210d24a147ad19565bda14c8de45a5edc77a4865e2b90fcdfbb5003fd90d7a758cf408a96b05b6237b0728e41d5847ba118fd8d42c4843b3864e3bf07c0b7136414836ff9ae6564340d4ce226b1b608b53ffeded5c14e91aa39f869b602355f5754c9c30958cbf426d1df86a498276f130e5b0e3c1862c440ce6e41ed1d8acdcd0f305a66769590244d672d34aa4b72d023332f5788649550039975e467f196cb35a276b6fcc394043ea6924ed262a3572bd354b3685d98e87ce4a5038f3961e89764359c5a507df56c18b030eda095ef6b3568ef010f57949d3633f397a7a04c319090bebec19f521325f0d8b7353a210d462e5a3e70d768c1e8037f57b51b1bf667018e354a14b6cba7d41a23d85d1f2e0473302dd840a085fbb0ad85b19d3e569346a9407329e24817e8a374156f87d2b6b5319f5861addcabd1356e712fe3757ed9230169e51c0f3234118d20f477314514e5aeec9fbeb0ddb58404df022acba911ccc5e727475a36dc9709875303807add451004afbdb4ba7e3ce36bea2ab5c10dc71fb0daebd762a93067a465297c83d5f49b12eb2c1884d430b24c3866c900b5ef882b0b819eae3a5eaf8290f86afadcb24e100fca7538672b9a7c2ff654789319070a363fb6de40fd79e7d2d35afb5adabce11df381c70c0cfb9369af2caf58871e2c48020ea23e7d39195c1d7792651077d8daf2627c0576facf26b7819f92d01cd2375432740cc3eccf93e67803b86802f176b8dbccaadd98327ff492e5a6ecf2234ccd6fab3cbc279b5ceef49cb4d93008dbd9429bcdcb1110db7fcc828ee02f66b7da8cc80d2d6c5f4fe98d8e64930c7c4d5dc20715ed88a6aced33e9b275a8b8289566d67b4f9d0364931f0462a253efd5c1e6db9e7f79a999b5f60819110898d07cf59e6c0cb39cc252705ccbd381c7260a23804060af41d1a0c57d4e684bbca270c608b435082ee5137701f433f3e99ccb3aae30a4451ca36f0a7319160d6abe4974435845ef133e3711ce15b46e5cac0b37cc62a4ded418e648deaf27019d6ff0b821bf8c0eb0d84b531ee8d98f14f4b7dccf6eb550a525746c8eef4f1d234318dbbd2969af3012d44768dd40d2421756e076bc3fc70783de3732de15bd68464f20a7980a58eaf6784fbfcdb8306e10fcdee3aea4e9f9dfc08549b9915b0df736c337e0f918913756e97e7029bd00f5f6d946de70235cf5ac260bb39eec3f71ae8dc19c7bf54fe03c6f894cbab5867bfdcf2568ab8defa4a15bca7421901f907b726970192ac2294b5a90bbd0fcfc2185e819fb0917c4e83dc6088377dab0a080e036c401a3de501764b718990c8514af6994024c9328d0068802e63866dbf911ef1fcc05a4b831df906c2efac9bb79df60a34def5bfdc6eee7425f1bbb21619648c8f4b01d8f047debe8b1b08b1ac090bf83d4363909886b40b4f3b0f1ecd486bbf7339a4a04466cc01ef7c5fe2ed61ad912b3f447b300bcab8849917c05f8c3b8be383d7f46909b2fa0ec95dc1f77e293cea49806a581719e983e90e9fdd8097cdb92788bece98aebd951d666c22e6fe06444048d674e7f8258b22b38695843b044213e0b78b22cfce0dfae13954900338c66e216103255e49691f3f36dab6aacc9d83ea5f93cb544509e0d75c92bc7637374aeb8a0211ff989e493d893feabac80644ea092301f07ca1a1febcf0276d00ea8627aa19ac3d1b5a374abab473b13b79c202dd555fde622fdee1ad6856988c59d000b4e96e1782f42ddee2f949ba17285a7ca4bc78654ad66068d7a2f4bda254748b2685966a9da2e8ea39bf7cd8b05651c6ffd7b61cb29bccc28b7bc072a6a2e76b1005ff5adcbef1394dd4ebe4a9e47dacdaad90943aeff3336180437964085e28ff94837871179745607d11d71f4f2a04441e981b7b4d3c9f85475c2e1e89eaf8b8b2ca3ea3bcc5aade6cb406b73290fecf015d36c5e244d3bfab75c7dfab47b751917158fe333321b495478eeab4ce2cd91173ce2bae318fc3d6906f10aa86c0abd975ba889e958e9fb4fc6acc846bf7196f4a42be5dd51c4d7b5f80303b0b64e35908d7cee503749bdd67d3ff633169dd4bcf39617de8067855a4e0acb680e2879795960931d3102011ae6242423abce1ee4012f7efbe556c68371c75b857c5635297f3ba7b7e5d6f030f13f9177303501ec67315198e7bda9f3434bccc060dd433f1dc4246f491ff255752d8cb103e278d5f35546502cfe85321a6fed500749fbb51316175f062080a20d3f52da159b448df61599f5754ca046dae3a14e9e03525acd9a1fe964c8caa9feb3ada82320d2fd4bae1525830c0a3eb91cb454f9dfa43c6534dfaf6a7e1d2b19d527d4f403863518f63246889614972e0bbfb126ea0b509f0c78278ca1911797fd5da6c00c8b6b212a511ea9bfe7c45fb742a109fa40f375490c0b5e98aedcec7076e1ecfa567ec3575cbc0892460c52e94d9121c4a9219049b7325f300f04182373a0f476f91a18b4ded3ace3d001900f9316d92be485b5dbefb54fc2b6ecc79609c03b149bcf2558ff915f49bbc691b45c3983fbe61b09cbe7f17bd4365e7461ff2388720fbd74ae451f61f73f8c8b51afe87e8684508f7d64ba03f2abaff47a30ee51f32e25b9d07371f578df432fdd95504d64be891762adaef094318e64a5dd86eb81decae2c30c8fdf3ddfced1a6f1a3671b6687765f9fd93cf66c52b8986c5ac3f78a8048d969fe78d057f8779a450c4c7cf554ca935c9f7ad781dc3f50ee6ab1afc087f35e02889a8cc70a333edd334688c70e85e5e33d7509ac4cd6e854791cbdfade909fedc5614190cff9b7b4f62951fb40fda1cf62ae77d00cfd450db333f4c669eea1877afb5babce2f70733396777b2cfd1e10304272a373e67698c40475d6a8dcdec141f999eb0e3e6eb0000000000000000060e1720272f
+flags = ValidSignature,ManySteps
+
+[privateKey = b41031e429023d8b0bde433401da448cee6c25c6ce0d570f91fea2e8e0003b8d74fbdcd92e10a4c402dfc69e0f9a8606306c3bcfbbe54ec85e67a2dacb256ab7fef57d4f9dca6821dea0018711b3356eb35b26aa04e4e24258a425143a41461a9072917c2379147a0f5eddb581b2c2cc8c5ddb0988fbdcff9d1c08c54fcd8d6308187180323332756114621031072627086111387668451517673476308050226401431411002078314320423167445105586472837160068503711651538612002474738156771546158213203634075076627856673551174036874814672276057816182646567057838472217266464286788175223883547355604825160203284740031876124021606828645257287557536283685447586264235741522524203562786368760756626425648646301601424461344720655563085148701581538725563116434750016583787202244706671656673360543022472348386355555216740876053423145207220215288173773673254851848843544367733877367684487546272360147888585062266725530267303827303330722865600064858167053545155847718656562817220613665676265531417768538725827652265147840676841185282152102433418210682713282074058278783774832155473821247506618216626566867772460343644300857213703782575258360453511208113564123347842732384425714052332685838235276140847553510686853588183647620142084011575461180651773710873788051162231133551203282062663434133720131214726826358244448642423066650700046703701165582687044848075445244378345475630155306748508628514414573817131227848117084130108806520477762153526077440526152061718677170211587781767386357087370373546246868176348642114171346466802285776887407548463043571252705273448318775685804388232083342344318526671208685586657233167087274604642575167281425403628454588035142888023158866486354451766232612253807626146002020687740653227166855384628658488552172473352822758416218056646564887688525016571324618580506235085356136623061587126233634144808168776666835652146220745411051087080675254553611328562201757380152442582026728077460687662702730163323344587228282266180028705510081833570608060460561814416388310480718684566834250182344024141512131824564345764225113366886020557736555015867254537141460332463400038080232260884007748535462375132555608478026286674331012254577082372650150743346620632153142461751843512725203645573416203086678847823547075440341236307636683765155035855388325230212466688650848266447774187762550543165086481685166114275844214757615002211585172252045422351822350485640638787260675244484488533545681306107455850048827064173728530377256055386482335626160385474622143280244166215544816121532246616727547420711254521611663025850838555761055745283275766360537451722384665566043524462602412465142360362618885705481810822765762370758274210003446007848633018138621678428488637668412478162585226721120871703455314018886714200087410810471111736637502733516078034784482313173143201720463014387511766151684721818776150764721201276223766122234542135551203814112802641134277113538458182831151888280720407357067600528185433068807774800015204222346136551664505410340801162768715705860206114026018454151640360351626715224114084513438212270103416885145676887226254837585228402210556431316580770507816355161352215424028137545704455312621082860656805056687321652606651264631473767742691d0f2e9df43be04028c83c8ae866dbf43b6a7f2721bb8615814c673837a4d2f4b3d3d10220bb399bb3f4ee10d2ce1ea47c159b728839cbcbada46bc65336ceae50a5ada6171fc8dec6d491ac82a5a08a6ad76568e6c8ebfa06c251f4bf9458c665d0a493f10b5fb9bedc9cba828e9eab11ab0d06677bfd1d7c97304fecd25675f43d556085f6c217da1a638227d05fe3917df0b23b2a2d46a77dca2c7f7f5efdb9fb56443485e15a3525f2b07ccbdf79ca56bd57bd1966eb183469f70199ffdf3be28c1f4ecdb5441a43d6f69312ff7527a4d615aa9fbda8cec198fe551d4dd5be279689ef3a23e8aa37626d82645d7bf60ef38571aeb82d535f97a948e8f44ac7c0c049d0edee6ddd2db826433318ecd7139c79064dd47c6926d9582bd5f786452696362d5cfc282770a355a535190b8605789af94f27ba3aea9081cd9fe01c688393dd00b6c2c187c91cf661bfda0b7845b2f371f0d0d4856c0794cc67edfcff61e6de306725b05f4c0074de49ba33d551d383372d94756cd105b5ccc332b7c6ef979c325383d7d1c58dd6192b14dde5fd99d8bab007a80821400afd1c3534841c88dbda4b0ef8b99bac3befc2ab7b6350b1a018379c526759712817c86f81bb879cfa949d03172d48930f8061e92be0d9cde261af539d9cee6cd619db718fd182690879a3c7d6629f4cf0c789d7188209f8126bfd0e962f58312019116b39b213199ba6f59885cf07ffd43aeaf58bf1eba74c0dde3a448ec5baa425818bdb0291abfa875bab8916a20a038ac798d5b501e1f1a63dc3ce8feda655098d5d8d7809b30f360fefcc4e0044ca327939b3badccf0a0e4e176121680e995364c33a170627d1d53fc32fecd3f0465dd491c452682aaa681ccc5b1d4aea385aff99a9ea0942148e11fac22b42ab4e4db44057f641fd8d29a98dd1ee48892bd205048c2d4c498d693e24649d92300f627bd66b107e2f96848b22d475066e493cf8f29ef2d573d5b34cc39ef5235ddc64d0449e93204a0989a3e19d548cd2d91ed9abf424c907399cb7a3137a864a9fb9da11928f56ac1a1b2cfd5629225d2956e770e5b909d55c3ef626f8ea4074973f8215538d5a9962cd7e7731bec405cabca2015d81a0afe6023975c53a265e985e4151f76f88c56a54fc0201445d6b9ac320268d68a570501973ba985f40cb552d15f89a4e7dc27e1a8bb821adb7a3777f8c809fd8a65e2d9f74e6fd0f852febc06c0daac57da1ca921e258c265bef9351473527414b1ee0e2927bba531ffe1ccbe9d182724e7f53713ad62d1308f5a81fd5176f038a5466204040d4eebedbb1fdea6c43b97058c9d54c8a69d76d6ac78e5acfd722ee04e9ab92dacc52df554aac42476314fc8e2f4f1220045b1baf619346b83c7179f5d2390cc7cf3e7d3d2425598413df5c53b858e396b3f624bb0054427c7bda7eb856cd884c130e56d41c31a9a27648d5c069fe20c72a2b8bbc85bf4992c9fff59ebe900c2d56be65e708b2d901e61c3b98f30994af579ff300e35851425a7d1ca3fdbd4099d1b1e8d1668c623111b917ad791e61eaf2248f7247315f59b13584105e29abab6029672dfa35bc00aab1b220f816796f3e1aaa457c897689b65328f4cfafc9cf7f2521954b5b965515b132340c37ff842b81b80ffa1b8cc503b260e032b9a982071e30a9c57797b6fff48d1cdd6453594eafd8dd0630408c61a1d15cf1ad4d4ac7fbe9e45dc0278b5912f9e69c3cc107f788f2d4d0c3bdf9d403cfc61eec18d56772e00e7c5de9f32ecbe5912324ec78e6d69004b75700776e24395737d18373d9e4fd1c1c00aa3f0c457fd745aba8803db533b2b6351453cdc686e4932a7f741fac51efae11a0c59ddc6d7dd792077c7ffb7491256a00a2fee5c0fbebfc59bd1ea227667afbab3919c953c9472785ffd4cf47b3d7da0f7f6c54f9b91cc227467dcf56440a2578e6fcb40478fcb9fdce30ba99e3e44130e96bea69fec0f4acdda029f20d46430c950872f2adcacd0cfdec153b3ab0b5249b4969a2a598f29783f40a6cda4a3d6ac5944e055a8b7f0d24bcdf94ebf44c401ccb7e9771c03cc0a8140d633daf2ea7db8f8bc6eec0d4596ab8b0f67bea39766f630d9fb96b26e123d5f195a5f4cbf1a2a1f4a40819413fe4cc30c39e85c0aeadb3a12324bec0fbcf4286ac13485b2abff0454d08e996b22a0f03403cb3f5c63dfb8bdbfcbc6e965899bba2c2c6e0b32140c9f8bcc0ebade8ce0ed55c7735d3a134f5b1c03dc0e51370d2ea2b74c09340e6d788e0c92d28978718725d48482248cd5d9fc2fc5ddde9e692974322355d0237aeeedbddc9939cf8c04de6e2cdef6bd074768d73e3d363c3cce748fa54cdd1ce809dd7cc6c8d523f94a8c2af39c7d2e648581f6cab89d60f4953b23aa3c2ec48898c62d1c00df5bf376a54bb8a3e5fb6681f0053f5220bae37a89dd25c0657829a34aa3d4208bc055525debf8451f04e179a271379e79f9fc092b282b3cacea863961c2a9584c0d7f5f8c222f3dd305a38f8928826169a6b9c9e1612063049eabbf3613641e9b6741dc7608732053ce4e49ea5c3404254d83a96db1505aa3717cae23d14d57a0cbe6d21d6b3f1c838011ac5449bdc687d9cae147930ca299bb8bde55e1af6ee63dfbe75f6995befbcc6085c3c797cf87d1bf3285ab67f354e5402152c25e98caa6fde3cd8123500c9a37dc2dc26c40d81a1762671a59c1dc2f9eb12045ab2acdcd2365a559b7934c26416156bc1c758170fdd4cabb1fc2c3dff093f4f9fe0ab33479f3945653fb0f30bc1d736e3104b54c3ed2213f8c608f077445e094d6f56f683fa361befff74f825edcb4694aa698d4c16d522a879d915b84b84e41804129d0e34bd0dd66bd86323d9089e2d18807be5ef946a146a5da0143b0d4f45027967af7165abf19d451e3bea099d6c7489fe754d347811d7eeed06a5cceded556e25156795b6a99c34937ce94f60cd3f13f1d32ad079ba33808a40f66bcf4722648f5b1bfbf9340571a6ea21c4540099e2de3b79f0a51eef10cf60b19d91ccb54dfa05190acdec0e23255164ca3592ce3eab4d8ea58f69258c5d3053dbf949e7a4f8229ec3fd44d07a0179718b7898bfb8a755d688638ca344b736dc359ffbb0ce169a7076d21916e7dbacbedf8007392f4b6d3084997d39a265ad0f56d5fc3e6e275d278e7fec6097b1c1ba7f351aec704fbce599da7d2220cf1aca547a8254f9770fc1cccd747d691711c5d0470873584e378b4ac9d85986115b149ceaa3936e66dd4290220cd469ebb7ff0bfbf420f47a8ddbb3e11d102fcb417bdd2b1f6106f364889f363c588642eda3c11cf25476e72c889842458ce265379ef361b367e321b7ddf07f6c044f42b754a03b6918d75068864573a7f11eada4c99a9e8780f0aa35bea894a410351419aea02ef35eb96ff9f56856fb3c5217d18dfe1b13c348051ee35cad2a40071921bbc5dbec7180368311f251e75d7abfad41c2bf03b9bed7d847755cd1a6f9bd]
+
+# tcId = 66
+# power_2_round returns a remainder of 4096
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = b35a9d26d3cc6ae8bb05acf2044555aeac041165b78f65f13831ec482972193f4ce7eaff57bc166a11206ac59e51f798b7a0b3776e447ce2941b99a4e0f6238a8a5f3487813e1cd00260127a67f5fd09222668f3edd5db27f9f9223417f82dfdedf9ab5ea6ecbb325f2bd4669d59a2bb8634f2b658d2d3362a79454372e2f31f81e6de020436f9bc21db4e2b368a448aa15204e170ceebf7b767290ae3634b094e569375efe46b71c0ceafc9af5eab65325403e9f7573323ecaafe5f0a7b34f3de08f124da2e2075b2295d2390b41c737b48767782a83c09d46d7ef1cfa8eecf154d35cc8b68fdd4cdc10c04e0470953221962cb98ec479d80461d9608f6f489cbbd6266b05266a52d99146d76060155a093eac3c3580aea48f183bc95aa2b77a00bf5f110ece9fda38a344a20eab6be2830006fcdc5cc5ff247c357a639f665562a527a99fd1c0e69b37d5ccc50c65c27dc057d6c7be4f970b01057c612101dfe9fe6bf23b621192c5e94a8b411dfc3bccfbd11a94ae05869f711f1fd8f6ef9b7f9b1a9e4173b56c99b05bb379865ad9e414fa44e6ba4f67ab4d93fb045ca0316ddb9fd92d1ee08c3fd8e490c7e533fd1f761355c72a37d9b7d4814efcacc66c8af043560287b54004ab30b91c03d8a510cfd5238cf3ef301d8efb042d331e3c2ea48876b9dc9b05f2e941975d247defa4f8cf2c7bed438ae680fe52ab144e7bc9d0926eead50fedcd7aac60fc342cf566671e84b02285686a0e9c49e5e05807a6b96df521c38905ba9079e9aa6673a1ec2208f8b2dbf03dab944e909b58ff791facae78e429a60dca239df3e00d48fe4848033d35b5847fb9a78b3364c9b37b7e0a9f3c497e811187f26ccb57db5fd669dd4b5bf127b5f01e6a9285b607823a82062a096e0b8911f7b0543aa6fa36b0c2a5f29fce780cec024560938c61915873beb6bd642d67d609bb43f9d8b8a72859fdb13f42f4f8ab60bd23725ddca6f586501e929d9b889dbeee8955be8d3251d41c46db3ddb75b880210f447f40c6dc5bbc52d22d2c4408d68a0d8a5adc2a2c9d7348569e858c9fa5254a03f9f1e973c66752c6fb0f09e32e8a587a56107ec4801d7c1fbe2b9de6db7a46aac7291d4081a53c2c6e9b1b0afb4d5204961553f23dad621bec8078edd3031bed2651f26eba978c2d9e230083d61f054548090b8fd5f9a31af5ef2fc2f5b7e21345169e869cb8d2707d1f7dea43f1770f153d50e03f838c41ea4eaf4679d52f23c6d41727c9922bd611b185bef46a220a0a76c7ee1d45cffe889af4331b9f6b9665830ffd9b3fa335e4d0d66bb9f1d835d7c123abb334daee683116de8e4342d11ec42a834be306f1b39ce24d9cf838f7fc8ebe939abdae09f8ee7c10adc56d26fb6a928242537d372890143605bedf8c601b031fde9cec47bef17e4e54a5d90e470cf4e826fd69193e94a21e32979c368fe9ab7dc1e582d02759f7f6b8386f4b005f3c4e956ab528b8436714a132c667ec0f21fa9993d37624d8bec1d9d759f28601afd8c7467247c8bff3b35d0fbac82604ef25e4b88ea05f700222baf0b633623467e0b191d88c1bc550a1dbef2813df92556f48c99cdd22557003c3c8d39cfb91316a4b13a078afd5d52c5a8e07009a88aa93ce463318d89a1cff5ada0d1609cf0df966b0ca14beebbecd9079c09467c1139ff8ba25adeb114dc51f662d76105cebf40ec1ff82879c8e3a653343add75ec4d75ddc6f6b76ef85092085b8d121ea81d875b362d95c4e28042df3958f16c7218215e9039c1cf485ff3154e46d3f9825a8e1f74e2134dddd56a81d8c1a21121e2dbaa322926581cb75592b99c9f90568f9b6e1e36f0fdb3a9e5dba272403375e42f3a32342354a798b26e8f295a9f377e022be8485513bfe6cc05f896cb62292acf714dd81d1e87ad89b38bab5532e337b2f326fa6cd508ff2760bc2501d729a66d1ddfbf9d622757c21b2a5308143f198eb02035adf90d44aebcd12fb161515025198a26433c7adf75f6077cb8a536826e18e4b80964e97c6354455306f3c5b6a8603c7bd2302c20faa46cba18bcd57437f474939643d7c25422ad36e56c3a80cf78deb62d9ef3b2de60ddda3a6c080a39c24dcfe88ed6a5c974a5dfef3d4b524d425bafc65dfcf4d045a1d21ddf393c73c2806ed7200a86ab718655f8951a1516ee527cd407baa36e27c72e97503a3280104d92f8248f1cb0c6c0d91b262fa39b8056796f954150d1a0911cd6c7bda3870ef566ded8d656f2ade63f13c62aed5087bdc1469eeb64418ce7af5fc50b721575e99df25432804306a89fd33c0406be8beafadc28f533e12d05bc3ffded1dd59cdfaaa54bc8dbf75b05f72b3dd555172666faa87602411ef6d97ff3254706b876844ebb3948f13e62380df05f67bd13eee4b8a2d7fcc53263072273eab92f8b7bfa64371b58a412bf5dd806c2b8054e8f6efbceee0700e20f6e4e61a6fd6dfdd170fa37e6559362e7b56c9ab7e27cfea2bbbf19c1815e1c863fa24c50ed465aa12583b345ee4007e9677f5f582c9f9377e5b0b12f34ec4e8f4199bb7a683142f07daa27951466f9d608389c17c5c50cd99834e5e975304e2ea1f6b6aca94a433294831a8c5e14dbe46017932035041cee0fba54f87421fbd14b05454543cb2e95046080da6ddfb81aedc37e51d0b1c3b6d036f8d97f8ad4e7752324c8bea832cad6f8afc499b35164b71f497d86d54c5e0cfc67cb31e01a6de5cc43b42927b20ee57b1267141eecf85bcc94c5469f68176f8313a706b2b1ace776bdb69c2fad7fa383dda1895c36836da08676a1a2ed697843f135c385831795ee32a5750fcf08013fbffba54edbd4ed3fafb6f5552a389a56f41f68d1a721b7b344f9e74028217c39c3c2aa1fd9b44b90173de0f986a3e2fae6e1cdd3458446518b2551a3d3ff4294dc2c217bfb8b281b42acca144fdf8c1ba08acc10077c06dd8cbd5d4ae2336cb02cc400a1f49ec581d1e2c62e1cd21be275be4257105836aa99631041b999a16d6d57c1bda6399aa50adf0d4fb8e1229d8531aadc834daf90408fa2120ccd2d39df7f93ea12af0873df00e201b4bd6851ccd931a23e6589f4f583772ed426ee324105d72a05e308401cdb99b283c93cc518ed7c98f230d3605e987b79f8b20d28f99c46850c025d26830dbfee8230234b3efac3a3ebcd322e84c604782830397697bd1308d07d24dff64f7e453dd0eee7161f7e376c7f5e108e04f22dcafa47278be38a4754bd7c9b657fd9aa77a76cf9889a2e6f0ddcec106db418d7329686bba394ee09c23629009bfb10b360f649e962cff1b0dec8d47016cd15a068a5c9d8a721096a61e91b00bc28816f96d4fb7229d77c4a9b3e23ee56f12cc973bb0ef158c0bef405bc6483797aa1d4eb1cc7b2e1e34365b99d3b970b8dcdd7655d143fe6f4e191b2cda90a1e6158f55553af987edc08a78355557c3c36a2fb530c5badc5fa786e6a4feb041caef1fc0e18283e00724362305ff84ac5478b4db29859b980f680b1ee2486d07ce2d2b50264f693351d2c7e03de1922bfcee5dd7103c9b5c3f5426141f293bbdf920431e639dc79e63343d48480354204e920bf276dffd3b2692ed4a9654c294e1c0c3a0eeee84549f227250a4bfef594ea0c3a68bc2c6619f85d0c96b01dd05a9c076a7a2cfb6d0e3dc616147d3e7eb7006f2026040ca208351cc2f3fe3a7e72d5f2ae2c18ad5c80e1d87d439a1afb4672729ae4d04ad517e5a5dd903fc1cb5ed3385a11762b5a4e5d9d7fe00135e6857df3bb623cc5963f0573d858a0e62d31d5ecd54ca5eb4f1344ff1ba7bc2544e7140c5a2b9c3b604c88f0253e44b31f2543ef0e682c5a50bd2933f8bc22debb3802625fd8963d373321a0088cb910f51762e496f50d822b9d445780ad78f6c8143dad25cdf555f6fa49eae6841fe8e721437c7f541ffff6596b7b52770f44cbe33e1ad00857a8d36c0ee20de9c9e4d8b4d183418c5739c1072230007c196a2f67135591c9c81cd259cedbafe7178f28ed9c1c8f72e6669ab9ca2250c919e29bd71a618f4ce5cf4eed1e1e13e052fa0279fc5e55a4e9989c17cacc46a33e39b40e29580dd07d6ba47716a483e99a02eb36fa3c103694ebbcbe9310516a56ad1f6c0863ee6cb316ab68471ef6cf8612a0e6ab593f85744564a450e1771df0523dc7b3a1e7254a55f1e71dc802a98b8c60e795d1b50af67bbda06b3244372387bd3e1cea4b660a83644f08e9ad4578e431c3b560dddfb4aeb36ffa993b411df5bd9dcb13de404f818aa051bae8fdcc8c10190d4f0c7d398a0743ca53a388120d5616042c0b1ee79821e35b7717f021b2c28e871fdbe5a4c06b1a4cb38f4b3950604dcd9791904212502b91e4e4b39c9b805fa7257dbfa632ba272ab4de9cc3fcd0c4baaa5c231d959ef27d68b9ff3a473176533fcf5fd26c0e90b7d5d65d4f8a4a374343df23e823cabf48dc372f7d508bd2eb0454a4ad59061cbd1b0a57e777f2473ff769e5c91b3e05af375fc5123b55bfe419e975153193bdfbaff571c0e7dc2df2e0d60738f8214a43ce6eb8880f2da4ad6a940143597eadb4b6de022329456e84a8b5e4e93d9fa9ddfe040b107ac21e4e6178b0eaf907114472a5e400000000000000000000000000000812171c2329
+flags = ValidSignature,BoundaryCondition
+
+# tcId = 67
+# power_2_round returns a remainder of -4095
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = b35a9d26d3cc6ae8bb05acf2044555aeac041165b78f65f13831ec482972193f4ce7eaff57bc166a11206ac59e51f798b7a0b3776e447ce2941b99a4e0f6238a8a5f3487813e1cd00260127a67f5fd09222668f3edd5db27f9f9223417f82dfdedf9ab5ea6ecbb325f2bd4669d59a2bb8634f2b658d2d3362a79454372e2f31f81e6de020436f9bc21db4e2b368a448aa15204e170ceebf7b767290ae3634b094e569375efe46b71c0ceafc9af5eab65325403e9f7573323ecaafe5f0a7b34f3de08f124da2e2075b2295d2390b41c737b48767782a83c09d46d7ef1cfa8eecf154d35cc8b68fdd4cdc10c04e0470953221962cb98ec479d80461d9608f6f489cbbd6266b05266a52d99146d76060155a093eac3c3580aea48f183bc95aa2b77a00bf5f110ece9fda38a344a20eab6be2830006fcdc5cc5ff247c357a639f665562a527a99fd1c0e69b37d5ccc50c65c27dc057d6c7be4f970b01057c612101dfe9fe6bf23b621192c5e94a8b411dfc3bccfbd11a94ae05869f711f1fd8f6ef9b7f9b1a9e4173b56c99b05bb379865ad9e414fa44e6ba4f67ab4d93fb045ca0316ddb9fd92d1ee08c3fd8e490c7e533fd1f761355c72a37d9b7d4814efcacc66c8af043560287b54004ab30b91c03d8a510cfd5238cf3ef301d8efb042d331e3c2ea48876b9dc9b05f2e941975d247defa4f8cf2c7bed438ae680fe52ab144e7bc9d0926eead50fedcd7aac60fc342cf566671e84b02285686a0e9c49e5e05807a6b96df521c38905ba9079e9aa6673a1ec2208f8b2dbf03dab944e909b58ff791facae78e429a60dca239df3e00d48fe4848033d35b5847fb9a78b3364c9b37b7e0a9f3c497e811187f26ccb57db5fd669dd4b5bf127b5f01e6a9285b607823a82062a096e0b8911f7b0543aa6fa36b0c2a5f29fce780cec024560938c61915873beb6bd642d67d609bb43f9d8b8a72859fdb13f42f4f8ab60bd23725ddca6f586501e929d9b889dbeee8955be8d3251d41c46db3ddb75b880210f447f40c6dc5bbc52d22d2c4408d68a0d8a5adc2a2c9d7348569e858c9fa5254a03f9f1e973c66752c6fb0f09e32e8a587a56107ec4801d7c1fbe2b9de6db7a46aac7291d4081a53c2c6e9b1b0afb4d5204961553f23dad621bec8078edd3031bed2651f26eba978c2d9e230083d61f054548090b8fd5f9a31af5ef2fc2f5b7e21345169e869cb8d2707d1f7dea43f1770f153d50e03f838c41ea4eaf4679d52f23c6d41727c9922bd611b185bef46a220a0a76c7ee1d45cffe889af4331b9f6b9665830ffd9b3fa335e4d0d66bb9f1d835d7c123abb334daee683116de8e4342d11ec42a834be306f1b39ce24d9cf838f7fc8ebe939abdae09f8ee7c10adc56d26fb6a928242537d372890143605bedf8c601b031fde9cec47bef17e4e54a5d90e470cf4e826fd69193e94a21e32979c368fe9ab7dc1e582d02759f7f6b8386f4b005f3c4e956ab528b8436714a132c667ec0f21fa9993d37624d8bec1d9d759f28601afd8c7467247c8bff3b35d0fbac82604ef25e4b88ea05f700222baf0b633623467e0b191d88c1bc550a1dbef2813df92556f48c99cdd22557003c3c8d39cfb91316a4b13a078afd5d52c5a8e07009a88aa93ce463318d89a1cff5ada0d1609cf0df966b0ca14beebbecd9079c09467c1139ff8ba25adeb114dc51f662d76105cebf40ec1ff82879c8e3a653343add75ec4d75ddc6f6b76ef85092085b8d121ea81d875b362d95c4e28042df3958f16c7218215e9039c1cf485ff3154e46d3f9825a8e1f74e2134dddd56a81d8c1a21121e2dbaa322926581cb75592b99c9f90568f9b6e1e36f0fdb3a9e5dba272403375e42f3a32342354a798b26e8f295a9f377e022be8485513bfe6cc05f896cb62292acf714dd81d1e87ad89b38bab5532e337b2f326fa6cd508ff2760bc2501d729a66d1ddfbf9d622757c21b2a5308143f198eb02035adf90d44aebcd12fb161515025198a26433c7adf75f6077cb8a536826e18e4b80964e97c6354455306f3c5b6a8603c7bd2302c20faa46cba18bcd57437f474939643d7c25422ad36e56c3a80cf78deb62d9ef3b2de60ddda3a6c080a39c24dcfe88ed6a5c974a5dfef3d4b524d425bafc65dfcf4d045a1d21ddf393c73c2806ed7200a86ab718655f8951a1516ee527cd407baa36e27c72e97503a3280104d92f8248f1cb0c6c0d91b262fa39b8056796f954150d1a0911cd6c7bda3870ef566ded8d656f2ade63f13c62aed5087bdc1469eeb64418ce7af5fc50b721575e99df25432804306a89fd33c0406be8beafadc28f533e12d05bc3ffded1dd59cdfaaa54bc8dbf75b05f72b3dd555172666faa87602411ef6d97ff3254706b876844ebb3948f13e62380df05f67bd13eee4b8a2d7fcc53263072273eab92f8b7bfa64371b58a412bf5dd806c2b8054e8f6efbceee0700e20f6e4e61a6fd6dfdd170fa37e6559362e7b56c9ab7e27cfea2bbbf19c1815e1c863fa24c50ed465aa12583b345ee4007e9677f5f582c9f9377e5b0b12f34ec4e8f4199bb7a683142f07daa27951466f9d608389c17c5c50cd99834e5e975304e2ea1f6b6aca94a433294831a8c5e14dbe46017932035041cee0fba54f87421fbd14b05454543cb2e95046080da6ddfb81aedc37e51d0b1c3b6d036f8d97f8ad4e7752324c8bea832cad6f8afc499b35164b71f497d86d54c5e0cfc67cb31e01a6de5cc43b42927b20ee57b1267141eecf85bcc94c5469f68176f8313a706b2b1ace776bdb69c2fad7fa383dda1895c36836da08676a1a2ed697843f135c385831795ee32a5750fcf08013fbffba54edbd4ed3fafb6f5552a389a56f41f68d1a721b7b344f9e74028217c39c3c2aa1fd9b44b90173de0f986a3e2fae6e1cdd3458446518b2551a3d3ff4294dc2c217bfb8b281b42acca144fdf8c1ba08acc10077c06dd8cbd5d4ae2336cb02cc400a1f49ec581d1e2c62e1cd21be275be4257105836aa99631041b999a16d6d57c1bda6399aa50adf0d4fb8e1229d8531aadc834daf90408fa2120ccd2d39df7f93ea12af0873df00e201b4bd6851ccd931a23e6589f4f583772ed426ee324105d72a05e308401cdb99b283c93cc518ed7c98f230d3605e987b79f8b20d28f99c46850c025d26830dbfee8230234b3efac3a3ebcd322e84c604782830397697bd1308d07d24dff64f7e453dd0eee7161f7e376c7f5e108e04f22dcafa47278be38a4754bd7c9b657fd9aa77a76cf9889a2e6f0ddcec106db418d7329686bba394ee09c23629009bfb10b360f649e962cff1b0dec8d47016cd15a068a5c9d8a721096a61e91b00bc28816f96d4fb7229d77c4a9b3e23ee56f12cc973bb0ef158c0bef405bc6483797aa1d4eb1cc7b2e1e34365b99d3b970b8dcdd7655d143fe6f4e191b2cda90a1e6158f55553af987edc08a78355557c3c36a2fb530c5badc5fa786e6a4feb041caef1fc0e18283e00724362305ff84ac5478b4db29859b980f680b1ee2486d07ce2d2b50264f693351d2c7e03de1922bfcee5dd7103c9b5c3f5426141f293bbdf920431e639dc79e63343d48480354204e920bf276dffd3b2692ed4a9654c294e1c0c3a0eeee84549f227250a4bfef594ea0c3a68bc2c6619f85d0c96b01dd05a9c076a7a2cfb6d0e3dc616147d3e7eb7006f2026040ca208351cc2f3fe3a7e72d5f2ae2c18ad5c80e1d87d439a1afb4672729ae4d04ad517e5a5dd903fc1cb5ed3385a11762b5a4e5d9d7fe00135e6857df3bb623cc5963f0573d858a0e62d31d5ecd54ca5eb4f1344ff1ba7bc2544e7140c5a2b9c3b604c88f0253e44b31f2543ef0e682c5a50bd2933f8bc22debb3802625fd8963d373321a0088cb910f51762e496f50d822b9d445780ad78f6c8143dad25cdf555f6fa49eae6841fe8e721437c7f541ffff6596b7b52770f44cbe33e1ad00857a8d36c0ee20de9c9e4d8b4d183418c5739c1072230007c196a2f67135591c9c81cd259cedbafe7178f28ed9c1c8f72e6669ab9ca2250c919e29bd71a618f4ce5cf4eed1e1e13e052fa0279fc5e55a4e9989c17cacc46a33e39b40e29580dd07d6ba47716a483e99a02eb36fa3c103694ebbcbe9310516a56ad1f6c0863ee6cb316ab68471ef6cf8612a0e6ab593f85744564a450e1771df0523dc7b3a1e7254a55f1e71dc802a98b8c60e795d1b50af67bbda06b3244372387bd3e1cea4b660a83644f08e9ad4578e431c3b560dddfb4aeb36ffa993b411df5bd9dcb13de404f818aa051bae8fdcc8c10190d4f0c7d398a0743ca53a388120d5616042c0b1ee79821e35b7717f021b2c28e871fdbe5a4c06b1a4cb38f4b3950604dcd9791904212502b91e4e4b39c9b805fa7257dbfa632ba272ab4de9cc3fcd0c4baaa5c231d959ef27d68b9ff3a473176533fcf5fd26c0e90b7d5d65d4f8a4a374343df23e823cabf48dc372f7d508bd2eb0454a4ad59061cbd1b0a57e777f2473ff769e5c91b3e05af375fc5123b55bfe419e975153193bdfbaff571c0e7dc2df2e0d60738f8214a43ce6eb8880f2da4ad6a940143597eadb4b6de022329456e84a8b5e4e93d9fa9ddfe040b107ac21e4e6178b0eaf907114472a5e400000000000000000000000000000812171c2329
+flags = ValidSignature,BoundaryCondition
+
diff --git a/third_party/wycheproof_testvectors/mldsa_65_standard_verify_test.json b/third_party/wycheproof_testvectors/mldsa_65_standard_verify_test.json
new file mode 100644
index 0000000..49dc77a
--- /dev/null
+++ b/third_party/wycheproof_testvectors/mldsa_65_standard_verify_test.json
@@ -0,0 +1,1026 @@
+{
+ "algorithm": "ML-DSA",
+ "generatorVersion": "1",
+ "header": [
+ "Test vectors of type MlDsaVerify are meant for the verification of ML-DSA signatures"
+ ],
+ "notes": {
+ "BoundaryCondition": {
+ "bugType": "EDGE_CASE",
+ "description": "This case exercises a boundary condition (e.g. in the signing rejection loop). The verification algorithm may not notice."
+ },
+ "IncorrectPublicKeyLength": {
+ "bugType": "BASIC",
+ "description": "The public key has an incorrect length."
+ },
+ "IncorrectSignatureLength": {
+ "bugType": "BASIC",
+ "description": "The signature has an incorrect length."
+ },
+ "InvalidContext": {
+ "bugType": "BASIC",
+ "description": "The context is invalid (too long)."
+ },
+ "InvalidHintsEncoding": {
+ "bugType": "BASIC",
+ "description": "The encoding of hints in the signature is invalid (e.g. non-canonical order)."
+ },
+ "InvalidPrivateKey": {
+ "bugType": "BASIC",
+ "description": "The private key is invalid, but the verifier does not know that."
+ },
+ "ManySteps": {
+ "bugType": "EDGE_CASE",
+ "description": "This case requires many steps (e.g. many hashes in the matrix expansion, many iterations in the signing rejection loop). The verification algorithm may not notice."
+ },
+ "ModifiedSignature": {
+ "bugType": "BASIC",
+ "description": "The test vector contains an invalid signature, generated by modifying a valid signature (e.g. flipping a bit)."
+ },
+ "ValidSignature": {
+ "bugType": "BASIC",
+ "description": "The test vector contains a valid signature."
+ },
+ "ZeroPublicKey": {
+ "bugType": "EDGE_CASE",
+ "description": "The public key contains a zero vector. This makes it trivial to forge signatures, but that's none of the verification algorithm's business."
+ }
+ },
+ "numberOfTests": 83,
+ "schema": "mldsa_verify_schema.json",
+ "testGroups": [
+ {
+ "type": "MlDsaVerify",
+ "publicKey": "f5408337d0fee65c28851226a5fa81b58464632c78e2a9bef70d330f2e3a5f74d9cf676aedd1067c91a5dd5d4edc46f868a93ffec9f44e254e44f682a153aeadf228e8db7c5fcfed30cc3408e261ab896876bee56660d2a7c1d7eac20c5754255206a178f7156295065ce7876f90c48f44bc37f3a00e32eefd3a4bb1e298fe283d106eaef92a33a594253a2a0790976a1d04636f8672d28c06c852ea8bb43b84bff512996e7616963d5b9a2906466a152c7ea9be178be35405683b44367af85d2daad87630c1e21ba5490154f0141780f5ed0407cb0b975dd56d5930f9b26413b843b83f3693304b0038bd3e4bb398868060ea18c9c67099376470a50deb052e4056743fbcdf0341b192663bd1c21ba3b3d5666e0d0e29c4e1ed0759ab0bd9d1d355011b94e0ff0c049b03ddb7138640667144fcacd7265f55a07e5387f1abd30c037cf14d436aa855f827049215440d8007f61460500d943f57ffb6bfee6fedd2fcec52882d7d8da1aab29e892c8beac3df3234b4a7d2eca3a45c6623c52bbdd07c1c94314b706988a52029f8f8b06e874b741d72926652c78c6ace2cfd8864eadb2e4b39cafe6e03e4edbafa2747db9bc42f92af8b031e3e380846b1bfd15ade88c285d6a6fffe91eafc8b17de6cbc68575f323cc09fc20e49e8efd76f9568bec486b78df4245428d8d0d5f53873e11de65fda4c770b521a8c67f5c51d48cc26358954514447881fd9a42e5891dac7e1db5249d7861b322111e5fb929bee9ff5e9d5a2667ba93e63fc03040d2e82648f89e89dec1d1d2dfb9efeceb7940f7dcbebeb5a239cc1c54d8f7d52cba220d0634e15df46a58280bc5a48840bd39274cfde150f9ad9a40f6398d715350925f0e0501944409f32331a362bdaaafb3d8ce71c964332d6afb7e684f99951246d88081c86744ae68133f22c53a4b5ae258f230a98491d2d43a79a6d0f4d54a3b62013965ac7c82d0507125a38a0277f81cbc1d46cef2a131c6f51b88ec0baae0c82a6a0e72831cb06f9116cff5111d597e01057d32805a008f52c9aec3311139bfb35982789ff83bdd0c31e9f1080e8ed8eb99fde66bafb29e3357389fe3785b60c78e229ef073e1b65e34d848bd4d8a4f251551e2d38d2546afbc205d3c6dab34d2b962b1afb44f1d22fc10c6744fcd6b636afd3cb414b16c2e0d708fe9f51ff19120bde693b028b6d1e6dbe37b4b8b3bc7c6f7a842701603869d3ded572500f085502efc8d3cc62b30e5cdbcb5e86d9c0d42973bf755df539cc0aea58f9148386db67bd2bf70cd12ccd96d5c66fb271416b772465228dc44b079178f9b766370b66a79b871faca246ca6f8f63be9f0668297ac446cad5cf4a83318b1b00ecbd283f0eecee60a9a37a27abdbdbe382e307970002837dfc0bd3934ebd008918fd4bd383c02c9d37f694996e989a49075767ebc4a2981ef5275455e026cb0bd70946cdd1fadaf251381d324f9efbb860d1b280c29685bab97d010676273b45cca12ac3966aae342c84e2357eccf252577743b8787967b40b07ef2d3d9e6c1a3bcb059cba0fdb7f0d4f815c242b8e14acd3375e608e9230ba3cf8718f43882a3e1e661a2bbe81830d34741f33473e263b3790abe67acf29f5df44865b2ffbc96975fd62738a64112deda5a2534fb0a23b3b3024df986391badf9041c593c313a7ca1e1fcffcb65b07b9a99337b4a4acf616cbe1553eb9541f38aa6247342905995233a28172ca13396b2a9662970120f82b92a213f43de7a232ccca3268265c9ce042d50915430a6c455f32277da42f9962fb9163b623231ebc080fa7b8e9f9021fcf85b98f9c483e4d2226b9326a5bcb2e7449ef029ae142d3a0f0c28bd4f7e9c51a12e1336f24dfacbc3f808a8f7dd683027bc948763b808fb0037394b8b41bc9b2ec7887e67584e03d11b15ca203b2bcb43f8881638c4e4eee7f846d09c7f89b7739df22b2c3acc235032ba8f7ae27b5b9d25733143e80a4cdde6770719c1e66ec2ce683612233e88fafff84c0745a98aa1254c8219c6c556348c2b5d1beeb61532d6bf7bde153271dc647460beb65fe0055b33fd6480dcbb9d7d471952cfa5be260c39721a8c5c89b9e966ae2dc9036451ec9f2c49433b2225e13f23e20c2bfba81a7b3a555883449238f7d48213e9f10ce19e76f1bdcfc73ee5524bd7d8be0a4b46784e238233c04fb99383ec7726f9717e1179dd14fba9ad6c2ebd1699f0ab0e57e6cad23875b029e89cfda06f51266ecd2eed4edafb51e82f2a506d57ba74da611774ca5fa2fff4a976519de425885e7d09219cf815b1767d4fc5a72c18918991a285086a6a766614a4d245387da50f28dd778fb33ab88c0918feba3768c55bb1f07aec33cfeed33d6faa4d34fd7227b365533c1e67dbc89f0b20195cf1cbd480d333ade1c9bb28308085b72ced430268c1492a27050c43668adc9cf8b8509447cfcd3c8f8d8eb554f704101786aa9ebca86991d250776a37a1f56fbf7d08e591f978da49c3870625879f70e2418aec5cba32fa8c346fa9038baebc35ad0068a4d03537aee14c2e71570a87490377fa8dd66f995aa044a522f0c7025a7ab2dd5ad30a64268dc112b7f9fa156df64d631f55f1d6edc55cec570a9c7372e29e02c8d4867bae249431dcf6ed2794a0183f0f7501201feca4a81d334c642fc8d38e9a90fa77429665e09e214797dfa455ff47c4f219d3a2cb0176bc2236455123c1c5da714ad29d580fb194f87173a18dc",
+ "tests": [
+ {
+ "tcId": 1,
+ "comment": "baseline",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b",
+ "result": "valid",
+ "flags": [
+ "ValidSignature"
+ ]
+ },
+ {
+ "tcId": 2,
+ "comment": "empty provided context",
+ "msg": "48656c6c6f20776f726c64",
+ "ctx": "",
+ "sig": "69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b",
+ "result": "valid",
+ "flags": [
+ "ValidSignature"
+ ]
+ },
+ {
+ "tcId": 3,
+ "comment": "non-empty context",
+ "msg": "48656c6c6f20776f726c64",
+ "ctx": "436f6e74657874",
+ "sig": "3a1f0e89fa72e489e2c4c1607b0f22ad03513725660d1ed7cc9a6b83580247a101ff45480e4ba49b1feb3bde46952139d3e1d34d7da0124e8ffa05bd19698be57ffbd5c2411f01a0588898cf4af2b3f3e1fd83e8befe03806d91869eb496c8ce989761da7190e036eb2bd14a8f9e195d5ab8a1b2b11dd56a098c1e7ec6d508856aec98b74850e1b934600b8b7d33cea5f79877cb9b1452a2fbf5fe09651c83c2b965aeb496a2a4edacd4f6f39d56cde44c2f99c2f0b548501220f553a1ad14c6d8a970d1cd6dabd4356568621d22c70dbbb21dab61c10876e34fb20d3f012eec956cdc9ed81c98e2810c218dfbe1de709ceec9dc2eb2590d31fe9855f8a1d14849f9df5120bda5a0392fd6cd93e2e8e5f80e6b30f45e9b409f9e251a0ca2aa8ab99394e9190f3c2cbd1bda77b49f9ac887e7ceefc333cbc49d080726cf373753addfd13fd4204f12c07a21fe2ae5d513eff664c0ae4780f4d4f87a807ec63efe098e7d196223276f4564efdd574402c77390d2cd72f4785501f89175f6d38768b6c77838723cfa66d42e3556077039ee8fb363b67c174fb70f78008229263350c14b54fd9361a9cdb29fdc57909c757f96f9f2c13905f44c3e40a16a92b0fe509ae9cc3647afeedb032464b176b6a1afa78df4fd6bb765e37071172bef2b6d045b9a51701d111b60d0a639c0ba034d5c6b4c146d079a340fe53e9cace778a995ceb2d39f302f066097eec6f65f775a5e803f10af031dcb3eecb2bc4939f478c5fdb96e0513d9ea90ee2cd46ba7fd45f88e8c38a23e06fc5b2c624708a5dee0d00bcd976a8f75e35c80caec5531ff4ef8bb735cbe7ffce86290eef23248b19272692b758bba1de7a66c63a58315e48f5b127849c759d185908a730f1f29272003e6491a0b4aa9446da297338e04a60bd5f8413778aa08cc0d146ba76a5ebadc775af2b0b3976acb54de8910417f857499d8395be90d207615dd061317e5385b886281699e484a7f958715dfdf3ec30d5423d94e0d1657a24478967513fc741fce01f848f9fdb8fa407b7cda2f7a0eed64d9795a2bcc9e12c1d09b4d71cdc9dc3fd2ba82251f0a9fe5ff32732d2306900184e4296bf4b5b92c106d72a638c5f6713f49a7099786b32ba7a8081aaf0ca40f9919e0645fb255c8a7f4aa672999ab84a19b9d759ce478b7492b48a83eb9bde46e7c5ea1883d03487ba01c8a9c4c798a765b18b311115d02911dbaa5566190006ba40f5ee86bc22eda4ca3d0e8fee49b1a61c4057d95cf797c30a7e06d1012c1af3622629de1765d3bd928df0cb9cc7e30299c5148f782af4871556a0ec4358019ef6a434ea3e0292e97c714fbdb3ab14837257947eb7adc9c1d682123a016432e1eea5afd039bfbade397a9360b674832d2c55d521820c0cbe68bdfbba6eab8189aeeec781362fb289883d2a2fe87e287b8d940ad6a4136b7b388b38b0913f2fba42dd079cac04a071636b7e5bca67b44860cdd9e5f9cd77f07e524e9491addac1c6a66dedf5a4f814fa54eb9586bfcb1a6d4a1a166b1074d28a9915167ac4cf279e8d22555df57cfba8bde251483d9b2aef08a180ff74edcbc1bc2219f01fef23d77fcdc1d41ebe683ec96a75a4784945335736770f63a5f000da542958558b5ee375c1c16a109d488d8b17daf2450f35e0ae08fecc139bf8d5f51f1d9a1cd738ac3bb1e91a3bcdbf79c6bcc9a09eb11bc97a7062fc4e4e1c2e796241dc42481d3dc89b31d2337e8cf727c43dd393bb738710ef7ff96521dd92be410f295c765a823e1984e63c534d5f040753715edee4c3f0c78cd468eb9322ae8d5aa92b88bb172082cd08148a8d208d21dac81f0cc516d08f9c0b7097d91bf73badf049b62085328e347e20cd6ac26c64be5271f4761a16ce90ec9c58b2b71c998404e1411f1a1c5c6a6fcbf260eb3e325d1f70132b5f41a279b082712005347fc7d8a6a960ac1ffefb33de83cd6bc704eedd8ee937487635b696975a7156473937d7c301579c4e531170a6d109d50185693d9dbea24781f391fdc1baca492f00867d362797392af50da481552b86f323bd297b6a0cdce20287f0ee6119be14905ec55851768ef95d50130965c6877ee8d91e1fe19fdbef7c80ef7f93968a0d717c354f071bc8cde4d69c84a6e876a261e620a0f7c959da0c638b32d58325b13ddc9fbf566e1f411edc9b38a2bd031a7225551c4bc596958b1c22d5ecfabd2c09448417ba8568938a1cd02068d4ae3e0821dc96247ca6b704a0af99acbe5ec66b28b7c461da48743ccf387771a15eaca6392341dc4657d5c4c986b0648e712ec50f22e3d68b272dd9c34b63aec5686daa5a0f9bd259138b6d967cfa368c04c48657b2de2133b4c47147877e080d5588b09ab0b19d947b6554aaf43601b1c7384707f3091331a0583abc41bf448283eaa4bb001a44836de63e66eef64b04d82ad32c4369bdca012df554097e493e77e1b26acd103b564b6e8134012aec9cdc52eea80955a76d1beb2cb87782157adeadf2ae6c6a4b49c031d6769be9b42e6f85c8c5a6d61947f931c321b45dc34822c8523408c77bfe32048719537361fe6a1c9a8f3467cf5529dd597e19285304c716f9144debdfbeeb16ed742fa17440e02cdae4816699faab22cec162054df5d6ceb6394cadadf5d60abfe5c1dbb3790e4a98bcd9a84f6d4aa8e5934d80b40d8da632ce6640ceb070ee6034947a094337c013075c1a1267a95c820b7eb5f2aaaf20736f09502faa043cecc39f2ce7ebc0a14f846e38fbd514b935d2a46dbeb778223f20694985d27273a9be7e1be3c7dc9b8af87c58d35f4cf6559f48d27cc7eb1c050c76d85edd69995ea3b2e54868556758014ea18e18c11db61c56436ca2ac66260635d927a72cd707ff5e533704477bf9f578848196e311369842846588febd3a229d0b4fc04a5848d98ca55c3996e34d2154efe73a63f052da1ceb72bcd844dad8a4a4546cc6f94b2029b4e2c8a65d2b50673668e7abce6f054d50145b744b8103592bcb4804b446e1b7f4910843f5cba5a34e5b17309eb287c39bb98f6c220024e7582367d3e5e83737ef64944437c9d462c94f61c754a887ae4e5f1d2d64497d2b7fe8e885af00e8e8ad2d998b921a654616866e492a32742f319efef91df3f2e3d2697a4a12b107ad94da1d64ee6c67f0e9cf5aadae3eef52a22ebe342199cbcad564cd11685e0678ea3c91bcb67278ae4a6ce5664e39e86c3233cbdaf812516aa824754f6493cd5559848a71275b35f503ac84ccec4fd172b09f9ac40543a54059eed72f77eaa8d56645986ec8767e78c2df76f33e549b561b977fc5daec7436735a46956077b661fd05dfa124fc30165d5a14d9215e75c3134cae2a7a8fa490dad2fa745003c2d74d83ed13db927f4dc5cfd856c758b39915ccfb695c915c3ec5f3257ec38a0ddfa1401c3527ca271c856f2b00fc4f44416f7a387aae1e88ca212d81a6b4ca1e61c1ed2809e41e78ad8fb170ba1e0b138f061fde62eb7cce2eb8ae434b37fd4eb78b85990e7f6d21b32b4cf9dc57fd9b46fdbaaaf25139315a99419cfca963b19c3fc2923c041bf43ccc6147c3f9736a162a20152ee40effd6a3a29523d77dcb14a70b4ab512bfd11980e30bfd77304eec045d50b5923e22def0c83439e4d0326d9a20e53c43797dcbf17014f80ebc2b66fa6045a8b402b7fb182b43bb8ed6d569568732723b0f7807ac79bb676f35221258fb1283bf7c275b2872f2c625b7e1211b381454ce044a3e8a634488ece71e6fc58b84668aa744302b8a061b5674cdad160c2d9ef600385998c9f002fde9c829a6be84fd27b8cdb8f328064210918f28189e0dba18535d978efa8a8157cd5a477db7e3c909a54ae886008a65ebdc3eb3f06b89ca21ac3981d064fa15f01b1ce801a2c515af3298c4fd5979e6a651cec9ca50476773a755f96478397dda65db9fc32b2166dec033bb46fbad0edfd03f3c543e144c15dbdca9b83f2c3f0d5357cab1180472c7264317b319ad50dbd476b8f6545d86e5e399cf6177461141ce2e438db3100a0bdf957266c9758f7039817141bab0b3ea234c317554a1b30081eeaa6ccf3406a2a3e38d0376d2c50ff03e770be90cc3bb1c05ae9ab546e21d5f1cad5a4df5b53684789e534f2983bdf41bf9244d9594e889a2eef8a64789b0e327d3b48a06229ff0e48d669cabd64b7d0aeaeb4990571e275c3026a75106083b32dd1f33511877c7bf78fa415243d59474044bad21c773e39bf48619a7bec8b55b951b79f097cac697860b20c09bacde7a5e8054774db8da54742c32264f62246ad1945be13f1f7c856810e9205fa8dd797fbd4def035107f85ea309c1565f0ee1fc1e312d0bf753aed6a8b7704d8a1b2e88703511e6ec48c17ad33cac96aced306c8c08dbfc12c242d6fa52c4e51faf4cd3b331f57544f371fdfeff6c2d5abd7a38ef1abeef3a003aaa7ad6d4dbca80cde878cee6c46429d86c64c73671093e9567cc807f9f3cd9dc501878051166220c2d90915ef8e5eb46c0c07befd7a63cb38f5e9b4a8f32483d998b67fba733e7888c6297359fd32791beda81f7e8cb5d8ee05124b646db4ebee1e477c86bbbdc8d9f2151d99b8e6f0f23250649faadbe7ed2642505d7c89919bc10000000000000000060e171e262f",
+ "result": "valid",
+ "flags": [
+ "ValidSignature"
+ ]
+ },
+ {
+ "tcId": 4,
+ "comment": "longest context",
+ "msg": "48656c6c6f20776f726c64",
+ "ctx": "414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141",
+ "sig": "88b645448a1c81f55c81631d057b1ca1fa8bb42af19f1c2dd2bf12594f23b86e17e383aefec687503d0077658497fcc508c8f7b9b6ece29777cd6625c4accd38e27cc4822ffb61fef18380362d29ec040773c9a2ce8b6dd7a1dfa233b76774ea41c766915afa7954f5e24f992d1dba4862802bf775d70c422100717a0e4d9ef9e6d217588cc6b9e1199aaa4d89e78ec1c7ba567c645538e4e6cb7cbaed4dc0663ca36fa036ec1d4334249cc6183033459c3035b4b56f0837f15ad908e2d9560b39e13580497ea8d5e8ae5ce71ae876b5b1e1deadc205e8bec65a724eebc1534155c1f81a93fb5bc6d00df71d8eade2905942a4d6234ce72bec2eeec3edfb7da4a6cc67af12c616bc63dbc16ff1467f02fa0c99a4b135b6a71e37222982f91cb466ea920fea4a729ed09d763e4dfb1bad062ace603c65f952e2df88c6ed63fb344d353265f21aa0e5548676c5d4dc24ff7f1ab1aa91ee19e9d0e72599c85f51fbdbd4f7d21a35ca87ceb19cc9d28df071538f34382fe278bc512f534cbc1f747a4497bc5827de2aa7b672bcf44988611c2e8e8ff88ec64e4ea101d47c88672b1794c1af23ae4317b6b5fd2923ebb7c25239d9efd86489fe8177f6f27de7e80833a344c3b907300c73ce9f9cb2a39296c59d70e180f14261a51814ca7c8117e33f800c126df8c92de498ba9a443b480c9f6c23d26e73b0299eae2a1223756132e3999cdcbdd436a9fcd5073c3e6212ca0dd3e734e355567bd26776526c15dd1b2c2d09d8604da0c0cb38dbf5fc4615d9d5a5ad217690308e34f549981656be6b144de153b9a428a314a19549688d57c8bb4543f12424622e1971c3b26772b3e74743d668c9008debf1ddd942ede5206ead676f249b93a324d60bcda8be119a61f9bec64253ceea1fc95ca5235ba41ff8814f83698bc3188ab802f2a6f33b25412a729635b7e530536bb90972750ec905ec1336e613112ced0a3e68427a2888b4135f8eebe4d4a9cb104627ddc182f319bf0586b82a9edbbc17c11abab38f2add065fceb1d419259597e4ba91ec5d15502f3253bbeb75917b2fdab1c8457af97ec864263d8dc501e9ac754f59cde0373efd9b18463a27eff11199afae22711c18172e077a0feb457b08ae8e3bc6614a2603e95eba9eb230dbf48c5173c1893268fad24e31a5bd323d5b224c0a9fa5fce2afd61178390fdce163b4ffa1d8aafb248ddce727070677310cfb36695b8846c4a32a9973c88ba0e17a1c26d62f716858200752970ed6490eff966201c9ed9cf223ce714eac732d52e0f63365c3b2789bf8a09642475407da12fa19394c55919af3a02d31e26f4270d71eeccc5c5373ae35d1fd9a07d500623b1827c4674287083cecb466f584e31ec933bde9c83c57e8a90a141eaf4c456688f8ca1353e64ebc7cce779241df3e34e7353cdd3af446812c4448383efe1613e5f1f6e9c08c0d5971e7ec28874d7865e3bd4cb1fca0f7ca1fc499c718a8ede6f91a8232991ccd78f918ada16271e84c6b8b679a8d5ab5f7a07ebc82b01f58de7a92753a028679ca244a72b13eb5ed2910da55a998c1f427d2403d33862b05292b1c0bec902b51f4efa0264e6295318c6a44befc85e00ca887350ad86ef9fc45a4a01322522f74b7ad63abc6c08da9118319d84c0b2164c9300feb1f2ce80de5a79918bae083397d42a9f415a40f0347d25c82723d62b1fe52d02a90be1cd7cfb5c1732d644db047eb48b50ff38ca74929edda7385cea85a07c798cf773d4d4e29efb70125307582752001d8f3a4ecde8db26964d34f5563a6683d4939d237ff6a68361f0d2e863bdd15c39637e83efb2b75902220434a273b3ccca148267aae092d8a2b0aca3ff1b352cd6b331bb63ea3e69cce2c86174c8b2e0d061a35b067f2fe7d9999e2c1c07f07b1e98246af36403b2a2bdf48c7e4397b3045303dd8e3af1138389b0967fcd146124fcc97fa524e10afb0ddc1294b7543f77d0dbf0bd845b7f9c36dd91222ac30f89d59d3d048949a456b43338cb1ff1b8392b083fb6fd71797cb21ed52b94377c9c69d90111a30612e65aba8e85fcd95fe53b49f18952380c1a9d9347d21e9a00633bb119481d7292ffd25ec5d4dd842ba2c775757f1a5d26025e4156f3db85741bfcf60f5efd580bea6fc617ebeaa78baf88a0db57b13bb5dbabb9cfd6c8a56b635ecbb1fba800a0cb30a6c241096f6df1f04bd44b3b99a93545c6cbe6986e5260384824875a4ea2ec84e6574fb6f08103c4da71c6689cba16cd28e8626233bafb4edb9ea07bd02676351d57261586832ad67b87ad61a59b7e7b8519e85ccde56722a6cd2a7649afd5034f98f1b9c1cfb7d320f491dc90002bca428a88cd063a3b30ef09fcbc5d6a4ecc6887e0b05b4179c0bd4d8f4791c5cc6a801b4c54e6568469b22b52638a5a514e550df53aaa1ae83fc9999658f86ee16661e301626fe77b064bf94b00fea4b8dd0237906fdfc6cc5294e526528675dbead67c7a4de642af3d9311cd8f2ad66002bcbb35668da0b8f2f02feb11b1b89c264cb5a088de45093cb72c4e6d54ecb5f1ba5ceeb2b95c023b412ab52e77338bc3859369fbb6996a35842b578a3d844d1facc6e7ff7bf31959fb16680cec82534792913dc2aace4143f412b09fd09aea82ae48f2d16323a8abae6527967058e62311f3458ec0f999a3ecc087501b40a0bd25f6fa6d126775bf261d0f3c4d428dc78c6b594bda8426342728ae4035e8527e24e01ec3ab9193dd2a72c84524aaa685bd3ace318dab3be7d89eef18a887c772242895ad9d555c444c670f2641c462295ec0620eacf3ba75b8fe914f1be38dfd9d12b501e09f931556c8798e1a40806c67833fbd2fd40227e3854e6af14a7b9b300fdee969e84c76b9a142b23de64c27ccdab63394c6d39e66315ba1a376282e8f7580ed60eddf9ce0724c57aadc7a8ee5b491605ddcd4c4949cfd6cdc0abbaee10238d57b5dff3b38d3607e8780d7bed5f52f524ea06a94ba7e2ed980aa132fce04004670d520215f715e2ffcae2ce336af653a754e53de4ac26feb591e923a6a5cb9aa97e71f52d0f4698f02eeafa894faf56121d380e24d2d82dbd5687e162ac7e93c6d97029660485d5db8c886480c6339df8d7724201a80dc54cb9637767522e50e5ce696ae29a04fb5b4b6740bfda56a9b80b507bada2aca4264f0de6493e6a7f631394838aeea1eddcc9142fe31558b4756f4f2745f31b58c2c1dc1b2550cb5bdea478872ab91393048a908673106690c8afad8096bd928e32c965bdcc3a7cddc9411cc36faff3d9d4e7a5afad0d0c5d3de867b990490edd8497f3a03ecd131e7424d5b0d29543b3cc7ddb6a1522372b11de1649046ce787f6fc8219b0a3bb508f1d6ec2981066dae16fd127df52cb9055a139d7a68f0f4bbca77e7ca8ff6902a4d87a59671da1b867840fa0e07d8e3667253a41525ed18c679c74cc2fb1b7b00ea98090eb6f2a24da3885efcf6fa31c66732614083d114e7a2b0478184bd801fb36e79f670eaffedb9a3b56d7648009c6e4c33da1f9888b54ec108d21c68fdea0bc60af17b6958479f91ca9685d9704553d2126c3cd240deaf5a0aa8bfca0e37899af660fa9fb5aba33ed1a5ea5e388015b6cfcaae014e933969623a66060f5d396d3bd0793ea79bf9189ba24a36c1b79dff7bef60f921f27d2a46874b282d5ab9839722b495fd6b0ff494f3410e0988006f8b4bced46f7d0f41678097c4f8d5b690055d47c37a887e0fdb1ef45d90be23f59d637f27bc13f25750b83c005e68ce669fe15e47f33b4bb989f043fdadaf7c11dd0e652542d5103ae73d41ef574dd82f0a1144508076276023c91adde4b126772ef620b6450bf5b25fd29dbe3a529014b47243328e309ff4245a8aa667408ba5b4255879ba6bfd4f57cfed9219f88c7656838afeb58aba3d86157a4d1385e7a29d4db695702566f424f3b84f9464a1de1e5ead4683b38f672cbcab96b2c23e796107ff5bae2f63418fd3ab622868312cb1aa45911ebe5ad6ceec0d9138f1e10410758f024f1b641dc099e5bcc83fad7d21d503af50f7ee12da5ed1883689d8dd0edebf6085d90380f5b55af179ddab5df7673c24a253bc3d199d41a0e860477eb1055ab7883528c9602ac748dc1de5cb18d191db75f81eea0db9949ac34cc284643b2f84b5b3cb13369a5ae40a4b59a4462783c66df5c84d123fb6e171ec2f7801622b5efd6dddf28dce5ae844db98e07a24295ec20159448e2fcbafac66c004f6f9a1c29ddef7d500d83e783443f192c79205efebf0c104f56c59c59ce7e1906c6c35b78417f1d9faf94aea8e9c77d84f1e021b40423688dad22c209c9615f0f09557ccced493c06f4b1a4bb841adcb50070eee4d40ce61eaadab7294051682318d6fccfde090f447303426949dc93f2aa1b78c70e68e7409969e74aac563748827a232cb8c277a3a71d53d8ad9044e78ee4dacdfd8f31d9def44a9cf36f48f019f7013a2c622d19505236d18b3ac6ec5eec629b801783979f9bad8ee2c363268689c037194bd8cdc3b4db694e443328ea40122235f7809d403910667d99324899ee1b5f8890d65ae93d5a899fa9d5ddf6324a99bcbfc3f1688ae4000000000000000000000000000000000000000000000000000004090b131a1d",
+ "result": "valid",
+ "flags": [
+ "ValidSignature"
+ ]
+ },
+ {
+ "tcId": 5,
+ "comment": "context too long",
+ "msg": "48656c6c6f20776f726c64",
+ "ctx": "41414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141",
+ "sig": "d75d495e0aff760275e801ab0c6ed1ac7f180c51b112122fc0fcf303a999261efd3473bb1e46c7298a2d49b2b11934301145799e58cd91cb24f052e90b7bdc1cf590b6736abe772f211d8deef50fafab63033bd04411534c233de584ea1bb0a73d6cda890c1f0206891d55e9b1aa3352c0365dc56449356732e74b599ce33724ffef2a97897ada2a37cfe178a3ee47f8002fd2e02873afd935890f1e31043a7d17aea570285b94024c7fd8ab135e515799e1b2816d4131e3c5a5e1199eeee82f292cdf3a1c290838db1c46baaa2dc75c379342016b06ef1768cd30989bf5297ebd57adb6d6e0b4edbc685a2258ad3393c555bedf933c566f0f848960ab6c2036b7a1eb971a4519898e2b25d8a9fe0aaba7620e580d1c1a6cd6826b70c155b4135831986126613c2a78cc4ca93d900b56f77db9c7214d46420ebe9be0995f9615a73f74b66a4ad1d5570e07f2f9a690750852426f1ed0e61c3c7467ef8af0301b4e4caf01b7eb96f8ffdae739cae1ccbb39631520709e70494c36f9e15610eee5b479eaca35028c1f7ae1da78e4e9bb03dc8f228687f414c4d3ef427fc25ce44c1a06a8437e12974478d84bc566f752a0ea08101ae60c49facda27481d52038fefe5eba5db3dab643bcd7b00b8f9237937bba76df5adb3139a605bf52ef93c2e9a56631b0f86e7be961e0b1e42e8ea4401be99af9b45b01104f5b879b81ce07ac4732eb5c937e7a017c430eefd4cc8baeaf57eab48042f3fbb2a290628873702a9196cc8fa793466e8d381f28f5c050deaeaced44889520af258b897e5427c3deb74760e9557fbaaa80d721f21792a5e8c97e536ad3319f58d2f1089a82e35aa77101aa8e8e8b249a608cffb921987e16dfb2a34ba8590f0c9c2a6c879c59fce2ddf8b2d9747136a81749698b7ba4f5d56f12718dd7c9e296fd2fc52a0a33c9bc7fa5632cbb8c73bf0f4ef427c28aa7e57ad5c069d4b68095c539b1f16623aedaa1f30d43897380cbd1d8b9f6699a38c7dbea893457937aca16aacab67db5bb60195dfa1c0cf02e3d368854ce2191b59b05c6005a1fa09b275966035ff68e91f3c820d8f3473748557904206ab6af36a343ef93e3e121f9490e8770f0b2a703b932b16d4ea19629b7c2b26bf2ca7a07ec6fea8cfd4db85d185d39731b0f3df6cb07d152cd960640facf1c3856cf5b47937644ff9ae17f2037bc7b2a31619273d012afa35b331f78cfb50d23efeab8525be11e313cfd9ce731696a558cce05a68fff8c55bd103af1b6b1b13c8bfe9bfb9d0e86da12b5d9d5385829490a89bdf4e4cbae80be22ffb624ef729917d849c572c44e35ec5cd8354d770bffa5b031ee1f2a76b077b241767f384092a21b016b5687752f23199f0a09e5fd701090fa9c289ea50d26bd3a8676f49b29ba54785b3d20431cfeb519ccbbc0141266a77e7d5bf4bf3299497c8b1d1b40c2f00cfcb29c3a99876a43076a89a13cc58b5af1d72f87e1171d2b6ec9fe4fd318e95590cee63f1a2a6a2090ba3eea95061222db4c8b7cbffc10b450bdae10c0f82fc6861cbd24b9e4d18e4a477f7491586ae23f7ff10e1963a874e0ec97779cb33b4d3262c504cc59bf2c518b7a6de0744297fdbafd8be05bcda2b2e8fc98808594e2a204bb72aa9a425c493ec3433ef5af84208c7c47105a7ba7b936f189a64002a0bf07aaa16b449f79b32e7bf238fe72ab2bdb3e3b2a64c6f325e8486318c50bd905d23afd2988cc92ec26078b2fe9e6fdc5e27fca279c5ad535a70e66b5a55efffa1583b8011b084bbb9b028d2154f2aeac02ca66ec8fba4cec93feea0291e0017c8ec14e49c0cc2e5eac9276f64ffff107dfdda08baa8aa43df97c6adb792e7b781d2edf79763b9656794f0910fc0c17c45cad7f7173401da1f7fb9697b571fa6bb23fb687b71dffd21092e78966ff61fd385f0a236c93aa2d550305e183eca91d284f161d5d2a18824e7148c2c615e939fc4299e84b686e3577f16e8489ec0cd1ed80e8edceef398d007957b571d6e1680e641fa1cda305f993b92ee77f5dfa2e2b4bacecebaee0085c1c87762554c76c5db6d9515647ed615b42366c05d77bd0c7cc37da56a52374f1c4a01ffdbb50a05956f5a5c9082b1de4bf9e7abc3bf8f6bbf983a49108ece5f68ad07b3f309757e26e9bee76ea44223210422ad192f1d1102cbdd0047f07146be860860c28fbf5aa9b401b96cedb9097d9c95fa71524a5827fd562d600655e7ad3e4c592c67faf8a71dae5094e4beb188197ea635cb8d9b25f91f5df2e192b55d991dfcb7d696129e956e13e5518cb7f126b5d0cc9e87c5ed00c2a15eb0d343f283f658001f1addef1043ec46885099278477de6d329506659fe29f7d192feb93a39d3dc8d06913d4b7b621c300d8c01efbc37740d15d6c8f2087c2db3a2f6dff819e8b2af5f5ec52718c970df9e5694e7390cbf7999d5c739845f2ca98d5a4789887f0a6648134c518172ff62b6e85852dedf351d3c5a2727c7e0a9460d595df70961730ebd283519668cedd430621b9af7e04a54058dd6c04770262a75455f7c5f477a4f339ab6d4293a02eee565e3c7ac464db588a64d0bfe1e1b9f3f1977ddeb57e20449153da8881db0565a37be1506f551b8d0490353b799dcdf3003c4ee378dc16d76592310135c3879c2d05e69ba1f9aeb58c6187945617691e5872a0f322506408d5434818cde200e60fb6f40aaea77b94e4c30ee295e8e49b26ddc69c54b5f12bae4186b2e7e886585f0cd14b6475fb37a217ae79f87ae3303d67968f3ce82a40c6590b6cb7a6f764c1f6f69642f67459fa1f53f04eb73142351f0249f4970d3828ed7cc6f7cbd74fdcff388b98ca3a9747d1b70de11694a5e8fe1bb81f37445c6b53933b47a1102818ce623f914be67f51da77f8d666d6d77162aa323c5673749bbb01555d3d204de2c4053989348fd2cf61e185ec8a453d91b09d08a10ef3762a630c53adec121af51958cedba5f82b8b0ea755e74197a61a09c7350547767c2ece07dca5737a97b885bb1dfcc9030838acb4c356224af7672ef9cc0435b404be37f74ed3f042d00f05be35781e977abbbd46e594831c07b3ee45c0e170f2040e543743503262a59c9880c1603c79f316587cde475d6236279a194986db710216f1169a6c7b42e987a9ed7b4fb4212b8bb25bee469ec96d0af41a2e794ab54ba72326069cacf2f5e49b2eeba2ed0177c2ac71816d9f6e2c893fb54369d901e6716d2d04fea85c809cdd9d2fc4cdca6ebcb10d810f764f1792f4a557652da371a3ad6f039d14bd9f5235c8b9c5b5a48333c798ec000fe44ad6c9e7c9e5f57d406e5e8ee8154574b7c76a2f7521947c54a67ec44807622aad566df4d463b3bc0ddafd0fc017f1392cdcfee32e96ea8cdc42cb6e4587cc72d03ac789070c210a1278abcf286e23225ebbdb5bdf917938047e9ec980434ea6566d3aea655ca8a1ea9651d2f0c30169c29cb73a975bf69510e1b6ef8db72e3bb7892e2991488627f716fb7b5ff194757de8a2479a4497f6da76a421b988534b78f8571b4d7c3a2493c2b7b8b02a07eb43fb2fb1d203b02bab2125e7ce41db5b1ce0bc2c7f0706837715223ddb0dd2ba58a98db96e79fa28b1ca14be60058b2ff7b15ae2cdfd38f1d63b77ecd0de4c6e0342b6535724231e797bb717111dc0f0714c40e786a55a2dadaf853bc3cfa324063147802dc2a3bd6a881d3072fb8addf1f8607a7b4d4dc8386c40593ee6e5651c90786077128c9f6ea10aff3fff1e524b3ac1ae1cfb2cc6f659f70c718a821b25e31d7393eb5f5b95c06f0958770cd1b3ca5a6b882aa5c3bc0e300560426c4194b00e4dff3d300c8a47f6c5139bade447b1357eee0164414d75379ea6f696bf15e7a47c31cb47fa4b5608eb0593ce58b61199955e243a8b12cf26e21e05390c2a61b562de5d70f0113f1adc3f3a4d2de7fd5994f6360a3566128104a886e27b349671087c348a101e6f6ed673699962c96f699fbd3aa37a95517a6c99d83c69c16aab974d144b3dae33c9fb850b20ed6153a212ab940d63fb546154a0a377ac16eaa58e97e1a1a5bb4c9e845ed098755bed89abe251e8898f3aa9fe22ecf8b780f32e741b59e4c56a6db067aae97db9cedefb39fe580af8f218bb13bebd51ccdff133fda9d696bffef58f0a46013a31ec1a75918ab5d8e9cbd6a79421ebaea74007240a6ee379f1fedd904e8af829a2dc92ced035f60e8831c73bd1070ad4d5068ec3b2d58069adc6166231ccde5a49a779340c52032cc9434fa479270216037807f37ad0875bcc509ff183c9c518ac22ab527e01eb5dfeeca74c78a400d1ebd2e0fdc1ec19acce8e53352b8ce154e2f671e930cffa1a3a388739f73824eb085ad54aac583dc0d2624e07da1e0c32f61dcb83e632d260fe9c453cb957ee54d1437b1c1c1c6f919916146fd4c91d7ce0e25ee7209fce21c7a6f77abb91dbe9c6d9e3993897965f1cc2fac0e4acb768eaafdaec0c1b1f6e16517be4a7b946f422e61896eb4a368297dd222b8a2f0ef0f80a9cdf168e5e13ef7eb974bc73768655352271e4c38eca8ac5210a4724e5ea0c0e18aa2cd101f216872cadefb05133062c9ee39567a868dacb2c1c43e4e5d6aadf4000000000000000000000000000000000000050810161f25",
+ "result": "invalid",
+ "flags": [
+ "InvalidContext"
+ ]
+ },
+ {
+ "tcId": 6,
+ "comment": "short signature",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f930000000000000000000000000510131821",
+ "result": "invalid",
+ "flags": [
+ "IncorrectSignatureLength"
+ ]
+ },
+ {
+ "tcId": 7,
+ "comment": "long signature",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b00",
+ "result": "invalid",
+ "flags": [
+ "IncorrectSignatureLength"
+ ]
+ },
+ {
+ "tcId": 8,
+ "comment": "signature with a bit flip in c_tilde",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "68da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b",
+ "result": "invalid",
+ "flags": [
+ "ModifiedSignature"
+ ]
+ },
+ {
+ "tcId": 9,
+ "comment": "signature with a bit flip in z[0]",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b279c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b",
+ "result": "invalid",
+ "flags": [
+ "ModifiedSignature"
+ ]
+ },
+ {
+ "tcId": 10,
+ "comment": "signature with a bit flip in z[1]",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5794e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b",
+ "result": "invalid",
+ "flags": [
+ "ModifiedSignature"
+ ]
+ },
+ {
+ "tcId": 11,
+ "comment": "signature with a bit flip in z[2]",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55013efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b",
+ "result": "invalid",
+ "flags": [
+ "ModifiedSignature"
+ ]
+ },
+ {
+ "tcId": 12,
+ "comment": "signature with a bit flip in z[3]",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c076547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b",
+ "result": "invalid",
+ "flags": [
+ "ModifiedSignature"
+ ]
+ },
+ {
+ "tcId": 13,
+ "comment": "signature with a bit flip in z[4]",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d602331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b",
+ "result": "invalid",
+ "flags": [
+ "ModifiedSignature"
+ ]
+ },
+ {
+ "tcId": 14,
+ "comment": "signature with a bit flip in hints",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3d3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b",
+ "result": "invalid",
+ "flags": [
+ "ModifiedSignature"
+ ]
+ },
+ {
+ "tcId": 15,
+ "comment": "signature with a bit flip in the last byte",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212a",
+ "result": "invalid",
+ "flags": [
+ "ModifiedSignature"
+ ]
+ },
+ {
+ "tcId": 16,
+ "comment": "signature with hints in reverse order",
+ "msg": "0100000000000000000000000000000000000000000000000000000000000000",
+ "sig": "0d0d1a7af2d4eff6d4af7435a634d28ec5d23595fe7a72cf76d30f1fe16620c64862e4aad54fb78f8ea752b1e43e4e5884d7226840beb36a76f6a9b1b7d50b0faf7b8463f57c66240e06a22f5f3de4fe35c1bc6b5e42ecb1c0758069223e02f42efdbbbfbc87b4c0736141a70e6dee41bed27fcfdcb94f4213a0f99a02beba309a93d343cc932a6fd67fb90d6de7a81101a678e6d47d8b1c8bd67fe386dca360be789555196e2ff8704c175ab60a8bf3c9f3bbae1ee5a128f67467d21fe8a62e5f8ad8127b8d7eb37e43abc963521e79d0f1ed57fa341f743246fe69d97afc9a13824c79f7f3dedd286f3de739158a0900c99d9c8e5603df109c25d993f634582c832a79c7bd8cbf3ba07fc4d9e9ca8c1157434515538285417e6424209173c6dafe54c37e4424de0f25454b1713fdc3e72d01a2acbeab4d7f60d17dcd073c60b0ad5252cfa137c138448c931498f61fdf8f449225b07e7e0fafafb1f274fe5cbaaa136e62362877f643c7c94946075e8928ec47c04ae54d2085f7f2b1ef0e46dfb31b9a19135b6cc9da876dace6f61c2766b463b24c0aac5068714e348dea399986c4e8b8bdb16768e7ab81e9ea13e435f97e35d268bb679071d5b99d0d2f1526833e8624b6e4ff1ba3f5af2b23bce93dc7c2c4370cfbe698a3297005c9fde7af66bce7c9ef68337b04d7681e303a824e00acdae2ee3eb8c3e7507e46d67a4cfcfa9473bfa6334f2170911bf2ea75a3618cac939d11d6a778101e033cad958aecd89feabfa19dc6dc73584917834ed6552966f7bec4546ab24c643db25722b3ba412de04e9195898388d9ce04cdd9343da69ac9b3d3155620dde4052e9e30529904f25dd6233bafd4493b66844c8fa5d831377dc3ff8829114000799801d46586dc2d2059f6bcaa43b899e089b4f3a5ed4e6a7f1df5b8d42fda456a70e10b2ae14630f27e4c7257f5df23ad032c1edde44073585c04c1231e085591771cb64aaf62febedb33df56bc62f4d126cf8be4332ce4965e6e67d0be7871d81dab963c576ad7123bbff510f282bf66c0c1ea04aaa05a7a4d410d0e7b6ed22025dcb6ceac78f377306e973973adcee776ecacaa560dc8008799b306d5e617b2f51159b1e5fe5daf40f8f488f077cc55bbefbe8f5a61c28ae2b1493272dc6a4e34854f73f74c3442d9c302f96b6e721e2956ee0bcdb9999ff36d74b8d4ef036afbdaea5f977da2b94d0aa9136abd6dc26348873090cfe3d4bdda4d962f9382576bbccf8ba227af4ca8e017f65b469d2e3d35132fac40cdf03bf8f6beee66fe9214e1bf684e0aae75e4141d9daa1c77ef409f56424b01acc7ffda11cb9bf64a9aa71b484b49b9ee82dd8178dd4adc91d8d176f83d2cc7516d2195917fc246ebdc0dba4cb5a54ac6169bacbcd79adb72d593fcc3fa289f1e4bffb4612ba7a3318e607b0b27733cc70a2e2b4099056731ecda3212d1719a6902cdd6a05bd70d389da1dd0d0b4f6c4968676fe33c6e32d791c85b16cc9f4289bdd09acadd9f902d9a91f1559bd40eb6b73da7a623048140f73454e4ccb4ad65038109f6eba9fa01b0a3fe1af228e2c4134be136db2b029879e101aa8ab264e554818450734eb5a900497d906e20d36eb3848b092c778054c5ecee767c00185ddea39160e4513be858bfe5c7c7febf97ee8e2b2fb477bfb10c11f3b756c0da1d87e3121ab4454016b36fcd8f6d2633c73d4528221974b3f21ed3d464d47bacaadbb4647320bf0bcde38b0a75b6c3aac8b72d3c2c179417d05858ae4bd72d9c16713f7c116dda3ff8164710d4d14964b33b00b268007f8cde2eacea5108fed77d7bff70273f351b4e160d28d02576dd5f3fc3ab264c5927cddb6f9a81b852d24842bd5db5c5f2d893b2f013fc75426ef2414bad1b845ba7833c88a8ce76fe2644455be2ac1b9d1e31791693fd65f1ce35fee9d17b42b444bf1277f2646a19d76952b3fa3846c3d258f9a1835a709fc21472b0f7de7a729111e850f27f88764b3ab4baaeb6cfc644b9b6a552a61a7286b5af8011ede05845cb9359232f02ad8b3605b00cbbd83069f26b610378055c004a456c7c44606125b7b076b3f955117e03eaa514da82a9650e8b9247902c5048ff776ecaaa5ea57df61d726ff1754d4b1393933599edc49617836ecf78cc7dd45750b666b73150496e3999e339243f5644d5a3e57c6cdef2ea6c967f8bc93c27aa56ba5352666ab6dbccec415f610bcc76879793935df8e594f5c6b80dc0adcea1a1d5854f447604c54dad61cf0ac91d27ef963e6889075163e89cdec0aebf32080efcc58280b705a029511f21d311c1644623f82039e096f7e1d2518928847abd479840b65cf10d15851976e47444d64c6d4425310a3b5efe9b584ce7aa01b1f79d6e3092486f91fe75288736e852c0132561a7616f21b7713ec53f0dc53432f53eb4ad778dbe14664b55553ba342eaf94e9f76320f8f658b4c5173ab938fbbfe20c9987318c1a5104efe41419926218d30b0c97a366e60f6d1240e7f601a1b119df36cda11bdf7fb531a27979c9823efd2a75c70387f0296dc7382f570fe59568afb406a48e7c13bcb40204c92cfe13b3980410b229767a5412a7db82845da135cb6d5b2f9f5b22518b2115dfb02115fa1c4c3177a55f5c194450f0f0a518df7755b0b12eb412f5f6ee2256bb95d2985bdf1257769718de9b4f4281c3eb3407f175c0b43fee6b94b00875dca0983ae763624bc4e84e9a78f778dedef5eb078ee87a34941005c15cf42ee05cafe098005b1770ccce4e59d9d3f6eab9fb2673766d9b70ac11cd6d8b9d00809e58a046d95ff62e78a8e5525af54094c907019ec661600ec2c4ce5337371a1daad0e37f3a5cdd96a3d985456a588b5c1f61f36a33c6444c3b67c445bf95e9035cd4f77191a95a7e4c20715e55dbe43196809123499148a930321e7b2cc7809cf517fc4b2b0b49e57cde4b6aae620fe8cd0b38358685ab80061c1c126a1f3a96ab34fa957236cc6c59ed962b3bb006a1c122da796bf6bcf7dbeb64f4339c63d3a437b5898be19f6ce62024cf9b9c89964569f176fb697430e553a7c0936056183223fdab2f910047ad5e64098a44a2edbfd3007b0b5e4a5d1e6ecb44f137dae2dfc45e96f03e75c900f3f84e2653efded35a3c8b27e310dc361c0740524e52a1bbecce57d59c4913313e62bbb63c95a93512bf09228918bbf921cd5c62b8914b7142d6abf8d632c3ac44ebb6936c638d56cfaa7cee463838a921398acbbcb44bce621bfd81fab34a8ec33810eeb89fbc3cc469990089d2291e1e873b31398f2799b8d62d429b998422ed634bd7a6de8e991ba8492c001fc5df8b0014fda377cbc5ac74e40d50773ab5c2b4d08dfbf3cca590a77f4db0380fe7af822207aaf99c38676327ccd9aad50b2d4db5aedf74b1cdc50c484d455429352ef0aacedcd9792dc26c66081c28ecabc445b6f1f547a24403e18b0468c8881bdc3e82f7bcce254944271c3ba06c80555c8f3d2d051fb6007507eadf8fb991f45c0c9e9ff08838a425a96d72fc20d642c2eef45b4fa43e7b380d8b6648695c0b9440cc66665435ffd3df10fd786f7638e13706f6c5651dfe5f125158ff3d1da84cad23129e11d79d0f95548318b1c794990174daa895e4b984c175136185be534ed6bff9231c215fbf6bd297e24f528cda523d62b44aec15fdfb36281d804625db07567fdb06779325987f69f16f19df737d5f65d1abadfae70a1a4daba5a87e4ea3a09751ece2ec21dd24f719b1f57e795819689c8f2e83beff593735825a1ff8e4e4df9d031dd66120dcba07e6bfbf1b0946b3585a5eb807c1632a75353e8f7b8c4f8ff0af978afe2bec80d3b94917773564d7efd92a79cad26360b599be49bc657b132b25f459d58166110fa626cf1731be419105b4bd235176d60efa939fdd8dc213c695674bca27f161da4514f646f33557aca06189698f2953674ee73be89e3fc4c014877c6bec370ca1fe446686200a94ded3382c4f4bc58cdc12c354a486463959cb91c2ea0ae965f912364c5d98acd40ee312178b479b540875fb2a0164b7134564bf7fabf59add993b08a904452152031a784cbd36e19a47d4c9371e7774d3433fecb5d072d059b01ebd3279ceeba80b356e3628874008d801ed74717c70a93411603f1faa3924414665a95c475ac42de8d616de8be5c00fb90e5ad13079e54d1c7000905b62742ed70555ec406b49cd4aa6ea68342aa7763530b180e4f790475eefe1094426b7de9e0163a4990ea3494909c6c6de6b7462d70c8f2dca3152d81c93a8c184b0c54da7fb604f835df34506731774e6b8f2361586ccc17f35c8e21795ccb68a5cd73355c98a17c9ae35ed22f6c0a36c4da30af96ce7347375144a80dd851fda4971f20e9d6d18878d74803b577af4fa8f34c05b380acbc5282eb63f9345e4dc1f9f0cf8808a204ec789ed31ac9f009790d5c9b7d744ee3b29d911014c12b53ff691fce0ae5d53dfe1c7a367e694fcd2f688d46758ec308f3f9736701dd825153df883c0dc539c9dc3dc7dc9a9a35f453c306fc57faf76451bef45889e4ab0abd6d4acfc7967937e7e080f8f3935d47342219fbd3a27e1913f2eecc972e2c11000000000000000000000000000000000000000000000003080b131920",
+ "result": "invalid",
+ "flags": [
+ "InvalidHintsEncoding"
+ ]
+ },
+ {
+ "tcId": 17,
+ "comment": "signature with too many hints (causing a buffer overflow)",
+ "msg": "0100000000000000000000000000000000000000000000000000000000000000",
+ "sig": "0d0d1a7af2d4eff6d4af7435a634d28ec5d23595fe7a72cf76d30f1fe16620c64862e4aad54fb78f8ea752b1e43e4e5884d7226840beb36a76f6a9b1b7d50b0faf7b8463f57c66240e06a22f5f3de4fe35c1bc6b5e42ecb1c0758069223e02f42efdbbbfbc87b4c0736141a70e6dee41bed27fcfdcb94f4213a0f99a02beba309a93d343cc932a6fd67fb90d6de7a81101a678e6d47d8b1c8bd67fe386dca360be789555196e2ff8704c175ab60a8bf3c9f3bbae1ee5a128f67467d21fe8a62e5f8ad8127b8d7eb37e43abc963521e79d0f1ed57fa341f743246fe69d97afc9a13824c79f7f3dedd286f3de739158a0900c99d9c8e5603df109c25d993f634582c832a79c7bd8cbf3ba07fc4d9e9ca8c1157434515538285417e6424209173c6dafe54c37e4424de0f25454b1713fdc3e72d01a2acbeab4d7f60d17dcd073c60b0ad5252cfa137c138448c931498f61fdf8f449225b07e7e0fafafb1f274fe5cbaaa136e62362877f643c7c94946075e8928ec47c04ae54d2085f7f2b1ef0e46dfb31b9a19135b6cc9da876dace6f61c2766b463b24c0aac5068714e348dea399986c4e8b8bdb16768e7ab81e9ea13e435f97e35d268bb679071d5b99d0d2f1526833e8624b6e4ff1ba3f5af2b23bce93dc7c2c4370cfbe698a3297005c9fde7af66bce7c9ef68337b04d7681e303a824e00acdae2ee3eb8c3e7507e46d67a4cfcfa9473bfa6334f2170911bf2ea75a3618cac939d11d6a778101e033cad958aecd89feabfa19dc6dc73584917834ed6552966f7bec4546ab24c643db25722b3ba412de04e9195898388d9ce04cdd9343da69ac9b3d3155620dde4052e9e30529904f25dd6233bafd4493b66844c8fa5d831377dc3ff8829114000799801d46586dc2d2059f6bcaa43b899e089b4f3a5ed4e6a7f1df5b8d42fda456a70e10b2ae14630f27e4c7257f5df23ad032c1edde44073585c04c1231e085591771cb64aaf62febedb33df56bc62f4d126cf8be4332ce4965e6e67d0be7871d81dab963c576ad7123bbff510f282bf66c0c1ea04aaa05a7a4d410d0e7b6ed22025dcb6ceac78f377306e973973adcee776ecacaa560dc8008799b306d5e617b2f51159b1e5fe5daf40f8f488f077cc55bbefbe8f5a61c28ae2b1493272dc6a4e34854f73f74c3442d9c302f96b6e721e2956ee0bcdb9999ff36d74b8d4ef036afbdaea5f977da2b94d0aa9136abd6dc26348873090cfe3d4bdda4d962f9382576bbccf8ba227af4ca8e017f65b469d2e3d35132fac40cdf03bf8f6beee66fe9214e1bf684e0aae75e4141d9daa1c77ef409f56424b01acc7ffda11cb9bf64a9aa71b484b49b9ee82dd8178dd4adc91d8d176f83d2cc7516d2195917fc246ebdc0dba4cb5a54ac6169bacbcd79adb72d593fcc3fa289f1e4bffb4612ba7a3318e607b0b27733cc70a2e2b4099056731ecda3212d1719a6902cdd6a05bd70d389da1dd0d0b4f6c4968676fe33c6e32d791c85b16cc9f4289bdd09acadd9f902d9a91f1559bd40eb6b73da7a623048140f73454e4ccb4ad65038109f6eba9fa01b0a3fe1af228e2c4134be136db2b029879e101aa8ab264e554818450734eb5a900497d906e20d36eb3848b092c778054c5ecee767c00185ddea39160e4513be858bfe5c7c7febf97ee8e2b2fb477bfb10c11f3b756c0da1d87e3121ab4454016b36fcd8f6d2633c73d4528221974b3f21ed3d464d47bacaadbb4647320bf0bcde38b0a75b6c3aac8b72d3c2c179417d05858ae4bd72d9c16713f7c116dda3ff8164710d4d14964b33b00b268007f8cde2eacea5108fed77d7bff70273f351b4e160d28d02576dd5f3fc3ab264c5927cddb6f9a81b852d24842bd5db5c5f2d893b2f013fc75426ef2414bad1b845ba7833c88a8ce76fe2644455be2ac1b9d1e31791693fd65f1ce35fee9d17b42b444bf1277f2646a19d76952b3fa3846c3d258f9a1835a709fc21472b0f7de7a729111e850f27f88764b3ab4baaeb6cfc644b9b6a552a61a7286b5af8011ede05845cb9359232f02ad8b3605b00cbbd83069f26b610378055c004a456c7c44606125b7b076b3f955117e03eaa514da82a9650e8b9247902c5048ff776ecaaa5ea57df61d726ff1754d4b1393933599edc49617836ecf78cc7dd45750b666b73150496e3999e339243f5644d5a3e57c6cdef2ea6c967f8bc93c27aa56ba5352666ab6dbccec415f610bcc76879793935df8e594f5c6b80dc0adcea1a1d5854f447604c54dad61cf0ac91d27ef963e6889075163e89cdec0aebf32080efcc58280b705a029511f21d311c1644623f82039e096f7e1d2518928847abd479840b65cf10d15851976e47444d64c6d4425310a3b5efe9b584ce7aa01b1f79d6e3092486f91fe75288736e852c0132561a7616f21b7713ec53f0dc53432f53eb4ad778dbe14664b55553ba342eaf94e9f76320f8f658b4c5173ab938fbbfe20c9987318c1a5104efe41419926218d30b0c97a366e60f6d1240e7f601a1b119df36cda11bdf7fb531a27979c9823efd2a75c70387f0296dc7382f570fe59568afb406a48e7c13bcb40204c92cfe13b3980410b229767a5412a7db82845da135cb6d5b2f9f5b22518b2115dfb02115fa1c4c3177a55f5c194450f0f0a518df7755b0b12eb412f5f6ee2256bb95d2985bdf1257769718de9b4f4281c3eb3407f175c0b43fee6b94b00875dca0983ae763624bc4e84e9a78f778dedef5eb078ee87a34941005c15cf42ee05cafe098005b1770ccce4e59d9d3f6eab9fb2673766d9b70ac11cd6d8b9d00809e58a046d95ff62e78a8e5525af54094c907019ec661600ec2c4ce5337371a1daad0e37f3a5cdd96a3d985456a588b5c1f61f36a33c6444c3b67c445bf95e9035cd4f77191a95a7e4c20715e55dbe43196809123499148a930321e7b2cc7809cf517fc4b2b0b49e57cde4b6aae620fe8cd0b38358685ab80061c1c126a1f3a96ab34fa957236cc6c59ed962b3bb006a1c122da796bf6bcf7dbeb64f4339c63d3a437b5898be19f6ce62024cf9b9c89964569f176fb697430e553a7c0936056183223fdab2f910047ad5e64098a44a2edbfd3007b0b5e4a5d1e6ecb44f137dae2dfc45e96f03e75c900f3f84e2653efded35a3c8b27e310dc361c0740524e52a1bbecce57d59c4913313e62bbb63c95a93512bf09228918bbf921cd5c62b8914b7142d6abf8d632c3ac44ebb6936c638d56cfaa7cee463838a921398acbbcb44bce621bfd81fab34a8ec33810eeb89fbc3cc469990089d2291e1e873b31398f2799b8d62d429b998422ed634bd7a6de8e991ba8492c001fc5df8b0014fda377cbc5ac74e40d50773ab5c2b4d08dfbf3cca590a77f4db0380fe7af822207aaf99c38676327ccd9aad50b2d4db5aedf74b1cdc50c484d455429352ef0aacedcd9792dc26c66081c28ecabc445b6f1f547a24403e18b0468c8881bdc3e82f7bcce254944271c3ba06c80555c8f3d2d051fb6007507eadf8fb991f45c0c9e9ff08838a425a96d72fc20d642c2eef45b4fa43e7b380d8b6648695c0b9440cc66665435ffd3df10fd786f7638e13706f6c5651dfe5f125158ff3d1da84cad23129e11d79d0f95548318b1c794990174daa895e4b984c175136185be534ed6bff9231c215fbf6bd297e24f528cda523d62b44aec15fdfb36281d804625db07567fdb06779325987f69f16f19df737d5f65d1abadfae70a1a4daba5a87e4ea3a09751ece2ec21dd24f719b1f57e795819689c8f2e83beff593735825a1ff8e4e4df9d031dd66120dcba07e6bfbf1b0946b3585a5eb807c1632a75353e8f7b8c4f8ff0af978afe2bec80d3b94917773564d7efd92a79cad26360b599be49bc657b132b25f459d58166110fa626cf1731be419105b4bd235176d60efa939fdd8dc213c695674bca27f161da4514f646f33557aca06189698f2953674ee73be89e3fc4c014877c6bec370ca1fe446686200a94ded3382c4f4bc58cdc12c354a486463959cb91c2ea0ae965f912364c5d98acd40ee312178b479b540875fb2a0164b7134564bf7fabf59add993b08a904452152031a784cbd36e19a47d4c9371e7774d3433fecb5d072d059b01ebd3279ceeba80b356e3628874008d801ed74717c70a93411603f1faa3924414665a95c475ac42de8d616de8be5c00fb90e5ad13079e54d1c7000905b62742ed70555ec406b49cd4aa6ea68342aa7763530b180e4f790475eefe1094426b7de9e0163a4990ea3494909c6c6de6b7462d70c8f2dca3152d81c93a8c184b0c54da7fb604f835df34506731774e6b8f2361586ccc17f35c8e21795ccb68a5cd73355c98a17c9ae35ed22f6c0a36c4da30af96ce7347375144a80dd851fda4971f20e9d6d18878d74803b577af4fa8f34c05b380acbc5282eb63f9345e4dc1f9f0cf8808a204ec789ed31ac9f009790d5c9b7d744ee3b29d911014c12b53ff691fce0ae5d53dfe1c7a367e694fcd2f688d46758ec308f3f9736701dd825153df883c0dc539c9dc3dc7dc9a9a35f453c306fc57faf76451bef45889e4ab0a4a6dbd377996c7cf80e0e7192234475d93f3f813197ea2d3fb112c2e97cceef2000000000000000000000000000000000000000000000003080b1319ff",
+ "result": "invalid",
+ "flags": [
+ "InvalidHintsEncoding"
+ ]
+ },
+ {
+ "tcId": 18,
+ "comment": "signature with non-zero padding in hints",
+ "msg": "0100000000000000000000000000000000000000000000000000000000000000",
+ "sig": "0d0d1a7af2d4eff6d4af7435a634d28ec5d23595fe7a72cf76d30f1fe16620c64862e4aad54fb78f8ea752b1e43e4e5884d7226840beb36a76f6a9b1b7d50b0faf7b8463f57c66240e06a22f5f3de4fe35c1bc6b5e42ecb1c0758069223e02f42efdbbbfbc87b4c0736141a70e6dee41bed27fcfdcb94f4213a0f99a02beba309a93d343cc932a6fd67fb90d6de7a81101a678e6d47d8b1c8bd67fe386dca360be789555196e2ff8704c175ab60a8bf3c9f3bbae1ee5a128f67467d21fe8a62e5f8ad8127b8d7eb37e43abc963521e79d0f1ed57fa341f743246fe69d97afc9a13824c79f7f3dedd286f3de739158a0900c99d9c8e5603df109c25d993f634582c832a79c7bd8cbf3ba07fc4d9e9ca8c1157434515538285417e6424209173c6dafe54c37e4424de0f25454b1713fdc3e72d01a2acbeab4d7f60d17dcd073c60b0ad5252cfa137c138448c931498f61fdf8f449225b07e7e0fafafb1f274fe5cbaaa136e62362877f643c7c94946075e8928ec47c04ae54d2085f7f2b1ef0e46dfb31b9a19135b6cc9da876dace6f61c2766b463b24c0aac5068714e348dea399986c4e8b8bdb16768e7ab81e9ea13e435f97e35d268bb679071d5b99d0d2f1526833e8624b6e4ff1ba3f5af2b23bce93dc7c2c4370cfbe698a3297005c9fde7af66bce7c9ef68337b04d7681e303a824e00acdae2ee3eb8c3e7507e46d67a4cfcfa9473bfa6334f2170911bf2ea75a3618cac939d11d6a778101e033cad958aecd89feabfa19dc6dc73584917834ed6552966f7bec4546ab24c643db25722b3ba412de04e9195898388d9ce04cdd9343da69ac9b3d3155620dde4052e9e30529904f25dd6233bafd4493b66844c8fa5d831377dc3ff8829114000799801d46586dc2d2059f6bcaa43b899e089b4f3a5ed4e6a7f1df5b8d42fda456a70e10b2ae14630f27e4c7257f5df23ad032c1edde44073585c04c1231e085591771cb64aaf62febedb33df56bc62f4d126cf8be4332ce4965e6e67d0be7871d81dab963c576ad7123bbff510f282bf66c0c1ea04aaa05a7a4d410d0e7b6ed22025dcb6ceac78f377306e973973adcee776ecacaa560dc8008799b306d5e617b2f51159b1e5fe5daf40f8f488f077cc55bbefbe8f5a61c28ae2b1493272dc6a4e34854f73f74c3442d9c302f96b6e721e2956ee0bcdb9999ff36d74b8d4ef036afbdaea5f977da2b94d0aa9136abd6dc26348873090cfe3d4bdda4d962f9382576bbccf8ba227af4ca8e017f65b469d2e3d35132fac40cdf03bf8f6beee66fe9214e1bf684e0aae75e4141d9daa1c77ef409f56424b01acc7ffda11cb9bf64a9aa71b484b49b9ee82dd8178dd4adc91d8d176f83d2cc7516d2195917fc246ebdc0dba4cb5a54ac6169bacbcd79adb72d593fcc3fa289f1e4bffb4612ba7a3318e607b0b27733cc70a2e2b4099056731ecda3212d1719a6902cdd6a05bd70d389da1dd0d0b4f6c4968676fe33c6e32d791c85b16cc9f4289bdd09acadd9f902d9a91f1559bd40eb6b73da7a623048140f73454e4ccb4ad65038109f6eba9fa01b0a3fe1af228e2c4134be136db2b029879e101aa8ab264e554818450734eb5a900497d906e20d36eb3848b092c778054c5ecee767c00185ddea39160e4513be858bfe5c7c7febf97ee8e2b2fb477bfb10c11f3b756c0da1d87e3121ab4454016b36fcd8f6d2633c73d4528221974b3f21ed3d464d47bacaadbb4647320bf0bcde38b0a75b6c3aac8b72d3c2c179417d05858ae4bd72d9c16713f7c116dda3ff8164710d4d14964b33b00b268007f8cde2eacea5108fed77d7bff70273f351b4e160d28d02576dd5f3fc3ab264c5927cddb6f9a81b852d24842bd5db5c5f2d893b2f013fc75426ef2414bad1b845ba7833c88a8ce76fe2644455be2ac1b9d1e31791693fd65f1ce35fee9d17b42b444bf1277f2646a19d76952b3fa3846c3d258f9a1835a709fc21472b0f7de7a729111e850f27f88764b3ab4baaeb6cfc644b9b6a552a61a7286b5af8011ede05845cb9359232f02ad8b3605b00cbbd83069f26b610378055c004a456c7c44606125b7b076b3f955117e03eaa514da82a9650e8b9247902c5048ff776ecaaa5ea57df61d726ff1754d4b1393933599edc49617836ecf78cc7dd45750b666b73150496e3999e339243f5644d5a3e57c6cdef2ea6c967f8bc93c27aa56ba5352666ab6dbccec415f610bcc76879793935df8e594f5c6b80dc0adcea1a1d5854f447604c54dad61cf0ac91d27ef963e6889075163e89cdec0aebf32080efcc58280b705a029511f21d311c1644623f82039e096f7e1d2518928847abd479840b65cf10d15851976e47444d64c6d4425310a3b5efe9b584ce7aa01b1f79d6e3092486f91fe75288736e852c0132561a7616f21b7713ec53f0dc53432f53eb4ad778dbe14664b55553ba342eaf94e9f76320f8f658b4c5173ab938fbbfe20c9987318c1a5104efe41419926218d30b0c97a366e60f6d1240e7f601a1b119df36cda11bdf7fb531a27979c9823efd2a75c70387f0296dc7382f570fe59568afb406a48e7c13bcb40204c92cfe13b3980410b229767a5412a7db82845da135cb6d5b2f9f5b22518b2115dfb02115fa1c4c3177a55f5c194450f0f0a518df7755b0b12eb412f5f6ee2256bb95d2985bdf1257769718de9b4f4281c3eb3407f175c0b43fee6b94b00875dca0983ae763624bc4e84e9a78f778dedef5eb078ee87a34941005c15cf42ee05cafe098005b1770ccce4e59d9d3f6eab9fb2673766d9b70ac11cd6d8b9d00809e58a046d95ff62e78a8e5525af54094c907019ec661600ec2c4ce5337371a1daad0e37f3a5cdd96a3d985456a588b5c1f61f36a33c6444c3b67c445bf95e9035cd4f77191a95a7e4c20715e55dbe43196809123499148a930321e7b2cc7809cf517fc4b2b0b49e57cde4b6aae620fe8cd0b38358685ab80061c1c126a1f3a96ab34fa957236cc6c59ed962b3bb006a1c122da796bf6bcf7dbeb64f4339c63d3a437b5898be19f6ce62024cf9b9c89964569f176fb697430e553a7c0936056183223fdab2f910047ad5e64098a44a2edbfd3007b0b5e4a5d1e6ecb44f137dae2dfc45e96f03e75c900f3f84e2653efded35a3c8b27e310dc361c0740524e52a1bbecce57d59c4913313e62bbb63c95a93512bf09228918bbf921cd5c62b8914b7142d6abf8d632c3ac44ebb6936c638d56cfaa7cee463838a921398acbbcb44bce621bfd81fab34a8ec33810eeb89fbc3cc469990089d2291e1e873b31398f2799b8d62d429b998422ed634bd7a6de8e991ba8492c001fc5df8b0014fda377cbc5ac74e40d50773ab5c2b4d08dfbf3cca590a77f4db0380fe7af822207aaf99c38676327ccd9aad50b2d4db5aedf74b1cdc50c484d455429352ef0aacedcd9792dc26c66081c28ecabc445b6f1f547a24403e18b0468c8881bdc3e82f7bcce254944271c3ba06c80555c8f3d2d051fb6007507eadf8fb991f45c0c9e9ff08838a425a96d72fc20d642c2eef45b4fa43e7b380d8b6648695c0b9440cc66665435ffd3df10fd786f7638e13706f6c5651dfe5f125158ff3d1da84cad23129e11d79d0f95548318b1c794990174daa895e4b984c175136185be534ed6bff9231c215fbf6bd297e24f528cda523d62b44aec15fdfb36281d804625db07567fdb06779325987f69f16f19df737d5f65d1abadfae70a1a4daba5a87e4ea3a09751ece2ec21dd24f719b1f57e795819689c8f2e83beff593735825a1ff8e4e4df9d031dd66120dcba07e6bfbf1b0946b3585a5eb807c1632a75353e8f7b8c4f8ff0af978afe2bec80d3b94917773564d7efd92a79cad26360b599be49bc657b132b25f459d58166110fa626cf1731be419105b4bd235176d60efa939fdd8dc213c695674bca27f161da4514f646f33557aca06189698f2953674ee73be89e3fc4c014877c6bec370ca1fe446686200a94ded3382c4f4bc58cdc12c354a486463959cb91c2ea0ae965f912364c5d98acd40ee312178b479b540875fb2a0164b7134564bf7fabf59add993b08a904452152031a784cbd36e19a47d4c9371e7774d3433fecb5d072d059b01ebd3279ceeba80b356e3628874008d801ed74717c70a93411603f1faa3924414665a95c475ac42de8d616de8be5c00fb90e5ad13079e54d1c7000905b62742ed70555ec406b49cd4aa6ea68342aa7763530b180e4f790475eefe1094426b7de9e0163a4990ea3494909c6c6de6b7462d70c8f2dca3152d81c93a8c184b0c54da7fb604f835df34506731774e6b8f2361586ccc17f35c8e21795ccb68a5cd73355c98a17c9ae35ed22f6c0a36c4da30af96ce7347375144a80dd851fda4971f20e9d6d18878d74803b577af4fa8f34c05b380acbc5282eb63f9345e4dc1f9f0cf8808a204ec789ed31ac9f009790d5c9b7d744ee3b29d911014c12b53ff691fce0ae5d53dfe1c7a367e694fcd2f688d46758ec308f3f9736701dd825153df883c0dc539c9dc3dc7dc9a9a35f453c306fc57faf76451bef45889e4ab0a4a6dbd377996c7cf80e0e7192234475d93f3f813197ea2d3fb112c2e97cceef22a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a03080b131920",
+ "result": "invalid",
+ "flags": [
+ "InvalidHintsEncoding"
+ ]
+ },
+ {
+ "tcId": 19,
+ "comment": "signature with a repeated hint",
+ "msg": "0100000000000000000000000000000000000000000000000000000000000000",
+ "sig": "0d0d1a7af2d4eff6d4af7435a634d28ec5d23595fe7a72cf76d30f1fe16620c64862e4aad54fb78f8ea752b1e43e4e5884d7226840beb36a76f6a9b1b7d50b0faf7b8463f57c66240e06a22f5f3de4fe35c1bc6b5e42ecb1c0758069223e02f42efdbbbfbc87b4c0736141a70e6dee41bed27fcfdcb94f4213a0f99a02beba309a93d343cc932a6fd67fb90d6de7a81101a678e6d47d8b1c8bd67fe386dca360be789555196e2ff8704c175ab60a8bf3c9f3bbae1ee5a128f67467d21fe8a62e5f8ad8127b8d7eb37e43abc963521e79d0f1ed57fa341f743246fe69d97afc9a13824c79f7f3dedd286f3de739158a0900c99d9c8e5603df109c25d993f634582c832a79c7bd8cbf3ba07fc4d9e9ca8c1157434515538285417e6424209173c6dafe54c37e4424de0f25454b1713fdc3e72d01a2acbeab4d7f60d17dcd073c60b0ad5252cfa137c138448c931498f61fdf8f449225b07e7e0fafafb1f274fe5cbaaa136e62362877f643c7c94946075e8928ec47c04ae54d2085f7f2b1ef0e46dfb31b9a19135b6cc9da876dace6f61c2766b463b24c0aac5068714e348dea399986c4e8b8bdb16768e7ab81e9ea13e435f97e35d268bb679071d5b99d0d2f1526833e8624b6e4ff1ba3f5af2b23bce93dc7c2c4370cfbe698a3297005c9fde7af66bce7c9ef68337b04d7681e303a824e00acdae2ee3eb8c3e7507e46d67a4cfcfa9473bfa6334f2170911bf2ea75a3618cac939d11d6a778101e033cad958aecd89feabfa19dc6dc73584917834ed6552966f7bec4546ab24c643db25722b3ba412de04e9195898388d9ce04cdd9343da69ac9b3d3155620dde4052e9e30529904f25dd6233bafd4493b66844c8fa5d831377dc3ff8829114000799801d46586dc2d2059f6bcaa43b899e089b4f3a5ed4e6a7f1df5b8d42fda456a70e10b2ae14630f27e4c7257f5df23ad032c1edde44073585c04c1231e085591771cb64aaf62febedb33df56bc62f4d126cf8be4332ce4965e6e67d0be7871d81dab963c576ad7123bbff510f282bf66c0c1ea04aaa05a7a4d410d0e7b6ed22025dcb6ceac78f377306e973973adcee776ecacaa560dc8008799b306d5e617b2f51159b1e5fe5daf40f8f488f077cc55bbefbe8f5a61c28ae2b1493272dc6a4e34854f73f74c3442d9c302f96b6e721e2956ee0bcdb9999ff36d74b8d4ef036afbdaea5f977da2b94d0aa9136abd6dc26348873090cfe3d4bdda4d962f9382576bbccf8ba227af4ca8e017f65b469d2e3d35132fac40cdf03bf8f6beee66fe9214e1bf684e0aae75e4141d9daa1c77ef409f56424b01acc7ffda11cb9bf64a9aa71b484b49b9ee82dd8178dd4adc91d8d176f83d2cc7516d2195917fc246ebdc0dba4cb5a54ac6169bacbcd79adb72d593fcc3fa289f1e4bffb4612ba7a3318e607b0b27733cc70a2e2b4099056731ecda3212d1719a6902cdd6a05bd70d389da1dd0d0b4f6c4968676fe33c6e32d791c85b16cc9f4289bdd09acadd9f902d9a91f1559bd40eb6b73da7a623048140f73454e4ccb4ad65038109f6eba9fa01b0a3fe1af228e2c4134be136db2b029879e101aa8ab264e554818450734eb5a900497d906e20d36eb3848b092c778054c5ecee767c00185ddea39160e4513be858bfe5c7c7febf97ee8e2b2fb477bfb10c11f3b756c0da1d87e3121ab4454016b36fcd8f6d2633c73d4528221974b3f21ed3d464d47bacaadbb4647320bf0bcde38b0a75b6c3aac8b72d3c2c179417d05858ae4bd72d9c16713f7c116dda3ff8164710d4d14964b33b00b268007f8cde2eacea5108fed77d7bff70273f351b4e160d28d02576dd5f3fc3ab264c5927cddb6f9a81b852d24842bd5db5c5f2d893b2f013fc75426ef2414bad1b845ba7833c88a8ce76fe2644455be2ac1b9d1e31791693fd65f1ce35fee9d17b42b444bf1277f2646a19d76952b3fa3846c3d258f9a1835a709fc21472b0f7de7a729111e850f27f88764b3ab4baaeb6cfc644b9b6a552a61a7286b5af8011ede05845cb9359232f02ad8b3605b00cbbd83069f26b610378055c004a456c7c44606125b7b076b3f955117e03eaa514da82a9650e8b9247902c5048ff776ecaaa5ea57df61d726ff1754d4b1393933599edc49617836ecf78cc7dd45750b666b73150496e3999e339243f5644d5a3e57c6cdef2ea6c967f8bc93c27aa56ba5352666ab6dbccec415f610bcc76879793935df8e594f5c6b80dc0adcea1a1d5854f447604c54dad61cf0ac91d27ef963e6889075163e89cdec0aebf32080efcc58280b705a029511f21d311c1644623f82039e096f7e1d2518928847abd479840b65cf10d15851976e47444d64c6d4425310a3b5efe9b584ce7aa01b1f79d6e3092486f91fe75288736e852c0132561a7616f21b7713ec53f0dc53432f53eb4ad778dbe14664b55553ba342eaf94e9f76320f8f658b4c5173ab938fbbfe20c9987318c1a5104efe41419926218d30b0c97a366e60f6d1240e7f601a1b119df36cda11bdf7fb531a27979c9823efd2a75c70387f0296dc7382f570fe59568afb406a48e7c13bcb40204c92cfe13b3980410b229767a5412a7db82845da135cb6d5b2f9f5b22518b2115dfb02115fa1c4c3177a55f5c194450f0f0a518df7755b0b12eb412f5f6ee2256bb95d2985bdf1257769718de9b4f4281c3eb3407f175c0b43fee6b94b00875dca0983ae763624bc4e84e9a78f778dedef5eb078ee87a34941005c15cf42ee05cafe098005b1770ccce4e59d9d3f6eab9fb2673766d9b70ac11cd6d8b9d00809e58a046d95ff62e78a8e5525af54094c907019ec661600ec2c4ce5337371a1daad0e37f3a5cdd96a3d985456a588b5c1f61f36a33c6444c3b67c445bf95e9035cd4f77191a95a7e4c20715e55dbe43196809123499148a930321e7b2cc7809cf517fc4b2b0b49e57cde4b6aae620fe8cd0b38358685ab80061c1c126a1f3a96ab34fa957236cc6c59ed962b3bb006a1c122da796bf6bcf7dbeb64f4339c63d3a437b5898be19f6ce62024cf9b9c89964569f176fb697430e553a7c0936056183223fdab2f910047ad5e64098a44a2edbfd3007b0b5e4a5d1e6ecb44f137dae2dfc45e96f03e75c900f3f84e2653efded35a3c8b27e310dc361c0740524e52a1bbecce57d59c4913313e62bbb63c95a93512bf09228918bbf921cd5c62b8914b7142d6abf8d632c3ac44ebb6936c638d56cfaa7cee463838a921398acbbcb44bce621bfd81fab34a8ec33810eeb89fbc3cc469990089d2291e1e873b31398f2799b8d62d429b998422ed634bd7a6de8e991ba8492c001fc5df8b0014fda377cbc5ac74e40d50773ab5c2b4d08dfbf3cca590a77f4db0380fe7af822207aaf99c38676327ccd9aad50b2d4db5aedf74b1cdc50c484d455429352ef0aacedcd9792dc26c66081c28ecabc445b6f1f547a24403e18b0468c8881bdc3e82f7bcce254944271c3ba06c80555c8f3d2d051fb6007507eadf8fb991f45c0c9e9ff08838a425a96d72fc20d642c2eef45b4fa43e7b380d8b6648695c0b9440cc66665435ffd3df10fd786f7638e13706f6c5651dfe5f125158ff3d1da84cad23129e11d79d0f95548318b1c794990174daa895e4b984c175136185be534ed6bff9231c215fbf6bd297e24f528cda523d62b44aec15fdfb36281d804625db07567fdb06779325987f69f16f19df737d5f65d1abadfae70a1a4daba5a87e4ea3a09751ece2ec21dd24f719b1f57e795819689c8f2e83beff593735825a1ff8e4e4df9d031dd66120dcba07e6bfbf1b0946b3585a5eb807c1632a75353e8f7b8c4f8ff0af978afe2bec80d3b94917773564d7efd92a79cad26360b599be49bc657b132b25f459d58166110fa626cf1731be419105b4bd235176d60efa939fdd8dc213c695674bca27f161da4514f646f33557aca06189698f2953674ee73be89e3fc4c014877c6bec370ca1fe446686200a94ded3382c4f4bc58cdc12c354a486463959cb91c2ea0ae965f912364c5d98acd40ee312178b479b540875fb2a0164b7134564bf7fabf59add993b08a904452152031a784cbd36e19a47d4c9371e7774d3433fecb5d072d059b01ebd3279ceeba80b356e3628874008d801ed74717c70a93411603f1faa3924414665a95c475ac42de8d616de8be5c00fb90e5ad13079e54d1c7000905b62742ed70555ec406b49cd4aa6ea68342aa7763530b180e4f790475eefe1094426b7de9e0163a4990ea3494909c6c6de6b7462d70c8f2dca3152d81c93a8c184b0c54da7fb604f835df34506731774e6b8f2361586ccc17f35c8e21795ccb68a5cd73355c98a17c9ae35ed22f6c0a36c4da30af96ce7347375144a80dd851fda4971f20e9d6d18878d74803b577af4fa8f34c05b380acbc5282eb63f9345e4dc1f9f0cf8808a204ec789ed31ac9f009790d5c9b7d744ee3b29d911014c12b53ff691fce0ae5d53dfe1c7a367e694fcd2f688d46758ec308f3f9736701dd825153df883c0dc539c9dc3dc7dc9a9a35f453c306fc57faf76451bef45889e4ab0a4a4a6dbd377996c7cf80e0e7192234475d93f3f813197ea2d3fb112c2e97cceef20000000000000000000000000000000000000000000004090c141a21",
+ "result": "invalid",
+ "flags": [
+ "InvalidHintsEncoding"
+ ]
+ },
+ {
+ "tcId": 20,
+ "comment": "signature with omega+1 hints (causing a buffer overflow)",
+ "msg": "c806000000000000000000000000000000000000000000000000000000000000",
+ "sig": "cbb10acfc660a8f47b48c09a8ad95ebdf7d5699a417096887ddd70508e82d3a49a69ee8c0a2aaa6d89ac126675f6c955ba4b8f234ffbd6fc0bdfa6bb95cafceb72c1b047fbedbbb192a571cac9398e9c19909852709697bc3def2d3583aa7874d032d6b1d36d681535833ce378a7be08b43998c887cbde0b6a8ab0948a5506d59f604ec85ae84bf72eb1d36769c5f2eca3b38ea6917edd02d28840f0cab3f110b027cd877f92e59b0328163587e4606707b39f16e5140a7156193ead8076d084aeec93268cef5b9ee0756e0069d0e9fadad1b1ef71bb49ecd95da70d3411ab40931c0c30a2c4a3a8d87de2040ac64df2202b2533c4be396f9e0e9d383f3573982cf7e05b67cf6f53d15454f48aa1825b22ad9dc9ef1ce6db827bd0059295c2409d1e5b75fe6387c795bfe22f6528825570dfd8d58fdd90e609e59de312e7ad90e1dfb1b302c90d1c71c4a5b5c0034a0c8b8a18de6fee029ccba1bffbebdf3ff82d99ccc329982a8f04f0cf7857c0826a6c7a9505da3c705f7c8913ffb099269d8e3eb679685f22450fcc969de7e743af0280d40c2861743d56bb92c992b566df7a29c375d836b38a8a6e3f89102735e51f4c65861bde29b6d692375e9e5344ec26d32ab5d1247225e7ffefc6226093289d0c6a8655d9ed7eb5a845bc6b4782d4cec07961ced24be1b829f57a05eb93b18adb5a18aa5d72cecd2c6592614868a845b6cbff9b876e544c5208b3097efadd383ce2ad971c252d67c6a9f2ed3faffbf845164de52bd195c2b2d3df673cf6d9b2690aa7e4050cfe404da6faec1fafaeb4b9064169af0d46bb30b55c80b655f0d6472ded24c802af74d014a14dad2fd88941747ee0097de87d85191584d8c4b051aec8653373ae2a1c2cc16c354a709118633f1367838e491b11213531bb0c3bf6170825cdd94d44ef09de2bfba62c7373b479d64bb45141e130c9de3b0f794b40bdf3bdc0f6fbfa17cecf021586a914422e83f06debd5d02ad2bd64263abe226d43c247f42f36d2d47ed550dca03ab844048a0c96e725c249527c60b866063b9b6b4a1a51f7ced09ca394dd01b784a30ec3477bdadfea46f34d376603c4da1f07a80bac5ae436baab3592ea9f9f3b6bcefa27dab57584505dc661c24a89612d29012d3dc9432191eabe5a30ebfab94ed93fef419759ef42462edd662d3c8137d13c530b489340892a4cec72783f0c7c788a24d43c331b3a63d75951e4fd84ac251df2dd183569fc031498c0ee826debbec605ec230fc1e49eab7ebeea6767181cc3b47f1dc7dddd058c51ffe0f87e6648a5bdbca0c0686daf6bafe5d158eb7de470adf4228c24ea70d8946573117bc19c8f25f851edbdf4fb1d69500501f9ec5f1c488c781ca8041a8767dfd9275b8dda148c468104b8ac60fffae510b4b0d31c9699d8d58eb441b3d6702d153b0702d81b41cdcc1e8943d0d5147c737e85af4f014bfb2908488372ba716129d63aa66ac8c02f91d48603763fb05053abb58e299d1cc9f01bfa7222c4bb37f6c69ac41743763a0b1b416227dad58f6f292ad13b7b42987f1d95921f997bd3aabc6158fecffdb3ec953b77f37effbc754cd16c22915dea3b800692e7975d4fcfec46c4e213e53128876495bdd1e5fa1a55e21a31d9704c9b08a43fec1193bc8ad23d3047060eacb17ea591a49aba6535c1caac0bb98d73ac36d19d84e6e42a8e85601f6376d1c7e65eb0505d7948b439fe34f4abb99c4e759427bcd100521263c181297c131f22d948555ebb2b229c81e7a00bcdc3633fb9d4e7b478f92f369e3a3a9db10cbc76be2e7a2932aa610002f128145ccb01716f1aaf5bf0959c4dab108353185dfc4e77d4aaf3f4e0c69caa0a1de7a2ca9edcbaf390861c486992c3bb02aa1c9b5c6a6a22c4e49f50d5e771adab52d693e8c2bf9af298ebf64400ab408c365f1a5beda25f8e1d2d6b708c63f5f1f667061ffb735960016dc393dbe7fec2a7b46dc4911bd46b06e222f530bf997b1e31db8aacd7f80a267549c6ae8b600eee5fbbe2c764634dba1d473ce148af811a7ef2b2a42b975ff5de88819230a59b5d903296597cea937affbf552b80f845c2a388a08bd4a4002efbf48ff70dca76c101d0b74b95b758b9521d98b8974f889eec2c3d79d9ccf6ca262f736de6e3ca93a551b8d2c5fb8b73e944bd05e62503cbe7cda823547d7446a8a4616becefbc8e558a4de3d62ba91486bf4033d4491642790be60ddca75eb5a68fb36b0c6ad4e70364b077ab8fe7b305caf7c70061aa8b466020845363257badc2da8861cccc504aa0bee7c48f9ba403350d4d46529b08e41d30af6f69b7fdb6fbec8ab6ea3e4eb0dd8c7e3a77de8ab47610e7ebebd9f5015bc7b7876c5fa0b891a0fe4015827012f10260943c08f389aa67891f0af67d5e71742bd852dd1160a9df66da04827cbdf3de6a1eb8e4e24bd2b1dc680a1073807795a2e9ebea30cee0bf6479494b7f5211e233f2844a663a00155ed9482943132d9fa0c966cda5f1f64eb96e456053342027d14eb3c70062c0db2094d693fec31d06241d886b9dd9ff13584a47a7b843757a75a6e28aab82caeb3ef256c70a17a6180dd890a8e6f4c6b96711daf9f799b113d87f6bcbd56baee9dda09f6f67fc1b1e1e64fcba8497b20339540cbf7ced0e21a554c35e257ab64cf4761d12dfb457dd9bf2f5ae9701d87c8d5c367b047f378556708645684ef9e58eadb8ee3e4b97a86292bd9ad8acef3a3a9aaf0f2039be4640a953b2cd8b19fd5d469cc1328443c4c0ac481f98997f359fd561e11ed2f03f123302c8ef74c60839025e11997f82988dc3448ece0640473a1738551a4f7e68afc84c45cd92583950da4a8b5a043fac1dfb1343b0a1f706a1e5e8492467bbd1924fc3d430978bea871ef59062cd29e2ad44becc9caad78b5dc3c49e38b8b26de0d957e8e73699e5d2f5281108aa37f03b12d5bd50d904f0caf4f4dcc74adcac837ee04dd21f199fc42ab39fe6229002ac48dc4a60fc35eaa653c30bd275b4ab7d32a5e4d09533e7a3dc0e826d8c812ebadde3ec7eb3987c17ef2fb00fc1b6ac82d650f56646e9a11ab2e097e0697954f252a7a9a390559b79ec5d38da9e5b0b6f027c158643837a1d4ec93b50ba3de8296e022463c6424ab47561950e8122637dc682ddabc523780323049b1ff5949394844856b95e06307ef3362b8481ac2ede882a2e91299433d18513038cf205ffe1687e8fb011dd40864b602602fcb8391d81e05f6bfe5f09bc5055b2696f32a771321b30cb79fd0b66a2cb0a5208c4797eefbd81e27a67a6a0bb39c309a71557c78441d76b3fe7ac00956c184e9646984ffb2751f61f72382842ad62a032b8de6e2317cc2f2d193ef498a133badef5b1869d85edd1f94a4f458cf21f0b80c3f2ecde7ca19a0fc7c7f7a8986bd023a02a61ec667c0c709b1f89ea5ec07785d72a1f2169a1b5b1522d8292ef30a677662080c91fa774f28ee40aaee0f8afea96bc7d858eef054b93f3deb604c5f9929b1a5092f68a67462ae7fc60c11cf29ca950df68d4060edae6fe254160525fe2466a9b97144e8401b230560ff5b3ae53322905c8d7794d2d4d63ce55eca3c1ca0dc97df11fff1adae8d065e3943bc8b1a20ed1493569c8f730b1adf11001a3cc9cf23d5919a4725069fc58eb1f46415a57f668a2d5a584ee41dcf1423869922f78e7292a846c3bc2fb81ce36da0526967590aa548a5a291f5eb69e67391b0e257bed22095999a70b2d8c6d39f23551bb25c94584da70150dd01e1d3d5bf26809059d713368f7ff0fc3c8657c3c98871b27ef04a958e8d8ce255d831c28e8d7a72b74adb806df346cd6342ac6b4de114c08acf7b9167505aab8d6b5742c0539252ffc531046998990c727f9d914f9426bb024af1e32bac4ba5d1072e50adfdb49feaf9472f82f74459a660963e857ca46db64d945d19d6a3f667dbcb253c28ff5e79ad9ac6c9e11012db47663bf69e1be7e1f829920144d0e8bebf9557333bf94d8707b98165a2fcc7dce2460c5bb5966d57e535b234536c430b540c32bc6473f7b5994d4cc40633fe5f3ca0e6ac7d1e65c55bc15bbf643a97a346e6abb500e439a014af2592298572cd408c14050656933d4b9c74d45864ad3d48bfd0c7be151c82dd7543690e09a4c450059d703461192ee3e9823dfc6a047493302256df5e5f59b820614547ea328e78250730ea608191685ae747d323a9c60b2c470a724d1fea2f789263a8683873bb81ee692fd1c26110118bcb69cb7880437f251fa8338e4378e34434edce0defb0f0049b44572402e71dad5f56b63f774aa435ef79883339fbcdf52bb6a9463f4fefdb94d3e151552792403f6997c160727023a9ded4bb38dd34b4a54a373ca403720be4703d9fc3d1fb1b7883f58cf0d875871e6be474631ccf3e209d3d4beb5a6ae2815559b706bf583fec48ee1c0e95e66054bd7ac2479d1d773dc4e36e526ed70ebb02e74d1726fc9b5167c4496eddb822edef41994e84ae1172c1abe3b31c800c1baa04c71b4074634be600166026e1bedb081d3a632641a9e77766e579c3236741b3d4448576498c6c8f20439657eed16767a8b8d929ba3abb9c3d0181e2e3d4e606a7ba0050d1f262e67a7d0e4181f85a0b5b7bfc3c7e4fcfd080d19222b37",
+ "result": "invalid",
+ "flags": [
+ "InvalidHintsEncoding"
+ ]
+ },
+ {
+ "tcId": 21,
+ "comment": "signature that takes 1 iteration(s)",
+ "msg": "0700000000000000000000000000000000000000000000000000000000000000",
+ "sig": "424ac14fd2cf3f7eb28b104a7418909e84eff42d2f6e7c4ed3874838f8580d918a5d229f8ad72a0e093959da15f05e9942fad12ac1fe73c9de377b85a0f9d7203e6f8d3d4e83e5ac52a82b7a77c0096d92d40f2c1b7e194673faeaf16d7bf11342956d14d7bcd45f98ac9003ec86da5a1b2775d0723ba7350b81ecabc464be480d834b3965fd6554d340b9a11add210c6228f29a8932b8b6a00263777039533e1580faca62a7885372fe15b4e441a7595a13966fc05a95926fec9eed7563b1347d2b8d55e15212148e9f7e6e6b3e8dc30c6a1d213f66f574588ddf5d559438b1bfe01e851b15108baa97b64273d2e850b8ad504d2defb158e1ef3d4af5e1cbebfdf8a0e8037ba4def90bfdde7f2eadb3da96becd9e6a95e286e120871217aca6a8756f3ed7a11c2f75e1a82f9ab0234b1cc2c8178ad690e8c2798f1eb8b83178f39d7fdd09f44d7df268e7e062566a4516b1a1ceb97049df4646e8156e678c5f1fe2705b0c261db71a9932b8f41950e326a2200908c4c0bf3681384ae1501f5ddef8ab98133519452c725eb84f36814577108508809015af4d8758c23afea3815a09537477e8f6c7694a81c1d08c822843b9e67d95592eff819f6c2927e403f9962f36364ec2dbfe494049884d61695331e32abe6272d5a44961b8679879a67b142aa40729630d8d24bc69caf17774c6e2b3021b9181a8a498586a0f7d4109c5c82841454785873670dd2f60a4c278a373986333120c1b17b4297620bf72c7fc126205c1b240c6d60399b715579adfd96492e350a4145ede8d075ae544d051f58bb9991575a6ddab224c9c83a39b6fa9b49444fb0d2b8e32464c216e42d02091ff25122f85f9454f6d818034a30e6252cb0d25b572de3ab1c669709e04fbdaeffa26d0fc67d250da0864c71d74f8c08b5ad15cb95a33ca5b03d9573e83b35cc173afd97e88b9ea859861384cf8ee6338bbe5768cdf9c84cabdb8b332aaa7574ba200d496aa1d6be562f59be022d7d9cc63fe6a35100b664694b5bd1f5a610cc3d7a670f45b47befb8cf705339a8a5adec9fbb9f1fc4196fd3ad2a5ec9f3c9bd48e96bd6ac7276bb00705aee192106388f2fef2cd3c7cf00a159459314260dc49d9630d9bdfd0245db95fff41703f3236ed1bce77582dd6de015ed6d8dec0f2f2952fafc0e11479487a21c1cd61f1a9410dc730dfdf01527c6ae4072eb1591fb5f9b6117dabd9458331d9fdf582acde4b9001c6b6c6e048120cf15534db40e7b8f77fdff60b08a0ed6a802095fb76c71062dc34a612fe34f6598529c2028487457530c154d18709381cdb36b4ec697a2b921ec9056c86c5e73dd74b63f1844b1240c703c6f6373018c2daebb7beb55ec0365c76725063a3fd212ba80bc951baee1b58ceab532e58754ea44b0cf815a0624e2a0cf5dea9bfcae56b7ac74e4627a05bd8a2539ea4d25a3aceb003c8e7b750f0e8485eebc84b130a54ce8926b54cbb54b94db057f993ab426fe1a3be7a997782fab08cd704b1628b9d40af916730014d71d71d82bc09a7a17855c314b9febd079e371598103a4fc6923fa47a1979fea54c0bf7542a6e54d5cb92814c824d94753095d2fab232153f204d16aaa6acba4c72ae358eab79a8b51ef06db93cd5acb606ddf4dfbbc031f697486c284ef2627e3e65a5998f746d6ed934cedc1204c72694f6738ef0de7cf25bd147c938f3e7efd6def80c01b690ed200c21f56df02f7f31e90c0f05e61c60e2279b307664f491fac8f3315e48040ed63f6b68cd7821bd9447a8cd9d95aca3b16d721ef8e90d668636ebb4974553f41e7e9b075eee4e83e118fa74f2d7197fa135dc53146e7c194645e4f07412693320117cc3cdb1bca814e0e30fcf5590ce237e0479bf088cb0f68c2dc0b53203c7c007a4bc6361a32e3e153cbef1163eba0a3d7e5e133fb30c6f37b3f92e94abe270e7c3e8c97056bd12a1d588f919d65db51accf624e0a356d6e6e0da3c67dc298746a39b6313bb658e3451a2b1abf7efb6c1e63b83cfaeea9a17ac8f22587254227f5adb2f41f367bb9e4530c7fb93b78cbf60b7619a25f2f7a00aff9d935c294e82102eb0e96da7c3d4c87ccb896a5e5ee3ee13da3d94655a66c0c3d781a67c23bbd53cd7eea563a8d63100144ede22e3af96b69ca18d5d5be5849d27c1db28298d485e2fba3c7f68297c7f883049d73ffbb3a300c5aacc1d8a805205602e410e76fc48adb109cd47624c2822e6dcc0db0a28be5401a79659d19b8bbdf131ce04fd6278130aa2f203b9e0f52134a3dec5a97c4753da3127288ea0969fcee232837ea067e8a34b6dd4e1ecd7f37b8e956d137be78be955854a75d84a339f3e80bebe8d295ec1149bbaf115bfc84e8cce1cf994fe067dbcca2ce1c378180bbceda95444ae535a9ffe1819caac5cf95b86219e95c62581d1110daefeb4830043a7a9552de5a55f250e7f1aa5993f87647c92c27256753d6daf32da18c1cef9bd5ff5a7a8e182d071f1e75d10be89f02c861a0d05257c08c9e12f877a22c8382ec883c592a34722f1138a1e8b5ded41e970b97ba2a69c386f94b508b38a59b464dee983741e61d0096f499f3c552f43ca317ddf073e0450e800585053830681d4a8a8ecd5b86c901285c84278c06b86375a04fa7002b259cd61d5ecca426aa334659284945ea6c5adedb7d40835c6134271d641bdb19cc3617bfdd53618252b4a684a259b82982b0a13cc90ca931c4e90915d2d7a0abdee3f78764b41e3236e2ac21e138c0cbce20740cd17f34eea236720acff25161ecd4c903e33395f51d2c51583407b35a044d54caee2b66dcaba84359218c6803040b19a39c0e4ef570fad7330041e024cd194326891547985b10e505c6e6b1abdaf3fcd63c3f2f08b2d93aad41e83167d969e54b12745b328b5cfb93266afa793bf00c86270ab98e2ab44b2be16b5e522ca280cfb0a9a4f744900f0f44f6126b787274b2a36232c84b563dc3a5879c83c34cc6d644fedc3912b10e9806f944440b00883bb76d51782f928139117c7358cd38a460ff73af4d417278b7bd463da86ba11bc88cff14340a24f675905c7edacb121fd625187b90a3152115b3ce1f49432409fa629384509cf51426948c71e76da8efbde2eeb7d3f3e576f18d4fb61f90d99de2bfea2cec28468368610670890ef26e05bb108dde48095251574c20611ce68890144750c62a9792815a89ffc50ff0d76fa0f708d917f3bd9f840b11085445784d2017e54266c69f3fbef4c8fa82c0723ba58736aa8466a81b00d563dfa074a9a06016ffb04f029bc12c53585183f237d84c343a13b08b484e1625be1b0c661f697ad5097040fed2d3d46c6b1229157729b306694bcdfeb4eece5b5dfa8043a6fcd607e2f82aeda46e88f8d59f2032fa439365bfda8ac7b9e09ed8020c045757d510d5de5dd0b2520b0f74a99d8fe7b1915d82491a270d1a1c554d0c05d14a1419e71dbbe5df225fea5c49b73b84fbf079dbef25ae8861e58ab8bab6ec4ad07dc10072c5627029d4a74700193d12f439a5bdc41a284b92499b3ab0f3973529ea148053da54125c2969603fa55d3dc30170568ac9642aedcdc817b0f4b8d5d31925428afbedd21fc7f1132fc7e85284723b4f26ba1b50bd5fea2d81b12f4451f97331c6af0c82aa9d962ce034df061c32a1113990a9f320291993c9d614c42e2aadb5dc52c58daf8d22bb302e1e64b32e16394cc0c44cf93bcf811e7ad772754b6e9c2dda630449e005a0303996a69f5ad647f98908af4f857af804294d416db784c34d2d5aad7d840e135ecf6b636dd33f4ba29d0f12fe3967260013662d8bc23a34a0f8a5df93e111e8792140487eb04854bfd9bf679e1b38de028ea5fc457cbc8e2706fced55f5363425b0c2c13cbad1ef96d18f11b0fb3749a561504b8fee8cfb4ef9c948e3efaa2de6ca38fb445382af66855f3c0603ab175aca17e1b005deec73b03eb952cefcb3cd5860c40578e8a366da62a431916ee212d9e5740fbfc42f6d0e0951fd2f213a8f6f21984e01832c0dadf56b3de4833b849b7d0c9125d7b9ae5c6f245703d77c0298c9b6abd563529b3f2986ce54462f050d18dfc85a840b1633b2b0373e585f77c106d70ff711d03362af483f7812965405e586d6988318effc81e9fa918ab278e97e0d6d3932e24ac17ba537f568f8b16bdf3d45488cb34f696295f7321b63a76101ec283f0427a533544f752cc9d3c277c59997e01604192746353421884142fa23dcccb3acdac509a5688089ee919230a9e0ec2804254a153f544977a634bb13880f3241daab08d1b73bdd8fe4a187e9b4c3758eba88cdcd9fc104360b2512788f4d31a23c80b78c150af10e1a41dd279e895ae9e66ecaf2bf32786c11573a74cbbb93b82255f9ed190dafce6803f07271889828696f5f8173772a7142ab46899c609136713cf7a3f4c5e9718c84ee8bce8b4b5ba83a09e421c830eafda214c0e0b3dc28d0f1adde9b5fd9fee6a07a328807d0e983cef6383ab94c415dd1e649d9804f571581ae0c7ab2896e86a470a9eab94f2fe9e138e91ac103cd770d27af9648ef83b5254696d72d7174188bafb05114a788d9726c9d7eafb182348618cacbec6224186909c00000000000000000000000000000000000000070c12171f24",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 22,
+ "comment": "signature that takes 2 iteration(s)",
+ "msg": "0f00000000000000000000000000000000000000000000000000000000000000",
+ "sig": "46b40670bb3da2c35f9649c9cd3fe613e63335a645b948018b3cffc864412f8868192a9d81da08d1e768d0d33d4f7a609dae1e72d4408fe5f5660f7714d7d3725deabd87d32d66d041124a0921a71ea30d8758427cd8978c2014d83746c7c29ca7781125afa4ebe984a11da34692342493df2c8fbcb50c83e56c9afc3df2a5d317add757dfb4439841a8d91d596eefa656f1953e7fdfb63e29a23ca3825a1c04e09f766ca10aa6bd05b9dfd7910db1956f99326766839c4dc0f653f2dd5e3a508fe13c2f0624d3dd0c0f764c164d231cd1f73646e542d7bec86e7ea0336583e86c2811db5e28e18f34122e86a37e1de65f5d7836c35db6079bcddab304ab6cf752dac710004fc24729d760d3d9380270c5d1d777b67ac830dd52c3548bda02f0f7d0331aa6c8414fa7307237456105c3c5f8463aecbfbf4d8c7f7c3b06f940592f12928a7a018595c1972705f8798fc75e2833e95a163ad24f367cfe85545fd0e0992775be5c074ed111cbf001bd536d1ce4a0430d963728a2e25d71c3efe9c385a6841d7f4c6d293a64f83429f064f3584ae0983dfa4f90820dd229f900e41447c07db5dd2a61868438b8f4eabd475da53e8f1c7d1120e366d774bb95839f6b3ada1f704198e06b13760447768753fb449c0d53acc22845a0a4e5b047d008e08e2f65c577026863ed25e1dd7d39cd4f0a7d823f4250474866b80ae3a2d19838cf24a265bee177d20b9fe59f2015092b3362a415f05e91bdf13ccd1bf3fc901a63ef23ef74b41cd74606c687ed6fecc665ee4fdae3a305392f59f9ba7e6c4a890c56c3115a2cc760f3166ba1c4e534a69bbf738c764cb228204799afdedd6660fd4a6b7856a84e714e58247fa068f859796cc4271ae915e62d3ca3fb43bf884fb8cfc39ea89d3042e453953849efcad7852d67471d2004b4ba8937a5c508109a19519fffa989a39a6c68f1ce9268469af6baaa7e0a93362f5b87b0ca24d5151b99bdac16885d335d6bf11c2a574a734999815843121bec25ba9775593ef19f809be5b63f5fb01b29f8f0eee9f1a69f514c0f17e90d40ae9a97f6fbaf5804bd036b6ae7cbc161865580f763d9abea93625096f3730c77cd0242f387fca2fa573f2638887417bd80968e86594e1ff547ef5ef4b9b49b0524ccfdb3701a8de2f7ab2eccce22ba93bbafafcc1359c2e3652b67250ed313d6564ba245200c0107fe749c965ecaebe28c79f24955a436c41b6ebd7f321938f4dbef88e30a34e5b2a3763381d0af8bd0176feabe3d467eb985cf4ab28e465b7896b36d2aabfbbd26931fca9b76e2eb1befe51b45d640ba468488da4093fb2ec7c77ae43c785b6588ebfbf5568c1299eebf0046e28b5f1e897516edbbbe99843e551012daa0157e03d1d41daf987b73ddb361c064917b6b8b4b23c31dbfe01e56960e63cec546e5684b057ae5f904333dc33ae1b0018875cc13f39e11b247db82e43409ecf16051be7e8525c9a90b68cf491830d2c583db07a5bd95ad69af0e4327cdccb9339d96a4aa201ebb86edfbe7176cf63a409872f73107c3f4f068df79ef817efb2f0837e665c7f2fe0a56c4e392d63a1032eaee2894f3bae6df6a70a430b22e9be6e15bef3a9af5545332ea3a62c94d5a6aaa8870c303b3460b3be88fa848fb818a3e1771c329f676941a628acd948b260541ecd1701c6cab3311ed86eaf0950675808ffdadf0b97f98e9da2193258b74d589054014dabe4c501f2e0fd81fab9cba2f9c8f70be8175da44bfcf01ec6ca5ba7f1039b29e27e5bfd67970e5e561c693a1ec2023d53cb1ed32f3614cc132701dbea3ab4d99398f23eac52b3f5c5f46a110d77f0d9c660b432bc57cca8bd38b4b5dcfc619aae56d7cd686f3fd94fe419f8fc54c9ea6611b4f512504ce87216f768abafa48f3825b2f9afca3d419151d1637bda8aff5e2f9a7921421fdac429c66c6a01832c7041f74fc81c47e4172f9d95b200b1a84af4dd9b677670bbf356d590f2fc1aa70ec53ae94331b2ac0f1a8bbc7dd600cb06c76f2f340aa2c8ae102cf9c4ba7126414da52a1d8ce3504ee282a02a9564b149c041694313ea3f11d9e697ce692441b3baa25b308f42eb7f9d03ba3b5638fb96004fd0ef2de66c6a573ce2570e19e75d5c2bea7d5c656c2ad6990cd2d8feaa9eb025d80b6483e6612888ae3a66f646a61cc08534fea6f31447af5535308e81e3dbac05b488fa9dafbfb31b7fc1773fed73556e9caa5864b4871ae4d2d472385ff62a61113ed0f7584220aac571b69373f2618887392f88e4813822009fca474af81a342e1fc7be442079fe882e8bab95b147c1a196eb079c7ef718c194e5d6a5332a63f3f15cfa08453afe796dc433399c75d8e7ea603c17bf1a133fa1407dd76489c9950e501e64d09a7ce59f886b3b80af926443bd3b04e33e97adc795fb4b775c8d6507dfb7aa254d3b994e6412838a03209ed3ae2c15cbf67cf00793c7b7bd4d1e36b56aba5212c0e8c82752da39686254e5357d2eb0ad691be3feffb1b09620c2b0b2181e510b47ec2fc0257acc3b847b90c0704eaaf48742e5a50498fceaa8945180026647a7f474cada887dd657f4003080d5081c1d37d4c2c8a1ba5e8562319d741b01bec47cff4fe1625630051b12accb6c919171073ff9cdf1d138ded6ead47440bb2f99424218156fee650daff3c777168b43548da1b946bdd16dfdd099d83a7c427f97f83bab18acb2650846d39cb41e5283564232fe21394318a2340f3ed2c6c7782d27ebaa780ea81ebbd33841f834756b74d99de6a17280088ec6bdad04144794594ccca8feee1fa09903953df806291667b686c9d5f77d89700b0a29ac9c95ef647d0b4a6ee30b99bbc9392a4769f4197f4289892f926d744d8b62e067edb5af6a6590981261b7a9c3c9f2b69833251916e00ec5710514fdb29ba3c25285001ab2652de3982f7bd960b60ac2fe285525f588167305afd30f059ab723c1105e6c657b5dece838d79d4dbb2c14cc50d123166cc4a4f01d15d7f8d4ce10acef8ab06132cebbc4426762b6616ad9c8d700dc7c53a1bed753569b28f6fb38e2334e50efb6b7de233b93ac1e0b4a71c7cfbb7002d6bd2a7f91d22cd080c182b989c2045fa5719eed2aadb2b409a73ea00ca3e9ae74e7fe61b18e25a8abed293651352d50eb2a341ae24d4549c93102b5bf8d9523da6cb97d6f0fbf4b64d7b65e0ffbbdec1ac74ab2217c464936205760f4d46139bc9066fca14b65f004b9432c723c4091ee0e81f5549200aa99445635c910303e697e0a08847645a98c12aa9eb42fe38265b09fb020ee3f6fb23f2e501c3a8ce5fde7326d2e9aa2e20aa770d810c3c11d86a6ac0296b296f2a1215fd83cb369abffb3d783b9805b0f46d853c73c887038584a30a17c8bef62ed7170841c09416924f67198bb07749cbc12412185f1d5fc4021a504f1c417ed5965a864140364904d33451937d38e14e8452f7d414949e9932e552afe0b33ba1bc63baf2190d8575e90cfeea69f5d0a3182d726cec66595065cf9dc22657cceb7cbd3afec14c84e900071d9d08849bcb1e20ec70c1dd4046f914f80a41afdb3b435b75bc125cfa2e6896b288dfe947f8c3edb82113a6eb6c35bf450191ad5abc514d9eeb6ed6fe5123f7e5caea3de2f19116c85def416ef5dfb47ee08957fbd87920e9fdd418895459b74a2fc62ef11be0943cfa22fbf14cb859de45a4b60deafb70e072889344107d0fe924fc68aa9c13429350eef78caba5352566f8d80b64d016265e264a1b5f00064de79c539b0552dfd3880dd9f77903465c777cc78fd137f199030bfb292383be3caabc1b6bcfcd0dbf4b7ded13b93f91408751808216e55a2ec4d39051cff5784b0db9e4d3c38fb5093bd23b29d82cce55e77710bedea7d9f0ad6a47929faf26f8d50bb2b2f038aba8d970939f4e6fa02c3f6cecc76f3a4298f66a7976b475d787c3d2ed3496a4cd9c47f864451f140be914141546580364a64215504d36cffe6f61a08a4f1940d965f39cb442c6705e932bfdbc29b612a8abb3925c3d9bec1c9630f622b0ffc7d8ec2425022882dddfa46bee778fc94e304e9672cb9931cb4b75edb5514c2d930e0de245f15c4dd422c0fda02f6b104c0b37ea2df5c04f83d9a3f644930eb54e19b7a2a5356359d6370bd4635fc576918be8547b7aba9f11f1dbf10697c8794b06f7ca1316c0e9ece8e51aa3a6d0a77672292ea5fdd50b399175d452f18754e4f3ebc41325982e2ba3162974c30e19fd49bbacf10e3cd96254cb3f43d6ce1115650a0522ac1b14acae1a3231579589062bd63a55b1aad407c0500b420d0840e49e941a5fe6c6cc196ce45d0d16289199cf9a29130f6235a3bf9e8598e2b0213ce87fd676ab5b621a284567172fbe5fcaade672cd55d1f6a5535348472fc836be896c332919fba13652b941a35087b44deecb7121191c548e8a7161b561a6f8f7cb4beae6b7f3d194f420ae758d209abac2f36c144f067a829cbef57304ac7541f7089bbd97821312a4c074be9daf5a000137825e7a406ab564cc16fb7ecfab4babbf00b1f13f8e009481e88f55050d1d2e313e424b4f6687c7973350585b5c66f2fe698a8cc0c1021b53637dabaeb2c7e0f35154babec6f7fc00000000000000000000000c0d151a252c",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 23,
+ "comment": "signature that takes 3 iteration(s)",
+ "msg": "0100000000000000000000000000000000000000000000000000000000000000",
+ "sig": "0d0d1a7af2d4eff6d4af7435a634d28ec5d23595fe7a72cf76d30f1fe16620c64862e4aad54fb78f8ea752b1e43e4e5884d7226840beb36a76f6a9b1b7d50b0faf7b8463f57c66240e06a22f5f3de4fe35c1bc6b5e42ecb1c0758069223e02f42efdbbbfbc87b4c0736141a70e6dee41bed27fcfdcb94f4213a0f99a02beba309a93d343cc932a6fd67fb90d6de7a81101a678e6d47d8b1c8bd67fe386dca360be789555196e2ff8704c175ab60a8bf3c9f3bbae1ee5a128f67467d21fe8a62e5f8ad8127b8d7eb37e43abc963521e79d0f1ed57fa341f743246fe69d97afc9a13824c79f7f3dedd286f3de739158a0900c99d9c8e5603df109c25d993f634582c832a79c7bd8cbf3ba07fc4d9e9ca8c1157434515538285417e6424209173c6dafe54c37e4424de0f25454b1713fdc3e72d01a2acbeab4d7f60d17dcd073c60b0ad5252cfa137c138448c931498f61fdf8f449225b07e7e0fafafb1f274fe5cbaaa136e62362877f643c7c94946075e8928ec47c04ae54d2085f7f2b1ef0e46dfb31b9a19135b6cc9da876dace6f61c2766b463b24c0aac5068714e348dea399986c4e8b8bdb16768e7ab81e9ea13e435f97e35d268bb679071d5b99d0d2f1526833e8624b6e4ff1ba3f5af2b23bce93dc7c2c4370cfbe698a3297005c9fde7af66bce7c9ef68337b04d7681e303a824e00acdae2ee3eb8c3e7507e46d67a4cfcfa9473bfa6334f2170911bf2ea75a3618cac939d11d6a778101e033cad958aecd89feabfa19dc6dc73584917834ed6552966f7bec4546ab24c643db25722b3ba412de04e9195898388d9ce04cdd9343da69ac9b3d3155620dde4052e9e30529904f25dd6233bafd4493b66844c8fa5d831377dc3ff8829114000799801d46586dc2d2059f6bcaa43b899e089b4f3a5ed4e6a7f1df5b8d42fda456a70e10b2ae14630f27e4c7257f5df23ad032c1edde44073585c04c1231e085591771cb64aaf62febedb33df56bc62f4d126cf8be4332ce4965e6e67d0be7871d81dab963c576ad7123bbff510f282bf66c0c1ea04aaa05a7a4d410d0e7b6ed22025dcb6ceac78f377306e973973adcee776ecacaa560dc8008799b306d5e617b2f51159b1e5fe5daf40f8f488f077cc55bbefbe8f5a61c28ae2b1493272dc6a4e34854f73f74c3442d9c302f96b6e721e2956ee0bcdb9999ff36d74b8d4ef036afbdaea5f977da2b94d0aa9136abd6dc26348873090cfe3d4bdda4d962f9382576bbccf8ba227af4ca8e017f65b469d2e3d35132fac40cdf03bf8f6beee66fe9214e1bf684e0aae75e4141d9daa1c77ef409f56424b01acc7ffda11cb9bf64a9aa71b484b49b9ee82dd8178dd4adc91d8d176f83d2cc7516d2195917fc246ebdc0dba4cb5a54ac6169bacbcd79adb72d593fcc3fa289f1e4bffb4612ba7a3318e607b0b27733cc70a2e2b4099056731ecda3212d1719a6902cdd6a05bd70d389da1dd0d0b4f6c4968676fe33c6e32d791c85b16cc9f4289bdd09acadd9f902d9a91f1559bd40eb6b73da7a623048140f73454e4ccb4ad65038109f6eba9fa01b0a3fe1af228e2c4134be136db2b029879e101aa8ab264e554818450734eb5a900497d906e20d36eb3848b092c778054c5ecee767c00185ddea39160e4513be858bfe5c7c7febf97ee8e2b2fb477bfb10c11f3b756c0da1d87e3121ab4454016b36fcd8f6d2633c73d4528221974b3f21ed3d464d47bacaadbb4647320bf0bcde38b0a75b6c3aac8b72d3c2c179417d05858ae4bd72d9c16713f7c116dda3ff8164710d4d14964b33b00b268007f8cde2eacea5108fed77d7bff70273f351b4e160d28d02576dd5f3fc3ab264c5927cddb6f9a81b852d24842bd5db5c5f2d893b2f013fc75426ef2414bad1b845ba7833c88a8ce76fe2644455be2ac1b9d1e31791693fd65f1ce35fee9d17b42b444bf1277f2646a19d76952b3fa3846c3d258f9a1835a709fc21472b0f7de7a729111e850f27f88764b3ab4baaeb6cfc644b9b6a552a61a7286b5af8011ede05845cb9359232f02ad8b3605b00cbbd83069f26b610378055c004a456c7c44606125b7b076b3f955117e03eaa514da82a9650e8b9247902c5048ff776ecaaa5ea57df61d726ff1754d4b1393933599edc49617836ecf78cc7dd45750b666b73150496e3999e339243f5644d5a3e57c6cdef2ea6c967f8bc93c27aa56ba5352666ab6dbccec415f610bcc76879793935df8e594f5c6b80dc0adcea1a1d5854f447604c54dad61cf0ac91d27ef963e6889075163e89cdec0aebf32080efcc58280b705a029511f21d311c1644623f82039e096f7e1d2518928847abd479840b65cf10d15851976e47444d64c6d4425310a3b5efe9b584ce7aa01b1f79d6e3092486f91fe75288736e852c0132561a7616f21b7713ec53f0dc53432f53eb4ad778dbe14664b55553ba342eaf94e9f76320f8f658b4c5173ab938fbbfe20c9987318c1a5104efe41419926218d30b0c97a366e60f6d1240e7f601a1b119df36cda11bdf7fb531a27979c9823efd2a75c70387f0296dc7382f570fe59568afb406a48e7c13bcb40204c92cfe13b3980410b229767a5412a7db82845da135cb6d5b2f9f5b22518b2115dfb02115fa1c4c3177a55f5c194450f0f0a518df7755b0b12eb412f5f6ee2256bb95d2985bdf1257769718de9b4f4281c3eb3407f175c0b43fee6b94b00875dca0983ae763624bc4e84e9a78f778dedef5eb078ee87a34941005c15cf42ee05cafe098005b1770ccce4e59d9d3f6eab9fb2673766d9b70ac11cd6d8b9d00809e58a046d95ff62e78a8e5525af54094c907019ec661600ec2c4ce5337371a1daad0e37f3a5cdd96a3d985456a588b5c1f61f36a33c6444c3b67c445bf95e9035cd4f77191a95a7e4c20715e55dbe43196809123499148a930321e7b2cc7809cf517fc4b2b0b49e57cde4b6aae620fe8cd0b38358685ab80061c1c126a1f3a96ab34fa957236cc6c59ed962b3bb006a1c122da796bf6bcf7dbeb64f4339c63d3a437b5898be19f6ce62024cf9b9c89964569f176fb697430e553a7c0936056183223fdab2f910047ad5e64098a44a2edbfd3007b0b5e4a5d1e6ecb44f137dae2dfc45e96f03e75c900f3f84e2653efded35a3c8b27e310dc361c0740524e52a1bbecce57d59c4913313e62bbb63c95a93512bf09228918bbf921cd5c62b8914b7142d6abf8d632c3ac44ebb6936c638d56cfaa7cee463838a921398acbbcb44bce621bfd81fab34a8ec33810eeb89fbc3cc469990089d2291e1e873b31398f2799b8d62d429b998422ed634bd7a6de8e991ba8492c001fc5df8b0014fda377cbc5ac74e40d50773ab5c2b4d08dfbf3cca590a77f4db0380fe7af822207aaf99c38676327ccd9aad50b2d4db5aedf74b1cdc50c484d455429352ef0aacedcd9792dc26c66081c28ecabc445b6f1f547a24403e18b0468c8881bdc3e82f7bcce254944271c3ba06c80555c8f3d2d051fb6007507eadf8fb991f45c0c9e9ff08838a425a96d72fc20d642c2eef45b4fa43e7b380d8b6648695c0b9440cc66665435ffd3df10fd786f7638e13706f6c5651dfe5f125158ff3d1da84cad23129e11d79d0f95548318b1c794990174daa895e4b984c175136185be534ed6bff9231c215fbf6bd297e24f528cda523d62b44aec15fdfb36281d804625db07567fdb06779325987f69f16f19df737d5f65d1abadfae70a1a4daba5a87e4ea3a09751ece2ec21dd24f719b1f57e795819689c8f2e83beff593735825a1ff8e4e4df9d031dd66120dcba07e6bfbf1b0946b3585a5eb807c1632a75353e8f7b8c4f8ff0af978afe2bec80d3b94917773564d7efd92a79cad26360b599be49bc657b132b25f459d58166110fa626cf1731be419105b4bd235176d60efa939fdd8dc213c695674bca27f161da4514f646f33557aca06189698f2953674ee73be89e3fc4c014877c6bec370ca1fe446686200a94ded3382c4f4bc58cdc12c354a486463959cb91c2ea0ae965f912364c5d98acd40ee312178b479b540875fb2a0164b7134564bf7fabf59add993b08a904452152031a784cbd36e19a47d4c9371e7774d3433fecb5d072d059b01ebd3279ceeba80b356e3628874008d801ed74717c70a93411603f1faa3924414665a95c475ac42de8d616de8be5c00fb90e5ad13079e54d1c7000905b62742ed70555ec406b49cd4aa6ea68342aa7763530b180e4f790475eefe1094426b7de9e0163a4990ea3494909c6c6de6b7462d70c8f2dca3152d81c93a8c184b0c54da7fb604f835df34506731774e6b8f2361586ccc17f35c8e21795ccb68a5cd73355c98a17c9ae35ed22f6c0a36c4da30af96ce7347375144a80dd851fda4971f20e9d6d18878d74803b577af4fa8f34c05b380acbc5282eb63f9345e4dc1f9f0cf8808a204ec789ed31ac9f009790d5c9b7d744ee3b29d911014c12b53ff691fce0ae5d53dfe1c7a367e694fcd2f688d46758ec308f3f9736701dd825153df883c0dc539c9dc3dc7dc9a9a35f453c306fc57faf76451bef45889e4ab0a4a6dbd377996c7cf80e0e7192234475d93f3f813197ea2d3fb112c2e97cceef2000000000000000000000000000000000000000000000003080b131920",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 24,
+ "comment": "signature that takes 4 iteration(s)",
+ "msg": "0800000000000000000000000000000000000000000000000000000000000000",
+ "sig": "70094678fbb346b4b40e967be25e40f3fd6db4e03dbac8ee46c962c4e7f7c4d2f18a7b44df87b89e8d101bcc264c30d32ad4aa54e27bd70a4d7c4717653c19887afbf6f2359957c895ad477f7d9964e1e941092dc4fc8fddbb77157b31462a46e84f57906fea21df705a01c46b01f3212d91011e0798548ba8eccede6f4d9bbd16d787f5862b6e4dc3d7328511b199c32b609cf90599f90e156d2c00a97bae5b801d80479e612ec53fe59d0e5e6d7c2d2cd2a86f1b0d8caa3856bfb437ecb57ad2ba85d21020cd31cee7296909b19a45cd3303247e4e918db4bae21314366dfac729776c17b5852b000f9567018e7d052226b3b28fb5512bfba7c3da3d1cfb0c31c7cfebdbf5a4e5009ef76cb73316f6ab64570d84c39472f85a7f54918e9fb003a293c8d2787ac533b19832524e5956a96722db2d429aa69e15f3bcda7d887796647f913d5d4de4fcac8024c8da8223f62c973169cc21809943114b6766d3179a17c83e58a752468eff1d23f04f05d844d0ed40faa81bed6f1750d8f15ea24b69b403e12213c2291419d04555c15ce8c1645669f7c4f46f4d26ed4cdc4655b6d6c61c18739163c1f6290a5b535601f345e5a1564df056a9519a3125107b7a082a4c34dea36bc7c3d57af69b7bef90e5ee02426b96dc28c8300e1207b7df14c4209ecabac3142b57d059081da49cd4221c1fc4a159a34bcd95149b73d4a9d9d7f25014fc011ace2f814543922e93737ef968e8e20e8983d3793d733e24cda69c6c36436cfb658bd0d1cd7102686e33ea1626a61ff6662a8be36d0032fd6a2893f5386b471028044e5aa38ab71d3d8f43992f7eb196af9057aef710ae149dda63781d269c248a3c257dc21e30c7423d0bf7322e4f87780f284a92930842feb15c3e624d713a4cdfa5fbe9675cc9b1bd36707285ae31038d419643fa959839ebc93cd66ffaaa720ca4c3bb2b109dcc2dc890f19fde05966ad0d648a71e988ab142b6acf0426a19bced43dc0c83a38685ab5f255e00ee0f1d5a7a341df518d5bbd9ddd31aa6b38d129484ff2b93167123913ddf7e11f6b7be7115c07566c4821d12cfc3db5d24591f040608b7b06267048c944b1be8f67607883ac3c645a5746dc107afb8fb4c730929bc6c99b72b701c46602efc3be2dcf7a25c21467a6413778208e58485b3a7ecd688a97aa85f9ae2f0023d551a970c7714b7bd740ca173cf0f787ef7f961e9f97bfa5a59bee561fba83bc19d0945ce0b66883e5288e4099b4809124cea9426e81aaf1fff02d350a2e9876754ebbd6dda2faee542e768d859398db6ba8323bb4c16c0454020e97da1edc2be24ace53a0cdafde1bafb69e8ca06996c132a19ce88f7693391e2fd1e6483a193244f2faf9b1cfae1d511f34348dde860c585ca548bba32c13165cd3044209ce59d10e30a0bdaa68b8187e0fe6361c1ffae271c6ce3edb53e1f9cacbe9623ef5a6dc21ec7ce626b1863eab038bdd2c1290629ad90fb59de197b4f1cb1368a4ecb05bbd0b58f52fd8ee87591c3f4dc08c06ce8664e476043d4e85202a51996f9c0e5ae2c22ba95099fab8447ad3f71aa2aa95fbea73ea99780c8804037584739b3e1d7f9d63335c9eeb7d5a76244ef7afd8cda16c47faab70550ec39d800d51b1c8f85d366d016fc16c51357642d60d21e3f45eda3a7ed0815d7c585096725151d3a82fbfd90b8a609b6f52e0c18e328332cc0de273a5cd4ea3481913379aff1c03ec5de2026321d4bbc4fd13b1f5b4c5bce87a236fad1ed604809ea2378d9f3cea73c45923d9e4eae4e126792825b883f9d46046ad7787bde86b1745127812534955bb6ed28ebed29e65030babeada913b8b605a636f088d90b91d7166f5e914941d4185002b3aa6e38b312d384c24a4312a8cdf22846752a9bebb1655a3fb904b6c0f1224cb2a83887bf218f339d6d86faecf258afd847f73f5a3f80562e65a07a7c9ef1b43fd84b40b55b000e6c3d661e1fea1037e6b80f5478e744e6a6190226f7ba09e2b8bb89c8d720cf36b9c2bfd33dc34c22c1039ffb71e2f4275dc22c3488744c4b7bb7444e5443b211d3ca7f687e7db1023082483e5ca2eaf89a7eb89f993c194c806b331e905da74830bf8219e2ab6dd80620fedb6298c5a772597dc71a274589314632968c82d66a89e9433cdb6465aef8eeb33f0e738276daff510735089100bb9ea86711e5acb9272e7dcfb512ae2c3587f9e199e9a889566323a8e31ff6cc623307e49920ed9b863edcf54bbd740a7e93d2e8ed71ea0c321ade6ef7a068214f73ce8809b0816f4f2da5bc23890b768324f86a29552af095137854319ae2845ce820633457678072748f9dfc53c26c5e57bc1da00a635f2f7f1343b8adfb83bb3c54a78640441ee244b872d6c86699617e6d7cf71eb1cf0b8ca6bbcc89e3f36e0b64dd7b150604b3509974f65f1ad0adabe6dab7634dceaee4586f6628b2dae7f49663a9a25ed5bdc91b874f893d2fa54afdc6174da985fbca021315f10fb16ca6278521c490598c2e9593467b4af9ebeb822339e6feb7914c70ef2a127cf678c90692b1dccdf79c86df0014bd76aef174469bc904918c88d0acf32f5211dbc9ab007522ff85345d41e083ce7e79e14cf16dcb934fdffcf99c8026b546c2bc00fe356cae580623c74a00661d2a18c2364737e0683a1f1dbdb2e3be4a3de06424bfd54b820a30349d930ef2a4103d3586dff198044ca9e59bbe70481a3fcc955952d69b9d01c452990793cf3021f400d2ffc4a97fe248863219d16a457434f3056084306b8094cd11f97e48e6f2d45ae9b3b7047deb2e13c43fa0eb8fc710e82f29633a5d4f065986d66323884fe87cbc66c114026745889c62d254928257e68afe0e52e51e25f337360dd227dba3ccd54f1e99dd4c704c9bd126310e4c72160da70f176de957a340fd481f84c1fca83af372c9fc7f2555baef334614f02068a820cdf2b9b1b440d0b5337f4b4a380e6d95f423ebcebde2b455ff74811ab431b2550fcef6c6c671bae84c910611176e94f0b2815d55e7328804a1ba1b490b7f86020238114a063068decb8b3c4d6ae62f6ef6e8767b934d9cc817fe50470b9f0a6733ad446d12a115e28dbb8b610f01dfb1268625841efa796378fe64293fdcf859f38406dd11e247f41906cd6c6c9cb2afed460268f78b170edbef056fd2db36bb6937ed3bc52bf1fd098af62177ce44723b65ead8ad50df2c0fd89df098dc56cd51d5a74709c5cf1b7a09683817f0c12ef399e83f6a4e8a17126da998f0a224ec2f198ead30c543cf403615f38066e9417ec3f2b865464f8fb1b7ac8c3fc6251aaedf16807ad851b980ad9db62ac0e07d9b856bcf579305d9eb66859e460aa269f0ac69c9e88b014721c906a1f3bc8a1258e04683343f2256fc7c81ce17fcd93395c430cbebd6b0544c11de1eb426927f172a2f51aa78aeceb83aaeffb1b62b66a13b19c0035ba1c41604441fe22ba1bd8b8ea29547599b4e00996b2da1e937de02a58954cd77ab29c68ef2a03321fa2ab299a2018d625de8f65c1baed074ffe2577fa5b0a4005aaf284e7e3bb8d9fc365ae978fd528e0c427d43414b14ad6cc7a28fde2f71d1e7187a3362f89e2067b5839a71df40164c5d5059d9bff06535d317e331961f17bc5800455a96078be095e8ef8face39f58f62f0991ae3d97390da8c69b900cd47d749a75e7b7cfcfe1d4ab3b01eebe0f4a00ae2c7ebbd134e731075b83dd7eb726daa461b7dfb31d3e0f3f9cb15ead0771ec9193bcb899469100dfc378750dd811bd69b8acaf4c646414e5385b8737653eb9773dc9eacb89349e8cab56c3d0fdda5d646c82d2039fafc38b0aaaf77b93d86b7daa2016c0911ee6f46f1044c851176ead85e775ffa9330e904d28bdae0c4820b7a4ad0844765e05f5466d3ba1eb2381284c3ccf0de5c31744acae33720f05b38f7cb099262b94f4b025cda69bec27ed08c49b0e113f510d2c36a39bfb013654fc27f8802f414f9b894d4f9673a6bb03ea26b5d4959bd69c08aeb2eee3a28ecf78c61715751e43d5a5f6d8bc5ea7a70de3571d16ec9b5def79e3b3e0fd61e900d98bb0bcfea8e2c29651d9edd613693dba51b0eff6f8dbcc51b116244f1bf4a14c5ae484fbc5189533dfe011c7e8b75ac8287bccf269f98f2628ee419354b02bbdd9825b10eaeb0dd8d13423ecbab0425c98a1750f3c75738d27202ca4e9b9b760dfbb6fe86914b7cd3876800ea409b65c12dc01e2d81d6a2584332e63be08058566543b064bce5673b7dd9dc4f69c45acc7650291ddc87d4ae9e1723d51701f3fb3c11376019a53ab613b8b7138a83fc76cac853355a1b713f0621f8cdaab631da8a0941c58c0a934cfcaae84cffd95ff7e831cf38185734972942549b74d9c67beded7174e4c76d0ee55148443e785fb73955a582e9a94a14c621d6d6cca5b9f270a84b030202db41000965e0ad66f5175124f211064a2af0c36591f16734641c87af774708b7b7b8226320b34f488050fdae7555e0fffd1c124986ef03d2205b4b809514e5cacd34e7d0dc8727772fce98e0e975c64ec8258e22a94bd2d085a6c808c8fc421346fa7b5e91c8287df545b1b3589a9073877c2cdd70000000000000000000000000000000000000000000000000000070d1113171d",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 25,
+ "comment": "signature that takes 5 iteration(s)",
+ "msg": "0500000000000000000000000000000000000000000000000000000000000000",
+ "sig": "604ef7c921fdb209de3a95ad6c032162ffe69ebf86638fb7e5a2a9eb3ba4b68fb7667f6b5555d000e4ba05a2eb6a4d324b04311e4ea01824c1d6cd160802ffa20196ff1b0f0c1789ede25d58bd01930986817524beee3d93b1fdcf85a3479c7086029d04a3ef378a8d4658310ccbb441ecf9a273a50a7d57d2a58087fa0c97c0b31b9abd8246b1e9d46e1dba106e5f1b5682fb9f8c8c7a8a170b4f12fb5b2ffc08514d7f68dc81d9005283abad65299a75421ade87ef90300d9faabf7b9a7ac3eee8abdf8269946b0d3fb4cc674d58ebfd99377bd39f63c54313995ff3ac36e8753637534b8f913311157a149db56217ef758b65afdc3bdd7d2aa59ebc42daf9aa027dc753f051db015a9d8b6793ebf50094dea5f38ca7c2824936f96981fe5c75032921b6817b81776e28d18485777cf6e96ce2a57a9663d30d804a2e07e188b77804eb54aca4ae43f3ba71a3a07264a1a1aaf6edffdbbe37783e11ae3ef0b3e8f5093c1c6566366e65c5bb6711d706cf64b1f579a44fb3a267cf962751d66d46c0208d1705d535debc5f969c519ce415731ff49f93543b56cd2689fd1f94c57b6268afc5135c3a92eb3856156b4918e79bb690b99898cf5a213d63fe0a1d5aa3512282215691baa6c6da5c952f9bfa3d11c4cdb1ebfcde709e5c3347fa6d990e9d2d805d63bda508ea9e3d4e0bf2f5055201936dcdc360900116309970ab4ee0e943248f021e2acfcd4d7f7696dbe33beb7b40d5deaf042ec6cfd50f45d65f94812870c71e3c2b61db121f634cf3fabed0e48f6fdb63e7087d2042a1bac7f2c296bbdd70078303f05a7974e188480d6cc1a777576597afa9429c3c3cfe549fc41887993f883e4d823ba74a79075dfe5a3a26d794768c27436ec5f619e3ad605cab8c894e2242201f4381d7ab1ea3fc346ae17e783e53c95ee2d9bed1942e5f3f9ba65277ac7a0658faadf48272c78a8c9e38d6f21be59b492f4e0c134d965dcedd49b0af638ba010f8e2df94484b97094f63bcf8660add7a05149fb2c2753d06bdc4196e2c18d7ecdf685358ecc03b3d67b496828881a8f00cb16667ee52a969ab67f6e2645da8345d86d5748119cf28401d369270c7aafdb3977de4ff328cb34147e1f37db7778aee3e08a93523cd5ce244c78acca1e2a7b1f6d72b76fc86e7457e9de61e473c605a305fdd5591c16efb499c5e5ba83831d202ac14222b802e8c9941522fb0029b43e9f1cbb6892994382230456e899d60655f9bb29fe10811098a0de73a4ff87da05d0edafc2fd7815fb1d87edc40316ad7ac11474b68b013430c4023924e021706752307788f0309f86548f9deae7736431e98ba50f3d66b3036111dcbd1f28a51c83b1582fe61eab90efdbc9800f2493973d1fcdcddaf29b191094c67cac62dba01ae2c82139e65c29d11b927a3ee0bc93bef952a77c6dcb94c081ae022bd2d70629d630c7db08b0318c915cf123416d6633405703bb670694b4932f716c67ea181f4aa56ddbc781094029837f335205bd4eba0d3fb0e852d4a80e98ea119ac6738af8bfed0bc83ec0cd4b01cb75e1fb73f790f265908bcaf0fc3f3ef3549c149688ba16fcd5033828b2ccd46e22316bcd91e821231111b9869ff2257e996dfb26e9ad93850d6b607a5a5d197bff5620fe753f5b494e21e44d8abd5bee41ae8c81f8f7d0fab317c347e7d00712552610431242870571ec6fe77c1df51f7f78c353ff85660b196ddbe065c6f361a9c05f380eb18b50fbe0a0daa33cbf70d03e9b399e9bf3414e4eeda59ff295a6c5aeb40b2b458e21f43701e625a93a8b047fb221cb3dbd83a86b03ed9de58acd816a58e0dd571edc95d145564fa86564f86aca2c61f49ea4a736984ad58fdb02c0c105843c2327ddc97822d66667b9188a6e371aa5e09110b6d72854d0903d432c51f13b4c61107a7a197602e56b8dd522985af2ca20af824be8d503006913f6537fbe4e288c684bc82144c6123e253e8989c59bbfc83f68a9a8ac0061f2d5d93c253d2ac9328dede266eb44b1f5f9a868ee5052fbb2476e11f9751bda60c8af5f1cfc6e8b9e1bf54ae2ccbdd676e3f5158d174974fb0abccc3b47c1ef353e12600a60005a8732d267e33b0a3ddf7d66e2494e6afa3c135615e4183b3f7be8006a5e2c3ba4f1d948d1b34a320113faf891d93824cd38dce7e0c795ad623877839964555768ab7aa776cb3ea18827a752ee3e7c6b025bfc48b8e8c99512578d2504a51fe29103d93eaf7728652dcf75caf53ec55ae9436a5d41995ea9febfa38c13299f22acea0f59d15cff0a88a4750ad68d2750fb8ac550459e2a954141c5b9382e2de8cb83926f2ce102d4846accde022c502247259918bf44caa8f43c93dafd89bcf727548a9a30e553ca37109d85a6923b42eef083007f258d57b1fce21dbc830618c37257119592b8e8aeda65a98f9cf6f7287a53a8a2c64435c212a1ee90f52ecb9381b56d67592395dd8af5325a09f643504adaee45be117dfb70d92a3ebd78da21529b3d0af76eb71b2f13dc3e2755be1df35dac40c0f9c1f37058c249c44f09a3a2602017e7110760654f7945d5bf653119e78455586a6405993ec923c28909eb7f398aa02f30c1c06b59be51b9fa7645bfdfca98e18793b6e09a89e9e76de835df9a0126cc6ce9973d2bd32029f62e7026df3a03e9fb4ff9ec1b3533eb43440a290df0216b6a78d13d40b094ebfd3797c85514c9f3e57f03d4499ad7e5b0d3f91febdea51738a9c0bedc86df1c80b90864e3710a6c3d328451f3275c04c9702861ff49824d87828bbd5c1e16a7ae950ee2896dff2b82de43a937e31e2de22d81448a682b70c7cc8a71493b08a95ea8a034fcc5cba59b5fb09fd1044b649b192c76a9621fc329baf425c34c30285adf948587bd2757d733a7ae82bb7c71404e9672a40ebd37acde5c0ceca7febf2166e599d8efc1080ea0e9b5efdb3c1a3b54fa24f10c4a706387b7381bf094265a07ad9c85f18cf00d92c66e9257515c131132250c007fe1a39ef05529243797a96370fc51d5db7322e447d834fbf7fa09d136fef12dcd31c3cd5ca35616d92342013f8bc4d895ad00a27a8e641084bd734f1617cbb0f243fa83230393487509c6041f8122c5b0cea200aed694ed603f104ab14b462c722476bf2a95126c9f6bd9242c5ca6a264572700850b33e415742a31cbb85adb1ae6e6380f059441b898d5bed3d64a9d146f3fdcafd788b9f65497d6f547c15b652bf70844848dfc003700c2645381e6070d314b7831b1e429a41754b0ad2fdd71348217f35711c56271a6d7bb4ed15a765d06ce3f970e4568f1ad60af3df6cc2e385fa55686d3633f3c82345bb0c3b539ca8ff2125fcff6bb5a4e3010e68515fa28bc1945a255ce12a391e0e4ec77ffb098cbbc2292696805e8c4c3978d3b4863a6cae10755d2fc016b2a9ec2ffd5c8d3c5ea9b36ee622040e189c2ce167fa90d07164d70dc5e5d3cd9db359dc5b94a4bc7d6619170fae9ec1a82996e0b75b6902ad473255f179edab1b3ad097ed71bcd873850d2e94223c903dce00557f616a48661ae937a402d2a8a5e1f1f6da8641dd423ffa54672bd9adde84ef8798ba5a8c79b56dc2e6ff694fcd63722be9c9146743bb68bf6a8e0d92376848f39f81bc4e061bb8cd63a6d7707985a95b699b37dcd5c0da66ca9b8c7912ab45c435034b3b629d3c898f7d979124707817548810f07658cc72e82af5ee86c28a89bf070a80d2050b251a0dfa75b567e7decc2fae12b50daaf26326f30ff072c1d509eb59c0e523669264966436d2d14bdf2538fcd58495d80c580d6e3343e9bec883033c7c32fcc693eb123383ce7eb2ee5d5b1b09ceaca617346754ff30fa9cbd3e716620bc5219a56111aa5dd6d0de5e3904bf22839b0239ed994dfc7e6fb6c2436a950d1b925fa975f57419ef7d9c3cdcf19cee53044d6db371d1c1c8d0c4eeee9e4b963d197265c42dcff55c5281a742d696292ba462e622429ec0b8dd3f6a8479f7a1fdadfc505d23de0777155fd53e4bba4e2433033c88ec9a8578d9896518db1d1dc30d23c5b82b5db14039cad18389b5dfb6015003ebeeba0e2313045ef1cceaced1bdf0e0721b8fe6a636f983186c7f3c559377e88ed149435bfb8af17e3cd1ee277b0305a1717a0964b0eee875756ae0967c04dfb051933c5fd706ea2ac35cad984553ec63ea554246a2aa10266100ec88619edbdc3cc72b14f2c8a12504336dce5fb00517ec36838a5ab856ce0929414d3962795e0a4ae7dc80031bf5fb732a092109eb3a119765d69f4648e0e690898608176f8233bc010654e01d12844291722a4f195f1cacfbaa5b4ab674cd96efe868c377c577eb25f81e44977c928780d49ec3e52694e2c9e8fc26a8cac64bc927a9cf0dd90f36c11685b172c10ad7d9cf9d0aa4ec26ed6d982c90d7e97123d9cd67cf17198e282934d0621702d22cef8846c2dd4b4c639410f3da93287f4c1929638d1d624be1ad01a8e5364853556ab837a274b61800a723b03373b3da771d0949875ebba692f0baa606d70046c841fa16f191702dfac9a48c8ef9915a0057234b5b6999a9f82b424d6b6ebcf9101c28495575c1cefbfe0517303e414c5b5d8ff70f30649fdeeb021e3d41476f93f300000000000000070e18222830",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 26,
+ "comment": "signature that takes 6 iteration(s)",
+ "msg": "2c00000000000000000000000000000000000000000000000000000000000000",
+ "sig": "55248b18f7b86d8cc873c73d809b0453f5db7b7aa436797c77fa7cd51624c0a8d924808b8166aeeb2cb3c2a013d1529e21e6b8a4a7ed13caf47861f90399a17277953e2505fb1fd03b16b5d1e1e045f2e56f30520d3196c1e54ae84bffd80cb27b3f0d11ec93e3522d4d3f9b66859311d3b448412816745f34f4b07b8e593be1bc747f4eb8e8e20b9addccbc4db5fc155afd4409fd5c8e23399cc55bf67bf9c4614a44f1342aa58f462489764491233edb1bb8c4084fa605d39028e7ee7f8e44dece7f58a28d09665624fa0e0b5495a43b6a623bdcd0fdb6d0567d446dc6949cceaa15cad8f3f3e6ee63de3019f6f5df02bbd7ac5ea6024f4dfbcc7ec4fc9d618b2cbeee7d72cd5837d6263a1df0f6bed8708d66be35e474783d8f39cb08e130d300fcbf0767dbb4c6f8ab12dde570220f1abed2bbb029d80a927c51620d5679e6a4bcd2d34a4906ef8a0b5f7b87082a57b701879a557a989dcd255a2a845f2b7ceabbe05e853c6a36f8b3120b61821cf8e557a4a487e5065be0770ada01fdbc64a607e19b975b3f90835acb28a023955a713c6022a593208cce54a582329e0890ec4fde395d5eda4da6ae5f17578aa1552c84648d7663873a7093745b7550096d5da5b8aa25e9750984f74d6bab5fa9c751bd828f455a4784844cf8db1681b47b05e5f6c60364bc647196134133db8b2d672f290d37e238f562bdf52e35980e8d94910829ff7170bf403a29f210dc42e7ea1e2168c5d04429efd560ba9c11b21e9d8f081503b861e2fd1d832397bf069f699221199b395015b2e79808be26c9fbf6e18280c3796f29a1e0a4be5cc9901c6b31c84fc69abf3bafb07745ae08fd4362875832ee768c378c3e387dac8e06b7578d8752e3ab4ad161f8952354f1569288d9400f28603b0bd7e239ca2de916e2718653673236c1c3f172d67fd9faeca57ff3cddba66f0f589d297b49c311a75ece1daa7230316128f28985210fd2f1725ef5b976ad67dd436902c7fd6134870da02866ed96ec997554a684216ca9574264efd28810f59883f5f73df115024d56871fe24d68b142bf5906fdf3d3839660ba7d26aa6827f47a05c80f1a62254b6cdfeb55de694e723851a3c2ab89aec1e312c7647b1b66acea5ddb7ae62ca71c4bd5592381761fee9d85c38f2f42f54f947bb3d4ee340077fc86cbe19af332c96d67f8ab84a1f0b0f039f5e6b518c9f9eed9edf2a88dded19903a0b78e17353fc5e1485cc722dc9a0b12501374db57b4161a12852a45d160ce3a21a44a8e37cb8dbac3d3a2ae131fadcec0063ce5b777df45b67744609da238f53aff0ff8e1175fb11a22fab7fd016c41f8aa636aa2ab7c4508f445b01852a9944277309f7c77d1f64048dcda6206293f89f914152958c1ceb629d7991589edcf3e40cb7a75090cf48c55f1d16b98fe26b55d31dd860b31e077af05012c8d4a9084647741f6b0e667110e9cac2dd031c1e82deea92569bbc8454f586f415c08c18220428fd25fd0e06517cf89ce7673961396f992a0f395eac5e3ce1b81a77a78db440039ce36670644592d36d43e1f0338d8f54fbc5c97c5166d9914d4837e7d005269529072c6b34fb1e5e8ad177d8e92530395896584aa3b587cfaa74d4effe70578d64c8fb4e4920528ab0bd4bcbadf344a148c1ee0c77f28dc6e605f60093948733fe8caee60766678580ad00d685d932ab692e788f37a54342d0047457cb48efcfd994c47cc57cb4abe7aca0508f3c5551c51d448a111ca477c16a0018d1758599405ea49efa618a164d2220dd714ddf9832d1c7d1830d93e54ebfe9353d5a90f2a255ab1578199c3e379aa4e6acf2ea07aadfe7c8b2b59a7149feda9c35ea80db44225a081a489a9f2ca447e6a577d87fc46931e01e41b67485fa59951192ed7949913243922ae9d2178b24eef6c608113e8ca3972c705485b3008cdcd6fd7bd112c13ab780214c47ce1d7141f00a4c06c6c8f9ac508e01c345a940ae26d374667b1afe9c89fe5d7ead12a5011ab593de9b4f5bfc68498d2e3dc6d1cbc4b16f7c36c30e2f1b5243df73230f4b61ca4f9507c0c2092d7eccbd88d3129db25e76ced278445b7bc91680bcfa73c89c84623cb32e5d9ee335be23af54a54226b1e7a542e75d6cbf16faec7867cdecfebc5483b4b4bf50776f87495d0bf6c596e382c859020556670d70af2272f816b3881aadb663eb91ba95f31dc17ec606d64a55f44c12a54051bc7119fa3af23ccb55ecc9dd0875e8aea1da93e78c77096c9b81c24232a6f64aeb949e65f0527fa9f9d86d24ff1167525c5ef0ac2c6a1cdecbe5c98ecca4958d07c80a5f41b2a645fb78ff17828210ed843f3233913a021a7b5f187db60476fe139b89217a942da48201f3017d704a9e9590800241501fe6526f0e3e05af68c0a4936bf317375d39e19d502cdc938072403516844efffdac2a1758c2ad1ae29cf8578356e666b5f6b60e9198d847aa0c88a903759418bc0ac2eea77802b2a41c514bec3149bebe8fa0339176b8380e5b08fdbc390e726167ba15757842c4c9a8d1a8377811f9ca3906640bb38bd3156dc2676eaa49cf6a4cc90635da341be52dc7a7b3900ea89c697f450b6dfea351cf0b0673ac50c72d7b2ed3cb45b06b856a41c3603bb50dee0ebe272200c6e48a33639bc6369963909c6ac67ada94af7b03dade60927f35b97b27a5251e3819c71372bb6abe636966323f0abc04e26a699c46fd8eaae6f3b4b097cb40eebde51f6df2694f14b7178102ca2448e3389656442febe8ddd6d663710f63a8234fa6dfb6f3a9f9d0f69042b59b58066197ba83536f4aaaeb4d9959af819b40ab43e09e140e883037f5e896a5f747f0b70083c4c720f017a021a12746c72e231ec86d684a99fc85f8cb73dedf83d23f9aa6d27877666670481bdd97d428cc1eda80e4c08ef00353aa4c371c3f938c766da833a76929d9c78b34f540381909affad1cc12667e6a8dcf644b51e968512d80017b876790e58c464d222665502c2d1997f67805232d6e6af2b868a801a9e32404d30c02b1fd8ea671daa7e97ecaf72addcbdcbd2f6be3794ba20d938a8cf15db52ef323ca6b47b644dc93d82508249411b9aecb7ae10fde49fa1b209a2160581d62c10962ad419c2b82d553990b7583106d153a1ee63df2a283484c6a0ceb2cc71919d00990f7bb87df0e6c4274fffd98525bb325b495d860323ce49a2df510c2421904f4bd3afc9a45a9ba84ceec0b8de7f77f14ffca522b424778157bbf0ac8e873f05837daf02b9b158c7853a45f279dc5238d202403378b8ed8fd1c69ed29fa4e5eed31a2b803cf0480425bc7746bf39255810e57bbef7cef25686c0893271c57feffdfef6346552e269f661a6e396ee399ab69641e7ccdc87e1867fafe8a754d77c7c05e49196646b21b06bc955b4ab287a4fe3d0749fb65ac042408513a736e32c382f9c81a6381d03c7af37a54fd3406f278e4b4f58b98f3202d7340933af471c840c0379cb11a3afa691d6f50ce50c20b02623b45123b75e8c26b64a221b5c36f3758050870413efe61e0d8e7f7bf77424b3478240990f9333f0ccae39fd1d782ad05bcd1aa05b0b6d58fad5766d056a4587ebf5e848a8129e07bfeff86ff50547010d4378b9b1f565a67207be7571c8f330f03d5ee6edbe06510918d7e81aa916cd49184098c99959fcab3858e6bbf2ddd62571be3869bc1f3d7e559c657319198ba47885c7da9e350f26b4e25c17d27d55bfc7e6813b6c30cb1f8e59cebc5f044e5d41f59c46c317d7020c57e13cafb8931049caefdc3f296c0363af7f7a89ebe18c0602cc19e8dd4da1bd14f296066183e80c03c806255a5767639c1bfca3037cd7efae6da14cf00b33f64b1021fc0a690a48abf5c6a781560a86d7501f8d0d05aec20881d23efa9d43747e30b262a3c4e3da85283cf5cfd94cf4e485ea56ae0081bbee0a9f41a333ae2aaca92c7dec0a2df94f47587e59fa21f80624a16e6b449194d1279ae5ceea47ab02b465b8da93ff50389aae3de69f5fc8a0eee992ec43e08b55be7dc9684264665dcea7ed4055306a1776f531d2a386e2e839bcc4d6e47640927967dc5c2571ecb8153827c44dc0ea5a60399a4a285798893fc5e9ebf74dd4e42575316bebba6173065e6583bd69d7f9ad0b8b9c6930c1c4198c5407f06008c9d04b1002bfa3868a8f7ed20a1bcdb1bf75a80bfa5cfff2a29b23e3fa963c6d7618c772538d98355d82905a66722824ab3a2859370baa9ddaa4f4ed6e6676528275d993bac69f66b4efeb8806f65cf8491e61879f0dce6bea760e2b3351a24b0fd65857c5aa099954d42ee9975b7c32b831d97fa862fd8278450d8ca34bb65a23758acc6fb96a81a30f1f28f85af5ad8c7d5868ba908da53e8fd0da4eb182a3770b68e2d72576ac7002ff348bedb8eed91f96af6a6a46b99e5e639845b4962fd98cad0112d74a6fe57fabb250e42c136c34a199e1923d2fa1d1e16abf8ec661c4f3eebae21627ac62a8eab8ff872c769f4b8eba495cd16d73b7448cb0a205da2c5e78c85d53cd78bf841cdd8f94cf16666615314fa389de3a5b63a3c05b8b939dde0041496372758fbe006caf4c718690d8849ae5eb000000000000000000000000000000000000000000000000000004091114191d",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 27,
+ "comment": "signature that takes 7 iteration(s)",
+ "msg": "1200000000000000000000000000000000000000000000000000000000000000",
+ "sig": "577e0d1047704e02b4ed8653dd7a36c7a469f50314399d9b1e07fdf02a5c8a6071c4f2df79688c1a6d32ae9182279c76311762aebfb94e9410d1a74ff0191784a9d311dc970ffe4b51834e9bd49bd21dbb47817df5991553b6072dc547048d58c7644217ed1671c993d60f9882359842b82f48c619f318ec138842e4049ca3f0592bb06b14ae50ecbcfbc2a6e7c806765d404bbc5db8afa7e4d37f3a8fdcfe9867cbf66d1a971540e04c80e4a2403a0c9e795cc457c0cf1cdd7897843eef8f7e1642b3a9b7f4687763423ed0acb11270fe0bf01c1fdb0077787c591d20f2deb39ba6aaf3f433c3639a6ec43e314d212eaf1cbd4598b0bfb0f4f778f86415ca66122949ce3f101c667eda97f8cf6fac74d92472ef5fda6ebc1383a6d04bbb41b0e89ff80d7f0439b19b1bc570d8e29729b4d1ceb12648ea7ce092ff3311d910bc3495597f40e191ccae4513da4f24d88d211473468de354f1f03be275da7da36bf18233404f9d6f401bc9835544b1307312372a88714435dae593839d8706d74157a81fe8b744fc6a59c1e05f49628f8d39e0585c1ff156ca8101a53d4e48ba22d99ac7aa3f5e84af66140e57dd068ba296a1850581f6156671bfbe983d17e0e16d89511791b5be7350283f1cd100b9bd3ce62b607d00f3ae4174e892b175934c7c885c5c6b2cd3c533fa82fa7256cbd0bf9b53d009196c49d87779b855be3e97b4ef3adf68f02bd3e19ddfd876b55f0565d5600780733bfa95d58754fe7155ac413d67e9d5b5819c66140c15eeb622c0c8c8e15e05c79ef3c030de87a94f5601640f3bfaac0c961d4dc03b9d313097d20b83d27fb9e1b028503a624db1fb862bcdf7996443173ea1dfe544f285c4a029b6eefc5ae70ae3869ee66d220b89f83cd5879d2002866ca765cddfc8e499bc926dfd08cf86888f957f57ad2273e9155aa00ac4b618620953afbecbb4ffc6e93e82b77dfe4f0c6bcbb4e2f849f3fdd70f9644d1d420cfa938ded26dea5fb0052319848456f611f64e5e9a890a0643ca9ab8bf96b0b89864197d75c85620dd76ffdc0525d8872815b92a8369af17dd5bc4fe9519a2903bd8c1e6f844cca5ca2e79fd08d2b66939ad1887e5a651968f93e804e72dfcd6b244a66332e8358c7a39b337c001708dcd088c02c8152816d3ffdbdb323e4c8909e1b1a7fbe3e2dd87c8a985ad008e54153ee21590ae89459bbde19eedf5a23e019cdebad0f9448a72e12533616b76803dc59bef6a5e32e25caaf4034b6e3340398e95a797a484cdbf1433041522cbec6eac497d437a8374e2954c35e7ef105b45f92418b674694180e3abc3903f9a865bf24138ed0f7b5c81a8e49a39f11f3f81109a4fc9b1ddb6dc0d3f9697c4ad3d178b02373a46669fc8b6c7fdfa07e0beebb47b5043bab910190c1b5680a5e49ff786ffe7e0aa243b58c5fec92c148fb48432d20c76c88ac3b4592059eb414e2bb9d50c8db83f8003542a1a58826dd0d91fca351067c13917f817e32a438c02de1d51c3e2817c280f370a96a9145863a7ac1b6a1ed1ab640ae1acd2c72a05928b30ca51276ab0d3858e6e5638f061219af3fc0795a54d7d81c368898314498a6b279ba111c3a79514918adc6675b279a5571a3c7a9b9d79d725e852c2204490230a0270f00e758bd685885518bb15a456ed6344786dbd5c4009f94f04206e87b51d092aed1aee3473f8211a3ba22a5ac092a53831f37f4d15bf0937b9db11336018030469aa296807e6a5ec829c8b3fb741cbf0207692fe30b1530d545a56a48fdb5b3f72a8f158dcfd4808e30ea8fd7e2d6a19669ca7de2d50015c586dc17a37e6835685e691e516e517be2021a81d42f0330e29e8114fd729dc1aacef69e006f87ad74b0944eeba1687a2288607a3ac930c106049bc7a9435d548fc275b1474299c7bcc212a41d9847caf8def2ee7293986c42af986c0cd28ea70e56993876aeb3ad7900e84daf267adaaf5e9df3877aa1267cc99c7c6ddef01867a17019cc013ca1a921a319f1172500ac75cb8a200df0e38c1cce4054f2b0fbc98f76d4c7b61d6ef3a54ac0c42eb2c9ed53426dc2fd289e71f0532a026936629b6eb8657241b77b94d6ae11c54a9bf5c7ed7772e7581ed16607bc090c05269052fbfcd3653a9cc4fe8d0fc0692dbc497344bc73a3e9044a79d7dee977168d1c1e462b03da281e4124deb377be97b286ad5a1e1ca93529676c25c7601fafbc3cad171ba3265690d6ce37b760d053a0e5adfafa070becc84b59c39d401a4b3b84b80c55a9260ae2bb510230c8ac81433f466757affe6c55d6b52c367c37eaf0bbe5134a7ca5f1aafb745fa9025ed419e9360d1649bdf87696033742cdf7a6804cf88ce19c7d0f33482c83e65aedcf0e3da55b395198579a02847899e5778fd5369a88d04eacc1de1ed23028c4de2cbe5121a6c65cf648550ab340dff5b49e51e9543d6711ca1c3d26a744d1949edf649b81b7fffcd663de4532ddd1e7c2837d6b30995029eca9b30c8e2a00dca5a44fd603430daadadae3d4ffa83fbb4c97a373993adc8216638f0203eac09be5ad7f222738907a1c2b793b419c317bc0312723c0e8371cfcec8a13065df31978751df34ff3eccfb5b37315fb66a506083e5813295373c048b182dca86876528209d157a44a739cc9cb99e076d82f51885ead7933100d030a3a7745cf81cc36639e50be9e067b09a2b0015a7b86446256fbc977ba87ef6ee700528e751d5f346d6c24308403107aa05a95cce61c1e3894a1dfd97cbba4f3a130dd491368787593cf353d3eeffa56640a3451cb9eb207c19de0edd3fa886db645e260618326095e8ea93a1092183de833b66cd0379b94ef4a1cdf87581167db387e0ac24b750c47e02c98adda5a834b9b00e88d9a981aa98bb30cd8982afa2cbd7117236e03a23cf13f6ab2f67dcbd580a1171deef889889daaf156e281eb5a3be2ac914841f2c7907228971981ee9567e18748c03ebfe9d4fa67dc2ddaf865e1abe1182ff33601b97c44706a948f2c0bafa57f3ce3819005b5e397eddc9022bbfef2f65f9f29d86add3577a6fd117139a9ffa190b725d60aecc19370343a82f1f0f584896aea7d57fc092b74c0769c94242605b521e1f6a4cd2fbcccbb4a80745d3f431e1a12beb8af87145b9eb4b0ffd9a863e27b18b07fac43bd686bbf08d040c201ca574baf00daafec8f92c8a37e43f3bdc7ea514f2e0367a29642e2e89947a39c479c4ea940fc3771fd57c37f96e759f333f24c3eb1a67e6b202b459107042de9a1b789f9e9e8013cc3f2a89975fbe6c1514ba2572ed81629e0b418d8011659ed339bb37f0909ba8993475a4558027613efa516e575336d735716ceb77dc54678337a9e1d70b87ac85a3b6676447de69d6bae2a0e19048b70e0af8b767165353c1320612671f17430a5233e2fd95237889e4f11e5fa8ef905fbfdbd09db873acd82420e6a5d0bdd6611e5caa0183841804e19da3cec5a21bb75b91a01a47d7ef749af0fdf3b224a2f0d6abef86f850d16a9d7e0df467f28965c485156fe46e611f311bf59ed3f5d690ba6572228893e95e9e370f022b2daa966b31f41005e184e758b9ca396a23f01adf0838f9987433c87f9b0a98b5c208cbb57f66014f66bdbe793922333ea1aed91419f10a90d5f18f983027b901e5f70bbaabfcabebb53ca657c93b0899950b1dc2c02f5f6ec3fe58a4ae5816013bd7b15111b10779b13dbee751427673aa97e00eb9175dd2bab020e1ac9c9dab87806ac164a5d8f86217a15d4e75d13fccaeccc0798fab7551bb9ad89b2c804ba49606ac08adaed603422726a9c7b4c5a30bbda9d46004adb1baf11c4aee456bfb369390e82d504d0c300b18608da25086bbbeeea9baf586182246e6dfd6f15e2f199887756f6a914ba6cdbbf5fd5029f67212c406f1b5b88c36cdeaa982149f787e273e32be8f713535afeb960e302b129521ed3bf2d0a911908e7471527e7a177748149ac35e20e4d4ecdd95c356d84143e4cb6e627a1bac0cd813c00985913a148806bf00bc1da3b6d123da765a2863cb07b208125d640afa03dc3f2025461d228665da2590e3cf692163c5061c811f1f1608614d9ae6301794d9b35dcf0ca31ce7f475b085f14c6edd944cb343c08e5af9e9680f2e20656556cd60c2b4b3b10a66e71d0eefa893a88b7d3e789935173c39d4a5d6918f3b41187001b5cbef0cc6fc2b75b2cbf7b4581d97ab046f1d926fbc9a900e19a5bfea2989d3a63744443637de57a27269036ab9f35205a6577191f2efe1c01caef6f26c697fe06e7fafc6cd7fa533a76cc3ba9a2ba2b07bb2ae7cde729eea9b5460fcc9dbe9e1ed7d024668adb632321b2a649c2b285a19e2c5b1f18102be86f3181c0264d262cc55b2f2d60ccadb6329f19303a012ce1693a474d651a14148a0179855cbf57d149aea3165adb2bc54a53452f4faaa758e7961c80ba00dae2f3bbd08ef95901f4747d6b36561bcbae89364d090ad6fa9fc37287b5c901bf19504bba36f0a814634673918b1141b49578bddffe2b30331db1fcefe1bbca0ae41ce4f1e1cbef7daaa22929300404974c4db0b132f5dd4176eadb0d02e35555c5e5f6282afd1fa494f6c82adb3bad3e5f4fd09222a62bbecf700000000000000000000060b101b262d",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 28,
+ "comment": "signature that takes 8 iteration(s)",
+ "msg": "0900000000000000000000000000000000000000000000000000000000000000",
+ "sig": "ae6b9da548f432f42eb2f2d6fa196c10500fd99674009ec015f6c5b2e5fa39218f361eac40652d671454bca3ad7e179fe8e44aee00e1731df3d0557e2f6b96ea805a7713d82fdd1ca369c868c10654dc0b38916a1559517334ca20021489c6bffd9942aea8c7ea9354e42d2343c6700422c97b882299909dc15f653e6d69c44bedaa068c129f0743b6dba58e0df1e30c4db0df591f75bef4fa209cd3b12b48a7e3cdee1e7e4c54f719ef10611aa4d2a668fa6f9004252eb8623f309069d73b46198ead952e30b5d2971f57d7c983a098d9f7a25c8117e2601d57cbaf36d0434ea72a11c2214c170e0e0db7431490ed801f850002b2f959eafe961971d8992e4f306745c2b7fd7b12f73ccf6757eab25b87e39b0a2ead28e3ff3096c706305d880df78ee77cbae24791796c05b537531e64e69eb71be60bf60d88c076cf0cb19a6858d435fc333d962a668a979b31a8c96036b516911290d7ec16b6f6fff2dce67fd4ae815e658ebc39b2a35666a7d1fb2444c905bfa913bd77146ccdd33adea9bb35ad871b8c97b9c2a836721f967e62382bd0c62073fe60b2d3eba75734ef612917b1f7ab0cbd34843fb01029b1b0c499e808095a90887a2612411d6cc8f85020f3b903d1231f5ad3cd251d6925c3bb87904186fae16c0421144eb98cbf30403ec02f38199a62c41f175d19eea8e3cd6c25897e773005d5bf931b45e2494c7553903bd64f4bbb316a11fba9a3d2ecb3f8fb6dc28a07241ae8a4c755496a494d6b0b9d4205e35a46e028b72c7af11d6190b23a2c70404624fdac2302c509974520bdfde087f3649a241967c9afcc16970af251b5ab3046cf217312ff0ad54f6f23ba940840a340498a257dbec3ffa44532057fc2e4e12a36dfd88e7ec42a3885a6684568af0b8e821b17abe98f069b27dcc045e8fc2403cf1e764d1adc4aad6547139d107f8b77d89f1aaa2d3be24cf480c9e03019c151c173015cb1db490850fae6be852af08df73ae2b98f763444d28408469ef1104f7816257a27a7cf78708dc1e310bc0f7cde56ba7f32def255064fe81e9d78490ec9479b9acf7328678ca8aa3a8008902a9fbc954d8c1ce50aecc797943d3b1ac681548144cbbad4805773408f2c2455f041e68ef7ed757b504981a38610f678464075e662a156c058e58a6c9fca1c5c352dadaa66041bf074036bc3258df98794dcdc64248a4af53cab90d7873b1bfa2dedaf6eed93a594ead4ef4a1f4e843bfff325aa756942b2851a9a526f812158c591f041a8c5240d19603bff6afb53fe8d6d17a69b5f0752e2e7350cda72baf17d77fd96e1a6c5376c358f61cfe5f484bc401aad80a44a8082305bec47fe643f782cdad0f8c1b46b9e0243a66498942ea5cb749ddac0f14c13dd03cfafa9840cea8f012f68c5787e7a48fafbc8c670a564341dee0331387e3efb7864a56b3982012da04abc3348e46eacc521dc9ec86c6a737421d5e7cdaf957137a427efba3a0837cbfd17919c93108ad6ea479a7b41a294e4ceb8b68585ee6bccdf500a504867094a4a40b20d254ac12ebdc0f9952b20d582dc737c5f7435b6de29c5bb73da4b55ebbfe1bb7e0a4aee4c1af9d1781013e082484665964eb913f2fb8c547096e8a7a0cb6b8600530c4824c0b7b61ce65f1f4c04905aeffd6ef705859b19ffa28e88c65d1080c61e6f14f769900bcc66ead17e7f8a6bbb494efd4141f7e158a5f6924646ff7019ff67c0ed0e178e9dd47f53c6585887afec69c41fb40a23713d889141a0ff48e84778b1e6f1112be5c80a6272d77f514af6bc9dd47bc6d85f0d7cc166c20c2b8255c2fb63c4a9a303396592cf43a8de7aba3ec7a0e45470410d8bcd2a01016a326617bbff7e110b18129a56900515a8d54224467773a7a731f28e9bf5a4bbe640ca5aa012f1b4ab22fe14f121f3a486505d01e27b19a87801efa6fed57a636880dafc40a820c73ea49c2870f34bed3b504c2f61d1a61d073957dc0dbd97b2c68dab42d9e48bfe559643776004d2fe5f7c0c7e7e843628ffb368dbc65d7579a826932bddba17db9de0f3e573916f2e80bfe65f1be24aa0370aa1fb9b84a140c3d6f62fe116a88528aad07d190fdafefa49b10c4bad1ecdd2e6168310c346e0143f57099cc9ac8159e003e95158cef5a518195e8e53682e09bbf1d259dced3aeb19b3ed9089be1bf50ff25080cb7be32e64ea027a54ba01811b9fdad60afedbb7423a2d958b90f1a568c413e50284cba2ed180d3df64a13f210a824dd309871843ba5a5df8dc016092a716bcaa39e59c74961bafcad934fbfa1ac73d8e876afb160c98f7ddd27139b5cd3493cd18e08290e7869e203e7e3c5e2a077219dacb8838d3be44fcde42ea5a3e4f21037f1f0f66ad8b526d723c31b037c4c660171cbac2aafefba2afb0cf667bab8936a9453e6221c71956ec22cd70ad54226be512911597add00b3847347505e4e7a412854463444cb66f71eb359d4258c2fd33c5532e4fff22ede008ab72fee788e4bc10c4dbe9dc3172d6406f6b829903d6268206fd0b10bffdbe1fd62895790dc2f0bbe10ccf084605e3d19d4a86b4b64bfe62d3e7a1f43afcfbbaa5ba55348661d4c416c7219be1de32d038db26b8cd1e947fcde7e3a819e89891df896490996cbf958dbd4bbc5b82bb07ed2b83c96a87348fce5ac03f5e4ffb987c02675a80465ba54add3ae26f67da4a53ee326499a44031defa232cb152a40450ebf9fd2fe39f6c18b27142045bf53e844535339b0ee3e1602e499bc4731e8e536eee46d7565be292d2cac2586c2ac0e139ec733f2b240fdc69dddee8054fd0eebaf8df2d9d36f15179c0d05cc309142ab8d30a75a613053a21c5a4d9e1dbfc7ac0ca37168b999646711a61e29327ef73f462be930228f97e563e6b1db0ad480d3d73f0492131f2dbd94a5b3fbb9d2194adfc1a396e60bc2d27b51289d491428219eecc092f56250debbca32182a31fc7ea67163c9ab89191505be15f3abf1fb397ba6e540cdfb3661693b6eb76b4da66e7d9f887d7b415ed946df1b593e0523b41f20cb1edaafeb53d733ef11e0cc0e2eea5a8d4497c82f1c5a3bfa39e0e9d49b3acf3915fa69e4b9ef7b69a7f0825131e6587d335ca66c23d4e54db4075d61ad0e6171711b94e1b647e62a8b9c63c089b0c2f3bd9addf550df187a1b9d7f122278c697b91091d0bbd8da14d3ce2627e5076556cc54d3084c447aacc82f2f667f96ffcb41fc11f5306d2e096825f257f86d55289cde430b07afcf2f8b8123489ef36e58beb4bb7af07da8bfe6dc9c2bfd0a2855848dd46b70244b7d2023fed10a332ffbfe1402ed48e30ea1b3f45ec88d09473ece65064b4e15e62ef959745ebff674e9ea0f337518814d3e9d7aa1c240677dab91b9c0e41e40cdaa5531799f3d240b7dbe702b84e88688bffc56bcd55c6d3d4f936ebdca448add1c8c84c54cbc7412fe201d76294711cd5349007b027fc52d91acf51359dc68e30bf80162450b2e2334dbfc653636ae67070ae6cb23a8fbdbe8f5df9d5d88cae4d515ae6997b22d2ee3eddf2c7ded6ba7ee30ecebbbf8cea56f0ace385b3b4b533f99cfd7f2930783557629bbbcf03f54b5685ef612f4c15f9cfbc3105355214632718898c829133fe2d69ae468cae0a6215d531f4cc801fffd416ab86c4823c8220059bbdccbb945aa7edb32d8627f1f94299e36448a30e0aedad92bef31c17767783b16c818e2d005621b2a551591249ba28005137d81bdcd637dd98169bb6a849ca57a439e726f5ff61001c949c73b5b2b76c1789e59c64c739a6b10ab7fd3af7be25c45d194dd5a961911dd628ab447999b84863b98f53d6b06733c2144549af2e28d1dffab2c147785eda415caf4e9aceac3a018a97f45c2bdfdf84930ea0ed5e5b5e55e328cb44217d89dc5b8592e9f82d2e9eaa43349bd1b82548efb44adb3cf8992de1ddb0389bd7074b0696ac25828dbe1eaa0a1e46e60dfb6b92db42429c01d7f7829e2732cc0136503d4bea76fb98554e17aea5fdc346c7d457ea65f128ca37846e8fb72de28a05079ae802ecf48195840e2a7aa935d817f0bc8d38c4c283f25f3d8b4a92eb7d48ea676cc5109b5cbd651e047ce44238171be96141fd30968e4d71e3ffe7299ae7ec87192ba819d27ff91781ce58835881c941daf943d675d486f6353e7b067becf2ea8d71d08b2aededd6f1045975c74f8840dedb352255fea9f9220b31b1f677a4f7ca415bfcaf3451b49fc7f3c57267119b36ff60e618a70423808f87c7ba2e511b4bdf37ea80c4024aee17953165127a16e88d1f745db529a048175497421716bda17f4af5f28be9d0a5932628aa6ea433202d6dfcb49941d9108ea1b2cd0b4f5d274f35d52bb44a8703651e0f0cecfc7fe933fa5e0dfde92cfadd2c4e7766fbd3a9f214bbaabe2a27c1ddd16e563b9d7539d7c793d00a52e2aa1ada1be432d41defdf6cb4cd4393266dd3211309f37dee5f31430dda1e9346217d94bab66b41f44a93cbd7bd10c94906fc95a1f533f03db5b4b241c7c388f6fc2cb1d455bb5f46017e07468fa7ccf48e1a6763e8d8330528439501419214353676a96a4d405424892c8cc19346f71ecf1fb0d2a2b348395abcf044d64666989b5fd03233978cef4f80000000000000000000a10171f272e",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 29,
+ "comment": "signature that takes 9 iteration(s)",
+ "msg": "0a00000000000000000000000000000000000000000000000000000000000000",
+ "sig": "bc143b5f4bf58441c91faf8a0f173603ffbebdf13ad89694b29fd3b6818b273e3f54ea9cd7dba3d4510ae2c8f14d843348820d2de5708d79984d05f5496af374477027560edb4795d84b2fed1495d55a1d1f42de240136a7596889a5c03a19a7659f39f9dfd9cfb86fc6e96182b262a94b315a627634ce2fa57f3c1c609bd5bbe27b735e13e133e14acdd1e177ba97bc48873a11ad3f5c49c7a7fe1af5fa10e5dc50c89c387a8982fcf562b2f36af26d05e05680f039d422ef9aa86a5a1193ce24bb88b4b7fcd12440873867fb572cc160008902f9163a4c238396ff943c99505a7b73ceef7fce692be774a3bb5e04dc82df86ea15854f526a2619ab59117d5faba3a2c4acaf2d2d8dc1c5a13affc788e561b1b0923ae96b139e4b3bb55e134f6c2d0a5f8f25fd37ce52ded270d318808c6df359185dcf554a7cd8e1b6afca029c5611f314dfea7e008b1640bc57fbe4a0f69aadb51bbc52a94eb20a7e494db577c04c33c570afe493b52ac0d49702256bf1d948b23e0fa01728a0d7699ce65a2ec8f51c94a452a10f2033b5d6de6184e3fdd07df3fba52836ced06955660ebce4906674ae4dcb5d32f33e87e5889bef909126ff24a9b4b7d51455c19424591c1ebd20f608022236f42d06e90d4cc5e98819fb93fc1b53b8f0f374013271b59ad216bee3101e217a15a58b2f59ca2fdf72dd039c76b5995226a198904ba1fdcfe2685074c07aa60748564cea870bc16f13afc6ae17363b625d0d5b95316a0cd3c4b5d9a5578e57f240c6f8e38ce0de11393c7a2f86b35e50fc19933967b7f51c066b98e88235d459c54d4d1a28d7d194964ce1449081affed934c99854f7092e8c7a6b5b6987d50c1e2dfc4c8b69532b9322c7094c56776ef509030539ed74e991db7fb14b5f676aa7306a0e67d38ad8639971471b578b3b40f35b4ed6d4996de86cd634b1f63948c1a68f056516984e417ea2e1815428a14bd153424445d1f32567a0432fb06a33ac65b861c89aa2f2b79fd911c2a79887465f3ee2220620bffe347bd21d57a25f9e6c97fc7f00c4570a26a9f013624af4d3e24e34d42dbe0fa6c8ab7a85cd735489dab9ac23a1e5fedb11f4c5a98646841bef52f894ba45245442febfd60a66af764efdc16925cdf6449543b49bfe34d3d5dd51fa242e9dbd7ce9082169e56217bb8501947c0d8a4b41f12a56ea30a071d2c6cd358ef952b4f18f417f324331c500e7c056a2d47d0e4dec4e892a0b3b3773bf74ef9769e7d42815af6499a7263719da39a88fd74348af4f53385d76ff0caa71c84d5561b9eecb27e74cd20c46104fe2fd0f86fea87f83ed0213c350d0e16c4e6d8c973c0ff0918e14ca27b97b19a3ca0767f0c213613febbccbca507b0a17b2bd2f042b8509f6c8c38c38842c6dd61cc5cb6772b23307cc4c400f4a43d9c644f448d85abd0b2740c0127002c6da081067d29bcfc1ce1aef5a7e375331b5b9c9ccb8ce74c179ffbb3476b102bcea3e33f947bff12f5c1d1f95df11e5c06f123f23083b7ea655d135b804540ba7a12cf4f23a0c28743289c37b6684b5d357f7a0871ba5f10047309cc4dbea769da1dd0c24db4f68de2c811aa3e2b0c36013daf6b801ded4aac4d83572f4e28f3e360b1e4da0ce26cb98e79981231d2ab7b3eaec655c3cc5e746e7d89b7790ac7aa29404d004a8bee6e758ca9759d272ef565878bdce47c3fe89060450525f5914778553f277227c3bd6f970107ce3b03d12821d09bc7850305446d42665244e3121407f8193ea379c322e0e3ccda4f8c24a1a8cba43c25f27fcbedf24c62afce4e143fd76802cf1bec1e2411c740a111498e2e999a54149509ba83b3d3703e576aad701257df6b969e57c58e4c8ae0e5af4ffd347454a0d101ef50146e565f6fec8e4309225c2ee39c4e0e29027eea6f5cde089a56067262bb297880aea34423fcc1ba816b06ee2bf9bd4732691b80dfdacb015bf005a7a74a486b6cf19d5dea2c2621ddd19bd834dfddd97af99002ea1dff190471a6675b61454408795af44266f438d4f94ef8ca8331755fd9ff4a5dcd03e88661b2033ba3e615edb7b061cb6a2196bf41cbfd4061a2580b5df7a4064ed173810e0d35181b5c324476fd99275d2b9384ee0d40c1cd399c2078ce1f5b622b67ab424da06f5e746b1e8cf7ae8b90244b0dd637de6799cc35910b97dd03ba01521dd9a29cb998803fddb4c680308597095f202631323e00fb85fd939494ad59e34077f1af3caf085ac82043de604c9fdf851bfd162ac152e70f1dc5749a6d8ac0f55880117218a8e09e3bd6e2e2c050fadc9352305ea51d9e6cc073cceab1c2369f0279449564bcdd7fd686c57a2123bea9735d89ba4b25614a20609f6bfee14fd03786fa0930b04e7567dbfb51c408842f82e658064a1253027afea7d4d825d1ad60caf8596c641a3cec52874eef424e63e107863abafbd0500fa0e620dc6fd397d42c541536dece5936a556feb4b8563747008496e4a9d5bb1267533c0b9ef60737ba9d4a0f6e7b2016a57311ae854e55b144412f085c647d747e631acaffdf97410c693d089fdf227ab8ae0318636235f189278e0823eb68db6801ac6c606fea32905d000ef30b1489d6f4d0124d10b97b12f4db0726b7374f8a5951cae97cbe1e30209032b9cadac407cb474fdecd6fbab06b5da028e04e0dd77172239f41ce56a3876d4c56bfb5f8ccf5d819302151187674ef477eea1451a6e4d09371358995c552b467bb216e88ecf78c78c6a3ff4c455c7689c3784d4fdd50ae4250110e39ceb0c2a04e04a3abc1a2ae95ad9011bf2364443ec7773a596970b16d7514a0a7c27bbb0f2436bcf27202ef21543ab1eb1314fef197ee50b4bacc3d8f64bb9a32936e20e0c0826d1af1500c11e704d951824fa0a0d44caf8055f5bf06e8e0ef2f0617875b2d44a3fba8006aaaec6abea7f626f90b5fcd1e44bc2401e0a486a8b6c2f96d76117e70186dfdcc10a677de2888758c6af53bda8912374bfa25bb48bc8d8281970b38bbe2c536f39874347c91b3193531c456974e02393d35dd57596f540ed9ebefc87af562cdf653eb41dc5ca999ae1cf0ad9a2ee47c9f641b68fc56e289844f5f17dc94e3acf4987b33bfd36b1844c43fd2f0fe91de2283dbbd0dfc1ed98cc8445c768a1c25835b9d6ced33d5defb877a7592a7182dd29f5275b0ae7de9954fc000daab005d3289c1d183840cac1832b0a13b4dd5e3f0ec39ef60842fee868e44b946809f8a1879c5a6ce3820b1a71aa6fe12fd19a79376c5246878b000b89aa0b010b449a080a901a24fb8ca8a92c5c2d9d52bc27c56505202f7e7964c04fb22bd6a8812c2bb759ca10f52402233ca15329bd9ea9ec76129f884355bb677470155d3a866727ab923316f271724ccacc23328a07b327835cdba5699f6dd4e29d80d45efc6708f8b7b17d20dab0c0c074e595a1c2565cb98a47c589ad761ab30d4b46c97a1a4d52855f8bfdb2fa59b63778c7b6676c0ef5acacb7155a1362dd2ab49caf6d95b676529da71b2bf6601e7fbadabeeb5827f782fcc80f8325142eb172660d2e5854c21876f1c40d93042b1b2b6e0e5cf2ccdb6f2cd7264ed7c106fdbe63fdd2d130dc242f1e71f5f9b7647dc2feaaa6162b6fe0cb3825136ffaad90b67bb67d2917e657bb8a623a5f550270072d95219ace90168bebecffd3733402fad12f31fc9894ac6bcb51ce94bb88ecbd5b66bb8ed88d2260523e21e4f6fd20d8db7df6c2604e0a659503426ec9b167a884f277a9860481afbecb69b2c8ade9c270d5f6d064b4e6c95e63d6a20e06f59ef800d07261906ea6541e77af7128f4fb3e6ec5932a46b1d1e0580d68896d256f29baa055ed91bd177cf1b1ae2f386382ad95c1da7d7949d398b6ded44859b9b4af1a117ca76cda1399a1def5085111d69fedea3fda8947c0ea3fa744755123418f127fb2bf57eb04e9480b1e20bbf9a091cd9830ef6aa6589df921d498a149096b1637ae5222c9481a826f34d5c5e66dcc2a977fbf141814c274fb2c07b6abbb973456354ed4de863c3a74dc1ea7007890129a9ee6ac41c026bbe9faea3ae9b1f1bc38fec4924b805143c0734776eded25925ab85aa943d628f17d5c4cf37e41197d1dacfcc1114eeedfa449fedd5749de33cf83add605c9d0bd3e32ebec64102b706961a40ebd9381128bb2b430748b5b62640a065cc0874d0092a4660bf00978b563257aaa4fd9e210549b5262510e695f5987369588eec3f6d0ee034a68ecb25eac0f0d9764fe27819d4039af013727252808a6c2507e2da48403efdc9fb1b27ab8b1de11a4b372b2311a939f3f08b16c77bdf15f3ec5a4a916a179ea7f64b94ab37bba8b8ad8cdd03b3a4e929f832dc0ddae5ec0bda1975ffa2f5d89c060b77c88ae263c3e5d0a157c3b2102275612cbe3d26a0917b525fcb759b958d3682550da4d9cb46d8787215d374c126db9da46bca02cc4742bc5ad984718477678b3c1201afd2c94245fb4a591593f38caa53b476c9af0784e999a50e62954fd2fb6bf5536c74a7a9877d9e20598977c9d400ad84cba1899f706d65666060f991f3483a2cbf8fd1294a7b5c7dfee0338414b7c7d8f969bb4ccdee8f205172e30c83249787ceb2030375b7588d1f0fd0000000000000000070e1c21262f",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 30,
+ "comment": "signature that takes 10 iteration(s)",
+ "msg": "0b00000000000000000000000000000000000000000000000000000000000000",
+ "sig": "d54fc0ae94872d53a8ec295b549a9754c675028a84f54c25695a3acb715e1a3d8ba9778b3ddaad25b8c487d21fdc62b879f43dd429dac7f5c303a485d0cbbe1e9f65e53ca8f722cad42c27392f63cda0cf5569930deb75d02bbdd3f971f6a9ec96aaeaee32be48c9fdb4969667744489b349bf480ea1249cd516ade4d4b581e3c41103b5267ba72b8dfdba0e4621a93edc18b37fedc35878d6f2bd2d0115cd5c2e243ba4aa02b95ffe6d3ef1f12801ff1ec09115d4255e202d957d0b8666b60dc8767b11f11b311d9d1f0c99f67167025ac9a0ed6c77c319a5d261ca5416699bb51c961d3a077c51949091e6cf0d4cd261224b6a88158d78a45730b6a86b4ca31380540d3d04228cd51c00a6671fc0036b657f3b52bea56ab503adbf4fad1e452bd3b1b29f27ba1e24d6f302ea788a7e59435ede2de69ab30e356dbf17bbbfe176c2182f870ad9a8a819f5b85587d229beb13fc6d4034722b72de83c1613fe434dcdd26c0346571cceb396e3389d08e1094fe069219a509e59ea17381575f4ab1b4ac79cb6cc64e5dc5897645631e187cb4f4ebbf1dffb083f7dea6bf6b4991a32dfdddfa43910bb526b84c797495df6176cd7e5ee6f42ebf6bcc28fa9fe396a8f72668d33db7821ab5ce54b7930dc7a90b97b9dd6b12f5d370bde4ad41955c5d7c1871632fa717237d4f39dedaa0cc4ed74900c688ae91571fa717d5c8f70837b8c27b26bb604ad340c98dd5d1878ce286b1fe4451a20a88a4e8902e3a1cf10268d26dc6446f7ec48a84b8bed9641004e1af82b679cf1bc29c7f9126f8aac9688ead72e14c4fb18292ca507c976408603bde8ca2650e3e50043ee112714692f871ad28305122149f098535424e4f278730c0be7c1124890cdd4260dc32d63db460399f9eebd339b73a738b58c0a008c857853f0df76789428213f65107c4359038fcfb366fb8cd74f2d955e6f2b30b3e96c70d9100c781f1d6031e210b541c4eeaf30bbcb16ac3c7b21cf1093fde4999c8fc254eca328dbbff7c5c880beb3e295d2924f7763720d5ffda0cce07e8889e556edf40e681e6894fbfc49413fd5b3ff232ac029579ef7f7cf60bd6ccd48d9f76263e948049a217f12453db900ad213e7f3e4fc409710fee4c92cbaea422e755cf51505730298decb37d805d1d333ed46a84e3c7659f187a344f5090bf338bcc76aadaa1e77f726b2b11880ef162f5d2812890a0dfd7b9a21f294bf18f6b447d1dfd92d009fbf144fbedf86e1cab012ace0a2ab31401c5f8f8aca4dc92c3609fc263cfcf56ef858446d9c66383efed916ca0c0ca351b539a7b4110658ba425d35b4c2cd1e235ff2c1c0840a292f23e34ca7121273ecac5ba01715f4b0d35bffec379da93405994ea997209efb895496eefacdfe9161f7c69afe3cfb9fbb3b68e105edbb0b27b1d0514c47d8886d58dc00c6cc20612630b0acea51396ab086c346c07206888257b9af5ccc06b867ceece53b4ebba63cd4a374503a524672527ff66f570dac73094f90c6dbd8fdca572a9388d243f63521c681ad8ea17ccbdb4b1bb215acdbae279ae5ae1908bae519d7398c7418cd56d0804eba259ac01a11789d538d848b76afaf7b93fce336b5bdee63d23b3cd6c46dec665af77a8c4efaeb9e0ee1576fdf7aef9807b4884f767d6c3e14c99c14c726c686ba8feecfd54c14a5234d7ce4ad7093c673d1251b353edd080e30aae264037c61ba8540640aa38101f73ae91d788a534511314b0cc0b4c52911032bcd286919ec56507fee54032f79cc1e1d6cc6c88d9a06215e9f3ba38d5f7bc91781e8cd863108300db6adebb51a790f7a2ebbd8fb116596716b1c7028c8cd9c1fb1db566c1641dc732d41d75fc7b8b0151d1daa407fbd0aecfc0fc484b1d43f68ec4614a32a38864d4acef274c6ebd8c8a6450a29d4e63503af63db37d22aced927a24dc40870ea3a891045a5a77c906b963980f58c5ed754ba710257fadd4f50cc13825a69e3548be0f5e10f6322137943e44de4a5b3f48d62ac256d7309e942dd1f3f211c3b8e745f79984dd25cb9c6650fd5c7ccc6e222852d8160fc8c97b52bef915407e17c88cce2eb560d359a92092846bde8f36f5b1894a3e69efff64fca4d6c0c3259aeb556370328a3eea80c1b2e61ba1f9ac0c5bb047a4084aa0668103a51ab97381bfa7e6a6b631e71a91d6191c6983d6698efea65cde4a23dedfca7e6b9a329b132c3865308d7ee89bb49de4bedf2f1b09dbbf729c1f0c53409feed48a120d2cdf57301974cb05e78619c848ded1fe6fe493dfcb581d5bda8ff0146508ab2d0caaef2fb1163bdda0f57da71805e6e53c8cc56a33d3bac12250ba331f380f090d8fd9c29c94935a685d6ca3567f140ca4278970ca42eab4c75056700bad477ff9865462dd82f7bf05dd0b4acf59b238a9bc9566997de3e3ffcb1778d7817b7196e3d1e06efb4c6f907006837c8a2e5117931a3921965db84f51390bf48ce8b54d44c6d8af12dbb6d171d50145178822fb457baa2b78246540fd9a348fd3667fafe1c4b983665d2bd676dab43a63821bcdad0896723b7b6c33e78eb9dd7823e48e028197cf494b16ac3fe0ae9978b369ae4f144c7aa3dcb5f2263cd2a29dabb0b14a442d804fadd786870565b40874982fe9a1f1338d1c02e286ceb42ba0461a73bda8e2e1304dbb98974f7dacec8d90d6385cfef3f453dbd098647eca6d33e028fd6c0279a090e36a068871a1ac16e298aabc64d4e7d66f3e6fcf74f56ec909d8aacf8db5d9af2185fdfe2de96ee568f78f94910be75ddcbe9b06dd7dc290e7b7e162bafb6a3cf8b6c90a8b02e417b40b632d7c0875e37ebbfbe21f2b60535b2fa76c3b1cadbfb8d4176dcb13b530e660bb2340f276d3be55ff24b29746070bde345fe7bb8d06b7a4dfb85336acec4bd02c95b8819b81d1611c2a61b31f185d70653011f7affa1f6dadb8ac5e832659e09f71322a60770ab18c3bf2033da08fc6bcea35c4f3d00b36d9beb7e5baeb7dd63ebce5bb46b600be9fb7674fc4788d72f7a98bbcdb23c49dc6d75d7223dba5064cc5426c781ecc73fc08a975039558ff2041278116ba8a477c9da4b4d9a19433de8709eed7c18a2bec23aa6c2b20a6cfe1e36e27bb4f4c2b0fb74baa624d3e61715aa9f0188c45d4405ddfb4d31af661defb888150116639156a92316f1d77df1c3f25055e5ecab769531bdeb1f5e75bfef8e0b521fa6df84ff2d30544867bd556e054a85660b8515c82884c46f8f6bba9e7b1bcd7ff6858d97d219acae3328daf5018eb671965e8bfdcd1660785e0377a72173cb26c6db4394a7565a91e119ea0ed09f549edf01e9bdab543da2b1372f977cf7402735b5646514627c2fad38370e10ba0271390cf987e6fbe28770961cdf51d863899cc6ca6730788815496ce52e80ccb7a8e4a4b26642db8d652cf4db330b92ac6d96e7d357432dcf15fd831fd3ae65c57dac7e4ea822a6f24744c2512127fe386b9caef4a82f75694779a950bc33c2e86d50efe6254345793458b5f3089df8a9b21268c5d4031fbf095afde2d9f5d7f8e79df08ccd2e6c892051ceaebd82fc3047a38e6ea4fd6372d3724af26031b5cf9ad7529f89bc45b68a25d56267dd55cc4b768159919ee83210cb0c2a967fdf9bacbdf8b91a2adea2c51d73712c8dd051f17c6bf74a0d1607ea48cba029811a24101cfbf6c3951e112d39acb3522f3a38066f048a0ad2996f846258a3d136831619f598b408cb6db93d4f2abc1875eafbc778623ae0f9750995372527397f3d427d1a81316b448ad9d82169ea3873a0b06294981a604574256e9408770e2e6cb4c0fe67931f015d6b844bdef6f703ee80b62517fb81f9c81a20daadd9988f912578c5ae932899949256f09a26dbd44eeadf93a708ffff3d6edd1aa55bd7e681564f4b183176561437ae8685be77acc1878ce9da23b280c1b5b46dc34c4bbab39a5969dbda6793248e0e2efcb56ffcffcc40332cc54924f042ec3a5008b1ed0db81bb1d7af47e110243bf388bd75af256be280f3fc9486fd3db45b9769420c159fd593eaf4b507a038760e72e65c766a120c9925c4cc4880518ca1f810b52c326e46dc489f694e6f68b13ffb669ce5a1bb399bc9d25bd5d98c2842e12a0ed9108ba5136b865d819b1c0c8fa020d3096935b78c832abdc1ad1b22bbc80e10843ea4fa9412002133f5a5d825f86803cc699e42521a6249b7a5a8742b9b214e6557c84609b1fed79893ee97fae0172626a9f00ca2d5f7a7314ada0037ccdb73a294db5235edcd6e5ff7752794c358494a9c1bcd35046cccd6e883cfe07a47f42a9e8857bcbb0d89a388a55553d4dd120b3d30d6ba29192f76812a21209984f4d288355eac8a5f9513e28994ad8780b3cac76eff15b5e0f4113d1ec4ccb20392c282e14dd52d370369eba9eafe0175ffafbdbf72cf9b99afb23ed2e9a52a96db144837e0b83d31c35518c0becb701c8b79ab7acfe308262028f00cc9bab4cf905edaecf060c77756a0d56625b52e26ca4f177897abafc4e730d8a2636ad2b065bf32bc17c954f08868c1d8a8a804e5e00b3a0759a174675a1a9c1cfd0fe052d4a537592c9e7edf3f7fa1f253966a6ce104a65696ab3b6bf0c26727576ef4a79aeb00000000000000000000009151b23292d",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 31,
+ "comment": "signature that takes 11 iteration(s)",
+ "msg": "0200000000000000000000000000000000000000000000000000000000000000",
+ "sig": "b4ecfd11224c059a2731e7232dda71f943490c5d84a218d2cb00a6bf8f96746497b327d54ef0528952171868270aa6cda099a943123ecead4d61138a5a2bb90380865ba0caeb5fe3a4eca46bc8da8dd6c41c5294f3fddd7aa138e1386f8f833c7271838853873a61912813171b0003578a8db71536a98eff4900a138a1848cc45475fcdc2295fa322b21d054791db116b6cb123fba5d51ed4c133985ced556e20590b102a53567c84cf41bc68102164ece90b87744aa46dd6c84c67ef69a87f34093ae127de228416ca5c795ad3c4ba56097119e6085073e736f0dc4cd51c4877d022650f911c7194aee9ff7f13f94c5f73b0886b889ccea790cd13c6f4c52effbad4c4ab89dbfa816b3ee6bc1e84e3b4d948713df5a3baa2ba4a2fb8d9978cba124d214b251a1594f956c5f175d3a5122ea270a085d11f133810f7ac6b07c51b13f02a590f39b50b85c2757eaadbfa802dbba616c1b1077f15644f1e773fbeab05111834df770e31a460d430867f3f0a1e4a77951f54aaa1b04409dc75c6e4e56063a531c30f2e4529f201a641a2a7b682f6d26e9f18067f16b0d619cd7ad06874e4c5ac7f7f508598bcb044486ef50c1b075f8f879e8c7ac93481f4534e6c982ebf9b16f0f83c94504e68ad99c187d2aace43e1c4726817e156e2ae2c6551f9a2285ccd5608c131390058cdf292e6619f7405e68453842d8e12c08d8f0cbee7b25bb4841a9afd520a4a25f92d00fd65852a0f03bcb70c49d2f95cc06f64312fae537bfd4787def2b3c321f576cda847eb14666cfffe2cc61c35139c88a308d54ea4f7500fa1f1b69abbd50e85f6baf0374cdecafecbbed52ab0d9d72ea79931d78d8c86652ebbd30dea1ad90eee7ab63033f4e0efd14622e5e9426adc9fd40847549c304535a5eb562b89b38a2d40d2173bae8cdcf5f3a049c3720db29967c65af8485d12dac3240c803b128fd89eca7f9afe3e994894c4c6112168cc89db5c924de54b346146a917b0427ca196eb5b9668fe698f678f24c4d612092ba8f7bf26475838dc52e2daf146ebd915f896741864b01f7730d02b97b3ad58eb224148c33c016fbbdf1435e3e8b842f2d42d4d427f0543f4294069394c884669a87d9041001413d257e5cd81354926399361196f40852940ca48a4bb74ccf812883eb19a4b404ceaf245b83eebf8f47ac6b0d00237261522c6166438018ad900f6db322d1bf8efd6ef63a0065a1366d93885b2d1c1a13fa37d17419a9f6ff878b720001c1bb16685f8b5932b75d734d3194b9eb39756a7780cce344be03fe5655987d0bea11d0a00e526c7eb479632a4db51d056ad351ad37f51dc14780b4730662b90aaf44ab5f2e305685c641411dd2b400baa21b2b44d723ed7af3ca3758b850675df9ef5bd1707e90ca1c6fd462b6d000668dd625023bbef9a6c244d27557afe307382cfbda0ff068fd228b863164ded33ea50a16872e759302dc44b4f3538a7dcc8bd0f82385a79effa8cf7db60d09bf8a349dce50bad2789cb1829a6624feca1d15505c5f37aa8e3f08ae1ae2ab8274498546b2931c2a823427c2c5200bb74739953a18b9cb96adf21493d4784e08aa0318066ff0b75ab9427b21212be4f09c3413c9c84bd704537c850e30fb12bdd862ccb1dbd1c31373ab9dec930100a07b32d6c6b14afe50e5b5b8fd2d37a90a443e3cd2761e31800cb16e31dcab74c76323a0f462ce7f7320b75ee4c21e0f0306c67a8f69201454c38a466f183431b155080860c641adeca00260567dc73d5065e1acbc055351c2eafc1121697cff2fda1eab331ed6a3908cb10ce16ca8fc6179177e23f9088f17232425b59180542056b8ea61d7ec0e58d8938fd205fa62d7693143d6f0abbc6cb4f41cdbf44dd67f5d7a21d7a0b7536df2a4609f644a7f8d96b861e9e853bb2c9dd828c73146f1e9e20b46a067e48b1f3694cfc44a256b3bd97801d748ec4de0b3f8ba52bc2a8bda92d79618045ee5ceb20b756421dc92747813aa625839b3578732f2ad1d801935718df8d5e83edfc3c23e5a5e15d4684c42d3ebfa42d013aeff74c4ed05f8ef5143409a9e1c1d8f61baf5c9d0e3b072be3aae7ab9c2317f2786d39b108b12d948a0373634e7cbeda1b35fe9ce694a825d6ad5d83743df1e4e4537ef7fedd3b312d56c0754426f23a865dd667e6896a82e6062a1f5b6c8a60d08377d42ec5b43c534e634d9d85f82b913ca10922cd6dbd2c3d7d35ecc98cb37af974a615831846dfe9aacf9f801ca6cbc4290bf5e8d6bb832df0dcbeb93025baa2ebd7f3b4941e617d5437fea49d5f64d78c2e2b422bfad3efbc4bd2572cf6559cfb7001e4886959ece69b5305f0799cbb871b540df18c5c1935ddfbe17c491b9e1e82c2c9a1fee6879617463f60effdaefb51bfe749ee3fc2905a3a9026e087c984276a543cc3f4e7a6948c8d92985d24edde89b36ee6d9b3d7e300936548c34436389f4e7bd055f26a856ef9cc56de2733cde47fbd173a9874b73d0b8ac3a9a09502c2dcc18585810916a4ba6a72bfe94bae53767e55495207c2989d77e0e0f07e707f66a1efdb93c8e149839ce72b31b4e17d616ae0a674cb349c2d9fbb5c72b833e7b7916246c8ce495b3e1d7b199ac085dadfddb2bda88c8529474f245797d7756251344305891b098c711dd6a74d54036b299ae35bee1fe7284c9ec11bd8dea6b8238690bc40648036d56401f26b92584f726de2445030cc9865545447abec4b4e2c0c06681ec5ec0243d845f35dfa8d80127fc2542cc04cff53842e977a3e9420e6f3303f5d1c11d7d09c15fb229d0d432857987d6ee4440be1509321511b8cf88aed7cb27c1d745b672492d183815de62f1d8f69c8581d7e6918f13225f215f313585aa597a3c8876ee67317c0ca184bee5fdcf08ebcbf43d01b0049af2455bad78bc8c28f11252bceec019032e4feae4ed2c5d0670f9c2b6d5ee96055469c25661fbc8c09e1a486013b46cfb0c0eb4774dfb65b8e3688a02cab987923a98e7f75b44261d44c4bea44a0df4ec2b8186079f3557bae7c951009a64cd6bab08410df3f4ec65b58bfb8e31c3659d1f4b3254386d850385eb8cdc19df92f011d86ce13ee526bc524bcb465ef1aeb8f08e809273034be71d95064979ac196d9c53fbac31789ddc3b3eae14d2c1e1730e2f5b38fbc352759c1f573ae742c6cc2b15fe41fe6292f3856c328814f7d70343d3320aa754f162e530e666889fd0187a65c48b42bc2cc87e79d17102cbf66d8564ae5fc71b92ca49b04d1705394ff1e6af4593792d1a6ca5b00e972180857af83d289f6d0aac81e2006eb40a8d790c7dea7e075404e5e28293f4385edac77094f2e2dec38a15b12894787bbef906d12f8bb4657c7e3e2c8767a310277f63cda040bdc68c5340caa2b39b7579873cbd593cd81532e628ebbfdd8794b4fdf82d6c6b20d7f6bf157096a96a5d327a972faa5cab92c442e468cbd6705fc8ee489489cc687777377f87b470a84209e24e18150076a1a462a9572fe037b8a69153d1b7a41b440cdcca5a2d7b4d224bca60c7184828eb519e77f2c98b4567f23251bd3d01d3ecbe70eaead160681053b4a733898d74206bdc25eb6fcec2a65d6a972c680e0aaaa1e8b1e3ff095978213d242c6af612a62dbb58425037cba5209588ccd3c11962ad47a9c4455b98a626f92264a0527a28bda7f47e804ccb393caa2590b957e5fe3527c0d5aa2ae7d931fbdd2ebad07cb69be0d5179eb6c1343b3bd4448cfbca6ffa1597678f0bf6e9d2f81f4d6e3a8a9d8c9686826c86415ca025dcd1fa1a5dcb3ca8df92b2ea76101c484dfb1fc58d35c1386a29e588a6c80538ddd18dc44fe4598627031ed1650789b3d0cc1233775e1d45e97504d33043cb721a6c210d6e4e6b70e4dd9ef000adf591e465e30adf27aaa4d8c255f4523f1dea00e9cf978687870e8b75f05ce4fa8dd6dd692e936dc2d48b410d3b626faf8ab013f7be8910da69ae37d1ad99136c15e0e8f4194942a24ccfd55544ef63e692f1d4e9b621b28fbe8efd22920983167daeca33e0734af9aeb4b77af4cb354cf9489676514198a47d8e6d614a76af5bceac2c32799ce43cc010fd421468f982bea4f56969953766f629e43cb2a0fbf3d095f98257a2b6e3ba76f73415d0d920adf9b21bc102fc53744f661d42a9de6feabe59b2e273733df75be8ac972651818e1a72260bff1098c06c572179f7c5b0c8e5e1c9040baa4dad473f96b71b25d9dc16ae2312683868ea048f85933d844b7f2fb685db40ca89f24231b14249a3872f313c14124ec1e505f14c508ba483e6a4e559c8ec0b3dd7ff0446d14e4fda415ff4031fea1e65de59e5322279112ac4f64664066c4b5bf5a08dc160b6b313496546b679eeb31315500d81504706ae14ba526009a84b7270d9f9ead65398278b6385cc136c69e3e431843439b9a75e8b44678fd38facd65c638a3b1245a78bbbc26b85473a5569c5e6e0d2499d1570203ed563540096bfff6208502b12f107894d767798b5fd5ad7389bf55a6a90733511bf5d6273f570626cbedaf5de00c5f905fc2dce53f0f90d67153492082255889a9ccffc83a1af2d45466e787cd3dbf5f7fc181c2024454c507381babcd8e9152a6590d6f3f5143845565fc9ccd10000000000080b16232a32",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 32,
+ "comment": "signature that takes 12 iteration(s)",
+ "msg": "1000000000000000000000000000000000000000000000000000000000000000",
+ "sig": "5fdae986af0e453c98062fd46d281750ab398c0d9be681f09d8a22793a5fbccaa0982761e89509ed0427f0ec73c8f9b4b905dd1703132646ec472f0908440c2e21e690e58ad56c3c4da022c2459c059e9a97709ff8327785011f0378c8e5c14e3130ebc43b2481b016a23ba76e61c2e0da8bef8b6424eafb1fcbe6c1a984ce767b0dc9c824ca1f9a5e8896734c3bb2e01b02bb18138ec550f343efb45030bbd2d034e859145fcab6cf42d48e8e6fbc3f9626dbfdd42044b86adf6dc6df412f15f51261373eddfa7ae848bfee57878380aae7d75612b0aec5d8e1f4f8809e14bc9b244fa50e5c345decf47c597d3bb0f5f2f0e6bfe3648bf7c4ff841d4861a3faf7cb09bdc97ffa37fe75fbb79784e858f34ecd2caff2ffec7bb53627f63bf4f423a290ac26439b722e859acd4fa61673deb275b50a309c9a1b07c7513d8718eadeead0703e5d4db41618dd23901d1abb77c6a728f5565c911199e056dff8c3c0a8ba7cdd05df179ac37292dd2597e38e17eb2619472cfd4181b2b4aa6bf649757010cc5e67121bdc70454d429a8b42850c1dff199567d700159abd3b485788ee01d71ee7ff163c4557f688fff928c5974f56cbb352ba8b3ad07b7ec3007dcd606b4ab84d42b004cd2204451d40198bbb023bbc9d3891d17080fd7d50e282a715fbe97f787a794d0efaa64db07c373c257b0770fa0fd8011fd15ae4edc1d4fc69187385634a48b7405e6c1a473c5640d5125c80b60fc5e48d86829625195a3fdcf6ed3eaea76a1577845d26244e1dc679fb0386d46851e80b130da1defc0c6797036dcc65ec7e0bb485d1f680cdebef97f2780d20d8d664a90b844e1fbe6e7126d15edfcfd37877f0c07d483287624b38000c5689e77fba19d1be415da83501494b0cfb15962243798f6f415206f77f3105f20e6dd73887e7ce26d06b968f3eca04b6a49ed9c31ae0561cd1418268b8405cac00dac88ba433b98480734bf981c4cd74192fdce032c41ba9836088b9e0acf8dfa97c085cc60ecc75f1f5b91738938c2a19764089ed9d81c315c1d91b7e3b1a6d3beb93893e31ce32f97e8c8b837b26e07b523cd857edaa268ede52e0b44f3e54ab37d45d53079cfc5a58a8c992d683a37e9dada046557adbee8838e10ef464262cb0f59029797b6943b7e6b9e0c7010dac5605d6d581a496780e6e2eac7b07b95abcb6d92acf293cf394140f0fb16302dcf94992438050e84a66c236f21b56a756ed0324977ace2196ff58ae2c8db667b0daa54a2d42a3920d5fb5463cb8d06a2ff730a9f533f7171ff470b8ada56521eeb0b5c150308450c6b3821a071fe079925f62320cadd8da8c180fc8a9daa2c8e17561b21b9fd4e221893ea6553a4e61c1fff9fe8ab25488ad1c0fc3521a4e236df4cf15480df5e2b75d67ae5743fa537fa06575e86117782f912cf14b9c67a461c34632fbef9b1328ac76a8dec3f442541e777241cb9eb39dcc009e87532cad63005e5e93a063a32012fa889b00e9df5a63fc6aa81e1cf8e4d967f8036b59b1341ac3502da9813bcd4401e516b716cc2b5ac04f5e57895e39965a3a022f408d40982b2f9e08324dfcd060130ee5f700946e09254932d85b6a28c7bcd5395936f08ca928325f0273e3c268883366a662ebc9a7f1bcdccd0acb6c454f79d67bad0347d85e5acb01bf3413b6dee73a208a40caa15d6208803e3f9cd708ec17497d7ad77eb3ce50353b5cb2b9ac447ef4d58a9e60837ca7724629f32dd894a3ffc3d1e7adc206b385b82ea0bb478f1ed7f675177787f92f1aecaaa2255ab5b48a4f60d2691ec774d3caf8fe5d5f2056f125d240bb82114cae0ce31e2f0fceed910fac6f7de9de4da88e8149b4b749979d37dfc3112e3ccab549be830aac9ae053d8474e1f248ff0b5e598731dd63cd62ce630b55933859137514e84ff5a4059c0410f564e477a1694ed2eaf3169ee8a9ba5069922129df8a94e4ffa278f4fbaf52a605aa76516938eca5be11142bb83087e6def74264e7e991c763e5191492035f7705bfdb17c22d4933fd2509dbd25840614baccee3bd3bd59a377484b55a09dc517fa298dc7f04a24304dc91002c000ae61bd5b75242c0680988d9e7e5c05f44aff949ea3addbc4fbc26a0ce3ca9f3229a4ebcdb6c754fe95748c2ec479b76e311273c23a1d3d4816de71a9bc26a74153c624cc449f068ebe2cb6cee7bb5e02ea4720a86a00a5e0883f4cc0a6d967596672646d439aef75fc13e0c4e0890ff68fd3a50efe3943548b446c2d2f89a2b16710f22cbaff9b1cb501675902362b0cb5f1ab9d09909952219eb933ca1e1dbf271a0fbe1fe40c928fb5d1fadb935b1fa84cd939310aa1d3c30deb64aa7cf9ffe7301bfe602ad3596e07e87f65e53b23fa5017880e70053f65aa7345b94829ee3db131813bcf76d0acbf69f988e88ca3f49cc4311ad327edd90e2a4b86910880f45c16c9ba8513fc72afdc4f4c272f052575b71e3de70f07161eda29c83bf83aef0fd46f11095cd4fcca33efd8cae8f8c2d0787112723cab9cac9ff9fa02bb45ecbc9879414151751bbbce8cad5c60405150e0819d076b699d9d9fb62505a6c104587302fba8fb17725e80e9732563411e576bba1a503b10ac97a41caddced4fa591ef6980aaebe3505df212201fd0d892d15bc08d6501df3a3263ff810dec62adce7262c07360d1de212b1684b239050a3c87acbc7025294124f86a8f35313a97ea373a701ff4187a7eb44e30c282c4b1c30702b442a606aaf3d5263716ff0fa7be107d0874581703f9ac04b6f8169872e94100ca1b11e44cea2bc63f51cc1822c65d6bafa8c639c8f32b4a60c928fd049282dad586e46cd622fc34f1fa5ff7a67d06a427fa22d05e485394344a1b41e8aca7c624306eb3a6c9ec319bc65d8f878b1badf3a4743ae1b39ae8f1ddba00bfebddd149f5b20836aeabee2c6710aa0b128fffca57783bef39e66db6df7b4a7d7fae067d3d65c63b020105437f448d644f4b0bbaeb0490ec5a337013b4ea5a16f82567ff2588070afdc6d0998ac6a11459ca7a8799dde3ec3411beccad252e897a360e1d4ce9e9e0a82c57c79a24abb99ed5190f27e43144f9fcf076becba38afc9640f9d18bb67f6d4b5652bd5393c8483ee348a2ab3431cc92dce30d0f069312a671fb283aba4e527c72781f59fb7f6d1704a3ff80d49fb53ece26f16a15ce40a5414475732384f8eefb51cd22b34b8e901c43eea8604354522c28031852da10e0acfe6901a3321a275f86f025459ddfe1d90c561bdb132ed4c22209e71728300a7f5ab0c84b7ced352ae3321462bd75f6976849448018db9c2241d2cfe684cb6c3678de2f1dc91a4b4b6c2572831d4b2036aa457476f8f19be70e405e2cce6e4e9b9e82be48e078216747dc6d63359debfd2fee14a0e8bc0de95a381272d3accd94617875e9c08162817d5294549584ebbe8dcb36d94a6cdce34e4f30c52541d425422ea0e2d1c00f9b381d021ecad3892a1541dd81a42a1eb8a7362b5a125651db02f1992efd6f9515f3f1ec66566f91c1876d159c61195383a4c5e4c89555fa026b5b3bcbcd34d8b6b0eb026cfdcb8cebe45884e499f7bd1f40f1e4a2144533f2d57e1eff0584805d5beb7d6ed7fe29e088379d1a7ee70805f0f8133d26156724d4ab6560d15f49053a1c8a8007a8eeab8f6c09265c4a545ddba9eabef6434b191d87570ad3c88485decce9cbf52a11895aeb82dadd9921522f368843fa7e246411cadf0fff4b236641cb516057f102e9875e9363bfbda62c5d40fccc935eadaad4da3723b7ba6cdae6cf88b3d14364b6d30b435627d7781aa1003bfc4c9fd145f6c6e82e58df863488d27e7b219949d554c09124c582591305a80964416a18f70b563a761ab713d4832a1780300c7ff01cc52be01a60ae53affd3cd4a0c19eaf60a077f792378be2d3c958108bc068760e1b920119b311b406a5c59658a9801c612140d9c8b15461701ae2ea1bf16ed9650d0a26b52dc59d927efcf8174a421409877064d17ae3bf17831e4759e3de408c616c9565eeb8cbf83729669fa7afb13e662961db2622136bfbc69f1a80a150a604c38bfde2c8de8eb5addb54825376d4f8b0935b6a1f34d2a82a29c8a725dab50649b796379d61e5382146d399df86de0fa51875baa1dd2b3b1490e34578dc9da393fdf26ebc36ea3c40b760e526e30280e05529ae6e5f9f70a41a6e36da9f9642ea74639a5631a6bb30f17f3403144d9b503d921917628a327a5422f79903a205f7dd33a34e93da5a553949e25c29f952e3b5f8fce39cd625c9d34c79d414f104a69532b4596bf7046c3c6115b4de3dded2bc270eb4963db75db38d73f2fc3719dee8730c12afa6cce1d867d7e949d7fb607e39bd2b09c1e80fce2fd76c41669ca73b9bae914f42a5a5903327059c7bda73ac88cdcde315d5de897fdc188b42ca521ad5d80e1a6a95c729f58e921fe2c258fecbe03858412cf0d4660c6fcb6c5b16be8342c970bb19390b7c393211ccaf35a680e1da855bff9c004b067780522c8f26770559af10a0fefbf887a4035c7456a368e3d9e50ba1423039767bdd6482e61a2e47829192b9131635608a8ba74a4f94959fa462aec7e6000000000000000000000000000000000000000000000005080f161c20",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 33,
+ "comment": "signature that takes 13 iteration(s)",
+ "msg": "1500000000000000000000000000000000000000000000000000000000000000",
+ "sig": "73bc2954da39fd7abb7ef32f531cb8144198e50cb52dc4ebc9dd5ec0edb90ba730716d93157995e37263b1456cf55882131ce6d537f10096dd8500d16166de80f5bda2f94463e8fa18e0b970871e4cdde1ce7d3e154d30643fd4a3740908fd8b1249dd3fc7da0a5ef591de4f308b44daf5018e17278267b56f7df5029a130c736f56283d50f97ea4d817eccc6008be603b19a70f1526e1d3a2b1d97a52402eada5f3c7898eb16fa2438b0e4ba9cd745b1c94f0a5c4d0be6ba5ba9f0186feb4f741260fa0f441f1839d3264150cff7792f5269bb2a82cc360e30a15f61b2568467d9c8d404784996dedbce426c71001748c691cc848e776023cbce13438aa0743b6ed57eb614bfa8fe6b199a53207c45ad762ba80efdfdd31595d7bb0da2d533aa65ab0ec3ced551a0b6ec2cc8a216944e670d7342cfa367542e86edc2086dd14de5c0ef8b38d677379fa986548bfd69e84bd892af28b4028687ad8c94f55ed56b50d611ba6de863c201b16b0b9de779ea393be40a79b6405bcd3f1f8685018c8fa61280289a948831ef7963f3d30f3570855e58873b9f9f02fd344f8362ef65f723fa0c5b8d628264e74cd4fea73ac6105be0713e80d52c5bf55c21c1f502d73ad0afa6144b6bdc227570b85b47143580c736fe4f2b201ec4f4f78efc3d4afb2a4d81c8184fe36011f7fbf197335ce1596a0ab39f8cabc02bc77ffc005665dbfa356b43ce805fe0dd2c24a9e6c363cf707ead215ae245963c5684ba85b55118d6e8e55c040012158645aa0d0004c184f826b7a43a2ce81a3bfc6c4ea5651e8dfd10fbb22b371d03e7dfbb3aa23a9e604d8c452a3e065afc05361062db3acd697e52614baf0afa010b7cce9e2c36d8e41020951154695bb13bcdbfac5eed9bcc8f0701ec5bd6393d83f828d3c85a591bfec897203109c57b87335c48ebe20b8c963ecd0d973c2cce02676fbcc38febf292616b05226c523a4bb6de9222de497caddef9e5bc65fc084e152f299538479f994dc79e19c806f0681ce43fded54c634427ca1f14b691aaa1e7294741ab9f86c15a68cfea5f5afa27e068564353ec51a39dc220ec0636a455604671d2d11e4de86b5d8b766b872563ea6d7a507a5c82a1babc6dee32af466d560cb9c9835febb4aa2d07d7205cec32209df17475eb635861e595b1f4cefbd9540aab01e1db317fd0ab6cf56a03f12688257028dcc7f344a87ab0f16c2ceb3a7c3cfab665c92a4b03a423eb158ad7d3a8958beaa417b4fc71948ece95058b56b9fadc25e9f3acda7020cfe201c1a584fcb2ef38c9b524941472d4651d828b17e7dfd31f022f2430bcadf48414aaeb49c21e52f40d5feb0e9216be4031c35f4b8cc6ade2ef156113fe63827179b0e6f30465111c7749b2e99adbd5e451f121f6832a4121abd9510a752a7a4a9893942d04abf4164346f4fd32a01ab7baeace93f678333c4f27889facecbf4f41ab234fe2b24c0de9cd58ddc969d53b5c7aa6ffe35e58dcbaccdfe9ffafee5b3f1d5222e6187957a6c653751b631f439b691d5f2cf91808f65de831e4f076c37b48fd9f96a09144ecd06510e3093429b37abf729e09e1fdc8dffade760a584cb6ee668a72d4619f421d5ccd663d379e6f143088c143e29f22ae9d0fb993e8447cf44015c36326e0efe6f16c547c3a212d1dfaefe654dffe6b231c5c1d8b3288e4ab38880b324249087822a32eea1ba798d2e7d204ea86a990c7974a37df998bbd7bc99d799458b231b4e45cb37dae19b46a95f597257e75df509b2f3a7d7e524134dc71eaa13ae8d585fa7cd45a6ca91ea96085e0092035ed9ee335fa047f4671d744a7b559b52a738f0d20ce5ca76127ab9d549b869a3eb6b66c57c1d317f68f3f6768a7eefbbc9ac06b4c45a6de768aa3b1cfa9aa19b792c23054ab84917628f94ab3dabef0d6445ebe8a374c4157408f1f84c33163a75b8f4646637dba50dc09846f1faf64589cfd1e5124f6e70770732df2bfd1102197d9a7f45215253cd9d05b7eef329c36a6fee9f3f38050658112b48c22c5561842ca24803b96d58fe1f627c2943ab1d9366d2abcceec4c6e55fb044e5a401d032f04f7ef2e49fb89f67da3a619ffe5702227a7ab06970f5079549dbf6bd4416722788805d4682374c982577b1977680e1d0a6af0e06ffe4103587b41f650a85db8eac9a009dac1f9f7589271f6fadf60c98f669f70989a913123f2ded18b2966abd257590ebae4225cc436cdea6430a3167f9f3f42f5cb135e11cf31b8e2e386ab51b6fddcb0e30aa3f2d8cb12373aeb8a364e3123fff93efe83fa89a44e97ccf4f9b5a107c1968436d8a08647acc88878cb7438b7f5545f59b2cb79e20ab8d4750243c6898859ee1d9d350b686aed01b2a6fceeb62cf9f824b6e76d57cb6f16566c4cac2aa17cdc8b72a2223c2f92bec38b0f481631d0096b2ae449370318bdd66e196537a24f0ea33aab87ac5c94bd0645824778cc329e76d5b38482d126a335573cbc81c895d225c3b724fe901ba5ee9052655ad9c059412d4cc25e00444e860f683558fc0cadcb33800e67c87b93dfe9adeca9aac911391632ffcee4a3ec48dcf03842498f674a6a8f689f058d825e931673d520700e284d3a26f2e5a3c3f2fcfee3d49f09775514b837dc35db8ea09e1db53d548ab580c4049e16327b5b0638a9f6e3513fc393122c9d9156ec532d462788a649f79bebfa626e38e261fb839f560f5276b36e462957674fee0094354dbb6275d09d08489dbe1fba5936d1801acd87dd89ad608d33f28a65d066f642117915b9acb32fc7459e15180e8ccc579ab2234cb64c6f4563f5a696eac76f158575276f773e0138545b904feef9cb44e1a13d3004245a33b476ad3e8170929e5e6adc68a12367d090091f7bca5493f7a448e88eb4f13cffd7f648ce368b092416f3b577e16512bb54dcd06e0bef24ed69396039741d37ff96aa0f3b7dad92fe7c67d32ec3c5d936c410329445c4126e027b1691f9964e39910ab4d1a6ec84fecd2934ea9e0f74f371ea279d50f70afb352064804d30fea26e4ecbea3eb6f96b7b4324913c71a2db4bd4a8f8459408eee1889f8ff15cbe14343403ffbba1d95c8b050f050e3bce3f394ed35bad88ce9e1235b3dfccfa478f730ca162355f1df0bb4d1205c8920b5b090851e9798487e3a858e8ae1bfcdd543209b1f8713fd1a80f6f3c8622c10315c1bf21c42d456667e64b1668f96455cd1281e3d76d3a52149621ec4beb651e245b8bf1f3f3fa770368fc83eae60eceb4f4d5e2b70e09a3015cb3dd2be4b307fb5b02db05a9225b6c21047b422c65ee788ccba14c86564f7fd6889a09a258e03ce3d802d19b33def3d223bd427a7cb4d9fd6814413e290a16bdda7acb39c477cbccbbad8c664aba0c97622e65e04c17cdcf51272eb8cf906ee15cd7ecded36bc66139800a4a7864401fe328f8df0505b1e13bf3bbad8b4a344a292d55a17019393e4f0105be7722837624b84a183ddb9278e9121b2ffcacc08456646653df5d5b88e77f8c61e341a869548ae1b286ad8b85ccb763e3d10da9c05e895fd49ef02ebbb60621dde417678ce965153284053d0fe38da260effb844a62956d02b1ec6e5c8ea661ac8775a95afa1861cec82c396a7ce98e5cef55429e3a4d239092f090ba10daa78811e59e9c094d4bd805ab89b5fefbc6cde6fdcee6f21b19c979e237a273e24d9db1d2a7aa6cb0443b5d8fdede41f5203442e658c6f9e63383407a4d67680b6f486254c597428f613e9478cd2b6e765029fb73ab72add5928752e558506e6ca46a3ae1abd4d2aa5f5d7b6556d07440b09166b0d93d5a939e190df2341415a132bbc0b742d3acae79d507628e1da15ae962ba93db1ab75e1bd6db1e99264e68db450bc6d242fa131b05fb73c050e6996c4c2f2ff95a372f12a9d22cd85eaa538db6e7096b765d730f7a35241935fcbe23508b18f5e61789af328cc00ba9f2eb9e004afb253317ac9b0ca2249f63040ce4ac99905508a6d349df6e96c6e675bd3acb3103c611aaead2046c4499fcdb17783bdddeb3c2c75553d338b877f6da0e9d12452943cf6040988fd036fd76deb09ebd8d24e464cad1b6f8d05ad9eab9f18c15b1d6a1e33437e874beded7ef0ca0e27f15229b6746cab74d77e334db74c013e45199e6b0c33e6da136c2004cdef5754c5b44d67085d9cd732bceb1cf20551fa0f183b1149caf1e39d88d6a5e0eebad539c3ec63ae9b2017d484866cbf6a9f5029e2cecc71954fe11c0fee7b1b36f8d18a0f138e54d45aff4f98aa922170a5d3f81d80121a29e6b2c8605214e6a807071675855099f305c9b0041caa826bbfbb216abf05339cc96cca1b143ec278ad3a1704653fa273d663f09addaa860cea934821e7f6d0d005ef1e8dcb62649907994c682481923300baafcb997150eddc0e3c1ecb6d911f51979e04cce3d1afcc40ad70eb0f3051189bafe36275bc313b5585126acdc44ba14a7cf6864a37a407069a266c252c121475d5132492be2120a43c80112360c847eb128b8b4b569153ef6205b6f24d0b5b641899b7244f0463324167071c91bb0f5f70777c8b92aac9cafa13181dbfc8cafa2485a9b612379bc72ebf2d3b59656980d200000000000000000000000000000000000000000b12161a1c23",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 34,
+ "comment": "signature that takes 14 iteration(s)",
+ "msg": "8e00000000000000000000000000000000000000000000000000000000000000",
+ "sig": "f35a6312f8a053655499f4476cecf4324dce61e0e98a6fddfeb391b714201119964d2891579c9ca0cb74b2850623808d9c2bf5cf38bfd051ec4acc1ae827b68383622793527e0eb3fa7be83c1f72b7abdd0073f7ba4244b7740aeb5fb66433847f3c8882811421a86a55833b05c1c2f24949ee29332f5ca5e9fe97daefc85ff6e9636b9d188c2d172c3f9644df60208fb298ac2a08490bb611828f1f5cc93c687b8a6f7441a8995a3cc50e894a11e9fc7f6dbd4d47cb087f7f3942a92ee10899d56a65d27eea66ccedd9a7722bdae4aec8fa6eb0b45be84dbd4c68560fde71d04fca514e10bcd733de9b3f99454b13cea8453e2c9cc5f29c709f2c131c972dfa2f47983d04d997ff217bab57d250da438b13ed640f3ea5017f78a394f2637bc708e0e7db2e5eefb18bb1c68d4ab59643135d08de302f9575548a2239bcc385849e1cec32765748940a011daa3f208da13ff97453e4d08fb668caa1a282530a0ff8e0d9cac67235be0dfc06d0fd5eb0ad56746191a84fd5ed68aebfb3f3d5fc2b3a391cb62958c471cf9533609bd564129aa6479f90c2df8ab3d5bbc51d9ae862eaef0e289c81fe4988ec757170289f5beeaf851888f1bb9b349d6cabebb5dd3d7fcc25c9e4dcca721f0e395918a69496c1e578662e3a42bab10070ce1c01f61cbbcd1ea2fe7dc18c318d649bb663fd7b6022cee490de54d309b0be08121765082bb5b634415cd7d16cd11e69f12d2bb927529554cc6cd2ea48612e93f59ab9fed4aa2a72fb78a7b73c39c7bb1c2bc3574fc7e2c209b64ae2c2e50781ff24ae6761e05e65f670f7d069072b6d73a479969b0ac345a5f1a214929e6b783d542753c9075bfb97dc72af2dd269a0e0a739430b04f0d6988206974d747df8d07abe115d2db2670fd66c2527f288077e49fcf1dc627464a963f031f438861bfbec5e21d973a5d7bb0ab20bc52ca3eea5c9f6fce2339e0a65170f5f7fe8c8d0fccbb1d5b8c5a5f7660d782406e18f75571e43cafd66cce56474b6d933edf42b2f01408d919df23334f5caf47a96b68e845f3b4e4e110e3614cd477ded26f1bf7c92f6ce93291ee809e61d48e824ac80317ce49224b7319d8e4e3c335fa9788f1aac31a3fbde6590c22216ee17d27e387805082dd3259ff68c162339c57404f291a7dbdf12f220575335e189d2c9536f412674e918d4e4d5f1761453d6a080b766db3fa486f961c111b1e661f28f3eacc0cb8e21f34fb143873113ad70331e2a915f0fafe29c0567877a8e947e13e7e7c677af3fb1637805c37877f994ea93cf6e2cac41817140b4721ff48e9a569bd285a821f5aa389f6e5b08dc2be22da23a31610f7f37dbcfef33a3c85b2975727711eb0b54004f5fa0035416018935add492f2cdc00cd367dfe6b4d16829755dd4ba7e5f25151bb9f02b31c05e26fade8b32e7c9569272887c8f32975fecd9c725ad92ee08a819e2f473c800d10c47798e921a69372b6770e664224f4672265d0b659680b0cc83f0724ff727f723d7022b966f67ad5242f312c5aa832deeb9a721957edc71d3cff4b19023462c9114c7341aab6d6f22bfa926128e98cd79c2380fa9844374e67b7317da9478add4579ded5fac480ddca2b9e19c4679447324286d7dee578e7c0b1358f2754c1840843189b45a8c69702f6be6afe95d4739f205638ea9d2059587724807d8f5033e9106791df3e1056b3b9d8972afc72746519f453c3b51a754cac0713d440c094f4b707cb07fbece5eead8a7c82fa6949b6289ee41e1da5b801924c24aa85b30c95c7a074f464c320c836df0da10898c912ba1b3b3bedcb64fa1bfe78477f33f5d5058e306c3ad6bde51908e9ca8dd5f4663185b1ac46cf6ae98059aae95fa0967d775f915256dfb90f80723c59c1d86ec4c700ba795ac0c8dbc87d9616602d7d67bd0b157fa9b1040c40c71e2c2b74d673ef26345c825baf86dc8ae8307651a14a06a341ed4a0d570b77c297c012740b2d678b6963ae1058e7b514da045867c42e04638b9cb361bc35770112492bc457ca1baf1811a8aceb3f622a770bd1958b5312201d9c2b228763e8eb0351a1f6a70bf2b8a746df2a4a354800faf6dd7299d4c70d0c55560f20a71b896553c731cdd65e1a8d83145f8c89fe587a299dabd29050fbfbc7dedad1aa67b96970403983d76406c04eb72dc8a77f4af4dcbd640e82e12628898345216aa350b8ca67136e4271bbd33670554dcec8d3e9e3f05424ef83cd7003454a9647f864ea143438519b0478230b794f7635a960ecd17565e85f2163061ad947bef93399f5f0977dca1bdb4999459f529fd7eb97e426978c10c20d8e6fe9f20aa908a2f734d88e0ad68f804e7698e69d065caac268e73025d269d06775047c028e1030d163730afd474b47f2782bc9d21af573080daeeaab9e39761beb659a0d1727f91ac9e28b1b332130962ade9a5c30376b23f3874e1dd9536d1c4db6dcff16224f1c6a98d4705e74a1a75ffaef200cedd73a79552783bb3757794c30c7ea0bdcb8b504212d7218253f777250369c8a65b321ff719d3918ad54eb1e5fb9dbb5b0a4925200f8edd784d1e5d5ddcfb20ebf6565e1125a8a3c3216ef32a2df02df47d38b90a45edcd940095d8a672bfbe505304cbe438f74437a34cf43ba2f6627c56f3f5b7a818c7dc754424eccf2446b0ddc03bac858ec34c1aa484738bc8bb6078adca3b2898cdd117846666410c490b5e6ead1e1fe3c231bb223a245a817d864a70743dcd3912d7011d70eeeb53ac1c0463359fc87a3cb179c7313cbda432b85374568db7610b97250f56a82cfe6258b4a68ac61e9dc281d5b887db4573b9f7a01503f243403e3e119f149ee95824f8370c64671b2e751b2c211c10c93ebd7fc8847e1d4441b0fd603ac7d8f6dc76e56351a26f8e9894f5370abc816d182d7a5f079827b095152e7886f087a9aaa5498dac8208b53133248f493fda96889a17ed9629a7c4b9e103ab59662a1347e0593779ece0fd00991cc9e83990e8c673573017329616cc03e90353a2eaf89af0b98731b5cbdff28b9e0af4478b631d6fb3748677391c3dcd342a80958b5e3cdd8460f4a3ef7786ae706991569bed078bd2c7a8902b1692a844f704f83477c456499bf6f743a12ef9cb1b560d060c0f864c8d84d3fa0162e1f128e19e16eaf230351d3a40999017cbdfd182037977a3ea8847877a1652abde40eee28bd9890d3e29bf626a1c7c5a7b02405e84be97fc9f3702d65854425c57dd85e7a680bfb16703d0d5c13a76696f15e802f2f0c757caedaf0844618520179d24d3f06273b87c9aa3cdfcf8ad05877387468d937904e2068522309518dca63a51c4063872b0b2089271b96dc1c62aca9423a9323295f2cdbf1d68e7600406abe86d54cdd1918ff3d763245da9a6ba4ac791e613ed73ee50aaa6744a2427aab021e2ef24f953042f6429fc451e39e796f6c7d64b3c40739b007699fed1c057f75d2d4659396d20f09509413eadffe78c75cef3e9eb65a12e332edb9e3b2e8e64795fac153a9f5bc30a7e3d35d65bee29cdda5afd93dcf7f5f42e4a448add1568d199ffb5774c3383cf8719bab694c22e5e3986dac4a679f741da198a228bbf4766fc7622ce5f517bdb900068c0b9b32cf4c563dea50bbe7025fb0e436ea86b0a8c2f58578d48f15eded8d19444906dedc2b766c376e6d0dfc90d761799d02afcaedbe35c9a30b3d302e4463186d9cb1867de8122009d52ff8fa8549451b438a379052ac63770cb04c8a80ab894efe019f414b48bc9460b33fa51978fdefa2f2701a440dfce6a50d92ac7df6b915314f76d7d79636877dda24ce3356ce78de29fe40f2ae4104712be865b17e9156998ae7bbe937556cb05cb155a600d303ef8df20940563b583bad366a0ec1ec023aa685eace86a495e5bd63d83b7d68039d18a83ce1ba5eb78f75242822d06601fc082518f59990e12b486a1d64112a80b80c6b0f4f3d5efb82bacf1b48857d06c305bf6f6eae815a39ca4753280412e340095d53379a0288cc977ba069962241bbcaf288468b9abd23118d3eeadbf706468e41199e57e9839b7c0bc1763d1b6a7a42187723373ddf6c9aa70765b0363dd4d5e70c9a9cb682b672f95dba7e156ac11cb3c526411b856152d124184227c53e45141ed12891d3b071a453b5cacb6bc07daa9404efcdacd33d7381b95ded01a2e54a7bbaab38096c08cdd795378ffbc055093e0602d8cc872f1a0e20e1577b0459953bdbe606a0147462c3e790e093c0110833f10e71226c1717cda055ddd82431ccdd7309648b5799384e4d776ce800ce7822cba4c2ef34045149e619cddd634f45fbfdca78df367d5f8c50392767b972ba01fa69b4907f1a610222943075ee385382652cbd5cae573f7edd8bb7f5f79e80eeb85669791f444ad3d5a9754f1e6520d27f563341ec0646f8395ee03e89b091a7e8bc5265b9f06040cccdca852e1b25cbc31c2a5b65b86d5ee855f00c7561c99cc8a622e8a4e7e2d238db3f48201dfbc381ce1ab55e7d6d0a1c5c5c7de5b095161b90a2696907662e3819aeb5a1198e21b2b760c994549747c9fbbe3152c3e3f56a0b82c2e4464798191d0e5206c9295b0014e606677aacdce3d717fb800000000000000000000000000000000060d161b2327",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 35,
+ "comment": "signature that takes 15 iteration(s)",
+ "msg": "dd00000000000000000000000000000000000000000000000000000000000000",
+ "sig": "191fc745712fc8a225adb8de855d779eef8cae43fe75418ea2b02611b979d39499c190bd59c31000eea61c0071a6c765f17f03310002524c8d1ba8df6c259405104df0a435658b488a3aa81c82d9ed06ab0886d456d7c021129f278edaf04477e9b27b2eb35d211691b43e36e65c823070a99e89e0000af939be62f1d95e94a168d953ae5d0933a39d223ab02631932d0006240fa5d3ef265519a5cec6bc796f932345f61e0e63dadf53461a1e444aeb7ff96b32cfa9c8ea4896ca5b5c58afa77e43ab34b011e6a93f9bbcb8dd8805ae7351cae0a0ca95756742077be679da919436faf4e386329000916e206545b18011221f25b8bbe71103aab949769d2add6bfb4082cce81a95b66dce001ede20fa6aac7b4c853df8205a432bf5bb0ffd3dae68e4eb195dc408450748143c8f5e6459a80a1f26b1b5b148d5394158425f8442a0d9faaf05a5ed8df9afa8bb97f499a8454615b626098fb3daa4c4ddcaad2709afebb8d6e1eb5bbe923ce5a4c41b3dc1568f4e8634455de6040cd3653ce5f3d63cd54834ffdf87e72e2c51cd2416041abbb51398e1eda1e22ca4e7b4bcd72eedde8581cbfe2b2b821918a338bf02a5771286ec7c992ad7e8c1f46dffbeb101e939f4b918d9a7b86fcf9940c12f0d2577e57f2702a263f177ab0467bfeb3384647c179f88ce508eb0173bfb6af85fb662b0861ee8051fa4c1820266f8aa6bd6f5c6dfdfe31f15a86df16669815df1af36c2c03d10a8364f488dfe3c266d012a69e538292d2799254da27d9ab3dd900185d00ba45110071ce6132fd2fbd6c129977bd68a44bbe3d0d90b70c5c4d7bf3ffa9f50400168b4a2f28c572b020c175562dcc3160df4a71e77854d555cb8d40f7e773e532934dc896078b269b719de189daaa17187e506d7c2cf06d7b7f4d7ebaa1e1b8f01be3e5fb514c4d3c23736b059f7f6b2a071a20debbc7aba923e040673f7d63a6ac223e86a85e665a941b1067f5a5b75d5a2d4622f30f61f813c9790d0bb62cba7c982d34dc6041f57f204df50b9774dc7300834f53f19d303479bd5df42b378dc28bdcbb81f8d2948b2eed172e57bdbc44d688dadbc2e30609e25c4ea4783ce53d4e8ab6ce921d43ec8e9ee82acfde0cb40789a50a9c696e9711e407e0a2383b252fd25f5d2b5456b4e4674a579f1c1c323d3abc7f1c14356c7dabf22d85ed4a9b5e75d40a5c7fb2912f4ec1e8ee6da96f352fe41c41741f312ffcfb079de51437467a4133c274dd539399b40e42d0805143fa8c7fa9743fca370059167f6f3346fc302f5b6dcb060e80b53eacc6bff176c739a6536f6b1bb4168852c68b57b787c330126ad0fb0414433ce263e2e46b27680ad072ac36d653cb95b0f0f6386c9f9db8285c3e06c38de485cc74b4610fb99714029cde977d9951c91803e9a6d864cf42215a4917aa69ead9509ce0086531d32cdc8cea5e0008bcfa709d18d0de3df22f50e87f59b7a512f3579c46de310dfc8cf95a7f940bdf86b8ce744433fdf50b5a9ca6ac87a7a7d1c7a2533c1c09790506f2cf6f8ff395d2122db9021a746411abedf1b991a0bd6071ced9135cf4319a45c564721945fdad887099efdcd1fcae03f4df332e0c7fbcf04fc66a286589ceb75c6a8f4dd2c16f67caedbe476ed4c57797078454fa66bd532494b83c03e2e5eba44b7d1f51d3d4b93b0cfddb290f05a24038871c766a4ac48cd041dc66a731b4ffb851a7648927f368e92ad45a369a4c9093f27476fc6e878ca8a9b0a915d88a3f55c7e712927ff961fde415e0b99bea5241e80c8eebbec3892ee13a4ad4d77deede0244f45f7c2f50949fb6224209de50d33047fdd60cc3610aa562adfd77e11057fc592e83bc2fc698ed156c57bfce86e444203b158948a0fd266f3167e46a061d05f5640fcc6cb7210cc51e8568e589fc950aa20daf7ddb4d46f5779b20d0d46890761132e23757535b37a009f078a09ed3ff17214574518eb1d03feb0a531f2fb59a44c96c27b834ded68470296be1ba9d4b1468d8e3c5daab19c97d388342e3c91ec82f7f9b50373add853b242b9274c8e7d59b4e84826144cdce31cc8a2d42052bc2723d1cfd01425d7cbf0a72bdc64e07e9f50410c0d84e128b4cd71f4c8a318da81567f320151a82d7b78d4369fdb6cb33a9dfc74394fea9b6e1b32bb4f2ba5fbf6bddf8ce0c93cf18debefde8057e0fe2135240021c647b48bb197f3f205621bf34e0bb7477d903d01e0814774e1e3868f30bb090f67dbdb786baebf443ae31e517c3e42f18a1651efeea26131e763cc3190cc444f8d9675445dd52746bad7b80854f9c4a5836167ecc0a4c1aa65a915de8eb20ff6dee1b3005cc2cb5cb94fb12f64bc010cc382b068ac9dc3cb78e8eaad7bfbae4c8527c44083dcccfa2916fc54814b3d6f37033dcd7c8d56efbfc358af36d8c39eb725d09e74be2cd280ad85431017a50a8445306f6a473da9edd363b7111946dcd03e8cc79c030c6819aea4927f1975fb991882ae05421202024f1c9373ddd32d66f30c3933e5c209af4cddc4b485ce2474a7d49e3375867ef0c6ac721a643d578a44f33b0474c7ec0d734d7021fa5a0fded8b3c2cb03d451b4084e5ce0ef62330880e97234dcfcf4bb98902602aac8500bc367675018b840a0f4859c89e37ba7eba8583ddb60e08f2bf0e2cc60fe110d51c07036133c40cd98b8c9e877ed386b87d114449986497aaa3043cd8caa74277b0abaa6efe6b837cb873243c912a708d3e5de41295574d361a6fb39fd90664537ef8a13cc7ea3ff2f42c04c5b9593d6e34f5759f3b8a4d855aaa6372f7554a8ca58526e80ee5d405c265547c6a6de5e534e058aed9bc41f3a34477e093888b1630e6e3d71a79879c7563705d9ab7cbbe296c56efb9071aad4972f3519e096cee67107f47d32cfb3f484d5fcba19206d108ae66c6c62702ab3e0a3bbe70755b97d1ecae411710e84ad22912daf8a86dc1f3835c556b8d6fe83888846ba8b230a5f41ebb2684363220f2b84eb969878e764674b0b8ad64856af7c65513493397562a65d635cfa8290a037112650810d1e94591e69a7bbdd1f31528d866a9033e8e02a08ed36abddaf1cc74076e7e449fb08a90e247a9dfe7070dba8a929098a3ce1843f633466a2634b892d241af0f51ecc0f5effad44f7c7706b25a7e85636a1c67ea858414bb2e71cbb519e53703132206cb79f6ff3db39a90300fca172a283e5ac43f67d8a8bb9efaee9c541fa4086cdcf727ba0820485857118a963f6c2606cac4d292f1e4364d3389b03fb817974a323240bf986d723cb7fcdcd84bc7d4bfb37d3d94cb0818b569e92cb582e8d4a6deea11cbfcb3a93af11b9c59b71b3afe3f96d4e1550d2bcb082c89e8edef437a51c719d2b81d6ee77b5922c9da992afbed3de1ff76b7fca4e5f9e6afb6f175053e4fecfdb4696181cac8d040134b9d2248b9035cb9e2819711983d7797abf2d826a893c9ec78128a551a4f02cf1b9f5a6e1699a2f6abaa499f80709f42c0ec89deb8c828b35142f49fd0ac247e09fc5dc826b20ec840ebc858b8a265561cf9f616862f02f7cce26f22dc285646c1a09f7777179104d1c12c5f6624c3a7639c18c9ca58963f6db0c36697a542451e7a9334fdef9e2853c175d0ca93ee009d408a9dc9e0830b620f1adf11c3b1351b762d8dce5d9bc71c108cd154a879f277e8fb5fac3a6e7e538edf2545e09c2aa3737fab0223ee9ec65ca5d8c11b9e1a21c540d22fb2159f1a0158c6697616df55bddc37a516438b718261e700485e7a3a62e3b0d4e97b41f2b7e834acda632b8e9fda46397dbd75ff3761c9fdc2899499bdd9dd0f1df91b113e90c1765e27432b4e70270e380f6fbe4f8759e8aab00c7ec6137ef8378bd8f512e7217784f87b6692f1837e75825c0718bb8db0c60f82ad883aa51c70e68f4d37a2e5e8655ab792b46e1243cbd112a29573af7733eee36788f6e4d7b966a68a3874d0f6559b441d3bb11a8e1b4e1859ca11005c447e1d7aaa9f6fd6e0f177c1bd0d15d05312524edd18fc2e233698d35a0f8fe70d4fd43e3855cb10f0d9101e37f3d1317c9d7d78a57a15b736f759d8eddcf1ca94e00282db8631f8bf2d2a49535ba858429748df9b8dc592b9545fababe496bed4bb525752cd5e338c6e666f8a3961df74c29b8221d720a1bda05fdf01f92d32b3ed9ce8c3fa70f21ef30132cdc30bd2ec9c5aeb73bf712293c545744734f180b327a08a6b4749273f6d853429dceda4471533952ed47b28f78ccc91ffea3eb0dc56192355f64d36dd001e822cfbac8ce9e2bc98d9a56567d77064e60713a0e7d676b17be0d05cd181d0a9e101560d4d60153ac59acdc5cb8bb3550c27a39b33c399aa54b488272903f97a4e3a9842b30de82a18eadb3cd897d4bc92a23c576d780a83829378e15248c027d1eb76bac3f1f7f0413cb7a5492a9c44a3ee78d42293483983a7d1e90fbbe277411992c034b649c8d63054a02b17d97398a87fbeed698f0e890c479b2468ced6ab23a986ad6c41ac712b137afa93df37fa8080564cbf67bba235914d7a8f832fbacb7f3d5ffe2097f032e32585a76a9aae325a5cb121619344a6466696ecbd11d656d9397b4e2142f35580a22292f3a3d46494db1bbcbcc000000000000000000080b161d212e",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 36,
+ "comment": "signature that takes 16 iteration(s)",
+ "msg": "6c00000000000000000000000000000000000000000000000000000000000000",
+ "sig": "3e41b01c01bf6603b6d0eef00cf02bf550767797e381cb6530affadd09100fc963e864c42e24059a35b54421dee314dd6ec4dff8c13e761061160673d1a94008b1131aaf1cff6cee99fdcc7c79991723d46cbbd3d9e891972c9d5f52f20bbb11c54e5ecbf557332c25c9b54179e6064eed210479dc6446707f5204aeaad9db2f8f21ed5f602965bd137982ab5132d9f24caeae6bbff8ce95a4ed47f63d7d258fe1760d8e8a7e4a12db37d3ad11131605d2be5eedc250feba39574bce461ba88a0ef59cc7ac109b76c83026afe2f2f3656f1ab477af4b49eefd56c9a00ce804427d78a5867ec497f07a5c488762c8883b839a584ef014d91e909724ecf77fefb2fa3c68b548deae9b3efccf3eebf62a5bd76f966f7489a71d85abed7c06bef1400db6f188aa57278a874cdd8613b64334c59416d1b64b121fd2df20bbaad74c8136219086fee3400f6ee37ad03fef16a9bb7579683ff421e046f9cd407b61e9a8aed130c60596de5be4ae7fa50667db07505af533bd199c12128c03a7d740c0ecca1aa7f33dcc60009cff2b6339bfa041fa82032eed9b2021037fcfb00c53c096f608fc19fcfe5fd0625c3bae39d1ed3067f3ac10344eba67441919cfff24c90bab23ba36e2c835ca1059d762108698cfcec610e711513060845c189c507e34a3208fff884c8825c4ab3befe08f36e378503612f926fcb99949d9a2cea0b2fe59542e69f1c8f99603d10c02df15ebc4193ef22cd45303d24ae70d93417e87959e209ae8ae6618d2007c281ea8fa5e73be5ac16aae20f4b037df559835b25a80502543709916bf1f20bcca93497472adf33b43cba42edfacb51d3294b476db006cdb534b0e0659a90a26a9ec68b3b335d461a613e2f03e94aef417983af6707a543ac99cccc341b540886892e209f333d4426f6dc83210d602d357ba70942506bf391c747a86202ffea712e7f0448105cb61310dd1fbf6332ba0d6e27e3ef22cfcaa5834df1b7f5e8eff50b4aa7a3889a0dde43d1b09246aeca8bab043044f7daf2f14a61b7fb71ac24c804c07619f31b94fba83a586a9be34706386683e5e3965ff4c242e524bd4745eecf30db2865db5f217c4f9dfe78584895d4214abb2b7084d7bf64363dda987987e0da8cfed427c20e83bda6550978d35e995368e6638c055a971e7b8460f77bf59021f3d3cc4edf36a44ff18b618d0b854c5c3cd1c8bf1006999c99def36fa878ce03bcb01bc48e1b5cbd975c7afb9d3029317e4df17031d97315027dfce18dfd16ab5012eb0a24876145c0e2262627582884b18619b384ace8fcaf35dbed5a95c38096aa006a94ff6b88fb7d800574feae49a7c9a8b29c36ead729fb194770e5202c5eec7071541090c0315493547da789b15f2fb28ade9354e0b0952c75541245dd0d82e0cd553911f2f844daa2af5e34dfd2f886559b69f038e41dff53cdefba8663cd4c3b270e41ad01cd9c69d84117729d51bf9c0b8249a48a00ee7662fe0f45e3f522b0e97547c6d382c205c47a2711d20cb8a6d18ed6a227c49a2fe261e9cd5427acb8f8b09477791cbb13c161892891aec718a2089181dda7c8f8bf7774ce109d8aa4bbdc6f6451ed2eed41561d7508fdc123fc7018b67585f5f7cee14645dadb2fb1b5d6de80cd5c5900372400164532f1186b02cccf8066dad549b3949714975cb92edf3f98df302ac01e5f7ee254ef0d76f3a5afabf805e81d95afcfd39044ae1fcbedadb35e737a7277dd31f9cb5c68f0306495b5981efaf676da2d28dfba12fd87625e14a6757e3ab313586c68dc8ba7ef1e90c521fd13e980fb973210ac36ff5c223cc258241ed45138b7b8044fb63e8899faa15dad544f77955c9dd39ee11545a10e613f09e01efecd048b9b61c9f89e10acf59c4fe10e17f276c0d72aeac60971673ae1b13ad5d6ec116dd92df3e0d6cd79c71893b812d1ebcb6d2e32d3044dd0815c4aef995486eb6a2262d5ade9f975ba176bb3be9ee4a0bb2b9b0dfcd679f3772db9c7e5219ea538f1bf4036edcc9e52623c9b209e092524d023dd200308217b7ad3df4aa312ee8d503fbdf5bdcc6578f32f4bd292f5e7f0751d6e18f5500ae5013291941f20355003731d764e973c17a7120daa0a790e5362dc13ba377aefdb1e2228ae1e2bce9bbb66661f016fd184973f1b156bb2739bf4aa6cae8b935273f8e821de354a85a21ac92b08b5b384e4889ce5adadec098a2efd960e407f6c1c5cb51776b49cba25454633b0d804dffa9adaa22a62475feca711f510dba1b927452948875c23fe50eb04af36960ea8f322992d48cc136b2cf44c4fbc45e84bfe347a1136e11efdc4ec4125ffc4feb8a7c2a832e29de612ec28ebb59c3d82d45323fc35b1a0136fb18aed7e761fcae68944f6bbd63b5c66621205c525d0c409d7472c263e8e1b556aab713924c44000e347f743ab9768c46cbb654d699bb0892f3461d5a8dab4aed8d1f0816fecd297a09d2ea3d578b74356709c5c019e0c6eb44cb9185b96e78193fe5f3c19437057ea356d8f9af450f5bd9c230fac20efb37341809228116dc5676f43cbb970fa1389dc8bcedcaa0722e8dd0aaf54eade137e8f18d9d7341867fc2799d05681aeead12903857ae7046fb335cc290e5756a2812ec9925ecea01919df31f0b99ba516b74a1f29b17ebf02de6b712a12786b8b280cca0c8c6673ab037db91612d38b48a1a4d3644b0b52a4c3ce262edb5691296d2d53071a14b7227e1892927089a19dffad11f1f1bd0c25e6553541d7483ce277a96bdecac31724784aa9d933d3dcdd3f42ca1929663b5e1102430d9ae33b60421b37381ebfc65c4eb23afdc533170018ff2a3009367e32ab9cf83d806dc6fa796de92476705eb434075206e0e8e1007f94dfec75021906fb1ba90cb1ab90c4e726a03f8b1eb40e0b6cb781b84d44535945a2caa50c0228f1f63509208add3951d6fdce948d316a7ac5422db6e065928bb32d495730ce8c3e78bb7b909035f90c01e4b60bcad19224441d2495636a38904c45b98e38ea5ffe4a4a5dff4ac585a037e129a5809a864fe763e21c3bc35f026bd61cc5bbbbd490465f66dfd719faae6e21836942f9bc56fd728dd5c835943e4289bc83e5eab913385aef4c526f42b9143c3a430b399cd469395c13bdf91f0b61e1352763321e439a15f464df8901e3eed66788d91fca51a81fdb8dab7a0d9b67202b98412f39015bd390496e0b22209353d812b8d4a458c2e5de71ec5c17c9b034d892855fa70f1199a942c3ee4835cc920603d2afe28f51259892a7c610774e4f77fc40739f6bc954dd7f30720054dc4a9df4f302ef6fc3d379c67772cf4a5a6aa6024a2e7b60fb430fdf2a1f1f44ef966f6a731886b8ca6de72dbd72b648af68fe543a7534fa42851c1b498ddac2b6f94a18009fa03b976e5592a818e87322ac344ad4e981b590bb57980fc903bdf0d84a23ebe4eeaa5a658736c7b91a7ea31462a7bef3cec35630cf5dd82344b34463eabe9c37468a8cddc9db577365cfe061bac2aadd6a339c35caa61944bbd76d1c5f605399b9c60897b41ede89d4392c9881d8ef54c5b623438633607c917e5a148f91f69330d2cfc3a07a385fa636b1b176fd2099a8532e517603f461e1291b65e4de6c534d6dfa3a50f9b0cb4358dec901823fd3fcca7a1296118b261f470cbd2e8438a6debfef71787cfe3d9fea869beaaefee5159c7e0e3d98e8a2f4dfda6a42e01504c04660ccf06c249736aab24968c3718037a9b693c3bb09f3b7848fc70c60df838d0080595acffaffbe8184771615896a42664c3aa7a25c7365d696a23644c625bb964b699ac048f78320e064140ded9c3779cb5453326b7ffb66c14193420c46a16537011d8c058e5689b584feab9d82c3387d5cc9035f58b7f9d9cef7fa4bd8fe4118e5c8aebcb1bbcc831ff5cd2430ab3b90393987d7906d03f92374eb3bee8c65ac043b038545da445861860b59f34a28112750eb6449c8daaca5a3a8dceffe8c573ed9278938d6bc47e8a0c0c645040e1610b39744391a9191bcc34e08a31b9abe1ae69ad9f141016fcd1b7d4d5b23bb709b1240b3b7a9a1ddb622ecf276ed63f1a92a184a7cb80adf9dadee15ca87972e530026be137cde18cb59b0232a12ff5cda724b21342108ceb83fa30dc50af8b214e638f0e88fb2e11664f6b14ed6421022661dfeaf0903f732622fcf19375daeee2ec601d3e3749c339ea85ea1f02938f972a0ae2804cca49aff7ffde527d084e0aeaa45fa91660063bbae4fa03c3ebf20d00a8b32f17c4c1a4672f66b8146fab2597620aa8bd9ad43b7bb238c851b3c37e8551f6de1a8fa41dc3082dd0d202b75524cb9685812c9756ca8bb42ed74175a9d6e70d904713b08206b1cce2c822bad661634536f9f51e753602cbe61fa783e3b6f0b84de0ca9b89b8b9ff8432745b45d4f38c660529e8626ad737c76810b97b89602fb9b9a8b8964bd8c79f5439cd1d12aebc7d240041ad00cd244ebf266a3b2a964d6371b3bf6d676f5fd97c1a514c3ac26c0442e891efa56fd67971ecd81b90da6ca20fb2a6e83aae5581d4db5bdd28efa1015066788a90d1dc1d1e253f5a5c64c6df0b0c3b588006cf3352606290cbdaebeeafed0000000000000000000000000000000000000000081116182123",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 37,
+ "comment": "signature that takes 17 iteration(s)",
+ "msg": "2400000000000000000000000000000000000000000000000000000000000000",
+ "sig": "45f7b98506b52cf17ac1ca661951dc3cae6637b2b532dc3dd3e49db1ee098bcfa20be1b6ef9a4b278589b8e7c4cad32a16c5600901d47f0fc06272628bba29815f237fd0839e079f0fe6739dd45fa3e5a93d7d1311536c1daaa2d14179eaed2a2933d17825f88e034c9be9cf5f5934ee9201e3496a65e4aa7a2fb18cc323cac3a1997cd9e953654fb504f1c9dbfefd35e09aeb6613ab4c06e571a782acff038df56a04e03ddac640909858e543e9ca2015ada794340f3b8187faad2c088e9a18fe7087f8bfdb3a9c234daedacdfbffae1dc67e04e429555d53b42790fa1735e788d930889ef6618b1e58ed5c327ea6723f2c11f1f466a9c145a11447131dee81550ffaccd5663a5a14e25f21abd330f71fd7405dfcfa93d8227b142cffe58d575507da2c19a631b307570e2783dd4d77e73ab2639c6a4364b3a2b1b7c92d93366f81e7042f2fff359b78630f6c3203b1c88ea9bd0fb7c732f3e5753139c8f9103480e77c57a6c8705ea245b47cc0e64e55ed2246d45e93cd638d0104fb43806b329469e2dc4fec7c9527b5090a47bdf0004ca0a6d4c747df14e8eadb88af3951cc2fed195af08657f35ea1eafd6bf53755b4a66153d4f8aa62f1feccf69f92ce4d5338c422e6743c23c51326be0296d80fded7d5b01c54abf10d530ad0f136313b3d19e55c5ab9c584b80e83f5dc99960392359a6fa718b4d1d6be467de44a8e6678d05d0a1261517d4edfea6bf90af2a80a11fd9bdde875fd340aac5880b201e0a935f58489eacd10f9c18597e51ac0604be6a5df0fa83267bbd28827668fe05bdd26fd7cf09a2c8b3f42df35412a68cb3b45679c76e012bcb7475522234d0c50845395c5cc896a336f1e216e8c62a5d65cac474c8e48f0af8d9f160f08208f196c4cc4c9d2dc4e592ef1407ed6da5471b0622d789300259ffb8a4ce75130343ee0215a3f501291efb8ea7a43b0492264157535d79e8edf106f9100573e486915e54219c989c40cfc6bf6f058f4a34f952a9f10fdfedff8bd173be598f2bcedff2ef2216386cd1eb93b9ce9e34179a29569da669b641297b3874f7477b8d08075710c9bd83cc722fd94402929eff0961de5297e803067cdffded15c42f5febd63f61c8f19b24adc1f599454b8d40b5689ffe5aa759517be2d31c45f5024f8fcdacb7fb0147b4a67f2c2e62bed6d99f2ea15f36ca051b29082e64f5272c7628f923738ded2bdc0b58b2f92cc11046055351bd65b3efb9779d3bd0b28a0e2ef1f2e807b5eae196c2bae7b07149012a8d52ffa80644c04a0ea7cf5226b008e7fc40b95fb0951c2bc9416d60d677ce96f86a655b89f504cd047eac6c6d1905358de689b518cf8651227146fdfc8306e574a38ebb39d5db0697c8320cab784e5c0e71f33adbcc5e2d38894e6006207dd97e545f83201bf1033a107c92e6fbb63f7fa9d6d80ab96b2baa89c89182198e1f93102cb9b10a21db60fba15820c1d82244dae2dbea9124bdc44f69931ee97904e15200c91bb525b3dd37837224c5c52659786e53701dfb0ab836e5ab3924beebaead548b67119d63b52ea88def1f28a0492aa047c346e5b37240d52174f609d82a46be480145f6644647d814608d2aa2077e97227bf7265c1e8e41e263abaf76eb4b705b334d7135794e4e633be36c0eadd86c9978cb5dcd34d85f959fca840a837613f35da365530b4a075bbb0de3d5251138390db3e71da1377527fa3cd5b15fca0147f9646b0813a64f5090b5bba0c68e6fc3e328215877e7f1405346624f8ede7eefa90778982fff9ecf84330bff13e6ae837d891535be7e9d52f4c828357aaafb129f7f1472fd0ae17aa73ea80894496d805a8a393e1626b1bbbb8906f3bc1bff8beac84d1b678fc2fe0218c5983787e7f98db793731fe8b5af27c90691d9ce029db1c35fb9c27659bb09e01b22be955c64fa62cb3cea9d396c47a25e3ea80aed271ad3eba5e48a743538a86a9471d82003bc8708ebfc3f2b8433a3ef418da91281e24525266b72b3c975a030dd41d7a3f76b46eb916c951c27c6db83f56338e12f4b8d517f1f39e18a954ffb01a34adfbf8b14ac5166c7ece5d8ca2e236e35a339360366aeb62cf01242ab11d18a95665b7b3c29ed818e65e14cfd1443e8ad67e32343c90272ba9a262653725d1338694c77f12dd1234f735d0fc59b55de9733d6cffec59cc6c4b1027a7633eff36fd547b549f2d54577b4d3e883064e1f96eed8003c44eee8ade5a26d59d657355d17ebef8264fd07f006eedb3a0182bd6cfa708803d5a521a669fbe2ec256dc69e704c31174fae1f5ef3688a6f6a5568b872d7a61251640871327350d6e00818538f60c7627ae84ef6773a0024790a93ba11be699317711ca3710aa8c7f990c1533277d38d117e0a8ce92490758dba144de16a4fbc97c2ed2fd466361cfb07a63fea544a54a1f4b04780171672b8f9987214055d65309f1a41c78befe703501c41520c50afa576371c91d1ea726d4542172d97f38355b7d7cfdde25010468a63ab2cee6fbae270a82f99384d46322e84c883996ccaea15eec01f07f9728cac753cda40ac6954b52c751e375482776788155edce5a23507c4628ecbf715262209ecbd7ba91948ec891571c214798e96ede019b5c726c8447801bbf76d565e7201d95cfd47064caffa3ee0757bddb9ffac0b42f4a804f68591cc7f2e0fdab131a8ffe5a7c776848927bad752f01dcfff7241003e501623ebebf2ba036100f3dc5e28a23d18d276476ea014494c693d9f4484267f1ceecd7e1fd6c75e74b416c795b516cf9f99a26d669bbbc9cb2bff8de6371bd4ea97b35fb8bc684c464d185e3bf40fd26a8323d507c7b31d203aae661add13c6531f7b56635bd6509979de917268bc0b4489f5cfe2bc2d117d5f27c1cb0de2a85c024a555a815eed435b28fdb97debb7fb6631e72ca1fbf2de560a54496b7ea79f72e41edb21eb28e7c910f74c85122240175309be4c419c2a6886803313d30ef93f587b7fb0232c91ae6d12b54406b495362276afa922af02ac6357b04f817b56cefa7a326376b82aa10e35a113c61666e9b9c9206313318b7e1097166568239eb3455478008e42542608923174fcfca8151e0894decc12fcf32ec9a2c12b48dda7a6896db728ae779d856bf2efbc34d7423eb48c87e00f4b4727420cbf4555fe5a46c63505fba5abc590415dbdb842abd728638844934609980c95985e3f127178f0fc463f4180fa74b5a5cdba1039db813e68fc1de1334857b55dc6a6aab0c4c665a9046a4191eaad90bd9b2b112a46e2a4c253d28c175823334d49ba9e07e85634c24dfedb348e592e4c994a01a5fad53964b7af28f431a338af16f28bb22c645d65d6f40150e7f10897be7b8496601551cd5c813057f2e38a5d59f310b5bc1b52216c467d1916df0da345b3e2f0aee80f7079648876cd2cf3127ef3f18acc55f97e026e3760ef91531fdf81e71c0af14e24bd2fc1bd280f1cbf6e82495e31daa5dc2eb9c0d6568e9b980da14c4efd8e80e853bebb34c259762d2e5ffb918bc2f85100f8d60b0e2353f0fc1f7ed6b3ccda17ff778db565d2942898579851409b31c2ebb860397780174ddac7fbc5e558ae04d6d60c3098adec601882ea9902b33fc43a92e16db396e345a995e4487ab2d07354dc65c04dc873cf13e1f189cb19c84627b892ef586a38dd649c02f3f4efa44943387c493b5edf476f8e68444c804b2543d780b4cef1b71e80251b1cd64958ceb48cef6956ca74a590b6623c7181acdefb343ff65ec776ad12594890ba5b77d1d2d37d0a859aa3a0037dd70e1c0af0b686559bc2c619ab8ca3f649c38e6d0f2b5a6458743293ad38ad26541c843bb00c8005407bc74446206af67173f53043d9c95c2696cac7359023fcdd655dcb2d8afe068df092c8bcc3cf18e438c12848ef078383f6126a5f2f9b4620d193d6c8b8b9f1265c827c4a1928e3e523b2e653efa378800943cd3e1cc639ac3821f7fb44f5f01290a144f11d3e26244163e1cf60aa627d7318dc3f42fa9bbc0292d6fa61cf3e04dab98a3e2ed3a1cecbf5f2e08aaac5650343934958f15a2b915f0007c7a251623c93826f2e1a1c5c8aa0879af6dfebca672c616917ed96ba3c4757ef0714fd8b88e0f21af580e094d9381a5a8fe18fd34156627dea4cc154bbd9f2d9eacd1e40747222015fc93671d745488c8848c259c7a2582c0165a1afdbf46c9a75590cb825074fbd410410a94568c444b2b964d331efbaf82771524a6cc0bf84ac2ebd1f1dd0ed8033178e79f24efeb43a0018351b13759035120dae2972f6e314c671e3b918ed9ed89234dc27c17ec9abdd3b2fc64d8e562ebdb7c90902a0931d6480386dd633185e15459ca4471177281d636d6280433d260a51522b251579833e53ee757c9fa2f87ea1fd86af051381d6f20ad947f5981300bc93cf5c44defda770975bc1438b053537665535a9c764f7fb7f03038305f4eca46ecc6faa60247024d12eda7bcc626d924894e2c538dacdebf4fd2b64ee428f8fe30ff104d21b8e1f3897bb86c567a31f153d4e8ff3be2d9a539baad2335762a010b35bdfa1a1b5df981abc8e612314445dddfeff0fe49b0cddc000000000000000000000000000000000000000000000000000000000005090d16181a",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 38,
+ "comment": "signature that takes 18 iteration(s)",
+ "msg": "f900000000000000000000000000000000000000000000000000000000000000",
+ "sig": "6593932b139ae1104d35507504133096297012e45c9865f57a7bd6fe87a6e4a10394f43226ec77841ad10ece333a381c37c91bbd82a63bf87fc8091ed29a4599042715ade54f5c94a6a0e1222816e112b4abf893f0261fa5bb5d774c6c8d35bc1c447e17d3dbc25798803518cf6f6bdccc7e2e77d77cb8e6ef24564a36b5054d91836c7ff1958b6d850d25f762f78b0b55c2850131437ad677b28b8d11d91b16508fb91f250c1c59adc4a2415ca6d20acf50c90808b5a4e88c043caa68a9e6a2ded7dd4f92844c2440589540fdf7e48349ba43bc26c23da748ac9d75f0b188688541de951a9ca4fb918572c96f7d85a040655d459eb3130c03bdd865583a2bcb382819c0b59f80e6369dbbc0f5d5b40010c2490c87acb9b50ec1a998be39694ef591a3653e9364c52137881ce175da1a97326b33a969d035cea68a5ae85e5febfe82cb5ac731f88a0c895896680a9ae8b4e7b3eae3f7a7d4a10f4063374f317a1ba377a01a3433e1242b2f00c0584a094d157c5be1a864b84712889c016e38fe757d02c30d63dc4c5d087f8c78032865ebc87de03747d03bd6bc32eb9880e8b640ab46e630815d11b3e4d88edfa6a3c006b568cc9648d4df218ab91bf1168852d4102f4503061f96bd401491aa76ae8314ef47d7941a767fdfabff79349d089aa5198248cfb2524ca6489ad58fad9ca4fa6d7d1ddce1fa88c3dadb434cd3a1f49168460b36d9987eee09ef17a1a789a457b98098c85311deb3e7f4d7c2a84c1c78c2db3e9823a5b47b9e313458d8023357aec8cb45fd052da9404c731062508ba31db91cb670f474319948538dfb7b811368e4325b24ac77cfe1f852bbb33574f175738f6924aa937aecc41397f8e34d3c75f44d6e81714a98a552a766089b8b2059bfef2f890edc17f9d98df040b3ad9168c285be95ee126ffd3d75658571f75035a0e9fbbbe66ad6a85a80077d21cd19bf9490f3fabd69991d6ba2589e1b9a3b8e64f0b879f3d80119e6715b827dea6bf40c09c02490e60b37e13d09d963a841fa58a4feeed6982295eb6be66def030230079a61494fd7295143c3a99c9fa722e1081853153110206cc59ed26a77f9125eaa98944d26708609594ddfa78c7760a8e9bed82e85cd991b2bc5ef7e2216e0bca4d16017749a1579b54dedcb165152d9324ee63fb7012b2798da17d3700c6d8280c9d7bcbf6ea8467542e92c8a0868ee9d5fd08bd397641b20d7ba15dfd079bae86972020c1ea54a0e641665b9f20dfd7342efeaf45e2c0682fcbc75569db5d8fefe4e1cad4e8865e86ebfa52ebb4c3bb1f9bdeaf2f179980424a62eb40a07196a78069ea6b33f52dd50bc42245517346a846a63bf08bd27d341ebf829807595f12ee0b097b917529cc0c4dfa7715238eae6cf336fea3004416f18546262ba801c8bc255d325524b7259bb747c3f8ba51aad3fd54d98c882c3c4924c3d01c2846690608575ff94e6778200ea316dc7e802f889a255e642c94e43cae57c68ab4f5083d15921e4abdcee8d7c4e9b60e43cd3a234780c0a6173b6b132d2482c7750e5aea328397f6c87898cd2254437a37f3b0e65b3f448f541f8c455476aecb3e5d7494188ac19cbb5f2ec45e246e66202dab148f2d5c0d388ec1dfa17495c9b3d255da2f48211b1ae87b2beac31735fb79561a1986e80651ef0f32bc9181fc911ea32855b5c0cc3a4fd807c5fbae608d683e81b33544a42bf1f89861b4afa5585b25e57e651e5402fee091d6bcb0444ece3e2d907031716c4488b6391c90446da0991eef10d982578b6999beae142cd85aca38e1a6ff07553f3254de236620bdcd17e24e9fdbd1fd7d672799211cfcf4e24184cbdcd3cda0d8d03f3dd76b0e03606c63f8fcfeae5ecfccf4dee0d5158567e86e3a4ce343ddc3c4c3c1449f142774547f25a9538eb80191b239e510ab0d5dda4d1d2e8af018ce177c6877771a7eb5dba26429f7d9772af8baf8220d35b28545d0127b14b524aa5afedaafdd3998e6c3bbedb0b1ac72ad30073560ee23e85432659a3ad60fb95a731b98884cbe826d3205696424886341986e933b97d67ae5c0886979be4c32fdb94aea47b9a3efb2d062806ed25af606e5072bb4352f3903711fa94a97a86c2dc2d32e6ff8dd221fe07e539f22da92a158e8a8df936e38d02d53d1b0fd80b63b6ef40bf826618f962a1d64ff361e546b73d2c7d47a5c0697af49041dac576de3f6918246877cf50504b641a457fa8368caf5eac325e468b07ed722c8833c66a2fc42b1e3f5eb588190deeed2c10524f1b05c6efc9d72a6a1f4833eb58db9a5e11b4704d879d25c998236fb4ce4b2720716c9e66cb339cc2293bacb546260385e2d860d727d952b4bf07618a04b30bead38bc41d2fb7fbd49931e099806a6d255d2cdb7fe62204a0efa2a883c4424bbf875af04d1f7cb2d9cba74946b0022f614c6a162b643a212523e7e7c7165ef5d6400f1664cb37fa555398f988057fd8aa3918ef644fcbed19549db991d5ff2c99cb9f6be56f24aad7d7ee304ed38240a609df19a2b82571b33d9552b59ea540ba909ad64e3f8342e9c2855a3577eb910fb47b7feed8a23458434ee6e0b0cb484b11c63175685a0ce70e4ff7d03c47b7b9d1e18a73588e8546739e6e9c3aa0341f4c121e1c662acd77a614c4d87e84de703710455bbe937b30870d611ab1ec256a98fd884568b8e945b0d88400d87fba756c17311e3210235b3942ca5061fe91b072523720a4d32d174c88cbc65868b5d7d6113b948bed240d39d160dfc6daf8a43a1f6adfde7e71e0d593c82033e9f6b7a4baa0166d8f28c46114c57e364d70f0f122a7b463828cce26c1982f03cac961b42b805820b9af9c8bb2240eecf9daa990d61c42f01ed37ca723d092fecb767fc0ddf905ede494d7b2dabbc593360f569df195ceb1ce3741c08b60f5f5097830535c3049bbdcae2098b058ac9a50e4ce7fcd694d45b20e1e2fd86808d474480e131b17b1aa8ac351fe249708aecffa6a0c7bab3115ebbf8c43bc5382a2a8e2011bf859ad034d14d8d24d56475424c1b50bf85e534dc8b4745e79d6bf098fcdc86a5025284097b0ad564f6ada364837af4df60a30620dba25a3c5d739edcdd490fdf4b7ae7c67be90f6356d9b94963495d9c5c8ca7154b4b2ddbe1ef1c57d8e5e879a064c7c76be3ab86312657c3a971ee1f87735df1a2849018a7d1e4867c9ad9019729c3f43eace4f2916384acb25f5e340a534d6782aa7f348e37fb7e9895b9c4cbe732b4e7db46341f93cc8193407c0b699ebcd9b7e3f80b5612309b5d959a701d92f4fac5b251031db6f39d6339e75368fedeeb3dcb022b6addd77071af1f40504c875d19a5add799a7f0e5079fb39a7d5eb991b5bfc33f517c090b9bef48db0ae16d160f5a81143fdc0a793cc3927ad0ffe7df402169997c4386a6c01853a6c6d21f0607b209b0cddceba91af3757926195750de29ae82172840205bdc57051d7b273ce469fce06bad5f758febdaa498a3399d4e3d807bf62fd57819fee31a18fbf24e501b8990fc25253d6143cee42fcfc898dfe8a414ffca27356102762cbbbccc70158b318e5354801deb17bd202ac11627d6effddb25c172fe13a6a5756ad80b450839086a46dbdbe3570628747d733f4836f6d57c382a96c7aaa9d83c3a4d5b5ac4421599b6311219b733fd9601195dda1abe2fab8bffd26147dc555c8c8fa11e3ae36c3afe9e1cc98670d33804c0a60b2f68f98282c4b705dd9ad3b9270395470c90bc75a1483b946822a1b055852effd2aa8aa93a4d633dfb9022722982de780dad23dd5f2021f3c4c92e048b2e6aac3c6666abc2970a2684bb4d749b3b05539f90a9afab6b6cf5b05188ffdf36941974d5b622bbb85aa7ba3198104cc1111a914ae36291552f40825c0812abce4fc32a9d4e29d40a5320c29eb49905d907343646a638709ff078de5afa9b106359dda4d33da38170a5d2c17d57ed1dee1edaf1cbb019befcd4cfdab6e30ccc146fba1ed86968d7224630118137148c3d4add5e9797ac90bbfdbe1fb9b4f472616083fd8c1d72042af00c1960b4e9e44a820a50ae932975a0d4d64c0c26d61038ccc5132b40dad8ff9400758dac4f41cf7056069430104bb7de19a478b61340002562fe26cd831f6a7e662605d55dc6297b5c2cd248f1ddb5a272dd5851aefc0bc2e79c59a901e18fa9df2e3312a15852fa8deb733529884c7e0e6f4a247e51a2dee34f53323b98b2cf38966ec33c9b8d3697d056a9c505dfdd8cfd1e54733a85e184e46e66d57f726defbaf14bda8b35a1cf9b2a570e61a5ab1128d7b1ad791d0a6e0b79d51b5845a909513277ecb51774a76f02909851f57f4b7ab2ad8d3b3dddd74494a003f1afac6072d9abdc45238e458d639fc827270c37d15b605f2b91ab9f1a8065f5f65c0b4bec40a26f2fcab9dbb4c6c6176c4300e3425c0b4638b8dc0a98c341ffe5fc8e0e8e017f58647285633d0370b919449e1cb03e9e646371f17f85b7f837b9b641a38a3302036285e37997f144752059fe15cd62ca0d503062dcac9763514fd77751514e5a8593130f925012a63711a366dab06374a5e82e6ff0418434f646784c5dc063f558906426f99c9cdd1fafb00000000000000000000000000000000000004080f181c25",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 39,
+ "comment": "signature that takes 19 iteration(s)",
+ "msg": "a401000000000000000000000000000000000000000000000000000000000000",
+ "sig": "6dc1fa2984d614d5c52207db2528c102886bed81844437049d558dfffbb799f71a9dc992107666cc595a1981b75e49b36fa4a2b5d44a5d7e82a002c5b0fb8f8c811d82d19a84411ccdacdf86912db7dc9d0a8df1784a155c2ef1870d706583e16306106a0d0095aba7483e484c22c246077a743009b664f014d86d6358ef4f415e20d9a0b8ac2911756c72a1ab41c4d333f7376cd23405cfb5509e1885337b2e1f391b9e23517a0869f090db5e89a1f84075bf77b46115052a3cf25b3893a112a454a1b6c23836a84618030ea12f8bdbc2fd7cb2b789925b161f71c2e5300e08b9dfbfeb6e700cb09b9b101d64a4fe8ed2f1e66f7cafcd4985002f827098bab1722411845ba01bd994fe4b3b774096e353891a72414bd37af0df4f63580f5d3e72ff1c916c13bfa6828a44d281fed7ded0916e84f80c2bb41f818dcaef8eced887d7de680cd48d0e499913348d74f6a1e3fa81a10a079901a3db3e7fc6b55899714396204e4b442e156bf34915df34365f771b7c5617c7c521f88c43b03b738c069d96afb5a94b96071a43da76cafa8ba2d8f24f53fcdb7008ed7c73c5de081f9b7d2df75ba160009d05f1edd00aa44b6edac9e4f0f6413c743d925a70b87fbf551af7a3bc46b47814e02d7043e9b92bdaebf9dcd35c0e5a0c49bb53b6309456624e8484285d8e434d7fbc252191f69ca8c44f8eebce2d18159ed202a24b77e6ba9f907b14cd9308da274919f1c93b2ab6a6cd383b9b954d6fd1248aa35fca4eeae628d97d377d703a7bbe976956f5b46c2b884c6261cfb844bc3cb3f3219131e78aa2cfccb4276ab1cbcd42eb3b5a5cac311c340dd35198a42d13742290b0b23c5c8a7619acf12bb41e6ae570ebcc99deb82295882ff7cbef6fcbacd5cb0a0680d654be9b18325e8a11a33daf8ddb1118db078537be93a54c529673c366f89e2d497ec297346337fcf10b2288095f572dd62c1ccc4a830b2edbc6e9ed8905d688ff4333baacf412b8a95ff2de36b37a7d0d230eabebb0d128a1c1d9df3567f27a1beb31b822c4e8b535bb38539b9c93a8611a785d35f8afde56c09dfca722cf0364d99b9d0ca55dbc8f9d21cb69ae8b49791e4e1fa76bd6dc9c28dfaacf12add31cb150757070a39225510372b773459f8c86ccbcedd27015cf6daaa73f6698feb3bdc118b03211b261bd8574b116de124634626386f1a91092270d15c16a5a143bd0a0fbf26cbfd34718173fa19e466c9894d3276bf0c887b09b77a584fe80e0134bccf5c3bba566686c79dce66e554bd9229c74d4c02831f86142932a1dd449fb920ef675af899db8b99e758aeb3b32b0474316db13c9ab2665e651242bdd2b696c6a2f65304ec643808308934f727e3bd4d1e04fa5f52a452dbe966f7eab1ddff16950f211034ef755e1fbfc924f44f1e5b91c38ddc9cf755204c4f5de26b59a253b6c940fecf5db125d5d604a10e4384a0cdcceaa0ea4d4e580753b4acaef25a77b7455dcadf0f5bc10f948027062cbeb5ee2094e01374bad834af4805b98cf21f2b99fecb7b09827fcc295867d083b7696e42c2ffacc5ffb5d26088c468b1da4c967c97bd91bfcc5792cf18b66e5def3ee01e7e251c0796179ee3a38cbcdb656a3c6e4e1a970259b2d2e2dfc25e0b7d7229f5b144c24129d1ebc2e9e64875b298f9c36dcebc1d43e451105b16d20839f7e6fa47ed7076b603b5e17e78f979d01d5245c084e500deb96e6ade4d3fa2837cb400c02943dca4ec02b1367232f5ee56e70d7302195c2b6f9c0a213895030857bf8353c0a0d0275d0216c47f6b0cfb54471c6eb897689a64a5fc2d5b51f6be93b7ee0cf31baff1a5143a274779299a6b903f44f8018c5729cd8617919a13daac169683258a8340014d54f1e9cd82134eaab14c7719eedd6089da30a04e1d873b683316bd64698c81a6ca28ccdfbfcd69edabdc03da3bc84d51d770c806cb53597e8db6cfe2ece1df088f1aa6ba75319ebb27f9208674b19783da8d4d94653ea7a0ad7eeb0ade84db5ac471db947ed77c8b11de5ed23282e75360cb3969cb13597d66d041c3efd7acec993fe14fc6fe536dc5c2a6d0f0a787df072c2559f824ec077059b218541c995a030769896bd619b0e66240ef244c8b3aaf0e3f79abccc4a69387d2cfa3131b45ad4c4817d478cb7cb7264aa8dd46e5ef2d3712e3dfe91e615a321433daee0bbf20afc7051d3a5404dc66f2a02bb8fecdd280718712010115be7131d09737677293c635bca6ad085a8f8c159d772bd52c80dcc62e27db799b81d84e337424a8d8905d53adc68c8a222b6970eb8078d796b64b172965f55ba5c90c0fcb006865d7b1f0745e1458b1ab75c54380b3747da09ee3543a013e0b807158c9afbffecfa5a3acfeb185f3334d3ee923edabff723157c671330ecc64633a90347ddd77be425713b6c0f9b41a9789136c1ab74248afce4f0f569fc181cfc34aacaf3f1a4f7e8e84091a3a0849d87f3b8a7c6ad4afb7d357eaa0a2c915beeee2f1c6860ef3fc5f4cf0bf43c1d596b2c84a89b87d36c2dbd143dcbefe0bee5dfa04b7111895c8e2d9803d57270b347374c7a6e83957145d00e801db52df1fc37bd8e8eafe7a6c5b75a8c8fe32b6b2cf0e33aa6e7c4b559d2687cfd3e89cb9316ba05facd121f0921726adf89cc2094da9fe3f296305d700479a6ee3da724a39ba0f5990691436abb03e6813c4071913cbf3e70c6549589aeae288212d2257077c434f306c611b932c754d022bb3d40d91fe0479a9a250eb4689e118def6cfa516312c4ff022d1619c5aaa535e996af16016e670fc5931fdddd9e5d6105c385239a30e61c8d9dbe1185fa13b375f214965cca489d186a84e5eef189243212eeb570109c544fc8aeb4fd13227055878a15a723b70a27c8c902bd8f1c3f9d8865fb2dcc554f2d9c0e9231e691b1712ef052a9953daa36823151c86c2e1c43def615f4eacb610ff684957f08e58f9b07c633e0c71ce838bb8c742e0ecb301af85b4000b61e3b2f824e6fb283d310c69623c3b78e34e85f2c5a319b3e30649bdf982183702a4b3adef8844d960ca80ee90ac92237cfd5a67475241f0d8fd558df07dfb952fc54219fee76946c2d3cc498dc85b0b04b1d6b121d6210d5c97e1f75bfc1eeb7ca62feedb10f4c0384c771b331b230e951fb15ee5c5d6a2adff8a508cef25c6f7ba717a116b2fa8cd18e75fa5c711e036cd1c609dd5fb6f26c9f135bc214c13691d27c9624f711e6581a36270aa27ab4a2afcf84383170069a8c8eb7d9c8e86d328cb5eb95c81f3b5fd0738ab4f44fb0c71f543e66febcd8f4157ad4235feeec30fd3e4cf9e0967f34015bf5bb12a15fc46ef5d0af50e3ccf810ac4310fce50ea1fda53d52dd14fe8795645032c4976591123b74e263797cbc7e41af7be9b56a2195b4813a1d3438d83e3b4da2421746cd97f92176ed9eeb1ea29cb5a0b1629819bd7e7d40c963e629960607aaf96c2a3e93a9f52a37eab47b8c7611b61d5a1b9fe3d8cddb7acdc04d000286b7d8e09e8ae4e58fef9bf71ff76600bfd9c0a7f40a69d58c76459436959d916e88ad288fb4e82a3586b79fcd67f66b2711dfc0d9d140cc22c0a40f6fe46d09c12caaf56a45a7065663d879e8e6f12aa05e9265b16ce1aa2513aece0ecd83d15133f69a7c91fe0fd44eac29b22658d3eb16bbafd2e11647f0e1f7ce67168f5d3e2b45843defd6a4fd8ba901fb4950edd98a4e41b1bdeb1581c44694804ea07544c2220aef5c3f3d58f7d053815d280a202629dc6a45a931c7d86bc8256575d58cfb1bbadc473455fc22a7fd94b229cdb8ff4f8510c126887593f62040ded2894fb7f53665adb2467951efad062d30adad1c9c5daefaaa5748c614991887cb87b421970b6c061e55bcb2e2ad0dfa3c17e869b43ac272b04fcdf4fe29baedf3bb3ab6ad1a22bac0188ee3712d3db309e57efe5fc9b60c3b4fd2bdf287bbe16e88b3822f45868872a99b78265fc5f2c123e7520411ebb2c65652d01a0e2fea8e7cee2a7f667733e208f20a0ef5c845621cf4c2393f360f0f7a0b32d6b1621cbb8366c89ef90cf20919a6c9f5dff89803a50cd281720bfe75c7cd6e25d12938f43596e5ac23c948bf73b05e4e48b0135d1f3c59e93c140cda00463868dfecc077edad546cb99a54348104dd60886874cd680a38e74f515f3e1612a42bbaae442a80bb3af176a73b24d929825955bf33a1541f62cf4a00b7adfb0c7f20442213bf4a531718c245f8885b306fedbbe723cc33a1dc27c52052c4755ce2a302a412955173941c109f52901528739c58dfae6047d04845294d8ead6f94f06e33e96ed95222b1eca8068570aeae6afb5ee3d5d93302b114a815afa5e5ed4202a9bb3ef0ef373385692645bf4aa5b0192cb2834488ac105aefa23b4fa03fec0319b0565916791b50ac339942cd34e875354c27757f4a4aca0c4f0f2fdbb06869f4ce5e1c8cef81791f2280b42bc2d6884050d431bda7a93d2a0e77e72485bef53c70965e7f5cc599d48b7e00e5bf1f5c9f4ede54e56bbdd4ef28d7ec127c0e9439b09ca7f568e18b234943ad6991d71911e2070942517089d2eaff1f4e6e7dbec1ca498f99b7d4e0edfd191b40555babf8075eb5f2fbfd0000000000000000000000000000000000000910181f2425",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 40,
+ "comment": "signature that takes 20 iteration(s)",
+ "msg": "1305000000000000000000000000000000000000000000000000000000000000",
+ "sig": "0e0e0793a9f00d1014ac745f73ee18458e19dc0c9a82d62c4f7c5f08cb302f270648d108b2a87a51c5b83e6aa54f4b40531f01bdf4f59315cfb96fe20a21bffe3ccb5aa55050ab5ae428308e9f1a95ce546b09b68d9a3036a04c71ff617dc48b4a3a732b4b688389a8249a7ff14a35d52b6c96cb0a6d049054de0f7ad08669b82f94745cb89798d86fdc0c2375303f5849c8992400889cf61ecbf63bb5343664f6f63854d3518f5a63fa55098b33943fa5642745b0a907c8af07685a18d9af65b121e90e7fd0c0cf62ed87b09eba0f06559ef813649a08a03c0819da5479dee4d170c17c11a119b6d9055151bfda6ec850b70939167b4d4d5bedf4e5aa19c380b3f87b45ca8b71dd9007450213ff67338a2631b83ef73499c4cbcb8ac6210f836e73605eebb09bb911f63f8dac03570c245b1826ea4ffed10e7d6934fe1d2e5358d52f18329259c05b1e570528e7bd160435a826e39781c8d3ce0b933d3ae34c33c09c6a4e535e3f0678c27e4da154ebb05039d3775a3bf948f579e8920b12b2a50430694fbdecb7ae7563631776e7b5aa3d889b3071964417eabd2bbc3fa551e28fd49abed8fe37326770db6168813903a4b1f4a149cdfaf2e49d88925a6ccecb85aeecaeccbeb94aea175fdc4eff8eb6cf0ac7cfa2897c74bf6c1bc5daa283398b86416be811bd6dde7558bdbc5853752f2651369d3b142394fdbafc1f2f8d1139df065fa16df69bdc9acd8497a89f037cc6cb6eae90292c7bc8f1ef5d89a07ad877334c53b80419f864031f78be57a82bd89d523126e9161a1a5d126e52cdc94831d68cb1907545c0c619bfa1b7246aa50355591217018b7227447a7d17b28324fa6c7ffa1f5a119bde3eebd11dbed6bd9d8ad95b4e1d7b4d673fd35cdc96631e1a86dabd6bb7b66ad5985bca8888d5e8e145a5b5f48953bead5702180a99b9402a5658a7e7929344fcbfb574beea901367a3dd8ea90a75b54b08c391d5ea6373ea8bd10cfc563733c4f533f30ba31d3c0e49e4a5e5c91d45d4d638712aa80892a2a0c5922edcfee867e2fbb7f18aa032c774e9cdbfa59b1c27baa14e932f59631afa69caba7855bd3746a12888d5a1e64271242dacb972cc82bdcc64ec4a2c146306f39115d5c824b71c93b5833020985ca099a4e937aa527bda8e69324005462f5f8431d5bb11bca9e4c59e5b14096cea9e40a540546efa18e1364c4f1ee855cc8cc564dce2ab8dd683bd9804b11d02a1f510ac98c120b6ba64cce16b203e53ea3d1bc69bec0d06a17b30639cd9b24fd1598e92890e88f7dd1397445db54ad8df5e136ee60f22ac090f2bd905765e810f54711f01c63564ef90cb01108b2c2bf1a6fb5fb8078d609117e111604a1d927fd24c18354ddc006f286975be3bf1ce5593715a8cc873c820f778e9a428e08fa3db1a5f52fab22ef5d16056092a6b1da23e3c64f205b3490f0460e9aebf80a4fe9acd31e5747431065f575637c8c4cbc5dadc2753b90e69722182a344d3b154bf35da62c1fd0e98921559f7d6010fcea31a79d36bd763cee1b2855dd05b44b36c4301cf6070408f02689bc75ffe264f55cbe06886019797b3ce3206654ad4995628eeec2db47a2bcd5feceb2f3cd3246bf162cfeaaec8abbd63b2e6cc441b908a3301c860a3a15c1b9253cdff625fcb6de85ab78bd802dc5e073a0cdcab0512a076427d7fae7b663d9b81bff8f0192fa7db81dc454f32340e200ba59bae4eab701662ca6453c233be851cde64c0a966ffc6012681dbc407c02073b9890781c8f484c295720eadf934c73e2b412b484ce4bd599a7b8718088c55433ff1a78072188e289ade5861bdcda6d10dc5c40f1c189ad96eb188bb46741e5ab956214046c2db868c8e019ef5a37d90b92fce70ae8e4a5339f612c0b8eb43c61c0c63f3a59edbe6752d05ecdc178a8a90059d6fa7e0da0bbb7984b7cc1ab8045095558ee505b3ddc1b3db2a78494436aa9334f6b3b3896d33e556e8e2b9bf728b5c53c204a964a697da252a73b8c120b363923aef38f993a3db4c24c9a4b1f10f444be9f87677df5ff2c26e419bf9c2f8e53ea2e6f1bbbdf2b6c5090dba385a5cf5652f9929295eaafcaf282826305ec5766fbb03ce153b32d49aa7a66752a772d2091568f1b6afec5e53dc2d5f73eda96834404bfe58fa5aa692f266d0383ddfe12da56a61f93933b6794af38ee9e31c3721c1bd52a6690bfa68948ba8d6577ae6acb3d5adef9091fbb7d4007aa8b96a7d17cd58987525296682fc777111ea979c9f3b893fef381c03319d7c6b9d4d523a0e5b98953830e46f1bafc94aa6c4c323d2a8a76ed1364caab808dd7eec175eb230de35e8d6f4ecd0dcf32ac6b1be9d7d6ac740f458ae7530a64baee19357ce5a3f106841d99935d1606d4ca7edd2d5da69594770eb86827ca9180713ec4df96de4857323333dcc4c3497e089ba6388a39450d251f39a1d2d6c1d6befebb7111189bea14c0ebb75b1c64eadc76d8713ab2290a7402e86c16ec2eca769febb9d8cdffa530eeb75854b08c52f69c1bff47c2f775353484527f2e3f37171d3fb44553cd6dd4d79e81574d01a6d4924d7b2dda910f438eb4c7ec938e5211ff4200305fc3e9659f8d52bcd49d5ef6ff5125d1f8096107ee01633e32f159ef17e1343af03076061b13bb3b25d4422f21b616393cd2d36ddcf96598c1d3f6b4e29258c94ffeb07410d1294c754f25131f68b4018ea155a1c800df5913cbb5c7520c7e33c3adb8e21fbc692b9d4ae00ce6e06df53cd3c13b1d12dff0607c423d41bdd53f4a632a2b80937ea64605e49c9694cb68e3f82fbb164964863c9d58debe663db1ec93382b8149cba27be1c79b2ec53396421a0251f3c4fd3199ea45c944e250d9402128369ff9d7fa48b0dca0c945eeba9b90539f3d4207b00d86687418dea895a4d467fd7e48fd6edade5d06434b9b1b82ebc0110b24bcf0bd4c58f9d7e5121c5863708b0382838423fcd9105e6776dcff3e914c5c425b85b9a1c5ee805d28925f313931a500e5bed7a4be914ea3a1a87e8b798702d45c6961afca988059bd23f04c38a0f4c3e9d59eecf1fb1d07ab1cb41b472b8848e5a149226966d540b095c23b293d982682dcefb8ee426ccabb3a5ffa070e019de02aa3f4fad228420f27a07cef98fe7cbdc676476ace8e45a8be1e282c136189d11df419053eea59288a16e0708b1124535a2a9d42e5ff42d514d05f344d75d26abbc2435c42daecf028c60621061565f6fd5787d74ef09ba4e1dd3f4043f0a6164d82c1c8a56971eb1ca21a966f80f67bfe32c2b3bf34e680a5abb3279c8e7c71130c77337d439fdee9f0589c268bf2b116eed8c6042e3def0986ede75a7ddb046be0cb9c2f5982485fd18bfd4af6649c73724b9c2046de6eab8c12ed5b1c56662b52d45eddfc9441f88d6dab41afa2c351c4779f623a6b3e4f8de8a749de2ba28447994c57566178c29cfe2d927d7be251b9945583e0d62591acd43c664cf8e52a9f96b08bdb914e5cd40aec4d9ee49088be114d7f1c326622262b9437d4ff41ab766fd164cdbb831023e7b8a4c2f215e9d412ead4176445c5661affeda6bfd4ee4d0f39304ecc8db068496674f89d5be493a4e225239c0dfa31b8ffb4a71b71548ccc1cd8adbece95d2cd76e2f951f6862aa265542696a0d78acf0bce2e20cbd1afd6339f33ca27efd6289ace29fecbf43beace6395634e3cf6ae7d207f31058739eb878cea44af09d18d0100c719241948dbb25943f8426d70c76011a6655e47eab980ea419c0baf21bf3c1cd08a6b56a95cc7ecc803bcc6caefde0603267954cf865423437f3af6c3d229382d4e6e4ec8699ac7929dfa22dfacda6846c632c8006c0f1c7bdda56b9acb231a52a532b2c5ec3791b3c3b7c7e507b9d0a271afcd983474ee55e56fe4e7cd8a0bc6e5756f118c513c9049257bb7251038866517c4c00be889772e7d42995686cfbcdd5f343fd3f41ec7162b61006e55eea57837c0739c8bf2fab9d24590edc3622d2b1c472a1c9a5a4dc63a883834a431f976f1fac01254c5c319cb4da867d129f007a4dbeb5626a9f53ce8db7044bb5e1d4f974a0cca9cf955ec1561b8d0afbaa14988f6d14c705adf6c87bd3f7416611867a61fa33368a20bd19f295c40858d9d0946e3da6771c41ca3b23bb97659ad5f5ca6f48342c323889bc3f00fa116b9eee79af395b24eafb213bb3f74d2ba57975564bd14bfbb97bd824f5ab3996bcfe3d3728e6d2fa65aff6ec874aa468d297f4cfd36fa55f7c9e9d8ce610ff1c36aa2c5b596b017495e298df6e199a6746093be6b4ed0737e834fcaafb52d9a0c37a82d4afb0fc19d81d577ad451edce943112aafae8417e29de50541ec0a0cba83ebb61102cb9aaee51886fa5b46f32f43a3a6caf58201d09466577619b369986a3af1d5ebaa1c0fdb699328cbc95879205b3f519cc235026420a163dd96e0829ec098bee25386a90971477cb12c4db6bf7f48f032e631f106441e34450866ac7e547f3cb76a0452d1c305b3cc822942b5ca815bca6adcf267d8afe7763fcc8b70e4c31999edf5bd25d42793dccd212193bd4e808373b3c99b7b81219aeb4d9dbe5ef0c16455573858cb8bc0454a7eaf7172385cde500000000000000000000000000000000050c141d2227",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 41,
+ "comment": "signature that takes 21 iteration(s)",
+ "msg": "8d00000000000000000000000000000000000000000000000000000000000000",
+ "sig": "bb8a458fc151be6dd575d810ee1dbc1b0a0c0fba3b64d9282b33e80531e9cceebdd7f266d7d810d0e4ed65a2fcf188c79d0f8b72fb7942431510ed1a9a0dc5dc53783911ff8e486ba22a0789a685370bc44dffea387de0bfe7e610b769b3b701f8c544ca3d53df14e0795927558ecda480cd7ba8c0d19cbf954e032b253289c42c657cc18ff7d5ebcfd4ff5163e8a36f585ba1409f1f8f039f87b1ddd18170048a08e4366a19439bccde7bc9d220642eb94896f4a64b1bc3631089f71ed0be13b4a38c092cc5999ca9c4cf4a4bab102f26599f651133f51cb2f1df9f6bb7b9de9b4899a38d26b9c6ecb29efedb2038bb92e2ae3401d97f3ad3e1bca5601b3f897a2ea831e6a046a66c69a7da9c1e256da45ca11d4d63d3d5d9de9470c117a4f62f3774fc9c919a73f06fa9e27c440dd94aa19d52de6e53c5f500821fae286fea255486434930a444ad90a9eefd79bf9e335a995d652c7f335d09f7519354f01dab9c10d292dceded1c0db39591544a4045cc7d3d28e4da6be59760ee7a74e312e482ddac340f6c6f4e09db4df3b53052fdecc96dc7aa6d6bc160b991099f0aa81ac1982188245dd1d8b111186377f2f617647ecbae26f321aff3931188d2df051f3a4296e406790514a33080fddc43ea4418d44e8f3fae0660748ca4ab61aaaa58a6e2fb56b8ed389b44afdd63243bb592e0d531d79e75d396a007da95535df0ae74d9fe6b61f997811e3934150f4ce8aa292a0fa59f66c5141e3bb339eec3587b86be94b765aba9f2362ba607bac1ba18917ab7b15f3e3cc2270109ec0bec9d53fda5c276841d41f29f91db419fe91b7d5a2f04c5322a15f552514ab592ef54b59539fdf2fc66617f5baf1ac054da64f9064b43392d2d14823082151ae5f8ab536467543ed5cac30eea35904b4a737a11f53fdff7a5099e915b1835aa32ae57e0a14a781966d17ffc4b66c62dc4f35fd414ae0a22719241e863b60ba63e82e2b16dba8672fe7ce565007e8ab53687561c8c41dbd736fb8881c5fae17a28cab7c1b2483a2ae932b55e5b154d05b66c3b6db45a7049b5934ee5880471c3a63321b193c642e6ebe89c54f6e60f819dab75c4838eb6ca1ee80416dfba41e7836f3f2361fd4bfacd3102c1f28ec517ca8db5b38ae3f48f502229f2144750d5d93e4c8125168ef9ac066fab91c295d47e04a01d30f1cc7889e9f9911a1ba9b6d44014637217571f2e7bd371775611c00d651dd5fecdf342e8370a303dc7e4e936dccefe0c66a8d12912ce2fac1f99b45a5fba11a942fe927005ae7e9453fef8a926fb6c8c3c90d6ab39bda85dfe50ab95541c71d4aa5debe9b9a10b92f74f24d09341738e83fa7687bb97054f20bbad10ca1ca2f88a2d9f51fe9e940680785181fce68693727c4a39c57a108f37e41d35efc7e8249f60eb05a68c8b14913a85be41ae96e8b28a9f97541643657f13d6823535edf8ddbba95ea0768d98bdd126f9829025b799842e2b58be73022e16cf46b0160bbb93f97e80ca5b7b4c2581c3be3d7bfcd81a2399afac6e6388a9707d7fd7e1b19a56c786344195a89da97108c2b103ee87172be50943de28d95cb76722c070ce96383b4bfc1958162b1a066faa9d880dffb4b6c4a864b0461b085eff9dbdecd2a2643b1390bc3d5f00830e6e43aecfbd3b762ec023f2c684407e9928ffda93df2082231172f42f5b887f49454e1ef973275a865950259afe4d3b9dd5fc1d14f07093248364c37db8bab873070fb4720130095eb7e1afe4899ff806ad9ac19c09387157a560a98d1a68a1f0665087377f5e17477279c094ada07321760177c3261b9042c36c42060b700316a93450cf8dd280a0f3455ac8c1e0de4bc40aa0af63857efc77023077e7f16a805e909dcb2a9e60a43e7d5d22fe30f8f8a8291c79a2c08a8b5c3bc9dac5402e6e3bf87898496511be0483e9e11c69b6356740bf8cdc075f3a38f9d489ef3b7f88d51734c8bce0acf6fb5beb7a3ffded49ddf0bf54d6958f4276421bcfa666c273f3a415ff69ca61b736eed168bb3795f9ce647cbd413b027e520e22ebc1500671bb11f056b3b41865690ffccac3718a597e16b217eac9b4fe268520a5d342f1de7817c3568e6249d9f4f014dea7b90730dd06ae4acab0a5e598fbe72b30fac6355068a74d8b311348210822d6f8409e77806a259fe4eedcb5934d2e09f06f2fe82274c942058861d5449e6eb923ac947d06806a1f812b6e4ae2e0a929aa244779c075d7b4cb9edcc664679b6be833c81d5c688517eff2d10eaab41f93e48b7961cfabb5b9f087f5f9ceba4dd8d1aedadcf5719beaf1ea95398634ba3cdae50ebe9e46928f4a2fd153d38ea9af1cf2e7b832c19712ec57dfb516507dd3b12ae1eb82035c1e3347ab97c7868142c68493756493fa571abe71c635b928935eb50cee1c25a9bd60e88258dc777dbd7f96e751f1bde620940d8659730a4734c77402b7664d5cf6d8c562d64284c637456dbccdef87b25e96c21f9962eeceafe99a9d6199cf846a3798fdd09997ee81cbac964ee68bb34b29d9dda00f251f7e2311bc1b6d4beec8bd4d3035a82285c2288a90a216a355e3d1064943649e5fc46011dd1ed2fb9289997afe982093619a6f72d4a6b6093e1303ee88c74721e4bc7ea6289f437cdbb9ed0a6cffa5d7d918368b986e070c3dccb55b1970457d189f9b59ab8e963e5e8337292d4c71445ca44241f9696d1ce3910804fe7df2dcf5854fb9116f96a1a8652c8a7f2c1ad07b07b1da41a21148bb9b24e8d59dd023e58470a188453c4cd9ca7022520ddc6c53f64a5ba9b3563a7d59ad317745a226f7f0d1af6f71a5e1816c71e12aef1e8a60eb67c4c6371a191a1199424cca295a9ecec99bebdd1d386e955fe0d4b4e7b853100f17e09d5e12c8ff569e67bb7d118759ebfcd8c1e954a6cc351c39393ace4d531b42e8aefcb533020169991231d525bcaffe20615d0adf79f258d7b3f7872e1c39d2ab3c616ce79ad8054f0c55241ce148437818aa8419231d72453dd1fc28790b724fa49dc41e43b838d83d8e6978da66038258008e72e3009ebaea2624af497309d9dfbe809a97a67ffe71e68da7550f12ce66e333a7196f5402dbfc35cf9c021b8150c91b535b76f3f6cf2925e2b5c7dc9318a34184bf1e84b06d8edf792f8a62845c0e4a47e5af5327353256a164b167a895b6617a503de6eaa46f1be6a736b4a5c81eab9a6c7c7e78855b44d9dd673f91307977545341926d8444480a44da1f7a38cc85d266e0b43896db4e8df8f87ca1994160090884d417eced5ceef498f3d86bc482e6787ba9fd9f95fa451a9e49ca51e72453802937b2e1817daab14b6140e1d12d4c2cb07567fcbf4d7deffb0ae80859ff3c3e07f7494e16671ff2c2eeb921c52fe21891ec58042bfbd247d6576da111a7b40d0d68d7a66abfc133b55912df8f85fe06985cf91dfec0c6cefdd646ab64b30abc9f402e39f246ca3b90f9b3c7791443967fc31c15bc38a256661125082ce326d61ba7b9ba49614cc584507cd974baefcdce6564a0332deff73db28129a79b28883878e738551107e255a719aa10f5a71bb8ed70d053c7a0f64ff47ce85239bd8965dde32e87720a5661756d2bb890e0485bd3ae22f4f030a9c76da63fe0d27146f16fb02109dd247a763c74359f0ec63dcfd7146eb747e15be6a7be46b30b1c7e91645926122674a722cd920d925999a9d2bc293627b5395143769c26e544e87eb076124d4bfed589f9a0b5cca4a7f52f16da6cb35e3956cf758d0848a6715ec8c3abed15026d40ba323940f85348c6c7759c5d7fd0c309ae46e75fe76042f2bc3884afb8972f87f3f11bd1815b39869c1ba5f4e35569786839c792c7149fcba176623566d29ab1dc29f3bf2d374f24eee794e2003af92a90b06a5ca67b5ccc7916e9aaff10ff1387b72d72f6edf6b450ec2a47a21311f9b4b0edcd468c43c53b7e6a233ce134512ebc742b9e59f8be7e7605f2df5fed2ed705e679cea3fac404eeaafd03b0345764aa821a40ba383d696be7749c5d35ea43519b789c06f316ccb7fa468f5562f688906442c8dc36d3997e51c14353e6022cc2b882e8296ea274808bb87ae9e62c307c65cbf30ddfb2453497d58075c2c4e6034dd8261032924750fcffcc5fdffade784907d7ef657978136ab2fa29ad20c9c83c3e348a408c5065911fe61e0c439a1d7ef058116934f6497d96dc661f8ba21fc255c021c7b52b6aeb0f1d2d219ae131ab0e0bd01967698b63b859c14b3252a7204da5cdab7bd2f78c6cb639f024c92465635a41d115ea6d042f3722d605e7be2e868909183525ca088719876ffb987afa2f0bc147026e1863c528562619ee551c64380ca2d8c315803a4098f3657d982397be8262f7d34ff4c05f45b6b0eef3d7c13fe542c851509e08b9fcbd9e48d1ec72c790cbdb9dac3fb8c7a57c8a9e2eb14ea840e309579b0d04096ae896ba2f3e45af7939dfa922b96d4b76da3c3b992cb72ed55c2a424f371e020fca507058ca189294a772db81e05f33a50282c689cecdf4c28df5e17bf6cee74be67ab96d7fe26cb1d3a0333145557a9db5e4257b1977bdf7fb41496b74758c94d2f7154d5bdd0e2c4a4c7581e600000000000000000000000000000000000000000007090e171b22",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 42,
+ "comment": "signature that takes 22 iteration(s)",
+ "msg": "7d00000000000000000000000000000000000000000000000000000000000000",
+ "sig": "7b2fab305f92793314f5aea42c8544b5a0af4ceb7fe57f194c66778c320257377aee97acd7b9fba4c8fe18cb462792452d44c507f7840af2c6380d1a25254ab0874ff347626511b93723bf76abb608ebb0fc056b453473b1d2c6d7264f0f2712ead95ee34fd8f620925a36decbf3097ae92f04dc9981e1cb96da9fca9fcbb41b64fbb617a21b17b37661ec5bc538f00a1acc07aa667482daef1055dde874d59b14327dea97ad4f97fb1430972ac82360e9fa070c9b3ec2545037cce1dabe34c274c1894add81507268721c2769f19fe089178b400e55822981c2f8b9f51f96c48d83ac24ff55ed8f5a0645d122f1c17da2bc8da50cf1914d2900b1389ab9f1a00b6253a67bf907641ca5385b49a07ad3ea0b37e458e6caf5b4dacc7c74dcff22ba677f23ffb64e9c1e2edbee99e7c73207d3f288d2285a7c0e14c3b2ddfca88df6934acba9857083a131d50c88d8f8ee8d24304e5610dc53574b8d14198fa008435d33d03c42e377ae3c627190a1c6a1639ddd98ac90b6b6d0bf7a50672000e0d09898f21c705c9a5de142e9be15c0c0f9b06347f61a0ae9741aafce0c418ffc1908c8c20b68be48a6d5c8f5c0762932ab3e73a284ee039123c2b9406751ab6cac8c610b2aaafdfe539dfdc1e800269a0a1fbde3b5bb03cd938dd08160fb8f236724674d016a76d24832f4857bcaf7faa8daee394ea5d97cc12c6de62081050c0d0f46b10a456ddcd12e352f9fc5a9776087fc6d16341e0346eca5cfb3ded070e278146b987ffcc9d56396fa970d22a20491ebafc95ce00f5b6d8ead65868bcb6dd6f31bb2a9d85b7951f9ce8a8f7bd7da2753e54362c8981ee4714afdf398dc258f3f0e485db710f0393c60a301ab97d801c7f268385f5200e6bfbafaa69ccd87fc1eb0c29a2c6f73820d6b5f561ad3659e7b895a9ca7798422a673594ddbdcd17abab2afa6b7f5d5c0236b33b3b8e6129d9a40ed534bd158d436bc3279c769abb3bcf4ad5c4e864f2461915266ad45b7bdd91023a09e1b3b2700d8294472e1b4a40bb1a57844183f80dac369ef701a0bdf2290f3283a681dc432b396451f79853359ba9df78e8a6fe6a1ec4017405efc4a78199e3365854a1c94ae7affec9682d1451d1a219c9b9b17ee6726281c025479e2dd64f835ae15aa2da8c38f4f07b014b0e71e88a60b95999f77aaf33a64cf6bcb1bb93bb151b1762dcabd12201a5a1e7df878b0c1055c2c263bb10952648e1429839fd180c173c6270f7a0c43c7d1c0bcadf81c0400f1d8355b7d0983802878d36ca0dd0c251477c12cef09f764cb261e171c1d8052491e7dd0cbc3c2801a06d7cf6a67d55c3f9633a8a2d74a1bf49905d29c7f574d2a2039f41835dd6f7880f3dae8b60488580975d9b19d1c2d5b64f91f01b22caace58142ada05cf6bee8e6903362c18296195b1177b1aba590e9865d4df042a33930180fb4a99a7e0ec262a38f739c098e9b48f8a6033434bd506e68c46fa0a0e9dcf7562e27b48e450c71e33602200192fa91828ac40854f33ecfe8ebb0aae4ff1dc951c3ee248783650d9e4a56e7d913e5903abc845b970397d8ce6666f410505336e7b906ba63e77470900397451a8528ff8c376a70403a4300f80b5573921f29ff90728286022f6ea62f28e9b6884f1c6e9d07b3d20ac2b281596ba6a2730b9cf447cefcd72bbf8f95ec88d0565e711c286a8c269ae9ceb287ef6e6d00502a8a89c766a8c39d93c3bcb654a07acbf75c7ec12b8c1c494b55f9a41195d3fd5e19bb4d93cbc16ca4f05be0a86a9aa8994d12584be162cc4d71fa629186af1e3d3b74e5c905c8be923dda76b87071e84883da2585f2afa64f0955434a53f0c0cd63761291c88a4271656e3083982e9360e0b76e18f6fea30736cf97f59256b5739faf5e87c51bc76a8fd06b4a8563a11a3f2466249beb3eb8fb8fe8a3d0b9f06484f6fdbffd9aa7919188b626e8310f9d1c83392ead724185c62bd1b2ceab020cd305c4abf081bb3984cb50c1cdf7c59456c96f91016e9ad32c2d47c67218db359248da09fb14feeaf6bb343319633e7869d6103571bb5b587256eaf4551d5aa74860ff266f57e55f8c65a2ad87aa938b7f156f2022b62282a0cd4173dc090c5a74aa5702e50be4495258c509d22ed34d63622b62c0dfe1f53464325280281a95a2c273e17319dec4ccac46f31d953743e03bf22f40b0fff77409072dfe82876d9d45a11dc0f1d64010ef32d57eb60a5288b089ec9d02bfbfca6197eae336363bba37435e1e558178613807da640fddb0ef205d7c91ec186b397bfbfa10d588235013aab3ad21744a5957def19bb7bb7cd4f676b23c7bf87579ae2a5fc8c0cab31d72079a4d0cd69944564252f9603b508f5a83e19f09c704c574066617e8b6fabe690e85d92dcac354a435319a93cc2fdf3010c52e38d6799381e8cc861d69db0ca8defb5f8b1c017dda46ca9302d8cc1d3b1ede0c9dd63349bf6011050c968ca3f3011109314dc9655d1a30f198cc84bf12c812e90939d7f4075e32697dfd2cf6d17589494e775ca982952b61f8b99a84967a431deb64ef7ec9e882cc761c8bc66f7de4006eeb13f9b6ff2d92db458ffeef5b2cced63172c0f4764da145115b615cb6c0388b6e93aea63de74bff64fe40dbaac7769981bb9655de32a881ada616e96cdb74579a0065bce2da90b64a813d57abc8f6543310065cafbbea9512355cb3f058b35bcd357bde9f55fea564a6b14bb341c6c755d4dd5a72ac79d855fe50aff80d683530ee563249d0d65f64debcb24962c61ba05c5f811b9e0f4e5942797c24d2b08a4592d590cb871272f5c1228e9988955ca4f990ab2b138cbd33646772767d4f76e8725377818ff1cf03c01fe64bdf05e61a1798c0cf3b4b69b1df9f756ffea314fadd17a6c6ded6765d59b22e449ba8c78b1f8f7b717de8a4462b02d1bf22f24e821888946f309c7e60115049997f0a98e5f04613acb46b5e231da31c482c25e7eac53f09df009728675e07cc3b33a0b0c6e9199664a00c8236a3a9ec9d6d5aa2e9317da6efc75e03d95d4747d51767485c4ef9fd438b767265093bb8340119f94367b506796bbb6ef67dce782d879a3673c0e8415c6b55c4faa3556c7c823879ebec0694dd0783ab8f5a60ae10d1c3c42e309163bdadd31aea4869a673eaf797138e332df0579567ab7e0d1e72820de3e7068ac2ee207794ed41737dd698f3d9884bf3d8f37981406d856a4ad5a6862df70400fbfb719acbcb0fd6bdf6d7c4ab3aa10bc8d6d7452fb9546845ce1478ec9804b3fc0b64e2a292a2b1e244a3601fab84d082eae74f635aaab4b5c1e6c342a695f6804238887ace79dd8dc63c2266d259eafd2fd876517ed9fab048444a61da824c0c836977a82591e1f7a813b0898863c2566a3651c0570821ee974c4d031ea7df06264d1616d48bf6b2ba17be39cb363843b06c78d112c76cde5cd8495c52019359f4aabfbff771acbb91bf97a5acb1d46d2e721f78695b8a66a145c15bbbafc77e5070305b37e854eb16adec67495c35f44068ffd1ab55fcbced4c146055343dcd7bd366b604ef8775a9985a1bf0575482d162edad96ad645f186bd2bfb266c3b178f01729037d9b7ac8a77c518cb5f316c050edbeb0d90362e21d5dff7be1f8632ae42cd13f9d7071f0ee0ba5a1a50a77b05fe3f089f1ba56ff7746ef35ae7bfb16c2267118e203b75ac19b334200949f8db6dfea57e0599ebd3ab484bf5be07a1d1844aae9d63af81cfdfdf1fff686abd1093d27abdf2e92308ee6e3e15fe197e3a9bc6a9ca889e06cb73cf824363267d45095e8b71f84a9ca49c66ae58713edee540cc357a08a7b855efcbffd95f2b765fc9d7bfae809726c3632915a0af1cd1a01abc864a56539d5fbaa21f7a58f430164e81e65b90f453c15f83fb9236ca8f54fd2c7e50d0258e9a383444247301aa1b42c3215337098ed426bdfdcfb251b8ab08c35fb0570dd08ec68c1896a7ac95ba6da0437954fa029b03aae7c64de3ff3aeffe38ef8b208d9dffc62e32f44bb968518b9a0059cb2ea2e59b0c614b7787d0068ff7fb5bcf59ca605dedba63a34626261e7193e97e7e6c45f3956fb46c10e88a94b8c097cf2016f1c2f76a4db6568e038373a7f959c09ea1223c66a5fe011c241f206e03dcfa03964dca7bef53f1a442591706fceadafdc7fe0b1ce3a54a2e391e51555beb3a290c29bfd2d88f1bee4dce1c6357b4966fed12f61a8af8c90bdad34b8d9bb9d04df6c12b717ba937fff7875cd58ccb01c8573f4341fa3d3648cde127b6a9c4a7b09dfcf50f39bf44d1fd94f5da7d2fb1c2578b9c6ccf19b9920bc76d1b91513bd9088ec1e818898609ea9f5719e4b458b9ba28cd9dd43b0402774dba02f4e1e6e5c71b167caafadd9678932176710a41184ba19702e3c40663735a1811c56ea6817c99f20b5f9595855b46839cc64450acfc71cec14c5d56c2a799ac26569cf58a8d54b0f984828d379869cd8f5eda5d0867199c914402b016decf3e98a2e63948da228f29e6d52a9fad658997c1d3dae404179370ab68075e49868abb5d20fcd4641a83469bc20a288c93abb2ca105b6bcdfe0f122129303850e3f33f6189b2bc89dbe3ef000000000000000000000000000000000000000000000002090e171c20",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 43,
+ "comment": "signature that takes 23 iteration(s)",
+ "msg": "b900000000000000000000000000000000000000000000000000000000000000",
+ "sig": "c00dbc9431a2e5689d27b5a3f09c62fd6bf48550b9c6424db5c6027bc0b5cc8e9d29f05fb9d8f50a85d2c5d8b7a4f7f36813bddbf7caf8eff67a6c2e148890f9438a5ad85e6f4eaf6173f122dfd160a0ad5cbb091d08130677f196d22c8bb6793d174f71516d42bfdbb18fd9a371286d03ae41c7515adf78b0b9d0279538415f886a7818c6e09117ea092235cf18bcc834cc07de3a639c472d63cc2c42f6178a4c1fc61e5ec1fd5456851d586f37b59ffaf43e3887616136f8ae775063d5e24c137f63023d056ca2bdbc4f9e059a906fecffc72cbd6ff702f06429a66420bec5cf936c4d8f0e2f888c9b5bbe81644be03bfbbded0a1ac71b1e4c2c4df783d6d2621208f88c58dbcd947fb62ab972bc0865dd043528b9fa057c4e7a0f7cfcc2623d46745f4ef63b66aab5ae5999c625fb20da4f40d2112e53122707837501a0db379f262977c853083913030418cbb78a12bc6fb85857f401b7e9671eba59c1d11b55f83fcbcfad880c0d8492e03935341488bc7f1f77daac3972a028adcabc1b3f3ed7ac41a5caf911aaf8c76e0ea75c1f4ddd109a21e47c7a5fa2103dcb5e588c354d80feeb15c3495c9c0303f7d42e2a211dcb9b0600245b35448735877d6fe378b38aa279d81baa922b56693a2cfbde2efc23fdf80a78a8f50e9c587f2d63e29f0631633743664a83ad3a61ce12fcec36858714f399591229f7269023412b7cb3cebe64691d1c63a297859d10d12d221a43e37432da12c9c7965aa21bc82f7047ee6018095f0e832677d83f490b238f00e21251cbbad5a9aeddf11d4d4dcaeff0ff89caf1e8639ef0d26b31535c3fb73fb42a6c4c399882961a51ab5799109f58104abca73d8083c2a4b64ccbb9c1744b53d8c416bc902802abe8d7eb9a39405c91b61234ca7d35735e18e620067404d0226e7410f63c52a5ab4ae58281496d683b84e88055e970462b9d11b75688f8cb3dc47caa0ba1caa5106621bf59078ab30b113b4408d891e63eb7dd1db637607e6fe8b8b835b2205c5b17e7650a26ce59c3ba37a691a8efc35b847239fc7c60f61ffa06d3025855fd8e63f1cabff8d3f76f19ab3ebbae67786de70e9880887642259bc89d4bca52bd243b851b7e229ed4aa7170d24339d2e09ea779189921866a9bb773f09cf832b93c95b8846e2183f8e23b47a92d54af739dd9ff8cdcf13dd9fcf3eba396d3c76569b733aaa543051668cc436b2ff40a366284a0eae55246389268cab3d516b19e0d5184324fab0d0298872fff58af31cecbbf9b7abdc26509792483451da1cf5c53effb81b76b2cf28d0892de1cad6cd4ccf91496d64d31b9e8eea56cece8a99813ec49ff568c32763e3164b638ebae34852f8a827b781ba03f4d42297b5725c97f9a6e82668405f3b0c589ee7073121e07c7c39901e338685a5b1da04a127cc2301d4ca4685777ca9619f3cc3041a68c4d6034cf3d58dae42e61a65339885151f70c12eb9d32baf5d124bc9b47775b612e35965f99ac25b60bfa182b84188eafecf4e761b58be536d8c241a5df7cccf92bfb51a9f796521f6fa8ecaeb8574c28736d2e9a3e05aec22125b8ef6972cf5ea446737931e2b3c3c27dc3c84951fc60c89151082d222008a271888317c7fadcf621c115774038f21f89558111247a81f6f5e075577bca24d798cd66495e4f4eeb405488d0c39ca05e8d31619a5e65bb6b2d5b8e5683532e9475cbb65190a4abc6edf981a4de572ba400e6f200320cbcde65f64fe9cb8bb204faa9ed6cbd505b63aca60ade2ca9c79978bf0d971a8512c11e2f8bb9670984cdf29fc1a08c2e0f60cd4bd0630c0b3b34ab16f98e36e68a72841e34525bb5c7bdaae3c221e6d62c5b495166a9acd5fe878c766179c4ea5d88b3faeeb92bd0ff372de4f0b4f7e9002c097c2ff679c25467499b28912624de5252fa5d48014289e75a73b01021fe0f302e71342d525a53e754c4ae74c700bf187d004ca04c7bcbc956599976f70044fe70d22a0c82a3cc2a4aedb839f3c1a1d0ff61d815fd5cc74ff9c4eb40454ab6a53701913f176df2d57eec4457a98ed417c6e475d4fa068c6efcc2c6fa68bb80dc14d88d42d692e81e3b791955a2a4db7b9e0b2e959f4c4f04157ddf3f6b71f93e2768bbd25e807dd3a73f3db6641b373f1836782fa9da011c16cc5b6ffbd1fff811e23b1a3e0ab162c879369a13161010f5997ebe78fdb5754a34ec51fbadddd1f2afb927434175cb7060801c4ae80d4fbc8f9548381f6bd941e57bb617fa5d78ae28708e054a343b143dde9d5afafddb9181484cbf910d431dac96cf60670753ef1471db18911c4de0f14468376aebe23a37d7a661089e5487d9d3c5115a563f24267ae8fef4acd06105c7f2da0ef1691ae589105a45ca335c408e765395b2a3cfeeb3a3d6479780e38e7b52af3259cce9206f305e7842471c6ef555bf1d3fc6e0afe2b8ab769e2aae1b4b97339c273c051abf2b62ee283935f4253cfd1e855a2d549c3ed591838f423db0aa4ccdad5b14956e01e7afa729bc86a563030097bd6e446c990f83adfa5da4a2d71e42aac0256e8e48957f301a745733a5dcec0f761d7da4f5842c99016ae2d91eba8b29a9fc48ced59a08dcce4efa84acd21583442a24f444ee03c8611dcb108f1e9d8d6cb40330bc324831af3adb7585966f3312762d131ba54e45b2b695804196f3b1bd5a5a633429579cd18fc4dfbefd7c7c53873764d29c32938f25578ae0a7950c29934d9d878623640adfab823aea5b248348ed029d69a41f2762e3bb859fa62cbca757565e56759dd51501feda8f3be5468dea32f51d5503e9641e3bec3b755aa0fd6352a08254c1c95c5b65472717c486ed6e090ebaedd6eb4378e75bd71887f19bbca49ef148f913cbcd0725c5097cbd601e78a8746464e552c08127eeebaff5de1540b37b7b9dad95c74583eee8183504dc4d61d1b30d51e5a7d561173404d97b563693c17083bb3b055effcbf0b40e688ffb37f46d3a291ea0b54cef41f8f49464480b17f7017f7f6e9df2805f81fc056472e69cce7222b827b92c3fb1aef3bcaa6225d1e8c23e0cb173c2c2c936b43e89aa89886371119c3203b7cd3394e7bf29a0fbb64ae19d476f118dee4700a7ee400a73a07a8896a441614e3116f76cd58ae6e8b9bde7ec97ab8776e84c9dff4f41680fc306c026ee5caf39b58c3627477c19f3f39b3e35bd4695ca73d4080a80cda55be5d3dae4eeef8f24057f45b932fb6e58c965512d3bb07fdb87797ed007f675d0e89085d7eb93bda336692cfc211a289fc104a9fadca4b1de6db0e5868930ac571814e175cee5fa8db276ebfb1e51809584da93bfbdb0df3397ac9f4fe47ea2bc772c7de7006112cb218e5cbf402a923baedcfd9e4991a8cc03b860beffc9afdd8bf7265559c5af0f70c4372b1c24eb8d4126debb564780f7286aa17149697e7d9c327ca50babef283c6a991bcf8ac1fc83743a8ab4383cee0768c556c02194b1339f92bd1f1e4919585e74251ecb7defb768021156c7f096dabd1aee777774b5d2537957d1136bb457b7d37dbebd581a1b60c4402f25c273aebc1bcc9d2ac03fe3f93709932b5c95cec947316d8762f59784baa0039a33e8916e16ac727005ea0f1b6eec3601cad5b34bcd6e4c8f3b49fe0b98ae9e081e6d6aedc88dc3073e753a11d0c3a4b64fa0d4204446aeb877cad71f78b61442da7ac3fad1d8f581be0496ebeef0c4625c18f10427983675e57ab7a80e415217133352b5b3819c76d228f79047cea790440810040b878b2a54d18430c43c322f83150ed13ecf3349c158805ba0216b736554859f60d62c0ee8561597f52a51677beca0db358ce367da78bbfc6f1c3a9445c53fd91e0d698b26c7b8a2b4a201842f50e0d21e1539d90877fea7299fc08a831cfdecc45784febfbc462116a7bd12dcecf301a7da2a978f6527e57f1be5b52e833039d9bd00dcb87dcca99dc887ca0410646df7ab7671714e76fee5b78006ec1c7f53b7b5bacdfe0bbca426035067e7e00242a604c568707228ca6d5033c26a9b2dc6336124e329a98e78c1245ebc14efaa499183c7df43b916d47dafdf9126904c8b3559ade438b2062aafd600d3bfc3ee5f3123e50750faf9fe59571740d892371143706befe00ed39bcae1d7ae604a9bce4e889c4b0669e5fe1103ac5a4e615903a5c3d645144de577d4aa9d3a4e5abeebfdc96abfe5a07ff7d68aeab1b3e18c5a118d049e1e0213e2cf9da583d2b9f7108b972d467104599e557bb36a710d0beec84c13cecaaa0f511355ccd351da2192f450035d6df92b955b7e241755abe8ac2face7ca735bf4d034bcb289dd37e7336b382b0de8ab1a02b59ced9ac9f12a38be2a9d3215125ea5aca39b1b47db4756a402d2c5547819d0907cc3245a7ce5b3be4ae2ba86c62374337903c6d77986c496798789498b378227565d7b977b8eefe14351bfcf49d6eb15c3385e8f63cc9fd13eb69c37092781e8c2dc3845f744c1511c25a6ea363d7b3146b5602a07111980d9ab1ac4376d46fe5990e75bdce9de24b9af38bb6c65e6ddd410a1638b5eae14bc596110528a237a9fa7bf1838614e6e7f8ad3070a97cb010b2e30438a9bc1d0d1dfe9011517596cb1000000000000000000000000000000000000000005080d111d23",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 44,
+ "comment": "signature that takes 24 iteration(s)",
+ "msg": "2606000000000000000000000000000000000000000000000000000000000000",
+ "sig": "bd1c81add57c6fc6aeae596d5e88a9a40a1f146e21b923909e3c90f10a77c0451e9af75db5309434860e43f437f04063d72c40363967069240efeb1d04aede6738b9b9024b8186041cc5916b8cb0098fb0dde884e093911e4069949d720ca2e9ed86d442ff7e07f985348b569206c6640a9d14d3d89d6529aaf4b51295a6384b3a6e63a046d3e89bff5079d58728780fe8050369a06b397beefb82a6ae7d9f6b5219f993d34655b578454f62fcdb8421b8bdcbdeb43139e4302c44d1ae23334dfe8b51df8feebc24a936bee7b4b647826994da416318abed7004abd7f8b446a32e8229e60f1007b1fed5795a8df27392e7a3a1cf8aae5184065ca28312fc38395f70b9ea8b8cfcf1015b6dd4ea1b2c17b22af14234bf102a06ebb70a35ce2c9d0c8afdae728c169609f61aa09afb14ee9911cf41e6632a031c9342f8448f4f78ab81ea49cb57d18d07feb70d18c16479a03d4cf00b2e5e885113a16a50594901c6daf75f49ff990893370950684a8625ca8e882be5488cff442ba82d9b3b978e6908edaaab70ef89bafcb1327b3ed7277bda85f1b39b70d5f3571d5619ceeecacf60e29a37d9043a3cf41e03a79b4747025fe3ded7ede991939edc8d6e1491ba27e22a493ae6ebc189828ae00a13730dc5653da364a79f0d3fc00c0c5fcdfc7107f235b9781d5ca972eff4dcde7d38c1f30fcbd3e51d79c356dea6694d2ac49ac46850e06b509e51f6816e404b3de241cd3f869c68618709373d54eef4f244288e13a0fe8331a09df7073c9668ce07e83cea9a20ab76083835157e8c75408694a5a012df1b1e1d08343bd06d81f6dec60b2590ad6ce34bb66bdf6ebf0e21b1f2c4acdd25b7b212cde6b2bf826c13216f8f62be455202096de344759a1e66863da69cb0268ded55de9f41e4d75dbc15c43eb7aca6b7f8479da0f25d3116b1bf28ff205f8d25129a01f22ac3976c80eeddcad9e963fbd60743e8976e2175055bd6ae589c3808d41e51e2077d7e2f9a5fcf1ae687d7170b96bbf8d1cb67d146480dd38d6b52f877622f489354e587a4610756246d647eb1dd002253027032180490924c8ee0317bb4d8d7c1ef415a0df37bcbe1201b4d9dbcbfde250a8a89a7695c280a4be8361520869b5d23aeb6e7df2737eb1f28812f5ffb9b1302d5b030182a008ed813d8232347342abeb3ae7f7172d8e85947899714d9a4af587a43bc29fe14d577c37a2606178d342aacd2e9a33e159aac81f29e6500f7f8e1027d3c60c63498bd2e391e4be4caaa6c715c20316eccaeeb2b0f1e0b66809de88890a0d14d251570e409de7b84a4ef7d2e5b489a7ae7378123203ee261c06380b44cd6e256568c990d86f6cdfa444c333ec851932f27be415d6be7d8c1e063a44b62786fc1449815072c111f5b98e8c7d4d994c68cd21d0f07099c7eab7432b7853ba55ae27cbcd48be775b9b5a9d407c939206bedc59708f1efa733ce1b7f3df559b4df5b1bf8c27f8860bd837184cca59480fc7605b9faa4f1680c3389687030b68e343fc56fce77255267ae53357fbefe4f122ec52ae2caa58eeaaebab6cf7dbac4cfce5c95bc7dac91517a85b14c560eb604e5fecafa596fd3e76bcdb83da6b5f239ba8cce4a9e14957a71306e7efdc048b9d949a8cba9877ea329c39ba2034da897e57d4d8f94efd4328b38bd27052b224c7366085a578524b6f42ae9a2d047519e0575b3cf6b10a4578850cb5008446bb32996940d25c7da5300d9561ae96e43ca17614cdbee350e55e4a07be349d5b181ccb3c806a2cc7c1ac165a3dbecbc6656beae26bcd37be4480dd88bbeca8cb2c1d12d4594376d1876f928dfd25559ed402fab01b0a3a3d7eed61a845a31d3f2cb8204b7641d875304dd0b9a84957914fbb3a1d7c15553855f8122dbfa5275b0bcc66e49741bf4f88c37e830f4488b24459076039776f1342e1a5fc0af17d81d96c939e1159ebe04791fd920dfd6eb7d8a74fbda316d70b4d327a5411fbd0e25edf7f9448dc275773c2f05e9ec8f16006c4c8ce51c6c3b9be2f3a78ccf90468154914716162df15f008e64720218a59e69478163473af62c08780390b21638c7c86ff5ed90ba003e9511651601ac7ca5f505686b3101e53c736a213bb56d86438b9707187429d48e3dcece259b4f87eca78cc9720b1139bf27f5deeb6614002e5932d44f2220f22058e5644157e334ffc348d25a2be6859e88b27d365c5a07f86fc0d74b68ffcff73480a14973b701eda3a0d16fb39b86c7d344a51f10d3e4d80fa4a240d66621a436b01e549dca7d6ff595967a41ef9892ee3a316113f5df6379c529aacc5e332f4e108a613c799102f962a9156c2b7d807ec4de42b315a9131338f2aa35f889e385a79db045c042d6b4199ce0d924a859bf182f8897c1aff76c4470077c732147df78ad688c38f39c41c525feac6cc92cb0e58cfdbd24f14ce7d799ab19a57ce7542abe78372143b39b014678b7d02855d7682f2d1cbaa063a5911de020500d7bd4b3e45eca31d992881a3b9d8044d51c4ad2b3db4589c3c6aca5c714d31310e3ecf91950ff12306e52302b05aea52c2253a6caaa21f1c7b0b4be41fc00e4f2b318246785157f77ccdeb1f8e85aac7b97d28db41a6eb5524047565c9975b155d2aca2b98d85fc9d1a4e269adca169d145fa138899a975e13183720ab912051bc9523be26176b910d98fc8e191dbc564ccb1a0767acf1c5f9a92e501f8098199360674727968165293f778f8f87335f4b9fddabf278f65f205179a43cc8fb60047bbc4b26beadab79b35b1f316283b595046aee055d68e7e86b5664fc8b32343f9b488b31aa0649433248e531fe5d570a531613a50c73fa6bd546c861542ef16be17f35ec4fe92d60905b6baa3a0645ac3ee67bc6bd5361def91a6a9786afae9dd11c49928873b7d8efae32772ff1c5b2c065bd9ac18baf76606889dd80ccab7c9f0d3eb773fca1d561d5fd0811faf01dfb1f8c1c13010d23f8c1f467ed5c5577ab6002234c295c622044a306299855588fe45a48e00fb15b314d646d80daaa01d918c7a5cc1c3eed27f12350b58c6fd715fae1c932280dcd1affebe0d09335ba3992bd3d1db2a4b215b123da1a68c75de8e187297c625db9a9a1533a4bfb1ee3c6acb69f2d8149189d35ba80077aba0a1474d164ceddae3e8092c423099a0ce048420b03cadf05e897b8fece53857f0d2fa126b3b9bd80e31cadfc4400546eed633e1d5f0e4759b918eb675849f86931541678aef583b9b2894c905d7a5a0951355d5ce741c61c146f2324a372b87168ea7b380164a9e36bb3e63c3982eafd6f68e122a1263e745fd11dcc623d41c4a1f191cbeec16b2bd23ad9ef5a6067a1065f21a59bbf76a47f35a6ef3601dd6dffa00a96381d037e969ab938a57f21d38979c79480099f621cf8951094bcf4052d9c6b0c45cf35a987f254400b7d43f9ef50677192a9ea867046e5efcc8706aa599f82cf59ac0a67fbe162cdaf2c988addc0d7f934b850cf5739bf65b7053d280a79ec3e7e5bc738c33a883e31484d0003f2dde5fa7e36889f544d126e2e081bffcb41ebef6185e73399a9a336ed07c119cda65fc115290f149802f9fd73a6528d8bb05f0b210fba11ccdfc814d16cd6add066a8ab72471cedb354a4f60ca209153e7b0b1d065f37bc756ad1100ae851c1c998bd36c649f8c5a44ca5958dbffdd88bd925653081e2cffceba6cd4142a4bea47cc8fcca2f5e46534494689d45ff296dfe2b1985896bd71caaedbbb7ec7ceaf6d540c2cbb8c2c37489a5932263ba0597c3ba25a6ab50a5a09af3b9cc6a2a2d4411dd0d3608fd163355cbfec4a6dfc1bc4106b44196a4591af1b6e3a75e7b1f3769ee924984781197b9c2730e9bb1750005a65cc74689e8712c2eb16875c5da03a8bb29852e77c08a16bc23d777c99f628c688a023ab8431db5f3d0f463d90e698e3430bf2be8d02fdc41035b5047c1bfd21c936ae69af73eb258c3907efa308c71d3f8d9ab0d40d45c3888256d9c3a04f26c83eb63a77f290f2b58c6dd4bddc346266f97e55d0f044e7344c37652b8b0fa492dd5445e84988ffb92249fbc69be049c825186a2973631d5dc4d10896983bde511c87e2850318963cb1e239a7eba4c06b6a2e9ee2bebf127f54c487fa3b28636a2ebfa0ebe042adef1fa17913692ec0d1647cfcaf6c90df6f9b141d8fe9cdd8949d80bd9ebb0712bf8dc1466c94c625c9a9736fe4ddf78aa6574de6b1724a7dfc5bdabb99dc22cc3deb93d537dd5d1b75eeeb4505c8f6ec102ba1e694858ae94a66eccdb977432aa02f1b3616141c8c77fe5512ce888262cf2a3f248db8cf5130196f73dfb90dc716b0e21da55ecaae1abd53968a6262a1759724d2e4ace335aca4421b38ba903f501adde8bacfd7e6cb254e15a1aebf1ebbd812176beeaab97f205f570f5c2e96f9327af9c17514b2e62ab07161ba674e46c1dd6d77c070114a90eba94a212e4eb5e6fa62084418afbc0febd8224210444953603af26d21ad0a5ab8812044dc9522cd42605556c501aba406089bedd703ed61fd3df829ec92d5137c4161286ccc43728d99b2b5d2f014161e273238535661a0f1277177a5b2f86d71acb3cbe1eaee4b78d61a6cc400000000000000000000000000000000081319212427",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 45,
+ "comment": "signature that takes 25 iteration(s)",
+ "msg": "4301000000000000000000000000000000000000000000000000000000000000",
+ "sig": "5986c4549caa794e266a06862811cb2c44d93bb0ce32d7be8957b222eea8a487e8ea7ae835d09779ccfc38f48f7988f828b7b26db80d5e391c6e19ef4e190bec207775b5f0fa2d3872c8412a895d57c490c6da737df3c7f0bb2fd62a676f1a78389efbac474f277c4fa9b08f3dd0a82ed8876e3fd7a3b1614cbd5f0c51538621cf478c27ea39d6542bcb62338015a4098b7aeb69f0131cd15ad80e7e797bc327c8c20139992d49a66a63ab341a17c080db529df3c30aa8d76043cd781b3f6acfe97ec231db5f026a86d5a54bf0028a9c6b9452ee01dbf7ebbc910ea50f8e4480dd393466c8def5943ba822a67e7d5e20eb92243a84774e838924d7adf1e45c65cb85383c653c1864d51663621e3914b1985868f50c7fff42e04d57440d5aecfa221c477b7175ff182d461448e820dcf7b5f04c132a8194fcec3d4d02df24db406a8782aad71d7c27bf81e2cf4d11e23754c01b3dce63417e9d812fe5004c13c97ba3e4674b377c91e54c707f15f0ef9f131e8fc875d52b696fd46500088c3925da2ab487a6869cc8597ce2336f6e3ecc4fa42cce8c24f5783d52166046b19c661f3084601723196a65bcea4930a4814a99bf26c48f84bc810ab6829e82351641f21082b784b46e2115a08e32aaf4dbbdd6b9a5c72107f405c47d0cba1168f80e9842d4e47a0dfdd42e18d500e1bdd573fd4e4a7cc18f44953ea81d94bd1694bec08e67ae218074c1f179063587a65cffea71e385ffdee9a162fbb113d4247822e46f13ebb3462a394323684baf59bfa80cd0a1209759fd39f87a367c19995b92c7ef13216a39d0233ba66487c1ed46d5ffec611f427abda454f5be5e34465481898ecb4912c1a68067c4aaa33f525911d77e28e9d764bc1124a5b889fe928aa090f80e41807756541ecbeb620ab4d507ae30b17a684e2a18af0865f400904321a9f736fa476aa8c5f7edc4ce3d883c197fd38edc4ecfa26ddc86653f13fce2eba247df6cb818ece36df59ba220b7ae5cf6059eb23013a88ec4aad41d4264d2814921c9723fad5aa4393a646ebad0ea1dc277f6f131513bb77987c9275d9efee0f593f4126b490c1157c72d4de8676c748f8ed5b8778e5687e000569802c1273a52209d93b6de376621932e9743857017ef1af4f313a346c956b2a0169d4f3059a7ec5160f5485b8f00e67d04d36294e5f4514251c5001eb8da57398fd085d9564b959d4e2480b94b05bedd937a00fe713f1e894ed76ea0349b79ba0343db1761f23216ce929b20ff49cbb7cb2cf77d1ffd2675125e18270e081b18c86e811881695fc9df5f17842b1fae833dac14e1b10b32fa8e8d83789949aa0c23e46202453d6836511e4731dcfd1817aa02463ce1f175aa3c6955cdbe5c58d970dc0d58385bc27b2f33beb6eb638fc9d8fe285006436992d96948076b35a6dd50f97fddc72fe9342408841a5aab7893183d465694ce956fdea8f7539c4412d80f6726c2d726b23ee6efe01bd520ea514fb751aeac7767b42927ded102acb1cc985f6d371551306126678fd6cb64073683295cd6b84299c3ba36a7acc6810e4732389408919db59b2acf0f71178af017d114d9d543e72f74e0a6042155a34e9eb313106428d15f753f35547216e47500d3dab9877e0d8a8342606c4ab83e421c01389087f7763f7f5ff10c600c2308255701cfd04e63cfc435cd1bf1b24eb8bb8a6812d6b38b7fac21fb67b892e04bbecd2a8433c0d104e950771b2243595be35423833d46a6b28878cc16a033385e6bf6a94a4a6d1d5518d538fcb475af1d1c476401edd05dee0b014d5ce68d95a06c8a30c68d8d33419ab4843478708d938af757da39d45a7b77f79a8f8a2c944bc95779ab747d555094f1b04df45dfac56877377d5483b56ffb1ca69c4dfe07943b41a4d434a7ccfbcb64a374b61af0bb203800a10255b87c715a6366cb1b6b5582135e8703d64235cc714beecba43e4f31cc920c6bf59343d5e78e4235b9acfdd8ce49fb38ad74113a0feeb647f7179a33299b1a4bfa60af1e70ebb070dd07d33aa793e434c9d7aaae98f018e72b1ab8788644c4fef6b0028a39c30da55187e183413fc79ebe18a84561c15469e294900a74494e58339972508086dace548868594071467360f24efec75414ef502e5f389e4411150672b91f62984dda1b4760de4e738c23f95d9d6c56ebcb316e4ea71253368ac460e6a754faa69f2ece3a13c36dcbeaf142ba85cd506e30877baee307ffb945afdb387ed02399ff21aa9746d850c5637a937cbc6c3b03a27142b945c3da9839295a212d644833c0d85984cb5df2f7f139da90d66e6e73f51c9c3ec8ea590fefee063abf28bdcd2def788f25e40a7e25d01c11def224fb2a42b880f725e1cf2f8c08c8e6b3f80c90a6020ded9cffe0742f82d55040eabf0af6af911c336ad92f944480f46adbe8b5db18d6b34a3330bf2c50a2028f707d9bda1fad9ca620db5bf2037415e07d2d6b7c73bb0177f7a1bdfd349b87adbc736bfc7db2613eeaee51d08322f20a0e683af01aeb6c1d9dd9ccded7b9125b8458f052e7998ce4a62612b815f5fdcb8eff33a9c72d6e1b4fb35b01554d6bd287c43b8e4e8cc8465379b85f84176487fe89eb43b7c7042d7c9c1bc0f35c55236df89d0c186edd0cde61869489c0605946a936e90096e7f0614a74265adf8bbab764e968996ff759afb9603c359c195d7f725eb06701a49912401ad296d2240a6467a80a7fe2a440280eec32a300b2438b08f5152376c25550d0dd8e8237742af59c85020b4757afeb91aad5db9bdde9b7031445ef56956963cf27470cf5c914e267d29a70f7ad5b9c76d281e5a284db8a7d6a69b8bd626e47d6edbc7ca0bdb6df8192a230d8be6fb19193add1bd107d395dea7dad6f0901748a0d6ba6bdacfea046187f0b60a2f8b922059ae9565b6a20f99ad9b107c0a287e2d5c2358d7597ea4c029de58b4f13557df2012bd8f71a99d924947672866965ddd930abecfb5e5a4955f561ed9b7b00757fe8c3f219e7955d43f1676d544f678e3dd8f5ad9e36b3ff2b8ee15272924ac8255a53cb9a9e9202765746365181fe5ae49c96dd71f4c3967cc2a8bdb9a58f18ef1b8808e3ea44f076f4ad2dda7b2c78893960e844d3ff18aaf815286e5a5c04850848c3f25c0aa5f87fc0d62d286c0ce82f51c6e69ce0fabc3b862cefb8fa616cc46a1e34b3f893a4ae9b6d4de83c7419748c35df9841099ec8554aa5f7f310eddbde6cbbbf04f76336eb47fe161246ebab18bef7a9e3532c6a9ce0e2dc73579fd6cb1643f6f01c465ee4ba1d7256130b99e0e0f2a16d457d394d4e763ba36c918690ab354155d2fefda366cf756044942712cec0fb1d1941043dff020b16b39dfa77b064b9267de47f5d9fd5da780c173cbc729f17e44ec884a63b0eb3ac2208b725db57b6701391ee8d3bdc94f3a3664b5c6ecd2c166d037c0566473443345953646b9de89ced08dea5e800bc4aa1f8ad5f8aa6da89e9e93c2c31b1cb0ff0c9b7b4d5dc9259b65848949effdf6a1970326381c8ae4d039c372dc92baff73cdf14eeee4812524c85090cfe485ff6ac4e8bb5d96596adfa62138f27cca7befde57494c1166f002eb62d32b5705a7e9642ab4971bfa366f73dc268db53940ac5e1f34dc24b9a8996b527f15c69d9579b77b7b6663f2941f45448572aa5998b62c8f5d495176f6142c327217e1da4cff053c607673f14a912d9344bbf9ad5fa7e623ed769bbff53bf2b5a1c78f79e69fbf53fc99c6e171c90525803751b25ea6c9b7d496e8a7b294c3f2ff2455cd8715071238825ef6cf8684bf29bb490a1e3111fb305f3bc87357e7263e417cc7c10cb685077a1cf6f058b1108021f78a532d7c948a485ba35c50249c79add06a6cedb346792b4c02a480a2bc669954c24fb13fdf4cd6b5071b969677e5bef6e30b69e84b8a69c98de885d1d325526c58dfef5f72fccf7748ae8b024d915e14fa01c35e018b677a44babfd32b9555b749979e61bb4ef464f8010d1f8d457bd9ed6f956a6631ca7bc768b86be99fc5d2cff06d66013eb0b128f2245f6f284faed9b13a6c6e4a14c3e4a742967e598a06a119d84b5e3f8bcca18f28f64c9824967b6280cea61326ffa2b20790069e38265a337447eef2f739365559e96032d3e17349176963d9a05fcadeb86013c5869457a182f4a95f1bb5e4c64b640de8ddedaf516f7d80afc8a08d1bc5c50aed4e0fd32e2e3209958fd814abe06267b879035b05d251fab57c104b3fc4169d090b6830e2a64a221f67ecf08122f91d638d0a53bc211c654ef8162e625d75ed0a0764189312630ec3534d16a33d4e55f95fa5db64675b7ad8a06596faf5a8a47f8308b61cf16aefa2e6107cabd21524711ef971b77a1d4ba8ba1318d041aa7351324895ec6a45dcf5ecd14151d6b00ff611071cd686668ed28a0fb77f4dff6095aa72d7d99792aceedc33eedc40e30260fe127bceeab8a5c1e7edd27d0873fe1fa7017cbd9f3757fc5d92676d5f7e8ef5e85827be2ef8287d47403c68ef0c369ad5caed8bc88089f34f84e69f79309317eb49c2f34c74258c711181a425e93b5c5d7f308103a626d7cfa0f3d6b77a04bac00010819b2292e5f8794c500000000000000000000000000000000000000000a1116181d23",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 46,
+ "comment": "signature that takes 26 iteration(s)",
+ "msg": "4801000000000000000000000000000000000000000000000000000000000000",
+ "sig": "3a274d893c34e200720af504ad6cd4b00d7a534b6af57ba65951cfa7025ffa7004d07669533fa01ddffbdd752b84d2b44273aad42294a90bde3252f0c755fca0d12d203522874612dba90d195d5ec83c8bc6630671d7ca2a0ca83c89385937c5d4b1a1392df9a378ba3288427ee327b1643421695aded6f1ce3fb11ad9b4cfc5cd0720c9b012eda021df8039bd2b8d5f4f6f78b7995b0479e515faa6539e2f36646f35b9227fb42e23c6d49f3bf32c4f0d509b6064d5489faee9b5409ca29d73fb0eabc62e23b1dfe784940f7ff0a9560d4d7d278d41c22cdf07be384aad9232a17a59f401f3b768403f5adfa4a3f9b1085f09962f2a9f0e590a2432140fbdf3a416b45c8a5b206671e8121cbdbbd89bb35bc8f900775cc7f9c636883e9a3bd1c3367354138dd98913642b934e6189d1ac221cdd7030833c5da24c70de3ee205b88ee357132417e35509624afd510b73255266b23b735c9292540e4eaef743c6f30d8844b044b527333d2cdf16b37d1f1b81637727b1e7376ddf58287d01da6d000371428cdf431995a7bd02ebd9d59f7d2a1cd33bc33026446f4a02132dcfe734d5f8f993946ea932f1a4648df1fe0d76db2f613b269d908ca87a12a3948d110b6bb2048a1780c8bbf6cc5d5385df362fba179ae42a10ff706a106722b41bc17c56d6eb10130d31b5bcb715fd6ddd7aacb536365c5f5c8b92f29f8f5d65c0c68f382a7df50111707628cae2ccf7913174ef53dec3d6ac7111c1bc40264d8e367c4f42ed57cffd874cd7a5c698fa405ae3121050e302da8ac890ff3aeaf5e388e95023d082e7ec4ce625fa3340c9410499c9e1709cb4058edb31ca1f723626290c8912897f73f8a475a3f06173202c154e33812135ac26adcaa585c72667e3c6f20ceb1ef978815d4907298d1821c7a5fd76489ad83c118b38a9cd9dba5989c5ea00623c964dbaf4b6f072b478fe1b13b8f1ebf4b938ea8b4bcfb868e8aa43211e73439ca50e06d3f5b2d9a2a638ac113ace0d1cfad0cdaea234921cb447be52427c9726f581af29c2046e9a4e60905910de2194a624df7f4285ef058b430d9803bcfa83be0b75836f317eb6ccb2bf32594a3ee2765390aed29070249d1a899fc5836187eb65685867efcd75e84948769d9794686afa30ca9500a636a9a90f12e2e09f2bb5b716a5d970efba2dd317f9e0d5819db99f0d041ccef8f5df8490ec13854eaed2f86232c10dd9b0914814bf4b68679d11d2feca8ad67a3863b73928ca8fc2e4c00adc5ab81ad699c12a592566e3e13b5f814e43be38e32d6973f68e7e5d0cc7479fa5e937c889da2de8763c1abf517aa5fe879159328477617980aca382dbe22831a8ef278591aa3e9e9e87beca16b873724d500b03cdf46eb3be3ade2a3698c1189d376fd79b62f3f491cbc925d04567b735d43f8f622e2e7520ca8b9345bb4e5163be6ccd63d01553a148581e1088eb666bedb6cb0d3cf65abe30100bc530fd1ab6aa111f3780aae419e564c64ce6253741fd9800b84add684500d3ca1becb03832b3471448c1bc0251a7e1ecc84928983863bd2e6ae09a5840e9b9cd74ce6b40e78cd5dfab8755bf36b6146732b599836fc2db9af2688cca570c70dd7c7fd4041b9a4c8ff98c7981b1d09dbd009243459864ff562abc1512f2f844713e3bf883b2710c3595e570bf77d180dc47df51d79d505ec4a9895059d5d3702a93f5433985e1b51078199743508a398b2ff73269d3a566b2dc64cd1421c5a7198d544079ab4906cb35c596739e5d7e1f9c212db2278a1dfd2d1c9628f5b59cecf15b6145779e9de4ce43bcb5cf880355365e192852fcc0c85d39db6c5052633428019a50ef7266ab9793f9e800f1455f1fd77e2f90fb13e84af7ca933a65a07740d6d11506f650755dd8bff8d34bcaca2c2764b23d749c116fb2f2688e5abce0ea28f79c6ee013b904b28698a17c8d012e821504963bbb6af7567b12bad96ecc3df7a69d22cfba305291e7b7bb6466bf179a77b8d2481917eb491ceef67cf84cd63b5bc87b26441108b03c8126813a4f545e23cfc0f285152cd5f2f77b93a000008c2ea142681ab1b9f7b076e61cae8e93bf7759a7f2bda2cfa86b9eba74b77b03b53f13f6fdd96681337616628e06a2bcddc4b4fa4ae12c0171063229f1eeea4f28e2fc26a43bcc7318edc608c99b898212c3b04bf85b33abca45749b87a76e2240b987a63a29d29f01c78fd91f3240d915adf41f2b5d80a848781dc060d0ffa737a0c6cfe5b453cdcb2a50a39d7ccd58565a3b6bdb2823cf9d7ec1a204546eea31a9db531b51214547d66e85e590a663f391b0bfd0c67a2271fa5fa6d419c659b76a7254468e80e78434b786b385c91c6f9fbdfae0b1155b87a708e922a0c82f1f0189e9d953deefce4f139cf6d0a8bfe67cb5f6cd44627750c79f54cd0e1272843b5d08dc1e192686ced88eb3617ade45516159b39c6aa65d197dd4758e3b290c17b9112c04c368ba01dced699d28de4d89395a49ee36e931cd3591d3db6f26fe300309ff6cc1d98e0d7f03f30a3b6b8832b77f31f951d89757f1d789b47a87715718f97089df9540beac7d7b05776e30451944bbe9de43bc7ec69ec984301a251e9adde7e83d5c9df050d063728c6f6bc2c76e8906eaa87ef040729cb00aed35830645c81d1a39a1e77bafa6d4f06b415e586c42b5aea4d8e6c6a2061ba0497f7c93a1df188b2d79abe9b7373d6f0f63bdef5edfe82b37a690fd51f0b044cd3192455979a768450f7679e86ea1756434fbe3fb8003f376d28e666fd4728378b316944cc7899b07a01449d53314532ca8fe04007f2c37a5807a53468a433d62aeb4c138ce3f9f33d3ed548e408e7ae0da25b5180a6773f0037422d7eeeb0b449733be27a6ea43f26d101b74fe47be2babbb8925df95e6de1498069be6d067f232443e11daf9b8ad0566c923f444fc7c6705a3fd8b77fbb2ab13b9a7492297d6a2274e4a3ba46efa965094dd4005b0d9a32510a6ac9c172f705c26dc81b702d47166bb8a930f16f19419dcba6ae187ef91d79fad465485aecf38a801b8866e51ea5ff1d93991c556de9d91867052b03ca4ae4552e6f0873f095209bf8bbcbc64dc90159b105be69d436b7095fea150d7fdeba96746178e6052105b11abe7795504b078eb8a647af1f5ad3d2186282ed2ae7886c40955b93448036412ca7dc49f2e562c5afe8694525711e7f6e49b2515e5a87c480479f514f4bae5119ac3dbcd730ab3c3f2f06d3fd81a0475bb1eafe456dbaea87d2cd880c96d34c348e4650cda3329f6a082cf8db220876cbc410d0afc945b0c059a3cdd28e094fb7de858a3aa75fe3f344fb018a121b26d14b970167ddeb9d1eb3ee53e32f14611c05d6641beaef94921315ca760135961f182d1747ab5f66933945e1147ba4e2dddce4bc0329f22ac00ada5d4d311125831a98561d21331e578ed42d0b894597be1172e7261decbe9ffe0a4420e2a031ad2143524c3ff272eff4646acc7eb60048e99c733c0bb7a0fc957995c8e6656183f0e0e1ae552dcd5fa7c8df4c9ec37180a6f4cac16366639fbe2395257629aba0715ac791be689d8560779014b8348d271aaa91073e5f1fd2bb0be908bb68991dd59443d23dec0dfab6e0b7cc659bc73dcab4f708c48aa53b8433e787f80cc8803eb18d6647fa629dee201e64e04be60d32f5dccaace5e1e2fe6742aa695c06d9839eb30121cf5f145bed70e3f191f26abcee01a6d3de849634a4466bdc57dac8e766b9fa66c57b8412df00d34f586fa9c3322a8847bbc0cdcdbc6eba26a3d88589474bd928aca477fb6a766fe375e224ee54d17297146593adb3677c7713342f05059c53154b67f97a4cb949f5911ea2dbe43adbccfd151ce69061693d51aa86f651d981f8a1221b8faf9fbb9dd923ab5fcb7ccc625a2984d59a644c50cfaebecfe76193f69b4e1b410a607418cf09e268fc4529cc8b809bddf0c594f25248d09cc3547aa87d08b330d4f783bdb17e238a17a481fcc1e1a38676ed2c8849ec96226bc24e085b66fcd15fe0b5923690e80a4cd198ac10c8c07af0688d77ce0125916fec05aacf2e792c73fd887ce36b007a650d4033cd1e3ddc5c74c2f9b68502c307790184ad1b7dd2ae3009b155f95253a480f832435e8472289ea454d3762c6551b07335137872c2feb4b824211b60cdbd077783fa8ee0eb49d506a37d77c4606c42d27d6c477d20d4ed89249ad3455d4fdf53fd4122a82e5114cf246dbff360e4427704a7569c26bb477c82731ed984a52e3368f7aab7df25a32c1932f4981a27d4e82e0b61830b238e97e7e601abed437de4a9a009148e865cfbc75a96b14315b1accfd252e1d661cab2818008e1841a5773fbca270756ccd2166318c553aacf82af9504134de4f3cde8992c14c0fada09364993e7de7fe42f8b54996ecff54e722b25fd51df037d4d3493ded04f6507c1aff93016a49e1e0a6e0da42cb4630a79c5aeaa61ee291ecdba09e1fe36a4039fa456781dafa4defa0ec2bb0b195cc0fbff9054fe4442404d111a7a8fe75f61523dc720347fa80816d1280a03c9415234996d4f41267688892b5031a1e344ad3245086bacbdadcf007185c6d95d9dddf94b900000000000000000000000000000000000000060c121a2224",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 47,
+ "comment": "signature that takes 27 iteration(s)",
+ "msg": "c302000000000000000000000000000000000000000000000000000000000000",
+ "sig": "2281ce37d3d0d0894dde142b097455d69e4ac08e358f921dd86fe71a294db8b2732912b1de60cecefc89483393815556dcccdb912938f8469aaa536861d8c3d315b8efa1204e9c7022dc44490ae1fd7e2e9d640b6d0ae8a3a3c01d6a5d0594a52229c8a7028c763f688d3f72e3af83d25a01cfd3b6a7fc31e34dfbba78ff78effec007555ebf96b4d9b14eefd1bd19c66360bcb1e5a77092f36e2d749eece8c89050003630fd0c558bcdea939a53e61ce80ee98842cdd8afbd8840356817731fef575cae80b3eb8678d9884ecc66846c625d1f2d617d51f1fc77fe8bffd994a483689f9f5f05132706308448a3342718d487604e5006d46058fd1fe9302410171f93c3293737e8db35aa27bc901cca074ce2e19c4dce9d029c36553cf92a1500612b7badea5cc4e20389eb01b854dd547850976df5e6d9f74a30c7ed51b2debf80e9e379cf2645d6afce7757c449ed673e12780e2cbec4aaf1732e093b255ebf8103bd41be041df5f0a18f13c8f14097e8f998dffeb55269d2c7f882588e942eba0da32a3a5a193f7d18921ea5c82d7751dd939a448c891fe500efa06632faa47309a8734fa2f700659b9db7037320c7c00ac9b68f1f7de71457289e9b8290d6a203c48c21437aef6adde8ab2cc43170e65f1704aff58af037d422d1519bb756beb6f3f4c0ec653865a354658f305a495d34f183b5e17bac2ad98bf5246b440dc86758aa047f02aed76fa5f27935b3bff953871cd3de843688b13514aedee789bc8ed44eacc66d5b8d6afb80890fbef7c6bd87efe597868eeff71b92820f353ef580ab5e57faf63a762581ef91f864c99dc34d7c2c8dce0ec103a61a443e0c6d78cb03788974ba6a2a261b31ba71f3db05c2c39fc8634fdcae6498c46fa37bca4072e1a0b2c67c01a30b89b944e6a7d2298504b1adf2a5cf00d02efb14b2dbdd1839c935a3620e1ab8dc1c2be6fd05a79af94943ef98b64a8c86e47e3903dc84b7ae6e84caa9b79f2996a015ce6a4e3d7274d43fa71526fdc4d9d9d364d05a2f7f732cbffc9f80a4e5268f9eb57206d380cdaf39b2d64a54295dd31a11ef2f2f4828f57ba6af8ab69271060e25a1d987231d6692bcd82247727a211804879219cc981c1ff6cde51bc630b698e767107fdea768ccd0efa2c1e307bcc32a6ae0483f94a0cabe09e01e2edcfd08445870150f2980d23bad7b5187b0a3eef6e6be018a09b67a1cea314e588c0c41ceaf53206859f1712bde6f2e8e7d30209225de2de928e4d42c34344388feea70b1da1da7b0951e0ca7acb239cf95510dbe0c3ac01187661f2ee604f86db26abaf8113358ec1fa976bfdc0917a28837f63a1d87b95bbffd2266fbd2c50cb6b568782049627731865c43d9a5b6f637927044a49bd7c99efebcc7a65e773aa8e846f4c793d4e9c193ecad8701e6cccb7045b81b3788f23b1b523286f2e6e4c570f2b6c99bbf14d5a79a0faa9ee55c60c4e23e06e8eefef6706babc9a2d0dd3b81c2c8056227d798c8a55de8a49af91f9bfcdeb8683a31e576ced44da0efe91d20f4d15b1c14cf148914b6ea366f676a97f60680e3fbecb29e34573da9d100aa525760eefbc96f9864ab360623ec1f41ac55750af455c0f24d463c2f8b249d49ee2fdaaa7f5c54c9650cf1e94de0e56f04ed2e1b0a02488a3d608f31e67919481d53ceacef129e92b3dd56b199ce2b7df00abc793d2ee82694490ed97df05365c6205e3c502ed9b8f712a9862eea823514fdf9d7b2fe4bdb9754f1675c5b453a4c2ca893d584a014615309d346823169f732fb4ca1c1cd84ac527ac560c9fef1a207c9f35a9f898a06601a5b910971a3319f6c29d0b39df7ffe09ef464a9dd924b86b641a0b66432aa964c94b608c8681667df08027ade6b013173956a73a6787c95a13fc753a7d4b2fc91206c864be82382cc1a1d4e4c87e0d1d9a113bbc39f377d3de28f63df010df89af0cc3ecf30546f2435adf22fa43166dc24f01f441d7d97c235c5dece7108e3601f878b1c46c2ffe75363bebcd293caef5c4b0eb88d88c1f340dc8ca4cbe5552d9136ca1e3d5d809cdec4c4150b86e75f02d0189565ed27b41efb8ba982256bb38ddd04e61b3b77405fc5e5cad0b0ad58a009b68cd7014fa45ce704b3fb295d2f52953871a6ee94fefa1967030f2ee1d031f826ea9102d1701136aa5c81641e2a6afef50624785c8c2467e76f0f903be8bbe2656fb92691cde368c3f9a6fa870f50d977b8b5592922a49c0ae14d82fea5af9b2f7176898869feecdc76b6efb0472a0c24c0e9a2a2970d74d8f9dd1568ddb1a9c7a835e33332236e5065d72bf4522d4b18c7b3d14295a5986928d7f74ca8b63dd79f6fd464c5e0cbd98ccddb1318eb9738f32ed2f1c3b4e929e145accf8502b8a4f3b8f20afec1fe4cef9438ddcfa55a505dbccac90914531f82d2aff47976b8ee1e20f127478447896b3fd2c1a35be09ca69ee75f9958e569b3f4951149d32de2918fbbd3d2b5896f50961d35fddf0517f597c8273fde3712c6127d35d640ea580802ab2b5709399df4ba0e2f2a5a06013dc6779373672febf0381a25cd2924ebb597b03a1fa0f22ac14d77a524c7ab5fea1ccfdc1d55f37252121dbb050555508f9d9fdf0ec12153a48b12f67b6c95ad844a199a623dbae872bd052ab47289a3b6ee103aaed7755accf08a38618ef4d4669ca931d0e14bb8e9ce77e54cb61ed64aba5300105a85cd303bcfeaf167663aceb81eba106ea896094060945906bf4dbe038826e1ad58d1ed44796fcc7a464faddf16a588626f658fe21a526988e78eb129dd0bb4b645b2cf85af83722b4385f535155a1a61af0e6cd5d009f37621b3393b67fd29a171204848cd66797dbd3e43c088c473c26f124f7359e09c75e55bac5b43a19542309acc4b0ccf961cec404635799ca8516b11c5ff7a6348dbf0742a1267abcc48235bb95835047c74cdb1d378351f283e07f48945c7807fb7820564ac2c207f3ecc66ba24188dfb22801dda9b75b308593ab2f96e86c4af563a2c355f7e153901529e580edd95b7ac8ab3e1211519f99a91dbec7873b23b18e776a2904af31fff2e8e100b13e777e5b17f8b35903f9c9558499a1f96a8b8c9f1ac5cfa676a194d86ccbf94eb02368b781c301ad6560210bb28b5173da3a447e8a850279e0b65c828dce1c8e7712973f8a08c4159a9e15364be3d2147896b1a1ae214826df8643b4e573f2af8e6302c2551989ec1c8943be72abd2be35c4ee70fcb99baba7ed4ba46016f24d490acd4bc987c2c434b1dbd8b39ad1dd2004fc7a174ea59fa2f2db6bccbfde2d208e6964b128773eb6eb6d1045df96035c250d56381d451c52503b1f66934d87d449179979e4dd50c6274c1bbfac72161627b288029c5eb70997caf11ad6fc3d46814b08aebe28f40dfb9cc85f4056821d9e159ec9c4dcb586fd8c0d8881566669a8a961e7b40e4b83d068fb80c270f42dcbca2df7bd6ce6890e9024de7bde7603432253c14a0d057ad528ca4f548012dafed4b3174d851e4d2e5c6c168c2417003755bc5a8a445f3d38659c715ab6ab977f1cd13fc9c6f39dd2070b1cee3124ffbfcdb98205a1a2b88ae3fb9f245579bcde9143960f0b897a478bdac9a481f1c53c678c64a84b0fa3240177894de0c4ccbc089f14bee70f762e2480ea9438cea2788e134f0ab1080e34f22a4fb2ddc9e7da057bf0c5614a175022f06b5d126938d97d98fec87c0a917e455b78f314ee56de3251692cc3c2d9b243aa149171a62bc7035e90044dfa0a190773fbd4b00fa7e24447dd5d5722369a74326f29d48c589a4f16c92dec9da8586b1d4af66c4bc0da57e2aae07d00f9c35f031be8256b2beda0bbf06fb22f3da317b4cf22d81e88c050de9a31de6da3ddac483c49c8bca2fe25b6eb87649e107dab2c9b061885ab2a4e62debaf453b683665e7c2e8f3fd5d22b1d4b780cdff2a26b31792f646968e726b9f4708418a60f3f57f9551b9cc7cc68bec0866a294edb9978375241345cbb6bf577268a906002f9600b7e845d36ffae2c7de9d018939006302edad2fa860a4f25cb4a90308d57572284f97a7050b8750b2e02c2f8a9ad5377909ad117082570c9a5da5f512503d78c60621d41964bd12f86c89ed9c74f586b50dacdc4e52b039ed6be06c568782d9049bbe992cc867894dda3f3cb593ee9fa376a3121005b562ce8c7940d4d48960bbd95f77299636e4f1bfa4ac40bab82bc4971778faa924b6039008169efaeeb1ce29d9e44813f22d44b18485ee0a216382d0c83b1b59e34b2dceb294f9ca6cc848e018c89291525be0920f827033b5d9857c3b12b6c6e65627c132c1dc2a5da893860f5ccdf9aa2dc2ce09c45d7d1d4ed55c130bf5400ab60683ed1de5db819d42a199788dadc80e328324f6852c6021eaebbda57e276650c4d06ab792ace94f5cb32b92c40ff5403efed4b94e008ba6dae1141ad079791a3570bfc4f6770fab3fa3d04836ff06ff4ca8127c68090c36810610d960d356568cec1e66ffedc01eaf875a49baa5e5be0ec01ef1849704cb09877a2a80c100ebe7a790545e268af2f1d70b1c22375996aeb4b6b9bc325e6f7ff5ff4d6166758b8f9a6378afe0ffd8063e3f505ab7edee00000000000000000000000000000000000b11181d1e26",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 48,
+ "comment": "signature that takes 28 iteration(s)",
+ "msg": "8f07000000000000000000000000000000000000000000000000000000000000",
+ "sig": "17d5c276a96ec04caa598377bb8110226ddf85feb0dac0f0d3a4bd5ca33fb40d8cd5d752d889fefa66c900bf6e909ac906516c9e813875e758663c7fd2636ad3fc89ccb7757c0eb799010367afa46a17e113b16d546a8f8ecbae132efc625e3bc6054e3c900a174b6d47b3965b3178d3b72b0472f37d172ad579de128e19575fafe7ea64ea116b63fbfb4d5b5fc956bfcb6928b8db0cc7c5a889285237fa7057b3423cc7f7b950f834f7e4a7b168ad00e841ee13d382462df9d5fdde517e759d16e48963f60f117502b74e97f680bcb4ae2c35af009d9bbdacb794edb131715470153a0eead1cfeac73f8c8cd157cccbb17cd1386f65c4fe09097567794e2d7e7eb3c358bd8b2375f8f9d0f32d28bf863599939ff8fab29401d6acadb1b90f2bf1d9bc26221c67e78472c7ca78efb2b4ea49dee8489c01abe9ee962277c34805c024de06414c4ed63370ec5090752a6fd19cc36a50d3f714ad58ee060bf67b6f4f988c35d5cb1155f702311eadc7fe25ec25adf929033679f5d0058a45dcb58e8b4079b374226e26003e5bc5f76eeea6fef86af3ae91f33c8c359e2a297a69a105817c7e67a6a00a4d8aa31fc848d8c4f274b3b5ea34a2817b515a2050ce80bcb0c21bdb81f0515ee05633d94feea1de19534ef33da85e5af0d4fb0e81e4088a981392f96f70dcfdf0d0b9d308c26120e8342f8b6107cd0bf3553554e4deff879ce152425e4eee9860025dc4ba9bb090971903a0db863c043dca4e8fe35e9a6b0bc26129e18b94935fe816fffca11357af56ac6c837f0af36da11e4b43f74a0ff2ed62f18fd5c02c7a064e649031c2d8f22d6dc1a1b94f39d3065447abfd9714462e137bb92b720091477ee1c1c1666f4b92d6a8b61c70d49200c86e8cd9de65b209a262cd0c6e6774810daa62b16054d6e18955e4a92d3015ffffc7584bd5829c040ace9011d5056bc914960ed785b2225aba0eb56346aec0d7bdb1a3c73d1e39c2a395fc874cc56648951a98549a04eb71d30e38a90d7e545fe92c82a7663b10f761eaa01e96edcb799fda895f9fe14c3d0ae4922f34a89908cbe60c107bf9d8055e050d08cdeaefdeca1688a7b26e2ba558650e90b24306e575d046e1f3ee2d9c3cf159bb20d711d26c92c11735a50f40184c97a2dacd02a1acc4abe4ca286e4c599b4d4b5674eac6cdd4e472559d59a13dde5d4feef9bc47d76875790c8036dc29448516be1cd56504e97acbee7cdc5273ed3700aa7f459e1c25efdec86402f181664e764866d8eba3adf852b83cf135ded54d0eca77527870650da0f2851bb4906320808d302feb7e0f9db7b8cac98a62a0cc7cb97e7f8a7ffbfc38a477a201719d70172e59e8ea89c482e61633f9a0a3cf672f6217479958aebeee3e6f06ee8ab9f5e9d0523272c5164f1f94a3711b3e681ed03c177a692819ee56da4059ceb171af119c3976b197f005fe8622e1b4415f358fb34a73215bfbaa53886ad84ff57ccf42b7d57847a26234235ba0b722b89f9963446d67dc719bf8de49f4dedd4c516dbc1e1d74bfdedd36479694a9acee7dcaa7df55f978d38da1d183bc9c0cfb049c9f7da0821be315b6118d3387734922723ba4919fb703cc2446bd4cf30c1825a8bbe7daf08219ac5c1a3f897cfd7f66e77de3d0a0b7b73f1166d770b9f7c0c6d41320994aeb526b6ddd4afa6dd10295dbbc5082dcd35e43ba91dc972f78665043228a14d75cb666e503158bfd4c668a29d358a5b2e03fa1cf5bf15aff4890813e52a2358ac79174273074c118b63cbd1ed85c8c3e9cc7ff5c1c9bc92b848bde3a7bbb74447d430490b6bcb86158120479a02b7ac3ca61a07d76dce2942b1fc09bb33972695c0172a66dd4fbabe80e333dca17aa5806eaad072f4b17300135ac118f943dbe9041d4701b424d1f88b27b8eec8308a5bd153f7949137deee238c833c57bfc12b87bbafac73e1505d0e92e873d53772f29c7c3a2e6ba4e11f825d631a9d1caa3e3f8985ced7f49235bb907c2074fc368b77bc90b6d1e4cb987088518e054f767127361d2faf1d5feb35cf9210a92a4e3ef144bcd45dff7e2c2757d472d1255549db29fdba7616f9f9c0c472c0f4349588f94e77f8f0cab52a50029b93c3f08473f512a27c319d45e9d6b52cfada0adf2dbba6db96b326c3594f16880913cc6c1b3be8f4953d95ae5096f03a4a1224135e2bfd4b5b429fe564405dbc2ddf004f36bf633e977887915a44105ad2652fc17c398fa2e7c0eba0f69fd98baccd64875dbd5f2fc660af49a5b50dc831f41890872722d7cdb906879e03ebcdd321a0e81478276733bc121016df6c9a3d1a574a9dcf6ca489f4c82058ed0002c367c92cf87712348b7c774baacf10c778db313dc5c83b3e0120ee369780827532a52431faf43b03585dccfe97ab204c33fb2b98c9531c95f6be5ec435b0a8aebd7ff4310bfa221be76283e7534679917199f616e0e05a49b382cd26a4baf0cb0e1053fc24bba4dfd2636680f750c9c69fb34481ba0f62d106937ae7959604ad554fb2ffe53fdb926ef5a589cc21e5adaaa7ceff3e2a8ea8606eeaa79a05c6d9fe2cc674eeeae2a13cc716720472b0459e8fba3f0d77d60ff3e48f08479deaa1c098547da855b59fa12338baab82ea960184b72da4adeda15666610164743db8701f2b6da9dedeb2a147cd1e4fa5125e8f72ef40f14c88f73fffedfb6ee327c8e20708dbc0e4eb8b7c969b11ef8ed3b63c55027773b228f08c3dcd2a24feb716bcef64b5d2d34302ad721f6cc236c6694756990addcbc0d6d35a6e9a9445de640ce02ce9f2b081f09774ae09fda994fdea5c63b7aaa37db7268c56e11898856e94768e47c18272285050a1c182979a63a573c17b747c5393b8ab21dd17849a00889c11bfe28c60d1d604fd716202949adf2bf49db903841f4ab64bbd7af3de775f66f219e40a6a61f5c2eef5377a196ad8c7837b4211b531aed7c9969125994d6ede189f872f24dde4b92eb13f027646ede13d35d02c58f5cc094ba76873c817367805e2169011760e22b8dcaa5755180cd99c7e8318ff61bcb7efd3ce0303ba669419937e0e41bb4bfa960d773a5b73282919dc9d70b3427942078e7bf1706a67ba52f047c8795437d28bdef9e78e95b3ed9545177db31920d138454238759cd45e7cdb9c4d6bbab70654e2a65e1056c2ed98d9c601e13a356ffd254231c867b81b0f9ade2affe15ee88744629eb79a5cdc5ee4e485d663bc72cc1faaa61c651cdd2e9632019a747d1b342b1f493a1395b82854f888393f4f75907b2af70defc62e5087f1f4899d30f4a97581f009caf78a29b20cf38eddc1cd80066b1727880bc936be866ee4a14c994790cffdc7dfd977d9af1c3dd23d5371b8dc6c2a3b043e8f92ac954e7839e1b1934ab04b5f51e8c650bdb4357c2309b657ab2b968430b903c363532c8ce386ea00ea8f8cf9614884ad42098a01a4c054853149a5013664f5bc69c3bf9c237eafb9e97629af355855936f56d0d943333dbfd401a89a8d3b0f6ee8a5c7916d887c73088c481ed8963c54517040846fbba24191a1ed20c09f2cb2a0032e1a68e4a922c2e1bfa51ab6e7326490953b7a5a1197597c7adbeed7b43d6329c9969bad56140b6fe5819e5915ebed1ebe120970639467ccb2c7dc5c290ad0693aeb6ba1a27a416b3e21801ee1f239cf179a9258e9c527b5e52103e7ed22f67789a030530a536d90cd8b6e08f389921779ab97fdb4129d07a3792e4e1a64528131c38463e6d576d554f87207406e1587d6cd30caa6a0de6a7f0254e334054cb9f39430ae1b2faf0641908c09f3ec50ed1ca74f3655457c96b1e29287ee075c219c82c9fd2ecfa53117c97fb46f8398dfd351cf035da70345999dd6b0ce4569ad448f6475f343433848e8bf886b45cf4166b63e1347a60a66e05d76b6489c4c1eb621e50ca52f1cc75a9f9304b6d546240b28c986883e2a0be4113f8d615b522ccc40569978572264d277636e82428af59ceb8c2b175b4d3dfb053cda248ee5ab5e44b51d6865271c9aeee589e2b2b68e16f91be8dea83a5144b24f5b410e48877ac7f1a734b45c5934589d2f5d5acab37638fe9a5c52004958be19b731c5d98a3339df150a80e2c6ae6ab1e6669065e9eab2d2b1b4e29edaa919ed1b1462f02b7da4e651fca499f6c114434e1775afd9d1c44c55ddfd5f7936687a8cd6fd2ae67daf6160749d146c5fd1eb7d73f9cbe8ba3d4f50f98da9e221d2d5284c8c258d12966f6faa422c3872021d71018839557d80c7d7bad4929af61bc195b34800c7a3a18a9935cbe648a383f4872e796b87b462fd585d14e8ff432777c798a431b56714e5ea4a44b1f049435d2e80e2d7e378c97f8c289449919eec2cc8f535fccd6f53379acd16b55db0bf7f4f42ddd3228430c3aa89d632e9fd76a9d71512537b3984f56b11618fbee1a79a5aec4256c4bd2d7b0fdbeba2263934dcb4319c850776fcbb0b9e1ddd9da387241b0d7a54eb16147d0be86ac55c35a5a2222827339f73ead716ade758ff346d3f981fc5e90bf2aae42cfdd059ee634467d09214239119ab494c0db85111333507996c4cee61423264662b6e2195a666f71c62d8c9b9fc7ecf6020858eb4998b3c2f000000000000000000000000000000000000910161d2126",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 49,
+ "comment": "signature that takes 29 iteration(s)",
+ "msg": "2001000000000000000000000000000000000000000000000000000000000000",
+ "sig": "d3ecc39ab0177953c2e5afefd2a75e55e7795e49c87a44706b7b4964bb9f9255f4b24b92e7401e86f5b79be5dfe9280112599526d7421d52c9d9d49626042b94ee4f2ad3295f4767936029b153c5859ad6c119b9f35504ec3fd0e002cdd67764aadec5e38b11d79d458cd290ede3372a41c7434f285fc4ee45599c02c85fa99b5e0b96fca57f07a494c621530be5ed69598c2adf48230caa2129c470052c9047ea0a622b15efa8c9cc5b1e8c6970b99fdd7281273dba1399a319428f79969fc0cf07785f22c6eda6e768ac8230e440c8bb05606a9cabebfd264d1316ffeb9d9574103a70ab3cae8f22e04c3bf97b5bd293ac496eebf9787269e430f4be6a7591ae1fae037f76b14af90046e6ee0edbd2314fa16ac3eb69d69d803492cb5769ec93fc197d2302fdd46391a724dd51c59229246deab0809ba4f1999c0fa2c85e462c4c26138a4a9f299bb25eca43657a7afe4a1e420faf756e3bfb77900da25bcc183bbef7413ead287cc539f03de4f56c2ffbef8312b5909b87977f16dc0e65245d4d1069e46bb7614034ad73acfcafd64226b692dcc03e695bbc78ece5b1a5926a346fe5e8aeb81a3841cfbe010c69c9b06a0b5b81f772f8ee7248572279d37e325e17e81ae2479de6702df4d4c376be417c859921c7bef00f9b22bf1c3f56c36ff9475eff8462102f79c75478697838b384b1c57f842780a9be46d3c4e6f7c38da187945d283049d8c0278f3237660e612f50eb73b389580f740f05382a732b94bc7f3189d6cfd2de2c6fdc6d7d57de3b897df45c44ec7ecf1d4cec370d87f4cde4ff470ec42df2ae0db86f172b146bfcc00b34d4672cd80b06e74c5b302a7e5fa7996d930cf821a22432f40ca9ee7f3b0799c87ee1c20ffee186c15e73d32fc4a3d77853b0c3caf44757369fb5956158315358269b3c93db934ad24e0bee4b323359e97ba982d78873189243a0eb5d7760fd842fa2c04d52f3ea45f99eff1c236d833bbc8ecd88604b7e33f8981fdcf2695069f10d8de32fedb94f58fb438dc9af842698d4651c74383b63e2d8925211e02601b8642d34090449ec8703040ad0e5dcbbdd46db0f9e2f29f590b6688070cb2c868d41d3ec67d7305ae6a0e39d9383df31e30aa8071e481c1133c8420b3e5a3d7a2681f490039717ecf088b219258c4449ac8fed4c40c805ff4b77d7c28d0b5a0c8cd2d19e2370142a4fda7eb0dfc9a84cee9e4c845e8643c8108cce254b716dc4b562fd2535712ff840415212bed1fd2417279ad11b743fe2895598dfa938656b7408e5b1497fafc13fd12b3fade0d40a0820f81c430cc50ad677bebbcdd74ce14682944b9e9024d681759b4793c246ccb7ca40d889015f752f73f66e60c61f5e0f459bacfc2c413b0c4cf63fc2b7bac814ad822ba4caef6d6b7fd216465efd0cc6cb4b1a20fe66157a8853975b1b2c271fcfedc2912d1535972fd00f4d37a5b08619e0abc563ec994cf36f5a89cc5ca6fb244d283599d42c6a21767442282a4d18e39e31604aafbe240e48fa1d7a89191120daf5df393a9b115e9867c336113c45742a90d1d4113c66891ea46871d822d95197f077e8438ddc7eae6c33dc4013562aecde7a0168f81afaa2ddbed3e2cbb4810859c2fd5a3495213b97d6e5aa7d9aaf6ec2118b6ae7c500ff3aa12e5469f2b58fdc9099eaf8ffbac111b49b913622289c81f6a690c4b3470a619ad960bcfcd1582fa9ed07b2b9c839c78f712573306a9ab454d7915315f1514053923dc53f7fd66cc142036e49f0bd58e708862cc263734ec967d5e4054c3be0369565dcab83c9fab99219aaf21a168e72584083fe2f46fc477902b7954dbae30b668db0507f29d4a64ac358d3366abd0b7a9e8ace99f9b0d16316ea74739dd47a010bd6ac51a9142122ab699181728ca1c381a941516066ef624c835ee0df7e4f202c4677417953775d5fb252bf8ba53ac17fe2f1af324a168959f81567da9e73c3bf6bda37d3d53d9b58efa392b9dd81c5827d5fcab7bb4ade73563a26d83c8a535ae23339820c153f0f79b1f9cbe2b16cda032cb7883d3ae368859ebe159c0be2ecb5b11859d27afbfab3df898a7b90efabdd58308ee3f099ece6f7fda1fae5cb6ed55111fd4d6cdd9015218d830162cbf03b5c4cac717de09dad6c0998b501a51cefb76c4b0199c58e2e316127aba37682de5c04dde16343a33e4e5ae3b6295793992467cff5e8e6132ce46e2af6747f60e4e91bcd7a143d1f42c8e9fd12c68221b067e7f8c4b1d0c30234657b7e4d64c2016148b84287258ebd1f1639bb8c517814fd9992fcca0c15633148d7ffc8c8531aa0bf43a23ccdc423878b58f71dc57fd617c185f62a51d57aa938b95a9fd85c4d2c7da5ddfdb83e14231a1800ccf9e755ec4ac01970cd94cb50681137a8f00da4938021120414caa08fe36bf3e32b7e660402cdc663e8cb4a9392e10c764024469f6fcc3b10779f0cf3d7beb160ca7638b949246e679d534316ee8d61dae3b321a37786ede9f94dde73f88d5e49aaa40121d0ee9b16e8e1c56aac332b2bf503816d6e22cf50d798e3fd4bdb003c5f162e61c887a0c3fcaa35140f3d718a220044f4c4c581db8ebb167b42c2c9ddae5ce89458a0ef92d7e741b1fcd295d49698eca399fd98089a0284c33f13e715eb19883c42af2b54995f17a5499340a20f38a109d218cd7bffeced7a1d16f3b2c4636e84d580cb8c1246ddcbaf1e7f5a52c5ea48ee90b46ff64f91b65379fae27d134b5b8e284237f96389ea2a94c2fda31abe211d02907dcffd8ab33f9a4badd34472bfb22c5afc67645f38da26ad169f699f76196f5e33087e15a38ec615ba6547b38a58ef56d81f84dac75528b5e70c88b2099715322771eea2d741c39047f5e460baca9ee95b2a19b2f5bfd988020f918e6b62e9cd405c95c473bc1b6e038ea2a07d997551488490a15e46f58f8d6fd239cd0991b6264e348e9f1c6cec3348eff7466e7e48e91aaeb9c645fc690f0a89bf8048f67a7d67967b42be31b9d53c5c92dcecf1e16c451564a2d9d7a34e3c1c7f17f71eb920aa8cf51cb609a4af0c5b6c44ad4e3ccb8346f7a86589d05be01ec908eae69ebfeee12d7d05c431c7ec7ccaa0498e899aabebca31230919861e881f948f085bd519407be92ce923ad6470853809bc4367d9ace4b0df2f43e208bd98ac18a77d8fba7fb16ed95ca128db6b52c12d33274f9d169d2f559545e40e3ec97c1a779f04ce772329a4fa09768b9681200ef3b999c6778ff606d6d2600c4651da56c6ed88d0b2ee4a1aeb7ec3cf60b3762ebcdd9111027d3bb2bd07dfdb01a9a551a338cdc3b1cf03ca36c36453eb60d66943953bbc2c10594911e6fba766020fa1ef62d7f2e1c59f7e208c1dbbdf4dc27c0a4495d299d8c84671bebe8e8647ec6a8acc6359380dd15c26d1c262371d9dcc0472202da4d8bbb828a48f3345b6939830f39fa3e570ddfd857f47f839af31fa152d97aa18092e685c6741efb93c04a31d91140140b0f34985a4a9ae4d960bb2e151a629247a79aeffb8ae91273f8860dd817c1760120a571da080f2eb41b4743ab714ca418b4645fdfbd755320d7eba610684648b3c9d25c0abc245fdb86397b1eb1ed4ffc280527e20a6cd7751cfe6aa05c836a4bfdda89ef9a98d947d316feae68be99a6e26819255cf1d20b6f5b8c2ed24df630b43d88da5e9dfa82e980f75f8e2e1033aef4831558e93bf89a103daaae10c963b85a0e2cfcdcf0787ee869cabf8c8ad45a9857fc8d6c467439ea0a0bad13b7989805b81c3c69716e74f78d8c45b105e589edd9f3b2df2b94d79caf99431b85c19f29e72e7593c61e93655109a289695bdb38fcbf48031894ac5e04519f101a7982e3c1b3bca79d49e387043255908e55d3e268da93e07c894251be04dc6ce639df29125d69e7bf6ec910e96b85c9608381e8c207ba05c33dd7b45b43bbd1c410983028498bb9d7a35e8df7e4567a6c5b497df1436a9cfbe0476fbdf72f4657593aaa11abef92c0fa8ceef1e47617abad895b32233376254ee97420970ab413ec4bbb5386b26df0dfe7851f0cdb2537c0a4e184b7b3097884c4ba7ebaa5c11fa56059cedec40f3d6cf982496566a6d29fca2b1de8efcd131889472948d020d45ffda51121d247611bb498f788adbc3b43d893eb37774c97956d438f902522ade3c18ac82ad9fba333cabd2368dc4c438d2479de45795413ebe3beb1ba61589287c55a6f5e07281d0160c0be7944b5209836b7c81dd88935c922fe9c9554f5ad6301d12c2fe3be54631c809ecf259924ec99c9dcc3bbe0be8d5f4846aacc352d56e882ef62a9645a46b0bb8dd2d5b4de64839cea783b86205b81ae419eabf66e5f70074f4ca5c12b946578fda9465008219781741e43c2ae047a2f0bfd54e37bdf22eebf5c1f7bc2cb8988c7d6a73cfc78eaec7dda51d6d7f6377f322f07e98243b71cbf2187c318b652feac32654b4476e9c2a5b07eb9aa7dd5593c867190ee9d896d549347b59619649f01ed617a01f35e847e9b29b3a3d503ef8d89039515d2622c6b1c0237da29b3648faa88d43008dbd466381102c31353b46cbe4effc4c7a87093cd0030f1886a6bad636396465789bc4cae7213643508185bfe00000000000000000000000000000000a0d10172028",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 50,
+ "comment": "signature that takes 30 iteration(s)",
+ "msg": "4901000000000000000000000000000000000000000000000000000000000000",
+ "sig": "ae24fa5b2e13f7ee71d55906b8d83994bb96da7b88b98568987fa7ffe9a72544552d227e935844c7b1602ad91fa0e40ded2dd5ea2d25321eb4f96be7a9e167718259e901197df2d53efd428411a073346cc9e57a23c687adcf5864b001237d34c0de91cb319ad3cf698f11fd2ccde9a91aaf2891b30f0aeaa24529c84134076b014b410029cff5d4de892bd24affeedb4972670b12eb3ea3b06fd6c91ac1517515c3193bc2953fa5a9bfe173c5da8201da2fbe320d3fd2569520a16342a30da1d78181bef31a5aa53d2b8ec5460584082dc93751ee7ebeec1108cb60f5e7853e49e7db6055df2f7cfe35fce2a2f7de367dccfc980155ff080d2d7035679da1b7a83a4df8f2d0dc105650db1b981a744338c3512ee99abb78d278cc2678add260d9d68db7e2830c35dc8a32124bcd99c72309e47ec19d3d06507ed6eb8f7aca81a9839361a89c81d3f965627582652c97b00251533a3cb6cca24d492308faf7f685929ce463cec39ae77621644e8d1579fb3d208ef0e299d11523e4b631e011317f78c0ebc1bafc8c9b158168466158b1334fc6050a582ec806c8dd882f21ffee4c884dbcc5dab1d69c2efb45e4de6fead2f6f5ec9059e4b76b2356466dee3d8e0f2eae27a2eab778bacccac670e495ddc9a824f506c5a6c2a0a024f74530ef5ada75547d124a580572299c4705a24e263d2f90f1e9121726ec267c47cdaf31fbb0c5f0a4d98230fd3c4dfdb29ba2b6dcd7c12c9197f1520c1fdff81ce570e9b3c7693fa79b7154528e843443fbe1963ed6964a4703242498dda72da2d843e2295dc633b2d6755e4cc5154856b208e02184aec24cf05a00336e4d0ee4f640592c9b24777438eb9ae28b783c43ed5dd500e2eceacd2309c9f7356a4b276dbe89b69614fd749fb4181d5d6ee45d256b48a55c892d4df68f190ecde11b87fa650262048c99b00c3e894eb3587d8905f261e47489938c626fa611bcd6d28fc895bebd72059f912231404a56a238a3062f978ffb925ae0aa03ecf3be140f1bad2e4bddf3127bd8904186832181a00a8cbcf23c0b175544c1e45d9c3923317fe1bfb29d8c04c7f0a08e3f6b37da851ace7e9bd33392fc06fc49d262d1f8b4d80174d43f8b7196aa262bf0f8f25b42e13eb0e827096f2074830464765020a51b074853cb8ee88d229cf91d07a1c02de057564d3ee5125bb443f7b981b429688eee5ffb82c972c14d3b5237fbe4ac5611784223ce00f11fbe4636519f3ddda9893c87dc942eb30660c816444b1dd7228a40b907c9b3f1a46cc166a75dfdedd6c76e38c89cc1537e63cec449c44be2054be2bdb0df0169f7be37788f4cf8f9ec5110029aca9e32f76ffa2b68db9fd0480490f894e93a66bc9870a17c1b9ae0fd477db2197a3da06015ff9cc172f6b297b5c79a4e6943df6384a737f64caea0c5abd7a799ede4dd789bac30d7846b19ed32f9669de319d67e7e4a61bd233ac77e9da19696c9c4a791fdebbccd285dd4fc0bc3af634a9556650e4c730381075050ed834e036b25fa9125d262520dd095b7811c7f4b33c82171ceeaa664227502b0dfd3cead3593b2fe80002754e00c20c65c7454ab8869e014c3a635d9bacd6116b320f487bfac58b1d4620542ce4f9303217b7455a9a0b7f92f93334b2bbcc51928d04c77e2fe376fcce692d7c36d17316f3f85fa43c994a4b672a1ae2ad8555331132b35cfb313daff67aeb9fcfce5dc440bf87062b24f9001b857b735430826fe4bfeef055a7657269c352fce093270f1b1a7241ef8543ace867fb142c2c78c4a1fd9bd094d8810f3c5c93dc9841535aaaa573b50814df0815de79cc1ff7dbd3ae869f193da637ddc5ea4d8fc88555364d612c3c5ea0230df9f75732f8decd035a98d76aafb58b5ba98fd311561aebbb4f161b3b78a6f64000972e57684ee68c9af4f708f5126692ab09c23866bb6cce9130057a99901647de175734d830039f21cae68133e00f7c0c13baf9cc8b7b09281bc2902b4f1e5e17493554fe7a02964a2d020694bbd049250dbbae5f088b6127d2845741a75249e163e8107cad459b68b52818845a04dc373d475f25e236f72f4b8cf883f4a25e857241508469a2c424ebc06450bfa33dcd2c342e0c3d170a06e0c8ac7ef2f5efdbe57ebefe1782eae6a16c9119e767248abdf2a3fb02bc9419c0de7fb8be0b8dc07afc74074d8d44cf6adc0009ba73058602c2833f4d862579e8b6049a42de92cd76da08b3b8b8e442a832b0c89238e1ecd862f629c691c5ce627e0298574bab49373710d096fd06f12c1d131f134bd3c51c48abc06371a8c48ab907aeeef68c14eab063a6d99c9ec8ec6c860b97f43fe0fdfb95b91a4cc0757ab27ea22ee30d2a69704c7526377b66b9b2c139ba52a7b5b03971eddfce00d155a26ecc56093f6834726e86ab6eb460798ad3c6208483c413562b62c57591b44ebc3dc623f01ec7f622de28ce0025df34eb9f669ac95e0c76c0dabc8b084230ba2ef1f11b5db27f34e7755656be244bd72d1816f33992cd8268bc94ff8e9cee4ab0e34083e9ddfc4ee1c5f0e7a5a8a05a0b76863f4b637aacc8d1bbd87892ea844ab3368a176859eb48b2f6d3bd89c9f4276a5cc1924792fe3be2d1031f003107fbdbf737392c0ed2aa950b00e9ceb0bd4bcf2964708e17340e2d314f7cb912b9a4d2d45117030f81d6e3746fba9cf5886c94638f1a53f0ce891f0b88a33538a311a7da219814e450cfff5e76b4b872dc53a88f3441e12df39298d90cd4126987a56c1fcac0ae94457b1dc8d2ede35c5aee0009d28865f90a1a360d435ecf71d6d0f60a978a69e5fc75ee639d15b0338d4a39e12c09870caa4bfa89989ae7c0067d8d2e142d6457ae900218c524c074c9bee39f987f040968a57fbffd0fa7989feea3589d68f0bc281cc4f7dfc02441c631724e480c7fccff312bd4f3c3eebc3966780e2b719905994e7cb66283b313eac6702521a919994a1d1bd9616964388ce9a7f39527728c67c7ea0bab7f85bd13af7c4518f7c58fe963ae6e813880019f7f4d6813c74850385b8f6b9c0370728d248764855fb8281a5e5acab688d39b7f3e246dc111c3b83c187d676402163bfc63370dd1fb3f496e4617e6503f6524d8f6ef509e54893cf70333d6907f5a4f3404fac891bc6daeb12df9dd16713da93982a4d85d26c1b1ecf2f4615008b5177ef6877a980e1caa9e9b1d53db7c4b2547f6cfa4daa908b292d2f87c7780b48b9024487d27ae1172026a3cefdf92b8866dba1736355b972d663c376aae45558156e9ada92c6c7d091a036e78978626a679eeaba0216fa0eeefc1f60887ef9e80107f9fb46e76cd26dc7dea30ef1ba91dfc2fe431f7104df08e99ba84943917904e188ac3079186aa472b1571d3cc4de95a454eeda9b4592b9724c9b4cb768790474a716d47b7c46ef9bc486cf1b3231ba38d3dc58136b1c164aa9f4299ae99b3474cec84016e9b7b57419a6353cde8889a5f48de38bed8dead721c2ef3871accbb94b19c8c0112c4d2e7b2fb1cc92a144065251292119c74a0eecc47dd8b252a44f7668ef100a5b661967bd5e9d2dc386547a2c73005faf300b147b92140460bfb4c29219b411394b9e60e20d89fd02567bf3568938a93e8025e0c1c24db2614293c5ed62b3dc75c9eb6909578afd590aa11ded16ce367769fa3c20cb5e068fc6470819804f220e2008ffb516d27a7857d5e8a8785097701d056756e2141142204e13882ade1d97a0a575fc63152a39c44f2da987b027c2fbaf41745945974c87610cee657f76c9cdb086b9ad84b401739912ca96bbfe3877c17c74a333ff98e52be971300a095c740b5b093edc6ee473b0bdf0599656282becad7e114768236f1a2facdd2d1e085e88d375be393412fc14c646b9528d09def2b9a5ef44cd75d3356bc10f1eb4b5b135bf607d32a0741b7a77b03fe44b4a8f21d2b5190b01dd04961e2b3c599ba6c8e175116af78124b67085d5f075d54f1481728e60aa4a007f7124dbfb03225b880893fd7de61dd8d31953c988d5454f973a84c4bf56f0aeb7511cdf3c24bd715923da359afd11e3f4d92b0a17bd88e8ad22e19d0eca5014d8f16d0ebbd81a0dd75f32f2a7cda47b8fc03563d5cdf5917c2b4dda39490162dcbd37e87d9ad37d75369e02ed8daf73904ab802f9b41495c3cf3e22096921e23e6abc537462ef71cff0f365e2975f3a3a5836e5a09b27d72dc4b30f8c67f33092ef288e5eaa52f62ffdf8fe7130c8dd93f99c530c0323019830220d37fb3f716d62bea22914bf0114eb0d92b9f3a2a8f1764b61b2f89d40f1780c834161e5f41f75a46c338418e5738d23aa2e3dfbf580fa7147a42e6865d13a69eb6b79e0603d1176354367cbdb4adadb398b7239862d54403118ebc5569f0454ddd954a2553820b3cc2349eb234714cc618fcdd6399aa3836228256d418f80e96c26ad07f9035b7cbbe0de919c51cd5c8efa7338483bb4480d21a770200dc0802aac83753f882c8fb555bc01c3bdc09e3d5cc2c10dfb9337ae7ee9868e34cb671a0d4f31da52eaed9f6513b825467de5f2129b79b007524f402e3940556a6c97a5b9e125495173fe0b394a6898c337999ae10683ec151f3cb5e6000000000000000000000000000000000000000000000a0f15191c21",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 51,
+ "comment": "signature that takes 31 iteration(s)",
+ "msg": "3308000000000000000000000000000000000000000000000000000000000000",
+ "sig": "5057aec74324b4d5dfa965882d49ba03badaabd76d7e56d1339d35893ad040fe52deb881e999796ac3ebfc749a6004b51ae140a6c0f3105c5b0824fc17d253931e48ead138217bb5fc3776f4695d4a6a34d387856372add58aec8ddd81442af399b0be2c79c2f4ac6fb0daa61bc48c1731cd818c9a421e6e61ba1228e9a66cb5d6e72cfd79dc144ba3a51849814df30c7f9434afb991d8f824d42c7c42a9c055211bd69816862e462ca4897e8661ef3a3147f362e0926fda48deaeb0e7062837c071b6f69b880f389ae55f2e4c80f4ef3bb116490035fde777663eba8a4c7e518b4721988539708bb714b1cd26da8702bce552a3b905113f3edbb6b77dac1427c0166a3fd46ec1c4ec3858c4b529145e1b9f053c1904d35f0a114cf547ceb588d5d8a5dad2880a18689e439603586ad119a04e03ddaa0188e6331dcabcd0dc223c469dc32e041ed18bbd1676c7f05b731b262a0c0a00e86753b20c9dd3d5af52c449b9c462626de5bc59cf018ace4ad9892e924f2c9af15f013710c31832609a819bf99b09b14663a9f4b0078335e81ab50696a65f8c151301cbb16bbdd3397eda0d11e5d56d62265e49a78a34e5e5bd9893fce108da77d7c17b50abd1f91fb9b7368084a8b2820eb7ffced530f7e4c78c20d1408e224ea17a19887f4ded7f7c4fad037a7f566013c082d633c3e62ce76599a294fef294f79334d7aafbb8f8b5bf3b9b58a82bdc0fe49c73f82ff86d87d9ecd2885476f9755e2c270bc01dfc8344828ccc3ceb88423e1d52285e60cc140bbe1b97cc9ea4017540e7078802207e94a037ddfdf0b681b433bfab0930fd1412c1b36ef643df0f3b3b00c05669dd77d37536c3f48a4e7889b365f19d2932e146f7c9702be9aa88f5310ad738a1699aab1f02f7a525f212bec566cc34a10d7c82e543efdad640e00f6a380ec319f1d48d8584ce5cd6cae835d23a099d91f0c42c0d27a14cabe283ba043401ac7dca1e8b42d8a8c37923ada7ce4bcbe0453055cf83a1ce54366a794e95f62e3f6141f3e0fb78eb181138b77c0474a0e300a7765603f35a2523b6618cbd08072ea8323af7a714d4ee6f64cda0ea157d52cae5775f9656aee2db5728369f9a0492428ae02efd457123f4d08d92a29a9d7943ed38b0387dfbec6dbc96732d29caa78ed8765947637c00fcc028d676d8a9981ca97fbb5f252e836e93aa8dd37000d43d047c57009bb88dec672b77d8df3dde4ac85b01773dc00a43c9fdf2cbeddc04ba3798ee18126b0c750c6d40ec0ac076b8dae0d5aa71b3e72a71603c82083267849b263251b86ff5fe1cca0ddc3747a353392a47ab6962c15e005b2578094f9f9a8097243dd15110068f941a11902d3148143cf65ed30fcbc172e7f016d629f60a584d9f4a0c539561714f1df67427331f3c8395f559afb56ecf7c5702fa34e923cf1da8280583fef6ba1570eee03dd7efd9b5add767169ca11a0eb538790afb05694b2719a9daca1bcc31de44d0d5946d1e1565d6a476373b42c9f05e01b9d39a921857ac666d190205744061960b94e59c805b0d840a140bb48817deb68e6654071e7b56696f30a27368c36377ec8be0e4088fd23623158ad7cca215c70b7dceceb220de0509bd3ff530e2e7bc1d3a9358ad13794a5fb2db6c73965915a193417cfb63f3cc53fd48d94d308f27efa2c2c096a14a1495244b437b4563a2eb65c7b906816d205e02a465b350dfb7b88403689c8930d5898f41a4268059b650237f60421607440a16ab8b0b1067fbe9460afd8878742a73914c6986ca5d45dc516665dfa4fa99d733865fea4cea28ebc12d50a4edb7c1b3cb2cd0dcd0fdc6acc6f7972dc6a8ba3b3c13d487c1c1f00883c2c1822fb58c684427b837d457e678a79c0de7e7308481721d9295dde258d2f06159c98e2f70a9be35713ecaa35286042d32e85b760fb79147f11c248790a2f274c09015d43fc33366d7d1ad713e2155600eaa5cabba497044ec99c17afa680f42410b928adaeb876bea66c1520bbce3da46ef8d3ebd6f9bbe40a4b643d1ac5c88cbdd26023b88757b2f6ca78c197ba0caf240050e6483fee64ad3dec7ad61f8f793e5687d9e7ef3bc554e69bb8f6d0ab7a51d3f5778ed262c6d32408d74879614d22963bff3fe484a83ed82a181242214c5a919f8e510064f095ec8882e18ded7dd4c3e76920200cf6079f56887fac3f06cd8c3b70ea053164b912fc6f6ec347b78e6cc3516a89dbe136350ccfc55204ca112b2873359ccb8d30e748f36dc4e9e2ab85d1eb31df27f0297a6c7114915183cb106154c7ed467dcfb0ec709271cb8b64b430139cfe732f9ba697fc5833063039a5d5a2ef59d3173447510e0f59a23be4ebc341356f2205822f0a66d65b7e0416e354d1dda7f75afb864fbbea967461f69c0fb8ea80262f423bdfef3f18c1fbda0c042fd5f4bc7c0b5d2f7618bc2be24ec820d8986a6e7c345f22ef2832797e5aefdcaa07be9f31bdd35d282eaf46d796c29b1e1c34ad11e02f89403ab899c49721be2a5e4a0708abee762150069c2dcee161204cb5bd680d6cfb340680e49f79538b5fab63ee0272fcc33379dc778581eb9b5aa9b72624eb8bb28697d6ad8f16ebb6c29aaae800f9f8063d8885f3f8293c40cddc975c005fdc67a9b79e6bdf7fef1b30e3a0c3ab51cac4ffb15d320acb9a969165fc8d9cc4c9fdff4423b9582c2ba54fd73069f1e59a3ef11f01d57e55825f87346b74cf5afd20b5569a3cfe8182d891612613374053557db3d7a8c421ce649e449f7b0a6ca7ac11459694db5ca15625181aacd2184ac1c090fe583fe7607339bdbd5deff4b4c1b82b0b2832a5368901234a627a63a67a47069b78f45f6c783ce2f782082406216411c942b9f455eb081035b70c54a13f28df53c00de9c433204c61471e021d6a589ed522445007250bc398b16548b58e54b03be61caca4bce6ccb51a9cb4c553f0b099a568ca49d93860ee94de1af05bfadd7985ba8f19443f6594de33670b7711ecc838269cc918d5ec2a5509e27682956c949224c1ffc059c22ab0abfecabae3fe954660b32fd3e3c0bd83ba0e934f78bbeb35c3ee95525aeb4f62b0ebdf70cff985feb0de983ad2a52d03d7de00caa70a7ff535339957bf7bbd09a405ce6ede82455e5ca132bb3fd473db1dd087a047281ea9c27d3c98b18cc99893ce570aacc16e4c8d84eca7197390210469d309982c2e58cfc4c3c41b0c498c02949ee8e5dccb49c1317f014f5af0acf4710631fb3e85cbf126dee44c355fb9cb1e8a0f794a4e63c0841be9ab8948224490044c4e08be105c296182e3ea14e34ad132f1be8ba30468ef364999fcd1f4afe2c424e193de17181989dc2ad074971b19f8bed0657a3e18d7329525e07778ba620d8592a5ca184757e65a28cdcc5ae975ab44f8b0b4ffe6b3e85f1194a64a053e5b5eeac4b87eb848e78b0a9a10c955a37a719160a46d52e237cbf5fcd56814fbd753941a85e20e1ae3f1252682bdbffbed04a11e3ec1d0383a6f5055b2c09dfa16f5b3bd6895a9c4cf31d8c2ea76ec5039f9f8fd1c2becc3a0f69aad095f0a1cbb7800d4b57a7546363cc0a032599c4fdc50223615503b13d7e115b1bf7e3c6bc0a2d4aadd54489327961344ba4c0f933267eba87e0bbc688cbb2aa20bd04cdbafe46d5be7405ce029d53f3c376a3225e4755195c46e25c5a63c953172c1240aa4dcf2629e00e9c6c94005dce93f8810a32df75d3a67314b1126a647bea0b3059ec7f0f4a3b31f83a16b01a31a44eea403ccaa9850622ed3b6e3b41122410a08de696749b728e12e7e106263164ca1006fd3624e48dd9b796e235bcfd240d651a5a6317506b682203fdb124480e135e9791521b61880bfad227292e2052e1660bf342995ef3ab701bc64fd575eb3c3872d8cce94356caa6301ed6091fca973889151580f11c095efe49485771e6008f3e15864f2d5c0ce96e73c432259e12ee4591179ae285457a7bfb598187fea7b08468ee34237e4dd6be18c759fd3d262bf792efc5fd00c2f93ab40ff228fefd3d10d147690bc9fe0f8153cef46624f123954bfc5ec6d91614a7eac99b9628ece91e6f116dae000353a3736339d49e00ffc66a912970d7845d437376a405ec9091893ef9e025cbfd8919cec5e5e9c8ae227fbce880d3563330d32f4cfe43e62cfb8a471eca1faae3a7b1bd40f719668e249bfc2c2b58940f6f73c8985da43b0f6b41d54809913ca8f8a8a60ebe8b09c5e2e089a3c8e1de99f8ce434abb2fb4c2529deef8295f691bc36434b36792d6912e1f4e1b728414e77440b71529bfe5430e4a38b292dd2532d6e614a7da61533062e8ff84382993a8d3764f654e90740101c08e185af2dda68d0d348841041eabfdbc9ac165385b39a03d7ef359ef9c8db393f46c5e8ddb93f9e961478c353085ede0738b09ad0a4f77e094d8e873455be5225ac4a365a0e3a943d308a208da56bfd3d5fcd439b8e73a466dc366e56d4f6e7e963d0d3bba23fb3319f6826dd6dd6a44dbb5895e707a395f646c2e02a6b8432b201211761b6c6021bfe2fef8e3254e7009fac6287be9051b2162c1c3d1db05143245489496e228ea243952790a83849ba7cbdce1e8081456bac5d50000000000000000000000000000000000000000060e10141d23",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 52,
+ "comment": "signature that takes 32 iteration(s)",
+ "msg": "9721000000000000000000000000000000000000000000000000000000000000",
+ "sig": "4cef6107c57d1e2a3389a755019b029002ffc1fff9d4722f8f92e9ba921dafcb20b0604257cde0e315568622d1a665746b446a8df7d8fcdebc10b02ad687d912a944761e54f05cfc113c064191b759cd8f3d0ffdd523644123542aeaad7645711119b746ad421521296aaffdbfbe3822ea3d715a4a276ca0402803a71cf4ca6c795ba336b5ef3a093167322dbd3167502444027b8b449e12ff1dcc8e9eda0b22da66ad89b01c86de493084488e126873be44c43e4cc7972ea78d524fc556b37717bf768bf0fc7374ae56332d955988ef2d57265e43768ef2ae3ff64a70037cacac2f1af03119efe45014f45e070baba1dc5f73e7733c958a3042c743af9215ae7ba3a6284626b724249033300cbb7092e4513d14a8b19b168fd3d29bf461ccd51ab581c0617b64e46d901724238d9ea556caca19d56d83a2cdb43a0db469839cb1ccd1afc705061d2e15b798569bfcafd135b51e21119ba22f4c69b205751b177354ec3c6547ca89d86a95cf1e0b4139a001cbcc5274f4eb19eee0c6b2ee749e940ac72969845563e3ed21d350f7df7d33d969738643983acb6aea290aa6b79ede572503d57a4267d97d2ca92ef2d17b104093b1242c53ed0d966ce4100fe53d7a36f14ee6335a9b85202baae912d9ed7e3f153a0292708fd3c7922ec2b43e4801243ee4a65b875683f85a071c86df08b2a999e258de58534c29722b912a78f515c353caf170b2e1eedf52910b857aa751114b7f26a3cf9122a814a6ec65f0347511eeef5094e575b0c51a90e27ed8c58b36674323964eb9725c550eff91d8ee79ece3fdec6cf9829a6f2bba5ddf9958f1c3f2932aa2a888d81953e74111cfa6600c10022e3b7a420136731ad638d26afec4d1df60bc255f45811f6686f8c81c8de97d541f4a38b6f495aca0a760f3cadd06d72a6476c02a8f61f92049ea6a5b5caf6294e308dc675b47dbe294ea8ce599856d19dcf0ea61b3f930e3fae682d8a324c0022f4b904b092bcbc0279b146cd63b827a5efeaee969b91b5158a2d0cd41266c94b873ce7e243850257e5abda0e37c4571f0b28a92d043cbe92a220170c6de589d0ed0e75ed1b288dbad8c7069f8bd3e4151c0d5bf90e9ae55e2a2b9e46898a301c0823ec14a201da94e9c0995592770622687f1a477511563dc9cf9500968e12c5b9b9584f179694a68055eb5309a01110fd8076c96cb6d57f0e228e1afd0cc8776978bc426401aa1fac458b8f3e1f2bbec589b653469a6589527e89664dd015497b669351dcea19115f55f0814a4c68f4a3c22dcdaf0d10eab6e884c6000f86ba0d8a453f773a16e2e50e85c69f501f29e1a4d8cd4b183efa68df94b98d47923dd8b2315e953465b0f65f3ad3c1d61e6bbeb34177efb27ce59c356873ec150c5d1883d0eb69c26e24a789aa0450af814faeb6dfc46d3b0309eff2d7c6d479832bfa6f9c34e5d5df4861865e64b5b03e211bccf9f72be75ec32e4140bc81dcb69f4de50d8a24896f749c356418d4270f5161328574f25650da41035a8cada3d9b630e103477977e5bb69382201fe6612b3244452a00a68e9b66b2a532d5abb29c0412f3a76e0d3fc0ba868a237c9ca392216efdd77478c49197e963660d57b96263ac47ef7ce463d715aa098ea2533cfb6bdafd984259f6143fba4f59bfe95653fa3ae232fbfd764a3792748365f5512f945d44b014f0c2b33911b36a60306f087c88afb57cf0dffbb8d80bfae7a44ea3e3ffac7e1bfc614b4a7b345c456d7c52a359bfa4bb5499c044c91bc6ac38f6ac2a39e80aebeced421ebe402782edc887da588be58815c71ae9e8d3b1644383fc15e8bd33b729611a93c40fa832bcd803913f590ce0f3bc8d3cf95a7574cb5f2a2c7368f69421153a310e776390c9535d16be57896f6e0ac8ef8acfb64c67267e246df87f55b50670dd3463e6a9b6aae11679c11dbfd3d6edda9aedf6557653ec89641d336b0b8f594a1f8dc284230200ae677092e9e7a6d129ef63997517c5a1388637eb81b134268a1be1d5dabafb6e9ac897894aae6d1720a1f44aceb2cd9749a13b7df3ffe4e06e23f7f478e6ed7e6563355fd22a52543812ab4201f9d15fb88c5a70926e2d867cfdc8bd6f4971a2b51656be33785a7fd78712e60f7b097aa88b294b1089cf01c8f7b958aed1933c983f7af824f202fbb88951de232ca81c7629bb4281a057fab0de81fc1d46b8ada37956438ee7fd8e13f1938bc237b672e0faf93e22c36bdc7cd192c6b607b43f866c3686cf532eabce500a9931e54bdb4e399b9f0b29301dcbe0eb16638486b7f96b766fb008a7b62f1c57ef8e0f5ab59c10ab055357e9e0111147ae6d1ca03ba503613c04180adffcdbb58cf5ff7ff726744bcc65df37a3f9c847b93e14c9f0dd912dad27d442406871fcda4471e8f21dc55b63b0fc702883467a0969ff3aa2010a72a111062701622f64567ad9f8a4f3e91dab436ba552ef2e42d930a71db205de921b1818ed137615ea39d16d8ad4817eb02e79e05fcff24aefa1a10e60a939c0a8235fc27846dd032f95679f9b987acd81a6f285d7e7664d88db73b2d1ae931d82e38134f2b770cb2f834e247371595f3ff78e420f281676399a293c080c7801447a4be951eca051b1858f99decc572baaadda8c1b67e5cfc9aa4e44abd48d2f3144ef92fd1ffe13dad9ce1d4f127c98119e211ca331496edd7b08bedf3c48d225409c9e66e2cc68b6ba2ee75f2dca3eea8f7af51a4bc99d4875fdc3991b300909433f4b261d36bb150faef340aaab774996ae1c6bfde7ac536fcf1df188f2125325922d0412c0d52a77a5ea47dcb9f898981a8f588440944b36ab2195b1afe613754b0e819a5962b148af4b1068ec9761224864776ccc8a7d54dc866fd2f9462273b745a9f6cb5af6a373c7a2067e42f2bf6219640cd11b04a37488a8ce616aaf23aa84968b59385d443e1a77e25e22ed199f0dba993886ef4a572d34484b965f31f76cd90a363ca95a75d175ae78b83c7f72d039aaa5e560e2ea9d0c9f29259ba6c06d7be2877db31cd9641b5ab67eb400c17e04bbda482e923263e668ffdfa92a84ea7ad18675a1e3bef85f1b9105d9fb496301bb1cd47e40c2efaf3f9fa737506d75342c400e74f1e9e6f8b1f60bbaa37e8b32a84f93efb535fb69b7746883ffde4e966410b048d4ecaa660dde811a0b3ec93fd2411e13f1643f756a4891f15a64785b0ed44a7a18154ee7d1d4cebfb41038cc64e9ff7992c9498a35e521d8e38a01f77f2103dac97504b28dad00bf4704d768ebd1c5bfcd434d6dcdb896fd28184c452420ef9bace73885ec8a87ee8e4da935ea42536e10917960784d436fca233d91b2da3cc121f89c7321d765c2b0e1efa88e9899d2e16c1c2958fc6318702f93c27c2b18ab78f65e70fd856f713088e11985c7a179119736bd14e6fa4a5322867ade8c2777130a67c74d763f508eb706ebe1fa0ca45fa80a8d73415dddc9a94d5d7459643f899e6e6b3f204bc79d7e66aa067ddbc7f70aee71a5772349d9e2086e0faf6e68f44863d7ed4c911cd3b73251f2760fbf0e672b4b933ed64bd6b4e0117db7eeb0cfabcb292232bddccc05aa9141ad70611b88fb4d35c3cb83aee710a84a3a7587122c0d2ff622fd7f663b3521616ed143da185556a005d2ab24f7d6af16acd759b3a188548414941fa2ebcb9047ef1e01840cc33a9c666948921baa8a772fbd582a538d6bea5a8b0408ba7e9db25e6ac1a2b19d5dbe479bfb4407de495d1c7cd818c58cc9ea5ed563b4f6e833f8a08e81c9d3f6a6262230aaf6d7ad0e96c5fe394780666313c10b2db729455d61f4e962b15cd524a38711f4eada4acc78daa59490c3c0c36f76039935b135128d6990fffc19f47b164fad639e6fc65921fbd4e491dc32fe11eff24ec5cd25a321b2af69ac8208fb712335c081d09bb05a587d95a7bf66b97a1f2dd8f5861f0575e0d156f7e1c3d59a0012b3dac27c84590bf8058dd3617437577a333875a2e1f0439038b469334d3f9457333e981ff9dc9273d5383e8f05249eba7b0d60b89eee427a057449802c5deaa90012d4b92e50846ee923c90b36de7f4b51aefc122e744e11b4cac695841c430710a5f261842f078284f68e49203f47f0a1805b13999b3b5a169b0ae792b33785f14a25f1158ac702ef5701aaecc7e8952ed4c7b39a10985cbf3e948084e61380e0cdedcba71a5c7065a864c412f486f510fa6f8c97c9a2946fb031e48e8be985508df9293956e7523b2a0bfbfc5564e082a94ff85e395aba4c3513fc1f55257ffd581fdc7f05dc4f014fd92c450c3422784e6a906cdc1fec67edc40688dcf1f7e77314c914a2a696112dea20296c73b3ba665d9ef39411cba46c2b66aa861f7e4dd05a3135c12801bdd4745d847d8947829fc99df415a2385b7e012dd6a5e53fde708fa552e418023735f830301813a3d7afe2567d3cdfbe790e318c9670e32b6b2d4406f1f1b03c57074add69f594e8ae8b0d7204041c309b2e52b58f82928d6bd4ec655c7df9ad79e8046d3b558decc148e89b02cf1d189a4f18171c948d974e8d14ffc83de76c334d001e3dc7de40bcf4f7fcfd191e447c8d95d80d39424a8598a5ad4f90b7ec2a515c859bbe00000000000000000000000000000000000000050b121a1e24",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 53,
+ "comment": "signature that takes 33 iteration(s)",
+ "msg": "b504000000000000000000000000000000000000000000000000000000000000",
+ "sig": "2aa38484627db138769301dfd9a5286975f4869810ad211d9055bee7e25029f41460d92e9b4c68b185d8033d360c0f2a5c9f0004e4d043c368ac22d395422e3d5ba1a4a2f219e38f1b300539a11481d086d93bd4ddfa8531acfeb8d418593c4142f624b881b44d306f0cc355573d25105118d6b9affc066c8910f2889f9fa45a87ef7fb5cb6aa508c4f5ad21d04742c110824a48569a1042a66a4f21723b046461c8c6b382e112c825af25a24bb26d7d874a6715dc338af7e3d4a07c27d5ce243536538ffbe6481e3542a5ac218c536c60ff0954dd5db6551c80abe9d22fd56a1486e6ceccb54ca7993d44ee52444d4876c247014bf459fef5e4b68640e6a20c5bd7ab5e11dd8a1f5527a087b97f57e9935c0ab742f399ba2eb9e7bf255d8d4f7ed820fcf5de363915d23b9d292d7a08e5cf5092516caaccfda5d4cb9ac906d10287bed5a13fc2df0b167e5bcd37768d33665c6adacb8157d9c385cc76fb9ffc53babbe3789a698d8a73fa5e110c1d87aeebfd839e2bff061d37c749c5aeee8bc63441e6ca79e1dc055fd8d789ad729dc475bb94729997e97ff08a1f1708d93612d402a64de159c26175c271d4d77114ed9176c5b9ce4234916e63cc856d9436186b137f7f7aacd7a367af9d28823d46d42add2c2dd975d23d31083424c141207a195b4212ea7bfb6da8eda7f69027552efe7ad4952ba49ac38115d93b4dfc2dbe173eef47934204f50ad850bdaa6fce06b517340b2562e468697fb84074626cb263d03a0b62a7b497ee9462c859b1d7894a543d1e261971751d325819dc071682c8f00f62153bec73cddbd5ec21f6824d4eca53dae13eb9af6c448d8d75c6d676ab18ba64836c3ecc7c20c79836a53379e809d87abc2f04f0413d10176ddb27f72936beb4d14cac5b0e684e6dfaf529b80f9b68121bfac15c8e60cae44292e8a8e0c32ebf066e708aefe5c3aa4fb4bbd7215380cedf0b19fafa11fc37c534f5c3c14cf6d28f9f624008355c1ec110159009690ec648d6ec11fc6de44831c620dec4331c900032bce86eb4ec44725667c15cc78a71f0baedb5ddc251215aa64c527a8dd8b30ed4931047b19b725d9f205a7943614850f9a619a805ba004d272d5206900846259d02c06153a0e2c109741acfb459816a7f8ec101a5e9c38b7ef9b8add48b68f7410db4359ce23cbf62507d584763744e44f95fe2233e76f32d13e660ea5d4b203bb908207ee9c621bebcbef9ad30666fb306e8ff894b2837464d3ce91caa82227d8666a3e2a9e6017f62b1ad65bdc5ec5a4c76f414ed2a15b0da2456694061ffb3296186a0ce18e366e5c5dc8b832e5bc74ff775f4d496802b600b39e5b7b531131709212980f4aef9bdeaadababd7300f75018bb60f48a9fae84f5e694f0ec6c74d3f34a77e358dc7c4f26536eb2f76adefd14e9f8822a85b1b579611975035fab27eb387602a3b4a858b17c8729bec1845b67d0725b38ecec057b0083cac04d4e075d848de5243801417dacc3ed83f89e63ba90dea0e724ba394fcf9226b50b6cb6e6017c0cc0526d7942cf5260efb79aa918c67e9c116c4183eb8068e94f25647923658825763acf820c56deef853bcd33a0c12ffebec84115e17f675b9b25dcfdd6cbf0c0e3a1feeb7c387d059b138665f70fa762a42fa3d9d360d3063b86e43f67e54c1011283238cddbf4d054d9126416b8d4c9116f8635e8cd19c2f202c90ea4470d91bd737b8032d4adcec9c98983f789c97852c2a60221a78b41e3ca75446f2e1912dadbe04b2304291353e32e73e1ee66e698a9395c0c93214a2865661dcca210b6d48972fe80368706e041eafaf9f7a96810e395f72c2ff9aa7e5d5ef845907184f224ba37b4c186c248da8bfe403df87472107da32ec0c0ee10ec6c867341ef62205d879cbb9ded18dc5d978ba96882b5a8ae2df769eec25540a431059a52176cee356a6e3c173c4ae79c3694b1af60ee164408e12ca1131d3475eb5467c7a95f8a794589e13548cd8b11c126244008c9424226929a6086879dd5a4bda4a82f0adc2d03d239fb99034f497851c204dc08961782fa41449ebd588d27b4d7da94cf8019ba42286987bc9d8cf0677ef6c45f0ff79dd41c3895912300b70587f7dd4080a65e81f5d12b0ada473bb597149e667e43804526fed0c9b75ee2f9f09ff32e87040e145ef779c9aba90f13f94c514f6aabe7690d51b6835f3e405a613c8a1e0a657cc259862ccc5a41a514c9ad0baccce1b8142de115994847b98f20ef8fea606a85c770a9d49cb1d37fb701119e6515307b62714d385f3854d5e0b16f3b062afd35586d71b5baed356e14a43e77e0993b8d30084d402bc8f569c5b837cf2c25e6869d2183daaa7553436cf48599cbe24337eaef1b44a8695d5a990241255579c564bff1399258090aad8525e0e5e75f734d15c8331415fe48d776f8d50efdb10aa72252dc43ecc13ca6322fa06d750cc9b817c879a2bd545ebce4b9ef00f2c1cde4d4c7b38a3c865026af1d108f66bb235b07935045d9e86abb228f99b94d82dfa098e680ba7af3e69a2e7ff1f2454f6d8f2165d7a05744e0ee3bcbb320a8b44b9219fb0d81a2127f112eb8d32c20a4e365f2037815781a0eec8d7d87b665bbe3d4c5df6aa798fd3c66d74330c78551d96a237e7125f79f9372b12828c40f7cd9d1ed7039635ed18ca5fa353a878913c9b2cfac7c9d774535cd6320efd7c1e6f2301ae3ebb3aba0d83e46a80a176109078cd101609898f41494da47a366d16848f3aeb61c6663195e1d744e18d284e38e8e303395a3aa6e11e55aac90f011f90a7717febafa8f5be44d033f3f3878877823a10b6e9721afc120f1ec60dca8df125c3c4d052e1afa6a921b66d4e2d00618a2bfba3e7e4fb3c15518ec5bef7589d2368a10af77394236c7061ccffc21ad67af1c9ea74d82a2820b11cca55a156927a677fbf57649b735d2af79ba93f3883f59aa403be37cb84c6b00c4fcd7f28414b665d77f093f4d6c0e7bc5629473ea1c31afe2c1d1a2bdc6459c92d4539d424436113f630059b9d90082ff9b3629e4c13149d6cd92a78a5defc5846f03ceeab92c88a53dcd5f019ac69aefa553ad4b4be71b08fcb7fce4c6dedcf046a09a7d3e1d31ab3afa543026dad8ca9412294004edcd16ae39c18144abdada4acf209a023811f5e60e5357a18c242691f990045652ef63bf86dd8d7f5d05f4f46b4276f580d1170acfec3ecf5426612938e37e65319854a9e0931e0981da00dca67e8fbcde6b94dc54b30dad04f27022aea635983ec8017cf389d482ee6c104c06ef7cf9273a9902c13c4a3f79f88d85088cfcb32396105d62f2308fa419ef1f29283ffe1becde3a2ca28e4b14532cf581d91c311beb4b41a9a9c55ae753e2e28d222d0b36b4c290a6f1b846cee14f03ffa91f3d743fcbf37d5993241ac2efb030e2652622e65be238cfd7e4a0b5e3e40e25e6eb5601120253a08be5eebd20f08af1dea872dc41b305aec03272561f0745aaee1c1b069acc0e61b16f4effccddb0086154ed66b98f15ad58975c4604ddd96e2fdfa674fe53c5d226d376081ae0bd2283f7106558a54e613900a569e799c98e4ec2f024c0d2b15cbc14bc96bfc6094560ec6c4cd9b9f879e3fe74a70c0d3ddba82f055780be7db1ce650cefb313618a2a5336d9b1168fc605518f53708afd062bfeb9a7f66338115e3213e8f4e90864e10b4b3a8eaed966f99240c23a7ad527892b3a25e1a3d656e724b84c46484ed9c0c2624ce62c46646b13003e3eb2c8ac1e1e307f40a3092d96e13463ec1bd75d62b679f4bd1a9e4967323f16c85ed92066b283b12f49fe50423359f7db6c0df64e04568d470c480681e6c6df4fab81d896e13735f3a1a18d26aef3e436c86308a4c184b709a4918670b870502d30d44861d360a88e4bb8a693659208c2c82da46a25dfdfbdc81e7c0a5addcba03d2872b8c24ab2e1761e2ae10a67dbd724fc4652be47650ec912819b70a4d628c4c16f630d24bc5811ae66fc1afa55234d5fb83271d5f8eec99fe398acf3275de23bc002a7652bf60c293e7c04fa6e10795c00e43743050f138b5422d4c09030dd12835a4556ae423406cda8b4936ee4e039324963a1fbe8768798c384f237f7b8d23cdc75aefc035c0ce65fbd9f8eeccf126f37352d9c75a40e157eadadd12b64b582bbaeea63b50b20ec88098e54623bcb373c63eac44a290a7ff8841a417c17bda385992e3f5b952951884273ff45b94067a819efe5cd90c7ddf935c3636ee486c98f67be2eef9ba4cb10c701b308861720f54c3017357e9aaca6bb5fd826cb39b8e0d908171963bd068a589860fcdabd8bae591d4fc6a6cb8bdca9a0380b3c70e49af9819f07100dceee2174331053b4878e41fe06782b5421ff93b7051deb43a61bd5608a881423940222f2cc2bf795721472b2fd714ca7a59373fe0e1c3c9dd5dfb97e345a250f63def1732f19085a5d1f50bd6dd7d26b22bd68aa239450d21d97e85929745896d3adce416c9aa28db0c3bf104a246f70ec5e24a11c3618280cab7bc6faedfca29eeb92c9ce708538f796469966ed1d5eff70e274d5f747bc5dd6d8a99c52035666d80a4bce2fb525b6b7eabce0c1c486e82f50000000000000000000000000000000000050d111a2026",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 54,
+ "comment": "signature that takes 34 iteration(s)",
+ "msg": "b502000000000000000000000000000000000000000000000000000000000000",
+ "sig": "fa54682a8226fa50a7728ee9ce8aa7b72bdd00a4f5643c4771d6547275088fa7b32042cb5441cfa8880779a602c32a536236b3be35a6e2a13360d4825d52f511252d6a3e272b493bc73878e0e3711360b5360af83df3f57570667d866c8558b052c540027a690df9eeea1135aa50546b2136d349cab85dcd698fbae1aa6fe0fb2eec20f3ac4f004a55be8510c4015f74538fe2e695cdc154887631dfe924774a6731b65aa4349fa16d536c7e9b5642966606e3fdb271779ffb0d3599bf958d3727fc443a6a190f4bb2f2853f5f6d773dbafc371772bb3d2b0e88aed601c9ce8ffd60b2496315f507bdbb50c7a309fcd68d85fee1f5aaa9420c4d2b52147d7fcb38026e21b5c467af3ed4b16038f2beab5f54b7c134571c079dbd28c54c6e06505d69b6dbae1e720e8a8bda189867861f84f5f6fa39f9af2cac8c6153bf1533b21f1e70360baa33860353eda4f0ec700c58283e2a3fcae5f0053c395be917ab411b8c2bfa94d892bc4fa424f6dfd97f9fa982b02e4fbe6c43b598eba769629ac66c3cde157365053fb6595982daaabae610cd3458811da53cfaadc053d8af104896e438d7bbdb025c474abc2493f74e16fa8ba563ee0765f4a06dbd874748302dd52df925df631e5bd5a7e335909aa7f8e7a65a7db7cd1988add9b9f34a71e3b735da6dccb4b6f6787af5f1e519e24a1e15c5930f43626f5ed734d4c442125896aba42840fe0613bbb8cb68325a6bb26bf1bcf14a055fcf63f11020ef7572de02b677315a6c83a2d0bceaf049e91bc715a085a25769ab9c9f4b6592a41c4c7e212c3380d723d3b4da5d9baaeabac9410e32eaa58f38facfe1f7438e4eec3ce5091a1e38f98100600dcc215d3c8ca850b46d60e2b941e10c66d809282f9d38d710a9202f9bd9a79a62cc30b32b5a1af6f9de111bee6a5bcb65e9125b8cfabb6db6c750c7553d6e3975be064feecd24e26c7196e931d8b1ce48ae6be3977db6d7eb200aae36191f7f0a2be3d3d7c9e760be49c8fb0b495338771f4b1676304c850db67d24422d7b153a4c34ca37a0ec287dd47739c2295dddd32e5809afbab880da22a82dbfd4c0041b0b8a6b9168e7baca62a6499fb621278ec25a81104eca44d2cd0165113fe6c68a56fc730ba9c7dffd039c978a701ed9f6acc61e39316ce53082c0dce04b4c0cb305aa53ac14befc5f65be4fa4bbdb79ab17c12698df9343de0b4cb3feb355cfca73529f36198d21da56bd343643a0d27d040f2bb7d048ecbfd1fc18b4bd27217c8532d63b47fedc445430caa18b2007ca9ae7fe9dae5bdb0371b897a3def628b0dddd3ba9b0805056caf5c02b7c3e44939b34ce646be0edc1289daa3aea0260643d34ebed8218aed531bee5ff772f2342e96e27ff488a5d1afddc3c5094a7f94f01c70ad619def58612f767cb21b3c742c43e94ff21b4f30348600a766e0f66d418b9f450e389be3ed10d3f080579248bbd7c72ee02985424c09c95b8af7229cc57e6dbd7bedc4aa2b08259db76736aa82bed4ab3198f748593189b0f5ddee1b1b8164f1f82896b458b6a5794170c056377b40e758c1d9f16a4b060f590d0299a3d6e8bb4d9046b194ea49051dba75771159d58d67d88eae6cd6d3cdab259d3b0422b1d1e0b40388d7007f73f3e1ff362c7bc785dbfbca4b4d007f3c799e8f4d11b806f26d82277f02ea2a61fa1cd5efac837aa29bdfa19cf00117f72b67c4df10a49a01efda625506de427d2ab9a514c9cf201ac86fc0692b66063aeb86b0b23e4180f6eb362b10a8dcd44f96983d5decb7b463882f7e0bc455c34998c65706e12c77416052bd36490796afdadf360ad94183907f807113b8c0533ff36b311ec6f8a31f1fe36f822ce27a580d2e5582a9c2991be1b43d0ff9c91447932ca726e57ab3ee076319eed5768decd05aa7ee857ec82b9132556cbe968f6ecc4013fbc49568c8c779d9a6d9dea52617e0f521c46d4862b47691038d9c36adcfe17a24a7f44fbd87114ef18bf1e1df13d15e060a01e2ff31c7b7ac4a355b0f5a3e98344d86c9510af6fdf934346e0b8c756fc5a14ee062d190ef7b6f78764e2063040bd09c4f7e43f1eb64f06d2e5c30b020d6c133dabaa9ebecad1623e3fa26bcfe1471471a6517de61f780b3082007676e5ff6ee9d5f31afa57c9faee333e639efc7761b0466f4c3b096cfda85d11700a4ec5db2deae29042dce8b74db1132104d9b9b0ef72962ddb6c23497bcc76e481871c322712ad44af7387a3e9498fe9a7c86ff73a012a2c5f0f492dc6766062cc296472f4ee671185892fd0704e8fb0c594eac2b817916ea7eda1822544a7ab2c2854e3b0c578fcf0d0b4ce731932af21a293e0c0e06fa5ba4b58dea2695fe4acd9fa6f7d1e59ec3657fc1f37e73e8e3536d7560bf502a103703cd815c9a10756da5d9e651234ff8d46f5f97bed85b89b6fb9c9c8026948d46dc5575679e8eb6cef8026aabb9a648fc87cc5e0fb06164cc22d6ab541caf5fbac8c6140d0fcb57719d45f22e055ad82b217cdb07dc986c4af4c847a8922be5d95f5367933b04b805e8626e73476a5da495bde018836ea5fe9cb34b3abe0b65885c83e918b5f5eebb53a962ac9e460dd6fa39795c68320e6b5f5e00638a1f18e40c3cdf75cc82794bf5f4a524081403894221f469efd48d460a8915721bcf0d6211949245cf7baa2f1ac65073409d9c1328e44142c9161ffc8d31ed8a387cf3dd0511cef2b61622de0d46d3639143339b9b6ed75cb5fa7c95011d878bac8b1be21be2e6608f040f76fe91f5b6fa92387aa081687da647712fa3b7b5e32ec2f5d22920acdfa5557ac8c071491bd4518c54f6d93bb8cde1a38f9dc1145af011c309c87c5b627690958fd466a4e8c073796f1cd07d844902e7e4eb56c031dd8c0dd6d9369c2eb4b89e4a9900bddc8114463c3ae2c87ddd1013b2defcf705ea746ff48d2821e5e63e033f4038cd842de7c838d9418c8e27a8dcd2fb9b88d8a0d0ba9c454d7a0a167a44cdc878f3274ebda260fe95a031c6d8917458d3882e11fc5363ccb034fca155ad29d622be4a047b3ccdffd362a3550c552a1b698e87dfba1774e527127017fdee76a91525993ff46b5eb072c79027148420fc958d1cc62e39dceb827dcd9baffcfc8b13888072827b0132cf943e31c71131e602444028740e6771a49615fcd00cf34ebf09bbbb2ab63b57803db54a1fd9c49957971d308548c94de5c5b6a5f345050ceb75708c8aee3c624e0d8290b2bcdcc918fbdcda7bc30d3f5f5ce1fb2d4e6cca86d6ec163f73858b84265baeeb0fda0f40e7bde058c85a2138bfa777c8be45da1c2b7915f94089074f4f22c0c1ecea9375ee2bfc23f90c521b8ed51434134abca11a9c3fd019244710125e9b7dc27661d23bcb4a40d5e87479d6b07ac86cfd91b5d89e664317336a2a6a80ee88b7b24ae1872bd99bd372d06cc21d835fd2336ea2ae53b7bf8a1c14ef724eba94e971524a1a290f9b7f265665b6195ee20719648b2a4a4a66c705705cf48b41a7c9c7f16bc2ae479ef1d5c23a4050acbdb0eef0a8c792f547952170a0b869f9b5066c06c4fe79d22379a5f8145c700049c4043215f60a7433955b2d9c681133149d845de27c355e1dc40217dae2c0a22c7d9b9e346ef585c35fd8cf96ebfcde2a7d4b7445e6c11046f0644ef7619e9c4bde19d33374061c7d55434249f4aaed4c7eb39a86f9d1007520d048301c9614943efbf9e55e11ea0b4462c9995c430ac4e7c3587df2a9f6d374580d0dbb48973c909615fb846705386c55d486063f8a0c9813419c9689317119ab6b7b6b9b72a2327bfe956859f8e3edd2d0e6a2e3446adb9c130fe0eab8dabaebd7593f9ca7b50df7c0f9643415b18f3c18ae06ec6ca1d39064b3bf8d8d4b841970e3c38c4e609fa7d6e8a938c371d7e4872ef88b088455715c5766126882cca88be8444a951b3984e1e24e38f87cc2d22dbb4459c258f7f6d9c4c70075061ab9c9a60fb23c0d4f5c9170c3368795acf27e099d9788d72e488742e04f779ac217f14eecbb4e3a41ee5d1b7e174b6df258ab1d8851c321c7ed74663e9f836ab08d8a5994ad7ea1be34ee3029b35550d653de0679b0d385315621282342dbda3abd445c695f67ba506ff9d4812a3a70996f26c45d71b9039ac4e4868047a396d838e3a625264e23178591cb966732901cf3960f0d83d4659b5ecf84e3948efde4413ae675d21a25e74aa780b3d4500b8ebb14898e9b8f332ea4524c7a560a630c049eb36b4ab1b4a77c9eb5755ff8a130786da3292383bc378ffedf2a7f3ddd8bdd5b7ff895608bc0c79ef3360c958d8e4854ac76dac7992bb69f6515052c47716a19bea1eaa0c0e33fa4f24207f7b44d5b48ed9ece05d5ca9d728b740e427823390c1d0d7998ce5edfd989c5d0ac351990cf8f291de748ddbcbda698052ee52cc078e15b7fb5360d890653c7b26458d0fdb813df3641f7f67613f5bd951d98128bff3a92d2b2c8b65adf282ff168af584730c3afdaeaa6550564655ad7700e5c34c6f74d091f1b367b210011788ababba86ba2e8eb6f2776c3e275637237c17250bbe31394a5a6f850c8ac1c9dbfa0f162b2c5e5f6e9cbbd7e2ecf72e7ec7d7f1f41b4d7b7c9fdcea4e6a85a100000000000000000000000000060c191f262a",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 55,
+ "comment": "signature that takes 37 iteration(s)",
+ "msg": "d20c000000000000000000000000000000000000000000000000000000000000",
+ "sig": "1f46df1c64f499ad5738cdecb7cdb03505cb055d9ce542e947092e56ff01ec2969072aceca72c59d51e93f1d7ce7de2540dfc1b0e2031597295ab90a154fa59e625c00ac9badd3eea471f51617673b9a963c8538971984ac28b77af69a6c1b24ba5ad2ed4cb30e9e4393e869af84d39146a2e2c8a31154b72d175f35da837f6089c2080776da166aaaec56563a220aa138e9c21b4d66de9490b8a0df1e80ac8521055bf24866e529943f65052f5be8765e1d340067f0172c33f9c68d10bafaf0b88930fd6579897d94ff21d74b572213b58509a29b396ac1cd0cc00cffd675cc6a11ef51dea3093416c12e994f42f24ade5725903c7886729d240941b45cc4089e66b8f995ca1106fea5ad912bbd3c5e47e1819496930eb044a273eaf6237de39b291a7d1e6192ee01f05d487437858bd1aa182ba2c04c894d5a5165f6336740de417f065360a70dfcbf4f86fa781ff6ee799a31887f37e9f7dedb12b2ee5508b28ea97ffc9cc87a0483c8d9a1334f8b29e3d9acceadc55e140f763a413d5e1c5d7987eb5abf3cb9e68838b2058e2f4df650386707b62b9cdc23733d5e58fd456f500a51746359378506724b87fe07aa24c192f56499becc194e128c9ae5268b22a6a22a5c5ff197881e880a13d52de0e5c6a7ab7dbbdd07d65cfd1806a84abe6455c4542d0f832d42fb3f72b6b26ebe1f4c306ffa6488509c93faeb7204811188223da6e932869703602b834aa1a3b65dff320f540be23ecd843b1e2901965d5805c46c711015a47ab82d0b1d9d12fd9fe8c6be4eaf89df00acb07a3d21fbfca442298f70ea4d2acd8edcb2f9e88c3c02ffb667c3fc0e2b2e778b908c206e35f6f3287a6ef9601f6340e037ad38a5d1aff1bb2e50472234a01164d5e213dcc19657c32174fc89fedb70c8e7e4a4dc613b820f43a57ffa04a9e00546f2918e1381d9bc2e3b19c3f79f74b998bbe4f08e47b79b536e737104af435b96a7912eac3f83b36ad6bf77fd29110dcb1cf6d4a2d422f26af1d77507383aca643095b436eda471cba8d3f97ace49ca048fa5a43ed7eed1de5c9f591d2fe1bf6b99d1978bd87032e27598356352029e5a16d280c07e6e702ff7ba900416a7246f0d0b0ca6f9bdee5686766a6bd63f0298852d26f6b9e6002b5c2a704dc6b82a29accd800b39c46dc534c82659bfd63c82d1f9f291510078a6682cdc1aac22141549c4d9ef2d6a5843b12e376dca96cafb5a359612662946e81ffbb6abbadd985077c9a1fe81dc9d81446ce554effe92f879811932a3f8ef2d2b5619670b9d5b9cc6c547b655e41233a618a3eac821c8a8bc427f913ae319e6339ad537121ecf3b22f153d93331f66f594c8b71157c321a753d0b3aede490db20977019de46a0652f9dfa175da85212599c5726fff321cada571524c6f2003af70dd9fa28c497a7584078a23385b88a08edccabfca847dd45eeffefd30f8f4df276486496b1fbb1b7e6d49921ed0f25aecebbfeaa9062b47b9e2a773e644e2709022f66fac061e012cbcf94324814d07d7aca6fd165f90298b70efc207c0367fd51f1f172df7d96c46c9ffe72c87ca3cb42e6bda26e2352574c6d6341c6058ea7bf9e5614748382c2047504bc97fb4f00ee120c8d17a2802f5807636e754781b325fed89cdbdcb41b279c11f7a0fbcaab32f569f8e98204aa1cc04ae6fd1d70c29f1a3b286fafb5002f46916094c36de8b8b0a6afceb7103da9522e515e0abd3721c7402b12a3cc93e31f81c4714a4d86c3215b8dfd201af03c5dbaf5f41b35525e13402d753fc371b9d46e8d141ee0dc7a04f382ea1ed257579d06cd68a0f675ddc5137e5afe71894483f1c184dda00bb12e62afdcdca6252065224476d28f3ccc362dd443e7412d21d945a20c4ff7f11054031351fa93647709ddc89ec667245d2b0feee0522bea979f3e077ebbf2d6a8fb861de7ec495725374b19bd3bdc0108b526caeda1f946d022651a1b05a71ceb9c3bd1eda12728f58cbbb27af266e019323a3dbd149188bff16f6f154e4ecae0f01504afd8bda993028ed478c7eca673aa1f33af88b5de67f1192c668f4136179cab9696b44173b305e6cfd30dc3f42634524cdfeb2d77bdc8d2f247af73c774f39f1af9745a46c33f0a4714eaf6f7f511f437b2283596e8aa6b55d3bf5a94d210f54b99bc642549da972e94dabd7d58d0ccf33fc53176afac3a0fbb6c653bc2e56351adf0980a14c312c38ec6c9160398cb97657800881c01eadd0c8030d7123f6982201d1eb4277b7d895246fef315e39996064ffb115e3b3dc50cdbcaa6129f6ddb2330c64d57e6fcc2eb83db1a4cfeb73177187dc8323888de1abd7bd8bfad2d184033292c21d3ce851d191535a605e3298c8c88f649b819848ad76d4b2f08ae36797ba54b5f3dccb32c8258a38146b6c86f175a888117d78796d7a90525aceb8f6986e4acec13281915f33a4207e1f4077d586c6b686ef10b2d16618aa841fb817df37968be3099a27de57c44ba8f8e55c0f1e401de53b8578a733e9e81268d462e2321af29aa50f814dbd7bd05856d890008148eee2180b8870ae846e07e48a6660202a6bd35a7391821c550e3810fad442b589ab6b3e0bca5d7858066260776148a778c3b9df8c391b72451df0c87c0c64491b2e5bd4e264575cf047cb82f20f95ce3101d92aed4834b98c8f0e5c81c8e6baf0ab3de870d9207bb64b6b99a395ae2de378f8ad233120a968e091b7e1aa81195284f3e9152cf211b1fa26674307a57390e56cb812e030fc50c9d18687f67226245b70e60ca87e9ccaea0e7d36a5d951a22b374d71a1b89129a0b4067c60317fe9795e4a0b41c4e03c3314ab9437a1670e4bae274c2e93197b2d7af9bf501becc0545707659ea737f9042d7dd711ebe6a801d34b3cd45d7c1275fe8559bd33d9b160744d6107fab7df7f419cceef355f513d30aa82e2249857bd05bf524273d46b9e906f557e02604210e34f1be3213b121994fd3fa86da4c5c43fd4bd213e76387868e7f3b2ade5bac9ada99c54d0e948520da7ebbeacfe48e2a8113d000a9ebe5c14f7dac827393a7ed2a5eb44d8a33cb2c010cacdce5b868f9ad8ee93183fdfa1d05a2febffd902b68bf192682a0b5a418bdb900d86365a25e5c11486ff4a2547fdd7cb24839c3bd6d2fb95ec390416dee8d5b4a1993ceef53a5f5ea77357674c7c0a27f78c483925df6adbb5c49074f5cfa660969cb506abce22c764de475ff9c41e064035c48c088dd6c69f384aa76aa21e2c0e4b38f4405adde76784b0cc331484cd3c954776e63a5808f7f973bd73ae418f8648a02c29a8033214099e4e65ffd33066913bb6fa1d5d360865bdb029896a8a5d5b4ec4ac8953e6aa02326d7da96a9067d968ed2e6cab00ad00eac6a296fb48bd16acbcd1acc02d221325e4124c3f3e69f6b0b825ad513abc0c7fa7899142274e2f8bff11704e45db46adf1c4c93754c73e8eb6267e5f69cc4c24b1a9bf1039a39e8e091d944c2981864e78290a87d9773a43898de581e26fbf0919b8a7bce07365e1df475fe75c3ce9b315b07cff1e3cbaca2b16f41309398eaf299b11253a015dc3f067a91157cd6abde00d7c69e9907f6c1222fed29ff9223f3761d0c4de8bb07ca4637ae5e0fa65f22a61af6dfeca7f007b28e764fd187ab52c158690ff734a8dd5f03f202707f27bd271ca982e5e39ef53c18f4cdee8a6285aa054683974c85b52ddbc3d6083b2d88adac9e2e4bc708f05e70e0f24d5b318757192905cdf1e5211b48ad256abeeed49bc752ca5c69c8c8481094ba4652a0a0d2c824b16048907b29c231e86852a806ff24014fccdbceba284ef0a6814696a2889d64c5e750b132d63f9fcd693a201ade06b92084107c6947efd9be127a8fc4e871cab766cef81aceddcaf89b50ee6f17652ceb878a66ceebceddc72b23d3c1f22de6056e27d56275baeb0c8e782151f843b4a90fa5f7bdbaeb8428620882db8bbb94e267961ad43d9f0649aac0a773e714fb18e5e7b3d2be2ab1b53e65bbe5b22ea43a1c20d56cdce27da15758d83d3b39536341dd59f6a174572c6b182bc20df8cb5739c1eb3cdebb72b8a602ea3b4e025a9a150097bbfa79473d056dbdaf2fc2b587fafac2b58b1bb452b2d62b815a36ae59a5a8902d7c63c125077906b397a4c73c45cffeeb57efd12c7fb76c568ec76f5d1cd0b151d946275b4a94d4908ac6ae08d272ab81acf1a4cc4645f299e8c84e8f0389dc0a625622a6a0f1d9a5080c918d2e1ad2b18ecbf64681d8d2088773c306537f8d2bf2fbee5c372b315213a78ad3506dd4b6a6cefbb939b6e0346ce2996fc6c2600d08760ae3aa1c151cdd5d0039bb071c71a70c0eef8ded0148e0368c79988c53c18dc8aebbadf78d6bb69b660f86a24a3a06f78445e00217e545d8e3323c2292d4ac683efd04a9f8c2c3a383acd7444d7ed39474102b2a436de7094bac40028acd4fc9d100debc4b9d5de7ae508068dbe40a7e71b1de99522252fc9d309f62229a5cfd785cad97b58cb7a5a5f9da5b5a50622f72519d1e6f2183b1cdc25e813e8645f0a541c0a3984cd6d551bf0e293239616769a9e35f94a1a4e8f52c2e5a98edee01020b1012306093e2465e89f60f4a51bcc3f6feff00000000000000000000000000090f151e222a",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 56,
+ "comment": "signature that takes 39 iteration(s)",
+ "msg": "cb0c000000000000000000000000000000000000000000000000000000000000",
+ "sig": "6570319fc14d783b583fd81dbacc93c9f25e209c7e2d1db45fcd193534299d97fcf05beb603478f83fdfbe3ec2bf9b808b20c98d8d72b717cd72a5185c448e725023a0563f98943926a79fe5a2a79032e08c393d2c5a05fb93c85b56f13942ac010b90048fde95b3b4fb15741143321473ba593377ffdf7cd22d84a626259ab652002101eb3d86125ffd59fd794d9c5a728d7d4b5cbf1eb65a1d4d8d81483bd3771d53b7598495e12692db46e73a433805fe7fda3baaad3bfc5c0095fee660914c85380a0663f0d6858a065262d2de624c46d94c1604f1f168ddcbd2bf7b771c0a251b9bea65c3526e1f12d677d9fbb2a65bd35050fd2d64c8929ae862b89da6dd0510f5b4da25b9367f0cff726c9b3f0b7db05a1e5613e598bd8ea4306fdb17a7898c5f8f3375a8cca6fd7c1621d1bb870d12fe3be62440172b4cc57f7aa8d15acb44b2ec4152a65a36d098743ff64b8e767a4013b089a9079eaa4989c6982f84f4fefdae1ebd3ed204aef26e367bc7a9ff803f0c11917b0aff5bda98bb4fd7d594d1a6676312827fedb48261521c891252baac6beb46bb7e12952b114c13b1e47b42ccd108f9c9772ced3341cefacca3b7baf0940225cdbb03e4a1c1f0a9805aa6a5e85e6772d7c6feb44a0983f20ef222bc2db11f9a755d5033078bad4a1117c16159cd963b2e7d5ec56918399e7e2bf9a60a1a9f5d095a136aa9fc0cd559c85fb2b5020c4cc03fba4c34147ccdc62d0419c5913515e9b21404d908f2f9298be61437222b3b54d4db7017fcf063c03ec7540b725e5c9d0c3b9a415c7ddfd795ca26eb269c194393b7f6aba85600c2314a2d70865db05ede213e128e63fc9c165d88b4b72c8ac5937127a1635b35a6357d41f16eca42233986be1b9cd2e01c0c584371b2d7a75585b8e2c1fcb0ec296a22f81e2d5abbb57ce4cffbcd0393bf263e2a9bdcab358765b61e5885bae17e58a647fe50cf09cbe6b84461bdca74341db00c592d6ccf7ce5ad746d03b822344fddb152a91c1bf17fcb75c7d0fd60fe208650493d5353cfa211d95dd4d516a5ed6ef5a5f53a83f44d45dcf8cff27f7fcd565acd684d7bcc3910c3ffb2675c52735acf3796400de88048f8d1df93ec618fee34027f2e45f6c96a67e43104eff82d53d7c298d15758d5fd2b466b9a00f7ec438dec6a35d6745265250b46c7fa4c1c3d567d1837debdc1c72d0d7e340b03d3a3151037e9c3137af1b80bf266b8282d02bfee94a01187aebe854659c426f12eefdef522c050d8b514255840f870e0694fb191e918b5ba89df01047b8f4f7fb4142f7942247344ccea2e724fb30e75f824b9b244d13b4ec29b8baea39f494f5b17ce1bc8b3584780ae622686a7934249131ba8165473c9e064c0b59bc0db04d92784976085a389c04fa2fd6b15f49c70a59890af0ca86f05db1128e39b36023700919a89faf4db37d96b29b73e7732b37866b90455322fadf4fca1ff26fe9dde33a1e4645d394f24dc38541f8fd7a21e0c80ba0f7f5081874a677e337c802f5069121d4df8079b9b1143cda5edf2ec1be98f6bc60fb26ac20012ce73b3c56dea37cdd25ff02398be4dbcfd8f681f5253da1fff4b273634c1bb6f3ed991c2728c2aad1d1d1287f394f0f9024fe4d805f4ecf059bdb4786c4125af37e65280fdb8df9206186df5870b48cded097379d3c3f23c0c5920cf0f5b9abd7af7d5966a204be229476b42bec5ca903df94dbbe1e89941ccf36d7aaaf4beae2ec1e4ff5189c4525db0e9f30c11dee8c8673360634d49e59f928df07481754df3b0d4b14e30cb596763f3268d1106fc571705c6b94d7ff3e1be58a68bd1119910775eae6e0edc89ef7e3a4fbbbf71435c9ee55539d45ae764289e673d21dd62e38d1e5ecff6a2d76462454a5f366a017084b9b63ed39379a15d1088c2acbdef377e78bd0850eeb278fa4a90154783d64657ce67ef0bbe4ec673e2aea2cda4695909cda72ef13a8be8fa81558bcefa0373613c74bfbd5abad71b06b98edcd4383ba05dd89261ab86c28b8760e68761e928530fa733c71ec1ad2153ce8651fd5cae23ccfba0ca792ae0285421139b49fd4e1e3f6b7e84c34b0ce9e8ae3cfdba198f325ddad28144bdc8d04beb45d311f960d1e0e730180b4677c01d3023ce79416e94df5782bd27a150a97ddb7b4cbe7feaf30733253d27f6dcde4c50f912fc1b01f899ce1dd3d48152e67aaf1d90731b3d4b578528538c8989f9f76911b3bdc6e36d9894f781a0c4c74edc0a4e102702f66f1c8261a92b38754291726fc8eee9afadcf4a256745884063faca94b2a8b98ae96b0581ef2319ec9ac54619ba66f2412e95d659e7ebe39a909408e5ea7901c5bc27c74709d0621597e9e84ac59befe675c51cd075a25efb4c9351baa7d3d9c983b27ff1595a2bee73952c7c0b6c9fc252c8c7086402ff025c121b92c2425b3428b743496455954d38ece2b3964a9fac4457552388127c012a26bc88bf6866504568ad32a742f87123d61525ebd1f4109324e3b57640052563c9eb9cfbe683b5a325c6e8b028b6b9cef425d895ea902031752a5b7ff96a2af6ee1bd719bb0581a4a4159c0c58bc36e74c7360051934433ffde1b6a49f2c04e93077d8231865b3621e272b29a6f50f7a2d059eb380b4b43c3155d7b4b2b6eac7da5b135ae5b419b5f3dff09f68251bf5fcc3e10168ed331f5f0d1e0fb51e5ac777b2eb4d9a2befcf049be9851f791a6f059414ae3001acee646a07a222884387f1e56445d7852f7db92d40662e91101d5157dcd7ff517d3b864b557316b1dd21706fe16adb337ca7782ed5bb21e970afd9dc16eb36e08b728bba8608b15c30875fcbf6f939d96c7056edf024af12e1583758a005e6187cf7c2e2af1167700129ba74ef20e3afea22cab2ea9a24f90807cd839b884016c8b624d2cf13917cf427bee7548c51d4efbd1fc98b0034921c72645657350d189777cc3bec591fd205721d704de42442d2b8b742f12136af848ae0ed3150bb4987e31a3a544b9f79456a2fca7b149a8f1802781206b57d7ecbbd465c40a1b4a0e6f3a1f25c5ee35855908a46e4dec78dd586c086c04eba75769fdbc3cfae0cf2cd32abdcfe48e2b106b8df9a4b98291de33e648efe6f4355ee437ee7cdc854a3cd47c616eae431d6955cb78548ce93caec1547f2745e32686d930929982fa2bd1a187858511218c7342ad386105ea90887f0919d875685600706ab5bb683e1dc5196d8943ce821a639a7931e175df372b81901af3f08ef4bdcf10a18127efc074d190519a831e8ccaae06a84f641a2f5fab19fdc708e8d63fd66106acb2a720361f9f03a3756542d9a12d3ebb9301c121aa30f757ce4e56a2243cb882f9d7df7c26a52fc8ba8a0af2c1baf6746851a9c2a3e65ee15d456f9395482b5893c7937198415082992b7d7f34a547d77c68cdb77ed32ab1218d409bd71240857b13b0974d045e2c89ccf8e6a62104396e217f793a990d162d41ce4bee49792940496930a20724c9d4949eac997d9c2e5b9dfc47b04f0cb0b694e66f4e9cdc5b121893f79e52d3d61fca23e667da19286537fb2f3a3953947206806782d669ec03c17b1c7bbd09b4bff50d91252707a1a99d7cd1689bc4eba2f985524903b19d791da6fffaaa3d748918ac7653336924c960794bfc06f039580fc1ddad59980d1818c7ce79446f35576b7397caea996e359da3a3b3b7a882608ade4a9cf32380216633da5c5672cb0aed04512b6c784fb4b165ee2b878c502a4a3ce3c8fa48723694106166736b93b5e688961092f1ffbf603e815aab3faf971f9e3281f784ffa3a2dc23a164cdc4e81783d5486b4b6132ecd404744b248df1c32c769329f224674435237cfbb2f9806ccc1ba3c8961b4c34ef2ee69db7f469072a116f842b5399cea43402679db4245512a95107095eb057bb6ff24b6bc418b8c63d7bdac31c6802b29210d3662cd27d57386f1eafccbaf3837e2f8413f66239f2e689e537dc017d005ddcf003bc5c25e6e7b75b9af884e1b164717a14bd10633b4685b6d2ffbe03d5f5574b73daf7eba0a800f8b93af81850bc692b60913e16ae210b552ea00c4175c4514218ce4ca00fc16cc098c5c6aa499a2eda2b39cb80b80f39af8dbed96b9ea9b010990b6524e0133babae543296a6773577e1bea164689993cc2f4f14c63647c4bc9fb70091e09c85aa3d394f445567dfebfcbb2ba19dd37d4c0810cb929dc9ff9d2e5d5320439c7e568cfe1d4a1fec65ce576d9981ac8d45e5c21ee9eb43340b3db7d4de838730742616fb2d95dc2986960f08283207c414d907a044a3c96fe6a83beeb79ceeb9724ca40e2f0f340d8d2c6e64133d619594e73d592a9d24c5b00aa1dc8ce4752c2d86df0cc79e3d81a8a1b1d0cf50d47207d555be63db4f1d87e818082620474b0f8dfd7084941b14e8c99967d2af0552cbfe6cd388665ca8de290bd2593d44e139d24c69c1e09be1048da389f7b32828162ce85f830e4e2aa9f81eeb6e2f3e41fefffd2e611de17dd9f35062039c2b940b809560f9b3a749f0f60a04b06e024d107991ce612d2b0f9eed003b831476d71b7d1f07aa3aff90a353e778e920b519ca5b8ff394183b7cfe4f8fd4e73789cf600000000000000000000000000000000000000070b11171f24",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 57,
+ "comment": "signature that takes 43 iteration(s)",
+ "msg": "fe03000000000000000000000000000000000000000000000000000000000000",
+ "sig": "bbcda17759a78276b6332f3f95bbde79b676072fbd6fd60a4d43e25ce3cb2c34c4d81dc1a278a99c5d5faf8596b5ad4ff060294922ae3d220e5eae86212332da242a2e77c78db4e06a1d28220e3f4a100022a3b461d263c43d9bc5ce2e3984e192f3f8a5a2e1f25bf7a5e88dac482888fcb8657117a0911dde6c9cff20561460d7378821a073fe7eb2c6328f52c2c74f6448bedd9bee33c9b4bd28ad3410e3af07ce1f9770fae92d8996ea766e27c95fa5b8021c735413e86b277727f467f5786972c3df4e1547a2b921cb265f48a4a0e866eae0a44bbb32be8aca8cee6a6f9bb60069c3e8949a7d6c448f84e05cdd726bcb3224a50b49f6260e2482f45e047c3f49ac318a8ca1d9aa730c807f286303e837e6e8c33079ab12fa20433860caea7b91dc629feebb28ffda66e1e8636b1e4f90488a9dab533f0bd1596ac3d3708cfb2d30a08636e411fcaacd7aeff28d2253b128494d37878e9bef3676843352d01e266068081be7da3abef9603c7d17229e57714c61e512ed4e9b516d496bfd6a58d17be0910b280ef2e0684d94d957f80dfa1cf3a45c1b65f5a0dedd946b09f6d0f5e158f1dc931e4d44639a687924f8de96f1b061132224cead2c5fdde857e6848052c6ab47283db6095fc94b2c392dcdb741ff223febfd0a637f2162e862f4e9647c8f9dcba2e1be425f5308eb1bc507cd10af0df3a559d1e9d9fe91ed0f82b71585a16f8444e2908f166ef8af1152969a73efa663fca2aeed5273e17e84e694373d25265b0214f90a8f6b610e12f73af764183cab7e99f5adb7fef790ebb61574a424e2c40afda048ca5ee38d0e50f000c03aa3da579729f92b71f4e79e6fb386326863a2c48289224a22708e8cf3541467f0456ba6f2009c4937f88dfa15c0ffdbf4aac6d7f677544380b87284e142b71dc4ff51d385bc78752e6cd9cd7a12f54d6e38c7b7622527bae2ddc033ef88e313af84e18aa357c5ad56df9b1cb5ae393521f21ac8f912e5dbac2fd51aa7522ffb927f21b8e28d4bb9a3eb58a7b3e7b63027832d811ff57b1ce25583d2bc70aaf8cf91e6f8ece51433d97fe437127ad7f3b0647ae860d88f9e20dc6e281bac2e8f090911d7d390c6e8547240179871a55e0e73dd1114f0df5e380c56910fed56f674db18914eff380467d3fd01f3deee25bc525a672724d62f73fe7c0ff813c8a3202de503e38ba7c538219a56a44d5719685de991cc996f2b483fb8c0a2c818378ed02c4482ae0239fd494249151ccc433013dc544708b0fe45d98a6e0a6528b88c32892f64acd551a7d0b7bb884f3c7a18e58b8722e7a90b904d21d3004a00b468a5f06f4f141bac688d04f28bddb7f2421f0d2e4db7a9d7be94959dcadc9b1252b1d8547fb14cb81b089cf8c4d99ddac314519bb4c9a19eaa3018e805c642ea1362243caf68b8d4972bbd2f9dbd4f571fbddb00b65688ccdd344a47bf616adfa9b6927f796e08dad32605d97a90acfb70d4b4f9c95285541a820ca6e9e959bbbb1b77e2089f87fd41e824de384c3a59c251b7c571c1d89e40043307d170a4e679cad7ccede16cad15cbab0e56c4005f56fda088434eddb1b4eb04af6d7f8f5120b33fdc19858ece0cf755a57f3a2006750ba15d687a507d4e5215062ec3431f78f168218874bcb785262068e0daedbc750c1908420f87eca0f02fd304a52abb78c0968330a77e587a4e087a0baef408d3691290d2edc5387bfc169f52ade0b387f218dbb7efb9435d93a3a7876aee38e0a49c9c69d9a98197e092ae1faaf6c8ec41804b7da6e62210c4cc673952b95f55b929b1a8ea2b3d08dd5434c2651edc7a41dd031212538635cad974b382b670014a9241a1e2820b2a74998a46ed419900cc1464c2ffa33f4d20823efae2452aba5149e825ef1955572b6671f3ddb3452cfa1928e4e5fe84fe875ba853b3a56618be73b3c530ad3a6f8725883f7e23d136f64ff7cb727f1020b1f4a394719a71238e3d7542a66ac55011caa451a3a5e101c72be22fed87f9a663c5f0b0a4d711502391d1edbe0e90215b00fc08289b72425a0dac72546b539fb9cee77d3f084a39cb8071f504ef52979302836de1bc784b58dcaf8a3bb36981f45820a2cc35a29bb8a6857e7fae2e1632a857db40d1fc5bce39356d6c428cb5b4b8401aee5165be259031acb0af2a7433c41819a1c44e74a311707fc15ba6d4f0997873bc64358a5bb9fd4aa22b1caa9c030136e2b5f5b0a999e7ce009e3713dc032e4fea8f516a3e0ac277a36c29b5e2bf15cb4ff86110676ffcf33e4b7973a3bf248c7f6c02c9f091da8b85380684ff829bca245c3e3e53b67bfa4bcd34f0a598b5ef09bff00123ca0dad69518a765419fd72eff17602717957e3ee3df45a82a573319d6b40dd6beb7051966577d41383d97137eff7db84a2225e98d014f2111357edac272a89a7c50e0184b27d6a6ec611f70051100e9887657cecad1f34867e6d144c360e9eec53bff7b8a8a4ddd9cf254e5c74054bb8eec9359ca1fc91eaae77a9487685a209ea960b43a8cd198107b112deff2391cdc326300e35473a634c96d933009fd172601000c28fd58243469bc7a634c462b7f2147c99de6a6f03524f15fdc7db81357ebeb1eff404fc94f1c6e40912ce2661d8eb9d584f572a6152ff88d764c20ff024ff22f6f13605b3bd380d0e538f2b060ec6afca3fedc244e18f16a032eccf437f38b9db144770aa247e0fe7fe7001aedada4cee551e5e37a38b64e086e442799869b7948493526179807d628867bcc9fc6fff1a8d2a7203a5f0202e00fa2b7a851892bced0e5b2ef90501df3984f1a28746e6584fe944f6436daf003a6ef2613c20982e3ca9191228835ee1102e5fb67d5acf87e300a6de21d7091d6a573167b0a65f2dc79f979f5d1ce55dab07e2cb2567266f8e90ff619b6174110372f43baffe24e3711f114be914c0e01c56756e2460293281cdea5cf3321f789f64fc1f19269471f7373242c63563c7081e70fdf014ac4e11d1648e6eda56bf964599f7f91fa5b85f9c012236f700380a45b12985475ea38f03f1fa5453a782d059bdafa71344bbc2c60eec43d0edfab113d7f8761bf37adeee2ef88a5ab5060f004de5d69cbe2d772a627548a85618899a2f3d56ed971c8ce87acd78feb6476eebfc2f50075e984670a31d45d9a351886fb72cfd889c6c3486a824b0d6829d6db49812095873d9935843fd0433bdf9d4f4ebccfad9fb57fdb7f4bd73b0ceb1373b6e55d564f48f2d5d0036850ee0e04f824f45ccdcbb735dcfc5cd1f38c1238a28119008cfd6d608bc816d1222a01cf368f5871a9c25c3d6b023c235f8e2cc4e32bb365abdb16f5f9959236aeea856c562432129c1547b845ff4f143989e5d699003453bfa694577c9d5b9cbb21886ffd65b3b1d799ea31562264493d4f5f00b4531e132f7f608333382c23024936851e1c4e785f073a3441bca8823f8f56fe8ee7b484d09f98d898300f83974b9e39f56ca4184063901fd34837ae0269939d598131b93e68e982efc2e9f23183194d5b1bd977f886be2f58f7ce51a317adb1c29dc153316f7054cb17df75e455c1bdb3556e008a66954ee1c082e23203d89d8ede425dc355c592681fb20b8dc5d9ba8563da39470c3a86eff22c218f796f9594a0cdd39b7e12d2ebc46e30650756f656241606a62875b89f864c9bb7ec6f22a3086377146a053b373e5e6016a690c5eaca8c923d17e7d49cd2e81a8c2b41fe008b742983b48b973a2e87a03295868dd6ec34ea1cf51c359d5ddc8a0f3b480b443f9aa05ff0b98da9bb79595708b9ccb683e4580d20b933b19dc025f7e8037ca6fa70260a0ce40e354b73304b0840121892d408a19ede4eeaa311166d27e711deb9e4c2f22486d01db58a504caede74e928ce2c39e68fda561cc748cd20dd5930241eb700a177fea79a33f041c72bb5ade325eaa2f7ae60d9a9c65c314ed410a94299f608a9fd3be24f427f682bb27fb32f9bab81dcb492605779267ee0b7195ca1b7c52103692f204fd4cb665f279fb3a4a392022b8736bf5af8480bc5f766834a8e1944c83f41185d2704b6938a5d9d03263e3deae764d5e9882b7b2e4521b379d870d4968eec4099cf9007e6519809ff133b36eb2f728159b36934834990096418c1620dc41e53f3eb8a55c6657687a1db8e5756c2a8250d8ac9d08e5487ff27d75b8efe3351318dd23b791e580f09feb7b13f4d82fb0667fa66c32f6074bddb6843cccb7a6cc7769822dcc0ab6487f54c49d61f2109b47cb2c87c0f6f158298fd22f1b9fa39ce57c1ec04b69f4ca155f8ef86d321fc3bfd52d26b58f9c108c729fa5b5bb3426628610ba05e816f362815b685a14aab96b63cf2ee717aa975ed4d3cc7172e17d97eab68a8e32220a59279e543b2f4894fdcdb792a7da257dd004eea12cac243c7b9b67b0b035b5d9bf5dd54d7e1fcb0a44c7a18cf45c765777c3fdf20bb4fb29adccd24952047234331feb580651282e1a523e96e0d6bc35a50cb42ace95edb1eb7bbdb91e499d3cfb463b61ee61f851bfff32c944f8b1090e7e3fd8d02f05740a840fd6b04e969ea2b6c3f9fb7086267ba3bbdfe3ee414994c30622254253829aa2a5c6d4060c35444e7f8288a5b2b6d6eef8fafc0000000000000000070910141f2f",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 58,
+ "comment": "signature that takes 44 iteration(s)",
+ "msg": "bc10000000000000000000000000000000000000000000000000000000000000",
+ "sig": "7886b408e355ac8eed58a28db36fbcbd60e3c9fca1f77e88ab399acdf57fd12c03fed5333307614b530ea3446cfdaac07ce1fd5310cca41e224bba5c0387aaf0091a1ff0727cb4f62bde0cc681d1ff59294df794196d69a377bf46fcd717c44904184f0b697713bfecc4ebed5e119f23deed3de861965ce6c8c7573e45f29f819c5a67f858edd3a223ab300fe97f3a019a9ec43f24058ff10241ffd008164c78acadbe329340da4a98b07ad384d87a9dcb82dc30f341f699e1d6865c00ce0d33533f52f6a3186add7d5c56555ecc7a4198550103c46a60e9987e00588c8720f4bafdc8f52c76785bd7c7ae66954b1f89a3372df91d963cacfccfa384c9dd1f00a381dc16fe205391c60ccc9997f50a05d7ec28a41921001228450ba221c9887c04f6c127a4b979e595d9d48734147d261587144a702ef180e845733abfca6b60c628e2cdfbfe9dc9e5c310cc4a9a79e9fff5c61af2e9b8eb25df72fac662f3b0c4860f5cb30ad2510013428c18cf2fac4fe524a86d600460d73bbdd287e470bc2c3e92df0c132dfde71447583dbb0472c2f6c6b99835d351788ddd09d2209191ba821fdaf237851d2d8698ebdae44709ba44358a49924ed5df96755b30fe5bd467714860e92d5c68c22eff2da7024d53fbffb6f04dfda5e9efd44b529fd708dd6898311e5a9bd73d2acc5518afb2341144fdd63159a2d8c092cbffafe65e43fd29b0e6a3183ba3eb0f4a0f393d4b096a195aae986861e7ec97a70d5553941e23bc96b10ef09397bd938f47d32c6a4efcbdb45c75214ad4f43d1dd73bb4a929b25e5c7fd00b55d16a0fbd2b4cfecd03ba0d94feb86837d404f03a296514cdfaa9dbf424b9c3344a84f2a99efa4d273701c32780a8a0bc568959dec3cb58ad52010253eb1096f752fb3eaf9edd4269cd53195478d6d9ac8229aff4efa1a7b7b924b38d9d5babdb6efd62029d21227e5c49fe344980a900d395a5635d5a5d5e4e60df03e587e5a69e0ae1114d9128e8162d111753456e0e0e9266587873f81ad81c3121eaa4f1937d5b2f3a36680002e81cad221678122a456f0304b36bdadf95de811143b1daaf48df48db876dfece80e7a02590a597d30cb02f43fd0ed854806d8e586785c01633b5e1aff69fccac11eb74dd4d15d4c7785d0e8de88163c8e05c07b2dcbe2ae0a6001e4b696751ee80393036d8d2f825d88ef3d7ce51cb2d24870eaef40d3ef91293457319151efc02403b5ced3ba2cf0eb4c825230e8a8e89f31016ca19d5cf3cd20d2d5b44d9748afaa034f8222d5cf20183783a26728df676ff8f55caa3f17df71149d1d4e9f71d058a3d1d6c2d4e4d2030d31c795c2fcf08832a4a8d1c2b2297ea3081a1b6c5c74e297b576a3b3901b071c6cfedf84e619e7c879034c36c0759282a271dc4c1444c6603fa2225aab788a5ae11aa242ce8dbd3422d4274dfc807812fa1c7d119a6d43a9e35d4af818b3727d165813d65441d2d8b42bde43d56d781f5b9b341bfcac73180d88c933d9e25c9a64cfcf07f3e03f89797156630f953e8380859f37c6c630fb4a95b290fcbd85b9f2e05778aa874a4936e10638d21fe3cfe0176191399ed293cc6230451a163dcc2a525ef130a8d1c2ad93ee87682ba8e061101bcc332794c6ee2673ab298982318a3b68d10dfc46e5ecfda4e1164b35dbd296e4bec9a01df32704b76315ac1c5c660b871f5d0ccf4065d8de4c1ffcc8dee4178bbab66f1b02179e6f73bf19822ca9fb284021afe756259f051c11694814b8b019bdaa9fb261e8dedcafd2d69b19d1f96f1bc82ec77ef51031b96dc65481885763c5e6746ff0bca40d1c375be2b2d4cde654cca8415cb2a83a66d216001d692c4937c138e6e3b1c18c54c02042f8d58033fd49936308d1377e5d88b98b4429afaf5e4af68f4a1f5b2e039cd6b5dd3d04777e65c1b2abaebc20549251188f697d1c7373a62cb7b08d2dd367021bce2b5f4a28e6e93d61733eda231de2b35c9e2c84b8063e9128671a9a27b21ce5b2c6196769c0837fc1f815439bec0536f017f10803f5ca14f1280988679d604e19330f625e3965e66d59bd820cc15a3ff8f28692381e2477453d153f5e139855e6ede385b5b7d72506a3bf53ac3ee843a8dadaa8dab1e2f84fdea598e2c6aa4e3b4ffc58a78b53171952d7d49b05fb6e59ed5ec857747f9b1526a256fc0f048c0c2e239ef8dbdaaf671eb75c56309f56397a3515ef8b696128c08cad511fbc86492e55feecc19a4c854c40d36cf7215d3980b7243107caf3a3d7ef580f2db196e1424d35dbeff8277d8c0b0e749e26735b78e10db19c8274a81b1168f09504d0a2aa90213a72bbb6881064db6b488c8c4bb5620b8c2793e853660adca017e12815b378106a88e59505be0eeb43b03afc211103f2d20174e5ef5772b9e87953f9ba96ca1e69bf79939d6eb75833dfb233d2f7fffe6cd1212ad896105492ee863883382403d0e32124e8a5fb30dd3d5a44c5859c2f7a1ecb017410fc7208145193230273e306622c8cff46393a73807cb210ff8c8e9bdbbf474377758214b4bcf6d2d45ffbc3b7664cb4c7f4d9dfe2fd8d76a2f9a09922d6f5876a09fa45617ce12e0bf0ecac9ccb6041568c0e1da7b023ff02542caca8198844eaee7144d535583bc7628c11b3c02d285ba06445cfc96149af917ff7b23a3a57aa9593d458d10e48c380396debf3d00dad69c5e234ef2dd8f27bde03bb8a214b8d8500e5688e5eb75ff30d6e0ca650b283d726096a46376fcb77a9ebfeec2a1a796193111f491e7c25e4a817aaa8333d4485a73f6646ff228985080376264e290cdeb8abb5e52b5003b6bdad5e941012edc370533c1773e8182f019c140595cc28ee1308c6eca317eeeabf6b8c630274327ce81da763cb7adcc4a625f0c2252d3fa2e2a75cee7d1b457f74760accb952e364e68b300e509ad72b06f64925a410c5ad29a55433b926d1cd6fa754587e1c761035c86f1b0130acf97a82a89b7a9a16981d8c451ef529dfeb7a8b072089fda297efc6f795fe4e91c49a00a5388d19bd553d0dd2db09bb53aaec2f2b1db95d5f3ed9b470d8e8ca43c83e04aae5865f84f590b58e7fb9c86b665bcac31841c31b965622e40f5d2f01bacbd2cfc9a97645bb303968c2bc041074fb9f80ffb6f7c4ae869942a1b8537c5bceac69010991cbfa28eef201b6f31bdeb3acaefc6a5fea55f8aed6ce9160973d621879ccc6d3c96921bbe4e3febc7e9308f0cab473874812051043011b4c1d73476592a5fef111e6e858b88fff4c03b99fb22b49817a7153c2251f4524ebab30968cbc0317cffd227183c3fabc5281df4467cac43f17d1ddc40047d1ae3935e354334ac595f0b756a8d9d712717f7ed6d83c0a58364ac96b294f17a411731b4d46535e20995af972cf729f7a8c222237e4aeb7cf8694d7432c95c7e9125bb03b0da402a24dca423eb97433685e698be8d0555292a3af58a36c5f23ba1cce6854e5cba1bb1d6c989ad55dab142ffaf46a1ce65d73994132962c6c50868bc697b2848f6b9f78ea71ccd9122cb6686775d7f39d3245ed1fef51ab2b9d6c95201169c1200021a315aebf2501460859b32feed4e37709c1d3fd82c495c69981043ae54ba577276e46e155f568b7efa9db1cb204a6b601e4562535ff4edcd884a2ec25d96286f560652c5ac73f12933d9137016f4fc3dc0ced8957523109cc0f97ab47d4d29d577c2618e88c4a4b6302cf01242a6af14aa1bfa3a287a3887885b8d0d276f3b113b1cd601f6e78e5b0a4aa1bdd15a5dac01213f57fac75bd292693bef59a3c1dba65d235c6834568f9a25e0a9c8150199f378ae482ada1adc67af79177d7e8d2c08e743264299bd2e92803256c8f7da050c4b8e097b5b8edfdab9c3d6fc8f6b2077d99f914d6fa20c10b65391be16b6bc0ad69794ee5e6c68b722765b12542ec9d93e6f622eac5a75551c0826f95c69a50e6ba8e7b255e002a6e8db7233cafdff1c0e3106b7126bff22c577874a861d86a1b323eb3936a4cc429e85023984f7940db34bebf39ba32e6242bdd78a9e707ed14e874dd9b93e76cb258b19a129a4b7368e424a56224187a3155349060e8bd0c0f71fe47a003314313a5bc93e774eec2def8a26f48ee2c84860b08e3cd414054792e2cda188d14a7a13ec99dd4641b5ee12592b312192f20ab577b1df34c445ea1d656c9c7ab466344bfbd4be5a4b548bd201031eb3bb49ab4b9c81a76022c413d62836ad9d5355f6b69b9215f9e729e8dd5cb9d9db4b2cda30928886ddb9ff89b48c49c4490abf9dbbd75aa0db55409ee084ecf6c0b604fcb6691e3fd8f54aece7c783e4c623920d52b5aa79ccb6e0335ae1c215c2198c0e65d0399621896009a21b824686114d958bf5211a4c51d0890a376335e50442cea9241ae3f6c50f3cb53088aedb6658254210acc27796bbd7ecde4d12f80db93971907fa13fefa7203e566c63a121a3bbe61c486cb044bd94b8f14d172469160984e5cbf0577d581d4500a9b1a94403de6f9dfcf7c65ecc9f92acc734cc6c0c59c6df459e383b73c265f337a83b0bddc1b0a494a0e67c7fa2455766779ac3080910162627c1101f3d4a545769d6e36fbdd8ecf075c6d9fb300000000000000000000000000000000000000000000000060d161b1f20",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 59,
+ "comment": "sample_in_ball requires 1 SHAKE blocks",
+ "msg": "0100000000000000000000000000000000000000000000000000000000000000",
+ "sig": "0d0d1a7af2d4eff6d4af7435a634d28ec5d23595fe7a72cf76d30f1fe16620c64862e4aad54fb78f8ea752b1e43e4e5884d7226840beb36a76f6a9b1b7d50b0faf7b8463f57c66240e06a22f5f3de4fe35c1bc6b5e42ecb1c0758069223e02f42efdbbbfbc87b4c0736141a70e6dee41bed27fcfdcb94f4213a0f99a02beba309a93d343cc932a6fd67fb90d6de7a81101a678e6d47d8b1c8bd67fe386dca360be789555196e2ff8704c175ab60a8bf3c9f3bbae1ee5a128f67467d21fe8a62e5f8ad8127b8d7eb37e43abc963521e79d0f1ed57fa341f743246fe69d97afc9a13824c79f7f3dedd286f3de739158a0900c99d9c8e5603df109c25d993f634582c832a79c7bd8cbf3ba07fc4d9e9ca8c1157434515538285417e6424209173c6dafe54c37e4424de0f25454b1713fdc3e72d01a2acbeab4d7f60d17dcd073c60b0ad5252cfa137c138448c931498f61fdf8f449225b07e7e0fafafb1f274fe5cbaaa136e62362877f643c7c94946075e8928ec47c04ae54d2085f7f2b1ef0e46dfb31b9a19135b6cc9da876dace6f61c2766b463b24c0aac5068714e348dea399986c4e8b8bdb16768e7ab81e9ea13e435f97e35d268bb679071d5b99d0d2f1526833e8624b6e4ff1ba3f5af2b23bce93dc7c2c4370cfbe698a3297005c9fde7af66bce7c9ef68337b04d7681e303a824e00acdae2ee3eb8c3e7507e46d67a4cfcfa9473bfa6334f2170911bf2ea75a3618cac939d11d6a778101e033cad958aecd89feabfa19dc6dc73584917834ed6552966f7bec4546ab24c643db25722b3ba412de04e9195898388d9ce04cdd9343da69ac9b3d3155620dde4052e9e30529904f25dd6233bafd4493b66844c8fa5d831377dc3ff8829114000799801d46586dc2d2059f6bcaa43b899e089b4f3a5ed4e6a7f1df5b8d42fda456a70e10b2ae14630f27e4c7257f5df23ad032c1edde44073585c04c1231e085591771cb64aaf62febedb33df56bc62f4d126cf8be4332ce4965e6e67d0be7871d81dab963c576ad7123bbff510f282bf66c0c1ea04aaa05a7a4d410d0e7b6ed22025dcb6ceac78f377306e973973adcee776ecacaa560dc8008799b306d5e617b2f51159b1e5fe5daf40f8f488f077cc55bbefbe8f5a61c28ae2b1493272dc6a4e34854f73f74c3442d9c302f96b6e721e2956ee0bcdb9999ff36d74b8d4ef036afbdaea5f977da2b94d0aa9136abd6dc26348873090cfe3d4bdda4d962f9382576bbccf8ba227af4ca8e017f65b469d2e3d35132fac40cdf03bf8f6beee66fe9214e1bf684e0aae75e4141d9daa1c77ef409f56424b01acc7ffda11cb9bf64a9aa71b484b49b9ee82dd8178dd4adc91d8d176f83d2cc7516d2195917fc246ebdc0dba4cb5a54ac6169bacbcd79adb72d593fcc3fa289f1e4bffb4612ba7a3318e607b0b27733cc70a2e2b4099056731ecda3212d1719a6902cdd6a05bd70d389da1dd0d0b4f6c4968676fe33c6e32d791c85b16cc9f4289bdd09acadd9f902d9a91f1559bd40eb6b73da7a623048140f73454e4ccb4ad65038109f6eba9fa01b0a3fe1af228e2c4134be136db2b029879e101aa8ab264e554818450734eb5a900497d906e20d36eb3848b092c778054c5ecee767c00185ddea39160e4513be858bfe5c7c7febf97ee8e2b2fb477bfb10c11f3b756c0da1d87e3121ab4454016b36fcd8f6d2633c73d4528221974b3f21ed3d464d47bacaadbb4647320bf0bcde38b0a75b6c3aac8b72d3c2c179417d05858ae4bd72d9c16713f7c116dda3ff8164710d4d14964b33b00b268007f8cde2eacea5108fed77d7bff70273f351b4e160d28d02576dd5f3fc3ab264c5927cddb6f9a81b852d24842bd5db5c5f2d893b2f013fc75426ef2414bad1b845ba7833c88a8ce76fe2644455be2ac1b9d1e31791693fd65f1ce35fee9d17b42b444bf1277f2646a19d76952b3fa3846c3d258f9a1835a709fc21472b0f7de7a729111e850f27f88764b3ab4baaeb6cfc644b9b6a552a61a7286b5af8011ede05845cb9359232f02ad8b3605b00cbbd83069f26b610378055c004a456c7c44606125b7b076b3f955117e03eaa514da82a9650e8b9247902c5048ff776ecaaa5ea57df61d726ff1754d4b1393933599edc49617836ecf78cc7dd45750b666b73150496e3999e339243f5644d5a3e57c6cdef2ea6c967f8bc93c27aa56ba5352666ab6dbccec415f610bcc76879793935df8e594f5c6b80dc0adcea1a1d5854f447604c54dad61cf0ac91d27ef963e6889075163e89cdec0aebf32080efcc58280b705a029511f21d311c1644623f82039e096f7e1d2518928847abd479840b65cf10d15851976e47444d64c6d4425310a3b5efe9b584ce7aa01b1f79d6e3092486f91fe75288736e852c0132561a7616f21b7713ec53f0dc53432f53eb4ad778dbe14664b55553ba342eaf94e9f76320f8f658b4c5173ab938fbbfe20c9987318c1a5104efe41419926218d30b0c97a366e60f6d1240e7f601a1b119df36cda11bdf7fb531a27979c9823efd2a75c70387f0296dc7382f570fe59568afb406a48e7c13bcb40204c92cfe13b3980410b229767a5412a7db82845da135cb6d5b2f9f5b22518b2115dfb02115fa1c4c3177a55f5c194450f0f0a518df7755b0b12eb412f5f6ee2256bb95d2985bdf1257769718de9b4f4281c3eb3407f175c0b43fee6b94b00875dca0983ae763624bc4e84e9a78f778dedef5eb078ee87a34941005c15cf42ee05cafe098005b1770ccce4e59d9d3f6eab9fb2673766d9b70ac11cd6d8b9d00809e58a046d95ff62e78a8e5525af54094c907019ec661600ec2c4ce5337371a1daad0e37f3a5cdd96a3d985456a588b5c1f61f36a33c6444c3b67c445bf95e9035cd4f77191a95a7e4c20715e55dbe43196809123499148a930321e7b2cc7809cf517fc4b2b0b49e57cde4b6aae620fe8cd0b38358685ab80061c1c126a1f3a96ab34fa957236cc6c59ed962b3bb006a1c122da796bf6bcf7dbeb64f4339c63d3a437b5898be19f6ce62024cf9b9c89964569f176fb697430e553a7c0936056183223fdab2f910047ad5e64098a44a2edbfd3007b0b5e4a5d1e6ecb44f137dae2dfc45e96f03e75c900f3f84e2653efded35a3c8b27e310dc361c0740524e52a1bbecce57d59c4913313e62bbb63c95a93512bf09228918bbf921cd5c62b8914b7142d6abf8d632c3ac44ebb6936c638d56cfaa7cee463838a921398acbbcb44bce621bfd81fab34a8ec33810eeb89fbc3cc469990089d2291e1e873b31398f2799b8d62d429b998422ed634bd7a6de8e991ba8492c001fc5df8b0014fda377cbc5ac74e40d50773ab5c2b4d08dfbf3cca590a77f4db0380fe7af822207aaf99c38676327ccd9aad50b2d4db5aedf74b1cdc50c484d455429352ef0aacedcd9792dc26c66081c28ecabc445b6f1f547a24403e18b0468c8881bdc3e82f7bcce254944271c3ba06c80555c8f3d2d051fb6007507eadf8fb991f45c0c9e9ff08838a425a96d72fc20d642c2eef45b4fa43e7b380d8b6648695c0b9440cc66665435ffd3df10fd786f7638e13706f6c5651dfe5f125158ff3d1da84cad23129e11d79d0f95548318b1c794990174daa895e4b984c175136185be534ed6bff9231c215fbf6bd297e24f528cda523d62b44aec15fdfb36281d804625db07567fdb06779325987f69f16f19df737d5f65d1abadfae70a1a4daba5a87e4ea3a09751ece2ec21dd24f719b1f57e795819689c8f2e83beff593735825a1ff8e4e4df9d031dd66120dcba07e6bfbf1b0946b3585a5eb807c1632a75353e8f7b8c4f8ff0af978afe2bec80d3b94917773564d7efd92a79cad26360b599be49bc657b132b25f459d58166110fa626cf1731be419105b4bd235176d60efa939fdd8dc213c695674bca27f161da4514f646f33557aca06189698f2953674ee73be89e3fc4c014877c6bec370ca1fe446686200a94ded3382c4f4bc58cdc12c354a486463959cb91c2ea0ae965f912364c5d98acd40ee312178b479b540875fb2a0164b7134564bf7fabf59add993b08a904452152031a784cbd36e19a47d4c9371e7774d3433fecb5d072d059b01ebd3279ceeba80b356e3628874008d801ed74717c70a93411603f1faa3924414665a95c475ac42de8d616de8be5c00fb90e5ad13079e54d1c7000905b62742ed70555ec406b49cd4aa6ea68342aa7763530b180e4f790475eefe1094426b7de9e0163a4990ea3494909c6c6de6b7462d70c8f2dca3152d81c93a8c184b0c54da7fb604f835df34506731774e6b8f2361586ccc17f35c8e21795ccb68a5cd73355c98a17c9ae35ed22f6c0a36c4da30af96ce7347375144a80dd851fda4971f20e9d6d18878d74803b577af4fa8f34c05b380acbc5282eb63f9345e4dc1f9f0cf8808a204ec789ed31ac9f009790d5c9b7d744ee3b29d911014c12b53ff691fce0ae5d53dfe1c7a367e694fcd2f688d46758ec308f3f9736701dd825153df883c0dc539c9dc3dc7dc9a9a35f453c306fc57faf76451bef45889e4ab0a4a6dbd377996c7cf80e0e7192234475d93f3f813197ea2d3fb112c2e97cceef2000000000000000000000000000000000000000000000003080b131920",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 60,
+ "comment": "sample_in_ball requires 76 SHAKE bytes",
+ "msg": "9e17000000000000000000000000000000000000000000000000000000000000",
+ "sig": "c900c9555fef3710097fa1a132c5d61623c554c4c837d185b7f3d1671a8926062e094cd3680be899883c036db34e39698133f314f6148dc3aafa088c06dc01009685f1a0ddca3b0311f9f521154c8a692a165c3a488419c4745412cb06392dc6a4d12286627b6eaba2f376a3225ea85f5890df2d03ef9a565ab2f94c99c25d9239bff7ac74e94df677e7282c0dd44c06fc2f26b33cfbf8da05b50fe725ae9de58d6be87628dc41ca774c8ce106428f012f2a806631cb5c763c722e04fc7e44f86fc75b1398a54412af3730a3c60e47d611530b873feba32ba4b34081e02652bc006b9e106ad6ff4b698445e0f0514837f94e4c49f52f42b6d1b655f90254adb8456e903224fc60271f280360a632afb017b5255b6923eb8c8cbfd62d24643e8f100391fd713b27fb7e8adcef58c26ac4953c3a73bb6d12262f78228774e274283f8b810c317d9ec0eafc05c6dfcac42d6bef8f8963d17667f7029182dce0566041612a7c9e6a5a9bfd953caa1e88287a20a83985ee07eae3c5c8aa408667556f7e19d657fe11036a227342358b7e42d5015513ad8ec587a5f19b33ec2e06a146904edb381ab11b1c0b0cada40d89cbcf5d7c9f4e15d8d7cca01ead1a66281d8e5f64ddc1393c2a1270d4a97b405d4d21adb189b8eb44098902eb48b50c5f5d1496bf5d5ed0f74e58b8aceab89a7cfbfff608a8a90d2baacd652115596e72fa1740848b2cb6b5bd8ecee89aec60118f16f4706edc781c6225daa0bc8539d82addbcb8810ce2687f1a171a3aee07516cfd6697c2e5d63629bc43ea3ed4a982bd516f3f448a50dabd95ac314c92f92d468f4f063b1fff69dcbdc3a4d8d21c01deeaaef7b9be41e934a68c144643a99ccceb8e3106ca28e7b0bfb3a9c5e31e33a822573db60e4a520e8f2190361b3387ca038c0210fadfd294bf8c1b302657211a54ff4b159be164680d3eb4c9abc7d6b07c2b81a5085f4759465f95f367005fa33544d56458c2b51bbab862135745a22d994e30692ca39b8fdba968b3766bb627dd6463c54487b81a27cdf9b1daab2a83c6af174f96dc454feea043bc0cca7ff9cffbe6e1ac04ec830a0b4e5d698681c9ce860da61249f3137e7980bde1cd4eb0a545c10f725f26a9e0d4e59987c4d516c28e938290bd88ec1729a553f6c7e52ce9fcc402fffdf1aaf47def0875c8afcb8167a530a94291cf107e095f90d92998f4200fbde7e5ebdb8a3c9282f57c2efe94ccec3b5aaae61afcb7892f0b20c3878e95b53a70f21f327b70555550a4805ac6a706d4bc408f73016b1045e2fe2c2be0195af8c44855e3233f99d5aad848cca7fcc43a0b5a0b37f54fd8d9f24c365011448a85f7fba7a9a7b4aec183bb680198d1626e24948027081d8e91aa6cce10cea8a6314eec2c74787cbb627a09f4ba7a691d963c8c026a2c1abd6a14059ff57493e5bf14c18fe982f7921262c85f80ba72f4dd88eda886ac13e63a8bdd9f72b04a781ea9e4ee2f58a15acbeb2a693a8f61091c02aa0932154817aaaebdcb7471b9d0b4aee6dc34f2ca644b0114b6244579f77e096e121e7143b77443459bd5cd1ddd9623fc5784bf34267bcd78068a0b2225f21ad1935ae44bcfd1a23ab4d012c8ffc9276d4e0abb5f100b6a90ccd7ffc73a44b5169a027b2f92f7a49573c997554e94fd5a4bf54f4cc473e794b60cb3a0b0c5ccfe6263c4f91d77def6ca8c0fbf91e923234c8a2657d91f6ed08e6ee04b3b2a62f29b5f467168d580848912b5c2c05386aa52ff2999d6f7d5b142cb1bb78a70db30d4bdc850d52e0febcbe452966f5a5d6f5fbd28aa498497ab03da0b3b773bb2849a4f1d6ce50ed0d356c3142d33eda4f07907c6205b52cc66d49a5eab02d8fedd50847456702f74466bc54d9d12841e65c0594bf55539c177cae24e9572b1adb5b26310ed4ddc2a14421bcc142ffb3a43acd612df758abfd95042fccd186d3d9c5b0cee0857f37231bc9f8fd80d4db3259465ef11d0679210394713d99bda76d6ccda91d31a287ad749a344050a9ed08f01be70350cc2991dd4dccc04ff78b9c9d339d097ae2d828afb843418c82a707c0eccaf9a3b412fc68d5725a31a064112930a8c6c7350664604606d4d1f817c842ee4ff032f69ecaa0cbd49768d13d06835a07ac388da3bef18115fb096ec01d42966d84795551b9ca8e0d11734161c71713de45b545695b14cf2d883e4cd8524e9da3f26f390dff3a23b605e24e812c561af01ff087c544af8e1b4aadcb4ff5cab5ec1d064cb9d340a8b0273f178bdc8b413ac88cd274b7f0c1bb67f758682e31376632e6cc2cc4c16705eab7b1fdc1127ce985c0caca5818f661994c7a6cede3ba865488811e0cd226def609c0a857cd2fea55daf0e116d18d0d1ab393403ea1393fe4736ecd5f0d31adf6f43eb6be97cf58f8e5bf5b54cd2ac0d2a444e8f5088396fbd587048de2fd1ce1f3dc69e1601d0f723b843cce8cd9e6144562003e5bd448510a3d385aa231c12432ecfcbd58279778b93019f03e78ad39883dbc1907d939c1dbbf5f21a76ded80efce94867de48fb54e64aa0cb93b2931fcbb7cdc45bedee33e1552c624d19b116dacbf4bc874274bb242cf3ed50489d7dda672833f26d7978fc0766c44ee270dc4c70f16705ce3af7eb4d9acd2d135dbbb3cbd8ece1db7aba3e783c853f1b25a30c04fdce0d8382b60df232b3e94d976b66b356827d55046a317dd6ebe6029472dd2733d960dc4b6fd1610d4ce57e45c48ceb482b8af3ff722ec97c9e569fc066edff9be4df60f66e862c06a6e04d7401bb2b7156f8b85747e9c51510d5cc6e0ea37bbef7f8d8124fc857258e91f9e1c182eeff2c4644fa079527721e846ef62bb01ac56d61ce40a2b3ebe75c0b19e716b40a83933e9d4a8a3f31c7245a5cf049be097e7a70921b850978f9f4205d58a9e0360d8421060bf32eb6b46ab7e3378e9c28657c42b14a94e2b658d2f5d3cc3a5e13f50d929204fb4d66230d2075831646fb3775d7dd99755df394c81ef115cbac093c69c735cc07f8917732dfd564d13454f617826b23849a73191b7af7992320ed5ae41b89ec7fd62a3e42bc48dc987ac55f8e552d0e056343b80981c9c2f2fd2d05ea3c8b7be5bb115a686ea99917e8569160a0fac13b7602d46f29190c6f80f69e46c519619d8178b7f79ee1bd6f87afd5beac38a3842f734bcdf6014052ed8769af35ff8a329b50942d1c99134fc0c31bf5a57a26367c0e7d599e5385dbb328d64557d6034122fb8bee15ed62d8de367a1be38f0c62777fd1f27438fabc01b186cc4c045c4c9aca26b64fa1e41bafcf859bd650836826c45622892ff9605b61cdd8ddbf59a4a1bbaaf8f9cda01545f25957c2636668c8e9c2c88dbc129d2633b6dd8152831996bdffc019fefbbb0178a524e4b0e69e1c477bb9007d679725f1ea440fd94ddf2ede8b6f909ff6de1b45603ecf44e63a64d0149599cf49b60db5e21af00b3aa99afa349e96a57cea5763a096d97c17b7cfd6148fdc89470b1873ca1bbaf004eeb665159d57a7a0dd330e560caae5ccf348818984dd5b94ff8d78931624e771f22f0cc18fa54a5068fd9c8123218c4bbd8e8996f128ae39a10118840c63a5d8819d550aef6a11252cdaa0a39936de328c12c5fea5e7f2013b812510e8a75492b5f694f90682dd8176d4fed45b3919ae39f90c2bdc568392c139f85a84940b5e0ea2a79a7b28ac3d5a79e32e545f7b9de9d6994a6fda228030f74288e967d9b60c51fcf047af3b4a86a5163849bec0d2b63b2f89ec5c6f8784341818d2196a7e8c98881aeca2869088e7de9afed497e4535894022eb36fad950e396dd1befe453b14e968b6bd9f810393193e90774eb4131b6ae211641b15f13ed5482b5fc29e68f91046b1a895c3a9464d1e699a30abb85afbe40af3e33a1dc7e95f93294b3712ca8eac40326a32a7f6470f10ec9888708be86c90122df4e3a8da7778ca05a187539064ddf9908d7b6a82d1ff8905dccff610c9765953cd67e3fb4ccfddfe3009fb6f2674bd99228ee3613715897a35849a86bc0a38416540de2b5343c15b1d70d2a73da969ef67d25484bbdb2d9fa7031930065d4487ea212f9fcf7fe9b044d90572f98add754b8f13757651f065b43325eb0cc6a6b72381347f8d56b99876b0cbbd936bb2ac401effb14a5e828a2d74d12fa8aeeed3c64fd15868903920fbd0a4134f24f3f1cea1122c7cf9a5905b70c2162d9436c456d240d509169a67c899b0256d9304c064682a986272d12b9b4562ea4dd581e468b65653d290bbbe6fb42c79f26e2a12792ba8c18bf59f6fab262c2fdcc5e1679b45e8e5e400683b8bce46d4aa7401daa837fbc0f2834d84225fd82f3d35e10f505ddc776a960e3387af22681d85e6a5f3a0318fb133ffddd7603183dbfa4d36fd66e8bb2adbbbd72ccc3f003b0af15f1a03893439b3953670c1a5a9a67aaec332db413c55896f9ad05691ac236ad7a01338152972add9c221a681b7350bb00d365b5b88d04923d118d547ba7bfc74d80e4a54b3b23a9b09c79e9b368ef10d9e7baca7249beeaf1df2a3de73d79a670ebb4d6d708397efff2f303d44464c920631a6bbbec2dadf1321303845585da3b5ea063d436869aaf3fb00000000000000000000000000000006070e162028",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 61,
+ "comment": "z_max below the limit",
+ "msg": "8700000000000000000000000000000000000000000000000000000000000000",
+ "sig": "0d671077c3e64cd312a5554e0d6728bb10120a34b3de9a7d85ce41ea84fc1e02695340f707cbdb4dcfb3d6f590978c29426c111719a47a90d0223edb934a716d7dea3804153a75c60d56d0bd4334e2d7ec9bb9db4393eaa9a98b1bc37d9b90df162945841c4815b17fe28090b7305d2e61c3ca0d6f2d7a6e39c60378f043494d541e7f47d70a6813daee881ddc46e8244df4732c82b2d32ce01c0edb0a19a31e63516f0da13228ab4e2aefd5b9d069329af236a971cbf554713cc6484ed052e7826388f5f0a1fd8b2bd1b92421edef80478f457c899edbd251d5efbb77eaa4549f2d923d7fa5ddfc3b559af16a8f690223180ad08fef97e992d5d0e44af54714484359ce1a891bdb019de9ef87b1cc626d0c9a09a2949f15095850e997d42e45774e5ba9bc56bd6e6d19be2ca567b534c155905deec8dba9423469fd25cc807f079dc7bf2be38a350904c4ee3f4d271c90e323fde28b66f91dd47ca7aa74cc3faa9a5f1d314189985b135aa7e6aae41d23a162a8af8e51709b54265b51d9527fcea0c86226cfae391a4b0e18634deae056e8e34ad7902f48b099242e4663e2dbccb9c145dfe0d780590451ee139195ee493c7104792b63260291da3957f1fbfd2e8af9774c22bf224d547b1565759e2437fe48f5a976c2f273316acc789e3ad247266048d19172a16972599f50d4021afbbdc6e4b6f03ab79e5fd4e550f8419b9b2a8ce174c521d48959f83ccb15d8dd55a64b12d5c8d6037382c3a232c89a8b56318f1553c9844b81905d1e00c46733f24a6d5f88b67c0245e206797c1bebd61576b20b179c2ee7092a978a710c74fa32fd648ffb7ddde487309f14866d3466922dbdd6228316519cf1338a0e544de4266fd4d9507216913dd554c4603e74d2b5f8e4f2114059f24bdd3ca44a88d88007fc45d571767616aa45bafd6ef4977bf8459099ad4434b8a214207289bbf59438d0760bc46d555acbf6595a5e5e9ebeb9e175d0b6c3e4b37a99d1e5ab0c07cdfe8145344c9e44fa1ca5d77f28db5246953e4542eaa186ceb249ff12c15f6e59b1b22ad003c974ca59c29e87034d5fce8dd5e03a55bc2c3dc22f3298ba4a0e2c3f85857fbf1d209af66dfa242ba7713b7f0d5b4fcaa73c6e6af62d3676c77474d88c451e19520f0b6783052e70e1f51b5a140b1b1584fac8ebbdb76d0bfe41712a982b82836c40ec4396ec084cbe92a0e925e798a4dc2e91fb6b07bde510e2f4b12731c4a6335e2762b8d65eb1a2ecf0d2a52698794ac293cf4a9c936d6eb21167d923daa11d3c112e3670fcf486bd40baaf37aff16314dc364ff74172f9deb94a70f8ab0ace974d6b22a15415476beb193199e8657ca7e4259e883c8736a975f9de2f7d3a2ad67dfa1169b4b2d83fc2c64799aa36797afb106970ddb63867eb8febcaf43efd467a28212f0f3208a2e9bf8f62dcb849091fc98d634796515e1db40f58d0a30d74a5d1056dd735d30aeb07f63c44614e131a6f0649dd2645560ff7ecdfbfa2700282d3d297054d3ea93657e5a39bbb7f2f1a563fb3f6792482d6afff95b6edf1c38e207d11e453b67996c378c22b8627bf04143d60e7858c07766e976b5e786441dc96ca44c584a32d00e64bc109fe2e0a59d039d73ee82eef1a50d6640c7dbaa4bcf7f232221eaf31c51de48761bc66722ff46a34ab567d562e60322ca9e501f8f4a7dc3eff3d264d59647c0ec9854d0c0c9d8e2d063766870976b4be7a52018cf109113a2b8b295f40a0604d0b31f0ba0cb395396f9ceb29c470d24f6e6d3d3dbc33ee78c2c8f3c47dbf2730bc131c9e1c2f9937dd796f6792b1d5998970b14876080c8e7f9035d63e246ce3e67f60d66e662d3f76e8195dd0d2c219e7115d79283645d0b9a1cf59d1e7e5a5e4163e11d755a2ba7975b983f40d59fba6956c73a79b64fd9f7c975cff311b0e2b8290f51ae2d086c782895878e68dff23bed99e4dbde108b46e5d0b6de55045dc34090282a5cf3e3df31a4e9ad37dce65585a6c72f3ba0e3ee15d8f68cea8356713015a001fef56079a8b4b934765ade73bed70aedb27a08c6f9dd0bef90fa4c7d119810b3e07dac414444df971824104bf43786f9337628322238e8886cf8ee02ec38b2c4ae42edfb0e95d3d354c82da8eadf476d145adf89917f619d32f126033e816f2b53fe8116641998305f48e86062d26cd9720722ab85aea392c804a3e136a00513be362e433eb1a8e9a5904ab3131665941b175c135031d7878c66dac7a010edb12c45e8cbce97837f122b2beb2159052313fe3f51148198b6d3c97851ea3ea26b87e92b7a16abf2c2c8c3a9717bca590ff3cc6d062055f14551e03895c64500eeb25f87e219832cf40f3cefda3d59bed69a39e5b46cf8f3f8a6c300122894954b95b3b8d995504ee81646da4301b6914066b1274f96b21386adae3b2ea22122315c59be277fd309e81995a84881954164ae1a59addb58c9edaadce1793320310e3dc955267341088e398c2d8397bf839833cafcaa94582e152b8ddcbf2c4bd45d17519614bd6de3a08a32e83492c2ae1285d26f667b41deefb6d401e29cb671281e2e06e79cc1ebf470e444da552bf0052db7d087907a06a50b633a6d0461f0ddec6ea2c71df74d85e3a920a77cb43c02f3126880febd1d20794315a4448177a4d2ffac04ab3aa0980a7c413c7baa6f8b097ac662bc104a4fb928e72602adbc4370795434ddf9f48f96a9c6a9227781069e209b826ded8c5239d0609f24b71d31f564dedc6edee96ef862e2a9fd559702a49bc61173023edc0ba2742f1b2278c85887953941d5a58720a2e2120d49bc3e7d6a7f2f00c6a039e137c77db5f7a7c3d43ad2eb0cd564af81a7584ceafd603e0a83823de3a12df635b795dee53cd93145df3bb8497da2b683e7523d859319dd4ff19f2cb01763e0c41574d584f4c5619f52b4b4cc2f2c74925043eea26754d5db6ca5c8b639e79ea8a09c39d1d4c436c0ec849450c1b66e450b3704fb8c9587297064fda4cda8d6be6e10c9a6bd089bbebf8decb1244fad182e6cab87fe3f3edff5c13efab840183db736e701e51f560c1e14827b42d738d37d68ffeca42dcd5466d50841dfdfc6aca437bcdc24884d471bbf20a6921a743c536bf01b2b385fed9a3f3626798cb577bdda634f8c158833e52d121b343dccbc31d3044092ca4cad39e913dfd32bcfee874afd9a02faf07ba7108c05c4beb78c050d5539eebc699fda08b360ea334814caf4fdced62f87c47d36c1fff5d8865992101069fb6679d3f3ac87b7e6e2587214105dc25f76c4a6779a1a9e6022ed9ad59ba3a7b4bcbbd0d63d2bc0674c5fe77fd4fb6a0ebf65b5a73bb87cd5b36dfb71e7a54ce2bf8d9b6a86057536c4a7f0a7c5820828a0280adbf0cfdded491fddcc8804eaf9fc5230d59906dc7a4ce514117f1a9bd0499dc065ac404512b0315a6ef17794bf296d9d371115f60a94015da2f50cb9ce4123b1ec8c0c94213ad8b7018dfa325e182a68602417c95eaf70789d521c9d3124621b36cb022e61f211b29baee96bc013270948a601fa1d3fc66eda9be473b3ec13fd0bcd59b06736e8296053a4758c7e7e1afc5111e1d43dd199aa708d95e548ff21c2d3e4328d43c9637baedb275fd9cda7d1225ef0d40864e6771e53bf5fa836121b4b6e9db6e1021d7bd93e5beef63af89b889ea83429abcae0bd9e1a079bc35e71ca54152c281e1a27921ba4e6b8f7594df32676d4762b82335f1097a92f49a86e5641bf1d77175a9476cd42f90aab18671bcd7c35dda9a1cb5da2f66bb80a5187abf85afb1557e0ca6052c63b6bf9627604823c3b6150eebf657089451bd04981691098092dea8cd5a26a693f0b38f42cdf42f831735869a15dbb3d0c322d85b0ba40017c4cd72e1a60d972a0d8f254e48fa6fc702a555f0f76598d1de2975eff26371fe13a6ee48da8252053ce0396f352191b416ee2f94dc847196def54f311f66896893495f0a013c04c442806c3d4e1f6320039db9bc1d94a51515344249b480087c7e3e937ab3124254c7824a99ca6b03f165d0fbd026a641ecf9e538f3aacf2dc6cfcec150aa7bb45acd5dd9f20e0a1d6ac2a2254a365130fb48f69fec83699413f5ee3e88b678c2b2d1dd316e5f8fdfd5a344c4241719f55e17f2ce1a4658067065efc4a4f970db9f1a52cb0ce7eea901c451ba95d6f2cad66610c33c9e1d63af3310db7e7cb85e3523c79dab34eab84296d7e2f610d23c4c9ace9387dd0d77ac3d37f1a35c78c7c31a7e55a9a4a95139fee0339c2647a56b32864060c43b9aa9b62888f4fbe09053dd5e5d9e71d311911f3ec864bab3f3ffae8c8b790cce1d8d45c3ed020ff01a827e851aa090338602920013e0ce3453104a8abb8e69717b2f7a9c1469bf0c23b79bf38c73231e7eb5537fdb2c677bcf1ccac3c37310738246641f4647721e7a3e165a187ac1400a0ee967ec60dad51eec6da1b858985345da8715284fdd876292493b21208d3d305ab93207c67180d217c22102011f824c7b15c92f2f32d6a39f9d9a17fe2874c84fc4456d39490dad28388e4ef46c602db21ed43054beed2f8ba71fbbc9d03c6dbdeb11327883a7be0c0e1c315d747c7d96a2a5c3d7d8000000000000000000000000000000000000000004070b0f1523",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "BoundaryCondition"
+ ]
+ },
+ {
+ "tcId": 62,
+ "comment": "z_max above the limit",
+ "msg": "6e01000000000000000000000000000000000000000000000000000000000000",
+ "sig": "289ccd0e0e58656b8d32556fae8b0a317eefaff794b013ad8a43234658706a2db12585faa83808a733a3a88655a5d7e0201b8bfbbdd3bb545dc306806a26939aa9c93ba58f46ed8d9c37a9f6e0e0afa09f6c3b3f3abeeea3c613d122700fc91e88ffddd965df08430eb37fa28bca6db2886601e075f77bfecc67e415d1ba783a01c4776e9b96fc26a215084828b0921c90c59ef766bebf0210bacb23b7f26b8e572bae202b9131e725e367563c1b36218d63f8a2988dacbc73f4a46f313b97f660057bab41c1ddb99df76df8b22b16754c333ec2f141302bbd2a1e967c50882699860243af42b6ad5f368d245823a71c02a338ce037e337d4d8c5e2c2c7d54436ef786878e1e25304a27058d89e7212f688c50cb701395a5c2f0cb3310c9dd48777f80edb0d2a99a91f0a444296c1b4976b6161a9a43e5ab551b135e0dc66be2f06aafd8c50c109d413215ab4b39d3063e061cbcf57d2af9ff36f89f0c80d483af483673595824ed4c4c71a02ab8c4135a6791889b8e43958a5b509332e84b1380991d79c6397aae3cb3dc522a7da89e925b189a840c2ca9cec4cdfd8bd3831486d2c0d15b1b9bd44684a8aee873806610e9ae0fab2c61e1c0366f981d5a42bbe1d9cd179883f249a7a155b80bdeaa1cd017e9d3e0080ad03a93f09693da8773b1256b22c20a6531a9957ccff0bb44cf0ac3e5b0438949a589755d516fb2b596336c153dcbd5565b6786cbee057a41c10fb762c280e850accdf476392b50cbeb2d8e7f6a6856887e4a2098cd8f4264cdf39972add334a5aab45002058f19c6506069d7acecc184f245a25a1d242cdc41d52f2b3cfe23ba797c4bf87a33cb593963179e5fb08ac5edc5d4521af466cc3c28e6a11ab2f5f8d06d668fed5b09a7f3f6686dca450467c8ce0b8e81ef605ade33349dd1582adcefec138f004df5057b2a54173fc587ebc3de699506d19e61380291fd59e50a8620f1c9c2424f80a48cb1c342534f26f50e52ca4056c315348dadd204467bbb485708007cc2d8477c518047c42a5c7bcf83e763297a2e4e0fbf547b4e3e577c2bca76762b35d3b849966c9a0e9d5cf570bedc0ff1b779148fa125566b67d14b62421761abb1eb04a9fef43c08d9dc793585fd30330d3cb1b4651ede3121e836cf427dc6f93b4dbcd1d3d0b096be780cf6318aa31d23f6353a86da38b34265b277b7710a025e0e91b7133d08f5ded6d74efc88a4f40bd256a6c6f86d4b869e27953a6c1a40d19f76311b48e3be34973e65f17afe1c408062da2e2a8c474c6a3cf32adec928c4adfd9611671f8b04538f7605ce6afe0d7836ecb06913555b730337bb19a222d3a7be5ce8ac44db76a79120ffc7dfa81c07590955587e61828f782e176003dbc8fcc38fffaee982f61e3bb503ffcc44806a23d3e480b4fc5d17c630b2b5855d67e884d6a2ace9e0ce81a7a0d127dfba247bf7b90634f03049d7aebc1419eb4e7b2ba3303dfd3a28fe5d42a73a7e190df163cd241bca717679c819a5bfeb11ff46e06c46c4c9fee4005a466a9e8660e01d050fe1c103d73bf6927e0ebe4c14b314b3d9300362b67ba5f0dc334a334eef48fc248a7604269dbd9dbc0a380af5ef51a91a48689d190d152213a818df7965e4ffb87b3bb7b65fd2ddd35e947789710c898e95b431c0765cff907b61a799d65e2cc99c5696777e703d3d6459a71901c0080c57c636d21fb0c9d1846e356e0e3cc7a6518ac177a61cac9b6ffa8b72cc77bbb86165303813c21c750f2b930c240e4e1a3a5b1801d1c8f4d8e4ed2e205e9b99fea36b0a26e015ebf7dacb547c17a847d495d5d35828683f1432cbbac95d3b5c77b151bddec5fdac911de1f096cde0baec71e5bafd5fa93a4a42185a4f324ad14a7165a38d659155c4afc72e1591689da8f152d2c7836f3ded5e31931b3a31eaeb83362f2f48e04d1951c06916f557289b01ce62592bb97122c110d9b608a181141b78e5ac37171f424041ac9d7c56e6d85fc635279d81bcd9ca023859bd152074b07337cafb0756a2532d2c023e45cb48fafa19030b0b0d79aef3f4576e35ff822e7cd014fb9d298dfa6a7e8dfd4ce2c52ccb88026a620e985a170535425c01695f3b71bc67a9c3bfde4b7035498378c9fae3921a087148cc61ca84953dc6e86e07f6056d9d16f2b4220fbb1b905a1a89ca8325e3d7afa5c18533bd478f47aa69c7d0d1d1f75cbc093cba23c439aacd1911b152107155462ec9ccc893448620ff2d24ac6d4c0d3694de957c53fd21d8f7b83e7cc2ded752b61ddeb1a222fd6b9576e6704d0d1adacfc963cfb5844df234d7eb97754a1c559fe81b4e64907166ccae5f581a4f8b90bc63e478b02a7d6194e3607a1dbce74fe2aec7eb63ecf484ba30399fe1315e59dc2c97f9f6cd188164cae2623da7c83bf96031bf14812612d8bc940cfdce410c7cd5f4668764051b82327822fca43cd49f35db19e1d79765ca4b662c8bf1bbeb180776867021054c3461619bc477c70e6fb36b80feb206a003ed12c3984ecc328d4d476b66a402de1a711d9895700897679a2c6bd8481794ae3da3bf011ba67873757eff29c135085533139b01f3a83a5504bacfe73cdb48acfb08357397c7d612ba4811fbbe51c9a18d50cfc530616622ca8e2f06801473538286ebc46a04c877b72eb8655b4b6c5cc9bac27bf6490c5f593dd020c5d30bb462023381cf1fac19d71e9701c49d539244e5a9922807ebcb11224cf0ebaae37262184c61774df08726981ca49531e417c90e51df7965d0f8508e525bf9cf4c6027d74a11f8141b777da862e50af076572f4c78026c7fd6b565624fe0e2fcf3111b3373f854bad57006f276588c9ad57bda5cb5a0e02e659cd0dbcfdc174a1639e6c9046516d916534cbe5aacc933ac4abe52295c8533a4a1051b5cb4dee48055e7e1d1bcf2154e1ac81a54f1f54fed9b920ffbc2accc896ba0ddeac418a71576aeb9abc0ab3a0bc15e57787ce0fcbc868ff2545a83e27ae616f2fb5939de3b71bc9ec5a2f064a736ea3e4afc1c8b5996f0ded8502c5a16317daeee9ce8320ca4346b5434769ad9b8784898599508e173d7f14d1232a2f84ddb1fcfd8de75bb0d59f8507214df21e89762bebfc4030bf0c9239cd7b6bdc4085f1a71e732a01c0e2024d13e64eb0b582bbe36a214454bbb51eea590ece8d1f81c95891ba8f203ea52c068bda155ea6f992ff1eb276a11c584b5394e562bf6341829fef1936397aefe78264fa7b9b3055c3140cb4635f20b3e4dc809e4e48ab4520253330a35360ed41ea3eecc0ed7c4f77c6d86b507934c8b800a0ef652962d6d4a5d810ed17643e950e3025cff4bdd524c8dc19b9a56e3c79c6d5e106e4e199968660588a063bd3ee369ca6f8c0e7f2034caee4ae4824ec663c4fb485c81df7ea86d7226be80d5e63b3782076a9bcd0f253c3564032f7c82c22050607ec01831f2d5a78f197681365bdedbeb6076037a88aac92733087a110dea7d6103ffe6b8596d70032b903d1e619494797d6e56e133538f80a91d305b07ff4ff718ac8fe0452bb3314f89555d81526a02cf189326861c4248a40866faeabe04cc1a7c88196c6d4fb3fe2af385212a3cff398caf2be65e7576befab7624f1e9f71c285899207c2efd2bfce2ae6ab9fcc6e46c42b028c857a86dcc944739ac4fcdba51b16dea3672149f166ec8e5e6913bc355208e3a73b89480e83890f0e4331aab624ddff3a103fbc4990de6ef8a2a48eeae86d7c6fcb136aaa52860e41a135a50395e12511635dd7dba11281c410173ab8df4408c9a2b51b9c1e0ad9655062957ef4d8f0572afeb829ec443825c082d67866618946f2962f6541c6b5ed1528cb410521e493680e9d937a50ecc0c50784233358a534e8bdb0c922e6a89b179d2299c47c26fd9f3c783514ea19a87b14694211e55ee9e4714bf5808c4da9a9605b12c53148e52014b5983e03eb47755ad4770bd54dd1b071c9ed0c4cf24103973b815d267f3512275e066f39c2c219c475018e0191c5d18457a2f4f224fad67deb3333620fcf48f4b4df62f358960b56387a501e69ace7d6b438af7550d6831d58f0f642630d3ad590c9a588e25610a963ac2577f67ede49878d87a30e69da83c6ee600022f87072b9618137c029ec6292d03b21f54ceac63f740c5a5b938b5c28cbe6720d55bbc43fd9cf915bc199f32911dfcc8642186b06988443e1c557a4713570505ff98b0c516db185da76eafa1aef72732816ff31f1a829798d1a5df2218649013a1463984e585952ef618e31ca2208b162687d7cd723e0b933fa373e3d795355ce1bdf5cbc74e8b2a43b72ea36dfff3cc7e21a4e117829f2f547fa475cd776600967b0c0db0bda413cb905c86eeee28bbb4f1f1dd29bb283a43cd04d2661f069077989a1eb7fbf2c709b304cd9fc3277f86d85b2012270e6fb2d083a814388622548c999938f1d52f3f9f532a9632787bcf8a63c6ddd5e5cef2d19e635579273ecb0b43670f12bf0e93793ff345afc2c49bfced401152f334188310c4fa83f7d3f67b6008e98d1ef9dc383541b466176bc166a0a1928b99443b94c585a5c71727b8096afb4b6dffd293093c8ca0e1028667797cdd4f80a154a5d94b2f662748bacf306345265c2db0000000000000000000e131c23282e",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "BoundaryCondition"
+ ]
+ },
+ {
+ "tcId": 63,
+ "comment": "r0_max below the limit",
+ "msg": "3c00000000000000000000000000000000000000000000000000000000000000",
+ "sig": "8c5c7a82862de1800a34b8201c791d6c7288225427f7deb02f52748a35a8ac269104927b4913e528717ea107ef8605f9b7ae265f798846a3abf6bbe7bfe0a4d6bef6a1f6b49d40b972a5a1c28d19db196f709b4d962fdc646a7988f80d5af74b29adf34c7a1aac065f639925423d37bdaec428de53efce1db750fc2686af90ccc9e2865497b7cf736829981afc749e85e7e9b5044a92b9ada3740e3fb39251c5bc400379c4ded2615bc3deaafc54e34129b5cd1f4e9612964d353546ee5dcdfba712d985cffec78e74bb2e6c12ab45233ab42f19aa095ea0082063fd0fc8e1023ba1bba2b4816f011c644be94382af44cb7f40c27236ea1e1e6f49ded751927fea168d5a5b2f238360835adabeb4d1b1ce12ccc6c1b8e1e855cfe323d89c34a1a683360ce9189db6a9a93bfa5f70b7238d7f796757d547c31f786c9bf1c91546b325a05034cccd586a6f37879fafc6973fb02a540cf84d1a4f4c3f3ccaea925567b9571bdc116cbb14c884fbe35974980121f7d1e6b0413fc3cdc42dd4fdfa4c33d2eb774b3b188c3a2f2ef07f36489e80027bf5a9e3b607ca45839bbddd9370c9dc98efabe00635622562ce4a12c7c6e2271876f880b8d8a9a63e5c10f349490f982e5215dd94bbb74bca994aae7143c22285c5a15ab950ded53059821a526f6f10fa3feaac97c8b83453b20f314e8cc509fde7f5daba0b2cf4676a9286e1d9ff51f7674decfe2ea54c11a9562b34bc15577cd591088e5abb0e49c152135ab4d496d8f7abbbedc1f332a06d7ba9d9a65ba61b1bf3bf67f9a191c96be2b51d790f8dfa988d9e69a5ff9484967d5fd33b0d7e004a73839a9603dfe2bd2d1f838fea9aa15c9bb2c0f2dec02d17a3041d6e4291bd7d4c00ace00ee1f4a6dbc5e4f76fe39fb4ed231b5df55f7a42b9366396816b5c372975d5fba004a20a7649341859903760ce8fa444945136f9ad67017cc70d3f6c4d8ef7459f1a544dd93d135b888ac4b0f6cee4daf45a436e967f76ec477c8efecad626da1070ff4ab94dda6bf04d19a5391333a2ec6033e780e6b3c9575e9281423489db02201ad6867b3e36e1f462e6b196a2410206a71073f19d707ac63320bade5c6c42e2998c55da602098695db63144da3f9a9f38b53022df84ddf8777a19d678659e44e35f3d8e069adeabe7b79856f8796453f3a413b4ac93d87ddc119d82ff235cad30c561138fda8b0310cefdce08d4fc7794e964df23d5f153a711fb73f694ddbba93cc63902fde5488d318f5359b77ba076337ca43ce59c4a9012ef52d86c34411dbaeb3fb2edb4a70199885d9e04e019c4a406817b96d478acc29f5db9b4cce0da8474bddd09619198d97b3609ac1a3161e75ee485cb6830c307436ee1c48d80290cabe41f3d4b881c4af4b2c2d82f4b6adc9fe6a1532e39b96350f7fe82a23bbd1d9516e1d25f089cc085c5c72b880f0306f73b5ac1fc805b0dc5e80506e06d965f55485fa61fe6e9ef0338e9de6bba5bacc703eee361de69b3264c280d75ed858f736ce9815344c859ec67a95048cb5dc03e328e9d10ebc6d3dffce0765c3fdcf5861c5de3aa7a607bf78334e8d7ba00daaa7ade8f79060b1e57b9d46bd6f448509934debd4e23eae219e04e828d316b77ef5f15041f3945b1a98374d1c47fdfec4e4714cdd7d2391df6670b164805b0a95b2f31d937446a058a8f3a8e968d0da62b8299405fada9e67e001b6e30cc4687120fa759cbb390237cd7acefb0e474dd95d9d790423bb19c390f233e3f8b7739342fb2adfd623d4c780a5d1e702b8efe91e0be39a61a8a93e48a0d730814954a41d472e6395999c828a98d5d9bef23ee7dfbec1c27a79cc8edd035adc5763eae1ede0bf16235b8da7616c4882a6724bfe2f7745dd992accbfe90d1af3e8ce26a9a63701089151f4ca826e59bbcdf40935e6d3b55329d757dd3461ea78f6bb109389b92e41c5d18f811e783779f1dc3a14f0f3e30a15bd7b377c1bcccf621127865f66f64231a4c77a913d2f9f5319028a1d585ed38835df077e0fd0f6101a5b110650992f029bf70b151189acefa1b4584f5d56676c401804a6dcaf7b18d43078089d580eb6632c4757ab77c6c5fe3b28e3a1dd0aff4d00584235b2515971b9644d100f488ec980e1f86188526a37d6343db87f23ec9424c900404a0d4b133df270cccf54338ef5d6e0bd7a2359a0a892829ec8a1bd8f8529a55ceddd1f343ed20e08a0a0b68e3df9b22e1201b1ddd8184e7168e12196f84885d317fa0102753e6dee29a5203d2206fd6eb094b60a58fb3b0a5a59b4cc109e948823781ec9bb364ddbaafb1d553dd4933191b0ad56b7bf3398a4b1269aa329e47646f4e9d97e3aa2fe320efea245db47b63d0c36266c3f7d1c2b51271b06dd995e7bf6abfe861acdaa3534e9c2fc090988276257228c7338209f2cbd77f85b8182150d3287bed5934dec2a6c1d7b2b670716cb35299234fd94070a394868d95c5aa4d92ef9ec6fd05e80747d7d69522cf5d5e4d0dfae512f25d51c0d5a61bb43fcf060eaac8847fc6388377b1f260171ebdc24373a2a177b568f08779ebff6204f2cea49afcd8bb298ceb4f751d69e9bf840b567a1614871d72f5decdc8dc5808c2bdc41c5793e1811b99d3daa9bc4827c69d1dcc4cb55bc8c6366764b96a3114c093892c9e2f1a736f4ed3ef2024360253612747ed4cd3c690b98f65faa23979cb9a65e8122dd30a9c1f2cc3ac1d77783a3014ee64690a62567769cc43252ff23563c3eb4803678edd7a83701412809d343aa4ab428b6a1132b1d559f84063911832be2dfacab5836148ad7ff94ca08afff9835e69f216209aad727ae19ba24b9520bd59ec6b515c328e512e210d6edc9d8d78729bfeae0743e333d731a2b981bf5408239446ba16f37300ebe23bddf746090e4ab57290d2d1eaf1285eb62b968bdec6f5b8bdda4edfbe55cd1d974e2924289366c1f2cc38eadf153cc1666dda976d0fac32285962fb4e5ca87171062aa2a98fd7b447b7271b93abdd28d88020230f973ed7aace2302a321312233927fbcd390ac217a8252a338ffabea7b94051cb03255d04d538e5998c72027251e7f36ade0058eee853461e8e36824055a63d5ddebf3cead8033dd5c8ccea4783675d8deba1cee201dd2154636baaed297786d9b1299b43f058e5649fb01bde625c415656c30bc7c2213d82e83754d43d77b5af9cd2d04642ded3a25cc8da578ccf437aaddb39bf0db269e2e2fbe90723f18b56fc97325d57bb6b8155241baa4a784423fcb50ac5092070a76ef4895209a94f33a4072af0c3c458077be24ddc153449883b3bd6ed3da6e6be85442be7bfd96c0700c46dd79118f67f30d6eeb519323d3057da380fc0cebd9ac6d0299c9ec26f32c04bd8752f710dcdaf2f4ab235f196ad0e54c2f05e825b7d6e1634f3dae1895e4b55fada1eeccf0203d23042111c4043739cbb1b823f6cb7e5ebfa4a8359eb7511dc64ac0efb6a0c6231418e5432123f6a25f4a9f35dadfbdc10f502620e6d76ef9a72f893d76ea7875d909efff9be03400aa8a1e00db7c07cd4fbc844c8b8e86345d49e6e916066d07e06edd980176d4af31d6ab20115b3f20e32f17bc565b2f95f3709d5837fb1f7ec5a0dbc12a8f7d3eb4e7f9f9b6744e4864c343147414b4c104116e63ccb61b5af3f7c5db8b5c05b475cc7f39b888b57298051d029ce9017bde03041abf0c91f32f28a834fa95d60cec9a585c74921f60eba40f13b02de973d9f5499c9b386a5348414d333adce8bf4717d5f31faa4b3e96e91dccf7512980b8cce54ea4be82ad1dbb8373355f45ed6861b08368f9b86f86c35ddee6daa1a336d1c4d2d2658a15bfc76fb462dc0b7c36e97eb16e5eb0773e95581199ed2f7c4c219cc4095d2f8e6ca444d6d4c0754bd39b5494af3d2a01db862cacb1cd2225af884a43e5fa4fe63e5854d3d32f47a8e7af2991d26fff530fe8d57d35ea76a9431a9335fa1f057232f69ad89efdced883e6f8cc23baa485642272c515ddfe4524b3a997e173a22eeb008ba9c16adfa3830980945c758fe92eca8a96b32b274825e2688c11883d138e5d695b10f58f2e2c6931764c91edcdc40d56c72756c1e20494ab26986ebcdb2309060f4eafede1eeababa4d5da8418397a25309d19937dff876ccbe7eff4b58b87a44cddc3c8b1c4f066746036452caa32980e224b53eff0379700a30599aa2372ac4dc081020cb364546484dcbaeb8c3adb6d3ae4a9817dc2d987a690c8eae1863d38d3458f817618edf6416a71b6c30c928d5a6da732c6dffe56d7105141d5941e02bcdd55689892f0e77b9623fb065c17edd799a186f80b686ae5bec88e4f16b05923c1515447ad9c82adca69800a6b372e406b6bf5b5282480823183811a512ef5dfc0b21eb77048091ef023ae281dacdc1ba7d1ed2d9df6811dd5d1c9a1d4f1781b74ff1828a6d410eac1b54a5c251c055ec7f84cf22e3e96cdaefb8a9fb9c6ec823ccf141d2f6dbd1f589c0ec4102f6e91b3f0610cbed643c68824e7159920f52098ae33b5798ab95521f869f2b958691c4a0926ada90bf7c6678f23314479df021214537aa6aab7bb183154b7d8ddfc1431616793bdd541b8d1e1f10124263435606688f200000000000000000000000000050e151c212a",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "BoundaryCondition"
+ ]
+ },
+ {
+ "tcId": 64,
+ "comment": "r0_max above the limit",
+ "msg": "6400000000000000000000000000000000000000000000000000000000000000",
+ "sig": "44f2fae55e75d4a14261c55d3b8f9d7ce296180728713a3374dc857bae406918542bfc12db9b25fd3d1928c9927b72be345024145c41d3689654b26e1d2d6364395c150047eb8b6ce89daaedb70d8095263514fa5317af3f6c557a0b91bad5e2fb6202f90183d2e1d545f5a09fd2f5cd5550e349e82435d55deec6424abde2e6cda6f794738180260c45999b51f9aa2cab98694b8d0af27441fc4b57289e7ea07b010c53e9a755ccb9016765990942a3d389500cacbec33eed059d412435ddbf46198e3c747b3f41f96dcc879ed3056b20da470062c0e1724112f48aadcbb6ca84e66c4af1418c66ee6115fe736305ac9f177f2fc8eac53d494d24164760e827a45ea20deae2034dfef4f8b552a0b4167e1f6272918221d4610d1278aa7040079672d2d191bbb19b252f84f0cdd46150d7be832db3fc8018aed6087b5e718bbb7b3386266d122ed0f27bc5b746651316620ccae5543f993fd5e1cc62990714e585878fbf20c81bb45edd5cba6de67010ece4135117baac8522ef59ddeac03ddc9abd91b47cefa3beac2496de163c00716956589bf84ff85e0732ed2073d97c5c34a0878c3d329e99a5a5a1be3781fff22646f1bb83ebc311889a56d6def19b8a86fb8553b36a62e13cbba15a507750795119ee309577fa7ec15a69be34a15135095730ae2ffdd72a1cf6a9bb61b221531cbfa0495200ed9f471ed1bcef9cb8bc5117c6d6806bf28dbeaf52bf2a9329119c5c896449c233c4a314076b00616773b87d9e8aa69c135a7d24c51c2acbc6e58df8bb7b6fca5fb14b13c9d0b33acd8e8b439a8e5d5bc31cb5bdb51712d148f935b8728ff46112ba49ea5af30150fa80a8249a2ccfc99f8b7c897d83c428fb15e6cc6e640a697d8fc6672098aec99630250a7b82075296afc00a15507605a5dc0f2b1a0375b263c53c403883f42a0304b99adaf834b1f2599e22125881d87047b8acce7b5728158d178649cd7a16d912177623c637500dc5b4bd13bcda0824fe377086862bae9a41c180ac807896c1371a78326cdfba763946ba608400d930146bf86efa861be282f44bce6e032bf7d98408c3b4a1e96704034ffba07c182fabdf4014ef2ee8ff8ef7e837ad75dc3aafb066d07297a290af9573be900b68db9b6c2746dc0d2b1e5d11f0540d170571ed530caf1033e8a32beffe622e3d082b3bc081b3c30d8e1dd697e9a18432f2514df6f90b9b42cc2c1d321f6f9bfe095ea7229c4d1825c8db8e869b56a40cfcb924304f8eeebde54d615521ebc9753c95e9831556c854fa163990d5015e0370f5d3e5b4ae7c4404c18ee125ea2fda5ac43127ad07567c44c806ee61a79353152c5f46bd98bd2010a53acdc66df92ee6fc0f93e678bf44d5d3c8e9adc305bede02008bde91dcec639554a4dbc4f6625571cb5ec821f2848ed33fceff30d8728880956a1581b5277fd51a61d4e13f7871198b78ab3107701163da8a30b379a05718aa79bb01b528c187fa91466588961f2e58db24a2afbf0226359a4e6c3da0fc8cca4be25f0abae106eaf8e1de7ce9f1b7d24ef25bd41aa98a99610b016f062d89f678142b9c27635cb71e9dad2ec332350f76a2b507c8fed9a17e60e19de2c1875f2b3f4134b903aab8819af224fb7eada88c67875040a07699d95756ba929680191ec8ec3efafc6fedd60ccc1e1300698bf56afaa31c89d16341f3673fe07880e7009e1f5173cf79cf0364f0833a179b5886226bf8f3a6397d8b499e9c020ccfe075fee18769fe9f7765ebb6ee630df990c579580f3910e704c73ad61512a9d47507e8bc61b9a61ac006b751882b20855e6b6ec7c05e303ae533623bc0a8d30f795ae93f057c7e079688b792456deb50dc7ba9da0e141cfc76ad0a902bdb1d032d06fa47a817d43ee784cf0ca4b516806e7631e40bf0671b3bdbcce7e2ed7ecfd994e190c9e500356d60e1c73850cf5b6bcaff9746b3025815bcafae19f20468591b5114d465a47e7e439ec0741eaf533d5ab5c57df0cf745931ca6a4051bba72dccd4160bed42fae52ba39d7ee2d3e2cd20fd299707e2a6228f94a5d32224405a1dbc5f5f0d269a0880cae9f0b7d5c0ddcc01e568a03208dafc9f54e715520ac51eef04d8c4b6fd5ed23dbdc9259029129b1b5707bb197920ce1265bacf2a7a7f81b77a017976c3a51b169eaf6f77fc68ad23e2edc7a07e7d39908704123b2385011d9e6b56eda29a8bee801228e3677241121ca21efab92227475998de40d40fe76412fbdc35449255843e3e6ce620ca0dc91075fbea5e531aeb9db6cb5153c61e7f55681eb46cf49b31b2efecdcdeca7539e8b3da30519640913672164575cb1ce89d2afa22da971c371f602070e2b1c7488f89239918a5f0df2257e8206ce67106d66f308cee488974e56ff840e025140014bc776211d632413152fd55b53749262c477229da729c1e56f885f61d1afefbe11f8e5038a5688835f3842235091f7bd42b908097a8106e4760259ed7464c0dd591ce48e51397bda9f3514b443a138a115eadc2be7f08edb4c9dfc9f1f065430bd9da0849c45dce861bfe839954131fde47e059c5f933a4baf982e0ec435a8230fb3eebc9ecf7ea65d0f376854c331fafadd45b07ebbf3041cf079300a9dee19a5854e147eb9c88300f5580c54d5801af62f9a90bd91da9f52cfa6d01a08ce390a179bfd6a0d3ba8e43408826cc36fabe685e9a1229343e5303b108683a75c9a524eb776336d0687e7e62bd68f4d425bfe7e4db1dcf09fa4938933f78387e48fffd47669233cae1e8bf9d4a2c63444a776595a48b3471a67990257cf7a0417d34f553eaf423f1cc206a9257f1aed004bd205dc1e7f660aeba09dc1f9991062665d38c0e2a4638c2bf61eb459e5e4725a0bbccbddfd66b239b31c62c948a485c8041ea3b6e58a0090bcc010ceaaedf7a2e8cb28cc23c925724f099ca14a33f42ecce7584bdc073e6f79ced17b8c113075f1604f31362893a3b5ec2a4953d77b68281c001fdbc6a853f4fea04c1e73b9bde7bead3aed35ef68e0ad98f902d7a7750b7461ebea8c2b7e9246c49b585107e979dd66c01969c65d34c22ffed12ce733d3543672a59a06854fa81187f3a0b82524686beb3a84c480aaae6af5a43d6c943702e49865935065f972c466e2e33554615f242fa582e04b7a330d84d5352b5a0c1a28c8521eff8baabdff6c35450ed9609fcde9291d0d38d7cc23d662a6261aed3ef34cc281501d9969425a42f050c7e6b0b1f3a549d7ef86cd1a4aac3a233ecc36cfc2a81cd69d951c31290eb73c71582bbacbcb99f3c29fe15d28887349c9aa2496b48ece89d581c697590efdd60351def42770f51f59d55bce58c5d2886d2ccc668237f9230a155be656b2ba71f58ee343317c7f37ce47f5736d99a056ed3e88ba59581b9b219b7e972b96b2e03cbee95fe9a2ef42694bd93e7e9145ebb155b6b9a7590058eea44d1e877254d55d052f9979ec0df8b5b8cfcdc1c858ad12d4495437a5c8247a071997f95e01943207be1ab6069e7925ee2e6e231a2f133177d0a91478c37c19303097971af66759f0eeea69028de913edc1ce9cd38edbd05c3b7cb393ec781ee7263652cdbb3201527501b60b7ca443cab817e829eafbe49c354bba16c1a597703953ec059efc97ca0f1bcf4bb2ba59e5bfbf64b5cef5dd1a7cdcfa40348b5f8979e96371bdcfed5bc9a5036955a40ebba28d1c5d98e592a046320e3ff7e2b72d25db20fb2daae4e580353598ad6673163fa3eb95f5b5561a38fb1ba8fad671795e7f5aaabbeeaefc4a7962475d8b7df0fb93c47aefd46d88a25397f6be11fdc4014389121c20750e80168565771dd932f67866387050d0551664a16b350e4761d6033e4746d7a5cb07b65ad4c13fc7e64a60ab9849ee9980855106c7706253551072105e28ee78b6e19e9f9b25bd39493736a2efb2cfb7416b84b6de23cd559663c2eb8b223f8c764ee4298c75f7f068824c31d4c19cfe9ddf3871f7160c87d9565c5d67e9142f151a33e2f9ea79702c6a7285ff963dfaa68b4129233daeb77e0aa2c1ccc75ff7a35793b2fadf60a9b1b9074f92eba1cff230c461f1bb486b3e9caa0b617abac2d963434ebae2e8ba39b238a167895430f5c6eb86d93d678ed1c472c3f3e9cd58f27f24d124df2371e98fb08442296592d79db40a6f388f85c050e7c434630ba353245692d549166727c31955ed60be469cf60ea09909f92ca87d5e77567036882b11c04f03bdf89d397513adf17146d52802b86797815316c2d21d0b1e95e671fc87e067d2e7871c28257af1fce14533d30dadd947ae2b1b9b78eb56278340cce5ca9a17271e1ff03670d31ea801cb89d6364c0d6b671d190d75c7335ba00497bf43ff1de81ba5faab2dce55f29561d13cd236507a88f942e6feb9e77a552942f6bb53c857f192c126d3f1ac53845f54fab0a3114f6bf3dc6dc251d39174c0f732dd9c5301cbd39a2d7fbabbdfe0a1049532cd378c9ae999700ef370a49206f7f7b208c7fc7318056cbba332b9c73e0165c97fd25f73f156750448c5b361c30e23229f2c325a99fe19df3d884418ba1d1f00708204a778ac9dde7224f687b7d98e3e4e51a244e7ba5c3c4f00a12182c335b60da3188bce200000000000000000000000000040d161e262a",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "BoundaryCondition"
+ ]
+ },
+ {
+ "tcId": 65,
+ "comment": "h_ones below the limit",
+ "msg": "2d05000000000000000000000000000000000000000000000000000000000000",
+ "sig": "1ca68ce5f7e559793f67c657ac20bb8f3117f28c1ef02b8b828031fe11b146ff61ac67fee066d1a8b9a8d8219909195136ac9afa30909309cd43e54c18f08817c526bb135685d328549f2d0f0d8c73a45606f93e8a17fa3528a1ee64377165c7b98f3fdb6a32fe920c38863d913ed398dbe085a7ac406da7ae2baca87f922a2d5b43601a70d3aee3f182cf87aad2de0e104044dab4fd19e7121ff5cb459595d002f4882753159c7c6421ea7e6f02746f38bc424d92b8c3b353592ca7ea3703d27d58f2df3b23875eb7206b4f983873fb230979083b70ec1e5fd40afb5e3887d05e4eaef8f833339be930c2cff359cc4cdf3fd6e7caa647f3478cc863716f01310a30233bca62a32cedff973c8fdac419fec93342f71e74934799345a6797e85a7c1ccf660fee8ff6402e3c37a70771a26c9ffc9411e745d6962011b003c19e8e267b303ee53079e23979f7b6fb4b5b5a3df866f68421db2bc2eb29fbd6c40d5d73e7570c22b425f5cca416af86f4911766694bcd7d9f55acee1d9ba8f6ac07e2b0d1081948e1436da0af1e622e95e35a2e39065a782e3efa36e0b130b4f22b37ef2670e6b5797826515ca74a9a1ada669cb6d43448baa8a77a9e052e5492fff23ea68698a17cdda1a4cfea63f9c186f35369e57a6f54a161cf569cc75be9347efa9c94a869461ff2648ff1a3c984c67eaf53041edbb4d27c80c9bda409039303052639062dcfe8c7d8066995c49e5629bd0ee47b63b637b14f7ab0964f4adeacd6b139ec3af6530b6147741ece4ce206f9a24d8254af20eb933324b55e911a43cca36704427b8b37b5deecdc0da5d1758de2bf8f6fe639448b45e803df46427adfd6b3bbefc9b9c64deadfb60fd2fe6788f7d65f98aabc960ecbb8f8ed9593ab0a6a2c7d093d74ec17710ee5c98909e529847d7cbe9a69f54628017c0c2222b4ac46134281990b9bd70ba991336de07133ae25701a91306e0dccca6391816917698aa67c39998437325e39ef1f7e8eda0dd330671dd6cca57f3f99c162a54bb23992e44f3b6310de3c8b3d309e203e0e47f05b726d1949cae0abacf838c31fcbf449d7f9d6413bd911c70a823c8940aeb59b7cbb2c64c243a0fb8ead3903ab3186c6390b2678eea04d18a9405c733035ee58f79f85182c520163e7e0b4bfdc03d60034dfaf61644c32bc4cc32beb4fd77419ada027dda3d6f30bb3acf38a8bd4cac6425783b710d5238496331a04b6ad5646d3ee663ea0e50da36b453771976d2e36e0be3d10268459724bbba557505a7e804a088e82e99367508eb5e61919a8ff35eac38903de0529571dea43676e3d2b769f4baf4c1226ed921561817746ad04ea9d30cba41225965f1f29bae6b0bb3e15a59e82e50c0211f22403957d86927bb98fb48ee18260df408ff629730eb5f967bf25af2bf4147be41a5da2421ffea70796b77944479fb15a0890785bad4c0f86603deca9b71b72c6b75879b44f153fdd80412cc8c217ff04f4fb9b8662c9d3474598f806d71ef214784ae54a537c307cc1373161ae471034f70b49b6a574fa6204d7997ffa75a78ab9923850f3fc4419fe365dc4732ac4ba87db246c90466741cab4ff9c3d39cee643e006f35b76ff5cbfaace83482d26dcfb98ed007b97f0b80849ad04e1d422a8c86120d1d90099582703402dc3d8bc192bba4ee993dbfc3b7c567cc6f5e761a5cc0ccfa92fc842a31ee0ce234bcd6888c8ef81e7bbf40956e3855507e2544202e66dbb476faab34c635ff8c873bac2727b5fc4730bbf33c5bdd2f3391181eadf5f54682e13a97f0a06487232da578c89960ad67ff424215020f3fcfa25ec55db2b2d46d3646ffbd9354dd14008512e38e523285e426fcdabd8716883ddfb8db0dfd4c036b51625b26a1469fbf2282b943500a165b6275eac29ea4142afd22d647a4ba6d458a65292a64e21afa38ee30120bd49aa8a0c511f2c202293c717259a07549b12273566f3bbf4aab1ef6c076b0e68fac0d3e777e1f6cca2e75d68fe5a45e5f045b891cda173fd32d54962336e33c25a5c3b03b772403bf8ce296282b779fe439396cf995d3f81eb6b069edf19b57cb1252dd611ffa52eb0023b553b343a028ac241e4e9652f7d73ca9cebd3e3642640ecb9f648fd1cd1f6e7701fef3a551bf60ab3d4f59315cc2b0a9642e5f4e453af47039dc0c95778f2cadc0fa217c3423c2063eaab0922ddc59835a4706136d6e2d0d25f7dd8bbbd7a939e1afa2cc17194430e38b2f983e5e058c9b8baa385ff584846f7862469f5e3c71cbdcbd726ed45b92998b89d83c6d4731bf2f92fcfa454bbe3c7313c9dbbc65708ffa3d9bd8b43df4d088de3c911cecc5cdd415d587310a2c8d3dc10782458c7205419028fef4d2adfc14a55fe7e4507351044820f9d40da5077a93e923f14bb1d12181298c6aa965fd76319052d148a357b8d27b240dcc143fc579889ceb43b8e7db8deea958671b18906c01d5d8962952152eb8245f98229fc2e0477541faa3a57529e2328f27614b7b82abd506d276495522fc21b2f840e34f20cc7d605a986632052ce8e47889667edc1e4d009f9f2f6fc6e4f59ef42dcc97ec813b36c412e31856478e1fbf740ca8933632c62b02d2facea1c5e7936d3cd7971ce35227c5138c5a57e032aab24ae4c6b05ffa7d4df3181fee7b14668f07aec969300c7b0b1216c17de4def301717d4ec65041d4656b96ef7b40fa4c5113c58e265a2c02bd64f7aef278a6f5c57b2eb35fb69dbacc412cf60e06681f892e4fcd7dcb3b6a16d38b7d7b54815ecfa9c1a0bb46138959bc42df552110f5f697de1ace36c45cee32ebc9fe8fe8cd83e29ca331f85898d55fa4bdde5cf438f9bd0ddc711f516fb0e79510243debe71df2a2ac140c19b945841e8ff6baea4ce9dcf038b5a0a19e0cbc90b3c4f3d444813ac7f70b0624bc70a0251675cd9f44b30b38aee30ffedabe5aef29597820cdf2bcbaaf99ee09f9b18fe93268d5c74f44dc77dfc721511f55295e03bcda9956cb74a9bd85cd028ec05b4d064ed35a2ecfd3f674e34cca9f972824b1d7d3a1caea6fd6b51a205fa85de4b44a2f92a45edb712c73a4d10214623e8cdf3b9880cd25ac2dac328c3f54016eb98569ece9dac6f170cd7daaf37d41e6c35d62c3db46a24f2e6f5f237314000d0ef6825a9dc987379d9405547eb27c6d631fab06d5a039d47dd2b1dc63a077b4129f7610458cdad28b849fc68fd5f0c6fbb40fae533a5d8b559355b1db112a5203b321012b126fc6d5181cbf6f3ab8de483824ac07734370701b08b295362eea3073efc3a96ac9a9ee3082ab49afa034accdfced6c16c8d6a7e88b913b38468fc104f0f458a298f0c352b04eb664b1eddd9d76f308a9a29fca3f3fb730f8d1d48db53c23243c8f84c06a91acfb86cb2dcf2b1ef3a0b9b2cb1f4909f48e9f9eff93807bdc21a5a0e1e7ef1fa7bd2f9449eda1bc9b86e8b4efe33221a436a864cb272db8a50ed3696634ae458566e562a1dbbdfb20126c3ecbcf403816fb49adb749f51a76acf93869101c81d8ab1292e4e528ff30e58d4ccb34369cdabf927349fb8ab49ad569eaf0212dcacda9e1ff85493e6852418c647a4697409427becf65fc0710ce9c15ea9d2e799b39674afcbf2097d9fa9f4b10a874435cdcf2137d177d764c21a7ebcc303417a5ed5b94d0a3ae4be16417ff79fe1ae01feefecc5cef9ca7ce8cbe1287178349b33c40b7e7f08ab913844cc223951957043b6feeb1f56015fe5a039ed8d3f07cd55d5981e9f6609f2506dca0426b16c7008f2b25a67aaa3543bb8610354eb214b58b836e74090c7a43a9b47b91fbbc00a1b78400a42a1122dbb21afbe299b619abeceec31b32195ed805dfe64588703d7b12387b55486b39d909ab0690684471564417de34ab2e02da4d3974cfc7e9e38304d220d0a827a3312d085195163fbb712cd0a21cb151165bd98b77978096c1e6f38a73368cf7707083fb107910ed091d659af6a4673f9a155c8a402bf1c07ed416fa18fb66d6ac92d8a4c2d4e422b135f79ead28bbe234f818892b76fba8ed61b186b3b2cd1c773795e91e923c06829fb969926290ae2fe7585534e71c0c58b3bc662d70d537dbf06da794401aa121b4dffa36e574dda73e743c6177cb87bd78d6e0f98b081188d14050ca3f49e330cd1765c467430d197ee509dd8a000168212c683c6c7f075706cdded9c5a9609a6496280c1978d48e845c9693832768c47d9b7d1650e927b694a74ba50f36b924073f71f51b795f7822475d5632b80155264dc892effd97f561c1670d2417d5e33e7d095a8e44d8b0fc57d9ec693d12c277ddf096fa00081b2df89c46b66521295c3428df80915fa7e8f10c0627fab4e5d145e9fb6628bbd7b7cecc4427e73c6b1242fa7cc9df2731ae2fba2f9ef0d11ebb4e718e0a9b8b73b7bd5d257d22bc255ec751d1b381fe080e6c9a3e1204a1123c461796272ddc3b41f8fdd444358323edd11fab1bc5eda2111963ea999d743e6968f158d430fcd9906c5096227b7e5f377d07b2165476faefcb2301c03ea6cde213f7e165913f41fec6753aca94c0f365f60828c9bb9bbccfe030420212e3b5258668ebf1e393c5a7418292d7c819acbd6dcf109233d455a6075001416647a8dcde5f6f8fc0b161b252c37",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "BoundaryCondition"
+ ]
+ },
+ {
+ "tcId": 66,
+ "comment": "h_ones above the limit",
+ "msg": "9a01000000000000000000000000000000000000000000000000000000000000",
+ "sig": "4e4f39e0fa77c6d67f49c759b83a72c2289fe57fca50c143c9a831a8114d41edb4bfa0856c62be9f05fe4f3672fe01549277f8b0da08e940f9b7b9d3da74e07fb7cf8a953fcace4239609a492220cd8007966c4e6ca5e8b418663fb1ff486d3ef90333c470699b8abef54c3fd4a25aa34d44ae75c216dd2d3f017082fb01df0d5ca6a85b1181484205722ef118f03372d8dc119739303aca686159911e165a611a678170a5238dc9b5631df11f2bcf3f7e5e8750cb55454f25a8a6e3efaa3fc66c88ad5247397ab153af4bc014895d006307e9a92dbb4e9bf78993980c525f2313d188b0f55718da34e701607d7149eabc05d952c4e12a3516d8e9c1fde6eaca3cace1e76749b156c46f40265870b1ea2fc49d66b600a52beb187675d1b7d6c40445c678974625dbfccf20ca3b65eff29d7fc3033f3af4b2c29494f18515f378ab2f155b392da15dc1f65c7a37ea2bb2b69eb0f8f66a6507025811a2ce5f748ccf667f32b9ebdfa37b3f4a164534de8ca9bedeff425920d38b0514c62068b92024e014283ed633f1820d2851ccc8268a443349903cc70af04ddc4dcce2023b6c0ce625797972883469b38f7754b576595a97910ecb81d97c801be74e7b8e7eb902c42cba946d855cb9dda4c140d4ee37504dbed3ef92ca99572a7857f6383d9ebe3105c90e9cc196d5c259b869a8e8c092432be67cd7b873ea408d455231863c5f34e38fa194686efdb23b79b30b34998f031179fe8dece8e79023cd41f0e92e18fd815d7cdc69dd83d26ca7e850363c3369cfc8706daac31622fb7c419a37d4884edcc10eacf0c4442c2bb47473181d4cbd404ab63bf840676caecbc89cc17ce0d14849a022376ca0548ff552d229c92c05b48c299d258644ea7b6462ef6b5fe965f6129ad9db2e95eaa14e28866d7eca1c90bdc46bc8f0da5868243a0f5a2ff3f08baa067c03719da8a3bc6c1d14a871c7a630dd831911467e1e6f19ccf0a511378319976015d3a3167d2570a49c50fa8d17b1079f092727276a311fe9f0ebc005739d8733727273aa5267021dcdf629321364fcb46836209c54d8266dffb01abd69824245c9a7f6a706e1d5deb23a15330990ba1a8a7032d4efa4de64bbe9ad4bfafee9e23b62faf8ed88093f5459115fc3d2877028fea349285888f84c96a1fa415fd1da7e878496e910cc1037c0a482e65da9209f40ac89e92358374144d0cb729279ad80e28982617f5ade2dcf380be05709c0de1e0191cb873e35d98f7fe09b38fc2430778d44752749414bd554d1b0681e98fdbbf9bf437b9e0473eca06ccd7e0cb4948d9aac13ec245a850b0506c6127830c63a75685e430318365f4ff06dcbfb970626ef2dc27dea0b0a098b2fc5a0ea02fc67eb3a9696ece6c752fee088d8e71be6ebd94aace3c78a9113b8e10167da32230672a2c311f12553ffbab9436de67657725e96dd516c9b561c3b272fe889e8ff2811b44426d26a0c42c24349aa22f85ddc863d32ac91bea62f26afeb350c81439964388bbf21415226b368188e2adce8ecdabbb3e38b1fec29bb55728cd382b3bad0783356c739f343c39afe5a98512b3f1c10058c587c1bb729417c26c18617f96d2de956de1d91cae81e1eee0d2011b5706c3b07580eba78066aa2a812461fc967e04f283113c30f6ced3a237958ad71c9572c8d6ecaeda361171199953fd7bb73fed1588259870adb84744e825dc84613daebd982f4487b464f128c2a7ff49b259c991ce34a013f9374568fee8e357de35dfa5cb43542cdb297d4cd886e0605c3d1fddaba262ced5d1edf566cce3840ba338db4fba236ec926a2134fd127d40e3a84f6b158cc6ce48f238c078a795caa391e793716281c2936397a50cd417cdf9c7fb32b5a8b7690e2ae2768daee33fd33600ab6d1eda8c37bf086bd3c1be7a9a2d79ba6ef635f9321d8d03316a8dc85acb4ed7a39d7cb30a76c04c018fc9c3c4779a8a67e7975c7a45018f9f177575ade5984ff4f7b412a18f1c24402e9bbc5564ef98a920e00d4bcc9e307e854aee1a6a2f421f833da3d27b2e8a9ab7b9f1061faf105d13da2359e9d57f47fbfa56e49b372672de5b460f3c43e9d32a0e3a272fe3efd0dfa4740539be52d4ec7881d9c7915f8cda2b47dd520ab5c5ba8fac6b1888b65d1bf12c976051743d6a506a5d4c550262b23e4995cff4bd6dde88ded5fd49608e791ee74c2c62571daf881ea9e318f96447c0d6d3ebd42a1b4a448e66359db4cd875885f91f7cffbcda373af5c72c67c9e3e8e14b6e0f5d209980d4d9be3884878f7f97aebf74e86426bd8b1c11ee5df701eb47a86877dff6b7df3d343f8a3a24697294f15de1be9c20092ac2c53d2d4e9b8011a2628416ebdae96237fcfc980d69265b03b86e1bb6954ee19e4e7598b068d131510a4e13c38d2c763c32f6a270a50fbfdda0e50b6df49fc85d3b1012b374a1095479a8d330f6c4d46940854daa91d34ef96e33645a444fceee47bc7faa680a2365eabb0c7acbf73bb72364b865e587607e0f4e15162be599703e22f782b15686f32ae096ab178216abdc687310330082a057286235e97f0abfb5b00443acb5db755fde1c4d46a0ce5923d8f7b10b0c4cd66a887c12a02ddcc022e261cc3f6ec65f1d6b6182a19a2c15f412d0a364d01b5eef67f665d42a6087d798aa94581fae60cf86cb9aa90c6b9e63e3269d78eca3f269f382e69a3bf777a420ce56866aa82ca5c4131b34a7c2e4cc8c685368fe8df1ba500fc6f4149ba21311409f517332d54d10337c762e0806d66bbd9426805521dd4fadde9987708f7e5cba96e9afb256f729ac9705c8f9069f77b32f5609d553e1357fabd6afb3439f99ef4d23e1e4e65815ae079bcf0dc408d229fa63b44b50b1075ea4d414caf46654fc462a643b4ed38a037e9fa9cc56e492584a69681bdedb72a48dafea506b19e75724d54cefc666768a7b40c015dc055a8b058167965efdc7122b25807555d3b6e0137bb98b5e16a72f4ba873ebc32c036d2eb9092b64de62dd95526c4900bb64112bb0703783c416be33d3cdbbd441316d48226d63e69471845a7f5bd93ddffbb0bf9385221c3a9d80d89f2a6f6bb233f3d0c604854b86b79b1d4cbe50e76c276b58f25ca31e415e7b2dac266dc3b073f1d6b00d500e54981079d66a1f314653b733c6db19168ebef304e15760ef535b45012fa4ce3eb1ed610a5ceef680f8700c174ea474adbf45410df72ad777c72255b2e77e467453da217345354f3570050c178dba294a95c5bff31c95d24fc757d3ac354cb7d7c6892e8dfd9c0062f3d3071ef316c116511d78becb255d185c81f61c0e29ce521928ce3c83c9530d53c7c6c0535c9b384b090fab020d23c199430889db214a84cac3e06888fcf45f19ec74552e6f45380faad1380b9a7e5413d9c700c70c6ffd003f3b52f624e6b04948ea99b3fb129c2de24b47a91d910f35c24efb9f3d788827b74a566607846015e6148b4c76355b51bcdafafe1e5298ff01879b1e9ebd430681c8c82f194498e78fe3537c99888f11c063997ac36d1a00a38d51bf5a6101a2322f70dab430ea99d14ee833a0859d5bb0da477afe4aa3184e480b14e3f6a362ef3458da1ab5728994ed6c8899dd6e5a9c78b38f370fbc31661e37d402310a9dad865176486144c451aff71715378432604d9194ee88ea6f3b68dfa1b80b0a6c54a2b5cd4c0b4b1ec7152c680483b537313c4b6035cd550d0eca0df04d9a058dec727ad5675285fd1d07a4a7bf36a330ffe620a1b244583bd3b248be735bed76e4f1e47fd1f81d6ff3339be6d9fce2afc4ab2402f3d2a9907c10fe4207ffb0a3ee49a3ec7b3af256aa2d63d69b4dfe69898c858bd8de9ec4285f7de3320c18f669574d6cc9a08cc8ba745af8a5f0086621928a97d6c92103d34c229f6d8b1a36e8e2e86a8dd7ef4b039c1b9546f7ebdd5f179a94146fe3c9c695641bc51db41ff0b074f467bc07578fad564269c65337f6a0b8af6dc0f7640cc42fc8dde6fb7cf677ff7889ddab792fd225ae4c8995dc97afe843831e8d48f419879411f5152cc6e1d9c0624d8b1bd6a4b136d67074606ce5ee30b0136335526eaa352df9fced286530848115509e82a8a4a3d929a5a242415579d97995cdb20c737ce4e63e490860e58855d6574ffdceaeab8fbb6aeee1c73b7371b8d24dfa68c4e29c84a28bf78b2ed283c15248a13efdb4aca13e25f69594660e73dd847c7249d64dc2f1ec51e88c675fa2bd5b77957765e608c3e32dc991a14c68fd7e9bbf17e84b5dea7a2ba9414851a30994483e0e53ac614c72c5b5d0407c6b0dbbddebb4fc0d0c195237f9d2e4a11cd10f464b35dcf9bd90bdab7f1ce583477dbe31b0b5aec91ae86a2e0cde82261665c570f0c055f1391e60669e7e7905fb9bec5f0da2485bca04837e683fda337a302254f80ba295c96af0aa97f673efb3073b581399d76cb234296c9065f363a5e72484b7e93438055ab952fe2e55a23b34acd34957a682ed8f17b0a5778088c39a3dd8489823c8cdf588b73cf7c5010fb36c590c99fcf30cdeaea2f86fb8375aea46b60dacd83acb0b1517589f2c386069a3b6e4f81d445961646b90bfe6e9f6ff3f4653658d1e373b5ad41835848cc7df0000000000000000000000000000050d191e2329",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "BoundaryCondition"
+ ]
+ },
+ {
+ "tcId": 67,
+ "comment": "high_bits called on the edge case",
+ "msg": "8803000000000000000000000000000000000000000000000000000000000000",
+ "sig": "93d46453ecb0ad7a3e0288445607fc4fc6704f17b64fecfbfc183de4cad5c86da5b1d6c13fbbd1c1f8a8818dccdd5b075f9470e83cfa231fa5b6036ee49ff80b0fb7655f4b7f84197027c868a4d8fdfffefe3317c336101c4749b465325b45dec08ff915e606e7cfbb5558e95ef29b194752f50d7a5b11a14d131b0c9af6dd154ba49200afb1bae5b9c0ac7fb0297c72281d8462dbc89cd5b0d66256bc942905c9a805fb14b8c4931550ebb70ee04174784cc02fc8e97b5dabe50583d433d11518079803c6d557a13187cd96c8e84e8801c11e2666596f055e788deb0a713862f2daef6e1acb60d83e39003417339b871d27877823493fd360b27336eab688a71d4b0bdea6641b0b0ea1ab65fd4291c380fc76a75dc7ca4e4711af22ab5be96a2e4f301f705ff033e3e8b530bd8194b9cad4f54680eaf9abf0be7af032a2766fc75396894b2f393b1b87af6d1b9730d374a5e48964bf1ec6276e6ba4554e2f6114c04a1489990c7901b28ac94de8c61ab983319374474a2aa8a0e1b5410fb952105a5cc0ec9b9cd7663e532bf787ed992726fef537e3bbe31ba835e0a0ef00398f7d88ac2ed3d59a99f9a6cd49fea68e3a611ed1600f738ee199d3db7ffda3c1873dc9a0b1ba9b8aa224cca56460965a9d6c91d58de6c33f9665df62f4be77d333c4d62b967386fae73830389c71a563ddf7172b68b1faac5fbe64e06b53efcd058d4a960364fd879eccb76a7674a813453cd48868b9fcaa96bcd5dc815ed688f5126557158bb35f2c6a0e4ff4c010a3afb6a4122cd3521c3d9e3c717c79c8062d3fc24d51b122d8a8714f9ffc07d4bd8d0e012d7ea9dbdb2427b0ee12d44367125e63a275d70b4f5ae5d088130358739cc31c3060ddf91c3cc64957c76d451cc028555abd5811fefa5a10633cb0d8aa47a8b6718ec44b1cdb06a35d6ddb332efdabca446dba302e2c7124303343eb42ee3bdecdb894c1768d1680cc98dd628067fb39cb7d67a00784995bf5ea3f8014193c7a371dcc55ba5a3b43d3f2a2228126856ea0d97c90b6081a45491c3c8e20f6dc2ffe331496cabc3619fe86e557228a7dca189e7a3cd04e961616643bdabf6ace94f3d5f1e8429d115b3b8c840245fbf48d0172b214c0386fd320dd1e2580d5f4e6cfa9d4928431633079a90f97258418ebfcdd0aab960239ea2be83b8a057b0548022bd518661b703835e91da0cb568a4101de68d5787e31e285c335e637f83eab3953ba292244286d61e06fcb961e319ac80d5173bcfe7128dad75e2e850085be27356495b28fdb55313d90c4807f6546231fce0cbaf1fc6419ba60695eec63cae97957baca1756630550ca14b56737a52de135eb711c0a1dec9e1811908ecf299198387b741f904967404f7f8ec9f6ebab878caa4b664cb24c53bba4607a7bd6e4c4db5f9c8d712cbab6a506d0902764bb44da35cc0f0663968b3cf5bf92f83724ce08d478a66ac0e430c42ec47ef4de4a46e7d047450e481e4d8468261315c10d5bbd1ee7ac82f0a63a9d4ba54f6e4a367de6b05a560482c8826121ccb90f68037a96c8c30e41f1a96c4d84c021dadf1315c3a6f80e6ef7d26b5e4e87f5436347169d63987c022353a8155670c5be558544ee3ffc3cdb717bbd53edca18e5ee0e5646482ed38f790aeb45bf89a40e819b14d535da8b12025ed710c2f2faedfa716970ee44798de2932946018b6d80715d6f6d7d573b003b576cbe2781ed12984a4171c00d5f12cbf7e73d567cb8d243544cbc5c7921b5a89c0aabcf1339f99671fbe96591f988a06f4bd15feae56429878e40ed8f1e0e90457f1ca21bccefaba6d30709f40508c47d78c72362d5d96a279406f10f975fe70872a4e214eaf3ec9ae5dc3b7bc41e27b72da8f6824c259534216577bf506ad45976e84ad4ed9d5a4f88e3695e2943adf045b91a5edea2410ebed5d2bf10170d3a0c392e72e970c715c0216b97ffc8fdc9089a9fe1e4f4cad9ec4e4e589fe05eb5ace4083805f2cf936bd93b6410138caff44c64be949fb7acc66284bdd8781417976f7be700bef0f78f1398fee069b14e686aa985aebdd058230b7684553f02a1e196ad8661759e45bcd1ab75f8d3ec95602ff03e6b314d8c363cb7c843df92a3a6a355e29a2ca881911b7e01b8e8c40f7395a5207650b0f44bf11b1269b8b0bd4b4c989c98ff0c529e0a3b5391ca25ec366e39fc6da4c474b3ff93938fa064b1a30a6aa56a717d5f5bed2b3cf3d2270819a8100b7fc8e750787acbdf008fcc4a0deaa47a62084c3445c75cd97edd1e4012b0b76b01bc1ca8e5738bf884c6135934304bf625eb8a3ccb29087047a0834943a6bebff481994779c7f6a37fa8140105e849696d922d3e7cce3535e9711422dc217f5e7f2c379d5dc8220a5006b56a87079b1504d6628999ee8158c73d2c101cebf695adb5c3815d9328255c5dc2efb167b36b1820abb79f0eaf4fd84580ff7c3a8b178164f985f42f0dcfb728fd42401a31a2ef2ebd9a26e6832623d7d28d26d162a21c45889253f62a11a2ed59414ff03c27e48aceae70ec4629462842626d7f802371fcd7fc1b97495e861c7391c773fcaa2ed087ae8b84968c573f091ba37097008d6041460986403e8e1d2e44ba3afa5cc88d48780aaceb142512b115d47d7e5f9358678c99d2f481d5740b327555ff41e163bc40b2021d441e5b4ca87b02010a454c6f2c9cd1970cd3846d4c8021ac7028b2e94b3a9af750e76ee37bf4f4ace83b244aaed8c1ba134500357b96f587bc1464cc2052b03634b772920da0cad300ad9de1f53c8b8c373b2e12b552c4410e2836f3161fb1b7c0116eb3fd23fd632fe6dbe2e9999a3994793b713d52c811403c3b9e0f5d9b68b71835e9dac66ab9437b64151115bf3a8af2fe17de721310b459ecabf6790096df03c23a8165cbfb484dc35e0e14ea64a82bc76b888f6bbce7d29741ec435aabec2b9ccea7b61197a895b608d88666c1ab1ec32424bacd2c51b0a248ab18e0192a866c7de1ed43ec7e7eeaf300ea40143af6be9d93bb92bd0ea5d9600f99276de5a23eda8f939ec173a141285b0323551137dba54c2a46fa5decf94158646edc72901fcdf86beba1a8715159f61ce58eaba2fd09afe8b533817086cdfb641f4ec3c079cc27257688d4b1a3dbfe0a0f53e74384e2b89c774ea215ab444a459b5f9ded9019f57aae07c44eaff21c7928ffcc621339badbfa93962630c713072c5efcf52a7f2d09d4f164d0b901d34c37dda11aac6b6a93f30339c786255b1e18ed055121a5b52b1a0afd76ac8d4a3b1e72516a8ccd39cd035c11f676ede7c87d932f1ef99d3b93a79e7edb1923de83498c94db1775e9560753f65a34df282ef215a18662f446e1a80a4a64380cb4991aa5ed8fd1fd24eaed4ec91536229596b765197c10943b4dfa30750728f9b7ec39b798e33572da27e8b2bdc5a596946e99963a1e164085cbce5529183159066411cbf62033b41b2c0f59a4d771b4aa9a82bf781a384a370b73b59c8d64450b8e75ecde8c7eec2ea52351711b88b7e462dd7069c2f3c00a0656cb3cb5cc9338e2dccf2e0698be77c19f85271642b09c41932a0a54f60df6093aa41ba66734f0c91d958f9798169b35697ba42db67d33b9151b3f176fbff73e73b4bcdd9f2b80234e20ca079a0694977e6e150d16dca677f1a195348942827ae2a32a7fbb891df99eb03651ce7168d8f26db3c6d71ce778fc0dfe75010eb80612908730672fd0344d99a85090e78e454cc7edc760cb49b672702d388689819f55a353bd8da92e17daa34097c1cbc4574a243efd2dc908ddab79d7cb33ee1cc7a0c3564ef545d100bb6ada9d26bbd306ec7b543e0bc2477d8a283823b65b6a91ead38867bf83ac3643be995b38897307cfdda549a9732b2c3ca88babb8dc9c3b59b208a596b57bbff42c586b97a0e55ad9025f6c421b19c1ec36b436398c413ae55d064a46e2b97a4d475170666f6bcb7d5bbdcc2a3d28be3e5a41abea942ae836487d7325af729116a3b009b47a1efdaa4142a054bcb672951087891aa3af203f0ed41efc9422753a7b07ecafe4d9022e7c73893621a648d7dda02181809d7a687301d156bd90c3e15e1a746b6ce93fa2bc2d8309b8135a95c0d12700da6eda1bac9ea1663446cba9e8237dd019d7e016ce0600c8f1cb435a8f4f52deb8295ce00a07d3a32456e44bc2128293295e550e816069979fc379da0a44d9116b7e6a1ffebb750f2d7f86a27d6d93cfc739efadab272c77a595f6f74318d14fb4e15ac8ce9fa0f7c72ab7720af4f3da27bff92ba62fd7fd79d96a25c2fab26034e3f331db56add047c8840933b53e06a0607bf3dcfa4fb3227dfc8a33a26ec9fe03ffaa538b6a8ed9a58df01f0b62cebd303f11e24fdd373ba23adb698c6745c41f57cfc465d10aed6b08f171acb42c5bdea41cba6fa8016ec7603591468d310746513a24f77155be87f507e7fe8512f2fc889af9ebb145d5c33137aa7e3dc9e14d3a81c2a5149418782e082745235c62969d19bbb349b550524102aed4c1d66a3a98f8646f6f0c0c506b64748c6747b1c1cbdbe815005a71cef21a1c324797a0e30413292e78bcc5cc548d99a2106b9ea6eaf000000000000000000000000000000000000000000000000000050c1415181e",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "BoundaryCondition"
+ ]
+ },
+ {
+ "tcId": 68,
+ "comment": "low_bits called on the edge case",
+ "msg": "b502000000000000000000000000000000000000000000000000000000000000",
+ "sig": "fa54682a8226fa50a7728ee9ce8aa7b72bdd00a4f5643c4771d6547275088fa7b32042cb5441cfa8880779a602c32a536236b3be35a6e2a13360d4825d52f511252d6a3e272b493bc73878e0e3711360b5360af83df3f57570667d866c8558b052c540027a690df9eeea1135aa50546b2136d349cab85dcd698fbae1aa6fe0fb2eec20f3ac4f004a55be8510c4015f74538fe2e695cdc154887631dfe924774a6731b65aa4349fa16d536c7e9b5642966606e3fdb271779ffb0d3599bf958d3727fc443a6a190f4bb2f2853f5f6d773dbafc371772bb3d2b0e88aed601c9ce8ffd60b2496315f507bdbb50c7a309fcd68d85fee1f5aaa9420c4d2b52147d7fcb38026e21b5c467af3ed4b16038f2beab5f54b7c134571c079dbd28c54c6e06505d69b6dbae1e720e8a8bda189867861f84f5f6fa39f9af2cac8c6153bf1533b21f1e70360baa33860353eda4f0ec700c58283e2a3fcae5f0053c395be917ab411b8c2bfa94d892bc4fa424f6dfd97f9fa982b02e4fbe6c43b598eba769629ac66c3cde157365053fb6595982daaabae610cd3458811da53cfaadc053d8af104896e438d7bbdb025c474abc2493f74e16fa8ba563ee0765f4a06dbd874748302dd52df925df631e5bd5a7e335909aa7f8e7a65a7db7cd1988add9b9f34a71e3b735da6dccb4b6f6787af5f1e519e24a1e15c5930f43626f5ed734d4c442125896aba42840fe0613bbb8cb68325a6bb26bf1bcf14a055fcf63f11020ef7572de02b677315a6c83a2d0bceaf049e91bc715a085a25769ab9c9f4b6592a41c4c7e212c3380d723d3b4da5d9baaeabac9410e32eaa58f38facfe1f7438e4eec3ce5091a1e38f98100600dcc215d3c8ca850b46d60e2b941e10c66d809282f9d38d710a9202f9bd9a79a62cc30b32b5a1af6f9de111bee6a5bcb65e9125b8cfabb6db6c750c7553d6e3975be064feecd24e26c7196e931d8b1ce48ae6be3977db6d7eb200aae36191f7f0a2be3d3d7c9e760be49c8fb0b495338771f4b1676304c850db67d24422d7b153a4c34ca37a0ec287dd47739c2295dddd32e5809afbab880da22a82dbfd4c0041b0b8a6b9168e7baca62a6499fb621278ec25a81104eca44d2cd0165113fe6c68a56fc730ba9c7dffd039c978a701ed9f6acc61e39316ce53082c0dce04b4c0cb305aa53ac14befc5f65be4fa4bbdb79ab17c12698df9343de0b4cb3feb355cfca73529f36198d21da56bd343643a0d27d040f2bb7d048ecbfd1fc18b4bd27217c8532d63b47fedc445430caa18b2007ca9ae7fe9dae5bdb0371b897a3def628b0dddd3ba9b0805056caf5c02b7c3e44939b34ce646be0edc1289daa3aea0260643d34ebed8218aed531bee5ff772f2342e96e27ff488a5d1afddc3c5094a7f94f01c70ad619def58612f767cb21b3c742c43e94ff21b4f30348600a766e0f66d418b9f450e389be3ed10d3f080579248bbd7c72ee02985424c09c95b8af7229cc57e6dbd7bedc4aa2b08259db76736aa82bed4ab3198f748593189b0f5ddee1b1b8164f1f82896b458b6a5794170c056377b40e758c1d9f16a4b060f590d0299a3d6e8bb4d9046b194ea49051dba75771159d58d67d88eae6cd6d3cdab259d3b0422b1d1e0b40388d7007f73f3e1ff362c7bc785dbfbca4b4d007f3c799e8f4d11b806f26d82277f02ea2a61fa1cd5efac837aa29bdfa19cf00117f72b67c4df10a49a01efda625506de427d2ab9a514c9cf201ac86fc0692b66063aeb86b0b23e4180f6eb362b10a8dcd44f96983d5decb7b463882f7e0bc455c34998c65706e12c77416052bd36490796afdadf360ad94183907f807113b8c0533ff36b311ec6f8a31f1fe36f822ce27a580d2e5582a9c2991be1b43d0ff9c91447932ca726e57ab3ee076319eed5768decd05aa7ee857ec82b9132556cbe968f6ecc4013fbc49568c8c779d9a6d9dea52617e0f521c46d4862b47691038d9c36adcfe17a24a7f44fbd87114ef18bf1e1df13d15e060a01e2ff31c7b7ac4a355b0f5a3e98344d86c9510af6fdf934346e0b8c756fc5a14ee062d190ef7b6f78764e2063040bd09c4f7e43f1eb64f06d2e5c30b020d6c133dabaa9ebecad1623e3fa26bcfe1471471a6517de61f780b3082007676e5ff6ee9d5f31afa57c9faee333e639efc7761b0466f4c3b096cfda85d11700a4ec5db2deae29042dce8b74db1132104d9b9b0ef72962ddb6c23497bcc76e481871c322712ad44af7387a3e9498fe9a7c86ff73a012a2c5f0f492dc6766062cc296472f4ee671185892fd0704e8fb0c594eac2b817916ea7eda1822544a7ab2c2854e3b0c578fcf0d0b4ce731932af21a293e0c0e06fa5ba4b58dea2695fe4acd9fa6f7d1e59ec3657fc1f37e73e8e3536d7560bf502a103703cd815c9a10756da5d9e651234ff8d46f5f97bed85b89b6fb9c9c8026948d46dc5575679e8eb6cef8026aabb9a648fc87cc5e0fb06164cc22d6ab541caf5fbac8c6140d0fcb57719d45f22e055ad82b217cdb07dc986c4af4c847a8922be5d95f5367933b04b805e8626e73476a5da495bde018836ea5fe9cb34b3abe0b65885c83e918b5f5eebb53a962ac9e460dd6fa39795c68320e6b5f5e00638a1f18e40c3cdf75cc82794bf5f4a524081403894221f469efd48d460a8915721bcf0d6211949245cf7baa2f1ac65073409d9c1328e44142c9161ffc8d31ed8a387cf3dd0511cef2b61622de0d46d3639143339b9b6ed75cb5fa7c95011d878bac8b1be21be2e6608f040f76fe91f5b6fa92387aa081687da647712fa3b7b5e32ec2f5d22920acdfa5557ac8c071491bd4518c54f6d93bb8cde1a38f9dc1145af011c309c87c5b627690958fd466a4e8c073796f1cd07d844902e7e4eb56c031dd8c0dd6d9369c2eb4b89e4a9900bddc8114463c3ae2c87ddd1013b2defcf705ea746ff48d2821e5e63e033f4038cd842de7c838d9418c8e27a8dcd2fb9b88d8a0d0ba9c454d7a0a167a44cdc878f3274ebda260fe95a031c6d8917458d3882e11fc5363ccb034fca155ad29d622be4a047b3ccdffd362a3550c552a1b698e87dfba1774e527127017fdee76a91525993ff46b5eb072c79027148420fc958d1cc62e39dceb827dcd9baffcfc8b13888072827b0132cf943e31c71131e602444028740e6771a49615fcd00cf34ebf09bbbb2ab63b57803db54a1fd9c49957971d308548c94de5c5b6a5f345050ceb75708c8aee3c624e0d8290b2bcdcc918fbdcda7bc30d3f5f5ce1fb2d4e6cca86d6ec163f73858b84265baeeb0fda0f40e7bde058c85a2138bfa777c8be45da1c2b7915f94089074f4f22c0c1ecea9375ee2bfc23f90c521b8ed51434134abca11a9c3fd019244710125e9b7dc27661d23bcb4a40d5e87479d6b07ac86cfd91b5d89e664317336a2a6a80ee88b7b24ae1872bd99bd372d06cc21d835fd2336ea2ae53b7bf8a1c14ef724eba94e971524a1a290f9b7f265665b6195ee20719648b2a4a4a66c705705cf48b41a7c9c7f16bc2ae479ef1d5c23a4050acbdb0eef0a8c792f547952170a0b869f9b5066c06c4fe79d22379a5f8145c700049c4043215f60a7433955b2d9c681133149d845de27c355e1dc40217dae2c0a22c7d9b9e346ef585c35fd8cf96ebfcde2a7d4b7445e6c11046f0644ef7619e9c4bde19d33374061c7d55434249f4aaed4c7eb39a86f9d1007520d048301c9614943efbf9e55e11ea0b4462c9995c430ac4e7c3587df2a9f6d374580d0dbb48973c909615fb846705386c55d486063f8a0c9813419c9689317119ab6b7b6b9b72a2327bfe956859f8e3edd2d0e6a2e3446adb9c130fe0eab8dabaebd7593f9ca7b50df7c0f9643415b18f3c18ae06ec6ca1d39064b3bf8d8d4b841970e3c38c4e609fa7d6e8a938c371d7e4872ef88b088455715c5766126882cca88be8444a951b3984e1e24e38f87cc2d22dbb4459c258f7f6d9c4c70075061ab9c9a60fb23c0d4f5c9170c3368795acf27e099d9788d72e488742e04f779ac217f14eecbb4e3a41ee5d1b7e174b6df258ab1d8851c321c7ed74663e9f836ab08d8a5994ad7ea1be34ee3029b35550d653de0679b0d385315621282342dbda3abd445c695f67ba506ff9d4812a3a70996f26c45d71b9039ac4e4868047a396d838e3a625264e23178591cb966732901cf3960f0d83d4659b5ecf84e3948efde4413ae675d21a25e74aa780b3d4500b8ebb14898e9b8f332ea4524c7a560a630c049eb36b4ab1b4a77c9eb5755ff8a130786da3292383bc378ffedf2a7f3ddd8bdd5b7ff895608bc0c79ef3360c958d8e4854ac76dac7992bb69f6515052c47716a19bea1eaa0c0e33fa4f24207f7b44d5b48ed9ece05d5ca9d728b740e427823390c1d0d7998ce5edfd989c5d0ac351990cf8f291de748ddbcbda698052ee52cc078e15b7fb5360d890653c7b26458d0fdb813df3641f7f67613f5bd951d98128bff3a92d2b2c8b65adf282ff168af584730c3afdaeaa6550564655ad7700e5c34c6f74d091f1b367b210011788ababba86ba2e8eb6f2776c3e275637237c17250bbe31394a5a6f850c8ac1c9dbfa0f162b2c5e5f6e9cbbd7e2ecf72e7ec7d7f1f41b4d7b7c9fdcea4e6a85a100000000000000000000000000060c191f262a",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "BoundaryCondition"
+ ]
+ }
+ ]
+ },
+ {
+ "type": "MlDsaVerify",
+ "publicKey": "f5408337d0fee65c28851226a5fa81b58464632c78e2a9bef70d330f2e3a5f74d9cf676aedd1067c91a5dd5d4edc46f868a93ffec9f44e254e44f682a153aeadf228e8db7c5fcfed30cc3408e261ab896876bee56660d2a7c1d7eac20c5754255206a178f7156295065ce7876f90c48f44bc37f3a00e32eefd3a4bb1e298fe283d106eaef92a33a594253a2a0790976a1d04636f8672d28c06c852ea8bb43b84bff512996e7616963d5b9a2906466a152c7ea9be178be35405683b44367af85d2daad87630c1e21ba5490154f0141780f5ed0407cb0b975dd56d5930f9b26413b843b83f3693304b0038bd3e4bb398868060ea18c9c67099376470a50deb052e4056743fbcdf0341b192663bd1c21ba3b3d5666e0d0e29c4e1ed0759ab0bd9d1d355011b94e0ff0c049b03ddb7138640667144fcacd7265f55a07e5387f1abd30c037cf14d436aa855f827049215440d8007f61460500d943f57ffb6bfee6fedd2fcec52882d7d8da1aab29e892c8beac3df3234b4a7d2eca3a45c6623c52bbdd07c1c94314b706988a52029f8f8b06e874b741d72926652c78c6ace2cfd8864eadb2e4b39cafe6e03e4edbafa2747db9bc42f92af8b031e3e380846b1bfd15ade88c285d6a6fffe91eafc8b17de6cbc68575f323cc09fc20e49e8efd76f9568bec486b78df4245428d8d0d5f53873e11de65fda4c770b521a8c67f5c51d48cc26358954514447881fd9a42e5891dac7e1db5249d7861b322111e5fb929bee9ff5e9d5a2667ba93e63fc03040d2e82648f89e89dec1d1d2dfb9efeceb7940f7dcbebeb5a239cc1c54d8f7d52cba220d0634e15df46a58280bc5a48840bd39274cfde150f9ad9a40f6398d715350925f0e0501944409f32331a362bdaaafb3d8ce71c964332d6afb7e684f99951246d88081c86744ae68133f22c53a4b5ae258f230a98491d2d43a79a6d0f4d54a3b62013965ac7c82d0507125a38a0277f81cbc1d46cef2a131c6f51b88ec0baae0c82a6a0e72831cb06f9116cff5111d597e01057d32805a008f52c9aec3311139bfb35982789ff83bdd0c31e9f1080e8ed8eb99fde66bafb29e3357389fe3785b60c78e229ef073e1b65e34d848bd4d8a4f251551e2d38d2546afbc205d3c6dab34d2b962b1afb44f1d22fc10c6744fcd6b636afd3cb414b16c2e0d708fe9f51ff19120bde693b028b6d1e6dbe37b4b8b3bc7c6f7a842701603869d3ded572500f085502efc8d3cc62b30e5cdbcb5e86d9c0d42973bf755df539cc0aea58f9148386db67bd2bf70cd12ccd96d5c66fb271416b772465228dc44b079178f9b766370b66a79b871faca246ca6f8f63be9f0668297ac446cad5cf4a83318b1b00ecbd283f0eecee60a9a37a27abdbdbe382e307970002837dfc0bd3934ebd008918fd4bd383c02c9d37f694996e989a49075767ebc4a2981ef5275455e026cb0bd70946cdd1fadaf251381d324f9efbb860d1b280c29685bab97d010676273b45cca12ac3966aae342c84e2357eccf252577743b8787967b40b07ef2d3d9e6c1a3bcb059cba0fdb7f0d4f815c242b8e14acd3375e608e9230ba3cf8718f43882a3e1e661a2bbe81830d34741f33473e263b3790abe67acf29f5df44865b2ffbc96975fd62738a64112deda5a2534fb0a23b3b3024df986391badf9041c593c313a7ca1e1fcffcb65b07b9a99337b4a4acf616cbe1553eb9541f38aa6247342905995233a28172ca13396b2a9662970120f82b92a213f43de7a232ccca3268265c9ce042d50915430a6c455f32277da42f9962fb9163b623231ebc080fa7b8e9f9021fcf85b98f9c483e4d2226b9326a5bcb2e7449ef029ae142d3a0f0c28bd4f7e9c51a12e1336f24dfacbc3f808a8f7dd683027bc948763b808fb0037394b8b41bc9b2ec7887e67584e03d11b15ca203b2bcb43f8881638c4e4eee7f846d09c7f89b7739df22b2c3acc235032ba8f7ae27b5b9d25733143e80a4cdde6770719c1e66ec2ce683612233e88fafff84c0745a98aa1254c8219c6c556348c2b5d1beeb61532d6bf7bde153271dc647460beb65fe0055b33fd6480dcbb9d7d471952cfa5be260c39721a8c5c89b9e966ae2dc9036451ec9f2c49433b2225e13f23e20c2bfba81a7b3a555883449238f7d48213e9f10ce19e76f1bdcfc73ee5524bd7d8be0a4b46784e238233c04fb99383ec7726f9717e1179dd14fba9ad6c2ebd1699f0ab0e57e6cad23875b029e89cfda06f51266ecd2eed4edafb51e82f2a506d57ba74da611774ca5fa2fff4a976519de425885e7d09219cf815b1767d4fc5a72c18918991a285086a6a766614a4d245387da50f28dd778fb33ab88c0918feba3768c55bb1f07aec33cfeed33d6faa4d34fd7227b365533c1e67dbc89f0b20195cf1cbd480d333ade1c9bb28308085b72ced430268c1492a27050c43668adc9cf8b8509447cfcd3c8f8d8eb554f704101786aa9ebca86991d250776a37a1f56fbf7d08e591f978da49c3870625879f70e2418aec5cba32fa8c346fa9038baebc35ad0068a4d03537aee14c2e71570a87490377fa8dd66f995aa044a522f0c7025a7ab2dd5ad30a64268dc112b7f9fa156df64d631f55f1d6edc55cec570a9c7372e29e02c8d4867bae249431dcf6ed2794a0183f0f7501201feca4a81d334c642fc8d38e9a90fa77429665e09e214797dfa455ff47c4f219d3a2cb0176bc2236455123c1c5da714ad29d580fb194f87173a18",
+ "tests": [
+ {
+ "tcId": 69,
+ "comment": "short public key",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b",
+ "result": "invalid",
+ "flags": [
+ "IncorrectPublicKeyLength"
+ ]
+ }
+ ]
+ },
+ {
+ "type": "MlDsaVerify",
+ "publicKey": "f5408337d0fee65c28851226a5fa81b58464632c78e2a9bef70d330f2e3a5f74d9cf676aedd1067c91a5dd5d4edc46f868a93ffec9f44e254e44f682a153aeadf228e8db7c5fcfed30cc3408e261ab896876bee56660d2a7c1d7eac20c5754255206a178f7156295065ce7876f90c48f44bc37f3a00e32eefd3a4bb1e298fe283d106eaef92a33a594253a2a0790976a1d04636f8672d28c06c852ea8bb43b84bff512996e7616963d5b9a2906466a152c7ea9be178be35405683b44367af85d2daad87630c1e21ba5490154f0141780f5ed0407cb0b975dd56d5930f9b26413b843b83f3693304b0038bd3e4bb398868060ea18c9c67099376470a50deb052e4056743fbcdf0341b192663bd1c21ba3b3d5666e0d0e29c4e1ed0759ab0bd9d1d355011b94e0ff0c049b03ddb7138640667144fcacd7265f55a07e5387f1abd30c037cf14d436aa855f827049215440d8007f61460500d943f57ffb6bfee6fedd2fcec52882d7d8da1aab29e892c8beac3df3234b4a7d2eca3a45c6623c52bbdd07c1c94314b706988a52029f8f8b06e874b741d72926652c78c6ace2cfd8864eadb2e4b39cafe6e03e4edbafa2747db9bc42f92af8b031e3e380846b1bfd15ade88c285d6a6fffe91eafc8b17de6cbc68575f323cc09fc20e49e8efd76f9568bec486b78df4245428d8d0d5f53873e11de65fda4c770b521a8c67f5c51d48cc26358954514447881fd9a42e5891dac7e1db5249d7861b322111e5fb929bee9ff5e9d5a2667ba93e63fc03040d2e82648f89e89dec1d1d2dfb9efeceb7940f7dcbebeb5a239cc1c54d8f7d52cba220d0634e15df46a58280bc5a48840bd39274cfde150f9ad9a40f6398d715350925f0e0501944409f32331a362bdaaafb3d8ce71c964332d6afb7e684f99951246d88081c86744ae68133f22c53a4b5ae258f230a98491d2d43a79a6d0f4d54a3b62013965ac7c82d0507125a38a0277f81cbc1d46cef2a131c6f51b88ec0baae0c82a6a0e72831cb06f9116cff5111d597e01057d32805a008f52c9aec3311139bfb35982789ff83bdd0c31e9f1080e8ed8eb99fde66bafb29e3357389fe3785b60c78e229ef073e1b65e34d848bd4d8a4f251551e2d38d2546afbc205d3c6dab34d2b962b1afb44f1d22fc10c6744fcd6b636afd3cb414b16c2e0d708fe9f51ff19120bde693b028b6d1e6dbe37b4b8b3bc7c6f7a842701603869d3ded572500f085502efc8d3cc62b30e5cdbcb5e86d9c0d42973bf755df539cc0aea58f9148386db67bd2bf70cd12ccd96d5c66fb271416b772465228dc44b079178f9b766370b66a79b871faca246ca6f8f63be9f0668297ac446cad5cf4a83318b1b00ecbd283f0eecee60a9a37a27abdbdbe382e307970002837dfc0bd3934ebd008918fd4bd383c02c9d37f694996e989a49075767ebc4a2981ef5275455e026cb0bd70946cdd1fadaf251381d324f9efbb860d1b280c29685bab97d010676273b45cca12ac3966aae342c84e2357eccf252577743b8787967b40b07ef2d3d9e6c1a3bcb059cba0fdb7f0d4f815c242b8e14acd3375e608e9230ba3cf8718f43882a3e1e661a2bbe81830d34741f33473e263b3790abe67acf29f5df44865b2ffbc96975fd62738a64112deda5a2534fb0a23b3b3024df986391badf9041c593c313a7ca1e1fcffcb65b07b9a99337b4a4acf616cbe1553eb9541f38aa6247342905995233a28172ca13396b2a9662970120f82b92a213f43de7a232ccca3268265c9ce042d50915430a6c455f32277da42f9962fb9163b623231ebc080fa7b8e9f9021fcf85b98f9c483e4d2226b9326a5bcb2e7449ef029ae142d3a0f0c28bd4f7e9c51a12e1336f24dfacbc3f808a8f7dd683027bc948763b808fb0037394b8b41bc9b2ec7887e67584e03d11b15ca203b2bcb43f8881638c4e4eee7f846d09c7f89b7739df22b2c3acc235032ba8f7ae27b5b9d25733143e80a4cdde6770719c1e66ec2ce683612233e88fafff84c0745a98aa1254c8219c6c556348c2b5d1beeb61532d6bf7bde153271dc647460beb65fe0055b33fd6480dcbb9d7d471952cfa5be260c39721a8c5c89b9e966ae2dc9036451ec9f2c49433b2225e13f23e20c2bfba81a7b3a555883449238f7d48213e9f10ce19e76f1bdcfc73ee5524bd7d8be0a4b46784e238233c04fb99383ec7726f9717e1179dd14fba9ad6c2ebd1699f0ab0e57e6cad23875b029e89cfda06f51266ecd2eed4edafb51e82f2a506d57ba74da611774ca5fa2fff4a976519de425885e7d09219cf815b1767d4fc5a72c18918991a285086a6a766614a4d245387da50f28dd778fb33ab88c0918feba3768c55bb1f07aec33cfeed33d6faa4d34fd7227b365533c1e67dbc89f0b20195cf1cbd480d333ade1c9bb28308085b72ced430268c1492a27050c43668adc9cf8b8509447cfcd3c8f8d8eb554f704101786aa9ebca86991d250776a37a1f56fbf7d08e591f978da49c3870625879f70e2418aec5cba32fa8c346fa9038baebc35ad0068a4d03537aee14c2e71570a87490377fa8dd66f995aa044a522f0c7025a7ab2dd5ad30a64268dc112b7f9fa156df64d631f55f1d6edc55cec570a9c7372e29e02c8d4867bae249431dcf6ed2794a0183f0f7501201feca4a81d334c642fc8d38e9a90fa77429665e09e214797dfa455ff47c4f219d3a2cb0176bc2236455123c1c5da714ad29d580fb194f87173a18dc00",
+ "tests": [
+ {
+ "tcId": 70,
+ "comment": "long public key",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b",
+ "result": "invalid",
+ "flags": [
+ "IncorrectPublicKeyLength"
+ ]
+ }
+ ]
+ },
+ {
+ "type": "MlDsaVerify",
+ "publicKey": "5a04d37a8c83d373ba07da5cf96806002e3635ad8add42ce6ee9902dfc9a1f27cd931f803c2103d181ee5228549e4f2bb5cb4bfcffcca966f1ede24a9958ad53842a15db226adf91810a689f440ef71184a2c6b4f40e5f133bde58fe9331defa1aabb9819abdf9cbac8cc564ecb89d648cb5d66a09453da4dba410784fbc41db6216e19856de2bed90f6c30f3975a9b7bb47c2cb63e0b3df09331dbfbbc23c15a45844ece88226fda9071185fabc073a8e832e7a940877972734ca3bc6bd66bcc84a61b683a3e59c9453bb1ae493ea1f0988c30e05dbd65e8824e73d7b335465e119f7b5cb640725121565c5610f7470ab86fdcc18bb005eab35929df14652a9771a496ec4d44ab84688f9481bdbbf79614e8c4fc611e1086bf2d4c798174039dd9686aa9f43e4cbaf94f9ec0533465d327e758f99637600455f5a51e9cf4220e8cada21dc8a5c650cfb00d964c49575306862c7fa4128e6c65503f93cd3d2c079b7ce193da9c9577cd7deeda0f66c087180ecb7d561309cc1a2a9e9da2093ff5cf1f8bc15f1d1d91f6462eae7a9122234e660b1739b7db3043b09a1bfe0af241eb0249efd1f3255d7bda8749bc0fa6c193b52cb8b1d3e1b4eed21d7d7bd6f024c680aadadacf51b5f0bccb09735594f176242cc95fa4f61ce884b73f0878dbed24062e219ffef82a912435b55f954e58728c79be21cec1bd74b0bd80f5fd0a5cc418c8c936f2be63bcdd3902a0a4bbde4325478fd58bfae7b5dd977139fb7dda993adc68dad65208bef03fb2a20f18ae37344a2a858dfb47b2db4c24488650d19f4aaabb43fa8b98f1bee7a4d7fc38363bc9711d63c691feabcf95336c67e2ccca3f927641ab8d9b97f709e96553ec1a4948503b4783054c9d827756bf7cb8cb74b1dd5077330b2c2ca7460de521a591bbb8dad8575278e62b9129add32f30165caf72c05788773cfd4d7fc6042a72df403c396d496b17893a9694e0a067bb4d625e409ad5f0e818a81f314694e6c3eb63f0c7f468511462497eb40fa7a09d0d60e5d4bca7904de88a3b9b3df40fd4854142302481fa7458d59dbc295db173e1bec6e7c9fc6f1c46a4c469b63b286defbd30e1af010ae36c9cb50ba5e201d7fc5cc5386eaefca0d81c22f49a7ad8ecc272141e58e90d6e88c228c9c0d3c0947e13daffd477a055f4777761d060fe2505c8de34ccc96a3147619d424650d6230840c3bdb1a86db1d0969e1f5db8b98a8a328c9c2ffc0c90732845ac67efd45e29d7f5335637683a019c67b323e0ecb627333568a6611cd193eed5d12eff8528ed26a37fe8f0ea7ed3b65f434d69d4aec0b1f4a2ce9d44fc111d9e5a6c99f346379beea4ba3b5223eab08dda2841086d6974e1c638b82d5fea7bc85c0eb697c76265d147637e919725bc00ecbc66163a8c589d07d26a61c781eeb47189b993d5fc31876242c79b2943a4aad36933d576c21ad62596941fc9bd4fddf223f646858a726d489a0d89ac38f609092660fcb9bba8b00bfece9a1c2fd7d5cfcb3ed46b75a7d5f5f89694c76ef76443e37d0cf4e1bc34f18d8faacfae991f2d10e06cf46ca7fb40ebc4f849b1c6c7d9f33ccdbe9171c59b48b6be2c18923bbf33ad0101ed73af20150885dffc2f7607b1039d4a020a597acb7ebdff1b591ef32c213d8b5c67c593e91e6c123f82bd3f55c5fac30ed7c01bbd137adf7a1dd49c4338235da356eb6f4a4138626a832d2bdf590a15a98258dc283bde285d12c1bb96e4c664c720f8b04a21f70b70c6dda30402b8995df99f72d987b7725ab4426dd9a04473c7079aada56547e9b275626744ef69c2f867752e0a9fd18dc6ddbc6be74bc42e23235e8d12a66de855046c6dfcd4e89b34dcd0d1eb1b0836b74431e8c7154b14f6077dc6baf602f86afbdc0dbe1c1faf81efd83b7361ffa9d46449b2a10a040b1857cddd5f274de67559006fab88536365f63ff9109994d395baba2410e613548528311ba3b300b20ea1b29a333ae40c6e77f30d2e0b2cbc47ffd849028189489c580aba2f2bb9add957a4b3257e3740e81515930419b28aa91df5ffac928857830e20a3ae970ddfc8b277f656d117cef643dea29ad1479c1d9d5f5296011aa5cee51dd4440a770306a561927b52fad013801252a9714706e3d7aa198119467bd5f0f4fc1a76a5a727b0dab83de31b4581858be975072809cb1f7e56bba1dde4af1122b5a28162bf29fab7d4a864352af1699f3456f4d7bd72752d477ef16fe44bca379259f6562fdb8821e8bed4772b3870397474929f5354c360b06741a9e2ff7f62e3765a1ac1eb69507ca0682282562744650769798b91b92f7b7b6e251c1d590aeb4c69154f262d3bbbf32653cc1ee51274ef7137d87c5d71a7cb4db570b1fc0f98627aa025a3cae57756ffeb5e2ca0dfc2cebee981e395166470ec1feb9705a78ccaaee282d3ba43073f9f4aa8026b581c2555f2a77467e0f4d9d25ed02d59e1e2d6968442bb737ead64e377cadc229dc70303d5d0e30bcc620dd22736f4674444b54ce16658058419bbbdd2b75937df077b2bb131ec9cacecb6720b97aff8907785d50d48d6896c54b262fc114d34421d3e210e4a393a357011eecb39a877fb2b65da40638be4cc434a35b3b215e3fb673a302656c96a49d6d007c1708fcda4c2d1e1699969835d8427c1b34b14660c2549df232246d729bd75327458895df9395f06d6c8f817f9b6ff38c48df0c0378c035cdc3a3cc9a8df239597359",
+ "tests": [
+ {
+ "tcId": 71,
+ "comment": "private key with s1 vector out of range",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "643624d994e78995f463e4fef0589a691f9eeabada4672ab948204776e6f973053461e5e5d506bc427aa31aae371805f0b558002cfab1174da48fa457204d4be9e7c4a5cef4f2a3d12ca5baa45ab91020a01455b1426fd3651f8d82ad270929fd2ee597b313a663c553f283089c1d4a068bc8f1a72f518f2ae5e0e33531da37eeb83810adf0f407ef09df510319c8dd3efedf52e59dcaea158792a58420b373acc2247e4710b2e7e3d17faf81333afcb5608a0cc5803fab5ee1533fd63724cd1782aecfca3b090dc61907ec71220f20758f1edccf7eec6ba904ab241b151302b1cac2c0aa87dbe8290320604afe1fee787e5db72dce3813720da68758541d2d2e98db1719b4470a7a8924b91fa590701fc3f9b74b56d608aab2749a270a3361a6b7e514f3520b35cd7b973a759aa8626431305dcad6926a8d835ae9ced34557773c90f293ad98cf0894c23039c0b3dbad65b626cb8b7534c89e8a60355d135a35fff6d00d6ce34ffb846fe02bdefc7d9c2dea6148eff121a964d1eba401d2e32fbd68c3eeac48a9c13700693c1b6ace46fcccf3f467b7d2eacb49b62778ca28df4857918aae2c0e38199394a7b4cf0c19dc10c6a5e4807245f057d50471ca585eb8369fc463123d5daee37ffd2bdf33e01fa5220c92e205fecb89cccd17492d62c0665580084c4197517ffde7799b3646a405ad243bb40ef1b11baf105f33245ab4e8844e792dd69c67119cf865d158eb90836bbd86cf336b33b62ffea13bbce0403e444d4bedc25d65b9e32ab3982fd9b8a2417c8bd76ce284df061b4db54e840f28035e1b7bf94e42a2cb097ba8a0d4eea197596ba6e8ea78613a23044c07ab602d6cba7978a120deaa6aa6de89dcac525b8ce47279138e21255a9f46a4b97888093ed9c7a6849bf6ff7ce6192b381557ef3e44f809e724ddfa502ac7c9e6154424ccfd60d8cbd2c43eb811d042a7e504ba8a426091319754327e45decd1278889e206a9002e4a45d54fa40e512c216c09d9348337b1ff64dbcf03d974bc1f15f036768e93c6281b14d1e8198f85fd812d421766d19bba569f335955a058b35a557157e82a1a3062e76686397c26279860417c2441852653b3b9304db38acda6814d12a6dc88b307d0d055e68f6ca2bb094e9aa22f2ce792da36ef0cbe0d04e7d8c76bd49fdb4a0faea798632f0c28349ff707956b40fd7944a09d18e2636b1e2bb9d8411fc450547775d218002cd7514e871d76adae54242c0f62423142fcd88f7e82572b38393357458cb36a8f6a2a0daab1b593f4b806e79c315144d4c526c7ca44c3876054bdbe81d9ea50ffdcc55b4e8b73e44b7c01c378183b1a638deeeae46003abc4db3a55fe04bbcee3366dd61b8461d286844c8468b8260d501307537f8484988c8cf8f167d85b288e89f21ba0e0b4fafdf94ac58227c3fa5a921f751afe981c5fe48e26fe780adffd6c4ffbe6609d0a822040e90a3d5ee047dd5cf86b2a80f117c9316f32535bbba7977969b07034d61db21ab76b87953d96d0c015347e797b68f5f912c6af0d2ac0a7662d1d1ec5e3a0bd0257730f2729c142e4eb98f4bc6ce4873420222c01020cbda19865ec27577aa9febd400854fc13eaa514284f8a5a5e8e3e3d1a3dd41990b58e1eecb7c2d09d502c23bed2025e06fee4bfdb05d7c73cc4e447aea9a98d90dfe72325daedbd989fe96f27c8ed3d10af771c12d84e488cc52788eb68adbfe35259135c12afe96f4a97d0e30bce518f25ab8e1f5296d7998406799bddd01dffd05247f2a6f565b1609a15f9cd3d1feda69e4842379ae3b0d705d88c0f47613c10825a145f5d8da8e527b3a4ce3caf9dc3b3559b7955923288443f31b164ac6058ab228ed19d73ab2dc870497969648071d78838ac13aaf43e50a6a5a83eeda8df974a56ec134ac37a805d3939b55a3211f89e0a0f963498cb6bb44f9f897a9c7b686a05f813c06416c923be169e7ac2fa2d12633142d2d5f52d8655fa76e1d7dcc63b1fbe97ddd65b886ce3850480521d36f8f308f5a4eff5ad242374304d238dbedc8b13f2ef5ef6bba9c818733be44f023d27f79dbfa76a0eb4e20304de0c7a1f38f705ff6d5a9e6a1076d0d3cc9f83516bdfd9dcf5537597139a26301d643f700ffe4834f4f449b5909862e25b60baf5941fcd9e264d9243e38aa813149e752e167a305b7eeb24caf0784baeac299f23578f2af1d85caf05fe088f98e1504cfe3f551e1ee47a3fbe30cbafa7ff7c141a186e43a1a52589a92f7584dc1fe45174a1b225466ba847cfbb47d55d9c5fe7a16f4106c4deade55d6c63f7b3ca58172d79b849874cf5e2c7f325effb2e4a632bcfd56a06b038cfd46a96949768a1d684a3ff660f2f8d252fb3e1a6fbefe7a7b765fdda9287b595061a5afec72e27d054849e0c905f8178b82b7e7028b2c9061b2c0a9a8d1137fa8bb0b5a823c5c88201efc49855fc2a96a49035b59d17233eff0f6b574933da9a6d4d179e7da108b82c3e527b492a0c3545f945ff495d9ce71fa5fe9b7b44cbbfceffd7948eb7f3c14b5047357572f9c7a39c8490f79448fbeb7f9e50f0b38b064a19230e1a94ec7aceaa1012d721a7fa9d940647f801c584f3a5cd4c2c3f65f647e9db9ae3db508565af32aea6800731873a33775034acf26b6dbc8c449a360a79d10d2186ffab29ff5d2937bf0f1c2efdb70327ee1ff901f54316ea08898310fbb8a94e6a8fccfafbf73394a782419b2838a2ecd53f16ebde96d70b1fd3255ee14586a63f5aa5f42b56b5e771ac6b2701238380b5427bd98a9bde7383e72eb34b257edaa669ae35a01f022cf0a96967e90ef23c72f2ec3e5cec48d120298d5a2ea259133806c5c7c2a53dcc6aa2c102c0ab3845a5785d63de6e58d240fabdd813155047dd55b3e0a8e0315eb427a83a4b754ca5a53b235b38df8acf537b1f67d52aa5d33e7f57ebbb89f524f30245362bd90f12c2e6110d19dd20864f9095e544b0be72c70d4d1053c7ae48e4fe5c4f651c18ecf5e51d68e2da2da6bbbf33fb1aa3942ed616deda75a03f8bc4128342fa1f4f07cdc6fb9c62e3a12bee90ffe5163153eae878ff1d35db72f7c74bc6f85701b4886a546d435e5fe10c7c1be65769ac5b2bc7f0aaec6e81957cbde411d18d7a0ff834d107507790856c148e564875c2bfad46fc9ee3b948636169b85f132e4434e994262ce124636507cf03bac88ae261da6443ab1f92ececeaedd41f9a418ade3b4a33d0d44af62b80b461007cb5d31e7ab254a8ad9de7a10b0894d2d47f94fb579bd775ee2b3b4fae126bb5af0a645eb80afae8631eeb06822a54bed367aebba0d29e8efbecfd9722ea55ba9ace571b0df38376c79deede6ed64aa5febbfcf865d4b2db00b1481235bf3730745405d4982ad27353eb00a506ac11c5dbefb7ab1b86aa99b451d81672990a8a5edef63aa9d1f124026e45cf6fb38bc4053bc7fd0de1ff8ec88f3fb8891e784560f9af15f64cee69a79aee5f180f498a0cb6a69eea5565eb97cbc64089403e45cf2c031af3d442774f048c9ff04e3a84693b20915bafdce5fb7a0156c5b58d157b8f8e68d70aa1d0cac1f78ec91c8f32bfcb25cc36001ef5d4bf18701e624a1e370a7ee2ef4bb5675a7ab4c6d148e6dd662364ed7f54fd2a4acb54568ff957f385290a6a34d3f80ca3f876b345da99ffa98effd361f20782111801320b1909ee32ad849c653255ed418ff721be631bf3af40c01ac90c0f92578fe22c8bb201db26dcb62f02b916d3a294ba4a4c272f26e2996649e6e7275a664e0810561e5b25e27abc703a591c9fb2038d4293da0163849b505c39b3d6b4862dbc393bc9c7420badfd530182a2b96260e75bdfa43b6423d2443b0ff036c468c5cb2ddc7db532d11541a5f6f132e98b0ce08097839aa192afe99f19e261a796ed8c123a02a0b26ba2963bd42c555876fef5800e0f08ae33539eca9d997e450ba040399971fdc18c7340ba6f691e6722475e71e92dc6490a3420a879e702a69cef3a3b5d49a6dfd4d7ece7b9368a169e9125e1eae1cb1cad85c3d8c70e264d2fe890f40af05805f3f3feff60858b155847a8cde0b5c8b3f40d8b22c3ee77c66f02fe55a67536a463418d393818f6cba0cb19ce36a42f37253d9d801f34a010a3a20f1113a1e7bc108c2fee2c97d03661bdff5b74402a35fe563d16fdf66dd4bd741381e7dc810224668bdfc480e62d25836dbd41b7ccc1ab56325b2a8c216246368369c228a42b7cc1c2baf4c021dba8ae8e4cd212f21b6b74d3279e2b444bc2ee6951995b9b069a78cd9136288a51d56f2406024d144f1acfb4828aa6e848ff0bba1eaa73a4a820e616320543299d165a7d4de422da83878ca1726d0b588a0096de21d895536cf13fe5714ded541399389d61471c03588c75d9f8928b1d379dee9153ab0fe431cce09a37d93a4d4008ee7da908bfe3a229130d96fb98be4c5b30abbdae2a162182d3215a8cd6f1ddd2741fa1ce51185d415d17686aace306027430d89ad80a18534a614142d6fa355e73001eb8938922ea54f57cb5d5449d076974a80c99e79a5b196e2a9b635a9271255f6c7f818bfa1c323d4a99f9acc4dbe4eaf412196ed7f70e42586370cccdd9fd0b1830499ec0c6000000000000000000000000000000070d13182128",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "InvalidPrivateKey"
+ ]
+ }
+ ]
+ },
+ {
+ "type": "MlDsaVerify",
+ "publicKey": "5a04d37a8c83d373ba07da5cf96806002e3635ad8add42ce6ee9902dfc9a1f27af2b332e1a44672f757802793a43b7e9f1927fdf4b89b7a4ad975ecf8bdaea48583cafbaf30c7ee6f668c225ddc25ba1d394d920f435173ea8453bc83bac373e3b6429f48a01c7deffc3ee5a986648a40dfcb31662f46f3a07d22ce9d486a0be0e822c1c75ea58965b9167ee08c9e6b07e80be89b257be37a57d5385a8bbf5e4439bf3aa80c17874a9f37d7a62eb0baeee9893be6e0fc223c31834baebedbd9611225d25542d78fb659b6f41ff3182d94b3e471f8c837f82a42fcab82ab6254a67632edf81f6feb720dbcdaf92c92a05f68db7fd074349cc54b84865326e3dc45e40645c95b41908aa66d38dafdbc4ec559cf0f86c5bfe7c2a84e8e56ac5bf97e88456f7995d77c8d114120a9c7dcd3758c182f8382f8f0ab8cabd451f71c72daf985ea2f64d85b561dd294c2f96abd8f351f2821fa920ebc8fe576aa4a9253cc23ce45e3fb4695f181ddeaa2ad12e96fb0c658e12f12cbbb4c244efe0b40b09c0c8dffdaff6f47a8c1f4ddcdf4c5e62eb68bdf66a63eff871a31fb1fe3cc67db129dcc8daeed2ad3e80ef54e600bf7494752d890e7183fe7f22f9ddd790d25a46621820b79203d584aec35ad52dc7fad76a9a7c69b276b7fc66ac7b873db7beb6d1c2f6bc8ddf11b9cab1b8e8b321ecd33bc4fa548f99cf116379ad7a7b20672f2e7cb6432cc2d792221ddb59ef4f62bdace3bf3269888085f703cf0358235d22f3d2f5b19ebbb5692a39282aefae8015e39425678f982eb31755804d4f1e698491ff7cc94157055a2276f8a9576022cbfa45982214f356dc4b5eb3741e12c3f6361d9f8334f175503deb9c03eb40c6db999056538c750c99a2f55d39cfd104f5c9e77c462b127007e5e24775726a9f7c841838eede9f90f62e35a68dab88147448581bf09cdcf927afb10c054c56f4cebc4b18a4e01427e0427d1525a3857d969c5823920a1b56436e8bb484d4f0e96e17f71db9da6d1317dd6a6029c4b6ed21fbef7552581d56d786facdff8f5a225c7593cdc9bb42c722f47ecde0967dc0a8f1a5c99ce711f8399f7a45489a80e55b982caaac1e2728b84674eb27c76c2f0b67bfd4e1c88dbb26e090b9f3e19954d7b32cc33bd331996dfac4187d76b75ae71e359c93bc1a848943ee06c933f757afbc1d68d63c8e1ddaaf100069f6160ed97b3ab56a36985a45ae43ff8504e2720ea0d203766a63dde7d9fb45e7854657f7a30705bb09f9591aaa991ae8df24c31463c83dd00d02ce3493b92e3f4595bb0765fac637a5132f83e29d50aeb53b2ec911d0562c9ff4972342eed56e85f06e7ddabc08b4eff380f96b56cb09731ac82398e1df085deb8083b61bb52a8d473417c1d3ae2be90de8435a062783477302d2fa8ed939dbee525fb5804de60ad4abfdf4d02ad41453536cac2c9d5bdc3786628d3fe45d42fdea409443df330e5fd0f4858b6cda8c0a63d7b1217e5dc771bda256a823bb30720e3dcf2252959489a638089bb89aa24d688143a6b1a76172e7f0d5dbca3d033a369cc2af5f3ce0ac4ddf2255a80c23e2d467a96ad105de238cd3ae03ce1151aae6888f3dc54fe3dc07307a05ed4b0844363f0af2168f64d7feae7059ee1dcf5a10098f402f401cdad049fc4a81e1c9527c973bf32c8b7721d1b88f87297da77395debde40f1ae549eb56b2cf6ac15a7b2399ab5d96692a82239cd5a2d6d469a64b3a3154b2ae81e9a42189efb498ee86441dd039e38ac1204a286cd6d08a2218ea2e77e6379b40b81bdc19489a828905701b5e19d2ad82b7e885310007161a86a21e43fc70012b5f2c684a2cf546d9f623e593faab383cbf5879a871802ae4c9d4879bb28c5785b2d6cd3a83c8600befce72c187d48f5a879d9d9e57b3c55916b097f04ffca9aef8e3e4574bfc7db6a505021a800fd79a856550978a899dab650389f55c0654641890d0dea6c8ec177216cedbd29395a126a66c376d432d20d0bd00b1d7c1091f85af2dab7d4e60204beacc90a3d523b0be21fefa5f4e892130379c2f947889a28a2eb2dc8cc2b7d0090d41db53e9279b54e1243ce17089f946d112a5ffe1ce7dbcd4e849b6b7bce239b256005d46f7f1a2e2af1a048cf4218881e015b6cf4c7f6440f5fc61197f79749da80dc9ca03e2bb23afbe8e3656036cea31ff18ff07368a4df0b053c2d4bbb3b929bbf42cae74c88004b93493a42ae204b156fbf785eff086b5fad30570e88dcded140f016ce113f4c8907ccc0387f3eb4958953d8cacebf890666f3cb312a2e87555d93132fa88c1fb685c96b4a45ecbd3d274909ccb1f5bdd2d392a733de7cf1c87c3a8ea4ce905141116b2037c7f5adb387cf618deed6ad796711ceada04ff33d7930186582756d7b1c418ef02ae7399b431b38198c131b7a747407e2d4f08dc19f8a863e808ad6078caee2c8a1554d0f582eccf4ba0ae43afeb9cc62e2a5909ca81ba28ece723e141a7ae3317afacb3d0b61d9f199b05cfda42b750834c5f57098be4476fe2bb690481e7cf509e5e94d929b256c6df712a5125a12ddddb68e9b11dc0523cfefe2fc431185b96c5ddccd8ebef1361e2e01d812da62781e29c934eb89d59ec45adcd208ba6cc4735c59711452de1f1869861e7c10f626ba3b0872e7024b370eac3373223129dc44546ba9354d094bf745bb0e3ecea28a26cf1d3750f23276cd4954a08c05464eaed3e5610e5b4e4cb9380",
+ "tests": [
+ {
+ "tcId": 72,
+ "comment": "private key with s2 vector out of range",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "e38e198c1f8a94a183a90afeb416b870426ba739bce98da1e72efd600f13d38e2c0a51c6560fe6c1ac2fe2de032390fb1eb990978269ed755018ec478bf862632bea446cc6226d0bd018488fa7f8531b4c72f94c90915deb640eecdf9ff8114c8e3710b08c41314b2f81ef952eed4a3a2c6cfe9f42169af472e93a8722273706a3ce8c620be45ad9398dba3d666c998d263e35c6aae43e00835630397597f3cd22bcc6bebb56033a267105443f4fa0faa82b5637cf19035e97731e0259a2812f7432da8ecb2a8b2872b0ad5705f5f663a47f5351fee175e42e3bdde05a8d778bac9d17e80c647f667df6486e42b3bd64acf37d6c0c071c3766fcb0859310bdde26ffe2900b5bae5cca83281feac3a754ea92d6de02159ccb6b809e3cb1a9cbfc63356ed339581484d8e42cb350e0d7b13cbf0e2830e6a9dd0f45285cdee709a5ba20903c5a1faa4b765e9bdad09a96867b909e6db4fccaf6437c0d70173e84a92b729c926790e2d8ae3316f4ab4b41e326188fbcd10cf60d7a5f59734eaccd3e831dec33edbf66a43975f94d03f67bb0a7503d9342b61c1b658a0bfe65526347a1565d69d7dce2e9b633f1216112599985e714e27e6003473ad6559c2338d60ec04ca22d748fbc07b4bcb880ebf488e6c0be5d21d0d83373772123ba8d73a6cf9533a80827789d3b83353e521ac1177d0d8417eba2b98136762655a8f5a2c9d4e0dd54befe06905b1ffbb1dc1f7bbb5056c388a2fc0cc0550ab5e772a4c99ccec57ba217a89b437741db46c5c08468639d8b9cec4f9a9c4e4ed109509d8e8ac45d27f3c2c2e7dd1640c7be4a431cd250ca2756b319341286699e4483c9860d88dffc38dc212928c9e73c4f0c682dd95e436cef28aa861e8f6179d92534d998fb17eb5664d02c66ad680a7c12ba3988cbe8cd601392e8c243192463c8ab93fa68e9f5872debb3c6dcb0cb91c4bb2fea01750b3e8b055761515aa74d3116115eea65748adfcb8f3ce66ca66ca81327954a95a04fc9416604b6c9a2f9ad794e0885f1d5424ca10b3d7d8b28c5211eec82bb5d4d3bd1bbb82555c7d0faec1f78c4ba885f0228542caa5e8f9d692839dcb96cc7a0608a38db772c4522966d028c55b06011a411f3cf1de98825eccae3019f66299961774fa65e54ec685d2347f698b99672870df8d15b1894c174da61c7b09ddd8ee971eeb21f7b685fbbad1d2dddcb553d8814abb34edd4e769a1185473b4d5aa425b212ea744c34c99e7f6a23875256a6a166d4a193acf20a303e76b555b4038f30724a427daf695198425ae541bc2cce403206a58a5b01286403d5534eba27c21961d92d169c1489285beed2b46fcc0ea8d96008ee5b4e31e4df2700ecde20a0fbd18c5866860b2a408028f1b0366899a863c797a19d630d3dc1aaedf4a72c6604fb1520e2c1f4bd990406a3cd66f6685e8a5d5514f02427c9f48be799eb6e60d88a5747baade73c6c29890ac1c2cce1c706b9446963b54e170e45d764d7c2079e5ec91dae31619fb9c7660c818c748e68cb77c96606830d941efbbfd3acf111517b0c4d4a9badf954c58c0669bdf8cbf4a7aebdd95eba7c56681e8111552e2e5622bbd3b4df3f0d79a9f23b92f96aef4926b3660e8407b14899468ecea5d7bacc410a1a04e9e4636bbbb2d1e4b5f4e690b12acc453f28418a4d76daa8eddaee29494b4d1fd80ca86575cdebb6c4817d16174cced964e6ed4c00d40cbdaa1ff86592eb870ee11339f691f01d7f5d0d2dec6eb064cd374d30a97a3f34fa4d9884c002c642791c27074c02cfb631eaf412c4a3401d5a4c011aec0f13ade4e42fb1c54ff0a453e2a3d912183f9bccec6a3a9d5b3ed150a5d4b1f864b685deffc941c1af2b252f27b01c831879dc660fed23365a8f538e8ea45342ba34831ac11156748706b1291481e796382ea02212b32b0db62b17674571f25db552f16f32d8a41ccd069ae067bb6380836258d8ca84725a874cb600920d76b75bcc462fb3dbcea102b5686ad7344da070967ba2251e7d3eb6f6fa1f0300d8f639484743d5c3bafe5a553978e183b89f6b7fd097eb53febcf2bc0281bd2c32e347adf2429372d5d7cec86d3f122a33655603cb8a50a93401ef9f3bba4ff6c809a93e2d49ac15de8a54d2fa7cf6659dc48f832769957c31716077a8b1605e644ab207479184719e0e46227a523fc1414e97a1b1c041be55bebbaf0b220426d36006939cfc33836f4d8e0532ff21ca001d5980798d2175b7fafd7f80395d525caf52fd90d908acf7dc45ba9855456627c860c579ea74c28d4e67d8d64b93fe4ffb1b8764808ea4bcac269efff956dec080668a4472cd4a524ccd4009912ce69d3b005495df3298c112d76acb9a2171b020f7c245cce59b5ad9bca40a90f3c417d6a7f47b5138896735e5866336d665f0322e2d5b6110a2c49b8457895751899f912a33eeb79b1f3359f0fa0c8e9f7bf7b08d870524b28099ddb60bac8ee821372f3799f2a7eafa964c3cac3e74ad7a3a46f6508321b5da2abfd791748a7a1c4ec3868cb1af91cec7c4858b532c7777b73a3a5711b2880e182079b487b1590e2f9119b2a19af7ab8560bc3f89418eb3eb2982dc2512106ea7ef78967675c1bfb937e019936c82603c2ba920b533a483f85a468f7c38e6b52654e0d10ec4750ad1d554e642ed53f530a1d6d89d984a5fb02a504a8ea5610582342595895fedb2514bab4b568da19c35c0bf422f0d40d59693ea245f7a05b282ab6636280f3001c5fb45ebb10f9e031b16113f6ac3f65c732c38d134693b2484a33480a7eb671dd6d7df47cd3739381c8349d3beafb551ad903ea22f0c0047d8356bced4e1dd8def0fd4c51da4e498f4efacdcbbe691ff1f68b3b0787284004641a643325c765a82c68c73c458d58c0cc23690e9aae2320b2b1d5045dc62b32ee1277cf27ba578109bdcfd8bef283eab6814c07414e118dc23ffb1164f8487ebe34fbd8fa27f9f6f7424797db403910631c12d18901c1ef32f3ae522682475c6e864713a4d3ecf7c492ea1abda9b138a994249a371ebcc48b5dfe9ceb2ec44d8472565f1f4a5474c869cf5ce5741d207473d56105b1e589c3cab583d89447a5c2465d6121f01818731793a876539e5fb8cd90ccccfb63d15eff0e214cd223ec54a6b9b28beedab721aee3f02ce64bb3ba4590290bc299b462d77e14683c611adbfbce2eb855c102c196481c73637df400731f765d525932b8f976c275a6a03fb4861d06540817fde3faca07909e038d2e45a76af526fa014a8764c702986c495d409e6f11842c0b7f22f3145cb5ba56e5bca6ed6cbfdd9d79a894606b982747159c7396794b111adc9f73c16a7b1287494d4756fc52d71e39d2dc87c9d698b0a262b69ee3d189125e664d303dc9280277c062eda6bd6b57841400e806e642ec7dfba6d9968f16dbe8cfa1af146e29aac96fe4bf1840f0dab6d371ae922d88a9b204b528f31e79f5d1e7ed67e36778ce5c2643129260b937a09ca245144fe10faf3392ec6835bce469afad03eb6804a95642d421a1963b34bbcb604cb494ca58c5b52c11e6c1a2930da061d779e10e80b88fa40f683a40d865725e4ae7ef4b3045fd3459e077e34cac939f345558d927ccd2338f8f037c6a5000dfddefefee24f3f0de6715c0d85385447a70d2aef6772f26e23f158f9af0131e6a2f967a5d0a54604b1769eee4390984a4ffac0172f592df4b04200535751135a732b7e6ff373057953014d35381e86e9678274630df9ed86e0b8ec93f1240305318fe889b35e0508214a6ba9e2e2f2c9b142932da60fb7929269bc3498c159e323638b9ec7fcf2ec09213535a1250fd49895f5a63c3d22b851239f5094aaadaf58e88ca8de975a1bae861439a6cb3dfe67e615fc1781a11327335fef08a79082794daf5cca4e9fca3bd60899800854b01c31de872f625bedc4f1b6d659584181b1da46b2fba689e622e255f05ca9a619a4fea28dbff3aa9a5dd84cbacf6ab630b855aea6ec6e9dbf95a4815ffba677af4ce6b418a4030b68607d5edb7e470faab648156cc2c152b21a381469473e3c0b174a7eefdd8eb4a47061b883123325dccdb54d8b50412a286e940224069810181be94b3b2ccbd40aabdef6aeee34bdf7c7009ca614cbce081a0810e42ac8082ea6f618fef92a302f5f54a93e261fdac80852add599c4b87aace0dbbac0585a04812f2dbf0185d9c06b24db40888ffc5ab02175debf3c4883fb8010de69a2424280fdf64008ab7639973933945a32dfe185823d78c4ebc78e12d2cf656fccb603825d81feb35e9246a5ed678fd2ce6dcc12c7f89a7004f32f4a3470e040bfda9f6498ce518f8901261521847b64e3350d0a5fdce53e38cf889f79322698c826b489c4836b383c5a06ebda047b57454b3c1fd446ee37d7ffc2be3b4b290210aecf24a3f15d7c94d29009d79b0a66bf620dfa6c84070ff04da280c244fec671c6af6b8dd969e772d056ab8e9496334baba49550a991613873f6e1bebb432ac0787c744634c1ee060121ccc8d35543b289298579c4f2a6239139f74e8349634f85a03068e4b01b6d8891bccce4f80c0d3c404547539bbabdc1f81b21242c4a5557bdc4092a0121304adeea0609141ada0000000000000000000000000008141d1f252a",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "InvalidPrivateKey"
+ ]
+ }
+ ]
+ },
+ {
+ "type": "MlDsaVerify",
+ "publicKey": "2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
+ "tests": [
+ {
+ "tcId": 73,
+ "comment": "public key with t1 component set to zero",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "0a4133248382bb1fe24046be1eb9fade39090c9428222eeb9ac835c76ce6baa4c40121b2778514c711ac2981d174a16b000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ZeroPublicKey"
+ ]
+ }
+ ]
+ },
+ {
+ "type": "MlDsaVerify",
+ "publicKey": "66239a16589a522a029a216a75a70a5b1c9c49b6432bff6e4be262d4d999c01da4eab195cc9eaee7ae840f2917dbcc0218e6439d2d4198bb0db2b0e73fb40bd1d9daf16a524c0311c9669874b0a175d8b10d5564f1af8007a1b852d1576231e77b19b7efa5cf2fc8d3869bba336b205d6a3ad7a65fba36962ef7ee3aa290efb35760bf9fbd58894c0b51bc447c503245cd5e62b0690eef1b17486080a2e5d7f354225abcd11d8e8165f7bdea98cdc9fd887193eee058913255982ab3a22ba1db732e0645bcd3588a8b3c18bd929771e5d9022c383caa1b998eeb5bc36c01936237d703e283caeed671c8151f6de810be4d22daa25a862ac16a622c4347ec92c03d6f12587cf5d660cecda689b0ee75f391aacc270946a36242837961723a99e279e12a04a331a0511b021be538dee6088288b69494292b7756bb8b50cd14fb583b64dc1b5ece98f6389ef07eea028bfe0250320c12a8e24a4afd83df9a178ad3176aeba108fb3b102313a03c9a75e1cf3f7ea6094c2fc7480415672d4c36826435ffb2332307847f1a408685decfa42ba62c9adbbc995aab75ef5a45adba5ea611783b7e9d70002fc1ab1882184fbea63d55ea407243a4db96d696ba1cc5c5699d87bb2e123f9505a030137329ecaa5ffc08f6c258fc6656f2b63dcf7282bcbba58fd11f3cab395c488a429a019c486242dadeefc6352df77aff70dbf02551945c3f93c76740e63f63aac39a26c55341d14e8dcf3c48be7f2abfc5a0fa7d15561b992794b9ed008962b1d9b163a04045c5f6d070194ebfcc770eece4705aff255cf58ccf8b648a56aebb125ae5c4eed5e3cf06604b1f66fa4fc758975ff7a731450ab17d3dee55986dd26448a6ac61374e6ce22d0f7c7e40c2d6b9bc67507b6bb673671d853fe22ab26f555cf3b27c255fe0796922751777764753576abd8f244711020b4a576b620ae433b79b87d9ee6616f91f2b4a88366c78e6ced025d2417db695e120d11baa8883eb3f8207a8d66b61fa34199cbed90dfc640241470deb788ab80b3e4a8383bb13ea34d7fbdd0ef516aa5f8426d20b166b1b05d56e2da1554bcc196225481bacada7564ff59f16291eb0810056e2bab1e544379c2ec7f7af958aa7b815ddd2d254a066b4e35bdd4bf5608f9d3eb54b1660156936248e71915879a3e3df88a373d43f7595ad166bf9e84b6a05531b70d891234154c7e3725ba363816532b270595df2463b1b2a67eb0f95c1f6a5434fd8595a3062b9ac92a6352780c7d078fb045831bd057dd49772e4b3db9806139be864f6bb8d189b2ca06255db60d8c07e424a740dd30ed77c177f526d82cfddafa05ee5cf9cbe3fb275589eff005b52005f63da6dd6b1d39335f202af6d058b5caebf29782a22549814c1921ec1ca21805faca60e434b0876754249caa34b21903f874df5e4548ad8d4bbb0bb2f05ef377b1c8b294af53c7bc696353a850ec5c33c9460872bfec382ac0392b9928bddeba48d24819a500a4750d49c8eeb9e546154b5b8262ea59f7cad16478243659b246740ae61c96e4c2e0213eabf5019040ee9369428f833fe4163d54ed3cbdc5fd32304c890c34dcff1d8c3b9b66c40a13a3c21ac0ca1e69b68361a0564743f9f32c252ca370e56860a154e4033e5fcf63a6cd1ca64deef46164286eb788f87d9ee59c6899ab7aca62e3698639464abbd9ada4023b87f45f1ee05ea2d5fb72713e9aaa91df5c483f54cd19eed9408b94c544af3f3758a6be0933ee3c24edc1427cdd15995cb32b8ec89e032ee949952e6ed7e941c9943e0dd486faf28414a0795eb502797d8a7cf6ca3f051eaaa5d7fb20e86a72bd44a97af6dcb41e37ce33813f0c8f17a6e4d2e2ea506811083ad9a93aac235d7fae01ecea29747bb94552ed1bd581e86cee23c4b7e60b59b09be4b3856116d7f5f605d648147371117e1baba9150baebd49c624afc9a64dab54fb0adcdf7d6d84e64b82942b114a78d824850d6b8719a4b90f41db28b51f351d7059549b0427c83e629ea838cc141f88cf041744749c41cea2bfab0b72b68c355bfad32bf426515b1f675f08b23f8dfe09f103272de8f00c16741163eaf1e0beaf3c3b02b3f729d4fb94aedfaff3c0cad893877cdd0480e61e390ac74fda52f2370ee95092cf24bf71ab46b7f5200b1708e5119779f3aa68ac163ef7999d9a33bf627d15f5fe18166551ea2a5aaca0655869f02ca1cbfeab17e3a2c0b34abe0092f154975fe890418ac191ee6dcbf72e489ab861393220a528b77cbd0de2599efb5b622475142d223fe4a3c5ca68b003766f84b8a3cfcdad05802d287ac4b4d4274c2aef41eb38bbd2f2e5ae9a65d138da3ae32b2dfb33f836b9220db288902dacdc1af9f65f85d9f6a8836132c258475f2511b19a299094f03b5abf4fc02b489efbd4877298d521be2dcea7141f291647ed63f0927710ab816d60b8d72002e95b5d77c0a5c10c346962d06396cc521ada3b3550bc3b3d4cad602da0ad801246d91d33237283d3e50f0d52912b99d9de026be4e84bff5560b9bbe615ae567a378e34c922c12f38d8fbd335ef64944597e591cc3b95b7dbf106646d45926dddf46026d3b4de890f093f03abc77a0ce697cb64562a676d93710d144dee2aa22ee7f6c7cea94b78e61f2c228644d9af00200afecca9ff44c4cccc5dd6f90445deed048edacc3565bda5f3aa1177189f83bc9fcb8346a20d39a90def25525e1468b25a59161108108220a2f6e25",
+ "tests": [
+ {
+ "tcId": 74,
+ "comment": "rej_ntt_poly (sample_uniform) requires 5 SHAKE blocks",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "af2040f9d90996985b6efd6a6ef90c465369a9ab95efb537c85f137d528d26ab7a4d5035efe5f734341775263e3b117d2f2c5544b0ffffe4f548c87846deb2d34af083bbb07e3c358fc78bfac471259d87043094833956eb4d9b23d1acbc7efdde13ebc883290783e33d743bb10a13bc8eb2a2e6ed552d8a1780055b36fcf0987b032487ea60b8f51158016982cc2aa49318284d5e600eb36c405d62ac7d6c32f88b1f5d41f5f8d5bbe3393033c51a95876c0f9c2124d6d87b98634a29269be830da07725cc8621b64480492af23c67aad018e44c2b957930e36171d1ef3cd6311cca9ad14e1c58a7d6ac6d2cee66319faab0b0c92533a1bb98eb909f5feae67c16e4e29da9be03daf0092cb2ace5a4316f2a6781109c19c19e2d38631e0aaf91aa27c8b82c8def955152bcfb7b2df0b2ff0b04105dfa209b3d9019444685054d439ae117c6f50faceefa46dfca10bda1213237f898143d42c9f83bcc9672797d4a03094431567983c1d8e816011bc4e7190e3f6555fe9bf77ad61b8415b52d2a36c62e5f9368b6fc0e7dc5d82c682d46cd189abe12d933a783fe9f4b46f87b705d0c90386efd551829fa995942af1bdbec31cbcef50fbdbb7e76615dbbfa9ad581b59aef0c922a69de190c16e5c4b0a3d6f0141f58aca58965e100b50163beb67f9c57ae8e79ac5aabb24bcd3600015cc65cec80784c9d05874610350cd01ac43976276f0ca6163d99d495f034cbdb9e39d24efc1ac9013dcf380ba1cb676a6af8282473868e61ff4f0b13aa2325aca910dcd767030b2cc5e44fa7e17c32786ce7edc9a432db81d6654830a16b3b4e37c12617898d5d2b634fcf250ffe545f4da5a289d470dd4ebac4362ec08ef04a31e8021a8c760fbff797773058ed11d71511b5d95f0019240743ab44527db4d613c2759357c291e7679d06c930ee435ae77f4f2d13c4e767b7adcc32e373efdea94fb70d6aaf96e64b28ed4fbca86ff1bd2656e392c8c4707e3ac6ad8b0c85c2ed19328b942f3af5eea89a7493ee8cfdf86fad43084ba7582fec07c1bb5649d5177a312d1b70f7930dc1ddad11396e5e315ac7f1d3047887a3a40a85d809f72b2661786e311928a6e61ce7854ff854daa170b9c406feebf3dc33656c9153b9f5e44aacc084bbec9c06e79a103f2544d6f5ef06e0f525687a10f48f9f08dff7d6f5b467c287fbe15b33341e3e44f8b27a87342f40dfbd20ebc214eee221115abe3f8620eaa424a59c7fa038d8969a5a95a6476e65820afcee40062e14d498544a3ff95e308afc39d241e1d8e403fb0570e2f6242771f20de2c792b6bd2996e1214297b1fa72c6843cb4f7d0196f9a40716385a3a5344f046e33e2fb089ea1f08340ccb563373795aa3e2fef7a8509d7ca174a5b6cbba90a56d743078bf9dc37fb7887187d6b201c5b6cf0638fc3e36d1db8611c468c04447a4b670a5cb55d9178a3ad2cd7817fc01dc8063161a1f9d460c831208691f30aaa4b365f074c601c6ac29056b7dc2279ae6e6467a7c2476f3fc041dab076fcfd5a9681511283cc1dc59ecd5472c99d8b8e87e5392eab30d25eeb40cfe4b7e3158d307b690706c59eaeeba9bcc6cf3e7081847789cdb83c55a3fd77ad8952566cbe6afee69a11774f10d9272ac6351b2c086a7fba26bd36ed0ba252d7b42943185235180beafb9154c93b5f87fb7561b3cb0aa3964a5d0aa4925ed09c90c0c18798091ba0aec63e3f48bca675978050f201aabfb34cc6f0497b773c2daed9178bdec949f61fa267a83dc796af329bc15d38994135fa2c97d0f805807105123a76b86cf9c82b8879450e942574a5fe2868e7131fb66be7221b4fbd25e6e19004533b6a3d12e91b058eae18318d0a5f324b0f9528a3459737af6e25e8d2179856ef0bd9f9de025e6afaee1ec49e8c98f9b96981af3cb1ca1b1740fb6dd86d48f7c6ae9e8541dccddb505a4765dc5cfc2e3caef4381a237ca2167f263f3c5f2db11eafc52b21a98d9c54619ee5c24cde5dfc8cecbe5bd086ea2a5d6616ccb47c0451b24019373edbca55bf23d1c365ad361a21a1928d72b4c8061d5cf88a956eeea3fcbc80609ca751b5a9004d887102e93867c4ad70f09105a666c3b9a575af0eef9799df422896ef11ad1281ec0032877520162bd52d59351e70fca453e4f2c85b23fc154c2a294b1d5ec0019c7754215efbabcf82c1e7f94d5873c0a4e3ff121e64c85b83bbe94bef011d9a9c8ce9ca692f177f7d0e3f499d684924dca2a653b90b9ffd485bbe88ed87237abc4ca6b55c3b71850a34dcfeb1d3efec5c83074bfd9630c308b8d94ddcf79fc813380ea7426fb10b2b461281bc38549a38f280bb2a3032c67fcce24fddacd8683a1798bc6cfd6add30c7b2dc9e04720f5149e1b1a6a39b4ec08a0c093a67987b7dc320bbe43f05cdafc74759b87cff4731af336445993f685ef5dfa3db636b830ee33bb45c5f51bea8ee5cb9ed28a4176140eafa2c0ef593b40738b9857f8ebfef3d2930387a11dd5daa630b8fb5744fcac692891e8171f3ff0a08ba5ac81cae0cd62a364f1b51caa4aab3085acb56a47cd75eafe860e92a6938a9205418e39bbaed6cd6fa9576906e17c57682b755314f437dfe1efd5c56f6782f2a8fcd489f4fdba794b452c7ffb45b9325beb72af3e2e77f1a3a816b1e5fd25d5e3864d90197dedda58375ec4d78c7302e787902dcbeb173f43da248ceaa8dffd1ffdd23324c4dcb1346332a70dcd08090954afdbd27cd3932e9acc2e9c889c02826bef84d077ff066ea06261601a9a06e5f3e8b9732821b56dbb2b0fe476ebcedc4142b9c8255c2fdfba17fa5c7e0ddd976dd0c9e5b1420aacbe03e34d8846e8bf17f79cb82038187db482957e6c054d33ef5b63937b7f64506dc384a99e47ed4eca348fb5b62a3639b84897f17b782b02131688a75435caecbcf7cc0bf0a88615ecd2ab7af31a0cb5ac6c3c5e3c4696e4b10b9c9f4e3323cb1817b2e175dff035fa36714cf95f8e151fe712bc38939bcd47b50fb202093d297081579637fa97dc8a0690efa7c2ea071ba4d4e1896387115001276d3cd28fb6217bf2ade25f2a3eabb81d08a68bce79a58ba971dc1feeaf248d47bb20dc93a68e3f32d19658cd3f1b7bb2c5d798d73025174ae8caa6d8a25f1e0e3bcdbd90a2794ef9ae032005b6b95b701c6122693a12ef18dce8609f3a48c32cf79a0d04f94bb4a6b74454e09c0f253539b185a7d5793e05cbad6a7ddd79d80d4e48934bc2e610f7fa49640d2536a0409aee11bc62b2f4e8070ccc59038dbfb7aa2b17acfa7c841b7d943c82d6efef90dc9349a3bcccb905dad4a3beee4e867581cfe8c31bb2c2f3f187a408d16de3737865954369b41c9459fd7cb3b7ef86d3cf5cb1c3ac9b90ba78049ed35470997f15dfb8c2e02033c21b8f5bad83b842004b43de82ff88df93f2687e67467990b61511af8119c0ceb6ba255a22c7479dc06036797a27067790e3836c481cf904f9f6b484f67561aa3ce9661f95d8f67a5028b527d7d530aa1b92c6a6f344b9de8286bdc755d1e973884e402cf37a3294a873a93229689f9c5018aa151d53e4fa78aede7ebf374259ab131d9695c69232bd2c14aeeea9c1b53635b733965f391d1b1d313d0e2ff7628398011fc95d52b07cb25f8404b6fbca17362422235e119c03a1db85a6d27657822b17adf9d591dea9848e748b6ce07a28d830059700d64d47490bac5a94010618ca03c1654e81a01c4a6d93d86115f16d620fa63da2a7605ce50f97e56a020bcf22e716cbd76354e9896a264cadff5d367de89d8bb48999d6164bd8f7648e4ac0bb5f2652336e72b445f6f0232920d7a00eaa25dd6a0d46d8883f48d2b2c10b72036c6904d4d5d093f913ce625922a146f4e7c908b21a8b8939dfdcb275b5fe5b52ab1f446a4fd2a4fcf5a4bb1d0c9c3c550e6f5b0aadc4d411e87eacd585ebb8c4637f9c185cdf7b282c387ad49f8bf0b3f8c2fd63f9336c0c8c4c708b9d3fff0598cf134a9d205914cdbb3802f0eb5fbbbbde18e0fa2ab4bd3ff2005f04dbdf80ca25e08e408055ec2abd1a345845311dd8dc10c3ab128c7389bf2a9f06184651fe332201020f711bfbad269ba8c9dd749ba727169c6662e319ef0013c97c9980e1e0cd275e6bc51316f0f83a57d784c639734ede4fec26e670976415b7dce3eb197540088817bebe81f361dc992d16151b8a38b88ae3fe0fbd080a1264a4a73526b01e34495e411aacdf4ac1c893f668bd095ff65643d42783a758f8f712b906f20f284d89f6efa1453ae06dd0357297214b9ce7944af4f40e3ab8817b56f1bd3fcadb9d9f366d34271fc3045f05ed2eab57aed068ad6110050e64adfa066923baa566d9c2898b2c53bf378aafd2b21feb94873fa2e65496f69f6f94321590b43f409947e996697bd93f03e3337286110a262310e0072bf62355b84099106885a05cc1bf929a42125b337a7ced1ee2ce0f7be5a68f82021027761c3bcfe134e5b554d7f08a709a180d779152f7c85eee0af248d43631edbb845a1b4a27b09cf8c69fb1694ac69060562114daccc9ce702f6eee20398c04434471777b9fee2067a5aab0c160c3cf3d5a71797eb3de000712161a3150708eb7c7d0e8101f343999bcc8d8ec000000000000000000080e1118252e",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 75,
+ "comment": "expand_a requires 150 SHAKE blocks",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "af2040f9d90996985b6efd6a6ef90c465369a9ab95efb537c85f137d528d26ab7a4d5035efe5f734341775263e3b117d2f2c5544b0ffffe4f548c87846deb2d34af083bbb07e3c358fc78bfac471259d87043094833956eb4d9b23d1acbc7efdde13ebc883290783e33d743bb10a13bc8eb2a2e6ed552d8a1780055b36fcf0987b032487ea60b8f51158016982cc2aa49318284d5e600eb36c405d62ac7d6c32f88b1f5d41f5f8d5bbe3393033c51a95876c0f9c2124d6d87b98634a29269be830da07725cc8621b64480492af23c67aad018e44c2b957930e36171d1ef3cd6311cca9ad14e1c58a7d6ac6d2cee66319faab0b0c92533a1bb98eb909f5feae67c16e4e29da9be03daf0092cb2ace5a4316f2a6781109c19c19e2d38631e0aaf91aa27c8b82c8def955152bcfb7b2df0b2ff0b04105dfa209b3d9019444685054d439ae117c6f50faceefa46dfca10bda1213237f898143d42c9f83bcc9672797d4a03094431567983c1d8e816011bc4e7190e3f6555fe9bf77ad61b8415b52d2a36c62e5f9368b6fc0e7dc5d82c682d46cd189abe12d933a783fe9f4b46f87b705d0c90386efd551829fa995942af1bdbec31cbcef50fbdbb7e76615dbbfa9ad581b59aef0c922a69de190c16e5c4b0a3d6f0141f58aca58965e100b50163beb67f9c57ae8e79ac5aabb24bcd3600015cc65cec80784c9d05874610350cd01ac43976276f0ca6163d99d495f034cbdb9e39d24efc1ac9013dcf380ba1cb676a6af8282473868e61ff4f0b13aa2325aca910dcd767030b2cc5e44fa7e17c32786ce7edc9a432db81d6654830a16b3b4e37c12617898d5d2b634fcf250ffe545f4da5a289d470dd4ebac4362ec08ef04a31e8021a8c760fbff797773058ed11d71511b5d95f0019240743ab44527db4d613c2759357c291e7679d06c930ee435ae77f4f2d13c4e767b7adcc32e373efdea94fb70d6aaf96e64b28ed4fbca86ff1bd2656e392c8c4707e3ac6ad8b0c85c2ed19328b942f3af5eea89a7493ee8cfdf86fad43084ba7582fec07c1bb5649d5177a312d1b70f7930dc1ddad11396e5e315ac7f1d3047887a3a40a85d809f72b2661786e311928a6e61ce7854ff854daa170b9c406feebf3dc33656c9153b9f5e44aacc084bbec9c06e79a103f2544d6f5ef06e0f525687a10f48f9f08dff7d6f5b467c287fbe15b33341e3e44f8b27a87342f40dfbd20ebc214eee221115abe3f8620eaa424a59c7fa038d8969a5a95a6476e65820afcee40062e14d498544a3ff95e308afc39d241e1d8e403fb0570e2f6242771f20de2c792b6bd2996e1214297b1fa72c6843cb4f7d0196f9a40716385a3a5344f046e33e2fb089ea1f08340ccb563373795aa3e2fef7a8509d7ca174a5b6cbba90a56d743078bf9dc37fb7887187d6b201c5b6cf0638fc3e36d1db8611c468c04447a4b670a5cb55d9178a3ad2cd7817fc01dc8063161a1f9d460c831208691f30aaa4b365f074c601c6ac29056b7dc2279ae6e6467a7c2476f3fc041dab076fcfd5a9681511283cc1dc59ecd5472c99d8b8e87e5392eab30d25eeb40cfe4b7e3158d307b690706c59eaeeba9bcc6cf3e7081847789cdb83c55a3fd77ad8952566cbe6afee69a11774f10d9272ac6351b2c086a7fba26bd36ed0ba252d7b42943185235180beafb9154c93b5f87fb7561b3cb0aa3964a5d0aa4925ed09c90c0c18798091ba0aec63e3f48bca675978050f201aabfb34cc6f0497b773c2daed9178bdec949f61fa267a83dc796af329bc15d38994135fa2c97d0f805807105123a76b86cf9c82b8879450e942574a5fe2868e7131fb66be7221b4fbd25e6e19004533b6a3d12e91b058eae18318d0a5f324b0f9528a3459737af6e25e8d2179856ef0bd9f9de025e6afaee1ec49e8c98f9b96981af3cb1ca1b1740fb6dd86d48f7c6ae9e8541dccddb505a4765dc5cfc2e3caef4381a237ca2167f263f3c5f2db11eafc52b21a98d9c54619ee5c24cde5dfc8cecbe5bd086ea2a5d6616ccb47c0451b24019373edbca55bf23d1c365ad361a21a1928d72b4c8061d5cf88a956eeea3fcbc80609ca751b5a9004d887102e93867c4ad70f09105a666c3b9a575af0eef9799df422896ef11ad1281ec0032877520162bd52d59351e70fca453e4f2c85b23fc154c2a294b1d5ec0019c7754215efbabcf82c1e7f94d5873c0a4e3ff121e64c85b83bbe94bef011d9a9c8ce9ca692f177f7d0e3f499d684924dca2a653b90b9ffd485bbe88ed87237abc4ca6b55c3b71850a34dcfeb1d3efec5c83074bfd9630c308b8d94ddcf79fc813380ea7426fb10b2b461281bc38549a38f280bb2a3032c67fcce24fddacd8683a1798bc6cfd6add30c7b2dc9e04720f5149e1b1a6a39b4ec08a0c093a67987b7dc320bbe43f05cdafc74759b87cff4731af336445993f685ef5dfa3db636b830ee33bb45c5f51bea8ee5cb9ed28a4176140eafa2c0ef593b40738b9857f8ebfef3d2930387a11dd5daa630b8fb5744fcac692891e8171f3ff0a08ba5ac81cae0cd62a364f1b51caa4aab3085acb56a47cd75eafe860e92a6938a9205418e39bbaed6cd6fa9576906e17c57682b755314f437dfe1efd5c56f6782f2a8fcd489f4fdba794b452c7ffb45b9325beb72af3e2e77f1a3a816b1e5fd25d5e3864d90197dedda58375ec4d78c7302e787902dcbeb173f43da248ceaa8dffd1ffdd23324c4dcb1346332a70dcd08090954afdbd27cd3932e9acc2e9c889c02826bef84d077ff066ea06261601a9a06e5f3e8b9732821b56dbb2b0fe476ebcedc4142b9c8255c2fdfba17fa5c7e0ddd976dd0c9e5b1420aacbe03e34d8846e8bf17f79cb82038187db482957e6c054d33ef5b63937b7f64506dc384a99e47ed4eca348fb5b62a3639b84897f17b782b02131688a75435caecbcf7cc0bf0a88615ecd2ab7af31a0cb5ac6c3c5e3c4696e4b10b9c9f4e3323cb1817b2e175dff035fa36714cf95f8e151fe712bc38939bcd47b50fb202093d297081579637fa97dc8a0690efa7c2ea071ba4d4e1896387115001276d3cd28fb6217bf2ade25f2a3eabb81d08a68bce79a58ba971dc1feeaf248d47bb20dc93a68e3f32d19658cd3f1b7bb2c5d798d73025174ae8caa6d8a25f1e0e3bcdbd90a2794ef9ae032005b6b95b701c6122693a12ef18dce8609f3a48c32cf79a0d04f94bb4a6b74454e09c0f253539b185a7d5793e05cbad6a7ddd79d80d4e48934bc2e610f7fa49640d2536a0409aee11bc62b2f4e8070ccc59038dbfb7aa2b17acfa7c841b7d943c82d6efef90dc9349a3bcccb905dad4a3beee4e867581cfe8c31bb2c2f3f187a408d16de3737865954369b41c9459fd7cb3b7ef86d3cf5cb1c3ac9b90ba78049ed35470997f15dfb8c2e02033c21b8f5bad83b842004b43de82ff88df93f2687e67467990b61511af8119c0ceb6ba255a22c7479dc06036797a27067790e3836c481cf904f9f6b484f67561aa3ce9661f95d8f67a5028b527d7d530aa1b92c6a6f344b9de8286bdc755d1e973884e402cf37a3294a873a93229689f9c5018aa151d53e4fa78aede7ebf374259ab131d9695c69232bd2c14aeeea9c1b53635b733965f391d1b1d313d0e2ff7628398011fc95d52b07cb25f8404b6fbca17362422235e119c03a1db85a6d27657822b17adf9d591dea9848e748b6ce07a28d830059700d64d47490bac5a94010618ca03c1654e81a01c4a6d93d86115f16d620fa63da2a7605ce50f97e56a020bcf22e716cbd76354e9896a264cadff5d367de89d8bb48999d6164bd8f7648e4ac0bb5f2652336e72b445f6f0232920d7a00eaa25dd6a0d46d8883f48d2b2c10b72036c6904d4d5d093f913ce625922a146f4e7c908b21a8b8939dfdcb275b5fe5b52ab1f446a4fd2a4fcf5a4bb1d0c9c3c550e6f5b0aadc4d411e87eacd585ebb8c4637f9c185cdf7b282c387ad49f8bf0b3f8c2fd63f9336c0c8c4c708b9d3fff0598cf134a9d205914cdbb3802f0eb5fbbbbde18e0fa2ab4bd3ff2005f04dbdf80ca25e08e408055ec2abd1a345845311dd8dc10c3ab128c7389bf2a9f06184651fe332201020f711bfbad269ba8c9dd749ba727169c6662e319ef0013c97c9980e1e0cd275e6bc51316f0f83a57d784c639734ede4fec26e670976415b7dce3eb197540088817bebe81f361dc992d16151b8a38b88ae3fe0fbd080a1264a4a73526b01e34495e411aacdf4ac1c893f668bd095ff65643d42783a758f8f712b906f20f284d89f6efa1453ae06dd0357297214b9ce7944af4f40e3ab8817b56f1bd3fcadb9d9f366d34271fc3045f05ed2eab57aed068ad6110050e64adfa066923baa566d9c2898b2c53bf378aafd2b21feb94873fa2e65496f69f6f94321590b43f409947e996697bd93f03e3337286110a262310e0072bf62355b84099106885a05cc1bf929a42125b337a7ced1ee2ce0f7be5a68f82021027761c3bcfe134e5b554d7f08a709a180d779152f7c85eee0af248d43631edbb845a1b4a27b09cf8c69fb1694ac69060562114daccc9ce702f6eee20398c04434471777b9fee2067a5aab0c160c3cf3d5a71797eb3de000712161a3150708eb7c7d0e8101f343999bcc8d8ec000000000000000000080e1118252e",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ }
+ ]
+ },
+ {
+ "type": "MlDsaVerify",
+ "publicKey": "e5824f0943ad27a943fe7b1d52b8a42f689fedd9c6b8df15a4d9a6484b06c9cc61aca2fcdb02f00a5700846190e54a4b2fdf5226bc6a14fcefcea7345f2d8b797802fd6fb47c7e77f8207ae53bbb21c7523e9f0e445219047cd2bc563a69e20ea9d8be7a1c3a410efd030c3949e91f186b6e1ee9f42030eccfb492a75369ba21355c4daaedfd6b8d0ea6d515801dac1ce8dc51db63f51981944b886ce97c65b8e8bf351051ada80894dd1ce6a7c2254aacf85f6bfedb89c9f2f455a844635dbcd02b95c7d1e461cad965262649e9fd6cc45c78b4709fc8099db6d77dc42077ce56a0a1f95edb138000078c5b9b61b99a946f043b69f55d4690f5c296d9e38d861b0c21af896ddca3ac874251583d8510448f070ec9df88ac62ccd0885e7a84b421353e46368b4c80ef97f498bbe1ab0ca9c1569b7864640076911fc43c3c9ba8032f3bb167e4a14ef1ca3c56d1fcb4fac92766d428cfa34f4508cac2a1a9e54e478eed6524fb13da3f4a46ed7da67e1264b6b496cd0a6954229e948b8254af6651d6ccdde15c7116f23e67082395f434a9bbc194823063f0dd36a557e1e7618027abba2058a7bcd026d172d80906a733711403af0d849f7331b35cb412559e3ab63fdf5e0e38f40d2548783db596d2d6898f1d70957ed079bfa03511537059eb70d75ff181c5de64dbc9acd3ba1e952f32e78404bfdc3ab3e7be1bf1ec1806be8e18529962dcf0935bc2a31627c0447b890eb38ac39743f276ebd972e091a0c288eb2c60db2ada783a461013170583d79580c3ce852f22e61be682a3fa8fd44c7907754a9c5c1e76d89e9c56517506689e4bed3dd1b8e8b67f4d7aec8eab7a6a1b9a7c88ef7a7e7b0e9b6b7cb6d2d9ab204493decf4a286f33414008e0b1b3d5d94ff4f2974e20dc06e6dff7994161df5f1de03fec7cd5659a8493db03ecb8eaff067a41179f85486ebfcaac722de4f970e6d755fb7e58a999bee25c6e5219390ae1d8e4eaa5330be6a896c6f7c1354c27f35ab93f0de784075637d0ab3f1fdcdf6777a54784eaf3b2e59588a854a3702cdb6d38200ee3fd4792d406051c977ea8f6e9f13bf6d3fac051b0f609f6626bb47e3d4d0ba2b21448488a0acba0ea2a7c5d46071b69b1090090e58c26754eecdfc6402acd5cdc07c455caa08a3ee3ba7415d40ae5224f95758d46b8d8c250c998bb0688cd00ff96fb93ffb49d4416213a160fa5a302e02f13e55eb2b26d2825977a21b5ec9a845598c1f8810a0f3f4692e00df09f2784c82f336c441672f38652b83ab18d5910e6939b972b21c091ac09d188218705813cd3c974035fe6b2802c9fda09e5f538ededc53d718d64ed43f9a07801052750a10b1c6125d0453ba7a4c02bea74a7d72c29acb1b84058678035c086691b4785b7230154c29590faac95aca0da04e5a7e6bd065aa650d463191a84ed6ad33076e09d2856c0e6dd82e0e5a162a415e154ad94b482c5da2ec88a2496f6be342f4420e33e05d8fd2d550db9b7a4c10c49d955c6425212f1942cb860f20f70f96c44c8c446fd15d670502d819005a5e8abc71583669efc8e3e60f3f9170d6ebde92042462148f400edbeaa447826c9930867eccae05f0d9e713eeadcaa287e1ad04502f8058178c94864899586c56ca12f49d5d880b3d6326b7bc9da30384fe38c43ab4a270eeb0a8824ec9541e5eb27243b747e08473ff5aa46beb4faa55bc5276ae49cd287d082dfc7cf991e5d66f4eb2c0942072930e2f0be76ccc6a149ce4edb0749b74e8e3f95c2dccacce6fda670ef9a0e98ce0e0b7f34039b74c28d435a0596858585200739dcf004fe4821e18ae722a057ac7c6362dbed968da53ac645d971dc37ee23639ffc302ef99ceb1cf12561626aa52168499e68928c569572af18b3f436ebbf60cc2c889d24569de91f1ed268b96fd19a07ed179183bc7d96fe8ef2bd04f2e4b81cc47d9404770830cc68bfbd98d9ca3e4f57caf256331cb188f0497c8ad1bc4420d1934dd923f5837555a6e1b41a8603a4f353f5fe149a3c0fab6c9a3a895cd489234f7ca9fa44567998d9ef63c206f3398badc47c9d9773e96bf59f976b32e0d46c12bb70abecfb67b30e714fe043dad6b5d52bbfe1b48c16325a808f8978ffce281d777885f31f45a9283bfdf1d467a1144c453a29eeb404ad4d5692eb9303de5cb3fca5d7bfc2342aba01d5f37b0c8782c5f01ec88d6f8d2d30850229d6c777adfac00972cfe32b55bc5fac95494e6549f59bc94c61456cb8501f391fcbe8308cb8a0874cfdfe645effcde0dbfd34f0f05f4dcb81c4216b5995d4164ebf7f8d071dd997d4bdc333c0c5889b82df1ed89e0951ebdd60eb3d17cc27895bf8c4e166a77501c85cddcc764c43dedd423aeff2b5dc848ef14636d99280dae32bb9fd1df67802ad55c9af75200c92d35418a925359e20624e8e0f1e93d6d239977248bd2f4a2f11d677d69f318f6b2e8da397b49ffc4501a10cfc841b6366377ad4fa7d084a039518d5ca598c892c98d6e58446770df0eb2ac7834d4b113a74f7271db891d08e38633209b4671c620bdc4ec0e37aa521cc16b3b230ea6310e5765ae46aace07ecd31ae99892e2d1047c30643f608371b08634241d6ef7f7c6b0783c898d3764634944b0d8ad448ad0b1e407ceda319bc364a811691129d3e893106cc570cd64e17c861181a70fdec15ff038079f3825b8a5e919761e42c02c2f5ccbe6bbccb981aa5ab1e2a2124ad36cc8370416b",
+ "tests": [
+ {
+ "tcId": 76,
+ "comment": "rej_ntt_poly (sample_uniform) requires 783 SHAKE bytes",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "ade7527bcb0a6ffe2a2cf114e9d49d1907ef13a2eb3973f643043ac1dc03f88dceeb4217afee1203f3fdac54a13b6c44516c812e4818750e40612256faa649cca43f8a9aa4995b79af4ffa93c4478a0fb4b112deec6a100baa0c6270a00922c6fb38102ecc10df9ba0ab82c2aec27d546d8743d40ce9593e1c067c863b4732eb256be88f9329a2a105d7f4f9f8980a7bbc1fd2b8aa50c3cb8b15bd4d58ad2cd9182f6550d786d600da563537ba5afc711077afcf5f2ad27bcc885548def9c1865175aaf059dce6d3a623e3d40b1ce011e5440679a7567d0ebadb76b28fd9976f8245d2cc6b5b11789a5fd234136d8898f38fa54ab8587561c469c0cc60b03ddef90725bec23e7478942df433c1faeddbed06794d8e7e983a622b8602d245c7245e9b380301321488f904a99ee31dfa6c0c2418282954a2a8dd115d599f7d52a6a04d4f91b79d4aee5c9af7387faa55a37610355fbcc266050ea6912b81776746ec3c531c36bfe326d1976047ee7ace40e88e660bd25c69892cbc26da809cbd0b806808e19931e1d50a448f1f62b08269ce7d6ff3274cb88f6ed76dfe397307211924a23cc655474b174e8112be1b5ddd7f9639f4d22dbdf6ea48ac79767e605a733c2b4cffe2fd776fc7e16df770f6d69b527799f0e484862e298b8b82b3a811d5fa347bc9def3909ffb0cbede310f0ebfe1f89c1aa09301cfbfd3ecdea8e015df52bada77ae6eb3e4f1ef4b0b7197ac7b3348cdc6f27f95f6aee2827d954127c181945ebe05e564147a71a9abdebbffba31ac4db2d8dc7b630f48c3e2b2ee984f3518381b4db2129ecd17df588e27f5a4436b1314d4e9f3c50a10849db95e899a76bc9af091a61b1d0dd35ad75f33d33eaa1bcc1f3144320a7525cff7d4ecb2fafc8d4f6fa59ec642b847281e6e44ec3adcc67e4b10d01bec2d20fadd2d446aa9621937d51fd0cbd3e56a71eab9ab742f5db52510b0816916aa1efe1f16e97052abc39ec48e3ad2f0876eb9492f9249b20143cc62285488ed5d966292141157195c8a9d7b8082809aa0efa78279824f64c6221534fe517d18ccfd2a85482e716a043e582e8e95f03536026e98b49d6db3f78576b8f91a5107ef4f4a788a9b36d97e4baab8f9a32292a74099af38d79f45383664a41c0894044fcdbfff9677bfca7fb2b405d492a8534540e5310367a5192dd482359777e1419fb29a5ceb06d0ecee0723ea2f54dc9969e343876beb41ff8cb40a40664112852bb95c5a40c96afa5751a77a958c461a6d0e9a645f6577d624fc74f31a312ff6d2c8e3f5c7bcefd0d71e2950bdd5da7a5bc7ddae856f9d30ea9784d68293911421433f3fe963f70883ad6fa692b1aa6f01060340fadc0980c07111b0c829bf7d551d8557b7e211ac05c9657d1903078cb59f22be709db3fd9ac7bd37ece1e88f6cfd7b56af127e9e2ff57c46b9e27d2dae1a484845d873c8467be6c0c7bd1ac5bf860f2771fc2767b53d0132aa6c70990813238ecc663e4eaed069554fc35d91b8e826a239f87638e13a3ce82ee87f1283c2f64ee7d715fbaf03481df6754750212f941d159553296a11c3e5e99b23442a6052a1d13b433f74b04aa18cf5100fd2ffbd66088ec58c1d5799427d6787f7fa732d665de840bfceba5b78b6ceb6a42b5916cf8be83eaf5fbda9a4c92d3b3bde73321c1ebe7783a2f8c043647a8f59a2079f9e99466eb426dd9110c0ec36081019aba4d2421ba45d1f83ca4bd7c44b319557134ac8b973949e1b399b89f722d7e189deee7e3a738e760b1c097a7768af06d0f22de67bda64ad171dd8743cf72006d5fcc4f0862f4f5d8929bfe80ac40b0d82aecde6547ccc37f7c0427262acb1dc7af40147336af8b075df1cced5b01fc423906fe0416b89c07ffe69e9cec79a3221cd60726fe3e7a921779ed24453bbc286280ef05fe39557b1b529ee10ca0a3e54c7f03abacf589541eb02fb1d4e83db8da5fece911f19f1b8644fdc470c4d7995aa4858e462b288d61ae8f81b9cd39257e593467252cc77d77718eb705d332fd6e4d61c761da7aee85667f39e601f7b14dd7fcdc4a70e6aab78c7e429b9ad43fe959221eeb53a220899e3f632cc50db8632be08385bb79466e63ce406826ed24d5daa9dfd91ef0650086e8f67ec03e11e57ce0df35a87e36363731d5e6a129c974574c28c032492fc2fe450ff6df857aa2d34f88d740026c5dc69866e1818c6ffeca589da202db3243652d092f670b173b66e845ff249e0b69237cf6d73a8d7b6e3cb3c604dc9c1f08c543a3d532373c482a08b957fd77b78779742f7f180bdc41510a5c469afba4d656ef633540c4d55f3a08de2bb3aa13dbf72454bfa02cc15f900c9909983bcb89f465bc7eb9a9aba456c588cf0ac9689a313ca4891de90921eaec7a6ed5ac7271434772234d889382b32c6cfdfcb2aa6c4d76104ecfc3bb71945f54a707cd4851c7f502680c9f74a2ff6475c10728e843e6668f95f7f25b3b63eafa8586518819cddc9f13d7d721f00e4843ff9d6b00878b024a9368028bedcedb0f8ba9f75ba837bdf23c93d4a3257de45ba05995996821c862cd3c360bd39ef1c05ef3d64f3597688dafac2418f40bf97be693099854a05ab906a94640a395e1aec6abe7a91996896276b58a1fd55d8d2645ba1901f4514bb8af173e5e95bcb4b635ec2445e4b6205f711ab0cfbc3f8fbf8bfec533f746fd7acedf11b4a66f371a02f42d1f8f7c36a4bf5f100cfc665361a1d4e3b6cf3f1b51ce6df7543fc026d7015fb973f8921384fb921b219b7d59916168eb0d8db1150201941ebb608a9a34ac99df89371971f3921873041df22274e23ba378dbb14a1d67b865101fed96dd037492b7b73f0c8f2155f6b07de6dee4365065f71f9af7cfa7904e9ef5b6a417bb19c0edf5a58d90ac15d536df091e1e735ce641c7977e83455f0d4bfbce191f71c139a02ad09da5a71669a845986e5cd81903bc2fcf87667a77511271a22e400ee8518348357e594d94c0b9c80b738464393eb314c8eb9cacd422ad674b6bb3e86488850663a4ce9b996124515acb2b941db207ab42b2178e88838aefbe786d031e10409d0dde8a46e1f10afa41952adb8eca07f1785b7682ec2eaecf58cc5d2d6d8e41c86bb6190c316798b5f7bfcda275c61c3e65da4caa99dded9552e677bc97e9804878077af17b23430c7de12bd6f6ce103d8c79bbc761b94a0e98560c442370fae8b13e73fed4c6332d74ae4fadaf025ba3a3e3b91ca42be7ca07c84adf1c18e9d844c2256b2afe65354c55e7ac3bbc4c3700381ecf945bd57b4fd85cefde464cef8fd7ede5e16d83f770a20db982ff5632631d1251b00d443b0a8449dcbddc5bcc0b2a531a1487383b0782e3c42298c30202ff5f0cd0120cf8379a7629ee913c7d6feef0b230801c1eecf65a41fdf10297a9d11d9af6d275b2546246313ea3146f62e842b98cfa63f635673f76fdfa974f1c4b9a9f7180f5fd821c5cbc06ecae488f47b1a16d6300b556ffa37d22a039e884bac33031682e30a4f37ed4a20929070f68678cfa7ddf07e85af564281e4661ea8f6f5e7adf61d0faac9fdfeb743f46321d715bf5c1a0d3dbd73f6b694d0d54733f0777e10277b5166655baae53d50bb6ff5dfdd6a8314be5511c82eef8714aa3b6f9e0001085a980f7f9b4d7a647a0255b985706e7f2a40124a61dd8cc75b23957d377be6fb791e9b2eed408cba754ad47543a788a1c86d513d13e805c0c516d0d2d7d7227a84d3fc7dbbb12b346b4f14cfcb1b46c562fa08d5ef181de0232792171a29682d12fe7aa49d3056b475df44311dbe4bb05f6d139eaa69d63754e82ee1fa8fb2c943589952fb05dc8a3566c5fc6ffbb135badf57ebc8c97c90ed22ab381960a54d9c4815744c144e270180d09c1afd13db0aa5dd2849c8ab710a5deda647a1f2ea7488ad56baddddc131711b0eabc2a954a551d4e488c339afd7b50d0fac25eb3f3b1d0a81db4678202954886a2863e50232a5e8eb82ce53c72f0566841ca10c724621cd1322b80b776091e31868bccc5785254adaa93c3dde4bffe7e3fbc520fcde4247e2dda42dccedd33be150140a1d669ca760d2cf52222f042a518a0486dfe716d76dfd363573eb2d012dee8b23cad281c6f85f013cb16a8543433ad75afec14d50585ca6077e6a44b2ecbb7c70d19dd42114c5f5391c193b5fa492848e48760f3e858a2f3521fa0c8ccee73d4d7a051b7bac09d8e91f8355f591f8555f1b93dfc673e61cebc9a7bf1327baaac3fea44ce49e958820e593695b06574feb493fea7bcd7464747ae2f16c0648ed9f285d72e82e5c178a1de77f918681a5161333e5612167fc70c585da49d32cee28ef9905efade611117a76279fc791416ad88c723f289d116917e1a9931cb3f8b8b0bcce64cab7006a793340c369b9011700e352b358fdc9798e2c7c67d4891a1d900c9d84aa435481c62d2919f360b4fbab4e2424dc11bcafe70fa94926bd07f9ffeb3d3b8411d9d87193d04f39142db168d435ec83bd3c3d0f8da76694c6c770eff8fd9588a369e3e299b37e221bb48d382ea44cacd11021597fabb4cb050a1b9baacd7e8c99f96674d3192b565f010e27747b9cc1d8dafb000000000000000000000000000000000000000000070d11141822",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ }
+ ]
+ },
+ {
+ "type": "MlDsaVerify",
+ "publicKey": "622db4b1c15f5f5ee55e9911432b2a58caa5bd242a6f38a9e2d9cac83db4a3991aef762a57ef2951187e5b0c03c0fad65f5b3ac69243a5833816f00795d125c5ab25129464d3a77dd145b957a5420f9e8bfcb6d639b4e5a46a101fb96473d2e2bd9d9c479141958fa8d52a3e63d3ea668b9268ae24e291a494caa1eda447426cf391fcc84d076c2df829b2bfb5fe7fb2182460684f94340ad41e7b7f5660a5c6d9f6e38adfe7086c45fef3dd5e66f7d7e032236774c52f8c06f3008b183d979d06fc966e34f526ff8efd86d7dffec406f880471cd5af32134fcaac7cd8caa23cec42e589c7e859db26aea52a732bb48d066280677442b640889cbefb4a6865500d44785ab33c8e74eb82d13e05a87897c022ac9614a41f04e4d8a4c2b22216cfc10fc3b8b91d63fa1b74ce44983a04c9fea3e77897c1e3d1fd08a2fde8e68cfc31d57f7f156da2d33062a61fc96db4cc7a7cbf27b91bd93a56347a672f0f68bf44b9a8ba6e249e383644a2487784b5915d64849b2f4644d195dea5c2fc999a8eda3cf68b750960cde5056750a3fdcaae514747a4bcc88fa4e1abf63d5da5975800e97510fe450715c03d5029d544cf9d41c59a05ae9157cba73c9f02ed8296dc1bcf8de8d0f992b0e043e1b0eb83beb0418bfefc26de68867a35b409be773dc51033da3aa784fef4121006296c208c137d0ffc48d3ce9e9e6a19c48b390d4c6ddab012eb919e5630a273ae6ad1c9faaf9e83e93da948e1691084df45e239afaed3f1d9731fec22a91ab9e5bb364f000c171bbb6ae088382fb1adcfc354e94393ea0db44db1e30acbe52a49db521a8ac79c16b7559d608f02ddd8ee514d9e2ccf0740c19e6107acb72657002979af90c2d1d0f44bbd862050405b7c9afd5b154c68a5653c3a984f4d14d06cfdc2043a2226e5f1d8bcbfdbea856dcebf7aa3759c38b1367dce410044a57058360dbd279169dbc1d5e8b7940a857968bfe0c7a5db696a23806070a69bdab657d3217b96cda7cec1a274629bd2f4c88858dbb0446df2cd895ec57521becd5177c826ad0f1ad54ccdc5c3a63456a7cb39fc7017df70390f55c96502b66ea69d7c568546b24532f862db89a0c3be684b8a3b0ca52ddef8482ec7282919dfd326deca6a4a466dce14c629dcfed5a50118e870ac6a807edb4deb08a253fa7bfb968814e02f820cf785b927db5a00d04dc51b4ec9af2448d9651d8ebbfcfac601bc1d0ce4cdd91be785461cbf8590aa1fc8fe9994eee45ac506b5e87d693fbbec2b0f09144118bf2bf38d7e996b6d40a51b8585322e2b31e386ab45c03ff843a04ba987fe5ad426dfd291019100f84ee42b399b0d93ce8d6d1f6b0c0eba3cf3a9f8206aca86e50ed517f07246517d6d434e5918e96b1b0cc9506ac9cd8fc12b9afcd49c9289a0b28376134a4ccf9aa89086cc2a4997729ac99a8157eec6f1e1264d60ef4a0c07bfbb945e6d7a514366a036dc28d1b934a8aef657319a9f199a14bfb4e452b990825fb95987c0046855d6ea7314218dd4837fd23652cb6494a5a989ca5f297daa01132775bf3e6a08a717a2f17638082e499e6cd859ef564949e15900701fb83f8afe9f9f2cc9a6b9e5eb363651c052edc02e973b4ad4a4a51faee71d3142a67fdf20dd7b77344d0dfa04643a6a921f03436dac9b245fa6065f2b23e7d3f0b1f9acd61ef6d68d939802ba0d63cbbf3d7d8c9d68dc40ae395fefafe624e76f51051fd01b53bb881b99929d09e7bd718c6750e179c3e72cc53e5cf820c1c8b0ca8459dd103deae592ee59b1fd40c408bbf5aaf3f9daba04441cfe039b7c03e52a582ad8970862e14a00c9a637be2078b8550079ddcbf14858d98e69ce375f1d40866c2c3d5abee04b06330bc764b958a0e85981afab11ba6cd8cd4b3cfa319444013daaf0ed9bccd64ac258357622e9b21e17a06d863ae9950fbf8d6118eb4371e04194b746a9efb5e1a3313f63f7d4b9b06893ac53754bb6fe323e12ef760c05c3c4fe3a03db518ba03447f89982f3f57a51a556edde0e578ced15f28779d3cee4950b0da6ad35bf4fdded4f22f0c409956ddae098553414ba2faabc4fe3cd550abe9d4b9f8d04468787a2ca50b47ca67b43eab5557a6652fc722c8790ceb93e5d494872843976fd5593d2030a3979d508228271f4870c9cd517e69bc2cd4624a3ed7d4959061a3e26319cf5bf9f4645cabdee1f8f03966937614b7a94ab7ca28ddd15f1a267d1a4caaac5e2a4b0079092e8ce9507f524044537c520b84ce0eba7af9b1c3a056209fe16ac15ea4e3c1a3837f08ce2b86c135a4a1ff78665ad76df0f0da877761fa107e86a23ccc08ef5239a365dbe1ae3e33ce531523d188438296bad2fffa43491d8c164404ca5a22e01cd2d2828d89b0e3333997f7166bc4643468cbd392546a0f015454b8cbe5a82bc92fe168c05124e809aaff0bc946295b8a12e25d2899a95e4fd57733eb0ac67c552aa370cfd7c2703aba864544f651f0f4ac9d0bc48bb169ace6435df0a9859d59f5ffec4f0226291ccb1baea61dfb2f7e14777aa6901b6591bd15fd7f6ee70be9fae2892bf8bdcafe7656289c3403f6b29bc3bf9a977f562034cce76505d750de6502103098f893c5a0e56409b4117795b85d784bae1a00c00c39f5ae9f4f5dd9332dcb293ea2e95f2456b1f3e47d65c00418b24af7ea8f250af298a58248e01a504f355affc3c65edec93a8eed6945033aae1db204dc0a9fa46924ec4c891bcb3",
+ "tests": [
+ {
+ "tcId": 77,
+ "comment": "expand_a requires 23103 SHAKE bytes",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "8f46c68b4cdf1ec20f57a26aede6e7fa768ffe1caf2ad14dddb070af1bffcdf53e996a4c5f009b21400f21a51b90ec6d5dba942d359af0a5feebc18315dc85dd4b5b7f4bf0c1298a6b38472cb7adeedbba5367a7bb86776f2405c665f2d1c77ec94f9ed7ed3f0e025c46b158ff66fb62fe7220ffd466da07b099f4e32b7be99b39bfce7cb526f0c1aef67b63c04e21fb93c0fd44d3cbd1edf4c437af20e917d7859be5398fad2ac8bf6c422a3674c2924d01ecaca88bde6b02a92d4ca31f559075a78a011f1ff334f8d33ee27ca9a27202bb1d045c15607202fea700f737cc5db44efa4448f469c07c5c690eb5d244dd7279fdd7a5cee75c2234d176c9a1aeb337803a432c563443610a646335e1a08e26baa26cd52d836e1c3309211b071d552ab3daeb0e8bc42fbb4d5877fb3814da62306313474d5e86ed9808dcc6f0c302b2f9811fc18eda56d9e3c44fc01940510fd2ed83b85300b69170290bd07596f79fad3ede82a6b8b47f31dd7e8a04705dcaa44caa717bcfa288d2662b2ba98d3aaf930a9aaa59389e5d153a4d5692dd92c5189136ee81934b81b7da6ab8c4c1d0b80efd312be2344153cb03395eec9c808a7be202ff4f51ff0021fe30c9f7be4d1f0e53b24f67c06d057810d9a072c5394b49f500a0523e8d1fd2c3e0a4441b3132ee116858d78a9b4c7987dde46e10ef202c2a5b793a3c4fce39d776cc52c6fdbe582a3fd9a09f9916d14750341e3d5fca75b2466b5e6ad5d5b577f154907ce98b5b1e6060e0e307ea899b3911e4978070cb76728c82e91a1334d61d9939a601501fcbf75d6dac20ea9bd32cb2ced147a4a51df0ddefddea0116264bdf9abb8074a6cafa2a6ebe4a6cc48eb0a9d9cc55f14d7f2e526ca6109ab213270303a0ca3b1490a6bd056358c0e741093db14fc01cf6807d8cc5596b217e61319c72aaa18dde047c3a04b4147ca127bba41218e1ed529f534d71c442149197a5ab715e427ac79f8758e37f623b73ef6a2b55207aa7ade98ef5a4f6989bf4330cfae3e3651444d5b71001dd5aae4432980b555bbb931c0fd9f5abd1af22a4a1d2e2d117d3b8f63474dca28f96049b30548ddab448872f4dfbfec63555292a0f90d54b80c5e3dd8c5c785c3e4d00c643bc8511fbb9aa716caa06b14041f9c4bedd6c6d339220a4724079e504454dffc5c9d299c773e14da80ee3d99824b6ebd93aa71d4201492c04bf2056fbb430acc0d1d425006e5b232b22d5fb1484f25181198e81e4b24fede7c0c498d55f451f2777ccf24778493ae2e0f81b1077cceaf0c0d012c96ae8b1ac5bc3a3f8aa1f361b5beeef3acbd95b7a971021a9aad77a82e059cfcc6d0bcd799121b729f12d2cc8274496bf854bdbfd8e932942e39f5b7906b6a96f4effa903c0bce837160694b2a97ec89c1b0f7f35d16a8995f831b1e5162649e711b71252822ae131a5cc23e7be487be8b1f3b5ba359216e7273adec9bccf6c15a1a3f4c96476b90f11cf94b6d04ff59e6bb19be14f35bf395d7faf85cff288842546efd8ce42b5a29a6fa620581b8dcc51dc2610cd08cccd4f141595daca8cef416cad7907248c58d9327e3d9556bc6be6119bb983cb1faa2b492456b075c7e5aae4e311b61821f51f3c3ed0749852c3788ccd3441beb9ee6cfeecdfdad4d7d4461702e2e1cb6916ae9a9ec096b7775ca6cbb13604419acd40f4b35c7429b8700c8c0a7f6243f5cfa3aa739b713974ef74f84788452ddf5be5d078cd80a2290fd9992ebcb136bc8978372b622bbaecfff00c1c6907ca231aa1441f36697bb29ee93d5a5bc951e9a7893e4202d3cb5dd6324d7db70976ad7666da4e94941862962d3af783ab2bd173c536f999f5627cb7cb7ecda596e65dad4de7668a976b0ce6698bbba26461d78ef1bdc0267c761b708435441ba21dcac62ac6cb1db54499fbe2b441f927b993649c110c00a947be9381f3235861460ffaaaf0b353ce002b81a957e39291fc4f65fdd791281a30f4ca32c297f2c6fb8327454751866239cf4772bdf79368dd99d28c61c7209aaa13297e0fa958ab9a2623c80e779c0745c10f42e792dbcc18099a27a99e9f8a0d389e191609aaf3ad9c3a6661cd7611bb778f706b74a834aa662e70bffad896846faf86a052e6372aae1058bb9dc96b1bd9111b5b1eb47e3badb26f7396642764f3144a7e9f5a903d67f1ec74e8806fc48e354ff37a138a47b3b4c8813d7a7992aba5310a439a1d90848487020c0983b48c5ee97ec658eef7bc93b030b57f16961ec655fef8408a9132ef76016e21dbbde30251501a701b9310ef387ad88c2281a7634b381c10050c50a43d9529c923a81d9b3929727e2b499fd9738d75cfb239c6ea3e94b5951c708d18102ff06aad9d20a219cd867a4c8e7e8e1ef7c84f67217c148f44b422714a381d33f72755ef056f53098cc8fd9877cd6742b2f77b4f2dba9ac9045c17515858baaf3e34f4d74a6e96e8d4fe661211674a68e0912b7c0b4b80811ca60c4518350b3f54df34db7f69de214dae9e14abcaa01c5f28ffff384b438f46547009a8f7e55511e60f2850f75bd337f0045ee00c51a51e655719ea4da79e9a60eb2397008701becdc5a83619c7f90667ee024c44ad392cabc6d7799fa59c8f6125b85284aa48cc7537ec0ef17e83deeb1c99477ebfcb3d51df7443aa692f7319933297a1de00dd310a055611efe998e1281ba0a448521fa0c63df5e7082de1ffc0534f85901fb320211f46f439f13314800826ee72f68c76fe82e45d2f19d9722d017ed44eb14a8a9864c79f29c1082054badbd6249fe8f93f8e9fc65bb3cd1af8aafbbf56964074d782564adb1c25ed8b08f8430bc16836176422fba4e7ff1684a61d881c020d4e659429b48f9f3e64f16d24021d6f89add4c75d237fa9043d32cc27784b7c08844826178b9dddf6fb823aeef3e8fd5aafe581c393c2dfd041f8148aee08a974d5318c746c22d9e4179eb56abdc72db1c6118fff4d9d8d6cb446ee19a07b7fab8df403880aee09dca1cda2a39ec10d5a78457e3aa3cff48468170094ad22d30a2d44428cfe7467a4ec539871cefcd548c3062480b2ed2b6e7a6bd6110aeef4166cd0b45dda83aea875b3ba10a9b3aaa9726f3c782751e85550d144231853037544f39d5dd039234cb42fa88fc0e5f1e0b66f068fd90523ed6e1741679035a7e8419da10a7604b13858ec59be5e5ed7d298e29bee15eb9d66e91ea004d80c261b09474d3f32b7e6bf321fa980786bdc374134e9a5b64c4549cff6d0f073a9675a27a118dc12d5b745da2b3d6615280802756895b6efef4c3dae82e30b3c275b1d34aa55c9f650acf2b727c7e1ce304e1f966dc549a785952135073c3dcb9216885a7460fafdcf7b5fba53789268a8a21005a877962eac88805d7e1286cbb26e34351c1ecfd808a9ebecd2893108fcda6a39eabc133d7fb015ab978ee2ce4f6c6f132e11eb24a82e4e43759ad1ba10dbddcb758a54cb1cc9ecd955bc7f43cb6144423ba5d62d6296c89b1992751dcfd37523b647ac22f468b37120ccc461fe4bc817796e835d0f47a351e2c18769a25c988c7dab905001c8de47aef0e75c7d5b1c299db472600112f656d3740c31ca5017f4624803ee5baeb4ad4974a04be45067e747e2071c66f1a2e607dd11810c78b48fd7249398b8b5ec18e494811e68502872a0a9862d8d9f66122533f0e4893956aac7d98c3f2fb04ea93d8a0f7ddacd0072ec18b54bd814a8ded374d26d69bd7d277422746fb8371828a8e8ff398b5230a2fec8f1ac7a750fc2c6eb6c9341a5bedf7248c796f5b87d9f3449e0f0b3a32d8e283812e98154cf002a02a744f247a20cea768d283ff113466f4775e1170b7395571873b84d5a7e1f7c06a657ed9a09a8789fbebc4fe651735cd5e42a08a5adddaf9827c33078a933b74bfc83a3d2e9ac0386693a6b5eb623a223df33d5c10df6ee4a1616160bedbff3710726f7b21d11dbc7a8a59c52a57e1dc17f914fc3c6d21bb1740faaf09ce4dfc887970cb66be3c9e154e7e554a744793b704593e40550987d60a589970f9756f7e6e4d7fee9cf673f0bd40b9899de4d8ce43c14c1a0def773cdc33dd81147a10fe6557f09e0a863e369d7374ff934563f84ebcd75267822b71acf5354efaf5d35d6299fa186ae28f6092069483b19db0396e008761203a1fa92d8e7a844ed237f3ed30c8c56cbd48a29815d02acbe917fcf2212a69f543a132204a48e8c692f78f039cdc63fa17ac2688c6d4ad716bb56671876e5f2a9036e9be1e2ca1405957e428928aa938bb96a9985d9a32b94b955acc5d4314300b10057d5ea099c65f0e0098fe5edf08b8cd43e93961c5ab94cee68f25a2b17adb7234e88a9dc79ff8b72c9ee205d457c321514b7fd87f482c0e8fe0b6294996527300a64d964d02438351caac5aeab1ee5c5be5bb38b605f974802579e0d34af06a3d5b4a0156aaa1da8e35d694bd4be6908974f5f9af626d16efb52b01d5a81487b669c23dadd71461144ac251e359e6f3ecb9475b2f89b837d1c434d590618c961cad556e5f98110fdf019e813a6bf20925167ee010144597fe8f87bb1dd1b888d8fa5fa032123455c7da5abbd2633527eadcae5f4041835738d00000000000000000000000000000000000006090f182025",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ }
+ ]
+ },
+ {
+ "type": "MlDsaVerify",
+ "publicKey": "2828f4f44461a839e748b07acc053c9b0241f7b1425f9c742019c17078ffa036e967faa39da0636d9399bb909039818275a62ca07ff9bccb028accb7ba906e18c9135147fb27858bd224a228c306543bc21092a59881cd6653318f824e59cb7708d34271b38ef517d9a9ae6d37f07bfbecdc05ad59da3247ba2e8587a3b09feeee4fc630c81973cbf455e60a7b2e521350c3e4044b0ae5eca91f1ea9d9f17018021153c5e7ca6b9f9ccba19e093527bf8e1acfeffbac125bdc314267372bd0f2c2fb064e990f367815fa5bc21f98c715c8dc86d36ae7efba6d75f9f5e332df3c6127ac5263647536f6646996f27930318f4db8da6484c9cfa366080d0ea01f019f5b0da25794bea98744ec505d02ee671d6a9e311ebb91b51e1ce1c59bf70714a0b7fb7e25cc0b6e86d661346b6921a96de4fe1de9b788e18791f6e9597f577145ae7c9b39b8c10643edce55bd8db7baa631a0ce1e52b1c67c34761b4d045da421538e1efb7e9249da2590dd52f05102691dd529a3ada382ba255730e3f594104e9e2f9bd9a0d012f446905d6eed766ac4cb3094e5c40b5e2e12eaacb433a1f4593b74a0e8c5033c6846c7ac866d756d27e07b4f771d2d3f45dca0cd9fc1f50b24c50181dfa64530162e4513a1dc0d3fa73fbdc5a9f2a73a032f59122dc818f064224f4687ad32d27357d6f0b3c392eddb2d25de43bae084da96bb985e5521452f056ac139b81167285164ab462aa2c31a3224903f72be0cad6f1de86150c651a2319cc132e55b1517015522689b7fbebe00ebb9bbf494680ef954c97349f87dc4b3a67de92da831f6b2072e294b0d5191be06feb54e36b9c7f8fde964754498174096ab1bbca6dade876c8166e670196f507e6127d9c7ee4d5195bca2940c27375d41197552eba03ac9a2ed59facd73a322f7d701f95433519543a0701c2be58e5505632e63fd831cb92309dd23bf9757ffef9bd618cf90eb184e11c51e139a9ecae0e009927eb64881519b035c81370d602fba3eb43f5c8a031cf093b634e28028c97b5d7ea962564639d247eaeb8d4f5deab4b587b87b8337f7b9dc980db721b7d20e25043eb856147a429ee22655ebfc3b54b4d7d957b567047065de5ea915f3259b0cbcb4e46dc4036d9d4ed8506f0ce2ff7be09f0eb37e6b1f3743eef7bef637c2619ec5e75c232b4dfb9a4a860f7f808cf0b0fb3d0981a800ce83a26282e02bda97c360e7b084c727d6b5ee5aa87a938fb6f714ffd0762790e8333991d057765f4b9cbf26f5b8c2ea993f6517e807749f342cd1623da8003975235fd54517fcad9fa2f345d1193bd35132d82a33a43b344a1e1a302a96b318ba0b28f21c99c940a20cf2bc3dd7d4d8df7e3fc47ca751be64ebc05703229b7e74551f5e57617ff0dd8ad6c2024ad182e9998a3dc67a6ed0bade4872c066c54ee822cbb305238547ff4de783375b6d560d3c1bf818ea5c208cbc6a8d8cf77eac9a8b6e80af4c434d0fb2f42083c75b1fe0d609be047d182b637ee37c74fef271a815a08174cd070ff39c660473b054c1b9fdac90c318a6e5b1ca8918980e347eb077b3595813a12bd1b4c9c6f8d902375078b5ab0fa33d8152789e86150f0df469b4808b2fbbc9f18e4434b9b91b61bb4fdc39ef06630934a4bfc2b175f065f94231bdd95c419453fe4fbbc9d7dbb909895d04d2f2d1e2c2f3529a900e4b347060a0fc469134e1eeb78d56dcac2964f9d32aa74231747583f4f3782391c828bc35d3928c7a694085ed63f7c83792ef85be85ba88fd6e6fed04640584def57fe1e9c8ca247c5e53e984bb2df9de8ee4a72a5d05d5db46f261315b195503e8cbbe45a9f97836997af252212aba12e5da4a7fea8e29115a0e4f05bbfed93730709ff43f378100059f28e6dde2f4b210890e5c25404b1c5410a8c32c9ab626dbecbf90cdeaa7b76248d477125f9a73a9b41fceb547675d4ac3f9aa98027fc9666f0267cb13a8199ad802595f53d4f49b18e31b1c35d2a3cae174c46d9810995ec4952739e14dc3ba4724261d17e24f6f25301d271ab952e0db0692b5dcf2875132debad65898026ca7323097cde7ec8338934bdcdba4d8d9e1cdf1399d01e6967263c78df1df84c8fdec5bae81c01de78f02977beaf958d80dab2fe1a9d70f6de7318e99cad4cfec15acdcf06570e98589c7d072c52673edafb33140f4c6ce3adae1f226e606ec0c3dd7341942cc1925e6f0c5c0f9ab40c27e5b3b69fecdb723908a5617cec70d5057e6f7516a39d747f5eb197b903758ab2947f777a34f7d6f7d0e6cb6da17069795204c90e9aaab93ce22a9c3166a7900b86dbae141fbfa876a454e530fcd1faa182e962a3d9b671b07c18c46f222b98058b96a143f188b2114a44a7b9c41c817e1539dbdc4626d5e88853f33cb8e0920db5e14d2d776bf8649a71a935e50c62c237c004face4d1ad054b831bc4a07d3aaa92ab77e5eff1a2f9776bf57287970b9ed9f1c1bba3a033837f8e0ef58b57ab3c2849187b65f2c84d299731cde4d01cf91c9c53f45dd909377f400dc9a490fafac0410724388fb8f3621d794fccd268971bd46954c51122ac725e9924339bf3f6e5bbc9a200d110adccd91942dec6ec0c4012aad5aafaa9a7df777b1d975c37a7971e7cca1948e1d16b86f8d0f4945b4fc7409694813c5dd0f6890250b6904738a5404af68e5d35d4fe7059d5c48a8b906548c94fcf76568bd562f4ea06e10bbf349142dde245bc8bdd8673e5ac",
+ "tests": [
+ {
+ "tcId": 78,
+ "comment": "rej_bounded_poly (sample_uniform_eta) requires 3 SHAKE blocks",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "45c74c2f9d98d9343257f12d6ca0e80a4fdf0923081fed79412e4a468c0c1cab92c9d537ddbaddeee90b1da792c2288704605e285af67a1aca821c7115c34df21b0545ea4f8d670ac7a973a23cacdd150ff8f76e7957b98104cb90c43859359189d5c82b50e13f0328305676ecfe7e98a07f4d9a91482901fa3d6cd0b704199ca72542fbbe328eea284049ee95153b3370314c3275d76e81f4fa1a8a0324ccbbc23f1a98a511dc507d23352ec119b93b1c0b58b97ee71ed3a7b0b0783dec92e3834c7a1a0054f6b3f42d97e5fe5999659ad854fc859530b50af080b445187493cdd6094a0cd8253d24609bdba9ef471c03e620800938928b5a4a28aded028493867969096cf9d8378cc7930de9afcb94200e6bdd216ca5d5bc877d5607e633a519274ba5d79c22ff71cf54af14ed7bf0ed6b0570f652ac48fc268328cf822d4d30402eea1d506142d4743ea19ad82ef2c62e0f9e48eb104cc47db132ea3e94cf8fb13ba56fe098b96b9ec4d180f9cf204a62e58d11f640d311640cf1e393e8578545826dbb387a6c22596bbb0ccadc3de519143a4c253c07a878189693c26bb06afc8616fbefea67a390d5008c61c3eb67406553f21e340d4c950bb5409646a07f2627a7d0cf96a4310455b8366ae34e13131cd8bc39b184830a47092197525747840fd3f35bb47b308174d296a67e132f73bef36346b08db87234cd7a61df9452bc9689bd2f2fde66b48c74fca4d26e12d1c4613ae1198bd447d917d6a6f117e3ce42a38fa2ae2e554a8793f575387ad49a902544e20e1acf8973ad586c659b80f66244a658793186e2241469751de168386247b42c1f573eea4b9a57a475111d37a3724997a1423392024200f4adcd251021e3af6c948278e198cbeb5562d26ba2ebb9b0e212d34d54d9c618e222c7f60a17a634a7682036d3e467b737291ae3175f280459207210822ebf74c080449ab87fee72f9574efb116a0b1bdb9aa22bdd47d17a21aac5bedf9a3a80a56ee4dc57a079fcd3d7c33608e64b7a87482d2e1b061026df6eee3463a48bc1afaaa61a6087aee5864fe38a968b4c0e10fd839431cdfe03115f158a25fa73dc945d63743e3a9477afc388697c6291ab09d5e145f2ee9731c0de90e84ed97e48a5eea05405ae0d9a12faf82119ea5c2dce8cc118b7d584e3ff296f0bbbc057cae3be7235049bba5fa0887e6915758ae2fad31d7d26e679ceb4642a316694b3e26dd2a39066ba783d1f4e217fd9dbda82ad0ebbdc5c6c7a83ea4142874ee6fa31ce1f74f1621cf9775fc139f7819a386019d0138c82b5456b3de55f0086962f1388bd6a5ae7dc2e259d4fd7aa2393598baffb321884810e5c43e158286f031f867865ce4f2b776f3a3832419bc347570c0fcbc5beaf6a939ba995ae7ec35acf101ceef7d4e415d5abd977392794d19326f695acdee4d32b0b2545f70e03154c5ff5f5ed9baebbd37a93b3a926ec96ff2f010051fc11e2e560ef718ce7f9e55b4ec9e7fb1c000e190f970310e577b72b5d0f08a52175b466ba44e06d82b2b9a14d33eecc2d7aac8a5bb1e50a91a13dc3a7b80c077ac7e7be88ac5272adbf3e361a0d2ce87fbb860c4a4016204c7530104048242ddd11ccd78ba00c064afb51fdca447e613129a8e5e568aef7b13bf06d3990bcfdcf74830109177bf46f9beddc6b4e01aa1ae3cd9137dcb47e711e7b01319267874a9c8febcd1ab4f3abe7b4ba088029af6e4714c8e1231b9d819b7f3843673da5319299036664608278175c781a0517d50ba48c3bc7d480195236a1259ce8e4ca9fec41c96a3b2ac1a4314a2739e57368ac030b85d447090cefe997d61ed2e44a879f947541608d7296a255e3b07443110201f11c227ebdabdc04990f9cb46967de0b7448c9c2caed883f849115d9a7904fa2844b1fc4c81fffaa4cb6c93ff69f0012920d540c1c67f19e9e90c60bfa285b19a92930bbdecf2f12e257c2c0d6aa880f7609dbdfcc135f8244e2b209180541c56b8a870915c96d9f6110cb6bc8ef6485cb5d4413ea2e80a42aaa4cdba7f04815ee37af3809032a0651b897d977c7d2ee5ecee346f0d9e7848780cc90f5fdffd8c23bf3f73f0b3e53b385556b23a988afc86f99a9a85815051fef4b9bfa88ce55232dcee5312b1315d7b13552939b4c7964fae29abfe83236077e600a2a02159c52b90146ccc65881db5c900101fd48150778ff7b993afdafe2a03e5841c736264b9928d1ed7aeb7036180d86a17136cd62b9d8d90bdecdf2707cb4606b350ac6121fec880659b5726fb8ed8923b342bd22a300a6df4bce9b4f70c79ccbdf7c42c9ed3c5cea4bbe3823031c44f710053740e55dfcb7c488f600cecf1b5c974dc6e483bd0205f56c2a3a674c49ad2da1ff9e37cfd8f059158a1b15c2e81ce26b83bf86712ae8718a58c58cbe10127147b5d3aeb92162b388366d779f8a126a3b5bee56902fbc1f6a449d74a7863a0b6037ca5ffbac5041bce68a2db29dd6bef264c7d6f244de69b10aea5c7bcaa379ef0c7ab47f1bacdc57925bcdc12457ef1e737111877411b74e1ef77491661ab00bb7d38f51160a90d4b500416ccd949aa17ccce7161c3dbb70769b4953adc3fe64a2e45f0fe204a3bcb37cb3b24ca07fa6c4239710129acf1d98c1922f8fd8aa8ddb207162a1b3dedc0e390a4893edbdb690d9aef686c64147cc718ded608c329eccffbe338dca3a36a4c4e4ed48160699db6b78e25e54d0b3e551c080f3c2bf5b6b78b951de81bcb9724b4c8c66d5cdbdc77292a7b7a82481febb65e90557b2effd9f253dfe7208e5e0cb0234b566dd33837a0b93bdfce7d3322b54a37e0058c93bcf66303d0ecd55f16c5c0c68d20363b8179d4ed96305fa632d489dfd64624c4042a6f0a57fcb1afa06db489a063a59b7740f71065214b542c22d1744b6dd1167ef35bd45ac047945df7b0f67e4e6d5b7aec57b07f0f74dc4922905168849fe4c5044ee65ac36bd6095d56db2c6ed1749af08e6ab80560aea4c736fe610e4b9ab6eb212c4eadf0b2895222d4e5bd289905199eb4566e0b2569055b6d6590d9a3e4f647b7366c8793327cc9462fa3bb4d9b7d3eb8ed43a5c1603e0917c2a4b55dbd20b40bdd84dd379e4c7c3e4e7880ff32769633870bc7ebc79d6396bef835afa39539a327891b9037030c75a46b274353a5ff2f1761999b6fb214158f337f0b098f8bd40a8c8a592abc004d5f8134053047412309bfcbc7faf5dfcc0f44e766d2c7e7f651ac468330bd301e21ffc863855dfccc385c83f3c024bfdb732f596cf945a9dc724f85eaa5adb2237b41b485954162890e71e23528db0a5aad3ad47b9389744599f96ff5c7189271ebd2c12ea16000f56e0d15f0362acd48a91e3863a1ca98318266c3d63555ad96f0d188e3275fca834c20ae62bd97308ccbfae323066015e3a33169d05f4ff5068a645b9ebb7aad64ffda44f9d0580560d23850177aef4ed42064de173a50f5bfb5e5bf6d9d39eaf8d565f342a8d9880118cc1d069480bbd6cd615383f85d2e495c4c33818b6106cd241e16cfefba1aaeb5f631423c1d8ae8e6553a3ac5e8a85687c243e0d4318162dcb2ffe2afc5b9d551a7a755efcb96113f1e9b596180c6bec210f9e36a81fa686f5073c573191aa23603a8067bd441cc9d46dfd55f6b1b2c36d4ad04d96fa326b05b7526e43dde99051549718a48361a40bfda5073b8c95c154741f901007740fb0e84059fb7d085408bfce226e0cd08e0361f9cbf4b257d109cac12aa86a122ea823bb4b6c13eb74237f9499799d73e8d244288776ab6e344dc2b6dab89b7e0f764cb849473a168cdb92411b0664d76841fe5dfe477fab40997ff18c13180512bddc04f74a9a0b24cadad0d969677e108d0d4c9cd878415186f958d49fbf04e2e446f362e8c2359d3d7799f7976e490fe3269afd2302bc7cd3d434fdadeb459ac76b5dfef29bbf84814d1cf21d4c374ea12fe34c4b9186c068d7075bb05d12e702c5fd6c7e6a7da986d9d65031bf3fc0a43aa546f06e46785d63f02e965e5ffdbaa9ea7a092e1a149d3eee256da5810e1f565372b5d96a899f15ac7bb97a2cf510539d110db26e98f20056188177b5eba1e017ed78f60acd6c8ef59502a8b94776699a6fc80191ade5007bfa62df60c63875153b2305a8f9a05ac662e485f4e7e9673ca8e85d306d651f37d06e860c8fc50ec6199916b72b711d4ca74d7c031f03fd41bb7405c684b136beed4110bec947ccf1b56578396fd88a70f14ba683bed84e70a72779f31d7ca3d9db73ad4133779ac7790bd7e378334badbe2a148b2de5f3277b1e0b2a1b2396b88f1dec7e49f94bb38ad9dd509fe23ed46c0830ab1f89f04d6986cc3a3b373ac9bc8a83a37847d87321df3f5cd6eaadab300c5316d8a59f8f9397c968f5f778450369bcf118ecf730392e2672a8980a6556852330acb3f76d195d95623cf419ff726172aa5df52d5163cf1681b9c4274b2257c2a247f5667923d214e0c79ee66b1f7d315273dc2b5ff41f3728a619ed0145dbf36c089710c55e5c2cdc2c8296489f817d7f7d0e6892e8128a0e3e0ba65d74b2d50826ec325359617b7eacf80a48679397b7d9e31a225276ce0e465b679cd1d5df0000000000000000000000000000000000000004070f171c24",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ },
+ {
+ "tcId": 79,
+ "comment": "expand_s requires 23 SHAKE blocks",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "45c74c2f9d98d9343257f12d6ca0e80a4fdf0923081fed79412e4a468c0c1cab92c9d537ddbaddeee90b1da792c2288704605e285af67a1aca821c7115c34df21b0545ea4f8d670ac7a973a23cacdd150ff8f76e7957b98104cb90c43859359189d5c82b50e13f0328305676ecfe7e98a07f4d9a91482901fa3d6cd0b704199ca72542fbbe328eea284049ee95153b3370314c3275d76e81f4fa1a8a0324ccbbc23f1a98a511dc507d23352ec119b93b1c0b58b97ee71ed3a7b0b0783dec92e3834c7a1a0054f6b3f42d97e5fe5999659ad854fc859530b50af080b445187493cdd6094a0cd8253d24609bdba9ef471c03e620800938928b5a4a28aded028493867969096cf9d8378cc7930de9afcb94200e6bdd216ca5d5bc877d5607e633a519274ba5d79c22ff71cf54af14ed7bf0ed6b0570f652ac48fc268328cf822d4d30402eea1d506142d4743ea19ad82ef2c62e0f9e48eb104cc47db132ea3e94cf8fb13ba56fe098b96b9ec4d180f9cf204a62e58d11f640d311640cf1e393e8578545826dbb387a6c22596bbb0ccadc3de519143a4c253c07a878189693c26bb06afc8616fbefea67a390d5008c61c3eb67406553f21e340d4c950bb5409646a07f2627a7d0cf96a4310455b8366ae34e13131cd8bc39b184830a47092197525747840fd3f35bb47b308174d296a67e132f73bef36346b08db87234cd7a61df9452bc9689bd2f2fde66b48c74fca4d26e12d1c4613ae1198bd447d917d6a6f117e3ce42a38fa2ae2e554a8793f575387ad49a902544e20e1acf8973ad586c659b80f66244a658793186e2241469751de168386247b42c1f573eea4b9a57a475111d37a3724997a1423392024200f4adcd251021e3af6c948278e198cbeb5562d26ba2ebb9b0e212d34d54d9c618e222c7f60a17a634a7682036d3e467b737291ae3175f280459207210822ebf74c080449ab87fee72f9574efb116a0b1bdb9aa22bdd47d17a21aac5bedf9a3a80a56ee4dc57a079fcd3d7c33608e64b7a87482d2e1b061026df6eee3463a48bc1afaaa61a6087aee5864fe38a968b4c0e10fd839431cdfe03115f158a25fa73dc945d63743e3a9477afc388697c6291ab09d5e145f2ee9731c0de90e84ed97e48a5eea05405ae0d9a12faf82119ea5c2dce8cc118b7d584e3ff296f0bbbc057cae3be7235049bba5fa0887e6915758ae2fad31d7d26e679ceb4642a316694b3e26dd2a39066ba783d1f4e217fd9dbda82ad0ebbdc5c6c7a83ea4142874ee6fa31ce1f74f1621cf9775fc139f7819a386019d0138c82b5456b3de55f0086962f1388bd6a5ae7dc2e259d4fd7aa2393598baffb321884810e5c43e158286f031f867865ce4f2b776f3a3832419bc347570c0fcbc5beaf6a939ba995ae7ec35acf101ceef7d4e415d5abd977392794d19326f695acdee4d32b0b2545f70e03154c5ff5f5ed9baebbd37a93b3a926ec96ff2f010051fc11e2e560ef718ce7f9e55b4ec9e7fb1c000e190f970310e577b72b5d0f08a52175b466ba44e06d82b2b9a14d33eecc2d7aac8a5bb1e50a91a13dc3a7b80c077ac7e7be88ac5272adbf3e361a0d2ce87fbb860c4a4016204c7530104048242ddd11ccd78ba00c064afb51fdca447e613129a8e5e568aef7b13bf06d3990bcfdcf74830109177bf46f9beddc6b4e01aa1ae3cd9137dcb47e711e7b01319267874a9c8febcd1ab4f3abe7b4ba088029af6e4714c8e1231b9d819b7f3843673da5319299036664608278175c781a0517d50ba48c3bc7d480195236a1259ce8e4ca9fec41c96a3b2ac1a4314a2739e57368ac030b85d447090cefe997d61ed2e44a879f947541608d7296a255e3b07443110201f11c227ebdabdc04990f9cb46967de0b7448c9c2caed883f849115d9a7904fa2844b1fc4c81fffaa4cb6c93ff69f0012920d540c1c67f19e9e90c60bfa285b19a92930bbdecf2f12e257c2c0d6aa880f7609dbdfcc135f8244e2b209180541c56b8a870915c96d9f6110cb6bc8ef6485cb5d4413ea2e80a42aaa4cdba7f04815ee37af3809032a0651b897d977c7d2ee5ecee346f0d9e7848780cc90f5fdffd8c23bf3f73f0b3e53b385556b23a988afc86f99a9a85815051fef4b9bfa88ce55232dcee5312b1315d7b13552939b4c7964fae29abfe83236077e600a2a02159c52b90146ccc65881db5c900101fd48150778ff7b993afdafe2a03e5841c736264b9928d1ed7aeb7036180d86a17136cd62b9d8d90bdecdf2707cb4606b350ac6121fec880659b5726fb8ed8923b342bd22a300a6df4bce9b4f70c79ccbdf7c42c9ed3c5cea4bbe3823031c44f710053740e55dfcb7c488f600cecf1b5c974dc6e483bd0205f56c2a3a674c49ad2da1ff9e37cfd8f059158a1b15c2e81ce26b83bf86712ae8718a58c58cbe10127147b5d3aeb92162b388366d779f8a126a3b5bee56902fbc1f6a449d74a7863a0b6037ca5ffbac5041bce68a2db29dd6bef264c7d6f244de69b10aea5c7bcaa379ef0c7ab47f1bacdc57925bcdc12457ef1e737111877411b74e1ef77491661ab00bb7d38f51160a90d4b500416ccd949aa17ccce7161c3dbb70769b4953adc3fe64a2e45f0fe204a3bcb37cb3b24ca07fa6c4239710129acf1d98c1922f8fd8aa8ddb207162a1b3dedc0e390a4893edbdb690d9aef686c64147cc718ded608c329eccffbe338dca3a36a4c4e4ed48160699db6b78e25e54d0b3e551c080f3c2bf5b6b78b951de81bcb9724b4c8c66d5cdbdc77292a7b7a82481febb65e90557b2effd9f253dfe7208e5e0cb0234b566dd33837a0b93bdfce7d3322b54a37e0058c93bcf66303d0ecd55f16c5c0c68d20363b8179d4ed96305fa632d489dfd64624c4042a6f0a57fcb1afa06db489a063a59b7740f71065214b542c22d1744b6dd1167ef35bd45ac047945df7b0f67e4e6d5b7aec57b07f0f74dc4922905168849fe4c5044ee65ac36bd6095d56db2c6ed1749af08e6ab80560aea4c736fe610e4b9ab6eb212c4eadf0b2895222d4e5bd289905199eb4566e0b2569055b6d6590d9a3e4f647b7366c8793327cc9462fa3bb4d9b7d3eb8ed43a5c1603e0917c2a4b55dbd20b40bdd84dd379e4c7c3e4e7880ff32769633870bc7ebc79d6396bef835afa39539a327891b9037030c75a46b274353a5ff2f1761999b6fb214158f337f0b098f8bd40a8c8a592abc004d5f8134053047412309bfcbc7faf5dfcc0f44e766d2c7e7f651ac468330bd301e21ffc863855dfccc385c83f3c024bfdb732f596cf945a9dc724f85eaa5adb2237b41b485954162890e71e23528db0a5aad3ad47b9389744599f96ff5c7189271ebd2c12ea16000f56e0d15f0362acd48a91e3863a1ca98318266c3d63555ad96f0d188e3275fca834c20ae62bd97308ccbfae323066015e3a33169d05f4ff5068a645b9ebb7aad64ffda44f9d0580560d23850177aef4ed42064de173a50f5bfb5e5bf6d9d39eaf8d565f342a8d9880118cc1d069480bbd6cd615383f85d2e495c4c33818b6106cd241e16cfefba1aaeb5f631423c1d8ae8e6553a3ac5e8a85687c243e0d4318162dcb2ffe2afc5b9d551a7a755efcb96113f1e9b596180c6bec210f9e36a81fa686f5073c573191aa23603a8067bd441cc9d46dfd55f6b1b2c36d4ad04d96fa326b05b7526e43dde99051549718a48361a40bfda5073b8c95c154741f901007740fb0e84059fb7d085408bfce226e0cd08e0361f9cbf4b257d109cac12aa86a122ea823bb4b6c13eb74237f9499799d73e8d244288776ab6e344dc2b6dab89b7e0f764cb849473a168cdb92411b0664d76841fe5dfe477fab40997ff18c13180512bddc04f74a9a0b24cadad0d969677e108d0d4c9cd878415186f958d49fbf04e2e446f362e8c2359d3d7799f7976e490fe3269afd2302bc7cd3d434fdadeb459ac76b5dfef29bbf84814d1cf21d4c374ea12fe34c4b9186c068d7075bb05d12e702c5fd6c7e6a7da986d9d65031bf3fc0a43aa546f06e46785d63f02e965e5ffdbaa9ea7a092e1a149d3eee256da5810e1f565372b5d96a899f15ac7bb97a2cf510539d110db26e98f20056188177b5eba1e017ed78f60acd6c8ef59502a8b94776699a6fc80191ade5007bfa62df60c63875153b2305a8f9a05ac662e485f4e7e9673ca8e85d306d651f37d06e860c8fc50ec6199916b72b711d4ca74d7c031f03fd41bb7405c684b136beed4110bec947ccf1b56578396fd88a70f14ba683bed84e70a72779f31d7ca3d9db73ad4133779ac7790bd7e378334badbe2a148b2de5f3277b1e0b2a1b2396b88f1dec7e49f94bb38ad9dd509fe23ed46c0830ab1f89f04d6986cc3a3b373ac9bc8a83a37847d87321df3f5cd6eaadab300c5316d8a59f8f9397c968f5f778450369bcf118ecf730392e2672a8980a6556852330acb3f76d195d95623cf419ff726172aa5df52d5163cf1681b9c4274b2257c2a247f5667923d214e0c79ee66b1f7d315273dc2b5ff41f3728a619ed0145dbf36c089710c55e5c2cdc2c8296489f817d7f7d0e6892e8128a0e3e0ba65d74b2d50826ec325359617b7eacf80a48679397b7d9e31a225276ce0e465b679cd1d5df0000000000000000000000000000000000000004070f171c24",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ }
+ ]
+ },
+ {
+ "type": "MlDsaVerify",
+ "publicKey": "fc9fbcbb96f54d5f1b2b71d060404538ee428f6785040c54adb8716adde1cb1fd35a18e25a3dcdcfcb36f67bbd5398dbd1e41d43e2da3d92f35a894168c5829e0e9e9ec957c6e64c0e2c90bb10402b80c16860a20e5c0f5cfb31e98fb965d79c6dbb5a92a76e0cd2e8e5bf89bd8431075d87d944f70d1d60ef39eeacb38950c3f3ea9c9e036beb99453beb674ef399472d2602b40d2681474a0f86f9322008f7ba074306c65888fb75076f2588cc828e03f4a20c6a86190705bb16d1b01f33fda71defb96cca68128d87ad616507e67f9abf5e1f4b893e6223cf9643e9bce85a60253ade53ce2f6483594507fb27bba13867cd5afeb36dea5d2d847e0d1de2c8a21465e435b427b9a21094844e4f9e386b8da5b7abbf642cad70380c2daa355a2ab183afa6412597a0d85a3b310ec11a2055a56771f6dabb00371f3a29d3a282ac8b1ee1e46fd31ccc98943d93f95c1f7b0b41c49b8c00bb229fd5c468fe47724e5c44cd90cac417c70c260cda880ce774aef25749616b941f4d3b394e58b752235e0824962d7d003457828a1d5c1549d3c496cbfe90950b780b12de7b976866edf29521f993fe3e93b189cb86551693e8016cd0147a4b6af60196779f4a916afebe71898308ba45712c593ace59eb006254a01eb76d48b9fd653e662b32435b8b5e71cdf77768b9c42f5a75f959f59a03fed130ab2c24eb34b0d41ced62726c7ab160a588007bae6e170c558908db0cab61933bfa840031cd131ac541a3484079ae77a8d4a4eefc8b72f952c0fb22352751507d311844439b9287272dc73b7b836ed85147f40871d05b9904c32389afaf94b84643c5449dc04f9a82f276fd50cfceff05e2f1dcba87d3ebfda747cf04e46da976f5864de1ea500a4ab58e7027977982fa46be9c8e565e5376733b706b01447a8bd2d80b766804e663a4f6cf58e4377346420eca7e757f6b28dbbe8e05f251ad58c61350d283de73be982d7c60250e4203a44e97849f6921238870f772459421cf223439dbaf21bae645d04b572e0884a6c8248b780a1df734b600e1ed6723d15d145b1476d11b36a337bcfe14e85354eb275d43bdfc62c242e2498f2263416d9de4fa7bad8512f14cd1cc964c9471094514ce7077d2dd2c45195dec402fbf49c63f9abcacb2e8eac10bcbb7b2312397f4ea03f70b390490592fc2b41464c48ca6dcc333be960178534b099aadf9bafcea4a5b74e1cb2aba6c13a57d05a4f2ab3002294565e02014254fb3b6f3ede1b2cf9315185e7c07dc82c74656d87121612b456b03c5eb93f1a81d8ec0eae7630937a2476af4b35fd07e61469881a2f7c0a1d56d299ee54455444a431a93e8e368553b7063c695076891e7532f29ee20de04ae37891dd3343e7445586dbba4c31a8723e1ac02c786c5e74171884217bc517838facccfde8453c62f719887425cf35068b126f5d389f394203cd377273e984bc4e9aa5b747bdbaf7e4b7607b77b0ec95e931d3e7661e98086a6e9975b72703034523884201cd6aa668eed0513bbabc6c3bd044c32fcd4aafa319041d07f7991bce70c3fb7a43dacaf7b5b58e624d36dc545d0a198ad8f03bea8363f61bc639186c497a857a85521647d856b64209bdf9311fb5d16ebdb9522345561c8f526bf106c107bc6f97fb93c98c3e5dd239ddbf8e736e936a2df93a863457889caa12cc64489b7561a469b9208873f766b57844f60aae913a27233bad42b5bde93c0544d9b52b3b45a90ce5aa67021bb1f8d35b67626ccbea718a42b3a5fa867ce53218bd48509087c67bb3e452b7e4e3aafafe7f1588fb653cf045a4ea5114806f5108fbe3410956adb1348761e6c5ce8f58b276ced2d721bfacae09c67f41ed9f00749f8a63aa9c367669980f2415cad8983691e69fb588ddda462d0109f9cc1984d4153b4fa46e5174d14bdca951a464d54dedb27912cb27b74bb65ee3a11854dca6542749a7222e589f4ea53bb8c07a84c3271bcb371d4005d04bc825868652df8defcaed9f9015e4c1d953af10992fc73951064c5f37e02baf73531b0eb5c1e2a7e6f379eb60ed2609e601abf163214e328a9f75ef17b308bc6263dd2884a5a8c607be1266bfacbc26114d75a610805b1be34b0887182859a54f6fa4b06c4275959e6b6b5a4385be6104b61fff2169226e389a18e1ad8ff1ed4eb1c99f35f4c198fe777bfe475759b4bb82f54c47218c5bdf61d506dae4b84fa4ee0f64f2c7ada1f39617acafe3649e960d1804228fde6267a6708363bc10e97fbdfcdffd883f8a231ec15263608ca462440a882a488266d35a4f878f55e07b6ca0f994a0a1f16b743bc9e5f473de80586fc18f09f0a13deb00c73a23e818b3e9241878dfac1f814bfe3b934fd0ae8be49caf16320fc729bc7d8c584d192a884eeb2ef3ad079cfb8626fcf1024758158951c6dcd607ecd7a15658e2154610085f1e5cdf61704c120b72d9c6db247fd04581264f6d14109581ba6994dbb46437de09164bec86b384ef16648649cd650714f6e7c6151783af7c4db4246683116e435a6e3c4031f21c7aa66984fb64b8d9af6e32b2e4cef4ec8ed9568df38c067076e3f4536bd37b4c66f11a426e9d76cfe29ccfab367ffcef2264b0e0fd3513b862db235304924f2cd8d07b2690771c778cf21d3b6d4e74541d390040a8582434c55a6d8e6af99c67096455b5b17cf5e902cd9928f96e7d14d4221a2617297858249b9b7235b28847f7c843d69263eeac9c6612f",
+ "tests": [
+ {
+ "tcId": 80,
+ "comment": "rej_bounded_poly (sample_uniform_eta) requires 277 SHAKE bytes",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "447024ffde9346a213b39475099459ebb1de800e2879512a7f6747cdcaefe85abb973bf9e25a460bd9ee2ad1bd70a820d8f172e54eb46c78e95f860001323f6617d9408d2e1d25ba6826f19ff9c010fdbebb0c002c2038a178a78f652f567ecb5170f26601eae1bbd555aa8fdda21ba1dcb9e351620350e347397b96f2d29645f10b3d8945d636e58308d85205739acd6b94d671a3cd14678ad953218a6b5cb7b3222c2db794e0cc468ef45358505ace711352899851c324c12767e5a50e5288af2eb3c9402114e06e0ff0051e9aa0ca2c72e6fb479c074c04b2123e6d6f9e62d4374e0fb2c3b6662332c391f630dfe44c4fdb7dac95ca3aff5a427f3d7814bef76f897bf0a7cfd2bd36d9d49f87b870a06bc9dacaab0b129b6158dea464fea551ba4c5431237a189860fe228ec8840b5eb358a68f1d9ae9dcf90dcad2a8603bb7fabb4e387ba963b08e1dd41e02a10842b579bec2a2d431fb9595b4331f46c9b0db975832272ead202dba9be105039328936c939985d1137e2d90d55d4e6787ae2837ab48f0562da0e0e58c8075b4eb5dc9dfc97635bac8866cc5f13f984869a550a100f13f3f56a38b8a350fa4fd06207c1d32eb667fc6811c33db6cc428f620dde08c42dc2efe736aefbe59c167da7793f2bfbc6cd3aaed52d3757e8d7e44c63ae8f0852d73b5ba5569214c9c1980d3852a0b88d0248175f53e9d11ffe19a1ff5ff7e44f8a5c1074731c69198de1be50b7155b49b9875bbb7473983ceb447b2b50ba230f69155d7ac4e46a4e80762c39a97fd023d4ed38f7c425902b7f747a11d7797e2f4cab63d27ac2bcacb17d08ced68b7cc5d91c69bb8f80f17d9875119a741bec5757f66042ecd2e00847c0390170ac2bdadc769cb501ec8aa38c859441d98e5bb9fccc43eba593d928209245e6de8f336cc0e2680c6a73e5df0f554301cf852fa3dd3e7d5f720320d6b079cf2211feb3b2956a0de3f59bce94148dc91e9b0288445763117cd180f7ad089f223eecbcfb06746aa2796dab2e620459919cb4faeb7d4c0d85779f776593d6fb0877041d43ee10435cba6c7baa9931e4c4dc56898a36983312cf85a1a999bcc02cb26d091b3c5a23fd4061a09b44659f6d68b87b68d3e6c18876f9f8f8edb42210ffce4e4c6a4a01584ee1b43709473130166ce9d9890eabebea8c81d532c34a166dc9dc30f1d4c0546de34990cca8a5dc6269853d69f366056f23fbaf72be1fd469fee612fa9a75feb97c079c5c04fce08f89e8087249a77e3b0d73728e95749f7497313631ad95620f3eb3c4ccbf4cc64e6113c4044541e843832a32ad7e699a75947f8ab7e48cc65a060d62972b86df8a2fb0b4bb966193545c86f201c5be342dfb361dcf2bbd9f3a22a6ec498da9d9e14770f9b7f642314bc6f66954bba2b0c621be2b20140eb6a0f536c6178fbf631ae39cf1c66d01c35763141b689e6851d578b31083f2153ae37101bda7d5a1a428582fcc19b310fdbac1cecbbc3ecaec93d73083f9f9c0f972ce0e65cdf5db90c623405863a18a497fe23bb57ad71f64ba9fbde1e462ac28e0d7597742b2eec39741d11c406ae56248c3644f3ac44fea88050fb4d0af09b65ce58cf276b37731d21840f34a9bfcdbb5322d905d88476f89aaac0c3f6ecc7957747a8343dfd8981dcf34057746dcf440aa098e5d41b5c61ce15a72380b7c8a39c982c052cc1766364fe7eb94a49441014deb484afec1692738d50762aa0ebddeafceb7b9f6cb2d384f049a104a584dc274040f4ea030345f7f887758d10864d8c4b27abddd214be79c79b69084d71897ffbdaa0dbf5cec90f22ec07d4ac7ba12ae6ddb130ea34f774c2736267cb13178abdedddad0e0f889b920b3c4b3008ce7b18d4ff36e196b1e7d8dd043b58495e6b7dbfe22d03ec72dcbb250ebde631f43c556ab8b8465b3d76ea1cf571e6726d39866fca46a0b515f0d8479a028517f9021d757ef84fd8a8464311c7462262c82503dcbea392f88f19dafece39ca11b11ee3649840dea7054fb02770a7a46c15c162a05a6a2b5ea904f2ecb78be936e0cc54327564d6097510977807a48e1b446b5076176cd8be717380f4f02f30b5f2d2c0596f45d3c064ca4763e649c9396319eb09d37d3627d3ec6ea58df23cebcec0c9bb68861d0e2fb56e075f2aee9bb1aea052ab2c05ae746f80bab8d953f40cf18afce5f331b334b7531e472d942bc07e02c67135944efb5aa7e39e4344d365d719776494ec43cf3f64d208db184bc4f1239eca1b744055c12d4519905c66017a7a8f6d47b3f0a725222bdfde1c1d605d04cf93ef3733a7b9a5a54a0de03c66866bbfd24329a565c0092856e637a832275f6ce6113656a71c1f1ef90058afe1a376aa00be83e050169b7f9e94451dd6f493fe5caf02d6e5cf1d41c5e7539d2d70ca2ac35b966ff9f66b07401f25b259000d14f9e0aedd734b74fdda9b187bfd99a7c1d241e40f87027567316a3cbc08bb70ade50e75e349e7f3d023a021c46e84b2d44dcd04e6a9c2a5ae4ff79abc2805a5f71684b8bb661421008f45d9dbb86387beb93b07583d0cd4f4946e5c16d4b62154abb7dde8b771e22798be9c39103b5319442ae8f49d5e42ca2f90026ae62848811fc38f2c930f0b266b445c7828e3d8fe4cff57b79d168e51beeaf15c693518204f5931648702f81afb1841ea2479c8acb2f42236fdbb0a99cfe83cd3cc58ad94908d61ce8b953e433599e9a086d5655508c79dc26662950697348790bd0905d4bf616ce4f411c2f76e4f91c6159c6bb317d90356c23dcd001a43ec94bd8d808b07ddf94b93b3191cd3fcd8529197f7aec255c2a25bde0968cf689263e0a5cb19be444f36ca797376b013b244f510191bdc007ac33f3f8e73bad30638679bdfe3adaeef93ee24df4fba7c405b5be5ec54cb375a5b9eb19473e981fd08b6f7408fd00e6cf2971f63d4d4d4b9ed066318efd0523250e0f70562c1f2f5c7c7317f999c74680b811baba2d84153f7ca6d1c7d0deb5ed31da60f477754725725b860a64448cfb8dd8c107613ce6671b956e6fd769ed556f8bf8310dc2f167f621de8421dc13edc84cb9c05eaaad7d9d51a5d7b194f8c3c7082e9d53c5c7a88e1c072c468a835445505c990379d34a2231407a1035c81a0a546ee27b1b3e7908d4921bc70721911a2c0f5ac25ea8a81b2509d40f2c727a9f1d7f91a4378fbc21145320f1b9ecbe54283e1237a5b90b44c9f49edbbc9f8ec73af7e6e7ad0604b3fd84191a24b3efb2d07db8bdf05b742a65e7405ef50e47fcc92d4029f7f7be4c5e7f1b3f85d1b9a5cf8c14228318ecbc648fa7ae37b3bd3d3c33bed9bed46bcd47ce89650dae8cc2c5e2965d59006b24beba14e70b1174cc4f828f11188bf0c21d552f1e5fbb022e84549b05b3f1c2936014c1c3163269abab98508a5c3a4b0d282c6b91aafd64866d01bd8715473fedcaa36ca1f1c6bdb6caf82753d49a4395b3423fd33b96313ecf41d728a5a57fdb8d01c3be7fd831149a0e0dbcd323ae4af4d062079e0c4039a7d9cd25fe20f033e5ecfa0d34e6920bbc1e88398aede6a28439e700e8844d79967451a3771d4b26eb5d012a49a5f817651c1d752163ac517541ca39025aa428f38dbf3cec4d648cfd3922bb2cd2eb8e18ffa2adfdee5b9314a82800447ad55873b14d820192cb62bfde5699b680f2b0ff07e2fe9862128c17a8d2827d5aa73023c573cfe37d372b39c13b414b1435c7a4951cfab1d8c74115711bce198053ae6a3d24ad64600e9c1f50915babdb52dfee9264142b108312222d198810898bab5e09dd09a9a27b62b6e7d7917708e7829903fa5ea835de5725a83d034aaf7321f48afdcba299086d4b20075e0537bf6cedc0b50a1e2babee1090e22e234279d658a75142ccac00c6bacc16704f1654382681498908bd55c4919e841323f4ac8888f1514f4dc9be789c604458de0ced5143c5b1c5d3a64246a68b5c3620a5869eed93bfa07ecc2711bfed1d8d3e927aa16edeff32df5ec23a53e4cd0aeb9b83cd9e67ca15be9333960147c96bb33e7ba5c9816a34b93347273c49d14423566556caae62a2e5d138498ab7d45f5681df334e885933ed2f45c1f726b4f0e231526147f9a892e78a9442aebab81060032dded67709cb278c054d5339d29025abd25b68f32b5742c9e4e313c40293a32f897e96a9422ef349d13a70f5993221fd921d85d2e55c0517cc0d241119a9b248af27cfd6eb37f6d9551bcc7d7db3f53824dbe2acd6f1c261cbfbb346ebc42a17060a01c6cb89c95f048bbc62cdcfcbc33177f5020583552c4093b278179ac176a20451d4968ef4582854ad21f2ef78c79cd5ada9cf2fa29cbd63dd4259901f5327ed3cb92f792e12965352a2a5190387e7d47eaec012daa03b3599ff4713ec6c90d84fae59f45c99825c4b9d54e1b714ae0d13fa452da84b95c7ceaeec30e11ebf55dfe3fde91afcf54673390f35b5f4d57288750bc6e203fbd939b7d3aeb04af68abc9f454132920a95c45bd7fcb35ac27d1db2ba58d1a4dc425ed4a5d315cf63321d9e7a96757b29bb5a448b79b2a85883335458098a8b41f3bb7c42930343a636e8d9dd148bdc22d6283afeeff0817287e84c50000000000000000000000000000000000000000070b14171d23",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ }
+ ]
+ },
+ {
+ "type": "MlDsaVerify",
+ "publicKey": "01c8783994aeca990b8c00ec3a55a898e3eb84efdba12db8f3acecf8ad5ab9e0aa86001124ea2b7ef3d568073ca547a5cf5b551acba08ab5e2d9a184106de7ed3ebc9a6b537c42bf577587df3eb7cc755be7c9cab128cbbd9abfa664069c4429ae879de03a15d2d7ec1e00b13961a76824115806c6406f9c4596b74e24529d0dbc66b368489523adcc643c76fee32242a8ea269bfd7ec7b8cc104a870cedfc83daea902b43f6073fa53541b3bea8f41f5b6eb60f53ab2fc2d4f3538a23c076eaed8f57aa86029a186c1ba082fc402708200ea69140b57b94085e9f6e40a9c2d712e9bf4be24b2ee1e61532531d5b9506b463056f63be7a4547fd95ba897950d42fba84e590ff51644ad54ed9d3e20aeab446183b3d728caa6dd3e13c0ff26b11b2396f4eed6bd2b1ba1fce40f9496688c127f2653e83de66db465815f79d4a84d6ddc8d0e9ba6235a7bf4a1eef348b654aa2c77038dce7c67e9fdcfbe6494be1540acac2a0a10d7d9cbade59533c893e2221d061b014620fdff18e34551c706299d0a6aab620dd5ec42d2ab09b42bf026ffdc49d7a624e7cba6180e22cfdad5ca927e9ac5277dc2d341142b793b46f44ff8b24c934b582dd35e63d072e014be1c5c3bf94f44b1e96cdd2489230d7b0b01be94d74964f85a14b2c008873b2f2c142cadd3ca6f7253842f9398f0b0f3b8611b3957aa4e5d8097278c30772d327b937db17937dd79759c2834666c185fbfe2fac4412bd3b3c6f95e3c1ae476389a1b6a350f3121ac642a66363b3630ce5c0d6804f54348b05e9a501bff54ff27fdbad36bed90ff689123dd1f90163f483f3ffbcd7380dc368d631b98a43d0153b4e1ef895cbcaa375b81705d2d8e8152e1daefb0448581b7e458edf90fd4dc58274f2393771928de20916c0ee00628bf51b6b1485cc75433b7756a07364746a4c2a38e21dca103f2784ffd5328ae1575f7359447b27c4f380f74d934a7c9a5e2dd0b382d84ad5e60b4d26e0e35c6827aa3663ff89550e99731857513e455e1eba734c0feeaa50aaa543bcb935fcb23f327927d86df7ae19cb179b4cc60f5a7e62c16eea7bc92a383cfdb4c80b837de045475cd837d9e3d1c0921c446bdb364b18ab4df186cc966eb551632f96e04e31835a8e7a08f14674b61bf3b45167a4f3eff00b2b754777ec52b55487fba51083734b3ee1124a179503225a6855dc213d74c12a644b472d434af24dded4789e3958d0c9e9043f8eaed5dc0f30a9a7afaf62587f800f828816f411f220df65e436572aabe887ace1328cd6146fb789ae6cbd050cc4f5611b0b533b55267d4cb3a3f79ebc13b4e97a6279eefce101e5acd0672665865ee211e99365f9363ec9e871e029a9a78512501cc5613388cf51109e7f9293609afc883dd9cd570d3facf8b57c7131eacd6cdaa130a9eb2559687eeaafcd5cbaa752b3b794377602e7e2dd7e450361596715ebd12e1608ece781f08a7917b15801cb3c5cf5b345c4b816988819e360badf36e5d52d8cd66a43a980b952d490c48501817434696b9ca061b27db5952ba249fa618017b7606e8a24b531232071e513ff20c2e05fca6c0c3e42f410c8098e02347dbb6fe2061e65359a187df76be1400837c0793aa0f9c0d1df64275a9df16a50b7d519f8b51ddb93a2ef0d82a616f7b4e69a6fd58ba72df593b3634764ffa7bd935032f00d49383c410d69b087d17070521d4ff49aa57cc46fa23c5edd21ad1425a1356740ca98821c065266dee6b41187b193316b1df0dfc0aa8ebb3e276c5cc357ec3420aa61ad588b01226ed7c653578dd42ae2be5b4cd36aa28bfc9afb1e51cf874605068ffffbabe15767fdc673b975eff3c92461b1b4aaaf3ccad8b3fc9e387ab904a8e572241923d27780bdaf3ce6cf8437ee66be074d512b3626970893d3df678653a220cd059bfdeffad46b375ce5f908c398542f15b0b63dfdb0f53934d7a8fb10a6bbd93962e1151c9736f03fd336d361605d688127f021cd9afe3f8da90af9b1e8c9e7879a7c30aac69294141099d1d503c2a5133f8b0bab47407693d7cd86aefc34d94743fee73738e7cdbd144ef9792f90ccc75ade1a9352ee7dca62e0358779105547a636cdd73709804e21bcc56c81190b786da338e398138e2dc52484298859bc7638d661fdd06e460cc47e7a533d76befc2ddd3728f402a0b5c7082f6a1f60e96e454aa11f178a1739f6ea30b7f6cd7969617ac7a42240f299f985a59db2a1036079e97b626947588c4719ffe3263b02e31c2f0d43f5acee913bd730611dd4b6146d16db5baba98de460c21f9c5edfe5e93c47f9840551f55b9e08864f68fdea344e43f83d7d7274232591257948d11087d2828c7bc4f585c8064418608fb3a004233b2e5b097ac2b60481339ce0f14ef5cc7a21d23a6465f01507639ce13bf12ecb2636850784728a89ecd9b6b31222c9e0249246abd1820e5c734b7467db4d10fbcea65bec7f48fa058a5c1fb2dcc76fc480d2e5aed0aeeadb238487de0296efa2052083942c79d2b10308ca123724765c7f0d34cda9c0f724504dd0b765a6bc844b1a457662313d5758419384d12c6390b32bc708fa67ca46425fa2a8ad1e3980a55af646ba6eadf4a9959dd206e61183908e70af65b63ef8da29a9d98e1c9ab5214fa4785590134a1e4df5fedbc81179557e8b8eb9332c0a5716e04411aa2cff283c18c55f8e81c59119c05b87fc7e4ebdb2be4b07f0d7856f595a5a7e0848d7fd",
+ "tests": [
+ {
+ "tcId": 81,
+ "comment": "expand_s requires 2649 SHAKE bytes",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "a6d86189aa75e8618ba96982c40f35622405b0d0b2f6621b7d7eed57d03eae4c03f3b9ea48a6f4f8d272487b4da8ab4055dc26925aa8d5636537dacb2042028ebccc9613411756918f9b699242445b23c1169a8bb525e1d4277e90a9ce3f68075aa9bf3634bda8b7e6a763df2f614d8fd9ed73ad5936b08fc63cbc60f4625626fc5f5afe853829098a13f8267aa6a76a9abddc1f4da58023b6be547d1e37ee4a220bf109233bdd4402c04a5119314c2747481966d106c333434b03fd1c4c37d47e459785cb50e4a37c0293bc20428a51faa666452a3f60f88ead932b74a45feb3193bf10d323364cf807ec7193f038770e0936bbe1d96fc758cdbde7fa7fd5b8b58d2ed25064500132edf8c8a0238f0ea7b55da8cc089b4ec03cce9e78af2e710b503b5ffcb95e564caf089aacadba9653ad780b52b6f0af8d44cd8aaa5ef8713851e691392b9998e8083131a9139b6939a90a372cda707cdab2423e72ceb12e1138ffd125d4ce5c2c69b601ac6b97eb77b30b51b64cef96e75f267cec817dad9a96a05fe91301dd58586a37c74f914104f5a8cfddb386a93c237c35b5f616a7615d58ebbfa71c3551685368c04497a3946fef065fc39c37a656ae2b6689563fab0c321a7c2b92c60eae122345145694c65ef7aea65a2a4060997465c0bbff4a71d811cfbf93edb022e50c99fd92394380559e78a5db34b513c37566148aa40443e31d18e977bc35b1260343b8e32f6d4ada3e60d084fd6adf097a20ea75abc810d8adb436eb5e3bcaca06b1d0852e9301d7d961571529a777cca4429cfba1e8c325aaf6bf24f6c8b8123a77843f8080abd9bf441d717aebd483f1cf18e102b042cb2e58a0bec238cec8b5cdbe61fea4f9c6bfcfc0bc022ee5f50c7f5b36065703f2cec29a73795f0682940126b994ee873be25ae55d430b7a671a9835a7f6fedf4964a09bd1058a5151747e27430be0ccaadf8d2f4d3e6aee2e699cf06052f77d0f9c503215a6b2004ad69acdc8747ed63d5869d8cf3bc9911630f64cf233c932ac71a098a982012ec7e25dbfc042004d8f530b9d9e24853725e679b6b751cd7bf80b25e4734f41971938df86e2eb70dfa80a2aa3e31ce9393737c14afd5f7470790f380bb8410aba8152e51d070e71a84cfed8192bd9d3ab2ecfc627fafa891e93bdd5d0224f67d857ec37ad2d5b3ec6f9711081b3bfdae4d05c0b36c70f35b3df8b174ee7fe08c4929e9c5702ffa20081ba7eaa9dcd8187938c93efee081b8854ec3983f9aac3a1fede31da432086af172a6f78776a37a61dc1ffd8e5cf2f1dd3420d8a1dacce8f44a2faf76e892bbc4d3ad744f745a7b5ace2e1943bd70d8f366fd200b15431e20f73074aa1827d59dcd3714c36d10f4b5e0b22e2e1794983e53d21b94fecdc73dcdc048df6796b4b38aaa4414fdbaaa656bc63aaea5c11c3a7c11f8cad30f678547820487959b9eccd27e96b7ade1294875ca071956196da01a9802309e27252840649ab35a3b344b178aedb82c6e3741f1049904427a6d57c977c41c42622642ff393c7aa178918d21bc414d58c81ca8953aa680f2cc5fe7188038cf1f4a0b6fb257e1c414275b9a74caed761b83989934953a19baf98a9575c35e52441487f0b7d5645215159fcb3b7b6b193892886024c508771cbc4b3f120810c7d126b14922d6f386e25309bfb4c1494f6eb4c9572e40856150f00cee661e67e210d24a147ad19565bda14c8de45a5edc77a4865e2b90fcdfbb5003fd90d7a758cf408a96b05b6237b0728e41d5847ba118fd8d42c4843b3864e3bf07c0b7136414836ff9ae6564340d4ce226b1b608b53ffeded5c14e91aa39f869b602355f5754c9c30958cbf426d1df86a498276f130e5b0e3c1862c440ce6e41ed1d8acdcd0f305a66769590244d672d34aa4b72d023332f5788649550039975e467f196cb35a276b6fcc394043ea6924ed262a3572bd354b3685d98e87ce4a5038f3961e89764359c5a507df56c18b030eda095ef6b3568ef010f57949d3633f397a7a04c319090bebec19f521325f0d8b7353a210d462e5a3e70d768c1e8037f57b51b1bf667018e354a14b6cba7d41a23d85d1f2e0473302dd840a085fbb0ad85b19d3e569346a9407329e24817e8a374156f87d2b6b5319f5861addcabd1356e712fe3757ed9230169e51c0f3234118d20f477314514e5aeec9fbeb0ddb58404df022acba911ccc5e727475a36dc9709875303807add451004afbdb4ba7e3ce36bea2ab5c10dc71fb0daebd762a93067a465297c83d5f49b12eb2c1884d430b24c3866c900b5ef882b0b819eae3a5eaf8290f86afadcb24e100fca7538672b9a7c2ff654789319070a363fb6de40fd79e7d2d35afb5adabce11df381c70c0cfb9369af2caf58871e2c48020ea23e7d39195c1d7792651077d8daf2627c0576facf26b7819f92d01cd2375432740cc3eccf93e67803b86802f176b8dbccaadd98327ff492e5a6ecf2234ccd6fab3cbc279b5ceef49cb4d93008dbd9429bcdcb1110db7fcc828ee02f66b7da8cc80d2d6c5f4fe98d8e64930c7c4d5dc20715ed88a6aced33e9b275a8b8289566d67b4f9d0364931f0462a253efd5c1e6db9e7f79a999b5f60819110898d07cf59e6c0cb39cc252705ccbd381c7260a23804060af41d1a0c57d4e684bbca270c608b435082ee5137701f433f3e99ccb3aae30a4451ca36f0a7319160d6abe4974435845ef133e3711ce15b46e5cac0b37cc62a4ded418e648deaf27019d6ff0b821bf8c0eb0d84b531ee8d98f14f4b7dccf6eb550a525746c8eef4f1d234318dbbd2969af3012d44768dd40d2421756e076bc3fc70783de3732de15bd68464f20a7980a58eaf6784fbfcdb8306e10fcdee3aea4e9f9dfc08549b9915b0df736c337e0f918913756e97e7029bd00f5f6d946de70235cf5ac260bb39eec3f71ae8dc19c7bf54fe03c6f894cbab5867bfdcf2568ab8defa4a15bca7421901f907b726970192ac2294b5a90bbd0fcfc2185e819fb0917c4e83dc6088377dab0a080e036c401a3de501764b718990c8514af6994024c9328d0068802e63866dbf911ef1fcc05a4b831df906c2efac9bb79df60a34def5bfdc6eee7425f1bbb21619648c8f4b01d8f047debe8b1b08b1ac090bf83d4363909886b40b4f3b0f1ecd486bbf7339a4a04466cc01ef7c5fe2ed61ad912b3f447b300bcab8849917c05f8c3b8be383d7f46909b2fa0ec95dc1f77e293cea49806a581719e983e90e9fdd8097cdb92788bece98aebd951d666c22e6fe06444048d674e7f8258b22b38695843b044213e0b78b22cfce0dfae13954900338c66e216103255e49691f3f36dab6aacc9d83ea5f93cb544509e0d75c92bc7637374aeb8a0211ff989e493d893feabac80644ea092301f07ca1a1febcf0276d00ea8627aa19ac3d1b5a374abab473b13b79c202dd555fde622fdee1ad6856988c59d000b4e96e1782f42ddee2f949ba17285a7ca4bc78654ad66068d7a2f4bda254748b2685966a9da2e8ea39bf7cd8b05651c6ffd7b61cb29bccc28b7bc072a6a2e76b1005ff5adcbef1394dd4ebe4a9e47dacdaad90943aeff3336180437964085e28ff94837871179745607d11d71f4f2a04441e981b7b4d3c9f85475c2e1e89eaf8b8b2ca3ea3bcc5aade6cb406b73290fecf015d36c5e244d3bfab75c7dfab47b751917158fe333321b495478eeab4ce2cd91173ce2bae318fc3d6906f10aa86c0abd975ba889e958e9fb4fc6acc846bf7196f4a42be5dd51c4d7b5f80303b0b64e35908d7cee503749bdd67d3ff633169dd4bcf39617de8067855a4e0acb680e2879795960931d3102011ae6242423abce1ee4012f7efbe556c68371c75b857c5635297f3ba7b7e5d6f030f13f9177303501ec67315198e7bda9f3434bccc060dd433f1dc4246f491ff255752d8cb103e278d5f35546502cfe85321a6fed500749fbb51316175f062080a20d3f52da159b448df61599f5754ca046dae3a14e9e03525acd9a1fe964c8caa9feb3ada82320d2fd4bae1525830c0a3eb91cb454f9dfa43c6534dfaf6a7e1d2b19d527d4f403863518f63246889614972e0bbfb126ea0b509f0c78278ca1911797fd5da6c00c8b6b212a511ea9bfe7c45fb742a109fa40f375490c0b5e98aedcec7076e1ecfa567ec3575cbc0892460c52e94d9121c4a9219049b7325f300f04182373a0f476f91a18b4ded3ace3d001900f9316d92be485b5dbefb54fc2b6ecc79609c03b149bcf2558ff915f49bbc691b45c3983fbe61b09cbe7f17bd4365e7461ff2388720fbd74ae451f61f73f8c8b51afe87e8684508f7d64ba03f2abaff47a30ee51f32e25b9d07371f578df432fdd95504d64be891762adaef094318e64a5dd86eb81decae2c30c8fdf3ddfced1a6f1a3671b6687765f9fd93cf66c52b8986c5ac3f78a8048d969fe78d057f8779a450c4c7cf554ca935c9f7ad781dc3f50ee6ab1afc087f35e02889a8cc70a333edd334688c70e85e5e33d7509ac4cd6e854791cbdfade909fedc5614190cff9b7b4f62951fb40fda1cf62ae77d00cfd450db333f4c669eea1877afb5babce2f70733396777b2cfd1e10304272a373e67698c40475d6a8dcdec141f999eb0e3e6eb0000000000000000060e1720272f",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "ManySteps"
+ ]
+ }
+ ]
+ },
+ {
+ "type": "MlDsaVerify",
+ "publicKey": "b41031e429023d8b0bde433401da448cee6c25c6ce0d570f91fea2e8e0003b8d8b3efecb56b34a3ade96b17d8b98ed28c6563f381cea1da2898be8a0dd4a3c7f187ee288d37f0fbaf512d127001c713d64dc036b1791e239d9f8494629b6276d0ac1e56ee7644e0bf860f098728ca4f225b500e6975a548c52d422d3d1e4f1939268060ddf304515490e90660f848d839e219866252b107664c3481aafc8afc83ae2d43f448aa51d5765ecbc910f241bdb815a4e11bb84309c947eafd69fd80b2f9cc66afa06ef67a9fbbb1fb4658e3f02babca2d96a4d93582442db9a245e1d979404a4963ee0f70ac7cadab852cfbdcc58ab0617fea49dce099a430f835f70240396aa39eabac3ec22e3ed79d724a77d37e40b8161ad8fc85c930e76d714c12b1e636a00897ea7a76f18a4df312cf7a0861bee298d6412ac5a694ac34473151728cba9d3026879332a23d2562e8eebd9324e062444696f78e70e876a8c197b95c82bf11a8588a831d684d8602cca58c4d8030fa904cd71ac066486afe9d3635f41611247715d29854ba1181c3ad312a7a28bfb01796bcd016c2f75d73fba343c8617b534175e06e4d9d2186a5e9d4348fd942f885fb569956a4f0e59ba57bb02f7cf56d67c0bd0db375bc95e58a23389cd5293694ed4d5d3fb3faefa4dc4a2e59df6db2fcb8535c37e1b4cae7e8cd0fa0d02a1b7875fa324da4c9e9f5dd25b56b313373dc7c23f1efb257a08d829c3bd1c80519756707869b2bc6fbad96beee610238142f8c73ca7667106c31d88f223b47a459baf382e45d347973c6279e62a77f8df2b489e1432684b0230ece5f2ba6c7e2ab70cf620436632f3a516e2f269995fdd4a36345a201d7ba22887d7c24c5c9cb8184c516ee4d97dfb4437a5ae8ef8062464d8badd958ad779877b4b1642505e3406b2cdbcca77c33d10905501d556c6561f4b64d5ac2ae015d32c650f427593e25b34dc334ce4de1a641c5544186ce6e852e9c9bbac76dca582de782e1c53b1dcc446fdc8fc1c141903ceecb37880fd6d5bb08a481a2315f5d39956529139d5250aaada5122d39dc5bb6d0f96e17f01d9e992ef9b220f08427ee83cf32c69058a5f24a0aa320d18923ed91661f5f74600f332e121fa51b628c086233cd9953a1428d4d8f41531a7233327f05ef347722294c31362995ecbe2caa069b869e9f232867fed5ec9ab09bd474c9ba1fd1362ae742f8f9984ae50eff7086d32e8407a8aba62df7817d694054d8d063bb6ad34b85d2e9c87d90f4338f5b92886b4a0ebf90954bcd4a7f561af87c966aabe3cbc955891c405355b77d8ab9b9ea0b149ed17266743e138ef94cb1cc823bd714ed75cad9498cf2375cb869af424abc95b05234fe24a832ab6829799312b9370d51b293e4c3e3bede66eb763672b51e0d567dcf9d05c5a3db7ea6f04f309a10f148292c33bffb8910bb67ef3324c085517b6d364116dab5f957ffe1866364a0b73a75ca5f82af7fcee26f7349d7c11a3424171b58948778e2dc03af2ee4b5194c777e337fc5a4b650558a2fd980fde30becb2dbeaebdd845b9e7fe98213889def8c4ba33c3a98acd2e0f9c6da0d9df4d53e06e597c1fb5cecd29bc0fd34446d48145a32633c74193333711d54e27db38fb6ae6cf0644822be6f6ba0dc7a41f7691dd8e3a7fe3c92ee4a7b682b0ae11c137fa1ac96d466cf491afaae57998e16a739de679d1d27f795f3852f402e8742ccd6d77d104598df9e9772ff775cc422c2508708e971481235e6b32d0308bb203e46f6c883b1736e17311855b61bdc7f776ae37bea27ce9dfd8b421531d556bbe953a703c4ca0c998aea7541be8b49c158b414415072bde726de24460a3b6da8bf23f9491e41b498ecb1ec07ffe587ae9a16d852eee18a6259d8f69ab7aa5875850d469f471173253eb72a81d546f31dea76544171cb4d0c6eb636b6acb2d1c9036339519fbabe0dd036b0fa69d0c207cfb59c3c3ad3ffdb9a8d6d353796515e5b606b4d07a8aeded5767c6be8c6035cba13cd948a0466cae07c8cac13898461b6eebda444b7b3a64ae1185e27fcc59ded90d8c0b9188b9538783ee0b0d6f90bcc753a12f33ad1e96b24585994f7b7291b4a2f1b240553d4c9e8d8e6fc4c354d85f2928b3551c20c97ba23a053f04fc11c72a4db576e76a7be027552b7903e9568608811258396d3f286dc307c4c05a546655ea08e8200e4d6002374043559b768021aa6e036144df0ea32e1f3f2a158fd2655d6afce1b3721353e5977d59e61718c95e026e3d9069b97e146340247fd7dd7c71cc6d83d2668fc36740098859ba5941c548541c776f5cc38ac3840292e4d17879ced0f72d892c297d15afa4d1da9edc7e58b1c44302b504cc8b926442c03f900cf683a7286b844bfb35cca31ebfa2721082cbfeecc681888afd938a2314cc4f667d7d5a7dc5df04b6071f108f97550d5afc29b304191aa5077183a970f099cd6c59120ae1f95a9cce12a59bedde1e499a20cf42d69e86430d18474621d0e4e4edb1b71d991cde47e6509ff8d1bd2f86440374213a28487afa099b69cb78f357e9a64dfab99d5e7ec01499d077095edc842fb32e185b83bf1bc30f9b47c48c835a729d1fba5ac37fa941fba7d05667a787a5cecea0b8b47986e897060b7a8b93aa5920f1e7e14c5085d9d2215dd6b9c2cba0ea4f999fa35d425bebc3a150c7296b208ee0353f7d23e14f09b2e5c05128e08c97f56d79dd1c0dba1fa32f",
+ "tests": [
+ {
+ "tcId": 82,
+ "comment": "power_2_round returns a remainder of 4096",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "b35a9d26d3cc6ae8bb05acf2044555aeac041165b78f65f13831ec482972193f4ce7eaff57bc166a11206ac59e51f798b7a0b3776e447ce2941b99a4e0f6238a8a5f3487813e1cd00260127a67f5fd09222668f3edd5db27f9f9223417f82dfdedf9ab5ea6ecbb325f2bd4669d59a2bb8634f2b658d2d3362a79454372e2f31f81e6de020436f9bc21db4e2b368a448aa15204e170ceebf7b767290ae3634b094e569375efe46b71c0ceafc9af5eab65325403e9f7573323ecaafe5f0a7b34f3de08f124da2e2075b2295d2390b41c737b48767782a83c09d46d7ef1cfa8eecf154d35cc8b68fdd4cdc10c04e0470953221962cb98ec479d80461d9608f6f489cbbd6266b05266a52d99146d76060155a093eac3c3580aea48f183bc95aa2b77a00bf5f110ece9fda38a344a20eab6be2830006fcdc5cc5ff247c357a639f665562a527a99fd1c0e69b37d5ccc50c65c27dc057d6c7be4f970b01057c612101dfe9fe6bf23b621192c5e94a8b411dfc3bccfbd11a94ae05869f711f1fd8f6ef9b7f9b1a9e4173b56c99b05bb379865ad9e414fa44e6ba4f67ab4d93fb045ca0316ddb9fd92d1ee08c3fd8e490c7e533fd1f761355c72a37d9b7d4814efcacc66c8af043560287b54004ab30b91c03d8a510cfd5238cf3ef301d8efb042d331e3c2ea48876b9dc9b05f2e941975d247defa4f8cf2c7bed438ae680fe52ab144e7bc9d0926eead50fedcd7aac60fc342cf566671e84b02285686a0e9c49e5e05807a6b96df521c38905ba9079e9aa6673a1ec2208f8b2dbf03dab944e909b58ff791facae78e429a60dca239df3e00d48fe4848033d35b5847fb9a78b3364c9b37b7e0a9f3c497e811187f26ccb57db5fd669dd4b5bf127b5f01e6a9285b607823a82062a096e0b8911f7b0543aa6fa36b0c2a5f29fce780cec024560938c61915873beb6bd642d67d609bb43f9d8b8a72859fdb13f42f4f8ab60bd23725ddca6f586501e929d9b889dbeee8955be8d3251d41c46db3ddb75b880210f447f40c6dc5bbc52d22d2c4408d68a0d8a5adc2a2c9d7348569e858c9fa5254a03f9f1e973c66752c6fb0f09e32e8a587a56107ec4801d7c1fbe2b9de6db7a46aac7291d4081a53c2c6e9b1b0afb4d5204961553f23dad621bec8078edd3031bed2651f26eba978c2d9e230083d61f054548090b8fd5f9a31af5ef2fc2f5b7e21345169e869cb8d2707d1f7dea43f1770f153d50e03f838c41ea4eaf4679d52f23c6d41727c9922bd611b185bef46a220a0a76c7ee1d45cffe889af4331b9f6b9665830ffd9b3fa335e4d0d66bb9f1d835d7c123abb334daee683116de8e4342d11ec42a834be306f1b39ce24d9cf838f7fc8ebe939abdae09f8ee7c10adc56d26fb6a928242537d372890143605bedf8c601b031fde9cec47bef17e4e54a5d90e470cf4e826fd69193e94a21e32979c368fe9ab7dc1e582d02759f7f6b8386f4b005f3c4e956ab528b8436714a132c667ec0f21fa9993d37624d8bec1d9d759f28601afd8c7467247c8bff3b35d0fbac82604ef25e4b88ea05f700222baf0b633623467e0b191d88c1bc550a1dbef2813df92556f48c99cdd22557003c3c8d39cfb91316a4b13a078afd5d52c5a8e07009a88aa93ce463318d89a1cff5ada0d1609cf0df966b0ca14beebbecd9079c09467c1139ff8ba25adeb114dc51f662d76105cebf40ec1ff82879c8e3a653343add75ec4d75ddc6f6b76ef85092085b8d121ea81d875b362d95c4e28042df3958f16c7218215e9039c1cf485ff3154e46d3f9825a8e1f74e2134dddd56a81d8c1a21121e2dbaa322926581cb75592b99c9f90568f9b6e1e36f0fdb3a9e5dba272403375e42f3a32342354a798b26e8f295a9f377e022be8485513bfe6cc05f896cb62292acf714dd81d1e87ad89b38bab5532e337b2f326fa6cd508ff2760bc2501d729a66d1ddfbf9d622757c21b2a5308143f198eb02035adf90d44aebcd12fb161515025198a26433c7adf75f6077cb8a536826e18e4b80964e97c6354455306f3c5b6a8603c7bd2302c20faa46cba18bcd57437f474939643d7c25422ad36e56c3a80cf78deb62d9ef3b2de60ddda3a6c080a39c24dcfe88ed6a5c974a5dfef3d4b524d425bafc65dfcf4d045a1d21ddf393c73c2806ed7200a86ab718655f8951a1516ee527cd407baa36e27c72e97503a3280104d92f8248f1cb0c6c0d91b262fa39b8056796f954150d1a0911cd6c7bda3870ef566ded8d656f2ade63f13c62aed5087bdc1469eeb64418ce7af5fc50b721575e99df25432804306a89fd33c0406be8beafadc28f533e12d05bc3ffded1dd59cdfaaa54bc8dbf75b05f72b3dd555172666faa87602411ef6d97ff3254706b876844ebb3948f13e62380df05f67bd13eee4b8a2d7fcc53263072273eab92f8b7bfa64371b58a412bf5dd806c2b8054e8f6efbceee0700e20f6e4e61a6fd6dfdd170fa37e6559362e7b56c9ab7e27cfea2bbbf19c1815e1c863fa24c50ed465aa12583b345ee4007e9677f5f582c9f9377e5b0b12f34ec4e8f4199bb7a683142f07daa27951466f9d608389c17c5c50cd99834e5e975304e2ea1f6b6aca94a433294831a8c5e14dbe46017932035041cee0fba54f87421fbd14b05454543cb2e95046080da6ddfb81aedc37e51d0b1c3b6d036f8d97f8ad4e7752324c8bea832cad6f8afc499b35164b71f497d86d54c5e0cfc67cb31e01a6de5cc43b42927b20ee57b1267141eecf85bcc94c5469f68176f8313a706b2b1ace776bdb69c2fad7fa383dda1895c36836da08676a1a2ed697843f135c385831795ee32a5750fcf08013fbffba54edbd4ed3fafb6f5552a389a56f41f68d1a721b7b344f9e74028217c39c3c2aa1fd9b44b90173de0f986a3e2fae6e1cdd3458446518b2551a3d3ff4294dc2c217bfb8b281b42acca144fdf8c1ba08acc10077c06dd8cbd5d4ae2336cb02cc400a1f49ec581d1e2c62e1cd21be275be4257105836aa99631041b999a16d6d57c1bda6399aa50adf0d4fb8e1229d8531aadc834daf90408fa2120ccd2d39df7f93ea12af0873df00e201b4bd6851ccd931a23e6589f4f583772ed426ee324105d72a05e308401cdb99b283c93cc518ed7c98f230d3605e987b79f8b20d28f99c46850c025d26830dbfee8230234b3efac3a3ebcd322e84c604782830397697bd1308d07d24dff64f7e453dd0eee7161f7e376c7f5e108e04f22dcafa47278be38a4754bd7c9b657fd9aa77a76cf9889a2e6f0ddcec106db418d7329686bba394ee09c23629009bfb10b360f649e962cff1b0dec8d47016cd15a068a5c9d8a721096a61e91b00bc28816f96d4fb7229d77c4a9b3e23ee56f12cc973bb0ef158c0bef405bc6483797aa1d4eb1cc7b2e1e34365b99d3b970b8dcdd7655d143fe6f4e191b2cda90a1e6158f55553af987edc08a78355557c3c36a2fb530c5badc5fa786e6a4feb041caef1fc0e18283e00724362305ff84ac5478b4db29859b980f680b1ee2486d07ce2d2b50264f693351d2c7e03de1922bfcee5dd7103c9b5c3f5426141f293bbdf920431e639dc79e63343d48480354204e920bf276dffd3b2692ed4a9654c294e1c0c3a0eeee84549f227250a4bfef594ea0c3a68bc2c6619f85d0c96b01dd05a9c076a7a2cfb6d0e3dc616147d3e7eb7006f2026040ca208351cc2f3fe3a7e72d5f2ae2c18ad5c80e1d87d439a1afb4672729ae4d04ad517e5a5dd903fc1cb5ed3385a11762b5a4e5d9d7fe00135e6857df3bb623cc5963f0573d858a0e62d31d5ecd54ca5eb4f1344ff1ba7bc2544e7140c5a2b9c3b604c88f0253e44b31f2543ef0e682c5a50bd2933f8bc22debb3802625fd8963d373321a0088cb910f51762e496f50d822b9d445780ad78f6c8143dad25cdf555f6fa49eae6841fe8e721437c7f541ffff6596b7b52770f44cbe33e1ad00857a8d36c0ee20de9c9e4d8b4d183418c5739c1072230007c196a2f67135591c9c81cd259cedbafe7178f28ed9c1c8f72e6669ab9ca2250c919e29bd71a618f4ce5cf4eed1e1e13e052fa0279fc5e55a4e9989c17cacc46a33e39b40e29580dd07d6ba47716a483e99a02eb36fa3c103694ebbcbe9310516a56ad1f6c0863ee6cb316ab68471ef6cf8612a0e6ab593f85744564a450e1771df0523dc7b3a1e7254a55f1e71dc802a98b8c60e795d1b50af67bbda06b3244372387bd3e1cea4b660a83644f08e9ad4578e431c3b560dddfb4aeb36ffa993b411df5bd9dcb13de404f818aa051bae8fdcc8c10190d4f0c7d398a0743ca53a388120d5616042c0b1ee79821e35b7717f021b2c28e871fdbe5a4c06b1a4cb38f4b3950604dcd9791904212502b91e4e4b39c9b805fa7257dbfa632ba272ab4de9cc3fcd0c4baaa5c231d959ef27d68b9ff3a473176533fcf5fd26c0e90b7d5d65d4f8a4a374343df23e823cabf48dc372f7d508bd2eb0454a4ad59061cbd1b0a57e777f2473ff769e5c91b3e05af375fc5123b55bfe419e975153193bdfbaff571c0e7dc2df2e0d60738f8214a43ce6eb8880f2da4ad6a940143597eadb4b6de022329456e84a8b5e4e93d9fa9ddfe040b107ac21e4e6178b0eaf907114472a5e400000000000000000000000000000812171c2329",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "BoundaryCondition"
+ ]
+ },
+ {
+ "tcId": 83,
+ "comment": "power_2_round returns a remainder of -4095",
+ "msg": "48656c6c6f20776f726c64",
+ "sig": "b35a9d26d3cc6ae8bb05acf2044555aeac041165b78f65f13831ec482972193f4ce7eaff57bc166a11206ac59e51f798b7a0b3776e447ce2941b99a4e0f6238a8a5f3487813e1cd00260127a67f5fd09222668f3edd5db27f9f9223417f82dfdedf9ab5ea6ecbb325f2bd4669d59a2bb8634f2b658d2d3362a79454372e2f31f81e6de020436f9bc21db4e2b368a448aa15204e170ceebf7b767290ae3634b094e569375efe46b71c0ceafc9af5eab65325403e9f7573323ecaafe5f0a7b34f3de08f124da2e2075b2295d2390b41c737b48767782a83c09d46d7ef1cfa8eecf154d35cc8b68fdd4cdc10c04e0470953221962cb98ec479d80461d9608f6f489cbbd6266b05266a52d99146d76060155a093eac3c3580aea48f183bc95aa2b77a00bf5f110ece9fda38a344a20eab6be2830006fcdc5cc5ff247c357a639f665562a527a99fd1c0e69b37d5ccc50c65c27dc057d6c7be4f970b01057c612101dfe9fe6bf23b621192c5e94a8b411dfc3bccfbd11a94ae05869f711f1fd8f6ef9b7f9b1a9e4173b56c99b05bb379865ad9e414fa44e6ba4f67ab4d93fb045ca0316ddb9fd92d1ee08c3fd8e490c7e533fd1f761355c72a37d9b7d4814efcacc66c8af043560287b54004ab30b91c03d8a510cfd5238cf3ef301d8efb042d331e3c2ea48876b9dc9b05f2e941975d247defa4f8cf2c7bed438ae680fe52ab144e7bc9d0926eead50fedcd7aac60fc342cf566671e84b02285686a0e9c49e5e05807a6b96df521c38905ba9079e9aa6673a1ec2208f8b2dbf03dab944e909b58ff791facae78e429a60dca239df3e00d48fe4848033d35b5847fb9a78b3364c9b37b7e0a9f3c497e811187f26ccb57db5fd669dd4b5bf127b5f01e6a9285b607823a82062a096e0b8911f7b0543aa6fa36b0c2a5f29fce780cec024560938c61915873beb6bd642d67d609bb43f9d8b8a72859fdb13f42f4f8ab60bd23725ddca6f586501e929d9b889dbeee8955be8d3251d41c46db3ddb75b880210f447f40c6dc5bbc52d22d2c4408d68a0d8a5adc2a2c9d7348569e858c9fa5254a03f9f1e973c66752c6fb0f09e32e8a587a56107ec4801d7c1fbe2b9de6db7a46aac7291d4081a53c2c6e9b1b0afb4d5204961553f23dad621bec8078edd3031bed2651f26eba978c2d9e230083d61f054548090b8fd5f9a31af5ef2fc2f5b7e21345169e869cb8d2707d1f7dea43f1770f153d50e03f838c41ea4eaf4679d52f23c6d41727c9922bd611b185bef46a220a0a76c7ee1d45cffe889af4331b9f6b9665830ffd9b3fa335e4d0d66bb9f1d835d7c123abb334daee683116de8e4342d11ec42a834be306f1b39ce24d9cf838f7fc8ebe939abdae09f8ee7c10adc56d26fb6a928242537d372890143605bedf8c601b031fde9cec47bef17e4e54a5d90e470cf4e826fd69193e94a21e32979c368fe9ab7dc1e582d02759f7f6b8386f4b005f3c4e956ab528b8436714a132c667ec0f21fa9993d37624d8bec1d9d759f28601afd8c7467247c8bff3b35d0fbac82604ef25e4b88ea05f700222baf0b633623467e0b191d88c1bc550a1dbef2813df92556f48c99cdd22557003c3c8d39cfb91316a4b13a078afd5d52c5a8e07009a88aa93ce463318d89a1cff5ada0d1609cf0df966b0ca14beebbecd9079c09467c1139ff8ba25adeb114dc51f662d76105cebf40ec1ff82879c8e3a653343add75ec4d75ddc6f6b76ef85092085b8d121ea81d875b362d95c4e28042df3958f16c7218215e9039c1cf485ff3154e46d3f9825a8e1f74e2134dddd56a81d8c1a21121e2dbaa322926581cb75592b99c9f90568f9b6e1e36f0fdb3a9e5dba272403375e42f3a32342354a798b26e8f295a9f377e022be8485513bfe6cc05f896cb62292acf714dd81d1e87ad89b38bab5532e337b2f326fa6cd508ff2760bc2501d729a66d1ddfbf9d622757c21b2a5308143f198eb02035adf90d44aebcd12fb161515025198a26433c7adf75f6077cb8a536826e18e4b80964e97c6354455306f3c5b6a8603c7bd2302c20faa46cba18bcd57437f474939643d7c25422ad36e56c3a80cf78deb62d9ef3b2de60ddda3a6c080a39c24dcfe88ed6a5c974a5dfef3d4b524d425bafc65dfcf4d045a1d21ddf393c73c2806ed7200a86ab718655f8951a1516ee527cd407baa36e27c72e97503a3280104d92f8248f1cb0c6c0d91b262fa39b8056796f954150d1a0911cd6c7bda3870ef566ded8d656f2ade63f13c62aed5087bdc1469eeb64418ce7af5fc50b721575e99df25432804306a89fd33c0406be8beafadc28f533e12d05bc3ffded1dd59cdfaaa54bc8dbf75b05f72b3dd555172666faa87602411ef6d97ff3254706b876844ebb3948f13e62380df05f67bd13eee4b8a2d7fcc53263072273eab92f8b7bfa64371b58a412bf5dd806c2b8054e8f6efbceee0700e20f6e4e61a6fd6dfdd170fa37e6559362e7b56c9ab7e27cfea2bbbf19c1815e1c863fa24c50ed465aa12583b345ee4007e9677f5f582c9f9377e5b0b12f34ec4e8f4199bb7a683142f07daa27951466f9d608389c17c5c50cd99834e5e975304e2ea1f6b6aca94a433294831a8c5e14dbe46017932035041cee0fba54f87421fbd14b05454543cb2e95046080da6ddfb81aedc37e51d0b1c3b6d036f8d97f8ad4e7752324c8bea832cad6f8afc499b35164b71f497d86d54c5e0cfc67cb31e01a6de5cc43b42927b20ee57b1267141eecf85bcc94c5469f68176f8313a706b2b1ace776bdb69c2fad7fa383dda1895c36836da08676a1a2ed697843f135c385831795ee32a5750fcf08013fbffba54edbd4ed3fafb6f5552a389a56f41f68d1a721b7b344f9e74028217c39c3c2aa1fd9b44b90173de0f986a3e2fae6e1cdd3458446518b2551a3d3ff4294dc2c217bfb8b281b42acca144fdf8c1ba08acc10077c06dd8cbd5d4ae2336cb02cc400a1f49ec581d1e2c62e1cd21be275be4257105836aa99631041b999a16d6d57c1bda6399aa50adf0d4fb8e1229d8531aadc834daf90408fa2120ccd2d39df7f93ea12af0873df00e201b4bd6851ccd931a23e6589f4f583772ed426ee324105d72a05e308401cdb99b283c93cc518ed7c98f230d3605e987b79f8b20d28f99c46850c025d26830dbfee8230234b3efac3a3ebcd322e84c604782830397697bd1308d07d24dff64f7e453dd0eee7161f7e376c7f5e108e04f22dcafa47278be38a4754bd7c9b657fd9aa77a76cf9889a2e6f0ddcec106db418d7329686bba394ee09c23629009bfb10b360f649e962cff1b0dec8d47016cd15a068a5c9d8a721096a61e91b00bc28816f96d4fb7229d77c4a9b3e23ee56f12cc973bb0ef158c0bef405bc6483797aa1d4eb1cc7b2e1e34365b99d3b970b8dcdd7655d143fe6f4e191b2cda90a1e6158f55553af987edc08a78355557c3c36a2fb530c5badc5fa786e6a4feb041caef1fc0e18283e00724362305ff84ac5478b4db29859b980f680b1ee2486d07ce2d2b50264f693351d2c7e03de1922bfcee5dd7103c9b5c3f5426141f293bbdf920431e639dc79e63343d48480354204e920bf276dffd3b2692ed4a9654c294e1c0c3a0eeee84549f227250a4bfef594ea0c3a68bc2c6619f85d0c96b01dd05a9c076a7a2cfb6d0e3dc616147d3e7eb7006f2026040ca208351cc2f3fe3a7e72d5f2ae2c18ad5c80e1d87d439a1afb4672729ae4d04ad517e5a5dd903fc1cb5ed3385a11762b5a4e5d9d7fe00135e6857df3bb623cc5963f0573d858a0e62d31d5ecd54ca5eb4f1344ff1ba7bc2544e7140c5a2b9c3b604c88f0253e44b31f2543ef0e682c5a50bd2933f8bc22debb3802625fd8963d373321a0088cb910f51762e496f50d822b9d445780ad78f6c8143dad25cdf555f6fa49eae6841fe8e721437c7f541ffff6596b7b52770f44cbe33e1ad00857a8d36c0ee20de9c9e4d8b4d183418c5739c1072230007c196a2f67135591c9c81cd259cedbafe7178f28ed9c1c8f72e6669ab9ca2250c919e29bd71a618f4ce5cf4eed1e1e13e052fa0279fc5e55a4e9989c17cacc46a33e39b40e29580dd07d6ba47716a483e99a02eb36fa3c103694ebbcbe9310516a56ad1f6c0863ee6cb316ab68471ef6cf8612a0e6ab593f85744564a450e1771df0523dc7b3a1e7254a55f1e71dc802a98b8c60e795d1b50af67bbda06b3244372387bd3e1cea4b660a83644f08e9ad4578e431c3b560dddfb4aeb36ffa993b411df5bd9dcb13de404f818aa051bae8fdcc8c10190d4f0c7d398a0743ca53a388120d5616042c0b1ee79821e35b7717f021b2c28e871fdbe5a4c06b1a4cb38f4b3950604dcd9791904212502b91e4e4b39c9b805fa7257dbfa632ba272ab4de9cc3fcd0c4baaa5c231d959ef27d68b9ff3a473176533fcf5fd26c0e90b7d5d65d4f8a4a374343df23e823cabf48dc372f7d508bd2eb0454a4ad59061cbd1b0a57e777f2473ff769e5c91b3e05af375fc5123b55bfe419e975153193bdfbaff571c0e7dc2df2e0d60738f8214a43ce6eb8880f2da4ad6a940143597eadb4b6de022329456e84a8b5e4e93d9fa9ddfe040b107ac21e4e6178b0eaf907114472a5e400000000000000000000000000000812171c2329",
+ "result": "valid",
+ "flags": [
+ "ValidSignature",
+ "BoundaryCondition"
+ ]
+ }
+ ]
+ }
+ ]
+}
\ No newline at end of file
diff --git a/third_party/wycheproof_testvectors/mldsa_65_standard_verify_test.txt b/third_party/wycheproof_testvectors/mldsa_65_standard_verify_test.txt
new file mode 100644
index 0000000..e529cd5
--- /dev/null
+++ b/third_party/wycheproof_testvectors/mldsa_65_standard_verify_test.txt
@@ -0,0 +1,617 @@
+# Imported from Wycheproof's mldsa_65_standard_verify_test.json.
+# This file is generated by convert_wycheproof.go. Do not edit by hand.
+#
+# Algorithm: ML-DSA
+# Generator version: 1
+
+[publicKey = f5408337d0fee65c28851226a5fa81b58464632c78e2a9bef70d330f2e3a5f74d9cf676aedd1067c91a5dd5d4edc46f868a93ffec9f44e254e44f682a153aeadf228e8db7c5fcfed30cc3408e261ab896876bee56660d2a7c1d7eac20c5754255206a178f7156295065ce7876f90c48f44bc37f3a00e32eefd3a4bb1e298fe283d106eaef92a33a594253a2a0790976a1d04636f8672d28c06c852ea8bb43b84bff512996e7616963d5b9a2906466a152c7ea9be178be35405683b44367af85d2daad87630c1e21ba5490154f0141780f5ed0407cb0b975dd56d5930f9b26413b843b83f3693304b0038bd3e4bb398868060ea18c9c67099376470a50deb052e4056743fbcdf0341b192663bd1c21ba3b3d5666e0d0e29c4e1ed0759ab0bd9d1d355011b94e0ff0c049b03ddb7138640667144fcacd7265f55a07e5387f1abd30c037cf14d436aa855f827049215440d8007f61460500d943f57ffb6bfee6fedd2fcec52882d7d8da1aab29e892c8beac3df3234b4a7d2eca3a45c6623c52bbdd07c1c94314b706988a52029f8f8b06e874b741d72926652c78c6ace2cfd8864eadb2e4b39cafe6e03e4edbafa2747db9bc42f92af8b031e3e380846b1bfd15ade88c285d6a6fffe91eafc8b17de6cbc68575f323cc09fc20e49e8efd76f9568bec486b78df4245428d8d0d5f53873e11de65fda4c770b521a8c67f5c51d48cc26358954514447881fd9a42e5891dac7e1db5249d7861b322111e5fb929bee9ff5e9d5a2667ba93e63fc03040d2e82648f89e89dec1d1d2dfb9efeceb7940f7dcbebeb5a239cc1c54d8f7d52cba220d0634e15df46a58280bc5a48840bd39274cfde150f9ad9a40f6398d715350925f0e0501944409f32331a362bdaaafb3d8ce71c964332d6afb7e684f99951246d88081c86744ae68133f22c53a4b5ae258f230a98491d2d43a79a6d0f4d54a3b62013965ac7c82d0507125a38a0277f81cbc1d46cef2a131c6f51b88ec0baae0c82a6a0e72831cb06f9116cff5111d597e01057d32805a008f52c9aec3311139bfb35982789ff83bdd0c31e9f1080e8ed8eb99fde66bafb29e3357389fe3785b60c78e229ef073e1b65e34d848bd4d8a4f251551e2d38d2546afbc205d3c6dab34d2b962b1afb44f1d22fc10c6744fcd6b636afd3cb414b16c2e0d708fe9f51ff19120bde693b028b6d1e6dbe37b4b8b3bc7c6f7a842701603869d3ded572500f085502efc8d3cc62b30e5cdbcb5e86d9c0d42973bf755df539cc0aea58f9148386db67bd2bf70cd12ccd96d5c66fb271416b772465228dc44b079178f9b766370b66a79b871faca246ca6f8f63be9f0668297ac446cad5cf4a83318b1b00ecbd283f0eecee60a9a37a27abdbdbe382e307970002837dfc0bd3934ebd008918fd4bd383c02c9d37f694996e989a49075767ebc4a2981ef5275455e026cb0bd70946cdd1fadaf251381d324f9efbb860d1b280c29685bab97d010676273b45cca12ac3966aae342c84e2357eccf252577743b8787967b40b07ef2d3d9e6c1a3bcb059cba0fdb7f0d4f815c242b8e14acd3375e608e9230ba3cf8718f43882a3e1e661a2bbe81830d34741f33473e263b3790abe67acf29f5df44865b2ffbc96975fd62738a64112deda5a2534fb0a23b3b3024df986391badf9041c593c313a7ca1e1fcffcb65b07b9a99337b4a4acf616cbe1553eb9541f38aa6247342905995233a28172ca13396b2a9662970120f82b92a213f43de7a232ccca3268265c9ce042d50915430a6c455f32277da42f9962fb9163b623231ebc080fa7b8e9f9021fcf85b98f9c483e4d2226b9326a5bcb2e7449ef029ae142d3a0f0c28bd4f7e9c51a12e1336f24dfacbc3f808a8f7dd683027bc948763b808fb0037394b8b41bc9b2ec7887e67584e03d11b15ca203b2bcb43f8881638c4e4eee7f846d09c7f89b7739df22b2c3acc235032ba8f7ae27b5b9d25733143e80a4cdde6770719c1e66ec2ce683612233e88fafff84c0745a98aa1254c8219c6c556348c2b5d1beeb61532d6bf7bde153271dc647460beb65fe0055b33fd6480dcbb9d7d471952cfa5be260c39721a8c5c89b9e966ae2dc9036451ec9f2c49433b2225e13f23e20c2bfba81a7b3a555883449238f7d48213e9f10ce19e76f1bdcfc73ee5524bd7d8be0a4b46784e238233c04fb99383ec7726f9717e1179dd14fba9ad6c2ebd1699f0ab0e57e6cad23875b029e89cfda06f51266ecd2eed4edafb51e82f2a506d57ba74da611774ca5fa2fff4a976519de425885e7d09219cf815b1767d4fc5a72c18918991a285086a6a766614a4d245387da50f28dd778fb33ab88c0918feba3768c55bb1f07aec33cfeed33d6faa4d34fd7227b365533c1e67dbc89f0b20195cf1cbd480d333ade1c9bb28308085b72ced430268c1492a27050c43668adc9cf8b8509447cfcd3c8f8d8eb554f704101786aa9ebca86991d250776a37a1f56fbf7d08e591f978da49c3870625879f70e2418aec5cba32fa8c346fa9038baebc35ad0068a4d03537aee14c2e71570a87490377fa8dd66f995aa044a522f0c7025a7ab2dd5ad30a64268dc112b7f9fa156df64d631f55f1d6edc55cec570a9c7372e29e02c8d4867bae249431dcf6ed2794a0183f0f7501201feca4a81d334c642fc8d38e9a90fa77429665e09e214797dfa455ff47c4f219d3a2cb0176bc2236455123c1c5da714ad29d580fb194f87173a18dc]
+
+# tcId = 1
+# baseline
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = 69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b
+flags = ValidSignature
+
+# tcId = 2
+# empty provided context
+ctx =
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = 69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b
+flags = ValidSignature
+
+# tcId = 3
+# non-empty context
+ctx = 436f6e74657874
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = 3a1f0e89fa72e489e2c4c1607b0f22ad03513725660d1ed7cc9a6b83580247a101ff45480e4ba49b1feb3bde46952139d3e1d34d7da0124e8ffa05bd19698be57ffbd5c2411f01a0588898cf4af2b3f3e1fd83e8befe03806d91869eb496c8ce989761da7190e036eb2bd14a8f9e195d5ab8a1b2b11dd56a098c1e7ec6d508856aec98b74850e1b934600b8b7d33cea5f79877cb9b1452a2fbf5fe09651c83c2b965aeb496a2a4edacd4f6f39d56cde44c2f99c2f0b548501220f553a1ad14c6d8a970d1cd6dabd4356568621d22c70dbbb21dab61c10876e34fb20d3f012eec956cdc9ed81c98e2810c218dfbe1de709ceec9dc2eb2590d31fe9855f8a1d14849f9df5120bda5a0392fd6cd93e2e8e5f80e6b30f45e9b409f9e251a0ca2aa8ab99394e9190f3c2cbd1bda77b49f9ac887e7ceefc333cbc49d080726cf373753addfd13fd4204f12c07a21fe2ae5d513eff664c0ae4780f4d4f87a807ec63efe098e7d196223276f4564efdd574402c77390d2cd72f4785501f89175f6d38768b6c77838723cfa66d42e3556077039ee8fb363b67c174fb70f78008229263350c14b54fd9361a9cdb29fdc57909c757f96f9f2c13905f44c3e40a16a92b0fe509ae9cc3647afeedb032464b176b6a1afa78df4fd6bb765e37071172bef2b6d045b9a51701d111b60d0a639c0ba034d5c6b4c146d079a340fe53e9cace778a995ceb2d39f302f066097eec6f65f775a5e803f10af031dcb3eecb2bc4939f478c5fdb96e0513d9ea90ee2cd46ba7fd45f88e8c38a23e06fc5b2c624708a5dee0d00bcd976a8f75e35c80caec5531ff4ef8bb735cbe7ffce86290eef23248b19272692b758bba1de7a66c63a58315e48f5b127849c759d185908a730f1f29272003e6491a0b4aa9446da297338e04a60bd5f8413778aa08cc0d146ba76a5ebadc775af2b0b3976acb54de8910417f857499d8395be90d207615dd061317e5385b886281699e484a7f958715dfdf3ec30d5423d94e0d1657a24478967513fc741fce01f848f9fdb8fa407b7cda2f7a0eed64d9795a2bcc9e12c1d09b4d71cdc9dc3fd2ba82251f0a9fe5ff32732d2306900184e4296bf4b5b92c106d72a638c5f6713f49a7099786b32ba7a8081aaf0ca40f9919e0645fb255c8a7f4aa672999ab84a19b9d759ce478b7492b48a83eb9bde46e7c5ea1883d03487ba01c8a9c4c798a765b18b311115d02911dbaa5566190006ba40f5ee86bc22eda4ca3d0e8fee49b1a61c4057d95cf797c30a7e06d1012c1af3622629de1765d3bd928df0cb9cc7e30299c5148f782af4871556a0ec4358019ef6a434ea3e0292e97c714fbdb3ab14837257947eb7adc9c1d682123a016432e1eea5afd039bfbade397a9360b674832d2c55d521820c0cbe68bdfbba6eab8189aeeec781362fb289883d2a2fe87e287b8d940ad6a4136b7b388b38b0913f2fba42dd079cac04a071636b7e5bca67b44860cdd9e5f9cd77f07e524e9491addac1c6a66dedf5a4f814fa54eb9586bfcb1a6d4a1a166b1074d28a9915167ac4cf279e8d22555df57cfba8bde251483d9b2aef08a180ff74edcbc1bc2219f01fef23d77fcdc1d41ebe683ec96a75a4784945335736770f63a5f000da542958558b5ee375c1c16a109d488d8b17daf2450f35e0ae08fecc139bf8d5f51f1d9a1cd738ac3bb1e91a3bcdbf79c6bcc9a09eb11bc97a7062fc4e4e1c2e796241dc42481d3dc89b31d2337e8cf727c43dd393bb738710ef7ff96521dd92be410f295c765a823e1984e63c534d5f040753715edee4c3f0c78cd468eb9322ae8d5aa92b88bb172082cd08148a8d208d21dac81f0cc516d08f9c0b7097d91bf73badf049b62085328e347e20cd6ac26c64be5271f4761a16ce90ec9c58b2b71c998404e1411f1a1c5c6a6fcbf260eb3e325d1f70132b5f41a279b082712005347fc7d8a6a960ac1ffefb33de83cd6bc704eedd8ee937487635b696975a7156473937d7c301579c4e531170a6d109d50185693d9dbea24781f391fdc1baca492f00867d362797392af50da481552b86f323bd297b6a0cdce20287f0ee6119be14905ec55851768ef95d50130965c6877ee8d91e1fe19fdbef7c80ef7f93968a0d717c354f071bc8cde4d69c84a6e876a261e620a0f7c959da0c638b32d58325b13ddc9fbf566e1f411edc9b38a2bd031a7225551c4bc596958b1c22d5ecfabd2c09448417ba8568938a1cd02068d4ae3e0821dc96247ca6b704a0af99acbe5ec66b28b7c461da48743ccf387771a15eaca6392341dc4657d5c4c986b0648e712ec50f22e3d68b272dd9c34b63aec5686daa5a0f9bd259138b6d967cfa368c04c48657b2de2133b4c47147877e080d5588b09ab0b19d947b6554aaf43601b1c7384707f3091331a0583abc41bf448283eaa4bb001a44836de63e66eef64b04d82ad32c4369bdca012df554097e493e77e1b26acd103b564b6e8134012aec9cdc52eea80955a76d1beb2cb87782157adeadf2ae6c6a4b49c031d6769be9b42e6f85c8c5a6d61947f931c321b45dc34822c8523408c77bfe32048719537361fe6a1c9a8f3467cf5529dd597e19285304c716f9144debdfbeeb16ed742fa17440e02cdae4816699faab22cec162054df5d6ceb6394cadadf5d60abfe5c1dbb3790e4a98bcd9a84f6d4aa8e5934d80b40d8da632ce6640ceb070ee6034947a094337c013075c1a1267a95c820b7eb5f2aaaf20736f09502faa043cecc39f2ce7ebc0a14f846e38fbd514b935d2a46dbeb778223f20694985d27273a9be7e1be3c7dc9b8af87c58d35f4cf6559f48d27cc7eb1c050c76d85edd69995ea3b2e54868556758014ea18e18c11db61c56436ca2ac66260635d927a72cd707ff5e533704477bf9f578848196e311369842846588febd3a229d0b4fc04a5848d98ca55c3996e34d2154efe73a63f052da1ceb72bcd844dad8a4a4546cc6f94b2029b4e2c8a65d2b50673668e7abce6f054d50145b744b8103592bcb4804b446e1b7f4910843f5cba5a34e5b17309eb287c39bb98f6c220024e7582367d3e5e83737ef64944437c9d462c94f61c754a887ae4e5f1d2d64497d2b7fe8e885af00e8e8ad2d998b921a654616866e492a32742f319efef91df3f2e3d2697a4a12b107ad94da1d64ee6c67f0e9cf5aadae3eef52a22ebe342199cbcad564cd11685e0678ea3c91bcb67278ae4a6ce5664e39e86c3233cbdaf812516aa824754f6493cd5559848a71275b35f503ac84ccec4fd172b09f9ac40543a54059eed72f77eaa8d56645986ec8767e78c2df76f33e549b561b977fc5daec7436735a46956077b661fd05dfa124fc30165d5a14d9215e75c3134cae2a7a8fa490dad2fa745003c2d74d83ed13db927f4dc5cfd856c758b39915ccfb695c915c3ec5f3257ec38a0ddfa1401c3527ca271c856f2b00fc4f44416f7a387aae1e88ca212d81a6b4ca1e61c1ed2809e41e78ad8fb170ba1e0b138f061fde62eb7cce2eb8ae434b37fd4eb78b85990e7f6d21b32b4cf9dc57fd9b46fdbaaaf25139315a99419cfca963b19c3fc2923c041bf43ccc6147c3f9736a162a20152ee40effd6a3a29523d77dcb14a70b4ab512bfd11980e30bfd77304eec045d50b5923e22def0c83439e4d0326d9a20e53c43797dcbf17014f80ebc2b66fa6045a8b402b7fb182b43bb8ed6d569568732723b0f7807ac79bb676f35221258fb1283bf7c275b2872f2c625b7e1211b381454ce044a3e8a634488ece71e6fc58b84668aa744302b8a061b5674cdad160c2d9ef600385998c9f002fde9c829a6be84fd27b8cdb8f328064210918f28189e0dba18535d978efa8a8157cd5a477db7e3c909a54ae886008a65ebdc3eb3f06b89ca21ac3981d064fa15f01b1ce801a2c515af3298c4fd5979e6a651cec9ca50476773a755f96478397dda65db9fc32b2166dec033bb46fbad0edfd03f3c543e144c15dbdca9b83f2c3f0d5357cab1180472c7264317b319ad50dbd476b8f6545d86e5e399cf6177461141ce2e438db3100a0bdf957266c9758f7039817141bab0b3ea234c317554a1b30081eeaa6ccf3406a2a3e38d0376d2c50ff03e770be90cc3bb1c05ae9ab546e21d5f1cad5a4df5b53684789e534f2983bdf41bf9244d9594e889a2eef8a64789b0e327d3b48a06229ff0e48d669cabd64b7d0aeaeb4990571e275c3026a75106083b32dd1f33511877c7bf78fa415243d59474044bad21c773e39bf48619a7bec8b55b951b79f097cac697860b20c09bacde7a5e8054774db8da54742c32264f62246ad1945be13f1f7c856810e9205fa8dd797fbd4def035107f85ea309c1565f0ee1fc1e312d0bf753aed6a8b7704d8a1b2e88703511e6ec48c17ad33cac96aced306c8c08dbfc12c242d6fa52c4e51faf4cd3b331f57544f371fdfeff6c2d5abd7a38ef1abeef3a003aaa7ad6d4dbca80cde878cee6c46429d86c64c73671093e9567cc807f9f3cd9dc501878051166220c2d90915ef8e5eb46c0c07befd7a63cb38f5e9b4a8f32483d998b67fba733e7888c6297359fd32791beda81f7e8cb5d8ee05124b646db4ebee1e477c86bbbdc8d9f2151d99b8e6f0f23250649faadbe7ed2642505d7c89919bc10000000000000000060e171e262f
+flags = ValidSignature
+
+# tcId = 4
+# longest context
+ctx = 414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = 88b645448a1c81f55c81631d057b1ca1fa8bb42af19f1c2dd2bf12594f23b86e17e383aefec687503d0077658497fcc508c8f7b9b6ece29777cd6625c4accd38e27cc4822ffb61fef18380362d29ec040773c9a2ce8b6dd7a1dfa233b76774ea41c766915afa7954f5e24f992d1dba4862802bf775d70c422100717a0e4d9ef9e6d217588cc6b9e1199aaa4d89e78ec1c7ba567c645538e4e6cb7cbaed4dc0663ca36fa036ec1d4334249cc6183033459c3035b4b56f0837f15ad908e2d9560b39e13580497ea8d5e8ae5ce71ae876b5b1e1deadc205e8bec65a724eebc1534155c1f81a93fb5bc6d00df71d8eade2905942a4d6234ce72bec2eeec3edfb7da4a6cc67af12c616bc63dbc16ff1467f02fa0c99a4b135b6a71e37222982f91cb466ea920fea4a729ed09d763e4dfb1bad062ace603c65f952e2df88c6ed63fb344d353265f21aa0e5548676c5d4dc24ff7f1ab1aa91ee19e9d0e72599c85f51fbdbd4f7d21a35ca87ceb19cc9d28df071538f34382fe278bc512f534cbc1f747a4497bc5827de2aa7b672bcf44988611c2e8e8ff88ec64e4ea101d47c88672b1794c1af23ae4317b6b5fd2923ebb7c25239d9efd86489fe8177f6f27de7e80833a344c3b907300c73ce9f9cb2a39296c59d70e180f14261a51814ca7c8117e33f800c126df8c92de498ba9a443b480c9f6c23d26e73b0299eae2a1223756132e3999cdcbdd436a9fcd5073c3e6212ca0dd3e734e355567bd26776526c15dd1b2c2d09d8604da0c0cb38dbf5fc4615d9d5a5ad217690308e34f549981656be6b144de153b9a428a314a19549688d57c8bb4543f12424622e1971c3b26772b3e74743d668c9008debf1ddd942ede5206ead676f249b93a324d60bcda8be119a61f9bec64253ceea1fc95ca5235ba41ff8814f83698bc3188ab802f2a6f33b25412a729635b7e530536bb90972750ec905ec1336e613112ced0a3e68427a2888b4135f8eebe4d4a9cb104627ddc182f319bf0586b82a9edbbc17c11abab38f2add065fceb1d419259597e4ba91ec5d15502f3253bbeb75917b2fdab1c8457af97ec864263d8dc501e9ac754f59cde0373efd9b18463a27eff11199afae22711c18172e077a0feb457b08ae8e3bc6614a2603e95eba9eb230dbf48c5173c1893268fad24e31a5bd323d5b224c0a9fa5fce2afd61178390fdce163b4ffa1d8aafb248ddce727070677310cfb36695b8846c4a32a9973c88ba0e17a1c26d62f716858200752970ed6490eff966201c9ed9cf223ce714eac732d52e0f63365c3b2789bf8a09642475407da12fa19394c55919af3a02d31e26f4270d71eeccc5c5373ae35d1fd9a07d500623b1827c4674287083cecb466f584e31ec933bde9c83c57e8a90a141eaf4c456688f8ca1353e64ebc7cce779241df3e34e7353cdd3af446812c4448383efe1613e5f1f6e9c08c0d5971e7ec28874d7865e3bd4cb1fca0f7ca1fc499c718a8ede6f91a8232991ccd78f918ada16271e84c6b8b679a8d5ab5f7a07ebc82b01f58de7a92753a028679ca244a72b13eb5ed2910da55a998c1f427d2403d33862b05292b1c0bec902b51f4efa0264e6295318c6a44befc85e00ca887350ad86ef9fc45a4a01322522f74b7ad63abc6c08da9118319d84c0b2164c9300feb1f2ce80de5a79918bae083397d42a9f415a40f0347d25c82723d62b1fe52d02a90be1cd7cfb5c1732d644db047eb48b50ff38ca74929edda7385cea85a07c798cf773d4d4e29efb70125307582752001d8f3a4ecde8db26964d34f5563a6683d4939d237ff6a68361f0d2e863bdd15c39637e83efb2b75902220434a273b3ccca148267aae092d8a2b0aca3ff1b352cd6b331bb63ea3e69cce2c86174c8b2e0d061a35b067f2fe7d9999e2c1c07f07b1e98246af36403b2a2bdf48c7e4397b3045303dd8e3af1138389b0967fcd146124fcc97fa524e10afb0ddc1294b7543f77d0dbf0bd845b7f9c36dd91222ac30f89d59d3d048949a456b43338cb1ff1b8392b083fb6fd71797cb21ed52b94377c9c69d90111a30612e65aba8e85fcd95fe53b49f18952380c1a9d9347d21e9a00633bb119481d7292ffd25ec5d4dd842ba2c775757f1a5d26025e4156f3db85741bfcf60f5efd580bea6fc617ebeaa78baf88a0db57b13bb5dbabb9cfd6c8a56b635ecbb1fba800a0cb30a6c241096f6df1f04bd44b3b99a93545c6cbe6986e5260384824875a4ea2ec84e6574fb6f08103c4da71c6689cba16cd28e8626233bafb4edb9ea07bd02676351d57261586832ad67b87ad61a59b7e7b8519e85ccde56722a6cd2a7649afd5034f98f1b9c1cfb7d320f491dc90002bca428a88cd063a3b30ef09fcbc5d6a4ecc6887e0b05b4179c0bd4d8f4791c5cc6a801b4c54e6568469b22b52638a5a514e550df53aaa1ae83fc9999658f86ee16661e301626fe77b064bf94b00fea4b8dd0237906fdfc6cc5294e526528675dbead67c7a4de642af3d9311cd8f2ad66002bcbb35668da0b8f2f02feb11b1b89c264cb5a088de45093cb72c4e6d54ecb5f1ba5ceeb2b95c023b412ab52e77338bc3859369fbb6996a35842b578a3d844d1facc6e7ff7bf31959fb16680cec82534792913dc2aace4143f412b09fd09aea82ae48f2d16323a8abae6527967058e62311f3458ec0f999a3ecc087501b40a0bd25f6fa6d126775bf261d0f3c4d428dc78c6b594bda8426342728ae4035e8527e24e01ec3ab9193dd2a72c84524aaa685bd3ace318dab3be7d89eef18a887c772242895ad9d555c444c670f2641c462295ec0620eacf3ba75b8fe914f1be38dfd9d12b501e09f931556c8798e1a40806c67833fbd2fd40227e3854e6af14a7b9b300fdee969e84c76b9a142b23de64c27ccdab63394c6d39e66315ba1a376282e8f7580ed60eddf9ce0724c57aadc7a8ee5b491605ddcd4c4949cfd6cdc0abbaee10238d57b5dff3b38d3607e8780d7bed5f52f524ea06a94ba7e2ed980aa132fce04004670d520215f715e2ffcae2ce336af653a754e53de4ac26feb591e923a6a5cb9aa97e71f52d0f4698f02eeafa894faf56121d380e24d2d82dbd5687e162ac7e93c6d97029660485d5db8c886480c6339df8d7724201a80dc54cb9637767522e50e5ce696ae29a04fb5b4b6740bfda56a9b80b507bada2aca4264f0de6493e6a7f631394838aeea1eddcc9142fe31558b4756f4f2745f31b58c2c1dc1b2550cb5bdea478872ab91393048a908673106690c8afad8096bd928e32c965bdcc3a7cddc9411cc36faff3d9d4e7a5afad0d0c5d3de867b990490edd8497f3a03ecd131e7424d5b0d29543b3cc7ddb6a1522372b11de1649046ce787f6fc8219b0a3bb508f1d6ec2981066dae16fd127df52cb9055a139d7a68f0f4bbca77e7ca8ff6902a4d87a59671da1b867840fa0e07d8e3667253a41525ed18c679c74cc2fb1b7b00ea98090eb6f2a24da3885efcf6fa31c66732614083d114e7a2b0478184bd801fb36e79f670eaffedb9a3b56d7648009c6e4c33da1f9888b54ec108d21c68fdea0bc60af17b6958479f91ca9685d9704553d2126c3cd240deaf5a0aa8bfca0e37899af660fa9fb5aba33ed1a5ea5e388015b6cfcaae014e933969623a66060f5d396d3bd0793ea79bf9189ba24a36c1b79dff7bef60f921f27d2a46874b282d5ab9839722b495fd6b0ff494f3410e0988006f8b4bced46f7d0f41678097c4f8d5b690055d47c37a887e0fdb1ef45d90be23f59d637f27bc13f25750b83c005e68ce669fe15e47f33b4bb989f043fdadaf7c11dd0e652542d5103ae73d41ef574dd82f0a1144508076276023c91adde4b126772ef620b6450bf5b25fd29dbe3a529014b47243328e309ff4245a8aa667408ba5b4255879ba6bfd4f57cfed9219f88c7656838afeb58aba3d86157a4d1385e7a29d4db695702566f424f3b84f9464a1de1e5ead4683b38f672cbcab96b2c23e796107ff5bae2f63418fd3ab622868312cb1aa45911ebe5ad6ceec0d9138f1e10410758f024f1b641dc099e5bcc83fad7d21d503af50f7ee12da5ed1883689d8dd0edebf6085d90380f5b55af179ddab5df7673c24a253bc3d199d41a0e860477eb1055ab7883528c9602ac748dc1de5cb18d191db75f81eea0db9949ac34cc284643b2f84b5b3cb13369a5ae40a4b59a4462783c66df5c84d123fb6e171ec2f7801622b5efd6dddf28dce5ae844db98e07a24295ec20159448e2fcbafac66c004f6f9a1c29ddef7d500d83e783443f192c79205efebf0c104f56c59c59ce7e1906c6c35b78417f1d9faf94aea8e9c77d84f1e021b40423688dad22c209c9615f0f09557ccced493c06f4b1a4bb841adcb50070eee4d40ce61eaadab7294051682318d6fccfde090f447303426949dc93f2aa1b78c70e68e7409969e74aac563748827a232cb8c277a3a71d53d8ad9044e78ee4dacdfd8f31d9def44a9cf36f48f019f7013a2c622d19505236d18b3ac6ec5eec629b801783979f9bad8ee2c363268689c037194bd8cdc3b4db694e443328ea40122235f7809d403910667d99324899ee1b5f8890d65ae93d5a899fa9d5ddf6324a99bcbfc3f1688ae4000000000000000000000000000000000000000000000000000004090b131a1d
+flags = ValidSignature
+
+# tcId = 5
+# context too long
+ctx = 41414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141414141
+msg = 48656c6c6f20776f726c64
+result = invalid
+sig = d75d495e0aff760275e801ab0c6ed1ac7f180c51b112122fc0fcf303a999261efd3473bb1e46c7298a2d49b2b11934301145799e58cd91cb24f052e90b7bdc1cf590b6736abe772f211d8deef50fafab63033bd04411534c233de584ea1bb0a73d6cda890c1f0206891d55e9b1aa3352c0365dc56449356732e74b599ce33724ffef2a97897ada2a37cfe178a3ee47f8002fd2e02873afd935890f1e31043a7d17aea570285b94024c7fd8ab135e515799e1b2816d4131e3c5a5e1199eeee82f292cdf3a1c290838db1c46baaa2dc75c379342016b06ef1768cd30989bf5297ebd57adb6d6e0b4edbc685a2258ad3393c555bedf933c566f0f848960ab6c2036b7a1eb971a4519898e2b25d8a9fe0aaba7620e580d1c1a6cd6826b70c155b4135831986126613c2a78cc4ca93d900b56f77db9c7214d46420ebe9be0995f9615a73f74b66a4ad1d5570e07f2f9a690750852426f1ed0e61c3c7467ef8af0301b4e4caf01b7eb96f8ffdae739cae1ccbb39631520709e70494c36f9e15610eee5b479eaca35028c1f7ae1da78e4e9bb03dc8f228687f414c4d3ef427fc25ce44c1a06a8437e12974478d84bc566f752a0ea08101ae60c49facda27481d52038fefe5eba5db3dab643bcd7b00b8f9237937bba76df5adb3139a605bf52ef93c2e9a56631b0f86e7be961e0b1e42e8ea4401be99af9b45b01104f5b879b81ce07ac4732eb5c937e7a017c430eefd4cc8baeaf57eab48042f3fbb2a290628873702a9196cc8fa793466e8d381f28f5c050deaeaced44889520af258b897e5427c3deb74760e9557fbaaa80d721f21792a5e8c97e536ad3319f58d2f1089a82e35aa77101aa8e8e8b249a608cffb921987e16dfb2a34ba8590f0c9c2a6c879c59fce2ddf8b2d9747136a81749698b7ba4f5d56f12718dd7c9e296fd2fc52a0a33c9bc7fa5632cbb8c73bf0f4ef427c28aa7e57ad5c069d4b68095c539b1f16623aedaa1f30d43897380cbd1d8b9f6699a38c7dbea893457937aca16aacab67db5bb60195dfa1c0cf02e3d368854ce2191b59b05c6005a1fa09b275966035ff68e91f3c820d8f3473748557904206ab6af36a343ef93e3e121f9490e8770f0b2a703b932b16d4ea19629b7c2b26bf2ca7a07ec6fea8cfd4db85d185d39731b0f3df6cb07d152cd960640facf1c3856cf5b47937644ff9ae17f2037bc7b2a31619273d012afa35b331f78cfb50d23efeab8525be11e313cfd9ce731696a558cce05a68fff8c55bd103af1b6b1b13c8bfe9bfb9d0e86da12b5d9d5385829490a89bdf4e4cbae80be22ffb624ef729917d849c572c44e35ec5cd8354d770bffa5b031ee1f2a76b077b241767f384092a21b016b5687752f23199f0a09e5fd701090fa9c289ea50d26bd3a8676f49b29ba54785b3d20431cfeb519ccbbc0141266a77e7d5bf4bf3299497c8b1d1b40c2f00cfcb29c3a99876a43076a89a13cc58b5af1d72f87e1171d2b6ec9fe4fd318e95590cee63f1a2a6a2090ba3eea95061222db4c8b7cbffc10b450bdae10c0f82fc6861cbd24b9e4d18e4a477f7491586ae23f7ff10e1963a874e0ec97779cb33b4d3262c504cc59bf2c518b7a6de0744297fdbafd8be05bcda2b2e8fc98808594e2a204bb72aa9a425c493ec3433ef5af84208c7c47105a7ba7b936f189a64002a0bf07aaa16b449f79b32e7bf238fe72ab2bdb3e3b2a64c6f325e8486318c50bd905d23afd2988cc92ec26078b2fe9e6fdc5e27fca279c5ad535a70e66b5a55efffa1583b8011b084bbb9b028d2154f2aeac02ca66ec8fba4cec93feea0291e0017c8ec14e49c0cc2e5eac9276f64ffff107dfdda08baa8aa43df97c6adb792e7b781d2edf79763b9656794f0910fc0c17c45cad7f7173401da1f7fb9697b571fa6bb23fb687b71dffd21092e78966ff61fd385f0a236c93aa2d550305e183eca91d284f161d5d2a18824e7148c2c615e939fc4299e84b686e3577f16e8489ec0cd1ed80e8edceef398d007957b571d6e1680e641fa1cda305f993b92ee77f5dfa2e2b4bacecebaee0085c1c87762554c76c5db6d9515647ed615b42366c05d77bd0c7cc37da56a52374f1c4a01ffdbb50a05956f5a5c9082b1de4bf9e7abc3bf8f6bbf983a49108ece5f68ad07b3f309757e26e9bee76ea44223210422ad192f1d1102cbdd0047f07146be860860c28fbf5aa9b401b96cedb9097d9c95fa71524a5827fd562d600655e7ad3e4c592c67faf8a71dae5094e4beb188197ea635cb8d9b25f91f5df2e192b55d991dfcb7d696129e956e13e5518cb7f126b5d0cc9e87c5ed00c2a15eb0d343f283f658001f1addef1043ec46885099278477de6d329506659fe29f7d192feb93a39d3dc8d06913d4b7b621c300d8c01efbc37740d15d6c8f2087c2db3a2f6dff819e8b2af5f5ec52718c970df9e5694e7390cbf7999d5c739845f2ca98d5a4789887f0a6648134c518172ff62b6e85852dedf351d3c5a2727c7e0a9460d595df70961730ebd283519668cedd430621b9af7e04a54058dd6c04770262a75455f7c5f477a4f339ab6d4293a02eee565e3c7ac464db588a64d0bfe1e1b9f3f1977ddeb57e20449153da8881db0565a37be1506f551b8d0490353b799dcdf3003c4ee378dc16d76592310135c3879c2d05e69ba1f9aeb58c6187945617691e5872a0f322506408d5434818cde200e60fb6f40aaea77b94e4c30ee295e8e49b26ddc69c54b5f12bae4186b2e7e886585f0cd14b6475fb37a217ae79f87ae3303d67968f3ce82a40c6590b6cb7a6f764c1f6f69642f67459fa1f53f04eb73142351f0249f4970d3828ed7cc6f7cbd74fdcff388b98ca3a9747d1b70de11694a5e8fe1bb81f37445c6b53933b47a1102818ce623f914be67f51da77f8d666d6d77162aa323c5673749bbb01555d3d204de2c4053989348fd2cf61e185ec8a453d91b09d08a10ef3762a630c53adec121af51958cedba5f82b8b0ea755e74197a61a09c7350547767c2ece07dca5737a97b885bb1dfcc9030838acb4c356224af7672ef9cc0435b404be37f74ed3f042d00f05be35781e977abbbd46e594831c07b3ee45c0e170f2040e543743503262a59c9880c1603c79f316587cde475d6236279a194986db710216f1169a6c7b42e987a9ed7b4fb4212b8bb25bee469ec96d0af41a2e794ab54ba72326069cacf2f5e49b2eeba2ed0177c2ac71816d9f6e2c893fb54369d901e6716d2d04fea85c809cdd9d2fc4cdca6ebcb10d810f764f1792f4a557652da371a3ad6f039d14bd9f5235c8b9c5b5a48333c798ec000fe44ad6c9e7c9e5f57d406e5e8ee8154574b7c76a2f7521947c54a67ec44807622aad566df4d463b3bc0ddafd0fc017f1392cdcfee32e96ea8cdc42cb6e4587cc72d03ac789070c210a1278abcf286e23225ebbdb5bdf917938047e9ec980434ea6566d3aea655ca8a1ea9651d2f0c30169c29cb73a975bf69510e1b6ef8db72e3bb7892e2991488627f716fb7b5ff194757de8a2479a4497f6da76a421b988534b78f8571b4d7c3a2493c2b7b8b02a07eb43fb2fb1d203b02bab2125e7ce41db5b1ce0bc2c7f0706837715223ddb0dd2ba58a98db96e79fa28b1ca14be60058b2ff7b15ae2cdfd38f1d63b77ecd0de4c6e0342b6535724231e797bb717111dc0f0714c40e786a55a2dadaf853bc3cfa324063147802dc2a3bd6a881d3072fb8addf1f8607a7b4d4dc8386c40593ee6e5651c90786077128c9f6ea10aff3fff1e524b3ac1ae1cfb2cc6f659f70c718a821b25e31d7393eb5f5b95c06f0958770cd1b3ca5a6b882aa5c3bc0e300560426c4194b00e4dff3d300c8a47f6c5139bade447b1357eee0164414d75379ea6f696bf15e7a47c31cb47fa4b5608eb0593ce58b61199955e243a8b12cf26e21e05390c2a61b562de5d70f0113f1adc3f3a4d2de7fd5994f6360a3566128104a886e27b349671087c348a101e6f6ed673699962c96f699fbd3aa37a95517a6c99d83c69c16aab974d144b3dae33c9fb850b20ed6153a212ab940d63fb546154a0a377ac16eaa58e97e1a1a5bb4c9e845ed098755bed89abe251e8898f3aa9fe22ecf8b780f32e741b59e4c56a6db067aae97db9cedefb39fe580af8f218bb13bebd51ccdff133fda9d696bffef58f0a46013a31ec1a75918ab5d8e9cbd6a79421ebaea74007240a6ee379f1fedd904e8af829a2dc92ced035f60e8831c73bd1070ad4d5068ec3b2d58069adc6166231ccde5a49a779340c52032cc9434fa479270216037807f37ad0875bcc509ff183c9c518ac22ab527e01eb5dfeeca74c78a400d1ebd2e0fdc1ec19acce8e53352b8ce154e2f671e930cffa1a3a388739f73824eb085ad54aac583dc0d2624e07da1e0c32f61dcb83e632d260fe9c453cb957ee54d1437b1c1c1c6f919916146fd4c91d7ce0e25ee7209fce21c7a6f77abb91dbe9c6d9e3993897965f1cc2fac0e4acb768eaafdaec0c1b1f6e16517be4a7b946f422e61896eb4a368297dd222b8a2f0ef0f80a9cdf168e5e13ef7eb974bc73768655352271e4c38eca8ac5210a4724e5ea0c0e18aa2cd101f216872cadefb05133062c9ee39567a868dacb2c1c43e4e5d6aadf4000000000000000000000000000000000000050810161f25
+flags = InvalidContext
+
+# tcId = 6
+# short signature
+msg = 48656c6c6f20776f726c64
+result = invalid
+sig = 69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f930000000000000000000000000510131821
+flags = IncorrectSignatureLength
+
+# tcId = 7
+# long signature
+msg = 48656c6c6f20776f726c64
+result = invalid
+sig = 69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b00
+flags = IncorrectSignatureLength
+
+# tcId = 8
+# signature with a bit flip in c_tilde
+msg = 48656c6c6f20776f726c64
+result = invalid
+sig = 68da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b
+flags = ModifiedSignature
+
+# tcId = 9
+# signature with a bit flip in z[0]
+msg = 48656c6c6f20776f726c64
+result = invalid
+sig = 69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b279c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b
+flags = ModifiedSignature
+
+# tcId = 10
+# signature with a bit flip in z[1]
+msg = 48656c6c6f20776f726c64
+result = invalid
+sig = 69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5794e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b
+flags = ModifiedSignature
+
+# tcId = 11
+# signature with a bit flip in z[2]
+msg = 48656c6c6f20776f726c64
+result = invalid
+sig = 69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55013efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b
+flags = ModifiedSignature
+
+# tcId = 12
+# signature with a bit flip in z[3]
+msg = 48656c6c6f20776f726c64
+result = invalid
+sig = 69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c076547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b
+flags = ModifiedSignature
+
+# tcId = 13
+# signature with a bit flip in z[4]
+msg = 48656c6c6f20776f726c64
+result = invalid
+sig = 69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d602331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b
+flags = ModifiedSignature
+
+# tcId = 14
+# signature with a bit flip in hints
+msg = 48656c6c6f20776f726c64
+result = invalid
+sig = 69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3d3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b
+flags = ModifiedSignature
+
+# tcId = 15
+# signature with a bit flip in the last byte
+msg = 48656c6c6f20776f726c64
+result = invalid
+sig = 69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212a
+flags = ModifiedSignature
+
+# tcId = 16
+# signature with hints in reverse order
+msg = 0100000000000000000000000000000000000000000000000000000000000000
+result = invalid
+sig = 0d0d1a7af2d4eff6d4af7435a634d28ec5d23595fe7a72cf76d30f1fe16620c64862e4aad54fb78f8ea752b1e43e4e5884d7226840beb36a76f6a9b1b7d50b0faf7b8463f57c66240e06a22f5f3de4fe35c1bc6b5e42ecb1c0758069223e02f42efdbbbfbc87b4c0736141a70e6dee41bed27fcfdcb94f4213a0f99a02beba309a93d343cc932a6fd67fb90d6de7a81101a678e6d47d8b1c8bd67fe386dca360be789555196e2ff8704c175ab60a8bf3c9f3bbae1ee5a128f67467d21fe8a62e5f8ad8127b8d7eb37e43abc963521e79d0f1ed57fa341f743246fe69d97afc9a13824c79f7f3dedd286f3de739158a0900c99d9c8e5603df109c25d993f634582c832a79c7bd8cbf3ba07fc4d9e9ca8c1157434515538285417e6424209173c6dafe54c37e4424de0f25454b1713fdc3e72d01a2acbeab4d7f60d17dcd073c60b0ad5252cfa137c138448c931498f61fdf8f449225b07e7e0fafafb1f274fe5cbaaa136e62362877f643c7c94946075e8928ec47c04ae54d2085f7f2b1ef0e46dfb31b9a19135b6cc9da876dace6f61c2766b463b24c0aac5068714e348dea399986c4e8b8bdb16768e7ab81e9ea13e435f97e35d268bb679071d5b99d0d2f1526833e8624b6e4ff1ba3f5af2b23bce93dc7c2c4370cfbe698a3297005c9fde7af66bce7c9ef68337b04d7681e303a824e00acdae2ee3eb8c3e7507e46d67a4cfcfa9473bfa6334f2170911bf2ea75a3618cac939d11d6a778101e033cad958aecd89feabfa19dc6dc73584917834ed6552966f7bec4546ab24c643db25722b3ba412de04e9195898388d9ce04cdd9343da69ac9b3d3155620dde4052e9e30529904f25dd6233bafd4493b66844c8fa5d831377dc3ff8829114000799801d46586dc2d2059f6bcaa43b899e089b4f3a5ed4e6a7f1df5b8d42fda456a70e10b2ae14630f27e4c7257f5df23ad032c1edde44073585c04c1231e085591771cb64aaf62febedb33df56bc62f4d126cf8be4332ce4965e6e67d0be7871d81dab963c576ad7123bbff510f282bf66c0c1ea04aaa05a7a4d410d0e7b6ed22025dcb6ceac78f377306e973973adcee776ecacaa560dc8008799b306d5e617b2f51159b1e5fe5daf40f8f488f077cc55bbefbe8f5a61c28ae2b1493272dc6a4e34854f73f74c3442d9c302f96b6e721e2956ee0bcdb9999ff36d74b8d4ef036afbdaea5f977da2b94d0aa9136abd6dc26348873090cfe3d4bdda4d962f9382576bbccf8ba227af4ca8e017f65b469d2e3d35132fac40cdf03bf8f6beee66fe9214e1bf684e0aae75e4141d9daa1c77ef409f56424b01acc7ffda11cb9bf64a9aa71b484b49b9ee82dd8178dd4adc91d8d176f83d2cc7516d2195917fc246ebdc0dba4cb5a54ac6169bacbcd79adb72d593fcc3fa289f1e4bffb4612ba7a3318e607b0b27733cc70a2e2b4099056731ecda3212d1719a6902cdd6a05bd70d389da1dd0d0b4f6c4968676fe33c6e32d791c85b16cc9f4289bdd09acadd9f902d9a91f1559bd40eb6b73da7a623048140f73454e4ccb4ad65038109f6eba9fa01b0a3fe1af228e2c4134be136db2b029879e101aa8ab264e554818450734eb5a900497d906e20d36eb3848b092c778054c5ecee767c00185ddea39160e4513be858bfe5c7c7febf97ee8e2b2fb477bfb10c11f3b756c0da1d87e3121ab4454016b36fcd8f6d2633c73d4528221974b3f21ed3d464d47bacaadbb4647320bf0bcde38b0a75b6c3aac8b72d3c2c179417d05858ae4bd72d9c16713f7c116dda3ff8164710d4d14964b33b00b268007f8cde2eacea5108fed77d7bff70273f351b4e160d28d02576dd5f3fc3ab264c5927cddb6f9a81b852d24842bd5db5c5f2d893b2f013fc75426ef2414bad1b845ba7833c88a8ce76fe2644455be2ac1b9d1e31791693fd65f1ce35fee9d17b42b444bf1277f2646a19d76952b3fa3846c3d258f9a1835a709fc21472b0f7de7a729111e850f27f88764b3ab4baaeb6cfc644b9b6a552a61a7286b5af8011ede05845cb9359232f02ad8b3605b00cbbd83069f26b610378055c004a456c7c44606125b7b076b3f955117e03eaa514da82a9650e8b9247902c5048ff776ecaaa5ea57df61d726ff1754d4b1393933599edc49617836ecf78cc7dd45750b666b73150496e3999e339243f5644d5a3e57c6cdef2ea6c967f8bc93c27aa56ba5352666ab6dbccec415f610bcc76879793935df8e594f5c6b80dc0adcea1a1d5854f447604c54dad61cf0ac91d27ef963e6889075163e89cdec0aebf32080efcc58280b705a029511f21d311c1644623f82039e096f7e1d2518928847abd479840b65cf10d15851976e47444d64c6d4425310a3b5efe9b584ce7aa01b1f79d6e3092486f91fe75288736e852c0132561a7616f21b7713ec53f0dc53432f53eb4ad778dbe14664b55553ba342eaf94e9f76320f8f658b4c5173ab938fbbfe20c9987318c1a5104efe41419926218d30b0c97a366e60f6d1240e7f601a1b119df36cda11bdf7fb531a27979c9823efd2a75c70387f0296dc7382f570fe59568afb406a48e7c13bcb40204c92cfe13b3980410b229767a5412a7db82845da135cb6d5b2f9f5b22518b2115dfb02115fa1c4c3177a55f5c194450f0f0a518df7755b0b12eb412f5f6ee2256bb95d2985bdf1257769718de9b4f4281c3eb3407f175c0b43fee6b94b00875dca0983ae763624bc4e84e9a78f778dedef5eb078ee87a34941005c15cf42ee05cafe098005b1770ccce4e59d9d3f6eab9fb2673766d9b70ac11cd6d8b9d00809e58a046d95ff62e78a8e5525af54094c907019ec661600ec2c4ce5337371a1daad0e37f3a5cdd96a3d985456a588b5c1f61f36a33c6444c3b67c445bf95e9035cd4f77191a95a7e4c20715e55dbe43196809123499148a930321e7b2cc7809cf517fc4b2b0b49e57cde4b6aae620fe8cd0b38358685ab80061c1c126a1f3a96ab34fa957236cc6c59ed962b3bb006a1c122da796bf6bcf7dbeb64f4339c63d3a437b5898be19f6ce62024cf9b9c89964569f176fb697430e553a7c0936056183223fdab2f910047ad5e64098a44a2edbfd3007b0b5e4a5d1e6ecb44f137dae2dfc45e96f03e75c900f3f84e2653efded35a3c8b27e310dc361c0740524e52a1bbecce57d59c4913313e62bbb63c95a93512bf09228918bbf921cd5c62b8914b7142d6abf8d632c3ac44ebb6936c638d56cfaa7cee463838a921398acbbcb44bce621bfd81fab34a8ec33810eeb89fbc3cc469990089d2291e1e873b31398f2799b8d62d429b998422ed634bd7a6de8e991ba8492c001fc5df8b0014fda377cbc5ac74e40d50773ab5c2b4d08dfbf3cca590a77f4db0380fe7af822207aaf99c38676327ccd9aad50b2d4db5aedf74b1cdc50c484d455429352ef0aacedcd9792dc26c66081c28ecabc445b6f1f547a24403e18b0468c8881bdc3e82f7bcce254944271c3ba06c80555c8f3d2d051fb6007507eadf8fb991f45c0c9e9ff08838a425a96d72fc20d642c2eef45b4fa43e7b380d8b6648695c0b9440cc66665435ffd3df10fd786f7638e13706f6c5651dfe5f125158ff3d1da84cad23129e11d79d0f95548318b1c794990174daa895e4b984c175136185be534ed6bff9231c215fbf6bd297e24f528cda523d62b44aec15fdfb36281d804625db07567fdb06779325987f69f16f19df737d5f65d1abadfae70a1a4daba5a87e4ea3a09751ece2ec21dd24f719b1f57e795819689c8f2e83beff593735825a1ff8e4e4df9d031dd66120dcba07e6bfbf1b0946b3585a5eb807c1632a75353e8f7b8c4f8ff0af978afe2bec80d3b94917773564d7efd92a79cad26360b599be49bc657b132b25f459d58166110fa626cf1731be419105b4bd235176d60efa939fdd8dc213c695674bca27f161da4514f646f33557aca06189698f2953674ee73be89e3fc4c014877c6bec370ca1fe446686200a94ded3382c4f4bc58cdc12c354a486463959cb91c2ea0ae965f912364c5d98acd40ee312178b479b540875fb2a0164b7134564bf7fabf59add993b08a904452152031a784cbd36e19a47d4c9371e7774d3433fecb5d072d059b01ebd3279ceeba80b356e3628874008d801ed74717c70a93411603f1faa3924414665a95c475ac42de8d616de8be5c00fb90e5ad13079e54d1c7000905b62742ed70555ec406b49cd4aa6ea68342aa7763530b180e4f790475eefe1094426b7de9e0163a4990ea3494909c6c6de6b7462d70c8f2dca3152d81c93a8c184b0c54da7fb604f835df34506731774e6b8f2361586ccc17f35c8e21795ccb68a5cd73355c98a17c9ae35ed22f6c0a36c4da30af96ce7347375144a80dd851fda4971f20e9d6d18878d74803b577af4fa8f34c05b380acbc5282eb63f9345e4dc1f9f0cf8808a204ec789ed31ac9f009790d5c9b7d744ee3b29d911014c12b53ff691fce0ae5d53dfe1c7a367e694fcd2f688d46758ec308f3f9736701dd825153df883c0dc539c9dc3dc7dc9a9a35f453c306fc57faf76451bef45889e4ab0abd6d4acfc7967937e7e080f8f3935d47342219fbd3a27e1913f2eecc972e2c11000000000000000000000000000000000000000000000003080b131920
+flags = InvalidHintsEncoding
+
+# tcId = 17
+# signature with too many hints (causing a buffer overflow)
+msg = 0100000000000000000000000000000000000000000000000000000000000000
+result = invalid
+sig = 0d0d1a7af2d4eff6d4af7435a634d28ec5d23595fe7a72cf76d30f1fe16620c64862e4aad54fb78f8ea752b1e43e4e5884d7226840beb36a76f6a9b1b7d50b0faf7b8463f57c66240e06a22f5f3de4fe35c1bc6b5e42ecb1c0758069223e02f42efdbbbfbc87b4c0736141a70e6dee41bed27fcfdcb94f4213a0f99a02beba309a93d343cc932a6fd67fb90d6de7a81101a678e6d47d8b1c8bd67fe386dca360be789555196e2ff8704c175ab60a8bf3c9f3bbae1ee5a128f67467d21fe8a62e5f8ad8127b8d7eb37e43abc963521e79d0f1ed57fa341f743246fe69d97afc9a13824c79f7f3dedd286f3de739158a0900c99d9c8e5603df109c25d993f634582c832a79c7bd8cbf3ba07fc4d9e9ca8c1157434515538285417e6424209173c6dafe54c37e4424de0f25454b1713fdc3e72d01a2acbeab4d7f60d17dcd073c60b0ad5252cfa137c138448c931498f61fdf8f449225b07e7e0fafafb1f274fe5cbaaa136e62362877f643c7c94946075e8928ec47c04ae54d2085f7f2b1ef0e46dfb31b9a19135b6cc9da876dace6f61c2766b463b24c0aac5068714e348dea399986c4e8b8bdb16768e7ab81e9ea13e435f97e35d268bb679071d5b99d0d2f1526833e8624b6e4ff1ba3f5af2b23bce93dc7c2c4370cfbe698a3297005c9fde7af66bce7c9ef68337b04d7681e303a824e00acdae2ee3eb8c3e7507e46d67a4cfcfa9473bfa6334f2170911bf2ea75a3618cac939d11d6a778101e033cad958aecd89feabfa19dc6dc73584917834ed6552966f7bec4546ab24c643db25722b3ba412de04e9195898388d9ce04cdd9343da69ac9b3d3155620dde4052e9e30529904f25dd6233bafd4493b66844c8fa5d831377dc3ff8829114000799801d46586dc2d2059f6bcaa43b899e089b4f3a5ed4e6a7f1df5b8d42fda456a70e10b2ae14630f27e4c7257f5df23ad032c1edde44073585c04c1231e085591771cb64aaf62febedb33df56bc62f4d126cf8be4332ce4965e6e67d0be7871d81dab963c576ad7123bbff510f282bf66c0c1ea04aaa05a7a4d410d0e7b6ed22025dcb6ceac78f377306e973973adcee776ecacaa560dc8008799b306d5e617b2f51159b1e5fe5daf40f8f488f077cc55bbefbe8f5a61c28ae2b1493272dc6a4e34854f73f74c3442d9c302f96b6e721e2956ee0bcdb9999ff36d74b8d4ef036afbdaea5f977da2b94d0aa9136abd6dc26348873090cfe3d4bdda4d962f9382576bbccf8ba227af4ca8e017f65b469d2e3d35132fac40cdf03bf8f6beee66fe9214e1bf684e0aae75e4141d9daa1c77ef409f56424b01acc7ffda11cb9bf64a9aa71b484b49b9ee82dd8178dd4adc91d8d176f83d2cc7516d2195917fc246ebdc0dba4cb5a54ac6169bacbcd79adb72d593fcc3fa289f1e4bffb4612ba7a3318e607b0b27733cc70a2e2b4099056731ecda3212d1719a6902cdd6a05bd70d389da1dd0d0b4f6c4968676fe33c6e32d791c85b16cc9f4289bdd09acadd9f902d9a91f1559bd40eb6b73da7a623048140f73454e4ccb4ad65038109f6eba9fa01b0a3fe1af228e2c4134be136db2b029879e101aa8ab264e554818450734eb5a900497d906e20d36eb3848b092c778054c5ecee767c00185ddea39160e4513be858bfe5c7c7febf97ee8e2b2fb477bfb10c11f3b756c0da1d87e3121ab4454016b36fcd8f6d2633c73d4528221974b3f21ed3d464d47bacaadbb4647320bf0bcde38b0a75b6c3aac8b72d3c2c179417d05858ae4bd72d9c16713f7c116dda3ff8164710d4d14964b33b00b268007f8cde2eacea5108fed77d7bff70273f351b4e160d28d02576dd5f3fc3ab264c5927cddb6f9a81b852d24842bd5db5c5f2d893b2f013fc75426ef2414bad1b845ba7833c88a8ce76fe2644455be2ac1b9d1e31791693fd65f1ce35fee9d17b42b444bf1277f2646a19d76952b3fa3846c3d258f9a1835a709fc21472b0f7de7a729111e850f27f88764b3ab4baaeb6cfc644b9b6a552a61a7286b5af8011ede05845cb9359232f02ad8b3605b00cbbd83069f26b610378055c004a456c7c44606125b7b076b3f955117e03eaa514da82a9650e8b9247902c5048ff776ecaaa5ea57df61d726ff1754d4b1393933599edc49617836ecf78cc7dd45750b666b73150496e3999e339243f5644d5a3e57c6cdef2ea6c967f8bc93c27aa56ba5352666ab6dbccec415f610bcc76879793935df8e594f5c6b80dc0adcea1a1d5854f447604c54dad61cf0ac91d27ef963e6889075163e89cdec0aebf32080efcc58280b705a029511f21d311c1644623f82039e096f7e1d2518928847abd479840b65cf10d15851976e47444d64c6d4425310a3b5efe9b584ce7aa01b1f79d6e3092486f91fe75288736e852c0132561a7616f21b7713ec53f0dc53432f53eb4ad778dbe14664b55553ba342eaf94e9f76320f8f658b4c5173ab938fbbfe20c9987318c1a5104efe41419926218d30b0c97a366e60f6d1240e7f601a1b119df36cda11bdf7fb531a27979c9823efd2a75c70387f0296dc7382f570fe59568afb406a48e7c13bcb40204c92cfe13b3980410b229767a5412a7db82845da135cb6d5b2f9f5b22518b2115dfb02115fa1c4c3177a55f5c194450f0f0a518df7755b0b12eb412f5f6ee2256bb95d2985bdf1257769718de9b4f4281c3eb3407f175c0b43fee6b94b00875dca0983ae763624bc4e84e9a78f778dedef5eb078ee87a34941005c15cf42ee05cafe098005b1770ccce4e59d9d3f6eab9fb2673766d9b70ac11cd6d8b9d00809e58a046d95ff62e78a8e5525af54094c907019ec661600ec2c4ce5337371a1daad0e37f3a5cdd96a3d985456a588b5c1f61f36a33c6444c3b67c445bf95e9035cd4f77191a95a7e4c20715e55dbe43196809123499148a930321e7b2cc7809cf517fc4b2b0b49e57cde4b6aae620fe8cd0b38358685ab80061c1c126a1f3a96ab34fa957236cc6c59ed962b3bb006a1c122da796bf6bcf7dbeb64f4339c63d3a437b5898be19f6ce62024cf9b9c89964569f176fb697430e553a7c0936056183223fdab2f910047ad5e64098a44a2edbfd3007b0b5e4a5d1e6ecb44f137dae2dfc45e96f03e75c900f3f84e2653efded35a3c8b27e310dc361c0740524e52a1bbecce57d59c4913313e62bbb63c95a93512bf09228918bbf921cd5c62b8914b7142d6abf8d632c3ac44ebb6936c638d56cfaa7cee463838a921398acbbcb44bce621bfd81fab34a8ec33810eeb89fbc3cc469990089d2291e1e873b31398f2799b8d62d429b998422ed634bd7a6de8e991ba8492c001fc5df8b0014fda377cbc5ac74e40d50773ab5c2b4d08dfbf3cca590a77f4db0380fe7af822207aaf99c38676327ccd9aad50b2d4db5aedf74b1cdc50c484d455429352ef0aacedcd9792dc26c66081c28ecabc445b6f1f547a24403e18b0468c8881bdc3e82f7bcce254944271c3ba06c80555c8f3d2d051fb6007507eadf8fb991f45c0c9e9ff08838a425a96d72fc20d642c2eef45b4fa43e7b380d8b6648695c0b9440cc66665435ffd3df10fd786f7638e13706f6c5651dfe5f125158ff3d1da84cad23129e11d79d0f95548318b1c794990174daa895e4b984c175136185be534ed6bff9231c215fbf6bd297e24f528cda523d62b44aec15fdfb36281d804625db07567fdb06779325987f69f16f19df737d5f65d1abadfae70a1a4daba5a87e4ea3a09751ece2ec21dd24f719b1f57e795819689c8f2e83beff593735825a1ff8e4e4df9d031dd66120dcba07e6bfbf1b0946b3585a5eb807c1632a75353e8f7b8c4f8ff0af978afe2bec80d3b94917773564d7efd92a79cad26360b599be49bc657b132b25f459d58166110fa626cf1731be419105b4bd235176d60efa939fdd8dc213c695674bca27f161da4514f646f33557aca06189698f2953674ee73be89e3fc4c014877c6bec370ca1fe446686200a94ded3382c4f4bc58cdc12c354a486463959cb91c2ea0ae965f912364c5d98acd40ee312178b479b540875fb2a0164b7134564bf7fabf59add993b08a904452152031a784cbd36e19a47d4c9371e7774d3433fecb5d072d059b01ebd3279ceeba80b356e3628874008d801ed74717c70a93411603f1faa3924414665a95c475ac42de8d616de8be5c00fb90e5ad13079e54d1c7000905b62742ed70555ec406b49cd4aa6ea68342aa7763530b180e4f790475eefe1094426b7de9e0163a4990ea3494909c6c6de6b7462d70c8f2dca3152d81c93a8c184b0c54da7fb604f835df34506731774e6b8f2361586ccc17f35c8e21795ccb68a5cd73355c98a17c9ae35ed22f6c0a36c4da30af96ce7347375144a80dd851fda4971f20e9d6d18878d74803b577af4fa8f34c05b380acbc5282eb63f9345e4dc1f9f0cf8808a204ec789ed31ac9f009790d5c9b7d744ee3b29d911014c12b53ff691fce0ae5d53dfe1c7a367e694fcd2f688d46758ec308f3f9736701dd825153df883c0dc539c9dc3dc7dc9a9a35f453c306fc57faf76451bef45889e4ab0a4a6dbd377996c7cf80e0e7192234475d93f3f813197ea2d3fb112c2e97cceef2000000000000000000000000000000000000000000000003080b1319ff
+flags = InvalidHintsEncoding
+
+# tcId = 18
+# signature with non-zero padding in hints
+msg = 0100000000000000000000000000000000000000000000000000000000000000
+result = invalid
+sig = 0d0d1a7af2d4eff6d4af7435a634d28ec5d23595fe7a72cf76d30f1fe16620c64862e4aad54fb78f8ea752b1e43e4e5884d7226840beb36a76f6a9b1b7d50b0faf7b8463f57c66240e06a22f5f3de4fe35c1bc6b5e42ecb1c0758069223e02f42efdbbbfbc87b4c0736141a70e6dee41bed27fcfdcb94f4213a0f99a02beba309a93d343cc932a6fd67fb90d6de7a81101a678e6d47d8b1c8bd67fe386dca360be789555196e2ff8704c175ab60a8bf3c9f3bbae1ee5a128f67467d21fe8a62e5f8ad8127b8d7eb37e43abc963521e79d0f1ed57fa341f743246fe69d97afc9a13824c79f7f3dedd286f3de739158a0900c99d9c8e5603df109c25d993f634582c832a79c7bd8cbf3ba07fc4d9e9ca8c1157434515538285417e6424209173c6dafe54c37e4424de0f25454b1713fdc3e72d01a2acbeab4d7f60d17dcd073c60b0ad5252cfa137c138448c931498f61fdf8f449225b07e7e0fafafb1f274fe5cbaaa136e62362877f643c7c94946075e8928ec47c04ae54d2085f7f2b1ef0e46dfb31b9a19135b6cc9da876dace6f61c2766b463b24c0aac5068714e348dea399986c4e8b8bdb16768e7ab81e9ea13e435f97e35d268bb679071d5b99d0d2f1526833e8624b6e4ff1ba3f5af2b23bce93dc7c2c4370cfbe698a3297005c9fde7af66bce7c9ef68337b04d7681e303a824e00acdae2ee3eb8c3e7507e46d67a4cfcfa9473bfa6334f2170911bf2ea75a3618cac939d11d6a778101e033cad958aecd89feabfa19dc6dc73584917834ed6552966f7bec4546ab24c643db25722b3ba412de04e9195898388d9ce04cdd9343da69ac9b3d3155620dde4052e9e30529904f25dd6233bafd4493b66844c8fa5d831377dc3ff8829114000799801d46586dc2d2059f6bcaa43b899e089b4f3a5ed4e6a7f1df5b8d42fda456a70e10b2ae14630f27e4c7257f5df23ad032c1edde44073585c04c1231e085591771cb64aaf62febedb33df56bc62f4d126cf8be4332ce4965e6e67d0be7871d81dab963c576ad7123bbff510f282bf66c0c1ea04aaa05a7a4d410d0e7b6ed22025dcb6ceac78f377306e973973adcee776ecacaa560dc8008799b306d5e617b2f51159b1e5fe5daf40f8f488f077cc55bbefbe8f5a61c28ae2b1493272dc6a4e34854f73f74c3442d9c302f96b6e721e2956ee0bcdb9999ff36d74b8d4ef036afbdaea5f977da2b94d0aa9136abd6dc26348873090cfe3d4bdda4d962f9382576bbccf8ba227af4ca8e017f65b469d2e3d35132fac40cdf03bf8f6beee66fe9214e1bf684e0aae75e4141d9daa1c77ef409f56424b01acc7ffda11cb9bf64a9aa71b484b49b9ee82dd8178dd4adc91d8d176f83d2cc7516d2195917fc246ebdc0dba4cb5a54ac6169bacbcd79adb72d593fcc3fa289f1e4bffb4612ba7a3318e607b0b27733cc70a2e2b4099056731ecda3212d1719a6902cdd6a05bd70d389da1dd0d0b4f6c4968676fe33c6e32d791c85b16cc9f4289bdd09acadd9f902d9a91f1559bd40eb6b73da7a623048140f73454e4ccb4ad65038109f6eba9fa01b0a3fe1af228e2c4134be136db2b029879e101aa8ab264e554818450734eb5a900497d906e20d36eb3848b092c778054c5ecee767c00185ddea39160e4513be858bfe5c7c7febf97ee8e2b2fb477bfb10c11f3b756c0da1d87e3121ab4454016b36fcd8f6d2633c73d4528221974b3f21ed3d464d47bacaadbb4647320bf0bcde38b0a75b6c3aac8b72d3c2c179417d05858ae4bd72d9c16713f7c116dda3ff8164710d4d14964b33b00b268007f8cde2eacea5108fed77d7bff70273f351b4e160d28d02576dd5f3fc3ab264c5927cddb6f9a81b852d24842bd5db5c5f2d893b2f013fc75426ef2414bad1b845ba7833c88a8ce76fe2644455be2ac1b9d1e31791693fd65f1ce35fee9d17b42b444bf1277f2646a19d76952b3fa3846c3d258f9a1835a709fc21472b0f7de7a729111e850f27f88764b3ab4baaeb6cfc644b9b6a552a61a7286b5af8011ede05845cb9359232f02ad8b3605b00cbbd83069f26b610378055c004a456c7c44606125b7b076b3f955117e03eaa514da82a9650e8b9247902c5048ff776ecaaa5ea57df61d726ff1754d4b1393933599edc49617836ecf78cc7dd45750b666b73150496e3999e339243f5644d5a3e57c6cdef2ea6c967f8bc93c27aa56ba5352666ab6dbccec415f610bcc76879793935df8e594f5c6b80dc0adcea1a1d5854f447604c54dad61cf0ac91d27ef963e6889075163e89cdec0aebf32080efcc58280b705a029511f21d311c1644623f82039e096f7e1d2518928847abd479840b65cf10d15851976e47444d64c6d4425310a3b5efe9b584ce7aa01b1f79d6e3092486f91fe75288736e852c0132561a7616f21b7713ec53f0dc53432f53eb4ad778dbe14664b55553ba342eaf94e9f76320f8f658b4c5173ab938fbbfe20c9987318c1a5104efe41419926218d30b0c97a366e60f6d1240e7f601a1b119df36cda11bdf7fb531a27979c9823efd2a75c70387f0296dc7382f570fe59568afb406a48e7c13bcb40204c92cfe13b3980410b229767a5412a7db82845da135cb6d5b2f9f5b22518b2115dfb02115fa1c4c3177a55f5c194450f0f0a518df7755b0b12eb412f5f6ee2256bb95d2985bdf1257769718de9b4f4281c3eb3407f175c0b43fee6b94b00875dca0983ae763624bc4e84e9a78f778dedef5eb078ee87a34941005c15cf42ee05cafe098005b1770ccce4e59d9d3f6eab9fb2673766d9b70ac11cd6d8b9d00809e58a046d95ff62e78a8e5525af54094c907019ec661600ec2c4ce5337371a1daad0e37f3a5cdd96a3d985456a588b5c1f61f36a33c6444c3b67c445bf95e9035cd4f77191a95a7e4c20715e55dbe43196809123499148a930321e7b2cc7809cf517fc4b2b0b49e57cde4b6aae620fe8cd0b38358685ab80061c1c126a1f3a96ab34fa957236cc6c59ed962b3bb006a1c122da796bf6bcf7dbeb64f4339c63d3a437b5898be19f6ce62024cf9b9c89964569f176fb697430e553a7c0936056183223fdab2f910047ad5e64098a44a2edbfd3007b0b5e4a5d1e6ecb44f137dae2dfc45e96f03e75c900f3f84e2653efded35a3c8b27e310dc361c0740524e52a1bbecce57d59c4913313e62bbb63c95a93512bf09228918bbf921cd5c62b8914b7142d6abf8d632c3ac44ebb6936c638d56cfaa7cee463838a921398acbbcb44bce621bfd81fab34a8ec33810eeb89fbc3cc469990089d2291e1e873b31398f2799b8d62d429b998422ed634bd7a6de8e991ba8492c001fc5df8b0014fda377cbc5ac74e40d50773ab5c2b4d08dfbf3cca590a77f4db0380fe7af822207aaf99c38676327ccd9aad50b2d4db5aedf74b1cdc50c484d455429352ef0aacedcd9792dc26c66081c28ecabc445b6f1f547a24403e18b0468c8881bdc3e82f7bcce254944271c3ba06c80555c8f3d2d051fb6007507eadf8fb991f45c0c9e9ff08838a425a96d72fc20d642c2eef45b4fa43e7b380d8b6648695c0b9440cc66665435ffd3df10fd786f7638e13706f6c5651dfe5f125158ff3d1da84cad23129e11d79d0f95548318b1c794990174daa895e4b984c175136185be534ed6bff9231c215fbf6bd297e24f528cda523d62b44aec15fdfb36281d804625db07567fdb06779325987f69f16f19df737d5f65d1abadfae70a1a4daba5a87e4ea3a09751ece2ec21dd24f719b1f57e795819689c8f2e83beff593735825a1ff8e4e4df9d031dd66120dcba07e6bfbf1b0946b3585a5eb807c1632a75353e8f7b8c4f8ff0af978afe2bec80d3b94917773564d7efd92a79cad26360b599be49bc657b132b25f459d58166110fa626cf1731be419105b4bd235176d60efa939fdd8dc213c695674bca27f161da4514f646f33557aca06189698f2953674ee73be89e3fc4c014877c6bec370ca1fe446686200a94ded3382c4f4bc58cdc12c354a486463959cb91c2ea0ae965f912364c5d98acd40ee312178b479b540875fb2a0164b7134564bf7fabf59add993b08a904452152031a784cbd36e19a47d4c9371e7774d3433fecb5d072d059b01ebd3279ceeba80b356e3628874008d801ed74717c70a93411603f1faa3924414665a95c475ac42de8d616de8be5c00fb90e5ad13079e54d1c7000905b62742ed70555ec406b49cd4aa6ea68342aa7763530b180e4f790475eefe1094426b7de9e0163a4990ea3494909c6c6de6b7462d70c8f2dca3152d81c93a8c184b0c54da7fb604f835df34506731774e6b8f2361586ccc17f35c8e21795ccb68a5cd73355c98a17c9ae35ed22f6c0a36c4da30af96ce7347375144a80dd851fda4971f20e9d6d18878d74803b577af4fa8f34c05b380acbc5282eb63f9345e4dc1f9f0cf8808a204ec789ed31ac9f009790d5c9b7d744ee3b29d911014c12b53ff691fce0ae5d53dfe1c7a367e694fcd2f688d46758ec308f3f9736701dd825153df883c0dc539c9dc3dc7dc9a9a35f453c306fc57faf76451bef45889e4ab0a4a6dbd377996c7cf80e0e7192234475d93f3f813197ea2d3fb112c2e97cceef22a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a03080b131920
+flags = InvalidHintsEncoding
+
+# tcId = 19
+# signature with a repeated hint
+msg = 0100000000000000000000000000000000000000000000000000000000000000
+result = invalid
+sig = 0d0d1a7af2d4eff6d4af7435a634d28ec5d23595fe7a72cf76d30f1fe16620c64862e4aad54fb78f8ea752b1e43e4e5884d7226840beb36a76f6a9b1b7d50b0faf7b8463f57c66240e06a22f5f3de4fe35c1bc6b5e42ecb1c0758069223e02f42efdbbbfbc87b4c0736141a70e6dee41bed27fcfdcb94f4213a0f99a02beba309a93d343cc932a6fd67fb90d6de7a81101a678e6d47d8b1c8bd67fe386dca360be789555196e2ff8704c175ab60a8bf3c9f3bbae1ee5a128f67467d21fe8a62e5f8ad8127b8d7eb37e43abc963521e79d0f1ed57fa341f743246fe69d97afc9a13824c79f7f3dedd286f3de739158a0900c99d9c8e5603df109c25d993f634582c832a79c7bd8cbf3ba07fc4d9e9ca8c1157434515538285417e6424209173c6dafe54c37e4424de0f25454b1713fdc3e72d01a2acbeab4d7f60d17dcd073c60b0ad5252cfa137c138448c931498f61fdf8f449225b07e7e0fafafb1f274fe5cbaaa136e62362877f643c7c94946075e8928ec47c04ae54d2085f7f2b1ef0e46dfb31b9a19135b6cc9da876dace6f61c2766b463b24c0aac5068714e348dea399986c4e8b8bdb16768e7ab81e9ea13e435f97e35d268bb679071d5b99d0d2f1526833e8624b6e4ff1ba3f5af2b23bce93dc7c2c4370cfbe698a3297005c9fde7af66bce7c9ef68337b04d7681e303a824e00acdae2ee3eb8c3e7507e46d67a4cfcfa9473bfa6334f2170911bf2ea75a3618cac939d11d6a778101e033cad958aecd89feabfa19dc6dc73584917834ed6552966f7bec4546ab24c643db25722b3ba412de04e9195898388d9ce04cdd9343da69ac9b3d3155620dde4052e9e30529904f25dd6233bafd4493b66844c8fa5d831377dc3ff8829114000799801d46586dc2d2059f6bcaa43b899e089b4f3a5ed4e6a7f1df5b8d42fda456a70e10b2ae14630f27e4c7257f5df23ad032c1edde44073585c04c1231e085591771cb64aaf62febedb33df56bc62f4d126cf8be4332ce4965e6e67d0be7871d81dab963c576ad7123bbff510f282bf66c0c1ea04aaa05a7a4d410d0e7b6ed22025dcb6ceac78f377306e973973adcee776ecacaa560dc8008799b306d5e617b2f51159b1e5fe5daf40f8f488f077cc55bbefbe8f5a61c28ae2b1493272dc6a4e34854f73f74c3442d9c302f96b6e721e2956ee0bcdb9999ff36d74b8d4ef036afbdaea5f977da2b94d0aa9136abd6dc26348873090cfe3d4bdda4d962f9382576bbccf8ba227af4ca8e017f65b469d2e3d35132fac40cdf03bf8f6beee66fe9214e1bf684e0aae75e4141d9daa1c77ef409f56424b01acc7ffda11cb9bf64a9aa71b484b49b9ee82dd8178dd4adc91d8d176f83d2cc7516d2195917fc246ebdc0dba4cb5a54ac6169bacbcd79adb72d593fcc3fa289f1e4bffb4612ba7a3318e607b0b27733cc70a2e2b4099056731ecda3212d1719a6902cdd6a05bd70d389da1dd0d0b4f6c4968676fe33c6e32d791c85b16cc9f4289bdd09acadd9f902d9a91f1559bd40eb6b73da7a623048140f73454e4ccb4ad65038109f6eba9fa01b0a3fe1af228e2c4134be136db2b029879e101aa8ab264e554818450734eb5a900497d906e20d36eb3848b092c778054c5ecee767c00185ddea39160e4513be858bfe5c7c7febf97ee8e2b2fb477bfb10c11f3b756c0da1d87e3121ab4454016b36fcd8f6d2633c73d4528221974b3f21ed3d464d47bacaadbb4647320bf0bcde38b0a75b6c3aac8b72d3c2c179417d05858ae4bd72d9c16713f7c116dda3ff8164710d4d14964b33b00b268007f8cde2eacea5108fed77d7bff70273f351b4e160d28d02576dd5f3fc3ab264c5927cddb6f9a81b852d24842bd5db5c5f2d893b2f013fc75426ef2414bad1b845ba7833c88a8ce76fe2644455be2ac1b9d1e31791693fd65f1ce35fee9d17b42b444bf1277f2646a19d76952b3fa3846c3d258f9a1835a709fc21472b0f7de7a729111e850f27f88764b3ab4baaeb6cfc644b9b6a552a61a7286b5af8011ede05845cb9359232f02ad8b3605b00cbbd83069f26b610378055c004a456c7c44606125b7b076b3f955117e03eaa514da82a9650e8b9247902c5048ff776ecaaa5ea57df61d726ff1754d4b1393933599edc49617836ecf78cc7dd45750b666b73150496e3999e339243f5644d5a3e57c6cdef2ea6c967f8bc93c27aa56ba5352666ab6dbccec415f610bcc76879793935df8e594f5c6b80dc0adcea1a1d5854f447604c54dad61cf0ac91d27ef963e6889075163e89cdec0aebf32080efcc58280b705a029511f21d311c1644623f82039e096f7e1d2518928847abd479840b65cf10d15851976e47444d64c6d4425310a3b5efe9b584ce7aa01b1f79d6e3092486f91fe75288736e852c0132561a7616f21b7713ec53f0dc53432f53eb4ad778dbe14664b55553ba342eaf94e9f76320f8f658b4c5173ab938fbbfe20c9987318c1a5104efe41419926218d30b0c97a366e60f6d1240e7f601a1b119df36cda11bdf7fb531a27979c9823efd2a75c70387f0296dc7382f570fe59568afb406a48e7c13bcb40204c92cfe13b3980410b229767a5412a7db82845da135cb6d5b2f9f5b22518b2115dfb02115fa1c4c3177a55f5c194450f0f0a518df7755b0b12eb412f5f6ee2256bb95d2985bdf1257769718de9b4f4281c3eb3407f175c0b43fee6b94b00875dca0983ae763624bc4e84e9a78f778dedef5eb078ee87a34941005c15cf42ee05cafe098005b1770ccce4e59d9d3f6eab9fb2673766d9b70ac11cd6d8b9d00809e58a046d95ff62e78a8e5525af54094c907019ec661600ec2c4ce5337371a1daad0e37f3a5cdd96a3d985456a588b5c1f61f36a33c6444c3b67c445bf95e9035cd4f77191a95a7e4c20715e55dbe43196809123499148a930321e7b2cc7809cf517fc4b2b0b49e57cde4b6aae620fe8cd0b38358685ab80061c1c126a1f3a96ab34fa957236cc6c59ed962b3bb006a1c122da796bf6bcf7dbeb64f4339c63d3a437b5898be19f6ce62024cf9b9c89964569f176fb697430e553a7c0936056183223fdab2f910047ad5e64098a44a2edbfd3007b0b5e4a5d1e6ecb44f137dae2dfc45e96f03e75c900f3f84e2653efded35a3c8b27e310dc361c0740524e52a1bbecce57d59c4913313e62bbb63c95a93512bf09228918bbf921cd5c62b8914b7142d6abf8d632c3ac44ebb6936c638d56cfaa7cee463838a921398acbbcb44bce621bfd81fab34a8ec33810eeb89fbc3cc469990089d2291e1e873b31398f2799b8d62d429b998422ed634bd7a6de8e991ba8492c001fc5df8b0014fda377cbc5ac74e40d50773ab5c2b4d08dfbf3cca590a77f4db0380fe7af822207aaf99c38676327ccd9aad50b2d4db5aedf74b1cdc50c484d455429352ef0aacedcd9792dc26c66081c28ecabc445b6f1f547a24403e18b0468c8881bdc3e82f7bcce254944271c3ba06c80555c8f3d2d051fb6007507eadf8fb991f45c0c9e9ff08838a425a96d72fc20d642c2eef45b4fa43e7b380d8b6648695c0b9440cc66665435ffd3df10fd786f7638e13706f6c5651dfe5f125158ff3d1da84cad23129e11d79d0f95548318b1c794990174daa895e4b984c175136185be534ed6bff9231c215fbf6bd297e24f528cda523d62b44aec15fdfb36281d804625db07567fdb06779325987f69f16f19df737d5f65d1abadfae70a1a4daba5a87e4ea3a09751ece2ec21dd24f719b1f57e795819689c8f2e83beff593735825a1ff8e4e4df9d031dd66120dcba07e6bfbf1b0946b3585a5eb807c1632a75353e8f7b8c4f8ff0af978afe2bec80d3b94917773564d7efd92a79cad26360b599be49bc657b132b25f459d58166110fa626cf1731be419105b4bd235176d60efa939fdd8dc213c695674bca27f161da4514f646f33557aca06189698f2953674ee73be89e3fc4c014877c6bec370ca1fe446686200a94ded3382c4f4bc58cdc12c354a486463959cb91c2ea0ae965f912364c5d98acd40ee312178b479b540875fb2a0164b7134564bf7fabf59add993b08a904452152031a784cbd36e19a47d4c9371e7774d3433fecb5d072d059b01ebd3279ceeba80b356e3628874008d801ed74717c70a93411603f1faa3924414665a95c475ac42de8d616de8be5c00fb90e5ad13079e54d1c7000905b62742ed70555ec406b49cd4aa6ea68342aa7763530b180e4f790475eefe1094426b7de9e0163a4990ea3494909c6c6de6b7462d70c8f2dca3152d81c93a8c184b0c54da7fb604f835df34506731774e6b8f2361586ccc17f35c8e21795ccb68a5cd73355c98a17c9ae35ed22f6c0a36c4da30af96ce7347375144a80dd851fda4971f20e9d6d18878d74803b577af4fa8f34c05b380acbc5282eb63f9345e4dc1f9f0cf8808a204ec789ed31ac9f009790d5c9b7d744ee3b29d911014c12b53ff691fce0ae5d53dfe1c7a367e694fcd2f688d46758ec308f3f9736701dd825153df883c0dc539c9dc3dc7dc9a9a35f453c306fc57faf76451bef45889e4ab0a4a4a6dbd377996c7cf80e0e7192234475d93f3f813197ea2d3fb112c2e97cceef20000000000000000000000000000000000000000000004090c141a21
+flags = InvalidHintsEncoding
+
+# tcId = 20
+# signature with omega+1 hints (causing a buffer overflow)
+msg = c806000000000000000000000000000000000000000000000000000000000000
+result = invalid
+sig = cbb10acfc660a8f47b48c09a8ad95ebdf7d5699a417096887ddd70508e82d3a49a69ee8c0a2aaa6d89ac126675f6c955ba4b8f234ffbd6fc0bdfa6bb95cafceb72c1b047fbedbbb192a571cac9398e9c19909852709697bc3def2d3583aa7874d032d6b1d36d681535833ce378a7be08b43998c887cbde0b6a8ab0948a5506d59f604ec85ae84bf72eb1d36769c5f2eca3b38ea6917edd02d28840f0cab3f110b027cd877f92e59b0328163587e4606707b39f16e5140a7156193ead8076d084aeec93268cef5b9ee0756e0069d0e9fadad1b1ef71bb49ecd95da70d3411ab40931c0c30a2c4a3a8d87de2040ac64df2202b2533c4be396f9e0e9d383f3573982cf7e05b67cf6f53d15454f48aa1825b22ad9dc9ef1ce6db827bd0059295c2409d1e5b75fe6387c795bfe22f6528825570dfd8d58fdd90e609e59de312e7ad90e1dfb1b302c90d1c71c4a5b5c0034a0c8b8a18de6fee029ccba1bffbebdf3ff82d99ccc329982a8f04f0cf7857c0826a6c7a9505da3c705f7c8913ffb099269d8e3eb679685f22450fcc969de7e743af0280d40c2861743d56bb92c992b566df7a29c375d836b38a8a6e3f89102735e51f4c65861bde29b6d692375e9e5344ec26d32ab5d1247225e7ffefc6226093289d0c6a8655d9ed7eb5a845bc6b4782d4cec07961ced24be1b829f57a05eb93b18adb5a18aa5d72cecd2c6592614868a845b6cbff9b876e544c5208b3097efadd383ce2ad971c252d67c6a9f2ed3faffbf845164de52bd195c2b2d3df673cf6d9b2690aa7e4050cfe404da6faec1fafaeb4b9064169af0d46bb30b55c80b655f0d6472ded24c802af74d014a14dad2fd88941747ee0097de87d85191584d8c4b051aec8653373ae2a1c2cc16c354a709118633f1367838e491b11213531bb0c3bf6170825cdd94d44ef09de2bfba62c7373b479d64bb45141e130c9de3b0f794b40bdf3bdc0f6fbfa17cecf021586a914422e83f06debd5d02ad2bd64263abe226d43c247f42f36d2d47ed550dca03ab844048a0c96e725c249527c60b866063b9b6b4a1a51f7ced09ca394dd01b784a30ec3477bdadfea46f34d376603c4da1f07a80bac5ae436baab3592ea9f9f3b6bcefa27dab57584505dc661c24a89612d29012d3dc9432191eabe5a30ebfab94ed93fef419759ef42462edd662d3c8137d13c530b489340892a4cec72783f0c7c788a24d43c331b3a63d75951e4fd84ac251df2dd183569fc031498c0ee826debbec605ec230fc1e49eab7ebeea6767181cc3b47f1dc7dddd058c51ffe0f87e6648a5bdbca0c0686daf6bafe5d158eb7de470adf4228c24ea70d8946573117bc19c8f25f851edbdf4fb1d69500501f9ec5f1c488c781ca8041a8767dfd9275b8dda148c468104b8ac60fffae510b4b0d31c9699d8d58eb441b3d6702d153b0702d81b41cdcc1e8943d0d5147c737e85af4f014bfb2908488372ba716129d63aa66ac8c02f91d48603763fb05053abb58e299d1cc9f01bfa7222c4bb37f6c69ac41743763a0b1b416227dad58f6f292ad13b7b42987f1d95921f997bd3aabc6158fecffdb3ec953b77f37effbc754cd16c22915dea3b800692e7975d4fcfec46c4e213e53128876495bdd1e5fa1a55e21a31d9704c9b08a43fec1193bc8ad23d3047060eacb17ea591a49aba6535c1caac0bb98d73ac36d19d84e6e42a8e85601f6376d1c7e65eb0505d7948b439fe34f4abb99c4e759427bcd100521263c181297c131f22d948555ebb2b229c81e7a00bcdc3633fb9d4e7b478f92f369e3a3a9db10cbc76be2e7a2932aa610002f128145ccb01716f1aaf5bf0959c4dab108353185dfc4e77d4aaf3f4e0c69caa0a1de7a2ca9edcbaf390861c486992c3bb02aa1c9b5c6a6a22c4e49f50d5e771adab52d693e8c2bf9af298ebf64400ab408c365f1a5beda25f8e1d2d6b708c63f5f1f667061ffb735960016dc393dbe7fec2a7b46dc4911bd46b06e222f530bf997b1e31db8aacd7f80a267549c6ae8b600eee5fbbe2c764634dba1d473ce148af811a7ef2b2a42b975ff5de88819230a59b5d903296597cea937affbf552b80f845c2a388a08bd4a4002efbf48ff70dca76c101d0b74b95b758b9521d98b8974f889eec2c3d79d9ccf6ca262f736de6e3ca93a551b8d2c5fb8b73e944bd05e62503cbe7cda823547d7446a8a4616becefbc8e558a4de3d62ba91486bf4033d4491642790be60ddca75eb5a68fb36b0c6ad4e70364b077ab8fe7b305caf7c70061aa8b466020845363257badc2da8861cccc504aa0bee7c48f9ba403350d4d46529b08e41d30af6f69b7fdb6fbec8ab6ea3e4eb0dd8c7e3a77de8ab47610e7ebebd9f5015bc7b7876c5fa0b891a0fe4015827012f10260943c08f389aa67891f0af67d5e71742bd852dd1160a9df66da04827cbdf3de6a1eb8e4e24bd2b1dc680a1073807795a2e9ebea30cee0bf6479494b7f5211e233f2844a663a00155ed9482943132d9fa0c966cda5f1f64eb96e456053342027d14eb3c70062c0db2094d693fec31d06241d886b9dd9ff13584a47a7b843757a75a6e28aab82caeb3ef256c70a17a6180dd890a8e6f4c6b96711daf9f799b113d87f6bcbd56baee9dda09f6f67fc1b1e1e64fcba8497b20339540cbf7ced0e21a554c35e257ab64cf4761d12dfb457dd9bf2f5ae9701d87c8d5c367b047f378556708645684ef9e58eadb8ee3e4b97a86292bd9ad8acef3a3a9aaf0f2039be4640a953b2cd8b19fd5d469cc1328443c4c0ac481f98997f359fd561e11ed2f03f123302c8ef74c60839025e11997f82988dc3448ece0640473a1738551a4f7e68afc84c45cd92583950da4a8b5a043fac1dfb1343b0a1f706a1e5e8492467bbd1924fc3d430978bea871ef59062cd29e2ad44becc9caad78b5dc3c49e38b8b26de0d957e8e73699e5d2f5281108aa37f03b12d5bd50d904f0caf4f4dcc74adcac837ee04dd21f199fc42ab39fe6229002ac48dc4a60fc35eaa653c30bd275b4ab7d32a5e4d09533e7a3dc0e826d8c812ebadde3ec7eb3987c17ef2fb00fc1b6ac82d650f56646e9a11ab2e097e0697954f252a7a9a390559b79ec5d38da9e5b0b6f027c158643837a1d4ec93b50ba3de8296e022463c6424ab47561950e8122637dc682ddabc523780323049b1ff5949394844856b95e06307ef3362b8481ac2ede882a2e91299433d18513038cf205ffe1687e8fb011dd40864b602602fcb8391d81e05f6bfe5f09bc5055b2696f32a771321b30cb79fd0b66a2cb0a5208c4797eefbd81e27a67a6a0bb39c309a71557c78441d76b3fe7ac00956c184e9646984ffb2751f61f72382842ad62a032b8de6e2317cc2f2d193ef498a133badef5b1869d85edd1f94a4f458cf21f0b80c3f2ecde7ca19a0fc7c7f7a8986bd023a02a61ec667c0c709b1f89ea5ec07785d72a1f2169a1b5b1522d8292ef30a677662080c91fa774f28ee40aaee0f8afea96bc7d858eef054b93f3deb604c5f9929b1a5092f68a67462ae7fc60c11cf29ca950df68d4060edae6fe254160525fe2466a9b97144e8401b230560ff5b3ae53322905c8d7794d2d4d63ce55eca3c1ca0dc97df11fff1adae8d065e3943bc8b1a20ed1493569c8f730b1adf11001a3cc9cf23d5919a4725069fc58eb1f46415a57f668a2d5a584ee41dcf1423869922f78e7292a846c3bc2fb81ce36da0526967590aa548a5a291f5eb69e67391b0e257bed22095999a70b2d8c6d39f23551bb25c94584da70150dd01e1d3d5bf26809059d713368f7ff0fc3c8657c3c98871b27ef04a958e8d8ce255d831c28e8d7a72b74adb806df346cd6342ac6b4de114c08acf7b9167505aab8d6b5742c0539252ffc531046998990c727f9d914f9426bb024af1e32bac4ba5d1072e50adfdb49feaf9472f82f74459a660963e857ca46db64d945d19d6a3f667dbcb253c28ff5e79ad9ac6c9e11012db47663bf69e1be7e1f829920144d0e8bebf9557333bf94d8707b98165a2fcc7dce2460c5bb5966d57e535b234536c430b540c32bc6473f7b5994d4cc40633fe5f3ca0e6ac7d1e65c55bc15bbf643a97a346e6abb500e439a014af2592298572cd408c14050656933d4b9c74d45864ad3d48bfd0c7be151c82dd7543690e09a4c450059d703461192ee3e9823dfc6a047493302256df5e5f59b820614547ea328e78250730ea608191685ae747d323a9c60b2c470a724d1fea2f789263a8683873bb81ee692fd1c26110118bcb69cb7880437f251fa8338e4378e34434edce0defb0f0049b44572402e71dad5f56b63f774aa435ef79883339fbcdf52bb6a9463f4fefdb94d3e151552792403f6997c160727023a9ded4bb38dd34b4a54a373ca403720be4703d9fc3d1fb1b7883f58cf0d875871e6be474631ccf3e209d3d4beb5a6ae2815559b706bf583fec48ee1c0e95e66054bd7ac2479d1d773dc4e36e526ed70ebb02e74d1726fc9b5167c4496eddb822edef41994e84ae1172c1abe3b31c800c1baa04c71b4074634be600166026e1bedb081d3a632641a9e77766e579c3236741b3d4448576498c6c8f20439657eed16767a8b8d929ba3abb9c3d0181e2e3d4e606a7ba0050d1f262e67a7d0e4181f85a0b5b7bfc3c7e4fcfd080d19222b37
+flags = InvalidHintsEncoding
+
+# tcId = 21
+# signature that takes 1 iteration(s)
+msg = 0700000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 424ac14fd2cf3f7eb28b104a7418909e84eff42d2f6e7c4ed3874838f8580d918a5d229f8ad72a0e093959da15f05e9942fad12ac1fe73c9de377b85a0f9d7203e6f8d3d4e83e5ac52a82b7a77c0096d92d40f2c1b7e194673faeaf16d7bf11342956d14d7bcd45f98ac9003ec86da5a1b2775d0723ba7350b81ecabc464be480d834b3965fd6554d340b9a11add210c6228f29a8932b8b6a00263777039533e1580faca62a7885372fe15b4e441a7595a13966fc05a95926fec9eed7563b1347d2b8d55e15212148e9f7e6e6b3e8dc30c6a1d213f66f574588ddf5d559438b1bfe01e851b15108baa97b64273d2e850b8ad504d2defb158e1ef3d4af5e1cbebfdf8a0e8037ba4def90bfdde7f2eadb3da96becd9e6a95e286e120871217aca6a8756f3ed7a11c2f75e1a82f9ab0234b1cc2c8178ad690e8c2798f1eb8b83178f39d7fdd09f44d7df268e7e062566a4516b1a1ceb97049df4646e8156e678c5f1fe2705b0c261db71a9932b8f41950e326a2200908c4c0bf3681384ae1501f5ddef8ab98133519452c725eb84f36814577108508809015af4d8758c23afea3815a09537477e8f6c7694a81c1d08c822843b9e67d95592eff819f6c2927e403f9962f36364ec2dbfe494049884d61695331e32abe6272d5a44961b8679879a67b142aa40729630d8d24bc69caf17774c6e2b3021b9181a8a498586a0f7d4109c5c82841454785873670dd2f60a4c278a373986333120c1b17b4297620bf72c7fc126205c1b240c6d60399b715579adfd96492e350a4145ede8d075ae544d051f58bb9991575a6ddab224c9c83a39b6fa9b49444fb0d2b8e32464c216e42d02091ff25122f85f9454f6d818034a30e6252cb0d25b572de3ab1c669709e04fbdaeffa26d0fc67d250da0864c71d74f8c08b5ad15cb95a33ca5b03d9573e83b35cc173afd97e88b9ea859861384cf8ee6338bbe5768cdf9c84cabdb8b332aaa7574ba200d496aa1d6be562f59be022d7d9cc63fe6a35100b664694b5bd1f5a610cc3d7a670f45b47befb8cf705339a8a5adec9fbb9f1fc4196fd3ad2a5ec9f3c9bd48e96bd6ac7276bb00705aee192106388f2fef2cd3c7cf00a159459314260dc49d9630d9bdfd0245db95fff41703f3236ed1bce77582dd6de015ed6d8dec0f2f2952fafc0e11479487a21c1cd61f1a9410dc730dfdf01527c6ae4072eb1591fb5f9b6117dabd9458331d9fdf582acde4b9001c6b6c6e048120cf15534db40e7b8f77fdff60b08a0ed6a802095fb76c71062dc34a612fe34f6598529c2028487457530c154d18709381cdb36b4ec697a2b921ec9056c86c5e73dd74b63f1844b1240c703c6f6373018c2daebb7beb55ec0365c76725063a3fd212ba80bc951baee1b58ceab532e58754ea44b0cf815a0624e2a0cf5dea9bfcae56b7ac74e4627a05bd8a2539ea4d25a3aceb003c8e7b750f0e8485eebc84b130a54ce8926b54cbb54b94db057f993ab426fe1a3be7a997782fab08cd704b1628b9d40af916730014d71d71d82bc09a7a17855c314b9febd079e371598103a4fc6923fa47a1979fea54c0bf7542a6e54d5cb92814c824d94753095d2fab232153f204d16aaa6acba4c72ae358eab79a8b51ef06db93cd5acb606ddf4dfbbc031f697486c284ef2627e3e65a5998f746d6ed934cedc1204c72694f6738ef0de7cf25bd147c938f3e7efd6def80c01b690ed200c21f56df02f7f31e90c0f05e61c60e2279b307664f491fac8f3315e48040ed63f6b68cd7821bd9447a8cd9d95aca3b16d721ef8e90d668636ebb4974553f41e7e9b075eee4e83e118fa74f2d7197fa135dc53146e7c194645e4f07412693320117cc3cdb1bca814e0e30fcf5590ce237e0479bf088cb0f68c2dc0b53203c7c007a4bc6361a32e3e153cbef1163eba0a3d7e5e133fb30c6f37b3f92e94abe270e7c3e8c97056bd12a1d588f919d65db51accf624e0a356d6e6e0da3c67dc298746a39b6313bb658e3451a2b1abf7efb6c1e63b83cfaeea9a17ac8f22587254227f5adb2f41f367bb9e4530c7fb93b78cbf60b7619a25f2f7a00aff9d935c294e82102eb0e96da7c3d4c87ccb896a5e5ee3ee13da3d94655a66c0c3d781a67c23bbd53cd7eea563a8d63100144ede22e3af96b69ca18d5d5be5849d27c1db28298d485e2fba3c7f68297c7f883049d73ffbb3a300c5aacc1d8a805205602e410e76fc48adb109cd47624c2822e6dcc0db0a28be5401a79659d19b8bbdf131ce04fd6278130aa2f203b9e0f52134a3dec5a97c4753da3127288ea0969fcee232837ea067e8a34b6dd4e1ecd7f37b8e956d137be78be955854a75d84a339f3e80bebe8d295ec1149bbaf115bfc84e8cce1cf994fe067dbcca2ce1c378180bbceda95444ae535a9ffe1819caac5cf95b86219e95c62581d1110daefeb4830043a7a9552de5a55f250e7f1aa5993f87647c92c27256753d6daf32da18c1cef9bd5ff5a7a8e182d071f1e75d10be89f02c861a0d05257c08c9e12f877a22c8382ec883c592a34722f1138a1e8b5ded41e970b97ba2a69c386f94b508b38a59b464dee983741e61d0096f499f3c552f43ca317ddf073e0450e800585053830681d4a8a8ecd5b86c901285c84278c06b86375a04fa7002b259cd61d5ecca426aa334659284945ea6c5adedb7d40835c6134271d641bdb19cc3617bfdd53618252b4a684a259b82982b0a13cc90ca931c4e90915d2d7a0abdee3f78764b41e3236e2ac21e138c0cbce20740cd17f34eea236720acff25161ecd4c903e33395f51d2c51583407b35a044d54caee2b66dcaba84359218c6803040b19a39c0e4ef570fad7330041e024cd194326891547985b10e505c6e6b1abdaf3fcd63c3f2f08b2d93aad41e83167d969e54b12745b328b5cfb93266afa793bf00c86270ab98e2ab44b2be16b5e522ca280cfb0a9a4f744900f0f44f6126b787274b2a36232c84b563dc3a5879c83c34cc6d644fedc3912b10e9806f944440b00883bb76d51782f928139117c7358cd38a460ff73af4d417278b7bd463da86ba11bc88cff14340a24f675905c7edacb121fd625187b90a3152115b3ce1f49432409fa629384509cf51426948c71e76da8efbde2eeb7d3f3e576f18d4fb61f90d99de2bfea2cec28468368610670890ef26e05bb108dde48095251574c20611ce68890144750c62a9792815a89ffc50ff0d76fa0f708d917f3bd9f840b11085445784d2017e54266c69f3fbef4c8fa82c0723ba58736aa8466a81b00d563dfa074a9a06016ffb04f029bc12c53585183f237d84c343a13b08b484e1625be1b0c661f697ad5097040fed2d3d46c6b1229157729b306694bcdfeb4eece5b5dfa8043a6fcd607e2f82aeda46e88f8d59f2032fa439365bfda8ac7b9e09ed8020c045757d510d5de5dd0b2520b0f74a99d8fe7b1915d82491a270d1a1c554d0c05d14a1419e71dbbe5df225fea5c49b73b84fbf079dbef25ae8861e58ab8bab6ec4ad07dc10072c5627029d4a74700193d12f439a5bdc41a284b92499b3ab0f3973529ea148053da54125c2969603fa55d3dc30170568ac9642aedcdc817b0f4b8d5d31925428afbedd21fc7f1132fc7e85284723b4f26ba1b50bd5fea2d81b12f4451f97331c6af0c82aa9d962ce034df061c32a1113990a9f320291993c9d614c42e2aadb5dc52c58daf8d22bb302e1e64b32e16394cc0c44cf93bcf811e7ad772754b6e9c2dda630449e005a0303996a69f5ad647f98908af4f857af804294d416db784c34d2d5aad7d840e135ecf6b636dd33f4ba29d0f12fe3967260013662d8bc23a34a0f8a5df93e111e8792140487eb04854bfd9bf679e1b38de028ea5fc457cbc8e2706fced55f5363425b0c2c13cbad1ef96d18f11b0fb3749a561504b8fee8cfb4ef9c948e3efaa2de6ca38fb445382af66855f3c0603ab175aca17e1b005deec73b03eb952cefcb3cd5860c40578e8a366da62a431916ee212d9e5740fbfc42f6d0e0951fd2f213a8f6f21984e01832c0dadf56b3de4833b849b7d0c9125d7b9ae5c6f245703d77c0298c9b6abd563529b3f2986ce54462f050d18dfc85a840b1633b2b0373e585f77c106d70ff711d03362af483f7812965405e586d6988318effc81e9fa918ab278e97e0d6d3932e24ac17ba537f568f8b16bdf3d45488cb34f696295f7321b63a76101ec283f0427a533544f752cc9d3c277c59997e01604192746353421884142fa23dcccb3acdac509a5688089ee919230a9e0ec2804254a153f544977a634bb13880f3241daab08d1b73bdd8fe4a187e9b4c3758eba88cdcd9fc104360b2512788f4d31a23c80b78c150af10e1a41dd279e895ae9e66ecaf2bf32786c11573a74cbbb93b82255f9ed190dafce6803f07271889828696f5f8173772a7142ab46899c609136713cf7a3f4c5e9718c84ee8bce8b4b5ba83a09e421c830eafda214c0e0b3dc28d0f1adde9b5fd9fee6a07a328807d0e983cef6383ab94c415dd1e649d9804f571581ae0c7ab2896e86a470a9eab94f2fe9e138e91ac103cd770d27af9648ef83b5254696d72d7174188bafb05114a788d9726c9d7eafb182348618cacbec6224186909c00000000000000000000000000000000000000070c12171f24
+flags = ValidSignature,ManySteps
+
+# tcId = 22
+# signature that takes 2 iteration(s)
+msg = 0f00000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 46b40670bb3da2c35f9649c9cd3fe613e63335a645b948018b3cffc864412f8868192a9d81da08d1e768d0d33d4f7a609dae1e72d4408fe5f5660f7714d7d3725deabd87d32d66d041124a0921a71ea30d8758427cd8978c2014d83746c7c29ca7781125afa4ebe984a11da34692342493df2c8fbcb50c83e56c9afc3df2a5d317add757dfb4439841a8d91d596eefa656f1953e7fdfb63e29a23ca3825a1c04e09f766ca10aa6bd05b9dfd7910db1956f99326766839c4dc0f653f2dd5e3a508fe13c2f0624d3dd0c0f764c164d231cd1f73646e542d7bec86e7ea0336583e86c2811db5e28e18f34122e86a37e1de65f5d7836c35db6079bcddab304ab6cf752dac710004fc24729d760d3d9380270c5d1d777b67ac830dd52c3548bda02f0f7d0331aa6c8414fa7307237456105c3c5f8463aecbfbf4d8c7f7c3b06f940592f12928a7a018595c1972705f8798fc75e2833e95a163ad24f367cfe85545fd0e0992775be5c074ed111cbf001bd536d1ce4a0430d963728a2e25d71c3efe9c385a6841d7f4c6d293a64f83429f064f3584ae0983dfa4f90820dd229f900e41447c07db5dd2a61868438b8f4eabd475da53e8f1c7d1120e366d774bb95839f6b3ada1f704198e06b13760447768753fb449c0d53acc22845a0a4e5b047d008e08e2f65c577026863ed25e1dd7d39cd4f0a7d823f4250474866b80ae3a2d19838cf24a265bee177d20b9fe59f2015092b3362a415f05e91bdf13ccd1bf3fc901a63ef23ef74b41cd74606c687ed6fecc665ee4fdae3a305392f59f9ba7e6c4a890c56c3115a2cc760f3166ba1c4e534a69bbf738c764cb228204799afdedd6660fd4a6b7856a84e714e58247fa068f859796cc4271ae915e62d3ca3fb43bf884fb8cfc39ea89d3042e453953849efcad7852d67471d2004b4ba8937a5c508109a19519fffa989a39a6c68f1ce9268469af6baaa7e0a93362f5b87b0ca24d5151b99bdac16885d335d6bf11c2a574a734999815843121bec25ba9775593ef19f809be5b63f5fb01b29f8f0eee9f1a69f514c0f17e90d40ae9a97f6fbaf5804bd036b6ae7cbc161865580f763d9abea93625096f3730c77cd0242f387fca2fa573f2638887417bd80968e86594e1ff547ef5ef4b9b49b0524ccfdb3701a8de2f7ab2eccce22ba93bbafafcc1359c2e3652b67250ed313d6564ba245200c0107fe749c965ecaebe28c79f24955a436c41b6ebd7f321938f4dbef88e30a34e5b2a3763381d0af8bd0176feabe3d467eb985cf4ab28e465b7896b36d2aabfbbd26931fca9b76e2eb1befe51b45d640ba468488da4093fb2ec7c77ae43c785b6588ebfbf5568c1299eebf0046e28b5f1e897516edbbbe99843e551012daa0157e03d1d41daf987b73ddb361c064917b6b8b4b23c31dbfe01e56960e63cec546e5684b057ae5f904333dc33ae1b0018875cc13f39e11b247db82e43409ecf16051be7e8525c9a90b68cf491830d2c583db07a5bd95ad69af0e4327cdccb9339d96a4aa201ebb86edfbe7176cf63a409872f73107c3f4f068df79ef817efb2f0837e665c7f2fe0a56c4e392d63a1032eaee2894f3bae6df6a70a430b22e9be6e15bef3a9af5545332ea3a62c94d5a6aaa8870c303b3460b3be88fa848fb818a3e1771c329f676941a628acd948b260541ecd1701c6cab3311ed86eaf0950675808ffdadf0b97f98e9da2193258b74d589054014dabe4c501f2e0fd81fab9cba2f9c8f70be8175da44bfcf01ec6ca5ba7f1039b29e27e5bfd67970e5e561c693a1ec2023d53cb1ed32f3614cc132701dbea3ab4d99398f23eac52b3f5c5f46a110d77f0d9c660b432bc57cca8bd38b4b5dcfc619aae56d7cd686f3fd94fe419f8fc54c9ea6611b4f512504ce87216f768abafa48f3825b2f9afca3d419151d1637bda8aff5e2f9a7921421fdac429c66c6a01832c7041f74fc81c47e4172f9d95b200b1a84af4dd9b677670bbf356d590f2fc1aa70ec53ae94331b2ac0f1a8bbc7dd600cb06c76f2f340aa2c8ae102cf9c4ba7126414da52a1d8ce3504ee282a02a9564b149c041694313ea3f11d9e697ce692441b3baa25b308f42eb7f9d03ba3b5638fb96004fd0ef2de66c6a573ce2570e19e75d5c2bea7d5c656c2ad6990cd2d8feaa9eb025d80b6483e6612888ae3a66f646a61cc08534fea6f31447af5535308e81e3dbac05b488fa9dafbfb31b7fc1773fed73556e9caa5864b4871ae4d2d472385ff62a61113ed0f7584220aac571b69373f2618887392f88e4813822009fca474af81a342e1fc7be442079fe882e8bab95b147c1a196eb079c7ef718c194e5d6a5332a63f3f15cfa08453afe796dc433399c75d8e7ea603c17bf1a133fa1407dd76489c9950e501e64d09a7ce59f886b3b80af926443bd3b04e33e97adc795fb4b775c8d6507dfb7aa254d3b994e6412838a03209ed3ae2c15cbf67cf00793c7b7bd4d1e36b56aba5212c0e8c82752da39686254e5357d2eb0ad691be3feffb1b09620c2b0b2181e510b47ec2fc0257acc3b847b90c0704eaaf48742e5a50498fceaa8945180026647a7f474cada887dd657f4003080d5081c1d37d4c2c8a1ba5e8562319d741b01bec47cff4fe1625630051b12accb6c919171073ff9cdf1d138ded6ead47440bb2f99424218156fee650daff3c777168b43548da1b946bdd16dfdd099d83a7c427f97f83bab18acb2650846d39cb41e5283564232fe21394318a2340f3ed2c6c7782d27ebaa780ea81ebbd33841f834756b74d99de6a17280088ec6bdad04144794594ccca8feee1fa09903953df806291667b686c9d5f77d89700b0a29ac9c95ef647d0b4a6ee30b99bbc9392a4769f4197f4289892f926d744d8b62e067edb5af6a6590981261b7a9c3c9f2b69833251916e00ec5710514fdb29ba3c25285001ab2652de3982f7bd960b60ac2fe285525f588167305afd30f059ab723c1105e6c657b5dece838d79d4dbb2c14cc50d123166cc4a4f01d15d7f8d4ce10acef8ab06132cebbc4426762b6616ad9c8d700dc7c53a1bed753569b28f6fb38e2334e50efb6b7de233b93ac1e0b4a71c7cfbb7002d6bd2a7f91d22cd080c182b989c2045fa5719eed2aadb2b409a73ea00ca3e9ae74e7fe61b18e25a8abed293651352d50eb2a341ae24d4549c93102b5bf8d9523da6cb97d6f0fbf4b64d7b65e0ffbbdec1ac74ab2217c464936205760f4d46139bc9066fca14b65f004b9432c723c4091ee0e81f5549200aa99445635c910303e697e0a08847645a98c12aa9eb42fe38265b09fb020ee3f6fb23f2e501c3a8ce5fde7326d2e9aa2e20aa770d810c3c11d86a6ac0296b296f2a1215fd83cb369abffb3d783b9805b0f46d853c73c887038584a30a17c8bef62ed7170841c09416924f67198bb07749cbc12412185f1d5fc4021a504f1c417ed5965a864140364904d33451937d38e14e8452f7d414949e9932e552afe0b33ba1bc63baf2190d8575e90cfeea69f5d0a3182d726cec66595065cf9dc22657cceb7cbd3afec14c84e900071d9d08849bcb1e20ec70c1dd4046f914f80a41afdb3b435b75bc125cfa2e6896b288dfe947f8c3edb82113a6eb6c35bf450191ad5abc514d9eeb6ed6fe5123f7e5caea3de2f19116c85def416ef5dfb47ee08957fbd87920e9fdd418895459b74a2fc62ef11be0943cfa22fbf14cb859de45a4b60deafb70e072889344107d0fe924fc68aa9c13429350eef78caba5352566f8d80b64d016265e264a1b5f00064de79c539b0552dfd3880dd9f77903465c777cc78fd137f199030bfb292383be3caabc1b6bcfcd0dbf4b7ded13b93f91408751808216e55a2ec4d39051cff5784b0db9e4d3c38fb5093bd23b29d82cce55e77710bedea7d9f0ad6a47929faf26f8d50bb2b2f038aba8d970939f4e6fa02c3f6cecc76f3a4298f66a7976b475d787c3d2ed3496a4cd9c47f864451f140be914141546580364a64215504d36cffe6f61a08a4f1940d965f39cb442c6705e932bfdbc29b612a8abb3925c3d9bec1c9630f622b0ffc7d8ec2425022882dddfa46bee778fc94e304e9672cb9931cb4b75edb5514c2d930e0de245f15c4dd422c0fda02f6b104c0b37ea2df5c04f83d9a3f644930eb54e19b7a2a5356359d6370bd4635fc576918be8547b7aba9f11f1dbf10697c8794b06f7ca1316c0e9ece8e51aa3a6d0a77672292ea5fdd50b399175d452f18754e4f3ebc41325982e2ba3162974c30e19fd49bbacf10e3cd96254cb3f43d6ce1115650a0522ac1b14acae1a3231579589062bd63a55b1aad407c0500b420d0840e49e941a5fe6c6cc196ce45d0d16289199cf9a29130f6235a3bf9e8598e2b0213ce87fd676ab5b621a284567172fbe5fcaade672cd55d1f6a5535348472fc836be896c332919fba13652b941a35087b44deecb7121191c548e8a7161b561a6f8f7cb4beae6b7f3d194f420ae758d209abac2f36c144f067a829cbef57304ac7541f7089bbd97821312a4c074be9daf5a000137825e7a406ab564cc16fb7ecfab4babbf00b1f13f8e009481e88f55050d1d2e313e424b4f6687c7973350585b5c66f2fe698a8cc0c1021b53637dabaeb2c7e0f35154babec6f7fc00000000000000000000000c0d151a252c
+flags = ValidSignature,ManySteps
+
+# tcId = 23
+# signature that takes 3 iteration(s)
+msg = 0100000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 0d0d1a7af2d4eff6d4af7435a634d28ec5d23595fe7a72cf76d30f1fe16620c64862e4aad54fb78f8ea752b1e43e4e5884d7226840beb36a76f6a9b1b7d50b0faf7b8463f57c66240e06a22f5f3de4fe35c1bc6b5e42ecb1c0758069223e02f42efdbbbfbc87b4c0736141a70e6dee41bed27fcfdcb94f4213a0f99a02beba309a93d343cc932a6fd67fb90d6de7a81101a678e6d47d8b1c8bd67fe386dca360be789555196e2ff8704c175ab60a8bf3c9f3bbae1ee5a128f67467d21fe8a62e5f8ad8127b8d7eb37e43abc963521e79d0f1ed57fa341f743246fe69d97afc9a13824c79f7f3dedd286f3de739158a0900c99d9c8e5603df109c25d993f634582c832a79c7bd8cbf3ba07fc4d9e9ca8c1157434515538285417e6424209173c6dafe54c37e4424de0f25454b1713fdc3e72d01a2acbeab4d7f60d17dcd073c60b0ad5252cfa137c138448c931498f61fdf8f449225b07e7e0fafafb1f274fe5cbaaa136e62362877f643c7c94946075e8928ec47c04ae54d2085f7f2b1ef0e46dfb31b9a19135b6cc9da876dace6f61c2766b463b24c0aac5068714e348dea399986c4e8b8bdb16768e7ab81e9ea13e435f97e35d268bb679071d5b99d0d2f1526833e8624b6e4ff1ba3f5af2b23bce93dc7c2c4370cfbe698a3297005c9fde7af66bce7c9ef68337b04d7681e303a824e00acdae2ee3eb8c3e7507e46d67a4cfcfa9473bfa6334f2170911bf2ea75a3618cac939d11d6a778101e033cad958aecd89feabfa19dc6dc73584917834ed6552966f7bec4546ab24c643db25722b3ba412de04e9195898388d9ce04cdd9343da69ac9b3d3155620dde4052e9e30529904f25dd6233bafd4493b66844c8fa5d831377dc3ff8829114000799801d46586dc2d2059f6bcaa43b899e089b4f3a5ed4e6a7f1df5b8d42fda456a70e10b2ae14630f27e4c7257f5df23ad032c1edde44073585c04c1231e085591771cb64aaf62febedb33df56bc62f4d126cf8be4332ce4965e6e67d0be7871d81dab963c576ad7123bbff510f282bf66c0c1ea04aaa05a7a4d410d0e7b6ed22025dcb6ceac78f377306e973973adcee776ecacaa560dc8008799b306d5e617b2f51159b1e5fe5daf40f8f488f077cc55bbefbe8f5a61c28ae2b1493272dc6a4e34854f73f74c3442d9c302f96b6e721e2956ee0bcdb9999ff36d74b8d4ef036afbdaea5f977da2b94d0aa9136abd6dc26348873090cfe3d4bdda4d962f9382576bbccf8ba227af4ca8e017f65b469d2e3d35132fac40cdf03bf8f6beee66fe9214e1bf684e0aae75e4141d9daa1c77ef409f56424b01acc7ffda11cb9bf64a9aa71b484b49b9ee82dd8178dd4adc91d8d176f83d2cc7516d2195917fc246ebdc0dba4cb5a54ac6169bacbcd79adb72d593fcc3fa289f1e4bffb4612ba7a3318e607b0b27733cc70a2e2b4099056731ecda3212d1719a6902cdd6a05bd70d389da1dd0d0b4f6c4968676fe33c6e32d791c85b16cc9f4289bdd09acadd9f902d9a91f1559bd40eb6b73da7a623048140f73454e4ccb4ad65038109f6eba9fa01b0a3fe1af228e2c4134be136db2b029879e101aa8ab264e554818450734eb5a900497d906e20d36eb3848b092c778054c5ecee767c00185ddea39160e4513be858bfe5c7c7febf97ee8e2b2fb477bfb10c11f3b756c0da1d87e3121ab4454016b36fcd8f6d2633c73d4528221974b3f21ed3d464d47bacaadbb4647320bf0bcde38b0a75b6c3aac8b72d3c2c179417d05858ae4bd72d9c16713f7c116dda3ff8164710d4d14964b33b00b268007f8cde2eacea5108fed77d7bff70273f351b4e160d28d02576dd5f3fc3ab264c5927cddb6f9a81b852d24842bd5db5c5f2d893b2f013fc75426ef2414bad1b845ba7833c88a8ce76fe2644455be2ac1b9d1e31791693fd65f1ce35fee9d17b42b444bf1277f2646a19d76952b3fa3846c3d258f9a1835a709fc21472b0f7de7a729111e850f27f88764b3ab4baaeb6cfc644b9b6a552a61a7286b5af8011ede05845cb9359232f02ad8b3605b00cbbd83069f26b610378055c004a456c7c44606125b7b076b3f955117e03eaa514da82a9650e8b9247902c5048ff776ecaaa5ea57df61d726ff1754d4b1393933599edc49617836ecf78cc7dd45750b666b73150496e3999e339243f5644d5a3e57c6cdef2ea6c967f8bc93c27aa56ba5352666ab6dbccec415f610bcc76879793935df8e594f5c6b80dc0adcea1a1d5854f447604c54dad61cf0ac91d27ef963e6889075163e89cdec0aebf32080efcc58280b705a029511f21d311c1644623f82039e096f7e1d2518928847abd479840b65cf10d15851976e47444d64c6d4425310a3b5efe9b584ce7aa01b1f79d6e3092486f91fe75288736e852c0132561a7616f21b7713ec53f0dc53432f53eb4ad778dbe14664b55553ba342eaf94e9f76320f8f658b4c5173ab938fbbfe20c9987318c1a5104efe41419926218d30b0c97a366e60f6d1240e7f601a1b119df36cda11bdf7fb531a27979c9823efd2a75c70387f0296dc7382f570fe59568afb406a48e7c13bcb40204c92cfe13b3980410b229767a5412a7db82845da135cb6d5b2f9f5b22518b2115dfb02115fa1c4c3177a55f5c194450f0f0a518df7755b0b12eb412f5f6ee2256bb95d2985bdf1257769718de9b4f4281c3eb3407f175c0b43fee6b94b00875dca0983ae763624bc4e84e9a78f778dedef5eb078ee87a34941005c15cf42ee05cafe098005b1770ccce4e59d9d3f6eab9fb2673766d9b70ac11cd6d8b9d00809e58a046d95ff62e78a8e5525af54094c907019ec661600ec2c4ce5337371a1daad0e37f3a5cdd96a3d985456a588b5c1f61f36a33c6444c3b67c445bf95e9035cd4f77191a95a7e4c20715e55dbe43196809123499148a930321e7b2cc7809cf517fc4b2b0b49e57cde4b6aae620fe8cd0b38358685ab80061c1c126a1f3a96ab34fa957236cc6c59ed962b3bb006a1c122da796bf6bcf7dbeb64f4339c63d3a437b5898be19f6ce62024cf9b9c89964569f176fb697430e553a7c0936056183223fdab2f910047ad5e64098a44a2edbfd3007b0b5e4a5d1e6ecb44f137dae2dfc45e96f03e75c900f3f84e2653efded35a3c8b27e310dc361c0740524e52a1bbecce57d59c4913313e62bbb63c95a93512bf09228918bbf921cd5c62b8914b7142d6abf8d632c3ac44ebb6936c638d56cfaa7cee463838a921398acbbcb44bce621bfd81fab34a8ec33810eeb89fbc3cc469990089d2291e1e873b31398f2799b8d62d429b998422ed634bd7a6de8e991ba8492c001fc5df8b0014fda377cbc5ac74e40d50773ab5c2b4d08dfbf3cca590a77f4db0380fe7af822207aaf99c38676327ccd9aad50b2d4db5aedf74b1cdc50c484d455429352ef0aacedcd9792dc26c66081c28ecabc445b6f1f547a24403e18b0468c8881bdc3e82f7bcce254944271c3ba06c80555c8f3d2d051fb6007507eadf8fb991f45c0c9e9ff08838a425a96d72fc20d642c2eef45b4fa43e7b380d8b6648695c0b9440cc66665435ffd3df10fd786f7638e13706f6c5651dfe5f125158ff3d1da84cad23129e11d79d0f95548318b1c794990174daa895e4b984c175136185be534ed6bff9231c215fbf6bd297e24f528cda523d62b44aec15fdfb36281d804625db07567fdb06779325987f69f16f19df737d5f65d1abadfae70a1a4daba5a87e4ea3a09751ece2ec21dd24f719b1f57e795819689c8f2e83beff593735825a1ff8e4e4df9d031dd66120dcba07e6bfbf1b0946b3585a5eb807c1632a75353e8f7b8c4f8ff0af978afe2bec80d3b94917773564d7efd92a79cad26360b599be49bc657b132b25f459d58166110fa626cf1731be419105b4bd235176d60efa939fdd8dc213c695674bca27f161da4514f646f33557aca06189698f2953674ee73be89e3fc4c014877c6bec370ca1fe446686200a94ded3382c4f4bc58cdc12c354a486463959cb91c2ea0ae965f912364c5d98acd40ee312178b479b540875fb2a0164b7134564bf7fabf59add993b08a904452152031a784cbd36e19a47d4c9371e7774d3433fecb5d072d059b01ebd3279ceeba80b356e3628874008d801ed74717c70a93411603f1faa3924414665a95c475ac42de8d616de8be5c00fb90e5ad13079e54d1c7000905b62742ed70555ec406b49cd4aa6ea68342aa7763530b180e4f790475eefe1094426b7de9e0163a4990ea3494909c6c6de6b7462d70c8f2dca3152d81c93a8c184b0c54da7fb604f835df34506731774e6b8f2361586ccc17f35c8e21795ccb68a5cd73355c98a17c9ae35ed22f6c0a36c4da30af96ce7347375144a80dd851fda4971f20e9d6d18878d74803b577af4fa8f34c05b380acbc5282eb63f9345e4dc1f9f0cf8808a204ec789ed31ac9f009790d5c9b7d744ee3b29d911014c12b53ff691fce0ae5d53dfe1c7a367e694fcd2f688d46758ec308f3f9736701dd825153df883c0dc539c9dc3dc7dc9a9a35f453c306fc57faf76451bef45889e4ab0a4a6dbd377996c7cf80e0e7192234475d93f3f813197ea2d3fb112c2e97cceef2000000000000000000000000000000000000000000000003080b131920
+flags = ValidSignature,ManySteps
+
+# tcId = 24
+# signature that takes 4 iteration(s)
+msg = 0800000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 70094678fbb346b4b40e967be25e40f3fd6db4e03dbac8ee46c962c4e7f7c4d2f18a7b44df87b89e8d101bcc264c30d32ad4aa54e27bd70a4d7c4717653c19887afbf6f2359957c895ad477f7d9964e1e941092dc4fc8fddbb77157b31462a46e84f57906fea21df705a01c46b01f3212d91011e0798548ba8eccede6f4d9bbd16d787f5862b6e4dc3d7328511b199c32b609cf90599f90e156d2c00a97bae5b801d80479e612ec53fe59d0e5e6d7c2d2cd2a86f1b0d8caa3856bfb437ecb57ad2ba85d21020cd31cee7296909b19a45cd3303247e4e918db4bae21314366dfac729776c17b5852b000f9567018e7d052226b3b28fb5512bfba7c3da3d1cfb0c31c7cfebdbf5a4e5009ef76cb73316f6ab64570d84c39472f85a7f54918e9fb003a293c8d2787ac533b19832524e5956a96722db2d429aa69e15f3bcda7d887796647f913d5d4de4fcac8024c8da8223f62c973169cc21809943114b6766d3179a17c83e58a752468eff1d23f04f05d844d0ed40faa81bed6f1750d8f15ea24b69b403e12213c2291419d04555c15ce8c1645669f7c4f46f4d26ed4cdc4655b6d6c61c18739163c1f6290a5b535601f345e5a1564df056a9519a3125107b7a082a4c34dea36bc7c3d57af69b7bef90e5ee02426b96dc28c8300e1207b7df14c4209ecabac3142b57d059081da49cd4221c1fc4a159a34bcd95149b73d4a9d9d7f25014fc011ace2f814543922e93737ef968e8e20e8983d3793d733e24cda69c6c36436cfb658bd0d1cd7102686e33ea1626a61ff6662a8be36d0032fd6a2893f5386b471028044e5aa38ab71d3d8f43992f7eb196af9057aef710ae149dda63781d269c248a3c257dc21e30c7423d0bf7322e4f87780f284a92930842feb15c3e624d713a4cdfa5fbe9675cc9b1bd36707285ae31038d419643fa959839ebc93cd66ffaaa720ca4c3bb2b109dcc2dc890f19fde05966ad0d648a71e988ab142b6acf0426a19bced43dc0c83a38685ab5f255e00ee0f1d5a7a341df518d5bbd9ddd31aa6b38d129484ff2b93167123913ddf7e11f6b7be7115c07566c4821d12cfc3db5d24591f040608b7b06267048c944b1be8f67607883ac3c645a5746dc107afb8fb4c730929bc6c99b72b701c46602efc3be2dcf7a25c21467a6413778208e58485b3a7ecd688a97aa85f9ae2f0023d551a970c7714b7bd740ca173cf0f787ef7f961e9f97bfa5a59bee561fba83bc19d0945ce0b66883e5288e4099b4809124cea9426e81aaf1fff02d350a2e9876754ebbd6dda2faee542e768d859398db6ba8323bb4c16c0454020e97da1edc2be24ace53a0cdafde1bafb69e8ca06996c132a19ce88f7693391e2fd1e6483a193244f2faf9b1cfae1d511f34348dde860c585ca548bba32c13165cd3044209ce59d10e30a0bdaa68b8187e0fe6361c1ffae271c6ce3edb53e1f9cacbe9623ef5a6dc21ec7ce626b1863eab038bdd2c1290629ad90fb59de197b4f1cb1368a4ecb05bbd0b58f52fd8ee87591c3f4dc08c06ce8664e476043d4e85202a51996f9c0e5ae2c22ba95099fab8447ad3f71aa2aa95fbea73ea99780c8804037584739b3e1d7f9d63335c9eeb7d5a76244ef7afd8cda16c47faab70550ec39d800d51b1c8f85d366d016fc16c51357642d60d21e3f45eda3a7ed0815d7c585096725151d3a82fbfd90b8a609b6f52e0c18e328332cc0de273a5cd4ea3481913379aff1c03ec5de2026321d4bbc4fd13b1f5b4c5bce87a236fad1ed604809ea2378d9f3cea73c45923d9e4eae4e126792825b883f9d46046ad7787bde86b1745127812534955bb6ed28ebed29e65030babeada913b8b605a636f088d90b91d7166f5e914941d4185002b3aa6e38b312d384c24a4312a8cdf22846752a9bebb1655a3fb904b6c0f1224cb2a83887bf218f339d6d86faecf258afd847f73f5a3f80562e65a07a7c9ef1b43fd84b40b55b000e6c3d661e1fea1037e6b80f5478e744e6a6190226f7ba09e2b8bb89c8d720cf36b9c2bfd33dc34c22c1039ffb71e2f4275dc22c3488744c4b7bb7444e5443b211d3ca7f687e7db1023082483e5ca2eaf89a7eb89f993c194c806b331e905da74830bf8219e2ab6dd80620fedb6298c5a772597dc71a274589314632968c82d66a89e9433cdb6465aef8eeb33f0e738276daff510735089100bb9ea86711e5acb9272e7dcfb512ae2c3587f9e199e9a889566323a8e31ff6cc623307e49920ed9b863edcf54bbd740a7e93d2e8ed71ea0c321ade6ef7a068214f73ce8809b0816f4f2da5bc23890b768324f86a29552af095137854319ae2845ce820633457678072748f9dfc53c26c5e57bc1da00a635f2f7f1343b8adfb83bb3c54a78640441ee244b872d6c86699617e6d7cf71eb1cf0b8ca6bbcc89e3f36e0b64dd7b150604b3509974f65f1ad0adabe6dab7634dceaee4586f6628b2dae7f49663a9a25ed5bdc91b874f893d2fa54afdc6174da985fbca021315f10fb16ca6278521c490598c2e9593467b4af9ebeb822339e6feb7914c70ef2a127cf678c90692b1dccdf79c86df0014bd76aef174469bc904918c88d0acf32f5211dbc9ab007522ff85345d41e083ce7e79e14cf16dcb934fdffcf99c8026b546c2bc00fe356cae580623c74a00661d2a18c2364737e0683a1f1dbdb2e3be4a3de06424bfd54b820a30349d930ef2a4103d3586dff198044ca9e59bbe70481a3fcc955952d69b9d01c452990793cf3021f400d2ffc4a97fe248863219d16a457434f3056084306b8094cd11f97e48e6f2d45ae9b3b7047deb2e13c43fa0eb8fc710e82f29633a5d4f065986d66323884fe87cbc66c114026745889c62d254928257e68afe0e52e51e25f337360dd227dba3ccd54f1e99dd4c704c9bd126310e4c72160da70f176de957a340fd481f84c1fca83af372c9fc7f2555baef334614f02068a820cdf2b9b1b440d0b5337f4b4a380e6d95f423ebcebde2b455ff74811ab431b2550fcef6c6c671bae84c910611176e94f0b2815d55e7328804a1ba1b490b7f86020238114a063068decb8b3c4d6ae62f6ef6e8767b934d9cc817fe50470b9f0a6733ad446d12a115e28dbb8b610f01dfb1268625841efa796378fe64293fdcf859f38406dd11e247f41906cd6c6c9cb2afed460268f78b170edbef056fd2db36bb6937ed3bc52bf1fd098af62177ce44723b65ead8ad50df2c0fd89df098dc56cd51d5a74709c5cf1b7a09683817f0c12ef399e83f6a4e8a17126da998f0a224ec2f198ead30c543cf403615f38066e9417ec3f2b865464f8fb1b7ac8c3fc6251aaedf16807ad851b980ad9db62ac0e07d9b856bcf579305d9eb66859e460aa269f0ac69c9e88b014721c906a1f3bc8a1258e04683343f2256fc7c81ce17fcd93395c430cbebd6b0544c11de1eb426927f172a2f51aa78aeceb83aaeffb1b62b66a13b19c0035ba1c41604441fe22ba1bd8b8ea29547599b4e00996b2da1e937de02a58954cd77ab29c68ef2a03321fa2ab299a2018d625de8f65c1baed074ffe2577fa5b0a4005aaf284e7e3bb8d9fc365ae978fd528e0c427d43414b14ad6cc7a28fde2f71d1e7187a3362f89e2067b5839a71df40164c5d5059d9bff06535d317e331961f17bc5800455a96078be095e8ef8face39f58f62f0991ae3d97390da8c69b900cd47d749a75e7b7cfcfe1d4ab3b01eebe0f4a00ae2c7ebbd134e731075b83dd7eb726daa461b7dfb31d3e0f3f9cb15ead0771ec9193bcb899469100dfc378750dd811bd69b8acaf4c646414e5385b8737653eb9773dc9eacb89349e8cab56c3d0fdda5d646c82d2039fafc38b0aaaf77b93d86b7daa2016c0911ee6f46f1044c851176ead85e775ffa9330e904d28bdae0c4820b7a4ad0844765e05f5466d3ba1eb2381284c3ccf0de5c31744acae33720f05b38f7cb099262b94f4b025cda69bec27ed08c49b0e113f510d2c36a39bfb013654fc27f8802f414f9b894d4f9673a6bb03ea26b5d4959bd69c08aeb2eee3a28ecf78c61715751e43d5a5f6d8bc5ea7a70de3571d16ec9b5def79e3b3e0fd61e900d98bb0bcfea8e2c29651d9edd613693dba51b0eff6f8dbcc51b116244f1bf4a14c5ae484fbc5189533dfe011c7e8b75ac8287bccf269f98f2628ee419354b02bbdd9825b10eaeb0dd8d13423ecbab0425c98a1750f3c75738d27202ca4e9b9b760dfbb6fe86914b7cd3876800ea409b65c12dc01e2d81d6a2584332e63be08058566543b064bce5673b7dd9dc4f69c45acc7650291ddc87d4ae9e1723d51701f3fb3c11376019a53ab613b8b7138a83fc76cac853355a1b713f0621f8cdaab631da8a0941c58c0a934cfcaae84cffd95ff7e831cf38185734972942549b74d9c67beded7174e4c76d0ee55148443e785fb73955a582e9a94a14c621d6d6cca5b9f270a84b030202db41000965e0ad66f5175124f211064a2af0c36591f16734641c87af774708b7b7b8226320b34f488050fdae7555e0fffd1c124986ef03d2205b4b809514e5cacd34e7d0dc8727772fce98e0e975c64ec8258e22a94bd2d085a6c808c8fc421346fa7b5e91c8287df545b1b3589a9073877c2cdd70000000000000000000000000000000000000000000000000000070d1113171d
+flags = ValidSignature,ManySteps
+
+# tcId = 25
+# signature that takes 5 iteration(s)
+msg = 0500000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 604ef7c921fdb209de3a95ad6c032162ffe69ebf86638fb7e5a2a9eb3ba4b68fb7667f6b5555d000e4ba05a2eb6a4d324b04311e4ea01824c1d6cd160802ffa20196ff1b0f0c1789ede25d58bd01930986817524beee3d93b1fdcf85a3479c7086029d04a3ef378a8d4658310ccbb441ecf9a273a50a7d57d2a58087fa0c97c0b31b9abd8246b1e9d46e1dba106e5f1b5682fb9f8c8c7a8a170b4f12fb5b2ffc08514d7f68dc81d9005283abad65299a75421ade87ef90300d9faabf7b9a7ac3eee8abdf8269946b0d3fb4cc674d58ebfd99377bd39f63c54313995ff3ac36e8753637534b8f913311157a149db56217ef758b65afdc3bdd7d2aa59ebc42daf9aa027dc753f051db015a9d8b6793ebf50094dea5f38ca7c2824936f96981fe5c75032921b6817b81776e28d18485777cf6e96ce2a57a9663d30d804a2e07e188b77804eb54aca4ae43f3ba71a3a07264a1a1aaf6edffdbbe37783e11ae3ef0b3e8f5093c1c6566366e65c5bb6711d706cf64b1f579a44fb3a267cf962751d66d46c0208d1705d535debc5f969c519ce415731ff49f93543b56cd2689fd1f94c57b6268afc5135c3a92eb3856156b4918e79bb690b99898cf5a213d63fe0a1d5aa3512282215691baa6c6da5c952f9bfa3d11c4cdb1ebfcde709e5c3347fa6d990e9d2d805d63bda508ea9e3d4e0bf2f5055201936dcdc360900116309970ab4ee0e943248f021e2acfcd4d7f7696dbe33beb7b40d5deaf042ec6cfd50f45d65f94812870c71e3c2b61db121f634cf3fabed0e48f6fdb63e7087d2042a1bac7f2c296bbdd70078303f05a7974e188480d6cc1a777576597afa9429c3c3cfe549fc41887993f883e4d823ba74a79075dfe5a3a26d794768c27436ec5f619e3ad605cab8c894e2242201f4381d7ab1ea3fc346ae17e783e53c95ee2d9bed1942e5f3f9ba65277ac7a0658faadf48272c78a8c9e38d6f21be59b492f4e0c134d965dcedd49b0af638ba010f8e2df94484b97094f63bcf8660add7a05149fb2c2753d06bdc4196e2c18d7ecdf685358ecc03b3d67b496828881a8f00cb16667ee52a969ab67f6e2645da8345d86d5748119cf28401d369270c7aafdb3977de4ff328cb34147e1f37db7778aee3e08a93523cd5ce244c78acca1e2a7b1f6d72b76fc86e7457e9de61e473c605a305fdd5591c16efb499c5e5ba83831d202ac14222b802e8c9941522fb0029b43e9f1cbb6892994382230456e899d60655f9bb29fe10811098a0de73a4ff87da05d0edafc2fd7815fb1d87edc40316ad7ac11474b68b013430c4023924e021706752307788f0309f86548f9deae7736431e98ba50f3d66b3036111dcbd1f28a51c83b1582fe61eab90efdbc9800f2493973d1fcdcddaf29b191094c67cac62dba01ae2c82139e65c29d11b927a3ee0bc93bef952a77c6dcb94c081ae022bd2d70629d630c7db08b0318c915cf123416d6633405703bb670694b4932f716c67ea181f4aa56ddbc781094029837f335205bd4eba0d3fb0e852d4a80e98ea119ac6738af8bfed0bc83ec0cd4b01cb75e1fb73f790f265908bcaf0fc3f3ef3549c149688ba16fcd5033828b2ccd46e22316bcd91e821231111b9869ff2257e996dfb26e9ad93850d6b607a5a5d197bff5620fe753f5b494e21e44d8abd5bee41ae8c81f8f7d0fab317c347e7d00712552610431242870571ec6fe77c1df51f7f78c353ff85660b196ddbe065c6f361a9c05f380eb18b50fbe0a0daa33cbf70d03e9b399e9bf3414e4eeda59ff295a6c5aeb40b2b458e21f43701e625a93a8b047fb221cb3dbd83a86b03ed9de58acd816a58e0dd571edc95d145564fa86564f86aca2c61f49ea4a736984ad58fdb02c0c105843c2327ddc97822d66667b9188a6e371aa5e09110b6d72854d0903d432c51f13b4c61107a7a197602e56b8dd522985af2ca20af824be8d503006913f6537fbe4e288c684bc82144c6123e253e8989c59bbfc83f68a9a8ac0061f2d5d93c253d2ac9328dede266eb44b1f5f9a868ee5052fbb2476e11f9751bda60c8af5f1cfc6e8b9e1bf54ae2ccbdd676e3f5158d174974fb0abccc3b47c1ef353e12600a60005a8732d267e33b0a3ddf7d66e2494e6afa3c135615e4183b3f7be8006a5e2c3ba4f1d948d1b34a320113faf891d93824cd38dce7e0c795ad623877839964555768ab7aa776cb3ea18827a752ee3e7c6b025bfc48b8e8c99512578d2504a51fe29103d93eaf7728652dcf75caf53ec55ae9436a5d41995ea9febfa38c13299f22acea0f59d15cff0a88a4750ad68d2750fb8ac550459e2a954141c5b9382e2de8cb83926f2ce102d4846accde022c502247259918bf44caa8f43c93dafd89bcf727548a9a30e553ca37109d85a6923b42eef083007f258d57b1fce21dbc830618c37257119592b8e8aeda65a98f9cf6f7287a53a8a2c64435c212a1ee90f52ecb9381b56d67592395dd8af5325a09f643504adaee45be117dfb70d92a3ebd78da21529b3d0af76eb71b2f13dc3e2755be1df35dac40c0f9c1f37058c249c44f09a3a2602017e7110760654f7945d5bf653119e78455586a6405993ec923c28909eb7f398aa02f30c1c06b59be51b9fa7645bfdfca98e18793b6e09a89e9e76de835df9a0126cc6ce9973d2bd32029f62e7026df3a03e9fb4ff9ec1b3533eb43440a290df0216b6a78d13d40b094ebfd3797c85514c9f3e57f03d4499ad7e5b0d3f91febdea51738a9c0bedc86df1c80b90864e3710a6c3d328451f3275c04c9702861ff49824d87828bbd5c1e16a7ae950ee2896dff2b82de43a937e31e2de22d81448a682b70c7cc8a71493b08a95ea8a034fcc5cba59b5fb09fd1044b649b192c76a9621fc329baf425c34c30285adf948587bd2757d733a7ae82bb7c71404e9672a40ebd37acde5c0ceca7febf2166e599d8efc1080ea0e9b5efdb3c1a3b54fa24f10c4a706387b7381bf094265a07ad9c85f18cf00d92c66e9257515c131132250c007fe1a39ef05529243797a96370fc51d5db7322e447d834fbf7fa09d136fef12dcd31c3cd5ca35616d92342013f8bc4d895ad00a27a8e641084bd734f1617cbb0f243fa83230393487509c6041f8122c5b0cea200aed694ed603f104ab14b462c722476bf2a95126c9f6bd9242c5ca6a264572700850b33e415742a31cbb85adb1ae6e6380f059441b898d5bed3d64a9d146f3fdcafd788b9f65497d6f547c15b652bf70844848dfc003700c2645381e6070d314b7831b1e429a41754b0ad2fdd71348217f35711c56271a6d7bb4ed15a765d06ce3f970e4568f1ad60af3df6cc2e385fa55686d3633f3c82345bb0c3b539ca8ff2125fcff6bb5a4e3010e68515fa28bc1945a255ce12a391e0e4ec77ffb098cbbc2292696805e8c4c3978d3b4863a6cae10755d2fc016b2a9ec2ffd5c8d3c5ea9b36ee622040e189c2ce167fa90d07164d70dc5e5d3cd9db359dc5b94a4bc7d6619170fae9ec1a82996e0b75b6902ad473255f179edab1b3ad097ed71bcd873850d2e94223c903dce00557f616a48661ae937a402d2a8a5e1f1f6da8641dd423ffa54672bd9adde84ef8798ba5a8c79b56dc2e6ff694fcd63722be9c9146743bb68bf6a8e0d92376848f39f81bc4e061bb8cd63a6d7707985a95b699b37dcd5c0da66ca9b8c7912ab45c435034b3b629d3c898f7d979124707817548810f07658cc72e82af5ee86c28a89bf070a80d2050b251a0dfa75b567e7decc2fae12b50daaf26326f30ff072c1d509eb59c0e523669264966436d2d14bdf2538fcd58495d80c580d6e3343e9bec883033c7c32fcc693eb123383ce7eb2ee5d5b1b09ceaca617346754ff30fa9cbd3e716620bc5219a56111aa5dd6d0de5e3904bf22839b0239ed994dfc7e6fb6c2436a950d1b925fa975f57419ef7d9c3cdcf19cee53044d6db371d1c1c8d0c4eeee9e4b963d197265c42dcff55c5281a742d696292ba462e622429ec0b8dd3f6a8479f7a1fdadfc505d23de0777155fd53e4bba4e2433033c88ec9a8578d9896518db1d1dc30d23c5b82b5db14039cad18389b5dfb6015003ebeeba0e2313045ef1cceaced1bdf0e0721b8fe6a636f983186c7f3c559377e88ed149435bfb8af17e3cd1ee277b0305a1717a0964b0eee875756ae0967c04dfb051933c5fd706ea2ac35cad984553ec63ea554246a2aa10266100ec88619edbdc3cc72b14f2c8a12504336dce5fb00517ec36838a5ab856ce0929414d3962795e0a4ae7dc80031bf5fb732a092109eb3a119765d69f4648e0e690898608176f8233bc010654e01d12844291722a4f195f1cacfbaa5b4ab674cd96efe868c377c577eb25f81e44977c928780d49ec3e52694e2c9e8fc26a8cac64bc927a9cf0dd90f36c11685b172c10ad7d9cf9d0aa4ec26ed6d982c90d7e97123d9cd67cf17198e282934d0621702d22cef8846c2dd4b4c639410f3da93287f4c1929638d1d624be1ad01a8e5364853556ab837a274b61800a723b03373b3da771d0949875ebba692f0baa606d70046c841fa16f191702dfac9a48c8ef9915a0057234b5b6999a9f82b424d6b6ebcf9101c28495575c1cefbfe0517303e414c5b5d8ff70f30649fdeeb021e3d41476f93f300000000000000070e18222830
+flags = ValidSignature,ManySteps
+
+# tcId = 26
+# signature that takes 6 iteration(s)
+msg = 2c00000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 55248b18f7b86d8cc873c73d809b0453f5db7b7aa436797c77fa7cd51624c0a8d924808b8166aeeb2cb3c2a013d1529e21e6b8a4a7ed13caf47861f90399a17277953e2505fb1fd03b16b5d1e1e045f2e56f30520d3196c1e54ae84bffd80cb27b3f0d11ec93e3522d4d3f9b66859311d3b448412816745f34f4b07b8e593be1bc747f4eb8e8e20b9addccbc4db5fc155afd4409fd5c8e23399cc55bf67bf9c4614a44f1342aa58f462489764491233edb1bb8c4084fa605d39028e7ee7f8e44dece7f58a28d09665624fa0e0b5495a43b6a623bdcd0fdb6d0567d446dc6949cceaa15cad8f3f3e6ee63de3019f6f5df02bbd7ac5ea6024f4dfbcc7ec4fc9d618b2cbeee7d72cd5837d6263a1df0f6bed8708d66be35e474783d8f39cb08e130d300fcbf0767dbb4c6f8ab12dde570220f1abed2bbb029d80a927c51620d5679e6a4bcd2d34a4906ef8a0b5f7b87082a57b701879a557a989dcd255a2a845f2b7ceabbe05e853c6a36f8b3120b61821cf8e557a4a487e5065be0770ada01fdbc64a607e19b975b3f90835acb28a023955a713c6022a593208cce54a582329e0890ec4fde395d5eda4da6ae5f17578aa1552c84648d7663873a7093745b7550096d5da5b8aa25e9750984f74d6bab5fa9c751bd828f455a4784844cf8db1681b47b05e5f6c60364bc647196134133db8b2d672f290d37e238f562bdf52e35980e8d94910829ff7170bf403a29f210dc42e7ea1e2168c5d04429efd560ba9c11b21e9d8f081503b861e2fd1d832397bf069f699221199b395015b2e79808be26c9fbf6e18280c3796f29a1e0a4be5cc9901c6b31c84fc69abf3bafb07745ae08fd4362875832ee768c378c3e387dac8e06b7578d8752e3ab4ad161f8952354f1569288d9400f28603b0bd7e239ca2de916e2718653673236c1c3f172d67fd9faeca57ff3cddba66f0f589d297b49c311a75ece1daa7230316128f28985210fd2f1725ef5b976ad67dd436902c7fd6134870da02866ed96ec997554a684216ca9574264efd28810f59883f5f73df115024d56871fe24d68b142bf5906fdf3d3839660ba7d26aa6827f47a05c80f1a62254b6cdfeb55de694e723851a3c2ab89aec1e312c7647b1b66acea5ddb7ae62ca71c4bd5592381761fee9d85c38f2f42f54f947bb3d4ee340077fc86cbe19af332c96d67f8ab84a1f0b0f039f5e6b518c9f9eed9edf2a88dded19903a0b78e17353fc5e1485cc722dc9a0b12501374db57b4161a12852a45d160ce3a21a44a8e37cb8dbac3d3a2ae131fadcec0063ce5b777df45b67744609da238f53aff0ff8e1175fb11a22fab7fd016c41f8aa636aa2ab7c4508f445b01852a9944277309f7c77d1f64048dcda6206293f89f914152958c1ceb629d7991589edcf3e40cb7a75090cf48c55f1d16b98fe26b55d31dd860b31e077af05012c8d4a9084647741f6b0e667110e9cac2dd031c1e82deea92569bbc8454f586f415c08c18220428fd25fd0e06517cf89ce7673961396f992a0f395eac5e3ce1b81a77a78db440039ce36670644592d36d43e1f0338d8f54fbc5c97c5166d9914d4837e7d005269529072c6b34fb1e5e8ad177d8e92530395896584aa3b587cfaa74d4effe70578d64c8fb4e4920528ab0bd4bcbadf344a148c1ee0c77f28dc6e605f60093948733fe8caee60766678580ad00d685d932ab692e788f37a54342d0047457cb48efcfd994c47cc57cb4abe7aca0508f3c5551c51d448a111ca477c16a0018d1758599405ea49efa618a164d2220dd714ddf9832d1c7d1830d93e54ebfe9353d5a90f2a255ab1578199c3e379aa4e6acf2ea07aadfe7c8b2b59a7149feda9c35ea80db44225a081a489a9f2ca447e6a577d87fc46931e01e41b67485fa59951192ed7949913243922ae9d2178b24eef6c608113e8ca3972c705485b3008cdcd6fd7bd112c13ab780214c47ce1d7141f00a4c06c6c8f9ac508e01c345a940ae26d374667b1afe9c89fe5d7ead12a5011ab593de9b4f5bfc68498d2e3dc6d1cbc4b16f7c36c30e2f1b5243df73230f4b61ca4f9507c0c2092d7eccbd88d3129db25e76ced278445b7bc91680bcfa73c89c84623cb32e5d9ee335be23af54a54226b1e7a542e75d6cbf16faec7867cdecfebc5483b4b4bf50776f87495d0bf6c596e382c859020556670d70af2272f816b3881aadb663eb91ba95f31dc17ec606d64a55f44c12a54051bc7119fa3af23ccb55ecc9dd0875e8aea1da93e78c77096c9b81c24232a6f64aeb949e65f0527fa9f9d86d24ff1167525c5ef0ac2c6a1cdecbe5c98ecca4958d07c80a5f41b2a645fb78ff17828210ed843f3233913a021a7b5f187db60476fe139b89217a942da48201f3017d704a9e9590800241501fe6526f0e3e05af68c0a4936bf317375d39e19d502cdc938072403516844efffdac2a1758c2ad1ae29cf8578356e666b5f6b60e9198d847aa0c88a903759418bc0ac2eea77802b2a41c514bec3149bebe8fa0339176b8380e5b08fdbc390e726167ba15757842c4c9a8d1a8377811f9ca3906640bb38bd3156dc2676eaa49cf6a4cc90635da341be52dc7a7b3900ea89c697f450b6dfea351cf0b0673ac50c72d7b2ed3cb45b06b856a41c3603bb50dee0ebe272200c6e48a33639bc6369963909c6ac67ada94af7b03dade60927f35b97b27a5251e3819c71372bb6abe636966323f0abc04e26a699c46fd8eaae6f3b4b097cb40eebde51f6df2694f14b7178102ca2448e3389656442febe8ddd6d663710f63a8234fa6dfb6f3a9f9d0f69042b59b58066197ba83536f4aaaeb4d9959af819b40ab43e09e140e883037f5e896a5f747f0b70083c4c720f017a021a12746c72e231ec86d684a99fc85f8cb73dedf83d23f9aa6d27877666670481bdd97d428cc1eda80e4c08ef00353aa4c371c3f938c766da833a76929d9c78b34f540381909affad1cc12667e6a8dcf644b51e968512d80017b876790e58c464d222665502c2d1997f67805232d6e6af2b868a801a9e32404d30c02b1fd8ea671daa7e97ecaf72addcbdcbd2f6be3794ba20d938a8cf15db52ef323ca6b47b644dc93d82508249411b9aecb7ae10fde49fa1b209a2160581d62c10962ad419c2b82d553990b7583106d153a1ee63df2a283484c6a0ceb2cc71919d00990f7bb87df0e6c4274fffd98525bb325b495d860323ce49a2df510c2421904f4bd3afc9a45a9ba84ceec0b8de7f77f14ffca522b424778157bbf0ac8e873f05837daf02b9b158c7853a45f279dc5238d202403378b8ed8fd1c69ed29fa4e5eed31a2b803cf0480425bc7746bf39255810e57bbef7cef25686c0893271c57feffdfef6346552e269f661a6e396ee399ab69641e7ccdc87e1867fafe8a754d77c7c05e49196646b21b06bc955b4ab287a4fe3d0749fb65ac042408513a736e32c382f9c81a6381d03c7af37a54fd3406f278e4b4f58b98f3202d7340933af471c840c0379cb11a3afa691d6f50ce50c20b02623b45123b75e8c26b64a221b5c36f3758050870413efe61e0d8e7f7bf77424b3478240990f9333f0ccae39fd1d782ad05bcd1aa05b0b6d58fad5766d056a4587ebf5e848a8129e07bfeff86ff50547010d4378b9b1f565a67207be7571c8f330f03d5ee6edbe06510918d7e81aa916cd49184098c99959fcab3858e6bbf2ddd62571be3869bc1f3d7e559c657319198ba47885c7da9e350f26b4e25c17d27d55bfc7e6813b6c30cb1f8e59cebc5f044e5d41f59c46c317d7020c57e13cafb8931049caefdc3f296c0363af7f7a89ebe18c0602cc19e8dd4da1bd14f296066183e80c03c806255a5767639c1bfca3037cd7efae6da14cf00b33f64b1021fc0a690a48abf5c6a781560a86d7501f8d0d05aec20881d23efa9d43747e30b262a3c4e3da85283cf5cfd94cf4e485ea56ae0081bbee0a9f41a333ae2aaca92c7dec0a2df94f47587e59fa21f80624a16e6b449194d1279ae5ceea47ab02b465b8da93ff50389aae3de69f5fc8a0eee992ec43e08b55be7dc9684264665dcea7ed4055306a1776f531d2a386e2e839bcc4d6e47640927967dc5c2571ecb8153827c44dc0ea5a60399a4a285798893fc5e9ebf74dd4e42575316bebba6173065e6583bd69d7f9ad0b8b9c6930c1c4198c5407f06008c9d04b1002bfa3868a8f7ed20a1bcdb1bf75a80bfa5cfff2a29b23e3fa963c6d7618c772538d98355d82905a66722824ab3a2859370baa9ddaa4f4ed6e6676528275d993bac69f66b4efeb8806f65cf8491e61879f0dce6bea760e2b3351a24b0fd65857c5aa099954d42ee9975b7c32b831d97fa862fd8278450d8ca34bb65a23758acc6fb96a81a30f1f28f85af5ad8c7d5868ba908da53e8fd0da4eb182a3770b68e2d72576ac7002ff348bedb8eed91f96af6a6a46b99e5e639845b4962fd98cad0112d74a6fe57fabb250e42c136c34a199e1923d2fa1d1e16abf8ec661c4f3eebae21627ac62a8eab8ff872c769f4b8eba495cd16d73b7448cb0a205da2c5e78c85d53cd78bf841cdd8f94cf16666615314fa389de3a5b63a3c05b8b939dde0041496372758fbe006caf4c718690d8849ae5eb000000000000000000000000000000000000000000000000000004091114191d
+flags = ValidSignature,ManySteps
+
+# tcId = 27
+# signature that takes 7 iteration(s)
+msg = 1200000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 577e0d1047704e02b4ed8653dd7a36c7a469f50314399d9b1e07fdf02a5c8a6071c4f2df79688c1a6d32ae9182279c76311762aebfb94e9410d1a74ff0191784a9d311dc970ffe4b51834e9bd49bd21dbb47817df5991553b6072dc547048d58c7644217ed1671c993d60f9882359842b82f48c619f318ec138842e4049ca3f0592bb06b14ae50ecbcfbc2a6e7c806765d404bbc5db8afa7e4d37f3a8fdcfe9867cbf66d1a971540e04c80e4a2403a0c9e795cc457c0cf1cdd7897843eef8f7e1642b3a9b7f4687763423ed0acb11270fe0bf01c1fdb0077787c591d20f2deb39ba6aaf3f433c3639a6ec43e314d212eaf1cbd4598b0bfb0f4f778f86415ca66122949ce3f101c667eda97f8cf6fac74d92472ef5fda6ebc1383a6d04bbb41b0e89ff80d7f0439b19b1bc570d8e29729b4d1ceb12648ea7ce092ff3311d910bc3495597f40e191ccae4513da4f24d88d211473468de354f1f03be275da7da36bf18233404f9d6f401bc9835544b1307312372a88714435dae593839d8706d74157a81fe8b744fc6a59c1e05f49628f8d39e0585c1ff156ca8101a53d4e48ba22d99ac7aa3f5e84af66140e57dd068ba296a1850581f6156671bfbe983d17e0e16d89511791b5be7350283f1cd100b9bd3ce62b607d00f3ae4174e892b175934c7c885c5c6b2cd3c533fa82fa7256cbd0bf9b53d009196c49d87779b855be3e97b4ef3adf68f02bd3e19ddfd876b55f0565d5600780733bfa95d58754fe7155ac413d67e9d5b5819c66140c15eeb622c0c8c8e15e05c79ef3c030de87a94f5601640f3bfaac0c961d4dc03b9d313097d20b83d27fb9e1b028503a624db1fb862bcdf7996443173ea1dfe544f285c4a029b6eefc5ae70ae3869ee66d220b89f83cd5879d2002866ca765cddfc8e499bc926dfd08cf86888f957f57ad2273e9155aa00ac4b618620953afbecbb4ffc6e93e82b77dfe4f0c6bcbb4e2f849f3fdd70f9644d1d420cfa938ded26dea5fb0052319848456f611f64e5e9a890a0643ca9ab8bf96b0b89864197d75c85620dd76ffdc0525d8872815b92a8369af17dd5bc4fe9519a2903bd8c1e6f844cca5ca2e79fd08d2b66939ad1887e5a651968f93e804e72dfcd6b244a66332e8358c7a39b337c001708dcd088c02c8152816d3ffdbdb323e4c8909e1b1a7fbe3e2dd87c8a985ad008e54153ee21590ae89459bbde19eedf5a23e019cdebad0f9448a72e12533616b76803dc59bef6a5e32e25caaf4034b6e3340398e95a797a484cdbf1433041522cbec6eac497d437a8374e2954c35e7ef105b45f92418b674694180e3abc3903f9a865bf24138ed0f7b5c81a8e49a39f11f3f81109a4fc9b1ddb6dc0d3f9697c4ad3d178b02373a46669fc8b6c7fdfa07e0beebb47b5043bab910190c1b5680a5e49ff786ffe7e0aa243b58c5fec92c148fb48432d20c76c88ac3b4592059eb414e2bb9d50c8db83f8003542a1a58826dd0d91fca351067c13917f817e32a438c02de1d51c3e2817c280f370a96a9145863a7ac1b6a1ed1ab640ae1acd2c72a05928b30ca51276ab0d3858e6e5638f061219af3fc0795a54d7d81c368898314498a6b279ba111c3a79514918adc6675b279a5571a3c7a9b9d79d725e852c2204490230a0270f00e758bd685885518bb15a456ed6344786dbd5c4009f94f04206e87b51d092aed1aee3473f8211a3ba22a5ac092a53831f37f4d15bf0937b9db11336018030469aa296807e6a5ec829c8b3fb741cbf0207692fe30b1530d545a56a48fdb5b3f72a8f158dcfd4808e30ea8fd7e2d6a19669ca7de2d50015c586dc17a37e6835685e691e516e517be2021a81d42f0330e29e8114fd729dc1aacef69e006f87ad74b0944eeba1687a2288607a3ac930c106049bc7a9435d548fc275b1474299c7bcc212a41d9847caf8def2ee7293986c42af986c0cd28ea70e56993876aeb3ad7900e84daf267adaaf5e9df3877aa1267cc99c7c6ddef01867a17019cc013ca1a921a319f1172500ac75cb8a200df0e38c1cce4054f2b0fbc98f76d4c7b61d6ef3a54ac0c42eb2c9ed53426dc2fd289e71f0532a026936629b6eb8657241b77b94d6ae11c54a9bf5c7ed7772e7581ed16607bc090c05269052fbfcd3653a9cc4fe8d0fc0692dbc497344bc73a3e9044a79d7dee977168d1c1e462b03da281e4124deb377be97b286ad5a1e1ca93529676c25c7601fafbc3cad171ba3265690d6ce37b760d053a0e5adfafa070becc84b59c39d401a4b3b84b80c55a9260ae2bb510230c8ac81433f466757affe6c55d6b52c367c37eaf0bbe5134a7ca5f1aafb745fa9025ed419e9360d1649bdf87696033742cdf7a6804cf88ce19c7d0f33482c83e65aedcf0e3da55b395198579a02847899e5778fd5369a88d04eacc1de1ed23028c4de2cbe5121a6c65cf648550ab340dff5b49e51e9543d6711ca1c3d26a744d1949edf649b81b7fffcd663de4532ddd1e7c2837d6b30995029eca9b30c8e2a00dca5a44fd603430daadadae3d4ffa83fbb4c97a373993adc8216638f0203eac09be5ad7f222738907a1c2b793b419c317bc0312723c0e8371cfcec8a13065df31978751df34ff3eccfb5b37315fb66a506083e5813295373c048b182dca86876528209d157a44a739cc9cb99e076d82f51885ead7933100d030a3a7745cf81cc36639e50be9e067b09a2b0015a7b86446256fbc977ba87ef6ee700528e751d5f346d6c24308403107aa05a95cce61c1e3894a1dfd97cbba4f3a130dd491368787593cf353d3eeffa56640a3451cb9eb207c19de0edd3fa886db645e260618326095e8ea93a1092183de833b66cd0379b94ef4a1cdf87581167db387e0ac24b750c47e02c98adda5a834b9b00e88d9a981aa98bb30cd8982afa2cbd7117236e03a23cf13f6ab2f67dcbd580a1171deef889889daaf156e281eb5a3be2ac914841f2c7907228971981ee9567e18748c03ebfe9d4fa67dc2ddaf865e1abe1182ff33601b97c44706a948f2c0bafa57f3ce3819005b5e397eddc9022bbfef2f65f9f29d86add3577a6fd117139a9ffa190b725d60aecc19370343a82f1f0f584896aea7d57fc092b74c0769c94242605b521e1f6a4cd2fbcccbb4a80745d3f431e1a12beb8af87145b9eb4b0ffd9a863e27b18b07fac43bd686bbf08d040c201ca574baf00daafec8f92c8a37e43f3bdc7ea514f2e0367a29642e2e89947a39c479c4ea940fc3771fd57c37f96e759f333f24c3eb1a67e6b202b459107042de9a1b789f9e9e8013cc3f2a89975fbe6c1514ba2572ed81629e0b418d8011659ed339bb37f0909ba8993475a4558027613efa516e575336d735716ceb77dc54678337a9e1d70b87ac85a3b6676447de69d6bae2a0e19048b70e0af8b767165353c1320612671f17430a5233e2fd95237889e4f11e5fa8ef905fbfdbd09db873acd82420e6a5d0bdd6611e5caa0183841804e19da3cec5a21bb75b91a01a47d7ef749af0fdf3b224a2f0d6abef86f850d16a9d7e0df467f28965c485156fe46e611f311bf59ed3f5d690ba6572228893e95e9e370f022b2daa966b31f41005e184e758b9ca396a23f01adf0838f9987433c87f9b0a98b5c208cbb57f66014f66bdbe793922333ea1aed91419f10a90d5f18f983027b901e5f70bbaabfcabebb53ca657c93b0899950b1dc2c02f5f6ec3fe58a4ae5816013bd7b15111b10779b13dbee751427673aa97e00eb9175dd2bab020e1ac9c9dab87806ac164a5d8f86217a15d4e75d13fccaeccc0798fab7551bb9ad89b2c804ba49606ac08adaed603422726a9c7b4c5a30bbda9d46004adb1baf11c4aee456bfb369390e82d504d0c300b18608da25086bbbeeea9baf586182246e6dfd6f15e2f199887756f6a914ba6cdbbf5fd5029f67212c406f1b5b88c36cdeaa982149f787e273e32be8f713535afeb960e302b129521ed3bf2d0a911908e7471527e7a177748149ac35e20e4d4ecdd95c356d84143e4cb6e627a1bac0cd813c00985913a148806bf00bc1da3b6d123da765a2863cb07b208125d640afa03dc3f2025461d228665da2590e3cf692163c5061c811f1f1608614d9ae6301794d9b35dcf0ca31ce7f475b085f14c6edd944cb343c08e5af9e9680f2e20656556cd60c2b4b3b10a66e71d0eefa893a88b7d3e789935173c39d4a5d6918f3b41187001b5cbef0cc6fc2b75b2cbf7b4581d97ab046f1d926fbc9a900e19a5bfea2989d3a63744443637de57a27269036ab9f35205a6577191f2efe1c01caef6f26c697fe06e7fafc6cd7fa533a76cc3ba9a2ba2b07bb2ae7cde729eea9b5460fcc9dbe9e1ed7d024668adb632321b2a649c2b285a19e2c5b1f18102be86f3181c0264d262cc55b2f2d60ccadb6329f19303a012ce1693a474d651a14148a0179855cbf57d149aea3165adb2bc54a53452f4faaa758e7961c80ba00dae2f3bbd08ef95901f4747d6b36561bcbae89364d090ad6fa9fc37287b5c901bf19504bba36f0a814634673918b1141b49578bddffe2b30331db1fcefe1bbca0ae41ce4f1e1cbef7daaa22929300404974c4db0b132f5dd4176eadb0d02e35555c5e5f6282afd1fa494f6c82adb3bad3e5f4fd09222a62bbecf700000000000000000000060b101b262d
+flags = ValidSignature,ManySteps
+
+# tcId = 28
+# signature that takes 8 iteration(s)
+msg = 0900000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = ae6b9da548f432f42eb2f2d6fa196c10500fd99674009ec015f6c5b2e5fa39218f361eac40652d671454bca3ad7e179fe8e44aee00e1731df3d0557e2f6b96ea805a7713d82fdd1ca369c868c10654dc0b38916a1559517334ca20021489c6bffd9942aea8c7ea9354e42d2343c6700422c97b882299909dc15f653e6d69c44bedaa068c129f0743b6dba58e0df1e30c4db0df591f75bef4fa209cd3b12b48a7e3cdee1e7e4c54f719ef10611aa4d2a668fa6f9004252eb8623f309069d73b46198ead952e30b5d2971f57d7c983a098d9f7a25c8117e2601d57cbaf36d0434ea72a11c2214c170e0e0db7431490ed801f850002b2f959eafe961971d8992e4f306745c2b7fd7b12f73ccf6757eab25b87e39b0a2ead28e3ff3096c706305d880df78ee77cbae24791796c05b537531e64e69eb71be60bf60d88c076cf0cb19a6858d435fc333d962a668a979b31a8c96036b516911290d7ec16b6f6fff2dce67fd4ae815e658ebc39b2a35666a7d1fb2444c905bfa913bd77146ccdd33adea9bb35ad871b8c97b9c2a836721f967e62382bd0c62073fe60b2d3eba75734ef612917b1f7ab0cbd34843fb01029b1b0c499e808095a90887a2612411d6cc8f85020f3b903d1231f5ad3cd251d6925c3bb87904186fae16c0421144eb98cbf30403ec02f38199a62c41f175d19eea8e3cd6c25897e773005d5bf931b45e2494c7553903bd64f4bbb316a11fba9a3d2ecb3f8fb6dc28a07241ae8a4c755496a494d6b0b9d4205e35a46e028b72c7af11d6190b23a2c70404624fdac2302c509974520bdfde087f3649a241967c9afcc16970af251b5ab3046cf217312ff0ad54f6f23ba940840a340498a257dbec3ffa44532057fc2e4e12a36dfd88e7ec42a3885a6684568af0b8e821b17abe98f069b27dcc045e8fc2403cf1e764d1adc4aad6547139d107f8b77d89f1aaa2d3be24cf480c9e03019c151c173015cb1db490850fae6be852af08df73ae2b98f763444d28408469ef1104f7816257a27a7cf78708dc1e310bc0f7cde56ba7f32def255064fe81e9d78490ec9479b9acf7328678ca8aa3a8008902a9fbc954d8c1ce50aecc797943d3b1ac681548144cbbad4805773408f2c2455f041e68ef7ed757b504981a38610f678464075e662a156c058e58a6c9fca1c5c352dadaa66041bf074036bc3258df98794dcdc64248a4af53cab90d7873b1bfa2dedaf6eed93a594ead4ef4a1f4e843bfff325aa756942b2851a9a526f812158c591f041a8c5240d19603bff6afb53fe8d6d17a69b5f0752e2e7350cda72baf17d77fd96e1a6c5376c358f61cfe5f484bc401aad80a44a8082305bec47fe643f782cdad0f8c1b46b9e0243a66498942ea5cb749ddac0f14c13dd03cfafa9840cea8f012f68c5787e7a48fafbc8c670a564341dee0331387e3efb7864a56b3982012da04abc3348e46eacc521dc9ec86c6a737421d5e7cdaf957137a427efba3a0837cbfd17919c93108ad6ea479a7b41a294e4ceb8b68585ee6bccdf500a504867094a4a40b20d254ac12ebdc0f9952b20d582dc737c5f7435b6de29c5bb73da4b55ebbfe1bb7e0a4aee4c1af9d1781013e082484665964eb913f2fb8c547096e8a7a0cb6b8600530c4824c0b7b61ce65f1f4c04905aeffd6ef705859b19ffa28e88c65d1080c61e6f14f769900bcc66ead17e7f8a6bbb494efd4141f7e158a5f6924646ff7019ff67c0ed0e178e9dd47f53c6585887afec69c41fb40a23713d889141a0ff48e84778b1e6f1112be5c80a6272d77f514af6bc9dd47bc6d85f0d7cc166c20c2b8255c2fb63c4a9a303396592cf43a8de7aba3ec7a0e45470410d8bcd2a01016a326617bbff7e110b18129a56900515a8d54224467773a7a731f28e9bf5a4bbe640ca5aa012f1b4ab22fe14f121f3a486505d01e27b19a87801efa6fed57a636880dafc40a820c73ea49c2870f34bed3b504c2f61d1a61d073957dc0dbd97b2c68dab42d9e48bfe559643776004d2fe5f7c0c7e7e843628ffb368dbc65d7579a826932bddba17db9de0f3e573916f2e80bfe65f1be24aa0370aa1fb9b84a140c3d6f62fe116a88528aad07d190fdafefa49b10c4bad1ecdd2e6168310c346e0143f57099cc9ac8159e003e95158cef5a518195e8e53682e09bbf1d259dced3aeb19b3ed9089be1bf50ff25080cb7be32e64ea027a54ba01811b9fdad60afedbb7423a2d958b90f1a568c413e50284cba2ed180d3df64a13f210a824dd309871843ba5a5df8dc016092a716bcaa39e59c74961bafcad934fbfa1ac73d8e876afb160c98f7ddd27139b5cd3493cd18e08290e7869e203e7e3c5e2a077219dacb8838d3be44fcde42ea5a3e4f21037f1f0f66ad8b526d723c31b037c4c660171cbac2aafefba2afb0cf667bab8936a9453e6221c71956ec22cd70ad54226be512911597add00b3847347505e4e7a412854463444cb66f71eb359d4258c2fd33c5532e4fff22ede008ab72fee788e4bc10c4dbe9dc3172d6406f6b829903d6268206fd0b10bffdbe1fd62895790dc2f0bbe10ccf084605e3d19d4a86b4b64bfe62d3e7a1f43afcfbbaa5ba55348661d4c416c7219be1de32d038db26b8cd1e947fcde7e3a819e89891df896490996cbf958dbd4bbc5b82bb07ed2b83c96a87348fce5ac03f5e4ffb987c02675a80465ba54add3ae26f67da4a53ee326499a44031defa232cb152a40450ebf9fd2fe39f6c18b27142045bf53e844535339b0ee3e1602e499bc4731e8e536eee46d7565be292d2cac2586c2ac0e139ec733f2b240fdc69dddee8054fd0eebaf8df2d9d36f15179c0d05cc309142ab8d30a75a613053a21c5a4d9e1dbfc7ac0ca37168b999646711a61e29327ef73f462be930228f97e563e6b1db0ad480d3d73f0492131f2dbd94a5b3fbb9d2194adfc1a396e60bc2d27b51289d491428219eecc092f56250debbca32182a31fc7ea67163c9ab89191505be15f3abf1fb397ba6e540cdfb3661693b6eb76b4da66e7d9f887d7b415ed946df1b593e0523b41f20cb1edaafeb53d733ef11e0cc0e2eea5a8d4497c82f1c5a3bfa39e0e9d49b3acf3915fa69e4b9ef7b69a7f0825131e6587d335ca66c23d4e54db4075d61ad0e6171711b94e1b647e62a8b9c63c089b0c2f3bd9addf550df187a1b9d7f122278c697b91091d0bbd8da14d3ce2627e5076556cc54d3084c447aacc82f2f667f96ffcb41fc11f5306d2e096825f257f86d55289cde430b07afcf2f8b8123489ef36e58beb4bb7af07da8bfe6dc9c2bfd0a2855848dd46b70244b7d2023fed10a332ffbfe1402ed48e30ea1b3f45ec88d09473ece65064b4e15e62ef959745ebff674e9ea0f337518814d3e9d7aa1c240677dab91b9c0e41e40cdaa5531799f3d240b7dbe702b84e88688bffc56bcd55c6d3d4f936ebdca448add1c8c84c54cbc7412fe201d76294711cd5349007b027fc52d91acf51359dc68e30bf80162450b2e2334dbfc653636ae67070ae6cb23a8fbdbe8f5df9d5d88cae4d515ae6997b22d2ee3eddf2c7ded6ba7ee30ecebbbf8cea56f0ace385b3b4b533f99cfd7f2930783557629bbbcf03f54b5685ef612f4c15f9cfbc3105355214632718898c829133fe2d69ae468cae0a6215d531f4cc801fffd416ab86c4823c8220059bbdccbb945aa7edb32d8627f1f94299e36448a30e0aedad92bef31c17767783b16c818e2d005621b2a551591249ba28005137d81bdcd637dd98169bb6a849ca57a439e726f5ff61001c949c73b5b2b76c1789e59c64c739a6b10ab7fd3af7be25c45d194dd5a961911dd628ab447999b84863b98f53d6b06733c2144549af2e28d1dffab2c147785eda415caf4e9aceac3a018a97f45c2bdfdf84930ea0ed5e5b5e55e328cb44217d89dc5b8592e9f82d2e9eaa43349bd1b82548efb44adb3cf8992de1ddb0389bd7074b0696ac25828dbe1eaa0a1e46e60dfb6b92db42429c01d7f7829e2732cc0136503d4bea76fb98554e17aea5fdc346c7d457ea65f128ca37846e8fb72de28a05079ae802ecf48195840e2a7aa935d817f0bc8d38c4c283f25f3d8b4a92eb7d48ea676cc5109b5cbd651e047ce44238171be96141fd30968e4d71e3ffe7299ae7ec87192ba819d27ff91781ce58835881c941daf943d675d486f6353e7b067becf2ea8d71d08b2aededd6f1045975c74f8840dedb352255fea9f9220b31b1f677a4f7ca415bfcaf3451b49fc7f3c57267119b36ff60e618a70423808f87c7ba2e511b4bdf37ea80c4024aee17953165127a16e88d1f745db529a048175497421716bda17f4af5f28be9d0a5932628aa6ea433202d6dfcb49941d9108ea1b2cd0b4f5d274f35d52bb44a8703651e0f0cecfc7fe933fa5e0dfde92cfadd2c4e7766fbd3a9f214bbaabe2a27c1ddd16e563b9d7539d7c793d00a52e2aa1ada1be432d41defdf6cb4cd4393266dd3211309f37dee5f31430dda1e9346217d94bab66b41f44a93cbd7bd10c94906fc95a1f533f03db5b4b241c7c388f6fc2cb1d455bb5f46017e07468fa7ccf48e1a6763e8d8330528439501419214353676a96a4d405424892c8cc19346f71ecf1fb0d2a2b348395abcf044d64666989b5fd03233978cef4f80000000000000000000a10171f272e
+flags = ValidSignature,ManySteps
+
+# tcId = 29
+# signature that takes 9 iteration(s)
+msg = 0a00000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = bc143b5f4bf58441c91faf8a0f173603ffbebdf13ad89694b29fd3b6818b273e3f54ea9cd7dba3d4510ae2c8f14d843348820d2de5708d79984d05f5496af374477027560edb4795d84b2fed1495d55a1d1f42de240136a7596889a5c03a19a7659f39f9dfd9cfb86fc6e96182b262a94b315a627634ce2fa57f3c1c609bd5bbe27b735e13e133e14acdd1e177ba97bc48873a11ad3f5c49c7a7fe1af5fa10e5dc50c89c387a8982fcf562b2f36af26d05e05680f039d422ef9aa86a5a1193ce24bb88b4b7fcd12440873867fb572cc160008902f9163a4c238396ff943c99505a7b73ceef7fce692be774a3bb5e04dc82df86ea15854f526a2619ab59117d5faba3a2c4acaf2d2d8dc1c5a13affc788e561b1b0923ae96b139e4b3bb55e134f6c2d0a5f8f25fd37ce52ded270d318808c6df359185dcf554a7cd8e1b6afca029c5611f314dfea7e008b1640bc57fbe4a0f69aadb51bbc52a94eb20a7e494db577c04c33c570afe493b52ac0d49702256bf1d948b23e0fa01728a0d7699ce65a2ec8f51c94a452a10f2033b5d6de6184e3fdd07df3fba52836ced06955660ebce4906674ae4dcb5d32f33e87e5889bef909126ff24a9b4b7d51455c19424591c1ebd20f608022236f42d06e90d4cc5e98819fb93fc1b53b8f0f374013271b59ad216bee3101e217a15a58b2f59ca2fdf72dd039c76b5995226a198904ba1fdcfe2685074c07aa60748564cea870bc16f13afc6ae17363b625d0d5b95316a0cd3c4b5d9a5578e57f240c6f8e38ce0de11393c7a2f86b35e50fc19933967b7f51c066b98e88235d459c54d4d1a28d7d194964ce1449081affed934c99854f7092e8c7a6b5b6987d50c1e2dfc4c8b69532b9322c7094c56776ef509030539ed74e991db7fb14b5f676aa7306a0e67d38ad8639971471b578b3b40f35b4ed6d4996de86cd634b1f63948c1a68f056516984e417ea2e1815428a14bd153424445d1f32567a0432fb06a33ac65b861c89aa2f2b79fd911c2a79887465f3ee2220620bffe347bd21d57a25f9e6c97fc7f00c4570a26a9f013624af4d3e24e34d42dbe0fa6c8ab7a85cd735489dab9ac23a1e5fedb11f4c5a98646841bef52f894ba45245442febfd60a66af764efdc16925cdf6449543b49bfe34d3d5dd51fa242e9dbd7ce9082169e56217bb8501947c0d8a4b41f12a56ea30a071d2c6cd358ef952b4f18f417f324331c500e7c056a2d47d0e4dec4e892a0b3b3773bf74ef9769e7d42815af6499a7263719da39a88fd74348af4f53385d76ff0caa71c84d5561b9eecb27e74cd20c46104fe2fd0f86fea87f83ed0213c350d0e16c4e6d8c973c0ff0918e14ca27b97b19a3ca0767f0c213613febbccbca507b0a17b2bd2f042b8509f6c8c38c38842c6dd61cc5cb6772b23307cc4c400f4a43d9c644f448d85abd0b2740c0127002c6da081067d29bcfc1ce1aef5a7e375331b5b9c9ccb8ce74c179ffbb3476b102bcea3e33f947bff12f5c1d1f95df11e5c06f123f23083b7ea655d135b804540ba7a12cf4f23a0c28743289c37b6684b5d357f7a0871ba5f10047309cc4dbea769da1dd0c24db4f68de2c811aa3e2b0c36013daf6b801ded4aac4d83572f4e28f3e360b1e4da0ce26cb98e79981231d2ab7b3eaec655c3cc5e746e7d89b7790ac7aa29404d004a8bee6e758ca9759d272ef565878bdce47c3fe89060450525f5914778553f277227c3bd6f970107ce3b03d12821d09bc7850305446d42665244e3121407f8193ea379c322e0e3ccda4f8c24a1a8cba43c25f27fcbedf24c62afce4e143fd76802cf1bec1e2411c740a111498e2e999a54149509ba83b3d3703e576aad701257df6b969e57c58e4c8ae0e5af4ffd347454a0d101ef50146e565f6fec8e4309225c2ee39c4e0e29027eea6f5cde089a56067262bb297880aea34423fcc1ba816b06ee2bf9bd4732691b80dfdacb015bf005a7a74a486b6cf19d5dea2c2621ddd19bd834dfddd97af99002ea1dff190471a6675b61454408795af44266f438d4f94ef8ca8331755fd9ff4a5dcd03e88661b2033ba3e615edb7b061cb6a2196bf41cbfd4061a2580b5df7a4064ed173810e0d35181b5c324476fd99275d2b9384ee0d40c1cd399c2078ce1f5b622b67ab424da06f5e746b1e8cf7ae8b90244b0dd637de6799cc35910b97dd03ba01521dd9a29cb998803fddb4c680308597095f202631323e00fb85fd939494ad59e34077f1af3caf085ac82043de604c9fdf851bfd162ac152e70f1dc5749a6d8ac0f55880117218a8e09e3bd6e2e2c050fadc9352305ea51d9e6cc073cceab1c2369f0279449564bcdd7fd686c57a2123bea9735d89ba4b25614a20609f6bfee14fd03786fa0930b04e7567dbfb51c408842f82e658064a1253027afea7d4d825d1ad60caf8596c641a3cec52874eef424e63e107863abafbd0500fa0e620dc6fd397d42c541536dece5936a556feb4b8563747008496e4a9d5bb1267533c0b9ef60737ba9d4a0f6e7b2016a57311ae854e55b144412f085c647d747e631acaffdf97410c693d089fdf227ab8ae0318636235f189278e0823eb68db6801ac6c606fea32905d000ef30b1489d6f4d0124d10b97b12f4db0726b7374f8a5951cae97cbe1e30209032b9cadac407cb474fdecd6fbab06b5da028e04e0dd77172239f41ce56a3876d4c56bfb5f8ccf5d819302151187674ef477eea1451a6e4d09371358995c552b467bb216e88ecf78c78c6a3ff4c455c7689c3784d4fdd50ae4250110e39ceb0c2a04e04a3abc1a2ae95ad9011bf2364443ec7773a596970b16d7514a0a7c27bbb0f2436bcf27202ef21543ab1eb1314fef197ee50b4bacc3d8f64bb9a32936e20e0c0826d1af1500c11e704d951824fa0a0d44caf8055f5bf06e8e0ef2f0617875b2d44a3fba8006aaaec6abea7f626f90b5fcd1e44bc2401e0a486a8b6c2f96d76117e70186dfdcc10a677de2888758c6af53bda8912374bfa25bb48bc8d8281970b38bbe2c536f39874347c91b3193531c456974e02393d35dd57596f540ed9ebefc87af562cdf653eb41dc5ca999ae1cf0ad9a2ee47c9f641b68fc56e289844f5f17dc94e3acf4987b33bfd36b1844c43fd2f0fe91de2283dbbd0dfc1ed98cc8445c768a1c25835b9d6ced33d5defb877a7592a7182dd29f5275b0ae7de9954fc000daab005d3289c1d183840cac1832b0a13b4dd5e3f0ec39ef60842fee868e44b946809f8a1879c5a6ce3820b1a71aa6fe12fd19a79376c5246878b000b89aa0b010b449a080a901a24fb8ca8a92c5c2d9d52bc27c56505202f7e7964c04fb22bd6a8812c2bb759ca10f52402233ca15329bd9ea9ec76129f884355bb677470155d3a866727ab923316f271724ccacc23328a07b327835cdba5699f6dd4e29d80d45efc6708f8b7b17d20dab0c0c074e595a1c2565cb98a47c589ad761ab30d4b46c97a1a4d52855f8bfdb2fa59b63778c7b6676c0ef5acacb7155a1362dd2ab49caf6d95b676529da71b2bf6601e7fbadabeeb5827f782fcc80f8325142eb172660d2e5854c21876f1c40d93042b1b2b6e0e5cf2ccdb6f2cd7264ed7c106fdbe63fdd2d130dc242f1e71f5f9b7647dc2feaaa6162b6fe0cb3825136ffaad90b67bb67d2917e657bb8a623a5f550270072d95219ace90168bebecffd3733402fad12f31fc9894ac6bcb51ce94bb88ecbd5b66bb8ed88d2260523e21e4f6fd20d8db7df6c2604e0a659503426ec9b167a884f277a9860481afbecb69b2c8ade9c270d5f6d064b4e6c95e63d6a20e06f59ef800d07261906ea6541e77af7128f4fb3e6ec5932a46b1d1e0580d68896d256f29baa055ed91bd177cf1b1ae2f386382ad95c1da7d7949d398b6ded44859b9b4af1a117ca76cda1399a1def5085111d69fedea3fda8947c0ea3fa744755123418f127fb2bf57eb04e9480b1e20bbf9a091cd9830ef6aa6589df921d498a149096b1637ae5222c9481a826f34d5c5e66dcc2a977fbf141814c274fb2c07b6abbb973456354ed4de863c3a74dc1ea7007890129a9ee6ac41c026bbe9faea3ae9b1f1bc38fec4924b805143c0734776eded25925ab85aa943d628f17d5c4cf37e41197d1dacfcc1114eeedfa449fedd5749de33cf83add605c9d0bd3e32ebec64102b706961a40ebd9381128bb2b430748b5b62640a065cc0874d0092a4660bf00978b563257aaa4fd9e210549b5262510e695f5987369588eec3f6d0ee034a68ecb25eac0f0d9764fe27819d4039af013727252808a6c2507e2da48403efdc9fb1b27ab8b1de11a4b372b2311a939f3f08b16c77bdf15f3ec5a4a916a179ea7f64b94ab37bba8b8ad8cdd03b3a4e929f832dc0ddae5ec0bda1975ffa2f5d89c060b77c88ae263c3e5d0a157c3b2102275612cbe3d26a0917b525fcb759b958d3682550da4d9cb46d8787215d374c126db9da46bca02cc4742bc5ad984718477678b3c1201afd2c94245fb4a591593f38caa53b476c9af0784e999a50e62954fd2fb6bf5536c74a7a9877d9e20598977c9d400ad84cba1899f706d65666060f991f3483a2cbf8fd1294a7b5c7dfee0338414b7c7d8f969bb4ccdee8f205172e30c83249787ceb2030375b7588d1f0fd0000000000000000070e1c21262f
+flags = ValidSignature,ManySteps
+
+# tcId = 30
+# signature that takes 10 iteration(s)
+msg = 0b00000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = d54fc0ae94872d53a8ec295b549a9754c675028a84f54c25695a3acb715e1a3d8ba9778b3ddaad25b8c487d21fdc62b879f43dd429dac7f5c303a485d0cbbe1e9f65e53ca8f722cad42c27392f63cda0cf5569930deb75d02bbdd3f971f6a9ec96aaeaee32be48c9fdb4969667744489b349bf480ea1249cd516ade4d4b581e3c41103b5267ba72b8dfdba0e4621a93edc18b37fedc35878d6f2bd2d0115cd5c2e243ba4aa02b95ffe6d3ef1f12801ff1ec09115d4255e202d957d0b8666b60dc8767b11f11b311d9d1f0c99f67167025ac9a0ed6c77c319a5d261ca5416699bb51c961d3a077c51949091e6cf0d4cd261224b6a88158d78a45730b6a86b4ca31380540d3d04228cd51c00a6671fc0036b657f3b52bea56ab503adbf4fad1e452bd3b1b29f27ba1e24d6f302ea788a7e59435ede2de69ab30e356dbf17bbbfe176c2182f870ad9a8a819f5b85587d229beb13fc6d4034722b72de83c1613fe434dcdd26c0346571cceb396e3389d08e1094fe069219a509e59ea17381575f4ab1b4ac79cb6cc64e5dc5897645631e187cb4f4ebbf1dffb083f7dea6bf6b4991a32dfdddfa43910bb526b84c797495df6176cd7e5ee6f42ebf6bcc28fa9fe396a8f72668d33db7821ab5ce54b7930dc7a90b97b9dd6b12f5d370bde4ad41955c5d7c1871632fa717237d4f39dedaa0cc4ed74900c688ae91571fa717d5c8f70837b8c27b26bb604ad340c98dd5d1878ce286b1fe4451a20a88a4e8902e3a1cf10268d26dc6446f7ec48a84b8bed9641004e1af82b679cf1bc29c7f9126f8aac9688ead72e14c4fb18292ca507c976408603bde8ca2650e3e50043ee112714692f871ad28305122149f098535424e4f278730c0be7c1124890cdd4260dc32d63db460399f9eebd339b73a738b58c0a008c857853f0df76789428213f65107c4359038fcfb366fb8cd74f2d955e6f2b30b3e96c70d9100c781f1d6031e210b541c4eeaf30bbcb16ac3c7b21cf1093fde4999c8fc254eca328dbbff7c5c880beb3e295d2924f7763720d5ffda0cce07e8889e556edf40e681e6894fbfc49413fd5b3ff232ac029579ef7f7cf60bd6ccd48d9f76263e948049a217f12453db900ad213e7f3e4fc409710fee4c92cbaea422e755cf51505730298decb37d805d1d333ed46a84e3c7659f187a344f5090bf338bcc76aadaa1e77f726b2b11880ef162f5d2812890a0dfd7b9a21f294bf18f6b447d1dfd92d009fbf144fbedf86e1cab012ace0a2ab31401c5f8f8aca4dc92c3609fc263cfcf56ef858446d9c66383efed916ca0c0ca351b539a7b4110658ba425d35b4c2cd1e235ff2c1c0840a292f23e34ca7121273ecac5ba01715f4b0d35bffec379da93405994ea997209efb895496eefacdfe9161f7c69afe3cfb9fbb3b68e105edbb0b27b1d0514c47d8886d58dc00c6cc20612630b0acea51396ab086c346c07206888257b9af5ccc06b867ceece53b4ebba63cd4a374503a524672527ff66f570dac73094f90c6dbd8fdca572a9388d243f63521c681ad8ea17ccbdb4b1bb215acdbae279ae5ae1908bae519d7398c7418cd56d0804eba259ac01a11789d538d848b76afaf7b93fce336b5bdee63d23b3cd6c46dec665af77a8c4efaeb9e0ee1576fdf7aef9807b4884f767d6c3e14c99c14c726c686ba8feecfd54c14a5234d7ce4ad7093c673d1251b353edd080e30aae264037c61ba8540640aa38101f73ae91d788a534511314b0cc0b4c52911032bcd286919ec56507fee54032f79cc1e1d6cc6c88d9a06215e9f3ba38d5f7bc91781e8cd863108300db6adebb51a790f7a2ebbd8fb116596716b1c7028c8cd9c1fb1db566c1641dc732d41d75fc7b8b0151d1daa407fbd0aecfc0fc484b1d43f68ec4614a32a38864d4acef274c6ebd8c8a6450a29d4e63503af63db37d22aced927a24dc40870ea3a891045a5a77c906b963980f58c5ed754ba710257fadd4f50cc13825a69e3548be0f5e10f6322137943e44de4a5b3f48d62ac256d7309e942dd1f3f211c3b8e745f79984dd25cb9c6650fd5c7ccc6e222852d8160fc8c97b52bef915407e17c88cce2eb560d359a92092846bde8f36f5b1894a3e69efff64fca4d6c0c3259aeb556370328a3eea80c1b2e61ba1f9ac0c5bb047a4084aa0668103a51ab97381bfa7e6a6b631e71a91d6191c6983d6698efea65cde4a23dedfca7e6b9a329b132c3865308d7ee89bb49de4bedf2f1b09dbbf729c1f0c53409feed48a120d2cdf57301974cb05e78619c848ded1fe6fe493dfcb581d5bda8ff0146508ab2d0caaef2fb1163bdda0f57da71805e6e53c8cc56a33d3bac12250ba331f380f090d8fd9c29c94935a685d6ca3567f140ca4278970ca42eab4c75056700bad477ff9865462dd82f7bf05dd0b4acf59b238a9bc9566997de3e3ffcb1778d7817b7196e3d1e06efb4c6f907006837c8a2e5117931a3921965db84f51390bf48ce8b54d44c6d8af12dbb6d171d50145178822fb457baa2b78246540fd9a348fd3667fafe1c4b983665d2bd676dab43a63821bcdad0896723b7b6c33e78eb9dd7823e48e028197cf494b16ac3fe0ae9978b369ae4f144c7aa3dcb5f2263cd2a29dabb0b14a442d804fadd786870565b40874982fe9a1f1338d1c02e286ceb42ba0461a73bda8e2e1304dbb98974f7dacec8d90d6385cfef3f453dbd098647eca6d33e028fd6c0279a090e36a068871a1ac16e298aabc64d4e7d66f3e6fcf74f56ec909d8aacf8db5d9af2185fdfe2de96ee568f78f94910be75ddcbe9b06dd7dc290e7b7e162bafb6a3cf8b6c90a8b02e417b40b632d7c0875e37ebbfbe21f2b60535b2fa76c3b1cadbfb8d4176dcb13b530e660bb2340f276d3be55ff24b29746070bde345fe7bb8d06b7a4dfb85336acec4bd02c95b8819b81d1611c2a61b31f185d70653011f7affa1f6dadb8ac5e832659e09f71322a60770ab18c3bf2033da08fc6bcea35c4f3d00b36d9beb7e5baeb7dd63ebce5bb46b600be9fb7674fc4788d72f7a98bbcdb23c49dc6d75d7223dba5064cc5426c781ecc73fc08a975039558ff2041278116ba8a477c9da4b4d9a19433de8709eed7c18a2bec23aa6c2b20a6cfe1e36e27bb4f4c2b0fb74baa624d3e61715aa9f0188c45d4405ddfb4d31af661defb888150116639156a92316f1d77df1c3f25055e5ecab769531bdeb1f5e75bfef8e0b521fa6df84ff2d30544867bd556e054a85660b8515c82884c46f8f6bba9e7b1bcd7ff6858d97d219acae3328daf5018eb671965e8bfdcd1660785e0377a72173cb26c6db4394a7565a91e119ea0ed09f549edf01e9bdab543da2b1372f977cf7402735b5646514627c2fad38370e10ba0271390cf987e6fbe28770961cdf51d863899cc6ca6730788815496ce52e80ccb7a8e4a4b26642db8d652cf4db330b92ac6d96e7d357432dcf15fd831fd3ae65c57dac7e4ea822a6f24744c2512127fe386b9caef4a82f75694779a950bc33c2e86d50efe6254345793458b5f3089df8a9b21268c5d4031fbf095afde2d9f5d7f8e79df08ccd2e6c892051ceaebd82fc3047a38e6ea4fd6372d3724af26031b5cf9ad7529f89bc45b68a25d56267dd55cc4b768159919ee83210cb0c2a967fdf9bacbdf8b91a2adea2c51d73712c8dd051f17c6bf74a0d1607ea48cba029811a24101cfbf6c3951e112d39acb3522f3a38066f048a0ad2996f846258a3d136831619f598b408cb6db93d4f2abc1875eafbc778623ae0f9750995372527397f3d427d1a81316b448ad9d82169ea3873a0b06294981a604574256e9408770e2e6cb4c0fe67931f015d6b844bdef6f703ee80b62517fb81f9c81a20daadd9988f912578c5ae932899949256f09a26dbd44eeadf93a708ffff3d6edd1aa55bd7e681564f4b183176561437ae8685be77acc1878ce9da23b280c1b5b46dc34c4bbab39a5969dbda6793248e0e2efcb56ffcffcc40332cc54924f042ec3a5008b1ed0db81bb1d7af47e110243bf388bd75af256be280f3fc9486fd3db45b9769420c159fd593eaf4b507a038760e72e65c766a120c9925c4cc4880518ca1f810b52c326e46dc489f694e6f68b13ffb669ce5a1bb399bc9d25bd5d98c2842e12a0ed9108ba5136b865d819b1c0c8fa020d3096935b78c832abdc1ad1b22bbc80e10843ea4fa9412002133f5a5d825f86803cc699e42521a6249b7a5a8742b9b214e6557c84609b1fed79893ee97fae0172626a9f00ca2d5f7a7314ada0037ccdb73a294db5235edcd6e5ff7752794c358494a9c1bcd35046cccd6e883cfe07a47f42a9e8857bcbb0d89a388a55553d4dd120b3d30d6ba29192f76812a21209984f4d288355eac8a5f9513e28994ad8780b3cac76eff15b5e0f4113d1ec4ccb20392c282e14dd52d370369eba9eafe0175ffafbdbf72cf9b99afb23ed2e9a52a96db144837e0b83d31c35518c0becb701c8b79ab7acfe308262028f00cc9bab4cf905edaecf060c77756a0d56625b52e26ca4f177897abafc4e730d8a2636ad2b065bf32bc17c954f08868c1d8a8a804e5e00b3a0759a174675a1a9c1cfd0fe052d4a537592c9e7edf3f7fa1f253966a6ce104a65696ab3b6bf0c26727576ef4a79aeb00000000000000000000009151b23292d
+flags = ValidSignature,ManySteps
+
+# tcId = 31
+# signature that takes 11 iteration(s)
+msg = 0200000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = b4ecfd11224c059a2731e7232dda71f943490c5d84a218d2cb00a6bf8f96746497b327d54ef0528952171868270aa6cda099a943123ecead4d61138a5a2bb90380865ba0caeb5fe3a4eca46bc8da8dd6c41c5294f3fddd7aa138e1386f8f833c7271838853873a61912813171b0003578a8db71536a98eff4900a138a1848cc45475fcdc2295fa322b21d054791db116b6cb123fba5d51ed4c133985ced556e20590b102a53567c84cf41bc68102164ece90b87744aa46dd6c84c67ef69a87f34093ae127de228416ca5c795ad3c4ba56097119e6085073e736f0dc4cd51c4877d022650f911c7194aee9ff7f13f94c5f73b0886b889ccea790cd13c6f4c52effbad4c4ab89dbfa816b3ee6bc1e84e3b4d948713df5a3baa2ba4a2fb8d9978cba124d214b251a1594f956c5f175d3a5122ea270a085d11f133810f7ac6b07c51b13f02a590f39b50b85c2757eaadbfa802dbba616c1b1077f15644f1e773fbeab05111834df770e31a460d430867f3f0a1e4a77951f54aaa1b04409dc75c6e4e56063a531c30f2e4529f201a641a2a7b682f6d26e9f18067f16b0d619cd7ad06874e4c5ac7f7f508598bcb044486ef50c1b075f8f879e8c7ac93481f4534e6c982ebf9b16f0f83c94504e68ad99c187d2aace43e1c4726817e156e2ae2c6551f9a2285ccd5608c131390058cdf292e6619f7405e68453842d8e12c08d8f0cbee7b25bb4841a9afd520a4a25f92d00fd65852a0f03bcb70c49d2f95cc06f64312fae537bfd4787def2b3c321f576cda847eb14666cfffe2cc61c35139c88a308d54ea4f7500fa1f1b69abbd50e85f6baf0374cdecafecbbed52ab0d9d72ea79931d78d8c86652ebbd30dea1ad90eee7ab63033f4e0efd14622e5e9426adc9fd40847549c304535a5eb562b89b38a2d40d2173bae8cdcf5f3a049c3720db29967c65af8485d12dac3240c803b128fd89eca7f9afe3e994894c4c6112168cc89db5c924de54b346146a917b0427ca196eb5b9668fe698f678f24c4d612092ba8f7bf26475838dc52e2daf146ebd915f896741864b01f7730d02b97b3ad58eb224148c33c016fbbdf1435e3e8b842f2d42d4d427f0543f4294069394c884669a87d9041001413d257e5cd81354926399361196f40852940ca48a4bb74ccf812883eb19a4b404ceaf245b83eebf8f47ac6b0d00237261522c6166438018ad900f6db322d1bf8efd6ef63a0065a1366d93885b2d1c1a13fa37d17419a9f6ff878b720001c1bb16685f8b5932b75d734d3194b9eb39756a7780cce344be03fe5655987d0bea11d0a00e526c7eb479632a4db51d056ad351ad37f51dc14780b4730662b90aaf44ab5f2e305685c641411dd2b400baa21b2b44d723ed7af3ca3758b850675df9ef5bd1707e90ca1c6fd462b6d000668dd625023bbef9a6c244d27557afe307382cfbda0ff068fd228b863164ded33ea50a16872e759302dc44b4f3538a7dcc8bd0f82385a79effa8cf7db60d09bf8a349dce50bad2789cb1829a6624feca1d15505c5f37aa8e3f08ae1ae2ab8274498546b2931c2a823427c2c5200bb74739953a18b9cb96adf21493d4784e08aa0318066ff0b75ab9427b21212be4f09c3413c9c84bd704537c850e30fb12bdd862ccb1dbd1c31373ab9dec930100a07b32d6c6b14afe50e5b5b8fd2d37a90a443e3cd2761e31800cb16e31dcab74c76323a0f462ce7f7320b75ee4c21e0f0306c67a8f69201454c38a466f183431b155080860c641adeca00260567dc73d5065e1acbc055351c2eafc1121697cff2fda1eab331ed6a3908cb10ce16ca8fc6179177e23f9088f17232425b59180542056b8ea61d7ec0e58d8938fd205fa62d7693143d6f0abbc6cb4f41cdbf44dd67f5d7a21d7a0b7536df2a4609f644a7f8d96b861e9e853bb2c9dd828c73146f1e9e20b46a067e48b1f3694cfc44a256b3bd97801d748ec4de0b3f8ba52bc2a8bda92d79618045ee5ceb20b756421dc92747813aa625839b3578732f2ad1d801935718df8d5e83edfc3c23e5a5e15d4684c42d3ebfa42d013aeff74c4ed05f8ef5143409a9e1c1d8f61baf5c9d0e3b072be3aae7ab9c2317f2786d39b108b12d948a0373634e7cbeda1b35fe9ce694a825d6ad5d83743df1e4e4537ef7fedd3b312d56c0754426f23a865dd667e6896a82e6062a1f5b6c8a60d08377d42ec5b43c534e634d9d85f82b913ca10922cd6dbd2c3d7d35ecc98cb37af974a615831846dfe9aacf9f801ca6cbc4290bf5e8d6bb832df0dcbeb93025baa2ebd7f3b4941e617d5437fea49d5f64d78c2e2b422bfad3efbc4bd2572cf6559cfb7001e4886959ece69b5305f0799cbb871b540df18c5c1935ddfbe17c491b9e1e82c2c9a1fee6879617463f60effdaefb51bfe749ee3fc2905a3a9026e087c984276a543cc3f4e7a6948c8d92985d24edde89b36ee6d9b3d7e300936548c34436389f4e7bd055f26a856ef9cc56de2733cde47fbd173a9874b73d0b8ac3a9a09502c2dcc18585810916a4ba6a72bfe94bae53767e55495207c2989d77e0e0f07e707f66a1efdb93c8e149839ce72b31b4e17d616ae0a674cb349c2d9fbb5c72b833e7b7916246c8ce495b3e1d7b199ac085dadfddb2bda88c8529474f245797d7756251344305891b098c711dd6a74d54036b299ae35bee1fe7284c9ec11bd8dea6b8238690bc40648036d56401f26b92584f726de2445030cc9865545447abec4b4e2c0c06681ec5ec0243d845f35dfa8d80127fc2542cc04cff53842e977a3e9420e6f3303f5d1c11d7d09c15fb229d0d432857987d6ee4440be1509321511b8cf88aed7cb27c1d745b672492d183815de62f1d8f69c8581d7e6918f13225f215f313585aa597a3c8876ee67317c0ca184bee5fdcf08ebcbf43d01b0049af2455bad78bc8c28f11252bceec019032e4feae4ed2c5d0670f9c2b6d5ee96055469c25661fbc8c09e1a486013b46cfb0c0eb4774dfb65b8e3688a02cab987923a98e7f75b44261d44c4bea44a0df4ec2b8186079f3557bae7c951009a64cd6bab08410df3f4ec65b58bfb8e31c3659d1f4b3254386d850385eb8cdc19df92f011d86ce13ee526bc524bcb465ef1aeb8f08e809273034be71d95064979ac196d9c53fbac31789ddc3b3eae14d2c1e1730e2f5b38fbc352759c1f573ae742c6cc2b15fe41fe6292f3856c328814f7d70343d3320aa754f162e530e666889fd0187a65c48b42bc2cc87e79d17102cbf66d8564ae5fc71b92ca49b04d1705394ff1e6af4593792d1a6ca5b00e972180857af83d289f6d0aac81e2006eb40a8d790c7dea7e075404e5e28293f4385edac77094f2e2dec38a15b12894787bbef906d12f8bb4657c7e3e2c8767a310277f63cda040bdc68c5340caa2b39b7579873cbd593cd81532e628ebbfdd8794b4fdf82d6c6b20d7f6bf157096a96a5d327a972faa5cab92c442e468cbd6705fc8ee489489cc687777377f87b470a84209e24e18150076a1a462a9572fe037b8a69153d1b7a41b440cdcca5a2d7b4d224bca60c7184828eb519e77f2c98b4567f23251bd3d01d3ecbe70eaead160681053b4a733898d74206bdc25eb6fcec2a65d6a972c680e0aaaa1e8b1e3ff095978213d242c6af612a62dbb58425037cba5209588ccd3c11962ad47a9c4455b98a626f92264a0527a28bda7f47e804ccb393caa2590b957e5fe3527c0d5aa2ae7d931fbdd2ebad07cb69be0d5179eb6c1343b3bd4448cfbca6ffa1597678f0bf6e9d2f81f4d6e3a8a9d8c9686826c86415ca025dcd1fa1a5dcb3ca8df92b2ea76101c484dfb1fc58d35c1386a29e588a6c80538ddd18dc44fe4598627031ed1650789b3d0cc1233775e1d45e97504d33043cb721a6c210d6e4e6b70e4dd9ef000adf591e465e30adf27aaa4d8c255f4523f1dea00e9cf978687870e8b75f05ce4fa8dd6dd692e936dc2d48b410d3b626faf8ab013f7be8910da69ae37d1ad99136c15e0e8f4194942a24ccfd55544ef63e692f1d4e9b621b28fbe8efd22920983167daeca33e0734af9aeb4b77af4cb354cf9489676514198a47d8e6d614a76af5bceac2c32799ce43cc010fd421468f982bea4f56969953766f629e43cb2a0fbf3d095f98257a2b6e3ba76f73415d0d920adf9b21bc102fc53744f661d42a9de6feabe59b2e273733df75be8ac972651818e1a72260bff1098c06c572179f7c5b0c8e5e1c9040baa4dad473f96b71b25d9dc16ae2312683868ea048f85933d844b7f2fb685db40ca89f24231b14249a3872f313c14124ec1e505f14c508ba483e6a4e559c8ec0b3dd7ff0446d14e4fda415ff4031fea1e65de59e5322279112ac4f64664066c4b5bf5a08dc160b6b313496546b679eeb31315500d81504706ae14ba526009a84b7270d9f9ead65398278b6385cc136c69e3e431843439b9a75e8b44678fd38facd65c638a3b1245a78bbbc26b85473a5569c5e6e0d2499d1570203ed563540096bfff6208502b12f107894d767798b5fd5ad7389bf55a6a90733511bf5d6273f570626cbedaf5de00c5f905fc2dce53f0f90d67153492082255889a9ccffc83a1af2d45466e787cd3dbf5f7fc181c2024454c507381babcd8e9152a6590d6f3f5143845565fc9ccd10000000000080b16232a32
+flags = ValidSignature,ManySteps
+
+# tcId = 32
+# signature that takes 12 iteration(s)
+msg = 1000000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 5fdae986af0e453c98062fd46d281750ab398c0d9be681f09d8a22793a5fbccaa0982761e89509ed0427f0ec73c8f9b4b905dd1703132646ec472f0908440c2e21e690e58ad56c3c4da022c2459c059e9a97709ff8327785011f0378c8e5c14e3130ebc43b2481b016a23ba76e61c2e0da8bef8b6424eafb1fcbe6c1a984ce767b0dc9c824ca1f9a5e8896734c3bb2e01b02bb18138ec550f343efb45030bbd2d034e859145fcab6cf42d48e8e6fbc3f9626dbfdd42044b86adf6dc6df412f15f51261373eddfa7ae848bfee57878380aae7d75612b0aec5d8e1f4f8809e14bc9b244fa50e5c345decf47c597d3bb0f5f2f0e6bfe3648bf7c4ff841d4861a3faf7cb09bdc97ffa37fe75fbb79784e858f34ecd2caff2ffec7bb53627f63bf4f423a290ac26439b722e859acd4fa61673deb275b50a309c9a1b07c7513d8718eadeead0703e5d4db41618dd23901d1abb77c6a728f5565c911199e056dff8c3c0a8ba7cdd05df179ac37292dd2597e38e17eb2619472cfd4181b2b4aa6bf649757010cc5e67121bdc70454d429a8b42850c1dff199567d700159abd3b485788ee01d71ee7ff163c4557f688fff928c5974f56cbb352ba8b3ad07b7ec3007dcd606b4ab84d42b004cd2204451d40198bbb023bbc9d3891d17080fd7d50e282a715fbe97f787a794d0efaa64db07c373c257b0770fa0fd8011fd15ae4edc1d4fc69187385634a48b7405e6c1a473c5640d5125c80b60fc5e48d86829625195a3fdcf6ed3eaea76a1577845d26244e1dc679fb0386d46851e80b130da1defc0c6797036dcc65ec7e0bb485d1f680cdebef97f2780d20d8d664a90b844e1fbe6e7126d15edfcfd37877f0c07d483287624b38000c5689e77fba19d1be415da83501494b0cfb15962243798f6f415206f77f3105f20e6dd73887e7ce26d06b968f3eca04b6a49ed9c31ae0561cd1418268b8405cac00dac88ba433b98480734bf981c4cd74192fdce032c41ba9836088b9e0acf8dfa97c085cc60ecc75f1f5b91738938c2a19764089ed9d81c315c1d91b7e3b1a6d3beb93893e31ce32f97e8c8b837b26e07b523cd857edaa268ede52e0b44f3e54ab37d45d53079cfc5a58a8c992d683a37e9dada046557adbee8838e10ef464262cb0f59029797b6943b7e6b9e0c7010dac5605d6d581a496780e6e2eac7b07b95abcb6d92acf293cf394140f0fb16302dcf94992438050e84a66c236f21b56a756ed0324977ace2196ff58ae2c8db667b0daa54a2d42a3920d5fb5463cb8d06a2ff730a9f533f7171ff470b8ada56521eeb0b5c150308450c6b3821a071fe079925f62320cadd8da8c180fc8a9daa2c8e17561b21b9fd4e221893ea6553a4e61c1fff9fe8ab25488ad1c0fc3521a4e236df4cf15480df5e2b75d67ae5743fa537fa06575e86117782f912cf14b9c67a461c34632fbef9b1328ac76a8dec3f442541e777241cb9eb39dcc009e87532cad63005e5e93a063a32012fa889b00e9df5a63fc6aa81e1cf8e4d967f8036b59b1341ac3502da9813bcd4401e516b716cc2b5ac04f5e57895e39965a3a022f408d40982b2f9e08324dfcd060130ee5f700946e09254932d85b6a28c7bcd5395936f08ca928325f0273e3c268883366a662ebc9a7f1bcdccd0acb6c454f79d67bad0347d85e5acb01bf3413b6dee73a208a40caa15d6208803e3f9cd708ec17497d7ad77eb3ce50353b5cb2b9ac447ef4d58a9e60837ca7724629f32dd894a3ffc3d1e7adc206b385b82ea0bb478f1ed7f675177787f92f1aecaaa2255ab5b48a4f60d2691ec774d3caf8fe5d5f2056f125d240bb82114cae0ce31e2f0fceed910fac6f7de9de4da88e8149b4b749979d37dfc3112e3ccab549be830aac9ae053d8474e1f248ff0b5e598731dd63cd62ce630b55933859137514e84ff5a4059c0410f564e477a1694ed2eaf3169ee8a9ba5069922129df8a94e4ffa278f4fbaf52a605aa76516938eca5be11142bb83087e6def74264e7e991c763e5191492035f7705bfdb17c22d4933fd2509dbd25840614baccee3bd3bd59a377484b55a09dc517fa298dc7f04a24304dc91002c000ae61bd5b75242c0680988d9e7e5c05f44aff949ea3addbc4fbc26a0ce3ca9f3229a4ebcdb6c754fe95748c2ec479b76e311273c23a1d3d4816de71a9bc26a74153c624cc449f068ebe2cb6cee7bb5e02ea4720a86a00a5e0883f4cc0a6d967596672646d439aef75fc13e0c4e0890ff68fd3a50efe3943548b446c2d2f89a2b16710f22cbaff9b1cb501675902362b0cb5f1ab9d09909952219eb933ca1e1dbf271a0fbe1fe40c928fb5d1fadb935b1fa84cd939310aa1d3c30deb64aa7cf9ffe7301bfe602ad3596e07e87f65e53b23fa5017880e70053f65aa7345b94829ee3db131813bcf76d0acbf69f988e88ca3f49cc4311ad327edd90e2a4b86910880f45c16c9ba8513fc72afdc4f4c272f052575b71e3de70f07161eda29c83bf83aef0fd46f11095cd4fcca33efd8cae8f8c2d0787112723cab9cac9ff9fa02bb45ecbc9879414151751bbbce8cad5c60405150e0819d076b699d9d9fb62505a6c104587302fba8fb17725e80e9732563411e576bba1a503b10ac97a41caddced4fa591ef6980aaebe3505df212201fd0d892d15bc08d6501df3a3263ff810dec62adce7262c07360d1de212b1684b239050a3c87acbc7025294124f86a8f35313a97ea373a701ff4187a7eb44e30c282c4b1c30702b442a606aaf3d5263716ff0fa7be107d0874581703f9ac04b6f8169872e94100ca1b11e44cea2bc63f51cc1822c65d6bafa8c639c8f32b4a60c928fd049282dad586e46cd622fc34f1fa5ff7a67d06a427fa22d05e485394344a1b41e8aca7c624306eb3a6c9ec319bc65d8f878b1badf3a4743ae1b39ae8f1ddba00bfebddd149f5b20836aeabee2c6710aa0b128fffca57783bef39e66db6df7b4a7d7fae067d3d65c63b020105437f448d644f4b0bbaeb0490ec5a337013b4ea5a16f82567ff2588070afdc6d0998ac6a11459ca7a8799dde3ec3411beccad252e897a360e1d4ce9e9e0a82c57c79a24abb99ed5190f27e43144f9fcf076becba38afc9640f9d18bb67f6d4b5652bd5393c8483ee348a2ab3431cc92dce30d0f069312a671fb283aba4e527c72781f59fb7f6d1704a3ff80d49fb53ece26f16a15ce40a5414475732384f8eefb51cd22b34b8e901c43eea8604354522c28031852da10e0acfe6901a3321a275f86f025459ddfe1d90c561bdb132ed4c22209e71728300a7f5ab0c84b7ced352ae3321462bd75f6976849448018db9c2241d2cfe684cb6c3678de2f1dc91a4b4b6c2572831d4b2036aa457476f8f19be70e405e2cce6e4e9b9e82be48e078216747dc6d63359debfd2fee14a0e8bc0de95a381272d3accd94617875e9c08162817d5294549584ebbe8dcb36d94a6cdce34e4f30c52541d425422ea0e2d1c00f9b381d021ecad3892a1541dd81a42a1eb8a7362b5a125651db02f1992efd6f9515f3f1ec66566f91c1876d159c61195383a4c5e4c89555fa026b5b3bcbcd34d8b6b0eb026cfdcb8cebe45884e499f7bd1f40f1e4a2144533f2d57e1eff0584805d5beb7d6ed7fe29e088379d1a7ee70805f0f8133d26156724d4ab6560d15f49053a1c8a8007a8eeab8f6c09265c4a545ddba9eabef6434b191d87570ad3c88485decce9cbf52a11895aeb82dadd9921522f368843fa7e246411cadf0fff4b236641cb516057f102e9875e9363bfbda62c5d40fccc935eadaad4da3723b7ba6cdae6cf88b3d14364b6d30b435627d7781aa1003bfc4c9fd145f6c6e82e58df863488d27e7b219949d554c09124c582591305a80964416a18f70b563a761ab713d4832a1780300c7ff01cc52be01a60ae53affd3cd4a0c19eaf60a077f792378be2d3c958108bc068760e1b920119b311b406a5c59658a9801c612140d9c8b15461701ae2ea1bf16ed9650d0a26b52dc59d927efcf8174a421409877064d17ae3bf17831e4759e3de408c616c9565eeb8cbf83729669fa7afb13e662961db2622136bfbc69f1a80a150a604c38bfde2c8de8eb5addb54825376d4f8b0935b6a1f34d2a82a29c8a725dab50649b796379d61e5382146d399df86de0fa51875baa1dd2b3b1490e34578dc9da393fdf26ebc36ea3c40b760e526e30280e05529ae6e5f9f70a41a6e36da9f9642ea74639a5631a6bb30f17f3403144d9b503d921917628a327a5422f79903a205f7dd33a34e93da5a553949e25c29f952e3b5f8fce39cd625c9d34c79d414f104a69532b4596bf7046c3c6115b4de3dded2bc270eb4963db75db38d73f2fc3719dee8730c12afa6cce1d867d7e949d7fb607e39bd2b09c1e80fce2fd76c41669ca73b9bae914f42a5a5903327059c7bda73ac88cdcde315d5de897fdc188b42ca521ad5d80e1a6a95c729f58e921fe2c258fecbe03858412cf0d4660c6fcb6c5b16be8342c970bb19390b7c393211ccaf35a680e1da855bff9c004b067780522c8f26770559af10a0fefbf887a4035c7456a368e3d9e50ba1423039767bdd6482e61a2e47829192b9131635608a8ba74a4f94959fa462aec7e6000000000000000000000000000000000000000000000005080f161c20
+flags = ValidSignature,ManySteps
+
+# tcId = 33
+# signature that takes 13 iteration(s)
+msg = 1500000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 73bc2954da39fd7abb7ef32f531cb8144198e50cb52dc4ebc9dd5ec0edb90ba730716d93157995e37263b1456cf55882131ce6d537f10096dd8500d16166de80f5bda2f94463e8fa18e0b970871e4cdde1ce7d3e154d30643fd4a3740908fd8b1249dd3fc7da0a5ef591de4f308b44daf5018e17278267b56f7df5029a130c736f56283d50f97ea4d817eccc6008be603b19a70f1526e1d3a2b1d97a52402eada5f3c7898eb16fa2438b0e4ba9cd745b1c94f0a5c4d0be6ba5ba9f0186feb4f741260fa0f441f1839d3264150cff7792f5269bb2a82cc360e30a15f61b2568467d9c8d404784996dedbce426c71001748c691cc848e776023cbce13438aa0743b6ed57eb614bfa8fe6b199a53207c45ad762ba80efdfdd31595d7bb0da2d533aa65ab0ec3ced551a0b6ec2cc8a216944e670d7342cfa367542e86edc2086dd14de5c0ef8b38d677379fa986548bfd69e84bd892af28b4028687ad8c94f55ed56b50d611ba6de863c201b16b0b9de779ea393be40a79b6405bcd3f1f8685018c8fa61280289a948831ef7963f3d30f3570855e58873b9f9f02fd344f8362ef65f723fa0c5b8d628264e74cd4fea73ac6105be0713e80d52c5bf55c21c1f502d73ad0afa6144b6bdc227570b85b47143580c736fe4f2b201ec4f4f78efc3d4afb2a4d81c8184fe36011f7fbf197335ce1596a0ab39f8cabc02bc77ffc005665dbfa356b43ce805fe0dd2c24a9e6c363cf707ead215ae245963c5684ba85b55118d6e8e55c040012158645aa0d0004c184f826b7a43a2ce81a3bfc6c4ea5651e8dfd10fbb22b371d03e7dfbb3aa23a9e604d8c452a3e065afc05361062db3acd697e52614baf0afa010b7cce9e2c36d8e41020951154695bb13bcdbfac5eed9bcc8f0701ec5bd6393d83f828d3c85a591bfec897203109c57b87335c48ebe20b8c963ecd0d973c2cce02676fbcc38febf292616b05226c523a4bb6de9222de497caddef9e5bc65fc084e152f299538479f994dc79e19c806f0681ce43fded54c634427ca1f14b691aaa1e7294741ab9f86c15a68cfea5f5afa27e068564353ec51a39dc220ec0636a455604671d2d11e4de86b5d8b766b872563ea6d7a507a5c82a1babc6dee32af466d560cb9c9835febb4aa2d07d7205cec32209df17475eb635861e595b1f4cefbd9540aab01e1db317fd0ab6cf56a03f12688257028dcc7f344a87ab0f16c2ceb3a7c3cfab665c92a4b03a423eb158ad7d3a8958beaa417b4fc71948ece95058b56b9fadc25e9f3acda7020cfe201c1a584fcb2ef38c9b524941472d4651d828b17e7dfd31f022f2430bcadf48414aaeb49c21e52f40d5feb0e9216be4031c35f4b8cc6ade2ef156113fe63827179b0e6f30465111c7749b2e99adbd5e451f121f6832a4121abd9510a752a7a4a9893942d04abf4164346f4fd32a01ab7baeace93f678333c4f27889facecbf4f41ab234fe2b24c0de9cd58ddc969d53b5c7aa6ffe35e58dcbaccdfe9ffafee5b3f1d5222e6187957a6c653751b631f439b691d5f2cf91808f65de831e4f076c37b48fd9f96a09144ecd06510e3093429b37abf729e09e1fdc8dffade760a584cb6ee668a72d4619f421d5ccd663d379e6f143088c143e29f22ae9d0fb993e8447cf44015c36326e0efe6f16c547c3a212d1dfaefe654dffe6b231c5c1d8b3288e4ab38880b324249087822a32eea1ba798d2e7d204ea86a990c7974a37df998bbd7bc99d799458b231b4e45cb37dae19b46a95f597257e75df509b2f3a7d7e524134dc71eaa13ae8d585fa7cd45a6ca91ea96085e0092035ed9ee335fa047f4671d744a7b559b52a738f0d20ce5ca76127ab9d549b869a3eb6b66c57c1d317f68f3f6768a7eefbbc9ac06b4c45a6de768aa3b1cfa9aa19b792c23054ab84917628f94ab3dabef0d6445ebe8a374c4157408f1f84c33163a75b8f4646637dba50dc09846f1faf64589cfd1e5124f6e70770732df2bfd1102197d9a7f45215253cd9d05b7eef329c36a6fee9f3f38050658112b48c22c5561842ca24803b96d58fe1f627c2943ab1d9366d2abcceec4c6e55fb044e5a401d032f04f7ef2e49fb89f67da3a619ffe5702227a7ab06970f5079549dbf6bd4416722788805d4682374c982577b1977680e1d0a6af0e06ffe4103587b41f650a85db8eac9a009dac1f9f7589271f6fadf60c98f669f70989a913123f2ded18b2966abd257590ebae4225cc436cdea6430a3167f9f3f42f5cb135e11cf31b8e2e386ab51b6fddcb0e30aa3f2d8cb12373aeb8a364e3123fff93efe83fa89a44e97ccf4f9b5a107c1968436d8a08647acc88878cb7438b7f5545f59b2cb79e20ab8d4750243c6898859ee1d9d350b686aed01b2a6fceeb62cf9f824b6e76d57cb6f16566c4cac2aa17cdc8b72a2223c2f92bec38b0f481631d0096b2ae449370318bdd66e196537a24f0ea33aab87ac5c94bd0645824778cc329e76d5b38482d126a335573cbc81c895d225c3b724fe901ba5ee9052655ad9c059412d4cc25e00444e860f683558fc0cadcb33800e67c87b93dfe9adeca9aac911391632ffcee4a3ec48dcf03842498f674a6a8f689f058d825e931673d520700e284d3a26f2e5a3c3f2fcfee3d49f09775514b837dc35db8ea09e1db53d548ab580c4049e16327b5b0638a9f6e3513fc393122c9d9156ec532d462788a649f79bebfa626e38e261fb839f560f5276b36e462957674fee0094354dbb6275d09d08489dbe1fba5936d1801acd87dd89ad608d33f28a65d066f642117915b9acb32fc7459e15180e8ccc579ab2234cb64c6f4563f5a696eac76f158575276f773e0138545b904feef9cb44e1a13d3004245a33b476ad3e8170929e5e6adc68a12367d090091f7bca5493f7a448e88eb4f13cffd7f648ce368b092416f3b577e16512bb54dcd06e0bef24ed69396039741d37ff96aa0f3b7dad92fe7c67d32ec3c5d936c410329445c4126e027b1691f9964e39910ab4d1a6ec84fecd2934ea9e0f74f371ea279d50f70afb352064804d30fea26e4ecbea3eb6f96b7b4324913c71a2db4bd4a8f8459408eee1889f8ff15cbe14343403ffbba1d95c8b050f050e3bce3f394ed35bad88ce9e1235b3dfccfa478f730ca162355f1df0bb4d1205c8920b5b090851e9798487e3a858e8ae1bfcdd543209b1f8713fd1a80f6f3c8622c10315c1bf21c42d456667e64b1668f96455cd1281e3d76d3a52149621ec4beb651e245b8bf1f3f3fa770368fc83eae60eceb4f4d5e2b70e09a3015cb3dd2be4b307fb5b02db05a9225b6c21047b422c65ee788ccba14c86564f7fd6889a09a258e03ce3d802d19b33def3d223bd427a7cb4d9fd6814413e290a16bdda7acb39c477cbccbbad8c664aba0c97622e65e04c17cdcf51272eb8cf906ee15cd7ecded36bc66139800a4a7864401fe328f8df0505b1e13bf3bbad8b4a344a292d55a17019393e4f0105be7722837624b84a183ddb9278e9121b2ffcacc08456646653df5d5b88e77f8c61e341a869548ae1b286ad8b85ccb763e3d10da9c05e895fd49ef02ebbb60621dde417678ce965153284053d0fe38da260effb844a62956d02b1ec6e5c8ea661ac8775a95afa1861cec82c396a7ce98e5cef55429e3a4d239092f090ba10daa78811e59e9c094d4bd805ab89b5fefbc6cde6fdcee6f21b19c979e237a273e24d9db1d2a7aa6cb0443b5d8fdede41f5203442e658c6f9e63383407a4d67680b6f486254c597428f613e9478cd2b6e765029fb73ab72add5928752e558506e6ca46a3ae1abd4d2aa5f5d7b6556d07440b09166b0d93d5a939e190df2341415a132bbc0b742d3acae79d507628e1da15ae962ba93db1ab75e1bd6db1e99264e68db450bc6d242fa131b05fb73c050e6996c4c2f2ff95a372f12a9d22cd85eaa538db6e7096b765d730f7a35241935fcbe23508b18f5e61789af328cc00ba9f2eb9e004afb253317ac9b0ca2249f63040ce4ac99905508a6d349df6e96c6e675bd3acb3103c611aaead2046c4499fcdb17783bdddeb3c2c75553d338b877f6da0e9d12452943cf6040988fd036fd76deb09ebd8d24e464cad1b6f8d05ad9eab9f18c15b1d6a1e33437e874beded7ef0ca0e27f15229b6746cab74d77e334db74c013e45199e6b0c33e6da136c2004cdef5754c5b44d67085d9cd732bceb1cf20551fa0f183b1149caf1e39d88d6a5e0eebad539c3ec63ae9b2017d484866cbf6a9f5029e2cecc71954fe11c0fee7b1b36f8d18a0f138e54d45aff4f98aa922170a5d3f81d80121a29e6b2c8605214e6a807071675855099f305c9b0041caa826bbfbb216abf05339cc96cca1b143ec278ad3a1704653fa273d663f09addaa860cea934821e7f6d0d005ef1e8dcb62649907994c682481923300baafcb997150eddc0e3c1ecb6d911f51979e04cce3d1afcc40ad70eb0f3051189bafe36275bc313b5585126acdc44ba14a7cf6864a37a407069a266c252c121475d5132492be2120a43c80112360c847eb128b8b4b569153ef6205b6f24d0b5b641899b7244f0463324167071c91bb0f5f70777c8b92aac9cafa13181dbfc8cafa2485a9b612379bc72ebf2d3b59656980d200000000000000000000000000000000000000000b12161a1c23
+flags = ValidSignature,ManySteps
+
+# tcId = 34
+# signature that takes 14 iteration(s)
+msg = 8e00000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = f35a6312f8a053655499f4476cecf4324dce61e0e98a6fddfeb391b714201119964d2891579c9ca0cb74b2850623808d9c2bf5cf38bfd051ec4acc1ae827b68383622793527e0eb3fa7be83c1f72b7abdd0073f7ba4244b7740aeb5fb66433847f3c8882811421a86a55833b05c1c2f24949ee29332f5ca5e9fe97daefc85ff6e9636b9d188c2d172c3f9644df60208fb298ac2a08490bb611828f1f5cc93c687b8a6f7441a8995a3cc50e894a11e9fc7f6dbd4d47cb087f7f3942a92ee10899d56a65d27eea66ccedd9a7722bdae4aec8fa6eb0b45be84dbd4c68560fde71d04fca514e10bcd733de9b3f99454b13cea8453e2c9cc5f29c709f2c131c972dfa2f47983d04d997ff217bab57d250da438b13ed640f3ea5017f78a394f2637bc708e0e7db2e5eefb18bb1c68d4ab59643135d08de302f9575548a2239bcc385849e1cec32765748940a011daa3f208da13ff97453e4d08fb668caa1a282530a0ff8e0d9cac67235be0dfc06d0fd5eb0ad56746191a84fd5ed68aebfb3f3d5fc2b3a391cb62958c471cf9533609bd564129aa6479f90c2df8ab3d5bbc51d9ae862eaef0e289c81fe4988ec757170289f5beeaf851888f1bb9b349d6cabebb5dd3d7fcc25c9e4dcca721f0e395918a69496c1e578662e3a42bab10070ce1c01f61cbbcd1ea2fe7dc18c318d649bb663fd7b6022cee490de54d309b0be08121765082bb5b634415cd7d16cd11e69f12d2bb927529554cc6cd2ea48612e93f59ab9fed4aa2a72fb78a7b73c39c7bb1c2bc3574fc7e2c209b64ae2c2e50781ff24ae6761e05e65f670f7d069072b6d73a479969b0ac345a5f1a214929e6b783d542753c9075bfb97dc72af2dd269a0e0a739430b04f0d6988206974d747df8d07abe115d2db2670fd66c2527f288077e49fcf1dc627464a963f031f438861bfbec5e21d973a5d7bb0ab20bc52ca3eea5c9f6fce2339e0a65170f5f7fe8c8d0fccbb1d5b8c5a5f7660d782406e18f75571e43cafd66cce56474b6d933edf42b2f01408d919df23334f5caf47a96b68e845f3b4e4e110e3614cd477ded26f1bf7c92f6ce93291ee809e61d48e824ac80317ce49224b7319d8e4e3c335fa9788f1aac31a3fbde6590c22216ee17d27e387805082dd3259ff68c162339c57404f291a7dbdf12f220575335e189d2c9536f412674e918d4e4d5f1761453d6a080b766db3fa486f961c111b1e661f28f3eacc0cb8e21f34fb143873113ad70331e2a915f0fafe29c0567877a8e947e13e7e7c677af3fb1637805c37877f994ea93cf6e2cac41817140b4721ff48e9a569bd285a821f5aa389f6e5b08dc2be22da23a31610f7f37dbcfef33a3c85b2975727711eb0b54004f5fa0035416018935add492f2cdc00cd367dfe6b4d16829755dd4ba7e5f25151bb9f02b31c05e26fade8b32e7c9569272887c8f32975fecd9c725ad92ee08a819e2f473c800d10c47798e921a69372b6770e664224f4672265d0b659680b0cc83f0724ff727f723d7022b966f67ad5242f312c5aa832deeb9a721957edc71d3cff4b19023462c9114c7341aab6d6f22bfa926128e98cd79c2380fa9844374e67b7317da9478add4579ded5fac480ddca2b9e19c4679447324286d7dee578e7c0b1358f2754c1840843189b45a8c69702f6be6afe95d4739f205638ea9d2059587724807d8f5033e9106791df3e1056b3b9d8972afc72746519f453c3b51a754cac0713d440c094f4b707cb07fbece5eead8a7c82fa6949b6289ee41e1da5b801924c24aa85b30c95c7a074f464c320c836df0da10898c912ba1b3b3bedcb64fa1bfe78477f33f5d5058e306c3ad6bde51908e9ca8dd5f4663185b1ac46cf6ae98059aae95fa0967d775f915256dfb90f80723c59c1d86ec4c700ba795ac0c8dbc87d9616602d7d67bd0b157fa9b1040c40c71e2c2b74d673ef26345c825baf86dc8ae8307651a14a06a341ed4a0d570b77c297c012740b2d678b6963ae1058e7b514da045867c42e04638b9cb361bc35770112492bc457ca1baf1811a8aceb3f622a770bd1958b5312201d9c2b228763e8eb0351a1f6a70bf2b8a746df2a4a354800faf6dd7299d4c70d0c55560f20a71b896553c731cdd65e1a8d83145f8c89fe587a299dabd29050fbfbc7dedad1aa67b96970403983d76406c04eb72dc8a77f4af4dcbd640e82e12628898345216aa350b8ca67136e4271bbd33670554dcec8d3e9e3f05424ef83cd7003454a9647f864ea143438519b0478230b794f7635a960ecd17565e85f2163061ad947bef93399f5f0977dca1bdb4999459f529fd7eb97e426978c10c20d8e6fe9f20aa908a2f734d88e0ad68f804e7698e69d065caac268e73025d269d06775047c028e1030d163730afd474b47f2782bc9d21af573080daeeaab9e39761beb659a0d1727f91ac9e28b1b332130962ade9a5c30376b23f3874e1dd9536d1c4db6dcff16224f1c6a98d4705e74a1a75ffaef200cedd73a79552783bb3757794c30c7ea0bdcb8b504212d7218253f777250369c8a65b321ff719d3918ad54eb1e5fb9dbb5b0a4925200f8edd784d1e5d5ddcfb20ebf6565e1125a8a3c3216ef32a2df02df47d38b90a45edcd940095d8a672bfbe505304cbe438f74437a34cf43ba2f6627c56f3f5b7a818c7dc754424eccf2446b0ddc03bac858ec34c1aa484738bc8bb6078adca3b2898cdd117846666410c490b5e6ead1e1fe3c231bb223a245a817d864a70743dcd3912d7011d70eeeb53ac1c0463359fc87a3cb179c7313cbda432b85374568db7610b97250f56a82cfe6258b4a68ac61e9dc281d5b887db4573b9f7a01503f243403e3e119f149ee95824f8370c64671b2e751b2c211c10c93ebd7fc8847e1d4441b0fd603ac7d8f6dc76e56351a26f8e9894f5370abc816d182d7a5f079827b095152e7886f087a9aaa5498dac8208b53133248f493fda96889a17ed9629a7c4b9e103ab59662a1347e0593779ece0fd00991cc9e83990e8c673573017329616cc03e90353a2eaf89af0b98731b5cbdff28b9e0af4478b631d6fb3748677391c3dcd342a80958b5e3cdd8460f4a3ef7786ae706991569bed078bd2c7a8902b1692a844f704f83477c456499bf6f743a12ef9cb1b560d060c0f864c8d84d3fa0162e1f128e19e16eaf230351d3a40999017cbdfd182037977a3ea8847877a1652abde40eee28bd9890d3e29bf626a1c7c5a7b02405e84be97fc9f3702d65854425c57dd85e7a680bfb16703d0d5c13a76696f15e802f2f0c757caedaf0844618520179d24d3f06273b87c9aa3cdfcf8ad05877387468d937904e2068522309518dca63a51c4063872b0b2089271b96dc1c62aca9423a9323295f2cdbf1d68e7600406abe86d54cdd1918ff3d763245da9a6ba4ac791e613ed73ee50aaa6744a2427aab021e2ef24f953042f6429fc451e39e796f6c7d64b3c40739b007699fed1c057f75d2d4659396d20f09509413eadffe78c75cef3e9eb65a12e332edb9e3b2e8e64795fac153a9f5bc30a7e3d35d65bee29cdda5afd93dcf7f5f42e4a448add1568d199ffb5774c3383cf8719bab694c22e5e3986dac4a679f741da198a228bbf4766fc7622ce5f517bdb900068c0b9b32cf4c563dea50bbe7025fb0e436ea86b0a8c2f58578d48f15eded8d19444906dedc2b766c376e6d0dfc90d761799d02afcaedbe35c9a30b3d302e4463186d9cb1867de8122009d52ff8fa8549451b438a379052ac63770cb04c8a80ab894efe019f414b48bc9460b33fa51978fdefa2f2701a440dfce6a50d92ac7df6b915314f76d7d79636877dda24ce3356ce78de29fe40f2ae4104712be865b17e9156998ae7bbe937556cb05cb155a600d303ef8df20940563b583bad366a0ec1ec023aa685eace86a495e5bd63d83b7d68039d18a83ce1ba5eb78f75242822d06601fc082518f59990e12b486a1d64112a80b80c6b0f4f3d5efb82bacf1b48857d06c305bf6f6eae815a39ca4753280412e340095d53379a0288cc977ba069962241bbcaf288468b9abd23118d3eeadbf706468e41199e57e9839b7c0bc1763d1b6a7a42187723373ddf6c9aa70765b0363dd4d5e70c9a9cb682b672f95dba7e156ac11cb3c526411b856152d124184227c53e45141ed12891d3b071a453b5cacb6bc07daa9404efcdacd33d7381b95ded01a2e54a7bbaab38096c08cdd795378ffbc055093e0602d8cc872f1a0e20e1577b0459953bdbe606a0147462c3e790e093c0110833f10e71226c1717cda055ddd82431ccdd7309648b5799384e4d776ce800ce7822cba4c2ef34045149e619cddd634f45fbfdca78df367d5f8c50392767b972ba01fa69b4907f1a610222943075ee385382652cbd5cae573f7edd8bb7f5f79e80eeb85669791f444ad3d5a9754f1e6520d27f563341ec0646f8395ee03e89b091a7e8bc5265b9f06040cccdca852e1b25cbc31c2a5b65b86d5ee855f00c7561c99cc8a622e8a4e7e2d238db3f48201dfbc381ce1ab55e7d6d0a1c5c5c7de5b095161b90a2696907662e3819aeb5a1198e21b2b760c994549747c9fbbe3152c3e3f56a0b82c2e4464798191d0e5206c9295b0014e606677aacdce3d717fb800000000000000000000000000000000060d161b2327
+flags = ValidSignature,ManySteps
+
+# tcId = 35
+# signature that takes 15 iteration(s)
+msg = dd00000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 191fc745712fc8a225adb8de855d779eef8cae43fe75418ea2b02611b979d39499c190bd59c31000eea61c0071a6c765f17f03310002524c8d1ba8df6c259405104df0a435658b488a3aa81c82d9ed06ab0886d456d7c021129f278edaf04477e9b27b2eb35d211691b43e36e65c823070a99e89e0000af939be62f1d95e94a168d953ae5d0933a39d223ab02631932d0006240fa5d3ef265519a5cec6bc796f932345f61e0e63dadf53461a1e444aeb7ff96b32cfa9c8ea4896ca5b5c58afa77e43ab34b011e6a93f9bbcb8dd8805ae7351cae0a0ca95756742077be679da919436faf4e386329000916e206545b18011221f25b8bbe71103aab949769d2add6bfb4082cce81a95b66dce001ede20fa6aac7b4c853df8205a432bf5bb0ffd3dae68e4eb195dc408450748143c8f5e6459a80a1f26b1b5b148d5394158425f8442a0d9faaf05a5ed8df9afa8bb97f499a8454615b626098fb3daa4c4ddcaad2709afebb8d6e1eb5bbe923ce5a4c41b3dc1568f4e8634455de6040cd3653ce5f3d63cd54834ffdf87e72e2c51cd2416041abbb51398e1eda1e22ca4e7b4bcd72eedde8581cbfe2b2b821918a338bf02a5771286ec7c992ad7e8c1f46dffbeb101e939f4b918d9a7b86fcf9940c12f0d2577e57f2702a263f177ab0467bfeb3384647c179f88ce508eb0173bfb6af85fb662b0861ee8051fa4c1820266f8aa6bd6f5c6dfdfe31f15a86df16669815df1af36c2c03d10a8364f488dfe3c266d012a69e538292d2799254da27d9ab3dd900185d00ba45110071ce6132fd2fbd6c129977bd68a44bbe3d0d90b70c5c4d7bf3ffa9f50400168b4a2f28c572b020c175562dcc3160df4a71e77854d555cb8d40f7e773e532934dc896078b269b719de189daaa17187e506d7c2cf06d7b7f4d7ebaa1e1b8f01be3e5fb514c4d3c23736b059f7f6b2a071a20debbc7aba923e040673f7d63a6ac223e86a85e665a941b1067f5a5b75d5a2d4622f30f61f813c9790d0bb62cba7c982d34dc6041f57f204df50b9774dc7300834f53f19d303479bd5df42b378dc28bdcbb81f8d2948b2eed172e57bdbc44d688dadbc2e30609e25c4ea4783ce53d4e8ab6ce921d43ec8e9ee82acfde0cb40789a50a9c696e9711e407e0a2383b252fd25f5d2b5456b4e4674a579f1c1c323d3abc7f1c14356c7dabf22d85ed4a9b5e75d40a5c7fb2912f4ec1e8ee6da96f352fe41c41741f312ffcfb079de51437467a4133c274dd539399b40e42d0805143fa8c7fa9743fca370059167f6f3346fc302f5b6dcb060e80b53eacc6bff176c739a6536f6b1bb4168852c68b57b787c330126ad0fb0414433ce263e2e46b27680ad072ac36d653cb95b0f0f6386c9f9db8285c3e06c38de485cc74b4610fb99714029cde977d9951c91803e9a6d864cf42215a4917aa69ead9509ce0086531d32cdc8cea5e0008bcfa709d18d0de3df22f50e87f59b7a512f3579c46de310dfc8cf95a7f940bdf86b8ce744433fdf50b5a9ca6ac87a7a7d1c7a2533c1c09790506f2cf6f8ff395d2122db9021a746411abedf1b991a0bd6071ced9135cf4319a45c564721945fdad887099efdcd1fcae03f4df332e0c7fbcf04fc66a286589ceb75c6a8f4dd2c16f67caedbe476ed4c57797078454fa66bd532494b83c03e2e5eba44b7d1f51d3d4b93b0cfddb290f05a24038871c766a4ac48cd041dc66a731b4ffb851a7648927f368e92ad45a369a4c9093f27476fc6e878ca8a9b0a915d88a3f55c7e712927ff961fde415e0b99bea5241e80c8eebbec3892ee13a4ad4d77deede0244f45f7c2f50949fb6224209de50d33047fdd60cc3610aa562adfd77e11057fc592e83bc2fc698ed156c57bfce86e444203b158948a0fd266f3167e46a061d05f5640fcc6cb7210cc51e8568e589fc950aa20daf7ddb4d46f5779b20d0d46890761132e23757535b37a009f078a09ed3ff17214574518eb1d03feb0a531f2fb59a44c96c27b834ded68470296be1ba9d4b1468d8e3c5daab19c97d388342e3c91ec82f7f9b50373add853b242b9274c8e7d59b4e84826144cdce31cc8a2d42052bc2723d1cfd01425d7cbf0a72bdc64e07e9f50410c0d84e128b4cd71f4c8a318da81567f320151a82d7b78d4369fdb6cb33a9dfc74394fea9b6e1b32bb4f2ba5fbf6bddf8ce0c93cf18debefde8057e0fe2135240021c647b48bb197f3f205621bf34e0bb7477d903d01e0814774e1e3868f30bb090f67dbdb786baebf443ae31e517c3e42f18a1651efeea26131e763cc3190cc444f8d9675445dd52746bad7b80854f9c4a5836167ecc0a4c1aa65a915de8eb20ff6dee1b3005cc2cb5cb94fb12f64bc010cc382b068ac9dc3cb78e8eaad7bfbae4c8527c44083dcccfa2916fc54814b3d6f37033dcd7c8d56efbfc358af36d8c39eb725d09e74be2cd280ad85431017a50a8445306f6a473da9edd363b7111946dcd03e8cc79c030c6819aea4927f1975fb991882ae05421202024f1c9373ddd32d66f30c3933e5c209af4cddc4b485ce2474a7d49e3375867ef0c6ac721a643d578a44f33b0474c7ec0d734d7021fa5a0fded8b3c2cb03d451b4084e5ce0ef62330880e97234dcfcf4bb98902602aac8500bc367675018b840a0f4859c89e37ba7eba8583ddb60e08f2bf0e2cc60fe110d51c07036133c40cd98b8c9e877ed386b87d114449986497aaa3043cd8caa74277b0abaa6efe6b837cb873243c912a708d3e5de41295574d361a6fb39fd90664537ef8a13cc7ea3ff2f42c04c5b9593d6e34f5759f3b8a4d855aaa6372f7554a8ca58526e80ee5d405c265547c6a6de5e534e058aed9bc41f3a34477e093888b1630e6e3d71a79879c7563705d9ab7cbbe296c56efb9071aad4972f3519e096cee67107f47d32cfb3f484d5fcba19206d108ae66c6c62702ab3e0a3bbe70755b97d1ecae411710e84ad22912daf8a86dc1f3835c556b8d6fe83888846ba8b230a5f41ebb2684363220f2b84eb969878e764674b0b8ad64856af7c65513493397562a65d635cfa8290a037112650810d1e94591e69a7bbdd1f31528d866a9033e8e02a08ed36abddaf1cc74076e7e449fb08a90e247a9dfe7070dba8a929098a3ce1843f633466a2634b892d241af0f51ecc0f5effad44f7c7706b25a7e85636a1c67ea858414bb2e71cbb519e53703132206cb79f6ff3db39a90300fca172a283e5ac43f67d8a8bb9efaee9c541fa4086cdcf727ba0820485857118a963f6c2606cac4d292f1e4364d3389b03fb817974a323240bf986d723cb7fcdcd84bc7d4bfb37d3d94cb0818b569e92cb582e8d4a6deea11cbfcb3a93af11b9c59b71b3afe3f96d4e1550d2bcb082c89e8edef437a51c719d2b81d6ee77b5922c9da992afbed3de1ff76b7fca4e5f9e6afb6f175053e4fecfdb4696181cac8d040134b9d2248b9035cb9e2819711983d7797abf2d826a893c9ec78128a551a4f02cf1b9f5a6e1699a2f6abaa499f80709f42c0ec89deb8c828b35142f49fd0ac247e09fc5dc826b20ec840ebc858b8a265561cf9f616862f02f7cce26f22dc285646c1a09f7777179104d1c12c5f6624c3a7639c18c9ca58963f6db0c36697a542451e7a9334fdef9e2853c175d0ca93ee009d408a9dc9e0830b620f1adf11c3b1351b762d8dce5d9bc71c108cd154a879f277e8fb5fac3a6e7e538edf2545e09c2aa3737fab0223ee9ec65ca5d8c11b9e1a21c540d22fb2159f1a0158c6697616df55bddc37a516438b718261e700485e7a3a62e3b0d4e97b41f2b7e834acda632b8e9fda46397dbd75ff3761c9fdc2899499bdd9dd0f1df91b113e90c1765e27432b4e70270e380f6fbe4f8759e8aab00c7ec6137ef8378bd8f512e7217784f87b6692f1837e75825c0718bb8db0c60f82ad883aa51c70e68f4d37a2e5e8655ab792b46e1243cbd112a29573af7733eee36788f6e4d7b966a68a3874d0f6559b441d3bb11a8e1b4e1859ca11005c447e1d7aaa9f6fd6e0f177c1bd0d15d05312524edd18fc2e233698d35a0f8fe70d4fd43e3855cb10f0d9101e37f3d1317c9d7d78a57a15b736f759d8eddcf1ca94e00282db8631f8bf2d2a49535ba858429748df9b8dc592b9545fababe496bed4bb525752cd5e338c6e666f8a3961df74c29b8221d720a1bda05fdf01f92d32b3ed9ce8c3fa70f21ef30132cdc30bd2ec9c5aeb73bf712293c545744734f180b327a08a6b4749273f6d853429dceda4471533952ed47b28f78ccc91ffea3eb0dc56192355f64d36dd001e822cfbac8ce9e2bc98d9a56567d77064e60713a0e7d676b17be0d05cd181d0a9e101560d4d60153ac59acdc5cb8bb3550c27a39b33c399aa54b488272903f97a4e3a9842b30de82a18eadb3cd897d4bc92a23c576d780a83829378e15248c027d1eb76bac3f1f7f0413cb7a5492a9c44a3ee78d42293483983a7d1e90fbbe277411992c034b649c8d63054a02b17d97398a87fbeed698f0e890c479b2468ced6ab23a986ad6c41ac712b137afa93df37fa8080564cbf67bba235914d7a8f832fbacb7f3d5ffe2097f032e32585a76a9aae325a5cb121619344a6466696ecbd11d656d9397b4e2142f35580a22292f3a3d46494db1bbcbcc000000000000000000080b161d212e
+flags = ValidSignature,ManySteps
+
+# tcId = 36
+# signature that takes 16 iteration(s)
+msg = 6c00000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 3e41b01c01bf6603b6d0eef00cf02bf550767797e381cb6530affadd09100fc963e864c42e24059a35b54421dee314dd6ec4dff8c13e761061160673d1a94008b1131aaf1cff6cee99fdcc7c79991723d46cbbd3d9e891972c9d5f52f20bbb11c54e5ecbf557332c25c9b54179e6064eed210479dc6446707f5204aeaad9db2f8f21ed5f602965bd137982ab5132d9f24caeae6bbff8ce95a4ed47f63d7d258fe1760d8e8a7e4a12db37d3ad11131605d2be5eedc250feba39574bce461ba88a0ef59cc7ac109b76c83026afe2f2f3656f1ab477af4b49eefd56c9a00ce804427d78a5867ec497f07a5c488762c8883b839a584ef014d91e909724ecf77fefb2fa3c68b548deae9b3efccf3eebf62a5bd76f966f7489a71d85abed7c06bef1400db6f188aa57278a874cdd8613b64334c59416d1b64b121fd2df20bbaad74c8136219086fee3400f6ee37ad03fef16a9bb7579683ff421e046f9cd407b61e9a8aed130c60596de5be4ae7fa50667db07505af533bd199c12128c03a7d740c0ecca1aa7f33dcc60009cff2b6339bfa041fa82032eed9b2021037fcfb00c53c096f608fc19fcfe5fd0625c3bae39d1ed3067f3ac10344eba67441919cfff24c90bab23ba36e2c835ca1059d762108698cfcec610e711513060845c189c507e34a3208fff884c8825c4ab3befe08f36e378503612f926fcb99949d9a2cea0b2fe59542e69f1c8f99603d10c02df15ebc4193ef22cd45303d24ae70d93417e87959e209ae8ae6618d2007c281ea8fa5e73be5ac16aae20f4b037df559835b25a80502543709916bf1f20bcca93497472adf33b43cba42edfacb51d3294b476db006cdb534b0e0659a90a26a9ec68b3b335d461a613e2f03e94aef417983af6707a543ac99cccc341b540886892e209f333d4426f6dc83210d602d357ba70942506bf391c747a86202ffea712e7f0448105cb61310dd1fbf6332ba0d6e27e3ef22cfcaa5834df1b7f5e8eff50b4aa7a3889a0dde43d1b09246aeca8bab043044f7daf2f14a61b7fb71ac24c804c07619f31b94fba83a586a9be34706386683e5e3965ff4c242e524bd4745eecf30db2865db5f217c4f9dfe78584895d4214abb2b7084d7bf64363dda987987e0da8cfed427c20e83bda6550978d35e995368e6638c055a971e7b8460f77bf59021f3d3cc4edf36a44ff18b618d0b854c5c3cd1c8bf1006999c99def36fa878ce03bcb01bc48e1b5cbd975c7afb9d3029317e4df17031d97315027dfce18dfd16ab5012eb0a24876145c0e2262627582884b18619b384ace8fcaf35dbed5a95c38096aa006a94ff6b88fb7d800574feae49a7c9a8b29c36ead729fb194770e5202c5eec7071541090c0315493547da789b15f2fb28ade9354e0b0952c75541245dd0d82e0cd553911f2f844daa2af5e34dfd2f886559b69f038e41dff53cdefba8663cd4c3b270e41ad01cd9c69d84117729d51bf9c0b8249a48a00ee7662fe0f45e3f522b0e97547c6d382c205c47a2711d20cb8a6d18ed6a227c49a2fe261e9cd5427acb8f8b09477791cbb13c161892891aec718a2089181dda7c8f8bf7774ce109d8aa4bbdc6f6451ed2eed41561d7508fdc123fc7018b67585f5f7cee14645dadb2fb1b5d6de80cd5c5900372400164532f1186b02cccf8066dad549b3949714975cb92edf3f98df302ac01e5f7ee254ef0d76f3a5afabf805e81d95afcfd39044ae1fcbedadb35e737a7277dd31f9cb5c68f0306495b5981efaf676da2d28dfba12fd87625e14a6757e3ab313586c68dc8ba7ef1e90c521fd13e980fb973210ac36ff5c223cc258241ed45138b7b8044fb63e8899faa15dad544f77955c9dd39ee11545a10e613f09e01efecd048b9b61c9f89e10acf59c4fe10e17f276c0d72aeac60971673ae1b13ad5d6ec116dd92df3e0d6cd79c71893b812d1ebcb6d2e32d3044dd0815c4aef995486eb6a2262d5ade9f975ba176bb3be9ee4a0bb2b9b0dfcd679f3772db9c7e5219ea538f1bf4036edcc9e52623c9b209e092524d023dd200308217b7ad3df4aa312ee8d503fbdf5bdcc6578f32f4bd292f5e7f0751d6e18f5500ae5013291941f20355003731d764e973c17a7120daa0a790e5362dc13ba377aefdb1e2228ae1e2bce9bbb66661f016fd184973f1b156bb2739bf4aa6cae8b935273f8e821de354a85a21ac92b08b5b384e4889ce5adadec098a2efd960e407f6c1c5cb51776b49cba25454633b0d804dffa9adaa22a62475feca711f510dba1b927452948875c23fe50eb04af36960ea8f322992d48cc136b2cf44c4fbc45e84bfe347a1136e11efdc4ec4125ffc4feb8a7c2a832e29de612ec28ebb59c3d82d45323fc35b1a0136fb18aed7e761fcae68944f6bbd63b5c66621205c525d0c409d7472c263e8e1b556aab713924c44000e347f743ab9768c46cbb654d699bb0892f3461d5a8dab4aed8d1f0816fecd297a09d2ea3d578b74356709c5c019e0c6eb44cb9185b96e78193fe5f3c19437057ea356d8f9af450f5bd9c230fac20efb37341809228116dc5676f43cbb970fa1389dc8bcedcaa0722e8dd0aaf54eade137e8f18d9d7341867fc2799d05681aeead12903857ae7046fb335cc290e5756a2812ec9925ecea01919df31f0b99ba516b74a1f29b17ebf02de6b712a12786b8b280cca0c8c6673ab037db91612d38b48a1a4d3644b0b52a4c3ce262edb5691296d2d53071a14b7227e1892927089a19dffad11f1f1bd0c25e6553541d7483ce277a96bdecac31724784aa9d933d3dcdd3f42ca1929663b5e1102430d9ae33b60421b37381ebfc65c4eb23afdc533170018ff2a3009367e32ab9cf83d806dc6fa796de92476705eb434075206e0e8e1007f94dfec75021906fb1ba90cb1ab90c4e726a03f8b1eb40e0b6cb781b84d44535945a2caa50c0228f1f63509208add3951d6fdce948d316a7ac5422db6e065928bb32d495730ce8c3e78bb7b909035f90c01e4b60bcad19224441d2495636a38904c45b98e38ea5ffe4a4a5dff4ac585a037e129a5809a864fe763e21c3bc35f026bd61cc5bbbbd490465f66dfd719faae6e21836942f9bc56fd728dd5c835943e4289bc83e5eab913385aef4c526f42b9143c3a430b399cd469395c13bdf91f0b61e1352763321e439a15f464df8901e3eed66788d91fca51a81fdb8dab7a0d9b67202b98412f39015bd390496e0b22209353d812b8d4a458c2e5de71ec5c17c9b034d892855fa70f1199a942c3ee4835cc920603d2afe28f51259892a7c610774e4f77fc40739f6bc954dd7f30720054dc4a9df4f302ef6fc3d379c67772cf4a5a6aa6024a2e7b60fb430fdf2a1f1f44ef966f6a731886b8ca6de72dbd72b648af68fe543a7534fa42851c1b498ddac2b6f94a18009fa03b976e5592a818e87322ac344ad4e981b590bb57980fc903bdf0d84a23ebe4eeaa5a658736c7b91a7ea31462a7bef3cec35630cf5dd82344b34463eabe9c37468a8cddc9db577365cfe061bac2aadd6a339c35caa61944bbd76d1c5f605399b9c60897b41ede89d4392c9881d8ef54c5b623438633607c917e5a148f91f69330d2cfc3a07a385fa636b1b176fd2099a8532e517603f461e1291b65e4de6c534d6dfa3a50f9b0cb4358dec901823fd3fcca7a1296118b261f470cbd2e8438a6debfef71787cfe3d9fea869beaaefee5159c7e0e3d98e8a2f4dfda6a42e01504c04660ccf06c249736aab24968c3718037a9b693c3bb09f3b7848fc70c60df838d0080595acffaffbe8184771615896a42664c3aa7a25c7365d696a23644c625bb964b699ac048f78320e064140ded9c3779cb5453326b7ffb66c14193420c46a16537011d8c058e5689b584feab9d82c3387d5cc9035f58b7f9d9cef7fa4bd8fe4118e5c8aebcb1bbcc831ff5cd2430ab3b90393987d7906d03f92374eb3bee8c65ac043b038545da445861860b59f34a28112750eb6449c8daaca5a3a8dceffe8c573ed9278938d6bc47e8a0c0c645040e1610b39744391a9191bcc34e08a31b9abe1ae69ad9f141016fcd1b7d4d5b23bb709b1240b3b7a9a1ddb622ecf276ed63f1a92a184a7cb80adf9dadee15ca87972e530026be137cde18cb59b0232a12ff5cda724b21342108ceb83fa30dc50af8b214e638f0e88fb2e11664f6b14ed6421022661dfeaf0903f732622fcf19375daeee2ec601d3e3749c339ea85ea1f02938f972a0ae2804cca49aff7ffde527d084e0aeaa45fa91660063bbae4fa03c3ebf20d00a8b32f17c4c1a4672f66b8146fab2597620aa8bd9ad43b7bb238c851b3c37e8551f6de1a8fa41dc3082dd0d202b75524cb9685812c9756ca8bb42ed74175a9d6e70d904713b08206b1cce2c822bad661634536f9f51e753602cbe61fa783e3b6f0b84de0ca9b89b8b9ff8432745b45d4f38c660529e8626ad737c76810b97b89602fb9b9a8b8964bd8c79f5439cd1d12aebc7d240041ad00cd244ebf266a3b2a964d6371b3bf6d676f5fd97c1a514c3ac26c0442e891efa56fd67971ecd81b90da6ca20fb2a6e83aae5581d4db5bdd28efa1015066788a90d1dc1d1e253f5a5c64c6df0b0c3b588006cf3352606290cbdaebeeafed0000000000000000000000000000000000000000081116182123
+flags = ValidSignature,ManySteps
+
+# tcId = 37
+# signature that takes 17 iteration(s)
+msg = 2400000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 45f7b98506b52cf17ac1ca661951dc3cae6637b2b532dc3dd3e49db1ee098bcfa20be1b6ef9a4b278589b8e7c4cad32a16c5600901d47f0fc06272628bba29815f237fd0839e079f0fe6739dd45fa3e5a93d7d1311536c1daaa2d14179eaed2a2933d17825f88e034c9be9cf5f5934ee9201e3496a65e4aa7a2fb18cc323cac3a1997cd9e953654fb504f1c9dbfefd35e09aeb6613ab4c06e571a782acff038df56a04e03ddac640909858e543e9ca2015ada794340f3b8187faad2c088e9a18fe7087f8bfdb3a9c234daedacdfbffae1dc67e04e429555d53b42790fa1735e788d930889ef6618b1e58ed5c327ea6723f2c11f1f466a9c145a11447131dee81550ffaccd5663a5a14e25f21abd330f71fd7405dfcfa93d8227b142cffe58d575507da2c19a631b307570e2783dd4d77e73ab2639c6a4364b3a2b1b7c92d93366f81e7042f2fff359b78630f6c3203b1c88ea9bd0fb7c732f3e5753139c8f9103480e77c57a6c8705ea245b47cc0e64e55ed2246d45e93cd638d0104fb43806b329469e2dc4fec7c9527b5090a47bdf0004ca0a6d4c747df14e8eadb88af3951cc2fed195af08657f35ea1eafd6bf53755b4a66153d4f8aa62f1feccf69f92ce4d5338c422e6743c23c51326be0296d80fded7d5b01c54abf10d530ad0f136313b3d19e55c5ab9c584b80e83f5dc99960392359a6fa718b4d1d6be467de44a8e6678d05d0a1261517d4edfea6bf90af2a80a11fd9bdde875fd340aac5880b201e0a935f58489eacd10f9c18597e51ac0604be6a5df0fa83267bbd28827668fe05bdd26fd7cf09a2c8b3f42df35412a68cb3b45679c76e012bcb7475522234d0c50845395c5cc896a336f1e216e8c62a5d65cac474c8e48f0af8d9f160f08208f196c4cc4c9d2dc4e592ef1407ed6da5471b0622d789300259ffb8a4ce75130343ee0215a3f501291efb8ea7a43b0492264157535d79e8edf106f9100573e486915e54219c989c40cfc6bf6f058f4a34f952a9f10fdfedff8bd173be598f2bcedff2ef2216386cd1eb93b9ce9e34179a29569da669b641297b3874f7477b8d08075710c9bd83cc722fd94402929eff0961de5297e803067cdffded15c42f5febd63f61c8f19b24adc1f599454b8d40b5689ffe5aa759517be2d31c45f5024f8fcdacb7fb0147b4a67f2c2e62bed6d99f2ea15f36ca051b29082e64f5272c7628f923738ded2bdc0b58b2f92cc11046055351bd65b3efb9779d3bd0b28a0e2ef1f2e807b5eae196c2bae7b07149012a8d52ffa80644c04a0ea7cf5226b008e7fc40b95fb0951c2bc9416d60d677ce96f86a655b89f504cd047eac6c6d1905358de689b518cf8651227146fdfc8306e574a38ebb39d5db0697c8320cab784e5c0e71f33adbcc5e2d38894e6006207dd97e545f83201bf1033a107c92e6fbb63f7fa9d6d80ab96b2baa89c89182198e1f93102cb9b10a21db60fba15820c1d82244dae2dbea9124bdc44f69931ee97904e15200c91bb525b3dd37837224c5c52659786e53701dfb0ab836e5ab3924beebaead548b67119d63b52ea88def1f28a0492aa047c346e5b37240d52174f609d82a46be480145f6644647d814608d2aa2077e97227bf7265c1e8e41e263abaf76eb4b705b334d7135794e4e633be36c0eadd86c9978cb5dcd34d85f959fca840a837613f35da365530b4a075bbb0de3d5251138390db3e71da1377527fa3cd5b15fca0147f9646b0813a64f5090b5bba0c68e6fc3e328215877e7f1405346624f8ede7eefa90778982fff9ecf84330bff13e6ae837d891535be7e9d52f4c828357aaafb129f7f1472fd0ae17aa73ea80894496d805a8a393e1626b1bbbb8906f3bc1bff8beac84d1b678fc2fe0218c5983787e7f98db793731fe8b5af27c90691d9ce029db1c35fb9c27659bb09e01b22be955c64fa62cb3cea9d396c47a25e3ea80aed271ad3eba5e48a743538a86a9471d82003bc8708ebfc3f2b8433a3ef418da91281e24525266b72b3c975a030dd41d7a3f76b46eb916c951c27c6db83f56338e12f4b8d517f1f39e18a954ffb01a34adfbf8b14ac5166c7ece5d8ca2e236e35a339360366aeb62cf01242ab11d18a95665b7b3c29ed818e65e14cfd1443e8ad67e32343c90272ba9a262653725d1338694c77f12dd1234f735d0fc59b55de9733d6cffec59cc6c4b1027a7633eff36fd547b549f2d54577b4d3e883064e1f96eed8003c44eee8ade5a26d59d657355d17ebef8264fd07f006eedb3a0182bd6cfa708803d5a521a669fbe2ec256dc69e704c31174fae1f5ef3688a6f6a5568b872d7a61251640871327350d6e00818538f60c7627ae84ef6773a0024790a93ba11be699317711ca3710aa8c7f990c1533277d38d117e0a8ce92490758dba144de16a4fbc97c2ed2fd466361cfb07a63fea544a54a1f4b04780171672b8f9987214055d65309f1a41c78befe703501c41520c50afa576371c91d1ea726d4542172d97f38355b7d7cfdde25010468a63ab2cee6fbae270a82f99384d46322e84c883996ccaea15eec01f07f9728cac753cda40ac6954b52c751e375482776788155edce5a23507c4628ecbf715262209ecbd7ba91948ec891571c214798e96ede019b5c726c8447801bbf76d565e7201d95cfd47064caffa3ee0757bddb9ffac0b42f4a804f68591cc7f2e0fdab131a8ffe5a7c776848927bad752f01dcfff7241003e501623ebebf2ba036100f3dc5e28a23d18d276476ea014494c693d9f4484267f1ceecd7e1fd6c75e74b416c795b516cf9f99a26d669bbbc9cb2bff8de6371bd4ea97b35fb8bc684c464d185e3bf40fd26a8323d507c7b31d203aae661add13c6531f7b56635bd6509979de917268bc0b4489f5cfe2bc2d117d5f27c1cb0de2a85c024a555a815eed435b28fdb97debb7fb6631e72ca1fbf2de560a54496b7ea79f72e41edb21eb28e7c910f74c85122240175309be4c419c2a6886803313d30ef93f587b7fb0232c91ae6d12b54406b495362276afa922af02ac6357b04f817b56cefa7a326376b82aa10e35a113c61666e9b9c9206313318b7e1097166568239eb3455478008e42542608923174fcfca8151e0894decc12fcf32ec9a2c12b48dda7a6896db728ae779d856bf2efbc34d7423eb48c87e00f4b4727420cbf4555fe5a46c63505fba5abc590415dbdb842abd728638844934609980c95985e3f127178f0fc463f4180fa74b5a5cdba1039db813e68fc1de1334857b55dc6a6aab0c4c665a9046a4191eaad90bd9b2b112a46e2a4c253d28c175823334d49ba9e07e85634c24dfedb348e592e4c994a01a5fad53964b7af28f431a338af16f28bb22c645d65d6f40150e7f10897be7b8496601551cd5c813057f2e38a5d59f310b5bc1b52216c467d1916df0da345b3e2f0aee80f7079648876cd2cf3127ef3f18acc55f97e026e3760ef91531fdf81e71c0af14e24bd2fc1bd280f1cbf6e82495e31daa5dc2eb9c0d6568e9b980da14c4efd8e80e853bebb34c259762d2e5ffb918bc2f85100f8d60b0e2353f0fc1f7ed6b3ccda17ff778db565d2942898579851409b31c2ebb860397780174ddac7fbc5e558ae04d6d60c3098adec601882ea9902b33fc43a92e16db396e345a995e4487ab2d07354dc65c04dc873cf13e1f189cb19c84627b892ef586a38dd649c02f3f4efa44943387c493b5edf476f8e68444c804b2543d780b4cef1b71e80251b1cd64958ceb48cef6956ca74a590b6623c7181acdefb343ff65ec776ad12594890ba5b77d1d2d37d0a859aa3a0037dd70e1c0af0b686559bc2c619ab8ca3f649c38e6d0f2b5a6458743293ad38ad26541c843bb00c8005407bc74446206af67173f53043d9c95c2696cac7359023fcdd655dcb2d8afe068df092c8bcc3cf18e438c12848ef078383f6126a5f2f9b4620d193d6c8b8b9f1265c827c4a1928e3e523b2e653efa378800943cd3e1cc639ac3821f7fb44f5f01290a144f11d3e26244163e1cf60aa627d7318dc3f42fa9bbc0292d6fa61cf3e04dab98a3e2ed3a1cecbf5f2e08aaac5650343934958f15a2b915f0007c7a251623c93826f2e1a1c5c8aa0879af6dfebca672c616917ed96ba3c4757ef0714fd8b88e0f21af580e094d9381a5a8fe18fd34156627dea4cc154bbd9f2d9eacd1e40747222015fc93671d745488c8848c259c7a2582c0165a1afdbf46c9a75590cb825074fbd410410a94568c444b2b964d331efbaf82771524a6cc0bf84ac2ebd1f1dd0ed8033178e79f24efeb43a0018351b13759035120dae2972f6e314c671e3b918ed9ed89234dc27c17ec9abdd3b2fc64d8e562ebdb7c90902a0931d6480386dd633185e15459ca4471177281d636d6280433d260a51522b251579833e53ee757c9fa2f87ea1fd86af051381d6f20ad947f5981300bc93cf5c44defda770975bc1438b053537665535a9c764f7fb7f03038305f4eca46ecc6faa60247024d12eda7bcc626d924894e2c538dacdebf4fd2b64ee428f8fe30ff104d21b8e1f3897bb86c567a31f153d4e8ff3be2d9a539baad2335762a010b35bdfa1a1b5df981abc8e612314445dddfeff0fe49b0cddc000000000000000000000000000000000000000000000000000000000005090d16181a
+flags = ValidSignature,ManySteps
+
+# tcId = 38
+# signature that takes 18 iteration(s)
+msg = f900000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 6593932b139ae1104d35507504133096297012e45c9865f57a7bd6fe87a6e4a10394f43226ec77841ad10ece333a381c37c91bbd82a63bf87fc8091ed29a4599042715ade54f5c94a6a0e1222816e112b4abf893f0261fa5bb5d774c6c8d35bc1c447e17d3dbc25798803518cf6f6bdccc7e2e77d77cb8e6ef24564a36b5054d91836c7ff1958b6d850d25f762f78b0b55c2850131437ad677b28b8d11d91b16508fb91f250c1c59adc4a2415ca6d20acf50c90808b5a4e88c043caa68a9e6a2ded7dd4f92844c2440589540fdf7e48349ba43bc26c23da748ac9d75f0b188688541de951a9ca4fb918572c96f7d85a040655d459eb3130c03bdd865583a2bcb382819c0b59f80e6369dbbc0f5d5b40010c2490c87acb9b50ec1a998be39694ef591a3653e9364c52137881ce175da1a97326b33a969d035cea68a5ae85e5febfe82cb5ac731f88a0c895896680a9ae8b4e7b3eae3f7a7d4a10f4063374f317a1ba377a01a3433e1242b2f00c0584a094d157c5be1a864b84712889c016e38fe757d02c30d63dc4c5d087f8c78032865ebc87de03747d03bd6bc32eb9880e8b640ab46e630815d11b3e4d88edfa6a3c006b568cc9648d4df218ab91bf1168852d4102f4503061f96bd401491aa76ae8314ef47d7941a767fdfabff79349d089aa5198248cfb2524ca6489ad58fad9ca4fa6d7d1ddce1fa88c3dadb434cd3a1f49168460b36d9987eee09ef17a1a789a457b98098c85311deb3e7f4d7c2a84c1c78c2db3e9823a5b47b9e313458d8023357aec8cb45fd052da9404c731062508ba31db91cb670f474319948538dfb7b811368e4325b24ac77cfe1f852bbb33574f175738f6924aa937aecc41397f8e34d3c75f44d6e81714a98a552a766089b8b2059bfef2f890edc17f9d98df040b3ad9168c285be95ee126ffd3d75658571f75035a0e9fbbbe66ad6a85a80077d21cd19bf9490f3fabd69991d6ba2589e1b9a3b8e64f0b879f3d80119e6715b827dea6bf40c09c02490e60b37e13d09d963a841fa58a4feeed6982295eb6be66def030230079a61494fd7295143c3a99c9fa722e1081853153110206cc59ed26a77f9125eaa98944d26708609594ddfa78c7760a8e9bed82e85cd991b2bc5ef7e2216e0bca4d16017749a1579b54dedcb165152d9324ee63fb7012b2798da17d3700c6d8280c9d7bcbf6ea8467542e92c8a0868ee9d5fd08bd397641b20d7ba15dfd079bae86972020c1ea54a0e641665b9f20dfd7342efeaf45e2c0682fcbc75569db5d8fefe4e1cad4e8865e86ebfa52ebb4c3bb1f9bdeaf2f179980424a62eb40a07196a78069ea6b33f52dd50bc42245517346a846a63bf08bd27d341ebf829807595f12ee0b097b917529cc0c4dfa7715238eae6cf336fea3004416f18546262ba801c8bc255d325524b7259bb747c3f8ba51aad3fd54d98c882c3c4924c3d01c2846690608575ff94e6778200ea316dc7e802f889a255e642c94e43cae57c68ab4f5083d15921e4abdcee8d7c4e9b60e43cd3a234780c0a6173b6b132d2482c7750e5aea328397f6c87898cd2254437a37f3b0e65b3f448f541f8c455476aecb3e5d7494188ac19cbb5f2ec45e246e66202dab148f2d5c0d388ec1dfa17495c9b3d255da2f48211b1ae87b2beac31735fb79561a1986e80651ef0f32bc9181fc911ea32855b5c0cc3a4fd807c5fbae608d683e81b33544a42bf1f89861b4afa5585b25e57e651e5402fee091d6bcb0444ece3e2d907031716c4488b6391c90446da0991eef10d982578b6999beae142cd85aca38e1a6ff07553f3254de236620bdcd17e24e9fdbd1fd7d672799211cfcf4e24184cbdcd3cda0d8d03f3dd76b0e03606c63f8fcfeae5ecfccf4dee0d5158567e86e3a4ce343ddc3c4c3c1449f142774547f25a9538eb80191b239e510ab0d5dda4d1d2e8af018ce177c6877771a7eb5dba26429f7d9772af8baf8220d35b28545d0127b14b524aa5afedaafdd3998e6c3bbedb0b1ac72ad30073560ee23e85432659a3ad60fb95a731b98884cbe826d3205696424886341986e933b97d67ae5c0886979be4c32fdb94aea47b9a3efb2d062806ed25af606e5072bb4352f3903711fa94a97a86c2dc2d32e6ff8dd221fe07e539f22da92a158e8a8df936e38d02d53d1b0fd80b63b6ef40bf826618f962a1d64ff361e546b73d2c7d47a5c0697af49041dac576de3f6918246877cf50504b641a457fa8368caf5eac325e468b07ed722c8833c66a2fc42b1e3f5eb588190deeed2c10524f1b05c6efc9d72a6a1f4833eb58db9a5e11b4704d879d25c998236fb4ce4b2720716c9e66cb339cc2293bacb546260385e2d860d727d952b4bf07618a04b30bead38bc41d2fb7fbd49931e099806a6d255d2cdb7fe62204a0efa2a883c4424bbf875af04d1f7cb2d9cba74946b0022f614c6a162b643a212523e7e7c7165ef5d6400f1664cb37fa555398f988057fd8aa3918ef644fcbed19549db991d5ff2c99cb9f6be56f24aad7d7ee304ed38240a609df19a2b82571b33d9552b59ea540ba909ad64e3f8342e9c2855a3577eb910fb47b7feed8a23458434ee6e0b0cb484b11c63175685a0ce70e4ff7d03c47b7b9d1e18a73588e8546739e6e9c3aa0341f4c121e1c662acd77a614c4d87e84de703710455bbe937b30870d611ab1ec256a98fd884568b8e945b0d88400d87fba756c17311e3210235b3942ca5061fe91b072523720a4d32d174c88cbc65868b5d7d6113b948bed240d39d160dfc6daf8a43a1f6adfde7e71e0d593c82033e9f6b7a4baa0166d8f28c46114c57e364d70f0f122a7b463828cce26c1982f03cac961b42b805820b9af9c8bb2240eecf9daa990d61c42f01ed37ca723d092fecb767fc0ddf905ede494d7b2dabbc593360f569df195ceb1ce3741c08b60f5f5097830535c3049bbdcae2098b058ac9a50e4ce7fcd694d45b20e1e2fd86808d474480e131b17b1aa8ac351fe249708aecffa6a0c7bab3115ebbf8c43bc5382a2a8e2011bf859ad034d14d8d24d56475424c1b50bf85e534dc8b4745e79d6bf098fcdc86a5025284097b0ad564f6ada364837af4df60a30620dba25a3c5d739edcdd490fdf4b7ae7c67be90f6356d9b94963495d9c5c8ca7154b4b2ddbe1ef1c57d8e5e879a064c7c76be3ab86312657c3a971ee1f87735df1a2849018a7d1e4867c9ad9019729c3f43eace4f2916384acb25f5e340a534d6782aa7f348e37fb7e9895b9c4cbe732b4e7db46341f93cc8193407c0b699ebcd9b7e3f80b5612309b5d959a701d92f4fac5b251031db6f39d6339e75368fedeeb3dcb022b6addd77071af1f40504c875d19a5add799a7f0e5079fb39a7d5eb991b5bfc33f517c090b9bef48db0ae16d160f5a81143fdc0a793cc3927ad0ffe7df402169997c4386a6c01853a6c6d21f0607b209b0cddceba91af3757926195750de29ae82172840205bdc57051d7b273ce469fce06bad5f758febdaa498a3399d4e3d807bf62fd57819fee31a18fbf24e501b8990fc25253d6143cee42fcfc898dfe8a414ffca27356102762cbbbccc70158b318e5354801deb17bd202ac11627d6effddb25c172fe13a6a5756ad80b450839086a46dbdbe3570628747d733f4836f6d57c382a96c7aaa9d83c3a4d5b5ac4421599b6311219b733fd9601195dda1abe2fab8bffd26147dc555c8c8fa11e3ae36c3afe9e1cc98670d33804c0a60b2f68f98282c4b705dd9ad3b9270395470c90bc75a1483b946822a1b055852effd2aa8aa93a4d633dfb9022722982de780dad23dd5f2021f3c4c92e048b2e6aac3c6666abc2970a2684bb4d749b3b05539f90a9afab6b6cf5b05188ffdf36941974d5b622bbb85aa7ba3198104cc1111a914ae36291552f40825c0812abce4fc32a9d4e29d40a5320c29eb49905d907343646a638709ff078de5afa9b106359dda4d33da38170a5d2c17d57ed1dee1edaf1cbb019befcd4cfdab6e30ccc146fba1ed86968d7224630118137148c3d4add5e9797ac90bbfdbe1fb9b4f472616083fd8c1d72042af00c1960b4e9e44a820a50ae932975a0d4d64c0c26d61038ccc5132b40dad8ff9400758dac4f41cf7056069430104bb7de19a478b61340002562fe26cd831f6a7e662605d55dc6297b5c2cd248f1ddb5a272dd5851aefc0bc2e79c59a901e18fa9df2e3312a15852fa8deb733529884c7e0e6f4a247e51a2dee34f53323b98b2cf38966ec33c9b8d3697d056a9c505dfdd8cfd1e54733a85e184e46e66d57f726defbaf14bda8b35a1cf9b2a570e61a5ab1128d7b1ad791d0a6e0b79d51b5845a909513277ecb51774a76f02909851f57f4b7ab2ad8d3b3dddd74494a003f1afac6072d9abdc45238e458d639fc827270c37d15b605f2b91ab9f1a8065f5f65c0b4bec40a26f2fcab9dbb4c6c6176c4300e3425c0b4638b8dc0a98c341ffe5fc8e0e8e017f58647285633d0370b919449e1cb03e9e646371f17f85b7f837b9b641a38a3302036285e37997f144752059fe15cd62ca0d503062dcac9763514fd77751514e5a8593130f925012a63711a366dab06374a5e82e6ff0418434f646784c5dc063f558906426f99c9cdd1fafb00000000000000000000000000000000000004080f181c25
+flags = ValidSignature,ManySteps
+
+# tcId = 39
+# signature that takes 19 iteration(s)
+msg = a401000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 6dc1fa2984d614d5c52207db2528c102886bed81844437049d558dfffbb799f71a9dc992107666cc595a1981b75e49b36fa4a2b5d44a5d7e82a002c5b0fb8f8c811d82d19a84411ccdacdf86912db7dc9d0a8df1784a155c2ef1870d706583e16306106a0d0095aba7483e484c22c246077a743009b664f014d86d6358ef4f415e20d9a0b8ac2911756c72a1ab41c4d333f7376cd23405cfb5509e1885337b2e1f391b9e23517a0869f090db5e89a1f84075bf77b46115052a3cf25b3893a112a454a1b6c23836a84618030ea12f8bdbc2fd7cb2b789925b161f71c2e5300e08b9dfbfeb6e700cb09b9b101d64a4fe8ed2f1e66f7cafcd4985002f827098bab1722411845ba01bd994fe4b3b774096e353891a72414bd37af0df4f63580f5d3e72ff1c916c13bfa6828a44d281fed7ded0916e84f80c2bb41f818dcaef8eced887d7de680cd48d0e499913348d74f6a1e3fa81a10a079901a3db3e7fc6b55899714396204e4b442e156bf34915df34365f771b7c5617c7c521f88c43b03b738c069d96afb5a94b96071a43da76cafa8ba2d8f24f53fcdb7008ed7c73c5de081f9b7d2df75ba160009d05f1edd00aa44b6edac9e4f0f6413c743d925a70b87fbf551af7a3bc46b47814e02d7043e9b92bdaebf9dcd35c0e5a0c49bb53b6309456624e8484285d8e434d7fbc252191f69ca8c44f8eebce2d18159ed202a24b77e6ba9f907b14cd9308da274919f1c93b2ab6a6cd383b9b954d6fd1248aa35fca4eeae628d97d377d703a7bbe976956f5b46c2b884c6261cfb844bc3cb3f3219131e78aa2cfccb4276ab1cbcd42eb3b5a5cac311c340dd35198a42d13742290b0b23c5c8a7619acf12bb41e6ae570ebcc99deb82295882ff7cbef6fcbacd5cb0a0680d654be9b18325e8a11a33daf8ddb1118db078537be93a54c529673c366f89e2d497ec297346337fcf10b2288095f572dd62c1ccc4a830b2edbc6e9ed8905d688ff4333baacf412b8a95ff2de36b37a7d0d230eabebb0d128a1c1d9df3567f27a1beb31b822c4e8b535bb38539b9c93a8611a785d35f8afde56c09dfca722cf0364d99b9d0ca55dbc8f9d21cb69ae8b49791e4e1fa76bd6dc9c28dfaacf12add31cb150757070a39225510372b773459f8c86ccbcedd27015cf6daaa73f6698feb3bdc118b03211b261bd8574b116de124634626386f1a91092270d15c16a5a143bd0a0fbf26cbfd34718173fa19e466c9894d3276bf0c887b09b77a584fe80e0134bccf5c3bba566686c79dce66e554bd9229c74d4c02831f86142932a1dd449fb920ef675af899db8b99e758aeb3b32b0474316db13c9ab2665e651242bdd2b696c6a2f65304ec643808308934f727e3bd4d1e04fa5f52a452dbe966f7eab1ddff16950f211034ef755e1fbfc924f44f1e5b91c38ddc9cf755204c4f5de26b59a253b6c940fecf5db125d5d604a10e4384a0cdcceaa0ea4d4e580753b4acaef25a77b7455dcadf0f5bc10f948027062cbeb5ee2094e01374bad834af4805b98cf21f2b99fecb7b09827fcc295867d083b7696e42c2ffacc5ffb5d26088c468b1da4c967c97bd91bfcc5792cf18b66e5def3ee01e7e251c0796179ee3a38cbcdb656a3c6e4e1a970259b2d2e2dfc25e0b7d7229f5b144c24129d1ebc2e9e64875b298f9c36dcebc1d43e451105b16d20839f7e6fa47ed7076b603b5e17e78f979d01d5245c084e500deb96e6ade4d3fa2837cb400c02943dca4ec02b1367232f5ee56e70d7302195c2b6f9c0a213895030857bf8353c0a0d0275d0216c47f6b0cfb54471c6eb897689a64a5fc2d5b51f6be93b7ee0cf31baff1a5143a274779299a6b903f44f8018c5729cd8617919a13daac169683258a8340014d54f1e9cd82134eaab14c7719eedd6089da30a04e1d873b683316bd64698c81a6ca28ccdfbfcd69edabdc03da3bc84d51d770c806cb53597e8db6cfe2ece1df088f1aa6ba75319ebb27f9208674b19783da8d4d94653ea7a0ad7eeb0ade84db5ac471db947ed77c8b11de5ed23282e75360cb3969cb13597d66d041c3efd7acec993fe14fc6fe536dc5c2a6d0f0a787df072c2559f824ec077059b218541c995a030769896bd619b0e66240ef244c8b3aaf0e3f79abccc4a69387d2cfa3131b45ad4c4817d478cb7cb7264aa8dd46e5ef2d3712e3dfe91e615a321433daee0bbf20afc7051d3a5404dc66f2a02bb8fecdd280718712010115be7131d09737677293c635bca6ad085a8f8c159d772bd52c80dcc62e27db799b81d84e337424a8d8905d53adc68c8a222b6970eb8078d796b64b172965f55ba5c90c0fcb006865d7b1f0745e1458b1ab75c54380b3747da09ee3543a013e0b807158c9afbffecfa5a3acfeb185f3334d3ee923edabff723157c671330ecc64633a90347ddd77be425713b6c0f9b41a9789136c1ab74248afce4f0f569fc181cfc34aacaf3f1a4f7e8e84091a3a0849d87f3b8a7c6ad4afb7d357eaa0a2c915beeee2f1c6860ef3fc5f4cf0bf43c1d596b2c84a89b87d36c2dbd143dcbefe0bee5dfa04b7111895c8e2d9803d57270b347374c7a6e83957145d00e801db52df1fc37bd8e8eafe7a6c5b75a8c8fe32b6b2cf0e33aa6e7c4b559d2687cfd3e89cb9316ba05facd121f0921726adf89cc2094da9fe3f296305d700479a6ee3da724a39ba0f5990691436abb03e6813c4071913cbf3e70c6549589aeae288212d2257077c434f306c611b932c754d022bb3d40d91fe0479a9a250eb4689e118def6cfa516312c4ff022d1619c5aaa535e996af16016e670fc5931fdddd9e5d6105c385239a30e61c8d9dbe1185fa13b375f214965cca489d186a84e5eef189243212eeb570109c544fc8aeb4fd13227055878a15a723b70a27c8c902bd8f1c3f9d8865fb2dcc554f2d9c0e9231e691b1712ef052a9953daa36823151c86c2e1c43def615f4eacb610ff684957f08e58f9b07c633e0c71ce838bb8c742e0ecb301af85b4000b61e3b2f824e6fb283d310c69623c3b78e34e85f2c5a319b3e30649bdf982183702a4b3adef8844d960ca80ee90ac92237cfd5a67475241f0d8fd558df07dfb952fc54219fee76946c2d3cc498dc85b0b04b1d6b121d6210d5c97e1f75bfc1eeb7ca62feedb10f4c0384c771b331b230e951fb15ee5c5d6a2adff8a508cef25c6f7ba717a116b2fa8cd18e75fa5c711e036cd1c609dd5fb6f26c9f135bc214c13691d27c9624f711e6581a36270aa27ab4a2afcf84383170069a8c8eb7d9c8e86d328cb5eb95c81f3b5fd0738ab4f44fb0c71f543e66febcd8f4157ad4235feeec30fd3e4cf9e0967f34015bf5bb12a15fc46ef5d0af50e3ccf810ac4310fce50ea1fda53d52dd14fe8795645032c4976591123b74e263797cbc7e41af7be9b56a2195b4813a1d3438d83e3b4da2421746cd97f92176ed9eeb1ea29cb5a0b1629819bd7e7d40c963e629960607aaf96c2a3e93a9f52a37eab47b8c7611b61d5a1b9fe3d8cddb7acdc04d000286b7d8e09e8ae4e58fef9bf71ff76600bfd9c0a7f40a69d58c76459436959d916e88ad288fb4e82a3586b79fcd67f66b2711dfc0d9d140cc22c0a40f6fe46d09c12caaf56a45a7065663d879e8e6f12aa05e9265b16ce1aa2513aece0ecd83d15133f69a7c91fe0fd44eac29b22658d3eb16bbafd2e11647f0e1f7ce67168f5d3e2b45843defd6a4fd8ba901fb4950edd98a4e41b1bdeb1581c44694804ea07544c2220aef5c3f3d58f7d053815d280a202629dc6a45a931c7d86bc8256575d58cfb1bbadc473455fc22a7fd94b229cdb8ff4f8510c126887593f62040ded2894fb7f53665adb2467951efad062d30adad1c9c5daefaaa5748c614991887cb87b421970b6c061e55bcb2e2ad0dfa3c17e869b43ac272b04fcdf4fe29baedf3bb3ab6ad1a22bac0188ee3712d3db309e57efe5fc9b60c3b4fd2bdf287bbe16e88b3822f45868872a99b78265fc5f2c123e7520411ebb2c65652d01a0e2fea8e7cee2a7f667733e208f20a0ef5c845621cf4c2393f360f0f7a0b32d6b1621cbb8366c89ef90cf20919a6c9f5dff89803a50cd281720bfe75c7cd6e25d12938f43596e5ac23c948bf73b05e4e48b0135d1f3c59e93c140cda00463868dfecc077edad546cb99a54348104dd60886874cd680a38e74f515f3e1612a42bbaae442a80bb3af176a73b24d929825955bf33a1541f62cf4a00b7adfb0c7f20442213bf4a531718c245f8885b306fedbbe723cc33a1dc27c52052c4755ce2a302a412955173941c109f52901528739c58dfae6047d04845294d8ead6f94f06e33e96ed95222b1eca8068570aeae6afb5ee3d5d93302b114a815afa5e5ed4202a9bb3ef0ef373385692645bf4aa5b0192cb2834488ac105aefa23b4fa03fec0319b0565916791b50ac339942cd34e875354c27757f4a4aca0c4f0f2fdbb06869f4ce5e1c8cef81791f2280b42bc2d6884050d431bda7a93d2a0e77e72485bef53c70965e7f5cc599d48b7e00e5bf1f5c9f4ede54e56bbdd4ef28d7ec127c0e9439b09ca7f568e18b234943ad6991d71911e2070942517089d2eaff1f4e6e7dbec1ca498f99b7d4e0edfd191b40555babf8075eb5f2fbfd0000000000000000000000000000000000000910181f2425
+flags = ValidSignature,ManySteps
+
+# tcId = 40
+# signature that takes 20 iteration(s)
+msg = 1305000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 0e0e0793a9f00d1014ac745f73ee18458e19dc0c9a82d62c4f7c5f08cb302f270648d108b2a87a51c5b83e6aa54f4b40531f01bdf4f59315cfb96fe20a21bffe3ccb5aa55050ab5ae428308e9f1a95ce546b09b68d9a3036a04c71ff617dc48b4a3a732b4b688389a8249a7ff14a35d52b6c96cb0a6d049054de0f7ad08669b82f94745cb89798d86fdc0c2375303f5849c8992400889cf61ecbf63bb5343664f6f63854d3518f5a63fa55098b33943fa5642745b0a907c8af07685a18d9af65b121e90e7fd0c0cf62ed87b09eba0f06559ef813649a08a03c0819da5479dee4d170c17c11a119b6d9055151bfda6ec850b70939167b4d4d5bedf4e5aa19c380b3f87b45ca8b71dd9007450213ff67338a2631b83ef73499c4cbcb8ac6210f836e73605eebb09bb911f63f8dac03570c245b1826ea4ffed10e7d6934fe1d2e5358d52f18329259c05b1e570528e7bd160435a826e39781c8d3ce0b933d3ae34c33c09c6a4e535e3f0678c27e4da154ebb05039d3775a3bf948f579e8920b12b2a50430694fbdecb7ae7563631776e7b5aa3d889b3071964417eabd2bbc3fa551e28fd49abed8fe37326770db6168813903a4b1f4a149cdfaf2e49d88925a6ccecb85aeecaeccbeb94aea175fdc4eff8eb6cf0ac7cfa2897c74bf6c1bc5daa283398b86416be811bd6dde7558bdbc5853752f2651369d3b142394fdbafc1f2f8d1139df065fa16df69bdc9acd8497a89f037cc6cb6eae90292c7bc8f1ef5d89a07ad877334c53b80419f864031f78be57a82bd89d523126e9161a1a5d126e52cdc94831d68cb1907545c0c619bfa1b7246aa50355591217018b7227447a7d17b28324fa6c7ffa1f5a119bde3eebd11dbed6bd9d8ad95b4e1d7b4d673fd35cdc96631e1a86dabd6bb7b66ad5985bca8888d5e8e145a5b5f48953bead5702180a99b9402a5658a7e7929344fcbfb574beea901367a3dd8ea90a75b54b08c391d5ea6373ea8bd10cfc563733c4f533f30ba31d3c0e49e4a5e5c91d45d4d638712aa80892a2a0c5922edcfee867e2fbb7f18aa032c774e9cdbfa59b1c27baa14e932f59631afa69caba7855bd3746a12888d5a1e64271242dacb972cc82bdcc64ec4a2c146306f39115d5c824b71c93b5833020985ca099a4e937aa527bda8e69324005462f5f8431d5bb11bca9e4c59e5b14096cea9e40a540546efa18e1364c4f1ee855cc8cc564dce2ab8dd683bd9804b11d02a1f510ac98c120b6ba64cce16b203e53ea3d1bc69bec0d06a17b30639cd9b24fd1598e92890e88f7dd1397445db54ad8df5e136ee60f22ac090f2bd905765e810f54711f01c63564ef90cb01108b2c2bf1a6fb5fb8078d609117e111604a1d927fd24c18354ddc006f286975be3bf1ce5593715a8cc873c820f778e9a428e08fa3db1a5f52fab22ef5d16056092a6b1da23e3c64f205b3490f0460e9aebf80a4fe9acd31e5747431065f575637c8c4cbc5dadc2753b90e69722182a344d3b154bf35da62c1fd0e98921559f7d6010fcea31a79d36bd763cee1b2855dd05b44b36c4301cf6070408f02689bc75ffe264f55cbe06886019797b3ce3206654ad4995628eeec2db47a2bcd5feceb2f3cd3246bf162cfeaaec8abbd63b2e6cc441b908a3301c860a3a15c1b9253cdff625fcb6de85ab78bd802dc5e073a0cdcab0512a076427d7fae7b663d9b81bff8f0192fa7db81dc454f32340e200ba59bae4eab701662ca6453c233be851cde64c0a966ffc6012681dbc407c02073b9890781c8f484c295720eadf934c73e2b412b484ce4bd599a7b8718088c55433ff1a78072188e289ade5861bdcda6d10dc5c40f1c189ad96eb188bb46741e5ab956214046c2db868c8e019ef5a37d90b92fce70ae8e4a5339f612c0b8eb43c61c0c63f3a59edbe6752d05ecdc178a8a90059d6fa7e0da0bbb7984b7cc1ab8045095558ee505b3ddc1b3db2a78494436aa9334f6b3b3896d33e556e8e2b9bf728b5c53c204a964a697da252a73b8c120b363923aef38f993a3db4c24c9a4b1f10f444be9f87677df5ff2c26e419bf9c2f8e53ea2e6f1bbbdf2b6c5090dba385a5cf5652f9929295eaafcaf282826305ec5766fbb03ce153b32d49aa7a66752a772d2091568f1b6afec5e53dc2d5f73eda96834404bfe58fa5aa692f266d0383ddfe12da56a61f93933b6794af38ee9e31c3721c1bd52a6690bfa68948ba8d6577ae6acb3d5adef9091fbb7d4007aa8b96a7d17cd58987525296682fc777111ea979c9f3b893fef381c03319d7c6b9d4d523a0e5b98953830e46f1bafc94aa6c4c323d2a8a76ed1364caab808dd7eec175eb230de35e8d6f4ecd0dcf32ac6b1be9d7d6ac740f458ae7530a64baee19357ce5a3f106841d99935d1606d4ca7edd2d5da69594770eb86827ca9180713ec4df96de4857323333dcc4c3497e089ba6388a39450d251f39a1d2d6c1d6befebb7111189bea14c0ebb75b1c64eadc76d8713ab2290a7402e86c16ec2eca769febb9d8cdffa530eeb75854b08c52f69c1bff47c2f775353484527f2e3f37171d3fb44553cd6dd4d79e81574d01a6d4924d7b2dda910f438eb4c7ec938e5211ff4200305fc3e9659f8d52bcd49d5ef6ff5125d1f8096107ee01633e32f159ef17e1343af03076061b13bb3b25d4422f21b616393cd2d36ddcf96598c1d3f6b4e29258c94ffeb07410d1294c754f25131f68b4018ea155a1c800df5913cbb5c7520c7e33c3adb8e21fbc692b9d4ae00ce6e06df53cd3c13b1d12dff0607c423d41bdd53f4a632a2b80937ea64605e49c9694cb68e3f82fbb164964863c9d58debe663db1ec93382b8149cba27be1c79b2ec53396421a0251f3c4fd3199ea45c944e250d9402128369ff9d7fa48b0dca0c945eeba9b90539f3d4207b00d86687418dea895a4d467fd7e48fd6edade5d06434b9b1b82ebc0110b24bcf0bd4c58f9d7e5121c5863708b0382838423fcd9105e6776dcff3e914c5c425b85b9a1c5ee805d28925f313931a500e5bed7a4be914ea3a1a87e8b798702d45c6961afca988059bd23f04c38a0f4c3e9d59eecf1fb1d07ab1cb41b472b8848e5a149226966d540b095c23b293d982682dcefb8ee426ccabb3a5ffa070e019de02aa3f4fad228420f27a07cef98fe7cbdc676476ace8e45a8be1e282c136189d11df419053eea59288a16e0708b1124535a2a9d42e5ff42d514d05f344d75d26abbc2435c42daecf028c60621061565f6fd5787d74ef09ba4e1dd3f4043f0a6164d82c1c8a56971eb1ca21a966f80f67bfe32c2b3bf34e680a5abb3279c8e7c71130c77337d439fdee9f0589c268bf2b116eed8c6042e3def0986ede75a7ddb046be0cb9c2f5982485fd18bfd4af6649c73724b9c2046de6eab8c12ed5b1c56662b52d45eddfc9441f88d6dab41afa2c351c4779f623a6b3e4f8de8a749de2ba28447994c57566178c29cfe2d927d7be251b9945583e0d62591acd43c664cf8e52a9f96b08bdb914e5cd40aec4d9ee49088be114d7f1c326622262b9437d4ff41ab766fd164cdbb831023e7b8a4c2f215e9d412ead4176445c5661affeda6bfd4ee4d0f39304ecc8db068496674f89d5be493a4e225239c0dfa31b8ffb4a71b71548ccc1cd8adbece95d2cd76e2f951f6862aa265542696a0d78acf0bce2e20cbd1afd6339f33ca27efd6289ace29fecbf43beace6395634e3cf6ae7d207f31058739eb878cea44af09d18d0100c719241948dbb25943f8426d70c76011a6655e47eab980ea419c0baf21bf3c1cd08a6b56a95cc7ecc803bcc6caefde0603267954cf865423437f3af6c3d229382d4e6e4ec8699ac7929dfa22dfacda6846c632c8006c0f1c7bdda56b9acb231a52a532b2c5ec3791b3c3b7c7e507b9d0a271afcd983474ee55e56fe4e7cd8a0bc6e5756f118c513c9049257bb7251038866517c4c00be889772e7d42995686cfbcdd5f343fd3f41ec7162b61006e55eea57837c0739c8bf2fab9d24590edc3622d2b1c472a1c9a5a4dc63a883834a431f976f1fac01254c5c319cb4da867d129f007a4dbeb5626a9f53ce8db7044bb5e1d4f974a0cca9cf955ec1561b8d0afbaa14988f6d14c705adf6c87bd3f7416611867a61fa33368a20bd19f295c40858d9d0946e3da6771c41ca3b23bb97659ad5f5ca6f48342c323889bc3f00fa116b9eee79af395b24eafb213bb3f74d2ba57975564bd14bfbb97bd824f5ab3996bcfe3d3728e6d2fa65aff6ec874aa468d297f4cfd36fa55f7c9e9d8ce610ff1c36aa2c5b596b017495e298df6e199a6746093be6b4ed0737e834fcaafb52d9a0c37a82d4afb0fc19d81d577ad451edce943112aafae8417e29de50541ec0a0cba83ebb61102cb9aaee51886fa5b46f32f43a3a6caf58201d09466577619b369986a3af1d5ebaa1c0fdb699328cbc95879205b3f519cc235026420a163dd96e0829ec098bee25386a90971477cb12c4db6bf7f48f032e631f106441e34450866ac7e547f3cb76a0452d1c305b3cc822942b5ca815bca6adcf267d8afe7763fcc8b70e4c31999edf5bd25d42793dccd212193bd4e808373b3c99b7b81219aeb4d9dbe5ef0c16455573858cb8bc0454a7eaf7172385cde500000000000000000000000000000000050c141d2227
+flags = ValidSignature,ManySteps
+
+# tcId = 41
+# signature that takes 21 iteration(s)
+msg = 8d00000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = bb8a458fc151be6dd575d810ee1dbc1b0a0c0fba3b64d9282b33e80531e9cceebdd7f266d7d810d0e4ed65a2fcf188c79d0f8b72fb7942431510ed1a9a0dc5dc53783911ff8e486ba22a0789a685370bc44dffea387de0bfe7e610b769b3b701f8c544ca3d53df14e0795927558ecda480cd7ba8c0d19cbf954e032b253289c42c657cc18ff7d5ebcfd4ff5163e8a36f585ba1409f1f8f039f87b1ddd18170048a08e4366a19439bccde7bc9d220642eb94896f4a64b1bc3631089f71ed0be13b4a38c092cc5999ca9c4cf4a4bab102f26599f651133f51cb2f1df9f6bb7b9de9b4899a38d26b9c6ecb29efedb2038bb92e2ae3401d97f3ad3e1bca5601b3f897a2ea831e6a046a66c69a7da9c1e256da45ca11d4d63d3d5d9de9470c117a4f62f3774fc9c919a73f06fa9e27c440dd94aa19d52de6e53c5f500821fae286fea255486434930a444ad90a9eefd79bf9e335a995d652c7f335d09f7519354f01dab9c10d292dceded1c0db39591544a4045cc7d3d28e4da6be59760ee7a74e312e482ddac340f6c6f4e09db4df3b53052fdecc96dc7aa6d6bc160b991099f0aa81ac1982188245dd1d8b111186377f2f617647ecbae26f321aff3931188d2df051f3a4296e406790514a33080fddc43ea4418d44e8f3fae0660748ca4ab61aaaa58a6e2fb56b8ed389b44afdd63243bb592e0d531d79e75d396a007da95535df0ae74d9fe6b61f997811e3934150f4ce8aa292a0fa59f66c5141e3bb339eec3587b86be94b765aba9f2362ba607bac1ba18917ab7b15f3e3cc2270109ec0bec9d53fda5c276841d41f29f91db419fe91b7d5a2f04c5322a15f552514ab592ef54b59539fdf2fc66617f5baf1ac054da64f9064b43392d2d14823082151ae5f8ab536467543ed5cac30eea35904b4a737a11f53fdff7a5099e915b1835aa32ae57e0a14a781966d17ffc4b66c62dc4f35fd414ae0a22719241e863b60ba63e82e2b16dba8672fe7ce565007e8ab53687561c8c41dbd736fb8881c5fae17a28cab7c1b2483a2ae932b55e5b154d05b66c3b6db45a7049b5934ee5880471c3a63321b193c642e6ebe89c54f6e60f819dab75c4838eb6ca1ee80416dfba41e7836f3f2361fd4bfacd3102c1f28ec517ca8db5b38ae3f48f502229f2144750d5d93e4c8125168ef9ac066fab91c295d47e04a01d30f1cc7889e9f9911a1ba9b6d44014637217571f2e7bd371775611c00d651dd5fecdf342e8370a303dc7e4e936dccefe0c66a8d12912ce2fac1f99b45a5fba11a942fe927005ae7e9453fef8a926fb6c8c3c90d6ab39bda85dfe50ab95541c71d4aa5debe9b9a10b92f74f24d09341738e83fa7687bb97054f20bbad10ca1ca2f88a2d9f51fe9e940680785181fce68693727c4a39c57a108f37e41d35efc7e8249f60eb05a68c8b14913a85be41ae96e8b28a9f97541643657f13d6823535edf8ddbba95ea0768d98bdd126f9829025b799842e2b58be73022e16cf46b0160bbb93f97e80ca5b7b4c2581c3be3d7bfcd81a2399afac6e6388a9707d7fd7e1b19a56c786344195a89da97108c2b103ee87172be50943de28d95cb76722c070ce96383b4bfc1958162b1a066faa9d880dffb4b6c4a864b0461b085eff9dbdecd2a2643b1390bc3d5f00830e6e43aecfbd3b762ec023f2c684407e9928ffda93df2082231172f42f5b887f49454e1ef973275a865950259afe4d3b9dd5fc1d14f07093248364c37db8bab873070fb4720130095eb7e1afe4899ff806ad9ac19c09387157a560a98d1a68a1f0665087377f5e17477279c094ada07321760177c3261b9042c36c42060b700316a93450cf8dd280a0f3455ac8c1e0de4bc40aa0af63857efc77023077e7f16a805e909dcb2a9e60a43e7d5d22fe30f8f8a8291c79a2c08a8b5c3bc9dac5402e6e3bf87898496511be0483e9e11c69b6356740bf8cdc075f3a38f9d489ef3b7f88d51734c8bce0acf6fb5beb7a3ffded49ddf0bf54d6958f4276421bcfa666c273f3a415ff69ca61b736eed168bb3795f9ce647cbd413b027e520e22ebc1500671bb11f056b3b41865690ffccac3718a597e16b217eac9b4fe268520a5d342f1de7817c3568e6249d9f4f014dea7b90730dd06ae4acab0a5e598fbe72b30fac6355068a74d8b311348210822d6f8409e77806a259fe4eedcb5934d2e09f06f2fe82274c942058861d5449e6eb923ac947d06806a1f812b6e4ae2e0a929aa244779c075d7b4cb9edcc664679b6be833c81d5c688517eff2d10eaab41f93e48b7961cfabb5b9f087f5f9ceba4dd8d1aedadcf5719beaf1ea95398634ba3cdae50ebe9e46928f4a2fd153d38ea9af1cf2e7b832c19712ec57dfb516507dd3b12ae1eb82035c1e3347ab97c7868142c68493756493fa571abe71c635b928935eb50cee1c25a9bd60e88258dc777dbd7f96e751f1bde620940d8659730a4734c77402b7664d5cf6d8c562d64284c637456dbccdef87b25e96c21f9962eeceafe99a9d6199cf846a3798fdd09997ee81cbac964ee68bb34b29d9dda00f251f7e2311bc1b6d4beec8bd4d3035a82285c2288a90a216a355e3d1064943649e5fc46011dd1ed2fb9289997afe982093619a6f72d4a6b6093e1303ee88c74721e4bc7ea6289f437cdbb9ed0a6cffa5d7d918368b986e070c3dccb55b1970457d189f9b59ab8e963e5e8337292d4c71445ca44241f9696d1ce3910804fe7df2dcf5854fb9116f96a1a8652c8a7f2c1ad07b07b1da41a21148bb9b24e8d59dd023e58470a188453c4cd9ca7022520ddc6c53f64a5ba9b3563a7d59ad317745a226f7f0d1af6f71a5e1816c71e12aef1e8a60eb67c4c6371a191a1199424cca295a9ecec99bebdd1d386e955fe0d4b4e7b853100f17e09d5e12c8ff569e67bb7d118759ebfcd8c1e954a6cc351c39393ace4d531b42e8aefcb533020169991231d525bcaffe20615d0adf79f258d7b3f7872e1c39d2ab3c616ce79ad8054f0c55241ce148437818aa8419231d72453dd1fc28790b724fa49dc41e43b838d83d8e6978da66038258008e72e3009ebaea2624af497309d9dfbe809a97a67ffe71e68da7550f12ce66e333a7196f5402dbfc35cf9c021b8150c91b535b76f3f6cf2925e2b5c7dc9318a34184bf1e84b06d8edf792f8a62845c0e4a47e5af5327353256a164b167a895b6617a503de6eaa46f1be6a736b4a5c81eab9a6c7c7e78855b44d9dd673f91307977545341926d8444480a44da1f7a38cc85d266e0b43896db4e8df8f87ca1994160090884d417eced5ceef498f3d86bc482e6787ba9fd9f95fa451a9e49ca51e72453802937b2e1817daab14b6140e1d12d4c2cb07567fcbf4d7deffb0ae80859ff3c3e07f7494e16671ff2c2eeb921c52fe21891ec58042bfbd247d6576da111a7b40d0d68d7a66abfc133b55912df8f85fe06985cf91dfec0c6cefdd646ab64b30abc9f402e39f246ca3b90f9b3c7791443967fc31c15bc38a256661125082ce326d61ba7b9ba49614cc584507cd974baefcdce6564a0332deff73db28129a79b28883878e738551107e255a719aa10f5a71bb8ed70d053c7a0f64ff47ce85239bd8965dde32e87720a5661756d2bb890e0485bd3ae22f4f030a9c76da63fe0d27146f16fb02109dd247a763c74359f0ec63dcfd7146eb747e15be6a7be46b30b1c7e91645926122674a722cd920d925999a9d2bc293627b5395143769c26e544e87eb076124d4bfed589f9a0b5cca4a7f52f16da6cb35e3956cf758d0848a6715ec8c3abed15026d40ba323940f85348c6c7759c5d7fd0c309ae46e75fe76042f2bc3884afb8972f87f3f11bd1815b39869c1ba5f4e35569786839c792c7149fcba176623566d29ab1dc29f3bf2d374f24eee794e2003af92a90b06a5ca67b5ccc7916e9aaff10ff1387b72d72f6edf6b450ec2a47a21311f9b4b0edcd468c43c53b7e6a233ce134512ebc742b9e59f8be7e7605f2df5fed2ed705e679cea3fac404eeaafd03b0345764aa821a40ba383d696be7749c5d35ea43519b789c06f316ccb7fa468f5562f688906442c8dc36d3997e51c14353e6022cc2b882e8296ea274808bb87ae9e62c307c65cbf30ddfb2453497d58075c2c4e6034dd8261032924750fcffcc5fdffade784907d7ef657978136ab2fa29ad20c9c83c3e348a408c5065911fe61e0c439a1d7ef058116934f6497d96dc661f8ba21fc255c021c7b52b6aeb0f1d2d219ae131ab0e0bd01967698b63b859c14b3252a7204da5cdab7bd2f78c6cb639f024c92465635a41d115ea6d042f3722d605e7be2e868909183525ca088719876ffb987afa2f0bc147026e1863c528562619ee551c64380ca2d8c315803a4098f3657d982397be8262f7d34ff4c05f45b6b0eef3d7c13fe542c851509e08b9fcbd9e48d1ec72c790cbdb9dac3fb8c7a57c8a9e2eb14ea840e309579b0d04096ae896ba2f3e45af7939dfa922b96d4b76da3c3b992cb72ed55c2a424f371e020fca507058ca189294a772db81e05f33a50282c689cecdf4c28df5e17bf6cee74be67ab96d7fe26cb1d3a0333145557a9db5e4257b1977bdf7fb41496b74758c94d2f7154d5bdd0e2c4a4c7581e600000000000000000000000000000000000000000007090e171b22
+flags = ValidSignature,ManySteps
+
+# tcId = 42
+# signature that takes 22 iteration(s)
+msg = 7d00000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 7b2fab305f92793314f5aea42c8544b5a0af4ceb7fe57f194c66778c320257377aee97acd7b9fba4c8fe18cb462792452d44c507f7840af2c6380d1a25254ab0874ff347626511b93723bf76abb608ebb0fc056b453473b1d2c6d7264f0f2712ead95ee34fd8f620925a36decbf3097ae92f04dc9981e1cb96da9fca9fcbb41b64fbb617a21b17b37661ec5bc538f00a1acc07aa667482daef1055dde874d59b14327dea97ad4f97fb1430972ac82360e9fa070c9b3ec2545037cce1dabe34c274c1894add81507268721c2769f19fe089178b400e55822981c2f8b9f51f96c48d83ac24ff55ed8f5a0645d122f1c17da2bc8da50cf1914d2900b1389ab9f1a00b6253a67bf907641ca5385b49a07ad3ea0b37e458e6caf5b4dacc7c74dcff22ba677f23ffb64e9c1e2edbee99e7c73207d3f288d2285a7c0e14c3b2ddfca88df6934acba9857083a131d50c88d8f8ee8d24304e5610dc53574b8d14198fa008435d33d03c42e377ae3c627190a1c6a1639ddd98ac90b6b6d0bf7a50672000e0d09898f21c705c9a5de142e9be15c0c0f9b06347f61a0ae9741aafce0c418ffc1908c8c20b68be48a6d5c8f5c0762932ab3e73a284ee039123c2b9406751ab6cac8c610b2aaafdfe539dfdc1e800269a0a1fbde3b5bb03cd938dd08160fb8f236724674d016a76d24832f4857bcaf7faa8daee394ea5d97cc12c6de62081050c0d0f46b10a456ddcd12e352f9fc5a9776087fc6d16341e0346eca5cfb3ded070e278146b987ffcc9d56396fa970d22a20491ebafc95ce00f5b6d8ead65868bcb6dd6f31bb2a9d85b7951f9ce8a8f7bd7da2753e54362c8981ee4714afdf398dc258f3f0e485db710f0393c60a301ab97d801c7f268385f5200e6bfbafaa69ccd87fc1eb0c29a2c6f73820d6b5f561ad3659e7b895a9ca7798422a673594ddbdcd17abab2afa6b7f5d5c0236b33b3b8e6129d9a40ed534bd158d436bc3279c769abb3bcf4ad5c4e864f2461915266ad45b7bdd91023a09e1b3b2700d8294472e1b4a40bb1a57844183f80dac369ef701a0bdf2290f3283a681dc432b396451f79853359ba9df78e8a6fe6a1ec4017405efc4a78199e3365854a1c94ae7affec9682d1451d1a219c9b9b17ee6726281c025479e2dd64f835ae15aa2da8c38f4f07b014b0e71e88a60b95999f77aaf33a64cf6bcb1bb93bb151b1762dcabd12201a5a1e7df878b0c1055c2c263bb10952648e1429839fd180c173c6270f7a0c43c7d1c0bcadf81c0400f1d8355b7d0983802878d36ca0dd0c251477c12cef09f764cb261e171c1d8052491e7dd0cbc3c2801a06d7cf6a67d55c3f9633a8a2d74a1bf49905d29c7f574d2a2039f41835dd6f7880f3dae8b60488580975d9b19d1c2d5b64f91f01b22caace58142ada05cf6bee8e6903362c18296195b1177b1aba590e9865d4df042a33930180fb4a99a7e0ec262a38f739c098e9b48f8a6033434bd506e68c46fa0a0e9dcf7562e27b48e450c71e33602200192fa91828ac40854f33ecfe8ebb0aae4ff1dc951c3ee248783650d9e4a56e7d913e5903abc845b970397d8ce6666f410505336e7b906ba63e77470900397451a8528ff8c376a70403a4300f80b5573921f29ff90728286022f6ea62f28e9b6884f1c6e9d07b3d20ac2b281596ba6a2730b9cf447cefcd72bbf8f95ec88d0565e711c286a8c269ae9ceb287ef6e6d00502a8a89c766a8c39d93c3bcb654a07acbf75c7ec12b8c1c494b55f9a41195d3fd5e19bb4d93cbc16ca4f05be0a86a9aa8994d12584be162cc4d71fa629186af1e3d3b74e5c905c8be923dda76b87071e84883da2585f2afa64f0955434a53f0c0cd63761291c88a4271656e3083982e9360e0b76e18f6fea30736cf97f59256b5739faf5e87c51bc76a8fd06b4a8563a11a3f2466249beb3eb8fb8fe8a3d0b9f06484f6fdbffd9aa7919188b626e8310f9d1c83392ead724185c62bd1b2ceab020cd305c4abf081bb3984cb50c1cdf7c59456c96f91016e9ad32c2d47c67218db359248da09fb14feeaf6bb343319633e7869d6103571bb5b587256eaf4551d5aa74860ff266f57e55f8c65a2ad87aa938b7f156f2022b62282a0cd4173dc090c5a74aa5702e50be4495258c509d22ed34d63622b62c0dfe1f53464325280281a95a2c273e17319dec4ccac46f31d953743e03bf22f40b0fff77409072dfe82876d9d45a11dc0f1d64010ef32d57eb60a5288b089ec9d02bfbfca6197eae336363bba37435e1e558178613807da640fddb0ef205d7c91ec186b397bfbfa10d588235013aab3ad21744a5957def19bb7bb7cd4f676b23c7bf87579ae2a5fc8c0cab31d72079a4d0cd69944564252f9603b508f5a83e19f09c704c574066617e8b6fabe690e85d92dcac354a435319a93cc2fdf3010c52e38d6799381e8cc861d69db0ca8defb5f8b1c017dda46ca9302d8cc1d3b1ede0c9dd63349bf6011050c968ca3f3011109314dc9655d1a30f198cc84bf12c812e90939d7f4075e32697dfd2cf6d17589494e775ca982952b61f8b99a84967a431deb64ef7ec9e882cc761c8bc66f7de4006eeb13f9b6ff2d92db458ffeef5b2cced63172c0f4764da145115b615cb6c0388b6e93aea63de74bff64fe40dbaac7769981bb9655de32a881ada616e96cdb74579a0065bce2da90b64a813d57abc8f6543310065cafbbea9512355cb3f058b35bcd357bde9f55fea564a6b14bb341c6c755d4dd5a72ac79d855fe50aff80d683530ee563249d0d65f64debcb24962c61ba05c5f811b9e0f4e5942797c24d2b08a4592d590cb871272f5c1228e9988955ca4f990ab2b138cbd33646772767d4f76e8725377818ff1cf03c01fe64bdf05e61a1798c0cf3b4b69b1df9f756ffea314fadd17a6c6ded6765d59b22e449ba8c78b1f8f7b717de8a4462b02d1bf22f24e821888946f309c7e60115049997f0a98e5f04613acb46b5e231da31c482c25e7eac53f09df009728675e07cc3b33a0b0c6e9199664a00c8236a3a9ec9d6d5aa2e9317da6efc75e03d95d4747d51767485c4ef9fd438b767265093bb8340119f94367b506796bbb6ef67dce782d879a3673c0e8415c6b55c4faa3556c7c823879ebec0694dd0783ab8f5a60ae10d1c3c42e309163bdadd31aea4869a673eaf797138e332df0579567ab7e0d1e72820de3e7068ac2ee207794ed41737dd698f3d9884bf3d8f37981406d856a4ad5a6862df70400fbfb719acbcb0fd6bdf6d7c4ab3aa10bc8d6d7452fb9546845ce1478ec9804b3fc0b64e2a292a2b1e244a3601fab84d082eae74f635aaab4b5c1e6c342a695f6804238887ace79dd8dc63c2266d259eafd2fd876517ed9fab048444a61da824c0c836977a82591e1f7a813b0898863c2566a3651c0570821ee974c4d031ea7df06264d1616d48bf6b2ba17be39cb363843b06c78d112c76cde5cd8495c52019359f4aabfbff771acbb91bf97a5acb1d46d2e721f78695b8a66a145c15bbbafc77e5070305b37e854eb16adec67495c35f44068ffd1ab55fcbced4c146055343dcd7bd366b604ef8775a9985a1bf0575482d162edad96ad645f186bd2bfb266c3b178f01729037d9b7ac8a77c518cb5f316c050edbeb0d90362e21d5dff7be1f8632ae42cd13f9d7071f0ee0ba5a1a50a77b05fe3f089f1ba56ff7746ef35ae7bfb16c2267118e203b75ac19b334200949f8db6dfea57e0599ebd3ab484bf5be07a1d1844aae9d63af81cfdfdf1fff686abd1093d27abdf2e92308ee6e3e15fe197e3a9bc6a9ca889e06cb73cf824363267d45095e8b71f84a9ca49c66ae58713edee540cc357a08a7b855efcbffd95f2b765fc9d7bfae809726c3632915a0af1cd1a01abc864a56539d5fbaa21f7a58f430164e81e65b90f453c15f83fb9236ca8f54fd2c7e50d0258e9a383444247301aa1b42c3215337098ed426bdfdcfb251b8ab08c35fb0570dd08ec68c1896a7ac95ba6da0437954fa029b03aae7c64de3ff3aeffe38ef8b208d9dffc62e32f44bb968518b9a0059cb2ea2e59b0c614b7787d0068ff7fb5bcf59ca605dedba63a34626261e7193e97e7e6c45f3956fb46c10e88a94b8c097cf2016f1c2f76a4db6568e038373a7f959c09ea1223c66a5fe011c241f206e03dcfa03964dca7bef53f1a442591706fceadafdc7fe0b1ce3a54a2e391e51555beb3a290c29bfd2d88f1bee4dce1c6357b4966fed12f61a8af8c90bdad34b8d9bb9d04df6c12b717ba937fff7875cd58ccb01c8573f4341fa3d3648cde127b6a9c4a7b09dfcf50f39bf44d1fd94f5da7d2fb1c2578b9c6ccf19b9920bc76d1b91513bd9088ec1e818898609ea9f5719e4b458b9ba28cd9dd43b0402774dba02f4e1e6e5c71b167caafadd9678932176710a41184ba19702e3c40663735a1811c56ea6817c99f20b5f9595855b46839cc64450acfc71cec14c5d56c2a799ac26569cf58a8d54b0f984828d379869cd8f5eda5d0867199c914402b016decf3e98a2e63948da228f29e6d52a9fad658997c1d3dae404179370ab68075e49868abb5d20fcd4641a83469bc20a288c93abb2ca105b6bcdfe0f122129303850e3f33f6189b2bc89dbe3ef000000000000000000000000000000000000000000000002090e171c20
+flags = ValidSignature,ManySteps
+
+# tcId = 43
+# signature that takes 23 iteration(s)
+msg = b900000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = c00dbc9431a2e5689d27b5a3f09c62fd6bf48550b9c6424db5c6027bc0b5cc8e9d29f05fb9d8f50a85d2c5d8b7a4f7f36813bddbf7caf8eff67a6c2e148890f9438a5ad85e6f4eaf6173f122dfd160a0ad5cbb091d08130677f196d22c8bb6793d174f71516d42bfdbb18fd9a371286d03ae41c7515adf78b0b9d0279538415f886a7818c6e09117ea092235cf18bcc834cc07de3a639c472d63cc2c42f6178a4c1fc61e5ec1fd5456851d586f37b59ffaf43e3887616136f8ae775063d5e24c137f63023d056ca2bdbc4f9e059a906fecffc72cbd6ff702f06429a66420bec5cf936c4d8f0e2f888c9b5bbe81644be03bfbbded0a1ac71b1e4c2c4df783d6d2621208f88c58dbcd947fb62ab972bc0865dd043528b9fa057c4e7a0f7cfcc2623d46745f4ef63b66aab5ae5999c625fb20da4f40d2112e53122707837501a0db379f262977c853083913030418cbb78a12bc6fb85857f401b7e9671eba59c1d11b55f83fcbcfad880c0d8492e03935341488bc7f1f77daac3972a028adcabc1b3f3ed7ac41a5caf911aaf8c76e0ea75c1f4ddd109a21e47c7a5fa2103dcb5e588c354d80feeb15c3495c9c0303f7d42e2a211dcb9b0600245b35448735877d6fe378b38aa279d81baa922b56693a2cfbde2efc23fdf80a78a8f50e9c587f2d63e29f0631633743664a83ad3a61ce12fcec36858714f399591229f7269023412b7cb3cebe64691d1c63a297859d10d12d221a43e37432da12c9c7965aa21bc82f7047ee6018095f0e832677d83f490b238f00e21251cbbad5a9aeddf11d4d4dcaeff0ff89caf1e8639ef0d26b31535c3fb73fb42a6c4c399882961a51ab5799109f58104abca73d8083c2a4b64ccbb9c1744b53d8c416bc902802abe8d7eb9a39405c91b61234ca7d35735e18e620067404d0226e7410f63c52a5ab4ae58281496d683b84e88055e970462b9d11b75688f8cb3dc47caa0ba1caa5106621bf59078ab30b113b4408d891e63eb7dd1db637607e6fe8b8b835b2205c5b17e7650a26ce59c3ba37a691a8efc35b847239fc7c60f61ffa06d3025855fd8e63f1cabff8d3f76f19ab3ebbae67786de70e9880887642259bc89d4bca52bd243b851b7e229ed4aa7170d24339d2e09ea779189921866a9bb773f09cf832b93c95b8846e2183f8e23b47a92d54af739dd9ff8cdcf13dd9fcf3eba396d3c76569b733aaa543051668cc436b2ff40a366284a0eae55246389268cab3d516b19e0d5184324fab0d0298872fff58af31cecbbf9b7abdc26509792483451da1cf5c53effb81b76b2cf28d0892de1cad6cd4ccf91496d64d31b9e8eea56cece8a99813ec49ff568c32763e3164b638ebae34852f8a827b781ba03f4d42297b5725c97f9a6e82668405f3b0c589ee7073121e07c7c39901e338685a5b1da04a127cc2301d4ca4685777ca9619f3cc3041a68c4d6034cf3d58dae42e61a65339885151f70c12eb9d32baf5d124bc9b47775b612e35965f99ac25b60bfa182b84188eafecf4e761b58be536d8c241a5df7cccf92bfb51a9f796521f6fa8ecaeb8574c28736d2e9a3e05aec22125b8ef6972cf5ea446737931e2b3c3c27dc3c84951fc60c89151082d222008a271888317c7fadcf621c115774038f21f89558111247a81f6f5e075577bca24d798cd66495e4f4eeb405488d0c39ca05e8d31619a5e65bb6b2d5b8e5683532e9475cbb65190a4abc6edf981a4de572ba400e6f200320cbcde65f64fe9cb8bb204faa9ed6cbd505b63aca60ade2ca9c79978bf0d971a8512c11e2f8bb9670984cdf29fc1a08c2e0f60cd4bd0630c0b3b34ab16f98e36e68a72841e34525bb5c7bdaae3c221e6d62c5b495166a9acd5fe878c766179c4ea5d88b3faeeb92bd0ff372de4f0b4f7e9002c097c2ff679c25467499b28912624de5252fa5d48014289e75a73b01021fe0f302e71342d525a53e754c4ae74c700bf187d004ca04c7bcbc956599976f70044fe70d22a0c82a3cc2a4aedb839f3c1a1d0ff61d815fd5cc74ff9c4eb40454ab6a53701913f176df2d57eec4457a98ed417c6e475d4fa068c6efcc2c6fa68bb80dc14d88d42d692e81e3b791955a2a4db7b9e0b2e959f4c4f04157ddf3f6b71f93e2768bbd25e807dd3a73f3db6641b373f1836782fa9da011c16cc5b6ffbd1fff811e23b1a3e0ab162c879369a13161010f5997ebe78fdb5754a34ec51fbadddd1f2afb927434175cb7060801c4ae80d4fbc8f9548381f6bd941e57bb617fa5d78ae28708e054a343b143dde9d5afafddb9181484cbf910d431dac96cf60670753ef1471db18911c4de0f14468376aebe23a37d7a661089e5487d9d3c5115a563f24267ae8fef4acd06105c7f2da0ef1691ae589105a45ca335c408e765395b2a3cfeeb3a3d6479780e38e7b52af3259cce9206f305e7842471c6ef555bf1d3fc6e0afe2b8ab769e2aae1b4b97339c273c051abf2b62ee283935f4253cfd1e855a2d549c3ed591838f423db0aa4ccdad5b14956e01e7afa729bc86a563030097bd6e446c990f83adfa5da4a2d71e42aac0256e8e48957f301a745733a5dcec0f761d7da4f5842c99016ae2d91eba8b29a9fc48ced59a08dcce4efa84acd21583442a24f444ee03c8611dcb108f1e9d8d6cb40330bc324831af3adb7585966f3312762d131ba54e45b2b695804196f3b1bd5a5a633429579cd18fc4dfbefd7c7c53873764d29c32938f25578ae0a7950c29934d9d878623640adfab823aea5b248348ed029d69a41f2762e3bb859fa62cbca757565e56759dd51501feda8f3be5468dea32f51d5503e9641e3bec3b755aa0fd6352a08254c1c95c5b65472717c486ed6e090ebaedd6eb4378e75bd71887f19bbca49ef148f913cbcd0725c5097cbd601e78a8746464e552c08127eeebaff5de1540b37b7b9dad95c74583eee8183504dc4d61d1b30d51e5a7d561173404d97b563693c17083bb3b055effcbf0b40e688ffb37f46d3a291ea0b54cef41f8f49464480b17f7017f7f6e9df2805f81fc056472e69cce7222b827b92c3fb1aef3bcaa6225d1e8c23e0cb173c2c2c936b43e89aa89886371119c3203b7cd3394e7bf29a0fbb64ae19d476f118dee4700a7ee400a73a07a8896a441614e3116f76cd58ae6e8b9bde7ec97ab8776e84c9dff4f41680fc306c026ee5caf39b58c3627477c19f3f39b3e35bd4695ca73d4080a80cda55be5d3dae4eeef8f24057f45b932fb6e58c965512d3bb07fdb87797ed007f675d0e89085d7eb93bda336692cfc211a289fc104a9fadca4b1de6db0e5868930ac571814e175cee5fa8db276ebfb1e51809584da93bfbdb0df3397ac9f4fe47ea2bc772c7de7006112cb218e5cbf402a923baedcfd9e4991a8cc03b860beffc9afdd8bf7265559c5af0f70c4372b1c24eb8d4126debb564780f7286aa17149697e7d9c327ca50babef283c6a991bcf8ac1fc83743a8ab4383cee0768c556c02194b1339f92bd1f1e4919585e74251ecb7defb768021156c7f096dabd1aee777774b5d2537957d1136bb457b7d37dbebd581a1b60c4402f25c273aebc1bcc9d2ac03fe3f93709932b5c95cec947316d8762f59784baa0039a33e8916e16ac727005ea0f1b6eec3601cad5b34bcd6e4c8f3b49fe0b98ae9e081e6d6aedc88dc3073e753a11d0c3a4b64fa0d4204446aeb877cad71f78b61442da7ac3fad1d8f581be0496ebeef0c4625c18f10427983675e57ab7a80e415217133352b5b3819c76d228f79047cea790440810040b878b2a54d18430c43c322f83150ed13ecf3349c158805ba0216b736554859f60d62c0ee8561597f52a51677beca0db358ce367da78bbfc6f1c3a9445c53fd91e0d698b26c7b8a2b4a201842f50e0d21e1539d90877fea7299fc08a831cfdecc45784febfbc462116a7bd12dcecf301a7da2a978f6527e57f1be5b52e833039d9bd00dcb87dcca99dc887ca0410646df7ab7671714e76fee5b78006ec1c7f53b7b5bacdfe0bbca426035067e7e00242a604c568707228ca6d5033c26a9b2dc6336124e329a98e78c1245ebc14efaa499183c7df43b916d47dafdf9126904c8b3559ade438b2062aafd600d3bfc3ee5f3123e50750faf9fe59571740d892371143706befe00ed39bcae1d7ae604a9bce4e889c4b0669e5fe1103ac5a4e615903a5c3d645144de577d4aa9d3a4e5abeebfdc96abfe5a07ff7d68aeab1b3e18c5a118d049e1e0213e2cf9da583d2b9f7108b972d467104599e557bb36a710d0beec84c13cecaaa0f511355ccd351da2192f450035d6df92b955b7e241755abe8ac2face7ca735bf4d034bcb289dd37e7336b382b0de8ab1a02b59ced9ac9f12a38be2a9d3215125ea5aca39b1b47db4756a402d2c5547819d0907cc3245a7ce5b3be4ae2ba86c62374337903c6d77986c496798789498b378227565d7b977b8eefe14351bfcf49d6eb15c3385e8f63cc9fd13eb69c37092781e8c2dc3845f744c1511c25a6ea363d7b3146b5602a07111980d9ab1ac4376d46fe5990e75bdce9de24b9af38bb6c65e6ddd410a1638b5eae14bc596110528a237a9fa7bf1838614e6e7f8ad3070a97cb010b2e30438a9bc1d0d1dfe9011517596cb1000000000000000000000000000000000000000005080d111d23
+flags = ValidSignature,ManySteps
+
+# tcId = 44
+# signature that takes 24 iteration(s)
+msg = 2606000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = bd1c81add57c6fc6aeae596d5e88a9a40a1f146e21b923909e3c90f10a77c0451e9af75db5309434860e43f437f04063d72c40363967069240efeb1d04aede6738b9b9024b8186041cc5916b8cb0098fb0dde884e093911e4069949d720ca2e9ed86d442ff7e07f985348b569206c6640a9d14d3d89d6529aaf4b51295a6384b3a6e63a046d3e89bff5079d58728780fe8050369a06b397beefb82a6ae7d9f6b5219f993d34655b578454f62fcdb8421b8bdcbdeb43139e4302c44d1ae23334dfe8b51df8feebc24a936bee7b4b647826994da416318abed7004abd7f8b446a32e8229e60f1007b1fed5795a8df27392e7a3a1cf8aae5184065ca28312fc38395f70b9ea8b8cfcf1015b6dd4ea1b2c17b22af14234bf102a06ebb70a35ce2c9d0c8afdae728c169609f61aa09afb14ee9911cf41e6632a031c9342f8448f4f78ab81ea49cb57d18d07feb70d18c16479a03d4cf00b2e5e885113a16a50594901c6daf75f49ff990893370950684a8625ca8e882be5488cff442ba82d9b3b978e6908edaaab70ef89bafcb1327b3ed7277bda85f1b39b70d5f3571d5619ceeecacf60e29a37d9043a3cf41e03a79b4747025fe3ded7ede991939edc8d6e1491ba27e22a493ae6ebc189828ae00a13730dc5653da364a79f0d3fc00c0c5fcdfc7107f235b9781d5ca972eff4dcde7d38c1f30fcbd3e51d79c356dea6694d2ac49ac46850e06b509e51f6816e404b3de241cd3f869c68618709373d54eef4f244288e13a0fe8331a09df7073c9668ce07e83cea9a20ab76083835157e8c75408694a5a012df1b1e1d08343bd06d81f6dec60b2590ad6ce34bb66bdf6ebf0e21b1f2c4acdd25b7b212cde6b2bf826c13216f8f62be455202096de344759a1e66863da69cb0268ded55de9f41e4d75dbc15c43eb7aca6b7f8479da0f25d3116b1bf28ff205f8d25129a01f22ac3976c80eeddcad9e963fbd60743e8976e2175055bd6ae589c3808d41e51e2077d7e2f9a5fcf1ae687d7170b96bbf8d1cb67d146480dd38d6b52f877622f489354e587a4610756246d647eb1dd002253027032180490924c8ee0317bb4d8d7c1ef415a0df37bcbe1201b4d9dbcbfde250a8a89a7695c280a4be8361520869b5d23aeb6e7df2737eb1f28812f5ffb9b1302d5b030182a008ed813d8232347342abeb3ae7f7172d8e85947899714d9a4af587a43bc29fe14d577c37a2606178d342aacd2e9a33e159aac81f29e6500f7f8e1027d3c60c63498bd2e391e4be4caaa6c715c20316eccaeeb2b0f1e0b66809de88890a0d14d251570e409de7b84a4ef7d2e5b489a7ae7378123203ee261c06380b44cd6e256568c990d86f6cdfa444c333ec851932f27be415d6be7d8c1e063a44b62786fc1449815072c111f5b98e8c7d4d994c68cd21d0f07099c7eab7432b7853ba55ae27cbcd48be775b9b5a9d407c939206bedc59708f1efa733ce1b7f3df559b4df5b1bf8c27f8860bd837184cca59480fc7605b9faa4f1680c3389687030b68e343fc56fce77255267ae53357fbefe4f122ec52ae2caa58eeaaebab6cf7dbac4cfce5c95bc7dac91517a85b14c560eb604e5fecafa596fd3e76bcdb83da6b5f239ba8cce4a9e14957a71306e7efdc048b9d949a8cba9877ea329c39ba2034da897e57d4d8f94efd4328b38bd27052b224c7366085a578524b6f42ae9a2d047519e0575b3cf6b10a4578850cb5008446bb32996940d25c7da5300d9561ae96e43ca17614cdbee350e55e4a07be349d5b181ccb3c806a2cc7c1ac165a3dbecbc6656beae26bcd37be4480dd88bbeca8cb2c1d12d4594376d1876f928dfd25559ed402fab01b0a3a3d7eed61a845a31d3f2cb8204b7641d875304dd0b9a84957914fbb3a1d7c15553855f8122dbfa5275b0bcc66e49741bf4f88c37e830f4488b24459076039776f1342e1a5fc0af17d81d96c939e1159ebe04791fd920dfd6eb7d8a74fbda316d70b4d327a5411fbd0e25edf7f9448dc275773c2f05e9ec8f16006c4c8ce51c6c3b9be2f3a78ccf90468154914716162df15f008e64720218a59e69478163473af62c08780390b21638c7c86ff5ed90ba003e9511651601ac7ca5f505686b3101e53c736a213bb56d86438b9707187429d48e3dcece259b4f87eca78cc9720b1139bf27f5deeb6614002e5932d44f2220f22058e5644157e334ffc348d25a2be6859e88b27d365c5a07f86fc0d74b68ffcff73480a14973b701eda3a0d16fb39b86c7d344a51f10d3e4d80fa4a240d66621a436b01e549dca7d6ff595967a41ef9892ee3a316113f5df6379c529aacc5e332f4e108a613c799102f962a9156c2b7d807ec4de42b315a9131338f2aa35f889e385a79db045c042d6b4199ce0d924a859bf182f8897c1aff76c4470077c732147df78ad688c38f39c41c525feac6cc92cb0e58cfdbd24f14ce7d799ab19a57ce7542abe78372143b39b014678b7d02855d7682f2d1cbaa063a5911de020500d7bd4b3e45eca31d992881a3b9d8044d51c4ad2b3db4589c3c6aca5c714d31310e3ecf91950ff12306e52302b05aea52c2253a6caaa21f1c7b0b4be41fc00e4f2b318246785157f77ccdeb1f8e85aac7b97d28db41a6eb5524047565c9975b155d2aca2b98d85fc9d1a4e269adca169d145fa138899a975e13183720ab912051bc9523be26176b910d98fc8e191dbc564ccb1a0767acf1c5f9a92e501f8098199360674727968165293f778f8f87335f4b9fddabf278f65f205179a43cc8fb60047bbc4b26beadab79b35b1f316283b595046aee055d68e7e86b5664fc8b32343f9b488b31aa0649433248e531fe5d570a531613a50c73fa6bd546c861542ef16be17f35ec4fe92d60905b6baa3a0645ac3ee67bc6bd5361def91a6a9786afae9dd11c49928873b7d8efae32772ff1c5b2c065bd9ac18baf76606889dd80ccab7c9f0d3eb773fca1d561d5fd0811faf01dfb1f8c1c13010d23f8c1f467ed5c5577ab6002234c295c622044a306299855588fe45a48e00fb15b314d646d80daaa01d918c7a5cc1c3eed27f12350b58c6fd715fae1c932280dcd1affebe0d09335ba3992bd3d1db2a4b215b123da1a68c75de8e187297c625db9a9a1533a4bfb1ee3c6acb69f2d8149189d35ba80077aba0a1474d164ceddae3e8092c423099a0ce048420b03cadf05e897b8fece53857f0d2fa126b3b9bd80e31cadfc4400546eed633e1d5f0e4759b918eb675849f86931541678aef583b9b2894c905d7a5a0951355d5ce741c61c146f2324a372b87168ea7b380164a9e36bb3e63c3982eafd6f68e122a1263e745fd11dcc623d41c4a1f191cbeec16b2bd23ad9ef5a6067a1065f21a59bbf76a47f35a6ef3601dd6dffa00a96381d037e969ab938a57f21d38979c79480099f621cf8951094bcf4052d9c6b0c45cf35a987f254400b7d43f9ef50677192a9ea867046e5efcc8706aa599f82cf59ac0a67fbe162cdaf2c988addc0d7f934b850cf5739bf65b7053d280a79ec3e7e5bc738c33a883e31484d0003f2dde5fa7e36889f544d126e2e081bffcb41ebef6185e73399a9a336ed07c119cda65fc115290f149802f9fd73a6528d8bb05f0b210fba11ccdfc814d16cd6add066a8ab72471cedb354a4f60ca209153e7b0b1d065f37bc756ad1100ae851c1c998bd36c649f8c5a44ca5958dbffdd88bd925653081e2cffceba6cd4142a4bea47cc8fcca2f5e46534494689d45ff296dfe2b1985896bd71caaedbbb7ec7ceaf6d540c2cbb8c2c37489a5932263ba0597c3ba25a6ab50a5a09af3b9cc6a2a2d4411dd0d3608fd163355cbfec4a6dfc1bc4106b44196a4591af1b6e3a75e7b1f3769ee924984781197b9c2730e9bb1750005a65cc74689e8712c2eb16875c5da03a8bb29852e77c08a16bc23d777c99f628c688a023ab8431db5f3d0f463d90e698e3430bf2be8d02fdc41035b5047c1bfd21c936ae69af73eb258c3907efa308c71d3f8d9ab0d40d45c3888256d9c3a04f26c83eb63a77f290f2b58c6dd4bddc346266f97e55d0f044e7344c37652b8b0fa492dd5445e84988ffb92249fbc69be049c825186a2973631d5dc4d10896983bde511c87e2850318963cb1e239a7eba4c06b6a2e9ee2bebf127f54c487fa3b28636a2ebfa0ebe042adef1fa17913692ec0d1647cfcaf6c90df6f9b141d8fe9cdd8949d80bd9ebb0712bf8dc1466c94c625c9a9736fe4ddf78aa6574de6b1724a7dfc5bdabb99dc22cc3deb93d537dd5d1b75eeeb4505c8f6ec102ba1e694858ae94a66eccdb977432aa02f1b3616141c8c77fe5512ce888262cf2a3f248db8cf5130196f73dfb90dc716b0e21da55ecaae1abd53968a6262a1759724d2e4ace335aca4421b38ba903f501adde8bacfd7e6cb254e15a1aebf1ebbd812176beeaab97f205f570f5c2e96f9327af9c17514b2e62ab07161ba674e46c1dd6d77c070114a90eba94a212e4eb5e6fa62084418afbc0febd8224210444953603af26d21ad0a5ab8812044dc9522cd42605556c501aba406089bedd703ed61fd3df829ec92d5137c4161286ccc43728d99b2b5d2f014161e273238535661a0f1277177a5b2f86d71acb3cbe1eaee4b78d61a6cc400000000000000000000000000000000081319212427
+flags = ValidSignature,ManySteps
+
+# tcId = 45
+# signature that takes 25 iteration(s)
+msg = 4301000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 5986c4549caa794e266a06862811cb2c44d93bb0ce32d7be8957b222eea8a487e8ea7ae835d09779ccfc38f48f7988f828b7b26db80d5e391c6e19ef4e190bec207775b5f0fa2d3872c8412a895d57c490c6da737df3c7f0bb2fd62a676f1a78389efbac474f277c4fa9b08f3dd0a82ed8876e3fd7a3b1614cbd5f0c51538621cf478c27ea39d6542bcb62338015a4098b7aeb69f0131cd15ad80e7e797bc327c8c20139992d49a66a63ab341a17c080db529df3c30aa8d76043cd781b3f6acfe97ec231db5f026a86d5a54bf0028a9c6b9452ee01dbf7ebbc910ea50f8e4480dd393466c8def5943ba822a67e7d5e20eb92243a84774e838924d7adf1e45c65cb85383c653c1864d51663621e3914b1985868f50c7fff42e04d57440d5aecfa221c477b7175ff182d461448e820dcf7b5f04c132a8194fcec3d4d02df24db406a8782aad71d7c27bf81e2cf4d11e23754c01b3dce63417e9d812fe5004c13c97ba3e4674b377c91e54c707f15f0ef9f131e8fc875d52b696fd46500088c3925da2ab487a6869cc8597ce2336f6e3ecc4fa42cce8c24f5783d52166046b19c661f3084601723196a65bcea4930a4814a99bf26c48f84bc810ab6829e82351641f21082b784b46e2115a08e32aaf4dbbdd6b9a5c72107f405c47d0cba1168f80e9842d4e47a0dfdd42e18d500e1bdd573fd4e4a7cc18f44953ea81d94bd1694bec08e67ae218074c1f179063587a65cffea71e385ffdee9a162fbb113d4247822e46f13ebb3462a394323684baf59bfa80cd0a1209759fd39f87a367c19995b92c7ef13216a39d0233ba66487c1ed46d5ffec611f427abda454f5be5e34465481898ecb4912c1a68067c4aaa33f525911d77e28e9d764bc1124a5b889fe928aa090f80e41807756541ecbeb620ab4d507ae30b17a684e2a18af0865f400904321a9f736fa476aa8c5f7edc4ce3d883c197fd38edc4ecfa26ddc86653f13fce2eba247df6cb818ece36df59ba220b7ae5cf6059eb23013a88ec4aad41d4264d2814921c9723fad5aa4393a646ebad0ea1dc277f6f131513bb77987c9275d9efee0f593f4126b490c1157c72d4de8676c748f8ed5b8778e5687e000569802c1273a52209d93b6de376621932e9743857017ef1af4f313a346c956b2a0169d4f3059a7ec5160f5485b8f00e67d04d36294e5f4514251c5001eb8da57398fd085d9564b959d4e2480b94b05bedd937a00fe713f1e894ed76ea0349b79ba0343db1761f23216ce929b20ff49cbb7cb2cf77d1ffd2675125e18270e081b18c86e811881695fc9df5f17842b1fae833dac14e1b10b32fa8e8d83789949aa0c23e46202453d6836511e4731dcfd1817aa02463ce1f175aa3c6955cdbe5c58d970dc0d58385bc27b2f33beb6eb638fc9d8fe285006436992d96948076b35a6dd50f97fddc72fe9342408841a5aab7893183d465694ce956fdea8f7539c4412d80f6726c2d726b23ee6efe01bd520ea514fb751aeac7767b42927ded102acb1cc985f6d371551306126678fd6cb64073683295cd6b84299c3ba36a7acc6810e4732389408919db59b2acf0f71178af017d114d9d543e72f74e0a6042155a34e9eb313106428d15f753f35547216e47500d3dab9877e0d8a8342606c4ab83e421c01389087f7763f7f5ff10c600c2308255701cfd04e63cfc435cd1bf1b24eb8bb8a6812d6b38b7fac21fb67b892e04bbecd2a8433c0d104e950771b2243595be35423833d46a6b28878cc16a033385e6bf6a94a4a6d1d5518d538fcb475af1d1c476401edd05dee0b014d5ce68d95a06c8a30c68d8d33419ab4843478708d938af757da39d45a7b77f79a8f8a2c944bc95779ab747d555094f1b04df45dfac56877377d5483b56ffb1ca69c4dfe07943b41a4d434a7ccfbcb64a374b61af0bb203800a10255b87c715a6366cb1b6b5582135e8703d64235cc714beecba43e4f31cc920c6bf59343d5e78e4235b9acfdd8ce49fb38ad74113a0feeb647f7179a33299b1a4bfa60af1e70ebb070dd07d33aa793e434c9d7aaae98f018e72b1ab8788644c4fef6b0028a39c30da55187e183413fc79ebe18a84561c15469e294900a74494e58339972508086dace548868594071467360f24efec75414ef502e5f389e4411150672b91f62984dda1b4760de4e738c23f95d9d6c56ebcb316e4ea71253368ac460e6a754faa69f2ece3a13c36dcbeaf142ba85cd506e30877baee307ffb945afdb387ed02399ff21aa9746d850c5637a937cbc6c3b03a27142b945c3da9839295a212d644833c0d85984cb5df2f7f139da90d66e6e73f51c9c3ec8ea590fefee063abf28bdcd2def788f25e40a7e25d01c11def224fb2a42b880f725e1cf2f8c08c8e6b3f80c90a6020ded9cffe0742f82d55040eabf0af6af911c336ad92f944480f46adbe8b5db18d6b34a3330bf2c50a2028f707d9bda1fad9ca620db5bf2037415e07d2d6b7c73bb0177f7a1bdfd349b87adbc736bfc7db2613eeaee51d08322f20a0e683af01aeb6c1d9dd9ccded7b9125b8458f052e7998ce4a62612b815f5fdcb8eff33a9c72d6e1b4fb35b01554d6bd287c43b8e4e8cc8465379b85f84176487fe89eb43b7c7042d7c9c1bc0f35c55236df89d0c186edd0cde61869489c0605946a936e90096e7f0614a74265adf8bbab764e968996ff759afb9603c359c195d7f725eb06701a49912401ad296d2240a6467a80a7fe2a440280eec32a300b2438b08f5152376c25550d0dd8e8237742af59c85020b4757afeb91aad5db9bdde9b7031445ef56956963cf27470cf5c914e267d29a70f7ad5b9c76d281e5a284db8a7d6a69b8bd626e47d6edbc7ca0bdb6df8192a230d8be6fb19193add1bd107d395dea7dad6f0901748a0d6ba6bdacfea046187f0b60a2f8b922059ae9565b6a20f99ad9b107c0a287e2d5c2358d7597ea4c029de58b4f13557df2012bd8f71a99d924947672866965ddd930abecfb5e5a4955f561ed9b7b00757fe8c3f219e7955d43f1676d544f678e3dd8f5ad9e36b3ff2b8ee15272924ac8255a53cb9a9e9202765746365181fe5ae49c96dd71f4c3967cc2a8bdb9a58f18ef1b8808e3ea44f076f4ad2dda7b2c78893960e844d3ff18aaf815286e5a5c04850848c3f25c0aa5f87fc0d62d286c0ce82f51c6e69ce0fabc3b862cefb8fa616cc46a1e34b3f893a4ae9b6d4de83c7419748c35df9841099ec8554aa5f7f310eddbde6cbbbf04f76336eb47fe161246ebab18bef7a9e3532c6a9ce0e2dc73579fd6cb1643f6f01c465ee4ba1d7256130b99e0e0f2a16d457d394d4e763ba36c918690ab354155d2fefda366cf756044942712cec0fb1d1941043dff020b16b39dfa77b064b9267de47f5d9fd5da780c173cbc729f17e44ec884a63b0eb3ac2208b725db57b6701391ee8d3bdc94f3a3664b5c6ecd2c166d037c0566473443345953646b9de89ced08dea5e800bc4aa1f8ad5f8aa6da89e9e93c2c31b1cb0ff0c9b7b4d5dc9259b65848949effdf6a1970326381c8ae4d039c372dc92baff73cdf14eeee4812524c85090cfe485ff6ac4e8bb5d96596adfa62138f27cca7befde57494c1166f002eb62d32b5705a7e9642ab4971bfa366f73dc268db53940ac5e1f34dc24b9a8996b527f15c69d9579b77b7b6663f2941f45448572aa5998b62c8f5d495176f6142c327217e1da4cff053c607673f14a912d9344bbf9ad5fa7e623ed769bbff53bf2b5a1c78f79e69fbf53fc99c6e171c90525803751b25ea6c9b7d496e8a7b294c3f2ff2455cd8715071238825ef6cf8684bf29bb490a1e3111fb305f3bc87357e7263e417cc7c10cb685077a1cf6f058b1108021f78a532d7c948a485ba35c50249c79add06a6cedb346792b4c02a480a2bc669954c24fb13fdf4cd6b5071b969677e5bef6e30b69e84b8a69c98de885d1d325526c58dfef5f72fccf7748ae8b024d915e14fa01c35e018b677a44babfd32b9555b749979e61bb4ef464f8010d1f8d457bd9ed6f956a6631ca7bc768b86be99fc5d2cff06d66013eb0b128f2245f6f284faed9b13a6c6e4a14c3e4a742967e598a06a119d84b5e3f8bcca18f28f64c9824967b6280cea61326ffa2b20790069e38265a337447eef2f739365559e96032d3e17349176963d9a05fcadeb86013c5869457a182f4a95f1bb5e4c64b640de8ddedaf516f7d80afc8a08d1bc5c50aed4e0fd32e2e3209958fd814abe06267b879035b05d251fab57c104b3fc4169d090b6830e2a64a221f67ecf08122f91d638d0a53bc211c654ef8162e625d75ed0a0764189312630ec3534d16a33d4e55f95fa5db64675b7ad8a06596faf5a8a47f8308b61cf16aefa2e6107cabd21524711ef971b77a1d4ba8ba1318d041aa7351324895ec6a45dcf5ecd14151d6b00ff611071cd686668ed28a0fb77f4dff6095aa72d7d99792aceedc33eedc40e30260fe127bceeab8a5c1e7edd27d0873fe1fa7017cbd9f3757fc5d92676d5f7e8ef5e85827be2ef8287d47403c68ef0c369ad5caed8bc88089f34f84e69f79309317eb49c2f34c74258c711181a425e93b5c5d7f308103a626d7cfa0f3d6b77a04bac00010819b2292e5f8794c500000000000000000000000000000000000000000a1116181d23
+flags = ValidSignature,ManySteps
+
+# tcId = 46
+# signature that takes 26 iteration(s)
+msg = 4801000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 3a274d893c34e200720af504ad6cd4b00d7a534b6af57ba65951cfa7025ffa7004d07669533fa01ddffbdd752b84d2b44273aad42294a90bde3252f0c755fca0d12d203522874612dba90d195d5ec83c8bc6630671d7ca2a0ca83c89385937c5d4b1a1392df9a378ba3288427ee327b1643421695aded6f1ce3fb11ad9b4cfc5cd0720c9b012eda021df8039bd2b8d5f4f6f78b7995b0479e515faa6539e2f36646f35b9227fb42e23c6d49f3bf32c4f0d509b6064d5489faee9b5409ca29d73fb0eabc62e23b1dfe784940f7ff0a9560d4d7d278d41c22cdf07be384aad9232a17a59f401f3b768403f5adfa4a3f9b1085f09962f2a9f0e590a2432140fbdf3a416b45c8a5b206671e8121cbdbbd89bb35bc8f900775cc7f9c636883e9a3bd1c3367354138dd98913642b934e6189d1ac221cdd7030833c5da24c70de3ee205b88ee357132417e35509624afd510b73255266b23b735c9292540e4eaef743c6f30d8844b044b527333d2cdf16b37d1f1b81637727b1e7376ddf58287d01da6d000371428cdf431995a7bd02ebd9d59f7d2a1cd33bc33026446f4a02132dcfe734d5f8f993946ea932f1a4648df1fe0d76db2f613b269d908ca87a12a3948d110b6bb2048a1780c8bbf6cc5d5385df362fba179ae42a10ff706a106722b41bc17c56d6eb10130d31b5bcb715fd6ddd7aacb536365c5f5c8b92f29f8f5d65c0c68f382a7df50111707628cae2ccf7913174ef53dec3d6ac7111c1bc40264d8e367c4f42ed57cffd874cd7a5c698fa405ae3121050e302da8ac890ff3aeaf5e388e95023d082e7ec4ce625fa3340c9410499c9e1709cb4058edb31ca1f723626290c8912897f73f8a475a3f06173202c154e33812135ac26adcaa585c72667e3c6f20ceb1ef978815d4907298d1821c7a5fd76489ad83c118b38a9cd9dba5989c5ea00623c964dbaf4b6f072b478fe1b13b8f1ebf4b938ea8b4bcfb868e8aa43211e73439ca50e06d3f5b2d9a2a638ac113ace0d1cfad0cdaea234921cb447be52427c9726f581af29c2046e9a4e60905910de2194a624df7f4285ef058b430d9803bcfa83be0b75836f317eb6ccb2bf32594a3ee2765390aed29070249d1a899fc5836187eb65685867efcd75e84948769d9794686afa30ca9500a636a9a90f12e2e09f2bb5b716a5d970efba2dd317f9e0d5819db99f0d041ccef8f5df8490ec13854eaed2f86232c10dd9b0914814bf4b68679d11d2feca8ad67a3863b73928ca8fc2e4c00adc5ab81ad699c12a592566e3e13b5f814e43be38e32d6973f68e7e5d0cc7479fa5e937c889da2de8763c1abf517aa5fe879159328477617980aca382dbe22831a8ef278591aa3e9e9e87beca16b873724d500b03cdf46eb3be3ade2a3698c1189d376fd79b62f3f491cbc925d04567b735d43f8f622e2e7520ca8b9345bb4e5163be6ccd63d01553a148581e1088eb666bedb6cb0d3cf65abe30100bc530fd1ab6aa111f3780aae419e564c64ce6253741fd9800b84add684500d3ca1becb03832b3471448c1bc0251a7e1ecc84928983863bd2e6ae09a5840e9b9cd74ce6b40e78cd5dfab8755bf36b6146732b599836fc2db9af2688cca570c70dd7c7fd4041b9a4c8ff98c7981b1d09dbd009243459864ff562abc1512f2f844713e3bf883b2710c3595e570bf77d180dc47df51d79d505ec4a9895059d5d3702a93f5433985e1b51078199743508a398b2ff73269d3a566b2dc64cd1421c5a7198d544079ab4906cb35c596739e5d7e1f9c212db2278a1dfd2d1c9628f5b59cecf15b6145779e9de4ce43bcb5cf880355365e192852fcc0c85d39db6c5052633428019a50ef7266ab9793f9e800f1455f1fd77e2f90fb13e84af7ca933a65a07740d6d11506f650755dd8bff8d34bcaca2c2764b23d749c116fb2f2688e5abce0ea28f79c6ee013b904b28698a17c8d012e821504963bbb6af7567b12bad96ecc3df7a69d22cfba305291e7b7bb6466bf179a77b8d2481917eb491ceef67cf84cd63b5bc87b26441108b03c8126813a4f545e23cfc0f285152cd5f2f77b93a000008c2ea142681ab1b9f7b076e61cae8e93bf7759a7f2bda2cfa86b9eba74b77b03b53f13f6fdd96681337616628e06a2bcddc4b4fa4ae12c0171063229f1eeea4f28e2fc26a43bcc7318edc608c99b898212c3b04bf85b33abca45749b87a76e2240b987a63a29d29f01c78fd91f3240d915adf41f2b5d80a848781dc060d0ffa737a0c6cfe5b453cdcb2a50a39d7ccd58565a3b6bdb2823cf9d7ec1a204546eea31a9db531b51214547d66e85e590a663f391b0bfd0c67a2271fa5fa6d419c659b76a7254468e80e78434b786b385c91c6f9fbdfae0b1155b87a708e922a0c82f1f0189e9d953deefce4f139cf6d0a8bfe67cb5f6cd44627750c79f54cd0e1272843b5d08dc1e192686ced88eb3617ade45516159b39c6aa65d197dd4758e3b290c17b9112c04c368ba01dced699d28de4d89395a49ee36e931cd3591d3db6f26fe300309ff6cc1d98e0d7f03f30a3b6b8832b77f31f951d89757f1d789b47a87715718f97089df9540beac7d7b05776e30451944bbe9de43bc7ec69ec984301a251e9adde7e83d5c9df050d063728c6f6bc2c76e8906eaa87ef040729cb00aed35830645c81d1a39a1e77bafa6d4f06b415e586c42b5aea4d8e6c6a2061ba0497f7c93a1df188b2d79abe9b7373d6f0f63bdef5edfe82b37a690fd51f0b044cd3192455979a768450f7679e86ea1756434fbe3fb8003f376d28e666fd4728378b316944cc7899b07a01449d53314532ca8fe04007f2c37a5807a53468a433d62aeb4c138ce3f9f33d3ed548e408e7ae0da25b5180a6773f0037422d7eeeb0b449733be27a6ea43f26d101b74fe47be2babbb8925df95e6de1498069be6d067f232443e11daf9b8ad0566c923f444fc7c6705a3fd8b77fbb2ab13b9a7492297d6a2274e4a3ba46efa965094dd4005b0d9a32510a6ac9c172f705c26dc81b702d47166bb8a930f16f19419dcba6ae187ef91d79fad465485aecf38a801b8866e51ea5ff1d93991c556de9d91867052b03ca4ae4552e6f0873f095209bf8bbcbc64dc90159b105be69d436b7095fea150d7fdeba96746178e6052105b11abe7795504b078eb8a647af1f5ad3d2186282ed2ae7886c40955b93448036412ca7dc49f2e562c5afe8694525711e7f6e49b2515e5a87c480479f514f4bae5119ac3dbcd730ab3c3f2f06d3fd81a0475bb1eafe456dbaea87d2cd880c96d34c348e4650cda3329f6a082cf8db220876cbc410d0afc945b0c059a3cdd28e094fb7de858a3aa75fe3f344fb018a121b26d14b970167ddeb9d1eb3ee53e32f14611c05d6641beaef94921315ca760135961f182d1747ab5f66933945e1147ba4e2dddce4bc0329f22ac00ada5d4d311125831a98561d21331e578ed42d0b894597be1172e7261decbe9ffe0a4420e2a031ad2143524c3ff272eff4646acc7eb60048e99c733c0bb7a0fc957995c8e6656183f0e0e1ae552dcd5fa7c8df4c9ec37180a6f4cac16366639fbe2395257629aba0715ac791be689d8560779014b8348d271aaa91073e5f1fd2bb0be908bb68991dd59443d23dec0dfab6e0b7cc659bc73dcab4f708c48aa53b8433e787f80cc8803eb18d6647fa629dee201e64e04be60d32f5dccaace5e1e2fe6742aa695c06d9839eb30121cf5f145bed70e3f191f26abcee01a6d3de849634a4466bdc57dac8e766b9fa66c57b8412df00d34f586fa9c3322a8847bbc0cdcdbc6eba26a3d88589474bd928aca477fb6a766fe375e224ee54d17297146593adb3677c7713342f05059c53154b67f97a4cb949f5911ea2dbe43adbccfd151ce69061693d51aa86f651d981f8a1221b8faf9fbb9dd923ab5fcb7ccc625a2984d59a644c50cfaebecfe76193f69b4e1b410a607418cf09e268fc4529cc8b809bddf0c594f25248d09cc3547aa87d08b330d4f783bdb17e238a17a481fcc1e1a38676ed2c8849ec96226bc24e085b66fcd15fe0b5923690e80a4cd198ac10c8c07af0688d77ce0125916fec05aacf2e792c73fd887ce36b007a650d4033cd1e3ddc5c74c2f9b68502c307790184ad1b7dd2ae3009b155f95253a480f832435e8472289ea454d3762c6551b07335137872c2feb4b824211b60cdbd077783fa8ee0eb49d506a37d77c4606c42d27d6c477d20d4ed89249ad3455d4fdf53fd4122a82e5114cf246dbff360e4427704a7569c26bb477c82731ed984a52e3368f7aab7df25a32c1932f4981a27d4e82e0b61830b238e97e7e601abed437de4a9a009148e865cfbc75a96b14315b1accfd252e1d661cab2818008e1841a5773fbca270756ccd2166318c553aacf82af9504134de4f3cde8992c14c0fada09364993e7de7fe42f8b54996ecff54e722b25fd51df037d4d3493ded04f6507c1aff93016a49e1e0a6e0da42cb4630a79c5aeaa61ee291ecdba09e1fe36a4039fa456781dafa4defa0ec2bb0b195cc0fbff9054fe4442404d111a7a8fe75f61523dc720347fa80816d1280a03c9415234996d4f41267688892b5031a1e344ad3245086bacbdadcf007185c6d95d9dddf94b900000000000000000000000000000000000000060c121a2224
+flags = ValidSignature,ManySteps
+
+# tcId = 47
+# signature that takes 27 iteration(s)
+msg = c302000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 2281ce37d3d0d0894dde142b097455d69e4ac08e358f921dd86fe71a294db8b2732912b1de60cecefc89483393815556dcccdb912938f8469aaa536861d8c3d315b8efa1204e9c7022dc44490ae1fd7e2e9d640b6d0ae8a3a3c01d6a5d0594a52229c8a7028c763f688d3f72e3af83d25a01cfd3b6a7fc31e34dfbba78ff78effec007555ebf96b4d9b14eefd1bd19c66360bcb1e5a77092f36e2d749eece8c89050003630fd0c558bcdea939a53e61ce80ee98842cdd8afbd8840356817731fef575cae80b3eb8678d9884ecc66846c625d1f2d617d51f1fc77fe8bffd994a483689f9f5f05132706308448a3342718d487604e5006d46058fd1fe9302410171f93c3293737e8db35aa27bc901cca074ce2e19c4dce9d029c36553cf92a1500612b7badea5cc4e20389eb01b854dd547850976df5e6d9f74a30c7ed51b2debf80e9e379cf2645d6afce7757c449ed673e12780e2cbec4aaf1732e093b255ebf8103bd41be041df5f0a18f13c8f14097e8f998dffeb55269d2c7f882588e942eba0da32a3a5a193f7d18921ea5c82d7751dd939a448c891fe500efa06632faa47309a8734fa2f700659b9db7037320c7c00ac9b68f1f7de71457289e9b8290d6a203c48c21437aef6adde8ab2cc43170e65f1704aff58af037d422d1519bb756beb6f3f4c0ec653865a354658f305a495d34f183b5e17bac2ad98bf5246b440dc86758aa047f02aed76fa5f27935b3bff953871cd3de843688b13514aedee789bc8ed44eacc66d5b8d6afb80890fbef7c6bd87efe597868eeff71b92820f353ef580ab5e57faf63a762581ef91f864c99dc34d7c2c8dce0ec103a61a443e0c6d78cb03788974ba6a2a261b31ba71f3db05c2c39fc8634fdcae6498c46fa37bca4072e1a0b2c67c01a30b89b944e6a7d2298504b1adf2a5cf00d02efb14b2dbdd1839c935a3620e1ab8dc1c2be6fd05a79af94943ef98b64a8c86e47e3903dc84b7ae6e84caa9b79f2996a015ce6a4e3d7274d43fa71526fdc4d9d9d364d05a2f7f732cbffc9f80a4e5268f9eb57206d380cdaf39b2d64a54295dd31a11ef2f2f4828f57ba6af8ab69271060e25a1d987231d6692bcd82247727a211804879219cc981c1ff6cde51bc630b698e767107fdea768ccd0efa2c1e307bcc32a6ae0483f94a0cabe09e01e2edcfd08445870150f2980d23bad7b5187b0a3eef6e6be018a09b67a1cea314e588c0c41ceaf53206859f1712bde6f2e8e7d30209225de2de928e4d42c34344388feea70b1da1da7b0951e0ca7acb239cf95510dbe0c3ac01187661f2ee604f86db26abaf8113358ec1fa976bfdc0917a28837f63a1d87b95bbffd2266fbd2c50cb6b568782049627731865c43d9a5b6f637927044a49bd7c99efebcc7a65e773aa8e846f4c793d4e9c193ecad8701e6cccb7045b81b3788f23b1b523286f2e6e4c570f2b6c99bbf14d5a79a0faa9ee55c60c4e23e06e8eefef6706babc9a2d0dd3b81c2c8056227d798c8a55de8a49af91f9bfcdeb8683a31e576ced44da0efe91d20f4d15b1c14cf148914b6ea366f676a97f60680e3fbecb29e34573da9d100aa525760eefbc96f9864ab360623ec1f41ac55750af455c0f24d463c2f8b249d49ee2fdaaa7f5c54c9650cf1e94de0e56f04ed2e1b0a02488a3d608f31e67919481d53ceacef129e92b3dd56b199ce2b7df00abc793d2ee82694490ed97df05365c6205e3c502ed9b8f712a9862eea823514fdf9d7b2fe4bdb9754f1675c5b453a4c2ca893d584a014615309d346823169f732fb4ca1c1cd84ac527ac560c9fef1a207c9f35a9f898a06601a5b910971a3319f6c29d0b39df7ffe09ef464a9dd924b86b641a0b66432aa964c94b608c8681667df08027ade6b013173956a73a6787c95a13fc753a7d4b2fc91206c864be82382cc1a1d4e4c87e0d1d9a113bbc39f377d3de28f63df010df89af0cc3ecf30546f2435adf22fa43166dc24f01f441d7d97c235c5dece7108e3601f878b1c46c2ffe75363bebcd293caef5c4b0eb88d88c1f340dc8ca4cbe5552d9136ca1e3d5d809cdec4c4150b86e75f02d0189565ed27b41efb8ba982256bb38ddd04e61b3b77405fc5e5cad0b0ad58a009b68cd7014fa45ce704b3fb295d2f52953871a6ee94fefa1967030f2ee1d031f826ea9102d1701136aa5c81641e2a6afef50624785c8c2467e76f0f903be8bbe2656fb92691cde368c3f9a6fa870f50d977b8b5592922a49c0ae14d82fea5af9b2f7176898869feecdc76b6efb0472a0c24c0e9a2a2970d74d8f9dd1568ddb1a9c7a835e33332236e5065d72bf4522d4b18c7b3d14295a5986928d7f74ca8b63dd79f6fd464c5e0cbd98ccddb1318eb9738f32ed2f1c3b4e929e145accf8502b8a4f3b8f20afec1fe4cef9438ddcfa55a505dbccac90914531f82d2aff47976b8ee1e20f127478447896b3fd2c1a35be09ca69ee75f9958e569b3f4951149d32de2918fbbd3d2b5896f50961d35fddf0517f597c8273fde3712c6127d35d640ea580802ab2b5709399df4ba0e2f2a5a06013dc6779373672febf0381a25cd2924ebb597b03a1fa0f22ac14d77a524c7ab5fea1ccfdc1d55f37252121dbb050555508f9d9fdf0ec12153a48b12f67b6c95ad844a199a623dbae872bd052ab47289a3b6ee103aaed7755accf08a38618ef4d4669ca931d0e14bb8e9ce77e54cb61ed64aba5300105a85cd303bcfeaf167663aceb81eba106ea896094060945906bf4dbe038826e1ad58d1ed44796fcc7a464faddf16a588626f658fe21a526988e78eb129dd0bb4b645b2cf85af83722b4385f535155a1a61af0e6cd5d009f37621b3393b67fd29a171204848cd66797dbd3e43c088c473c26f124f7359e09c75e55bac5b43a19542309acc4b0ccf961cec404635799ca8516b11c5ff7a6348dbf0742a1267abcc48235bb95835047c74cdb1d378351f283e07f48945c7807fb7820564ac2c207f3ecc66ba24188dfb22801dda9b75b308593ab2f96e86c4af563a2c355f7e153901529e580edd95b7ac8ab3e1211519f99a91dbec7873b23b18e776a2904af31fff2e8e100b13e777e5b17f8b35903f9c9558499a1f96a8b8c9f1ac5cfa676a194d86ccbf94eb02368b781c301ad6560210bb28b5173da3a447e8a850279e0b65c828dce1c8e7712973f8a08c4159a9e15364be3d2147896b1a1ae214826df8643b4e573f2af8e6302c2551989ec1c8943be72abd2be35c4ee70fcb99baba7ed4ba46016f24d490acd4bc987c2c434b1dbd8b39ad1dd2004fc7a174ea59fa2f2db6bccbfde2d208e6964b128773eb6eb6d1045df96035c250d56381d451c52503b1f66934d87d449179979e4dd50c6274c1bbfac72161627b288029c5eb70997caf11ad6fc3d46814b08aebe28f40dfb9cc85f4056821d9e159ec9c4dcb586fd8c0d8881566669a8a961e7b40e4b83d068fb80c270f42dcbca2df7bd6ce6890e9024de7bde7603432253c14a0d057ad528ca4f548012dafed4b3174d851e4d2e5c6c168c2417003755bc5a8a445f3d38659c715ab6ab977f1cd13fc9c6f39dd2070b1cee3124ffbfcdb98205a1a2b88ae3fb9f245579bcde9143960f0b897a478bdac9a481f1c53c678c64a84b0fa3240177894de0c4ccbc089f14bee70f762e2480ea9438cea2788e134f0ab1080e34f22a4fb2ddc9e7da057bf0c5614a175022f06b5d126938d97d98fec87c0a917e455b78f314ee56de3251692cc3c2d9b243aa149171a62bc7035e90044dfa0a190773fbd4b00fa7e24447dd5d5722369a74326f29d48c589a4f16c92dec9da8586b1d4af66c4bc0da57e2aae07d00f9c35f031be8256b2beda0bbf06fb22f3da317b4cf22d81e88c050de9a31de6da3ddac483c49c8bca2fe25b6eb87649e107dab2c9b061885ab2a4e62debaf453b683665e7c2e8f3fd5d22b1d4b780cdff2a26b31792f646968e726b9f4708418a60f3f57f9551b9cc7cc68bec0866a294edb9978375241345cbb6bf577268a906002f9600b7e845d36ffae2c7de9d018939006302edad2fa860a4f25cb4a90308d57572284f97a7050b8750b2e02c2f8a9ad5377909ad117082570c9a5da5f512503d78c60621d41964bd12f86c89ed9c74f586b50dacdc4e52b039ed6be06c568782d9049bbe992cc867894dda3f3cb593ee9fa376a3121005b562ce8c7940d4d48960bbd95f77299636e4f1bfa4ac40bab82bc4971778faa924b6039008169efaeeb1ce29d9e44813f22d44b18485ee0a216382d0c83b1b59e34b2dceb294f9ca6cc848e018c89291525be0920f827033b5d9857c3b12b6c6e65627c132c1dc2a5da893860f5ccdf9aa2dc2ce09c45d7d1d4ed55c130bf5400ab60683ed1de5db819d42a199788dadc80e328324f6852c6021eaebbda57e276650c4d06ab792ace94f5cb32b92c40ff5403efed4b94e008ba6dae1141ad079791a3570bfc4f6770fab3fa3d04836ff06ff4ca8127c68090c36810610d960d356568cec1e66ffedc01eaf875a49baa5e5be0ec01ef1849704cb09877a2a80c100ebe7a790545e268af2f1d70b1c22375996aeb4b6b9bc325e6f7ff5ff4d6166758b8f9a6378afe0ffd8063e3f505ab7edee00000000000000000000000000000000000b11181d1e26
+flags = ValidSignature,ManySteps
+
+# tcId = 48
+# signature that takes 28 iteration(s)
+msg = 8f07000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 17d5c276a96ec04caa598377bb8110226ddf85feb0dac0f0d3a4bd5ca33fb40d8cd5d752d889fefa66c900bf6e909ac906516c9e813875e758663c7fd2636ad3fc89ccb7757c0eb799010367afa46a17e113b16d546a8f8ecbae132efc625e3bc6054e3c900a174b6d47b3965b3178d3b72b0472f37d172ad579de128e19575fafe7ea64ea116b63fbfb4d5b5fc956bfcb6928b8db0cc7c5a889285237fa7057b3423cc7f7b950f834f7e4a7b168ad00e841ee13d382462df9d5fdde517e759d16e48963f60f117502b74e97f680bcb4ae2c35af009d9bbdacb794edb131715470153a0eead1cfeac73f8c8cd157cccbb17cd1386f65c4fe09097567794e2d7e7eb3c358bd8b2375f8f9d0f32d28bf863599939ff8fab29401d6acadb1b90f2bf1d9bc26221c67e78472c7ca78efb2b4ea49dee8489c01abe9ee962277c34805c024de06414c4ed63370ec5090752a6fd19cc36a50d3f714ad58ee060bf67b6f4f988c35d5cb1155f702311eadc7fe25ec25adf929033679f5d0058a45dcb58e8b4079b374226e26003e5bc5f76eeea6fef86af3ae91f33c8c359e2a297a69a105817c7e67a6a00a4d8aa31fc848d8c4f274b3b5ea34a2817b515a2050ce80bcb0c21bdb81f0515ee05633d94feea1de19534ef33da85e5af0d4fb0e81e4088a981392f96f70dcfdf0d0b9d308c26120e8342f8b6107cd0bf3553554e4deff879ce152425e4eee9860025dc4ba9bb090971903a0db863c043dca4e8fe35e9a6b0bc26129e18b94935fe816fffca11357af56ac6c837f0af36da11e4b43f74a0ff2ed62f18fd5c02c7a064e649031c2d8f22d6dc1a1b94f39d3065447abfd9714462e137bb92b720091477ee1c1c1666f4b92d6a8b61c70d49200c86e8cd9de65b209a262cd0c6e6774810daa62b16054d6e18955e4a92d3015ffffc7584bd5829c040ace9011d5056bc914960ed785b2225aba0eb56346aec0d7bdb1a3c73d1e39c2a395fc874cc56648951a98549a04eb71d30e38a90d7e545fe92c82a7663b10f761eaa01e96edcb799fda895f9fe14c3d0ae4922f34a89908cbe60c107bf9d8055e050d08cdeaefdeca1688a7b26e2ba558650e90b24306e575d046e1f3ee2d9c3cf159bb20d711d26c92c11735a50f40184c97a2dacd02a1acc4abe4ca286e4c599b4d4b5674eac6cdd4e472559d59a13dde5d4feef9bc47d76875790c8036dc29448516be1cd56504e97acbee7cdc5273ed3700aa7f459e1c25efdec86402f181664e764866d8eba3adf852b83cf135ded54d0eca77527870650da0f2851bb4906320808d302feb7e0f9db7b8cac98a62a0cc7cb97e7f8a7ffbfc38a477a201719d70172e59e8ea89c482e61633f9a0a3cf672f6217479958aebeee3e6f06ee8ab9f5e9d0523272c5164f1f94a3711b3e681ed03c177a692819ee56da4059ceb171af119c3976b197f005fe8622e1b4415f358fb34a73215bfbaa53886ad84ff57ccf42b7d57847a26234235ba0b722b89f9963446d67dc719bf8de49f4dedd4c516dbc1e1d74bfdedd36479694a9acee7dcaa7df55f978d38da1d183bc9c0cfb049c9f7da0821be315b6118d3387734922723ba4919fb703cc2446bd4cf30c1825a8bbe7daf08219ac5c1a3f897cfd7f66e77de3d0a0b7b73f1166d770b9f7c0c6d41320994aeb526b6ddd4afa6dd10295dbbc5082dcd35e43ba91dc972f78665043228a14d75cb666e503158bfd4c668a29d358a5b2e03fa1cf5bf15aff4890813e52a2358ac79174273074c118b63cbd1ed85c8c3e9cc7ff5c1c9bc92b848bde3a7bbb74447d430490b6bcb86158120479a02b7ac3ca61a07d76dce2942b1fc09bb33972695c0172a66dd4fbabe80e333dca17aa5806eaad072f4b17300135ac118f943dbe9041d4701b424d1f88b27b8eec8308a5bd153f7949137deee238c833c57bfc12b87bbafac73e1505d0e92e873d53772f29c7c3a2e6ba4e11f825d631a9d1caa3e3f8985ced7f49235bb907c2074fc368b77bc90b6d1e4cb987088518e054f767127361d2faf1d5feb35cf9210a92a4e3ef144bcd45dff7e2c2757d472d1255549db29fdba7616f9f9c0c472c0f4349588f94e77f8f0cab52a50029b93c3f08473f512a27c319d45e9d6b52cfada0adf2dbba6db96b326c3594f16880913cc6c1b3be8f4953d95ae5096f03a4a1224135e2bfd4b5b429fe564405dbc2ddf004f36bf633e977887915a44105ad2652fc17c398fa2e7c0eba0f69fd98baccd64875dbd5f2fc660af49a5b50dc831f41890872722d7cdb906879e03ebcdd321a0e81478276733bc121016df6c9a3d1a574a9dcf6ca489f4c82058ed0002c367c92cf87712348b7c774baacf10c778db313dc5c83b3e0120ee369780827532a52431faf43b03585dccfe97ab204c33fb2b98c9531c95f6be5ec435b0a8aebd7ff4310bfa221be76283e7534679917199f616e0e05a49b382cd26a4baf0cb0e1053fc24bba4dfd2636680f750c9c69fb34481ba0f62d106937ae7959604ad554fb2ffe53fdb926ef5a589cc21e5adaaa7ceff3e2a8ea8606eeaa79a05c6d9fe2cc674eeeae2a13cc716720472b0459e8fba3f0d77d60ff3e48f08479deaa1c098547da855b59fa12338baab82ea960184b72da4adeda15666610164743db8701f2b6da9dedeb2a147cd1e4fa5125e8f72ef40f14c88f73fffedfb6ee327c8e20708dbc0e4eb8b7c969b11ef8ed3b63c55027773b228f08c3dcd2a24feb716bcef64b5d2d34302ad721f6cc236c6694756990addcbc0d6d35a6e9a9445de640ce02ce9f2b081f09774ae09fda994fdea5c63b7aaa37db7268c56e11898856e94768e47c18272285050a1c182979a63a573c17b747c5393b8ab21dd17849a00889c11bfe28c60d1d604fd716202949adf2bf49db903841f4ab64bbd7af3de775f66f219e40a6a61f5c2eef5377a196ad8c7837b4211b531aed7c9969125994d6ede189f872f24dde4b92eb13f027646ede13d35d02c58f5cc094ba76873c817367805e2169011760e22b8dcaa5755180cd99c7e8318ff61bcb7efd3ce0303ba669419937e0e41bb4bfa960d773a5b73282919dc9d70b3427942078e7bf1706a67ba52f047c8795437d28bdef9e78e95b3ed9545177db31920d138454238759cd45e7cdb9c4d6bbab70654e2a65e1056c2ed98d9c601e13a356ffd254231c867b81b0f9ade2affe15ee88744629eb79a5cdc5ee4e485d663bc72cc1faaa61c651cdd2e9632019a747d1b342b1f493a1395b82854f888393f4f75907b2af70defc62e5087f1f4899d30f4a97581f009caf78a29b20cf38eddc1cd80066b1727880bc936be866ee4a14c994790cffdc7dfd977d9af1c3dd23d5371b8dc6c2a3b043e8f92ac954e7839e1b1934ab04b5f51e8c650bdb4357c2309b657ab2b968430b903c363532c8ce386ea00ea8f8cf9614884ad42098a01a4c054853149a5013664f5bc69c3bf9c237eafb9e97629af355855936f56d0d943333dbfd401a89a8d3b0f6ee8a5c7916d887c73088c481ed8963c54517040846fbba24191a1ed20c09f2cb2a0032e1a68e4a922c2e1bfa51ab6e7326490953b7a5a1197597c7adbeed7b43d6329c9969bad56140b6fe5819e5915ebed1ebe120970639467ccb2c7dc5c290ad0693aeb6ba1a27a416b3e21801ee1f239cf179a9258e9c527b5e52103e7ed22f67789a030530a536d90cd8b6e08f389921779ab97fdb4129d07a3792e4e1a64528131c38463e6d576d554f87207406e1587d6cd30caa6a0de6a7f0254e334054cb9f39430ae1b2faf0641908c09f3ec50ed1ca74f3655457c96b1e29287ee075c219c82c9fd2ecfa53117c97fb46f8398dfd351cf035da70345999dd6b0ce4569ad448f6475f343433848e8bf886b45cf4166b63e1347a60a66e05d76b6489c4c1eb621e50ca52f1cc75a9f9304b6d546240b28c986883e2a0be4113f8d615b522ccc40569978572264d277636e82428af59ceb8c2b175b4d3dfb053cda248ee5ab5e44b51d6865271c9aeee589e2b2b68e16f91be8dea83a5144b24f5b410e48877ac7f1a734b45c5934589d2f5d5acab37638fe9a5c52004958be19b731c5d98a3339df150a80e2c6ae6ab1e6669065e9eab2d2b1b4e29edaa919ed1b1462f02b7da4e651fca499f6c114434e1775afd9d1c44c55ddfd5f7936687a8cd6fd2ae67daf6160749d146c5fd1eb7d73f9cbe8ba3d4f50f98da9e221d2d5284c8c258d12966f6faa422c3872021d71018839557d80c7d7bad4929af61bc195b34800c7a3a18a9935cbe648a383f4872e796b87b462fd585d14e8ff432777c798a431b56714e5ea4a44b1f049435d2e80e2d7e378c97f8c289449919eec2cc8f535fccd6f53379acd16b55db0bf7f4f42ddd3228430c3aa89d632e9fd76a9d71512537b3984f56b11618fbee1a79a5aec4256c4bd2d7b0fdbeba2263934dcb4319c850776fcbb0b9e1ddd9da387241b0d7a54eb16147d0be86ac55c35a5a2222827339f73ead716ade758ff346d3f981fc5e90bf2aae42cfdd059ee634467d09214239119ab494c0db85111333507996c4cee61423264662b6e2195a666f71c62d8c9b9fc7ecf6020858eb4998b3c2f000000000000000000000000000000000000910161d2126
+flags = ValidSignature,ManySteps
+
+# tcId = 49
+# signature that takes 29 iteration(s)
+msg = 2001000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = d3ecc39ab0177953c2e5afefd2a75e55e7795e49c87a44706b7b4964bb9f9255f4b24b92e7401e86f5b79be5dfe9280112599526d7421d52c9d9d49626042b94ee4f2ad3295f4767936029b153c5859ad6c119b9f35504ec3fd0e002cdd67764aadec5e38b11d79d458cd290ede3372a41c7434f285fc4ee45599c02c85fa99b5e0b96fca57f07a494c621530be5ed69598c2adf48230caa2129c470052c9047ea0a622b15efa8c9cc5b1e8c6970b99fdd7281273dba1399a319428f79969fc0cf07785f22c6eda6e768ac8230e440c8bb05606a9cabebfd264d1316ffeb9d9574103a70ab3cae8f22e04c3bf97b5bd293ac496eebf9787269e430f4be6a7591ae1fae037f76b14af90046e6ee0edbd2314fa16ac3eb69d69d803492cb5769ec93fc197d2302fdd46391a724dd51c59229246deab0809ba4f1999c0fa2c85e462c4c26138a4a9f299bb25eca43657a7afe4a1e420faf756e3bfb77900da25bcc183bbef7413ead287cc539f03de4f56c2ffbef8312b5909b87977f16dc0e65245d4d1069e46bb7614034ad73acfcafd64226b692dcc03e695bbc78ece5b1a5926a346fe5e8aeb81a3841cfbe010c69c9b06a0b5b81f772f8ee7248572279d37e325e17e81ae2479de6702df4d4c376be417c859921c7bef00f9b22bf1c3f56c36ff9475eff8462102f79c75478697838b384b1c57f842780a9be46d3c4e6f7c38da187945d283049d8c0278f3237660e612f50eb73b389580f740f05382a732b94bc7f3189d6cfd2de2c6fdc6d7d57de3b897df45c44ec7ecf1d4cec370d87f4cde4ff470ec42df2ae0db86f172b146bfcc00b34d4672cd80b06e74c5b302a7e5fa7996d930cf821a22432f40ca9ee7f3b0799c87ee1c20ffee186c15e73d32fc4a3d77853b0c3caf44757369fb5956158315358269b3c93db934ad24e0bee4b323359e97ba982d78873189243a0eb5d7760fd842fa2c04d52f3ea45f99eff1c236d833bbc8ecd88604b7e33f8981fdcf2695069f10d8de32fedb94f58fb438dc9af842698d4651c74383b63e2d8925211e02601b8642d34090449ec8703040ad0e5dcbbdd46db0f9e2f29f590b6688070cb2c868d41d3ec67d7305ae6a0e39d9383df31e30aa8071e481c1133c8420b3e5a3d7a2681f490039717ecf088b219258c4449ac8fed4c40c805ff4b77d7c28d0b5a0c8cd2d19e2370142a4fda7eb0dfc9a84cee9e4c845e8643c8108cce254b716dc4b562fd2535712ff840415212bed1fd2417279ad11b743fe2895598dfa938656b7408e5b1497fafc13fd12b3fade0d40a0820f81c430cc50ad677bebbcdd74ce14682944b9e9024d681759b4793c246ccb7ca40d889015f752f73f66e60c61f5e0f459bacfc2c413b0c4cf63fc2b7bac814ad822ba4caef6d6b7fd216465efd0cc6cb4b1a20fe66157a8853975b1b2c271fcfedc2912d1535972fd00f4d37a5b08619e0abc563ec994cf36f5a89cc5ca6fb244d283599d42c6a21767442282a4d18e39e31604aafbe240e48fa1d7a89191120daf5df393a9b115e9867c336113c45742a90d1d4113c66891ea46871d822d95197f077e8438ddc7eae6c33dc4013562aecde7a0168f81afaa2ddbed3e2cbb4810859c2fd5a3495213b97d6e5aa7d9aaf6ec2118b6ae7c500ff3aa12e5469f2b58fdc9099eaf8ffbac111b49b913622289c81f6a690c4b3470a619ad960bcfcd1582fa9ed07b2b9c839c78f712573306a9ab454d7915315f1514053923dc53f7fd66cc142036e49f0bd58e708862cc263734ec967d5e4054c3be0369565dcab83c9fab99219aaf21a168e72584083fe2f46fc477902b7954dbae30b668db0507f29d4a64ac358d3366abd0b7a9e8ace99f9b0d16316ea74739dd47a010bd6ac51a9142122ab699181728ca1c381a941516066ef624c835ee0df7e4f202c4677417953775d5fb252bf8ba53ac17fe2f1af324a168959f81567da9e73c3bf6bda37d3d53d9b58efa392b9dd81c5827d5fcab7bb4ade73563a26d83c8a535ae23339820c153f0f79b1f9cbe2b16cda032cb7883d3ae368859ebe159c0be2ecb5b11859d27afbfab3df898a7b90efabdd58308ee3f099ece6f7fda1fae5cb6ed55111fd4d6cdd9015218d830162cbf03b5c4cac717de09dad6c0998b501a51cefb76c4b0199c58e2e316127aba37682de5c04dde16343a33e4e5ae3b6295793992467cff5e8e6132ce46e2af6747f60e4e91bcd7a143d1f42c8e9fd12c68221b067e7f8c4b1d0c30234657b7e4d64c2016148b84287258ebd1f1639bb8c517814fd9992fcca0c15633148d7ffc8c8531aa0bf43a23ccdc423878b58f71dc57fd617c185f62a51d57aa938b95a9fd85c4d2c7da5ddfdb83e14231a1800ccf9e755ec4ac01970cd94cb50681137a8f00da4938021120414caa08fe36bf3e32b7e660402cdc663e8cb4a9392e10c764024469f6fcc3b10779f0cf3d7beb160ca7638b949246e679d534316ee8d61dae3b321a37786ede9f94dde73f88d5e49aaa40121d0ee9b16e8e1c56aac332b2bf503816d6e22cf50d798e3fd4bdb003c5f162e61c887a0c3fcaa35140f3d718a220044f4c4c581db8ebb167b42c2c9ddae5ce89458a0ef92d7e741b1fcd295d49698eca399fd98089a0284c33f13e715eb19883c42af2b54995f17a5499340a20f38a109d218cd7bffeced7a1d16f3b2c4636e84d580cb8c1246ddcbaf1e7f5a52c5ea48ee90b46ff64f91b65379fae27d134b5b8e284237f96389ea2a94c2fda31abe211d02907dcffd8ab33f9a4badd34472bfb22c5afc67645f38da26ad169f699f76196f5e33087e15a38ec615ba6547b38a58ef56d81f84dac75528b5e70c88b2099715322771eea2d741c39047f5e460baca9ee95b2a19b2f5bfd988020f918e6b62e9cd405c95c473bc1b6e038ea2a07d997551488490a15e46f58f8d6fd239cd0991b6264e348e9f1c6cec3348eff7466e7e48e91aaeb9c645fc690f0a89bf8048f67a7d67967b42be31b9d53c5c92dcecf1e16c451564a2d9d7a34e3c1c7f17f71eb920aa8cf51cb609a4af0c5b6c44ad4e3ccb8346f7a86589d05be01ec908eae69ebfeee12d7d05c431c7ec7ccaa0498e899aabebca31230919861e881f948f085bd519407be92ce923ad6470853809bc4367d9ace4b0df2f43e208bd98ac18a77d8fba7fb16ed95ca128db6b52c12d33274f9d169d2f559545e40e3ec97c1a779f04ce772329a4fa09768b9681200ef3b999c6778ff606d6d2600c4651da56c6ed88d0b2ee4a1aeb7ec3cf60b3762ebcdd9111027d3bb2bd07dfdb01a9a551a338cdc3b1cf03ca36c36453eb60d66943953bbc2c10594911e6fba766020fa1ef62d7f2e1c59f7e208c1dbbdf4dc27c0a4495d299d8c84671bebe8e8647ec6a8acc6359380dd15c26d1c262371d9dcc0472202da4d8bbb828a48f3345b6939830f39fa3e570ddfd857f47f839af31fa152d97aa18092e685c6741efb93c04a31d91140140b0f34985a4a9ae4d960bb2e151a629247a79aeffb8ae91273f8860dd817c1760120a571da080f2eb41b4743ab714ca418b4645fdfbd755320d7eba610684648b3c9d25c0abc245fdb86397b1eb1ed4ffc280527e20a6cd7751cfe6aa05c836a4bfdda89ef9a98d947d316feae68be99a6e26819255cf1d20b6f5b8c2ed24df630b43d88da5e9dfa82e980f75f8e2e1033aef4831558e93bf89a103daaae10c963b85a0e2cfcdcf0787ee869cabf8c8ad45a9857fc8d6c467439ea0a0bad13b7989805b81c3c69716e74f78d8c45b105e589edd9f3b2df2b94d79caf99431b85c19f29e72e7593c61e93655109a289695bdb38fcbf48031894ac5e04519f101a7982e3c1b3bca79d49e387043255908e55d3e268da93e07c894251be04dc6ce639df29125d69e7bf6ec910e96b85c9608381e8c207ba05c33dd7b45b43bbd1c410983028498bb9d7a35e8df7e4567a6c5b497df1436a9cfbe0476fbdf72f4657593aaa11abef92c0fa8ceef1e47617abad895b32233376254ee97420970ab413ec4bbb5386b26df0dfe7851f0cdb2537c0a4e184b7b3097884c4ba7ebaa5c11fa56059cedec40f3d6cf982496566a6d29fca2b1de8efcd131889472948d020d45ffda51121d247611bb498f788adbc3b43d893eb37774c97956d438f902522ade3c18ac82ad9fba333cabd2368dc4c438d2479de45795413ebe3beb1ba61589287c55a6f5e07281d0160c0be7944b5209836b7c81dd88935c922fe9c9554f5ad6301d12c2fe3be54631c809ecf259924ec99c9dcc3bbe0be8d5f4846aacc352d56e882ef62a9645a46b0bb8dd2d5b4de64839cea783b86205b81ae419eabf66e5f70074f4ca5c12b946578fda9465008219781741e43c2ae047a2f0bfd54e37bdf22eebf5c1f7bc2cb8988c7d6a73cfc78eaec7dda51d6d7f6377f322f07e98243b71cbf2187c318b652feac32654b4476e9c2a5b07eb9aa7dd5593c867190ee9d896d549347b59619649f01ed617a01f35e847e9b29b3a3d503ef8d89039515d2622c6b1c0237da29b3648faa88d43008dbd466381102c31353b46cbe4effc4c7a87093cd0030f1886a6bad636396465789bc4cae7213643508185bfe00000000000000000000000000000000a0d10172028
+flags = ValidSignature,ManySteps
+
+# tcId = 50
+# signature that takes 30 iteration(s)
+msg = 4901000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = ae24fa5b2e13f7ee71d55906b8d83994bb96da7b88b98568987fa7ffe9a72544552d227e935844c7b1602ad91fa0e40ded2dd5ea2d25321eb4f96be7a9e167718259e901197df2d53efd428411a073346cc9e57a23c687adcf5864b001237d34c0de91cb319ad3cf698f11fd2ccde9a91aaf2891b30f0aeaa24529c84134076b014b410029cff5d4de892bd24affeedb4972670b12eb3ea3b06fd6c91ac1517515c3193bc2953fa5a9bfe173c5da8201da2fbe320d3fd2569520a16342a30da1d78181bef31a5aa53d2b8ec5460584082dc93751ee7ebeec1108cb60f5e7853e49e7db6055df2f7cfe35fce2a2f7de367dccfc980155ff080d2d7035679da1b7a83a4df8f2d0dc105650db1b981a744338c3512ee99abb78d278cc2678add260d9d68db7e2830c35dc8a32124bcd99c72309e47ec19d3d06507ed6eb8f7aca81a9839361a89c81d3f965627582652c97b00251533a3cb6cca24d492308faf7f685929ce463cec39ae77621644e8d1579fb3d208ef0e299d11523e4b631e011317f78c0ebc1bafc8c9b158168466158b1334fc6050a582ec806c8dd882f21ffee4c884dbcc5dab1d69c2efb45e4de6fead2f6f5ec9059e4b76b2356466dee3d8e0f2eae27a2eab778bacccac670e495ddc9a824f506c5a6c2a0a024f74530ef5ada75547d124a580572299c4705a24e263d2f90f1e9121726ec267c47cdaf31fbb0c5f0a4d98230fd3c4dfdb29ba2b6dcd7c12c9197f1520c1fdff81ce570e9b3c7693fa79b7154528e843443fbe1963ed6964a4703242498dda72da2d843e2295dc633b2d6755e4cc5154856b208e02184aec24cf05a00336e4d0ee4f640592c9b24777438eb9ae28b783c43ed5dd500e2eceacd2309c9f7356a4b276dbe89b69614fd749fb4181d5d6ee45d256b48a55c892d4df68f190ecde11b87fa650262048c99b00c3e894eb3587d8905f261e47489938c626fa611bcd6d28fc895bebd72059f912231404a56a238a3062f978ffb925ae0aa03ecf3be140f1bad2e4bddf3127bd8904186832181a00a8cbcf23c0b175544c1e45d9c3923317fe1bfb29d8c04c7f0a08e3f6b37da851ace7e9bd33392fc06fc49d262d1f8b4d80174d43f8b7196aa262bf0f8f25b42e13eb0e827096f2074830464765020a51b074853cb8ee88d229cf91d07a1c02de057564d3ee5125bb443f7b981b429688eee5ffb82c972c14d3b5237fbe4ac5611784223ce00f11fbe4636519f3ddda9893c87dc942eb30660c816444b1dd7228a40b907c9b3f1a46cc166a75dfdedd6c76e38c89cc1537e63cec449c44be2054be2bdb0df0169f7be37788f4cf8f9ec5110029aca9e32f76ffa2b68db9fd0480490f894e93a66bc9870a17c1b9ae0fd477db2197a3da06015ff9cc172f6b297b5c79a4e6943df6384a737f64caea0c5abd7a799ede4dd789bac30d7846b19ed32f9669de319d67e7e4a61bd233ac77e9da19696c9c4a791fdebbccd285dd4fc0bc3af634a9556650e4c730381075050ed834e036b25fa9125d262520dd095b7811c7f4b33c82171ceeaa664227502b0dfd3cead3593b2fe80002754e00c20c65c7454ab8869e014c3a635d9bacd6116b320f487bfac58b1d4620542ce4f9303217b7455a9a0b7f92f93334b2bbcc51928d04c77e2fe376fcce692d7c36d17316f3f85fa43c994a4b672a1ae2ad8555331132b35cfb313daff67aeb9fcfce5dc440bf87062b24f9001b857b735430826fe4bfeef055a7657269c352fce093270f1b1a7241ef8543ace867fb142c2c78c4a1fd9bd094d8810f3c5c93dc9841535aaaa573b50814df0815de79cc1ff7dbd3ae869f193da637ddc5ea4d8fc88555364d612c3c5ea0230df9f75732f8decd035a98d76aafb58b5ba98fd311561aebbb4f161b3b78a6f64000972e57684ee68c9af4f708f5126692ab09c23866bb6cce9130057a99901647de175734d830039f21cae68133e00f7c0c13baf9cc8b7b09281bc2902b4f1e5e17493554fe7a02964a2d020694bbd049250dbbae5f088b6127d2845741a75249e163e8107cad459b68b52818845a04dc373d475f25e236f72f4b8cf883f4a25e857241508469a2c424ebc06450bfa33dcd2c342e0c3d170a06e0c8ac7ef2f5efdbe57ebefe1782eae6a16c9119e767248abdf2a3fb02bc9419c0de7fb8be0b8dc07afc74074d8d44cf6adc0009ba73058602c2833f4d862579e8b6049a42de92cd76da08b3b8b8e442a832b0c89238e1ecd862f629c691c5ce627e0298574bab49373710d096fd06f12c1d131f134bd3c51c48abc06371a8c48ab907aeeef68c14eab063a6d99c9ec8ec6c860b97f43fe0fdfb95b91a4cc0757ab27ea22ee30d2a69704c7526377b66b9b2c139ba52a7b5b03971eddfce00d155a26ecc56093f6834726e86ab6eb460798ad3c6208483c413562b62c57591b44ebc3dc623f01ec7f622de28ce0025df34eb9f669ac95e0c76c0dabc8b084230ba2ef1f11b5db27f34e7755656be244bd72d1816f33992cd8268bc94ff8e9cee4ab0e34083e9ddfc4ee1c5f0e7a5a8a05a0b76863f4b637aacc8d1bbd87892ea844ab3368a176859eb48b2f6d3bd89c9f4276a5cc1924792fe3be2d1031f003107fbdbf737392c0ed2aa950b00e9ceb0bd4bcf2964708e17340e2d314f7cb912b9a4d2d45117030f81d6e3746fba9cf5886c94638f1a53f0ce891f0b88a33538a311a7da219814e450cfff5e76b4b872dc53a88f3441e12df39298d90cd4126987a56c1fcac0ae94457b1dc8d2ede35c5aee0009d28865f90a1a360d435ecf71d6d0f60a978a69e5fc75ee639d15b0338d4a39e12c09870caa4bfa89989ae7c0067d8d2e142d6457ae900218c524c074c9bee39f987f040968a57fbffd0fa7989feea3589d68f0bc281cc4f7dfc02441c631724e480c7fccff312bd4f3c3eebc3966780e2b719905994e7cb66283b313eac6702521a919994a1d1bd9616964388ce9a7f39527728c67c7ea0bab7f85bd13af7c4518f7c58fe963ae6e813880019f7f4d6813c74850385b8f6b9c0370728d248764855fb8281a5e5acab688d39b7f3e246dc111c3b83c187d676402163bfc63370dd1fb3f496e4617e6503f6524d8f6ef509e54893cf70333d6907f5a4f3404fac891bc6daeb12df9dd16713da93982a4d85d26c1b1ecf2f4615008b5177ef6877a980e1caa9e9b1d53db7c4b2547f6cfa4daa908b292d2f87c7780b48b9024487d27ae1172026a3cefdf92b8866dba1736355b972d663c376aae45558156e9ada92c6c7d091a036e78978626a679eeaba0216fa0eeefc1f60887ef9e80107f9fb46e76cd26dc7dea30ef1ba91dfc2fe431f7104df08e99ba84943917904e188ac3079186aa472b1571d3cc4de95a454eeda9b4592b9724c9b4cb768790474a716d47b7c46ef9bc486cf1b3231ba38d3dc58136b1c164aa9f4299ae99b3474cec84016e9b7b57419a6353cde8889a5f48de38bed8dead721c2ef3871accbb94b19c8c0112c4d2e7b2fb1cc92a144065251292119c74a0eecc47dd8b252a44f7668ef100a5b661967bd5e9d2dc386547a2c73005faf300b147b92140460bfb4c29219b411394b9e60e20d89fd02567bf3568938a93e8025e0c1c24db2614293c5ed62b3dc75c9eb6909578afd590aa11ded16ce367769fa3c20cb5e068fc6470819804f220e2008ffb516d27a7857d5e8a8785097701d056756e2141142204e13882ade1d97a0a575fc63152a39c44f2da987b027c2fbaf41745945974c87610cee657f76c9cdb086b9ad84b401739912ca96bbfe3877c17c74a333ff98e52be971300a095c740b5b093edc6ee473b0bdf0599656282becad7e114768236f1a2facdd2d1e085e88d375be393412fc14c646b9528d09def2b9a5ef44cd75d3356bc10f1eb4b5b135bf607d32a0741b7a77b03fe44b4a8f21d2b5190b01dd04961e2b3c599ba6c8e175116af78124b67085d5f075d54f1481728e60aa4a007f7124dbfb03225b880893fd7de61dd8d31953c988d5454f973a84c4bf56f0aeb7511cdf3c24bd715923da359afd11e3f4d92b0a17bd88e8ad22e19d0eca5014d8f16d0ebbd81a0dd75f32f2a7cda47b8fc03563d5cdf5917c2b4dda39490162dcbd37e87d9ad37d75369e02ed8daf73904ab802f9b41495c3cf3e22096921e23e6abc537462ef71cff0f365e2975f3a3a5836e5a09b27d72dc4b30f8c67f33092ef288e5eaa52f62ffdf8fe7130c8dd93f99c530c0323019830220d37fb3f716d62bea22914bf0114eb0d92b9f3a2a8f1764b61b2f89d40f1780c834161e5f41f75a46c338418e5738d23aa2e3dfbf580fa7147a42e6865d13a69eb6b79e0603d1176354367cbdb4adadb398b7239862d54403118ebc5569f0454ddd954a2553820b3cc2349eb234714cc618fcdd6399aa3836228256d418f80e96c26ad07f9035b7cbbe0de919c51cd5c8efa7338483bb4480d21a770200dc0802aac83753f882c8fb555bc01c3bdc09e3d5cc2c10dfb9337ae7ee9868e34cb671a0d4f31da52eaed9f6513b825467de5f2129b79b007524f402e3940556a6c97a5b9e125495173fe0b394a6898c337999ae10683ec151f3cb5e6000000000000000000000000000000000000000000000a0f15191c21
+flags = ValidSignature,ManySteps
+
+# tcId = 51
+# signature that takes 31 iteration(s)
+msg = 3308000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 5057aec74324b4d5dfa965882d49ba03badaabd76d7e56d1339d35893ad040fe52deb881e999796ac3ebfc749a6004b51ae140a6c0f3105c5b0824fc17d253931e48ead138217bb5fc3776f4695d4a6a34d387856372add58aec8ddd81442af399b0be2c79c2f4ac6fb0daa61bc48c1731cd818c9a421e6e61ba1228e9a66cb5d6e72cfd79dc144ba3a51849814df30c7f9434afb991d8f824d42c7c42a9c055211bd69816862e462ca4897e8661ef3a3147f362e0926fda48deaeb0e7062837c071b6f69b880f389ae55f2e4c80f4ef3bb116490035fde777663eba8a4c7e518b4721988539708bb714b1cd26da8702bce552a3b905113f3edbb6b77dac1427c0166a3fd46ec1c4ec3858c4b529145e1b9f053c1904d35f0a114cf547ceb588d5d8a5dad2880a18689e439603586ad119a04e03ddaa0188e6331dcabcd0dc223c469dc32e041ed18bbd1676c7f05b731b262a0c0a00e86753b20c9dd3d5af52c449b9c462626de5bc59cf018ace4ad9892e924f2c9af15f013710c31832609a819bf99b09b14663a9f4b0078335e81ab50696a65f8c151301cbb16bbdd3397eda0d11e5d56d62265e49a78a34e5e5bd9893fce108da77d7c17b50abd1f91fb9b7368084a8b2820eb7ffced530f7e4c78c20d1408e224ea17a19887f4ded7f7c4fad037a7f566013c082d633c3e62ce76599a294fef294f79334d7aafbb8f8b5bf3b9b58a82bdc0fe49c73f82ff86d87d9ecd2885476f9755e2c270bc01dfc8344828ccc3ceb88423e1d52285e60cc140bbe1b97cc9ea4017540e7078802207e94a037ddfdf0b681b433bfab0930fd1412c1b36ef643df0f3b3b00c05669dd77d37536c3f48a4e7889b365f19d2932e146f7c9702be9aa88f5310ad738a1699aab1f02f7a525f212bec566cc34a10d7c82e543efdad640e00f6a380ec319f1d48d8584ce5cd6cae835d23a099d91f0c42c0d27a14cabe283ba043401ac7dca1e8b42d8a8c37923ada7ce4bcbe0453055cf83a1ce54366a794e95f62e3f6141f3e0fb78eb181138b77c0474a0e300a7765603f35a2523b6618cbd08072ea8323af7a714d4ee6f64cda0ea157d52cae5775f9656aee2db5728369f9a0492428ae02efd457123f4d08d92a29a9d7943ed38b0387dfbec6dbc96732d29caa78ed8765947637c00fcc028d676d8a9981ca97fbb5f252e836e93aa8dd37000d43d047c57009bb88dec672b77d8df3dde4ac85b01773dc00a43c9fdf2cbeddc04ba3798ee18126b0c750c6d40ec0ac076b8dae0d5aa71b3e72a71603c82083267849b263251b86ff5fe1cca0ddc3747a353392a47ab6962c15e005b2578094f9f9a8097243dd15110068f941a11902d3148143cf65ed30fcbc172e7f016d629f60a584d9f4a0c539561714f1df67427331f3c8395f559afb56ecf7c5702fa34e923cf1da8280583fef6ba1570eee03dd7efd9b5add767169ca11a0eb538790afb05694b2719a9daca1bcc31de44d0d5946d1e1565d6a476373b42c9f05e01b9d39a921857ac666d190205744061960b94e59c805b0d840a140bb48817deb68e6654071e7b56696f30a27368c36377ec8be0e4088fd23623158ad7cca215c70b7dceceb220de0509bd3ff530e2e7bc1d3a9358ad13794a5fb2db6c73965915a193417cfb63f3cc53fd48d94d308f27efa2c2c096a14a1495244b437b4563a2eb65c7b906816d205e02a465b350dfb7b88403689c8930d5898f41a4268059b650237f60421607440a16ab8b0b1067fbe9460afd8878742a73914c6986ca5d45dc516665dfa4fa99d733865fea4cea28ebc12d50a4edb7c1b3cb2cd0dcd0fdc6acc6f7972dc6a8ba3b3c13d487c1c1f00883c2c1822fb58c684427b837d457e678a79c0de7e7308481721d9295dde258d2f06159c98e2f70a9be35713ecaa35286042d32e85b760fb79147f11c248790a2f274c09015d43fc33366d7d1ad713e2155600eaa5cabba497044ec99c17afa680f42410b928adaeb876bea66c1520bbce3da46ef8d3ebd6f9bbe40a4b643d1ac5c88cbdd26023b88757b2f6ca78c197ba0caf240050e6483fee64ad3dec7ad61f8f793e5687d9e7ef3bc554e69bb8f6d0ab7a51d3f5778ed262c6d32408d74879614d22963bff3fe484a83ed82a181242214c5a919f8e510064f095ec8882e18ded7dd4c3e76920200cf6079f56887fac3f06cd8c3b70ea053164b912fc6f6ec347b78e6cc3516a89dbe136350ccfc55204ca112b2873359ccb8d30e748f36dc4e9e2ab85d1eb31df27f0297a6c7114915183cb106154c7ed467dcfb0ec709271cb8b64b430139cfe732f9ba697fc5833063039a5d5a2ef59d3173447510e0f59a23be4ebc341356f2205822f0a66d65b7e0416e354d1dda7f75afb864fbbea967461f69c0fb8ea80262f423bdfef3f18c1fbda0c042fd5f4bc7c0b5d2f7618bc2be24ec820d8986a6e7c345f22ef2832797e5aefdcaa07be9f31bdd35d282eaf46d796c29b1e1c34ad11e02f89403ab899c49721be2a5e4a0708abee762150069c2dcee161204cb5bd680d6cfb340680e49f79538b5fab63ee0272fcc33379dc778581eb9b5aa9b72624eb8bb28697d6ad8f16ebb6c29aaae800f9f8063d8885f3f8293c40cddc975c005fdc67a9b79e6bdf7fef1b30e3a0c3ab51cac4ffb15d320acb9a969165fc8d9cc4c9fdff4423b9582c2ba54fd73069f1e59a3ef11f01d57e55825f87346b74cf5afd20b5569a3cfe8182d891612613374053557db3d7a8c421ce649e449f7b0a6ca7ac11459694db5ca15625181aacd2184ac1c090fe583fe7607339bdbd5deff4b4c1b82b0b2832a5368901234a627a63a67a47069b78f45f6c783ce2f782082406216411c942b9f455eb081035b70c54a13f28df53c00de9c433204c61471e021d6a589ed522445007250bc398b16548b58e54b03be61caca4bce6ccb51a9cb4c553f0b099a568ca49d93860ee94de1af05bfadd7985ba8f19443f6594de33670b7711ecc838269cc918d5ec2a5509e27682956c949224c1ffc059c22ab0abfecabae3fe954660b32fd3e3c0bd83ba0e934f78bbeb35c3ee95525aeb4f62b0ebdf70cff985feb0de983ad2a52d03d7de00caa70a7ff535339957bf7bbd09a405ce6ede82455e5ca132bb3fd473db1dd087a047281ea9c27d3c98b18cc99893ce570aacc16e4c8d84eca7197390210469d309982c2e58cfc4c3c41b0c498c02949ee8e5dccb49c1317f014f5af0acf4710631fb3e85cbf126dee44c355fb9cb1e8a0f794a4e63c0841be9ab8948224490044c4e08be105c296182e3ea14e34ad132f1be8ba30468ef364999fcd1f4afe2c424e193de17181989dc2ad074971b19f8bed0657a3e18d7329525e07778ba620d8592a5ca184757e65a28cdcc5ae975ab44f8b0b4ffe6b3e85f1194a64a053e5b5eeac4b87eb848e78b0a9a10c955a37a719160a46d52e237cbf5fcd56814fbd753941a85e20e1ae3f1252682bdbffbed04a11e3ec1d0383a6f5055b2c09dfa16f5b3bd6895a9c4cf31d8c2ea76ec5039f9f8fd1c2becc3a0f69aad095f0a1cbb7800d4b57a7546363cc0a032599c4fdc50223615503b13d7e115b1bf7e3c6bc0a2d4aadd54489327961344ba4c0f933267eba87e0bbc688cbb2aa20bd04cdbafe46d5be7405ce029d53f3c376a3225e4755195c46e25c5a63c953172c1240aa4dcf2629e00e9c6c94005dce93f8810a32df75d3a67314b1126a647bea0b3059ec7f0f4a3b31f83a16b01a31a44eea403ccaa9850622ed3b6e3b41122410a08de696749b728e12e7e106263164ca1006fd3624e48dd9b796e235bcfd240d651a5a6317506b682203fdb124480e135e9791521b61880bfad227292e2052e1660bf342995ef3ab701bc64fd575eb3c3872d8cce94356caa6301ed6091fca973889151580f11c095efe49485771e6008f3e15864f2d5c0ce96e73c432259e12ee4591179ae285457a7bfb598187fea7b08468ee34237e4dd6be18c759fd3d262bf792efc5fd00c2f93ab40ff228fefd3d10d147690bc9fe0f8153cef46624f123954bfc5ec6d91614a7eac99b9628ece91e6f116dae000353a3736339d49e00ffc66a912970d7845d437376a405ec9091893ef9e025cbfd8919cec5e5e9c8ae227fbce880d3563330d32f4cfe43e62cfb8a471eca1faae3a7b1bd40f719668e249bfc2c2b58940f6f73c8985da43b0f6b41d54809913ca8f8a8a60ebe8b09c5e2e089a3c8e1de99f8ce434abb2fb4c2529deef8295f691bc36434b36792d6912e1f4e1b728414e77440b71529bfe5430e4a38b292dd2532d6e614a7da61533062e8ff84382993a8d3764f654e90740101c08e185af2dda68d0d348841041eabfdbc9ac165385b39a03d7ef359ef9c8db393f46c5e8ddb93f9e961478c353085ede0738b09ad0a4f77e094d8e873455be5225ac4a365a0e3a943d308a208da56bfd3d5fcd439b8e73a466dc366e56d4f6e7e963d0d3bba23fb3319f6826dd6dd6a44dbb5895e707a395f646c2e02a6b8432b201211761b6c6021bfe2fef8e3254e7009fac6287be9051b2162c1c3d1db05143245489496e228ea243952790a83849ba7cbdce1e8081456bac5d50000000000000000000000000000000000000000060e10141d23
+flags = ValidSignature,ManySteps
+
+# tcId = 52
+# signature that takes 32 iteration(s)
+msg = 9721000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 4cef6107c57d1e2a3389a755019b029002ffc1fff9d4722f8f92e9ba921dafcb20b0604257cde0e315568622d1a665746b446a8df7d8fcdebc10b02ad687d912a944761e54f05cfc113c064191b759cd8f3d0ffdd523644123542aeaad7645711119b746ad421521296aaffdbfbe3822ea3d715a4a276ca0402803a71cf4ca6c795ba336b5ef3a093167322dbd3167502444027b8b449e12ff1dcc8e9eda0b22da66ad89b01c86de493084488e126873be44c43e4cc7972ea78d524fc556b37717bf768bf0fc7374ae56332d955988ef2d57265e43768ef2ae3ff64a70037cacac2f1af03119efe45014f45e070baba1dc5f73e7733c958a3042c743af9215ae7ba3a6284626b724249033300cbb7092e4513d14a8b19b168fd3d29bf461ccd51ab581c0617b64e46d901724238d9ea556caca19d56d83a2cdb43a0db469839cb1ccd1afc705061d2e15b798569bfcafd135b51e21119ba22f4c69b205751b177354ec3c6547ca89d86a95cf1e0b4139a001cbcc5274f4eb19eee0c6b2ee749e940ac72969845563e3ed21d350f7df7d33d969738643983acb6aea290aa6b79ede572503d57a4267d97d2ca92ef2d17b104093b1242c53ed0d966ce4100fe53d7a36f14ee6335a9b85202baae912d9ed7e3f153a0292708fd3c7922ec2b43e4801243ee4a65b875683f85a071c86df08b2a999e258de58534c29722b912a78f515c353caf170b2e1eedf52910b857aa751114b7f26a3cf9122a814a6ec65f0347511eeef5094e575b0c51a90e27ed8c58b36674323964eb9725c550eff91d8ee79ece3fdec6cf9829a6f2bba5ddf9958f1c3f2932aa2a888d81953e74111cfa6600c10022e3b7a420136731ad638d26afec4d1df60bc255f45811f6686f8c81c8de97d541f4a38b6f495aca0a760f3cadd06d72a6476c02a8f61f92049ea6a5b5caf6294e308dc675b47dbe294ea8ce599856d19dcf0ea61b3f930e3fae682d8a324c0022f4b904b092bcbc0279b146cd63b827a5efeaee969b91b5158a2d0cd41266c94b873ce7e243850257e5abda0e37c4571f0b28a92d043cbe92a220170c6de589d0ed0e75ed1b288dbad8c7069f8bd3e4151c0d5bf90e9ae55e2a2b9e46898a301c0823ec14a201da94e9c0995592770622687f1a477511563dc9cf9500968e12c5b9b9584f179694a68055eb5309a01110fd8076c96cb6d57f0e228e1afd0cc8776978bc426401aa1fac458b8f3e1f2bbec589b653469a6589527e89664dd015497b669351dcea19115f55f0814a4c68f4a3c22dcdaf0d10eab6e884c6000f86ba0d8a453f773a16e2e50e85c69f501f29e1a4d8cd4b183efa68df94b98d47923dd8b2315e953465b0f65f3ad3c1d61e6bbeb34177efb27ce59c356873ec150c5d1883d0eb69c26e24a789aa0450af814faeb6dfc46d3b0309eff2d7c6d479832bfa6f9c34e5d5df4861865e64b5b03e211bccf9f72be75ec32e4140bc81dcb69f4de50d8a24896f749c356418d4270f5161328574f25650da41035a8cada3d9b630e103477977e5bb69382201fe6612b3244452a00a68e9b66b2a532d5abb29c0412f3a76e0d3fc0ba868a237c9ca392216efdd77478c49197e963660d57b96263ac47ef7ce463d715aa098ea2533cfb6bdafd984259f6143fba4f59bfe95653fa3ae232fbfd764a3792748365f5512f945d44b014f0c2b33911b36a60306f087c88afb57cf0dffbb8d80bfae7a44ea3e3ffac7e1bfc614b4a7b345c456d7c52a359bfa4bb5499c044c91bc6ac38f6ac2a39e80aebeced421ebe402782edc887da588be58815c71ae9e8d3b1644383fc15e8bd33b729611a93c40fa832bcd803913f590ce0f3bc8d3cf95a7574cb5f2a2c7368f69421153a310e776390c9535d16be57896f6e0ac8ef8acfb64c67267e246df87f55b50670dd3463e6a9b6aae11679c11dbfd3d6edda9aedf6557653ec89641d336b0b8f594a1f8dc284230200ae677092e9e7a6d129ef63997517c5a1388637eb81b134268a1be1d5dabafb6e9ac897894aae6d1720a1f44aceb2cd9749a13b7df3ffe4e06e23f7f478e6ed7e6563355fd22a52543812ab4201f9d15fb88c5a70926e2d867cfdc8bd6f4971a2b51656be33785a7fd78712e60f7b097aa88b294b1089cf01c8f7b958aed1933c983f7af824f202fbb88951de232ca81c7629bb4281a057fab0de81fc1d46b8ada37956438ee7fd8e13f1938bc237b672e0faf93e22c36bdc7cd192c6b607b43f866c3686cf532eabce500a9931e54bdb4e399b9f0b29301dcbe0eb16638486b7f96b766fb008a7b62f1c57ef8e0f5ab59c10ab055357e9e0111147ae6d1ca03ba503613c04180adffcdbb58cf5ff7ff726744bcc65df37a3f9c847b93e14c9f0dd912dad27d442406871fcda4471e8f21dc55b63b0fc702883467a0969ff3aa2010a72a111062701622f64567ad9f8a4f3e91dab436ba552ef2e42d930a71db205de921b1818ed137615ea39d16d8ad4817eb02e79e05fcff24aefa1a10e60a939c0a8235fc27846dd032f95679f9b987acd81a6f285d7e7664d88db73b2d1ae931d82e38134f2b770cb2f834e247371595f3ff78e420f281676399a293c080c7801447a4be951eca051b1858f99decc572baaadda8c1b67e5cfc9aa4e44abd48d2f3144ef92fd1ffe13dad9ce1d4f127c98119e211ca331496edd7b08bedf3c48d225409c9e66e2cc68b6ba2ee75f2dca3eea8f7af51a4bc99d4875fdc3991b300909433f4b261d36bb150faef340aaab774996ae1c6bfde7ac536fcf1df188f2125325922d0412c0d52a77a5ea47dcb9f898981a8f588440944b36ab2195b1afe613754b0e819a5962b148af4b1068ec9761224864776ccc8a7d54dc866fd2f9462273b745a9f6cb5af6a373c7a2067e42f2bf6219640cd11b04a37488a8ce616aaf23aa84968b59385d443e1a77e25e22ed199f0dba993886ef4a572d34484b965f31f76cd90a363ca95a75d175ae78b83c7f72d039aaa5e560e2ea9d0c9f29259ba6c06d7be2877db31cd9641b5ab67eb400c17e04bbda482e923263e668ffdfa92a84ea7ad18675a1e3bef85f1b9105d9fb496301bb1cd47e40c2efaf3f9fa737506d75342c400e74f1e9e6f8b1f60bbaa37e8b32a84f93efb535fb69b7746883ffde4e966410b048d4ecaa660dde811a0b3ec93fd2411e13f1643f756a4891f15a64785b0ed44a7a18154ee7d1d4cebfb41038cc64e9ff7992c9498a35e521d8e38a01f77f2103dac97504b28dad00bf4704d768ebd1c5bfcd434d6dcdb896fd28184c452420ef9bace73885ec8a87ee8e4da935ea42536e10917960784d436fca233d91b2da3cc121f89c7321d765c2b0e1efa88e9899d2e16c1c2958fc6318702f93c27c2b18ab78f65e70fd856f713088e11985c7a179119736bd14e6fa4a5322867ade8c2777130a67c74d763f508eb706ebe1fa0ca45fa80a8d73415dddc9a94d5d7459643f899e6e6b3f204bc79d7e66aa067ddbc7f70aee71a5772349d9e2086e0faf6e68f44863d7ed4c911cd3b73251f2760fbf0e672b4b933ed64bd6b4e0117db7eeb0cfabcb292232bddccc05aa9141ad70611b88fb4d35c3cb83aee710a84a3a7587122c0d2ff622fd7f663b3521616ed143da185556a005d2ab24f7d6af16acd759b3a188548414941fa2ebcb9047ef1e01840cc33a9c666948921baa8a772fbd582a538d6bea5a8b0408ba7e9db25e6ac1a2b19d5dbe479bfb4407de495d1c7cd818c58cc9ea5ed563b4f6e833f8a08e81c9d3f6a6262230aaf6d7ad0e96c5fe394780666313c10b2db729455d61f4e962b15cd524a38711f4eada4acc78daa59490c3c0c36f76039935b135128d6990fffc19f47b164fad639e6fc65921fbd4e491dc32fe11eff24ec5cd25a321b2af69ac8208fb712335c081d09bb05a587d95a7bf66b97a1f2dd8f5861f0575e0d156f7e1c3d59a0012b3dac27c84590bf8058dd3617437577a333875a2e1f0439038b469334d3f9457333e981ff9dc9273d5383e8f05249eba7b0d60b89eee427a057449802c5deaa90012d4b92e50846ee923c90b36de7f4b51aefc122e744e11b4cac695841c430710a5f261842f078284f68e49203f47f0a1805b13999b3b5a169b0ae792b33785f14a25f1158ac702ef5701aaecc7e8952ed4c7b39a10985cbf3e948084e61380e0cdedcba71a5c7065a864c412f486f510fa6f8c97c9a2946fb031e48e8be985508df9293956e7523b2a0bfbfc5564e082a94ff85e395aba4c3513fc1f55257ffd581fdc7f05dc4f014fd92c450c3422784e6a906cdc1fec67edc40688dcf1f7e77314c914a2a696112dea20296c73b3ba665d9ef39411cba46c2b66aa861f7e4dd05a3135c12801bdd4745d847d8947829fc99df415a2385b7e012dd6a5e53fde708fa552e418023735f830301813a3d7afe2567d3cdfbe790e318c9670e32b6b2d4406f1f1b03c57074add69f594e8ae8b0d7204041c309b2e52b58f82928d6bd4ec655c7df9ad79e8046d3b558decc148e89b02cf1d189a4f18171c948d974e8d14ffc83de76c334d001e3dc7de40bcf4f7fcfd191e447c8d95d80d39424a8598a5ad4f90b7ec2a515c859bbe00000000000000000000000000000000000000050b121a1e24
+flags = ValidSignature,ManySteps
+
+# tcId = 53
+# signature that takes 33 iteration(s)
+msg = b504000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 2aa38484627db138769301dfd9a5286975f4869810ad211d9055bee7e25029f41460d92e9b4c68b185d8033d360c0f2a5c9f0004e4d043c368ac22d395422e3d5ba1a4a2f219e38f1b300539a11481d086d93bd4ddfa8531acfeb8d418593c4142f624b881b44d306f0cc355573d25105118d6b9affc066c8910f2889f9fa45a87ef7fb5cb6aa508c4f5ad21d04742c110824a48569a1042a66a4f21723b046461c8c6b382e112c825af25a24bb26d7d874a6715dc338af7e3d4a07c27d5ce243536538ffbe6481e3542a5ac218c536c60ff0954dd5db6551c80abe9d22fd56a1486e6ceccb54ca7993d44ee52444d4876c247014bf459fef5e4b68640e6a20c5bd7ab5e11dd8a1f5527a087b97f57e9935c0ab742f399ba2eb9e7bf255d8d4f7ed820fcf5de363915d23b9d292d7a08e5cf5092516caaccfda5d4cb9ac906d10287bed5a13fc2df0b167e5bcd37768d33665c6adacb8157d9c385cc76fb9ffc53babbe3789a698d8a73fa5e110c1d87aeebfd839e2bff061d37c749c5aeee8bc63441e6ca79e1dc055fd8d789ad729dc475bb94729997e97ff08a1f1708d93612d402a64de159c26175c271d4d77114ed9176c5b9ce4234916e63cc856d9436186b137f7f7aacd7a367af9d28823d46d42add2c2dd975d23d31083424c141207a195b4212ea7bfb6da8eda7f69027552efe7ad4952ba49ac38115d93b4dfc2dbe173eef47934204f50ad850bdaa6fce06b517340b2562e468697fb84074626cb263d03a0b62a7b497ee9462c859b1d7894a543d1e261971751d325819dc071682c8f00f62153bec73cddbd5ec21f6824d4eca53dae13eb9af6c448d8d75c6d676ab18ba64836c3ecc7c20c79836a53379e809d87abc2f04f0413d10176ddb27f72936beb4d14cac5b0e684e6dfaf529b80f9b68121bfac15c8e60cae44292e8a8e0c32ebf066e708aefe5c3aa4fb4bbd7215380cedf0b19fafa11fc37c534f5c3c14cf6d28f9f624008355c1ec110159009690ec648d6ec11fc6de44831c620dec4331c900032bce86eb4ec44725667c15cc78a71f0baedb5ddc251215aa64c527a8dd8b30ed4931047b19b725d9f205a7943614850f9a619a805ba004d272d5206900846259d02c06153a0e2c109741acfb459816a7f8ec101a5e9c38b7ef9b8add48b68f7410db4359ce23cbf62507d584763744e44f95fe2233e76f32d13e660ea5d4b203bb908207ee9c621bebcbef9ad30666fb306e8ff894b2837464d3ce91caa82227d8666a3e2a9e6017f62b1ad65bdc5ec5a4c76f414ed2a15b0da2456694061ffb3296186a0ce18e366e5c5dc8b832e5bc74ff775f4d496802b600b39e5b7b531131709212980f4aef9bdeaadababd7300f75018bb60f48a9fae84f5e694f0ec6c74d3f34a77e358dc7c4f26536eb2f76adefd14e9f8822a85b1b579611975035fab27eb387602a3b4a858b17c8729bec1845b67d0725b38ecec057b0083cac04d4e075d848de5243801417dacc3ed83f89e63ba90dea0e724ba394fcf9226b50b6cb6e6017c0cc0526d7942cf5260efb79aa918c67e9c116c4183eb8068e94f25647923658825763acf820c56deef853bcd33a0c12ffebec84115e17f675b9b25dcfdd6cbf0c0e3a1feeb7c387d059b138665f70fa762a42fa3d9d360d3063b86e43f67e54c1011283238cddbf4d054d9126416b8d4c9116f8635e8cd19c2f202c90ea4470d91bd737b8032d4adcec9c98983f789c97852c2a60221a78b41e3ca75446f2e1912dadbe04b2304291353e32e73e1ee66e698a9395c0c93214a2865661dcca210b6d48972fe80368706e041eafaf9f7a96810e395f72c2ff9aa7e5d5ef845907184f224ba37b4c186c248da8bfe403df87472107da32ec0c0ee10ec6c867341ef62205d879cbb9ded18dc5d978ba96882b5a8ae2df769eec25540a431059a52176cee356a6e3c173c4ae79c3694b1af60ee164408e12ca1131d3475eb5467c7a95f8a794589e13548cd8b11c126244008c9424226929a6086879dd5a4bda4a82f0adc2d03d239fb99034f497851c204dc08961782fa41449ebd588d27b4d7da94cf8019ba42286987bc9d8cf0677ef6c45f0ff79dd41c3895912300b70587f7dd4080a65e81f5d12b0ada473bb597149e667e43804526fed0c9b75ee2f9f09ff32e87040e145ef779c9aba90f13f94c514f6aabe7690d51b6835f3e405a613c8a1e0a657cc259862ccc5a41a514c9ad0baccce1b8142de115994847b98f20ef8fea606a85c770a9d49cb1d37fb701119e6515307b62714d385f3854d5e0b16f3b062afd35586d71b5baed356e14a43e77e0993b8d30084d402bc8f569c5b837cf2c25e6869d2183daaa7553436cf48599cbe24337eaef1b44a8695d5a990241255579c564bff1399258090aad8525e0e5e75f734d15c8331415fe48d776f8d50efdb10aa72252dc43ecc13ca6322fa06d750cc9b817c879a2bd545ebce4b9ef00f2c1cde4d4c7b38a3c865026af1d108f66bb235b07935045d9e86abb228f99b94d82dfa098e680ba7af3e69a2e7ff1f2454f6d8f2165d7a05744e0ee3bcbb320a8b44b9219fb0d81a2127f112eb8d32c20a4e365f2037815781a0eec8d7d87b665bbe3d4c5df6aa798fd3c66d74330c78551d96a237e7125f79f9372b12828c40f7cd9d1ed7039635ed18ca5fa353a878913c9b2cfac7c9d774535cd6320efd7c1e6f2301ae3ebb3aba0d83e46a80a176109078cd101609898f41494da47a366d16848f3aeb61c6663195e1d744e18d284e38e8e303395a3aa6e11e55aac90f011f90a7717febafa8f5be44d033f3f3878877823a10b6e9721afc120f1ec60dca8df125c3c4d052e1afa6a921b66d4e2d00618a2bfba3e7e4fb3c15518ec5bef7589d2368a10af77394236c7061ccffc21ad67af1c9ea74d82a2820b11cca55a156927a677fbf57649b735d2af79ba93f3883f59aa403be37cb84c6b00c4fcd7f28414b665d77f093f4d6c0e7bc5629473ea1c31afe2c1d1a2bdc6459c92d4539d424436113f630059b9d90082ff9b3629e4c13149d6cd92a78a5defc5846f03ceeab92c88a53dcd5f019ac69aefa553ad4b4be71b08fcb7fce4c6dedcf046a09a7d3e1d31ab3afa543026dad8ca9412294004edcd16ae39c18144abdada4acf209a023811f5e60e5357a18c242691f990045652ef63bf86dd8d7f5d05f4f46b4276f580d1170acfec3ecf5426612938e37e65319854a9e0931e0981da00dca67e8fbcde6b94dc54b30dad04f27022aea635983ec8017cf389d482ee6c104c06ef7cf9273a9902c13c4a3f79f88d85088cfcb32396105d62f2308fa419ef1f29283ffe1becde3a2ca28e4b14532cf581d91c311beb4b41a9a9c55ae753e2e28d222d0b36b4c290a6f1b846cee14f03ffa91f3d743fcbf37d5993241ac2efb030e2652622e65be238cfd7e4a0b5e3e40e25e6eb5601120253a08be5eebd20f08af1dea872dc41b305aec03272561f0745aaee1c1b069acc0e61b16f4effccddb0086154ed66b98f15ad58975c4604ddd96e2fdfa674fe53c5d226d376081ae0bd2283f7106558a54e613900a569e799c98e4ec2f024c0d2b15cbc14bc96bfc6094560ec6c4cd9b9f879e3fe74a70c0d3ddba82f055780be7db1ce650cefb313618a2a5336d9b1168fc605518f53708afd062bfeb9a7f66338115e3213e8f4e90864e10b4b3a8eaed966f99240c23a7ad527892b3a25e1a3d656e724b84c46484ed9c0c2624ce62c46646b13003e3eb2c8ac1e1e307f40a3092d96e13463ec1bd75d62b679f4bd1a9e4967323f16c85ed92066b283b12f49fe50423359f7db6c0df64e04568d470c480681e6c6df4fab81d896e13735f3a1a18d26aef3e436c86308a4c184b709a4918670b870502d30d44861d360a88e4bb8a693659208c2c82da46a25dfdfbdc81e7c0a5addcba03d2872b8c24ab2e1761e2ae10a67dbd724fc4652be47650ec912819b70a4d628c4c16f630d24bc5811ae66fc1afa55234d5fb83271d5f8eec99fe398acf3275de23bc002a7652bf60c293e7c04fa6e10795c00e43743050f138b5422d4c09030dd12835a4556ae423406cda8b4936ee4e039324963a1fbe8768798c384f237f7b8d23cdc75aefc035c0ce65fbd9f8eeccf126f37352d9c75a40e157eadadd12b64b582bbaeea63b50b20ec88098e54623bcb373c63eac44a290a7ff8841a417c17bda385992e3f5b952951884273ff45b94067a819efe5cd90c7ddf935c3636ee486c98f67be2eef9ba4cb10c701b308861720f54c3017357e9aaca6bb5fd826cb39b8e0d908171963bd068a589860fcdabd8bae591d4fc6a6cb8bdca9a0380b3c70e49af9819f07100dceee2174331053b4878e41fe06782b5421ff93b7051deb43a61bd5608a881423940222f2cc2bf795721472b2fd714ca7a59373fe0e1c3c9dd5dfb97e345a250f63def1732f19085a5d1f50bd6dd7d26b22bd68aa239450d21d97e85929745896d3adce416c9aa28db0c3bf104a246f70ec5e24a11c3618280cab7bc6faedfca29eeb92c9ce708538f796469966ed1d5eff70e274d5f747bc5dd6d8a99c52035666d80a4bce2fb525b6b7eabce0c1c486e82f50000000000000000000000000000000000050d111a2026
+flags = ValidSignature,ManySteps
+
+# tcId = 54
+# signature that takes 34 iteration(s)
+msg = b502000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = fa54682a8226fa50a7728ee9ce8aa7b72bdd00a4f5643c4771d6547275088fa7b32042cb5441cfa8880779a602c32a536236b3be35a6e2a13360d4825d52f511252d6a3e272b493bc73878e0e3711360b5360af83df3f57570667d866c8558b052c540027a690df9eeea1135aa50546b2136d349cab85dcd698fbae1aa6fe0fb2eec20f3ac4f004a55be8510c4015f74538fe2e695cdc154887631dfe924774a6731b65aa4349fa16d536c7e9b5642966606e3fdb271779ffb0d3599bf958d3727fc443a6a190f4bb2f2853f5f6d773dbafc371772bb3d2b0e88aed601c9ce8ffd60b2496315f507bdbb50c7a309fcd68d85fee1f5aaa9420c4d2b52147d7fcb38026e21b5c467af3ed4b16038f2beab5f54b7c134571c079dbd28c54c6e06505d69b6dbae1e720e8a8bda189867861f84f5f6fa39f9af2cac8c6153bf1533b21f1e70360baa33860353eda4f0ec700c58283e2a3fcae5f0053c395be917ab411b8c2bfa94d892bc4fa424f6dfd97f9fa982b02e4fbe6c43b598eba769629ac66c3cde157365053fb6595982daaabae610cd3458811da53cfaadc053d8af104896e438d7bbdb025c474abc2493f74e16fa8ba563ee0765f4a06dbd874748302dd52df925df631e5bd5a7e335909aa7f8e7a65a7db7cd1988add9b9f34a71e3b735da6dccb4b6f6787af5f1e519e24a1e15c5930f43626f5ed734d4c442125896aba42840fe0613bbb8cb68325a6bb26bf1bcf14a055fcf63f11020ef7572de02b677315a6c83a2d0bceaf049e91bc715a085a25769ab9c9f4b6592a41c4c7e212c3380d723d3b4da5d9baaeabac9410e32eaa58f38facfe1f7438e4eec3ce5091a1e38f98100600dcc215d3c8ca850b46d60e2b941e10c66d809282f9d38d710a9202f9bd9a79a62cc30b32b5a1af6f9de111bee6a5bcb65e9125b8cfabb6db6c750c7553d6e3975be064feecd24e26c7196e931d8b1ce48ae6be3977db6d7eb200aae36191f7f0a2be3d3d7c9e760be49c8fb0b495338771f4b1676304c850db67d24422d7b153a4c34ca37a0ec287dd47739c2295dddd32e5809afbab880da22a82dbfd4c0041b0b8a6b9168e7baca62a6499fb621278ec25a81104eca44d2cd0165113fe6c68a56fc730ba9c7dffd039c978a701ed9f6acc61e39316ce53082c0dce04b4c0cb305aa53ac14befc5f65be4fa4bbdb79ab17c12698df9343de0b4cb3feb355cfca73529f36198d21da56bd343643a0d27d040f2bb7d048ecbfd1fc18b4bd27217c8532d63b47fedc445430caa18b2007ca9ae7fe9dae5bdb0371b897a3def628b0dddd3ba9b0805056caf5c02b7c3e44939b34ce646be0edc1289daa3aea0260643d34ebed8218aed531bee5ff772f2342e96e27ff488a5d1afddc3c5094a7f94f01c70ad619def58612f767cb21b3c742c43e94ff21b4f30348600a766e0f66d418b9f450e389be3ed10d3f080579248bbd7c72ee02985424c09c95b8af7229cc57e6dbd7bedc4aa2b08259db76736aa82bed4ab3198f748593189b0f5ddee1b1b8164f1f82896b458b6a5794170c056377b40e758c1d9f16a4b060f590d0299a3d6e8bb4d9046b194ea49051dba75771159d58d67d88eae6cd6d3cdab259d3b0422b1d1e0b40388d7007f73f3e1ff362c7bc785dbfbca4b4d007f3c799e8f4d11b806f26d82277f02ea2a61fa1cd5efac837aa29bdfa19cf00117f72b67c4df10a49a01efda625506de427d2ab9a514c9cf201ac86fc0692b66063aeb86b0b23e4180f6eb362b10a8dcd44f96983d5decb7b463882f7e0bc455c34998c65706e12c77416052bd36490796afdadf360ad94183907f807113b8c0533ff36b311ec6f8a31f1fe36f822ce27a580d2e5582a9c2991be1b43d0ff9c91447932ca726e57ab3ee076319eed5768decd05aa7ee857ec82b9132556cbe968f6ecc4013fbc49568c8c779d9a6d9dea52617e0f521c46d4862b47691038d9c36adcfe17a24a7f44fbd87114ef18bf1e1df13d15e060a01e2ff31c7b7ac4a355b0f5a3e98344d86c9510af6fdf934346e0b8c756fc5a14ee062d190ef7b6f78764e2063040bd09c4f7e43f1eb64f06d2e5c30b020d6c133dabaa9ebecad1623e3fa26bcfe1471471a6517de61f780b3082007676e5ff6ee9d5f31afa57c9faee333e639efc7761b0466f4c3b096cfda85d11700a4ec5db2deae29042dce8b74db1132104d9b9b0ef72962ddb6c23497bcc76e481871c322712ad44af7387a3e9498fe9a7c86ff73a012a2c5f0f492dc6766062cc296472f4ee671185892fd0704e8fb0c594eac2b817916ea7eda1822544a7ab2c2854e3b0c578fcf0d0b4ce731932af21a293e0c0e06fa5ba4b58dea2695fe4acd9fa6f7d1e59ec3657fc1f37e73e8e3536d7560bf502a103703cd815c9a10756da5d9e651234ff8d46f5f97bed85b89b6fb9c9c8026948d46dc5575679e8eb6cef8026aabb9a648fc87cc5e0fb06164cc22d6ab541caf5fbac8c6140d0fcb57719d45f22e055ad82b217cdb07dc986c4af4c847a8922be5d95f5367933b04b805e8626e73476a5da495bde018836ea5fe9cb34b3abe0b65885c83e918b5f5eebb53a962ac9e460dd6fa39795c68320e6b5f5e00638a1f18e40c3cdf75cc82794bf5f4a524081403894221f469efd48d460a8915721bcf0d6211949245cf7baa2f1ac65073409d9c1328e44142c9161ffc8d31ed8a387cf3dd0511cef2b61622de0d46d3639143339b9b6ed75cb5fa7c95011d878bac8b1be21be2e6608f040f76fe91f5b6fa92387aa081687da647712fa3b7b5e32ec2f5d22920acdfa5557ac8c071491bd4518c54f6d93bb8cde1a38f9dc1145af011c309c87c5b627690958fd466a4e8c073796f1cd07d844902e7e4eb56c031dd8c0dd6d9369c2eb4b89e4a9900bddc8114463c3ae2c87ddd1013b2defcf705ea746ff48d2821e5e63e033f4038cd842de7c838d9418c8e27a8dcd2fb9b88d8a0d0ba9c454d7a0a167a44cdc878f3274ebda260fe95a031c6d8917458d3882e11fc5363ccb034fca155ad29d622be4a047b3ccdffd362a3550c552a1b698e87dfba1774e527127017fdee76a91525993ff46b5eb072c79027148420fc958d1cc62e39dceb827dcd9baffcfc8b13888072827b0132cf943e31c71131e602444028740e6771a49615fcd00cf34ebf09bbbb2ab63b57803db54a1fd9c49957971d308548c94de5c5b6a5f345050ceb75708c8aee3c624e0d8290b2bcdcc918fbdcda7bc30d3f5f5ce1fb2d4e6cca86d6ec163f73858b84265baeeb0fda0f40e7bde058c85a2138bfa777c8be45da1c2b7915f94089074f4f22c0c1ecea9375ee2bfc23f90c521b8ed51434134abca11a9c3fd019244710125e9b7dc27661d23bcb4a40d5e87479d6b07ac86cfd91b5d89e664317336a2a6a80ee88b7b24ae1872bd99bd372d06cc21d835fd2336ea2ae53b7bf8a1c14ef724eba94e971524a1a290f9b7f265665b6195ee20719648b2a4a4a66c705705cf48b41a7c9c7f16bc2ae479ef1d5c23a4050acbdb0eef0a8c792f547952170a0b869f9b5066c06c4fe79d22379a5f8145c700049c4043215f60a7433955b2d9c681133149d845de27c355e1dc40217dae2c0a22c7d9b9e346ef585c35fd8cf96ebfcde2a7d4b7445e6c11046f0644ef7619e9c4bde19d33374061c7d55434249f4aaed4c7eb39a86f9d1007520d048301c9614943efbf9e55e11ea0b4462c9995c430ac4e7c3587df2a9f6d374580d0dbb48973c909615fb846705386c55d486063f8a0c9813419c9689317119ab6b7b6b9b72a2327bfe956859f8e3edd2d0e6a2e3446adb9c130fe0eab8dabaebd7593f9ca7b50df7c0f9643415b18f3c18ae06ec6ca1d39064b3bf8d8d4b841970e3c38c4e609fa7d6e8a938c371d7e4872ef88b088455715c5766126882cca88be8444a951b3984e1e24e38f87cc2d22dbb4459c258f7f6d9c4c70075061ab9c9a60fb23c0d4f5c9170c3368795acf27e099d9788d72e488742e04f779ac217f14eecbb4e3a41ee5d1b7e174b6df258ab1d8851c321c7ed74663e9f836ab08d8a5994ad7ea1be34ee3029b35550d653de0679b0d385315621282342dbda3abd445c695f67ba506ff9d4812a3a70996f26c45d71b9039ac4e4868047a396d838e3a625264e23178591cb966732901cf3960f0d83d4659b5ecf84e3948efde4413ae675d21a25e74aa780b3d4500b8ebb14898e9b8f332ea4524c7a560a630c049eb36b4ab1b4a77c9eb5755ff8a130786da3292383bc378ffedf2a7f3ddd8bdd5b7ff895608bc0c79ef3360c958d8e4854ac76dac7992bb69f6515052c47716a19bea1eaa0c0e33fa4f24207f7b44d5b48ed9ece05d5ca9d728b740e427823390c1d0d7998ce5edfd989c5d0ac351990cf8f291de748ddbcbda698052ee52cc078e15b7fb5360d890653c7b26458d0fdb813df3641f7f67613f5bd951d98128bff3a92d2b2c8b65adf282ff168af584730c3afdaeaa6550564655ad7700e5c34c6f74d091f1b367b210011788ababba86ba2e8eb6f2776c3e275637237c17250bbe31394a5a6f850c8ac1c9dbfa0f162b2c5e5f6e9cbbd7e2ecf72e7ec7d7f1f41b4d7b7c9fdcea4e6a85a100000000000000000000000000060c191f262a
+flags = ValidSignature,ManySteps
+
+# tcId = 55
+# signature that takes 37 iteration(s)
+msg = d20c000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 1f46df1c64f499ad5738cdecb7cdb03505cb055d9ce542e947092e56ff01ec2969072aceca72c59d51e93f1d7ce7de2540dfc1b0e2031597295ab90a154fa59e625c00ac9badd3eea471f51617673b9a963c8538971984ac28b77af69a6c1b24ba5ad2ed4cb30e9e4393e869af84d39146a2e2c8a31154b72d175f35da837f6089c2080776da166aaaec56563a220aa138e9c21b4d66de9490b8a0df1e80ac8521055bf24866e529943f65052f5be8765e1d340067f0172c33f9c68d10bafaf0b88930fd6579897d94ff21d74b572213b58509a29b396ac1cd0cc00cffd675cc6a11ef51dea3093416c12e994f42f24ade5725903c7886729d240941b45cc4089e66b8f995ca1106fea5ad912bbd3c5e47e1819496930eb044a273eaf6237de39b291a7d1e6192ee01f05d487437858bd1aa182ba2c04c894d5a5165f6336740de417f065360a70dfcbf4f86fa781ff6ee799a31887f37e9f7dedb12b2ee5508b28ea97ffc9cc87a0483c8d9a1334f8b29e3d9acceadc55e140f763a413d5e1c5d7987eb5abf3cb9e68838b2058e2f4df650386707b62b9cdc23733d5e58fd456f500a51746359378506724b87fe07aa24c192f56499becc194e128c9ae5268b22a6a22a5c5ff197881e880a13d52de0e5c6a7ab7dbbdd07d65cfd1806a84abe6455c4542d0f832d42fb3f72b6b26ebe1f4c306ffa6488509c93faeb7204811188223da6e932869703602b834aa1a3b65dff320f540be23ecd843b1e2901965d5805c46c711015a47ab82d0b1d9d12fd9fe8c6be4eaf89df00acb07a3d21fbfca442298f70ea4d2acd8edcb2f9e88c3c02ffb667c3fc0e2b2e778b908c206e35f6f3287a6ef9601f6340e037ad38a5d1aff1bb2e50472234a01164d5e213dcc19657c32174fc89fedb70c8e7e4a4dc613b820f43a57ffa04a9e00546f2918e1381d9bc2e3b19c3f79f74b998bbe4f08e47b79b536e737104af435b96a7912eac3f83b36ad6bf77fd29110dcb1cf6d4a2d422f26af1d77507383aca643095b436eda471cba8d3f97ace49ca048fa5a43ed7eed1de5c9f591d2fe1bf6b99d1978bd87032e27598356352029e5a16d280c07e6e702ff7ba900416a7246f0d0b0ca6f9bdee5686766a6bd63f0298852d26f6b9e6002b5c2a704dc6b82a29accd800b39c46dc534c82659bfd63c82d1f9f291510078a6682cdc1aac22141549c4d9ef2d6a5843b12e376dca96cafb5a359612662946e81ffbb6abbadd985077c9a1fe81dc9d81446ce554effe92f879811932a3f8ef2d2b5619670b9d5b9cc6c547b655e41233a618a3eac821c8a8bc427f913ae319e6339ad537121ecf3b22f153d93331f66f594c8b71157c321a753d0b3aede490db20977019de46a0652f9dfa175da85212599c5726fff321cada571524c6f2003af70dd9fa28c497a7584078a23385b88a08edccabfca847dd45eeffefd30f8f4df276486496b1fbb1b7e6d49921ed0f25aecebbfeaa9062b47b9e2a773e644e2709022f66fac061e012cbcf94324814d07d7aca6fd165f90298b70efc207c0367fd51f1f172df7d96c46c9ffe72c87ca3cb42e6bda26e2352574c6d6341c6058ea7bf9e5614748382c2047504bc97fb4f00ee120c8d17a2802f5807636e754781b325fed89cdbdcb41b279c11f7a0fbcaab32f569f8e98204aa1cc04ae6fd1d70c29f1a3b286fafb5002f46916094c36de8b8b0a6afceb7103da9522e515e0abd3721c7402b12a3cc93e31f81c4714a4d86c3215b8dfd201af03c5dbaf5f41b35525e13402d753fc371b9d46e8d141ee0dc7a04f382ea1ed257579d06cd68a0f675ddc5137e5afe71894483f1c184dda00bb12e62afdcdca6252065224476d28f3ccc362dd443e7412d21d945a20c4ff7f11054031351fa93647709ddc89ec667245d2b0feee0522bea979f3e077ebbf2d6a8fb861de7ec495725374b19bd3bdc0108b526caeda1f946d022651a1b05a71ceb9c3bd1eda12728f58cbbb27af266e019323a3dbd149188bff16f6f154e4ecae0f01504afd8bda993028ed478c7eca673aa1f33af88b5de67f1192c668f4136179cab9696b44173b305e6cfd30dc3f42634524cdfeb2d77bdc8d2f247af73c774f39f1af9745a46c33f0a4714eaf6f7f511f437b2283596e8aa6b55d3bf5a94d210f54b99bc642549da972e94dabd7d58d0ccf33fc53176afac3a0fbb6c653bc2e56351adf0980a14c312c38ec6c9160398cb97657800881c01eadd0c8030d7123f6982201d1eb4277b7d895246fef315e39996064ffb115e3b3dc50cdbcaa6129f6ddb2330c64d57e6fcc2eb83db1a4cfeb73177187dc8323888de1abd7bd8bfad2d184033292c21d3ce851d191535a605e3298c8c88f649b819848ad76d4b2f08ae36797ba54b5f3dccb32c8258a38146b6c86f175a888117d78796d7a90525aceb8f6986e4acec13281915f33a4207e1f4077d586c6b686ef10b2d16618aa841fb817df37968be3099a27de57c44ba8f8e55c0f1e401de53b8578a733e9e81268d462e2321af29aa50f814dbd7bd05856d890008148eee2180b8870ae846e07e48a6660202a6bd35a7391821c550e3810fad442b589ab6b3e0bca5d7858066260776148a778c3b9df8c391b72451df0c87c0c64491b2e5bd4e264575cf047cb82f20f95ce3101d92aed4834b98c8f0e5c81c8e6baf0ab3de870d9207bb64b6b99a395ae2de378f8ad233120a968e091b7e1aa81195284f3e9152cf211b1fa26674307a57390e56cb812e030fc50c9d18687f67226245b70e60ca87e9ccaea0e7d36a5d951a22b374d71a1b89129a0b4067c60317fe9795e4a0b41c4e03c3314ab9437a1670e4bae274c2e93197b2d7af9bf501becc0545707659ea737f9042d7dd711ebe6a801d34b3cd45d7c1275fe8559bd33d9b160744d6107fab7df7f419cceef355f513d30aa82e2249857bd05bf524273d46b9e906f557e02604210e34f1be3213b121994fd3fa86da4c5c43fd4bd213e76387868e7f3b2ade5bac9ada99c54d0e948520da7ebbeacfe48e2a8113d000a9ebe5c14f7dac827393a7ed2a5eb44d8a33cb2c010cacdce5b868f9ad8ee93183fdfa1d05a2febffd902b68bf192682a0b5a418bdb900d86365a25e5c11486ff4a2547fdd7cb24839c3bd6d2fb95ec390416dee8d5b4a1993ceef53a5f5ea77357674c7c0a27f78c483925df6adbb5c49074f5cfa660969cb506abce22c764de475ff9c41e064035c48c088dd6c69f384aa76aa21e2c0e4b38f4405adde76784b0cc331484cd3c954776e63a5808f7f973bd73ae418f8648a02c29a8033214099e4e65ffd33066913bb6fa1d5d360865bdb029896a8a5d5b4ec4ac8953e6aa02326d7da96a9067d968ed2e6cab00ad00eac6a296fb48bd16acbcd1acc02d221325e4124c3f3e69f6b0b825ad513abc0c7fa7899142274e2f8bff11704e45db46adf1c4c93754c73e8eb6267e5f69cc4c24b1a9bf1039a39e8e091d944c2981864e78290a87d9773a43898de581e26fbf0919b8a7bce07365e1df475fe75c3ce9b315b07cff1e3cbaca2b16f41309398eaf299b11253a015dc3f067a91157cd6abde00d7c69e9907f6c1222fed29ff9223f3761d0c4de8bb07ca4637ae5e0fa65f22a61af6dfeca7f007b28e764fd187ab52c158690ff734a8dd5f03f202707f27bd271ca982e5e39ef53c18f4cdee8a6285aa054683974c85b52ddbc3d6083b2d88adac9e2e4bc708f05e70e0f24d5b318757192905cdf1e5211b48ad256abeeed49bc752ca5c69c8c8481094ba4652a0a0d2c824b16048907b29c231e86852a806ff24014fccdbceba284ef0a6814696a2889d64c5e750b132d63f9fcd693a201ade06b92084107c6947efd9be127a8fc4e871cab766cef81aceddcaf89b50ee6f17652ceb878a66ceebceddc72b23d3c1f22de6056e27d56275baeb0c8e782151f843b4a90fa5f7bdbaeb8428620882db8bbb94e267961ad43d9f0649aac0a773e714fb18e5e7b3d2be2ab1b53e65bbe5b22ea43a1c20d56cdce27da15758d83d3b39536341dd59f6a174572c6b182bc20df8cb5739c1eb3cdebb72b8a602ea3b4e025a9a150097bbfa79473d056dbdaf2fc2b587fafac2b58b1bb452b2d62b815a36ae59a5a8902d7c63c125077906b397a4c73c45cffeeb57efd12c7fb76c568ec76f5d1cd0b151d946275b4a94d4908ac6ae08d272ab81acf1a4cc4645f299e8c84e8f0389dc0a625622a6a0f1d9a5080c918d2e1ad2b18ecbf64681d8d2088773c306537f8d2bf2fbee5c372b315213a78ad3506dd4b6a6cefbb939b6e0346ce2996fc6c2600d08760ae3aa1c151cdd5d0039bb071c71a70c0eef8ded0148e0368c79988c53c18dc8aebbadf78d6bb69b660f86a24a3a06f78445e00217e545d8e3323c2292d4ac683efd04a9f8c2c3a383acd7444d7ed39474102b2a436de7094bac40028acd4fc9d100debc4b9d5de7ae508068dbe40a7e71b1de99522252fc9d309f62229a5cfd785cad97b58cb7a5a5f9da5b5a50622f72519d1e6f2183b1cdc25e813e8645f0a541c0a3984cd6d551bf0e293239616769a9e35f94a1a4e8f52c2e5a98edee01020b1012306093e2465e89f60f4a51bcc3f6feff00000000000000000000000000090f151e222a
+flags = ValidSignature,ManySteps
+
+# tcId = 56
+# signature that takes 39 iteration(s)
+msg = cb0c000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 6570319fc14d783b583fd81dbacc93c9f25e209c7e2d1db45fcd193534299d97fcf05beb603478f83fdfbe3ec2bf9b808b20c98d8d72b717cd72a5185c448e725023a0563f98943926a79fe5a2a79032e08c393d2c5a05fb93c85b56f13942ac010b90048fde95b3b4fb15741143321473ba593377ffdf7cd22d84a626259ab652002101eb3d86125ffd59fd794d9c5a728d7d4b5cbf1eb65a1d4d8d81483bd3771d53b7598495e12692db46e73a433805fe7fda3baaad3bfc5c0095fee660914c85380a0663f0d6858a065262d2de624c46d94c1604f1f168ddcbd2bf7b771c0a251b9bea65c3526e1f12d677d9fbb2a65bd35050fd2d64c8929ae862b89da6dd0510f5b4da25b9367f0cff726c9b3f0b7db05a1e5613e598bd8ea4306fdb17a7898c5f8f3375a8cca6fd7c1621d1bb870d12fe3be62440172b4cc57f7aa8d15acb44b2ec4152a65a36d098743ff64b8e767a4013b089a9079eaa4989c6982f84f4fefdae1ebd3ed204aef26e367bc7a9ff803f0c11917b0aff5bda98bb4fd7d594d1a6676312827fedb48261521c891252baac6beb46bb7e12952b114c13b1e47b42ccd108f9c9772ced3341cefacca3b7baf0940225cdbb03e4a1c1f0a9805aa6a5e85e6772d7c6feb44a0983f20ef222bc2db11f9a755d5033078bad4a1117c16159cd963b2e7d5ec56918399e7e2bf9a60a1a9f5d095a136aa9fc0cd559c85fb2b5020c4cc03fba4c34147ccdc62d0419c5913515e9b21404d908f2f9298be61437222b3b54d4db7017fcf063c03ec7540b725e5c9d0c3b9a415c7ddfd795ca26eb269c194393b7f6aba85600c2314a2d70865db05ede213e128e63fc9c165d88b4b72c8ac5937127a1635b35a6357d41f16eca42233986be1b9cd2e01c0c584371b2d7a75585b8e2c1fcb0ec296a22f81e2d5abbb57ce4cffbcd0393bf263e2a9bdcab358765b61e5885bae17e58a647fe50cf09cbe6b84461bdca74341db00c592d6ccf7ce5ad746d03b822344fddb152a91c1bf17fcb75c7d0fd60fe208650493d5353cfa211d95dd4d516a5ed6ef5a5f53a83f44d45dcf8cff27f7fcd565acd684d7bcc3910c3ffb2675c52735acf3796400de88048f8d1df93ec618fee34027f2e45f6c96a67e43104eff82d53d7c298d15758d5fd2b466b9a00f7ec438dec6a35d6745265250b46c7fa4c1c3d567d1837debdc1c72d0d7e340b03d3a3151037e9c3137af1b80bf266b8282d02bfee94a01187aebe854659c426f12eefdef522c050d8b514255840f870e0694fb191e918b5ba89df01047b8f4f7fb4142f7942247344ccea2e724fb30e75f824b9b244d13b4ec29b8baea39f494f5b17ce1bc8b3584780ae622686a7934249131ba8165473c9e064c0b59bc0db04d92784976085a389c04fa2fd6b15f49c70a59890af0ca86f05db1128e39b36023700919a89faf4db37d96b29b73e7732b37866b90455322fadf4fca1ff26fe9dde33a1e4645d394f24dc38541f8fd7a21e0c80ba0f7f5081874a677e337c802f5069121d4df8079b9b1143cda5edf2ec1be98f6bc60fb26ac20012ce73b3c56dea37cdd25ff02398be4dbcfd8f681f5253da1fff4b273634c1bb6f3ed991c2728c2aad1d1d1287f394f0f9024fe4d805f4ecf059bdb4786c4125af37e65280fdb8df9206186df5870b48cded097379d3c3f23c0c5920cf0f5b9abd7af7d5966a204be229476b42bec5ca903df94dbbe1e89941ccf36d7aaaf4beae2ec1e4ff5189c4525db0e9f30c11dee8c8673360634d49e59f928df07481754df3b0d4b14e30cb596763f3268d1106fc571705c6b94d7ff3e1be58a68bd1119910775eae6e0edc89ef7e3a4fbbbf71435c9ee55539d45ae764289e673d21dd62e38d1e5ecff6a2d76462454a5f366a017084b9b63ed39379a15d1088c2acbdef377e78bd0850eeb278fa4a90154783d64657ce67ef0bbe4ec673e2aea2cda4695909cda72ef13a8be8fa81558bcefa0373613c74bfbd5abad71b06b98edcd4383ba05dd89261ab86c28b8760e68761e928530fa733c71ec1ad2153ce8651fd5cae23ccfba0ca792ae0285421139b49fd4e1e3f6b7e84c34b0ce9e8ae3cfdba198f325ddad28144bdc8d04beb45d311f960d1e0e730180b4677c01d3023ce79416e94df5782bd27a150a97ddb7b4cbe7feaf30733253d27f6dcde4c50f912fc1b01f899ce1dd3d48152e67aaf1d90731b3d4b578528538c8989f9f76911b3bdc6e36d9894f781a0c4c74edc0a4e102702f66f1c8261a92b38754291726fc8eee9afadcf4a256745884063faca94b2a8b98ae96b0581ef2319ec9ac54619ba66f2412e95d659e7ebe39a909408e5ea7901c5bc27c74709d0621597e9e84ac59befe675c51cd075a25efb4c9351baa7d3d9c983b27ff1595a2bee73952c7c0b6c9fc252c8c7086402ff025c121b92c2425b3428b743496455954d38ece2b3964a9fac4457552388127c012a26bc88bf6866504568ad32a742f87123d61525ebd1f4109324e3b57640052563c9eb9cfbe683b5a325c6e8b028b6b9cef425d895ea902031752a5b7ff96a2af6ee1bd719bb0581a4a4159c0c58bc36e74c7360051934433ffde1b6a49f2c04e93077d8231865b3621e272b29a6f50f7a2d059eb380b4b43c3155d7b4b2b6eac7da5b135ae5b419b5f3dff09f68251bf5fcc3e10168ed331f5f0d1e0fb51e5ac777b2eb4d9a2befcf049be9851f791a6f059414ae3001acee646a07a222884387f1e56445d7852f7db92d40662e91101d5157dcd7ff517d3b864b557316b1dd21706fe16adb337ca7782ed5bb21e970afd9dc16eb36e08b728bba8608b15c30875fcbf6f939d96c7056edf024af12e1583758a005e6187cf7c2e2af1167700129ba74ef20e3afea22cab2ea9a24f90807cd839b884016c8b624d2cf13917cf427bee7548c51d4efbd1fc98b0034921c72645657350d189777cc3bec591fd205721d704de42442d2b8b742f12136af848ae0ed3150bb4987e31a3a544b9f79456a2fca7b149a8f1802781206b57d7ecbbd465c40a1b4a0e6f3a1f25c5ee35855908a46e4dec78dd586c086c04eba75769fdbc3cfae0cf2cd32abdcfe48e2b106b8df9a4b98291de33e648efe6f4355ee437ee7cdc854a3cd47c616eae431d6955cb78548ce93caec1547f2745e32686d930929982fa2bd1a187858511218c7342ad386105ea90887f0919d875685600706ab5bb683e1dc5196d8943ce821a639a7931e175df372b81901af3f08ef4bdcf10a18127efc074d190519a831e8ccaae06a84f641a2f5fab19fdc708e8d63fd66106acb2a720361f9f03a3756542d9a12d3ebb9301c121aa30f757ce4e56a2243cb882f9d7df7c26a52fc8ba8a0af2c1baf6746851a9c2a3e65ee15d456f9395482b5893c7937198415082992b7d7f34a547d77c68cdb77ed32ab1218d409bd71240857b13b0974d045e2c89ccf8e6a62104396e217f793a990d162d41ce4bee49792940496930a20724c9d4949eac997d9c2e5b9dfc47b04f0cb0b694e66f4e9cdc5b121893f79e52d3d61fca23e667da19286537fb2f3a3953947206806782d669ec03c17b1c7bbd09b4bff50d91252707a1a99d7cd1689bc4eba2f985524903b19d791da6fffaaa3d748918ac7653336924c960794bfc06f039580fc1ddad59980d1818c7ce79446f35576b7397caea996e359da3a3b3b7a882608ade4a9cf32380216633da5c5672cb0aed04512b6c784fb4b165ee2b878c502a4a3ce3c8fa48723694106166736b93b5e688961092f1ffbf603e815aab3faf971f9e3281f784ffa3a2dc23a164cdc4e81783d5486b4b6132ecd404744b248df1c32c769329f224674435237cfbb2f9806ccc1ba3c8961b4c34ef2ee69db7f469072a116f842b5399cea43402679db4245512a95107095eb057bb6ff24b6bc418b8c63d7bdac31c6802b29210d3662cd27d57386f1eafccbaf3837e2f8413f66239f2e689e537dc017d005ddcf003bc5c25e6e7b75b9af884e1b164717a14bd10633b4685b6d2ffbe03d5f5574b73daf7eba0a800f8b93af81850bc692b60913e16ae210b552ea00c4175c4514218ce4ca00fc16cc098c5c6aa499a2eda2b39cb80b80f39af8dbed96b9ea9b010990b6524e0133babae543296a6773577e1bea164689993cc2f4f14c63647c4bc9fb70091e09c85aa3d394f445567dfebfcbb2ba19dd37d4c0810cb929dc9ff9d2e5d5320439c7e568cfe1d4a1fec65ce576d9981ac8d45e5c21ee9eb43340b3db7d4de838730742616fb2d95dc2986960f08283207c414d907a044a3c96fe6a83beeb79ceeb9724ca40e2f0f340d8d2c6e64133d619594e73d592a9d24c5b00aa1dc8ce4752c2d86df0cc79e3d81a8a1b1d0cf50d47207d555be63db4f1d87e818082620474b0f8dfd7084941b14e8c99967d2af0552cbfe6cd388665ca8de290bd2593d44e139d24c69c1e09be1048da389f7b32828162ce85f830e4e2aa9f81eeb6e2f3e41fefffd2e611de17dd9f35062039c2b940b809560f9b3a749f0f60a04b06e024d107991ce612d2b0f9eed003b831476d71b7d1f07aa3aff90a353e778e920b519ca5b8ff394183b7cfe4f8fd4e73789cf600000000000000000000000000000000000000070b11171f24
+flags = ValidSignature,ManySteps
+
+# tcId = 57
+# signature that takes 43 iteration(s)
+msg = fe03000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = bbcda17759a78276b6332f3f95bbde79b676072fbd6fd60a4d43e25ce3cb2c34c4d81dc1a278a99c5d5faf8596b5ad4ff060294922ae3d220e5eae86212332da242a2e77c78db4e06a1d28220e3f4a100022a3b461d263c43d9bc5ce2e3984e192f3f8a5a2e1f25bf7a5e88dac482888fcb8657117a0911dde6c9cff20561460d7378821a073fe7eb2c6328f52c2c74f6448bedd9bee33c9b4bd28ad3410e3af07ce1f9770fae92d8996ea766e27c95fa5b8021c735413e86b277727f467f5786972c3df4e1547a2b921cb265f48a4a0e866eae0a44bbb32be8aca8cee6a6f9bb60069c3e8949a7d6c448f84e05cdd726bcb3224a50b49f6260e2482f45e047c3f49ac318a8ca1d9aa730c807f286303e837e6e8c33079ab12fa20433860caea7b91dc629feebb28ffda66e1e8636b1e4f90488a9dab533f0bd1596ac3d3708cfb2d30a08636e411fcaacd7aeff28d2253b128494d37878e9bef3676843352d01e266068081be7da3abef9603c7d17229e57714c61e512ed4e9b516d496bfd6a58d17be0910b280ef2e0684d94d957f80dfa1cf3a45c1b65f5a0dedd946b09f6d0f5e158f1dc931e4d44639a687924f8de96f1b061132224cead2c5fdde857e6848052c6ab47283db6095fc94b2c392dcdb741ff223febfd0a637f2162e862f4e9647c8f9dcba2e1be425f5308eb1bc507cd10af0df3a559d1e9d9fe91ed0f82b71585a16f8444e2908f166ef8af1152969a73efa663fca2aeed5273e17e84e694373d25265b0214f90a8f6b610e12f73af764183cab7e99f5adb7fef790ebb61574a424e2c40afda048ca5ee38d0e50f000c03aa3da579729f92b71f4e79e6fb386326863a2c48289224a22708e8cf3541467f0456ba6f2009c4937f88dfa15c0ffdbf4aac6d7f677544380b87284e142b71dc4ff51d385bc78752e6cd9cd7a12f54d6e38c7b7622527bae2ddc033ef88e313af84e18aa357c5ad56df9b1cb5ae393521f21ac8f912e5dbac2fd51aa7522ffb927f21b8e28d4bb9a3eb58a7b3e7b63027832d811ff57b1ce25583d2bc70aaf8cf91e6f8ece51433d97fe437127ad7f3b0647ae860d88f9e20dc6e281bac2e8f090911d7d390c6e8547240179871a55e0e73dd1114f0df5e380c56910fed56f674db18914eff380467d3fd01f3deee25bc525a672724d62f73fe7c0ff813c8a3202de503e38ba7c538219a56a44d5719685de991cc996f2b483fb8c0a2c818378ed02c4482ae0239fd494249151ccc433013dc544708b0fe45d98a6e0a6528b88c32892f64acd551a7d0b7bb884f3c7a18e58b8722e7a90b904d21d3004a00b468a5f06f4f141bac688d04f28bddb7f2421f0d2e4db7a9d7be94959dcadc9b1252b1d8547fb14cb81b089cf8c4d99ddac314519bb4c9a19eaa3018e805c642ea1362243caf68b8d4972bbd2f9dbd4f571fbddb00b65688ccdd344a47bf616adfa9b6927f796e08dad32605d97a90acfb70d4b4f9c95285541a820ca6e9e959bbbb1b77e2089f87fd41e824de384c3a59c251b7c571c1d89e40043307d170a4e679cad7ccede16cad15cbab0e56c4005f56fda088434eddb1b4eb04af6d7f8f5120b33fdc19858ece0cf755a57f3a2006750ba15d687a507d4e5215062ec3431f78f168218874bcb785262068e0daedbc750c1908420f87eca0f02fd304a52abb78c0968330a77e587a4e087a0baef408d3691290d2edc5387bfc169f52ade0b387f218dbb7efb9435d93a3a7876aee38e0a49c9c69d9a98197e092ae1faaf6c8ec41804b7da6e62210c4cc673952b95f55b929b1a8ea2b3d08dd5434c2651edc7a41dd031212538635cad974b382b670014a9241a1e2820b2a74998a46ed419900cc1464c2ffa33f4d20823efae2452aba5149e825ef1955572b6671f3ddb3452cfa1928e4e5fe84fe875ba853b3a56618be73b3c530ad3a6f8725883f7e23d136f64ff7cb727f1020b1f4a394719a71238e3d7542a66ac55011caa451a3a5e101c72be22fed87f9a663c5f0b0a4d711502391d1edbe0e90215b00fc08289b72425a0dac72546b539fb9cee77d3f084a39cb8071f504ef52979302836de1bc784b58dcaf8a3bb36981f45820a2cc35a29bb8a6857e7fae2e1632a857db40d1fc5bce39356d6c428cb5b4b8401aee5165be259031acb0af2a7433c41819a1c44e74a311707fc15ba6d4f0997873bc64358a5bb9fd4aa22b1caa9c030136e2b5f5b0a999e7ce009e3713dc032e4fea8f516a3e0ac277a36c29b5e2bf15cb4ff86110676ffcf33e4b7973a3bf248c7f6c02c9f091da8b85380684ff829bca245c3e3e53b67bfa4bcd34f0a598b5ef09bff00123ca0dad69518a765419fd72eff17602717957e3ee3df45a82a573319d6b40dd6beb7051966577d41383d97137eff7db84a2225e98d014f2111357edac272a89a7c50e0184b27d6a6ec611f70051100e9887657cecad1f34867e6d144c360e9eec53bff7b8a8a4ddd9cf254e5c74054bb8eec9359ca1fc91eaae77a9487685a209ea960b43a8cd198107b112deff2391cdc326300e35473a634c96d933009fd172601000c28fd58243469bc7a634c462b7f2147c99de6a6f03524f15fdc7db81357ebeb1eff404fc94f1c6e40912ce2661d8eb9d584f572a6152ff88d764c20ff024ff22f6f13605b3bd380d0e538f2b060ec6afca3fedc244e18f16a032eccf437f38b9db144770aa247e0fe7fe7001aedada4cee551e5e37a38b64e086e442799869b7948493526179807d628867bcc9fc6fff1a8d2a7203a5f0202e00fa2b7a851892bced0e5b2ef90501df3984f1a28746e6584fe944f6436daf003a6ef2613c20982e3ca9191228835ee1102e5fb67d5acf87e300a6de21d7091d6a573167b0a65f2dc79f979f5d1ce55dab07e2cb2567266f8e90ff619b6174110372f43baffe24e3711f114be914c0e01c56756e2460293281cdea5cf3321f789f64fc1f19269471f7373242c63563c7081e70fdf014ac4e11d1648e6eda56bf964599f7f91fa5b85f9c012236f700380a45b12985475ea38f03f1fa5453a782d059bdafa71344bbc2c60eec43d0edfab113d7f8761bf37adeee2ef88a5ab5060f004de5d69cbe2d772a627548a85618899a2f3d56ed971c8ce87acd78feb6476eebfc2f50075e984670a31d45d9a351886fb72cfd889c6c3486a824b0d6829d6db49812095873d9935843fd0433bdf9d4f4ebccfad9fb57fdb7f4bd73b0ceb1373b6e55d564f48f2d5d0036850ee0e04f824f45ccdcbb735dcfc5cd1f38c1238a28119008cfd6d608bc816d1222a01cf368f5871a9c25c3d6b023c235f8e2cc4e32bb365abdb16f5f9959236aeea856c562432129c1547b845ff4f143989e5d699003453bfa694577c9d5b9cbb21886ffd65b3b1d799ea31562264493d4f5f00b4531e132f7f608333382c23024936851e1c4e785f073a3441bca8823f8f56fe8ee7b484d09f98d898300f83974b9e39f56ca4184063901fd34837ae0269939d598131b93e68e982efc2e9f23183194d5b1bd977f886be2f58f7ce51a317adb1c29dc153316f7054cb17df75e455c1bdb3556e008a66954ee1c082e23203d89d8ede425dc355c592681fb20b8dc5d9ba8563da39470c3a86eff22c218f796f9594a0cdd39b7e12d2ebc46e30650756f656241606a62875b89f864c9bb7ec6f22a3086377146a053b373e5e6016a690c5eaca8c923d17e7d49cd2e81a8c2b41fe008b742983b48b973a2e87a03295868dd6ec34ea1cf51c359d5ddc8a0f3b480b443f9aa05ff0b98da9bb79595708b9ccb683e4580d20b933b19dc025f7e8037ca6fa70260a0ce40e354b73304b0840121892d408a19ede4eeaa311166d27e711deb9e4c2f22486d01db58a504caede74e928ce2c39e68fda561cc748cd20dd5930241eb700a177fea79a33f041c72bb5ade325eaa2f7ae60d9a9c65c314ed410a94299f608a9fd3be24f427f682bb27fb32f9bab81dcb492605779267ee0b7195ca1b7c52103692f204fd4cb665f279fb3a4a392022b8736bf5af8480bc5f766834a8e1944c83f41185d2704b6938a5d9d03263e3deae764d5e9882b7b2e4521b379d870d4968eec4099cf9007e6519809ff133b36eb2f728159b36934834990096418c1620dc41e53f3eb8a55c6657687a1db8e5756c2a8250d8ac9d08e5487ff27d75b8efe3351318dd23b791e580f09feb7b13f4d82fb0667fa66c32f6074bddb6843cccb7a6cc7769822dcc0ab6487f54c49d61f2109b47cb2c87c0f6f158298fd22f1b9fa39ce57c1ec04b69f4ca155f8ef86d321fc3bfd52d26b58f9c108c729fa5b5bb3426628610ba05e816f362815b685a14aab96b63cf2ee717aa975ed4d3cc7172e17d97eab68a8e32220a59279e543b2f4894fdcdb792a7da257dd004eea12cac243c7b9b67b0b035b5d9bf5dd54d7e1fcb0a44c7a18cf45c765777c3fdf20bb4fb29adccd24952047234331feb580651282e1a523e96e0d6bc35a50cb42ace95edb1eb7bbdb91e499d3cfb463b61ee61f851bfff32c944f8b1090e7e3fd8d02f05740a840fd6b04e969ea2b6c3f9fb7086267ba3bbdfe3ee414994c30622254253829aa2a5c6d4060c35444e7f8288a5b2b6d6eef8fafc0000000000000000070910141f2f
+flags = ValidSignature,ManySteps
+
+# tcId = 58
+# signature that takes 44 iteration(s)
+msg = bc10000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 7886b408e355ac8eed58a28db36fbcbd60e3c9fca1f77e88ab399acdf57fd12c03fed5333307614b530ea3446cfdaac07ce1fd5310cca41e224bba5c0387aaf0091a1ff0727cb4f62bde0cc681d1ff59294df794196d69a377bf46fcd717c44904184f0b697713bfecc4ebed5e119f23deed3de861965ce6c8c7573e45f29f819c5a67f858edd3a223ab300fe97f3a019a9ec43f24058ff10241ffd008164c78acadbe329340da4a98b07ad384d87a9dcb82dc30f341f699e1d6865c00ce0d33533f52f6a3186add7d5c56555ecc7a4198550103c46a60e9987e00588c8720f4bafdc8f52c76785bd7c7ae66954b1f89a3372df91d963cacfccfa384c9dd1f00a381dc16fe205391c60ccc9997f50a05d7ec28a41921001228450ba221c9887c04f6c127a4b979e595d9d48734147d261587144a702ef180e845733abfca6b60c628e2cdfbfe9dc9e5c310cc4a9a79e9fff5c61af2e9b8eb25df72fac662f3b0c4860f5cb30ad2510013428c18cf2fac4fe524a86d600460d73bbdd287e470bc2c3e92df0c132dfde71447583dbb0472c2f6c6b99835d351788ddd09d2209191ba821fdaf237851d2d8698ebdae44709ba44358a49924ed5df96755b30fe5bd467714860e92d5c68c22eff2da7024d53fbffb6f04dfda5e9efd44b529fd708dd6898311e5a9bd73d2acc5518afb2341144fdd63159a2d8c092cbffafe65e43fd29b0e6a3183ba3eb0f4a0f393d4b096a195aae986861e7ec97a70d5553941e23bc96b10ef09397bd938f47d32c6a4efcbdb45c75214ad4f43d1dd73bb4a929b25e5c7fd00b55d16a0fbd2b4cfecd03ba0d94feb86837d404f03a296514cdfaa9dbf424b9c3344a84f2a99efa4d273701c32780a8a0bc568959dec3cb58ad52010253eb1096f752fb3eaf9edd4269cd53195478d6d9ac8229aff4efa1a7b7b924b38d9d5babdb6efd62029d21227e5c49fe344980a900d395a5635d5a5d5e4e60df03e587e5a69e0ae1114d9128e8162d111753456e0e0e9266587873f81ad81c3121eaa4f1937d5b2f3a36680002e81cad221678122a456f0304b36bdadf95de811143b1daaf48df48db876dfece80e7a02590a597d30cb02f43fd0ed854806d8e586785c01633b5e1aff69fccac11eb74dd4d15d4c7785d0e8de88163c8e05c07b2dcbe2ae0a6001e4b696751ee80393036d8d2f825d88ef3d7ce51cb2d24870eaef40d3ef91293457319151efc02403b5ced3ba2cf0eb4c825230e8a8e89f31016ca19d5cf3cd20d2d5b44d9748afaa034f8222d5cf20183783a26728df676ff8f55caa3f17df71149d1d4e9f71d058a3d1d6c2d4e4d2030d31c795c2fcf08832a4a8d1c2b2297ea3081a1b6c5c74e297b576a3b3901b071c6cfedf84e619e7c879034c36c0759282a271dc4c1444c6603fa2225aab788a5ae11aa242ce8dbd3422d4274dfc807812fa1c7d119a6d43a9e35d4af818b3727d165813d65441d2d8b42bde43d56d781f5b9b341bfcac73180d88c933d9e25c9a64cfcf07f3e03f89797156630f953e8380859f37c6c630fb4a95b290fcbd85b9f2e05778aa874a4936e10638d21fe3cfe0176191399ed293cc6230451a163dcc2a525ef130a8d1c2ad93ee87682ba8e061101bcc332794c6ee2673ab298982318a3b68d10dfc46e5ecfda4e1164b35dbd296e4bec9a01df32704b76315ac1c5c660b871f5d0ccf4065d8de4c1ffcc8dee4178bbab66f1b02179e6f73bf19822ca9fb284021afe756259f051c11694814b8b019bdaa9fb261e8dedcafd2d69b19d1f96f1bc82ec77ef51031b96dc65481885763c5e6746ff0bca40d1c375be2b2d4cde654cca8415cb2a83a66d216001d692c4937c138e6e3b1c18c54c02042f8d58033fd49936308d1377e5d88b98b4429afaf5e4af68f4a1f5b2e039cd6b5dd3d04777e65c1b2abaebc20549251188f697d1c7373a62cb7b08d2dd367021bce2b5f4a28e6e93d61733eda231de2b35c9e2c84b8063e9128671a9a27b21ce5b2c6196769c0837fc1f815439bec0536f017f10803f5ca14f1280988679d604e19330f625e3965e66d59bd820cc15a3ff8f28692381e2477453d153f5e139855e6ede385b5b7d72506a3bf53ac3ee843a8dadaa8dab1e2f84fdea598e2c6aa4e3b4ffc58a78b53171952d7d49b05fb6e59ed5ec857747f9b1526a256fc0f048c0c2e239ef8dbdaaf671eb75c56309f56397a3515ef8b696128c08cad511fbc86492e55feecc19a4c854c40d36cf7215d3980b7243107caf3a3d7ef580f2db196e1424d35dbeff8277d8c0b0e749e26735b78e10db19c8274a81b1168f09504d0a2aa90213a72bbb6881064db6b488c8c4bb5620b8c2793e853660adca017e12815b378106a88e59505be0eeb43b03afc211103f2d20174e5ef5772b9e87953f9ba96ca1e69bf79939d6eb75833dfb233d2f7fffe6cd1212ad896105492ee863883382403d0e32124e8a5fb30dd3d5a44c5859c2f7a1ecb017410fc7208145193230273e306622c8cff46393a73807cb210ff8c8e9bdbbf474377758214b4bcf6d2d45ffbc3b7664cb4c7f4d9dfe2fd8d76a2f9a09922d6f5876a09fa45617ce12e0bf0ecac9ccb6041568c0e1da7b023ff02542caca8198844eaee7144d535583bc7628c11b3c02d285ba06445cfc96149af917ff7b23a3a57aa9593d458d10e48c380396debf3d00dad69c5e234ef2dd8f27bde03bb8a214b8d8500e5688e5eb75ff30d6e0ca650b283d726096a46376fcb77a9ebfeec2a1a796193111f491e7c25e4a817aaa8333d4485a73f6646ff228985080376264e290cdeb8abb5e52b5003b6bdad5e941012edc370533c1773e8182f019c140595cc28ee1308c6eca317eeeabf6b8c630274327ce81da763cb7adcc4a625f0c2252d3fa2e2a75cee7d1b457f74760accb952e364e68b300e509ad72b06f64925a410c5ad29a55433b926d1cd6fa754587e1c761035c86f1b0130acf97a82a89b7a9a16981d8c451ef529dfeb7a8b072089fda297efc6f795fe4e91c49a00a5388d19bd553d0dd2db09bb53aaec2f2b1db95d5f3ed9b470d8e8ca43c83e04aae5865f84f590b58e7fb9c86b665bcac31841c31b965622e40f5d2f01bacbd2cfc9a97645bb303968c2bc041074fb9f80ffb6f7c4ae869942a1b8537c5bceac69010991cbfa28eef201b6f31bdeb3acaefc6a5fea55f8aed6ce9160973d621879ccc6d3c96921bbe4e3febc7e9308f0cab473874812051043011b4c1d73476592a5fef111e6e858b88fff4c03b99fb22b49817a7153c2251f4524ebab30968cbc0317cffd227183c3fabc5281df4467cac43f17d1ddc40047d1ae3935e354334ac595f0b756a8d9d712717f7ed6d83c0a58364ac96b294f17a411731b4d46535e20995af972cf729f7a8c222237e4aeb7cf8694d7432c95c7e9125bb03b0da402a24dca423eb97433685e698be8d0555292a3af58a36c5f23ba1cce6854e5cba1bb1d6c989ad55dab142ffaf46a1ce65d73994132962c6c50868bc697b2848f6b9f78ea71ccd9122cb6686775d7f39d3245ed1fef51ab2b9d6c95201169c1200021a315aebf2501460859b32feed4e37709c1d3fd82c495c69981043ae54ba577276e46e155f568b7efa9db1cb204a6b601e4562535ff4edcd884a2ec25d96286f560652c5ac73f12933d9137016f4fc3dc0ced8957523109cc0f97ab47d4d29d577c2618e88c4a4b6302cf01242a6af14aa1bfa3a287a3887885b8d0d276f3b113b1cd601f6e78e5b0a4aa1bdd15a5dac01213f57fac75bd292693bef59a3c1dba65d235c6834568f9a25e0a9c8150199f378ae482ada1adc67af79177d7e8d2c08e743264299bd2e92803256c8f7da050c4b8e097b5b8edfdab9c3d6fc8f6b2077d99f914d6fa20c10b65391be16b6bc0ad69794ee5e6c68b722765b12542ec9d93e6f622eac5a75551c0826f95c69a50e6ba8e7b255e002a6e8db7233cafdff1c0e3106b7126bff22c577874a861d86a1b323eb3936a4cc429e85023984f7940db34bebf39ba32e6242bdd78a9e707ed14e874dd9b93e76cb258b19a129a4b7368e424a56224187a3155349060e8bd0c0f71fe47a003314313a5bc93e774eec2def8a26f48ee2c84860b08e3cd414054792e2cda188d14a7a13ec99dd4641b5ee12592b312192f20ab577b1df34c445ea1d656c9c7ab466344bfbd4be5a4b548bd201031eb3bb49ab4b9c81a76022c413d62836ad9d5355f6b69b9215f9e729e8dd5cb9d9db4b2cda30928886ddb9ff89b48c49c4490abf9dbbd75aa0db55409ee084ecf6c0b604fcb6691e3fd8f54aece7c783e4c623920d52b5aa79ccb6e0335ae1c215c2198c0e65d0399621896009a21b824686114d958bf5211a4c51d0890a376335e50442cea9241ae3f6c50f3cb53088aedb6658254210acc27796bbd7ecde4d12f80db93971907fa13fefa7203e566c63a121a3bbe61c486cb044bd94b8f14d172469160984e5cbf0577d581d4500a9b1a94403de6f9dfcf7c65ecc9f92acc734cc6c0c59c6df459e383b73c265f337a83b0bddc1b0a494a0e67c7fa2455766779ac3080910162627c1101f3d4a545769d6e36fbdd8ecf075c6d9fb300000000000000000000000000000000000000000000000060d161b1f20
+flags = ValidSignature,ManySteps
+
+# tcId = 59
+# sample_in_ball requires 1 SHAKE blocks
+msg = 0100000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 0d0d1a7af2d4eff6d4af7435a634d28ec5d23595fe7a72cf76d30f1fe16620c64862e4aad54fb78f8ea752b1e43e4e5884d7226840beb36a76f6a9b1b7d50b0faf7b8463f57c66240e06a22f5f3de4fe35c1bc6b5e42ecb1c0758069223e02f42efdbbbfbc87b4c0736141a70e6dee41bed27fcfdcb94f4213a0f99a02beba309a93d343cc932a6fd67fb90d6de7a81101a678e6d47d8b1c8bd67fe386dca360be789555196e2ff8704c175ab60a8bf3c9f3bbae1ee5a128f67467d21fe8a62e5f8ad8127b8d7eb37e43abc963521e79d0f1ed57fa341f743246fe69d97afc9a13824c79f7f3dedd286f3de739158a0900c99d9c8e5603df109c25d993f634582c832a79c7bd8cbf3ba07fc4d9e9ca8c1157434515538285417e6424209173c6dafe54c37e4424de0f25454b1713fdc3e72d01a2acbeab4d7f60d17dcd073c60b0ad5252cfa137c138448c931498f61fdf8f449225b07e7e0fafafb1f274fe5cbaaa136e62362877f643c7c94946075e8928ec47c04ae54d2085f7f2b1ef0e46dfb31b9a19135b6cc9da876dace6f61c2766b463b24c0aac5068714e348dea399986c4e8b8bdb16768e7ab81e9ea13e435f97e35d268bb679071d5b99d0d2f1526833e8624b6e4ff1ba3f5af2b23bce93dc7c2c4370cfbe698a3297005c9fde7af66bce7c9ef68337b04d7681e303a824e00acdae2ee3eb8c3e7507e46d67a4cfcfa9473bfa6334f2170911bf2ea75a3618cac939d11d6a778101e033cad958aecd89feabfa19dc6dc73584917834ed6552966f7bec4546ab24c643db25722b3ba412de04e9195898388d9ce04cdd9343da69ac9b3d3155620dde4052e9e30529904f25dd6233bafd4493b66844c8fa5d831377dc3ff8829114000799801d46586dc2d2059f6bcaa43b899e089b4f3a5ed4e6a7f1df5b8d42fda456a70e10b2ae14630f27e4c7257f5df23ad032c1edde44073585c04c1231e085591771cb64aaf62febedb33df56bc62f4d126cf8be4332ce4965e6e67d0be7871d81dab963c576ad7123bbff510f282bf66c0c1ea04aaa05a7a4d410d0e7b6ed22025dcb6ceac78f377306e973973adcee776ecacaa560dc8008799b306d5e617b2f51159b1e5fe5daf40f8f488f077cc55bbefbe8f5a61c28ae2b1493272dc6a4e34854f73f74c3442d9c302f96b6e721e2956ee0bcdb9999ff36d74b8d4ef036afbdaea5f977da2b94d0aa9136abd6dc26348873090cfe3d4bdda4d962f9382576bbccf8ba227af4ca8e017f65b469d2e3d35132fac40cdf03bf8f6beee66fe9214e1bf684e0aae75e4141d9daa1c77ef409f56424b01acc7ffda11cb9bf64a9aa71b484b49b9ee82dd8178dd4adc91d8d176f83d2cc7516d2195917fc246ebdc0dba4cb5a54ac6169bacbcd79adb72d593fcc3fa289f1e4bffb4612ba7a3318e607b0b27733cc70a2e2b4099056731ecda3212d1719a6902cdd6a05bd70d389da1dd0d0b4f6c4968676fe33c6e32d791c85b16cc9f4289bdd09acadd9f902d9a91f1559bd40eb6b73da7a623048140f73454e4ccb4ad65038109f6eba9fa01b0a3fe1af228e2c4134be136db2b029879e101aa8ab264e554818450734eb5a900497d906e20d36eb3848b092c778054c5ecee767c00185ddea39160e4513be858bfe5c7c7febf97ee8e2b2fb477bfb10c11f3b756c0da1d87e3121ab4454016b36fcd8f6d2633c73d4528221974b3f21ed3d464d47bacaadbb4647320bf0bcde38b0a75b6c3aac8b72d3c2c179417d05858ae4bd72d9c16713f7c116dda3ff8164710d4d14964b33b00b268007f8cde2eacea5108fed77d7bff70273f351b4e160d28d02576dd5f3fc3ab264c5927cddb6f9a81b852d24842bd5db5c5f2d893b2f013fc75426ef2414bad1b845ba7833c88a8ce76fe2644455be2ac1b9d1e31791693fd65f1ce35fee9d17b42b444bf1277f2646a19d76952b3fa3846c3d258f9a1835a709fc21472b0f7de7a729111e850f27f88764b3ab4baaeb6cfc644b9b6a552a61a7286b5af8011ede05845cb9359232f02ad8b3605b00cbbd83069f26b610378055c004a456c7c44606125b7b076b3f955117e03eaa514da82a9650e8b9247902c5048ff776ecaaa5ea57df61d726ff1754d4b1393933599edc49617836ecf78cc7dd45750b666b73150496e3999e339243f5644d5a3e57c6cdef2ea6c967f8bc93c27aa56ba5352666ab6dbccec415f610bcc76879793935df8e594f5c6b80dc0adcea1a1d5854f447604c54dad61cf0ac91d27ef963e6889075163e89cdec0aebf32080efcc58280b705a029511f21d311c1644623f82039e096f7e1d2518928847abd479840b65cf10d15851976e47444d64c6d4425310a3b5efe9b584ce7aa01b1f79d6e3092486f91fe75288736e852c0132561a7616f21b7713ec53f0dc53432f53eb4ad778dbe14664b55553ba342eaf94e9f76320f8f658b4c5173ab938fbbfe20c9987318c1a5104efe41419926218d30b0c97a366e60f6d1240e7f601a1b119df36cda11bdf7fb531a27979c9823efd2a75c70387f0296dc7382f570fe59568afb406a48e7c13bcb40204c92cfe13b3980410b229767a5412a7db82845da135cb6d5b2f9f5b22518b2115dfb02115fa1c4c3177a55f5c194450f0f0a518df7755b0b12eb412f5f6ee2256bb95d2985bdf1257769718de9b4f4281c3eb3407f175c0b43fee6b94b00875dca0983ae763624bc4e84e9a78f778dedef5eb078ee87a34941005c15cf42ee05cafe098005b1770ccce4e59d9d3f6eab9fb2673766d9b70ac11cd6d8b9d00809e58a046d95ff62e78a8e5525af54094c907019ec661600ec2c4ce5337371a1daad0e37f3a5cdd96a3d985456a588b5c1f61f36a33c6444c3b67c445bf95e9035cd4f77191a95a7e4c20715e55dbe43196809123499148a930321e7b2cc7809cf517fc4b2b0b49e57cde4b6aae620fe8cd0b38358685ab80061c1c126a1f3a96ab34fa957236cc6c59ed962b3bb006a1c122da796bf6bcf7dbeb64f4339c63d3a437b5898be19f6ce62024cf9b9c89964569f176fb697430e553a7c0936056183223fdab2f910047ad5e64098a44a2edbfd3007b0b5e4a5d1e6ecb44f137dae2dfc45e96f03e75c900f3f84e2653efded35a3c8b27e310dc361c0740524e52a1bbecce57d59c4913313e62bbb63c95a93512bf09228918bbf921cd5c62b8914b7142d6abf8d632c3ac44ebb6936c638d56cfaa7cee463838a921398acbbcb44bce621bfd81fab34a8ec33810eeb89fbc3cc469990089d2291e1e873b31398f2799b8d62d429b998422ed634bd7a6de8e991ba8492c001fc5df8b0014fda377cbc5ac74e40d50773ab5c2b4d08dfbf3cca590a77f4db0380fe7af822207aaf99c38676327ccd9aad50b2d4db5aedf74b1cdc50c484d455429352ef0aacedcd9792dc26c66081c28ecabc445b6f1f547a24403e18b0468c8881bdc3e82f7bcce254944271c3ba06c80555c8f3d2d051fb6007507eadf8fb991f45c0c9e9ff08838a425a96d72fc20d642c2eef45b4fa43e7b380d8b6648695c0b9440cc66665435ffd3df10fd786f7638e13706f6c5651dfe5f125158ff3d1da84cad23129e11d79d0f95548318b1c794990174daa895e4b984c175136185be534ed6bff9231c215fbf6bd297e24f528cda523d62b44aec15fdfb36281d804625db07567fdb06779325987f69f16f19df737d5f65d1abadfae70a1a4daba5a87e4ea3a09751ece2ec21dd24f719b1f57e795819689c8f2e83beff593735825a1ff8e4e4df9d031dd66120dcba07e6bfbf1b0946b3585a5eb807c1632a75353e8f7b8c4f8ff0af978afe2bec80d3b94917773564d7efd92a79cad26360b599be49bc657b132b25f459d58166110fa626cf1731be419105b4bd235176d60efa939fdd8dc213c695674bca27f161da4514f646f33557aca06189698f2953674ee73be89e3fc4c014877c6bec370ca1fe446686200a94ded3382c4f4bc58cdc12c354a486463959cb91c2ea0ae965f912364c5d98acd40ee312178b479b540875fb2a0164b7134564bf7fabf59add993b08a904452152031a784cbd36e19a47d4c9371e7774d3433fecb5d072d059b01ebd3279ceeba80b356e3628874008d801ed74717c70a93411603f1faa3924414665a95c475ac42de8d616de8be5c00fb90e5ad13079e54d1c7000905b62742ed70555ec406b49cd4aa6ea68342aa7763530b180e4f790475eefe1094426b7de9e0163a4990ea3494909c6c6de6b7462d70c8f2dca3152d81c93a8c184b0c54da7fb604f835df34506731774e6b8f2361586ccc17f35c8e21795ccb68a5cd73355c98a17c9ae35ed22f6c0a36c4da30af96ce7347375144a80dd851fda4971f20e9d6d18878d74803b577af4fa8f34c05b380acbc5282eb63f9345e4dc1f9f0cf8808a204ec789ed31ac9f009790d5c9b7d744ee3b29d911014c12b53ff691fce0ae5d53dfe1c7a367e694fcd2f688d46758ec308f3f9736701dd825153df883c0dc539c9dc3dc7dc9a9a35f453c306fc57faf76451bef45889e4ab0a4a6dbd377996c7cf80e0e7192234475d93f3f813197ea2d3fb112c2e97cceef2000000000000000000000000000000000000000000000003080b131920
+flags = ValidSignature,ManySteps
+
+# tcId = 60
+# sample_in_ball requires 76 SHAKE bytes
+msg = 9e17000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = c900c9555fef3710097fa1a132c5d61623c554c4c837d185b7f3d1671a8926062e094cd3680be899883c036db34e39698133f314f6148dc3aafa088c06dc01009685f1a0ddca3b0311f9f521154c8a692a165c3a488419c4745412cb06392dc6a4d12286627b6eaba2f376a3225ea85f5890df2d03ef9a565ab2f94c99c25d9239bff7ac74e94df677e7282c0dd44c06fc2f26b33cfbf8da05b50fe725ae9de58d6be87628dc41ca774c8ce106428f012f2a806631cb5c763c722e04fc7e44f86fc75b1398a54412af3730a3c60e47d611530b873feba32ba4b34081e02652bc006b9e106ad6ff4b698445e0f0514837f94e4c49f52f42b6d1b655f90254adb8456e903224fc60271f280360a632afb017b5255b6923eb8c8cbfd62d24643e8f100391fd713b27fb7e8adcef58c26ac4953c3a73bb6d12262f78228774e274283f8b810c317d9ec0eafc05c6dfcac42d6bef8f8963d17667f7029182dce0566041612a7c9e6a5a9bfd953caa1e88287a20a83985ee07eae3c5c8aa408667556f7e19d657fe11036a227342358b7e42d5015513ad8ec587a5f19b33ec2e06a146904edb381ab11b1c0b0cada40d89cbcf5d7c9f4e15d8d7cca01ead1a66281d8e5f64ddc1393c2a1270d4a97b405d4d21adb189b8eb44098902eb48b50c5f5d1496bf5d5ed0f74e58b8aceab89a7cfbfff608a8a90d2baacd652115596e72fa1740848b2cb6b5bd8ecee89aec60118f16f4706edc781c6225daa0bc8539d82addbcb8810ce2687f1a171a3aee07516cfd6697c2e5d63629bc43ea3ed4a982bd516f3f448a50dabd95ac314c92f92d468f4f063b1fff69dcbdc3a4d8d21c01deeaaef7b9be41e934a68c144643a99ccceb8e3106ca28e7b0bfb3a9c5e31e33a822573db60e4a520e8f2190361b3387ca038c0210fadfd294bf8c1b302657211a54ff4b159be164680d3eb4c9abc7d6b07c2b81a5085f4759465f95f367005fa33544d56458c2b51bbab862135745a22d994e30692ca39b8fdba968b3766bb627dd6463c54487b81a27cdf9b1daab2a83c6af174f96dc454feea043bc0cca7ff9cffbe6e1ac04ec830a0b4e5d698681c9ce860da61249f3137e7980bde1cd4eb0a545c10f725f26a9e0d4e59987c4d516c28e938290bd88ec1729a553f6c7e52ce9fcc402fffdf1aaf47def0875c8afcb8167a530a94291cf107e095f90d92998f4200fbde7e5ebdb8a3c9282f57c2efe94ccec3b5aaae61afcb7892f0b20c3878e95b53a70f21f327b70555550a4805ac6a706d4bc408f73016b1045e2fe2c2be0195af8c44855e3233f99d5aad848cca7fcc43a0b5a0b37f54fd8d9f24c365011448a85f7fba7a9a7b4aec183bb680198d1626e24948027081d8e91aa6cce10cea8a6314eec2c74787cbb627a09f4ba7a691d963c8c026a2c1abd6a14059ff57493e5bf14c18fe982f7921262c85f80ba72f4dd88eda886ac13e63a8bdd9f72b04a781ea9e4ee2f58a15acbeb2a693a8f61091c02aa0932154817aaaebdcb7471b9d0b4aee6dc34f2ca644b0114b6244579f77e096e121e7143b77443459bd5cd1ddd9623fc5784bf34267bcd78068a0b2225f21ad1935ae44bcfd1a23ab4d012c8ffc9276d4e0abb5f100b6a90ccd7ffc73a44b5169a027b2f92f7a49573c997554e94fd5a4bf54f4cc473e794b60cb3a0b0c5ccfe6263c4f91d77def6ca8c0fbf91e923234c8a2657d91f6ed08e6ee04b3b2a62f29b5f467168d580848912b5c2c05386aa52ff2999d6f7d5b142cb1bb78a70db30d4bdc850d52e0febcbe452966f5a5d6f5fbd28aa498497ab03da0b3b773bb2849a4f1d6ce50ed0d356c3142d33eda4f07907c6205b52cc66d49a5eab02d8fedd50847456702f74466bc54d9d12841e65c0594bf55539c177cae24e9572b1adb5b26310ed4ddc2a14421bcc142ffb3a43acd612df758abfd95042fccd186d3d9c5b0cee0857f37231bc9f8fd80d4db3259465ef11d0679210394713d99bda76d6ccda91d31a287ad749a344050a9ed08f01be70350cc2991dd4dccc04ff78b9c9d339d097ae2d828afb843418c82a707c0eccaf9a3b412fc68d5725a31a064112930a8c6c7350664604606d4d1f817c842ee4ff032f69ecaa0cbd49768d13d06835a07ac388da3bef18115fb096ec01d42966d84795551b9ca8e0d11734161c71713de45b545695b14cf2d883e4cd8524e9da3f26f390dff3a23b605e24e812c561af01ff087c544af8e1b4aadcb4ff5cab5ec1d064cb9d340a8b0273f178bdc8b413ac88cd274b7f0c1bb67f758682e31376632e6cc2cc4c16705eab7b1fdc1127ce985c0caca5818f661994c7a6cede3ba865488811e0cd226def609c0a857cd2fea55daf0e116d18d0d1ab393403ea1393fe4736ecd5f0d31adf6f43eb6be97cf58f8e5bf5b54cd2ac0d2a444e8f5088396fbd587048de2fd1ce1f3dc69e1601d0f723b843cce8cd9e6144562003e5bd448510a3d385aa231c12432ecfcbd58279778b93019f03e78ad39883dbc1907d939c1dbbf5f21a76ded80efce94867de48fb54e64aa0cb93b2931fcbb7cdc45bedee33e1552c624d19b116dacbf4bc874274bb242cf3ed50489d7dda672833f26d7978fc0766c44ee270dc4c70f16705ce3af7eb4d9acd2d135dbbb3cbd8ece1db7aba3e783c853f1b25a30c04fdce0d8382b60df232b3e94d976b66b356827d55046a317dd6ebe6029472dd2733d960dc4b6fd1610d4ce57e45c48ceb482b8af3ff722ec97c9e569fc066edff9be4df60f66e862c06a6e04d7401bb2b7156f8b85747e9c51510d5cc6e0ea37bbef7f8d8124fc857258e91f9e1c182eeff2c4644fa079527721e846ef62bb01ac56d61ce40a2b3ebe75c0b19e716b40a83933e9d4a8a3f31c7245a5cf049be097e7a70921b850978f9f4205d58a9e0360d8421060bf32eb6b46ab7e3378e9c28657c42b14a94e2b658d2f5d3cc3a5e13f50d929204fb4d66230d2075831646fb3775d7dd99755df394c81ef115cbac093c69c735cc07f8917732dfd564d13454f617826b23849a73191b7af7992320ed5ae41b89ec7fd62a3e42bc48dc987ac55f8e552d0e056343b80981c9c2f2fd2d05ea3c8b7be5bb115a686ea99917e8569160a0fac13b7602d46f29190c6f80f69e46c519619d8178b7f79ee1bd6f87afd5beac38a3842f734bcdf6014052ed8769af35ff8a329b50942d1c99134fc0c31bf5a57a26367c0e7d599e5385dbb328d64557d6034122fb8bee15ed62d8de367a1be38f0c62777fd1f27438fabc01b186cc4c045c4c9aca26b64fa1e41bafcf859bd650836826c45622892ff9605b61cdd8ddbf59a4a1bbaaf8f9cda01545f25957c2636668c8e9c2c88dbc129d2633b6dd8152831996bdffc019fefbbb0178a524e4b0e69e1c477bb9007d679725f1ea440fd94ddf2ede8b6f909ff6de1b45603ecf44e63a64d0149599cf49b60db5e21af00b3aa99afa349e96a57cea5763a096d97c17b7cfd6148fdc89470b1873ca1bbaf004eeb665159d57a7a0dd330e560caae5ccf348818984dd5b94ff8d78931624e771f22f0cc18fa54a5068fd9c8123218c4bbd8e8996f128ae39a10118840c63a5d8819d550aef6a11252cdaa0a39936de328c12c5fea5e7f2013b812510e8a75492b5f694f90682dd8176d4fed45b3919ae39f90c2bdc568392c139f85a84940b5e0ea2a79a7b28ac3d5a79e32e545f7b9de9d6994a6fda228030f74288e967d9b60c51fcf047af3b4a86a5163849bec0d2b63b2f89ec5c6f8784341818d2196a7e8c98881aeca2869088e7de9afed497e4535894022eb36fad950e396dd1befe453b14e968b6bd9f810393193e90774eb4131b6ae211641b15f13ed5482b5fc29e68f91046b1a895c3a9464d1e699a30abb85afbe40af3e33a1dc7e95f93294b3712ca8eac40326a32a7f6470f10ec9888708be86c90122df4e3a8da7778ca05a187539064ddf9908d7b6a82d1ff8905dccff610c9765953cd67e3fb4ccfddfe3009fb6f2674bd99228ee3613715897a35849a86bc0a38416540de2b5343c15b1d70d2a73da969ef67d25484bbdb2d9fa7031930065d4487ea212f9fcf7fe9b044d90572f98add754b8f13757651f065b43325eb0cc6a6b72381347f8d56b99876b0cbbd936bb2ac401effb14a5e828a2d74d12fa8aeeed3c64fd15868903920fbd0a4134f24f3f1cea1122c7cf9a5905b70c2162d9436c456d240d509169a67c899b0256d9304c064682a986272d12b9b4562ea4dd581e468b65653d290bbbe6fb42c79f26e2a12792ba8c18bf59f6fab262c2fdcc5e1679b45e8e5e400683b8bce46d4aa7401daa837fbc0f2834d84225fd82f3d35e10f505ddc776a960e3387af22681d85e6a5f3a0318fb133ffddd7603183dbfa4d36fd66e8bb2adbbbd72ccc3f003b0af15f1a03893439b3953670c1a5a9a67aaec332db413c55896f9ad05691ac236ad7a01338152972add9c221a681b7350bb00d365b5b88d04923d118d547ba7bfc74d80e4a54b3b23a9b09c79e9b368ef10d9e7baca7249beeaf1df2a3de73d79a670ebb4d6d708397efff2f303d44464c920631a6bbbec2dadf1321303845585da3b5ea063d436869aaf3fb00000000000000000000000000000006070e162028
+flags = ValidSignature,ManySteps
+
+# tcId = 61
+# z_max below the limit
+msg = 8700000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 0d671077c3e64cd312a5554e0d6728bb10120a34b3de9a7d85ce41ea84fc1e02695340f707cbdb4dcfb3d6f590978c29426c111719a47a90d0223edb934a716d7dea3804153a75c60d56d0bd4334e2d7ec9bb9db4393eaa9a98b1bc37d9b90df162945841c4815b17fe28090b7305d2e61c3ca0d6f2d7a6e39c60378f043494d541e7f47d70a6813daee881ddc46e8244df4732c82b2d32ce01c0edb0a19a31e63516f0da13228ab4e2aefd5b9d069329af236a971cbf554713cc6484ed052e7826388f5f0a1fd8b2bd1b92421edef80478f457c899edbd251d5efbb77eaa4549f2d923d7fa5ddfc3b559af16a8f690223180ad08fef97e992d5d0e44af54714484359ce1a891bdb019de9ef87b1cc626d0c9a09a2949f15095850e997d42e45774e5ba9bc56bd6e6d19be2ca567b534c155905deec8dba9423469fd25cc807f079dc7bf2be38a350904c4ee3f4d271c90e323fde28b66f91dd47ca7aa74cc3faa9a5f1d314189985b135aa7e6aae41d23a162a8af8e51709b54265b51d9527fcea0c86226cfae391a4b0e18634deae056e8e34ad7902f48b099242e4663e2dbccb9c145dfe0d780590451ee139195ee493c7104792b63260291da3957f1fbfd2e8af9774c22bf224d547b1565759e2437fe48f5a976c2f273316acc789e3ad247266048d19172a16972599f50d4021afbbdc6e4b6f03ab79e5fd4e550f8419b9b2a8ce174c521d48959f83ccb15d8dd55a64b12d5c8d6037382c3a232c89a8b56318f1553c9844b81905d1e00c46733f24a6d5f88b67c0245e206797c1bebd61576b20b179c2ee7092a978a710c74fa32fd648ffb7ddde487309f14866d3466922dbdd6228316519cf1338a0e544de4266fd4d9507216913dd554c4603e74d2b5f8e4f2114059f24bdd3ca44a88d88007fc45d571767616aa45bafd6ef4977bf8459099ad4434b8a214207289bbf59438d0760bc46d555acbf6595a5e5e9ebeb9e175d0b6c3e4b37a99d1e5ab0c07cdfe8145344c9e44fa1ca5d77f28db5246953e4542eaa186ceb249ff12c15f6e59b1b22ad003c974ca59c29e87034d5fce8dd5e03a55bc2c3dc22f3298ba4a0e2c3f85857fbf1d209af66dfa242ba7713b7f0d5b4fcaa73c6e6af62d3676c77474d88c451e19520f0b6783052e70e1f51b5a140b1b1584fac8ebbdb76d0bfe41712a982b82836c40ec4396ec084cbe92a0e925e798a4dc2e91fb6b07bde510e2f4b12731c4a6335e2762b8d65eb1a2ecf0d2a52698794ac293cf4a9c936d6eb21167d923daa11d3c112e3670fcf486bd40baaf37aff16314dc364ff74172f9deb94a70f8ab0ace974d6b22a15415476beb193199e8657ca7e4259e883c8736a975f9de2f7d3a2ad67dfa1169b4b2d83fc2c64799aa36797afb106970ddb63867eb8febcaf43efd467a28212f0f3208a2e9bf8f62dcb849091fc98d634796515e1db40f58d0a30d74a5d1056dd735d30aeb07f63c44614e131a6f0649dd2645560ff7ecdfbfa2700282d3d297054d3ea93657e5a39bbb7f2f1a563fb3f6792482d6afff95b6edf1c38e207d11e453b67996c378c22b8627bf04143d60e7858c07766e976b5e786441dc96ca44c584a32d00e64bc109fe2e0a59d039d73ee82eef1a50d6640c7dbaa4bcf7f232221eaf31c51de48761bc66722ff46a34ab567d562e60322ca9e501f8f4a7dc3eff3d264d59647c0ec9854d0c0c9d8e2d063766870976b4be7a52018cf109113a2b8b295f40a0604d0b31f0ba0cb395396f9ceb29c470d24f6e6d3d3dbc33ee78c2c8f3c47dbf2730bc131c9e1c2f9937dd796f6792b1d5998970b14876080c8e7f9035d63e246ce3e67f60d66e662d3f76e8195dd0d2c219e7115d79283645d0b9a1cf59d1e7e5a5e4163e11d755a2ba7975b983f40d59fba6956c73a79b64fd9f7c975cff311b0e2b8290f51ae2d086c782895878e68dff23bed99e4dbde108b46e5d0b6de55045dc34090282a5cf3e3df31a4e9ad37dce65585a6c72f3ba0e3ee15d8f68cea8356713015a001fef56079a8b4b934765ade73bed70aedb27a08c6f9dd0bef90fa4c7d119810b3e07dac414444df971824104bf43786f9337628322238e8886cf8ee02ec38b2c4ae42edfb0e95d3d354c82da8eadf476d145adf89917f619d32f126033e816f2b53fe8116641998305f48e86062d26cd9720722ab85aea392c804a3e136a00513be362e433eb1a8e9a5904ab3131665941b175c135031d7878c66dac7a010edb12c45e8cbce97837f122b2beb2159052313fe3f51148198b6d3c97851ea3ea26b87e92b7a16abf2c2c8c3a9717bca590ff3cc6d062055f14551e03895c64500eeb25f87e219832cf40f3cefda3d59bed69a39e5b46cf8f3f8a6c300122894954b95b3b8d995504ee81646da4301b6914066b1274f96b21386adae3b2ea22122315c59be277fd309e81995a84881954164ae1a59addb58c9edaadce1793320310e3dc955267341088e398c2d8397bf839833cafcaa94582e152b8ddcbf2c4bd45d17519614bd6de3a08a32e83492c2ae1285d26f667b41deefb6d401e29cb671281e2e06e79cc1ebf470e444da552bf0052db7d087907a06a50b633a6d0461f0ddec6ea2c71df74d85e3a920a77cb43c02f3126880febd1d20794315a4448177a4d2ffac04ab3aa0980a7c413c7baa6f8b097ac662bc104a4fb928e72602adbc4370795434ddf9f48f96a9c6a9227781069e209b826ded8c5239d0609f24b71d31f564dedc6edee96ef862e2a9fd559702a49bc61173023edc0ba2742f1b2278c85887953941d5a58720a2e2120d49bc3e7d6a7f2f00c6a039e137c77db5f7a7c3d43ad2eb0cd564af81a7584ceafd603e0a83823de3a12df635b795dee53cd93145df3bb8497da2b683e7523d859319dd4ff19f2cb01763e0c41574d584f4c5619f52b4b4cc2f2c74925043eea26754d5db6ca5c8b639e79ea8a09c39d1d4c436c0ec849450c1b66e450b3704fb8c9587297064fda4cda8d6be6e10c9a6bd089bbebf8decb1244fad182e6cab87fe3f3edff5c13efab840183db736e701e51f560c1e14827b42d738d37d68ffeca42dcd5466d50841dfdfc6aca437bcdc24884d471bbf20a6921a743c536bf01b2b385fed9a3f3626798cb577bdda634f8c158833e52d121b343dccbc31d3044092ca4cad39e913dfd32bcfee874afd9a02faf07ba7108c05c4beb78c050d5539eebc699fda08b360ea334814caf4fdced62f87c47d36c1fff5d8865992101069fb6679d3f3ac87b7e6e2587214105dc25f76c4a6779a1a9e6022ed9ad59ba3a7b4bcbbd0d63d2bc0674c5fe77fd4fb6a0ebf65b5a73bb87cd5b36dfb71e7a54ce2bf8d9b6a86057536c4a7f0a7c5820828a0280adbf0cfdded491fddcc8804eaf9fc5230d59906dc7a4ce514117f1a9bd0499dc065ac404512b0315a6ef17794bf296d9d371115f60a94015da2f50cb9ce4123b1ec8c0c94213ad8b7018dfa325e182a68602417c95eaf70789d521c9d3124621b36cb022e61f211b29baee96bc013270948a601fa1d3fc66eda9be473b3ec13fd0bcd59b06736e8296053a4758c7e7e1afc5111e1d43dd199aa708d95e548ff21c2d3e4328d43c9637baedb275fd9cda7d1225ef0d40864e6771e53bf5fa836121b4b6e9db6e1021d7bd93e5beef63af89b889ea83429abcae0bd9e1a079bc35e71ca54152c281e1a27921ba4e6b8f7594df32676d4762b82335f1097a92f49a86e5641bf1d77175a9476cd42f90aab18671bcd7c35dda9a1cb5da2f66bb80a5187abf85afb1557e0ca6052c63b6bf9627604823c3b6150eebf657089451bd04981691098092dea8cd5a26a693f0b38f42cdf42f831735869a15dbb3d0c322d85b0ba40017c4cd72e1a60d972a0d8f254e48fa6fc702a555f0f76598d1de2975eff26371fe13a6ee48da8252053ce0396f352191b416ee2f94dc847196def54f311f66896893495f0a013c04c442806c3d4e1f6320039db9bc1d94a51515344249b480087c7e3e937ab3124254c7824a99ca6b03f165d0fbd026a641ecf9e538f3aacf2dc6cfcec150aa7bb45acd5dd9f20e0a1d6ac2a2254a365130fb48f69fec83699413f5ee3e88b678c2b2d1dd316e5f8fdfd5a344c4241719f55e17f2ce1a4658067065efc4a4f970db9f1a52cb0ce7eea901c451ba95d6f2cad66610c33c9e1d63af3310db7e7cb85e3523c79dab34eab84296d7e2f610d23c4c9ace9387dd0d77ac3d37f1a35c78c7c31a7e55a9a4a95139fee0339c2647a56b32864060c43b9aa9b62888f4fbe09053dd5e5d9e71d311911f3ec864bab3f3ffae8c8b790cce1d8d45c3ed020ff01a827e851aa090338602920013e0ce3453104a8abb8e69717b2f7a9c1469bf0c23b79bf38c73231e7eb5537fdb2c677bcf1ccac3c37310738246641f4647721e7a3e165a187ac1400a0ee967ec60dad51eec6da1b858985345da8715284fdd876292493b21208d3d305ab93207c67180d217c22102011f824c7b15c92f2f32d6a39f9d9a17fe2874c84fc4456d39490dad28388e4ef46c602db21ed43054beed2f8ba71fbbc9d03c6dbdeb11327883a7be0c0e1c315d747c7d96a2a5c3d7d8000000000000000000000000000000000000000004070b0f1523
+flags = ValidSignature,BoundaryCondition
+
+# tcId = 62
+# z_max above the limit
+msg = 6e01000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 289ccd0e0e58656b8d32556fae8b0a317eefaff794b013ad8a43234658706a2db12585faa83808a733a3a88655a5d7e0201b8bfbbdd3bb545dc306806a26939aa9c93ba58f46ed8d9c37a9f6e0e0afa09f6c3b3f3abeeea3c613d122700fc91e88ffddd965df08430eb37fa28bca6db2886601e075f77bfecc67e415d1ba783a01c4776e9b96fc26a215084828b0921c90c59ef766bebf0210bacb23b7f26b8e572bae202b9131e725e367563c1b36218d63f8a2988dacbc73f4a46f313b97f660057bab41c1ddb99df76df8b22b16754c333ec2f141302bbd2a1e967c50882699860243af42b6ad5f368d245823a71c02a338ce037e337d4d8c5e2c2c7d54436ef786878e1e25304a27058d89e7212f688c50cb701395a5c2f0cb3310c9dd48777f80edb0d2a99a91f0a444296c1b4976b6161a9a43e5ab551b135e0dc66be2f06aafd8c50c109d413215ab4b39d3063e061cbcf57d2af9ff36f89f0c80d483af483673595824ed4c4c71a02ab8c4135a6791889b8e43958a5b509332e84b1380991d79c6397aae3cb3dc522a7da89e925b189a840c2ca9cec4cdfd8bd3831486d2c0d15b1b9bd44684a8aee873806610e9ae0fab2c61e1c0366f981d5a42bbe1d9cd179883f249a7a155b80bdeaa1cd017e9d3e0080ad03a93f09693da8773b1256b22c20a6531a9957ccff0bb44cf0ac3e5b0438949a589755d516fb2b596336c153dcbd5565b6786cbee057a41c10fb762c280e850accdf476392b50cbeb2d8e7f6a6856887e4a2098cd8f4264cdf39972add334a5aab45002058f19c6506069d7acecc184f245a25a1d242cdc41d52f2b3cfe23ba797c4bf87a33cb593963179e5fb08ac5edc5d4521af466cc3c28e6a11ab2f5f8d06d668fed5b09a7f3f6686dca450467c8ce0b8e81ef605ade33349dd1582adcefec138f004df5057b2a54173fc587ebc3de699506d19e61380291fd59e50a8620f1c9c2424f80a48cb1c342534f26f50e52ca4056c315348dadd204467bbb485708007cc2d8477c518047c42a5c7bcf83e763297a2e4e0fbf547b4e3e577c2bca76762b35d3b849966c9a0e9d5cf570bedc0ff1b779148fa125566b67d14b62421761abb1eb04a9fef43c08d9dc793585fd30330d3cb1b4651ede3121e836cf427dc6f93b4dbcd1d3d0b096be780cf6318aa31d23f6353a86da38b34265b277b7710a025e0e91b7133d08f5ded6d74efc88a4f40bd256a6c6f86d4b869e27953a6c1a40d19f76311b48e3be34973e65f17afe1c408062da2e2a8c474c6a3cf32adec928c4adfd9611671f8b04538f7605ce6afe0d7836ecb06913555b730337bb19a222d3a7be5ce8ac44db76a79120ffc7dfa81c07590955587e61828f782e176003dbc8fcc38fffaee982f61e3bb503ffcc44806a23d3e480b4fc5d17c630b2b5855d67e884d6a2ace9e0ce81a7a0d127dfba247bf7b90634f03049d7aebc1419eb4e7b2ba3303dfd3a28fe5d42a73a7e190df163cd241bca717679c819a5bfeb11ff46e06c46c4c9fee4005a466a9e8660e01d050fe1c103d73bf6927e0ebe4c14b314b3d9300362b67ba5f0dc334a334eef48fc248a7604269dbd9dbc0a380af5ef51a91a48689d190d152213a818df7965e4ffb87b3bb7b65fd2ddd35e947789710c898e95b431c0765cff907b61a799d65e2cc99c5696777e703d3d6459a71901c0080c57c636d21fb0c9d1846e356e0e3cc7a6518ac177a61cac9b6ffa8b72cc77bbb86165303813c21c750f2b930c240e4e1a3a5b1801d1c8f4d8e4ed2e205e9b99fea36b0a26e015ebf7dacb547c17a847d495d5d35828683f1432cbbac95d3b5c77b151bddec5fdac911de1f096cde0baec71e5bafd5fa93a4a42185a4f324ad14a7165a38d659155c4afc72e1591689da8f152d2c7836f3ded5e31931b3a31eaeb83362f2f48e04d1951c06916f557289b01ce62592bb97122c110d9b608a181141b78e5ac37171f424041ac9d7c56e6d85fc635279d81bcd9ca023859bd152074b07337cafb0756a2532d2c023e45cb48fafa19030b0b0d79aef3f4576e35ff822e7cd014fb9d298dfa6a7e8dfd4ce2c52ccb88026a620e985a170535425c01695f3b71bc67a9c3bfde4b7035498378c9fae3921a087148cc61ca84953dc6e86e07f6056d9d16f2b4220fbb1b905a1a89ca8325e3d7afa5c18533bd478f47aa69c7d0d1d1f75cbc093cba23c439aacd1911b152107155462ec9ccc893448620ff2d24ac6d4c0d3694de957c53fd21d8f7b83e7cc2ded752b61ddeb1a222fd6b9576e6704d0d1adacfc963cfb5844df234d7eb97754a1c559fe81b4e64907166ccae5f581a4f8b90bc63e478b02a7d6194e3607a1dbce74fe2aec7eb63ecf484ba30399fe1315e59dc2c97f9f6cd188164cae2623da7c83bf96031bf14812612d8bc940cfdce410c7cd5f4668764051b82327822fca43cd49f35db19e1d79765ca4b662c8bf1bbeb180776867021054c3461619bc477c70e6fb36b80feb206a003ed12c3984ecc328d4d476b66a402de1a711d9895700897679a2c6bd8481794ae3da3bf011ba67873757eff29c135085533139b01f3a83a5504bacfe73cdb48acfb08357397c7d612ba4811fbbe51c9a18d50cfc530616622ca8e2f06801473538286ebc46a04c877b72eb8655b4b6c5cc9bac27bf6490c5f593dd020c5d30bb462023381cf1fac19d71e9701c49d539244e5a9922807ebcb11224cf0ebaae37262184c61774df08726981ca49531e417c90e51df7965d0f8508e525bf9cf4c6027d74a11f8141b777da862e50af076572f4c78026c7fd6b565624fe0e2fcf3111b3373f854bad57006f276588c9ad57bda5cb5a0e02e659cd0dbcfdc174a1639e6c9046516d916534cbe5aacc933ac4abe52295c8533a4a1051b5cb4dee48055e7e1d1bcf2154e1ac81a54f1f54fed9b920ffbc2accc896ba0ddeac418a71576aeb9abc0ab3a0bc15e57787ce0fcbc868ff2545a83e27ae616f2fb5939de3b71bc9ec5a2f064a736ea3e4afc1c8b5996f0ded8502c5a16317daeee9ce8320ca4346b5434769ad9b8784898599508e173d7f14d1232a2f84ddb1fcfd8de75bb0d59f8507214df21e89762bebfc4030bf0c9239cd7b6bdc4085f1a71e732a01c0e2024d13e64eb0b582bbe36a214454bbb51eea590ece8d1f81c95891ba8f203ea52c068bda155ea6f992ff1eb276a11c584b5394e562bf6341829fef1936397aefe78264fa7b9b3055c3140cb4635f20b3e4dc809e4e48ab4520253330a35360ed41ea3eecc0ed7c4f77c6d86b507934c8b800a0ef652962d6d4a5d810ed17643e950e3025cff4bdd524c8dc19b9a56e3c79c6d5e106e4e199968660588a063bd3ee369ca6f8c0e7f2034caee4ae4824ec663c4fb485c81df7ea86d7226be80d5e63b3782076a9bcd0f253c3564032f7c82c22050607ec01831f2d5a78f197681365bdedbeb6076037a88aac92733087a110dea7d6103ffe6b8596d70032b903d1e619494797d6e56e133538f80a91d305b07ff4ff718ac8fe0452bb3314f89555d81526a02cf189326861c4248a40866faeabe04cc1a7c88196c6d4fb3fe2af385212a3cff398caf2be65e7576befab7624f1e9f71c285899207c2efd2bfce2ae6ab9fcc6e46c42b028c857a86dcc944739ac4fcdba51b16dea3672149f166ec8e5e6913bc355208e3a73b89480e83890f0e4331aab624ddff3a103fbc4990de6ef8a2a48eeae86d7c6fcb136aaa52860e41a135a50395e12511635dd7dba11281c410173ab8df4408c9a2b51b9c1e0ad9655062957ef4d8f0572afeb829ec443825c082d67866618946f2962f6541c6b5ed1528cb410521e493680e9d937a50ecc0c50784233358a534e8bdb0c922e6a89b179d2299c47c26fd9f3c783514ea19a87b14694211e55ee9e4714bf5808c4da9a9605b12c53148e52014b5983e03eb47755ad4770bd54dd1b071c9ed0c4cf24103973b815d267f3512275e066f39c2c219c475018e0191c5d18457a2f4f224fad67deb3333620fcf48f4b4df62f358960b56387a501e69ace7d6b438af7550d6831d58f0f642630d3ad590c9a588e25610a963ac2577f67ede49878d87a30e69da83c6ee600022f87072b9618137c029ec6292d03b21f54ceac63f740c5a5b938b5c28cbe6720d55bbc43fd9cf915bc199f32911dfcc8642186b06988443e1c557a4713570505ff98b0c516db185da76eafa1aef72732816ff31f1a829798d1a5df2218649013a1463984e585952ef618e31ca2208b162687d7cd723e0b933fa373e3d795355ce1bdf5cbc74e8b2a43b72ea36dfff3cc7e21a4e117829f2f547fa475cd776600967b0c0db0bda413cb905c86eeee28bbb4f1f1dd29bb283a43cd04d2661f069077989a1eb7fbf2c709b304cd9fc3277f86d85b2012270e6fb2d083a814388622548c999938f1d52f3f9f532a9632787bcf8a63c6ddd5e5cef2d19e635579273ecb0b43670f12bf0e93793ff345afc2c49bfced401152f334188310c4fa83f7d3f67b6008e98d1ef9dc383541b466176bc166a0a1928b99443b94c585a5c71727b8096afb4b6dffd293093c8ca0e1028667797cdd4f80a154a5d94b2f662748bacf306345265c2db0000000000000000000e131c23282e
+flags = ValidSignature,BoundaryCondition
+
+# tcId = 63
+# r0_max below the limit
+msg = 3c00000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 8c5c7a82862de1800a34b8201c791d6c7288225427f7deb02f52748a35a8ac269104927b4913e528717ea107ef8605f9b7ae265f798846a3abf6bbe7bfe0a4d6bef6a1f6b49d40b972a5a1c28d19db196f709b4d962fdc646a7988f80d5af74b29adf34c7a1aac065f639925423d37bdaec428de53efce1db750fc2686af90ccc9e2865497b7cf736829981afc749e85e7e9b5044a92b9ada3740e3fb39251c5bc400379c4ded2615bc3deaafc54e34129b5cd1f4e9612964d353546ee5dcdfba712d985cffec78e74bb2e6c12ab45233ab42f19aa095ea0082063fd0fc8e1023ba1bba2b4816f011c644be94382af44cb7f40c27236ea1e1e6f49ded751927fea168d5a5b2f238360835adabeb4d1b1ce12ccc6c1b8e1e855cfe323d89c34a1a683360ce9189db6a9a93bfa5f70b7238d7f796757d547c31f786c9bf1c91546b325a05034cccd586a6f37879fafc6973fb02a540cf84d1a4f4c3f3ccaea925567b9571bdc116cbb14c884fbe35974980121f7d1e6b0413fc3cdc42dd4fdfa4c33d2eb774b3b188c3a2f2ef07f36489e80027bf5a9e3b607ca45839bbddd9370c9dc98efabe00635622562ce4a12c7c6e2271876f880b8d8a9a63e5c10f349490f982e5215dd94bbb74bca994aae7143c22285c5a15ab950ded53059821a526f6f10fa3feaac97c8b83453b20f314e8cc509fde7f5daba0b2cf4676a9286e1d9ff51f7674decfe2ea54c11a9562b34bc15577cd591088e5abb0e49c152135ab4d496d8f7abbbedc1f332a06d7ba9d9a65ba61b1bf3bf67f9a191c96be2b51d790f8dfa988d9e69a5ff9484967d5fd33b0d7e004a73839a9603dfe2bd2d1f838fea9aa15c9bb2c0f2dec02d17a3041d6e4291bd7d4c00ace00ee1f4a6dbc5e4f76fe39fb4ed231b5df55f7a42b9366396816b5c372975d5fba004a20a7649341859903760ce8fa444945136f9ad67017cc70d3f6c4d8ef7459f1a544dd93d135b888ac4b0f6cee4daf45a436e967f76ec477c8efecad626da1070ff4ab94dda6bf04d19a5391333a2ec6033e780e6b3c9575e9281423489db02201ad6867b3e36e1f462e6b196a2410206a71073f19d707ac63320bade5c6c42e2998c55da602098695db63144da3f9a9f38b53022df84ddf8777a19d678659e44e35f3d8e069adeabe7b79856f8796453f3a413b4ac93d87ddc119d82ff235cad30c561138fda8b0310cefdce08d4fc7794e964df23d5f153a711fb73f694ddbba93cc63902fde5488d318f5359b77ba076337ca43ce59c4a9012ef52d86c34411dbaeb3fb2edb4a70199885d9e04e019c4a406817b96d478acc29f5db9b4cce0da8474bddd09619198d97b3609ac1a3161e75ee485cb6830c307436ee1c48d80290cabe41f3d4b881c4af4b2c2d82f4b6adc9fe6a1532e39b96350f7fe82a23bbd1d9516e1d25f089cc085c5c72b880f0306f73b5ac1fc805b0dc5e80506e06d965f55485fa61fe6e9ef0338e9de6bba5bacc703eee361de69b3264c280d75ed858f736ce9815344c859ec67a95048cb5dc03e328e9d10ebc6d3dffce0765c3fdcf5861c5de3aa7a607bf78334e8d7ba00daaa7ade8f79060b1e57b9d46bd6f448509934debd4e23eae219e04e828d316b77ef5f15041f3945b1a98374d1c47fdfec4e4714cdd7d2391df6670b164805b0a95b2f31d937446a058a8f3a8e968d0da62b8299405fada9e67e001b6e30cc4687120fa759cbb390237cd7acefb0e474dd95d9d790423bb19c390f233e3f8b7739342fb2adfd623d4c780a5d1e702b8efe91e0be39a61a8a93e48a0d730814954a41d472e6395999c828a98d5d9bef23ee7dfbec1c27a79cc8edd035adc5763eae1ede0bf16235b8da7616c4882a6724bfe2f7745dd992accbfe90d1af3e8ce26a9a63701089151f4ca826e59bbcdf40935e6d3b55329d757dd3461ea78f6bb109389b92e41c5d18f811e783779f1dc3a14f0f3e30a15bd7b377c1bcccf621127865f66f64231a4c77a913d2f9f5319028a1d585ed38835df077e0fd0f6101a5b110650992f029bf70b151189acefa1b4584f5d56676c401804a6dcaf7b18d43078089d580eb6632c4757ab77c6c5fe3b28e3a1dd0aff4d00584235b2515971b9644d100f488ec980e1f86188526a37d6343db87f23ec9424c900404a0d4b133df270cccf54338ef5d6e0bd7a2359a0a892829ec8a1bd8f8529a55ceddd1f343ed20e08a0a0b68e3df9b22e1201b1ddd8184e7168e12196f84885d317fa0102753e6dee29a5203d2206fd6eb094b60a58fb3b0a5a59b4cc109e948823781ec9bb364ddbaafb1d553dd4933191b0ad56b7bf3398a4b1269aa329e47646f4e9d97e3aa2fe320efea245db47b63d0c36266c3f7d1c2b51271b06dd995e7bf6abfe861acdaa3534e9c2fc090988276257228c7338209f2cbd77f85b8182150d3287bed5934dec2a6c1d7b2b670716cb35299234fd94070a394868d95c5aa4d92ef9ec6fd05e80747d7d69522cf5d5e4d0dfae512f25d51c0d5a61bb43fcf060eaac8847fc6388377b1f260171ebdc24373a2a177b568f08779ebff6204f2cea49afcd8bb298ceb4f751d69e9bf840b567a1614871d72f5decdc8dc5808c2bdc41c5793e1811b99d3daa9bc4827c69d1dcc4cb55bc8c6366764b96a3114c093892c9e2f1a736f4ed3ef2024360253612747ed4cd3c690b98f65faa23979cb9a65e8122dd30a9c1f2cc3ac1d77783a3014ee64690a62567769cc43252ff23563c3eb4803678edd7a83701412809d343aa4ab428b6a1132b1d559f84063911832be2dfacab5836148ad7ff94ca08afff9835e69f216209aad727ae19ba24b9520bd59ec6b515c328e512e210d6edc9d8d78729bfeae0743e333d731a2b981bf5408239446ba16f37300ebe23bddf746090e4ab57290d2d1eaf1285eb62b968bdec6f5b8bdda4edfbe55cd1d974e2924289366c1f2cc38eadf153cc1666dda976d0fac32285962fb4e5ca87171062aa2a98fd7b447b7271b93abdd28d88020230f973ed7aace2302a321312233927fbcd390ac217a8252a338ffabea7b94051cb03255d04d538e5998c72027251e7f36ade0058eee853461e8e36824055a63d5ddebf3cead8033dd5c8ccea4783675d8deba1cee201dd2154636baaed297786d9b1299b43f058e5649fb01bde625c415656c30bc7c2213d82e83754d43d77b5af9cd2d04642ded3a25cc8da578ccf437aaddb39bf0db269e2e2fbe90723f18b56fc97325d57bb6b8155241baa4a784423fcb50ac5092070a76ef4895209a94f33a4072af0c3c458077be24ddc153449883b3bd6ed3da6e6be85442be7bfd96c0700c46dd79118f67f30d6eeb519323d3057da380fc0cebd9ac6d0299c9ec26f32c04bd8752f710dcdaf2f4ab235f196ad0e54c2f05e825b7d6e1634f3dae1895e4b55fada1eeccf0203d23042111c4043739cbb1b823f6cb7e5ebfa4a8359eb7511dc64ac0efb6a0c6231418e5432123f6a25f4a9f35dadfbdc10f502620e6d76ef9a72f893d76ea7875d909efff9be03400aa8a1e00db7c07cd4fbc844c8b8e86345d49e6e916066d07e06edd980176d4af31d6ab20115b3f20e32f17bc565b2f95f3709d5837fb1f7ec5a0dbc12a8f7d3eb4e7f9f9b6744e4864c343147414b4c104116e63ccb61b5af3f7c5db8b5c05b475cc7f39b888b57298051d029ce9017bde03041abf0c91f32f28a834fa95d60cec9a585c74921f60eba40f13b02de973d9f5499c9b386a5348414d333adce8bf4717d5f31faa4b3e96e91dccf7512980b8cce54ea4be82ad1dbb8373355f45ed6861b08368f9b86f86c35ddee6daa1a336d1c4d2d2658a15bfc76fb462dc0b7c36e97eb16e5eb0773e95581199ed2f7c4c219cc4095d2f8e6ca444d6d4c0754bd39b5494af3d2a01db862cacb1cd2225af884a43e5fa4fe63e5854d3d32f47a8e7af2991d26fff530fe8d57d35ea76a9431a9335fa1f057232f69ad89efdced883e6f8cc23baa485642272c515ddfe4524b3a997e173a22eeb008ba9c16adfa3830980945c758fe92eca8a96b32b274825e2688c11883d138e5d695b10f58f2e2c6931764c91edcdc40d56c72756c1e20494ab26986ebcdb2309060f4eafede1eeababa4d5da8418397a25309d19937dff876ccbe7eff4b58b87a44cddc3c8b1c4f066746036452caa32980e224b53eff0379700a30599aa2372ac4dc081020cb364546484dcbaeb8c3adb6d3ae4a9817dc2d987a690c8eae1863d38d3458f817618edf6416a71b6c30c928d5a6da732c6dffe56d7105141d5941e02bcdd55689892f0e77b9623fb065c17edd799a186f80b686ae5bec88e4f16b05923c1515447ad9c82adca69800a6b372e406b6bf5b5282480823183811a512ef5dfc0b21eb77048091ef023ae281dacdc1ba7d1ed2d9df6811dd5d1c9a1d4f1781b74ff1828a6d410eac1b54a5c251c055ec7f84cf22e3e96cdaefb8a9fb9c6ec823ccf141d2f6dbd1f589c0ec4102f6e91b3f0610cbed643c68824e7159920f52098ae33b5798ab95521f869f2b958691c4a0926ada90bf7c6678f23314479df021214537aa6aab7bb183154b7d8ddfc1431616793bdd541b8d1e1f10124263435606688f200000000000000000000000000050e151c212a
+flags = ValidSignature,BoundaryCondition
+
+# tcId = 64
+# r0_max above the limit
+msg = 6400000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 44f2fae55e75d4a14261c55d3b8f9d7ce296180728713a3374dc857bae406918542bfc12db9b25fd3d1928c9927b72be345024145c41d3689654b26e1d2d6364395c150047eb8b6ce89daaedb70d8095263514fa5317af3f6c557a0b91bad5e2fb6202f90183d2e1d545f5a09fd2f5cd5550e349e82435d55deec6424abde2e6cda6f794738180260c45999b51f9aa2cab98694b8d0af27441fc4b57289e7ea07b010c53e9a755ccb9016765990942a3d389500cacbec33eed059d412435ddbf46198e3c747b3f41f96dcc879ed3056b20da470062c0e1724112f48aadcbb6ca84e66c4af1418c66ee6115fe736305ac9f177f2fc8eac53d494d24164760e827a45ea20deae2034dfef4f8b552a0b4167e1f6272918221d4610d1278aa7040079672d2d191bbb19b252f84f0cdd46150d7be832db3fc8018aed6087b5e718bbb7b3386266d122ed0f27bc5b746651316620ccae5543f993fd5e1cc62990714e585878fbf20c81bb45edd5cba6de67010ece4135117baac8522ef59ddeac03ddc9abd91b47cefa3beac2496de163c00716956589bf84ff85e0732ed2073d97c5c34a0878c3d329e99a5a5a1be3781fff22646f1bb83ebc311889a56d6def19b8a86fb8553b36a62e13cbba15a507750795119ee309577fa7ec15a69be34a15135095730ae2ffdd72a1cf6a9bb61b221531cbfa0495200ed9f471ed1bcef9cb8bc5117c6d6806bf28dbeaf52bf2a9329119c5c896449c233c4a314076b00616773b87d9e8aa69c135a7d24c51c2acbc6e58df8bb7b6fca5fb14b13c9d0b33acd8e8b439a8e5d5bc31cb5bdb51712d148f935b8728ff46112ba49ea5af30150fa80a8249a2ccfc99f8b7c897d83c428fb15e6cc6e640a697d8fc6672098aec99630250a7b82075296afc00a15507605a5dc0f2b1a0375b263c53c403883f42a0304b99adaf834b1f2599e22125881d87047b8acce7b5728158d178649cd7a16d912177623c637500dc5b4bd13bcda0824fe377086862bae9a41c180ac807896c1371a78326cdfba763946ba608400d930146bf86efa861be282f44bce6e032bf7d98408c3b4a1e96704034ffba07c182fabdf4014ef2ee8ff8ef7e837ad75dc3aafb066d07297a290af9573be900b68db9b6c2746dc0d2b1e5d11f0540d170571ed530caf1033e8a32beffe622e3d082b3bc081b3c30d8e1dd697e9a18432f2514df6f90b9b42cc2c1d321f6f9bfe095ea7229c4d1825c8db8e869b56a40cfcb924304f8eeebde54d615521ebc9753c95e9831556c854fa163990d5015e0370f5d3e5b4ae7c4404c18ee125ea2fda5ac43127ad07567c44c806ee61a79353152c5f46bd98bd2010a53acdc66df92ee6fc0f93e678bf44d5d3c8e9adc305bede02008bde91dcec639554a4dbc4f6625571cb5ec821f2848ed33fceff30d8728880956a1581b5277fd51a61d4e13f7871198b78ab3107701163da8a30b379a05718aa79bb01b528c187fa91466588961f2e58db24a2afbf0226359a4e6c3da0fc8cca4be25f0abae106eaf8e1de7ce9f1b7d24ef25bd41aa98a99610b016f062d89f678142b9c27635cb71e9dad2ec332350f76a2b507c8fed9a17e60e19de2c1875f2b3f4134b903aab8819af224fb7eada88c67875040a07699d95756ba929680191ec8ec3efafc6fedd60ccc1e1300698bf56afaa31c89d16341f3673fe07880e7009e1f5173cf79cf0364f0833a179b5886226bf8f3a6397d8b499e9c020ccfe075fee18769fe9f7765ebb6ee630df990c579580f3910e704c73ad61512a9d47507e8bc61b9a61ac006b751882b20855e6b6ec7c05e303ae533623bc0a8d30f795ae93f057c7e079688b792456deb50dc7ba9da0e141cfc76ad0a902bdb1d032d06fa47a817d43ee784cf0ca4b516806e7631e40bf0671b3bdbcce7e2ed7ecfd994e190c9e500356d60e1c73850cf5b6bcaff9746b3025815bcafae19f20468591b5114d465a47e7e439ec0741eaf533d5ab5c57df0cf745931ca6a4051bba72dccd4160bed42fae52ba39d7ee2d3e2cd20fd299707e2a6228f94a5d32224405a1dbc5f5f0d269a0880cae9f0b7d5c0ddcc01e568a03208dafc9f54e715520ac51eef04d8c4b6fd5ed23dbdc9259029129b1b5707bb197920ce1265bacf2a7a7f81b77a017976c3a51b169eaf6f77fc68ad23e2edc7a07e7d39908704123b2385011d9e6b56eda29a8bee801228e3677241121ca21efab92227475998de40d40fe76412fbdc35449255843e3e6ce620ca0dc91075fbea5e531aeb9db6cb5153c61e7f55681eb46cf49b31b2efecdcdeca7539e8b3da30519640913672164575cb1ce89d2afa22da971c371f602070e2b1c7488f89239918a5f0df2257e8206ce67106d66f308cee488974e56ff840e025140014bc776211d632413152fd55b53749262c477229da729c1e56f885f61d1afefbe11f8e5038a5688835f3842235091f7bd42b908097a8106e4760259ed7464c0dd591ce48e51397bda9f3514b443a138a115eadc2be7f08edb4c9dfc9f1f065430bd9da0849c45dce861bfe839954131fde47e059c5f933a4baf982e0ec435a8230fb3eebc9ecf7ea65d0f376854c331fafadd45b07ebbf3041cf079300a9dee19a5854e147eb9c88300f5580c54d5801af62f9a90bd91da9f52cfa6d01a08ce390a179bfd6a0d3ba8e43408826cc36fabe685e9a1229343e5303b108683a75c9a524eb776336d0687e7e62bd68f4d425bfe7e4db1dcf09fa4938933f78387e48fffd47669233cae1e8bf9d4a2c63444a776595a48b3471a67990257cf7a0417d34f553eaf423f1cc206a9257f1aed004bd205dc1e7f660aeba09dc1f9991062665d38c0e2a4638c2bf61eb459e5e4725a0bbccbddfd66b239b31c62c948a485c8041ea3b6e58a0090bcc010ceaaedf7a2e8cb28cc23c925724f099ca14a33f42ecce7584bdc073e6f79ced17b8c113075f1604f31362893a3b5ec2a4953d77b68281c001fdbc6a853f4fea04c1e73b9bde7bead3aed35ef68e0ad98f902d7a7750b7461ebea8c2b7e9246c49b585107e979dd66c01969c65d34c22ffed12ce733d3543672a59a06854fa81187f3a0b82524686beb3a84c480aaae6af5a43d6c943702e49865935065f972c466e2e33554615f242fa582e04b7a330d84d5352b5a0c1a28c8521eff8baabdff6c35450ed9609fcde9291d0d38d7cc23d662a6261aed3ef34cc281501d9969425a42f050c7e6b0b1f3a549d7ef86cd1a4aac3a233ecc36cfc2a81cd69d951c31290eb73c71582bbacbcb99f3c29fe15d28887349c9aa2496b48ece89d581c697590efdd60351def42770f51f59d55bce58c5d2886d2ccc668237f9230a155be656b2ba71f58ee343317c7f37ce47f5736d99a056ed3e88ba59581b9b219b7e972b96b2e03cbee95fe9a2ef42694bd93e7e9145ebb155b6b9a7590058eea44d1e877254d55d052f9979ec0df8b5b8cfcdc1c858ad12d4495437a5c8247a071997f95e01943207be1ab6069e7925ee2e6e231a2f133177d0a91478c37c19303097971af66759f0eeea69028de913edc1ce9cd38edbd05c3b7cb393ec781ee7263652cdbb3201527501b60b7ca443cab817e829eafbe49c354bba16c1a597703953ec059efc97ca0f1bcf4bb2ba59e5bfbf64b5cef5dd1a7cdcfa40348b5f8979e96371bdcfed5bc9a5036955a40ebba28d1c5d98e592a046320e3ff7e2b72d25db20fb2daae4e580353598ad6673163fa3eb95f5b5561a38fb1ba8fad671795e7f5aaabbeeaefc4a7962475d8b7df0fb93c47aefd46d88a25397f6be11fdc4014389121c20750e80168565771dd932f67866387050d0551664a16b350e4761d6033e4746d7a5cb07b65ad4c13fc7e64a60ab9849ee9980855106c7706253551072105e28ee78b6e19e9f9b25bd39493736a2efb2cfb7416b84b6de23cd559663c2eb8b223f8c764ee4298c75f7f068824c31d4c19cfe9ddf3871f7160c87d9565c5d67e9142f151a33e2f9ea79702c6a7285ff963dfaa68b4129233daeb77e0aa2c1ccc75ff7a35793b2fadf60a9b1b9074f92eba1cff230c461f1bb486b3e9caa0b617abac2d963434ebae2e8ba39b238a167895430f5c6eb86d93d678ed1c472c3f3e9cd58f27f24d124df2371e98fb08442296592d79db40a6f388f85c050e7c434630ba353245692d549166727c31955ed60be469cf60ea09909f92ca87d5e77567036882b11c04f03bdf89d397513adf17146d52802b86797815316c2d21d0b1e95e671fc87e067d2e7871c28257af1fce14533d30dadd947ae2b1b9b78eb56278340cce5ca9a17271e1ff03670d31ea801cb89d6364c0d6b671d190d75c7335ba00497bf43ff1de81ba5faab2dce55f29561d13cd236507a88f942e6feb9e77a552942f6bb53c857f192c126d3f1ac53845f54fab0a3114f6bf3dc6dc251d39174c0f732dd9c5301cbd39a2d7fbabbdfe0a1049532cd378c9ae999700ef370a49206f7f7b208c7fc7318056cbba332b9c73e0165c97fd25f73f156750448c5b361c30e23229f2c325a99fe19df3d884418ba1d1f00708204a778ac9dde7224f687b7d98e3e4e51a244e7ba5c3c4f00a12182c335b60da3188bce200000000000000000000000000040d161e262a
+flags = ValidSignature,BoundaryCondition
+
+# tcId = 65
+# h_ones below the limit
+msg = 2d05000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 1ca68ce5f7e559793f67c657ac20bb8f3117f28c1ef02b8b828031fe11b146ff61ac67fee066d1a8b9a8d8219909195136ac9afa30909309cd43e54c18f08817c526bb135685d328549f2d0f0d8c73a45606f93e8a17fa3528a1ee64377165c7b98f3fdb6a32fe920c38863d913ed398dbe085a7ac406da7ae2baca87f922a2d5b43601a70d3aee3f182cf87aad2de0e104044dab4fd19e7121ff5cb459595d002f4882753159c7c6421ea7e6f02746f38bc424d92b8c3b353592ca7ea3703d27d58f2df3b23875eb7206b4f983873fb230979083b70ec1e5fd40afb5e3887d05e4eaef8f833339be930c2cff359cc4cdf3fd6e7caa647f3478cc863716f01310a30233bca62a32cedff973c8fdac419fec93342f71e74934799345a6797e85a7c1ccf660fee8ff6402e3c37a70771a26c9ffc9411e745d6962011b003c19e8e267b303ee53079e23979f7b6fb4b5b5a3df866f68421db2bc2eb29fbd6c40d5d73e7570c22b425f5cca416af86f4911766694bcd7d9f55acee1d9ba8f6ac07e2b0d1081948e1436da0af1e622e95e35a2e39065a782e3efa36e0b130b4f22b37ef2670e6b5797826515ca74a9a1ada669cb6d43448baa8a77a9e052e5492fff23ea68698a17cdda1a4cfea63f9c186f35369e57a6f54a161cf569cc75be9347efa9c94a869461ff2648ff1a3c984c67eaf53041edbb4d27c80c9bda409039303052639062dcfe8c7d8066995c49e5629bd0ee47b63b637b14f7ab0964f4adeacd6b139ec3af6530b6147741ece4ce206f9a24d8254af20eb933324b55e911a43cca36704427b8b37b5deecdc0da5d1758de2bf8f6fe639448b45e803df46427adfd6b3bbefc9b9c64deadfb60fd2fe6788f7d65f98aabc960ecbb8f8ed9593ab0a6a2c7d093d74ec17710ee5c98909e529847d7cbe9a69f54628017c0c2222b4ac46134281990b9bd70ba991336de07133ae25701a91306e0dccca6391816917698aa67c39998437325e39ef1f7e8eda0dd330671dd6cca57f3f99c162a54bb23992e44f3b6310de3c8b3d309e203e0e47f05b726d1949cae0abacf838c31fcbf449d7f9d6413bd911c70a823c8940aeb59b7cbb2c64c243a0fb8ead3903ab3186c6390b2678eea04d18a9405c733035ee58f79f85182c520163e7e0b4bfdc03d60034dfaf61644c32bc4cc32beb4fd77419ada027dda3d6f30bb3acf38a8bd4cac6425783b710d5238496331a04b6ad5646d3ee663ea0e50da36b453771976d2e36e0be3d10268459724bbba557505a7e804a088e82e99367508eb5e61919a8ff35eac38903de0529571dea43676e3d2b769f4baf4c1226ed921561817746ad04ea9d30cba41225965f1f29bae6b0bb3e15a59e82e50c0211f22403957d86927bb98fb48ee18260df408ff629730eb5f967bf25af2bf4147be41a5da2421ffea70796b77944479fb15a0890785bad4c0f86603deca9b71b72c6b75879b44f153fdd80412cc8c217ff04f4fb9b8662c9d3474598f806d71ef214784ae54a537c307cc1373161ae471034f70b49b6a574fa6204d7997ffa75a78ab9923850f3fc4419fe365dc4732ac4ba87db246c90466741cab4ff9c3d39cee643e006f35b76ff5cbfaace83482d26dcfb98ed007b97f0b80849ad04e1d422a8c86120d1d90099582703402dc3d8bc192bba4ee993dbfc3b7c567cc6f5e761a5cc0ccfa92fc842a31ee0ce234bcd6888c8ef81e7bbf40956e3855507e2544202e66dbb476faab34c635ff8c873bac2727b5fc4730bbf33c5bdd2f3391181eadf5f54682e13a97f0a06487232da578c89960ad67ff424215020f3fcfa25ec55db2b2d46d3646ffbd9354dd14008512e38e523285e426fcdabd8716883ddfb8db0dfd4c036b51625b26a1469fbf2282b943500a165b6275eac29ea4142afd22d647a4ba6d458a65292a64e21afa38ee30120bd49aa8a0c511f2c202293c717259a07549b12273566f3bbf4aab1ef6c076b0e68fac0d3e777e1f6cca2e75d68fe5a45e5f045b891cda173fd32d54962336e33c25a5c3b03b772403bf8ce296282b779fe439396cf995d3f81eb6b069edf19b57cb1252dd611ffa52eb0023b553b343a028ac241e4e9652f7d73ca9cebd3e3642640ecb9f648fd1cd1f6e7701fef3a551bf60ab3d4f59315cc2b0a9642e5f4e453af47039dc0c95778f2cadc0fa217c3423c2063eaab0922ddc59835a4706136d6e2d0d25f7dd8bbbd7a939e1afa2cc17194430e38b2f983e5e058c9b8baa385ff584846f7862469f5e3c71cbdcbd726ed45b92998b89d83c6d4731bf2f92fcfa454bbe3c7313c9dbbc65708ffa3d9bd8b43df4d088de3c911cecc5cdd415d587310a2c8d3dc10782458c7205419028fef4d2adfc14a55fe7e4507351044820f9d40da5077a93e923f14bb1d12181298c6aa965fd76319052d148a357b8d27b240dcc143fc579889ceb43b8e7db8deea958671b18906c01d5d8962952152eb8245f98229fc2e0477541faa3a57529e2328f27614b7b82abd506d276495522fc21b2f840e34f20cc7d605a986632052ce8e47889667edc1e4d009f9f2f6fc6e4f59ef42dcc97ec813b36c412e31856478e1fbf740ca8933632c62b02d2facea1c5e7936d3cd7971ce35227c5138c5a57e032aab24ae4c6b05ffa7d4df3181fee7b14668f07aec969300c7b0b1216c17de4def301717d4ec65041d4656b96ef7b40fa4c5113c58e265a2c02bd64f7aef278a6f5c57b2eb35fb69dbacc412cf60e06681f892e4fcd7dcb3b6a16d38b7d7b54815ecfa9c1a0bb46138959bc42df552110f5f697de1ace36c45cee32ebc9fe8fe8cd83e29ca331f85898d55fa4bdde5cf438f9bd0ddc711f516fb0e79510243debe71df2a2ac140c19b945841e8ff6baea4ce9dcf038b5a0a19e0cbc90b3c4f3d444813ac7f70b0624bc70a0251675cd9f44b30b38aee30ffedabe5aef29597820cdf2bcbaaf99ee09f9b18fe93268d5c74f44dc77dfc721511f55295e03bcda9956cb74a9bd85cd028ec05b4d064ed35a2ecfd3f674e34cca9f972824b1d7d3a1caea6fd6b51a205fa85de4b44a2f92a45edb712c73a4d10214623e8cdf3b9880cd25ac2dac328c3f54016eb98569ece9dac6f170cd7daaf37d41e6c35d62c3db46a24f2e6f5f237314000d0ef6825a9dc987379d9405547eb27c6d631fab06d5a039d47dd2b1dc63a077b4129f7610458cdad28b849fc68fd5f0c6fbb40fae533a5d8b559355b1db112a5203b321012b126fc6d5181cbf6f3ab8de483824ac07734370701b08b295362eea3073efc3a96ac9a9ee3082ab49afa034accdfced6c16c8d6a7e88b913b38468fc104f0f458a298f0c352b04eb664b1eddd9d76f308a9a29fca3f3fb730f8d1d48db53c23243c8f84c06a91acfb86cb2dcf2b1ef3a0b9b2cb1f4909f48e9f9eff93807bdc21a5a0e1e7ef1fa7bd2f9449eda1bc9b86e8b4efe33221a436a864cb272db8a50ed3696634ae458566e562a1dbbdfb20126c3ecbcf403816fb49adb749f51a76acf93869101c81d8ab1292e4e528ff30e58d4ccb34369cdabf927349fb8ab49ad569eaf0212dcacda9e1ff85493e6852418c647a4697409427becf65fc0710ce9c15ea9d2e799b39674afcbf2097d9fa9f4b10a874435cdcf2137d177d764c21a7ebcc303417a5ed5b94d0a3ae4be16417ff79fe1ae01feefecc5cef9ca7ce8cbe1287178349b33c40b7e7f08ab913844cc223951957043b6feeb1f56015fe5a039ed8d3f07cd55d5981e9f6609f2506dca0426b16c7008f2b25a67aaa3543bb8610354eb214b58b836e74090c7a43a9b47b91fbbc00a1b78400a42a1122dbb21afbe299b619abeceec31b32195ed805dfe64588703d7b12387b55486b39d909ab0690684471564417de34ab2e02da4d3974cfc7e9e38304d220d0a827a3312d085195163fbb712cd0a21cb151165bd98b77978096c1e6f38a73368cf7707083fb107910ed091d659af6a4673f9a155c8a402bf1c07ed416fa18fb66d6ac92d8a4c2d4e422b135f79ead28bbe234f818892b76fba8ed61b186b3b2cd1c773795e91e923c06829fb969926290ae2fe7585534e71c0c58b3bc662d70d537dbf06da794401aa121b4dffa36e574dda73e743c6177cb87bd78d6e0f98b081188d14050ca3f49e330cd1765c467430d197ee509dd8a000168212c683c6c7f075706cdded9c5a9609a6496280c1978d48e845c9693832768c47d9b7d1650e927b694a74ba50f36b924073f71f51b795f7822475d5632b80155264dc892effd97f561c1670d2417d5e33e7d095a8e44d8b0fc57d9ec693d12c277ddf096fa00081b2df89c46b66521295c3428df80915fa7e8f10c0627fab4e5d145e9fb6628bbd7b7cecc4427e73c6b1242fa7cc9df2731ae2fba2f9ef0d11ebb4e718e0a9b8b73b7bd5d257d22bc255ec751d1b381fe080e6c9a3e1204a1123c461796272ddc3b41f8fdd444358323edd11fab1bc5eda2111963ea999d743e6968f158d430fcd9906c5096227b7e5f377d07b2165476faefcb2301c03ea6cde213f7e165913f41fec6753aca94c0f365f60828c9bb9bbccfe030420212e3b5258668ebf1e393c5a7418292d7c819acbd6dcf109233d455a6075001416647a8dcde5f6f8fc0b161b252c37
+flags = ValidSignature,BoundaryCondition
+
+# tcId = 66
+# h_ones above the limit
+msg = 9a01000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 4e4f39e0fa77c6d67f49c759b83a72c2289fe57fca50c143c9a831a8114d41edb4bfa0856c62be9f05fe4f3672fe01549277f8b0da08e940f9b7b9d3da74e07fb7cf8a953fcace4239609a492220cd8007966c4e6ca5e8b418663fb1ff486d3ef90333c470699b8abef54c3fd4a25aa34d44ae75c216dd2d3f017082fb01df0d5ca6a85b1181484205722ef118f03372d8dc119739303aca686159911e165a611a678170a5238dc9b5631df11f2bcf3f7e5e8750cb55454f25a8a6e3efaa3fc66c88ad5247397ab153af4bc014895d006307e9a92dbb4e9bf78993980c525f2313d188b0f55718da34e701607d7149eabc05d952c4e12a3516d8e9c1fde6eaca3cace1e76749b156c46f40265870b1ea2fc49d66b600a52beb187675d1b7d6c40445c678974625dbfccf20ca3b65eff29d7fc3033f3af4b2c29494f18515f378ab2f155b392da15dc1f65c7a37ea2bb2b69eb0f8f66a6507025811a2ce5f748ccf667f32b9ebdfa37b3f4a164534de8ca9bedeff425920d38b0514c62068b92024e014283ed633f1820d2851ccc8268a443349903cc70af04ddc4dcce2023b6c0ce625797972883469b38f7754b576595a97910ecb81d97c801be74e7b8e7eb902c42cba946d855cb9dda4c140d4ee37504dbed3ef92ca99572a7857f6383d9ebe3105c90e9cc196d5c259b869a8e8c092432be67cd7b873ea408d455231863c5f34e38fa194686efdb23b79b30b34998f031179fe8dece8e79023cd41f0e92e18fd815d7cdc69dd83d26ca7e850363c3369cfc8706daac31622fb7c419a37d4884edcc10eacf0c4442c2bb47473181d4cbd404ab63bf840676caecbc89cc17ce0d14849a022376ca0548ff552d229c92c05b48c299d258644ea7b6462ef6b5fe965f6129ad9db2e95eaa14e28866d7eca1c90bdc46bc8f0da5868243a0f5a2ff3f08baa067c03719da8a3bc6c1d14a871c7a630dd831911467e1e6f19ccf0a511378319976015d3a3167d2570a49c50fa8d17b1079f092727276a311fe9f0ebc005739d8733727273aa5267021dcdf629321364fcb46836209c54d8266dffb01abd69824245c9a7f6a706e1d5deb23a15330990ba1a8a7032d4efa4de64bbe9ad4bfafee9e23b62faf8ed88093f5459115fc3d2877028fea349285888f84c96a1fa415fd1da7e878496e910cc1037c0a482e65da9209f40ac89e92358374144d0cb729279ad80e28982617f5ade2dcf380be05709c0de1e0191cb873e35d98f7fe09b38fc2430778d44752749414bd554d1b0681e98fdbbf9bf437b9e0473eca06ccd7e0cb4948d9aac13ec245a850b0506c6127830c63a75685e430318365f4ff06dcbfb970626ef2dc27dea0b0a098b2fc5a0ea02fc67eb3a9696ece6c752fee088d8e71be6ebd94aace3c78a9113b8e10167da32230672a2c311f12553ffbab9436de67657725e96dd516c9b561c3b272fe889e8ff2811b44426d26a0c42c24349aa22f85ddc863d32ac91bea62f26afeb350c81439964388bbf21415226b368188e2adce8ecdabbb3e38b1fec29bb55728cd382b3bad0783356c739f343c39afe5a98512b3f1c10058c587c1bb729417c26c18617f96d2de956de1d91cae81e1eee0d2011b5706c3b07580eba78066aa2a812461fc967e04f283113c30f6ced3a237958ad71c9572c8d6ecaeda361171199953fd7bb73fed1588259870adb84744e825dc84613daebd982f4487b464f128c2a7ff49b259c991ce34a013f9374568fee8e357de35dfa5cb43542cdb297d4cd886e0605c3d1fddaba262ced5d1edf566cce3840ba338db4fba236ec926a2134fd127d40e3a84f6b158cc6ce48f238c078a795caa391e793716281c2936397a50cd417cdf9c7fb32b5a8b7690e2ae2768daee33fd33600ab6d1eda8c37bf086bd3c1be7a9a2d79ba6ef635f9321d8d03316a8dc85acb4ed7a39d7cb30a76c04c018fc9c3c4779a8a67e7975c7a45018f9f177575ade5984ff4f7b412a18f1c24402e9bbc5564ef98a920e00d4bcc9e307e854aee1a6a2f421f833da3d27b2e8a9ab7b9f1061faf105d13da2359e9d57f47fbfa56e49b372672de5b460f3c43e9d32a0e3a272fe3efd0dfa4740539be52d4ec7881d9c7915f8cda2b47dd520ab5c5ba8fac6b1888b65d1bf12c976051743d6a506a5d4c550262b23e4995cff4bd6dde88ded5fd49608e791ee74c2c62571daf881ea9e318f96447c0d6d3ebd42a1b4a448e66359db4cd875885f91f7cffbcda373af5c72c67c9e3e8e14b6e0f5d209980d4d9be3884878f7f97aebf74e86426bd8b1c11ee5df701eb47a86877dff6b7df3d343f8a3a24697294f15de1be9c20092ac2c53d2d4e9b8011a2628416ebdae96237fcfc980d69265b03b86e1bb6954ee19e4e7598b068d131510a4e13c38d2c763c32f6a270a50fbfdda0e50b6df49fc85d3b1012b374a1095479a8d330f6c4d46940854daa91d34ef96e33645a444fceee47bc7faa680a2365eabb0c7acbf73bb72364b865e587607e0f4e15162be599703e22f782b15686f32ae096ab178216abdc687310330082a057286235e97f0abfb5b00443acb5db755fde1c4d46a0ce5923d8f7b10b0c4cd66a887c12a02ddcc022e261cc3f6ec65f1d6b6182a19a2c15f412d0a364d01b5eef67f665d42a6087d798aa94581fae60cf86cb9aa90c6b9e63e3269d78eca3f269f382e69a3bf777a420ce56866aa82ca5c4131b34a7c2e4cc8c685368fe8df1ba500fc6f4149ba21311409f517332d54d10337c762e0806d66bbd9426805521dd4fadde9987708f7e5cba96e9afb256f729ac9705c8f9069f77b32f5609d553e1357fabd6afb3439f99ef4d23e1e4e65815ae079bcf0dc408d229fa63b44b50b1075ea4d414caf46654fc462a643b4ed38a037e9fa9cc56e492584a69681bdedb72a48dafea506b19e75724d54cefc666768a7b40c015dc055a8b058167965efdc7122b25807555d3b6e0137bb98b5e16a72f4ba873ebc32c036d2eb9092b64de62dd95526c4900bb64112bb0703783c416be33d3cdbbd441316d48226d63e69471845a7f5bd93ddffbb0bf9385221c3a9d80d89f2a6f6bb233f3d0c604854b86b79b1d4cbe50e76c276b58f25ca31e415e7b2dac266dc3b073f1d6b00d500e54981079d66a1f314653b733c6db19168ebef304e15760ef535b45012fa4ce3eb1ed610a5ceef680f8700c174ea474adbf45410df72ad777c72255b2e77e467453da217345354f3570050c178dba294a95c5bff31c95d24fc757d3ac354cb7d7c6892e8dfd9c0062f3d3071ef316c116511d78becb255d185c81f61c0e29ce521928ce3c83c9530d53c7c6c0535c9b384b090fab020d23c199430889db214a84cac3e06888fcf45f19ec74552e6f45380faad1380b9a7e5413d9c700c70c6ffd003f3b52f624e6b04948ea99b3fb129c2de24b47a91d910f35c24efb9f3d788827b74a566607846015e6148b4c76355b51bcdafafe1e5298ff01879b1e9ebd430681c8c82f194498e78fe3537c99888f11c063997ac36d1a00a38d51bf5a6101a2322f70dab430ea99d14ee833a0859d5bb0da477afe4aa3184e480b14e3f6a362ef3458da1ab5728994ed6c8899dd6e5a9c78b38f370fbc31661e37d402310a9dad865176486144c451aff71715378432604d9194ee88ea6f3b68dfa1b80b0a6c54a2b5cd4c0b4b1ec7152c680483b537313c4b6035cd550d0eca0df04d9a058dec727ad5675285fd1d07a4a7bf36a330ffe620a1b244583bd3b248be735bed76e4f1e47fd1f81d6ff3339be6d9fce2afc4ab2402f3d2a9907c10fe4207ffb0a3ee49a3ec7b3af256aa2d63d69b4dfe69898c858bd8de9ec4285f7de3320c18f669574d6cc9a08cc8ba745af8a5f0086621928a97d6c92103d34c229f6d8b1a36e8e2e86a8dd7ef4b039c1b9546f7ebdd5f179a94146fe3c9c695641bc51db41ff0b074f467bc07578fad564269c65337f6a0b8af6dc0f7640cc42fc8dde6fb7cf677ff7889ddab792fd225ae4c8995dc97afe843831e8d48f419879411f5152cc6e1d9c0624d8b1bd6a4b136d67074606ce5ee30b0136335526eaa352df9fced286530848115509e82a8a4a3d929a5a242415579d97995cdb20c737ce4e63e490860e58855d6574ffdceaeab8fbb6aeee1c73b7371b8d24dfa68c4e29c84a28bf78b2ed283c15248a13efdb4aca13e25f69594660e73dd847c7249d64dc2f1ec51e88c675fa2bd5b77957765e608c3e32dc991a14c68fd7e9bbf17e84b5dea7a2ba9414851a30994483e0e53ac614c72c5b5d0407c6b0dbbddebb4fc0d0c195237f9d2e4a11cd10f464b35dcf9bd90bdab7f1ce583477dbe31b0b5aec91ae86a2e0cde82261665c570f0c055f1391e60669e7e7905fb9bec5f0da2485bca04837e683fda337a302254f80ba295c96af0aa97f673efb3073b581399d76cb234296c9065f363a5e72484b7e93438055ab952fe2e55a23b34acd34957a682ed8f17b0a5778088c39a3dd8489823c8cdf588b73cf7c5010fb36c590c99fcf30cdeaea2f86fb8375aea46b60dacd83acb0b1517589f2c386069a3b6e4f81d445961646b90bfe6e9f6ff3f4653658d1e373b5ad41835848cc7df0000000000000000000000000000050d191e2329
+flags = ValidSignature,BoundaryCondition
+
+# tcId = 67
+# high_bits called on the edge case
+msg = 8803000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = 93d46453ecb0ad7a3e0288445607fc4fc6704f17b64fecfbfc183de4cad5c86da5b1d6c13fbbd1c1f8a8818dccdd5b075f9470e83cfa231fa5b6036ee49ff80b0fb7655f4b7f84197027c868a4d8fdfffefe3317c336101c4749b465325b45dec08ff915e606e7cfbb5558e95ef29b194752f50d7a5b11a14d131b0c9af6dd154ba49200afb1bae5b9c0ac7fb0297c72281d8462dbc89cd5b0d66256bc942905c9a805fb14b8c4931550ebb70ee04174784cc02fc8e97b5dabe50583d433d11518079803c6d557a13187cd96c8e84e8801c11e2666596f055e788deb0a713862f2daef6e1acb60d83e39003417339b871d27877823493fd360b27336eab688a71d4b0bdea6641b0b0ea1ab65fd4291c380fc76a75dc7ca4e4711af22ab5be96a2e4f301f705ff033e3e8b530bd8194b9cad4f54680eaf9abf0be7af032a2766fc75396894b2f393b1b87af6d1b9730d374a5e48964bf1ec6276e6ba4554e2f6114c04a1489990c7901b28ac94de8c61ab983319374474a2aa8a0e1b5410fb952105a5cc0ec9b9cd7663e532bf787ed992726fef537e3bbe31ba835e0a0ef00398f7d88ac2ed3d59a99f9a6cd49fea68e3a611ed1600f738ee199d3db7ffda3c1873dc9a0b1ba9b8aa224cca56460965a9d6c91d58de6c33f9665df62f4be77d333c4d62b967386fae73830389c71a563ddf7172b68b1faac5fbe64e06b53efcd058d4a960364fd879eccb76a7674a813453cd48868b9fcaa96bcd5dc815ed688f5126557158bb35f2c6a0e4ff4c010a3afb6a4122cd3521c3d9e3c717c79c8062d3fc24d51b122d8a8714f9ffc07d4bd8d0e012d7ea9dbdb2427b0ee12d44367125e63a275d70b4f5ae5d088130358739cc31c3060ddf91c3cc64957c76d451cc028555abd5811fefa5a10633cb0d8aa47a8b6718ec44b1cdb06a35d6ddb332efdabca446dba302e2c7124303343eb42ee3bdecdb894c1768d1680cc98dd628067fb39cb7d67a00784995bf5ea3f8014193c7a371dcc55ba5a3b43d3f2a2228126856ea0d97c90b6081a45491c3c8e20f6dc2ffe331496cabc3619fe86e557228a7dca189e7a3cd04e961616643bdabf6ace94f3d5f1e8429d115b3b8c840245fbf48d0172b214c0386fd320dd1e2580d5f4e6cfa9d4928431633079a90f97258418ebfcdd0aab960239ea2be83b8a057b0548022bd518661b703835e91da0cb568a4101de68d5787e31e285c335e637f83eab3953ba292244286d61e06fcb961e319ac80d5173bcfe7128dad75e2e850085be27356495b28fdb55313d90c4807f6546231fce0cbaf1fc6419ba60695eec63cae97957baca1756630550ca14b56737a52de135eb711c0a1dec9e1811908ecf299198387b741f904967404f7f8ec9f6ebab878caa4b664cb24c53bba4607a7bd6e4c4db5f9c8d712cbab6a506d0902764bb44da35cc0f0663968b3cf5bf92f83724ce08d478a66ac0e430c42ec47ef4de4a46e7d047450e481e4d8468261315c10d5bbd1ee7ac82f0a63a9d4ba54f6e4a367de6b05a560482c8826121ccb90f68037a96c8c30e41f1a96c4d84c021dadf1315c3a6f80e6ef7d26b5e4e87f5436347169d63987c022353a8155670c5be558544ee3ffc3cdb717bbd53edca18e5ee0e5646482ed38f790aeb45bf89a40e819b14d535da8b12025ed710c2f2faedfa716970ee44798de2932946018b6d80715d6f6d7d573b003b576cbe2781ed12984a4171c00d5f12cbf7e73d567cb8d243544cbc5c7921b5a89c0aabcf1339f99671fbe96591f988a06f4bd15feae56429878e40ed8f1e0e90457f1ca21bccefaba6d30709f40508c47d78c72362d5d96a279406f10f975fe70872a4e214eaf3ec9ae5dc3b7bc41e27b72da8f6824c259534216577bf506ad45976e84ad4ed9d5a4f88e3695e2943adf045b91a5edea2410ebed5d2bf10170d3a0c392e72e970c715c0216b97ffc8fdc9089a9fe1e4f4cad9ec4e4e589fe05eb5ace4083805f2cf936bd93b6410138caff44c64be949fb7acc66284bdd8781417976f7be700bef0f78f1398fee069b14e686aa985aebdd058230b7684553f02a1e196ad8661759e45bcd1ab75f8d3ec95602ff03e6b314d8c363cb7c843df92a3a6a355e29a2ca881911b7e01b8e8c40f7395a5207650b0f44bf11b1269b8b0bd4b4c989c98ff0c529e0a3b5391ca25ec366e39fc6da4c474b3ff93938fa064b1a30a6aa56a717d5f5bed2b3cf3d2270819a8100b7fc8e750787acbdf008fcc4a0deaa47a62084c3445c75cd97edd1e4012b0b76b01bc1ca8e5738bf884c6135934304bf625eb8a3ccb29087047a0834943a6bebff481994779c7f6a37fa8140105e849696d922d3e7cce3535e9711422dc217f5e7f2c379d5dc8220a5006b56a87079b1504d6628999ee8158c73d2c101cebf695adb5c3815d9328255c5dc2efb167b36b1820abb79f0eaf4fd84580ff7c3a8b178164f985f42f0dcfb728fd42401a31a2ef2ebd9a26e6832623d7d28d26d162a21c45889253f62a11a2ed59414ff03c27e48aceae70ec4629462842626d7f802371fcd7fc1b97495e861c7391c773fcaa2ed087ae8b84968c573f091ba37097008d6041460986403e8e1d2e44ba3afa5cc88d48780aaceb142512b115d47d7e5f9358678c99d2f481d5740b327555ff41e163bc40b2021d441e5b4ca87b02010a454c6f2c9cd1970cd3846d4c8021ac7028b2e94b3a9af750e76ee37bf4f4ace83b244aaed8c1ba134500357b96f587bc1464cc2052b03634b772920da0cad300ad9de1f53c8b8c373b2e12b552c4410e2836f3161fb1b7c0116eb3fd23fd632fe6dbe2e9999a3994793b713d52c811403c3b9e0f5d9b68b71835e9dac66ab9437b64151115bf3a8af2fe17de721310b459ecabf6790096df03c23a8165cbfb484dc35e0e14ea64a82bc76b888f6bbce7d29741ec435aabec2b9ccea7b61197a895b608d88666c1ab1ec32424bacd2c51b0a248ab18e0192a866c7de1ed43ec7e7eeaf300ea40143af6be9d93bb92bd0ea5d9600f99276de5a23eda8f939ec173a141285b0323551137dba54c2a46fa5decf94158646edc72901fcdf86beba1a8715159f61ce58eaba2fd09afe8b533817086cdfb641f4ec3c079cc27257688d4b1a3dbfe0a0f53e74384e2b89c774ea215ab444a459b5f9ded9019f57aae07c44eaff21c7928ffcc621339badbfa93962630c713072c5efcf52a7f2d09d4f164d0b901d34c37dda11aac6b6a93f30339c786255b1e18ed055121a5b52b1a0afd76ac8d4a3b1e72516a8ccd39cd035c11f676ede7c87d932f1ef99d3b93a79e7edb1923de83498c94db1775e9560753f65a34df282ef215a18662f446e1a80a4a64380cb4991aa5ed8fd1fd24eaed4ec91536229596b765197c10943b4dfa30750728f9b7ec39b798e33572da27e8b2bdc5a596946e99963a1e164085cbce5529183159066411cbf62033b41b2c0f59a4d771b4aa9a82bf781a384a370b73b59c8d64450b8e75ecde8c7eec2ea52351711b88b7e462dd7069c2f3c00a0656cb3cb5cc9338e2dccf2e0698be77c19f85271642b09c41932a0a54f60df6093aa41ba66734f0c91d958f9798169b35697ba42db67d33b9151b3f176fbff73e73b4bcdd9f2b80234e20ca079a0694977e6e150d16dca677f1a195348942827ae2a32a7fbb891df99eb03651ce7168d8f26db3c6d71ce778fc0dfe75010eb80612908730672fd0344d99a85090e78e454cc7edc760cb49b672702d388689819f55a353bd8da92e17daa34097c1cbc4574a243efd2dc908ddab79d7cb33ee1cc7a0c3564ef545d100bb6ada9d26bbd306ec7b543e0bc2477d8a283823b65b6a91ead38867bf83ac3643be995b38897307cfdda549a9732b2c3ca88babb8dc9c3b59b208a596b57bbff42c586b97a0e55ad9025f6c421b19c1ec36b436398c413ae55d064a46e2b97a4d475170666f6bcb7d5bbdcc2a3d28be3e5a41abea942ae836487d7325af729116a3b009b47a1efdaa4142a054bcb672951087891aa3af203f0ed41efc9422753a7b07ecafe4d9022e7c73893621a648d7dda02181809d7a687301d156bd90c3e15e1a746b6ce93fa2bc2d8309b8135a95c0d12700da6eda1bac9ea1663446cba9e8237dd019d7e016ce0600c8f1cb435a8f4f52deb8295ce00a07d3a32456e44bc2128293295e550e816069979fc379da0a44d9116b7e6a1ffebb750f2d7f86a27d6d93cfc739efadab272c77a595f6f74318d14fb4e15ac8ce9fa0f7c72ab7720af4f3da27bff92ba62fd7fd79d96a25c2fab26034e3f331db56add047c8840933b53e06a0607bf3dcfa4fb3227dfc8a33a26ec9fe03ffaa538b6a8ed9a58df01f0b62cebd303f11e24fdd373ba23adb698c6745c41f57cfc465d10aed6b08f171acb42c5bdea41cba6fa8016ec7603591468d310746513a24f77155be87f507e7fe8512f2fc889af9ebb145d5c33137aa7e3dc9e14d3a81c2a5149418782e082745235c62969d19bbb349b550524102aed4c1d66a3a98f8646f6f0c0c506b64748c6747b1c1cbdbe815005a71cef21a1c324797a0e30413292e78bcc5cc548d99a2106b9ea6eaf000000000000000000000000000000000000000000000000000050c1415181e
+flags = ValidSignature,BoundaryCondition
+
+# tcId = 68
+# low_bits called on the edge case
+msg = b502000000000000000000000000000000000000000000000000000000000000
+result = valid
+sig = fa54682a8226fa50a7728ee9ce8aa7b72bdd00a4f5643c4771d6547275088fa7b32042cb5441cfa8880779a602c32a536236b3be35a6e2a13360d4825d52f511252d6a3e272b493bc73878e0e3711360b5360af83df3f57570667d866c8558b052c540027a690df9eeea1135aa50546b2136d349cab85dcd698fbae1aa6fe0fb2eec20f3ac4f004a55be8510c4015f74538fe2e695cdc154887631dfe924774a6731b65aa4349fa16d536c7e9b5642966606e3fdb271779ffb0d3599bf958d3727fc443a6a190f4bb2f2853f5f6d773dbafc371772bb3d2b0e88aed601c9ce8ffd60b2496315f507bdbb50c7a309fcd68d85fee1f5aaa9420c4d2b52147d7fcb38026e21b5c467af3ed4b16038f2beab5f54b7c134571c079dbd28c54c6e06505d69b6dbae1e720e8a8bda189867861f84f5f6fa39f9af2cac8c6153bf1533b21f1e70360baa33860353eda4f0ec700c58283e2a3fcae5f0053c395be917ab411b8c2bfa94d892bc4fa424f6dfd97f9fa982b02e4fbe6c43b598eba769629ac66c3cde157365053fb6595982daaabae610cd3458811da53cfaadc053d8af104896e438d7bbdb025c474abc2493f74e16fa8ba563ee0765f4a06dbd874748302dd52df925df631e5bd5a7e335909aa7f8e7a65a7db7cd1988add9b9f34a71e3b735da6dccb4b6f6787af5f1e519e24a1e15c5930f43626f5ed734d4c442125896aba42840fe0613bbb8cb68325a6bb26bf1bcf14a055fcf63f11020ef7572de02b677315a6c83a2d0bceaf049e91bc715a085a25769ab9c9f4b6592a41c4c7e212c3380d723d3b4da5d9baaeabac9410e32eaa58f38facfe1f7438e4eec3ce5091a1e38f98100600dcc215d3c8ca850b46d60e2b941e10c66d809282f9d38d710a9202f9bd9a79a62cc30b32b5a1af6f9de111bee6a5bcb65e9125b8cfabb6db6c750c7553d6e3975be064feecd24e26c7196e931d8b1ce48ae6be3977db6d7eb200aae36191f7f0a2be3d3d7c9e760be49c8fb0b495338771f4b1676304c850db67d24422d7b153a4c34ca37a0ec287dd47739c2295dddd32e5809afbab880da22a82dbfd4c0041b0b8a6b9168e7baca62a6499fb621278ec25a81104eca44d2cd0165113fe6c68a56fc730ba9c7dffd039c978a701ed9f6acc61e39316ce53082c0dce04b4c0cb305aa53ac14befc5f65be4fa4bbdb79ab17c12698df9343de0b4cb3feb355cfca73529f36198d21da56bd343643a0d27d040f2bb7d048ecbfd1fc18b4bd27217c8532d63b47fedc445430caa18b2007ca9ae7fe9dae5bdb0371b897a3def628b0dddd3ba9b0805056caf5c02b7c3e44939b34ce646be0edc1289daa3aea0260643d34ebed8218aed531bee5ff772f2342e96e27ff488a5d1afddc3c5094a7f94f01c70ad619def58612f767cb21b3c742c43e94ff21b4f30348600a766e0f66d418b9f450e389be3ed10d3f080579248bbd7c72ee02985424c09c95b8af7229cc57e6dbd7bedc4aa2b08259db76736aa82bed4ab3198f748593189b0f5ddee1b1b8164f1f82896b458b6a5794170c056377b40e758c1d9f16a4b060f590d0299a3d6e8bb4d9046b194ea49051dba75771159d58d67d88eae6cd6d3cdab259d3b0422b1d1e0b40388d7007f73f3e1ff362c7bc785dbfbca4b4d007f3c799e8f4d11b806f26d82277f02ea2a61fa1cd5efac837aa29bdfa19cf00117f72b67c4df10a49a01efda625506de427d2ab9a514c9cf201ac86fc0692b66063aeb86b0b23e4180f6eb362b10a8dcd44f96983d5decb7b463882f7e0bc455c34998c65706e12c77416052bd36490796afdadf360ad94183907f807113b8c0533ff36b311ec6f8a31f1fe36f822ce27a580d2e5582a9c2991be1b43d0ff9c91447932ca726e57ab3ee076319eed5768decd05aa7ee857ec82b9132556cbe968f6ecc4013fbc49568c8c779d9a6d9dea52617e0f521c46d4862b47691038d9c36adcfe17a24a7f44fbd87114ef18bf1e1df13d15e060a01e2ff31c7b7ac4a355b0f5a3e98344d86c9510af6fdf934346e0b8c756fc5a14ee062d190ef7b6f78764e2063040bd09c4f7e43f1eb64f06d2e5c30b020d6c133dabaa9ebecad1623e3fa26bcfe1471471a6517de61f780b3082007676e5ff6ee9d5f31afa57c9faee333e639efc7761b0466f4c3b096cfda85d11700a4ec5db2deae29042dce8b74db1132104d9b9b0ef72962ddb6c23497bcc76e481871c322712ad44af7387a3e9498fe9a7c86ff73a012a2c5f0f492dc6766062cc296472f4ee671185892fd0704e8fb0c594eac2b817916ea7eda1822544a7ab2c2854e3b0c578fcf0d0b4ce731932af21a293e0c0e06fa5ba4b58dea2695fe4acd9fa6f7d1e59ec3657fc1f37e73e8e3536d7560bf502a103703cd815c9a10756da5d9e651234ff8d46f5f97bed85b89b6fb9c9c8026948d46dc5575679e8eb6cef8026aabb9a648fc87cc5e0fb06164cc22d6ab541caf5fbac8c6140d0fcb57719d45f22e055ad82b217cdb07dc986c4af4c847a8922be5d95f5367933b04b805e8626e73476a5da495bde018836ea5fe9cb34b3abe0b65885c83e918b5f5eebb53a962ac9e460dd6fa39795c68320e6b5f5e00638a1f18e40c3cdf75cc82794bf5f4a524081403894221f469efd48d460a8915721bcf0d6211949245cf7baa2f1ac65073409d9c1328e44142c9161ffc8d31ed8a387cf3dd0511cef2b61622de0d46d3639143339b9b6ed75cb5fa7c95011d878bac8b1be21be2e6608f040f76fe91f5b6fa92387aa081687da647712fa3b7b5e32ec2f5d22920acdfa5557ac8c071491bd4518c54f6d93bb8cde1a38f9dc1145af011c309c87c5b627690958fd466a4e8c073796f1cd07d844902e7e4eb56c031dd8c0dd6d9369c2eb4b89e4a9900bddc8114463c3ae2c87ddd1013b2defcf705ea746ff48d2821e5e63e033f4038cd842de7c838d9418c8e27a8dcd2fb9b88d8a0d0ba9c454d7a0a167a44cdc878f3274ebda260fe95a031c6d8917458d3882e11fc5363ccb034fca155ad29d622be4a047b3ccdffd362a3550c552a1b698e87dfba1774e527127017fdee76a91525993ff46b5eb072c79027148420fc958d1cc62e39dceb827dcd9baffcfc8b13888072827b0132cf943e31c71131e602444028740e6771a49615fcd00cf34ebf09bbbb2ab63b57803db54a1fd9c49957971d308548c94de5c5b6a5f345050ceb75708c8aee3c624e0d8290b2bcdcc918fbdcda7bc30d3f5f5ce1fb2d4e6cca86d6ec163f73858b84265baeeb0fda0f40e7bde058c85a2138bfa777c8be45da1c2b7915f94089074f4f22c0c1ecea9375ee2bfc23f90c521b8ed51434134abca11a9c3fd019244710125e9b7dc27661d23bcb4a40d5e87479d6b07ac86cfd91b5d89e664317336a2a6a80ee88b7b24ae1872bd99bd372d06cc21d835fd2336ea2ae53b7bf8a1c14ef724eba94e971524a1a290f9b7f265665b6195ee20719648b2a4a4a66c705705cf48b41a7c9c7f16bc2ae479ef1d5c23a4050acbdb0eef0a8c792f547952170a0b869f9b5066c06c4fe79d22379a5f8145c700049c4043215f60a7433955b2d9c681133149d845de27c355e1dc40217dae2c0a22c7d9b9e346ef585c35fd8cf96ebfcde2a7d4b7445e6c11046f0644ef7619e9c4bde19d33374061c7d55434249f4aaed4c7eb39a86f9d1007520d048301c9614943efbf9e55e11ea0b4462c9995c430ac4e7c3587df2a9f6d374580d0dbb48973c909615fb846705386c55d486063f8a0c9813419c9689317119ab6b7b6b9b72a2327bfe956859f8e3edd2d0e6a2e3446adb9c130fe0eab8dabaebd7593f9ca7b50df7c0f9643415b18f3c18ae06ec6ca1d39064b3bf8d8d4b841970e3c38c4e609fa7d6e8a938c371d7e4872ef88b088455715c5766126882cca88be8444a951b3984e1e24e38f87cc2d22dbb4459c258f7f6d9c4c70075061ab9c9a60fb23c0d4f5c9170c3368795acf27e099d9788d72e488742e04f779ac217f14eecbb4e3a41ee5d1b7e174b6df258ab1d8851c321c7ed74663e9f836ab08d8a5994ad7ea1be34ee3029b35550d653de0679b0d385315621282342dbda3abd445c695f67ba506ff9d4812a3a70996f26c45d71b9039ac4e4868047a396d838e3a625264e23178591cb966732901cf3960f0d83d4659b5ecf84e3948efde4413ae675d21a25e74aa780b3d4500b8ebb14898e9b8f332ea4524c7a560a630c049eb36b4ab1b4a77c9eb5755ff8a130786da3292383bc378ffedf2a7f3ddd8bdd5b7ff895608bc0c79ef3360c958d8e4854ac76dac7992bb69f6515052c47716a19bea1eaa0c0e33fa4f24207f7b44d5b48ed9ece05d5ca9d728b740e427823390c1d0d7998ce5edfd989c5d0ac351990cf8f291de748ddbcbda698052ee52cc078e15b7fb5360d890653c7b26458d0fdb813df3641f7f67613f5bd951d98128bff3a92d2b2c8b65adf282ff168af584730c3afdaeaa6550564655ad7700e5c34c6f74d091f1b367b210011788ababba86ba2e8eb6f2776c3e275637237c17250bbe31394a5a6f850c8ac1c9dbfa0f162b2c5e5f6e9cbbd7e2ecf72e7ec7d7f1f41b4d7b7c9fdcea4e6a85a100000000000000000000000000060c191f262a
+flags = ValidSignature,BoundaryCondition
+
+[publicKey = f5408337d0fee65c28851226a5fa81b58464632c78e2a9bef70d330f2e3a5f74d9cf676aedd1067c91a5dd5d4edc46f868a93ffec9f44e254e44f682a153aeadf228e8db7c5fcfed30cc3408e261ab896876bee56660d2a7c1d7eac20c5754255206a178f7156295065ce7876f90c48f44bc37f3a00e32eefd3a4bb1e298fe283d106eaef92a33a594253a2a0790976a1d04636f8672d28c06c852ea8bb43b84bff512996e7616963d5b9a2906466a152c7ea9be178be35405683b44367af85d2daad87630c1e21ba5490154f0141780f5ed0407cb0b975dd56d5930f9b26413b843b83f3693304b0038bd3e4bb398868060ea18c9c67099376470a50deb052e4056743fbcdf0341b192663bd1c21ba3b3d5666e0d0e29c4e1ed0759ab0bd9d1d355011b94e0ff0c049b03ddb7138640667144fcacd7265f55a07e5387f1abd30c037cf14d436aa855f827049215440d8007f61460500d943f57ffb6bfee6fedd2fcec52882d7d8da1aab29e892c8beac3df3234b4a7d2eca3a45c6623c52bbdd07c1c94314b706988a52029f8f8b06e874b741d72926652c78c6ace2cfd8864eadb2e4b39cafe6e03e4edbafa2747db9bc42f92af8b031e3e380846b1bfd15ade88c285d6a6fffe91eafc8b17de6cbc68575f323cc09fc20e49e8efd76f9568bec486b78df4245428d8d0d5f53873e11de65fda4c770b521a8c67f5c51d48cc26358954514447881fd9a42e5891dac7e1db5249d7861b322111e5fb929bee9ff5e9d5a2667ba93e63fc03040d2e82648f89e89dec1d1d2dfb9efeceb7940f7dcbebeb5a239cc1c54d8f7d52cba220d0634e15df46a58280bc5a48840bd39274cfde150f9ad9a40f6398d715350925f0e0501944409f32331a362bdaaafb3d8ce71c964332d6afb7e684f99951246d88081c86744ae68133f22c53a4b5ae258f230a98491d2d43a79a6d0f4d54a3b62013965ac7c82d0507125a38a0277f81cbc1d46cef2a131c6f51b88ec0baae0c82a6a0e72831cb06f9116cff5111d597e01057d32805a008f52c9aec3311139bfb35982789ff83bdd0c31e9f1080e8ed8eb99fde66bafb29e3357389fe3785b60c78e229ef073e1b65e34d848bd4d8a4f251551e2d38d2546afbc205d3c6dab34d2b962b1afb44f1d22fc10c6744fcd6b636afd3cb414b16c2e0d708fe9f51ff19120bde693b028b6d1e6dbe37b4b8b3bc7c6f7a842701603869d3ded572500f085502efc8d3cc62b30e5cdbcb5e86d9c0d42973bf755df539cc0aea58f9148386db67bd2bf70cd12ccd96d5c66fb271416b772465228dc44b079178f9b766370b66a79b871faca246ca6f8f63be9f0668297ac446cad5cf4a83318b1b00ecbd283f0eecee60a9a37a27abdbdbe382e307970002837dfc0bd3934ebd008918fd4bd383c02c9d37f694996e989a49075767ebc4a2981ef5275455e026cb0bd70946cdd1fadaf251381d324f9efbb860d1b280c29685bab97d010676273b45cca12ac3966aae342c84e2357eccf252577743b8787967b40b07ef2d3d9e6c1a3bcb059cba0fdb7f0d4f815c242b8e14acd3375e608e9230ba3cf8718f43882a3e1e661a2bbe81830d34741f33473e263b3790abe67acf29f5df44865b2ffbc96975fd62738a64112deda5a2534fb0a23b3b3024df986391badf9041c593c313a7ca1e1fcffcb65b07b9a99337b4a4acf616cbe1553eb9541f38aa6247342905995233a28172ca13396b2a9662970120f82b92a213f43de7a232ccca3268265c9ce042d50915430a6c455f32277da42f9962fb9163b623231ebc080fa7b8e9f9021fcf85b98f9c483e4d2226b9326a5bcb2e7449ef029ae142d3a0f0c28bd4f7e9c51a12e1336f24dfacbc3f808a8f7dd683027bc948763b808fb0037394b8b41bc9b2ec7887e67584e03d11b15ca203b2bcb43f8881638c4e4eee7f846d09c7f89b7739df22b2c3acc235032ba8f7ae27b5b9d25733143e80a4cdde6770719c1e66ec2ce683612233e88fafff84c0745a98aa1254c8219c6c556348c2b5d1beeb61532d6bf7bde153271dc647460beb65fe0055b33fd6480dcbb9d7d471952cfa5be260c39721a8c5c89b9e966ae2dc9036451ec9f2c49433b2225e13f23e20c2bfba81a7b3a555883449238f7d48213e9f10ce19e76f1bdcfc73ee5524bd7d8be0a4b46784e238233c04fb99383ec7726f9717e1179dd14fba9ad6c2ebd1699f0ab0e57e6cad23875b029e89cfda06f51266ecd2eed4edafb51e82f2a506d57ba74da611774ca5fa2fff4a976519de425885e7d09219cf815b1767d4fc5a72c18918991a285086a6a766614a4d245387da50f28dd778fb33ab88c0918feba3768c55bb1f07aec33cfeed33d6faa4d34fd7227b365533c1e67dbc89f0b20195cf1cbd480d333ade1c9bb28308085b72ced430268c1492a27050c43668adc9cf8b8509447cfcd3c8f8d8eb554f704101786aa9ebca86991d250776a37a1f56fbf7d08e591f978da49c3870625879f70e2418aec5cba32fa8c346fa9038baebc35ad0068a4d03537aee14c2e71570a87490377fa8dd66f995aa044a522f0c7025a7ab2dd5ad30a64268dc112b7f9fa156df64d631f55f1d6edc55cec570a9c7372e29e02c8d4867bae249431dcf6ed2794a0183f0f7501201feca4a81d334c642fc8d38e9a90fa77429665e09e214797dfa455ff47c4f219d3a2cb0176bc2236455123c1c5da714ad29d580fb194f87173a18]
+
+# tcId = 69
+# short public key
+msg = 48656c6c6f20776f726c64
+result = invalid
+sig = 69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b
+flags = IncorrectPublicKeyLength
+
+[publicKey = f5408337d0fee65c28851226a5fa81b58464632c78e2a9bef70d330f2e3a5f74d9cf676aedd1067c91a5dd5d4edc46f868a93ffec9f44e254e44f682a153aeadf228e8db7c5fcfed30cc3408e261ab896876bee56660d2a7c1d7eac20c5754255206a178f7156295065ce7876f90c48f44bc37f3a00e32eefd3a4bb1e298fe283d106eaef92a33a594253a2a0790976a1d04636f8672d28c06c852ea8bb43b84bff512996e7616963d5b9a2906466a152c7ea9be178be35405683b44367af85d2daad87630c1e21ba5490154f0141780f5ed0407cb0b975dd56d5930f9b26413b843b83f3693304b0038bd3e4bb398868060ea18c9c67099376470a50deb052e4056743fbcdf0341b192663bd1c21ba3b3d5666e0d0e29c4e1ed0759ab0bd9d1d355011b94e0ff0c049b03ddb7138640667144fcacd7265f55a07e5387f1abd30c037cf14d436aa855f827049215440d8007f61460500d943f57ffb6bfee6fedd2fcec52882d7d8da1aab29e892c8beac3df3234b4a7d2eca3a45c6623c52bbdd07c1c94314b706988a52029f8f8b06e874b741d72926652c78c6ace2cfd8864eadb2e4b39cafe6e03e4edbafa2747db9bc42f92af8b031e3e380846b1bfd15ade88c285d6a6fffe91eafc8b17de6cbc68575f323cc09fc20e49e8efd76f9568bec486b78df4245428d8d0d5f53873e11de65fda4c770b521a8c67f5c51d48cc26358954514447881fd9a42e5891dac7e1db5249d7861b322111e5fb929bee9ff5e9d5a2667ba93e63fc03040d2e82648f89e89dec1d1d2dfb9efeceb7940f7dcbebeb5a239cc1c54d8f7d52cba220d0634e15df46a58280bc5a48840bd39274cfde150f9ad9a40f6398d715350925f0e0501944409f32331a362bdaaafb3d8ce71c964332d6afb7e684f99951246d88081c86744ae68133f22c53a4b5ae258f230a98491d2d43a79a6d0f4d54a3b62013965ac7c82d0507125a38a0277f81cbc1d46cef2a131c6f51b88ec0baae0c82a6a0e72831cb06f9116cff5111d597e01057d32805a008f52c9aec3311139bfb35982789ff83bdd0c31e9f1080e8ed8eb99fde66bafb29e3357389fe3785b60c78e229ef073e1b65e34d848bd4d8a4f251551e2d38d2546afbc205d3c6dab34d2b962b1afb44f1d22fc10c6744fcd6b636afd3cb414b16c2e0d708fe9f51ff19120bde693b028b6d1e6dbe37b4b8b3bc7c6f7a842701603869d3ded572500f085502efc8d3cc62b30e5cdbcb5e86d9c0d42973bf755df539cc0aea58f9148386db67bd2bf70cd12ccd96d5c66fb271416b772465228dc44b079178f9b766370b66a79b871faca246ca6f8f63be9f0668297ac446cad5cf4a83318b1b00ecbd283f0eecee60a9a37a27abdbdbe382e307970002837dfc0bd3934ebd008918fd4bd383c02c9d37f694996e989a49075767ebc4a2981ef5275455e026cb0bd70946cdd1fadaf251381d324f9efbb860d1b280c29685bab97d010676273b45cca12ac3966aae342c84e2357eccf252577743b8787967b40b07ef2d3d9e6c1a3bcb059cba0fdb7f0d4f815c242b8e14acd3375e608e9230ba3cf8718f43882a3e1e661a2bbe81830d34741f33473e263b3790abe67acf29f5df44865b2ffbc96975fd62738a64112deda5a2534fb0a23b3b3024df986391badf9041c593c313a7ca1e1fcffcb65b07b9a99337b4a4acf616cbe1553eb9541f38aa6247342905995233a28172ca13396b2a9662970120f82b92a213f43de7a232ccca3268265c9ce042d50915430a6c455f32277da42f9962fb9163b623231ebc080fa7b8e9f9021fcf85b98f9c483e4d2226b9326a5bcb2e7449ef029ae142d3a0f0c28bd4f7e9c51a12e1336f24dfacbc3f808a8f7dd683027bc948763b808fb0037394b8b41bc9b2ec7887e67584e03d11b15ca203b2bcb43f8881638c4e4eee7f846d09c7f89b7739df22b2c3acc235032ba8f7ae27b5b9d25733143e80a4cdde6770719c1e66ec2ce683612233e88fafff84c0745a98aa1254c8219c6c556348c2b5d1beeb61532d6bf7bde153271dc647460beb65fe0055b33fd6480dcbb9d7d471952cfa5be260c39721a8c5c89b9e966ae2dc9036451ec9f2c49433b2225e13f23e20c2bfba81a7b3a555883449238f7d48213e9f10ce19e76f1bdcfc73ee5524bd7d8be0a4b46784e238233c04fb99383ec7726f9717e1179dd14fba9ad6c2ebd1699f0ab0e57e6cad23875b029e89cfda06f51266ecd2eed4edafb51e82f2a506d57ba74da611774ca5fa2fff4a976519de425885e7d09219cf815b1767d4fc5a72c18918991a285086a6a766614a4d245387da50f28dd778fb33ab88c0918feba3768c55bb1f07aec33cfeed33d6faa4d34fd7227b365533c1e67dbc89f0b20195cf1cbd480d333ade1c9bb28308085b72ced430268c1492a27050c43668adc9cf8b8509447cfcd3c8f8d8eb554f704101786aa9ebca86991d250776a37a1f56fbf7d08e591f978da49c3870625879f70e2418aec5cba32fa8c346fa9038baebc35ad0068a4d03537aee14c2e71570a87490377fa8dd66f995aa044a522f0c7025a7ab2dd5ad30a64268dc112b7f9fa156df64d631f55f1d6edc55cec570a9c7372e29e02c8d4867bae249431dcf6ed2794a0183f0f7501201feca4a81d334c642fc8d38e9a90fa77429665e09e214797dfa455ff47c4f219d3a2cb0176bc2236455123c1c5da714ad29d580fb194f87173a18dc00]
+
+# tcId = 70
+# long public key
+msg = 48656c6c6f20776f726c64
+result = invalid
+sig = 69da5aec6d5f58fbf29439c520bd68b966e3dd2ca633b68351c2862344713a1e9c086a44f9a870a3ccc14de62d6c12b278c354d7197c4d6d7f83d1422b29b250f5ee3fec118311d905e5db2b4b8b23b8d542202d6652f6dc3f9d7ed51f2463082d3f145cfd0fa7ac548a47e91c1ccb1a55b215e90ab355bfc6d67154287b1dfae0fb530264dbb841a7684b396e5ca0459d795216416a9d232bc89b32e0f9461f53107c78e66c8e876554e8ddd501867b55dcfc1fb33f102e03373cdd192640f1027a08ce277b468f6ed0fe80a9d6cd2d6b2f7a3738c8325d95b0ccc6e7b9fb000c923b92298e0867d4a9f6dd5513e8001033c633bb1641ee66349487224dd43386c7fcc29916332066a868100d46e2c5b8354c28f087a024cba27694afc4c1665e0d72b37686919ad55052cc63a144febe4e2a0c9ae416e064e289f9f69cbb883665d1130826b7b74e30c94a2b98b67b471663e3d66326db3b43bebf958e8665b68eda90e8c5d9494b0c7c9ec48800910dd6d906b1fcd47a0aac462ac87b126d21b5ba150df61f752257ddf5a063b4a5b150371d625535e3b2874b9fe548960ff67931cd6c12496e8213e2ace6fff48e6bdc60310e49389f62579db26b92ad73e9d3f23942cab51784f48b3660b6450caecbb0df2aa4c8e56577f5ea450d2f7f51aacc0b304a62250bf2cae7b99dcd955b6596625d06da1c67f730b706fdba630f00fd891830d251484640b7258ab364d6fd9986878fffa69b7c44b92e43143affae8b098e1d27716850f37553bf266cdfb561abbcdbfeb80752b364434e64b80429b54cc88693ce03dc0fa147f0741b215f0728499bdc25140aafc976ac99e910ba8a8a50d21b7bddaa28626b3b90a93fd44077068357c81d36e735eda4362930adead4951a0baa104f384fc70e842a9f329e1868b07b455e9cc3fecd54805c9052e70f88c3b92fe0fc6a4d7dda18cf5694e5398860e439a1e19d5a66f2fbc0aacdd1a498711bb16054796c015a715395ef6174e37b04eda589b673c4d5dda737817fb52f392caf7a72d7a3e84b2180cb5b75bc8af065bdc05c3e4040435a1b160081352ac43e09cbf2ead6e09c2b0be0e37894888fe2812f68806f957c13fce6ff167bcee21d4f412ec95a4847f3db7bf441223a4d4ca9ed69adb4de8a4b5b01c775f2721226e6c59ff26fc38e1bb78a384b30e7b55f082e264d8f25e31518619ddd6b6a9faf8aa6cdb5eab75ed59a33825d5ef8b93bde5d120ada773fcc0852b918f4f03e2d2a543b15363adb823eb1f6c533b98d940411e1f5c1cf521f9f63d5454697608326625fffe01bf87f44187dad631df2898effd2c291d98222e564abe3b042b75e90c9c54667842fa8ebb68a1244bf8e0c3ae3ee5f97d5ddeefd986c4bd3f99d877c2cc2381a89abdc61713d38cee58bf69805a485c288d21b15843147066b4a74c69dc25de878e21d35fdfe6746feb4c166606bf3219e42cf63581e7e6bd6570f40f8fae590cedf5106fe57037ccb2324b74fca6500f6ed3d0736cdcc67d04f8fa9e80054a5bd7c8459fc1abb1c4c78677d7f6b325af94a0e5c9c7db0a748e12c5265e8724947d9b5c4bab1a8b6faec827cc41ec115ef3c2d7348cddabddfbc8436f3b41765e13f3762b3b45ed23156f085831e726a55d4b83848b3d1d3352aab9edcc0ac2388f2383f6301ad813b917ee3f23734e057832ae4cf65e668c9ddd0bdd0f9d8b6693254649668aa91a1fa5eb7c59859bb6ddd36c25f4a2223f5d688b480d0388fa307ea69298f9bf7737f6b3dbfda87b331affd75cd8d88f0460e98ebc2890b217bd6d11000a3a088cd837f4f8859a43f76afaaab05a0c3007a149d4d6b9155cadc2c9b55003efdec5012b6272b87183694c505f0446ede55f35b8ab201f9eda974ff840eccb0f004fa3acf753acd0613f66e2a6ac82e322199d37b4af83cbb3d98371c31be79bb42331e819644cbad2ce27a04e4c517998692cd8331552892e199a01a6922bda4d38ac4c01f708809e529c3216eaab399ef25b350ea213ba47126f278140e17391ca7139bd13c56f415e6b74aed8dbfbf38c95dc6db366fd72aa863a27fa1ebf198716400b978a3709e35039731930406588ebdffd35fa230a9b75fce41d7acd214ca4f0029896c137495eade0cf4d10fe621c73f01061acb077de72177ff5dbc6f0c5bec681aa34668ca4fcdd727525068b0b0e9072971b84ef6ce11d5c3c6024da40966703dcc2b33ae04f677677635a55db508f34f1403cdbe37960c8577dac3d848b29f3b5c5c6c56fb74f34c8f4634c04b8cce9b218f1760ca00e6de87efd14087c633469c892bf3e319443336733bb60cfb44941bfa25229aa24384d812db90fe74e0f93fda005eea87400736cabc036f71421b6657b1674d4a8f76cbbf3a8b1c0af82f72973927752257c532db439d96762ad64f102551a9d03f9ce3d8cc850c393c128bf8054bb55bb92ea31ec0706f083a9cf90424c617f8ad2a21225d1913c30e8f47a6b7131304d536a85596ebfd987b64b6bf3c51638d6c839214b53c3c10aa52bd9c6eb77fcf80b5e3b724dec1381d0e02207a6adc73ff53d9d1ffcee1c4a28fa5445ce518eee937074ff7a402f5bbcb362ff090415f9dbd93b62ee56dc8c50e4d2e34c6c621650c0dffe311484e95d68de77170c909c815828946aeeec7ede56bcf433e22fc63a33f764ced1f9242f3d26dc7558686e471f30fbe9304d3d56af8b23e72a4088970b24b2f7e968c1d0392eeeb0b0f0ac8c176547a5383d948ed15484b79e21314a1f28ed624f61e5aaecf2269e5b027e1910ffddede52fad4e8da224e8a10b079548fa7cd44172f4991adfd7623d13e5a19c812824bcf990c07c9721ded9093be6ce7bc7da3ac8c932133a64396b822be92b088844991596df893625a4ef24543bf75a10d7d17ff70350ef62ce3a7758aebbf9b3977b08becb9ea28376082f607965f2cded28bbdb39dab7e00833b0488370d221742b66e27d9ee2d9dd07f401bc22a62c8a9d8d3a290c63804991496aafa47a32578f583cfb53d0c2199055973440d7535e0da6cb2957f4e04002ecea68f9c3ff76cade27ed15fd7835989d0abb197fe32f68636139a42710644bb25860ff33f539200e3ccb8a7738422ca0fa0c744b4c19d15c5d4a3cb082e20a78e20b5a4965b043595cbcacad500b5adbb6cd597e6a4b9c5ea6a1f2e653b5474da277f1818048094ac9e0e1e0b20068d1c1ce5a114a4db7195057a6ce4d221c336fdc29190fee8ff855cae8b7f7c02eec21f972c827066d9c6dcc4a4179bc44ea9b88abe5124bf78b071e09e9af43f739a6e1030091fc091e73edc447f25c68bf84b8df7aa8f091ab42662b93e02c27003afc7b0ca69efcfa60bd53d4d78ceb7c4d2c8fd5ed7e8b35024de849e06400ad145fdb28348d22b317ccec704c401f88db1af2a5348223f5cefd914e404c9d73805d0de77211881486f1bf4aadacadd3ae2588f0db7b5e6957fed50a374f541cfe5e4e923c82ec47e5b3d2c70ad6760c79cd5080b490bdc75f9ef5e1d17f0978b1e8770775f902b9463e6980e1683b2454751ba2dad4a2e6460924bd60ff49b03230cb11fcd04a0388e60874c35d3f6cfc4dd487665e1b16578751eaea89e126bf58044596e3188c7a9631017be1f2dcd7d612331832ff8755460dc496aa99a61ea053c78e72607a18213ff9ef4bb880903b91e9a43e0b1f0ed1511b2eca2f4253fcfbd7d0faebf3680fbf0a45df231544882c9c46505c726d56905d02fd046c1652d8fd06d15286a1a8f8b69fbd825ca421fd80f5e9ba1a23f924937ad049adeec60c78fea1adf9b1ef7e8ac4d1ded18f1a801b0bda8fe9a88098825ff3eef5c1fc68cbea143310b39543293f3f5fbcf4773b02054c0bc79f00554947c7604b36389c0c45f597a88f3713456b4cfd83b30cb6520b624aa09c812066a8cd542dc67e19e4c92b562b4e0f6799fe57d9d4f4f3e0b6fabff4b1fc190bf1e78775ebcbe3655d370ca6c08f48decf6153a4989eeab6921f8475f85197f51d651e563994257df57977e5f219b4879751de57ab0374b407a21adb4ba520bb35e7b7508675bf49f4e432190451423cbd529fc79b22baae9cb1d8660c3a49c456ac03bc06c0ef3b02f7d8acd40919315206fb38e715139c9bd6f89a58634fe683df03f5bda719764f6c38131bc5ba1c53244472ef73834ade04b86ca08dd753141ac0a9a230e246735060a044018bc9b75d50134b20e6219c13f8325b5a0201e9453f6f012fe72e829ee1c637fe30037a9212a31c6e713726a6cd4cf2dd66ffdba77f1e2800e717940f231d04aa2e4e88dea084754947d848c0271856bfe659922408449858a81fa6583f062d96898d18ec53664f0067eb9b9c40ad2579ba9802abd8d1bf287e49d94ae397e784db14b5f7010ee4fc42e6e3c8ba80370afc188fcecaf466ea830d7b16362e5c9329980b981decc7174f3ff70a35d8a180ee12ed0cbffd4e8d14eb503387e4959f702d4293109e922eb561371f9ab21475821f8555d92f0aa1c3d841a6f1eabd4e663993636c754ce2b3c3f6a6b6d0b161e777b8296d7dce7fd162970496494d4f60716244a5a7fb7cee40e1d565e6566697e8f9300000000000000000000000005101318212b
+flags = IncorrectPublicKeyLength
+
+[publicKey = 5a04d37a8c83d373ba07da5cf96806002e3635ad8add42ce6ee9902dfc9a1f27cd931f803c2103d181ee5228549e4f2bb5cb4bfcffcca966f1ede24a9958ad53842a15db226adf91810a689f440ef71184a2c6b4f40e5f133bde58fe9331defa1aabb9819abdf9cbac8cc564ecb89d648cb5d66a09453da4dba410784fbc41db6216e19856de2bed90f6c30f3975a9b7bb47c2cb63e0b3df09331dbfbbc23c15a45844ece88226fda9071185fabc073a8e832e7a940877972734ca3bc6bd66bcc84a61b683a3e59c9453bb1ae493ea1f0988c30e05dbd65e8824e73d7b335465e119f7b5cb640725121565c5610f7470ab86fdcc18bb005eab35929df14652a9771a496ec4d44ab84688f9481bdbbf79614e8c4fc611e1086bf2d4c798174039dd9686aa9f43e4cbaf94f9ec0533465d327e758f99637600455f5a51e9cf4220e8cada21dc8a5c650cfb00d964c49575306862c7fa4128e6c65503f93cd3d2c079b7ce193da9c9577cd7deeda0f66c087180ecb7d561309cc1a2a9e9da2093ff5cf1f8bc15f1d1d91f6462eae7a9122234e660b1739b7db3043b09a1bfe0af241eb0249efd1f3255d7bda8749bc0fa6c193b52cb8b1d3e1b4eed21d7d7bd6f024c680aadadacf51b5f0bccb09735594f176242cc95fa4f61ce884b73f0878dbed24062e219ffef82a912435b55f954e58728c79be21cec1bd74b0bd80f5fd0a5cc418c8c936f2be63bcdd3902a0a4bbde4325478fd58bfae7b5dd977139fb7dda993adc68dad65208bef03fb2a20f18ae37344a2a858dfb47b2db4c24488650d19f4aaabb43fa8b98f1bee7a4d7fc38363bc9711d63c691feabcf95336c67e2ccca3f927641ab8d9b97f709e96553ec1a4948503b4783054c9d827756bf7cb8cb74b1dd5077330b2c2ca7460de521a591bbb8dad8575278e62b9129add32f30165caf72c05788773cfd4d7fc6042a72df403c396d496b17893a9694e0a067bb4d625e409ad5f0e818a81f314694e6c3eb63f0c7f468511462497eb40fa7a09d0d60e5d4bca7904de88a3b9b3df40fd4854142302481fa7458d59dbc295db173e1bec6e7c9fc6f1c46a4c469b63b286defbd30e1af010ae36c9cb50ba5e201d7fc5cc5386eaefca0d81c22f49a7ad8ecc272141e58e90d6e88c228c9c0d3c0947e13daffd477a055f4777761d060fe2505c8de34ccc96a3147619d424650d6230840c3bdb1a86db1d0969e1f5db8b98a8a328c9c2ffc0c90732845ac67efd45e29d7f5335637683a019c67b323e0ecb627333568a6611cd193eed5d12eff8528ed26a37fe8f0ea7ed3b65f434d69d4aec0b1f4a2ce9d44fc111d9e5a6c99f346379beea4ba3b5223eab08dda2841086d6974e1c638b82d5fea7bc85c0eb697c76265d147637e919725bc00ecbc66163a8c589d07d26a61c781eeb47189b993d5fc31876242c79b2943a4aad36933d576c21ad62596941fc9bd4fddf223f646858a726d489a0d89ac38f609092660fcb9bba8b00bfece9a1c2fd7d5cfcb3ed46b75a7d5f5f89694c76ef76443e37d0cf4e1bc34f18d8faacfae991f2d10e06cf46ca7fb40ebc4f849b1c6c7d9f33ccdbe9171c59b48b6be2c18923bbf33ad0101ed73af20150885dffc2f7607b1039d4a020a597acb7ebdff1b591ef32c213d8b5c67c593e91e6c123f82bd3f55c5fac30ed7c01bbd137adf7a1dd49c4338235da356eb6f4a4138626a832d2bdf590a15a98258dc283bde285d12c1bb96e4c664c720f8b04a21f70b70c6dda30402b8995df99f72d987b7725ab4426dd9a04473c7079aada56547e9b275626744ef69c2f867752e0a9fd18dc6ddbc6be74bc42e23235e8d12a66de855046c6dfcd4e89b34dcd0d1eb1b0836b74431e8c7154b14f6077dc6baf602f86afbdc0dbe1c1faf81efd83b7361ffa9d46449b2a10a040b1857cddd5f274de67559006fab88536365f63ff9109994d395baba2410e613548528311ba3b300b20ea1b29a333ae40c6e77f30d2e0b2cbc47ffd849028189489c580aba2f2bb9add957a4b3257e3740e81515930419b28aa91df5ffac928857830e20a3ae970ddfc8b277f656d117cef643dea29ad1479c1d9d5f5296011aa5cee51dd4440a770306a561927b52fad013801252a9714706e3d7aa198119467bd5f0f4fc1a76a5a727b0dab83de31b4581858be975072809cb1f7e56bba1dde4af1122b5a28162bf29fab7d4a864352af1699f3456f4d7bd72752d477ef16fe44bca379259f6562fdb8821e8bed4772b3870397474929f5354c360b06741a9e2ff7f62e3765a1ac1eb69507ca0682282562744650769798b91b92f7b7b6e251c1d590aeb4c69154f262d3bbbf32653cc1ee51274ef7137d87c5d71a7cb4db570b1fc0f98627aa025a3cae57756ffeb5e2ca0dfc2cebee981e395166470ec1feb9705a78ccaaee282d3ba43073f9f4aa8026b581c2555f2a77467e0f4d9d25ed02d59e1e2d6968442bb737ead64e377cadc229dc70303d5d0e30bcc620dd22736f4674444b54ce16658058419bbbdd2b75937df077b2bb131ec9cacecb6720b97aff8907785d50d48d6896c54b262fc114d34421d3e210e4a393a357011eecb39a877fb2b65da40638be4cc434a35b3b215e3fb673a302656c96a49d6d007c1708fcda4c2d1e1699969835d8427c1b34b14660c2549df232246d729bd75327458895df9395f06d6c8f817f9b6ff38c48df0c0378c035cdc3a3cc9a8df239597359]
+
+# tcId = 71
+# private key with s1 vector out of range
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = 643624d994e78995f463e4fef0589a691f9eeabada4672ab948204776e6f973053461e5e5d506bc427aa31aae371805f0b558002cfab1174da48fa457204d4be9e7c4a5cef4f2a3d12ca5baa45ab91020a01455b1426fd3651f8d82ad270929fd2ee597b313a663c553f283089c1d4a068bc8f1a72f518f2ae5e0e33531da37eeb83810adf0f407ef09df510319c8dd3efedf52e59dcaea158792a58420b373acc2247e4710b2e7e3d17faf81333afcb5608a0cc5803fab5ee1533fd63724cd1782aecfca3b090dc61907ec71220f20758f1edccf7eec6ba904ab241b151302b1cac2c0aa87dbe8290320604afe1fee787e5db72dce3813720da68758541d2d2e98db1719b4470a7a8924b91fa590701fc3f9b74b56d608aab2749a270a3361a6b7e514f3520b35cd7b973a759aa8626431305dcad6926a8d835ae9ced34557773c90f293ad98cf0894c23039c0b3dbad65b626cb8b7534c89e8a60355d135a35fff6d00d6ce34ffb846fe02bdefc7d9c2dea6148eff121a964d1eba401d2e32fbd68c3eeac48a9c13700693c1b6ace46fcccf3f467b7d2eacb49b62778ca28df4857918aae2c0e38199394a7b4cf0c19dc10c6a5e4807245f057d50471ca585eb8369fc463123d5daee37ffd2bdf33e01fa5220c92e205fecb89cccd17492d62c0665580084c4197517ffde7799b3646a405ad243bb40ef1b11baf105f33245ab4e8844e792dd69c67119cf865d158eb90836bbd86cf336b33b62ffea13bbce0403e444d4bedc25d65b9e32ab3982fd9b8a2417c8bd76ce284df061b4db54e840f28035e1b7bf94e42a2cb097ba8a0d4eea197596ba6e8ea78613a23044c07ab602d6cba7978a120deaa6aa6de89dcac525b8ce47279138e21255a9f46a4b97888093ed9c7a6849bf6ff7ce6192b381557ef3e44f809e724ddfa502ac7c9e6154424ccfd60d8cbd2c43eb811d042a7e504ba8a426091319754327e45decd1278889e206a9002e4a45d54fa40e512c216c09d9348337b1ff64dbcf03d974bc1f15f036768e93c6281b14d1e8198f85fd812d421766d19bba569f335955a058b35a557157e82a1a3062e76686397c26279860417c2441852653b3b9304db38acda6814d12a6dc88b307d0d055e68f6ca2bb094e9aa22f2ce792da36ef0cbe0d04e7d8c76bd49fdb4a0faea798632f0c28349ff707956b40fd7944a09d18e2636b1e2bb9d8411fc450547775d218002cd7514e871d76adae54242c0f62423142fcd88f7e82572b38393357458cb36a8f6a2a0daab1b593f4b806e79c315144d4c526c7ca44c3876054bdbe81d9ea50ffdcc55b4e8b73e44b7c01c378183b1a638deeeae46003abc4db3a55fe04bbcee3366dd61b8461d286844c8468b8260d501307537f8484988c8cf8f167d85b288e89f21ba0e0b4fafdf94ac58227c3fa5a921f751afe981c5fe48e26fe780adffd6c4ffbe6609d0a822040e90a3d5ee047dd5cf86b2a80f117c9316f32535bbba7977969b07034d61db21ab76b87953d96d0c015347e797b68f5f912c6af0d2ac0a7662d1d1ec5e3a0bd0257730f2729c142e4eb98f4bc6ce4873420222c01020cbda19865ec27577aa9febd400854fc13eaa514284f8a5a5e8e3e3d1a3dd41990b58e1eecb7c2d09d502c23bed2025e06fee4bfdb05d7c73cc4e447aea9a98d90dfe72325daedbd989fe96f27c8ed3d10af771c12d84e488cc52788eb68adbfe35259135c12afe96f4a97d0e30bce518f25ab8e1f5296d7998406799bddd01dffd05247f2a6f565b1609a15f9cd3d1feda69e4842379ae3b0d705d88c0f47613c10825a145f5d8da8e527b3a4ce3caf9dc3b3559b7955923288443f31b164ac6058ab228ed19d73ab2dc870497969648071d78838ac13aaf43e50a6a5a83eeda8df974a56ec134ac37a805d3939b55a3211f89e0a0f963498cb6bb44f9f897a9c7b686a05f813c06416c923be169e7ac2fa2d12633142d2d5f52d8655fa76e1d7dcc63b1fbe97ddd65b886ce3850480521d36f8f308f5a4eff5ad242374304d238dbedc8b13f2ef5ef6bba9c818733be44f023d27f79dbfa76a0eb4e20304de0c7a1f38f705ff6d5a9e6a1076d0d3cc9f83516bdfd9dcf5537597139a26301d643f700ffe4834f4f449b5909862e25b60baf5941fcd9e264d9243e38aa813149e752e167a305b7eeb24caf0784baeac299f23578f2af1d85caf05fe088f98e1504cfe3f551e1ee47a3fbe30cbafa7ff7c141a186e43a1a52589a92f7584dc1fe45174a1b225466ba847cfbb47d55d9c5fe7a16f4106c4deade55d6c63f7b3ca58172d79b849874cf5e2c7f325effb2e4a632bcfd56a06b038cfd46a96949768a1d684a3ff660f2f8d252fb3e1a6fbefe7a7b765fdda9287b595061a5afec72e27d054849e0c905f8178b82b7e7028b2c9061b2c0a9a8d1137fa8bb0b5a823c5c88201efc49855fc2a96a49035b59d17233eff0f6b574933da9a6d4d179e7da108b82c3e527b492a0c3545f945ff495d9ce71fa5fe9b7b44cbbfceffd7948eb7f3c14b5047357572f9c7a39c8490f79448fbeb7f9e50f0b38b064a19230e1a94ec7aceaa1012d721a7fa9d940647f801c584f3a5cd4c2c3f65f647e9db9ae3db508565af32aea6800731873a33775034acf26b6dbc8c449a360a79d10d2186ffab29ff5d2937bf0f1c2efdb70327ee1ff901f54316ea08898310fbb8a94e6a8fccfafbf73394a782419b2838a2ecd53f16ebde96d70b1fd3255ee14586a63f5aa5f42b56b5e771ac6b2701238380b5427bd98a9bde7383e72eb34b257edaa669ae35a01f022cf0a96967e90ef23c72f2ec3e5cec48d120298d5a2ea259133806c5c7c2a53dcc6aa2c102c0ab3845a5785d63de6e58d240fabdd813155047dd55b3e0a8e0315eb427a83a4b754ca5a53b235b38df8acf537b1f67d52aa5d33e7f57ebbb89f524f30245362bd90f12c2e6110d19dd20864f9095e544b0be72c70d4d1053c7ae48e4fe5c4f651c18ecf5e51d68e2da2da6bbbf33fb1aa3942ed616deda75a03f8bc4128342fa1f4f07cdc6fb9c62e3a12bee90ffe5163153eae878ff1d35db72f7c74bc6f85701b4886a546d435e5fe10c7c1be65769ac5b2bc7f0aaec6e81957cbde411d18d7a0ff834d107507790856c148e564875c2bfad46fc9ee3b948636169b85f132e4434e994262ce124636507cf03bac88ae261da6443ab1f92ececeaedd41f9a418ade3b4a33d0d44af62b80b461007cb5d31e7ab254a8ad9de7a10b0894d2d47f94fb579bd775ee2b3b4fae126bb5af0a645eb80afae8631eeb06822a54bed367aebba0d29e8efbecfd9722ea55ba9ace571b0df38376c79deede6ed64aa5febbfcf865d4b2db00b1481235bf3730745405d4982ad27353eb00a506ac11c5dbefb7ab1b86aa99b451d81672990a8a5edef63aa9d1f124026e45cf6fb38bc4053bc7fd0de1ff8ec88f3fb8891e784560f9af15f64cee69a79aee5f180f498a0cb6a69eea5565eb97cbc64089403e45cf2c031af3d442774f048c9ff04e3a84693b20915bafdce5fb7a0156c5b58d157b8f8e68d70aa1d0cac1f78ec91c8f32bfcb25cc36001ef5d4bf18701e624a1e370a7ee2ef4bb5675a7ab4c6d148e6dd662364ed7f54fd2a4acb54568ff957f385290a6a34d3f80ca3f876b345da99ffa98effd361f20782111801320b1909ee32ad849c653255ed418ff721be631bf3af40c01ac90c0f92578fe22c8bb201db26dcb62f02b916d3a294ba4a4c272f26e2996649e6e7275a664e0810561e5b25e27abc703a591c9fb2038d4293da0163849b505c39b3d6b4862dbc393bc9c7420badfd530182a2b96260e75bdfa43b6423d2443b0ff036c468c5cb2ddc7db532d11541a5f6f132e98b0ce08097839aa192afe99f19e261a796ed8c123a02a0b26ba2963bd42c555876fef5800e0f08ae33539eca9d997e450ba040399971fdc18c7340ba6f691e6722475e71e92dc6490a3420a879e702a69cef3a3b5d49a6dfd4d7ece7b9368a169e9125e1eae1cb1cad85c3d8c70e264d2fe890f40af05805f3f3feff60858b155847a8cde0b5c8b3f40d8b22c3ee77c66f02fe55a67536a463418d393818f6cba0cb19ce36a42f37253d9d801f34a010a3a20f1113a1e7bc108c2fee2c97d03661bdff5b74402a35fe563d16fdf66dd4bd741381e7dc810224668bdfc480e62d25836dbd41b7ccc1ab56325b2a8c216246368369c228a42b7cc1c2baf4c021dba8ae8e4cd212f21b6b74d3279e2b444bc2ee6951995b9b069a78cd9136288a51d56f2406024d144f1acfb4828aa6e848ff0bba1eaa73a4a820e616320543299d165a7d4de422da83878ca1726d0b588a0096de21d895536cf13fe5714ded541399389d61471c03588c75d9f8928b1d379dee9153ab0fe431cce09a37d93a4d4008ee7da908bfe3a229130d96fb98be4c5b30abbdae2a162182d3215a8cd6f1ddd2741fa1ce51185d415d17686aace306027430d89ad80a18534a614142d6fa355e73001eb8938922ea54f57cb5d5449d076974a80c99e79a5b196e2a9b635a9271255f6c7f818bfa1c323d4a99f9acc4dbe4eaf412196ed7f70e42586370cccdd9fd0b1830499ec0c6000000000000000000000000000000070d13182128
+flags = ValidSignature,InvalidPrivateKey
+
+[publicKey = 5a04d37a8c83d373ba07da5cf96806002e3635ad8add42ce6ee9902dfc9a1f27af2b332e1a44672f757802793a43b7e9f1927fdf4b89b7a4ad975ecf8bdaea48583cafbaf30c7ee6f668c225ddc25ba1d394d920f435173ea8453bc83bac373e3b6429f48a01c7deffc3ee5a986648a40dfcb31662f46f3a07d22ce9d486a0be0e822c1c75ea58965b9167ee08c9e6b07e80be89b257be37a57d5385a8bbf5e4439bf3aa80c17874a9f37d7a62eb0baeee9893be6e0fc223c31834baebedbd9611225d25542d78fb659b6f41ff3182d94b3e471f8c837f82a42fcab82ab6254a67632edf81f6feb720dbcdaf92c92a05f68db7fd074349cc54b84865326e3dc45e40645c95b41908aa66d38dafdbc4ec559cf0f86c5bfe7c2a84e8e56ac5bf97e88456f7995d77c8d114120a9c7dcd3758c182f8382f8f0ab8cabd451f71c72daf985ea2f64d85b561dd294c2f96abd8f351f2821fa920ebc8fe576aa4a9253cc23ce45e3fb4695f181ddeaa2ad12e96fb0c658e12f12cbbb4c244efe0b40b09c0c8dffdaff6f47a8c1f4ddcdf4c5e62eb68bdf66a63eff871a31fb1fe3cc67db129dcc8daeed2ad3e80ef54e600bf7494752d890e7183fe7f22f9ddd790d25a46621820b79203d584aec35ad52dc7fad76a9a7c69b276b7fc66ac7b873db7beb6d1c2f6bc8ddf11b9cab1b8e8b321ecd33bc4fa548f99cf116379ad7a7b20672f2e7cb6432cc2d792221ddb59ef4f62bdace3bf3269888085f703cf0358235d22f3d2f5b19ebbb5692a39282aefae8015e39425678f982eb31755804d4f1e698491ff7cc94157055a2276f8a9576022cbfa45982214f356dc4b5eb3741e12c3f6361d9f8334f175503deb9c03eb40c6db999056538c750c99a2f55d39cfd104f5c9e77c462b127007e5e24775726a9f7c841838eede9f90f62e35a68dab88147448581bf09cdcf927afb10c054c56f4cebc4b18a4e01427e0427d1525a3857d969c5823920a1b56436e8bb484d4f0e96e17f71db9da6d1317dd6a6029c4b6ed21fbef7552581d56d786facdff8f5a225c7593cdc9bb42c722f47ecde0967dc0a8f1a5c99ce711f8399f7a45489a80e55b982caaac1e2728b84674eb27c76c2f0b67bfd4e1c88dbb26e090b9f3e19954d7b32cc33bd331996dfac4187d76b75ae71e359c93bc1a848943ee06c933f757afbc1d68d63c8e1ddaaf100069f6160ed97b3ab56a36985a45ae43ff8504e2720ea0d203766a63dde7d9fb45e7854657f7a30705bb09f9591aaa991ae8df24c31463c83dd00d02ce3493b92e3f4595bb0765fac637a5132f83e29d50aeb53b2ec911d0562c9ff4972342eed56e85f06e7ddabc08b4eff380f96b56cb09731ac82398e1df085deb8083b61bb52a8d473417c1d3ae2be90de8435a062783477302d2fa8ed939dbee525fb5804de60ad4abfdf4d02ad41453536cac2c9d5bdc3786628d3fe45d42fdea409443df330e5fd0f4858b6cda8c0a63d7b1217e5dc771bda256a823bb30720e3dcf2252959489a638089bb89aa24d688143a6b1a76172e7f0d5dbca3d033a369cc2af5f3ce0ac4ddf2255a80c23e2d467a96ad105de238cd3ae03ce1151aae6888f3dc54fe3dc07307a05ed4b0844363f0af2168f64d7feae7059ee1dcf5a10098f402f401cdad049fc4a81e1c9527c973bf32c8b7721d1b88f87297da77395debde40f1ae549eb56b2cf6ac15a7b2399ab5d96692a82239cd5a2d6d469a64b3a3154b2ae81e9a42189efb498ee86441dd039e38ac1204a286cd6d08a2218ea2e77e6379b40b81bdc19489a828905701b5e19d2ad82b7e885310007161a86a21e43fc70012b5f2c684a2cf546d9f623e593faab383cbf5879a871802ae4c9d4879bb28c5785b2d6cd3a83c8600befce72c187d48f5a879d9d9e57b3c55916b097f04ffca9aef8e3e4574bfc7db6a505021a800fd79a856550978a899dab650389f55c0654641890d0dea6c8ec177216cedbd29395a126a66c376d432d20d0bd00b1d7c1091f85af2dab7d4e60204beacc90a3d523b0be21fefa5f4e892130379c2f947889a28a2eb2dc8cc2b7d0090d41db53e9279b54e1243ce17089f946d112a5ffe1ce7dbcd4e849b6b7bce239b256005d46f7f1a2e2af1a048cf4218881e015b6cf4c7f6440f5fc61197f79749da80dc9ca03e2bb23afbe8e3656036cea31ff18ff07368a4df0b053c2d4bbb3b929bbf42cae74c88004b93493a42ae204b156fbf785eff086b5fad30570e88dcded140f016ce113f4c8907ccc0387f3eb4958953d8cacebf890666f3cb312a2e87555d93132fa88c1fb685c96b4a45ecbd3d274909ccb1f5bdd2d392a733de7cf1c87c3a8ea4ce905141116b2037c7f5adb387cf618deed6ad796711ceada04ff33d7930186582756d7b1c418ef02ae7399b431b38198c131b7a747407e2d4f08dc19f8a863e808ad6078caee2c8a1554d0f582eccf4ba0ae43afeb9cc62e2a5909ca81ba28ece723e141a7ae3317afacb3d0b61d9f199b05cfda42b750834c5f57098be4476fe2bb690481e7cf509e5e94d929b256c6df712a5125a12ddddb68e9b11dc0523cfefe2fc431185b96c5ddccd8ebef1361e2e01d812da62781e29c934eb89d59ec45adcd208ba6cc4735c59711452de1f1869861e7c10f626ba3b0872e7024b370eac3373223129dc44546ba9354d094bf745bb0e3ecea28a26cf1d3750f23276cd4954a08c05464eaed3e5610e5b4e4cb9380]
+
+# tcId = 72
+# private key with s2 vector out of range
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = e38e198c1f8a94a183a90afeb416b870426ba739bce98da1e72efd600f13d38e2c0a51c6560fe6c1ac2fe2de032390fb1eb990978269ed755018ec478bf862632bea446cc6226d0bd018488fa7f8531b4c72f94c90915deb640eecdf9ff8114c8e3710b08c41314b2f81ef952eed4a3a2c6cfe9f42169af472e93a8722273706a3ce8c620be45ad9398dba3d666c998d263e35c6aae43e00835630397597f3cd22bcc6bebb56033a267105443f4fa0faa82b5637cf19035e97731e0259a2812f7432da8ecb2a8b2872b0ad5705f5f663a47f5351fee175e42e3bdde05a8d778bac9d17e80c647f667df6486e42b3bd64acf37d6c0c071c3766fcb0859310bdde26ffe2900b5bae5cca83281feac3a754ea92d6de02159ccb6b809e3cb1a9cbfc63356ed339581484d8e42cb350e0d7b13cbf0e2830e6a9dd0f45285cdee709a5ba20903c5a1faa4b765e9bdad09a96867b909e6db4fccaf6437c0d70173e84a92b729c926790e2d8ae3316f4ab4b41e326188fbcd10cf60d7a5f59734eaccd3e831dec33edbf66a43975f94d03f67bb0a7503d9342b61c1b658a0bfe65526347a1565d69d7dce2e9b633f1216112599985e714e27e6003473ad6559c2338d60ec04ca22d748fbc07b4bcb880ebf488e6c0be5d21d0d83373772123ba8d73a6cf9533a80827789d3b83353e521ac1177d0d8417eba2b98136762655a8f5a2c9d4e0dd54befe06905b1ffbb1dc1f7bbb5056c388a2fc0cc0550ab5e772a4c99ccec57ba217a89b437741db46c5c08468639d8b9cec4f9a9c4e4ed109509d8e8ac45d27f3c2c2e7dd1640c7be4a431cd250ca2756b319341286699e4483c9860d88dffc38dc212928c9e73c4f0c682dd95e436cef28aa861e8f6179d92534d998fb17eb5664d02c66ad680a7c12ba3988cbe8cd601392e8c243192463c8ab93fa68e9f5872debb3c6dcb0cb91c4bb2fea01750b3e8b055761515aa74d3116115eea65748adfcb8f3ce66ca66ca81327954a95a04fc9416604b6c9a2f9ad794e0885f1d5424ca10b3d7d8b28c5211eec82bb5d4d3bd1bbb82555c7d0faec1f78c4ba885f0228542caa5e8f9d692839dcb96cc7a0608a38db772c4522966d028c55b06011a411f3cf1de98825eccae3019f66299961774fa65e54ec685d2347f698b99672870df8d15b1894c174da61c7b09ddd8ee971eeb21f7b685fbbad1d2dddcb553d8814abb34edd4e769a1185473b4d5aa425b212ea744c34c99e7f6a23875256a6a166d4a193acf20a303e76b555b4038f30724a427daf695198425ae541bc2cce403206a58a5b01286403d5534eba27c21961d92d169c1489285beed2b46fcc0ea8d96008ee5b4e31e4df2700ecde20a0fbd18c5866860b2a408028f1b0366899a863c797a19d630d3dc1aaedf4a72c6604fb1520e2c1f4bd990406a3cd66f6685e8a5d5514f02427c9f48be799eb6e60d88a5747baade73c6c29890ac1c2cce1c706b9446963b54e170e45d764d7c2079e5ec91dae31619fb9c7660c818c748e68cb77c96606830d941efbbfd3acf111517b0c4d4a9badf954c58c0669bdf8cbf4a7aebdd95eba7c56681e8111552e2e5622bbd3b4df3f0d79a9f23b92f96aef4926b3660e8407b14899468ecea5d7bacc410a1a04e9e4636bbbb2d1e4b5f4e690b12acc453f28418a4d76daa8eddaee29494b4d1fd80ca86575cdebb6c4817d16174cced964e6ed4c00d40cbdaa1ff86592eb870ee11339f691f01d7f5d0d2dec6eb064cd374d30a97a3f34fa4d9884c002c642791c27074c02cfb631eaf412c4a3401d5a4c011aec0f13ade4e42fb1c54ff0a453e2a3d912183f9bccec6a3a9d5b3ed150a5d4b1f864b685deffc941c1af2b252f27b01c831879dc660fed23365a8f538e8ea45342ba34831ac11156748706b1291481e796382ea02212b32b0db62b17674571f25db552f16f32d8a41ccd069ae067bb6380836258d8ca84725a874cb600920d76b75bcc462fb3dbcea102b5686ad7344da070967ba2251e7d3eb6f6fa1f0300d8f639484743d5c3bafe5a553978e183b89f6b7fd097eb53febcf2bc0281bd2c32e347adf2429372d5d7cec86d3f122a33655603cb8a50a93401ef9f3bba4ff6c809a93e2d49ac15de8a54d2fa7cf6659dc48f832769957c31716077a8b1605e644ab207479184719e0e46227a523fc1414e97a1b1c041be55bebbaf0b220426d36006939cfc33836f4d8e0532ff21ca001d5980798d2175b7fafd7f80395d525caf52fd90d908acf7dc45ba9855456627c860c579ea74c28d4e67d8d64b93fe4ffb1b8764808ea4bcac269efff956dec080668a4472cd4a524ccd4009912ce69d3b005495df3298c112d76acb9a2171b020f7c245cce59b5ad9bca40a90f3c417d6a7f47b5138896735e5866336d665f0322e2d5b6110a2c49b8457895751899f912a33eeb79b1f3359f0fa0c8e9f7bf7b08d870524b28099ddb60bac8ee821372f3799f2a7eafa964c3cac3e74ad7a3a46f6508321b5da2abfd791748a7a1c4ec3868cb1af91cec7c4858b532c7777b73a3a5711b2880e182079b487b1590e2f9119b2a19af7ab8560bc3f89418eb3eb2982dc2512106ea7ef78967675c1bfb937e019936c82603c2ba920b533a483f85a468f7c38e6b52654e0d10ec4750ad1d554e642ed53f530a1d6d89d984a5fb02a504a8ea5610582342595895fedb2514bab4b568da19c35c0bf422f0d40d59693ea245f7a05b282ab6636280f3001c5fb45ebb10f9e031b16113f6ac3f65c732c38d134693b2484a33480a7eb671dd6d7df47cd3739381c8349d3beafb551ad903ea22f0c0047d8356bced4e1dd8def0fd4c51da4e498f4efacdcbbe691ff1f68b3b0787284004641a643325c765a82c68c73c458d58c0cc23690e9aae2320b2b1d5045dc62b32ee1277cf27ba578109bdcfd8bef283eab6814c07414e118dc23ffb1164f8487ebe34fbd8fa27f9f6f7424797db403910631c12d18901c1ef32f3ae522682475c6e864713a4d3ecf7c492ea1abda9b138a994249a371ebcc48b5dfe9ceb2ec44d8472565f1f4a5474c869cf5ce5741d207473d56105b1e589c3cab583d89447a5c2465d6121f01818731793a876539e5fb8cd90ccccfb63d15eff0e214cd223ec54a6b9b28beedab721aee3f02ce64bb3ba4590290bc299b462d77e14683c611adbfbce2eb855c102c196481c73637df400731f765d525932b8f976c275a6a03fb4861d06540817fde3faca07909e038d2e45a76af526fa014a8764c702986c495d409e6f11842c0b7f22f3145cb5ba56e5bca6ed6cbfdd9d79a894606b982747159c7396794b111adc9f73c16a7b1287494d4756fc52d71e39d2dc87c9d698b0a262b69ee3d189125e664d303dc9280277c062eda6bd6b57841400e806e642ec7dfba6d9968f16dbe8cfa1af146e29aac96fe4bf1840f0dab6d371ae922d88a9b204b528f31e79f5d1e7ed67e36778ce5c2643129260b937a09ca245144fe10faf3392ec6835bce469afad03eb6804a95642d421a1963b34bbcb604cb494ca58c5b52c11e6c1a2930da061d779e10e80b88fa40f683a40d865725e4ae7ef4b3045fd3459e077e34cac939f345558d927ccd2338f8f037c6a5000dfddefefee24f3f0de6715c0d85385447a70d2aef6772f26e23f158f9af0131e6a2f967a5d0a54604b1769eee4390984a4ffac0172f592df4b04200535751135a732b7e6ff373057953014d35381e86e9678274630df9ed86e0b8ec93f1240305318fe889b35e0508214a6ba9e2e2f2c9b142932da60fb7929269bc3498c159e323638b9ec7fcf2ec09213535a1250fd49895f5a63c3d22b851239f5094aaadaf58e88ca8de975a1bae861439a6cb3dfe67e615fc1781a11327335fef08a79082794daf5cca4e9fca3bd60899800854b01c31de872f625bedc4f1b6d659584181b1da46b2fba689e622e255f05ca9a619a4fea28dbff3aa9a5dd84cbacf6ab630b855aea6ec6e9dbf95a4815ffba677af4ce6b418a4030b68607d5edb7e470faab648156cc2c152b21a381469473e3c0b174a7eefdd8eb4a47061b883123325dccdb54d8b50412a286e940224069810181be94b3b2ccbd40aabdef6aeee34bdf7c7009ca614cbce081a0810e42ac8082ea6f618fef92a302f5f54a93e261fdac80852add599c4b87aace0dbbac0585a04812f2dbf0185d9c06b24db40888ffc5ab02175debf3c4883fb8010de69a2424280fdf64008ab7639973933945a32dfe185823d78c4ebc78e12d2cf656fccb603825d81feb35e9246a5ed678fd2ce6dcc12c7f89a7004f32f4a3470e040bfda9f6498ce518f8901261521847b64e3350d0a5fdce53e38cf889f79322698c826b489c4836b383c5a06ebda047b57454b3c1fd446ee37d7ffc2be3b4b290210aecf24a3f15d7c94d29009d79b0a66bf620dfa6c84070ff04da280c244fec671c6af6b8dd969e772d056ab8e9496334baba49550a991613873f6e1bebb432ac0787c744634c1ee060121ccc8d35543b289298579c4f2a6239139f74e8349634f85a03068e4b01b6d8891bccce4f80c0d3c404547539bbabdc1f81b21242c4a5557bdc4092a0121304adeea0609141ada0000000000000000000000000008141d1f252a
+flags = ValidSignature,InvalidPrivateKey
+
+[publicKey = 2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000]
+
+# tcId = 73
+# public key with t1 component set to zero
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = 0a4133248382bb1fe24046be1eb9fade39090c9428222eeb9ac835c76ce6baa4c40121b2778514c711ac2981d174a16b000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000800800000080080000008008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
+flags = ValidSignature,ZeroPublicKey
+
+[publicKey = 66239a16589a522a029a216a75a70a5b1c9c49b6432bff6e4be262d4d999c01da4eab195cc9eaee7ae840f2917dbcc0218e6439d2d4198bb0db2b0e73fb40bd1d9daf16a524c0311c9669874b0a175d8b10d5564f1af8007a1b852d1576231e77b19b7efa5cf2fc8d3869bba336b205d6a3ad7a65fba36962ef7ee3aa290efb35760bf9fbd58894c0b51bc447c503245cd5e62b0690eef1b17486080a2e5d7f354225abcd11d8e8165f7bdea98cdc9fd887193eee058913255982ab3a22ba1db732e0645bcd3588a8b3c18bd929771e5d9022c383caa1b998eeb5bc36c01936237d703e283caeed671c8151f6de810be4d22daa25a862ac16a622c4347ec92c03d6f12587cf5d660cecda689b0ee75f391aacc270946a36242837961723a99e279e12a04a331a0511b021be538dee6088288b69494292b7756bb8b50cd14fb583b64dc1b5ece98f6389ef07eea028bfe0250320c12a8e24a4afd83df9a178ad3176aeba108fb3b102313a03c9a75e1cf3f7ea6094c2fc7480415672d4c36826435ffb2332307847f1a408685decfa42ba62c9adbbc995aab75ef5a45adba5ea611783b7e9d70002fc1ab1882184fbea63d55ea407243a4db96d696ba1cc5c5699d87bb2e123f9505a030137329ecaa5ffc08f6c258fc6656f2b63dcf7282bcbba58fd11f3cab395c488a429a019c486242dadeefc6352df77aff70dbf02551945c3f93c76740e63f63aac39a26c55341d14e8dcf3c48be7f2abfc5a0fa7d15561b992794b9ed008962b1d9b163a04045c5f6d070194ebfcc770eece4705aff255cf58ccf8b648a56aebb125ae5c4eed5e3cf06604b1f66fa4fc758975ff7a731450ab17d3dee55986dd26448a6ac61374e6ce22d0f7c7e40c2d6b9bc67507b6bb673671d853fe22ab26f555cf3b27c255fe0796922751777764753576abd8f244711020b4a576b620ae433b79b87d9ee6616f91f2b4a88366c78e6ced025d2417db695e120d11baa8883eb3f8207a8d66b61fa34199cbed90dfc640241470deb788ab80b3e4a8383bb13ea34d7fbdd0ef516aa5f8426d20b166b1b05d56e2da1554bcc196225481bacada7564ff59f16291eb0810056e2bab1e544379c2ec7f7af958aa7b815ddd2d254a066b4e35bdd4bf5608f9d3eb54b1660156936248e71915879a3e3df88a373d43f7595ad166bf9e84b6a05531b70d891234154c7e3725ba363816532b270595df2463b1b2a67eb0f95c1f6a5434fd8595a3062b9ac92a6352780c7d078fb045831bd057dd49772e4b3db9806139be864f6bb8d189b2ca06255db60d8c07e424a740dd30ed77c177f526d82cfddafa05ee5cf9cbe3fb275589eff005b52005f63da6dd6b1d39335f202af6d058b5caebf29782a22549814c1921ec1ca21805faca60e434b0876754249caa34b21903f874df5e4548ad8d4bbb0bb2f05ef377b1c8b294af53c7bc696353a850ec5c33c9460872bfec382ac0392b9928bddeba48d24819a500a4750d49c8eeb9e546154b5b8262ea59f7cad16478243659b246740ae61c96e4c2e0213eabf5019040ee9369428f833fe4163d54ed3cbdc5fd32304c890c34dcff1d8c3b9b66c40a13a3c21ac0ca1e69b68361a0564743f9f32c252ca370e56860a154e4033e5fcf63a6cd1ca64deef46164286eb788f87d9ee59c6899ab7aca62e3698639464abbd9ada4023b87f45f1ee05ea2d5fb72713e9aaa91df5c483f54cd19eed9408b94c544af3f3758a6be0933ee3c24edc1427cdd15995cb32b8ec89e032ee949952e6ed7e941c9943e0dd486faf28414a0795eb502797d8a7cf6ca3f051eaaa5d7fb20e86a72bd44a97af6dcb41e37ce33813f0c8f17a6e4d2e2ea506811083ad9a93aac235d7fae01ecea29747bb94552ed1bd581e86cee23c4b7e60b59b09be4b3856116d7f5f605d648147371117e1baba9150baebd49c624afc9a64dab54fb0adcdf7d6d84e64b82942b114a78d824850d6b8719a4b90f41db28b51f351d7059549b0427c83e629ea838cc141f88cf041744749c41cea2bfab0b72b68c355bfad32bf426515b1f675f08b23f8dfe09f103272de8f00c16741163eaf1e0beaf3c3b02b3f729d4fb94aedfaff3c0cad893877cdd0480e61e390ac74fda52f2370ee95092cf24bf71ab46b7f5200b1708e5119779f3aa68ac163ef7999d9a33bf627d15f5fe18166551ea2a5aaca0655869f02ca1cbfeab17e3a2c0b34abe0092f154975fe890418ac191ee6dcbf72e489ab861393220a528b77cbd0de2599efb5b622475142d223fe4a3c5ca68b003766f84b8a3cfcdad05802d287ac4b4d4274c2aef41eb38bbd2f2e5ae9a65d138da3ae32b2dfb33f836b9220db288902dacdc1af9f65f85d9f6a8836132c258475f2511b19a299094f03b5abf4fc02b489efbd4877298d521be2dcea7141f291647ed63f0927710ab816d60b8d72002e95b5d77c0a5c10c346962d06396cc521ada3b3550bc3b3d4cad602da0ad801246d91d33237283d3e50f0d52912b99d9de026be4e84bff5560b9bbe615ae567a378e34c922c12f38d8fbd335ef64944597e591cc3b95b7dbf106646d45926dddf46026d3b4de890f093f03abc77a0ce697cb64562a676d93710d144dee2aa22ee7f6c7cea94b78e61f2c228644d9af00200afecca9ff44c4cccc5dd6f90445deed048edacc3565bda5f3aa1177189f83bc9fcb8346a20d39a90def25525e1468b25a59161108108220a2f6e25]
+
+# tcId = 74
+# rej_ntt_poly (sample_uniform) requires 5 SHAKE blocks
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = af2040f9d90996985b6efd6a6ef90c465369a9ab95efb537c85f137d528d26ab7a4d5035efe5f734341775263e3b117d2f2c5544b0ffffe4f548c87846deb2d34af083bbb07e3c358fc78bfac471259d87043094833956eb4d9b23d1acbc7efdde13ebc883290783e33d743bb10a13bc8eb2a2e6ed552d8a1780055b36fcf0987b032487ea60b8f51158016982cc2aa49318284d5e600eb36c405d62ac7d6c32f88b1f5d41f5f8d5bbe3393033c51a95876c0f9c2124d6d87b98634a29269be830da07725cc8621b64480492af23c67aad018e44c2b957930e36171d1ef3cd6311cca9ad14e1c58a7d6ac6d2cee66319faab0b0c92533a1bb98eb909f5feae67c16e4e29da9be03daf0092cb2ace5a4316f2a6781109c19c19e2d38631e0aaf91aa27c8b82c8def955152bcfb7b2df0b2ff0b04105dfa209b3d9019444685054d439ae117c6f50faceefa46dfca10bda1213237f898143d42c9f83bcc9672797d4a03094431567983c1d8e816011bc4e7190e3f6555fe9bf77ad61b8415b52d2a36c62e5f9368b6fc0e7dc5d82c682d46cd189abe12d933a783fe9f4b46f87b705d0c90386efd551829fa995942af1bdbec31cbcef50fbdbb7e76615dbbfa9ad581b59aef0c922a69de190c16e5c4b0a3d6f0141f58aca58965e100b50163beb67f9c57ae8e79ac5aabb24bcd3600015cc65cec80784c9d05874610350cd01ac43976276f0ca6163d99d495f034cbdb9e39d24efc1ac9013dcf380ba1cb676a6af8282473868e61ff4f0b13aa2325aca910dcd767030b2cc5e44fa7e17c32786ce7edc9a432db81d6654830a16b3b4e37c12617898d5d2b634fcf250ffe545f4da5a289d470dd4ebac4362ec08ef04a31e8021a8c760fbff797773058ed11d71511b5d95f0019240743ab44527db4d613c2759357c291e7679d06c930ee435ae77f4f2d13c4e767b7adcc32e373efdea94fb70d6aaf96e64b28ed4fbca86ff1bd2656e392c8c4707e3ac6ad8b0c85c2ed19328b942f3af5eea89a7493ee8cfdf86fad43084ba7582fec07c1bb5649d5177a312d1b70f7930dc1ddad11396e5e315ac7f1d3047887a3a40a85d809f72b2661786e311928a6e61ce7854ff854daa170b9c406feebf3dc33656c9153b9f5e44aacc084bbec9c06e79a103f2544d6f5ef06e0f525687a10f48f9f08dff7d6f5b467c287fbe15b33341e3e44f8b27a87342f40dfbd20ebc214eee221115abe3f8620eaa424a59c7fa038d8969a5a95a6476e65820afcee40062e14d498544a3ff95e308afc39d241e1d8e403fb0570e2f6242771f20de2c792b6bd2996e1214297b1fa72c6843cb4f7d0196f9a40716385a3a5344f046e33e2fb089ea1f08340ccb563373795aa3e2fef7a8509d7ca174a5b6cbba90a56d743078bf9dc37fb7887187d6b201c5b6cf0638fc3e36d1db8611c468c04447a4b670a5cb55d9178a3ad2cd7817fc01dc8063161a1f9d460c831208691f30aaa4b365f074c601c6ac29056b7dc2279ae6e6467a7c2476f3fc041dab076fcfd5a9681511283cc1dc59ecd5472c99d8b8e87e5392eab30d25eeb40cfe4b7e3158d307b690706c59eaeeba9bcc6cf3e7081847789cdb83c55a3fd77ad8952566cbe6afee69a11774f10d9272ac6351b2c086a7fba26bd36ed0ba252d7b42943185235180beafb9154c93b5f87fb7561b3cb0aa3964a5d0aa4925ed09c90c0c18798091ba0aec63e3f48bca675978050f201aabfb34cc6f0497b773c2daed9178bdec949f61fa267a83dc796af329bc15d38994135fa2c97d0f805807105123a76b86cf9c82b8879450e942574a5fe2868e7131fb66be7221b4fbd25e6e19004533b6a3d12e91b058eae18318d0a5f324b0f9528a3459737af6e25e8d2179856ef0bd9f9de025e6afaee1ec49e8c98f9b96981af3cb1ca1b1740fb6dd86d48f7c6ae9e8541dccddb505a4765dc5cfc2e3caef4381a237ca2167f263f3c5f2db11eafc52b21a98d9c54619ee5c24cde5dfc8cecbe5bd086ea2a5d6616ccb47c0451b24019373edbca55bf23d1c365ad361a21a1928d72b4c8061d5cf88a956eeea3fcbc80609ca751b5a9004d887102e93867c4ad70f09105a666c3b9a575af0eef9799df422896ef11ad1281ec0032877520162bd52d59351e70fca453e4f2c85b23fc154c2a294b1d5ec0019c7754215efbabcf82c1e7f94d5873c0a4e3ff121e64c85b83bbe94bef011d9a9c8ce9ca692f177f7d0e3f499d684924dca2a653b90b9ffd485bbe88ed87237abc4ca6b55c3b71850a34dcfeb1d3efec5c83074bfd9630c308b8d94ddcf79fc813380ea7426fb10b2b461281bc38549a38f280bb2a3032c67fcce24fddacd8683a1798bc6cfd6add30c7b2dc9e04720f5149e1b1a6a39b4ec08a0c093a67987b7dc320bbe43f05cdafc74759b87cff4731af336445993f685ef5dfa3db636b830ee33bb45c5f51bea8ee5cb9ed28a4176140eafa2c0ef593b40738b9857f8ebfef3d2930387a11dd5daa630b8fb5744fcac692891e8171f3ff0a08ba5ac81cae0cd62a364f1b51caa4aab3085acb56a47cd75eafe860e92a6938a9205418e39bbaed6cd6fa9576906e17c57682b755314f437dfe1efd5c56f6782f2a8fcd489f4fdba794b452c7ffb45b9325beb72af3e2e77f1a3a816b1e5fd25d5e3864d90197dedda58375ec4d78c7302e787902dcbeb173f43da248ceaa8dffd1ffdd23324c4dcb1346332a70dcd08090954afdbd27cd3932e9acc2e9c889c02826bef84d077ff066ea06261601a9a06e5f3e8b9732821b56dbb2b0fe476ebcedc4142b9c8255c2fdfba17fa5c7e0ddd976dd0c9e5b1420aacbe03e34d8846e8bf17f79cb82038187db482957e6c054d33ef5b63937b7f64506dc384a99e47ed4eca348fb5b62a3639b84897f17b782b02131688a75435caecbcf7cc0bf0a88615ecd2ab7af31a0cb5ac6c3c5e3c4696e4b10b9c9f4e3323cb1817b2e175dff035fa36714cf95f8e151fe712bc38939bcd47b50fb202093d297081579637fa97dc8a0690efa7c2ea071ba4d4e1896387115001276d3cd28fb6217bf2ade25f2a3eabb81d08a68bce79a58ba971dc1feeaf248d47bb20dc93a68e3f32d19658cd3f1b7bb2c5d798d73025174ae8caa6d8a25f1e0e3bcdbd90a2794ef9ae032005b6b95b701c6122693a12ef18dce8609f3a48c32cf79a0d04f94bb4a6b74454e09c0f253539b185a7d5793e05cbad6a7ddd79d80d4e48934bc2e610f7fa49640d2536a0409aee11bc62b2f4e8070ccc59038dbfb7aa2b17acfa7c841b7d943c82d6efef90dc9349a3bcccb905dad4a3beee4e867581cfe8c31bb2c2f3f187a408d16de3737865954369b41c9459fd7cb3b7ef86d3cf5cb1c3ac9b90ba78049ed35470997f15dfb8c2e02033c21b8f5bad83b842004b43de82ff88df93f2687e67467990b61511af8119c0ceb6ba255a22c7479dc06036797a27067790e3836c481cf904f9f6b484f67561aa3ce9661f95d8f67a5028b527d7d530aa1b92c6a6f344b9de8286bdc755d1e973884e402cf37a3294a873a93229689f9c5018aa151d53e4fa78aede7ebf374259ab131d9695c69232bd2c14aeeea9c1b53635b733965f391d1b1d313d0e2ff7628398011fc95d52b07cb25f8404b6fbca17362422235e119c03a1db85a6d27657822b17adf9d591dea9848e748b6ce07a28d830059700d64d47490bac5a94010618ca03c1654e81a01c4a6d93d86115f16d620fa63da2a7605ce50f97e56a020bcf22e716cbd76354e9896a264cadff5d367de89d8bb48999d6164bd8f7648e4ac0bb5f2652336e72b445f6f0232920d7a00eaa25dd6a0d46d8883f48d2b2c10b72036c6904d4d5d093f913ce625922a146f4e7c908b21a8b8939dfdcb275b5fe5b52ab1f446a4fd2a4fcf5a4bb1d0c9c3c550e6f5b0aadc4d411e87eacd585ebb8c4637f9c185cdf7b282c387ad49f8bf0b3f8c2fd63f9336c0c8c4c708b9d3fff0598cf134a9d205914cdbb3802f0eb5fbbbbde18e0fa2ab4bd3ff2005f04dbdf80ca25e08e408055ec2abd1a345845311dd8dc10c3ab128c7389bf2a9f06184651fe332201020f711bfbad269ba8c9dd749ba727169c6662e319ef0013c97c9980e1e0cd275e6bc51316f0f83a57d784c639734ede4fec26e670976415b7dce3eb197540088817bebe81f361dc992d16151b8a38b88ae3fe0fbd080a1264a4a73526b01e34495e411aacdf4ac1c893f668bd095ff65643d42783a758f8f712b906f20f284d89f6efa1453ae06dd0357297214b9ce7944af4f40e3ab8817b56f1bd3fcadb9d9f366d34271fc3045f05ed2eab57aed068ad6110050e64adfa066923baa566d9c2898b2c53bf378aafd2b21feb94873fa2e65496f69f6f94321590b43f409947e996697bd93f03e3337286110a262310e0072bf62355b84099106885a05cc1bf929a42125b337a7ced1ee2ce0f7be5a68f82021027761c3bcfe134e5b554d7f08a709a180d779152f7c85eee0af248d43631edbb845a1b4a27b09cf8c69fb1694ac69060562114daccc9ce702f6eee20398c04434471777b9fee2067a5aab0c160c3cf3d5a71797eb3de000712161a3150708eb7c7d0e8101f343999bcc8d8ec000000000000000000080e1118252e
+flags = ValidSignature,ManySteps
+
+# tcId = 75
+# expand_a requires 150 SHAKE blocks
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = af2040f9d90996985b6efd6a6ef90c465369a9ab95efb537c85f137d528d26ab7a4d5035efe5f734341775263e3b117d2f2c5544b0ffffe4f548c87846deb2d34af083bbb07e3c358fc78bfac471259d87043094833956eb4d9b23d1acbc7efdde13ebc883290783e33d743bb10a13bc8eb2a2e6ed552d8a1780055b36fcf0987b032487ea60b8f51158016982cc2aa49318284d5e600eb36c405d62ac7d6c32f88b1f5d41f5f8d5bbe3393033c51a95876c0f9c2124d6d87b98634a29269be830da07725cc8621b64480492af23c67aad018e44c2b957930e36171d1ef3cd6311cca9ad14e1c58a7d6ac6d2cee66319faab0b0c92533a1bb98eb909f5feae67c16e4e29da9be03daf0092cb2ace5a4316f2a6781109c19c19e2d38631e0aaf91aa27c8b82c8def955152bcfb7b2df0b2ff0b04105dfa209b3d9019444685054d439ae117c6f50faceefa46dfca10bda1213237f898143d42c9f83bcc9672797d4a03094431567983c1d8e816011bc4e7190e3f6555fe9bf77ad61b8415b52d2a36c62e5f9368b6fc0e7dc5d82c682d46cd189abe12d933a783fe9f4b46f87b705d0c90386efd551829fa995942af1bdbec31cbcef50fbdbb7e76615dbbfa9ad581b59aef0c922a69de190c16e5c4b0a3d6f0141f58aca58965e100b50163beb67f9c57ae8e79ac5aabb24bcd3600015cc65cec80784c9d05874610350cd01ac43976276f0ca6163d99d495f034cbdb9e39d24efc1ac9013dcf380ba1cb676a6af8282473868e61ff4f0b13aa2325aca910dcd767030b2cc5e44fa7e17c32786ce7edc9a432db81d6654830a16b3b4e37c12617898d5d2b634fcf250ffe545f4da5a289d470dd4ebac4362ec08ef04a31e8021a8c760fbff797773058ed11d71511b5d95f0019240743ab44527db4d613c2759357c291e7679d06c930ee435ae77f4f2d13c4e767b7adcc32e373efdea94fb70d6aaf96e64b28ed4fbca86ff1bd2656e392c8c4707e3ac6ad8b0c85c2ed19328b942f3af5eea89a7493ee8cfdf86fad43084ba7582fec07c1bb5649d5177a312d1b70f7930dc1ddad11396e5e315ac7f1d3047887a3a40a85d809f72b2661786e311928a6e61ce7854ff854daa170b9c406feebf3dc33656c9153b9f5e44aacc084bbec9c06e79a103f2544d6f5ef06e0f525687a10f48f9f08dff7d6f5b467c287fbe15b33341e3e44f8b27a87342f40dfbd20ebc214eee221115abe3f8620eaa424a59c7fa038d8969a5a95a6476e65820afcee40062e14d498544a3ff95e308afc39d241e1d8e403fb0570e2f6242771f20de2c792b6bd2996e1214297b1fa72c6843cb4f7d0196f9a40716385a3a5344f046e33e2fb089ea1f08340ccb563373795aa3e2fef7a8509d7ca174a5b6cbba90a56d743078bf9dc37fb7887187d6b201c5b6cf0638fc3e36d1db8611c468c04447a4b670a5cb55d9178a3ad2cd7817fc01dc8063161a1f9d460c831208691f30aaa4b365f074c601c6ac29056b7dc2279ae6e6467a7c2476f3fc041dab076fcfd5a9681511283cc1dc59ecd5472c99d8b8e87e5392eab30d25eeb40cfe4b7e3158d307b690706c59eaeeba9bcc6cf3e7081847789cdb83c55a3fd77ad8952566cbe6afee69a11774f10d9272ac6351b2c086a7fba26bd36ed0ba252d7b42943185235180beafb9154c93b5f87fb7561b3cb0aa3964a5d0aa4925ed09c90c0c18798091ba0aec63e3f48bca675978050f201aabfb34cc6f0497b773c2daed9178bdec949f61fa267a83dc796af329bc15d38994135fa2c97d0f805807105123a76b86cf9c82b8879450e942574a5fe2868e7131fb66be7221b4fbd25e6e19004533b6a3d12e91b058eae18318d0a5f324b0f9528a3459737af6e25e8d2179856ef0bd9f9de025e6afaee1ec49e8c98f9b96981af3cb1ca1b1740fb6dd86d48f7c6ae9e8541dccddb505a4765dc5cfc2e3caef4381a237ca2167f263f3c5f2db11eafc52b21a98d9c54619ee5c24cde5dfc8cecbe5bd086ea2a5d6616ccb47c0451b24019373edbca55bf23d1c365ad361a21a1928d72b4c8061d5cf88a956eeea3fcbc80609ca751b5a9004d887102e93867c4ad70f09105a666c3b9a575af0eef9799df422896ef11ad1281ec0032877520162bd52d59351e70fca453e4f2c85b23fc154c2a294b1d5ec0019c7754215efbabcf82c1e7f94d5873c0a4e3ff121e64c85b83bbe94bef011d9a9c8ce9ca692f177f7d0e3f499d684924dca2a653b90b9ffd485bbe88ed87237abc4ca6b55c3b71850a34dcfeb1d3efec5c83074bfd9630c308b8d94ddcf79fc813380ea7426fb10b2b461281bc38549a38f280bb2a3032c67fcce24fddacd8683a1798bc6cfd6add30c7b2dc9e04720f5149e1b1a6a39b4ec08a0c093a67987b7dc320bbe43f05cdafc74759b87cff4731af336445993f685ef5dfa3db636b830ee33bb45c5f51bea8ee5cb9ed28a4176140eafa2c0ef593b40738b9857f8ebfef3d2930387a11dd5daa630b8fb5744fcac692891e8171f3ff0a08ba5ac81cae0cd62a364f1b51caa4aab3085acb56a47cd75eafe860e92a6938a9205418e39bbaed6cd6fa9576906e17c57682b755314f437dfe1efd5c56f6782f2a8fcd489f4fdba794b452c7ffb45b9325beb72af3e2e77f1a3a816b1e5fd25d5e3864d90197dedda58375ec4d78c7302e787902dcbeb173f43da248ceaa8dffd1ffdd23324c4dcb1346332a70dcd08090954afdbd27cd3932e9acc2e9c889c02826bef84d077ff066ea06261601a9a06e5f3e8b9732821b56dbb2b0fe476ebcedc4142b9c8255c2fdfba17fa5c7e0ddd976dd0c9e5b1420aacbe03e34d8846e8bf17f79cb82038187db482957e6c054d33ef5b63937b7f64506dc384a99e47ed4eca348fb5b62a3639b84897f17b782b02131688a75435caecbcf7cc0bf0a88615ecd2ab7af31a0cb5ac6c3c5e3c4696e4b10b9c9f4e3323cb1817b2e175dff035fa36714cf95f8e151fe712bc38939bcd47b50fb202093d297081579637fa97dc8a0690efa7c2ea071ba4d4e1896387115001276d3cd28fb6217bf2ade25f2a3eabb81d08a68bce79a58ba971dc1feeaf248d47bb20dc93a68e3f32d19658cd3f1b7bb2c5d798d73025174ae8caa6d8a25f1e0e3bcdbd90a2794ef9ae032005b6b95b701c6122693a12ef18dce8609f3a48c32cf79a0d04f94bb4a6b74454e09c0f253539b185a7d5793e05cbad6a7ddd79d80d4e48934bc2e610f7fa49640d2536a0409aee11bc62b2f4e8070ccc59038dbfb7aa2b17acfa7c841b7d943c82d6efef90dc9349a3bcccb905dad4a3beee4e867581cfe8c31bb2c2f3f187a408d16de3737865954369b41c9459fd7cb3b7ef86d3cf5cb1c3ac9b90ba78049ed35470997f15dfb8c2e02033c21b8f5bad83b842004b43de82ff88df93f2687e67467990b61511af8119c0ceb6ba255a22c7479dc06036797a27067790e3836c481cf904f9f6b484f67561aa3ce9661f95d8f67a5028b527d7d530aa1b92c6a6f344b9de8286bdc755d1e973884e402cf37a3294a873a93229689f9c5018aa151d53e4fa78aede7ebf374259ab131d9695c69232bd2c14aeeea9c1b53635b733965f391d1b1d313d0e2ff7628398011fc95d52b07cb25f8404b6fbca17362422235e119c03a1db85a6d27657822b17adf9d591dea9848e748b6ce07a28d830059700d64d47490bac5a94010618ca03c1654e81a01c4a6d93d86115f16d620fa63da2a7605ce50f97e56a020bcf22e716cbd76354e9896a264cadff5d367de89d8bb48999d6164bd8f7648e4ac0bb5f2652336e72b445f6f0232920d7a00eaa25dd6a0d46d8883f48d2b2c10b72036c6904d4d5d093f913ce625922a146f4e7c908b21a8b8939dfdcb275b5fe5b52ab1f446a4fd2a4fcf5a4bb1d0c9c3c550e6f5b0aadc4d411e87eacd585ebb8c4637f9c185cdf7b282c387ad49f8bf0b3f8c2fd63f9336c0c8c4c708b9d3fff0598cf134a9d205914cdbb3802f0eb5fbbbbde18e0fa2ab4bd3ff2005f04dbdf80ca25e08e408055ec2abd1a345845311dd8dc10c3ab128c7389bf2a9f06184651fe332201020f711bfbad269ba8c9dd749ba727169c6662e319ef0013c97c9980e1e0cd275e6bc51316f0f83a57d784c639734ede4fec26e670976415b7dce3eb197540088817bebe81f361dc992d16151b8a38b88ae3fe0fbd080a1264a4a73526b01e34495e411aacdf4ac1c893f668bd095ff65643d42783a758f8f712b906f20f284d89f6efa1453ae06dd0357297214b9ce7944af4f40e3ab8817b56f1bd3fcadb9d9f366d34271fc3045f05ed2eab57aed068ad6110050e64adfa066923baa566d9c2898b2c53bf378aafd2b21feb94873fa2e65496f69f6f94321590b43f409947e996697bd93f03e3337286110a262310e0072bf62355b84099106885a05cc1bf929a42125b337a7ced1ee2ce0f7be5a68f82021027761c3bcfe134e5b554d7f08a709a180d779152f7c85eee0af248d43631edbb845a1b4a27b09cf8c69fb1694ac69060562114daccc9ce702f6eee20398c04434471777b9fee2067a5aab0c160c3cf3d5a71797eb3de000712161a3150708eb7c7d0e8101f343999bcc8d8ec000000000000000000080e1118252e
+flags = ValidSignature,ManySteps
+
+[publicKey = e5824f0943ad27a943fe7b1d52b8a42f689fedd9c6b8df15a4d9a6484b06c9cc61aca2fcdb02f00a5700846190e54a4b2fdf5226bc6a14fcefcea7345f2d8b797802fd6fb47c7e77f8207ae53bbb21c7523e9f0e445219047cd2bc563a69e20ea9d8be7a1c3a410efd030c3949e91f186b6e1ee9f42030eccfb492a75369ba21355c4daaedfd6b8d0ea6d515801dac1ce8dc51db63f51981944b886ce97c65b8e8bf351051ada80894dd1ce6a7c2254aacf85f6bfedb89c9f2f455a844635dbcd02b95c7d1e461cad965262649e9fd6cc45c78b4709fc8099db6d77dc42077ce56a0a1f95edb138000078c5b9b61b99a946f043b69f55d4690f5c296d9e38d861b0c21af896ddca3ac874251583d8510448f070ec9df88ac62ccd0885e7a84b421353e46368b4c80ef97f498bbe1ab0ca9c1569b7864640076911fc43c3c9ba8032f3bb167e4a14ef1ca3c56d1fcb4fac92766d428cfa34f4508cac2a1a9e54e478eed6524fb13da3f4a46ed7da67e1264b6b496cd0a6954229e948b8254af6651d6ccdde15c7116f23e67082395f434a9bbc194823063f0dd36a557e1e7618027abba2058a7bcd026d172d80906a733711403af0d849f7331b35cb412559e3ab63fdf5e0e38f40d2548783db596d2d6898f1d70957ed079bfa03511537059eb70d75ff181c5de64dbc9acd3ba1e952f32e78404bfdc3ab3e7be1bf1ec1806be8e18529962dcf0935bc2a31627c0447b890eb38ac39743f276ebd972e091a0c288eb2c60db2ada783a461013170583d79580c3ce852f22e61be682a3fa8fd44c7907754a9c5c1e76d89e9c56517506689e4bed3dd1b8e8b67f4d7aec8eab7a6a1b9a7c88ef7a7e7b0e9b6b7cb6d2d9ab204493decf4a286f33414008e0b1b3d5d94ff4f2974e20dc06e6dff7994161df5f1de03fec7cd5659a8493db03ecb8eaff067a41179f85486ebfcaac722de4f970e6d755fb7e58a999bee25c6e5219390ae1d8e4eaa5330be6a896c6f7c1354c27f35ab93f0de784075637d0ab3f1fdcdf6777a54784eaf3b2e59588a854a3702cdb6d38200ee3fd4792d406051c977ea8f6e9f13bf6d3fac051b0f609f6626bb47e3d4d0ba2b21448488a0acba0ea2a7c5d46071b69b1090090e58c26754eecdfc6402acd5cdc07c455caa08a3ee3ba7415d40ae5224f95758d46b8d8c250c998bb0688cd00ff96fb93ffb49d4416213a160fa5a302e02f13e55eb2b26d2825977a21b5ec9a845598c1f8810a0f3f4692e00df09f2784c82f336c441672f38652b83ab18d5910e6939b972b21c091ac09d188218705813cd3c974035fe6b2802c9fda09e5f538ededc53d718d64ed43f9a07801052750a10b1c6125d0453ba7a4c02bea74a7d72c29acb1b84058678035c086691b4785b7230154c29590faac95aca0da04e5a7e6bd065aa650d463191a84ed6ad33076e09d2856c0e6dd82e0e5a162a415e154ad94b482c5da2ec88a2496f6be342f4420e33e05d8fd2d550db9b7a4c10c49d955c6425212f1942cb860f20f70f96c44c8c446fd15d670502d819005a5e8abc71583669efc8e3e60f3f9170d6ebde92042462148f400edbeaa447826c9930867eccae05f0d9e713eeadcaa287e1ad04502f8058178c94864899586c56ca12f49d5d880b3d6326b7bc9da30384fe38c43ab4a270eeb0a8824ec9541e5eb27243b747e08473ff5aa46beb4faa55bc5276ae49cd287d082dfc7cf991e5d66f4eb2c0942072930e2f0be76ccc6a149ce4edb0749b74e8e3f95c2dccacce6fda670ef9a0e98ce0e0b7f34039b74c28d435a0596858585200739dcf004fe4821e18ae722a057ac7c6362dbed968da53ac645d971dc37ee23639ffc302ef99ceb1cf12561626aa52168499e68928c569572af18b3f436ebbf60cc2c889d24569de91f1ed268b96fd19a07ed179183bc7d96fe8ef2bd04f2e4b81cc47d9404770830cc68bfbd98d9ca3e4f57caf256331cb188f0497c8ad1bc4420d1934dd923f5837555a6e1b41a8603a4f353f5fe149a3c0fab6c9a3a895cd489234f7ca9fa44567998d9ef63c206f3398badc47c9d9773e96bf59f976b32e0d46c12bb70abecfb67b30e714fe043dad6b5d52bbfe1b48c16325a808f8978ffce281d777885f31f45a9283bfdf1d467a1144c453a29eeb404ad4d5692eb9303de5cb3fca5d7bfc2342aba01d5f37b0c8782c5f01ec88d6f8d2d30850229d6c777adfac00972cfe32b55bc5fac95494e6549f59bc94c61456cb8501f391fcbe8308cb8a0874cfdfe645effcde0dbfd34f0f05f4dcb81c4216b5995d4164ebf7f8d071dd997d4bdc333c0c5889b82df1ed89e0951ebdd60eb3d17cc27895bf8c4e166a77501c85cddcc764c43dedd423aeff2b5dc848ef14636d99280dae32bb9fd1df67802ad55c9af75200c92d35418a925359e20624e8e0f1e93d6d239977248bd2f4a2f11d677d69f318f6b2e8da397b49ffc4501a10cfc841b6366377ad4fa7d084a039518d5ca598c892c98d6e58446770df0eb2ac7834d4b113a74f7271db891d08e38633209b4671c620bdc4ec0e37aa521cc16b3b230ea6310e5765ae46aace07ecd31ae99892e2d1047c30643f608371b08634241d6ef7f7c6b0783c898d3764634944b0d8ad448ad0b1e407ceda319bc364a811691129d3e893106cc570cd64e17c861181a70fdec15ff038079f3825b8a5e919761e42c02c2f5ccbe6bbccb981aa5ab1e2a2124ad36cc8370416b]
+
+# tcId = 76
+# rej_ntt_poly (sample_uniform) requires 783 SHAKE bytes
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = ade7527bcb0a6ffe2a2cf114e9d49d1907ef13a2eb3973f643043ac1dc03f88dceeb4217afee1203f3fdac54a13b6c44516c812e4818750e40612256faa649cca43f8a9aa4995b79af4ffa93c4478a0fb4b112deec6a100baa0c6270a00922c6fb38102ecc10df9ba0ab82c2aec27d546d8743d40ce9593e1c067c863b4732eb256be88f9329a2a105d7f4f9f8980a7bbc1fd2b8aa50c3cb8b15bd4d58ad2cd9182f6550d786d600da563537ba5afc711077afcf5f2ad27bcc885548def9c1865175aaf059dce6d3a623e3d40b1ce011e5440679a7567d0ebadb76b28fd9976f8245d2cc6b5b11789a5fd234136d8898f38fa54ab8587561c469c0cc60b03ddef90725bec23e7478942df433c1faeddbed06794d8e7e983a622b8602d245c7245e9b380301321488f904a99ee31dfa6c0c2418282954a2a8dd115d599f7d52a6a04d4f91b79d4aee5c9af7387faa55a37610355fbcc266050ea6912b81776746ec3c531c36bfe326d1976047ee7ace40e88e660bd25c69892cbc26da809cbd0b806808e19931e1d50a448f1f62b08269ce7d6ff3274cb88f6ed76dfe397307211924a23cc655474b174e8112be1b5ddd7f9639f4d22dbdf6ea48ac79767e605a733c2b4cffe2fd776fc7e16df770f6d69b527799f0e484862e298b8b82b3a811d5fa347bc9def3909ffb0cbede310f0ebfe1f89c1aa09301cfbfd3ecdea8e015df52bada77ae6eb3e4f1ef4b0b7197ac7b3348cdc6f27f95f6aee2827d954127c181945ebe05e564147a71a9abdebbffba31ac4db2d8dc7b630f48c3e2b2ee984f3518381b4db2129ecd17df588e27f5a4436b1314d4e9f3c50a10849db95e899a76bc9af091a61b1d0dd35ad75f33d33eaa1bcc1f3144320a7525cff7d4ecb2fafc8d4f6fa59ec642b847281e6e44ec3adcc67e4b10d01bec2d20fadd2d446aa9621937d51fd0cbd3e56a71eab9ab742f5db52510b0816916aa1efe1f16e97052abc39ec48e3ad2f0876eb9492f9249b20143cc62285488ed5d966292141157195c8a9d7b8082809aa0efa78279824f64c6221534fe517d18ccfd2a85482e716a043e582e8e95f03536026e98b49d6db3f78576b8f91a5107ef4f4a788a9b36d97e4baab8f9a32292a74099af38d79f45383664a41c0894044fcdbfff9677bfca7fb2b405d492a8534540e5310367a5192dd482359777e1419fb29a5ceb06d0ecee0723ea2f54dc9969e343876beb41ff8cb40a40664112852bb95c5a40c96afa5751a77a958c461a6d0e9a645f6577d624fc74f31a312ff6d2c8e3f5c7bcefd0d71e2950bdd5da7a5bc7ddae856f9d30ea9784d68293911421433f3fe963f70883ad6fa692b1aa6f01060340fadc0980c07111b0c829bf7d551d8557b7e211ac05c9657d1903078cb59f22be709db3fd9ac7bd37ece1e88f6cfd7b56af127e9e2ff57c46b9e27d2dae1a484845d873c8467be6c0c7bd1ac5bf860f2771fc2767b53d0132aa6c70990813238ecc663e4eaed069554fc35d91b8e826a239f87638e13a3ce82ee87f1283c2f64ee7d715fbaf03481df6754750212f941d159553296a11c3e5e99b23442a6052a1d13b433f74b04aa18cf5100fd2ffbd66088ec58c1d5799427d6787f7fa732d665de840bfceba5b78b6ceb6a42b5916cf8be83eaf5fbda9a4c92d3b3bde73321c1ebe7783a2f8c043647a8f59a2079f9e99466eb426dd9110c0ec36081019aba4d2421ba45d1f83ca4bd7c44b319557134ac8b973949e1b399b89f722d7e189deee7e3a738e760b1c097a7768af06d0f22de67bda64ad171dd8743cf72006d5fcc4f0862f4f5d8929bfe80ac40b0d82aecde6547ccc37f7c0427262acb1dc7af40147336af8b075df1cced5b01fc423906fe0416b89c07ffe69e9cec79a3221cd60726fe3e7a921779ed24453bbc286280ef05fe39557b1b529ee10ca0a3e54c7f03abacf589541eb02fb1d4e83db8da5fece911f19f1b8644fdc470c4d7995aa4858e462b288d61ae8f81b9cd39257e593467252cc77d77718eb705d332fd6e4d61c761da7aee85667f39e601f7b14dd7fcdc4a70e6aab78c7e429b9ad43fe959221eeb53a220899e3f632cc50db8632be08385bb79466e63ce406826ed24d5daa9dfd91ef0650086e8f67ec03e11e57ce0df35a87e36363731d5e6a129c974574c28c032492fc2fe450ff6df857aa2d34f88d740026c5dc69866e1818c6ffeca589da202db3243652d092f670b173b66e845ff249e0b69237cf6d73a8d7b6e3cb3c604dc9c1f08c543a3d532373c482a08b957fd77b78779742f7f180bdc41510a5c469afba4d656ef633540c4d55f3a08de2bb3aa13dbf72454bfa02cc15f900c9909983bcb89f465bc7eb9a9aba456c588cf0ac9689a313ca4891de90921eaec7a6ed5ac7271434772234d889382b32c6cfdfcb2aa6c4d76104ecfc3bb71945f54a707cd4851c7f502680c9f74a2ff6475c10728e843e6668f95f7f25b3b63eafa8586518819cddc9f13d7d721f00e4843ff9d6b00878b024a9368028bedcedb0f8ba9f75ba837bdf23c93d4a3257de45ba05995996821c862cd3c360bd39ef1c05ef3d64f3597688dafac2418f40bf97be693099854a05ab906a94640a395e1aec6abe7a91996896276b58a1fd55d8d2645ba1901f4514bb8af173e5e95bcb4b635ec2445e4b6205f711ab0cfbc3f8fbf8bfec533f746fd7acedf11b4a66f371a02f42d1f8f7c36a4bf5f100cfc665361a1d4e3b6cf3f1b51ce6df7543fc026d7015fb973f8921384fb921b219b7d59916168eb0d8db1150201941ebb608a9a34ac99df89371971f3921873041df22274e23ba378dbb14a1d67b865101fed96dd037492b7b73f0c8f2155f6b07de6dee4365065f71f9af7cfa7904e9ef5b6a417bb19c0edf5a58d90ac15d536df091e1e735ce641c7977e83455f0d4bfbce191f71c139a02ad09da5a71669a845986e5cd81903bc2fcf87667a77511271a22e400ee8518348357e594d94c0b9c80b738464393eb314c8eb9cacd422ad674b6bb3e86488850663a4ce9b996124515acb2b941db207ab42b2178e88838aefbe786d031e10409d0dde8a46e1f10afa41952adb8eca07f1785b7682ec2eaecf58cc5d2d6d8e41c86bb6190c316798b5f7bfcda275c61c3e65da4caa99dded9552e677bc97e9804878077af17b23430c7de12bd6f6ce103d8c79bbc761b94a0e98560c442370fae8b13e73fed4c6332d74ae4fadaf025ba3a3e3b91ca42be7ca07c84adf1c18e9d844c2256b2afe65354c55e7ac3bbc4c3700381ecf945bd57b4fd85cefde464cef8fd7ede5e16d83f770a20db982ff5632631d1251b00d443b0a8449dcbddc5bcc0b2a531a1487383b0782e3c42298c30202ff5f0cd0120cf8379a7629ee913c7d6feef0b230801c1eecf65a41fdf10297a9d11d9af6d275b2546246313ea3146f62e842b98cfa63f635673f76fdfa974f1c4b9a9f7180f5fd821c5cbc06ecae488f47b1a16d6300b556ffa37d22a039e884bac33031682e30a4f37ed4a20929070f68678cfa7ddf07e85af564281e4661ea8f6f5e7adf61d0faac9fdfeb743f46321d715bf5c1a0d3dbd73f6b694d0d54733f0777e10277b5166655baae53d50bb6ff5dfdd6a8314be5511c82eef8714aa3b6f9e0001085a980f7f9b4d7a647a0255b985706e7f2a40124a61dd8cc75b23957d377be6fb791e9b2eed408cba754ad47543a788a1c86d513d13e805c0c516d0d2d7d7227a84d3fc7dbbb12b346b4f14cfcb1b46c562fa08d5ef181de0232792171a29682d12fe7aa49d3056b475df44311dbe4bb05f6d139eaa69d63754e82ee1fa8fb2c943589952fb05dc8a3566c5fc6ffbb135badf57ebc8c97c90ed22ab381960a54d9c4815744c144e270180d09c1afd13db0aa5dd2849c8ab710a5deda647a1f2ea7488ad56baddddc131711b0eabc2a954a551d4e488c339afd7b50d0fac25eb3f3b1d0a81db4678202954886a2863e50232a5e8eb82ce53c72f0566841ca10c724621cd1322b80b776091e31868bccc5785254adaa93c3dde4bffe7e3fbc520fcde4247e2dda42dccedd33be150140a1d669ca760d2cf52222f042a518a0486dfe716d76dfd363573eb2d012dee8b23cad281c6f85f013cb16a8543433ad75afec14d50585ca6077e6a44b2ecbb7c70d19dd42114c5f5391c193b5fa492848e48760f3e858a2f3521fa0c8ccee73d4d7a051b7bac09d8e91f8355f591f8555f1b93dfc673e61cebc9a7bf1327baaac3fea44ce49e958820e593695b06574feb493fea7bcd7464747ae2f16c0648ed9f285d72e82e5c178a1de77f918681a5161333e5612167fc70c585da49d32cee28ef9905efade611117a76279fc791416ad88c723f289d116917e1a9931cb3f8b8b0bcce64cab7006a793340c369b9011700e352b358fdc9798e2c7c67d4891a1d900c9d84aa435481c62d2919f360b4fbab4e2424dc11bcafe70fa94926bd07f9ffeb3d3b8411d9d87193d04f39142db168d435ec83bd3c3d0f8da76694c6c770eff8fd9588a369e3e299b37e221bb48d382ea44cacd11021597fabb4cb050a1b9baacd7e8c99f96674d3192b565f010e27747b9cc1d8dafb000000000000000000000000000000000000000000070d11141822
+flags = ValidSignature,ManySteps
+
+[publicKey = 622db4b1c15f5f5ee55e9911432b2a58caa5bd242a6f38a9e2d9cac83db4a3991aef762a57ef2951187e5b0c03c0fad65f5b3ac69243a5833816f00795d125c5ab25129464d3a77dd145b957a5420f9e8bfcb6d639b4e5a46a101fb96473d2e2bd9d9c479141958fa8d52a3e63d3ea668b9268ae24e291a494caa1eda447426cf391fcc84d076c2df829b2bfb5fe7fb2182460684f94340ad41e7b7f5660a5c6d9f6e38adfe7086c45fef3dd5e66f7d7e032236774c52f8c06f3008b183d979d06fc966e34f526ff8efd86d7dffec406f880471cd5af32134fcaac7cd8caa23cec42e589c7e859db26aea52a732bb48d066280677442b640889cbefb4a6865500d44785ab33c8e74eb82d13e05a87897c022ac9614a41f04e4d8a4c2b22216cfc10fc3b8b91d63fa1b74ce44983a04c9fea3e77897c1e3d1fd08a2fde8e68cfc31d57f7f156da2d33062a61fc96db4cc7a7cbf27b91bd93a56347a672f0f68bf44b9a8ba6e249e383644a2487784b5915d64849b2f4644d195dea5c2fc999a8eda3cf68b750960cde5056750a3fdcaae514747a4bcc88fa4e1abf63d5da5975800e97510fe450715c03d5029d544cf9d41c59a05ae9157cba73c9f02ed8296dc1bcf8de8d0f992b0e043e1b0eb83beb0418bfefc26de68867a35b409be773dc51033da3aa784fef4121006296c208c137d0ffc48d3ce9e9e6a19c48b390d4c6ddab012eb919e5630a273ae6ad1c9faaf9e83e93da948e1691084df45e239afaed3f1d9731fec22a91ab9e5bb364f000c171bbb6ae088382fb1adcfc354e94393ea0db44db1e30acbe52a49db521a8ac79c16b7559d608f02ddd8ee514d9e2ccf0740c19e6107acb72657002979af90c2d1d0f44bbd862050405b7c9afd5b154c68a5653c3a984f4d14d06cfdc2043a2226e5f1d8bcbfdbea856dcebf7aa3759c38b1367dce410044a57058360dbd279169dbc1d5e8b7940a857968bfe0c7a5db696a23806070a69bdab657d3217b96cda7cec1a274629bd2f4c88858dbb0446df2cd895ec57521becd5177c826ad0f1ad54ccdc5c3a63456a7cb39fc7017df70390f55c96502b66ea69d7c568546b24532f862db89a0c3be684b8a3b0ca52ddef8482ec7282919dfd326deca6a4a466dce14c629dcfed5a50118e870ac6a807edb4deb08a253fa7bfb968814e02f820cf785b927db5a00d04dc51b4ec9af2448d9651d8ebbfcfac601bc1d0ce4cdd91be785461cbf8590aa1fc8fe9994eee45ac506b5e87d693fbbec2b0f09144118bf2bf38d7e996b6d40a51b8585322e2b31e386ab45c03ff843a04ba987fe5ad426dfd291019100f84ee42b399b0d93ce8d6d1f6b0c0eba3cf3a9f8206aca86e50ed517f07246517d6d434e5918e96b1b0cc9506ac9cd8fc12b9afcd49c9289a0b28376134a4ccf9aa89086cc2a4997729ac99a8157eec6f1e1264d60ef4a0c07bfbb945e6d7a514366a036dc28d1b934a8aef657319a9f199a14bfb4e452b990825fb95987c0046855d6ea7314218dd4837fd23652cb6494a5a989ca5f297daa01132775bf3e6a08a717a2f17638082e499e6cd859ef564949e15900701fb83f8afe9f9f2cc9a6b9e5eb363651c052edc02e973b4ad4a4a51faee71d3142a67fdf20dd7b77344d0dfa04643a6a921f03436dac9b245fa6065f2b23e7d3f0b1f9acd61ef6d68d939802ba0d63cbbf3d7d8c9d68dc40ae395fefafe624e76f51051fd01b53bb881b99929d09e7bd718c6750e179c3e72cc53e5cf820c1c8b0ca8459dd103deae592ee59b1fd40c408bbf5aaf3f9daba04441cfe039b7c03e52a582ad8970862e14a00c9a637be2078b8550079ddcbf14858d98e69ce375f1d40866c2c3d5abee04b06330bc764b958a0e85981afab11ba6cd8cd4b3cfa319444013daaf0ed9bccd64ac258357622e9b21e17a06d863ae9950fbf8d6118eb4371e04194b746a9efb5e1a3313f63f7d4b9b06893ac53754bb6fe323e12ef760c05c3c4fe3a03db518ba03447f89982f3f57a51a556edde0e578ced15f28779d3cee4950b0da6ad35bf4fdded4f22f0c409956ddae098553414ba2faabc4fe3cd550abe9d4b9f8d04468787a2ca50b47ca67b43eab5557a6652fc722c8790ceb93e5d494872843976fd5593d2030a3979d508228271f4870c9cd517e69bc2cd4624a3ed7d4959061a3e26319cf5bf9f4645cabdee1f8f03966937614b7a94ab7ca28ddd15f1a267d1a4caaac5e2a4b0079092e8ce9507f524044537c520b84ce0eba7af9b1c3a056209fe16ac15ea4e3c1a3837f08ce2b86c135a4a1ff78665ad76df0f0da877761fa107e86a23ccc08ef5239a365dbe1ae3e33ce531523d188438296bad2fffa43491d8c164404ca5a22e01cd2d2828d89b0e3333997f7166bc4643468cbd392546a0f015454b8cbe5a82bc92fe168c05124e809aaff0bc946295b8a12e25d2899a95e4fd57733eb0ac67c552aa370cfd7c2703aba864544f651f0f4ac9d0bc48bb169ace6435df0a9859d59f5ffec4f0226291ccb1baea61dfb2f7e14777aa6901b6591bd15fd7f6ee70be9fae2892bf8bdcafe7656289c3403f6b29bc3bf9a977f562034cce76505d750de6502103098f893c5a0e56409b4117795b85d784bae1a00c00c39f5ae9f4f5dd9332dcb293ea2e95f2456b1f3e47d65c00418b24af7ea8f250af298a58248e01a504f355affc3c65edec93a8eed6945033aae1db204dc0a9fa46924ec4c891bcb3]
+
+# tcId = 77
+# expand_a requires 23103 SHAKE bytes
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = 8f46c68b4cdf1ec20f57a26aede6e7fa768ffe1caf2ad14dddb070af1bffcdf53e996a4c5f009b21400f21a51b90ec6d5dba942d359af0a5feebc18315dc85dd4b5b7f4bf0c1298a6b38472cb7adeedbba5367a7bb86776f2405c665f2d1c77ec94f9ed7ed3f0e025c46b158ff66fb62fe7220ffd466da07b099f4e32b7be99b39bfce7cb526f0c1aef67b63c04e21fb93c0fd44d3cbd1edf4c437af20e917d7859be5398fad2ac8bf6c422a3674c2924d01ecaca88bde6b02a92d4ca31f559075a78a011f1ff334f8d33ee27ca9a27202bb1d045c15607202fea700f737cc5db44efa4448f469c07c5c690eb5d244dd7279fdd7a5cee75c2234d176c9a1aeb337803a432c563443610a646335e1a08e26baa26cd52d836e1c3309211b071d552ab3daeb0e8bc42fbb4d5877fb3814da62306313474d5e86ed9808dcc6f0c302b2f9811fc18eda56d9e3c44fc01940510fd2ed83b85300b69170290bd07596f79fad3ede82a6b8b47f31dd7e8a04705dcaa44caa717bcfa288d2662b2ba98d3aaf930a9aaa59389e5d153a4d5692dd92c5189136ee81934b81b7da6ab8c4c1d0b80efd312be2344153cb03395eec9c808a7be202ff4f51ff0021fe30c9f7be4d1f0e53b24f67c06d057810d9a072c5394b49f500a0523e8d1fd2c3e0a4441b3132ee116858d78a9b4c7987dde46e10ef202c2a5b793a3c4fce39d776cc52c6fdbe582a3fd9a09f9916d14750341e3d5fca75b2466b5e6ad5d5b577f154907ce98b5b1e6060e0e307ea899b3911e4978070cb76728c82e91a1334d61d9939a601501fcbf75d6dac20ea9bd32cb2ced147a4a51df0ddefddea0116264bdf9abb8074a6cafa2a6ebe4a6cc48eb0a9d9cc55f14d7f2e526ca6109ab213270303a0ca3b1490a6bd056358c0e741093db14fc01cf6807d8cc5596b217e61319c72aaa18dde047c3a04b4147ca127bba41218e1ed529f534d71c442149197a5ab715e427ac79f8758e37f623b73ef6a2b55207aa7ade98ef5a4f6989bf4330cfae3e3651444d5b71001dd5aae4432980b555bbb931c0fd9f5abd1af22a4a1d2e2d117d3b8f63474dca28f96049b30548ddab448872f4dfbfec63555292a0f90d54b80c5e3dd8c5c785c3e4d00c643bc8511fbb9aa716caa06b14041f9c4bedd6c6d339220a4724079e504454dffc5c9d299c773e14da80ee3d99824b6ebd93aa71d4201492c04bf2056fbb430acc0d1d425006e5b232b22d5fb1484f25181198e81e4b24fede7c0c498d55f451f2777ccf24778493ae2e0f81b1077cceaf0c0d012c96ae8b1ac5bc3a3f8aa1f361b5beeef3acbd95b7a971021a9aad77a82e059cfcc6d0bcd799121b729f12d2cc8274496bf854bdbfd8e932942e39f5b7906b6a96f4effa903c0bce837160694b2a97ec89c1b0f7f35d16a8995f831b1e5162649e711b71252822ae131a5cc23e7be487be8b1f3b5ba359216e7273adec9bccf6c15a1a3f4c96476b90f11cf94b6d04ff59e6bb19be14f35bf395d7faf85cff288842546efd8ce42b5a29a6fa620581b8dcc51dc2610cd08cccd4f141595daca8cef416cad7907248c58d9327e3d9556bc6be6119bb983cb1faa2b492456b075c7e5aae4e311b61821f51f3c3ed0749852c3788ccd3441beb9ee6cfeecdfdad4d7d4461702e2e1cb6916ae9a9ec096b7775ca6cbb13604419acd40f4b35c7429b8700c8c0a7f6243f5cfa3aa739b713974ef74f84788452ddf5be5d078cd80a2290fd9992ebcb136bc8978372b622bbaecfff00c1c6907ca231aa1441f36697bb29ee93d5a5bc951e9a7893e4202d3cb5dd6324d7db70976ad7666da4e94941862962d3af783ab2bd173c536f999f5627cb7cb7ecda596e65dad4de7668a976b0ce6698bbba26461d78ef1bdc0267c761b708435441ba21dcac62ac6cb1db54499fbe2b441f927b993649c110c00a947be9381f3235861460ffaaaf0b353ce002b81a957e39291fc4f65fdd791281a30f4ca32c297f2c6fb8327454751866239cf4772bdf79368dd99d28c61c7209aaa13297e0fa958ab9a2623c80e779c0745c10f42e792dbcc18099a27a99e9f8a0d389e191609aaf3ad9c3a6661cd7611bb778f706b74a834aa662e70bffad896846faf86a052e6372aae1058bb9dc96b1bd9111b5b1eb47e3badb26f7396642764f3144a7e9f5a903d67f1ec74e8806fc48e354ff37a138a47b3b4c8813d7a7992aba5310a439a1d90848487020c0983b48c5ee97ec658eef7bc93b030b57f16961ec655fef8408a9132ef76016e21dbbde30251501a701b9310ef387ad88c2281a7634b381c10050c50a43d9529c923a81d9b3929727e2b499fd9738d75cfb239c6ea3e94b5951c708d18102ff06aad9d20a219cd867a4c8e7e8e1ef7c84f67217c148f44b422714a381d33f72755ef056f53098cc8fd9877cd6742b2f77b4f2dba9ac9045c17515858baaf3e34f4d74a6e96e8d4fe661211674a68e0912b7c0b4b80811ca60c4518350b3f54df34db7f69de214dae9e14abcaa01c5f28ffff384b438f46547009a8f7e55511e60f2850f75bd337f0045ee00c51a51e655719ea4da79e9a60eb2397008701becdc5a83619c7f90667ee024c44ad392cabc6d7799fa59c8f6125b85284aa48cc7537ec0ef17e83deeb1c99477ebfcb3d51df7443aa692f7319933297a1de00dd310a055611efe998e1281ba0a448521fa0c63df5e7082de1ffc0534f85901fb320211f46f439f13314800826ee72f68c76fe82e45d2f19d9722d017ed44eb14a8a9864c79f29c1082054badbd6249fe8f93f8e9fc65bb3cd1af8aafbbf56964074d782564adb1c25ed8b08f8430bc16836176422fba4e7ff1684a61d881c020d4e659429b48f9f3e64f16d24021d6f89add4c75d237fa9043d32cc27784b7c08844826178b9dddf6fb823aeef3e8fd5aafe581c393c2dfd041f8148aee08a974d5318c746c22d9e4179eb56abdc72db1c6118fff4d9d8d6cb446ee19a07b7fab8df403880aee09dca1cda2a39ec10d5a78457e3aa3cff48468170094ad22d30a2d44428cfe7467a4ec539871cefcd548c3062480b2ed2b6e7a6bd6110aeef4166cd0b45dda83aea875b3ba10a9b3aaa9726f3c782751e85550d144231853037544f39d5dd039234cb42fa88fc0e5f1e0b66f068fd90523ed6e1741679035a7e8419da10a7604b13858ec59be5e5ed7d298e29bee15eb9d66e91ea004d80c261b09474d3f32b7e6bf321fa980786bdc374134e9a5b64c4549cff6d0f073a9675a27a118dc12d5b745da2b3d6615280802756895b6efef4c3dae82e30b3c275b1d34aa55c9f650acf2b727c7e1ce304e1f966dc549a785952135073c3dcb9216885a7460fafdcf7b5fba53789268a8a21005a877962eac88805d7e1286cbb26e34351c1ecfd808a9ebecd2893108fcda6a39eabc133d7fb015ab978ee2ce4f6c6f132e11eb24a82e4e43759ad1ba10dbddcb758a54cb1cc9ecd955bc7f43cb6144423ba5d62d6296c89b1992751dcfd37523b647ac22f468b37120ccc461fe4bc817796e835d0f47a351e2c18769a25c988c7dab905001c8de47aef0e75c7d5b1c299db472600112f656d3740c31ca5017f4624803ee5baeb4ad4974a04be45067e747e2071c66f1a2e607dd11810c78b48fd7249398b8b5ec18e494811e68502872a0a9862d8d9f66122533f0e4893956aac7d98c3f2fb04ea93d8a0f7ddacd0072ec18b54bd814a8ded374d26d69bd7d277422746fb8371828a8e8ff398b5230a2fec8f1ac7a750fc2c6eb6c9341a5bedf7248c796f5b87d9f3449e0f0b3a32d8e283812e98154cf002a02a744f247a20cea768d283ff113466f4775e1170b7395571873b84d5a7e1f7c06a657ed9a09a8789fbebc4fe651735cd5e42a08a5adddaf9827c33078a933b74bfc83a3d2e9ac0386693a6b5eb623a223df33d5c10df6ee4a1616160bedbff3710726f7b21d11dbc7a8a59c52a57e1dc17f914fc3c6d21bb1740faaf09ce4dfc887970cb66be3c9e154e7e554a744793b704593e40550987d60a589970f9756f7e6e4d7fee9cf673f0bd40b9899de4d8ce43c14c1a0def773cdc33dd81147a10fe6557f09e0a863e369d7374ff934563f84ebcd75267822b71acf5354efaf5d35d6299fa186ae28f6092069483b19db0396e008761203a1fa92d8e7a844ed237f3ed30c8c56cbd48a29815d02acbe917fcf2212a69f543a132204a48e8c692f78f039cdc63fa17ac2688c6d4ad716bb56671876e5f2a9036e9be1e2ca1405957e428928aa938bb96a9985d9a32b94b955acc5d4314300b10057d5ea099c65f0e0098fe5edf08b8cd43e93961c5ab94cee68f25a2b17adb7234e88a9dc79ff8b72c9ee205d457c321514b7fd87f482c0e8fe0b6294996527300a64d964d02438351caac5aeab1ee5c5be5bb38b605f974802579e0d34af06a3d5b4a0156aaa1da8e35d694bd4be6908974f5f9af626d16efb52b01d5a81487b669c23dadd71461144ac251e359e6f3ecb9475b2f89b837d1c434d590618c961cad556e5f98110fdf019e813a6bf20925167ee010144597fe8f87bb1dd1b888d8fa5fa032123455c7da5abbd2633527eadcae5f4041835738d00000000000000000000000000000000000006090f182025
+flags = ValidSignature,ManySteps
+
+[publicKey = 2828f4f44461a839e748b07acc053c9b0241f7b1425f9c742019c17078ffa036e967faa39da0636d9399bb909039818275a62ca07ff9bccb028accb7ba906e18c9135147fb27858bd224a228c306543bc21092a59881cd6653318f824e59cb7708d34271b38ef517d9a9ae6d37f07bfbecdc05ad59da3247ba2e8587a3b09feeee4fc630c81973cbf455e60a7b2e521350c3e4044b0ae5eca91f1ea9d9f17018021153c5e7ca6b9f9ccba19e093527bf8e1acfeffbac125bdc314267372bd0f2c2fb064e990f367815fa5bc21f98c715c8dc86d36ae7efba6d75f9f5e332df3c6127ac5263647536f6646996f27930318f4db8da6484c9cfa366080d0ea01f019f5b0da25794bea98744ec505d02ee671d6a9e311ebb91b51e1ce1c59bf70714a0b7fb7e25cc0b6e86d661346b6921a96de4fe1de9b788e18791f6e9597f577145ae7c9b39b8c10643edce55bd8db7baa631a0ce1e52b1c67c34761b4d045da421538e1efb7e9249da2590dd52f05102691dd529a3ada382ba255730e3f594104e9e2f9bd9a0d012f446905d6eed766ac4cb3094e5c40b5e2e12eaacb433a1f4593b74a0e8c5033c6846c7ac866d756d27e07b4f771d2d3f45dca0cd9fc1f50b24c50181dfa64530162e4513a1dc0d3fa73fbdc5a9f2a73a032f59122dc818f064224f4687ad32d27357d6f0b3c392eddb2d25de43bae084da96bb985e5521452f056ac139b81167285164ab462aa2c31a3224903f72be0cad6f1de86150c651a2319cc132e55b1517015522689b7fbebe00ebb9bbf494680ef954c97349f87dc4b3a67de92da831f6b2072e294b0d5191be06feb54e36b9c7f8fde964754498174096ab1bbca6dade876c8166e670196f507e6127d9c7ee4d5195bca2940c27375d41197552eba03ac9a2ed59facd73a322f7d701f95433519543a0701c2be58e5505632e63fd831cb92309dd23bf9757ffef9bd618cf90eb184e11c51e139a9ecae0e009927eb64881519b035c81370d602fba3eb43f5c8a031cf093b634e28028c97b5d7ea962564639d247eaeb8d4f5deab4b587b87b8337f7b9dc980db721b7d20e25043eb856147a429ee22655ebfc3b54b4d7d957b567047065de5ea915f3259b0cbcb4e46dc4036d9d4ed8506f0ce2ff7be09f0eb37e6b1f3743eef7bef637c2619ec5e75c232b4dfb9a4a860f7f808cf0b0fb3d0981a800ce83a26282e02bda97c360e7b084c727d6b5ee5aa87a938fb6f714ffd0762790e8333991d057765f4b9cbf26f5b8c2ea993f6517e807749f342cd1623da8003975235fd54517fcad9fa2f345d1193bd35132d82a33a43b344a1e1a302a96b318ba0b28f21c99c940a20cf2bc3dd7d4d8df7e3fc47ca751be64ebc05703229b7e74551f5e57617ff0dd8ad6c2024ad182e9998a3dc67a6ed0bade4872c066c54ee822cbb305238547ff4de783375b6d560d3c1bf818ea5c208cbc6a8d8cf77eac9a8b6e80af4c434d0fb2f42083c75b1fe0d609be047d182b637ee37c74fef271a815a08174cd070ff39c660473b054c1b9fdac90c318a6e5b1ca8918980e347eb077b3595813a12bd1b4c9c6f8d902375078b5ab0fa33d8152789e86150f0df469b4808b2fbbc9f18e4434b9b91b61bb4fdc39ef06630934a4bfc2b175f065f94231bdd95c419453fe4fbbc9d7dbb909895d04d2f2d1e2c2f3529a900e4b347060a0fc469134e1eeb78d56dcac2964f9d32aa74231747583f4f3782391c828bc35d3928c7a694085ed63f7c83792ef85be85ba88fd6e6fed04640584def57fe1e9c8ca247c5e53e984bb2df9de8ee4a72a5d05d5db46f261315b195503e8cbbe45a9f97836997af252212aba12e5da4a7fea8e29115a0e4f05bbfed93730709ff43f378100059f28e6dde2f4b210890e5c25404b1c5410a8c32c9ab626dbecbf90cdeaa7b76248d477125f9a73a9b41fceb547675d4ac3f9aa98027fc9666f0267cb13a8199ad802595f53d4f49b18e31b1c35d2a3cae174c46d9810995ec4952739e14dc3ba4724261d17e24f6f25301d271ab952e0db0692b5dcf2875132debad65898026ca7323097cde7ec8338934bdcdba4d8d9e1cdf1399d01e6967263c78df1df84c8fdec5bae81c01de78f02977beaf958d80dab2fe1a9d70f6de7318e99cad4cfec15acdcf06570e98589c7d072c52673edafb33140f4c6ce3adae1f226e606ec0c3dd7341942cc1925e6f0c5c0f9ab40c27e5b3b69fecdb723908a5617cec70d5057e6f7516a39d747f5eb197b903758ab2947f777a34f7d6f7d0e6cb6da17069795204c90e9aaab93ce22a9c3166a7900b86dbae141fbfa876a454e530fcd1faa182e962a3d9b671b07c18c46f222b98058b96a143f188b2114a44a7b9c41c817e1539dbdc4626d5e88853f33cb8e0920db5e14d2d776bf8649a71a935e50c62c237c004face4d1ad054b831bc4a07d3aaa92ab77e5eff1a2f9776bf57287970b9ed9f1c1bba3a033837f8e0ef58b57ab3c2849187b65f2c84d299731cde4d01cf91c9c53f45dd909377f400dc9a490fafac0410724388fb8f3621d794fccd268971bd46954c51122ac725e9924339bf3f6e5bbc9a200d110adccd91942dec6ec0c4012aad5aafaa9a7df777b1d975c37a7971e7cca1948e1d16b86f8d0f4945b4fc7409694813c5dd0f6890250b6904738a5404af68e5d35d4fe7059d5c48a8b906548c94fcf76568bd562f4ea06e10bbf349142dde245bc8bdd8673e5ac]
+
+# tcId = 78
+# rej_bounded_poly (sample_uniform_eta) requires 3 SHAKE blocks
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = 45c74c2f9d98d9343257f12d6ca0e80a4fdf0923081fed79412e4a468c0c1cab92c9d537ddbaddeee90b1da792c2288704605e285af67a1aca821c7115c34df21b0545ea4f8d670ac7a973a23cacdd150ff8f76e7957b98104cb90c43859359189d5c82b50e13f0328305676ecfe7e98a07f4d9a91482901fa3d6cd0b704199ca72542fbbe328eea284049ee95153b3370314c3275d76e81f4fa1a8a0324ccbbc23f1a98a511dc507d23352ec119b93b1c0b58b97ee71ed3a7b0b0783dec92e3834c7a1a0054f6b3f42d97e5fe5999659ad854fc859530b50af080b445187493cdd6094a0cd8253d24609bdba9ef471c03e620800938928b5a4a28aded028493867969096cf9d8378cc7930de9afcb94200e6bdd216ca5d5bc877d5607e633a519274ba5d79c22ff71cf54af14ed7bf0ed6b0570f652ac48fc268328cf822d4d30402eea1d506142d4743ea19ad82ef2c62e0f9e48eb104cc47db132ea3e94cf8fb13ba56fe098b96b9ec4d180f9cf204a62e58d11f640d311640cf1e393e8578545826dbb387a6c22596bbb0ccadc3de519143a4c253c07a878189693c26bb06afc8616fbefea67a390d5008c61c3eb67406553f21e340d4c950bb5409646a07f2627a7d0cf96a4310455b8366ae34e13131cd8bc39b184830a47092197525747840fd3f35bb47b308174d296a67e132f73bef36346b08db87234cd7a61df9452bc9689bd2f2fde66b48c74fca4d26e12d1c4613ae1198bd447d917d6a6f117e3ce42a38fa2ae2e554a8793f575387ad49a902544e20e1acf8973ad586c659b80f66244a658793186e2241469751de168386247b42c1f573eea4b9a57a475111d37a3724997a1423392024200f4adcd251021e3af6c948278e198cbeb5562d26ba2ebb9b0e212d34d54d9c618e222c7f60a17a634a7682036d3e467b737291ae3175f280459207210822ebf74c080449ab87fee72f9574efb116a0b1bdb9aa22bdd47d17a21aac5bedf9a3a80a56ee4dc57a079fcd3d7c33608e64b7a87482d2e1b061026df6eee3463a48bc1afaaa61a6087aee5864fe38a968b4c0e10fd839431cdfe03115f158a25fa73dc945d63743e3a9477afc388697c6291ab09d5e145f2ee9731c0de90e84ed97e48a5eea05405ae0d9a12faf82119ea5c2dce8cc118b7d584e3ff296f0bbbc057cae3be7235049bba5fa0887e6915758ae2fad31d7d26e679ceb4642a316694b3e26dd2a39066ba783d1f4e217fd9dbda82ad0ebbdc5c6c7a83ea4142874ee6fa31ce1f74f1621cf9775fc139f7819a386019d0138c82b5456b3de55f0086962f1388bd6a5ae7dc2e259d4fd7aa2393598baffb321884810e5c43e158286f031f867865ce4f2b776f3a3832419bc347570c0fcbc5beaf6a939ba995ae7ec35acf101ceef7d4e415d5abd977392794d19326f695acdee4d32b0b2545f70e03154c5ff5f5ed9baebbd37a93b3a926ec96ff2f010051fc11e2e560ef718ce7f9e55b4ec9e7fb1c000e190f970310e577b72b5d0f08a52175b466ba44e06d82b2b9a14d33eecc2d7aac8a5bb1e50a91a13dc3a7b80c077ac7e7be88ac5272adbf3e361a0d2ce87fbb860c4a4016204c7530104048242ddd11ccd78ba00c064afb51fdca447e613129a8e5e568aef7b13bf06d3990bcfdcf74830109177bf46f9beddc6b4e01aa1ae3cd9137dcb47e711e7b01319267874a9c8febcd1ab4f3abe7b4ba088029af6e4714c8e1231b9d819b7f3843673da5319299036664608278175c781a0517d50ba48c3bc7d480195236a1259ce8e4ca9fec41c96a3b2ac1a4314a2739e57368ac030b85d447090cefe997d61ed2e44a879f947541608d7296a255e3b07443110201f11c227ebdabdc04990f9cb46967de0b7448c9c2caed883f849115d9a7904fa2844b1fc4c81fffaa4cb6c93ff69f0012920d540c1c67f19e9e90c60bfa285b19a92930bbdecf2f12e257c2c0d6aa880f7609dbdfcc135f8244e2b209180541c56b8a870915c96d9f6110cb6bc8ef6485cb5d4413ea2e80a42aaa4cdba7f04815ee37af3809032a0651b897d977c7d2ee5ecee346f0d9e7848780cc90f5fdffd8c23bf3f73f0b3e53b385556b23a988afc86f99a9a85815051fef4b9bfa88ce55232dcee5312b1315d7b13552939b4c7964fae29abfe83236077e600a2a02159c52b90146ccc65881db5c900101fd48150778ff7b993afdafe2a03e5841c736264b9928d1ed7aeb7036180d86a17136cd62b9d8d90bdecdf2707cb4606b350ac6121fec880659b5726fb8ed8923b342bd22a300a6df4bce9b4f70c79ccbdf7c42c9ed3c5cea4bbe3823031c44f710053740e55dfcb7c488f600cecf1b5c974dc6e483bd0205f56c2a3a674c49ad2da1ff9e37cfd8f059158a1b15c2e81ce26b83bf86712ae8718a58c58cbe10127147b5d3aeb92162b388366d779f8a126a3b5bee56902fbc1f6a449d74a7863a0b6037ca5ffbac5041bce68a2db29dd6bef264c7d6f244de69b10aea5c7bcaa379ef0c7ab47f1bacdc57925bcdc12457ef1e737111877411b74e1ef77491661ab00bb7d38f51160a90d4b500416ccd949aa17ccce7161c3dbb70769b4953adc3fe64a2e45f0fe204a3bcb37cb3b24ca07fa6c4239710129acf1d98c1922f8fd8aa8ddb207162a1b3dedc0e390a4893edbdb690d9aef686c64147cc718ded608c329eccffbe338dca3a36a4c4e4ed48160699db6b78e25e54d0b3e551c080f3c2bf5b6b78b951de81bcb9724b4c8c66d5cdbdc77292a7b7a82481febb65e90557b2effd9f253dfe7208e5e0cb0234b566dd33837a0b93bdfce7d3322b54a37e0058c93bcf66303d0ecd55f16c5c0c68d20363b8179d4ed96305fa632d489dfd64624c4042a6f0a57fcb1afa06db489a063a59b7740f71065214b542c22d1744b6dd1167ef35bd45ac047945df7b0f67e4e6d5b7aec57b07f0f74dc4922905168849fe4c5044ee65ac36bd6095d56db2c6ed1749af08e6ab80560aea4c736fe610e4b9ab6eb212c4eadf0b2895222d4e5bd289905199eb4566e0b2569055b6d6590d9a3e4f647b7366c8793327cc9462fa3bb4d9b7d3eb8ed43a5c1603e0917c2a4b55dbd20b40bdd84dd379e4c7c3e4e7880ff32769633870bc7ebc79d6396bef835afa39539a327891b9037030c75a46b274353a5ff2f1761999b6fb214158f337f0b098f8bd40a8c8a592abc004d5f8134053047412309bfcbc7faf5dfcc0f44e766d2c7e7f651ac468330bd301e21ffc863855dfccc385c83f3c024bfdb732f596cf945a9dc724f85eaa5adb2237b41b485954162890e71e23528db0a5aad3ad47b9389744599f96ff5c7189271ebd2c12ea16000f56e0d15f0362acd48a91e3863a1ca98318266c3d63555ad96f0d188e3275fca834c20ae62bd97308ccbfae323066015e3a33169d05f4ff5068a645b9ebb7aad64ffda44f9d0580560d23850177aef4ed42064de173a50f5bfb5e5bf6d9d39eaf8d565f342a8d9880118cc1d069480bbd6cd615383f85d2e495c4c33818b6106cd241e16cfefba1aaeb5f631423c1d8ae8e6553a3ac5e8a85687c243e0d4318162dcb2ffe2afc5b9d551a7a755efcb96113f1e9b596180c6bec210f9e36a81fa686f5073c573191aa23603a8067bd441cc9d46dfd55f6b1b2c36d4ad04d96fa326b05b7526e43dde99051549718a48361a40bfda5073b8c95c154741f901007740fb0e84059fb7d085408bfce226e0cd08e0361f9cbf4b257d109cac12aa86a122ea823bb4b6c13eb74237f9499799d73e8d244288776ab6e344dc2b6dab89b7e0f764cb849473a168cdb92411b0664d76841fe5dfe477fab40997ff18c13180512bddc04f74a9a0b24cadad0d969677e108d0d4c9cd878415186f958d49fbf04e2e446f362e8c2359d3d7799f7976e490fe3269afd2302bc7cd3d434fdadeb459ac76b5dfef29bbf84814d1cf21d4c374ea12fe34c4b9186c068d7075bb05d12e702c5fd6c7e6a7da986d9d65031bf3fc0a43aa546f06e46785d63f02e965e5ffdbaa9ea7a092e1a149d3eee256da5810e1f565372b5d96a899f15ac7bb97a2cf510539d110db26e98f20056188177b5eba1e017ed78f60acd6c8ef59502a8b94776699a6fc80191ade5007bfa62df60c63875153b2305a8f9a05ac662e485f4e7e9673ca8e85d306d651f37d06e860c8fc50ec6199916b72b711d4ca74d7c031f03fd41bb7405c684b136beed4110bec947ccf1b56578396fd88a70f14ba683bed84e70a72779f31d7ca3d9db73ad4133779ac7790bd7e378334badbe2a148b2de5f3277b1e0b2a1b2396b88f1dec7e49f94bb38ad9dd509fe23ed46c0830ab1f89f04d6986cc3a3b373ac9bc8a83a37847d87321df3f5cd6eaadab300c5316d8a59f8f9397c968f5f778450369bcf118ecf730392e2672a8980a6556852330acb3f76d195d95623cf419ff726172aa5df52d5163cf1681b9c4274b2257c2a247f5667923d214e0c79ee66b1f7d315273dc2b5ff41f3728a619ed0145dbf36c089710c55e5c2cdc2c8296489f817d7f7d0e6892e8128a0e3e0ba65d74b2d50826ec325359617b7eacf80a48679397b7d9e31a225276ce0e465b679cd1d5df0000000000000000000000000000000000000004070f171c24
+flags = ValidSignature,ManySteps
+
+# tcId = 79
+# expand_s requires 23 SHAKE blocks
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = 45c74c2f9d98d9343257f12d6ca0e80a4fdf0923081fed79412e4a468c0c1cab92c9d537ddbaddeee90b1da792c2288704605e285af67a1aca821c7115c34df21b0545ea4f8d670ac7a973a23cacdd150ff8f76e7957b98104cb90c43859359189d5c82b50e13f0328305676ecfe7e98a07f4d9a91482901fa3d6cd0b704199ca72542fbbe328eea284049ee95153b3370314c3275d76e81f4fa1a8a0324ccbbc23f1a98a511dc507d23352ec119b93b1c0b58b97ee71ed3a7b0b0783dec92e3834c7a1a0054f6b3f42d97e5fe5999659ad854fc859530b50af080b445187493cdd6094a0cd8253d24609bdba9ef471c03e620800938928b5a4a28aded028493867969096cf9d8378cc7930de9afcb94200e6bdd216ca5d5bc877d5607e633a519274ba5d79c22ff71cf54af14ed7bf0ed6b0570f652ac48fc268328cf822d4d30402eea1d506142d4743ea19ad82ef2c62e0f9e48eb104cc47db132ea3e94cf8fb13ba56fe098b96b9ec4d180f9cf204a62e58d11f640d311640cf1e393e8578545826dbb387a6c22596bbb0ccadc3de519143a4c253c07a878189693c26bb06afc8616fbefea67a390d5008c61c3eb67406553f21e340d4c950bb5409646a07f2627a7d0cf96a4310455b8366ae34e13131cd8bc39b184830a47092197525747840fd3f35bb47b308174d296a67e132f73bef36346b08db87234cd7a61df9452bc9689bd2f2fde66b48c74fca4d26e12d1c4613ae1198bd447d917d6a6f117e3ce42a38fa2ae2e554a8793f575387ad49a902544e20e1acf8973ad586c659b80f66244a658793186e2241469751de168386247b42c1f573eea4b9a57a475111d37a3724997a1423392024200f4adcd251021e3af6c948278e198cbeb5562d26ba2ebb9b0e212d34d54d9c618e222c7f60a17a634a7682036d3e467b737291ae3175f280459207210822ebf74c080449ab87fee72f9574efb116a0b1bdb9aa22bdd47d17a21aac5bedf9a3a80a56ee4dc57a079fcd3d7c33608e64b7a87482d2e1b061026df6eee3463a48bc1afaaa61a6087aee5864fe38a968b4c0e10fd839431cdfe03115f158a25fa73dc945d63743e3a9477afc388697c6291ab09d5e145f2ee9731c0de90e84ed97e48a5eea05405ae0d9a12faf82119ea5c2dce8cc118b7d584e3ff296f0bbbc057cae3be7235049bba5fa0887e6915758ae2fad31d7d26e679ceb4642a316694b3e26dd2a39066ba783d1f4e217fd9dbda82ad0ebbdc5c6c7a83ea4142874ee6fa31ce1f74f1621cf9775fc139f7819a386019d0138c82b5456b3de55f0086962f1388bd6a5ae7dc2e259d4fd7aa2393598baffb321884810e5c43e158286f031f867865ce4f2b776f3a3832419bc347570c0fcbc5beaf6a939ba995ae7ec35acf101ceef7d4e415d5abd977392794d19326f695acdee4d32b0b2545f70e03154c5ff5f5ed9baebbd37a93b3a926ec96ff2f010051fc11e2e560ef718ce7f9e55b4ec9e7fb1c000e190f970310e577b72b5d0f08a52175b466ba44e06d82b2b9a14d33eecc2d7aac8a5bb1e50a91a13dc3a7b80c077ac7e7be88ac5272adbf3e361a0d2ce87fbb860c4a4016204c7530104048242ddd11ccd78ba00c064afb51fdca447e613129a8e5e568aef7b13bf06d3990bcfdcf74830109177bf46f9beddc6b4e01aa1ae3cd9137dcb47e711e7b01319267874a9c8febcd1ab4f3abe7b4ba088029af6e4714c8e1231b9d819b7f3843673da5319299036664608278175c781a0517d50ba48c3bc7d480195236a1259ce8e4ca9fec41c96a3b2ac1a4314a2739e57368ac030b85d447090cefe997d61ed2e44a879f947541608d7296a255e3b07443110201f11c227ebdabdc04990f9cb46967de0b7448c9c2caed883f849115d9a7904fa2844b1fc4c81fffaa4cb6c93ff69f0012920d540c1c67f19e9e90c60bfa285b19a92930bbdecf2f12e257c2c0d6aa880f7609dbdfcc135f8244e2b209180541c56b8a870915c96d9f6110cb6bc8ef6485cb5d4413ea2e80a42aaa4cdba7f04815ee37af3809032a0651b897d977c7d2ee5ecee346f0d9e7848780cc90f5fdffd8c23bf3f73f0b3e53b385556b23a988afc86f99a9a85815051fef4b9bfa88ce55232dcee5312b1315d7b13552939b4c7964fae29abfe83236077e600a2a02159c52b90146ccc65881db5c900101fd48150778ff7b993afdafe2a03e5841c736264b9928d1ed7aeb7036180d86a17136cd62b9d8d90bdecdf2707cb4606b350ac6121fec880659b5726fb8ed8923b342bd22a300a6df4bce9b4f70c79ccbdf7c42c9ed3c5cea4bbe3823031c44f710053740e55dfcb7c488f600cecf1b5c974dc6e483bd0205f56c2a3a674c49ad2da1ff9e37cfd8f059158a1b15c2e81ce26b83bf86712ae8718a58c58cbe10127147b5d3aeb92162b388366d779f8a126a3b5bee56902fbc1f6a449d74a7863a0b6037ca5ffbac5041bce68a2db29dd6bef264c7d6f244de69b10aea5c7bcaa379ef0c7ab47f1bacdc57925bcdc12457ef1e737111877411b74e1ef77491661ab00bb7d38f51160a90d4b500416ccd949aa17ccce7161c3dbb70769b4953adc3fe64a2e45f0fe204a3bcb37cb3b24ca07fa6c4239710129acf1d98c1922f8fd8aa8ddb207162a1b3dedc0e390a4893edbdb690d9aef686c64147cc718ded608c329eccffbe338dca3a36a4c4e4ed48160699db6b78e25e54d0b3e551c080f3c2bf5b6b78b951de81bcb9724b4c8c66d5cdbdc77292a7b7a82481febb65e90557b2effd9f253dfe7208e5e0cb0234b566dd33837a0b93bdfce7d3322b54a37e0058c93bcf66303d0ecd55f16c5c0c68d20363b8179d4ed96305fa632d489dfd64624c4042a6f0a57fcb1afa06db489a063a59b7740f71065214b542c22d1744b6dd1167ef35bd45ac047945df7b0f67e4e6d5b7aec57b07f0f74dc4922905168849fe4c5044ee65ac36bd6095d56db2c6ed1749af08e6ab80560aea4c736fe610e4b9ab6eb212c4eadf0b2895222d4e5bd289905199eb4566e0b2569055b6d6590d9a3e4f647b7366c8793327cc9462fa3bb4d9b7d3eb8ed43a5c1603e0917c2a4b55dbd20b40bdd84dd379e4c7c3e4e7880ff32769633870bc7ebc79d6396bef835afa39539a327891b9037030c75a46b274353a5ff2f1761999b6fb214158f337f0b098f8bd40a8c8a592abc004d5f8134053047412309bfcbc7faf5dfcc0f44e766d2c7e7f651ac468330bd301e21ffc863855dfccc385c83f3c024bfdb732f596cf945a9dc724f85eaa5adb2237b41b485954162890e71e23528db0a5aad3ad47b9389744599f96ff5c7189271ebd2c12ea16000f56e0d15f0362acd48a91e3863a1ca98318266c3d63555ad96f0d188e3275fca834c20ae62bd97308ccbfae323066015e3a33169d05f4ff5068a645b9ebb7aad64ffda44f9d0580560d23850177aef4ed42064de173a50f5bfb5e5bf6d9d39eaf8d565f342a8d9880118cc1d069480bbd6cd615383f85d2e495c4c33818b6106cd241e16cfefba1aaeb5f631423c1d8ae8e6553a3ac5e8a85687c243e0d4318162dcb2ffe2afc5b9d551a7a755efcb96113f1e9b596180c6bec210f9e36a81fa686f5073c573191aa23603a8067bd441cc9d46dfd55f6b1b2c36d4ad04d96fa326b05b7526e43dde99051549718a48361a40bfda5073b8c95c154741f901007740fb0e84059fb7d085408bfce226e0cd08e0361f9cbf4b257d109cac12aa86a122ea823bb4b6c13eb74237f9499799d73e8d244288776ab6e344dc2b6dab89b7e0f764cb849473a168cdb92411b0664d76841fe5dfe477fab40997ff18c13180512bddc04f74a9a0b24cadad0d969677e108d0d4c9cd878415186f958d49fbf04e2e446f362e8c2359d3d7799f7976e490fe3269afd2302bc7cd3d434fdadeb459ac76b5dfef29bbf84814d1cf21d4c374ea12fe34c4b9186c068d7075bb05d12e702c5fd6c7e6a7da986d9d65031bf3fc0a43aa546f06e46785d63f02e965e5ffdbaa9ea7a092e1a149d3eee256da5810e1f565372b5d96a899f15ac7bb97a2cf510539d110db26e98f20056188177b5eba1e017ed78f60acd6c8ef59502a8b94776699a6fc80191ade5007bfa62df60c63875153b2305a8f9a05ac662e485f4e7e9673ca8e85d306d651f37d06e860c8fc50ec6199916b72b711d4ca74d7c031f03fd41bb7405c684b136beed4110bec947ccf1b56578396fd88a70f14ba683bed84e70a72779f31d7ca3d9db73ad4133779ac7790bd7e378334badbe2a148b2de5f3277b1e0b2a1b2396b88f1dec7e49f94bb38ad9dd509fe23ed46c0830ab1f89f04d6986cc3a3b373ac9bc8a83a37847d87321df3f5cd6eaadab300c5316d8a59f8f9397c968f5f778450369bcf118ecf730392e2672a8980a6556852330acb3f76d195d95623cf419ff726172aa5df52d5163cf1681b9c4274b2257c2a247f5667923d214e0c79ee66b1f7d315273dc2b5ff41f3728a619ed0145dbf36c089710c55e5c2cdc2c8296489f817d7f7d0e6892e8128a0e3e0ba65d74b2d50826ec325359617b7eacf80a48679397b7d9e31a225276ce0e465b679cd1d5df0000000000000000000000000000000000000004070f171c24
+flags = ValidSignature,ManySteps
+
+[publicKey = fc9fbcbb96f54d5f1b2b71d060404538ee428f6785040c54adb8716adde1cb1fd35a18e25a3dcdcfcb36f67bbd5398dbd1e41d43e2da3d92f35a894168c5829e0e9e9ec957c6e64c0e2c90bb10402b80c16860a20e5c0f5cfb31e98fb965d79c6dbb5a92a76e0cd2e8e5bf89bd8431075d87d944f70d1d60ef39eeacb38950c3f3ea9c9e036beb99453beb674ef399472d2602b40d2681474a0f86f9322008f7ba074306c65888fb75076f2588cc828e03f4a20c6a86190705bb16d1b01f33fda71defb96cca68128d87ad616507e67f9abf5e1f4b893e6223cf9643e9bce85a60253ade53ce2f6483594507fb27bba13867cd5afeb36dea5d2d847e0d1de2c8a21465e435b427b9a21094844e4f9e386b8da5b7abbf642cad70380c2daa355a2ab183afa6412597a0d85a3b310ec11a2055a56771f6dabb00371f3a29d3a282ac8b1ee1e46fd31ccc98943d93f95c1f7b0b41c49b8c00bb229fd5c468fe47724e5c44cd90cac417c70c260cda880ce774aef25749616b941f4d3b394e58b752235e0824962d7d003457828a1d5c1549d3c496cbfe90950b780b12de7b976866edf29521f993fe3e93b189cb86551693e8016cd0147a4b6af60196779f4a916afebe71898308ba45712c593ace59eb006254a01eb76d48b9fd653e662b32435b8b5e71cdf77768b9c42f5a75f959f59a03fed130ab2c24eb34b0d41ced62726c7ab160a588007bae6e170c558908db0cab61933bfa840031cd131ac541a3484079ae77a8d4a4eefc8b72f952c0fb22352751507d311844439b9287272dc73b7b836ed85147f40871d05b9904c32389afaf94b84643c5449dc04f9a82f276fd50cfceff05e2f1dcba87d3ebfda747cf04e46da976f5864de1ea500a4ab58e7027977982fa46be9c8e565e5376733b706b01447a8bd2d80b766804e663a4f6cf58e4377346420eca7e757f6b28dbbe8e05f251ad58c61350d283de73be982d7c60250e4203a44e97849f6921238870f772459421cf223439dbaf21bae645d04b572e0884a6c8248b780a1df734b600e1ed6723d15d145b1476d11b36a337bcfe14e85354eb275d43bdfc62c242e2498f2263416d9de4fa7bad8512f14cd1cc964c9471094514ce7077d2dd2c45195dec402fbf49c63f9abcacb2e8eac10bcbb7b2312397f4ea03f70b390490592fc2b41464c48ca6dcc333be960178534b099aadf9bafcea4a5b74e1cb2aba6c13a57d05a4f2ab3002294565e02014254fb3b6f3ede1b2cf9315185e7c07dc82c74656d87121612b456b03c5eb93f1a81d8ec0eae7630937a2476af4b35fd07e61469881a2f7c0a1d56d299ee54455444a431a93e8e368553b7063c695076891e7532f29ee20de04ae37891dd3343e7445586dbba4c31a8723e1ac02c786c5e74171884217bc517838facccfde8453c62f719887425cf35068b126f5d389f394203cd377273e984bc4e9aa5b747bdbaf7e4b7607b77b0ec95e931d3e7661e98086a6e9975b72703034523884201cd6aa668eed0513bbabc6c3bd044c32fcd4aafa319041d07f7991bce70c3fb7a43dacaf7b5b58e624d36dc545d0a198ad8f03bea8363f61bc639186c497a857a85521647d856b64209bdf9311fb5d16ebdb9522345561c8f526bf106c107bc6f97fb93c98c3e5dd239ddbf8e736e936a2df93a863457889caa12cc64489b7561a469b9208873f766b57844f60aae913a27233bad42b5bde93c0544d9b52b3b45a90ce5aa67021bb1f8d35b67626ccbea718a42b3a5fa867ce53218bd48509087c67bb3e452b7e4e3aafafe7f1588fb653cf045a4ea5114806f5108fbe3410956adb1348761e6c5ce8f58b276ced2d721bfacae09c67f41ed9f00749f8a63aa9c367669980f2415cad8983691e69fb588ddda462d0109f9cc1984d4153b4fa46e5174d14bdca951a464d54dedb27912cb27b74bb65ee3a11854dca6542749a7222e589f4ea53bb8c07a84c3271bcb371d4005d04bc825868652df8defcaed9f9015e4c1d953af10992fc73951064c5f37e02baf73531b0eb5c1e2a7e6f379eb60ed2609e601abf163214e328a9f75ef17b308bc6263dd2884a5a8c607be1266bfacbc26114d75a610805b1be34b0887182859a54f6fa4b06c4275959e6b6b5a4385be6104b61fff2169226e389a18e1ad8ff1ed4eb1c99f35f4c198fe777bfe475759b4bb82f54c47218c5bdf61d506dae4b84fa4ee0f64f2c7ada1f39617acafe3649e960d1804228fde6267a6708363bc10e97fbdfcdffd883f8a231ec15263608ca462440a882a488266d35a4f878f55e07b6ca0f994a0a1f16b743bc9e5f473de80586fc18f09f0a13deb00c73a23e818b3e9241878dfac1f814bfe3b934fd0ae8be49caf16320fc729bc7d8c584d192a884eeb2ef3ad079cfb8626fcf1024758158951c6dcd607ecd7a15658e2154610085f1e5cdf61704c120b72d9c6db247fd04581264f6d14109581ba6994dbb46437de09164bec86b384ef16648649cd650714f6e7c6151783af7c4db4246683116e435a6e3c4031f21c7aa66984fb64b8d9af6e32b2e4cef4ec8ed9568df38c067076e3f4536bd37b4c66f11a426e9d76cfe29ccfab367ffcef2264b0e0fd3513b862db235304924f2cd8d07b2690771c778cf21d3b6d4e74541d390040a8582434c55a6d8e6af99c67096455b5b17cf5e902cd9928f96e7d14d4221a2617297858249b9b7235b28847f7c843d69263eeac9c6612f]
+
+# tcId = 80
+# rej_bounded_poly (sample_uniform_eta) requires 277 SHAKE bytes
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = 447024ffde9346a213b39475099459ebb1de800e2879512a7f6747cdcaefe85abb973bf9e25a460bd9ee2ad1bd70a820d8f172e54eb46c78e95f860001323f6617d9408d2e1d25ba6826f19ff9c010fdbebb0c002c2038a178a78f652f567ecb5170f26601eae1bbd555aa8fdda21ba1dcb9e351620350e347397b96f2d29645f10b3d8945d636e58308d85205739acd6b94d671a3cd14678ad953218a6b5cb7b3222c2db794e0cc468ef45358505ace711352899851c324c12767e5a50e5288af2eb3c9402114e06e0ff0051e9aa0ca2c72e6fb479c074c04b2123e6d6f9e62d4374e0fb2c3b6662332c391f630dfe44c4fdb7dac95ca3aff5a427f3d7814bef76f897bf0a7cfd2bd36d9d49f87b870a06bc9dacaab0b129b6158dea464fea551ba4c5431237a189860fe228ec8840b5eb358a68f1d9ae9dcf90dcad2a8603bb7fabb4e387ba963b08e1dd41e02a10842b579bec2a2d431fb9595b4331f46c9b0db975832272ead202dba9be105039328936c939985d1137e2d90d55d4e6787ae2837ab48f0562da0e0e58c8075b4eb5dc9dfc97635bac8866cc5f13f984869a550a100f13f3f56a38b8a350fa4fd06207c1d32eb667fc6811c33db6cc428f620dde08c42dc2efe736aefbe59c167da7793f2bfbc6cd3aaed52d3757e8d7e44c63ae8f0852d73b5ba5569214c9c1980d3852a0b88d0248175f53e9d11ffe19a1ff5ff7e44f8a5c1074731c69198de1be50b7155b49b9875bbb7473983ceb447b2b50ba230f69155d7ac4e46a4e80762c39a97fd023d4ed38f7c425902b7f747a11d7797e2f4cab63d27ac2bcacb17d08ced68b7cc5d91c69bb8f80f17d9875119a741bec5757f66042ecd2e00847c0390170ac2bdadc769cb501ec8aa38c859441d98e5bb9fccc43eba593d928209245e6de8f336cc0e2680c6a73e5df0f554301cf852fa3dd3e7d5f720320d6b079cf2211feb3b2956a0de3f59bce94148dc91e9b0288445763117cd180f7ad089f223eecbcfb06746aa2796dab2e620459919cb4faeb7d4c0d85779f776593d6fb0877041d43ee10435cba6c7baa9931e4c4dc56898a36983312cf85a1a999bcc02cb26d091b3c5a23fd4061a09b44659f6d68b87b68d3e6c18876f9f8f8edb42210ffce4e4c6a4a01584ee1b43709473130166ce9d9890eabebea8c81d532c34a166dc9dc30f1d4c0546de34990cca8a5dc6269853d69f366056f23fbaf72be1fd469fee612fa9a75feb97c079c5c04fce08f89e8087249a77e3b0d73728e95749f7497313631ad95620f3eb3c4ccbf4cc64e6113c4044541e843832a32ad7e699a75947f8ab7e48cc65a060d62972b86df8a2fb0b4bb966193545c86f201c5be342dfb361dcf2bbd9f3a22a6ec498da9d9e14770f9b7f642314bc6f66954bba2b0c621be2b20140eb6a0f536c6178fbf631ae39cf1c66d01c35763141b689e6851d578b31083f2153ae37101bda7d5a1a428582fcc19b310fdbac1cecbbc3ecaec93d73083f9f9c0f972ce0e65cdf5db90c623405863a18a497fe23bb57ad71f64ba9fbde1e462ac28e0d7597742b2eec39741d11c406ae56248c3644f3ac44fea88050fb4d0af09b65ce58cf276b37731d21840f34a9bfcdbb5322d905d88476f89aaac0c3f6ecc7957747a8343dfd8981dcf34057746dcf440aa098e5d41b5c61ce15a72380b7c8a39c982c052cc1766364fe7eb94a49441014deb484afec1692738d50762aa0ebddeafceb7b9f6cb2d384f049a104a584dc274040f4ea030345f7f887758d10864d8c4b27abddd214be79c79b69084d71897ffbdaa0dbf5cec90f22ec07d4ac7ba12ae6ddb130ea34f774c2736267cb13178abdedddad0e0f889b920b3c4b3008ce7b18d4ff36e196b1e7d8dd043b58495e6b7dbfe22d03ec72dcbb250ebde631f43c556ab8b8465b3d76ea1cf571e6726d39866fca46a0b515f0d8479a028517f9021d757ef84fd8a8464311c7462262c82503dcbea392f88f19dafece39ca11b11ee3649840dea7054fb02770a7a46c15c162a05a6a2b5ea904f2ecb78be936e0cc54327564d6097510977807a48e1b446b5076176cd8be717380f4f02f30b5f2d2c0596f45d3c064ca4763e649c9396319eb09d37d3627d3ec6ea58df23cebcec0c9bb68861d0e2fb56e075f2aee9bb1aea052ab2c05ae746f80bab8d953f40cf18afce5f331b334b7531e472d942bc07e02c67135944efb5aa7e39e4344d365d719776494ec43cf3f64d208db184bc4f1239eca1b744055c12d4519905c66017a7a8f6d47b3f0a725222bdfde1c1d605d04cf93ef3733a7b9a5a54a0de03c66866bbfd24329a565c0092856e637a832275f6ce6113656a71c1f1ef90058afe1a376aa00be83e050169b7f9e94451dd6f493fe5caf02d6e5cf1d41c5e7539d2d70ca2ac35b966ff9f66b07401f25b259000d14f9e0aedd734b74fdda9b187bfd99a7c1d241e40f87027567316a3cbc08bb70ade50e75e349e7f3d023a021c46e84b2d44dcd04e6a9c2a5ae4ff79abc2805a5f71684b8bb661421008f45d9dbb86387beb93b07583d0cd4f4946e5c16d4b62154abb7dde8b771e22798be9c39103b5319442ae8f49d5e42ca2f90026ae62848811fc38f2c930f0b266b445c7828e3d8fe4cff57b79d168e51beeaf15c693518204f5931648702f81afb1841ea2479c8acb2f42236fdbb0a99cfe83cd3cc58ad94908d61ce8b953e433599e9a086d5655508c79dc26662950697348790bd0905d4bf616ce4f411c2f76e4f91c6159c6bb317d90356c23dcd001a43ec94bd8d808b07ddf94b93b3191cd3fcd8529197f7aec255c2a25bde0968cf689263e0a5cb19be444f36ca797376b013b244f510191bdc007ac33f3f8e73bad30638679bdfe3adaeef93ee24df4fba7c405b5be5ec54cb375a5b9eb19473e981fd08b6f7408fd00e6cf2971f63d4d4d4b9ed066318efd0523250e0f70562c1f2f5c7c7317f999c74680b811baba2d84153f7ca6d1c7d0deb5ed31da60f477754725725b860a64448cfb8dd8c107613ce6671b956e6fd769ed556f8bf8310dc2f167f621de8421dc13edc84cb9c05eaaad7d9d51a5d7b194f8c3c7082e9d53c5c7a88e1c072c468a835445505c990379d34a2231407a1035c81a0a546ee27b1b3e7908d4921bc70721911a2c0f5ac25ea8a81b2509d40f2c727a9f1d7f91a4378fbc21145320f1b9ecbe54283e1237a5b90b44c9f49edbbc9f8ec73af7e6e7ad0604b3fd84191a24b3efb2d07db8bdf05b742a65e7405ef50e47fcc92d4029f7f7be4c5e7f1b3f85d1b9a5cf8c14228318ecbc648fa7ae37b3bd3d3c33bed9bed46bcd47ce89650dae8cc2c5e2965d59006b24beba14e70b1174cc4f828f11188bf0c21d552f1e5fbb022e84549b05b3f1c2936014c1c3163269abab98508a5c3a4b0d282c6b91aafd64866d01bd8715473fedcaa36ca1f1c6bdb6caf82753d49a4395b3423fd33b96313ecf41d728a5a57fdb8d01c3be7fd831149a0e0dbcd323ae4af4d062079e0c4039a7d9cd25fe20f033e5ecfa0d34e6920bbc1e88398aede6a28439e700e8844d79967451a3771d4b26eb5d012a49a5f817651c1d752163ac517541ca39025aa428f38dbf3cec4d648cfd3922bb2cd2eb8e18ffa2adfdee5b9314a82800447ad55873b14d820192cb62bfde5699b680f2b0ff07e2fe9862128c17a8d2827d5aa73023c573cfe37d372b39c13b414b1435c7a4951cfab1d8c74115711bce198053ae6a3d24ad64600e9c1f50915babdb52dfee9264142b108312222d198810898bab5e09dd09a9a27b62b6e7d7917708e7829903fa5ea835de5725a83d034aaf7321f48afdcba299086d4b20075e0537bf6cedc0b50a1e2babee1090e22e234279d658a75142ccac00c6bacc16704f1654382681498908bd55c4919e841323f4ac8888f1514f4dc9be789c604458de0ced5143c5b1c5d3a64246a68b5c3620a5869eed93bfa07ecc2711bfed1d8d3e927aa16edeff32df5ec23a53e4cd0aeb9b83cd9e67ca15be9333960147c96bb33e7ba5c9816a34b93347273c49d14423566556caae62a2e5d138498ab7d45f5681df334e885933ed2f45c1f726b4f0e231526147f9a892e78a9442aebab81060032dded67709cb278c054d5339d29025abd25b68f32b5742c9e4e313c40293a32f897e96a9422ef349d13a70f5993221fd921d85d2e55c0517cc0d241119a9b248af27cfd6eb37f6d9551bcc7d7db3f53824dbe2acd6f1c261cbfbb346ebc42a17060a01c6cb89c95f048bbc62cdcfcbc33177f5020583552c4093b278179ac176a20451d4968ef4582854ad21f2ef78c79cd5ada9cf2fa29cbd63dd4259901f5327ed3cb92f792e12965352a2a5190387e7d47eaec012daa03b3599ff4713ec6c90d84fae59f45c99825c4b9d54e1b714ae0d13fa452da84b95c7ceaeec30e11ebf55dfe3fde91afcf54673390f35b5f4d57288750bc6e203fbd939b7d3aeb04af68abc9f454132920a95c45bd7fcb35ac27d1db2ba58d1a4dc425ed4a5d315cf63321d9e7a96757b29bb5a448b79b2a85883335458098a8b41f3bb7c42930343a636e8d9dd148bdc22d6283afeeff0817287e84c50000000000000000000000000000000000000000070b14171d23
+flags = ValidSignature,ManySteps
+
+[publicKey = 01c8783994aeca990b8c00ec3a55a898e3eb84efdba12db8f3acecf8ad5ab9e0aa86001124ea2b7ef3d568073ca547a5cf5b551acba08ab5e2d9a184106de7ed3ebc9a6b537c42bf577587df3eb7cc755be7c9cab128cbbd9abfa664069c4429ae879de03a15d2d7ec1e00b13961a76824115806c6406f9c4596b74e24529d0dbc66b368489523adcc643c76fee32242a8ea269bfd7ec7b8cc104a870cedfc83daea902b43f6073fa53541b3bea8f41f5b6eb60f53ab2fc2d4f3538a23c076eaed8f57aa86029a186c1ba082fc402708200ea69140b57b94085e9f6e40a9c2d712e9bf4be24b2ee1e61532531d5b9506b463056f63be7a4547fd95ba897950d42fba84e590ff51644ad54ed9d3e20aeab446183b3d728caa6dd3e13c0ff26b11b2396f4eed6bd2b1ba1fce40f9496688c127f2653e83de66db465815f79d4a84d6ddc8d0e9ba6235a7bf4a1eef348b654aa2c77038dce7c67e9fdcfbe6494be1540acac2a0a10d7d9cbade59533c893e2221d061b014620fdff18e34551c706299d0a6aab620dd5ec42d2ab09b42bf026ffdc49d7a624e7cba6180e22cfdad5ca927e9ac5277dc2d341142b793b46f44ff8b24c934b582dd35e63d072e014be1c5c3bf94f44b1e96cdd2489230d7b0b01be94d74964f85a14b2c008873b2f2c142cadd3ca6f7253842f9398f0b0f3b8611b3957aa4e5d8097278c30772d327b937db17937dd79759c2834666c185fbfe2fac4412bd3b3c6f95e3c1ae476389a1b6a350f3121ac642a66363b3630ce5c0d6804f54348b05e9a501bff54ff27fdbad36bed90ff689123dd1f90163f483f3ffbcd7380dc368d631b98a43d0153b4e1ef895cbcaa375b81705d2d8e8152e1daefb0448581b7e458edf90fd4dc58274f2393771928de20916c0ee00628bf51b6b1485cc75433b7756a07364746a4c2a38e21dca103f2784ffd5328ae1575f7359447b27c4f380f74d934a7c9a5e2dd0b382d84ad5e60b4d26e0e35c6827aa3663ff89550e99731857513e455e1eba734c0feeaa50aaa543bcb935fcb23f327927d86df7ae19cb179b4cc60f5a7e62c16eea7bc92a383cfdb4c80b837de045475cd837d9e3d1c0921c446bdb364b18ab4df186cc966eb551632f96e04e31835a8e7a08f14674b61bf3b45167a4f3eff00b2b754777ec52b55487fba51083734b3ee1124a179503225a6855dc213d74c12a644b472d434af24dded4789e3958d0c9e9043f8eaed5dc0f30a9a7afaf62587f800f828816f411f220df65e436572aabe887ace1328cd6146fb789ae6cbd050cc4f5611b0b533b55267d4cb3a3f79ebc13b4e97a6279eefce101e5acd0672665865ee211e99365f9363ec9e871e029a9a78512501cc5613388cf51109e7f9293609afc883dd9cd570d3facf8b57c7131eacd6cdaa130a9eb2559687eeaafcd5cbaa752b3b794377602e7e2dd7e450361596715ebd12e1608ece781f08a7917b15801cb3c5cf5b345c4b816988819e360badf36e5d52d8cd66a43a980b952d490c48501817434696b9ca061b27db5952ba249fa618017b7606e8a24b531232071e513ff20c2e05fca6c0c3e42f410c8098e02347dbb6fe2061e65359a187df76be1400837c0793aa0f9c0d1df64275a9df16a50b7d519f8b51ddb93a2ef0d82a616f7b4e69a6fd58ba72df593b3634764ffa7bd935032f00d49383c410d69b087d17070521d4ff49aa57cc46fa23c5edd21ad1425a1356740ca98821c065266dee6b41187b193316b1df0dfc0aa8ebb3e276c5cc357ec3420aa61ad588b01226ed7c653578dd42ae2be5b4cd36aa28bfc9afb1e51cf874605068ffffbabe15767fdc673b975eff3c92461b1b4aaaf3ccad8b3fc9e387ab904a8e572241923d27780bdaf3ce6cf8437ee66be074d512b3626970893d3df678653a220cd059bfdeffad46b375ce5f908c398542f15b0b63dfdb0f53934d7a8fb10a6bbd93962e1151c9736f03fd336d361605d688127f021cd9afe3f8da90af9b1e8c9e7879a7c30aac69294141099d1d503c2a5133f8b0bab47407693d7cd86aefc34d94743fee73738e7cdbd144ef9792f90ccc75ade1a9352ee7dca62e0358779105547a636cdd73709804e21bcc56c81190b786da338e398138e2dc52484298859bc7638d661fdd06e460cc47e7a533d76befc2ddd3728f402a0b5c7082f6a1f60e96e454aa11f178a1739f6ea30b7f6cd7969617ac7a42240f299f985a59db2a1036079e97b626947588c4719ffe3263b02e31c2f0d43f5acee913bd730611dd4b6146d16db5baba98de460c21f9c5edfe5e93c47f9840551f55b9e08864f68fdea344e43f83d7d7274232591257948d11087d2828c7bc4f585c8064418608fb3a004233b2e5b097ac2b60481339ce0f14ef5cc7a21d23a6465f01507639ce13bf12ecb2636850784728a89ecd9b6b31222c9e0249246abd1820e5c734b7467db4d10fbcea65bec7f48fa058a5c1fb2dcc76fc480d2e5aed0aeeadb238487de0296efa2052083942c79d2b10308ca123724765c7f0d34cda9c0f724504dd0b765a6bc844b1a457662313d5758419384d12c6390b32bc708fa67ca46425fa2a8ad1e3980a55af646ba6eadf4a9959dd206e61183908e70af65b63ef8da29a9d98e1c9ab5214fa4785590134a1e4df5fedbc81179557e8b8eb9332c0a5716e04411aa2cff283c18c55f8e81c59119c05b87fc7e4ebdb2be4b07f0d7856f595a5a7e0848d7fd]
+
+# tcId = 81
+# expand_s requires 2649 SHAKE bytes
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = a6d86189aa75e8618ba96982c40f35622405b0d0b2f6621b7d7eed57d03eae4c03f3b9ea48a6f4f8d272487b4da8ab4055dc26925aa8d5636537dacb2042028ebccc9613411756918f9b699242445b23c1169a8bb525e1d4277e90a9ce3f68075aa9bf3634bda8b7e6a763df2f614d8fd9ed73ad5936b08fc63cbc60f4625626fc5f5afe853829098a13f8267aa6a76a9abddc1f4da58023b6be547d1e37ee4a220bf109233bdd4402c04a5119314c2747481966d106c333434b03fd1c4c37d47e459785cb50e4a37c0293bc20428a51faa666452a3f60f88ead932b74a45feb3193bf10d323364cf807ec7193f038770e0936bbe1d96fc758cdbde7fa7fd5b8b58d2ed25064500132edf8c8a0238f0ea7b55da8cc089b4ec03cce9e78af2e710b503b5ffcb95e564caf089aacadba9653ad780b52b6f0af8d44cd8aaa5ef8713851e691392b9998e8083131a9139b6939a90a372cda707cdab2423e72ceb12e1138ffd125d4ce5c2c69b601ac6b97eb77b30b51b64cef96e75f267cec817dad9a96a05fe91301dd58586a37c74f914104f5a8cfddb386a93c237c35b5f616a7615d58ebbfa71c3551685368c04497a3946fef065fc39c37a656ae2b6689563fab0c321a7c2b92c60eae122345145694c65ef7aea65a2a4060997465c0bbff4a71d811cfbf93edb022e50c99fd92394380559e78a5db34b513c37566148aa40443e31d18e977bc35b1260343b8e32f6d4ada3e60d084fd6adf097a20ea75abc810d8adb436eb5e3bcaca06b1d0852e9301d7d961571529a777cca4429cfba1e8c325aaf6bf24f6c8b8123a77843f8080abd9bf441d717aebd483f1cf18e102b042cb2e58a0bec238cec8b5cdbe61fea4f9c6bfcfc0bc022ee5f50c7f5b36065703f2cec29a73795f0682940126b994ee873be25ae55d430b7a671a9835a7f6fedf4964a09bd1058a5151747e27430be0ccaadf8d2f4d3e6aee2e699cf06052f77d0f9c503215a6b2004ad69acdc8747ed63d5869d8cf3bc9911630f64cf233c932ac71a098a982012ec7e25dbfc042004d8f530b9d9e24853725e679b6b751cd7bf80b25e4734f41971938df86e2eb70dfa80a2aa3e31ce9393737c14afd5f7470790f380bb8410aba8152e51d070e71a84cfed8192bd9d3ab2ecfc627fafa891e93bdd5d0224f67d857ec37ad2d5b3ec6f9711081b3bfdae4d05c0b36c70f35b3df8b174ee7fe08c4929e9c5702ffa20081ba7eaa9dcd8187938c93efee081b8854ec3983f9aac3a1fede31da432086af172a6f78776a37a61dc1ffd8e5cf2f1dd3420d8a1dacce8f44a2faf76e892bbc4d3ad744f745a7b5ace2e1943bd70d8f366fd200b15431e20f73074aa1827d59dcd3714c36d10f4b5e0b22e2e1794983e53d21b94fecdc73dcdc048df6796b4b38aaa4414fdbaaa656bc63aaea5c11c3a7c11f8cad30f678547820487959b9eccd27e96b7ade1294875ca071956196da01a9802309e27252840649ab35a3b344b178aedb82c6e3741f1049904427a6d57c977c41c42622642ff393c7aa178918d21bc414d58c81ca8953aa680f2cc5fe7188038cf1f4a0b6fb257e1c414275b9a74caed761b83989934953a19baf98a9575c35e52441487f0b7d5645215159fcb3b7b6b193892886024c508771cbc4b3f120810c7d126b14922d6f386e25309bfb4c1494f6eb4c9572e40856150f00cee661e67e210d24a147ad19565bda14c8de45a5edc77a4865e2b90fcdfbb5003fd90d7a758cf408a96b05b6237b0728e41d5847ba118fd8d42c4843b3864e3bf07c0b7136414836ff9ae6564340d4ce226b1b608b53ffeded5c14e91aa39f869b602355f5754c9c30958cbf426d1df86a498276f130e5b0e3c1862c440ce6e41ed1d8acdcd0f305a66769590244d672d34aa4b72d023332f5788649550039975e467f196cb35a276b6fcc394043ea6924ed262a3572bd354b3685d98e87ce4a5038f3961e89764359c5a507df56c18b030eda095ef6b3568ef010f57949d3633f397a7a04c319090bebec19f521325f0d8b7353a210d462e5a3e70d768c1e8037f57b51b1bf667018e354a14b6cba7d41a23d85d1f2e0473302dd840a085fbb0ad85b19d3e569346a9407329e24817e8a374156f87d2b6b5319f5861addcabd1356e712fe3757ed9230169e51c0f3234118d20f477314514e5aeec9fbeb0ddb58404df022acba911ccc5e727475a36dc9709875303807add451004afbdb4ba7e3ce36bea2ab5c10dc71fb0daebd762a93067a465297c83d5f49b12eb2c1884d430b24c3866c900b5ef882b0b819eae3a5eaf8290f86afadcb24e100fca7538672b9a7c2ff654789319070a363fb6de40fd79e7d2d35afb5adabce11df381c70c0cfb9369af2caf58871e2c48020ea23e7d39195c1d7792651077d8daf2627c0576facf26b7819f92d01cd2375432740cc3eccf93e67803b86802f176b8dbccaadd98327ff492e5a6ecf2234ccd6fab3cbc279b5ceef49cb4d93008dbd9429bcdcb1110db7fcc828ee02f66b7da8cc80d2d6c5f4fe98d8e64930c7c4d5dc20715ed88a6aced33e9b275a8b8289566d67b4f9d0364931f0462a253efd5c1e6db9e7f79a999b5f60819110898d07cf59e6c0cb39cc252705ccbd381c7260a23804060af41d1a0c57d4e684bbca270c608b435082ee5137701f433f3e99ccb3aae30a4451ca36f0a7319160d6abe4974435845ef133e3711ce15b46e5cac0b37cc62a4ded418e648deaf27019d6ff0b821bf8c0eb0d84b531ee8d98f14f4b7dccf6eb550a525746c8eef4f1d234318dbbd2969af3012d44768dd40d2421756e076bc3fc70783de3732de15bd68464f20a7980a58eaf6784fbfcdb8306e10fcdee3aea4e9f9dfc08549b9915b0df736c337e0f918913756e97e7029bd00f5f6d946de70235cf5ac260bb39eec3f71ae8dc19c7bf54fe03c6f894cbab5867bfdcf2568ab8defa4a15bca7421901f907b726970192ac2294b5a90bbd0fcfc2185e819fb0917c4e83dc6088377dab0a080e036c401a3de501764b718990c8514af6994024c9328d0068802e63866dbf911ef1fcc05a4b831df906c2efac9bb79df60a34def5bfdc6eee7425f1bbb21619648c8f4b01d8f047debe8b1b08b1ac090bf83d4363909886b40b4f3b0f1ecd486bbf7339a4a04466cc01ef7c5fe2ed61ad912b3f447b300bcab8849917c05f8c3b8be383d7f46909b2fa0ec95dc1f77e293cea49806a581719e983e90e9fdd8097cdb92788bece98aebd951d666c22e6fe06444048d674e7f8258b22b38695843b044213e0b78b22cfce0dfae13954900338c66e216103255e49691f3f36dab6aacc9d83ea5f93cb544509e0d75c92bc7637374aeb8a0211ff989e493d893feabac80644ea092301f07ca1a1febcf0276d00ea8627aa19ac3d1b5a374abab473b13b79c202dd555fde622fdee1ad6856988c59d000b4e96e1782f42ddee2f949ba17285a7ca4bc78654ad66068d7a2f4bda254748b2685966a9da2e8ea39bf7cd8b05651c6ffd7b61cb29bccc28b7bc072a6a2e76b1005ff5adcbef1394dd4ebe4a9e47dacdaad90943aeff3336180437964085e28ff94837871179745607d11d71f4f2a04441e981b7b4d3c9f85475c2e1e89eaf8b8b2ca3ea3bcc5aade6cb406b73290fecf015d36c5e244d3bfab75c7dfab47b751917158fe333321b495478eeab4ce2cd91173ce2bae318fc3d6906f10aa86c0abd975ba889e958e9fb4fc6acc846bf7196f4a42be5dd51c4d7b5f80303b0b64e35908d7cee503749bdd67d3ff633169dd4bcf39617de8067855a4e0acb680e2879795960931d3102011ae6242423abce1ee4012f7efbe556c68371c75b857c5635297f3ba7b7e5d6f030f13f9177303501ec67315198e7bda9f3434bccc060dd433f1dc4246f491ff255752d8cb103e278d5f35546502cfe85321a6fed500749fbb51316175f062080a20d3f52da159b448df61599f5754ca046dae3a14e9e03525acd9a1fe964c8caa9feb3ada82320d2fd4bae1525830c0a3eb91cb454f9dfa43c6534dfaf6a7e1d2b19d527d4f403863518f63246889614972e0bbfb126ea0b509f0c78278ca1911797fd5da6c00c8b6b212a511ea9bfe7c45fb742a109fa40f375490c0b5e98aedcec7076e1ecfa567ec3575cbc0892460c52e94d9121c4a9219049b7325f300f04182373a0f476f91a18b4ded3ace3d001900f9316d92be485b5dbefb54fc2b6ecc79609c03b149bcf2558ff915f49bbc691b45c3983fbe61b09cbe7f17bd4365e7461ff2388720fbd74ae451f61f73f8c8b51afe87e8684508f7d64ba03f2abaff47a30ee51f32e25b9d07371f578df432fdd95504d64be891762adaef094318e64a5dd86eb81decae2c30c8fdf3ddfced1a6f1a3671b6687765f9fd93cf66c52b8986c5ac3f78a8048d969fe78d057f8779a450c4c7cf554ca935c9f7ad781dc3f50ee6ab1afc087f35e02889a8cc70a333edd334688c70e85e5e33d7509ac4cd6e854791cbdfade909fedc5614190cff9b7b4f62951fb40fda1cf62ae77d00cfd450db333f4c669eea1877afb5babce2f70733396777b2cfd1e10304272a373e67698c40475d6a8dcdec141f999eb0e3e6eb0000000000000000060e1720272f
+flags = ValidSignature,ManySteps
+
+[publicKey = b41031e429023d8b0bde433401da448cee6c25c6ce0d570f91fea2e8e0003b8d8b3efecb56b34a3ade96b17d8b98ed28c6563f381cea1da2898be8a0dd4a3c7f187ee288d37f0fbaf512d127001c713d64dc036b1791e239d9f8494629b6276d0ac1e56ee7644e0bf860f098728ca4f225b500e6975a548c52d422d3d1e4f1939268060ddf304515490e90660f848d839e219866252b107664c3481aafc8afc83ae2d43f448aa51d5765ecbc910f241bdb815a4e11bb84309c947eafd69fd80b2f9cc66afa06ef67a9fbbb1fb4658e3f02babca2d96a4d93582442db9a245e1d979404a4963ee0f70ac7cadab852cfbdcc58ab0617fea49dce099a430f835f70240396aa39eabac3ec22e3ed79d724a77d37e40b8161ad8fc85c930e76d714c12b1e636a00897ea7a76f18a4df312cf7a0861bee298d6412ac5a694ac34473151728cba9d3026879332a23d2562e8eebd9324e062444696f78e70e876a8c197b95c82bf11a8588a831d684d8602cca58c4d8030fa904cd71ac066486afe9d3635f41611247715d29854ba1181c3ad312a7a28bfb01796bcd016c2f75d73fba343c8617b534175e06e4d9d2186a5e9d4348fd942f885fb569956a4f0e59ba57bb02f7cf56d67c0bd0db375bc95e58a23389cd5293694ed4d5d3fb3faefa4dc4a2e59df6db2fcb8535c37e1b4cae7e8cd0fa0d02a1b7875fa324da4c9e9f5dd25b56b313373dc7c23f1efb257a08d829c3bd1c80519756707869b2bc6fbad96beee610238142f8c73ca7667106c31d88f223b47a459baf382e45d347973c6279e62a77f8df2b489e1432684b0230ece5f2ba6c7e2ab70cf620436632f3a516e2f269995fdd4a36345a201d7ba22887d7c24c5c9cb8184c516ee4d97dfb4437a5ae8ef8062464d8badd958ad779877b4b1642505e3406b2cdbcca77c33d10905501d556c6561f4b64d5ac2ae015d32c650f427593e25b34dc334ce4de1a641c5544186ce6e852e9c9bbac76dca582de782e1c53b1dcc446fdc8fc1c141903ceecb37880fd6d5bb08a481a2315f5d39956529139d5250aaada5122d39dc5bb6d0f96e17f01d9e992ef9b220f08427ee83cf32c69058a5f24a0aa320d18923ed91661f5f74600f332e121fa51b628c086233cd9953a1428d4d8f41531a7233327f05ef347722294c31362995ecbe2caa069b869e9f232867fed5ec9ab09bd474c9ba1fd1362ae742f8f9984ae50eff7086d32e8407a8aba62df7817d694054d8d063bb6ad34b85d2e9c87d90f4338f5b92886b4a0ebf90954bcd4a7f561af87c966aabe3cbc955891c405355b77d8ab9b9ea0b149ed17266743e138ef94cb1cc823bd714ed75cad9498cf2375cb869af424abc95b05234fe24a832ab6829799312b9370d51b293e4c3e3bede66eb763672b51e0d567dcf9d05c5a3db7ea6f04f309a10f148292c33bffb8910bb67ef3324c085517b6d364116dab5f957ffe1866364a0b73a75ca5f82af7fcee26f7349d7c11a3424171b58948778e2dc03af2ee4b5194c777e337fc5a4b650558a2fd980fde30becb2dbeaebdd845b9e7fe98213889def8c4ba33c3a98acd2e0f9c6da0d9df4d53e06e597c1fb5cecd29bc0fd34446d48145a32633c74193333711d54e27db38fb6ae6cf0644822be6f6ba0dc7a41f7691dd8e3a7fe3c92ee4a7b682b0ae11c137fa1ac96d466cf491afaae57998e16a739de679d1d27f795f3852f402e8742ccd6d77d104598df9e9772ff775cc422c2508708e971481235e6b32d0308bb203e46f6c883b1736e17311855b61bdc7f776ae37bea27ce9dfd8b421531d556bbe953a703c4ca0c998aea7541be8b49c158b414415072bde726de24460a3b6da8bf23f9491e41b498ecb1ec07ffe587ae9a16d852eee18a6259d8f69ab7aa5875850d469f471173253eb72a81d546f31dea76544171cb4d0c6eb636b6acb2d1c9036339519fbabe0dd036b0fa69d0c207cfb59c3c3ad3ffdb9a8d6d353796515e5b606b4d07a8aeded5767c6be8c6035cba13cd948a0466cae07c8cac13898461b6eebda444b7b3a64ae1185e27fcc59ded90d8c0b9188b9538783ee0b0d6f90bcc753a12f33ad1e96b24585994f7b7291b4a2f1b240553d4c9e8d8e6fc4c354d85f2928b3551c20c97ba23a053f04fc11c72a4db576e76a7be027552b7903e9568608811258396d3f286dc307c4c05a546655ea08e8200e4d6002374043559b768021aa6e036144df0ea32e1f3f2a158fd2655d6afce1b3721353e5977d59e61718c95e026e3d9069b97e146340247fd7dd7c71cc6d83d2668fc36740098859ba5941c548541c776f5cc38ac3840292e4d17879ced0f72d892c297d15afa4d1da9edc7e58b1c44302b504cc8b926442c03f900cf683a7286b844bfb35cca31ebfa2721082cbfeecc681888afd938a2314cc4f667d7d5a7dc5df04b6071f108f97550d5afc29b304191aa5077183a970f099cd6c59120ae1f95a9cce12a59bedde1e499a20cf42d69e86430d18474621d0e4e4edb1b71d991cde47e6509ff8d1bd2f86440374213a28487afa099b69cb78f357e9a64dfab99d5e7ec01499d077095edc842fb32e185b83bf1bc30f9b47c48c835a729d1fba5ac37fa941fba7d05667a787a5cecea0b8b47986e897060b7a8b93aa5920f1e7e14c5085d9d2215dd6b9c2cba0ea4f999fa35d425bebc3a150c7296b208ee0353f7d23e14f09b2e5c05128e08c97f56d79dd1c0dba1fa32f]
+
+# tcId = 82
+# power_2_round returns a remainder of 4096
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = b35a9d26d3cc6ae8bb05acf2044555aeac041165b78f65f13831ec482972193f4ce7eaff57bc166a11206ac59e51f798b7a0b3776e447ce2941b99a4e0f6238a8a5f3487813e1cd00260127a67f5fd09222668f3edd5db27f9f9223417f82dfdedf9ab5ea6ecbb325f2bd4669d59a2bb8634f2b658d2d3362a79454372e2f31f81e6de020436f9bc21db4e2b368a448aa15204e170ceebf7b767290ae3634b094e569375efe46b71c0ceafc9af5eab65325403e9f7573323ecaafe5f0a7b34f3de08f124da2e2075b2295d2390b41c737b48767782a83c09d46d7ef1cfa8eecf154d35cc8b68fdd4cdc10c04e0470953221962cb98ec479d80461d9608f6f489cbbd6266b05266a52d99146d76060155a093eac3c3580aea48f183bc95aa2b77a00bf5f110ece9fda38a344a20eab6be2830006fcdc5cc5ff247c357a639f665562a527a99fd1c0e69b37d5ccc50c65c27dc057d6c7be4f970b01057c612101dfe9fe6bf23b621192c5e94a8b411dfc3bccfbd11a94ae05869f711f1fd8f6ef9b7f9b1a9e4173b56c99b05bb379865ad9e414fa44e6ba4f67ab4d93fb045ca0316ddb9fd92d1ee08c3fd8e490c7e533fd1f761355c72a37d9b7d4814efcacc66c8af043560287b54004ab30b91c03d8a510cfd5238cf3ef301d8efb042d331e3c2ea48876b9dc9b05f2e941975d247defa4f8cf2c7bed438ae680fe52ab144e7bc9d0926eead50fedcd7aac60fc342cf566671e84b02285686a0e9c49e5e05807a6b96df521c38905ba9079e9aa6673a1ec2208f8b2dbf03dab944e909b58ff791facae78e429a60dca239df3e00d48fe4848033d35b5847fb9a78b3364c9b37b7e0a9f3c497e811187f26ccb57db5fd669dd4b5bf127b5f01e6a9285b607823a82062a096e0b8911f7b0543aa6fa36b0c2a5f29fce780cec024560938c61915873beb6bd642d67d609bb43f9d8b8a72859fdb13f42f4f8ab60bd23725ddca6f586501e929d9b889dbeee8955be8d3251d41c46db3ddb75b880210f447f40c6dc5bbc52d22d2c4408d68a0d8a5adc2a2c9d7348569e858c9fa5254a03f9f1e973c66752c6fb0f09e32e8a587a56107ec4801d7c1fbe2b9de6db7a46aac7291d4081a53c2c6e9b1b0afb4d5204961553f23dad621bec8078edd3031bed2651f26eba978c2d9e230083d61f054548090b8fd5f9a31af5ef2fc2f5b7e21345169e869cb8d2707d1f7dea43f1770f153d50e03f838c41ea4eaf4679d52f23c6d41727c9922bd611b185bef46a220a0a76c7ee1d45cffe889af4331b9f6b9665830ffd9b3fa335e4d0d66bb9f1d835d7c123abb334daee683116de8e4342d11ec42a834be306f1b39ce24d9cf838f7fc8ebe939abdae09f8ee7c10adc56d26fb6a928242537d372890143605bedf8c601b031fde9cec47bef17e4e54a5d90e470cf4e826fd69193e94a21e32979c368fe9ab7dc1e582d02759f7f6b8386f4b005f3c4e956ab528b8436714a132c667ec0f21fa9993d37624d8bec1d9d759f28601afd8c7467247c8bff3b35d0fbac82604ef25e4b88ea05f700222baf0b633623467e0b191d88c1bc550a1dbef2813df92556f48c99cdd22557003c3c8d39cfb91316a4b13a078afd5d52c5a8e07009a88aa93ce463318d89a1cff5ada0d1609cf0df966b0ca14beebbecd9079c09467c1139ff8ba25adeb114dc51f662d76105cebf40ec1ff82879c8e3a653343add75ec4d75ddc6f6b76ef85092085b8d121ea81d875b362d95c4e28042df3958f16c7218215e9039c1cf485ff3154e46d3f9825a8e1f74e2134dddd56a81d8c1a21121e2dbaa322926581cb75592b99c9f90568f9b6e1e36f0fdb3a9e5dba272403375e42f3a32342354a798b26e8f295a9f377e022be8485513bfe6cc05f896cb62292acf714dd81d1e87ad89b38bab5532e337b2f326fa6cd508ff2760bc2501d729a66d1ddfbf9d622757c21b2a5308143f198eb02035adf90d44aebcd12fb161515025198a26433c7adf75f6077cb8a536826e18e4b80964e97c6354455306f3c5b6a8603c7bd2302c20faa46cba18bcd57437f474939643d7c25422ad36e56c3a80cf78deb62d9ef3b2de60ddda3a6c080a39c24dcfe88ed6a5c974a5dfef3d4b524d425bafc65dfcf4d045a1d21ddf393c73c2806ed7200a86ab718655f8951a1516ee527cd407baa36e27c72e97503a3280104d92f8248f1cb0c6c0d91b262fa39b8056796f954150d1a0911cd6c7bda3870ef566ded8d656f2ade63f13c62aed5087bdc1469eeb64418ce7af5fc50b721575e99df25432804306a89fd33c0406be8beafadc28f533e12d05bc3ffded1dd59cdfaaa54bc8dbf75b05f72b3dd555172666faa87602411ef6d97ff3254706b876844ebb3948f13e62380df05f67bd13eee4b8a2d7fcc53263072273eab92f8b7bfa64371b58a412bf5dd806c2b8054e8f6efbceee0700e20f6e4e61a6fd6dfdd170fa37e6559362e7b56c9ab7e27cfea2bbbf19c1815e1c863fa24c50ed465aa12583b345ee4007e9677f5f582c9f9377e5b0b12f34ec4e8f4199bb7a683142f07daa27951466f9d608389c17c5c50cd99834e5e975304e2ea1f6b6aca94a433294831a8c5e14dbe46017932035041cee0fba54f87421fbd14b05454543cb2e95046080da6ddfb81aedc37e51d0b1c3b6d036f8d97f8ad4e7752324c8bea832cad6f8afc499b35164b71f497d86d54c5e0cfc67cb31e01a6de5cc43b42927b20ee57b1267141eecf85bcc94c5469f68176f8313a706b2b1ace776bdb69c2fad7fa383dda1895c36836da08676a1a2ed697843f135c385831795ee32a5750fcf08013fbffba54edbd4ed3fafb6f5552a389a56f41f68d1a721b7b344f9e74028217c39c3c2aa1fd9b44b90173de0f986a3e2fae6e1cdd3458446518b2551a3d3ff4294dc2c217bfb8b281b42acca144fdf8c1ba08acc10077c06dd8cbd5d4ae2336cb02cc400a1f49ec581d1e2c62e1cd21be275be4257105836aa99631041b999a16d6d57c1bda6399aa50adf0d4fb8e1229d8531aadc834daf90408fa2120ccd2d39df7f93ea12af0873df00e201b4bd6851ccd931a23e6589f4f583772ed426ee324105d72a05e308401cdb99b283c93cc518ed7c98f230d3605e987b79f8b20d28f99c46850c025d26830dbfee8230234b3efac3a3ebcd322e84c604782830397697bd1308d07d24dff64f7e453dd0eee7161f7e376c7f5e108e04f22dcafa47278be38a4754bd7c9b657fd9aa77a76cf9889a2e6f0ddcec106db418d7329686bba394ee09c23629009bfb10b360f649e962cff1b0dec8d47016cd15a068a5c9d8a721096a61e91b00bc28816f96d4fb7229d77c4a9b3e23ee56f12cc973bb0ef158c0bef405bc6483797aa1d4eb1cc7b2e1e34365b99d3b970b8dcdd7655d143fe6f4e191b2cda90a1e6158f55553af987edc08a78355557c3c36a2fb530c5badc5fa786e6a4feb041caef1fc0e18283e00724362305ff84ac5478b4db29859b980f680b1ee2486d07ce2d2b50264f693351d2c7e03de1922bfcee5dd7103c9b5c3f5426141f293bbdf920431e639dc79e63343d48480354204e920bf276dffd3b2692ed4a9654c294e1c0c3a0eeee84549f227250a4bfef594ea0c3a68bc2c6619f85d0c96b01dd05a9c076a7a2cfb6d0e3dc616147d3e7eb7006f2026040ca208351cc2f3fe3a7e72d5f2ae2c18ad5c80e1d87d439a1afb4672729ae4d04ad517e5a5dd903fc1cb5ed3385a11762b5a4e5d9d7fe00135e6857df3bb623cc5963f0573d858a0e62d31d5ecd54ca5eb4f1344ff1ba7bc2544e7140c5a2b9c3b604c88f0253e44b31f2543ef0e682c5a50bd2933f8bc22debb3802625fd8963d373321a0088cb910f51762e496f50d822b9d445780ad78f6c8143dad25cdf555f6fa49eae6841fe8e721437c7f541ffff6596b7b52770f44cbe33e1ad00857a8d36c0ee20de9c9e4d8b4d183418c5739c1072230007c196a2f67135591c9c81cd259cedbafe7178f28ed9c1c8f72e6669ab9ca2250c919e29bd71a618f4ce5cf4eed1e1e13e052fa0279fc5e55a4e9989c17cacc46a33e39b40e29580dd07d6ba47716a483e99a02eb36fa3c103694ebbcbe9310516a56ad1f6c0863ee6cb316ab68471ef6cf8612a0e6ab593f85744564a450e1771df0523dc7b3a1e7254a55f1e71dc802a98b8c60e795d1b50af67bbda06b3244372387bd3e1cea4b660a83644f08e9ad4578e431c3b560dddfb4aeb36ffa993b411df5bd9dcb13de404f818aa051bae8fdcc8c10190d4f0c7d398a0743ca53a388120d5616042c0b1ee79821e35b7717f021b2c28e871fdbe5a4c06b1a4cb38f4b3950604dcd9791904212502b91e4e4b39c9b805fa7257dbfa632ba272ab4de9cc3fcd0c4baaa5c231d959ef27d68b9ff3a473176533fcf5fd26c0e90b7d5d65d4f8a4a374343df23e823cabf48dc372f7d508bd2eb0454a4ad59061cbd1b0a57e777f2473ff769e5c91b3e05af375fc5123b55bfe419e975153193bdfbaff571c0e7dc2df2e0d60738f8214a43ce6eb8880f2da4ad6a940143597eadb4b6de022329456e84a8b5e4e93d9fa9ddfe040b107ac21e4e6178b0eaf907114472a5e400000000000000000000000000000812171c2329
+flags = ValidSignature,BoundaryCondition
+
+# tcId = 83
+# power_2_round returns a remainder of -4095
+msg = 48656c6c6f20776f726c64
+result = valid
+sig = b35a9d26d3cc6ae8bb05acf2044555aeac041165b78f65f13831ec482972193f4ce7eaff57bc166a11206ac59e51f798b7a0b3776e447ce2941b99a4e0f6238a8a5f3487813e1cd00260127a67f5fd09222668f3edd5db27f9f9223417f82dfdedf9ab5ea6ecbb325f2bd4669d59a2bb8634f2b658d2d3362a79454372e2f31f81e6de020436f9bc21db4e2b368a448aa15204e170ceebf7b767290ae3634b094e569375efe46b71c0ceafc9af5eab65325403e9f7573323ecaafe5f0a7b34f3de08f124da2e2075b2295d2390b41c737b48767782a83c09d46d7ef1cfa8eecf154d35cc8b68fdd4cdc10c04e0470953221962cb98ec479d80461d9608f6f489cbbd6266b05266a52d99146d76060155a093eac3c3580aea48f183bc95aa2b77a00bf5f110ece9fda38a344a20eab6be2830006fcdc5cc5ff247c357a639f665562a527a99fd1c0e69b37d5ccc50c65c27dc057d6c7be4f970b01057c612101dfe9fe6bf23b621192c5e94a8b411dfc3bccfbd11a94ae05869f711f1fd8f6ef9b7f9b1a9e4173b56c99b05bb379865ad9e414fa44e6ba4f67ab4d93fb045ca0316ddb9fd92d1ee08c3fd8e490c7e533fd1f761355c72a37d9b7d4814efcacc66c8af043560287b54004ab30b91c03d8a510cfd5238cf3ef301d8efb042d331e3c2ea48876b9dc9b05f2e941975d247defa4f8cf2c7bed438ae680fe52ab144e7bc9d0926eead50fedcd7aac60fc342cf566671e84b02285686a0e9c49e5e05807a6b96df521c38905ba9079e9aa6673a1ec2208f8b2dbf03dab944e909b58ff791facae78e429a60dca239df3e00d48fe4848033d35b5847fb9a78b3364c9b37b7e0a9f3c497e811187f26ccb57db5fd669dd4b5bf127b5f01e6a9285b607823a82062a096e0b8911f7b0543aa6fa36b0c2a5f29fce780cec024560938c61915873beb6bd642d67d609bb43f9d8b8a72859fdb13f42f4f8ab60bd23725ddca6f586501e929d9b889dbeee8955be8d3251d41c46db3ddb75b880210f447f40c6dc5bbc52d22d2c4408d68a0d8a5adc2a2c9d7348569e858c9fa5254a03f9f1e973c66752c6fb0f09e32e8a587a56107ec4801d7c1fbe2b9de6db7a46aac7291d4081a53c2c6e9b1b0afb4d5204961553f23dad621bec8078edd3031bed2651f26eba978c2d9e230083d61f054548090b8fd5f9a31af5ef2fc2f5b7e21345169e869cb8d2707d1f7dea43f1770f153d50e03f838c41ea4eaf4679d52f23c6d41727c9922bd611b185bef46a220a0a76c7ee1d45cffe889af4331b9f6b9665830ffd9b3fa335e4d0d66bb9f1d835d7c123abb334daee683116de8e4342d11ec42a834be306f1b39ce24d9cf838f7fc8ebe939abdae09f8ee7c10adc56d26fb6a928242537d372890143605bedf8c601b031fde9cec47bef17e4e54a5d90e470cf4e826fd69193e94a21e32979c368fe9ab7dc1e582d02759f7f6b8386f4b005f3c4e956ab528b8436714a132c667ec0f21fa9993d37624d8bec1d9d759f28601afd8c7467247c8bff3b35d0fbac82604ef25e4b88ea05f700222baf0b633623467e0b191d88c1bc550a1dbef2813df92556f48c99cdd22557003c3c8d39cfb91316a4b13a078afd5d52c5a8e07009a88aa93ce463318d89a1cff5ada0d1609cf0df966b0ca14beebbecd9079c09467c1139ff8ba25adeb114dc51f662d76105cebf40ec1ff82879c8e3a653343add75ec4d75ddc6f6b76ef85092085b8d121ea81d875b362d95c4e28042df3958f16c7218215e9039c1cf485ff3154e46d3f9825a8e1f74e2134dddd56a81d8c1a21121e2dbaa322926581cb75592b99c9f90568f9b6e1e36f0fdb3a9e5dba272403375e42f3a32342354a798b26e8f295a9f377e022be8485513bfe6cc05f896cb62292acf714dd81d1e87ad89b38bab5532e337b2f326fa6cd508ff2760bc2501d729a66d1ddfbf9d622757c21b2a5308143f198eb02035adf90d44aebcd12fb161515025198a26433c7adf75f6077cb8a536826e18e4b80964e97c6354455306f3c5b6a8603c7bd2302c20faa46cba18bcd57437f474939643d7c25422ad36e56c3a80cf78deb62d9ef3b2de60ddda3a6c080a39c24dcfe88ed6a5c974a5dfef3d4b524d425bafc65dfcf4d045a1d21ddf393c73c2806ed7200a86ab718655f8951a1516ee527cd407baa36e27c72e97503a3280104d92f8248f1cb0c6c0d91b262fa39b8056796f954150d1a0911cd6c7bda3870ef566ded8d656f2ade63f13c62aed5087bdc1469eeb64418ce7af5fc50b721575e99df25432804306a89fd33c0406be8beafadc28f533e12d05bc3ffded1dd59cdfaaa54bc8dbf75b05f72b3dd555172666faa87602411ef6d97ff3254706b876844ebb3948f13e62380df05f67bd13eee4b8a2d7fcc53263072273eab92f8b7bfa64371b58a412bf5dd806c2b8054e8f6efbceee0700e20f6e4e61a6fd6dfdd170fa37e6559362e7b56c9ab7e27cfea2bbbf19c1815e1c863fa24c50ed465aa12583b345ee4007e9677f5f582c9f9377e5b0b12f34ec4e8f4199bb7a683142f07daa27951466f9d608389c17c5c50cd99834e5e975304e2ea1f6b6aca94a433294831a8c5e14dbe46017932035041cee0fba54f87421fbd14b05454543cb2e95046080da6ddfb81aedc37e51d0b1c3b6d036f8d97f8ad4e7752324c8bea832cad6f8afc499b35164b71f497d86d54c5e0cfc67cb31e01a6de5cc43b42927b20ee57b1267141eecf85bcc94c5469f68176f8313a706b2b1ace776bdb69c2fad7fa383dda1895c36836da08676a1a2ed697843f135c385831795ee32a5750fcf08013fbffba54edbd4ed3fafb6f5552a389a56f41f68d1a721b7b344f9e74028217c39c3c2aa1fd9b44b90173de0f986a3e2fae6e1cdd3458446518b2551a3d3ff4294dc2c217bfb8b281b42acca144fdf8c1ba08acc10077c06dd8cbd5d4ae2336cb02cc400a1f49ec581d1e2c62e1cd21be275be4257105836aa99631041b999a16d6d57c1bda6399aa50adf0d4fb8e1229d8531aadc834daf90408fa2120ccd2d39df7f93ea12af0873df00e201b4bd6851ccd931a23e6589f4f583772ed426ee324105d72a05e308401cdb99b283c93cc518ed7c98f230d3605e987b79f8b20d28f99c46850c025d26830dbfee8230234b3efac3a3ebcd322e84c604782830397697bd1308d07d24dff64f7e453dd0eee7161f7e376c7f5e108e04f22dcafa47278be38a4754bd7c9b657fd9aa77a76cf9889a2e6f0ddcec106db418d7329686bba394ee09c23629009bfb10b360f649e962cff1b0dec8d47016cd15a068a5c9d8a721096a61e91b00bc28816f96d4fb7229d77c4a9b3e23ee56f12cc973bb0ef158c0bef405bc6483797aa1d4eb1cc7b2e1e34365b99d3b970b8dcdd7655d143fe6f4e191b2cda90a1e6158f55553af987edc08a78355557c3c36a2fb530c5badc5fa786e6a4feb041caef1fc0e18283e00724362305ff84ac5478b4db29859b980f680b1ee2486d07ce2d2b50264f693351d2c7e03de1922bfcee5dd7103c9b5c3f5426141f293bbdf920431e639dc79e63343d48480354204e920bf276dffd3b2692ed4a9654c294e1c0c3a0eeee84549f227250a4bfef594ea0c3a68bc2c6619f85d0c96b01dd05a9c076a7a2cfb6d0e3dc616147d3e7eb7006f2026040ca208351cc2f3fe3a7e72d5f2ae2c18ad5c80e1d87d439a1afb4672729ae4d04ad517e5a5dd903fc1cb5ed3385a11762b5a4e5d9d7fe00135e6857df3bb623cc5963f0573d858a0e62d31d5ecd54ca5eb4f1344ff1ba7bc2544e7140c5a2b9c3b604c88f0253e44b31f2543ef0e682c5a50bd2933f8bc22debb3802625fd8963d373321a0088cb910f51762e496f50d822b9d445780ad78f6c8143dad25cdf555f6fa49eae6841fe8e721437c7f541ffff6596b7b52770f44cbe33e1ad00857a8d36c0ee20de9c9e4d8b4d183418c5739c1072230007c196a2f67135591c9c81cd259cedbafe7178f28ed9c1c8f72e6669ab9ca2250c919e29bd71a618f4ce5cf4eed1e1e13e052fa0279fc5e55a4e9989c17cacc46a33e39b40e29580dd07d6ba47716a483e99a02eb36fa3c103694ebbcbe9310516a56ad1f6c0863ee6cb316ab68471ef6cf8612a0e6ab593f85744564a450e1771df0523dc7b3a1e7254a55f1e71dc802a98b8c60e795d1b50af67bbda06b3244372387bd3e1cea4b660a83644f08e9ad4578e431c3b560dddfb4aeb36ffa993b411df5bd9dcb13de404f818aa051bae8fdcc8c10190d4f0c7d398a0743ca53a388120d5616042c0b1ee79821e35b7717f021b2c28e871fdbe5a4c06b1a4cb38f4b3950604dcd9791904212502b91e4e4b39c9b805fa7257dbfa632ba272ab4de9cc3fcd0c4baaa5c231d959ef27d68b9ff3a473176533fcf5fd26c0e90b7d5d65d4f8a4a374343df23e823cabf48dc372f7d508bd2eb0454a4ad59061cbd1b0a57e777f2473ff769e5c91b3e05af375fc5123b55bfe419e975153193bdfbaff571c0e7dc2df2e0d60738f8214a43ce6eb8880f2da4ad6a940143597eadb4b6de022329456e84a8b5e4e93d9fa9ddfe040b107ac21e4e6178b0eaf907114472a5e400000000000000000000000000000812171c2329
+flags = ValidSignature,BoundaryCondition
+
diff --git a/tool/speed.cc b/tool/speed.cc
index ca5125b..325f82b 100644
--- a/tool/speed.cc
+++ b/tool/speed.cc
@@ -46,6 +46,7 @@
#include <openssl/experimental/spx.h>
#include <openssl/hrss.h>
#include <openssl/mem.h>
+#include <openssl/mldsa.h>
#include <openssl/nid.h>
#include <openssl/rand.h>
#include <openssl/rsa.h>
@@ -753,8 +754,7 @@
}
bssl::UniquePtr<EC_KEY> peer_key(EC_KEY_new());
- if (!peer_key ||
- !EC_KEY_set_group(peer_key.get(), group) ||
+ if (!peer_key || !EC_KEY_set_group(peer_key.get(), group) ||
!EC_KEY_generate_key(peer_key.get())) {
return false;
}
@@ -811,8 +811,7 @@
}
bssl::UniquePtr<EC_KEY> key(EC_KEY_new());
- if (!key ||
- !EC_KEY_set_group(key.get(), group) ||
+ if (!key || !EC_KEY_set_group(key.get(), group) ||
!EC_KEY_generate_key(key.get())) {
return false;
}
@@ -1133,6 +1132,119 @@
return true;
}
+static bool SpeedMLDSA(const std::string &selected) {
+ if (!selected.empty() && selected != "ML-DSA") {
+ return true;
+ }
+
+ TimeResults results;
+
+ auto encoded_public_key =
+ std::make_unique<uint8_t[]>(MLDSA65_PUBLIC_KEY_BYTES);
+ auto priv = std::make_unique<MLDSA65_private_key>();
+ if (!TimeFunctionParallel(&results, [&]() -> bool {
+ if (!MLDSA65_generate_key(encoded_public_key.get(), nullptr,
+ priv.get())) {
+ fprintf(stderr, "Failure in MLDSA65_generate_key.\n");
+ return false;
+ }
+ return true;
+ })) {
+ fprintf(stderr, "Failed to time MLDSA65_generate_key.\n");
+ return false;
+ }
+
+ results.Print("MLDSA key generation");
+
+ auto encoded_private_key =
+ std::make_unique<uint8_t[]>(MLDSA65_PRIVATE_KEY_BYTES);
+ CBB cbb;
+ CBB_init_fixed(&cbb, encoded_private_key.get(), MLDSA65_PRIVATE_KEY_BYTES);
+ MLDSA65_marshal_private_key(&cbb, priv.get());
+
+ if (!TimeFunctionParallel(&results, [&]() -> bool {
+ CBS cbs;
+ CBS_init(&cbs, encoded_private_key.get(), MLDSA65_PRIVATE_KEY_BYTES);
+ if (!MLDSA65_parse_private_key(priv.get(), &cbs)) {
+ fprintf(stderr, "Failure in MLDSA65_parse_private_key.\n");
+ return false;
+ }
+ return true;
+ })) {
+ fprintf(stderr, "Failed to time MLDSA65_parse_private_key.\n");
+ return false;
+ }
+
+ results.Print("MLDSA parse (valid) private key");
+
+ const char *message = "Hello world";
+ size_t message_len = strlen(message);
+ auto out_encoded_signature =
+ std::make_unique<uint8_t[]>(MLDSA65_SIGNATURE_BYTES);
+ if (!TimeFunctionParallel(&results, [&]() -> bool {
+ if (!MLDSA65_sign(out_encoded_signature.get(), priv.get(),
+ (const uint8_t *)message, message_len, nullptr, 0)) {
+ fprintf(stderr, "Failure in MLDSA65_sign.\n");
+ return false;
+ }
+ return true;
+ })) {
+ fprintf(stderr, "Failed to time MLDSA65_sign.\n");
+ return false;
+ }
+
+ results.Print("MLDSA sign (randomized)");
+
+ auto pub = std::make_unique<MLDSA65_public_key>();
+
+ if (!TimeFunctionParallel(&results, [&]() -> bool {
+ CBS cbs;
+ CBS_init(&cbs, encoded_public_key.get(), MLDSA65_PUBLIC_KEY_BYTES);
+ if (!MLDSA65_parse_public_key(pub.get(), &cbs)) {
+ fprintf(stderr, "Failure in MLDSA65_parse_public_key.\n");
+ return false;
+ }
+ return true;
+ })) {
+ fprintf(stderr, "Failed to time MLDSA65_parse_public_key.\n");
+ return false;
+ }
+
+ results.Print("MLDSA parse (valid) public key");
+
+ if (!TimeFunctionParallel(&results, [&]() -> bool {
+ if (!MLDSA65_verify(pub.get(), out_encoded_signature.get(),
+ MLDSA65_SIGNATURE_BYTES, (const uint8_t *)message,
+ message_len, nullptr, 0)) {
+ fprintf(stderr, "Failed to verify MLDSA signature.\n");
+ return false;
+ }
+ return true;
+ })) {
+ fprintf(stderr, "Failed to time MLDSA65_verify.\n");
+ return false;
+ }
+
+ results.Print("MLDSA verify (valid signature)");
+
+ out_encoded_signature[42] ^= 0x42;
+ if (!TimeFunctionParallel(&results, [&]() -> bool {
+ if (MLDSA65_verify(pub.get(), out_encoded_signature.get(),
+ MLDSA65_SIGNATURE_BYTES, (const uint8_t *)message,
+ message_len, nullptr, 0)) {
+ fprintf(stderr, "MLDSA signature unexpectedly verified.\n");
+ return false;
+ }
+ return true;
+ })) {
+ fprintf(stderr, "Failed to time MLDSA65_verify.\n");
+ return false;
+ }
+
+ results.Print("MLDSA verify (invalid signature)");
+
+ return true;
+}
static bool SpeedDilithium(const std::string &selected) {
if (!selected.empty() && selected != "Dilithium") {
return true;
@@ -1769,18 +1881,19 @@
!SpeedHash(EVP_sha256(), "SHA-256", selected) ||
!SpeedHash(EVP_sha512(), "SHA-512", selected) ||
!SpeedHash(EVP_blake2b256(), "BLAKE2b-256", selected) ||
- !SpeedRandom(selected) || //
- !SpeedECDH(selected) || //
- !SpeedECDSA(selected) || //
- !Speed25519(selected) || //
- !SpeedSPAKE2(selected) || //
- !SpeedScrypt(selected) || //
- !SpeedRSAKeyGen(selected) || //
- !SpeedHRSS(selected) || //
- !SpeedKyber(selected) || //
- !SpeedDilithium(selected) || //
- !SpeedSpx(selected) || //
- !SpeedHashToCurve(selected) || //
+ !SpeedRandom(selected) || //
+ !SpeedECDH(selected) || //
+ !SpeedECDSA(selected) || //
+ !Speed25519(selected) || //
+ !SpeedSPAKE2(selected) || //
+ !SpeedScrypt(selected) || //
+ !SpeedRSAKeyGen(selected) || //
+ !SpeedHRSS(selected) || //
+ !SpeedKyber(selected) || //
+ !SpeedMLDSA(selected) || //
+ !SpeedDilithium(selected) || //
+ !SpeedSpx(selected) || //
+ !SpeedHashToCurve(selected) || //
!SpeedTrustToken("TrustToken-Exp1-Batch1", TRUST_TOKEN_experiment_v1(), 1,
selected) ||
!SpeedTrustToken("TrustToken-Exp1-Batch10", TRUST_TOKEN_experiment_v1(),
@@ -1793,7 +1906,7 @@
TRUST_TOKEN_experiment_v2_pmb(), 1, selected) ||
!SpeedTrustToken("TrustToken-Exp2PMB-Batch10",
TRUST_TOKEN_experiment_v2_pmb(), 10, selected) ||
- !SpeedBase64(selected) || //
+ !SpeedBase64(selected) || //
!SpeedSipHash(selected)) {
return false;
}
diff --git a/util/convert_wycheproof/convert_wycheproof.go b/util/convert_wycheproof/convert_wycheproof.go
index cf1e649..2832c96 100644
--- a/util/convert_wycheproof/convert_wycheproof.go
+++ b/util/convert_wycheproof/convert_wycheproof.go
@@ -29,7 +29,6 @@
Algorithm string `json:"algorithm"`
GeneratorVersion string `json:"generatorVersion"`
NumberOfTests int `json:"numberOfTests"`
- Notes map[string]string `json:"notes"`
Header []string `json:"header"`
// encoding/json does not support collecting unused keys, so we leave
// everything past this point as generic.
diff --git a/util/doc.config b/util/doc.config
index 4beae13..d982e64 100644
--- a/util/doc.config
+++ b/util/doc.config
@@ -37,6 +37,7 @@
"include/openssl/hkdf.h",
"include/openssl/hmac.h",
"include/openssl/md5.h",
+ "include/openssl/mldsa.h",
"include/openssl/rc4.h",
"include/openssl/rsa.h",
"include/openssl/sha.h",