Implement the AuthEncap/AuthDecap HPKE modes

Relevant spec bits:
https://www.rfc-editor.org/rfc/rfc9180.html#section-4.1
https://www.rfc-editor.org/rfc/rfc9180.html#section-5.1.3

Change-Id: Iddb151afc92f7a91beb9ca52caceec6cb5383206
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/59387
Reviewed-by: Adam Langley <agl@google.com>
Auto-Submit: David Benjamin <davidben@google.com>
Commit-Queue: David Benjamin <davidben@google.com>
diff --git a/crypto/hpke/hpke.c b/crypto/hpke/hpke.c
index 3dfdb29..144b127 100644
--- a/crypto/hpke/hpke.c
+++ b/crypto/hpke/hpke.c
@@ -53,6 +53,17 @@
   int (*decap)(const EVP_HPKE_KEY *key, uint8_t *out_shared_secret,
                size_t *out_shared_secret_len, const uint8_t *enc,
                size_t enc_len);
+  int (*auth_encap_with_seed)(const EVP_HPKE_KEY *key,
+                              uint8_t *out_shared_secret,
+                              size_t *out_shared_secret_len, uint8_t *out_enc,
+                              size_t *out_enc_len, size_t max_enc,
+                              const uint8_t *peer_public_key,
+                              size_t peer_public_key_len, const uint8_t *seed,
+                              size_t seed_len);
+  int (*auth_decap)(const EVP_HPKE_KEY *key, uint8_t *out_shared_secret,
+                    size_t *out_shared_secret_len, const uint8_t *enc,
+                    size_t enc_len, const uint8_t *peer_public_key,
+                    size_t peer_public_key_len);
 };
 
 struct evp_hpke_kdf_st {
@@ -211,6 +222,76 @@
   return 1;
 }
 
+static int x25519_auth_encap_with_seed(
+    const EVP_HPKE_KEY *key, uint8_t *out_shared_secret,
+    size_t *out_shared_secret_len, uint8_t *out_enc, size_t *out_enc_len,
+    size_t max_enc, const uint8_t *peer_public_key, size_t peer_public_key_len,
+    const uint8_t *seed, size_t seed_len) {
+  if (max_enc < X25519_PUBLIC_VALUE_LEN) {
+    OPENSSL_PUT_ERROR(EVP, EVP_R_INVALID_BUFFER_SIZE);
+    return 0;
+  }
+  if (seed_len != X25519_PRIVATE_KEY_LEN) {
+    OPENSSL_PUT_ERROR(EVP, EVP_R_DECODE_ERROR);
+    return 0;
+  }
+  X25519_public_from_private(out_enc, seed);
+
+  uint8_t dh[2 * X25519_SHARED_KEY_LEN];
+  if (peer_public_key_len != X25519_PUBLIC_VALUE_LEN ||
+      !X25519(dh, seed, peer_public_key) ||
+      !X25519(dh + X25519_SHARED_KEY_LEN, key->private_key, peer_public_key)) {
+    OPENSSL_PUT_ERROR(EVP, EVP_R_INVALID_PEER_KEY);
+    return 0;
+  }
+
+  uint8_t kem_context[3 * X25519_PUBLIC_VALUE_LEN];
+  OPENSSL_memcpy(kem_context, out_enc, X25519_PUBLIC_VALUE_LEN);
+  OPENSSL_memcpy(kem_context + X25519_PUBLIC_VALUE_LEN, peer_public_key,
+                 X25519_PUBLIC_VALUE_LEN);
+  OPENSSL_memcpy(kem_context + 2 * X25519_PUBLIC_VALUE_LEN, key->public_key,
+                 X25519_PUBLIC_VALUE_LEN);
+  if (!dhkem_extract_and_expand(key->kem->id, EVP_sha256(), out_shared_secret,
+                                SHA256_DIGEST_LENGTH, dh, sizeof(dh),
+                                kem_context, sizeof(kem_context))) {
+    return 0;
+  }
+
+  *out_enc_len = X25519_PUBLIC_VALUE_LEN;
+  *out_shared_secret_len = SHA256_DIGEST_LENGTH;
+  return 1;
+}
+
+static int x25519_auth_decap(const EVP_HPKE_KEY *key,
+                             uint8_t *out_shared_secret,
+                             size_t *out_shared_secret_len, const uint8_t *enc,
+                             size_t enc_len, const uint8_t *peer_public_key,
+                             size_t peer_public_key_len) {
+  uint8_t dh[2 * X25519_SHARED_KEY_LEN];
+  if (enc_len != X25519_PUBLIC_VALUE_LEN ||
+      peer_public_key_len != X25519_PUBLIC_VALUE_LEN ||
+      !X25519(dh, key->private_key, enc) ||
+      !X25519(dh + X25519_SHARED_KEY_LEN, key->private_key, peer_public_key)) {
+    OPENSSL_PUT_ERROR(EVP, EVP_R_INVALID_PEER_KEY);
+    return 0;
+  }
+
+  uint8_t kem_context[3 * X25519_PUBLIC_VALUE_LEN];
+  OPENSSL_memcpy(kem_context, enc, X25519_PUBLIC_VALUE_LEN);
+  OPENSSL_memcpy(kem_context + X25519_PUBLIC_VALUE_LEN, key->public_key,
+                 X25519_PUBLIC_VALUE_LEN);
+  OPENSSL_memcpy(kem_context + 2 * X25519_PUBLIC_VALUE_LEN, peer_public_key,
+                 X25519_PUBLIC_VALUE_LEN);
+  if (!dhkem_extract_and_expand(key->kem->id, EVP_sha256(), out_shared_secret,
+                                SHA256_DIGEST_LENGTH, dh, sizeof(dh),
+                                kem_context, sizeof(kem_context))) {
+    return 0;
+  }
+
+  *out_shared_secret_len = SHA256_DIGEST_LENGTH;
+  return 1;
+}
+
 const EVP_HPKE_KEM *EVP_hpke_x25519_hkdf_sha256(void) {
   static const EVP_HPKE_KEM kKEM = {
       /*id=*/EVP_HPKE_DHKEM_X25519_HKDF_SHA256,
@@ -222,6 +303,8 @@
       x25519_generate_key,
       x25519_encap_with_seed,
       x25519_decap,
+      x25519_auth_encap_with_seed,
+      x25519_auth_decap,
   };
   return &kKEM;
 }
@@ -373,8 +456,10 @@
 }
 
 #define HPKE_MODE_BASE 0
+#define HPKE_MODE_AUTH 2
 
-static int hpke_key_schedule(EVP_HPKE_CTX *ctx, const uint8_t *shared_secret,
+static int hpke_key_schedule(EVP_HPKE_CTX *ctx, uint8_t mode,
+                             const uint8_t *shared_secret,
                              size_t shared_secret_len, const uint8_t *info,
                              size_t info_len) {
   uint8_t suite_id[HPKE_SUITE_ID_LEN];
@@ -407,7 +492,7 @@
   size_t context_len;
   CBB context_cbb;
   CBB_init_fixed(&context_cbb, context, sizeof(context));
-  if (!CBB_add_u8(&context_cbb, HPKE_MODE_BASE) ||
+  if (!CBB_add_u8(&context_cbb, mode) ||
       !CBB_add_bytes(&context_cbb, psk_id_hash, psk_id_hash_len) ||
       !CBB_add_bytes(&context_cbb, info_hash, info_hash_len) ||
       !CBB_finish(&context_cbb, NULL, &context_len)) {
@@ -507,8 +592,8 @@
   if (!kem->encap_with_seed(kem, shared_secret, &shared_secret_len, out_enc,
                             out_enc_len, max_enc, peer_public_key,
                             peer_public_key_len, seed, seed_len) ||
-      !hpke_key_schedule(ctx, shared_secret, shared_secret_len, info,
-                         info_len)) {
+      !hpke_key_schedule(ctx, HPKE_MODE_BASE, shared_secret, shared_secret_len,
+                         info, info_len)) {
     EVP_HPKE_CTX_cleanup(ctx);
     return 0;
   }
@@ -528,8 +613,79 @@
   uint8_t shared_secret[MAX_SHARED_SECRET_LEN];
   size_t shared_secret_len;
   if (!key->kem->decap(key, shared_secret, &shared_secret_len, enc, enc_len) ||
-      !hpke_key_schedule(ctx, shared_secret, shared_secret_len, info,
-                         info_len)) {
+      !hpke_key_schedule(ctx, HPKE_MODE_BASE, shared_secret, shared_secret_len,
+                         info, info_len)) {
+    EVP_HPKE_CTX_cleanup(ctx);
+    return 0;
+  }
+  return 1;
+}
+
+
+int EVP_HPKE_CTX_setup_auth_sender(
+    EVP_HPKE_CTX *ctx, uint8_t *out_enc, size_t *out_enc_len, size_t max_enc,
+    const EVP_HPKE_KEY *key, const EVP_HPKE_KDF *kdf, const EVP_HPKE_AEAD *aead,
+    const uint8_t *peer_public_key, size_t peer_public_key_len,
+    const uint8_t *info, size_t info_len) {
+  uint8_t seed[MAX_SEED_LEN];
+  RAND_bytes(seed, key->kem->seed_len);
+  return EVP_HPKE_CTX_setup_auth_sender_with_seed_for_testing(
+      ctx, out_enc, out_enc_len, max_enc, key, kdf, aead, peer_public_key,
+      peer_public_key_len, info, info_len, seed, key->kem->seed_len);
+}
+
+int EVP_HPKE_CTX_setup_auth_sender_with_seed_for_testing(
+    EVP_HPKE_CTX *ctx, uint8_t *out_enc, size_t *out_enc_len, size_t max_enc,
+    const EVP_HPKE_KEY *key, const EVP_HPKE_KDF *kdf, const EVP_HPKE_AEAD *aead,
+    const uint8_t *peer_public_key, size_t peer_public_key_len,
+    const uint8_t *info, size_t info_len, const uint8_t *seed,
+    size_t seed_len) {
+  if (key->kem->auth_encap_with_seed == NULL) {
+    // Not all HPKE KEMs support AuthEncap.
+    OPENSSL_PUT_ERROR(EVP, EVP_R_OPERATION_NOT_SUPPORTED_FOR_THIS_KEYTYPE);
+    return 0;
+  }
+
+  EVP_HPKE_CTX_zero(ctx);
+  ctx->is_sender = 1;
+  ctx->kem = key->kem;
+  ctx->kdf = kdf;
+  ctx->aead = aead;
+  uint8_t shared_secret[MAX_SHARED_SECRET_LEN];
+  size_t shared_secret_len;
+  if (!key->kem->auth_encap_with_seed(
+          key, shared_secret, &shared_secret_len, out_enc, out_enc_len, max_enc,
+          peer_public_key, peer_public_key_len, seed, seed_len) ||
+      !hpke_key_schedule(ctx, HPKE_MODE_AUTH, shared_secret, shared_secret_len,
+                         info, info_len)) {
+    EVP_HPKE_CTX_cleanup(ctx);
+    return 0;
+  }
+  return 1;
+}
+
+int EVP_HPKE_CTX_setup_auth_recipient(
+    EVP_HPKE_CTX *ctx, const EVP_HPKE_KEY *key, const EVP_HPKE_KDF *kdf,
+    const EVP_HPKE_AEAD *aead, const uint8_t *enc, size_t enc_len,
+    const uint8_t *info, size_t info_len, const uint8_t *peer_public_key,
+    size_t peer_public_key_len) {
+  if (key->kem->auth_decap == NULL) {
+    // Not all HPKE KEMs support AuthDecap.
+    OPENSSL_PUT_ERROR(EVP, EVP_R_OPERATION_NOT_SUPPORTED_FOR_THIS_KEYTYPE);
+    return 0;
+  }
+
+  EVP_HPKE_CTX_zero(ctx);
+  ctx->is_sender = 0;
+  ctx->kem = key->kem;
+  ctx->kdf = kdf;
+  ctx->aead = aead;
+  uint8_t shared_secret[MAX_SHARED_SECRET_LEN];
+  size_t shared_secret_len;
+  if (!key->kem->auth_decap(key, shared_secret, &shared_secret_len, enc,
+                            enc_len, peer_public_key, peer_public_key_len) ||
+      !hpke_key_schedule(ctx, HPKE_MODE_AUTH, shared_secret, shared_secret_len,
+                         info, info_len)) {
     EVP_HPKE_CTX_cleanup(ctx);
     return 0;
   }
diff --git a/crypto/hpke/hpke_test.cc b/crypto/hpke/hpke_test.cc
index 87c72a8..03b23b5 100644
--- a/crypto/hpke/hpke_test.cc
+++ b/crypto/hpke/hpke_test.cc
@@ -66,11 +66,26 @@
     // Test the sender.
     ScopedEVP_HPKE_CTX sender_ctx;
     uint8_t enc[EVP_HPKE_MAX_ENC_LENGTH];
-    size_t enc_len;
-    ASSERT_TRUE(EVP_HPKE_CTX_setup_sender_with_seed_for_testing(
-        sender_ctx.get(), enc, &enc_len, sizeof(enc), kem, kdf, aead,
-        public_key_r_.data(), public_key_r_.size(), info_.data(), info_.size(),
-        secret_key_e_.data(), secret_key_e_.size()));
+    size_t enc_len = 0;
+    switch (mode_) {
+      case Mode::kBase:
+        ASSERT_TRUE(EVP_HPKE_CTX_setup_sender_with_seed_for_testing(
+            sender_ctx.get(), enc, &enc_len, sizeof(enc), kem, kdf, aead,
+            public_key_r_.data(), public_key_r_.size(), info_.data(),
+            info_.size(), secret_key_e_.data(), secret_key_e_.size()));
+        break;
+      case Mode::kAuth: {
+        ScopedEVP_HPKE_KEY sender_key;
+        ASSERT_TRUE(EVP_HPKE_KEY_init(
+            sender_key.get(), kem, secret_key_s_.data(), secret_key_s_.size()));
+        ASSERT_TRUE(EVP_HPKE_CTX_setup_auth_sender_with_seed_for_testing(
+            sender_ctx.get(), enc, &enc_len, sizeof(enc), sender_key.get(), kdf,
+            aead, public_key_r_.data(), public_key_r_.size(), info_.data(),
+            info_.size(), secret_key_e_.data(), secret_key_e_.size()));
+        break;
+      }
+    }
+
     EXPECT_EQ(Bytes(enc, enc_len), Bytes(public_key_e_));
     VerifySender(sender_ctx.get());
 
@@ -101,9 +116,18 @@
 
       // Set up the recipient.
       ScopedEVP_HPKE_CTX recipient_ctx;
-      ASSERT_TRUE(EVP_HPKE_CTX_setup_recipient(recipient_ctx.get(), key, kdf,
-                                               aead, enc, enc_len, info_.data(),
-                                               info_.size()));
+      switch (mode_) {
+        case Mode::kBase:
+          ASSERT_TRUE(EVP_HPKE_CTX_setup_recipient(recipient_ctx.get(), key,
+                                                   kdf, aead, enc, enc_len,
+                                                   info_.data(), info_.size()));
+          break;
+        case Mode::kAuth:
+          ASSERT_TRUE(EVP_HPKE_CTX_setup_auth_recipient(
+              recipient_ctx.get(), key, kdf, aead, enc, enc_len, info_.data(),
+              info_.size(), public_key_s_.data(), public_key_s_.size()));
+          break;
+      }
 
       VerifyRecipient(recipient_ctx.get());
     }
@@ -168,6 +192,11 @@
     }
   }
 
+  enum class Mode {
+    kBase = 0,
+    kAuth = 2,
+  };
+
   struct Encryption {
     std::vector<uint8_t> aad;
     std::vector<uint8_t> ciphertext;
@@ -180,6 +209,7 @@
     std::vector<uint8_t> exported_value;
   };
 
+  Mode mode_;
   uint16_t kdf_id_;
   uint16_t aead_id_;
   std::vector<uint8_t> context_;
@@ -188,6 +218,8 @@
   std::vector<uint8_t> secret_key_e_;
   std::vector<uint8_t> public_key_r_;
   std::vector<uint8_t> secret_key_r_;
+  std::vector<uint8_t> public_key_s_;
+  std::vector<uint8_t> secret_key_s_;
   std::vector<Encryption> encryptions_;
   std::vector<Export> exports_;
 };
@@ -227,7 +259,6 @@
 bool HPKETestVector::ReadFromFileTest(FileTest *t) {
   uint8_t mode = 0;
   if (!FileTestReadInt(t, &mode, "mode") ||
-      mode != 0 /* mode_base */ ||
       !FileTestReadInt(t, &kdf_id_, "kdf_id") ||
       !FileTestReadInt(t, &aead_id_, "aead_id") ||
       !t->GetBytes(&info_, "info") ||
@@ -238,6 +269,21 @@
     return false;
   }
 
+  switch (mode) {
+    case static_cast<int>(Mode::kBase):
+      mode_ = Mode::kBase;
+      break;
+    case static_cast<int>(Mode::kAuth):
+      mode_ = Mode::kAuth;
+      if (!t->GetBytes(&secret_key_s_, "skSm") ||
+          !t->GetBytes(&public_key_s_, "pkSm")) {
+        return false;
+      }
+      break;
+    default:
+      return false;
+  }
+
   for (int i = 1; t->HasAttribute(BuildAttrName("aad", i)); i++) {
     Encryption encryption;
     if (!t->GetBytes(&encryption.aad, BuildAttrName("aad", i)) ||
@@ -282,14 +328,25 @@
   Span<const uint8_t> info_values[] = {{nullptr, 0}, info_a, info_b};
   Span<const uint8_t> ad_values[] = {{nullptr, 0}, ad_a, ad_b};
 
+  const EVP_HPKE_KEM *kem = EVP_hpke_x25519_hkdf_sha256();
+
   // Generate the recipient's keypair.
   ScopedEVP_HPKE_KEY key;
-  ASSERT_TRUE(EVP_HPKE_KEY_generate(key.get(), EVP_hpke_x25519_hkdf_sha256()));
+  ASSERT_TRUE(EVP_HPKE_KEY_generate(key.get(), kem));
   uint8_t public_key_r[X25519_PUBLIC_VALUE_LEN];
   size_t public_key_r_len;
   ASSERT_TRUE(EVP_HPKE_KEY_public_key(key.get(), public_key_r,
                                       &public_key_r_len, sizeof(public_key_r)));
 
+  // Generate the sender's keypair, for auth modes.
+  ScopedEVP_HPKE_KEY sender_key;
+  ASSERT_TRUE(
+      EVP_HPKE_KEY_generate(sender_key.get(), kem));
+  uint8_t public_key_s[X25519_PUBLIC_VALUE_LEN];
+  size_t public_key_s_len;
+  ASSERT_TRUE(EVP_HPKE_KEY_public_key(sender_key.get(), public_key_s,
+                                      &public_key_s_len, sizeof(public_key_r)));
+
   for (const auto kdf : kAllKDFs) {
     SCOPED_TRACE(EVP_HPKE_KDF_id(kdf()));
     for (const auto aead : kAllAEADs) {
@@ -298,45 +355,70 @@
         SCOPED_TRACE(Bytes(info));
         for (const Span<const uint8_t> &ad : ad_values) {
           SCOPED_TRACE(Bytes(ad));
-          // Set up the sender.
-          ScopedEVP_HPKE_CTX sender_ctx;
-          uint8_t enc[X25519_PUBLIC_VALUE_LEN];
-          size_t enc_len;
-          ASSERT_TRUE(EVP_HPKE_CTX_setup_sender(
-              sender_ctx.get(), enc, &enc_len, sizeof(enc),
-              EVP_hpke_x25519_hkdf_sha256(), kdf(), aead(), public_key_r,
-              public_key_r_len, info.data(), info.size()));
 
-          // Set up the recipient.
-          ScopedEVP_HPKE_CTX recipient_ctx;
-          ASSERT_TRUE(EVP_HPKE_CTX_setup_recipient(
-              recipient_ctx.get(), key.get(), kdf(), aead(), enc, enc_len,
-              info.data(), info.size()));
+          auto check_messages = [&](EVP_HPKE_CTX *sender_ctx,
+                                    EVP_HPKE_CTX *recipient_ctx) {
+            const char kCleartextPayload[] = "foobar";
 
-          const char kCleartextPayload[] = "foobar";
+            // Have sender encrypt message for the recipient.
+            std::vector<uint8_t> ciphertext(
+                sizeof(kCleartextPayload) +
+                EVP_HPKE_CTX_max_overhead(sender_ctx));
+            size_t ciphertext_len;
+            ASSERT_TRUE(EVP_HPKE_CTX_seal(
+                sender_ctx, ciphertext.data(), &ciphertext_len,
+                ciphertext.size(),
+                reinterpret_cast<const uint8_t *>(kCleartextPayload),
+                sizeof(kCleartextPayload), ad.data(), ad.size()));
 
-          // Have sender encrypt message for the recipient.
-          std::vector<uint8_t> ciphertext(
-              sizeof(kCleartextPayload) +
-              EVP_HPKE_CTX_max_overhead(sender_ctx.get()));
-          size_t ciphertext_len;
-          ASSERT_TRUE(EVP_HPKE_CTX_seal(
-              sender_ctx.get(), ciphertext.data(), &ciphertext_len,
-              ciphertext.size(),
-              reinterpret_cast<const uint8_t *>(kCleartextPayload),
-              sizeof(kCleartextPayload), ad.data(), ad.size()));
+            // Have recipient decrypt the message.
+            std::vector<uint8_t> cleartext(ciphertext.size());
+            size_t cleartext_len;
+            ASSERT_TRUE(EVP_HPKE_CTX_open(recipient_ctx, cleartext.data(),
+                                          &cleartext_len, cleartext.size(),
+                                          ciphertext.data(), ciphertext_len,
+                                          ad.data(), ad.size()));
 
-          // Have recipient decrypt the message.
-          std::vector<uint8_t> cleartext(ciphertext.size());
-          size_t cleartext_len;
-          ASSERT_TRUE(EVP_HPKE_CTX_open(recipient_ctx.get(), cleartext.data(),
-                                        &cleartext_len, cleartext.size(),
-                                        ciphertext.data(), ciphertext_len,
-                                        ad.data(), ad.size()));
+            // Verify that decrypted message matches the original.
+            ASSERT_EQ(Bytes(cleartext.data(), cleartext_len),
+                      Bytes(kCleartextPayload, sizeof(kCleartextPayload)));
+          };
 
-          // Verify that decrypted message matches the original.
-          ASSERT_EQ(Bytes(cleartext.data(), cleartext_len),
-                    Bytes(kCleartextPayload, sizeof(kCleartextPayload)));
+          // Test the base mode.
+          {
+            ScopedEVP_HPKE_CTX sender_ctx;
+            uint8_t enc[X25519_PUBLIC_VALUE_LEN];
+            size_t enc_len;
+            ASSERT_TRUE(EVP_HPKE_CTX_setup_sender(
+                sender_ctx.get(), enc, &enc_len, sizeof(enc), kem, kdf(),
+                aead(), public_key_r, public_key_r_len, info.data(),
+                info.size()));
+
+            ScopedEVP_HPKE_CTX recipient_ctx;
+            ASSERT_TRUE(EVP_HPKE_CTX_setup_recipient(
+                recipient_ctx.get(), key.get(), kdf(), aead(), enc, enc_len,
+                info.data(), info.size()));
+
+            check_messages(sender_ctx.get(), recipient_ctx.get());
+          }
+
+          // Test the auth mode.
+          {
+            ScopedEVP_HPKE_CTX sender_ctx;
+            uint8_t enc[X25519_PUBLIC_VALUE_LEN];
+            size_t enc_len;
+            ASSERT_TRUE(EVP_HPKE_CTX_setup_auth_sender(
+                sender_ctx.get(), enc, &enc_len, sizeof(enc), sender_key.get(),
+                kdf(), aead(), public_key_r, public_key_r_len, info.data(),
+                info.size()));
+
+            ScopedEVP_HPKE_CTX recipient_ctx;
+            ASSERT_TRUE(EVP_HPKE_CTX_setup_auth_recipient(
+                recipient_ctx.get(), key.get(), kdf(), aead(), enc, enc_len,
+                info.data(), info.size(), public_key_s, public_key_s_len));
+
+            check_messages(sender_ctx.get(), recipient_ctx.get());
+          }
         }
       }
     }
@@ -352,6 +434,11 @@
       0xfa, 0xf1, 0x9f, 0xc4, 0x6a, 0xda, 0x09, 0x8d, 0xeb, 0x9c, 0x32,
       0xb1, 0xfd, 0x86, 0x62, 0x05, 0x16, 0x5f, 0x49, 0xb8,
   };
+  static const uint8_t kValidPoint[32] = {
+      0xe6, 0xdb, 0x68, 0x67, 0x58, 0x30, 0x30, 0xdb, 0x35, 0x94, 0xc1,
+      0xa4, 0x24, 0xb1, 0x5f, 0x7c, 0x72, 0x66, 0x24, 0xec, 0x26, 0xb3,
+      0x35, 0x3b, 0x10, 0xa9, 0x03, 0xa6, 0xd0, 0xab, 0x1c, 0x4c,
+  };
 
   ScopedEVP_HPKE_KEY key;
   ASSERT_TRUE(EVP_HPKE_KEY_generate(key.get(), EVP_hpke_x25519_hkdf_sha256()));
@@ -364,16 +451,32 @@
       ScopedEVP_HPKE_CTX sender_ctx;
       uint8_t enc[X25519_PUBLIC_VALUE_LEN];
       size_t enc_len;
-      ASSERT_FALSE(EVP_HPKE_CTX_setup_sender(
+      EXPECT_FALSE(EVP_HPKE_CTX_setup_sender(
           sender_ctx.get(), enc, &enc_len, sizeof(enc),
           EVP_hpke_x25519_hkdf_sha256(), kdf(), aead(), kSmallOrderPoint,
           sizeof(kSmallOrderPoint), nullptr, 0));
 
+      // Likewise with auth.
+      EXPECT_FALSE(EVP_HPKE_CTX_setup_auth_sender(
+          sender_ctx.get(), enc, &enc_len, sizeof(enc), key.get(), kdf(),
+          aead(), kSmallOrderPoint, sizeof(kSmallOrderPoint), nullptr, 0));
+
       // Set up the recipient, passing in kSmallOrderPoint as |enc|.
       ScopedEVP_HPKE_CTX recipient_ctx;
-      ASSERT_FALSE(EVP_HPKE_CTX_setup_recipient(
+      EXPECT_FALSE(EVP_HPKE_CTX_setup_recipient(
           recipient_ctx.get(), key.get(), kdf(), aead(), kSmallOrderPoint,
           sizeof(kSmallOrderPoint), nullptr, 0));
+
+      // Likewise with auth. With auth, a small-order point could appear as
+      // either |enc| or the peer public key.
+      EXPECT_FALSE(EVP_HPKE_CTX_setup_auth_recipient(
+          recipient_ctx.get(), key.get(), kdf(), aead(), kSmallOrderPoint,
+          sizeof(kSmallOrderPoint), nullptr, 0, kValidPoint,
+          sizeof(kValidPoint)));
+      EXPECT_FALSE(EVP_HPKE_CTX_setup_auth_recipient(
+          recipient_ctx.get(), key.get(), kdf(), aead(), kValidPoint,
+          sizeof(kValidPoint), nullptr, 0, kSmallOrderPoint,
+          sizeof(kSmallOrderPoint)));
     }
   }
 }
diff --git a/crypto/hpke/hpke_test_vectors.txt b/crypto/hpke/hpke_test_vectors.txt
index bb708b3..f99ee23 100644
--- a/crypto/hpke/hpke_test_vectors.txt
+++ b/crypto/hpke/hpke_test_vectors.txt
@@ -1047,6 +1047,1057 @@
 L = 32
 exported_value = e9e43065102c3836401bed8c3c3c75ae46be1639869391d62c61f1ec7af54931
 
+mode = 2
+kdf_id = 1
+aead_id = 1
+info = 4f6465206f6e2061204772656369616e2055726e
+skRm = fdea67cf831f1ca98d8e27b1f6abeb5b7745e9d35348b80fa407ff6958f9137e
+skEm = ff4442ef24fbc3c1ff86375b0be1e77e88a0de1e79b30896d73411c5ff4c3518
+pkRm = 1632d5c2f71c2b38d0a8fcc359355200caa8b1ffdf28618080466c909cb69b2e
+pkEm = 23fb952571a14a25e3d678140cd0e5eb47a0961bb18afcf85896e5453c312e76
+pkSm = 8b0c70873dc5aecb7f9ee4e62406a397b350e57012be45cf53b7105ae731790b
+skSm = dc4a146313cce60a278a5323d321f051c5707e9c45ba21a3479fecdf76fc69dd
+# encryptions[0]
+aad = 436f756e742d30
+ct = 5fd92cc9d46dbf8943e72a07e42f363ed5f721212cd90bcfd072bfd9f44e06b80fd17824947496e21b680c141b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[1]
+aad = 436f756e742d31
+ct = d3736bb256c19bfa93d79e8f80b7971262cb7c887e35c26370cfed62254369a1b52e3d505b79dd699f002bc8ed
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[2]
+aad = 436f756e742d32
+ct = 122175cfd5678e04894e4ff8789e85dd381df48dcaf970d52057df2c9acc3b121313a2bfeaa986050f82d93645
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[3]
+aad = 436f756e742d33
+ct = 81448cec70230638b6c6b8fab63b430f3ee3d506a96229bd825fe8139f3231c6e1db349beb18bdcd8bcf796ff9
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[4]
+aad = 436f756e742d34
+ct = dae12318660cf963c7bcbef0f39d64de3bf178cf9e585e756654043cc5059873bc8af190b72afc43d1e0135ada
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[5]
+aad = 436f756e742d35
+ct = f998abcc1c84c6e421d6b7049fddf1839e7c5464645b7c5376edbfcd4d74352648645b08f6803a56ea624158e3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[6]
+aad = 436f756e742d36
+ct = e0b80588421e345c607b6dcf7485dfa28ecba51c083a5e4c748deabf49cd8ce8ad64ab16a818d97c94f5cbcba4
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[7]
+aad = 436f756e742d37
+ct = ad7d5a8737c52c89521932e36470236e171c6e0e020983b4e8f7bd443a743f616220c23ad15b6eba04a0490f7a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[8]
+aad = 436f756e742d38
+ct = 12990eadd503e2684efd367ef6eb7c10bd901a8db1d7cbd76f1eab25b1770fda29756f2432334b7cb59ddc5ad7
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[9]
+aad = 436f756e742d39
+ct = 6df5a172c5ed16fc3d4c7e55e3bc931a359282ba7142f3fa7da6d7feea0ae0c8071a081876df3d38cfaea8089b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[10]
+aad = 436f756e742d3130
+ct = ac214db460440110a9874b512e41384d7960711016d470a9e8059e6f4d46338742a4e0c8190e51b0c8a7d3322b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[11]
+aad = 436f756e742d3131
+ct = 8ecc6adb36ae93e951da72468b99141e38103e5d5e872577d1d5e4a7fb9d12729a678c4905471fd2b767b2cdac
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[12]
+aad = 436f756e742d3132
+ct = d5ae8d2f471d28ae1ec85a0ea544ccf9d828bdf76946556d705d0900f4f52edabe8b1b86f760d5b27ede114bb4
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[13]
+aad = 436f756e742d3133
+ct = d2d736316eb91cb3a019402f1ea2f95601e16a5f7cf2aa0493b9a0a9822e8a0c5ff701e2dc4dd98c7a4361eae1
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[14]
+aad = 436f756e742d3134
+ct = c98347b851ad8570f2a6e25a7d8ffbaa0514fad0a67a567cafb7f2f16bd185a2d366fbaeb993aade524c288c11
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[15]
+aad = 436f756e742d3135
+ct = a6ec1b6537df7d82ddd411da2fd2d6c80a6e1a81a94c14a04f928cc43f6595dbfb9820e201034b69d4361fa294
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[16]
+aad = 436f756e742d3136
+ct = 64136b023c77e329b6c0585cbef0ef139b7da50fb37ef0d465687be24da10465e1a4dcb9f9d10ff8d4b8b2adf6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[17]
+aad = 436f756e742d3137
+ct = 4781db96aaca00e95d6a33a87b5aa4d4febc7a11cf984365651e793b96bb2fca0a5c5addeb0a4eda8558eb4639
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[18]
+aad = 436f756e742d3138
+ct = efbcd0926dddc95b33bca922dbadf82df2d928f211cd1a95059bca159cbb2ad1ae4b44983c15079c3f3e5548a6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[19]
+aad = 436f756e742d3139
+ct = b00418a10ed979ddc5f733c8d6e1feac93398f99a03ba258ec3ce46b801028ca218de871dbf35a9f90230a2d28
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[20]
+aad = 436f756e742d3230
+ct = 9a69b169ef765433fe6ec1414ee5c7aa84974d2dd47c7ca95eca39cc3016730656fbc2632dd8b0fac86bdb36e8
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[21]
+aad = 436f756e742d3231
+ct = 781645d997518600d2d331939f4306c2f4ab72b4b8b6aac3d0bae922518821f5f3eef7356ede837d706c9e0ad8
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[22]
+aad = 436f756e742d3232
+ct = c7ab847bda8e799ce31cb751d8d8b40a44a69a797c61de5b4b26b5083ffd6ead2dc6c9c85e044ae953d59e9226
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[23]
+aad = 436f756e742d3233
+ct = e598a17f69b9f2516abea3602756f864cceb7e75c292e152c0fcafbe006321d6d7229d8eb7d7a5bc233daeb93e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[24]
+aad = 436f756e742d3234
+ct = 6c93a379fe85e3cb345d3f3c78983003900283ac7cb685796b739b77eb15da62834c87169fca6da3f33f12782e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[25]
+aad = 436f756e742d3235
+ct = 62be42591a5e2cdcf43ee38d4a01e36a46dd349ae5e25f0cf0f9d1d303a49788b2d782abce7a9015983eaac1de
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[26]
+aad = 436f756e742d3236
+ct = 88ffba9f0cb873174ce8467e4f0101e1b4408ac8dc6cdd9f924551ba9eee57c96901ca19c592cc0e7aee3652d4
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[27]
+aad = 436f756e742d3237
+ct = ab98458f4280faa8a00d5bf65846ea270ce47b05e887fdb48b2ecc17e62d1399ba45eb23a370dbde5067b7ac27
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[28]
+aad = 436f756e742d3238
+ct = 4181af4e773e309ce7a4ac04ad08828378b4644e8a33b8be02776659d1c13c25d1cf3d95de95d15e4f251098eb
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[29]
+aad = 436f756e742d3239
+ct = 566c4c023069ac3a2e9ad94e29819d0846fcb023614f04fcc107b825a6004dd48082173da952b9466b898e9514
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[30]
+aad = 436f756e742d3330
+ct = 14e76dca587889d13c87b6f9198e40bf708b59eeb7524a3330acde681414f0b563bb73681077ab2c3e49a34b2c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[31]
+aad = 436f756e742d3331
+ct = 02be122d5b3fa62dd45baacc13c060c726da0ed95e6cb64b75d91abd08c237a0e0f48b7442737c403a470ef86e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[32]
+aad = 436f756e742d3332
+ct = 608ceaf60a18be198b8b3ef4772a550f5803412108a8fbb97dfe7ddbb34900774f4c22056c48f9abec995be7ef
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[33]
+aad = 436f756e742d3333
+ct = c229036df4aff67458d0779e2d9a4a50ff775ff64dc73acde6abb01098c2b25b7e7075707d3ffaaa696fa2db2a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[34]
+aad = 436f756e742d3334
+ct = b5d56ebb67daa05ca9b6c8d65742a8ef164b2ad5a108d61a77af584897ee41d349903af4e1c9a2a0f16d16ac52
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[35]
+aad = 436f756e742d3335
+ct = a9406787523a3fc63adf9a04a1df6fffe90a8f8251a623bc144aa3ee0efa0d5aee37d95f0cb769d49293e154c1
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[36]
+aad = 436f756e742d3336
+ct = 9ed258258a8f8bf329162d322a3edb75ed1799e0543f39fe168bb1aae05ccc1a5532a3c4df7aae26fcd39513dd
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[37]
+aad = 436f756e742d3337
+ct = 958ff65e212d9dcfe399ee93a921bd0235fca5a8e4836bf854ecc5e2fdbb664fa7d9ebd5d3bd52018290b793c6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[38]
+aad = 436f756e742d3338
+ct = 329831514fd6313f44895b2acc15657966fd6b800e63f7a53fe5198d34e30df848de3068b1921661ddf05681c2
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[39]
+aad = 436f756e742d3339
+ct = dc37ec0e2c08be44d9ec709138e811b116a2bdff4f89c8a0639783165ca3da21967e4d2c08927e5beb446662c6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[40]
+aad = 436f756e742d3430
+ct = 7b8c1fd6061641cef0913dcb80dec12274352bd94eaf46b631b1968daf5b3db6aa21336c9878a194957b466058
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[41]
+aad = 436f756e742d3431
+ct = 09227ba8d90dafd0948dcb79cc661011b022ae576102c7ba67cfbc4b04fecd6cc7edd86718a23a11bf97100631
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[42]
+aad = 436f756e742d3432
+ct = 86ca60e820b54fb1d39b4c23d3f390e9cdbbd4220e24267cea51bfd90021b2f16762a7bf44a66e79040c63933b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[43]
+aad = 436f756e742d3433
+ct = e9108564d752c2c56faecfdf36ac2c849c8d1e923ad6bf331a60bc5bbb45aff7ea7c334193bbd7f4143b61c185
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[44]
+aad = 436f756e742d3434
+ct = 87ffaa9446a4a80fad33fdab7e397b9376f8ca33e20e48a500446b60204f2937bae2836798735a3dac0ff5a880
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[45]
+aad = 436f756e742d3435
+ct = 0da994a818399e05a41f120b7b84c1470bb33828908876b9bee7754a52b6487b092da01ca67cb021eeed43c223
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[46]
+aad = 436f756e742d3436
+ct = 0217ccaf0e54da8efbbad4948d54e90ca3c3b60ad39e54ac9f716ef0dd33cacdb897f6973ec66024862829b0e2
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[47]
+aad = 436f756e742d3437
+ct = b700163bb5c7b11c8e8808199cd8a6cc82db500abaf3a2facfaf678431ec5bf7783d9395e450bb7d107463618e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[48]
+aad = 436f756e742d3438
+ct = 8fccbfb3882371b7a04af739edb48c87f1f1d34621563ce766815ff4a049da9045943860e5cf2cd1cc02bfb8b4
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[49]
+aad = 436f756e742d3439
+ct = 13813c57857656d5dea3730a4e6430b300a1dc2942a5b1400cb45776533a407143224af56785e9149bf072721a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[50]
+aad = 436f756e742d3530
+ct = 975c0845a0955774ba4ae6386218491084b22a721d4bfb977ab50611fb5fe579fbd041beb05c04566feb1a7a69
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[51]
+aad = 436f756e742d3531
+ct = a5b8ac851160bdea05e5d85f5c4ff730c967edb4665134633dd2ca26a802760a8ff0f64096814698ed5eb0e546
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[52]
+aad = 436f756e742d3532
+ct = 1da6e12454409f9ae5560fdc8274069345307c9b719d54d42c8053b18fad3b369aeaa6a27126aa846776b06c15
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[53]
+aad = 436f756e742d3533
+ct = 50de3f90d54c98ca5e52d854d107b7f52c22576f1a9e77973baa6e9e9e4a69430e504094a1818294645f475cbe
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[54]
+aad = 436f756e742d3534
+ct = e8460cf57d8bb3ab36a6b577f1c24d4a7d55c71e0b47422b950ff046ae25ed41a66d89d70bb4b40edae7666cd7
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[55]
+aad = 436f756e742d3535
+ct = df0a371a1a83bcbc24105317a97e134f4ca95c2aa875ac86b99b36347159c25d84d84882e48bbc7942fc25047f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[56]
+aad = 436f756e742d3536
+ct = 5eeceae1e61e5ee09bab6d6c793226a642bf5dfc281ab2f8a6da7bbdaf44578b3fcbd3386685ed8e28b7af9aa7
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[57]
+aad = 436f756e742d3537
+ct = fa6dcdca295a350c7614f14b491ac3b25ee40241ae6ee36a2b416e1a46a6b3806ada8b7a525921e6b98b085498
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[58]
+aad = 436f756e742d3538
+ct = 439423232f496bb252d246e44c7bfcb1f8a62c8fd3a97ca98107dad5632d17fd423e6b36265a67764f08db8fe6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[59]
+aad = 436f756e742d3539
+ct = fc9eb541b325893b4a4818619b00b5988356bf07af8fe4c34c6dd0eca427a829fef7a3dbcf0172e868b0353d16
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[60]
+aad = 436f756e742d3630
+ct = 23e5725b20a8b5db67fb9b64861718c1f148c1927533e2b499891f33c66b46700fb0c6e99f37b98aa278c1044a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[61]
+aad = 436f756e742d3631
+ct = db051cd509ded5ba54169f883df5ec36dcf155242c24cb999aace1c2d05805814af27b5ac85bf5201282c5437f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[62]
+aad = 436f756e742d3632
+ct = 63436a676cb38ed9f79cef1a7a255e6ea5aeddcb23187a43628990dc4810049c3ceb87b0b603d9f0671ca17023
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[63]
+aad = 436f756e742d3633
+ct = 3cc01a55b16ba7baeff8b99bad41156c284f12876e288ef0706f0bafccb6e1a02c9dba61e766a7992073f2267a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[64]
+aad = 436f756e742d3634
+ct = ece18db78b48e32e9880fd5bcdc69ba51b7d4d1f9fd3aab4542c87260d15f86bacafee4f59aa743a38c0b15355
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[65]
+aad = 436f756e742d3635
+ct = a0523c4744573ac4900f9945c36bb8d85c36e890b302a53f310805f59295e66dc5276a9b4a3a2c320b957a1384
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[66]
+aad = 436f756e742d3636
+ct = 4fdf4ade68a050e46002772274f44d948aa705798279fa4404e42b2e4edcac0b09f0099514e3a93bd7a0f8b68d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[67]
+aad = 436f756e742d3637
+ct = 63acdebd758d7776c0de540d44de08fac33a9eeff15b6c06e9ee74d52416e7c791e407486c82c88f46b4d50b62
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[68]
+aad = 436f756e742d3638
+ct = f86f589944e090e7bcad7eca46ff36e976a464145d3991d4ddf3381fd8683177d5ee87b1c8178c86dc183bae81
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[69]
+aad = 436f756e742d3639
+ct = 05f5471471b5b660deb10c97bddd25dd194f7f43f256725f055110b25bbccf4033cc99da41dab17b650b6a88d0
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[70]
+aad = 436f756e742d3730
+ct = 5fff11dd9778ac87d60b20639d261508326ddbb935a6f9fa71c58d20678bb71356ad42f0110f62a798b0941e02
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[71]
+aad = 436f756e742d3731
+ct = 80b2e9bba9e59d89c86251450b7bd08a53aa618a0b555e74224642d43924f5b46d4e40efc5291178bd162cc38a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[72]
+aad = 436f756e742d3732
+ct = c31baa7d0246c32738420a7c848f998be00e155022636b90a4e2f5957fe7d41ca78005d5562e1a2ed06e3f80ea
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[73]
+aad = 436f756e742d3733
+ct = a0bd8668746dd5718d0890b32df5a7edff64a31917f2174e124c64f2a9e454f9cbba573cd6a338f85c6570c437
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[74]
+aad = 436f756e742d3734
+ct = bf893670d1f7b8fc9980b0dcdfc7245bc8b27fb894f9607f0e2fb4cf09b50951ddab19165579b00421696ac21f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[75]
+aad = 436f756e742d3735
+ct = aedf69ddaf28dae07110560ebb7d1ff2f20949ca874009b7c99c6c316f1592e72e48c877a859dbc506cf99e76b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[76]
+aad = 436f756e742d3736
+ct = 41e85cbcc31f046537ca10d1e0a66e3b6056a1f46a27cc96645d885aa6eeff6bb0a4ea4edab73fb544dfe58581
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[77]
+aad = 436f756e742d3737
+ct = f9e5f909b0a75b5d92b586597d4de6e740b5a83fa2d78ed1f32bc11e147c85496a16fcc85b66fce6ba94e6c67c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[78]
+aad = 436f756e742d3738
+ct = 9baf794b4d654aeea56be02d01bcb21d2b186809e138724cb6114d49a7a6fc3803cd4d864de78665d12c5a6425
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[79]
+aad = 436f756e742d3739
+ct = 2f224c7f088822260ad71775444c01c71bc871a7f56803b95c13c9f159a523ae53c000d5c21f12fc76763d2074
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[80]
+aad = 436f756e742d3830
+ct = b8047bf627a69f930658561d2d005a7e2f12e90292dc16a9c629645409a4de2e86679db9faf011901a69269e1f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[81]
+aad = 436f756e742d3831
+ct = 64e7d452410b8d53713677ad165fe962cc08952f10f9d278f16f73806b64b14f8780834a1338a19924c4fec4a3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[82]
+aad = 436f756e742d3832
+ct = a47b2785274a366fcfb0444ab8efd960194d6ca56d43c982c6b0b50fde16a9ee95a22cf54c985e2429b2c21a61
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[83]
+aad = 436f756e742d3833
+ct = 200afde88045125efb6515a23c8caf595f05a35509095a967378bd84e5383a306f72f6d5cef6af15c4563b554f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[84]
+aad = 436f756e742d3834
+ct = 4b4843954a9e2ba61595c5d2b71b4feff5c84232e53d6593a702dca7cd0a5ccb5d0d3725d7f9795ba1e7689b49
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[85]
+aad = 436f756e742d3835
+ct = dfb69ecc70667ad3d2adf8d263d012cb44235778a61ccd579863c6bb8b2d2582cf1a391de20f155b2fbb84ef2d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[86]
+aad = 436f756e742d3836
+ct = da056aeeac653289bbbab6a1aca568ae68103d1cb1295f7fd5491b2e285d26e0ce4502786495cdd6dea5119050
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[87]
+aad = 436f756e742d3837
+ct = 51a2ddf0c656fb01e203dd54bd80f2626727c33a37aad2414e3fe5e07a9d9c53f7f035924c89ae068bf8005aec
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[88]
+aad = 436f756e742d3838
+ct = 95a1a85f709d79b0a58e7116b6323ddad572c165ffaadac7ffa9598a262e30522603d4fe1761e42408c595d0f2
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[89]
+aad = 436f756e742d3839
+ct = c4c2c129dbbfe2b327352ef4a137159de3a85802c4930b744134a62e35868f3722053fbaa9a5f1cb16d49592ac
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[90]
+aad = 436f756e742d3930
+ct = e5992c2caf9e0596fcd502a4b554300fb454a26ba2a99e5fca0e8c0f2a1d640726e322e41986b600b94f82e8ea
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[91]
+aad = 436f756e742d3931
+ct = 27887d96745fa8c476b816c1e8de4fc7389079baed2c0c291af27f9b802d49d768ab7ee7d8b8ad6a4b4efdf081
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[92]
+aad = 436f756e742d3932
+ct = 49f4ab17cc03b6e18d393b56a3860e9d88f7177fad47678c94e15da52f3aabbba208803c1d3ebe630385a612da
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[93]
+aad = 436f756e742d3933
+ct = 0aa5ff588989b5f855c507fbe0b002108bfa9aba5d3459041c6282216baa58b82a54e81ea4cd7ab8a6fc5d239c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[94]
+aad = 436f756e742d3934
+ct = 98b19c082e948172ea6a0c2e7bd1b99adbf828936f6d2b1b356fc4bb7545839bc56d81f7754f32110a768a908d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[95]
+aad = 436f756e742d3935
+ct = af857d081486a28209db9124f78e6bebb651854092483d7b74e0c26b076e8d848918ecb6c7ebb0a3b86f31b54f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[96]
+aad = 436f756e742d3936
+ct = 7fb0ebececaafa792613ffc21ddd744cce2c117a7fb4f7dd98630d5aa588557502835d75375fce13af191f2c1b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[97]
+aad = 436f756e742d3937
+ct = f5c519e52b8ff3f45f42eb20df56c11da4c44f65b14518b7d8fd663517cc33121f2606d7d0ebd28965ca7c79f7
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[98]
+aad = 436f756e742d3938
+ct = e215ae3bc8168ae5c1e24cd9ed4ddefee8a663813c98aaa94c97fc7299e27b749e30b63e8a63ba7d66a397c8f5
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[99]
+aad = 436f756e742d3939
+ct = d3fc389d3a47d3b4f57ec7bebe6df29561d5fd0d08fe087db6bcf11c3859cce5e31a43d123d3a765ae425db2e3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[100]
+aad = 436f756e742d313030
+ct = d559c490d3bf31b205c1c24df652bee186bebcc9bf2798f3e3839a171765d4fd6064cfcab00d0a4fa924bd77db
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[101]
+aad = 436f756e742d313031
+ct = d94b85acd8b65f6c30d0928c4ab64cfd20b68cd32b6e9c66085255d3adfddff964f21f6a6a0de506b3d0e60afa
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[102]
+aad = 436f756e742d313032
+ct = 844d58bd48a973956b27134c63c95abc6ed159671601f69b49e07d372a9df1c754c68ea906c4826d40979bf6cb
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[103]
+aad = 436f756e742d313033
+ct = 98032e309da113a76dcd4ed0a1a4c1f912701b39a744070bebe648395d67cb4d7e45862a8b1e0bccc068da3658
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[104]
+aad = 436f756e742d313034
+ct = 80586eb97612a4216cc17ae8a28e0f53ecc59c09cb51d48b59c546e067db7ca9080656297d797d1861b3f31aa6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[105]
+aad = 436f756e742d313035
+ct = d881138799714f3c37801f45169a681cab1ca82c05f7ec3bbcf9dc46268129dd6d06696fcd0441bccd0fecd084
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[106]
+aad = 436f756e742d313036
+ct = e22d4de220344386a58c2c9227c390d64c629c896db4983c719117a3b296db4b8167d022416dae6e2577a1c831
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[107]
+aad = 436f756e742d313037
+ct = 1dc52775bf6b3039aff1c911e795d0ff4ff8d33e11a22af4ded075c5d9c3d32082fb29e30b219776ace8e9108d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[108]
+aad = 436f756e742d313038
+ct = 319f7752f2922e1998b657deef0d60fdf8be55774ef2e092d0b14cda85b53fba177892cda90eeb8484f209ff67
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[109]
+aad = 436f756e742d313039
+ct = 6bffdd2a91a76ef016820755729dd1cc762e3b96dd4e21a1a07522384dd59d027f4fbbade6bea645ceedb7cf3a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[110]
+aad = 436f756e742d313130
+ct = 11e601289456e29cadb4573105efe2d186915d7f1c45b77dbd2fc21d1ad78b9ba57d5a48f0713c46275eb61e9d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[111]
+aad = 436f756e742d313131
+ct = 4fc545841eb688bec47b35667bfca116d95f075e710fb3480441c4e0182f7d70b87fdcc4325c79b36ce6a46c8d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[112]
+aad = 436f756e742d313132
+ct = f7097d2cdb98ee9eda11bf59d64b43aa10fb8b81b027df316488664f6720cf582b2ed8748aa1b76bf476056d68
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[113]
+aad = 436f756e742d313133
+ct = 3af5a80b57cf7fdc0fe58c1d86ba214d79c5ef1412948d8eaa4047613b5b4e6bb65808fe2fcc559aa0fd6c0ce6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[114]
+aad = 436f756e742d313134
+ct = 073638839b556b5f816e00d901a84eaed65a1d0f7fe71bfd1c25d09a44a03cb89cea8c194bb497eb04293ccba2
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[115]
+aad = 436f756e742d313135
+ct = 9cbeb946854deb363f3019e125cb4eafcbf05e29355736fd3c46358db24a63a97c727a49f49d89ae0b8e5c19a3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[116]
+aad = 436f756e742d313136
+ct = 02aa1edf942b970989451f81f00521cbde12a481a59ca407a5b0ab61ad25f861535af165f4c09dcdf8cbe6f4f3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[117]
+aad = 436f756e742d313137
+ct = 6f37b8476decd18a872a1662eae5906c0ef03bf6d1c6c33965723de049c54ddb7075c67b1330ebe3ac9ed69cfe
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[118]
+aad = 436f756e742d313138
+ct = e4b262588afcabc486d0dbcd4b84ce500bd171e88487766bb4d63e6572c2c614ea75cbd81818c42f30b26232a1
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[119]
+aad = 436f756e742d313139
+ct = 662e4486489c51c83574350ae1f76eeea80ef585d7232a4db6f2ea5fb818d59e5219a754b6b5a4d86012e9389e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[120]
+aad = 436f756e742d313230
+ct = 5562be7291f09cf9b3c9e7622af65846baefa84b38a69353084656c9681bc3c33b7c3ec6d1c3c0111de711b8b0
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[121]
+aad = 436f756e742d313231
+ct = 710caf513593d917cebb4a3d12a49f47b4316540f8c8446db7abc82da4710d43323d1f9fac121c36e39544c34c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[122]
+aad = 436f756e742d313232
+ct = d8c8ef69c4ee6a0f820d6a8e45403fab4549192aaaf48ecb56cb3f2becb39657c89ddd45d1dec4972551c5cb19
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[123]
+aad = 436f756e742d313233
+ct = d77337383dae131898513e758d30af2f0800a418668a6d159670d26d2550e92703565d84babc97014e517d32ea
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[124]
+aad = 436f756e742d313234
+ct = 8904b0c8f8dd8186e9434f24b62e28f9109caa6f74ba9a1881e5eaf76fd52904b969bb6dbeae9fadd82a4ee832
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[125]
+aad = 436f756e742d313235
+ct = 983be08bed47991c01a1475d5dae7c24b20cf54ba0d7efccfcd5fd03567bccf7d2efb4668fda9b3e0f4641ed60
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[126]
+aad = 436f756e742d313236
+ct = 0e639053bc508f725b7049bdbea8e4e14439d0b91208ec0a5ec3a2af4b9bcfdcd82a1cab379280af9401f4c87c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[127]
+aad = 436f756e742d313237
+ct = 59836a335a151ef278be252723abee0953fe521b7187f523b03690526060e27097e0387fcf4d54347a5a037595
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[128]
+aad = 436f756e742d313238
+ct = 9d69bdc61e64e2bbb59ab52d51a5d6b126e9e7b2106198fe700381c8dc35064c9f3de37bb360da618be14c20de
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[129]
+aad = 436f756e742d313239
+ct = c55c37cad984284d634ee73db6eb5a76a4d683a86deb2f53be6cadf460f84a1a60b5035f3a0ca45b321bec43a4
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[130]
+aad = 436f756e742d313330
+ct = 755a83c6d6a702070665eceb72f71d1e9a5ba1223445a251f8be5e3e218103b61f1926be9e0a86efc1212fba07
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[131]
+aad = 436f756e742d313331
+ct = 6b7907669ff3987ee9c3ea832b7b19abe12623b141c6c1c4c6d6a49000026b3d90232da644fbaee197ab67df64
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[132]
+aad = 436f756e742d313332
+ct = 1b32957f79a49363d4d667c051f76d8ba143207e4a91e870dd0106cb506336d261329002c92ef9f121094bbadb
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[133]
+aad = 436f756e742d313333
+ct = fb489163a7e7ac0b9c2d731919b0e484eb2d31fc9a5cec166b2dba01d6f18589e8da0c892d3b45dcb2a8ee91fa
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[134]
+aad = 436f756e742d313334
+ct = 2e5e5092c57963424f18ac82cd2813f727f8a26a155f71e32f4e09d6887bb8d21695da3215acbcdc13c3514cce
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[135]
+aad = 436f756e742d313335
+ct = 86a7d68707aeb690f327bace44b39f091635626446353652dde9bac18e9a2c4c477557052ba3bcf801b976b608
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[136]
+aad = 436f756e742d313336
+ct = c1bb44d1ce3a6796ebc9cf92d252de0e711336b645fb1f63459df7a3bed93d2fd8a76bf80ea3004041ad075a16
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[137]
+aad = 436f756e742d313337
+ct = b49e9cb962459433d55d940628e5f4ca0147cdfdbd63a8dbd6fadcde9f567be0d84f766bc0c309e1af83171155
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[138]
+aad = 436f756e742d313338
+ct = 3c7581c6b7cd65668f29f99ea81ec939bf926e80ce6a585fcde3d6515d2a94ef5ce6e625acad1d6d0a10d10f5e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[139]
+aad = 436f756e742d313339
+ct = 1008b16c05c29ba352d69570147f63d7588115d43c2f4272d6d208985d3302538b44786f27e6179d1c8ba87d46
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[140]
+aad = 436f756e742d313430
+ct = 6d10b989a058a5a9f08146519fc37dd98a54821a90a3340b93e3013a2ca87fae8a30c0d6dd633116516df9c1ef
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[141]
+aad = 436f756e742d313431
+ct = 7ae87645153c2b643430bfb2f34ddb268381ec60e1b895a533cf4e5bf91166258f078f67f5b14922090a3f27fd
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[142]
+aad = 436f756e742d313432
+ct = 6e52e215f4abd43ab4b1bea110953e5da9e9a6af452373f1eefe86ae1657f0f63560c394519f2c16294cd55825
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[143]
+aad = 436f756e742d313433
+ct = 7346f609ab37a2819baa8dd5151bc0b60405dbe83b84730794f1efe0cf2cb40777a110095f23aee9adbb8e0e36
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[144]
+aad = 436f756e742d313434
+ct = 90b135d13e01f5b2bd1a2fe275e771e960b1ddbbb7f8f297495a79cf0bbc221ffb6949561aa8e52934e654e653
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[145]
+aad = 436f756e742d313435
+ct = 9949b6ec08af333d9edbec6f24d1492b4c86ddfad845ffedbdb976095a653f050aae63d2a9118c27d9cdf3e47e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[146]
+aad = 436f756e742d313436
+ct = 40edc2b843da05fa20c84b7e1051f623afd235270fcca29552cdff69c2f727277a287dc3d7d4906b5f0bcef44a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[147]
+aad = 436f756e742d313437
+ct = 0365c963b4ea7da34bba7484e803fd7b825f858ec3352610361b41d0c589de508e7b71296c08573018a78e2f59
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[148]
+aad = 436f756e742d313438
+ct = ed3d116c4af961f795d735338bac2b14170dcb5c3e6e2696804e55e3bb65eaebc23ae875268b520e48be029b94
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[149]
+aad = 436f756e742d313439
+ct = 89752e534d425a179b43616db8fe503c4ee3fc6dfac8e85ef984565044982abcc7d46212c607ed81041ca9b85c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[150]
+aad = 436f756e742d313530
+ct = a988260aec1a06011b2c740bfc4cae0482eabfd191810cd2fb95e342104a14d0d95176081d9be161bb597b6f00
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[151]
+aad = 436f756e742d313531
+ct = 7363c1bc299398934f4fad4185c93573bc80b367c93f7605ee2ab97a3b18179dc4761177c0e2b0c3d87dbd7bf1
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[152]
+aad = 436f756e742d313532
+ct = 83cd7966ea988b9fdb064c1282d30d41dc9c4f37de5ec390ca0a1d55c508bd0d3af1b481f64541830cfb9b0e5d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[153]
+aad = 436f756e742d313533
+ct = c5a20c2cf5336d791e45a4e97a1df88779a79cc259ebd9ad3b7406c2f42f655ba5a235e4f3e6687b21d21c129e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[154]
+aad = 436f756e742d313534
+ct = b84401ad73b092c5be750404eb74ad48c5f2193835495fcb2a6ac8f0bf9433d92d8d3c17f0722e3cfaff428c39
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[155]
+aad = 436f756e742d313535
+ct = 233c14c55330a706f1269f1a81c7381779c14ef2cafd12054eaf740bc9ce13f7849a0143ae9ad5924c9c31121b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[156]
+aad = 436f756e742d313536
+ct = 4888309bc44a04ba1708d59d30495247c0eb1e55e68d3d814d8eb8d2d9df704babd92e5d2a3b61cf0fa0599570
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[157]
+aad = 436f756e742d313537
+ct = b8be632847c77c4c9bd4d6e448942a698a23a630d7bca02e4eed4e79b146032d60400aa41d5bc1d82799044b3a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[158]
+aad = 436f756e742d313538
+ct = 53497421c5eda1f339ddafb9d21842d5ba7e1e93909308512ca76044b5f18c5eeabeae194c434a3ca9b6573c22
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[159]
+aad = 436f756e742d313539
+ct = 2bc98ea9344da4e9beb2b19100397809f75d5c4fe960c7616380111b5831096de6155c9fe8a16ccba73feae3b1
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[160]
+aad = 436f756e742d313630
+ct = 61205ce18b656b2861cb38fa0ea5d91de1e27df60fd23c476a641ffbfa7eb0c50ea000962e2d1f1796bf99aa8c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[161]
+aad = 436f756e742d313631
+ct = a6c01951f5e2a019ee77b4028ba33c2e204d21563795b2c1ea78271280255f98f1b903ab05d3afd089439ae6a2
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[162]
+aad = 436f756e742d313632
+ct = 5c1dca44abdbcb6c895800e2d0a0e4112bc1b2a81e1953d80268c99ad235da2888ced02fa53ab60f2ce737fb9c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[163]
+aad = 436f756e742d313633
+ct = bdc83d3cf8044b9b91ba3c4c4c5470c7bfffb1cf44762b977de0c79635253d71b8a9ba32d82ad5625e23ba3046
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[164]
+aad = 436f756e742d313634
+ct = ea6acf6fe36fc0e728874232c30390a5e2fba7e8ee95e9f2ca719f980bc6203deaa5d704ab3f8ef47ba3cdd789
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[165]
+aad = 436f756e742d313635
+ct = 3b7823bb868dfccb41d9460742d3e845187ad100fcb1b4c0fce18c58bfb5e48d39f02a630cf2454dbf50d1ba85
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[166]
+aad = 436f756e742d313636
+ct = 6fb22b75d0a26ae07bf894e54fb066976b45a386c4f616b13c48923613ad5b87a13dece0cfa6e35c4837ba73c1
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[167]
+aad = 436f756e742d313637
+ct = 0bf18ee332538b314d98a0f850469e2c54827923565102712558bb07af9a6fb0297510dd46d0975ba2869a4170
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[168]
+aad = 436f756e742d313638
+ct = 6d823e5a8fd645b8f53dedafd7a592975d8e8f0f124c0229d7c8b6db80b043cb2365f39bd8d63d468c70cba26b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[169]
+aad = 436f756e742d313639
+ct = 14e7e71ed3a662f1fc9d4f9eb9432ac788a125ef1d0d15941d98d0db8026eb3de49758d4001945046bc8d0fa7b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[170]
+aad = 436f756e742d313730
+ct = 1c4ede11879727fd70080e8d33106f1319a5aace4e35831d143c046f2acd1640321b9df29d606ceb29b479f95e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[171]
+aad = 436f756e742d313731
+ct = 778ef01e05e75d9ddbaa5e2732797973d0a0d40e53310f829b2c7fd31f96a50fdcd13229db146795cbfd6254f3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[172]
+aad = 436f756e742d313732
+ct = 25807db1f5a3a6481a240dab4a8173601600e577cad5703db9973ae5a3cecdbaa454a57064ecd7fde4f0ca5aee
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[173]
+aad = 436f756e742d313733
+ct = 64cc1acc033bb52a4ece52d51500052e41c4f716a6b93f92351557184ebd3ac2f1c8dca0bde406a36f8e6cb03c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[174]
+aad = 436f756e742d313734
+ct = 1414cb7aa19771b187ab8847f9bfb3d8fbea142ac7e458779751eb357ea12fe5789aabfcd027576fcbf60a0baf
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[175]
+aad = 436f756e742d313735
+ct = aab3afdf79e28db0ad509fa8d64d35cda533a1da3e6a76a14b2ac1952ac2b573adb22e5c7ccd4824783f35e5db
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[176]
+aad = 436f756e742d313736
+ct = 381cfc887f4a33bad777c29c9d706ca8349a887f72bece0826e49d87e964a5307e86d24f09c104cdc30f18fa4c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[177]
+aad = 436f756e742d313737
+ct = 0f98fc2a6d41379342df0dfeafd13a679dc166193bb40316383aee3397ae7606798be7414f941fcaf8c7136679
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[178]
+aad = 436f756e742d313738
+ct = f50864b8e23d0d56476113d7195a9878abcc16b1f1538970dfceea4ce3fb738ffb9af5ace7204fff3d62e2ad46
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[179]
+aad = 436f756e742d313739
+ct = 123ad7cb5df5d0f172f1767513dc77543851ad63c15b90192a00f80c417079a02ac7838bf13640ad79171e58ab
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[180]
+aad = 436f756e742d313830
+ct = 00ff6ee0d24c38b8ba9073824b547375381fe08cd921c4ae3ce9dd6dc51d595a64b2ab61b268e4883f12322e09
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[181]
+aad = 436f756e742d313831
+ct = c06f35ff7ed289407ccce5100e43833c86248e35be2eb60c365c87e2e189326b345c831ff639219bee69aa9148
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[182]
+aad = 436f756e742d313832
+ct = 4adc642f976ec1de0e1177f0ea29f0da33f20e99f5f957b1bd219da9a2a90d6f38e8194ea7812b7b7dd6a2ed7f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[183]
+aad = 436f756e742d313833
+ct = f08f65f247619c09c77f0c36b873d423800cbbb68b6012e39182be10f03fd05cb0df4a9063b8fea215ec613014
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[184]
+aad = 436f756e742d313834
+ct = 795a1860ccd2777ec87e7691c8c7b87fa60905c973d5b4cb63fb4c1ac2d64bc2ebf5f3baf43b5388ecce3e3c81
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[185]
+aad = 436f756e742d313835
+ct = 4eb24b8ef9de11652206ffd21185b00cb5738d4d3836422f64ba3da86e0b512141434cd91b189b3ad178975817
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[186]
+aad = 436f756e742d313836
+ct = bdc4f22e46b5e4bec8c7013d3e2419fd36b47d8b3d4323c508374c97c2673083a550a5a8e425b3b3f2952449f6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[187]
+aad = 436f756e742d313837
+ct = 0d2faa408d419e3fd7c39175b5052df2c9243843494f27e29721533446ff551ebfead78f2a19b8243a33915c3d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[188]
+aad = 436f756e742d313838
+ct = 08a2211770ded14e210dc9a5a711b011aec7283624be62d67754b7c0e37bf88e947180b7ba035ccccc754e7139
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[189]
+aad = 436f756e742d313839
+ct = 706b1f001fa04d7639aa1838e6b94c710231a25f10d30426f098965961f13be8ecc9b9031b120e4af5652b1e27
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[190]
+aad = 436f756e742d313930
+ct = 3550a384167bb99f123c4ab49ecd62e2a7c21b151ecd6dd0252465b45d532402aaf767f139708abfa31857037f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[191]
+aad = 436f756e742d313931
+ct = d07ab8c75beec6f9b3bfa5b580aeba179c93f607828f43bb1acddcd698b12509db5a08f110d1d46fe124953e01
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[192]
+aad = 436f756e742d313932
+ct = fe1c8f5e53563225b7192250e3f07bc47ae46fa77c441a2479fe28241d2b83ac3f8ab24a8b16ea628f8f7dc138
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[193]
+aad = 436f756e742d313933
+ct = ca0001a376ec98bc5195d861f61d699fc08ab8e8933becb9a1d4dbb46092439e5bde711f817258a91ce864a972
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[194]
+aad = 436f756e742d313934
+ct = f5ec0401b4bb76ad6664bc88e104c84ab9e23aa3df077d4019d6e81efb838f95bc6e4cc0950db56dc7e4415969
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[195]
+aad = 436f756e742d313935
+ct = 3287b895c5ab198fd61e498118d4c91ba8559c5a5feb2e1e1bdaa14691c8fa3b868a3c6962aa6905f8421bc141
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[196]
+aad = 436f756e742d313936
+ct = 887a2c0746336d67fa4edfa866313be32b3950013c0aa3eb2bd666a6d277060f0f5913d8c0cfcc95b2e70c29ee
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[197]
+aad = 436f756e742d313937
+ct = 9e246a263d6662f70f8d5a05487cfcc99965489ae233c209262bd0ec65b4994e1d7dfcfddef63a956f3cc91193
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[198]
+aad = 436f756e742d313938
+ct = 5fe3f5242df92c284ea2806c0492e5c47837921cbfd8c49d5769ec8a54206ca34156358756681664090a8ec2b3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[199]
+aad = 436f756e742d313939
+ct = 726f0392cbd3f225064c5408c90c7486dc6028deb9fb3e60ebb84ddc0b339ad872dbac9aeae61985a3cd03a5ea
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[200]
+aad = 436f756e742d323030
+ct = 82e3074ee6f828726fd8da9cb54ff24181e01a379e01bbc1d00b4ec69937ac24dc7e055aa5e9924531f907fbcc
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[201]
+aad = 436f756e742d323031
+ct = 8383e31c4dfc253cb64eedb29bb50e3f03fb7d88216146cfd8bc46a6e24b259831df8aeefa9484a2b1c50b713c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[202]
+aad = 436f756e742d323032
+ct = d1064f889c0a1c74c9e812980ddeb4db85ccae0b770d0d9797f79edc8924c3af354c92519566b1856e7d4da7e1
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[203]
+aad = 436f756e742d323033
+ct = 5cc0e2246dc23cbcdedc6be5ff8563ea527ab0b7976016eb23d029f359816c998d980f4c30668c662260b17869
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[204]
+aad = 436f756e742d323034
+ct = 4989fcb35d8c5d52e61f4a1dbd7de520fe36dce0bacde2832689f76b26ddd4ca326576562a939474b6813c0711
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[205]
+aad = 436f756e742d323035
+ct = cb2cf08cf6eaae26dc2824aed8b93627c570956427732c9e18e8f77b9c255d0c01cf546d9f80d7edd594c5978f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[206]
+aad = 436f756e742d323036
+ct = 7559eddc8eac912b20fd672610acd68d92f8e0d608182e3689542d69d8015facdf09ccd6e62ae902d4a7a31005
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[207]
+aad = 436f756e742d323037
+ct = ebe4067990f4439d84f7684139de6fa2f0abdcb9002738821e4e6c2392124f17ab77ddfec293ad790044b06a94
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[208]
+aad = 436f756e742d323038
+ct = b2442c7c263cf07bc84857281860c2b5e3e12865bfce9ed32b0f86af630d718f5b14da335658e256de2243445e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[209]
+aad = 436f756e742d323039
+ct = 2ef92ede552eb2a291d9dd81034f2b47ce79f6b9e88f87cc84b0c460fb66535197f5d3936c1b99b5ba66c0de33
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[210]
+aad = 436f756e742d323130
+ct = 183220a6989012152186d775d6f15bbf56cae846e3a6c534a863b4287ab778851315d24621defe982a4c735759
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[211]
+aad = 436f756e742d323131
+ct = ec0704f1a68006acc6142b6294936199228144706a5cf730be95078585686c1501f57a97d2e7a1ce561dadaa5f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[212]
+aad = 436f756e742d323132
+ct = 4f182c1f81ab60e667c48fc78fedf17d3f4be43479956c06871b9935a28db8ef1fb91ca7a05cf06c6c16bdd3b0
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[213]
+aad = 436f756e742d323133
+ct = 26da513d75efa918a650d24c738473713383f129ce85ad996513db0284dedfba7b04def48d985e3f77b24f31a7
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[214]
+aad = 436f756e742d323134
+ct = 57966eb046bcd25b0f530cc8f844ba2999a0faf954e7106f40ce041d97f99e69d71e0bb20034a5ee46790753ea
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[215]
+aad = 436f756e742d323135
+ct = 554122776faeec90d03157835252732eb116d796603cc16c075a89a01b943f80f334bc2b584590de10a082ac2a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[216]
+aad = 436f756e742d323136
+ct = 4a93387559a484b91fbd298b3bb2609270c48feb7a31c1168c2c229bf345aeee4bec0e4b71271413bf9c211c94
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[217]
+aad = 436f756e742d323137
+ct = 725a88ae41bcab900b27b92450c3cc081de9fcccffa58afd0f23533189443d04659d8c6eda37f10fdf0a1573f3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[218]
+aad = 436f756e742d323138
+ct = e37ed1b71ab95aa52fc9ac19f0a0b0449797cbaf5cc73f0da89025d52e11481801dc3de65b34845e193391775d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[219]
+aad = 436f756e742d323139
+ct = 3539ee61e9a5d7b83e44c16e7a814da6fb440a55f6548b4df7b9797309bce67f63959a8a237c59723cdac3ee77
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[220]
+aad = 436f756e742d323230
+ct = a192300578ca40a4d88bc195814c80725b01d479c1c4e7140c61963c5aeb0939e2fc9100dc0893da4a4ec0fa62
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[221]
+aad = 436f756e742d323231
+ct = aa9cc7b2224b57e280a0e56bd4a8dcacd4981d7516a4a7e526e925bd97260b6b3c75427da747e006bc2ddf3ae6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[222]
+aad = 436f756e742d323232
+ct = eebe5ba2f3a25eb3602188a6fa7d7600f83b31e447e0bd950ab5064e6ce714df761b4599ba7818c2cc80365b20
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[223]
+aad = 436f756e742d323233
+ct = ae81d85a6a29eb394bd83ac3843eb61cd5e8f322d639c3a5b8ce3222c85ef0b058d1c34695fb783eca8aaf3658
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[224]
+aad = 436f756e742d323234
+ct = a3265e946f45a0dfc2d20dafaf4d65cd4595c9c9c9dbd3bf7745bdef26f35d1588906e122de8143b3e316dd43c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[225]
+aad = 436f756e742d323235
+ct = b68e78ed1ea01475d0775a6e20be845084de3c7d68c58611fb8c9dda3b83ad980fbc4bf99e3ee9980ebef862ff
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[226]
+aad = 436f756e742d323236
+ct = 1a065a204fff91b71d0a8d92858b77cd4d9ab9f7293dbfad8ae4173d6752be925bf7f996d40ceca5099f424484
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[227]
+aad = 436f756e742d323237
+ct = ae8ac359da42f98628985f27bc96aa25acc9a9e1354491a8325cbc4a5e17d30f8f77a0275761ec1d7e1c0b1dc0
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[228]
+aad = 436f756e742d323238
+ct = fd831d62c9cce5a711697891110acede3b5885dba0d1c1333c009a6715402e6dd5ce8d629f1056eb2eb990c798
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[229]
+aad = 436f756e742d323239
+ct = 2ab45b2a78a28a874bca7625da63ced2e83c11d9640c428a5a16e311053152a04b9d8db7e1bb58ab60da47df0f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[230]
+aad = 436f756e742d323330
+ct = d9221ea8c84f6dffb37fca1211eef538d24e2a180a5e24dc535291faf32c7ccbe03747a1d790d8e00bb1f1f61c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[231]
+aad = 436f756e742d323331
+ct = d2cf65a555de09dc505b894dbcef2f72b4ed6fe15e685b41a15182ef1105542c462689bc16ed29c3e3badd0b50
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[232]
+aad = 436f756e742d323332
+ct = 6dcc61746a8aa5c549fccec383e9a387039cc4ab617ac1c6b0014de3e02a104217e1c7f404724b8beb3f684803
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[233]
+aad = 436f756e742d323333
+ct = 8fedb6438e1d014c4eed849b7497c681bb91fe6491752ee3abb61b6329544aab8896ea1a2b80b6f1291d99cc43
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[234]
+aad = 436f756e742d323334
+ct = 1746236a4775e8841dbd4e1a3e95a1b15fee50a9e3b137bc094545989eada59ef1d4a35cbcd90eafa149126de6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[235]
+aad = 436f756e742d323335
+ct = 075f3e87792e9ec9f1c7b7f5af2e80d3e6b3db51a319cedf79d06161abffa9ea35d8b56caf2eaf5a6e06e225cd
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[236]
+aad = 436f756e742d323336
+ct = 7c71f10dc7f02913ae8692e93a886119f6b5940a9c4bdc24850502dc163939c5e74364780d414774a0b0b6e757
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[237]
+aad = 436f756e742d323337
+ct = a7660bd0d3420f847c09a034d34e086049c70baf1d183fe58af2e4d8f581eab7fb043ffe2b75b54f24b51ff8c9
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[238]
+aad = 436f756e742d323338
+ct = 173ea65a00440de994e2a6751b3d553641c57b4bf2cd9f41b10e4bb16c6b2d6c5ab715dd970114b6486d1f6a6a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[239]
+aad = 436f756e742d323339
+ct = daf7fa1a6a83741e82f13262e7730447ee1c1f29cc60810b4f0f10001ae0c37858db6a3aace4a03f3e70d4ec5b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[240]
+aad = 436f756e742d323430
+ct = 6a581b9771b748adbaa26d20085da812933d5ecf2ab2d11dee1ad560a2333f9182d31f017f02ed6b47b2fdc50d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[241]
+aad = 436f756e742d323431
+ct = abd6668670bdeaba122f577eb635e56bab0f9f861b3223e8e17facf19ad716a9457029a09174791322810ff81b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[242]
+aad = 436f756e742d323432
+ct = 7a2f1b4b5cab79ef46c15d764461ccaa4124cb98f019782013904877ee830de5632c551ddb8119cdd2e38de5d7
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[243]
+aad = 436f756e742d323433
+ct = e97b38dc3a965a1b2c7eac9071a4ac388145a9fc3d975c857859d3cc73574c65bf111ec3c8155ebec8a5d5452d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[244]
+aad = 436f756e742d323434
+ct = 6301deb287ffc74bf231704ad1a59aa60cb470953fa6bb7d0c03cf69fbc8c4fb89acd0162dff353756a73d6415
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[245]
+aad = 436f756e742d323435
+ct = 1921a34039e2579c8e86fbdc731449bcec690214d157f3f9c528102f19d228ca36e8eee061f733e0eb64bbdf50
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[246]
+aad = 436f756e742d323436
+ct = 4943f4dc007e9d1366cb4efbb5e71cb19e70ab4bd917f07770db6bb956c7bc00fef39fb5e7f1f5f0d116552147
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[247]
+aad = 436f756e742d323437
+ct = d45b763713b7aa7d36da691a52a1a6edf128ba72397fd20d2ca59afaf6df53751f04c5879e9a4118298944110a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[248]
+aad = 436f756e742d323438
+ct = abb4bfa463b825b00ce013d965cb8c232593819411ed494ee6087932d4c088f3c64b0e75585726dde1b28cf37d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[249]
+aad = 436f756e742d323439
+ct = 17ca4cf2e6fe5ac0ffa1409a272e29766acbb73c3454be25eea8e3ceb5d3c00a37d9ff3b7400daa2039cee9d43
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[250]
+aad = 436f756e742d323530
+ct = 8d73d3eac79d6462dfd82bc0f7a0a2532e2903a88259b3891a5622be390ccb882384557704ae7866fc623dfbcc
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[251]
+aad = 436f756e742d323531
+ct = 24262541ad0b43fb8f007debefe2d0493863fe5ed9c51080c6a08e5cf747a0ff2c203b2c8b22e4647a3de753d9
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[252]
+aad = 436f756e742d323532
+ct = 624fc58b855bda904dedecce0391e91b8cb2ff6e45f04f56311512b19de81337a6efa8685a33c36b5642fb7d65
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[253]
+aad = 436f756e742d323533
+ct = 769ac35e2820405b0bf9b41d1390a57665230606cfd3e61aa4b3780fda6244b2c3671fac7e67cc2a727d671f3a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[254]
+aad = 436f756e742d323534
+ct = 31aa9fc2c5276ddf3e045df4a3c471146e834a7e827988654843999f0d0c1507c77c57069dabcef90a286df87a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[255]
+aad = 436f756e742d323535
+ct = 55d53d85fe4d9e1e97903101eab0b4865ef20cef28765a47f840ff99625b7d69dee927df1defa66a036fc58ff2
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[256]
+aad = 436f756e742d323536
+ct = 42fa248a0e67ccca688f2b1d13ba4ba84755acf764bd797c8f7ba3b9b1dc3330326f8d172fef6003c79ec72319
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# exports[0]
+exporter_context = 
+L = 32
+exported_value = 28c70088017d70c896a8420f04702c5a321d9cbf0279fba899b59e51bac72c85
+# exports[1]
+exporter_context = 00
+L = 32
+exported_value = 25dfc004b0892be1888c3914977aa9c9bbaf2c7471708a49e1195af48a6f29ce
+# exports[2]
+exporter_context = 54657374436f6e74657874
+L = 32
+exported_value = 5a0131813abc9a522cad678eb6bafaabc43389934adb8097d23c5ff68059eb64
+
 mode = 0
 kdf_id = 1
 aead_id = 2
@@ -2096,6 +3147,1057 @@
 L = 32
 exported_value = 7c5ded445732c14fe09727d29b4251c0fd38455fe8440571e687f0886aac94d2
 
+mode = 2
+kdf_id = 1
+aead_id = 2
+info = 4f6465206f6e2061204772656369616e2055726e
+skRm = 47f1eee3670dfaaf27c30a83d06ee9f257af174727c17b35328ef730dfc1cd81
+skEm = 805b278cabd22c9dbd461bf25771703eda4950ed3ef35b369163097899555356
+pkRm = 3668d659cec6f338f4f8dc6da6733118d2a633f186a3c1415c895111a8eb7c7d
+pkEm = 9e59f4b1fa5c876f684765290c34e51145894cc4f244342b9fb1a4bdfd8bb426
+pkSm = 4a91c3d0893433f5e31a79fc520f885527a1bc60bf2b0c72693dd7f0b2e41a5a
+skSm = 98fdf9b9773578a79d4ba82fbe483c74cc2e3b8d9525d148a18969fd79a74876
+# encryptions[0]
+aad = 436f756e742d30
+ct = 10b964283ac2cc0bdc4c85ab617291b446bf3832e9359b2c3a0facc50ea75a3c1afd08aeaacd6041d02eb560ec
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[1]
+aad = 436f756e742d31
+ct = 83b24287a5ac672289ccebf5ec303d3c0a85bc60bb7a748014d85179b51c7552ca93a70817ee3140442f92e23b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[2]
+aad = 436f756e742d32
+ct = f42d890891825c1a57dea5a66baf2c940126704682826bc7c5caee60ca71578d767db256b0c2a4051bef1236f7
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[3]
+aad = 436f756e742d33
+ct = fab3f66ea4273bcc0e40858c346f4e12067b685dc8ad6d57f3d398bb3035c4144b578991c99df545c214a53373
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[4]
+aad = 436f756e742d34
+ct = 470a09a528036f80a2f1e23bced44551e5da71dff490bd7de6e01e2eb412cfe69be650b201f10e55a9c289e712
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[5]
+aad = 436f756e742d35
+ct = 96838a987715414de7048ce44f8bd0cf7634638d4d4ea25748baf44c65bed08692a8442f060bd87def25098d2a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[6]
+aad = 436f756e742d36
+ct = 2c088d57556144930fe7f52d49d8a451cea3aa6e307d794a034fd5fc91e69f56c8c31464dcfa26ff1b5782c80f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[7]
+aad = 436f756e742d37
+ct = ef8b777272642c61eedb8bf809e92e2ea35f92a53f09b131e7f7a6004cbf0b7e6c528d27567638cb54f86fd89b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[8]
+aad = 436f756e742d38
+ct = 953a2067e752c7355f30364979ae55efc9f36346e6fc2c51c5fca956a6367080b045381612cd85aea2b41f8291
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[9]
+aad = 436f756e742d39
+ct = be96bd02bc6cfada4561a2655b4214d541bd812b0ecb45b4446d93785287a68dda16dcda9790603327996004e9
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[10]
+aad = 436f756e742d3130
+ct = 4b553762b63d15769e5b0594f87971776044b2e0ed4b58aa6379769a56334f87361dd5ac710b0a4afdb61e42b2
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[11]
+aad = 436f756e742d3131
+ct = 1b92f016ae4ba14d4662d6f65f2cf3d1df4b99bf98b1c8b7a7f9c7d722085e5a2cd7f242c4680dd896c08fb9fe
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[12]
+aad = 436f756e742d3132
+ct = 93cef4666cbb4c191fe7791b0dd46cfd09c7a9bccd3dd120e31e1592379c5112268661c738c27fd583d1a69aed
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[13]
+aad = 436f756e742d3133
+ct = ec195f886d5ee74f79eae5cbd1b46e143a92a598b1c0b585c709d704d97ff256cfba127afb2a9f1a23f26ad6ed
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[14]
+aad = 436f756e742d3134
+ct = b7a4f0af656ad0afeb7c3718971940a31f4822125943171520981b17473a5ee7b7f1192478534db62ebb79e546
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[15]
+aad = 436f756e742d3135
+ct = fc8b1d895f7d85c4a07e756ceecf6add2141056a80e86eabbe62feff6cf69db47d6c3e9735d8c5befa973196b3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[16]
+aad = 436f756e742d3136
+ct = 328ed2e5b69f06a3ee88aac0851952c7723f9bb28370db85a300b01b5a2d41c7355bc2286784cd0fcebc433ff6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[17]
+aad = 436f756e742d3137
+ct = 19cd1196f10eb2df0b1fdad07c36ae1ef483d66c0a474cf82447d2a8906093880b1d8360c507ce0ea06fa16532
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[18]
+aad = 436f756e742d3138
+ct = e281b6d64b0f97ceee63df5923192a42eed46a87551d476b5e6a01e0a6ddae36415394c3bcb2c2c51b9ccbe80e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[19]
+aad = 436f756e742d3139
+ct = d764613d9a6359243a9f37dc8d1b2fb384c9d036beba29aaa99e966f5624300da396952413ef482a5034c66300
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[20]
+aad = 436f756e742d3230
+ct = f0d056ca8484082c5e08980dcce8e5bac8503d914bb6662c196dee3778f0ba795d108361e3b82c01883d6b4880
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[21]
+aad = 436f756e742d3231
+ct = 47d384a5108791541732373492c339e4001760802862ee2307ed01d8692f81efa8750d940a0f8ecc1d509053f5
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[22]
+aad = 436f756e742d3232
+ct = c0bbebe48e5980326bafb7840ca6d408a4ab796acf26634991b21c34170c40817199cc71345c2e467acf5cab30
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[23]
+aad = 436f756e742d3233
+ct = 0ea456e2deb27ade97571f5c51835dda401585260eec29f29896bb7a6947667cddec9d52fbdd0155d33c0cb318
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[24]
+aad = 436f756e742d3234
+ct = b525498a5ffde5bdd0c0c50b0c1d8c8e64ed47124d3ba52b0c5fcdb11b773f568906e5643b390f73abf178860e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[25]
+aad = 436f756e742d3235
+ct = 019b344de40001e1d18fae03002be1be4d2e020c32a514ff4d84b15d066cbcdf045490ebfe9e4fe536cc001b6b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[26]
+aad = 436f756e742d3236
+ct = 6542b6f3e9abae49d31af2a8871f5260648cb9d3c5ade0d7d3c43ece10186f6b1ab465d71c5503a703aee2d889
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[27]
+aad = 436f756e742d3237
+ct = 8079a278f77b5dc928f17125af7f62f0ce040ca8d90afef0de758da1694b056be1efde71258636c8a39a300428
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[28]
+aad = 436f756e742d3238
+ct = 2f4cbdbfc8e9e1498dfe1f20addcd16e00fba26f06fe8bf510ce726f4e6e38141a027eb9b930512300ba50d772
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[29]
+aad = 436f756e742d3239
+ct = ef6390e3d57f95aeb00e6a8cdb3b545bbffee6755c8215d3b431a7327da4981bc3dc35b5b913b18de0abdbe721
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[30]
+aad = 436f756e742d3330
+ct = 0aa56230de06dee53bd6e405bac54899367a1f6d4dc4791f99a86f6eeced0b50acfc68eb49393482325dceb15d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[31]
+aad = 436f756e742d3331
+ct = bc0812f89e395491f19b70d43b4ce1be7d0d274352817134ef9baf7d9c5d7b93a272a79350b8bc541997097023
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[32]
+aad = 436f756e742d3332
+ct = 86980d73a1f515952156be21c6b42ecfdb40ba67ddc9c8af12dc4afab2e659622f341e84adf06ec71f2c4fb19a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[33]
+aad = 436f756e742d3333
+ct = 97205bd532ca8dca11de6245d21fdfac06d6b48fdcbd399cdfc3cd18415a78bbc62bb9aae0ec326fdba7c1c846
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[34]
+aad = 436f756e742d3334
+ct = 625be4d9e0e0caa56cf6e7c24ceb7cb336ce4265b0177b93783d6225bf347b84b3c872de9992666d8d7255b3b1
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[35]
+aad = 436f756e742d3335
+ct = e1957331f9fcab02fa9697924b1a22b7ca36ac728a4bd2c4db20b839987aebc6db741669ed96f63bc52d949f64
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[36]
+aad = 436f756e742d3336
+ct = 5d83fd726dd22802afb242f25923de6d55e1a481c1d5041c2dd05986b5be5f72d611efbaf8071fe2bc0d416438
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[37]
+aad = 436f756e742d3337
+ct = ec453efb75c777cb1fe3322f3504da40c2fbb613bb4735a02b33280c1383748377bd33c35eae2f48930a6aeaa7
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[38]
+aad = 436f756e742d3338
+ct = 3a050cf76b072e1897fb498d090dc4591dd06200f8c74e8f7a6b43e455680b32fc831fd7891450c626a847aa4c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[39]
+aad = 436f756e742d3339
+ct = cd6a04939353bf21e3c68fb190cc2e450bee3403938db4fe9eb1d826cc15ee1f0b7b32af11a32310c2e4b49e30
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[40]
+aad = 436f756e742d3430
+ct = 2242c9f6d2b04a400892c3d7d7f4086f7851489e4bc86ac090ea5723585dbf61bace21248c2643e062329c32c1
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[41]
+aad = 436f756e742d3431
+ct = 6bcdf8d421bd9623a6872b1aea124a4b978312e29d24a3b0f019c1434e55d2de4775b256aa91096533fe51d292
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[42]
+aad = 436f756e742d3432
+ct = 4e02b9b212688ca51278baed8e57f3c948d70d096afb6842920b8fe504992b7920ebbd4e3e655ae6cc598244e0
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[43]
+aad = 436f756e742d3433
+ct = c2acfa09b1f580da4d924247b5c98c3122c09a37b72b5aac9826e579bdf194d7a3d179e15a7085c9fa8c53de19
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[44]
+aad = 436f756e742d3434
+ct = c7f6c9d6360f14a124bbee3624e2f03e34b73248576f2c83127eeba3fd9da799a456f27bfffd9211c5a40a414a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[45]
+aad = 436f756e742d3435
+ct = fb885e9fb8012b9d801ac0c1cab978b753ec391ececcae9582b360f0c28e6b58f7e432d3f0e020dfe0831231c1
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[46]
+aad = 436f756e742d3436
+ct = b10033bc7cf55378cf7d919a0773bcc79b6878117071674df4028cf59ff3554963dc3f6a5edda250170fc55d85
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[47]
+aad = 436f756e742d3437
+ct = 3e62ec8300d4c6d0195a7403ba2d8c70c347a920a9f1051a9825fb5620bfad8aa139940b5f3a91e5409a00849e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[48]
+aad = 436f756e742d3438
+ct = a7d0016602e0501f39ebb6f4173005a5732fad028dee2a3dc3e087ac7b43afbe0f486c6267a883f223081dd89f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[49]
+aad = 436f756e742d3439
+ct = 93c01585a1d1775f3fd3b1925c26bb6e810842a24bb69a9c2521db72f6d66a2e005bb875a480cccf2eca122d8f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[50]
+aad = 436f756e742d3530
+ct = ed18775671121dc68a6413f544a45a3a197faf39c43cc244b32c606ebb61cd1333f830414624530e43c5328216
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[51]
+aad = 436f756e742d3531
+ct = 4cdc7b5fbb3c8f392e84b238ab3cdc7b490cfe1476259d0db4eefe53f718f1f6a7a32bbbeef1574ddc41358b83
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[52]
+aad = 436f756e742d3532
+ct = b47aee63fdb669daf990181bb75bc094bb9919b2df809615b3aed0ddfdef0235f79cbb95082bcb44f76513876e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[53]
+aad = 436f756e742d3533
+ct = 55b76bcd5f44cab153ffb90b809f5cb504bd02f705b6649dcff9917bbc9df878e2265d96591d6d0bd856afd1d1
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[54]
+aad = 436f756e742d3534
+ct = 67eab42d7d1bd9a03221c283669ec7ade98f5b3a970f7903b9dc160501f643eb614625f35fa89c834d582282fe
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[55]
+aad = 436f756e742d3535
+ct = 95d31adf6ca4f047c5097816a6e6cd02e2c952f3d63710cc05df53da29bb37abb8caa037bfa2c50b59948ab656
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[56]
+aad = 436f756e742d3536
+ct = a48d3ef0c3f065e7cc4b6ddebedcda1b27a8dc0664f4049521a3c446834a9cfdb76dd83a506c1f6f25178287cf
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[57]
+aad = 436f756e742d3537
+ct = 57d1902ba96fa509d930d5ed2c7cbd57fa43232b14c7c6fa3f33168fd543f4d96777902707cb02a1282f83856e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[58]
+aad = 436f756e742d3538
+ct = bee02243ee8196cdd8470528e5f2a0a366a0c48fe71827c07783192a762506d283c6903419e84404738f27a31b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[59]
+aad = 436f756e742d3539
+ct = da1e009146d60483a43a1518c2bd545f21392f98f5d2761b6b54d455d6903ed8f8a7e5794946b1d2c8b46ebdeb
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[60]
+aad = 436f756e742d3630
+ct = 99bd8213cf3e48db8b0cae6cca6088b3c3f25d8d8a4e1d38b1cecfaa777ca0975b579f2858ad29f5d292b59295
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[61]
+aad = 436f756e742d3631
+ct = c49043927a47694c3e0c6095fc3fd7ef19b947b1c15d455504a72286238be0aca23bbb8c78e9c5c066d7d2d965
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[62]
+aad = 436f756e742d3632
+ct = d056c8521b101402202aebbd5ebdff1085a1e0f32e177f44787c2f25b47c3ad598ed05a2441002637cb15b7257
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[63]
+aad = 436f756e742d3633
+ct = 3790260dba51810aa30b24f7e841c0c485b40f234ae1e0cc66bf895c6fc00e5515b3b4b383844eab29c706c336
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[64]
+aad = 436f756e742d3634
+ct = 6fa82757e4a3cd33d8480a35c303250ca6bfbc7584296ce67af456be72b58a9ff310c7ec6a50f86b20a92994f0
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[65]
+aad = 436f756e742d3635
+ct = 44dfa1d42f6f7e2acab917cff4536463a3e73c4f5dc0c2ddb189e28dd7c3e6b84540b98dc0c51e1f5d00f9805c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[66]
+aad = 436f756e742d3636
+ct = 26a22d894060884040677def8afd4502c79873f13c1b4c5e0b093ce0e21e6c07c07106bdab1b1e57e365433a34
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[67]
+aad = 436f756e742d3637
+ct = db85091e34637ca4b5d709285d61e13cbd5db120cadef028caf4d7975dd8f2eabf8cc33d0ad6bdd9f4b3d270b2
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[68]
+aad = 436f756e742d3638
+ct = 294b49e84bfaa136422bde1ec4d15a75cb8a8c0c7b9063d08d798e641c6aa7fde89ebcfbdcf7bce1823a9ff3cf
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[69]
+aad = 436f756e742d3639
+ct = 93ded3b6c98642921cdd0663bc2f3bd844b6aab133cadce857a06a9b125a34ab62fd21699f834c6c961c567ad3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[70]
+aad = 436f756e742d3730
+ct = 41c05ee1b1d21d9779f39d8331945636f0e6214e0293da5c13457cc6e2ac700fe39086ab35fb700225671cf680
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[71]
+aad = 436f756e742d3731
+ct = a26d2e109a3dcf33fb46f2283d3427b92275afaa1e8f0f8cc0129e6900e9c3278f614525851e1939a97b1acb02
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[72]
+aad = 436f756e742d3732
+ct = 4160b4d94a4c4f08cebf3360d64188de51b2a062463d6af30d8e60844f915528acbf675f86b6517c7b605979d3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[73]
+aad = 436f756e742d3733
+ct = e2396d75603d928144c116457245275f48e681f627fda6a888fb02b00bc61648e010d4b82a993c9d882fc9c209
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[74]
+aad = 436f756e742d3734
+ct = cf469851b3a16878978082d773079252e7646e3d1c15ce10e11533ea5b89389baf5677679b792337b107d4cf8d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[75]
+aad = 436f756e742d3735
+ct = e5913c4c0403b0cf15e20443cd18a91365022f141e8e480e271d335c4fab1fc5c9e4af70107daa43f2869e1978
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[76]
+aad = 436f756e742d3736
+ct = 7a6a29c5e897b0df0f986bad7d073e3680f6447b820d36cdcc24c7a6d5881bfb8d42a812ee74dc3a945c3aa23b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[77]
+aad = 436f756e742d3737
+ct = e88641d6c70b5eaa39e00ab2a7d55188066e9520cf517aab36724dcf00de2e9614b10f389aa79044c21574236d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[78]
+aad = 436f756e742d3738
+ct = 0f97f67f90f69d087390b081c7d026f4f37df0086c3dce2e9a02a930a39e68c894ddf92bbd7111e0451fe6cf7f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[79]
+aad = 436f756e742d3739
+ct = 06b7381cb3efda92c617ba646a92e2e7afb22671c71f913eebfd6d3f9595beaeb90011d7e18ca545d3fc2a29d9
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[80]
+aad = 436f756e742d3830
+ct = 4d6f4638c2f8b3b8282c87b7d5881ee4572d0a8878842119d21b89d519fb4c7d063e0d553b4eb0da11df6d33b0
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[81]
+aad = 436f756e742d3831
+ct = 294110587b38ce5ae4b34f037a8ddef605754c6951b5f6c0f1288e17f6d0045acbd4a0f41e98b2178d9acf4b6a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[82]
+aad = 436f756e742d3832
+ct = 5918e4d0b1dd3ebb1812b715a46a9674bee2207a1bbe77f810a3a481b0ed0b84f60e5adc2228915b4fc4da58cc
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[83]
+aad = 436f756e742d3833
+ct = ea7c2a8fe7d6cc0237fef4002226d2b0b1dd9e9c37e0a7d083c57ea7f3118368f8337b972f7642d52152e16a37
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[84]
+aad = 436f756e742d3834
+ct = e6ab7aecfd81e4808eaf4d160f726275c006761f4ead2e9c9637b81cdd8759a35469342b9066f65ecb8f6336a6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[85]
+aad = 436f756e742d3835
+ct = 72d49670b3dff4551c1c6ea2a5cb7d74e9655a2bdb94048ac9173b5a5918d551a818bae8c78070aa580fadb7ab
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[86]
+aad = 436f756e742d3836
+ct = d8615ddb96a5ee3a29e17f00fc1bfd64199bb4587f54a41b60b516a9ac590dc4ff2ce7ccef1baf56ba08d25a32
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[87]
+aad = 436f756e742d3837
+ct = bdb6cb3fd276d11f8b3839f1daa23c25407b85e50d990becbc7548406664060b3e5ea7b8744cd6d01f7d6246dc
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[88]
+aad = 436f756e742d3838
+ct = f11c35cd0da9d7986d34525226edbe665c332af3f265ec9ac3252349d13e2079d90e733e67d3a05153876f8b1e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[89]
+aad = 436f756e742d3839
+ct = 21207c730b60ed9139203c845156fa9ed93166eaeaf33d91501f2a183e98d6f9941eb270df1d0fa455f028a9c2
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[90]
+aad = 436f756e742d3930
+ct = febca60a4ef7ee6a73993ba1ed1d39427d96597d04e1ae338ff3418fc4323227143a6f5ab874cefd098bdb3b8c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[91]
+aad = 436f756e742d3931
+ct = 08ec4f99873f2548a2bc8ae0de56543e927944c305a31543fd56d5f1bee086acf96387d918e7af898598fe427c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[92]
+aad = 436f756e742d3932
+ct = 99b47953bab7e516974cf195a7f14d09ed9ea6f74fe612e6cdf58a9ef0710b2ea7582fdfd98c90a343c6110d85
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[93]
+aad = 436f756e742d3933
+ct = b70561bf36b2acad3eb13d7c551af56e0e2fd6d81ba181489c857f66c88817fdb8b76b8d7d594585427b032c7a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[94]
+aad = 436f756e742d3934
+ct = 2180d3d0a7d925c0af160101f6b334f0f94bbb32142fc1e6efca3e82e9099e382caffdd909b0fa7f4e5407a0d3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[95]
+aad = 436f756e742d3935
+ct = 03d6a815ea1f2f88f0028ee0670e07bf4a0db028a5dfcacb9c281daffcd9226565fa56f92da3ce5eb36e095d8f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[96]
+aad = 436f756e742d3936
+ct = d5e0da3bde65864905f8f8c8f9b6082f22a18f035fb9c04a2973f71bda24eade1772c27faa8c3e2552f817996c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[97]
+aad = 436f756e742d3937
+ct = f13df7ecf2282a7aff702530d169134c0bad279a94e4de7a0604c4b57a2e394189bbf6c0237e6872e0614599ed
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[98]
+aad = 436f756e742d3938
+ct = f9c348a57f3249fdce7612d3329293519f6a675d2a030ef812ebe8c7fe1c69408608152e5f489eb41671c36891
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[99]
+aad = 436f756e742d3939
+ct = 18335b721b8f80ea3c5b0eb16d6fd9eed45f96f7b11140d3692f2dba9ade5cc48a16b4b316ddc704b70e299138
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[100]
+aad = 436f756e742d313030
+ct = 3801b54b9a1d15b10a84eb78a8a84e2f70b4e57e0f6b7638a3d75a40720c101fdd92cfbca87ad22ff7dd20d317
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[101]
+aad = 436f756e742d313031
+ct = 7d1b5a06d94e07e677cb647b44f378114ddcb55798dcb8c98fc263f61f4b34d4bcd375cab0c1ef2224c9540961
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[102]
+aad = 436f756e742d313032
+ct = 08891c005d9ebc0f9f8d07ab3dd15a88c3d9c60402b9516e3c6727bd0b26ad70f78e8d1a1bf269077a35fc745a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[103]
+aad = 436f756e742d313033
+ct = ddabdfb862b8e4d6f03e2858e2a05976286fedcec6447355c2ea0f0540f0d3abe3d9dc17f7aec0f4684ac8a11d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[104]
+aad = 436f756e742d313034
+ct = 533056df19cd99b22c522903837e9b04b38f072e869fcf98e63ab4e138116fb1a327090612b2cd01ce60a92c04
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[105]
+aad = 436f756e742d313035
+ct = 84a75eae557806a60d8dec4e0a030b31e2150299ebaafba2118e1d9f8a4332dd383c3cd1bf01bff70f235e7ca3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[106]
+aad = 436f756e742d313036
+ct = 5288205e740e6eb70b52dcf29f44ade64979a07023888f5a098d6b386b926e5b2b3dbf1aac04a6f80920d27f2e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[107]
+aad = 436f756e742d313037
+ct = 24f72645798f856137576f8044502e55f03c53cb3fbdbe9b13a3caeac07631ecdf5b30c11757f6d66697244aaf
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[108]
+aad = 436f756e742d313038
+ct = 178de8bef65b6abca9a55a1819a9573a248e0612832f255f4d307df38a8f29554fd664639a6a6277b5e33201b3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[109]
+aad = 436f756e742d313039
+ct = 34613e05962717b7a5c60c9c3a2cc0c2039e584948c9a028da05bf31317efbfdb0fd86252e6061712e3b03a53d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[110]
+aad = 436f756e742d313130
+ct = bce0ba4438567b1570821759d9f6d84a6c600701b8632e9fc82a5e68f3568f05a00080bbc4c69d1043fe09a2e2
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[111]
+aad = 436f756e742d313131
+ct = c848e35cec53b724b632a27d3b90abcf1044b93ab5db0a5e63c93f15b8e3e599f737826db5258ff8078d4cc379
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[112]
+aad = 436f756e742d313132
+ct = 2026cfc3ee0f725ebf11c9474bdda1560dd4046eda764d9656cb46c949cf0cdec3fa8a21cd0ed4eff3a7b64ee8
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[113]
+aad = 436f756e742d313133
+ct = aaa53f387b1651d71fbe2b11f541f6f8b6d70a92ed1668a797d89be0862e2867a35b43f746482271bc8337eb79
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[114]
+aad = 436f756e742d313134
+ct = 426bd3f51bb64eaadcc1444282dc0d25edb2b4e777c2437910d355cf3e6cd09ca989a76a34ea8c415e9b9af767
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[115]
+aad = 436f756e742d313135
+ct = 1e8c313e38d847030c366926fc26029045fa4cf5523d86e883e386d348b9d2cb3ea727a0ebc586191f45017320
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[116]
+aad = 436f756e742d313136
+ct = e44024793dd020b4a059346e2e4d325a301c643fccae7994b620972ad3c5d249cc08bc4c30d3434a62a93825a3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[117]
+aad = 436f756e742d313137
+ct = b608878acfd7c879b587555c43f5713f5b8c0f6abe2f1c781e72cbadb32dbec4697f23d8af80eabf32ab969417
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[118]
+aad = 436f756e742d313138
+ct = 0563bb0cfbb03d236e68090252082c866c2d05dc48c530fa5920b32eccf2d4913a190c12aa8d55f6a834458684
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[119]
+aad = 436f756e742d313139
+ct = c0191c7b91f01ab891336ce5d77d97261632ffff8fcaaf25a0da0f563604a5cdcfda6d7d0d6a492d4bc8f8eb64
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[120]
+aad = 436f756e742d313230
+ct = 2e71a5a07fa44ac159d7eb2e483d46d59d4552895973fd7fe32f4919310b814c45699dcace887744d4bac9eb36
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[121]
+aad = 436f756e742d313231
+ct = 6c769767ccc92a2e3c6ef2f94df67d72b9c02b6d1993281d2ffdea0b40b5af09f25b3898f05ccdcebe4bd6f31c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[122]
+aad = 436f756e742d313232
+ct = 5dcc6147c104f9f5586d88a7cd715830d70d88820a6b2157a574b96b7e9c37f834aa6adb957cd8e0aace79bf47
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[123]
+aad = 436f756e742d313233
+ct = 5839720b5f44874828ba95443c2685d53d079f83d3246895906decd87ee41a3cd7969e66c7fd5e88330b6f354f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[124]
+aad = 436f756e742d313234
+ct = b01ece5e6481555fa1db96bdead1d578508b9d601a6aab00a1d433e2f94ad75b843809b4d85aaa4f0ba88f0d11
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[125]
+aad = 436f756e742d313235
+ct = bfef11050cca99cbcefd59be7f27a793de11dd74793ed2bbfeb600fb1ffb0e2d1e559a68e14ca6369dd48036ae
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[126]
+aad = 436f756e742d313236
+ct = bedb06bef935d7035b316b485408a8c4bb745af2ca5214bfd87560f33fb2841618b431988373018adb03e58cc0
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[127]
+aad = 436f756e742d313237
+ct = 72d0e6266e19f5bbec3f4a5ced9dcfcce96c3d98ec677cb1e91953f0d3774a9c17d766ea497a25397bab478964
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[128]
+aad = 436f756e742d313238
+ct = cab945a20e896773bc7408ac7e90e39e7530b2f6408c09693c241835a76d7a9f0894f9f7275a8c9ab78df0bea8
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[129]
+aad = 436f756e742d313239
+ct = a8c02c46ac55f9b655b547d29bd5b00be116094f1208edbc83b8b27aa1edfa4e3b7d7eed3199cd64ee4f451c1c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[130]
+aad = 436f756e742d313330
+ct = 878713ff6c3375f2ac8a2b38c7c0d8b49a7ec57811118b9990b0952c08f097d7f1f41bd86974e0b419246379a5
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[131]
+aad = 436f756e742d313331
+ct = 36bc1b88559208bc331263d2ed1a16ffd8ddf3770290531f8a6198701d9b668d2819744befffa6d2d0ac01b1af
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[132]
+aad = 436f756e742d313332
+ct = 94e5ac2d046cf385ab849a7327278e6d3c51cad5b5d38adc071a113ff3273b1ad5fb5289a01e4da180c77e8ab2
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[133]
+aad = 436f756e742d313333
+ct = 7db0c79103f304fb6cbe56ffd5876aae98322e285fb705fe724f31e283bef9ed1ae4946c7e7dd8de2ea6073cfd
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[134]
+aad = 436f756e742d313334
+ct = 516d927bc91d3e6c822fd7612af2b129a5ded8bf590faedeb8495b7493d12e8ccf52f34d630280800a126ba478
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[135]
+aad = 436f756e742d313335
+ct = eed3aeedab617f72af68573c059ef7e786c233a2420b58426f01689e65a5c89d48ad08713102536c7beaa37d16
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[136]
+aad = 436f756e742d313336
+ct = 8fe4c52fadc9175a6468a45fc8b96be427e570531dd5ee573d70e5dd0b9b1a67cb3873ce2a7148a066b26c8c3a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[137]
+aad = 436f756e742d313337
+ct = d506cd6d849069d44977b1fcd4233ea51f812ae84bfc912b7ad80fbc4b7eb330755ee73c037e04ea4d54cc06ce
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[138]
+aad = 436f756e742d313338
+ct = cbe30ec8e0fa8aa643cd53fd08c036f27ff2b56d46f2fb071bc9730c3bba256dd0317f14cd658b7d347e0eeccc
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[139]
+aad = 436f756e742d313339
+ct = f3029bda331c4e1c90960d60c2536bd0dc758e23d59ad17da680318fa9253f952e4fb019642920307f9dd59e94
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[140]
+aad = 436f756e742d313430
+ct = 8d1b5e14384b86b38dfa1b837573247c3bb58ca07bd6d8a0261306e6a04fec85ce2e0999eb994efe91cef0d8a6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[141]
+aad = 436f756e742d313431
+ct = de39ba2be428a69e47b70eee0315663e5d169da6ef2218bfe7f0ac59957022e5eda5c0b3e804f65138bfb09b8b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[142]
+aad = 436f756e742d313432
+ct = d26d5406228c57ea78ed35a5d5725411b86b82a7f155d845b2e024aa86e2eeac11d33be3c986fa065fdc92ad68
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[143]
+aad = 436f756e742d313433
+ct = 8a8dff67b3d101c00e48d1c6f77d2e6e123417064f5798e0efc7e994cd31a5e34c913e2262c609991e56000b4e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[144]
+aad = 436f756e742d313434
+ct = 90443aa2655619390b627e09daf3949f79e77b903cf2343b84ce5c109eb02238e442bbb9bd2a158c445c7e57fd
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[145]
+aad = 436f756e742d313435
+ct = a3df261a314fb20a519cb4b116832fcfca255372e9582c51bca30df529df7f8bea576390abdc25a8c09c030dfc
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[146]
+aad = 436f756e742d313436
+ct = 764b6ef88a4ef4e00495eae59c83eb4d4da8512ad24982c04c332cdc0c39944bd322d74c89b78977c649e344f2
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[147]
+aad = 436f756e742d313437
+ct = c1149b45a6f6dacca8342741b452c3c0fe8ffe65f12ba4dcc731f38a0e29cfd551984ebf4d2850c05b05e4638e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[148]
+aad = 436f756e742d313438
+ct = f5c2222655ded319eb73adcb75cfdab103855d43bc8e2098cadabcb6f02c75d5017fa95854d4dc16514cb85bc6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[149]
+aad = 436f756e742d313439
+ct = 67de8b5afc35709924eb1598c90d1f8db559e5d1f224e7549205cba6ba70dc4bb67b1f7f3f9a15d56692d3e88f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[150]
+aad = 436f756e742d313530
+ct = e6add3f1f1dbad46769e62b770e0e79f795d43c64b76e46d578447bfc7c01e48a7bef0607791fa51b9f8f73db6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[151]
+aad = 436f756e742d313531
+ct = d974c073ea225646215fef776186673b1c3b10c8fd130dd6c46216c90cdb05e5d899c55be32dafb2f52777be56
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[152]
+aad = 436f756e742d313532
+ct = dbb16370248672972c240fbe7558669713aa40221a8138789a4b1fd95edfbe5dabc361b95e1adbcb804fe38188
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[153]
+aad = 436f756e742d313533
+ct = 0021cb3186fd692c8ab715950564165ee8f89a17ea7e308ce48c6337103a1a505ab2aac137e5a110b7c92260b9
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[154]
+aad = 436f756e742d313534
+ct = fffc59f2ff1d3a761d8e5005c25e12044f10875aad3ebd5e9346534aae5e4896eaecdf05f7fdc8c60952a0056c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[155]
+aad = 436f756e742d313535
+ct = 84d2ab92172e21b7251bf2825f3c083f474d891ca0b8cb7f5661ce37956446cbce80046c82bcec29eba26b4289
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[156]
+aad = 436f756e742d313536
+ct = e80ba09d1d2d7de13067e460755f3609840f017e8a6e4561b7b4078817696936ad19ff6b5c5cdac2b25ce809c5
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[157]
+aad = 436f756e742d313537
+ct = 445d8be1d404aa0e508f7021b22e48dd6a349141c182e601520420ae4610791a8db67f4584ecbeafd3b4169e50
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[158]
+aad = 436f756e742d313538
+ct = aee6debdac56b80f9b55435fdf649d174fcb801a93866fdd8f6bde22ff85a3baba12409fe7f41b1c9b248711f2
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[159]
+aad = 436f756e742d313539
+ct = fe39078d272abc9c7999630c5eebfd1e1628a4a694430c105f119d20e524e99face043b5da613d3b11ecc897d4
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[160]
+aad = 436f756e742d313630
+ct = ae4193c43e06948b19d2c912613f772c6be49b16a4f7dca4991c06417530681b54821b94ad8ad6c0d388884ff5
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[161]
+aad = 436f756e742d313631
+ct = 114fccd21850ebd4069127be28198c5c2e9f270b598baa7be337975510299aa20c054f8498f51898eac61567ac
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[162]
+aad = 436f756e742d313632
+ct = f11d3b4bc526d850043c454f9936f85bca7df5fc1957c55677d3dbc18a55de8a02efcfbd407cd8a4d0a30d366d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[163]
+aad = 436f756e742d313633
+ct = e59152496079561fe9f114ac73ed3356720542d395921f7a4c5c50da7f6afa3f492848361cd3a1a13f4b7a2fbb
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[164]
+aad = 436f756e742d313634
+ct = c62cfe00dfced3a0d9f35f6f9bbbab100bf6d609f3d78230e1bdbc7a2b3f1c4713975b62133bec7cdb8cdd91fa
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[165]
+aad = 436f756e742d313635
+ct = f7e0185224ec145225b3cf0451dfb014dd44137775617ee72d9da4f7b41ec248904c107d6c6db25f3f8e2aecf9
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[166]
+aad = 436f756e742d313636
+ct = 93c68f805eca253c23dc452302ef9ae791b4ffab97853c01f5967b6891cf2c5bde002ccd85a365fe348a57d6ca
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[167]
+aad = 436f756e742d313637
+ct = eaeda86b4f90c1f66e5929454220ef8ae0cefec40a6c03911212810abe11d5d961f625fd973855c7d6d8bd6426
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[168]
+aad = 436f756e742d313638
+ct = 72ab591663e0fd2edbce4d5ee04997d259b834bfb7bc10d36fc14e04e2808ae38cf601af89ef33d28224301424
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[169]
+aad = 436f756e742d313639
+ct = 5da0811d6bb5b9d00402c1f803062e6e6db4da219d695ff502ed4e74f011cefc3c74bfe86f142a6d5ebcef873e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[170]
+aad = 436f756e742d313730
+ct = fe429d92e1cdbc0c738fa1b057762a61b6d0b3bf3d6c4a480504f3d8c07363d3d9adb50c5c44fc9ad2f80afbb4
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[171]
+aad = 436f756e742d313731
+ct = 73d7980299de66489e24e2b042d8cb62bf02a50ea4f6edfb3a265fdb54028a2284c5090fbd5bf7401d8f7d8c55
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[172]
+aad = 436f756e742d313732
+ct = 9b81f97ffded87a9697145b6d0b0210cc20afdd117311238a5354d1ac0a5d0b834becda5de16280c7ea3728e26
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[173]
+aad = 436f756e742d313733
+ct = eb9a1e55a34f825c13d2b7b014cbb7db6249c4c511111af9ae9bf441a9b9b1a701f778f2bfdac6383a9fa79ad2
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[174]
+aad = 436f756e742d313734
+ct = a0603640d761fba6ace56a20de14ccbc45baf0997755175d7f3e3742edb274368ce0a776eda420c0eff6a4785a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[175]
+aad = 436f756e742d313735
+ct = 0abb86f71c0d2e456c4322bf4a26cc5dd898952a98b6fc815b5ddcdfba4308e6ec2c6260d7540bd0bc2a399141
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[176]
+aad = 436f756e742d313736
+ct = 2d076ed5858dd9f5441b6cdc386bc30eed7471a8f819de6eb6173f0704365f8043fb6e8fc4a7d7f9549457a3fa
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[177]
+aad = 436f756e742d313737
+ct = c51e01a9dc463c20728a6d15fd59525709a8c51d9f46f15cf093773aa7a968d40232c9ef26d20257762ee49f56
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[178]
+aad = 436f756e742d313738
+ct = 6be4673041b4f9281b6f5f5b3a4a611062254f82d7d298e93ac3395b0f93ee4277f3d60d1116c5f559ee498c1b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[179]
+aad = 436f756e742d313739
+ct = 56fb203d31045da80ade5e18a2a2e16b361fe1ed4edf4ed654d75edbe82d0326ce9dc51f75454fb7651d5d25b7
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[180]
+aad = 436f756e742d313830
+ct = 046305f4ac30a91936afe73f55363480558b476ffee4ba19a4a99a6edab9bdb712f8dd2abf16e37839382f1c07
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[181]
+aad = 436f756e742d313831
+ct = cb90b1ea72f58b73984e41ef7297338ca0db1b4bf51d1bde41372e4e4bb9ca00f6da1a54e55fd20f1c21ee996e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[182]
+aad = 436f756e742d313832
+ct = 33fc92d18d7aff541c2d8d3d0d590fbf94c7fac0f5403ef4abab82ee855e42a0753ecef6154dde04926799b2f6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[183]
+aad = 436f756e742d313833
+ct = 1fcdce642c0628dbd694cf14df7182c5f5bc300ded6c2c9354866a52f4ebbcdb3a07f16cd66a1f6e25f1aa5c36
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[184]
+aad = 436f756e742d313834
+ct = fb4ee64e15307f7209e60aaaf58ffa1e3348c3e6aff46cf95c3a15e96b65762cf72749898649aa4f2554ec973c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[185]
+aad = 436f756e742d313835
+ct = a64ad7dc7d7f2c272293f2c0fd957c4748f3911e6bc7242a3bad175a20b4508b0cb065a7ec848677ed9d349e5f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[186]
+aad = 436f756e742d313836
+ct = 95eec59259b5fb711157229920349524e7e85756419492df26298ec7b16668a892a5fa41ef7728bc8929a1f942
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[187]
+aad = 436f756e742d313837
+ct = 8cc240907d8cab9b1a0168abfd01aed8cdeeda252e298de2f3f89190e1e03719e40845b9b5d93df184702bfd7c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[188]
+aad = 436f756e742d313838
+ct = 5cece69c96911efcf1406c5faff0de7e7965ce0b6b661df3290ee4b86b4ced5db98d2782cf8ca5c7ec81191ee3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[189]
+aad = 436f756e742d313839
+ct = 9a37d67894742202ac23904b65d72e40b7afe31f7aef8083e3f41185e402481f1f6466bd441a27dcf5a135f6c3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[190]
+aad = 436f756e742d313930
+ct = db536753e52ccee922ca4578dbfc8b24069dc526202b9e95d865ef7f76b9406ba6afbb665f4a2d048f0c8afb9e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[191]
+aad = 436f756e742d313931
+ct = 015649389a63f9410008083f30a4ae626ac78d8cf4b35f701845a56ca07c58aea12908020c43890db3f91745b3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[192]
+aad = 436f756e742d313932
+ct = bf7df6bf223d74a821afeff194aa402a5f71eda3a2a78ae319b4f996aa7b0da67c221c87ff2a778b7a20030a2f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[193]
+aad = 436f756e742d313933
+ct = 9003c98d71b1aa4f531c51537cf538302b5b6036e7af1cb4aadae99921baa5fc30aa86abc8ac525495d92f8b69
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[194]
+aad = 436f756e742d313934
+ct = 6b7980f6b429998a899dcd87ba98a96cbf03b9a0878d3afe10acc0742114a7ee003047deb911ca38ef760fc903
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[195]
+aad = 436f756e742d313935
+ct = 4681f2b8075420e813ad70b9dd169187ee65779371d3f1abc6e62a99c8ee1cfe9be5088cdb20ebc11373d8af38
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[196]
+aad = 436f756e742d313936
+ct = 66361f11cf2515e44be30d93a4a8d9497945f5cc8e7f06df6e4f3f58cb47951841d00ab8b4a52011303bc58be1
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[197]
+aad = 436f756e742d313937
+ct = 09cbadadec104db37f240fcfcbcabecc92a03ec3157b789cc12c25e01c376a2f59189ff77fd8488b43bb81e8fd
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[198]
+aad = 436f756e742d313938
+ct = d490d9602e9e59f96b8aeda570e2e58428ce7c06a4e4dd3b8a3b61307d6fd4c6cb89d07776c30417484ad2f249
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[199]
+aad = 436f756e742d313939
+ct = fc5ae84ab4afbc898cb4b5712e1fbe7f75465bb6e834a50f039a0d2b7095cb732db60b053ded3c0e3df0626864
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[200]
+aad = 436f756e742d323030
+ct = 8f1af0ac6b21371f2a347a007b9de28f54cdc3ee1db93552bd340732e61d1bbaf3194e24cb3707b018d97f5010
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[201]
+aad = 436f756e742d323031
+ct = 45eb8bc519b8ffb448af0dddcf31b378029d916aef6c91dff98dc01a10d1a2a4c0e43445da2d2cc6da4037193b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[202]
+aad = 436f756e742d323032
+ct = 65cd2f48815dc6ecadc4d751cb8f9aab5e678d87abad28d4499670eb5b61c4d1c3c808d62cc946771a5673afdc
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[203]
+aad = 436f756e742d323033
+ct = fb0111868c29bc462791ef235b845450873cbce9d64a7d8851b993de034e13f40e9998046e9d29caebd1625be1
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[204]
+aad = 436f756e742d323034
+ct = 6f6b24fe3698cb0c0a8b8b4f6c999aac265a81a25e85db60dd0847b8be655480e462cf8d3bf6f9beb21de26feb
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[205]
+aad = 436f756e742d323035
+ct = c93a9ae61a56dc361674f9e6c2570b464840afb49842807989c6d9f700552245151e85e06e37d7a30c09780cf4
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[206]
+aad = 436f756e742d323036
+ct = 145048e595c7c405afbea4c8013fe3dff529a2cee5117c61d70150a3c0b97200809c03cb7d317ae9aa3c06628a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[207]
+aad = 436f756e742d323037
+ct = 29f01ab2a7ffa29fbd4c63a590ad7ecf87ae93a2c0eb1b5936b3a6d649e7803fc950a94810dedf18b930536170
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[208]
+aad = 436f756e742d323038
+ct = 633d7ef1a17ff121485a82bf4bcbc9051d9768343e547ee9531f3b3c1cdcbc11dc45705553b1e16a1182488b1a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[209]
+aad = 436f756e742d323039
+ct = 37bc7fc586ccb2579fdb41d13865c8d9659bd8d383910e2474fad0dce89dd418404a458f02eb8172a1f56d8453
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[210]
+aad = 436f756e742d323130
+ct = 92c1f5393dfe1325ffa85d86c1acdb492476ec7a5564820771a761a2df780ac6be823900edc2fb0b61a1ed5aa3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[211]
+aad = 436f756e742d323131
+ct = 7da1a3fb27f68587bfb66e54aa2b98b1217c1b274802dda873c2143aa69b0dc999537f07d473fe2f0b9dc6a8d5
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[212]
+aad = 436f756e742d323132
+ct = aad51528d9d7518519e3e610e9048077062eb164e64388c9bb8f63e0eab617be0ace7878cb261fa426fb051d12
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[213]
+aad = 436f756e742d323133
+ct = a646e6617fbe4e18d4908a1f0cf46500fe3b82cc306e249b76586865cbfcc39d7b5c73b3f372a18a135aee8523
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[214]
+aad = 436f756e742d323134
+ct = ba2a96778c42d5be2c036ff75cab34898896b62b1b2d0adee7dfa194e3da00a2c36967a74107c25030d1b23bd4
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[215]
+aad = 436f756e742d323135
+ct = b7c0b4fc91764f3935da56c764311e6ac6d3c8af44fd5b5f53901842e9bbbc6ce886dd615d6f6c4b6c285dc9c1
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[216]
+aad = 436f756e742d323136
+ct = 3420f14b4463e393dfaaaf07d48b383d6f082e5d58708b2f2ae51e432c435fc9e2fc17f5db6b1575343e91482e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[217]
+aad = 436f756e742d323137
+ct = 0f37542535f680177a32128a9f79ebe52d34821fd818298d6dbba4a51c484d1426d904b5afe80f60e180dbff91
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[218]
+aad = 436f756e742d323138
+ct = 67325db96b9572e0b1082446950019b05da85c062e9a5978c3065aa5bb938b03cddcb50575b8b3b5b689bb59e6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[219]
+aad = 436f756e742d323139
+ct = c5211f82cc9a8261a0a5d93b005a241eb23404497b77689975437b19a2e42b6b7bb38a16ac51d813a413997e4c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[220]
+aad = 436f756e742d323230
+ct = 4d9571193ceffe27a4944d1c78fa0ffe3aa6cfbca6c970b0f93e32aa7a96333fd16abfe81de9114ddc45fec762
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[221]
+aad = 436f756e742d323231
+ct = aa0133057136602263f523658181fa9bb1e66262a9c79b97b1579bb0b5b1bf4bc0a0fd64b607b01cccf52d8e9a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[222]
+aad = 436f756e742d323232
+ct = 825b7894b5a6c4ade04f5f70cd98d975c5ae7707c5f8c1ea197e1faeb280562c77a3e5130d0037d64eb1c86cce
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[223]
+aad = 436f756e742d323233
+ct = 46f11fa25fe412843fedade29098bdf448fcc6473ff0ee7503d1345667d75e74746905166924db804399ec2b8c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[224]
+aad = 436f756e742d323234
+ct = f7fd8d51d9b9d2d5e24b9d4de9f61c9d604cab2bb65712f80de2d94e8daa307de22283c4bb8614504f71b4a819
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[225]
+aad = 436f756e742d323235
+ct = 6f54ae130c8cd9b75627495187d6aacf564778a7bc9f6fbe7001b5a284592dd0c3e7ba3f14d955fe42eec72e31
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[226]
+aad = 436f756e742d323236
+ct = b0ead5ca3c514d405e22f57459bf3e4b3b10480bc5c5ed6cdc907eec7d7c55791c3ea020640cdef28995163a6e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[227]
+aad = 436f756e742d323237
+ct = a0fcdb684a93d7a27ddbdf6c2dcfb191d9a9bfa0a7ec64ce88b408cf8a8deb19b966cb641d944895b85f0b954d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[228]
+aad = 436f756e742d323238
+ct = 616bc44dfe78f7f3ef9d56dd2312e8ac0d08de8f4852dae7794a7e7a415094f59665645ed09387507d00303def
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[229]
+aad = 436f756e742d323239
+ct = 8929024200819b1fd946627756e9bee6efe49fc6a80c6e720fe00c2ec5689f330eaff95e77398a09ac8d3b9aed
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[230]
+aad = 436f756e742d323330
+ct = 54e672bb9e4ecdecfa3526f5bcf1a6745f2007658f794712c8f68e2544c6dcc9946f4a81288c3e76475c1c929c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[231]
+aad = 436f756e742d323331
+ct = 9846eab40523dd43878ff150ee10a54c5fe54248fbbed57cfc64ca52aa5817caf0465eb934b4dd99b96e5464f4
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[232]
+aad = 436f756e742d323332
+ct = aa6e8697ae32fc0908b8f6fc79639f65f59282329f74f65d82bd23d5cffb83ad289b7400f25a87825658c551a3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[233]
+aad = 436f756e742d323333
+ct = 8412449390ae9f7a8811282c45109e2074213a282edee6014f0f9b51ad5a573de7c98d02c19fe9f29336d4e4e4
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[234]
+aad = 436f756e742d323334
+ct = ec413d776c28591efa625f57ac7b1efc0137654044c3763a103b86e94082b92c2ba158eabf8ddc80e232f184a0
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[235]
+aad = 436f756e742d323335
+ct = 179626ccb1dda5d800312a158da372a184fd6f1803bdb472da045467f2d8e4676114881aa10cd1c3979be9cfaa
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[236]
+aad = 436f756e742d323336
+ct = 6de796ba74b37a78fac00a329ec3e7c936425aceb4e36a623671cb39b04a571408fa1992bc592a44ac56f2a96d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[237]
+aad = 436f756e742d323337
+ct = 48b947a68b838f5393acc967cbb6f52dbd161328817438df5dfb9533cb1ec2f7f77aac3c8d1a487691ff3f917e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[238]
+aad = 436f756e742d323338
+ct = bce1baf335f9a2a0677cac2bc6b5d3d2618e772f3af688bc82fa63d839c5e7fcd51535fcd9ccbea75936d90b51
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[239]
+aad = 436f756e742d323339
+ct = 952e38288246111e5cc6a6f0fc5901577dfafd4e28bc544ef5e468e71bbac87ab338773f859ca87f3474fa629f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[240]
+aad = 436f756e742d323430
+ct = 660c6a8f448d5b0680cc1dc929628405e2a6c02da409cd3c6fe3cf7141811abb751b223ad789fd14b9e1602afb
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[241]
+aad = 436f756e742d323431
+ct = e5747a16c008e797c3be09d597b2884945db07314faed0f8f778d4b6b9cfc59620d53be6ed8b4aab2e4d9f59be
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[242]
+aad = 436f756e742d323432
+ct = 07ae27bbcee503b65523d33d061e97316f061f7c355e633d3c4ab131fbf33f4c6792e947072774bdf8adfae78e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[243]
+aad = 436f756e742d323433
+ct = 3d9f2b4d7c14170cdfd535f6190d35e7a1abb2021b30b40ee8f3bbe3d54c02cf69f2b9da331a916e739d74f959
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[244]
+aad = 436f756e742d323434
+ct = e2c42282ea2f99db6d93c31bd90e7bbff5e3376d32303a99e358bd5083918986469f01263bcf60c38b7c822230
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[245]
+aad = 436f756e742d323435
+ct = db37f6664496ccd0cc0422c0151cbd0a5ae14cc5355504e76b52d7cdc0625eae945ff1c39f37a78de712d9d30f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[246]
+aad = 436f756e742d323436
+ct = 98c02dac817d309004e910ff1aad1ee768d641f717e68a951762dee0384f8a5fd09b47a5ce35aac62a1093db4c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[247]
+aad = 436f756e742d323437
+ct = ffb8ec458cb1d80e79871777e3d6340e41acfee88b8a777d08f83a95e9e8c0806f23a5ae627b85c1bf67031d3d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[248]
+aad = 436f756e742d323438
+ct = 9666674453d6e55e481ac351253fd806f1dff6833c755f16737acb4e01a52a15eb51549892f08c039710ff17f7
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[249]
+aad = 436f756e742d323439
+ct = 87faac25c2e84bbf72abc74bb8f86ae409bc36c1d7f4ee3583c6246a2cc4f72bd4503c92209f0bdcf2bf9b97c8
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[250]
+aad = 436f756e742d323530
+ct = 9b779902d73179cc203b8551e595b2525005f1b963768fa742471bb8e399ed016806052cffe16ec1113bb92761
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[251]
+aad = 436f756e742d323531
+ct = 9cdc91cd4dcf786f3d64b9e60f60aa39185aa9124d67474e8d5ccf252a486b8f99475f2391acb83cfc97572329
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[252]
+aad = 436f756e742d323532
+ct = 5a8ac0f7e52b423a242ddf4a109c81d67d340f6c73115e327fa34768cd57e2b2f03b97b59040757a0ce78c8d41
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[253]
+aad = 436f756e742d323533
+ct = 77796249ac3cb85b11d8a912f4e3ab18e941875e4fbfff3ed13b0e1e8b6f70199fb1aaf82c90e0106abd697fdf
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[254]
+aad = 436f756e742d323534
+ct = c62723610b47a9702d7226f58e4b309a3165e81425a0e0fac70dd6c3c2dad7230da418743a3f196a51c7cd06db
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[255]
+aad = 436f756e742d323535
+ct = f2783a56b5f0cac017424bbe7d29dc9cc45ea7a6050ef83c3284f5ad7bc889aab2cb46e6916a683b17b903b63e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[256]
+aad = 436f756e742d323536
+ct = 16bc024eb0af9037260c822d45fa786e3c259aab1b7a4a196a72c3e794e78446440ba42b531da44d3d36d0a042
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# exports[0]
+exporter_context = 
+L = 32
+exported_value = 8890c5615e5d6b0e1b212e26d80a7e8c0d03e796377f09e9377aa0497ccf89c9
+# exports[1]
+exporter_context = 00
+L = 32
+exported_value = 51f60f1d4505688a1aca99c9b789e44f38a5bfa177a6b4660ff57114bf50c6be
+# exports[2]
+exporter_context = 54657374436f6e74657874
+L = 32
+exported_value = 25f7c731201fe73978b5c66405f17de3e59b7f1c4bbe21e9ff57541d152841ac
+
 mode = 0
 kdf_id = 1
 aead_id = 3
@@ -3144,3 +5246,1054 @@
 exporter_context = 54657374436f6e74657874
 L = 32
 exported_value = 5acb09211139c43b3090489a9da433e8a30ee7188ba8b0a9a1ccf0c229283e53
+
+mode = 2
+kdf_id = 1
+aead_id = 3
+info = 4f6465206f6e2061204772656369616e2055726e
+skRm = 3ca22a6d1cda1bb9480949ec5329d3bf0b080ca4c45879c95eddb55c70b80b82
+skEm = c94619e1af28971c8fa7957192b7e62a71ca2dcdde0a7cc4a8a9e741d600ab13
+pkRm = 1a478716d63cb2e16786ee93004486dc151e988b34b475043d3e0175bdb01c44
+pkEm = f7674cc8cd7baa5872d1f33dbaffe3314239f6197ddf5ded1746760bfc847e0e
+pkSm = f0f4f9e96c54aeed3f323de8534fffd7e0577e4ce269896716bcb95643c8712b
+skSm = 2def0cb58ffcf83d1062dd085c8aceca7f4c0c3fd05912d847b61f3e54121f05
+# encryptions[0]
+aad = 436f756e742d30
+ct = ab1a13c9d4f01a87ec3440dbd756e2677bd2ecf9df0ce7ed73869b98e00c09be111cb9fdf077347aeb88e61bdf
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[1]
+aad = 436f756e742d31
+ct = 3265c7807ffff7fdace21659a2c6ccffee52a26d270c76468ed74202a65478bfaedfff9c2b7634e24f10b71016
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[2]
+aad = 436f756e742d32
+ct = 3aadee86ad2a05081ea860033a9d09dbccb4acac2ded0891da40f51d4df19925f7a767b076a5cbc9355c8fd35e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[3]
+aad = 436f756e742d33
+ct = b7de2d672ecddcc77718bb6736d3982fcaa5362198e63690f0452b0137f55480f5d5d3ad7c3265f7aa3f72f140
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[4]
+aad = 436f756e742d34
+ct = 502ecccd5c2be3506a081809cc58b43b94f77cbe37b8b31712d9e21c9e61aa6946a8e922f54eae630f88eb8033
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[5]
+aad = 436f756e742d35
+ct = 0ca5f85ce4569e0ff208fc23c691c2fc85da677a270cae116fd5357f9c4548f5e08a3ded8e137649b86cb5cc97
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[6]
+aad = 436f756e742d36
+ct = 9a953b1823973147329f2fb802f2944e5b01a889b21700374b3dbc2cf41ddacd04266796a47364cefae16db6b7
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[7]
+aad = 436f756e742d37
+ct = 472bbda3a67603e6a242ef8fb037d033560cb9e8f95132e9a52f16d0d4fdce88bee88c00f682fea1798976b3da
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[8]
+aad = 436f756e742d38
+ct = 2f1a2b7fa25d10af90c993c87a533da919c3d274e25bd74b4e5a299afb283138a8f1e6d85a08d6af19a384ed22
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[9]
+aad = 436f756e742d39
+ct = 8afc7a43e9e8d575f8e09c71dbaf2259fab97b5f48d90a284a1b9e0d52c2974e22518e9c22076e7aab14c7dc7a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[10]
+aad = 436f756e742d3130
+ct = 10d3c4181248ac1e01aa263439ad123ad9458e46da3d513c8eea06b4218a442ced2b27c68f2bb27b29b0f9fba5
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[11]
+aad = 436f756e742d3131
+ct = 14d77d5349d17d3f3cd787356180d424ef93835485e82593ce8b0403eca1e1924a7aedab78a2f3be37994bfec3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[12]
+aad = 436f756e742d3132
+ct = 1665cc5b2829613ac24feedf9847207bee8ec2ad536aa0a3b1de5cf614e5eb419b00aaabcc7d9b85d03626a053
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[13]
+aad = 436f756e742d3133
+ct = 4beb712b2dc79cb2923affcc5ee55df481a807922b74894741f1a8ea1ca4145b3872ae617dc23c1b940320dc5f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[14]
+aad = 436f756e742d3134
+ct = d24b966c9ee0dad75457b0bfbbc0f204540cbb01e0875fbbf6e434111b0934b4a4d1cff94ad918135233021ced
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[15]
+aad = 436f756e742d3135
+ct = 64fcf95695b71766b8447d96ce5af5c8629268d6738e46032a5a14d7f69d280ce004876eee8dc3009987e5a774
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[16]
+aad = 436f756e742d3136
+ct = 0ab4da8253b8eb87f8c934527484e9b1371ea99bd48c47ec9060cc43803a8640ffb0c904f41d5821c3312a5d7a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[17]
+aad = 436f756e742d3137
+ct = e813a7fab6db458b5b819788c35671485d53b2647c8989e865cd0adbf9fdf21e98c69b9e49976b6d29611768ba
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[18]
+aad = 436f756e742d3138
+ct = ef43d472e241bada94631ea7f713b553fb01df4abb004f56a4f0b0b35c2879259d94c48b087b9eb84393d5029d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[19]
+aad = 436f756e742d3139
+ct = 87573897dcb5e2ded008addde56b4652b44b286662689a651bed7949dad1034c8751462d9e7d7c7dabb976d4ff
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[20]
+aad = 436f756e742d3230
+ct = 99e8c16b09b11d63912d23b29b9514c5a8a13c7f6d26352088b648c6cf1ba6fd71cb15c16a911d2538023fe4b6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[21]
+aad = 436f756e742d3231
+ct = e82e1588353a993dc57e713d9f1dffd711152edb7667370044424291877f93143751643a3d2b646de364d40060
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[22]
+aad = 436f756e742d3232
+ct = c07ab9089b2406c2f8f8871e555042ad683c6e9182b3e5198032062b81c59850342b653085bef4525def9078da
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[23]
+aad = 436f756e742d3233
+ct = 882f8fde7e025247d9684126e08f44dbe6e8158804b9c42b652a471ba904ce19f8f3d3a9162230d717ae083815
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[24]
+aad = 436f756e742d3234
+ct = e14ef552b77de117f9fa7384c93bce3dfc471e78853b6c35d2c5b18b57ba7940650805e61c3b915e1640aed9e6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[25]
+aad = 436f756e742d3235
+ct = d258655d099fb86e3e2740c0c1e11621ef7dc61c9e770ceb07fa9249a3dc42790b0e0eaa63f22bfeee9181ba03
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[26]
+aad = 436f756e742d3236
+ct = dd836e8c628a4d794cd731a26cfd591985445be24cb5ce9eadafb86dc93e03b1b53dae2808d5a8a56ad4ce76b7
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[27]
+aad = 436f756e742d3237
+ct = 95dd4f0d739fa6d3a5c823af5be5cbff4f67681ff4e91da4dd60862e0aac191a01a2a786e3bc4ab17968c921fb
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[28]
+aad = 436f756e742d3238
+ct = 4826674734200324d6111c86c76cd574b2e6838b61fcdec1ff9166140791919ee848122aceb4fa39a4b00d487c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[29]
+aad = 436f756e742d3239
+ct = c23f7e91ffccfab228848435d09a8d5b540b3263ee03381dccbf268244e109b3ef00f46c7328e5bc5904a8e4f8
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[30]
+aad = 436f756e742d3330
+ct = a1951f639b495355fde23c6097dbd93a2291c84e2e5d047e07f0db291b2a23a162106328bb257ea78c87ce1499
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[31]
+aad = 436f756e742d3331
+ct = 2efee285dce215c4d318a7e7cb3c79a5f4ed206810badfd13db42f4af0aad43675e2c3c7f2818018ababfc0bee
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[32]
+aad = 436f756e742d3332
+ct = 19fa32f8a868463888d6468a9177c2c09ef5eb09502646a6f2f24055d670e3714f5bee6c15a6fd3cfb8caf6a7c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[33]
+aad = 436f756e742d3333
+ct = ec8cf86893c64175c3247ab71f71669de7152cdf2735ee855b272535445d707a58c9188c386c9d62cefde9ad4e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[34]
+aad = 436f756e742d3334
+ct = 2bcb2e07356124e3bf185777306701d48c3f007df73ad77ed95e87e18d503fedf881f9b428edefff6dcbf35457
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[35]
+aad = 436f756e742d3335
+ct = d112973726df1719a6756479b75ccb218d5cd493f0a641344ceced3c1e7e48a62dfaf2eb27f943b321ffd11eb0
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[36]
+aad = 436f756e742d3336
+ct = f7e38aa4187cb6f9f2b46990dc690a340b1244b0e96ff3b4599ede765b1982cdefdd3738be0b2e98f929e04cf9
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[37]
+aad = 436f756e742d3337
+ct = 43011ed36c336f6c499a33fa35ef185e08434ca63f9fa5478a533133af82c3bf38a31729af87a7ad1a0db6e886
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[38]
+aad = 436f756e742d3338
+ct = 3241fa612f4feb1f2dba73beef8a35da4b3650af9edcf0fb6d364b2028b335933e3dd04bcf013ddc5df174a8c1
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[39]
+aad = 436f756e742d3339
+ct = 195052ebbd8afd125f4462e935ded4c6cc999f41d11aaacf6d645fab1f6e64ab0ea600a480ec7c21921c6a49a2
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[40]
+aad = 436f756e742d3430
+ct = d659b5beb44258ab7f5045a91e4ae127d1bec460fe58af259cd3ba8eba696efb4d8344e0438ff64a952955f16a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[41]
+aad = 436f756e742d3431
+ct = 1e5d05cf7eace9542eada2db4f7579452febe6ed7f4b3b53b5971238ec182e0c2a898204f47338dc469b1a2298
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[42]
+aad = 436f756e742d3432
+ct = 1cbe40802bc5a0c96414ae9330eff0adf7bc160944863bb354f6602d49989076010cb8381892ea8f30384226ae
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[43]
+aad = 436f756e742d3433
+ct = 02d88f0941c79663d90b8f8603c1a78101242cce044fe72ec585b48bd71bb79636f04b04084b4007cb24bf1ddc
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[44]
+aad = 436f756e742d3434
+ct = 5910202f4266d349ca3b1e40f051fe16be784545bc8031f533d30e82b900b9edf5096f448d5e2de8fdaea4b72e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[45]
+aad = 436f756e742d3435
+ct = 1f8e71b30e4a199f7ffd05a7feea60a09bfe3d052047def72c8f8bbc94ebfcdb9b6bbea97eb15a30ad80f67ea8
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[46]
+aad = 436f756e742d3436
+ct = 4feea6befa30b7318fbd769cdd44e4b30374993edcdc3bba868056b30f1f1fbb32b7ba9f17807feec73e646cbc
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[47]
+aad = 436f756e742d3437
+ct = e62536d436e2bbbfcb8f01aa84671ca601ccf537b3288491b20ad62046602d8f3d1b2fef5e0af542b29eb7cb07
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[48]
+aad = 436f756e742d3438
+ct = 57e90938ec88919ad5c7de2e2ed9b410e8e8ab46e1983f71ba3a1a85bd8726e7a84777a97532165b0a1d00636d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[49]
+aad = 436f756e742d3439
+ct = 056625bc0f5da4d70678d51a0b9e79278042a18d81e4c12362dcffbe91d53b8c5f357a9e0afde2b841fdd65cbe
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[50]
+aad = 436f756e742d3530
+ct = 2e4ae62382e4ae36dea0d243bb69e02195188eeb91009c6a02dc4295543452233e97caf6fdb1909b7c4c9782ca
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[51]
+aad = 436f756e742d3531
+ct = 6a5101ea9f65bc392d82cb52aa6e5d5e09262639ac5a7fa4684c3724c2c9883d20873b4a03816d0d62ce550820
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[52]
+aad = 436f756e742d3532
+ct = 8c3ee8a0bff374943428dcfd6d6fd0ff06103c776a26a04ea4c25c606e1442e4be786fd71c412ae9916f45f8ae
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[53]
+aad = 436f756e742d3533
+ct = b382567d688e25f95da3b8d7dd290115b5012acf4783bb70336e192ec4c52a9769b29c20325d9a4caaa72e9ece
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[54]
+aad = 436f756e742d3534
+ct = e048715bb0bfbd3c5cf4df882d03d5464ce682400dc4c349a2f1d1827473100e7d4dd88735e21cc3d9017c097f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[55]
+aad = 436f756e742d3535
+ct = 17863a9136085e486347c5bb9e13b13d311c7453881a6632eb9711e6bb0aa8e4eed65a3f77025eec5b18b4b180
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[56]
+aad = 436f756e742d3536
+ct = 5eae326e0d64c3d2eb3ca030b86574aec87ef9aaa3e8f73e10a55f15d54cbcdffb1599a30fe765cbb4b01b1620
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[57]
+aad = 436f756e742d3537
+ct = d8f57a7357b566b35bb59f12d7cececc675ff42a849cc0204b59fa8dd8f32e28367e194d5f0e6686b5a304d5fa
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[58]
+aad = 436f756e742d3538
+ct = 5291cd0c0007d0f903ea34a44c8416604cd581e135cd53388fccb2760e64c497148f510a74bc0bf8c5d9300dc2
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[59]
+aad = 436f756e742d3539
+ct = 8e686ad247050455bc96e7fd09bbd75b811479f19c74a4b9efb42358138c0665154508b40d066cf01786e5b14f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[60]
+aad = 436f756e742d3630
+ct = 16b50d9f5803b951a5cf311bc2f974db9dab83290a29c892173400864af47909d89bdce645f43b18a40ad224c7
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[61]
+aad = 436f756e742d3631
+ct = 069c4eeb76b1fab4025818cd505109062398b57d996e16487ad944f97fba4225299801806753ed2008a930d792
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[62]
+aad = 436f756e742d3632
+ct = 0daf3b2ddf8acdf78228d418742f97a43bc4175c4490d627ae4b689a1b58187cd95eb8919031ef450b43b5a3af
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[63]
+aad = 436f756e742d3633
+ct = 0e87df1bb6c8e6c39bfc581703caa8c8c89283578766bf180bc1c47d297d42ce90e87172f7f7d75de175379e93
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[64]
+aad = 436f756e742d3634
+ct = ca21ba4e95aea092d5514267e6fda85ecc1aae1b52bb03c598655e64e839aa54aadcedbb65c1d1d5d7c19971c0
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[65]
+aad = 436f756e742d3635
+ct = b38a51ef7d68dcda26f36ba9430c841310fbcef1dc2b0656747faf4987c6da76e81cc098b6da02883c47e9cb80
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[66]
+aad = 436f756e742d3636
+ct = 1a8c0cbc4967c3da7ccc5e14748fca5b1ae0ce7b07b99c60ae133f493ad94fba50c2e0f44edb68a1a6d6ded1d1
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[67]
+aad = 436f756e742d3637
+ct = 4b232c97fa9cef6fea482bd90002a6637629e59e6839aa4b51a9698b0db79ec010bb06aba00c1b05f282115181
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[68]
+aad = 436f756e742d3638
+ct = 277542b55e05f4f5b6f1149a45e981973c860e140b0be9be700605be226b5482bdc94873971d7a03b03b180b1a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[69]
+aad = 436f756e742d3639
+ct = d1bd44f2aaac3cec6dad09ec5939c8bcfeaa45a020b104af54db92805c150ceec660c14be21114e691c17100b6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[70]
+aad = 436f756e742d3730
+ct = fe86fe64f4424a3cc43ae90ca90c4c829555be0d346195fc6f98c027326c5907f652e9ed292e88c262c8d1333d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[71]
+aad = 436f756e742d3731
+ct = 4b1a3c565eb99b18edf4240a06cb30acf037dc1a932937f649c24c3bc313368f9c13aa814886886cb8250e33f8
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[72]
+aad = 436f756e742d3732
+ct = 82b190bd232d86589e0e1e7f37c0185ad0ddcf2b082c76429e1995b0d1f62acd588bba85b94f226da892db271f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[73]
+aad = 436f756e742d3733
+ct = 51f98f99fa19184916e1b08c76345b5998ca5fa7fb5242aaa521f7b07b47cd53ac3dc9637e13b436ca617a0b92
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[74]
+aad = 436f756e742d3734
+ct = 323a32f6c87217db499ac6bda975371333f1189a618fbad68e0d8887d1c71b0520fc301f259598de1e48b1044a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[75]
+aad = 436f756e742d3735
+ct = 43227f6091853dd20734cbb1f0aa1ca58d8fcada7a6b8366a1ad0f777b34ebd040abcaed06be5dc6f4c05df706
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[76]
+aad = 436f756e742d3736
+ct = 209ac341492e0d028320704c2af7c2a3ea84b86e6542b9b3f2a9a3b7da467d3faa471fe2dae932dccff31f30aa
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[77]
+aad = 436f756e742d3737
+ct = a68f24e02ad3f221d11e3ccd7f6a749f7e3c1b2f37bf20108ab4996db6c599d62ce4425bdb4f596b84eef05e12
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[78]
+aad = 436f756e742d3738
+ct = 04309d4b824c4c2d7aa0586b90b18f3b96b8139e27ddc64b9a2e16850025b4e837b9c4e2965d46d69d5580a2b7
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[79]
+aad = 436f756e742d3739
+ct = 015dfc58fa0be8ad7b4fa8fdd2705a07c9d70a615abe09ea744535667f0a444616b888f16a744ba50bee990ca6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[80]
+aad = 436f756e742d3830
+ct = 583194570397fd8c5f366627b695df81b281f70c97acb4f9e957739e7741e64aded30ed2bb892a082cff249d5b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[81]
+aad = 436f756e742d3831
+ct = 2e8468cb395a1b361f4ae24d1fa7b080451edf50ebcc5a605cc0c64926a0a36adcbeebba318189e3a3f10ec1bd
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[82]
+aad = 436f756e742d3832
+ct = db3a33983fec5d55e1152118386a3942313dd11a52b43ea2453e555619bdd8f2272c4ae6b6b2e45afa0708e62e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[83]
+aad = 436f756e742d3833
+ct = a55d4f5c9e4b54d5c430984040d9e3250a4ef60b51c6913ad9f0ffd24485c5220dce9368047b2bb275aded5d1f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[84]
+aad = 436f756e742d3834
+ct = 7546ced9a69893f81e8a1fe01ee428f1fa989d81a91b67b37335d4e3d74f4c568e37673c8357aea9585f1bf8e7
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[85]
+aad = 436f756e742d3835
+ct = da9ad2308781a5e98f26623db55632458b1213d6255d9f93eec34dc122d92882a573f4489dfe8819a33712a56f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[86]
+aad = 436f756e742d3836
+ct = 8807ebf2c3017769a8fcdf49724b6e87ce6b78946f157fa7b596909ded7f3fc5a74c96e6a30bc94c693a10484a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[87]
+aad = 436f756e742d3837
+ct = 617fbe2f615fe2d78e7ebd09d7119ab6aff2f6948f5b11b0fdbb38f0097fe9728d87478699ba2c4418833e3111
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[88]
+aad = 436f756e742d3838
+ct = 50a2a02f5394690595cb345db18c4da427fc31bd1e7aa225780a9f707296429f3ba7ea55dbfb4e9071ad46c33c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[89]
+aad = 436f756e742d3839
+ct = 7ad5ce81fc409119042466e46b8b5f69a9ba6ef9ab8f774d6931971854ae54dd26534ac8ff8006c6c5b6bfc080
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[90]
+aad = 436f756e742d3930
+ct = 9ae0d06ce9213dbea68533a6f45db7819a38ba452251aca8c648fd4ce55fa98ea1016e9b607bc2a1c86b9dbd5b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[91]
+aad = 436f756e742d3931
+ct = 7411c84f11d4b995887faebd4068eb91f4cc6a4210e78db48a5b95349c55797280ee86efbf50aa4979c4291658
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[92]
+aad = 436f756e742d3932
+ct = 00c70bb93351ff8c53993390f9739ba7c6ea01b7340d98eca81a48c833af3694586d80d9eb84a28609ae505e66
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[93]
+aad = 436f756e742d3933
+ct = c1292deef48fbd48a60e5ceea9d2de9aa74d6a6c2f4ad7af550502d48e85340031608f7c6be408909723e96619
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[94]
+aad = 436f756e742d3934
+ct = dcf02c0f52dad173ab81af5ba6a71c6aeab76a2f6bedb95a9686a11073ceaa555aad04cca16d61c3000d8f2707
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[95]
+aad = 436f756e742d3935
+ct = 99c731a1024760cfabed4c9e6e06ba16362bf9cf8af0984e3e524a35c57e1b70132b401e879ac25b5a19e52608
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[96]
+aad = 436f756e742d3936
+ct = 380da1568940ae8141c20d77a0c3ca063a0f742aad509a244cc4218a0894f2d4f70d442f2bc3f45e898e8709dc
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[97]
+aad = 436f756e742d3937
+ct = 577edaf7ba9b06c19d8b3afad647f1fbe2cfe0a1e56532a9942d4d3288dbcf2d65720c5cc5bee93b4524924e0d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[98]
+aad = 436f756e742d3938
+ct = b8819cad3a864fabdbf303f761b2622ef5f12599684c59a81618b3e8055aae2b62030fa487e672339abb772624
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[99]
+aad = 436f756e742d3939
+ct = 8d0ccbebe563ba37f5973677e0b3cfc333032d0c6fed82158702b1c39a3378b02e8a474079ee03e7be10c3f8b9
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[100]
+aad = 436f756e742d313030
+ct = f7b0d944940dcb42172ff7f050ced108a040c92cd111f62f64c7c52bfaf0768eb2c22fc50371c6c73a22abd7d1
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[101]
+aad = 436f756e742d313031
+ct = 8a2759704dd2c7712e7fc09674b5c786a0c08fe6abffecb93eae0667adfc68f5b69a8dd1527fe7ef9260b665a1
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[102]
+aad = 436f756e742d313032
+ct = be595d327a37a484b706780f14a48626426b35a61ca0c897304a8d3cdfa4e0f769bf7c489f207240a548494d1a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[103]
+aad = 436f756e742d313033
+ct = 58081bd5e9bb449b50338e606a5c9ddb06323e0b30606ec2e7ba914e9783be9455c5864e5cd591cecda45d3818
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[104]
+aad = 436f756e742d313034
+ct = 5b841f947cb3000c81e0dceb2a647d87fce6fdb8ffc1b168b483ce2a7575f03a02a4a7ec748b21a18d75d94f69
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[105]
+aad = 436f756e742d313035
+ct = 7db27590c2b9d81f0c51505db4aff4aba0114977c04ab386078368f4a6efa239d94efb93c2291a031dae851324
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[106]
+aad = 436f756e742d313036
+ct = 3d3d4b63bf33ffe734df92cdb7ff38133c3661f985770e814d5961c8bf8934b7151f722fc0d801afa031cd9a5c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[107]
+aad = 436f756e742d313037
+ct = a123bb67617a8d49db372b9158d3b741b55c6052bc23ac936dc1c86371594fce34e40f7a85041642f2941442b3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[108]
+aad = 436f756e742d313038
+ct = e593774a7353ef7730ee7fedf79199fd47df3f4a0f35aad4a584112283d137bb7d1fdbcf9d8980ed4244b6eaec
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[109]
+aad = 436f756e742d313039
+ct = a083192b5973ed1a6adb237cec62aad1a304ca0044e272fc023f3a906f696bd60f545f1dbc0ec7ff551619e0a4
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[110]
+aad = 436f756e742d313130
+ct = 7bfcbaebb82a899a39ea6c34bd76be9358f53e7397d40f76b46c7262510f264d547c56fed89a688c4d9a2b2e4b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[111]
+aad = 436f756e742d313131
+ct = fbfc7bc29317c97a62de2ec25cdef1729d169986b334f9272a50110e1b37a71b6cb1e12b762022d4f49685979d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[112]
+aad = 436f756e742d313132
+ct = 21fa26c371405a806346f540f8c82bd562d517a1a9bc531f089819b7bcd66cd6adf4e93afaf2aa1b7ba2f06baf
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[113]
+aad = 436f756e742d313133
+ct = 6c254fb53652021322d5ef73a16b6562e57432f51ac20b364aeedaae603cd4f391b06f305d9a2fb266a2d3e55b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[114]
+aad = 436f756e742d313134
+ct = 9d0e3c870e95145533491b24626dedfa8c2b54508ea88310c285e60d4064f3e033aa9ed7b0d06e759e9bb8cc1d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[115]
+aad = 436f756e742d313135
+ct = e18e654b8bfb3ebaa9a42de68fc117f1df0b50d1f690101d7ea5905441733f776a1bb789f6490dcd902b232924
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[116]
+aad = 436f756e742d313136
+ct = 44c2bc8b27fbcc94f7861e6d115203940d437c0bc10f6abfe3f7f54a1dbbf7e16d83a624de58d6d984db4629aa
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[117]
+aad = 436f756e742d313137
+ct = 40c149be04bf41e6edc15e40f44276ab6b76f9e2da3a6060680075467b696310320d3bb21ba23de62070cd2d56
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[118]
+aad = 436f756e742d313138
+ct = 582a5f80a54af024cdde0bf597d332f94b58094ad4930e470e9122a00da2823761733ed6efd7ebb208e5dc11c6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[119]
+aad = 436f756e742d313139
+ct = 6fedb508a62f8119866fa2f77680511461d6acffd5fe5c9cbdf755d0d696416245e94efe70c440d02968f4682e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[120]
+aad = 436f756e742d313230
+ct = 7b0baf62119a4aa6f261f840ff529913c0d430042581939fd5c4c706eca535d4bb8b27f4b85b063d6c4b672194
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[121]
+aad = 436f756e742d313231
+ct = 788717ddb583b85e508ed3adde0a02dd665d887ef538261718f5e08a1d25ccd6d3f669bed5ce34cb12fe94512a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[122]
+aad = 436f756e742d313232
+ct = 2d306491874eb01fcbfeeb9ca73bb6ae048077b87f524e597cc87e560ae8faf08a38fcac3b1608431715b232a0
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[123]
+aad = 436f756e742d313233
+ct = e5b3e678e0e0df8de042871dbc3d2bc3acbfbda12646825ae162340636177e73aebc28265cb0430553940e5cd5
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[124]
+aad = 436f756e742d313234
+ct = 6efccc349b12e2f49b660d577783681b571aa00faba56cc51e71c041eea5e2c855090a0183b395bdc5c1e649c3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[125]
+aad = 436f756e742d313235
+ct = 5a43b00495f38c68f39eed4151935cbb44104f3aae74307c474e824f8f5e2cc4bc967c4b9fe8ed41a6e00c1704
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[126]
+aad = 436f756e742d313236
+ct = 884e27f01a7fc3b3c01204a8d4d21128c597a06aca13081e82305ab6b3369d0ea39c401088129d9484d511dbac
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[127]
+aad = 436f756e742d313237
+ct = 6708a8ab40099f4fcc5ce3a1f4c1eaad0959f40d52d7efde9805a1e309cda3da9a229e3388f7fdc5798ddcf8ef
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[128]
+aad = 436f756e742d313238
+ct = 2b59c9116a3cf4a2b1ff7b862f05d0a9f4fa5b21beb071a417f9ddd229fbdd3160fcf1f5588f85fe1583d910d3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[129]
+aad = 436f756e742d313239
+ct = 05e5f0ef2c208da0fce32169d86aadcd206ca2b1a64f06b602cefbf791960f99c6763708362b0d321e8b917bd9
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[130]
+aad = 436f756e742d313330
+ct = 55fbb90f11eb01007b31682815a474280ab8718957856ad32b4dc0d86f71fd49ee1000957b76ba3f56ba5749bf
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[131]
+aad = 436f756e742d313331
+ct = cfffd60cbd241199eeaf529be3cbef77a67d9c5b62fd65861c84056037c73149988be4d6031d036b9d5ead6494
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[132]
+aad = 436f756e742d313332
+ct = e065c3fa01c9b0d1d2c20132b5fb21d85c50715ca55d85fbf29e29c95b4119dc054a02a7061e9373ee6ed49736
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[133]
+aad = 436f756e742d313333
+ct = 2ceeb7fe75ad7845efa4867ad23de6816467b5305f5bec964c5d4726e6cedc42e18654c2000cddbdd18e013382
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[134]
+aad = 436f756e742d313334
+ct = b0a31296ead350554678e5460b31ce11c7f5928433ee2f948f441702112d838718170e81f4b3038139316a154c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[135]
+aad = 436f756e742d313335
+ct = d8e3e2a3c1452588477be454dea80c7ec1d84f63430fdc46143bbabd77348c37ac4eb24fa23ae7b4fc0e5bf04e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[136]
+aad = 436f756e742d313336
+ct = db487ed57bb04f39a39e6ae8e82e86ff0efb765c47bc49333671b6394b2b50f0e56907adb2a40bedb7fe70c460
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[137]
+aad = 436f756e742d313337
+ct = 7f7277bd1a14fb3843c88306b5f7480c2621b98d76a42e5cb6f3ca139443a2f3a07fdea341dff01e29d68a5afd
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[138]
+aad = 436f756e742d313338
+ct = 3fc4dc2569ecf94fc28f7a61109351c4ddb7648d7c42285cf33d732075e3852d528cb7e0858313b5be0f00c6dd
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[139]
+aad = 436f756e742d313339
+ct = 825c39e7cfe13ce352225b76abcc4f434d3fbf8e1209f852326ae195c669ce411b150149e14d4634b6eedf0b05
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[140]
+aad = 436f756e742d313430
+ct = 9de9581a72f883c91a4e160c2a9ebb75e41538a9612a930b86d5c86cef16c4c88c86c6cb9c4b4aeb91b9ca988e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[141]
+aad = 436f756e742d313431
+ct = e04a92935f4ac59e99aab8d602b4816bf7c1dec5d5d47e5d76f75bdddf80ac7f6ed46e6a0986c5d50a980a61d3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[142]
+aad = 436f756e742d313432
+ct = da4285f3b19a5a63611948f89a9141b060987ac46739c68e65d85e1265043efdb0aa5d390b9e216660c29c9185
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[143]
+aad = 436f756e742d313433
+ct = 72c1383d0adf2021832cf8e7be8565f68f2693fbb79d1b181331fb84c189d8543cba13e6b7a6dea80208bb6f39
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[144]
+aad = 436f756e742d313434
+ct = 7ffaef3ded32191024d313221da9a3652cfd1ec17cf65aff57b1b67224e5ff7a931e32c72ebf8b226911bddeee
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[145]
+aad = 436f756e742d313435
+ct = 8eaf068482dec200d6e13a15f23fcb59f30cb2948ac226aecd002cea99c89686daf77848f956933cc25fd26f48
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[146]
+aad = 436f756e742d313436
+ct = 264cc5d6a0b7a0b10f6b1b3248b5a3324e3d6f478145618d09c47fa28978493bf1aff64ed4fabd094d5ddabcc6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[147]
+aad = 436f756e742d313437
+ct = c148c4bcadd21fdcdd7e068507fa3ca526b14443164eaff48a81db46148cd2ae333bfb325a335296bd19efbbc0
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[148]
+aad = 436f756e742d313438
+ct = 098d1dc0cb7cd977948f0b44542af26e09aa4d6ea63b17b5e72a78723ca9efe1eb002c98a08bdaa8b3fda0b7b3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[149]
+aad = 436f756e742d313439
+ct = 13fc200eb7d9ac3ec5672a9dab0e813903576fd05bf8fb7ee5635fcc8741419b869a7b8d9f863b12e88e2c5930
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[150]
+aad = 436f756e742d313530
+ct = 81a5873565aca0a8bf27d7e0a40b5190406a8be971a79e71a249fbba371cd6e95297140bf30a9a247db65b5573
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[151]
+aad = 436f756e742d313531
+ct = dbc759f3edd826642105b502435edfb28a66c7c9053f77f701d019e8054a854c50ddd9951c8d329afdfc5afaa7
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[152]
+aad = 436f756e742d313532
+ct = ddf2376a8e02ff6aae395fc4455a4c776c0c9783453a2e42b28b3ea3cd1dece1d6a87924307611ccab815bbc4c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[153]
+aad = 436f756e742d313533
+ct = 87757e2c0821f95564bcc568723acb7171f293e955173726017985e9cb3383b33ed8066fa6f48ceaa6cac6df0c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[154]
+aad = 436f756e742d313534
+ct = 036d4fd7e9e72929cfd2e1fcecdc572aea5bd5ef16a92e5b711cdd9646eb3a1008a2e7d39ce74e67df6b73f468
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[155]
+aad = 436f756e742d313535
+ct = 5cad074af3887ff07a8d3ce2e8a20e67feba06ba4893e26f14123894d7819392f827f646bb28cd29bfbf7be7f7
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[156]
+aad = 436f756e742d313536
+ct = e52d575fdb08e3d2084927dc3da9c7084bcdccdc88d997de6e06109d203b2c030ba2cb79a50ae8e0e738fc0736
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[157]
+aad = 436f756e742d313537
+ct = 4c98fe2ce4b77757ee09bfef308f9973c2aa28939ab24ef5fe619124b1c94e3aaf67d7739b22af2f3e158a04c8
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[158]
+aad = 436f756e742d313538
+ct = f74e7f2532e417fbcd01f4683bd5ea14e94dd4a42f0834819d283c39f27fed8c3dc8dd3e74dcd5fb525d099044
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[159]
+aad = 436f756e742d313539
+ct = 48aa523a358b5777f7dbe60c24eaa1240bd2fc186d91b7d9fd340a62cdee8a79a84785873efb9ff65bfec68f6f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[160]
+aad = 436f756e742d313630
+ct = ce4db0c062b8195e46f62aa014b1cd99c00697e6c04cb0adeea45f076ae31200cc03f32e224c585208e580fc87
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[161]
+aad = 436f756e742d313631
+ct = a53b8dc05218c1f4dfcc2af880df86233ec8fdcf3697c4ffee694c0c042fd545e01a652fb30ce0c46c00f1c7cd
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[162]
+aad = 436f756e742d313632
+ct = 18459e8a46abe63533022ab99edc9417f41f0e43704e3146bf7b3638d9ee9715e89d2593f47296d6e287fc25b1
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[163]
+aad = 436f756e742d313633
+ct = d3d522979eeb9e6be40d83ad69cff87fc3b1c7b664629454f97087a61de9743586c129ba27849449edc3e218dd
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[164]
+aad = 436f756e742d313634
+ct = 8ecc61ed64cea2091b3e5b13ebc92f91f3daff14b029c0741b7b7541b5e4c4db44e6cb3ead3f379ab6f7ba2134
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[165]
+aad = 436f756e742d313635
+ct = 2344551199f0e4ffd040d05ebd33ed4e72b8798bb9e0a48c3cad3c3b6953dc51eeb28ed9bdf7dda5c96faf453b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[166]
+aad = 436f756e742d313636
+ct = 45247cc2629c2dceda0e9260ae8cd347d82ffe9986407b1d4279216ef9599dbdb6427d5a8b1ca999b6a86626fa
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[167]
+aad = 436f756e742d313637
+ct = 451db2902d2b4391c47be9a54d5d53b476b5d5d71ba02832fa5b28f35c5a0604d161f4b2baebb09013ea8d5d1b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[168]
+aad = 436f756e742d313638
+ct = 97fd72b9c01b4974522d4bd494563f05404725034db95a4b4bd6dd147d6258cfe473e5425c39273302f654f09c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[169]
+aad = 436f756e742d313639
+ct = 77ef019177e690acfe0eceeaa26094135271e14125c3c9d84d539bf86150cf2f4d5e1871fcea5ab3a881e98f10
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[170]
+aad = 436f756e742d313730
+ct = 89819d7bbe96c3cd71d90279ae98765d701b3b21c07dc287b6b5af0fab9e4569dbf57701e4e20a9a68840c04e7
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[171]
+aad = 436f756e742d313731
+ct = bf4206d7896f079093d3e6fd309ce43999554b8d961f51e2070bd23850cba7071065369af22a56122318a34d9a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[172]
+aad = 436f756e742d313732
+ct = f10322e7dc93246fc9528b238fda0e8bdc779b908ac5dddf1411b2aaff19dddef9a5ea8eb464ac38939c5147f5
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[173]
+aad = 436f756e742d313733
+ct = e2a426d1a686b4d994cc9a919c50a207f5c86c5d4f019592fd0c3255dea61a5230be629c77d69bcaebad454196
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[174]
+aad = 436f756e742d313734
+ct = 8b0ac7f5154a3adffe0463b0a7c86e7397bcd7ad1eb9db45721c6a472f55a30546de99cffd4042fdd7ac071b27
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[175]
+aad = 436f756e742d313735
+ct = 712953e4994fe54d6a5e02d1ab33df9b5f028726af60795aa8571ab53a1cf3c44024cd40d2bfccd79afaabd13d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[176]
+aad = 436f756e742d313736
+ct = 929f4f028c846ed34b643f5bf111e7c2b2cc38676c37918be2cf1cf1432528194f8210eebb330415ffec3ee601
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[177]
+aad = 436f756e742d313737
+ct = b5622dd7e3eec8cbb474ce5ec72505100f85c98725c2ab0ec69747b6a8ba6740417c1b90ba2d285f2e7e8aed23
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[178]
+aad = 436f756e742d313738
+ct = b94bfdec74e4da59e23a0abdf35e78230df609e6e939e1590483ccd7168cc0d730afa2aae1bf5c04c10b5d146f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[179]
+aad = 436f756e742d313739
+ct = 825fd8362d28d8c9ee2cfeefb8baa0ad579acd6380cadd617eb4241a45571fe75407f1c3c288476a1951f13799
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[180]
+aad = 436f756e742d313830
+ct = e91fd4c291642964a2e3206668e41e7a833b3eaf3c73d8ae18224479d5e603ad0d266dba04d07e187dcc7e8817
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[181]
+aad = 436f756e742d313831
+ct = e9cb31df1943fa60763a5883b2dd803f1a1e114b945ea746fe1169ee04206339a109b33d6dd4963a46c95b9d60
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[182]
+aad = 436f756e742d313832
+ct = e907d69102325aaa155644e2fbf83402752bd7c769abc9d587eaaddf75fa196de4c100c9dde8ab273328f8895d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[183]
+aad = 436f756e742d313833
+ct = 7ec7579899f8c4000fce0f7b6c5ebfaf4b65cf973181dbb4f8cae39256ab61843605f58dd2f40e5a375136011b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[184]
+aad = 436f756e742d313834
+ct = 6470ca4f7442d31ac907fcf167ad10b185ea0673a48f0fb52e08df541707ddfce14df56e1f1ec136eceda5dde8
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[185]
+aad = 436f756e742d313835
+ct = 712c2484fee14b3eaeaf6e68f22016121302a6c4071e3bb4dcb41315bc056c7de29504bd30461dc61e2a62290a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[186]
+aad = 436f756e742d313836
+ct = 1089d0ad01eb981b0e75d04ac8ff62a2a8b611b932bb524cde1a33f1103765022b056f0d082aa41d162e9643be
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[187]
+aad = 436f756e742d313837
+ct = 7055173920dab9eccfbbeefe136fc57ef767e1e8e6db8eae6783235755ae9b0cccdbca572fad83b28bcc7b4248
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[188]
+aad = 436f756e742d313838
+ct = 62a7f47491f3d31a422fc9e908823a8f2d7254f36131d363c32df985ed6dda80871e3829375f25a96d90b45235
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[189]
+aad = 436f756e742d313839
+ct = 192f865b9b0f87c8f3b35b2ce1900e3687554a48736e6188aba905ef472c7377db213d32d56b903f7be0acee06
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[190]
+aad = 436f756e742d313930
+ct = d0f7f686a5225d8183394c33b1f10c707e7f085660f858d3491198b3a9b4e42f6a9eb365c409993c59093228aa
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[191]
+aad = 436f756e742d313931
+ct = cf3f64e8b054cf660298d2e7ec7d644a2337429476a7108f14f491345c42e1164a6d96a83b0c56ebee45cce38c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[192]
+aad = 436f756e742d313932
+ct = 9893da31204738a3f8f4c107c533f64cf8c01b81060308576cb94bfef56c7c204421503eda93d05f5f9ff3f7c9
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[193]
+aad = 436f756e742d313933
+ct = e407a8a84fc18a3df9833de5ce4e227f338cbe0549bb70d1b30abd5c8ad89f0a0de24bc8dcdb8455c80f507cb3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[194]
+aad = 436f756e742d313934
+ct = c400c9a6494c2c62cfc420c7348f03b5598648842115975d204d7b039b3e6bec4f5a24b879d688b590ea0ad3fc
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[195]
+aad = 436f756e742d313935
+ct = 49ab830a7a7be18d1fce87538b02c4514ce2e33fe7dd0041bf206923270ce1eae49fa7afdcc23c2e7095ccd371
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[196]
+aad = 436f756e742d313936
+ct = d5beef3acedf662be1ac545ff22e0968ded5e7f835082563cbf32f2f97e2ec57ac0a24ef9b69b311c08b2d0705
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[197]
+aad = 436f756e742d313937
+ct = 3200011bd93203e202108feb721f33cff9adf984d7b765c152c42c71a08f6a4b914f59aaea2373dede1d84f49c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[198]
+aad = 436f756e742d313938
+ct = 0d546040e599350adfce92d598fc83b2f17b8210648ff39c91d7382f1ddf9316fd55762a863bd39ac183d71cfc
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[199]
+aad = 436f756e742d313939
+ct = 56d782dcc5ae009b8b10f486678fc31d04d3e2c2fd14557bc160540eb5b40eb2f4d76a2a54f6ca7debbc8f6091
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[200]
+aad = 436f756e742d323030
+ct = 57584651099749aa985fa971b34618aa8d30aa9c1fcbc8cd15d887ee5ab0fa3d515d8dbba66eb3b1bd53d5849e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[201]
+aad = 436f756e742d323031
+ct = d18e9ec60dfb849deb7f665a032f5819b9d047516a4be94a48e8bd2066662d183f7853b3baadfe8971e34a88dd
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[202]
+aad = 436f756e742d323032
+ct = b05faf558aeadfc164859a477e9cbcab1d27edf19bbcb35a813aa49282b42f8a20bf5fcf943ebaa6d94f93eb32
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[203]
+aad = 436f756e742d323033
+ct = c069204693e8b828a9ac4d6001f8b0c49a9e7f606a45a8829dcfbc7ef0c23618f7c5ac44a76b00d6b06bd32e5f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[204]
+aad = 436f756e742d323034
+ct = 957d7c12afc411e4c87d7cc1bfac25e4f3391aa9d71bfd0b8606ccd7565a78c39b02c7c9d763a2d3529600f7f1
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[205]
+aad = 436f756e742d323035
+ct = 648a024a31fd41c542eb6bc1ae2bc234ad3cb899fa65b1d22e947f061c5804f86df390f8ae79642630c26ab5e9
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[206]
+aad = 436f756e742d323036
+ct = a54a551ae735941e911b84b09c3a33b97c8324f745220f78a0514ad814502654b0377fb45e8628575a7fb14018
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[207]
+aad = 436f756e742d323037
+ct = 35dd21130084fcf97491b42348efcb8271dc611c94cc57d9f1d7700efdcb207d9b725aab10b33868cacb53b5b4
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[208]
+aad = 436f756e742d323038
+ct = 2d7946eaf65d501637c5a51139ffe27bd5c0189c986731e9519ae256f17cc2b363adc654e28622236e9517007b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[209]
+aad = 436f756e742d323039
+ct = 2182643ecb216095a07ec8e341bbc3bbd9700b98cf6108caf2c6e6a99c567ae9650e18e7137784ea60c0037bed
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[210]
+aad = 436f756e742d323130
+ct = 5cb48c09ae88281008141e22f274be6aeab55d061bd0592388330518bd4e9877f14edcebcdaed09b17839526eb
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[211]
+aad = 436f756e742d323131
+ct = ddb662da553a5f64f9e70dec7a00b5fe2492c5a8e7fac8b11a24225fec99b72b46a259f58d30ea1e565c3621d4
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[212]
+aad = 436f756e742d323132
+ct = a812ef927ca2d5a7e6f6c25dba203a28b3749e94ceda1d2ae2f1e4a9607304521eb2b87a74ea8d22cbddee107e
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[213]
+aad = 436f756e742d323133
+ct = 94f9430c6563ac09a8fa019177cb0bf6be3e222e3299211cb771a2e3c39dc490ed2962621d18988f6a8494dcf3
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[214]
+aad = 436f756e742d323134
+ct = 88277b8afc800e1bb7f26f46223b8ec3175d1397c6f132f1930429397b40bead4dfbd194f030b5f9eefeb88c39
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[215]
+aad = 436f756e742d323135
+ct = 409e3d1897304b141d13abe0f59a4b10d0af57618577b340ed6d5480e4e83457b7186a3ea05a18f80a9a6cd637
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[216]
+aad = 436f756e742d323136
+ct = 7ec49da8a4de583b3edebc5b67357cc3ffc51362866c02523ababe69f6a5ee3049d737e25610eb0c3a61899f0f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[217]
+aad = 436f756e742d323137
+ct = 4246008ed7b0791df31f88250292a3a1e26dd47b14035e9ee4279aaa5d51bf2dfb594d68761ef239da62d38d67
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[218]
+aad = 436f756e742d323138
+ct = c5d310202308ed77fb3bef60298eac77608ae541bc5ab2d9fb3e43c1b3e2f20cb266927ca85af01353dbaa0166
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[219]
+aad = 436f756e742d323139
+ct = 812334975ad365ad977fe1df9fb18bfba5af83ee39455f877a9f496c1e883f64571917ce52499479270c7db7cc
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[220]
+aad = 436f756e742d323230
+ct = 7455ec4dafadc6a32c4a1482e78e7c80d34ade86bcf44860230055fedae26b642f2577dd5ec3742e06fc72b285
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[221]
+aad = 436f756e742d323231
+ct = d99776edf6dfa1683b926c03a35a08f5fa6e5ed4307a6bffec785ebe2ad4663e824aea40958ef2fdfcca851a3d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[222]
+aad = 436f756e742d323232
+ct = e1773f8fd60b35fe8459a194b3ed05ba72f4d0f16f64169577e2ee4f0d1e9dd1fc5bc5d10da552ae5fbebb0605
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[223]
+aad = 436f756e742d323233
+ct = b0977a21fb86e2f53605146703243dd713979041ad41b7f4e2eb07a81823a741dfd6296f7a021d0863cdf407a6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[224]
+aad = 436f756e742d323234
+ct = dcc76d9c0b453f3bfa0e93e4b21665157670d6363a0444bcc2cbbe3a82017712420fa62e5976f1eb459627350d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[225]
+aad = 436f756e742d323235
+ct = 4630e92285a0940af56c00a34b93ef07e755000d4b1faafd93eb01a076798dc5304c9119ca4b458ba39742a4ea
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[226]
+aad = 436f756e742d323236
+ct = f980e55d2dd9dfbd6f0d7f26e681cb6a99b01536ed287570db15819ebadea6c383970e5935faa97f3f7567d419
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[227]
+aad = 436f756e742d323237
+ct = 8b1b4be8257e2d2383b2b5236ac58a4bbc0619129a6af82201034f27bf762f14c9e113d36b94066a52b81edb63
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[228]
+aad = 436f756e742d323238
+ct = 79368883a496b5f8962d2dd3c54116730aed4a6652fd2c222490470b66a91fbf2d8abf8d1336cf596a0c89b488
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[229]
+aad = 436f756e742d323239
+ct = 6e0315642bc29b8a0f6eae9f0f3772c4af2d9451b6756847cefce570299cc8a09bcb14bd3c8e4e348dc60a80cf
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[230]
+aad = 436f756e742d323330
+ct = d74717cc168f8cc3340346e442a7b789776ba2f5f3f50b18cb61608f1a638d57d5f6f819713bf617936f7193da
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[231]
+aad = 436f756e742d323331
+ct = 8885a9956a8864f070e8b83175dc2a76208c32c669fd64c84c7efbc9eae048e3a3bda1a6c5e9e014177985f345
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[232]
+aad = 436f756e742d323332
+ct = 8248c633eb511e4148c97a9d997288ffe3e9b130f7e1768900e07a3dbd0322bf5feaa3ef1069a69d2f63b8b5e4
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[233]
+aad = 436f756e742d323333
+ct = 661b8260a395a229aadb89a0b0afddd08f65597d5e2965763b4c8779bec4f5a91c6a73f395ee45aacdc03f244c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[234]
+aad = 436f756e742d323334
+ct = 9e270862f567f91b5fc378247693a6a598dca076802c15f311ad977c862cae39feaf9da66ea276e3f6826ecf3d
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[235]
+aad = 436f756e742d323335
+ct = 9e07269e710dea587007ea36f823e5a6c361a7d852e411d0f608468b61a1a4cda1e79cfa8ae3e0398a471970b6
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[236]
+aad = 436f756e742d323336
+ct = a2cd8eb604f9dab48b73b5e09a99be8b4fffb8eed1ae639866fa1626acba6469a4389f867c068601e1622a61a0
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[237]
+aad = 436f756e742d323337
+ct = fe968506c8c9a82cac93961e2470e048eee80c4a2898677f624d8a1051412475ea905a499cf6eabe8c2ec58348
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[238]
+aad = 436f756e742d323338
+ct = bb45acdb4652e760404402bf5d2a424e8fccc7c5dde8b26338ad64fe2b2cd5e53f32e9e3f69a896bfc3489408f
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[239]
+aad = 436f756e742d323339
+ct = 828fc85f305e3e63442ea0b178d182b53055c4ad909be23ed57603d9572f8c146e17648a3a4787c120daa8feed
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[240]
+aad = 436f756e742d323430
+ct = b0bbbc30e91367092697057b87e49a0278d6783e7100e58052aae3d6e43d86acf15aa52826bc29b0e1a3b22790
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[241]
+aad = 436f756e742d323431
+ct = 2dd238f23bf4c01ec65d5a5852358a6179783673414daa0007ac448744072057ca090203229d79ad6fa7676219
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[242]
+aad = 436f756e742d323432
+ct = 1f086bb895f86ebca24d03d530e085e64e99194e4c4b741d80a8ecfda0a93c791b84b9c5df8fb054573bb3cd55
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[243]
+aad = 436f756e742d323433
+ct = 530bca4e6045806f7cbc7f47ccbfbaab6fb78470f1d722f039f37f9ce03dd0f7c466f0288cdd70bd76e57298ee
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[244]
+aad = 436f756e742d323434
+ct = 32d031fe93733f5494d4bf4cdf2f331e477e993daa98fea19601255e768848fac11410026b796e10b106ae8e80
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[245]
+aad = 436f756e742d323435
+ct = 0dfb7b313aea0e91dcd2ba7595ee587ec910e6c669f2518355538dd4be47e137873db3c9b34b2ac95ac3f7278b
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[246]
+aad = 436f756e742d323436
+ct = e602015ac66b00e8b34b1091368b4e1f3eb1d94277d6dcf11829a8cf3a71a554e6e2df953c916f278aafcc072c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[247]
+aad = 436f756e742d323437
+ct = 9dc47953aae535a27441e77b6eee0db9a884f69c6c3ba1e6ef046d04cad1b4028c34ae259900853f104e6d5edb
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[248]
+aad = 436f756e742d323438
+ct = 1b174d49afa1ed54c34a0d23921d4426b72133b094e5876c9f5089a20bd01ee740b9bf9623d35079b2a7f764ea
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[249]
+aad = 436f756e742d323439
+ct = e9a9a9a54a5909f74cbaa86707b6a3db088f2a4458d3075be9d50795284abf0912ac094a17e8228011fe8584e5
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[250]
+aad = 436f756e742d323530
+ct = 5c21e68187f15c7d68c30c1d515567a6bb812f79646c97122de81e2f4603487f2398622ad573ec22d6c8d07b9c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[251]
+aad = 436f756e742d323531
+ct = 5ebbb4ce70e2e65fd6efc03cf6fda8892321740fec30ea21fd742dbc1b53f531f58697dced5c6b1623bf659feb
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[252]
+aad = 436f756e742d323532
+ct = 0d4a1a33581ef910547ec8bde264a46441bcde2e06050b780d887bebc13f7853ab8b264fe4633cee8c4caed106
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[253]
+aad = 436f756e742d323533
+ct = 4e89d3f7b4f86e71601eb768ac42df8afeb983c18397fd4f277e3d1caa631d66960f923798e4b0fcd78c1ccb3c
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[254]
+aad = 436f756e742d323534
+ct = b640e286eef2d6078f8d5a3e801a2466042121f5f001f8ac8f3461cc261c9f772904b9c15cead99bf305063f29
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[255]
+aad = 436f756e742d323535
+ct = 652e597ba20f3d9241cda61f33937298b1169e6adf72974bbe454297502eb4be132e1c5064702fc165c2ddbde8
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# encryptions[256]
+aad = 436f756e742d323536
+ct = 3be14e8b3bbd1028cf2b7d0a691dbbeff71321e7dec92d3c2cfb30a0994ab246af76168480285a60037b4ba13a
+pt = 4265617574792069732074727574682c20747275746820626561757479
+# exports[0]
+exporter_context = 
+L = 32
+exported_value = 070cffafd89b67b7f0eeb800235303a223e6ff9d1e774dce8eac585c8688c872
+# exports[1]
+exporter_context = 00
+L = 32
+exported_value = 2852e728568d40ddb0edde284d36a4359c56558bb2fb8837cd3d92e46a3a14a8
+# exports[2]
+exporter_context = 54657374436f6e74657874
+L = 32
+exported_value = 1df39dc5dd60edcbf5f9ae804e15ada66e885b28ed7929116f768369a3f950ee
diff --git a/crypto/hpke/translate_test_vectors.py b/crypto/hpke/translate_test_vectors.py
index a1fffcf..6879e42 100755
--- a/crypto/hpke/translate_test_vectors.py
+++ b/crypto/hpke/translate_test_vectors.py
@@ -29,6 +29,7 @@
 
 HPKE_MODE_BASE = 0
 HPKE_MODE_PSK = 1
+HPKE_MODE_AUTH = 2
 HPKE_DHKEM_X25519_SHA256 = 0x0020
 HPKE_HKDF_SHA256 = 0x0001
 HPKE_AEAD_EXPORT_ONLY = 0xffff
@@ -49,7 +50,7 @@
   lines = []
   for test in test_vecs:
     # Filter out test cases that we don't use.
-    if (test["mode"] != HPKE_MODE_BASE or
+    if (test["mode"] not in (HPKE_MODE_BASE, HPKE_MODE_AUTH) or
         test["kem_id"] != HPKE_DHKEM_X25519_SHA256 or
         test["aead_id"] == HPKE_AEAD_EXPORT_ONLY or
         test["kdf_id"] != HPKE_HKDF_SHA256):
@@ -57,9 +58,9 @@
 
     keys = ["mode", "kdf_id", "aead_id", "info", "skRm", "skEm", "pkRm", "pkEm"]
 
-    if test["mode"] == HPKE_MODE_PSK:
-      keys.append("psk")
-      keys.append("psk_id")
+    if test["mode"] == HPKE_MODE_AUTH:
+      keys.append("pkSm")
+      keys.append("skSm")
 
     for key in keys:
       lines.append("{} = {}".format(key, str(test[key])))
diff --git a/include/openssl/hpke.h b/include/openssl/hpke.h
index 3ce6946..eaf5947 100644
--- a/include/openssl/hpke.h
+++ b/include/openssl/hpke.h
@@ -249,6 +249,34 @@
     const EVP_HPKE_AEAD *aead, const uint8_t *enc, size_t enc_len,
     const uint8_t *info, size_t info_len);
 
+// EVP_HPKE_CTX_setup_auth_sender implements the SetupAuthS HPKE operation. It
+// behaves like |EVP_HPKE_CTX_setup_sender| but authenticates the resulting
+// context with |key|.
+OPENSSL_EXPORT int EVP_HPKE_CTX_setup_auth_sender(
+    EVP_HPKE_CTX *ctx, uint8_t *out_enc, size_t *out_enc_len, size_t max_enc,
+    const EVP_HPKE_KEY *key, const EVP_HPKE_KDF *kdf, const EVP_HPKE_AEAD *aead,
+    const uint8_t *peer_public_key, size_t peer_public_key_len,
+    const uint8_t *info, size_t info_len);
+
+// EVP_HPKE_CTX_setup_auth_sender_with_seed_for_testing behaves like
+// |EVP_HPKE_CTX_setup_auth_sender|, but takes a seed to behave
+// deterministically. The seed's format depends on |kem|. For X25519, it is the
+// sender's ephemeral private key.
+OPENSSL_EXPORT int EVP_HPKE_CTX_setup_auth_sender_with_seed_for_testing(
+    EVP_HPKE_CTX *ctx, uint8_t *out_enc, size_t *out_enc_len, size_t max_enc,
+    const EVP_HPKE_KEY *key, const EVP_HPKE_KDF *kdf, const EVP_HPKE_AEAD *aead,
+    const uint8_t *peer_public_key, size_t peer_public_key_len,
+    const uint8_t *info, size_t info_len, const uint8_t *seed, size_t seed_len);
+
+// EVP_HPKE_CTX_setup_auth_recipient implements the SetupAuthR HPKE operation.
+// It behaves like |EVP_HPKE_CTX_setup_recipient| but checks the resulting
+// context was authenticated with |peer_public_key|.
+OPENSSL_EXPORT int EVP_HPKE_CTX_setup_auth_recipient(
+    EVP_HPKE_CTX *ctx, const EVP_HPKE_KEY *key, const EVP_HPKE_KDF *kdf,
+    const EVP_HPKE_AEAD *aead, const uint8_t *enc, size_t enc_len,
+    const uint8_t *info, size_t info_len, const uint8_t *peer_public_key,
+    size_t peer_public_key_len);
+
 
 // Using an HPKE context.
 //