{
  "as_of": "2026-09-03T04:49:55Z",
  "attempt_log": {
    "A1_make_build": {
      "cmd": [
        "make",
        "build"
      ],
      "duration_s": 11.49,
      "exit_code": 0,
      "stderr_bytes": 0,
      "stderr_tail": "",
      "stdout_bytes": 19867,
      "stdout_sha256": "ba7a71d2cecfdd6cfe1142a997e4607cf896f8e27a4013553d98790a27e67c03",
      "stdout_tail": "kem1024/test/wycheproof/wycheproof_mlkem.c.o\n  LD      test/build/mlkem1024/bin/wycheproof_mlkem1024\n  WYCHEPROOF ML-KEM-1024:  test/build/mlkem1024/bin/wycheproof_mlkem1024\n  Everything builds fine!\n"
    },
    "A2_make_test": {
      "cmd": [
        "make",
        "test"
      ],
      "duration_s": 56.7,
      "exit_code": 0,
      "stderr_bytes": 931,
      "stderr_tail": "\nDownloading mlkem_512_test.json...\nDownloading mlkem_768_keygen_seed_test.json...\nDownloading mlkem_768_encaps_test.json...\nDownloading mlkem_768_semi_expanded_decaps_test.json...\nDownloading mlkem_768_test.json...\nDownloading mlkem_1024_keygen_seed_test.json...\nDownloading mlkem_1024_encaps_test.json...\nDownloading mlkem_1024_semi_expanded_decaps_test.json...\nDownloading mlkem_1024_test.json...\n",
      "stdout_bytes": 104770,
      "stdout_sha256": "fd2ac1416fe1b8dfbd0f8f018ff4d6c458f56e6325e4aa979b2efed7384dcfa7",
      "stdout_tail": "l_acc_montgomery_cached_k3_aarch64_asm... PASSED\nABI check for polyvec_basemul_acc_montgomery_cached_k4_aarch64_asm... PASSED\nABI check for rej_uniform_aarch64_asm... PASSED\n  Everything checks fine!\n"
    },
    "A3_run_acvp": {
      "cmd": [
        "make",
        "run_acvp"
      ],
      "duration_s": 1.74,
      "exit_code": 0,
      "stderr_bytes": 42,
      "stderr_tail": "Using ACVP test vectors version v1.1.0.43\n",
      "stdout_bytes": 25408,
      "stdout_sha256": "81d22029f5fc786e5edceb22458ca70f6dc2d9f8866193921e8cf4143fa15127",
      "stdout_tail": " ... done\nRunning encapDecap test case 195 (encapsulationKeyCheck) ... done\nComparing results with test/acvp/.acvp-data/v1.1.0.43/files/ML-KEM-encapDecap-FIPS203-tr1/expectedResults.json\nOK\nALL GOOD!\n"
    },
    "A3_run_wycheproof": {
      "cmd": [
        "make",
        "run_wycheproof"
      ],
      "duration_s": 8.06,
      "exit_code": 0,
      "stderr_bytes": 0,
      "stderr_tail": "",
      "stdout_bytes": 31997,
      "stdout_sha256": "bf223bd88da271e5a46d389eeb3ab36ec8a5be5a800674ad81d28a1c729d5054",
      "stdout_tail": "  tcId=185 ... ok\n  tcId=186 ... ok\n  tcId=187 ... ok\n  tcId=188 ... ok\n  tcId=189 ... ok\n  tcId=190 ... ok\n  tcId=191 ... ok\n  tcId=192 ... ok\n  tcId=193 ... ok\n  193 combined tests passed\nALL GOOD!\n"
    },
    "A4_compile_counterfactual": {
      "cmd": [
        "cc",
        "-O2",
        "-DMLK_CONFIG_PARAMETER_SET=768",
        "-DMLK_CONFIG_NAMESPACE_PREFIX=mlkem768",
        "-I",
        "/private/tmp/claude-502/-Users-nharris-Desktop-untitled-folder-4-wifi-pqc-failure-lab/1bb87945-44b2-4364-9c5a-30646b5b6f03/scratchpad/claimbom-mn/counterfactual/mlkem",
        "-o",
        "/private/tmp/claude-502/-Users-nharris-Desktop-untitled-folder-4-wifi-pqc-failure-lab/1bb87945-44b2-4364-9c5a-30646b5b6f03/scratchpad/claimbom-mn/harness_mlkem768_cf",
        "/private/tmp/claude-502/-Users-nharris-Desktop-untitled-folder-4-wifi-pqc-failure-lab/1bb87945-44b2-4364-9c5a-30646b5b6f03/scratchpad/claimbom-mn/harness.c",
        "/private/tmp/claude-502/-Users-nharris-Desktop-untitled-folder-4-wifi-pqc-failure-lab/1bb87945-44b2-4364-9c5a-30646b5b6f03/scratchpad/claimbom-mn/counterfactual/mlkem/mlkem_native.c",
        "/private/tmp/claude-502/-Users-nharris-Desktop-untitled-folder-4-wifi-pqc-failure-lab/1bb87945-44b2-4364-9c5a-30646b5b6f03/scratchpad/claimbom-mn/counterfactual/mlkem/mlkem_native_asm.S"
      ],
      "duration_s": 0.58,
      "exit_code": 0,
      "stderr_bytes": 0,
      "stderr_tail": "",
      "stdout_bytes": 0,
      "stdout_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "stdout_tail": ""
    },
    "A4_compile_shipped": {
      "cmd": [
        "cc",
        "-O2",
        "-DMLK_CONFIG_PARAMETER_SET=768",
        "-DMLK_CONFIG_NAMESPACE_PREFIX=mlkem768",
        "-I",
        "/private/tmp/claude-502/-Users-nharris-Desktop-untitled-folder-4-wifi-pqc-failure-lab/1bb87945-44b2-4364-9c5a-30646b5b6f03/scratchpad/claimbom-mn/target/mlkem",
        "-o",
        "/private/tmp/claude-502/-Users-nharris-Desktop-untitled-folder-4-wifi-pqc-failure-lab/1bb87945-44b2-4364-9c5a-30646b5b6f03/scratchpad/claimbom-mn/harness_mlkem768",
        "/private/tmp/claude-502/-Users-nharris-Desktop-untitled-folder-4-wifi-pqc-failure-lab/1bb87945-44b2-4364-9c5a-30646b5b6f03/scratchpad/claimbom-mn/harness.c",
        "/private/tmp/claude-502/-Users-nharris-Desktop-untitled-folder-4-wifi-pqc-failure-lab/1bb87945-44b2-4364-9c5a-30646b5b6f03/scratchpad/claimbom-mn/target/mlkem/mlkem_native.c",
        "/private/tmp/claude-502/-Users-nharris-Desktop-untitled-folder-4-wifi-pqc-failure-lab/1bb87945-44b2-4364-9c5a-30646b5b6f03/scratchpad/claimbom-mn/target/mlkem/mlkem_native_asm.S"
      ],
      "duration_s": 0.62,
      "exit_code": 0,
      "stderr_bytes": 0,
      "stderr_tail": "",
      "stdout_bytes": 0,
      "stdout_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "stdout_tail": ""
    },
    "A5_c90_pedantic": {
      "cmd": [
        "cc",
        "-std=c90",
        "-Wall",
        "-Wextra",
        "-Wpedantic",
        "-Werror",
        "-DMLK_CONFIG_PARAMETER_SET=768",
        "-DMLK_CONFIG_NAMESPACE_PREFIX=mlkem768",
        "-I",
        "/private/tmp/claude-502/-Users-nharris-Desktop-untitled-folder-4-wifi-pqc-failure-lab/1bb87945-44b2-4364-9c5a-30646b5b6f03/scratchpad/claimbom-mn/target/mlkem",
        "-c",
        "/private/tmp/claude-502/-Users-nharris-Desktop-untitled-folder-4-wifi-pqc-failure-lab/1bb87945-44b2-4364-9c5a-30646b5b6f03/scratchpad/claimbom-mn/target/mlkem/src/fips202/keccakf1600.c",
        "-o",
        "/private/tmp/claude-502/-Users-nharris-Desktop-untitled-folder-4-wifi-pqc-failure-lab/1bb87945-44b2-4364-9c5a-30646b5b6f03/scratchpad/claimbom-mn/c90.o"
      ],
      "duration_s": 0.03,
      "exit_code": 1,
      "stderr_bytes": 7625,
      "stderr_tail": "pqc-failure-lab/1bb87945-44b2-4364-9c5a-30646b5b6f03/scratchpad/claimbom-mn/target/mlkem/src/fips202/keccakf1600.c:203:15: error: 'long long' is an extension when C99 mode is not enabled [-Werror,-Wlong-long]\n  203 |     (uint64_t)0x000000000000800aULL, (uint64_t)0x800000008000000aULL,\n      |               ^\nfatal error: too many errors emitted, stopping now [-ferror-limit=]\n20 errors generated.\n",
      "stdout_bytes": 0,
      "stdout_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "stdout_tail": ""
    },
    "A6_fetch_reference": {
      "cmd": [
        "git",
        "fetch",
        "--quiet",
        "https://github.com/pq-crystals/kyber",
        "main"
      ],
      "duration_s": 2.07,
      "exit_code": 0,
      "stderr_bytes": 0,
      "stderr_tail": "",
      "stdout_bytes": 0,
      "stdout_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "stdout_tail": ""
    },
    "A6_merge_base": {
      "cmd": [
        "git",
        "merge-base",
        "HEAD",
        "FETCH_HEAD"
      ],
      "duration_s": 0.02,
      "exit_code": 1,
      "stderr_bytes": 0,
      "stderr_tail": "",
      "stdout_bytes": 0,
      "stdout_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
      "stdout_tail": ""
    },
    "clone": {
      "checkout": {
        "cmd": [
          "git",
          "checkout",
          "--quiet",
          "a1b94a1d903072d5ea1d8ecf434bd9d5518014c0"
        ],
        "duration_s": 0.1,
        "exit_code": 0,
        "stderr_bytes": 0,
        "stderr_tail": "",
        "stdout_bytes": 0,
        "stdout_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
        "stdout_tail": ""
      },
      "clone": {
        "cmd": [
          "git",
          "clone",
          "--quiet",
          "https://github.com/pq-code-package/mlkem-native",
          "/private/tmp/claude-502/-Users-nharris-Desktop-untitled-folder-4-wifi-pqc-failure-lab/1bb87945-44b2-4364-9c5a-30646b5b6f03/scratchpad/claimbom-mn/target"
        ],
        "duration_s": 21.1,
        "exit_code": 0,
        "stderr_bytes": 0,
        "stderr_tail": "",
        "stdout_bytes": 0,
        "stdout_sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
        "stdout_tail": ""
      },
      "head": "a1b94a1d903072d5ea1d8ecf434bd9d5518014c0"
    }
  },
  "connectors": {
    "ci": {
      "kind": "ci",
      "n_blind_probes": 2,
      "n_examined": 4,
      "note": "4 endpoints probed; GitHub Actions answered and reports 20179 runs across 32 workflows; 2 did not answer (travis_com, travis_org)",
      "provenance": [
        {
          "classified": "OK",
          "http_status": 200,
          "label": "gh_actions_runs",
          "sha256": "97b1b51978d55533831da186f6130977f2a696e68ac39f4df5b0fc7284e21d9a",
          "url": "https://api.github.com/repos/pq-code-package/mlkem-native/actions/runs?per_page=1"
        },
        {
          "classified": "OK",
          "http_status": 200,
          "label": "gh_workflows",
          "sha256": "be7c4c9a8ace30fa37a88c899d7ee0bb6893a188a538a502548caa545dfa2e87",
          "url": "https://api.github.com/repos/pq-code-package/mlkem-native/actions/workflows"
        },
        {
          "classified": "UNREACHABLE",
          "http_status": 404,
          "label": "travis_com",
          "sha256": "1d5b0816c389214cd9f17f36c9d5f40234a19b5d9db7689fc0d020f010149a21",
          "url": "https://api.travis-ci.com/repo/pq-code-package%2Fmlkem-native/builds?limit=3"
        },
        {
          "classified": "UNREACHABLE",
          "http_status": 404,
          "label": "travis_org",
          "sha256": "ca3d163bab055381827226140568f3bef7eaac187cebd76878e0b63e9e442356",
          "url": "https://api.travis-ci.org/repos/pq-code-package/mlkem-native"
        }
      ],
      "records": [
        {
          "gh_actions_run_count": 20179,
          "gh_workflow_count": 32,
          "travis_com_excerpt": "{\n  \"@type\": \"error\",\n  \"error_type\": \"not_found\",\n  \"error_message\": \"repository not found (or insufficient access)\",\n  \"resource_type\": \"repository\"\n}",
          "travis_com_status": 404,
          "travis_org_status": 404
        }
      ],
      "status": "OK"
    },
    "cloud_logs": {
      "kind": "cloud_logs",
      "n_blind_probes": 0,
      "n_examined": 1,
      "note": "BADGE IMAGES READ AS TEXT, and the coverage RECORDS underneath them read for date and branch. These are the hosted quality records this target has; it has no build logs at all, because it has never run a hosted CI job. No log body is fetched here and none exists to fetch",
      "provenance": [
        {
          "classified": "OK",
          "http_status": 200,
          "label": "travis_badge_master",
          "sha256": "ad5834178f7599af9fdda11629d49cae07f2997beec49821b2920eff5bfd50e7",
          "url": "https://github.com/pq-code-package/mlkem-native/actions/workflows/all.yml/badge.svg"
        }
      ],
      "records": [
        {
          "build_badge_text": "passing",
          "coverage_badge_text_main": "",
          "coverage_badge_text_master": "",
          "coveralls_main_calculated_at": null,
          "coveralls_main_requested": "main",
          "coveralls_main_returned": null,
          "coveralls_master": {}
        }
      ],
      "status": "OK"
    },
    "datasets": {
      "kind": "datasets",
      "n_examined": 3,
      "note": "datasets found",
      "provenance": [
        {
          "classified": "OK",
          "http_status": 200,
          "label": "hf_datasets:mlkem-native",
          "sha256": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
          "url": "https://huggingface.co/api/datasets?search=mlkem-native&limit=20"
        },
        {
          "classified": "OK",
          "http_status": 200,
          "label": "hf_datasets:ml-kem",
          "sha256": "8547ec7809f5228559869b1e043879e53f80cf60c1fe3b3f3be91a158de8d433",
          "url": "https://huggingface.co/api/datasets?search=ml-kem&limit=20"
        },
        {
          "classified": "OK",
          "http_status": 200,
          "label": "hf_datasets:pq-code-package",
          "sha256": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
          "url": "https://huggingface.co/api/datasets?search=pq-code-package&limit=20"
        }
      ],
      "records": [
        {
          "hits": 1,
          "ids": [
            "ai-eldorado/ML-KEM-SideChannel-Traces"
          ],
          "queries_issued": 3
        }
      ],
      "status": "OK"
    },
    "github": {
      "kind": "github",
      "n_blind_probes": 0,
      "n_examined": 6,
      "note": "repository metadata, releases, tags, commit cadence, the remote's actual refs, and the README at the pinned commit",
      "provenance": [
        {
          "classified": "OK",
          "http_status": 200,
          "label": "repo",
          "sha256": "2679317a31a119b0fa4373705b2e10bb123e3b6b3e419c0f61ee4815ceb89a57",
          "url": "https://api.github.com/repos/pq-code-package/mlkem-native"
        },
        {
          "classified": "OK",
          "http_status": 200,
          "label": "releases",
          "sha256": "5f023abfff8cae7f3c8a0768b6f3895b9c439c3746911b2ab5da72180696947e",
          "url": "https://api.github.com/repos/pq-code-package/mlkem-native/releases?per_page=100"
        },
        {
          "classified": "OK",
          "http_status": 200,
          "label": "tags",
          "sha256": "b9a93144eb877b79ce93133267e903639f7b97bfc866ebeec0510578e8db7b6d",
          "url": "https://api.github.com/repos/pq-code-package/mlkem-native/tags?per_page=100"
        },
        {
          "classified": "OK",
          "http_status": 200,
          "label": "commits_365d",
          "sha256": "90ccd832fbfdda781bca21ed31aa649eba5c15b975124d18ee29d391628ea962",
          "url": "https://api.github.com/repos/pq-code-package/mlkem-native/commits?since=2025-08-03T00:00:00Z&per_page=100"
        },
        {
          "classified": "OK",
          "http_status": null,
          "label": "ls-remote-heads",
          "sha256": "4383e2d1e981ad22faa4e0b5d6d63de877c726bdf89768ad86603e1a6f6c944e",
          "url": "git ls-remote --heads https://github.com/pq-code-package/mlkem-native"
        },
        {
          "classified": "OK",
          "http_status": 200,
          "label": "readme_at_pinned_commit",
          "sha256": "eedf3137cf4b1f203854aac5c3d8f051bca814581379076b498961df892d79ce",
          "url": "https://raw.githubusercontent.com/pq-code-package/mlkem-native/a1b94a1d903072d5ea1d8ecf434bd9d5518014c0/README.md"
        }
      ],
      "records": [
        {
          "commits_last_365d": 100,
          "latest_commit_date": "2026-09-02T09:12:39Z",
          "meta": {
            "created_at": "2024-03-18T13:21:26Z",
            "default_branch": "main",
            "forks_count": 67,
            "full_name": "pq-code-package/mlkem-native",
            "open_issues_count": 112,
            "pushed_at": "2026-09-02T17:18:16Z",
            "size": 31077,
            "stargazers_count": 226
          },
          "n_releases": 7,
          "readme_lines": [
            "[//]: # (SPDX-License-Identifier: CC-BY-4.0)",
            "",
            "# mlkem-native",
            "",
            "![CI](https://github.com/pq-code-package/mlkem-native/actions/workflows/all.yml/badge.svg)",
            "![Benchmarks](https://github.com/pq-code-package/mlkem-native/actions/workflows/bench.yml/badge.svg)",
            "![C90](https://img.shields.io/badge/language-C90-blue.svg)",
            "",
            "[![License: Apache](https://img.shields.io/badge/license-Apache--2.0-green.svg)](https://www.apache.org/licenses/LICENSE-2.0)",
            "[![License: ISC](https://img.shields.io/badge/License-ISC-blue.svg)](https://opensource.org/licenses/ISC)",
            "[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)",
            "",
            "mlkem-native is a secure, fast, and portable C90[^C90] implementation of ML-KEM[^FIPS203].",
            "It is a fork of the ML-KEM reference implementation[^REF].",
            "",
            "All C code in [mlkem/src/*](mlkem) and [mlkem/src/fips202/*](mlkem/src/fips202) is proved memory-safe (no memory overflow) and type-safe (no integer overflow)",
            "using CBMC[^CBMC]. All AArch64 and x86_64 assembly is proved to be functionally correct,",
            "memory-safe, and of secret-independent timing (constant-time), using HOL-Light[^HOL-Light].",
            "",
            "mlkem-native includes native backends for Arm (64-bit, Neon), Intel/AMD (64-bit, AVX2), RISC-V (64-bit, RVV), and POWER (ppc64le, VSX). See [benchmarks](https://pq-code-package.github.io/mlkem-native/dev/bench/) for performance data.",
            "",
            "mlkem-native is supported by the [Post-Quantum Cryptography Alliance](https://pqca.org/) as part of the [Linux Foundation](https://linuxfoundation.org/).",
            "",
            "## Quickstart for Ubuntu",
            "",
            "```bash",
            "# Install base packages",
            "sudo apt-get update",
            "sudo apt-get install make gcc python3 git",
            "",
            "# Clone mlkem-native",
            "git clone https://github.com/pq-code-package/mlkem-native.git",
            "cd mlkem-native",
            "",
            "# Build and run tests",
            "make build",
            "make test",
            "",
            "# The same using `tests`, a convenience wrapper around `make`",
            "./scripts/tests all",
            "# Show all options",
            "./scripts/tests --help",
            "```",
            "",
            "See [BUILDING.md](BUILDING.md) for more information.",
            "",
            "## Applications",
            "",
            "mlkem-native is used in",
            " - [libOQS](https://github.com/open-quantum-safe/liboqs/) of the Open Quantum Safe project since [0.13.0](https://github.com/open-quantum-safe/liboqs/releases/tag/0.13.0) (as the default ML-KEM implementation)",
            " - AWS' Cryptography library [AWS-LC](https://github.com/aws/aws-lc/) since [v1.50.0](https://github.com/aws/aws-lc/releases/tag/v1.50.0)",
            " - The [rustls](https://github.com/rustls/rustls) TLS library written in Rust since [0.23.28](https://github.com/rustls/rustls/releases/tag/v%2F0.23.28) (through AWS-LC as the default cryptography provider)",
            " - [Pavona](https://github.com/pavona/pavona) - a library of modular, tapeout-proven, and secure-by-default open silicon blocks",
            "",
            "## Formal Verification",
            "",
            "All C code in [mlkem/src/*](mlkem) and [mlkem/src/fips202/*](mlkem/src/fips202) is proved memory-safe (no memory overflow) and type-safe (no integer overflow).",
            "This uses the [C Bounded Model Checker (CBMC)](https://github.com/diffblue/cbmc) and builds on function contracts and loop invariant annotations",
            "in the source code. See [proofs/cbmc](proofs/cbmc) for details.",
            "",
            "All AArch64 and x86_64 assembly is proved functionally correct, memory-safe, and to have secret-independent timing",
            "(constant-time), at the object-code level. This uses the [HOL-Light](https://github.com/jrh13/hol-light) interactive theorem prover and the",
            "[s2n-bignum](https://github.com/awslabs/s2n-bignum/) verification infrastructure (which includes models of the",
            "relevant parts of the Arm and x86 architectures). See [proofs/hol_light](proofs/hol_light) for details.",
            "",
            "**NOTE:** Formal Verification is never absolute. See [SOUNDNESS.md](SOUNDNESS.md) for a detailed analysis of the scope, assumptions and risks of the formal verification",
            "efforts around mlkem-native.",
            "",
            "## Security",
            "",
            "All AArch64 and x86_64 assembly in mlkem-native is formally proved in [HOL Light](https://github.com/jrh13/hol-light) to be free of secret-dependent control flow,",
            "memory access patterns, and variable-latency instructions, thwarting most timing side channels",
            "(see [proofs/hol_light](proofs/hol_light) for details). C code is hardened against",
            "compiler-introduced timing side channels (such as KyberSlash[^KyberSlash] or clangover[^clangover])",
            "through suitable barriers and constant-time patterns.",
            "",
            "Absence of secret-dependent branches, memory-access patterns and variable-latency instructions is also tested using `valgrind`",
            "with various combinations of compilers and compilation options.",
            "",
            "**Other attacks.** mlkem-native targets resistance against timing side-channels only. Other attack classes, such as power and electromagnetic side-channels, microarchitectural side-channels (e.g. speculative execution), or fault-injection attacks, are currently out of scope.",
            "",
            "## Design",
            "",
            "mlkem-native is split into a _frontend_ and two _backends_ for arithmetic and FIPS202 / SHA3. The frontend is",
            "fixed, written in C, and covers all routines that are not critical to performance. The backends are flexible, take care of",
            "performance-sensitive routines, and can be implemented in C or native code (assembly/intrinsics); see",
            "[mlkem/src/native/api.h](mlkem/src/native/api.h) for the arithmetic backend and",
            "[mlkem/src/fips202/native/api.h](mlkem/src/fips202/native/api.h) for the FIPS-202 backend.",
            "",
            "mlkem-native currently offers the following backends:",
            "",
            "* Default portable C backend",
            "* 64-bit Arm backend (using Neon)",
            "* 64-bit Intel/AMD backend (using AVX2)",
            "* 64-bit RISC-V backend (using RVV)",
            "* 64-bit POWER backend (ppc64le, using VSX; supports POWER8 and above)",
            "* 32-bit Armv8.1-M backend (using Helium/MVE) -- see [#1501](https://github.com/pq-code-package/mlkem-native/issues/1501). This is still experimental and disabled by default.",
            "",
            "If you'd like contribute new backends, please reach out or just open a PR.",
            "",
            "Our AArch64 assembly is developed using the [SLOTHY](https://github.com/slothy-optimizer/slothy) superoptimizer, following the approach described in the SLOTHY paper[^SLOTHY_Paper]:",
            "We write 'clean' assembly by hand and automate micro-optimizations (e.g. see the [clean](dev/aarch64_clean/src/mlkem_ntt_aarch64_asm.S) vs [optimized](dev/aarch64_opt/src/mlkem_ntt_aarch64_asm.S) AArch64 NTT).",
            "See [dev/README.md](dev/README.md) for more details.",
            "",
            "## Test Vectors",
            "",
            "mlkem-native is tested against all official ACVP ML-KEM test vectors[^ACVP] and the",
            "Wycheproof[^wycheproof] ML-KEM test vectors.",
            "",
            "### ACVP",
            "",
            "You can run ACVP tests using the [`tests`](./scripts/tests) script or the [ACVP client](./test/acvp/acvp_client.py) directly:",
            "",
            "```bash",
            "# Using the tests script",
            "./scripts/tests acvp",
            "# Using a specific ACVP release",
            "./scripts/tests acvp --version v1.1.0.41",
            "",
            "# Using the ACVP client directly",
            "python3 ./test/acvp/acvp_client.py",
            "python3 ./test/acvp/acvp_client.py --version v1.1.0.41",
            "",
            "# Using specific ACVP test vector files (downloaded from the ACVP-Server)",
            "# python3 ./test/acvp/acvp_client.py -p {PROMPT}.json -e {EXPECTED_RESULT}.json",
            "# For example, assuming you have run the above",
            "python3 ./test/acvp/acvp_client.py \\",
            "  -p ./test/acvp/.acvp-data/v1.1.0.41/files/ML-KEM-keyGen-FIPS203/prompt.json \\",
            "  -e ./test/acvp/.acvp-data/v1.1.0.41/files/ML-KEM-keyGen-FIPS203/expectedResults.json",
            "```",
            "",
            "### Wycheproof",
            "",
            "You can run Wycheproof[^wycheproof] tests using the [`tests`](./scripts/tests) script or the [Wycheproof client](./test/wycheproof/wycheproof_client.py) directly:",
            "",
            "```bash",
            "# Using the tests script",
            "./scripts/tests wycheproof",
            "",
            "# Using the Wycheproof client directly",
            "python3 ./test/wycheproof/wycheproof_client.py",
            "```",
            "",
            "## Benchmarking",
            "",
            "You can measure performance, memory usage, and binary size using the [`tests`](./scripts/tests) script:",
            "",
            "```bash",
            "# Speed benchmarks (-c selects cycle counter: NO, PMU, PERF, or MAC)",
            "# Note: PERF/MAC may require the -r flag to run benchmarking binaries using sudo",
            "./scripts/tests bench -c PMU",
            "./scripts/tests bench -c PERF -r",
            "",
            "# Stack usage analysis",
            "./scripts/tests stack",
            "",
            "# Binary size measurement",
            "./scripts/tests size",
            "```",
            "",
            "For CI benchmark results and historical performance data, see the [benchmarking page](https://pq-code-package.github.io/mlkem-native/dev/bench/).",
            "",
            "## Usage",
            "",
            "If you want to use mlkem-native, import [mlkem](mlkem) into your project's source tree and build using your favourite build system. See [mlkem](mlkem) for more information, and",
            "[examples/basic](examples/basic) for a simple example. The build system provided in this repository is for development purposes only.",
            "",
            "See [API-CONVENTIONS.md](API-CONVENTIONS.md) for conventions that apply to all public functions, such as return values, pointer validity, and the state of output buffers on error.",
            "",
            "### Can I bring my own FIPS-202?",
            "",
            "mlkem-native relies on and comes with an implementation of FIPS-202[^FIPS202]. If your library has its own FIPS-202 implementation, you",
            "can use it instead of the one shipped with mlkem-native. See [FIPS202.md](FIPS202.md), and [examples/bring_your_own_fips202](examples/bring_your_own_fips202)",
            "for an example using tiny_sha3[^tiny_sha3].",
            "",
            "### Do I need to use the assembly backends?",
            "",
            "No. If you want a C-only build, just omit the directories [mlkem/src/native](mlkem/src/native) and/or [mlkem/src/fips202/native](mlkem/src/fips202/native) from your import",
            "and unset `MLK_CONFIG_USE_NATIVE_BACKEND_ARITH` and/or `MLK_CONFIG_USE_NATIVE_BACKEND_FIPS202` in your [mlkem_native_config.h](mlkem/mlkem_native_config.h).",
            "",
            "### Do I need to setup CBMC to use mlkem-native?",
            "",
            "No. While we recommend that you consider using it, mlkem-native will build + run fine without CBMC -- just make sure to",
            "include [cbmc.h](mlkem/src/cbmc.h) and have `CBMC` undefined. In particular, you do _not_ need to remove all function",
            "contracts and loop invariants from the code; they will be ignored unless `CBMC` is set.",
            "",
            "### Does mlkem-native support all security levels of ML-KEM?",
            "",
            "Yes. The security level is a compile-time parameter configured by setting `MLK_CONFIG_PARAMETER_SET=512/768/1024` in [mlkem_native_config.h](mlkem/mlkem_native_config.h).",
            "If your library/application requires multiple security levels, you can build + link three instances of mlkem-native",
            "while sharing common code; this is called a 'multi-level build' and is demonstrated in [examples/multilevel_build](examples/multilevel_build). See also [mlkem](mlkem).",
            "",
            "### Can I bring my own backend?",
            "",
            "Yes, you can add further backends for ML-KEM native arithmetic and/or for FIPS-202. Follow the existing backends",
            "as templates or see [examples/custom_backend](examples/custom_backend) for a minimal example how to register a custom backend.",
            "",
            "## Have a Question?",
            "",
            "If you think you have found a security bug in mlkem-native, please report the vulnerability through",
            "Github's [private vulnerability reporting](https://github.com/pq-code-package/mlkem-native/security). Please do **not**",
            "create a public GitHub issue.",
            "",
            "If you have any other question / non-security related issue / feature request, please open a GitHub issue.",
            "",
            "## Contributing",
            "",
            "If you want to help us build mlkem-native, please reach out. You can contact the mlkem-native team",
            "through the [PQCA Discord](https://discord.com/invite/xyVnwzfg5R). See also [CONTRIBUTING.md](CONTRIBUTING.md).",
            "",
            "[^C90]: Strictly speaking, we rely on C90 + `stdint.h` + 64-bit `unsigned long long`.",
            "",
            "<!--- bibliography --->",
            "[^ACVP]: National Institute of Standards and Technology: Automated Cryptographic Validation Protocol (ACVP) Server, [https://github.com/usnistgov/ACVP-Server](https://github.com/usnistgov/ACVP-Server)",
            "[^CBMC]: Diffblue, Amazon Web Services: C Bounded Model Checker, [https://github.com/diffblue/cbmc](https://github.com/diffblue/cbmc)",
            "[^FIPS202]: National Institute of Standards and Technology: FIPS202 SHA-3 Standard: Permutation-Based Hash and Extendable-Output Functions, [https://csrc.nist.gov/pubs/fips/202/final](https://csrc.nist.gov/pubs/fips/202/final)",
            "[^FIPS203]: National Institute of Standards and Technology: FIPS 203 Module-Lattice-Based Key-Encapsulation Mechanism Standard, [https://csrc.nist.gov/pubs/fips/203/final](https://csrc.nist.gov/pubs/fips/203/final)",
            "[^HOL-Light]: John Harrison: HOL-Light Theorem Prover, [https://hol-light.github.io/](https://hol-light.github.io/)",
            "[^KyberSlash]: Bernstein, Bhargavan, Bhasin, Chattopadhyay, Chia, Kannwischer, Kiefer, Paiva, Ravi, Tamvada: KyberSlash: Exploiting secret-dependent division timings in Kyber implementations, [https://kyberslash.cr.yp.to/papers.html](https://kyberslash.cr.yp.to/papers.html)",
            "[^REF]: Bos, Ducas, Kiltz, Lepoint, Lyubashevsky, Schanck, Schwabe, Seiler, Stehl\u00e9: CRYSTALS-Kyber C reference implementation, [https://github.com/pq-crystals/kyber/tree/main/ref](https://github.com/pq-crystals/kyber/tree/main/ref)",
            "[^SLOTHY_Paper]: Abdulrahman, Becker, Kannwischer, Klein: Fast and Clean: Auditable high-performance assembly via constraint solving, [https://eprint.iacr.org/2022/1303](https://eprint.iacr.org/2022/1303)",
            "[^clangover]: Antoon Purnal: clangover, [https://github.com/antoonpurnal/clangover](https://github.com/antoonpurnal/clangover)",
            "[^tiny_sha3]: Markku-Juhani O. Saarinen: tiny_sha3, [https://github.com/mjosaarinen/tiny_sha3](https://github.com/mjosaarinen/tiny_sha3)",
            "[^wycheproof]: Community Cryptography Specification Project: Project Wycheproof, [https://github.com/C2SP/wycheproof](https://github.com/C2SP/wycheproof)"
          ],
          "remote_branches": [
            "abi-checker-ppc64le",
            "abicheck-new",
            "abicheck-zephyr",
            "armv8.1-m-native",
            "asm_keccakx4",
            "asm_macros",
            "autogen_lsfiles",
            "avx2-keccakx4",
            "avx2-keccakx4-trivial-loop-bench",
            "avx2_keccak4_opt_bench_test",
            "bench-gcc15",
            "c_ntt",
            "callinfo",
            "cbmc-action-test",
            "cbmc-experimental",
            "cbmc_coverage",
            "cbmc_oddity",
            "changelog",
            "ci-mingw-legacy-versions",
            "config-variation-validation",
            "config_cleanup",
            "consolidate-use-native",
            "copilot/fix-opentitan-ml-kem-test",
            "cvc5_benchmarks",
            "cxx",
            "docker-container-tests",
            "eliminate-avx2-intrinsics",
            "enc_proof_time",
            "fastntt3",
            "fix-inline",
            "fix-macos-benchmarks",
            "fix-mismatched-comparison",
            "gh-pages",
            "hol-ct-proofs-5",
            "hol-light-fix-intt-bound",
            "hol-light-from-nixpkgs",
            "hol_light_bytecode_update",
            "hol_light_specs",
            "incremental-enc-api",
            "incremental-enc-api-coins-only",
            "intrinsics_keccakx4",
            "invntt_layer_proof_speed",
            "issue-1759-armv81m-xor-bytes",
            "keccak_align_stack_test",
            "keccak_xkcp_improvement",
            "legacy-compilers",
            "lint-commits",
            "macos-autogen-runner",
            "macro_syntax",
            "main",
            "mjk/issue-1725",
            "msvc-arm-backend",
            "msvc_flags",
            "mve-keccak-x1",
            "mve-keccak-x1-bitinterleave",
            "namespace-STACK_SIZE",
            "new_main",
            "newapi",
            "nix-slothy-from-nixpkgs",
            "nix-z3-286b107",
            "nix-z3-4.16.0",
            "nixpkgs-25.11",
            "nmouha-fix-mismatched-comparison",
            "no_common",
            "no_compress_x86",
            "ntt-inline",
            "ot-ubuntu24",
            "plantard-reduce",
            "platform-nucleo-n657x0-q-openocd",
            "platform-zephyr-pico2",
            "ppc64le-tomont-frametrim",
            "ppc64le_backend",
            "pr-1527",
            "prove-decompress-d10",
            "prove-decompress-d4",
            "prove-decompress-d5",
            "ptp/mlkem-clear-keccak-stack-scratch",
            "ptp/mlkem-clear-kem-outputs-on-failure",
            "public-attribute",
            "readme2",
            "refactor-polymat-permute",
            "refine_bounds",
            "release/v1.3",
            "remove-slow-decompress",
            "report_cbmc_slowdown",
            "rust-bindings-v2",
            "serial-fips-no-x4",
            "slothy-keccak-x4-mve",
            "slothy-update",
            "spdx/issue-templates-yml",
            "sys",
            "test_cross",
            "track_env_vars",
            "v13",
            "value_Barrier",
            "win-sup-alloc",
            "win-sup-kat2",
            "x86-keccak-namespace",
            "x86_scalar_keccak",
            "zephyr-cflag-fix"
          ],
          "tags": [
            "v2.0.0",
            "v1.3.0",
            "v1.2.0",
            "v1.1.0",
            "v1.0.0",
            "v1.0.0-beta",
            "v1.0.0-alpha.2",
            "v1.0.0-alpha"
          ]
        }
      ],
      "status": "OK"
    },
    "notebooks": {
      "kind": "notebooks",
      "n_examined": 1259,
      "note": "1259 files walked at the pinned commit; 0 notebooks",
      "provenance": [
        {
          "classified": "OK",
          "http_status": null,
          "label": "ls-tree",
          "sha256": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
          "url": "git ls-tree -r --name-only a1b94a1d903072d5ea1d8ecf434bd9d5518014c0"
        }
      ],
      "records": [
        {
          "files_scanned": 1259,
          "notebooks": [],
          "notebooks_found": 0,
          "parser_selftest": {
            "agreed": 1,
            "cells_checked": 2,
            "disagreed": 1,
            "ok": true
          }
        }
      ],
      "status": "NOT_APPLICABLE"
    },
    "patents": {
      "kind": "patents",
      "n_examined": 3,
      "note": "three endpoints tried; each attempt published with its status, its payload classification and whether the endpoint is a documented API",
      "provenance": [
        {
          "classified": "WRONG_PAYLOAD",
          "http_status": 200,
          "label": "patentsview-legacy",
          "sha256": "f4bbd8215355832775c65baf481004ee8e0e578e9f70efc780fe728ded0f4e77",
          "url": "https://api.patentsview.org/patents/query?q=%7B%22_text_any%22%3A%20%7B%22patent_title%22%3A%20%22lattice%20cryptography%22%7D%7D"
        },
        {
          "classified": "UNAUTHORIZED",
          "http_status": 401,
          "label": "uspto-open-data",
          "sha256": "3e7db788e384631f8a9f299d1797e6f8af6d16d643a1c91f9e83ae15212de45c",
          "url": "https://api.uspto.gov/api/v1/patent/applications/search?q=module-lattice%20key%20encapsulation"
        },
        {
          "classified": "OK",
          "http_status": 200,
          "label": "google-patents-xhr",
          "sha256": "73b4984d1a850937a3ffe53dbb50611183eb35401821da92f6a8e641ac36b1cb",
          "url": "https://patents.google.com/xhr/query?url=q%3Dmodule-lattice%20key%20encapsulation"
        }
      ],
      "records": [
        {
          "endpoint_attempts": [
            {
              "content_type": "text/html",
              "documented": true,
              "http_status": 200,
              "label": "patentsview-legacy",
              "status": "WRONG_PAYLOAD",
              "url": "https://api.patentsview.org/patents/query?q=%7B%22_text_any%22%3A%20%7B%22patent_title%22%3A%20%22lattice%20cryptography%22%7D%7D",
              "why": "HTTP 200 with an HTML body where the API documents JSON (content-type 'text/html'). 200 IS NOT SUCCESS"
            },
            {
              "content_type": "application/json",
              "documented": true,
              "http_status": 401,
              "label": "uspto-open-data",
              "status": "UNAUTHORIZED",
              "url": "https://api.uspto.gov/api/v1/patent/applications/search?q=module-lattice%20key%20encapsulation",
              "why": "HTTP 401"
            },
            {
              "content_type": "application/json",
              "documented": false,
              "http_status": 200,
              "label": "google-patents-xhr",
              "n_results": 19184,
              "status": "OK",
              "url": "https://patents.google.com/xhr/query?url=q%3Dmodule-lattice%20key%20encapsulation",
              "why": "HTTP 200"
            }
          ]
        }
      ],
      "status": "OK"
    },
    "registries": {
      "kind": "registries",
      "n_examined": 12,
      "note": "12 lookups across 2 registries and 6 names",
      "provenance": [
        {
          "classified": "UNREACHABLE",
          "http_status": 404,
          "label": "pypi:mlkem-native",
          "sha256": "b82014934f66beeb9e05a37f65357c4b50db0349d25d68d818ed0319dd4feb40",
          "url": "https://pypi.org/pypi/mlkem-native/json"
        },
        {
          "classified": "UNREACHABLE",
          "http_status": 404,
          "label": "npm:mlkem-native",
          "sha256": "c8d3eae160a892e32837db3dcae515e843e5383fef52b8141940c8bcf8b6d59f",
          "url": "https://registry.npmjs.org/mlkem-native"
        },
        {
          "classified": "OK",
          "http_status": 200,
          "label": "pypi:mlkem",
          "sha256": "a2bf8eab1054fb5ca67c7bad7383d20a8c302b06bd5ae0ecf449c1e4665eec0b",
          "url": "https://pypi.org/pypi/mlkem/json"
        },
        {
          "classified": "OK",
          "http_status": 200,
          "label": "npm:mlkem",
          "sha256": "621cbb032177cf118cc7f962eb17c152b329a881aeac1553d350c0cec442b507",
          "url": "https://registry.npmjs.org/mlkem"
        },
        {
          "classified": "UNREACHABLE",
          "http_status": 404,
          "label": "pypi:pymlkem",
          "sha256": "b82014934f66beeb9e05a37f65357c4b50db0349d25d68d818ed0319dd4feb40",
          "url": "https://pypi.org/pypi/pymlkem/json"
        },
        {
          "classified": "UNREACHABLE",
          "http_status": 404,
          "label": "npm:pymlkem",
          "sha256": "c8d3eae160a892e32837db3dcae515e843e5383fef52b8141940c8bcf8b6d59f",
          "url": "https://registry.npmjs.org/pymlkem"
        },
        {
          "classified": "UNREACHABLE",
          "http_status": 404,
          "label": "pypi:mlkem-py",
          "sha256": "b82014934f66beeb9e05a37f65357c4b50db0349d25d68d818ed0319dd4feb40",
          "url": "https://pypi.org/pypi/mlkem-py/json"
        },
        {
          "classified": "UNREACHABLE",
          "http_status": 404,
          "label": "npm:mlkem-py",
          "sha256": "c8d3eae160a892e32837db3dcae515e843e5383fef52b8141940c8bcf8b6d59f",
          "url": "https://registry.npmjs.org/mlkem-py"
        },
        {
          "classified": "UNREACHABLE",
          "http_status": 404,
          "label": "pypi:pq-code-package",
          "sha256": "b82014934f66beeb9e05a37f65357c4b50db0349d25d68d818ed0319dd4feb40",
          "url": "https://pypi.org/pypi/pq-code-package/json"
        },
        {
          "classified": "UNREACHABLE",
          "http_status": 404,
          "label": "npm:pq-code-package",
          "sha256": "c8d3eae160a892e32837db3dcae515e843e5383fef52b8141940c8bcf8b6d59f",
          "url": "https://registry.npmjs.org/pq-code-package"
        },
        {
          "classified": "UNREACHABLE",
          "http_status": 404,
          "label": "pypi:ml-kem",
          "sha256": "b82014934f66beeb9e05a37f65357c4b50db0349d25d68d818ed0319dd4feb40",
          "url": "https://pypi.org/pypi/ml-kem/json"
        },
        {
          "classified": "UNREACHABLE",
          "http_status": 404,
          "label": "npm:ml-kem",
          "sha256": "c8d3eae160a892e32837db3dcae515e843e5383fef52b8141940c8bcf8b6d59f",
          "url": "https://registry.npmjs.org/ml-kem"
        }
      ],
      "records": [
        {
          "n_names_queried": 6,
          "n_registries_queried": 2,
          "n_requests": 12,
          "registry_hits": [
            {
              "controlled_by_target": false,
              "name": "mlkem",
              "registry": "pypi",
              "urls": [
                "https://pypi.org/project/mlkem/",
                "https://pypi.org/project/mlkem/",
                "https://mlkem.readthedocs.io",
                "https://pypi.org/project/mlkem",
                "https://github.com/AntonKueltz/ml-kem"
              ],
              "version": "0.0.3"
            },
            {
              "controlled_by_target": false,
              "name": "mlkem",
              "registry": "npm",
              "urls": [
                "https://github.com/dajiaji/crystals-kyber-js#readme",
                "git+https://github.com/dajiaji/crystals-kyber-js.git"
              ],
              "version": "2.7.0"
            }
          ]
        }
      ],
      "status": "OK"
    },
    "regulatory_docs": {
      "kind": "regulatory_docs",
      "n_examined": 2,
      "note": "FIPS 203's publication record and 5 of NIST's own ML-KEM-768 keyGen vectors",
      "provenance": [
        {
          "classified": "OK",
          "http_status": 200,
          "label": "csrc_fips203",
          "sha256": "1ea19cad9cbb9431299465225cc0c2b0f49ee2fdb2adc304f147b6797f138ebb",
          "url": "https://csrc.nist.gov/pubs/fips/203/final"
        },
        {
          "classified": "OK",
          "http_status": 200,
          "label": "acvp_mlkem_keygen",
          "sha256": "d7a62a2c3476957f56dd8d24f9004ea6776ccfe995ffe71a65bb9506dc9c7b1b",
          "url": "https://raw.githubusercontent.com/usnistgov/ACVP-Server/master/gen-val/json-files/ML-KEM-keyGen-FIPS203/internalProjection.json"
        }
      ],
      "records": [
        {
          "acvp": {
            "algorithm": "ML-KEM",
            "cases": [
              {
                "d": "E582B7D75E6C80B05AE392A1FC9F7153B12390FD99930368CC67A768BAEBC8A0",
                "dk": "3808B98D9A093C7853B0B814D1CA5F392677D3D0A38F81C852F95B9A69B374A24588C0ADD5B510BE567C5A24688EC91ED0F28BB4C86978C09793795C36B94E5DD8498EB4353FF40EA87B17E921B5B4CBA08E5B7BE5A9C8BC69AC5AC3075DD947D04B8695097AC39790A0C8ABE11200C9F136ED7B0C10077E36111C1F139D9BD27142993F5883925C4918413CB8043962A28567397A1C7E003BAC30644055155CE9464E623FC5E2160CD1143FD2C90C03A08D0B333FBB40A308CACD81618674B406809790B2538D30431F064F65EBBA7C41B2A53146A3ABCA66754CAE591534045C1D640D6308472EBCA660A8A7D372470D3869115B8860B577311980B2C66B8352229ABC17B0C31F58E5A5EBDBCA6E3B157D9CA79EE890778A4CF28429C2A82C80DC9C524B0864E385E355BD4E65732D395E464070F61828E57C3E1BE2A50052C4FF1951F5D0C89720987D8941F085871113A91F518FC79B7189056990B2447BF54FC170C932E0A4E0F7A262542F56D1B49EEBC392106D93C77DE9186DFBB824E73B2F7FC796B312875B43414877AFB356214492C19C748DD381BC7A9237BF097CC606A03119A240A5536AC7844F6A79D0E2B821B68D96542450179BCCA231F2DA68C5EB6D118B99A1B66EAA566C78A9009008B0D66155BA4839F8E518C650177DEC170EB09E8BF6A89905320590C642B801CF5B5151C2AF3E7271CB9961C65A5BD17479429A31BE9081F2767D94816C16D1B04772012382B689AB2D3FB9BDC66547BFEB23052600BB369771494D9C914EC93A066ABC9611940B947310DA04197312425D736A1933B785C95DC430791E42CD691C79BA63BE06EC80765C9C07053EAC706697F21720C672B9803DF9935532197B0485BBE42B0DD16561AC0605E9DA73C189C9E29ABA3AECA19C21621B209326418543C44B88843EB3720A2CEC3DB52C59D6507EE5CB03C268B31FC4BF115695EB0B8AD3F11FEDEA1A5D0724A5D5284D0C10E9844D0D32BB5735448421BC5317650BEAC4829B234B787339812F2316ACE8C22C42D6346214934FC0B49ECCBDF8DA19AEE64DE9628C4F7AB3E512A399B0C227B677AC4A69891A6874F6641D2CC95460B751E17E434C924B2947D806856665696E3CC4DB9553B81606C31C3800B48756A073BF685EEA20899C176769E902DB971827D153B9C33516E959C6B469841946C0D921A371A5DE9740C6AB9CA272B5850BA8753CA023A460EBF7BD573C0745F40B90F105EE17C19B6832E019B80F8858BB515F7C709E68F29C1375B22567AFE7B528F4431A94B553DF825CDEB84B4EA9296EAB9AD66271EEC5AEF6F79509A20A182279FDF92F87FB6E7509968D22CA750B5056974841B9654E5716BDC33A2C6A116A4117FA757A1D22710668412B8878E134B70FE32158A2317FBC62F01371296AA42E33C903E0C439F19684B11E2F911F7FB79860C8800F9CA146EABE29DB07237AABB503A9BE2AA7263A0626C162A27537775792B2E7B0FD347929934AD8F521D4159059F611312AB903879490059BE8B38920E2CB4A256B8B35783E909346D13E9888BEB9350369F7C1A8501331110C651621A616B365A026D1CC47DF440C9E650DD0C0BFC8295439114528C793778741B80B02B4339F2AA4347255B099F17264E1B8CC0A2C7C2A1A79F7997B907FD0496C6E6C8AD7714F5F339D75F11F625591A869BE1175AE47F05FD4313468232BA6957D7807B824F445AC99A0D568AB1AD54DCA8249D1482E61275F52248C77F61A4248753188CD1794CD0A465EC0DC4B025985C461B74E76286E4C37E77405695CC9FD0654374B427A20343AEC0FF1A187768273BFC4905472A1DA387F14559D6CE87313F6A5B6138434539F9A13684055B177E543F8B40F432ABD7CC49989A50A9084C660913F45A8593B17499BC4CF936C2BC1851421CB986808A0EF30AFE97AAB5B8B8EB3F0B3506A95B91563A0E57DB7231044987EF141BDAB3537C316AD16F17805A81F29329879A94E96157E4B7447F7D59603B21BD896CC47B7CD4E232322EB9C5D2215696BCFFCA3A04EFCC4C5D9CC39AC9A6E8700D38C244B0169E7FA1FE81B4B10365E74E6A1F7F756D11ACDC84043F81006D62995376C22535958FEB53F78117EE0F61C4C862640D06DC57A2B8BE62A41A642AF3BC63F6BAC98BBBBFF70570F37B8F8D9572F2735657A6C98F96CAF57A849868720B2640B8BB2732237A1F984C18872D10289CE43C952C9257E06529AEB76AFD127B17596FD25C5216C9CABD9B18EFC50E87BBB04568BB7D5C4E9288C006483AF5912E19108573700BD10CD77224B80659EA75AA74270B33AC4008B738BFEE271E78658C8742FF13C96AD0781A03C7576CA26DD58B52980BA58C0505E446AFA140CDCEA0490DB1F9B18815D4314B2459CACC562441C91F4084E5426C88E632CF7482E79907911D06473260835D7B85E7856A829AEA0381707B939CE86882CC09C4448C6AE94A9C303107C5667EEFB8DF7763CC21189A3C590C40AA51F491503A7935EC08F4FC300CBE607ED8C9100C29FBF45584B13C8D780069337AEC76C36CEB70373E2AB6E7B934B466F53FB32EAF040055496B8540E23A2A277E534468608D5EC0F8D38CEA5BBB806C1BF4F164F6AC826FE733F95461E29DCC11200C0AADA1B8332023EAB329718CE25CC0A09555903F3578BBC863B1752CA94365DA556DF54C3B7E05CBB7115FBC1B6C57A172C31B9906560C8FB54F3C563A2256CC073243B8179B4A28D60E086CF51082EE429272996F0AABE03BA0EAFD3C8E7D954BD0933E2F60ED0C32CEDE7B820A28E48F3CA3C40913CCCAE2337ABFC59843F08C9863325D65A4E9E15C1F46172B118B2B5EB0F1D5158A00134F27B085488C3A0621FE4E5678698250FB74EE5152E3E35A66544A05D279EA99131FBC15165060B90F88EEB7B20892A4DE4CB1683495BD7DA037966B47CC040F1764C5DEB06B5499D4267391CEBBB47F734D8539E39528436A1858182854BF20B1F93279AFB706464C65CCC5AE099B37CC03556C26ABF4C3F8B9BA3A936707211A49A59B268F5284F7970C77612719450377417428C4BA47C9CA115CF95304C4759C5D8859B44985C06A6C924689237BA320D610960D61C53E85431789E67A40113F167FF93429C264F6CABC95448C903437D39A6577BE0CF0012852AA476351A9046A110A1A625A3D74C910B78BCE9CFCA735E4F91B8A4C57DBE489E849446098AACF73070AEE638FCC8896473D3C159D3AFB4B687B40DFBF371A9C2644B605187B71A14BC4C8678FE824781E66EF5A7A221619F6A64039CC369843E10DF5C859F6959CC3FD8E5272330FD1CDACB8740C0B87C4A379575F187B367CBFA3B300BF591B109F79816E9CBE8F0",
                "ek": "28C793778741B80B02B4339F2AA4347255B099F17264E1B8CC0A2C7C2A1A79F7997B907FD0496C6E6C8AD7714F5F339D75F11F625591A869BE1175AE47F05FD4313468232BA6957D7807B824F445AC99A0D568AB1AD54DCA8249D1482E61275F52248C77F61A4248753188CD1794CD0A465EC0DC4B025985C461B74E76286E4C37E77405695CC9FD0654374B427A20343AEC0FF1A187768273BFC4905472A1DA387F14559D6CE87313F6A5B6138434539F9A13684055B177E543F8B40F432ABD7CC49989A50A9084C660913F45A8593B17499BC4CF936C2BC1851421CB986808A0EF30AFE97AAB5B8B8EB3F0B3506A95B91563A0E57DB7231044987EF141BDAB3537C316AD16F17805A81F29329879A94E96157E4B7447F7D59603B21BD896CC47B7CD4E232322EB9C5D2215696BCFFCA3A04EFCC4C5D9CC39AC9A6E8700D38C244B0169E7FA1FE81B4B10365E74E6A1F7F756D11ACDC84043F81006D62995376C22535958FEB53F78117EE0F61C4C862640D06DC57A2B8BE62A41A642AF3BC63F6BAC98BBBBFF70570F37B8F8D9572F2735657A6C98F96CAF57A849868720B2640B8BB2732237A1F984C18872D10289CE43C952C9257E06529AEB76AFD127B17596FD25C5216C9CABD9B18EFC50E87BBB04568BB7D5C4E9288C006483AF5912E19108573700BD10CD77224B80659EA75AA74270B33AC4008B738BFEE271E78658C8742FF13C96AD0781A03C7576CA26DD58B52980BA58C0505E446AFA140CDCEA0490DB1F9B18815D4314B2459CACC562441C91F4084E5426C88E632CF7482E79907911D06473260835D7B85E7856A829AEA0381707B939CE86882CC09C4448C6AE94A9C303107C5667EEFB8DF7763CC21189A3C590C40AA51F491503A7935EC08F4FC300CBE607ED8C9100C29FBF45584B13C8D780069337AEC76C36CEB70373E2AB6E7B934B466F53FB32EAF040055496B8540E23A2A277E534468608D5EC0F8D38CEA5BBB806C1BF4F164F6AC826FE733F95461E29DCC11200C0AADA1B8332023EAB329718CE25CC0A09555903F3578BBC863B1752CA94365DA556DF54C3B7E05CBB7115FBC1B6C57A172C31B9906560C8FB54F3C563A2256CC073243B8179B4A28D60E086CF51082EE429272996F0AABE03BA0EAFD3C8E7D954BD0933E2F60ED0C32CEDE7B820A28E48F3CA3C40913CCCAE2337ABFC59843F08C9863325D65A4E9E15C1F46172B118B2B5EB0F1D5158A00134F27B085488C3A0621FE4E5678698250FB74EE5152E3E35A66544A05D279EA99131FBC15165060B90F88EEB7B20892A4DE4CB1683495BD7DA037966B47CC040F1764C5DEB06B5499D4267391CEBBB47F734D8539E39528436A1858182854BF20B1F93279AFB706464C65CCC5AE099B37CC03556C26ABF4C3F8B9BA3A936707211A49A59B268F5284F7970C77612719450377417428C4BA47C9CA115CF95304C4759C5D8859B44985C06A6C924689237BA320D610960D61C53E85431789E67A40113F167FF93429C264F6CABC95448C903437D39A6577BE0CF0012852AA476351A9046A110A1A625A3D74C910B78BCE9CFCA735E4F91B8A4C57DBE489E849446098AACF73070AEE638FCC8896473D3C159D3AFB4B687B40DFBF371A9C2644B605187B71A14BC4C8678FE8247",
                "tcId": 26,
                "z": "1CDACB8740C0B87C4A379575F187B367CBFA3B300BF591B109F79816E9CBE8F0"
              },
              {
                "d": "3E5848DB624613F7AC144457CC1375F006FA8CB953E767DC9E7428D00F5DAD8B",
                "dk": "0E62A20CC7B3062B2EE82CAAC1005F0E9655B03BAAA905AA59283126149B60969B2720563F1BAF1A93908CF41DB362589E9694C3E6734620AF30FCAF3186B5B42B5376390BEF3B4CD1833BADF19DCCB0334A68B1C6541874659FF14CC49357C2B5EAC09DAAA77CACA604242F85039A89FB456DE488FD06137E7C527E76A18B5CA066AC95A93094B300185B001F44CC2505813534A949F335027B6C12DE7C580451A53C499DE6263117A17B5BA64471A97C0579A4FE3B20F5D24569C85D214155B4E9818D9466184C8E2FB843DF396B2AC18FCA8B61B8387A2B3458E9D0AB9E2B751BE34DD5C70132595835DA55D454C301F13B8BA542EBB6C1E86B2F621312E4B80A54E106A7E5743257CB52603A68B4A9F5D195B1283150E48F9766A1BD248438C92084B451EABA445AFC6BB03805B963537AC8255CBA18D4A9832B2752EBD9B5F7B8AA52F5207B82945C473278DC5D7850C0921423587401D9210053C9C9844460917553A60A099449A7B0D360E00044FD9932140CC1D1D444F14010F8F35869A03728951E28B7C203C5CE3F7AA61205D08A15B181C0445AB27E3F889C0E72B050476CFE29420085A09D203B1C73ADB6B59074893BC3A7533758467D6046E3633044C8A1E9BB3824B72EDC7A8391721E01E4A2A214BB71008B1EFA343B064901831B20698D3958991DD9C22058A0AD4A49657B929AD926EE1B608CB29DB3174B27CB09F7A75CE617A21AB971A28BB6445267EBB838DD3B3BB82759C26A021D0382992A6CAD218ABC44A8D9667A07F5040ADCC1423CAE1363729BE457FD94C025E1B48F071140DA992E1A557A7497907CC729E33E773221F79096ED8BB830373CFBE84F5466A02D1302B1C09215983EC0229B61302F77AB4E698016A600CAB1F9729C320F65EC1537733F3976C4AE75723903BD83437B0A519A53E56B5C49C5C15980DC5341BB45305229536D324F513615A459C5D69019DACA536C42427332279BCB8A74503F76A5AB90EC7476105BA69C518921C62AE043B5E91DC958949D57B0BEF7903CF5CFC5A06C0654A60F48388DA4723B5B3A320184FE6755A881B27C2ABE23A0B63338B1EF778DB47B2CDEE043F0F5390C84BAE4D2B3ADB2B67558B567925DA6E1B33CCB3B87126293BAA2A8B18479D65C4BDA14FFF45E64223EA6E455506164F3F453651439D275862937257F666CDC564FFA255ABBB3B6FC8493FEAB7E76E2A17E849044E62A1F980A57BA5B9397271E2B5D5B5063EDAB2098FC561D10C731AA9D7AC13FCBC793EE659D6994BB00D53323232C6A192DCBE39F6193676C69C256E9050DA78EA442078374A27BE054AA30462374B992C8A32F0440E2DCAA70927D06C97EBF4C04C9557A622203187AB514C0284ED45BDFF560F3B3A15A6A6F0A6B098DF3C9BC083348138710D8B5D97A2EBE2A90DE907658F7B8B67865A4BAA111898BDCB5521F209C5801861D394BEDF51B0302888D39A73BCB07E3E99C2174BD080B1EB4086199B4859FD233D9BA3B34A04CCC67BF59896D98675AFC4CB1656005C57BA8CA5A1B085B686A1C27BE292FD3FC0D7594522C9232DE4B09541C3C1C11A2ABE1830AB3BD80B313369407F66C970FF61586A040F7DA4743166BBD4C97F4B57D4DBA6FE40A48498B001A502C28385B74306BBA43C670ACB191FB031C220CA3238AE1CBC961E66898A4C19C0A4BFD076863651FB91A31C75A33DC18B53EC6C56679159783A563C4504CA10D1405C261F8C7FFA87280242EC8BCC3077ABDF371CF55C140D0A131E6529B40788F1943964136000CD7319E05553EA58E5898384822A62B8AB9BD03609F1566F53435C472520D957703090794179EBC73744525A8F002A14270CBD1D4B6E2538353765D49F5651C1C34CC228C4E753C5210BFD00CB378D6A4ECE80168D54A4C62740A0C4A292A42E1621F2C499E4FB94E37912C9CEA7472C65B27F65036E85D5512C38D3582DF290FA819BDF0E37EBA7C2607E6A94A2323A0FB88A6808B2F444E33999F1A10830F715960D563D0A43AAD7AC7F0B4AC4A9A3236286D5249C83DC5C4666354D0EA5FE06530E4081370264566E47ACCBC22380414FF530C394007FE6CA79DB0AC53FB2B06719908D15DDE432F03C84463EC5009D81E9882030360A0FBC34F156391B6E3AC92C795FAA2199BB4A9A33A994A16AEDB6558CE901C4B60295DFA39CDD5B97C9B1E9C3199C825BD64B819D8346B1EAA6A5F5A4BB90A7F32253D7F7BA2778BB796BC707BA53CBA7A36E3682D54C3003F572D2779AD543247C6D78EDB63739E17029594BAC09620651227C8F072C7F51672385F62E06B2C80A4160BC73C8691C5314914F4537266C0D2EC74365B8CEB99C71F076BA772493CB534192A70BD576B1BE0A42D2B87DB45A423309704BA17CBD7CC610095FAB3CA61281AB2949A0D2B548A1110852073A98C4C612BB095D28049201C4F08A6083BBB60A65CBEB81B6D2A40E0D7AB0628B5EE251143812AE9B6524174C420A82D486350954AA1E6442007239FC7ECC969E18507FB55C78CCCA6C18842D745BCD9C425DABA9033B8161374EB63244F2570D228392174545FAA4664A886118A6948451DCDF489A1BAAD5E2B605B4756F3124F80B546FCC61AD30660EC342228ABA6CFCC06E61884F96C7F675711C84451D3902C206B6F1B928A2701C021E42FCB49C28C19414ECB9288C4A51E957B4D742D0E5307D731AE0EEA9D7BC9B48BCB332EFBCC3894AF4986628FF77420B6B8ED75C4F54A063B49265C38CF17B95DE45A64CF30B5EBA5643603B28B2C4948E2A2F1E8C440C54341491B20D378DE5481CDF8310074A69D79767EE1135FD8AAE3934449B406AE447BB33148A08C1C0EE4A615A44C42943CE3D56ED50B77BB7C3D4448C106363472CA0F11F526349C673FC2C8158ACB21BC3BBA9CC39891672FFCB4B3E165E6C4A1D156AD7F7085BBC49AAC5B5AA2682F165560C4132C49E0B12FA4BBF4B40E630B375086B3EFF66B07B0CFBD207D7F1AB67EC580ADA48F36308E1566CF2FF5BD1F84B9161A73014290C384BF9E0B0AA653CE4F8C6D05CB087EF846A1478468E06F81D0B5406B9AC937AFC2795AB4472E0BA964DF4259E849030108D083BA6ADFFC63E4B77126C3BFFE389401E15EC6A88BD0B5B32BD06AEDF80792636F167589C346A6E651009557CA079C593270250D9ACB3A1BB06AF03C65F88D71EA932EB79553D60FD4D34499F23FA3498BBC3A89BE3369661CC2D292221A9B8CF379DF6702808576A37975C9B593EAB54AD4B8936DA5217C6B843AD33D423290E0CCB74DA11B95294FEF12EC690815FF103075053B89C5021AEFF4CA0C012DD6C2F0918B9EB6182474EB86D848F65974759D59CE151A396DEEE4CA10D1",
                "ek": "43166BBD4C97F4B57D4DBA6FE40A48498B001A502C28385B74306BBA43C670ACB191FB031C220CA3238AE1CBC961E66898A4C19C0A4BFD076863651FB91A31C75A33DC18B53EC6C56679159783A563C4504CA10D1405C261F8C7FFA87280242EC8BCC3077ABDF371CF55C140D0A131E6529B40788F1943964136000CD7319E05553EA58E5898384822A62B8AB9BD03609F1566F53435C472520D957703090794179EBC73744525A8F002A14270CBD1D4B6E2538353765D49F5651C1C34CC228C4E753C5210BFD00CB378D6A4ECE80168D54A4C62740A0C4A292A42E1621F2C499E4FB94E37912C9CEA7472C65B27F65036E85D5512C38D3582DF290FA819BDF0E37EBA7C2607E6A94A2323A0FB88A6808B2F444E33999F1A10830F715960D563D0A43AAD7AC7F0B4AC4A9A3236286D5249C83DC5C4666354D0EA5FE06530E4081370264566E47ACCBC22380414FF530C394007FE6CA79DB0AC53FB2B06719908D15DDE432F03C84463EC5009D81E9882030360A0FBC34F156391B6E3AC92C795FAA2199BB4A9A33A994A16AEDB6558CE901C4B60295DFA39CDD5B97C9B1E9C3199C825BD64B819D8346B1EAA6A5F5A4BB90A7F32253D7F7BA2778BB796BC707BA53CBA7A36E3682D54C3003F572D2779AD543247C6D78EDB63739E17029594BAC09620651227C8F072C7F51672385F62E06B2C80A4160BC73C8691C5314914F4537266C0D2EC74365B8CEB99C71F076BA772493CB534192A70BD576B1BE0A42D2B87DB45A423309704BA17CBD7CC610095FAB3CA61281AB2949A0D2B548A1110852073A98C4C612BB095D28049201C4F08A6083BBB60A65CBEB81B6D2A40E0D7AB0628B5EE251143812AE9B6524174C420A82D486350954AA1E6442007239FC7ECC969E18507FB55C78CCCA6C18842D745BCD9C425DABA9033B8161374EB63244F2570D228392174545FAA4664A886118A6948451DCDF489A1BAAD5E2B605B4756F3124F80B546FCC61AD30660EC342228ABA6CFCC06E61884F96C7F675711C84451D3902C206B6F1B928A2701C021E42FCB49C28C19414ECB9288C4A51E957B4D742D0E5307D731AE0EEA9D7BC9B48BCB332EFBCC3894AF4986628FF77420B6B8ED75C4F54A063B49265C38CF17B95DE45A64CF30B5EBA5643603B28B2C4948E2A2F1E8C440C54341491B20D378DE5481CDF8310074A69D79767EE1135FD8AAE3934449B406AE447BB33148A08C1C0EE4A615A44C42943CE3D56ED50B77BB7C3D4448C106363472CA0F11F526349C673FC2C8158ACB21BC3BBA9CC39891672FFCB4B3E165E6C4A1D156AD7F7085BBC49AAC5B5AA2682F165560C4132C49E0B12FA4BBF4B40E630B375086B3EFF66B07B0CFBD207D7F1AB67EC580ADA48F36308E1566CF2FF5BD1F84B9161A73014290C384BF9E0B0AA653CE4F8C6D05CB087EF846A1478468E06F81D0B5406B9AC937AFC2795AB4472E0BA964DF4259E849030108D083BA6ADFFC63E4B77126C3BFFE389401E15EC6A88BD0B5B32BD06AEDF80792636F167589C346A6E651009557CA079C593270250D9ACB3A1BB06AF03C65F88D71EA932EB79553D60FD4D34499F23FA3498BBC3A89BE3369661CC2D292221A9B8CF379DF6702808576A37975C9B593EAB54AD4B8936DA5217C6B843AD33D",
                "tcId": 27,
                "z": "012DD6C2F0918B9EB6182474EB86D848F65974759D59CE151A396DEEE4CA10D1"
              },
              {
                "d": "882FDEA55C6B497A6F2A1321FC82160C630D9A1F2E35BBE0D3332E3A0CFBC8C9",
                "dk": "7A804DFB96B63BA97AF4E35FE6117A82D68509A81C70CB54C68A33280C2640599E918A2074627CC1AC8966A74E08822DC5731E79D82B8DCA0CBBE6C8D1EA6973A970DBB44D5FBA31E14593E9ACBC77F02ACAB7A58D656854F4031DD209A5B33A167943072BBD660B815FD13AAD82A045269A161A86FC5BB72C4CAA704C105C37CF04CC4C8A1643B01C37AF0C8D4D39CA85025665A1B66E907720288BB955A7BBF639123376A3E27D919499BE7A42E1FB09B9AB27029AC076DB2F25147A2BF38F6C5B287BB424BAE821D79875C8C41FB120A1BB957BBB57236684636C758E909120AD01332C60BA5304133CF7837EAC6D31FB7CF160251DA3C4BD1B18B0FA674F1B5ECA1603FCE92928B821A8A68E6A085E98EB2843E722481A0B81E16E2C4BB0F4B0896DBB2C900C8DD7E500A6C84EABB44D4A670D54203E921344C6C1401516AF0168CD1F0821C0FB260044B6F908A68E58170CCB34C4E39919DC747FFA13813240A43631D865ADFE335936034BDA443773B967C8B9636109CCF919A9B6F233F0C3598A7ACC96721CD5489EBDC29549ACC16F0A64C3B0B9C742CD81C504BF6A9898A38D052A36036436655285BC26A249D190E72337D4A0BF191954A5AC76982945205113977A1D6937824C773234CB2EE7716570628BF1048A04B38E5D9C42C3AAAB1581446C3B96CE96674C119A709C0425E6BCE65477252C628C6988DF6316813B6F4D37C9FF339D22A76E3A8A1376498B63AA221FB329EF270614745E94655C6591747DE740586386A6150D66E8557225B38D3173F5816BA12C395C09712A5B289031981C2BC97C51C39499A144C2976305BE1BB08CD6A305212C2136FB8921F337E6D61E8E8ACAA525B8C9C60F3AA66EF9A56DBB247DDD424D67C95DC6B1428AE63CD2A236CCEC911378BAA1E101961864D858682A762113E88F98F25D1ACC9E2E1907536257C3CA97B81091557CA0C691B90DF6B707D55A94413C5382CA4DE2605740156CE738796530781A2E9C629BB1CA0D82B5024A262437243B29E2586F4C8585777EC82898E4942ECD1325D719B21017451B5908691B35722650A81964720ACB595009B99749852035CBD4B1AD51C178E9C97C604FFEF08E7FF4057D274F1E078F46D04298F0CE82A44C8224C31697C25A687DC845B8A55A050D69C6E6A4226759BD0794C5BF0C33CAE843E2FABF738C7957D61206FBACF8B54472C896174195EA8923E3995DE50C9C430C4FD4F81ABD21731DF968E3617575E90A7B430990055068D3390E376FC62490AA97A27F5441A5A149C07344AAB833E19B093FD9BCBC8A05CE1B6FBFFBC7BC424EFC7255178569E2447C59B851E39A2017390B4F230D6DC927BF83BF2F868E104129C5DB003EEC8F9218357A6553EBB41D6CE558CB3B8FF86A3F125A8BED75C675E13A9F343A4B791E7FD87ED4228556A494B5C0CA685AC4AB663527ECCA5E5279F1277AB51186D0EBC50FE5B4B64590F26A87E9049E29735190579DDD194180B60B78579EAD248895C55422A18E59D01E6166BCD19C08D1917280D0265A370D5A34334FC9B29F931C5C68297937198B06791D838492D73C389A9556FA0640E03537F5C744A379892B362B0B1300678F3A7714CDE9B06A8990EAC99A89A12EB606017F841D4BE2100AEB750C3892EF544418216EA437AFFE88059A5A42694089FE7020828160683C0E7EFA4519591A4DAAC30456A5EC2AC39CA0CB3F3920237097E6E5157E1881A09A03AEBA5B9925CC81F20A66D86EC52245E828655032067E8BB813F43BE6DA09FCFA2FC2452EED5CA4DBA87DC306A573911205B53B91187D44214D12CA1147B4174956C2BBF1863D85567B8BA14F24B2B6949F6639288DE34C117391A19B678B3406FF784AB87B66031371BD0073DB89A4ABF597D40213BCD4A93AE834F14A52D527C7486C9DDBF62148036AA55A06ED156A0C0B9366D15B582338BEDB8466317FEC3109139C8CE2C1079A070597C6B712C1B16ACA049F3C8999A95E1DD20163226B96C5724EF6908A9C5DB43637708471E02C31E1B40A226B01DABB057C328717A4BB41F9A32230079A49BEB2E892F9DA40FF947CCA4410497701795C62A113B30AC0A7D143A8CA8C3C0189407F95AB1B05719C1ACCF500676B3596141A409B6C0E952A5F1D456A70492B83C4515DD99B763A24B4C1545ABC8715E61857A89CF6D760D00C7B47D407C1C230C6212215CC805C76979671AF6D3168C73CCA4066233BF66FC1D485E225757783CC0457059CE05B9A2409B7B25415121BB2823B032BB40AD8318A86682A1C9FA6F571A08054939144F1AC2F5D299C97C730F742B75C4521851B8D9FE6AD43121C74AA248B751998A2AD9FB747BCF18AEDB4B4B0E718E979B7F7580C14BA62B42B8997F17E6812BC46AB6799F7519A93BFF43170F2C01B31D96459B7A8956B9DA9B1C2CC7C7E3C849FF326003BA17440539E01498CBA96B0922468DE2345857C3405597AD822004A2B2FBD8723E9F59CFBA30732E3BF68131283B87D05620440A2A7FC3582C20B68D0A8763B5276C12957AFA766C4D0A524800A1D954934FA0CDDD684D85C997BF2C54D8CBCD924B19E731F80B35138752A8E91C0876700F4AC3247BA6DDEBC1657941DFFE96D1803C81B75A6D07CB6CD4C14B8C904020CBB6BDA1D019CC49EC90A12581F944263DFE06DB5E16C94EBA98276B9AC3B13B8A9083AD3190195583EA7A76051A27F2121F46318580C37E50B0429480F7EAC312294CD3C71BDBBB0557C41AFC363A6411805964221D26B0EB7B798CE791EF121BBBAC1BDBB88BD57DCA9114564F4B388B1A2C32912A8BB5C1F21763294498E2B0620F3C085E7C4099D6A3E4FAB7FA12A73E39167BCE99A6F69A293A37EF238CE2ED7A1804A596CA33897F4CB772C4083A55438490D3E1CC1C5E91D9B78A5E67BBE3C7C3B1293CEB0BA7B7E48CB2BCBB30DD70296A17BEF964F265C5A41152964574C0505975DDC10BA9850C6199C83E157F2A74D8FE7496AD2BA6D83586C7624B87C3E00B84B65620DB69643AD9046105B5A6CD8065716C398D0BCE0E1577E3BBE192651692B79DFB747F7621E2C9A87BF2B602105CD893B2BEA50A10D952CC8DBBB1499B9771A3999FB91E0C7438AB641D79A568A375DF1D07E28E2C9C450A72F8C4AA5D71B82A09E1196AA3FCA8E7C684A4DDB635E775FC03604711139F332AE97EA1BA2813B1690BF9CF70F506CBA90641963D5CFAD3698DA30C866C95C66B4846F785CCBF373F4621855FD4815F0920AC4F940CA25DD130DCFA223E9B45F13EE3FD74B1366AFA7F3FFF4B8F645331DB5526FDD7998A4EEB5C27C884DB83A21F601923C559179A3AA5839A148487379EAAD934BF27F3071E1B1FDC21D1A",
                "ek": "3A7714CDE9B06A8990EAC99A89A12EB606017F841D4BE2100AEB750C3892EF544418216EA437AFFE88059A5A42694089FE7020828160683C0E7EFA4519591A4DAAC30456A5EC2AC39CA0CB3F3920237097E6E5157E1881A09A03AEBA5B9925CC81F20A66D86EC52245E828655032067E8BB813F43BE6DA09FCFA2FC2452EED5CA4DBA87DC306A573911205B53B91187D44214D12CA1147B4174956C2BBF1863D85567B8BA14F24B2B6949F6639288DE34C117391A19B678B3406FF784AB87B66031371BD0073DB89A4ABF597D40213BCD4A93AE834F14A52D527C7486C9DDBF62148036AA55A06ED156A0C0B9366D15B582338BEDB8466317FEC3109139C8CE2C1079A070597C6B712C1B16ACA049F3C8999A95E1DD20163226B96C5724EF6908A9C5DB43637708471E02C31E1B40A226B01DABB057C328717A4BB41F9A32230079A49BEB2E892F9DA40FF947CCA4410497701795C62A113B30AC0A7D143A8CA8C3C0189407F95AB1B05719C1ACCF500676B3596141A409B6C0E952A5F1D456A70492B83C4515DD99B763A24B4C1545ABC8715E61857A89CF6D760D00C7B47D407C1C230C6212215CC805C76979671AF6D3168C73CCA4066233BF66FC1D485E225757783CC0457059CE05B9A2409B7B25415121BB2823B032BB40AD8318A86682A1C9FA6F571A08054939144F1AC2F5D299C97C730F742B75C4521851B8D9FE6AD43121C74AA248B751998A2AD9FB747BCF18AEDB4B4B0E718E979B7F7580C14BA62B42B8997F17E6812BC46AB6799F7519A93BFF43170F2C01B31D96459B7A8956B9DA9B1C2CC7C7E3C849FF326003BA17440539E01498CBA96B0922468DE2345857C3405597AD822004A2B2FBD8723E9F59CFBA30732E3BF68131283B87D05620440A2A7FC3582C20B68D0A8763B5276C12957AFA766C4D0A524800A1D954934FA0CDDD684D85C997BF2C54D8CBCD924B19E731F80B35138752A8E91C0876700F4AC3247BA6DDEBC1657941DFFE96D1803C81B75A6D07CB6CD4C14B8C904020CBB6BDA1D019CC49EC90A12581F944263DFE06DB5E16C94EBA98276B9AC3B13B8A9083AD3190195583EA7A76051A27F2121F46318580C37E50B0429480F7EAC312294CD3C71BDBBB0557C41AFC363A6411805964221D26B0EB7B798CE791EF121BBBAC1BDBB88BD57DCA9114564F4B388B1A2C32912A8BB5C1F21763294498E2B0620F3C085E7C4099D6A3E4FAB7FA12A73E39167BCE99A6F69A293A37EF238CE2ED7A1804A596CA33897F4CB772C4083A55438490D3E1CC1C5E91D9B78A5E67BBE3C7C3B1293CEB0BA7B7E48CB2BCBB30DD70296A17BEF964F265C5A41152964574C0505975DDC10BA9850C6199C83E157F2A74D8FE7496AD2BA6D83586C7624B87C3E00B84B65620DB69643AD9046105B5A6CD8065716C398D0BCE0E1577E3BBE192651692B79DFB747F7621E2C9A87BF2B602105CD893B2BEA50A10D952CC8DBBB1499B9771A3999FB91E0C7438AB641D79A568A375DF1D07E28E2C9C450A72F8C4AA5D71B82A09E1196AA3FCA8E7C684A4DDB635E775FC03604711139F332AE97EA1BA2813B1690BF9CF70F506CBA90641963D5CFAD3698DA30C866C95C66B4846F785CCBF373F4621855FD4815F0920AC4F940CA25DD130DCFA223E9B4",
                "tcId": 28,
                "z": "3A21F601923C559179A3AA5839A148487379EAAD934BF27F3071E1B1FDC21D1A"
              },
              {
                "d": "AEE013310D04215B77F073A7E22B77BF0221394A08E96BD07E3C99A9AF45F16B",
                "dk": "8C50933FD05144630DBD942FCD3C1BF037C176257A332A440C88615D8A613EC3C219D2194F362A7BC3291D3A50C5911C26DA86AF2209A6F7A7DE997892B0149B3ACB5D4C1E2F318DDE95B1D09537571BCE152435ABD7072A60BEDF7A525AB98B28EA6E67E91FB2BC49BBBC90BA476A57DC16B5EC8663C72F2CE06B2AC91B645400EBD6B38662A3AB157190F7C3149C7638F08161185A01A594D2795D8CC6BF40996D776528D018C4603950AE4AB892D45CE3D909F2A962C29C5A99A05FBC4C3DD4C711BB8679D5614CBC039D5D13A9E23C2C5C087B7D6287906A1CAF5105F6EAACB90264824174349C21D1D940882B70D981BB2116906120B143F07E0C41709D0B03D0C21D2047A350CBC0CAB65455389FEE273A28F916A2D69D7A7B2D7A210F597235BF4994DDA3B419704C787779F07B55A2F11D94CA492B147E667BA7E77B6F208CCAA8D6105BD441F9A47E147B76EA46B9D56309E1C224D2593B5B084EFE6ACDC8F5A0D4CCB83BBB0743FC8266D42E065086E5692E4479548C399A62B4ABB246A85E4C1B6AE218D76BA984B020B48981E29156A87341D251B979E7AF8B1687F4F1AAD95C7CCF4BC7A0FCC4C33968878A6912052F16227C92BB7EAD54574E552F7EA05ED474371A3AC690601397536E8280268D1BCB3A8602F21B24FFA64B60A04A7A127E966361CD742B2BE404C14B6597DC4FBE60957724B7E16888A1260DED6268FC743DAE33A50A4532CD9396C17ABE684197907C6743C7883126C77BE58B25B75AF821C1ECC59BB504C2C9D4C45803725AFA3EEDD63A6D391AD047988A987F2EF3624B20BD795C38FC27CB9489487E223F93D228EBE9A40DB61E9F420841E74A20159770302A7A4692649247CFE2A4CF53B00C32376B33625928C4FFF278AC08BC413C1DBCECBF86C7ABE7CA4D7EF074DFF9750708A2A5199DD8598DF295AA2997AE3BC02B4EF5C957B50122E5751B0C2C844979C6E617E50A6E7E0CAC8CE0891F2133EBE59135799FC9FC6FEEE2614633A53EC194E3C9737EF68C5F208E881358080314A31CACA6C78067AACFFB572F4790C7DED53A6C6C451FAAC150203A51D208048486911A3A991627812B1BD74C834B9C08197B37028C716DFACB6BD6AB9973731E0962EBAACB4AE53F8C40CDE680C430B45DF0CB00D60BBFCDB7CAB190A63B027E9F5373CD3097145581BAE7B902D08265C488B363114AF81A866023F4B665B19868FB3A291B1139CA336DFDB6C28A74B231549790548E0C74CE067B594C47880D344A9A833033919FD505868F14108C9671535488E5F52AB38B66C615C2F2D3966DA77118FA72356321E5C55E3B9165E2D374DA05C059B47FA36310018357AC367EB8622BCD1BB2C6410DFEF40AE94A7BD1DBC7E2F01292A4CE4E3BC274AA159BE5644780C1041C0213C6311B79B923934E806586BFC15EB73C7CF0F34F99EB1AB99A5ECBE67547002DFEA019452A7F46FB3F1127A8D3B133992B9A2BAC81B94B86862166BA59B76072385E649EA6577B4FF3624B0426F3F75E493CACE7F515FDA953BA208F5B8A1C22FB2FA84B4A9EE72D9EB059E92569680029B3C90201C82D60272AD2D3C6E1914980836FA1704ABADC7C560A186BDC607105C33BA18D19F691968662854A13ECD19E3D93CC15EABB1F4595BC189CB951A957D310D4469CFEB8892021A58D3C023F815D42411C27B0777AF8C25A898C96C2BB519C5830B295EF882ADCECA22D927EBA65A00C815AC8B03B76B4CF56211A32CCC5D9957C52718E6F7240D4E389F0854D160B3FC7D51A9318C743A5748ED06DBC1051AA885E7141655FD378F99C579280027F1242DE118B69E46E2510A5E420B7D8A39E8AB6BBDA342034B1AA3E394DCF02813877A4AC02A76A03BB74804305A21C9261786463440540740A814AB3681E0FA260FFB055D8E7560BA3286E839F44D04AC9C44A6D29BF09127DD0431BF3E379E031C236D44D79C3A48CA7A42064546BC86ACFF82141E6BC17529374DC11CB5AADCD612E7415053EE266494128E87B1091DBA6591CB86C4486587B095F872A70C53DFC3A0D456A0C8865B45E5404A7FC489A8A09641B9A3B149D7261CC896107F000A7A75C6AAF772D3F9B242509318DCB1CECEC4527C92CECA5648441B99D1C84CF472572AB5575ACA40204C434283C1229570012B47829679FC8A63CE1302E132FABB9687F93095E932FA419B22849A4D6AA090FC69ECD029B6F7489B59A43C720C49CC557D8288680F6B0BC6B87D7462AD128022BFA946685A53E2A8C1F6883567B9C854A012475756FFA2A6B2C6040B443F3A425B35A9A53B6BFB029BC08986FEE5B05D8E11CC006544EA96F5400A8879C9E61E310CBF83675070A4ED62BAE9B29D530AE845B3485569ECBA95672EA1A2A713252198DF411CE387888010C2EAA735605D3B9D889A253338276697283443A4739CA62A64883217CAFE5C1916ACFDD689E272CC51AB5C1988C3029B7795B336F8697114DD856A0573D65395A1289B6E285A99016776B97A76E315505190A7BD331E568987BFB53346419097B83962C9D5DB85F956B0B9E0506846416F3D83D4734063B06ACEED16E839957C5A7BEFC2A4346C0051A49CD199A42F8AA2F55687F9F82AA25BA1AB71CA172078F1D2BC75A3B5FF2557167EC3D10E10813D0625D925F1B2253816486F248A2F5D02A06A8343200003F22094D9603AEB35FF9C6512A9C7D21B8C78B0961DD914A95185572730AFB39179E679F45DB4E5DE5B1C97CB85FCB89BCE8CA958654A3293EC875801F8B40A85C9D1D53025A0B28CECB0AE0D0100B73543351949C259956A859D522BD37E96CACC314E52C7B41A76BCC5C88A677AF9EBBBAA6A573B642962EA821E5A516C44B0A7C0B05F68B02EE078F7FC5C7FB02211F7CA52793437F7A9A32DB0F1040A8A01C1779DB589FF550622ACDFEA78CEEF0513A004CB77141F5CC7D163B5038AA5CAD29854BB43109D53EA3873A5F668125C58AA7BAB3C5A4551FF2990A117056536BA4A499548193CE083D8B22303A6AC6F5442F8231CDDF3B62CCA59BD6F402B612316370A3C857311262AC897B290533229AECA42CDAAF33F2943E496FFA371992D8C80AC3C7FEB46C7748910B4875672A8BA4F3CCE4762894A76846A0CCC13149E02CA12FF1776F99B140731E3E78B23799BE84163B8EE399DE987C3CB4253D15AB07F4678BF03766C0ABBFAB39CCBB8D7064C660A66335F926523A161BC4004D746FB4A764F8FF76676AF904F129457550CCC566089B81BBADC284BA712C521BA3EB8AB0C46E2B36020E42C91F7BE2FCDFDBC37B117984406F46374188D1A2264445D3F44D7DCB9D6A2C3832E5FE9261E29172375A78CBECDA0EF5484C4B3F6940EA20EDD9",
                "ek": "7105C33BA18D19F691968662854A13ECD19E3D93CC15EABB1F4595BC189CB951A957D310D4469CFEB8892021A58D3C023F815D42411C27B0777AF8C25A898C96C2BB519C5830B295EF882ADCECA22D927EBA65A00C815AC8B03B76B4CF56211A32CCC5D9957C52718E6F7240D4E389F0854D160B3FC7D51A9318C743A5748ED06DBC1051AA885E7141655FD378F99C579280027F1242DE118B69E46E2510A5E420B7D8A39E8AB6BBDA342034B1AA3E394DCF02813877A4AC02A76A03BB74804305A21C9261786463440540740A814AB3681E0FA260FFB055D8E7560BA3286E839F44D04AC9C44A6D29BF09127DD0431BF3E379E031C236D44D79C3A48CA7A42064546BC86ACFF82141E6BC17529374DC11CB5AADCD612E7415053EE266494128E87B1091DBA6591CB86C4486587B095F872A70C53DFC3A0D456A0C8865B45E5404A7FC489A8A09641B9A3B149D7261CC896107F000A7A75C6AAF772D3F9B242509318DCB1CECEC4527C92CECA5648441B99D1C84CF472572AB5575ACA40204C434283C1229570012B47829679FC8A63CE1302E132FABB9687F93095E932FA419B22849A4D6AA090FC69ECD029B6F7489B59A43C720C49CC557D8288680F6B0BC6B87D7462AD128022BFA946685A53E2A8C1F6883567B9C854A012475756FFA2A6B2C6040B443F3A425B35A9A53B6BFB029BC08986FEE5B05D8E11CC006544EA96F5400A8879C9E61E310CBF83675070A4ED62BAE9B29D530AE845B3485569ECBA95672EA1A2A713252198DF411CE387888010C2EAA735605D3B9D889A253338276697283443A4739CA62A64883217CAFE5C1916ACFDD689E272CC51AB5C1988C3029B7795B336F8697114DD856A0573D65395A1289B6E285A99016776B97A76E315505190A7BD331E568987BFB53346419097B83962C9D5DB85F956B0B9E0506846416F3D83D4734063B06ACEED16E839957C5A7BEFC2A4346C0051A49CD199A42F8AA2F55687F9F82AA25BA1AB71CA172078F1D2BC75A3B5FF2557167EC3D10E10813D0625D925F1B2253816486F248A2F5D02A06A8343200003F22094D9603AEB35FF9C6512A9C7D21B8C78B0961DD914A95185572730AFB39179E679F45DB4E5DE5B1C97CB85FCB89BCE8CA958654A3293EC875801F8B40A85C9D1D53025A0B28CECB0AE0D0100B73543351949C259956A859D522BD37E96CACC314E52C7B41A76BCC5C88A677AF9EBBBAA6A573B642962EA821E5A516C44B0A7C0B05F68B02EE078F7FC5C7FB02211F7CA52793437F7A9A32DB0F1040A8A01C1779DB589FF550622ACDFEA78CEEF0513A004CB77141F5CC7D163B5038AA5CAD29854BB43109D53EA3873A5F668125C58AA7BAB3C5A4551FF2990A117056536BA4A499548193CE083D8B22303A6AC6F5442F8231CDDF3B62CCA59BD6F402B612316370A3C857311262AC897B290533229AECA42CDAAF33F2943E496FFA371992D8C80AC3C7FEB46C7748910B4875672A8BA4F3CCE4762894A76846A0CCC13149E02CA12FF1776F99B140731E3E78B23799BE84163B8EE399DE987C3CB4253D15AB07F4678BF03766C0ABBFAB39CCBB8D7064C660A66335F926523A161BC4004D746FB4A764F8FF76676AF904F129457550CCC566089B81BBADC284BA712C521BA3EB8AB0C4",
                "tcId": 29,
                "z": "7DCB9D6A2C3832E5FE9261E29172375A78CBECDA0EF5484C4B3F6940EA20EDD9"
              },
              {
                "d": "B5DCC09F5402F5DA7695E1D61B4C1CE11380347D4C6BEF40BA11E94E755B1AFC",
                "dk": "952119B40B1710433F4321C2CA494BD4F40218233943BC1147552D2DC91B026717215450F96983CF2A58E405AB2A241A58702929FC7B0905A01DC772ABC0C2DCACC02A12CE431099A2725B30A1A731DB62B46A5187040913FB1AE54096D49728F1511747386BA2F4C059F9146FB50E7DF06468676E5025B34A9765737C23719209A7860C982AA634B358E998386B2307DC994F1A4A2F1D182A8EF23429952D663B1737B2B025179FFF67A18357B36433590B8012EEC9B7FA1128B56B2A926B2D9B86A60CF35FD1C44DB8C3062E4067BD815090224DA631A00FC46186230FE52CAB341270390C00E4952557046137957C428CBAC6C25E9EBB3A5DFCCE9C7BAB51A61541E59998760F853CAC6D1478422B38B89557247388A414CE19386F01DC1C19489A29AA1123C04AFB8143E1542B45350E7A853302441D1BB836C6C97F4AA08138338A8A2238C7682C3D1C6EBE63A1E74390E2A47442C3718E61CB869B35E8FAA1D80A027AB585AAC62219A602941CC7EE60B22E97A1851225AF77082C3039E0B84035ECA9C7D2432253B80C0BCAD6E20BEC482A18500BDF75C6820A6C2F2C945A13BD2A0CB5188300D5CBCCB7B3846AF78647413DE8047CF0F9954A8804F889165374A9F5341D93AC6DF3995EF2396850AC793DE83B11A72EBFA673DFF04B868199BDC60FD44029BED01428957D505C685CFC6DFE04AF468735620B96BCA9B1B6298007EC026C54C0CF6476F2B995CC35992C791E80146E957893B744C409564D1025CE8B957FED9B95EDF00CC2B36D0F891EC7EBC545B4889BE31F5052BDE7360B0C69BD280255F5E5C66A655FC857AB5B6230000A2B2A587313D582350A35A0DA4F28F3B738989C22E25490C08456556A5A47BDE0651C9468AB297480CC3056B5AA2326F927BC19B406E41D4663CFDD00CF39A2154FC9439908020CC724C6D67E7CF77248A39C05004FF9F7A8D1569AD8B3866675AC6DF8757CE8C492460227D3A6A7D089D850BCEB770EE8B25276336C488B648CD7284AA54668E074E41A27C6E2972F922705108DF582CC713C3B981110E522A9F3873B3F345D1AB01705535A151BC92A1A0C6D126810D88B52EAA83597CC5EA7286CA243ED1542929CCFC835CC7F279A70119D3C8933015C4DD78A4C5D1184CD86AF06B6806F578AC5C4949F468AAFFC0E74FB989F760EA3525D933A0B939400D62B5681968F0012885B042481724D0DCC1A994336A37B1CB866926D331F705775B0439819393C790C78808385A0E86D92F100D95A5E5C0325F8A42E7243266D477C8FA60AF2D1C0DA05B697B945C2C1BAE9D73ACADA3C73344A7E08793D1186031449B291323A8568EBC450F82B71B7882A76991BCCB55FB70C83766713704094F4F54C0765C8E85966AA95AE0CB02360903BF5D86D2B33347D93C080A575894A2A67F32FD5A279E4B269E1896E788807BF2BACB2B3402F88B3D3193B7BB005D36752D1F47DFDC5804FD2751AA5324BCB360CE87A57B05E25467D8C76A42E574757783DF6AC54A366CFF62B52EA836C833790DA23483FE05A7B2B46DF986BF920C755064358445C7A003B0A4016A8D9597FB60020D348DFE806684B6CD9E8582CB1380DB26B99609452339C216A28924BC691C5C263345BD2600C3080C51B274C119606F08C628AC2C4A49565704BC16D4143EFD78844472C68E56869A599CA3A1B3831B6B170436BECAD6EB880F6C5C787674DE25202DA3C86ACC00B9FA61E0A3B6FD34AA616D95F08F09A12C896EF0C603D639676A658F2F45ACA340BDF05CCB4C72B88438369F974D8EB46732128004B27430A3B73B983FCF4276A25539DD191AE78C897266A8F31A728871CACE5B027D714A85519F57C713A1171205CBD0924CED5D7A7C6FAA0CC502EE59583C5E4848370CA25E55A554822C3C2248DE70983F16E51240D35783061AC2D7883CD90514CF2847A6ED46437427AB5E06AF5561B41AB5189853817AB6062F8BC9509AB9239BEF180319BA98C0F9B4D85D7A258B00AD2F9ADF9BCA3F1D13AAE149092769EEC263733D38CD10B56152A40703B75C0D65ACFE10932827C9B29719C6808F67112206284CF942870AA86DCB549E8023CD47608A98182ACB627DF216FC4423844D746F9993302C88FD796273A7BB18EB31B2F02A9B63CC9731A267B5C544BE82465BA1F41A1171DF44BEF444554CBC2D2AAB729EAAB510C0FDC3A8018760CAA37359A2882E3B286C7582E1EB08558F55207673BD8818E3FD98F59B913349AC15DCACDFCA901F8D63D779774521A0A02E1AB32F77AF11823BA6BCC0E5093B2F7A50099787A719350B64D2860751321AAD6C17089E3408034B708C4390A32C9EC01D094B01A4E40A0F49A5BD649BDF9F0004ADB73611C50C2C927B76C31B211B7381B9B76A521EF876D2CDB280498BC3C4261F544399F1803E2A8950B9B7F056ABFBFCC7BD380A3D4FB14C4894D8D9C2B98DC5E3BBC4057252563C58C1587C7C2F78360785A65C7793E34BAC4F616F148CAD29A6851431C948C6DA3E42B3AB7BDC07A3B0C6A6496963B49AA5F1BE56D28E64D6639CB85A2540771671C0C021098A1A0489CB7C579B33106E2D815FFE6AAB3466742E63C20062857C8B1E770CFE537C1A2E20085D3BEA8FB986C856F3BB3A50CF874034556AA564752579457BB3DDA316A5CF044F2A9B3397BA543B4BF51BA2C640698160AB9D7298753DB22F2B16EE5B433C7D08845BA32F05006AC1C9899371D63A2779DE5803B3307082382EE805E00ADA6B2D0788CBCC3DBB9C003B38AF549B83ED6B119850E4D2B360A0230677A85894A882338781B6BA9AAE3023F5B401460BE97E2ABB95B862C54269161334D5A64557656141C421D497476D81E04ABC47AE1B42025B6B91607DD14277DF333F252AF596606C0777893142CC7BC685C4C931B37A0AFB37A633B2FF7A4B49FE55BD9E55F9FDCB22C45A6DA169A49D44DAEC44567C651FBC368336CAFB82467733A28E94A23E3E1AC6D901AAFC86809683365DA7396678B1FD27AF5B9C52AA7BD02171DB9E80FC0B04E502B723A5C0552947D3FC488181297DCD41D0C42A232034621A1655C36A6973C4D9AD47B60A78F3A680709E83C4D93CDBC96BCCFB06128E9358EB98B41119FE7D29C7F315C92A17B34D666AC5AB49DD65B6021653C558DBE0C79A65BBA23D683687325D7A004AC53B20FB6601D2606AC6872DDAC03CA86BC3DB47F19A828B8A35CE7293E3E1A3B269B4488E1A30B9D15152B039DF36221FB7184EA150EAC2E80F0C5255DFC4C9A542B9953E6272210BAEE60864394042F2E190EDAC61E3C72AC42214318C84151D6E12D56CAB2AB6EAE982DDA0008CF1BDC59B5C8AC88BA11F169798AA56374ED7A550BC4F552",
                "ek": "52339C216A28924BC691C5C263345BD2600C3080C51B274C119606F08C628AC2C4A49565704BC16D4143EFD78844472C68E56869A599CA3A1B3831B6B170436BECAD6EB880F6C5C787674DE25202DA3C86ACC00B9FA61E0A3B6FD34AA616D95F08F09A12C896EF0C603D639676A658F2F45ACA340BDF05CCB4C72B88438369F974D8EB46732128004B27430A3B73B983FCF4276A25539DD191AE78C897266A8F31A728871CACE5B027D714A85519F57C713A1171205CBD0924CED5D7A7C6FAA0CC502EE59583C5E4848370CA25E55A554822C3C2248DE70983F16E51240D35783061AC2D7883CD90514CF2847A6ED46437427AB5E06AF5561B41AB5189853817AB6062F8BC9509AB9239BEF180319BA98C0F9B4D85D7A258B00AD2F9ADF9BCA3F1D13AAE149092769EEC263733D38CD10B56152A40703B75C0D65ACFE10932827C9B29719C6808F67112206284CF942870AA86DCB549E8023CD47608A98182ACB627DF216FC4423844D746F9993302C88FD796273A7BB18EB31B2F02A9B63CC9731A267B5C544BE82465BA1F41A1171DF44BEF444554CBC2D2AAB729EAAB510C0FDC3A8018760CAA37359A2882E3B286C7582E1EB08558F55207673BD8818E3FD98F59B913349AC15DCACDFCA901F8D63D779774521A0A02E1AB32F77AF11823BA6BCC0E5093B2F7A50099787A719350B64D2860751321AAD6C17089E3408034B708C4390A32C9EC01D094B01A4E40A0F49A5BD649BDF9F0004ADB73611C50C2C927B76C31B211B7381B9B76A521EF876D2CDB280498BC3C4261F544399F1803E2A8950B9B7F056ABFBFCC7BD380A3D4FB14C4894D8D9C2B98DC5E3BBC4057252563C58C1587C7C2F78360785A65C7793E34BAC4F616F148CAD29A6851431C948C6DA3E42B3AB7BDC07A3B0C6A6496963B49AA5F1BE56D28E64D6639CB85A2540771671C0C021098A1A0489CB7C579B33106E2D815FFE6AAB3466742E63C20062857C8B1E770CFE537C1A2E20085D3BEA8FB986C856F3BB3A50CF874034556AA564752579457BB3DDA316A5CF044F2A9B3397BA543B4BF51BA2C640698160AB9D7298753DB22F2B16EE5B433C7D08845BA32F05006AC1C9899371D63A2779DE5803B3307082382EE805E00ADA6B2D0788CBCC3DBB9C003B38AF549B83ED6B119850E4D2B360A0230677A85894A882338781B6BA9AAE3023F5B401460BE97E2ABB95B862C54269161334D5A64557656141C421D497476D81E04ABC47AE1B42025B6B91607DD14277DF333F252AF596606C0777893142CC7BC685C4C931B37A0AFB37A633B2FF7A4B49FE55BD9E55F9FDCB22C45A6DA169A49D44DAEC44567C651FBC368336CAFB82467733A28E94A23E3E1AC6D901AAFC86809683365DA7396678B1FD27AF5B9C52AA7BD02171DB9E80FC0B04E502B723A5C0552947D3FC488181297DCD41D0C42A232034621A1655C36A6973C4D9AD47B60A78F3A680709E83C4D93CDBC96BCCFB06128E9358EB98B41119FE7D29C7F315C92A17B34D666AC5AB49DD65B6021653C558DBE0C79A65BBA23D683687325D7A004AC53B20FB6601D2606AC6872DDAC03CA86BC3DB47F19A828B8A35CE7293E3E1A3B269B4488E1A30B9D15152B039DF36221FB7184EA150EAC2E80F0C5255DFC4C9A542B9953E627",
                "tcId": 30,
                "z": "AB6EAE982DDA0008CF1BDC59B5C8AC88BA11F169798AA56374ED7A550BC4F552"
              }
            ],
            "mode": "keyGen",
            "n_cases_upstream": 25,
            "parameterSet": "ML-KEM-768",
            "revision": "FIPS203"
          },
          "acvp_full_file_bytes": 558841,
          "acvp_full_file_sha256": "d7a62a2c3476957f56dd8d24f9004ea6776ccfe995ffe71a65bb9506dc9c7b1b",
          "fips203_page_title": "FIPS 203, Module-Lattice-Based Key-Encapsulation Mechanism Standard | CSRC"
        }
      ],
      "status": "OK"
    }
  },
  "determinism_guard": {
    "derived": {
      "both_runs_nonempty": false,
      "deterministic": false,
      "digests_equal": true,
      "n_vector_sets": 0,
      "n_vector_sets_as_claimed": false
    },
    "raw": {
      "n_vector_sets": 0,
      "n_vector_sets_claimed": 10000,
      "run_a": {
        "bytes": 0,
        "exit_code": 127,
        "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
      },
      "run_b": {
        "bytes": 0,
        "exit_code": 127,
        "sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
      }
    },
    "reason": "at least one run produced no bytes, so the comparison that found them equal compared nothing",
    "sha256_of_empty": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
    "verdict": "UNSUPPORTED",
    "why": "two runs of a binary that does not exist produce two empty files, and `cmp` calls them identical. The digests DO agree -- on the digest of nothing. `deterministic` is false only because `both_runs_nonempty` is checked first."
  },
  "honest_scope": {
    "cloud_logs_read_records_not_logs": "The `cloud_logs` connector fetches badge images and the coverage records underneath them. It fetches no build-log body, because this target has none: it has never run a hosted CI job. The DoD's `cloud logs` kind is satisfied by the hosted quality records that exist, and the distinction is stated rather than glossed.",
    "encapsulation_was_not_tested": "C2's measurement is ML-KEM keyGen only. NIST publishes encapDecap vectors too and they were not run, so the identification finding rests on key generation and on one reverted line, not on the whole KEM.",
    "no_claim_about_the_targets_correctness": "Nothing in this BOM says the target's cryptography is wrong. C2 is about an IDENTIFICATION on a front page, and the measurement runs in the target's favour: its key generation reproduces NIST's ML-KEM-768 vectors exactly. The finding is that the sentence a buyer would read says something else.",
    "only_ref_was_built": "C5's sentence names `ref/` OR `avx2/` and only `ref/` was attempted, so the nine executables counted are one directory's. The README's Prerequisites section (lines 31-47) tells macOS users to export CFLAGS for OpenSSL; that is not a workaround for this failure -- the target's Makefile uses `CFLAGS +=`, so an exported CFLAGS still inherits `-z noexecstack` -- but it was not quoted and a reader should know it exists.",
    "shake128_was_not_tested": "C7's quoted claim says the deterministic bytes come from SHAKE128 on empty input. What was measured is that two runs are byte-identical and that 10000 vector sets appear. Any seeded PRNG passes that; the SHAKE128 mechanism is NOT tested here.",
    "the_blind_override_did_not_fire_in_this_run": "Rule 5 -- a blind connector forces UNVERIFIABLE -- is applied to every row and changed no verdict here, because every connector had at least one probe that answered. Q2 is UNVERIFIABLE by its OWN rule, from probe-level blindness (a 401 and a 200-with-HTML among three endpoints), not by the override. Each connector publishes `n_blind_probes` so the aggregation is visible.",
    "the_checker_verifies_inference_not_observation": "The checker re-derives every derived field from the raw fields and re-applies every verdict rule. It catches a verdict that does not follow from the measurements. It cannot catch a producer that lies about what it observed, and nothing here claims otherwise.",
    "the_claim_set_is_a_selection": "Eight material claims were taken from the target's README. They are the ones a buyer prices -- identification, build, self-test, determinism, CI, coverage, maintenance -- and they are not everything the repository asserts. The selection is an input to this BOM and nothing in the checker can validate it.",
    "the_gate_replays": "`make claimbom-gate` reaches no network and runs no compiler. It replays the committed capture through the same connector parsers, rebuilds the BOM, requires it to be byte-identical to the published one, and runs the trusted checker over it and over a corpus of forgeries. The live run is `make claimbom-live`; the capture is its evidence. What a third party re-derives independently is the upstream SHA-256s, the pinned target commit, and a re-run.",
    "the_platform_findings_are_platform_findings": "C5 is REFUTED on Darwin/arm64 with Apple clang and says so in the row: `-z noexecstack` is a GNU-ld option and `test/cpucycles.h` is x86 inline assembly. The README names macOS explicitly, which is what makes this a refutation rather than a portability note, but nothing here was run on Linux and no claim is made about Linux.",
    "the_self_test_ran_on_a_build_the_readme_does_not_document": "C1, C6 and C7 are measured on binaries the DOCUMENTED command did not produce. It produced none: the documented `make` exits 2 on this platform. The measurements come from the deviated build -- the target's own CFLAGS with `-z noexecstack` removed and nothing else -- and every one of those three rows is a statement about that build, not about the one the README describes."
  },
  "host": {
    "arch": "arm64",
    "cc": "Apple clang version 17.0.0 (clang-1700.3.19.1)",
    "os": "Darwin",
    "python": "3.11.14",
    "release": "25.6.0"
  },
  "mode": "live",
  "rows": [
    {
      "blind_connectors": [],
      "derived": {
        "all_matched": true,
        "c90_files_compiled": 11,
        "c90_first_error": "'long long' is an extension when C99 mode is not enabled [-Werror,-Wlong-long]",
        "c90_pedantic_compiles": false,
        "counterfactual_anchor_found": true,
        "counterfactual_breaks_the_match": true,
        "counterfactual_n_cases": 5,
        "counterfactual_n_matched": 0,
        "harness_ran": true,
        "n_cases": 5,
        "n_matched": 5,
        "sizes_equal_mlkem768": true
      },
      "id": "M-C1-mlkem-c90-identification",
      "is_material_claim": true,
      "kind": "standards-conformance",
      "materiality": "Identifies the algorithm and the language standard; `secure` and `fast` are not tested here and the reason says so.",
      "needs": [
        "regulatory_docs",
        "github"
      ],
      "problem_digest": "e36cf37f0caabb81b257097d8af5ea3b26bcc48c8a334bd7376ed6e3080dcea5",
      "raw": {
        "acvp_cases": [
          {
            "alg": "ML-KEM-768",
            "exit_code": 0,
            "nist_dk": "3808B98D9A093C7853B0B814D1CA5F392677D3D0A38F81C852F95B9A69B374A24588C0ADD5B510BE567C5A24688EC91ED0F28BB4C86978C09793795C36B94E5DD8498EB4353FF40EA87B17E921B5B4CBA08E5B7BE5A9C8BC69AC5AC3075DD947D04B8695097AC39790A0C8ABE11200C9F136ED7B0C10077E36111C1F139D9BD27142993F5883925C4918413CB8043962A28567397A1C7E003BAC30644055155CE9464E623FC5E2160CD1143FD2C90C03A08D0B333FBB40A308CACD81618674B406809790B2538D30431F064F65EBBA7C41B2A53146A3ABCA66754CAE591534045C1D640D6308472EBCA660A8A7D372470D3869115B8860B577311980B2C66B8352229ABC17B0C31F58E5A5EBDBCA6E3B157D9CA79EE890778A4CF28429C2A82C80DC9C524B0864E385E355BD4E65732D395E464070F61828E57C3E1BE2A50052C4FF1951F5D0C89720987D8941F085871113A91F518FC79B7189056990B2447BF54FC170C932E0A4E0F7A262542F56D1B49EEBC392106D93C77DE9186DFBB824E73B2F7FC796B312875B43414877AFB356214492C19C748DD381BC7A9237BF097CC606A03119A240A5536AC7844F6A79D0E2B821B68D96542450179BCCA231F2DA68C5EB6D118B99A1B66EAA566C78A9009008B0D66155BA4839F8E518C650177DEC170EB09E8BF6A89905320590C642B801CF5B5151C2AF3E7271CB9961C65A5BD17479429A31BE9081F2767D94816C16D1B04772012382B689AB2D3FB9BDC66547BFEB23052600BB369771494D9C914EC93A066ABC9611940B947310DA04197312425D736A1933B785C95DC430791E42CD691C79BA63BE06EC80765C9C07053EAC706697F21720C672B9803DF9935532197B0485BBE42B0DD16561AC0605E9DA73C189C9E29ABA3AECA19C21621B209326418543C44B88843EB3720A2CEC3DB52C59D6507EE5CB03C268B31FC4BF115695EB0B8AD3F11FEDEA1A5D0724A5D5284D0C10E9844D0D32BB5735448421BC5317650BEAC4829B234B787339812F2316ACE8C22C42D6346214934FC0B49ECCBDF8DA19AEE64DE9628C4F7AB3E512A399B0C227B677AC4A69891A6874F6641D2CC95460B751E17E434C924B2947D806856665696E3CC4DB9553B81606C31C3800B48756A073BF685EEA20899C176769E902DB971827D153B9C33516E959C6B469841946C0D921A371A5DE9740C6AB9CA272B5850BA8753CA023A460EBF7BD573C0745F40B90F105EE17C19B6832E019B80F8858BB515F7C709E68F29C1375B22567AFE7B528F4431A94B553DF825CDEB84B4EA9296EAB9AD66271EEC5AEF6F79509A20A182279FDF92F87FB6E7509968D22CA750B5056974841B9654E5716BDC33A2C6A116A4117FA757A1D22710668412B8878E134B70FE32158A2317FBC62F01371296AA42E33C903E0C439F19684B11E2F911F7FB79860C8800F9CA146EABE29DB07237AABB503A9BE2AA7263A0626C162A27537775792B2E7B0FD347929934AD8F521D4159059F611312AB903879490059BE8B38920E2CB4A256B8B35783E909346D13E9888BEB9350369F7C1A8501331110C651621A616B365A026D1CC47DF440C9E650DD0C0BFC8295439114528C793778741B80B02B4339F2AA4347255B099F17264E1B8CC0A2C7C2A1A79F7997B907FD0496C6E6C8AD7714F5F339D75F11F625591A869BE1175AE47F05FD4313468232BA6957D7807B824F445AC99A0D568AB1AD54DCA8249D1482E61275F52248C77F61A4248753188CD1794CD0A465EC0DC4B025985C461B74E76286E4C37E77405695CC9FD0654374B427A20343AEC0FF1A187768273BFC4905472A1DA387F14559D6CE87313F6A5B6138434539F9A13684055B177E543F8B40F432ABD7CC49989A50A9084C660913F45A8593B17499BC4CF936C2BC1851421CB986808A0EF30AFE97AAB5B8B8EB3F0B3506A95B91563A0E57DB7231044987EF141BDAB3537C316AD16F17805A81F29329879A94E96157E4B7447F7D59603B21BD896CC47B7CD4E232322EB9C5D2215696BCFFCA3A04EFCC4C5D9CC39AC9A6E8700D38C244B0169E7FA1FE81B4B10365E74E6A1F7F756D11ACDC84043F81006D62995376C22535958FEB53F78117EE0F61C4C862640D06DC57A2B8BE62A41A642AF3BC63F6BAC98BBBBFF70570F37B8F8D9572F2735657A6C98F96CAF57A849868720B2640B8BB2732237A1F984C18872D10289CE43C952C9257E06529AEB76AFD127B17596FD25C5216C9CABD9B18EFC50E87BBB04568BB7D5C4E9288C006483AF5912E19108573700BD10CD77224B80659EA75AA74270B33AC4008B738BFEE271E78658C8742FF13C96AD0781A03C7576CA26DD58B52980BA58C0505E446AFA140CDCEA0490DB1F9B18815D4314B2459CACC562441C91F4084E5426C88E632CF7482E79907911D06473260835D7B85E7856A829AEA0381707B939CE86882CC09C4448C6AE94A9C303107C5667EEFB8DF7763CC21189A3C590C40AA51F491503A7935EC08F4FC300CBE607ED8C9100C29FBF45584B13C8D780069337AEC76C36CEB70373E2AB6E7B934B466F53FB32EAF040055496B8540E23A2A277E534468608D5EC0F8D38CEA5BBB806C1BF4F164F6AC826FE733F95461E29DCC11200C0AADA1B8332023EAB329718CE25CC0A09555903F3578BBC863B1752CA94365DA556DF54C3B7E05CBB7115FBC1B6C57A172C31B9906560C8FB54F3C563A2256CC073243B8179B4A28D60E086CF51082EE429272996F0AABE03BA0EAFD3C8E7D954BD0933E2F60ED0C32CEDE7B820A28E48F3CA3C40913CCCAE2337ABFC59843F08C9863325D65A4E9E15C1F46172B118B2B5EB0F1D5158A00134F27B085488C3A0621FE4E5678698250FB74EE5152E3E35A66544A05D279EA99131FBC15165060B90F88EEB7B20892A4DE4CB1683495BD7DA037966B47CC040F1764C5DEB06B5499D4267391CEBBB47F734D8539E39528436A1858182854BF20B1F93279AFB706464C65CCC5AE099B37CC03556C26ABF4C3F8B9BA3A936707211A49A59B268F5284F7970C77612719450377417428C4BA47C9CA115CF95304C4759C5D8859B44985C06A6C924689237BA320D610960D61C53E85431789E67A40113F167FF93429C264F6CABC95448C903437D39A6577BE0CF0012852AA476351A9046A110A1A625A3D74C910B78BCE9CFCA735E4F91B8A4C57DBE489E849446098AACF73070AEE638FCC8896473D3C159D3AFB4B687B40DFBF371A9C2644B605187B71A14BC4C8678FE824781E66EF5A7A221619F6A64039CC369843E10DF5C859F6959CC3FD8E5272330FD1CDACB8740C0B87C4A379575F187B367CBFA3B300BF591B109F79816E9CBE8F0",
            "nist_ek": "28C793778741B80B02B4339F2AA4347255B099F17264E1B8CC0A2C7C2A1A79F7997B907FD0496C6E6C8AD7714F5F339D75F11F625591A869BE1175AE47F05FD4313468232BA6957D7807B824F445AC99A0D568AB1AD54DCA8249D1482E61275F52248C77F61A4248753188CD1794CD0A465EC0DC4B025985C461B74E76286E4C37E77405695CC9FD0654374B427A20343AEC0FF1A187768273BFC4905472A1DA387F14559D6CE87313F6A5B6138434539F9A13684055B177E543F8B40F432ABD7CC49989A50A9084C660913F45A8593B17499BC4CF936C2BC1851421CB986808A0EF30AFE97AAB5B8B8EB3F0B3506A95B91563A0E57DB7231044987EF141BDAB3537C316AD16F17805A81F29329879A94E96157E4B7447F7D59603B21BD896CC47B7CD4E232322EB9C5D2215696BCFFCA3A04EFCC4C5D9CC39AC9A6E8700D38C244B0169E7FA1FE81B4B10365E74E6A1F7F756D11ACDC84043F81006D62995376C22535958FEB53F78117EE0F61C4C862640D06DC57A2B8BE62A41A642AF3BC63F6BAC98BBBBFF70570F37B8F8D9572F2735657A6C98F96CAF57A849868720B2640B8BB2732237A1F984C18872D10289CE43C952C9257E06529AEB76AFD127B17596FD25C5216C9CABD9B18EFC50E87BBB04568BB7D5C4E9288C006483AF5912E19108573700BD10CD77224B80659EA75AA74270B33AC4008B738BFEE271E78658C8742FF13C96AD0781A03C7576CA26DD58B52980BA58C0505E446AFA140CDCEA0490DB1F9B18815D4314B2459CACC562441C91F4084E5426C88E632CF7482E79907911D06473260835D7B85E7856A829AEA0381707B939CE86882CC09C4448C6AE94A9C303107C5667EEFB8DF7763CC21189A3C590C40AA51F491503A7935EC08F4FC300CBE607ED8C9100C29FBF45584B13C8D780069337AEC76C36CEB70373E2AB6E7B934B466F53FB32EAF040055496B8540E23A2A277E534468608D5EC0F8D38CEA5BBB806C1BF4F164F6AC826FE733F95461E29DCC11200C0AADA1B8332023EAB329718CE25CC0A09555903F3578BBC863B1752CA94365DA556DF54C3B7E05CBB7115FBC1B6C57A172C31B9906560C8FB54F3C563A2256CC073243B8179B4A28D60E086CF51082EE429272996F0AABE03BA0EAFD3C8E7D954BD0933E2F60ED0C32CEDE7B820A28E48F3CA3C40913CCCAE2337ABFC59843F08C9863325D65A4E9E15C1F46172B118B2B5EB0F1D5158A00134F27B085488C3A0621FE4E5678698250FB74EE5152E3E35A66544A05D279EA99131FBC15165060B90F88EEB7B20892A4DE4CB1683495BD7DA037966B47CC040F1764C5DEB06B5499D4267391CEBBB47F734D8539E39528436A1858182854BF20B1F93279AFB706464C65CCC5AE099B37CC03556C26ABF4C3F8B9BA3A936707211A49A59B268F5284F7970C77612719450377417428C4BA47C9CA115CF95304C4759C5D8859B44985C06A6C924689237BA320D610960D61C53E85431789E67A40113F167FF93429C264F6CABC95448C903437D39A6577BE0CF0012852AA476351A9046A110A1A625A3D74C910B78BCE9CFCA735E4F91B8A4C57DBE489E849446098AACF73070AEE638FCC8896473D3C159D3AFB4B687B40DFBF371A9C2644B605187B71A14BC4C8678FE8247",
            "target_dk": "3808b98d9a093c7853b0b814d1ca5f392677d3d0a38f81c852f95b9a69b374a24588c0add5b510be567c5a24688ec91ed0f28bb4c86978c09793795c36b94e5dd8498eb4353ff40ea87b17e921b5b4cba08e5b7be5a9c8bc69ac5ac3075dd947d04b8695097ac39790a0c8abe11200c9f136ed7b0c10077e36111c1f139d9bd27142993f5883925c4918413cb8043962a28567397a1c7e003bac30644055155ce9464e623fc5e2160cd1143fd2c90c03a08d0b333fbb40a308cacd81618674b406809790b2538d30431f064f65ebba7c41b2a53146a3abca66754cae591534045c1d640d6308472ebca660a8a7d372470d3869115b8860b577311980b2c66b8352229abc17b0c31f58e5a5ebdbca6e3b157d9ca79ee890778a4cf28429c2a82c80dc9c524b0864e385e355bd4e65732d395e464070f61828e57c3e1be2a50052c4ff1951f5d0c89720987d8941f085871113a91f518fc79b7189056990b2447bf54fc170c932e0a4e0f7a262542f56d1b49eebc392106d93c77de9186dfbb824e73b2f7fc796b312875b43414877afb356214492c19c748dd381bc7a9237bf097cc606a03119a240a5536ac7844f6a79d0e2b821b68d96542450179bcca231f2da68c5eb6d118b99a1b66eaa566c78a9009008b0d66155ba4839f8e518c650177dec170eb09e8bf6a89905320590c642b801cf5b5151c2af3e7271cb9961c65a5bd17479429a31be9081f2767d94816c16d1b04772012382b689ab2d3fb9bdc66547bfeb23052600bb369771494d9c914ec93a066abc9611940b947310da04197312425d736a1933b785c95dc430791e42cd691c79ba63be06ec80765c9c07053eac706697f21720c672b9803df9935532197b0485bbe42b0dd16561ac0605e9da73c189c9e29aba3aeca19c21621b209326418543c44b88843eb3720a2cec3db52c59d6507ee5cb03c268b31fc4bf115695eb0b8ad3f11fedea1a5d0724a5d5284d0c10e9844d0d32bb5735448421bc5317650beac4829b234b787339812f2316ace8c22c42d6346214934fc0b49eccbdf8da19aee64de9628c4f7ab3e512a399b0c227b677ac4a69891a6874f6641d2cc95460b751e17e434c924b2947d806856665696e3cc4db9553b81606c31c3800b48756a073bf685eea20899c176769e902db971827d153b9c33516e959c6b469841946c0d921a371a5de9740c6ab9ca272b5850ba8753ca023a460ebf7bd573c0745f40b90f105ee17c19b6832e019b80f8858bb515f7c709e68f29c1375b22567afe7b528f4431a94b553df825cdeb84b4ea9296eab9ad66271eec5aef6f79509a20a182279fdf92f87fb6e7509968d22ca750b5056974841b9654e5716bdc33a2c6a116a4117fa757a1d22710668412b8878e134b70fe32158a2317fbc62f01371296aa42e33c903e0c439f19684b11e2f911f7fb79860c8800f9ca146eabe29db07237aabb503a9be2aa7263a0626c162a27537775792b2e7b0fd347929934ad8f521d4159059f611312ab903879490059be8b38920e2cb4a256b8b35783e909346d13e9888beb9350369f7c1a8501331110c651621a616b365a026d1cc47df440c9e650dd0c0bfc8295439114528c793778741b80b02b4339f2aa4347255b099f17264e1b8cc0a2c7c2a1a79f7997b907fd0496c6e6c8ad7714f5f339d75f11f625591a869be1175ae47f05fd4313468232ba6957d7807b824f445ac99a0d568ab1ad54dca8249d1482e61275f52248c77f61a4248753188cd1794cd0a465ec0dc4b025985c461b74e76286e4c37e77405695cc9fd0654374b427a20343aec0ff1a187768273bfc4905472a1da387f14559d6ce87313f6a5b6138434539f9a13684055b177e543f8b40f432abd7cc49989a50a9084c660913f45a8593b17499bc4cf936c2bc1851421cb986808a0ef30afe97aab5b8b8eb3f0b3506a95b91563a0e57db7231044987ef141bdab3537c316ad16f17805a81f29329879a94e96157e4b7447f7d59603b21bd896cc47b7cd4e232322eb9c5d2215696bcffca3a04efcc4c5d9cc39ac9a6e8700d38c244b0169e7fa1fe81b4b10365e74e6a1f7f756d11acdc84043f81006d62995376c22535958feb53f78117ee0f61c4c862640d06dc57a2b8be62a41a642af3bc63f6bac98bbbbff70570f37b8f8d9572f2735657a6c98f96caf57a849868720b2640b8bb2732237a1f984c18872d10289ce43c952c9257e06529aeb76afd127b17596fd25c5216c9cabd9b18efc50e87bbb04568bb7d5c4e9288c006483af5912e19108573700bd10cd77224b80659ea75aa74270b33ac4008b738bfee271e78658c8742ff13c96ad0781a03c7576ca26dd58b52980ba58c0505e446afa140cdcea0490db1f9b18815d4314b2459cacc562441c91f4084e5426c88e632cf7482e79907911d06473260835d7b85e7856a829aea0381707b939ce86882cc09c4448c6ae94a9c303107c5667eefb8df7763cc21189a3c590c40aa51f491503a7935ec08f4fc300cbe607ed8c9100c29fbf45584b13c8d780069337aec76c36ceb70373e2ab6e7b934b466f53fb32eaf040055496b8540e23a2a277e534468608d5ec0f8d38cea5bbb806c1bf4f164f6ac826fe733f95461e29dcc11200c0aada1b8332023eab329718ce25cc0a09555903f3578bbc863b1752ca94365da556df54c3b7e05cbb7115fbc1b6c57a172c31b9906560c8fb54f3c563a2256cc073243b8179b4a28d60e086cf51082ee429272996f0aabe03ba0eafd3c8e7d954bd0933e2f60ed0c32cede7b820a28e48f3ca3c40913cccae2337abfc59843f08c9863325d65a4e9e15c1f46172b118b2b5eb0f1d5158a00134f27b085488c3a0621fe4e5678698250fb74ee5152e3e35a66544a05d279ea99131fbc15165060b90f88eeb7b20892a4de4cb1683495bd7da037966b47cc040f1764c5deb06b5499d4267391cebbb47f734d8539e39528436a1858182854bf20b1f93279afb706464c65ccc5ae099b37cc03556c26abf4c3f8b9ba3a936707211a49a59b268f5284f7970c77612719450377417428c4ba47c9ca115cf95304c4759c5d8859b44985c06a6c924689237ba320d610960d61c53e85431789e67a40113f167ff93429c264f6cabc95448c903437d39a6577be0cf0012852aa476351a9046a110a1a625a3d74c910b78bce9cfca735e4f91b8a4c57dbe489e849446098aacf73070aee638fcc8896473d3c159d3afb4b687b40dfbf371a9c2644b605187b71a14bc4c8678fe824781e66ef5a7a221619f6a64039cc369843e10df5c859f6959cc3fd8e5272330fd1cdacb8740c0b87c4a379575f187b367cbfa3b300bf591b109f79816e9cbe8f0",
            "target_ek": "28c793778741b80b02b4339f2aa4347255b099f17264e1b8cc0a2c7c2a1a79f7997b907fd0496c6e6c8ad7714f5f339d75f11f625591a869be1175ae47f05fd4313468232ba6957d7807b824f445ac99a0d568ab1ad54dca8249d1482e61275f52248c77f61a4248753188cd1794cd0a465ec0dc4b025985c461b74e76286e4c37e77405695cc9fd0654374b427a20343aec0ff1a187768273bfc4905472a1da387f14559d6ce87313f6a5b6138434539f9a13684055b177e543f8b40f432abd7cc49989a50a9084c660913f45a8593b17499bc4cf936c2bc1851421cb986808a0ef30afe97aab5b8b8eb3f0b3506a95b91563a0e57db7231044987ef141bdab3537c316ad16f17805a81f29329879a94e96157e4b7447f7d59603b21bd896cc47b7cd4e232322eb9c5d2215696bcffca3a04efcc4c5d9cc39ac9a6e8700d38c244b0169e7fa1fe81b4b10365e74e6a1f7f756d11acdc84043f81006d62995376c22535958feb53f78117ee0f61c4c862640d06dc57a2b8be62a41a642af3bc63f6bac98bbbbff70570f37b8f8d9572f2735657a6c98f96caf57a849868720b2640b8bb2732237a1f984c18872d10289ce43c952c9257e06529aeb76afd127b17596fd25c5216c9cabd9b18efc50e87bbb04568bb7d5c4e9288c006483af5912e19108573700bd10cd77224b80659ea75aa74270b33ac4008b738bfee271e78658c8742ff13c96ad0781a03c7576ca26dd58b52980ba58c0505e446afa140cdcea0490db1f9b18815d4314b2459cacc562441c91f4084e5426c88e632cf7482e79907911d06473260835d7b85e7856a829aea0381707b939ce86882cc09c4448c6ae94a9c303107c5667eefb8df7763cc21189a3c590c40aa51f491503a7935ec08f4fc300cbe607ed8c9100c29fbf45584b13c8d780069337aec76c36ceb70373e2ab6e7b934b466f53fb32eaf040055496b8540e23a2a277e534468608d5ec0f8d38cea5bbb806c1bf4f164f6ac826fe733f95461e29dcc11200c0aada1b8332023eab329718ce25cc0a09555903f3578bbc863b1752ca94365da556df54c3b7e05cbb7115fbc1b6c57a172c31b9906560c8fb54f3c563a2256cc073243b8179b4a28d60e086cf51082ee429272996f0aabe03ba0eafd3c8e7d954bd0933e2f60ed0c32cede7b820a28e48f3ca3c40913cccae2337abfc59843f08c9863325d65a4e9e15c1f46172b118b2b5eb0f1d5158a00134f27b085488c3a0621fe4e5678698250fb74ee5152e3e35a66544a05d279ea99131fbc15165060b90f88eeb7b20892a4de4cb1683495bd7da037966b47cc040f1764c5deb06b5499d4267391cebbb47f734d8539e39528436a1858182854bf20b1f93279afb706464c65ccc5ae099b37cc03556c26abf4c3f8b9ba3a936707211a49a59b268f5284f7970c77612719450377417428c4ba47c9ca115cf95304c4759c5d8859b44985c06a6c924689237ba320d610960d61c53e85431789e67a40113f167ff93429c264f6cabc95448c903437d39a6577be0cf0012852aa476351a9046a110a1a625a3d74c910b78bce9cfca735e4f91b8a4c57dbe489e849446098aacf73070aee638fcc8896473d3c159d3afb4b687b40dfbf371a9c2644b605187b71a14bc4c8678fe8247",
            "tcId": 26
          },
          {
            "alg": "ML-KEM-768",
            "exit_code": 0,
            "nist_dk": "0E62A20CC7B3062B2EE82CAAC1005F0E9655B03BAAA905AA59283126149B60969B2720563F1BAF1A93908CF41DB362589E9694C3E6734620AF30FCAF3186B5B42B5376390BEF3B4CD1833BADF19DCCB0334A68B1C6541874659FF14CC49357C2B5EAC09DAAA77CACA604242F85039A89FB456DE488FD06137E7C527E76A18B5CA066AC95A93094B300185B001F44CC2505813534A949F335027B6C12DE7C580451A53C499DE6263117A17B5BA64471A97C0579A4FE3B20F5D24569C85D214155B4E9818D9466184C8E2FB843DF396B2AC18FCA8B61B8387A2B3458E9D0AB9E2B751BE34DD5C70132595835DA55D454C301F13B8BA542EBB6C1E86B2F621312E4B80A54E106A7E5743257CB52603A68B4A9F5D195B1283150E48F9766A1BD248438C92084B451EABA445AFC6BB03805B963537AC8255CBA18D4A9832B2752EBD9B5F7B8AA52F5207B82945C473278DC5D7850C0921423587401D9210053C9C9844460917553A60A099449A7B0D360E00044FD9932140CC1D1D444F14010F8F35869A03728951E28B7C203C5CE3F7AA61205D08A15B181C0445AB27E3F889C0E72B050476CFE29420085A09D203B1C73ADB6B59074893BC3A7533758467D6046E3633044C8A1E9BB3824B72EDC7A8391721E01E4A2A214BB71008B1EFA343B064901831B20698D3958991DD9C22058A0AD4A49657B929AD926EE1B608CB29DB3174B27CB09F7A75CE617A21AB971A28BB6445267EBB838DD3B3BB82759C26A021D0382992A6CAD218ABC44A8D9667A07F5040ADCC1423CAE1363729BE457FD94C025E1B48F071140DA992E1A557A7497907CC729E33E773221F79096ED8BB830373CFBE84F5466A02D1302B1C09215983EC0229B61302F77AB4E698016A600CAB1F9729C320F65EC1537733F3976C4AE75723903BD83437B0A519A53E56B5C49C5C15980DC5341BB45305229536D324F513615A459C5D69019DACA536C42427332279BCB8A74503F76A5AB90EC7476105BA69C518921C62AE043B5E91DC958949D57B0BEF7903CF5CFC5A06C0654A60F48388DA4723B5B3A320184FE6755A881B27C2ABE23A0B63338B1EF778DB47B2CDEE043F0F5390C84BAE4D2B3ADB2B67558B567925DA6E1B33CCB3B87126293BAA2A8B18479D65C4BDA14FFF45E64223EA6E455506164F3F453651439D275862937257F666CDC564FFA255ABBB3B6FC8493FEAB7E76E2A17E849044E62A1F980A57BA5B9397271E2B5D5B5063EDAB2098FC561D10C731AA9D7AC13FCBC793EE659D6994BB00D53323232C6A192DCBE39F6193676C69C256E9050DA78EA442078374A27BE054AA30462374B992C8A32F0440E2DCAA70927D06C97EBF4C04C9557A622203187AB514C0284ED45BDFF560F3B3A15A6A6F0A6B098DF3C9BC083348138710D8B5D97A2EBE2A90DE907658F7B8B67865A4BAA111898BDCB5521F209C5801861D394BEDF51B0302888D39A73BCB07E3E99C2174BD080B1EB4086199B4859FD233D9BA3B34A04CCC67BF59896D98675AFC4CB1656005C57BA8CA5A1B085B686A1C27BE292FD3FC0D7594522C9232DE4B09541C3C1C11A2ABE1830AB3BD80B313369407F66C970FF61586A040F7DA4743166BBD4C97F4B57D4DBA6FE40A48498B001A502C28385B74306BBA43C670ACB191FB031C220CA3238AE1CBC961E66898A4C19C0A4BFD076863651FB91A31C75A33DC18B53EC6C56679159783A563C4504CA10D1405C261F8C7FFA87280242EC8BCC3077ABDF371CF55C140D0A131E6529B40788F1943964136000CD7319E05553EA58E5898384822A62B8AB9BD03609F1566F53435C472520D957703090794179EBC73744525A8F002A14270CBD1D4B6E2538353765D49F5651C1C34CC228C4E753C5210BFD00CB378D6A4ECE80168D54A4C62740A0C4A292A42E1621F2C499E4FB94E37912C9CEA7472C65B27F65036E85D5512C38D3582DF290FA819BDF0E37EBA7C2607E6A94A2323A0FB88A6808B2F444E33999F1A10830F715960D563D0A43AAD7AC7F0B4AC4A9A3236286D5249C83DC5C4666354D0EA5FE06530E4081370264566E47ACCBC22380414FF530C394007FE6CA79DB0AC53FB2B06719908D15DDE432F03C84463EC5009D81E9882030360A0FBC34F156391B6E3AC92C795FAA2199BB4A9A33A994A16AEDB6558CE901C4B60295DFA39CDD5B97C9B1E9C3199C825BD64B819D8346B1EAA6A5F5A4BB90A7F32253D7F7BA2778BB796BC707BA53CBA7A36E3682D54C3003F572D2779AD543247C6D78EDB63739E17029594BAC09620651227C8F072C7F51672385F62E06B2C80A4160BC73C8691C5314914F4537266C0D2EC74365B8CEB99C71F076BA772493CB534192A70BD576B1BE0A42D2B87DB45A423309704BA17CBD7CC610095FAB3CA61281AB2949A0D2B548A1110852073A98C4C612BB095D28049201C4F08A6083BBB60A65CBEB81B6D2A40E0D7AB0628B5EE251143812AE9B6524174C420A82D486350954AA1E6442007239FC7ECC969E18507FB55C78CCCA6C18842D745BCD9C425DABA9033B8161374EB63244F2570D228392174545FAA4664A886118A6948451DCDF489A1BAAD5E2B605B4756F3124F80B546FCC61AD30660EC342228ABA6CFCC06E61884F96C7F675711C84451D3902C206B6F1B928A2701C021E42FCB49C28C19414ECB9288C4A51E957B4D742D0E5307D731AE0EEA9D7BC9B48BCB332EFBCC3894AF4986628FF77420B6B8ED75C4F54A063B49265C38CF17B95DE45A64CF30B5EBA5643603B28B2C4948E2A2F1E8C440C54341491B20D378DE5481CDF8310074A69D79767EE1135FD8AAE3934449B406AE447BB33148A08C1C0EE4A615A44C42943CE3D56ED50B77BB7C3D4448C106363472CA0F11F526349C673FC2C8158ACB21BC3BBA9CC39891672FFCB4B3E165E6C4A1D156AD7F7085BBC49AAC5B5AA2682F165560C4132C49E0B12FA4BBF4B40E630B375086B3EFF66B07B0CFBD207D7F1AB67EC580ADA48F36308E1566CF2FF5BD1F84B9161A73014290C384BF9E0B0AA653CE4F8C6D05CB087EF846A1478468E06F81D0B5406B9AC937AFC2795AB4472E0BA964DF4259E849030108D083BA6ADFFC63E4B77126C3BFFE389401E15EC6A88BD0B5B32BD06AEDF80792636F167589C346A6E651009557CA079C593270250D9ACB3A1BB06AF03C65F88D71EA932EB79553D60FD4D34499F23FA3498BBC3A89BE3369661CC2D292221A9B8CF379DF6702808576A37975C9B593EAB54AD4B8936DA5217C6B843AD33D423290E0CCB74DA11B95294FEF12EC690815FF103075053B89C5021AEFF4CA0C012DD6C2F0918B9EB6182474EB86D848F65974759D59CE151A396DEEE4CA10D1",
            "nist_ek": "43166BBD4C97F4B57D4DBA6FE40A48498B001A502C28385B74306BBA43C670ACB191FB031C220CA3238AE1CBC961E66898A4C19C0A4BFD076863651FB91A31C75A33DC18B53EC6C56679159783A563C4504CA10D1405C261F8C7FFA87280242EC8BCC3077ABDF371CF55C140D0A131E6529B40788F1943964136000CD7319E05553EA58E5898384822A62B8AB9BD03609F1566F53435C472520D957703090794179EBC73744525A8F002A14270CBD1D4B6E2538353765D49F5651C1C34CC228C4E753C5210BFD00CB378D6A4ECE80168D54A4C62740A0C4A292A42E1621F2C499E4FB94E37912C9CEA7472C65B27F65036E85D5512C38D3582DF290FA819BDF0E37EBA7C2607E6A94A2323A0FB88A6808B2F444E33999F1A10830F715960D563D0A43AAD7AC7F0B4AC4A9A3236286D5249C83DC5C4666354D0EA5FE06530E4081370264566E47ACCBC22380414FF530C394007FE6CA79DB0AC53FB2B06719908D15DDE432F03C84463EC5009D81E9882030360A0FBC34F156391B6E3AC92C795FAA2199BB4A9A33A994A16AEDB6558CE901C4B60295DFA39CDD5B97C9B1E9C3199C825BD64B819D8346B1EAA6A5F5A4BB90A7F32253D7F7BA2778BB796BC707BA53CBA7A36E3682D54C3003F572D2779AD543247C6D78EDB63739E17029594BAC09620651227C8F072C7F51672385F62E06B2C80A4160BC73C8691C5314914F4537266C0D2EC74365B8CEB99C71F076BA772493CB534192A70BD576B1BE0A42D2B87DB45A423309704BA17CBD7CC610095FAB3CA61281AB2949A0D2B548A1110852073A98C4C612BB095D28049201C4F08A6083BBB60A65CBEB81B6D2A40E0D7AB0628B5EE251143812AE9B6524174C420A82D486350954AA1E6442007239FC7ECC969E18507FB55C78CCCA6C18842D745BCD9C425DABA9033B8161374EB63244F2570D228392174545FAA4664A886118A6948451DCDF489A1BAAD5E2B605B4756F3124F80B546FCC61AD30660EC342228ABA6CFCC06E61884F96C7F675711C84451D3902C206B6F1B928A2701C021E42FCB49C28C19414ECB9288C4A51E957B4D742D0E5307D731AE0EEA9D7BC9B48BCB332EFBCC3894AF4986628FF77420B6B8ED75C4F54A063B49265C38CF17B95DE45A64CF30B5EBA5643603B28B2C4948E2A2F1E8C440C54341491B20D378DE5481CDF8310074A69D79767EE1135FD8AAE3934449B406AE447BB33148A08C1C0EE4A615A44C42943CE3D56ED50B77BB7C3D4448C106363472CA0F11F526349C673FC2C8158ACB21BC3BBA9CC39891672FFCB4B3E165E6C4A1D156AD7F7085BBC49AAC5B5AA2682F165560C4132C49E0B12FA4BBF4B40E630B375086B3EFF66B07B0CFBD207D7F1AB67EC580ADA48F36308E1566CF2FF5BD1F84B9161A73014290C384BF9E0B0AA653CE4F8C6D05CB087EF846A1478468E06F81D0B5406B9AC937AFC2795AB4472E0BA964DF4259E849030108D083BA6ADFFC63E4B77126C3BFFE389401E15EC6A88BD0B5B32BD06AEDF80792636F167589C346A6E651009557CA079C593270250D9ACB3A1BB06AF03C65F88D71EA932EB79553D60FD4D34499F23FA3498BBC3A89BE3369661CC2D292221A9B8CF379DF6702808576A37975C9B593EAB54AD4B8936DA5217C6B843AD33D",
            "target_dk": "0e62a20cc7b3062b2ee82caac1005f0e9655b03baaa905aa59283126149b60969b2720563f1baf1a93908cf41db362589e9694c3e6734620af30fcaf3186b5b42b5376390bef3b4cd1833badf19dccb0334a68b1c6541874659ff14cc49357c2b5eac09daaa77caca604242f85039a89fb456de488fd06137e7c527e76a18b5ca066ac95a93094b300185b001f44cc2505813534a949f335027b6c12de7c580451a53c499de6263117a17b5ba64471a97c0579a4fe3b20f5d24569c85d214155b4e9818d9466184c8e2fb843df396b2ac18fca8b61b8387a2b3458e9d0ab9e2b751be34dd5c70132595835da55d454c301f13b8ba542ebb6c1e86b2f621312e4b80a54e106a7e5743257cb52603a68b4a9f5d195b1283150e48f9766a1bd248438c92084b451eaba445afc6bb03805b963537ac8255cba18d4a9832b2752ebd9b5f7b8aa52f5207b82945c473278dc5d7850c0921423587401d9210053c9c9844460917553a60a099449a7b0d360e00044fd9932140cc1d1d444f14010f8f35869a03728951e28b7c203c5ce3f7aa61205d08a15b181c0445ab27e3f889c0e72b050476cfe29420085a09d203b1c73adb6b59074893bc3a7533758467d6046e3633044c8a1e9bb3824b72edc7a8391721e01e4a2a214bb71008b1efa343b064901831b20698d3958991dd9c22058a0ad4a49657b929ad926ee1b608cb29db3174b27cb09f7a75ce617a21ab971a28bb6445267ebb838dd3b3bb82759c26a021d0382992a6cad218abc44a8d9667a07f5040adcc1423cae1363729be457fd94c025e1b48f071140da992e1a557a7497907cc729e33e773221f79096ed8bb830373cfbe84f5466a02d1302b1c09215983ec0229b61302f77ab4e698016a600cab1f9729c320f65ec1537733f3976c4ae75723903bd83437b0a519a53e56b5c49c5c15980dc5341bb45305229536d324f513615a459c5d69019daca536c42427332279bcb8a74503f76a5ab90ec7476105ba69c518921c62ae043b5e91dc958949d57b0bef7903cf5cfc5a06c0654a60f48388da4723b5b3a320184fe6755a881b27c2abe23a0b63338b1ef778db47b2cdee043f0f5390c84bae4d2b3adb2b67558b567925da6e1b33ccb3b87126293baa2a8b18479d65c4bda14fff45e64223ea6e455506164f3f453651439d275862937257f666cdc564ffa255abbb3b6fc8493feab7e76e2a17e849044e62a1f980a57ba5b9397271e2b5d5b5063edab2098fc561d10c731aa9d7ac13fcbc793ee659d6994bb00d53323232c6a192dcbe39f6193676c69c256e9050da78ea442078374a27be054aa30462374b992c8a32f0440e2dcaa70927d06c97ebf4c04c9557a622203187ab514c0284ed45bdff560f3b3a15a6a6f0a6b098df3c9bc083348138710d8b5d97a2ebe2a90de907658f7b8b67865a4baa111898bdcb5521f209c5801861d394bedf51b0302888d39a73bcb07e3e99c2174bd080b1eb4086199b4859fd233d9ba3b34a04ccc67bf59896d98675afc4cb1656005c57ba8ca5a1b085b686a1c27be292fd3fc0d7594522c9232de4b09541c3c1c11a2abe1830ab3bd80b313369407f66c970ff61586a040f7da4743166bbd4c97f4b57d4dba6fe40a48498b001a502c28385b74306bba43c670acb191fb031c220ca3238ae1cbc961e66898a4c19c0a4bfd076863651fb91a31c75a33dc18b53ec6c56679159783a563c4504ca10d1405c261f8c7ffa87280242ec8bcc3077abdf371cf55c140d0a131e6529b40788f1943964136000cd7319e05553ea58e5898384822a62b8ab9bd03609f1566f53435c472520d957703090794179ebc73744525a8f002a14270cbd1d4b6e2538353765d49f5651c1c34cc228c4e753c5210bfd00cb378d6a4ece80168d54a4c62740a0c4a292a42e1621f2c499e4fb94e37912c9cea7472c65b27f65036e85d5512c38d3582df290fa819bdf0e37eba7c2607e6a94a2323a0fb88a6808b2f444e33999f1a10830f715960d563d0a43aad7ac7f0b4ac4a9a3236286d5249c83dc5c4666354d0ea5fe06530e4081370264566e47accbc22380414ff530c394007fe6ca79db0ac53fb2b06719908d15dde432f03c84463ec5009d81e9882030360a0fbc34f156391b6e3ac92c795faa2199bb4a9a33a994a16aedb6558ce901c4b60295dfa39cdd5b97c9b1e9c3199c825bd64b819d8346b1eaa6a5f5a4bb90a7f32253d7f7ba2778bb796bc707ba53cba7a36e3682d54c3003f572d2779ad543247c6d78edb63739e17029594bac09620651227c8f072c7f51672385f62e06b2c80a4160bc73c8691c5314914f4537266c0d2ec74365b8ceb99c71f076ba772493cb534192a70bd576b1be0a42d2b87db45a423309704ba17cbd7cc610095fab3ca61281ab2949a0d2b548a1110852073a98c4c612bb095d28049201c4f08a6083bbb60a65cbeb81b6d2a40e0d7ab0628b5ee251143812ae9b6524174c420a82d486350954aa1e6442007239fc7ecc969e18507fb55c78ccca6c18842d745bcd9c425daba9033b8161374eb63244f2570d228392174545faa4664a886118a6948451dcdf489a1baad5e2b605b4756f3124f80b546fcc61ad30660ec342228aba6cfcc06e61884f96c7f675711c84451d3902c206b6f1b928a2701c021e42fcb49c28c19414ecb9288c4a51e957b4d742d0e5307d731ae0eea9d7bc9b48bcb332efbcc3894af4986628ff77420b6b8ed75c4f54a063b49265c38cf17b95de45a64cf30b5eba5643603b28b2c4948e2a2f1e8c440c54341491b20d378de5481cdf8310074a69d79767ee1135fd8aae3934449b406ae447bb33148a08c1c0ee4a615a44c42943ce3d56ed50b77bb7c3d4448c106363472ca0f11f526349c673fc2c8158acb21bc3bba9cc39891672ffcb4b3e165e6c4a1d156ad7f7085bbc49aac5b5aa2682f165560c4132c49e0b12fa4bbf4b40e630b375086b3eff66b07b0cfbd207d7f1ab67ec580ada48f36308e1566cf2ff5bd1f84b9161a73014290c384bf9e0b0aa653ce4f8c6d05cb087ef846a1478468e06f81d0b5406b9ac937afc2795ab4472e0ba964df4259e849030108d083ba6adffc63e4b77126c3bffe389401e15ec6a88bd0b5b32bd06aedf80792636f167589c346a6e651009557ca079c593270250d9acb3a1bb06af03c65f88d71ea932eb79553d60fd4d34499f23fa3498bbc3a89be3369661cc2d292221a9b8cf379df6702808576a37975c9b593eab54ad4b8936da5217c6b843ad33d423290e0ccb74da11b95294fef12ec690815ff103075053b89c5021aeff4ca0c012dd6c2f0918b9eb6182474eb86d848f65974759d59ce151a396deee4ca10d1",
            "target_ek": "43166bbd4c97f4b57d4dba6fe40a48498b001a502c28385b74306bba43c670acb191fb031c220ca3238ae1cbc961e66898a4c19c0a4bfd076863651fb91a31c75a33dc18b53ec6c56679159783a563c4504ca10d1405c261f8c7ffa87280242ec8bcc3077abdf371cf55c140d0a131e6529b40788f1943964136000cd7319e05553ea58e5898384822a62b8ab9bd03609f1566f53435c472520d957703090794179ebc73744525a8f002a14270cbd1d4b6e2538353765d49f5651c1c34cc228c4e753c5210bfd00cb378d6a4ece80168d54a4c62740a0c4a292a42e1621f2c499e4fb94e37912c9cea7472c65b27f65036e85d5512c38d3582df290fa819bdf0e37eba7c2607e6a94a2323a0fb88a6808b2f444e33999f1a10830f715960d563d0a43aad7ac7f0b4ac4a9a3236286d5249c83dc5c4666354d0ea5fe06530e4081370264566e47accbc22380414ff530c394007fe6ca79db0ac53fb2b06719908d15dde432f03c84463ec5009d81e9882030360a0fbc34f156391b6e3ac92c795faa2199bb4a9a33a994a16aedb6558ce901c4b60295dfa39cdd5b97c9b1e9c3199c825bd64b819d8346b1eaa6a5f5a4bb90a7f32253d7f7ba2778bb796bc707ba53cba7a36e3682d54c3003f572d2779ad543247c6d78edb63739e17029594bac09620651227c8f072c7f51672385f62e06b2c80a4160bc73c8691c5314914f4537266c0d2ec74365b8ceb99c71f076ba772493cb534192a70bd576b1be0a42d2b87db45a423309704ba17cbd7cc610095fab3ca61281ab2949a0d2b548a1110852073a98c4c612bb095d28049201c4f08a6083bbb60a65cbeb81b6d2a40e0d7ab0628b5ee251143812ae9b6524174c420a82d486350954aa1e6442007239fc7ecc969e18507fb55c78ccca6c18842d745bcd9c425daba9033b8161374eb63244f2570d228392174545faa4664a886118a6948451dcdf489a1baad5e2b605b4756f3124f80b546fcc61ad30660ec342228aba6cfcc06e61884f96c7f675711c84451d3902c206b6f1b928a2701c021e42fcb49c28c19414ecb9288c4a51e957b4d742d0e5307d731ae0eea9d7bc9b48bcb332efbcc3894af4986628ff77420b6b8ed75c4f54a063b49265c38cf17b95de45a64cf30b5eba5643603b28b2c4948e2a2f1e8c440c54341491b20d378de5481cdf8310074a69d79767ee1135fd8aae3934449b406ae447bb33148a08c1c0ee4a615a44c42943ce3d56ed50b77bb7c3d4448c106363472ca0f11f526349c673fc2c8158acb21bc3bba9cc39891672ffcb4b3e165e6c4a1d156ad7f7085bbc49aac5b5aa2682f165560c4132c49e0b12fa4bbf4b40e630b375086b3eff66b07b0cfbd207d7f1ab67ec580ada48f36308e1566cf2ff5bd1f84b9161a73014290c384bf9e0b0aa653ce4f8c6d05cb087ef846a1478468e06f81d0b5406b9ac937afc2795ab4472e0ba964df4259e849030108d083ba6adffc63e4b77126c3bffe389401e15ec6a88bd0b5b32bd06aedf80792636f167589c346a6e651009557ca079c593270250d9acb3a1bb06af03c65f88d71ea932eb79553d60fd4d34499f23fa3498bbc3a89be3369661cc2d292221a9b8cf379df6702808576a37975c9b593eab54ad4b8936da5217c6b843ad33d",
            "tcId": 27
          },
          {
            "alg": "ML-KEM-768",
            "exit_code": 0,
            "nist_dk": "7A804DFB96B63BA97AF4E35FE6117A82D68509A81C70CB54C68A33280C2640599E918A2074627CC1AC8966A74E08822DC5731E79D82B8DCA0CBBE6C8D1EA6973A970DBB44D5FBA31E14593E9ACBC77F02ACAB7A58D656854F4031DD209A5B33A167943072BBD660B815FD13AAD82A045269A161A86FC5BB72C4CAA704C105C37CF04CC4C8A1643B01C37AF0C8D4D39CA85025665A1B66E907720288BB955A7BBF639123376A3E27D919499BE7A42E1FB09B9AB27029AC076DB2F25147A2BF38F6C5B287BB424BAE821D79875C8C41FB120A1BB957BBB57236684636C758E909120AD01332C60BA5304133CF7837EAC6D31FB7CF160251DA3C4BD1B18B0FA674F1B5ECA1603FCE92928B821A8A68E6A085E98EB2843E722481A0B81E16E2C4BB0F4B0896DBB2C900C8DD7E500A6C84EABB44D4A670D54203E921344C6C1401516AF0168CD1F0821C0FB260044B6F908A68E58170CCB34C4E39919DC747FFA13813240A43631D865ADFE335936034BDA443773B967C8B9636109CCF919A9B6F233F0C3598A7ACC96721CD5489EBDC29549ACC16F0A64C3B0B9C742CD81C504BF6A9898A38D052A36036436655285BC26A249D190E72337D4A0BF191954A5AC76982945205113977A1D6937824C773234CB2EE7716570628BF1048A04B38E5D9C42C3AAAB1581446C3B96CE96674C119A709C0425E6BCE65477252C628C6988DF6316813B6F4D37C9FF339D22A76E3A8A1376498B63AA221FB329EF270614745E94655C6591747DE740586386A6150D66E8557225B38D3173F5816BA12C395C09712A5B289031981C2BC97C51C39499A144C2976305BE1BB08CD6A305212C2136FB8921F337E6D61E8E8ACAA525B8C9C60F3AA66EF9A56DBB247DDD424D67C95DC6B1428AE63CD2A236CCEC911378BAA1E101961864D858682A762113E88F98F25D1ACC9E2E1907536257C3CA97B81091557CA0C691B90DF6B707D55A94413C5382CA4DE2605740156CE738796530781A2E9C629BB1CA0D82B5024A262437243B29E2586F4C8585777EC82898E4942ECD1325D719B21017451B5908691B35722650A81964720ACB595009B99749852035CBD4B1AD51C178E9C97C604FFEF08E7FF4057D274F1E078F46D04298F0CE82A44C8224C31697C25A687DC845B8A55A050D69C6E6A4226759BD0794C5BF0C33CAE843E2FABF738C7957D61206FBACF8B54472C896174195EA8923E3995DE50C9C430C4FD4F81ABD21731DF968E3617575E90A7B430990055068D3390E376FC62490AA97A27F5441A5A149C07344AAB833E19B093FD9BCBC8A05CE1B6FBFFBC7BC424EFC7255178569E2447C59B851E39A2017390B4F230D6DC927BF83BF2F868E104129C5DB003EEC8F9218357A6553EBB41D6CE558CB3B8FF86A3F125A8BED75C675E13A9F343A4B791E7FD87ED4228556A494B5C0CA685AC4AB663527ECCA5E5279F1277AB51186D0EBC50FE5B4B64590F26A87E9049E29735190579DDD194180B60B78579EAD248895C55422A18E59D01E6166BCD19C08D1917280D0265A370D5A34334FC9B29F931C5C68297937198B06791D838492D73C389A9556FA0640E03537F5C744A379892B362B0B1300678F3A7714CDE9B06A8990EAC99A89A12EB606017F841D4BE2100AEB750C3892EF544418216EA437AFFE88059A5A42694089FE7020828160683C0E7EFA4519591A4DAAC30456A5EC2AC39CA0CB3F3920237097E6E5157E1881A09A03AEBA5B9925CC81F20A66D86EC52245E828655032067E8BB813F43BE6DA09FCFA2FC2452EED5CA4DBA87DC306A573911205B53B91187D44214D12CA1147B4174956C2BBF1863D85567B8BA14F24B2B6949F6639288DE34C117391A19B678B3406FF784AB87B66031371BD0073DB89A4ABF597D40213BCD4A93AE834F14A52D527C7486C9DDBF62148036AA55A06ED156A0C0B9366D15B582338BEDB8466317FEC3109139C8CE2C1079A070597C6B712C1B16ACA049F3C8999A95E1DD20163226B96C5724EF6908A9C5DB43637708471E02C31E1B40A226B01DABB057C328717A4BB41F9A32230079A49BEB2E892F9DA40FF947CCA4410497701795C62A113B30AC0A7D143A8CA8C3C0189407F95AB1B05719C1ACCF500676B3596141A409B6C0E952A5F1D456A70492B83C4515DD99B763A24B4C1545ABC8715E61857A89CF6D760D00C7B47D407C1C230C6212215CC805C76979671AF6D3168C73CCA4066233BF66FC1D485E225757783CC0457059CE05B9A2409B7B25415121BB2823B032BB40AD8318A86682A1C9FA6F571A08054939144F1AC2F5D299C97C730F742B75C4521851B8D9FE6AD43121C74AA248B751998A2AD9FB747BCF18AEDB4B4B0E718E979B7F7580C14BA62B42B8997F17E6812BC46AB6799F7519A93BFF43170F2C01B31D96459B7A8956B9DA9B1C2CC7C7E3C849FF326003BA17440539E01498CBA96B0922468DE2345857C3405597AD822004A2B2FBD8723E9F59CFBA30732E3BF68131283B87D05620440A2A7FC3582C20B68D0A8763B5276C12957AFA766C4D0A524800A1D954934FA0CDDD684D85C997BF2C54D8CBCD924B19E731F80B35138752A8E91C0876700F4AC3247BA6DDEBC1657941DFFE96D1803C81B75A6D07CB6CD4C14B8C904020CBB6BDA1D019CC49EC90A12581F944263DFE06DB5E16C94EBA98276B9AC3B13B8A9083AD3190195583EA7A76051A27F2121F46318580C37E50B0429480F7EAC312294CD3C71BDBBB0557C41AFC363A6411805964221D26B0EB7B798CE791EF121BBBAC1BDBB88BD57DCA9114564F4B388B1A2C32912A8BB5C1F21763294498E2B0620F3C085E7C4099D6A3E4FAB7FA12A73E39167BCE99A6F69A293A37EF238CE2ED7A1804A596CA33897F4CB772C4083A55438490D3E1CC1C5E91D9B78A5E67BBE3C7C3B1293CEB0BA7B7E48CB2BCBB30DD70296A17BEF964F265C5A41152964574C0505975DDC10BA9850C6199C83E157F2A74D8FE7496AD2BA6D83586C7624B87C3E00B84B65620DB69643AD9046105B5A6CD8065716C398D0BCE0E1577E3BBE192651692B79DFB747F7621E2C9A87BF2B602105CD893B2BEA50A10D952CC8DBBB1499B9771A3999FB91E0C7438AB641D79A568A375DF1D07E28E2C9C450A72F8C4AA5D71B82A09E1196AA3FCA8E7C684A4DDB635E775FC03604711139F332AE97EA1BA2813B1690BF9CF70F506CBA90641963D5CFAD3698DA30C866C95C66B4846F785CCBF373F4621855FD4815F0920AC4F940CA25DD130DCFA223E9B45F13EE3FD74B1366AFA7F3FFF4B8F645331DB5526FDD7998A4EEB5C27C884DB83A21F601923C559179A3AA5839A148487379EAAD934BF27F3071E1B1FDC21D1A",
            "nist_ek": "3A7714CDE9B06A8990EAC99A89A12EB606017F841D4BE2100AEB750C3892EF544418216EA437AFFE88059A5A42694089FE7020828160683C0E7EFA4519591A4DAAC30456A5EC2AC39CA0CB3F3920237097E6E5157E1881A09A03AEBA5B9925CC81F20A66D86EC52245E828655032067E8BB813F43BE6DA09FCFA2FC2452EED5CA4DBA87DC306A573911205B53B91187D44214D12CA1147B4174956C2BBF1863D85567B8BA14F24B2B6949F6639288DE34C117391A19B678B3406FF784AB87B66031371BD0073DB89A4ABF597D40213BCD4A93AE834F14A52D527C7486C9DDBF62148036AA55A06ED156A0C0B9366D15B582338BEDB8466317FEC3109139C8CE2C1079A070597C6B712C1B16ACA049F3C8999A95E1DD20163226B96C5724EF6908A9C5DB43637708471E02C31E1B40A226B01DABB057C328717A4BB41F9A32230079A49BEB2E892F9DA40FF947CCA4410497701795C62A113B30AC0A7D143A8CA8C3C0189407F95AB1B05719C1ACCF500676B3596141A409B6C0E952A5F1D456A70492B83C4515DD99B763A24B4C1545ABC8715E61857A89CF6D760D00C7B47D407C1C230C6212215CC805C76979671AF6D3168C73CCA4066233BF66FC1D485E225757783CC0457059CE05B9A2409B7B25415121BB2823B032BB40AD8318A86682A1C9FA6F571A08054939144F1AC2F5D299C97C730F742B75C4521851B8D9FE6AD43121C74AA248B751998A2AD9FB747BCF18AEDB4B4B0E718E979B7F7580C14BA62B42B8997F17E6812BC46AB6799F7519A93BFF43170F2C01B31D96459B7A8956B9DA9B1C2CC7C7E3C849FF326003BA17440539E01498CBA96B0922468DE2345857C3405597AD822004A2B2FBD8723E9F59CFBA30732E3BF68131283B87D05620440A2A7FC3582C20B68D0A8763B5276C12957AFA766C4D0A524800A1D954934FA0CDDD684D85C997BF2C54D8CBCD924B19E731F80B35138752A8E91C0876700F4AC3247BA6DDEBC1657941DFFE96D1803C81B75A6D07CB6CD4C14B8C904020CBB6BDA1D019CC49EC90A12581F944263DFE06DB5E16C94EBA98276B9AC3B13B8A9083AD3190195583EA7A76051A27F2121F46318580C37E50B0429480F7EAC312294CD3C71BDBBB0557C41AFC363A6411805964221D26B0EB7B798CE791EF121BBBAC1BDBB88BD57DCA9114564F4B388B1A2C32912A8BB5C1F21763294498E2B0620F3C085E7C4099D6A3E4FAB7FA12A73E39167BCE99A6F69A293A37EF238CE2ED7A1804A596CA33897F4CB772C4083A55438490D3E1CC1C5E91D9B78A5E67BBE3C7C3B1293CEB0BA7B7E48CB2BCBB30DD70296A17BEF964F265C5A41152964574C0505975DDC10BA9850C6199C83E157F2A74D8FE7496AD2BA6D83586C7624B87C3E00B84B65620DB69643AD9046105B5A6CD8065716C398D0BCE0E1577E3BBE192651692B79DFB747F7621E2C9A87BF2B602105CD893B2BEA50A10D952CC8DBBB1499B9771A3999FB91E0C7438AB641D79A568A375DF1D07E28E2C9C450A72F8C4AA5D71B82A09E1196AA3FCA8E7C684A4DDB635E775FC03604711139F332AE97EA1BA2813B1690BF9CF70F506CBA90641963D5CFAD3698DA30C866C95C66B4846F785CCBF373F4621855FD4815F0920AC4F940CA25DD130DCFA223E9B4",
            "target_dk": "7a804dfb96b63ba97af4e35fe6117a82d68509a81c70cb54c68a33280c2640599e918a2074627cc1ac8966a74e08822dc5731e79d82b8dca0cbbe6c8d1ea6973a970dbb44d5fba31e14593e9acbc77f02acab7a58d656854f4031dd209a5b33a167943072bbd660b815fd13aad82a045269a161a86fc5bb72c4caa704c105c37cf04cc4c8a1643b01c37af0c8d4d39ca85025665a1b66e907720288bb955a7bbf639123376a3e27d919499be7a42e1fb09b9ab27029ac076db2f25147a2bf38f6c5b287bb424bae821d79875c8c41fb120a1bb957bbb57236684636c758e909120ad01332c60ba5304133cf7837eac6d31fb7cf160251da3c4bd1b18b0fa674f1b5eca1603fce92928b821a8a68e6a085e98eb2843e722481a0b81e16e2c4bb0f4b0896dbb2c900c8dd7e500a6c84eabb44d4a670d54203e921344c6c1401516af0168cd1f0821c0fb260044b6f908a68e58170ccb34c4e39919dc747ffa13813240a43631d865adfe335936034bda443773b967c8b9636109ccf919a9b6f233f0c3598a7acc96721cd5489ebdc29549acc16f0a64c3b0b9c742cd81c504bf6a9898a38d052a36036436655285bc26a249d190e72337d4a0bf191954a5ac76982945205113977a1d6937824c773234cb2ee7716570628bf1048a04b38e5d9c42c3aaab1581446c3b96ce96674c119a709c0425e6bce65477252c628c6988df6316813b6f4d37c9ff339d22a76e3a8a1376498b63aa221fb329ef270614745e94655c6591747de740586386a6150d66e8557225b38d3173f5816ba12c395c09712a5b289031981c2bc97c51c39499a144c2976305be1bb08cd6a305212c2136fb8921f337e6d61e8e8acaa525b8c9c60f3aa66ef9a56dbb247ddd424d67c95dc6b1428ae63cd2a236ccec911378baa1e101961864d858682a762113e88f98f25d1acc9e2e1907536257c3ca97b81091557ca0c691b90df6b707d55a94413c5382ca4de2605740156ce738796530781a2e9c629bb1ca0d82b5024a262437243b29e2586f4c8585777ec82898e4942ecd1325d719b21017451b5908691b35722650a81964720acb595009b99749852035cbd4b1ad51c178e9c97c604ffef08e7ff4057d274f1e078f46d04298f0ce82a44c8224c31697c25a687dc845b8a55a050d69c6e6a4226759bd0794c5bf0c33cae843e2fabf738c7957d61206fbacf8b54472c896174195ea8923e3995de50c9c430c4fd4f81abd21731df968e3617575e90a7b430990055068d3390e376fc62490aa97a27f5441a5a149c07344aab833e19b093fd9bcbc8a05ce1b6fbffbc7bc424efc7255178569e2447c59b851e39a2017390b4f230d6dc927bf83bf2f868e104129c5db003eec8f9218357a6553ebb41d6ce558cb3b8ff86a3f125a8bed75c675e13a9f343a4b791e7fd87ed4228556a494b5c0ca685ac4ab663527ecca5e5279f1277ab51186d0ebc50fe5b4b64590f26a87e9049e29735190579ddd194180b60b78579ead248895c55422a18e59d01e6166bcd19c08d1917280d0265a370d5a34334fc9b29f931c5c68297937198b06791d838492d73c389a9556fa0640e03537f5c744a379892b362b0b1300678f3a7714cde9b06a8990eac99a89a12eb606017f841d4be2100aeb750c3892ef544418216ea437affe88059a5a42694089fe7020828160683c0e7efa4519591a4daac30456a5ec2ac39ca0cb3f3920237097e6e5157e1881a09a03aeba5b9925cc81f20a66d86ec52245e828655032067e8bb813f43be6da09fcfa2fc2452eed5ca4dba87dc306a573911205b53b91187d44214d12ca1147b4174956c2bbf1863d85567b8ba14f24b2b6949f6639288de34c117391a19b678b3406ff784ab87b66031371bd0073db89a4abf597d40213bcd4a93ae834f14a52d527c7486c9ddbf62148036aa55a06ed156a0c0b9366d15b582338bedb8466317fec3109139c8ce2c1079a070597c6b712c1b16aca049f3c8999a95e1dd20163226b96c5724ef6908a9c5db43637708471e02c31e1b40a226b01dabb057c328717a4bb41f9a32230079a49beb2e892f9da40ff947cca4410497701795c62a113b30ac0a7d143a8ca8c3c0189407f95ab1b05719c1accf500676b3596141a409b6c0e952a5f1d456a70492b83c4515dd99b763a24b4c1545abc8715e61857a89cf6d760d00c7b47d407c1c230c6212215cc805c76979671af6d3168c73cca4066233bf66fc1d485e225757783cc0457059ce05b9a2409b7b25415121bb2823b032bb40ad8318a86682a1c9fa6f571a08054939144f1ac2f5d299c97c730f742b75c4521851b8d9fe6ad43121c74aa248b751998a2ad9fb747bcf18aedb4b4b0e718e979b7f7580c14ba62b42b8997f17e6812bc46ab6799f7519a93bff43170f2c01b31d96459b7a8956b9da9b1c2cc7c7e3c849ff326003ba17440539e01498cba96b0922468de2345857c3405597ad822004a2b2fbd8723e9f59cfba30732e3bf68131283b87d05620440a2a7fc3582c20b68d0a8763b5276c12957afa766c4d0a524800a1d954934fa0cddd684d85c997bf2c54d8cbcd924b19e731f80b35138752a8e91c0876700f4ac3247ba6ddebc1657941dffe96d1803c81b75a6d07cb6cd4c14b8c904020cbb6bda1d019cc49ec90a12581f944263dfe06db5e16c94eba98276b9ac3b13b8a9083ad3190195583ea7a76051a27f2121f46318580c37e50b0429480f7eac312294cd3c71bdbbb0557c41afc363a6411805964221d26b0eb7b798ce791ef121bbbac1bdbb88bd57dca9114564f4b388b1a2c32912a8bb5c1f21763294498e2b0620f3c085e7c4099d6a3e4fab7fa12a73e39167bce99a6f69a293a37ef238ce2ed7a1804a596ca33897f4cb772c4083a55438490d3e1cc1c5e91d9b78a5e67bbe3c7c3b1293ceb0ba7b7e48cb2bcbb30dd70296a17bef964f265c5a41152964574c0505975ddc10ba9850c6199c83e157f2a74d8fe7496ad2ba6d83586c7624b87c3e00b84b65620db69643ad9046105b5a6cd8065716c398d0bce0e1577e3bbe192651692b79dfb747f7621e2c9a87bf2b602105cd893b2bea50a10d952cc8dbbb1499b9771a3999fb91e0c7438ab641d79a568a375df1d07e28e2c9c450a72f8c4aa5d71b82a09e1196aa3fca8e7c684a4ddb635e775fc03604711139f332ae97ea1ba2813b1690bf9cf70f506cba90641963d5cfad3698da30c866c95c66b4846f785ccbf373f4621855fd4815f0920ac4f940ca25dd130dcfa223e9b45f13ee3fd74b1366afa7f3fff4b8f645331db5526fdd7998a4eeb5c27c884db83a21f601923c559179a3aa5839a148487379eaad934bf27f3071e1b1fdc21d1a",
            "target_ek": "3a7714cde9b06a8990eac99a89a12eb606017f841d4be2100aeb750c3892ef544418216ea437affe88059a5a42694089fe7020828160683c0e7efa4519591a4daac30456a5ec2ac39ca0cb3f3920237097e6e5157e1881a09a03aeba5b9925cc81f20a66d86ec52245e828655032067e8bb813f43be6da09fcfa2fc2452eed5ca4dba87dc306a573911205b53b91187d44214d12ca1147b4174956c2bbf1863d85567b8ba14f24b2b6949f6639288de34c117391a19b678b3406ff784ab87b66031371bd0073db89a4abf597d40213bcd4a93ae834f14a52d527c7486c9ddbf62148036aa55a06ed156a0c0b9366d15b582338bedb8466317fec3109139c8ce2c1079a070597c6b712c1b16aca049f3c8999a95e1dd20163226b96c5724ef6908a9c5db43637708471e02c31e1b40a226b01dabb057c328717a4bb41f9a32230079a49beb2e892f9da40ff947cca4410497701795c62a113b30ac0a7d143a8ca8c3c0189407f95ab1b05719c1accf500676b3596141a409b6c0e952a5f1d456a70492b83c4515dd99b763a24b4c1545abc8715e61857a89cf6d760d00c7b47d407c1c230c6212215cc805c76979671af6d3168c73cca4066233bf66fc1d485e225757783cc0457059ce05b9a2409b7b25415121bb2823b032bb40ad8318a86682a1c9fa6f571a08054939144f1ac2f5d299c97c730f742b75c4521851b8d9fe6ad43121c74aa248b751998a2ad9fb747bcf18aedb4b4b0e718e979b7f7580c14ba62b42b8997f17e6812bc46ab6799f7519a93bff43170f2c01b31d96459b7a8956b9da9b1c2cc7c7e3c849ff326003ba17440539e01498cba96b0922468de2345857c3405597ad822004a2b2fbd8723e9f59cfba30732e3bf68131283b87d05620440a2a7fc3582c20b68d0a8763b5276c12957afa766c4d0a524800a1d954934fa0cddd684d85c997bf2c54d8cbcd924b19e731f80b35138752a8e91c0876700f4ac3247ba6ddebc1657941dffe96d1803c81b75a6d07cb6cd4c14b8c904020cbb6bda1d019cc49ec90a12581f944263dfe06db5e16c94eba98276b9ac3b13b8a9083ad3190195583ea7a76051a27f2121f46318580c37e50b0429480f7eac312294cd3c71bdbbb0557c41afc363a6411805964221d26b0eb7b798ce791ef121bbbac1bdbb88bd57dca9114564f4b388b1a2c32912a8bb5c1f21763294498e2b0620f3c085e7c4099d6a3e4fab7fa12a73e39167bce99a6f69a293a37ef238ce2ed7a1804a596ca33897f4cb772c4083a55438490d3e1cc1c5e91d9b78a5e67bbe3c7c3b1293ceb0ba7b7e48cb2bcbb30dd70296a17bef964f265c5a41152964574c0505975ddc10ba9850c6199c83e157f2a74d8fe7496ad2ba6d83586c7624b87c3e00b84b65620db69643ad9046105b5a6cd8065716c398d0bce0e1577e3bbe192651692b79dfb747f7621e2c9a87bf2b602105cd893b2bea50a10d952cc8dbbb1499b9771a3999fb91e0c7438ab641d79a568a375df1d07e28e2c9c450a72f8c4aa5d71b82a09e1196aa3fca8e7c684a4ddb635e775fc03604711139f332ae97ea1ba2813b1690bf9cf70f506cba90641963d5cfad3698da30c866c95c66b4846f785ccbf373f4621855fd4815f0920ac4f940ca25dd130dcfa223e9b4",
            "tcId": 28
          },
          {
            "alg": "ML-KEM-768",
            "exit_code": 0,
            "nist_dk": "8C50933FD05144630DBD942FCD3C1BF037C176257A332A440C88615D8A613EC3C219D2194F362A7BC3291D3A50C5911C26DA86AF2209A6F7A7DE997892B0149B3ACB5D4C1E2F318DDE95B1D09537571BCE152435ABD7072A60BEDF7A525AB98B28EA6E67E91FB2BC49BBBC90BA476A57DC16B5EC8663C72F2CE06B2AC91B645400EBD6B38662A3AB157190F7C3149C7638F08161185A01A594D2795D8CC6BF40996D776528D018C4603950AE4AB892D45CE3D909F2A962C29C5A99A05FBC4C3DD4C711BB8679D5614CBC039D5D13A9E23C2C5C087B7D6287906A1CAF5105F6EAACB90264824174349C21D1D940882B70D981BB2116906120B143F07E0C41709D0B03D0C21D2047A350CBC0CAB65455389FEE273A28F916A2D69D7A7B2D7A210F597235BF4994DDA3B419704C787779F07B55A2F11D94CA492B147E667BA7E77B6F208CCAA8D6105BD441F9A47E147B76EA46B9D56309E1C224D2593B5B084EFE6ACDC8F5A0D4CCB83BBB0743FC8266D42E065086E5692E4479548C399A62B4ABB246A85E4C1B6AE218D76BA984B020B48981E29156A87341D251B979E7AF8B1687F4F1AAD95C7CCF4BC7A0FCC4C33968878A6912052F16227C92BB7EAD54574E552F7EA05ED474371A3AC690601397536E8280268D1BCB3A8602F21B24FFA64B60A04A7A127E966361CD742B2BE404C14B6597DC4FBE60957724B7E16888A1260DED6268FC743DAE33A50A4532CD9396C17ABE684197907C6743C7883126C77BE58B25B75AF821C1ECC59BB504C2C9D4C45803725AFA3EEDD63A6D391AD047988A987F2EF3624B20BD795C38FC27CB9489487E223F93D228EBE9A40DB61E9F420841E74A20159770302A7A4692649247CFE2A4CF53B00C32376B33625928C4FFF278AC08BC413C1DBCECBF86C7ABE7CA4D7EF074DFF9750708A2A5199DD8598DF295AA2997AE3BC02B4EF5C957B50122E5751B0C2C844979C6E617E50A6E7E0CAC8CE0891F2133EBE59135799FC9FC6FEEE2614633A53EC194E3C9737EF68C5F208E881358080314A31CACA6C78067AACFFB572F4790C7DED53A6C6C451FAAC150203A51D208048486911A3A991627812B1BD74C834B9C08197B37028C716DFACB6BD6AB9973731E0962EBAACB4AE53F8C40CDE680C430B45DF0CB00D60BBFCDB7CAB190A63B027E9F5373CD3097145581BAE7B902D08265C488B363114AF81A866023F4B665B19868FB3A291B1139CA336DFDB6C28A74B231549790548E0C74CE067B594C47880D344A9A833033919FD505868F14108C9671535488E5F52AB38B66C615C2F2D3966DA77118FA72356321E5C55E3B9165E2D374DA05C059B47FA36310018357AC367EB8622BCD1BB2C6410DFEF40AE94A7BD1DBC7E2F01292A4CE4E3BC274AA159BE5644780C1041C0213C6311B79B923934E806586BFC15EB73C7CF0F34F99EB1AB99A5ECBE67547002DFEA019452A7F46FB3F1127A8D3B133992B9A2BAC81B94B86862166BA59B76072385E649EA6577B4FF3624B0426F3F75E493CACE7F515FDA953BA208F5B8A1C22FB2FA84B4A9EE72D9EB059E92569680029B3C90201C82D60272AD2D3C6E1914980836FA1704ABADC7C560A186BDC607105C33BA18D19F691968662854A13ECD19E3D93CC15EABB1F4595BC189CB951A957D310D4469CFEB8892021A58D3C023F815D42411C27B0777AF8C25A898C96C2BB519C5830B295EF882ADCECA22D927EBA65A00C815AC8B03B76B4CF56211A32CCC5D9957C52718E6F7240D4E389F0854D160B3FC7D51A9318C743A5748ED06DBC1051AA885E7141655FD378F99C579280027F1242DE118B69E46E2510A5E420B7D8A39E8AB6BBDA342034B1AA3E394DCF02813877A4AC02A76A03BB74804305A21C9261786463440540740A814AB3681E0FA260FFB055D8E7560BA3286E839F44D04AC9C44A6D29BF09127DD0431BF3E379E031C236D44D79C3A48CA7A42064546BC86ACFF82141E6BC17529374DC11CB5AADCD612E7415053EE266494128E87B1091DBA6591CB86C4486587B095F872A70C53DFC3A0D456A0C8865B45E5404A7FC489A8A09641B9A3B149D7261CC896107F000A7A75C6AAF772D3F9B242509318DCB1CECEC4527C92CECA5648441B99D1C84CF472572AB5575ACA40204C434283C1229570012B47829679FC8A63CE1302E132FABB9687F93095E932FA419B22849A4D6AA090FC69ECD029B6F7489B59A43C720C49CC557D8288680F6B0BC6B87D7462AD128022BFA946685A53E2A8C1F6883567B9C854A012475756FFA2A6B2C6040B443F3A425B35A9A53B6BFB029BC08986FEE5B05D8E11CC006544EA96F5400A8879C9E61E310CBF83675070A4ED62BAE9B29D530AE845B3485569ECBA95672EA1A2A713252198DF411CE387888010C2EAA735605D3B9D889A253338276697283443A4739CA62A64883217CAFE5C1916ACFDD689E272CC51AB5C1988C3029B7795B336F8697114DD856A0573D65395A1289B6E285A99016776B97A76E315505190A7BD331E568987BFB53346419097B83962C9D5DB85F956B0B9E0506846416F3D83D4734063B06ACEED16E839957C5A7BEFC2A4346C0051A49CD199A42F8AA2F55687F9F82AA25BA1AB71CA172078F1D2BC75A3B5FF2557167EC3D10E10813D0625D925F1B2253816486F248A2F5D02A06A8343200003F22094D9603AEB35FF9C6512A9C7D21B8C78B0961DD914A95185572730AFB39179E679F45DB4E5DE5B1C97CB85FCB89BCE8CA958654A3293EC875801F8B40A85C9D1D53025A0B28CECB0AE0D0100B73543351949C259956A859D522BD37E96CACC314E52C7B41A76BCC5C88A677AF9EBBBAA6A573B642962EA821E5A516C44B0A7C0B05F68B02EE078F7FC5C7FB02211F7CA52793437F7A9A32DB0F1040A8A01C1779DB589FF550622ACDFEA78CEEF0513A004CB77141F5CC7D163B5038AA5CAD29854BB43109D53EA3873A5F668125C58AA7BAB3C5A4551FF2990A117056536BA4A499548193CE083D8B22303A6AC6F5442F8231CDDF3B62CCA59BD6F402B612316370A3C857311262AC897B290533229AECA42CDAAF33F2943E496FFA371992D8C80AC3C7FEB46C7748910B4875672A8BA4F3CCE4762894A76846A0CCC13149E02CA12FF1776F99B140731E3E78B23799BE84163B8EE399DE987C3CB4253D15AB07F4678BF03766C0ABBFAB39CCBB8D7064C660A66335F926523A161BC4004D746FB4A764F8FF76676AF904F129457550CCC566089B81BBADC284BA712C521BA3EB8AB0C46E2B36020E42C91F7BE2FCDFDBC37B117984406F46374188D1A2264445D3F44D7DCB9D6A2C3832E5FE9261E29172375A78CBECDA0EF5484C4B3F6940EA20EDD9",
            "nist_ek": "7105C33BA18D19F691968662854A13ECD19E3D93CC15EABB1F4595BC189CB951A957D310D4469CFEB8892021A58D3C023F815D42411C27B0777AF8C25A898C96C2BB519C5830B295EF882ADCECA22D927EBA65A00C815AC8B03B76B4CF56211A32CCC5D9957C52718E6F7240D4E389F0854D160B3FC7D51A9318C743A5748ED06DBC1051AA885E7141655FD378F99C579280027F1242DE118B69E46E2510A5E420B7D8A39E8AB6BBDA342034B1AA3E394DCF02813877A4AC02A76A03BB74804305A21C9261786463440540740A814AB3681E0FA260FFB055D8E7560BA3286E839F44D04AC9C44A6D29BF09127DD0431BF3E379E031C236D44D79C3A48CA7A42064546BC86ACFF82141E6BC17529374DC11CB5AADCD612E7415053EE266494128E87B1091DBA6591CB86C4486587B095F872A70C53DFC3A0D456A0C8865B45E5404A7FC489A8A09641B9A3B149D7261CC896107F000A7A75C6AAF772D3F9B242509318DCB1CECEC4527C92CECA5648441B99D1C84CF472572AB5575ACA40204C434283C1229570012B47829679FC8A63CE1302E132FABB9687F93095E932FA419B22849A4D6AA090FC69ECD029B6F7489B59A43C720C49CC557D8288680F6B0BC6B87D7462AD128022BFA946685A53E2A8C1F6883567B9C854A012475756FFA2A6B2C6040B443F3A425B35A9A53B6BFB029BC08986FEE5B05D8E11CC006544EA96F5400A8879C9E61E310CBF83675070A4ED62BAE9B29D530AE845B3485569ECBA95672EA1A2A713252198DF411CE387888010C2EAA735605D3B9D889A253338276697283443A4739CA62A64883217CAFE5C1916ACFDD689E272CC51AB5C1988C3029B7795B336F8697114DD856A0573D65395A1289B6E285A99016776B97A76E315505190A7BD331E568987BFB53346419097B83962C9D5DB85F956B0B9E0506846416F3D83D4734063B06ACEED16E839957C5A7BEFC2A4346C0051A49CD199A42F8AA2F55687F9F82AA25BA1AB71CA172078F1D2BC75A3B5FF2557167EC3D10E10813D0625D925F1B2253816486F248A2F5D02A06A8343200003F22094D9603AEB35FF9C6512A9C7D21B8C78B0961DD914A95185572730AFB39179E679F45DB4E5DE5B1C97CB85FCB89BCE8CA958654A3293EC875801F8B40A85C9D1D53025A0B28CECB0AE0D0100B73543351949C259956A859D522BD37E96CACC314E52C7B41A76BCC5C88A677AF9EBBBAA6A573B642962EA821E5A516C44B0A7C0B05F68B02EE078F7FC5C7FB02211F7CA52793437F7A9A32DB0F1040A8A01C1779DB589FF550622ACDFEA78CEEF0513A004CB77141F5CC7D163B5038AA5CAD29854BB43109D53EA3873A5F668125C58AA7BAB3C5A4551FF2990A117056536BA4A499548193CE083D8B22303A6AC6F5442F8231CDDF3B62CCA59BD6F402B612316370A3C857311262AC897B290533229AECA42CDAAF33F2943E496FFA371992D8C80AC3C7FEB46C7748910B4875672A8BA4F3CCE4762894A76846A0CCC13149E02CA12FF1776F99B140731E3E78B23799BE84163B8EE399DE987C3CB4253D15AB07F4678BF03766C0ABBFAB39CCBB8D7064C660A66335F926523A161BC4004D746FB4A764F8FF76676AF904F129457550CCC566089B81BBADC284BA712C521BA3EB8AB0C4",
            "target_dk": "8c50933fd05144630dbd942fcd3c1bf037c176257a332a440c88615d8a613ec3c219d2194f362a7bc3291d3a50c5911c26da86af2209a6f7a7de997892b0149b3acb5d4c1e2f318dde95b1d09537571bce152435abd7072a60bedf7a525ab98b28ea6e67e91fb2bc49bbbc90ba476a57dc16b5ec8663c72f2ce06b2ac91b645400ebd6b38662a3ab157190f7c3149c7638f08161185a01a594d2795d8cc6bf40996d776528d018c4603950ae4ab892d45ce3d909f2a962c29c5a99a05fbc4c3dd4c711bb8679d5614cbc039d5d13a9e23c2c5c087b7d6287906a1caf5105f6eaacb90264824174349c21d1d940882b70d981bb2116906120b143f07e0c41709d0b03d0c21d2047a350cbc0cab65455389fee273a28f916a2d69d7a7b2d7a210f597235bf4994dda3b419704c787779f07b55a2f11d94ca492b147e667ba7e77b6f208ccaa8d6105bd441f9a47e147b76ea46b9d56309e1c224d2593b5b084efe6acdc8f5a0d4ccb83bbb0743fc8266d42e065086e5692e4479548c399a62b4abb246a85e4c1b6ae218d76ba984b020b48981e29156a87341d251b979e7af8b1687f4f1aad95c7ccf4bc7a0fcc4c33968878a6912052f16227c92bb7ead54574e552f7ea05ed474371a3ac690601397536e8280268d1bcb3a8602f21b24ffa64b60a04a7a127e966361cd742b2be404c14b6597dc4fbe60957724b7e16888a1260ded6268fc743dae33a50a4532cd9396c17abe684197907c6743c7883126c77be58b25b75af821c1ecc59bb504c2c9d4c45803725afa3eedd63a6d391ad047988a987f2ef3624b20bd795c38fc27cb9489487e223f93d228ebe9a40db61e9f420841e74a20159770302a7a4692649247cfe2a4cf53b00c32376b33625928c4fff278ac08bc413c1dbcecbf86c7abe7ca4d7ef074dff9750708a2a5199dd8598df295aa2997ae3bc02b4ef5c957b50122e5751b0c2c844979c6e617e50a6e7e0cac8ce0891f2133ebe59135799fc9fc6feee2614633a53ec194e3c9737ef68c5f208e881358080314a31caca6c78067aacffb572f4790c7ded53a6c6c451faac150203a51d208048486911a3a991627812b1bd74c834b9c08197b37028c716dfacb6bd6ab9973731e0962ebaacb4ae53f8c40cde680c430b45df0cb00d60bbfcdb7cab190a63b027e9f5373cd3097145581bae7b902d08265c488b363114af81a866023f4b665b19868fb3a291b1139ca336dfdb6c28a74b231549790548e0c74ce067b594c47880d344a9a833033919fd505868f14108c9671535488e5f52ab38b66c615c2f2d3966da77118fa72356321e5c55e3b9165e2d374da05c059b47fa36310018357ac367eb8622bcd1bb2c6410dfef40ae94a7bd1dbc7e2f01292a4ce4e3bc274aa159be5644780c1041c0213c6311b79b923934e806586bfc15eb73c7cf0f34f99eb1ab99a5ecbe67547002dfea019452a7f46fb3f1127a8d3b133992b9a2bac81b94b86862166ba59b76072385e649ea6577b4ff3624b0426f3f75e493cace7f515fda953ba208f5b8a1c22fb2fa84b4a9ee72d9eb059e92569680029b3c90201c82d60272ad2d3c6e1914980836fa1704abadc7c560a186bdc607105c33ba18d19f691968662854a13ecd19e3d93cc15eabb1f4595bc189cb951a957d310d4469cfeb8892021a58d3c023f815d42411c27b0777af8c25a898c96c2bb519c5830b295ef882adceca22d927eba65a00c815ac8b03b76b4cf56211a32ccc5d9957c52718e6f7240d4e389f0854d160b3fc7d51a9318c743a5748ed06dbc1051aa885e7141655fd378f99c579280027f1242de118b69e46e2510a5e420b7d8a39e8ab6bbda342034b1aa3e394dcf02813877a4ac02a76a03bb74804305a21c9261786463440540740a814ab3681e0fa260ffb055d8e7560ba3286e839f44d04ac9c44a6d29bf09127dd0431bf3e379e031c236d44d79c3a48ca7a42064546bc86acff82141e6bc17529374dc11cb5aadcd612e7415053ee266494128e87b1091dba6591cb86c4486587b095f872a70c53dfc3a0d456a0c8865b45e5404a7fc489a8a09641b9a3b149d7261cc896107f000a7a75c6aaf772d3f9b242509318dcb1cecec4527c92ceca5648441b99d1c84cf472572ab5575aca40204c434283c1229570012b47829679fc8a63ce1302e132fabb9687f93095e932fa419b22849a4d6aa090fc69ecd029b6f7489b59a43c720c49cc557d8288680f6b0bc6b87d7462ad128022bfa946685a53e2a8c1f6883567b9c854a012475756ffa2a6b2c6040b443f3a425b35a9a53b6bfb029bc08986fee5b05d8e11cc006544ea96f5400a8879c9e61e310cbf83675070a4ed62bae9b29d530ae845b3485569ecba95672ea1a2a713252198df411ce387888010c2eaa735605d3b9d889a253338276697283443a4739ca62a64883217cafe5c1916acfdd689e272cc51ab5c1988c3029b7795b336f8697114dd856a0573d65395a1289b6e285a99016776b97a76e315505190a7bd331e568987bfb53346419097b83962c9d5db85f956b0b9e0506846416f3d83d4734063b06aceed16e839957c5a7befc2a4346c0051a49cd199a42f8aa2f55687f9f82aa25ba1ab71ca172078f1d2bc75a3b5ff2557167ec3d10e10813d0625d925f1b2253816486f248a2f5d02a06a8343200003f22094d9603aeb35ff9c6512a9c7d21b8c78b0961dd914a95185572730afb39179e679f45db4e5de5b1c97cb85fcb89bce8ca958654a3293ec875801f8b40a85c9d1d53025a0b28cecb0ae0d0100b73543351949c259956a859d522bd37e96cacc314e52c7b41a76bcc5c88a677af9ebbbaa6a573b642962ea821e5a516c44b0a7c0b05f68b02ee078f7fc5c7fb02211f7ca52793437f7a9a32db0f1040a8a01c1779db589ff550622acdfea78ceef0513a004cb77141f5cc7d163b5038aa5cad29854bb43109d53ea3873a5f668125c58aa7bab3c5a4551ff2990a117056536ba4a499548193ce083d8b22303a6ac6f5442f8231cddf3b62cca59bd6f402b612316370a3c857311262ac897b290533229aeca42cdaaf33f2943e496ffa371992d8c80ac3c7feb46c7748910b4875672a8ba4f3cce4762894a76846a0ccc13149e02ca12ff1776f99b140731e3e78b23799be84163b8ee399de987c3cb4253d15ab07f4678bf03766c0abbfab39ccbb8d7064c660a66335f926523a161bc4004d746fb4a764f8ff76676af904f129457550ccc566089b81bbadc284ba712c521ba3eb8ab0c46e2b36020e42c91f7be2fcdfdbc37b117984406f46374188d1a2264445d3f44d7dcb9d6a2c3832e5fe9261e29172375a78cbecda0ef5484c4b3f6940ea20edd9",
            "target_ek": "7105c33ba18d19f691968662854a13ecd19e3d93cc15eabb1f4595bc189cb951a957d310d4469cfeb8892021a58d3c023f815d42411c27b0777af8c25a898c96c2bb519c5830b295ef882adceca22d927eba65a00c815ac8b03b76b4cf56211a32ccc5d9957c52718e6f7240d4e389f0854d160b3fc7d51a9318c743a5748ed06dbc1051aa885e7141655fd378f99c579280027f1242de118b69e46e2510a5e420b7d8a39e8ab6bbda342034b1aa3e394dcf02813877a4ac02a76a03bb74804305a21c9261786463440540740a814ab3681e0fa260ffb055d8e7560ba3286e839f44d04ac9c44a6d29bf09127dd0431bf3e379e031c236d44d79c3a48ca7a42064546bc86acff82141e6bc17529374dc11cb5aadcd612e7415053ee266494128e87b1091dba6591cb86c4486587b095f872a70c53dfc3a0d456a0c8865b45e5404a7fc489a8a09641b9a3b149d7261cc896107f000a7a75c6aaf772d3f9b242509318dcb1cecec4527c92ceca5648441b99d1c84cf472572ab5575aca40204c434283c1229570012b47829679fc8a63ce1302e132fabb9687f93095e932fa419b22849a4d6aa090fc69ecd029b6f7489b59a43c720c49cc557d8288680f6b0bc6b87d7462ad128022bfa946685a53e2a8c1f6883567b9c854a012475756ffa2a6b2c6040b443f3a425b35a9a53b6bfb029bc08986fee5b05d8e11cc006544ea96f5400a8879c9e61e310cbf83675070a4ed62bae9b29d530ae845b3485569ecba95672ea1a2a713252198df411ce387888010c2eaa735605d3b9d889a253338276697283443a4739ca62a64883217cafe5c1916acfdd689e272cc51ab5c1988c3029b7795b336f8697114dd856a0573d65395a1289b6e285a99016776b97a76e315505190a7bd331e568987bfb53346419097b83962c9d5db85f956b0b9e0506846416f3d83d4734063b06aceed16e839957c5a7befc2a4346c0051a49cd199a42f8aa2f55687f9f82aa25ba1ab71ca172078f1d2bc75a3b5ff2557167ec3d10e10813d0625d925f1b2253816486f248a2f5d02a06a8343200003f22094d9603aeb35ff9c6512a9c7d21b8c78b0961dd914a95185572730afb39179e679f45db4e5de5b1c97cb85fcb89bce8ca958654a3293ec875801f8b40a85c9d1d53025a0b28cecb0ae0d0100b73543351949c259956a859d522bd37e96cacc314e52c7b41a76bcc5c88a677af9ebbbaa6a573b642962ea821e5a516c44b0a7c0b05f68b02ee078f7fc5c7fb02211f7ca52793437f7a9a32db0f1040a8a01c1779db589ff550622acdfea78ceef0513a004cb77141f5cc7d163b5038aa5cad29854bb43109d53ea3873a5f668125c58aa7bab3c5a4551ff2990a117056536ba4a499548193ce083d8b22303a6ac6f5442f8231cddf3b62cca59bd6f402b612316370a3c857311262ac897b290533229aeca42cdaaf33f2943e496ffa371992d8c80ac3c7feb46c7748910b4875672a8ba4f3cce4762894a76846a0ccc13149e02ca12ff1776f99b140731e3e78b23799be84163b8ee399de987c3cb4253d15ab07f4678bf03766c0abbfab39ccbb8d7064c660a66335f926523a161bc4004d746fb4a764f8ff76676af904f129457550ccc566089b81bbadc284ba712c521ba3eb8ab0c4",
            "tcId": 29
          },
          {
            "alg": "ML-KEM-768",
            "exit_code": 0,
            "nist_dk": "952119B40B1710433F4321C2CA494BD4F40218233943BC1147552D2DC91B026717215450F96983CF2A58E405AB2A241A58702929FC7B0905A01DC772ABC0C2DCACC02A12CE431099A2725B30A1A731DB62B46A5187040913FB1AE54096D49728F1511747386BA2F4C059F9146FB50E7DF06468676E5025B34A9765737C23719209A7860C982AA634B358E998386B2307DC994F1A4A2F1D182A8EF23429952D663B1737B2B025179FFF67A18357B36433590B8012EEC9B7FA1128B56B2A926B2D9B86A60CF35FD1C44DB8C3062E4067BD815090224DA631A00FC46186230FE52CAB341270390C00E4952557046137957C428CBAC6C25E9EBB3A5DFCCE9C7BAB51A61541E59998760F853CAC6D1478422B38B89557247388A414CE19386F01DC1C19489A29AA1123C04AFB8143E1542B45350E7A853302441D1BB836C6C97F4AA08138338A8A2238C7682C3D1C6EBE63A1E74390E2A47442C3718E61CB869B35E8FAA1D80A027AB585AAC62219A602941CC7EE60B22E97A1851225AF77082C3039E0B84035ECA9C7D2432253B80C0BCAD6E20BEC482A18500BDF75C6820A6C2F2C945A13BD2A0CB5188300D5CBCCB7B3846AF78647413DE8047CF0F9954A8804F889165374A9F5341D93AC6DF3995EF2396850AC793DE83B11A72EBFA673DFF04B868199BDC60FD44029BED01428957D505C685CFC6DFE04AF468735620B96BCA9B1B6298007EC026C54C0CF6476F2B995CC35992C791E80146E957893B744C409564D1025CE8B957FED9B95EDF00CC2B36D0F891EC7EBC545B4889BE31F5052BDE7360B0C69BD280255F5E5C66A655FC857AB5B6230000A2B2A587313D582350A35A0DA4F28F3B738989C22E25490C08456556A5A47BDE0651C9468AB297480CC3056B5AA2326F927BC19B406E41D4663CFDD00CF39A2154FC9439908020CC724C6D67E7CF77248A39C05004FF9F7A8D1569AD8B3866675AC6DF8757CE8C492460227D3A6A7D089D850BCEB770EE8B25276336C488B648CD7284AA54668E074E41A27C6E2972F922705108DF582CC713C3B981110E522A9F3873B3F345D1AB01705535A151BC92A1A0C6D126810D88B52EAA83597CC5EA7286CA243ED1542929CCFC835CC7F279A70119D3C8933015C4DD78A4C5D1184CD86AF06B6806F578AC5C4949F468AAFFC0E74FB989F760EA3525D933A0B939400D62B5681968F0012885B042481724D0DCC1A994336A37B1CB866926D331F705775B0439819393C790C78808385A0E86D92F100D95A5E5C0325F8A42E7243266D477C8FA60AF2D1C0DA05B697B945C2C1BAE9D73ACADA3C73344A7E08793D1186031449B291323A8568EBC450F82B71B7882A76991BCCB55FB70C83766713704094F4F54C0765C8E85966AA95AE0CB02360903BF5D86D2B33347D93C080A575894A2A67F32FD5A279E4B269E1896E788807BF2BACB2B3402F88B3D3193B7BB005D36752D1F47DFDC5804FD2751AA5324BCB360CE87A57B05E25467D8C76A42E574757783DF6AC54A366CFF62B52EA836C833790DA23483FE05A7B2B46DF986BF920C755064358445C7A003B0A4016A8D9597FB60020D348DFE806684B6CD9E8582CB1380DB26B99609452339C216A28924BC691C5C263345BD2600C3080C51B274C119606F08C628AC2C4A49565704BC16D4143EFD78844472C68E56869A599CA3A1B3831B6B170436BECAD6EB880F6C5C787674DE25202DA3C86ACC00B9FA61E0A3B6FD34AA616D95F08F09A12C896EF0C603D639676A658F2F45ACA340BDF05CCB4C72B88438369F974D8EB46732128004B27430A3B73B983FCF4276A25539DD191AE78C897266A8F31A728871CACE5B027D714A85519F57C713A1171205CBD0924CED5D7A7C6FAA0CC502EE59583C5E4848370CA25E55A554822C3C2248DE70983F16E51240D35783061AC2D7883CD90514CF2847A6ED46437427AB5E06AF5561B41AB5189853817AB6062F8BC9509AB9239BEF180319BA98C0F9B4D85D7A258B00AD2F9ADF9BCA3F1D13AAE149092769EEC263733D38CD10B56152A40703B75C0D65ACFE10932827C9B29719C6808F67112206284CF942870AA86DCB549E8023CD47608A98182ACB627DF216FC4423844D746F9993302C88FD796273A7BB18EB31B2F02A9B63CC9731A267B5C544BE82465BA1F41A1171DF44BEF444554CBC2D2AAB729EAAB510C0FDC3A8018760CAA37359A2882E3B286C7582E1EB08558F55207673BD8818E3FD98F59B913349AC15DCACDFCA901F8D63D779774521A0A02E1AB32F77AF11823BA6BCC0E5093B2F7A50099787A719350B64D2860751321AAD6C17089E3408034B708C4390A32C9EC01D094B01A4E40A0F49A5BD649BDF9F0004ADB73611C50C2C927B76C31B211B7381B9B76A521EF876D2CDB280498BC3C4261F544399F1803E2A8950B9B7F056ABFBFCC7BD380A3D4FB14C4894D8D9C2B98DC5E3BBC4057252563C58C1587C7C2F78360785A65C7793E34BAC4F616F148CAD29A6851431C948C6DA3E42B3AB7BDC07A3B0C6A6496963B49AA5F1BE56D28E64D6639CB85A2540771671C0C021098A1A0489CB7C579B33106E2D815FFE6AAB3466742E63C20062857C8B1E770CFE537C1A2E20085D3BEA8FB986C856F3BB3A50CF874034556AA564752579457BB3DDA316A5CF044F2A9B3397BA543B4BF51BA2C640698160AB9D7298753DB22F2B16EE5B433C7D08845BA32F05006AC1C9899371D63A2779DE5803B3307082382EE805E00ADA6B2D0788CBCC3DBB9C003B38AF549B83ED6B119850E4D2B360A0230677A85894A882338781B6BA9AAE3023F5B401460BE97E2ABB95B862C54269161334D5A64557656141C421D497476D81E04ABC47AE1B42025B6B91607DD14277DF333F252AF596606C0777893142CC7BC685C4C931B37A0AFB37A633B2FF7A4B49FE55BD9E55F9FDCB22C45A6DA169A49D44DAEC44567C651FBC368336CAFB82467733A28E94A23E3E1AC6D901AAFC86809683365DA7396678B1FD27AF5B9C52AA7BD02171DB9E80FC0B04E502B723A5C0552947D3FC488181297DCD41D0C42A232034621A1655C36A6973C4D9AD47B60A78F3A680709E83C4D93CDBC96BCCFB06128E9358EB98B41119FE7D29C7F315C92A17B34D666AC5AB49DD65B6021653C558DBE0C79A65BBA23D683687325D7A004AC53B20FB6601D2606AC6872DDAC03CA86BC3DB47F19A828B8A35CE7293E3E1A3B269B4488E1A30B9D15152B039DF36221FB7184EA150EAC2E80F0C5255DFC4C9A542B9953E6272210BAEE60864394042F2E190EDAC61E3C72AC42214318C84151D6E12D56CAB2AB6EAE982DDA0008CF1BDC59B5C8AC88BA11F169798AA56374ED7A550BC4F552",
            "nist_ek": "52339C216A28924BC691C5C263345BD2600C3080C51B274C119606F08C628AC2C4A49565704BC16D4143EFD78844472C68E56869A599CA3A1B3831B6B170436BECAD6EB880F6C5C787674DE25202DA3C86ACC00B9FA61E0A3B6FD34AA616D95F08F09A12C896EF0C603D639676A658F2F45ACA340BDF05CCB4C72B88438369F974D8EB46732128004B27430A3B73B983FCF4276A25539DD191AE78C897266A8F31A728871CACE5B027D714A85519F57C713A1171205CBD0924CED5D7A7C6FAA0CC502EE59583C5E4848370CA25E55A554822C3C2248DE70983F16E51240D35783061AC2D7883CD90514CF2847A6ED46437427AB5E06AF5561B41AB5189853817AB6062F8BC9509AB9239BEF180319BA98C0F9B4D85D7A258B00AD2F9ADF9BCA3F1D13AAE149092769EEC263733D38CD10B56152A40703B75C0D65ACFE10932827C9B29719C6808F67112206284CF942870AA86DCB549E8023CD47608A98182ACB627DF216FC4423844D746F9993302C88FD796273A7BB18EB31B2F02A9B63CC9731A267B5C544BE82465BA1F41A1171DF44BEF444554CBC2D2AAB729EAAB510C0FDC3A8018760CAA37359A2882E3B286C7582E1EB08558F55207673BD8818E3FD98F59B913349AC15DCACDFCA901F8D63D779774521A0A02E1AB32F77AF11823BA6BCC0E5093B2F7A50099787A719350B64D2860751321AAD6C17089E3408034B708C4390A32C9EC01D094B01A4E40A0F49A5BD649BDF9F0004ADB73611C50C2C927B76C31B211B7381B9B76A521EF876D2CDB280498BC3C4261F544399F1803E2A8950B9B7F056ABFBFCC7BD380A3D4FB14C4894D8D9C2B98DC5E3BBC4057252563C58C1587C7C2F78360785A65C7793E34BAC4F616F148CAD29A6851431C948C6DA3E42B3AB7BDC07A3B0C6A6496963B49AA5F1BE56D28E64D6639CB85A2540771671C0C021098A1A0489CB7C579B33106E2D815FFE6AAB3466742E63C20062857C8B1E770CFE537C1A2E20085D3BEA8FB986C856F3BB3A50CF874034556AA564752579457BB3DDA316A5CF044F2A9B3397BA543B4BF51BA2C640698160AB9D7298753DB22F2B16EE5B433C7D08845BA32F05006AC1C9899371D63A2779DE5803B3307082382EE805E00ADA6B2D0788CBCC3DBB9C003B38AF549B83ED6B119850E4D2B360A0230677A85894A882338781B6BA9AAE3023F5B401460BE97E2ABB95B862C54269161334D5A64557656141C421D497476D81E04ABC47AE1B42025B6B91607DD14277DF333F252AF596606C0777893142CC7BC685C4C931B37A0AFB37A633B2FF7A4B49FE55BD9E55F9FDCB22C45A6DA169A49D44DAEC44567C651FBC368336CAFB82467733A28E94A23E3E1AC6D901AAFC86809683365DA7396678B1FD27AF5B9C52AA7BD02171DB9E80FC0B04E502B723A5C0552947D3FC488181297DCD41D0C42A232034621A1655C36A6973C4D9AD47B60A78F3A680709E83C4D93CDBC96BCCFB06128E9358EB98B41119FE7D29C7F315C92A17B34D666AC5AB49DD65B6021653C558DBE0C79A65BBA23D683687325D7A004AC53B20FB6601D2606AC6872DDAC03CA86BC3DB47F19A828B8A35CE7293E3E1A3B269B4488E1A30B9D15152B039DF36221FB7184EA150EAC2E80F0C5255DFC4C9A542B9953E627",
            "target_dk": "952119b40b1710433f4321c2ca494bd4f40218233943bc1147552d2dc91b026717215450f96983cf2a58e405ab2a241a58702929fc7b0905a01dc772abc0c2dcacc02a12ce431099a2725b30a1a731db62b46a5187040913fb1ae54096d49728f1511747386ba2f4c059f9146fb50e7df06468676e5025b34a9765737c23719209a7860c982aa634b358e998386b2307dc994f1a4a2f1d182a8ef23429952d663b1737b2b025179fff67a18357b36433590b8012eec9b7fa1128b56b2a926b2d9b86a60cf35fd1c44db8c3062e4067bd815090224da631a00fc46186230fe52cab341270390c00e4952557046137957c428cbac6c25e9ebb3a5dfcce9c7bab51a61541e59998760f853cac6d1478422b38b89557247388a414ce19386f01dc1c19489a29aa1123c04afb8143e1542b45350e7a853302441d1bb836c6c97f4aa08138338a8a2238c7682c3d1c6ebe63a1e74390e2a47442c3718e61cb869b35e8faa1d80a027ab585aac62219a602941cc7ee60b22e97a1851225af77082c3039e0b84035eca9c7d2432253b80c0bcad6e20bec482a18500bdf75c6820a6c2f2c945a13bd2a0cb5188300d5cbccb7b3846af78647413de8047cf0f9954a8804f889165374a9f5341d93ac6df3995ef2396850ac793de83b11a72ebfa673dff04b868199bdc60fd44029bed01428957d505c685cfc6dfe04af468735620b96bca9b1b6298007ec026c54c0cf6476f2b995cc35992c791e80146e957893b744c409564d1025ce8b957fed9b95edf00cc2b36d0f891ec7ebc545b4889be31f5052bde7360b0c69bd280255f5e5c66a655fc857ab5b6230000a2b2a587313d582350a35a0da4f28f3b738989c22e25490c08456556a5a47bde0651c9468ab297480cc3056b5aa2326f927bc19b406e41d4663cfdd00cf39a2154fc9439908020cc724c6d67e7cf77248a39c05004ff9f7a8d1569ad8b3866675ac6df8757ce8c492460227d3a6a7d089d850bceb770ee8b25276336c488b648cd7284aa54668e074e41a27c6e2972f922705108df582cc713c3b981110e522a9f3873b3f345d1ab01705535a151bc92a1a0c6d126810d88b52eaa83597cc5ea7286ca243ed1542929ccfc835cc7f279a70119d3c8933015c4dd78a4c5d1184cd86af06b6806f578ac5c4949f468aaffc0e74fb989f760ea3525d933a0b939400d62b5681968f0012885b042481724d0dcc1a994336a37b1cb866926d331f705775b0439819393c790c78808385a0e86d92f100d95a5e5c0325f8a42e7243266d477c8fa60af2d1c0da05b697b945c2c1bae9d73acada3c73344a7e08793d1186031449b291323a8568ebc450f82b71b7882a76991bccb55fb70c83766713704094f4f54c0765c8e85966aa95ae0cb02360903bf5d86d2b33347d93c080a575894a2a67f32fd5a279e4b269e1896e788807bf2bacb2b3402f88b3d3193b7bb005d36752d1f47dfdc5804fd2751aa5324bcb360ce87a57b05e25467d8c76a42e574757783df6ac54a366cff62b52ea836c833790da23483fe05a7b2b46df986bf920c755064358445c7a003b0a4016a8d9597fb60020d348dfe806684b6cd9e8582cb1380db26b99609452339c216a28924bc691c5c263345bd2600c3080c51b274c119606f08c628ac2c4a49565704bc16d4143efd78844472c68e56869a599ca3a1b3831b6b170436becad6eb880f6c5c787674de25202da3c86acc00b9fa61e0a3b6fd34aa616d95f08f09a12c896ef0c603d639676a658f2f45aca340bdf05ccb4c72b88438369f974d8eb46732128004b27430a3b73b983fcf4276a25539dd191ae78c897266a8f31a728871cace5b027d714a85519f57c713a1171205cbd0924ced5d7a7c6faa0cc502ee59583c5e4848370ca25e55a554822c3c2248de70983f16e51240d35783061ac2d7883cd90514cf2847a6ed46437427ab5e06af5561b41ab5189853817ab6062f8bc9509ab9239bef180319ba98c0f9b4d85d7a258b00ad2f9adf9bca3f1d13aae149092769eec263733d38cd10b56152a40703b75c0d65acfe10932827c9b29719c6808f67112206284cf942870aa86dcb549e8023cd47608a98182acb627df216fc4423844d746f9993302c88fd796273a7bb18eb31b2f02a9b63cc9731a267b5c544be82465ba1f41a1171df44bef444554cbc2d2aab729eaab510c0fdc3a8018760caa37359a2882e3b286c7582e1eb08558f55207673bd8818e3fd98f59b913349ac15dcacdfca901f8d63d779774521a0a02e1ab32f77af11823ba6bcc0e5093b2f7a50099787a719350b64d2860751321aad6c17089e3408034b708c4390a32c9ec01d094b01a4e40a0f49a5bd649bdf9f0004adb73611c50c2c927b76c31b211b7381b9b76a521ef876d2cdb280498bc3c4261f544399f1803e2a8950b9b7f056abfbfcc7bd380a3d4fb14c4894d8d9c2b98dc5e3bbc4057252563c58c1587c7c2f78360785a65c7793e34bac4f616f148cad29a6851431c948c6da3e42b3ab7bdc07a3b0c6a6496963b49aa5f1be56d28e64d6639cb85a2540771671c0c021098a1a0489cb7c579b33106e2d815ffe6aab3466742e63c20062857c8b1e770cfe537c1a2e20085d3bea8fb986c856f3bb3a50cf874034556aa564752579457bb3dda316a5cf044f2a9b3397ba543b4bf51ba2c640698160ab9d7298753db22f2b16ee5b433c7d08845ba32f05006ac1c9899371d63a2779de5803b3307082382ee805e00ada6b2d0788cbcc3dbb9c003b38af549b83ed6b119850e4d2b360a0230677a85894a882338781b6ba9aae3023f5b401460be97e2abb95b862c54269161334d5a64557656141c421d497476d81e04abc47ae1b42025b6b91607dd14277df333f252af596606c0777893142cc7bc685c4c931b37a0afb37a633b2ff7a4b49fe55bd9e55f9fdcb22c45a6da169a49d44daec44567c651fbc368336cafb82467733a28e94a23e3e1ac6d901aafc86809683365da7396678b1fd27af5b9c52aa7bd02171db9e80fc0b04e502b723a5c0552947d3fc488181297dcd41d0c42a232034621a1655c36a6973c4d9ad47b60a78f3a680709e83c4d93cdbc96bccfb06128e9358eb98b41119fe7d29c7f315c92a17b34d666ac5ab49dd65b6021653c558dbe0c79a65bba23d683687325d7a004ac53b20fb6601d2606ac6872ddac03ca86bc3db47f19a828b8a35ce7293e3e1a3b269b4488e1a30b9d15152b039df36221fb7184ea150eac2e80f0c5255dfc4c9a542b9953e6272210baee60864394042f2e190edac61e3c72ac42214318c84151d6e12d56cab2ab6eae982dda0008cf1bdc59b5c8ac88ba11f169798aa56374ed7a550bc4f552",
            "target_ek": "52339c216a28924bc691c5c263345bd2600c3080c51b274c119606f08c628ac2c4a49565704bc16d4143efd78844472c68e56869a599ca3a1b3831b6b170436becad6eb880f6c5c787674de25202da3c86acc00b9fa61e0a3b6fd34aa616d95f08f09a12c896ef0c603d639676a658f2f45aca340bdf05ccb4c72b88438369f974d8eb46732128004b27430a3b73b983fcf4276a25539dd191ae78c897266a8f31a728871cace5b027d714a85519f57c713a1171205cbd0924ced5d7a7c6faa0cc502ee59583c5e4848370ca25e55a554822c3c2248de70983f16e51240d35783061ac2d7883cd90514cf2847a6ed46437427ab5e06af5561b41ab5189853817ab6062f8bc9509ab9239bef180319ba98c0f9b4d85d7a258b00ad2f9adf9bca3f1d13aae149092769eec263733d38cd10b56152a40703b75c0d65acfe10932827c9b29719c6808f67112206284cf942870aa86dcb549e8023cd47608a98182acb627df216fc4423844d746f9993302c88fd796273a7bb18eb31b2f02a9b63cc9731a267b5c544be82465ba1f41a1171df44bef444554cbc2d2aab729eaab510c0fdc3a8018760caa37359a2882e3b286c7582e1eb08558f55207673bd8818e3fd98f59b913349ac15dcacdfca901f8d63d779774521a0a02e1ab32f77af11823ba6bcc0e5093b2f7a50099787a719350b64d2860751321aad6c17089e3408034b708c4390a32c9ec01d094b01a4e40a0f49a5bd649bdf9f0004adb73611c50c2c927b76c31b211b7381b9b76a521ef876d2cdb280498bc3c4261f544399f1803e2a8950b9b7f056abfbfcc7bd380a3d4fb14c4894d8d9c2b98dc5e3bbc4057252563c58c1587c7c2f78360785a65c7793e34bac4f616f148cad29a6851431c948c6da3e42b3ab7bdc07a3b0c6a6496963b49aa5f1be56d28e64d6639cb85a2540771671c0c021098a1a0489cb7c579b33106e2d815ffe6aab3466742e63c20062857c8b1e770cfe537c1a2e20085d3bea8fb986c856f3bb3a50cf874034556aa564752579457bb3dda316a5cf044f2a9b3397ba543b4bf51ba2c640698160ab9d7298753db22f2b16ee5b433c7d08845ba32f05006ac1c9899371d63a2779de5803b3307082382ee805e00ada6b2d0788cbcc3dbb9c003b38af549b83ed6b119850e4d2b360a0230677a85894a882338781b6ba9aae3023f5b401460be97e2abb95b862c54269161334d5a64557656141c421d497476d81e04abc47ae1b42025b6b91607dd14277df333f252af596606c0777893142cc7bc685c4c931b37a0afb37a633b2ff7a4b49fe55bd9e55f9fdcb22c45a6da169a49d44daec44567c651fbc368336cafb82467733a28e94a23e3e1ac6d901aafc86809683365da7396678b1fd27af5b9c52aa7bd02171db9e80fc0b04e502b723a5c0552947d3fc488181297dcd41d0c42a232034621a1655c36a6973c4d9ad47b60a78f3a680709e83c4d93cdbc96bccfb06128e9358eb98b41119fe7d29c7f315c92a17b34d666ac5ab49dd65b6021653c558dbe0c79a65bba23d683687325d7a004ac53b20fb6601d2606ac6872ddac03ca86bc3db47f19a828b8a35ce7293e3e1a3b269b4488e1a30b9d15152b039df36221fb7184ea150eac2e80f0c5255dfc4c9a542b9953e627",
            "tcId": 30
          }
        ],
        "c90_compile_exit": 1,
        "c90_files_compiled": 11,
        "c90_first_error": "'long long' is an extension when C99 mode is not enabled [-Werror,-Wlong-long]",
        "counterfactual_anchor_count": 1,
        "counterfactual_cases": [
          {
            "alg": "ML-KEM-768",
            "exit_code": 0,
            "nist_dk": "3808B98D9A093C7853B0B814D1CA5F392677D3D0A38F81C852F95B9A69B374A24588C0ADD5B510BE567C5A24688EC91ED0F28BB4C86978C09793795C36B94E5DD8498EB4353FF40EA87B17E921B5B4CBA08E5B7BE5A9C8BC69AC5AC3075DD947D04B8695097AC39790A0C8ABE11200C9F136ED7B0C10077E36111C1F139D9BD27142993F5883925C4918413CB8043962A28567397A1C7E003BAC30644055155CE9464E623FC5E2160CD1143FD2C90C03A08D0B333FBB40A308CACD81618674B406809790B2538D30431F064F65EBBA7C41B2A53146A3ABCA66754CAE591534045C1D640D6308472EBCA660A8A7D372470D3869115B8860B577311980B2C66B8352229ABC17B0C31F58E5A5EBDBCA6E3B157D9CA79EE890778A4CF28429C2A82C80DC9C524B0864E385E355BD4E65732D395E464070F61828E57C3E1BE2A50052C4FF1951F5D0C89720987D8941F085871113A91F518FC79B7189056990B2447BF54FC170C932E0A4E0F7A262542F56D1B49EEBC392106D93C77DE9186DFBB824E73B2F7FC796B312875B43414877AFB356214492C19C748DD381BC7A9237BF097CC606A03119A240A5536AC7844F6A79D0E2B821B68D96542450179BCCA231F2DA68C5EB6D118B99A1B66EAA566C78A9009008B0D66155BA4839F8E518C650177DEC170EB09E8BF6A89905320590C642B801CF5B5151C2AF3E7271CB9961C65A5BD17479429A31BE9081F2767D94816C16D1B04772012382B689AB2D3FB9BDC66547BFEB23052600BB369771494D9C914EC93A066ABC9611940B947310DA04197312425D736A1933B785C95DC430791E42CD691C79BA63BE06EC80765C9C07053EAC706697F21720C672B9803DF9935532197B0485BBE42B0DD16561AC0605E9DA73C189C9E29ABA3AECA19C21621B209326418543C44B88843EB3720A2CEC3DB52C59D6507EE5CB03C268B31FC4BF115695EB0B8AD3F11FEDEA1A5D0724A5D5284D0C10E9844D0D32BB5735448421BC5317650BEAC4829B234B787339812F2316ACE8C22C42D6346214934FC0B49ECCBDF8DA19AEE64DE9628C4F7AB3E512A399B0C227B677AC4A69891A6874F6641D2CC95460B751E17E434C924B2947D806856665696E3CC4DB9553B81606C31C3800B48756A073BF685EEA20899C176769E902DB971827D153B9C33516E959C6B469841946C0D921A371A5DE9740C6AB9CA272B5850BA8753CA023A460EBF7BD573C0745F40B90F105EE17C19B6832E019B80F8858BB515F7C709E68F29C1375B22567AFE7B528F4431A94B553DF825CDEB84B4EA9296EAB9AD66271EEC5AEF6F79509A20A182279FDF92F87FB6E7509968D22CA750B5056974841B9654E5716BDC33A2C6A116A4117FA757A1D22710668412B8878E134B70FE32158A2317FBC62F01371296AA42E33C903E0C439F19684B11E2F911F7FB79860C8800F9CA146EABE29DB07237AABB503A9BE2AA7263A0626C162A27537775792B2E7B0FD347929934AD8F521D4159059F611312AB903879490059BE8B38920E2CB4A256B8B35783E909346D13E9888BEB9350369F7C1A8501331110C651621A616B365A026D1CC47DF440C9E650DD0C0BFC8295439114528C793778741B80B02B4339F2AA4347255B099F17264E1B8CC0A2C7C2A1A79F7997B907FD0496C6E6C8AD7714F5F339D75F11F625591A869BE1175AE47F05FD4313468232BA6957D7807B824F445AC99A0D568AB1AD54DCA8249D1482E61275F52248C77F61A4248753188CD1794CD0A465EC0DC4B025985C461B74E76286E4C37E77405695CC9FD0654374B427A20343AEC0FF1A187768273BFC4905472A1DA387F14559D6CE87313F6A5B6138434539F9A13684055B177E543F8B40F432ABD7CC49989A50A9084C660913F45A8593B17499BC4CF936C2BC1851421CB986808A0EF30AFE97AAB5B8B8EB3F0B3506A95B91563A0E57DB7231044987EF141BDAB3537C316AD16F17805A81F29329879A94E96157E4B7447F7D59603B21BD896CC47B7CD4E232322EB9C5D2215696BCFFCA3A04EFCC4C5D9CC39AC9A6E8700D38C244B0169E7FA1FE81B4B10365E74E6A1F7F756D11ACDC84043F81006D62995376C22535958FEB53F78117EE0F61C4C862640D06DC57A2B8BE62A41A642AF3BC63F6BAC98BBBBFF70570F37B8F8D9572F2735657A6C98F96CAF57A849868720B2640B8BB2732237A1F984C18872D10289CE43C952C9257E06529AEB76AFD127B17596FD25C5216C9CABD9B18EFC50E87BBB04568BB7D5C4E9288C006483AF5912E19108573700BD10CD77224B80659EA75AA74270B33AC4008B738BFEE271E78658C8742FF13C96AD0781A03C7576CA26DD58B52980BA58C0505E446AFA140CDCEA0490DB1F9B18815D4314B2459CACC562441C91F4084E5426C88E632CF7482E79907911D06473260835D7B85E7856A829AEA0381707B939CE86882CC09C4448C6AE94A9C303107C5667EEFB8DF7763CC21189A3C590C40AA51F491503A7935EC08F4FC300CBE607ED8C9100C29FBF45584B13C8D780069337AEC76C36CEB70373E2AB6E7B934B466F53FB32EAF040055496B8540E23A2A277E534468608D5EC0F8D38CEA5BBB806C1BF4F164F6AC826FE733F95461E29DCC11200C0AADA1B8332023EAB329718CE25CC0A09555903F3578BBC863B1752CA94365DA556DF54C3B7E05CBB7115FBC1B6C57A172C31B9906560C8FB54F3C563A2256CC073243B8179B4A28D60E086CF51082EE429272996F0AABE03BA0EAFD3C8E7D954BD0933E2F60ED0C32CEDE7B820A28E48F3CA3C40913CCCAE2337ABFC59843F08C9863325D65A4E9E15C1F46172B118B2B5EB0F1D5158A00134F27B085488C3A0621FE4E5678698250FB74EE5152E3E35A66544A05D279EA99131FBC15165060B90F88EEB7B20892A4DE4CB1683495BD7DA037966B47CC040F1764C5DEB06B5499D4267391CEBBB47F734D8539E39528436A1858182854BF20B1F93279AFB706464C65CCC5AE099B37CC03556C26ABF4C3F8B9BA3A936707211A49A59B268F5284F7970C77612719450377417428C4BA47C9CA115CF95304C4759C5D8859B44985C06A6C924689237BA320D610960D61C53E85431789E67A40113F167FF93429C264F6CABC95448C903437D39A6577BE0CF0012852AA476351A9046A110A1A625A3D74C910B78BCE9CFCA735E4F91B8A4C57DBE489E849446098AACF73070AEE638FCC8896473D3C159D3AFB4B687B40DFBF371A9C2644B605187B71A14BC4C8678FE824781E66EF5A7A221619F6A64039CC369843E10DF5C859F6959CC3FD8E5272330FD1CDACB8740C0B87C4A379575F187B367CBFA3B300BF591B109F79816E9CBE8F0",
            "nist_ek": "28C793778741B80B02B4339F2AA4347255B099F17264E1B8CC0A2C7C2A1A79F7997B907FD0496C6E6C8AD7714F5F339D75F11F625591A869BE1175AE47F05FD4313468232BA6957D7807B824F445AC99A0D568AB1AD54DCA8249D1482E61275F52248C77F61A4248753188CD1794CD0A465EC0DC4B025985C461B74E76286E4C37E77405695CC9FD0654374B427A20343AEC0FF1A187768273BFC4905472A1DA387F14559D6CE87313F6A5B6138434539F9A13684055B177E543F8B40F432ABD7CC49989A50A9084C660913F45A8593B17499BC4CF936C2BC1851421CB986808A0EF30AFE97AAB5B8B8EB3F0B3506A95B91563A0E57DB7231044987EF141BDAB3537C316AD16F17805A81F29329879A94E96157E4B7447F7D59603B21BD896CC47B7CD4E232322EB9C5D2215696BCFFCA3A04EFCC4C5D9CC39AC9A6E8700D38C244B0169E7FA1FE81B4B10365E74E6A1F7F756D11ACDC84043F81006D62995376C22535958FEB53F78117EE0F61C4C862640D06DC57A2B8BE62A41A642AF3BC63F6BAC98BBBBFF70570F37B8F8D9572F2735657A6C98F96CAF57A849868720B2640B8BB2732237A1F984C18872D10289CE43C952C9257E06529AEB76AFD127B17596FD25C5216C9CABD9B18EFC50E87BBB04568BB7D5C4E9288C006483AF5912E19108573700BD10CD77224B80659EA75AA74270B33AC4008B738BFEE271E78658C8742FF13C96AD0781A03C7576CA26DD58B52980BA58C0505E446AFA140CDCEA0490DB1F9B18815D4314B2459CACC562441C91F4084E5426C88E632CF7482E79907911D06473260835D7B85E7856A829AEA0381707B939CE86882CC09C4448C6AE94A9C303107C5667EEFB8DF7763CC21189A3C590C40AA51F491503A7935EC08F4FC300CBE607ED8C9100C29FBF45584B13C8D780069337AEC76C36CEB70373E2AB6E7B934B466F53FB32EAF040055496B8540E23A2A277E534468608D5EC0F8D38CEA5BBB806C1BF4F164F6AC826FE733F95461E29DCC11200C0AADA1B8332023EAB329718CE25CC0A09555903F3578BBC863B1752CA94365DA556DF54C3B7E05CBB7115FBC1B6C57A172C31B9906560C8FB54F3C563A2256CC073243B8179B4A28D60E086CF51082EE429272996F0AABE03BA0EAFD3C8E7D954BD0933E2F60ED0C32CEDE7B820A28E48F3CA3C40913CCCAE2337ABFC59843F08C9863325D65A4E9E15C1F46172B118B2B5EB0F1D5158A00134F27B085488C3A0621FE4E5678698250FB74EE5152E3E35A66544A05D279EA99131FBC15165060B90F88EEB7B20892A4DE4CB1683495BD7DA037966B47CC040F1764C5DEB06B5499D4267391CEBBB47F734D8539E39528436A1858182854BF20B1F93279AFB706464C65CCC5AE099B37CC03556C26ABF4C3F8B9BA3A936707211A49A59B268F5284F7970C77612719450377417428C4BA47C9CA115CF95304C4759C5D8859B44985C06A6C924689237BA320D610960D61C53E85431789E67A40113F167FF93429C264F6CABC95448C903437D39A6577BE0CF0012852AA476351A9046A110A1A625A3D74C910B78BCE9CFCA735E4F91B8A4C57DBE489E849446098AACF73070AEE638FCC8896473D3C159D3AFB4B687B40DFBF371A9C2644B605187B71A14BC4C8678FE8247",
            "target_dk": "bd0b4ba7e1502f877f122734e1dc8adccb5a76b1572a37ce4f503e00c6b106e24467d67c7f28c2726cbe3f39395478197a79a86e794fa79c3d3a801bcac592a7e5a88329872d99557941b893f186fc4c33b5a431b69399b397c185b936e425026347a4b9769f30e431a49408a9a242205585e260139265ce94b29742f22bc97a3598946019d15167ba01b6a7722918bd9e7aa4433483c4895a8d0561bddc94d180301ac4b64aa7ce6c0cc7918249bd3c7c4386c604b5aa7ab5186bbbbeba6619e2b41733cbc21e7789fc5075dc44bb9e62b7ee2abd12566e7935cfd268275cc11185c10c888ba695fc47b8f21137f4490fc5974570195681ca1e89521b586f0c0647c384ac5aac203bb2cf0a547b43a48b1d089c9de0cb8e4a47f81ca4f085251e5123941a790c4816a535b12346aa2fe19ecaa31be8fc891321292c38246ef0646890a308f91a27d2274a456dade06b9e7750a0349047fc50adda1965491153b3075fa31118e444fea4a90e84b0a23322b664152137c57cd89f14a558be24bceaf769bb072c2e20aa4f712a34887530f04be7d4442f7810a9444fefb278a5aa07d9286ea4bc04ee9124a98bb8d010788862251567186f86414516614b501c29b6454a5435ee488d73c716a1d59bffa82948dbc30b10549f0048d191b96c0109c09b1a64547bf9733b1be985f4d254ef865fe95ca8509976dd100a53e86fc90b04309470324410a304b0ee052453015308d82584247e79b61257888583b28f4971a3a64c27bfc9905cb6617ec97487e2258834819ad6ba29db5321458974b382b93381622680c09a61bc6577bd274454854e8b9b617afa7b41e31be90b6f55293e958849baa265f823bd84e3b41e41c22d1324373506439396ee4697158045e7c54267d3864acabc9a61a16ea2ae84b170202019d8aa789bab4640750ae0f445ea86c4e59a89a20955483ba2220b733b2302e52bb798f35a0a947cad22b8e6860a4d1b8a63a2298f602f8ad3573aab0bd1409a76a6758f88580595462e149cfc81cf49f87bb28a5f445b8521044e8d8c3b7f67351e376c856c9ec2e02dc0570fcba450cb767644834cdca032a8b21c02cb2c984b34c12629add094383469f0bc09150100bba92efd0a139b126f2c60665874b65908afbd3aab9c363329e59722ec996cf36f2b2c2c2958550940c59126696f09b887053eb3d019f5da6d8038427be284ff78486e6ca74992aff9c4cecae34e67d922d49cc9dfd2c6d996686ecc4d89f56bd59225178bb8f0b64e639b9f92050ade7bb926ac177f6aa6cb263eaebc00c3c03b8af8b9bb8b724dcbbcdf6b674c82349d1668a2966bba4bae3191ba6014501400437454a121a0acdfcc578718416a9a77ac228d3c23141cb205ad93042e75a4ffeb6d3c37521a835738e14357581abb385b88e4a34f3568a6a61e259c9013aa28ac84888f3b032fb9cf12ec7fdad72a61370476616c3a19293413cb9049685432897d9c9f6abc725b4303509072b2073b56f15a42e007ed378ad8f608633b493108aa5c1c0e4469415f1a0f002d5c24a692d9b0aaed35b0130922ba969ce7e3a364653a25f1ba3b380884763de93b3d4c48378440236ea4aeb37737cbd3a87fd7bfa93144a4296e1b8532b1b0c1db7209cf1c3fd4243ca9982acfd797961044bc85b786814584c52f488c97896c53f72394226088e9e5a8ac9939e44362f7ab19c4345aaf33c33943a32c3c9bcba48f4961cc37f10cde300709f0160bd10a180a21d0762d925a71e278127cfbbec889b801630314624bed0616f0c16b689cbb47540bfb01a9c5e980c4d5ca9bf30eba5150d72177af39c27aa9ac3942240028a00e39ca2dcc193d2896e0938940f9c769a973e163471d8b92c200ccf7c76664c286827aaea3bccb2d7caf6734c8da2516d1673e15d94dab8895fe150ad5d84053880f11064e2c488d9512332884a04001adbd71888df1bbd9b86a48720a2c043e988780717190a044951bcb06045ccaf0568b49f524c01a1b8756c924884c67b5aea2699ec0ba752cb0ac5decb6fe618aa1fc02fca9451759b56f336da13970bcaa4466e46a356630747424d9fa363bda202874b3def30a1f4a325c3608d8e0613fc6b08d43c34de864eff57eb80547be67b0565b140a381f9eb57fb8368a7031627f14b36b7502e8224e67760453a9b6111a62cb309f2ab60f8852c25c43b89e97495c9598b03a4aba1654e15a2fab130fcfa58dc3f00e42d536d35a1ae4183a73563b33100d640909cc21157dcb6846dc9c18b61ea8dc6e71f76125d17f34186aa69374428211e5b72cad0b9dccd6b3055a84a7482784b1a6b2375c4ce43e3ba06384da7269c9c617bccaba456bbdc2b02983a626a4020c6c80874849a1679f4be286ec2145a3466bf7b73c49f83200d93f54157297bc8c8665b7be3731fa4b4b216a90efdc9308c47d902b19d25c69bde35add0155c7fb52e71214665011e636c0595ca99b3b0d05d88a1c14466ab176bad388beb097d4f6b648a8765c4a153c4369f10a7d8058ac7b398302776f34312afc3a53379512a353c94fe7a039d7b32a88b6e46509dbd8cf94cc5ab96a7ef7457b02c342c2838342745b4e155c04889068733478574a57033f4c62718608c072271cd20a31e3362f4b729e612303780c119a2b7a28c119497605e653bfa790c95ff346eec7a629239160497c5467561202049ba4c68dcb32560197a3363a4fcc04df169205cc29919a67a9415353f08860241bbf132039962c7e52a335957c74b3af2e47bd695579299b41022b3cf2e90c832c1133a091e1f829949a259febcb28b59a009733e468053a4858a6b98d31aaa8aa7560e6d9000fe19e24f71bed0600d1d43bef069f9f5b0261fb3f9ecb1ce3277dd14b8222eaccc0e65229da4e6d989793ab22c041422385a83f22a4a3f1322a69b1e037babfc0be84479800e1850410433041a17da8870ad9ce0f5a09d38665c730552324b3a13caab54a3c9c3707f45a87222c3728147f770816fea9812d1500c06aa67d2b33e8f2230f8519ed6b188e83cbdccc901b091cc8b6b61adca902e4661aa8327a7269f47541cd6ac3b49a8f1bfc1003fc8f45551fc4322eaab237145369e89b0c8b31727c66b307d99824199905c4300d63922cb27c1cec30ed19478229c1893910f6b13ff0427cc4aa7555d438eb2c37363b08de5165a3836ef408a446e97615f682fcda03c6f8cbd4d7679b6061b80526e4fc70b7e45577c3c8165f096408166b8d9aac786026067b6528ef84241caf050c847f347107447cc0d5b498ff87652542ce9e3f37c30b7da07d3540d648f2441cdacb8740c0b87c4a379575f187b367cbfa3b300bf591b109f79816e9cbe8f0",
            "target_ek": "cbd3a87fd7bfa93144a4296e1b8532b1b0c1db7209cf1c3fd4243ca9982acfd797961044bc85b786814584c52f488c97896c53f72394226088e9e5a8ac9939e44362f7ab19c4345aaf33c33943a32c3c9bcba48f4961cc37f10cde300709f0160bd10a180a21d0762d925a71e278127cfbbec889b801630314624bed0616f0c16b689cbb47540bfb01a9c5e980c4d5ca9bf30eba5150d72177af39c27aa9ac3942240028a00e39ca2dcc193d2896e0938940f9c769a973e163471d8b92c200ccf7c76664c286827aaea3bccb2d7caf6734c8da2516d1673e15d94dab8895fe150ad5d84053880f11064e2c488d9512332884a04001adbd71888df1bbd9b86a48720a2c043e988780717190a044951bcb06045ccaf0568b49f524c01a1b8756c924884c67b5aea2699ec0ba752cb0ac5decb6fe618aa1fc02fca9451759b56f336da13970bcaa4466e46a356630747424d9fa363bda202874b3def30a1f4a325c3608d8e0613fc6b08d43c34de864eff57eb80547be67b0565b140a381f9eb57fb8368a7031627f14b36b7502e8224e67760453a9b6111a62cb309f2ab60f8852c25c43b89e97495c9598b03a4aba1654e15a2fab130fcfa58dc3f00e42d536d35a1ae4183a73563b33100d640909cc21157dcb6846dc9c18b61ea8dc6e71f76125d17f34186aa69374428211e5b72cad0b9dccd6b3055a84a7482784b1a6b2375c4ce43e3ba06384da7269c9c617bccaba456bbdc2b02983a626a4020c6c80874849a1679f4be286ec2145a3466bf7b73c49f83200d93f54157297bc8c8665b7be3731fa4b4b216a90efdc9308c47d902b19d25c69bde35add0155c7fb52e71214665011e636c0595ca99b3b0d05d88a1c14466ab176bad388beb097d4f6b648a8765c4a153c4369f10a7d8058ac7b398302776f34312afc3a53379512a353c94fe7a039d7b32a88b6e46509dbd8cf94cc5ab96a7ef7457b02c342c2838342745b4e155c04889068733478574a57033f4c62718608c072271cd20a31e3362f4b729e612303780c119a2b7a28c119497605e653bfa790c95ff346eec7a629239160497c5467561202049ba4c68dcb32560197a3363a4fcc04df169205cc29919a67a9415353f08860241bbf132039962c7e52a335957c74b3af2e47bd695579299b41022b3cf2e90c832c1133a091e1f829949a259febcb28b59a009733e468053a4858a6b98d31aaa8aa7560e6d9000fe19e24f71bed0600d1d43bef069f9f5b0261fb3f9ecb1ce3277dd14b8222eaccc0e65229da4e6d989793ab22c041422385a83f22a4a3f1322a69b1e037babfc0be84479800e1850410433041a17da8870ad9ce0f5a09d38665c730552324b3a13caab54a3c9c3707f45a87222c3728147f770816fea9812d1500c06aa67d2b33e8f2230f8519ed6b188e83cbdccc901b091cc8b6b61adca902e4661aa8327a7269f47541cd6ac3b49a8f1bfc1003fc8f45551fc4322eaab237145369e89b0c8b31727c66b307d99824199905c4300d63922cb27c1cec30ed19478229c1893910f6b13ff0427cc4aa7555d438eb2c37363b08de5165a3836ef408a446e97615f682fcda03c6f8cbd4d7679b6061b80526e4fc70b7e45577c3c8165f096408166b8d9aac786026067b6528ef84241caf05",
            "tcId": 26
          },
          {
            "alg": "ML-KEM-768",
            "exit_code": 0,
            "nist_dk": "0E62A20CC7B3062B2EE82CAAC1005F0E9655B03BAAA905AA59283126149B60969B2720563F1BAF1A93908CF41DB362589E9694C3E6734620AF30FCAF3186B5B42B5376390BEF3B4CD1833BADF19DCCB0334A68B1C6541874659FF14CC49357C2B5EAC09DAAA77CACA604242F85039A89FB456DE488FD06137E7C527E76A18B5CA066AC95A93094B300185B001F44CC2505813534A949F335027B6C12DE7C580451A53C499DE6263117A17B5BA64471A97C0579A4FE3B20F5D24569C85D214155B4E9818D9466184C8E2FB843DF396B2AC18FCA8B61B8387A2B3458E9D0AB9E2B751BE34DD5C70132595835DA55D454C301F13B8BA542EBB6C1E86B2F621312E4B80A54E106A7E5743257CB52603A68B4A9F5D195B1283150E48F9766A1BD248438C92084B451EABA445AFC6BB03805B963537AC8255CBA18D4A9832B2752EBD9B5F7B8AA52F5207B82945C473278DC5D7850C0921423587401D9210053C9C9844460917553A60A099449A7B0D360E00044FD9932140CC1D1D444F14010F8F35869A03728951E28B7C203C5CE3F7AA61205D08A15B181C0445AB27E3F889C0E72B050476CFE29420085A09D203B1C73ADB6B59074893BC3A7533758467D6046E3633044C8A1E9BB3824B72EDC7A8391721E01E4A2A214BB71008B1EFA343B064901831B20698D3958991DD9C22058A0AD4A49657B929AD926EE1B608CB29DB3174B27CB09F7A75CE617A21AB971A28BB6445267EBB838DD3B3BB82759C26A021D0382992A6CAD218ABC44A8D9667A07F5040ADCC1423CAE1363729BE457FD94C025E1B48F071140DA992E1A557A7497907CC729E33E773221F79096ED8BB830373CFBE84F5466A02D1302B1C09215983EC0229B61302F77AB4E698016A600CAB1F9729C320F65EC1537733F3976C4AE75723903BD83437B0A519A53E56B5C49C5C15980DC5341BB45305229536D324F513615A459C5D69019DACA536C42427332279BCB8A74503F76A5AB90EC7476105BA69C518921C62AE043B5E91DC958949D57B0BEF7903CF5CFC5A06C0654A60F48388DA4723B5B3A320184FE6755A881B27C2ABE23A0B63338B1EF778DB47B2CDEE043F0F5390C84BAE4D2B3ADB2B67558B567925DA6E1B33CCB3B87126293BAA2A8B18479D65C4BDA14FFF45E64223EA6E455506164F3F453651439D275862937257F666CDC564FFA255ABBB3B6FC8493FEAB7E76E2A17E849044E62A1F980A57BA5B9397271E2B5D5B5063EDAB2098FC561D10C731AA9D7AC13FCBC793EE659D6994BB00D53323232C6A192DCBE39F6193676C69C256E9050DA78EA442078374A27BE054AA30462374B992C8A32F0440E2DCAA70927D06C97EBF4C04C9557A622203187AB514C0284ED45BDFF560F3B3A15A6A6F0A6B098DF3C9BC083348138710D8B5D97A2EBE2A90DE907658F7B8B67865A4BAA111898BDCB5521F209C5801861D394BEDF51B0302888D39A73BCB07E3E99C2174BD080B1EB4086199B4859FD233D9BA3B34A04CCC67BF59896D98675AFC4CB1656005C57BA8CA5A1B085B686A1C27BE292FD3FC0D7594522C9232DE4B09541C3C1C11A2ABE1830AB3BD80B313369407F66C970FF61586A040F7DA4743166BBD4C97F4B57D4DBA6FE40A48498B001A502C28385B74306BBA43C670ACB191FB031C220CA3238AE1CBC961E66898A4C19C0A4BFD076863651FB91A31C75A33DC18B53EC6C56679159783A563C4504CA10D1405C261F8C7FFA87280242EC8BCC3077ABDF371CF55C140D0A131E6529B40788F1943964136000CD7319E05553EA58E5898384822A62B8AB9BD03609F1566F53435C472520D957703090794179EBC73744525A8F002A14270CBD1D4B6E2538353765D49F5651C1C34CC228C4E753C5210BFD00CB378D6A4ECE80168D54A4C62740A0C4A292A42E1621F2C499E4FB94E37912C9CEA7472C65B27F65036E85D5512C38D3582DF290FA819BDF0E37EBA7C2607E6A94A2323A0FB88A6808B2F444E33999F1A10830F715960D563D0A43AAD7AC7F0B4AC4A9A3236286D5249C83DC5C4666354D0EA5FE06530E4081370264566E47ACCBC22380414FF530C394007FE6CA79DB0AC53FB2B06719908D15DDE432F03C84463EC5009D81E9882030360A0FBC34F156391B6E3AC92C795FAA2199BB4A9A33A994A16AEDB6558CE901C4B60295DFA39CDD5B97C9B1E9C3199C825BD64B819D8346B1EAA6A5F5A4BB90A7F32253D7F7BA2778BB796BC707BA53CBA7A36E3682D54C3003F572D2779AD543247C6D78EDB63739E17029594BAC09620651227C8F072C7F51672385F62E06B2C80A4160BC73C8691C5314914F4537266C0D2EC74365B8CEB99C71F076BA772493CB534192A70BD576B1BE0A42D2B87DB45A423309704BA17CBD7CC610095FAB3CA61281AB2949A0D2B548A1110852073A98C4C612BB095D28049201C4F08A6083BBB60A65CBEB81B6D2A40E0D7AB0628B5EE251143812AE9B6524174C420A82D486350954AA1E6442007239FC7ECC969E18507FB55C78CCCA6C18842D745BCD9C425DABA9033B8161374EB63244F2570D228392174545FAA4664A886118A6948451DCDF489A1BAAD5E2B605B4756F3124F80B546FCC61AD30660EC342228ABA6CFCC06E61884F96C7F675711C84451D3902C206B6F1B928A2701C021E42FCB49C28C19414ECB9288C4A51E957B4D742D0E5307D731AE0EEA9D7BC9B48BCB332EFBCC3894AF4986628FF77420B6B8ED75C4F54A063B49265C38CF17B95DE45A64CF30B5EBA5643603B28B2C4948E2A2F1E8C440C54341491B20D378DE5481CDF8310074A69D79767EE1135FD8AAE3934449B406AE447BB33148A08C1C0EE4A615A44C42943CE3D56ED50B77BB7C3D4448C106363472CA0F11F526349C673FC2C8158ACB21BC3BBA9CC39891672FFCB4B3E165E6C4A1D156AD7F7085BBC49AAC5B5AA2682F165560C4132C49E0B12FA4BBF4B40E630B375086B3EFF66B07B0CFBD207D7F1AB67EC580ADA48F36308E1566CF2FF5BD1F84B9161A73014290C384BF9E0B0AA653CE4F8C6D05CB087EF846A1478468E06F81D0B5406B9AC937AFC2795AB4472E0BA964DF4259E849030108D083BA6ADFFC63E4B77126C3BFFE389401E15EC6A88BD0B5B32BD06AEDF80792636F167589C346A6E651009557CA079C593270250D9ACB3A1BB06AF03C65F88D71EA932EB79553D60FD4D34499F23FA3498BBC3A89BE3369661CC2D292221A9B8CF379DF6702808576A37975C9B593EAB54AD4B8936DA5217C6B843AD33D423290E0CCB74DA11B95294FEF12EC690815FF103075053B89C5021AEFF4CA0C012DD6C2F0918B9EB6182474EB86D848F65974759D59CE151A396DEEE4CA10D1",
            "nist_ek": "43166BBD4C97F4B57D4DBA6FE40A48498B001A502C28385B74306BBA43C670ACB191FB031C220CA3238AE1CBC961E66898A4C19C0A4BFD076863651FB91A31C75A33DC18B53EC6C56679159783A563C4504CA10D1405C261F8C7FFA87280242EC8BCC3077ABDF371CF55C140D0A131E6529B40788F1943964136000CD7319E05553EA58E5898384822A62B8AB9BD03609F1566F53435C472520D957703090794179EBC73744525A8F002A14270CBD1D4B6E2538353765D49F5651C1C34CC228C4E753C5210BFD00CB378D6A4ECE80168D54A4C62740A0C4A292A42E1621F2C499E4FB94E37912C9CEA7472C65B27F65036E85D5512C38D3582DF290FA819BDF0E37EBA7C2607E6A94A2323A0FB88A6808B2F444E33999F1A10830F715960D563D0A43AAD7AC7F0B4AC4A9A3236286D5249C83DC5C4666354D0EA5FE06530E4081370264566E47ACCBC22380414FF530C394007FE6CA79DB0AC53FB2B06719908D15DDE432F03C84463EC5009D81E9882030360A0FBC34F156391B6E3AC92C795FAA2199BB4A9A33A994A16AEDB6558CE901C4B60295DFA39CDD5B97C9B1E9C3199C825BD64B819D8346B1EAA6A5F5A4BB90A7F32253D7F7BA2778BB796BC707BA53CBA7A36E3682D54C3003F572D2779AD543247C6D78EDB63739E17029594BAC09620651227C8F072C7F51672385F62E06B2C80A4160BC73C8691C5314914F4537266C0D2EC74365B8CEB99C71F076BA772493CB534192A70BD576B1BE0A42D2B87DB45A423309704BA17CBD7CC610095FAB3CA61281AB2949A0D2B548A1110852073A98C4C612BB095D28049201C4F08A6083BBB60A65CBEB81B6D2A40E0D7AB0628B5EE251143812AE9B6524174C420A82D486350954AA1E6442007239FC7ECC969E18507FB55C78CCCA6C18842D745BCD9C425DABA9033B8161374EB63244F2570D228392174545FAA4664A886118A6948451DCDF489A1BAAD5E2B605B4756F3124F80B546FCC61AD30660EC342228ABA6CFCC06E61884F96C7F675711C84451D3902C206B6F1B928A2701C021E42FCB49C28C19414ECB9288C4A51E957B4D742D0E5307D731AE0EEA9D7BC9B48BCB332EFBCC3894AF4986628FF77420B6B8ED75C4F54A063B49265C38CF17B95DE45A64CF30B5EBA5643603B28B2C4948E2A2F1E8C440C54341491B20D378DE5481CDF8310074A69D79767EE1135FD8AAE3934449B406AE447BB33148A08C1C0EE4A615A44C42943CE3D56ED50B77BB7C3D4448C106363472CA0F11F526349C673FC2C8158ACB21BC3BBA9CC39891672FFCB4B3E165E6C4A1D156AD7F7085BBC49AAC5B5AA2682F165560C4132C49E0B12FA4BBF4B40E630B375086B3EFF66B07B0CFBD207D7F1AB67EC580ADA48F36308E1566CF2FF5BD1F84B9161A73014290C384BF9E0B0AA653CE4F8C6D05CB087EF846A1478468E06F81D0B5406B9AC937AFC2795AB4472E0BA964DF4259E849030108D083BA6ADFFC63E4B77126C3BFFE389401E15EC6A88BD0B5B32BD06AEDF80792636F167589C346A6E651009557CA079C593270250D9ACB3A1BB06AF03C65F88D71EA932EB79553D60FD4D34499F23FA3498BBC3A89BE3369661CC2D292221A9B8CF379DF6702808576A37975C9B593EAB54AD4B8936DA5217C6B843AD33D",
            "target_dk": "6ca0cd36e91de8c2aa49885dc8915d7a382b4caa154f979908d954f67463460c90de5423b5b1255243086d974d33419966d170fdb0631ae4b2554556710abdbae49076ba6ca84783f73c5b42a2161ad24075732f3c3b16f4426b81911c48e99325fbaf52992d07311696c69662bc739cc948430a04e46b7a43197d84b20d15b1632e8c2d327c71e6e4b2bda31835dc723559068327706a33b7e7c11e0ff52455269d90e7b71db35e41e642a40388cb4b360fc35b49383c771b7034187b7144ae907c2b18293157093af7971706f96c90204f3011207ff0a3e0355969b65dbd555a96883444936ee1a18101b76e3677bec8380458511fab81669774606e073ed448c66dbc947e672d68d85a2283bb56929676f26be91b222ea1540a066b4f984659dbcd15a9184d1b5d99c6c28caaa07844993989b26aac0c4d66b7e560347ad00f67376f54d784482c314869a860dca9269b5fd8f0a73cb97b4d658957762c95a0774b08c50d1291f8e7a79cfa26448013adfcb8b6a77f1c838ff3aabaf2573f81f29e6f12ba5994bd55e63c23c8b0a2636cb841874b355a5ac2bb9208b058d1a6611b9853887a103002aa10aeaf57337566c586da834b3a05dca29d084190a79651cfbb762e6cc902429e14055b48045526d263a042921075bfa97385348a82cecc74f77449bdd06c25c15a4cf0b785ea2edea06de7756c22acb7740b32f64c8685627e3d14adf403c9f6aa955caa44ccf677de954899a1787da17e7e4b9339971a4a999a52c18c576286c074a12ae6c7ffa45e486a2ef2332cdb3a023eeb16e647745fe2002f96795783352f221214429128227851b41f0ca629550b344efb9137f7aa7ff038a10cbe1d0a119ce17a3f4101a4c7bea90b02639bc811cc0cc7a776b1758f1117648bf1be84745f2a8b3b46a4092910886939a55d618fd23bbae69442c8588e8ba3132b21c46e6456b3a846e7fb6b6e081f2aca08b40839c08b5f9a7c18d929c281fb74e8bb1614b6172c961f10c9cc670293314bb560d46a57c0030677abd4952d58c4ccb4900b19e1730ab83aca4a2c00595d894c3cc3f1521e014136529f34e8c6ffb5108975059e50c9407091d4f75e9bf2277441ad8a61066b5a644a633a5285ca69d54cfe713695b07334ab34293a2ad6f64d09d27403e956e68a8c0439332c41177673a5f3376a903653a772099c907490005015177bfbf877d8f8a222d277d22b116a9138b28145742838b537b1f03bb05d111415a525afb6b851e3139536083e835ff2aa451bc82b4fc75a6203259f160909e19f82e5162b281470388c097015db714aa3e0936dac1bebdbbdc0766280790d833856be6abca41c2767929b75e7296e7671f2d51f1aaa039ee2c6b84bb9fa016b26b55f96d555d9b50212592632d4b78fc03023664aa8d9cad4362c2f472f8398154c116cd0e87d90f7b75f8876625520a2b2c2bec13ff3b8527c31158674695c505d385c443e83b6c50c2a0d8207a57175e6a3bf5472608c722314e46a3d7b9b54ccb7d3f52a86900316ea24ba4969ef0290cf4081f337466608c14ccb8c1ff88de4316bbbc70e39cb9cdc643c311232f03672e6f0af6fd78e77f42583518ab99b36679236fee79e6a7ca4fc4bc4f66712ce0c55bbb71013299f59032f0f92895ed71c9b5690eac845576bc94f0b3988d248b1d3c72a71025db56a0bc7b102d47920798c9f295139070002f700ab1a3ee8da2b52e143c803a24829aab2234ef80b9decf1873beb8dcec776d6c3413550bd64cc6b65e8795c1146f6c38c6f93575eea8f3313b97c4963f6a25732bc113d35adbd205563da3b37a76d5350c5d2f773f523718afaa37fdb1dd9807a681c931465793356429a92387823704c55bb7d8c46adda39c71469c1177a82a4a3c6f34188e3b4d2b1b893027dd22c301307950b319b8dd5598dd6711c909f761a422652372d3826beb5c37b2c9658949db1f85ec73804b39c3d1ce5232887022bd7015ba132023138132aac0380b093323bd70ccb7ee1aae1d62ea536b195849c73560757153d89c88bf2425aea91c65fa75baad3229498cbc43cbf739cbc104c93f6164c66a462fe75852518603b147d15a46bc2fa7edbbcaa0c69b6f237acad12b7cd4a750cdb75d02b6f4c8571519b42eff9827917ab5f665f5c86881e529622bc128ad430c6174644f86ba010934b683f56227d14a61fab507f89e05c895c65dbb24cd7f9c44182977aa483ce51ce62409fcb1c8654c6460bc8c04e96c6633130c37a021371a4ce473dc1175ad8e6a022b3cd41e2af7ba6baa6f72d8cc03b4977a8f7e7a2bea1893d2a8a5eba8e504b561d88802148b08a91ce0a51317fa864819c1389739c0df75ee43aa2766660139c0d5e1086001c3d4559259d3a83ab734909ab0f36258fd4e64157d2375c7b746f490d15d4c3ebf89045dc8337164049150cb1a86461d70c71476284c51a2abac1e8b63a080a0b1a890b11084229c8a8ebcb95310394430744f319cb49c4633c12545764af604cb9831b2d9d8b2f26e098cd85cbab2a65f8f11e6e1a29dc89602fc04cd54847ed311a9d74afddd87d1c39c12a8c06d92850002c89e22127df785e89554754c85e77763d45a00a7d26574278bd1a0c52262a70bb92c22a5a63f4609bfb5774601cb5749216b4e99f7ac3c4c0808521e00f53c6920db0a81156ba1b766f24f4c879782f0761baea184f3f80ad4642ae28e83661cb4d67b808aa8292ddb0b6dc51764cb498740cce3bb3c650bc9252d295f5359c5193132970215ab59ddd12651a4661e9f6484a106749a25703b1be61b38766ec39bc10735973befe51610b739c42e94a7c458ca34bc1a5313c4e0c4926f1a0122a72bc64a4b15b1cfa668b9474a678e2ccb7997d3fbc8ecc01aebbbb5d0825385cb6bfd86b597557a88d6b87662c8125a92d0e5c6bef059f273bc1e1b958957a0833b1008292382750a0d304c934b0263d66695f015ea6aaaaefaa4a870a899f4a01b75031e967583c11ab3ce187a6f31a79206fbae46445a496ae342368e1ce84b951ffb789acdb26b6c9c6ddea31e16804a7ac0e9042bbc5d7213461aa4c6b0ee25a31f9b7cc97d351c538129d8835c403ad7fca315a378510f393bd4225478c74f8805e0fb3be85e139d6d261bc11494c1509ae6a10227acae28379f609805891ac46a23d74699388b4b6e109342dbc98b5750d5fc226b991bc0fe8a84a739fb833713c97a78b9b548803ddccf0299002a361dd37b55ab2ebf798ab4109e1089e7ce318a1b36d01c47fd6e90647798884883e8fd36ba785c8a93d1d6a41d3c797d5068da4183441fb012dd6c2f0918b9eb6182474eb86d848f65974759d59ce151a396deee4ca10d1",
            "target_ek": "679236fee79e6a7ca4fc4bc4f66712ce0c55bbb71013299f59032f0f92895ed71c9b5690eac845576bc94f0b3988d248b1d3c72a71025db56a0bc7b102d47920798c9f295139070002f700ab1a3ee8da2b52e143c803a24829aab2234ef80b9decf1873beb8dcec776d6c3413550bd64cc6b65e8795c1146f6c38c6f93575eea8f3313b97c4963f6a25732bc113d35adbd205563da3b37a76d5350c5d2f773f523718afaa37fdb1dd9807a681c931465793356429a92387823704c55bb7d8c46adda39c71469c1177a82a4a3c6f34188e3b4d2b1b893027dd22c301307950b319b8dd5598dd6711c909f761a422652372d3826beb5c37b2c9658949db1f85ec73804b39c3d1ce5232887022bd7015ba132023138132aac0380b093323bd70ccb7ee1aae1d62ea536b195849c73560757153d89c88bf2425aea91c65fa75baad3229498cbc43cbf739cbc104c93f6164c66a462fe75852518603b147d15a46bc2fa7edbbcaa0c69b6f237acad12b7cd4a750cdb75d02b6f4c8571519b42eff9827917ab5f665f5c86881e529622bc128ad430c6174644f86ba010934b683f56227d14a61fab507f89e05c895c65dbb24cd7f9c44182977aa483ce51ce62409fcb1c8654c6460bc8c04e96c6633130c37a021371a4ce473dc1175ad8e6a022b3cd41e2af7ba6baa6f72d8cc03b4977a8f7e7a2bea1893d2a8a5eba8e504b561d88802148b08a91ce0a51317fa864819c1389739c0df75ee43aa2766660139c0d5e1086001c3d4559259d3a83ab734909ab0f36258fd4e64157d2375c7b746f490d15d4c3ebf89045dc8337164049150cb1a86461d70c71476284c51a2abac1e8b63a080a0b1a890b11084229c8a8ebcb95310394430744f319cb49c4633c12545764af604cb9831b2d9d8b2f26e098cd85cbab2a65f8f11e6e1a29dc89602fc04cd54847ed311a9d74afddd87d1c39c12a8c06d92850002c89e22127df785e89554754c85e77763d45a00a7d26574278bd1a0c52262a70bb92c22a5a63f4609bfb5774601cb5749216b4e99f7ac3c4c0808521e00f53c6920db0a81156ba1b766f24f4c879782f0761baea184f3f80ad4642ae28e83661cb4d67b808aa8292ddb0b6dc51764cb498740cce3bb3c650bc9252d295f5359c5193132970215ab59ddd12651a4661e9f6484a106749a25703b1be61b38766ec39bc10735973befe51610b739c42e94a7c458ca34bc1a5313c4e0c4926f1a0122a72bc64a4b15b1cfa668b9474a678e2ccb7997d3fbc8ecc01aebbbb5d0825385cb6bfd86b597557a88d6b87662c8125a92d0e5c6bef059f273bc1e1b958957a0833b1008292382750a0d304c934b0263d66695f015ea6aaaaefaa4a870a899f4a01b75031e967583c11ab3ce187a6f31a79206fbae46445a496ae342368e1ce84b951ffb789acdb26b6c9c6ddea31e16804a7ac0e9042bbc5d7213461aa4c6b0ee25a31f9b7cc97d351c538129d8835c403ad7fca315a378510f393bd4225478c74f8805e0fb3be85e139d6d261bc11494c1509ae6a10227acae28379f609805891ac46a23d74699388b4b6e109342dbc98b5750d5fc226b991bc0fe8a84a739fb833713c97a78b9b548803ddccf0299002a361dd37b55ab2ebf798ab4109e1089e7ce318a1b36d01c4",
            "tcId": 27
          },
          {
            "alg": "ML-KEM-768",
            "exit_code": 0,
            "nist_dk": "7A804DFB96B63BA97AF4E35FE6117A82D68509A81C70CB54C68A33280C2640599E918A2074627CC1AC8966A74E08822DC5731E79D82B8DCA0CBBE6C8D1EA6973A970DBB44D5FBA31E14593E9ACBC77F02ACAB7A58D656854F4031DD209A5B33A167943072BBD660B815FD13AAD82A045269A161A86FC5BB72C4CAA704C105C37CF04CC4C8A1643B01C37AF0C8D4D39CA85025665A1B66E907720288BB955A7BBF639123376A3E27D919499BE7A42E1FB09B9AB27029AC076DB2F25147A2BF38F6C5B287BB424BAE821D79875C8C41FB120A1BB957BBB57236684636C758E909120AD01332C60BA5304133CF7837EAC6D31FB7CF160251DA3C4BD1B18B0FA674F1B5ECA1603FCE92928B821A8A68E6A085E98EB2843E722481A0B81E16E2C4BB0F4B0896DBB2C900C8DD7E500A6C84EABB44D4A670D54203E921344C6C1401516AF0168CD1F0821C0FB260044B6F908A68E58170CCB34C4E39919DC747FFA13813240A43631D865ADFE335936034BDA443773B967C8B9636109CCF919A9B6F233F0C3598A7ACC96721CD5489EBDC29549ACC16F0A64C3B0B9C742CD81C504BF6A9898A38D052A36036436655285BC26A249D190E72337D4A0BF191954A5AC76982945205113977A1D6937824C773234CB2EE7716570628BF1048A04B38E5D9C42C3AAAB1581446C3B96CE96674C119A709C0425E6BCE65477252C628C6988DF6316813B6F4D37C9FF339D22A76E3A8A1376498B63AA221FB329EF270614745E94655C6591747DE740586386A6150D66E8557225B38D3173F5816BA12C395C09712A5B289031981C2BC97C51C39499A144C2976305BE1BB08CD6A305212C2136FB8921F337E6D61E8E8ACAA525B8C9C60F3AA66EF9A56DBB247DDD424D67C95DC6B1428AE63CD2A236CCEC911378BAA1E101961864D858682A762113E88F98F25D1ACC9E2E1907536257C3CA97B81091557CA0C691B90DF6B707D55A94413C5382CA4DE2605740156CE738796530781A2E9C629BB1CA0D82B5024A262437243B29E2586F4C8585777EC82898E4942ECD1325D719B21017451B5908691B35722650A81964720ACB595009B99749852035CBD4B1AD51C178E9C97C604FFEF08E7FF4057D274F1E078F46D04298F0CE82A44C8224C31697C25A687DC845B8A55A050D69C6E6A4226759BD0794C5BF0C33CAE843E2FABF738C7957D61206FBACF8B54472C896174195EA8923E3995DE50C9C430C4FD4F81ABD21731DF968E3617575E90A7B430990055068D3390E376FC62490AA97A27F5441A5A149C07344AAB833E19B093FD9BCBC8A05CE1B6FBFFBC7BC424EFC7255178569E2447C59B851E39A2017390B4F230D6DC927BF83BF2F868E104129C5DB003EEC8F9218357A6553EBB41D6CE558CB3B8FF86A3F125A8BED75C675E13A9F343A4B791E7FD87ED4228556A494B5C0CA685AC4AB663527ECCA5E5279F1277AB51186D0EBC50FE5B4B64590F26A87E9049E29735190579DDD194180B60B78579EAD248895C55422A18E59D01E6166BCD19C08D1917280D0265A370D5A34334FC9B29F931C5C68297937198B06791D838492D73C389A9556FA0640E03537F5C744A379892B362B0B1300678F3A7714CDE9B06A8990EAC99A89A12EB606017F841D4BE2100AEB750C3892EF544418216EA437AFFE88059A5A42694089FE7020828160683C0E7EFA4519591A4DAAC30456A5EC2AC39CA0CB3F3920237097E6E5157E1881A09A03AEBA5B9925CC81F20A66D86EC52245E828655032067E8BB813F43BE6DA09FCFA2FC2452EED5CA4DBA87DC306A573911205B53B91187D44214D12CA1147B4174956C2BBF1863D85567B8BA14F24B2B6949F6639288DE34C117391A19B678B3406FF784AB87B66031371BD0073DB89A4ABF597D40213BCD4A93AE834F14A52D527C7486C9DDBF62148036AA55A06ED156A0C0B9366D15B582338BEDB8466317FEC3109139C8CE2C1079A070597C6B712C1B16ACA049F3C8999A95E1DD20163226B96C5724EF6908A9C5DB43637708471E02C31E1B40A226B01DABB057C328717A4BB41F9A32230079A49BEB2E892F9DA40FF947CCA4410497701795C62A113B30AC0A7D143A8CA8C3C0189407F95AB1B05719C1ACCF500676B3596141A409B6C0E952A5F1D456A70492B83C4515DD99B763A24B4C1545ABC8715E61857A89CF6D760D00C7B47D407C1C230C6212215CC805C76979671AF6D3168C73CCA4066233BF66FC1D485E225757783CC0457059CE05B9A2409B7B25415121BB2823B032BB40AD8318A86682A1C9FA6F571A08054939144F1AC2F5D299C97C730F742B75C4521851B8D9FE6AD43121C74AA248B751998A2AD9FB747BCF18AEDB4B4B0E718E979B7F7580C14BA62B42B8997F17E6812BC46AB6799F7519A93BFF43170F2C01B31D96459B7A8956B9DA9B1C2CC7C7E3C849FF326003BA17440539E01498CBA96B0922468DE2345857C3405597AD822004A2B2FBD8723E9F59CFBA30732E3BF68131283B87D05620440A2A7FC3582C20B68D0A8763B5276C12957AFA766C4D0A524800A1D954934FA0CDDD684D85C997BF2C54D8CBCD924B19E731F80B35138752A8E91C0876700F4AC3247BA6DDEBC1657941DFFE96D1803C81B75A6D07CB6CD4C14B8C904020CBB6BDA1D019CC49EC90A12581F944263DFE06DB5E16C94EBA98276B9AC3B13B8A9083AD3190195583EA7A76051A27F2121F46318580C37E50B0429480F7EAC312294CD3C71BDBBB0557C41AFC363A6411805964221D26B0EB7B798CE791EF121BBBAC1BDBB88BD57DCA9114564F4B388B1A2C32912A8BB5C1F21763294498E2B0620F3C085E7C4099D6A3E4FAB7FA12A73E39167BCE99A6F69A293A37EF238CE2ED7A1804A596CA33897F4CB772C4083A55438490D3E1CC1C5E91D9B78A5E67BBE3C7C3B1293CEB0BA7B7E48CB2BCBB30DD70296A17BEF964F265C5A41152964574C0505975DDC10BA9850C6199C83E157F2A74D8FE7496AD2BA6D83586C7624B87C3E00B84B65620DB69643AD9046105B5A6CD8065716C398D0BCE0E1577E3BBE192651692B79DFB747F7621E2C9A87BF2B602105CD893B2BEA50A10D952CC8DBBB1499B9771A3999FB91E0C7438AB641D79A568A375DF1D07E28E2C9C450A72F8C4AA5D71B82A09E1196AA3FCA8E7C684A4DDB635E775FC03604711139F332AE97EA1BA2813B1690BF9CF70F506CBA90641963D5CFAD3698DA30C866C95C66B4846F785CCBF373F4621855FD4815F0920AC4F940CA25DD130DCFA223E9B45F13EE3FD74B1366AFA7F3FFF4B8F645331DB5526FDD7998A4EEB5C27C884DB83A21F601923C559179A3AA5839A148487379EAAD934BF27F3071E1B1FDC21D1A",
            "nist_ek": "3A7714CDE9B06A8990EAC99A89A12EB606017F841D4BE2100AEB750C3892EF544418216EA437AFFE88059A5A42694089FE7020828160683C0E7EFA4519591A4DAAC30456A5EC2AC39CA0CB3F3920237097E6E5157E1881A09A03AEBA5B9925CC81F20A66D86EC52245E828655032067E8BB813F43BE6DA09FCFA2FC2452EED5CA4DBA87DC306A573911205B53B91187D44214D12CA1147B4174956C2BBF1863D85567B8BA14F24B2B6949F6639288DE34C117391A19B678B3406FF784AB87B66031371BD0073DB89A4ABF597D40213BCD4A93AE834F14A52D527C7486C9DDBF62148036AA55A06ED156A0C0B9366D15B582338BEDB8466317FEC3109139C8CE2C1079A070597C6B712C1B16ACA049F3C8999A95E1DD20163226B96C5724EF6908A9C5DB43637708471E02C31E1B40A226B01DABB057C328717A4BB41F9A32230079A49BEB2E892F9DA40FF947CCA4410497701795C62A113B30AC0A7D143A8CA8C3C0189407F95AB1B05719C1ACCF500676B3596141A409B6C0E952A5F1D456A70492B83C4515DD99B763A24B4C1545ABC8715E61857A89CF6D760D00C7B47D407C1C230C6212215CC805C76979671AF6D3168C73CCA4066233BF66FC1D485E225757783CC0457059CE05B9A2409B7B25415121BB2823B032BB40AD8318A86682A1C9FA6F571A08054939144F1AC2F5D299C97C730F742B75C4521851B8D9FE6AD43121C74AA248B751998A2AD9FB747BCF18AEDB4B4B0E718E979B7F7580C14BA62B42B8997F17E6812BC46AB6799F7519A93BFF43170F2C01B31D96459B7A8956B9DA9B1C2CC7C7E3C849FF326003BA17440539E01498CBA96B0922468DE2345857C3405597AD822004A2B2FBD8723E9F59CFBA30732E3BF68131283B87D05620440A2A7FC3582C20B68D0A8763B5276C12957AFA766C4D0A524800A1D954934FA0CDDD684D85C997BF2C54D8CBCD924B19E731F80B35138752A8E91C0876700F4AC3247BA6DDEBC1657941DFFE96D1803C81B75A6D07CB6CD4C14B8C904020CBB6BDA1D019CC49EC90A12581F944263DFE06DB5E16C94EBA98276B9AC3B13B8A9083AD3190195583EA7A76051A27F2121F46318580C37E50B0429480F7EAC312294CD3C71BDBBB0557C41AFC363A6411805964221D26B0EB7B798CE791EF121BBBAC1BDBB88BD57DCA9114564F4B388B1A2C32912A8BB5C1F21763294498E2B0620F3C085E7C4099D6A3E4FAB7FA12A73E39167BCE99A6F69A293A37EF238CE2ED7A1804A596CA33897F4CB772C4083A55438490D3E1CC1C5E91D9B78A5E67BBE3C7C3B1293CEB0BA7B7E48CB2BCBB30DD70296A17BEF964F265C5A41152964574C0505975DDC10BA9850C6199C83E157F2A74D8FE7496AD2BA6D83586C7624B87C3E00B84B65620DB69643AD9046105B5A6CD8065716C398D0BCE0E1577E3BBE192651692B79DFB747F7621E2C9A87BF2B602105CD893B2BEA50A10D952CC8DBBB1499B9771A3999FB91E0C7438AB641D79A568A375DF1D07E28E2C9C450A72F8C4AA5D71B82A09E1196AA3FCA8E7C684A4DDB635E775FC03604711139F332AE97EA1BA2813B1690BF9CF70F506CBA90641963D5CFAD3698DA30C866C95C66B4846F785CCBF373F4621855FD4815F0920AC4F940CA25DD130DCFA223E9B4",
            "target_dk": "44b46e66289b31e906d0a666ecf8b3bea23a8dd93c2a54c3e2545ecf2cc5ec3867b7a7a936fb07d367014a39943559713798b9f30bb098b324682514a7b936441ca7f32b0ec1fa57ffac6a3ee1b99bb6c2128b7726d44c5254c43e2628b340811ec4798f7c1c88e953b1a003e5306ec16a3fd08c68b9a901e1c5748bb6c0e282443ef970e4691fab09225ac54c96b5ab9f087577658dca0c64aaa44bfbc5b9187976e3292f88094444244ac3cc25ea94bcb959678eeb148cd29fc70a3650a5bd82005a7ecab19285a5471b588b7447806ac8b69732a89560ae507f67c687e96823d803c4b1e1265766ba10ec57a0ebcbd5b9c92be66d0a8025abe4aae5b9794456455bc84c71fb02a0db84e4754121079ced448069e29ca0e68abb5909b7d02f40d973f84117c9f721010512d0f022d35c5b326cc71cb8795599734503b5ef8aa1bb3817887742647b975cf27f05b377dfa1af1acaa6197720e4c07e792b2ddab3638c959f75c19f590c4175c69d45d2108cb9c62fa5ccfd180e4aa60dd62a111fe1637b83cd3ed585ee021f22b44e98e27babd7292109ba092b5f3c16b1ebe2689644544d629547a42428081168b8aab041a7c9ab163a162a1fb05e68545fc27a8162712bbf2728a3d2cff6b25f99851f4e590cff400dee6a1a398c897c015f9dc8a4d20c56b6b7366f47920527b779156b8b6534e3034d52162e66c7ceba73a9b3ab4c10c524d0d8a0842a64e64ab931d87e226588e6b0196836a10ee648af396eac286b40530e55b10cfa12580b94ae698574923c6a000699733ba7a850bc8ae4631ba7bf27374396c8c90c2754ab2169daaa46507a208c4ca992d8678452c851cbbd64cc201ff49f5a267d56d645ad645f95153f2a271899346754363eae8bcf74e7c2bae71cc67ba580d94415a1c18f5183c25135a1b0c6d7946ab6a53f2ec463c7305e3ca928c307b51ff19259b859e2773c6edbcee7025b5aa5532fc747a49276212799ce3a46b4f06b1b883b3f212a875c154fbc45bc928541abb5f7ccc001a41d00b2615c02b75747c281cb1ef8d2aef3797ea405663117721c31571cb1c0102007a6318ca4f8675c46553f1458e3183a43d6237ec385919a342313960264a96e4a0b5790cac3b77049bb4237482cd680add0158b15e024d2c0908d82afcde7ab6ab18d8d5681cf268064466040d6bdfbd10498884dc6f58668482f16c99486995a637a334f5b9f373027b5c456739238aef0a141901d92476e9492cd64096721f17ad49a5908402434d500853b2a40c448682aafdccb1b2a4573d8a38b34c51c30cbadc4ba799aecc63df45163f980b555b3eb3cbebfe0ce964299921332b0ab09900cc39c1b0217c91eccda0095939c2e2495b89899f7c79d90442c4ab383de78bf74a771add61b4c554a68a43828e04ec0840232d71a3c54cad59a83fa806a9ab601f691ba023a54a165027ad11a2023a1a8aa323431308892139f06537020b7f089824ca4547e33ab9a8413afc32288ab3da63b00d7e0ac8f0b87e84892a7997b49eb80ce686bc47ab60286270068cd03e27ea319049661a5ddbb799b38b08178314d830f9f8681d759ac2dc2c675fc1d624933aee3981d723795fc47a61721851819c6d608aa073b9aeb2df69447e0028c0fc978709b611ac10786a9743f0228c8606f88580d96802b77d99f3bf499f168a5c78a3ee1815cb4d7ced1872c421c9dacc285cde1224beb05feda2204a8b9d8aa8b58c1376e313119c0af3024ca6068c5b71425e8e29c3fe52e86a6629359544178b8b0359ca33352ba640a069684a9b15d08eb393180450f7430df7a03cd0cad6c516ee6e1adb2950140c3742c091a01050fde990b3a18b066c69018d3ced09c63ef1436f1c12ea1c9a24f055de38663f9f7c4c7f201b03826374a1ae5084ae23bb5604520926a987e5608553cb1e9f62d23f313889c81ed2638c1e3cf45807f1f20caae8358237c4bdbb2781e1076c8d3ae36976f7a2c036753692ca468c05ccf45a4b1f6f7c07b536a119430e12591617c74ab394afad12f0ce280552490f02a121ed1c3829a4ea54a7065d71fe5a43260f2b06e556445a914457a0d70e813b9c95cba50938f661aa200b2c9a4af1bf50d6ba536d0f08dfc5631aa00756fda83d159bdbb2c360072c278831dd427ba91721ce606c07c593a8a91685d7bc51961475b69312965a36bcbb8692542d6e5cd3e8cbf339a12149c8fc38a64ccf5a24a4c986c250c186a681c10046cc2c9cf41538a782bbcaac5e228a89a3b44766535b403633f9c8df91b2cf95c45ab6414a581421ad569c6dabf7e293d30e139bf141f7b1217b86180231794e035933868353ed81f50da2a0a4764bd8aaac35444a7c473ebac62ffe0cbfaf3046089153d82a73fb50074fa1fc0e18989917e2248b1913a0c708001b763b0e698c37fb215f6276b2a0621bae3986fa27414001efa21775f4766cdb21f6f97ac4035c0ec77aa9bb55219c227c83a93a2750d17f30da2857759978a9f13c2a07a65b76325b01c3ce9348023752538b43b4a8539faa19d92b71d4d8a550e4c1923323769953810941fd483627376a8c4f8bc6923c12579a8baf8ce9e37ab3c87b4010a3798d92302c84e5ecb51c1eb4ed78546e49a7e33a29c437a729d8ccf52759152176e7fac11bc1542ec03752a5a8b50d3cbb887c9ef2b0f70f94404d95621965cb5d6c6fef05b6b30c2e5bcc6bcf73d4bf04cc926a587f45ce8e92e638ba76564a66755c77729c916f9c23e795322cba2b77c17f8b9769875ba3f47b821959d965623b029b1e0a513f247c98a89c755e27f52e9c03b894629102d05515da2a7396ab45db835765d0c5d9382295b800ec1e6c72319703df564c8982174aa9de57b92fe3c09ef119542e290757bc70c9ca92cd32a6b892334fb196303abddf0826b757056c52647e03e257c6989e7688620c469d82c8c59c665834ef66c2f7b2216297c6e4c159337c8415d342150927ace86cffce1ab239638c7b95633ea13b0cc5ebe321fb3b178873a7231cc7f07ac3dee409ae26ba00388949b20b1b68c05b0296207d32c3f1462c0b8c84b5a311f7028d6269ecb3c89af5523f519c4ffa163fa94881622a6f5c3b5276c418f95b275cc043de553446262c6244cf6031dd823118d84176b992cdf6c1a58795758309c608878b859b0e4a478de4060f31a22220908a6489d87b757d6ea542785954122c914476b22448f1d3ab651c1b47e0a229480145e7e5eab687fad400e76d868d716130a31f758a0687c2cbad3f72cb43ad802c7634a365343e8da5373954ca4b1ea670b8834e6692a86d63a21f601923c559179a3aa5839a148487379eaad934bf27f3071e1b1fdc21d1a",
            "target_ek": "95fc47a61721851819c6d608aa073b9aeb2df69447e0028c0fc978709b611ac10786a9743f0228c8606f88580d96802b77d99f3bf499f168a5c78a3ee1815cb4d7ced1872c421c9dacc285cde1224beb05feda2204a8b9d8aa8b58c1376e313119c0af3024ca6068c5b71425e8e29c3fe52e86a6629359544178b8b0359ca33352ba640a069684a9b15d08eb393180450f7430df7a03cd0cad6c516ee6e1adb2950140c3742c091a01050fde990b3a18b066c69018d3ced09c63ef1436f1c12ea1c9a24f055de38663f9f7c4c7f201b03826374a1ae5084ae23bb5604520926a987e5608553cb1e9f62d23f313889c81ed2638c1e3cf45807f1f20caae8358237c4bdbb2781e1076c8d3ae36976f7a2c036753692ca468c05ccf45a4b1f6f7c07b536a119430e12591617c74ab394afad12f0ce280552490f02a121ed1c3829a4ea54a7065d71fe5a43260f2b06e556445a914457a0d70e813b9c95cba50938f661aa200b2c9a4af1bf50d6ba536d0f08dfc5631aa00756fda83d159bdbb2c360072c278831dd427ba91721ce606c07c593a8a91685d7bc51961475b69312965a36bcbb8692542d6e5cd3e8cbf339a12149c8fc38a64ccf5a24a4c986c250c186a681c10046cc2c9cf41538a782bbcaac5e228a89a3b44766535b403633f9c8df91b2cf95c45ab6414a581421ad569c6dabf7e293d30e139bf141f7b1217b86180231794e035933868353ed81f50da2a0a4764bd8aaac35444a7c473ebac62ffe0cbfaf3046089153d82a73fb50074fa1fc0e18989917e2248b1913a0c708001b763b0e698c37fb215f6276b2a0621bae3986fa27414001efa21775f4766cdb21f6f97ac4035c0ec77aa9bb55219c227c83a93a2750d17f30da2857759978a9f13c2a07a65b76325b01c3ce9348023752538b43b4a8539faa19d92b71d4d8a550e4c1923323769953810941fd483627376a8c4f8bc6923c12579a8baf8ce9e37ab3c87b4010a3798d92302c84e5ecb51c1eb4ed78546e49a7e33a29c437a729d8ccf52759152176e7fac11bc1542ec03752a5a8b50d3cbb887c9ef2b0f70f94404d95621965cb5d6c6fef05b6b30c2e5bcc6bcf73d4bf04cc926a587f45ce8e92e638ba76564a66755c77729c916f9c23e795322cba2b77c17f8b9769875ba3f47b821959d965623b029b1e0a513f247c98a89c755e27f52e9c03b894629102d05515da2a7396ab45db835765d0c5d9382295b800ec1e6c72319703df564c8982174aa9de57b92fe3c09ef119542e290757bc70c9ca92cd32a6b892334fb196303abddf0826b757056c52647e03e257c6989e7688620c469d82c8c59c665834ef66c2f7b2216297c6e4c159337c8415d342150927ace86cffce1ab239638c7b95633ea13b0cc5ebe321fb3b178873a7231cc7f07ac3dee409ae26ba00388949b20b1b68c05b0296207d32c3f1462c0b8c84b5a311f7028d6269ecb3c89af5523f519c4ffa163fa94881622a6f5c3b5276c418f95b275cc043de553446262c6244cf6031dd823118d84176b992cdf6c1a58795758309c608878b859b0e4a478de4060f31a22220908a6489d87b757d6ea542785954122c914476b22448f1d3ab651c1b47e0a229480145e7e5eab687fad400e76d868d716130a31f758a0687c2c",
            "tcId": 28
          },
          {
            "alg": "ML-KEM-768",
            "exit_code": 0,
            "nist_dk": "8C50933FD05144630DBD942FCD3C1BF037C176257A332A440C88615D8A613EC3C219D2194F362A7BC3291D3A50C5911C26DA86AF2209A6F7A7DE997892B0149B3ACB5D4C1E2F318DDE95B1D09537571BCE152435ABD7072A60BEDF7A525AB98B28EA6E67E91FB2BC49BBBC90BA476A57DC16B5EC8663C72F2CE06B2AC91B645400EBD6B38662A3AB157190F7C3149C7638F08161185A01A594D2795D8CC6BF40996D776528D018C4603950AE4AB892D45CE3D909F2A962C29C5A99A05FBC4C3DD4C711BB8679D5614CBC039D5D13A9E23C2C5C087B7D6287906A1CAF5105F6EAACB90264824174349C21D1D940882B70D981BB2116906120B143F07E0C41709D0B03D0C21D2047A350CBC0CAB65455389FEE273A28F916A2D69D7A7B2D7A210F597235BF4994DDA3B419704C787779F07B55A2F11D94CA492B147E667BA7E77B6F208CCAA8D6105BD441F9A47E147B76EA46B9D56309E1C224D2593B5B084EFE6ACDC8F5A0D4CCB83BBB0743FC8266D42E065086E5692E4479548C399A62B4ABB246A85E4C1B6AE218D76BA984B020B48981E29156A87341D251B979E7AF8B1687F4F1AAD95C7CCF4BC7A0FCC4C33968878A6912052F16227C92BB7EAD54574E552F7EA05ED474371A3AC690601397536E8280268D1BCB3A8602F21B24FFA64B60A04A7A127E966361CD742B2BE404C14B6597DC4FBE60957724B7E16888A1260DED6268FC743DAE33A50A4532CD9396C17ABE684197907C6743C7883126C77BE58B25B75AF821C1ECC59BB504C2C9D4C45803725AFA3EEDD63A6D391AD047988A987F2EF3624B20BD795C38FC27CB9489487E223F93D228EBE9A40DB61E9F420841E74A20159770302A7A4692649247CFE2A4CF53B00C32376B33625928C4FFF278AC08BC413C1DBCECBF86C7ABE7CA4D7EF074DFF9750708A2A5199DD8598DF295AA2997AE3BC02B4EF5C957B50122E5751B0C2C844979C6E617E50A6E7E0CAC8CE0891F2133EBE59135799FC9FC6FEEE2614633A53EC194E3C9737EF68C5F208E881358080314A31CACA6C78067AACFFB572F4790C7DED53A6C6C451FAAC150203A51D208048486911A3A991627812B1BD74C834B9C08197B37028C716DFACB6BD6AB9973731E0962EBAACB4AE53F8C40CDE680C430B45DF0CB00D60BBFCDB7CAB190A63B027E9F5373CD3097145581BAE7B902D08265C488B363114AF81A866023F4B665B19868FB3A291B1139CA336DFDB6C28A74B231549790548E0C74CE067B594C47880D344A9A833033919FD505868F14108C9671535488E5F52AB38B66C615C2F2D3966DA77118FA72356321E5C55E3B9165E2D374DA05C059B47FA36310018357AC367EB8622BCD1BB2C6410DFEF40AE94A7BD1DBC7E2F01292A4CE4E3BC274AA159BE5644780C1041C0213C6311B79B923934E806586BFC15EB73C7CF0F34F99EB1AB99A5ECBE67547002DFEA019452A7F46FB3F1127A8D3B133992B9A2BAC81B94B86862166BA59B76072385E649EA6577B4FF3624B0426F3F75E493CACE7F515FDA953BA208F5B8A1C22FB2FA84B4A9EE72D9EB059E92569680029B3C90201C82D60272AD2D3C6E1914980836FA1704ABADC7C560A186BDC607105C33BA18D19F691968662854A13ECD19E3D93CC15EABB1F4595BC189CB951A957D310D4469CFEB8892021A58D3C023F815D42411C27B0777AF8C25A898C96C2BB519C5830B295EF882ADCECA22D927EBA65A00C815AC8B03B76B4CF56211A32CCC5D9957C52718E6F7240D4E389F0854D160B3FC7D51A9318C743A5748ED06DBC1051AA885E7141655FD378F99C579280027F1242DE118B69E46E2510A5E420B7D8A39E8AB6BBDA342034B1AA3E394DCF02813877A4AC02A76A03BB74804305A21C9261786463440540740A814AB3681E0FA260FFB055D8E7560BA3286E839F44D04AC9C44A6D29BF09127DD0431BF3E379E031C236D44D79C3A48CA7A42064546BC86ACFF82141E6BC17529374DC11CB5AADCD612E7415053EE266494128E87B1091DBA6591CB86C4486587B095F872A70C53DFC3A0D456A0C8865B45E5404A7FC489A8A09641B9A3B149D7261CC896107F000A7A75C6AAF772D3F9B242509318DCB1CECEC4527C92CECA5648441B99D1C84CF472572AB5575ACA40204C434283C1229570012B47829679FC8A63CE1302E132FABB9687F93095E932FA419B22849A4D6AA090FC69ECD029B6F7489B59A43C720C49CC557D8288680F6B0BC6B87D7462AD128022BFA946685A53E2A8C1F6883567B9C854A012475756FFA2A6B2C6040B443F3A425B35A9A53B6BFB029BC08986FEE5B05D8E11CC006544EA96F5400A8879C9E61E310CBF83675070A4ED62BAE9B29D530AE845B3485569ECBA95672EA1A2A713252198DF411CE387888010C2EAA735605D3B9D889A253338276697283443A4739CA62A64883217CAFE5C1916ACFDD689E272CC51AB5C1988C3029B7795B336F8697114DD856A0573D65395A1289B6E285A99016776B97A76E315505190A7BD331E568987BFB53346419097B83962C9D5DB85F956B0B9E0506846416F3D83D4734063B06ACEED16E839957C5A7BEFC2A4346C0051A49CD199A42F8AA2F55687F9F82AA25BA1AB71CA172078F1D2BC75A3B5FF2557167EC3D10E10813D0625D925F1B2253816486F248A2F5D02A06A8343200003F22094D9603AEB35FF9C6512A9C7D21B8C78B0961DD914A95185572730AFB39179E679F45DB4E5DE5B1C97CB85FCB89BCE8CA958654A3293EC875801F8B40A85C9D1D53025A0B28CECB0AE0D0100B73543351949C259956A859D522BD37E96CACC314E52C7B41A76BCC5C88A677AF9EBBBAA6A573B642962EA821E5A516C44B0A7C0B05F68B02EE078F7FC5C7FB02211F7CA52793437F7A9A32DB0F1040A8A01C1779DB589FF550622ACDFEA78CEEF0513A004CB77141F5CC7D163B5038AA5CAD29854BB43109D53EA3873A5F668125C58AA7BAB3C5A4551FF2990A117056536BA4A499548193CE083D8B22303A6AC6F5442F8231CDDF3B62CCA59BD6F402B612316370A3C857311262AC897B290533229AECA42CDAAF33F2943E496FFA371992D8C80AC3C7FEB46C7748910B4875672A8BA4F3CCE4762894A76846A0CCC13149E02CA12FF1776F99B140731E3E78B23799BE84163B8EE399DE987C3CB4253D15AB07F4678BF03766C0ABBFAB39CCBB8D7064C660A66335F926523A161BC4004D746FB4A764F8FF76676AF904F129457550CCC566089B81BBADC284BA712C521BA3EB8AB0C46E2B36020E42C91F7BE2FCDFDBC37B117984406F46374188D1A2264445D3F44D7DCB9D6A2C3832E5FE9261E29172375A78CBECDA0EF5484C4B3F6940EA20EDD9",
            "nist_ek": "7105C33BA18D19F691968662854A13ECD19E3D93CC15EABB1F4595BC189CB951A957D310D4469CFEB8892021A58D3C023F815D42411C27B0777AF8C25A898C96C2BB519C5830B295EF882ADCECA22D927EBA65A00C815AC8B03B76B4CF56211A32CCC5D9957C52718E6F7240D4E389F0854D160B3FC7D51A9318C743A5748ED06DBC1051AA885E7141655FD378F99C579280027F1242DE118B69E46E2510A5E420B7D8A39E8AB6BBDA342034B1AA3E394DCF02813877A4AC02A76A03BB74804305A21C9261786463440540740A814AB3681E0FA260FFB055D8E7560BA3286E839F44D04AC9C44A6D29BF09127DD0431BF3E379E031C236D44D79C3A48CA7A42064546BC86ACFF82141E6BC17529374DC11CB5AADCD612E7415053EE266494128E87B1091DBA6591CB86C4486587B095F872A70C53DFC3A0D456A0C8865B45E5404A7FC489A8A09641B9A3B149D7261CC896107F000A7A75C6AAF772D3F9B242509318DCB1CECEC4527C92CECA5648441B99D1C84CF472572AB5575ACA40204C434283C1229570012B47829679FC8A63CE1302E132FABB9687F93095E932FA419B22849A4D6AA090FC69ECD029B6F7489B59A43C720C49CC557D8288680F6B0BC6B87D7462AD128022BFA946685A53E2A8C1F6883567B9C854A012475756FFA2A6B2C6040B443F3A425B35A9A53B6BFB029BC08986FEE5B05D8E11CC006544EA96F5400A8879C9E61E310CBF83675070A4ED62BAE9B29D530AE845B3485569ECBA95672EA1A2A713252198DF411CE387888010C2EAA735605D3B9D889A253338276697283443A4739CA62A64883217CAFE5C1916ACFDD689E272CC51AB5C1988C3029B7795B336F8697114DD856A0573D65395A1289B6E285A99016776B97A76E315505190A7BD331E568987BFB53346419097B83962C9D5DB85F956B0B9E0506846416F3D83D4734063B06ACEED16E839957C5A7BEFC2A4346C0051A49CD199A42F8AA2F55687F9F82AA25BA1AB71CA172078F1D2BC75A3B5FF2557167EC3D10E10813D0625D925F1B2253816486F248A2F5D02A06A8343200003F22094D9603AEB35FF9C6512A9C7D21B8C78B0961DD914A95185572730AFB39179E679F45DB4E5DE5B1C97CB85FCB89BCE8CA958654A3293EC875801F8B40A85C9D1D53025A0B28CECB0AE0D0100B73543351949C259956A859D522BD37E96CACC314E52C7B41A76BCC5C88A677AF9EBBBAA6A573B642962EA821E5A516C44B0A7C0B05F68B02EE078F7FC5C7FB02211F7CA52793437F7A9A32DB0F1040A8A01C1779DB589FF550622ACDFEA78CEEF0513A004CB77141F5CC7D163B5038AA5CAD29854BB43109D53EA3873A5F668125C58AA7BAB3C5A4551FF2990A117056536BA4A499548193CE083D8B22303A6AC6F5442F8231CDDF3B62CCA59BD6F402B612316370A3C857311262AC897B290533229AECA42CDAAF33F2943E496FFA371992D8C80AC3C7FEB46C7748910B4875672A8BA4F3CCE4762894A76846A0CCC13149E02CA12FF1776F99B140731E3E78B23799BE84163B8EE399DE987C3CB4253D15AB07F4678BF03766C0ABBFAB39CCBB8D7064C660A66335F926523A161BC4004D746FB4A764F8FF76676AF904F129457550CCC566089B81BBADC284BA712C521BA3EB8AB0C4",
            "target_dk": "7370bfce55a6319b70e01478ccba595eec0a37c49195955810e55474c72b36038b208040ea9a062c46c082e898158b27b29bccb8f302726796c46c488ccb6cc0109c1d222a0bd27e7fca9dbbd05e7a344514b58dd2b679462554345584c26ab3eda79740831135e33a3fa96bbc737812d3c7f18439a84b1479d594e56733a64150de20af753407149b30d5a192f1a098751b8d1d455bdf28bf0eea4a19c6c5bd6469e0ab2709db597073668916063338128a561cb651945952049d8905ac48a4fce9707e31cc856344b41ba94b02c44a8a0e0a2a4938e06f2e8cafdfb64c092b7f2e42202818095037c9d57921f4aaaba9d412c2a98616ca4fe876b8f902c44212b068cb64bca29864a16fe43a6bf5b1987c39c3e348946be2cde458020d2080cbc3875cc700d8e66d23392697f694fb27a35ec874a5463a4ef3c5182103f1821a076b42b2930f9ea2aff5e516051c279f948c62962da3f17d32a562f2735085e47b4b409aa515725eb15eef7816bb60ca7dd30ef8c7b3cc93327cb004ce820be4ec6249ac6d3b827a01e173aa4941025977c97ba5e57ab4ebd225aab5a42e2cce6a5a3f3790aced6954461b6414462812a3944ec29d824943adf928306b3b46388c79a2a1d6f043d0638d5f45022d906384d38c2ae8032b36663f117dfa43bfaba53f402270463bb035587b46fbaaffe23f09a18be12c8190e18869494be3e837a1653ba028a347e1677a5cbce09795c9f8c1bb8138b0f3685b08007e55889f8539dd76bd9f2b38ba4a08268ab4a4e786e5e69abe70c00023a8c8d321c601a1ceaa67b4595b9194518521bf6568b3c78101aff2a9118499cf69494d59b9dd323e2dc97bf4c22addb601e5ac55345a2249663cfd64cb6a96a4f5f5581e53b5ad375182bc26c5946944b373b2220e263a20a1bb00de073a62d6a09fab174a480c0226ce14086b1307d076bc735623b2f98486f2e5a24821b0c40322321c0dc4504f8f2555d662605c64ac114a7dca86b83e849e4ec3c1fdfca14e5a9f9ecb18bb197f8e0b6b574b81a12521fe12165e01593fa84d7534b1de8108c7d43a4758b70d35125614948c5119bb93b24ad887171a227e5777a931be5d1c2052b64539a21168446921e21c1605350c21380cf9a05619b8f3266f59b042eec1103ce99bc2c7818ffc1fae5c75f3d962e72c038eb1c085b56df69bcb281125eb5c068d3147af3440b3b55f3dc505d2867712dc054084c2838430b44a3e893a3eed203dc05b25c513bd7fec8df02727de39125ab189adb57dc9219bed28886266985bfc734777962b6565d9c4102c055fd4983e3bda74274c75bd05522c2a37175a7db851827e6902f9c6b39dd73e97553f989b4e1de2557b2ab3f1a16bbf8272b5058d23629632d1c3aa868208d5389274abb709b932912b04943d46479548ca123da4c061cb12f6472cb1bab5f9e000dd965000d5895772a8001558ba803d373c69481324b3d7a2a57275ddb64640b0639c1321327c4294327fa2aa2857720d984b2309d57c74692cb1fb130ac724db9bcab43731263292213840f9f260751bcc2bbb40d646c3b0c1a31519a577e582e7309bf320c49ef8800e9654c3f66eeb0987ac17aec000b173b99c1337b3abbba990568c3d826b2aa56600da1f80cc0c815ab9c8003f0207587dbc35812ccc46f8326f86676f07c999287f979623f1f43e6b3820145423bbda602afb67fc598cb73708c6410b5017b40cf4a3f948b86d64c5204ca28e103f71d11ebd27a7719903916b3e71c29e1bb470ac70b46dc20b1495c4508c91b3765bc9385a239189b36c8d8b38a439d8806b3969112c0f67327f46e11a88d82f2048c3a2f2417a9c8d5900724ed285a6e1968b091f0c87aef2656435357b1af12d1b432daf10be5274cb868cb4ca457de7ccb4a282b7ea0648d8646ff7a71429457025bc8759140393620f15810709893bfda156067509e1963ce42085c0d345aa0c7949a99d6542c2b58a9b24bb3a487472f0d37f9447601067055472ab1d10cfe33ba0aeb22460d8811a55b2d9029392e29be3fb2512001371dc5b98b936ee68ad2c032b44430ec4a85c9e88c54079877eb29fe814090fbcc45bf9c4f29b013dd10cf8d4616367705e49339268c65e47a1e43b9819c50c9e98401762854f4b70749b3f326987b4a78173b51274c3179577981c804eafba9e6e9b571b26968400aaa234cbf28780868a6df4f9800fd2cc6e952733001dc26679bc297b1e1376b8f64e53d075402bbfba7a706a0515fb20919569aeba03cb9221146e05ce223a592b0ca31d17b150463956f5065f89929627ca7dca5651c97fb29a56d0c85fd4016777f221eb495b0df86188a58aa0666020c95eaec83a6956673aa70a3c64beee604317c27c5ea96233cc9cb008720e6171c8b3c8fb848de56a0cea907d47e49b4459691d077c616a77e7e6c53b249d371babd5747e5ce63879665dd9a6c6b6a791f4156f33a18bdef854f09c22be42bee00b2b397a4bdf7b36797a4c54367b5e6c674a00a4d53cc200a0a695311c88e4b3a3e13258406e0e85188f3c6ce9e998448443e7247c464118ba2c1001973bf0352db2465680d19c08580b0ce7ae6a163811f00e2f04b614ec2c50fa621053b7a69c3977723360b3057eeb57406b4acc5281f3287c1c695afc973b6f7146d2918ed5e4bc0a401f10629b5948bdeac521002453e974731ca1c6c02b00234b319644361a677b23d972b6c62b4ee79b9a9b828a61b31ad4a7be488dae3870d0136db7097c07c08115e06c447a6d527694d6016d752ab013f7b2b58123a3500b447a0c5a8cc6560c2fd6a44f21f72a6caa1f24b684a9e4ce851a3ff8578651c542f5993015632f6d29111459a942f4a4e8425963d10b9dd23503e05e87c506f13c5d01b2c72eb28a0fb1c6ebf7c654d079fe862a3226293cbb8380360c22c10c3e09bcac0acc5f1a633ec965f7053dbef02eece008a83700e0a747db82730b984693f9a25cd94abbea884001ccf7425754113032f9c94579306b81cf00448fc492a9636c6375344f9f45182f61c02fa31c094a3eb5ea97015a515dd833732c9dfc90b8172550e3153cedcac0bcf600a229a0cc027c00dab195ec8c291654abcb55729557e51c98b72b31daa2679391887dfca12b680d88ea1fa7ccc25cda159b0b383d224c35108bfdbacb1245401e63a677200b637680f4b2cbf7110b29572dfa7c228a88a6fa15ab73643543c864f2b63e910d8f7b25747d0dfcd9819de6b76418f75d29a2827d89f38c8e6e1a4c1c1d69c863210b8cdadf7720d4e9ff5429b519bea299dad890208fed8b0342df7dcb9d6a2c3832e5fe9261e29172375a78cbecda0ef5484c4b3f6940ea20edd9",
            "target_ek": "c000b173b99c1337b3abbba990568c3d826b2aa56600da1f80cc0c815ab9c8003f0207587dbc35812ccc46f8326f86676f07c999287f979623f1f43e6b3820145423bbda602afb67fc598cb73708c6410b5017b40cf4a3f948b86d64c5204ca28e103f71d11ebd27a7719903916b3e71c29e1bb470ac70b46dc20b1495c4508c91b3765bc9385a239189b36c8d8b38a439d8806b3969112c0f67327f46e11a88d82f2048c3a2f2417a9c8d5900724ed285a6e1968b091f0c87aef2656435357b1af12d1b432daf10be5274cb868cb4ca457de7ccb4a282b7ea0648d8646ff7a71429457025bc8759140393620f15810709893bfda156067509e1963ce42085c0d345aa0c7949a99d6542c2b58a9b24bb3a487472f0d37f9447601067055472ab1d10cfe33ba0aeb22460d8811a55b2d9029392e29be3fb2512001371dc5b98b936ee68ad2c032b44430ec4a85c9e88c54079877eb29fe814090fbcc45bf9c4f29b013dd10cf8d4616367705e49339268c65e47a1e43b9819c50c9e98401762854f4b70749b3f326987b4a78173b51274c3179577981c804eafba9e6e9b571b26968400aaa234cbf28780868a6df4f9800fd2cc6e952733001dc26679bc297b1e1376b8f64e53d075402bbfba7a706a0515fb20919569aeba03cb9221146e05ce223a592b0ca31d17b150463956f5065f89929627ca7dca5651c97fb29a56d0c85fd4016777f221eb495b0df86188a58aa0666020c95eaec83a6956673aa70a3c64beee604317c27c5ea96233cc9cb008720e6171c8b3c8fb848de56a0cea907d47e49b4459691d077c616a77e7e6c53b249d371babd5747e5ce63879665dd9a6c6b6a791f4156f33a18bdef854f09c22be42bee00b2b397a4bdf7b36797a4c54367b5e6c674a00a4d53cc200a0a695311c88e4b3a3e13258406e0e85188f3c6ce9e998448443e7247c464118ba2c1001973bf0352db2465680d19c08580b0ce7ae6a163811f00e2f04b614ec2c50fa621053b7a69c3977723360b3057eeb57406b4acc5281f3287c1c695afc973b6f7146d2918ed5e4bc0a401f10629b5948bdeac521002453e974731ca1c6c02b00234b319644361a677b23d972b6c62b4ee79b9a9b828a61b31ad4a7be488dae3870d0136db7097c07c08115e06c447a6d527694d6016d752ab013f7b2b58123a3500b447a0c5a8cc6560c2fd6a44f21f72a6caa1f24b684a9e4ce851a3ff8578651c542f5993015632f6d29111459a942f4a4e8425963d10b9dd23503e05e87c506f13c5d01b2c72eb28a0fb1c6ebf7c654d079fe862a3226293cbb8380360c22c10c3e09bcac0acc5f1a633ec965f7053dbef02eece008a83700e0a747db82730b984693f9a25cd94abbea884001ccf7425754113032f9c94579306b81cf00448fc492a9636c6375344f9f45182f61c02fa31c094a3eb5ea97015a515dd833732c9dfc90b8172550e3153cedcac0bcf600a229a0cc027c00dab195ec8c291654abcb55729557e51c98b72b31daa2679391887dfca12b680d88ea1fa7ccc25cda159b0b383d224c35108bfdbacb1245401e63a677200b637680f4b2cbf7110b29572dfa7c228a88a6fa15ab73643543c864f2b63e910d8f7b25747d0dfcd9819de6b76418f75d29a2827d89f38c8e6e1a4c",
            "tcId": 29
          },
          {
            "alg": "ML-KEM-768",
            "exit_code": 0,
            "nist_dk": "952119B40B1710433F4321C2CA494BD4F40218233943BC1147552D2DC91B026717215450F96983CF2A58E405AB2A241A58702929FC7B0905A01DC772ABC0C2DCACC02A12CE431099A2725B30A1A731DB62B46A5187040913FB1AE54096D49728F1511747386BA2F4C059F9146FB50E7DF06468676E5025B34A9765737C23719209A7860C982AA634B358E998386B2307DC994F1A4A2F1D182A8EF23429952D663B1737B2B025179FFF67A18357B36433590B8012EEC9B7FA1128B56B2A926B2D9B86A60CF35FD1C44DB8C3062E4067BD815090224DA631A00FC46186230FE52CAB341270390C00E4952557046137957C428CBAC6C25E9EBB3A5DFCCE9C7BAB51A61541E59998760F853CAC6D1478422B38B89557247388A414CE19386F01DC1C19489A29AA1123C04AFB8143E1542B45350E7A853302441D1BB836C6C97F4AA08138338A8A2238C7682C3D1C6EBE63A1E74390E2A47442C3718E61CB869B35E8FAA1D80A027AB585AAC62219A602941CC7EE60B22E97A1851225AF77082C3039E0B84035ECA9C7D2432253B80C0BCAD6E20BEC482A18500BDF75C6820A6C2F2C945A13BD2A0CB5188300D5CBCCB7B3846AF78647413DE8047CF0F9954A8804F889165374A9F5341D93AC6DF3995EF2396850AC793DE83B11A72EBFA673DFF04B868199BDC60FD44029BED01428957D505C685CFC6DFE04AF468735620B96BCA9B1B6298007EC026C54C0CF6476F2B995CC35992C791E80146E957893B744C409564D1025CE8B957FED9B95EDF00CC2B36D0F891EC7EBC545B4889BE31F5052BDE7360B0C69BD280255F5E5C66A655FC857AB5B6230000A2B2A587313D582350A35A0DA4F28F3B738989C22E25490C08456556A5A47BDE0651C9468AB297480CC3056B5AA2326F927BC19B406E41D4663CFDD00CF39A2154FC9439908020CC724C6D67E7CF77248A39C05004FF9F7A8D1569AD8B3866675AC6DF8757CE8C492460227D3A6A7D089D850BCEB770EE8B25276336C488B648CD7284AA54668E074E41A27C6E2972F922705108DF582CC713C3B981110E522A9F3873B3F345D1AB01705535A151BC92A1A0C6D126810D88B52EAA83597CC5EA7286CA243ED1542929CCFC835CC7F279A70119D3C8933015C4DD78A4C5D1184CD86AF06B6806F578AC5C4949F468AAFFC0E74FB989F760EA3525D933A0B939400D62B5681968F0012885B042481724D0DCC1A994336A37B1CB866926D331F705775B0439819393C790C78808385A0E86D92F100D95A5E5C0325F8A42E7243266D477C8FA60AF2D1C0DA05B697B945C2C1BAE9D73ACADA3C73344A7E08793D1186031449B291323A8568EBC450F82B71B7882A76991BCCB55FB70C83766713704094F4F54C0765C8E85966AA95AE0CB02360903BF5D86D2B33347D93C080A575894A2A67F32FD5A279E4B269E1896E788807BF2BACB2B3402F88B3D3193B7BB005D36752D1F47DFDC5804FD2751AA5324BCB360CE87A57B05E25467D8C76A42E574757783DF6AC54A366CFF62B52EA836C833790DA23483FE05A7B2B46DF986BF920C755064358445C7A003B0A4016A8D9597FB60020D348DFE806684B6CD9E8582CB1380DB26B99609452339C216A28924BC691C5C263345BD2600C3080C51B274C119606F08C628AC2C4A49565704BC16D4143EFD78844472C68E56869A599CA3A1B3831B6B170436BECAD6EB880F6C5C787674DE25202DA3C86ACC00B9FA61E0A3B6FD34AA616D95F08F09A12C896EF0C603D639676A658F2F45ACA340BDF05CCB4C72B88438369F974D8EB46732128004B27430A3B73B983FCF4276A25539DD191AE78C897266A8F31A728871CACE5B027D714A85519F57C713A1171205CBD0924CED5D7A7C6FAA0CC502EE59583C5E4848370CA25E55A554822C3C2248DE70983F16E51240D35783061AC2D7883CD90514CF2847A6ED46437427AB5E06AF5561B41AB5189853817AB6062F8BC9509AB9239BEF180319BA98C0F9B4D85D7A258B00AD2F9ADF9BCA3F1D13AAE149092769EEC263733D38CD10B56152A40703B75C0D65ACFE10932827C9B29719C6808F67112206284CF942870AA86DCB549E8023CD47608A98182ACB627DF216FC4423844D746F9993302C88FD796273A7BB18EB31B2F02A9B63CC9731A267B5C544BE82465BA1F41A1171DF44BEF444554CBC2D2AAB729EAAB510C0FDC3A8018760CAA37359A2882E3B286C7582E1EB08558F55207673BD8818E3FD98F59B913349AC15DCACDFCA901F8D63D779774521A0A02E1AB32F77AF11823BA6BCC0E5093B2F7A50099787A719350B64D2860751321AAD6C17089E3408034B708C4390A32C9EC01D094B01A4E40A0F49A5BD649BDF9F0004ADB73611C50C2C927B76C31B211B7381B9B76A521EF876D2CDB280498BC3C4261F544399F1803E2A8950B9B7F056ABFBFCC7BD380A3D4FB14C4894D8D9C2B98DC5E3BBC4057252563C58C1587C7C2F78360785A65C7793E34BAC4F616F148CAD29A6851431C948C6DA3E42B3AB7BDC07A3B0C6A6496963B49AA5F1BE56D28E64D6639CB85A2540771671C0C021098A1A0489CB7C579B33106E2D815FFE6AAB3466742E63C20062857C8B1E770CFE537C1A2E20085D3BEA8FB986C856F3BB3A50CF874034556AA564752579457BB3DDA316A5CF044F2A9B3397BA543B4BF51BA2C640698160AB9D7298753DB22F2B16EE5B433C7D08845BA32F05006AC1C9899371D63A2779DE5803B3307082382EE805E00ADA6B2D0788CBCC3DBB9C003B38AF549B83ED6B119850E4D2B360A0230677A85894A882338781B6BA9AAE3023F5B401460BE97E2ABB95B862C54269161334D5A64557656141C421D497476D81E04ABC47AE1B42025B6B91607DD14277DF333F252AF596606C0777893142CC7BC685C4C931B37A0AFB37A633B2FF7A4B49FE55BD9E55F9FDCB22C45A6DA169A49D44DAEC44567C651FBC368336CAFB82467733A28E94A23E3E1AC6D901AAFC86809683365DA7396678B1FD27AF5B9C52AA7BD02171DB9E80FC0B04E502B723A5C0552947D3FC488181297DCD41D0C42A232034621A1655C36A6973C4D9AD47B60A78F3A680709E83C4D93CDBC96BCCFB06128E9358EB98B41119FE7D29C7F315C92A17B34D666AC5AB49DD65B6021653C558DBE0C79A65BBA23D683687325D7A004AC53B20FB6601D2606AC6872DDAC03CA86BC3DB47F19A828B8A35CE7293E3E1A3B269B4488E1A30B9D15152B039DF36221FB7184EA150EAC2E80F0C5255DFC4C9A542B9953E6272210BAEE60864394042F2E190EDAC61E3C72AC42214318C84151D6E12D56CAB2AB6EAE982DDA0008CF1BDC59B5C8AC88BA11F169798AA56374ED7A550BC4F552",
            "nist_ek": "52339C216A28924BC691C5C263345BD2600C3080C51B274C119606F08C628AC2C4A49565704BC16D4143EFD78844472C68E56869A599CA3A1B3831B6B170436BECAD6EB880F6C5C787674DE25202DA3C86ACC00B9FA61E0A3B6FD34AA616D95F08F09A12C896EF0C603D639676A658F2F45ACA340BDF05CCB4C72B88438369F974D8EB46732128004B27430A3B73B983FCF4276A25539DD191AE78C897266A8F31A728871CACE5B027D714A85519F57C713A1171205CBD0924CED5D7A7C6FAA0CC502EE59583C5E4848370CA25E55A554822C3C2248DE70983F16E51240D35783061AC2D7883CD90514CF2847A6ED46437427AB5E06AF5561B41AB5189853817AB6062F8BC9509AB9239BEF180319BA98C0F9B4D85D7A258B00AD2F9ADF9BCA3F1D13AAE149092769EEC263733D38CD10B56152A40703B75C0D65ACFE10932827C9B29719C6808F67112206284CF942870AA86DCB549E8023CD47608A98182ACB627DF216FC4423844D746F9993302C88FD796273A7BB18EB31B2F02A9B63CC9731A267B5C544BE82465BA1F41A1171DF44BEF444554CBC2D2AAB729EAAB510C0FDC3A8018760CAA37359A2882E3B286C7582E1EB08558F55207673BD8818E3FD98F59B913349AC15DCACDFCA901F8D63D779774521A0A02E1AB32F77AF11823BA6BCC0E5093B2F7A50099787A719350B64D2860751321AAD6C17089E3408034B708C4390A32C9EC01D094B01A4E40A0F49A5BD649BDF9F0004ADB73611C50C2C927B76C31B211B7381B9B76A521EF876D2CDB280498BC3C4261F544399F1803E2A8950B9B7F056ABFBFCC7BD380A3D4FB14C4894D8D9C2B98DC5E3BBC4057252563C58C1587C7C2F78360785A65C7793E34BAC4F616F148CAD29A6851431C948C6DA3E42B3AB7BDC07A3B0C6A6496963B49AA5F1BE56D28E64D6639CB85A2540771671C0C021098A1A0489CB7C579B33106E2D815FFE6AAB3466742E63C20062857C8B1E770CFE537C1A2E20085D3BEA8FB986C856F3BB3A50CF874034556AA564752579457BB3DDA316A5CF044F2A9B3397BA543B4BF51BA2C640698160AB9D7298753DB22F2B16EE5B433C7D08845BA32F05006AC1C9899371D63A2779DE5803B3307082382EE805E00ADA6B2D0788CBCC3DBB9C003B38AF549B83ED6B119850E4D2B360A0230677A85894A882338781B6BA9AAE3023F5B401460BE97E2ABB95B862C54269161334D5A64557656141C421D497476D81E04ABC47AE1B42025B6B91607DD14277DF333F252AF596606C0777893142CC7BC685C4C931B37A0AFB37A633B2FF7A4B49FE55BD9E55F9FDCB22C45A6DA169A49D44DAEC44567C651FBC368336CAFB82467733A28E94A23E3E1AC6D901AAFC86809683365DA7396678B1FD27AF5B9C52AA7BD02171DB9E80FC0B04E502B723A5C0552947D3FC488181297DCD41D0C42A232034621A1655C36A6973C4D9AD47B60A78F3A680709E83C4D93CDBC96BCCFB06128E9358EB98B41119FE7D29C7F315C92A17B34D666AC5AB49DD65B6021653C558DBE0C79A65BBA23D683687325D7A004AC53B20FB6601D2606AC6872DDAC03CA86BC3DB47F19A828B8A35CE7293E3E1A3B269B4488E1A30B9D15152B039DF36221FB7184EA150EAC2E80F0C5255DFC4C9A542B9953E627",
            "target_dk": "333c0df2b5594f951273b94ddda239fabbca6925a21850c6d622cd089c32454279fb2404bf599d352c414ffc46ed6a72b2966e4823c2bf066b45e21be6914239381e169660ca64a45cbb90720b7b95e98b9aaa7d252132a0019e726654fb70b091f88276960bb47734f5b5b847c398b904310ee9158d7c1c79284ddbbc2863168e7cc327423b1ce6a433d5554ab5413a67333e12569c0daa0d36650111ac46acd521a72b9c6da86571c261994a4d473bcf33481bbc04b68d895c34e823caa0742cf515c323285c843158274c04ba8a1bc8bba3f247075ba98eec6cb8b56b92e359b5a337098149678460f0ba68f1dbb93f71b3d1b78b5ecca72c73888c4310a83a7514398a60c3a0b6fc82042991b6f068c675a5b975bf90fa818e0984cfa320f50ab5901432d26610f54903bd6244bd963fa32c8fdc182d4f38695215567b82035317c893e168e2891212a0872ae69c57a7261d51cae8b51cd0c53a87b56f5a2bccae46c87891001a02cc5f700d242830a2a27ac38a2ff5ec6183c92987012052d68149163f2e75316ff474623408b052b6a0fc24f6c90e0aec4128f2ce23a333052c5bbf2276151619707a416b6b19a36a7f0d04957b3936976b3c4b2907f8325264e6c75410776e458505243f45724257d56ddf6a977f611991fb4de65ac911523f101231eb826165414280ab356b46b265ab2b3806b3ab5941bbb49da89c9e80636ce09cbd604a1dec1b1a28924c6fe99a64903718e20f49d9b4d64396a3a745c04aaaadc9b30e260e47d3afdc009071da91c8dc359c5190ad035aaf16a8cbe4943616654e376f443138ba1246948b41750bbacbec2da39c7f9990ce8c09495d8939f314ab92207180fc8625b2be60dc68ef0511c4b1373e999e2fec78fe4704d2a33696a4735d3140753b08da994f10459ecec192d0751783c33f24c3c64c999a09241afae1390b08a339c21241827fa5c193639b7d74ab50ecbac2c1c4262c71ca0aa2017606ab28480bfaf2bea8b100a8c5c6bcca1f94fac19914b09af16fbe2414eb54a26554079cfa6c146a820831293b020b4915273cda4e63e253146978dac98f485524ac2ba1624b91ade936cba6173afccadf097e5f39bd61b734a23756ad923b6ffa8ebeea36b95793c83c22e1fa1fa64044200ad0d5ea5d686bc632a6bc2898c3f50c0ef312c006921fc29450996b0d58e2676ee87b36e5347fe81926a7c24faaa2b6a6a0490015d2535b67eb5e28968e4141032fb66ddc50848bda1a5a46b45171695b7706e8a08229444d2bf5cf2fe594fa6448a1e855e49b64665809d949a4950891ee933e1d495afa938686b46cc4274ae06008f0952b899936cd368dcb297b40b11c06ec508074098e947d804c25e035adf3f5abe6898447e20c16686a9531b59e006a1e90b85b7014b432891229748ed77c419c48b7648eb2a833affba9d71391d66a63bf4b5d5a4988c3cc22c4b68115eba51aea393d18565f38036072bc33160e32f44281916b854793e9731666a998e06182efc91e872471099b48d3a08f1c3952dd40b591987a1495b67dcb158708a627e88f72461323142cdc07203e2742f52150f48ca07021a2ee668f7b36210debb112c28fe2e9c34f83c1f909bb1d1847fa54c0b898045f929a620ac502173fee11b89a5883fd7664a1ec52f17c2e45cc4971f0789d410319a2bdd8b609df317dc0e93f229b8b913aa364576499023a79392871ac42ab42aff868828926a189e363c517411d79301f1141b34caf5496240db3cdf77a46c2e48dcdcba56ae039213422eaea55628c448c62aa70a64f3ffb8d6513735335563c55aa3a556dd7487c7af710e71051390cbe6e994917f6071d883a6dd3603685a511d683aad92df4d43de6a95d07f507f1430cc13ac2ea4bca49765005d5969c5a8dcd191797b300d54270917c4fc241763d3c6aa0ec7d187033135c76048cccf2b87ee5b596a5d3865613a0a1334ab2586985cb9df4657f44b417d0c2c0f0ec5b42788f1121551b369289a447e94b84302c7fe67b2cf3c961771529c370a820847800e947ce2091d177ce396c9bb4e58dbaa83d8bd599c1772433a71c1384c2c781c09ec6c6de2b17baa56ca70b07e8827bcb462282d22e40b78620a710881711750c4d56418cd9db042440336b403d53584dcc49aa4aa5abe906114a160a2bc455500636f6b0b448b3799e4ab573383c7970682204bb7e351b92313f173ab5eb375f9304c59b0661bb0c82058473c4dab0bd4c179734218adbb48bc43a4c781b587898ae176fb918034baa6d0f6315b181965e88b472c21232cca05ef332b1c29bdd414284b4467e982d7816b66e3498af3b01b1b668c5938c633490bab24c82c305e343318094711c515625e39fe0122491bc5de6fc2384749e16343c80220b8e6473d2770ea3e24ad582a2201559045394b0a47102870959991523b87f1a4290c782c26a93198eea3d9d095f11e8b88ab9214e66217ab67169e56260e671a6b67f061282d5d60480ca3210eb91d1a1b5848690fc12cb7f9b32ad68867a5a4eeb5a3905b5271fd993598411b4e8437ffc0af2d8090d194a846405593c3ff7a580dd1baa0eb592bed950d239663f4602d9ec4068706d34ab97304ac7b45c03cd19b0e6908064e01e37a3c7469bbb5e7041f940c304a43709557d0221124f74b4bf735d1045bc1122615d79822ea6a651fc74fdec6e7fc37bdd291bae005434a67fbe09787c2711c2f266d44718be64227b284d42c268a31b6be35593fe8961cfc00d3faa6a1c9022c864448f2a2d90e20fc611ab56092ca0fb212c85706b22a79c0b77796241db9b5dbc9119f6a28c4bb61d277c1a61f215f3563cbf6a2e3998a1492004981c4615c78397d83ed13cc8ef132a1efb0815539b23311a5fb333a9a996c8b68ca8ea0ffbaa9c1c8045421189308322d38c7dabc892314b9b4997088b40a29b9899d836c76f3b588ae1076c02c85443abd8127217d3bae7f606c7ab937328a225326e50aab25a75839670a67ac5514b995c73c6b96c038a2e059488ab872f788e406aab37f0b4d8da28089a6409111e7c70a909d47e01a7c15b065311215a481b2f97fc7e95a5ccf460702987cd0fc04173b4954b446cd61c22866336b270518f926a4865a0c923148c23330dd188a68c37533392236888943b60bed565c71b384866adef588ef8c079b527bd96e6b4d42a6501c3bc00b013e7b095eea7622f5c9d3a651e54642eadb0dda992ae48c03cee70219f51049b596aa9906a854eb5ad4a55a8d54117524df3f5a15037af96b9eca4a9e80abcc866c4b2bc18955c71d439c37fdf59c8e9ab6eae982dda0008cf1bdc59b5c8ac88ba11f169798aa56374ed7a550bc4f552",
            "target_ek": "e2e9c34f83c1f909bb1d1847fa54c0b898045f929a620ac502173fee11b89a5883fd7664a1ec52f17c2e45cc4971f0789d410319a2bdd8b609df317dc0e93f229b8b913aa364576499023a79392871ac42ab42aff868828926a189e363c517411d79301f1141b34caf5496240db3cdf77a46c2e48dcdcba56ae039213422eaea55628c448c62aa70a64f3ffb8d6513735335563c55aa3a556dd7487c7af710e71051390cbe6e994917f6071d883a6dd3603685a511d683aad92df4d43de6a95d07f507f1430cc13ac2ea4bca49765005d5969c5a8dcd191797b300d54270917c4fc241763d3c6aa0ec7d187033135c76048cccf2b87ee5b596a5d3865613a0a1334ab2586985cb9df4657f44b417d0c2c0f0ec5b42788f1121551b369289a447e94b84302c7fe67b2cf3c961771529c370a820847800e947ce2091d177ce396c9bb4e58dbaa83d8bd599c1772433a71c1384c2c781c09ec6c6de2b17baa56ca70b07e8827bcb462282d22e40b78620a710881711750c4d56418cd9db042440336b403d53584dcc49aa4aa5abe906114a160a2bc455500636f6b0b448b3799e4ab573383c7970682204bb7e351b92313f173ab5eb375f9304c59b0661bb0c82058473c4dab0bd4c179734218adbb48bc43a4c781b587898ae176fb918034baa6d0f6315b181965e88b472c21232cca05ef332b1c29bdd414284b4467e982d7816b66e3498af3b01b1b668c5938c633490bab24c82c305e343318094711c515625e39fe0122491bc5de6fc2384749e16343c80220b8e6473d2770ea3e24ad582a2201559045394b0a47102870959991523b87f1a4290c782c26a93198eea3d9d095f11e8b88ab9214e66217ab67169e56260e671a6b67f061282d5d60480ca3210eb91d1a1b5848690fc12cb7f9b32ad68867a5a4eeb5a3905b5271fd993598411b4e8437ffc0af2d8090d194a846405593c3ff7a580dd1baa0eb592bed950d239663f4602d9ec4068706d34ab97304ac7b45c03cd19b0e6908064e01e37a3c7469bbb5e7041f940c304a43709557d0221124f74b4bf735d1045bc1122615d79822ea6a651fc74fdec6e7fc37bdd291bae005434a67fbe09787c2711c2f266d44718be64227b284d42c268a31b6be35593fe8961cfc00d3faa6a1c9022c864448f2a2d90e20fc611ab56092ca0fb212c85706b22a79c0b77796241db9b5dbc9119f6a28c4bb61d277c1a61f215f3563cbf6a2e3998a1492004981c4615c78397d83ed13cc8ef132a1efb0815539b23311a5fb333a9a996c8b68ca8ea0ffbaa9c1c8045421189308322d38c7dabc892314b9b4997088b40a29b9899d836c76f3b588ae1076c02c85443abd8127217d3bae7f606c7ab937328a225326e50aab25a75839670a67ac5514b995c73c6b96c038a2e059488ab872f788e406aab37f0b4d8da28089a6409111e7c70a909d47e01a7c15b065311215a481b2f97fc7e95a5ccf460702987cd0fc04173b4954b446cd61c22866336b270518f926a4865a0c923148c23330dd188a68c37533392236888943b60bed565c71b384866adef588ef8c079b527bd96e6b4d42a6501c3bc00b013e7b095eea7622f5c9d3a651e54642eadb0dda992ae48c03cee70219f51049b596aa9906a854eb5ad4a55a8d5411752",
            "tcId": 30
          }
        ],
        "counterfactual_sizes": {
          "ct": 1088,
          "pk": 1184,
          "sk": 2400,
          "ss": 32
        },
        "target_sizes": {
          "ct": 1088,
          "pk": 1184,
          "sk": 2400,
          "ss": 32
        }
      },
      "reason": "ML-KEM by NIST's own vectors (5/5, counterfactual 0/5), but the sources do not compile under `-std=c90 -Wpedantic -Werror`: `'long long' is an extension when C99 mode is not enabled [-Werror,-Wlong-long]` -- C90 with a C99 extension every current compiler accepts, which is a fair reading of the sentence and a precise one of the code",
      "text": "mlkem-native is a secure, fast, and portable C90[^C90] implementation of ML-KEM[^FIPS203].",
      "verdict": "PARTIAL",
      "where": "README.md:13"
    },
    {
      "blind_connectors": [],
      "derived": {
        "fetch_exit": 0,
        "merge_base": "",
        "n_reference_file_names_recurring": 5,
        "reference_file_names_present": [
          "fips202.c",
          "indcpa.c",
          "kem.c",
          "poly.c",
          "verify.c"
        ],
        "shares_git_history": false
      },
      "id": "M-C2-fork-of-reference",
      "is_material_claim": true,
      "kind": "provenance",
      "materiality": "Lineage: a fork inherits the reference's correctness history and its licensing.",
      "needs": [
        "github"
      ],
      "problem_digest": "17a0af4f5d1d713a09bac408fae27dfc91fed5825a2db7009f70036ce44fceb5",
      "raw": {
        "fetch_exit": 0,
        "merge_base": "",
        "merge_base_exit": 1,
        "reference_file_names_present": [
          "fips202.c",
          "indcpa.c",
          "kem.c",
          "poly.c",
          "verify.c"
        ]
      },
      "reason": "no shared git history with pq-crystals/kyber (no merge base), so `fork` is a lineage statement git cannot confirm; 5 of 11 reference source file names recur in mlkem/src (fips202.c, indcpa.c, kem.c, poly.c, verify.c)",
      "text": "It is a fork of the ML-KEM reference implementation[^REF].",
      "verdict": "PARTIAL",
      "where": "README.md:14"
    },
    {
      "blind_connectors": [],
      "derived": {
        "any_ci_evidence": true,
        "badge_branch_exists": true,
        "badge_says_passing": true
      },
      "id": "M-C3-ci-badge",
      "is_material_claim": true,
      "kind": "ci-status",
      "materiality": "A build badge is a claim that a hosted CI run passed.",
      "needs": [
        "ci",
        "cloud_logs",
        "github"
      ],
      "problem_digest": "6d823410ae9b83ac0fa7719225698a8400fc19937d20836e61d35dfa318ee442",
      "raw": {
        "badge_branch": "main",
        "badge_text": "passing",
        "gh_actions_run_count": 20179,
        "remote_branches": [
          "abi-checker-ppc64le",
          "abicheck-new",
          "abicheck-zephyr",
          "armv8.1-m-native",
          "asm_keccakx4",
          "asm_macros",
          "autogen_lsfiles",
          "avx2-keccakx4",
          "avx2-keccakx4-trivial-loop-bench",
          "avx2_keccak4_opt_bench_test",
          "bench-gcc15",
          "c_ntt",
          "callinfo",
          "cbmc-action-test",
          "cbmc-experimental",
          "cbmc_coverage",
          "cbmc_oddity",
          "changelog",
          "ci-mingw-legacy-versions",
          "config-variation-validation",
          "config_cleanup",
          "consolidate-use-native",
          "copilot/fix-opentitan-ml-kem-test",
          "cvc5_benchmarks",
          "cxx",
          "docker-container-tests",
          "eliminate-avx2-intrinsics",
          "enc_proof_time",
          "fastntt3",
          "fix-inline",
          "fix-macos-benchmarks",
          "fix-mismatched-comparison",
          "gh-pages",
          "hol-ct-proofs-5",
          "hol-light-fix-intt-bound",
          "hol-light-from-nixpkgs",
          "hol_light_bytecode_update",
          "hol_light_specs",
          "incremental-enc-api",
          "incremental-enc-api-coins-only",
          "intrinsics_keccakx4",
          "invntt_layer_proof_speed",
          "issue-1759-armv81m-xor-bytes",
          "keccak_align_stack_test",
          "keccak_xkcp_improvement",
          "legacy-compilers",
          "lint-commits",
          "macos-autogen-runner",
          "macro_syntax",
          "main",
          "mjk/issue-1725",
          "msvc-arm-backend",
          "msvc_flags",
          "mve-keccak-x1",
          "mve-keccak-x1-bitinterleave",
          "namespace-STACK_SIZE",
          "new_main",
          "newapi",
          "nix-slothy-from-nixpkgs",
          "nix-z3-286b107",
          "nix-z3-4.16.0",
          "nixpkgs-25.11",
          "nmouha-fix-mismatched-comparison",
          "no_common",
          "no_compress_x86",
          "ntt-inline",
          "ot-ubuntu24",
          "plantard-reduce",
          "platform-nucleo-n657x0-q-openocd",
          "platform-zephyr-pico2",
          "ppc64le-tomont-frametrim",
          "ppc64le_backend",
          "pr-1527",
          "prove-decompress-d10",
          "prove-decompress-d4",
          "prove-decompress-d5",
          "ptp/mlkem-clear-keccak-stack-scratch",
          "ptp/mlkem-clear-kem-outputs-on-failure",
          "public-attribute",
          "readme2",
          "refactor-polymat-permute",
          "refine_bounds",
          "release/v1.3",
          "remove-slow-decompress",
          "report_cbmc_slowdown",
          "rust-bindings-v2",
          "serial-fips-no-x4",
          "slothy-keccak-x4-mve",
          "slothy-update",
          "spdx/issue-templates-yml",
          "sys",
          "test_cross",
          "track_env_vars",
          "v13",
          "value_Barrier",
          "win-sup-alloc",
          "win-sup-kat2",
          "x86-keccak-namespace",
          "x86_scalar_keccak",
          "zephyr-cflag-fix"
        ],
        "travis_api_status": 404
      },
      "reason": "the badge reports a passing build for a branch that exists",
      "text": "![CI](https://github.com/pq-code-package/mlkem-native/actions/workflows/all.yml/badge.svg)",
      "verdict": "REPRODUCED",
      "where": "README.md:5"
    },
    {
      "blind_connectors": [],
      "derived": {
        "cbmc_available": true,
        "cbmc_harness_dirs": 191,
        "hol_light_available": false,
        "hol_light_proof_files": 54,
        "proof_artefacts_present": true
      },
      "id": "M-C4-formal-verification",
      "is_material_claim": true,
      "kind": "assurance",
      "materiality": "The strongest claim on the page; a buyer prices assurance on it.",
      "needs": [
        "github"
      ],
      "problem_digest": "0812cc9128861980363b8807d6d4d658588d7d319f3c25be85ecf4f9352abb49",
      "raw": {
        "cbmc_on_path": true,
        "cbmc_proof_dirs": 191,
        "hol_light_ml_files": 54,
        "hol_light_on_path": false
      },
      "reason": "proof artefacts are present at the pinned commit (191 CBMC proof directories, 54 HOL Light proof files) and were NOT re-run here (cbmc is on this host, hol-light is not; re-running 191 CBMC harnesses is a bounded next step, not done in this pass). Presence of a proof is not a proof; the sentence's own SOUNDNESS.md caveat applies",
      "text": "All C code in mlkem/src/* and mlkem/src/fips202/* is proved memory-safe (no memory overflow) and type-safe (no integer overflow) using CBMC[^CBMC]. All AArch64 and x86_64 assembly is proved to be functionally correct, memory-safe, and of secret-independent timing (constant-time), using HOL-Light[^HOL-Light].",
      "verdict": "PARTIAL",
      "where": "README.md:16-18"
    },
    {
      "blind_connectors": [],
      "derived": {
        "build_exit_zero": true,
        "build_seconds": 11.49,
        "test_exit_zero": true,
        "test_seconds": 56.7,
        "test_timed_out": false
      },
      "id": "M-C5-quickstart-build-test",
      "is_material_claim": true,
      "kind": "build",
      "materiality": "The documented build is the first thing an integrator runs (the sentence names Ubuntu; this host is macOS).",
      "needs": [
        "github"
      ],
      "problem_digest": "0f72b7d887d396d69dfab90c481952b615b64047e8046f0115c8e31ac7372767",
      "raw": {
        "make_build_exit": 0,
        "make_build_seconds": 11.49,
        "make_test_exit": 0,
        "make_test_seconds": 56.7
      },
      "reason": "`make build` and `make test` both exit 0 on macOS arm64 (56.7 s), beyond the Ubuntu the sentence names",
      "text": "# Build and run tests [...] make build [...] make test",
      "verdict": "REPRODUCED",
      "where": "README.md:35-37"
    },
    {
      "blind_connectors": [],
      "derived": {
        "acvp_client_present": true,
        "acvp_exit_zero": true,
        "acvp_vector_files_present": 6,
        "wycheproof_exit_zero": true
      },
      "id": "M-C6-acvp-wycheproof",
      "is_material_claim": true,
      "kind": "standards-conformance",
      "materiality": "Conformance testing against the standard's own vectors is the claim a conformance obligation rests on.",
      "needs": [
        "github"
      ],
      "problem_digest": "df4d0814cc98d4ee905a64ee9b6d2f45d8c8563cd68bdd86111cb73a47598a63",
      "raw": {
        "acvp_client_present": true,
        "acvp_vector_files": 6,
        "run_acvp_exit": 0,
        "run_wycheproof_exit": 0
      },
      "reason": "the target's own ACVP client and Wycheproof client both exit 0 at the pinned commit (6 ACVP vector files present after the run)",
      "text": "mlkem-native is tested against all official ACVP ML-KEM test vectors[^ACVP] and the Wycheproof[^wycheproof] ML-KEM test vectors.",
      "verdict": "REPRODUCED",
      "where": "README.md:107-108"
    },
    {
      "blind_connectors": [],
      "derived": {
        "default_on_in_0_16_0": true,
        "present_in_0_13_0": true,
        "present_in_0_16_0": true,
        "tarball_sha256": {
          "0.13.0": "789e9b56bcb6b582467ccaf5cdb5ab85236b0c1007d30c606798fa8905152887",
          "0.16.0": "162d5b510518ee5f285f82fa1f16402a885176e818bf1b1a4c3c91c9a2f01eae"
        }
      },
      "id": "M-C7-liboqs-default-since-0-13-0",
      "is_material_claim": true,
      "kind": "adoption",
      "materiality": "Downstream adoption is a claim about another project's tree and can be read off that tree.",
      "needs": [
        "github"
      ],
      "problem_digest": "ce75bd94f986bb3e3b9d74cff3e399f173cdf41e130e4197293a583019dc11ab",
      "raw": {
        "liboqs": {
          "0.13.0": {
            "bytes": 16432953,
            "ml_kem_768_default_on": true,
            "mlkem_native_mentions": 159,
            "sha256": "789e9b56bcb6b582467ccaf5cdb5ab85236b0c1007d30c606798fa8905152887"
          },
          "0.16.0": {
            "bytes": 9423628,
            "ml_kem_768_default_on": true,
            "mlkem_native_mentions": 186,
            "sha256": "162d5b510518ee5f285f82fa1f16402a885176e818bf1b1a4c3c91c9a2f01eae"
          }
        }
      },
      "reason": "liboqs 0.13.0's and 0.16.0's ML-KEM CMake lists both build from mlkem-native source directories and the ML-KEM-768 option defaults ON in 0.16.0 (read from the release tarballs, sha256 recorded)",
      "text": "libOQS of the Open Quantum Safe project since 0.13.0 (as the default ML-KEM implementation)",
      "verdict": "REPRODUCED",
      "where": "README.md:50"
    },
    {
      "blind_connectors": [],
      "derived": {
        "n_controlled_by_target": 0,
        "n_names_queried": 6,
        "n_present": 2,
        "n_registries_queried": 2,
        "uncontrolled_names": [
          "mlkem@npm",
          "mlkem@pypi"
        ]
      },
      "id": "Q1-name-control-in-registries",
      "is_material_claim": false,
      "kind": "supply-chain",
      "materiality": "Name collisions in public registries are an integration risk and an attribution risk, and neither is visible from the repo.",
      "needs": [
        "registries"
      ],
      "problem_digest": "a17cffda83f5ae3b03f246eef0b220868605c2318c16d206c7dc9f66344d2b7c",
      "raw": {
        "n_names_queried": 6,
        "n_registries_queried": 2,
        "registry_hits": [
          {
            "controlled_by_target": false,
            "name": "mlkem",
            "registry": "pypi",
            "urls": [
              "https://pypi.org/project/mlkem/",
              "https://pypi.org/project/mlkem/",
              "https://mlkem.readthedocs.io",
              "https://pypi.org/project/mlkem",
              "https://github.com/AntonKueltz/ml-kem"
            ],
            "version": "0.0.3"
          },
          {
            "controlled_by_target": false,
            "name": "mlkem",
            "registry": "npm",
            "urls": [
              "https://github.com/dajiaji/crystals-kyber-js#readme",
              "git+https://github.com/dajiaji/crystals-kyber-js.git"
            ],
            "version": "2.7.0"
          }
        ]
      },
      "reason": "2 of 2 packages carrying the target's name across 2 registries are published by someone else: mlkem@npm, mlkem@pypi",
      "text": "The target controls every public-registry package name that carries its own name.",
      "verdict": "REFUTED",
      "where": null
    },
    {
      "blind_connectors": [],
      "derived": {
        "n_answered_with_data": 1,
        "n_blind": 2,
        "n_endpoints_tried": 3,
        "n_two_hundred_but_wrong_payload": 1,
        "only_undocumented_endpoints_answered": true
      },
      "id": "Q2-patent-exposure",
      "is_material_claim": false,
      "kind": "freedom-to-operate",
      "materiality": "The single largest line item in deep-tech diligence.",
      "needs": [
        "patents"
      ],
      "problem_digest": "ca68a6fe0dfd5418052cb13191a8bb9d223166f3f631cc133fde67abfd3d6a2a",
      "raw": {
        "endpoint_attempts": [
          {
            "content_type": "text/html",
            "documented": true,
            "http_status": 200,
            "label": "patentsview-legacy",
            "status": "WRONG_PAYLOAD",
            "url": "https://api.patentsview.org/patents/query?q=%7B%22_text_any%22%3A%20%7B%22patent_title%22%3A%20%22lattice%20cryptography%22%7D%7D",
            "why": "HTTP 200 with an HTML body where the API documents JSON (content-type 'text/html'). 200 IS NOT SUCCESS"
          },
          {
            "content_type": "application/json",
            "documented": true,
            "http_status": 401,
            "label": "uspto-open-data",
            "status": "UNAUTHORIZED",
            "url": "https://api.uspto.gov/api/v1/patent/applications/search?q=module-lattice%20key%20encapsulation",
            "why": "HTTP 401"
          },
          {
            "content_type": "application/json",
            "documented": false,
            "http_status": 200,
            "label": "google-patents-xhr",
            "n_results": 19184,
            "status": "OK",
            "url": "https://patents.google.com/xhr/query?url=q%3Dmodule-lattice%20key%20encapsulation",
            "why": "HTTP 200"
          }
        ]
      },
      "reason": "2 of 3 patent endpoints are blind without a credential -- including 1 that answers HTTP 200 with a payload that is not the documented media type -- and the only endpoint that returns data is undocumented, so a freedom-to-operate opinion cannot rest on it. ABSENCE OF EVIDENCE IS RECORDED HERE, NOT ABSENCE",
      "text": "No third-party patent reads on the target's algorithm.",
      "verdict": "UNVERIFIABLE",
      "where": null
    },
    {
      "blind_connectors": [],
      "derived": {
        "files_scanned": 1259,
        "looked": true,
        "notebooks_found": 0
      },
      "id": "Q3-notebook-output-fidelity",
      "is_material_claim": false,
      "kind": "evidence-integrity",
      "materiality": "A committed output nobody can re-derive is a published number with no run behind it.",
      "needs": [
        "notebooks"
      ],
      "problem_digest": "75972b67a2ec09e9803efdab54de5a57560d30ace37d5eac21ac83ba4c600439",
      "raw": {
        "files_scanned": 1259,
        "notebooks_found": 0
      },
      "reason": "1259 files scanned at the pinned commit and the target contains no notebooks, so no committed output can disagree with re-execution",
      "text": "No committed notebook output in the target disagrees with re-execution.",
      "verdict": "REPRODUCED",
      "where": null
    },
    {
      "blind_connectors": [],
      "derived": {
        "hits": 1,
        "looked": true,
        "queries_issued": 3
      },
      "id": "Q4-dataset-substantiation",
      "is_material_claim": false,
      "kind": "evidence-integrity",
      "materiality": "Deep-tech claims are usually evidenced by data the repository does not contain.",
      "needs": [
        "datasets"
      ],
      "problem_digest": "41e4ac81608c00b1dd98f950ac64428dbf658c53933ff03d4b035c268b665955",
      "raw": {
        "hits": 1,
        "queries_issued": 3
      },
      "reason": "datasets exist and were not all examined",
      "text": "Published datasets substantiate or contradict the target's claims.",
      "verdict": "PARTIAL",
      "where": null
    }
  ],
  "schema": "claimbom/1",
  "spec_digest": "76a5c36112425a2a961f287f67a029a230955afd7a58d3625ee998b0432ae900",
  "tally": {
    "PARTIAL": 4,
    "REFUTED": 1,
    "REPRODUCED": 5,
    "UNVERIFIABLE": 1
  },
  "target": {
    "commit": "a1b94a1d903072d5ea1d8ecf434bd9d5518014c0",
    "default_branch": "main",
    "id": "pq-code-package-mlkem-native",
    "name": "pq-code-package/mlkem-native",
    "url": "https://github.com/pq-code-package/mlkem-native",
    "why_this_target": "A formally verified, actively maintained ML-KEM implementation adopted as liboqs's default. If the instrument's findings are about code quality its tally here should look nothing like kyber's; if they are about README age it should. Nothing here is a criticism of its authors."
  }
}
