diff --git a/skills/cuopt-install/BENCHMARK.md b/skills/cuopt-install/BENCHMARK.md index 67f7b82ef0..d6e1938946 100644 --- a/skills/cuopt-install/BENCHMARK.md +++ b/skills/cuopt-install/BENCHMARK.md @@ -7,7 +7,7 @@ This benchmark summarizes 3-Tier Evaluation from NVSkills-Eval results for the s ## Evaluation Summary - Skill: `cuopt-install` -- Evaluation date: 2026-05-28 +- Evaluation date: 2026-05-29 - NVSkills-Eval profile: `external` - Environment: `local` - Dataset: 1 evaluation tasks @@ -32,6 +32,7 @@ Reported benchmark dimensions: Underlying evaluation signals used in this run: +- `security` (Security): checks for unsafe operations, secret leakage, and unauthorized access. - `skill_execution` (Skill Execution): verifies that the agent loaded the expected skill and workflow. - `skill_efficiency` (Efficiency): checks routing quality, decoy avoidance, and redundant tool usage. - `accuracy` (Accuracy): grades final-answer correctness against the reference answer. @@ -54,24 +55,24 @@ Task composition is derived from the evaluation dataset when possible. Entries w | Dimension | Num | `claude-code` | `codex` | |---|---:|---:|---:| | Security | 2 | 100% (+0%) | 100% (+0%) | -| Correctness | 2 | 100% (+0%) | 92% (+17%) | -| Discoverability | 2 | 100% (+0%) | 80% (+55%) | -| Effectiveness | 2 | 100% (+6%) | 100% (+2%) | -| Efficiency | 2 | 93% (-0%) | 78% (+51%) | +| Correctness | 2 | 100% (+0%) | 88% (+6%) | +| Discoverability | 2 | 100% (+0%) | 62% (+19%) | +| Effectiveness | 2 | 97% (+4%) | 100% (+0%) | +| Efficiency | 2 | 93% (-0%) | 61% (+17%) | Score values show skill-assisted performance. Values in parentheses show uplift versus the no-skill baseline when baseline data is available. ## Tier 1: Static Validation Summary -Tier 1 validation passed with observations. NVSkills-Eval ran 9 checks and found 10 total findings. +Tier 1 validation passed with observations. NVSkills-Eval ran 9 checks and found 7 total findings. Top findings: - MEDIUM SCHEMA/body_recommended_section: Missing recommended section: '## Instructions' (`skills/cuopt-install/SKILL.md`) - MEDIUM SCHEMA/body_recommended_section: Missing recommended section: '## Examples' (`skills/cuopt-install/SKILL.md`) -- LOW QUALITY/quality_discoverability: Description very long (283 chars, recommend 50-150) (`skills/cuopt-install/SKILL.md`) - LOW QUALITY/quality_discoverability: No '## Purpose' section (`skills/cuopt-install/SKILL.md`) - LOW QUALITY/quality_reliability: No prerequisites/requirements documented (`skills/cuopt-install/SKILL.md`) +- LOW QUALITY/quality_reliability: No limitations documented (`skills/cuopt-install/SKILL.md`) ## Tier 2: Deduplication Summary @@ -80,7 +81,7 @@ Tier 2 validation passed. NVSkills-Eval ran 2 checks and found 0 total findings. Notable observations: - Context Deduplication: Collected 2 file(s) -- Inter-Skill Deduplication: Parsed skill 'cuopt-install': 283 char description +- Inter-Skill Deduplication: Parsed skill 'cuopt-install': 138 char description ## Publication Recommendation diff --git a/skills/cuopt-install/SKILL.md b/skills/cuopt-install/SKILL.md index 44efe186c2..c61b9c4905 100644 --- a/skills/cuopt-install/SKILL.md +++ b/skills/cuopt-install/SKILL.md @@ -1,7 +1,7 @@ --- name: cuopt-install version: "26.08.00" -description: Install cuOpt for Python, C, or as a server (pip, conda, Docker) — system requirements, install commands, and verification. Use when the user wants to install or verify cuOpt for any user-facing interface. For building cuOpt from source or contributing to cuOpt, see cuopt-developer. +description: Install cuOpt for Python, C, or server via pip, conda, or Docker; verify the install. For building cuOpt from source, see cuopt-developer. license: Apache-2.0 metadata: author: NVIDIA cuOpt Team diff --git a/skills/cuopt-install/skill-card.md b/skills/cuopt-install/skill-card.md index 69764370c8..31974aca6b 100644 --- a/skills/cuopt-install/skill-card.md +++ b/skills/cuopt-install/skill-card.md @@ -1,5 +1,5 @@ ## Description:
-Install cuOpt for Python, C, or as a server (pip, conda, Docker) — system requirements, install commands, and verification.
+Install cuOpt for Python, C, or server via pip, conda, or Docker; verify the install.
This skill is ready for commercial/non-commercial use.
@@ -9,7 +9,7 @@ NVIDIA
### License/Terms of Use:
Apache 2.0
## Use Case:
-Developers and engineers installing and verifying the NVIDIA cuOpt GPU-accelerated optimization engine for Python, C, or REST server interfaces.
+Developers and engineers who need to install NVIDIA cuOpt (GPU-accelerated optimization engine) via pip, conda, or Docker and verify the installation for Python, C, or server deployments.
### Deployment Geography for Use:
Global
@@ -21,7 +21,6 @@ Mitigation: Review and scan skill before deployment.
## Reference(s):
- [Verification Examples](references/verification_examples.md)
- [cuOpt User Guide](https://docs.nvidia.com/cuopt/user-guide/latest/introduction.html)
-- [cuOpt Docker Hub](https://hub.docker.com/r/nvidia/cuopt)
- [cuOpt Examples](https://github.com/NVIDIA/cuopt-examples)
@@ -32,13 +31,13 @@ Mitigation: Review and scan skill before deployment.
**Other Properties Related to Output:** [None]
## Evaluation Agents Used:
-- Claude Code (`claude-code`)
-- Codex (`codex`)
+- `claude-code`
+- `codex`
## Evaluation Tasks:
-Evaluated against 1 internal skill task (2 attempts per task, 50% pass threshold) via NVSkills-Eval external profile.
+Evaluated against 1 evaluation task with 2 attempts per task (pass threshold: 50%).
## Evaluation Metrics Used:
Reported benchmark dimensions:
@@ -49,6 +48,7 @@ Reported benchmark dimensions:
- Efficiency: Checks whether the agent uses fewer tokens and avoids redundant work.
Underlying evaluation signals used in this run:
+- `security`: Checks for unsafe operations, secret leakage, and unauthorized access.
- `skill_execution`: Verifies that the agent loaded the expected skill and workflow.
- `skill_efficiency`: Checks routing quality, decoy avoidance, and redundant tool usage.
- `accuracy`: Grades final-answer correctness against the reference answer.
@@ -62,13 +62,13 @@ Underlying evaluation signals used in this run:
| Dimension | Num | `claude-code` | `codex` | |---|---:|---:|---:| | Security | 2 | 100% (+0%) | 100% (+0%) | -| Correctness | 2 | 100% (+0%) | 92% (+17%) | -| Discoverability | 2 | 100% (+0%) | 80% (+55%) | -| Effectiveness | 2 | 100% (+6%) | 100% (+2%) | -| Efficiency | 2 | 93% (-0%) | 78% (+51%) | +| Correctness | 2 | 100% (+0%) | 88% (+6%) | +| Discoverability | 2 | 100% (+0%) | 62% (+19%) | +| Effectiveness | 2 | 97% (+4%) | 100% (+0%) | +| Efficiency | 2 | 93% (-0%) | 61% (+17%) | ## Skill Version(s):
-26.08.00 (source: frontmatter, git tag)
+26.08.00 (source: frontmatter)
## Ethical Considerations:
NVIDIA believes Trustworthy AI is a shared responsibility and we have established policies and practices to enable development for a wide array of AI applications. When downloaded or used in accordance with our terms of service, developers should work with their internal team to ensure this skill meets requirements for the relevant industry and use case and addresses unforeseen product misuse.
diff --git a/skills/cuopt-install/skill.oms.sig b/skills/cuopt-install/skill.oms.sig index 55f58edcc1..d7c2952924 100644 --- a/skills/cuopt-install/skill.oms.sig +++ b/skills/cuopt-install/skill.oms.sig @@ -1 +1 @@ -{"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json","verificationMaterial":{"x509CertificateChain":{"certificates":[{"rawBytes":"MIICgzCCAgmgAwIBAgIUKIyS7SxNteQIiWzK1dWj85E6520wCgYIKoZIzj0EAwMwVTELMAkGA1UEBhMCVVMxGzAZBgNVBAoMEk5WSURJQSBDb3Jwb3JhdGlvbjEpMCcGA1UEAwwgTlZJRElBIEFnZW50IENhcGFiaWxpdGllcyBJQ0EgMDEwHhcNMjYwNDAxMDAwMDAwWhcNMjgwNDIyMTUzMzA5WjBUMQswCQYDVQQGEwJVUzEbMBkGA1UECgwSTlZJRElBIENvcnBvcmF0aW9uMSgwJgYDVQQDDB9OVklESUEgQWdlbnQgU2tpbGxzIFNpZ25pbmcgMDAxMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEYoRM9bQl/dGlwSRNi6bTpIJUXH8Nv9GciP6LSflJYYMLCc296kpyuTSsk5ddbAWiDcFX3C/ydX3jwc+qCLYP6uHy9XphyLjOQ27Yb2J6rBLVtRBS1mgGco/Gr7fL6ODco4GaMIGXMB0GA1UdDgQWBBRQ/5ZW3nJ6lmo9SVk7I15o7UGmpTAfBgNVHSMEGDAWgBRPGpILxMBBleJSsBGjrMKsby1CgjAMBgNVHRMBAf8EAjAAMA4GA1UdDwEB/wQEAwIHgDA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAGGG2h0dHA6Ly9vY3NwLm5kaXMubnZpZGlhLmNvbTAKBggqhkjOPQQDAwNoADBlAjAUygu/GiOCIXrgGr4SmLgeEVDcEitfFUv7ALbvLVGVyMysB3mxmO/uInZfXzWcJZsCMQDxuoxj4ZmO30jhkPIcCxGFCOvnUsnfU3TfGcouYm4M6iRpbKvtVnHPiy4bi6pcKf0="},{"rawBytes":"MIICiDCCAg6gAwIBAgIUZsIuSv9NkpJCNqtYEfCouVv5BzowCgYIKoZIzj0EAwMwUTELMAkGA1UEBhMCVVMxGzAZBgNVBAoMEk5WSURJQSBDb3Jwb3JhdGlvbjElMCMGA1UEAwwcTlZJRElBIEFnZW50IENhcGFiaWxpdGllcyBDQTAgFw0yNjA0MDEwMDAwMDBaGA85OTk5MTIzMTIzNTk1OVowVTELMAkGA1UEBhMCVVMxGzAZBgNVBAoMEk5WSURJQSBDb3Jwb3JhdGlvbjEpMCcGA1UEAwwgTlZJRElBIEFnZW50IENhcGFiaWxpdGllcyBJQ0EgMDEwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASI72cR3ctKGg4VWnB3bNja6g1Z2PnOmFEopkPof+QeIcPk9rT+g9MjJnq51EQXL93a7C2GJ9J985G4o2V85VD7wJ1RaXhluHW2rf3y8bQGeAYaKMr5s/hUgn+M3/9WlWejgaAwgZ0wHQYDVR0OBBYEFE8akgvEwEGV4lKwEaOswqxvLUKCMB8GA1UdIwQYMBaAFItnoAjjfuCEUvzyvWyI2vOGvwPjMBIGA1UdEwEB/wQIMAYBAf8CAQAwDgYDVR0PAQH/BAQDAgEGMDcGCCsGAQUFBwEBBCswKTAnBggrBgEFBQcwAYYbaHR0cDovL29jc3AubmRpcy5udmlkaWEuY29tMAoGCCqGSM49BAMDA2gAMGUCMQCeIMMfAbyzPDacw2MxG+Yt1cikrJX/DVxiGfXuHmkkXn6VgSzE79+lkqDErpVO2gYCMCNEColOyvUvkzZGUEI1hQ3PfMgi3FIo9tHoBKMw4/wGBLFpu/0ubtmbBXM6/UMOEw=="},{"rawBytes":"MIICRTCCAcygAwIBAgIUeJdY3rV86EdvFmG7L8LJBsyQFYkwCgYIKoZIzj0EAwMwUTELMAkGA1UEBhMCVVMxGzAZBgNVBAoMEk5WSURJQSBDb3Jwb3JhdGlvbjElMCMGA1UEAwwcTlZJRElBIEFnZW50IENhcGFiaWxpdGllcyBDQTAgFw0yNjA0MDEwMDAwMDBaGA85OTk5MTIzMTIzNTk1OVowUTELMAkGA1UEBhMCVVMxGzAZBgNVBAoMEk5WSURJQSBDb3Jwb3JhdGlvbjElMCMGA1UEAwwcTlZJRElBIEFnZW50IENhcGFiaWxpdGllcyBDQTB2MBAGByqGSM49AgEGBSuBBAAiA2IABAYpiXCDjJ9NT2eSDhyHJVSw1Tbze18cGG2F/578oWvHxg23eQAhNRYdq88i1iOshZSO6C29doKui5Xpmo/7Ctw9Sx4PP2RzOmIuOLCuTdNtKcTRwi4GEsd5BAFvWj42M6NjMGEwHQYDVR0OBBYEFItnoAjjfuCEUvzyvWyI2vOGvwPjMB8GA1UdIwQYMBaAFItnoAjjfuCEUvzyvWyI2vOGvwPjMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMAoGCCqGSM49BAMDA2cAMGQCMCwtAjWLaNwgGWNCgdyNoTyvNhqWRECRJV2r3+7w8g0PL6NHLOsbkgE09BH95h8XlgIwTaQmbbUh2ChAJ5TA1wRiVDnCcvbzHlZl2jM2FcwQQZlk19LOAbyGMRixbu2Ww/rj"}]},"tlogEntries":[]},"dsseEnvelope":{"payload":"ewogICJfdHlwZSI6ICJodHRwczovL2luLXRvdG8uaW8vU3RhdGVtZW50L3YxIiwKICAic3ViamVjdCI6IFsKICAgIHsKICAgICAgIm5hbWUiOiAiY3VvcHQtaW5zdGFsbCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI3ZGEwMjNiMGYyOWQ1MDkwZDU5ODMwZGEzYWJlZDg4MjljZTQ5NWY4MjU3YTU1MzQxOGUxYTMyYTNjYzM5YzkwIgogICAgICB9CiAgICB9CiAgXSwKICAicHJlZGljYXRlVHlwZSI6ICJodHRwczovL21vZGVsX3NpZ25pbmcvc2lnbmF0dXJlL3YxLjAiLAogICJwcmVkaWNhdGUiOiB7CiAgICAicmVzb3VyY2VzIjogWwogICAgICB7CiAgICAgICAgIm5hbWUiOiAiQkVOQ0hNQVJLLm1kIiwKICAgICAgICAiZGlnZXN0IjogImJhYWJlMjQxODM3N2JkZjY2YmYyOWFiNjk5MDlmZTBlYjgzMTFjMzQ3OGRlNGJmZDdiZmRhYjhmZTk5ZjMxNWEiLAogICAgICAgICJhbGdvcml0aG0iOiAic2hhMjU2IgogICAgICB9LAogICAgICB7CiAgICAgICAgIm5hbWUiOiAiU0tJTEwubWQiLAogICAgICAgICJkaWdlc3QiOiAiMDJmNjU4MzIyNDlkNjQ4ZGI5OTBjNjRkZTZjNThmZTlhN2FiZmY2M2IwYmU1Y2Q5ZmQ3YWM5MzMzMzU2ZTZhMiIsCiAgICAgICAgImFsZ29yaXRobSI6ICJzaGEyNTYiCiAgICAgIH0sCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJiZW5jaG1hcmsvZXZhbHMuanNvbiIsCiAgICAgICAgImRpZ2VzdCI6ICIwOTZlYWU5YWJiZDc5YWUzYzczYmJlMDBhZGJiMDNlYWU5NmQ1YmQ5NGNhNTdjNTE5ZDkyMDFiNGQ4ZDZlMjZjIiwKICAgICAgICAiYWxnb3JpdGhtIjogInNoYTI1NiIKICAgICAgfSwKICAgICAgewogICAgICAgICJuYW1lIjogImV2YWxzL2V2YWxzLmpzb24iLAogICAgICAgICJkaWdlc3QiOiAiNWFmYzFhYjMxMTc4OWY0MmNhMWQ4MDM5ZTUxOWE0MTNlNTVmYWJkMWU0MzFhZDAxYzc3YWU2Nzg3YTEwODMxNSIsCiAgICAgICAgImFsZ29yaXRobSI6ICJzaGEyNTYiCiAgICAgIH0sCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJyZWZlcmVuY2VzL3ZlcmlmaWNhdGlvbl9leGFtcGxlcy5tZCIsCiAgICAgICAgImRpZ2VzdCI6ICIyOGJjODhkZmNhMWE5ZDkzZTRjZWI1NzEzNTM1MDYzMjY0MzVmNTNjZDEyMDZiMWUxMjg5NmJjMTMxOTMzZGFkIiwKICAgICAgICAiYWxnb3JpdGhtIjogInNoYTI1NiIKICAgICAgfSwKICAgICAgewogICAgICAgICJuYW1lIjogInNraWxsLWNhcmQubWQiLAogICAgICAgICJkaWdlc3QiOiAiNTk2NTY2NzNmNGUxNjBjYmJmMDlhZjU4MmJiYWYwNDBiOTUxMDYzNTNjYzIxYTRjYTI1NDk5N2YzODY4NWIzMyIsCiAgICAgICAgImFsZ29yaXRobSI6ICJzaGEyNTYiCiAgICAgIH0KICAgIF0sCiAgICAic2VyaWFsaXphdGlvbiI6IHsKICAgICAgIm1ldGhvZCI6ICJmaWxlcyIsCiAgICAgICJoYXNoX3R5cGUiOiAic2hhMjU2IiwKICAgICAgImlnbm9yZV9wYXRocyI6IFsKICAgICAgICAiLmdpdCIsCiAgICAgICAgIi5naXRhdHRyaWJ1dGVzIiwKICAgICAgICAiLmdpdGlnbm9yZSIsCiAgICAgICAgIi5naXRodWIiCiAgICAgIF0sCiAgICAgICJhbGxvd19zeW1saW5rcyI6IGZhbHNlCiAgICB9CiAgfQp9","payloadType":"application/vnd.in-toto+json","signatures":[{"sig":"MGQCMD5iv+dbIo5+7cx74bD81prtBr+btPHJqCWdpVNR9vCr4qDrX78VmhxL6E0BDIZFhQIwYAV8kACxqjYFsGL5On8CI5JsLCi2RWkg6dTe1cq2eH8S+90grkIMdf0SJyQ1zocp","keyid":""}]}} \ No newline at end of file +{"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json","verificationMaterial":{"x509CertificateChain":{"certificates":[{"rawBytes":"MIICgzCCAgmgAwIBAgIUKIyS7SxNteQIiWzK1dWj85E6520wCgYIKoZIzj0EAwMwVTELMAkGA1UEBhMCVVMxGzAZBgNVBAoMEk5WSURJQSBDb3Jwb3JhdGlvbjEpMCcGA1UEAwwgTlZJRElBIEFnZW50IENhcGFiaWxpdGllcyBJQ0EgMDEwHhcNMjYwNDAxMDAwMDAwWhcNMjgwNDIyMTUzMzA5WjBUMQswCQYDVQQGEwJVUzEbMBkGA1UECgwSTlZJRElBIENvcnBvcmF0aW9uMSgwJgYDVQQDDB9OVklESUEgQWdlbnQgU2tpbGxzIFNpZ25pbmcgMDAxMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEYoRM9bQl/dGlwSRNi6bTpIJUXH8Nv9GciP6LSflJYYMLCc296kpyuTSsk5ddbAWiDcFX3C/ydX3jwc+qCLYP6uHy9XphyLjOQ27Yb2J6rBLVtRBS1mgGco/Gr7fL6ODco4GaMIGXMB0GA1UdDgQWBBRQ/5ZW3nJ6lmo9SVk7I15o7UGmpTAfBgNVHSMEGDAWgBRPGpILxMBBleJSsBGjrMKsby1CgjAMBgNVHRMBAf8EAjAAMA4GA1UdDwEB/wQEAwIHgDA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAGGG2h0dHA6Ly9vY3NwLm5kaXMubnZpZGlhLmNvbTAKBggqhkjOPQQDAwNoADBlAjAUygu/GiOCIXrgGr4SmLgeEVDcEitfFUv7ALbvLVGVyMysB3mxmO/uInZfXzWcJZsCMQDxuoxj4ZmO30jhkPIcCxGFCOvnUsnfU3TfGcouYm4M6iRpbKvtVnHPiy4bi6pcKf0="},{"rawBytes":"MIICiDCCAg6gAwIBAgIUZsIuSv9NkpJCNqtYEfCouVv5BzowCgYIKoZIzj0EAwMwUTELMAkGA1UEBhMCVVMxGzAZBgNVBAoMEk5WSURJQSBDb3Jwb3JhdGlvbjElMCMGA1UEAwwcTlZJRElBIEFnZW50IENhcGFiaWxpdGllcyBDQTAgFw0yNjA0MDEwMDAwMDBaGA85OTk5MTIzMTIzNTk1OVowVTELMAkGA1UEBhMCVVMxGzAZBgNVBAoMEk5WSURJQSBDb3Jwb3JhdGlvbjEpMCcGA1UEAwwgTlZJRElBIEFnZW50IENhcGFiaWxpdGllcyBJQ0EgMDEwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASI72cR3ctKGg4VWnB3bNja6g1Z2PnOmFEopkPof+QeIcPk9rT+g9MjJnq51EQXL93a7C2GJ9J985G4o2V85VD7wJ1RaXhluHW2rf3y8bQGeAYaKMr5s/hUgn+M3/9WlWejgaAwgZ0wHQYDVR0OBBYEFE8akgvEwEGV4lKwEaOswqxvLUKCMB8GA1UdIwQYMBaAFItnoAjjfuCEUvzyvWyI2vOGvwPjMBIGA1UdEwEB/wQIMAYBAf8CAQAwDgYDVR0PAQH/BAQDAgEGMDcGCCsGAQUFBwEBBCswKTAnBggrBgEFBQcwAYYbaHR0cDovL29jc3AubmRpcy5udmlkaWEuY29tMAoGCCqGSM49BAMDA2gAMGUCMQCeIMMfAbyzPDacw2MxG+Yt1cikrJX/DVxiGfXuHmkkXn6VgSzE79+lkqDErpVO2gYCMCNEColOyvUvkzZGUEI1hQ3PfMgi3FIo9tHoBKMw4/wGBLFpu/0ubtmbBXM6/UMOEw=="},{"rawBytes":"MIICRTCCAcygAwIBAgIUeJdY3rV86EdvFmG7L8LJBsyQFYkwCgYIKoZIzj0EAwMwUTELMAkGA1UEBhMCVVMxGzAZBgNVBAoMEk5WSURJQSBDb3Jwb3JhdGlvbjElMCMGA1UEAwwcTlZJRElBIEFnZW50IENhcGFiaWxpdGllcyBDQTAgFw0yNjA0MDEwMDAwMDBaGA85OTk5MTIzMTIzNTk1OVowUTELMAkGA1UEBhMCVVMxGzAZBgNVBAoMEk5WSURJQSBDb3Jwb3JhdGlvbjElMCMGA1UEAwwcTlZJRElBIEFnZW50IENhcGFiaWxpdGllcyBDQTB2MBAGByqGSM49AgEGBSuBBAAiA2IABAYpiXCDjJ9NT2eSDhyHJVSw1Tbze18cGG2F/578oWvHxg23eQAhNRYdq88i1iOshZSO6C29doKui5Xpmo/7Ctw9Sx4PP2RzOmIuOLCuTdNtKcTRwi4GEsd5BAFvWj42M6NjMGEwHQYDVR0OBBYEFItnoAjjfuCEUvzyvWyI2vOGvwPjMB8GA1UdIwQYMBaAFItnoAjjfuCEUvzyvWyI2vOGvwPjMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMAoGCCqGSM49BAMDA2cAMGQCMCwtAjWLaNwgGWNCgdyNoTyvNhqWRECRJV2r3+7w8g0PL6NHLOsbkgE09BH95h8XlgIwTaQmbbUh2ChAJ5TA1wRiVDnCcvbzHlZl2jM2FcwQQZlk19LOAbyGMRixbu2Ww/rj"}]},"tlogEntries":[]},"dsseEnvelope":{"payload":"ewogICJfdHlwZSI6ICJodHRwczovL2luLXRvdG8uaW8vU3RhdGVtZW50L3YxIiwKICAic3ViamVjdCI6IFsKICAgIHsKICAgICAgIm5hbWUiOiAiY3VvcHQtaW5zdGFsbCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIzMzIzOGVlYTQ2MTA5ZGEzMjM1MjBlMjgyZWEyMzFkMGRlOGRhY2EwZTc3MmZiODExNzJhMGFmNTBlNzdmMWQxIgogICAgICB9CiAgICB9CiAgXSwKICAicHJlZGljYXRlVHlwZSI6ICJodHRwczovL21vZGVsX3NpZ25pbmcvc2lnbmF0dXJlL3YxLjAiLAogICJwcmVkaWNhdGUiOiB7CiAgICAic2VyaWFsaXphdGlvbiI6IHsKICAgICAgIm1ldGhvZCI6ICJmaWxlcyIsCiAgICAgICJoYXNoX3R5cGUiOiAic2hhMjU2IiwKICAgICAgImFsbG93X3N5bWxpbmtzIjogZmFsc2UsCiAgICAgICJpZ25vcmVfcGF0aHMiOiBbCiAgICAgICAgIi5naXRhdHRyaWJ1dGVzIiwKICAgICAgICAiLmdpdGh1YiIsCiAgICAgICAgIi5naXRpZ25vcmUiLAogICAgICAgICIuZ2l0IgogICAgICBdCiAgICB9LAogICAgInJlc291cmNlcyI6IFsKICAgICAgewogICAgICAgICJhbGdvcml0aG0iOiAic2hhMjU2IiwKICAgICAgICAibmFtZSI6ICJCRU5DSE1BUksubWQiLAogICAgICAgICJkaWdlc3QiOiAiNTgzZjAyZGIzMTg5ZGQ3MWY5NzcwZGY0NWQyZmIyYmY5OTc0YjQzMzU0NzBkNDZmYWU0ZWIyN2Q2ZGIwNDRjNyIKICAgICAgfSwKICAgICAgewogICAgICAgICJhbGdvcml0aG0iOiAic2hhMjU2IiwKICAgICAgICAibmFtZSI6ICJTS0lMTC5tZCIsCiAgICAgICAgImRpZ2VzdCI6ICJmZDlmNDgzMmFhYzMyZTM3ZmNjMzhhNDEzMjc4YzEyMWU2MzljMTMxZTk2ODRjOGM2MzkwOWY0ZmM4NDMwYWVlIgogICAgICB9LAogICAgICB7CiAgICAgICAgImFsZ29yaXRobSI6ICJzaGEyNTYiLAogICAgICAgICJuYW1lIjogImJlbmNobWFyay9ldmFscy5qc29uIiwKICAgICAgICAiZGlnZXN0IjogIjA5NmVhZTlhYmJkNzlhZTNjNzNiYmUwMGFkYmIwM2VhZTk2ZDViZDk0Y2E1N2M1MTlkOTIwMWI0ZDhkNmUyNmMiCiAgICAgIH0sCiAgICAgIHsKICAgICAgICAiYWxnb3JpdGhtIjogInNoYTI1NiIsCiAgICAgICAgIm5hbWUiOiAiZXZhbHMvZXZhbHMuanNvbiIsCiAgICAgICAgImRpZ2VzdCI6ICI1YWZjMWFiMzExNzg5ZjQyY2ExZDgwMzllNTE5YTQxM2U1NWZhYmQxZTQzMWFkMDFjNzdhZTY3ODdhMTA4MzE1IgogICAgICB9LAogICAgICB7CiAgICAgICAgImFsZ29yaXRobSI6ICJzaGEyNTYiLAogICAgICAgICJuYW1lIjogInJlZmVyZW5jZXMvdmVyaWZpY2F0aW9uX2V4YW1wbGVzLm1kIiwKICAgICAgICAiZGlnZXN0IjogIjI4YmM4OGRmY2ExYTlkOTNlNGNlYjU3MTM1MzUwNjMyNjQzNWY1M2NkMTIwNmIxZTEyODk2YmMxMzE5MzNkYWQiCiAgICAgIH0sCiAgICAgIHsKICAgICAgICAiYWxnb3JpdGhtIjogInNoYTI1NiIsCiAgICAgICAgIm5hbWUiOiAic2tpbGwtY2FyZC5tZCIsCiAgICAgICAgImRpZ2VzdCI6ICI3NWMxNTRhOGY4NGNlMGQ1NDhhNTE0NGE2MGU1MjNkZjJjODFmMjA0NzUyNGJlZDUzNGQwODNjNTQwMTg4NzY3IgogICAgICB9CiAgICBdCiAgfQp9","payloadType":"application/vnd.in-toto+json","signatures":[{"sig":"MGUCMQDM+BbJ97dXgGKjRous/k+hjPr2J1qvtIrZzf4F4mhHXBfuhaHKDEBGQUeXAAVmRywCMFqhdX2Y4V5872yrKvHQdWIUl+YLh3gQ9XQgG6xq4gg0OeDA1ZG3xcDxFhvHtwkCGg==","keyid":""}]}} \ No newline at end of file