From 56d11d153f6d10c556aec3e88cf6d8289c1149eb Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Mon, 28 Sep 2026 21:18:49 -0400 Subject: [PATCH 01/88] docs(tacasv3a): design spec -- smart seeds plumbing (AFL++ <-> KLEE) Co-Authored-By: Claude Opus 5.5 (1M context) --- ...28-tacasv3a-smart-seeds-plumbing-design.md | 137 ++++++++++++++++++ 1 file changed, 137 insertions(+) create mode 100644 docs/superpowers/specs/2026-09-28-tacasv3a-smart-seeds-plumbing-design.md diff --git a/docs/superpowers/specs/2026-09-28-tacasv3a-smart-seeds-plumbing-design.md b/docs/superpowers/specs/2026-09-28-tacasv3a-smart-seeds-plumbing-design.md new file mode 100644 index 000000000..7ef0a0c66 --- /dev/null +++ b/docs/superpowers/specs/2026-09-28-tacasv3a-smart-seeds-plumbing-design.md @@ -0,0 +1,137 @@ +# tacasv3a — Smart seeds, parte 1: o encanamento da troca AFL++ ↔ KLEE + +**Data:** 2026-09-28 +**Branch:** `feat/tacas-smart-seeds` (a partir de `develop`, que já tem a tacasv2) +**Baseline:** tacasv2 com `--seed-exchange` desligado (o híbrido default) +**Status:** rascunho — aguardando revisão +**Linha:** `decisions/tacas-afl-slicing-roadmap.md` (ai-memory); Fase 3.3 do +`docs/migration-schedule.md`. Registro de rodadas: `docs/reports/tacas-experiment-log.md`. + +--- + +## 1. Objetivo + +Fazer a troca de sementes entre os motores **acontecer de verdade** e medir o efeito. A +v15 mediu "sem ganho" com o `--seed-exchange`, mas, como a seção 2 mostra, as sementes +praticamente nunca chegavam ao outro motor. Esta etapa conserta o encanamento; o laço +alternado com detecção de estagnação (3b) e a priorização das sementes (3c) vêm depois, +cada uma com spec e medição próprios. + +**Métrica de sucesso** (decidida com o usuário): Test-Comp — tarefas cobertas no +Cover-Error e cobertura média no Cover-Branches — **e** vereditos de propriedades do +SV-COMP (MemSafety, NoOverflows, ReachSafety), sempre contra a tacasv2 sem a troca, no +mesmo corpus e no mesmo build. + +--- + +## 2. Diagnóstico do `--seed-exchange` atual + +| # | Defeito | Onde | +|---|---|---| +| 1 | As sementes não atravessam fases: cada fase cria um `Caller` que apaga o diretório de trabalho, e `seeds/` mora dentro dele | `Caller::Caller` (`rm -rf `), `Caller::seedDirectory` | +| 2 | Fuzzer → KLEE lê o `klee_log.csv` do diretório **atual**, que acabou de ser recriado vazio; e mandaria um vetor só | `exportFuzzerVectorAsKtest` | +| 3 | O corpus do AFL++ nunca chega ao KLEE, embora o KLEE aceite um diretório de sementes | idem | +| 4 | A terceira fase (KLEE → AFL++) quase não roda: o KLEE usa até 0,8× o orçamento e sobram segundos | `map2check.cpp` (fase 3) e orçamentos em `executeAnalysis` | + +--- + +## 3. Design + +### 3.1 Armazém de sementes persistente + +- Diretório `/.seeds/`, **ao lado** do diretório de trabalho (não dentro + dele), criado na primeira fase e reaproveitado pelas seguintes: + - `afl/` — entradas para o `-i` do AFL++ (vetores do KLEE convertidos em bytes, mais o + corpus que o próprio AFL++ descobriu); + - `ktest/` — sementes para o `--seed-dir` do KLEE; + - `replay/` — diretório isolado onde as entradas do AFL++ são reexecutadas. +- Removido pelo `main` depois da última fase, salvo em `--debug`. +- Só existe com `--seed-exchange`. Sem a flag, nada muda em relação à tacasv2. + +### 3.2 Fuzzer → KLEE: conversão por replay + +Ao fim da fase AFL++ (sem violação encontrada): + +1. Para cada entrada de `afl-out/default/queue/` (em ordem de id, até **64**): + - roda o binário de witness **dentro de `replay/`**, com a entrada no stdin e teto de + 2 s. Em `replay/` os arquivos que o runtime grava (`map2check_property`, + `klee_log.csv`, …) não tocam o diretório da fase — um replay não pode sobrescrever + uma violação já registrada; + - lê o `replay/klee_log.csv` com `readNonDetLogAsObjects` e grava + `ktest/afl-.ktest` com `writeKtestFile`; apaga o log antes da próxima entrada; + - descarta vetores vazios e duplicados (mesmos bytes). +2. Registra `Seeded KLEE with N vectors from AFL++`. + +Na fase KLEE, com `ktest/` não vazio: +`--seed-dir=/ktest --allow-seed-extension --allow-seed-truncation --seed-time=<¼ do orçamento do KLEE>`. +O `--seed-time` impede que reproduzir sementes consuma a fase inteira. + +### 3.3 KLEE → fuzzer + +- `exportKleeVectorsAsSeeds` passa a gravar em `/afl/` (hoje grava em `seeds/`, + que é apagado). A fase AFL++ usa `/afl/` como `-i`. +- A cópia do corpus do AFL++ de volta ao armazém (hoje em `seeds/`) passa a gravar em + `/afl/`. + +### 3.4 Orçamento com a troca ligada + +- AFL++ **0,2**, KLEE **0,6**, AFL++ **0,2** do orçamento (hoje 0,2 / até 0,8 / o que sobrar). +- Sem `--seed-exchange`: inalterado (0,2 / 0,8), para a tacasv2 continuar medindo o mesmo. + +### 3.5 O que fica igual + +- O default continua **sem** troca. Promover a troca a default é decisão para depois da + medição. +- Nenhuma mudança nos motores, na instrumentação ou no slicing. + +--- + +## 4. Referência comparada + +| Aspecto | FuSeBMC v4 | tacasv3a | Por quê | +|---|---|---|---| +| Direção | fuzzer ↔ BMC, alternado | AFL++ → KLEE → AFL++ | O laço alternado é o 3b | +| Formato | seeds do fuzzer usados pelo BMC via "smart seeds" | replay no binário de witness para obter o vetor tipado | O KLEE precisa de um objeto por leitura nondet; o runtime já registra os tipos | +| Priorização | por cobertura | ordem de id, teto 64 | Ranking é o 3c | + +--- + +## 5. Testes + +Integração (`test_testcomp_regressions.sh`, seção de seed exchange): + +1. **As sementes atravessam fases.** Programa em que o AFL++ acha caminhos e o KLEE + resolve uma guarda (a mesma `seed.c` da seção 11): com `--seed-exchange --debug`, o log + tem `Seeded KLEE with N vectors from AFL++` com N > 0 **e** + `Seeded the fuzzer corpus with M vectors from KLEE` com M > 0, e o armazém `.seeds/` + existe ao lado do diretório de trabalho. +2. **O replay não sobrescreve uma violação.** Programa em que o próprio AFL++ acha o bug: + com `--seed-exchange`, o veredito continua FAILED. +3. **Sem `--debug`, nada fica para trás.** Depois do run, não existe `*.seeds/` no diretório. +4. **Sem a flag, nada muda.** Nenhum `*.seeds/` e nenhuma linha `Seeded` (atualiza a + seção 11, que hoje olha `seeds/` dentro do diretório de trabalho). + +Unitário: a lógica pura — seleção das entradas da fila (ordem, teto, deduplicação por +bytes) e o nome do armazém — em funções testáveis sem os motores. + +--- + +## 6. Avaliação (mini-rodadas, registradas no log) + +- **Test-Comp:** o manifesto da R15 (Cover-Error 213, Cover-Branches 120), 300 s, braço + `--seed-exchange` contra o controle da R15 (mesmo build, sem a troca). +- **SV-COMP:** amostras de MemSafety e NoOverflows da R14 (e uma de ReachSafety, com o + mesmo `build_corpus.py`), com e sem `--seed-exchange`, 120 s. +- Métricas: tarefas cobertas e cobertura de ramos; corretos, **wrong-true/wrong-false**; + N e M (sementes trocadas por tarefa) para confirmar que a troca aconteceu. + +--- + +## 7. Riscos + +| Risco | Mitigação | +|---|---| +| Replay de 64 entradas custa tempo | Teto de 2 s por entrada; binário já compilado; medir o custo por tarefa | +| Semente do AFL++ com vetor que não corresponde aos objetos do KLEE (tamanho/ordem) | `--allow-seed-extension/--allow-seed-truncation`; o vetor vem do mesmo runtime que o KLEE usa | +| KLEE gasta a fase reproduzindo sementes | `--seed-time` = ¼ do orçamento do KLEE | +| Mudar o orçamento (0,2/0,6/0,2) muda o efeito junto com a troca | Só com `--seed-exchange`; a medição compara contra o controle 0,2/0,8, e o efeito é o do pacote | From 1f681433e56a76f3a31745e2c507fc4a86cb8543 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Mon, 28 Sep 2026 22:09:29 -0400 Subject: [PATCH 02/88] docs(tacasv3a): implementation plan Co-Authored-By: Claude Opus 5.5 (1M context) --- ...026-09-28-tacasv3a-smart-seeds-plumbing.md | 145 ++++++++++++++++++ 1 file changed, 145 insertions(+) create mode 100644 docs/superpowers/plans/2026-09-28-tacasv3a-smart-seeds-plumbing.md diff --git a/docs/superpowers/plans/2026-09-28-tacasv3a-smart-seeds-plumbing.md b/docs/superpowers/plans/2026-09-28-tacasv3a-smart-seeds-plumbing.md new file mode 100644 index 000000000..f3b801e2d --- /dev/null +++ b/docs/superpowers/plans/2026-09-28-tacasv3a-smart-seeds-plumbing.md @@ -0,0 +1,145 @@ +# tacasv3a — Smart seeds plumbing: Implementation Plan + +> **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking. + +**Goal:** make `--seed-exchange` actually move seeds between AFL++ and KLEE, across the hybrid's three phases. + +**Architecture:** +- **Seed store.** A persistent directory `/.seeds/` next to the scratch directory, with `afl/`, `ktest/` and `replay/` subdirectories. +- **KLEE → AFL++.** KLEE vectors go to `afl/`, and the AFL++ phase uses `afl/` as its `-i`. +- **AFL++ → KLEE.** The AFL++ queue is replayed through the witness binary inside `replay/`, and the typed nondet log becomes one `.ktest` per entry in `ktest/`. KLEE then runs with `--seed-dir`. +- **Budget.** 0.2 / 0.6 / 0.2 when the exchange is on. +- **Cleanup.** The store is removed after the last phase unless `--debug`. +- **Where the code lives.** Pure selection logic goes into `modules/frontend/utils/seed_store.hpp`; the rest goes in `Caller` and `map2check.cpp`. + +**Tech Stack:** C++17, GTest, bash integration tests, Docker dev image `map2check-dev:aflpp`. Use build dir `build_aflpp` (prefix pinned to `/workspace/build_aflpp/install`) and `build_aflpp_ut` (ENABLE_TEST). Rebuild `build_aflpp` only after R15 has finished, because it is using that install. + +**Spec:** `docs/superpowers/specs/2026-09-28-tacasv3a-smart-seeds-plumbing-design.md` + +## Global Constraints + +- **Store path:** `/.seeds`, absolute, with subdirectories `afl/`, `ktest/` and `replay/`. It exists only with `--seed-exchange`. +- **Queue replay:** at most 64 entries, in queue id order, each with a 2 s cap, run inside `replay/`. Empty or duplicate vectors are skipped. +- **KLEE seeding flags:** `--seed-dir=/ktest --allow-seed-extension --allow-seed-truncation --seed-time=s`, added only when `ktest/` has a file. +- **Budget with the exchange:** KLEE `min(0.6T, remaining−5)`. Without the exchange nothing changes (0.8T). +- **Log lines:** `Seeded KLEE with N vectors from AFL++` and `Seeded the fuzzer corpus with M vectors from KLEE`. +- **Default behaviour is unchanged** without `--seed-exchange`. +- Every mini-round is logged in `docs/reports/tacas-experiment-log.md`. + +## Review Focus + +- **A crash found by AFL++ must survive the queue replays.** Replays run in `replay/`, never in the phase directory. Pinned by integration test (2). +- **A run without `--debug` leaves no `*.seeds/` directory**, including when a phase errors out. Pinned by (3). +- **A queue entry whose replay hangs** is capped at 2 s. The `timeout` is covered by the code path; no dedicated test. +- **KLEE given seeds whose object sizes differ from its own** must not abort. The extension and truncation flags cover this, and it is exercised by (1). + +--- + +### Task 1: `seed_store.hpp` (pure) + unit tests + +**Files:** +- Create: `modules/frontend/utils/seed_store.hpp` and `tests/unit/frontend/SeedStoreTest.cpp`. +- Modify: `tests/unit/frontend/CMakeLists.txt`. + +**Produces:** +- `std::string Map2Check::seedStorePath(const std::string& cwd, const std::string& programHash)` returns `cwd + "/" + programHash + ".seeds"`. +- `std::vector Map2Check::selectQueueEntries(std::vector names, size_t cap)` keeps only names starting with `id:`, sorts them lexicographically (which is id order, because AFL++ zero-pads), and truncates to `cap`. +- `bool Map2Check::isNewVector(const std::vector& bytes, std::set>* seen)` returns false for an empty vector or one already in `seen`; otherwise it inserts the vector and returns true. + +- [ ] **Step 1:** Write the tests below in `SeedStoreTest.cpp`, and register it in CMake the same way as `SlicerTest` (`add_executable(SeedStoreTest SeedStoreTest.cpp)` + `map2check_test(SeedStoreTest)`). + +```cpp +#include + +#include +#include +#include + +#include "../../../modules/frontend/utils/seed_store.hpp" + +// Next to the scratch directory, not inside it: every hybrid phase recreates +// the scratch directory, and a store inside it never reached the next phase. +TEST(SeedStorePath, SitsBesideTheScratchDirectory) { + EXPECT_EQ(Map2Check::seedStorePath("/work", "abc.map2check"), + "/work/abc.map2check.seeds"); +} + +TEST(SelectQueueEntries, KeepsOnlyQueueEntriesInIdOrderUpToTheCap) { + const std::vector names = { + "id:000002,src:000000,time:9", ".state", "README.txt", + "id:000000,time:0,execs:0,orig:seed", "id:000001,src:000000,time:5"}; + const std::vector chosen = + Map2Check::selectQueueEntries(names, 2); + ASSERT_EQ(chosen.size(), 2u); + EXPECT_EQ(chosen[0], "id:000000,time:0,execs:0,orig:seed"); + EXPECT_EQ(chosen[1], "id:000001,src:000000,time:5"); +} + +TEST(IsNewVector, RejectsEmptyAndDuplicateVectors) { + std::set> seen; + EXPECT_FALSE(Map2Check::isNewVector({}, &seen)); + EXPECT_TRUE(Map2Check::isNewVector({1, 2}, &seen)); + EXPECT_FALSE(Map2Check::isNewVector({1, 2}, &seen)); + EXPECT_TRUE(Map2Check::isNewVector({1, 3}, &seen)); +} +``` + +- [ ] **Step 2:** Run `ninja SeedStoreTest` in `build_aflpp_ut`. Expected: FAIL, header not found. +- [ ] **Step 3:** Implement the header: `#include `, namespace `Map2Check`, the three inline functions exactly as specified, and a doc comment on each. +- [ ] **Step 4:** Run the test binary. Expected: `[ PASSED ] 3 tests.`, and ctest 100%. +- [ ] **Step 5: Commit** `feat(tacasv3a): pure seed-store helpers`. + +### Task 2: Store, KLEE → AFL++, budget and cleanup + +**Files:** `modules/frontend/caller.hpp`, `modules/frontend/caller.cpp`, `modules/frontend/map2check.cpp`, `tests/integration/test_testcomp_regressions.sh` (section 11). + +**Produces:** +- The member `std::string seedStore;` (absolute), set in the `Caller` constructor from `seedStorePath(currentPath, programHash)`. +- The accessor `const std::string& seedStorePath() const`. + +- [ ] **Step 1: Failing tests.** In section 11 of the integration script: + - Replace the `n_off` check with: after the run without the flag, `ls -d "$WORK/seed"/*.seeds 2>/dev/null | wc -l` must be 0. + - Replace the `n_on` count with: after the `--seed-exchange --debug` run, count files in `"$WORK"/seed/*.seeds/afl/` whose names start with `klee-`. It must be > 0, and the log must contain `Seeded the fuzzer corpus with`. + - Add a run of the same program with `--seed-exchange` **without** `--debug`. Afterwards `ls -d "$WORK/seed"/*.seeds` must be empty (`ok "no seed store is left behind without --debug"`). + + Run the suite. Expected: the `*.seeds` checks FAIL, because the store does not exist yet. +- [ ] **Step 2: Implement.** + - Set `seedStore` in the constructor, right after `currentPath` is set. + - `exportKleeVectorsAsSeeds` writes to `seedStore + "/afl"` (`create_directories`). + - In the AFL++ branch, `inputDir` is `seedStore + "/afl"` when `seedExchange`, otherwise `"afl-in"`. The queue copy-back writes to `seedStore + "/afl/afl-" + name`. + - KLEE budget: `const double kleeShare = this->seedExchange ? 0.6 : 0.8;` replaces the literal `0.8`. + - Remove `exportFuzzerVectorAsKtest` and its `--seed-file` use. Task 3 replaces it. + - In `map2check.cpp`, keep the store path from the last `map2check_execution`: a file-scope `std::string lastSeedStore` assigned from `caller->seedStorePath()`. After the hybrid phase sequence in `main`, when `args.seedExchange && !args.debugMode`, call `std::filesystem::remove_all(lastSeedStore, ec)`. + - Remove `Caller::seedDirectory` if nothing else uses it. +- [ ] **Step 3:** Rebuild (after R15) and run the suite plus ctest. Expected: section 11 passes, and everything else is unchanged. +- [ ] **Step 4: Commit** `feat(tacasv3a): a seed store that survives the hybrid's phases`. + +### Task 3: AFL++ → KLEE by replay, and KLEE `--seed-dir` + +**Files:** `modules/frontend/caller.hpp`, `modules/frontend/caller.cpp`, `tests/integration/test_testcomp_regressions.sh`. + +**Produces:** `unsigned Caller::exportFuzzerCorpusAsKtests();` (private). It returns the number of `.ktest` files written. + +- [ ] **Step 1: Failing tests.** Add section 26, "seeds reach KLEE", and section 27, "a crash survives the replays": + - **26:** `seed.c` from section 11, run with `--seed-exchange --debug`. The log must contain `Seeded KLEE with N vectors from AFL++` with N > 0 (grep the number), and the KLEE command line (debug) must contain `--seed-dir=`. + - **27:** the program `int x = nondet(); if (x > 1000 && x < 1100) reach_error();` (AFL++ finds it quickly thanks to CmpLog/interesting values), run with `--seed-exchange --target-function --target-function-name reach_error --timeout 30`. It must report `VERIFICATION FAILED`. + + Run them. Expected: 26 FAILS (no such line); 27 passes (a regression guard; ledger it). +- [ ] **Step 2: Implement** `exportFuzzerCorpusAsKtests()`, called at the end of the AFL++ branch when `seedExchange && !isWitnessFileCreated()`: + - List `afl-out/default/queue`, then `selectQueueEntries(names, 64)`. + - For each entry: + - clear `replay/` (`remove_all` + `create_directories`); + - run `cd && timeout -k 1 2 /-witness-fuzzed.out < '' > /dev/null 2>&1`; + - read `readNonDetLogAsObjects(/klee_log.csv)`; + - skip it if the objects are empty or if `ktestToFuzzerBytes(objects)` is not new according to `isNewVector`; + - otherwise `writeKtestFile(/ktest/afl-.ktest, objects)`. + - Log `Seeded KLEE with N vectors from AFL++` when N > 0. +- [ ] **Step 3: KLEE flags.** In the KLEE branch, when `seedExchange` and `/ktest` holds any regular file, append ` --seed-dir=/ktest --allow-seed-extension --allow-seed-truncation --seed-time=s` where `seedFlag` used to go (both command variants). +- [ ] **Step 4:** Rebuild and run the suite plus ctest. Expected: 26 and 27 pass, and everything else is unchanged. +- [ ] **Step 5: Commit** `feat(tacasv3a): the fuzzer corpus reaches KLEE as typed seeds`. + +### Task 4: Mini-rounds + +- [ ] **R16, Test-Comp:** the R15 manifests (`r15-ce.tsv`, `r15-cb.tsv`), 300 s, `EXTRA_FLAGS=--seed-exchange` (GENERATOR hybrid). Compare against the R15 control arm (same tasks, same code without the exchange). Report coverage, N and M per task (grep the `Seeded` lines from raw logs, or run a sample with `--debug`), and the median time. +- [ ] **R17, SV-COMP:** MemSafety and NoOverflows from the R14 manifests, plus a ReachSafety sample (`build_corpus.py` has no reachsafety property; use `--property cover-error`'s task list with `--target-function` via `run_testcomp_evaluation.sh`'s verdict column, or skip ReachSafety and note it). 120 s, with and without `--seed-exchange`. Report correct and wrong answers per arm. +- [ ] **Log R16–R17** with comparisons, and commit. From fb8248a948f422a933428b8e46f8df07a66c723e Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Mon, 28 Sep 2026 22:10:00 -0400 Subject: [PATCH 03/88] feat(tacasv3a): pure seed-store helpers Co-Authored-By: Claude Opus 5.5 (1M context) --- modules/frontend/utils/seed_store.hpp | 57 +++++++++++++++++++++++++++ tests/unit/frontend/CMakeLists.txt | 5 +++ tests/unit/frontend/SeedStoreTest.cpp | 41 +++++++++++++++++++ 3 files changed, 103 insertions(+) create mode 100644 modules/frontend/utils/seed_store.hpp create mode 100644 tests/unit/frontend/SeedStoreTest.cpp diff --git a/modules/frontend/utils/seed_store.hpp b/modules/frontend/utils/seed_store.hpp new file mode 100644 index 000000000..70f52ff89 --- /dev/null +++ b/modules/frontend/utils/seed_store.hpp @@ -0,0 +1,57 @@ +/** + * Copyright (C) 2014 - 2026 Map2Check tool + * This file is part of the Map2Check tool, and is made available under + * the terms of the GNU General Public License version 2. + * + * SPDX-License-Identifier: (GPL-2.0) + **/ + +#ifndef MODULES_FRONTEND_UTILS_SEED_STORE_HPP_ +#define MODULES_FRONTEND_UTILS_SEED_STORE_HPP_ + +#include +#include +#include +#include +#include + +namespace Map2Check { + +/** Where the engines leave seeds for each other under --seed-exchange. + * + * BESIDE the scratch directory, not inside it: every phase of the hybrid + * builds a new Caller, which recreates the scratch directory empty, and a + * store inside it never reached the next phase (tacasv3a spec, defect 1). */ +inline std::string seedStorePath(const std::string& cwd, + const std::string& programHash) { + return cwd + "/" + programHash + ".seeds"; +} + +/** The AFL++ queue entries to hand to KLEE: only real entries ("id:..."), + * in queue order -- AFL++ zero-pads the id, so lexicographic order is id + * order, oldest (simplest) first -- and at most `cap` of them, so replaying + * them cannot eat the phase. */ +inline std::vector selectQueueEntries( + std::vector names, size_t cap) { + names.erase(std::remove_if(names.begin(), names.end(), + [](const std::string& name) { + return name.rfind("id:", 0) != 0; + }), + names.end()); + std::sort(names.begin(), names.end()); + if (names.size() > cap) names.resize(cap); + return names; +} + +/** Whether a converted vector is worth a seed: not empty, and not one already + * written -- many queue entries differ only in bytes the program never reads, + * and they replay to the same typed vector. */ +inline bool isNewVector(const std::vector& bytes, + std::set>* seen) { + if (bytes.empty()) return false; + return seen->insert(bytes).second; +} + +} // namespace Map2Check + +#endif // MODULES_FRONTEND_UTILS_SEED_STORE_HPP_ diff --git a/tests/unit/frontend/CMakeLists.txt b/tests/unit/frontend/CMakeLists.txt index 35d6a0390..4c2c50205 100644 --- a/tests/unit/frontend/CMakeLists.txt +++ b/tests/unit/frontend/CMakeLists.txt @@ -20,3 +20,8 @@ add_executable(SlicerTest SlicerTest.cpp ) map2check_test(SlicerTest) + +add_executable(SeedStoreTest + SeedStoreTest.cpp +) +map2check_test(SeedStoreTest) diff --git a/tests/unit/frontend/SeedStoreTest.cpp b/tests/unit/frontend/SeedStoreTest.cpp new file mode 100644 index 000000000..cd8badf55 --- /dev/null +++ b/tests/unit/frontend/SeedStoreTest.cpp @@ -0,0 +1,41 @@ +/** + * Copyright (C) 2014 - 2026 Map2Check tool + * This file is part of the Map2Check tool, and is made available under + * the terms of the GNU General Public License version 2. + * + * SPDX-License-Identifier: (GPL-2.0) + **/ + +#include + +#include +#include +#include + +#include "../../../modules/frontend/utils/seed_store.hpp" + +// Next to the scratch directory, not inside it: every hybrid phase recreates +// the scratch directory, and a store inside it never reached the next phase. +TEST(SeedStorePath, SitsBesideTheScratchDirectory) { + EXPECT_EQ(Map2Check::seedStorePath("/work", "abc.map2check"), + "/work/abc.map2check.seeds"); +} + +TEST(SelectQueueEntries, KeepsOnlyQueueEntriesInIdOrderUpToTheCap) { + const std::vector names = { + "id:000002,src:000000,time:9", ".state", "README.txt", + "id:000000,time:0,execs:0,orig:seed", "id:000001,src:000000,time:5"}; + const std::vector chosen = + Map2Check::selectQueueEntries(names, 2); + ASSERT_EQ(chosen.size(), 2u); + EXPECT_EQ(chosen[0], "id:000000,time:0,execs:0,orig:seed"); + EXPECT_EQ(chosen[1], "id:000001,src:000000,time:5"); +} + +TEST(IsNewVector, RejectsEmptyAndDuplicateVectors) { + std::set> seen; + EXPECT_FALSE(Map2Check::isNewVector({}, &seen)); + EXPECT_TRUE(Map2Check::isNewVector({1, 2}, &seen)); + EXPECT_FALSE(Map2Check::isNewVector({1, 2}, &seen)); + EXPECT_TRUE(Map2Check::isNewVector({1, 3}, &seen)); +} From a560d1e2ecc739ebdb3759e4bc5de4bd9faed164 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Mon, 28 Sep 2026 22:17:06 -0400 Subject: [PATCH 04/88] feat(tacasv3a): a seed store that survives the hybrid's phases Seeds now live in /.seeds beside the scratch directory, which every phase recreates. KLEE's vectors and the fuzzer's discoveries go to its afl/; the fuzzer phase reads it as -i. With --seed-exchange the KLEE share is 0.6 so the third phase gets real time. The cwd is restored between phases under --debug too (the nesting that broke the store path), and main removes the store after the last phase unless --debug. The single-vector exportFuzzerVectorAsKtest, which read a log that no longer existed, is gone; task 3 replaces it. Co-Authored-By: Claude Opus 5.5 (1M context) --- modules/frontend/caller.cpp | 40 ++++++++----------- modules/frontend/caller.hpp | 35 ++++++---------- modules/frontend/map2check.cpp | 11 +++++ .../integration/test_testcomp_regressions.sh | 38 +++++++++++------- 4 files changed, 63 insertions(+), 61 deletions(-) diff --git a/modules/frontend/caller.cpp b/modules/frontend/caller.cpp index 2c557fb1f..32dbc2a15 100644 --- a/modules/frontend/caller.cpp +++ b/modules/frontend/caller.cpp @@ -31,6 +31,7 @@ #include "test_suite/ktest_reader.hpp" #include "utils/gen_crypto_hash.hpp" #include "utils/log.hpp" +#include "utils/seed_store.hpp" #include "utils/slicer.hpp" #include "utils/tools.hpp" // namespace fs = boost::filesystem; @@ -84,6 +85,7 @@ Caller::Caller(std::string bc_program_path, Map2CheckMode mode, Map2Check::Log::Debug("Changing current dir"); currentPath = std::filesystem::current_path().string(); + seedStore = Map2Check::seedStorePath(currentPath, programHash); std::filesystem::current_path(currentPath + "/" + programHash); Map2Check::Log::Debug("Current path: " + std::filesystem::current_path().string()); @@ -131,7 +133,8 @@ std::string Caller::postOptimizationFlags() { unsigned Caller::exportKleeVectorsAsSeeds() { std::error_code error; - std::filesystem::create_directories(Caller::seedDirectory, error); + const std::string aflSeeds = seedStore + "/afl"; + std::filesystem::create_directories(aflSeeds, error); std::vector> ignored; unsigned written = 0; @@ -149,7 +152,7 @@ unsigned Caller::exportKleeVectorsAsSeeds() { // Named by index rather than by content hash: AFL++ renames what it // keeps to its own hash anyway, so a second one here buys nothing. std::ostringstream name; - name << Caller::seedDirectory << "/klee-" << index++; + name << aflSeeds << "/klee-" << index++; std::ofstream out(name.str(), std::ios::binary); if (!out.is_open()) continue; out.write(reinterpret_cast(bytes.data()), @@ -163,21 +166,6 @@ unsigned Caller::exportKleeVectorsAsSeeds() { return written; } -std::string Caller::exportFuzzerVectorAsKtest() { - std::vector objects = - Map2Check::readNonDetLogAsObjects(Map2Check::kleeLogCSV); - if (objects.empty()) return ""; - - std::error_code error; - std::filesystem::create_directories(Caller::seedDirectory, error); - const std::string path = - std::string(Caller::seedDirectory) + "/from-fuzzer.ktest"; - if (!Map2Check::writeKtestFile(path, objects)) return ""; - Map2Check::Log::Info("Seeding KLEE with the fuzzer's vector (" + - std::to_string(objects.size()) + " inputs)"); - return path; -} - bool Caller::runSlicer(const std::string &input, const std::string &output, std::vector primary, bool addRuntimeNames, const std::string &entry, const std::string &label) { @@ -351,6 +339,11 @@ bool Caller::sliceInstrumented() { return !error; } +void Caller::restoreWorkingDirectory() { + std::error_code error; + std::filesystem::current_path(currentPath, error); +} + void Caller::cleanGarbage() { std::filesystem::current_path(currentPath); std::ostringstream removeCommand; @@ -721,8 +714,11 @@ void Caller::executeAnalysis(std::string solvername) { // holding the budget to its last second is what turned a decided run // into an ERROR. constexpr double kPostEngineReserve = 5.0; + // With the exchange on, the fuzzer gets a real third phase: 0.2 / 0.6 / + // 0.2. Without it the hybrid keeps the 0.2 / 0.8 it was measured with. + const double kleeShare = this->seedExchange ? 0.6 : 0.8; const double kleeBudget = std::max( - 1.0, std::min(0.8 * this->timeout, + 1.0, std::min(kleeShare * this->timeout, this->remainingSeconds() - kPostEngineReserve)); kleeCommand << "timeout -k " << Map2Check::killGracePeriod << " " << static_cast(kleeBudget) << " "; @@ -778,10 +774,6 @@ void Caller::executeAnalysis(std::string solvername) { // budget is not merely faster, it is depth the run would not otherwise // have reached. std::string seedFlag; - if (this->seedExchange) { - const std::string seed = exportFuzzerVectorAsKtest(); - if (!seed.empty()) seedFlag = " --seed-file=" + seed; - } // Depth-first for Cover-Branches, and the reason is about what survives // the deadline rather than about search quality. @@ -900,7 +892,7 @@ void Caller::executeAnalysis(std::string solvername) { // without one (the previous fuzzer could start from nothing). std::error_code seedErr; const std::string inputDir = - this->seedExchange ? std::string(Caller::seedDirectory) : "afl-in"; + this->seedExchange ? seedStore + "/afl" : std::string("afl-in"); std::filesystem::create_directories(inputDir, seedErr); if (std::filesystem::is_empty(inputDir, seedErr)) { std::ofstream seed(inputDir + "/seed"); @@ -998,7 +990,7 @@ void Caller::executeAnalysis(std::string solvername) { if (name.find(",orig:") != std::string::npos) continue; std::filesystem::copy_file( entry.path(), - std::string(Caller::seedDirectory) + "/afl-" + name, + seedStore + "/afl/afl-" + name, std::filesystem::copy_options::skip_existing, queueErr); } } diff --git a/modules/frontend/caller.hpp b/modules/frontend/caller.hpp index eba63101d..64a3dedf6 100644 --- a/modules/frontend/caller.hpp +++ b/modules/frontend/caller.hpp @@ -119,6 +119,11 @@ class Caller { /** Remove generated files for verification */ void cleanGarbage(); + /** Back to the directory map2check was started in, without deleting the + * scratch directory: under --debug the scratch is kept, but the next hybrid + * phase must still start from the same place (the seed store is computed + * from it). */ + void restoreWorkingDirectory(); /** Slice the program with respect to the target before analysing it. * @@ -156,22 +161,13 @@ class Caller { * is a separate decision that has to be earned by its own measurement. */ bool seedExchange = false; - /** Directory the two engines use to hand each other input vectors. - * - * A directory of files rather than a value passed from one phase to the - * next, meant to survive between phases, runs and alternations -- which is - * what time-slicing will need. AFL++ starts from it and its discoveries are - * copied back in after each fuzzer phase (afl-fuzz never writes into its -i - * dir); the KLEE phase drops its own path vectors in. - * - * NOT yet true across phases (same as v15): it sits inside the scratch - * directory, which each phase's Caller recreates empty. Fixing that is part - * of the smart-seeds work (tacasv2/v3), since it changes what the hybrid - * measures. - * - * Relative, because both engines run with the scratch directory as their - * working directory. */ - static constexpr const char* seedDirectory = "seeds"; + /** The seed store, beside the scratch directory: /.seeds with + * afl/ (fuzzer inputs), ktest/ (KLEE seeds) and replay/ (where queue entries + * are replayed). Beside, not inside: every hybrid phase recreates the scratch + * directory, and a store inside it never reached the next phase. Used only + * under --seed-exchange. */ + std::string seedStore; + const std::string& seedStorePath() const { return seedStore; } /** Writes KLEE's per-path vectors into the seed corpus. * @@ -180,12 +176,7 @@ class Caller { * fuzzer down the same path. Returns how many seeds were written. */ unsigned exportKleeVectorsAsSeeds(); - /** Writes what the fuzzer consumed as a .ktest KLEE can start from. - * - * The nondet log is the only record of a fuzzer run carrying both value and - * type, which is what a .ktest needs. Returns the path, or empty. */ - std::string exportFuzzerVectorAsKtest(); - + /** Instrument and execute nondeterministic generator */ void applyNonDetGenerator(); diff --git a/modules/frontend/map2check.cpp b/modules/frontend/map2check.cpp index 00bb36320..db667b87d 100644 --- a/modules/frontend/map2check.cpp +++ b/modules/frontend/map2check.cpp @@ -414,6 +414,9 @@ struct map2check_args { }; bool foundViolation = false; +// The seed store of the last phase, removed by main once every phase ran. +static std::string lastSeedStore; + int map2check_execution(map2check_args args) { Map2Check::Log::Info("Started Map2Check"); // TODO(rafa.sa.xp@gmail.com): Check current mode @@ -720,9 +723,11 @@ int map2check_execution(map2check_args args) { // nondet log -- and deleting it unconditionally makes the pipeline // impossible to inspect after the fact. Debug runs are already opting into // verbosity and disk use. + lastSeedStore = caller->seedStorePath(); if (args.debugMode) { Map2Check::Log::Info("Debug mode: keeping temp files in " + caller->getScratchDir()); + caller->restoreWorkingDirectory(); } else { Map2Check::Log::Debug("Removing temp files"); caller->cleanGarbage(); @@ -1007,6 +1012,12 @@ z3 (Z3 is default), btor (Boolector), and yices2 (Yices))") return result; } } + // The store outlives the phases, not the run -- unless the run asked + // to keep its files. + if (args.seedExchange && !args.debugMode && !lastSeedStore.empty()) { + std::error_code storeError; + std::filesystem::remove_all(lastSeedStore, storeError); + } } else { int result = map2check_execution(args); diff --git a/tests/integration/test_testcomp_regressions.sh b/tests/integration/test_testcomp_regressions.sh index 867841422..7420700bd 100755 --- a/tests/integration/test_testcomp_regressions.sh +++ b/tests/integration/test_testcomp_regressions.sh @@ -433,31 +433,39 @@ EOF ( cd "$WORK/seed" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 250 "$MAP2CHECK" \ --target-function --target-function-name reach_error \ --debug --timeout 60 seed.c ) > "$WORK/seed/off.log" 2>&1 -scratch_off=$(find "$WORK/seed" -maxdepth 1 -name '*.map2check' -print -quit) -n_off=$(ls "$scratch_off/seeds" 2>/dev/null | wc -l) +# The seed store lives BESIDE the scratch directory (.seeds): every +# hybrid phase recreates the scratch directory, and a store inside it never +# reached the next phase (tacasv3a). +n_off=$(ls -d "$WORK/seed"/*.seeds 2>/dev/null | wc -l) if [ "$n_off" -eq 0 ]; then - ok "no seed corpus without --seed-exchange" + ok "no seed store without --seed-exchange" else - fail "default behaviour" "$n_off seeds written without asking" + fail "default behaviour" "a seed store was created without asking" fi rm -rf "$WORK/seed"/*.map2check ( cd "$WORK/seed" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 300 "$MAP2CHECK" \ --target-function --target-function-name reach_error --seed-exchange \ --debug --timeout 60 seed.c ) > "$WORK/seed/on.log" 2>&1 -scratch_on=$(find "$WORK/seed" -maxdepth 1 -name '*.map2check' -print -quit) +store=$(ls -d "$WORK/seed"/*.seeds 2>/dev/null | head -1) # Only the fuzzer's own discoveries count: the Caller writes a placeholder -# seed into seeds/ itself, so a plain file count would pass with no copy-back. -n_on=$(ls "$scratch_on/seeds" 2>/dev/null | grep -c '^afl-') - -# afl-fuzz never writes into its -i dir; the Caller copies its queue back in -# after the fuzzer phase, so the corpus survives the fuzzer process. (It does -# not yet survive into the next phase: each Caller recreates the scratch -# directory -- inherited from v15, left to the smart-seeds work.) -if [ "$n_on" -gt 0 ]; then - ok "the fuzzer discoveries are copied into seeds/ with --seed-exchange ($n_on files)" +# seed itself, so a plain file count would pass with no copy-back. +n_on=$(ls "$store/afl" 2>/dev/null | grep -c '^afl-') +if [ -n "$store" ] && [ "$n_on" -gt 0 ]; then + ok "the fuzzer discoveries reach the seed store beside the scratch ($n_on files)" else - fail "seed corpus" "nothing kept -- the corpus is still in-memory only" + fail "seed store" "no store beside the scratch directory, or no fuzzer discoveries in it" +fi + +# Without --debug the store is removed after the last phase. +rm -rf "$WORK/seed"/*.map2check "$WORK/seed"/*.seeds +( cd "$WORK/seed" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 300 "$MAP2CHECK" \ + --target-function --target-function-name reach_error --seed-exchange \ + --timeout 60 seed.c ) > "$WORK/seed/on-clean.log" 2>&1 +if [ "$(ls -d "$WORK/seed"/*.seeds 2>/dev/null | wc -l)" -eq 0 ]; then + ok "no seed store is left behind without --debug" +else + fail "seed store cleanup" "a *.seeds directory survived a run without --debug" fi # KLEE -> fuzzer: its per-path vectors become seed files. Sound only because From b662546317d14c9c6a04ec7b8b77a75611a8ed01 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Mon, 28 Sep 2026 22:27:47 -0400 Subject: [PATCH 05/88] feat(tacasv3a): the fuzzer corpus reaches KLEE as typed seeds At the end of the AFL++ phase (no violation found), up to 64 queue entries are replayed through the witness binary inside the seed store's replay/ directory -- so a replay cannot overwrite a recorded violation -- and the typed nondet log of each becomes a .ktest in ktest/. The witness runtime writes that log only on a violation (to keep KLEE forks from clobbering it), so the replay opts in with MAP2CHECK_SEED_REPLAY. KLEE then runs with --seed-dir, extension/truncation allowed and --seed-time at a quarter of its budget. Co-Authored-By: Claude Opus 5.5 (1M context) --- .../backend/library/lib/WitnessGeneration.c | 6 +- modules/frontend/caller.cpp | 88 +++++++++++++++++++ modules/frontend/caller.hpp | 8 ++ .../integration/test_testcomp_regressions.sh | 58 ++++++++++++ 4 files changed, 159 insertions(+), 1 deletion(-) diff --git a/modules/backend/library/lib/WitnessGeneration.c b/modules/backend/library/lib/WitnessGeneration.c index a4de44c20..330f3876b 100644 --- a/modules/backend/library/lib/WitnessGeneration.c +++ b/modules/backend/library/lib/WitnessGeneration.c @@ -6,6 +6,7 @@ * SPDX-License-Identifier: (GPL-2.0) **/ +#include #include "../header/WitnessGeneration.h" #include "../header/AnalysisMode.h" #include "../header/NonDetGenerator.h" @@ -19,7 +20,10 @@ void generate_aux_files(MAP2CHECK_CONTAINER *trackbb_log, Bool violation) { * so without the guard a state that took a different branch clobbers the * violating one's log -- which is exactly what produced a test case with the * right first input and a wrong second one. */ - if (violation) { + /* The seed exchange replays the fuzzer's NON-violating queue entries to + * learn their typed vectors, so it asks for the log explicitly. Only that + * replay sets the variable; KLEE's forked states never do. */ + if (violation || getenv("MAP2CHECK_SEED_REPLAY") != NULL) { nondet_generate_aux_witness_files(); } } diff --git a/modules/frontend/caller.cpp b/modules/frontend/caller.cpp index 32dbc2a15..43b72a705 100644 --- a/modules/frontend/caller.cpp +++ b/modules/frontend/caller.cpp @@ -22,6 +22,7 @@ #include #include #include +#include #include #include #include @@ -166,6 +167,65 @@ unsigned Caller::exportKleeVectorsAsSeeds() { return written; } +unsigned Caller::exportFuzzerCorpusAsKtests() { + // Each queue entry is replayed through the witness binary, whose runtime + // logs every nondet read with its type (klee_log.csv) -- which is what a + // .ktest needs and what the fuzzer's raw bytes lack. The replay runs in the + // store's replay/, not here: the witness writes map2check_property and + // friends into its working directory, and a replay must never overwrite a + // violation this phase already recorded. + std::error_code error; + const std::string queue = "afl-out/default/queue"; + const std::string replay = seedStore + "/replay"; + const std::string ktests = seedStore + "/ktest"; + const std::string witness = + std::filesystem::absolute(programHash + "-witness-fuzzed.out", error) + .string(); + if (!std::filesystem::exists(witness, error)) return 0; + + std::vector names; + for (const auto &entry : + std::filesystem::directory_iterator(queue, error)) { + if (entry.is_regular_file(error)) { + names.push_back(entry.path().filename().string()); + } + } + std::filesystem::create_directories(ktests, error); + + std::set> seen; + unsigned written = 0; + for (const std::string &name : + Map2Check::selectQueueEntries(names, kMaxSeedsFromFuzzer)) { + std::filesystem::remove_all(replay, error); + std::filesystem::create_directories(replay, error); + const std::string input = + std::filesystem::absolute(queue + "/" + name, error).string(); + std::ostringstream command; + command << "cd '" << replay << "' && MAP2CHECK_SEED_REPLAY=1 timeout -k 1 2 '" << witness + << "' < '" << input << "' > /dev/null 2>&1"; + system(command.str().c_str()); + + const std::vector objects = + Map2Check::readNonDetLogAsObjects(replay + "/" + + Map2Check::kleeLogCSV); + if (objects.empty()) continue; + if (!Map2Check::isNewVector(Map2Check::ktestToFuzzerBytes(objects), + &seen)) { + continue; + } + if (Map2Check::writeKtestFile( + ktests + "/afl-" + std::to_string(written) + ".ktest", objects)) { + ++written; + } + } + std::filesystem::remove_all(replay, error); + if (written > 0) { + Map2Check::Log::Info("Seeded KLEE with " + std::to_string(written) + + " vectors from AFL++"); + } + return written; +} + bool Caller::runSlicer(const std::string &input, const std::string &output, std::vector primary, bool addRuntimeNames, const std::string &entry, const std::string &label) { @@ -773,7 +833,30 @@ void Caller::executeAnalysis(std::string solvername) { // from nothing a path the fuzzer already walked -- which under a fixed // budget is not merely faster, it is depth the run would not otherwise // have reached. + // KLEE starts from the fuzzer's corpus when there is one, replaying + // each seed and exploring around it instead of rediscovering from + // nothing the paths the fuzzer already walked. --seed-time caps the + // replay at a quarter of the phase, so seeding cannot eat the search. std::string seedFlag; + if (this->seedExchange) { + std::error_code seedError; + bool haveSeeds = false; + for (const auto &entry : std::filesystem::directory_iterator( + seedStore + "/ktest", seedError)) { + if (entry.is_regular_file(seedError)) { + haveSeeds = true; + break; + } + } + if (haveSeeds) { + seedFlag = " --seed-dir=" + seedStore + + "/ktest --allow-seed-extension --allow-seed-truncation" + " --seed-time=" + + std::to_string(std::max( + 1u, static_cast(kleeBudget / 4))) + + "s"; + } + } // Depth-first for Cover-Branches, and the reason is about what survives // the deadline rather than about search quality. @@ -994,6 +1077,11 @@ void Caller::executeAnalysis(std::string solvername) { std::filesystem::copy_options::skip_existing, queueErr); } } + // The fuzzer's corpus for the KLEE phase, unless this phase already + // decided the property. + if (this->seedExchange && !isWitnessFileCreated()) { + exportFuzzerCorpusAsKtests(); + } Map2Check::Log::Debug("Finished fuzzer"); if (isWitnessFileCreated()) { diff --git a/modules/frontend/caller.hpp b/modules/frontend/caller.hpp index 64a3dedf6..c238c7fdd 100644 --- a/modules/frontend/caller.hpp +++ b/modules/frontend/caller.hpp @@ -176,6 +176,14 @@ class Caller { * fuzzer down the same path. Returns how many seeds were written. */ unsigned exportKleeVectorsAsSeeds(); + /** At most this many fuzzer queue entries are converted into KLEE seeds. */ + static constexpr size_t kMaxSeedsFromFuzzer = 64; + + /** Converts the AFL++ queue into typed .ktest seeds for the KLEE phase, by + * replaying each entry through the witness binary inside the seed store's + * replay/ directory. Returns how many seeds were written. */ + unsigned exportFuzzerCorpusAsKtests(); + /** Instrument and execute nondeterministic generator */ void applyNonDetGenerator(); diff --git a/tests/integration/test_testcomp_regressions.sh b/tests/integration/test_testcomp_regressions.sh index 7420700bd..52030c6db 100755 --- a/tests/integration/test_testcomp_regressions.sh +++ b/tests/integration/test_testcomp_regressions.sh @@ -883,6 +883,64 @@ else ok "slicing does not invent an overflow" fi +# --- 26. the fuzzer's corpus reaches KLEE as typed seeds --------------------- +# Each queue entry is replayed through the witness binary (inside the store's +# replay/, so nothing it writes touches the phase), and the typed nondet log +# becomes a .ktest; KLEE starts from the whole set with --seed-dir. The old +# channel read a log from a scratch directory that no longer existed and sent +# at most one vector. +# A non-linear guard: CmpLog cannot map a*a back to input bytes, so the fuzzer +# phase ends without the bug and hands its corpus over; KLEE solves it. +mkdir -p "$WORK/seed2" +cat > "$WORK/seed2/square.c" <<'EOF' +extern void __assert_fail(const char *, const char *, unsigned int, + const char *) __attribute__((__noreturn__)); +void reach_error(void) { __assert_fail("0", "square.c", 3, "reach_error"); } +extern int __VERIFIER_nondet_int(void); +int main(void) { + int a = __VERIFIER_nondet_int(); + int b = __VERIFIER_nondet_int(); + if (a > 100 && a < 300 && b > 0) { + if (a * a == 44521) { reach_error(); } + } + return 0; +} +EOF +( cd "$WORK/seed2" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 300 "$MAP2CHECK" \ + --target-function --target-function-name reach_error --seed-exchange \ + --debug --timeout 60 square.c ) > "$WORK/seed2/run.log" 2>&1 +n_seeds=$(grep -aoE "Seeded KLEE with [0-9]+ vectors from AFL\+\+" "$WORK/seed2/run.log" \ + | grep -oE "[0-9]+" | head -1) +if [ "${n_seeds:-0}" -gt 0 ] && grep -q -- "--seed-dir=" "$WORK/seed2/run.log"; then + ok "the fuzzer corpus reaches KLEE ($n_seeds seeds via --seed-dir)" +elif ! grep -q "Executing Klee" "$WORK/seed2/run.log"; then + ok "fuzzer -> KLEE not exercised: the fuzzer solved seed.c on its own" +else + fail "fuzzer -> KLEE" "KLEE ran without seeds from the fuzzer" +fi + +# --- 27. replaying the corpus must not erase a violation the fuzzer found ---- +mkdir -p "$WORK/seed3" +cat > "$WORK/seed3/easy.c" <<'EOF' +extern void __assert_fail(const char *, const char *, unsigned int, + const char *) __attribute__((__noreturn__)); +void reach_error(void) { __assert_fail("0", "easy.c", 3, "reach_error"); } +extern int __VERIFIER_nondet_int(void); +int main(void) { + int x = __VERIFIER_nondet_int(); + if (x > 1000 && x < 1100) { reach_error(); } + return 0; +} +EOF +( cd "$WORK/seed3" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 200 "$MAP2CHECK" \ + --target-function --target-function-name reach_error --seed-exchange \ + --timeout 30 easy.c ) > "$WORK/seed3/run.log" 2>&1 +if grep -q "VERIFICATION FAILED" "$WORK/seed3/run.log"; then + ok "a violation found by the fuzzer survives the seed replays" +else + fail "seed replay" "the violation was lost with --seed-exchange" +fi + echo " ---" echo " Results: $PASSED passed, $FAILED failed" [ "$FAILED" -eq 0 ] || exit 1 From 3a89b468421c1bf227fc5e1017812361fc37fe68 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Mon, 28 Sep 2026 22:44:27 -0400 Subject: [PATCH 06/88] fix(tacasv3a): bound and phase-gate the replays, clean store, keep proofs From the final review of the smart-seeds plumbing: - the fuzzer corpus is converted for KLEE only on the hybrid's first phase (a KLEE phase follows), and the replays stop at 5% of the budget; - the seed store is wiped at the start of a run and removed on every way out of main (scope guard), unless --debug keeps it; - a seed ends at the first nondet read the converter cannot express, instead of skipping it and shifting every later value (KLEE matches seeds by position); - the store path is quoted in the KLEE and afl-fuzz commands. Found while tightening the tests: a KLEE proof (SUCCEEDED) was followed by the third fuzzer phase printing UNKNOWN last; a proof now ends the hybrid like a violation does. Under --debug the cwd is restored between phases even without the exchange, so only the last phase's scratch is kept. Co-Authored-By: Claude Opus 5.5 (1M context) --- modules/frontend/caller.cpp | 15 +++-- modules/frontend/caller.hpp | 4 ++ modules/frontend/map2check.cpp | 36 +++++++++--- modules/frontend/test_suite/ktest_reader.cpp | 7 ++- .../integration/test_testcomp_regressions.sh | 55 +++++++++++++++++-- tests/unit/frontend/KtestReaderTest.cpp | 18 ++++++ 6 files changed, 117 insertions(+), 18 deletions(-) diff --git a/modules/frontend/caller.cpp b/modules/frontend/caller.cpp index 43b72a705..060ef027e 100644 --- a/modules/frontend/caller.cpp +++ b/modules/frontend/caller.cpp @@ -192,10 +192,16 @@ unsigned Caller::exportFuzzerCorpusAsKtests() { } std::filesystem::create_directories(ktests, error); + // Bounded as a whole, not only per entry: the replays come out of the KLEE + // phase's budget, so they stop at 5% of the run's budget (at least 2 s). + const auto started = std::chrono::steady_clock::now(); + const auto allowed = std::chrono::duration( + std::max(2.0, 0.05 * static_cast(this->timeout))); std::set> seen; unsigned written = 0; for (const std::string &name : Map2Check::selectQueueEntries(names, kMaxSeedsFromFuzzer)) { + if (std::chrono::steady_clock::now() - started >= allowed) break; std::filesystem::remove_all(replay, error); std::filesystem::create_directories(replay, error); const std::string input = @@ -849,8 +855,8 @@ void Caller::executeAnalysis(std::string solvername) { } } if (haveSeeds) { - seedFlag = " --seed-dir=" + seedStore + - "/ktest --allow-seed-extension --allow-seed-truncation" + seedFlag = " --seed-dir='" + seedStore + + "/ktest' --allow-seed-extension --allow-seed-truncation" " --seed-time=" + std::to_string(std::max( 1u, static_cast(kleeBudget / 4))) + @@ -1012,7 +1018,7 @@ void Caller::executeAnalysis(std::string solvername) { const bool hasCmplog = std::filesystem::exists(programHash + "-cmplog.out", cmplogErr); command << Map2Check::aflFuzzBinary() - << " -i " << inputDir + << " -i '" << inputDir << "'" << " -o afl-out"; if (hasCmplog) command << " -c ./" << programHash << "-cmplog.out"; command << " -- ./" << programHash << "-fuzzed.out" @@ -1079,7 +1085,8 @@ void Caller::executeAnalysis(std::string solvername) { } // The fuzzer's corpus for the KLEE phase, unless this phase already // decided the property. - if (this->seedExchange && !isWitnessFileCreated()) { + if (this->seedExchange && this->feedsKleePhase && + !isWitnessFileCreated()) { exportFuzzerCorpusAsKtests(); } Map2Check::Log::Debug("Finished fuzzer"); diff --git a/modules/frontend/caller.hpp b/modules/frontend/caller.hpp index c238c7fdd..48d2a0461 100644 --- a/modules/frontend/caller.hpp +++ b/modules/frontend/caller.hpp @@ -167,6 +167,10 @@ class Caller { * directory, and a store inside it never reached the next phase. Used only * under --seed-exchange. */ std::string seedStore; + /** Set by main on the hybrid's first phase: the fuzzer corpus is converted + * into KLEE seeds only when a KLEE phase follows. After the last phase the + * replays would be pure cost against a spent budget. */ + bool feedsKleePhase = false; const std::string& seedStorePath() const { return seedStore; } /** Writes KLEE's per-path vectors into the seed corpus. diff --git a/modules/frontend/map2check.cpp b/modules/frontend/map2check.cpp index db667b87d..a5ca1af3e 100644 --- a/modules/frontend/map2check.cpp +++ b/modules/frontend/map2check.cpp @@ -405,6 +405,8 @@ struct map2check_args { bool generateTestSuite = false; bool coverBranches = false; bool seedExchange = false; + // 1..3 on the hybrid path (fuzzer, KLEE, fuzzer), 0 for a single engine. + int phase = 0; bool sliceProgram = false; std::string testSuiteDir = "test-suite"; std::string propertyFile; @@ -414,6 +416,9 @@ struct map2check_args { }; bool foundViolation = false; +// Set when a phase proved the property (TRUE). Like a violation, a proof is +// the run's answer: no later phase may run and print a verdict after it. +bool provedSafe = false; // The seed store of the last phase, removed by main once every phase ran. static std::string lastSeedStore; @@ -482,6 +487,14 @@ int map2check_execution(map2check_args args) { generator); caller->c_program_fullpath = args.inputFile; caller->seedExchange = args.seedExchange; + // The store is named after the program's content, so one left by an earlier + // run (kept by --debug, or leaked by a kill) would feed that run's seeds into + // this one: every run starts from an empty store. + if (args.seedExchange && args.phase <= 1) { + std::error_code storeError; + std::filesystem::remove_all(caller->seedStorePath(), storeError); + } + caller->feedsKleePhase = (args.phase == 1); caller->sliceProgram = args.sliceProgram; caller->setTimeout(args.timeout); caller->entryFunction = args.entryFunction; @@ -668,6 +681,7 @@ int map2check_execution(map2check_args args) { } else { Map2Check::Log::Info(""); Map2Check::Log::Info("VERIFICATION SUCCEEDED"); + provedSafe = true; if (args.generateWitness) generate_witness(args.inputFile, propertyViolated, args.spectTrue); } @@ -979,14 +993,27 @@ z3 (Z3 is default), btor (Boolector), and yices2 (Yices))") // std::cout << pathfile << std::endl; fs::path absolute_path = fs::absolute(pathfile); args.inputFile = absolute_path.string(); + // The store outlives the phases, not the run: removed on every way out + // of this block (returns and exceptions alike), unless --debug keeps it. + struct SeedStoreCleanup { + const map2check_args &args; + ~SeedStoreCleanup() { + if (args.seedExchange && !args.debugMode && !lastSeedStore.empty()) { + std::error_code storeError; + std::filesystem::remove_all(lastSeedStore, storeError); + } + } + } seedStoreCleanup{args}; if(args.generator == Map2Check::NonDetGenerator::None) { args.generator = Map2Check::NonDetGenerator::AFLPlusPlus; + args.phase = 1; int result = map2check_execution(args); if (result != SUCCESS) { return result; } if (!foundViolation) { args.generator = Map2Check::NonDetGenerator::Klee; + args.phase = 2; result = map2check_execution(args); if (result != SUCCESS) { return result; @@ -1005,19 +1032,14 @@ z3 (Z3 is default), btor (Boolector), and yices2 (Yices))") // Behind the flag: the hybrid was measured at 45% covered over 372 // tasks in its current shape, and that number should keep meaning what // it means until this one is measured beside it. - if (args.seedExchange && !foundViolation) { + if (args.seedExchange && !foundViolation && !provedSafe) { args.generator = Map2Check::NonDetGenerator::AFLPlusPlus; + args.phase = 3; result = map2check_execution(args); if (result != SUCCESS) { return result; } } - // The store outlives the phases, not the run -- unless the run asked - // to keep its files. - if (args.seedExchange && !args.debugMode && !lastSeedStore.empty()) { - std::error_code storeError; - std::filesystem::remove_all(lastSeedStore, storeError); - } } else { int result = map2check_execution(args); diff --git a/modules/frontend/test_suite/ktest_reader.cpp b/modules/frontend/test_suite/ktest_reader.cpp index 9bbf55703..dc928dfb1 100644 --- a/modules/frontend/test_suite/ktest_reader.cpp +++ b/modules/frontend/test_suite/ktest_reader.cpp @@ -402,14 +402,17 @@ std::vector readNonDetLogAsObjects(const std::string& csvPath) { if (fields.size() < 7) continue; const std::string& value = fields[5]; + // KLEE matches a seed's objects to its inputs by POSITION: a read this + // cannot express (pchar, loff_t, sector_t, or a malformed row) ends the + // seed here. Skipping it shifted every later value onto the wrong input. int type = 0; try { type = std::stoi(fields[6]); } catch (const std::exception&) { - continue; + break; } const NonDetTypeInfo info = nonDetTypeInfo(type); - if (info.name == nullptr) continue; + if (info.name == nullptr) break; KtestObject object; object.name = info.name; diff --git a/tests/integration/test_testcomp_regressions.sh b/tests/integration/test_testcomp_regressions.sh index 52030c6db..1ee72ef13 100755 --- a/tests/integration/test_testcomp_regressions.sh +++ b/tests/integration/test_testcomp_regressions.sh @@ -889,8 +889,9 @@ fi # becomes a .ktest; KLEE starts from the whole set with --seed-dir. The old # channel read a log from a scratch directory that no longer existed and sent # at most one vector. -# A non-linear guard: CmpLog cannot map a*a back to input bytes, so the fuzzer -# phase ends without the bug and hands its corpus over; KLEE solves it. +# An unreachable guard (44522 is not a square), so no phase can end the hybrid +# early: the fuzzer phase always hands its corpus over and KLEE always runs +# with it -- the test cannot pass without exercising the channel. mkdir -p "$WORK/seed2" cat > "$WORK/seed2/square.c" <<'EOF' extern void __assert_fail(const char *, const char *, unsigned int, @@ -901,7 +902,7 @@ int main(void) { int a = __VERIFIER_nondet_int(); int b = __VERIFIER_nondet_int(); if (a > 100 && a < 300 && b > 0) { - if (a * a == 44521) { reach_error(); } + if (a * a == 44522) { reach_error(); } } return 0; } @@ -913,11 +914,18 @@ n_seeds=$(grep -aoE "Seeded KLEE with [0-9]+ vectors from AFL\+\+" "$WORK/seed2/ | grep -oE "[0-9]+" | head -1) if [ "${n_seeds:-0}" -gt 0 ] && grep -q -- "--seed-dir=" "$WORK/seed2/run.log"; then ok "the fuzzer corpus reaches KLEE ($n_seeds seeds via --seed-dir)" -elif ! grep -q "Executing Klee" "$WORK/seed2/run.log"; then - ok "fuzzer -> KLEE not exercised: the fuzzer solved seed.c on its own" else fail "fuzzer -> KLEE" "KLEE ran without seeds from the fuzzer" fi +# The program is safe and KLEE proves it: that proof is the run's answer. The +# third (fuzzer) phase is for runs nothing has decided yet; running it after a +# proof printed UNKNOWN last, and every harness reads the last verdict. +last_verdict=$(grep -aoE "VERIFICATION (FAILED|SUCCEEDED|UNKNOWN)" "$WORK/seed2/run.log" | tail -1) +if [ "$last_verdict" = "VERIFICATION SUCCEEDED" ]; then + ok "a proof from the KLEE phase stays the final verdict under --seed-exchange" +else + fail "exchange verdict" "KLEE proved the program safe but the run ended with [$last_verdict]" +fi # --- 27. replaying the corpus must not erase a violation the fuzzer found ---- mkdir -p "$WORK/seed3" @@ -941,6 +949,43 @@ else fail "seed replay" "the violation was lost with --seed-exchange" fi +# --- 28. the seed store starts clean, and the last phase replays nothing ---- +# The store's name is derived from the program's content, so a store left by +# an earlier run -- a --debug run keeps it on purpose, a killed one leaks it -- +# would feed its seeds into the next run of the same program: it is wiped at +# the start of a run. And the fuzzer's corpus is converted for KLEE only when a +# KLEE phase follows; after the last phase the replays would be pure cost. +mkdir -p "$WORK/seed4" +cat > "$WORK/seed4/safe.c" <<'EOF' +extern void __assert_fail(const char *, const char *, unsigned int, + const char *) __attribute__((__noreturn__)); +void reach_error(void) { __assert_fail("0", "safe.c", 3, "reach_error"); } +extern int __VERIFIER_nondet_int(void); +int main(void) { + int a = __VERIFIER_nondet_int(); + int b = __VERIFIER_nondet_int(); + if (a > 100 && b > a) { b = b - a; } + if (a != a) { reach_error(); } + return b; +} +EOF +( cd "$WORK/seed4" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 300 "$MAP2CHECK" \ + --target-function --target-function-name reach_error --seed-exchange \ + --debug --timeout 60 safe.c ) > "$WORK/seed4/first.log" 2>&1 +store4=$(ls -d "$WORK/seed4"/*.seeds 2>/dev/null | head -1) +[ -n "$store4" ] && mkdir -p "$store4/ktest" && echo stale > "$store4/ktest/stale-from-an-old-run.ktest" +rm -rf "$WORK/seed4"/*.map2check +( cd "$WORK/seed4" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 300 "$MAP2CHECK" \ + --target-function --target-function-name reach_error --seed-exchange \ + --debug --timeout 60 safe.c ) > "$WORK/seed4/run.log" 2>&1 +replays=$(grep -c "Seeded KLEE with" "$WORK/seed4/run.log") +if [ -n "$store4" ] && [ ! -e "$store4/ktest/stale-from-an-old-run.ktest" ] && \ + [ "$replays" -le 1 ] && ! grep -q "VERIFICATION FAILED" "$WORK/seed4/run.log"; then + ok "the seed store starts clean and only the first fuzzer phase feeds KLEE" +else + fail "seed store lifecycle" "stale seed kept, $replays conversions, or a safe program reported FALSE" +fi + echo " ---" echo " Results: $PASSED passed, $FAILED failed" [ "$FAILED" -eq 0 ] || exit 1 diff --git a/tests/unit/frontend/KtestReaderTest.cpp b/tests/unit/frontend/KtestReaderTest.cpp index e9c07f76f..bb62a533a 100644 --- a/tests/unit/frontend/KtestReaderTest.cpp +++ b/tests/unit/frontend/KtestReaderTest.cpp @@ -307,3 +307,21 @@ TEST(KleeHaltedOnTimer, AFinishedRunIsNotHalted) { EXPECT_FALSE(Map2Check::kleeHaltedOnTimer("/nonexistent/klee-last")); fs::remove_all(d); } + +// --- the nondet log as seeds ------------------------------------------------- + +// KLEE matches a seed's objects to its symbolic inputs by POSITION. A read the +// converter cannot express (a pchar, a loff_t) must end the seed there: skipping +// it shifted every later object onto the wrong input. +TEST(ReadNonDetLogAsObjects, StopsAtTheFirstUnsupportedRead) { + fs::path d = freshDir("nondetlog"); + std::ofstream(d / "klee_log.csv") + << "1;0;main;0;x;7;0\n" // int 7 + << "2;0;main;0;s;0;9\n" // pchar: unsupported + << "3;0;main;0;y;9;0\n"; // int 9, must not be taken + const auto objects = + Map2Check::readNonDetLogAsObjects((d / "klee_log.csv").string()); + ASSERT_EQ(objects.size(), 1u); + EXPECT_EQ(objects[0].name, "non_det_int"); + fs::remove_all(d); +} From 30966444f2bebec30cca298bf2369a42d45bc821 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Mon, 28 Sep 2026 22:45:34 -0400 Subject: [PATCH 07/88] docs(tacas): R15 -- Cover-Error sample, tacasv2 x v15 Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/tacas-experiment-log.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index adbed7c00..7ebd10870 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -286,3 +286,29 @@ classificador contava todo FALSE nelas como errado (corrigido: "any"). - **Leitura:** com o build final, o slicing de memória fica **34 × 33 corretos** e **1 × 2 TRUE errados** contra o controle nesta amostra — ligeiramente melhor, e sem nenhum erro novo atribuível à fatia. + +## R15 — amostra Test-Comp: tacasv2 (develop) × v15, Cover-Error (2026-09-28) + +- **Config:** build da `develop` depois do merge de #69/#68/#70/#71; `build_corpus.py + --property cover-error --per-category 20` (213 tarefas, **todas pareadas** com a + campanha v15 — amostragem aninhada), 300 s, TestCov 300 s, 3 shards por braço. + Controle = híbrido sem slice (tacasv1 + correções); slice = `--slice`. + +| braço | cobertas | TRUE errado | FALSE errado | tempo mediano | +|---|---|---|---|---| +| v15 controle | 111 | **27** | 0 | 43 s | +| v15 slice | 108 | 15 | 0 | — | +| **R15 controle** | **129** | **5** | 0 | **5 s** | +| R15 slice | 126 | 4 | 0 | 7 s | + +- **Controle × v15:** +18 cobertas (+16%); pares discordantes 20 × 2 (só R15 × só v15). + Por categoria (v15 → R15): ProductLines 14 → 20, Loops 13 → 16, Arrays 15 → 18, + ECA 2 → 5, Sequentialized 0 → 2; Heap 19 → 18 (única perda). +- **TRUE errado 27 → 5:** a correção "KLEE parado pelo timer não é prova" confirmada em + escala — a v15 respondia TRUE em 27 de 212 tarefas com bug. +- **Slice × controle:** 126 × 129 (pares discordantes 3 × 6) — empate técnico, leve + desvantagem. TRUE errado 4 × 5: o slice elimina 2 (`pals_lcr…`) e introduz 2 + (`float-benchs/cast_union_tight.c`, `loops/insertion_sort-1-2.c`); 4 ERROR (ECA, + ~330 s, sem suíte) só no slice. +- **Em aberto:** os 4–5 TRUE errados restantes (`seq-mthreaded/pals_*`, + `float-benchs/sin_interpolated_index-1.c`, e os 2 do slice) e os 4 ERROR do slice. From 14c850680dae0a8c1cc864820ad09a112f4fa83c Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Mon, 28 Sep 2026 23:21:34 -0400 Subject: [PATCH 08/88] docs(tacas): R15 -- Cover-Branches sample Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/tacas-experiment-log.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index 7ebd10870..15df112a9 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -312,3 +312,14 @@ classificador contava todo FALSE nelas como errado (corrigido: "any"). ~330 s, sem suíte) só no slice. - **Em aberto:** os 4–5 TRUE errados restantes (`seq-mthreaded/pals_*`, `float-benchs/sin_interpolated_index-1.c`, e os 2 do slice) e os 4 ERROR do slice. + +### R15 — Cover-Branches, controle × v15 (mesma rodada) + +- 120 tarefas (10 por categoria), todas pareadas com a v15; só o braço controle (o + slicing não atua em Cover-Branches). +- **Cobertura média: v15 48,0% × R15 47,7%** — neutra. Melhor em 6 tarefas, pior em 3, + igual em 111. Recursive 51,9 → 45,0% (a única queda relevante); XCSP 74,2 → 77,7%. +- Validação do TestCov mais limpa: VALIDATED 116 (v15: 107), VALIDATED_ABORTS 3 (v15: 10), + TESTCOV_ERROR 1 (v15: 3). Tempo mediano 183 × 195 s. +- **Leitura:** o AFL++ não muda a cobertura de ramos nesta amostra; o ganho da tacasv2 + está no Cover-Error. From 1eb8a30b91ff1055b1d7bf6eaa6a7394f82311b7 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 12:47:49 -0400 Subject: [PATCH 09/88] fix(verdict): the program's abort() prunes the path, it does not end the search In SV-COMP abort() is not an error; programs use it to discard a path, inline as well as through assume_abort_if_not (seq-mthreaded/pals_*: 'if(!(i2)) {abort();}'). KLEE runs with --exit-on-error-type=Abort, so the first path violating such an assumption halted the whole search with exit 0 and the run answered TRUE for a program with a reachable bug. Every wrong TRUE of the tacasv2 control arm in the R15 Cover-Error sample had this shape (pals_* and float-benchs/sin_interpolated_index-1). NonDetPass now rewrites the program's own abort() calls into map2check_assume(0), the same pruning assume_abort_if_not already gets. It runs before the runtime is linked, so the runtime's abort (a recorded violation) is untouched, and TargetPass still records reach_error before a following abort. Pre-existing (v15); unrelated to seeding, shipped with this round. Integration section 29. Co-Authored-By: Claude Opus 5.5 (1M context) --- modules/backend/pass/NonDetPass.cpp | 54 +++++++++++++++++++ .../integration/test_testcomp_regressions.sh | 53 ++++++++++++++++++ 2 files changed, 107 insertions(+) diff --git a/modules/backend/pass/NonDetPass.cpp b/modules/backend/pass/NonDetPass.cpp index 08dc2b6d0..4e8e397ea 100644 --- a/modules/backend/pass/NonDetPass.cpp +++ b/modules/backend/pass/NonDetPass.cpp @@ -100,6 +100,58 @@ bool rewriteAssumeToPrune(Function &F) { return true; } +/** Rewrites the program's own calls to abort() into path pruning. Returns how + * many it rewrote. + * + * In SV-COMP, abort() is not an error -- reach_error is the only one -- it is + * how a program discards a path, and the benchmarks write that assumption + * inline as well as through assume_abort_if_not: + * + * i2 = init(); + * if(!(i2)) {abort();} + * + * KLEE runs with --exit-on-error-type=Abort, so the first path violating such + * an assumption ended the whole search, with exit status 0, and the run + * answered TRUE for a program whose bug lay further on. Measured: every wrong + * TRUE of the tacasv2 control arm in the R15 Cover-Error sample (the + * seq-mthreaded/pals_* family and float-benchs/sin_interpolated_index-1). + * + * This runs on the user's module before the runtime is linked, so every abort + * here is the program's; the runtime's own abort (the one that signals a + * recorded violation) is never touched. A violation is still reported the same + * way: TargetPass instruments reach_error itself, so a `{reach_error(); + * abort();}` records the violation before the rewritten abort is reached. */ +unsigned rewriteAbortCallsToPrune(Function &F) { + std::vector aborts; + for (BasicBlock &block : F) { + for (Instruction &instruction : block) { + if (CallInst *call = dyn_cast(&instruction)) { + Function *callee = call->getCalledFunction(); + if (callee != nullptr && callee->getName() == "abort" && + call->arg_size() == 0) { + aborts.push_back(call); + } + } + } + } + if (aborts.empty()) return 0; + + LLVMContext &ctx = F.getContext(); + llvm::Type *int32 = llvm::Type::getInt32Ty(ctx); + llvm::FunctionCallee assume = F.getParent()->getOrInsertFunction( + "map2check_assume", llvm::Type::getVoidTy(ctx), int32); + for (CallInst *call : aborts) { + IRBuilder<> builder(call); + llvm::CallInst *pruned = + builder.CreateCall(assume, {llvm::ConstantInt::get(int32, 0)}); + pruned->setDebugLoc(call->getDebugLoc()); + call->eraseFromParent(); + } + llvm::errs() << "[map2check] rewrote " << aborts.size() << " abort() call(s)" + << " in " << F.getName() << " to prune the path\n"; + return aborts.size(); +} + } // namespace PreservedAnalyses NonDetPass::run(Function &F, @@ -110,6 +162,8 @@ PreservedAnalyses NonDetPass::run(Function &F, return PreservedAnalyses::none(); } + rewriteAbortCallsToPrune(F); + this->nonDetFunctions = make_unique(&F, &F.getContext()); bool initializedFunctionName = false; for (Function::iterator bb = F.begin(), e = F.end(); bb != e; ++bb) { diff --git a/tests/integration/test_testcomp_regressions.sh b/tests/integration/test_testcomp_regressions.sh index 1ee72ef13..190e144d4 100755 --- a/tests/integration/test_testcomp_regressions.sh +++ b/tests/integration/test_testcomp_regressions.sh @@ -986,6 +986,59 @@ else fail "seed store lifecycle" "stale seed kept, $replays conversions, or a safe program reported FALSE" fi +# --- 29. an inline "if (!c) abort();" is an assumption, not the end of search -- +# In SV-COMP abort() is not an error: it discards the path. The benchmarks use +# it inline (seq-mthreaded/pals_*: `if(!(i2)) {abort();}`), and KLEE runs with +# --exit-on-error-type=Abort, so the first path violating that assumption ended +# the WHOLE search with exit 0 -- and the run answered TRUE for a program with a +# reachable bug. Measured: every wrong TRUE of the tacasv2 control arm in R15. +mkdir -p "$WORK/abort" +cat > "$WORK/abort/inline.c" <<'EOF' +extern void __assert_fail(const char *, const char *, unsigned int, + const char *) __attribute__((__noreturn__)); +void reach_error(void) { __assert_fail("0", "inline.c", 3, "reach_error"); } +extern void abort(void); +extern int __VERIFIER_nondet_int(void); +int main(void) { + int x = __VERIFIER_nondet_int(); + if (!(x > 0)) { abort(); } + int y = __VERIFIER_nondet_int(); + if (y == x + 1) { ERROR: { reach_error(); abort(); } } + return 0; +} +EOF +( cd "$WORK/abort" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 200 "$MAP2CHECK" \ + --target-function --target-function-name reach_error --nondet-generator symex \ + --timeout 45 inline.c ) > "$WORK/abort/inline.log" 2>&1 +if grep -q "VERIFICATION FAILED" "$WORK/abort/inline.log"; then + ok "an inline abort() assumption prunes the path and the bug behind it is found" +else + fail "inline abort" "the bug after an inline abort() assumption was not found: $(grep -aoE 'VERIFICATION [A-Z]+' "$WORK/abort/inline.log" | tail -1)" +fi + +# The same shape with no reachable bug must not turn into a violation. +cat > "$WORK/abort/safe.c" <<'EOF' +extern void __assert_fail(const char *, const char *, unsigned int, + const char *) __attribute__((__noreturn__)); +void reach_error(void) { __assert_fail("0", "safe.c", 3, "reach_error"); } +extern void abort(void); +extern int __VERIFIER_nondet_int(void); +int main(void) { + int x = __VERIFIER_nondet_int(); + if (!(x > 0)) { abort(); } + if (x < 0) { ERROR: { reach_error(); abort(); } } + return 0; +} +EOF +( cd "$WORK/abort" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 200 "$MAP2CHECK" \ + --target-function --target-function-name reach_error --nondet-generator symex \ + --timeout 45 safe.c ) > "$WORK/abort/safe.log" 2>&1 +if grep -q "VERIFICATION FAILED" "$WORK/abort/safe.log"; then + fail "inline abort soundness" "a safe program with an inline abort() assumption was reported FALSE" +else + ok "an inline abort() assumption does not invent a violation" +fi + echo " ---" echo " Results: $PASSED passed, $FAILED failed" [ "$FAILED" -eq 0 ] || exit 1 From 3b156aa18c6b4f5d8593763e660c28ad037d2db9 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 12:57:43 -0400 Subject: [PATCH 10/88] docs(tacas): R18 partial and the 2026-09-29 handoff Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/2026-09-29-handoff-tacas.md | 158 +++++++++++++++++++++++ docs/reports/tacas-experiment-log.md | 14 ++ 2 files changed, 172 insertions(+) create mode 100644 docs/reports/2026-09-29-handoff-tacas.md diff --git a/docs/reports/2026-09-29-handoff-tacas.md b/docs/reports/2026-09-29-handoff-tacas.md new file mode 100644 index 000000000..9062ea8f1 --- /dev/null +++ b/docs/reports/2026-09-29-handoff-tacas.md @@ -0,0 +1,158 @@ +# Handoff TACAS — 2026-09-29 + +Ponto de partida para a próxima sessão (antes do auto-compact). Branch ativa: +**`feat/tacas-smart-seeds`** (local, **ainda não enviada**; HEAD `1eb8a30b9` + este doc). +Regras do usuário que continuam valendo: + +- **Nunca mergear** nada: sempre abrir PR, com base `develop`. +- Branches se chamam `feat/…`. **Não mexer no gatilho do `ci.yml`**. +- **Registrar cada mini-rodada** em `docs/reports/tacas-experiment-log.md` e comparar com + as anteriores, uma a uma. +- LibFuzzer está abandonado: o AFL++ é a evolução. +- Commits e PRs em inglês, docs e relatórios em pt-BR. + +--- + +## 1. O que está na branch (ainda não está em PR) + +| commit | conteúdo | +|---|---| +| `b66254631` | 3a: o corpus do fuzzer chega ao KLEE como sementes tipadas (`--seed-exchange`) | +| `3a89b4684` | revisão do 3a: replays limitados e condicionados à fase, store limpo, `provedSafe` | +| `30966444f`, `14c850680` | R15 no log (Cover-Error e Cover-Branches) | +| `1eb8a30b9` | **fix(verdict):** o `abort()` do programa vira `map2check_assume(0)` (NonDetPass `rewriteAbortCallsToPrune`) | + +A decisão do usuário foi mandar a correção do abort nesta mesma PR, descrita como correção +de bug. + +Estado dos testes: integração **39/39** (`tests/integration/test_testcomp_regressions.sh`), +ctest **11/11**. A seção 30, rascunhada em `scratchpad/t30.sh`, **não foi adicionada**: ela +cobre um `assert()` da libc (`__assert_fail`) que ainda chama abort *dentro da libc* e para +o KLEE com exit 0. Avaliar se isso ainda gera um TRUE errado; se gerar, tratar +`--exit-on-error-type=Abort` quando o abort não é a violação registrada. + +Specs e planos: `docs/superpowers/specs/2026-09-28-tacasv3a-smart-seeds-plumbing-design.md` +e `plans/2026-09-28-tacasv3a-smart-seeds-plumbing.md` (ledger em `.superpowers/sdd/`). + +## 2. Rodadas em andamento ou pendentes (dados fora do repo) + +Tudo fica em `/home/guilherme/github/prism/tacas-results/`: manifests `r15-*.tsv` e +`r18-*.tsv`, scripts `r1{5,6,8}-run.sh`, saídas `R1x-*`. + +Os contêineres são lançados de dentro do repo, com `D=../tacas-results`: + +``` +docker run -d --rm -u root --name -v $(pwd):/workspace -v $D:/scratch map2check-dev:aflpp \ + bash /scratch/rNN-run.sh /scratch/.tsv "" +``` + +A `EXTRA_FLAGS` usa `--seed-exchange` no braço seeds e `--slice` no braço slice. O +`rNN-run.sh` fixa `MAP2CHECK_PATH`: `build_seeds/install` na R16, `build_abort/install` na +R18. O harness é resumível pelo CSV. + +- **R18 (validação do abort):** o resultado parcial já está no log. + - O slice terminou. `cast_union_tight` foi resolvido. **`insertion_sort-1-2` continua + como TRUE errado.** + - O controle tinha 3 de 6 prontos. `pals_lcr` foi resolvido e o `floodmax` virou + UNKNOWN. **`sin_interpolated_index-1` continua como TRUE errado**, então a causa não é + abort inline. + - Falta: terminar o contêiner `r18-ctrl` e registrar as 3 tarefas restantes. +- **R16 (Cover-Error e Cover-Branches com `--seed-exchange`, `build_seeds`, sem o fix do + abort):** + - Contêineres `r16-ce-seeds-{0,1,2}` e `r16-cb-seeds-{0,1}`. + - No momento do handoff: CE 126/213 e CB 44/120. + - Parcial anterior: 58 cobertas contra 50 do controle R15 em 74 pares. + - Comparar com o controle da R15 e registrar no log. +- **Rodada limpa, a lançar:** como o fix do abort muda os dois braços, rodar **controle e + seeds, ambos com o build final** (reconstruir `build_abort` ou um `build_final`), na + amostra `r15-ce.tsv`/`r15-cb.tsv`. Isso isola o efeito das sementes. Registrar como R19. +- **R17, a lançar:** SV-COMP MemSafety e NoOverflows (±ReachSafety), com e sem + `--seed-exchange`. Usar `tests/memsafety/run_memsafety_evaluation.sh` com + `PROPERTY=memsafety|memcleanup|overflow` e `EXTRA_FLAGS`. +- **Depois disso:** push de `feat/tacas-smart-seeds` e PR para `develop` com o 3a, a + revisão, o `provedSafe`, o fix do abort e as rodadas R15–R19. A descrição deve trazer os + números. **Sem merge.** + +## 3. Próximas frentes (pedido do usuário: 2d, 3b, 3c, pendências antigas e o cronograma) + +Seguir o fluxo superpowers em cada frente: brainstorming → spec → plan → execução nativa +com ledger → revisão final por subagente opus → PR. Cada frente numa branch `feat/…` +própria, a partir de `feat/tacas-smart-seeds` enquanto a PR desta não for mergeada. + +### 2d — otimizações do slicing + +O slice ainda empata com o controle: 126 × 129 na R15. + +1. **Fatiar uma vez só no híbrido.** Hoje cada fase cria um Caller e refatia. O ideal é + guardar o `.bc` fatiado ao lado do store, no mesmo esquema de `seedStorePath`. +2. **Cutoff consertado:** `-cutoff-diverging` com o `exit(0)` recebendo `!dbg` e saída + silenciosa. Hoje ele fica desligado porque gera "Broken module" no KLEE. +3. **`opt -O2` depois do slice**, para limpar o código morto que o dg deixa. +4. **Avaliar os parâmetros do dg:** `--cda ntscd` e `--pta fs`. +5. **Corretude:** investigar o TRUE errado de `loops/insertion_sort-1-2.c`, que só + aparece no slice, e os **4 ERROR de ECA** (~330 s, sem suíte), que também só aparecem + com `--slice`. + +Métrica: amostra `r15-ce.tsv` com `--slice` contra o controle, com TRUE errado igual a 0 +como gate. Os critérios atuais ficam em `modules/frontend/` (slicer). Os testes estão em +`SlicerTest.cpp` e nas seções 13–25 da integração. + +### 3b — laço alternado com detecção de estagnação + +- **Hoje:** o esquema é fixo, AFL++ 0.2T → KLEE 0.6T → AFL++ 0.2T, com + `args.phase` em `map2check.cpp`. +- **Objetivo:** alternar as engines enquanto houver ganho. Troca de engine quando a + engine atual estagna, ou seja, não entra nada novo na queue do AFL, ou o KLEE não + cobre novos BBs por N segundos. +- **Reusar:** + - `feedsKleePhase`, que hoje só alimenta na fase 1 e precisa generalizar; + - `exportFuzzerCorpusAsKtests`; + - `exportKleeVectorsAsSeeds`; + - o store persistente. +- **Cuidados:** + - o teto de 5% do tempo para replay; + - `provedSafe` encerra tudo; + - a violação encontrada encerra tudo. + +### 3c — priorização de sementes + +- **Hoje:** `selectQueueEntries` pega as 64 primeiras por id (`kMaxSeedsFromFuzzer`). +- **Objetivo:** ranquear por novidade de cobertura, usando os BBs do + TrackBasicBlockPass ou o bitmap do AFL. Opcionalmente, pela distância/densidade no SDG + até o alvo, reusando o dg do slicing. +- Os testes unitários ficam em `SeedStoreTest.cpp`. + +### Pendências antigas de corretude + +- **MemoryTrackPass não instrumenta os intrínsecos do LLVM 16** (`llvm.memcpy/memset/memmove`). + O pass procura os nomes com tipos antigos (`p0i8`), então as cópias passam sem checagem. +- **Falso positivo do memtrack no busybox `sleep-3`**, na amostra NoOverflows/MemSafety. +- **A mensagem "did not build within Ns" é enganosa** quando o que houve foi um erro de + link do AFL. +- **Minors adiados** nos ledgers `.superpowers/sdd/*/progress.md`. +- **Worktree velho `../Map2Check-2c`** (`feat/tacas-slicing-overflow`, já mergeado): a + remoção precisa de `--force`. **Pedir permissão** antes. O worktree + `Map2Check-fuzzer-adaptive` está como prunable. + +### Atualizar `docs/migration-schedule.md` + +- O documento está defasado: o cronograma é de 01/jun/2026 a 30/mai/2027 e ainda traz as + métricas antigas. +- Refletir o que a linha TACAS já entregou: + - tacasv1 (AFL++ 4.40c com CmpLog); + - 2a/2b/2c (slicing por propriedade); + - as correções de veredito (HaltTimer, vetor vazio, abort); + - 3a (smart seeds). +- Registrar os números da R15 (Cover-Error: 129 contra 111 cobertas na v15, TRUE errado + 27 → 5, mediana 43 s → 5 s). +- Registrar como próximos marcos: 2d, 3b, 3c e a campanha completa sequencial depois do + merge. + +## 4. Builds úteis + +- **`build_abort/install`:** HEAD atual, com o fix do abort. +- **`build_seeds/install`:** 3a sem o fix do abort. +- **`build_v15`/`install_v15`:** referência v15. +- **Reconstrução:** dentro do `map2check-dev:aflpp`, rodar + `cmake .. -G Ninja -DLLVM_DIR=/usr/lib/llvm-16/lib/cmake/llvm -DCMAKE_INSTALL_PREFIX=/install`. + **Sempre fixar o prefixo**: um prefixo revertido já sobrescreveu `release/` uma vez. diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index 15df112a9..b9fe3f88d 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -323,3 +323,17 @@ classificador contava todo FALSE nelas como errado (corrigido: "any"). TESTCOV_ERROR 1 (v15: 3). Tempo mediano 183 × 195 s. - **Leitura:** o AFL++ não muda a cobertura de ramos nesta amostra; o ganho da tacasv2 está no Cover-Error. + +## R18 — validação da correção do abort() nos TRUE errados da R15 (2026-09-29, parcial) + +- **Config:** `build_abort` (commit 1eb8a30b9), 300 s, as tarefas com TRUE errado da R15: + 6 no braço controle (sem slice), 2 no braço slice (`--slice`). Manifests + `tacas-results/r18-{ctrl,slice}.tsv`. +- **Slice (completo):** `cast_union_tight` TRUE errado → **FAILED/COVERED** (1 s) — + era abort inline também, não defeito do slice. `insertion_sort-1-2` continua + **SUCCEEDED/NOT_COVERED** (3 s): causa diferente, a investigar (candidato: o slice). +- **Controle (3 de 6 no momento do registro):** `pals_lcr.4.1` → FAILED/COVERED (83 s); + `pals_floodmax.3.4` → UNKNOWN (256 s, deixou de ser TRUE errado); + `sin_interpolated_index-1` → **continua SUCCEEDED/NOT_COVERED** (59 s) — a hipótese + "abort inline" não explica este; investigar. +- **Pendente:** as 3 restantes do controle (`tacas-results/R18-cover-error-control_s0`). From 420658159073341a4fff51839414b25d2396768b Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 12:59:27 -0400 Subject: [PATCH 11/88] docs(tacas): R18 -- the abort fix clears 6 of 8 wrong TRUEs Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/2026-09-29-handoff-tacas.md | 2 +- docs/reports/tacas-experiment-log.md | 25 +++++++++++++++--------- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/docs/reports/2026-09-29-handoff-tacas.md b/docs/reports/2026-09-29-handoff-tacas.md index 9062ea8f1..6a4de6630 100644 --- a/docs/reports/2026-09-29-handoff-tacas.md +++ b/docs/reports/2026-09-29-handoff-tacas.md @@ -50,7 +50,7 @@ A `EXTRA_FLAGS` usa `--seed-exchange` no braço seeds e `--slice` no braço slic `rNN-run.sh` fixa `MAP2CHECK_PATH`: `build_seeds/install` na R16, `build_abort/install` na R18. O harness é resumível pelo CSV. -- **R18 (validação do abort):** o resultado parcial já está no log. +- **R18 (validação do abort): concluída** — 6 de 8 TRUE errados resolvidos; restam `sin_interpolated_index-1` (controle) e `insertion_sort-1-2` (slice). Ver log. - O slice terminou. `cast_union_tight` foi resolvido. **`insertion_sort-1-2` continua como TRUE errado.** - O controle tinha 3 de 6 prontos. `pals_lcr` foi resolvido e o `floodmax` virou diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index b9fe3f88d..b878ac1a7 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -324,16 +324,23 @@ classificador contava todo FALSE nelas como errado (corrigido: "any"). - **Leitura:** o AFL++ não muda a cobertura de ramos nesta amostra; o ganho da tacasv2 está no Cover-Error. -## R18 — validação da correção do abort() nos TRUE errados da R15 (2026-09-29, parcial) +## R18 — validação da correção do abort() nos TRUE errados da R15 (2026-09-29) - **Config:** `build_abort` (commit 1eb8a30b9), 300 s, as tarefas com TRUE errado da R15: 6 no braço controle (sem slice), 2 no braço slice (`--slice`). Manifests `tacas-results/r18-{ctrl,slice}.tsv`. -- **Slice (completo):** `cast_union_tight` TRUE errado → **FAILED/COVERED** (1 s) — - era abort inline também, não defeito do slice. `insertion_sort-1-2` continua - **SUCCEEDED/NOT_COVERED** (3 s): causa diferente, a investigar (candidato: o slice). -- **Controle (3 de 6 no momento do registro):** `pals_lcr.4.1` → FAILED/COVERED (83 s); - `pals_floodmax.3.4` → UNKNOWN (256 s, deixou de ser TRUE errado); - `sin_interpolated_index-1` → **continua SUCCEEDED/NOT_COVERED** (59 s) — a hipótese - "abort inline" não explica este; investigar. -- **Pendente:** as 3 restantes do controle (`tacas-results/R18-cover-error-control_s0`). + +| tarefa | braço | R15 | R18 | +|---|---|---|---| +| pals_lcr.4.1 | controle | TRUE errado | FAILED/COVERED (83 s) | +| pals_lcr-var-start-time.4.2 | controle | TRUE errado | FAILED/COVERED (175 s) | +| pals_STARTPALS_Triplicated.1 | controle | TRUE errado | FAILED/COVERED (9 s) | +| pals_floodmax.3.1 | controle | TRUE errado (R16) | FAILED/COVERED (24 s) | +| pals_floodmax.3.4 | controle | TRUE errado | UNKNOWN (256 s) | +| sin_interpolated_index-1 | controle | TRUE errado | **TRUE errado** (59 s) | +| cast_union_tight | slice | TRUE errado | FAILED/COVERED (1 s) | +| insertion_sort-1-2 | slice | TRUE errado | **TRUE errado** (3 s) | + +- **Leitura:** 6 de 8 TRUE errados eliminados (5 viraram FAILED coberto, 1 UNKNOWN). + `cast_union_tight` também era abort inline, não defeito do slice. Restam 2 com causa + diferente: `sin_interpolated_index-1` (controle) e `insertion_sort-1-2` (slice) — investigar. From 6fa1b248fc7b806b463e56bed0e50306c8195070 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 12:59:36 -0400 Subject: [PATCH 12/88] docs(tacas): drop the stale R18 partial from the handoff Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/2026-09-29-handoff-tacas.md | 6 ------ 1 file changed, 6 deletions(-) diff --git a/docs/reports/2026-09-29-handoff-tacas.md b/docs/reports/2026-09-29-handoff-tacas.md index 6a4de6630..1f88d7f5f 100644 --- a/docs/reports/2026-09-29-handoff-tacas.md +++ b/docs/reports/2026-09-29-handoff-tacas.md @@ -51,12 +51,6 @@ A `EXTRA_FLAGS` usa `--seed-exchange` no braço seeds e `--slice` no braço slic R18. O harness é resumível pelo CSV. - **R18 (validação do abort): concluída** — 6 de 8 TRUE errados resolvidos; restam `sin_interpolated_index-1` (controle) e `insertion_sort-1-2` (slice). Ver log. - - O slice terminou. `cast_union_tight` foi resolvido. **`insertion_sort-1-2` continua - como TRUE errado.** - - O controle tinha 3 de 6 prontos. `pals_lcr` foi resolvido e o `floodmax` virou - UNKNOWN. **`sin_interpolated_index-1` continua como TRUE errado**, então a causa não é - abort inline. - - Falta: terminar o contêiner `r18-ctrl` e registrar as 3 tarefas restantes. - **R16 (Cover-Error e Cover-Branches com `--seed-exchange`, `build_seeds`, sem o fix do abort):** - Contêineres `r16-ce-seeds-{0,1,2}` e `r16-cb-seeds-{0,1}`. From 4c16013bc2755e134bd1152899f0f384895f408a Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 13:56:11 -0400 Subject: [PATCH 13/88] fix(verdict): KLEE finishing after dropping paths is not a proof KLEE exits 0 whenever its state queue empties, and the frontend read that as an exhaustive exploration. It is not one when KLEE concretized a symbolic input (a nondet double pinned to 0: float-benchs/sin_interpolated_index-1 answered TRUE) or killed states with its own errors (a VLA of symbolic size: loops/insertion_sort-1-2 under --slice answered TRUE). kleeDroppedPaths() generalizes the HaltTimer check to both; such a run is a timeout. Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/tacas-experiment-log.md | 24 +++++++++++ modules/frontend/caller.cpp | 16 ++++---- modules/frontend/test_suite/ktest_reader.cpp | 25 ++++++++++++ modules/frontend/test_suite/ktest_reader.hpp | 13 ++++++ .../integration/test_testcomp_regressions.sh | 26 ++++++++++++ tests/unit/frontend/KtestReaderTest.cpp | 40 +++++++++++++++++++ 6 files changed, 137 insertions(+), 7 deletions(-) diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index b878ac1a7..d90e3f72f 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -344,3 +344,27 @@ classificador contava todo FALSE nelas como errado (corrigido: "any"). - **Leitura:** 6 de 8 TRUE errados eliminados (5 viraram FAILED coberto, 1 UNKNOWN). `cast_union_tight` também era abort inline, não defeito do slice. Restam 2 com causa diferente: `sin_interpolated_index-1` (controle) e `insertion_sort-1-2` (slice) — investigar. + +### R18 — causa dos 2 TRUE errados restantes (2026-09-29) + +Reproduzidos à mão (`build_abort`, 300 s). **Causa comum:** o KLEE sai com 0 quando a fila +esvazia, e o frontend lia isso como exploração completa — mas nos dois casos ele tinha +**descartado caminhos**: + +- `sin_interpolated_index-1` (controle): `silently concretizing (reason: floating point) + expression (ReadLSB w64 0 non_det_double) to value 0` — o KLEE 3.1 não tem double + simbólico; 1 caminho, "completo", TRUE. +- `insertion_sort-1-2` (slice): o VLA `int v[SIZE]` gerou `concretized symbolic size` e + `null page access` — 2 estados mortos por erros do próprio KLEE (`partially completed + paths = 2` no `info`), TRUE. + +**Correção:** `kleeDroppedPaths()` generaliza o `kleeHaltedOnTimer`: HaltTimer, qualquer +"silently concretizing" em `warnings.txt`, ou `partially completed paths > 0` → a execução +é tratada como timeout (violação registrada vale; senão UNKNOWN). Revalidação: `sin` → +**FAILED** (sem a falsa prova, a fase 3 do AFL++ roda e acha o 180.0), `insertion_sort` +--slice → **UNKNOWN**. Integração 40/40 (§30 nova: double concretizado; vermelha no +`build_seeds`, verde no novo). Uma §31 (abort dentro do `assert` da libc) foi descartada: +passava também no binário antigo — esse caminho não gera TRUE errado. + +**Custo esperado:** programas com float/VLA que o KLEE "provava" passam a UNKNOWN. Medir +TRUE corretos no SV-COMP (R17) — é o preço da solidez. diff --git a/modules/frontend/caller.cpp b/modules/frontend/caller.cpp index 060ef027e..2b5264ec8 100644 --- a/modules/frontend/caller.cpp +++ b/modules/frontend/caller.cpp @@ -934,15 +934,17 @@ void Caller::executeAnalysis(std::string solvername) { Map2Check::Log::Warning("Exited klee with " + std::to_string(result)); if (result == 31744) // Timeout gotTimeout = true; - // KLEE stopping on its own --max-time exits 0, like a run that explored - // every path, but it proves nothing. Treated as the timeout it is: a + // KLEE exits 0 when its queue empties, like a run that explored every + // path -- also after its timer, a concretized input or states it killed + // itself. None of those proves anything. Treated as the timeout it is: a // violation already recorded is kept, anything else is UNKNOWN -- never // the TRUE a short path's NONE in the property file would otherwise make - // it (a reachable null dereference came back TRUE). - if (Map2Check::kleeHaltedOnTimer(Map2Check::kleeOutputDir)) { - Map2Check::Log::Warning( - "KLEE halted on its timer with states left -- not a complete " - "exploration"); + // it (a reachable null dereference, a float bug, came back TRUE). + const std::string dropped = + Map2Check::kleeDroppedPaths(Map2Check::kleeOutputDir); + if (!dropped.empty()) { + Map2Check::Log::Warning("KLEE " + dropped + + " -- not a complete exploration"); gotTimeout = true; } diff --git a/modules/frontend/test_suite/ktest_reader.cpp b/modules/frontend/test_suite/ktest_reader.cpp index dc928dfb1..85248322f 100644 --- a/modules/frontend/test_suite/ktest_reader.cpp +++ b/modules/frontend/test_suite/ktest_reader.cpp @@ -9,6 +9,7 @@ #include "ktest_reader.hpp" #include +#include #include #include #include @@ -318,6 +319,30 @@ bool kleeHaltedOnTimer(const std::string& kleeOutDir) { return false; } +std::string kleeDroppedPaths(const std::string& kleeOutDir) { + if (kleeHaltedOnTimer(kleeOutDir)) return "halted on its timer"; + + const std::filesystem::path dir(kleeOutDir); + std::string line; + std::ifstream warnings((dir / "warnings.txt").string()); + while (std::getline(warnings, line)) { + if (line.find("silently concretizing") != std::string::npos) { + return "concretized a symbolic value"; + } + } + + static const std::string kPartial = "partially completed paths = "; + std::ifstream info((dir / "info").string()); + while (std::getline(info, line)) { + const size_t at = line.find(kPartial); + if (at == std::string::npos) continue; + if (std::strtoul(line.c_str() + at + kPartial.size(), nullptr, 10) > 0) { + return "terminated states early"; + } + } + return ""; +} + std::vector> readKtestVectors( const std::string& kleeOutDir, size_t limit) { std::vector> vectors; diff --git a/modules/frontend/test_suite/ktest_reader.hpp b/modules/frontend/test_suite/ktest_reader.hpp index f9d18febb..62f390859 100644 --- a/modules/frontend/test_suite/ktest_reader.hpp +++ b/modules/frontend/test_suite/ktest_reader.hpp @@ -87,6 +87,19 @@ bool hasViolatingKtest(const std::string& kleeOutDir); * NONE to the property file made a reachable null dereference read as TRUE. */ bool kleeHaltedOnTimer(const std::string& kleeOutDir); +/** Why KLEE's exploration was not exhaustive, or empty if it was. + * + * KLEE exits 0 whenever its state queue empties, and that is a proof only if + * no path was dropped on the way. Three ways to drop them, all exit 0: + * - the HaltTimer (see kleeHaltedOnTimer); + * - a symbolic input concretized ("silently concretizing" in warnings.txt): + * a nondet double pinned to 0 left one path and answered TRUE + * (float-benchs/sin_interpolated_index-1); + * - states KLEE killed with its own errors or early exits ("partially + * completed paths" > 0 in info): a VLA of symbolic size did that in + * loops/insertion_sort-1-2, also answered TRUE. */ +std::string kleeDroppedPaths(const std::string& kleeOutDir); + /** Every input vector KLEE recorded under `kleeOutDir`, one per .ktest. * * Ordered by file name, which is KLEE's own path numbering: stable across diff --git a/tests/integration/test_testcomp_regressions.sh b/tests/integration/test_testcomp_regressions.sh index 190e144d4..5eefc6fce 100755 --- a/tests/integration/test_testcomp_regressions.sh +++ b/tests/integration/test_testcomp_regressions.sh @@ -1039,6 +1039,32 @@ else ok "an inline abort() assumption does not invent a violation" fi +# --- 30. KLEE finishing after dropping paths is not a proof ----------------- +# KLEE exits 0 whenever its queue empties -- also after pinning a symbolic +# double to 0 ("silently concretizing (reason: floating point)"): one path, +# explored "completely", and float-benchs/sin_interpolated_index-1 came back +# TRUE with a reachable bug. +mkdir -p "$WORK/dropped" +cat > "$WORK/dropped/float.c" <<'EOF2' +extern void __assert_fail(const char *, const char *, unsigned int, + const char *) __attribute__((__noreturn__)); +void reach_error(void) { __assert_fail("0", "float.c", 3, "reach_error"); } +extern double __VERIFIER_nondet_double(void); +int main(void) { + double x = __VERIFIER_nondet_double(); + if (x > 179.5 && x < 180.5) { reach_error(); } + return 0; +} +EOF2 +( cd "$WORK/dropped" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 200 "$MAP2CHECK" \ + --target-function --target-function-name reach_error --nondet-generator symex \ + --timeout 45 float.c ) > "$WORK/dropped/float.log" 2>&1 +if grep -q "VERIFICATION SUCCEEDED" "$WORK/dropped/float.log"; then + fail "concretized verdict" "TRUE after KLEE concretized the symbolic double" +else + ok "a KLEE run that concretized an input is not reported TRUE" +fi + echo " ---" echo " Results: $PASSED passed, $FAILED failed" [ "$FAILED" -eq 0 ] || exit 1 diff --git a/tests/unit/frontend/KtestReaderTest.cpp b/tests/unit/frontend/KtestReaderTest.cpp index bb62a533a..2920a3abe 100644 --- a/tests/unit/frontend/KtestReaderTest.cpp +++ b/tests/unit/frontend/KtestReaderTest.cpp @@ -308,6 +308,46 @@ TEST(KleeHaltedOnTimer, AFinishedRunIsNotHalted) { fs::remove_all(d); } +// KLEE also exits 0 after dropping paths without running out of them: a +// symbolic double concretized to 0 (float-benchs/sin_interpolated_index-1: one +// path, answered TRUE), or states killed by its own errors (a VLA of symbolic +// size in loops/insertion_sort-1-2: "partially completed paths = 2", TRUE). +TEST(KleeDroppedPaths, ConcretizingAnInputDropsPaths) { + fs::path d = freshDir("concretized"); + std::ofstream(d / "warnings.txt") + << "KLEE: WARNING ONCE: silently concretizing (reason: floating point) " + "expression (ReadLSB w64 0 non_det_double) to value 0 (x.c:155)\n"; + std::ofstream(d / "info") << "KLEE: done: partially completed paths = 0\n"; + EXPECT_FALSE(Map2Check::kleeDroppedPaths(d.string()).empty()); + fs::remove_all(d); +} + +TEST(KleeDroppedPaths, StatesKilledEarlyDropPaths) { + fs::path d = freshDir("partial"); + std::ofstream(d / "info") << "KLEE: done: completed paths = 2\n" + "KLEE: done: partially completed paths = 2\n"; + EXPECT_FALSE(Map2Check::kleeDroppedPaths(d.string()).empty()); + fs::remove_all(d); +} + +TEST(KleeDroppedPaths, TheHaltTimerDropsPaths) { + fs::path d = freshDir("halted"); + std::ofstream(d / "messages.txt") << "KLEE: HaltTimer invoked\n"; + EXPECT_FALSE(Map2Check::kleeDroppedPaths(d.string()).empty()); + fs::remove_all(d); +} + +TEST(KleeDroppedPaths, AnExhaustedRunDropsNothing) { + fs::path d = freshDir("exhausted"); + std::ofstream(d / "warnings.txt") + << "KLEE: WARNING ONCE: calling external: close(12)\n"; + std::ofstream(d / "info") << "KLEE: done: completed paths = 7\n" + "KLEE: done: partially completed paths = 0\n"; + std::ofstream(d / "messages.txt") << "KLEE: output directory is \"x\"\n"; + EXPECT_TRUE(Map2Check::kleeDroppedPaths(d.string()).empty()); + fs::remove_all(d); +} + // --- the nondet log as seeds ------------------------------------------------- // KLEE matches a seed's objects to its symbolic inputs by POSITION. A read the From 0e6e015c301709c62f46809ee5a49ba8bf2ee5c8 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 14:04:35 -0400 Subject: [PATCH 14/88] docs(tacas): R16 -- the seed exchange covers 148 vs 129 Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/tacas-experiment-log.md | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index d90e3f72f..0222248df 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -368,3 +368,26 @@ passava também no binário antigo — esse caminho não gera TRUE errado. **Custo esperado:** programas com float/VLA que o KLEE "provava" passam a UNKNOWN. Medir TRUE corretos no SV-COMP (R17) — é o preço da solidez. + +## R16 — `--seed-exchange` (3a) × controle R15, Cover-Error (2026-09-29) + +- **Config:** `build_seeds` (3a + revisão, **sem** as correções do abort e dos caminhos + descartados — mesma base de veredito que o controle R15), `--seed-exchange`, amostra + `r15-ce.tsv` (213, todas pareadas), 300 s, 3 shards. + +| braço | cobertas | TRUE errado | ERROR | tempo mediano | +|---|---|---|---|---| +| R15 controle | 129 | 5 | 0 | 5 s | +| **R16 seeds** | **148** | 7 | 0 | 6 s | + +- **+19 cobertas (+15%)**, pares discordantes **21 × 2**. Por categoria (controle → seeds): + Sequentialized 2 → 8, XCSP 7 → 13, ECA 5 → 8, Recursive 7 → 9, ControlFlow 3 → 4, + BitVectors 7 → 8; as demais iguais. Perdas: 2 ECA (`Problem13_label54`, + `Problem10_label12`). +- **TRUE errado 7:** todos da família `pals_*` (abort inline) e `sin_interpolated_index-1` + (double concretizado) — os dois defeitos que esta branch já corrige (1eb8a30b9, + 4c16013bc). O braço seeds expõe mais deles porque a fase 3 do AFL++ não roda depois de + uma "prova" do KLEE. +- **Leitura:** a troca de sementes é o maior ganho medido na linha TACAS até aqui. A + rodada limpa (R19, build final nos dois braços) confirma sem os TRUE errados. +- Cover-Branches do R16 ainda rodando. From 7c6f892f9d6840243c4efce1943def31d8ec41f4 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 14:34:22 -0400 Subject: [PATCH 15/88] fix(verdict): a path an assumption pruned is not a dropped path kleeDroppedPaths read KLEE's 'partially completed paths', which counts the paths an assumption pruned as well: klee_assume(0) on an already-false path is a KLEE user error, and even klee_silent_exit counts as partial. No program with an assume_abort_if_not or an inline abort could be proved any more -- the section 29 safe program went from TRUE to UNKNOWN. nondet_assume (KLEE) now prunes with klee_silent_exit, which leaves no test behind, and a dropped path is read from what a killed state does leave: any *.err or *.early test, besides the HaltTimer and a concretized input. Section 29 now requires the safe program to be proved. Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/tacas-experiment-log.md | 26 +++++++++++++++-- .../backend/library/lib/NonDetGeneratorKlee.c | 10 ++++++- modules/frontend/test_suite/ktest_reader.cpp | 24 ++++++++++------ modules/frontend/test_suite/ktest_reader.hpp | 8 ++++-- .../integration/test_testcomp_regressions.sh | 8 ++++-- tests/unit/frontend/KtestReaderTest.cpp | 28 ++++++++++++++++--- 6 files changed, 82 insertions(+), 22 deletions(-) diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index 0222248df..220acf8d5 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -360,9 +360,9 @@ esvazia, e o frontend lia isso como exploração completa — mas nos dois casos **Correção:** `kleeDroppedPaths()` generaliza o `kleeHaltedOnTimer`: HaltTimer, qualquer "silently concretizing" em `warnings.txt`, ou `partially completed paths > 0` → a execução -é tratada como timeout (violação registrada vale; senão UNKNOWN). Revalidação: `sin` → -**FAILED** (sem a falsa prova, a fase 3 do AFL++ roda e acha o 180.0), `insertion_sort` ---slice → **UNKNOWN**. Integração 40/40 (§30 nova: double concretizado; vermelha no +é tratada como timeout (violação registrada vale; senão UNKNOWN). Revalidação: `sin` → **FAILED** numa execução e UNKNOWN noutra (o AFL++ da fase 1 acha ou +não o 180.0; sem `--seed-exchange` não há fase 3 — a frase anterior dizia o contrário e +estava errada), `insertion_sort` --slice → **UNKNOWN**. Nunca TRUE. Integração 40/40 (§30 nova: double concretizado; vermelha no `build_seeds`, verde no novo). Uma §31 (abort dentro do `assert` da libc) foi descartada: passava também no binário antigo — esse caminho não gera TRUE errado. @@ -391,3 +391,23 @@ TRUE corretos no SV-COMP (R17) — é o preço da solidez. - **Leitura:** a troca de sementes é o maior ganho medido na linha TACAS até aqui. A rodada limpa (R19, build final nos dois braços) confirma sem os TRUE errados. - Cover-Branches do R16 ainda rodando. + +### Correção da correção — poda por assunção não é caminho descartado (2026-09-29) + +A primeira versão do `kleeDroppedPaths` lia `partially completed paths > 0` no `info`. Esse +contador inclui os caminhos **podados por assunção**: `klee_assume(0)` num caminho já falso +é um erro do KLEE (`user.err`, "invalid klee_assume call (provably false)"), e até +`klee_silent_exit` conta como parcial (medido num programa mínimo: os dois dão +`partially completed paths = 1`). Resultado: **nenhum programa com `assume_abort_if_not` +ou abort inline podia mais ser provado** — o §29 `safe.c` ia de TRUE para UNKNOWN. + +Correção: `nondet_assume` (KLEE) poda com `klee_silent_exit(0)`, que não deixa arquivo; e +os caminhos descartados passam a ser lidos pelo que cada estado morto deixa no disco — +qualquer `*.err` ou `*.early` —, além do HaltTimer e do "silently concretizing". O §29 +agora exige TRUE. `sin` e `insertion_sort` seguem sem TRUE errado (UNKNOWN; o segundo por +`ptr.err`). + +**Efeito na R19:** o `install_r19` tem a versão com o contador. Em Test-Comp isso não muda +a cobertura (o veredito não pontua), só impede o `provedSafe` de encerrar a execução mais +cedo em programas com assunções. A R17 (SV-COMP, onde TRUE pontua) precisa do build +corrigido. diff --git a/modules/backend/library/lib/NonDetGeneratorKlee.c b/modules/backend/library/lib/NonDetGeneratorKlee.c index 74bb6b721..be9c215b3 100644 --- a/modules/backend/library/lib/NonDetGeneratorKlee.c +++ b/modules/backend/library/lib/NonDetGeneratorKlee.c @@ -23,7 +23,15 @@ void nondet_generate_aux_witness_files() { extern void klee_assume(int); -void nondet_assume(int expr) { klee_assume(expr); } +/* A failed assumption ends the path silently. klee_assume(0) on a path where + * the condition is already false is a KLEE error ("invalid klee_assume call + * (provably false)", a user.err), and the frontend must read every KLEE error + * as a dropped path -- which made every program with an assume_abort_if_not + * unprovable. klee_silent_exit leaves no test and no error. */ +extern void klee_silent_exit(int status); +void nondet_assume(int expr) { + if (!expr) klee_silent_exit(0); +} extern void klee_make_symbolic(void *addr, size_t nbytes, const char *name); diff --git a/modules/frontend/test_suite/ktest_reader.cpp b/modules/frontend/test_suite/ktest_reader.cpp index 85248322f..1cac4cdca 100644 --- a/modules/frontend/test_suite/ktest_reader.cpp +++ b/modules/frontend/test_suite/ktest_reader.cpp @@ -9,7 +9,6 @@ #include "ktest_reader.hpp" #include -#include #include #include #include @@ -331,13 +330,22 @@ std::string kleeDroppedPaths(const std::string& kleeOutDir) { } } - static const std::string kPartial = "partially completed paths = "; - std::ifstream info((dir / "info").string()); - while (std::getline(info, line)) { - const size_t at = line.find(kPartial); - if (at == std::string::npos) continue; - if (std::strtoul(line.c_str() + at + kPartial.size(), nullptr, 10) > 0) { - return "terminated states early"; + // A state KLEE killed leaves a test with the reason: ..err for + // an error (a model limit, a memory error, an abort that halted the search), + // .early for an early termination (memory cap, depth, ...). Not + // "partially completed paths" in info: that counts the paths an assumption + // pruned too, and read that way no program with an assume_abort_if_not + // could ever be proved. + std::error_code error; + for (const auto& entry : std::filesystem::directory_iterator(dir, error)) { + const std::string name = entry.path().filename().string(); + auto endsWith = [&name](const std::string& suffix) { + return name.size() > suffix.size() && + name.compare(name.size() - suffix.size(), suffix.size(), + suffix) == 0; + }; + if (endsWith(".err") || endsWith(".early")) { + return "terminated states early (" + name + ")"; } } return ""; diff --git a/modules/frontend/test_suite/ktest_reader.hpp b/modules/frontend/test_suite/ktest_reader.hpp index 62f390859..39980e33d 100644 --- a/modules/frontend/test_suite/ktest_reader.hpp +++ b/modules/frontend/test_suite/ktest_reader.hpp @@ -95,9 +95,11 @@ bool kleeHaltedOnTimer(const std::string& kleeOutDir); * - a symbolic input concretized ("silently concretizing" in warnings.txt): * a nondet double pinned to 0 left one path and answered TRUE * (float-benchs/sin_interpolated_index-1); - * - states KLEE killed with its own errors or early exits ("partially - * completed paths" > 0 in info): a VLA of symbolic size did that in - * loops/insertion_sort-1-2, also answered TRUE. */ + * - states KLEE killed with its own errors or early exits (a *.err or + * *.early test): a VLA of symbolic size did that in + * loops/insertion_sort-1-2, also answered TRUE. + * A path pruned by an assumption is none of these: it ends in + * klee_silent_exit and leaves no file. */ std::string kleeDroppedPaths(const std::string& kleeOutDir); /** Every input vector KLEE recorded under `kleeOutDir`, one per .ktest. diff --git a/tests/integration/test_testcomp_regressions.sh b/tests/integration/test_testcomp_regressions.sh index 5eefc6fce..733c28f96 100755 --- a/tests/integration/test_testcomp_regressions.sh +++ b/tests/integration/test_testcomp_regressions.sh @@ -1033,10 +1033,12 @@ EOF ( cd "$WORK/abort" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 200 "$MAP2CHECK" \ --target-function --target-function-name reach_error --nondet-generator symex \ --timeout 45 safe.c ) > "$WORK/abort/safe.log" 2>&1 -if grep -q "VERIFICATION FAILED" "$WORK/abort/safe.log"; then - fail "inline abort soundness" "a safe program with an inline abort() assumption was reported FALSE" +# And it is still provable: the pruned path is not a dropped one. Reading +# KLEE's "partially completed paths" as dropped paths turned this into UNKNOWN. +if grep -q "VERIFICATION SUCCEEDED" "$WORK/abort/safe.log"; then + ok "an inline abort() assumption does not invent a violation, and is provable" else - ok "an inline abort() assumption does not invent a violation" + fail "inline abort soundness" "a safe program with an inline abort() assumption: $(grep -aoE 'VERIFICATION [A-Z]+' "$WORK/abort/safe.log" | tail -1), expected SUCCEEDED" fi # --- 30. KLEE finishing after dropping paths is not a proof ----------------- diff --git a/tests/unit/frontend/KtestReaderTest.cpp b/tests/unit/frontend/KtestReaderTest.cpp index 2920a3abe..4da9a6f81 100644 --- a/tests/unit/frontend/KtestReaderTest.cpp +++ b/tests/unit/frontend/KtestReaderTest.cpp @@ -322,14 +322,34 @@ TEST(KleeDroppedPaths, ConcretizingAnInputDropsPaths) { fs::remove_all(d); } -TEST(KleeDroppedPaths, StatesKilledEarlyDropPaths) { - fs::path d = freshDir("partial"); - std::ofstream(d / "info") << "KLEE: done: completed paths = 2\n" - "KLEE: done: partially completed paths = 2\n"; +TEST(KleeDroppedPaths, AStateKilledByAnErrorDropsPaths) { + fs::path d = freshDir("killed"); + std::ofstream(d / "test000001.ktest") << ""; + std::ofstream(d / "test000001.model.err") << "Error: concretized symbolic size\n"; EXPECT_FALSE(Map2Check::kleeDroppedPaths(d.string()).empty()); fs::remove_all(d); } +TEST(KleeDroppedPaths, AStateTerminatedEarlyDropsPaths) { + fs::path d = freshDir("early"); + std::ofstream(d / "test000002.early") << "Memory limit exceeded\n"; + EXPECT_FALSE(Map2Check::kleeDroppedPaths(d.string()).empty()); + fs::remove_all(d); +} + +// A path pruned by an assumption is not a dropped path, and KLEE counts it +// among the "partially completed" all the same (klee_silent_exit and a failed +// klee_assume alike). Reading that counter made every program with an +// assume_abort_if_not unprovable: TRUE became UNKNOWN. +TEST(KleeDroppedPaths, AnAssumptionPrunedPathDropsNothing) { + fs::path d = freshDir("pruned"); + std::ofstream(d / "info") << "KLEE: done: completed paths = 1\n" + "KLEE: done: partially completed paths = 1\n"; + std::ofstream(d / "test000001.ktest") << ""; + EXPECT_TRUE(Map2Check::kleeDroppedPaths(d.string()).empty()); + fs::remove_all(d); +} + TEST(KleeDroppedPaths, TheHaltTimerDropsPaths) { fs::path d = freshDir("halted"); std::ofstream(d / "messages.txt") << "KLEE: HaltTimer invoked\n"; From 09d80662b83d4ac9a9cafa56c210c78ab0f3101f Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 14:42:32 -0400 Subject: [PATCH 16/88] fix(verdict): a KLEE that died, or hit its memory cap, proved nothing Two more ways KLEE ends without having explored every path, from the review of the dropped-paths check: a KLEE that crashed (solver, LLVM assertion, the OOM killer) writes no "done" lines and no .err while the paths it did finish may have written NONE; and near --max-memory it stops forking ("skipping fork") or kills states ("over memory cap") and can still exit 0. Co-Authored-By: Claude Opus 5.5 (1M context) --- modules/frontend/test_suite/ktest_reader.cpp | 20 ++++++++++++++++++ modules/frontend/test_suite/ktest_reader.hpp | 2 ++ tests/unit/frontend/KtestReaderTest.cpp | 22 ++++++++++++++++++++ 3 files changed, 44 insertions(+) diff --git a/modules/frontend/test_suite/ktest_reader.cpp b/modules/frontend/test_suite/ktest_reader.cpp index 1cac4cdca..e9c80c233 100644 --- a/modules/frontend/test_suite/ktest_reader.cpp +++ b/modules/frontend/test_suite/ktest_reader.cpp @@ -328,7 +328,27 @@ std::string kleeDroppedPaths(const std::string& kleeOutDir) { if (line.find("silently concretizing") != std::string::npos) { return "concretized a symbolic value"; } + // Near --max-memory KLEE stops forking and follows one side of each + // branch at random, or kills states outright; either way it can still + // empty its queue and exit 0. + if (line.find("skipping fork") != std::string::npos || + line.find("over memory cap") != std::string::npos) { + return "hit its memory cap"; + } + } + + // KLEE that died (a solver crash, an LLVM assertion, the OOM killer) writes + // none of the marks below and no "done" lines -- while the paths it did + // finish may have written NONE to the property file. + bool finished = false; + std::ifstream info((dir / "info").string()); + while (std::getline(info, line)) { + if (line.find("KLEE: done: completed paths") != std::string::npos) { + finished = true; + break; + } } + if (!finished) return "did not finish its run"; // A state KLEE killed leaves a test with the reason: ..err for // an error (a model limit, a memory error, an abort that halted the search), diff --git a/modules/frontend/test_suite/ktest_reader.hpp b/modules/frontend/test_suite/ktest_reader.hpp index 39980e33d..f6ee77099 100644 --- a/modules/frontend/test_suite/ktest_reader.hpp +++ b/modules/frontend/test_suite/ktest_reader.hpp @@ -98,6 +98,8 @@ bool kleeHaltedOnTimer(const std::string& kleeOutDir); * - states KLEE killed with its own errors or early exits (a *.err or * *.early test): a VLA of symbolic size did that in * loops/insertion_sort-1-2, also answered TRUE. + * Also: KLEE hitting its memory cap ("skipping fork", "over memory cap"), and + * a KLEE that never finished (no "done: completed paths" in info -- a crash). * A path pruned by an assumption is none of these: it ends in * klee_silent_exit and leaves no file. */ std::string kleeDroppedPaths(const std::string& kleeOutDir); diff --git a/tests/unit/frontend/KtestReaderTest.cpp b/tests/unit/frontend/KtestReaderTest.cpp index 4da9a6f81..afc7bac46 100644 --- a/tests/unit/frontend/KtestReaderTest.cpp +++ b/tests/unit/frontend/KtestReaderTest.cpp @@ -337,6 +337,28 @@ TEST(KleeDroppedPaths, AStateTerminatedEarlyDropsPaths) { fs::remove_all(d); } +// KLEE that died -- a solver crash, an LLVM assertion, the OOM killer -- +// writes no HaltTimer, no .err and no "done" lines, and may leave NONE in the +// property file from the paths it did finish. +TEST(KleeDroppedPaths, ARunThatNeverFinishedDropsPaths) { + fs::path d = freshDir("crashed"); + std::ofstream(d / "info") << "KLEE: output directory is \"x\"\n"; + std::ofstream(d / "test000001.ktest") << ""; + EXPECT_FALSE(Map2Check::kleeDroppedPaths(d.string()).empty()); + fs::remove_all(d); +} + +// Near --max-memory KLEE stops forking and follows one side of each branch +// at random; it logs that once and can still exit 0. +TEST(KleeDroppedPaths, SkippingForksDropsPaths) { + fs::path d = freshDir("skipfork"); + std::ofstream(d / "warnings.txt") + << "KLEE: WARNING ONCE: skipping fork (memory cap exceeded)\n"; + std::ofstream(d / "info") << "KLEE: done: completed paths = 3\n"; + EXPECT_FALSE(Map2Check::kleeDroppedPaths(d.string()).empty()); + fs::remove_all(d); +} + // A path pruned by an assumption is not a dropped path, and KLEE counts it // among the "partially completed" all the same (klee_silent_exit and a failed // klee_assume alike). Reading that counter made every program with an From 93e8de37ccb155614257de644487e7130aac3760 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 14:05:08 -0400 Subject: [PATCH 17/88] feat(slice): slice once per run, and experiment knobs for the slice Every hybrid phase recreates the scratch directory and used to run sbt-slicer again. On eca-* the slicer timed out (0.2T) in phase 1 and again in phase 2, and the run was killed past its budget with no suite: the 4 ERROR of the R15 slice arm. The slice -- or the slicer's failure -- is now kept beside the scratch (.slice/), keyed by the input's content and every setting that shapes the slice, for the later phases of the same run. Two environment knobs for the R19 arms, defaults unchanged until measured: MAP2CHECK_SLICE_CLEANUP (none|light|o2, an opt pass over the fresh slice) and MAP2CHECK_SLICER_FLAGS (appended to sbt-slicer, e.g. --cda=ntscd). Co-Authored-By: Claude Opus 5.5 (1M context) --- ...9-tacas-2d-slicing-optimizations-design.md | 103 ++++++++++++++++++ modules/frontend/caller.cpp | 86 ++++++++++++++- modules/frontend/caller.hpp | 13 +++ modules/frontend/map2check.cpp | 14 +++ modules/frontend/utils/slicer.hpp | 50 +++++++++ .../integration/test_testcomp_regressions.sh | 51 +++++++++ tests/unit/frontend/SlicerTest.cpp | 43 ++++++++ 7 files changed, 359 insertions(+), 1 deletion(-) create mode 100644 docs/superpowers/specs/2026-09-29-tacas-2d-slicing-optimizations-design.md diff --git a/docs/superpowers/specs/2026-09-29-tacas-2d-slicing-optimizations-design.md b/docs/superpowers/specs/2026-09-29-tacas-2d-slicing-optimizations-design.md new file mode 100644 index 000000000..67fa73dbe --- /dev/null +++ b/docs/superpowers/specs/2026-09-29-tacas-2d-slicing-optimizations-design.md @@ -0,0 +1,103 @@ +# tacas 2d — otimizações do slicing (design) + +**Data:** 2026-09-29 · **Branch:** `feat/tacas-2d-slicing` (a partir de `feat/tacas-smart-seeds`) +**Aprovação:** o usuário delegou as decisões ("você tem permissão para fazer as decisões +que quiser") e pediu as abordagens recomendadas no brainstorming de 2026-09-29. + +## Objetivo + +Hoje o `--slice` só empata com o controle: 126 × 129 cobertas na R15 Cover-Error. Além +disso, ele tem 4 ERROR próprios (ECA). O objetivo é que ele passe a ganhar, sem nenhum +TRUE errado. + +## Evidência que orienta o desenho + +- **Os 4 ERROR de ECA** (`Problem08_label51`, `Problem102_label34`, `Problem102_label02`, + `Problem103_label44`) seguem o mesmo roteiro: + - o `sbt-slicer` estoura seu limite (0,2T = 60 s) na fase 1; + - a fase 2 recria o `Caller` e **tenta fatiar de novo**, perdendo mais 60 s; + - o processo passa do orçamento e o harness o mata aos 330 s, sem suíte. +- **Cada fase refatia do zero.** Numa tarefa em que o slicer funciona, isso custa o tempo + do slicer uma vez por fase (2× no híbrido, 3× com `--seed-exchange`). +- **O dg deixa blocos vazios e funções mortas no `.bc` fatiado.** Nenhuma limpeza roda + depois da fatia. + +## Desenho + +### 1. Fatiar uma vez por execução (cache do slice) + +- **Onde fica:** um diretório `/.slice/` ao lado do scratch, no mesmo + esquema do store de sementes, porque o scratch é recriado a cada fase. +- **Chave:** um hash (FNV-1a 64 bits, em hex) do **conteúdo do `.bc` de entrada**, somado + ao rótulo dos critérios, à função de entrada e às flags extras do slicer. Chavear pelo + conteúdo, e não pelo número da fase, garante que só se reaproveita a fatia de uma + entrada idêntica. +- **O que se guarda:** + - `.bc`: a fatia pronta, depois da limpeza (item 2); + - `.failed`: marca que o slicer falhou ou estourou o tempo. Com ela, as fases + seguintes vão direto para o programa inteiro, sem gastar o slicer de novo. +- **Consulta:** acontece em `Caller::runSlicer`. + - Um acerto copia a fatia e registra "reusing the slice from an earlier phase". + - Uma falha registrada devolve `false` com o aviso de sempre, acrescido de "(cached)". +- **Ciclo de vida:** o mesmo do store. + - O diretório é apagado no início da execução (fase ≤ 1). + - O guarda de escopo de `main` o remove no fim, exceto com `--debug`. + - O guarda passa a cuidar dos dois diretórios, o de sementes e o de slice. + - Só existe com `--slice`. + +### 2. Limpeza depois da fatia (experimental) + +- **Knob de ambiente:** `MAP2CHECK_SLICE_CLEANUP`, com os valores: + - `none` (padrão até a medição); + - `light`: `opt -passes='function(simplifycfg,dce),globaldce'`; + - `o2`: `opt -O2`. +- **Onde roda:** dentro de `runSlicer`, depois de uma fatia bem-sucedida e antes de ela + entrar no cache. +- **Se o `opt` falhar,** a fatia fica sem limpeza e a execução avisa. +- **Risco do `o2`:** ele explora comportamento indefinido e pode apagar laços sem efeito + colateral. Isso muda a alcançabilidade. Por isso é só um braço de experimento, e o + gate de TRUE errado = 0 decide. +- **Depois da medição,** o vencedor vira o padrão (commit separado). + +### 3. Parâmetros do dg (experimental) + +- **Knob de ambiente:** `MAP2CHECK_SLICER_FLAGS`, anexado sem alteração à linha do + `sbt-slicer`. Os braços medidos são `--cda=ntscd` e `--pta=fs`. +- **Entra na chave do cache.** +- **Depois da medição,** o vencedor vira o padrão (commit separado). + +### Fora do escopo + +- **Cutoff-diverging consertado:** risco alto (é a causa do "Broken module"). Só entra + se 1–3 não fecharem a diferença. +- **Cache dos demais artefatos** (binário do AFL++, `.bc` do KLEE): compilar e instrumentar + custa segundos. Fica para o 3b, se as rodadas extras mostrarem esse custo. + +## Testes + +- **Unitários** (`SlicerTest.cpp`), sobre `sliceCacheKey`: + - é determinística; + - muda com o conteúdo, com o rótulo, com a entrada e com as flags. +- **Integração, seção nova:** + - o programa VLA da seção 20, rodado no híbrido com `--slice`, mostra o aviso de falha + do slicer uma vez por "slicer run" (debug) e depois "(cached)"; + - um programa fatiável roda o `sbt-slicer` uma vez só e as fases seguintes registram + "reusing the slice". +- **Suíte existente:** 40/40, e ctest. + +## Medição: rodada R19, amostra `r15-ce.tsv`, 300 s + +A mesma rodada R19 mede também o 3b; ver o spec do 3b. + +| braço | build | flags / env | +|---|---|---| +| controle | final | — | +| slice | final | `--slice` | +| slice-light | final | `--slice`, `MAP2CHECK_SLICE_CLEANUP=light` | +| slice-o2 | final | `--slice`, `MAP2CHECK_SLICE_CLEANUP=o2` | +| slice-ntscd | final | `--slice`, `MAP2CHECK_SLICER_FLAGS=--cda=ntscd` | +| slice-ptafs | final | `--slice`, `MAP2CHECK_SLICER_FLAGS=--pta=fs` | + +- **Gate:** TRUE errado = 0 em todo braço promovido. +- **Critério de promoção:** mais cobertas que o `slice` puro, com pares discordantes a + favor. diff --git a/modules/frontend/caller.cpp b/modules/frontend/caller.cpp index 2b5264ec8..72f885b4a 100644 --- a/modules/frontend/caller.cpp +++ b/modules/frontend/caller.cpp @@ -87,6 +87,7 @@ Caller::Caller(std::string bc_program_path, Map2CheckMode mode, Map2Check::Log::Debug("Changing current dir"); currentPath = std::filesystem::current_path().string(); seedStore = Map2Check::seedStorePath(currentPath, programHash); + sliceCache = Map2Check::sliceCachePath(currentPath, programHash); std::filesystem::current_path(currentPath + "/" + programHash); Map2Check::Log::Debug("Current path: " + std::filesystem::current_path().string()); @@ -232,9 +233,91 @@ unsigned Caller::exportFuzzerCorpusAsKtests() { return written; } +namespace { +/** MAP2CHECK_SLICER_FLAGS / MAP2CHECK_SLICE_CLEANUP: experiment knobs (tacas + * 2d spec), read from the environment so a campaign arm can set them without + * a CLI option nobody else should use. */ +std::string environmentKnob(const char *name) { + const char *value = std::getenv(name); + return value == nullptr ? std::string() : std::string(value); +} +} // namespace + bool Caller::runSlicer(const std::string &input, const std::string &output, std::vector primary, bool addRuntimeNames, const std::string &entry, const std::string &label) { + // Sliced once per run, not once per phase: see Map2Check::sliceCachePath. + std::error_code error; + std::string key; + { + std::ifstream in(input, std::ios::binary); + if (in.is_open()) { + std::stringstream content; + content << in.rdbuf(); + key = Map2Check::sliceCacheKey( + content.str(), label, entry, + environmentKnob("MAP2CHECK_SLICER_FLAGS") + "|" + + environmentKnob("MAP2CHECK_SLICE_CLEANUP")); + } + } + const std::string cached = sliceCache + "/" + key + ".bc"; + const std::string failed = sliceCache + "/" + key + ".failed"; + if (!key.empty() && std::filesystem::exists(failed, error)) { + Map2Check::Log::Warning( + "sbt-slicer produced no usable output (cached from an earlier phase) " + "-- analysing the unsliced program"); + return false; + } + if (!key.empty() && std::filesystem::exists(cached, error) && + std::filesystem::copy_file( + cached, output, std::filesystem::copy_options::overwrite_existing, + error)) { + Map2Check::Log::Info("Slice of " + label + + ": reusing the slice from an earlier phase"); + return true; + } + + const bool sliced = + runSlicerUncached(input, output, primary, addRuntimeNames, entry, label); + if (sliced) cleanUpSlice(output); + if (!key.empty() && std::filesystem::exists(Map2Check::slicerBinary())) { + std::filesystem::create_directories(sliceCache, error); + if (sliced) { + std::filesystem::copy_file( + output, cached, std::filesystem::copy_options::overwrite_existing, + error); + } else { + std::ofstream(failed) << label << "\n"; + } + } + return sliced; +} + +void Caller::cleanUpSlice(const std::string &slice) { + const std::string passes = Map2Check::sliceCleanupPasses( + environmentKnob("MAP2CHECK_SLICE_CLEANUP")); + if (passes.empty()) return; + const std::string cleaned = slice + ".clean.bc"; + std::ostringstream command; + command << Map2Check::optBinary << " " << passes << " " << slice << " -o " + << cleaned << " >> slicer.output 2>&1"; + Map2Check::Log::Debug(command.str()); + std::error_code error; + if (system(command.str().c_str()) == 0 && + std::filesystem::exists(cleaned, error) && + std::filesystem::file_size(cleaned, error) > 0) { + std::filesystem::rename(cleaned, slice, error); + if (!error) return; + } + Map2Check::Log::Warning("could not clean up the slice (" + passes + + ") -- keeping it as sliced"); +} + +bool Caller::runSlicerUncached(const std::string &input, + const std::string &output, + std::vector primary, + bool addRuntimeNames, const std::string &entry, + const std::string &label) { const std::string slicer = Map2Check::slicerBinary(); if (!std::filesystem::exists(slicer)) { // Announced, not silently skipped. A slicer that is asked for and absent @@ -301,7 +384,8 @@ bool Caller::runSlicer(const std::string &input, const std::string &output, << static_cast(sliceBudget) << " " << slicer << " -c " << Map2Check::slicingCriteria(primary, programNondets) << " --entry=" << entry - << " -cutoff-diverging=false --statistics -o " << output << " " + << " -cutoff-diverging=false --statistics " + << environmentKnob("MAP2CHECK_SLICER_FLAGS") << " -o " << output << " " << input << " > slicer.output 2>&1"; Map2Check::Log::Debug(command.str()); const int result = system(command.str().c_str()); diff --git a/modules/frontend/caller.hpp b/modules/frontend/caller.hpp index 48d2a0461..c794dbfab 100644 --- a/modules/frontend/caller.hpp +++ b/modules/frontend/caller.hpp @@ -173,6 +173,11 @@ class Caller { bool feedsKleePhase = false; const std::string& seedStorePath() const { return seedStore; } + /** Slices kept across the phases of one run (/.slice); see + * Map2Check::sliceCachePath. Removed by main with the seed store. */ + std::string sliceCache; + const std::string& sliceCachePath() const { return sliceCache; } + /** Writes KLEE's per-path vectors into the seed corpus. * * Sound only because the engines agree on widths now: concatenating a @@ -219,6 +224,14 @@ class Caller { bool runSlicer(const std::string& input, const std::string& output, std::vector primary, bool addRuntimeNames, const std::string& entry, const std::string& label); + /** runSlicer without the slice cache: what actually calls sbt-slicer. */ + bool runSlicerUncached(const std::string& input, const std::string& output, + std::vector primary, + bool addRuntimeNames, const std::string& entry, + const std::string& label); + /** Applies MAP2CHECK_SLICE_CLEANUP to a fresh slice, in place; on failure + * the slice is kept as the slicer wrote it. */ + void cleanUpSlice(const std::string& slice); }; } // namespace Map2Check diff --git a/modules/frontend/map2check.cpp b/modules/frontend/map2check.cpp index a5ca1af3e..c6ef83f84 100644 --- a/modules/frontend/map2check.cpp +++ b/modules/frontend/map2check.cpp @@ -421,6 +421,8 @@ bool foundViolation = false; bool provedSafe = false; // The seed store of the last phase, removed by main once every phase ran. static std::string lastSeedStore; +// The slice cache of the last phase, removed by main with the seed store. +static std::string lastSliceCache; int map2check_execution(map2check_args args) { Map2Check::Log::Info("Started Map2Check"); @@ -494,6 +496,13 @@ int map2check_execution(map2check_args args) { std::error_code storeError; std::filesystem::remove_all(caller->seedStorePath(), storeError); } + // The slice cache likewise: a slice left by an earlier run is keyed by + // content and would be correct, but a ".failed" mark from a run with a + // shorter budget would refuse this one a slice it could afford. + if (args.sliceProgram && args.phase <= 1) { + std::error_code cacheError; + std::filesystem::remove_all(caller->sliceCachePath(), cacheError); + } caller->feedsKleePhase = (args.phase == 1); caller->sliceProgram = args.sliceProgram; caller->setTimeout(args.timeout); @@ -738,6 +747,7 @@ int map2check_execution(map2check_args args) { // impossible to inspect after the fact. Debug runs are already opting into // verbosity and disk use. lastSeedStore = caller->seedStorePath(); + lastSliceCache = caller->sliceCachePath(); if (args.debugMode) { Map2Check::Log::Info("Debug mode: keeping temp files in " + caller->getScratchDir()); @@ -1002,6 +1012,10 @@ z3 (Z3 is default), btor (Boolector), and yices2 (Yices))") std::error_code storeError; std::filesystem::remove_all(lastSeedStore, storeError); } + if (args.sliceProgram && !args.debugMode && !lastSliceCache.empty()) { + std::error_code cacheError; + std::filesystem::remove_all(lastSliceCache, cacheError); + } } } seedStoreCleanup{args}; if(args.generator == Map2Check::NonDetGenerator::None) { diff --git a/modules/frontend/utils/slicer.hpp b/modules/frontend/utils/slicer.hpp index 2fe1880a8..31d309d0f 100644 --- a/modules/frontend/utils/slicer.hpp +++ b/modules/frontend/utils/slicer.hpp @@ -224,6 +224,56 @@ inline std::string describeSlice(const std::string& criterion, return text.str(); } +/** Where the slice of each phase is kept for the next ones: /.slice, + * beside the scratch directory for the reason the seed store is (every phase + * recreates the scratch). Holds .bc for a slice, .failed for a slicer + * that failed or timed out -- which the next phase must not pay for again: on + * eca-* the slicer spent 0.2T in phase 1 AND in phase 2, and the run was + * killed past its budget with no suite (R15, 4 ERROR). */ +inline std::string sliceCachePath(const std::string& cwd, + const std::string& programHash) { + return cwd + "/" + programHash + ".slice"; +} + +/** The cache key: FNV-1a (64-bit, hex) over the input bitcode's CONTENT and + * every setting that shapes the slice, so a slice is reused only for the very + * same question. Fields are separated by a byte no name contains. */ +inline std::string sliceCacheKey(const std::string& inputContent, + const std::string& criteriaLabel, + const std::string& entry, + const std::string& slicerFlags) { + uint64_t hash = 14695981039346656037ull; + auto mix = [&hash](const std::string& field) { + for (unsigned char c : field) { + hash ^= c; + hash *= 1099511628211ull; + } + hash ^= 0xff; + hash *= 1099511628211ull; + }; + mix(inputContent); + mix(criteriaLabel); + mix(entry); + mix(slicerFlags); + static const char* digits = "0123456789abcdef"; + std::string key(16, '0'); + for (int i = 15; i >= 0; --i) { + key[i] = digits[hash & 0xf]; + hash >>= 4; + } + return key; +} + +/** The opt arguments for MAP2CHECK_SLICE_CLEANUP (an experiment knob): the dg + * slicer leaves empty blocks and dead functions behind. "light" folds them + * away; "o2" is the full pipeline, which may exploit undefined behaviour and + * is measured, not trusted. Anything else means no cleanup. */ +inline std::string sliceCleanupPasses(const std::string& knob) { + if (knob == "light") return "-passes='function(simplifycfg,dce),globaldce'"; + if (knob == "o2") return "-O2"; + return ""; +} + } // namespace Map2Check #endif // MODULES_FRONTEND_UTILS_SLICER_HPP_ diff --git a/tests/integration/test_testcomp_regressions.sh b/tests/integration/test_testcomp_regressions.sh index 733c28f96..5ad3ca662 100755 --- a/tests/integration/test_testcomp_regressions.sh +++ b/tests/integration/test_testcomp_regressions.sh @@ -1067,6 +1067,57 @@ else ok "a KLEE run that concretized an input is not reported TRUE" fi +# --- 31. the hybrid slices once per run, not once per phase ----------------- +# Every phase recreates the scratch directory, and each used to run sbt-slicer +# again. On eca-* the slicer timed out (0.2T) in phase 1 AND phase 2, the run +# overran its budget and was killed with no suite (R15, 4 ERROR). A slice, or a +# slicer failure, is now kept for the later phases of the same run. +mkdir -p "$WORK/slicecache" +cat > "$WORK/slicecache/safe.c" <<'EOF2' +extern void __assert_fail(const char *, const char *, unsigned int, + const char *) __attribute__((__noreturn__)); +void reach_error(void) { __assert_fail("0", "safe.c", 3, "reach_error"); } +extern int __VERIFIER_nondet_int(void); +int main(void) { + int x = __VERIFIER_nondet_int(); + int y = x > 0 ? x : -x; + if (y < 0 && x > 0) { reach_error(); } + return 0; +} +EOF2 +( cd "$WORK/slicecache" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 200 "$MAP2CHECK" \ + --debug --slice --target-function --target-function-name reach_error \ + --timeout 30 safe.c ) > "$WORK/slicecache/safe.log" 2>&1 +slicer_runs=$(grep -c "sbt-slicer -c" "$WORK/slicecache/safe.log") +if [ "$slicer_runs" -eq 1 ] && grep -q "reusing the slice from an earlier phase" "$WORK/slicecache/safe.log"; then + ok "a slice is computed once and reused by the later phases" +else + fail "slice cache" "sbt-slicer ran $slicer_runs time(s); reuse logged: $(grep -c 'reusing the slice' "$WORK/slicecache/safe.log")" +fi + +# A slicer failure is remembered too: the VLA makes sbt-slicer fail, and the +# later phases must not pay for it again. +cat > "$WORK/slicecache/vla.c" <<'EOF2' +extern int __VERIFIER_nondet_int(void); +int main(void) { + int n = __VERIFIER_nondet_int(); + if (n > 0 && n < 10) { + int a[n]; + a[0] = 1; + return a[0]; + } + return 0; +} +EOF2 +( cd "$WORK/slicecache" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 200 "$MAP2CHECK" \ + --debug --memtrack --slice --timeout 30 vla.c ) > "$WORK/slicecache/vla.log" 2>&1 +slicer_runs=$(grep -c "sbt-slicer -c" "$WORK/slicecache/vla.log") +if [ "$slicer_runs" -eq 1 ] && grep -q "no usable output (cached" "$WORK/slicecache/vla.log"; then + ok "a slicer failure is remembered by the later phases" +else + fail "slice failure cache" "sbt-slicer ran $slicer_runs time(s); cached failure logged: $(grep -c 'no usable output (cached' "$WORK/slicecache/vla.log")" +fi + echo " ---" echo " Results: $PASSED passed, $FAILED failed" [ "$FAILED" -eq 0 ] || exit 1 diff --git a/tests/unit/frontend/SlicerTest.cpp b/tests/unit/frontend/SlicerTest.cpp index 12e9babe6..769b2c64e 100644 --- a/tests/unit/frontend/SlicerTest.cpp +++ b/tests/unit/frontend/SlicerTest.cpp @@ -199,3 +199,46 @@ TEST(InstrumentedSliceCriteria, CollectsRuntimeThenExternalNames) { EXPECT_EQ(criteria[0], "map2check_check_deref"); EXPECT_EQ(criteria[1], "strcpy"); } + +// --- the slice cache (tacas 2d) ---------------------------------------------- + +// Every hybrid phase recreates the scratch directory and used to slice again: +// on eca-* the slicer timed out in phase 1 AND phase 2, and the run blew its +// budget. The cache reuses a slice only for the very same input and settings. +TEST(SliceCacheKey, IsDeterministic) { + EXPECT_EQ(Map2Check::sliceCacheKey("BC", "reach_error", "main", ""), + Map2Check::sliceCacheKey("BC", "reach_error", "main", "")); +} + +TEST(SliceCacheKey, ChangesWithEveryInput) { + const std::string base = + Map2Check::sliceCacheKey("BC", "reach_error", "main", ""); + EXPECT_NE(base, Map2Check::sliceCacheKey("BD", "reach_error", "main", "")); + EXPECT_NE(base, Map2Check::sliceCacheKey("BC", "reach_errors", "main", "")); + EXPECT_NE(base, Map2Check::sliceCacheKey("BC", "reach_error", "mai", "")); + EXPECT_NE(base, + Map2Check::sliceCacheKey("BC", "reach_error", "main", "--pta=fs")); + // Field boundaries count: moving a character between fields is another key. + EXPECT_NE(Map2Check::sliceCacheKey("B", "Creach_error", "main", ""), base); +} + +TEST(SliceCacheKey, IsAFileName) { + const std::string key = + Map2Check::sliceCacheKey("BC", "reach_error", "main", "--cda=ntscd"); + EXPECT_EQ(key.size(), 16u); + EXPECT_EQ(key.find_first_not_of("0123456789abcdef"), std::string::npos); +} + +TEST(SliceCachePath, SitsBesideTheScratchDirectory) { + EXPECT_EQ(Map2Check::sliceCachePath("/w", "abc.map2check"), + "/w/abc.map2check.slice"); +} + +TEST(SliceCleanupPasses, MapsTheKnob) { + EXPECT_EQ(Map2Check::sliceCleanupPasses(""), ""); + EXPECT_EQ(Map2Check::sliceCleanupPasses("none"), ""); + EXPECT_EQ(Map2Check::sliceCleanupPasses("light"), + "-passes='function(simplifycfg,dce),globaldce'"); + EXPECT_EQ(Map2Check::sliceCleanupPasses("o2"), "-O2"); + EXPECT_EQ(Map2Check::sliceCleanupPasses("bogus"), ""); +} From be6754d4a2223628c23f25b3f67b20e873b635b9 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 14:42:41 -0400 Subject: [PATCH 18/88] fix(slice): bound the post-slice cleanup like the slicer From the review: the MAP2CHECK_SLICE_CLEANUP opt pipeline ran unbounded, outside every engine's window. Co-Authored-By: Claude Opus 5.5 (1M context) --- modules/frontend/caller.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/modules/frontend/caller.cpp b/modules/frontend/caller.cpp index 72f885b4a..a76452b49 100644 --- a/modules/frontend/caller.cpp +++ b/modules/frontend/caller.cpp @@ -299,8 +299,14 @@ void Caller::cleanUpSlice(const std::string &slice) { if (passes.empty()) return; const std::string cleaned = slice + ".clean.bc"; std::ostringstream command; - command << Map2Check::optBinary << " " << passes << " " << slice << " -o " - << cleaned << " >> slicer.output 2>&1"; + // Bounded like the slicer: a pass pipeline over a large module is not + // free, and it runs outside any engine's window. + const unsigned cleanupBudget = static_cast(std::max( + 2.0, std::min(0.05 * this->timeout, + static_cast(remainingSeconds()) - 5.0))); + command << "timeout -k " << Map2Check::killGracePeriod << " " + << cleanupBudget << " " << Map2Check::optBinary << " " << passes + << " " << slice << " -o " << cleaned << " >> slicer.output 2>&1"; Map2Check::Log::Debug(command.str()); std::error_code error; if (system(command.str().c_str()) == 0 && From 8cdcb07f55ec11c2b39acb9b8ba0e29d0e0bf561 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 21:08:43 -0400 Subject: [PATCH 19/88] perf(slice): scan the IR for names without std::regex On the eca-* modules (megabytes of IR) the three regex scans that collect the slicing criteria took ~45 s, outside every budget: with the slicer's own 0.2T that was 105 s before the first engine, and the run was killed past its deadline with no verdict (R19: the slice arm's 4 remaining ERROR). A plain scan with the same results (SlicerTest). Co-Authored-By: Claude Opus 5.5 (1M context) --- modules/frontend/utils/slicer.hpp | 93 +++++++++++++++++++------------ 1 file changed, 57 insertions(+), 36 deletions(-) diff --git a/modules/frontend/utils/slicer.hpp b/modules/frontend/utils/slicer.hpp index 31d309d0f..323c5cdbe 100644 --- a/modules/frontend/utils/slicer.hpp +++ b/modules/frontend/utils/slicer.hpp @@ -10,6 +10,7 @@ #define MODULES_FRONTEND_UTILS_SLICER_HPP_ #include +#include #include #include #include @@ -47,37 +48,43 @@ inline const std::vector& nondetFunctionNames() { return names; } -/** Every __VERIFIER_nondet_* symbol in a module's textual IR (`opt -S`), - * in order of first appearance. The fixed list above cannot know every name a - * benchmark declares (int128, uint128, ...), and a name missing from the - * criteria silently brings the shifted suite back. */ -inline std::vector nondetNamesInIR(const std::string& ir) { - static const std::regex symbol(R"(@(__VERIFIER_nondet_[A-Za-z0-9_]+))"); +/** Every symbol `@...` in a module's textual IR, without the '@', in + * order of first appearance. A plain scan, not std::regex: on the eca-* modules + * (megabytes of IR) the regexes took ~45 s, outside every budget, and pushed + * the run past its deadline with no verdict (R19, 4 ERROR of the slice arm). */ +inline std::vector symbolsWithPrefixInIR(const std::string& ir, + const std::string& prefix) { + auto isNameChar = [](char c) { + return std::isalnum(static_cast(c)) || c == '_'; + }; std::vector names; - for (std::sregex_iterator it(ir.begin(), ir.end(), symbol), end; it != end; - ++it) { - const std::string name = (*it)[1]; - if (std::find(names.begin(), names.end(), name) == names.end()) { + const std::string needle = "@" + prefix; + for (size_t at = ir.find(needle); at != std::string::npos; + at = ir.find(needle, at + 1)) { + size_t end = at + 1; + while (end < ir.size() && isNameChar(ir[end])) ++end; + const std::string name = ir.substr(at + 1, end - at - 1); + if (name.size() > prefix.size() && + std::find(names.begin(), names.end(), name) == names.end()) { names.push_back(name); } } return names; } +/** Every __VERIFIER_nondet_* symbol in a module's textual IR (`opt -S`), + * in order of first appearance. The fixed list above cannot know every name a + * benchmark declares (int128, uint128, ...), and a name missing from the + * criteria silently brings the shifted suite back. */ +inline std::vector nondetNamesInIR(const std::string& ir) { + return symbolsWithPrefixInIR(ir, "__VERIFIER_nondet_"); +} + /** Every map2check_* runtime symbol in a module's textual IR, in order of * first appearance. Used as the slicing criteria for the memory properties: * the property is decided by these calls, so none of them may be removed. */ inline std::vector runtimeNamesInIR(const std::string& ir) { - static const std::regex symbol(R"(@(map2check_[A-Za-z0-9_]+))"); - std::vector names; - for (std::sregex_iterator it(ir.begin(), ir.end(), symbol), end; it != end; - ++it) { - const std::string name = (*it)[1]; - if (std::find(names.begin(), names.end(), name) == names.end()) { - names.push_back(name); - } - } - return names; + return symbolsWithPrefixInIR(ir, "map2check_"); } /** Every function a module DECLARES without defining (`declare ... @f(`), in @@ -87,24 +94,38 @@ inline std::vector runtimeNamesInIR(const std::string& ir) { * the runtime checks depends on such a call, so without it as a criterion the * slicer drops the call and the bug with it (CASTLE-787-2: a wrong TRUE). */ inline std::vector externalNamesInIR(const std::string& ir) { - static const std::regex declaration( - R"((?:^|\n)declare [^\n]*?@([A-Za-z0-9_.$]+)\()"); + auto isNameChar = [](char c) { + return std::isalnum(static_cast(c)) || c == '_' || + c == '.' || c == '$'; + }; std::vector names; - for (std::sregex_iterator it(ir.begin(), ir.end(), declaration), end; - it != end; ++it) { - const std::string name = (*it)[1]; - // Intrinsics are not calls into code the slicer could keep -- except the - // memory ones: clang lowers memcpy/memset/memmove (and struct copies) to - // them, and an overflowing copy into a buffer nothing reads again feeds no - // criterion, so it has to be one (the strcpy case again). - if (name.rfind("llvm.", 0) == 0 && name.rfind("llvm.memcpy.", 0) != 0 && - name.rfind("llvm.memmove.", 0) != 0 && - name.rfind("llvm.memset.", 0) != 0) { - continue; - } - if (std::find(names.begin(), names.end(), name) == names.end()) { - names.push_back(name); + size_t line = 0; + while (line < ir.size()) { + size_t next = ir.find('\n', line); + if (next == std::string::npos) next = ir.size(); + if (ir.compare(line, 8, "declare ") == 0) { + const size_t at = ir.find('@', line); + if (at != std::string::npos && at < next) { + size_t end = at + 1; + while (end < next && isNameChar(ir[end])) ++end; + if (end < next && ir[end] == '(') { + const std::string name = ir.substr(at + 1, end - at - 1); + // Intrinsics are not calls into code the slicer could keep -- except + // the memory ones: clang lowers memcpy/memset/memmove (and struct + // copies) to them, and an overflowing copy into a buffer nothing + // reads again feeds no criterion, so it has to be one. + const bool intrinsic = name.rfind("llvm.", 0) == 0 && + name.rfind("llvm.memcpy.", 0) != 0 && + name.rfind("llvm.memmove.", 0) != 0 && + name.rfind("llvm.memset.", 0) != 0; + if (!intrinsic && + std::find(names.begin(), names.end(), name) == names.end()) { + names.push_back(name); + } + } + } } + line = next + 1; } return names; } From c3d2bbe4787dabc9ad3779ebebf835310d9efe2a Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 14:20:54 -0400 Subject: [PATCH 20/88] fix(afl): the fuzzer's input runs out as zeros, not as a replay of itself Past the end of the test case the AFL++ generator started over from its first byte, so 'while (__VERIFIER_nondet_int())' fed by the placeholder seed "A" never ended: afl-fuzz's dry run timed out and the fuzzer aborted before its first execution, on the loop idiom sv-benchmarks is full of. Reads past the end now return zero -- what the witness replay logs, so the suite built from that log stays exact. It also read data[0] of an empty test case. Covered by integration section 32 (next commit). Co-Authored-By: Claude Opus 5.5 (1M context) --- modules/backend/library/lib/NonDetGeneratorAFL.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/modules/backend/library/lib/NonDetGeneratorAFL.c b/modules/backend/library/lib/NonDetGeneratorAFL.c index 01cefa075..4eb4bc7cc 100644 --- a/modules/backend/library/lib/NonDetGeneratorAFL.c +++ b/modules/backend/library/lib/NonDetGeneratorAFL.c @@ -52,13 +52,17 @@ size_t map2check_afl_size; * drags afl-fuzz's stability down. */ static size_t map2check_afl_index = 0; +/* Past the end of the test case every read is zero. It used to start over + * from the first byte, so `while (__VERIFIER_nondet_int())` fed by the + * placeholder seed "A" never ended: afl-fuzz's dry run timed out on it and the + * fuzzer aborted before its first execution. Zero ends such a loop, and it is + * what the witness replay logs, so the suite built from that log stays exact. + * (It also read data[0] of an empty test case.) */ uint8_t get_next_input_from_afl() { if (map2check_afl_index < map2check_afl_size) { return map2check_afl_data[map2check_afl_index++]; } - - map2check_afl_index = 0; - return map2check_afl_data[map2check_afl_index]; + return 0; } /* Fills `out` with `size` bytes from the AFL buffer, in target order. From 4d1e91e971d215acd8a236179ed6bcce45d53501 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 14:20:54 -0400 Subject: [PATCH 21/88] feat(hybrid): --alternate-engines, turns that end when an engine stagnates The fixed 0.2/0.6/0.2 split held an engine that had stopped progressing to the end of its share and cut one that still was. Under --alternate-engines (implies --seed-exchange) the fuzzer and KLEE take turns until a violation, a proof or too little time: each phase is bounded by a window that doubles every round of its engine (0.1T fuzzer, 0.3T KLEE) and ends when its engine goes max(10 s, 0.05T) without new coverage -- AFL_EXIT_ON_TIME for the fuzzer, a watch over KLEE's run.stats (SQLite, optional at build time) that SIGINTs it. A KLEE stopped that way is incomplete, never TRUE. Between turns: KLEE's latest tests seed its next turn (kleeprev/), the fuzzer's own seeds are not replayed back to KLEE, at most 64 KLEE vectors go to a short fuzzer window, and the test suite numbers after the cases an earlier phase wrote instead of overwriting them. Co-Authored-By: Claude Opus 5.5 (1M context) --- ...9-29-tacas-3b-engine-alternation-design.md | 119 +++++++++++ modules/frontend/CMakeLists.txt | 15 ++ modules/frontend/caller.cpp | 193 ++++++++++++++++-- modules/frontend/caller.hpp | 20 ++ modules/frontend/map2check.cpp | 65 +++++- modules/frontend/test_suite/test_suite.cpp | 28 ++- modules/frontend/utils/alternation.hpp | 67 ++++++ modules/frontend/utils/seed_store.hpp | 7 +- .../integration/test_testcomp_regressions.sh | 62 ++++++ tests/unit/frontend/AlternationTest.cpp | 53 +++++ tests/unit/frontend/CMakeLists.txt | 5 + tests/unit/frontend/SeedStoreTest.cpp | 16 +- tests/unit/frontend/TestSuiteTest.cpp | 17 ++ 13 files changed, 642 insertions(+), 25 deletions(-) create mode 100644 docs/superpowers/specs/2026-09-29-tacas-3b-engine-alternation-design.md create mode 100644 modules/frontend/utils/alternation.hpp create mode 100644 tests/unit/frontend/AlternationTest.cpp diff --git a/docs/superpowers/specs/2026-09-29-tacas-3b-engine-alternation-design.md b/docs/superpowers/specs/2026-09-29-tacas-3b-engine-alternation-design.md new file mode 100644 index 000000000..5625799dd --- /dev/null +++ b/docs/superpowers/specs/2026-09-29-tacas-3b-engine-alternation-design.md @@ -0,0 +1,119 @@ +# tacas 3b — alternância de engines com detecção de estagnação (design) + +**Data:** 2026-09-29 +**Branch:** `feat/tacas-3b-alternation`, a partir de `feat/tacas-2d-slicing` +**Aprovação:** o usuário delegou as decisões e pediu a abordagem recomendada no +brainstorming de 2026-09-29, a opção A: sinais nativos de estagnação com polling. + +## Objetivo + +Hoje o híbrido com `--seed-exchange` reparte o orçamento de forma fixa: +- AFL++ com 0,2T; +- KLEE com 0,6T; +- AFL++ com 0,2T. + +Isso tem dois custos: +- uma engine estagnada segura o orçamento até o fim da sua cota; +- uma engine que ainda progride é cortada no meio. + +O 3b troca de engine **quando a atual estagna**, em rodadas, até: +- achar a violação; +- provar a propriedade; +- acabar o tempo. + +## Desenho + +### Laço de rodadas (em `main`) + +A flag nova é `--alternate-engines`. Ela implica `--seed-exchange` e só vale no híbrido. +O laço alterna AFL++ e KLEE, começando pelo AFL++, com `args.phase = 1, 2, 3, …`: + +``` +janela(engine, rodada r) = min(restante, base(engine) * 2^(r-1)) + base(AFL++) = 0,1T base(KLEE) = 0,3T +para cada fase: + roda a engine com teto = janela e parada por estagnação (abaixo) + pára o laço se: violação | provedSafe | restante < max(10 s, 0,05T) +``` + +**Por que as janelas dobram:** a mesma engine volta com mais tempo quando a alternância +não resolveu. Uma engine que estagna cedo devolve o tempo que sobrou na hora. + +**Quem alimenta o KLEE:** toda fase AFL++ seguida de uma fase KLEE alimenta o KLEE +(`feedsKleePhase`). O corte é que, se o que resta não comporta outra fase, ela não +alimenta. + +**O que o KLEE recebe de semente:** +- o corpus do AFL++, como hoje; +- os `.ktest` da rodada KLEE anterior. Assim o KLEE reconstrói depressa a fronteira + que já tinha alcançado, em vez de redescobri-la. + +**O que o AFL++ recebe:** o `store/afl` já acumula a fila do AFL++ e os vetores do KLEE, +então nada muda. + +**Seleção das entradas da fila (`selectQueueEntries`):** passa a **pular as entradas já +exportadas** em rodadas anteriores. Os nomes exportados ficam registrados em +`store/exported.txt`. Sem isso, toda rodada reenviaria as mesmas 64 primeiras. + +### Estagnação + +- **AFL++:** `AFL_EXIT_ON_TIME=S`. O próprio fuzzer sai com 0 quando passa S segundos sem + cobertura nova. O `timeout` externo continua sendo o teto da janela. +- **KLEE:** o frontend lança o KLEE em uma thread (`system`, como hoje, com o PID do + `timeout` gravado em `klee.pid`) e faz polling do `klee-out-0/run.stats` a cada 2 s, + lendo `CoveredInstructions` da última linha pela API do SQLite, em modo somente leitura. + - Se o valor fica S segundos sem subir, o frontend manda SIGINT ao `timeout`, que o + repassa ao KLEE. + - O KLEE para de forma limpa: grava os testes dos estados que já terminaram. + - A fase é marcada como **incompleta** (`gotTimeout`). A execução nunca vira TRUE + por isso. +- **Valor de S:** `max(10 s, 0,05T)`, que dá 15 s em T = 300. +- **Sem SQLite:** o SQLite é uma dependência opcional, via `find_package(SQLite3)`. Sem + ele, a estagnação do KLEE fica desligada e vale só o teto da janela. O CI, que não + instala `libsqlite3-dev`, continua compilando. + +### Correção necessária: numeração da suíte + +`TestSuiteWriter` numera os casos a partir de 1 em cada fase (`testcase-1.xml`, …). Com +mais de uma fase KLEE em Cover-Branches, **uma rodada sobrescreveria a anterior**. O +contador passa a começar depois do maior `testcase-N.xml` que já existir no diretório. + +## Fora do escopo + +- **Transformar o corpus do AFL++ em casos de teste de Cover-Branches.** Hoje a suíte de + CB sai só dos `.ktest` do KLEE. É um bom candidato, porque o replay tipado já existe, + mas é uma mudança de outra natureza e fica para depois. +- **Priorização das sementes (3c).** + +## Testes + +- **Unitários:** + - `SeedStoreTest`: a seleção pula nomes já exportados; + - `alternationWindow(engine, rodada, T, restante)`: janelas dobram e respeitam o + restante; + - `stagnationSeconds(T)`; + - `TestSuiteWriter`: o contador continua a partir de um diretório existente. +- **Integração, seções novas:** + - **Várias fases numa execução só:** um programa em que o AFL++ estagna (guarda de + igualdade de 32 bits que o CmpLog não resolve), rodado com `--alternate-engines`, + registra mais de uma fase e termina dentro do orçamento, sem TRUE. + - **Numeração da suíte:** um diretório com `testcase-1.xml` recebe o próximo caso como + `testcase-2.xml`. + - **Estagnação do KLEE:** um programa com laço infinito de estados, a 60 s, mostra o + aviso "KLEE stagnated" antes do teto e o veredito não é TRUE. + +## Medição (R19, a mesma rodada do 2d) + +Braços a comparar, todos com o build final: + +| braço | flags | +|---|---| +| controle | — | +| seeds | `--seed-exchange` | +| alternate | `--alternate-engines` | + +- **Amostras:** Cover-Error em `r15-ce.tsv`; Cover-Branches em `r15-cb.tsv` (seeds e + alternate). +- **Gate:** TRUE errado = 0. +- **Critério de promoção:** mais tarefas cobertas que seeds em Cover-Error e cobertura + média de CB não pior. diff --git a/modules/frontend/CMakeLists.txt b/modules/frontend/CMakeLists.txt index 19778b60e..edc9e75d1 100644 --- a/modules/frontend/CMakeLists.txt +++ b/modules/frontend/CMakeLists.txt @@ -38,4 +38,19 @@ target_include_directories(map2check PRIVATE "${CMAKE_CURRENT_BINARY_DIR}") #set_target_properties(map2check PROPERTIES COMPILE_FLAGS ${CPP_FLAGS}) #-lrt -ldl -ltinfo -lpthread -lz -lm target_link_libraries(map2check ${Boost_LIBRARIES}) + +# --alternate-engines watches KLEE's progress in its SQLite stats database +# (tacas 3b). Optional: without SQLite -- the CI images do not install it -- +# KLEE runs to its window and only the fuzzer stops on stagnation. +find_package(Threads REQUIRED) +target_link_libraries(map2check Threads::Threads) +find_package(SQLite3) +if(SQLite3_FOUND) + target_compile_definitions(Caller PRIVATE MAP2CHECK_HAVE_SQLITE) + target_include_directories(Caller PRIVATE ${SQLite3_INCLUDE_DIRS}) + target_link_libraries(map2check ${SQLite3_LIBRARIES} ${CMAKE_DL_LIBS}) + message(STATUS "SQLite3 found: KLEE stagnation detection enabled") +else() + message(STATUS "SQLite3 not found: KLEE stagnation detection disabled") +endif() install (TARGETS map2check DESTINATION .) diff --git a/modules/frontend/caller.cpp b/modules/frontend/caller.cpp index a76452b49..783e78962 100644 --- a/modules/frontend/caller.cpp +++ b/modules/frontend/caller.cpp @@ -26,11 +26,20 @@ #include #include #include +#include #include #include +#include +#include + +#ifdef MAP2CHECK_HAVE_SQLITE +#include +#endif + #include "test_suite/ktest_reader.hpp" #include "utils/gen_crypto_hash.hpp" +#include "utils/alternation.hpp" #include "utils/log.hpp" #include "utils/seed_store.hpp" #include "utils/slicer.hpp" @@ -107,6 +116,14 @@ std::chrono::steady_clock::time_point processStart() { } } // namespace +unsigned Caller::remainingOf(unsigned timeout) { + const auto elapsed = std::chrono::duration_cast( + std::chrono::steady_clock::now() - processStart()) + .count(); + const long long left = static_cast(timeout) - elapsed; + return left < 1 ? 1u : static_cast(left); +} + unsigned Caller::remainingSeconds() const { const auto elapsed = std::chrono::duration_cast( std::chrono::steady_clock::now() - processStart()) @@ -133,19 +150,133 @@ std::string Caller::postOptimizationFlags() { return flags.str(); } +namespace { +/** KLEE's covered-instruction count, from the last row of the SQLite stats + * database it rewrites every second; -1 when it cannot be read (not created + * yet, busy, or a build without SQLite). */ +long long kleeCoveredInstructions(const std::string &statsPath) { +#ifdef MAP2CHECK_HAVE_SQLITE + sqlite3 *db = nullptr; + long long covered = -1; + if (sqlite3_open_v2(statsPath.c_str(), &db, SQLITE_OPEN_READONLY, nullptr) == + SQLITE_OK) { + sqlite3_busy_timeout(db, 200); + sqlite3_stmt *statement = nullptr; + if (sqlite3_prepare_v2(db, + "SELECT CoveredInstructions FROM stats ORDER BY " + "rowid DESC LIMIT 1", + -1, &statement, nullptr) == SQLITE_OK && + sqlite3_step(statement) == SQLITE_ROW) { + covered = sqlite3_column_int64(statement, 0); + } + sqlite3_finalize(statement); + } + sqlite3_close(db); + return covered; +#else + (void)statsPath; + return -1; +#endif +} +} // namespace + +int Caller::runKleeWatched(const std::string &command) { + this->stoppedOnStagnation = false; +#ifndef MAP2CHECK_HAVE_SQLITE + return system(command.c_str()); +#else + if (this->stagnationLimit == 0) return system(command.c_str()); + + // The shell's pid becomes the pid of `timeout` through exec, and `timeout` + // forwards a SIGINT to KLEE -- whose handler halts the search cleanly and + // writes the tests of the states it finished. + std::error_code error; + std::filesystem::remove("klee.pid", error); + const std::string wrapped = "echo $$ > klee.pid; exec " + command; + std::atomic done{false}; + int result = 0; + std::thread runner([&wrapped, &done, &result] { + result = system(wrapped.c_str()); + done = true; + }); + + Map2Check::CoverageWatch watch(this->stagnationLimit); + const auto started = std::chrono::steady_clock::now(); + const std::string stats = std::string(Map2Check::kleeOutputDir) + "/run.stats"; + while (!done) { + for (int tick = 0; tick < 4 && !done; ++tick) { + std::this_thread::sleep_for(std::chrono::milliseconds(500)); + } + if (done) break; + const double now = std::chrono::duration( + std::chrono::steady_clock::now() - started) + .count(); + if (!watch.stagnated(kleeCoveredInstructions(stats), now)) continue; + + pid_t pid = 0; + std::ifstream("klee.pid") >> pid; + if (pid > 0) kill(pid, SIGINT); + this->stoppedOnStagnation = true; + Map2Check::Log::Warning("KLEE stagnated: no new coverage for " + + std::to_string(this->stagnationLimit) + + " s -- stopping it"); + break; + } + runner.join(); + return result; +#endif +} + +void Caller::keepKleeTestsAsSeeds() { + // The latest tests, not the first: KLEE numbers them as states finish, and + // the later ones are the deeper paths the next turn should start from. + std::error_code error; + const std::string kept = seedStore + "/kleeprev"; + std::filesystem::remove_all(kept, error); + std::vector tests; + for (const auto &entry : std::filesystem::directory_iterator( + Map2Check::kleeOutputDir, error)) { + if (entry.path().extension() == ".ktest") { + tests.push_back(entry.path().string()); + } + } + if (tests.empty()) return; + std::sort(tests.begin(), tests.end()); + if (tests.size() > kMaxSeedsFromFuzzer) { + tests.erase(tests.begin(), tests.end() - kMaxSeedsFromFuzzer); + } + std::filesystem::create_directories(kept, error); + for (const std::string &test : tests) { + std::filesystem::copy_file( + test, kept + "/" + std::filesystem::path(test).filename().string(), + std::filesystem::copy_options::overwrite_existing, error); + } +} + unsigned Caller::exportKleeVectorsAsSeeds() { std::error_code error; const std::string aflSeeds = seedStore + "/afl"; std::filesystem::create_directories(aflSeeds, error); - std::vector> ignored; - unsigned written = 0; - unsigned index = 0; + std::vector tests; for (const auto &entry : std::filesystem::directory_iterator( Map2Check::kleeOutputDir, error)) { - if (entry.path().extension() != ".ktest") continue; + if (entry.path().extension() == ".ktest") { + tests.push_back(entry.path().string()); + } + } + // Alternating, the fuzzer gets a short window, and afl-fuzz calibrates + // every seed before its first mutation: a thousand KLEE vectors (measured on + // a nondet loop) ate the window. The latest ones, as for kleeprev/. + std::sort(tests.begin(), tests.end()); + if (this->stagnationLimit > 0 && tests.size() > kMaxSeedsFromFuzzer) { + tests.erase(tests.begin(), tests.end() - kMaxSeedsFromFuzzer); + } + unsigned written = 0; + unsigned index = 0; + for (const std::string &test : tests) { std::vector objects = - Map2Check::readKtestFile(entry.path().string()); + Map2Check::readKtestFile(test); if (objects.empty()) continue; std::vector bytes = Map2Check::ktestToFuzzerBytes(objects); @@ -191,6 +322,9 @@ unsigned Caller::exportFuzzerCorpusAsKtests() { names.push_back(entry.path().filename().string()); } } + // This round's discoveries replace the last round's: KLEE already ran on + // those, and its own tests from that turn (kleeprev/) carry them forward. + std::filesystem::remove_all(ktests, error); std::filesystem::create_directories(ktests, error); // Bounded as a whole, not only per entry: the replays come out of the KLEE @@ -872,10 +1006,12 @@ void Caller::executeAnalysis(std::string solvername) { constexpr double kPostEngineReserve = 5.0; // With the exchange on, the fuzzer gets a real third phase: 0.2 / 0.6 / // 0.2. Without it the hybrid keeps the 0.2 / 0.8 it was measured with. + // Alternating (--alternate-engines), main hands each phase its window. const double kleeShare = this->seedExchange ? 0.6 : 0.8; + const double kleeCap = + this->engineWindow > 0 ? this->engineWindow : kleeShare * this->timeout; const double kleeBudget = std::max( - 1.0, std::min(kleeShare * this->timeout, - this->remainingSeconds() - kPostEngineReserve)); + 1.0, std::min(kleeCap, this->remainingSeconds() - kPostEngineReserve)); kleeCommand << "timeout -k " << Map2Check::killGracePeriod << " " << static_cast(kleeBudget) << " "; kleeCommand << Map2Check::kleeBinary; @@ -944,9 +1080,24 @@ void Caller::executeAnalysis(std::string solvername) { break; } } - if (haveSeeds) { - seedFlag = " --seed-dir='" + seedStore + - "/ktest' --allow-seed-extension --allow-seed-truncation" + // KLEE's own tests from its previous turn, when the engines alternate: + // replaying them rebuilds the frontier it had reached instead of + // rediscovering it. + bool haveOwnSeeds = false; + for (const auto &entry : std::filesystem::directory_iterator( + seedStore + "/kleeprev", seedError)) { + if (entry.is_regular_file(seedError)) { + haveOwnSeeds = true; + break; + } + } + if (haveSeeds || haveOwnSeeds) { + seedFlag = std::string(haveSeeds ? " --seed-dir='" + seedStore + + "/ktest'" + : "") + + (haveOwnSeeds ? " --seed-dir='" + seedStore + "/kleeprev'" + : "") + + " --allow-seed-extension --allow-seed-truncation" " --seed-time=" + std::to_string(std::max( 1u, static_cast(kleeBudget / 4))) + @@ -1013,8 +1164,9 @@ void Caller::executeAnalysis(std::string solvername) { } Map2Check::Log::Debug(kleeCommand.str()); - int result = system(kleeCommand.str().c_str()); + int result = runKleeWatched(kleeCommand.str()); if (this->seedExchange) { + keepKleeTestsAsSeeds(); // Written after KLEE rather than before the next phase, because the // .ktest files are in the scratch directory that cleanGarbage() will // remove -- and because a later alternation, or a resumed run, should @@ -1024,6 +1176,8 @@ void Caller::executeAnalysis(std::string solvername) { Map2Check::Log::Warning("Exited klee with " + std::to_string(result)); if (result == 31744) // Timeout gotTimeout = true; + // Stopped by us for want of progress: states were left, nothing proved. + if (this->stoppedOnStagnation) gotTimeout = true; // KLEE exits 0 when its queue empties, like a run that explored every // path -- also after its timer, a concretized input or states it killed // itself. None of those proves anything. Treated as the timeout it is: a @@ -1061,7 +1215,8 @@ void Caller::executeAnalysis(std::string solvername) { // Against what is LEFT, not against the nominal budget -- see // Caller::remainingSeconds. const double fuzzerBudget = - std::min(0.2 * this->timeout, + std::min(this->engineWindow > 0 ? this->engineWindow + : 0.2 * this->timeout, static_cast(this->remainingSeconds())); // afl-fuzz needs a non-empty -i dir and a -o dir that does not already // exist (the hybrid may run the fuzzer phase twice). @@ -1098,6 +1253,11 @@ void Caller::executeAnalysis(std::string solvername) { << " AFL_I_DONT_CARE_ABOUT_MISSING_CRASHES=1" << " AFL_CRASHING_SEEDS_AS_NEW_CRASH=1" << " AFL_BENCH_UNTIL_CRASH=1 "; + // Alternating: the fuzzer hands the rest of its window back as soon as + // it stops finding coverage, and exits 0 doing so -- not a timeout. + if (this->stagnationLimit > 0) { + command << "AFL_EXIT_ON_TIME=" << this->stagnationLimit << " "; + } // Bounded by `timeout` alone, as the previous fuzzer was. Not also by // afl-fuzz -V: that one compares wall-clock (gettimeofday) readings, // and a clock stepped backwards -- measured at over a second under @@ -1155,13 +1315,8 @@ void Caller::executeAnalysis(std::string solvername) { // afl-fuzz never writes back into -i, so under --seed-exchange its // discoveries are copied into seeds/ -- the previous fuzzer grew that // directory in place. Inputs tagged ",orig:" are the seeds it started - // from, already there. - // - // Caveat, inherited unchanged from v15: seeds/ lives in the scratch - // directory, which the next phase's Caller wipes on construction, so - // this corpus does not yet reach the following KLEE or fuzzer phase. - // Making it survive changes what the hybrid measures, and belongs to - // the smart-seeds work, not to the engine swap. + // from, already there. The store is beside the scratch directory, so + // the next fuzzer phase starts from this corpus plus KLEE's vectors. if (this->seedExchange) { std::error_code queueErr; for (const auto &entry : std::filesystem::directory_iterator( diff --git a/modules/frontend/caller.hpp b/modules/frontend/caller.hpp index c794dbfab..59ae697e1 100644 --- a/modules/frontend/caller.hpp +++ b/modules/frontend/caller.hpp @@ -93,6 +93,9 @@ class Caller { * Sizing each phase against what is LEFT keeps the sum inside the budget * however many phases there turn out to be. */ unsigned remainingSeconds() const; + /** remainingSeconds for a budget of `timeout`, without a Caller: what main + * sizes the alternating phases with. */ + static unsigned remainingOf(unsigned timeout); /** @brief Function to compile original C file removing external memory * operations calls */ void compileCFile(bool is_llvm_bc); @@ -185,6 +188,16 @@ class Caller { * fuzzer down the same path. Returns how many seeds were written. */ unsigned exportKleeVectorsAsSeeds(); + /** Set by main under --alternate-engines (tacas 3b): the most this phase's + * engine may run, in seconds, instead of its fixed share of the budget (0: + * the fixed shares). */ + double engineWindow = 0; + /** Seconds without new coverage after which the engine is stopped (0: never). + * AFL++ gets it as AFL_EXIT_ON_TIME; KLEE is watched through run.stats. */ + unsigned stagnationLimit = 0; + /** Whether this phase's KLEE was stopped for stagnating: incomplete. */ + bool stoppedOnStagnation = false; + /** At most this many fuzzer queue entries are converted into KLEE seeds. */ static constexpr size_t kMaxSeedsFromFuzzer = 64; @@ -232,6 +245,13 @@ class Caller { /** Applies MAP2CHECK_SLICE_CLEANUP to a fresh slice, in place; on failure * the slice is kept as the slicer wrote it. */ void cleanUpSlice(const std::string& slice); + /** Runs the KLEE command, stopping it (SIGINT) once it stagnates for + * stagnationLimit seconds; plain system() when the limit is 0 or the build + * has no SQLite to read KLEE's stats with. Returns system()'s status. */ + int runKleeWatched(const std::string& command); + /** Keeps KLEE's latest tests (at most kMaxSeedsFromFuzzer) in the seed + * store's kleeprev/, to seed its next turn. */ + void keepKleeTestsAsSeeds(); }; } // namespace Map2Check diff --git a/modules/frontend/map2check.cpp b/modules/frontend/map2check.cpp index c6ef83f84..22a257d67 100644 --- a/modules/frontend/map2check.cpp +++ b/modules/frontend/map2check.cpp @@ -32,6 +32,7 @@ #include "test_suite/ktest_reader.hpp" #include "test_suite/test_suite.hpp" #include "utils/gen_crypto_hash.hpp" +#include "utils/alternation.hpp" #include "utils/log.hpp" #include "utils/sha256.hpp" #include "witness/witness_include.hpp" @@ -407,6 +408,14 @@ struct map2check_args { bool seedExchange = false; // 1..3 on the hybrid path (fuzzer, KLEE, fuzzer), 0 for a single engine. int phase = 0; + // --alternate-engines (tacas 3b): the engines take turns, each phase bounded + // by its window and stopped when it stagnates. 0 keeps the fixed shares. + bool alternateEngines = false; + double engineWindow = 0; + unsigned stagnationLimit = 0; + // Whether this phase's fuzzer corpus is converted into seeds for a KLEE + // phase that follows; -1: the fixed hybrid's rule (the first phase only). + int feedsKlee = -1; bool sliceProgram = false; std::string testSuiteDir = "test-suite"; std::string propertyFile; @@ -424,6 +433,45 @@ static std::string lastSeedStore; // The slice cache of the last phase, removed by main with the seed store. static std::string lastSliceCache; +int map2check_execution(map2check_args args); + +/** The hybrid under --alternate-engines (tacas 3b spec): the fuzzer and KLEE + * take turns, fuzzer first, until a violation, a proof, or too little time + * for another phase. Each phase is bounded by its window -- doubled every + * round of that engine -- and ends earlier when its engine stagnates, handing + * the rest back. The fixed 0.2/0.6/0.2 split held an engine that had stopped + * progressing to the end of its share, and cut one that still was. */ +int alternateEngines(map2check_args args) { + const double budget = args.timeout; + const unsigned quiet = Map2Check::stagnationSeconds(budget); + unsigned rounds[2] = {0, 0}; + for (int phase = 1;; ++phase) { + const bool klee = (phase % 2 == 0); + const double left = Map2Check::Caller::remainingOf(args.timeout); + if (phase > 1 && left < quiet) break; + const Map2Check::Engine engine = + klee ? Map2Check::Engine::Klee : Map2Check::Engine::Fuzzer; + const unsigned round = ++rounds[klee ? 1 : 0]; + args.generator = klee ? Map2Check::NonDetGenerator::Klee + : Map2Check::NonDetGenerator::AFLPlusPlus; + args.phase = phase; + args.engineWindow = + Map2Check::alternationWindow(engine, round, budget, left); + args.stagnationLimit = quiet; + // Replaying the corpus for a KLEE phase that will not get to run is + // pure cost. + args.feedsKlee = (!klee && left - args.engineWindow >= quiet) ? 1 : 0; + Map2Check::Log::Info("Alternation phase " + std::to_string(phase) + ": " + + (klee ? "KLEE" : "AFL++") + ", window " + + std::to_string(static_cast( + args.engineWindow)) + " s"); + const int result = map2check_execution(args); + if (result != SUCCESS) return result; + if (foundViolation || provedSafe) break; + } + return SUCCESS; +} + int map2check_execution(map2check_args args) { Map2Check::Log::Info("Started Map2Check"); // TODO(rafa.sa.xp@gmail.com): Check current mode @@ -503,7 +551,10 @@ int map2check_execution(map2check_args args) { std::error_code cacheError; std::filesystem::remove_all(caller->sliceCachePath(), cacheError); } - caller->feedsKleePhase = (args.phase == 1); + caller->feedsKleePhase = + args.feedsKlee >= 0 ? (args.feedsKlee == 1) : (args.phase == 1); + caller->engineWindow = args.engineWindow; + caller->stagnationLimit = args.stagnationLimit; caller->sliceProgram = args.sliceProgram; caller->setTimeout(args.timeout); caller->entryFunction = args.entryFunction; @@ -805,6 +856,10 @@ z3 (Z3 is default), btor (Boolector), and yices2 (Yices))") "the assertions (--check-asserts) or the runtime checks (--memtrack, " "--memcleanup-property, --check-overflow) before analysing it; needs " "sbt-slicer") + ("alternate-engines", + "\tlet the fuzzer and KLEE take turns, each stopped once it stops " + "finding coverage, with windows that double every round (implies " + "--seed-exchange; hybrid runs only)") ("seed-exchange", "\tlet the two engines hand each other input vectors through a shared " "seed corpus (hybrid runs; off by default)") @@ -923,6 +978,10 @@ z3 (Z3 is default), btor (Boolector), and yices2 (Yices))") if (vm.count("seed-exchange")) { args.seedExchange = true; } + if (vm.count("alternate-engines")) { + args.alternateEngines = true; + args.seedExchange = true; + } if (vm.count("cover-branches")) { args.coverBranches = true; // The mode has to change too, not just the emitter. Without this the run @@ -1018,6 +1077,10 @@ z3 (Z3 is default), btor (Boolector), and yices2 (Yices))") } } } seedStoreCleanup{args}; + if (args.generator == Map2Check::NonDetGenerator::None && + args.alternateEngines) { + return alternateEngines(args); + } if(args.generator == Map2Check::NonDetGenerator::None) { args.generator = Map2Check::NonDetGenerator::AFLPlusPlus; args.phase = 1; diff --git a/modules/frontend/test_suite/test_suite.cpp b/modules/frontend/test_suite/test_suite.cpp index 488031a99..29060bbe2 100644 --- a/modules/frontend/test_suite/test_suite.cpp +++ b/modules/frontend/test_suite/test_suite.cpp @@ -8,6 +8,7 @@ #include "test_suite.hpp" +#include #include #include #include @@ -95,7 +96,32 @@ std::vector readNonDetLog(const std::string& csvPath) { } TestSuiteWriter::TestSuiteWriter(std::string directory) - : directory(std::move(directory)), counter(0) {} + : directory(std::move(directory)), counter(0) { + // After the cases already there: with the engines alternating, more than one + // phase writes into the same suite, and counting from 1 again overwrote the + // earlier phase's cases (tacas 3b spec). + std::error_code ec; + for (const auto& entry : + std::filesystem::directory_iterator(this->directory, ec)) { + const std::string name = entry.path().filename().string(); + static const std::string kPrefix = "testcase-"; + static const std::string kSuffix = ".xml"; + if (name.size() <= kPrefix.size() + kSuffix.size() || + name.compare(0, kPrefix.size(), kPrefix) != 0 || + name.compare(name.size() - kSuffix.size(), kSuffix.size(), kSuffix) != + 0) { + continue; + } + const std::string digits = name.substr( + kPrefix.size(), name.size() - kPrefix.size() - kSuffix.size()); + if (digits.empty() || digits.size() > 9 || + digits.find_first_not_of("0123456789") != std::string::npos) { + continue; + } + this->counter = std::max( + this->counter, static_cast(std::stoul(digits))); + } +} bool TestSuiteWriter::writeMetadata(const TestSuiteMetadata& metadata) { std::error_code ec; diff --git a/modules/frontend/utils/alternation.hpp b/modules/frontend/utils/alternation.hpp new file mode 100644 index 000000000..8faf126ea --- /dev/null +++ b/modules/frontend/utils/alternation.hpp @@ -0,0 +1,67 @@ +/** + * Copyright (C) 2014 - 2026 Map2Check tool + * This file is part of the Map2Check tool, and is made available under + * the terms of the GNU General Public License version 2. + * + * SPDX-License-Identifier: (GPL-2.0) + **/ + +#ifndef MODULES_FRONTEND_UTILS_ALTERNATION_HPP_ +#define MODULES_FRONTEND_UTILS_ALTERNATION_HPP_ + +#include +#include + +namespace Map2Check { + +/** The two engines --alternate-engines takes turns with (tacas 3b spec). */ +enum class Engine { Fuzzer, Klee }; + +/** The most a phase of `engine` may take in its `round`-th turn (1-based): + * 0.1T for the fuzzer and 0.3T for KLEE, doubled every round, never more than + * what is left. The doubling is what lets an engine the alternation did not + * help come back with more time; an engine that stagnates earlier hands the + * rest back at once. */ +inline double alternationWindow(Engine engine, unsigned round, double budget, + double remaining) { + const double base = (engine == Engine::Fuzzer ? 0.1 : 0.3) * budget; + const double window = base * std::pow(2.0, round > 0 ? round - 1 : 0); + return std::min(window, remaining); +} + +/** How long an engine may go without new coverage before it is stagnant: + * 5% of the budget, at least 10 s (15 s at the Test-Comp 300 s). Also the + * least a phase must have left to be worth starting. */ +inline unsigned stagnationSeconds(double budget) { + return static_cast(std::max(10.0, 0.05 * budget)); +} + +/** Decides from successive coverage samples whether an engine stagnated: no + * increase for `quietSeconds` since the last one. A sample of -1 means the + * reading failed (KLEE's stats database busy or not written yet) and is no + * evidence either way; the clock starts at the first real sample. */ +class CoverageWatch { + public: + explicit CoverageWatch(double quietSeconds) : quiet(quietSeconds) {} + + bool stagnated(long long covered, double now) { + if (covered < 0) return false; + if (!seen || covered > last) { + seen = true; + last = covered; + since = now; + return false; + } + return now - since >= quiet; + } + + private: + double quiet; + bool seen = false; + long long last = 0; + double since = 0; +}; + +} // namespace Map2Check + +#endif // MODULES_FRONTEND_UTILS_ALTERNATION_HPP_ diff --git a/modules/frontend/utils/seed_store.hpp b/modules/frontend/utils/seed_store.hpp index 70f52ff89..5d0396ccf 100644 --- a/modules/frontend/utils/seed_store.hpp +++ b/modules/frontend/utils/seed_store.hpp @@ -30,12 +30,15 @@ inline std::string seedStorePath(const std::string& cwd, /** The AFL++ queue entries to hand to KLEE: only real entries ("id:..."), * in queue order -- AFL++ zero-pads the id, so lexicographic order is id * order, oldest (simplest) first -- and at most `cap` of them, so replaying - * them cannot eat the phase. */ + * them cannot eat the phase. Not the seeds the fuzzer started from (",orig:"): + * those are KLEE's own vectors or an earlier round's entries, which KLEE + * already has. */ inline std::vector selectQueueEntries( std::vector names, size_t cap) { names.erase(std::remove_if(names.begin(), names.end(), [](const std::string& name) { - return name.rfind("id:", 0) != 0; + return name.rfind("id:", 0) != 0 || + name.find(",orig:") != std::string::npos; }), names.end()); std::sort(names.begin(), names.end()); diff --git a/tests/integration/test_testcomp_regressions.sh b/tests/integration/test_testcomp_regressions.sh index 5ad3ca662..c0fecf13f 100755 --- a/tests/integration/test_testcomp_regressions.sh +++ b/tests/integration/test_testcomp_regressions.sh @@ -1118,6 +1118,68 @@ else fail "slice failure cache" "sbt-slicer ran $slicer_runs time(s); cached failure logged: $(grep -c 'no usable output (cached' "$WORK/slicecache/vla.log")" fi +# --- 32. the fuzzer's input runs out as zeros, not as a replay of itself ----- +# Past the end of the test case the AFL++ generator used to start over from +# its first byte, so `while (__VERIFIER_nondet_int())` fed by the placeholder +# seed "A" never ended: afl-fuzz's dry run timed out on it and the fuzzer +# aborted before its first execution -- on the loop idiom sv-benchmarks is +# full of. Reads past the end now return zero. +mkdir -p "$WORK/aflloop" +cat > "$WORK/aflloop/loop.c" <<'EOF2' +extern void __assert_fail(const char *, const char *, unsigned int, + const char *) __attribute__((__noreturn__)); +void reach_error(void) { __assert_fail("0", "loop.c", 3, "reach_error"); } +extern int __VERIFIER_nondet_int(void); +int main(void) { + while (__VERIFIER_nondet_int()) { + if (__VERIFIER_nondet_int() == 7) { reach_error(); } + } + return 0; +} +EOF2 +( cd "$WORK/aflloop" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 200 "$MAP2CHECK" \ + --target-function --target-function-name reach_error --nondet-generator afl \ + --timeout 45 loop.c ) > "$WORK/aflloop/loop.log" 2>&1 +if grep -q "VERIFICATION FAILED" "$WORK/aflloop/loop.log"; then + ok "a nondet-driven loop does not hang the fuzzer's dry run" +else + fail "fuzzer on a nondet loop" "expected FAILED, got: $(grep -aoE 'VERIFICATION [A-Z]+' "$WORK/aflloop/loop.log" | tail -1)" +fi + +# --- 33. --alternate-engines takes turns and stops a stagnant KLEE ---------- +# The fixed 0.2/0.6/0.2 split held an engine that had stopped progressing to +# the end of its share. Alternating, each phase ends when its engine stagnates +# and the other gets the time; KLEE stopped that way was left with states, so +# the run is never TRUE, and the whole run stays inside its budget. +mkdir -p "$WORK/alternate" +cat > "$WORK/alternate/grow.c" <<'EOF2' +extern void __assert_fail(const char *, const char *, unsigned int, + const char *) __attribute__((__noreturn__)); +void reach_error(void) { __assert_fail("0", "grow.c", 3, "reach_error"); } +extern int __VERIFIER_nondet_int(void); +int main(void) { + int s = 0; + while (__VERIFIER_nondet_int()) { + if (__VERIFIER_nondet_int() > 0) s += 1; else s += 2; + if (s < 0) { reach_error(); } + } + return 0; +} +EOF2 +t0=$(date +%s) +( cd "$WORK/alternate" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 200 "$MAP2CHECK" \ + --alternate-engines --target-function --target-function-name reach_error \ + --timeout 60 grow.c ) > "$WORK/alternate/grow.log" 2>&1 +t1=$(date +%s) +phases=$(grep -c "Alternation phase" "$WORK/alternate/grow.log") +if [ "$phases" -ge 3 ] && grep -q "KLEE stagnated" "$WORK/alternate/grow.log" && \ + ! grep -q "VERIFICATION SUCCEEDED" "$WORK/alternate/grow.log" && \ + [ $((t1 - t0)) -le 75 ]; then + ok "the engines alternate, a stagnant KLEE is stopped, no TRUE ($phases phases, $((t1 - t0)) s)" +else + fail "alternation" "phases=$phases stagnated=$(grep -c 'KLEE stagnated' "$WORK/alternate/grow.log") elapsed=$((t1 - t0))s verdict=$(grep -aoE 'VERIFICATION [A-Z]+' "$WORK/alternate/grow.log" | tail -1)" +fi + echo " ---" echo " Results: $PASSED passed, $FAILED failed" [ "$FAILED" -eq 0 ] || exit 1 diff --git a/tests/unit/frontend/AlternationTest.cpp b/tests/unit/frontend/AlternationTest.cpp new file mode 100644 index 000000000..0f217bf9b --- /dev/null +++ b/tests/unit/frontend/AlternationTest.cpp @@ -0,0 +1,53 @@ +/** + * Copyright (C) 2014 - 2026 Map2Check tool + * This file is part of the Map2Check tool, and is made available under + * the terms of the GNU General Public License version 2. + * + * SPDX-License-Identifier: (GPL-2.0) + **/ + +#include + +#include "../../../modules/frontend/utils/alternation.hpp" + +using Map2Check::Engine; + +TEST(AlternationWindow, StartsAtTheBaseShareOfTheBudget) { + EXPECT_DOUBLE_EQ(Map2Check::alternationWindow(Engine::Fuzzer, 1, 300, 300), + 30); + EXPECT_DOUBLE_EQ(Map2Check::alternationWindow(Engine::Klee, 1, 300, 270), 90); +} + +TEST(AlternationWindow, DoublesEveryRound) { + EXPECT_DOUBLE_EQ(Map2Check::alternationWindow(Engine::Fuzzer, 2, 300, 300), + 60); + EXPECT_DOUBLE_EQ(Map2Check::alternationWindow(Engine::Klee, 3, 300, 1000), + 360); +} + +TEST(AlternationWindow, NeverExceedsWhatIsLeft) { + EXPECT_DOUBLE_EQ(Map2Check::alternationWindow(Engine::Klee, 2, 300, 40), 40); +} + +TEST(StagnationSeconds, IsFivePercentButAtLeastTen) { + EXPECT_EQ(Map2Check::stagnationSeconds(300), 15u); + EXPECT_EQ(Map2Check::stagnationSeconds(60), 10u); +} + +TEST(CoverageWatch, StagnatesOnlyAfterTheQuietPeriod) { + Map2Check::CoverageWatch watch(10); + EXPECT_FALSE(watch.stagnated(100, 0)); + EXPECT_FALSE(watch.stagnated(100, 9)); + EXPECT_FALSE(watch.stagnated(120, 9.5)); // progress resets the clock + EXPECT_FALSE(watch.stagnated(120, 19)); + EXPECT_TRUE(watch.stagnated(120, 19.5)); +} + +TEST(CoverageWatch, AnUnreadableSampleIsNotEvidence) { + Map2Check::CoverageWatch watch(10); + EXPECT_FALSE(watch.stagnated(-1, 0)); + EXPECT_FALSE(watch.stagnated(-1, 50)); // never read: no verdict on progress + EXPECT_FALSE(watch.stagnated(5, 51)); + EXPECT_FALSE(watch.stagnated(-1, 60)); + EXPECT_TRUE(watch.stagnated(5, 61.5)); +} diff --git a/tests/unit/frontend/CMakeLists.txt b/tests/unit/frontend/CMakeLists.txt index 4c2c50205..3c734e637 100644 --- a/tests/unit/frontend/CMakeLists.txt +++ b/tests/unit/frontend/CMakeLists.txt @@ -25,3 +25,8 @@ add_executable(SeedStoreTest SeedStoreTest.cpp ) map2check_test(SeedStoreTest) + +add_executable(AlternationTest + AlternationTest.cpp +) +map2check_test(AlternationTest) diff --git a/tests/unit/frontend/SeedStoreTest.cpp b/tests/unit/frontend/SeedStoreTest.cpp index cd8badf55..b8749846c 100644 --- a/tests/unit/frontend/SeedStoreTest.cpp +++ b/tests/unit/frontend/SeedStoreTest.cpp @@ -28,8 +28,9 @@ TEST(SelectQueueEntries, KeepsOnlyQueueEntriesInIdOrderUpToTheCap) { const std::vector chosen = Map2Check::selectQueueEntries(names, 2); ASSERT_EQ(chosen.size(), 2u); - EXPECT_EQ(chosen[0], "id:000000,time:0,execs:0,orig:seed"); - EXPECT_EQ(chosen[1], "id:000001,src:000000,time:5"); + // The ",orig:" seed is not the fuzzer's discovery (see the test below). + EXPECT_EQ(chosen[0], "id:000001,src:000000,time:5"); + EXPECT_EQ(chosen[1], "id:000002,src:000000,time:9"); } TEST(IsNewVector, RejectsEmptyAndDuplicateVectors) { @@ -39,3 +40,14 @@ TEST(IsNewVector, RejectsEmptyAndDuplicateVectors) { EXPECT_FALSE(Map2Check::isNewVector({1, 2}, &seen)); EXPECT_TRUE(Map2Check::isNewVector({1, 3}, &seen)); } + +// The fuzzer's own seeds come back in its queue tagged ",orig:" -- the KLEE +// vectors, the previous rounds' entries -- and KLEE already has those. Only +// what this round discovered is worth replaying (tacas 3b). +TEST(SelectQueueEntries, SkipsTheSeedsTheFuzzerStartedFrom) { + const auto picked = Map2Check::selectQueueEntries( + {"id:000000,time:0,execs:0,orig:klee-0", "id:000001,src:000000,op:havoc"}, + 8); + ASSERT_EQ(picked.size(), 1u); + EXPECT_EQ(picked[0], "id:000001,src:000000,op:havoc"); +} diff --git a/tests/unit/frontend/TestSuiteTest.cpp b/tests/unit/frontend/TestSuiteTest.cpp index e8dafdec5..1af5481f9 100644 --- a/tests/unit/frontend/TestSuiteTest.cpp +++ b/tests/unit/frontend/TestSuiteTest.cpp @@ -262,3 +262,20 @@ TEST(IsoUtcNow, MatchesTheFormatTheFormatExpects) { EXPECT_EQ(now[16], ':'); EXPECT_EQ(now[19], 'Z'); } + +// Engines alternate (tacas 3b): more than one phase writes test cases into the +// same suite. A writer counting from 1 again overwrote the earlier phase's. +TEST(TestSuiteWriter, NumbersAfterTheCasesAlreadyThere) { + fs::path d = freshDir("tc_continue"); + { + Map2Check::TestSuiteWriter first(d.string()); + ASSERT_TRUE(first.writeTestCase({"1"}, false)); + ASSERT_TRUE(first.writeTestCase({"2"}, false)); + } + Map2Check::TestSuiteWriter second(d.string()); + ASSERT_TRUE(second.writeTestCase({"3"}, false)); + EXPECT_NE(slurp(d / "testcase-1.xml").find("1"), + std::string::npos); + EXPECT_NE(slurp(d / "testcase-3.xml").find("3"), + std::string::npos); +} From 2e931ba094a901fe83ea18c00be8c10248fc4c0c Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 14:24:07 -0400 Subject: [PATCH 22/88] docs(schedule): phases 2 and 3 as the TACAS line delivered them Slicing through sbt-slicer rather than a linked dg, the AFL++/KLEE coordination inside the C++ frontend rather than a Python coordinator with IPC, the verdict fixes the TACAS rounds found, and what is still open (2.4 knobs and 3.2.4 in R19, 3c ranking, the MemoryTrackPass intrinsics). Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/migration-schedule.md | 67 +++++++++++++++++++++++++++----------- 1 file changed, 48 insertions(+), 19 deletions(-) diff --git a/docs/migration-schedule.md b/docs/migration-schedule.md index 17b23e94e..d2a4c039d 100644 --- a/docs/migration-schedule.md +++ b/docs/migration-schedule.md @@ -4,6 +4,15 @@ **Fim previsto:** 30/Mai/2027 **Regime:** ~5h/dia útil de desenvolvimento efetivo +> **Situação em 29/Set/2026 — linha TACAS.** As fases 2 e 3 foram antecipadas e entregues +> por um caminho diferente do planejado abaixo: o slicing usa o `sbt-slicer` (dg) como +> processo externo, e não uma biblioteca integrada; a coordenação AFL++ ↔ KLEE roda dentro +> do frontend C++, e não num coordenador Python com IPC. As tabelas das fases 2 e 3 trazem +> o status real e onde cada item foi feito. Medições em `docs/reports/tacas-experiment-log.md` +> (rodadas R1–R19). Resultado de referência (R15, Cover-Error, 213 tarefas, 300 s): controle +> tacasv2 **129 cobertas** × v15 111, TRUE errado 27 → 5, tempo mediano 43 → 5 s; com a troca +> de sementes (R16) **148 cobertas**. + --- ## Métricas do Codebase Atual @@ -176,19 +185,19 @@ | Done | ID | Tarefa | Início | Fim | Dias | Teste | Relatório | |:-----|:---|:-------|:-------|:----|:-----|:------|:----------| -| ☐ | 2.1.1 | Criar `FindDG.cmake` (FetchContent de `mchalupa/dg`) | 28/Set | 30/Set | 3 | DG compila com LLVM 16 | — | -| ☐ | 2.1.2 | Validar `llvm-slicer` standalone no container | 01/Out | 02/Out | 2 | Slice de programa simples funciona | — | -| ☐ | 2.1.3 | Criar módulo `SlicingPreprocessor` (API C++) | 05/Out | 16/Out | 10 | Testes unitários do módulo | — | -| ☐ | 2.1.4 | Definir critério de slicing automático (`__VERIFIER_error` + MemSafety) | 19/Out | 23/Out | 5 | Slice preserva instruções de interesse | `docs/migration/2.1-dg-library.md` | +| ✅ | 2.1.1 | ~~`FindDG.cmake`~~ → `sbt-slicer` (dg) instalado no `Dockerfile.dev` em `/opt/sbt-slicer` | 28/Set | 26/Set | — | Slicer roda com LLVM 16 | tacasv2a | +| ✅ | 2.1.2 | Validar o slicer standalone no container | 01/Out | 26/Set | — | Slice de programa simples funciona | tacasv2a | +| ✅ | 2.1.3 | ~~`SlicingPreprocessor`~~ → `Caller::runSlicer` + `utils/slicer.hpp` (critérios, estatísticas, stub do alvo) | 05/Out | 27/Set | — | `SlicerTest` (21 testes) | specs `2026-09-2{6,7}-tacasv2{a,b,c}-*` | +| ✅ | 2.1.4 | Critérios por propriedade: alvo/assert antes da instrumentação; `map2check_*` + nondets + externas + intrínsecos de memória depois dela (memsafety, memcleanup, overflow) | 19/Out | 27/Set | — | Integração §13–§25 | `docs/reports/tacas-experiment-log.md` (R1–R14b) | ### 2.2 Integração no Pipeline (Semanas 18-20) | Done | ID | Tarefa | Início | Fim | Dias | Teste | Relatório | |:-----|:---|:-------|:-------|:----|:-----|:------|:----------| -| ☐ | 2.2.1 | Adicionar opção `--slice` ao CLI | 26/Out | 27/Out | 2 | `map2check --help` mostra opção | — | -| ☐ | 2.2.2 | Integrar pipeline: `C → IR → Slice → Instrumentação → Análise` | 28/Out | 06/Nov | 8 | Suite completa com `--slice` ativo | — | -| ☐ | 2.2.3 | Testes comparativos: com e sem slicing nos 9 benchmarks | 09/Nov | 13/Nov | 5 | Tabela de redução de tamanho bitcode | — | -| ☐ | 2.2.4 | Testes em benchmarks SV-COMP ReachSafety (amostra) | 16/Nov | 20/Nov | 5 | ≥ baseline em cobertura | `docs/migration/2.2-slicing-pipeline.md` | +| ✅ | 2.2.1 | Opção `--slice` no CLI | 26/Out | 26/Set | — | `map2check --help` mostra opção | tacasv2a | +| ✅ | 2.2.2 | Pipeline `C → IR → Slice → Instrumentação → Análise` (e slice pós-instrumentação para memória/overflow) | 28/Out | 27/Set | — | Integração com `--slice` | tacasv2a/b/c | +| ✅ | 2.2.3 | Comparativos controle × slice (Test-Comp, MemSafety, NoOverflows, CASTLE, Juliet) | 09/Nov | 28/Set | — | R8–R15 | `docs/reports/tacas-experiment-log.md` | +| ⏳ | 2.2.4 | Test-Comp Cover-Error: slice **empata** com o controle (126 × 129, R15) — otimizações na 2.4 | 16/Nov | — | — | ≥ controle em cobertas, TRUE errado = 0 | R15, R19 | ### 2.3 Validação e Buffer (Semanas 21-22) @@ -197,6 +206,15 @@ | ☐ | 2.3.1 | Medir impacto: memória, tempo, taxa de unknown | 23/Nov | 27/Nov | 5 | Relatório quantitativo | `docs/migration/2.3-fase2-final.md` | | ☐ | 2.3.2 | **Buffer/contingência** | 30/Nov | 04/Dez | 5 | — | — | +### 2.4 Otimizações do slicing — tacas 2d (Set/2026) + +| Done | ID | Tarefa | Teste | Relatório | +|:-----|:---|:-------|:------|:----------| +| ✅ | 2.4.1 | Fatiar uma vez por execução (cache `.slice/`, inclusive da falha do slicer) — elimina os 4 ERROR de ECA da R15 | Integração §31 | spec `2026-09-29-tacas-2d-slicing-optimizations-design.md` | +| ⏳ | 2.4.2 | Limpeza pós-slice (`MAP2CHECK_SLICE_CLEANUP` = `light` ou `o2`) — em medição | R19 | — | +| ⏳ | 2.4.3 | Parâmetros do dg (`--cda=ntscd`, `--pta=fs`) — em medição | R19 | — | +| ☐ | 2.4.4 | Cutoff-diverging com `!dbg` (só se 2.4.1–2.4.3 não bastarem) | — | — | + > **Marco Fase 2:** Slicing funcional, redução mensurável em timeouts > **Data-alvo:** 04/Dez/2026 @@ -208,29 +226,40 @@ | Done | ID | Tarefa | Início | Fim | Dias | Teste | Relatório | |:-----|:---|:-------|:-------|:----|:-----|:------|:----------| -| ☐ | 3.1.1 | `FindAFLPlusPlus.cmake` — compilar/instalar AFL++ 4.40c | 07/Dez | 11/Dez | 5 | `afl-fuzz --version` OK | — | -| ☐ | 3.1.2 | Instrumentação AFL++ com LLVM 16 (modo PCGUARD) | 14/Dez | 18/Dez | 5 | Programa de teste instrumentado e fuzzado | — | -| ☐ | 3.1.3 | Wrapper de compilação para programas com instrumentação AFL++ | 21/Dez | 24/Dez | 4 | Programa fuzzeado encontra crash | — | -| ☐ | 3.1.4 | Validação: fuzzing standalone em benchmarks simples | 05/Jan | 09/Jan | 5 | ≥3 crashes encontrados em programas unsafe | `docs/migration/3.1-aflpp.md` | +| ✅ | 3.1.1 | AFL++ 4.40c no `Dockerfile.dev` (toolchain em `/usr/local/bin`), substituindo o LibFuzzer | 07/Dez | 25/Set | — | `afl-fuzz --version` OK | tacasv1 | +| ✅ | 3.1.2 | Instrumentação PCGUARD + modo persistente + binário CmpLog | 14/Dez | 26/Set | — | Programa instrumentado e fuzzado | tacasv1 | +| ✅ | 3.1.3 | Pipeline de compilação AFL++ no `Caller` + replay de crash pelo binário witness | 21/Dez | 26/Set | — | Crash confirmado por replay | tacasv1 | +| ✅ | 3.1.4 | Validação em Test-Comp; correções: leitura após o fim da entrada devolve zero (laços `while(nondet)` travavam o dry run) | 05/Jan | 29/Set | — | Integração §32 | spec `2026-09-25-tacasv1-aflpp-migration-design.md` | ### 3.2 Coordenador Central (Semanas 27-30) | Done | ID | Tarefa | Início | Fim | Dias | Teste | Relatório | |:-----|:---|:-------|:-------|:----|:-----|:------|:----------| -| ☐ | 3.2.1 | Criar módulo `coordinator/` (Python + subprocess) | 12/Jan | 16/Jan | 5 | Testes unitários do módulo | — | -| ☐ | 3.2.2 | IPC POSIX: shared memory + semáforos | 19/Jan | 23/Jan | 5 | Comunicação bidirecional testada | — | -| ☐ | 3.2.3 | Ciclo de vida: AFL++ → monitoramento → KLEE → reinjeção | 26/Jan | 06/Fev | 10 | Programa simples verificado end-to-end | — | -| ☐ | 3.2.4 | Heurística de Desbloqueio de Fronteira (Δt, proximidade) | 09/Fev | 13/Fev | 5 | Detecção de estagnação + branch flipping | `docs/migration/3.2-coordinator.md` | +| ✅ | 3.2.1 | ~~`coordinator/` em Python~~ → laço `alternateEngines()` no frontend C++ (`--alternate-engines`) | 12/Jan | 29/Set | — | `AlternationTest` | spec `2026-09-29-tacas-3b-engine-alternation-design.md` | +| ✅ | 3.2.2 | ~~IPC POSIX~~ → troca por arquivos no store `.seeds/` (fases sequenciais, 1 núcleo) | 19/Jan | 28/Set | — | Integração §11, §26–§28 | tacas 3a | +| ✅ | 3.2.3 | Ciclo AFL++ → KLEE → reinjeção, em rodadas com janelas que dobram | 26/Jan | 29/Set | — | Integração §33 | tacas 3b | +| ⏳ | 3.2.4 | Detecção de estagnação (`AFL_EXIT_ON_TIME`; `CoveredInstructions` do `run.stats` do KLEE) — em medição; *branch flipping* por proximidade ainda não | 09/Fev | — | — | R19 | tacas 3b | ### 3.3 Smart Seeds e Validação (Semanas 31-34) | Done | ID | Tarefa | Início | Fim | Dias | Teste | Relatório | |:-----|:---|:-------|:-------|:----|:-----|:------|:----------| -| ☐ | 3.3.1 | Gerenciador de Smart Seeds (serialização, conversão, filtro) | 16/Fev | 20/Fev | 5 | Seeds transferidas AFL++ ↔ KLEE | — | -| ☐ | 3.3.2 | Ranking por densidade SDG | 23/Fev | 27/Fev | 5 | Seeds priorizadas corretamente | — | -| ☐ | 3.3.3 | Teste integrado: pipeline completo com coordenação | 02/Mar | 06/Mar | 5 | Benchmark com melhoria de cobertura | `docs/migration/3.3-fase3-final.md` | +| ✅ | 3.3.1 | Smart seeds: fila do AFL++ → replay tipado → `.ktest`; `.ktest` → bytes do AFL++ (`--seed-exchange`) | 16/Fev | 28/Set | — | `SeedStoreTest`, `KtestReaderTest` | spec `2026-09-28-tacasv3a-smart-seeds-plumbing-design.md` | +| ☐ | 3.3.2 | Ranking de sementes (novidade de cobertura; densidade SDG) — tacas 3c | 23/Fev | — | 5 | Seeds priorizadas corretamente | — | +| ⏳ | 3.3.3 | Teste integrado com coordenação: R16 (seeds 148 × 129 cobertas); R19 (alternância) em curso | 02/Mar | — | — | Benchmark com melhoria de cobertura | `docs/reports/tacas-experiment-log.md` | | ☐ | 3.3.4 | **Buffer/contingência** | 09/Mar | 13/Mar | 5 | — | — | +### 3.4 Correções de veredito achadas nas rodadas TACAS + +| Done | ID | Correção | Teste | +|:-----|:---|:---------|:------| +| ✅ | 3.4.1 | KLEE parado pelo HaltTimer não é prova (TRUE errado 27 → 5 na R15) | Integração | +| ✅ | 3.4.2 | Vetor vazio conta como testemunha (programas sem entrada) | `KtestReaderTest` | +| ✅ | 3.4.3 | `abort()` do programa poda o caminho (`map2check_assume(0)`), não encerra a busca do KLEE | Integração §29 | +| ✅ | 3.4.4 | KLEE que concretizou uma entrada ou matou estados cedo não é prova | Integração §30 | +| ☐ | 3.4.5 | MemoryTrackPass não instrumenta os intrínsecos `llvm.memcpy/memset/memmove` do LLVM 16 | — | +| ☐ | 3.4.6 | Falso positivo do memtrack no busybox `sleep-3` | — | + > **Marco Fase 3:** Coordenador funcional, AFL++ ↔ KLEE com Smart Seeds > **Data-alvo:** 13/Mar/2027 From 902eaf5f052ca48d46cfc0bdeea462479de84f17 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 14:47:18 -0400 Subject: [PATCH 23/88] fix(hybrid): the review of --alternate-engines - The Cover-Branches cap and duplicates count across phases: every KLEE turn added up to 50 cases, mostly replays of the seeds it was given. The writer knows the cases already in the suite, and a run starts from an empty one (re-running in a directory kept the previous run's cases). - Budget: each phase measures its own setup (compile, instrument, link), which no window covers; a phase starts only if what is left covers it, and its window leaves it out. The fuzzer keeps KLEE's 5 s reserve. - The stagnation SIGINT goes to KLEE itself, not to timeout, which forwarded it to the child and its group: two signals, and the halt dump was lost. - KLEE's stagnation period doubles with its rounds, so it can still finish the paths that make a proof after coverage stops rising. - The fuzzer corpus in the store is capped (256), kleeprev/ is kept only when alternating, the store and slice cache are recorded for cleanup as soon as a phase starts, and the flag warns and stands down without --timeout or with --nondet-generator. Co-Authored-By: Claude Opus 5.5 (1M context) --- ...9-29-tacas-3b-engine-alternation-design.md | 30 ++++++- modules/frontend/caller.cpp | 54 +++++++++++-- modules/frontend/caller.hpp | 5 ++ modules/frontend/map2check.cpp | 79 ++++++++++++++++--- modules/frontend/test_suite/test_suite.cpp | 44 +++++++++++ modules/frontend/test_suite/test_suite.hpp | 15 +++- modules/frontend/utils/alternation.hpp | 8 ++ tests/unit/frontend/AlternationTest.cpp | 6 ++ tests/unit/frontend/TestSuiteTest.cpp | 28 +++++++ 9 files changed, 248 insertions(+), 21 deletions(-) diff --git a/docs/superpowers/specs/2026-09-29-tacas-3b-engine-alternation-design.md b/docs/superpowers/specs/2026-09-29-tacas-3b-engine-alternation-design.md index 5625799dd..e1ade5085 100644 --- a/docs/superpowers/specs/2026-09-29-tacas-3b-engine-alternation-design.md +++ b/docs/superpowers/specs/2026-09-29-tacas-3b-engine-alternation-design.md @@ -51,9 +51,15 @@ alimenta. **O que o AFL++ recebe:** o `store/afl` já acumula a fila do AFL++ e os vetores do KLEE, então nada muda. -**Seleção das entradas da fila (`selectQueueEntries`):** passa a **pular as entradas já -exportadas** em rodadas anteriores. Os nomes exportados ficam registrados em -`store/exported.txt`. Sem isso, toda rodada reenviaria as mesmas 64 primeiras. +**Seleção das entradas da fila (`selectQueueEntries`):** passa a **pular as sementes com +que o fuzzer começou** (entradas `,orig:`): são vetores do KLEE ou de rodadas anteriores, +que o KLEE já tem. O `store/ktest` é limpo a cada exportação, porque os `.ktest` da rodada +KLEE anterior (`kleeprev/`) carregam o que ela já explorou. (A primeira versão deste spec +previa um `store/exported.txt`; o efeito é o mesmo com menos estado.) + +**Limites da troca:** no máximo 64 vetores do KLEE vão para uma janela curta do AFL++, e o +corpus do AFL++ no store fica abaixo de 256 entradas. O `afl-fuzz` calibra todas as +entradas antes de mutar, e 1000+ vetores do KLEE consumiram a janela inteira num teste. ### Estagnação @@ -67,7 +73,9 @@ exportadas** em rodadas anteriores. Os nomes exportados ficam registrados em - O KLEE para de forma limpa: grava os testes dos estados que já terminaram. - A fase é marcada como **incompleta** (`gotTimeout`). A execução nunca vira TRUE por isso. -- **Valor de S:** `max(10 s, 0,05T)`, que dá 15 s em T = 300. +- **Valor de S:** `max(10 s, 0,05T)`, que dá 15 s em T = 300, para o AFL++. Para o KLEE, + S dobra a cada rodada dele: a cobertura de instruções para de subir bem antes de o KLEE + terminar os caminhos que formam uma prova, e um corte fixo nunca o deixaria chegar lá. - **Sem SQLite:** o SQLite é uma dependência opcional, via `find_package(SQLite3)`. Sem ele, a estagnação do KLEE fica desligada e vale só o teto da janela. O CI, que não instala `libsqlite3-dev`, continua compilando. @@ -78,6 +86,20 @@ exportadas** em rodadas anteriores. Os nomes exportados ficam registrados em mais de uma fase KLEE em Cover-Branches, **uma rodada sobrescreveria a anterior**. O contador passa a começar depois do maior `testcase-N.xml` que já existir no diretório. +### Revisão (2026-09-29), incorporada + +- **Orçamento:** cada fase mede o próprio tempo de preparação (compilar, instrumentar, + linkar), que nenhuma janela conta. Uma fase só começa se sobrar `S + preparação`, e a + janela desconta a preparação. O AFL++ guarda 5 s de reserva, como o KLEE. +- **SIGINT:** vai direto ao PID do KLEE, filho do `timeout`. Mandado ao `timeout`, ele + repassava ao filho e ao grupo, o KLEE recebia dois sinais e perdia o despejo dos estados + vivos. +- **Suíte de Cover-Branches:** o limite de 50 casos vale para a suíte, não para cada fase, + e vetores repetidos entre fases são pulados. A suíte começa vazia a cada execução, o que + evita somar casos de uma execução anterior no mesmo diretório. +- **Flag:** sem `--timeout`, ou com `--nondet-generator`, `--alternate-engines` avisa e + não se aplica. + ## Fora do escopo - **Transformar o corpus do AFL++ em casos de teste de Cover-Branches.** Hoje a suíte de diff --git a/modules/frontend/caller.cpp b/modules/frontend/caller.cpp index 783e78962..3a93de031 100644 --- a/modules/frontend/caller.cpp +++ b/modules/frontend/caller.cpp @@ -213,9 +213,22 @@ int Caller::runKleeWatched(const std::string &command) { .count(); if (!watch.stagnated(kleeCoveredInstructions(stats), now)) continue; + // To KLEE itself, the child of `timeout`: signalled, `timeout` forwards + // to the child AND its process group, KLEE gets two SIGINTs, and the + // second one exits before the halt dump of the live states is written. pid_t pid = 0; std::ifstream("klee.pid") >> pid; - if (pid > 0) kill(pid, SIGINT); + pid_t klee = 0; + if (pid > 0) { + std::ifstream children("/proc/" + std::to_string(pid) + "/task/" + + std::to_string(pid) + "/children"); + children >> klee; + } + if (klee > 0) { + kill(klee, SIGINT); + } else if (pid > 0) { + kill(pid, SIGINT); + } this->stoppedOnStagnation = true; Map2Check::Log::Warning("KLEE stagnated: no new coverage for " + std::to_string(this->stagnationLimit) + @@ -1164,9 +1177,16 @@ void Caller::executeAnalysis(std::string solvername) { } Map2Check::Log::Debug(kleeCommand.str()); + const auto engineStarted = std::chrono::steady_clock::now(); int result = runKleeWatched(kleeCommand.str()); + if (this->engineSeconds != nullptr) { + *this->engineSeconds = std::chrono::duration( + std::chrono::steady_clock::now() - + engineStarted) + .count(); + } if (this->seedExchange) { - keepKleeTestsAsSeeds(); + if (this->stagnationLimit > 0) keepKleeTestsAsSeeds(); // Written after KLEE rather than before the next phase, because the // .ktest files are in the scratch directory that cleanGarbage() will // remove -- and because a later alternation, or a resumed run, should @@ -1214,10 +1234,16 @@ void Caller::executeAnalysis(std::string solvername) { command.str(""); // Against what is LEFT, not against the nominal budget -- see // Caller::remainingSeconds. + // Alternating, the last window can be everything left: keep the same + // reserve KLEE keeps for replaying crashes and writing the suite. const double fuzzerBudget = - std::min(this->engineWindow > 0 ? this->engineWindow - : 0.2 * this->timeout, - static_cast(this->remainingSeconds())); + this->engineWindow > 0 + ? std::max(1.0, + std::min(this->engineWindow, + static_cast(this->remainingSeconds()) - + 5.0)) + : std::min(0.2 * this->timeout, + static_cast(this->remainingSeconds())); // afl-fuzz needs a non-empty -i dir and a -o dir that does not already // exist (the hybrid may run the fuzzer phase twice). // @@ -1276,7 +1302,14 @@ void Caller::executeAnalysis(std::string solvername) { command << " -- ./" << programHash << "-fuzzed.out" << " > fuzzer.output 2>&1"; + const auto engineStarted = std::chrono::steady_clock::now(); int result = system(command.str().c_str()); + if (this->engineSeconds != nullptr) { + *this->engineSeconds = std::chrono::duration( + std::chrono::steady_clock::now() - + engineStarted) + .count(); + } Map2Check::Log::Warning("Exited fuzzer with " + std::to_string(result)); if (result == 31744) // Timeout gotTimeout = true; @@ -1319,11 +1352,22 @@ void Caller::executeAnalysis(std::string solvername) { // the next fuzzer phase starts from this corpus plus KLEE's vectors. if (this->seedExchange) { std::error_code queueErr; + // Alternating, the corpus grows every fuzzer round and afl-fuzz + // calibrates all of it before mutating: bounded, like KLEE's share. + size_t corpus = 0; + if (this->stagnationLimit > 0) { + for (const auto &entry : std::filesystem::directory_iterator( + seedStore + "/afl", queueErr)) { + if (entry.is_regular_file(queueErr)) ++corpus; + } + } for (const auto &entry : std::filesystem::directory_iterator( aflFindings + "/queue", queueErr)) { const std::string name = entry.path().filename().string(); if (!entry.is_regular_file(queueErr)) continue; if (name.find(",orig:") != std::string::npos) continue; + if (this->stagnationLimit > 0 && corpus >= kMaxFuzzerCorpus) break; + ++corpus; std::filesystem::copy_file( entry.path(), seedStore + "/afl/afl-" + name, diff --git a/modules/frontend/caller.hpp b/modules/frontend/caller.hpp index 59ae697e1..62e6f1c67 100644 --- a/modules/frontend/caller.hpp +++ b/modules/frontend/caller.hpp @@ -197,6 +197,11 @@ class Caller { unsigned stagnationLimit = 0; /** Whether this phase's KLEE was stopped for stagnating: incomplete. */ bool stoppedOnStagnation = false; + /** Where to report how long this phase's engine ran (main sizes the next + * alternating phase with it); null: not reported. */ + double* engineSeconds = nullptr; + /** Alternating, the fuzzer's input corpus in the store is kept below this. */ + static constexpr size_t kMaxFuzzerCorpus = 256; /** At most this many fuzzer queue entries are converted into KLEE seeds. */ static constexpr size_t kMaxSeedsFromFuzzer = 64; diff --git a/modules/frontend/map2check.cpp b/modules/frontend/map2check.cpp index 22a257d67..f9453efe4 100644 --- a/modules/frontend/map2check.cpp +++ b/modules/frontend/map2check.cpp @@ -16,6 +16,7 @@ #include "map2check.hpp" #include +#include #include #include #include @@ -177,19 +178,28 @@ void emitTestSuite(const std::string &outputDir, const std::string &programFile, // coversError is false throughout: these vectors are paths, not violations. // The violating one, when there is one, is still in klee_log.csv and still // goes out under Cover-Error. + // + // The cap is on the SUITE, not on this phase: with the engines alternating, + // every KLEE phase adds cases, and later phases replay the vectors earlier + // ones already wrote (seeds) -- those are skipped. if (coverBranches) { + constexpr size_t kMaxKtestsRead = 5000; std::vector> vectors = - Map2Check::readKtestVectors(Map2Check::kleeOutputDir, - kMaxBranchTestCases); + Map2Check::readKtestVectors(Map2Check::kleeOutputDir, kMaxKtestsRead); + size_t written = 0; for (const std::vector &inputs : vectors) { + if (writer.caseCount() >= kMaxBranchTestCases) break; + if (writer.hasTestCase(inputs)) continue; if (!writer.writeTestCase(inputs, false)) { Map2Check::Log::Warning("could not write test case to " + outputDir); return; } + ++written; } Map2Check::Log::Info("Test suite written to " + outputDir + " (" + - std::to_string(vectors.size()) + - " test cases from KLEE paths)"); + std::to_string(written) + + " test cases from KLEE paths, " + + std::to_string(writer.caseCount()) + " in the suite)"); return; } @@ -432,6 +442,9 @@ bool provedSafe = false; static std::string lastSeedStore; // The slice cache of the last phase, removed by main with the seed store. static std::string lastSliceCache; +// How long the last phase's engine ran; the rest of the phase is setup +// (compile, instrument, link) that no engine window accounts for. +static double lastEngineSeconds = 0; int map2check_execution(map2check_args args); @@ -445,28 +458,44 @@ int alternateEngines(map2check_args args) { const double budget = args.timeout; const unsigned quiet = Map2Check::stagnationSeconds(budget); unsigned rounds[2] = {0, 0}; + // The largest setup a phase has needed so far: a phase is started only if + // what is left covers that setup plus a stagnation period of engine time, + // and its window leaves the setup out. On large programs (eca-*) compiling, + // instrumenting and linking take longer than the stagnation period. + double setup = 0; for (int phase = 1;; ++phase) { const bool klee = (phase % 2 == 0); const double left = Map2Check::Caller::remainingOf(args.timeout); - if (phase > 1 && left < quiet) break; + if (phase > 1 && left < quiet + setup) break; const Map2Check::Engine engine = klee ? Map2Check::Engine::Klee : Map2Check::Engine::Fuzzer; const unsigned round = ++rounds[klee ? 1 : 0]; args.generator = klee ? Map2Check::NonDetGenerator::Klee : Map2Check::NonDetGenerator::AFLPlusPlus; args.phase = phase; - args.engineWindow = - Map2Check::alternationWindow(engine, round, budget, left); - args.stagnationLimit = quiet; + args.engineWindow = Map2Check::alternationWindow( + engine, round, budget, std::max(1.0, left - setup)); + // KLEE's patience grows with its rounds: after coverage stops rising it + // may still be enumerating the paths that make a proof, and a fixed cut + // would never let it finish one. + args.stagnationLimit = klee ? Map2Check::stagnationSeconds(budget, round) + : quiet; // Replaying the corpus for a KLEE phase that will not get to run is // pure cost. - args.feedsKlee = (!klee && left - args.engineWindow >= quiet) ? 1 : 0; + args.feedsKlee = + (!klee && left - setup - args.engineWindow >= quiet + setup) ? 1 : 0; Map2Check::Log::Info("Alternation phase " + std::to_string(phase) + ": " + (klee ? "KLEE" : "AFL++") + ", window " + std::to_string(static_cast( args.engineWindow)) + " s"); + const auto started = std::chrono::steady_clock::now(); + lastEngineSeconds = 0; const int result = map2check_execution(args); if (result != SUCCESS) return result; + const double took = std::chrono::duration( + std::chrono::steady_clock::now() - started) + .count(); + setup = std::max(setup, took - lastEngineSeconds); if (foundViolation || provedSafe) break; } return SUCCESS; @@ -551,6 +580,21 @@ int map2check_execution(map2check_args args) { std::error_code cacheError; std::filesystem::remove_all(caller->sliceCachePath(), cacheError); } + // A run starts from an empty suite. Its phases then add to it (see + // TestSuiteWriter), and a suite left in this directory by an earlier run -- + // possibly of another program -- must not be added to. + if (args.generateTestSuite && args.phase <= 1) { + std::string suiteDir = args.testSuiteDir; + if (!fs::path(suiteDir).is_absolute()) { + suiteDir = caller->getOriginalPath() + "/" + suiteDir; + } + Map2Check::TestSuiteWriter::removeTestCases(suiteDir); + } + // Recorded now, not at the end: an exception in this phase must not leak + // the store or the slice cache past the cleanup in main. + lastSeedStore = caller->seedStorePath(); + lastSliceCache = caller->sliceCachePath(); + caller->engineSeconds = &lastEngineSeconds; caller->feedsKleePhase = args.feedsKlee >= 0 ? (args.feedsKlee == 1) : (args.phase == 1); caller->engineWindow = args.engineWindow; @@ -979,8 +1023,21 @@ z3 (Z3 is default), btor (Boolector), and yices2 (Yices))") args.seedExchange = true; } if (vm.count("alternate-engines")) { - args.alternateEngines = true; - args.seedExchange = true; + // Windows and stagnation are fractions of the budget, and turns only + // exist on the hybrid path: without either, say so instead of running + // something else under the flag's name. + if (!vm.count("timeout") || vm["timeout"].as() == 0) { + Map2Check::Log::Warning( + "--alternate-engines needs --timeout: its windows are fractions of " + "the budget -- running the fixed hybrid instead"); + } else if (vm.count("nondet-generator")) { + Map2Check::Log::Warning( + "--alternate-engines applies to the hybrid only -- ignored with " + "--nondet-generator"); + } else { + args.alternateEngines = true; + args.seedExchange = true; + } } if (vm.count("cover-branches")) { args.coverBranches = true; diff --git a/modules/frontend/test_suite/test_suite.cpp b/modules/frontend/test_suite/test_suite.cpp index 29060bbe2..188ee753b 100644 --- a/modules/frontend/test_suite/test_suite.cpp +++ b/modules/frontend/test_suite/test_suite.cpp @@ -120,7 +120,50 @@ TestSuiteWriter::TestSuiteWriter(std::string directory) } this->counter = std::max( this->counter, static_cast(std::stoul(digits))); + // Its inputs, as written (escaped), so a later phase can skip a vector + // the suite already has. + std::ifstream in(entry.path()); + std::stringstream text; + text << in.rdbuf(); + const std::string xml = text.str(); + std::vector inputs; + static const std::string kOpen = "", kClose = ""; + for (size_t at = xml.find(kOpen); at != std::string::npos; + at = xml.find(kOpen, at)) { + const size_t end = xml.find(kClose, at + kOpen.size()); + if (end == std::string::npos) break; + inputs.push_back(xml.substr(at + kOpen.size(), end - at - kOpen.size())); + at = end + kClose.size(); + } + this->cases.insert(inputs); + } +} + +namespace { +std::vector escapedInputs(const std::vector& raw) { + std::vector escaped; + escaped.reserve(raw.size()); + for (const std::string& value : raw) escaped.push_back(escapeXml(value)); + return escaped; +} +} // namespace + +bool TestSuiteWriter::hasTestCase( + const std::vector& inputs) const { + return this->cases.count(escapedInputs(inputs)) > 0; +} + +void TestSuiteWriter::removeTestCases(const std::string& directory) { + std::error_code ec; + std::vector doomed; + for (const auto& entry : std::filesystem::directory_iterator(directory, ec)) { + const std::string name = entry.path().filename().string(); + if (name.rfind("testcase-", 0) == 0 && name.size() > 13 && + name.compare(name.size() - 4, 4, ".xml") == 0) { + doomed.push_back(entry.path()); + } } + for (const auto& path : doomed) std::filesystem::remove(path, ec); } bool TestSuiteWriter::writeMetadata(const TestSuiteMetadata& metadata) { @@ -173,6 +216,7 @@ bool TestSuiteWriter::writeTestCase(const std::vector& inputs, out << " " << escapeXml(value) << "\n"; } out << "\n"; + this->cases.insert(escapedInputs(inputs)); out.close(); return out.good(); } diff --git a/modules/frontend/test_suite/test_suite.hpp b/modules/frontend/test_suite/test_suite.hpp index c00007242..8adec3570 100644 --- a/modules/frontend/test_suite/test_suite.hpp +++ b/modules/frontend/test_suite/test_suite.hpp @@ -29,6 +29,7 @@ #ifndef MODULES_FRONTEND_TEST_SUITE_TEST_SUITE_HPP_ #define MODULES_FRONTEND_TEST_SUITE_TEST_SUITE_HPP_ +#include #include #include @@ -65,12 +66,24 @@ class TestSuiteWriter { /** Writes metadata.xml. False if the file could not be written. */ bool writeMetadata(const TestSuiteMetadata& metadata); - /** Writes testcase-.xml, numbering from 1 in call order. */ + /** Writes testcase-.xml, numbering after the cases already in the + * directory (an earlier phase of the same run may have written some). */ bool writeTestCase(const std::vector& inputs, bool coversError); + /** How many test cases the directory holds, written earlier or by this. */ + size_t caseCount() const { return cases.size(); } + /** Whether a test case with exactly these inputs is already there. */ + bool hasTestCase(const std::vector& inputs) const; + + /** Removes every testcase-.xml from `directory` -- run once, at the start + * of a run, so a suite never mixes cases from an earlier run. */ + static void removeTestCases(const std::string& directory); + private: std::string directory; unsigned counter; + /** The inputs of every case in the directory, XML-escaped as written. */ + std::set> cases; }; } // namespace Map2Check diff --git a/modules/frontend/utils/alternation.hpp b/modules/frontend/utils/alternation.hpp index 8faf126ea..e9a41663b 100644 --- a/modules/frontend/utils/alternation.hpp +++ b/modules/frontend/utils/alternation.hpp @@ -36,6 +36,14 @@ inline unsigned stagnationSeconds(double budget) { return static_cast(std::max(10.0, 0.05 * budget)); } +/** KLEE's stagnation period in its `round`-th turn: doubled every round, like + * its window. Instruction coverage stops rising well before KLEE finishes the + * paths that make a proof, and a fixed cut would never let it get there. */ +inline unsigned stagnationSeconds(double budget, unsigned round) { + return stagnationSeconds(budget) * + (1u << std::min(round > 0 ? round - 1 : 0, 8u)); +} + /** Decides from successive coverage samples whether an engine stagnated: no * increase for `quietSeconds` since the last one. A sample of -1 means the * reading failed (KLEE's stats database busy or not written yet) and is no diff --git a/tests/unit/frontend/AlternationTest.cpp b/tests/unit/frontend/AlternationTest.cpp index 0f217bf9b..18139ff18 100644 --- a/tests/unit/frontend/AlternationTest.cpp +++ b/tests/unit/frontend/AlternationTest.cpp @@ -51,3 +51,9 @@ TEST(CoverageWatch, AnUnreadableSampleIsNotEvidence) { EXPECT_FALSE(watch.stagnated(-1, 60)); EXPECT_TRUE(watch.stagnated(5, 61.5)); } + +TEST(StagnationSeconds, KleesPatienceDoublesWithItsRounds) { + EXPECT_EQ(Map2Check::stagnationSeconds(300, 1), 15u); + EXPECT_EQ(Map2Check::stagnationSeconds(300, 2), 30u); + EXPECT_EQ(Map2Check::stagnationSeconds(300, 3), 60u); +} diff --git a/tests/unit/frontend/TestSuiteTest.cpp b/tests/unit/frontend/TestSuiteTest.cpp index 1af5481f9..9db106bd4 100644 --- a/tests/unit/frontend/TestSuiteTest.cpp +++ b/tests/unit/frontend/TestSuiteTest.cpp @@ -279,3 +279,31 @@ TEST(TestSuiteWriter, NumbersAfterTheCasesAlreadyThere) { EXPECT_NE(slurp(d / "testcase-3.xml").find("3"), std::string::npos); } + +// Under alternation every KLEE phase adds Cover-Branches cases: the cap and +// the duplicates are counted across phases, not per phase. +TEST(TestSuiteWriter, KnowsTheCasesAnEarlierWriterLeft) { + fs::path d = freshDir("tc_known"); + { + Map2Check::TestSuiteWriter first(d.string()); + ASSERT_TRUE(first.writeTestCase({"1", "a Date: Tue, 29 Sep 2026 18:46:13 -0400 Subject: [PATCH 24/88] fix(hybrid): the fuzzer gets all of KLEE's vectors, built once, with growing patience R19 lost 5 eca-* tasks to --alternate-engines against the fixed hybrid. The fixed hybrid covers them in its last fuzzer phase: completed with zeros past their end, some of KLEE's partial paths reach the error in afl-fuzz's dry run (sig 06). The alternation sent only the 64 latest KLEE vectors and dropped exactly those. The cap (and the corpus cap) came from a nondet loop whose calibration never ended -- fixed since by the zeros past the end. Two more costs of each fuzzer turn on large programs: the three AFL++ binaries were rebuilt every phase (~24 s on eca-*; now cached per run by the modules' content, .build/), and the fuzzer's fixed 15 s stagnation cut ended its turns at ~17 s; its patience now doubles per round like KLEE's. Problem06_label05: UNKNOWN -> FAILED at 157 s (the fixed hybrid: 281 s). Co-Authored-By: Claude Opus 5.5 (1M context) --- ...9-29-tacas-3b-engine-alternation-design.md | 15 +++- modules/frontend/caller.cpp | 71 ++++++++++++++----- modules/frontend/caller.hpp | 6 +- modules/frontend/map2check.cpp | 47 +++++++----- 4 files changed, 101 insertions(+), 38 deletions(-) diff --git a/docs/superpowers/specs/2026-09-29-tacas-3b-engine-alternation-design.md b/docs/superpowers/specs/2026-09-29-tacas-3b-engine-alternation-design.md index e1ade5085..bfaae49e2 100644 --- a/docs/superpowers/specs/2026-09-29-tacas-3b-engine-alternation-design.md +++ b/docs/superpowers/specs/2026-09-29-tacas-3b-engine-alternation-design.md @@ -57,9 +57,18 @@ que o KLEE já tem. O `store/ktest` é limpo a cada exportação, porque os `.kt KLEE anterior (`kleeprev/`) carregam o que ela já explorou. (A primeira versão deste spec previa um `store/exported.txt`; o efeito é o mesmo com menos estado.) -**Limites da troca:** no máximo 64 vetores do KLEE vão para uma janela curta do AFL++, e o -corpus do AFL++ no store fica abaixo de 256 entradas. O `afl-fuzz` calibra todas as -entradas antes de mutar, e 1000+ vetores do KLEE consumiram a janela inteira num teste. +**Sem limite na troca KLEE → AFL++:** todos os vetores do KLEE vão para o fuzzer. +Completados com zeros depois do fim, alguns caminhos parciais do KLEE chegam ao erro no +dry run do AFL++, e é assim que o híbrido fixo cobre tarefas eca-* que o próprio KLEE deixa +UNKNOWN. Uma primeira versão limitava a exportação aos 64 vetores mais recentes (e o corpus +a 256). Isso custou 5 tarefas eca-* na R19 e foi removido. A calibração ficou barata depois +que o gerador do AFL++ passou a devolver zeros no fim da entrada. + +**Binários do AFL++ compilados uma vez por execução** (cache `.build/`, chaveado +pelo conteúdo dos módulos): em eca-* cada fase do fuzzer gastava ~24 s recompilando. + +**Paciência do AFL++ também dobra por rodada:** com o corte fixo de 15 s, os turnos do +fuzzer em eca-* acabavam em ~17 s, onde o híbrido fixo dava 60 s. ### Estagnação diff --git a/modules/frontend/caller.cpp b/modules/frontend/caller.cpp index 3a93de031..92f2492f2 100644 --- a/modules/frontend/caller.cpp +++ b/modules/frontend/caller.cpp @@ -97,6 +97,7 @@ Caller::Caller(std::string bc_program_path, Map2CheckMode mode, currentPath = std::filesystem::current_path().string(); seedStore = Map2Check::seedStorePath(currentPath, programHash); sliceCache = Map2Check::sliceCachePath(currentPath, programHash); + buildCache = currentPath + "/" + programHash + ".build"; std::filesystem::current_path(currentPath + "/" + programHash); Map2Check::Log::Debug("Current path: " + std::filesystem::current_path().string()); @@ -278,13 +279,13 @@ unsigned Caller::exportKleeVectorsAsSeeds() { tests.push_back(entry.path().string()); } } - // Alternating, the fuzzer gets a short window, and afl-fuzz calibrates - // every seed before its first mutation: a thousand KLEE vectors (measured on - // a nondet loop) ate the window. The latest ones, as for kleeprev/. + // All of them, not a sample: completed with zeros past their end, some of + // KLEE's partial paths reach the error when the fuzzer runs them -- the + // dry run records them as crashes (sig 06), and that is how the fixed + // hybrid covered eca-* tasks KLEE itself left UNKNOWN. A cap of the 64 + // latest dropped exactly those (R19: 5 eca-* losses of --alternate-engines). + // Calibrating thousands is cheap now that a nondet loop ends on zeros. std::sort(tests.begin(), tests.end()); - if (this->stagnationLimit > 0 && tests.size() > kMaxSeedsFromFuzzer) { - tests.erase(tests.begin(), tests.end() - kMaxSeedsFromFuzzer); - } unsigned written = 0; unsigned index = 0; for (const std::string &test : tests) { @@ -669,6 +670,39 @@ void Caller::applyNonDetGenerator() { } case (NonDetGenerator::AFLPlusPlus): { Map2Check::Log::Info("Instrumenting with AFL++"); + // Built once per run: every fuzzer phase recompiles the same modules, + // and on the eca-* programs the three builds take ~24 s -- per phase, + // which under --alternate-engines was most of each fuzzer turn. Keyed by + // the two modules' content, like the slice cache. + const std::vector aflBinaries = { + programHash + "-fuzzed.out", programHash + "-witness-fuzzed.out", + programHash + "-cmplog.out"}; + std::string buildKey; + { + std::ifstream result(programHash + "-result.bc", std::ios::binary); + std::ifstream witness(programHash + "-witness-result.bc", + std::ios::binary); + std::stringstream content; + content << result.rdbuf() << "|" << witness.rdbuf(); + buildKey = Map2Check::sliceCacheKey(content.str(), "afl++", "", ""); + } + const std::string builtDir = buildCache + "/" + buildKey; + { + std::error_code cacheErr; + if (std::filesystem::exists(builtDir + "/" + aflBinaries[0], + cacheErr)) { + for (const std::string &binary : aflBinaries) { + if (std::filesystem::exists(builtDir + "/" + binary, cacheErr)) { + std::filesystem::copy_file( + builtDir + "/" + binary, binary, + std::filesystem::copy_options::overwrite_existing, cacheErr); + } + } + Map2Check::Log::Info( + "AFL++ binaries: reusing the build of an earlier phase"); + break; + } + } std::ostringstream command; command.str(""); @@ -725,6 +759,20 @@ void Caller::applyNonDetGenerator() { << " " + programHash + "-result.bc"; system(commandCmplog.str().c_str()); + { + std::error_code cacheErr; + if (std::filesystem::exists(aflBinaries[0], cacheErr)) { + std::filesystem::create_directories(builtDir, cacheErr); + for (const std::string &binary : aflBinaries) { + if (std::filesystem::exists(binary, cacheErr)) { + std::filesystem::copy_file( + binary, builtDir + "/" + binary, + std::filesystem::copy_options::overwrite_existing, cacheErr); + } + } + } + } + // Announced rather than discovered later as a silent no-op -- the same // failure mode the sliced arm spent a whole campaign in. std::error_code fuzzErr; @@ -1352,22 +1400,11 @@ void Caller::executeAnalysis(std::string solvername) { // the next fuzzer phase starts from this corpus plus KLEE's vectors. if (this->seedExchange) { std::error_code queueErr; - // Alternating, the corpus grows every fuzzer round and afl-fuzz - // calibrates all of it before mutating: bounded, like KLEE's share. - size_t corpus = 0; - if (this->stagnationLimit > 0) { - for (const auto &entry : std::filesystem::directory_iterator( - seedStore + "/afl", queueErr)) { - if (entry.is_regular_file(queueErr)) ++corpus; - } - } for (const auto &entry : std::filesystem::directory_iterator( aflFindings + "/queue", queueErr)) { const std::string name = entry.path().filename().string(); if (!entry.is_regular_file(queueErr)) continue; if (name.find(",orig:") != std::string::npos) continue; - if (this->stagnationLimit > 0 && corpus >= kMaxFuzzerCorpus) break; - ++corpus; std::filesystem::copy_file( entry.path(), seedStore + "/afl/afl-" + name, diff --git a/modules/frontend/caller.hpp b/modules/frontend/caller.hpp index 62e6f1c67..6430ec84e 100644 --- a/modules/frontend/caller.hpp +++ b/modules/frontend/caller.hpp @@ -180,6 +180,10 @@ class Caller { * Map2Check::sliceCachePath. Removed by main with the seed store. */ std::string sliceCache; const std::string& sliceCachePath() const { return sliceCache; } + /** AFL++ binaries kept across the phases of one run (/.build), + * keyed by the content of the modules they are built from. */ + std::string buildCache; + const std::string& buildCachePath() const { return buildCache; } /** Writes KLEE's per-path vectors into the seed corpus. * @@ -200,8 +204,6 @@ class Caller { /** Where to report how long this phase's engine ran (main sizes the next * alternating phase with it); null: not reported. */ double* engineSeconds = nullptr; - /** Alternating, the fuzzer's input corpus in the store is kept below this. */ - static constexpr size_t kMaxFuzzerCorpus = 256; /** At most this many fuzzer queue entries are converted into KLEE seeds. */ static constexpr size_t kMaxSeedsFromFuzzer = 64; diff --git a/modules/frontend/map2check.cpp b/modules/frontend/map2check.cpp index f9453efe4..0a0d1082e 100644 --- a/modules/frontend/map2check.cpp +++ b/modules/frontend/map2check.cpp @@ -442,6 +442,8 @@ bool provedSafe = false; static std::string lastSeedStore; // The slice cache of the last phase, removed by main with the seed store. static std::string lastSliceCache; +// The AFL++ build cache of the last phase, removed by main likewise. +static std::string lastBuildCache; // How long the last phase's engine ran; the rest of the phase is setup // (compile, instrument, link) that no engine window accounts for. static double lastEngineSeconds = 0; @@ -458,32 +460,36 @@ int alternateEngines(map2check_args args) { const double budget = args.timeout; const unsigned quiet = Map2Check::stagnationSeconds(budget); unsigned rounds[2] = {0, 0}; - // The largest setup a phase has needed so far: a phase is started only if - // what is left covers that setup plus a stagnation period of engine time, - // and its window leaves the setup out. On large programs (eca-*) compiling, - // instrumenting and linking take longer than the stagnation period. - double setup = 0; + // The setup each engine's phase needed last time (compile, instrument, + // link -- time no window covers): a phase starts only if what is left + // covers its setup plus a stagnation period of engine time, and its window + // leaves the setup out. Per engine and latest, not the maximum: the first + // fuzzer phase builds the AFL++ binaries, the later ones reuse them. + double setup[2] = {0, 0}; for (int phase = 1;; ++phase) { const bool klee = (phase % 2 == 0); + const int self = klee ? 1 : 0; const double left = Map2Check::Caller::remainingOf(args.timeout); - if (phase > 1 && left < quiet + setup) break; + if (phase > 1 && left < quiet + setup[self]) break; const Map2Check::Engine engine = klee ? Map2Check::Engine::Klee : Map2Check::Engine::Fuzzer; - const unsigned round = ++rounds[klee ? 1 : 0]; + const unsigned round = ++rounds[self]; args.generator = klee ? Map2Check::NonDetGenerator::Klee : Map2Check::NonDetGenerator::AFLPlusPlus; args.phase = phase; args.engineWindow = Map2Check::alternationWindow( - engine, round, budget, std::max(1.0, left - setup)); - // KLEE's patience grows with its rounds: after coverage stops rising it - // may still be enumerating the paths that make a proof, and a fixed cut - // would never let it finish one. - args.stagnationLimit = klee ? Map2Check::stagnationSeconds(budget, round) - : quiet; + engine, round, budget, std::max(1.0, left - setup[self])); + // Both engines' patience grows with their rounds. KLEE: coverage stops + // rising well before it finishes the paths of a proof. The fuzzer: on the + // eca-* state machines it finds new paths in bursts, and a fixed 15 s cut + // ended its turns at ~17 s where the fixed split gave it 60. + args.stagnationLimit = Map2Check::stagnationSeconds(budget, round); // Replaying the corpus for a KLEE phase that will not get to run is // pure cost. - args.feedsKlee = - (!klee && left - setup - args.engineWindow >= quiet + setup) ? 1 : 0; + args.feedsKlee = (!klee && left - setup[self] - args.engineWindow >= + quiet + setup[1]) + ? 1 + : 0; Map2Check::Log::Info("Alternation phase " + std::to_string(phase) + ": " + (klee ? "KLEE" : "AFL++") + ", window " + std::to_string(static_cast( @@ -495,7 +501,7 @@ int alternateEngines(map2check_args args) { const double took = std::chrono::duration( std::chrono::steady_clock::now() - started) .count(); - setup = std::max(setup, took - lastEngineSeconds); + setup[self] = std::max(0.0, took - lastEngineSeconds); if (foundViolation || provedSafe) break; } return SUCCESS; @@ -580,6 +586,10 @@ int map2check_execution(map2check_args args) { std::error_code cacheError; std::filesystem::remove_all(caller->sliceCachePath(), cacheError); } + if (args.phase <= 1) { + std::error_code cacheError; + std::filesystem::remove_all(caller->buildCachePath(), cacheError); + } // A run starts from an empty suite. Its phases then add to it (see // TestSuiteWriter), and a suite left in this directory by an earlier run -- // possibly of another program -- must not be added to. @@ -594,6 +604,7 @@ int map2check_execution(map2check_args args) { // the store or the slice cache past the cleanup in main. lastSeedStore = caller->seedStorePath(); lastSliceCache = caller->sliceCachePath(); + lastBuildCache = caller->buildCachePath(); caller->engineSeconds = &lastEngineSeconds; caller->feedsKleePhase = args.feedsKlee >= 0 ? (args.feedsKlee == 1) : (args.phase == 1); @@ -1132,6 +1143,10 @@ z3 (Z3 is default), btor (Boolector), and yices2 (Yices))") std::error_code cacheError; std::filesystem::remove_all(lastSliceCache, cacheError); } + if (!args.debugMode && !lastBuildCache.empty()) { + std::error_code cacheError; + std::filesystem::remove_all(lastBuildCache, cacheError); + } } } seedStoreCleanup{args}; if (args.generator == Map2Check::NonDetGenerator::None && From ca996ba8f9024131a134306e71d727a16048cd38 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 21:09:23 -0400 Subject: [PATCH 25/88] fix(afl): one build budget for the three AFL++ binaries The fuzzer, witness and CmpLog builds were each bounded by 0.25T, so in sequence they could take 0.75T; on eca-* they ran the process past its deadline with no verdict (R19). They now share one deadline. Co-Authored-By: Claude Opus 5.5 (1M context) --- modules/frontend/caller.cpp | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) diff --git a/modules/frontend/caller.cpp b/modules/frontend/caller.cpp index 92f2492f2..70248df73 100644 --- a/modules/frontend/caller.cpp +++ b/modules/frontend/caller.cpp @@ -723,12 +723,23 @@ void Caller::applyNonDetGenerator() { 1.0, std::min(0.25 * this->timeout, std::max(1.0, static_cast(remainingSeconds()) - 5.0))); - const std::string bound = "timeout -k " + - std::to_string(Map2Check::killGracePeriod) + - " " + std::to_string(static_cast(compileBudget)) + " "; + // One budget for the three builds, not one each: sequential, each + // bounded by 0.25T, they could take 0.75T -- on eca-* that ran the + // process past its deadline with no verdict (R19). Each build gets what + // is left of the shared deadline. + const auto buildDeadline = + std::chrono::steady_clock::now() + + std::chrono::duration(compileBudget); + auto bound = [&buildDeadline]() { + const double left = std::chrono::duration( + buildDeadline - std::chrono::steady_clock::now()) + .count(); + return "timeout -k " + std::to_string(Map2Check::killGracePeriod) + + " " + std::to_string(std::max(1, static_cast(left))) + " "; + }; command - << bound << Map2Check::aflClangFastBinary() + << bound() << Map2Check::aflClangFastBinary() << " -g " << Caller::postOptimizationFlags() << " -o " + programHash + "-fuzzed.out" << " " + programHash + "-result.bc"; @@ -737,7 +748,7 @@ void Caller::applyNonDetGenerator() { std::ostringstream commandWitness; commandWitness.str(""); - commandWitness << bound << Map2Check::aflClangFastBinary() + commandWitness << bound() << Map2Check::aflClangFastBinary() << " -g " << " -o " + programHash + "-witness-fuzzed.out" << " " + programHash + "-witness-result.bc"; @@ -752,7 +763,7 @@ void Caller::applyNonDetGenerator() { // tacasv1 comparison would pit an unarmed AFL++ against an armed // LibFuzzer. Optional: if it does not build, the fuzzer runs without. std::ostringstream commandCmplog; - commandCmplog << "AFL_LLVM_CMPLOG=1 " << bound + commandCmplog << "AFL_LLVM_CMPLOG=1 " << bound() << Map2Check::aflClangFastBinary() << " -g " << Caller::postOptimizationFlags() << " -o " + programHash + "-cmplog.out" From 956df7b7e5e4cb54e5f1a6a8776d1fcdb142868e Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 14:26:49 -0400 Subject: [PATCH 26/88] fix(memtrack): check memset/memcpy/memmove under LLVM 16's opaque pointers MemoryTrackPass matched the memory intrinsics by name, and the names carried the pointer types (llvm.memset.p0i8.i64) that LLVM 16 no longer writes (llvm.memset.p0.i64): no memset, memcpy or memmove clang emitted was checked, and memmove never was. memset(p, 0, 16) on 8 malloc'd bytes came back UNKNOWN. Dispatched by the intrinsic's kind now (MemSetInst, MemTransferInst), plus the libc names; memset's size is widened to the i64 map2check_load takes. In-bounds copies -- from string constants, struct assignment, memmove -- stay TRUE (integration section 34). Co-Authored-By: Claude Opus 5.5 (1M context) --- modules/backend/pass/MemoryTrackPass.cpp | 24 ++++++---- .../integration/test_testcomp_regressions.sh | 48 +++++++++++++++++++ 2 files changed, 62 insertions(+), 10 deletions(-) diff --git a/modules/backend/pass/MemoryTrackPass.cpp b/modules/backend/pass/MemoryTrackPass.cpp index a35477a80..e4824064f 100644 --- a/modules/backend/pass/MemoryTrackPass.cpp +++ b/modules/backend/pass/MemoryTrackPass.cpp @@ -12,6 +12,7 @@ #include +#include #include #include #include @@ -209,8 +210,10 @@ void MemoryTrackPass::instrumentMemset() { IRBuilder<> builder(BBIteratorToInst(j)); Value *function_llvm = builder.CreateGlobalStringPtr(function_name); - // Value *args[] = {varPointerCast, size}; - Value *args[] = {pointer, size}; + // map2check_load takes an i64 size; the intrinsic's may be i32. + Value *sizeCast = CastInst::CreateIntegerCast( + size, Type::getInt64Ty(*this->Ctx), false, bitcast, BBIteratorToInst(j)); + Value *args[] = {varPointerCast, sizeCast}; builder.CreateCall(map2check_load, args); Value *args2[] = {this->line_value, function_llvm}; @@ -502,15 +505,16 @@ void MemoryTrackPass::switchCallInstruction() { this->instrumentFree(); } else if (this->calleeFunction->getName() == "posix_memalign") { this->instrumentPosixMemAllign(); - } else if (this->calleeFunction->getName() == "memset") { - this->instrumentMemset(); - } else if (this->calleeFunction->getName() == "llvm.memset.p0i8.i64") { + } else if (llvm::isa(&*this->currentInstruction) || + calleeName == "memset") { + // By the intrinsic's kind, not its name. The names carried the pointer + // types -- llvm.memset.p0i8.i64 -- and with opaque pointers LLVM 16 names + // them llvm.memset.p0.i64: matched by name, no memset, memcpy or memmove + // clang emitted was checked at all (memset(p, 0, 16) on 8 malloc'd bytes + // came back UNKNOWN, found only by KLEE's own bounds check). this->instrumentMemset(); - } else if (this->calleeFunction->getName() == "llvm.memset.p0i8.i32") { - this->instrumentMemset(); - } else if (this->calleeFunction->getName() == "llvm.memcpy.p0i8.p0i8.i64") { - this->instrumentMemcpy(); - } else if (this->calleeFunction->getName() == "llvm.memcpy.p0i8.p0i8.i32") { + } else if (llvm::isa(&*this->currentInstruction) || + calleeName == "memcpy" || calleeName == "memmove") { this->instrumentMemcpy(); } else if (this->calleeFunction->getName() == "malloc") { this->instrumentMalloc(); diff --git a/tests/integration/test_testcomp_regressions.sh b/tests/integration/test_testcomp_regressions.sh index c0fecf13f..954dd5df8 100755 --- a/tests/integration/test_testcomp_regressions.sh +++ b/tests/integration/test_testcomp_regressions.sh @@ -1180,6 +1180,54 @@ else fail "alternation" "phases=$phases stagnated=$(grep -c 'KLEE stagnated' "$WORK/alternate/grow.log") elapsed=$((t1 - t0))s verdict=$(grep -aoE 'VERIFICATION [A-Z]+' "$WORK/alternate/grow.log" | tail -1)" fi +# --- 34. memset/memcpy/memmove are checked under LLVM 16's opaque pointers -- +# MemoryTrackPass matched the intrinsics by name, and the names carried the +# pointer types (llvm.memset.p0i8.i64) that LLVM 16 no longer writes +# (llvm.memset.p0.i64): no memory intrinsic clang emitted was checked. +mkdir -p "$WORK/intrinsics" +cat > "$WORK/intrinsics/over.c" <<'EOF2' +#include +#include +int main(void) { + char *p = malloc(8); + if (!p) return 0; + memset(p, 0, 16); + free(p); + return 0; +} +EOF2 +cat > "$WORK/intrinsics/safe.c" <<'EOF2' +#include +#include +struct S { int a[10]; char name[16]; }; +int main(void) { + char s[] = "hello, world"; + struct S x = {{1, 2, 3}, "abc"}, y; + y = x; + char *p = malloc(sizeof s); + if (!p) return 0; + memcpy(p, s, sizeof s); + memmove(p + 1, p, 4); + memset(y.name, 'z', sizeof y.name); + free(p); + return y.a[0] + s[0]; +} +EOF2 +( cd "$WORK/intrinsics" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 200 "$MAP2CHECK" \ + --memtrack --nondet-generator symex --timeout 45 over.c ) > "$WORK/intrinsics/over.log" 2>&1 +( cd "$WORK/intrinsics" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 200 "$MAP2CHECK" \ + --memtrack --nondet-generator symex --timeout 45 safe.c ) > "$WORK/intrinsics/safe.log" 2>&1 +if grep -q "FALSE-DEREF" "$WORK/intrinsics/over.log"; then + ok "a memset past the end of a heap block is a FALSE-DEREF" +else + fail "memset intrinsic" "expected FALSE-DEREF, got: $(grep -aoE 'VERIFICATION [A-Z]+' "$WORK/intrinsics/over.log" | tail -1)" +fi +if grep -q "VERIFICATION SUCCEEDED" "$WORK/intrinsics/safe.log"; then + ok "in-bounds memcpy/memmove/memset and struct copies stay TRUE" +else + fail "intrinsics soundness" "safe program: $(grep -aoE 'VERIFICATION [A-Z]+|FALSE[-_A-Z]*' "$WORK/intrinsics/safe.log" | tr '\n' ' ')" +fi + echo " ---" echo " Results: $PASSED passed, $FAILED failed" [ "$FAILED" -eq 0 ] || exit 1 From 81111459ec8b7391f1dc87903905081ac399b7b9 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 14:51:01 -0400 Subject: [PATCH 27/88] docs(tacas): handoff after 2d, 3b and the review fixes Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/2026-09-29-handoff-tacas.md | 250 ++++++++++------------- 1 file changed, 105 insertions(+), 145 deletions(-) diff --git a/docs/reports/2026-09-29-handoff-tacas.md b/docs/reports/2026-09-29-handoff-tacas.md index 1f88d7f5f..2a56716d1 100644 --- a/docs/reports/2026-09-29-handoff-tacas.md +++ b/docs/reports/2026-09-29-handoff-tacas.md @@ -1,152 +1,112 @@ -# Handoff TACAS — 2026-09-29 +# Handoff TACAS — 2026-09-29 (atualizado à tarde) -Ponto de partida para a próxima sessão (antes do auto-compact). Branch ativa: -**`feat/tacas-smart-seeds`** (local, **ainda não enviada**; HEAD `1eb8a30b9` + este doc). -Regras do usuário que continuam valendo: +Ponto de partida para a próxima sessão. Regras do usuário que continuam valendo: -- **Nunca mergear** nada: sempre abrir PR, com base `develop`. +- **Nunca mergear**: sempre abrir PR, com base `develop`. - Branches se chamam `feat/…`. **Não mexer no gatilho do `ci.yml`**. -- **Registrar cada mini-rodada** em `docs/reports/tacas-experiment-log.md` e comparar com - as anteriores, uma a uma. -- LibFuzzer está abandonado: o AFL++ é a evolução. -- Commits e PRs em inglês, docs e relatórios em pt-BR. +- **Registrar cada mini-rodada** em `docs/reports/tacas-experiment-log.md` e comparar uma + a uma. +- LibFuzzer está abandonado. +- Commits e PRs em inglês; docs e relatórios em pt-BR. +- **Nunca rodar `cmake .` num `build_*` sem `-DCMAKE_INSTALL_PREFIX`.** O prefixo volta + para `release/` e o `ninja install` sobrescreve a instalação de referência. ---- +Em 2026-09-29 o usuário delegou as decisões ("você tem permissão para fazer as decisões que +quiser") e pediu, nesta ordem: +1. investigar os TRUE errados restantes; +2. implementar o 2d e o 3b com as abordagens recomendadas; +3. lançar os testes ao final. -## 1. O que está na branch (ainda não está em PR) +## 1. Pilha de branches (locais, **nenhuma enviada ainda**) -| commit | conteúdo | +Cada branch parte da anterior. As PRs devem ser abertas em cadeia (cada uma com base na +anterior, ou todas contra `develop` em ordem). + +| branch | commits próprios (resumo) | |---|---| -| `b66254631` | 3a: o corpus do fuzzer chega ao KLEE como sementes tipadas (`--seed-exchange`) | -| `3a89b4684` | revisão do 3a: replays limitados e condicionados à fase, store limpo, `provedSafe` | -| `30966444f`, `14c850680` | R15 no log (Cover-Error e Cover-Branches) | -| `1eb8a30b9` | **fix(verdict):** o `abort()` do programa vira `map2check_assume(0)` (NonDetPass `rewriteAbortCallsToPrune`) | - -A decisão do usuário foi mandar a correção do abort nesta mesma PR, descrita como correção -de bug. - -Estado dos testes: integração **39/39** (`tests/integration/test_testcomp_regressions.sh`), -ctest **11/11**. A seção 30, rascunhada em `scratchpad/t30.sh`, **não foi adicionada**: ela -cobre um `assert()` da libc (`__assert_fail`) que ainda chama abort *dentro da libc* e para -o KLEE com exit 0. Avaliar se isso ainda gera um TRUE errado; se gerar, tratar -`--exit-on-error-type=Abort` quando o abort não é a violação registrada. - -Specs e planos: `docs/superpowers/specs/2026-09-28-tacasv3a-smart-seeds-plumbing-design.md` -e `plans/2026-09-28-tacasv3a-smart-seeds-plumbing.md` (ledger em `.superpowers/sdd/`). - -## 2. Rodadas em andamento ou pendentes (dados fora do repo) - -Tudo fica em `/home/guilherme/github/prism/tacas-results/`: manifests `r15-*.tsv` e -`r18-*.tsv`, scripts `r1{5,6,8}-run.sh`, saídas `R1x-*`. - -Os contêineres são lançados de dentro do repo, com `D=../tacas-results`: - -``` -docker run -d --rm -u root --name -v $(pwd):/workspace -v $D:/scratch map2check-dev:aflpp \ - bash /scratch/rNN-run.sh /scratch/.tsv "" -``` - -A `EXTRA_FLAGS` usa `--seed-exchange` no braço seeds e `--slice` no braço slice. O -`rNN-run.sh` fixa `MAP2CHECK_PATH`: `build_seeds/install` na R16, `build_abort/install` na -R18. O harness é resumível pelo CSV. - -- **R18 (validação do abort): concluída** — 6 de 8 TRUE errados resolvidos; restam `sin_interpolated_index-1` (controle) e `insertion_sort-1-2` (slice). Ver log. -- **R16 (Cover-Error e Cover-Branches com `--seed-exchange`, `build_seeds`, sem o fix do - abort):** - - Contêineres `r16-ce-seeds-{0,1,2}` e `r16-cb-seeds-{0,1}`. - - No momento do handoff: CE 126/213 e CB 44/120. - - Parcial anterior: 58 cobertas contra 50 do controle R15 em 74 pares. - - Comparar com o controle da R15 e registrar no log. -- **Rodada limpa, a lançar:** como o fix do abort muda os dois braços, rodar **controle e - seeds, ambos com o build final** (reconstruir `build_abort` ou um `build_final`), na - amostra `r15-ce.tsv`/`r15-cb.tsv`. Isso isola o efeito das sementes. Registrar como R19. -- **R17, a lançar:** SV-COMP MemSafety e NoOverflows (±ReachSafety), com e sem - `--seed-exchange`. Usar `tests/memsafety/run_memsafety_evaluation.sh` com - `PROPERTY=memsafety|memcleanup|overflow` e `EXTRA_FLAGS`. -- **Depois disso:** push de `feat/tacas-smart-seeds` e PR para `develop` com o 3a, a - revisão, o `provedSafe`, o fix do abort e as rodadas R15–R19. A descrição deve trazer os - números. **Sem merge.** - -## 3. Próximas frentes (pedido do usuário: 2d, 3b, 3c, pendências antigas e o cronograma) - -Seguir o fluxo superpowers em cada frente: brainstorming → spec → plan → execução nativa -com ledger → revisão final por subagente opus → PR. Cada frente numa branch `feat/…` -própria, a partir de `feat/tacas-smart-seeds` enquanto a PR desta não for mergeada. - -### 2d — otimizações do slicing - -O slice ainda empata com o controle: 126 × 129 na R15. - -1. **Fatiar uma vez só no híbrido.** Hoje cada fase cria um Caller e refatia. O ideal é - guardar o `.bc` fatiado ao lado do store, no mesmo esquema de `seedStorePath`. -2. **Cutoff consertado:** `-cutoff-diverging` com o `exit(0)` recebendo `!dbg` e saída - silenciosa. Hoje ele fica desligado porque gera "Broken module" no KLEE. -3. **`opt -O2` depois do slice**, para limpar o código morto que o dg deixa. -4. **Avaliar os parâmetros do dg:** `--cda ntscd` e `--pta fs`. -5. **Corretude:** investigar o TRUE errado de `loops/insertion_sort-1-2.c`, que só - aparece no slice, e os **4 ERROR de ECA** (~330 s, sem suíte), que também só aparecem - com `--slice`. - -Métrica: amostra `r15-ce.tsv` com `--slice` contra o controle, com TRUE errado igual a 0 -como gate. Os critérios atuais ficam em `modules/frontend/` (slicer). Os testes estão em -`SlicerTest.cpp` e nas seções 13–25 da integração. - -### 3b — laço alternado com detecção de estagnação - -- **Hoje:** o esquema é fixo, AFL++ 0.2T → KLEE 0.6T → AFL++ 0.2T, com - `args.phase` em `map2check.cpp`. -- **Objetivo:** alternar as engines enquanto houver ganho. Troca de engine quando a - engine atual estagna, ou seja, não entra nada novo na queue do AFL, ou o KLEE não - cobre novos BBs por N segundos. -- **Reusar:** - - `feedsKleePhase`, que hoje só alimenta na fase 1 e precisa generalizar; - - `exportFuzzerCorpusAsKtests`; - - `exportKleeVectorsAsSeeds`; - - o store persistente. -- **Cuidados:** - - o teto de 5% do tempo para replay; - - `provedSafe` encerra tudo; - - a violação encontrada encerra tudo. - -### 3c — priorização de sementes - -- **Hoje:** `selectQueueEntries` pega as 64 primeiras por id (`kMaxSeedsFromFuzzer`). -- **Objetivo:** ranquear por novidade de cobertura, usando os BBs do - TrackBasicBlockPass ou o bitmap do AFL. Opcionalmente, pela distância/densidade no SDG - até o alvo, reusando o dg do slicing. -- Os testes unitários ficam em `SeedStoreTest.cpp`. - -### Pendências antigas de corretude - -- **MemoryTrackPass não instrumenta os intrínsecos do LLVM 16** (`llvm.memcpy/memset/memmove`). - O pass procura os nomes com tipos antigos (`p0i8`), então as cópias passam sem checagem. -- **Falso positivo do memtrack no busybox `sleep-3`**, na amostra NoOverflows/MemSafety. -- **A mensagem "did not build within Ns" é enganosa** quando o que houve foi um erro de - link do AFL. -- **Minors adiados** nos ledgers `.superpowers/sdd/*/progress.md`. -- **Worktree velho `../Map2Check-2c`** (`feat/tacas-slicing-overflow`, já mergeado): a - remoção precisa de `--force`. **Pedir permissão** antes. O worktree - `Map2Check-fuzzer-adaptive` está como prunable. - -### Atualizar `docs/migration-schedule.md` - -- O documento está defasado: o cronograma é de 01/jun/2026 a 30/mai/2027 e ainda traz as - métricas antigas. -- Refletir o que a linha TACAS já entregou: - - tacasv1 (AFL++ 4.40c com CmpLog); - - 2a/2b/2c (slicing por propriedade); - - as correções de veredito (HaltTimer, vetor vazio, abort); - - 3a (smart seeds). -- Registrar os números da R15 (Cover-Error: 129 contra 111 cobertas na v15, TRUE errado - 27 → 5, mediana 43 s → 5 s). -- Registrar como próximos marcos: 2d, 3b, 3c e a campanha completa sequencial depois do - merge. - -## 4. Builds úteis - -- **`build_abort/install`:** HEAD atual, com o fix do abort. -- **`build_seeds/install`:** 3a sem o fix do abort. -- **`build_v15`/`install_v15`:** referência v15. -- **Reconstrução:** dentro do `map2check-dev:aflpp`, rodar - `cmake .. -G Ninja -DLLVM_DIR=/usr/lib/llvm-16/lib/cmake/llvm -DCMAKE_INSTALL_PREFIX=/install`. - **Sempre fixar o prefixo**: um prefixo revertido já sobrescreveu `release/` uma vez. +| `feat/tacas-smart-seeds` | 3a (sementes), revisão, `provedSafe`, **fix abort → assume**, **fix caminhos descartados** (+ duas correções dele), logs R15/R16/R18 | +| `feat/tacas-2d-slicing` | 2d: slice uma vez por execução (cache `.slice/`), knobs `MAP2CHECK_SLICE_CLEANUP` e `MAP2CHECK_SLICER_FLAGS`, `opt` limitado | +| `feat/tacas-3b-alternation` | fix AFL (zeros após o fim da entrada); 3b `--alternate-engines`; correções da revisão; `migration-schedule.md` atualizado | +| `feat/tacas-memtrack-intrinsics` | fix: `memset/memcpy/memmove` checados no LLVM 16 (despacho por `MemSetInst`/`MemTransferInst`) | + +- **Ponta da pilha:** `feat/tacas-memtrack-intrinsics` @ `8c70e5a73`, mais este documento. +- **Testes:** unitários 12/12; integração 46 seções. +- **Specs:** + - `docs/superpowers/specs/2026-09-29-tacas-2d-slicing-optimizations-design.md`; + - `docs/superpowers/specs/2026-09-29-tacas-3b-engine-alternation-design.md`, que inclui + a seção "Revisão". +- **Revisão final (subagente opus):** achados 1–9 tratados. + - 1: o contador "partially completed paths" também conta podas por assunção e impedia + qualquer prova. Corrigido. + - 2–3: KLEE que morreu e "skipping fork". Corrigidos. + - 4–9: suíte de Cover-Branches entre fases, orçamento das fases, SIGINT duplo, paciência + do KLEE e flags. Corrigidos. + +## 2. Correções de veredito desta sessão (todas testadas) + +- **`abort()` do programa vira poda** (`map2check_assume(0)`). Resolveu 6 de 8 TRUE errados + da R15 e também o falso positivo do memtrack no `busybox sleep-3`: o `bb_show_usage()` + chamava `abort()` com `argv` ainda alocado. +- **KLEE que descartou caminhos não é prova.** Os casos são: + - "silently concretizing" (double simbólico: `sin_interpolated_index-1`); + - qualquer `*.err` ou `*.early` (VLA: `insertion_sort-1-2`); + - HaltTimer; + - "skipping fork" ou "over memory cap"; + - `info` sem "done: completed paths" (crash). +- **`nondet_assume` do KLEE usa `klee_silent_exit`.** O `klee_assume(0)` gerava `user.err`. +- **AFL++:** leitura após o fim da entrada devolve 0. Antes ela recomeçava o buffer, o + `while(nondet())` nunca terminava e o `afl-fuzz` abortava no dry run. +- **Memtrack:** intrínsecos de memória do LLVM 16 passaram a ser checados. + +## 3. Resultados já registrados no log + +- **R16 (Cover-Error, sementes 3a × controle R15):** **148 × 129 cobertas** (+15%), pares + 21 × 2. Os 7 TRUE errados vêm dos dois defeitos já corrigidos. +- **R18:** a correção do abort eliminou 6 de 8 TRUE errados. Os 2 restantes eram + caminhos descartados, também corrigidos. + +## 4. Rodadas em execução (dados em `/home/guilherme/github/prism/tacas-results/`) + +- **Build:** `install_r19`, cópia congelada do `build_abort/install` no commit `8c70e5a73` + (registrado em `r19-commit.txt`). +- **R19:** + - Escalonador: `r19-sched.sh`, rodando com `setsid`, log em `r19-sched.log`. Os jobs estão + em `r19-jobs.tsv`, com no máximo 11 contêineres ao mesmo tempo. + - Cover-Error (`r15-ce.tsv`): control, seeds, alternate, slice, slice-light, slice-o2, + slice-ntscd, slice-ptafs, 3 shards cada. + - Cover-Branches (`r15-cb.tsv`): control, seeds, alternate, 2 shards cada. + - Resultados em `R19--_s/results.csv`. + - A primeira tentativa foi descartada (`discarded-r19a/`): o build tinha o contador de + parciais errado e os defeitos da revisão. +- **R17:** + - Escalonador: `r17-sched.sh`, log em `r17-sched.log`. Divide as vagas com a R19. + - SV-COMP MemSafety (50), MemCleanup (10) e NoOverflows (20), 120 s, braços control, + seeds e alternate. + - Manifests `r17-*.tsv`, regenerados com `build_corpus.py` e os mesmos parâmetros da + R9/R13. Os originais se perderam em diretórios temporários. + - Resultados em `R17--/`. +- **R16 Cover-Branches** (`r16-cb-seeds-*`, build antigo) terminando; comparar com a R15. + +**Análise pendente:** +- **Cover-Error:** cobertas, TRUE errado e pares discordantes de cada braço contra o + control. Gate: TRUE errado = 0. +- **Cover-Branches:** cobertura média. +- **R17:** correct-true, correct-false, wrong-true, wrong-false. + - Um wrong-true bloqueia o braço. + - Contar TRUE corretos, porque a parada por estagnação pode custar provas. +- **2d:** promover o vencedor entre light, o2, ntscd e ptafs a padrão, com commit próprio. +- **3b:** promover `--alternate-engines` a padrão do híbrido se ele ganhar de seeds. + +## 5. Depois das rodadas + +1. Registrar R17 e R19 no log. +2. Promover os knobs vencedores. +3. Push das 4 branches e PRs em cadeia, sem merge, com os números na descrição. +4. **3c:** ranking de sementes (novidade de cobertura, densidade SDG). +5. **Ideia anotada:** usar o corpus do AFL++ como casos de Cover-Branches, via replay + tipado. Hoje a suíte de CB sai só do KLEE. +6. **Perda de 2026-09-29:** o `release/results/map2check_castle.2026-07-17_04-53-54.results.sv-comp19_map2check.txt` + foi apagado por engano e não tem cópia. Regera-se com `tests/castle/run_castle_benchexec.sh`. + `release/` foi restaurado a partir de `install_v15/`. +7. O worktree velho `../Map2Check-2c` precisa de `--force` para ser removido. **Pedir + permissão** antes. From 56e1cb98de3e772d3d390c281779bdf03a1463bb Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 14:55:07 -0400 Subject: [PATCH 28/88] fix(afl): a fuzzer binary that fails to link says so, and why Every missing AFL++ binary was reported as one that 'did not build within Ns' -- the budget's fault -- including a link error (an undefined reach_error) that no budget would fix. The build's status is kept: a timeout is still reported as one, anything else as a failure with the first line of afl-build.log that names the cause. Co-Authored-By: Claude Opus 5.5 (1M context) --- modules/frontend/caller.cpp | 31 +++++++++++++++---- .../integration/test_testcomp_regressions.sh | 18 +++++++++++ 2 files changed, 43 insertions(+), 6 deletions(-) diff --git a/modules/frontend/caller.cpp b/modules/frontend/caller.cpp index 70248df73..724604738 100644 --- a/modules/frontend/caller.cpp +++ b/modules/frontend/caller.cpp @@ -742,9 +742,9 @@ void Caller::applyNonDetGenerator() { << bound() << Map2Check::aflClangFastBinary() << " -g " << Caller::postOptimizationFlags() << " -o " + programHash + "-fuzzed.out" - << " " + programHash + "-result.bc"; + << " " + programHash + "-result.bc" << " > afl-build.log 2>&1"; - system(command.str().c_str()); + const int built = system(command.str().c_str()); std::ostringstream commandWitness; commandWitness.str(""); @@ -785,13 +785,32 @@ void Caller::applyNonDetGenerator() { } // Announced rather than discovered later as a silent no-op -- the same - // failure mode the sliced arm spent a whole campaign in. + // failure mode the sliced arm spent a whole campaign in. And for what it + // is: a link error (an undefined reach_error) used to be reported as a + // build that ran out of time. std::error_code fuzzErr; if (!std::filesystem::exists(programHash + "-fuzzed.out", fuzzErr)) { + std::string why; + if (built == 31744) { // timeout's 124 + why = "did not build within " + + std::to_string(static_cast(compileBudget)) + "s"; + } else { + std::ifstream buildLog("afl-build.log"); + // The first complaint names the cause (an undefined reference); + // the last is only clang's "linker command failed". + std::string line, firstError; + while (firstError.empty() && std::getline(buildLog, line)) { + if (line.find("error") != std::string::npos || + line.find("undefined reference") != std::string::npos) { + firstError = line; + } + } + why = "failed to build (status " + std::to_string(built) + ")" + + (firstError.empty() ? "" : ": " + firstError); + } Map2Check::Log::Warning( - "the AFL++ binary did not build within " + - std::to_string(static_cast(compileBudget)) + - "s -- skipping the fuzzer phase and leaving the budget to KLEE"); + "the AFL++ binary " + why + + " -- skipping the fuzzer phase and leaving the budget to KLEE"); } else if (!std::filesystem::exists(programHash + "-cmplog.out", fuzzErr)) { Map2Check::Log::Warning( diff --git a/tests/integration/test_testcomp_regressions.sh b/tests/integration/test_testcomp_regressions.sh index 954dd5df8..580987ae9 100755 --- a/tests/integration/test_testcomp_regressions.sh +++ b/tests/integration/test_testcomp_regressions.sh @@ -1228,6 +1228,24 @@ else fail "intrinsics soundness" "safe program: $(grep -aoE 'VERIFICATION [A-Z]+|FALSE[-_A-Z]*' "$WORK/intrinsics/safe.log" | tr '\n' ' ')" fi +# --- 35. a fuzzer binary that fails to link says so --------------------------- +# Every missing AFL++ binary was reported as one that "did not build within +# Ns", the budget's fault -- including a link error that no budget would fix. +mkdir -p "$WORK/afllink" +cat > "$WORK/afllink/decl.c" <<'EOF2' +extern void reach_error(void); +extern int __VERIFIER_nondet_int(void); +int main(void) { if (__VERIFIER_nondet_int() == 3) reach_error(); return 0; } +EOF2 +( cd "$WORK/afllink" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 100 "$MAP2CHECK" \ + --nondet-generator afl --target-function --target-function-name reach_error \ + --timeout 30 decl.c ) > "$WORK/afllink/decl.log" 2>&1 +if grep -q "AFL++ binary failed to build.*undefined reference" "$WORK/afllink/decl.log"; then + ok "a fuzzer link error is reported as one, with its cause" +else + fail "fuzzer link error" "$(grep -a 'AFL++ binary' "$WORK/afllink/decl.log" | head -1)" +fi + echo " ---" echo " Results: $PASSED passed, $FAILED failed" [ "$FAILED" -eq 0 ] || exit 1 From b664ae68f91a32ef2770d7748229d4376e13c871 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 14:56:20 -0400 Subject: [PATCH 29/88] feat(seeds): the fuzzer entries that reached new edges go to KLEE first KLEE takes at most 64 queue entries, and they were the oldest by id: once the queue outgrew the cap, what the fuzzer found late never reached KLEE. AFL++ marks the entries that hit new edges with ',+cov'; those now come first, each group in id order (tacas 3c, v1). Co-Authored-By: Claude Opus 5.5 (1M context) --- ...2026-09-29-tacas-3c-seed-ranking-design.md | 34 +++++++++++++++++++ modules/frontend/utils/seed_store.hpp | 12 +++++-- tests/unit/frontend/SeedStoreTest.cpp | 14 ++++++++ 3 files changed, 57 insertions(+), 3 deletions(-) create mode 100644 docs/superpowers/specs/2026-09-29-tacas-3c-seed-ranking-design.md diff --git a/docs/superpowers/specs/2026-09-29-tacas-3c-seed-ranking-design.md b/docs/superpowers/specs/2026-09-29-tacas-3c-seed-ranking-design.md new file mode 100644 index 000000000..f7741590b --- /dev/null +++ b/docs/superpowers/specs/2026-09-29-tacas-3c-seed-ranking-design.md @@ -0,0 +1,34 @@ +# tacas 3c — priorização de sementes, v1 (design) + +**Data:** 2026-09-29 +**Branch:** `feat/tacas-3c-seed-ranking`, a partir de `feat/tacas-memtrack-intrinsics` +**Aprovação:** decisões delegadas pelo usuário em 2026-09-29. + +## Problema + +O KLEE recebe no máximo 64 entradas da fila do AFL++ (`kMaxSeedsFromFuzzer`), escolhidas +pelas mais antigas por id. Quando a fila passa de 64, o que era novo no fim do fuzzing fica +de fora, e esse é justamente o caso dos programas maiores. + +## v1 (esta branch) + +- O AFL++ 4.40c marca com `,+cov` as entradas que alcançaram **arestas novas**. As demais só + mudaram as contagens de execução de arestas já vistas. Medido: 2 de 18 entradas numa fila + de 20 s. Não existe `.state/redundant_edges` nesta versão. +- `selectQueueEntries` põe as `+cov` primeiro, em ordem de id, depois as outras, também em + ordem de id, e então corta no limite. +- Teste unitário: `SelectQueueEntries.PutsNewCoverageFirst`. + +## Próximos passos (v2, fora desta branch) + +- **Distância ao alvo** (Cover-Error): priorizar sementes cujo replay passa por blocos mais + próximos de `reach_error` no CFG/SDG. O dg do slicing já tem o grafo. Exige um traço de + blocos no replay, que o `TrackBasicBlockPass` pode fornecer. +- **KLEE → AFL++:** hoje seguem os 64 `.ktest` mais recentes. O KLEE não marca quais estados + cobriram código novo; `--only-output-states-covering-new` mudaria a suíte de CB e não + entra. + +## Medição + +É preciso uma rodada `seeds` e `alternate` com este build contra a R19 (os mesmos braços +sem ranking). Só tem efeito em tarefas cuja fila passa de 64 entradas. diff --git a/modules/frontend/utils/seed_store.hpp b/modules/frontend/utils/seed_store.hpp index 5d0396ccf..23efb5219 100644 --- a/modules/frontend/utils/seed_store.hpp +++ b/modules/frontend/utils/seed_store.hpp @@ -28,9 +28,10 @@ inline std::string seedStorePath(const std::string& cwd, } /** The AFL++ queue entries to hand to KLEE: only real entries ("id:..."), - * in queue order -- AFL++ zero-pads the id, so lexicographic order is id - * order, oldest (simplest) first -- and at most `cap` of them, so replaying - * them cannot eat the phase. Not the seeds the fuzzer started from (",orig:"): + * those that reached new edges ("+cov") first, each group in queue order -- + * AFL++ zero-pads the id, so lexicographic order is id order, oldest + * (simplest) first -- and at most `cap` of them, so replaying them cannot eat + * the phase (tacas 3c). Not the seeds the fuzzer started from (",orig:"): * those are KLEE's own vectors or an earlier round's entries, which KLEE * already has. */ inline std::vector selectQueueEntries( @@ -42,6 +43,11 @@ inline std::vector selectQueueEntries( }), names.end()); std::sort(names.begin(), names.end()); + // Ranked: the entries that reached new edges ("+cov" in AFL++'s name) before + // the ones that only changed hit counts, id order kept inside each group. + std::stable_partition(names.begin(), names.end(), [](const std::string& name) { + return name.find(",+cov") != std::string::npos; + }); if (names.size() > cap) names.resize(cap); return names; } diff --git a/tests/unit/frontend/SeedStoreTest.cpp b/tests/unit/frontend/SeedStoreTest.cpp index b8749846c..d7b40dbf3 100644 --- a/tests/unit/frontend/SeedStoreTest.cpp +++ b/tests/unit/frontend/SeedStoreTest.cpp @@ -51,3 +51,17 @@ TEST(SelectQueueEntries, SkipsTheSeedsTheFuzzerStartedFrom) { ASSERT_EQ(picked.size(), 1u); EXPECT_EQ(picked[0], "id:000001,src:000000,op:havoc"); } + +// Ranked (tacas 3c): the entries that reached new edges ("+cov") first, then +// the ones that only changed hit counts, each in id order -- so when the queue +// outgrows the cap, the seeds KLEE gets are the ones that went somewhere new. +TEST(SelectQueueEntries, PutsNewCoverageFirst) { + const auto picked = Map2Check::selectQueueEntries( + {"id:000001,src:000000,op:havoc", "id:000002,src:000001,op:havoc,+cov", + "id:000003,src:000000,op:havoc", "id:000004,src:000002,op:havoc,+cov"}, + 3); + ASSERT_EQ(picked.size(), 3u); + EXPECT_EQ(picked[0], "id:000002,src:000001,op:havoc,+cov"); + EXPECT_EQ(picked[1], "id:000004,src:000002,op:havoc,+cov"); + EXPECT_EQ(picked[2], "id:000001,src:000000,op:havoc"); +} From 985330816b6a403b44cb3660e81dde9187fb093c Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 14:57:07 -0400 Subject: [PATCH 30/88] docs(tacas): handoff -- 3c v1 and R20 Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/2026-09-29-handoff-tacas.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/docs/reports/2026-09-29-handoff-tacas.md b/docs/reports/2026-09-29-handoff-tacas.md index 2a56716d1..e91e74b86 100644 --- a/docs/reports/2026-09-29-handoff-tacas.md +++ b/docs/reports/2026-09-29-handoff-tacas.md @@ -27,9 +27,11 @@ anterior, ou todas contra `develop` em ordem). | `feat/tacas-smart-seeds` | 3a (sementes), revisão, `provedSafe`, **fix abort → assume**, **fix caminhos descartados** (+ duas correções dele), logs R15/R16/R18 | | `feat/tacas-2d-slicing` | 2d: slice uma vez por execução (cache `.slice/`), knobs `MAP2CHECK_SLICE_CLEANUP` e `MAP2CHECK_SLICER_FLAGS`, `opt` limitado | | `feat/tacas-3b-alternation` | fix AFL (zeros após o fim da entrada); 3b `--alternate-engines`; correções da revisão; `migration-schedule.md` atualizado | -| `feat/tacas-memtrack-intrinsics` | fix: `memset/memcpy/memmove` checados no LLVM 16 (despacho por `MemSetInst`/`MemTransferInst`) | +| `feat/tacas-memtrack-intrinsics` | fix: `memset/memcpy/memmove` checados no LLVM 16 (despacho por `MemSetInst`/`MemTransferInst`); fix: mensagem de erro de link do AFL++ | +| `feat/tacas-3c-seed-ranking` | 3c v1: entradas `+cov` da fila vão primeiro para o KLEE (spec `2026-09-29-tacas-3c-seed-ranking-design.md`) | -- **Ponta da pilha:** `feat/tacas-memtrack-intrinsics` @ `8c70e5a73`, mais este documento. +- **Ponta da pilha:** `feat/tacas-3c-seed-ranking` (a R19 e a R17 usam o build de + `8c70e5a73`; a R20 usa `install_r20`, da ponta com o 3c). - **Testes:** unitários 12/12; integração 46 seções. - **Specs:** - `docs/superpowers/specs/2026-09-29-tacas-2d-slicing-optimizations-design.md`; @@ -85,6 +87,8 @@ anterior, ou todas contra `develop` em ordem). - Manifests `r17-*.tsv`, regenerados com `build_corpus.py` e os mesmos parâmetros da R9/R13. Os originais se perderam em diretórios temporários. - Resultados em `R17--/`. +- **R20:** `r20-sched.sh`, que espera a R19 lançar seus 30 jobs. Mede Cover-Error seeds e + alternate com o ranking do 3c (`install_r20`), para comparar com os mesmos braços da R19. - **R16 Cover-Branches** (`r16-cb-seeds-*`, build antigo) terminando; comparar com a R15. **Análise pendente:** From 6e7bfdd2137bbd5fb445dbd74889fcf6c8b3a194 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 14:58:08 -0400 Subject: [PATCH 31/88] docs(tacas): R16 -- Cover-Branches, the seed exchange 49.7% vs 47.7% Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/tacas-experiment-log.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index 220acf8d5..c38daabca 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -411,3 +411,17 @@ agora exige TRUE. `sin` e `insertion_sort` seguem sem TRUE errado (UNKNOWN; o se a cobertura (o veredito não pontua), só impede o `provedSafe` de encerrar a execução mais cedo em programas com assunções. A R17 (SV-COMP, onde TRUE pontua) precisa do build corrigido. + +### R16 — Cover-Branches, `--seed-exchange` × controle R15 (2026-09-29) + +- Mesma config da R16 Cover-Error (`build_seeds`), amostra `r15-cb.tsv` (120, pareadas). +- **Cobertura média: controle 47,7% × seeds 49,7%** (+2,0 p.p.); melhor em 26 tarefas, pior + em 9. Tempo mediano 195 → 160 s. +- Por categoria (controle → seeds): ControlFlow 41,3 → 57,9, BitVectors 65,7 → 73,7, + Recursive 45,0 → 53,0; **Loops 67,1 → 60,8** (uma tarefa: `geo2-ll_unwindbound50` + −62,5 p.p.), XCSP 77,7 → 75,0 (`AllInterval-011` −27 p.p.). +- TestCov: VALIDATED 118 (R15: 116), VALIDATED_ABORTS 1 (3). +- **Leitura:** diferente da tacasv2 (neutra em CB), a troca de sementes melhora a cobertura + de ramos, apesar de a suíte de CB sair só do KLEE — o KLEE semeado explora ramos que o + controle não alcançava. As duas quedas grandes ficam para a R19 confirmar (ruído do + fuzzer × efeito real). From caf30b6c905cd734cb51ba511596eaa77405c5ba Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 18:19:05 -0400 Subject: [PATCH 32/88] docs(tacas): R17 and a partial R19 Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/tacas-experiment-log.md | 49 ++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index c38daabca..95765229e 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -425,3 +425,52 @@ corrigido. de ramos, apesar de a suíte de CB sair só do KLEE — o KLEE semeado explora ramos que o controle não alcançava. As duas quedas grandes ficam para a R19 confirmar (ruído do fuzzer × efeito real). + +## R17 — SV-COMP MemSafety/MemCleanup/NoOverflows, control × seeds × alternate (2026-09-29) + +- **Config:** `install_r19` (commit 8c70e5a73), manifests regenerados com `build_corpus.py` + (memsafety 10/categoria = 50, memcleanup 10, overflow 10/categoria = 20), 120 s. + +| memsafety (50) | correct-true | correct-false | wrong-true | wrong-false | unknown | error | +|---|---|---|---|---|---|---| +| control | 10 | 19 | 2 | 3 | 10 | 6 | +| seeds | 10 | 20 | 1 | 3 | 10 | 6 | +| alternate | 9 | 20 | 1 | 3 | 10 | 7 | + +- MemCleanup (10): control 6 corretos, seeds 6, alternate 6. NoOverflows (20): control e + seeds 2 correct-true + 17 unknown; alternate incompleto no momento do registro. +- **wrong-true comum aos três:** `CWE121…CWE193_char_declare_cpy_07_bad`. Causa: o modelo + `ldv_strcpy` copia `strlen` bytes (sem o terminador) e o estouro real é a **leitura** em + `printf("%s")` — que o KLEE executa como **chamada externa** (a uClibc do KLEE declara + `printf` sem defini-lo: `calling external: printf(...)`), fora de qualquer checagem, e o + memtrack não confere argumentos `%s`. Lacuna de solidez pré-existente; correção em + aberto: checar a string de cada `%s` (e `puts`/`str*`) antes da chamada. +- **wrong-true só no control:** `CWE122…CWE129_rand_18_bad` — os braços com sementes o + acham (FALSE correto). +- **Os 6 `error` são do classificador, não da ferramenta:** as tarefas + `array-memsafety/*-alloca` têm `alloca` de tamanho não determinístico; o AFL++ acha um + crash (pilha estourada), o replay imprime "Segmentation fault", e + `verdict_classifier.sh` conta isso como falha — embora o Map2Check termine com UNKNOWN + (o KLEE concretiza o tamanho → `model.err` → caminho descartado). +- **Leitura:** as sementes não pioram nada em SV-COMP e ganham 1 FALSE e eliminam 1 TRUE + errado; a alternância perde 1 TRUE correto frente ao control (a estagnação corta o KLEE + — o preço previsto na revisão). + +## R19 — Test-Comp, parcial (2026-09-29) + +- **Cover-Error, 171 tarefas pareadas nos 4 braços principais** (o shard 0 do braço seeds + perdeu 42 tarefas por um incidente de escrita e está sendo completado): + +| braço | cobertas | TRUE errado | ERROR | tempo mediano | +|---|---|---|---|---| +| R15 control (referência) | 101 | 5 | 0 | 6 s | +| control | 101 | **0** | 0 | 3 s | +| **seeds** | **120** | 0 | 0 | 5 s | +| alternate | 118 | 0 | 0 | 14 s | +| slice | 102 | 0 | 2 | 4 s | + +- seeds × control: **+20 −1**; alternate × control: +17 −0; alternate × seeds: +4 −6; + slice × control: +3 −2. +- **TRUE errado zerado em todos os braços** (eram 5 no control R15): as correções do abort e + dos caminhos descartados confirmadas em escala. +- Braços slice-light/o2/ntscd/ptafs e Cover-Branches ainda rodando. From e482c3a0afae0dc758f1e80068a0a465f8757cb7 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 18:20:08 -0400 Subject: [PATCH 33/88] fix(eval): a crash replayed from the fuzzer is not a tool failure The classifier read any 'Segmentation fault' as ERROR. After 'Exited fuzzer with' and before the next phase, the process that dumps core is the program under test, replayed on the fuzzer's crash to confirm it: the six array-memsafety/*-alloca tasks of R17 (a nondet-sized alloca) came out ERROR although map2check went on to KLEE and answered UNKNOWN. A KLEE crash is still ERROR. Co-Authored-By: Claude Opus 5.5 (1M context) --- tests/integration/test_verdict_classifier.sh | 16 ++++++++++++++++ tests/lib/verdict_classifier.sh | 10 +++++++++- 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/tests/integration/test_verdict_classifier.sh b/tests/integration/test_verdict_classifier.sh index 6c03c4c73..904e1d5d3 100644 --- a/tests/integration/test_verdict_classifier.sh +++ b/tests/integration/test_verdict_classifier.sh @@ -60,6 +60,22 @@ VERIFICATION UNKNOWN' check "KLEE crash is ERROR, not TIMEOUT" \ ERROR "$HYBRID_CRASH" 0 13 60 +# The fuzzer's crash replayed through the program under test: the program +# segfaults (a nondet-sized alloca), which is what a crash replay is for. Not +# a tool failure -- the tool went on to KLEE and answered. +AFL_REPLAY_CRASH='Executing AFL++ with map2check +Exited fuzzer with 0 +timeout: the monitored command dumped core +Segmentation fault +Note: Could not replicate error +VERIFICATION UNKNOWN +Started Map2Check +Executing Klee with map2check +Exited klee with 0 +VERIFICATION UNKNOWN' +check "a crash replayed from the fuzzer is not ERROR" \ + UNKNOWN "$AFL_REPLAY_CRASH" 0 13 60 + # A definitive verdict still wins even when a phase died along the way. check "verdict survives a crash in the other phase" \ FALSE-OVERFLOW "$HYBRID_CRASH diff --git a/tests/lib/verdict_classifier.sh b/tests/lib/verdict_classifier.sh index 2eaba2b83..2040d0b08 100644 --- a/tests/lib/verdict_classifier.sh +++ b/tests/lib/verdict_classifier.sh @@ -72,7 +72,15 @@ classify_map2check_verdict() { if echo "$output" | grep -E "undefined reference to" | grep -qv "KLEE: WARNING"; then echo "ERROR"; return fi - if echo "$output" | grep -qE "Segmentation fault|dumped core|Aborted \(core dumped\)"; then + # A crash counts where the TOOL crashed. After "Exited fuzzer with" and + # before the next phase, the process that dumps core is the program under + # test, replayed on the fuzzer's crash to confirm it -- that is the program + # crashing, as it should (array-memsafety/*-alloca: a nondet-sized alloca). + if echo "$output" | awk ' + /Exited fuzzer with/ { replay = 1 } + /Started Map2Check/ { replay = 0 } + /Segmentation fault|dumped core|Aborted \(core dumped\)/ { if (!replay) found = 1 } + END { exit !found }'; then echo "ERROR"; return fi From e3a25009d183d0b684070a360fdaa5a388a3dfad Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 18:22:17 -0400 Subject: [PATCH 34/88] fix(memtrack): check the strings a %s or puts will read KLEE's uClibc declares printf without defining it, so KLEE runs it as a native external call and whatever it reads is read outside every check. An unterminated buffer printed with %s came back TRUE -- Juliet's CWE121 CWE193 'cpy' tasks, whose ldv_strcpy model copies strlen bytes and leaves the overflow to the printLine that follows (R17, wrong TRUE in every arm). Before printf/fprintf/sprintf/snprintf with a constant format, each %s argument without a precision (a %.Ns may point at an unterminated buffer) is checked byte by byte to its terminator by map2check_check_cstring; puts and fputs check their string. Integration section 36: the unterminated buffer is a FALSE-DEREF; terminated strings, literals, %.3s and puts stay TRUE. Co-Authored-By: Claude Opus 5.5 (1M context) --- .../library/lib/AnalysisModeMemcleanup.c | 1 + .../library/lib/AnalysisModeMemtrack.c | 12 +++ modules/backend/pass/MemoryTrackPass.cpp | 99 +++++++++++++++++++ modules/backend/pass/MemoryTrackPass.hpp | 4 + .../integration/test_testcomp_regressions.sh | 47 +++++++++ 5 files changed, 163 insertions(+) diff --git a/modules/backend/library/lib/AnalysisModeMemcleanup.c b/modules/backend/library/lib/AnalysisModeMemcleanup.c index d66439869..3c506b206 100644 --- a/modules/backend/library/lib/AnalysisModeMemcleanup.c +++ b/modules/backend/library/lib/AnalysisModeMemcleanup.c @@ -156,6 +156,7 @@ void analysis_generate_aux_witness_files() { // TODO: FIX THIS, not working for static array #include void map2check_load(void *ptr, int size) {} +void map2check_check_cstring(const char *string) {} void map2check_free_resolved_address(void *ptr, unsigned line, const char *function_name, diff --git a/modules/backend/library/lib/AnalysisModeMemtrack.c b/modules/backend/library/lib/AnalysisModeMemtrack.c index 87e79ad1f..a06f363c3 100644 --- a/modules/backend/library/lib/AnalysisModeMemtrack.c +++ b/modules/backend/library/lib/AnalysisModeMemtrack.c @@ -153,6 +153,18 @@ void analysis_generate_aux_witness_files() { // TODO: FIX THIS, not working for static array #include +/* Every byte a %s or puts will read, up to the terminator: each must lie in + * a live allocation. Stops at the first invalid byte (ERROR_DEREF is set and + * the caller's map2check_check_deref reports it), before reading it. */ +void map2check_check_cstring(const char *string) { + if (string == NULL) return; + for (unsigned long i = 0;; ++i) { + map2check_load((void *)(string + i), 1); + if (ERROR_DEREF) return; + if (string[i] == '\0') return; + } +} + void map2check_load(void *ptr, int size) { if (!is_valid_heap_address(&heap_log, ptr, size)) { if (!is_valid_allocation_address(&allocation_log, ptr, size)) { diff --git a/modules/backend/pass/MemoryTrackPass.cpp b/modules/backend/pass/MemoryTrackPass.cpp index e4824064f..68d7cd4a6 100644 --- a/modules/backend/pass/MemoryTrackPass.cpp +++ b/modules/backend/pass/MemoryTrackPass.cpp @@ -12,6 +12,7 @@ #include +#include #include #include #include @@ -258,6 +259,96 @@ void MemoryTrackPass::instrumentMemcpy() { builder.CreateCall(map2check_check_deref, args3); } +namespace { +/** The argument positions a constant printf format reads as strings: each + * %s without a precision (a %.Ns may legitimately point at an unterminated + * buffer). `first` is the position of the first variadic argument. Returns + * nothing for a format it cannot follow (%n$ positional arguments). */ +std::vector stringArgumentsOf(llvm::StringRef format, + unsigned first) { + std::vector positions; + unsigned argument = first; + for (size_t i = 0; i < format.size(); ++i) { + if (format[i] != '%') continue; + ++i; + if (i < format.size() && format[i] == '%') continue; + // flags + while (i < format.size() && llvm::StringRef("-+ #0'").contains(format[i])) + ++i; + // width + if (i < format.size() && format[i] == '*') { + ++argument; + ++i; + } + while (i < format.size() && isdigit(static_cast(format[i]))) + ++i; + if (i < format.size() && format[i] == '$') return {}; + // precision + bool precision = false; + if (i < format.size() && format[i] == '.') { + precision = true; + ++i; + if (i < format.size() && format[i] == '*') { + ++argument; + ++i; + } + while (i < format.size() && + isdigit(static_cast(format[i]))) + ++i; + } + // length modifiers + bool wide = false; + while (i < format.size() && llvm::StringRef("hlLqjzt").contains(format[i])) { + if (format[i] == 'l') wide = true; + ++i; + } + if (i >= format.size()) break; + if (format[i] == 's' && !precision && !wide) positions.push_back(argument); + ++argument; + } + return positions; +} +} // namespace + +/* KLEE's uClibc declares printf without defining it, so KLEE runs it as a + * native external call: whatever it reads is read outside every check. An + * unterminated buffer printed with %s -- Juliet's CWE121 CWE193 "cpy" tasks -- + * came back TRUE. The strings the call will read are checked here, before it: + * the format's %s arguments when the format is a constant, the first argument + * of puts/fputs. */ +void MemoryTrackPass::instrumentCStringArguments() { + CallInst *callInst = dyn_cast(&*this->currentInstruction); + llvm::StringRef name = this->calleeFunction->getName(); + + std::vector strings; + if (name == "puts" || name == "fputs") { + strings.push_back(0); + } else { + const unsigned formatIndex = + name == "printf" ? 0 : (name == "snprintf" ? 2 : 1); + if (callInst->arg_size() <= formatIndex) return; + llvm::StringRef format; + if (!llvm::getConstantStringInfo(callInst->getArgOperand(formatIndex), + format)) { + return; + } + strings = stringArgumentsOf(format, formatIndex + 1); + } + if (strings.empty()) return; + + IRBuilder<> builder(&*this->currentInstruction); + Value *function_llvm = + builder.CreateGlobalStringPtr(this->currentFunction->getName()); + for (unsigned position : strings) { + if (position >= callInst->arg_size()) continue; + Value *argument = callInst->getArgOperand(position); + if (!argument->getType()->isPointerTy()) continue; + builder.CreateCall(map2check_check_cstring, {argument}); + } + Value *args[] = {this->line_value, function_llvm}; + builder.CreateCall(map2check_check_deref, args); +} + void MemoryTrackPass::instrumentAlloca() { CallInst *callInst = dyn_cast(&*this->currentInstruction); auto j = this->currentInstruction; @@ -516,6 +607,10 @@ void MemoryTrackPass::switchCallInstruction() { } else if (llvm::isa(&*this->currentInstruction) || calleeName == "memcpy" || calleeName == "memmove") { this->instrumentMemcpy(); + } else if (calleeName == "printf" || calleeName == "fprintf" || + calleeName == "sprintf" || calleeName == "snprintf" || + calleeName == "puts" || calleeName == "fputs") { + this->instrumentCStringArguments(); } else if (this->calleeFunction->getName() == "malloc") { this->instrumentMalloc(); } else if (this->calleeFunction->getName() == "valloc") { @@ -786,6 +881,10 @@ void MemoryTrackPass::prepareMap2CheckInstructions() { Type::getInt64Ty(*this->Ctx), PointerType::get(*this->Ctx, 0), Type::getInt64Ty(*this->Ctx), PointerType::get(*this->Ctx, 0)); + this->map2check_check_cstring = F.getParent()->getOrInsertFunction( + "map2check_check_cstring", Type::getVoidTy(*this->Ctx), + PointerType::get(*this->Ctx, 0)); + this->map2check_check_deref = F.getParent()->getOrInsertFunction( "map2check_check_deref", Type::getVoidTy(*this->Ctx), Type::getInt64Ty(*this->Ctx), PointerType::get(*this->Ctx, 0)); diff --git a/modules/backend/pass/MemoryTrackPass.hpp b/modules/backend/pass/MemoryTrackPass.hpp index 2d404a9d2..b80148a21 100644 --- a/modules/backend/pass/MemoryTrackPass.hpp +++ b/modules/backend/pass/MemoryTrackPass.hpp @@ -49,6 +49,9 @@ struct MemoryTrackPass : public llvm::PassInfoMixin { void instrumentRealloc(); void instrumentMemset(); void instrumentMemcpy(); + /** Checks, before a printf-family call or puts/fputs, every string the call + * will read to its terminator (see the definition). */ + void instrumentCStringArguments(); void instrumentPosixMemAllign(); void instrumentFree(); void instrumentInit(); @@ -92,6 +95,7 @@ struct MemoryTrackPass : public llvm::PassInfoMixin { FunctionCallee map2check_non_static_alloca; FunctionCallee map2check_posix; FunctionCallee map2check_load; + FunctionCallee map2check_check_cstring; FunctionCallee map2check_check_deref; FunctionCallee map2check_function; FunctionCallee map2check_free_resolved_address; diff --git a/tests/integration/test_testcomp_regressions.sh b/tests/integration/test_testcomp_regressions.sh index 580987ae9..ba63fcaf0 100755 --- a/tests/integration/test_testcomp_regressions.sh +++ b/tests/integration/test_testcomp_regressions.sh @@ -1246,6 +1246,53 @@ else fail "fuzzer link error" "$(grep -a 'AFL++ binary' "$WORK/afllink/decl.log" | head -1)" fi +# --- 36. a %s that reads past its buffer is a FALSE-DEREF -------------------- +# KLEE's uClibc declares printf without defining it, so KLEE runs it as a +# native external call: the read of an unterminated string happened outside +# every check, and Juliet's CWE121 CWE193 "cpy" tasks came back TRUE. The +# strings a %s (or puts) will read are checked before the call. +mkdir -p "$WORK/cstring" +cat > "$WORK/cstring/unterminated.c" <<'EOF2' +#include +#include +int main(void) { + char buf[10]; + char src[11] = "AAAAAAAAAA"; + memcpy(buf, src, strlen(src)); + printf("%s\n", buf); + return 0; +} +EOF2 +cat > "$WORK/cstring/fine.c" <<'EOF2' +#include +#include +#include +int main(void) { + char buf[16] = "hello"; + char *heap = malloc(8); + if (!heap) return 0; + strcpy(heap, "abc"); + printf("%s %s %d %.3s %5s\n", buf, "literal", 42, heap, heap); + puts(buf); + free(heap); + return 0; +} +EOF2 +( cd "$WORK/cstring" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 200 "$MAP2CHECK" \ + --memtrack --nondet-generator symex --timeout 45 unterminated.c ) > "$WORK/cstring/unterminated.log" 2>&1 +( cd "$WORK/cstring" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 200 "$MAP2CHECK" \ + --memtrack --nondet-generator symex --timeout 45 fine.c ) > "$WORK/cstring/fine.log" 2>&1 +if grep -q "FALSE-DEREF" "$WORK/cstring/unterminated.log"; then + ok "printing an unterminated buffer with %s is a FALSE-DEREF" +else + fail "%s past the buffer" "expected FALSE-DEREF, got: $(grep -aoE 'VERIFICATION [A-Z]+' "$WORK/cstring/unterminated.log" | tail -1)" +fi +if grep -q "VERIFICATION SUCCEEDED" "$WORK/cstring/fine.log"; then + ok "terminated strings, literals, %.Ns and puts stay TRUE" +else + fail "%s soundness" "fine program: $(grep -aoE 'VERIFICATION [A-Z]+|FALSE[-_A-Z]*' "$WORK/cstring/fine.log" | tr '\n' ' ')" +fi + echo " ---" echo " Results: $PASSED passed, $FAILED failed" [ "$FAILED" -eq 0 ] || exit 1 From f18be77228d2e661779f5e10f3d35508e6dcde94 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 21:17:17 -0400 Subject: [PATCH 35/88] fix(memtrack): the %s checks behind MAP2CHECK_CHECK_CSTRINGS=1 R21 showed both sides of the check on 50 SV-COMP MemSafety tasks: it fixes the wrong TRUE of CWE121 CWE193 cpy bad (the copy fills the buffer, the read always overruns it) and makes a wrong FALSE on dest_char_declare_cpy_01_good, whose terminator is a byte never initialized -- a terminator for SV-COMP, not for a native or KLEE run (KLEE fills allocas with a nonzero pattern). Off by default until measured on more of Juliet. Co-Authored-By: Claude Opus 5.5 (1M context) --- modules/backend/pass/MemoryTrackPass.cpp | 19 ++++++++++++++++--- .../integration/test_testcomp_regressions.sh | 6 +++--- 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/modules/backend/pass/MemoryTrackPass.cpp b/modules/backend/pass/MemoryTrackPass.cpp index 68d7cd4a6..475c930a3 100644 --- a/modules/backend/pass/MemoryTrackPass.cpp +++ b/modules/backend/pass/MemoryTrackPass.cpp @@ -10,6 +10,8 @@ #include "MemoryTrackPass.hpp" +#include +#include #include #include @@ -260,6 +262,16 @@ void MemoryTrackPass::instrumentMemcpy() { } namespace { +/** Behind MAP2CHECK_CHECK_CSTRINGS=1 until measured on more of Juliet. The + * check fixes a wrong TRUE (CWE193 "cpy" bad: the buffer is full, the read + * always overruns it) and makes a wrong FALSE on the matching good tasks, whose + * terminator is a byte never initialized -- which SV-COMP counts as a + * terminator and a native or KLEE run does not (R21: one of each in 50). */ +bool cstringChecksEnabled() { + const char *knob = std::getenv("MAP2CHECK_CHECK_CSTRINGS"); + return knob != nullptr && std::string(knob) == "1"; +} + /** The argument positions a constant printf format reads as strings: each * %s without a precision (a %.Ns may legitimately point at an unterminated * buffer). `first` is the position of the first variadic argument. Returns @@ -607,9 +619,10 @@ void MemoryTrackPass::switchCallInstruction() { } else if (llvm::isa(&*this->currentInstruction) || calleeName == "memcpy" || calleeName == "memmove") { this->instrumentMemcpy(); - } else if (calleeName == "printf" || calleeName == "fprintf" || - calleeName == "sprintf" || calleeName == "snprintf" || - calleeName == "puts" || calleeName == "fputs") { + } else if ((calleeName == "printf" || calleeName == "fprintf" || + calleeName == "sprintf" || calleeName == "snprintf" || + calleeName == "puts" || calleeName == "fputs") && + cstringChecksEnabled()) { this->instrumentCStringArguments(); } else if (this->calleeFunction->getName() == "malloc") { this->instrumentMalloc(); diff --git a/tests/integration/test_testcomp_regressions.sh b/tests/integration/test_testcomp_regressions.sh index ba63fcaf0..d65ccbb01 100755 --- a/tests/integration/test_testcomp_regressions.sh +++ b/tests/integration/test_testcomp_regressions.sh @@ -1246,7 +1246,7 @@ else fail "fuzzer link error" "$(grep -a 'AFL++ binary' "$WORK/afllink/decl.log" | head -1)" fi -# --- 36. a %s that reads past its buffer is a FALSE-DEREF -------------------- +# --- 36. MAP2CHECK_CHECK_CSTRINGS=1: a %s that reads past its buffer is a FALSE-DEREF # KLEE's uClibc declares printf without defining it, so KLEE runs it as a # native external call: the read of an unterminated string happened outside # every check, and Juliet's CWE121 CWE193 "cpy" tasks came back TRUE. The @@ -1278,9 +1278,9 @@ int main(void) { return 0; } EOF2 -( cd "$WORK/cstring" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 200 "$MAP2CHECK" \ +( cd "$WORK/cstring" && MAP2CHECK_CHECK_CSTRINGS=1 MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 200 "$MAP2CHECK" \ --memtrack --nondet-generator symex --timeout 45 unterminated.c ) > "$WORK/cstring/unterminated.log" 2>&1 -( cd "$WORK/cstring" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 200 "$MAP2CHECK" \ +( cd "$WORK/cstring" && MAP2CHECK_CHECK_CSTRINGS=1 MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 200 "$MAP2CHECK" \ --memtrack --nondet-generator symex --timeout 45 fine.c ) > "$WORK/cstring/fine.log" 2>&1 if grep -q "FALSE-DEREF" "$WORK/cstring/unterminated.log"; then ok "printing an unterminated buffer with %s is a FALSE-DEREF" From d6da7c518a1a16a11f6d7779f31c11dbea75103e Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 18:24:57 -0400 Subject: [PATCH 36/88] feat(suite): the fuzzer's corpus in the Cover-Branches suite (knob) The Cover-Branches suite came only from KLEE's paths; the fuzzer's queue -- the inputs that reached new edges -- was thrown away with the scratch directory. With MAP2CHECK_FUZZER_SUITE=1 a fuzzer phase replays its ranked queue through the witness binary for the values each entry reads and writes them as test cases, up to half the suite so KLEE's paths keep room, without duplicates. Off by default until measured (R22). Co-Authored-By: Claude Opus 5.5 (1M context) --- modules/frontend/caller.cpp | 43 +++++++++++++++++++ modules/frontend/caller.hpp | 6 +++ modules/frontend/map2check.cpp | 33 +++++++++++++- .../integration/test_testcomp_regressions.sh | 26 +++++++++++ 4 files changed, 106 insertions(+), 2 deletions(-) diff --git a/modules/frontend/caller.cpp b/modules/frontend/caller.cpp index 724604738..1318986ce 100644 --- a/modules/frontend/caller.cpp +++ b/modules/frontend/caller.cpp @@ -38,6 +38,7 @@ #endif #include "test_suite/ktest_reader.hpp" +#include "test_suite/test_suite.hpp" #include "utils/gen_crypto_hash.hpp" #include "utils/alternation.hpp" #include "utils/log.hpp" @@ -391,6 +392,48 @@ std::string environmentKnob(const char *name) { } } // namespace +std::vector> Caller::fuzzerCorpusVectors( + size_t cap) { + std::vector> vectors; + std::error_code error; + const std::string queue = "afl-out/default/queue"; + const std::string replay = + std::filesystem::absolute("suite-replay", error).string(); + const std::string witness = + std::filesystem::absolute(programHash + "-witness-fuzzed.out", error) + .string(); + if (!std::filesystem::exists(witness, error)) return vectors; + + std::vector names; + for (const auto &entry : std::filesystem::directory_iterator(queue, error)) { + if (entry.is_regular_file(error)) { + names.push_back(entry.path().filename().string()); + } + } + const auto started = std::chrono::steady_clock::now(); + const auto allowed = std::chrono::duration( + std::max(2.0, 0.05 * static_cast(this->timeout))); + std::set> seen; + for (const std::string &name : Map2Check::selectQueueEntries(names, cap)) { + if (std::chrono::steady_clock::now() - started >= allowed) break; + std::filesystem::remove_all(replay, error); + std::filesystem::create_directories(replay, error); + const std::string input = + std::filesystem::absolute(queue + "/" + name, error).string(); + std::ostringstream command; + command << "cd '" << replay + << "' && MAP2CHECK_SEED_REPLAY=1 timeout -k 1 2 '" << witness + << "' < '" << input << "' > /dev/null 2>&1"; + system(command.str().c_str()); + std::vector values = + Map2Check::readNonDetLog(replay + "/" + Map2Check::kleeLogCSV); + if (values.empty() || !seen.insert(values).second) continue; + vectors.push_back(values); + } + std::filesystem::remove_all(replay, error); + return vectors; +} + bool Caller::runSlicer(const std::string &input, const std::string &output, std::vector primary, bool addRuntimeNames, const std::string &entry, const std::string &label) { diff --git a/modules/frontend/caller.hpp b/modules/frontend/caller.hpp index 6430ec84e..6c06cd894 100644 --- a/modules/frontend/caller.hpp +++ b/modules/frontend/caller.hpp @@ -213,6 +213,12 @@ class Caller { * replay/ directory. Returns how many seeds were written. */ unsigned exportFuzzerCorpusAsKtests(); + /** The fuzzer's corpus as test-case vectors (Cover-Branches): at most `cap` + * queue entries, ranked as for KLEE, each replayed through the witness + * binary for the values it actually reads, duplicates dropped. Bounded like + * the KLEE export (5% of the budget). Empty when no fuzzer ran. */ + std::vector> fuzzerCorpusVectors(size_t cap); + /** Instrument and execute nondeterministic generator */ void applyNonDetGenerator(); diff --git a/modules/frontend/map2check.cpp b/modules/frontend/map2check.cpp index 0a0d1082e..5176c5504 100644 --- a/modules/frontend/map2check.cpp +++ b/modules/frontend/map2check.cpp @@ -152,7 +152,8 @@ void emitTestSuite(const std::string &outputDir, const std::string &programFile, const std::string &entryFunction, const std::string &architecture, const std::string &specification, bool foundViolation, - bool coverBranches, Map2Check::Map2CheckMode mode) { + bool coverBranches, Map2Check::Map2CheckMode mode, + const std::vector> &fuzzerVectors) { Map2Check::TestSuiteMetadata metadata; metadata.producer = std::string("Map2Check ") + Map2CheckVersion; metadata.specification = specification; @@ -183,6 +184,23 @@ void emitTestSuite(const std::string &outputDir, const std::string &programFile, // every KLEE phase adds cases, and later phases replay the vectors earlier // ones already wrote (seeds) -- those are skipped. if (coverBranches) { + // The fuzzer's share first, at most half the suite, so KLEE's paths still + // find room: its corpus is ranked by new edges, the cases a coverage + // metric rewards by construction (MAP2CHECK_FUZZER_SUITE=1). + size_t fromFuzzer = 0; + for (const std::vector &inputs : fuzzerVectors) { + if (writer.caseCount() >= kMaxBranchTestCases / 2) break; + if (writer.hasTestCase(inputs)) continue; + if (!writer.writeTestCase(inputs, false)) { + Map2Check::Log::Warning("could not write test case to " + outputDir); + return; + } + ++fromFuzzer; + } + if (!fuzzerVectors.empty()) { + Map2Check::Log::Info("Test suite: " + std::to_string(fromFuzzer) + + " test cases from the fuzzer's corpus"); + } constexpr size_t kMaxKtestsRead = 5000; std::vector> vectors = Map2Check::readKtestVectors(Map2Check::kleeOutputDir, kMaxKtestsRead); @@ -839,11 +857,22 @@ int map2check_execution(map2check_args args) { if (!fs::path(outputDir).is_absolute()) { outputDir = caller->getOriginalPath() + "/" + outputDir; } + // Cover-Branches used only KLEE's paths: the fuzzer's corpus, the inputs + // that reached new edges, was thrown away with the scratch directory. + // Behind MAP2CHECK_FUZZER_SUITE=1 until measured. + std::vector> fuzzerVectors; + const char *fuzzerSuite = std::getenv("MAP2CHECK_FUZZER_SUITE"); + if (args.coverBranches && fuzzerSuite != nullptr && + std::string(fuzzerSuite) == "1" && + generator == Map2Check::NonDetGenerator::AFLPlusPlus) { + fuzzerVectors = caller->fuzzerCorpusVectors(kMaxBranchTestCases); + } emitTestSuite(outputDir, caller->c_program_fullpath, args.entryFunction, args.architecture, resolveSpecification(args.propertyFile, caller->getOriginalPath(), args.mode), - foundViolation, args.coverBranches, args.mode); + foundViolation, args.coverBranches, args.mode, + fuzzerVectors); } // (6) Clean map2check execution (folders and temp files) diff --git a/tests/integration/test_testcomp_regressions.sh b/tests/integration/test_testcomp_regressions.sh index d65ccbb01..64b7daad4 100755 --- a/tests/integration/test_testcomp_regressions.sh +++ b/tests/integration/test_testcomp_regressions.sh @@ -1293,6 +1293,32 @@ else fail "%s soundness" "fine program: $(grep -aoE 'VERIFICATION [A-Z]+|FALSE[-_A-Z]*' "$WORK/cstring/fine.log" | tr '\n' ' ')" fi +# --- 37. MAP2CHECK_FUZZER_SUITE=1: the fuzzer's corpus joins a Cover-Branches suite +# The suite came only from KLEE's paths; the fuzzer's queue -- the inputs that +# reached new edges -- was thrown away with the scratch directory. +mkdir -p "$WORK/fuzzersuite" +cat > "$WORK/fuzzersuite/br.c" <<'EOF2' +extern int __VERIFIER_nondet_int(void); +int main(void) { + int a = __VERIFIER_nondet_int(), b = __VERIFIER_nondet_int(); + int r = 0; + if (a > 100) r += 1; else r -= 1; + if (b == 4242) r += 2; + return r; +} +EOF2 +( cd "$WORK/fuzzersuite" && MAP2CHECK_FUZZER_SUITE=1 MAP2CHECK_PATH="$MAP2CHECK_DIR" \ + timeout -k 10 200 "$MAP2CHECK" --cover-branches --generate-test-suite \ + --timeout 40 br.c ) > "$WORK/fuzzersuite/br.log" 2>&1 +fuzzed=$(grep -aoE "[0-9]+ test cases from the fuzzer's corpus" "$WORK/fuzzersuite/br.log" | grep -oE '^[0-9]+') +dups=$( + for f in "$WORK"/fuzzersuite/test-suite/testcase-*.xml; do grep -o '[^<]*' "$f" | tr '\n' ' '; echo; done | sort | uniq -d | wc -l) +if [ "${fuzzed:-0}" -ge 1 ] && [ "$dups" -eq 0 ]; then + ok "the fuzzer's corpus contributes test cases, without duplicates ($fuzzed)" +else + fail "fuzzer suite" "fuzzer cases=${fuzzed:-0}, duplicate cases=$dups" +fi + echo " ---" echo " Results: $PASSED passed, $FAILED failed" [ "$FAILED" -eq 0 ] || exit 1 From d89ef22ff2e929ef4814276efc710c48e1664f56 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 18:25:36 -0400 Subject: [PATCH 37/88] docs(tacas): handoff -- strings, fuzzer suite, R21/R22 Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/2026-09-29-handoff-tacas.md | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/docs/reports/2026-09-29-handoff-tacas.md b/docs/reports/2026-09-29-handoff-tacas.md index e91e74b86..da132a08d 100644 --- a/docs/reports/2026-09-29-handoff-tacas.md +++ b/docs/reports/2026-09-29-handoff-tacas.md @@ -28,7 +28,9 @@ anterior, ou todas contra `develop` em ordem). | `feat/tacas-2d-slicing` | 2d: slice uma vez por execução (cache `.slice/`), knobs `MAP2CHECK_SLICE_CLEANUP` e `MAP2CHECK_SLICER_FLAGS`, `opt` limitado | | `feat/tacas-3b-alternation` | fix AFL (zeros após o fim da entrada); 3b `--alternate-engines`; correções da revisão; `migration-schedule.md` atualizado | | `feat/tacas-memtrack-intrinsics` | fix: `memset/memcpy/memmove` checados no LLVM 16 (despacho por `MemSetInst`/`MemTransferInst`); fix: mensagem de erro de link do AFL++ | -| `feat/tacas-3c-seed-ranking` | 3c v1: entradas `+cov` da fila vão primeiro para o KLEE (spec `2026-09-29-tacas-3c-seed-ranking-design.md`) | +| `feat/tacas-3c-seed-ranking` | 3c v1: entradas `+cov` da fila vão primeiro para o KLEE (spec `2026-09-29-tacas-3c-seed-ranking-design.md`); logs R16-CB/R17/R19 parcial; fix do classificador (segfault do replay do AFL não é ERROR) | +| `feat/tacas-memtrack-strings` | fix: `%s`/`puts` checam a string antes da chamada (o `printf` roda como externa no KLEE → TRUE errado do Juliet CWE193) | +| `feat/tacas-fuzzer-suite` | knob `MAP2CHECK_FUZZER_SUITE=1`: o corpus do AFL++ entra na suíte de Cover-Branches (até metade, sem duplicatas) | - **Ponta da pilha:** `feat/tacas-3c-seed-ranking` (a R19 e a R17 usam o build de `8c70e5a73`; a R20 usa `install_r20`, da ponta com o 3c). @@ -89,6 +91,13 @@ anterior, ou todas contra `develop` em ordem). - Resultados em `R17--/`. - **R20:** `r20-sched.sh`, que espera a R19 lançar seus 30 jobs. Mede Cover-Error seeds e alternate com o ranking do 3c (`install_r20`), para comparar com os mesmos braços da R19. +- **R21:** `r21-sched.sh`. MemSafety e MemCleanup (control) e o CASTLE com `install_r21` + (checagem de `%s`), para comparar com a R17 e a R14. Gate: nenhum falso positivo novo. +- **R22:** `r22-sched.sh`, que espera a R19. Cover-Branches control, seeds e alternate + com `MAP2CHECK_FUZZER_SUITE=1` (`install_r22`), para comparar com a R19. +- **Incidente da R19:** o shard 0 do braço seeds tinha 38 linhas do shard 1 e faltavam 42 + tarefas dele. Foi relançado como `r19-ce-seeds-0-resume` (e `control-0-resume` para 2 + faltantes). Na análise, filtrar as linhas pelo índice no manifest (`i % 3 == shard`). - **R16 Cover-Branches** (`r16-cb-seeds-*`, build antigo) terminando; comparar com a R15. **Análise pendente:** From fd83c4603b61de95af59ab88cb931cfbd9215b73 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 18:46:49 -0400 Subject: [PATCH 38/88] docs(tacas): R17 complete, and why the alternation lost eca-* tasks Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/tacas-experiment-log.md | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index 95765229e..0564f1614 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -438,7 +438,7 @@ corrigido. | alternate | 9 | 20 | 1 | 3 | 10 | 7 | - MemCleanup (10): control 6 corretos, seeds 6, alternate 6. NoOverflows (20): control e - seeds 2 correct-true + 17 unknown; alternate incompleto no momento do registro. + seeds 2 correct-true + 17 unknown; alternate idem (2 + 17 + 1 error) — os três iguais. - **wrong-true comum aos três:** `CWE121…CWE193_char_declare_cpy_07_bad`. Causa: o modelo `ldv_strcpy` copia `strlen` bytes (sem o terminador) e o estouro real é a **leitura** em `printf("%s")` — que o KLEE executa como **chamada externa** (a uClibc do KLEE declara @@ -474,3 +474,22 @@ corrigido. - **TRUE errado zerado em todos os braços** (eram 5 no control R15): as correções do abort e dos caminhos descartados confirmadas em escala. - Braços slice-light/o2/ntscd/ptafs e Cover-Branches ainda rodando. + +### R19 — diagnóstico das perdas de `--alternate-engines` (2026-09-29) + +Contra o braço seeds, a alternância perde 6 e ganha 2; 5 das perdas são eca-*. Reproduzido +em `eca-rers2012/Problem06_label05.c` (300 s): + +- **A troca KLEE → AFL++ estava limitada** aos 64 vetores mais recentes do KLEE. No braço + seeds, a fase 3 do AFL++ recebe todos (4676), e o dry run dela encontra vetores que, + completados com zeros depois do fim, chegam ao `reach_error` (`sig:06`, crashes com + `op:dry_run`). É isso que cobre essas tarefas eca-* que o KLEE sozinho deixa UNKNOWN. + O limite descartava justamente esses vetores. Ele tinha vindo de um laço cuja calibração + nunca terminava, problema já resolvido com a leitura de zeros. +- **Cada fase do AFL++ recompilava os 3 binários:** ~24 s por fase em eca-*. +- **A estagnação fixa de 15 s cortava o AFL++ em ~17 s**, onde o híbrido fixo dava 60 s. + +**Correção** (`fix(hybrid): the fuzzer gets all of KLEE's vectors, built once, with growing +patience`): sem limite na troca, cache dos binários por execução (`.build/`, também +beneficia a fase 3 do braço seeds) e paciência do AFL++ dobrando por rodada. +`Problem06_label05`: UNKNOWN → **FAILED em 157 s** (seeds: 281 s). Remedição na R23. From f1f5237d90020dead5f6ffab89f2713466703a6e Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 18:53:21 -0400 Subject: [PATCH 39/88] docs(tacas): handoff -- R23 and the alternation fix Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/2026-09-29-handoff-tacas.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/docs/reports/2026-09-29-handoff-tacas.md b/docs/reports/2026-09-29-handoff-tacas.md index da132a08d..81b876905 100644 --- a/docs/reports/2026-09-29-handoff-tacas.md +++ b/docs/reports/2026-09-29-handoff-tacas.md @@ -30,6 +30,7 @@ anterior, ou todas contra `develop` em ordem). | `feat/tacas-memtrack-intrinsics` | fix: `memset/memcpy/memmove` checados no LLVM 16 (despacho por `MemSetInst`/`MemTransferInst`); fix: mensagem de erro de link do AFL++ | | `feat/tacas-3c-seed-ranking` | 3c v1: entradas `+cov` da fila vão primeiro para o KLEE (spec `2026-09-29-tacas-3c-seed-ranking-design.md`); logs R16-CB/R17/R19 parcial; fix do classificador (segfault do replay do AFL não é ERROR) | | `feat/tacas-memtrack-strings` | fix: `%s`/`puts` checam a string antes da chamada (o `printf` roda como externa no KLEE → TRUE errado do Juliet CWE193) | +| (3b, depois da R19) | `fix(hybrid): the fuzzer gets all of KLEE's vectors, built once, with growing patience` — as 5 perdas eca-* da alternância | | `feat/tacas-fuzzer-suite` | knob `MAP2CHECK_FUZZER_SUITE=1`: o corpus do AFL++ entra na suíte de Cover-Branches (até metade, sem duplicatas) | - **Ponta da pilha:** `feat/tacas-3c-seed-ranking` (a R19 e a R17 usam o build de @@ -94,7 +95,12 @@ anterior, ou todas contra `develop` em ordem). - **R21:** `r21-sched.sh`. MemSafety e MemCleanup (control) e o CASTLE com `install_r21` (checagem de `%s`), para comparar com a R17 e a R14. Gate: nenhum falso positivo novo. - **R22:** `r22-sched.sh`, que espera a R19. Cover-Branches control, seeds e alternate - com `MAP2CHECK_FUZZER_SUITE=1` (`install_r22`), para comparar com a R19. + com `MAP2CHECK_FUZZER_SUITE=1` (`install_r23`: o `r22-run.sh` foi reapontado), para + comparar com a R19. +- **R23:** `r23-sched.sh`, que espera a R19. Cover-Error seeds e alternate com o build + final (`install_r23`: ponta `feat/tacas-fuzzer-suite`, com a alternância corrigida — sem + limite na troca KLEE → AFL++, cache dos binários do AFL++, paciência crescente). + Comparar com a R19. A R20 ficou só com o braço seeds, que isola o 3c. - **Incidente da R19:** o shard 0 do braço seeds tinha 38 linhas do shard 1 e faltavam 42 tarefas dele. Foi relançado como `r19-ce-seeds-0-resume` (e `control-0-resume` para 2 faltantes). Na análise, filtrar as linhas pelo índice no manifest (`i % 3 == shard`). From 7636ec52a7182db08d66bf7c0af5aae0ec4573da Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 19:06:06 -0400 Subject: [PATCH 40/88] feat(hybrid): run KLEE's vectors on natively, completed with zeros KLEE's partial paths -- the states it dumped at a halt -- stop where the search stopped. Run natively through the fuzzer's witness binary, completed with zeros past their end, some of them go on to the error: that is how the seed-exchange hybrid covered eca-* tasks KLEE left UNKNOWN, by accident, in its last fuzzer phase's dry run. Now done on purpose right after a KLEE phase that found nothing (not for Cover-Branches), within 10% of the budget, with the witness from the AFL++ build cache -- so the plain hybrid gets it too. A violation's files become the phase's, as a confirmed fuzzer crash's do. eca-rers2012/Problem06_label05, plain hybrid: UNKNOWN -> FAILED at 207 s (1850 vectors replayed in 15 s). Measured in R24. Co-Authored-By: Claude Opus 5.5 (1M context) --- modules/frontend/caller.cpp | 83 +++++++++++++++++++++++++++++++++++++ modules/frontend/caller.hpp | 4 ++ 2 files changed, 87 insertions(+) diff --git a/modules/frontend/caller.cpp b/modules/frontend/caller.cpp index 1318986ce..040709878 100644 --- a/modules/frontend/caller.cpp +++ b/modules/frontend/caller.cpp @@ -242,6 +242,82 @@ int Caller::runKleeWatched(const std::string &command) { #endif } +bool Caller::replayKleeVectorsForViolation() { + // KLEE's partial paths -- the states it dumped at a halt -- stop where the + // search stopped. Run natively, completed with zeros past their end (the + // AFL++ generator's rule), some of them go on to the error: that is how the + // fixed hybrid covered eca-* tasks KLEE left UNKNOWN, by accident, in its + // last fuzzer phase's dry run. Done on purpose here, right after KLEE, and + // without needing --seed-exchange. + std::error_code error; + std::string witness; + for (const auto &entry : + std::filesystem::directory_iterator(buildCache, error)) { + const std::string candidate = + entry.path().string() + "/" + programHash + "-witness-fuzzed.out"; + if (std::filesystem::exists(candidate, error)) witness = candidate; + } + if (witness.empty()) return false; + + std::vector tests; + for (const auto &entry : std::filesystem::directory_iterator( + Map2Check::kleeOutputDir, error)) { + if (entry.path().extension() == ".ktest") { + tests.push_back(entry.path().string()); + } + } + std::sort(tests.begin(), tests.end()); + + const std::string replay = + std::filesystem::absolute("vector-replay", error).string(); + const auto started = std::chrono::steady_clock::now(); + const double allowedSeconds = std::min( + 0.1 * static_cast(this->timeout), + static_cast(this->remainingSeconds()) - 5.0); + if (allowedSeconds < 1.0) return false; + const auto allowed = std::chrono::duration(allowedSeconds); + std::set> seen; + unsigned replayed = 0; + for (const std::string &test : tests) { + if (std::chrono::steady_clock::now() - started >= allowed) break; + const std::vector bytes = + Map2Check::ktestToFuzzerBytes(Map2Check::readKtestFile(test)); + if (!seen.insert(bytes).second) continue; + std::filesystem::remove_all(replay, error); + std::filesystem::create_directories(replay, error); + { + std::ofstream input(replay + "/input", std::ios::binary); + input.write(reinterpret_cast(bytes.data()), + static_cast(bytes.size())); + } + std::ostringstream command; + command << "cd '" << replay << "' && timeout -k 1 2 '" << witness + << "' < input > /dev/null 2>&1"; + system(command.str().c_str()); + ++replayed; + if (!std::filesystem::exists(replay + "/map2check_checked_error", error)) { + continue; + } + // A violation: its files (property, nondet log, trace) become this + // phase's, as a confirmed fuzzer crash's do. + for (const auto &entry : + std::filesystem::directory_iterator(replay, error)) { + if (!entry.is_regular_file(error)) continue; + if (entry.path().filename() == "input") continue; + std::filesystem::copy_file( + entry.path(), entry.path().filename(), + std::filesystem::copy_options::overwrite_existing, error); + } + std::filesystem::remove_all(replay, error); + Map2Check::Log::Info("A KLEE vector completed with zeros reaches the " + "violation (" + std::to_string(replayed) + + " replayed)"); + return true; + } + std::filesystem::remove_all(replay, error); + return false; +} + void Caller::keepKleeTestsAsSeeds() { // The latest tests, not the first: KLEE numbers them as states finish, and // the later ones are the deeper paths the next turn should start from. @@ -1315,6 +1391,13 @@ void Caller::executeAnalysis(std::string solvername) { exportKleeVectorsAsSeeds(); } Map2Check::Log::Warning("Exited klee with " + std::to_string(result)); + // KLEE found nothing: its vectors, run on natively. Not for + // Cover-Branches, whose goal is no violation. + if (map2checkMode != Map2CheckMode::COVER_BRANCHES_MODE && + !isWitnessFileCreated() && + !Map2Check::hasViolatingKtest(Map2Check::kleeOutputDir)) { + replayKleeVectorsForViolation(); + } if (result == 31744) // Timeout gotTimeout = true; // Stopped by us for want of progress: states were left, nothing proved. diff --git a/modules/frontend/caller.hpp b/modules/frontend/caller.hpp index 6c06cd894..ee488822e 100644 --- a/modules/frontend/caller.hpp +++ b/modules/frontend/caller.hpp @@ -262,6 +262,10 @@ class Caller { * stagnationLimit seconds; plain system() when the limit is 0 or the build * has no SQLite to read KLEE's stats with. Returns system()'s status. */ int runKleeWatched(const std::string& command); + /** Runs KLEE's vectors natively through the fuzzer's witness binary (from + * the build cache), each completed with zeros past its end; true when one + * reached a violation, whose files are then in the scratch directory. */ + bool replayKleeVectorsForViolation(); /** Keeps KLEE's latest tests (at most kMaxSeedsFromFuzzer) in the seed * store's kleeprev/, to seed its next turn. */ void keepKleeTestsAsSeeds(); From 54c5d5814560c071f2f4d1d56d20779f62ea365c Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 19:06:20 -0400 Subject: [PATCH 41/88] docs(tacas): handoff -- vector replay and R24 Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/2026-09-29-handoff-tacas.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/reports/2026-09-29-handoff-tacas.md b/docs/reports/2026-09-29-handoff-tacas.md index 81b876905..a269e51f4 100644 --- a/docs/reports/2026-09-29-handoff-tacas.md +++ b/docs/reports/2026-09-29-handoff-tacas.md @@ -31,6 +31,7 @@ anterior, ou todas contra `develop` em ordem). | `feat/tacas-3c-seed-ranking` | 3c v1: entradas `+cov` da fila vão primeiro para o KLEE (spec `2026-09-29-tacas-3c-seed-ranking-design.md`); logs R16-CB/R17/R19 parcial; fix do classificador (segfault do replay do AFL não é ERROR) | | `feat/tacas-memtrack-strings` | fix: `%s`/`puts` checam a string antes da chamada (o `printf` roda como externa no KLEE → TRUE errado do Juliet CWE193) | | (3b, depois da R19) | `fix(hybrid): the fuzzer gets all of KLEE's vectors, built once, with growing patience` — as 5 perdas eca-* da alternância | +| `feat/tacas-klee-vector-replay` (acima de fuzzer-suite) | vetores do KLEE executados nativamente com zeros após o fim, depois de cada fase KLEE sem violação (o ganho eca-* do braço seeds, agora explícito e também no híbrido simples) | | `feat/tacas-fuzzer-suite` | knob `MAP2CHECK_FUZZER_SUITE=1`: o corpus do AFL++ entra na suíte de Cover-Branches (até metade, sem duplicatas) | - **Ponta da pilha:** `feat/tacas-3c-seed-ranking` (a R19 e a R17 usam o build de @@ -101,6 +102,9 @@ anterior, ou todas contra `develop` em ordem). final (`install_r23`: ponta `feat/tacas-fuzzer-suite`, com a alternância corrigida — sem limite na troca KLEE → AFL++, cache dos binários do AFL++, paciência crescente). Comparar com a R19. A R20 ficou só com o braço seeds, que isola o 3c. +- **R24:** `r24-sched.sh`, que espera a R19. Cover-Error control e seeds com `install_r24` + (ponta `feat/tacas-klee-vector-replay`). Comparar o control com o da R19 (efeito do + replay de vetores) e o seeds com o da R23. - **Incidente da R19:** o shard 0 do braço seeds tinha 38 linhas do shard 1 e faltavam 42 tarefas dele. Foi relançado como `r19-ce-seeds-0-resume` (e `control-0-resume` para 2 faltantes). Na análise, filtrar as linhas pelo índice no manifest (`i % 3 == shard`). From 65a9286eb53e3416b2cb1f2247ccabcac84c2c78 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 21:01:00 -0400 Subject: [PATCH 42/88] fix(eval): the programs under test must not inherit the manifest The harness reads its manifest on fd 3, and every child inherited it: map2check, KLEE, and through KLEE's native external calls (read, lseek, close on a numeric fd) the program under test itself. The shared offset moved under the loop: a shard ended after 29 of 71 tasks with no deadline reached, and another wrote 38 rows belonging to the next shard (R19, R24). The children now run with fd 3 closed. Co-Authored-By: Claude Opus 5.5 (1M context) --- tests/memsafety/run_memsafety_evaluation.sh | 2 +- tests/testcomp/run_testcomp_evaluation.sh | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/tests/memsafety/run_memsafety_evaluation.sh b/tests/memsafety/run_memsafety_evaluation.sh index 59808767a..11676a542 100755 --- a/tests/memsafety/run_memsafety_evaluation.sh +++ b/tests/memsafety/run_memsafety_evaluation.sh @@ -103,7 +103,7 @@ while IFS=$'\t' read -r category program data_model expected subproperty <&3; do # shellcheck disable=SC2086 # the flag strings are word lists on purpose ( cd "$work" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 $((BUDGET + 30)) \ "$MAP2CHECK" $MODE_FLAGS $EXTRA_FLAGS --architecture "$arch" \ - --timeout "$BUDGET" "$name" ) > "$work/map2check.log" 2>&1 "$work/map2check.log" 2>&1 "$work/map2check.log" 2>&1 "$work/map2check.log" 2>&1 "$work/testcov.log" 2>&1 "$work/testcov.log" 2>&1 Date: Tue, 29 Sep 2026 21:17:49 -0400 Subject: [PATCH 43/88] docs(tacas): R19 and R21 results Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/tacas-experiment-log.md | 61 ++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index 0564f1614..cf79dbfa2 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -493,3 +493,64 @@ em `eca-rers2012/Problem06_label05.c` (300 s): patience`): sem limite na troca, cache dos binários por execução (`.build/`, também beneficia a fase 3 do braço seeds) e paciência do AFL++ dobrando por rodada. `Problem06_label05`: UNKNOWN → **FAILED em 157 s** (seeds: 281 s). Remedição na R23. + +## R19 — resultado (2026-09-29) + +**Cover-Error, 213 tarefas** (linhas filtradas pelo shard; os shards afetados pelo incidente +do descritor 3 foram completados com `-resume`): + +| braço | cobertas | % | TRUE errado | ERROR | vs control | tempo mediano | +|---|---|---|---|---|---|---| +| control | 128 | 60,1 | 0 | 0 | — | 3 s | +| **seeds** | **151** | **70,9** | 0 | 0 | **+23 −0** | 5 s | +| alternate | 148 | 69,5 | 0 | 0 | +20 −0 | 9 s | +| slice | 128 | 60,1 | 0 | 4 | +3 −3 | 4 s | +| slice-light | 127 | 59,6 | 0 | 4 | +3 −4 | 4 s | +| slice-o2 (207) | 128 | 61,8 | 0 | 4 | +5 −3 | 4 s | +| slice-ntscd (181, parcial) | 113 | 62,4 | 0 | 4 | +2 −1 | 5 s | +| slice-ptafs (155, parcial) | 90 | 58,1 | 0 | 4 | +1 −3 | 5 s | + +- **TRUE errado 0 em todos os braços** (R15 control: 5). As correções de veredito se + confirmam em escala. +- **Sementes: +23 −0** contra o control, o melhor resultado da linha TACAS. Alternância: + +20 −0. As 5 perdas eca-* dela frente ao seeds têm causa achada e corrigida (ver o + diagnóstico acima); a remedição fica para a R23. +- **Slicing:** as variantes não mudam o quadro (±3). Nenhuma supera o slice simples com + margem, e nenhum knob é promovido por enquanto. Os 4 ERROR de ECA continuam: o cache do + 2d eliminou o refatiamento, mas o passo do slice ainda levava 105 s (regex sobre o IR, + ~45 s fora de qualquer orçamento) e as 3 compilações do AFL++ somavam até 0,75T. + Correções: varredura sem regex e um orçamento único para as compilações. + `Problem102_label34` com `--slice`: ERROR → UNKNOWN em 307 s. + +**Cover-Branches, 120 tarefas:** + +| braço | cobertura média | melhor / pior que o control | +|---|---|---| +| control | 44,7% | — | +| seeds | 46,1% | 31 / 13 | +| **alternate** | **50,3%** (119) | **43 / 5** | + +- **A alternância é o melhor braço em Cover-Branches** (+5,6 p.p.), o que se explica pelas + várias fases do KLEE, cada uma alimentada pelo corpus do fuzzer. O control da R19 (44,7%) + ficou abaixo do da R15 (47,7%) na mesma amostra. A carga da máquina foi maior (11 + contêineres e falta de memória no fim), e isso pesa em Cover-Branches, que usa o + orçamento inteiro. + +## R21 — checagem de `%s` e correção do classificador, SV-COMP (2026-09-29) + +- `install_r21`, control, contra a R17 control. + - **MemSafety:** o CWE193 cpy bad foi de TRUE errado para **FALSE correto**. Os 6 + `error` das tarefas alloca viraram `unknown` (classificador corrigido). + - **Falso positivo novo:** `CWE121…dest_char_declare_cpy_01_good` foi de TRUE correto + para FALSE-DEREF errado. O `ldv_strcpy` do SV-COMP copia `strlen` bytes sem o + terminador, e o terminador do buffer da versão good é um byte **não inicializado**: + para o gabarito do SV-COMP ele é zero; numa execução nativa ou no KLEE (que preenche + `alloca` com um padrão diferente de zero) não é. + - **MemCleanup:** os 2 `error` viraram `unknown`. +- **Decisão:** a checagem de `%s` fica atrás de `MAP2CHECK_CHECK_CSTRINGS=1`, desligada + por padrão, até ser medida numa amostra maior do Juliet (1 acerto × 1 erro em 50 não + basta; pelos pesos do SV-COMP compensaria, mas não com essa amostra). +- **Incidente de harness (descritor 3):** o laço do harness lê o manifest pelo fd 3, e os + filhos o herdavam, inclusive o programa analisado via chamadas externas do KLEE. O offset + andou sob o laço: o shard 0 da R24 parou em 29 de 71, e o shard 0 do seeds da R19 recebeu + linhas do shard 1. Os filhos agora rodam com o fd 3 fechado. From 4f026113e94c531ae69ec13e7f43ea859b791f37 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 21:23:39 -0400 Subject: [PATCH 44/88] docs(tacas): handoff -- night state Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/2026-09-29-handoff-tacas.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/docs/reports/2026-09-29-handoff-tacas.md b/docs/reports/2026-09-29-handoff-tacas.md index a269e51f4..767cd42af 100644 --- a/docs/reports/2026-09-29-handoff-tacas.md +++ b/docs/reports/2026-09-29-handoff-tacas.md @@ -120,6 +120,25 @@ anterior, ou todas contra `develop` em ordem). - **2d:** promover o vencedor entre light, o2, ntscd e ptafs a padrão, com commit próprio. - **3b:** promover `--alternate-engines` a padrão do híbrido se ele ganhar de seeds. +## 4b. Estado em 2026-09-29, noite + +- **Resultados já no log:** R19 (Cover-Error e Cover-Branches) e R21. + - Cover-Error: seeds +23 −0 contra o control; alternate +20 −0. + - Cover-Branches: alternate 50,3% contra 44,7%. + - TRUE errado 0 em todos os braços. +- **Correções da noite:** + - fd 3 do harness fechado para os filhos; + - varredura do IR sem regex (2d); + - orçamento único para as 3 compilações do AFL++ (3b); + - checagem de `%s` atrás de `MAP2CHECK_CHECK_CSTRINGS=1`, por falso positivo em Juliet + good. + - A ponta passou na integração 50/50. +- **Knobs de slicing:** nenhum promovido (as variantes ficaram em ±3). +- **Na fila** (8 vagas, reduzidas por falta de memória): R20, R21-castle, R22, R23, R24 + (e o shard `r24-ce-control-0-resume`). As rodadas usam installs anteriores às correções + da noite. Isso só afeta slice em programas enormes e o harness, que foi corrigido no repo + e vale para contêineres novos. + ## 5. Depois das rodadas 1. Registrar R17 e R19 no log. From 49efa33735601737a804b921e181004da1c55e46 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 21:26:23 -0400 Subject: [PATCH 45/88] fix(frontend): an unreadable input program is an error that says so GenHash read an unreadable file's size as -1 and std::vector rejected it with a bare 'cannot create std::vector larger than max_size()': all 120 tasks of a Cover-Branches arm came back ERROR with that line during a memory-exhausted spell of the R22 run. The hash now fails, and the Caller reports the file. Co-Authored-By: Claude Opus 5.5 (1M context) --- modules/frontend/caller.cpp | 6 +++++- modules/frontend/utils/gen_crypto_hash.cpp | 3 +++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/modules/frontend/caller.cpp b/modules/frontend/caller.cpp index 040709878..82098bc28 100644 --- a/modules/frontend/caller.cpp +++ b/modules/frontend/caller.cpp @@ -23,6 +23,7 @@ #include #include #include +#include #include #include #include @@ -75,7 +76,10 @@ Caller::Caller(std::string bc_program_path, Map2CheckMode mode, this->nonDetGenerator = generator; GenHash hash; hash.setFilePath(bc_program_path); - hash.generate_sha1_hash_for_file(); + if (hash.generate_sha1_hash_for_file() != 0) { + throw std::runtime_error("cannot read the input program " + + bc_program_path); + } this->programHash = hash.getOutputSha1HashFile() + ".map2check"; // The scratch directory is named after the SHA-1 of the input bitcode, so it diff --git a/modules/frontend/utils/gen_crypto_hash.cpp b/modules/frontend/utils/gen_crypto_hash.cpp index 1a26c5d1f..b1683c97d 100644 --- a/modules/frontend/utils/gen_crypto_hash.cpp +++ b/modules/frontend/utils/gen_crypto_hash.cpp @@ -38,6 +38,9 @@ int GenHash::generate_sha1_hash_for_file() { std::stringstream ss; std::ifstream file(this->filepath.c_str(), std::ios::binary | std::ios::ate); std::streamsize size = file.tellg(); + // An unreadable file reads as size -1, which std::vector rejected with a + // bare "cannot create std::vector larger than max_size()". + if (!file.is_open() || size < 0) return -1; file.seekg(0, std::ios::beg); std::vector buffer(size); From c312c7a727fd5906381e465497881f7e4d75b039 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 21:31:55 -0400 Subject: [PATCH 46/88] docs(tacas): handoff -- R22 rerun Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/2026-09-29-handoff-tacas.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/reports/2026-09-29-handoff-tacas.md b/docs/reports/2026-09-29-handoff-tacas.md index 767cd42af..9bf1de826 100644 --- a/docs/reports/2026-09-29-handoff-tacas.md +++ b/docs/reports/2026-09-29-handoff-tacas.md @@ -139,6 +139,11 @@ anterior, ou todas contra `develop` em ordem). da noite. Isso só afeta slice em programas enormes e o harness, que foi corrigido no repo e vale para contêineres novos. +- **R22 control relançado** (`r22-cb-control-*-rerun`): a primeira tentativa deu ERROR nas + 120 tarefas ("cannot create std::vector larger than max_size()", input ilegível no hash) + durante o pico de falta de memória; os dados foram para `discarded-r22a/`. O hash agora + falha com mensagem clara (`fix(frontend): an unreadable input program...`). + ## 5. Depois das rodadas 1. Registrar R17 e R19 no log. From e265f5ebedec0f82abc21fba7fe5028b778308e5 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 22:45:04 -0400 Subject: [PATCH 47/88] docs(tacas): handoff -- the Crab-LLVM to Clam gap is the next front Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/2026-09-29-handoff-tacas.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/docs/reports/2026-09-29-handoff-tacas.md b/docs/reports/2026-09-29-handoff-tacas.md index 9bf1de826..948d63d7a 100644 --- a/docs/reports/2026-09-29-handoff-tacas.md +++ b/docs/reports/2026-09-29-handoff-tacas.md @@ -144,6 +144,25 @@ anterior, ou todas contra `develop` em ordem). durante o pico de falta de memória; os dados foram para `discarded-r22a/`. O hash agora falha com mensagem clara (`fix(frontend): an unreadable input program...`). +## 4c. Próxima frente, por decisão do usuário: a lacuna Crab-LLVM → Clam + +Depois de fechar a campanha atual e **antes das outras lacunas** (floats, memória não +inicializada, busca dirigida). O ponto de partida: +- O motor antigo era a cadeia de forks `hbgit/crab-llvm` (branch `dev-llvm-6.0`), com + `hbgit/crab`, `hbgit/sea-dsa` e `hbgit/llvm-dsa`. Os commits públicos do hbgit nesses + forks são só de porte e build para o LLVM 6. As especializações de que o usuário lembra + não aparecem ali; **perguntar onde estão**. +- O release do SV-COMP 2020 (`v7.3.1`, `map2check-rc-v7.3-svcomp20.zip`) traz o motor + compilado em `bin/crabllvm`, com Apron (domínios `oct` e `pk`). O domínio padrão era + `zones`. +- No Clam `dev16` do `Dockerfile.dev`, o padrão também é `zones`, mas nem Apron, nem Elina, + nem LDD, nem PPLite são compilados: `oct`, `pk` e `boxes` ficam indisponíveis. O + comentário do Dockerfile que fala em "intervalos" está errado. +- O `--add-invariants` sobre o Clam **nunca foi medido** (o gate previsto é CASTLE e Juliet + sem perder detecção). +- Primeiro passo: um **inventário diferencial**. Rodar o motor do v7.3.1 e o Clam `dev16` + nos mesmos programas e comparar os invariantes, antes de portar qualquer coisa. + ## 5. Depois das rodadas 1. Registrar R17 e R19 no log. From 4fabab4493e3e8b076c7d853e613571082fa0706 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 22:49:40 -0400 Subject: [PATCH 48/88] docs(tacas): handoff -- first probe of the old crab-llvm engine vs Clam Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/2026-09-29-handoff-tacas.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/docs/reports/2026-09-29-handoff-tacas.md b/docs/reports/2026-09-29-handoff-tacas.md index 948d63d7a..aca67a6f0 100644 --- a/docs/reports/2026-09-29-handoff-tacas.md +++ b/docs/reports/2026-09-29-handoff-tacas.md @@ -160,6 +160,18 @@ inicializada, busca dirigida). O ponto de partida: comentário do Dockerfile que fala em "intervalos" está errado. - O `--add-invariants` sobre o Clam **nunca foi medido** (o gate previsto é CASTLE e Juliet sem perder detecção). +- **Sonda de 2026-09-29, num programa com laço.** O motor do v7.3.1 roda em + `python:2.7-slim` com o clang do LLVM 6 que vem no próprio release. + - As flags do v7.3.1, tiradas das strings do binário, incluem `--crab-promote-assume`: + **17 invariantes emitidos como `llvm.assume`**. + - O Clam, com as flags atuais, emite **18 como `verifier.assume`**, que o NonDetPass + converte em `klee_assume`. + - O NonDetPass antigo só reconhecia `verifier.assume`, e o **KLEE ignora `llvm.assume`** + (testado no 3.1). Então, no v7.3.1, os invariantes **não chegavam ao KLEE como + restrição**. Se ajudavam, era pelo otimizador do LLVM, que dobra ramos com base em + `llvm.assume`. O mecanismo é outro, e é provavelmente isso que "não é a mesma coisa" + quer dizer. + - Os dois motores produzem fatos no estilo de zones (`x − y ≤ c`). - Primeiro passo: um **inventário diferencial**. Rodar o motor do v7.3.1 e o Clam `dev16` nos mesmos programas e comparar os invariantes, antes de portar qualquer coisa. From dff7246f8134cd5cd78e352b82d5eaa7819b6756 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 23:19:42 -0400 Subject: [PATCH 49/88] docs(tacas): INV-1 -- the old crab-llvm vs Clam, and where the gain really was Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/tacas-experiment-log.md | 57 ++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index cf79dbfa2..98a850f0a 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -554,3 +554,60 @@ do descritor 3 foram completados com `-resume`): filhos o herdavam, inclusive o programa analisado via chamadas externas do KLEE. O offset andou sob o laço: o shard 0 da R24 parou em 29 de 71, e o shard 0 do seeds da R19 recebeu linhas do shard 1. Os filhos agora rodam com o fd 3 fechado. + +## INV-1 — `--add-invariants`: crab-llvm antigo × Clam (2026-09-30) + +**Pergunta:** o `--add-invariants` do crab-llvm "funcionava", e o do Clam "não é a mesma +coisa"? + +**O que se descobriu sobre o motor antigo** (release v7.3.1 do SV-COMP 2020, que roda em +`python:2.7-slim` com o clang do LLVM 6 embutido): +- Houve **duas configurações**. + - Até 18/10/2018: `--crab-track=arr --crab-add-invariants=after-load`. Os invariantes + saíam como `verifier.assume`, o NonDetPass os mapeava para `map2check_crab_assume`, e + eles chegavam ao KLEE como `klee_assume`. + - A partir da v7.3 (SV-COMP 2019 e 2020): `--crab-track=num + --crab-add-invariants=block-entry --crab-promote-assume`. O `promote` emite + `llvm.assume`, que o NonDetPass não mapeia e que o KLEE ignora (testado no KLEE 2.1 do + release e no 3.1, com e sem `--optimize`). **Os invariantes das versões de competição + não chegavam a lugar nenhum.** + +**Geração, 90 programas** (40 de alcançabilidade da amostra Cover-Error e 50 de MemSafety), +timeout de 60 s: + +| config | rodou | com invariante | total | +|---|---|---|---| +| OLD-A (antigo, até 2018) | 76 | 14 | 155 | +| OLD-B (antigo, v7.3; `llvm.assume`, inerte) | 35 | 33 | 224 698 | +| NEW-cur (Clam, `num` + `block-entry`) | 79 | 68 | 72 452 | +| NEW-A (Clam, `mem` + `after-load`) | 70 | 19 | 702 | + +- A configuração que "funcionava" insere **poucos** invariantes, depois de leituras de + memória. A atual do Clam insere **muitos**, na entrada de cada bloco. O perfil + `memory` do Clam reproduz a ordem de grandeza da antiga. + +**Efeito na análise, sonda num laço** (`n ≤ 1000`, versões segura e com bug em `n == 777`, +symex, 60 s): + +| braço | seguro | com bug | +|---|---|---| +| sem `--add-invariants` | UNKNOWN (HaltTimer) | UNKNOWN | +| Clam padrão (18 invariantes) | UNKNOWN | UNKNOWN | +| Clam `memory` (0 invariantes) | **TRUE** | **FAILED** | +| Clam `none` (pipeline do Clam, 0 invariantes) | **TRUE** | **FAILED** | +| **sem Clam, `MAP2CHECK_PREOPT=ssa`** | **TRUE** | **FAILED** | + +- **O ganho vem do pré-processamento, não dos invariantes.** O Clam compila com + `-disable-O0-optnone` e deixa o módulo em SSA (`mem2reg`, `simplifycfg`). O Map2Check + compila em `-O0` com `optnone`, cada variável local vira um objeto de memória no KLEE, e + o laço não fecha no orçamento. +- Os 18 invariantes do perfil padrão não bastaram: o KLEE completou mais caminhos com eles + (261 contra 184 sem), mas também parou no HaltTimer. +- **Hipótese a medir em escala (R25):** `MAP2CHECK_PREOPT=ssa` (sem Clam) é um ganho + geral, e os invariantes só se pagam somados ao SSA, se se pagarem. +- Implementado nesta frente (`feat/tacas-invariants`): + - `MAP2CHECK_CLAM_PROFILE=default|memory|none`; + - log com a contagem de invariantes inseridos; + - recuo para a compilação normal quando o Clam falha (antes, o pipeline ficava sem + bitcode); + - `MAP2CHECK_PREOPT=ssa`. From 35f32c9af7a13b99f7d72dd05b4b3ec0e8035105 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 23:31:31 -0400 Subject: [PATCH 50/88] feat(invariants): Clam profiles, an invariant count, and SSA pre-optimization The --add-invariants study (INV-1 in the experiment log) found that the crab-llvm of the SV-COMP 2019/2020 builds emitted llvm.assume, which neither NonDetPass nor KLEE consumes, and that on a loop program the gain of going through Clam came from its preprocessing, not from the invariants: with none inserted it decided a safe and a buggy variant the plain pipeline left UNKNOWN. - MAP2CHECK_CLAM_PROFILE=default|memory|none: the current Clam flags, the 2018 configuration that did reach KLEE (memory tracked, invariants after loads), or Clam's pipeline with no invariant. - The number of invariants Clam inserted is logged, and a Clam failure falls back to the plain compile with a warning instead of leaving no bitcode. - MAP2CHECK_PREOPT=ssa: the module in SSA form (mem2reg, simplifycfg without sinking) for reachability and assert only -- the memory modes track locals through the allocas mem2reg removes (FALSE-FREE on safe programs), overflow lost detections, and fewer branches mean fewer Cover-Branches cases. Integration 50/50 with it off, 50/50 with it on (section 32 flaky: 3/3 on rerun). Co-Authored-By: Claude Opus 5.5 (1M context) --- modules/frontend/caller.cpp | 100 +++++++++++++++++++++++++++++++++--- modules/frontend/caller.hpp | 2 + 2 files changed, 96 insertions(+), 6 deletions(-) diff --git a/modules/frontend/caller.cpp b/modules/frontend/caller.cpp index 82098bc28..e6989b6ce 100644 --- a/modules/frontend/caller.cpp +++ b/modules/frontend/caller.cpp @@ -142,6 +142,20 @@ unsigned Caller::remainingSeconds() const { return left < 1 ? 1u : static_cast(left); } +bool Caller::ssaPreoptimization() const { + // Reachability and assert only. The memory modes track locals through the + // allocas mem2reg removes (a pointer kept in a local, promoted, made a + // legitimate free() look invalid: FALSE-FREE on safe programs), the overflow + // mode lost detections, and simplifycfg turns branches into selects, which + // is fewer paths and fewer Cover-Branches test cases. + if (map2checkMode != Map2CheckMode::REACHABILITY_MODE && + map2checkMode != Map2CheckMode::ASSERT_MODE) { + return false; + } + const char *knob = std::getenv("MAP2CHECK_PREOPT"); + return knob != nullptr && std::string(knob) == "ssa"; +} + std::string Caller::preOptimizationFlags() { std::ostringstream flags; flags.str(""); @@ -1668,12 +1682,41 @@ void Caller::compileCFile(bool is_llvm_bc) { << " -Wno-everything " << " -Winteger-overflow " << " -c -emit-llvm -g" - << " " << Caller::preOptimizationFlags() << " -o " << compiledFile + << " " << Caller::preOptimizationFlags() + << (ssaPreoptimization() ? " -Xclang -disable-O0-optnone" : "") + << " -o " << compiledFile << " " << programHash << "-preprocessed.c " << " > " << programHash << "-clang.out 2>&1"; system(command.str().c_str()); + // MAP2CHECK_PREOPT=ssa: the module in SSA form, as Clam's preprocessing + // leaves it. At -O0 clang marks every function optnone and every local + // lives in memory; KLEE then pays a memory object and a solver array per + // variable. A first probe of --add-invariants found that compiling through + // Clam with NO invariant inserted decided a loop program the plain + // pipeline left UNKNOWN (both the safe and the buggy variant) -- the gain + // was the preprocessing, not the invariants. mem2reg only promotes locals + // whose address is never taken; simplifycfg keeps common code unsunk, as + // Clam does. Neither reorders a call, so the nondet order is unchanged. + if (ssaPreoptimization()) { + std::ostringstream ssa; + ssa << Map2Check::optBinary + << " -passes='function(mem2reg,simplifycfg)'" + << " --simplifycfg-sink-common=false " << compiledFile << " -o " + << compiledFile << ".ssa.bc >> " << programHash << "-clang.out 2>&1"; + std::error_code ssaError; + if (system(ssa.str().c_str()) == 0 && + std::filesystem::exists(compiledFile + ".ssa.bc", ssaError)) { + std::filesystem::rename(compiledFile + ".ssa.bc", compiledFile, + ssaError); + } else { + Map2Check::Log::Warning( + "could not bring the module into SSA form -- analysing it as " + "compiled"); + } + } + this->pathprogram = compiledFile; } else { std::string compiledFile = programHash + "-compiled.bc"; @@ -1785,15 +1828,60 @@ void Caller::compileWithClam() { // map2check_crab_assume, which the runtime forwards to klee_assume -- so // nothing downstream needs to change. // See docs/reports/2026-08-16-crabllvm-review.md. + // MAP2CHECK_CLAM_PROFILE=memory: the configuration --add-invariants had + // until 2018-10-19, when it last reached KLEE -- memory contents tracked + // (crab-llvm's --crab-track=arr, Clam's mem) and an invariant after every + // load. From v7.3 on it ran --crab-promote-assume, which emits llvm.assume, + // which NonDetPass does not map and both KLEE 2.1 and 3.1 ignore: the + // invariants of the SV-COMP 2019/2020 builds reached nothing. Measured side + // by side against the default (num, block-entry) before choosing. + // MAP2CHECK_CLAM_PROFILE=none: Clam's pipeline without inserting anything, + // to tell the effect of compiling through Clam from that of the invariants + // (a first probe found the two pulling in opposite directions). + const char *profileEnv = std::getenv("MAP2CHECK_CLAM_PROFILE"); + const std::string profile = profileEnv != nullptr ? profileEnv : "default"; + const bool memoryProfile = profile == "memory"; + const bool noInvariants = profile == "none"; command << Map2Check::clamBinary() << " -o " << compiledFile << " -m 64 -g" << " --crab-inter" - << " --crab-track=num" - << " --crab-opt=add-invariants" - << " --crab-opt-invariants-loc=block-entry" - << " " << programHash << "-preprocessed.c "; + << (memoryProfile ? " --crab-track=mem" : " --crab-track=num") + << (noInvariants ? " --crab-opt=none" : " --crab-opt=add-invariants") + << (noInvariants ? "" + : memoryProfile ? " --crab-opt-invariants-loc=after-load" + : " --crab-opt-invariants-loc=block-entry") + << " " << programHash << "-preprocessed.c > clam.output 2>&1"; Map2Check::Log::Debug(command.str()); - system(command.str().c_str()); + const int clamResult = system(command.str().c_str()); + + std::error_code error; + if (clamResult != 0 || !std::filesystem::exists(compiledFile, error) || + std::filesystem::file_size(compiledFile, error) == 0) { + // Not the silence of the old path (issue #54): said, and the run goes on + // with the program as it is. + Map2Check::Log::Warning( + "Clam failed (status " + std::to_string(clamResult) + + ") -- analysing the program without invariants"); + compileCFile(false); + return; + } + + // How many invariants went in: the measure of what --add-invariants does. + std::ostringstream disassemble; + disassemble << Map2Check::optBinary << " -S " << compiledFile + << " -o clam-invariants.ll > /dev/null 2>&1"; + unsigned invariants = 0; + if (system(disassemble.str().c_str()) == 0) { + std::ifstream ir("clam-invariants.ll"); + std::string line; + while (std::getline(ir, line)) { + if (line.find("call void @verifier.assume") != std::string::npos) { + ++invariants; + } + } + } + Map2Check::Log::Info("Clam inserted " + std::to_string(invariants) + + " invariant(s) (" + profile + " profile)"); this->pathprogram = compiledFile; } diff --git a/modules/frontend/caller.hpp b/modules/frontend/caller.hpp index ee488822e..49a2530f0 100644 --- a/modules/frontend/caller.hpp +++ b/modules/frontend/caller.hpp @@ -99,6 +99,8 @@ class Caller { /** @brief Function to compile original C file removing external memory * operations calls */ void compileCFile(bool is_llvm_bc); + /** MAP2CHECK_PREOPT=ssa: compile into SSA form (see compileCFile). */ + bool ssaPreoptimization() const; /** Compiles the input through Clam so the emitted bitcode carries * verifier.assume(invariant) calls. Requires Clam dev16 installed; callers From 51dc7f02a954517817f1cd9b8c134b4903ad5ed4 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 29 Sep 2026 23:32:02 -0400 Subject: [PATCH 51/88] docs(tacas): handoff -- INV-1 and R25 Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/2026-09-29-handoff-tacas.md | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/docs/reports/2026-09-29-handoff-tacas.md b/docs/reports/2026-09-29-handoff-tacas.md index aca67a6f0..4a88590b9 100644 --- a/docs/reports/2026-09-29-handoff-tacas.md +++ b/docs/reports/2026-09-29-handoff-tacas.md @@ -172,7 +172,18 @@ inicializada, busca dirigida). O ponto de partida: `llvm.assume`. O mecanismo é outro, e é provavelmente isso que "não é a mesma coisa" quer dizer. - Os dois motores produzem fatos no estilo de zones (`x − y ≤ c`). -- Primeiro passo: um **inventário diferencial**. Rodar o motor do v7.3.1 e o Clam `dev16` +- **INV-1 feito** (log de experimentos). Os invariantes estavam inertes desde a v7.3 + (out/2018). O ganho observado vinha do pré-processamento em SSA, não dos invariantes. + Branch `feat/tacas-invariants`: + - `MAP2CHECK_CLAM_PROFILE=default|memory|none`; + - `MAP2CHECK_PREOPT=ssa`, só para alcançabilidade e assert; + - build `build_inv` com `-DENABLE_CLAM=ON` e os links `lib/klee/runtime` e `lib/clang` + criados à mão. +- **R25 na fila** (`r25-sched.sh`, `install_r25`): + - Cover-Error, shard 0 (71 tarefas): off, ssa, clam-none, clam-default, clam-memory; + - MemSafety (50): off, clam-none, clam-default, clam-memory. + - Gate: nenhuma detecção perdida. +- Primeiro passo (feito, ver INV-1): um **inventário diferencial**. Rodar o motor do v7.3.1 e o Clam `dev16` nos mesmos programas e comparar os invariantes, antes de portar qualquer coisa. ## 5. Depois das rodadas From 811fc132c15b5dd9259a05f8ad49d067e37c6491 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Wed, 30 Sep 2026 00:00:00 -0400 Subject: [PATCH 52/88] docs(tacas): first results of R20, R22, R23 and R24 Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/tacas-experiment-log.md | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index 98a850f0a..a7ae3a8d3 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -611,3 +611,25 @@ symex, 60 s): - recuo para a compilação normal quando o Clam falha (antes, o pipeline ficava sem bitcode); - `MAP2CHECK_PREOPT=ssa`. + +## R20, R22, R23, R24 — primeiros resultados (2026-09-30, madrugada) + +Todos contra o braço equivalente da R19, nas tarefas em comum (linhas filtradas por shard). + +| rodada | mudança medida | tarefas | cobertas (nova × R19) | +/− | TRUE errado | +|---|---|---|---|---|---| +| **R24 control** (completa) | replay dos vetores do KLEE, híbrido **sem** sementes | 213 | **146 × 128** | **+20 −2** | 0 | +| R24 seeds (parcial) | replay + sementes | 59 | 47 × 46 | +1 −0 | 0 | +| R20 seeds (parcial) | ranking `+cov` (3c) | 178 | 128 × 128 | +2 −2 | 0 | +| R23 seeds (parcial) | build final (cache do AFL++, orçamento, fd 3) | 177 | 132 × 128 | +5 −1 | 0 | + +- **O replay dos vetores do KLEE traz o híbrido simples para perto do braço com sementes** + (146 contra 151 da R19 seeds). As mudanças concentram-se em `pals_*`, eca-*, XCSP (`aim-*`, + `CostasArray`, `AllInterval`) e `fuzzle`, justamente as tarefas em que o seeds ganhava + com o dry run do AFL++. O mecanismo diagnosticado se confirma. +- **3c v1 (ranking):** neutro nesta amostra (+2 −2). O ranking só pesa quando a fila passa + de 64 entradas. +- **Cover-Branches, R22** (corpus do AFL++ na suíte, `MAP2CHECK_FUZZER_SUITE=1`): + - control, 99 tarefas: **49,2% × 44,8%**, 33 melhores e 2 piores; TestCov VALIDATED + 97/99; + - seeds, 22 tarefas: 48,5% × 44,8%, 4 melhores e 3 piores. From fdd6bd95142d1b29a16b0628f35520cbc30c0772 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Wed, 30 Sep 2026 00:06:01 -0400 Subject: [PATCH 53/88] chore(release): Map2Check 9.0.0 A major version: AFL++ replaces LibFuzzer (--nondet-generator fuzzer is now afl), and TRUE now requires an exhaustive KLEE exploration while the program's abort() prunes a path -- the same program can get another answer than under 8.x. The changelog lists the whole TACAS line. Co-Authored-By: Claude Opus 5.5 (1M context) --- CHANGELOG.md | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++ CMakeLists.txt | 2 +- 2 files changed, 62 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ff411b8a9..238872070 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,67 @@ The format loosely follows [Keep a Changelog](https://keepachangelog.com/en/1.0. ## [Unreleased] +## [9.0.0] - Unreleased + +A major version: the fuzzing engine changed (LibFuzzer → AFL++ 4.40c), the +`--nondet-generator` values changed (`fuzzer` → `afl`), and several verdicts +change meaning -- a KLEE run that did not explore every path is no longer +TRUE, and the program's own `abort()` prunes a path instead of ending the +search. Measured against the v15 baseline in `docs/reports/tacas-experiment-log.md`. + +### Changed (breaking) + +- Fuzzing engine: LibFuzzer replaced by AFL++ 4.40c (persistent mode, PCGUARD, + CmpLog). `--nondet-generator fuzzer` is now `--nondet-generator afl`. +- Verdicts: TRUE only from an exhaustive KLEE exploration. KLEE exiting 0 after + its timer, after concretizing a symbolic input (floats), after killing + states (`*.err`, `*.early`), near its memory cap, or after crashing is now + UNKNOWN, never TRUE. +- The program's own `abort()` (inline or through `assume_abort_if_not`) prunes + the path (`map2check_assume(0)`, `klee_silent_exit` under KLEE) instead of + stopping KLEE's search. + +### Added + +- `--slice` for every property (reachability, assert, memtrack, memcleanup, + overflow) through sbt-slicer, preserving the nondet read order; the slice is + computed once per run (`.slice/`), a slicer failure is remembered, and + the criteria are collected without regex. Experiment knobs: + `MAP2CHECK_SLICE_CLEANUP=light|o2`, `MAP2CHECK_SLICER_FLAGS`. +- `--seed-exchange`: the engines hand each other input vectors through a + persistent store (`.seeds/`) -- the fuzzer queue, replayed through the + witness binary into typed `.ktest` seeds for KLEE (ranked: new-edge entries + first), and KLEE's vectors back to the fuzzer. +- `--alternate-engines`: AFL++ and KLEE take turns, each ending when its engine + stagnates (`AFL_EXIT_ON_TIME`; KLEE's covered instructions from `run.stats`, + SQLite optional), with windows and patience doubling every round. +- KLEE's vectors, completed with zeros past their end, are run natively + through the witness after every KLEE phase that found nothing. +- AFL++ binaries built once per run (`.build/`), within one build budget. +- `MAP2CHECK_FUZZER_SUITE=1`: the fuzzer's corpus contributes Cover-Branches + test cases (up to half the suite, deduplicated). +- `--add-invariants` profiles (`MAP2CHECK_CLAM_PROFILE=default|memory|none`), + the number of invariants inserted in the log, and a fallback when Clam + fails. `MAP2CHECK_PREOPT=ssa` (reachability and assert): the module in SSA + form before instrumentation. +- `MAP2CHECK_CHECK_CSTRINGS=1`: the strings a `%s` or `puts` reads are checked. + +### Fixed + +- The AFL++ generator replayed its input from the start past its end: a + `while (__VERIFIER_nondet_int())` loop never ended and afl-fuzz aborted in + its dry run. Reads past the end are now zero. +- MemoryTrackPass matched memory intrinsics by their LLVM 6 names: + `memset/memcpy/memmove` were never checked under LLVM 16. +- A fuzzer binary that fails to link is reported with its cause instead of as + a build timeout; an unreadable input program is reported as such. +- The Cover-Branches suite: the 50-case cap and duplicates count across + phases, and a run starts from an empty suite. +- Evaluation harnesses: children no longer inherit the manifest's descriptor + (the program under test could move the loop's offset); a crash replayed from + the fuzzer is not a tool failure. + + ### Changed - Replaced LibFuzzer with AFL++ 4.40c (persistent, PCGUARD) as the fuzzing engine. diff --git a/CMakeLists.txt b/CMakeLists.txt index a10f305e4..b3f272042 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,5 @@ cmake_minimum_required(VERSION 3.20) -project(Map2Check VERSION 8.0.0 LANGUAGES C CXX) +project(Map2Check VERSION 9.0.0 LANGUAGES C CXX) option(BUILD_DOC "Build documentation" OFF) option(SKIP_AFL_PLUS_PLUS "Don't use AFL++" OFF) From a17aca5fd01eef697804ad5df3078bec68467c7e Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Wed, 30 Sep 2026 00:51:38 -0400 Subject: [PATCH 54/88] docs(tacas): R21 CASTLE, and the scheduler's collapsed tab fields Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/tacas-experiment-log.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index a7ae3a8d3..6e9a75fdf 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -633,3 +633,20 @@ Todos contra o braço equivalente da R19, nas tarefas em comum (linhas filtradas - control, 99 tarefas: **49,2% × 44,8%**, 33 melhores e 2 piores; TestCov VALIDATED 97/99; - seeds, 22 tarefas: 48,5% × 44,8%, 4 melhores e 3 piores. + +## R21 CASTLE e dois incidentes (2026-09-30, madrugada) + +- **CASTLE com `install_r21`** (checagem de `%s` ainda **ligada** nesse build): TP 54, TN 44, + FN 12, UNKNOWN 5, **FP 4** (R14: TP 53, TN 44, FN 14, FP 1). Os 4 FP (787-1, 787-2, + 787-4, 822-3) são todos um `printf("%s")` de memória que o runtime não rastreia: buffer + preenchido por `scanf` e `argv[0]`. É uma confirmação independente de que + `MAP2CHECK_CHECK_CSTRINGS` deve continuar **desligado** (como está no branch da PR); os + FN caíram de 14 para 12. +- **Incidente do escalonador** (corrige uma conclusão anterior): os escalonadores leem os + jobs com `IFS=$'\t' read`, e o bash junta tabs consecutivos. Com a coluna de flags vazia, + o conteúdo da coluna de ambiente escorregava para a de flags. Com isso: + - o braço `ssa` da R25 passou `MAP2CHECK_PREOPT=ssa` ao Map2Check como **nome de + arquivo** (71/71 ERROR). Relançado com `-e`; + - **a primeira R22 control (120 ERROR) teve a mesma causa, e não falta de memória**, + como registrado antes. O relançamento dela usou `-e` e é válido; + - os outros braços têm flags não vazias ou nenhuma variável, e não foram afetados. From c3ebf40f8a962f1a0c2b320574d7af4a5675ba0e Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Wed, 30 Sep 2026 01:06:38 -0400 Subject: [PATCH 55/88] docs(tacas): R20 and R23 seeds complete Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/tacas-experiment-log.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index 6e9a75fdf..1d7c65621 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -650,3 +650,16 @@ Todos contra o braço equivalente da R19, nas tarefas em comum (linhas filtradas - **a primeira R22 control (120 ERROR) teve a mesma causa, e não falta de memória**, como registrado antes. O relançamento dela usou `-e` e é válido; - os outros braços têm flags não vazias ou nenhuma variável, e não foram afetados. + +### R20 e R23 seeds, completas (2026-09-30, 01h) + +| rodada | o que muda | cobertas (213) | vs R19 seeds (151) | vs R19 control (128) | TRUE errado | +|---|---|---|---|---|---| +| R20 seeds | + ranking `+cov` (3c v1) | 150 | +2 −3 | +22 | 0 | +| **R23 seeds** | build final (cache do AFL++, fd 3, hash, orçamento) | **154** | **+5 −2** | **+26** | 0 | + +- **3c v1 é neutro** também na amostra completa: fica disponível, sem ganho medido. +- **O build final com sementes é o melhor resultado de Cover-Error da linha: 154/213 + (72,3%)**, contra 111 da v15 na mesma amostra. +- As perdas recorrentes (`Problem10_label12`, `Problem13_label54`) aparecem também no + R20. São tarefas eca-* no limite do orçamento. From a1506bc23192f815d1e5abdc30e048941a72dfa2 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Wed, 30 Sep 2026 08:08:53 -0400 Subject: [PATCH 56/88] fix(invariants): bound Clam like the slicer On the eca-* and product-lines programs Clam's analysis ran past the whole budget and the run was killed with no verdict (R25: 4 to 7 ERROR per --add-invariants arm). Clam now gets at most 0.2T; past it the existing fallback compiles the program without invariants (Problem08_label51: ERROR -> UNKNOWN at 277 s). Co-Authored-By: Claude Opus 5.5 (1M context) --- modules/frontend/caller.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/modules/frontend/caller.cpp b/modules/frontend/caller.cpp index e6989b6ce..4d2cde8d1 100644 --- a/modules/frontend/caller.cpp +++ b/modules/frontend/caller.cpp @@ -1842,7 +1842,16 @@ void Caller::compileWithClam() { const std::string profile = profileEnv != nullptr ? profileEnv : "default"; const bool memoryProfile = profile == "memory"; const bool noInvariants = profile == "none"; - command << Map2Check::clamBinary() << " -o " << compiledFile << " -m 64 -g" + // Bounded like the slicer: on the eca-* and product-lines programs Clam's + // analysis ran past the whole budget and the run was killed with no verdict + // (R25: 4-7 ERROR per arm). Past the bound, the fallback below compiles the + // program without invariants. + const unsigned clamBudget = static_cast(std::max( + 1.0, std::min(0.2 * this->timeout, + static_cast(remainingSeconds()) - 5.0))); + command << "timeout -k " << Map2Check::killGracePeriod << " " << clamBudget + << " " << Map2Check::clamBinary() << " -o " << compiledFile + << " -m 64 -g" << " --crab-inter" << (memoryProfile ? " --crab-track=mem" : " --crab-track=num") << (noInvariants ? " --crab-opt=none" : " --crab-opt=add-invariants") From e80a4786e04756c8c17e1d441ddde20de093aab1 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Wed, 30 Sep 2026 08:09:21 -0400 Subject: [PATCH 57/88] docs(tacas): overnight results -- R22, R23, R24, R25 Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/tacas-experiment-log.md | 45 ++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index 1d7c65621..b922de89e 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -663,3 +663,48 @@ Todos contra o braço equivalente da R19, nas tarefas em comum (linhas filtradas (72,3%)**, contra 111 da v15 na mesma amostra. - As perdas recorrentes (`Problem10_label12`, `Problem13_label54`) aparecem também no R20. São tarefas eca-* no limite do orçamento. + +## Madrugada de 2026-09-30 — R22, R23, R24 e R25 completas + +**Cover-Error, 213 tarefas** (referência: R19 control, 128): + +| braço | cobertas | % | vs R19 control | TRUE errado | tempo mediano | +|---|---|---|---|---|---| +| R24 control (replay dos vetores do KLEE) | 146 | 68,5 | +20 −2 | 0 | 4 s | +| R23 seeds (build final) | 154 | 72,3 | +26 −0 | 0 | 4 s | +| **R24 seeds (build final + replay)** | **155** | **72,8** | **+27 −0** | 0 | 5 s | +| R23 alternate (build final) | 153 | 71,8 | +26 −1 | 0 | 12 s | + +- R23 alternate × R19 alternate: +7 −2. A correção das perdas eca-* funcionou. + R23 alternate × R23 seeds: +4 −5, um empate. +- **v15 → build final na mesma amostra: 111 → 155 cobertas, TRUE errado 27 → 0.** + +**Cover-Branches, 120 tarefas** (R19 control 44,7%): + +| braço | cobertura média | melhor / pior | +|---|---|---| +| R19 seeds | 46,1% | 31 / 13 | +| **R19 alternate** | **50,6%** | 44 / 5 | +| R22 control + corpus do AFL++ | 49,7% | 40 / 3 | +| R22 seeds + corpus do AFL++ | 49,4% | 36 / 8 | + +**R25 (`--add-invariants` e SSA), shard 0 de Cover-Error (71 tarefas) e MemSafety (50):** + +| braço | Cover-Error cobertas | ERROR | MemSafety (corretas / wrong-true / wrong-false) | +|---|---|---|---| +| off | 51 | 0 | 28 / 2 / 2 | +| ssa | 50 (+2 −3) | 0 | — | +| clam-none | 50 (+1 −2) | 2 | 25 / 1 / 4 | +| clam-default | 49 (+1 −3) | 4 | 27 / 1 / 4 | +| clam-memory | 44 (+2 −9) | 7 | 25 / 2 / 4 | + +- **No híbrido, nem o SSA nem os invariantes ajudam.** O ganho que a sonda viu era do KLEE + sozinho; no híbrido, o AFL++ e o replay dos vetores já decidem essas tarefas. Os braços + com Clam **pioram**: mais FALSE errados em MemSafety (4 contra 2), e ERROR por o Clam + estourar o orçamento, já corrigido com um limite de 0,2T. +- **Decisão:** `--add-invariants` continua opcional e desligado por padrão; o SSA não é + promovido. +- **Incidente:** a mudança de versão no `CMakeLists.txt` fez o cache do `build_inv` ser + regenerado, com o prefixo voltando para `release/` e o `ENABLE_CLAM` para OFF. O + `release/` foi sobrescrito de novo e restaurado a partir do `install_v15` (idêntico, + conferido com `diff`). As rodadas usaram installs congelados antes disso. From e8fe0dac460369fdaf887bdbce337fb657a99c06 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Wed, 30 Sep 2026 13:45:13 -0400 Subject: [PATCH 58/88] feat(hybrid): the alternation and the fuzzer suite become the 9.0 defaults On the 213-task Cover-Error sample the alternating hybrid ties the seed-exchange one (157 each, against 128 for the 8.x hybrid) and leads Cover-Branches (53.5% against 46.5%) (R26), so it is the hybrid whenever --timeout is given; --fixed-hybrid keeps the 8.x schedule. The fuzzer's corpus joins Cover-Branches suites by default (MAP2CHECK_FUZZER_SUITE=0 to drop it). Integration section 11 now checks the 8.x behaviour through --fixed-hybrid. Docs for 9.0: - README: engines, options and verdict semantics, plus the environment knobs with what each was measured to do. - CLAUDE.md: the hybrid and the state kept beside the scratch directory. - --add-invariants documented as optional and under study, with an addendum to the crab-llvm review on what the old engine really did. - The misleading Dockerfile comment on Clam's default domain is corrected. - docs/backlog.md holds the invariants study, the KLEE memory limit for parallel rounds and the campaign-harness pitfalls. - docs/reports/2026-09-30-plano-campanha-completa.md plans the post-merge campaign. Co-Authored-By: Claude Opus 5.5 (1M context) --- CHANGELOG.md | 11 ++- CLAUDE.md | 20 ++++++ Dockerfile.dev | 8 ++- README.md | 71 +++++++++++++++++++ docs/backlog.md | 48 +++++++++++++ docs/reports/2026-08-16-crabllvm-review.md | 25 +++++++ .../2026-09-30-plano-campanha-completa.md | 66 +++++++++++++++++ modules/frontend/map2check.cpp | 57 +++++++++------ .../integration/test_testcomp_regressions.sh | 8 +-- 9 files changed, 285 insertions(+), 29 deletions(-) create mode 100644 docs/backlog.md create mode 100644 docs/reports/2026-09-30-plano-campanha-completa.md diff --git a/CHANGELOG.md b/CHANGELOG.md index 238872070..828d25d84 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,13 @@ search. Measured against the v15 baseline in `docs/reports/tacas-experiment-log. ### Changed (breaking) +- **The default hybrid is the alternation** (`--alternate-engines`, with seed + exchange) whenever `--timeout` is given. `--fixed-hybrid` keeps the 8.x + schedule. Measured on the 213-task Cover-Error sample: 157 covered, against + 128 for the 8.x hybrid. On Cover-Branches: 53.5% against 46.5% (R26). +- The fuzzer's corpus is part of Cover-Branches suites by default + (`MAP2CHECK_FUZZER_SUITE=0` turns it off). + - Fuzzing engine: LibFuzzer replaced by AFL++ 4.40c (persistent mode, PCGUARD, CmpLog). `--nondet-generator fuzzer` is now `--nondet-generator afl`. - Verdicts: TRUE only from an exhaustive KLEE exploration. KLEE exiting 0 after @@ -42,8 +49,8 @@ search. Measured against the v15 baseline in `docs/reports/tacas-experiment-log. - KLEE's vectors, completed with zeros past their end, are run natively through the witness after every KLEE phase that found nothing. - AFL++ binaries built once per run (`.build/`), within one build budget. -- `MAP2CHECK_FUZZER_SUITE=1`: the fuzzer's corpus contributes Cover-Branches - test cases (up to half the suite, deduplicated). +- The fuzzer's corpus contributes Cover-Branches test cases (up to half the + suite, deduplicated). - `--add-invariants` profiles (`MAP2CHECK_CLAM_PROFILE=default|memory|none`), the number of invariants inserted in the log, and a fallback when Clam fails. `MAP2CHECK_PREOPT=ssa` (reachability and assert): the module in SSA diff --git a/CLAUDE.md b/CLAUDE.md index 6e3827fb7..f48d9f3f3 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -61,6 +61,14 @@ the driver is present at `$CLAM_DIR/bin/clam.py`. It is opt-in because an unsoun invariant produces a wrong TRUE rather than an error — see [the dependency review](docs/reports/2026-08-16-crabllvm-review.md). +Status of `--add-invariants` (2026-09-30): **optional and under study**. +- The crab-llvm invariants of the SV-COMP 2019/2020 builds were emitted as `llvm.assume`, + which neither `NonDetPass` nor KLEE consumes. +- On the current hybrid, Clam's profiles (`MAP2CHECK_CLAM_PROFILE=default|memory|none`) + have shown no gain so far. +- A dedicated study round is pending; see `docs/reports/tacas-experiment-log.md` (INV-1, + R25) and `docs/backlog.md`. + Enabling sanitizers switches from static to shared linking and enables `-fsanitize=address,undefined -fno-omit-frame-pointer -g`. ### Run unit tests @@ -107,6 +115,18 @@ Entry point: `map2check.cpp` → `main()`. Parses CLI options (via Boost.Program 5. `executeAnalysis()` — run the instrumented binary; collect results 6. Witness/counterexample generation in [counter_example/](modules/frontend/counter_example/) and [witness/](modules/frontend/witness/) +With no `--nondet-generator`, `main()` runs the hybrid, and each phase builds a new `Caller`: +- **Alternating (the default since 9.0, needs `--timeout`):** AFL++ and KLEE take turns + (`alternateEngines()`), each stopped on stagnation. +- **Fixed (`--fixed-hybrid`):** the 8.x schedule. + +State that must survive the phases lives beside the scratch directory, not inside it: +`.seeds/` (seed store), `.slice/` (slice cache) and `.build/` (AFL++ +binaries). + +A TRUE verdict requires an exhaustive KLEE run: see `kleeDroppedPaths()` in +`modules/frontend/test_suite/ktest_reader.cpp`. + **Verification modes** (enum `Map2CheckMode`): `MEMTRACK_MODE`, `REACHABILITY_MODE`, `OVERFLOW_MODE`, `ASSERT_MODE`, `MEMCLEANUP_MODE`. To add a new analysis: extend `callPass()` in [caller.cpp](modules/frontend/caller.cpp) and add a CLI option in [map2check.cpp](modules/frontend/map2check.cpp). diff --git a/Dockerfile.dev b/Dockerfile.dev index 9a8080ba2..9499e6c09 100644 --- a/Dockerfile.dev +++ b/Dockerfile.dev @@ -177,8 +177,12 @@ RUN printf 'int main(void){return 0;}\n' > /tmp/aflcheck.c && \ # libzstd-dev is required, not optional: LLVM 16 from apt.llvm.org exports # zstd::libzstd_shared, so Clam's find_package(LLVM) fails outright without it. # libflint-dev is NOT needed -- that belongs to the PPLite domain, and no -# optional domain is enabled here: --crab-track=num uses the default interval -# domain, so LDD, Apron, Elina and PPLite would all be dead weight. +# optional domain is enabled here. Clam's default domain is zones (a DBM, +# built into Crab), the same default the crab-llvm of the SV-COMP builds had; +# what LDD, Apron, Elina and PPLite would add is boxes, oct and pk, which the +# old engine shipped (Apron) and --add-invariants never selected. Whether they +# are worth building is part of the pending --add-invariants study +# (docs/backlog.md). RUN apt-get update && apt-get install -y \ libmpfr-dev \ libzstd-dev \ diff --git a/README.md b/README.md index 9fcf74bfe..8286728b2 100644 --- a/README.md +++ b/README.md @@ -71,6 +71,77 @@ $ ./map2check --help When you use a LLVM bytecode as input for the tool, be sure to add `-g` flag when generating the file, it is not required, but map2check will provide better info (like line numbers). +#### Engines, test suites and analysis options (9.0) + +

+Map2Check generates inputs with two engines: the AFL++ 4.40c fuzzer (persistent mode, PCGUARD, +CmpLog) and the KLEE 3.1 symbolic executor. By default, and whenever --timeout is +given, the two run as an alternating hybrid. They take turns, each turn ends once its engine stops +finding new coverage, and every round doubles the turn's window. The engines also hand each other +input vectors. +

+ +| Option | Effect | +|---|---| +| *(default, with `--timeout`)* | Alternating hybrid with seed exchange. Same as `--alternate-engines`. | +| `--fixed-hybrid` | The 8.x schedule: the fuzzer for 0.2 of the budget, then KLEE. | +| `--fixed-hybrid --seed-exchange` | The 8.x schedule with seed exchange (0.2 / 0.6 / 0.2, with a last fuzzer phase). | +| `--nondet-generator afl` / `symex` | One engine only: AFL++ or KLEE. In 8.x the fuzzer value was `fuzzer`. | +| `--slice` | Slice the program before the analysis (sbt-slicer), for reachability, `--check-asserts`, `--memtrack`, `--memcleanup-property` and `--check-overflow`. | +| `--generate-test-suite` | Emit a Test-Comp test suite (`test-suite/`). | +| `--generate-test-suite --cover-branches` | Emit a Cover-Branches suite, up to 50 cases, from KLEE's paths and the fuzzer's corpus. | +| `--add-invariants` | Optional, and off in the default build. See below. | + +

+Verdicts. A TRUE verdict needs KLEE to have explored every path. Map2Check reports +UNKNOWN instead when KLEE stopped early for any reason: +

+ +- its timer ran out; +- it concretized a symbolic input (for example a floating-point value); +- it killed states; +- it hit its memory cap; +- it crashed. + +

+A call to abort() in the program under analysis is treated the way SV-COMP treats it: as +an assumption. It prunes that path and does not end the search. +

+ +

+Environment knobs. These exist for experiments; the defaults are the measured choices. +

+ +| Variable | Default | Meaning | +|---|---|---| +| `MAP2CHECK_FUZZER_SUITE` | on | `0` leaves the fuzzer's corpus out of Cover-Branches suites. | +| `MAP2CHECK_SLICE_CLEANUP` | none | `light` or `o2`: an opt pipeline over the fresh slice. Measured neutral. | +| `MAP2CHECK_SLICER_FLAGS` | — | Extra sbt-slicer flags, e.g. `--cda=ntscd`. Measured neutral. | +| `MAP2CHECK_PREOPT` | off | `ssa`: mem2reg + simplifycfg before instrumentation, for reachability and assert only. Measured neutral in the hybrid. | +| `MAP2CHECK_CHECK_CSTRINGS` | off | `1`: check the strings a `%s` or `puts` reads. It fixes one wrong TRUE on Juliet, but produces false positives on memory the runtime does not track (CASTLE: FP from 1 to 4). | +| `MAP2CHECK_CLAM_PROFILE` | default | `memory` or `none`: see `--add-invariants`. | + +

+--add-invariants inserts abstract-interpretation invariants computed by +Clam (formerly crab-llvm). The build must be configured +with -DENABLE_CLAM=ON and Clam installed at $CLAM_DIR; otherwise the option is +refused with exit code 3. +

+ +

+The option stays optional while it is under study. So far: +

+ +- In the SV-COMP 2019/2020 builds, the invariants reached neither the instrumentation nor KLEE: they were emitted as `llvm.assume`. +- On the current hybrid, the first measurement found no gain. +- Clam is bounded to 0.2 of the budget and falls back to the plain compile when it fails. +- A dedicated study round is planned. See `docs/reports/tacas-experiment-log.md` (INV-1, R25). + +

+Measurements of every option above are recorded in +docs/reports/tacas-experiment-log.md. +

+ ___ #### Verifying WebAssembly (WASM) binaries diff --git a/docs/backlog.md b/docs/backlog.md new file mode 100644 index 000000000..d473c43ec --- /dev/null +++ b/docs/backlog.md @@ -0,0 +1,48 @@ +# Backlog + +Itens decididos como "não agora", cada um com o motivo e onde está a evidência. + +## `--add-invariants`: rodada dedicada de estudo + +- **Estado:** a opção é opcional e fica desligada no build padrão (`-DENABLE_CLAM=OFF`). + O usuário ainda desconfia da conclusão "não ajuda". +- **O que já se sabe** (log de experimentos, INV-1 e R25): + - Na v7.3 os invariantes saíam como `llvm.assume` e ficavam inertes. Até out/2018 eles + chegavam ao KLEE (`--crab-track=arr --crab-add-invariants=after-load`). + - Numa sonda só com o KLEE, o ganho veio do pré-processamento em SSA, não dos + invariantes. + - No híbrido (71 tarefas de Cover-Error e 50 de MemSafety), os perfis do Clam não + ganharam e o MemSafety teve mais FALSE errados (4 contra 2). Parte dos ERROR vinha do + Clam sem limite de tempo, já corrigido. +- **O que a rodada precisa responder:** + - efeito só com o KLEE (`--nondet-generator symex`), onde os invariantes têm mais + chance de pesar, separado do efeito no híbrido; + - por que os FALSE errados de MemSafety aumentam: um invariante incorreto ou o + caminho de compilação do Clam (`-m 64`, pré-processamento próprio); + - os domínios que o motor antigo tinha e o nosso Clam não compila: Apron (`oct`, + `pk`) e LDD (`boxes`); + - o gate: nenhuma detecção perdida no CASTLE e numa amostra do Juliet. + +## Limite de memória do KLEE nas rodadas paralelas + +- **Sintoma:** com 8 contêineres, e às vezes com 4, a memória da máquina (23 GB) chega a + ficar crítica. O KLEE usa até `--max-memory` = 2000 MB por processo. Um KLEE morto + pelo OOM killer sai como "did not finish its run", ou seja UNKNOWN, e contamina a + medição. Os vigias do Claude Code também foram encerrados por isso. +- **Opções:** + - passar `--max-memory` por execução, proporcional às vagas; + - limitar a memória por contêiner (`docker run --memory`); + - registrar no resultado quando o KLEE morreu por falta de memória, para descartar e + repetir essas tarefas. +- **Por que não agora:** não afeta o produto (uma execução de competição tem uma tarefa + por máquina), só a infraestrutura de medição. + +## Harness de campanha fora do repositório + +- Os escalonadores das rodadas R19 a R26 vivem em `../tacas-results/` e não são + versionados, por decisão: campanhas não pertencem ao repositório do produto. +- Dois defeitos deles contaminaram rodadas, e quem escrever o próximo precisa evitá-los: + - `IFS=$'\t' read` junta tabs consecutivos, e uma coluna vazia desloca as seguintes; + usar `-` nos campos vazios; + - os filhos herdavam o manifest pelo descritor 3. Corrigido no harness do repositório + (`3<&-`). diff --git a/docs/reports/2026-08-16-crabllvm-review.md b/docs/reports/2026-08-16-crabllvm-review.md index 9bbd10a42..0d71e71a6 100644 --- a/docs/reports/2026-08-16-crabllvm-review.md +++ b/docs/reports/2026-08-16-crabllvm-review.md @@ -283,3 +283,28 @@ Tudo verificável e datado de 2026-08-16: - Leitura direta dos cinco pontos de acoplamento no Map2Check, citados por arquivo e linha - Baseline v5 para os números de externas não resolvidas e de precisão + +--- + +## Adendo (2026-09-30): o que o motor antigo fazia de fato + +Medido com o release v7.3.1 (SV-COMP 2020), que roda em `python:2.7-slim` com o clang do +LLVM 6 que vem nele. Detalhes em `docs/reports/tacas-experiment-log.md`, INV-1 e R25. + +- **Houve duas configurações.** Até 18/10/2018 (commit `4bb409c20`) o Map2Check usava + `--crab-track=arr --crab-add-invariants=after-load`, e os invariantes saíam como + `verifier.assume`, que o NonDetPass mapeava para `klee_assume`. Da v7.3 em diante + entrou o `--crab-promote-assume`, que emite `llvm.assume`. O NonDetPass antigo não o + mapeava, e o KLEE 2.1 do release o ignora (o mesmo vale para o KLEE 3.1). **Nas versões + de competição de 2019 e 2020 os invariantes não tinham efeito.** +- A seção 2 desta revisão já suspeitava disso ("a invocação legada não teria injetado + nada"); agora está medido. +- **O que parecia funcionar** provavelmente era o caminho de compilação: passar pelo + crab-llvm, e hoje pelo Clam, deixa o módulo em SSA, e o KLEE explora isso melhor. Numa + sonda só com o KLEE, o Clam sem nenhum invariante decidiu o que o pipeline normal + deixava UNKNOWN. +- **No híbrido atual** (R25) os perfis do Clam não ganharam, e o MemSafety teve mais + FALSE errados. +- A opção continua **opcional**. Os perfis (`MAP2CHECK_CLAM_PROFILE=default|memory|none`), + a contagem de invariantes no log, o limite de 0,2T e o recuo para a compilação normal + entraram na 9.0. A rodada dedicada de estudo está em `docs/backlog.md`. diff --git a/docs/reports/2026-09-30-plano-campanha-completa.md b/docs/reports/2026-09-30-plano-campanha-completa.md new file mode 100644 index 000000000..1acf443b4 --- /dev/null +++ b/docs/reports/2026-09-30-plano-campanha-completa.md @@ -0,0 +1,66 @@ +# Plano da campanha completa pós-merge (Map2Check 9.0) + +**Objetivo:** medir a 9.0 no **mesmo recorte da campanha v15** (relatório +`docs/Map2Check-Relatorio-v15.docx`), com a configuração padrão da 9.0, para uma +comparação pareada tarefa a tarefa. É a base do artigo e da decisão de release. + +## O que roda + +**Um braço só:** a configuração padrão da 9.0, que é o híbrido alternado com troca de +sementes e o corpus do fuzzer nas suítes de Cover-Branches. Os braços alternativos +(`--fixed-hybrid`, `--slice`, knobs) já foram medidos nas amostras (R15 a R26) e não +entram. A v15 **não roda de novo**: os resultados dela estão em `tests/*/results_v15*` +e o pareamento é feito pelo programa. + +| corpus | tarefas | manifest | custo médio por tarefa* | horas-vaga | +|---|---|---|---|---| +| Test-Comp Cover-Error | 1 087 | `tests/testcomp/corpus/cover-error-q400.tsv` (o recorte da v15) | ~85 s + TestCov ≈ 110 s | ~33 | +| Test-Comp Cover-Branches | o recorte da v15 (conferir se é `cover-branches-q400.tsv`, 2 765, ou `cover-branches.tsv`, 1 522) | idem | ~240 s + TestCov ≈ 300 s | 127 a 230 | +| Juliet (escopo C) | ~8 000 | `tests/juliet` (os 4 shards da v15) | ~36 s | ~80 | +| CASTLE | 250 (119 em escopo) | `tests/castle` | ~60 s | ~2 | +| SV-COMP MemSafety, MemCleanup e NoOverflows | por categoria, a decidir | `build_corpus.py` | ~36 s | depende | + +\* medido nas rodadas R17, R19 e R26 com 300 s (Test-Comp) e 120 s (SV-COMP). + +## Capacidade e duração + +- Máquina: 16 núcleos, 23 GB. Com **no máximo 5 contêineres** a memória não fica crítica + (com 8 ela ficou; ver `docs/backlog.md`, limite de memória do KLEE). +- Duração, com 5 vagas: + - Cover-Error: ~7 h; + - Juliet: ~16 h; + - Cover-Branches: 1 a 2 dias, conforme o recorte; + - CASTLE e SV-COMP por categoria: algumas horas. + - Total: **~2,5 a 3,5 dias**. +- Ordem sugerida, das decisões mais baratas para as mais caras: + 1. CASTLE; + 2. Cover-Error; + 3. SV-COMP; + 4. Juliet; + 5. Cover-Branches. + +## Regras da execução + +- **Build:** a tag da 9.0 depois do merge, com o install congelado (copiado) antes do + início, como nas rodadas R19 a R26. +- **Escalonador fora do repositório** (decisão do projeto). Ele precisa: + - usar `-` em vez de campo vazio na lista de jobs (o bash junta tabs consecutivos); + - retomar pelo CSV; + - separar os shards por índice do manifest. +- **Validação de cada lote antes de seguir:** + - nenhuma tarefa com ERROR em massa, que é sinal de problema de infraestrutura; + - contar as tarefas com "did not finish its run" (KLEE morto por falta de memória) e + repeti-las. +- **Registro:** cada corpus concluído entra em `docs/reports/tacas-experiment-log.md`, + comparado à v15 com: + - cobertas e TRUE errado (Cover-Error); + - cobertura média (Cover-Branches); + - TP, FN, TN e FP (Juliet e CASTLE); + - correct e wrong (SV-COMP). + +## Critérios de aceite para a release + +- TRUE errado = 0 em Cover-Error e nenhum wrong-true novo no SV-COMP. +- Cover-Error e Cover-Branches: não piores que a v15 no pareado (a amostra aponta + +46 cobertas em 213). +- CASTLE e Juliet: FP não maiores que os da v15, e FN iguais ou menores. diff --git a/modules/frontend/map2check.cpp b/modules/frontend/map2check.cpp index 5176c5504..25ca47dde 100644 --- a/modules/frontend/map2check.cpp +++ b/modules/frontend/map2check.cpp @@ -186,7 +186,7 @@ void emitTestSuite(const std::string &outputDir, const std::string &programFile, if (coverBranches) { // The fuzzer's share first, at most half the suite, so KLEE's paths still // find room: its corpus is ranked by new edges, the cases a coverage - // metric rewards by construction (MAP2CHECK_FUZZER_SUITE=1). + // metric rewards by construction (on by default; MAP2CHECK_FUZZER_SUITE=0). size_t fromFuzzer = 0; for (const std::vector &inputs : fuzzerVectors) { if (writer.caseCount() >= kMaxBranchTestCases / 2) break; @@ -859,11 +859,12 @@ int map2check_execution(map2check_args args) { } // Cover-Branches used only KLEE's paths: the fuzzer's corpus, the inputs // that reached new edges, was thrown away with the scratch directory. - // Behind MAP2CHECK_FUZZER_SUITE=1 until measured. + // On by default since 9.0 (R22: 49.7% against 44.7% on the fixed hybrid; + // R26: 53.5% with the alternation); MAP2CHECK_FUZZER_SUITE=0 turns it off. std::vector> fuzzerVectors; const char *fuzzerSuite = std::getenv("MAP2CHECK_FUZZER_SUITE"); - if (args.coverBranches && fuzzerSuite != nullptr && - std::string(fuzzerSuite) == "1" && + if (args.coverBranches && + !(fuzzerSuite != nullptr && std::string(fuzzerSuite) == "0") && generator == Map2Check::NonDetGenerator::AFLPlusPlus) { fuzzerVectors = caller->fuzzerCorpusVectors(kMaxBranchTestCases); } @@ -941,12 +942,16 @@ z3 (Z3 is default), btor (Boolector), and yices2 (Yices))") "--memcleanup-property, --check-overflow) before analysing it; needs " "sbt-slicer") ("alternate-engines", - "\tlet the fuzzer and KLEE take turns, each stopped once it stops " - "finding coverage, with windows that double every round (implies " - "--seed-exchange; hybrid runs only)") + "\tthe default hybrid (needs --timeout): the fuzzer and KLEE take " + "turns, each stopped once it stops finding coverage, with windows " + "that double every round, handing each other seeds") + ("fixed-hybrid", + "\tthe 8.x hybrid instead: the fuzzer for 0.2 of the budget, then " + "KLEE (with --seed-exchange: 0.2 / 0.6 / 0.2 and a last fuzzer phase)") ("seed-exchange", "\tlet the two engines hand each other input vectors through a shared " - "seed corpus (hybrid runs; off by default)") + "seed corpus (implied by the default hybrid; with --fixed-hybrid, off " + "unless given)") ("cover-branches", "\temit one test case per path KLEE explored, from its .ktest output, " "instead of the single violating vector (Test-Comp Cover-Branches)") @@ -1062,22 +1067,32 @@ z3 (Z3 is default), btor (Boolector), and yices2 (Yices))") if (vm.count("seed-exchange")) { args.seedExchange = true; } - if (vm.count("alternate-engines")) { + // The hybrid is the alternation by default since 9.0: measured on the + // 213-task Cover-Error sample it ties the seed-exchange hybrid (157 each, + // against 128 for the 8.x fixed hybrid) and leads Cover-Branches (53.5% + // against 46.5%, R26). --fixed-hybrid keeps the 8.x schedule. + const bool hybrid = !vm.count("nondet-generator"); + const bool budgeted = + vm.count("timeout") && vm["timeout"].as() > 0; + if (vm.count("fixed-hybrid")) { + if (vm.count("alternate-engines")) { + Map2Check::Log::Warning( + "--fixed-hybrid and --alternate-engines both given -- using the " + "fixed hybrid"); + } + } else if (hybrid && budgeted) { + args.alternateEngines = true; + args.seedExchange = true; + } else if (vm.count("alternate-engines")) { // Windows and stagnation are fractions of the budget, and turns only // exist on the hybrid path: without either, say so instead of running // something else under the flag's name. - if (!vm.count("timeout") || vm["timeout"].as() == 0) { - Map2Check::Log::Warning( - "--alternate-engines needs --timeout: its windows are fractions of " - "the budget -- running the fixed hybrid instead"); - } else if (vm.count("nondet-generator")) { - Map2Check::Log::Warning( - "--alternate-engines applies to the hybrid only -- ignored with " - "--nondet-generator"); - } else { - args.alternateEngines = true; - args.seedExchange = true; - } + Map2Check::Log::Warning( + !budgeted ? "--alternate-engines needs --timeout: its windows are " + "fractions of the budget -- running the fixed hybrid " + "instead" + : "--alternate-engines applies to the hybrid only -- " + "ignored with --nondet-generator"); } if (vm.count("cover-branches")) { args.coverBranches = true; diff --git a/tests/integration/test_testcomp_regressions.sh b/tests/integration/test_testcomp_regressions.sh index 64b7daad4..83a353351 100755 --- a/tests/integration/test_testcomp_regressions.sh +++ b/tests/integration/test_testcomp_regressions.sh @@ -428,17 +428,17 @@ int main(void) { } EOF -# Off by default: the hybrid's measured behaviour must not change until the -# exchange has earned its place beside it. +# The 8.x fixed hybrid keeps its behaviour: no exchange unless asked. (Since +# 9.0 the default hybrid is the alternation, which exchanges seeds.) ( cd "$WORK/seed" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 250 "$MAP2CHECK" \ - --target-function --target-function-name reach_error \ + --fixed-hybrid --target-function --target-function-name reach_error \ --debug --timeout 60 seed.c ) > "$WORK/seed/off.log" 2>&1 # The seed store lives BESIDE the scratch directory (.seeds): every # hybrid phase recreates the scratch directory, and a store inside it never # reached the next phase (tacasv3a). n_off=$(ls -d "$WORK/seed"/*.seeds 2>/dev/null | wc -l) if [ "$n_off" -eq 0 ]; then - ok "no seed store without --seed-exchange" + ok "no seed store with --fixed-hybrid and without --seed-exchange" else fail "default behaviour" "a seed store was created without asking" fi From 3476ff76916b38280077048c018e337bc3140f22 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Wed, 30 Sep 2026 13:56:57 -0400 Subject: [PATCH 59/88] docs: campaign plan on the 2765-task Cover-Branches set, witness study in the backlog Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/backlog.md | 18 ++++++++++++++++++ .../2026-09-30-plano-campanha-completa.md | 6 +++--- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/docs/backlog.md b/docs/backlog.md index d473c43ec..d67822c40 100644 --- a/docs/backlog.md +++ b/docs/backlog.md @@ -46,3 +46,21 @@ Itens decididos como "não agora", cada um com o motivo e onde está a evidênci usar `-` nos campos vazios; - os filhos herdavam o manifest pelo descritor 3. Corrigido no harness do repositório (`3<&-`). + +## Validação de witness (fase D, item 4.2): estudo, a discutir com o orientador + +- **Estado atual:** + - O Map2Check gera só witness **GraphML** (`--generate-witness`, formato 1.0), gravado + em `../witness.graphml` a partir do scratch. + - Não gera o formato **2.0 (YAML)**, adotado pelo SV-COMP. É preciso confirmar no + call do ano quais formatos ainda são aceitos. + - Nenhum teste valida os witnesses gerados. + - A Test-Comp não usa witness; a suíte é validada pelo TestCov. O item só pesa para o + SV-COMP. +- **Caminho barato já esboçado (validação por execução):** compilar o programa original + (com ASan, para as propriedades de memória), alimentá-lo com o vetor que viola a + propriedade (que o Map2Check já emite na suíte de Cover-Error) e confirmar o + `reach_error` ou o crash. É parecido com o que o TestCov faz e com os validadores por + execução do SV-COMP. +- **Não começar a implementação** antes da conversa com o orientador: definir se o + objetivo é o formato 2.0, a validação por execução, os dois ou nenhum. diff --git a/docs/reports/2026-09-30-plano-campanha-completa.md b/docs/reports/2026-09-30-plano-campanha-completa.md index 1acf443b4..487633a04 100644 --- a/docs/reports/2026-09-30-plano-campanha-completa.md +++ b/docs/reports/2026-09-30-plano-campanha-completa.md @@ -15,7 +15,7 @@ e o pareamento é feito pelo programa. | corpus | tarefas | manifest | custo médio por tarefa* | horas-vaga | |---|---|---|---|---| | Test-Comp Cover-Error | 1 087 | `tests/testcomp/corpus/cover-error-q400.tsv` (o recorte da v15) | ~85 s + TestCov ≈ 110 s | ~33 | -| Test-Comp Cover-Branches | o recorte da v15 (conferir se é `cover-branches-q400.tsv`, 2 765, ou `cover-branches.tsv`, 1 522) | idem | ~240 s + TestCov ≈ 300 s | 127 a 230 | +| Test-Comp Cover-Branches | 2 765 (o mesmo recorte da v15, confirmado) | `tests/testcomp/corpus/cover-branches-q400.tsv` | ~240 s + TestCov ≈ 300 s | ~230 | | Juliet (escopo C) | ~8 000 | `tests/juliet` (os 4 shards da v15) | ~36 s | ~80 | | CASTLE | 250 (119 em escopo) | `tests/castle` | ~60 s | ~2 | | SV-COMP MemSafety, MemCleanup e NoOverflows | por categoria, a decidir | `build_corpus.py` | ~36 s | depende | @@ -29,9 +29,9 @@ e o pareamento é feito pelo programa. - Duração, com 5 vagas: - Cover-Error: ~7 h; - Juliet: ~16 h; - - Cover-Branches: 1 a 2 dias, conforme o recorte; + - Cover-Branches: ~2 dias (2 765 tarefas); - CASTLE e SV-COMP por categoria: algumas horas. - - Total: **~2,5 a 3,5 dias**. + - Total: **~3,5 dias**. - Ordem sugerida, das decisões mais baratas para as mais caras: 1. CASTLE; 2. Cover-Error; From 529d43ad5383e7664f20f0f94184485085a9cd86 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Wed, 30 Sep 2026 14:16:36 -0400 Subject: [PATCH 60/88] docs(tacas): handoff -- the 9.0 campaign is chained after R26 Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/2026-09-29-handoff-tacas.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/docs/reports/2026-09-29-handoff-tacas.md b/docs/reports/2026-09-29-handoff-tacas.md index 4a88590b9..21b0d5e20 100644 --- a/docs/reports/2026-09-29-handoff-tacas.md +++ b/docs/reports/2026-09-29-handoff-tacas.md @@ -199,3 +199,17 @@ inicializada, busca dirigida). O ponto de partida: `release/` foi restaurado a partir de `install_v15/`. 7. O worktree velho `../Map2Check-2c` precisa de `--force` para ser removido. **Pedir permissão** antes. + +## 6. Campanha completa da 9.0 (lançada em 2026-09-30, 14h16) + +- **Lançador:** `../tacas-results/v9-campaign.sh`, rodando com `setsid`, log em + `../tacas-results/v9-campaign.log`. Ele espera o R26 terminar e roda sozinho, na ordem + do plano: CASTLE, Cover-Error (1087, 3 shards), Juliet (grupos a–d, como a v15) e + Cover-Branches (2765, 6 shards). +- **Build:** `install_v9`, cópia congelada da ponta de `feat/map2check-9.0` + (`v9-commit.txt`). Um commit de código novo antes do merge exige rodar de novo a parte + afetada. +- **Imagem:** `map2check-v9-eval:latest`, que é a `map2check-dev:aflpp` com o TestCov. +- **Condições da v15:** `--memory=4g`, `--cpus=2` (Test-Comp) e `--cpus=1` (Juliet e + CASTLE), 300 s, `PER_FAMILY=10`; no máximo 5 contêineres. +- **Resultados:** `../tacas-results/V9-*`, pareados com `tests/*/results_v15*`. From b1f1870b83672a14a758901f4a260346f7737bbf Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Wed, 30 Sep 2026 20:12:10 -0400 Subject: [PATCH 61/88] docs(tacas): R26 complete and the first batches of the 9.0 campaign Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/tacas-experiment-log.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index b922de89e..a015deb86 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -708,3 +708,29 @@ Todos contra o braço equivalente da R19, nas tarefas em comum (linhas filtradas regenerado, com o prefixo voltando para `release/` e o `ENABLE_CLAM` para OFF. O `release/` foi sobrescrito de novo e restaurado a partir do `install_v15` (idêntico, conferido com `diff`). As rodadas usaram installs congelados antes disso. + +## R26 completa (2026-09-30) e primeiros lotes da campanha da 9.0 + +**R26, SV-COMP (120 s):** a alternância **não perde nenhum TRUE correto**. + +| | control (fixo) | seeds | alternate | +|---|---|---|---| +| MemSafety (50): correct-true / correct-false | 10 / 19 | 10 / 20 | **10 / 20** | +| MemSafety: wrong-true / wrong-false | 2 / 3 | 1 / 3 | **1 / 3** | +| MemCleanup (10): corretos | 6 | 6 | 6 | +| NoOverflows (20): corretos | 2 | 2 | 2 | + +As sementes e a alternância corrigem o TRUE errado do `CWE122…rand_18`. O seeds teve 1 +ERROR (`tricky_address2`). + +**CASTLE:** R26 e a campanha da 9.0 dão TP 54, TN 44, FN 14, FP 1, **igual à v15**; os 4 +TIMEOUT da v15 viraram UNKNOWN. + +**Campanha da 9.0, parcial** (`install_v9` = `3476ff769`; condições da v15: 4 GB, 300 s): + +| corpus | pareado com a v15 | v15 | 9.0 | +|---|---|---|---| +| Cover-Error (q400) | 532 de 1087 | 288 cobertas, **57 TRUE errados** | **394 cobertas (+112 −6), 0 TRUE errado**; mediana 59 → 19 s | +| Juliet, grupos a e b | 2 271 | TP 340, FN 118, FP 20, TN 1074, ERROR 114 | **TP 776**, FN 90, FP 20, TN 1058, ERROR 0 | + +- Juliet: 294 UNKNOWN e 102 ERROR da v15 viraram TP; 16 TN viraram UNKNOWN. From a65377e47c30b93ccb3b7f5eb8f0fd929d425fab Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Fri, 2 Oct 2026 13:22:08 -0400 Subject: [PATCH 62/88] docs(tacas): handoff -- resuming the 9.0 campaign after a power loss Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/2026-09-29-handoff-tacas.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/docs/reports/2026-09-29-handoff-tacas.md b/docs/reports/2026-09-29-handoff-tacas.md index 21b0d5e20..df28b60c1 100644 --- a/docs/reports/2026-09-29-handoff-tacas.md +++ b/docs/reports/2026-09-29-handoff-tacas.md @@ -213,3 +213,17 @@ inicializada, busca dirigida). O ponto de partida: - **Condições da v15:** `--memory=4g`, `--cpus=2` (Test-Comp) e `--cpus=1` (Juliet e CASTLE), 300 s, `PER_FAMILY=10`; no máximo 5 contêineres. - **Resultados:** `../tacas-results/V9-*`, pareados com `tests/*/results_v15*`. + +### Queda de energia (2026-10-02) e como retomar + +- A campanha parou na queda; os CSVs ficaram íntegros, exceto o + `V9-juliet-b/juliet_scope_c_results.csv`, que tinha 300 bytes nulos no fim. Ele foi + limpo, e a cópia original está em `.bak-powerloss`. +- O lançador foi reescrito para sobreviver a outra queda: + - os contêineres usam `--restart=unless-stopped` e voltam sozinhos com o Docker; + - um job concluído grava `../tacas-results/.v9-done-` e fica parado, e o lançador + o remove. Sem isso, a política de reinício o rodaria de novo. +- **Para retomar depois de um reboot**, dentro de `../tacas-results`: + `SLOTS=5 setsid nohup ./v9-campaign.sh > v9-campaign.stderr 2>&1 < /dev/null &` + Ele pula o que estiver marcado como concluído, e os harnesses pulam o que já está no + CSV. Retomada conferida sem duplicatas. From 76eedfc752272468a8565f0dfbd4c3bfa940420a Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Fri, 2 Oct 2026 20:30:23 -0400 Subject: [PATCH 63/88] fix(hybrid): link the fuzzer with libm, and kill a KLEE an interrupt cannot stop Two defects the 9.0 campaign found on Juliet's CWE190/191 group: - The AFL++ binaries were linked without -lm, so a program calling sqrt or pow failed to link ('undefined reference to sqrt') and lost its fuzzer phase -- 55 tasks the harness counted as ERROR. KLEE gets libm from uClibc; the native links now pass -lm. - A KLEE blocked inside a native external call (the fscanf variants hand __isoc99_fscanf a uClibc FILE*) never checks its interrupt flag nor its own --max-time, so the stagnation stop did not stop it: it held the rest of its window until timeout's SIGKILL (207 of 272 stops in that group). Not stopped within 10 s of the interrupt, it is killed and the time goes to the next phase. Nothing is lost: a stagnated run is already incomplete. Integration 48/50 under the campaign's load: sections 10 and 32 (fuzzer timing) fail the same way on the previous build under that load, and pass on rerun. Co-Authored-By: Claude Opus 5.5 (1M context) --- modules/frontend/caller.cpp | 32 +++++++++++++++++++++++++++++--- 1 file changed, 29 insertions(+), 3 deletions(-) diff --git a/modules/frontend/caller.cpp b/modules/frontend/caller.cpp index 4d2cde8d1..f1179d7c6 100644 --- a/modules/frontend/caller.cpp +++ b/modules/frontend/caller.cpp @@ -253,6 +253,27 @@ int Caller::runKleeWatched(const std::string &command) { Map2Check::Log::Warning("KLEE stagnated: no new coverage for " + std::to_string(this->stagnationLimit) + " s -- stopping it"); + // A KLEE blocked inside a native external call (Juliet's fscanf variants: + // __isoc99_fscanf handed a uClibc FILE*) never looks at the interrupt + // flag -- nor at its own --max-time -- and used to hold the rest of its + // window until timeout's SIGKILL. Not stopped within the grace, it is + // killed now and the time goes to the next phase. Nothing is lost: a run + // that stagnated is already counted incomplete. + constexpr int kInterruptGraceSeconds = 10; + for (int tick = 0; tick < 2 * kInterruptGraceSeconds && !done; ++tick) { + std::this_thread::sleep_for(std::chrono::milliseconds(500)); + } + if (!done) { + if (klee > 0) { + kill(klee, SIGKILL); + } else if (pid > 0) { + kill(pid, SIGKILL); + } + Map2Check::Log::Warning( + "KLEE did not stop within " + + std::to_string(kInterruptGraceSeconds) + + " s of the interrupt (blocked in an external call?) -- killed it"); + } break; } runner.join(); @@ -879,7 +900,12 @@ void Caller::applyNonDetGenerator() { << bound() << Map2Check::aflClangFastBinary() << " -g " << Caller::postOptimizationFlags() << " -o " + programHash + "-fuzzed.out" - << " " + programHash + "-result.bc" << " > afl-build.log 2>&1"; + << " " + programHash + "-result.bc" + // libm: a program calling sqrt/pow failed to link ("undefined + // reference to `sqrt'") and lost its fuzzer phase (Juliet CWE190/191, + // 9.0 campaign). KLEE gets libm through uClibc; the native links + // did not. + << " -lm > afl-build.log 2>&1"; const int built = system(command.str().c_str()); @@ -888,7 +914,7 @@ void Caller::applyNonDetGenerator() { commandWitness << bound() << Map2Check::aflClangFastBinary() << " -g " << " -o " + programHash + "-witness-fuzzed.out" - << " " + programHash + "-witness-result.bc"; + << " " + programHash + "-witness-result.bc -lm"; system(commandWitness.str().c_str()); @@ -904,7 +930,7 @@ void Caller::applyNonDetGenerator() { << Map2Check::aflClangFastBinary() << " -g " << Caller::postOptimizationFlags() << " -o " + programHash + "-cmplog.out" - << " " + programHash + "-result.bc"; + << " " + programHash + "-result.bc -lm"; system(commandCmplog.str().c_str()); { From 43ee04ec4c2a3c4d6e06ccf956b8397453e7bfbf Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Fri, 2 Oct 2026 20:33:07 -0400 Subject: [PATCH 64/88] docs(tacas): the two defects of the 9.0 campaign and the build swap Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/backlog.md | 7 +++++++ docs/reports/tacas-experiment-log.md | 27 +++++++++++++++++++++++++++ 2 files changed, 34 insertions(+) diff --git a/docs/backlog.md b/docs/backlog.md index d67822c40..d240019c0 100644 --- a/docs/backlog.md +++ b/docs/backlog.md @@ -64,3 +64,10 @@ Itens decididos como "não agora", cada um com o motivo e onde está a evidênci execução do SV-COMP. - **Não começar a implementação** antes da conversa com o orientador: definir se o objetivo é o formato 2.0, a validação por execução, os dois ou nenhum. + +## `--debug` com a alternância dá segfault + +- Achado em 2026-10-02: `map2check --debug --check-overflow --timeout 60` sobre um caso do + Juliet (CWE190 `char_fscanf_square_01`, good) termina com segfault depois das fases. O + scratch aparece aninhado (`.map2check/.map2check-…`). Sem `--debug` a + execução termina normalmente. Só afeta a depuração. diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index a015deb86..4dff2692d 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -734,3 +734,30 @@ TIMEOUT da v15 viraram UNKNOWN. | Juliet, grupos a e b | 2 271 | TP 340, FN 118, FP 20, TN 1074, ERROR 114 | **TP 776**, FN 90, FP 20, TN 1058, ERROR 0 | - Juliet: 294 UNKNOWN e 102 ERROR da v15 viraram TP; 16 TN viraram UNKNOWN. + +## Campanha da 9.0: dois defeitos achados no Juliet c, e a troca de build (2026-10-02) + +- **Achado:** o grupo c do Juliet (CWE190 e 191, overflow) teve **55 ERROR** que a v15 não + tinha, e 207 das 272 paradas por estagnação terminaram em SIGKILL. + 1. **Link do fuzzer sem `-lm`.** Um programa com `sqrt` ou `pow` não linkava ("undefined + reference to `sqrt`"), perdia a fase do AFL++ e o harness contava ERROR. + 2. **KLEE preso numa chamada externa nativa.** As variantes `fscanf` passam um `FILE*` + da uClibc ao `__isoc99_fscanf` nativo. Preso ali, o KLEE não olha o sinal de + interrupção nem o próprio `--max-time`, e só saía no SIGKILL do fim da janela, + desperdiçando o resto dela. Testado à parte: o KLEE isolado responde ao SIGINT + normalmente; nesse módulo não reage nem em 60 s. +- **Correção** (`76eedfc75`): os links nativos levam `-lm`; um KLEE que não para em 10 s + depois do SIGINT é morto e o tempo vai para a próxima fase. No caso reproduzido: + 5 fases em vez de 4 no mesmo orçamento e o fuzzer linkando. +- **Troca de build na campanha** (decisão do usuário: corrigir, refazer o que deu erro e + seguir com a versão corrigida como a 9.0): + - `install_v9` passa a ser o build de `76eedfc75`; o anterior fica em + `install_v9-3476ff7`; + - **refeitos com o build novo:** o grupo c inteiro do Juliet, as 2 tarefas de + Cover-Error que chamam a libm (`loop-floats-scientific-comp/loop2-1.c` e `loop4.i`) e o + Cover-Branches (que mal tinha começado); + - **mantidos do build anterior:** CASTLE, Cover-Error (exceto essas 2) e os grupos a, b e + d do Juliet, sem erro de libm. Os dois defeitos não mudam veredito; o segundo só + devolvia tempo nas paradas por estagnação. +- **Fora da campanha:** o `--debug` dá segfault com a alternância (no fim da execução). + Só afeta a depuração e ficou registrado para corrigir. From c8a4f6a2ce37affa981bcb342db851e4473cea5a Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Fri, 2 Oct 2026 23:00:59 -0400 Subject: [PATCH 65/88] docs(tacas): 9.0 campaign -- Cover-Error, CASTLE and Juliet a/b/d complete Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/tacas-experiment-log.md | 32 ++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index 4dff2692d..94a40d2fa 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -761,3 +761,35 @@ TIMEOUT da v15 viraram UNKNOWN. devolvia tempo nas paradas por estagnação. - **Fora da campanha:** o `--debug` dá segfault com a alternância (no fim da execução). Só afeta a depuração e ficou registrado para corrigir. + +## Campanha da 9.0 — Cover-Error, CASTLE e Juliet a, b, d completos (2026-10-02, 23h) + +**Cover-Error, 1 087 tarefas** (recorte da v15, pareado): + +| | v15 | 9.0 | +|---|---|---| +| cobertas | 470 | **722 (+265 −13, +54%)** | +| TRUE errado | **175** | **0** | +| ERROR | 9 | 0 | +| tempo mediano | 176 s | 72 s | + +- Por categoria (v15 → 9.0): ECA 58 → 146, ProductLines 111 → 169, Sequentialized + 9 → 78, XCSP 22 → 38, Arrays 84 → 92, Loops 102 → 109; nenhuma categoria cai. + +**Juliet** (pareado; a, b e d completos, c refeito com o build corrigido e em curso): + +| grupo | TP (v15 → 9.0) | FN | FP | TN | ERROR | +|---|---|---|---|---|---| +| a (2 320) | 214 → **611** | 127 → 100 | 0 → 0 | 1 140 → 1 131 | 269 → 0 | +| b (1 600) | 216 → **473** | 202 → 170 | 30 → 30 | 729 → 722 | 111 → 0 | +| d (960) | 364 → 364 | 116 → 114 | 80 → 80 | 380 → 369 | 0 → 0 | + +- O grupo d não ganhou TP, perdeu 11 TN para UNKNOWN e teve mais UNKNOWN + TIMEOUT + (20 → 33). É a única queda; investigar quando a campanha fechar. + +**CASTLE:** igual à v15 (TP 54, FN 14, FP 1). + +**Cover-Branches, parcial (111 de 2 765):** 48,3% contra 42,1% da v15, 47 melhores e 19 +piores. TestCov: VALIDATED 84, VALIDATED_ABORTS 23, TESTCOV_ERROR 4 (v15: 93, 15 e 3). O +aumento de VALIDATED_ABORTS vem dos casos do corpus do fuzzer que violam uma assunção +(o teste termina num `abort()`). A suíte continua válida e a cobertura conta. From 60597d7a5bc2df47cd0d7e09463f803844ba4dc2 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Sat, 3 Oct 2026 20:03:10 -0400 Subject: [PATCH 66/88] docs(tacas): handoff -- Cover-Branches shard 5 split in four Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/2026-09-29-handoff-tacas.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/docs/reports/2026-09-29-handoff-tacas.md b/docs/reports/2026-09-29-handoff-tacas.md index df28b60c1..ed74759b2 100644 --- a/docs/reports/2026-09-29-handoff-tacas.md +++ b/docs/reports/2026-09-29-handoff-tacas.md @@ -227,3 +227,14 @@ inicializada, busca dirigida). O ponto de partida: `SLOTS=5 setsid nohup ./v9-campaign.sh > v9-campaign.stderr 2>&1 < /dev/null &` Ele pula o que estiver marcado como concluído, e os harnesses pulam o que já está no CSV. Retomada conferida sem duplicatas. + +### Cover-Branches: shard 5 dividido em 4 partes (2026-10-03, 20h) + +- Para encurtar a cauda (os shards 4 e 5 tinham ~460 tarefas cada, a ~13/h), o shard 5 + foi dividido em `../tacas-results/cb-s5-p{0..3}.tsv` (115 tarefas cada), com resultados + em `V9-cb_s5_p{0..3}`. Eles rodam pelo lançador auxiliar `v9-cb5.sh`. O principal foi + encerrado (só faltava o shard 5) e `.v9-done-v9-cb-s5` impede que ele o suba inteiro. +- **Análise:** juntar `V9-cb_s{0..4}` (filtrando por índice % 6) com as 4 partes do + shard 5 (sem filtro). +- **Após um reboot:** relançar `./v9-cb5.sh`; ele também remove os jobs concluídos dos + shards 0 a 4. From b51ee3d55601afc9ca7c5247755b884bf2c1ea85 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Sun, 4 Oct 2026 00:01:48 -0400 Subject: [PATCH 67/88] docs(backlog): campaign sample vs the official Test-Comp 2026 set; assume-pruned KLEE paths Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/backlog.md | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/docs/backlog.md b/docs/backlog.md index d240019c0..b398515f9 100644 --- a/docs/backlog.md +++ b/docs/backlog.md @@ -71,3 +71,36 @@ Itens decididos como "não agora", cada um com o motivo e onde está a evidênci Juliet (CWE190 `char_fscanf_square_01`, good) termina com segfault depois das fases. O scratch aparece aninhado (`.map2check/.map2check-…`). Sem `--debug` a execução termina normalmente. Só afeta a depuração. + +## Recorte da campanha × conjunto oficial da Test-Comp 2026 + +- **Contexto:** a campanha da 9.0 usa o recorte da v15 (`cover-error-q400.tsv`, 1 087 + tarefas; `cover-branches-q400.tsv`, 2 765). A Test-Comp 2026 tem 1 895 tarefas em + C.Cover-Error e 14 322 em C.Cover-Branches + ([resultados](https://test-comp.sosy-lab.org/2026/results/results-verified/)). +- **Diferença de composição (Cover-Error):** + - faltam no recorte as subcategorias novas: SoftwareSystems-Intel-TDX-Module (658), + Hardware (497), coreutils (29) e BusyBox, OpenBSD e Linux64 (7); + - o ECA pesa 400 tarefas no recorte, contra 18 no conjunto oficial; + - as subcategorias clássicas (ProductLines, Loops, Sequentialized, Arrays, XCSP, + Floats, BitVectors, ControlFlow, Recursive) praticamente coincidem. +- **Consequência:** os 722 pontos de Cover-Error da 9.0 valem só para a comparação + pareada com a v15. Não estimam a pontuação oficial, que é normalizada por subcategoria. +- **TODO:** montar um manifest com as subcategorias ausentes (Hardware, Intel-TDX, + coreutils) e rodar uma amostra delas depois da campanha de Cover-Branches. + +## Caminhos podados pelo assume no KLEE não geram teste + +- **Sintoma:** na campanha da 9.0, 29 tarefas de Cover-Branches (25 XCSP, 4 Floats) + terminam com zero testes. O XCSP cai de 76,2% para 58,1% de cobertura média, o que + custa cerca de 1,7 p.p. na média geral. +- **Causa:** o `nondet_assume` sob o KLEE poda com `klee_silent_exit`, que não grava + `.ktest`. Quando todos os caminhos são podados, a suíte sai vazia. +- **Correção proposta:** podar com `_exit(0)`. O caminho termina normalmente e grava o + teste, sem rodar os handlers de saída. +- **Validação necessária:** + - os testes de integração; + - o §29 (`safe.c`) continua dando TRUE; + - o memtrack com `sleep-3` não ganha falso positivo. + - Depois disso, repetir só as tarefas que ficaram com zero testes. +- **TODO:** aguarda decisão. From 7c08270b83472aad756d4eadd4d5eab315bceb5d Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Mon, 5 Oct 2026 10:32:32 -0400 Subject: [PATCH 68/88] docs(tacas): 9.0 campaign -- Cover-Branches complete Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/tacas-experiment-log.md | 42 ++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index 94a40d2fa..fcf437ffd 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -793,3 +793,45 @@ TIMEOUT da v15 viraram UNKNOWN. piores. TestCov: VALIDATED 84, VALIDATED_ABORTS 23, TESTCOV_ERROR 4 (v15: 93, 15 e 3). O aumento de VALIDATED_ABORTS vem dos casos do corpus do fuzzer que violam uma assunção (o teste termina num `abort()`). A suíte continua válida e a cobertura conta. + +## Campanha da 9.0 — Cover-Branches completo (2026-10-05) + +O shard 4 fechou às 4h48 e, com ele, a campanha inteira. O build é o `76eedfc75` +(`install_v9`) e as condições são as da v15: 300 s por tarefa, `--memory=4g`, TestCov +com 300 s. + +**Cover-Branches, 2 765 tarefas** (recorte da v15, pareado): + +| | v15 | 9.0 | +|---|---|---| +| cobertura média | 41,4% | **45,1% (+3,7 p.p.)** | +| cobertura mediana | 38,5% | **47,6%** | +| melhores / piores / iguais | — | 932 / 381 / 1 452 | +| VALIDATED / VALIDATED_ABORTS | 2 325 / 329 | 2 416 / 209 | +| TESTCOV_ERROR | 110 | 140 (139 ECA) | +| tempo mediano | 114 s | 274 s | + +- **Por categoria** (cobertura média, v15 → 9.0): + - Arrays: 60,7 → 76,2; + - BitVectors: 60,6 → 70,0; + - ControlFlow: 44,9 → 53,1; + - Recursive: 57,8 → 65,3; + - Heap: 40,6 → 47,3; + - Loops: 70,5 → 73,8; + - LinkedLists: 75,8 → 78,5; + - Sequentialized: 56,0 → 58,7; + - Floats: 5,4 → 6,7; + - ProductLines: 20,3 → 20,7; + - ECA: 10,5 → 10,6. + - **A única queda é o XCSP: 77,6 → 54,6.** +- **Tarefas com zero testes.** 50 tarefas (43 XCSP, 7 Floats) geram testes na v15 e + nenhum na 9.0. Elas somam 1,6 p.p. da média geral; sem elas, a comparação fica em + 40,5% → 45,9%. + - A causa é a poda de assunção com `klee_silent_exit` (ver o backlog). + - Na direção contrária, 51 tarefas sem teste na v15 passam a ter testes na 9.0. +- **TESTCOV_ERROR.** Dos 140, 109 já davam erro na v15. Quase todos são do ECA: o + TestCov passa do limite de 300 s do harness. Falta revalidar com um limite maior. +- **Tempo.** A 9.0 gasta o orçamento inteiro, porque a alternância só para por + estagnação e a suíte continua crescendo. Na v15 o híbrido fixo terminava antes. +- O campo de veredito (SUCCEEDED 1 655 → 296) não pesa em Cover-Branches. Só a cobertura + validada pelo TestCov conta. From e4e0b74c78603446b3a86d34593fe453cb681ed0 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Mon, 5 Oct 2026 12:01:48 -0400 Subject: [PATCH 69/88] fix(klee): end an assumption-pruned path with _exit, so KLEE writes its test klee_silent_exit kept a failed assumption from counting as a dropped path, but it also wrote no .ktest. A program whose every path meets a failed assumption got an empty Cover-Branches suite: in the 9.0 campaign 50 tasks (43 XCSP, 7 Floats) had tests on v15 and none on 9.0, costing 1.6 p.p. of mean coverage. _exit ends the path normally, so KLEE writes the test, and it skips the exit handlers, so an infeasible path reports no leak. Integration 50/50; busybox sleep-3.i memtrack stays UNKNOWN; xcsp Dubois-015/050 go from 0 tests to 100% validated coverage. Co-Authored-By: Claude Opus 5.5 (1M context) --- .../backend/library/lib/NonDetGeneratorKlee.c | 20 ++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/modules/backend/library/lib/NonDetGeneratorKlee.c b/modules/backend/library/lib/NonDetGeneratorKlee.c index be9c215b3..217fe0b3c 100644 --- a/modules/backend/library/lib/NonDetGeneratorKlee.c +++ b/modules/backend/library/lib/NonDetGeneratorKlee.c @@ -10,6 +10,7 @@ #include "../header/NonDetGenerator.h" #include "../header/NonDetLog.h" #include +#include extern int __map2check_main__(int argc, char **argv); @@ -23,14 +24,19 @@ void nondet_generate_aux_witness_files() { extern void klee_assume(int); -/* A failed assumption ends the path silently. klee_assume(0) on a path where - * the condition is already false is a KLEE error ("invalid klee_assume call - * (provably false)", a user.err), and the frontend must read every KLEE error - * as a dropped path -- which made every program with an assume_abort_if_not - * unprovable. klee_silent_exit leaves no test and no error. */ -extern void klee_silent_exit(int status); +/* A failed assumption ends the path as a normal exit. klee_assume(0) on a + * path where the condition is already false is a KLEE error ("invalid + * klee_assume call (provably false)", a user.err), and the frontend must read + * every KLEE error as a dropped path -- which made every program with an + * assume_abort_if_not unprovable. + * + * klee_silent_exit avoided the error but wrote no test either, so a program + * whose every path meets a failed assumption (most of XCSP) got an empty + * Cover-Branches suite. _exit ends the path normally, so KLEE writes its + * .ktest, and it skips the exit handlers: a path the program declared + * infeasible reports no leak. */ void nondet_assume(int expr) { - if (!expr) klee_silent_exit(0); + if (!expr) _exit(0); } extern void klee_make_symbolic(void *addr, size_t nbytes, const char *name); From 6848d2395e53b04d3fab80c8fea893905030f641 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Mon, 5 Oct 2026 19:20:43 -0400 Subject: [PATCH 70/88] fix(suite): assumption-pruned paths give way to deeper ones in a capped suite With e4e0b74c7 a path pruned by a failed assumption writes its .ktest. The suite is written phase by phase under a cap of 50, and on xcsp/AllInterval the first KLEE phase found only pruned paths: they filled the cap, the deep paths of the next phase found no room, and coverage fell from 95% to 9%. - NonDetGeneratorKlee.c makes a one-byte symbolic object named map2check_pruned before _exit, marking the .ktest. - readKtestFile strips the marker and reports it; readKtestVectors returns pruned vectors after all the others and flags them. - TestSuiteWriter marks a pruned case with an XML comment, remembers it across phases, and evictPrunedCase() removes one to make room. Pruned cases count toward neither the fuzzer's nor KLEE's share. AllInterval-011: 9% -> 100% (TestCov). Unit tests 12/12 with new cases; integration 50/50. Co-Authored-By: Claude Opus 5.5 (1M context) --- .../backend/library/lib/NonDetGeneratorKlee.c | 13 +++- modules/frontend/map2check.cpp | 27 +++++-- modules/frontend/test_suite/ktest_reader.cpp | 21 +++++- modules/frontend/test_suite/ktest_reader.hpp | 29 ++++++-- modules/frontend/test_suite/test_suite.cpp | 24 +++++- modules/frontend/test_suite/test_suite.hpp | 21 +++++- tests/unit/frontend/KtestReaderTest.cpp | 74 +++++++++++++++++++ tests/unit/frontend/TestSuiteTest.cpp | 28 +++++++ 8 files changed, 216 insertions(+), 21 deletions(-) diff --git a/modules/backend/library/lib/NonDetGeneratorKlee.c b/modules/backend/library/lib/NonDetGeneratorKlee.c index 217fe0b3c..a8b546754 100644 --- a/modules/backend/library/lib/NonDetGeneratorKlee.c +++ b/modules/backend/library/lib/NonDetGeneratorKlee.c @@ -35,12 +35,19 @@ extern void klee_assume(int); * Cover-Branches suite. _exit ends the path normally, so KLEE writes its * .ktest, and it skips the exit handlers: a path the program declared * infeasible reports no leak. */ +extern void klee_make_symbolic(void *addr, size_t nbytes, const char *name); + +/* The path's test still goes after every unpruned one in a Cover-Branches + * suite (readKtestVectors), so the one-byte "map2check_pruned" object marks + * it. The reader strips the marker; it is never an input. */ void nondet_assume(int expr) { - if (!expr) _exit(0); + if (!expr) { + char pruned; + klee_make_symbolic(&pruned, sizeof(pruned), "map2check_pruned"); + _exit(0); + } } -extern void klee_make_symbolic(void *addr, size_t nbytes, const char *name); - /* "non_det_" #type, not "non_det_#type". The stringify operator only applies * to a macro parameter written OUTSIDE a string literal; inside one, # and t * are just two characters. Every symbolic object was therefore named the diff --git a/modules/frontend/map2check.cpp b/modules/frontend/map2check.cpp index 25ca47dde..bbb990c1f 100644 --- a/modules/frontend/map2check.cpp +++ b/modules/frontend/map2check.cpp @@ -187,10 +187,19 @@ void emitTestSuite(const std::string &outputDir, const std::string &programFile, // The fuzzer's share first, at most half the suite, so KLEE's paths still // find room: its corpus is ranked by new edges, the cases a coverage // metric rewards by construction (on by default; MAP2CHECK_FUZZER_SUITE=0). + // Cases from assumption-pruned paths (see evictPrunedCase) hold no claim + // on the suite: they count toward neither share and give way when full. size_t fromFuzzer = 0; for (const std::vector &inputs : fuzzerVectors) { - if (writer.caseCount() >= kMaxBranchTestCases / 2) break; + if (writer.caseCount() - writer.prunedCount() >= + kMaxBranchTestCases / 2) { + break; + } if (writer.hasTestCase(inputs)) continue; + if (writer.caseCount() >= kMaxBranchTestCases && + !writer.evictPrunedCase()) { + break; + } if (!writer.writeTestCase(inputs, false)) { Map2Check::Log::Warning("could not write test case to " + outputDir); return; @@ -202,13 +211,19 @@ void emitTestSuite(const std::string &outputDir, const std::string &programFile, " test cases from the fuzzer's corpus"); } constexpr size_t kMaxKtestsRead = 5000; - std::vector> vectors = - Map2Check::readKtestVectors(Map2Check::kleeOutputDir, kMaxKtestsRead); + std::vector pruned; + std::vector> vectors = Map2Check::readKtestVectors( + Map2Check::kleeOutputDir, kMaxKtestsRead, &pruned); size_t written = 0; - for (const std::vector &inputs : vectors) { - if (writer.caseCount() >= kMaxBranchTestCases) break; + for (size_t i = 0; i < vectors.size(); ++i) { + const std::vector &inputs = vectors[i]; if (writer.hasTestCase(inputs)) continue; - if (!writer.writeTestCase(inputs, false)) { + // Pruned vectors come last, so once one finds the suite full, all do. + if (writer.caseCount() >= kMaxBranchTestCases && + (pruned[i] || !writer.evictPrunedCase())) { + break; + } + if (!writer.writeTestCase(inputs, false, pruned[i])) { Map2Check::Log::Warning("could not write test case to " + outputDir); return; } diff --git a/modules/frontend/test_suite/ktest_reader.cpp b/modules/frontend/test_suite/ktest_reader.cpp index e9c80c233..3f92c6b73 100644 --- a/modules/frontend/test_suite/ktest_reader.cpp +++ b/modules/frontend/test_suite/ktest_reader.cpp @@ -158,8 +158,9 @@ bool isUnsignedName(const std::string& name) { } // namespace -std::vector readKtestFile(const std::string& path) { +std::vector readKtestFile(const std::string& path, bool* pruned) { std::vector objects; + if (pruned != nullptr) *pruned = false; std::ifstream in(path, std::ios::binary); if (!in.is_open()) return objects; @@ -212,6 +213,10 @@ std::vector readKtestFile(const std::string& path) { // A partial object is dropped, but the ones already read are kept: a // .ktest truncated by a kill still describes a usable prefix of the path, // and the same forgiving rule governs the CSV log. + if (name == kPrunedPathMarker) { + if (pruned != nullptr) *pruned = true; + continue; + } objects.push_back(KtestObject{name, std::move(bytes)}); } @@ -372,8 +377,9 @@ std::string kleeDroppedPaths(const std::string& kleeOutDir) { } std::vector> readKtestVectors( - const std::string& kleeOutDir, size_t limit) { + const std::string& kleeOutDir, size_t limit, std::vector* pruned) { std::vector> vectors; + if (pruned != nullptr) pruned->clear(); std::error_code error; if (!std::filesystem::is_directory(kleeOutDir, error)) return vectors; @@ -389,17 +395,26 @@ std::vector> readKtestVectors( } std::sort(paths.begin(), paths.end()); + std::vector> prunedVectors; for (const std::string& path : paths) { if (vectors.size() >= limit) break; - std::vector objects = readKtestFile(path); + bool isPruned = false; + std::vector objects = readKtestFile(path, &isPruned); if (objects.empty()) continue; + if (isPruned && prunedVectors.size() >= limit) continue; std::vector inputs; inputs.reserve(objects.size()); for (const KtestObject& object : objects) { inputs.push_back(decodeKtestObject(object)); } + (isPruned ? prunedVectors : vectors).push_back(std::move(inputs)); + } + if (pruned != nullptr) pruned->assign(vectors.size(), false); + for (std::vector& inputs : prunedVectors) { + if (vectors.size() >= limit) break; vectors.push_back(std::move(inputs)); + if (pruned != nullptr) pruned->push_back(true); } return vectors; } diff --git a/modules/frontend/test_suite/ktest_reader.hpp b/modules/frontend/test_suite/ktest_reader.hpp index f6ee77099..eb7aac78d 100644 --- a/modules/frontend/test_suite/ktest_reader.hpp +++ b/modules/frontend/test_suite/ktest_reader.hpp @@ -49,8 +49,17 @@ struct KtestObject { std::vector bytes; }; -/** Parses one .ktest file. Empty on a file that is absent or not a ktest. */ -std::vector readKtestFile(const std::string& path); +/** The object NonDetGeneratorKlee.c makes just before a failed assumption + * ends the path. It carries no input: it only marks the .ktest as a path the + * program itself declared infeasible. */ +constexpr const char* kPrunedPathMarker = "map2check_pruned"; + +/** Parses one .ktest file. Empty on a file that is absent or not a ktest. + * + * The pruned-path marker is never returned as an object; `pruned`, when given, + * says whether the file carried it. */ +std::vector readKtestFile(const std::string& path, + bool* pruned = nullptr); /** Renders one object as the decimal string a element carries. * @@ -100,8 +109,8 @@ bool kleeHaltedOnTimer(const std::string& kleeOutDir); * loops/insertion_sort-1-2, also answered TRUE. * Also: KLEE hitting its memory cap ("skipping fork", "over memory cap"), and * a KLEE that never finished (no "done: completed paths" in info -- a crash). - * A path pruned by an assumption is none of these: it ends in - * klee_silent_exit and leaves no file. */ + * A path pruned by an assumption is none of these: it ends in _exit, a + * normal exit, and leaves an ordinary .ktest. */ std::string kleeDroppedPaths(const std::string& kleeOutDir); /** Every input vector KLEE recorded under `kleeOutDir`, one per .ktest. @@ -109,9 +118,17 @@ std::string kleeDroppedPaths(const std::string& kleeOutDir); * Ordered by file name, which is KLEE's own path numbering: stable across * runs, so two runs over the same output number their test cases alike. * `limit` bounds the suite. Vectors with no objects are dropped -- a path that - * read no input is not a test case. */ + * read no input is not a test case. + * + * Paths a failed assumption pruned come after every other path. They still + * cover branches -- on a program whose every path meets a failed assumption + * they are the whole suite -- but they are usually shallow, and taken in KLEE's + * order they filled the suite's cap ahead of the deep paths: xcsp/AllInterval + * fell from 95% to 9% coverage. `pruned`, when given, flags each returned + * vector that came from such a path. */ std::vector> readKtestVectors( - const std::string& kleeOutDir, size_t limit); + const std::string& kleeOutDir, size_t limit, + std::vector* pruned = nullptr); /** Serialises objects into the byte stream a fuzzer would consume. * diff --git a/modules/frontend/test_suite/test_suite.cpp b/modules/frontend/test_suite/test_suite.cpp index 188ee753b..38a40f979 100644 --- a/modules/frontend/test_suite/test_suite.cpp +++ b/modules/frontend/test_suite/test_suite.cpp @@ -31,6 +31,10 @@ const char kTestCaseDoctype[] = "\"+//IDN sosy-lab.org//DTD test-format testcase 1.1//EN\" " "\"https://sosy-lab.org/test-format/testcase-1.1.dtd\">"; +/** Marks a case as an assumption-pruned path (see evictPrunedCase). A comment + * is outside the test format, so validators and TestCov ignore it. */ +const char kPrunedComment[] = ""; + /** Field index of the value in a nondet log row. * NonDetLog.c writes: id;line;scope;function_name;step;value;type */ constexpr size_t kValueField = 5; @@ -136,9 +140,22 @@ TestSuiteWriter::TestSuiteWriter(std::string directory) at = end + kClose.size(); } this->cases.insert(inputs); + if (xml.find(kPrunedComment) != std::string::npos) { + this->prunedCases[inputs] = entry.path(); + } } } +bool TestSuiteWriter::evictPrunedCase() { + if (this->prunedCases.empty()) return false; + auto victim = this->prunedCases.begin(); + std::error_code ec; + std::filesystem::remove(victim->second, ec); + this->cases.erase(victim->first); + this->prunedCases.erase(victim); + return true; +} + namespace { std::vector escapedInputs(const std::vector& raw) { std::vector escaped; @@ -197,7 +214,7 @@ bool TestSuiteWriter::writeMetadata(const TestSuiteMetadata& metadata) { } bool TestSuiteWriter::writeTestCase(const std::vector& inputs, - bool coversError) { + bool coversError, bool pruned) { std::error_code ec; std::filesystem::create_directories(this->directory, ec); @@ -207,6 +224,7 @@ bool TestSuiteWriter::writeTestCase(const std::vector& inputs, if (!out.is_open()) return false; out << kXmlDeclaration << "\n" << kTestCaseDoctype << "\n"; + if (pruned) out << kPrunedComment << "\n"; // coversError defaults to "false" in the DTD, so it is only spelled out when // the run actually reached the error. out << (coversError ? "\n" : "\n"); @@ -217,6 +235,10 @@ bool TestSuiteWriter::writeTestCase(const std::vector& inputs, } out << "\n"; this->cases.insert(escapedInputs(inputs)); + if (pruned) { + this->prunedCases[escapedInputs(inputs)] = + std::filesystem::path(this->directory) / name; + } out.close(); return out.good(); } diff --git a/modules/frontend/test_suite/test_suite.hpp b/modules/frontend/test_suite/test_suite.hpp index 8adec3570..74a4d451d 100644 --- a/modules/frontend/test_suite/test_suite.hpp +++ b/modules/frontend/test_suite/test_suite.hpp @@ -29,6 +29,8 @@ #ifndef MODULES_FRONTEND_TEST_SUITE_TEST_SUITE_HPP_ #define MODULES_FRONTEND_TEST_SUITE_TEST_SUITE_HPP_ +#include +#include #include #include #include @@ -67,11 +69,24 @@ class TestSuiteWriter { bool writeMetadata(const TestSuiteMetadata& metadata); /** Writes testcase-.xml, numbering after the cases already in the - * directory (an earlier phase of the same run may have written some). */ - bool writeTestCase(const std::vector& inputs, bool coversError); + * directory (an earlier phase of the same run may have written some). + * + * `pruned` marks the case as a path a failed assumption ended (an XML + * comment, which TestCov ignores), so a later phase can evict it. */ + bool writeTestCase(const std::vector& inputs, bool coversError, + bool pruned = false); /** How many test cases the directory holds, written earlier or by this. */ size_t caseCount() const { return cases.size(); } + /** How many of them are assumption-pruned paths. */ + size_t prunedCount() const { return prunedCases.size(); } + /** Removes one assumption-pruned case to make room for a deeper one. + * + * The suite is written phase by phase under a cap. On xcsp/AllInterval the + * first KLEE phase found only pruned paths and filled the cap with them, and + * the deep paths of the next phase found no room: 95% coverage fell to 9%. + * False when there is no pruned case to remove. */ + bool evictPrunedCase(); /** Whether a test case with exactly these inputs is already there. */ bool hasTestCase(const std::vector& inputs) const; @@ -84,6 +99,8 @@ class TestSuiteWriter { unsigned counter; /** The inputs of every case in the directory, XML-escaped as written. */ std::set> cases; + /** The pruned cases among them, with the file each one lives in. */ + std::map, std::filesystem::path> prunedCases; }; } // namespace Map2Check diff --git a/tests/unit/frontend/KtestReaderTest.cpp b/tests/unit/frontend/KtestReaderTest.cpp index afc7bac46..1e2bde616 100644 --- a/tests/unit/frontend/KtestReaderTest.cpp +++ b/tests/unit/frontend/KtestReaderTest.cpp @@ -252,6 +252,63 @@ TEST(ReadKtestVectors, DropsVectorsWithNoObjects) { fs::remove_all(d); } +// A path a failed assumption pruned carries the marker object. The marker is +// not an input, and such paths come after every other one, so shallow pruned +// paths cannot crowd deep ones out of a capped suite. +TEST(ReadKtestFile, StripsThePrunedPathMarker) { + fs::path d = freshDir("marker"); + KtestBuilder() + .object("non_det_int", le32(5)) + .object("map2check_pruned", {0}) + .writeTo(d / "test000001.ktest"); + bool pruned = false; + auto objects = + Map2Check::readKtestFile((d / "test000001.ktest").string(), &pruned); + EXPECT_TRUE(pruned); + ASSERT_EQ(objects.size(), 1u); + EXPECT_EQ(objects[0].name, "non_det_int"); + fs::remove_all(d); +} + +TEST(ReadKtestVectors, PrunedPathsComeLast) { + fs::path d = freshDir("pruned"); + KtestBuilder() + .object("non_det_int", le32(1)) + .object("map2check_pruned", {0}) + .writeTo(d / "test000001.ktest"); + KtestBuilder().object("non_det_int", le32(2)).writeTo(d / "test000002.ktest"); + KtestBuilder() + .object("non_det_int", le32(3)) + .object("map2check_pruned", {0}) + .writeTo(d / "test000003.ktest"); + KtestBuilder().object("non_det_int", le32(4)).writeTo(d / "test000004.ktest"); + + auto all = Map2Check::readKtestVectors(d.string(), 100); + ASSERT_EQ(all.size(), 4u); + EXPECT_EQ(all[0], std::vector{"2"}); + EXPECT_EQ(all[1], std::vector{"4"}); + EXPECT_EQ(all[2], std::vector{"1"}); + EXPECT_EQ(all[3], std::vector{"3"}); + + auto capped = Map2Check::readKtestVectors(d.string(), 3); + ASSERT_EQ(capped.size(), 3u); + EXPECT_EQ(capped[2], std::vector{"1"}); + fs::remove_all(d); +} + +// Only pruned paths: they are the whole suite rather than none of it. +TEST(ReadKtestVectors, OnlyPrunedPathsStillMakeASuite) { + fs::path d = freshDir("onlypruned"); + KtestBuilder() + .object("non_det_int", le32(7)) + .object("map2check_pruned", {0}) + .writeTo(d / "test000001.ktest"); + auto vectors = Map2Check::readKtestVectors(d.string(), 100); + ASSERT_EQ(vectors.size(), 1u); + EXPECT_EQ(vectors[0], std::vector{"7"}); + fs::remove_all(d); +} + TEST(ReadKtestVectors, MissingDirectoryYieldsNothing) { EXPECT_TRUE(Map2Check::readKtestVectors("/nonexistent/klee-last", 10).empty()); } @@ -407,3 +464,20 @@ TEST(ReadNonDetLogAsObjects, StopsAtTheFirstUnsupportedRead) { EXPECT_EQ(objects[0].name, "non_det_int"); fs::remove_all(d); } + +TEST(ReadKtestVectors, FlagsThePrunedVectors) { + fs::path d = freshDir("prunedflags"); + KtestBuilder() + .object("non_det_int", le32(1)) + .object("map2check_pruned", {0}) + .writeTo(d / "test000001.ktest"); + KtestBuilder().object("non_det_int", le32(2)).writeTo(d / "test000002.ktest"); + std::vector pruned; + auto vectors = Map2Check::readKtestVectors(d.string(), 100, &pruned); + ASSERT_EQ(vectors.size(), 2u); + ASSERT_EQ(pruned.size(), 2u); + EXPECT_FALSE(pruned[0]); + EXPECT_TRUE(pruned[1]); + EXPECT_EQ(vectors[1], std::vector{"1"}); + fs::remove_all(d); +} diff --git a/tests/unit/frontend/TestSuiteTest.cpp b/tests/unit/frontend/TestSuiteTest.cpp index 9db106bd4..34e704ccc 100644 --- a/tests/unit/frontend/TestSuiteTest.cpp +++ b/tests/unit/frontend/TestSuiteTest.cpp @@ -307,3 +307,31 @@ TEST(TestSuiteWriter, RemoveTestCasesKeepsTheMetadata) { EXPECT_TRUE(fs::exists(d / "metadata.xml")); EXPECT_EQ(Map2Check::TestSuiteWriter(d.string()).caseCount(), 0u); } + +// A case from an assumption-pruned path is remembered as such across phases, +// and only such a case is evicted to make room for a deeper path. +TEST(TestSuiteWriter, EvictsOnlyPrunedCasesAcrossPhases) { + fs::path d = freshDir("tc_pruned"); + { + Map2Check::TestSuiteWriter first(d.string()); + ASSERT_TRUE(first.writeTestCase({"1"}, false)); + ASSERT_TRUE(first.writeTestCase({"2"}, false, true)); + EXPECT_EQ(first.prunedCount(), 1u); + } + Map2Check::TestSuiteWriter second(d.string()); + EXPECT_EQ(second.caseCount(), 2u); + EXPECT_EQ(second.prunedCount(), 1u); + EXPECT_TRUE(second.hasTestCase({"2"})); + + EXPECT_TRUE(second.evictPrunedCase()); + EXPECT_FALSE(fs::exists(d / "testcase-2.xml")); + EXPECT_TRUE(fs::exists(d / "testcase-1.xml")); + EXPECT_EQ(second.caseCount(), 1u); + EXPECT_FALSE(second.hasTestCase({"2"})); + EXPECT_FALSE(second.evictPrunedCase()); + + ASSERT_TRUE(second.writeTestCase({"3"}, false)); + EXPECT_TRUE(fs::exists(d / "testcase-3.xml")); + EXPECT_EQ(slurp(d / "testcase-3.xml").find("pruned"), std::string::npos); + fs::remove_all(d); +} From 53a43e821b41c8b81a3ec4218511c974d4750412 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 6 Oct 2026 00:32:33 -0400 Subject: [PATCH 71/88] docs(tacas): assume-pruned paths fix and its rerun Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/Map2Check-Propriedades-e-CWEs.pdf | Bin 0 -> 319619 bytes docs/Map2Check-Propriedades-e-CWEs.tex | 578 +++++++ docs/Map2Check-WASM-Transformacao-Formal.pdf | Bin 0 -> 572196 bytes docs/Map2Check-WASM-Transformacao-Formal.tex | 1383 +++++++++++++++++ docs/Map2Check-WASM-Transformacao-Formal.zip | Bin 0 -> 919120 bytes docs/backlog.md | 4 +- docs/prompts/build_prompts_json.py | 59 + docs/prompts/deepseek-property-prompts.md | 454 ++++++ docs/prompts/prompts.json | 148 ++ docs/reports/2026-09-04-estado-e-handoff.md | 300 ++++ .../2026-09-04-wasm-transformacao-formal.md | 485 ++++++ docs/reports/tacas-experiment-log.md | 30 + 12 files changed, 3439 insertions(+), 2 deletions(-) create mode 100644 docs/Map2Check-Propriedades-e-CWEs.pdf create mode 100644 docs/Map2Check-Propriedades-e-CWEs.tex create mode 100644 docs/Map2Check-WASM-Transformacao-Formal.pdf create mode 100644 docs/Map2Check-WASM-Transformacao-Formal.tex create mode 100644 docs/Map2Check-WASM-Transformacao-Formal.zip create mode 100644 docs/prompts/build_prompts_json.py create mode 100644 docs/prompts/deepseek-property-prompts.md create mode 100644 docs/prompts/prompts.json create mode 100644 docs/reports/2026-09-04-estado-e-handoff.md create mode 100644 docs/reports/2026-09-04-wasm-transformacao-formal.md diff --git a/docs/Map2Check-Propriedades-e-CWEs.pdf b/docs/Map2Check-Propriedades-e-CWEs.pdf new file mode 100644 index 0000000000000000000000000000000000000000..5716e384fee9c1ca9cc0b6bb4d029e5152d5b46f GIT binary patch literal 319619 zcma&tQ+Fo7wg&1r`C{8i$NXZmW81cE+qRvKZQD*dwrzEE);{BmbFw5KYETLVN{w_)QhJ`JckT$v`5?qwXY%&W`xHkE!Wa8)BpSQuculHig zInPw&Ol49JC%;q$24}@_(IlXGv(#+%k*!yy`_tLzGM?C?d$#_Zzu$w-d`Ln!DifG` z*<_AWo=M51G$~p7rin^fEFL?~BhhHQsaIEEbO(39!JI)CJ>UMeJz{Eyk-x_i&OjJxZ9Kbi0C5Esb%h zdGS5ss2r&{DZMO1t8I}j=^qI_g#s*qBuy%s+ArY<9VO)Dpn^lgr;`*`d=w3J`F&Q5 zJc@Z+P9mAnFU#{CD|iV>q+kI4;d1-41Z`$-eo-$K|0o{$s@?-n$=_PMX*RoG?lgsC z^c)tqwNuk5VNB?WP(BB|?l*Qq{}UCK0i0yEe191aZkf z7HLf@p>;Th5Tz^i?t<+TUP!Tx2gOo*y>bb1b9)6DVgNqNoeS;!EfVMEk+s$`3Tj2= z^?x(s2blHun~Z_#G$;xjQNw6)-x*NT_0MOSmK6$=kV^!!AAp?7#f4TV0G15$mf~gZ zcSOFd4y(vEI21_mIg$661+F^2oy{}i*Gja@0~`ol2A&c_6YIttx(YWn65pHMuS`t- zrl?~nwQ$~#Ch;nY;x;cmH=`e+iM|ANIQIQv^lr>V(8JG(a>mNbn!X8+I(g_Y6 zEb=eNM@YA`*W?jd54%A2E1Np&et{m}e+mF}U>$7O&Bzn&zDmRN2VY^U@uw5#86j)f zUIny}l_Qnkba5!r07j_t6kic-*yqV^u8$3>XGl&~r>knR}>*2KnK|qu3NsSry zY5!pL(%DI2d^f6xuLqHSX7G?fg=oSn%(7TF62>D+`n{m%g%%u-SRL1x&l3XZ9zWx~ zRrx%=1e7}_lDlxgxwTo&Tuq>Tul)ea)%p_zeq?w4Q5cW zhu3i@0`eF#fD{f2p2QrfR3XI)mmzyi<M3>Xg#l-j9dxW8VV-oftVuAt?%c$cP=ldNs~*Gtju!&IrrP zdV^B~Q%-g0yuxc`|B3}eL8PG3+UKOwdFL&ed1;~>C-G5Rn7#QFe^ zy@lf)57}8?I#^%nOElco>2S6}LST#fcFXNszO7U}?yfk#hgvjnY3&0l`AvZ#CDAym zv$sY$z3Xoqoj&X#_%ZgC*ZB%x2mTrE*3@d>zIU|7a|Qy_9;g2nbVbIn{waf?f+Ebq zCP|p^b}U)a@7bOH5VSWHIrXpCkimtD@Z_&E7`)LT@J?poumvPGO~2L7PMtznfP+PJR7e z2H)IPzO40%8cSFhm68{oaQ6PP4G&?mNO&SUJOepSj7VQULO^@wbG=VqZ#Orm7Z9X* z@QVb=+O7FW{E34SKe72W}o+scR0~yhvT_y;yH&a zbJ9gRIm=D=vm*dN2n}$4`>gBQmBVzW%$LXBx}IBm)D6S}uuD%RfAoE7LRt6C_{fvr zUq!EL&YBQ+3&LV!HEkyUk0|)J`M#y?B^L8aYBkGZIewuc9_zq z>0Lq3l}mH_Zu{K0Zn9knjl+CL;#OSmdf!6nB>7pe?JV37b47QY!ZDZW|JBq#dvRG` zRxPi(VpaWJh-crkp5w^wx{5d?EX5d=#5^KX9%{9mmbhI!)WLZtIz4*ovXbtcK<2RL zv$^OXI8a{2y~OB%=5RA&B=6scuQ*;{j{|lkykS2gFXV$lxzs6^5}4vy2Jp!DPHk&u zI})(lo(4Y&5bfj>WH6fDY;zvXc-)U-%Bhq=xo#Ar@J5P^g>lvL`laesAY6z!`eF63(7~npSp|Yy_>wJ2mj=+d_pU-2lwLs zqOA14$kWY(OpxTnOSX>uJtSv4D12Ze@oa|Z6A9({+;*cP$&;eX)?ij6rO=y8GJOpO zCCDC){fcT?=QAkMIYHz@vP8g!^SM^E9;t`q`b3IavL>BxjTc`~W( zUWUFx4`JM(4qzHM%6RL|jrue$&a!{wJZs68v+JXEp{9)=?ofoYZJ8XRg?zm@ zEGmk?K@O&=U*Dp>cZiaC{l<9p4;6fO#)#}0E|1kjgVjyR2zbFgf1n45ESd= zsG~*p3xzR^wyT%<1vWO%G4_EeE^j_4_#Swe-d@L#&1$HwvkTi5A z;Kxob(z+FS5LFxOu&##_1+5xfvK{JK-ZK3svJjQGV)pEAtuG>BN`CZW9~pvr+%Zto z7OEs{u?Yee9z%8H*~+)AIo*^TE`*w(@I@NfNVLD1wC?C!P#p*J#v=V?Dw>riXusOg zpK~^|M#Lzk0*k?*{<<|5yT(?(NO%Cw<-CN!ESO+sbwK+_?WQaY@(h1Rgl8gcZNnxh_lcL#&ZI(^<}lw=rU&MdC5@c-bOqrWAq9jOy^c6 z$dWOVkFe+yi5?mvz;!j5h|evBxSG^JPWlE7+v}B=IDq&jH<`^At~s$or2s3AhzO;} zG7jOe!C&T@p-*8;{0!7~SwGy8dl~@B@CwxbCdrQAd}V+OUhB}(+1}34|NQoF{i+*b zPvy4{-bfl#umUm$DlI8^-+|}7+Y|5o9(izkUkSzlGh&FFr|g> zxZS$IKnIT)m58NBGM6oySy_kZdaX@a)Wq#&{mSeV2?3c?^8< zu~@){z_rMT&&?eD?l0djr`pope_A??A{SK4vr=!iO!Z4OCKCEU{}hn9 zjWHY9mupuzO{SB;iqLXKF}A7Y`&#xma*dU_WzXuWX8g0+)KA|KR^S8&VGb>|;v5>E zX{e=sVI3?iMNMKrM6^Eod~tJhHg`pNn_#iKGc7#duv{Zo(BHW^S)RZP5IVg_srP(8 zadLc=KraV?<#y&151Jl9&f~_#+*wHSF{tX{m%MHfk7-jesy3+2sHuWq6Fh~4ySfJ2 zy}bQ9`P?3GW$+{}HFm0Q9vT&0_dxto31FE4( z@?(C9Fz!ZZQ1Ei=p>gd3Za5C%LlIE{yTit-3lw_mu%Ob)IKwg z@KQgogzL~IPm}FX(RN0!P&pc->pcIKp95oU-Of^cvmNo8os6f3dZsUUu8-2=44PiT z8q))DMyyaaRISye(4z*`=334(`0^sRy($kcsrDTrV^2oRgw*?F5@?1S=JH0X`tLra znbyHkOfqN)y0+ZB8a-AvdZRmJ@6C21a5oyC6$a>6>9{_KdI+K|+oh-3-Zv42-H&_# z4!8b8?V>Hu@0UET9oDd_Q~>40D9dRL#)bTHF>*JjQ*$ z7`?%G&n+ci%Bmak?0brH9{PE?)$j-qwafTeeh2&;5BsWFq(4P+<^qRJ$V5NT%ptFs z|67;LOu+xbOHTIxa|fp8|L5g=uVM>I7^kF1TdSJmkqkv^azkoKYf=Te>;O9lDs{3- z-23w;LIAKLA<29Si6)5?Hf7&2mL}@7? z{wL$djWwHSn@Ew92Y(^Fi9C{%ptPzu-an)ma{7xM7O;AMmaW@?3z&#R$KOdWt}5P* z7oPKf{LG}_E#3KrQ)QSWhu$fU4upCsK^ysKPz$7rSAa@90gyiy+j zo#k^t8blNh$$Jv0Y3kZ45q8Unv+$47tkeKHBi1_uBjs-X^4i7AjV(JzZ`Q1zdZi#< z-<+~eAQXr%Po6B4X3pkUlSDU0`APMi*KywTjuY4GqOYH9+M2PIGP;M#VYa)c)xR2| zR8(q1^l9YA#S3dK5=<38Y1s>o2t2Dn&h`W6kx@2ck*@h z@N_j3PHC`bf1~Kbc0AMg=B5Ghcz!&!?&HLjJ=nnLFcKHm|^QTI-?r#dw0+ehHcUq@)S$AN95v3o*8FrHBu<~=Jf?(84)`L}Tc2{q)$Omu%f z|8W$ANJO>~Wh%frxGu_l;sLXw#X4>Cg5z}1(Z>585cJU?5fK|3{V)isoKyG67!$IE z>!!nKhy~7ABCT2aQ(Nt{tkUmZ-lT2FK*F#j{rjeEc?kfvLpwHh+Cjl%)o-cifJXQ-dta5 zz(!R3w)_lmjNdwP$2RA1gQocNOL%V5S7^HU!>%7AC$4pY-xtrEkXoifg3clx3e?hR z@9m4T3ZohcMt#-w|yGO90c22{8$^*&As+0ZJ2G$iXj`Oj7k1oPfbgRxOxja7an)dLr7S zNn_aJNXm2kgly{-n@)Z_mqCbY8tWq1pM{PFS+%lmLTQ7FS+%bem;(qD8Q;+6HP(vG z%Kx0C=b;JLB;Qvxg%&!}dj)#=&p{zQ4~JwrAqvHM7yK3{b8~74t9}&IgR^b>q%B>C z;r;*!Vu+MfXhURPJaUa7y_!m1bI)k$OaHX3&IJTS4hstL(v~!D8RMEk5?N4^0vkc; zCSRtZx&j8-LWZvcVXw1Ayyy>%fb+xl!{5G{`arn@4SvaEnC^h+58TfB{l05QTXHmM zLZeaWXz1es@Kmg}l=7}O0%UU@V;4b`l$@XH4aax=U`}yiEki9{$#d%FfZ?evSKE7L z-|venjJ>+Z5-=;`>PSLe@Z4`ZYvQhn*lE4)9Nqo3KKU|pw?NUWx0b@jS}_P|8HS#LH9(tffl#&z>GyO#iQ zp0l})N;GtXG%Nra{AUUnnLW!eUBY}pfZ%IPiL}LHnbW`GKIu?V0tS2x(AzWyrib05%kd z6P1qpmQLsJdXA8y5M}q?&a}HVrOgY<-ck2RE^j9r$xNuwpWXAO;ZS7w$N9E<9IGs^ zKm{oh;f_bqN8E0-L6H}%HZZm0H^Q(jg?5rOMTE zd|(e&6*h8h2||4yHnMnok2|utr~rSq+sSCWBAPCgDk4zTkpL>4vuk3^pwt!WZZP%x z3tk)y`EhAjycQc}aBM6bDpe^FW_G5M%740H-q-p)O(}E$-Q!!)bj7oQ>9iM-!cu<< zdOSC0rVQ(L$EYusFR1{!`-_~2TO)0Vqt|->&+h;?p5?4_Kdo&WV)FTH%Hx^}f|iU? zT`R2LcK@hl>uSx?okKX_8_)|vNpS6)!lP~%)&oA@-;bXTj#k%I^}#K{n18QX6|17T zdP#UCoa#v%X(hs3eOB-rr;)lF6JPaV8~U4S;VotP!mnWQfZhI<_mn@$=Q)$V050fgi0-6Tu zyc;`hYu8!C{~&2mqu#XwXi1wH7uv&nZpXB2ehwe8SBG}2oNc?HOwG3Xa^szBaj6GW z?RmOInidG~hp#>dC{s<#jE`Y^ZxCpT!r)KM%E~JZeyV@IOwg_k#oc4j0?!yor(2MQbt#@WBqsP$ff_nexFXm5^k;RYJq*=DF%I5Kb@r#nieJSXs$`_rF{$U$N zWN14Qw{`3;nMruQ2?P^VN*41~xr_)cx3i}J_@ z_y#mZul^r*=M^ckmc82Rvw8>811N<1ugJDGASQM6q1W?2 zMV4HcC8;HT2zZF+#Qzt9Gc)}cf&*EZ|L+~%DW^?N%?P{_oE#t8nROB)f!zB3x-b7>y3ib<&5 zR)Jd+g8-dDK$$SgFy#;353e@eTyHMQ8c*E#qaK*FSW!3k$D2Gp#@+QC)u>GA!mFJb zhT}l}9{i5_!q@t)dBfPQK)mUo@*j~zOCZCdVj-AH1o|F8eB_uijY%P{2u$8AWR%%U zKoPJghGn|*H(3+49D=^Gksj`CL@A7Y`*TCaEJr%*W@_&8L3!FEZy-id31UQwz>=7g zuW+E3S=j)E+$l)&$`)snz)-7`^o2)zx}gb{c*tnF$?=oHRB8z9deD++4h z2wen-AS&%NATn&wCV?uE=E+OC)3Y6*Q#t5VqwD94_`+I< zx*lVaV{A5S&LlhTknHWdSL<}4mQtgu*FiMQvmN7r@5R~WdMqFq`*%U zM{Qo5Q%KGg+){A)<@v*&1T{{#<~4zTQ;@mq<`p3=@-WwjOy9FOqp_wsb^|C7VT(76 z>I%68?Y3(8_NgXJfW*cJO|$i;*HNkKe9eQ=kEEf~D&sB(Mx-UN#&lbly-j&l%X~rD z`*Y9NQT0u8t!*Pl!mNxN34t7NpN2tvwyelJ>9oz-;{DnIvD4X_E=1NwQ`oXPBXOb5 zejd`)q1zd@R?`0~LaMz+x#bF#~`DKsn5C3V&4pV3Jch6WQPD7vC)Fu|jd? zVvWH^s(=6bIDcmBVP&fW{a2 zie&YDH)HPed}W78cA7xiq@i-E;FefY&>5Hl(6~_&faDYZO!?g##M)Um)w)Z?x+0~f zVgbb!WL+DL`uu)A`hJ?)yAZ4ar{e|zlt~n4s_!c7-t-PVuJYjKP<1P1wEQi%Wk0K~ ze``lz2z3JmEn57)uIPzb280Ar^3~3pG&niLd1W1wV6h+-EQu3*p7jGsP=BHH1(0zi zqUx^KwaiIlfxdVRi&Aig9S9^Kto$`O8GFad#n{MsZ6nf87hvxk&}T?uC@9%TBnX=+ z8CHobw887?1aGZzYkyh&7|DTwKYiIhcx6Y|(p{s)f+-@R1c}fv0&#>0;B0+@>-La# zqOPxT+ny9xuG8*em~FG|u$tZM)C0xKo`GCOlZGLg00<)6=?39M5F9mupb=v??+yLt z1Lq?vml?pxc(>3us&i1nEY=>EQ(D+r$UR*4o5zHz*uz#zl_jEb^Kmb`nVJH1SI`lq z**5F+3cOM|K#v0iLy}G8H~@bo$&-|n%aAL}t)(dcr#*~>QcQi)fPKT{3yKoLC5QS# zT5^iUwT~`1qCA?6CRlLhrn@K)4$6QAms8GZcFr8PNoh-{{_Gwt+%SJbUK+qLOQEhPxE~?dcX|T&5a90kn>F^g9LyMZ6+(8yTVWU?e@vvm` zV7=MCNy~WCyAZ&1+w}Tq^0$;iLq6~B>$QRe}7NVj;B7v)9lFercLbWrJhaD&Xtx>*Zkg~!KzE* zO>WL@j}yYM7RV()19M`-g*5UDe?Srh^}1P zq^%BlB;!U%SiU6f#f3|=CpCRFo@y2fkKM*dx)yc)rMy{S0k}3P9r><5YXq1d?BZ^x z*b{OJlIR1h{A<_GGY@^Mb@l}$C17voge*>#!+->k^7cS-8~FjSubvsTf}nfuJVy6ILny&iE}nbt=X9w_?Eg$_Okw!h`Pp3u`m)TAsQt?XQ3qAu*#HT=>=I@j}lEJX6o{nIJ8kw2U@z6JqxO>UpxFx zdBh7AzF=Z^uD^Ub+WZIKB}Sx>nLE4jeo>_f$Do!P#U(Es`?wI~o?~!%Nthdx7VnOt zNm;rCM=*)g{nNm#0!oi@W?gz}bwpQqUz|-b>kuc=;@{shrW3uyF~0ik4%Ktu?qBQi z%25%{q63jzuqw>X_`-*Amt{r-1@7N4~y=uRnT`Wy@1qLKo-8;jw zX|nwIzg?WTzaE}#{=KYSV250;q%LAllvGur4|Q@ARS*)P;G;?9MBUb0$f%AYfrtE&y_ zLC|xro_(vo>CvgNd-DVpJ^L5#77d*R5iD(#y4Nl6hx3GV(X{N5d96<_*9VzhH`dHJuGk1*?+DmD@mi=d;0>eKWOc2Y zo2>3F#821UZ$gn9{1)NaCZ2ru?JF#adbp^tH~+ZUs^uOG0D$R*>O^6@R;0EZ-W0fl zlX1{&-DE4UY!lNz{NF7SS&ym$|dwtNQAc z-4!?^jZ0H@69gTc!SJHU)l@nV%;9o(vpFQ1myfG8yjL-%ipE4qj;Z7YPhO`MHOu7F0i}Uu>k%J~k z#c61ZRKD9-DVIJ=(Gh=;=?r!RmTvUhviUx~eC4nIG`35X2F9xdpXFGM1FBB< z457OSR18{LH!ALqP~^Eh+jvOw&{FiFGh=bChyAYq_xtV-*EcIcfAQ_cdY#)nweI)N)u&$`!-olTK+>>6UM{lw z&N@#@R#og)L2|4&nLFoAvNj1_@mA=GJ9#+`HysbMNHGn0NEJ9c%!BNor8Bvo{bb?v z7IO{f>pblijWuiCT&&~+X8K#qktP4jlkkx^DE=M~DtEe*@bA>s4^fE%@4A->7l+f# z+Qt2c3`Ddvzb22k7&5rvou!dIniXZWIYOvceW(XT=%S4VFjE+ZMjg#Y>k1O^d8~fS z@A0SsQ~D92>JPzZtWe0)OhlM&Lo#^CKVglUv(IHO?*^f-1qUf49;f^n_D!9*M~vEx z{OM}M>Nj5P!@M<1ILl!N&!ziJyQ%4N?y*Py7(7soCK6B3PGc(U3Gq-vs#HU=9nYW0 z4y{%Lv-n>o?n!;g7+_l-z(CA1@=X3?M8cw&yGjv%L2YZNT(BOEt_m z<7c-h{3UGXR&VDiaqKrbFj(tp0y5DyxTcV}3?t^UL6n&(W|!7~e*t}WYlBES;VwpY zn0gz*Se$g@IB4XX(seGX*YZ6$0)vvg+BJw&`vIZzw~eu;(8Hw>!MUp5igT@uS#PCT zv~O}uQ|7;Sp>A4tJd8H&Z96(eHoKZgq^3)T~n!nLnr)oa? zl89ThSHTs&!*UMOLS1yM9FDU2L7mCF7{@?c7f%{;mA^R|8B?`Amk{j1V$ci2IDb;p zH@Vh|nL)=-*4)~-0_j_?|CPzOFLDM-Eh6xT9Xlw%_XqCrC#i$bx~d(mOmOF~2fu;- z4PmHS)pLZN-w0*{(X%*adH|=qF}D&QsUfOdxm4;3%tSzbYkBO;tC4xka*>IVg;z2^ zsIZoqVl7C>bcg9=-m8XDd)6fZ9W&)eNCRDK?H=anB#uiSE$}1@79pyWh!I>(qZ06y z_lqj%lXdv0DJ>RzJcvz}WQ-+lLy!sO{7#$w%g&_pfSnkOSmAy2Zp}KZ3Aq!Jv_HQ_ z;kucpl9}+l6n_{x0Fz|%0RU@&N_SZ1oI5d)KafeAf&CFX>%RsW)`8*R1v_=4`>bC+ zwolbI?}BDI#NffmVhSSlzdpM=czE(~5-sR!!7{78Tl2Ov%F$4}R+G3Tsh!S>Bm`rk znGp=~-n2IVEm(Ry`KKMEsHUco5P9()%0B?dUxTr+8Bt+hidd(2sf_Os#9UPn{If+~6C+e5uH~wMRR3s@ofVViia|_A6vSI5h@hxC zrn)S=fsI8R0LMQiR3yDjQetVi#BxiYFcOSz1j+&a4`SeC%PyE!B^}+_Yh~7AJA~6n zeN9;l85q?Fzy0JidSvF*f=P0586B*}i+l_QtiXY9qzy9cuteg^!QM;fM)+)_UdhKX z_s<1lUs=3YLu);OI@0bv0y10zZX1>zLY$XFoFlri0d-A!e`Pi!Hlytyh`ZdQ^)QMZ z)M_tUB}yd#9q3B8Wr)5ltQJ}OP%8=|Q&L!<;c7xJG2w4gDC4%*h#7T6OKUdZGw!$G zR!FAMl<$pB^$g@eS@((DzMsrUJqK7>rZGpru&-#K1gi8^Ak}L97U@&#-2B7LBOsm# zn5{Tp*UJHQ(Tdn!Z)wbPr9B!niGo5Z$K;pjtNeb|q%@RZNV0bp`6FhG5b!H$VY4|a zRko8nRCqztFdX)=NINX!9^&m6otg18nE#aBH2gW29p4G4r-FRia8CCpUuBhfwqIB% z6?m|uK)=*XIyM#C$yh3$w@L3bIpRl$jj=#ZIL^d3;N;KH+}_Ku31lqAotEy!y8RG0 z3Xb!z+hRp7gdxeaap5O1INFvg97XOaU2#pzM=MXqiYhlpAZ5`e8#$C~2z#IpF^vM! zu4k-0>5J@e)EEsuCqghE+!aEmDkyRM zBpUHX3(!trmiPKYwo;WA2w!Z0Es0Gw5tn#G8@s%97S5XVt`r9%T7K!Jw3XQ(w{=vc zaq2AKPp8axyM)=QhAd*+98gW^1LQPuc!?k77S${{d_%$qh8K9SG!ze)N&k%_$BNRwWY!ehKKvV0T zrUZIICh!R{av;lr0I%wPH|h-rpw#O{q!CEYr==*51mIRCrWlZ4#TUQVT?|9(QCDyPY*B%n%`nYChw;g*9#LDXLV#??uU?`-O>dq ziNE!Ta(^PRAbq^M`Xfx89PQQr!ZBc@<_z3g-S3~Zk#*1b3%9+eQyDrXQa}LGxV{R6{uHX4%dmJ%5Ef`vZo7UZo%1vb=~J)S-4fvq-4NP1ZLXXr3K3nE=kj@el;dlvVzz_KgC7`Iy4&@VkQw;;gXk>)EkDzlVr$5w3v3kOzL(|6i zi}$w*Mf5ejqt2z*nacON6x=i!L%`!K$kdPD&tqQhtZ`&uRd4kdd-#wp^PF*>!A18l z6Mph^1G2K96eh&!G+ZyxNdQ|@`ILuu@;@lQnra0gQr0IU?DhI8m(Vp|6K%gD&R)0l zq?z9+k+nOxyV>dTxW#wj58qDh|Gj3wJEec#;9XYGQ{9LRL@9Ks{Ma|VMs$qYRRotV z+T;3AOMGFiO8f~|H6zI*$Im+#2zpy4-6s}GDAB9M68o*owTvZ`P}qE-Dz_e(eYgr? zz^6*6@hc2F;el$FZQ7q8j7T( zE*1w(xwYGAefmoZQ2*Y?QLv^haLQa@m*RN;g~+HB1_L+IHC?5kW$_A8^KL|{K>Sy? zKE(C7Ed=ab7&KZYVw$!l%aNe2@NIGX&Vh+Af?Np4be9MzWG@042`UbJSbnOPF&i&D zOb%STr|ydwa-Gs)(+!CMRU$=+KNceVF>BZ2clf6<>B*@lhs1rdq*z9>yYf#pR3AZH z3hev#y~$sL7&3}8qyVx|*o?=T&!tyl3(xX@Kcx3mT^#~3ETqUEC`?1>04i9zRe&Vl z^p3S@SG=}%Qnu5u(Uha9Rmpn$(65w<`xuB_JM)2tPZC$iIaJY?q3L9LFpxCl6hOd` zvH9pgvFA7&n9#Wl3`XyYQANa4x~uBRae>t~9Zulq;n}Kf`BvSaazTwn;YkSFb&j!Z z3;Mp@9|qvGZk>bKMm*ic=qPq+0~g{>^j|*TF;KTb2SYt-Zyq0P?yt5NYy72pQhV#Z zxh6|@t|)UfzZMHX2b{S5znwbv=adgNTm~zDXdR80!k(sERZr9S`COV$(w9( zBKZ63T1REeC{1XFq|h!er?fAHBb>(Z?z~UzdW}G9Qw>88ebWjk#U4WYf%A|0(xv5s zpNG4?QlKJs#|=ZAd^zSnw?l$h4CVQRrd+ibhk|y-#UdlX4Ll}u<&%E!mv2^x>%jN? zUtVW@exYECeOqtgHmjOJe#&17xaL;G$CD=-BHDKK2k)Cop{5t3(?GhinRvN(C~tF% z0p_>7yT*%+k>cKJkc8$5X~BzqiCZ}X99Ed~C6VCV261fst61xdVVGnS7EX{lQcg%L z0b7y-MjTf{{yFi>Y;B1g4O9&08D0^D zZn%GjTCAn2^k}cyb^T8bC`@p#QWx~o#FvJ*)_!E}?0}o`s&{7vFaRo~1{@ZgF1)a| zraKv2R}~TU{U)}jmQn%c6BeE%kIS#BkpcQTwE7BA<4ukC=hIUev4&brhWv04O7V@I z#c(qOS3z5|j+WrA*5~H&5rxB#rHMnF%10v@ICX-!TYCEk`Mm*x#h70?sWhUrm%nJa zDPPK-J<}7`&H>XY7ov^e|T`u>FLmEtQcpAfF1+&o6)=lyCEheit) z@<$7yHtHgLcDav5W>{EMJB^>YaD6Ni+1X{q4$t?xk)mqD6Z721zu;)C5Yp|~S zMx}P}wUv4@H+V>LG<-j7(ZehPV`BOB4}#C^^Mf2#LZg)G%fLKeJM`18gRnpRBy_HR zY_MmOm}HT@i?j8g;+eyF=6_y;LC)Kj*-I0L5yehbJ}qEX)1#RQf@qNr5|g1d?XlHj z#@=?90&>1vjUH4+$}kBg{_r0vC;dF&Ki8O%W-uaP1zRDy2L)h;>6u*Z1QKeK;?Qy~@jg-P5W9D*u#rE38z?l)?v3xaJU3sFJx(<=BXFzj`})y?x*J zkJsxc(-RK)rwI>q?KaXv8-2AD#)L`12%#aFCI^2o1o6;lE?y@8j?S~i6gt^yy*8h` z9;0^q>6pT>g>&su8#iM2w5pl0LNt|0uji>!Gzq>aT_}B zJ1L%_h+aQ3`iLsaN4MClNt65%i;V-S6*^SL5J3%-VVTTrwRv^&ahB5y%WOO`4C?-{ z@IV3$xSt_edjG<|rYPM`}!BAS(2lf@VHw-KWT zom<~X(DYvx;K%jR>SeMzmeTA2Q=A5CS8qNw>IGF+1t;P!)uzjpD+-TvoAqqyCSFtS zw^Nr{E~H*$%>85-{1J@4JBee{Fqpo`ZEU;dHL7 zGmDv|gv_DK1$i!IcTFP|gTof+00GHb&w$(Zuyuhfn=b0Tcyv+?71u_ZGIK^v?6EnO z)F1){SDO_G1g`rkx45YmR#nyZk#@$(;hNdXKU-C@S*0!a{%U}Ww+m7uo*4Vj_N^Q# zT=HMDlF*qGQ4isGa$NbA*hBz)fpQW>Tt5qJY5OKd(WFJ21(cwo=Ftr2fnd`_4ElJB z@Uhr0FGs(3OXik&So8WTEdTCJ%3^PGAgf-eHPDhfg+>!ZqS9W?ArrV@!N zGw&T!nOrf_u0x^hd#Hov-l2QBs#2NjOQ^I~xpX~eY=shN?1ZD$09_<+3D!Lvq37Ht z9hweW>Q-s?@-@b#;rDBAgZ_2pOmgf>pNHur>WWFo7(+LHMLF(D)9FmfZASXp(rm*I zj^=lE2QjY)TLZ1=yoy=gmdIX}kgW!YN7imSfjrA(lK4GgT2)cUWdLjZ;)hEz>_e2tTsBsSX9<_FF&U@{LI zZp2)%M8v=;cVJN`-wKo59hpVNfE~L{1OIHb+?hne!4Y<#bzFX5+g8te^DGz8f~!m| zJmVEphk0thOFwAy%x$)33XJ2~l(QJ)M9Pfv(h*jG*m~MJe-5Q>tyr24Qx95rAhGNd zG-!}_&D{Ex9X^QAVSfSDL(tb8xbS5Sl-HsV*!I!@o36v?)YK)lY;0I+^?De1kibzI zFH@V_nhanCInwtSuKAIc(PfM0vd9}!Z9B&&*VK2@XLpKdksTMev4(=VVm4K zdFFQ0)PZQ@od*79)8!B?|M{8VaYuuMHhJ~$Said$_JONN$%<49n-@df7f_-*DZFx# z)84(<48;$#z-6iy4(S8syx*)yl4;d@vX^3AcJu#Gut?B4=g6hmvyHgQ{?&R!>4{k8 zKdtB)N`;sd-1%BglSsx8AK_4Cy7Lc%rj@AL0$(X#8U6cUw}(`fR!WIY01f;H z{0s-R@{{`y`?PJS{lg#gqu#Qn-!Hr0b|6&Y&`a@08>4Oh;2YAILKd$cIIGy{c)TQU zKDgp%?4=bHfn6pMi|2h{TfY_xq2!yRKFy?v+`3{}q9z|nq3ehw{W+Yee?v%~oXWSE z%_&CE?~`}P+}Z$J$WS2jV;h^`p2=9^(WXO8Uv{S;+ouN`8tk2u1vGAFbTn>;hUG`f zG|TE!J16|S-1(RZN`v!#ZdF<*Dx3Mu2fCdb&nK2QCn{``CvOqz{j{<+yd4kx4YQ*4 zDLA9|Y8lF8`D^Cm(P`M&E0kNBvL}n!-O@K^U>5!##?CQF6Cg;_U)#2A+qP{?+qT`) zw%t8#YudJL+qS!J_F^~gB6cJ0{!|q5XH`XJ)st^hV=wC9<);l?s2%Ssk!FwvH-4+^d@eF`+#i1;3G zWus6$6alR!`T@#gWUaFFP!Z_sCD@R!s0Uo)TW`__@b6{cq43O54Lg)J5DD>V(-jwm zTnrL+l~kocSJc&?NfS$2p?``Mh5%aLKP*Gegq62(hY90^2V2dx#)IBh2(599+W=lC zYKw`htFJB?Qh}?cusY3Zn}uX-v3WB{{Rx@4dT#o|v^+^2DNfUzAGhrWAGI&!IQ9O# zi+owo%CbLXN!xykDy4{XAL6b#F4-f#DEjEA$oq;fCCR3k*^8^ZNty~Aj2y$*9P&ZU z1P&fk(0yI*?)~BE`1CP!6IH20@#?k@D99lRJ5thqZc{beD)K>Z_ zhwYt$A4SXOD`;16Yt}%tz;5hwVhtmc8Wt4t3@LKk0z+W420Kz~pPo7oV3cO6jN-r2 zH$<(RY*hddb@7r)wx7R43Lyo+uMU-KF3vS&yDMbfR7JQ&?V1ygte&d?*lM62P z!Y+X%_l1#CVJoBKkw`Tv-Uni3rj73JqH^<#qeGPLnh;v69A1bd5}Gke$0dO3BPp?^ zFUg1oYA}w)A(Hjd5OZl(cKlhzg+_~iG%5OLvC6FuqOpT+nf3e(r9w@bz$=bP&dyfn znexrr!VoLVkh&yJE-zdndV&7(0wJbEED}FUvPnQk34$`uFJ_vmD2R{#n@v3>gu47ffl#Ib*HRDhCFgR=~l7YsbMR~7Qh~M8w#e>m0chBJfMrd6kf@ z*`dzKWrQy4+tSOu?1zqy{p&!Nw_S=|Q7ObY{NwG}0O?biz-yUSN{eqDgB!_&)yhIi<@b@i0LNw?HJ8g&%sDp2tJ;u$9f0yoNcN?$&OCG`v0ukmP zoBfNs-m(P zNh&gVAj@2h>43O#!w)=+$h7i?n6#8d1t~r9fSPp)Yg^%Qs)l{<7ji3txra1&VwsTV zM^8?F$z6NxMM*TeDES%3oopC;iW~U)7z1&1@les<#bff%H-luOZ9NG(-2{Na8K@rX zJmw-McU~mPo4jT90ig~eNFE_!3HYsZ&3bMxh5ARfftLAbydc;1kPQTrZyarLF=1ca zPang+O3mDiR}mGYKBEU(qxsq@o3}M%EU@vruOAs#&)3F;8K=gWr`0_CVYM~xzOZWX znXhQU{}SP>q)~Mjef_W=_@xOr5R3sL7jxzmu9=BP4yb=YEs-yl5T_fQExDiet^0SXS^l9RzgdV0Le|Pa_2n}Ep2Ip*%xGQhtp@f1K>y-2k zA%&#pF7b_YpE}Mb)!Bk&1r3qzj)7{SxM z@1oxH^dOTN?7R8yuDow3|47noZKCFu_6c9NMx_b1E#keh75BLE7x2yPdAq$nC{OLv z^1kW+HC?Br*fHU6y^wGaxDo&&HTb&JGdx7S>24`$42aZc{Y@I`0Q zaWtZEl|asLJmmH{i|>FUYn-%A)CzNH8$Or0JM79#&b}Fvw*!iS@?n-~(En8mwH>5` zE9PL@5Fz8xq33>qV(QJ+=bZ~;dQhD<^fdMZv@xOcKXKEntp7dsWMyOg|NgT`(a~|= zU`O_w`4@Y-#txBPn|M94WgN!JWKvCraF}*lA?-Esh?fO?dELHSBBZ} zl{(&@`1E1I@QbVNqag4vE;Ua#azQEQn8nymUTSFc&=mv@6B7yX{@k4BF{D;v{L)8E z=gCa?(j``no?Ont@c-nar|1AaGj#bp)T1wI_cdogKnk5i zNfd^YpoA%9$k8v{7@i9)nJ9wn5xF&Qgg>0Hs$w7TuC|PdW=E@eA*VjQS1|OF4o-j- zcN+n!^-w%K?=s2}D>41u#gd&H&1W0}wFO~lQIrV^D$cjTrZLNc!Lh?Lk@HaY4Rs|>>#MD- z+izA5rKV*gjTQ-oB}(!)p~E+4b&i*KfB0x07KjWet2Vm&6FR9nn1==7b(}L1@E2b# z{jHwRPYJd$x)L$z>=E4i^K$`z^Xb44;;Jucih>6dJ6eoKS@I(l{Y-kKGTOK%uQ~Pb z9(O~Zswp>D5@CVjOs3QzQ49o&o`Stpef(ITXrZ#45I;)dE9y^8i8=6)q)&xIH=qs9 zZ!LP8I1;Cj|ET3nSTS%sd9BpR%BwRv2mv0CH8w>ab&C`5bg+GM-(0UC=lAQFfMj^3 zeTv|Oa<|4DhC^nfgQ*oGx*u`4vn{B3Cp7yW1AzKj{hr{K)m2Nbuxp$a%4{m!#c*9%Jz}(FYmQ@Gz5tg5-qy5;=4aRb?L(NzWU*V zRP+N>&t@KR@In&Qqq3cXBb$N;z#9YgnbZULJSK3gqLKAiONw>Jj8#{C+}5yd*sO&E z?(7Gf{X~`JCj0M`V$yZA2O`QPZfl+g>OX=9Z3V@PO;`PvqlQtf|^O>=&IJfU=DDSAA+zIVM(6P@tvr6654oqj2zPQ^Fp)bh>r6 zboIY@$wU)DtdzbXF%C|Jfh6-BHi}*W>E4d6 zfT?ib{aN~xd*|i$6w8)6We&UYod(wyj@{LjOAaKQ~-KQ&H>M>Y;7*_Mu3kF&is%v}Ka)Qz6bIWQKSgLXJ-V7`bK z;UT9_R#qN75=yLTf&3D0U#Epoaoo{iV;%0gSKXUvD@*HU;7mv7DAO~rU3hr)k=3lwAQAQ!Jri`oA)W_rT7Y+41>Vk=a^Jb`IC$LzUR*_XJN22o;j~m5E@*PA7Lws5k zH;mayxZQ6S#|1Rj8x>l<k`6Q`F|vj+^HT1HttYm&WJNkd?D z1RiYOx22jUAOT0huDC(>qVIM)orl9h)i+-mjNa3mFFu~aFx@1qOp{X3im(4R1RPyD zB*B58i(>+{4^MD`n1SWvnev~&UeYRiQB5$iDM9Q7?j@7Foh?JTgI&WNPC|v{rr_>A zv66Nh{EO>VX2;E&9pr&cY#+3s6;sTYFBXhI1R21NY>|Q&QlAW@yN?f5$w&YN%1hc? z$>P!)1e=%*Nk&yO!`9~#x;4L-HmIdf6ttm}sQ?y;W5H*^OpfPxfw5PfR_U8K{&eBp z`q@&Y_*TNc#nY33y;SzaP9(ch@wU$ZA@%8J!VPDj($joqxjEy22e~_--k`6mwS9Cn z7G{Y{2#O7hUjEfUnR<%RY?*`Xd}pNXFtEni7GzkQ*cg@}{Ip^g=asCvn2YgH;nVgr zf4w>CAkq_|G|bV&ZeLm4q`KHE8|Ex^K?Wq94u?sLwd@}hp&FJ*Pb>hijzk0WW^Z}Gc-$hZE zIIAa4BX2@~Ba=o?QHq0hjzRy9A6<2{VGRzVQekez_%g_CqINsOt2hT$6QT?!58UYa zX&kC$RX-uHmjkdHIKF0cIf>L=Q6tdp1@Y5=4lB8`J(r*6obJ#hUM_{}$pC0IAHh3~?rCi9vr3lT0fQKeW{JX10JqWc0^mKL z{NA3p({Zpgh*tQwVYhhVRg}8<3*I)n&3w(pNsEk&SL(AZHQq%K6mL*rv?PISz{Y3#QWQ_uHw(=| zk9~tWN7mRZMrb7kxUpO~Nb&CAF#nh~hL}2z5}<9+pa=O5OG3o(bZ_(2)_4l&`;zxd z<(oAhnqBj|5}H%de>#d*wsC}tuRl?-qR*^iihaZajlQs9A^=4@H^7`WLeQwJ_=>3w z3X4g&1Xv_wA--?x9^A3+^!fd&b|OpR#}K6nC?7&(xJ_W#<24JW$`3Q+(d}t3`wvV! zh&^H$s^LzI!1IRaki0G|Quu&&&9S-1}a-Fr4qf z#F1U7*Wb9Uud*`mjJ%+07tVfBptso(epdtjP!7l#v3h7Fe0l;wxDVe;&sy}mD}d2# z5DAcjNP`#sgY57!AW7ihB-qqLb7}dj--b(Qn@n-f{qnl_?O`LO$Jtm@HwgrCOQaN2 zoRpa!b*~Ph15ckP`4$-{JXMer=g+lyHj~Z3rZ3DHKotlnqvu6-qAV@*mrwFV@6u9 zI$o)HwcL^Ox?R?=MnsGYxorbVDxh^_#LklUh=3o-Mgutn1HnK!dDt)_QH%~G)aK3| zc&|`H14_Q;a?_+iZN^FOBu>|ilqp-WacI~sDlcp44yb2w+@~ahdsfp@Iw-?1-!mOB zKh6__p*AjcF0^g-uf~87UrndIm!Hz6z1EjxRHuzfqX}GW6LF4@q9U%jo7TgOmi2OS z$`}J{OFS)mHrmY6>u0Cvi|fzO+}{`Xq-DX>$f zzeu4bm06R^Ll~!MA{0peid8wWZB|(czuLNIxHRi$WX<;uih`E0NfCJDKNNxNi!9T_ zrXE_#8iq0t8rns7+KcnnI^VA)x8GK?e5T*{+a%8MKo+&ng6C%cH_B0k7{H~%OXcbF z?3!@au+jg?nvt2uj05yM+(;j@skS54=kBh5iTrn*%%a{_WvROD3$y2Pqrpr?YoFcS zQ1c@*_Qa-lwXf?X%|+Z3H4Y6I_UUZcx}shji~mJR9#sut_umHLA>~O?EvqmIlmx1oSCGNP~J8>gqE*Ai<|3tQp*m-SSawuc{Ri~p%3`<`J=g6!L3 zG<`7yqdYpeq(kILbrK5PZ|}?y-h&I*`^xlMM&_wEBcU?_!V_+zS$ju?9m=4=b$?tO{uv7OWsx$>O)m`&D zZ&dHt%6TtQjGdz{*xD+sIyH=OJ_Ys^u6qkBCd|s&xd?riaV<219|d1hb{He zB_}vNGpDF@oGhR$7bajz=M!e#gVzslXt?FR8OGsh>ViWft&(HqhHsHk&(OfypleQ^ zOcAm*q;rO9ZIiR57%*;jwp)GP8_=HHZuKF7QL)#o8g5L@_Uoj5w8xmgm%X^gx|-v| zpK#A;zRWn`%fVG$nm|!HBfH8Y#4K+!G!hH~Mudaj zUDcJ{GZ|y8OD2Oli&+dr07*GcsQ8bLBV%75TkI)V@3NGnxUh6N$8VWV7@Rg_c9=-Z zDqp2&&z5sVF4u5^%+_qi+@ue3R}sK?W%SDO$(r&A05I333R}E@K8EP>edeiT8iFJI zM(P(UGQL}3aF9(=WAwY0ey3?|j!_O+WvjyfsO zbVlz=N?&7Y?1%HPSvjOogDyEL70?iblh5=L(Iot=?qI|`B#yuAY=mpNQAHO@aOY|( zq0$SAF7#m|oRl?-ygJs0^wcx46!ilV=f36q-zkItTcS$U)4`OGLBYsM#l;qyL7tF_ zk?}ud!kwI52sxSlb^lXDoSBi0@&A`y?b23q{*QN{mD*n84@Jlh0D7-%2}`+33rCVH zvs6hN&j>NF&RYa`ki$Oq0YLvaZ0HC92j1wisT^yDv%ZRdp z$edG5WZOemnGq>1Sr&Fpk$o(}ka=tZH104FPC^9}FFC%>u&kiJBDEFt;O_58K7t~8 z0b9Y$nnziZEIH!eBw65+X|K38n1T`BX)zRNF9JDGdSt-!Da^Y;x(pK&_H(Xmhz~5L zLO|j^DX_9zZ_EkI@LidEIVRBo)^9+?OF}e2d9)8QA36fbgVYciNiYO2QPyEwjueDC zq&U4-Ox6g+0Z1W#L=G(HmXUihXD%wZ5ceGsmKGi=SP=fgQ<+eodZi%jdjB8Z4Q>Fj zu-keHtqV2)Nl)zn05ToEnZyh`KizAjy$!hy!9^7fNAf`*B7qK9MdbxiWFitS+LjEE zzSSmI19ms%48i@}$ED2w7Se@!fZpUHLKMVQBDX*yK$L~pd8?X5&JJBewDXYhEYOd_ zc5l@&01l7_Mh%fz^Z<4ybq>E}9;3gr_kBV=^jMgfR&z3G9*cxT4+$ zamR;dPNGuGySg|;60@6t7 zL^vyWNx8;1c*(P}8ToS3QSka|mC733v3$s47qDrZ zqnTaTOo481cM#?d22QAOSVI>`)X2$g)gs`0d2C;Jn8JC$IjgB{rEg?&BUu&x5_-~39o?@ zEn9YH`a1Qc@?tILxPNK1a_!`8NnxV)SQsMyueQ9A6JgfG5vZ5CV!%ht?5P`0f=#A;h{;J;V7axQL0B_{6Z``R1n##7dbF)AhW)jRA(O7fTf6)5IK;5 z*z1a^;?s#EJL^+Iy^|0MnG-_PnoonUz?*DmFB${0W3vje~ia|D(k<*F|8kIwg5#7J}c`a3{ z=1gy#U^hn5-t>QS@)TrklV&Arh#f$ji(fQ04X1>P4T*<{=szU%223Y>s={+33>DqR zQyB`C+Af32Nj0xvnc375|zU38NNb$mO< zx%LbsMHZb<24Pd}Dt&_Uj+>i+I6U<3i--UfClXMzF2Bmf;VZ5#l^<+F`c(M(U_X*bmM8q}a z0}S-=GWp}-_$rGOm{8>FIk6u^1^7a)<(Kvilk#`QrJVHSk0~4*qP4%?0(^m=idTb@ z21g8_&|%8XCrGHY@P)>H(-OtVEA@~DCVq$9rkZW9VNPh;5Pn@suz_^?;XW$BcwdL) z97>s|`SoI7?vz|cEL4)oNUk^#5}}t@)c&S~UzKh+6l%~PY*+q07KA}oM8ss5LozkQ zOZr-!UHp#!T2vIu=_Wk$ZCP-_$onX_W*br$7)Cf^+9a#EuD%vfDioO!9OF65Y~%H* zsG7NL58;YYXde^#l2hj4C9C?_;pR=UjL=SUJ*ebN(@LJ73a8XlRqo0f5R2&^?_MIfDz5<5Vvb#;Eb)f zOIp>=wOiz+B9~{doMdCs3+af?jw~^}oe#t$Q${t0kWu=JM-Eyh5~i5e7eOD9c@4g_ z8*BJy5gSo`V^?#XyhhXwR)cZ*i8_|cu!N+MXScr}VC&bZnxUG{rG2`&=G5w| zqdK98BD9%Qaf*p`d3_2iLV34@5Aw>)WeI4J5P8yqg}H{ZSMI1EV)l$8qA_7W@z4_z zF-e(F62>eiGe`Jy45+pQ$Vq)NpONpQ#> zvS71J1NZ;3wawg%fVmbT>{F#x16TTV!#9PplhD&6PZ-xU8RKH6TJ0g!LC(A7Br`(q zafRM*zzZrls=BIl4nDg=+50mapbPe>@2}&I#@R2ZgrwrJ`0ZTMpt?VZahm7^+Ax@r zt+rkYu)OS~-8`B0LcQP~%(cRMZr|lK=fU7nf|eoh?n3+|lIB`g+sM+x%RNQl*v$k1 ziu0RbRl#F7^=gN@C9u&sn@gU4DIw^Yf;buz5=?TC9V=G$E~J@}iyX5)!GtczhF*glDJXWzI$!TewrjxXibM#_iF!S`7opjzJenHR8tn~IIW`YpDoTOYh|i61L5#yqsfqkPi*kUxWG{rh$sRi@_ zzgnQ}A(j5gr)uGAlfBxyyv;ihVy*p1=P)`kK4ZD@k)y`5$iRAz5*1fEO7eXT1C0& zz@xStErdy4HqMwLqc5;aBc}v3_Oa}12Xe4K8X&gedEXfYroeb4BWAyDMcvDYXd_U| z{^F^5+P~_UX5!|;X6^0zGB%VJFRYu%w_ri@!H1Zhi?n*W^|`F0lGm(YpWDZ%+fY*X z-usgGS$aD~{)0QWHXdEfh`Tz3{$=rgu>K4Rw$i^HZOn+4KG<>8upbrEq7Q*l(^3*> zV!Y9_;z=c=8qnd<)=!5W#rnmt@_qel@a;xmU_i_Ne>mG59RKaxn2C^?os09of(K?o z7DlH3GyF$5|JMp33lj%B`~QwB{@-`N-*#8UO}S^jXlsWTpr8&J2Y2_DKEwDvJYb<< zFu1-TFi6tY4sVD5nD?NV@pDhwdjI-ZMrFy~(2&pT-ulX@C@4@}FhObo)&iIcP8*=Z ztGfvWBsPGLj%{WH=ZFCxT7d1En3|u67ZfD8fMf<=2~H~?8{`uPAlSetHi3!&ZvnC| zFM%mp0b2PivvAB7V0E`ZlpuY_+Who_@PMv20YSJ!c(Zy&_b^zH9NWw6K-hRhsrab4 ztehCSS9f@N^wgaUKM9#SVAM%EJVE_ycsGEvIZXg?B{Pj6*dZ9x`aj{6X#h-qbz31D zzyxmgpSs^)wqiC`pa$%Ub*oI+s`$Z7e0qAqmY)OS^73N33D|gKjk!c{fNMHX!+NH6 z&rVaoG~ze=Bmj+W^!0`tab#z2d|rEB``v0D*QVzLunX`2-rBtKOZy_Q`-^B6Ah1YS zuxv+I>JJS#we2&&5MpO%U|>+kL2zfJ8J+sQG;~Mcr`_y!4Pc1R0s-8gfxCcylSGF# zqKV4a(cS)n@?(G!9GgZyy@db7BL#V1$wv{DmP8zc|3+X6N8H`v!uvUbcYpx?sf?~} z`w*y?wz852P&o6LGtRDUt|9M3vO{>cf=qtb3w;NuyZjJCf=YU|wtdwUeBKbX{3O3| zxI!VCn2E>w0UhiAbQm2^<6n3CTR!Y8G=p+=Y_tV${iGm4)-^kWew*EVdrw_v|I|}O zRgO+bT3gjq3SrM=h+%;$jbxx*!hMf?xbr(wkqH3=co+gi0&sfaEtM_JX{6$lP(qq` z#_ivVE(y5fsoyAe^w39{f2 zVGSSvdO(8qGCIvW#ouSiJ7%#vX5pYfe)NPG0Zna%JdC~5*pP36cg`FypuoL$_`QIh z9*A$80*70ms!Q6wc=9kC)MWpL2_Btb0Pqj9NcyMu=}&6jcb?ohV68x%&|HEb0BsgK zR1OUEH!H~3kAU~3ztxxrCwE0U5760<&g{<4B0?_i(cY;BL z^3rDrN8nY~Z$e4esegug7YIR%3va=MPcA>fpoF8J0^vz0$QE`7&)!j=^-ZJdO&$QGt2r>_(&2&DbUhmdE%{yME~{yN#&->(jJBIFiN7$KzZ zQ4km=k%G=L2)6_{5D226`NcU|#bHTJBqk|8D)7ul{_C%`Hi#M*0`Vxq>+9DFfED}K zmA_oAgeFyZKb)WN5T31HDTv5M4;UenBhNFJgfw;+2SzY1-xDB4jUU$hh7z4gb*R~c|N@H9_FL;?{R@Ji92fpWBV_GCJ!2V@Zquf02q6%w%W$t@{0Jcot1yom08#$9 z9zs#inSTvZZBIKG@|Omad^l?NPwx+Z^`hUeg`Z8~OaIu~A8)@m2*Ux!rJ(~euMXq>I zJ#8OOi7+*u$HIFb2TL5Zfm~tvZa=1%!;z9fa;Jdj+wLMknGZeOlU0~yPwEsU%LOO= zPK`ZQ3BH;vlI9m)az~o6Pf;4y*CTii{^d>?pFqcPS^;2xO`yKwM!bapD!N}2e@l$q zR-lQR8zUk_>e8CRCl+_pz4*TZxiFBTcU?!WtQ@6 zL6Ar(9$a}pVQk<_#`?VwjbvS={H(fP9tulQxOeRv^C8JrGiKRC)u;%NG}}de$KNiW z>G`syVMss1Ov5qW$FK4jT&2CDiMwj$4{*`1+D!RLN%e>p{H&NAVHS8t8-}sg zp#&>n6SyRbW>x41BrR}6% z-N-qcMjfEFW7t2X9YW(ELRCW4Ph;}}?=(UpL79~_$h@I)L?(_snyTlMOc+G`I07*I zLoB*g&bi5)>Z(eQMYR3kX*j0^^uz289j;Ydz=qs;>&I}g|Z`NZBzj>*UQ7( z7d&BqGY@A`q)VhgT;|(YrZd-M^CE7~&NH(b;-k5$x9MMa|Adt?xN}};3XF^>&vqw% zLyD!-g#0-AuCH%ynU8!rQfRcD>d8>^pK8G$n4hd{piQstHQl7URKB-=?DLi4t=#W# zv_U4?clv``wD8}8h}Xj2-@nTvlS}B?&Wi3tm5mZk{XC2^7jW1^kSSisPB_nL9^%1!U3)JG zP=Z9InxsNxJLs<^Oj9T@o|GQ|~S0xvkX*%PEw3Z=k zzD*L^(HG~0@K7X8fI+chLET0l>h1QGVN?HPOZ4XtK80+S?*hloyJgKf;|3KPUq4om z_nm4K7>M3}2KJx9kT}1(T-1~BvcGAR#fxFHA6ObBTePTT*6Ez-0RXNXisA_h?6G&- zTb0-L*>e=M;TKT5*MqMGz9eUcghgS{okb3@bpf31PO2!?Dv{mdG+SfRaB>biP~pNV z$%tk*22Hybqk~2oV{Hq`%&LApu<#ug+0O9X-jcpfhWW&Jm;LNvpUZLmbr8%u!wlh; z?nQjg+ym(Xnz%fFO|t%v?1w^EyDnVmN8#!khnjCfu8em1N$p|K3R$+Mu4FE5b}Q{- z;@aN2Yepbr8J-@UK)aDEVgceim=Pnam6A&iqW%{A4h)dv0jSDsi7D8`=%vhl5&6vd z%)u^O&-WP&mKO?q>cZf~o1QoS0yV-hk1v`J^PG+4)}>`zb$$>L&G+gWH!(sj1Xpn# zdDG3BLqQDjKuo|v6&U;r)7N8i*iL|Ow}S%^_)})?Ums-}7OxfQSlOkSzo-rv^A(zX>^C8Ie@ZN7yY=j<5m=;n>f|HSwh|9-7fpMI_Uh-d21ji9 z#Ad%mAu5HaSdWua>GC{lJY-iPCyXiAe{!i=Mt&(h1Gn%q69A$NNJQ8Uh#D^A2Ea=~ zAX-`Kh6>3RUcVAo54Uzbf7)VOdoq;m`y{c6Q}3f`-8$og`mNu!g=5Z!4Aikesn(n* zj5-~ejk^Ed=`CoBi%}!*7Sj#XUQuBoKDMo0=cAG zTVKB3BS)3ckK+uV^`rLu*}+u#C%i(U$aR#&nUB)1anY^AX$BSLo8r@Rv+I_$OQ8tu ztmc8keBP!tH0E6_tb>gOUqM=9Y<9jaQJI=1;{OxS$v4&od|rZ^Y!Qy_{9=|CxLPG-i~)-K$%x_Pb9-D(i{R7C{WJhMzshVVQX zI3wbxH!j;|b%}L*m1bJwcG(JW9B)vjj>-Z?2cM(Sm?Prk9 z_`orJ!c;;6+Ns^N#q$P#qBoH1r8kEdtJ^CyD@0@%Yg=z!yJ%ECoDv`STE6x?O@gBDgt#XTE$Qru%pV>kh ziL-B}zYIu?%-Jx@j`!=+qV~%#<+}X~+{b?~%Jhm3@mhUu?6;o}n*HtjL_<0FXwS$N z9AMdFlBq4NjGZD#Pi{i)xvjl~8(ELn1kI(6A%V-&wwo6?-EhYP;tZ&%buzfiz5 zA`05J{>Bk!d_WYvCGY`9#sKjK6~_|=)7rXykd)FVTd~d`iKTk}X4RzQ}lY({zW>;+QACLxEe3N}JwZ>%~(Vpv)EFMpc<2C`ZVJ z5%wu;te%tO;z_d^o`mR-KU7dtM_Dk;)gGpcL7hNudG>n6W1O<>*M09on7*jC)deRrwTxX+uw zleQu*dXBP;##{9iuZjNXw+yC{ZM5i=O@NM%kx2TT+|JIS&`6VWf?L_gooVR|9eox| zMz{0D^BKjT1%;p~+_^X4cK2PB2$)hYwnh*R2G4V+av*eEx+!(MtZ+&MwZ9j5lmbAi zQX$%<_KdHPNlOvwXum~jDQIu5$$c*isWNH4P$1uDEGYn^&EtLb8A#$@81p5bv)rh% zP;;6sFI@v6AWOY==fFEF1g)xX2VPbTi|+^S)#E^uO=z`5i#x*c?#RFGZbH}Pu4XS@6b zhU&B>i*HX_8o2h!_?*@jwLo$1UxWF{)PjdO&dH9s$ydxNRIPgwz5Z^bllTp%nxVLn zwoK18VWCl*#n5z0!14F5zaIkAXkhZ^$d_6ser0!9F0t@5(_I8TrxdR`?}!b0u6!X* z%O_+=S(`!HS(nF!RJ<9SJ%ouDiAfjn;6rrEw}!WZi+k~P+x`yMvH4>88z`l_=%A+V zUr;A6uvQ&B~Pz};4o$D?6$XqbMNiGM=BpV!?#TMuyAlliO9DzW1C8F?SEj=dN*lGW~i$eCi zcTz()zx)0!s)=2GpMON*8Odw0CiKciuX(?of(ed5XF|;;d>533(q9l>8&I2@{oa~( zXH_w|9DR1iy_TLgK8dZ{-2k54Sj13go_Kha-@eaVog?xoH{d%ihsBzW57;KM2cO%F|&v?6EqQhW`0CA99%6R&7?+ zOQWCk6^+=Q94v7U^tcaLvc6TfF_15nyJk5Q5cByu&%^d4;)ux{P3+-UjSgs@M+@C!bi5~KQj zh66}hV&1us_Z?$_2BrYKg-vKt8_*iWkdIToK4@E~oO*(nY|8*tC+3Knk!yCgo0p4t=gOZQJ|J`_*v^=f?;$h+*PAoLcjwS9$5# z39FFsfnJlzDYu*OM~MPCs45BkmrUx-a>?x`>9z*FIJ9&x0(wyt1&4~~p z#@}`?SLZMyO0Vjz@E1YvkHs@u?90k)q_+2%My}fXkp^vUw!v=4@u##`;g?01;aovi zFx}$=Z@z3m+`?reA6`6hMqscC2;17$W)E&b)5^1DnyU-HHOA;wc^VXZ{!j+_pGd=> ze7$<|7-`qy`Hy4BjBPcz>iEzfFEU z5SKU}?+_eKDOg{zf!&xPMS3}BB5=LxP62$ z3BOfXT7YpX{;lqXpwG^v zxF-U2J*nH(_kyk9c}TYQ9BNDO+tD#Xi7k&%%f4l%Ov<{^8tuy1@v8|f34C%fa28YzVw9qW4#AU5mP&5pvNU(q@vOFf9uk zkfNr;_{1n?R(SV;L?4m5|9(wWIZ5CTnpa_z@OHLY*} zBmK%>ir(i7k)n%gIA!xuM83^H3;6?@npZrCF|N*Je5Z^HZe+jntM6SZa=e)ZMbd6+1dnztO$#w) zPVPZdP*aU-C1M(jPWKHXG;$}V3ninMaNoHPmEL#k=xrZ28TUV91W#E?dzAWOuCs|I z3bfZ+bq%9%l^}2%4iIM^-MJMoLt?P(tG*~jY}{Ml0~@~Tk)ax`713gZ^u97^1Nl8Q z)54CChWYRYophEsVyf!w?NY;UmA26l8gr@7Qkb}_wTdlPx`Vxh(jHvhrLqw& zN$K#r?SYB=;FObj-PaPJxQIJU0mJJY|2k5W%M+T7Iaza*ha|XjIJT60z8lkOts633 zApQ;-P>L8d05Qs5Tjnci6l6qlWL8VwROq8?I)B?++YAxcQ-6<741LO@d`4qISX_j1 zUer>}tQb*;_Ks~2`OwgtITs%Lf?$0lVREo*3gr(==zycs!c+>?XdqPdi6ukDUqg5OI_ayO!n;u{ZDMg$r z_Al!6O30X`FekQI?|*!4+c0=(MZuN%)CPwaI{&@N*xlAH7pwWrrOe>{>2cr|$(pFM zu4b-}mJ${;{IByU;W)(~-R1X8{U(jFxKVI`^F}Wo&FxRNTOLsbd`06o*oB4l9taG~ zS9@rqJo*-RZxc(Nq9^+=T{h!rYGZ|eOuEcSJIw$jzjj0oo{gk#8_6uYJE&`$gnLa; zr>5Vh3cpvv=^C&RTeR!Sp1&SKM)|&pGWn?l#UI&G+$7I-9!|)Y-ir&Cz%!94eOewW z7Ut^=O-|;|hv~7O8Cp6XJCej+$*FMR`?X-ZDOYH?sfPfpxkYz3^#|FBDs1c>45%kr z*)sEkh{_&Amjj90(cGqn%+X;2u2li*qmuQ9@`kD2*ippxq1CuhCK5g6LiGHSi|v`_ zymgK&;C8e^^Aj2;hDs$$=U{T(SiO09w0!cE0=cJ~rLg{a2;|I|osQPhg!+Ni7qSvU z+f%*!QLsEHBrSU=ltY3}prbcN;b%m>>^&?r9?e`t}t((T;$^)4Vp_gfT8du({DPu93NARRg2^$ajnB@sNdcE*@WW3*Rj+6!J~IM@CgK0|n+GE{^Md;$$zg z%d=B3;zaoPt53m&+mH-K#=6!`-NCV~XU5uQm;Q_Et!o|6i=|<3OHYmYD!AlcUs|0^ z=V-fDTmcs|()lG$HwGC$h0(c)_=}8Tv*5gWR(3=&+DG$Wm?WF2+}}p>!#SJD1ERB@ z6H5(Wg`V^VNvxk{)U+}ta@)k}dKHhWZwwRXwl@L?7;S82mS803%Cl4*XDo>2Rf+_w zIZ1Q27&Ywu(C4yWBV`G*X4MV_H4(^>%soNN5$Sr3Jtvp8IrL)y)eh|}KEYtap zXz+@klL}Ge2i!gGz6#o{^Sr3AKyy;;APmen;g=7!uP7FS%)VCT@o5*ry_fyQ{;tpj zZ@bxJQTB^$xVC3@SC6>bynJr|f_2p~P-r=x6hMF?c=oQJ3G3t5SvE_Wm+L1d0x7u1 zMF4lv)_A4n&{;QmX`58dwm~O~%*%jNmh};IgEn{G#>bg1v~~PyPU!_yu^>0K)L#Qi zx>6cu2Jcyv!%h}|g*zZheb#vBU=oYA=)F8z^SgC+vm>7)Lt3j(U`0e-!+3!uT}Ni` za^E*$pwZ|9-ja|fvKORO;z{ho)WjA0Nfk>*`atJ59?Z^5a5-{;t zC%EywTOk*}SxKq%$sJ38>7BzlygfGv=zQO(Z{UzrgUl~9l3(y%p{Ir|WXU~Ifr9bY z+Zng0k1x&RbQ}EA;#GkpkHXw2`?*W+8ZQc-0wV&HzfRlG$eEWif__r6ktWr}Vf@4s z3LSQjzm=tpOiDF!fz!=3e9kr}`3kj`z;EPC)_dF^SPH8FU$o-^RpshaZ2C|dTM)&9 zDM%45b0aw^xl(cUp``SM+p0EAzrwl}gz?#R1=VLM>`xS=caInEM$8*v-8W z#tcx&xh@vlU%p4+h_0y2qU8#+yAI8G*YOaR!cJm9>nR|BGCT~*%C%LN>joNgd5zeW zSGT}hub*rAH32D7lAmM>t+=9zQdWnzwBT(#_X9=)$~iZR!z)eocIYHA^gjgIEr@+v za%~7l4wC@qBs~2b7?~pR{S}ZPi&89qZ@6JRzf4RRzlIWO#4liC)H*g>JmvY-oZ+e| z#B8xed=c?eL9zNura7{Y6A|$p&iCH+UxuWS_bXIs7CvVU^rj|sttZ;Px=WA!`p z&xlpkg1(NxJJXpL&ws(shBiSX<4J6ri{6TVjf#K#SY(~rc@*(%dMpyZHZQ@CvgeBq zgRtc!dW}V_h85iFbf#{&F@0q1ncOBziYWE67dB?5l(c#|(XXY03`1pBM_t|AT_WP|u7({20>k^CS^ z>Z4c3$n%1*d~SPJswj?r!H1;|rYn^Xh3$r-bG~9;2=v{DB{ZsBYL|U3(JJb}yx$zT zZs-J8B0cueHKVdhV@J)WtK10ZS^H=Qc>$Rf#%Vmww?3Kg=6=Dr1!EPgo=^Bf=k{0m zM-&!DW5}RUOQ;n~aRKZu#?QHm@{yPebd)o*oI+fi5_Bs9P_xcmP+*l~REsb7RKk9K z+`MiImU>?|QCDIs#XF$GUD4WPTh_k|5KudMa@+?@SS7ehF)`pDjG3yeiBrjDbkt+& zIf)3b&=*E1>wt_jUw<_&Ao|jI>795TM6|IEPkM3VE{H&NpQph4xz*`;p@jpkehSxY z00lXN^3n>si&jSyT0V!ot6-ibqcKjMf-s1t_jz(fmQi!-K#T6uQ_dmFOJ9C zAJJe+#3U5n9$jl&&YY3OjV zW*5*)GY!2XEjS5d4RE^HTYWRKKM7OXC{)~q}r9z$z_NkKAOoCTKNaGlQ=8RIdcVK2CgYO%c&a~z{Q5njot=Y}- z*A#ebDDzv_q`qi$s1hj7H^>LKQZ8e1vO+LRu~nr^k&j}~+X*36IccoD)ln%1$;5me z_ES7^mzU*)Z~IngM~N2v&?dskF&QFj><}C%1upBP9#`I1VkF&&|4S01t_vaL@2McSDik25J5FySfFaO18qhr7vq zhXl3quGOo3KK&%isD^qQm{62DsBOPj_@6Ar;98y~eU1H^>T1xOc zK6Z%^dGlZ#PmOT>`#UXl8hriBbEC5_wHEdp&oyUs6R@GrJM3ZDbEl3`H#+wTA#yjb z3nxjnqWp~j;24E`tBb&(q(miPzH11TrLF9;Rj>Va1LAY;UOTfglkVhZ3zR7QzTd0K zM>s6;?%;^y%UXA@*7k{Jnu70RO3J3-6gIp>9a2xH5Y9N z?5eurJUMB!bqP@(zQXuL?cti8O7AH9GIVaP8E+Pw{Pk3-`{QJxS-nOZ)8_6%h>o=jRO`sX4!!g`ZNzuE1Pc!`7J*-vbLi=sI$6=B zt1-XEVm&v(`b~n(x4`HL;J6o;Pmu4J_UaN*x#6h9Hy2fdffz|!9D13?B-Pi0PTqCy26Qr2;8Q_3kskOy z(;}4g*}byS*|Fi`>dE1_?_|aUG-2(Bv=ST`Y^(bAuH~0j#1~w}SVSEv{x;~aa?Bl; z_39F{WSEY&D!n`E#D|4-odLQBV|Z@ExBkI&eBB7vVRyD+DlkT~;=4wwPU;B6vdx=D zwPN(Ny$teADbXq_x@V`e0;E2x*ab%+CGv0Zgbpz(OOGsA&k}6!=N#?!0~`+MtZx8x zXNK~TpUX6C*W0$@PNd`lZDyg+f>-s7!Ri-A|qmRSNdw6xwBS_I2VE6sRR(2>aMZ3c8UVEH5xpntFGR&fd^BJlCs)OsOz^FNu#8t|;FrYNl{K*(EqYY&8 zPF?CP=Z$93X$@v9I@~2V4jU(27&f3?2{Sq^5%wD-p5FE!^D`bf772sL+CoRaK3O0* zrr!(Bwa`P&$s-@7=F_^BiyR{O5Svp?dh4uhD2G?-7{(AvMg%<-er~&Jg^MJpOz@3M zKBZGvnfDt?_WeL;EKUDUah3-0SJ3JU0T~Z-{L&dN7nf z^TDh-hfuyI%p-`zMCGFm<1n^r+pOLzf!REEn-C~m@+U0oqXeaS=I(p?MQ%k)M&MgQ zS2W&q+kwSE|GC937g`>*CO&1Y=@yO~=~paj&ojGhW+&juWxHZC&K0BkC5hRH=m9!_ zyv_{QYOW2M+3=h&IY~Njl+KVcOHa0Ao((<15_`dN6?+A3J|p>Q<%MFHt^V$^s=!~J zO`R*}tFGtp{m|T#JAo>q4;s|2I(`tGSkt^0zQn!QYD~bH*}=QvlP!D2ymk)p-I%Zq zcKmlq-Zf&Erd`{JoB}7d%}I`OBB7J%pAyNv?-Hmnts`T*hbR{sv>U~f5wC|L?Z|kZ zZmK?i_qWn10p0a8>6g8nW5wuR{t7qVvT0}J^KbIuXaZwTKN<@4u6irZx-t#nRU&~7pA^E(+v&@3CcSTe_Hec;+!^Q2nxm@T# zICiI70wP_-9$eAsCPzadl;sKXNh;z{(CHx~RVv#~qNCje-rhqR&?;PGyGdzETY-x( zs)gk{Kk*WlBxzd7Qiq0wvrvkJ2bN+#e@6JQssSe~@m>E{5`l;l#TPvhfL<_H!cZKj zaVSO5k~ckS@%Hnz9DLQrDY;=6YcShrPp(8{%wzuy+^EHkFWtT@Ivs6Kk(rZ}ktLIz zhOD4z%(QvYslOr#@`WdP(`Jd@A@yQx1^=Z7{sR7)z0I8BUj%1sfM8Q|GUK{Rwnu@#o zTnnkMSVoWy2O}{r-=td;Vtmq@koQU+4H9*YImgp)0!*$YhmItyJkV?hf$D8~EqKNn zv;oDaG;GPH{wsBv6wx+o2p3$I@?xYVbDR2MY4%IGR|VAJ>moj|ZIs&FKYyTo;OEMn z#M#rH)J7qvqO)E?J@YBHFaTbeE@>f7_cvYgM;K5Ix=`k7s}#jf(t)Vc4WY!lIgy>` zaiwa)-p4V$Pk#iNhu?H^^Y3RC%8mMP+ZaYAq zx#l8B_QT|6#``**%8jKg;O$A)IpH=6UGu3lvpAS^NxVe2LsQ|k6h=3vwX>-~#$b8> zM>~y~ESc}dwp99=>VgKQ@dC{y6VV4&z`O@+y^J?Z6T|PxFK$WkX*aM%fjj|f^5WPS zIMh%yCDbLcf$kJm-YH|FsY42E-@?TLYKfajk2+X6GWiaSPL?jLk|u%qs^jNShV33+ zAMb;y&Uv9gV`PtlKb?45Kxp8BCcGsvn6(dhaL-PHMa-(E#B5kk1p|cNK8G;5Dkso{ zNZLKScBewsUp9@k9^bl}|B`pGRKCx&eK|*I+h9)$^W9E4jm0i>zNO&(C1i`Qn|eHZ zfZ$nT-fVhXud=Qm(xnp1+g=ppIc!#;82^*q!Mc&hL_cpKp29`bEb#oIiCp{b7|U3zIx1x;`TKk<-|_A7zEL@` z34zvG^%Swvs>iN=qT+bk#PO3|7HIzL4Mjk3H#5@WuQL`$7%%G~BlrB7<#04vVAC5R zu#ApKKlHNETlcvpAH58FL$Y8mRt!_#pgZvNMdSGDW;zBLqhf3T)Fy8wA8;NkB!i{} zi&RiW2_H@t72Q~T$jnPf)(iRw9qAJvoEsP5@LFD+wGZY)f`Kre*m2)G*+c{WJ0=35 zb%_8gm{6PB_U*nM5y)N0Ic0c~OB$H`WmjutL z54WuyadrD0C@2e`XN(kl?+ks+*eG8OebEyTG@J>-MIZ7hHnez^hT#K*Q6H0TOVix3 zjospLa+tgkl%b@y9ZA5JrOKrgL3!2O#VGU(NvAbJY_jqDTNQ+%5IW9iM?q`}GwV#rI9 z^2f^zal#H~WlA_~!|qetBBeDZSf%n$oE_U{3Y$rN4hdG{n6mH?Y z>LP3Z2qlh4-)jvJ&fC832ry5rK9E{r7D zeG}6YPG-yO&W_mhjaBEV^f+o=LdRqgS&C6=8byWj`TLC{TYfRPy>Ieq4djjJCs|6- z=3x*i+aV_Pipdjr$1&%5y+`v3sg*1%$@2o!+#uaS9K01g#T#@5SDn^^* zs|j84_Dx`&%C~yNfy9)Jj0zOCRiw(VM!g<)etdRNLG{1$Dq5LWm{$!Zg?2yuxJ|PH2 zfgbO5gNiFlI!Z348KA~36`?6~h=O?Au8yrt?+n+wS!u=Sw+;`*F4v4@D^OaR)E53s z7a1!N92+(q;u}}o6j=35LG*EI@RUu40_O6GN@skm!uo|idAff?LRpomplQs ze+a3KA4dqv-CAIv2Kp?{6t!R)zPG^YK8+(gNhWW8ia+kz#!yB`1WL*`ljwo;`s78H zc#s#1Jyqvw4|01#JCq5^Qw3qwT_aV~_KZ7u70Zx={DyzVeNo0Pggs~Uh*4#s(4M|` zg$p_DK*oUm>4_r_EWqI)$&8yG9P8l`6)vX8SSo|HBTQDV2Daqx+usTGgNEC)=4*uv z*bm{gO-A49D1CLo09^W^sTgq+D38IlmQmnl6cn#l8NusZ8_a=?ieW*lB`M@lF7U!Mf zC8M1F+L~r^dYTKh4$vrO6QfCgTfTl@lmJCO`}96HURaH5l*h||>RV9aQMq;|6$S&6 z^1S1`7jsuzE8nCS8>?P^vp1tq+~S`3+AAS?Ub+?+HvFK*xfV*!a+=a zt}Gqd0E4T9529`?q5f&HmU74ME-st#*K|>^iV_wul!5xJ0aN*msrBl6pKRlFEKv}% z&c96!`p{&GShSS*`x2oLpi#G@cl=#!o$`Nz$ejt!ECyI6vW6PAz+< zfFGW@+p`RXY4nStCeOf~O1eq`9?DN~-{o-Yx4x|%=6C2n#-k%~*NJAnf11FI1{B*t zS4x|DSm1dgpE^N%ZgK>IsuRO`+rJTNr)fnuvv^*FC)U+Qsd-3qS+Ts9K41;V?2f{G zm3W{}BSe<7ZhcxjO4pUbsXd8?{tnL|C~^Ja=temHP-4={`-AtO0B33#rVIb(qp>V9 z!-agY0D=q3SV;J1`-;;Qn$C;;r8;+ps2;mi=m|^ScqvBEhfNmlA*4r0>g;#!rjoYc;{`)lh?A}6FPJY1n|uK z-6(z$;ACMYP5C6gxs?_Z#jt4I_2vQ@JEx+=bhGMK2KL#io zfBlp&zIvNvNR`g#TQIB8tlyxe`5H+}cd(tNk!+@T%mK>wxKMFw?5d!Eo1*=U`|Pyz zrx{w*(x$X`JzM2DqtYYK`-)9L$C|A!CPTj5ua6S~`m(St@A6&?T$xSe1%e&F_?x-g zs}<=N1}Y7IG+VK9+f~xHn)dw4^dyLx^`x3W{L1WevSleP<+#71ck>~KI9UHxDeMD1 zN_!ik=GqttwGC!ffYkl9Y*h*_&BZ9ckX~Zn2|@X+$e7$bt6WGbf?XNi3zI`=!Y2_5 z#kACf9^?=h8ls|?9VnBG8uhT(t_i#u)DD;xMGvbPO(FCLDoXtWNXf?SA8#zBuIoWK zRwf$ko->$8!94**-?wIh51zF~m=am04EkP=!Q9S?aE~+bM@zH| z#}tu|VN~DhRSLG2EVYidImWeoUMw1n2lzJ*^UnlP(mGhoE# zOhQaL*W2ccp{eev!umAVAN>9PS}O6p!I&1zSd ze1BnwU#fRLa}5AA+{C!H8GL>u%(hqwl`|C+Z+p04rl&3qH?1b4cfxr_)HrW5+z2Cn zQ>TzZb&u2JR>C#tg0A?y7J-+AD%mUkR%*&CGp^y$$QuF1Pn|gyM1awG4kr=%#VP3+ z`w2P{{Ghf&i*ofzPMhKBMzNNI_~Yga)<;5%4$CNwt8(t|C)HxijM8Bp2C^D7Ys-^a z`w9xWYfrC>(FU*WcoImorX6tc>u27Q%%X_G__lhpabb-ea)ut-zcWE02N%`fHyt`q z(GY_UVNpPZ0MXzP7&fP(YQxwTK?5$qM@qyd7fOwBlztW&j!@U}k+fLFgU@co-CwLg z;_-@okAva+oNX~av<2NfjR!yR`dA1t^^qNcew&*4j1Tlb-r9^vzPN_PoL}R?N*rK= z#V_l=(tS54HnFlx*dNq*;3+eRMpBeZ?pj=>*=fGv$u`)js_^OVv9c`5RpSynWG?+ZSCovfoGp`XRkIoFH(&rnZ?p!Y|9r|vBGwe|BWf5cF>Ga-A1UwssdyHcq zj_2Bvj`Wov24!O81H2S!Yi5p)!NA&woXIy>zKsM`v`kfjZ^4%G5@0@Bj|@Cyp^Y$i ztSZMC0S7&LY6)qeB&xseQbQQ+7It!ZJ!{AsX>kfCVdLvhJH%+(KO*o#HSHgmBF3Cq zsTo}z)QiMWx))I8wB|Llu>KP3 zw9|ZVR9?+1DnH-!-5=A}(lALK&=oUS4t18IUJsktUu8Hu)W=to$sBqXQq6XX3i8kX z941+JtK!pTLFDhP|FVIe@Rn_xL>pq+rqMO zjpYyQvrNpmmbhFHm&Sz7Rvr5(`gRDO@k~Q%zh2qeHN4gJa9D2kOdoyoXMfcl^7{+F z*ck=+O4LK2lV*NTy=}MVC`sf_L5tKFsuLw~4p2J;LaAj>8N*>>YZiv2WFGrEv8o>fSnwyG$Wre_g$-t%f`qAJ%D}d+x&am?A7e zDFz$eOoI=uzV7CpfksJq(mjdcBaX{(rF#|jD{6RQBApk(uN`p;^iQJ|73{by(0TD} zif&G0Hi=p8N*ZBMc4XvZNJYsM;6iUTZW^XEv77~3TC+3KTh-5Cp;m=Y>g-!2>RM+w zUggD5mDmQPuiqzE#3gW#&><*B2hoGo%=sOUU@1$nU@u@z#!xbiId!2Hs+@V$q@uh> zl6j{ya>a@jr6mN!KdJH-&(k&<1Wg&6X?)96KKb(A^uAhu03f?|Npg+-yk7=K?L7G= zAnCiZ`i|Xoc>GR(7R@W44Cgt?WtXaGR({6O|F5lk*scUX03aIM?%1|%n;qM>ZQFKU zY}>YNc5ElJm@~WijN07dsjAlN1koeE7+o`p5WaDoqBTp5$c`PzOJ!H zX4WQ*mG%?oSH>}qFOxAC+`vOpIZo6Dneg;O5J#9tVk-!*&0vv2>PHFibaM)=$V!GlzM(l3Sx|XE0~%V zND|2a4g{53(|ue^*`~I!dnM7p89C=AxQlR620>yI?kq2!hJcae?FC+W!*fF0#Ku+k zYWkoEL*kz3`Bx|}0vkCSV_v;@gH)y2<|vqZ@l%JYn}PPhjPFl7$~ai7s2xwe6sNT< zTHn2J;)x60z_Gk?-PGJ*E?-OuTf#+63(H$j|9S zJc)WR-xwZow$26;CA;MLCY5w44NNig@-0G8X;eKp!RD-Kt+ZYfK%THY;!oW)k0Wp$ zmmfOx)}-J&dI+|8c=sVGEYj5+w6YxGvTm|HjO}g()s;yx(~g zNtqCSGax;je3T2Qb3NLK{7(~-(W89)7sS#xm;D%5`)z*~YQM^5E!8?nUbv^--s_YG zxv23`QaTqyzZy*~tF`!I7&Xd~4b&%DwD9r*qk40W!*?-r5ysadjj^=XR^KRuO4FwY zf*L=^WJJH+S!W*E7dwS?SiY@~yjIpY_g1Bq#W^a#ec8_K$_b^(Lfo}5=As|h^ERF5 zoEP!64N#cQpF{{x>Uh>H@F?|#5!G&IqAN||KZsmNd^={6^LQO{QgjrdhG9}+&N?Me2A!+nsBCov9nP8OJGmj-gwFFV^X zL2+tGy8DlBhLO|}#39B<;k+qJ@}7pbX6FXg(a{OXieIchg$W<9mMDp$RTgy~?(aRJ zij?>rlorkwSeZ_j8Tj%VJu*vd_)0yk?^1XX76G2^@j%6ox74#R$S{6Uox%p71ggsRE2^zU3;yE99b2Ejp9|2a-Q9GQX+F zWzMTC1)~w#`Ahqd)1UhTHFH~}az$|LJh>!z-6YZx&G;%9h_n2XD_Iqa<|qD(!cBmb zlGpDb#E?g+-vd}yTseaN7`_zi44-otgZ>rg3nv2$2iE*-BSVt#?hve>6}WZ} z{D2unm(2$aoX;9Wt5Br@Id(e9y_(Ilw>+M*KGL;6ILSvuF09x&e?QL!R3jWT+cHJV zHQ_wyNAb{G5Hunxghfn>qc;NzSl2}{4akV)k3^e#NQFJxQ4D)3m2%Sbje4=E1*{~$ z5wW?*y@3Q|57uU==9)2$YV3M-K!b!%c?>So6e5pB*hel&lHVIqpH;ARBx|UbsT9r3 z(GWFm{Q&Yt*p{#xUx{r%B|d5)g41Ti&WR(lmeFo*>ObdjUP#z8@QckOI$l1U+ALM| z{%MDnC`GIXU`9DGj=AAVAay>j4J%N24Ww@7aT3l5%`g`;ufrfPtXK&$bK_KdoLpbm ztuq}09a{$y_j-tVQnrLPfvSIn3h&$dmH76B;2Rsttx{?ILq9G0PXaNWLe0u+^wN`# z{{PO54o@EMRwIDoTgI7-1i|2N6+5MrMPt_H;X(-l(dkEXnx+aEL91B0A&rO|rTr*s zOmF8nT1O{6)!S1qWU>j4u-?0~G}+jFL7YU@2)c~vs_@ExBF)XomMha-KgX^sx1Y}A z{e;-BQKF>YB z=IB^X4u=dj;T=cz#V1O#7|wIygHK)^+|dCrJz}AdbsG0H0gE4~Gm9|YM093hSoAWPBj$`ghjD}U#lBUM4{T725}@k?8;E9_7$yarXJDG z4$3YjBkD$1;*1tRZOR>{QGAK`w7~mJOCaYE1Pi>7N)filibPMs@L9#<)W@>i916Zm zF=l?NchWq<`#uyv2|^xoS)D6ZAz}j7Od}U%A!V7y$yF+qzMMuO+JEzO1q`$%*n?X|I z%upO)%yQMBR5+DB2~7YP&m(M3JnzIEtBiD(Wf z?&grT{wa2hGhjG<e8Utrk52RP%pYr|Cw~}WkHia*~YUYbQSI$>F!B8D?wYY>= zuJ%|5x2?Z61wtHJ3~Ye`#YK>fO-wUzzD1N*oFYQUX!Gk)W~9FsVmgnD~0*gqIsY z?{rX!V6Gf%H-a&-j6?f|Ja7U8h%CvrOfZn~=SoO{HO&auiCoC9#*zo%7 z6m%+kU^dGACG}u;xpHwp8w{v^gS#Eza8B6Y+Bruw^XLcpKCWdrKnPrxGi3V}ex+h?DXQ%c*4uqd;-m%R zV)kSk2-WB^a9|Z_!Y<60E$10Y#J`f++-@s^Sgj*(M})vSV!NX^$Dx5JJ2{C)0ol=c z4v1&p1yn3ZQ4*yq@O(Uj2mp#Txta&l9n{Z5A?@Z$S57HN_jrA3z8VLEP2FCINC_FX zX~W}`UbD@WyA;^vTZB_*d_U}i`yON%uoG3U)yyx~KL{%vRvf-)Gas;wyv(kG$~6RB=VdgAgC0j1RN04;cZcmn^GGMwZZM7OZR z*k|$mwV6l3%nXCs??uJ2S3Q*Hc;a+-o9*1|Lt!FM@Xk=MDYsGzP!yjT^US!Qf5=Q>&ZOxOf+w}{0Fh%jmUB=vcA z)Pgo8gjp|`Z2rzTrVFr=zM_8xpS7@k)qAMF>=&SPvjqLeKVY%k&zWsSb5~%OEUvCS z!exSjWHuvfktsOXvb1X1n5>2Bz_w+eXR4SLx9SP?qby)#j7CE@ZQhm~Z#rj<*IFyk zrP1LU-?k%t!Bdhvm2rD!4QFJ`9m=rnWk^$bw;SMFD7o>_);)%tcGY(Z>DHSLjoe2G zTV)sFh8loVmK&+lZPqqA0NJx*Ebigl^d0U}XZmr(gz@YZk;7Ut=FoR8-_fs?NnQxu z0HjTY!YZ*kd#t`%FTpD3HzS9!;<5Z#PtfuxrruK$;ziNVa_C(-!`{=f*XEjE=~jLgSjVImcs(c2#Raq_$f(7# zBNkl*pZ5G%Fg|pkQcD$c*1xAS9=UqkuyOp83CP|ow`8)1;4D&`I#I|`g@pLK8A)Jm zLzQr{?2!}Z2)@GP?q$m}|`~Wkk>Nt?M)VN@hOeFyQkBLBv>TjQ%sKE7w*};s79~R{8 z)&~xKP0JN1B+dtqAwY8svd6dMW6zTP!q+^~$KdtZbF{K2nXWrC8Uc$?^w^xEDrg~$ zyuWQ&mE3_AHEUKK$LOFioBZL>?oQ`hu@zv1OxKzx2?V5dD#E6?My0Z;Sj`rsR#ILNdtPd!>QMpmA zp`2(l)2R)+hdX=ZelZ%{t#F}8wWuIwX1=)LAr+1S`ak zu@E~2>`_(3?q=Az5Tyy_a%ttVu)Xl^mV8+*T~^%d+^ag49(ihKXr&CiTwn7~I^Szj z6Pvw^e1%XRpjfdm8`}x-YlR;5z_UoST6?d2K6W@-Hs(wtjLx` zf{+t&g}$|m+ouK3#AJBKWaQnbOioPo1)r9*C{BeWhfhckKnk6N5cVd>OeZUSDJ_;O-#*vI&7WAX?di zs;-ngS48XO-Nu^OGJm9$N4H8u=bj6@&aO7ul zXqR&tEs;QJ-Xp!_lf+6^5BYd`;o$_t?0Qfs{TVdQ7)O%}tH(2(eer5E?NdAghdr3q z&343%7L`&$yCuE4Bw+1Flz*4e3`i5hNv5t{*)b18`4Ji4fy9|14iBl_*`6H=XXd}%*zxEANnH&mTS zUs+5Q2|2F;mCRd`U15;)brP91;t6od^r3|~m`I~@VRZ4%NvJ;mybV4Il#frDX1wOZ zAkH!Fp_f=ZvCJlnDCc7?HLgn~5vt3ej|cTVe!%^YBQOt(Uh!IwcvkAXmA*l*K9LbH zLXME@nHZ}pBI?Pcv^B@$5wiUPtV2Wt_0q=bYUZ&pl7sREInv;GqAxn3-iW`}e&i30 zyVTgHH&opBm+t<$LoEhAyHW2d+R&9ag_RdE(ID?i@*-kB;V9}Cw7f%%aNN$^$XeF@ zyyZ8c_X&A(7@3WPwmvp^LWh}Y7 zn9z0s7tRRtH%Po|Yt7vvlkF=k;q_j*lE_QI|He1$x^AvWeBM!0pXBiEkBi zE?QoftYUg?j#p7|Ttr<3h(>1p(#ptkBWdub z|6(qAxvN*;5VTMAXp2TJ4{@4wDA_Pne)5wh`6pNTvbofP=BFB9#!39iZz9t!`hrA{ zr4$egLsWHJ%#QPl!kkV&Q&hg9YAFf?nS z(k0>I;oxjM$&`E|>@cr78+b44`Q3%^w6Zt*dJJDOqMzqsozDJ1^l^MqRQ`{%Q2Q(sQnbm^Jng46!$f--{O0-W1gU z=DBudA{0HcR2okvfqfnJ#Bz7dn9eIb?*(I%h{yQYHaH{)a-frg?_}#mDjuEVAp3Oi z+fcTfR~>e2r!J+jfrgjFG&$JZ@J=+tN3q|k0>lsO(c3@xO9KV4n%_}`)epk0A|*}+ zuGb^SDOT)89Q@-Qy$h$MM2h$8dhT=7o6F}@94aoW{HC^M~x38d8xLt0BbSZYa%!%#eGoeL+z|R&1Q?0(0IZ@->{(+^|FKP zB|@xO(tJ^gVlt)b^R5Y6fUu?C@uTyd#mfCU-p`nZI{@Q=lnL=(oQ^JZxv79FRxwqE zUdhT=OL(1R=kyeB?;#~P4vJ@s?1^u68fc0DS6Y^K3KMV=yWR~Sdtw_qIxA;>q0B(c zK{C~AYF=)H(6uUcj&Oaqq#u4dFaJ)pE}H1a75S5iUiLNk7Fnx?p_N&82yMz(A2?hn zUhHS4UXN3+SQ4-oq576Gw0oA!cX{NNw=05GuD zAO*Xcut?vTekKTLFs8*}ci5I&7Vg>HmuR3>h^LLxyVhK7zE#~3sAB_r#IZIoiV?;T zG5wu;bWLT(N3{czi5Nl9(-{*{J#^@pZT=#@v%O}xgkQbNe&7xj;fvXJvHR#1-s8j{ zlGmoxZrW%fZxo!e*s;tSLLL@a3b-=HKmX32#x+6Fp(iLQsG+a~93K|U79(v~@2v-$ z&}^wGtLQ^TXJgw?l>1y5?(bBUVMtZt%M_A$KIVmy`DT|0jnmLO^d{NNIDykC1gHCd zWZFN)=xA+65SB5S7-!%{K3;7z|3K7FsPZ0#OMu)cEx=g|K3dpmDYG~7M%=js93Cd8 z0H?SEdrBT~C<uYQ-W@2s_ z1^dt42PzPiVz~)A7q&r`-<-lL6C2;u)}fTTD@9YbLz)bCRI>n418k|wlcchy)j-95 z)gRHG&4W*ae4{^<#ijVSD&ztBuTFJf4-Rt4<|H^cF+w1v@vCMiAghesQm>kvz)aE1#R<9Mb}O3tWh|CF;jlM&Oo~4OMCydM$AP3~l5otzts~13{!{ z5FL`8aTEznM2l-2FdSK8A!s#bZ;SCsv>>=6$wRa) z$Gw$9yOON2eo|!ze)wi4QT}*S#6dPBIsS+^(DX9M^2N+^=<8}+Jl{@q?j997ivBp+ zLMLfCXnICND=vh&PkGE#2GCd75bcWBE)0Kpie{03iAs?&OwGU5yr$`Pkh zkQiS!Aq_orbOnw~Y#s-Ve^Gip8z8)a&Dmg*IB1!r3w)+p_E5^F$yH-Oxro6C%N^Ip zjnnyl2qwqhkF0!Gk!4{=6<(-0W5@Oqx12x!MUwk8b5uffrfY#%NnzjY?s>LH$8Nev zW@#AuzF>nC0*oSy3fT0Z63wzQDQvLJ)=k-lBi``ViW*SwH&N0QXrP<4!zG~5sm5Ey z(&{zxMIYzKgm}PDHpMjtx>{UoKPzTWd;^d78R zYaybz@A%X_YogkNFiUU>46eHmC_j2>g$mWi(Nwy$lz!=?XT|B6>JDcp7BU`55 zI^vh-VDoXqt+;I3q^!$eJ?Qh|YD1G9sZ0+Srm5g zOab!gFBNBhD0G=)^R<3`n3!3|ERVBljBN)4pC|3oTMa}rgA18(#6oH8#A+oBtBLEv z<(Te6DNgEe!EO0D{(2OF2NsT)=bC@fmZOS+$(JD&K5gIY zOo>?PVsL=*XfiFeRWgjOv_3ubJ&hXG|9?d)6Emu~m!FX@E6!;s^bee&K`|Jf^L zaHezi5>W^|X>Gs|!UI$Ci<`*TpCSlvT__ibu!u67qxw|jNAd!GpNIdmh>UOlp-u#U zZxe{V1VV4-l>WdjLvV=#ImGwJKqTl##Pq@0IpN`gB%li7+F$4KUHxx}VW$MWl$jk_Iqg|Cs`Me{=B0uFv*hiOD0!R8!8QMc^%E2ClJr6lRuODu1aH>ke>hpPe zn4L~!552mto!C{B%L%`ysGhKJ=RzITVbP_eh`k9})eQV={Rpa(8#HF+ zlOYLZaG|G}x$~a-fRHMYY@Z^fYhcS2qS>2AW-h6+pm3Nh1YV^ADB+;_e9!SL;3V~B z6ypQ;F|aNf$|)-dMf~**>Cd2&FD_G~@WlFfAFBu0WK z0ER^(HB4v!bfSUlwIF2tpIuLNTfAb>AKW@{&@c9a)mLMA`SFQAAIPl=aD&%XO#O9x zN>HfJY$p(gs0hx59J$dWv6S^UK#qC^C;%-_T=?Cw1ut1z@90(XpH_mCE-vtmC0ov2 ztTOO+jHJ;}OgFQo$JUNNhj`(4S{`gSP(8{fk@9~9uv#{v*|CAaikG9Q4U#w-WTEG8 zEyImvtT*rf)drXsC5psO()9esR9(1n#5e8XpARO}I}`dx3ky(6HRhwMlkD_!<@fEN z``j1P88QlR;Y<8C0OHC)aCE4@gmRE2ILii$t{Jtz<(XNfNR>;`Pe2noxqbuTtE zEq5)JPJNaIw9p`&&%iX6%vt8^f||44z}Thg)ctWz`?Zpt#>Mt9Hx_qT6=3S92p*!M z;!=URGou-nTx6)ddhXcwJ3d4+?=?V~Xv!bwkHne~5`J8~Hl~n3L|}xpf<>108aZLY z@Hm6aM}yvR-HGDgXu^VPMSylTgYiaVmH~|}y@Ci*OpvJ1;n)Hyz@aqbbwttSO}>y! zXgpRAgBf5Wn_uK2B5EOS<-_g6xuXxEw><;Pb`3`J@ks{|^IQFUW?P1p>r{Ix^?woH z$SAX~rmORkiex=O`Z%vlm5$-z`SPj-$6?^^OO3CdG%P+mYe}avv}1G?(Mv$au4>0V zSstz!$Z9AL3B1KM+LLvQ3VA!#x!L_eIsudtZRO{5J4(YK5a5 z<9OEnNw**TgnklIjb1r#aW5W^E?evby;#d_Oa{KaJ>PsaF?P%NEqiBei>MFknvM{F z=-8Ge&7VD{8Wh!jDbh#lM*w)R{}HGZ%TnT%lO1r6@|j^SE*wBj(|K4CuKrlu+%T?- z>$wd{r!`L<_B#L5=vroAW39Xv`m!G}mr=41j<1xY1D4c$+;|P+3F?prvUAIA5Wy*X zS&@L3_OJ&~sCtwE`1X*Yq5g!Cj)^LwR&Mv5_Ht1fcb_N-k!Yx zOcU7&W4_=RTFMi`WapJhX%gb;40wTV8LV0r0t8;zcMwmdy7&aakJLe$1qbYMm$*ji zE0`)E6L8S=N!dp@%7} z*uErBK${T6a1D}b-NttGNEZT~ zdN;%_^giS2Lea(~SrLp$?`D-o)Y@%enqYA-YJ|dZm2&fPcy7$awPx#}U_A|8fqx)~ z^$|AA58>MCTdkB%IoeJr-{JaYAHo{nv;_>N^Fc|Ke{o-8EF}EzXn6$xjx2UMkzk=! zI$0U*;qFhH@=5l4t!x_jxDz;t_zEt3s(h-@ciS_j$ zuc?_`O`3q}!PdD=vS=dA(MR-$kUh(KEeAa(iHX|(4~6WZZ~U=N54G9J%^D7hBn zjjh41{*n;lRH@^=1=J7(@Td59!Z)q^nQTZj3h|vi`K7~WoII(Yq`zh-E@@^jGdxcR zSt*IU6jQSX=}2x&lLXTg*4-oFsK8wP->R5MZ!zSpxNz7eTH+zVa#ay$BOS*Fb2}Bj zZokOeYuSfym2X@Awpyl&yh=pQ%VMImz4h4YB)}mwmBS9zbR9OQ18a8)j_1V6iSv=6 znnrDFzH*Ir#u>ljT{3NsSlI_MuGVq@K>hJYKN9n?>Gize&Qihc%l&dzMChSzK8}c^ zW86HAf`mj&0YfFd8sV_fVDv+L&z~S2p?LYze9KuQwVPECwgwT@c(|yJwDTDpkn!Z8 z@-t55payEmSYL5k8Vk8RO;_9Ak`iu_xmNX?UZa<;wOb^X{UlJHzz$OY-RN}wH7=$! z+GF41YNxOYh0gr`6-#RKTE9qM-{9te=I5^ooZEBW(59?js zMf?s!5A+ArdXMPrFqRY2_WA%I>^nhd@)k0+zrcUq;yiH1zR{I$2h+YH6{?n7!g1Cr z32dqAU}4E6$dN{efUT6f27#6Gj~f?Lk^>=Gr&_G9%^SXAbc#apD(_LuW#mIFh&WA}0?qTcH; zAlJoH(NSEWhMvw8<3N09{1SD=G1EeMcE}vi_CsTv1=$1EeKHD4?066+Xl!ZEV8L5$;a=vak`dtq9*)33PMf=_xQ zUzMd!X3gobf?v9IET5+>V+xeq&{05IS||pGcly;wxXBh={OvwEL#2{!RL4K)NGR*f z&H}G`hDh8;V7{!JQyfcd8bu0gwXmAxAXsjSn+)CaVd4}ycE25tZte2zJ~010W5Mdi zlUMrUea4^cTv5E4Hm>fYe=%ADESsvQE!w2YiHtB6*s8wswD)Ql!n9jVAIyH~tx2-x zWrJ`+of&CX|-fL8OAlkrrbz|7>yc2tyMD|YE2-E)0!3t8r3y1 zl<$WBDzD>JTkTr%?!H?CXuW;3!{DE1=42H-8CF0ncnsLW#`H=q3bBP&e0+JPbH{7x;Cx&z6KvFU@ zj0f*3f7ciI7v9TRck2KE;i-9kL8-bZ9``kl@w*yaVCp$wFRBuCi`;*tCE&g$}*c2&D>(& zl@zpN41cBFt|Fg)CeoawQ?K6Q_#yvx@W2~O0MeYqQdsTV;O}BSN=Cg210#hkB4Dq# zUdsehM4__Pc;oRB0R6IevlzWx`U^!sE9~-SHux(_PNq2d<>MyA452CF;2!EP>xc*J zXMSku>OzCaa2pV~zkmQJg_ra|ifrGu-ot(15O{Nlex@Kq1qgUSqc(nX`)vD-F_E=N zy@`v7g^KdtL2*7wti;dGr6J+wYw4{7o%)wezrs_f_?@(GJ2FDd^Z;+jVl+AOs_GW{ z#l$NkV5%1<7aGFs*M^ha!bw7|{UgV$;MV1o?KqZ7)`Tx&iKr)Ie5Q9M8SGd-!F$nV z;V|!yPxQ5v&=6TBgjLIp)1&>cZpDRsM$%1AT@Nl`9Y_Z4z{PRD%&v0BFw7;TASpV+ zBx)`Z;@v;)*VQLmaeVY8XpS_*#a#-~5WSDzmY5Y<^hFbC#rO+r>g;`*HnFVo{(Frz zO>r=&B@vG=CX^}u?L0!59Etf+1`2$Pb|pOY%cr%(^jK%bAN`vFXC8mZzkypInK`<5 z;lJeVSn_DFp?)ac6t{}bjPhE5@iE))+|A^R()J8!`b~GMX$(~|e$T)pT;YgR5oR38 zu_SRlYuii;TS2vzw;(v?D`8CIO?NryWYvqvVjSMW0T*c>da2{Hd>DyQPf$M`bHNTc zoCwp|yW_T1pGmHYbX{w&{a;jyhZPMczVf)pK-QwQLrIfhDXdH)%G-2aP#HNwrA~=p zgLC+L48gXT__3gJX;$OM3w=Guu>Bf(P-|MOWfUHbUVzYpb|L-dH@U2c9dRU_<(_6u zt%eE9U>lCGyyh`72KBEN0I>hIQU1)4A4n*HdBoVC?V_>yiY*WX2J)7Zjpo9&BE!R4 z2UfCKjA%+Mjo@2eoXE9?lalzEf_YBXK|LgAk0nQ8L#JNRa8u=1#3$~#qBCVdE77ho zifjJ-v+YCB`(>_Q+;o7FEpkQo?c;zszSM;yAgyQe+@qy9Yx>Lc7;Cn!c zIW%VXdYYImuJhwa@*SHWeuWq+Q9_01>g}0CiU%tU7xFO*66NW!0+yJ@Q4JL#?A-(Y z6KT*qVfuQMTA6(-^&c@7C6T~##D^4b787_?TSsTlyC`qsx3pKv;9xz?@`lKqCG(!> zj_oSl+djIjycpZ?vLezDicU~*3}O|WH+q=ln&D|R*aUP-AS50%<6<=G7C}>U3n5Aq zfhf(C+dh+@E{;irlPF9lioB|=mKuXdE?InK+E*g&wgeJ35YyJS#{T5S{y#(mII8`B zvv_}_3Nz{gs%>9p7B&=6h3;%Ll|Dr9>MKDS z0Hi>th60pr$KRY@UZ|^J`JiS!@+rUv zd^+<@gGNM0(&L#kG`b%Zzjk1ON0EL|YK}P<(Nyl<%}4*mA|Om^jZ#n(2hY62A=c!? z;u^$%6#>}#j;`sgi3c+-IBwZ$xogTlhmfzPjca=|Q&yF-^osIA9D?Yq`wZi`iAz-v zFa)p*9Fe+&I_vQba)r0>*jO=76+p?khciF@Fw|HJeJ2;beee39|+ z+w%Ohd(lV`n4BJ0IcX?h`F(bg48%nh5dvGA%iI=7Wm+GOH6w!AQGZV73k90MX12RF zx6#bld!1`(Q{>R*ZNNt7cXhWB6H)EqI? zK8#k_45TF|L}}f|m~)081nk1L2(h!n`~*RCG$I>rFRn|6a`Q%SL&ZHy%H0s=%_6TK z*1`kb$@$@(YKf9G^lfb#*&n+3y6eu&NVgM_@pR-a0L82oS#TJ0AGWrBsWm0qz*W=3 zSN%MgnBmEpD>3uPwifGnS2@pti{$`c?fzNSw}9mLGO^Uat4YZ7$>CvQu0!2&Hpwma znAMS}vAt!h%S2EUhL~t@Z_oCBY}p8Yrrqd@YH?{=-Z%CanFrGednnL}w5Iev1fevF z=Ut}^`*0D$ywAa`n&)8U;5xhDl!eyYf26IpclUDB70HOZxkP^{mImPnXz zV9GsydaKgfOKAK4LKhh~HR(C~0y}KHa@(7;!YIpM0FT8YGuidplZ-{5o_`jKHB{Ud zN+@b+SIV|{7)S;Zx2#o;ozvKNYwPgnZ$c?6O(x@a9wJC+8=^W)_hT+aEsA`xu-ozU ztzpU%Xwk3+pUn!>Q3&2QYOlbok7~&P!ShfGGpEr#e|gSrAf4foZgye^6%>i^agi?I z1~_}*grpum(;_vGazRd}_cyfef?=}K;81DLz9R739|T%EzPsxvnD`gWEzNA|O(&4j ztBYn`7jIZXvHyH1orXMuchx1MyB=RB{^3|5g~@whl$g30SJiWxpbxy_B8r_$1crgw zqI#}+T4axFh}R<^Frgg6+t>W|s_2ZCzDe?<<%HO8v`1`8yONvh;HTq2h66gXkxc5v}$M z>>v9cP~S87pE(`9I#OHA*SlI(%&9KJUI!qNwk}TIlN1B7(=-FlXM`((y)h(y(!<1& zQVhKpfw&HJmlDSinbR_tuJmh7bOe|Pp>(mvZh-PzK1*Mz3{D-_c%WE+i$uEU3}+W# zaEV(knpd7)^1BFm(LWb(?p;x2P~t(x{pqM$>m91)0D1bzD!3)ht(ej`H#!Qb=UyRW z%6j`2#-`vbg23Zie<8Z_2fYOaAgtmW73^S)Hw7h^dg) z@QVe|A-HPat4q>9tme?HY~^#P1)VRu^zlk_&Ae-TufjJpJQHi!bHfa@` z3FTUP=}VJSl4&<^F-(aC%n`yxMm+r*Imw>LR-?4koQQ+Oe!un(RTvR#(Z$8<^1tZc zlo!qN3VjY`U?PFFNZ1b#n>z6?IYDgrXbU2Dtr7>;J*p|34gu_HfNJ=$9Y>gMtN5s|lsHe{c(MRii%p)I z6Sv{UB*d_}|M_@}7<(NUs3XHS`RsjajB)yVUY;ioBa#fFi&Uk-y&Jjl%Mtc+Gfy0k zYin{aP@vU;Z^>VdzG`S|81_l*L*&K$hODg!Mt>M}S+ zf$<@L?)0k(lofMjnP;CG75vVSc1%gpmyNh8QJFaou0J$k?}adgd+vycQjV|IZMz|G zP(^}cbgS>58iThzI4roj;SQuJsqSUcHT;QAq6?CUX*!x08h|TN8UYcBttL|FoDfr6}kZ9>`o(%k`SR`xVFkQD_qHY~J-foz|H=~;fBgQ)bM z;26p=mZf6XLi2b_7tvh8Z}eavXNc&NC>GlWL_F_K1p6;7C6Xm=pXEsxQToZ{67K_B z>Eq~%`a3|<=1h`nYs^h5yamnT%ptSuhD6aG^MU7(2vc?5;On>dpkU6+ndX-8$+F14 zdJGg3BDrjXZ$sg_m|OS*gm?t6W4g0SBZc!%Bdv1#C)sW=+&Y3RxYfgZ2NyFu;3jv! z9?2p4_!(U6 zruBKJ@Zz08Qu;{+{3GirYxC~hN!s5nQD?EwSNY}1hV$HZ!=3A+V?hD@eop8@uw<5? z^7f9{2ExlM^tWtm^}H>d3fpmg^{&sE2VO2`OdaW@61u1v<)$HZJSQtJy2k6%)3~@V z3=@tx{_J*|S&li}5|R2Ew&AG(y4`6Ym*^=nlHgV$yi4eyO`IU{U{{?&75b>mn4H48 z;BLRL25aHAfCXjZrUfDs77W%TyhOVT1rr+dZ!df=J4ESx-^KrnP$KrmTz50pOIl zJFqe7-TV(nR8sjow~0>N+0pMs)j-B&#weL@_0>OC7(rrFU$FOmfgz}k?Cf>Ne9vD1 z*=a@fpL2GTRXkc#pY5jOd@V|bhpEDUP}S}eg|Cyfo}Ug0ro;ak`%REhD*_7Vj z?f)AAq;oU3<|ZQc@Fql-cp+!K{r<9v8bfPRP>8j~BS@U-gT|)2=x0o6)@A8-5M|!HRuR_&~ge!6dF@+t_2$B@uS_sMGae4x&ajwDuYEWu9V-UzV0B!yn5g2FK zKB{C^P>eSjZ^GzJQ2GWstv85=BVGSq%#fQp8d-*VzSW96${u(JjQ8}81I@YCw@CRm z$ag0|CnD=F#M}T=MSnMG1w*$x1LtINy= zWyJzOoCSG~OlW+t#?|p^7N&Nu1g(Zt?3G4?ovne1F%(`^}w`LaWr13?>Y9%Le*MaRbw;nagz%HPSPV?2uKt(F zzXH4zy6Ty_pt&;+_F;l8a7oN#t@lIP8X=YOCr(g(ng)ajH$f~X5Ex+ z|4XiwufcCxi1wHCeT1gT3YWKEoCnYT?;|&xoxDpxY*I1~09sFn%nke>R_Zs|MfvT? z)-{gF3F`Ui3IWncIrGe^21S=+Ok6VwPxr=RES0I@9Hy-*h~ZAfnfIWTNyG5yut+e) zg}x(3IJW%RqSDe@LQ!}GbVZdk007ntKqV}z%f7!#VBFoywqkIK%D$Sv*(b5@n_7Yby29Eb znt{RRE^q+oe%$kGqaW@Y{}r(hHOzf^OZ!^1S%NQrB!Kc79bH_{jC39z9t_$Y9UV-; z+0^J*x4-2wJJTDWdjQTYpk2P4K(~JX5JzVQ|D>fAsP{U6zBUj7ds{FU2f$yqM35ir zgUat3GINQ^)!D`5FncBn}EJ5_m3X)Rk*)(6cH3t64K>m%;P<L|h!0qX505m)|fTyi^DUS50!0Vg6O1Ho-+PwCcEV)_&bNbT1Oe<~h`0(I2 ze{I@o+-X|BD!bd$@!|u6n`5wK#6SGoEXdoq8KiS412BLb00DVs>e9W6-;Do2^3=Uk zc1WKdT)|iXXk>2m{JIv<`y1fdt&w3|2nSa;;7_l=p8GtA*idK#JKNJwwqtv6(A&Io zCO9+#fVsYD`;_my#XlSV7yj_%)0>dYV4Ul2fKvfz4l>dBt1SkFzdz^EU+T2ttel*} zNZ$BQe$XHL)X1KeoHhT)->5>+Z(XXFzXO{aBFh^{7WGy))~3(2%D={`_RMbBo`~QQ z+3(+D->O~q1AldB z10`kkrNqU;uR6z%aFPQ9Fs3%QdXRc22Oyd39NF&u^gXkHlwjcfnMbzCQ-L}EFp&P? za{wn_XF!h5j!z&Ofmw$>_QWLMev-$nXZm4K1EjBD4*(gYKQWzb0J0DM^O%Zz@E*pL z-zx=k&>EHVejop0A`R&cwTX_?-(>AA>zaaZ!{)b%=(@%4y?sIZD2Tm?cI=v5H77?Kctvb z+QM@F18rfyR%s`+rBnEve#H4-`Ztc<3%b?3e@-6K590Q*ZU1y@vIG4oKUWj0z|ZN! z*#)&qmyP|pfHZfn?fL({@&^1#^531k|4wMBpdO#i4E(uuV5+xy0MKIFf?rC> z)9(D=Gk>lW-{)Sw+~mLMe}8a*00MIbnA=N0<1zIkWUZ7nI`TvgR6tQc;g2LyQ}bJG zc#f4uRlxaTJ$BJ370M~8h0~Qcs*@viMnkM%l5e-~Xe@jrOSc zmDhy2I7xb+O7jz>TYX`zNn7uhiK~5%h0*%85}li^txR%3UAHg-y4!LPPeP= zt|3x~#Zlk(E2Z)80|zVIrH+>~2aitX_poD5#Nm>-Ag;UIZ~WRwT>W<1Y4|l)`QA@d zo*9v~f)xM$&)I%a|Iu6*taBGTqd!JR!N49jHzW_(6p_k%LO^D>Yq+|h^0V~L`q7AJ zzdlF*w$DW3Vq0`eck4SfT}+{svhJ1ycaU!_>Eg5ygTag#4Z4`fvpW{fE|imL7_K8rYuUJJ4)3k5`}$)x40ULfi0 zRkno`)&mPFecgeRzlZ0Rmyjm(U)h91ni+{WI(nV5czM>O<2nuQO*~|^Cg^VsZpSyI zw6nW@+gJ~RbKp}JJ)SpU6Dtl|R*abNZV~q%TZ9w7q}9KvJrTtz$jxF{WaBgu3Dc)6m%CHd-7!HCDB#IP{GHUjeE{{YF0E#Gecn|e+Vv26ep%}mpO2@ z`~6xT4Qdg$;Uqd_72k1|y5&lh7q518)_B>Sh#x}ik)IA_OMAh4SM!4Mo4YtIOj5#P zJnKUHudsK)$7xXw{=bXNwcQyXJ^J!B6CQO>UpNG|o87VvgR)~dVhIt>Ee2gph8HbQ z;K2vX2E$a+jQkAF(2qHV zYOxEq2Vp@TE0F$70U|c=o2n@DQuKK2lh~kZ84DW!9+W(BtIm+SFteoQaGn~15bQZZ z&MRA0rOTdmAVedWmz$)AMFv95pc8SF3^w1R)?;a=;va`TT|P9%)4o>O{-(VO(=gH& zSQ5{D$G_Ql3U|k++ZODApb&$CbjnB)3Ea??H5-k5C^=93`GAyiW78i8V_EH21H#wm zpV4_v%1lFnH%ZK^1iel+Zj>|{M~3o@GYuP;hpVP~tskC0dKEaa&PMqDuVNVw`fOtJ zy`1iIS$lH19t|`Uv>a{V(?y|dJ&G;uTl)aF8Bv6b3IkRCaahgua<)(=vV4eF?c>vw z8dcHch3V74rO9Z^W5{UPoAHish_3s%#?H#!l}ocZ19an7n18t#d?CKnPA0|WLuozo&7!}(Kn9T~he|1y6TjEkerirmb6ycxOh#(?k@K}0ja zpZI(|MKtJhl8!|T<13@BO{s`brIBpb-xi|0mNKcvP8QUF| z#6uQ5_8)!gq1p=|;#v{=VKFkp7UOZ*J@j2gLL^KJO#aUAvG8EcO=$qLFWtOll8tsMFgdMZE5_P6JKaxK#07GHy437a)asSNL6u$m(t#aA|#>e+R z|K>zlh08;29;Xw_0mohM$cww<2~X7}WytByV|oYwSiG?@!SUg(cSB6wA0?`Nn^YJi zp=h?L)vyygUeQp}I(z-7Ih)etT2gL@=2oEIZq#PMf?ill!eaDo>T&S}lu%bZ z@w$6#Tzk!e9s-<}rZp+fS)zAfUbT!A!dg!mSyN;!%lZGesZxSEnDw;=bN`K}h9C4* z&&Iff^E_wQa`C=P$~H&F=|*U7oE%%SqcWxOCuZzRCY``5(=*zBK04-3P3X{ciiXSF zNe{p|mYtB;?SshK5hH$%;;Ng6pM^~4GWh{nMC@12A0z5fe+~3GF{f+=#peyfV1&41 z$bvuezjW$BfKu*f#qqxt7J`8z!Gb!_S0eduqe-9iGV;Qm-`ADvgPyaJ3NFVU=WcVwdciP48B~V@66Wke7xj1&4&M`qwq()r7qkd zqvtkQ+Eoo|kc_tPKzqPl2=INo7>4^0b>&&~bj`Z10V&Zqf75`D5Wmp%YjP1)OS@m> zD)qg_US&h2b(yn5GKrBrki*IpEWT|>DU5M=mA1~#>gS0nkwvFTI@WJ>R*|HLS^z5) zZmM%UQ~{WViDU$ty<86>?c&eWL%Zm5J|>`wiC-tmPG)#DatG#SpQ6Vp3X3Lf6_4@z zV>FVkWwbWpT6de2Esjv}Q2SQ(*GYpuSJ&v~s0tyj_=yoHMdP!6=JWZ_wC>oGc^6Mx zuEnIf0S-JyRxz6vLk+zKTL!f{UBLsf`*ozI^0E{frvzGG^>pXQh<#i#M?nyi$qmPN zg}6N7Gd0qad{9EPC;by21gc8G?})9jtvWt@5%(#=X*dGd%?1~sm#1tM(Py&sPh#^(K5oqpUWR8d^)V`l`s78i{Y2(P* z2PVx)#U?ih?vtpq5H!p?)qxE$LfsE95NSVh=vGkxQk;tt+E}gW+$?!N&snOaTw!1L z&3gQo^#x>703eeR%Paf5n{ZG$s`1+IcF9E;ZfHRh^hSo&6>zSSbu7XfW7ldWUoa8_ z|FoL>N{n+1sWk73JC4Z4*f*G0?)u+TGk$%;Qni)`?h%4VZ{mvW8vBcJ9eT1tPdtw3 z=1diht<^t+M17S7=vFl=Ir0sRF%$q;Ov|FNu4T>;jyiY0cD$8v)oh3c^o7Gp9uxfJ&_#rK3orRB=DO0zguEv@%xh3QPso`eG;A=^bqn% zul9hQPKJL6T-qhDwd9`MeWZ7myf(~=pPlm1_j9K4IZFCxNT46Xpv3{yMlU%W5-<7@ zg!wnC4e}GPL9ys)Pp@n%AGB>DrK4+$Z@NOXDG!Gd4%qGG!%cb(y1x9WpXby=bjrv} z*Us#%GJ{W#O{L3%uN+UvKRj(hAGDGQ!9*XLvCj!b8r5~-Zkr}A=@@tLQq zRlLOJ!jUzjX1^C!ys?!0KD=#q4;`Qx|1tuMA-$$PEyEReN3_HERq{lUpV=`dgW>5b z1#JW2Ed#nTsFZE6%SZ;ruG|tGv-K;SMWIZ6S>wkrn$0(o`P@LB^d9Oe&}nz5xYJx8Wourr@@6UVm5t98|nsNI*kv~wxWzp&@%Gd%b?az4@` z!TdY}{8Xtrv!^Zeq5P#Q-S>0RUy2qm5{*|8@pM^t4Yc=TIUGR+glW@mR$Q}-E)#B< zXdMpA3+2ms?9t1iOG>Np1O6+ci6Vedabj?7d#zb`1P)UahFc=Rv@xOY#jn&s7q@%0 zA}55|f_w~Tw(rj4&KPCt2%Id4NfI5wEQNbU@$gM!c&sNVKh_bBkFv@X71EG(M7^<4 zZ=Bi+*o2YTrZ0Ec)wfevFi;eMGt&+dEx~7_Gh(oE@fxkqy|Md)Yx0-PyfDIbv)Z-% z>bHM-*m^m=#}ULj71u+W;q*)Ug`q3s7(*p;OJ7o}MG^%DBz5!rWTvAP>lg_!h1}2# zL=omjdsdiuJwMz>i=AD!z(%$Xez=!frrR@oc*59cx{l#|8bp zbbj!!_^+{JgU{sF3pI(nQLIDBjuRRbf=WfnpRM1MkV-0r{!}#<2f?Uq?FWVxUUOQL zYXCdBvlU6{$I&vVCTzV=;~Fknw1Wp?#&j!M_NueELzd|R?{T;nKHO3l6#aM_tH@Sy zW%5zaMU{$v80D5UnQM0ga_fmxIN()lQdy)nU>H*q$e3VX1x!v;^#e~T1Z)Y@tZRVV z`pd`)!CJCpCZXVG!KTubg>}=6W2zs01puH{Y~xo{9o^dzhPgoP1osLhz)zx5az2a(*}uv;pHBDNRcVaRjOUk5gzkFMlA{5& z8Fodhp~h3L&li(|Qx0!C&wWF=O`I-!PX4T#3rP*&DW^qQqz_r4ZgOsRN|?`o#PFEP zs*79hJ3X(Ps!tXIbrx$4`GCG!5AlcaDJ2^oDH0u%k7P7Lps$;tJu4lwv0z?qC_?L| z#da|40oz0QIAeR~bx~moF;YvtRrT!chSG(U`;gE!*OM-sgA-CFLA`95P@+waZuid zM;Lf5EFG@>`3OIapjmV~r)8_8M$;e!yPr>(gKcy?T{7(XpbMnRCV`trTCtv`HAguO z58#D_Duk2Qe^EfBXE7|hM0S*Kqnz6;`e=RFlWOU~uE>kATZwQWXf+5)tix3&!O;%jQm!)bZ1Tswu;Fx|EJk=^htNtLu04fQ62FBq?!Z;coZMCFV{s1=b#D*a=_c_u0 zQVjE(Ig=T~9@N zaGZRSDt%(4m8`w*;I5#an>8g&V>LKfV|703PX1r3D-&0AM)c7{sjL0muSwm9wTYc* zUe59mE4fR#^bI%Nf)K#81lpVFp6mO08J>0i)k~td#8~ncnrJk{>O-efLY8c=COjXw z8Dpr~97iP>EY|bTz)X%+0q%RE-_So%Tr{{C3^}zBv9#%3wLJL5GZsQM+hys(siT=I zE(atz(l$nXHx}%p^pDrhHqkxtDpTPMY{zS5c)_-k^qil$+7|e8OdWA|BZUqLm`7fZ z+6;WlyrPAWf-ArmD)v+963HWcepUzwbD=uGvIeqw!- ztNEclj{8=!M1rFj55-hByx}aBN+F7cwb?U=116y)tOd*0Ni0m{q%4IC$sukqb~AgU z5hPXbl9EMi3)x>yvQEj2UB5d4KWT;gBXZLjNShf1ut<>$31pd@`V4nO1u4$|k zy0zqhx(F?i+pda%{s6>8SD1%A`mt}wu&%WY{7BWM>u;_O!fr7g3$(b1mcr*QYNwr) z^x`O#p@F$srnTixA-w5j2Z1F^6^1@fhO&0}f>C<6OYKQ_hpmxEeNaugq`5exCyGtU zFynj)WY1@prMZl+CQ*D{vKD&|;<`q;DA1kHJ}Hw| zZ@dswe~#!)wp@}8Bt{i1fXYB-d}Llb?PjQQ&aM@!rgLZJ9wG`)!7F7 zIZ@#kbiee(TGATFn<|fQV_QmE4$wh5KZEMJYF2)NK%{(P9n{0L6c23pZrKZ^_B(q~ zmfJm>mLASwv_W@NaM?Kij?BVXANdMr+(#HcDC#)#=08b3@#WU$wv!RbP)ppxEW6y2 zi-F!s{mn-#oog$k22EXv6_^Oe53WT@Q^P!h(U?M@%ZazLQ;_*)3F}9H-!3AL7=X6z zC@)RGv2fPE9wIpQ)$^*raz&OhsU!aiH&fn}#77t#-%|VV=G~8e@_0sgheq_6vYaiaO zPDP+ZN9DBFobS`zLCGnny%hEZYt+Z}u~#UiFK}to=qlpdSyB(_NaO z)hZ548cfPdcCKoC=t!R|*p=^D)?iH0+tu9eP(~rsV&U{`%_?L@P1~UT1S`72I@}wPzU^=gm=p@#_(7D5I?rZwN|qfOVv= z7V#|84LD=0e$ElUIlBi#x^3zbE3KY(Om!^Rs#`D{%fLRSIxxa~K2zu-b2qVUtBXI+ zo|3{?DGMXyAqP`@hR~&Mv{W)6%8E~=_>uL|%Nb6TGW#AH%G8 zdDsC%?Rg#ji7PnP%SR!Qsx(GXqWpbmQE#okb4gK-?G!na2RZj5&>pz(=z<&^wTNC? zE`8%h!Cqq8-7lmrRHrvD)a*t=Qw?v#i<4?VAG;6p+yRkOqKG$jyP39Hr0Q0!uRTwE z!iOu6NW1CvRc-cua9F-J1blL;g#1@QR3;vV6m~=Ga|$O((Rtc}n;ovrTyuk&XVlh;MAmDzS3t+rwW0r8j8n6_eCD$^{|+%+sZrY_|EYyM^F z26^ykDIGYr%41fV4xh2+8+DUvP?yJ?bqZgSMU;-f-+=Ix05yNLZcNgxa;zkz*GE3T zhUH!lj~=DS)`pikjB?^~@AGKcDx)6=8Q`B_>Zx*^+{->%W2v+dCpX@tdaO6hhk4>f z5y3A}@WM&EhpS_qGGOYk0g#Q{~<3l|HD`JvF%oQ)aX^Qf=O-2mn?k!>TDSbrnqvxfT zxw0;#Iau)qsScfyKmZ>u0IHja$v%GW47_*AAF!mvS=(XAx>>SVd`lP9_}l!TgB1Q; zE(L6+gb8V^qH1*K{XYOoK()W&@s}B%EYe8WXHsybG7oyYymLIPJ@n;hx_Q|&2q`o4 z*x$rn3p0-jVf`>z?2pb4i*<6#U^s@iU6C7skThXb>cJWUk?&uO>kkZcmr*Gie?Fu} z#YZSbb%5b!5>YY<_gqq8e$SwTn3t){q4eqsgRL1sazbY;qqH3Mux|k)4hwxsKJi;K zRt7?!ZdS1?)>e3}wUv`0@X;@*SCti`U#Zs1{WPx&_l3G6m=M*KJkcKZ~pmM}+MSdPX8$`+%D2NhZ)P^Nd!pJ!gp0 z>0)cfAKA@~jrEbbRh{mvh8oOBziMY4PYOSK;i#3AjW8$(%Eu@w!}JnU7tUO*Z(GSIOWtVdAF52Y6!dTg~~O zdnC9aji?cp54-~i5Y+5Y@bbQY-~$2)He7W&<%uS;4c&f1@%s)Ois)_YXFu7>Q(c9) z!dq46o++$+K()Rpw-cIWtcT3!cfTe+fo$xh6JEpTwvVU|!}@|Ll&T(V!pZxSEZU-6 zuG++ic)@ge6S2`A33u??sGZN&O1wa?YW(`Kr-Rr}eOj(!&xP8_781!xMSCyGdRe&;e@6=5p*pj@)-w5;5bNLd4K zjT4_-WR`WVD<{jx$%65W8-MN~5ikGq{Cd0zp+_3R6h#ax-EUzvS3eBFJ67!F7pL!W zKDFhS;-y>^k~_&j-?iY&#V2rnVabIns)hbx^ z3J*?@pQsj5qZofO9vmDW-u+iEY2Fa2n>e8D&8o|6oq@Awdu)7pR*RZ0f! z@Lt-UXN~)Xbrtrg#r}&J^Xh%9PDZrj3Za6>v|j~Br|+4r`joOW!ZFTdU~59VqKM(< zcMsbzrjzx-_zC7)1Gw=Z{GR55`-)3HKUBQ~1E;TGJQ(JJ^N^81eS`Qa{}}7nUB6zL zk^+?Obx#r5d++#tDjqlJtT?CiSrcGE(9qx^LO;lg?DKxtY-k(ew;&|~2SOadAK3Tt z5J_BV`KYVEn(<;ANjL4S91y=k~P0z3ynq zsjh9k2`%*DGQS_kg4=rGtkvZ@*ma6aCx0zX@N%1!$dx_EP)!c{tWo&hA*%3!Vo@Zl zN%YTkcqn^yN6{pyPx2OovWmI+8uv8=qK84k`h|Qagz-zPFJ+~1eK>2NNh%CuQ?F>H zwlk?NF0eLD?t|@X?HDFJidjA}=nuzbtjFnwRI?60UBXJkc7jfH*PJIq1yey?dH`57 z%1$+9SrOs%witw$3u^ga2RBgjE8p9bfKI**zZ* z%u={ciO}~^f6aE#k*`isMcUneI2BC%wpUpl4C37#T+T}#XX!>dKTCE8smViugU zJ7)L4IHFl*7dxSzO$Wd~fjz(DygUZ4e6LFh%^{X*KBAvN9YQ=gNtLtex-lF$CaBjf z*-F38uL>Q^NrUL>sGK&ZO>5~hUzBexMD3DV%LX?0d1s94JI=P^F@LC~oa8vA!^ge1oiRSn=%232=y4cG%+A)hj&tsRL-Qef4QK7T9-QpPeqpyKTDu zRG_j616?Wr;ia(SO_eS-SvjTtNqS92%kOd%^I)mxR+wVQ0ZO?;cc;{6G;M(npCsxN z7mnE4&1%~?eJh|W<`@9qJ}{~rso*LRFyv+AEdVVrm;j!O(c-zjqHr`&V1`)V>?WM= zKE9Ynu}{tow@-Rn9ImAMi@0 zg|qpI@URR%le@yQ*QcoNn=!+n#am1EYx~$4qs(|i1 zUk~h9lqV@as-b|Ycj9SoRJZ=JR%nRJnokarHvC2Y$YjAK?<39*_8T?Z6{hRXmTxV~ zaj;RX7cFww3VOXBsAwG@X{3~8SH%=$ZnDmgN)TAb^Sit$d;>%V57)cUc+!4BhFeqc z6(cZ;;N^eQRY%UgTv&gk_(JPt3C~M~gSMVvZ=@H>?AWf|;xiSZsEOrSw^<@b>RefL z7P(VvE;`5^Ku$u-;_}mEd_<=>JJC4Cq6A;h8ZFzk2la<1Un=R|WkA7W&GdEacXhuI z%JQE$2Nn#(UH}H(R+!A;Ik~?wM_R26 zrFCYCoTb|;Xzj(AVdZ+Rr1OUL7Lq{&k31sQrj!(yGQ3NMcyzB*?e77Z3hh47j!FW-E_Zx0+Ls+z zbXgOTk!{<0QOq(~#>!t#X9B;fYn$M`RH*2nL;n!MHR1|xYJZb>?U8rk)eoHo!SmSp zLhY%Qk#Td^iQ@UyF+jAk26_Jjbi)AfB`JgXJT}8hop?xCJt?Kay&du66LQ*dnIX4J zATkSC9@wS>c=B;c2qCd=5Uti`o9eR_DZ3(N&>i)7+Jm+d4fAeFr(L~Fo)Kx*D!sRm zWa1RtbHLUoyjGVfwZ++z(1c=}9`(ZtX`3kqkX@)#lL~G0C3do+;gQY}f*bmMk0su@ zz8fR`eA1L2CbocXXz4%<7|x*9`J^nyB8f!jV@md{Uy5AUlv~q4S)_zYxzp;6seA6g zj=PWiA@RqQM+wmca0_ElK0=Ei9d8Z9Qd=;1MaYs_0J1oH`=*AK%9HKhV6!OgCt@3v zoLmE&w1?(&SI$YIx3B8JzV{!;Y7n5WI(t*joHHA{h2=gT#9(CzLRoe;nN9IF zaH`2~$p_r37iQBND37WSspOx6fzjl7myOVP-`CY)osQna$GZ@^nUaNSvvZJpj>Y>r zUewik@!nKfUxT>>nTUqMeZ-QUyzC_R{y9I}V3-^H0<2&@Q#K+8k<3;TS@7OGfaF05 zLRXW*`ctOv&M%DlS$zQo^~z`4Gotrf~m*Sc*rF!2Ud zC8n#)Cwk@G9X}V}-x)FYG9AJIu|6T4I)P`~^k;2Q)m_TUF3vIYpkei1LvBXseNT=E zBjyWIs=dsnnG?VhY+kqx3!M`{Ep0N_aoQ9*+nu(nWA8%6x=Lz&LGg}wWs0&(LC$V$X2OnkpKM1SH;ofwZSx^TUzGrn-8 zahJ6iTBtcl1y2b#XXLxsxvtHZ`S!pq{yy^9WD}*7=2I=Qf&-tO^q`3d3m>h}P9riO zg9#ZTWiyrg$N`gC@ie@sY{V8h&^?H|#O6EkGc(*$RdgC`>!aS^8)_Ms8sIJ`;{n&RT`J;|9=>55$hRFq6xels$A-~&D z-|w@|!0bwkpJbYlYo85Fia~$bcYO(%cNB%;CPN>RVLFxq-#c)r=2rBurXrM_guCVy~f-e_cPT|~G)mR>g zzJO)D;yxOR7dbl5SersI6e({E6bM2bAC(ACk}YNvFd;vD7XH6pBqD#&QdInZUew;b zFa+)T(XQg?hbZR0le`~=XbWM%CzQ~W9pY)6o?@kg8ANdm!@lF>6u`_|eknE(r7liN z6@L|OIOY4I-M6f)0v1Cy09lzlKt>yeo7+oc@M(aqElW98e={MTWS4c&SRN{?t&2WG zg~?03`zj@ESQ#wj*=>yTk{|v^U!$5Ts%&1FxZLWeM1PIFxpSHk$ay3t3EU-MEU6D7HV;VDUR!SO_q~CCepAMYp7^KK{LOdAtU%w0VB#%w&7be0P zZDVXQXzszAV(F=-+pbvvNGvxLKF4Us`wfPWt8CwiW=}Os#w?7@3Bw-!NsUp&O9iw^3(%iGE z5Zg;7jwVDSsXIXF&8dmsWg4e*u&*qeug>62Hfv{F5zJl1khZQa(A!l9;N9i*4O61e zk&-V&ZB~I^-KDceSf^$QeuVO`QtqRg5g1K&PEB(5mI%2R)zmmPXJ<5O`VmVa^K{*F zCstiDJ#s|g6vWDd%l^PIOwseSbU8i~DQb6tgpA3zaXt2>T!&QsblCi<*&fpKq`QIVa2!7rDxo9L&r!*B+HIgB4;MVh%g;Di z*A?m6nKZIjFL9))F(--D^m6a4o~&LU>%0Jo>c+3uT8Dm?xU$uX2uKp{rp%T#iRDJn z(OU)2!D?CGr5EVA*ZeVq&4W0M%E1Qgvij(-g+|nJsCm+s8*}SUyf*dw_$8Q=SJ-%@ z1nrJl?dmNn*?N$oo)w^cW61HPCi7{DKiw4ZHOIfN#9bK)SL&;mN|JAIto7X- zH5Haeoq)F!?DwsYG%8$r_lGA`!-1y8Jr*hLiEJd?)s@I-B1>#Dy>kxSo)V^_zCMy(Czv0%Vbyz;&` zGcbe;wx!G*mw+>SpTIGQloOdaJ#{Evk`qdiizWGb^eStyItulLDbtJ4jNEb`&EMSr|6o`^Gh-=2|PH6*=6xCDti;OU_ZZ{`q3az3lACBdp`?0v8mN`@dwG=lj(e&xufWX(aCu?$xn ztGe&zM+j3fMQxP+#GfbrnTJs^nv-Dz@t++g25{g+T7kG$+Jxli&}dSmC`*S29JP;G zY#Yd+jZuiFY?zsTs3`CXk0(at)^>?p#3FN6c;9kWM*bYZgJ=+ogPu)hgLH1UBTSHo zlU(G%XcXNxCD_1zZ-oEy1PlsWpLwi%p9Y43<%U_T;AQ!3@v)K?!cOJ>aDFHtc}n8I zpv29B(}*x8IPC+Vw*iSkQk};Zd z{^Hka9xk8!bq3yHr9HwFpIVJj1k$24GzZ9md)5&~}) zL(&lw!tnFDikCIxfg%b&EXraoAQ;h;nJ*|eWvsFM*!Jt2R%ftJ#k|SZnKL+%ZxPC9 zgH*aSJ@h$gLY)Az6|JbzrTc5GiiV#d+!_ILD^FWeO1mDoF)#^j#MSS__se*<6<{mt zB@o8=yyBy~U({?*Ab@<4DN^~?ObE&*S4fe(HHaR*!jJ5RPVe46RDR#B=I$0=1v`XbWGylolq3nQ)0cPhvx6)>Apd? zY6x#X3Kjy^V0T--U)+In!mi<2E;LRToj1UOs~NhZ4sGYPLeoIP)3v&j4h$?d?1^$~ zMG-5JBBs5g`j#~3mJ+F)4`*_5N)~P!GfYB1p$i+xGrh0>ZZ&onYLWDZZ7{P<%F(LN z^)!=JRV{d!M9x!CuEUML{L(#~k}o0kdV}YD771JWQRZtz)`*gIFPB8+8_o zf1?mGd0-R|IXb~R4#L~$nVqPUb@RnB)Alc)YmyORRNqM2`YgN@ZzeMNtwg=xO52#qd& zS=p_09vGtTT@>gr`02AgK9()IGE7$o+63#)~f1rCK`l;X`L>%;sZ7GNs%!OtiKQws{@)+mPhUfkxI?Tx{m}#nu8xW+&UyMM`o)PN+arnFm^MCb*i_r zH%B?}H90)v^LE!Zq*p9GUGZhlFOBDYz$fmL4WxQZwK7l~r3|#;;NJHk+BSvKpnk35 zjQ&RQN$H(ZCAp3`d_0N|ce4jNBRQ@AI=;I+RTq2hgW}4_{7O1}T>wl%r9kk8m+qa0 zJjrK_im-$XLZ$WRNBcyV>p<~j+3tw=CSv5~L*4P&_Gv?ov8Og)-5=+-u{mEP42Zmi zk2KxS=VNq`WpECL1x)6;TM_%NLO54}IL3N9y|Aa%7P1Y|rnhtr)DArTW^VCu zI4_Cm-X(?n#zJG%PTm10%&HuO_`lSY<)JT;-JV(SF7IzC606 zV{|+k!ua)&XoI3X-$4gdd27AT|MPmAbM@DGh^XueS2&u;*#}$$DXEdyHEm2T6Zqu1 z1vY#m7Btn@H4%TuL78hCm83IbEH0d6G5T=NqKFy zP%Jemj+xC&MFZLOddm{nP)3&=2GwTzMC3Yn_wgAPE80tSCL#>v`5gUCEM2nzh<}$W3w`#BLmhj7zk6%smq?#0 zW$h}3J3H8rLf~RMV)(8s+)V#4K52U^rE-h{D9f|EA{wm#lVu;h1!0QU==#;GDl81$ z$89GozL@O`?B-OMX#(I2c|9d^L3i*jwS*5w6Gv^UaV%E?P8~#`#jI0hIt%AP!i}+3 z6c#bBqp>lg!cXb3R>V1Q*jP53a#AxueC+;6wkqcVOIDAUpO>+l5x3TKmp{!F?0RRS zCoxCx81uLyBNuJn^?t~rsJ2?W^+*Euj-+>(R8K7ap<5|hc;(RKvgCKa5^&*%bz82l zvO#2&p}~j?BaH(suJ)Zo&DWt2Pe*%RZ z0J_GOT*{()rPAQTNi;IrIS0Xm=qYv=OAWY8QHu5l&UE93;Gtu_JJIDm0}u&BEF-=7 z-kF%3Ej1qx-a-3}fwJW{1PSE(9SMf`7RT(x4WlF!QfQ+=;FMs@1?6CotJ*cJHZ+P(24$D?NVN%4K zBwYJ~u%h+5S)r^KJ~|1$7>e$QWPybz)am*rR5kvne~Q`0j$gFoDAwF)CB^E0*H7l( z7s;pI^<+&*;9bV4@yy7aslv_YoaOkCL-TSm3y=$NjpNic;MNY-`EgylHnBL7@(_Jgny-k*lRi?)O-A&9ud$t$af>?L zei;8H=lZZKPhjH8a`U9$KiQl_N+)fnrWA5PBjdY6`Zl0G!Y{OWNFB+Wo_*Wex~Tk) zJn>wPWD!a<}RyopO%RhWgc zeR_lf=|U3zgvGqPa)_qO>L-}8gNAC(?K1hW<`UlN=dXL<%6s^q*v8`?7cIM50v=QX z77J*;AW`-8NoNDHJvSHV&#CstsbehxAM_liAXJwUF}&5W93(Df8w9g}f-Gs7+5(DS zVGngVL!!o{9Dar0TQC(Gz9eX9(|^AOD_=-(?(eH;ZTm3=w8su19Y5)e87C;b2t4S0 zc}`UN_;&qJ$NNKDHbb5K%5eXb&g0KwfuQibi1sNCsRV}xG7~?fM=!SN-`J|r z7S=##MJHaK^q?!c@H>|v+J+4U!s#3IV6;FEzT0YbJNDE_oDqd7MY!sN6xls_7TTI! z`?1(wdAAWtP2hLit#}Xl53G62vM84uMsD zd;4p=OJwfY3*+hJXF58`ZVGA!sf%7r@wClwrc2)CV#2G>jaPL;GeeNt__Gmnee#kJ zZm-q~I48}8GSG}BepR*^f$aSU?^F6zSFpwxEe|^HK7FJjT0mIZ@hD>L`W15fa!x9I z)s$cH5H(5*!rLPDEWoM_M1q6L&%v~2BC(TKV)8PikvM9+sP<-$Ppiah$Y*TlOD~h4 z8cO&2^-Hv6*HN%VT>k6#==4M$<5Ae{99sOn z4h`eW@?Vt2p$6jMkHn_m?6S&FX(~LQq!N|u5&Mn_3nOI_`>mKmRB z+NegFHuA$ZIcU>#^&R^LnZb)N7gA$}5!$zu+n`J*s!EDBbDAH7AzJGm;sl1#T7|a#R56;a%C}o9w^vE|BoJ2sDGY&hBn?dV!D0c(QnogTR_589^t>FD*dGF*5Dii@_WL8S zAEiM3VP!i1FAps6({HgZAYH{%;76X=Q1eO4Nm0*X9UbE3Ig&@epE`7(#BMTQZs*dz z1gv<{-^mM=n!}-=sn9SztXtp(i+aRv`nx~Im)`-w@RZ)n-Je6MxQ0N`=`?tS;6>N? z$_)m81&9g42Bo2h(p+^L$Gw^{+ZsEaR-Y`~T?$Se!A7WaySq}z>peb;L> zj)Mmz(EIB+#Ljvx47SfSIrEmM#h}x|+2rCg6QsetumyUu`UOGq=SJi8r|_suBQ(O$ z=0%XCE7=sDpTmSPPxR8GKVw{Ah?E`W%GWA#bLjPhMjEiWD}}c?Lh4mIt!_)f9vNog zp$hnWZ%V&o!(m6E3NntH(tBR<;NnLu4D@Fp0x zRh0|K^isXiRgcQ8aE^%s-jYRqX)jAuUwCOYjNH3Sp{K|0k#7}*#O2kc7jbfL{nXWG-_Si2I^^iFn$cuqbwQAQ`#ZTe&CDb^pJbq2n zN-n|m#m94_czOQ5yKN8{4x3+Wxg3tv;!9qP?0bVf0_(+L&8O2VWYN0rcQya-sel@A zaXnuj)RH*!Xs#iGd*+cu)>-?G<(8+OXn`M(eVl!t{bIkmY@N7rT%-@kV{4uc+>~^w z5k%}+d7R%6pX2-yASM;(@Nu&SRm-GoorFCb}*juRh@njX}ExR0(1$@ll;KfaFn#KaJNJqyDXo4t9j@^$p9Ae~%r;zJm?G%Q z$Z8Sbi2K^;1*=-#wh!(J_$J)&eR8@|M4Cp-R~F&DsqS~JK1ACBL~w%sj_c(GcWscO z(WZ-0z_>V8>5_btZS$m!@SxCysQu-tIc~jJwZq>LTAOkbZ^7s5mT@)6eb+M~*3=CYW0YeN0MAJ9%Lj9cTD>#41c? z{D~@Ty~&(g>NGG8Pax-|ba&jLK+O%9pR+uP4xsk;-2-*UV+z*|@73znVSXcR!QprD zHinvPisTq6l-wkt)rrikHf8u<3Z+9E)0?_%6Jj|>Gw7}0VrNL|9`?&i@>zqH&r zleJcV{W;1&zD~XYbh?6meY%x-@Ew0VH|u%?J~rm77z9UYVm4>Un+8`nj200mc4v#U z0LNY9qvs81aZmk?P;Ag5;va9QI)wXP8_`BygzQx0Mxy#uDho^bX`S_)%>&JN8FY^b zEE(qIB((s&n{(z+|F<3L{e>p(hq>8Va~H=a>hP7%zRL~&FCPVFJwlQRyH#z`W@ISH z-z(JMQAe%bnF8gbz~%Jt*=XnOzh%UhNYrm9L9?l81xqtgeyN!WEU|x!4mDv(+497E zGV(jmoW*91F)YC&i0ukjhS;0!@kGPeG#}m|W9vmXzh%)&%iaF{LBd&JYjc#yQg1L8*4B%o-A| z))cbM36)eH@rC+(?VG!%ysO_27jdrMi=onIsNLzNAV(Z|0Gzr_oB2Hmm8e$z+gk~JwJI?&*5)$1AV~R~F6=%?a z)c0w%%{lF8$izBKQw_7~2Je<~m@zol6O%t@VVhvuQ^b$e+bpnWB@#uv+sd$A)D>cN zT=czz=(Y=DD}V8;QeXa}Uul`gGRyffiJ#1p{fkllAzp_ym4*~TTv3DZxBfT*Yg&F+5+7Q3l3LpgvPDuzWE`jig0c!FsRT^!V+)6 z!3ui8L@{w+gVA7Ws{0=&FR`v%FSGJbh(>0RqjRSux%R(n8(Rk;*x;ci997#zwc#lQ{j}pnKLYO+Ak8Z+Z(~2QG3o>9M*Qxl_)a z=YzgB)xzyMpQcDUU(z~5C($Jb>c=W}XsyF9V`y39Jkqk3*&nS);ZTHKfzTa<#1UtN ziISY-sMqXxgJP*E{ypQ_AaC1$=jf7#IA{Qf^6tKUV+$=??PW0eC8ppk>HFiE+Tmz4z5bMYsAu z5{*Wzos#*L{9{mV!$K+gy58dvk0dXRXGp&SDlLT?N21qsUsS6BubSmQKFL{z=Gs9s;fxe?)kDIZI+RK>RqUA+Eah(8uUTR4O%&3y*@=mf)W0A0MTJ&n@yN zB}Q`Mq&m@{mI;4!!&43<(u|+^JY^|qR1!L-z`7j_DPb7cK z4F-P&hzY_5(VSGg1HliaT+@ATs1It-XxMEd3~yeyX&8X+-D{aEBM|@J%JmO+I+U2v zLPf65B4_W1e(K;L&1eN52=_8GnKdL#zXyw?@y9&;$Uq^JA>&pd0U>61)35iw#Q@8Fq5QZhweO3a|zt-#jby82nm=Hpn;4*8p0GJopoW?MtY zh%AIK`BMtM!QI9Ib_+#Y86zqfeoUQwU4FEr+3G%bIKXWigX;X;HgZq!f8+DK33y8u zh8{e((eBkE)k%y>Xty&!rjW#X(&DKv#p&Mc)K(UHhjw&cqAA!w*I1@>HUv7Z{;Wv$^4t0`)en1n=_LjHMs zpa;yjGk*pT{vrQI*#0F51gu(!RAaL6E72p>f%37R0p}asDA0M%3O)`shD_4y`j8_O zO_`@2+qn<8Lx8N^ri#|hJy$7gfgqCUEu_#*_~x2mQQ7eZV5;h{p`Ly|-N41}VD^K_ zHrb&sU$^gpt7P^3fY@y(qCKC7TmT++=?Y}&QgSEWpZQ@&_fREl;ooFI+s`LawYa(x z{(v)t9z1nCZj;M^E5RV82pA>=LKURt(iDa&^lvwzm{3$nLzkCgpip*ztfP2Pvke=( z-4cq#gIS3;C-?KIK=6AuIyvlDkd)m+OfA{%c_vrMYb9^KKB(N=|7MkCW=#u{<4azC z-}cAitf_FUmL-DEdsny!KAaVAWk-!B!pN)adR|#in|>FsLc1dNgt3sI&_RQ@pk75^%c}G% z%Bf7La^H>cSF1;dun`Y&MRYBh4q^Fe!L+1njko=U7p2mjIrAaE#^M@&92ecXOM^1> zO~CS@-EeMvY;DHC3Z%ps^j|HK&+24)WeBM4oHhz`8<52DnhBY?K-aSl6R{DG(V~QU zB5)r`Iy7;qdxz2BTY8#9bT9e=;E2#^9MW@by8`wQlb3WF0MtnZR4bh7Xp(Arl#)lNk z0kPQ1RTuUC?!iZ2+(i?HCY(x+|L`Do@YJ&(fQ&PC^PgO?gRrPj<^WX&6e_@%hJBz> zRmx;izPo?`s=G~vYO-FJNux-LuLOm~B0JUMzc3$w;RrF!@EDpAKtfe-YpVAt1go}&`ckxX9IWr>*)fdOx9++k_5$Qq7a zk@_`-YKnask%}+KcSx#67GYGAIklDWcYPxz=3c{jP6emM){`Ris6V#A3g>#{iTBsp z<#@WG+KPyH%!i0)*hX8d_7#BD6$I85ZW!uv@&j1p07SZbg1)TH5J~PlLSUogxGzdW zn(*?^9=#Z$0*W5VUi5sh+-5HztO58hi&1 zr%^yN9eNGba~}>lUHnCgIgEEl?q*_53Qi23p-qpbT~yVU1e{FbA_d6y9^wXwB($pK z^VW2&tLT^-1aTR(2r#3W2}w?duHqJyB0cc@-u=eIBR0`FWB`5>(0}-58ojJYjWzzf z&=f-tP#eXFpZZkbZw9gLGVvNJ$&h7-<}#mb!~a~`283ziRn%Zt$2_rHa`o<_P&rBC zhI;{u;(#yxDkS(hgD7xaieQWSLIq8szA{YA-s6uK+#`2?`2K;oC<2ZqHKCc(hTVI? zOlyNNl*nbl}8WY z6&OCVB)T{K61RHf!!(qw9zm#<^my9Hw@3B_ab;t7l;t7eM1A&i^C!RqA3;`PxcRif z3V4#w>v=Xu?yFN8hDH3f_u%-fKKh=Wd7+IeQML^HMoM%*#Jpc@je!09X>Y2bmly~R zH|hQlCNrU$)$&vC|TIR_L8C_fvdS&+IvqWa45pPbj#Eo|6I6@3*5U+xI!4rmh(cn z{A9sDHY|rBOKegF*R`Go9B^K$*7m!s{K;lzEwv~l<9V)_j0FB+Q~da!pWVUMXf)E? z9j}aRLE%F$(M0S9v%~coc5qs(NzJe4q!q6p?m3B zaNuI^th?z~XOkWe+2cZ_@%{B?&MoO0AGK9V1vcCG&R>tmZyLo8!|gZkZ3^%XKpmap zC^B!my?xHB55g%nE)}Gb*)@jM6|=ZaMJv9)MnYlB!P&P!eU8Yl>)SSb8>2UFX!x$A!DyErzr&`5(@H218r2lmaq@{lh=J8xbmC?8iQ-87cEyNJ{D4NsWf{gFUgO@QnNQl(uMPc zi@E&|(JwK;WTV8eL(#REaj{&Ap z@aBUf!VoxL*Du~l6I~m)spq?QYc~*l)rcZh5&pg(7E^4parfF_R&1;bY8gGxS4lXs zU#cFRrHc&t@XZKtCl3!m@4-85`@_jFi0ebLe#OKPZol28zu`@ocU^Kd`MniCDW54z8SPO;~#VJD`JN8<{;lVnazCG99_Pir7nnSU)c!+!H^ z?3J%3>AMaC;?na!DsRdI`!?^7`@M0_rGNeI%~&Pp6qDKWW&O~SXpnCC{Sw(p$08aF z-i_}j96aGgIKZ!62k!i=*F$K%uVul@MG7p`Pio4FVtE(}NOQvpm2TIRPM-sgIPRJ( zFSL*F%nEi|WWc3nxE00J{3j`Pq$$;xJrFq37ZDxIAUzeXT>-by@c3Vh#6f)x0>318 zRUi;>UeqcGmH#_hMUDKgQc+z5V2Vk4?sT*OKkBnpj)Vcc(X5@=ji_EL@6Pnk*H1QC zC#j%!YuZEPu_!v+Fx!HIA!ex{EN93z-y+&ZS%%?#1ZibRIW-bief}=2!Aclp$eYf| zLDakc*oCxf9cTgLnKAXjQW-i? zxrK*^0Y&57B=(Q_4Lt2%`~hcg+U6q>540bPUl_uxf!ymkYovaq<734CHf+DmSQZNo zp+NOhU26AX^f%yitPvPEqJw@LLQ+zQ^+AF!w|ctkF-TIhCRo*f;g$}4{g29&Z*@a> zU7UYAWE)4>eD_-WNDi14Lk12=r-aVZzUenzecRll$dsW{e2o}#q2Qf8PGf8)Md_$j z{hBCyI0+nPDdUC_S|trFXA8mzrm=#n@(06^74h7i^*ge2dw%AEh`&AIB3+mqD1WKC z-Vn*UgF+s!zpqT}R)7#PTj}8e-cTJHy~u(D`F?|dH6RD8(nA7g zQqf*K$6Q5GlkR>7Tw}>zc$0!g9)!eT(71bG++iyHh}pG1eBw|SN@g5)OI2)tg+23a zsorY9Z)J%uiE=`EN6uwAa0HD-Ey$XEhunA=E&F$9N1Hb5wc~Zej;r9qo3yxCQvs~T zKx2@dY#qo^e3}CW}b7amc1x6fDmC;sx4c2hAW^vc^2mRJ2FjZAK~U0h*DnObNjzE zO*a`)%h;)u;s(_%MC0Y6fnp$klHu(vqTh)97MF6 zK4X~S1sxxSVUES@lz{%q^Bu=7KzLKps)ze@{8;!@R}(k7TGB@<)@3Rh(+oMS&S~r3 zI<2w8AEEaPh$~+IEVXmE!iNzpD%qdvxi-$jLDpSxZDO;7;i2gO)fu?^L>z7>E`p8s znmrNtIo-4;ai#{Z3|2jyGyLVhbJd#npya64Ax#IdN$S5*$X^VKdwZe{j#w1Ez^Ppt z4H;@Yc$cn7+RySFhsqL#D|P%b8KZZ8e&t1WXnm9N_xENB1gD|W>~Z;1l!H83#FyD*k9Q2Z=kexV<6^w zLwSdmk>*G2_TcpFq1Wt&~BG|K`4 z*pCcNY+b_}kro2L_a?d*6fCW&a2<2@s8-evKP%B57DS${4h>2Wcf#kqJ+EILuTvvK zvYKi^TI1EIHW1`}#F)cBH{b{jxnOX+qPm23AU)nWQHc`;L52WlC@rw@N79=_oKM!= zIo=0as}DaRKq*v?%LDSgNAgHR50&E&Che|}XcbZy6k|BvJxpbxgB2~*W?j@TsZuXv z45*o<*NQd{30Yzw-IO!C{>}zBXv46JrboPN^s$Qj%cvPl(F{Q!_>b+aRE(X&wkS%l zWw&kHwr$%s&bDpawr$(CZQHiq?Np6wyhi;(j?6|ztTiWIg9Da6NYY~)_5==)>NJ{3 zy=d$gDUNF#O0zO-~@8If!>Fho5Dum^o(?px7T_RW?*dVg?s<}4kqB2 zdVB`PylJsX44el$^vyRxw(;iQpTB7WE4ko=Kbfk1F(L9e-x_&KUq9qK z{HIWb@lQY4j)_PC7X`ENXO}~5bCJBP7x_gws4TCQu_oD+rkv8uRDECkYr@eMOx(HQ zPzMHGVn7H9cr>u#79sO)st%sth0>tNTGW(hd}MXO?c`~`319Fmji_3suvZPRZD~ht zj|z#ZLxO*}dgyM8C$evTJ8}Bk6`Fkv_2DGgUB7DkhF0Fc6tNaWNl~xpN;?T2DL6c* z0$;^o== z_TBItdfgAJup$U$+rjTFmlbrymLjt;5M?Qq=Cy(`pcfYTe8h!M_M^uwqb-?e{F)D# zG^oE&O?Rey@b$C~uv~sPY91DJEn)hpHx5m8D~5nO&m*vQz_oGC0wPZ6-{KQ4pOKA{bib7HS$vXh!dGw9 zSsfLJ;x|(T(oW=Y*{+TLso3EfpK2gZSYKZsnOw{F+9pbc!SsgrJ-t zn#~p#v{3O1&?nvur}>?B)4RygcpDi~kSqn>cD@=xg}ajdM#M;3K<+7L9mpEGLD`5 zTsg%ied0e@lkg=0t6{*{RrJ(t8nOmY9inW`+S<<=pZe$kX)Oq^sf#rW%hN)kTDehx z{PNET`7#Fcx3_R%J_y5iAcpJ>b#fg#inwW=gbfCV!{K$G-nOK_S}~tWvLy_T(aM-| zrZh=>uxbu1DCd%}Vj3qSha0O#>3soc(Z{hj`&4f+d=o9utZAYV4LJy-(WI55O@IrY zKXOxSmhS%1UvJtN0F?cC{!$Z(U{&hN>ekLn*jm#O?d9IRWE>fk597npCOyt$pekuE z{cwii*5UL;Th`~vB6ARr6EO*cZde<|Ul9*$@8-tgIjmFO4wPRFyKQwC_^ROGvpLZD zNQZ?54!wfk;jm+nv(E}V8tZQF(A|SUnj#M8!sdiFW#I}yL{qU~jY!cT9K7(-qe61cx+l}ghIL$hFEZj!dHhf(O%h=fh;Ctm-9r?0Uu^aBemcjeBJjvXB zgq^!J^pAG>ts0lAR@o`i}uV1}V2v1@MV(y(yE^4T`LraxrY(h<15xz7mg(a!c$w z7arEkvEx;9?LR40-Wb3tu0+~8uWy1@_QqOjm23ASi-pq@bb&gL@+v`?eBE=g#X9`D zP5t{k<@&Iq6N+aW3^*`2X=*0O2sRHuVj|uv?Ri-qp$#R1Puo7ahi2)NDi_WE-Bzqf z3=2FNz_<791m%1O@mA=cqczH#agFG&u3bwRxb0yUf5(I}w@5#0tL$9Er`eDo>|7W! zy+K7J#Grt|b|GPWtlbEf^m5xVHuK&1%DoqM{EYJq81=8;{`fF?JuU`1=a_HKYieAQ zY33Z6mg(H_L#1Xq)v@1HRcd+a6s2*n*rS2;T#}E$S@@G$9hh|w(9E4h{stsv&uV(@ z`ffK?>5bo*@V&8IMs#X*g43}>(cz61C7N5sB#=C=$V`5rpZM(8a!_3ANw?m90Axke zOT3Tp4X_nM3dUOQTwJ&XFJC#g#SbQfAu;UMXK0pgAQj1*`SLGqKs5jD+NIM7_H)SOY=y>GK^$Q@h`rlDc?iuKP2mX@jzE)-y zKI|ppYky&>hU_g}G;;800mC*|Q-o)Ej^tuM6+yQ4KIQfozlLyK zYlvgAzTwrx0OElHcrA_@q7?-?B;rJ3DDlgPg_-nxmfJ1`FE#t`lz1(;17YZDVQ?ef zThN~G(#X=YK5l7UfXnf!a&PrH4e?{Y^>P)F;OB(!eRDLRnrn7uQi^5z+)6J%Z^Z?~ zb$auSo55swvyf*a4k)hdtf@bxfGWMzu)Pd7Tk_+Z*REC01>Po|2wpO7CFR@oQ)3Qy z0JwYL3P}3h44C{**aH5Epk^_{QT0 z{&d)Se^ye?tOfA0lM~h{MUZJE_Pg=IRihRL(oKb)pYf_mARdl9|G;`)aGu-U^3X9T z{{w3Xs%l+8{v!1v*KhdxikQ)AFMDISj-pEBx!!F#*4_VcW9_?J?-PbsPw*4^>=kI< z<;76Uh>b7)xB_?bJdZX{oCA#;s53hVL>gA7Te6w=Iu|*^z`NpE9!lX!@ca;uk6NT0 zZysF4hW3yDYRjK*1FpXkkq8ML4v*Ap^}9>C;1}~$_}aRd9`A%dvQ)kPkXVbQbQ~w0 zmqEcm)tEZgs*TA)Tv>+COYx9T27#>fhvw6k6y$_F?cMLfFVPodWVgq{jaX8lv$&a* z-Kv@LN^&08S_sHhNBuifg4Vvi>nqV6yd+6$CMRwGMTrQjRfH z@T?C)fF=nFF+;((#a-w3&VE#IXQ?C;sD||@7-g*j!bw1bBRQK<@;iCqT~N1nTyGIn z%jMu}?{FTo)QUngJvMxbn8>VjG&?_K+aP8h55h&}4L@$-upbBg=bONAG(~t}aY8vk z>*S7WfR!7F!xDlpJLiMimSe4-=R0OIH)8@Xy)~eJcr1()lPn{ zAhi3tV}0h>UGPO`#jAcyANrXW)Qwk(QHoW}+(s?beg8E5uWKNtZekqa0nPg*N&zh9^qMT69}CW1uM>j*F-&0ye2 z6~9}hkTMUx<@X!u->Ka?P#jVw!*m|}(%WZG5Sdlv0pBmBvoovVSh>-U1+wO0tqZ%*J6cJ!>qzfytMyP z-edK2_y7syp^+SuH}g+Gl+lw0l)AC#G7eE@Kx@kw#P2bSl#V z59C|a|DucIVEkWnag3a7jQ__E$3(!$!o>7{?Q#FFE{>6vg@xh&Qy16b?&Q3EwdrcT zm9gGx!yOYtmQmbbvlU~59kbLfXj~R!<9D%p_m%52%k}4LwK{EAo3-Y2l+h9zD54o7 zI6S>Oth0!BKHWb!J`EkOuF%rP4A#iN9KN}gIl+OwrIiJwftiu9aX>*aj58CHQ*#q= zI68aU4M1l`?Vnij6xK!TpOTRQ9t%WZ0>|R^t&j;Q!vg?yIy-ua2Y33PFz%?&zp*EY zIVhrGDQpwR+ya)R?86?h$?e|0xwYBx7da><;6T2Zf449iK+{+m+l!qX+sdDD9)@75 zydOfL+3gEK3%L9y007yE+E^RfzXw!cM+ZBGf&>dX&>BA+S9-AGwfGB7k-HU77FQ-=rS*vR3rU2 z8?Yb9p4H8{@i*y}zg^Ln0r)#=Gps74sAoqX5@1Zq z)$c*MtzeS>=wfG;=pwDr^vbrjV6RZ-52`l%22+X6;lcXJu%{NL}GUIo?4S5`5yGsW(dMrWoIMl!UmJ_ssGQ%&BsKLE@O5-e!0f4jasEYEK~qCh6mtJL z{l?hVcJ!rP;3)tjy7(ABC(5t-$-AG$Z(3*h&)CGXb&q%S&To_Pr~o?ooZs^4UYw03 zymOyKKp9WTYU*Qx0 z?KL2eUlf1(cip9*SiompNXf^#8nah^4S4_bHc+hO!tRGLL;2s|^_JgpqH{xwDoZPK z*{_|+kG!@qx0QCBU)wJ{GVK$8aK&HnJA6z_QgKUHM@C~yQ^m?&%a8W28yRALNe!oe zKuAtPMoiL+UCd}6Xwy&naopDU=bXu__}mA6XB;7G3t%QUCm=`0pHhY&$}zvWpYs8{ z1;7%yCMT&ZZRa1CpkIa*fb7jobwDbB8l0SeLs3x!IL_0U#(xqyfNl*wvYqMepSlh} z21cNp9DW@DIJ#Lr0BA4qcK)6dBQOTZU&Nn~_6-0T%fB%9b^w{tKcQ^^vLru3Jb@atzZ0j)c)gp_;_k{5i{QIML+rPkS{D|$pz`tGE6aKd~ zed>wty4Rn%kzaH*C)egS#M?MHbp z<=*`{3)+H{UZfCa)OZx0XmVAJz|BTTgsBW>-FJ>d5ANbqAyGh^U(ICE*T==~&t6Kv zek7Yn1DUP1nAhXW3v6c816^Z%PiH_DoQ<(u`S*bZHFGIYB1v3EN`SJ-L~H)8MX>%Z{pGI=10B> zCYzi^feO_QniOHZdMG{j#7KK~2758|8epQ7DsC)JEh=5Dj;`QtzMq z10?QJfnRd(m!@*;S-=As@;(z)-TlZ<8*5>x0~gA4NSWkP;jSAOn@tIdiG89{4#e4 z>T=3PAD%a_0>@TH3V6*{oFVJ&fV%~0hgelihy30#Q7B5nVz|S>FEB;|K0Oe>mOs6i zhY?>T#>qvTA{8%Q$8DDrRS{@!q?%>YU`9BO40Mw<;9GZvxF}e_d%4pPME9WZfy3jT zD4Mp5c3HEA%y40X@5y!+W=K4NPjObLe4kNtIc)Q%}(o>a+wLXvk$_7skUp? z@;hmW^J$9CP&Z45AVHARp#?+iz&IXBtTXN;jDE(HSLW3`=C~5)4ru1f)b%KWMq@&@ zbh~WBv8_*O8@^nkj*B$6M#2?)`dT&2R8#CnaF2y;tF;agpgb*YGNVm;v-4z8!DctM zW$(EnI)le2P;)8d3Eh!#lk)?9i`xabY(2Cd-GVtReTemVLGcO7pcq1*Caz(XMjL>L z8+*08jAY@~pO8mp87uv3{}f|l*|F6V^6~y{L#PwoY%aR|SZL3@(Y-lK!sbw;B)N}@ z{pac8K_fCqna!iEPOWILkiL2zUbfIH8|}n~Ip#Is)-BTEYWyQNH81P5Sh|_zVUS##h5#YG zCO^6DFp^|t?QQD(skVOeGW5CVZ5|krEN!ZdQyjZ$$#-0gS!3>+vYcFmdHRXL^*xO7 z+1k*x8lpO@GO23ss91aVn??R({Zx9{3eP>jus2ST6<^-EzNYi~wv-7PyW%7UjG1S) zliqk5*|&SLRz z6ZUSc@gH@3U8*5xI?Ru)fB7t;E)y5V*?0_YdA!X-Y0f+fkGl^ODrOI43QFr6o$eU2 z&aOG^iYM3^3BKK_<*N0j*rV8{!a=`_6~u>hW#_Km5)rb1M(`RL(0J!tmU*pC5Rda+ z4WeLWXxlw&Z#$0Cp&pbD|N44FFx?&%5#p97>dbgu$U1JjfFtuG#ZTr-XcpB2W%>gQ z6YI4s>U`mC*yEM9ZLCb))^E+(NHiN!n;d4L(u{rgY+r_H$L2WAq9wn|m5Ved;gn&UT8d1rw9S&FgS*KD?0{-r|dPh@n ze{&RRwaE_Z`$_fyiCAE#bAvy|4aO8mE!JRJw$AndjpQIt8S8hCR0*Jk=t~QYHvJk4 zAe{ooNBH}wrZ7LCKwM*99U0b7%+8n9)DI$}svxPMvVytX*&Z!nMr# ztPChiw{)tjOAKe*v?0sms-EEi!HQG``DmgTmr{QuWE7FSj0p2XY|yd{KqWO;FYHs_ zy+`f6ca;Qo(JPHL%c%R;C(KS^W>-1am!5Nd*k2aP-Pg!@b(fIbzXRI>jbL;5y`55k zlb|e>fB`EXm=$$&sLF1o`6DGYWrRjeJ!9m{=){TdRJb+^$Vg$7TB~5~eRGqxc%bUf zLKE?IOhNWNpCU+}fIeM>-AD)C20_0I>%HYxpj;DmZ9lD@BN^NU`-^6(p57rjE9@#Q zK(mF$nfa{=a&rvnu`IkmxHS+95qtgBAA0h+#9N{=x3=yH?|KW~?l7=3VwWiG^`yLH zL%#)i)XHZ|Dt?#Jvh*lI<~{svucgSa%d(u7yg7BxDE})-85^zflb%2rfL1Pm?pzOjj_ z(2ZTt8Bf&_&RuzjIj3Y2-Q0)SVc6Jm0uj3JLl@qP&OaosPXN+ne5*ym3#`a+nY{!V z0l4|85jpDuDZ!k6Fik^v7^RXW&V+!VM&XHrWqTYUeuSO^uUuuq)SYtv=)4ELXWq)D zWF|&}hPZCwO;evN*Avbc&#z^S>%$(hW1zBy4Mr^oQz(gSIn71qHSQPK>6H-+LW{XX z#p`=Cv={kg0fmW$Dc92qO!N57@q10$oOlu?0=^-_UF&m_C+0a!pt5o%D3DkXk&<8~!A_=AE#8Iz zQ3EZ#TBp;su`Ul(riTB;xKne;WB)F+Pr9%QG9|^{F4HvkxhlPA0bO;3KU2M2Y57Eu zIFGg_hAs1u#QyQ3~8 zCbnvS;hG0VY!eL_1hm18O97pk5{bcj9unPn=*;U~P*+uK;i|LPPv*~7ow@2QrH3ZYP8CVUB^==!*hIBk>*wiI%8RhOuNu4KdKu|8;~65*}V<7(Hq0Ka#B zN(D0$Jny6({}02c3fr4Q#$%=t#f}3=kl}gHJ1ENQp_T?o@gWHuY@)mUKj1!Ba&BivxAfSoia`-e+bDc* z=QKO9gF>qIg0gmx>`MH2LR>=(Xn1I}<br@5uMI!Xw#TZI{s+Z3FAM%>+s>qsss09oemkUuGZ)ozZ(?>VTcYCIX)ryltIAHchlj zx{q5oym9pSz;1d8!bLM+vr2C>QF@mTO{puS%&KrQiE3iEqQvKgO8~KYp9@Qi}#eL(n+p%!#v!2J`GpZI(?wzY_`v z(wqm|20)b-)9cIeRqZvJ9&F=qo0uahM9a@0*883uvbCf=i*<4naQ*v#f^zaPV2g~RSagkD2Ne5%%63u8PWGf-*k6qXDp)9|RpHv4cu&kOg9WTAk# z3r^UDbLr(4F)}nShkO4ZvT(l(Z7!aqStGOTC%~Cq>z`Zpf;v86U^(dS`!}^z$9wz2 zP}F2yF4A1u%*wG%-!4hFP#Qv2GJ$sLsL8btM1xA)$F=jMKCqbhJNgU6;T%5^YdH!Z$s8t zd6?RsGGRaT#-gV3)sd!*jeTPjTb^&6h{-_N3q{!|*)HPy5!E{E$$Rvv_d~IGpD77eY7E`sre#q#|IZ zMj6_@mC}e|ihVMm*LAKgz?7ho;}fTa1 z(Iu-2NXph1(-#0QDyydj$L=m4U2q=%FRF!!L`qu23|{3g5V z-(zZCc3`99KPa2am?hx*q-LSH-EbFiXj498j4|TRVUs;_)JS|`y?A$($;uH(gd~6Z zhk9ah#`(p`a^z{1K3)8Kv7_RTn@!e563?xr-Qu5pUfYiq>X1*OEUd%rCDoY-OLGfE z+(+t#BU=q@D*um3+e94p>T;_G&V1p!-SWUxIMSJygn%j@()+t%dtL<&ypkwprGYJ^ z&mp6-e0`#P!O~5-oXKUnLwC(Ym}rXR%V^NFijv{RdI4p`3U^4_(VebZ#A;r|a_))P zj5;{#vwm@HkXlodh4E89?0xw{BACC|4-YZ1)E+1xCe2ET@*(`fHLCNA47vE9a9S}g z!O4kulF_>`HPFrVpPGhY6>K|&fi=|>*l`AJj{uT1Cn03F5yU$XKO=9dC7)UgLH?fS zW$VwQGLqnirbrhdUrWx@WY$>~@JWYb!7M0;PCF`9xI46mtd-i}Wj?vayVfX-p%;pG z;x1OA1!;NcH5@T68#ZFSRJp^M7>B8x4xYEOl%L+J%kBdacbwB&sq(4Z2UU?@n^#9R z^>n6d9l$lHGxjc8R&`>%Xy|p$Y8L(rk|gxGtv#}<)o;wf(iFVR=T}kwSm>I?rgyT!Kk6=csa72Y$1qjJ<+cS6Lwn0F-(K{WiTDH=Cqz$Rda2o(1vs9G$ zeP%7y*trK*z)TYCqa2hve1M9TSy1EC-v7uH~84#I4Jep+8C{7I}o`v$;N0K)fO&#=^Sv82_ zJ#imsiLk;#dKgz@C3sr-Nm46r5DkUNz}7W;&ZAY(mLxi@jgwM&XMLG(9THEjQLOi% zYf?9eh^C8J$W|Pyb^>OWEt|Sqba88A&&|^z;5XQ35ginLCFJn1H4BYEe zi1A}_H}y;ei9I(J_}-izrbtK`{}O2*Bh|oSr}waePCNPGjwYxE0$w(bh%akV~Ba-&P zx|^G?1LnC>Qbviva+>}~oKz4DNNbuFxhlom#q!XaA#Sdbb0m5!OC}%DbJ#U-S0>o{ z0QIYs(k9Az%V=UZ2JP{Y7bfo`Z>yaD_z*rPt)lS-NOX{F4Je^~mHyh+<`9u7p?Wzr zM61B@R^%NM!LTlZSbNA-k;KuHgW(}ocG;eX{9J9Xz7w`?n^x$h*_tjoPCflMLiSJW z(x-L=(wY&7hu*`nTY30CpVes29P8@jagH#K-rQ=)rz|>RE6;Wc3V{;VVvewl_va%5 zD>3zEGq}WKFv(r9jr$>OcvSyzm)kv77YSBXNo;Yvk1$^WFZ6*d#)u_MgRiR=Aq-w5 zBmU7b$_JAre*y{MWbo=oB(lIX-xyMxLN#9CO7EW_YLUIolQ}&IV#Df^?3}MuqgCKy zgG*{;PkD;emZ0OT`;WD**mQqHBz^aJ_tZhE+BF902IFW0jpO*WQ8s&~!mG57yQh(_ z$HjPH-K@vsCPI(kF~A%hUxU=-rNk_=At5|ARxZW>p*#ih8J=v#mF4Xyle>Vx#&B(~ zFQYeYV#c0-!c`P6i8@5GYCvYP30Y-P9FjFh@%~z&v=TUAg@kirMO4UgJtN7kFO&5% z;1Kly2%;K-dqYNsnmAp_7yMDDe+36JZD-0|&hxjnAZ|3!`MMHgy>^{H_ zSw?6eBTI>}rqN1N_0yifqh)6?cn~FlE*Wz60V4Pa4M!?L?wdz0if zN#YWOyGs{zEqg?=(cZ~nASO^xZY>hLhSPwNa#`6?Xb!LlK;3811$XWOMR=IXumedP z3u{>@L1jQO${!}{MYTXD6~RN@IeX1X-|siQ<~lg3soNqFOCN?!NRmA2nA`|v{&|?+ zSR@5YapG} ze|2cjw1lfZz9&=rL9Z&e$V>ZZWXYmp@l0xXa-Nq*SL7J+1w_B2SoV7WXDFpNzggC% zno;NI@B={i%4!eUNNK{UK`VwWIEb$n4xC5yJ`8EncpP?om#6V$>>WE z@I!DHV&?Yb+i7i9eo5;8F2B{nE@qS>`$zN#m;e52Jy4E(2?_o(vGtmO9>F_~QifLC zNY#=WL0FG#=sijW^m0umY7>Wx*LRnx;9Y;Wd@#bzR%VJD2zlWP3{=v!Mle3fdi*dk z=df;1H;=pO9Ixz$Sw}+TX10_RiS$))#zzX_o+3U!+z{*3DTHL}dKZ~6fMX3!uIXl! zad|+JEBt5FfURL|5-B1HkW~6Zk@DJrW@XM-|AbJsPLNV{E*$8mL%@!vO8F?UmSek? z>Wq|4s0;^gPfm&T4=!{p;mZInEyhJ-jM`^ z;yiIX>p{$i!3R|-Vg(w7D?Sy<_*fe|%vuG8B1vKbGp3hY5ESs~PqKhn2#0{tFd3p| zl_7y=Mo0=nL*kaUUwSpda6X4gi9U_b(%oM^W33*%bs~-MSC>=VFS-z(u0)=}lhGVg zye3=DZjZle&zLBZq!~$kAq9tD!Ao26LOzJOJz*Nk>b&(-dlVWTkO1wH@3Cp zLd(r(xf@66pdp$vnM9bodNX+8B*=u0i3^l%x`!~_qfUWlhL?0iZ9KI_u0Ch;n%l63 z3Xp+=qHA)K<8(hi+LohBUGNb=lF^IG4}xoT3K){u%vR-fD(Hhf!g4Ur$;Qf^DM+jmVK}^lL1r@Fg8^>PPL4J%mo>q$63-QH^9ww zzO(iF`hqBZxr(VS0R)}}RV2q!(z6eclmy}gnNL*IJwrQvSF#Pw&`{FyZ*ppTo9!}J zH;1>mA~jwwl;`fDGa_4nY9GQZOCaES@!?>b=lu*VptC^$&pLClR|w`tPrYV0$IlxptEL1 zor8T!y9H#C+=}Jahk8hvlw1DYQ{@}w>H_<_9xX~H25C3A8Au5 zuM<2qhC-Sdqws0b)y92QEG9+66Qe8$^=`t1@6O_0(TmL)xo&ucsG%5{6o#r#RQ_tg zM1`7U!WN|t6pZf~MlV0^U^itYq$Z(5ol{$K5 zdnHNO(czOnrwgeeRW_*U;m|JR0-Kgkze+{J3^q5rzka>9$P9r*c zOkwA=d!=+m9a?_Ul8C`y^$T&PGY)|TU5DEjlb4z`Rixb=rR~>>ReY+ZD~lCvO6R=D zf_gK!u^?dJFNGSCVp;tDqC3x|${1>a2dO?lL-Pt`+N{N(ZwBfo}t(oX{yfqWOGdz`I1$GQ@*)3vBHfu|z3Wy-XAtj9(8 zWf{?ct8w4wWOX23HA`09ox|A1x`F=^0;5@Y^vHk(A3LNdA0$58 zp$y&J$rh>s1`B&k{%8$R?v|#W)UjmQPbQvjED^p?|E9v%IhiV*DF3MTz>3QY-lr}e zs>HIb*de8%4l}eHY(pRLCX<8YbkV_=kh(pGAYZwA@vjc5Jaa=fU3|+#am-#@hO7?( zKGXV(j_vhFHQ@%qWj3Z3LrCHUN4`8VA63^6FM_~(CL|k&-bn$fL?|D|M*+rxWo*I0 zgL?=6Wjf>ZUVW=r0kOkDgtv>@cWO&M_lldK2(o(B+O~+i4>0~G%sp02< zK$dZv22!iY#nlcHiY-|$q%10RGPi{lZB@~}=m9Ctj&&ALi6m4MM8;-lgG>(Z5>&9lE_Fd@50q`VMKHXtLk!2_ ztz-=YXMo2%Z0Puy_b*-X7*3&b`4R_yefTSnj(K@PhYl;6P=~DKSUvQnE#YuX+Oe?olpOjYL@1M6zW4EINASa-N`(1+A!S6l57ABY zx9SilPybX7cV?91_WiTbfV@SD1m;%?vv}6#zk0E7E&bMoq9YUq`g^#xThL3(iAaD_ z2e5=g_RUfsIPdp$^f|=n;*Tyu^p=7EJCUs1T5TUxhdlC~^Vu%RLyIM~d3izFdu~fK z=_LAASn6rB_=+jNv0>vj{1;DDO*Wu&(RQv~v8h$dEj8Qg>!#zkq+|;|0gD_k$Z)4# zo`Z@InxP;8{nyG}Yrz(cQAHK?VX1yeFX6GuAg77Cvj8plg}LRHx4YSbms}0uysS@9wQULLuDZW` z@YeC|!{vg7hef{qX6<_qa0P{BoGePX<%|{TsWl&jL-YkW@PxhNt)nEzGcgel_dTAp zou-oevK*VB;D(RIyC@xvR5McmBzS*Rl(WG*t`|Fmt_l00KpmjiD#an@*fLwm^} z%20bUbIVAWf#!+AF{Ty3P$3hc9DEYN{@>9QPk(z$|8+YLyXNTfH(31(TEi>ZdEq#= zf4g`B1!~NVqdZ%6btQZoPQ2v9PRcc#)mt)pDxSdg&ol9;23$JKuR0bND3m_|s$jjc zB=cV9ss&%Yf8M4K1Uo~>2yBXk@%l)5^w8_vBvM3cW9p`-Z4rZjDr@K7sdA*WFArRj z^6k1fpS`vFkseZ7g_M$8SrpO) z6L%2-?Ya$AkcDNrqqV%!v5l&|D6W9v39$$IG@`NCfPAD*YN#~X$Izv?d6EnUw6b^} zDG@MmMS|UJtC>asiME<)o5DL>v}X%~X2!3`5JvQ2on)~4djn2}Uc)p`2COgD2VWWF z2M6v@mAi~e&QTlJ4!i~*)!eq9^{xMBiwEjny=dyomL!l6AM&;PEk-r{aWeBz?(mjU z(9U!oJIf!PcrR(_riPB2|IE7@V!d^osn?yzb~oys3gp>VwfV|ev-FrSZM|bIZE`ylwl1VgHQujQCR!a2JWexoxrq6U%9j2jpSs8um?fZj%a`dLj` zty0qX(P0F)SO7u&3p^7-*iu+UsUMj6IHP>H3Un%CX~6})!>LufYW``5L*>pj2V0tr zTRY>Du{$4*kK{$!cG+3(sIIX4C>@ClX@o~s$yLYP4_kgDPn5`1Drhy763scQizbIs zUrob_WjFVWf{&4T2e>Af;U@i_do{UqRWgb;WA-zy-;P0nhM3myWUJtbwYr6vVl_H> z?*Igdm|%Y;wj!}K?$j4E^KCK8Fz}Y^qQHS)yJFD7)t09G&k-nKWSzMU z{nyj33GB>-HkjbBj@lqOMyM-EWcuZjY(~=XaRfWjWVAcKqT7&WQ;FM3?>!NyE(6W1 zbXD|gqPA^pl$SfnPZYZ`rbU#Hz44^Yz>QnyGPt+>S7+F>QGk+qO#qGP&|dTe^7p@T z@wR%QHvo10ed6x4E$EJi822GgpQEJSK4TIbTkW`#=!qO;8+$SiU9z4NcOr5E`YH%@ zFL7;Mb_;@xHfYLBT1^@CyakuTU;uXRy_=J0!o`%i#h5d-P#c56`tT(PkJYo)@%kBb zA85=3f*uDUyL^^?>9T8zxR{S<3g~K8^~A$T8+d3zC!6i=1v8)3Z4X8ON+IyKWm*|i zYEqzvO0t5d8y=d9&}N+~#31YJFS^I!pvDK}xlsEh3uP(WFy^!YF$5jBaPqx4a}t%6 zn7X18nBh;m><|2QY0HXUW9OPid_s6b6M4<}VO_FOj@h={A(z#7zmRs<YQy7`5;ZJtC>e#E%RVrb)S(v-akY?$e3Cx;itF<8+N)jbvrA{hE)f%Z^J zUGLjK3<`e(r&2DkfH$maKdVCi)fxVgOmn6stW3|I;Ea|6?%k^__Qc|;_RH{G5mKfT`BW}{KUZu0}uP*61b|2 z47)4rO{LOK!01{A{Dk8EnF8aw*I4=nGRep-p7a)KZl@*Fp-|`$cREK_YO9-9-U8B8 zJ2;T< zcJflZa+?zvSkb0$uVPggHH*n=5C&dEcM5p>0rX3Elk&?Ecy zp=|yEk=O<{KS-sWtVD5rug<98kPV^$*XH zEQ-;XWm-40S+&*wkv3%$j-lNR3$9rM#OwLu{;jb;WL%wMWa4mtQMUy+Vv#xrtwIVn zCn>F0ZxUkm9xr5VG&R%`jfc|KnvDwcue?JdAW&*E#9sYp#vtQ9*_D~$o>OX>ttVfV z;&!SA^my5|j2w8|e@UMg<)2KNhXf{+W`#6LlYYij_ua7GqBW)|AH&!RzS}(3mIz7O?%>vrK52~L?wEBAXg3sHaj6yHqSR;qLJhH9;CV$-lFL?9%s>Mzq|~X zzZclzP5CPG!wqslI~Gk{02HEn(F)l;~Bx*>1*RXV*e0I3V)a}f-aGv>ZHl5OZ5OvAxvumW72_zAk&k!{LSf!a z*z26sz23S+1im<1{%`J-aVXiQ@0BedbB?t0)&Xd=$w@{?exFzGd(|A-)~)m}Zgwnq zTa$SpbZcHw#eX$8G7ABJKSHoA>!Hs#X+KniCTPk`z~ZEALO|~!{`1FPj&Q+=8uNk( z`s%X==T!0df!Ck+lYFCizACl!KSomz~|V;&Azs6+qP|euWj45ZQHhO+qP}v{TwO~};dUIk=Z z=s(Ff-^-=7VtC7{FM&lUwlATY3*SZM<~54w=9w)v%Hl)=jXf?BA45$i*y(Net4Cr= z<3DTih!^xLUkD%Z-vh@6@Z(Ts*H&R*bSWVwR6Ka$Dx56x{B8DdGo{Vi(+=TQb zjH}WGN6FM)(XY_9YxRwEAFOF+gE874KZfv&WO2YLt0!)*v5dV=GT|FVf_!0$t&V6V zJVU%skBE^+duON?$k8%a3L4RPR{%m|?j^#w^r(JE3n)%8f*J(u-mtMDAE_3>kS+TP z3z%xRA8O z`fa+dZTq&6l%U=0vs>fa+4-l3 z*#zWjzH(_!plFi|O%e2=yl0u!X6JtR$d7|Yr06n5aE{(CoQh*K=>+e+l)4%MjJn9? zOXjBhMS@i56*w~@>>+;Q7iKW%|F#ndTpZ<|n62P$HA21nMapy~?{fcot^sIF12bIW zzMM|wBMtZDCl`Jc9Phq<;FOJ95o&~&Gfy+`;yWk+GKgZ~bL>)!EJ6k@qfhGLFIQ>kk@=yLh0i!%{mG7v0&_KMFs&%x z#t`Ji9WHm4+WJn4$`XQLL&9bT)Rz+fX5ngNO4$Yz*v?qyz zl!WkhH5xA*I7o%Nop28vsD(9Vzl}_h$ch-3Z zL*A}D7%$bjQ*TA+^-_)^0I%PF9mrE9rZ3W+1-F8lwyzq+W{uju;lQYZ!QC)lRP9E* zjuQ6{8y8KTa90e_P>y#AY;p01f7!;E=!n^Q`_*-#c?F={z^jj{*KeFOBuy=Q73h2R zdN7xib1-ljDFX(|a%6lxK~r%VYRE{h72O~a%h0#PeeorjQfbq9o-ZQu3*vPtnFPZD z=Qjkr1wj`^jjAo3Dct>P1BV@>V1cW>B1K4+A8(CTGCi^ z5BO+%9-O+f?9UQmRidP4YBn3JUL zQB0L)q^)+=T;H~!d$auGCRSVae7 z9-^HMh;d zHQnlY9B0&s+>`R1=fDX6a_ML+lK zZX-)5Omqj6X|8=CrMdT8_>&l)3w?cwKw{WlNEAiJjt&?JHtYt{;qFrwbtT^?ykp#H zzYmGKVsq69=AQI_ey~%Pv(zi4y6u<;>$1{W&-J1S$(4b20xh6^=9gIW%6dp7NVt*( zen1l_{SqdRwgP;6JpbZY2jDD+P)LMer|EA^Z!^;&2zJKjGxa#$S-q`jB;W8*4%wCa-mo9x6a_?D?;u(f^jK+B^psrW< zAXyce``WwylgxhTn2MyOc@`#?4_8nwcr{Esw*HbvEvm{m)O8gZQR8MbQ+I>( z8k_1YXsSggfK7Cre?wMzd&8j=-&DhTGq`q^Rs8-jJZ+|{=;JF+Z&k&l$wlPM)FJkJ zp!c5@wMYFF^eS6+RmZ*teq5l`i{2!T2U}tCv#l!Qz z=rSV#GXo3L|5i){%q*;otp8j7-ykzH8zTqj|0l@Y+-ah$J+;aj4YszwiLkx1vy%fr zIL{H&%Zj0pSW(U#nYrl$ zBDE2ajj55L{tf^YY3bTJN}!4+#+u&|71KcM9}^K00-TVjw2f$fZEXRb$lwb02-u!O z3ouDGyRTjk4h>CDL@Iy<0mK!EE(?gy3lJ$_W&{iGML_L8`c9v3cy>JfzOWA24Fi&) z73kl*kKn-V1urh`1bxQOxsHkXXZ(pwI|>rd%+}EAtEVgoXI7iDXZ~MG$$1@TYYC_cX#$-PkVTUm8Ap|0I5(4 zD-j?c4Ol?)pU%;oJS+jk^jPcr{<=gDggh{!HtdFxQvaNnV5;~k%^3n*@f(h-BWsBEVNWP0CsM1 zD}eVUM04P8X$0yV?+sM{z!FG=V~}rT5|g(&QLXyqeS-R(kG|o4A&$QZ zizj+Fe`JLBI3~3JFy;}e@^T6Q>lj+WS%G-QagghC>+9=7koWsE*l$>tl3#Q|0)g$3 zg$H@qkv|&F-?nML@~DjfZZEr|6Qk?bK5kPOM~BDnEVe)Etzo!hMnA|y3+J?ZWGJw`}T+ylC+w*ypn;{c%D z$4dpujNDk;3{>YJ{Ed?vK(0<~%q|3d{K2)dj?cm#zx=5)G=XGf{w(Y+kK}3~8(-`L zC8xZ%ajyrzTQY-l0jmQDfCJ3$3a$#AUq1VbTQ0rS;_S_D`>mLY^C0fPwfC zcyeNP0Rhg&(h1<#_0fML6E->m%h1YZ4-~=i(S`e&q=9B^0J{H~fH8l}E%t@^pVk#g zLGzWBx)NZ+`%})tBxp>`V)7ud{QYG&|5cEl7#bBBTSFIr@Mr%1Cm5|Mi5cV9`5P0( zeh;IKNz5s#X_)z|*5H!V=meHkp~;b@`6a#SyKbBv-Ty!b&Da7M*m_Kpe40yW1e~LL z|1kPEdjQopKH2}wW4%|;R1fl(lLLtL3jrJu`i3{E|MYtYN;i3KW=T1|_`6&GJ|Tx> zYG7^w$pBvG=l~dvjUB}cr`gxgKRO0+ZwLh6LOK6ks|QHW5OAH{NAT~7YJ%^do<)3^ z3w3k=N*Dc0{|#vem^Q2n$L^>3jdTZ?Myd-(@2C0D8y+2m3LPb*o9+MGY}WvoR;q)z zCisb5@3-k8as_C*ralB&OPs<}vx9nw9EoSWd?w>Xs^};^6l|Ai0 z<0e*C*T#1(Q2X``YGYt_L(`AU;2-$!ER^bN{XkQ;Iyk?<8*QAwR0JHuUv`MwhZY=g zb$e)dFKB{uJ3RfYlRZxmE1M5~-oU(%X;r@E@Uex3CnCmeN+0ipH2Q2(e+?4Z3eHi4!!*nRz< zwv`9`FCbqb#w}o6+8bT=UwCLQ?E9=wR{r(FdnnF+ACC6*fW16?n_tDCl%O-0lRTII z9`br<%P|CPd(aF(-Y!9&UwzCYp8OaCKmTm|IRqhhX!Oqck3Gn?{$>1Ey&tMO^_#(E z1}(l{rJk+tlD%{Niv}=z@K|}5=aTk^38-qXRr_C0t+syHTK2(Tdj##pV|xVdc078J zLChXNxPL0Yd2>D~{BC)Dx|cL{^nreQP=AA$v$3wL0yfhB?nB<~=psjFV^eQGY4+Kf zsMq0sKj-Yg{wM@KJTu<4n$y#By3mQi-;Eg?1MtF2YPJXy4OY zk(cqtPkj_>O*5t};H=32&ExQ)oY~y8M;T&!4YW&;`RT28CxTz8atv+ypO^<-^!m%q zi?uT>fL(k$hM^)`Y}0m1u>TxLQ_R+HV}I4gwsFTNgbc>zS-3L2+wMs%ZgW=CTHy6x zgmJeJA_^jWDI%m~NCTH6?-C!jm%LFNk_q}@iHAf}+grLpz7ug1%H`lXhwFtgcG%BN z`Cime7dGIe6M1xR_v9JM4y2h<-&CX`TJ92U@6&}JkLHPxLx#_cb0>be){Qe~4%nYK zc0D}X=*_9RVLW(1|F+sb0DFrNK~fx*2SHkL@IPM!YrrWc(qoSJAt+sUJ%Sy;HgR?m zvV;=hHK5wjG~=y#j8rW9+C$<&3(#omUdygtlm8@JURa#KiBGg(zjx|{^DagfQtRZ_ z4#3ilJ3W_@DIh~qCCpkIvgTl0)b}OtL^8*l2pW(soB zXq;e<_)vF&{y0+5v=#vFZqfR7EU$yMm~{Gzp+D#;;s9%1+M!yPInMEDUHOU?iSDXzl0W!JMr7;4lE(r&Bu_&E z(v(ruZ{TA-(u)e5<%*z)1*bG~hlDmkQUimG#VEmVFhCHUz}sf|4?Hb_`cF z3*DCJZKK9ho6`*4Shx}dC2~F)vGm^_Fo6Rbo6^aK%nFyaOR;d^-7H>O@J9Zyj)h3E zG{$)u*Ws%KzPg}LQPz1P;rJ9If@E`R{eiC=0d|3PkbbIysU3XqK!VV3TK`;ho;bC! zpI?uge=sXZbm=M(2`VCH_ld`b7BJQPY#is7wWJ&k)N(6{SouIM~HI&!iQHrK=a*tSy&M`(Fl0(}=$n1y|mI+z01sr4@| zdeb_NJ~DNNkaOhP|6*o*ondTcvTGhqfTnp+*!_9utum`q6%w! zu6pc;Fna+#I#@ek)(SS@l&z1;>M~y6B#h0^nc5R zD$yx0QEbLj)!|eNgW0M4ryvFc4|TU( z^q-TDLu`Y{sHrNV&kD`rq{TZ&>`Xn-#L5X5qX}t?pGu^>-ge*i{$`xWYY_Q7w7kXD zW*hsu=a7MhXX}&-W;?$@r^X7{z0el4 z+fGpD1@UqwvR8Zo*o*J>>B%l@Xi->o+LmCvJ*C%)NkPMUsG)+751<2kKq z1HUudgd**u?wzp$#TVEr62)8|n_USfVJXRKQ^K{^314T|Gl2M<6>kX=*sAL-rZ3Q&v=WqKi6QQW4Q--!c zl&K(!x9SAyZ*p(H&e(TEeJ8!@O!0)F_MBbRzsA=^@ZoKEzC(P7$3hXi7Fe(`|woRRht7 zW`gdnb6=-Gz*E%nmVA#!y#E;yYK`Yj>Wq&U+x2w!q=#9tBcV~OayEspIXzt1;prYD zuFeKOTRS9Gmcg(7L46Ajx~(-tfT0RMkT;CJ@sei6*s`V0Spe*jQIlamCKoBx>|FPU zjE0Ql{@hON=Luw)X>kEX{YuEk(JRn;GOWi=Jkhw#O@Bjj#1-0t_0jXaAXj?EfGs*3 zt62;sS<>&#PBG5LQn*%~9$p@R&1ruDE23j44{1$!uecf^b_;`Y2_aZ#Wftpea;j|Ltvi%vZ0+=d5glGD=yx4d3>NEZWlI zACQ?R=?w^VR5MY=*l8kEwk{TqZ9>7jgK7vt}(JOEQ+Z40w5 z9`JRFL!Y7SpnI0|w)Wt51ey?1+}<*#tw0w{T6Lf`yddB1=_9=`KbUr9PVGB+8rrAO z#|ltXI|LS`g9ZsPTrNcZ4kc9H-%#y=-m9?OF6P zR(kHXeP~a!I5C)#Mbs?6;6|`+Z_n6PA`qIp4?!hZbH+5#`U40qRw0jMO&Tsm<94N* zI0A$uys>dvi~S?HfHoP1$b+^#e7Am6{=hj)++()QD$<CH7BHOzTOC2!eO1b0I zem$H?_?#Gs|0n{aY&9lA^?4h_hiL;po|nc}9)Ys`PYr^*8Slmn&D|c(E{_WY!6Ab< z=~J|*Lq+^9+-}3X%66?hbtoa^8>`lEb;<#a!NHr+rivqX6r#j;Ycbw#l~y`7?_GO0>j z6oxzcVm=N|^-fwgUNcA0%Cq5rXaS+~mF`*Wd*LjlIN1DXB|}QR>*?C{_G$Juf!dS& zDDToj9shNG_7vlO+IsP!3QbY@bfJJ`7-yUbP{n}Vb=s(9scc>yFI%81q)6n_`{twN zqPf>$-2AQ(&A0~}>SBgy>V3I%qmFaX_a#ViNEhlqnUIP>+siqxF=k^l42u6d>-*pG zXWNz%n&o3jYZ%`_mrdN`R9v{q7C79x^uJ(D_JC&LNP3V$J+{W+py=Bg*(mv@<6Rk= z6%195J1^F2k;-Bo+^{86CGks6C0alf)zh3!X-J z+aso_A-ghF+p|?#a=u_1wB>AwjP}V6AtI=8%l@m`+%JL?H|vXu1s<{~Y@Q~Lx1(pc z`h+6NTHvomp02>vnvw*{>`PJ%;HrBBOqTUVC!k4)hoie%2QvjSO}}I>ru^pZ&)2yg zQ8$}Xp77{Ml@loegYm>iUj#$^cpGggn)gJE5r-C%e!uf)M|J@l(e#VG4#3g7Hil{z6&i zGW<_QT)X%x?PEio3CqrEfW4H$+p;0=s1Z=eP)KJOsIKs3uZ>p6*BaH_r26`$->c4Gvh!AE#TxTuNm8?#4}6grO`brI6ElApFXs`Bvab0kB0t>Q4KaDW0}xNEnV3e` zQO2SII2RSe%CluY1Y5h(mAKKO09){B&$T;WfB84c>>#9^M+Z#Z7f}l4syL)Yz3CgJ ziTa{uK1D5CHII$_kzn-|496sH3EA=9x-L_L`%XAJS-&k93N>93gt{o#8EPqbCUev9 zu>!5#U@Qy&TVyrW?6Q_DhQ~&o+G}o)jD|c0?6UipxJt5rF{(4@^ z4fX~wJw1W%CaG(n`Ezl+F>*Sc{8u@2y+qw6xjbU$Q9?U|cw9DH*I&ymZe>fNanbIV zG3D8^I`GP!#OPy_2|jDywA_dxl4wJA2i8czvn$C>)78kEc>4rAqB~OETkFdt4JFkXk9Q&83Vz9glS-Pm2O>@~2jKW+!EFZ>c_eKUnY11B*7|RJX?OziC zlZ>4#M4XXq+ne8}L3P=)vWflV(;4*Hyb*}8-CuW8t0oNgTHE<(rgsA{xv^)ImHsW5sR0sPt-jnkmmKOo2*?4 z`z(ByW(G5BWbLT21lH#wshM_DXwg3|{16U>Vz5bMN##utw9VmgqXF*b%8rXvEO2uEpkSiiz3hut6CAxszENx;KVR`?jV#L=>??+JfPSKe7~Cv zvErF4;-F^#t9R>bc%|z(m;Bp7ai5W-0&*A}8Y+5uNNB-!o4&kA4`)g9Y^)NEYc>AK zhH2+2JsB++Bqj|o9S^P*dXwPl^WsHUIJXq%!>@QNDa`PhNKyh%+zz~F+rJKPPB@Uo&#Y*Oj?Zq!)g^aeoGHfJYWkY7s2Ej=V%1c6Z!J<0xw>On__@QHR6;O(^Uz4Xe^? zCq8-VD`hJdQ>yvbgCHi4nuYz?@+~v88|Id%I^t@#hP&C3u$?pp(bv<~FG>I2sT%ET zF(XO^0?azL&lEK2kFqVYyVbV_9?F=Q>I0q}}Zib_V0T zp^8?QwG$z6l5^G`-{~}BgLUi0kZ=|IqG9Y7LM$q#4xCQEw7{nK?m8JgxxFbsn-6f( zR_JX|L5JXX1@rv^wooJY^ksa`j1KveQM}co*vT!ihy)cGnCD|-c22ae5CxBahXq;4 znIM^-FJOGXMN56X;Wtn~=BJ<1R)@qg2LX#mD^JEZ;~DX+Kfu)sJwb!H<3QW{c|ofu zPoCz=1R{Mz(`YOoPgd`I(y+#^3|Q^NQ-|y^ghWiWjzE%NFc^(|-Y6Y6kU95(5l!%p zI;iuM@9Ueo$llbhr=z^jQ$Q1DPx@bkAM`M-&73~JK9uqIVP!$@E~2g%kj)$~hT5Q! zm>Mod1K}9Lc+0-$7L_uW@6dx`U_3(;->n+n9)p2vXcfecd^Q;B@);XD(IUJI3KWsr zpOGR|a25CHld=*_GrG!I5sh~#mJYCec{K(xVG0mhs(yBSoZE+{3n=p=8jZn{4wB?=p&bXxd# zFp^%g)f9M_dNu66gp}G@NbM^kHc5BN+swlLw9;KbI0!mVa7f z^4EVko;1`!cOyaimycKgdGCxDh1KO{B%S-;W;LuR&sh<>7uuid^Hfl_>CIJm|Jp!E z43KJRrWgP@lHMmoyP~zB`-at6{5Z~32pGqnKuR^O_d!wNhjqVnT4Q@UmGiXwHazd7 zPxb^IMv-7q*wAjz%1d~nbc*^k72g{`X%YH>($f3io;7ZZ(=hW8C7WzEL(kXIwBnH) z8IZk6)DS20xnd7g=Nm<`hig5tNowuP6$&GsZbN!kLXlNJNR}OIgvuqm*~>Ks3A9*K zr`Vhx)LNDjS@l41LchYBa?51R-I4Eg9$;zu4aKdES@lyNFuns&5#CJ?j*2)_6Svw+M7O6~Y5n-TPVTnlyll)_V^<_9 z=~D%$(i6wY+QV94BJa8;j=EbcJ&G?h7NB^^;p-W8+qOlWd*yp}poBzE-Ua;{FvaO& zQ4En3gl7%lHl!D>FDP-Mt^7clIBWoQOuC@$?K5xQaVFVQb19MFKK)jCc^25m^?{Ir zXlP2HxWy2*CbZ2jv`v8-cQ5&2;-{M7$Cy46;n~)F8~KY zahhrhj9w9P<%D9|5J`ZGYaU~w#dP2h0k{iE)@ZZZ*nwO|OkfE_v4y_O>3d3NlpCpl zT!uT;PE7L9-V5Fu?fhFy?JAiN+cXZAQ~bdCk0+E}YHf$b-vD%koZU)qk8OL6ZA=z_ zTEqmt4gZ&yq{i@`iArJtm)hIbv3r8UoRRzAAPsugb{i{kJ!Uw7Z0NsSK#pb^32`mW zYYj8{b)Tt}n~D2TPiKApZdMa7h8auEF@$ACOk~uu6(HrPO1!98e0!+H(s5am$ZV2+ zi(`?d96WYY&9B718!N_fa$kSgCZ-d>kVh!fXlMI5iN2oe%wHx7*|}u=AnNgNN)G)( zG@Wu%zCSdiH7i=975A$p!Lx0u$T1YtjgkGh;km)wP_~-AY=^i#9h5P(MrS6Q==XxQ zc*Q;E-VGE)n!nWZ>n4>Bno&F5lshr{JOG`4)C-IWW3RWyWjLoKJm`NAC|#E6r^`I! zX-4(f233`Kq0P09vP{{QvOPEKXXH>PTBHncL1#MaZ1$0qDu1!;YsX_S-|$D6Pcj>i zvmO~Qw^5M7CxoNv@ja%2L=R{3z$&w7;w zZl_2!9IFoTpE|P;fUlV`;@kFyl3YHV9%(O{h2d+JfrhIy2XlCNh%Oek>#?o0&H;jY z^W{@NX$43%!5cP(w9e0$wNRWTem2+we|RS9GJ7RLa+_&s_bqwbn+qjIqDqSV4*yWv zyM{W3PE~x!As7&huP)$J7%tlOhcfuDQ1ELEK1+n(i%>TIAuhGs*tkN~b3lb_W58mH zDZ(kk?8q?iYH4|_;&L^4hENWm?=s)p0tQV+&?OPglj-x=^=%MX_VQqSb>mPDj7j+9EbI7LcO2U6uIVB~ z5Fupgf~~ElF+Y~?z&%sy>!lFkh9^p0w})&^eD2R)TE~0PtIyb)Th2*WbG*y{BzK$J z3Lq!dEPHmHPF_~XgwHpZaK|g^&0O8WyF-cOXP9Lp<)-gq?wcZ+sgx2qGpj-kE~t}u z@;Y2?*nGBScPP5XR?mi9@<1_8+B9R5^+`OBDWb~h$go_z!esm!Z4L>q)@rGmH25vE zB62fnCt=W?Q9#Q?T|(dGDd_3NIlEU$pq-(;f(pfds#&61XoJ0KW%4ZmnXikAQz?5m zev(D5tt~@zS{2OOPn2JDHYxOEvDJHM8l?v>oIaQW3VF}!qh|r0pG#%HBBDwvB_jWm z$twDV)InW2` zRXd^dPK1nDZMET>eU6zP$Kk9wU182tK8W1A%Jx4F96X9xCu4W<`=4pA;|TWukrQR2w@T(NFLbe`$o^-&|R->G-J#A7h48qiQB&9ullS5}Q1 zA=AXrn^Xq$p|2AQ>jKLaK!l}^k;YwI)&pWKuaKO%9OZ2dJ>6YPbVykz?~QG#;v2x` z=VTErOJYhC{cwaCyBus&BDk1l~EK%xgnhoGko5R zFvTWad5M0^PsjQoA0sbjdX6ZT1Tok&l@{%h`5}ZAdbbj^+W2z;KFjQ65GkiZOPEKH zBy3WLuNnKdf*|mK&;?EW%{6}w-VV`>?rH>hYI<#0OB&Q^lnCF^lLWb)XJ&P}zi+IH zAc>!tXJki9=a=fc&y^0NvHoh^@3T9l)+Sf(>F4UfkLYqqgKj~xQjsSG3CLGJuUs$~ zi}62ckFwaSotI?Q4(i%C>kbS=)-kL$DRFDm7H;v=N6{8p3}pgG$Lppj(@KYSU){I*3_{jzqxvw zIQJ5pS=OG1WHzP>mm@M{iyFAt@V|wmatDIeF~FxDE$LLwBdR*^UzV^ILKSn>)R3;( z4dK$;TLCVO4cR!vo4z+1(>0b=KeESMBff}BW7mfwB>ZA!sXwx|@{+2b z%7nLI=yD%&NhEKF>$uZ(MtiZBc@UCErJF|(9xeZJ+Y>GEm4eqiP(5IPRq+b2I;|(q zEG(B?%vB{Z9EZbvQMmoaREisue6W?_wtap_YrM7CGLvXSiC1D>}*jiq^+5lmWd4lC5(=Rv`wf1y%A;bdQ%Ns2LB6no|Ub^IP8qqyZ%eveGDnXsPFZ5ukB?*;5l`7VTZrzVC1UUAFDX zaQ%Y@Mu)j-B?5v9Ky}txK7Tp^*+q;E z?20ws(#OA8VQ85c`l=92E;LVi^C!5!Eyr z{8lV>6Mjh_e0Kvb;Eg%|YOolw`xG%ap`Ey{a$n;l(Nun1sAeaWkR1iT4oiFG_qB#w z#pnrQEba-BemOcEMWuV?=p`^hX^ll?rY&*u{d}eMT0Tt`Al@TEVE;wCsjwd#iB#l^ zfQzRr6D$ZHc9q}2$?^jq#_bETD0Os!OA$~zfE@j6=D#HRJ^}!@gh)_E?wrn+Fx`=Xp^kgB!fKW!I!&ieBews}VIgr6Jdl(w)`xHa1j%_FjzjK5I@7pv(7^K|Z)!#`O~ zO(*++4MO)E$gP=Z<}+;v7Wz3C&htsw2ASASzx$VsQbrp0uno!BR{Gpjc}4L3t#SHt zg05WDUcrmIhvU2+b*;^GliVL}d_;d#Hqke-Df3x21{#=Xo5hNzaV2Hnr>a)ld-Lqg zK0j2Vj@cs#0exW6Nw_lJ+Z2NbQxcx-erpf?BICQViqXtAsT|URnfrD2)VRF!@~A*vy^sk>N;>-KD#53F7ax~t0rRO5 zGabAc&L+&=;wRyh7r0Ba==NzPQo@ojJFT4XPG7yf+7uB})OPD6|781=ii5(?#t`f%@Du^$BT zjM^%wo2; zUvF9hBeMi|{1kA;U&PA(nWR<7-}5p1*YDw;ktn(lpMs?iZp178qmrzqR5(yz52C}Q z7Fyt!Z;l_99?4Lil8*T<-Xx7n{nPagZ;&mlFPAQ4!MFEaIPnq^V26^E1lM-cJ&ZS72#g1#xFrSV{k8n*aF@fG z%U#rW)STaU`}$%6DcO9jBIP%prxQzEEc5JyKI)b6H#$q>D_#Wi zGTnW9j%xuEbQ@;8sQBdaJqVoLR>`YWI*X&MHiQK^e^}vKh)Q2A;MAAWe_B9gQ}mzo zj2(pJpwH z+D$69$z>N-{Y5-+KbPChH5#NfAE|kDu^Ey|Y_;JXnL`yUpELCqv+T3EPeORFEy543 zvOrYR&tKI~6w@tHNrd0U!ww(^qZ!qXnWW1nB1vCaY{WY!C&>sI){Bdx*f*#iYUbw@ zS*K{El>%ygc`1oP3&gsz>5N2IXIz_@JhjVx@1`Vz-lw>qEf)S)X3YKCvAbI}?ysl? z?^V9H?r)Ugq%v9;Ik3htV2tS`yE@~p!3+66Em~k-iW1xw#ah~nMf9-=&k%$;0^X4O z$B9X6fTNMRqYcr;S|O}Uuh1R($T={i;s(ijeK)ZK3fmOVcq%i54!6tBwspIXwJ7Ar zl4NNnKzz_&hCJo@3(Gd&&5AiwC==w)8bO1g9}3*iT!=+i0JuniinDbuxjP=Z;f{R) zrvj9;@7l6(UlXky`bn;Lj97W4j8~!fCx_M6sW(L(M>PlMu5xR2M-MIKGg*k9Cq@!9o80c-oyLO6 z4!n2ZMpE`ymWHj$J04~W8kb3xzJ=PTXMIk6-&~HzT1zLN3mCzy%t8CPTQ=&Y%Aas| zD5;2C4b+i!-3movb3_LK{3K_Ea(NLGjLEtdU|`rMpg@#K#O8z1{D5`S-dX!?S0mR7 z)Wio^xx{u_Q5=GdLjAdB2e-L7?|4&(&%uM!1DpGH1+QPPQNQmgJS&$WGgyjLmF%e} zB!rxccyd&)%jDLtQK3JylG!dzPsr4$EcW7-2<9aL#27DhZuoCJr@6?OeQ0&yt{Y~g zaZplye{z>d5h%2wa`eCb0sakcWVAz=t^SE<&B(|`WDkc3AUqAChhMkZ)dN zcOWa+vB7JsP}A0ufW2~hBIQhxW;T;X&Up*j%{_rIZ^!I)%NjM_tT#~;K+oeBZ;Y1M zP9CKOM)!=1pk2zSkFdjD((2^FVT=^ZDf-kmDA`STu7#4GYbGtG8|;oVihMA0(1{48 zKw(H%Ct{fOMy*ESRyIn@yr_EbD#Ud8RZbL72K8;2|Cae zeG9j?VfWyr+N4P&E@M+`&WAd(UTTDy(zY4MtBgkRATE&;M%$nGT4z|ydWSSoq2^6$ zajg8?49$?&B^n^oKgNfbpVhi+eN#d&8jK<#GT{g(^Zr}nX{IY*2@tjK>w*!_9Mv_#%nur z78-Uz9%Ep5M4R0ZqoVck`n=$0G!q%b5A8P@2+Ed`>kS}IIPoM;fKjqViLEsv;SZ%> zWIRbqR^?S`eYo5aA_&V?E5@Uw()ZIZy|i&n(K~$icB32?!O(LL3>5+dSzmucCH$f- zLKI5mH9ege%6ch*?t@I~VN2Cg48oHKN?+AUhJ`OF4>LP>ZT9!iPFR}O0Z|(4cdp4z z9r=gOCO7&8TdQbhijqK+&NQRM=jf|$WL_1Qp&d$DpP^~nZU5r<`)Ax3&`BD`^Jx&|Qea*ejw*9q5(tpgP>aG6c*U?jT3JTgUZ zfBs?mppda0oQ_rWRC}b7vqOeuEbpz*S&J}P;4W1a5MuHw(&o0(uDiA?##g_tE%FOs6p^9=cr(qwZ(vVVi_Lr!#lBuxps4muOaQ+asA0Pn8)jteo5}cs(axYBW3g zLDtH`wM(_@H2G+nPDY1Q?sN$k?8Z{r?w*EJFW&0Og|?BmV#G9sp)k?ok9l7OhJt%p z5H_rmUy)xtG>j$ueUeA`{}+aPqUQas#SG4Pu&fhugPl_ou-`#I5*^$3e& zun|kwviwFdSLcmxE!B8_0={X=Off4&9s+hHv^Obq33vH)ps!u`1E)+XU2FId) zqHsvO^R?Zv30VnQ;81Cgy%OOJUy`XTxF4s+ldSK=3@IcZUO$#>9oL*j$0nAEd38F* zMlx}3t-e+-WfOe8pXFP>baOYvr77lzN#j|gr71!DieQ&};Pns($x=Iu=0;4a(W$|e zvkJwW$eIBQ%Q0f~c$zlc1WVr8=&8NF^oNq7wQMF*qBLp}n0rqE5r<_3M)3&v$I?nOv*icccunn=uw zWgjYA{_}qfLbl#2_!tgGI8Ppz3iQZnXAxKxp{vEU-^tP!-U!VMc!UzBl)i-BqQrzI zh|z7|#P&^m`MJ+zA+k%z)2p4+q|Pl(rE3nlmOiFpQowE&+t=KZE#jeo;tY>*&?iyU}ae6*;tPgy8;Dr~?5pi?Oko*o!$AJn~#^sGb4<*oO)3PP1%8PCGU z)+qEhc`%&JI4PiwE?^;sr zJnyktCNWF2RQL{&&KDLYrBLDRw0IVT?t+{l{dy)t)m@unBpfk)7OG`|G3GawM`_2E|4vI)Ea3gO#p)z}S zkECUa$@W{}7*`&uqu;P27U<=XF@vbdZktU$ob+G?J@94pM_!q3uhtw_Mzz-sU zUkE$=j}vYlp96m{t$cu!x*_E#&|Z?x=5cLJ_|)fVjc#F>M%EvT>xa?2Hm}Y5C2MIG z-`=pZr-1TS#QnfSZ8$Rqhsje$1_jMfGdG1zqjc?V%y~R@UpneVu?}i^WOeyD_t1#KH?Fs_Ga9YhtayjBr351Mw=eThxWQP z`y_vvGwvTYSWm4#<6wdwW}G-fB(x;9q#*rH|Yb*|?&#KV0QS>og8Tc8oN+ z{W6H*ZX#FJ(V0srkde6Pl-1t8Pa+KPvTR>hZI_X=%liiKXko=^G@`-PtacV|`EZfM z7%O^neX=yA%JRbUL&*$b_;=w7WThP^#3gkdYPEqNqiWli2XD*xhRg*a5!!dy)u($H zz47TFVyqN7JLRU#FeT@hNhC69ry1+E3@#FFf9{R6k2^NwN9DmJv~DS0GqZ;Dwp<(~ zfTC^Jre{U6XY@5M?MZ1s5u+O!K`0vX^AcIw8p|$fkDG54;?=?}Q!~aa{}E19nY4)P zeK3^qO-YI5mxpej1cnx%NYqISZ8S;I_V!5?cj#%nv6^`J9?_Y00`&*Y8$ zVTcW@%Vf3h-wYKC)VcM^;VxQ?qi%ChGa|#?e+z_X{6#ezuS&7d`G8NI6Z+LA(wg5u zu6De_6iRtNsdJMll;m4*|J^g-!f-H;D&v_S#pJW}EN)nHEOn1E?UZij=$l6tkg-Wf z@revB|vx)ZxUyZl3+GHw`dY>A$rkdKLdHw<>%jJXQ#@fDV+eB1h%8)H7(mr z+s*?{`%Exg_I#}E3NT4X=5L+EM<1HRRJE=Bk76tVDAWuN{Q33RyWOURM@Y3717D#s zCUNP-AwJc)gM4hlM^~8_ZL>v0c!sr0Aj87_>*$_ODO*3VN|w;i>XZ#{vHOOd6s|ZT zs~_3tH*s|Xt#!*DobPr}El|P{pd};QoP=Uw*O&W`mpp{kJ?n8OGN5%%HpXYSV1cDY%|owd+t*3r!6oznAbNv*4(oN?GLSKO-9NihY4MG^j&ffC+`Fw7dEx`Kwd9U2~l-DA9a+&7Z+v`nVbxbCz}jY>4X<>Z=j~+9u55N2aLl@JOrB|IUMHt&N3pEWuu>BEnIP zSMe0F3|KEKie@<3g6@x{2%q`gJz%Eyy}(CXPSE0+2ahxoq0+WX!df8WdS7vD$m&?^ z!#kV{$Pi-IE2R%m`E$4)jM)Vy-4Cv?WNCm@hu;m1>dTaSawYd)RnVyMx>SWF z(}_gt(%Q4HRJBtlxIOsbk@Y>G0U4U3KUj?S6C({?l8c_mOeV*Lea>mC*-qAMABUK4 z=r{AA4LEJGsMF+A=?)h`3SqY#saP+zN7QoF&$3k=;XLgYHXjHj!x2dHR+H9`F)}Nm z8zG^}w4Mvug2|B$rtgFOq?Ur-sf2O$*EOV=D!dSnKD=?OnB8^1`7%7`&F~u zRA(<$%vL$#0FS8poqmYQb8-{Y$!h2fRV!{*@U}%7Ob?R$qJT`=mG=Bf(qU05s#`Hu_)BCHgqrJalc#8IuvLhL2W+O|Sse=XW{T zx2e9j{97Ky!3hd(ALd6PPF7&@Afh^FNhM+7VpAV(L)D{11L=a}LKJGQ5465w8wu#< z`O$ka!6NiMEaO;K|F%@yqW9od;z3TrO;<2^MA->37o=)nR~3+)tJ0E--bjz#8dp@m zATomwg61_<>-q5Ez891BS3ieq*C?fbWsq-9Myi;@SDcOShBOE~romKS%X^Vb3s^eK zLc?@-I=@(C1%4JGm8I84G4pnpk##`VAswZU{Hh#5nsrA32jTqwDo^^Za>A80$qnL@CnL50kF9fP zvIJ0caN9PfZQHhOThq4fY1=kV+qP}nw(;)f*4x~lkVO{xDwR0#=W;QpLAG=%i|)!z zn^knbFSbg+CL4>PNb2IL12KoujDF$C8LV~8DWxd818ph6g8tKh$kq?=(#z6rdT+%I z{KR=8fKhiQ7v(d}j#M9%dXTYQdAxAs5bfyJIOVYYrca4Jx%w?pzjajBYKT+5 z#pHnyv=PIm4{@Fk9&lL@2~N}g*03~0qj)w=IwiefofN_RkaAHU0~odC`6mCeTrdZU zVV-u3#y1Z+qJPq46_kGcbHD8SOZwfS7e=>4Plbi8DEDq*$k}tlAkrUw{tRJ3&F?t! zfm2Ra5BF139O{(odqQnN|E^e0VU=K=YlsA)62Tj~{&3Hlk^du0aE6ldY2u65N%J_r ziA*x@)y!~|501xtv>d-UgnA~v7=8wJ+tX;;P$D&Mwhp4Lf^}rul&;{_MRfQ+>C~R1 z11E<0Z1XJ=b030sKb;c8Rs7#|-pmd`F5u`go(*cpWeG(~f`MeDQh8{cE)!4Il@^k%jn^y{Cg-9oT@ zR-CLnJ~+Uz|3qsdCS@#W6F1VxBoxi_I_6G&T-+~XxFm_p^sguj(!9J!q@a*^)@$N+ zxi=BNHA54V`UaM!b6h8btqy>uV|eI!mg#2#*~e~P%E8u3Fv125zKhQC{#lbE+yJV! zuP<^Ww(#0zi5Hq_VQ`8i?$BV^kRMSKz=g2t3cJTWxvTWqw##CC!JyC>59+pXQHnqZ z$WFBAVv}Ivf1`rksWE4WUD5K*-c(pR4cQ)YxS2$}nWW72$zbxcZ1&7wze*L3iEDP^ z8hi2*SwRyERqJjBFfjL#vUg}q8O}cj_$#EX$Zr=|S`G-#R)5ML5_*J`>l4)-CA424 z6^XbuxexS0I4BBAX9HqlyDILMPJ}&ShYg}`Go8O3S3e)eGrL0EdZ}e7T7fncQa^Kj~*} zN}prLc49PLjWoaoLXdiKozKbsOKAzc_j|xn<@KpNYgBt6>EY_E0_V%63d)^0ulI={ z$+lTK9tl2d^I5MHC~I(XBTOF3w(itueYbm5S^K2$G{HARX}s9*EEx^(%D+G3%@o#O zKFKng!cvc>p^F)3@=H-Pbp?+w&-p(TTXA!?G){f?%6x zt5)^;jI{qOVLu}{7%c{-l8hfqU8>nw<|p8@&Ltm?NKAR5c-u;Elr@_gamE!J0Xq=3&b;XmSY%yT(g5VWaj;>ZR-9HEG=ifV$D}u@ij!O?5sO-^W^RO)_ zE+T9Zh&F(KrNf^oMrp2SLrVs$Cd4Mt>L^A-#z;1*Ota+b4s*57=->7 z+~!D-5%?H4Q9A{xHqb)ipZM+X!6TO}H#)`&(&`4MM(Qm;b>^nuP7AGH3p@-rK>Ns< zGDQb-(Od$CEE8Yhw!m}4uYz-{(&%Q8|7tQPN@y%KOUx*wvJiN8#(k&?Y~7kOyf%7ez`nXz3(mhSP1 zUP%W4xpe6LG>2vDKs8_qqh5Z?><`p{D_KM}xK>5ys3>5p zK(cb4q-W6j!1RxDQO94SB~^UJvCz>x@Cm6u31lg*NCC#(g2pRg7HY_a4<|CK)GW|w zB!i|1Qk(hy|3xI3^fU|9BISLh;4HwLjyu0?Y75wMxx!F`eo;wB?i7v@Sg$mJG@ z=6HkafNts77Z^Dk=slqdI(LML6X^z-T=CsVu~oIbgg;c-;Y%dXVmVYAA4dlkBYv)R z-GyVK0w>`Wci&8u%we9`)-(cSe(OuPipN8<4p^5iB1LQabuq+ zxid3Z;YB+aVeLBcYMJ_Uri1}TE6Vsvjw~Flo^WP?sqB`lOnp_x{dL>rq*R5kdBhi& z$ncj7QB$i;^rUK@3prS;T~}Zo=Ui7t=1L`&85T;^V*~Yg!eWXjm!H#-L5)#DWm<{a zMK>Z2U+ZI;mlaI5M7C`3Z8c`IxO0Hjc+wjo`Qc8sTwR{;x8CS^2`%DmBM9TMxCVYC zrY>;kWWPJc?C$lvk7*&ur?$nznOd#r_UC-iTn7d7HX>D)#gtZ-;d9K?wopuycK8B8 zkR#O|5z@cNP5s_#N;XeqHhA#bHY<4`oh9bpUW*)RDavxhgPN^u>-f@;74lzN9?9KK zG!k5=F5iW_MwGm3n6o0)em-B!1s+7YY0HX@?j2q~4(dkqJO?ZuzAB;7;a1h=FuETI%IrG zKIS+kXQ#nit9M6~{f@3~49zJ9+?;#=c%i$(bYp6ch_Sx5Na{s+!6|^uPy0FoZC0Bv zGm4E0&IEPVt9u*Ov6=sXMT#?hgI=RSb8rR9FuSzY2~8asUr^y`16RqpVo7fL8kblM z08FAjtL${mF04UNKM-iy=exY##Oywp6@_%m5klji0h#hxNwWSZtH6u(#L}#Lvadc> z$@M<_#O^Cju74UY=*kk=#SJyQ=RU#;1JCbe)!5!dP4-{98i8p@`?~y858)-DEhK5g z%`S2-ty(u*3Q_nNrirX@={%49Zak1aI7}4w;5VsRngcU}in=&^=13``I;$D^FhDC{ zX)mvw8Q=>HVf8qi_q|n-dcpRJH<117>WgcWB@2^A^Chh?5vlU{79*@9zw&kCk=`28 z_}se-rUaGQETCr5>^qo15$L%Q6K2Tn%)CH`z#ilCXQ`l#==B0FB(dnr^@T%En$ zUE4ob$+H_|6q{1TpIspLi;$Q>LecGG$_|_J#S!XFnTGfE?mlhwpYNt}djTRlz-Q** zttQ9a9!{u#77qkyfC6UDr@Zu;DTCW&KDAU`9plhSgnR~FK#F*?gY^+ridULd_H_p> z=@+o3`s)0xLMhygD!&yCj}BN+i~GClASl4g;vh>jqRM(~v-Qhy^0tDjRa6@o1i7Bm z+*S-=Y;zSO0HliP6|*%ug7;9?VWZS2M*a#V4UpQyJZT!o`8LzT`;d0z^l$g1-CB4V zwZvYSzbe?34L=AM3rF{&2liEx5#l?o#=d1(sp14kvUAHRE0f@k&uLrZenD6!;Y+2R z;DQFwc1SZMw2Y1fss%>2b|_n9vC097`_~f%ie=!v`YLLgEgQl>MU|z{COcdQU`ne zt*WKY7!Iha!C<1*{hG2XV=yt?E`0hzZ@_a2Lo+z9%7Xb1BmEdO3u_C*xgI zyK+uBeyFHy11KzZP>Xr1u4?Ot_@WTBX#cFY@%KqJ8^TbzLLhsQq=K$-fQ&ptoshV? zEACITtWrfVXIfoT9Q}?Ep%gJ!O@$egkh>`vH+*K(8RSu;#eeTb*JP&zA#@hlvOz{4 z59(bHL`{;58R}J7+RQD(N5cl;xiY~jw08vp9*5+sE>`yK0;W9jlwkhiaqs;c(PG;?Z*Ll1Zx_2-$zKI_o1zth%R z)jd}bm*_Mo78y`Be9tV z;@Qx}fbJ7W%(YDmko;XF>OdUuNMMh>Rm-1v^p!Dm&GFki9Mwj`=%U&S}|^@ z@b-jed8%LMs2gnCyclt&fm@zvOb-Fnq$c>AP5*%C2XuqtP!SC?{~>`$mWJd4ic{Pz zMrYyjGeO!m@Mo1xl7||cajJ~`HrN`}GZ$*?hrK?xe%wxenj(p~n-wfzL%``1Y-R>W zUwOw|-~O7~qa`voXone&u{l9fQHDOROVb|35y-1zrXf7lo@!{o{Zy-Z@GLhG$we4k zZmI)VYPLn$?D*tgAGoWogy(+9`(X&F=lQ}4;_wTP3AQF-HxOPUFqapq_ zsNPnI{4Dfu>&E6?zsz5eUx4>fPLr#y@15Pb%G z%w$QX-Q5T}k>j3PLjSy~D5^H?)+!#m$Ej}h6jF~Eqh~R*$e}$0j1?_O>L!~~-wJlw z9A%IoC{>s_v9y4Zj{1TWgID9QM=?L?ir{$QC%VYDaN~-8&<+|{)U$rkSG2&<_4eBQ zy=H-%z{{O^?V)(*e&J@WQ!?qnqYR3(lq({BVj&6q{FZZJo0F^I?T@hr=uHgV%o zRo4*N_h;&J1Vsu^O-V_mT3WUIc1!&HioCy`gYRH*8Th&9V-l2s`M5_Mw^Oi+D5Xo8 zU7jeT3)xM?`bQ_I4#X(1x00ZNIK;pFcFOu;dqSl<>#aoHD+k0(Vx5W>j|`1cTTOkf z1naYM4Tt>PtQ|LJB4`p4}=2Q148dUil`Hc`KRUm{|Ou>0eDoFhQHT= z-UK>wdx1%5IyvSC@7UW>?rBr*u{UQ{-D|6Y`p+0?(Gy{x0>4TQ_DAF!b+;X=g85O5 z?3lu)>G2iZAY`D9XjQ+B#43}MH_z~K31K3JFzM=p)JC1>veo=SLO+YmZ{PMf!IHCs zKNQn$=vX6u&ZqE9RUg_IcdW;SX+IUOE_E zu075gYFev@NiVz5z`rs(u1;!_R{3DaNQB>b##&XFR^PDO%NiG9?+64&`!}j>>i;g zp_i;aEDR5FXb-1X zq1eAv+7bl0?W(uOMYo4=WF!B~mN3zoSOQ=^#-1X`-r`iR8!V#vS({LMr?Q298(8~D zqF;3Q7Ex)Wy-VbT*0nX5z2(R)G)nc%sPqyNQ}_QV^N?khyZV9W!WZ{_;#=NLa8@`* z!y1AyI<9f~H{ftFuJn6fx)qp{bL)|ocb}_CIY=Ha6FwGKIMsRU+m;1`7$ou%-^Fsr zJ{j5NWFYQ!1$MzDU^0q8ruR=bCx%COFBF)`_Li_2N=B~1_?kq)s5I=u47f76K=1r@ zVZ~v&3?8TIARP%(;`Y}ECH5G!C&&64r3&Jj$IDANAe*aMHiGQ77c(m+7sjc760kwg ztR2Yh{ex#S#!j-JdBZ1!&n7kQs<-RQ0a<;i0}NGIO1GwYKSytpAl1txwZyYMG(2U% z%&99|0H-YW;rj5L{I>3x@eDvi^18;%t2bNakT;}rym`PHWPInhnW@A2hYJ0epfPhc zmsP;t?q;#EpfxUfaHTTp@!}rnj4D86=wz3=9k0^dOH2OKS72^VyZ!j9?h1qrXtybs zGdkDdvRm?_V`I~jV~Z}hYU_s+_UO3Y3hJQ@6E?t(n@v;aB6eNyK1g(Njn7_^eP{rc zGdYnt!|QxJ4lfllX})7iD!ls;GJ3$_1+s;+0m-+HqMjCAa!+>^pcj( zUa1_x@Q_Pr%v@6jV#SqVLGjD6a2d~J3w*CAf$MnIvkmp*+n{As{in=d?OF@ud{1(& zKqu7T&jWp@=ykOK?s}kqGlLzw<)w22gJGTi zF+B9#RjPuCxy2Hy27F~Q;xT-Y(!VVGt$41EcT$JOh7(hDl1HA9*>Wzd;gAZw$o68df0>A9^ zxOua(z(f`U~u|q$*;RO;D8oF51v-2gGzdfuzN@N1x1tsSn7|yBg>Q#ucBvK?e z@()@iO}l*m`(d82blg(>1moiup+pT5CpQetjZX=5gUry`xj&||O}2yaBt7@eg8DgM zrvmc);}Epl=WZLI3Bg%|<^Ms7CjDN@;DykJL97UEF3%Ue304-7Mg-5e5$Cg}Cn1=t zNwZDguv=Ga{fB7R>)=*V7x7Ql_PvWw;k!d(`W(cj9SWI5V_TWI<4LCUP2cWnjE*zK z8V0fB2*~aoRJWq@#A0Gcv$Z!0ANQ1HKF`f(+L@zn4I7_A*pvKjZj62dHsjvOKogL( zHXg9Z?0TU|iwYOLZ=JkEzTwe2DHcd8gKFct6*CTyiJLk6=m_L{U!9_*6oYa^T6t&! zUZvL*tW+HQI*gfZK%EV=+OdR72<)A76?YY%y&#qV0y1iSQgZNDLZ%~rY$U$07l0)x zz&h;Z9}Q_nEMbk`WY7)}EE376c8%|!3PEW2=15t6QHeXLRR#kPo)q}n1;)S1^82@m zs`e`nce+*>@~jEmgXa6^YDzm6nz|XiU)i=2$iHayB8ZWCr#8ADuXJSRn%^4vz@hSZ zvS!*=5Rt9T1$lwS$7^CTzBP74l}A?0^~3x{Y?33zsa)kHKY;PIs4lm}@dfEQ))g8z&YWK> zZeP*@Gt?fcDgyvy-tM-7UDm(l0l6jf+kblgY&EpLpgCPsnuhB}i!uXL@*7vGfkNRk zX0t(>`iCi^F;0}(%Aiwx4*0lQDla3HaQOIFroBcPFd>rd?gPoK{iC|D^%5K0)sK&Z z*P49ls#F(cJr9gGrDD#kBO@XE-7+VpCXrUSdAii0skYxYXQfje721Xdy9kYs^WJmm z>~uTwB$iEL%|_f(R z=drTifzH`F5`KjfnF3lr92>iBr;W^uhi3Y0+)}VW1L&#g<>VnR-2?hy`ZWHV{O3v$j zgz_hyf-yh}WD~K=G@U*NHLtl8Wm9<8mL=`aU_FbHzPN7`w>xwibJeIqcg$TK7(}dJ ze1Mh@Rnv$!Y7x0Ati^C(UY~E9u!uMKSs(?GYYl2Hl@G&c?#&qyf1F4RnpZ$Ysuo#; z3FIzP-IO(^P^BTag2Pz@I0^n^Pz|p1Cj&$i>GBMs%3$tiM67-~&fe$aKSl17qL5D*ovq1+C=$DQV{yrID9| zxkX~rZ@kqDYYte3C=E=@UiXX?xpM8>=h24}HyG=f%7&o2Nc`NbeFB|6);xENkaDNj zjWV$QW4R|JaK?O74U`frpVW)kss+DhJspw6XLKJYtCO2>4CGO5y}y)c%jibHm1DL- z>dnwJZLg@6Q_Z@i9?uDNJ!VB=K{|p2tarY&KbAyDVKV}@6hvtZI9M{+%thLj4D`+> zEdDwB_{2TfLMKfoiP#CyKs#^hLwuCX5*V~xbR{Z_#{Fr01XG7`r8qe;lVLwire(hNHoDd z0RUmQIyXVO0->;WN8sIjyI&GwE-=>wB_ei==Ghx&F7$J;;!4UhoBZ$qUuZF$^{H!w zNM^(gyNoe3W*n~6uD(@Ofad2r`AHuXCDKk1BC|S`)AWROjt;3q9|4<5IUV2lq)0=4 znD+6_#wplFIj@;1ob@Ih`hinY{77di($?H15M)YKF zO%W~6<+m|bKkxXc%mOubl>>*fg{L09aW+z(Y)_90bnVpEk7~f8SO0_W zp#yOEtVre9UV>!;G-t~%=M+2P>{QSws4qIKR{6!)7 zskdPv343)vLtO2KBCREa@Qf8OVcI>)JztLe7axrV5jeUOU-EXk7?n;kV|0da6+>bv zp|4ouo>bOaUzju1*`Xxjh`%h*n|~-T@7T$`2eXQQ>|rcbB9t|}Nm_+Cp*+DH<0lk# zjK3~o(lydUVN!qhr&8^S^BX{4N<+q*_iH8T$H`uE;Zr?OjdN8RbFKKGo>Jn*DZJ_> zI-_Zi>p0gNo`b4&f@=qhbkjr9ym--H2O^K!H`So3K6UX|gr|&Qn*ixA-b66GTEj4b z%dLwb!`4Ofce|2Z9GJSF!`VZ%aTZsyJ(QfIVtnD@{9vkFY`CaGK^X`>H|*%BQ%DYv zW%7@p|2^DI{^Y+sK2W-BvG%^0Zh%}jt8!%x&OMJ5)htPdwgPo43>M4)WQWqyJ}e8} zA@wNtWBAghx^}dkviGYE{Sm#^$Vk3$ZBZg>6P0wt!~|*J0Jm~+1vMt_d~-{5UlP&H z2G{Q3u6L>I)>i|^B5=a@@u7IX{l5QZjV`iJyi7_w7@oEcUXu=j{7`AD%R4>ncZ74H zjXp5P0Mr&R=haks3NOK>uFQ__*&ldG1wRQ~KY6gwU`g;^-nQJYv<>z2<)+?~)Nrhv zRwEKHm})=5d35}+qzzHKTUNqwlgZ?s5iY{WMl711MX-kGAcKf&HMHY^SDSOWX&$S#J^Xmu^~FoMgrGky5X5O< zQOk0JvwSDuU2Ay<9&W7H|f9O?D07O@457;S)!i@z_C=7L@ zni0TwA)=6bLI~Lt$B#>m_ssI0j<=7&Tbf^gY%7_-hg^@BoX5eZY(KMK{qB53U!IQi zCn5*w$4-a&du!sH-25NNqppK7Kfarpu?dQFsRBV>yyXlO8#m_?Mwf6~JhI-Z7hHYS z*CKGN42l%z6BcvEBMr|?4WGXX^p?9@ivS1k-keZhuAL9Sg{gul{68OS2zv`9Iuj1p zmiFBle`{^j(-sZij|u0yr%D-E+kk3FPNEl>>6mXe_wuYnz7&<`Kr<_;T9%V@KkVxGq=!mobT^y`<51oh z-x=)MsKkQn7zN|z^?A}XRIN;b^Nb_oQ$dh!ae4Fr61hPj0F))UGJPGv8uyx&2GK1f zN|}bNE+=THLG&x5j(MJin;P`u2*Qkxv!rgEN2=wPYtAk~yr{gv8w$WLVS4*^s zY;MXAMVIsP&rLiK`fI-(L7m5odK5J_pJOmKrlo-&=B|Gq96>k+@rXBhd2Z3=nzyKNdyl(k> zC^4gIBHFPjr#iI0j$4w#|6n_B#d$}glw`A?cWl7z2Gx9aX8A`vzoI-TH`9^)1J|yU zfjalrSroUiOoLDre>Gzj96d)HpN69AK@BqnPinq)XnQS&u@I8weYgBVSw%|%q=x3ap0x;zXPWV@^TW@}Gtn2vmS-TIJ7IhIO(GweXe~6T+ z|N60b;pPx9nis0r7(Jk?`M`^7@xNc6KRo1-!3HG9Zat7(*i+yXephsycOYJC_x zpF^TDMYar~y`)qK|CR{_@Mduc{?O;dd@n2f`_=rA7Wrw645E2FX<=yEUBXG0Ch-AF z(3xFRih&K!q!v+nPuG@p?}mxK6V-6>b!lr?zIKzx=q^deF5C^J(~HgMTyxnLrR_9s zy6-8l)3UF6u{s?ZjUdZRGxnw##}r-UINK2+e)9aKm5{dOVC?pHV@=9pOnB>eChF52 z|B1<*w*}il3a9w?0V3$bG)aY%*?Ne&zAnd+b3#EVRn;b#!4RC=!o0w&yTz;ZJJ7D% z#YpJ$z9gmmG6cPL8uIAnBKBioA8qrH9dG;xg=i$oh{xH(1QKkNGwn_HJ-#)D1|`2a zf#43xV8RPkbh%6X^C4lKIA7=ZECNKjf?x~9J553VPiOdNX?K_rS50P==!wqIg0*!# z<&2HDbcV9+@?ZRzPkUQm)*7ZK@7$ev#s>Io6}1M%{n{sC@7ImtS_!%9DA3cBLvH#p zid+=PW*g&61TD-4xK4G$qVzyts2npH9A+PNi0t|kHPeeDeA|p0Hy6#eSxzI&j<4Vo z)w^vW8o>?ZqGWh3h39+F_@&1zJzoyvXn$m1$f`vJFrIAYwLI!g&GrW|Ts8&WG}AEe z+`n!NftV8*F;7uSHnrM!hv}I^yAObfYf8<}*+Yc z`#=6codb^LAuzl{Lxz)PLen3OapW?ILEfRc zL|31xlT^@Q%F;?{q4Ni8ilOxFPse!EP+{*Gdi`x2RueGH-E$XE%cSjt7AxpO6;1v` z+p!Nt9&M2!aqvDHC+lfVULK`H*gymlCEtb(GQkic2av}85x_EHxoD%lI*Tc1)Fn-jJ^7Jx9q8yd-(SUGpBHfE!+nU(V%$ zyQUMjPbf#p*Ib6;a1N}exX-n-ZSMZ7moMiq55Lm*w+I68E|_)k^lCqdT?Vah z^%{t+zpQru@oH+{aap!?Np5p8YIs>RzB6~?SiAp&vt<4BIlRYi20xbrQ2Xy_QsdZ{NjRXavcs{E5SWy9;T*{zVOR2{6gE(%*qH!#FN2cJ7lHFd zzH>Vhlp6h?A6)ea5dqNdBPQU~jC6Nq7C5B^p1LpClLVnxA|X@6jeaJ+49iCUh&9uZ zl)xq)x3Lw~Fiw$kh6$Z5j2M)R38oI$6FZWym<+(a$xLrE%*hY`kgLcgBqXw=;exq( zcz@a_4QaSk4S_pajXs|3Km@5`PDj>m?_n#hS?ZWVsQ)}CYY??2NVLVuAYTKc`e6!) ze4ZE=;&68dNV>xOyVO8G37KY3((E#()Il$a2JF0-sR4Zo1wN;w$5BfLUSkCq@$1}D zq2XDUhi#FW8CsmcSVBX}X&J9Egv~QyEe_6=MT%2)j6GQJ3)l^-zB2VU_S+0ULtT+@ zL~(W@PkHG4pd>qK=Iy_o6jS2$4p&c*fks_aNq^XDgDsA@>=H7`N}a!bF0I14L|8wV z{wvV(qYygRQn?IRg4r$dxsknS!O>&q-G$SS!s7DbNu->Npb(S#$OXF^EQ6gr(^7o< z%8%eA6#a_qQzK@?J=P*h@L`!s;8ov*Xgi#SneFvO(jAc*1`bMh7_AL13{V;o%W0a* z{I3EVKI3a#3USMk3$S_=M*#O7Qo+np0y2mXpgB~mg_bTxfLzbQgA}?asK2Z#O z%{Pi~yQLCHiF}aiqvTFEyOne#-_?tj{D2(Me2I4W)nXHU+3d~6<|>d&RtB|Z%kMgr zaua;qb?bNka8hj&?=ks0Z|2h8 zwM5D@SvpzfoH>}0_dLe)9V)n1Lb}-VdCocXKg{J5&C!5t+CnjF_04X( zhlWhLT1I#&mjCUZO{?y2OJB}IKEjEPQkgN=e}+~NMBC4M-Z1qHU3YFE5Ku-NV(_&U zTV@&VHMsENfE{>0y@Ke~QQ<}0>K#U=xP(56aGuRbkOl=_f^yP^9v!AuJJ& zUUMQF{iXc=f5i!}P85G@U}Pu|f)Pt3|%CtgWlce#_i~iD*Nj6}I(0s7x~cGOld3#Q@ueFV-_bK7IR#$NkiD zfRqjC%RpmAe@c%>t<_Ym(+aecs#tPnT%BI=?LODFP4)6+KP&4+16cpW|DcPAzPJ}B z!QLul@2EFlhft@~+GX|iAER;Woyv!$Y)j;eNja2zkkpsJ&k3w;G|g!mIi(HpePH&? zPO6^XjZY5C3{8uhc^&?KHh_&Rr(pnnK!U%;=_`^f$`!cRZ*zpN2&+9<^O3K9;fo36 zG0biS9^wA0M=|s@|Hm@+N8X#^-J8ZaPG)(svZU(8tLL!vD?3?902*0QMw1bJBf!mB z$TR^W2y|dtv<#W`u5Z2ciuPXU(O)>tzvflpYKFNMT&581fjtcH2Xc^xUe5*-fDcu>o)FhPfCrT}i zZU!NE25*IQ>jO&Nuebm)$XUkQKXan}@}rQNu9`SH0|QJsNh)4<2cz4XA@QSF)!!34 z#3QY%?pVcV6+9>Qyo$&su&(MTzlc&$>>XU(Wvx8y`)}&iIZgutM$^!R2abP)tQ#78UIHh!w0hm_5Toi0J z=A53SfCg5EB?Y8~1_H-RnqNfirplEQa~!A7t<05d8Gr(By9D(x$Kyn;qwY6!#agCc z0ZbUpiNLNwFo#vcM6Ps?N9Ty>st8wJgm5Y7ul6+OAA`6gPAgS5eulPGuRZ3=hsRlG zb+dv$X+Ym>5?ShVFU*%oVe%ve4p1S2l78UB@>-rhTuK7 zj~`-17>%(qmoUX`3`?Ssq%K=gNRILv=duzf`sv)jg^SnpVlPR5q^>fYDQk!M$Z$ujkR#&UU{mhj2Mc&X{Jbo>$*TinJ29b}?vvyXHl06PU1V-^$&$Uf+6F z$}g{o$#m9FsgzvmaFlUQMXWeZ4+Kr-`QHLc8}JUJe<_@({%&ND z4(G@~7L%Mvi9vQFVrjZCd$Y<&%Ab$E@Z0yNa0VHM#2mtF|eyK z0-gD;FaL#j^~>3VDDoJ)GSri~ry62u*BeQMBQ=U@qMC|G3py@xw`(!)X+j)%qA5Z@a61oYsiiu3g4^*Y)FqIz-Y3K%i0^myAF)-IT>CgKd8U@?ZzW3aAbT4mS} z-T^Mr`)jJlc%O$dpiNykE)kih-k@R|mAFOIr)!Ob+SENdpOW%h)Xhj6{a;0fOC`&5 zR@UA(80!hn1a?;d6J_=fKuesYRv;Ns36E+#w4qg^qj+udveDCyAr~8^z?e#iuJ))G z3^@iMU2z)U^xP9$^e0gb&W~d$OJ%2_A}A=6Kx4e*dI4N;R36H^Z6O66caEHUamzC| zG(0p&T-gOHn0{;og_iSMVag4wMxS&r`>jG9%yc1nsF}RF!#_O%(rcglC{etxg7w&h z6U|7kPueI8!@HHY*X&U?bQ1KSHJh8Y+nYfpK#yh^2Ny5Xl*D#&xT~!Qe@oFI5KXzx zr%F-&4)sy7{L8ED?!82(v|WqGMY=Zg>Ei1XcRWOFmz<{Kf229~M5;#zW`v%qeFYM& zR}a@__jA`<#tWxjz4<)`n<5}D_&!X@bEcvgjcFK35=mR%44Tm8aVG;0)k6^i{K6lo1CCYd-YM;!`kBq0;{3hxi3Rx zE<8aGUgg~1q(DG%ba@M28{Rm8=aEO0YUy)|5B@5ORU$r$0#10zHL>Ob*KV4w-87*l zXsFIJ6_&|(8B(`Gne^N0 zwzkx}t)l9*_iR_hsugRY3yvmPg)tj%Pt)fi>$?Priy>IP#S=Mp z_pTO0O-3NX9e6QB%8Zfv&P;y@S~y{}BfR=gq*M;hz~!3hcdU2&gU&Iv=zW$u;BQr3 zBGxi(bq!9Zw8NvdG*&SG0J#KK4A>$FjL#})O?vOMdSDZ?gY>zgMNi(&M2I+mFHb8d znNFB+RdNZ9O$05GSKifIC_x2qqo7_C!4=gWBnTjq?e-WEyNHPP7sH_)5;NxJZ=Niu z#x2&Hl@}iwMO6MmSaNhGh`a3-sEvwg`1@N)h?oePg;%07wCiJ%hpB%V_AeQ8(Ivs7 zG7|~=y~R6|F91&7rf5|6xT^9$9{7qWcZ!z>?<;+iq1;bX@f<~*W6Z`4rGRY4FQ$c^ zRN39lxr;kylFu*W8igPp50=j>JJmHJ1p&KEH!Z*rRJq zhgH~fIWb=19WY$LD$lT+-s=DJ7@z?&nlbOlH78vQ6X#*mZ*5aTpMX-6;zWQGGzg5f zCMQ` zC!q?vu+4LGIRJ5>cw)}W=tmH64&RxK zt)!z{HDB?lQ+(IU1i#tesli<+~hzR`=f*5i3E&P^(6fChQA6XKv4s ztt4t@oLMJTTzUOw*^Xs=yd8+q)vpJ#XqJ7(DUr0l%pbB` z8KmbQx}cV!GcxGk=0XWHkcB_?|FHSLGrrhSfzVqfh~w66>m!AyLS|+rvhD!-IdO_O zK_%n;M870VlNjzjBBFx46hLQLN_JRz`R$aF3JTEU^BRvN?Mo0LE~14D%V{D7%aV0y zu$*_>-Rl8JuX`RrzQLis97L^>qo;yBapNmOyi^vLPgsOcS(IqoGuvUMt7rJtf=nS0Tc?}U`&I{Tmq-TLIDhc3EMs?0l zeQu0)?SW8-h)~ffW7sVXVG0S06O>~1l=M>@_+*-Zc{9@7h4aR|mGdEmk6*^v&*s{l zzz7iDdneoW!!MR($U?Li0gb-(9?^QnHr6iU44%0|8`ro)u4Sdwd8Pz{z{1z7b4^$T zJ$xFflcq>6tn_MIXXYy^Is-FVgsIjY+`dQ{^LAn~;-b&uZ$xrvxc&I`v5kA`iTTbCMFG)qUX#wBa`o%~2yRZ}c)tqX8;Bg`Bdv}G08_m+ZV@qd9)Zu9rrt0!P znYLaA2A=dgn(NfzB<3VR*-L+>8T-Y{J4m4iE%etUhC$&^Z8s{u=vo*{A6~CVYu5kV z5K-dC*G!CvC5d_1}Ja z8}C=EKB;)?;Za6DQknQZ4SUN>n!B_XKUzbehSJdEXMB%^Hs%WpgZfLp1)>ZrAtZJc zFf|=?Kwa-S2TD4BR9Mmu6Wf4GhID$j9f~W#@1NlHaG0cKX?JasPQ68-gx&D^qF9t5 zg>>{*@aL_033vnMM>2h5;Xe3t%|=gu8KTvdUtKLUWZo9)9@g*zaIqv@&aovlrH!CI z?oP#!iTe&gdIJ1sDz*d0z7E#l08Tgt5as>Vlb;U^$0EGreCaIQj|cYlIfT=Dtl#Gp)X!o@3tTzIM`R059&7kX z4WPn3qCS)=<1ssv6H19xz}&oCChGQi2xyXb4Q?zOZm_qo>b3+^=Uz0szmY}Pkwin* zIvA~EdO8FuCC`n2GgO?9Iv-%ZnORUqz*-)o&jZaPnxPTRgvAr$q={{}9I!rwV-A*2 zcdDM&mXzCoaeo58Kdz*kwTx9Ld6*8T%IyP58?3Lv8#XO~SBXbL!-!Q{OxZcr){scZ z-JRg8L^@ALkZPRvKHF{*yW{pP`_quk*Ip6!s`R@Uexg73GcjAuL(y&IjfeTth$X3e z4GiUYOLs!>et~vH2jUMyge0)RpNjJ>Z%^wJOY7;eGR6Prab}o!bLZ~Vo!G}m>Ez_( zr@gb;{B;RyaHe&WFM7o$#mWw@6%Hi;H^R3bu{h5`^IBZ)o4RO;y0AUPP|&2rSGtK^ zC=H!7u%O*Dmk%<+`MEpXA1`|DcLky8SMON}BolNh>$FO^CWnz}3K4fY%RbC$*9eI_W$z5R_aI$`~ zNP)oz$o-Oq@Q+qWGYwT!9=?>W1o$0yx@}x3ukUj|2@SS^0SR@U8fi?Ye(AdkCx$%E zoGs?!G+ctwrv)wbuxIB~?SnX76$9vo+xmW|F)_8_EQmM^hOfHt$Xw-PJ_N-|Eakqn zPD>(FH7_lBf`4z{+0m^l#-OR4+GSyhP1ebtlF)D`8%UVs>#&#&m1t1a)I122Ew9yy z96X_od)$6`L0ne>q{*DsEZ(~%Dj^|Poy!uW%J2F^Y}4)z2MA_V-EKa_VHQ$OGrj}j z9^zwW*%?kgBZY$6bU0rwxp{bhb3wMwXRyRyyM_^q+!>RN zJpHZPz+O#xE^idH-f1&frhN?%R0*(jrgNS>j2!mZWyoAcjMg+k`vcxAWLM1ZWR4FD zSYkZ35wMjI|ETXZ#d5zBaxPXKWhxz5_^T0tF~KFhSlWuNoCW>(tG_lU?^K?)zTF8l zE82p@5T1$WQj&>${eh*)T^^rRPE?hNgqa^Yt|63Z<7OJWR7a|$TAd!x;w>-jwdTmQ zX&HR1tHX{l^IEqiwT) zHF_~GQox9rP7pZhd}ooK^Qg9d-Tzvxel!U1b`d**?( zjJi+sD)zY@erOk5$WMCTK%QpWzaQoZO(+yG7+WX%1+5fOtSPwujm zzIFq2&6yYV0ffle718#tRxfm;kkV-=kHdN<$GIF8ssc7r7HXB&2hM$6gEqrnomtKI zF6&jIgyQc2I4LA*Pt?r-s6U$3tq@ZR|2!y`FZT43_|vKqw?Z_ytpwp(MGLZVYyjgQ zxYT~GrAA+AQ#*65x}=P3;T-wfp1S|Wl(2~kd)lgb z*Gg)|3KpB4T++!frxgIO7VeBKoRr@`CM$dN$ghR*ajM$zLS(dag}Ja`ZgCUT6os;5c}^ESg0kTXtI3q*Jyri* zi`6U*W8LF)2!5ib_x39}ng$H!H)U7Q{~#?g|*8{n=MlnYKux zkrckR)l4lsY}n&Gb;R_~i`*hqx1-sP;VP;t)nn{ zzrbA?zP6KBN|8iCM?kNIDyv`QuaQW6bxcor9Yvr5QRAPwkP~n#q+}2)-4ve5jZZ4% zFhX%!8Ah_C2X5zWAC2ode}~3FARXr{35of=4L(|wWjb@D4~PbY*fNFGg%(bY(i*8;^Iin|xLqQ$Kg`{+LR zp1sfc-G9H4k-T}PuV>9Q-;5+wWU3lWVwTS4KxtS0kQ#T&He(a&Tb$kb2GPhHPFf0)(J@W?jqsr;_Yf{Z3FrfgM*3bPozKI z;>-YfGYflXPd9s8fSHpeK%QBN8KCU!`7X2t&^kK-%z-v$4psnXD}W|Y7oepfrLF;x zQCHDY)u3a353J$t;^OT3Keb3`XlltY0wl$hHKhPRZAO5MmWJk^S52VPd;Qjo0A5QNLFP_`9@sS1VU%$G;K)Xl+0s z7k(BNPft%~Yj-ygv$Lx;vx~!D^=aDJx&b_$UF`wyS683|@GoNAoh;w!1la)p72waV z02FO4fKG0}KTgul|57@>Q~B=nE(iU)uy-Ore_}fP%N*ba1pY@F8#A}Rd=*ty6#I5C5~Kz~{Pi6}mC_97R zTY~ogpOf}qxuo449F)x*fwcb*r~hqe=4k8S{hy})WugQ8Q!TBsv#X<-!++^)-K1^3 zfR?JZAPbv+QTs2s9LVgw|HYiF9f0rK@|Q^K&yjL?@7?$LWBX@(0hri$xc*D`-j){j zPCz#|04L{PD&RX2|5foj`+w>MuqZ3)Dk`cn{J(AUmz|W8g|nrtlQn>yiyL6(>T2eV z!1~?`>|9&`U$*zgwgh_p)hqxOW+!LRy9>a@9pneFa&|@dv!UEP02YZqqJJSi0E^VW z5f3+jMe%R+ZmINd#QTnP{*CzFk=efyJNq99vURWo{%yevU@`w2z2~v`+n$5%9a;b_ zZ5pAPQ<9RG%F@5%pR%=Vt#`R^rgzDIX9vv3Ffqae2Tf?WOq-xuWi5BQ$V z?cb2=UFl})^$+zs`Jlhm@5w=)&i_!qQ|$f^_)f3K--~-kK0w!hng3^7ss0(Qf6WZm zzx(We?m2&94Uns|Jy6Hi^8J4M4-+LbkgKhi0qgsLXM2~wKmPZf(SIbM`g>OW!&_Y3 z*~^!Slbs#F#LoNPo*eJf^PL_ZzyI*H_}BRVYuLOWi2ucZW-kB;^a5HSd|z_55D2wP zYYwmQmnxd6gr?$S{#lJ9tSg@g^*wW@lMqibf0rC6QXJG8m_=RetSHNG0eQT*Ex@YFEKm>d5mM9dPBcXB{!^WUoU|6ELmV{!E$xL@LEA5=ptO1=>iA6Jz~Yjn)Qo)r=K@1 z496LlhjHoa!91)sw!sj|`8|t``iiL+)z2WtV9`B_xoRes(|ij^M{L~E6#_3ez_kTOo0GtTjlrl&jdIQ)vn^4RzeqW({J}g!OoIl_ zJvFqD;PY+)+Q@HB8sIvH-oHD9;Bj_ zD}P2N@{~xt9g8Qeg!*wiuo*^EQpuW`rm^fNAXsI(a0SYW1M-*y4hD_gTt(p zd%2lC2q86n_GRub!iy!zW-f&1SxZt%pVsr#MNo5B`f2%e-;UVaJD2#q7Qa^d=;?(} zHDcdid|K>J5P?m*HaJhEIccF2{+w(s9ec{Fx_5cW=om8&61oxOUSgZaZPnqt zZ46UKj>-{$aJ@<}JV6>c`>^}uBf#c6WBmowt|m;NsjKNt&pImkcpvbAg$Oh9*tU1L zhFz^?BME+j5(E4USA2Lvt36msNj@0;^<48o^+@+5K~?W-W-GSHrW;u;D>~#G`ImvZ z6VC7k@TDDbJgA`Sps1@7qq8-J*bG{Q1y?M0!gdS1MJi#bz$r@09ZQqPuP#NK(VOu* z`~&J<){wOE0z)3O877XMX#=HuDQPg~G>#TNB-U81@w9d3i1W z*!;x-t$#<$hTAHIve=D}*KHAE449K~3pM5|=mr|#VYk) zp#U7x8*lXHl+nyKVyaU5zE}NJYBJyOqHTZZhn_1jbTZvScqZ0uw&Z?HIK) zHKO96&x4qcE_T=_Nq4`!z;KB@V61mI95>E5lh9^5 zY+8Xg`-0-`TPpx=cWTU=XICa|B1D5i#t44#KK?himWoz*bGXlB-YsW$>fBfCkWjgE z^F>hImlzOX$4>*F@zRSxKz9Zm4Wm0~ajtRw4fVjpvo>gm=pAUR8keu zgwdREc!L9Z?%xp{-1Kqs_nxl@vO- zb)j`VMuBncusC?X(RUvbd{e2%a7?pa5B$D5yfQN+bkApLu2`|dd6rqff+0t9gr5?e zGGzp2e;AcM^*qyZn89%`Suh#tf;#zy&|I5C2I*O zAi&`FFF9A}g)ZF;>#KlvwEheHKI?4#>f*=qFUFW@AIk|D1HX1N8BC+3M&`|d2RT7D9B+mp!!t2l@ zuw$4MFUP1GP?;x=@#cl3r4?``nxz%TNpYjgDitPGmNv5(kB`o?ECdhBYebmmLPi-H zB%9$@a+3KD`;x%wE3_p_ooG$Z&N61ld`dKr9W z!A|x&WZ2Zm8O~*1_YG*b2t?p%KKuIPQ&4B2H5rSLg-Dm=m4~0^o zU&RR-wTcCW0#?{S60o261J>+QG_o%t3sS5^p7=4iUI)o3w?DD6esixU%*UiEpc zgObvbp_tk@#3ir3@_$@GmXuGD(t*IqoOka$xk>*3aXGre37E5#NmDXWwuKLb)R1jH zz{G}#SC_ub=mxTJ~`rE9x=nKttfozv*O%2V}9H zg9>&^unk}IYCZ@Ity<&K+CJ`cWw~E}gwQ?+jaHN?w~W^IiPA#7y)3_~Yb9kjU<{o#HBUB<ofvi6{PG*65 zlLNVDf(rA67bY9r$`N1ugnMyady1(ig0)V0QNi-lNLs+^Y(k z^v48YkL`Z|eL#ZoI)6Yw(kWl@|NSH$^;5@(*EM4LY}r6r4EnItdgn^$fK;fR!`2pD zTax1HS5cMzPkqhY5*Ig(J5=4uNLkZjliTa?5H)wdg|)!90s*5+6_SZ>x&Fi7zD>1P zF=77 z)3@9gC_KJiQrYvXH3&l>J)GZo9RYsG6Vv81iHkIL@KHy3%*MtRe%Kjw(T#Ts8Mw1jjA0Qw(AqH zd_OFPc3#nrhM^MaMq07}8PMF@E+tWs84M(yHavCh)iLlakY)Fex-BY-c=G<1qn29f zIwgcFlO+dCPss=blsAjr4hx18XG2VMHra$#PT|yt$2T6FTgq_got_72a1QaIWd(v0 z#ly&G5tFvaA0*YkmtJHJ#YHM(R~L2m223DBAE3u+a_QKQMqq|s39cfVazzTF3o`q} zT~=jhaUBvO?i7_lt3)W}G7RBc=G6%d&-+B!`bw6>E+^WufAN!etYk9=RqMuc`-h?C zWGN+CMh2}lje?nIclJ^>FpztU1a#5WuM2K>WKhX$;X_m;&{Uj&&P)p*scL zZ}TqpXyV~s<^-$epcASju}ErBa0x+iDC`#lh;P9{6h`>4DGKrWtoPM&USz9r z%Y6IkzN8@pSoA5OsNbMSH=CdJM#!!SG1fBgE{xa@iN_f#!D%y$TL#njLuB~5GJB99 z5X$p%LG3Osgm?=^`T7aOF&Wsj6D0GENShS-0Z%RXcE!K;rVmpdq$F>|CpYDXw49NO5KE5&VoRv2mB1G%fXbNmoHqt?PdX(NnrGgj)3K+m{Oy zsc2qcl(YD_bv(0Z=8PHq`TC{{h$6>4X1&OFXZDFo2Pq7zh}hGuMN#CGaJA?(FRi;a zj$wBSR%e6NA`x>Hy&}F1(()3nKmeU2`~SFi<;7^K{lb3p65K@4N8~gPQEj~q8M!C$ zY&CDYLO-xL)QJD=6EX1I=9=Eyk8;mWA5FHAj;sm$`A*up^xN&>_;qR=x%XhE><}vn zxx*{5FgxGa=9qwgceK>f9S&@)t1ihMjmr@-e;qg|bN!b8W$FT}u2#`lcrwKpugWFG ztlatHZK(-DHo|J5^uc`RBT&~rX#S$Qw8s_JZ*2|y$m5N6T zizAa_c`&n|PM>U53?9N>RgYYi)rn7@qUMd(i|Aa)EbIlCgkMUnKEBA!QN(F27|Nm{ z%b02(q7*%U#;eRMJ)swz3{#sVXg-;Sp3z(5C@wGPwiZAA&0H%<0x0@*@s|E)TgdjP?-r*t(j|<=Y3<19 z(Y!!@e|HoORT9FQeUCwI6HOZ7nM@i2rl-MFuQ)7|oI9y*ljDwBclNUZr-ax*s<>){>lTg|L2 zU`OA49A$%c2->bD%w|6OmXS@R?Yv~7ye4^Q561~#@bU!F)vfEc5GxD=?y=`01ZPQL zHX6&kA|va>0~kdN%W^M-AuXE(%yW;Jz5Js|2BzgOIyw`S(kt zw$2S-Ov#yMX7xUE{g|e8_w=r^fWNfKmzRRyCJ5pZT_(>dOr>l=2~wP0X9)%NaG8@2 zXg)zIWAWBo8CT(>k@?~oKiy2Q(Yx_ZY)v3KXc$_*3frc;PEISzhRmJpbT6)>V}xI*c?RM#VbrExWuZv#;2ryttnJiv9=b|= zIR(()3Di|-_#wnc$ig(lEy;~@eMhm7`obdJYQS%Se<^N-|7s%IWPdnER=7WSSU&pW z;`}m6erAXVtV!K2-2%(AAn(VH{YdF~?&N0NVwD{bZ5rojtT+yD(`h&O;)1|)>vHx- z+eIuEOi2t@W4f3eO=doJ2Ia{o=uO!K`)iMztK5Lw&G0LB?A^S*j`8?d8DSSImmLxV za$KAnw0#p46wsLD3gY)vor5pv6m$iUtE8c1TF@Cwiel)s`Z$`#)}g~A_+_8f3x{Us z+k&T32h=^k0;2E0yCoMiBb}|UQ;iTYHGD`PM4S(K**WQOTOv*x1+(H`mNjZ82{rKT z*{-wo@2Og%E1y(*$*XR+3|jo=HFcYJlRiV}QMaiG?;kkNRjnV!F|5N*t$+&LC@kI5 z&)xjzW^mfsh(2?xlG5OARH?fQaJy)0)d}a^X>E=4yJ=ry+}c8>hOKmGpR_ZQ9Ovi` z`$vza@N;>I<&Q;V{j`^@=sl^1s;t8LEK7d?lrDv?FEzkMs@M zhklLstR-PWQpQ#;|M^r3axUmjQY5t7Y4B$q;g(!4(eRpmnWA6s%uGQ@7nM>^rCa1Q zV;eD|il+S6b?n;S{u_0#Ts9B6hYBNJ<40O*$f)r+^7x4P$t}k~d`6lGpglupd2IqK z0d2by*5U6dO1FYT6f*p2U_=mwjGzS@X-t1)Z&%>)2!jFcJmM$5g=08siVLAEA@|R6wR*+~` zn=Y#ivce4KE{s|X=hFuW?Qrnku`nj_+n9nkJ2}H2CHz(=NWuUOAlXL@n-`Q`+OP2S z>5$$&JMZsuU>5gv)r0eYF_H4?){JFOQ8Wd)rh(zg$OtcuIWz!@P$oJ3ad9h+6zc`3 z2a6=Ydd_V>-c|0pcog0XIqdijt~5cMIO5(VV~s*Oid31-9}&nPZVcL02)4Fnc|@Yw z>hD^eVG2(zakRfpX>s8Q6ltxR^Tukg_Qx%}mEs>_*oVtWT)6){odn~~_XaOk_5sd$ zU2G3|1UvTh+sG(aCtOqBB61Li2{CH^zz{ZO3FU@Z->Wi)r&ne7jJsE*cJZCh zlFikWF=PZ>?p-RRqAvG+Z?d`cn5E-BKUPWjzwSJ*$vr&9xYlRCT%~H(XOERw&M}aD zOOePw&jm8G_aTo@6zPr@fqS}!^nThQ%qqjH93%=ybO{moJnl+c#TaihBVZ+$&ZU-& zydN1|qZ) zokkcp0>l8N&U22^sOzmHXq?L}5Y*ZBx)1xYcQAu>?U2UKp35hSDYV@E@O(uTBPeI? z)oT&5;%_nJBiQOi^YE&S`d=pRDux2+ko@5`6*eRRCYe@m@;6{>R0#$Q@?O%vY@a& zrEUw^{~!yvjYn+Doq3PFb;Q!3YK!>U2ePrGmtB$0N?u$~5#P|M#VEa_$slo?7Efv` zK8hxP9%56AQMGh$i6ZpzXP=UrC&H6Df>ftzi{EsY1Hv(8Vye*@_@6W zV0LUXHx@aa{>**%L>JJ=MEj7yjc}aNirRar`Lo6pxyE&reM?##xMRfp7dF@zE=8J} z+i@7_zUUh-7{nk924rtN?I@lM>E2j5xI>Cr7txbh+BF_5g0atamj`PO_!W-Cvgh(j z-<2#Sq(7QXzK+?93A`o755Y;yx)aYlS-+ueMC{@D?`p0O^l$m=Z$c@&(c;@iU{imL zJ`tL!!f>!^xv*Zo^a}hSW8%qObi7IeE$aM~`?H_?>!|vL8LWH~|vF=gWUdnfxh+zda=N5Oo9N$1>?D9V*KD1}Wo{*j% zFhzb+*NxN)uuUJT@1O?G-Nw99$jbp*g`ngs& zsa`F_QW9LBP$&U!pSlLdyssC>DeYfK8(nw@J|IJZko)HhF@8wdkenNQD#Zz4liPRp z>aZIjK7#M*{8eH*z1L@o%XDK2M$7im`IVoE!!!^pkx#pdcUWM_CKEl`pe!TNSqi@Tp{0TgAhuD(PD$=P&*jppF5ht+U3vDqgQGz? z5KlYLdIY#D`9$89E1nklQ5QPhTQ(@?=%|MGy9J|jk}R}IW(-(kuHwd*lvHq9o-xt0 z_DcFm21y;s!2A#W6EUMq$kb()dK{C6!-WEISAvw@0(^J$^gMZemhBUOvIP~B@BHSO|kRB9-06C(DS9vZ+u z4z9Ln3vT$fsv(Vr??!A=O8mM2pVL}5l(L>qZYQ zysY~DW&oYl&DHI#Sv-$G=!bgO66tjy`VQHRfvd6nxbY(CFhnb_q2U0^z#|=aLNPBq zZYm?*#j`c&ehscA<6EjTUqHh_wcOlUHjvj-S~ok&J{Bb0{cD6NpS(Ltyyn1yfqW6o zjcO4ZL78eS%nUS0ogBhx&m$;gbcOO+chU&fxiB~P_OQ!9?Kari{=K z3?%|svVNrL{N5(kA-^Em=o{7x68K$lil&5_Xf*hzEmAqv^?tqo_PujM&_QB~8%)!5% z;HXV=_pXJS6JSdy_iwseQ&{p+IVDm>gF26P1600jMygZpOMU+REkU@SyZHOQ{N9fy z1^QzsB5aMPE{!y48>}kf<- z9Qk z>~MKa2g)1}80F;Rm{ZulU%Bzn1Y9U2giiM$$WU-cryX+NY>~zzJkjPcID2L%aC#Di z72@T`&aImk5jHwysq%BXaE;`3UE04luVk?Fd4qOkjyzyT5NC9uT6U0=Bfw)(o;-6U z*)!(oZO#g`S)AWxV?r7X_m-np0r;<>K;lEnT0H>RH8B^2K_7|(aVekg{AW4vOt*s{^}kIZT~eB8m`LcyPqBCqkzc# z1%?=1ZeOs7I9GBXUKvJ(?UdX+Z95X7!hkXqI~Db-kVzuPzfu z4sWwaMt566>}hm|S?WHCNbYCG;zB&iQ1P({3UtLV0MO=rx+0k@M6P&J`@f zhRg(fs6=C*%`YrXGTb2x8|TumT@ju~VV<4i&T34fz;jQP&5TUm<`KA`*;#ZdRJdrr z>fYRFcaKDxN2E!}9_e!ynX91=h?Kl}J)&&z+-#H0C7{4q4Pc-%vWa9QR39ZL2;(d; z3x}GdXA3|itaoK-^_gdcOK?Oc)9grBJZGr(nt)H9|Lnu4alsv&g?yV_v%v+n@K!W2 z-BQFB%}$P5Ko_KN6f(Ck{o9q;4?P1`m4d$c@FDMfrx9iLq%f~C=li%Ni9xR&WzTg- zZT2ALuBTU&hK&Ac*r-MGS4{vG$I`sZ_rgp8$dlC0f#9X5=R;o{j|ce6W}SY>9-_Gi zE(bQ^(1n=~ebR<0+Xl1u&5%{F(azuXrmS+(_H{X5zm1}d-)^*9;)NP&#c~OgBjLLo z$K83R4#B_rdv}k zklFhFDefzT=GVn9&4YTApcc(?wCbQA9L`2@L8-QFeMD{H7z>69Pp@+$Vz&&Wo04Vv zF08VmeEXLUmv+wvv_~9^iB`JkXGgg5p(!P9mw2${Om;{X(z;ijm6a%g$**NS$BmXn zQPVuZfoWZ10JKPPgtF&IFdjjt%fih%vJtyrUkE#~IS zYHX@WN)>JlA3Rw*(*PuOX|pe>z8ePhu16kg%X?^h#Dd=rOf3 z@%TJsqUMud@8+#-Y?H-*M;5zXjA{mklV`3DrU;)u1ZmAy*4Ys*+v%})s0r~WCQT+0A;0*fra*|dch z4^h=5A#Lu5v4fBLz%ZKgE--eYcN_j!DEJO4Z3!NExrw?it?VGXxEMLL8;m@Acztj5 zuL2W!r5nr@Lm8RCA;mqGTyDZowcYfFP$t;mS>vuzB{Au6n{ynI`D68flQD1?9#yr!qeONM|;N#(y*Hy z2Gpuj$rm{hSq(q7K18njZ7F>WcB6*vM2gaN>&u(2%Iw)|QX+FhZeIcxD3k*`17-V> z$1`3SYHc(kyc3~wi#b;ME5HZ1vyxaz&KWt~EAHCN`GRwcQqZ)8y~-?_@4#LZ*=2;% z-JkpL@qx4(bHBMLEyZP=;zeP#M z#HO!HtdS3CxX^kBrSHzyO9?Mib&;y4SO3HmISGQg@g?Aln~!VnvJLz`W-Nb0c`$-^ zkMXMssH$6+)L(0qgQVRxCNuAZTtY&o1OH~r&LlpPRD>`XM@yS~8!hT8%-8bM`+7c@ z(OIgrx+Eb!ky5uW)!l0c}o{q+ytTzc#QGM$~Gkd?{U&MY3Bl{R5c?)CLFaF zY!YdLx#(n^7bYDs>{E!x@lrx_ODY?b#v(Uw5g6^>Cb?rpP}U0Oo@dd?<}&66+~QTn z*&NBdaWw$hE+i)&Z4_?hTz*w*jx# zLldC1^z;<;;*aJ_u5Shaq8xuR5&&f;2fBxJ4EiYrsU?n z5ytfTU=AGoI>nsTHW2faBP_((HWPF{qP56UKA!rX-vWwXphLWYOkHHAQ zn3T>bk%i-7{a_V!BHL>(yP4*A{HD3v2-y3Y2y}@L5@7e0hqU(3tBr$fj=GH_MHp80 zJuy99l=DfRWk+^{QO?vO+K%6dGt}%^LNxC4-o7q#|1$E*tW>{km4C1}pD2u@Uf(#a zjGaT1Fify!+qP}nwr$(CZQHhO+qTWOZM%EES=_}$+{M(c>IYP0WIlP$g5DzzZL3nwPM=s;1Bl)rBkgPnu zE=yW_F2(A*<5>zuvBFe7t439HunsVoYo~ez|;1Y1%^M zC-}&LHGzfz6E9n-@}#dO+j}kjT`I>rM`Yv?1ob41^HMqm797%ahAi5jn`}c6n@2=6 zuszxU_-!t(H>19nsbFA-EYFOSsT=tmVZU$}0|iVheqfoh!n?sQX%vR6{?(7=OHgVKU0PHkWO8q4sL*6SFg39NkWFUNtBnXJ!5gf z#uJ9?%fTHaXxo1AmPKp|Z-696C3BB#P3!+WhUFxaRuCOY+~st< zBMD#gpR#MKBGNeFrdZK9m$0~^v>`kR1~f)rYG z7bgUvNQuMy93^inOYfwrK%O4$2r!qD1|#7VY(;Mw;`?NX)d&DMU?M zv&fEqlIX&J1MU8KB}*1ZU2}BcQTOyXouL$9lsp%(Tg7bzbeMl+*kP+?Bcp=Muke=8 z;sD_KwWEv1syDPubS5+{MN_1(?8MSSK><@*DkU~bmaCp^AtbCvk@5pA;o{g)B^mG& zDFxo;R>!d1W!DJJQ`}_vr4!0G9xlYza!Rwk4Po+kQqY1spY|Y#cy2QWjo$#o`A#Al zY!^v3+^0LhGtt#?&2gFND@FT6|7!SpSI&a)?8JJugK+7r`?7bA#5;Vu7 z+)^JAMZr*Pn|jcCT!{=lsE~Dfg&NUd1$WG)usNWlO&IvaPd$ zi0l@{#;A{xUqU@>1dx-~Qw2_r8`n8PkVi4bj?Q`Jbs1`+J zNQl0%t3|va)eNB7G!CTwwj?&|G?AE$qILG}Q1MuN2;Innusd5AVKx=uSn@d5&IC(n z2dye2D_8CwrK~CK91(>+n$vLn435!R_25-*` zJj_95b8%qHhsTH`1px*rwac>I0_NWaZ6$FU2U}8*lbr>9tSjXb0$#?TXCK8G-W=UI zPKc!*IHqkxQQA$fq2Eml)sowlwBTFK5b{)%Zyu!;@mCk>1K4JLt@v3RU^+e(swz2| zL<+PHzt&m?PZihrccII^G;J2661lIB&Zfuq^zDVhiFohC*mr(f6^vWi%cpsxSSA`+ zjzqHG+3#L$Gd3 zYf)`84AGwK2AlE~Ekevq9WZmysc+g>^e0C%6Fi!g%KA&?E zh?+^ut%p9VukEf*xu3F+6?V8yPG^8*|D(Y_g$K>P+MzB!zf&-M{F)yBPHj479n-0ZzP{Yn z0C55?Cvc~Z%ejL!uS%eC)7+3-T>JnedDIq`UiwMmK5=n47-Ya$#pPIAqeg#bm!$$! zj|`g%U-9C_ceM5cBDL;~Q|o+lHP_DuOoj5)0F@z#a)#{k<4cx)d1i-M8>Ai#?{@IL zfxq*{PGWliyMX~WY*OJ$Jh=-dre8Mx7B6CBNwjZv&KSYwAf z+naoDu`~atx)H(@VTKl{b!7D!x+zBSaq7cV&fJC}IawS~wqG`_&tjk;+H+c}N%wBa z3Fq+o8!47+gYKbGyTr;XX-;u7s)K=_NMC_cRr$wa_KkaGeIf06#wm-O^D!z<`#Jc2 zU~Hyq<+F+gKiOMxy#oVry<_sEkSmd_wxZn53lHa;Y&EIE=BXOE9eMYOU>_jWyb=?h-Qt+%s3b4k(niG$2j~WU^bs0 zn}EQsl=;9TvAif{PF1l$@W3C_tUT1;u2;UCGX6#)E5lzE>h@Ge>6N{V?xVG5))4uq zKPNlKpJi6&$yxAR^?ohn-r=pt<#>v9&shDLaaVQ(ZRlLHv}!+8G+${RUXhC34DLD< znGn$z^0Ohl37UX(_3~9vd%{zlT=#d~ug@YmIqlX3Q9dMT4%#rI^ccn$aMC)?HO$t) zF9t5_g^C#HvnUcE-Hs?TeN^L(jo7n{KcP;Z1T^t^JKu#EpToftiMF4DHifrFq90@Z zn|3WUxEH1|KAw{Y5{tZ&LDbdpquJ&NTj6*BD8@Cdq9K((h!l&-Bl@wg3RKtxmwAJZ z$D6wA2)5HhNQXEEMBd3i86~M%qTMg5wIf>|Yk1Fe21HpB&DlgE;Lo9MjAEA#N>6II z*r3%mS2fXP?jGl_lIyv~kaUEHvOy5$iJ z;?-i!$_I_dhh?5p^?KMs5u-uwwi-N@akOcp>%l7XDMo+a=8*9;9hVwT&cBj1rHOa! z&TpA3i9pHO+LSRSq&XoksQ`k4bY)rs-kMzs@+Gsi2Qb`O$&l^|eRBsVSWbRuE4|I5 zql=(tAcfki;QwN0!c2C&m3{4RqY&^pv);Y~-CgYfe2FqXuBLhmsEx)PB{($*k(ML$ z@st5TP0*_gwj@3f%*y>;1lp3W#=P@HYfXH+X%A!Oxgn1laWzf#$9_)IG7&NLuD$%C zKZV-2$@!qhx|L(;fus~IliiFLdQ$sOVw?9|P{JM>mpz?~#SxQ8{8aatIBYE@aUE64 z;|o4AUkykvP9eR(l;6v>@t%c@UErvJdpFdZD!+*TVM(uB;DdO&G%i#{huGWpv2@`h ztdBz{+w_flsnI+GQ3r#^7f*fiZ8}d~Zg+N)@m@W9$3>J8M+ra{sT4BwOZTaO4bj`Q z;)dXzmAv7f_o_@=*X}sNb(r(+XTyUcsbo z9MopKc@`@Sm3(Fp2NZKxE0;=3a;wXZ^@}hg@G~J6Pe@vG=Py1Nx%6Fbbx#XoPXi_D z{7;SY;sQ$PshN*!&IOtB){I#fS6Jn;iCbJ?ED$BSgSlGj3*~M4UfGfJ6C9N_!Xp;~dh#@N!3~T%b^vzww z0?I5s_JzF1wGGZmJ+6Q^nRTdFNg)Z66N`NG9Fq_8&qR6tBZLvN)^uc>kY=_=1>@m4 z$CzW0IJ6XKmHF*M+OWGyQYqh`5nu70_9yo|(Y=62W$AEJ;SvPjB%*0MidvVCietj8 za{vpU=6GWR%_d1ObQ7Sm|JO!?%KpX7vzS4HX6of3@ym*SCqUDyYQw34>4c06OHDcJ zfy4jC65Fza%?s)}$zf<8l|L$m_=**T73EPUe!SmrK^x28;-Lci-Pw@;?cAy%Y&!7cxb#NeBzeosZb8)RG~zfj6<~30muJ#jR?a0A=Zk&0fE- z^lGn|Zo1MNl`H*ZN&wNpFL;pk?e~#Rgm8D%4e8(88zbs|9$C-((f@KWZL0H$2M2P5 zd;I_TkXk-Z3bPzEK8VQ`iqRTbKa@^aMF@|s(i%evQv#P;{UX|(JN)WP(q@hK%%blhx#8{+L z;x;5oJOJ@!y-u;}2eDWOIMY@`@V+YmGjeP?+~Yn9~#cGE+%5ib0`KLH~PJh_yUCyNj^|b8r!xPmAJISXIhCjK%*&p z5;@bhzp^n7hI2tko&n~Lc-@y0EeyA^O?q>y$GY)3(tOT1K_VzL z;h5djYsUf=wV>@KJ^ve_`dDBnV(Le8GWUWHNOjiK5O)vlYbF0s-7y%S3C;dDTfvvm zFmxH|0yB6@9wmP~n*i3ul_vj8s%111sXpnQuweS+u=Zx)x)XY_S2@{#v@HM53fFO} z=M%f={K0BKLLeR)^tgIzZQ>k`6PH%%qUq6m3}6*5=jf7u`&gg#Zqd*iGWxY0&n-Vh zvT(|DCNq;>qoi6)I$p1kE*+1~Y9VW)>S8^5>RzW1+%g}2o;Xtvgx(njdpboyf>^!A z00Mg80Q-T;PcilYrH|A}p9To+_<>@v;TYj+rRugb@_C*^R+SFXhyEVLp-1_jAxn@OXuXJ@he(yY$wVZo)B`w|?iy|5f7V6i5j?cCK7>#sqWwg)JTCuVykAr$dX z0l2>i^R$|r>l4Qz%de1k(z1l|0{4Ot`QOcajRDp>Fu$R@!guyA&e)nqfw^yG7%1*W zLHvdN@fm){o3b!_|B_VUOv$AvAt7HnV^Fw`*9oe>7R<=!QBYnKFPc`_CP@Ha!VrJA zLO>Ljcoh)8VEp7pDI84(6FUq&317`4+Wn&-LT<0w(XHa9`*eO_qrv4*57rcx0e;g2 zdx64rg*;I%l9{|joC1}1d++?Iw_xivCH|Y?@?^tW`VJ8j{P3k%{>E}e&omm#d@oih zzR|5V0*p)ntYoy+?i=IssF0BkaY!&^SE;({8XaGBrE?Lsw^sL1$gUVF1;Iszw<;Dx zWx^*=|11L+GunL7=6Y8E6lxmihY#CfVbxV4eS4O1rHCLk1>L3aiw_a*-y{KT0<59` zM~g<5!l8FQK~eRl9tTsHS!sGm$fm{*LFFS^->Q)T06tPW@{XYk?Vtw{U3yRg~K1((JA#c!#gne99Mah+qX2Wi1t2QF|=ZO=n!- zdk+0!|3hWdofp^YbsZX(2sk@IC7;K~2T?BgpK~Bn2u@ch!v)gffbF~O%Z=X(Vm#Fx z#_Zuy^#n|^@eeS`nunqGun4}^2S>*;y-p$eKbt){ zj_twMN(yMNH}1^t=oey^<6PcfdvRHb>{lNC?@~@0I&-wj)-5($jF#fL2oq}QUdC4? zypXZQkO?=#W0=`rkJ-vvLob?~3{Ux)MW`y+_CdwrD-h+an~nMwK0Hzb7-!s(KxK0~ zK^Qe}yZoct-d^YxMEst(N|}5ci~-7qZ)an3r%N-Ir&?=luc}7uz+HQE@N3co>OyxF!&D@B746af15&R^{(m+@xaF zmHXg@vuQz=QRC-e`hHdTEn+f;DT@IKWcE0L&76x~yHi+vy?!sl)&4tSg~fvSq%!Bk z4j@Jm;{>pG(AwJvH7{4p{wiN$#B0bS97)>QKB)+zU)wQ&GcUC`?Scz7hfJ{XR`8zrU`q zoMl=+?bkfvhC)>Am4%jZIB;;ltf|m@>H7`!lLsIX?ij@?2NrvPb{;ja%iuHaMF2rlme5TAI%b`?m+8ur2dNRWuo*$(Elk zyqRWp;jCAD66%|Hzqaa@Z4|~B>^3}1>8EY2RwB1Ij~uM^{FXk`ye=_AN!;(;_NmiAb0qtTY|};0tMDV}it8U$D(Ocn>UmnU0SLd9q|C)qN!dQ+ zpy{arW>pE?&fCY}5c5BmYtyi0FwAyU1%;=morP+69Oxtaa z&FFjc_s>3lu+KQpWSou@#mY@QN3(|=j4_ScWMIqvCe!ZUh))HaPRGu|R@V$jFT(@f zgySNw^i5uQmBxQq8uvKTQ;Qr{!}?3-#+><9{C)_2NNq)57>y)1!j8~iG!?s)iLId6 zy=vzp%pWS+SJ^5M7LtRNEaG)8bYYHJ+>)82H|S{3@4V-~BvAeyhBpuK zFjlZMv=q|3`oQsL19UYTMx&>uT>le3wVd&3v_%LKk{+GPF@R51Lg#5l^t#E_hh)57 zD^HDEL8=g27Njt5;|YSy)Zy5=7**S)CduJ1co4J^bI{Hg;hE>N0y8R$YbD@!#Wn3u zJ>}zWy0eBVCvg^RT`k$L6O_GCl8RRkSGpu;#@gFb>ZZaGDwJXLew%>_z##-C>*LrC z^H#=#qlpRk9+`ArW~Q4r@-T5|P9IbN`7taxVU@*$3u^#0o(GK?^Wj3>z1lPp-EeT_ zy)Ma)oY~26IrsR!6-VD7GVPs^ezK(9;)PF)#7!G+=zpdWLh8CI^BJ#A4_3Y-^*rQg5+^c zRUrgr&lZ7rCn3rok%OY_hkn;+?toVeU5<^DxUsX$(p9Yr7tmi~ctgw3d4!c=hR8`ra{&Z6`2i&6H8>>C-T7`7QB!mAzUzd^!bW zOEtT9l+F`AyYq#WVSU{=U>V&Z@najHh^DDGxm6UZJ%LS@Z$~ zjI)e%4I!NT(3F>J!KkN)!3Din#tIL7Mj4=(Wz_%&zI{M^qlo)kS=Af*!E}U z9-f-9>6w6YE-e!zc|^5{%dfE}3ToebM1lMH%17jil2ofQ{i%osk<^fCyf?dBMTb$c zoKur)Kq(4%a?aA9ThHo%qtU@}n%i?HBr?PxnJn3BxiMF=mO$g=q+&e4Gj?)V!gxrgv#3M?OmMECL0hv{;p z$sP`>S4`SO=OcO~1YrOisx*My^T_@H(bvlV)TG0Qv>)-Mcj-W-yKs@f7GkwpD`#X% z(Ysl47qHlLHIj%7mD}-BJ{iARv#MrL`tFA6FU5^ zD)1?;v8c$fN8Ve;{+GP}=KLFdx09eu`v|fsO@C@jWk0JAwUuLZb%^0On0rIm+b0G^ z^uT%}>#I`IAdK8N@IQtuyVXy4Lq5^WlL@qPTiK8Oe6t2HCFwoyFf!aPuyeZcqcGTo zL})T6Vt|w;rJp=Iavp%gDe!ksg<+R^GE8Ly(Y29LCg8z#-~!5WDE>Qj{S;^pivMziqiDZ4lKI@O+64hkxx%jXDZV#^8?FGrhU{vao?RxkN6^b}u?1Ry>Yf7e35DzSVv!S|<5gT>MK`(# zoC>%XI`YG@`3-wjXmn`h*Eju8GNb}le8LiO%pckdPoJdAWn>lSDC|Vc`f{}#Hw~Qs zlsm7&f))4y0Y}piFLFb4tp#m0JWb0D*X*uj88%LBO?URO{_vH&LipB%lCMT5lmLkq zcamkbqojADQ)3h?G>9|<4U))BC2;!gZ!ZyeC3D2*hyBaC7t-ixzJULM{ zq-H;3w_=j@$SCd$KbOaZer~p%NiYb^l-Cy$4nGwa?3WQecVM*^x~Y7cO2SG6Kq^lQ zk`yH$cmYJ2S|&OH$FY2z&EHck4Vam%mlCjD7{GZ^2X_@h6e{3{)#9P@VYv2#5M3ZDrEYv zs|V%jfIc0dYPWzh^B8PA7UeGM}x*MDo?gAA&L4RqS;N9LlMV;j{ zSuSj;JDol&US*lGu3YT9=bZp9u0L+iv5(pUyc;x3w~OPQ^KSs74P*&NcQp{;ZM$>C z>iYTuT$ykj#Y6!b3)s5OHp8S5iv?moDEhNGet$zu>o08~7af%1G$X}b^@E<0Qz2h9 zSAa_`H$4@;7kNF~QU#+IHRr}pUxgDztohgnNU|D!GvUDfsmjhmArb(KmLyrw+S*O~ zsQBXun;WaiiIjAFtZA|ryGf{45FaS_gN+z-+%;}_4C4xxzix$;6+OemY*~dpQE%OD z{}%)qrQe7 z{)~V?;V>Q$Q`eNCaz%09;OgO&=RB0@`f(?t&6?g|JNr=oU`6~D?8(-R3?-;8=AQ9y z;W2YiU=4`C(e26XN|Rpy@kC`#$~?5LdMd$cCA2O-l{=UhJ76--(&CAX9k!pI&BdG( zu-njk+t1Y8!?xbvoN;}J#P`i2+19C|>Tj0R8SPLM|CkL1rchPj&0(Heo{C0{?c9EHm-~LC@6;X(R72k;W59COuj@{n>>>eFmSUQu2s(*Wz zH_~5on{*z@ey)Ir+>`g(?rGtEw~L{8i#YmhkiP?iC$p{v4k`jhgvHe*c7Oj6Ny#r1 zk)E*noS^XGR;<+KtD^@)@1yX`0)J6Ca759#z-u1y%9*%yKkw8Y@ScGR2o_E- z%^d!_o)9sg9jTafkWA#o(*%}JE+Cf;%d@N}pnp>Ki9z_(60?P1GX9x3tdjjdJ6-xS zFcwa8ko9lsEPaG5@loA;Fxcc;hKHZw7UPw~rxf#i&zxPk<3(}It8V%12q%%{T#>+5 zyE0IlA3hZm$UriEx+)hS?B+Y2MXp)4%qNkF>(v7io@dD9@2?k3 zV9ljwTFtR^62tL#XNj)|4JZ6t4Ft;NF?q%0rMWJ@{yu5~-W@*~QYEtHyMZhv2_k08 z%hUKf^&b3#!Xo$bG+b<@f<Eo=WxnTxCV4zgQYN{!H3WB6u^RA2n8 zVmH(*qg9eaj%6y0w8f_+YN47YyGyl++J`NT_y&#CwTgrWJ7Kre8l?++$ls15_BN4_ z#UH2v#rWQID!ey)&_P@^9lg&wP;cK22D&^>k@NHUDu~vuq#T-?P4b9 z?+KDNo4(Jpeir4;u#0Y^g1In3%PP~@FQG*KLISW&_$>Gnh2pj}^LEwREuyO4Iw)7< zg?GSm-O6xSG$xCMn+22$jbvMrtfN(|(m#+pV#a!E+0Ua2L)bWun3wMRvO`V>W`0+z ztp!?mW>guw%~CRa$0Aw3e@B@U02yoHOWea=_2OLwPDD?YyyJJQ%{`hY1yZKK%fY(UBUK3cwTjZ%Cb6jzg8L@9rsY0EUJoYF;&vR>L;+%jNh7RsL zzh#&9mIsg11kGP{MVEnP8YBucjNKw9(JqJz#xr~U{?IQ%UTPkiQD0}^LD0SO0z~|t z1M$kayn5R$Vz#Js%9aP*Jsq{DMKVcnKIWOd*^X&hhg^Sy1sPXhXAfYXXD_%aU2WgzbZ@_^v%`~q z-hoi;)joZ$e(mA&|<88%;ZUYUP3a!}Q(g8ojOzC}*Mh$39h~*4BGB zkXVnHisE~&#ula~d6ZZjj4Vs_TPT?`NXG-p}D;#rJsIFj5|O`G)w(5(j- zXbACSCRqzi^_oQT&PqKD9K8`jzxL-4W8Qn8ZFn69*p*y5|iK;1+BbK1jForaa|7gM-N>)5` zq|r6tekOZaVD(XKU>G4zZG#NnO0ITL-%6tqYl z6=A-#JMUTRCe=dAoiM+NCs`q$ydVg%enBUr?ou3s6wbGxbXWO%pgUnmetF-{ z5tZ*7v9Bw%E?dc1fdtfH$Q&>1fKblLZaw#j%st0FQ?y>7CJY zBzUI}xM;t!F|P_TthD`Qqs%k*ZcYuF~OgJ zIw`f%f1QzR>=KKTRTCSMNU;VxE=qWVa!!Ct+l2=o>GMx!_rza9B0pB2aXs1SC}KG5U<)k zzLhe1gjUjaC=6>lxS#G~)rHi028*DZGa*`BN10@oJTeTMk(0Uco2@+F+&0qL;nJJ) zUwkA;4)Q3S&@joFIEZx2NtfiTdb+kg=%I|yPs8TvqeJ0V^5zCE)6L8j4ss=xefzz^ zbBkZ@<(e2a*f4fc{hjvA(e3+Tckt;xr z%@sh?W=%Y4Tl-7!fQC`TkLSX@q5X5LP;;jraiY1m8u<*kztSr7^&3f!I#8N%0{k*s zn!ImS5{21jHfqY2Ve|DSF&Vut=LP)+*?~6m*>(~gflpl6fyPt&5!nFp)_7r2twysn zrXxfkTc?$YC7toRXkf%lfj@bVwH20a<8V!&5g5vY_CkWz-QY-yFQ+(Ze$$fTf1rt` z-aF$f>QmV(rjhzjW@!uprj`?Pg8w}U)c-p3K7Fp7Y5iTlI$&+>HO>x_{> zKz(RwN0C zvOmb3O(v(Yw)?Exed&I0nTx6zqt>o%+^033(GsA1>=awZf zPyb{UMZx|Hx5jFotuouV{tQL(8oppkF+2;hdPP+5=YmvM-pyeNopBtjRx>x%zb0A1 zu%&zJy*SFa^r1~A;|_A$k8f6cS_DyGo2T2dj~Ds4IB}xTn@YJriJdWuvW%p*xE5rg zN;woz|7)~sO`H;^NQQDK@y+iQAME~Ij*}!ZZu6>oe&Gk23b|^T-=1R@-x1I<-6Ssb z8#?yNDnQ@LIrUBRS2X43GXvVjQ&h3L3?>-Re1imd>!T7~J$heC3lA0^3U7iOl^94# z*&!?PnoRC6**F2#1r;+GKX_p2y9cngM`(+wThYrFkN<&G;kO0u{QeQsUiFwFd@*<{ ztqnmuUs_WM=cQw#U00H71JfR#gIB^^Jv9k;+0S}`rSIK>$eSrlJQ+LvZ^MsL3UpyB z48%F3IAEDNYlO=4!jb8u+FGoscA&I37iBpB%v{?|zzr4Dqjqi1BcB@WwMcgPO$) z9+p`ej&w>~>y1sX-2J#bsKj^!VyoY3wz=mhIdO}dE%H|_POj?8OUWub;ZYr!g|BOv z9>rQK0(+`uEji5&`YwD^bW)8XbiR@8>WbAvRan&vqCpDETvI={Eaz@%B96hPF!bRu z`k(a~|Cs{20RhUvWX*4*7Ya?@=oPClB{EUecM#COi<)(uIAkXWfJZG`LG^oz6jA(0 zIAa;x!4FouGE-kO9yXK05uyltV0sbcNSFYD_bHN~vIzNFp^zqX{-5WogNUUU?4-LJpfG zd^?-9;xv`>Avk}L+}OYCzBvakDuTD%J}^k)V^kPfY>?x1v4gj&6$hffpBDQ8O<=M0 zx2<{p6W>RX*e8%{$QefSVtI|@x3nvXRM5`!w5@0_Mq2ZAP^;zj8eJ^20n3WNO%Xra z;%kD^kpC)Ri7`QU`SNcixn23yn2o=7VZwgtEG~Xu*t1vohjsB~WgA2M=RI9(p^u3T zT+MZjF1rKEJDScXK9m5Dkgmo!nLHwU3Ni;P#lB>X{(!!}m2By^=FJMWWkfb<9&BsC z7B&WIT{o3MdoN!G8!8gs9VgpB^dxu#WJ&dh2Ldym8=kGcSh6wPk#=1B{IBy~NKD2# zsUfNOmd=Ken>hTM*9gs)Qu}&Zec%k?6nF~f!>>f6js{uS<=|NYvCSha`JNdNKlv35 zu3@K*Q&n+42vJV&cS&3FK*EL&%(O!}>`QOZpsIuTX(*DU@`R8$rAl zh7@X*KuoL~|H~IM!Pi&0CL%1oNG2>b9R47|@N*L18C_6S0C)&JzQOt$l8x{PHoCXO zxR68dXXg?R$DD`$*m(MW6bq@}EA%XT5q;#Fo&@ez2Qj(_F)bbB4$V^>WH%}0kH z%+^y}zV>VShseS8r;p{Dc_%>+Nt_l0PvpRBqLsb03Q$?8r?Fxy3Yki^`rrPfYJ1rJ z_p|M`Tn8v;M)d`3G9KTpjX&EWfx*=`evadsF1?vav!s1M8h#i5K8!iXD_`|+L7Du8 zf~gOX7;nb&d|%nRn8nG+U@x%@<7Zr$v*d#7`~Yj5yx^lYUivY>DsqEc-s7%*(O zCy-DG+~00ULp)Lh&~+ipr6~sMehAQp5idspstj^Ml2=?1Yk2nl9{QX8H890UI8q_~ zO##iXCp*@>{L{2ikN`dIkaSR>=u(1;iS`5!JW-Ofta0`efN9SvJIV~}Hw5V0u~7TE zqh7H=OZa52RsI>eVzHB($hL&>410|x*yBmRm`WBNBTo7^Q+Yjdmi8nlvgi5dK^mq@ zJ0a*5Le7#4zkEQ?G>5m%H+S-vAY-Mpvja?4ior(^^tB6a*ap(=tbb7ycY6oT;t8RCLZ;mmvZev|1@c_Q?3-?W8I;$Y^TBqgC8?VB8 z7^zAgGyhP6b8iPu6#NCe$h>O^e}!q)`!zO=_(O5y!O=nA{oSvM>BHEJC*qA3^Y;1|M57ToeL}gr=7CG9HMrS_3Qr`o4;nI_cNjP~>{G>Pb)-+a5N!kw#$E z?&k(me+eFrun>DKGz@YG~GRC7!9(xx+65UkU>(#~$7gZqC6UQ5CO z${n_DkPyV({S81c2<*SdX>mLE{=VJ2pC2&bDAx4Z=2x9B7_gKQs>_(7Q@An#N^oy< zF*PzYzJQ>jtl->8UixCJg{9TC5zK+Hk)a_#c}dD!7#7Dyw}x~EN5DtG4&54nDKome z$~#0Fnx6X<0Lud2g^yiJIEEJx3Lsq>79QNd8UU>1ei&5n1nA;Q$n#y;miCr5@TI=; z2yPB9E^TeC&hN^>xrz7krFpaTQI1%OKcmQ~W#6~HB{sVu6?7MZ)yRb5BjQ5{`j>H~hLZ%&kepjONUJdp2Xl9PM*^4%|r{p3Bz^gqH^K8SRFR@*;B zH~_%Fzs0dBkZ1L}pr|OIfw_^bJx~jKBl}mpbEBgpC?Jf#&|ZJw*~&jb1PBCoSGV6~ z;Rk)Xvp>rx`b#6YJ9#sMs~hX1-+gj3qdTa_&uyFEr^Z>FYr!=F^aXw@AV9RWwgLWY zLI1g#tzUW>MHNXkDJ9)t#Y0_>*O(}{yX8i6rw4}*>Q8xIMMzLS0C;HhfYfy0fk!$e zNpELIaPDsRHG+5k|3-Lz`N`42&E!viORcfJ!QH)Ye`B;YH?y?AGJ89#iJHrMTa&01 z)DQFL?hwEG8KeuK13&;=fB|@BYBT;@Kc#8>3|IK?zA$}zad2?}(8$^d3+r1z@4tX| zuuP7?Ksq_Pfqi@a?%(C0^HZ=4?QG7T=$~Ir1AnTzYkNb017Gm(xs&}me<=X7`q5Hf zeWj;xuWfk%&IO=6%}K%2-2@iDf7hG-FG)_Vt*T6oz)Rn65`WxtBXe78Py9rG)I!+r z;ncB7!OgjmH~t?rf=X+60?w$`=*-prFt7L>HPMsZuc9}!wt;uykLV>I=D9Zeu3vs{ z8h@Q#05LV!HGe1G=_Q%5ya*sb4Nu=EKz;Ft{Sf{0zwo*M&1F?}c@=a&e@ip^hDonx zaHngpX#i|;bODjg&5`6h)7=Og9GrlAHFsHT;9lRQC;-gKy}{GoPy>srqv!^Q2QYtU zES{Z!Gi3e+{WNTC{AJOtwVe0<40?J1&6|H3I5>A}-D`ij!&5^*25f)XlTZd=zq2Ob z4BEf5KJ{jA_Q@~2>%aD=-gU$KGHd|N$Nk#<<6K!i`><^S(CPlgHGd+1g)RPPeaNoA z*^{6Kzuj*?oVtHzj{q6Fzf6BmFe<-0g8sGW)BW%#`RPykZC%mL!T%w;x4wTypW6{c zkDRiEj<=1W5XfOrAS9-yD$%)ATpm9qKLy(G`%(*zg&Gv%rrKwC zDH|=pOsVWZP*@Wc^QL&Cm2b~5=4z%bjKwJ6^dgztUi`rretlx!QiaMC)ZCV$OYuIW zv1Tr7rtKOBqVgjj95NyAn7$LA>99!VTNLfWJnos_D0W(i>)plRK3EJLqE}?$&h&xD zNMebXvzE>ZXZS=ckOL87Ao7PAVv@E5ctHpDuz8E|6U{N1xQ8^k4*^n0w>HSTF5z%> zyGPU`-dY(#rvGY9j9c1q-U*mD`f8b!tBCc4!7K2;%;0!X+u-V|Lr9 zvztsb??EuX_3> zRC5qH4p5ZQytfZb)hOJA)e>& z^Gc|{)H3cu2I@MSK#gg7ky~LTuF(jwx(l+S_+D?&suivNUb+Dh4*EE$-!4B4Ec!tm zKprQ~!AI5ZrzG}=ycHq%ZRhG}4f<5AJ*R^hQdoY3*9k_@tM>^VzN{{OB=$snq%wrf zSvkxMekE~o4Xo2wZm`;y`nu6Qqw`7sTCBXwlbL2d&(@@ za7=l^%xOlDr&h(ND{<}PHNh%upXp*KdwYx|W+&B!B)$2%tW zVph_L5_}DMWX%q6_n{X!jzp>G*mz7?J4EmUi+%dFIl`(hm5`*{G?I{ zoH@Q2t|G!ww%}A~heD_OA@Jr@Sy4Ywtu?`m+Q%iH8N`rHz-x7zRHorso~-O#DA|z< zi?9&97L%Gb1E0NS&2^;auiu0$-aPn?zV`_Y51-a0Obn`cwe*wx1&DiToU*Jk$g_Rm zWu|eNI~;M}Me}&#i%Y?ExQbux_XN!3m5&x5SD;IKM=2YB+CDsfNl!t+g>8_)9X-b_ z>FVtF=6kLcHB&|kIkqBw$wZXbUJE8c>Hf$F>%fXt8#;P-ZQ3i9H(k~OVFHhESG?Lu zk1p!*ac8@iAq~w&MhmMIBjGqvAD|^cr z!L@Ig-To}{hK8a>V!v>{%AJQ-2jgjSLgL`n-5_UPuTR&{0m#o6GGSj=h^kLOE!UzM zkLQF`}1G-=tnQ&!UezY_f&nP)Q5{PnvRu{ zK|oskCgtf)187wo`dx3Nqu1x(J6gBk{R)Zy+YNoyIM62j0tvC8X7Pt{Iq^jcovf&c za>JD*@{|%ameEKFmt9R5I2>j2tO#1WESyC7UNjweTv@dC41)jXwu}$BQcz~%=i_4) zJElHw0SBa>+L>=G`WZP=LV1bpgV$U%KZ8DE3m@_CtFH2>d6M>e30CHWa;0;hU=WLF zO5HGoE1IHh!db#~HZA;6Me3&ZW^L)F|LjuG7u~0DcsQbkSLR|)N}xnuG)cCnS?IPf z+r6r;;k=Z=VQ5WVZ^4dfNo{nW%dOd}cTEksapb(cVT8_V{R$ZV z6#a>f!M|aXO^5y&%VKq`lf1etryHSeez>CqCaH z02{AZvoCtEnU6Ook+9XacxFTAv?Jlfy4eO{#@rFvO?H zqS(`(JCUS;BU2tlj{<5qos`m`h?9+5r&`#aO7Q~}$B1ny1r{L81vAw~@F z3^_#a;Haw(c9-7R^4}schV@lg-8Sl_PXQAk^3h*a#E6BXcu6fyzph&>dQc(v1er(x zc>b*nVr9~D?XlpoqnP9>h@bKRAAg6vArEBPV>@ygUfCy*BjC032m{B};XahmZd#V> z8TpTcOTl0MxoI_Zf}X?5>T~C}*4~R? zYGnZX%ges*zA*-|ifhJ>2Y3PhTu0Nq)bm$uq#H0;Ns)9kKJbUhdI96sdx)iF)pC}& zZYAA2^Ne6g7Fs7r*ToC7dd{B8ks94j=C^@;T<+9NLv9sHkJ+S64wQRg*0D-YkU(Y6nzQ-5n?> z1m|vGuUn+``I_(h+{UOe`*sE}KH{-S1;q39EhYIaG8n}uZ!iGJ#+XsXsF~62#Wa(<&Oq;dy0nnXCh0OV^$L~m zA>o-$)3D?o=!|EH{T7NbEL0ON)$F%0m&4h7lPQg)v~ypfrgn2~-JT=;oTr;?`WR zJ%V=Cv*m?=$x#9~PhrU^N4dnG7HmCi#G2`t4vswpvs##I-DrLrn3{qrtPd_2v0~Ha ztJL=J4S8ul!27jvc*c0jN#ftlg*Pu^#8AmSRC{Dt|CVHr_%YdsSaVL5V!kQH~ zga5CBTx($(P--w!{+;!)2f}4K;1|w<^T#@j^@duLAYO0T-Y>OJuh5 zb?H1=AQP3{8%QRPeWsWoZ{{X4UG>$5hRowj$o=A3|%@v(a+lOH)J2q}X)K$erP^L@NQq!aB&Ku9y zaq~LJLMSb)q`$G>=V(};g-~esVJ$P3AraY)$`Cg3?tf)rqdOyK*!XYoGl5G@J_PLWF3J z{R%Z6V&5q}A3MOyR&30A)X}l?d-CPFroOp&Z?igy)4?f&k-%Rs-f%75pA(~6cr3FR znU8~7xVY1B;>2pDf?MHxoVu$0IK~`@DRuDL5`K`*8l?N^mjgdO? z4u`YW-ZfHLX9aLQM$@5+8axXpAG3_HfM%LzFPQTb0Ezw&T<Bu_G;pj9~fi)|m3@@quSpTWIioqmm?vPWg+h$ugEvSv^Dc1pi;H-*hl?( zJxt2avpbM#4`cQxe~ZO+v@G{SXc7+&`V3htA(A_kA_4bmyBdEW z5k))_@*$H98R!Vk7;Xsa_Gf@z!8x^)6SH_?=#m3gjUEZaD%S~BwIW)D%fm$uM z3cLf`YX8n%i>!V0?l6KnH(2QPeqQwap?K;y{@8D6=F}vSa)q~({qnO7yIS}+2!z55 z*QXN*B&s>s3A<2BkmcOz71TNpv5}_*&sAaJtOou>Dp-`c*9s4Avq4_SHPTQ7dmMAj z4%i~0#~(B~cjQc4#y6FIF2-vEC>BDIPwL)q86dTK}nm^Kdv& zphoTdx9dXPTZbd|?!+d#gILn)Ze_xz`!_L7QTtbN>eUa>^Bb6+I8J9=ndW=eQHjl4 zHnkvxY<|czW{A|>w@~^deN38b+r(DHINn5=meVsN^p4?pD@W_AVuJSAgh}JQ{G0TW zc_A})PIilwHYhPC%dFnp>TOBBJ}mT&XCLzsogZ%#?M<kb`uNkidkm9fT)^kN<2suXO z9|Cw&3A+&ji3%qrxxsmbA%|3=d5oAw);9)2)A)^S}Zk{2k;3dLV%}EkdAccE~&x}O{sg5hY)ir zW3oHFUBtM0R5G!17}3`pb9}DjML5m4w=0E0IfecL+0;bkZ%3Q(-zR?AwWq(OIyd=y z`e!#bU?ePs?N!Dz4uEfsdC}48E{%MPw(>!@>9YP*1Y&IaHcu+X?IzaI-vU*HJR9xKFo+RQUlrh=_5)TA=H{dUX}VKK=fXNaGWaXB0X&; z68WROIhS0P6iLMWV7<)D8gfCsmRaNBCKZZB`l4hJTJaG_O#QIUPCY}-uM!iFWSjdW z6k2pKLS_CThsA`WF{lw8E9$b|S=0P57$@ga&J)HNgtQbi+bcG&&pJpx7M{km;|#{O zC930GJJ2?Q#&IGM94L^{a#m~S&;e|%)TDkm`!6g;qkNyccm3-#q<-**m-$ zY$GNt_6wsuZv9ZQL>;HPs2Az4Eg3}CB3F1#M9jx{rnc(&WpC0-8Az`CqvtaF8H|(r z$#3sjBdA5u=^jX|=p=70a;aGoA6-I#iHK+`VQZM_ED5Mk`~())&_X_M9i>o8+FSO5 zERNliw95M$j=NMRKXJ={oEd(rkWk$n!mh@d+BHKy^8*a7fXjhHRls4H4uWl}?dd>4 zI-TS8D2==lQ!r!q}HG8Q2 zV7D3J03-1y9d@MEfXpCEtxH_d2^6~I2Z zV<|QJI;hEDCzbS?EW1o!iUpRQ6)8D6{Am8Ua4;ig7kCt3dP2Bt4{z{cYg__B;kn!s z{AK6z)m3h#p+4DhsKX*I`b*k`{5& za<+IXu!6n9=I0!CDZX^yy>VJKO7$BK=Gb(lSL+U@CJ zJJ5A67+p>ue=73K3gF3)X*5nY(vDWiEq)Hi6<*w`uK{UE#;cS0eocDLm;OS*CDD>E zl+RbB-G8k`K$t7M%x*J#A$s^GHKboGsKGA3ic_WuMHOAT&ep%wobLp^KsWqM{Pw2t z<@v~{cG^;0)W#0b7U6yd+t;FO{znoHdl=kUS=r*19I^Hq)!JJ% zIGO+d#X)e(zu28^`6yx&Ic?-rWo@{elB+<%zFNrFevc*o?7Q{C^U=-jh+1{v!$UG3 zS!((n(80T959IkGrB->T>RC3N0*@w7{HdPuxz|&g7T9i+-baMkloqih1{5Rjr|*1S z&K)wxk&>$PxuS@tVk$FbU7c>qp=8lO>h!;O^UEI{dnC=f)t(x+=fs66W)onW@bWJh9;*z_0-`aa znfvVheVDmo`kw1pgp7KV^Fa)DkbbzXM=LjhS8kv-e@Y<)a_)_2bgc1KlouT}Afz9FQlf#AC&(je*w zIZKXK`q2q$Dzl2$;4K%p@3>t2W~nAh7s%y_qZO28H8K}R2)H*s1a9UCbF@D<{Giu^ zO_Z3>MhlHiaY?+nxm&SrKxe~+Va;y0sm?Mkq|D<>Fm-AjMdk`o;YU?-xq~d~GUKwr zUiDqIO^!)ij5~g?dSxeJYuwLxYc@n>H-#yHNAU_;CEhlGhd9?-;*;pO!f7O1jg z6qfxHH(0Q2y=p_yPQoN_i^_~te>j5T4UJ^(?jwFHfhxbn6H(P8jWsn8Rs`!|);TRDZb9N(<+>B?Ps zq+-x)AHi)tEDcdSSXfQJRSv|U26)K&6E zX2N$R!V(S<+Em&{doc$1Oj=Wc3yFz-O2a?2Zy4j0XAcT;yP{HN)tp^5X*S3fMA2`- z$ORxBBOaGW10I-V<=A?LB;})JCtP4SEDUtQrb$RMXg}t$_eIuvqToiXYMgo#vtB@=iI8Ehp?)q3YB&qJo^VrvutKd4dTP% zA>dQ*Q`D>DAW6;Eag69)iZR{FllmP!{q$%L4Yr<}@$oKAi4N?nt=Fpwd%gKyrwC8v*t0~7!PVMsJXPW=;k@Rvn@ftcjvdE zatKYK8EgZkt~}8eLiZE1S1^%e zm%yp+B*GWPUAmzuZGyEl$Btpmd?_FO*_Ex%TmmP$U;!YtTvx1()k*Lh453inzLy|S z;2;Kwek@^E=)1DLVkbXmK}{Y!%znj2!1KA8LoRC9E~*j&gEgc$wUr7wZgky#!H)dy ztA$p%LxI_#pUD(;Z}{O@U(JvPstk@XfJvcKA^H$tmMWjIs;9PxJvt-t)7MGLhXpk5`xpR>LtGHcQ4x;4m0+MnDbFvE z_w}W@`h?_`Fe6;Ui(Z?#;9drkLvq zLOD7FN-@vlUfP<*`Rjp36gPMpC7J)cB2LS$ay6}Z#C8zH*F3F>LY#ht+TCdQ92Cfq zWPM#kzdXFy3^Xj>orVX_BVC7;gTe($IiceaERho&qK$^Z9KMAf1>NEjo6AnrNdg70 z9{UanrSa0VeV33X(B3%wXO+{r3j*cZJ?gWe=a|vN z=5~e1{VMmNZcfSUgBGqPGyHi|zKo-3_0Q#Erm%&Gd(Q`-#QBSvS4mJm5sd^RY1Vxw zaXEKHwz?-M%8y08B{8@EL_>+)9Dq=A(oqO^o{({J?J@<8Mw$ZXf96*(v3A5XbwI0; zbPgM;^Zq)~vANQmLrPE=fWIQFRxcLvT_E z#HofKf6YR0e%s>x7ML>|wcBs@k@1UaZETMseVlY%yM6iDxqrd=SUw`>9n5VnL%Aw! zHr;J7g%;-%CgQn&D-+qIqtm<%$8xLH1>{{u|B4Z1+;(ql*o(AMK|z9O)(tL3krN@B zIa`dNa}8gNHALMC`cnUCw*UX}|AS9izwF!XRLo3rtg(SOL-OWFQ4tk!0TC|gxQBa~ z4{s21KDsB_lk$_E!HN`!su+gt)RO)UBbz3v9BydqdxH5xKWXo9ZRS1*WL@!R+R~Z0 zLD}vu%T-Tp5vgVC;o*39vkdTNP}y$O17iL8!a0=r7l!YMV&dv>9Zj^64wbt5;?C2W-ZO4a%{8nkejh&p&)zLE~ z6ni%hh)XM!6QSYcC)6T57`PmxjDorq>ts=6#7S%G4Duc>isf!SwOzqo@7%ezJFEMX5+@c0Y_DBCD>!}H19ATb6fj#9LeJu0oF zuW916J;HGGD#yjJ*4FiFKb1*H`PAXU*U;4?#7Be6%GnEcGJm9y;ufn3r|`<*yh7I0 zKo2@Pi%K@Lf)Zu&+{p;CjU*#S*iM8JP{Io>)^z8Tj9Q0rksTY__{bJ$0pC8j=hHvM zcmY{39K{k)fqxi99oUZU@Mg2ci@JXqI4N_*6ZBO|rS;M)ua(Xa0B?ahzDB|HrKju$ z`b}vIam%n0frApF2odq^*6Yh1GLIk~oGJOK#fkqc65tnTX6K7!J-Da-G7}0YdOkia zp1M3@-x8-?-jn(AMQOad4@XwDsIl$($NlG0`s)!?z$i-p^1cbT8KcU6jh|nvf3^6} z@lGpk4NK%~vI){Vzz=87>%~OGcMUxYO&P?>qFe$7m#bX2%k*QQ3#r=z;n%-679H)r z|2;>0x4Z5K=O;aF@6}XvrGzuTAC60WIvFF*klH-qU7g1M!&jAEvg)&6KO`-lxsRHy ziGt2trJMb2; zMwH@(pGfL!btu!9u*vO_r^yu&*LhDLDHmh%LB)YjOki&zkl{z7Zbk&&qAb#vTo*UkvZ(enE>lMSQ^+R8J(l`reDrm!Y5Au9 z^X?HnD0CIXplgk1f4myO8O=OvM#p+V9)aO5SG|m6 zJsoFe?}_7wh>;(#bC+Av7II7N^meO?6Q|Fi)+Aj-@H|iFctC*|Lj%HD3rr&eGoK5r zkEo4&)Fk9hwA8r23+)Z7K1$Woo+Hl5>iLr3z9`|!)nG(x-o|d!;#_Ft#-eo(Us(FP zfZB&2(k3Op&PIL}oANgGxg3&xizDI;Y+qkWUrGmxoN?|U90*31Lm1BZYDRPaLWe6v z`YyUR;#I~P+-5f%R#cX(+O2lo$SyiQ+LA87gux5c5#^8?s-4W5j?f}#lVJX^J~A+l z!AH-=`ZfN-&}g0?yAuLz(``PXpAW@S`6E|I+gRk064gv>pRjhA4b@-nHpC8LFX>VcxbC z#Jd!AjQ=U+P~U@}&=h!0rEc)tw>n{1>QV5Gq)~@hnc2|hrALR@!EWN5xpAqqoyk_}H=f0| zdCjHoGhNGCAHfT8TkjT&A52{%u4*hj}KKMr%}FztzI$;|R4#FuA*{ z*PA14fl5RK<=PXSbcZWb&G~&-lvN}bS&;p(zyRYI1HD6(1V!S0$yde;fD+IbS>mPe zKI=6|_b3}E?B3vkO;~+Lp93WYwrPH1br$i zo<3$1h+v~7NRi>IzHRqqDWtLp57MlH4}tGA)kK?S0Zqr0k;)0y1&+9#{`#2rGgj;&H z4Y+rfdus)gc^0?k0NPNd=@#H;U zTxT7iGwp`63ADM~6&%nq!!yZD&*!85!J0=^oO)^~oLrJE{Iv}eh3x2s2_RHs(H zem)2bi|Z}QqqPOsqoQ)S+@V6@o!6tNaG zI~fjG;rzErN&2cqd>GL_Rc_%td>htW)}H3##!yR1%b9XYMc?6blwZ}Kes9BQyGbCV zneU4XVGNoU1f@(v{h+T&H=wwCM5R=fjf-TiM^XX(q*K3FsR=_dDI62b!D7wR#8l=y6<| zNH^!J>*X)uH-c7a#Lt;iC6r&`+@8xE!r0&r64WT5v9?zaSgMS!Uh%2EAY(qQ2D_@I zGD*+~=9jJP3mbt4c7|x}s#iP3BHmTl)iP5F1f~AiIVZ+diUv5FqGhujYch;m|2)oM z3J#LPosRhM$@osdDOjlJi=2LEXudazpxMbwR=A;Au;#pd4hEQ2a0b9oz)81=M|J(y zI4R7i7EAyx0~loCKxdXsGG_yU$k1VMOTxDCVDRMrL^Y^W4+qs~`*V%^+R5^HB5y3? zI_b$Y5kCg!i5<_vg}()+!}R1QD^ir>geGzpX@^r5($9$JI)2KQPE)tal5-*#g#6!I zMDgjV*`2OTTqQ^Bx1waDX8{DddY3qljdJSGzqn&%)}IGsUi(eGiXN$O=wnqT(g}*& z?|h##^`3a`bE&;|da%7hn&A586)3sQ%3%C-R(|6;J0xd)m{b}Z8~in(s^YkF{Amg> z*X^(D>U>G!NZ;pIs)~>|+g7Tqt9||Xidm8NQ&w{BXq-p{K1hBxdU>JCzaHmfFff zzj0=8Jk-!#C@nPxAmU$a=J#f!tuMsx3vn`a^|lpy!jWKhC^+gWe!fan1E=Ratc=lK zS;L7!hshRUSjszBP#A9cdLu@-@v9$+Wt?IdskEPvjXrs*kOWq7#qV zorz`|P<1p>@dh?2HSo#F9gNub1QM_wpea~5IU*D
ze$-BM31|-%L68*= zRz3{AET^JXE1f?!9+GRY(ZgzjijSt!mFkaawDFt< zr?tC!{Y-x@DoSP{(ZXo(p&j`^s_E8Q4!hgES^V;obE)LZ?xGax#k28*09&Sz3d10LVn6v zlS@<^)c{p|>N(4*V7Zh;tu!zT@Bn7*T=aSIkMWStwtI#;)~s=RB5StMHaYQP7IRdJ0mW5>##F%-ENQj!RZMI_Rx z{h`LhIjDIh7Vcz$s+|nql9Rd?+Pk7trA_wUD*hwwA zstjW0PlzN~h2ziM{UQRgMqthUXisGsP|t|t`=695B9E?&SBZ%FPx3SLI&~2h>EIoQyv2?7V{M`#a z8=1J_VdPHS-#M9IEGeFi&Od`zG|qu=lMD{$G`4EC;K``THP+SIkQZ2asEfE%9@R!^ zibv`xBpsDY4ZfIcvgBf1GM=NI3|nu$GZOlWS5OpCAfJ5MQ<-44%=wE|$aX_7>+%gQ z6WXUJR1!QaAFZ#|-8R%BkDRSDx?gLP%29JigmJ~6L+_2jw93tuc2}4wceHkl9J-#5 z?7A_#Ld!s~*$!|vbV3^0rNMJL3}ySsZ^>n2>Una)8t`$lGS1kOir>`*RKA2(K>MGe zitERitaoT~E)3N&E>2WZi)-Uux z@X~d>ZZ2Q&8wAsVDLsE`U!PX$h*F&TD0_EC{rFWoDNaZCvT)?iWcCMJtTBQV!51Qb zeKf9L1^0f7V7m-Uv0g57*yKB>fBx2Uex}nUh<(wz7~F zUeqHzA)jkre?P{e(y5O-Gx$(7?K?hH;k6Vh@(P=vY!VuaITgHp>(e$y`aoB_4h|cw z!5lIwqlh?33pf(H4VX2bVaqP)bsX3# zDIPihV1+c%yvR1Y)81XCaQhi)Bd3l`1`WSHv5;21cXb9%G&LJD-7w1&SB&;Rl7baX zv5PZmP)?T7aQ9*~sST^F`Y5ZQiI3ZPV9-tT1b$4aP|jDq2qapS{akXiBVcyyyK!5# z^N{5ZXbgkdPM(oJKLmOhDAldy*12%26*s8M4`>F~wqf&8#AN`~Mk4~yz6mqEjZM(& zBn#ik5_FqHC*k;|*DI2J6QSP7d=i=sXz^LfCJRoIq3{){< zX}r?#;qy*{=ztmhsC~D7$`x$9h{3^6jsEzieV&fj_-N6e`DmJeO=`LQLBi~G4Ru>D6S8DIYGpLqTgLESiTATvAj|bI`XY zxC^xk#J*?@X!WwQ-EY!lhT1Glyat5}!JF3)E>|ZUE<=@kT4*k(d?TIweyp2m8--N? zp%>x9q|PC1q>4h-ua3U=z-Ugn_cGFCscM6d_a6MiNLcM@r9RRfi8(!V5NTzqZX zIr%8pz0&9rHD?)bFW%r;OM^h!(m0(Dn6HU>?MMaO$0=O@L{`c_V33~tEVzv#tQh~( zS_7Iyn>Mw-%%r7hLrHqzb=IXG*lsh-=3|4QM)L0jfc8@c~VG9A6z zur6iTT2e#V-jKqso}k2RHya|=-edE7>vO-w=5<&V{-QSd@ZJ%uIiK@VPSfX(S+P3> zs)>T6jdY(jt>xBihGP^jjTR@`VlI7wP1lG*N3JP~q+ipmy{CZ%I*`s0OiXl9Y9O zdJ19ov;J@)P5m+{R}_IKn^YA48(HK8?p%Cgr^g_mNA>X$rqxVN$g<|%gn!O*-}lET z81((>Mdm^1uCzmeYWw0mgKSfCA?*^b?axWiZ!_P*O&ISr5DCAA`er{*M^qv-fh`ba z$#^vsV{M!#xI-}=O3D@kQ|8aWlG2tLUh+b>ORV^+=0ZJCgmuF?jYbze5m<<`_UJwM zt=t9pxIoo$suiH2myXSR5@UE$6rQiT1}%12S{)cx8RZF%Z^BoKdy#Yml+{DMiZt9S zuDEm!ED>%MZMTqqy$K1VnKX?yWaTnFA4r$AFP1CW><%MwM%bj_Hr~_*TLf zn6B^(yBMmumwF|;mKPv^LGvShud6skvt_qvFMNbgUz?=|)J_Yy5%ki@Rif{1Ng(fk z$oQ!25Pr)X;wJviR*@Z|E2x#>%SA`)+( zOHcKGFKz7YfBU@N76^TOg0^Tiwx5O*GA;#wUEPEMlYO?9ZJT5&fb~7M!x-9RStyA^ zQW@1*f0R5!i$B8F#YtYliR(Jh?K<48F1pTZ)YYNf*xI3=JR%1c-%2d++YSp&TZST` zx%x_C>b6sUGsNwO{0dgq*PIwSurIa!gk8BARmv~HrR<9#Rwh&?_W_b$)7h$J=s%LH zZnrI;KQCLEP;ZU(kyE)ODp}A|mo@$JfxEJbFjG1IM1KOE5O%AG#lb8&d+&<8%222lMEt5)^Cn=_Ph=>nzQUmwf>$na(jQ|KSanR1QULen|Ym0cRi@v)}>q!Z90_5$)AiQ z3nz?=Xu$7X!yes4sB8y^w1EmuKG2^hGUj9H&pjM(jtk6IE7%eGg^Pm^OnEHj24xR4 z0x9E!0YOeop=&M(HZR*VV#c!E*hZ~t#3DGWpoGNr)95m(@$??5MbCExR=1p$o@I-I zmTpReUTw@f;N@eGElcIx*n5OZy@+uT!T@=ec3v2jFy1YTSS&1?u*XuiwAAAsmvIU4 zeLR9t+T)obIT>gwe}#63e`(Q~^6&f#@`JJ!A&MgL%8+Lr2p&NYL3Kt8Hkq?$Mk7^; zk?AMz zC_cv@AQ32F*5~ivY!UNC^&tg{}>q4g5^HaDnZesJJeyd1+Y67 zUVl^2f(rD{4v?zlFjJ1Ta#rj1xHyAgP1zVVJ6v{bwM)`s3S_GyU01oNNbxI+5b9rc!7%gdy4!~Iep>~h1k z6tj`XN6MTfEFOrSMyHqHusIs*3f{A4px44yHT`yI`bgD?Y1SCd>9wkuE|x5nGaX+J zHdX$>G*Jeu$|l}PmDxG%1UQuBA@|1XpPQ&eWvMOq5nyCX_x#Eo-PQARhf9=FP#GYCFP9L8da7qw=O zn3rlmU*g?NZ6c7?S zdB@j?9l`Cq%cP%Fn_H95w|CwXuHuXT5$Q4B`GYx`krp3J(JA6wxpX>cg^S9IGaI;G zO-T$5DEE~g>x_b1kpzA5Ekq@wE_>+?^8qZ?le~^iR$J;N8en_|yF(*vB}Mx)cs{oS zjoxf}em$YVjhkt6`(m6$g7hlR{&k4TUG~f*x(&cCt9top%^fykqY|{zfWfxeUsOC@ zd=6^mo!C8ZE`N_Yi8!IE7ws3E%JPnnSH9R&4axSl5K0L@}Hi3eTj8Bx2u zyUK%Z?>+GO^#X#!{9lJVEtKdC(k+0bw*D7nw+zg+TDCrV*QX6K(Ls(DLEEo|5q44Y zy++}zc?ZiAltMD62j6(+zHQ9k@Nm^_Ppr7uQbIJy9712s1d1|fTogjGB5{EMFjHzc z$oyf$R(=q=jP z;f&E{@YHu9+yf3_-SOt1(Bgojf~K%hHgH|1uAl2+Q)oK73q>%U^`8Q^`qqLk-rK9o zSwCLCi=vz3E(-1pwQO6%d3i2@tCa)!im|l?`iKXuX)6TJXK#hR*^I)ya9zc`bl6Q6 z`Mh0DXx4;@jw)w0X5Zo6(tb(;XX7;?Ib;V}R?8TA~ zjFMN+_=x!?25hX{?O|A5ol&ACW?_4=q@UHy;pv09_(kTI1M<6$B!QiCv4(F<=-kDv zI^BES%|@XlD*NI4JPZW)x=@9u)APfnKBLO9=%kpvN^7HUMeX=MBzlsM6A81w3w7pf zC6|QP$Wdo2ZnvVqH;vW*>t;CxUE(+KK43`9z}i}-tuT=l0V3GR@Na-bNwmqt_He(! zw0qwF=znR+4qehkog#wJcTT%4iTaR^><;s0i6<#fPf$-i*u<0<;*8y6k1k9c9`Lno z+qS)X*0y!lwr$(?p0#b;wr%^~K55e?P5PprVCKanlmBF{-$idXm0d=LO+r4_m5;LQ zIp*!MHuhI)y;0MNttz{Y>tV68zGU_MkY-(cE0pLD@}!Y{=Vl|z8=sb!T(VeVWu^?t zO&jlpk296D7gcg#Why^m;JCh2?(KBX$>FKdRnu#K0S@v8Oe~x?58!-eH`+&3UO^H` zit3M++Bkp}8do8=W6cm3m;2>Cu5?NYr*WWi2N&M%z8S5fPCOKzEatPYmN5clciVJ ziE8~`Ypz75Z+v=%WYM_6M^r>Z21mFrf9ko|<8{-}+k(w~&<`WyL{pQwwV^H1OS`;Z z`2i3pif0IgomQn|Ks>>USGo9Oy`7x2hNUZzTs*GxSnQ6A;7t#Of_~*~1|NTZhqhyK zs!9@lay|UAma_0K+JebdAkX@lejTQa2IBZ5xuirT`5n9IwZL?<;LeWVj_bF7+h1u9iUZ12X21@95-BU-@6S`;p$t zR!TS9JZpe@gwOu6&G&iCO2$Qj6%rF&m`ht4Px4OD8`eHGKTOQ7U(j)3q8*X!(bbX} z$8BeRH6YN79y5m?=<(@Mn~AXrD0QJ*xPLFeQ-UfSDQHx`Em_-{UTKwBragTP%z*_$ z{i%&dj;#cTQM|lcI{SBU39)-ra!{Ce5Mxr6Zn^0?d=wC#hE3Vs*JP$riN`%AoT!F? zsP`-tgg#SEPGc}Z%x=naiQ@0eJm18X+i$XHj z^Y(J}7YTnZT}srOX^mlJ5aLsLT$J;Ex;|P|fN-x(r!fN1dXOo-E|^h{+rM8O0N^G8 zAI@X~lyStHpWwAKO=GBf=(SJA%KxZ@lb5DD9*VlCbb(8z&pB@(GHqzzQ9jpZfu!D7 zxJ)w-6{4O$F^l?PQA_9M2E!|hHebH7UQsF^P9J#>~iBGESF?)I}q|682 z!8TQ4(R7d_+TM9`6Kf|!_g*y--IA0fej7@P$83V$$jRT>17}t8?dIMyvQp{Q$Y(d%5 zCOTG9*uE1kR06GPUbiEU7Zsd0O|u6fnD*YT(5vY3*ePPK^zyg6cp`qnCoC9S2(_i% zBxBm<(L7Q2wa%gm>rA4)Gd&sX`$jK*!sSj+W_cT9Yai>K&LJ)+E4DyXxQ)tpW*AR^ z^s8>i^S$>3g`;pCRMfOL|MMa8NHd*W1vS5$EO(057op0E=ZO3r11AhJdmHZ*|LN_d zgW$+AVat6*qFbe_LVY%CmFeqs#=$iQx;0GrCkH;o?u`*E{j%humKlWHCZMuSzDc`H z%A?Z2|16#FTlE9)3s)66n*Y}rZvC`F=O;r>gGJu%q5R(oL9es?X0(fiYA)4!=a!5w z*N(=`pFCxJ`{jPlSuHiP`C(}Xm+FiDSCyNJ`?W%&c+0gJtHXxmt>r0Cfc_w&UmjKE z%D~xjS-AWZJRh#Z;+e2VX`pmaDvbS^F6upF{Vb8WTNonnJG+5Y|#EXS=|-e)8N z#^xF$6jHJ{tmCsh!5_n@I}foNxSwZ?MD-KZujG$F zJwGCKOFx!~AKA!xc#q3apXm&+2eH7#;KACx`wUD3IsY}RvZozIX+iCUcvyd3yg*C& zbwQ#DOAT`53N6IvVR{e80ZrBS%&9e#BZ(f!KUn4_YJX)*D=E&?pllq1o zjA(3%*S!J9ImI>huzh)&{V-L71~f3d z8S=8WuP{;U)`eOoiyN6uj0#A_Y&ACU5;D(dqxk< zw)TuC3sdUXPx5nO&e%Q@V&XR|oqR3_G3VIm!Sn}LLLeprTm1@@T`=pD_PU5u)S)!|i3xSfkzc2)kQTWdt z+K0UVxMqV3nfS}YJ;-5-^C*k&(9gMy3x>-CmZ6U-99s`|%wBT(XG+kn8q*XXPT{a< zbhUnG#!WT=5pBJXFtn~5_aeX*25vPExEn9@E^a9lnznplRf~#{$5Z~>>+qAjcYlm4 zz?8dHFcyp&iq-4$Z#%>&r+@)~ zf8p|yTPFp)_VH_<$hLyUn5n)mE@NBrBjQOS^(+b22h7TSG;>8R@hQg9ku#DcyUN$% zSo>UkR=lWk{MU-aiu+5gdD&Gn7PPj4%0nxa-%LgZ!D3PCErt#G8*9U#@;W1jiysDg zVWGgfNehU_&T5^%tlmol!zrS@`Ltahs}t?qY=MXm!aFJwv&hAOI0)4*VW%Vgv+h+9 zW#4+&^t?tt2$00j|#3;9WA0D>C8kxmUU5hN-HH1Vb`m}2+~ z?I%W$X07$227U_$ukv^rqn9-{#xFZvvSs2ng2?C~om?@#HeJfs=TRiu_yk5UOe1xj z#R}DutcgI=haQTzE=@HQ?Ly8QrG)}AJ(303w%qEri8#T9AujbbEkp=`x*IoN379d^ zto%wU(T?w{cze}U?v2@=QrJ;^#+*DXA)CVHLB-cNXJjM^pL2yOURE%D!Z56=K__;| zP%PvvgBxGLe+b@+0@*Q@>4Bn{yn>8e$~DMXtABD5pAmIE>cGM&(G9wJZ50a)^pC0|Kdyfm7TkenUTC%N@7WLuz zR1Vngw>jxI6Oe9@1%=5AqA<8bE6T-N)t2bzz-lGBqaySC5i6=Vim@2hn z3qavt#S~os&LDo3ncU*P_I!V4IlT@$xi;Ow0`Cy7kF_aMC-LrwuT>Pe4f10C8C2%k zSiMBjk1(vZ2Zx%D($L+RIp=8vUqLM2nE7#6L|&uU+tn|$@3f{$?8>;;u8(tJ2U3PoD4yue?4RL&Z0bb(1k>LWXvoAwI%HgO zgx7nc1zpVqk*$OSaj~-^X|G?U{gWRGt~FA|+4#OhIV#Uj4u3J5?jw%`+9NJ3Rqru@Gmn=vC%<^g#jXo^hxYgQnH|L~<}J*(cZM+yFV7^;R%(mP zVu~Pw=SI&SJ#Ot+J3lWc_lTuZQrSZEQn(l48;0A?7X_4^A~+h};4X<6$S^<28?uMX znIML6-r>Zi==(ZCsu-k;30=mA52RM2Rj43_DVX{sSX?Csa4P}2R_x&8IE_8~5 z89=h7?_3jCbGJV}yn|*qK;$28FBvRjSs_2Ta=7tm5Lx5{_P-#II?FL$yg2*Ia5tZ=Rtp->&# zP**}O#EW$c5Taow=xHIhACm%o^Qe-^_8B0n3 zjm=L)y@%Z(vCAXMpbr?u*XBwcO@H1wt;LyJCtS%W+<{ANbH%&tI7|G`C8)!X^Z+5VJ~777UT74zwLZ!A?^G9 zJU(qP3v{|V?2q+;V3&clnqnI&%A+4KnnIWbbv)XO*wTiw{cqTBeuS>lyVCxSmm`d* z^<*C62yG)-JWDPwOP0YH2c4m#xk-}b@Dni*eKi;Cp@iCp=v8%W?D8okVdW8%B@&7f7J~8q2$>yCx!8iNjjT1DtU$ zn5EZUcVwg`UIj6Fw%AZCbxT9yKx zm{xPPU*8TVQX)F05V#$X&wMh{1{z3d{+y-KNNBo zpCT7KTxgK&dc?QWPdRC^^;)h8w=ncUbCRfPV+CWzl#RKUgl zdVLw>j|gXy^L1==m(m%4BkDEaUyFDraNEW{GglQk3a&$_DQWOAdIsxnS2ZhGn41#N zjUX$}RV5y-F$FGF_g|G?y)ek|91MMMFajy+^lP!O-bHgt#gs+VceWq=K-d9yCb*QY zelQM)jfUj9zMv94H|>Loib%!m6V@n%F)r{1^zw%rQVKDRrP&XkOrrRy?UvC#0D^+4 z7e;KO3eL@|fMgYK2&$)1KbRRor`A$}r?$}sJ=qRY?lsBkA&8XaG94-Sk8X5+!bs$o z&|9Ma6fb539&Bv161!UP*aBAKhk)4A$dh0dX!*-(*7!HxmsKiCV@k*R;y5@dw58&B z67_11H-))4yw#btpSu1E1JVyD#bH}z*)tF}11;&4^ov$;ieZVJ{Pz4d)7q8)JOHZf zhr#%%J?zck)S)jz@C-;Ys&6FvZt;a&9y2&UKJF~%;tzpE3B5n;ov{{MD_YGGN#G0n zPZ52B=Xf8ojwY?Bm!KU5PQP%HL_E)N)%>H8`%6o8T`Q(mHNj7B5IcD~h5vry=0%6f z!T-4|K7SNE$J$oW6ZMw2DgG=Ue_RZ{YdgXBdni1%xL938`OM_eYfwc)lpe~{F-we0 zEUo^Ml#oCij&y&bDX|#za{TqXbK}^|$l#^Mo?YrZq$+8dU-66@w=ruMwm)!~RF#=D z3k?-T)E3E#zVXPWoVLu5Q(LbM{zKdS78tVF)lH4Lh`Zh8)V5WUl;H_`?-2#PQ5|ax zsN4w*NpOepfCQ_uM=>bL^JcgxcCU(UnO9?If<|mcJhER>Vhs6J{-b=+oi}s$d-BaC zmNfQ3gWqJQGwhJ0gM>>e@*{OP45`h-PILszZZ}r{7JFC)m24I>?g}Hje`d}5GnDpu z+i0H6Lsn};7!;a6{x0eRhSsbU|1=QE&o~u`wCN5(bq=8vk}kZwl2l9v>cG zBfv)Rhf9^T(msJPr`1`?+J?DFk{gP1uB3&!NQ&;urVZ0?=g5|m*{I}TwpvsU3!L}S z>XCu?gT#YD9N6(i5q;xk4Eg)JSmt8r5K)5XMs7XH$;2}Ga^n{$my_e}|3!*(|364^ z7FJHS|80n~5HWMJv;QAq{Qn}wnYcN)|9?sGPBl&4tycD^uH^l|!JVBQ@^)S{d85!S zR5A;Pwf)+GATX%^Y;ovYg!F3PS$*rfr@q~IM9UhTE8kaUGkzhd%IZ-nt6M{u6eplS zY^_YqcOaOkN`zMmB6SRLt@_B^7VLo7$k0&G$Ry=$YzvT9Hz28ufIuH0yL$BfV(fSN z<^R<2!NF)T=mdzMfLVKS=YR@IA!H~Hr8gI_Mi2{G0LUZ)gQ2(zYC0z?l8Gfe$YO8k z|5n8Ve~%5#O}>*a6q>P6g=UARR|j@RR&fkLSRlulsab$i@V56Pt$|`ep$uV~SsI#v zxHN&512=)-*`?Ij1DY=-;7!@J%i4ymYUAP%W`B$S=*sDd{x4OW;XhTJx`LbN_ix%*=Mmo540VN1 z?T^58fPYi>=R|?2G_!$)8TtiCa;!e|6Tki2D7VHh-q@_d&n_643zoNDXHi{uN139Oh_gmEZ)vw*#UZbK%@SS_IpCkm;TUTAj5jOxxdSb-v-G~eN*3c zF3jO=v(Go(zH-~YUy+#sx_aFJ=Imdat!dz6;~NmS4-Ijm{=rRzcZr^_g#CwBX|Hnvas(WA$&32&bZakp0Hu6-k%xK>At-cC3 z;ZIfp=&LsFK>Qs3%-=cvtsuN@;oaZ#wt9$6o$t)i)x6_EM%ujow*Kb3GgoYy)ieow>|sF&-*MpQyO0 zb$#YaAH^3Vz@SA;IL%E6h?Eu*6_yustB(%HKQ47=3(&hGyy{p{;pq+Z0>MI>mk27PMx*xAeTIKx9zrlh|HgU% zPbd9~Z|ee?h4vvM254REMTEomSATLELo!wU#Bu>mU-}ofdExwuciX?n0%F(KcVj3h z%xVqy1>4&kP-V^pb-p>@DB)~u%>kTaUu9#@_RnS8*Y^HytDF`PY;CPgUtKt~u&@Ce z--P!w7liEVds#q$at!rZL59~;3I_FGC~xbXL;G<++VbEn;b|LN+HZjU&Nu$_!)je> zc`-WDGh#gF>?a}1u67H65u46F=SFZ}=jylmeYNXnFX2UQUU0Fgw`Kp{-7AjM6X7>C z@1=%xtdG5Sgg2{uXWC5&_I{7<>bL%v=j^v^&utj_+~(#!zN4|X<@y`(eKmiokN7Nm zVPx~@zqR4^{rlV0^?rf(v|Ya-eXLi0?8jdzUI;7JciFrE;J;6X)W4ns->&YB-@c20 zvzaeUbx>a3b&!_onLPp5@1Z{nVAnP`g=3Fy4-LH!_6EOS=>z^~1>aw@0Ey;|jNoui zQbrz!L-rP#}R2Ye}dUBr5^DhjGB@y}je^ zYwZ_S>w?B~vZ$vznVc^Lqc0GvvN%_QrgZgU$S3UtTn#C;T6b94pYm<&Q|_yx=z*(8X%WtMX8F z&@%+|)7}UwdPKp%)YZgpx|O5&Z~lt{@7W-UXYzHU?z4Xlnn9ONXLfFhds)`AGCY_e zSUyufy9cuRJ9!gPWB*;a4zk@5pw4}w`(KzqG=0fCmGhv2fna|`#!CLc_d!;sj&1b5 zZV(D0)3g52V7)m=cUV%{NU{A(D#l8l<&dV!!4kV*srXkb*@2U$OyOdhh(wAJ14Yb? zjK*r@2K`^{({RRrYGY=ev?K#P=BODRy~TV*hsrJ-Sv|D;V;;0{ptrf^+jup4LTqTx zBqPmeUT5xLA|Icc)}m%86)rwP?)SZiLcRWmu`SSmonuY6^AF56?$|iq#|8_U*c{Oc zt{9lR#}C|3u7iDnd5cFBI$!9tMp`xoPC;*fAShZ4i>!{fY#u-JN zqPs2P#{8AX!F1N*Op8b_?|L~!P*nj4tY6tiN0IJ??vJ*p$hnMlBV$tnV5)}jV3+o* z$zNuQm#Eqv@us{YiZ-b8Y&*TRaV1X|vpqzcW+l&_yTIhH2uOU4t5Wg&fn-6yGB-H* zs1JEuc1ZOc$fE~KaRqYf+Ns`j3rT1wKaQC`1dBWeF-OjrjaK8mQ>nIYOkVSiVWL{G zTwb~g-D^MOm<;}fcjesL(}rr{`J?EKON*XSgvv;i*x{blP<}h^YD^+?MQzhRJdYNJ zu6Aw{3N)%-;vRx>^LqHU1>UH&Ic&n<&bE6=*!5tox0bi_rO4MfjyA&krnDxgoyvhV6fW zRJQcqej_%-+4DQ9MIBpPk^)7@EAR^_i@^7I=HCH4LF($QGE`0vq>(Ar@+s-K*BFw% z#tlUw>iuIEJUf58ZItZ&%u;OY(V(Nrt0sN4d?!hf{J}bH&Jl&eF~i|XJTTeOp2B$3 z!B#a12VzQJ5>qAeWo$4@~fHoI7_;ta0!Zc=A7N6{LWhr4WxuC*R`u#F? zm&K%=0(L|do918xtC)lGpYtA4_~;!f-W3(=a$C%J=ub%~);jlI&&$~zGAN6_viKsM z%<{CWEQ#zckO3WQnQtA*ayH&Vz*$~ZVuj{2s64WN0H|H@r7!q6DDmYYd>5@SInt2m zVyHf^BJLeT<}uJUdp+A#l7(5YcM-qM4y;qnl$N;4*~249$t|=mQAx@`{fDYJSq2Vm z8aGbr!w3@Z{Y355dSI;D1RRn?yV(76N0zy^W!q7rw(JimntlQ9OIcV1Q#9g$b---} zo8?k0{?qkK^9R=>Bb8?`cX4|}ZGMgE9~+*^6?CG^t>fyM zhv*|j=_3;a@ge)7ZGHTGXPv`1*+!i88N#M#a_vpW>%fE)UnQ}#`lxk|NPO@V`}#+9 zlv;ur?;s-2{0~ZWu1oD(v#do^T(|iP2uTbJ_rUc9MGA-wo}P3_K2KoPE){%qU!~;d zEz08@3QX(EzR-quy&#B61WR|Gkd5JHjoTHS5&Zb!Z`mP@fH;I9^ zFpyu-*}k@}P^v?1SrvrUIo2t%UDw;(D^;-T@XW4qT4_Y|p};v0b~ys=7kak7QV;v_ z6&ez)7am%Ou^dck>$fTexlS`v@}5jx4T?hRixU^ZZ`#T}R9F)00r>8x<}u-c$Q5|Ev1{Mu`Yxq znn^VwhIOLDcD_|C3fTet(WS^p`8BfF#~jLuyXZ=Oc5T;kQ4s#DMNsDvT-#d2l4j2uHTxCO4>as| ztlTq`)jI(z4@A@~n>=>^Fd1Za{u1D$fX8J{{cE1^9W`8wrX174 zd7)j_yhJv2S1PFS6-&$bU}h{gw`B81wfi*&%l=>&?~snOb7{xk*CR~;$%b1tG1k_07Kw+C_c1QjMzrhm~DLDmSjY--majq~X< z|2z7o#4`)=(4%LZWg{ZEg7XIZH#m)hujt!dw2R}h#DEGax|sWB*GpndeSwelL^x)~ zFfK08Wz$-4HspM8d+%)BSw?v^W@-{#pP?guAfyIgki|}gG1YZ2P!AuE8o@m_(kdxF zy5y)-5mQWjQXx8lDeUa+MhC;OOdj*^9$u9HNyK^tIo+uFcC8m1Ln`lgfVQRX=X>W^ z8i~Bw3fj4vgNjDXpFG!(i&eK5^y2p6wE#6;1SMrBe=FW{N;GL_zz|462;G5)2On;a zDtjosBuG~Xn!oZXDe9v-NOb^;pG9OCZ@I}b4xgr5Nt=(+06jz-bCT`K{DK62g5 z>XPlXZO}PYixTXR^>94N9fwmb<_tfnH|-7~3!2l5zqM`1d}DU4D-rJSNp5!jWez72 zgUD=0c!#&#nW@i(zW7$4Nr1gXy?7Y)&*7?HLQuU<>fP?{Vl*&b;_;^{XDMNm-K9zq z!IqhqWzZN!Unkj9pbpc}IJuzM*Y;utoZl6k#*L`#e@B7&Fjm`U_(8dDyyhU#5z@E! z^Vp5G_{2j<@ke?f@(?al>Qzz&)Dkz|3c3V?b};dBndmreoxPvPyS6lLcM_<<0hPC z_|3bC1WWvSnAWl8A9$xnkB!O(*W21jZ{SRGDmngUM!wN?e!|NYj8SS@anHZD78W>% zL6g%*l3i2lJ-9)s6E^vK>@uTkvg9Ofb-P9D1>L>1TM{4b`?~)!qRMFI{)uZj$=TB0 z#K>Cm;=RLsmGG{7aQl@@=O~Uutkp0(*el52?`#sK-d^()YUjobbS{aCov6!rtRJ>r zHMWMKn|BDglw~2a47Z-b{fM6b6Fan!VA^dlew7~^|wBqXMUoK<$T@$e8By#(KtJY>rly@ zJYiq9;0;!EXx8_plt;M^pZ^6Po$@N&Z=gA2U)ZEEidxb(pD;OdE{Zi06I(Nj7&-h1 zSK2g&-gO5x$jO6oIIuG%LZ?VZki5SO@tJQKfl_SmMq|rvOa_O#(-9~Bub{6tfwOg0 z+HEtON0lm%zO8Tv+1r=hu7#Ft5IXf@^r*2oOlUyP3o=hrh{B`{G`_gF0+D*40+XK= zV`ML?M))#DEcNgytZKS0yuHenu#63C9_#Vj(5pkn?Y@7%5(QDvBZ<8*Y=MyvQ!9N_ zuR1#SYm_A4krcV%!l=>K@lpvOpq_v$BNKW!#dt??nEBH#`<~?+*!i9YhrI$a=c^uD z(y+sDn=7zEyRNjPgGMrolJ8Q#ax|s*i?f6iTz{ET{p{69vU#S!$prEb?g9nMF&|T( z&s9Fd&B7G1_d0j9O86WmO5C=y+-hU~7C@raxQgOrfU*2=6PkPnBM6)(5ge?xnUJjB}}dBORB(0J>vD8 z%4w;OYA3q#6@6t_X8*abkTXCrV!k4-6SGkpxO5+mwLelcC$OJAM9&hk9WEh$-%d=< zcGd})Os|=xT&OX;sJtMo%9+dD(iR!dDsdtZqnHZg5Y@~-dwCrgG>}fK|B=UMN!l>V z%d*81n1B9K8VJ?Y*pE3iA?^H9eA)6DiNRr?k*oW31x|PRAidEVT2nBrD2wkidQoRk z>#rMi@ihkgNlwQJPQ~4X@*iApC1d;AWg`e*c7hcjygs2_^DY15<9uq@X#T`H+srnC z6c_KWyK2E0!XXa&Gnio7E<-VqSDY4XV!Ru*w*J)(AFUvZ2ymRr@=1Ofw8VeI?vRL& z*0B=|ajc;7JwXkv?e-8kF!qO_#3W+w7zp#}{7RfZdb7pX&XpD+qN{qZ2;q^$#$G}9u@veEp76;9C*nWp@b4u&0vEp zHLPY2rSjx4F( zYb!~k1SfB=#4;7o9f0C%RqY9emwLqH#IATCFDon2C2)qs=o>$)wQ4^psB60>h%B-c zEc>UmZXgu`UP5t_o`nlUAztej9k)@dEw%jrCV4Hpsd?FmxB2h$COg9Ug(MES>Q z&&8HJ<#GMm7%_}PR0xE%#Vd7{-GXbrgCHh19GPVzmi{c#uxp6zOtR>|(`+LjU*nI$uR*bLUCGS$7|wWnk|c4Ao7}+* znogTb|FWM(JFxjKv5iby?nZj77Fi#pfb=fp}7ps1ORf$KoVTzI4^ zvpd^qaZ)L_buNmf3?BFK;P*Fl5`mxfM#^xRj@rX|N#x z9oH2JZIhSBk1m*kpDXI~eQ}L@f>=`Hk*}HH)Ols*+vZ@1=Sp$sUwXZRH|_!D7aN33 zzl&$B=R-}@3uH7#$-0fCxZs?C`B#Gg8ySUxCjlf?Co5p#nf2WXw5YM0UpiiH>7C2@RsnK38GDx;Q_*qR0ySWMa7rX7j{=57PQ(hD;;aJ5y-YFx+555 z`JcS~h0JifuXovmv{XNjYcgX0(23!Cg|-fp@XjD{jkXtlGhNwUQ)} zmN=8)d^?Bul!~+IiruEN3&`Kv7MyXj1I39N{J)YOSf?>$4PzIHaEsU5$J`p6M~huWr1vq*fy1j>oW;M4td3P6jT(Jm}^DN()u1>=9HwckT$on_hc5Y zvrVQ*GZ3LAgG$M6&OM!BrkB*~?mWKbg1-&#*+B8CVK=UMCgBIr>N@Ks-#e}}fRkr2 zmZnS2oENUFLxp#_!vq>x5Ov@^NM^Znb;Dcy1hwEGEEd@CDwAn#OfKiCj6ZKYlq#=Z zjD;_-vB+biqH!lm=WYl zNn|Wnb+Ji}UPUQU4jyH*ORgL;Q8n5NI=(_lO$081JLVy7vxh!`Kx@o%B~Zo*vsgGx z3nWExNcYzv=hRu+h-{PEpd0T^UbXkFVM9J~H^=oKW_}LVuGgDgc}R~vN;n(BzA-Wi zn((o^2idg#;A;g1BJ&_n`UE!l@!K1D^1rFj_QBNbeCv_A8+RjW=o~OBEnZ$5Lts{C z)%NRtiVfs;*~V->4{b%>^X?^&J$1=|>7sDwEO8`P13uIh(Jd8mx8bk2>Ly3)cz;E` z@yyrRUs<~AX#BxzQocZ~7R_yXwqP3^NQqK%IUNeo`2BA4k{{)N4?D3A zz#g`doT@JOPqKYJ-bWQU#z(xD03wB7@9Q#pw+y<;-1`R^g<&gP)S?;B9_e=x9WwAW zvSEH~$jKa*kGO)jm$@d!C6l1+23BWc?8%h-E@708X`_6}sufRZkja!}?UCGVivPuwaf)I#FL!NWa?=G|z-mFnR)P74W6#m|DP13vkh z8yLGu?|+OI2T!l?bD*uB1vn=(6gtp!WE{3spq?lX$|w#`%vNr6+TlL1D}n{K*kOk) zdR1P9DWp1_%TcjL-SVQK>G!a(bTyMo_{EY?bAp)=SSCZ7Gf+QwJNuyqP)LEsNUx&c z6%1(*G-g7eD`ud*hluFsL^C&y3sd@+@8k`6Ok`u^AlQ;**n&YP|1|mSV@Bl4M(Yjq zfS&}Q!xL153U+X_Eb*C* zG8fdWKPMyLkh|7L5-EtG)gd zR#*9h;0!FUfh=q6^LyfJsO_uWzKkDYYgwr93=pQ`98KA>q<#vUa7UDgk+p4~a&ReZ_W>ea>KddP+&4|0jdU6chtcp=wJTa> zb#;ZL9h*5t@{tzfS&E2ic%Dnw&HHRG6!QWq|0vmx5VY-%Hlh(C4{~dN7xC-a{qwo- zk+9rdAd*w`E7lIb%mhd4lrZ1r4seYGfvn1pcvvEWz!)GUN8`p921S1O^U$81rHw(D zJaisV)b@yk!82oyPpKkJPf+X>W--|{K-M9P7P^Fj75njlX{j9)typPsb(B9;8AJlw z2VZN^Fpvc9LV?dOg)00A#lTfdgu?O9^}RVTE`Md}PLPeOxv&rdezmONI7b&HjPxY7 zZtTdWU?`;XcAlJjxY!N2Zlw=7Lx?!sKb6(FlH4;X7!wRzPho*`yG$oMmFP-1N0qO` z)q14o?%!Mg+CRs_O^_}!wSyViMr6S*{B_H<1kk$sjC^IbHa#cp!hH!)CZgEDm-tn( zAx{ln(TsL|1CLR`T>yo1cUB1cz*d*kdC9$lpZdUul%3`1DD^73)rxtL3bX#LUPNTP zkFhL>PFE=jq>ii1v|)I8;gkp7B@1_CRx4*Ywo>C_6}eVp-@4>*oIP3!$6JMkPBWkVs5N=~Zk%x^h%hbJ3LUWC|N&Lfk_fX&YJW zffxKhuT*f$oAI!M;)z1h6NfvU1cg_}fKDdNp2X{BAW)azZx?vhRseIbx=4pg&_U+8 zy#rSx1f|MvZ9VHXa$O^67%*D9>9gZ-;DF1iy9;azprX>*7<4=0 znkp$F3|MU3zfhZ*;Yx{dTVFVo9jiNfv6nljrZq)li!!S|(BsmN7$k(2#V6g-Gqqfy z&^Sll>JkHGG42wj(&^goe7LiBY(6DLx`{pso}wCpG=FXz2Tv_hV?Ti*vZ2nA^~R)< z>${_g;$j_J)=fOPH3INz0+E6>nt(;4dVFPg8PXE9)4#I!ydpSH{-`VMlled6Q0)7m z@K5y5DV-ESjfoyr_8)zpw8%Aoc37Sig?}5_C{pVZKQ#(ZHt& z%y|&>KjSYai~Z>?8$u#BWrX0&v-(#1uTT}0e);c%5%3IbmH3*aUpx4?+!u5YN-$kG zA>cWS@)$to;d)7#iy?0W>1J5i(dk9eR;(NS&iMFe2wsV zO)IAhW~;?q3UF>De9xMv@pnlGVH#a4>}4ME+DzF^`t^cQSz|g zQZ!HTL6%95ERiC6eZ+fX>ZE@$FkA^=v2qti!?(xl(MXrv#gG|CyrpNR= zKy5}GCxzRS8pBT%+!dFiRPI-gh8q~8+YMw-(AkD)gwDXH9%=XZqjr1BQ6T6+WXFZ@ zu^}9unNnOWi0fqL`^FOcR8$%F4IJDwFgil857euv6ZX@a#y9LvTX6PJ*F!Jvv@NjNb5{?6G;Lqff;HL2lZ{R6)Dnz4k#-%&Xlbj~7du@GpkGV^1^n#LC7GDXuL;@DpO`6;?6% z_Zl7wGSAKIqL^bmI8+KfBa1hxv(Qm2BLxik^wetQetuHNUFUw|Q-JSZsq>lUCxGo5y)06o^AFu@lcHUlh62uNRpRCbOvEJMdA zc|BefToaV9R`D$!yunw?u55iGl7d8Kr4C4uS&)Y-8NZi5!BMf534>T1@g90w4_v6; zN-0~Hln?Y4;!sBk4shL$1fdhLJWA4KU$?qR=W)jenD50(u0mK9(c)ltOh^xQhGTBm zeXVIYEWG#`b+(mF1hodq`N5Rh--1_z@T{V1lye5jj&8c=bG|WzBy-)LcIA_`(%Gr` zh~sp+0zRdm%fmYCESURC^=x*8vfBM2?RUPcm0H+Qa=GqmWi)Sm<{o zi(0o@ZgDG!8iJG?AA9DMr%T?C01r;jHexG&OOJJ_uKVVVht!r)=t&Hm9n#%q}35KP7maa@$ z7|xbchMOHj``0+9cW#kri28*xQ0y**xSBr)*voeja+t%gkR(K#9ecF_+I^9oJ6uRJ z1IZP$wNnvU`vX5s62gb304GrkEIcN7Ew$dEC^8&XT-Bn3S*@==)~=(osr<&GC&ej$ z_1gkne#Ow(F=Ny-!eCW{FbR-pp9)KptO^&%)pVKBHa+)}(qGSv$OH0X7@+x*5j)r# zVgzM${Kvx%u`D@cSS!4oC@$mId6tSS%Ety0)5(T!*l)Me&Zy#_m-HgNH(fQM1ZRE! z={Ncmj}bzAiX$?tWsE|G$gt{E!oiz+ctIZnQ=wD>SZkf6hcsSED)oL+Fk)Ox0>#(# z>cGZFzmu+9lroVR1~e_b(h&AA)ZA-Dh*+#~0^Vaur~r6)#M+qKB}%Wsx1i#t%ENyw z1SN0%`35zKSkU#GK?L$Tg_KN=#WrKaOM;p-aF#`a?^~3Q##eFe@Q+tO?H}~nOSWIp za~xuDNsNsJo;aEe-Xby8HG2{WT+(*(2C<8ovs&u@f)z4HPo!F#aH%}`>)&wCa-Kd{ zAdJKlfo)pF7fF+B+j>smwGTrlet8!Bw4)jz=JGS?*0Ob)EYvE>-o4WlY4)5>eiq=j z({8Bjr@m z4lC12{NIS&>eEZckz97^uopH$C9R}cSfsca&@r{g5FJEUKAHMp_vyJ9jnAw`O!`ql zw@0zI5c9nKbD^Td?N*CD+OIVl^-;`!gJ`l2y-<9e#REvHqL12_7axHgmX3|y*k9lq z*3$;a>4*$DkH>!+m}`+k7L{48W}yP@^yj>VW*U^p$;py9(Lw0R?bU=(z!HB@a|x9- z_=2A%ikgd^#*Iv0X$sQT$uy#WtD{aTww0=?NdGyx48llCDdR56E(~OuxoP!u!p=VG zfrO)!xz&XjEo$-vG7MD7MjMLTp6}Bnr6g+qP}nwr$(Caoe_S z+qP}nw!7#4FJdNUF^gA=j5rass9i;#%=}W@HO>z}d>aze&)jM-wWL`JxvKg#cCm1cbeo1~a=I9Y@P+Q-K(tQ|?Exqs&F=^O>LEzJhaD?7 zWOAOuNf_3T6e@~P&_FhG7HGabPMZABCAY9$3+7>6T>J5}H_+PaXOtWg%`Mz(4bLAo zIaMGHtsRWa76xzet|dpzZ?|pb77Oh+^6|&JswSr!ou&#m{qupLQV(2Pz)EX*AxG2@ z`sGj}h26ZI8r!p&L;?|v7@ZNUH+_xLG=zpK`64( zd#GMT5zC&a#`_P7uvq)8w`IR==X!ZxL&nwEOSo_2d&^;};#yPxN0uf`X}pph9Q(4Q zJ>mj}G!paR>HUGK)?u38@Db*tDv!IH16m=91Wq4+?HC8$m!XdcDKpgK!3t4R^R$}5 zDR#ujxk}E5I2DZ3I@zFgZ4h!q3!k6qeRYiy;j|zgF>~VG@sV{S1e*Ai(9eW>La5P4 zU$^(}l-N4>aQVXevmis!Wy|jXO#qG#HG%0*Zoz4AGLJ;}i)eDx(Gjj~W|!dkqjA#h zNu654vUT$vyWRAH7iW99$FFC@eaMix9?FtZX^$R0^K4-hrVV4{xi$*f>2_8hGLAQsYq^3&Y(2b zxx${$M&XV*(bTA)3DMTBU9%+7-KYzY_y93Wlu^r9KkLYf^?tWiuyjYMO_FKuJv;-# zP~7en2H%dNHhwzo=T>+&NQM$9_=Tzj*rY8463I0b3Vi3@TPJS~vlbb$9kh0zNrUj0 zP!?Y*ulEQAN~8CsCB(>b-H#DA`hIe>N8zIp9P^k^QU8EhG{5=*poLpHK?eK##j6{@ zgtL11EicpARk&pCy0ROB=q!~^BRuS;v=~iu-giCk>pLz;Yk=?xKQ*OzAHPDY3Gnjn zru%DGVnruS&)>t_Xt50R>A-6`a+vHS^MN)LwaZo3BO>*s#r}{*KG*xkGSC8yuoxlw z5-171#@*0@#w;j|BR-5fIC{&)opdX|Z6O(ZFzGBAMejoSQ^oX~Fy3jG zb+>ZI8GZ=)CGOK6C`%=3DM`2XW+#OuI1C~u5)S=TQ?EBCXS|hx9xT93=toi?sMXQM z+Vys0F~xiGi)Nj@DQ$Vl(~+V5x$k#VzUAbpJ%>$9DnJ5<8-p9NG)NXmb-$`Le~mrX zO`BAsA2dk4W2-~8>kFZiuOZ6uMH9!rB+NmiHiT?UCKQ`9tp6H!sZS`U` z2uTKILf)pH^KBNB6D{h&E{w%<>8BS8zADbRMPSAMeWztLa$0%Ia>G~N8h*<#jEI_6 z+cw-{+2KEZ7xW11wRTSt5+56K^MaIpo$yx~W~FmrAWd8kZX^?ZYnrk^NG5|Y%j|vA zwQAWU)H@Jvm_$tW34th6U zYvTo27laeHvlfBW@d)0-=4r2<|D!$TVa95v!Nr$5Znkau0?8}W3Hm1yhPp4IHz6&l ziMXe%L!-30qCYyRc`)cUBAEKqjLKZ$I_yoG_pl_QD@v^3F4^VS5%z_IKM#z*`MRlk zI>=1m3eqHU!hw4Ieu6JlnL`Owmg`mD?9Gcq*-M*?o>@Bb@(X9)rP@8WP@|oKeN1a9 zgpDp7wjKqi-%=8&MY0D}-E%li7h_dhp7cHZaTB$RkwDo6Sc#E^Vxh;4&yzxQB;nbk zdnS|4&o3X|6J&~nd)@b0GfcP!GlTP$^9|I+zjs=_pFj0lxa*u7C1zPA>P}(YwSgC;lSgP+tqv2j;Tg*S;bM(6N?XE>JiJQ-ZZVTLlJi1Uv+A&)ZBVipRo7 zE+$hP*!tO}$&;FNtR1R&F`M1~O8}{UgLMGMrI*!VBwq+3KAci0ut;L98CZ>AEsA#z zqyO4mOMR_9rI2Kmeb$M=0$o-T4*1P}j*~wLPUEKWg%%u>&P|FOIS>ONxlzCV{ zH9?mOaO@8>&6SQ3PxFk$$p=f8qtH`CkH{$Ae(B|{rh+;VCMa3BZ~Db2e7uvivi6w= zrzS00!8gdK9jC__xX!pWOj_F2OXa}F46(g{Kl6pOL`3DQL}cBss$=Q^U;j)Gmnkv1(GHs8PZ4w7(0|0-jX8&x8pm|#*ddEJC)0ZJY%&yZ@&6ChLuhFYGIEw=IR zw!btcjkjoae*7K&8XUG-XnrI)&Gu!747pq9ysUp>282eIE(j7E#1ITUPqu5#S4HvM zZl;j5gSD;pbz|*_rfs9%T(Dt3rG|G@2Y)VrMj$aA>|IeG*K)iFx=`>a88jhm77w$P z$~5RT=L~p&q;p(x8i!uVVFS`qP(IOL#xUsDBk8WEHQSeAv?6>(|LDDU00?7I2~gh= zKBkF4?#f2sY+(-p8#cff=EcvHFdm`CUThXc85ZT?o9Uqj_R)SAzY^2C#`Wsa?kK}& z$69V`Z-X#5nejL~%d^J?5@BDAzj=%{1!Xv8>YQ~9&t1{APb5;%Nm98ey0i#R^g?4i zZB&nsX&umGK1Cj-ii>B7_MjrB6?AIoe!f(-kA-4IZw5l^y=SA<_M3TRrJQ3krWiNq zXlRe^KKSMLmF9tB397FvCTO$x;zU|)zj|Ww=>V!EwQ3ifM@$>{baCqBv@UDropTmP zKHF|C2>KJIA1!}hnJ?joNukFrH_O-iC{*7CvPXDz6%*w(#ZfCP&>HrJp-N_?V~6UJh4g0k3NMPMV{HVzR;pp3(5v-cNY(0*FhW|CzeKcYh0YA@^0#tXhZkS zwv>N^e-P_Y8%S4*Um(r}$44LzyWx$C%Ewz?b6%&VoYqtLt!&?=_phTYU0K2rUh045Snc;6yB}CUh`{QWQsT zF7bNzPP^T$^EC{7WV~L{7PiW5AwL=bz|+uY5prBN=TgGHK!3!nh{wq@%V3gVV8HGX zr9Gm}Z9&pf7)#mB9(e{6#9TZ;4+sHRnTL6O2wT$$0^64b+Z)i8mfsdrGoaVL6B zwR{yW6&63+4l?$}nx%*aFe9|CPi=l2;GBXMm}TvUu+oXA-J^?z6X6nDOf(7pT}u%e zC5M(C5}-8ee3;E9dU{YTJ`Coh`KYqt&fccGd;hHGiZmLG2}C?#nmo5lx=9=Oq)>{e zTBJ}q2SFKHxj_5O&`*wlaSx&yVIZGA#da9gaCGBedNQVr6JFtDOasSF(ut2*KWf7~ zX9Ks>E+@l$T9cFrrZR(^swsw~zavQo5!GTyaVM?ixH#*CwvyX8H$! z6nGu`2fSvvT~`c@f}>*fPJQ1kL`eAg5W;EGN^aPtUEf#7JxaQ;oiZ}vmMGPFJDd}R zenx4MB??AT?ng<*B5YPk@wk?=6`*liZk?wZq?cQcFJp#=+R~uSp{WtYCTLl9%TU8S z>SxH<5m?c?tRC`b=gF+12uU_g$J!WU&=930ATL1XyhANHX*nW%Pa6D&wjd>3 zFONEoJL!1%6LV+aDzmVT6g;3mG}#F_Pv8<3dczU}OU@3jV-PQ&R=UF8&XqAYMOFjJ zHH%~Ye_(yiw!N{tzzz~kfl{Z>S zjQ0goG?^M}HM!%k&+JmkU$2>=8_m9#9#3rJ()>|wPy3d_L{5o5%{p5Q%#$Sq|)%D8kfRD_yJO9IRcb-Z)qc5$pNv2vZI@ zoqmqHJ4iPa>o!kf8(({gcGZBoF1zS|Ic&m5gqcncPIm2kvPV*a9BH%)AS&Z|)j@Lj zvy~6J`8Bk6cozNCD7a=W1c07fbf!h8)-}||zpsBxUBW?fciD7<4k64WQpELoz< z+~gTAaWPUmtbyJzu}0jOVt|0ZGjhQ(1j@YhmQ(T~jdiZ4gFo7Rb@I>{AFB;KNQflJ zxeB#2E6FhTnngQjxVZ!z+bL?}irYOlMiu1&v3h3_dYdnQ4PoVTK9a@ZC-CS_n2B_y z0s5R1^igtO=WSJcF{7KpogpAnzQbV}S;5mtNIMmxf@aUIBx68vt&ghF4C<@SH3?I) zi({Esw}(LF>I3z1dG9$?D<4(F5n;1mCSIGEx83J%#S7dr7xtk~>mgPDA*1CDw zG|8`-9ea!QEu#tyrJ>toUt5D6tYcrvd^}#GEQQ|4IFizsds@)45G^q~TEbIOHibJQ^%VoNuU6eO`U|zpSZ~4u9_w+htw&G9l!&}aSx1g~ z+EaB05s6hw*p?_8{mMP$`o^kavdCXfWhCY>&``48DohYgQ-p^hsq~NKCOi? zJ6p*fCH~$avXh@X1;U^${>nm3?#n9_A9E&_c}%3?c5{WLd!c zvX$J5(tAU^z&crDc9#2FdI<3pSlwLV*wc=z8dp}6B?btjGQIhz24v$n@jP;|w~D9j z5ZP-4Vl?|qTtaafE)5!a<1j+ZXr-9;-f`0BIp*Fdu%D5lHSe>7<;#~Ow>4Q}uv1Eo zE|l!`MRGlV#;J1s839AGV+88!G+KD&cVjN83xnA)>o$A%+>zd|RH!^dME#Ky8Dd6P zz`PAP{p2W#v!N7g*?Inzom?gNUAh1A-JbRHaUu+}WO0`&W9<2WJVsNd`tBg)-J~=M z!E@g^eEzGtG1{xy7)0|Fg=QCtbLA|927gGb+XiBSYLMqP9y(hoIU-6f3lNmzhL%to zr0B=d=^y;fTY39p(Ron+AR2L(=%@V#P6@tY^tuCA=*KSsf%^K;m}y{0P8SS@4?H^i zH?2xrj?+FyV3*&aM*ePgcq93{O!6SG28{*>J>>A>QIv;(aUeO`pu$Yqn(KplDLc+2 zmg!P`n;K~v_hR;?OB)}CcH$qoh#Hl(v_x3R?E&Cd*nTM*$fYI$LNUw z7*txIm>o zb|{?{R$9>(Py0Lw^GHQy+8^R&>J;NEySW>kS2e`IUT-_O%L%QP!N~rx*b8W7Edvasv<=tx$;Z>R%T*S8)^@&PXRb`)S zUi6crqR(GYY52xlA)BS!-nngb^b{qwwwdg|c~pFq>}}IRu#W;im6W_Vcm3lDRf*|| zT;I>-PqI^5M50tgh;2@UTQnZ&Vgl?8#26+P;^>YGMtV902*N#u8=edSA5wWN3N zj)G+eMYp^Nk4<}M#b&w@LfJBSL%>pA010wko~XiTgp%L6Q}zy8x{1+%*IGp-EpQ_9 z)}W<-b`b)$J!zgBIiTq>jG(*<8hnTRyi48-RJA3%QaKrr@Ty1vtRg(wKNP4MTSI7TV&FM= zFhU{qCKU890k(u3q9VUC(pA5|;-&JD)8K_oaPKN&o=A9qYw; z0f)63DWBb;fEI8NbuN%@3AcFvn>y`)@4R}YId@&lQEThvx)VRQjbV$FSJZIOqTuB5 z{VQhtCKa}x+M(^`*TWM5QIl#9c+V>2cKoW#tjD9jHZ0#7SZkfeBOzadFJu7XUrlTg zpyWm@eT5)rmC_tMFZeEWrHuswgTO(?cjlpOD^20|KEe*KU9DyQm_KHob;zH_YUC?Q-F0c+*Z5DTZ$JfD_k=`Qrw3cvkr)`w_@4!x{OH|>^ND7ZrM{8a4MSP)EE?U&Njwze+R&;oC2gbA_^U0z{5n8_xj<|X znB!^v#Y>$2!9XciKPs_W$3w)Jq4X=Cy7l)_sdA0KyZ`HpuuKwoFmtiSpZJUgXcYV7$t&^*c(!mU@k_nWU}>8Ig674!V?`xG28obv^`Ns=-7hsJnfmZ&9jedTf_->HX^(}kF00@AN;j*UG zerS7McW=n8yO-i~4^^bx1tz!H{FrRX&dL7(mdiAdU~mBooKo9#y?+7GSjuoOuPWq? zSGT!Q#-CjPY5I#SqV1uBu>g517)9%-_I0}6_-Z|MZX+8mL0v18b7uL6&Rpypr{S#V zAh6)PYrHvVKUL4#`VVXZ@;kiDhXwi+8}^4_(9qO;34k^ zMNnQ_qiX4jsfe;>HlqhIj)XvZVJ1f8om@B#Kz{bh39G-qe@;s0(ebxDhsPNrJVA@q zHNnvmOnwGac%4o2?r?Hrr8dRG#jh*_aI_Wsya?OKk*Q>RVUamTSsD~MSc};xpxS0P zBYDHSL?Re=FA!}Cm)IZl zCP%8ys*fX5xC@&CkfeaG{7 zBHC7wa}pv^vHtqQaERP~L^ahITQJWG!4fF|KGX2I!4m;dMR{%+(am{q681y#E-Aow zwP`gC{ob|2M#;ItQcNX7oki_ksAsc44ww-#PIE!3%L)1l#u@vm{0h=<{g`}Kw&PKU z!E=wmDKxRztf7}+?h&JyMP>XuDg~ms5`W!xOztiA3o`fQBb$Rw(?7XmEuBn$I{Z>Y z@%L|!TxlBuFN+|U9=p0g5oRIkP?n9Z7MmgFBA&jLF8V0&;#|2Bo1LbV5)PwRZJGkY zbrfU>0AU-^^#ia?3QYhZLUP|X;@KOAWT|L0jby|I?3k`rXn=qpC*x`XkY#E0j#?_R zRBPN6J#boV)bE^5ta3e_opCf}%?fH>Qa%F#!H?Q@z7-b0}A zmkAh|XeHlFn37LzH)CY5@WRP7`*E=L=ogw06Tjd^xvcep? zpD1otjoyq|%`+@jK_{ZsojZI~Cd06}z{^h?LTz!m2e_!I+f;nX0`McLew>i>4>eZ+ z+Hedv)?!c1y(lqGe40AillB?n#)N}eh5-fND?;~1?aV9tWA871W`vI|)E$+vrcbqYd9%pmurrkHpGlR+Iovg(QYY@7(%<*dKlX&!oC7xDu zrFP;A&lmnwSH zcAZ1+OZU+DDq?#Ubk;P3ZJoeEClf3aiqJ74Wr8POe18C7ZMUgpHNi~+doR`!pz+#510Ebw1l*84AdS6=-Q8<$Qbt=qaLHV(a7~*39c?-SKMcG_nBm_b?Mr zR5rmu&aE|V7=GiRU)SYjDs|ff39AH9gA^qKbc!3@Ts|&@3rCyb4x$stG< zXCw837u(CY+$p9v1fma9JTpD$g=?AwQ=sFMVt1bf=uZ1dOnyj*7GoUQ*7eVd(p?nm zI@lZfL`bFMLnhp9>n8=ag4a(gBl2Jy({nGOLLaHhkJPFlP5vRl$Yid#$Clj!tmA_J;K?~DD9o{PvNk{e#WSs6Px~`Lw|1g7|OdEmUA;V z;G{12M@ONM^Afq=~%8KgiP!bSbH-NpR2C?=%OI+ZRgv=z1-q$E`nJzm2 zbDeym9PSR4v60SN8jsaQ*j(4H;S$CAi!)6w*Yqk75?zhFw$Q-Nc(Y?A3|H7j{J_mJ z=&lw*9&gwCudtFH6$ESNIIPmn2}%ZJdnj_j*_$YqAj^f(ZQaAKp#`ryL`0V?iv_2D zo#(!xdR5lN5CQgfO7;_-m=iK(^kj0B&Wj>i=Wb}Lh>27uy1<8wA3($= zbzq^m-h_|jr0`%jGV}JETF!p6c6?N_*}kztQ5~$Ftm1C%mi+rf0-Y|Qm-N@|>>oEh zZ|Wa|rEG(0Sw;(v&jM%bMuay5yG6vNqU{e0XRWi^{ne$kZ`bjvIqwXrNJgQ0bcJr8`p1RBEZ1dHq-n|uKOnXE*Vnj z=S(o02%2BXI`EUX!xazfti^?ud@dwzy;sIXsLi;uBX$ZC9kq6FDepT;e`?Cd<7eDI z)vgSm%G3SFgYt6s=OqD{dsK$ezfz=%R{PDcFr!-IFq;}n5=fC%*Qn)Y58Jxz7rJ@` zNYA|bkHA=ot^oNg?7%upPW06h#(|L?r6gYHiFrYIK%DQc@#elQo@nGO#hz|8HTE>3>fD z8<=FGr)T|tz9c>rov4Mivxy@RT z>M(j+A2~IF10X~Suv?n{n!J|FC@^D$G7HOrZe;RAvG}Oqx2az`y{c2&@#Q zOuPibH9vTbyf`uGAQ1vUKG2?|TPZM{v?wM5|FAqfOsLR+yniqd?-h8L2R0q9{r$t! z$%FK{v0;uf^$2lpJNv`i4(($A(q_;sVBM_u-of-C)z3S<O_>lU<-j(F zH|uWhq(K_h3jjJkX3Abz!4M?a$tA}G=L?$Kp0v^=A<#BXBsluSsHN^ zEh_BeVJH!MoI!#(e-B9=Jg#jNGD_Sv@xXpONW>watvE!~K^@^31{R=*G1WN!g6x-6 zlr>2H7zMTiI6I7=8Y%WbsL^(tHXD8*e3HKc#2*42$gsEreDgI?-nu^HzxXiN#faer zA)jdC4|eHvOE~n7W`F~2?&7Q;L-@)OqrQuox2-sV`Rsv6Z{nipe+dQE`*GE>FalvW zx7KkdvpBeUr=yo}C7njcZt|Q7L(pGTkBqq5X+T)1srvBof@L|%`Vf%9#aGxx=6T8f zULgfY9G&nfx)Vo?&$ZzV$GsAL84Q?kB_#*20oWt^8wn0f zqYQ^O7t%8!n>J9~I~YpC2oey$juPe5zZVSc%QM43gd@kqexknliWsZ`0U`>E5!8F1#&C{Cx+qglf(39$D^zFiG;=7#k0n)r6Ry{pjk6ZLjYqA zM%Wry3}Op(p&*eF7t83%g&hPc?XecpD>f6vlSdu)O&FpFj_*Vj$l-N213F!!_ZgT01(IXJ4S#~AeJ<3_M1_Jq6I_Zc3TOQYu1 zTaQgMp|kd_tZ@Exj>W}8o2wrf&-PZKEW+utgTdxEZ4U~f+JvpCbeB^HG`^~~M=(VG z9IU2Cerqp|wj6J9Ru`TtFPQ+)t*1IW+T3jUq-`z)S0XVc&VBoiV3|Vvo>z^tJ3lt- z2m7!k?d9Y##Sivqo(a9`re5xJw0uPcoGYyk82$pQ%CtA1H+%MdUNDKRoHyPsq_OeJ zV2m+Bkk{Jm77|jmPqH)U5N2U6a%yzSmOiUyBi^5HKV6s4fx2#XaS04(n(Df!pycv# zc`SQvA0KPP%eAomvD96&+*WbDyPJNrypW3dIyiQb=scLw{IN-2fIVbG*n;E{$b@#4 zQ}H}Y$3o6CfY+Iuxs|vTwekA#WvrRm-{K&O@w&&qyzaurYxG~A`dAG=B`h8KZLlDf z^Xl&Uj(3+WI8pQqQ*GPd9e4c=6dE~#bJ>YyCi2x&F|p+M ztSX?l@dJxQ;FIuzwOI3(-S4x8F;($N!n<#9C>l?2T`H$FJ9J#1L^GHym^!PVld-JZ zQ=6rmhBcpWE8=HP{YVz^if_TxjCx7uJlW1Z_m$C__V(CfH!=qRZe?kQo4WjU)3=*B zwHecx3QcAzX5+!CheBt)XvmU|9`N^kQlx%+VzESc7&o7J^P7y#^;!5zVUil$CpCs# zlOFY|z4<6D@{tmk$u)F-l!>`bo@w1)u0Kf%j>R=B)@toO`$}h&>+FKHa;U7;6XkP# zw{7?BY$G!Uc+wcOzEOkAx5k5YQdsVD(3@rxx%;|?ndXKkV_i|sD|x!7U*n%J>{1er z5SmgXbi}>#C#3M{!_P62z2gM0dm1ma1zCbosW^yfv*70}JHh7tLt3NKc2FVeMfFkk z8SuCxEuhkH8Gku&Mn~(PPI|UXr%AXeYeFqoCem|+RqZCQz++;ESyRR3p!x#_f_iku zQdce`D?xEfVRw2@RvZ3Y{O7LPV`b~U6Rbqj(W*XabScF@QB^V-d^G2znbq-U9MX8R zS!C5ttDW*!Qg;r-lNg+u9E-`Q;F(C;B1WcFo+0@`PpUr|jx-*3wl`?x~BnePqgc(@XHNrvk%IQENy~ z$m5~u?FucjVW-ADQ}?{*XE{iEx2gl9S~aygs8DU8bhsROJeOHsiz;j{K}x38kv7|U zbe*f4mDijPzcXOgS38)u+vk4gY65N)Te1R!wIZ+^P{(wZiFKPNsiR<6+WHJb1#-Qe z`TQ2RbcxlfghWf_Yi38Y&{Sx*Jn5RtxWpmgWKaI8MOH~oTl?iPMk$y2^u;TbL``F8 z&aLFR#)^*o{8{hnV|B4e%a>+x;rqbb)=q(QoISq*gV+`n)T!aog%N( zUQDbNG2KGF?wVWKRMq{nZ=pYSquymM39D-&4s zBb{v{H|DfSUM{@lhjiwxWq&Z3k;pixvG5&P_y{#P%hNTuZb{ zM%1l{O#@7`x=S{^)0QN*QZoWqg-_390mb`>gNhf6ud zQ0|2~?%HV{t8Gf=ue5Buv`(vPv*)Fd*KRkfH#!ocTgCq?YxtK3;M*BmLUD8dcb>q2 z&q&X~@ZTp!d`1=q7N-9`{_nJbk(G&^>HpiMH&M>gYGH{&+S-P4`}c(IDY7Hq+}s50 z1>pDdw1K)o-`s#e)6#MHbk4SaZ};x%^E0H@HlOM~|GU^%L~#*SaEhalhdSDu7@HUx z0GF3n2I25W*4EHKALe&G0bnIXMTK>jlyor53$J7u6Brmm83WhfH!w6YFf=mQ4=x1} z2gdQAxi$Rf(WCJroLLs^A43>}&ZT{UD)ZCUM3s=z-dg4b6*mLNy=;qMADtar+gKb! zxySa;jJ=U9;Mp;d`e%iw(~J%N2c$pHhmA8*GzKCM;NA&d0l=F*E}N&;Vfe z=LGmy1z~aVZ^~#WiQuGJ^wM`>6BCPj{9PifsmZ6928e@KS%?DxXhsKE$hg4t^R)!P zkq($ifdL?icKgodz76r)LLp%hW^q;_)=2+-0?-F-1J2f|`Yrmd-6-3k0{+t3=&TH8 z8vCgQ`6tq=sfqELn!>@skxH?lsgcGtk|Y*x>pfejYjgr|^Ut*Szp9z#;oQ~sw{fHa zX9L!#_W6OnIbi~TS~2AXLEptDBA@9=e!eR7aCJ}W{3@+|;%om7HGQUX^npTr=~+}s zYyUi`$SWuStYxZmwE^KsV^8h;(UH;K*8XSGkMHyboGkrP!b8BjIl2BM3f=Egp8giS zyPX^6z5X-ly}zWne?Et#vA49le*c;D+btMl{lgo>%g1^M0RYfeTzk0}IzL(I&4YT3 zA_^oL6cR3fM1$QXIOr(@cS;ZYjxNqWQlE3(3lO3H?HIs?1;C<0^FPkcNq{{$!1wxm zt^`rb@3p6_hOVi41?^*o%uIT$k(OKyS0@?dced|u}tNaNCVD{6I-+0}$fOV{U z1WE&@*-KC6ueo*3d;dL6`BtN)VB_KA&I&OAbcqgZTpYo;AOB3%wnCnBAQC^nGuQI^?NMPAx>4+sD(r zWxVw3dri6efqmdb@8lzUZ~f^8`RpaQ?Cj?YtnX0+`2hE>?Z3yn<5}ht?50CAUH$jE z>h_QA^Y%;a@Uk9i8$?){~ zQ?JJKSM$xUI_6Ud)mE)U~tfqN{9Z;ABV%e}n!XtkWt{GSZJ2xU!x(@tDg zJXP)rq#aJTY0SSrkayBYT_G6v9~u6)6hG7uXF{I3bM-l8X<{79NhKZ!$xp-&$XH^2 zo|}erdXIW|xbHtQJW+cW&^BUBdeusis-geMSv|X**QyZq<`C9~3TC>m#-$~1li0l6 z3aPXim-DQM@)vC2a5=2~YAg8EU-d-10x9Rl5zzg$LPz=-9-T70^F?T8XC|~n=UXT# zFW!N{ij^zP3$pN1JR4n?Z8|EUDfG+^cZ@h!Z8zLe$scMtFJ7?@7MgZ78}I;Q(IO>1 zBcFwsrSliGAkQcS$w1E-{z&`Ls?JL1T1wF&)K@7Mm9TMDhe6-cofYD$Cq68`3$0I7y582;;-TXD6nMN$Pw zgZa1b4NF;$EVmSeZ)R_r^cix#QKvCXVKJm?dOu-~3hgv%+EV|W{5~rH&ByUIrH1U{ z%@xyG{kL%Q;tsz*g(9)n*o04d%ey1tV-QEx+h&jpEO$*bz()S8Wf8^E)^e<@ zi`6-sq75{6tOzqPGtSPAKIu7D;73txx@Er1_5_cwwyZDY>K2QJ0HY}-eNhjJMpg3a zLF6JOz^WGSnnQt6X4?WgAu2sO3!A2CQM`+GZ_ZFFm0tJP`c+Rf>10b^s2)hwh8WzI zyjB9p_pW;~qo`-2mNk- z419Usq@I%$8DEQv7=y4d4?&`~Ht&FA00X>8^d~1D`%`FE3*u_3b7 z68K$@ZS#h+M-@j`=a#K+aYnM1ydiXQL`k1Bi=^L#8sRhZyDoEQvmo8S;QO=^m`WRAXfVQ&(j&j=p) z+;I{wRmwCYbOeD1?(HvW_h+Ua1oc8K2tL_w5_boqY(b>;Rd|M=yi}j9m2i4qWG6xx z?A6ZBC{r_<=febnJm18)n{%r!Pv+k&k^4($h~OKXcsPkzf+5g!1tyoxs_4W=7~ORx zq)mvL~^B{zXNi}+71DoXx-S%z2Q9%JVV2^_ID zK5}IKmi}Sf5el-IWU8cJ))I^*1j^bvzZL%DhGVTk>WbZ#Bv{#L z9_6AqJ(_WXBa!LbAY_b~^$IDWgC0Yxie`#}qqVBv<|dWt1rrmCIwVZ z(|xy ze!U&uN-MQu3cSp@m1&=>kBmJOVT>W`i0QVGrYBnp({lCin6ZwuoJ~`Mww4-5_UHxs ziqirXX$#8l!)bQjE|LDoVjaBYufM#Sw+D}~;u>yPUKWJAvPneFV5v31KeSeB8ez%L z(P0`YdJ)uO$F|47{GWrTkSOTd+|8|UlewMKErIpw3>re=unygT zkEjQXLA#V(EqAWobeQF($^8cmNxkgxSA;Oh2~u;Ji9T1us1Jia^izR{olcGrDi< zOKaX&XICQkSs4o0VwlgF-nU(#as?2Cjk>d{KLLFMFexn4M{^!;VoV(&hE4Gzm~Etr za?y>{aD;P}Q%`mTpgu8p6l5V%l}^e%tEKim_*u__SOG`gl0msvk`Y1~ zGi~1=AtFj1d=Nk|m5&-y?z~S}EozWq56v@31vm?%PE^$?IXf3utfiwiBp(;=;cfNb zF*_igJKIdD2@k=Ya7;o^a!jYYeA{^?J_rdK>@I^ltXNa^5~UGTO*d6=etFPr>GtrG z>s553xp=$C+UtC$WI+=^3EA+6tGjnm=4fBicEWjKIpRX@hAM>Uqx1i8ZYUlPlN9ns zhEo*rwImD!HSt%SBwhQcDe(;f1pthnki`;^6(sxH1L zH=H4z7jmM~waf9Z;7TITe0NnMKl5@b$7AiU-b9+=dmRv>t%9!ojIc$m_<&x;_}@QsQW#7H6P0J-qh5U*WSBz zCJM@GB;NhJ?$(_ceY(3s?ia^SDi6D0Q=}#sGV&>rs$VsTpvnM~Z-S6_5xbOnRDZz{ zB!hG&#Mt_5OnlRpOc?Ch?D%Cq+ zdGdOCsa!(M1SSh)VzTFJo!QpD25coDIERtyZlLJE`^C>t5}f+LG8UAj}H55iSb55a(n0?pd1Sh3y=P z(~EpXP++KCZgvPhECUiYV-#Z6)9rDGZmoY6FamiWy3m&0Iw;BJSWR0=_d+|RWm_?) zt4cr!M`gp{~_+y3eb2FVV>)so(wmQIQ;m&;u7+%w(PuRoRA% zePnxB(pt#dLJ#0aA`~+b<$MA|wkRbW^heqB9>jYWt{G*4B-#=MKDsH60+m)$^AXdq z7;Rwbtpk;EGYkGAjYV~s-E`V*8DP6GbiNTW=yn>V9TC%=`sA5$R@M3+@@^9`13E4W z%{eP@(ER2|T4+`HIyG*O*x^ClnscVl98$QPQ%~MmTU!Lt)^?6PK93&)&P_*97T95r zme4r5C}Y)qYZJFEVaGSO>ayrt`fi+nc=_OtJ{IZFW|SZ0ePv&;7oSKyt}Y_y#`fe% zR4A7^{7x!C=Pn$kt9BbrQ$LF+zKs1?ihYb{DpmFFf5XpZuT=BW5-5Psq0tEWV7!@; z+8I|r_BCVe;3>mu2M&zHsz%)7XnE0R+)}rGt#x#&1=WPHCizEaB~$-hb(seKGLgM-}r@o{{a-ax1RR$(~oDmw-cSCE@vL-0qx(;*cFMaHEqs4YYYutf5 zscf1!Y9ArBBTyJ?48FD;dwuyuC^mq;B)#Ethe=WWH7%3Z)kbn^vv(*GeMSYX&qRzd zh8cOGX>NZyL%sYLvY`jux*s?DHSibGZ-^esFIiZK|FST=3S+Qd75%@b^c}-z^ z`vh}%IK5L#bsfcED1|B_&lPzDXe}-6*u>h zC#d%93sCYt^o?zye?D?D?|GvTDtWHc42Ig;hwRf162($)|JZe5K^&~v8D}y!w8&H5 zk%Ww)ll}Xoe+@9e?6q6Wvh6MvY@~v~B#d6JbViq!Yump+9|!pUD`9_T7578|VxViH z_kb9%zZ52B;4HO~4;50A{T20tz(93QPh^-il|&5hnWM0e=65)M7fqovj*Yky^dA|5 zp@NWh?(DyaO1LLQ`Y#>NR_hy8#*9AzpM*tKbMq7|O= zta@OkzHt@FeI2;jtxDY=x}4ZX6u+=+WTHlz+UQs%DkeHdii`Zj*abMV%cpIMva8-s z7=R4hQoIwIsnul;B=vtD*WJDm#wYuzl@RTWE``5WRpdsIYcFdy6n&m|pzbRiPub?= z*hQggkDEB8WyW0ieE}iy4SpY=#Gs7kyY1Msr=}E!bHk(t*iBRW#oD>>vKPvA7kRz_ zJ%ROkldj4GDu_ORucq=YP1DH08~G)1aQrei1ka>u63wcyWn6wunUkD9{v*pbT-jZ% zsj%zhH4JP&cY2&G$heRmmzTU^%p1^|?O}>F)pJls5lSz*DF>8zIHa}4QD-o(yrXgH z(_JGa1B7dTPyv{JBNh(ADFdRNmO^;tt)H|;* zAaq=qSia}Yg9-*`n#9FNWW0m|-_yZ@b;ctp#v5m%P&(ASnym7zb(=g=1YKyebT0F@z2fE5FHw9`86NRT=);{uT3{8{)J34bwN{OzR zY?LhuazuaypU%-KRFIUSZpK+l1z4F1Eu~pRLA3*~5dJypM$}W-nw1tz6fE}3XQfS7 z`YnT>iFl#z4dPEb57)xzrSGbT)QPZWB?!fAo@K*N-JcplYbp4rKFzFc=v1x zQ#z%@e{SCTmy(y#?K~SeTp>XJ1rMhUw{&8GqadPP?J==YHOPskLZ+}ilkjZ{H+%yz zuHF=fct6$1ho6Uki4|=D{R#ER*iv<>impM(M@d91><|~%Fqf50QIpEi3u*qG_O+sk zC2|AJ=NQ&-C}o=t)RtT3(YrM+qEfv%$@`TY`$IsS7GOb(NOO2os7=R*1D-P)Sh;d^ z%vYO*vzhqZgW+q!H$Y&nrcIK`z9}2XWHUoc4Ekmzg(rzG2uE{I7HVqTrbS>t21I;j z7P#Yo;g&Z=PHfN_6>}0|j$4$=1d_ux{fhA$J-d2SLHlBFBs^;P#Lt5fnY0BPWSk-g zJI%+RZL{^$tu+PJ%qJs7#kH~Vt2AQKwYW)@YQZ=x75+0lJV>1pXOTc@X@b>V=@NrWM+g+!as2Ninw5!yye_1@npA_-$27_bg7b;u<=|;wlA? za9i7xnH=J8C?fU;cYNLE>eU!n2+fxU;NB#h6?m}VFQKTQbtJ3C#y0p}(K zY%LPha!^{7W~c1__77iV&uJp;>e$y5m#5orIxEB~6#azxFXeCkVEr6!gcPTQ(P*YH zF{FUb(qz9(&(_cz@W>xNox-B?KZ?Qo@;Fp3qM1#4a<_Lcp+7>2q{WhsukB!L@OB=KEeKTb*dJ?|Q-4nDUNklzC#!wv}_FC;9 z2>&^JWTCSA=$KZj>c+@q;UJ;j*dvobS9la!jPW=rK%4jrhqsLAMu6*Rw^5C8PE;=f zFXHOi;tRP>Umat<0qdkh(5lHqxvP7@PWrFeB8tjndqk*sA)0rnm0vY{PWajuC#?yjrps4(04Ji-{Krr8yrBKQ`_Pl*Pz6@}P| zq&Xj|n{+?P@l!)^efoH9xpOP+%vKqL_Ozm5?31CxkdDU`PXd2P&guju54Tz)p1?Q> z64GuOm!>UyXht5h%WEs!NoNQNC;uLXH+|&E7nfDDknXrfGam$vQWFgSNI=&a;a;(X zMQ%E6Y8^9hr*4Qj31D!0$qPby>u0u=4F1shvXHgdH?YqucR(K{6`IM|t?M5=;K4RR z6q|r~tIy#t{cGz*M8(d0=6CTu=&5Lc%9{?*Jm#a=((Du?W(R1biJs!{vI>kxWG#xC zauRERDi9^35yV?``*dlJ^Xiq4Ck=>M8H3mY;7k|nhzBT=7#DDTp zElZUtY;!>3Wi^VKjxqs4fEelQq19O|DCq6WhW2B>Lhh-r76{Bo=8BeioTgCKe$LDR zZAg%N972m?um!s`=7r-R2#ZRKWeZ780Q6v z6H3zM=5DUzE9GlITabLXUDYi4YgenS954@a;uGsqm@hw$nzAeys(npVs&K}+C~N@r zbW%pn`n8G%*Ebj#!8G^78yZUtKZ=`e*gLq$L~+*-Y7N4NtSU_1(K~u3GdpWlEG=aK zC6rPw$v!CD@&Zqq^y0^_nY3afov9xZ@3S1d=tw9ZVS88!2f`(x~?zUP; zrO+0gD<@V8Z$1^T1A3f+-Nu)7o-brlmY64k(&c~2|LYnL77 z-RZRr8H3iAD4X5Rp>*)y>djORA0dcTB0;-5VTU@u?5^3DBG~gpFMpH7xZkwwE|-+8 z+%R`F<~+(e0q&>c%i(3N58bT!!qDjv@hu@OsNPRhDl_pJFjBQsU% zCC+|MPVqx151K@JP}3G2vX;@=dLJ}VCKMIHFY_GlXO|GocZ<8Jkpt2S z?s0b|0i2xxsetZqsve$D5$4S8LkOK6)^-dXWHu`}AS9 z*Zm{Iw`+8lj##ow3d`@P+Ry5}?a;4;XvMuU1?P8KmdT&Xwk1j_U;KU=NoD0-8b|C` zoQb2$i(NbkVstZ7)w!FSACj%N^R7NM*W050a$*$h^LUd~%SbIw161)e#~aP4>*k|` zR$A~&1V9vJZ;coZkMo0$nT)F1-*oh}2xiZZ6?ct}7#B}|5~!^{KC7mm6cUE?%q<7O zf7UHCnTW}W!EQr3i(;0S&ImL=$B(*CcteozaJnO9fxIi!>&lQJYM~_)C zb9^*WqgPe8na>MHDugu-wevv+LPnZpDwr))sYUoRn{=LQ#%-uhzT_4@So1Rt}eh8SE{9<&iK4@F**Rms--mQE7ZVug1`R(iglBX9#%!Q`>GGeQGHl5{cvdk0NMWqLC(r)0akH6ae^d~_NxG*54OShn63 zpHNM?!f$Vx_B=t2mJ($5RKmLdX8R^zZG-jWXH5f4k6>8M)V=;C{o)%^yk4F9N zq>5%Xf;~P4KWZ7sMxk;);{EHfqF$>}5g$M6DrAo%U&7@^o5894=nURkT?9_x;ZF%I z?(!W0vbE}f1>Z)F17%(Ko&?R~8+v=_d|JezH4&u=AOF_2gb*-eO!sk>?Y9Usg6a-@ zZ_~1Z(LAH}Dw`Q@R}MzcsK$)9n0^85S((T}l33Oc)j!WDmU0Qw^j@dPKV-S!#WsR? zS|?Q`mZI9LMnfmvwS7sG;u00F?8vSrV3Ix_8zj@v`({5<8`h9x4D#7^$jE+p^E{2} z9Wbx#7X;fx_u>usV3BFo8R?{NosI7!$RU|LQFe|i3*iHU&W8`C$lJ4KAN|@;3{Yx4 zspPEi!Yv)Rc43uY)gu2*O;>P;`5GagL{yusDP!A~BI0pVd1q1_PXM_G^2qBPcHRkb zi!&j!YEldrR+YD7F+!vZ3#pG2gcTxX?5ZnIvnc{62iU!1sn~4vbY6<8iG(cCQyBotvicg+m zrBa4!Eup+vf*}wl!x0V=3n(E2Ji5rZ5Mx~+ca`0y8V;R?Jgf8x;XLK} zZMhe%7vf4tvy!$`?!`*jMWSpO?}ier&0k3#&`d{?vL(Po`tRo>I_n5c z1)%Bq^813X@o6Uq$d#7OK2c@0oBP=*B`w?^RMh*JCOxoA+M7@`HS*~#3F<~LKHnNm zm6#Vvg58>ur{J}nsPw@^6Rio?1hHmM_C<{~FvC?^7c$Z|ENRdV0?{R?O|2h!G&#Lb z^%UGeDNrP3NNsqw@MH+_e0d{4<9ttri6*BR>Y!d^UF&leG;5@>@01Ml{c_V5#);H+ z5J+$#>6yV`pI}FDksQJUyfUmcuI=>U5a4m|vBFCgU;?3O_*=I%;A%-tMd(s zCO!&<?=AY^@#p)MuHHv?eUwT%T>7`vWMG%on~|N@Mr(47+xSvsjR7I@8Wv= z;Mal8L=s&C3IO9aQl(1odk-gy_2JsY@{fzKMrZy8eubF$b5wI=i!Xh4^B0DJji@@>u)AE0W|UW|N?e zlHq2y6+;s!ibqRhao@;6k%ctuNhu_Xg{kFPzqL%|`;zJMdH>rXMc&I;Z(^;bu4{-= zwNy~#h%F(~iWoPuWGw`LRB+GY)`P!vL>ueo+)2?OrYqU3%@*2QVWebt$r}^mFzxt* zgkMMjy;r;n$GQ!K;e5?ZbbJ1|DYhRA95<}zC`_K5PZB{|f5g7g6m&eaJ9w=751F@& z3d8u3E%K<^uMk_devRn}Va2C?*5vY7o{*5grctu2B6i^oJojsl^X}p52;YXBMw4B;O!wGuKCz{{d~cuPfWHAN6~B1&2a91aSeZ-jL7HXOLu~ng)WNm9GOa) zXx-8Helldb8*DB(VH4l5nej7U&p4L_7*~b^F7PE|y$L_>MHNeSfFyUv#%vec*Xow< zB0X+HmzAVLpH5sYGfD>hO!f4%g?J#K*8S=%(K!6c4R;XR3m9>f4Robmal?Uli}%}b zfXsyzmZtN`V2rt*_2Urxgm*mBTD8w36LLkQs^%x3RZPo^8w>7eid9R-O0#iw**UqY z6Spr|_7Y{{ae0SaIq44@@W61s?KRK#I~D||i~3z_wql_)5Nl!Mq3ZRn^8;2R!y-8o zee+M`ZIV-W4|u5d+OCr@rbt-HZ;dN#I2AFLQlLYR0q(j zFmK*Patm=C%_m{sd8@`I_NP{+tgWQD#3jwqVSc9`UgEM<(CXFxJY9MX@_{XLlUL(6 zHMU9o_g_Tz7gd6*`AaIB7rNt{Jo#Mrl(v3jUlvsOU{xR-#j5Bs<_~33IrFEnCkB8X z)aON2`-(r1ZSijRh~h9OALbEwi?_EbjFiqFhyz4fj)=1{TL_u)<2Y*9Hh`?(8`7es zKDMI7)?2a@K>wW%4LUPcMj%ai(wIX#@uXCHM#1hG@X>v4}|*PZ=7unk8i15B^R4>8Qih??yXS<1vSti1z^gjjOZl|im2e{2q)-cn9W<@GSt8|o9$1vIYZvA^iO48pvrOD%pp8bqZ2 zKkpkt9Uo*Hch<)AOCPdjOdoT7h=$w6XNG#~Qi91;e=Az|!qSvNjOX;*OLlw{1G$y- z`MF|Y+)uI6GN zF`ZG3nY%$(O9>YX9#P$^ByzUe!>IQBdJq(FO|?}$x=iDPtbR6e@^>_s%qU@dno7Bv zr{+y`gY$EwM^hz8Ed}l0@;{n*Ppln4#nVUc(On6lNemS{`VTKz>M{E(o0v!53++Gb zsuEiMeDxFj97CKpz**`wnMQLN_BNEJN68SmjM%HRv;c~La z@lX1#T}~+BO%|03pVc}%*>oPPfXlGJKqcc3@CpHa=J-R3+3+Ut1&-ZZf!^q@@jNLw z@$FRshJjzQkQcuOWzOwz zqV=U|^U6}*Xh(v5(eUc!esF=(7JZ1EJ@_dxJV@f$c6K68*dyW4cl*cbH?$wspaegJ zwUcb*EcwY#FQyD9 zVr)Q5GojMU@)W^zH+@232Gb%-*p92)z=qD)DU~F{;0dg(Lb0d=(&swORzuKR8fMBg z_Z|SBo5!N)1=Gj+untTEbeJsy@hpydMw4l~Xq9&+h_Ahib!((puVk1h6kNYLPkUvg z%OCMYW#nOTQ;Rb^=AfM5%=u5t(TZY?f=ifrE%Aje`>k8kuuPn_&elaW8GjEW&M%!M z1lRTkqZ&-k4r?UH^_+H>A|0&)!{*P7Yx7%VMKkAf5+Re$=x##Qu@@5DpeYJh)B@?N zlZ_86-T}aSE>hRW*7C&5n!`n=jySxUo@#b4Ci0WNDpd7(b60i_^1hfVTS%*Vm-B&) zh+(}jr5=u^BShES#TQAO)p>k{EP8m(5>FQ-Y*WS_zGlBjJ{)SIURU~sPEoTd;mwFi z<|D&mVqbs6e|@advgqVrky&T$FSng6nbpDG3keL>JSa#qs1^+IYI8x~8u$dExsFYb zy8X4ycX^nm;`c#bB#IP+{OnQ#=|>b2|E1qFxR2d*J>Enbq2DU15*d!JQiu=NqLgK- z+{r>NH;zH6xBMlQGT^fGUWOFJHlNBwa8{vHQP?PvdMhjoi0~}9Tb`gVen_=O)zguVv z(}qOU+4&pOAheEtUe5wId+~<$(+}6zO!V)T*m}Xq$3qU}HVi7oJM-kB52rnrSwPGl z*oFFHZ0I-T_0hzrb^RY}-{I9IO!m6Td$@l**j6}=0!O0f!n228d=>EI4(Ddz-JVk6 zb~m{1nqOi(Gk@(%JkV}JgZZ<6FtTOn*7@lDLveqFU0P5I(dn#RG5l8;6BWAo=MC_0 z4F?s+r zRyt|t1wPNiLOf`Yh_t&-^;tAo{*k38VHIDk4L0+NKR1LKj9v>aAZ1p;>2^Y8DV5ry z(`p1WP(MT>7SdIC9a2h@1L|{{$mkE8-K2vJpGHVUVvRy~4m=4AM~o-^iK$017B?!9 zDdSA)`!0Aw=jeRMu@|RC3LQO{5<+A8-0*I+t@9quW1`f)GpQ!8jZ;&}b|^J9IfbQw zdL0<{nV}{}k+zkJzd;`Ralaip^R&BjPhtWSvPo<&h-0B?5n%8ALi%Lmzc&iPzPT$T z$t$2$mDKS@PKRD)R_Ig9fgX>uGKhF+9V%jVY@{Da%<{|R0)hHEzfEAy{T~t5r)X!W zS=hFQipF8HOLi{R>?iGcvN(p`xiw%W8JpT(vT-A2CFRn7LI`f_E0vSdJa#FdD9q#r zut?b`jRfl@JkGqQ+b+{DRr}(#wKb76-i82K)mNC0rN6{hG~;O%3uBr*)TiB3 zf9gCEe9XCyv~j3(vY?Gn3rR$+13{w8B5Y@|%wuuQ0vt$6GzHzT^QndlAx~$3Ex&!H zaAeED4i$3^*VbTeT6$GqVy)U})gQF8aHt2^2{cx3l>}cs z>-bZ+E}2~l$gwqr9H61TFXn?&r;mP1OGE2DHP>KEDoiJ&&C025Xo~C%uIlJM!F_^T|g_6g*kof8T%PiS&&`#YZ5EnDL z_dMgYE8fl+oS)|=+elG@!-}%g)pU>G!HCWh4y8Js0`_D_S{r_zztUflYA&1zJoM(1 zealkkFUl?mG0)_QArG06NU|jYd2BVv12$fm% zm5p%IZ2Xg=pS&KUogu$cRs##z++0~bV6YTFV?mixLDZ%<8FwxuWn)Pxx!Z( zj8dXQa+Y^Q(3u>+;M9KUzA4sXqU(dZFSZPr2#OVEE@U^nZ5b>!<;;m2+nQ+^xl6ZT z`Q0QoB@ghnX`k)R<`eQ<+|v0`o}_>m6w`D2yb^-hZBCAC)Q)af)n!XD*(}6(?k-jq zR%>FE-AX9HnocH=2j?{N<*kxbKZbP2X122`a6NzB3LV1!97Dtq9 zxAJ$x?%P|zwTpU<=hKtd8|u!WU#03S~&*!>W7fbZ&a;mrq+RL7bQ6LJ5O84f8W}r`N}|-ZUwx{ewyYe@QbMqLS8=csI0;*On!qN$1X~e6aSk5G;={`bll z3`PlSu7Qtqn9t|ZFlAtZRe8yC{pv^8;_RI_q+hBeg?hAn>^yntzL=J<)#&#im+27O z)T~EzG>Zq+wT{`VMmy>kuiD|pp%%pSg}d*1_yM5_uT`~#kGKAhf7OfRnN9^a|Mrq? zc-xx3pewu0mSH$P#K+{#u?_pefAZ^s*Tu?UDFD)T9!ZIPD1_L>yDhXtCErFiW3DLk z#Hb2Xgd6|!cIFXw?n9Tb8DX$2(L+Jh@L$3B`7ab!+?HKi5LcV#fmDrI!E-dXO zo@cq^oqzw;{F~Rt@##+Q1ZL<{?7j z7dF!-v<#(#AcN$dc`PF0C3DJBtM*O?Wty8j2yQdf%vQ6Wye%rQF3*)MnPnG>%u+Cn z6^{y#EZG=oN17_sg`TCZas{C3^YPEHIu7vV zDyI!$*E*-f((08lm}YC^=Zit|nHyJQ)&^eBsLizva^b1ax=C;w2bpzBqFy()#<%& zPPI?kqg>=N64F!zEha>Dv?O#hI(ol#_dD{fJ~H&ppRp^F#nZ2lo1WriqYIhga*HC% z34SNcBxA5L>1ZGQUF%(Xh5HT3g}L~4Lh;tf>y+hX{ds>?05(PWXk2cB_(BTl@yc-+ z+p8aY28KR0GcKt^Kb9zk!F68Y3jQW(0<~X|nrZx$P+Ms~p0Zr>Tz&;Rt~H+eB&U#5 zbYUuYSPi-)hm#WSOF$ZVMRzw@n&Inn5orAzcl2t!qwtjrBN9$}6TDh}C)Ex#$u^~C zPRr-1*iRVbA%pkm8eHRhBK5m7prSaTFkjG*o}E$pItNFv3U-3R@_zKS&{pi*%fV}| z-{~`?p+)LVU#o)dG7H9N(^GR{YoRp2oFo`epn2|U=&EG8tB&MGi@o;!?VN6E9`?!T ziP2;kX_qWOGDONgA{W3KB0|yO1p&9^-0ARPv#qjp0Uu47ZD9Hel5Dg578fJ!Rib2M zhpDxk!Bj^JqH)nN$9ky>Cl$Ri=l}8f!?pnWrSc`JlO(?EuW1%C4~<8HA6Uq3v&IFL ziJK`-g9U;cot*~1&gG>e7c8#^CJC#A<_v%FX6O4j=||fa!sYCzlwN3Pb8O6}U}^Jx zj{KrVN0JoH+V6;Y6SF8^TNV&Gn(k)AialYNXCt1J6{RibnmJj2r+9oR>ot;L9zB?j zi+W4@E&c?6(AGbq60PVe893-=)zesq$WYKL;Ji>(p|d zVA`H0m!St#0m)Nk3~&Oza=Jl-p5_C$KXFQwWI+iZ=qPl=#jO|i=q}8}pnp9{>-@eh zdjiKD)ZbdY4-iHZdOnuk5 zUdLkp3m_RFkcDr|hLVZE^HLH7vFO1Sti~7N7v)cvjP*t`8v-2|2Or^2pUNkX;{g3M zqmUr>)>(K}ij3du(I7w8_9;FuNiykTVlu4($b>rJS z(Q^!9jedPuO2NC^iIaY%!`^Ba$FEUyBhE){3wwz;f_WVwni@nlp)C?*RX!*&m2=B)cHS35m{Q0tX- zC+hto;$}XCT)TUVl?Z9LVQ>zD7@zjUL)-L?AQ(b6Dd^V_&r~{F;SLv(9W6gS4XsUQ zrpuB^kWp-)4UoF5m5It2;i>a$wZ9WU2)k_8=93Dks}oYzzX7f#V~{UUW=trdHQfJ( z>ZL&HAp>{U9FKaXpzjgrQ#7v&fV#iQmCSSWt}xbhkQwc+*5@NvGX88o zlxiU;=7vHe8Ln|+TeL1{Z9|V~i$!c$3sr`Toctk;Ro5}2petL>Z3U?QZhw7*<^y$1hUBF_IU4=r4anC?Gez@3zv&_m(mLao!IoCAhk z90O2Ster`3&5<2kNSQ%;4Jv!7p>%1JanA4s8j9?@v!NfAX(0z^l3cnt*K9TURbj0{f{*X5B_&mp zgiyNW@by*BuT8Kxl!KVGQP~Y3{ZuG_<|AivHUC}B zWqd+K)kfPXo4Ksbm?WwDvo%>2BxB4?d&@cEC|Bc0LkxA4uw3p*&xw%xHSk6&e(-xA z!lekOJyGIxfcw{~jN>%$5{hg~3T*{KNS`!Bo?(ExiR;iZF@q>6&`Z*&V%UEZT&{H< zmBm;(qbjM0{sY|l`Ar)sr-vq!(b_GiLHp!ISi~Y1)#l<<5A-Og{}z?pr+#2t?4;tP zY*mqmSx1g>bhI3mY}K$|fGTS3*l2NMMnPe5so@K0_xx#NOmdEDOV?)AaoIGuiU$Nn zmr3O6=jxKy`(*X*UjIY8BK3lLQU+LpqBOPLU*cPxSpk8EMVZ#v$E4bCsrVQqDf%d>7S{TzJH(6c^N%30(hNS6_ZlVz+uZt|{QFVejfI{W zj`0MXrZ;1sD1(YJVXbVVWOmb&yp1ef<0H=Ehb%Y#{}+uVa@tgw7do{O5r92Plz6)Y zIsn)yNvQqiwPwwMU+De2XOTVc|F^qqPlsU>^9ZvIL+#s5anPK?a0DV_wcD_>?n^1* zaEy{)*p$;?r9$_296fH`dSov`R=dU!XZYynhIL6Fxnvf)v z6(3%Z9pYhqb_&HpUNll-S%Xw2uwY}HNfXX+nIVjfX3wN=lFflqX!6NecTn?4fd4x; zp&Ttn*9(7`SX4*l6Ixdp3e2zcPnc9nVMPZG|9bHFQ_fMG#W5*u4P|7FH$Ef&ZlcWk zDZ;-jB=lt2rm-8T(`2#D6WpWIg}5}C#}(|?S%+nU)-o6#Bamg|D;KV_CR73kd?rTDm_GKl*TNhPlD8C{b9zAq4Z5`oMNvQx&%P3D~hVW8*0nM6z zBr{VpNZTVjYhki9XLoN!ygpq7{n(l|vm74hr6gMI#RIVh$t%mN$3`+=D4+4+5RsYi zQ{h{>NG6{%XU+y^^#GTpVIUs3Z5*@rL_L}_Apz0me(?NeQS&1xN6QO!p&H#f&`A&W zkybvD7;_Xu>2JyQt}qN6qWJw9W+)LcH5uneTSMn0vq9Dkmxn4ID57Iv_0V|k^B~_~ zXW?zGXc~JTpqdj4&1IYo#bdlsnLbAdVG6>ybYU{s)=N}2&E-I|~oR`)EolG8j=j1%{C1hRX_B4>s8=%;HT}*_V*DGc=~SQIb?G5fS`m~*5E>hJ!n!@ zqB={cv!#wnsGZ_-JD65b?MnB$Rplm)eZ>I`bh7E={=DLclf(r?sfmW3xJm&?QJ!g% z`g@9_hHtV*>H7gt1W4yZby;BlW;+UG3oXV1$5yrY>hx2l*e3zv^gcWAZhR`Eqxqhm zm`IsU?qx1K{2(4+tK>A%^RU8$4o6ba_UlF>zq8E zVG`A`BVnh)9BE#ag?J}m(4}0u(>^jBOa}lCaO4rRmf@rv^;1 zhJ1^9u2%(d7n@LOG?i{S%}BQ}&@?wsAbpnjY;)RcI|CaA2&O&O*NB9TNT=zFc==uI zSlCD0W$DWfG8DTZn%D+D)W~^;8<(m7hxiSThLb?EEKn@7x+X0m(Y|@1a#l|)Hqt=F z-K4|Q-JZ5gr%F*LK{Q})bD+?vt>=QzcVMsT&T`a!bpShE)fmca~2FIx#}QUg;bCP;~=Etb0^QZKMz$hFxD zvCAf4>ORt3mi~#S$Us)KC}Ka+<{?#EyrOKFYRYMGPU3_yal1#l>ro&HF!Vy$t?Whi zLfwjpYB=yIq-|M@#6f)x0>32u>DU4dWq|!$6|M4xn??|hm^C<{M#PbU-x*Hk05jn! z*~Wu{$4_@y&*w3o#ZQUtWl0KCSX>JkKd2eC2wmoLZhrPD>8}fOzPfOUbIWG(J}^Zl zfWXsOvL}4JL2>|ys?6$k#mf4ytM-s){|_bxu5cowGc<7NkFxs$D#?WgdIkyB9LeRT zU~!|HxAi<^%Z2+K^-0B@ev< zH&{!A7aSrXsyb;Y$^F|Yr8*e%?i1EkRj#isio_cKe2OEDvy%^oSH^@8Tm+Dyyj9p1 zx$#_Wg=!Ba>3q(rR;-8qhyhdtcFl;{ek(Gb7SeY{j+)PrGyJEb80D^!`fvwYk}FY~ zMrD8Ke*2VvZu1??Va?yenkR9GVLLwXS^%YRc&5oHpTDb+j)sXs!5H%%S`bL#QTjU{ z*Lhu*6>YE8<}-SM3ld%QvIPdW;U$yDaX>`b1K=)g>ijmVt|=fFnA#*NYT4bivLor_ zB!s7y-9bR3_0nczJ|h@WZE>RHwNiqX*n)eGoXQ|X4nj3s$z04KWQ9VVNTi@xU|7+wW}b&otj!uYA3x3q zv#kHP^OE%RcajcYkWuaz`20C#JMu^dBK6k#rKTB0eKnUdk>7&^`m~3tOH879%3RIK z92jwstFdVRjn?dRm39Z)KF}y!KSd?%7yUHnNkVU;3Cka`B-vDJcoMn>-;FAHJGq~H z@w`i`<=UA8tl@tch7Vah{}z0lq$EIKiDtq2pef+CzGJSLM>8OMDAvmyIEvd3efzT6 z2H9`X%rbuPZg*$U;N#)@a;74rF2-nOqFZBMMy=;jm1_1lnYI5RS@Tb2==_x2yd0$= z=hf~R&QPABGJd@YOpGl-Tx~>f-H8Dvksz?}bnmQH{|3AD7bvc0BsL6}&L_VO+*J^? zK5$4JP>D-DX<^i0$%>DBksD!c?|w54WQ|;m=K;O)#t~ac=AMTTG)gEmhVPcX0xgDH z&OqMRZl-(m4d0JqD?1uhN&!1DHcBlCnFn4QwS>eQoW(vy#`tSdb`4SNU=Fqd(cuIf!n(^u-p)v0;mQi zsjSz9Zq7|*Y5RzajGh<@=WO6la{VKt!ZrvB%yV1olYtBsCx#;30zHmg`8}~n1>0tG z9N~+ud8Wcv`Onz>=nhG(OHUEsbd7dvF}WIa%E(TLyHcW?`sbS{?CsM$;Iscwnsy%aAxx7E zT}eWs*zFogSpsW{D?#f@;$%nZ(|{r zrcDwCt69bUJ$4&-NJSN258Qveo8?9Zy_VOcg|8757d~O5U1A`=z+f5=%oL~8VUQo|(9UD_;A zAwS&Oa6n+&*m`7qLj9bxmZgs)pa5h91}Bjvh9V)6QUtacTih^|5WvnQN05do!^8D7 z!^$u(H+vtSSx7m~13ABI#d_&BM0L~(IPE~cwq3mqi?oYC8VF$8eVQ6Vcq&oltPCV; zG-uhYN(lXkyYU|LwyCsT)|!jm@E&E3L6=!p3Q=HwX1Qqi=={?hPz#i1$V~M#D@U3} zQ8&GU2r}-J*P4p(>Lbn`GShRi`Z*_{yMp&RYMBC_TmT+fJ%AGjEo;x0chb}7e{Wtq zNXzdZi4PQ{LQVj4k4-RK=wEaemz>gMOxkVV+j&jcc5-%K+rZXz%qOgU7>Tr)=o>ao z{GViL6m7nCAZhBAEYvS2%P4X8r&-_80x|xeKdy}(ZwQSVq3@@#kV%qYGBn@Wp1g&!) zv7OM__0C$8=FvVTt*f+;uCmf-FQFONFC_Q8MCTD@SJ#3;ZDy9NhDG5I-GJ303AE4y zrxf-#^0p<@q{VT6daDk`-nn6LyhKa!8UDyQ^wftomw#I!_Ldxqn$JQCA&>$h@@|Zs zLw7D*u&ra;+_7!j$&PK?wr$(kv2EM7Z5waScY3#R8h15Tqv{9L7&U9or$D(k;e%IO zp|`tQ)QG^==XD1CH&a!Q)mTR9zP+9QPG?fF(F778QeLQc7^m)JZu|cD3i>2Ue?X6& zo511MxRZ+Lx%nC@fBooem2o#U)k>(${;aEx641oLiaqMyDl3444uV?MgN8HSrTuL~ zg)zd8bn1|;SuNBfM`nDYJbXn@N=gf5Cs(XjkhJH4ek0GoHY`}mpFE!gCYx`!8tnJ^ zs1@A<5A45D_ek=G?WY35_qsBcB`Ek4W@FQ)0=Y~^1Gw)aJVmG+kEYV)Lf=!t*E9^P z{7y)==#R0=yc&AGW%Z~9j;)WrQ?{~QL<~Y+pq4fFzGiT2N{yVag9!NeZshzU z-7iw6S8wA_#Aw#YnRISvCfk&_xPX|$G{Fp!CIE2$K~>fy6nQdIHFv!rhY)Mj z1zYuZMEWxY$B}^S_^Y<(c$&cF0SE@=(8>Z7q+*Qke(YKCZjgM6XBbyVG3Xgloe;Q8 zPxQy%y39}=!;45Bd62S;0F_MoJSlg$;-w*Y-2@TpZz z2ckSWjCXKkrmU!Ud*$Q!UIUHi8(0fF{N4`O81!z#etUtt+_{ zfR@%z;^p2Mv$=v+-sV^rTX2}pm@kPLf|iU;?Vc4_z8KRAl2^jBeDtuIZ;i*U&(m$0 zpM0-7{7!&OczXqh!djzf{^GwaUTf)(G;a#=_{l=!#&mJhP zEJ$pM*fW&BKM9^5*qA*FXHgx@Qzt{rYiou{y+ApRdykwpQ#Lo6ZDpqVgO>(jIAz$ zk1ip=mSSVa2x4MC1MD1C-BF{|J--4fD!BRf^Z4@&?4Po+o{wu!nmt*qhou0Xx%yWK zxmF89MbA8BY#h5RNvWjJ6GBaQHK8{Qom${Q7<?h@Iha0TDa@tEmp&yNKS{() zECF~`ul=aQDQS>WabK$vm+wQ+Zh@5jt;oZKNlARA%{*ZlVN0-^ZBOq|ze63VRNs`WvR$b6jN@IS3 zMnPMc5W&bzr^RoQ$f$?v{(`&^j0UB$R(m=?Q18*99K*n$G)4zsM-5af{$~cz@7_me zWJ?6J;vpMzkeK04yEax81i$drw(%Tg6~i*)v$g%gWTYzVua<(Zjx1pg7=)+mbR2gu zyp4V#SxLl)-oVCzBs^FCg#ZnACl1HkE!?6cY?3Hkw0NnkdOD85-viSNnA@im;b>#I z7g7eVpIND;{jTGF5bNjzs94HfIX$nrj#L(40|$BjC-ZB$ApAHHM-6CzQiviBF`L=x zYh_MUk7Zjbt>lO|=;0$mo)je#2Ymvr`f0*%I-it^Ihw;S{^?Stt+dTu2Ggb~z2QIvT29j`kkb1}T!y?5A~vC$|o?=TWvL_q`-2 zRT)l92n56hL~7e~{+UD}53?YGY=+l}3L`bO5NczZ$|wn-m?^&RO=$C}|3uHP&~1p0 z8;M~%MoqZwq0pG;ms_oM4c!Y+%NWiSA$V@LYw`Lix2BsKNR`yYtXfEMAp@W^u{uyV zl6U9O?FF&8a`>KY6zDQR5Nl`0?R%w6qVBgeocqAX@2xh2wK+f&Mb7F2}R?(O3ZJsMFBoY%>?D9Vi1dl>jiAnq#@Gl zvaOMpO(|1mP{Sb5B|EYE*p2JP0c@J6GuPEWxf;&qAcJu46>6And^7jnH0lmNa_JqL z)3TC;exyr2;EIu9zQPVTUsy!ClPRWXam99TEv71_3z zW#ON4#Pa?hnkicSP54A}2Z&64ZO$IKc~H;E6Wsjc1|%}Y3sX{{5iOTF8D@!Qa zK*vtVEKlpf80l{%?;vN^7w9TuXW$zJTBRWan|jj~O(VU}ISlA}KE{}?yuzjZL$rx7 zqz7i)kgPyRvv^oS#v4oZ_8si5nrrAc;Qo8Il>-4|pE|Rz1qEy168)B`zK6LBsmxy` z8E6TapEe=XE%el_TW{8cIADwT(Wp~xP?brLDi~sQ!n`63t)RTk;$yy9+K-uD_)#?U zFHE`Me@T;GM);A)E!lJ!pnI3RuDByAVO&l30fCrZ_^^Sk9a{JB4GDo>E`0#T(eam? z5emHlHuG)QH#~1D*zb?dssv^>q_lQSbk*YU)}jH2jtRhAW zZepnn;}agE-Hsafg6|(C?WUJ~u|z5h6w8PZ?~j^{lOyIX^zQF4)vidd(r9v*@xWxkM^>E)2^3g}Z#Rw~b%r*#fU94K8U! zGis1-9KLteG!Iq#opy{JL9?BXV8h}fU*_i#%sAQ>C5v_!-`!RcUf9=d{UhgFaR?YE zQTjnILKsCi7PEwDhn zApPU(P`%ydFA#tn5n+?!38u6g`U52!QRA$&XnLGrF9W8I7kfz;+E9;J1rj{Yghqgq zYR+|!K<}1QsLWg5*m`h!h!6>JYa7c;5}x`L(8#z}XVqss)($?*S<@SJBpBCa2upMT z3Gj}>!dHWi?!#23P3AS;TM{i^F(b*c9NK+4BdjHe$jPHHyTT=Q^_nQJATp2M_qeUa zAk8S({{gZL<`!e6fk1eQ#_sS4I)C8qj-a!Yw5EMUNOVze@bs ze0 z*=!EBn#b5j@vi>+onRK12i?b=E^Ijzms0`>cbHhSxE5A1<5#y=Qz06UJT&UqWiv(d zv>QKt9S^OKAq;g+Q89B{8x4J^98y12T&TBg6V9fi?-L(HB;18aHY_83wh}0&O1SBI zUrD`&htf}7nGX^+D$g9ub-RckY#=j*0bQ14w{QP>Jh9Map3~VYm9`d?^UqPeU=V4K zX;wcCQ}!eeSOD>&qPNQ51#hH?a>?t4w6x8Rux}$E z5l)!8J^AWydYsv%V`G}3Ijd~N2uSxSb$9do>UWR-HFKY1_MCGOx5$&P1ge^g@docY z0|H$LdWyt8PBgoR`+FPC(*k0{I0(f?E6b0LvK2XQ&gee_=NCV-^~HlB8;>Kn=~+3^ z!ewv0tILr4(j1E@!@k|gAuHg2qnDxA`F1suTg9C938BQ9sCyrs+;ZpxhKZQobv&b3 zABM7?vvK-nd_+zeP};zEp2PpE7R@ea-q=21O*tOQEeu0;u89TGHb23&{%yrdCezo`V4~p6eb~CHdyue z2}Oz%3lfV#Qmmri)Su(N@HI&{1;*VfInY+BP0v-da}#|FA!b={v{JQ{n(;aX37@8f zEZ;?m=~~GWby{iEwGc2#nHhz6UsmmMf?$QLOWFwLd@N38u1#IeAu~EVIsdi_6AY8L zj;kV5Et9*Nff9@nwlZfMb4e@dX5VAImpo|hFYqucG;?D7)xq_5y?E4LjFq;FYG6 z2$_~;>KYmu1O(t-VsXh$aAgTx3;@~AR}E=rhoI(G zGZ{HzKnS)qwLGo6L!_+pHMldUThX63lH-0p9FwLry{%Y9Pmjfpz)Q*h(X*LyD)%P? z__7!Px$3+W24hKQiFOz32H7B0rxzo#ucfAKJUQ#sCR5 zcpcUGgUqsqrNY2(TkHk#gyc4ws(J4;~&LBcOTB)4v%c zZN_~)Q5Yd$b@e3%1_Z`Hn(0r{AZ>>FkR`9bCA5CGi8Kh-GyFBFng`}&t*QXj3?O$3 z>waYh;>LpVrq1ykX`|dFF1&EIQ+5Tvefk)J%A0;~ce<}iAPV8+T*FAhKh|G6fx-zb z!7rRuDKDi>MMAtR|uJ2TmMM$Q_%zo@tcU%>HMvk~l4j)3AZndc}0~vCAU7RS8 zhyKap3yU%4W6up!F$aD@m-a~YaG)3?ZY3XWqV;n4>)=e(Je<6Ot2JqH_*UMVKT8UZ zZh%;?|5E_9{em8nAhp%jxM{Evn*v>OLcmER7{doOZ#?sxP}^s-@lw@OoU10K!k zErj*)H|GSNQ+SV{dt-3TtY*&Sah~;*_76WjP5U8R>9y4NESywn_O@;OlkbrY=$3q@ z>(**G)bVI{Ii|9|{d0}-0Ctc`$mVmZGg>uDv~5mn9^|D9cJ|JMykdlNGX2o09%q>r zYS!T3sHAO#N1R8RY)g7tPU8@6u~U>QvRft& z-r+E+-cH}#AH4WF{TCFjSb~a`-x&9)##SUUxFePe@xXtbHMa(hB?d*iq8X1`1l1q1 zy1=7DyO*BpTmz;%^%{u>8%6qMGAVO80g&_8e51(U_S{P4>9IUYa*JJOZ~+b6%SV}< zb5avh{b3HjUC_d*uw;Dgj@jj)QCx07byzXFllZ!3a07BJC1cUupg@8JdUIjzc7dGfW_p-5vicn3UiUsy?)*)g6*xS z9aSEU&U^(`WU9SN|Ey=IWA!Y`#c0m9v81OldE~Gc?x*Gmu^~`m=UAJ2EC}a<6@6I3 zS^fef{{-AN<&Y_*HY)&;3A^FmfKi9sLxnFT%TB>iSNL6Uou43jA0tyhTA){TPiPqr z_V~@mizrS+Ko6yW@@}dMC6m)1v|I`+w4}9^_#mdoEF0vw?h;Fj zbdS?iES2(B7cXm#AQIz!T)lz*{O6efEi%vB`Rs$%+;JZXseY*^>*e)rM0BCja2E_$ ze{i^{3s?5HxE%LYjea&<1MrYPSeA=r|NVydY{R_*avD70e9uNsxW9rALsr~CBY3db zNUQX-pV+$)^=*QV552e2uSpAn+my?Toee!{Uu2FeI^-r9_vUl+#`MoNnvdwYh27#v zf|?R3KZx6kCce|v1rhxZ1;oTUKbf{(>K!W2c~WRh#gKm3#fW(O=T?y{X*}UDh@&L3 zkGIVvGuGE(+}Lx7_3|8Q0Tm=B>iR-dYr_1S{I80Rws&0T9^wz3!6tbblf=hZ|L@~R zIxAmr;c(Tod%?HZjBZQ4DZ@k)S_xSGBD9KXpS{d|XYFj3)T9*$}VQkC|%9bUHBAy+Dm0 z@0|(uXS)Z4)x~`Yl^s5Pa*29LxM&~MH6;zf&xB)vmHd=z-=<#TF zg0^pPad|3UoSSS1rXeA%i>;!7pg}+hUIXK-B3V$g1|=&)r6Lpnxd3;Hk)(frJ&nL$!& zYw-m2@Zt#p$zb9JFn8hb2;yIZvjqXg7+?mV&+jfyU;wp(pM$^yd2u^!asz?e!t=@E zle<|M=C0M&8od1;5EmC$mG#3Uq$;hYf&%F`fS^6QxcL9BfOiUhY&C!^yA}fWd~*u1f(xvQ!`}gss=QXje~=@G`KW` zK?u_l)$svg{H_=D3F3zNBZGmM=yi4d-WI<0(ZBh(edu2<8k|r5&G`nQ?E!d?(dz1X zzXSfw_|tFUTpt2I26%i|5hEGEI)MPp?jF471nGa*mrIsYk561&HdG3O&jw2&!YYpj z5gx+6QGdGfQmUz4(7?ffx3{-}H?)3e^KGt3IPopz(hcDK=bfG&#kRz?>o2omLImK zpSEF>Nc(3nZs6-$+@3(7f~|t*kd^u2|0s}v9R1rr=B;`)Yr&fk*ujs8OF&HUo5Xe1O;mwN(&Y8Ns-bVt#*fntm_Iem5ti zb{4V6-}jOL?m7Qh#wX4Mh<|B>3Es15in-T!HWn}XdeP8k|9d-;N2Ackh;t!SJ=uiy@!CCcq7j4l&;u2waG3@O1$WLcJu@%_s zmxU4t!3~oUEDOZJ7akgDJ!nVK-=186AVB1@?Lt3-pr7am5*mop1VAVR6n;%W3bvo{ z#euR9<}m&%qyvNyDiDF&U-%CB0K}OBAhd8#6@c2*eL)OzQ~wGs*jf4guN3P~B4pt{ z^S_O&{~Bw6{~E3ULOr1HTLQ3?qBlsPj_%Lk0-fhyLQ2eF0jSB5`#s73{&U2jQ%wNw zgK&q2a6aoTA>x>Tu&|VdFu+96TKh+6eslF#+(#jwZ5^6h@wayTYwPg(y9^SOA|+r( zAE^@JULO3s5`g_E0PHjGaelAqwf#M zt8)`b?=L23ThK@7QiI?xbgsq;058}j``gSYjz1!fPJt1aS}=gq)Y0|yLx>Sz2O4$ z{h|aR;@kp10+dmt_l7R+;7<>O+&-3)5v9S6?hwAMp9)fl^!EEu3fT01v1Kgg{ORHU ztQx%at-+(OJTXA6j9eiehhe+`V1>IrzrhQ$J^%-BHOH_nznHgoqy@?Lcr}@_G_JurDc5^ z0WO0IHT$1(FA!dxzBvs4e*Y4!->cKdxoi}#QUK;}FFR0xpnU<`mD zihld6iy>}93FajZp6i!sbDnCP!t|I8&O?#eQ$*Ub^r_V^DP6-PDFaK~6diHE3uO#A z7nj*z?Q;5+j3MWkcU6VUZtEib1*=8!w)U06e%2)D|Mnv`2+4u~!$ZN7X{}wHl#sB_|| zY#mrS967V=|GDt%@^Ibu3jVvLm$Up>6iAsiW*A#({mxL1en?)CqI(-oFN$eBW%6Prl!K=_j@voiTC$ZF4H0stv^8KW z@VK_oeVg8}V?M^(c%^7q63Hm>c7v5_3W1Pfr~Va~RZ%8fwRb!5=IhLlOu>L8K)|=f z*8@{kl!yNU?!6F}W8)6zoQe(?`O?SDNa#l52vF5gw=DpmDPCq&ol1q0!fkQ(lue-K zAFJZvJw_=Mt)EXq42g?-JuT5;=8a{qe>bXk_$p~QfX7Ra8YDH>eF-6<+K-^Dc?mLqsDB;`GEMS zkY^Qec&|*k4H%wLS(jm(yuqKq9!RW0Q{|*lo3-+FTfhLXL6YKYG{z`l=#$v@h>@c% z@YTRo44C>A)0%-#jNjkDa>n!`66m)NW3@1LlMcuGo@`Xmts2u#K>)2oH7*B7*{vk@~9FTjVgDtqKb?#+B0qy zph_Iu>k8?0)MDDZIKt8~S*cQGyg#I?|W6 z-yOwRCLb24dO5hoyu!hm`}5wvZt62z)rPC)AoI2%cx2DE*8I&0(38D9E+34@{A>00 zr!Lt|iRyeic&5&Tn7!lcUk{4EU8f`($S}LcOd+qvq6+qZ*&G7~ z8a(1)(->MEes97jX|_3TJ>Eh$3~QTa=?2nNF~X8~w-+%Tv!LHXXm#hYW`UOv-XIH! zZ||K#BISoQjHii242GnIbHSk(uRx3lw#)tr*>8YR=+&GENHBtrf3K-gL!B>3VgU|M zi&VR7vlh|?yEBHRW6cb65SUxxKlrN+f9KO0cGaUrthGq!U#1WM@lQClA{;q*4cpyyHX`uO!N{L@qui_a@$L8<`#o)p!-*aw7UK9pbaC7)8&V zhTTA>o-c2TIG$^Zpp6B&G5o1OlY*dD9oFF4=C?5OKJ6S$%L7E0`^C36OiMbig0G^_ zDk77EF1H6jEE#SD@iL6ne0n$7uMVT;wY@oJI`h7tz1qRqzT;8YFV*zrMYTf;)E-$= zl%M0K=ei7KH)gak+h&is53^al_eW#TUbzuTFKqGqQqnP7(?I}3$YLp<5M>UzxV3sb z>D~b3pIpEBbLPbh`SJ>BcjikYC|CQP)@hNi?)=$zu;=yd%J*o9kL}&4`1%NAqj6qT2HB!g% zKgQBkU#d?r8@F@wjIgCozKkKBGX57qwS|gvlp+d;R?X(4vbm(r?ahm+uG^-rNbw=$ z9^UcxACHy5!GUOQLku0Z#tj2CY~t2t!hItse_sdz2H&=FIRMM-b+jvz&5{p#;Q6#O zTqxqxc_Rwj?ZuLEoH|Wfo!Q}zgsT^}J$pC(rr5=U^1iPf6U-liMD}!0L ziZ2!IrH$OL%%j3gvUv7@N{LHQP5PW`RG9f2G^fiw<%On+lFw)Su)Ex3Sc)8Y50F)o z*2)^KE@Q9KbT$Ki*OM{O1RX9i?`tmUWbdu}0^+w!rSU9SBut_&c`!zDkV*@g{Y|SK zyEr2oc^;22(d^Kehie`c-@lhF;-@u>MGDw{hB`E)j(g(PHD^z@(p_TZaxV3a&fsaB z@R@oy;F0Mm1f64F+#b}rk7|jgurL#wB@Au?9q`oSoTtJFFUFVKrARJ`DH$*$T@P;z zX0L6zKlTpPF2|qzUdjETt|{m8tXmM4le2@3wzKRgW^o_ju?BLz{%~qeMubX{02^>6 z_FTYrn4O~2aF=53gv4Bqi&>;m<h9#g3i(Tz233@1NUowJKq#6D z`>hr62(RnFyCo~JXrujPzdK(t{*epY5-dqLcQv=@&(-=W!5QI*)T}Y{A1qgL-6s|{ z2YvMAcetrTZ;XjE@O4CWj;}F!7Z+~+oZ&mv1k_h~S>|^e)gm@6idT;54OM zu?DH1sQ4douDGQvf$x|5%ie#6B@js=;4{pu76gcRE}5;#-~iDsHxSONsFMomhE$p(amh;T-0C>fzq$Zq<*uUXwiYvui!;SW|$DhvUqMElI8g2{8^?!#SlH--C zN|xJ#8mKphxC2j%kx-e|Qu$AA?>}*-Cu202vkF(;HA-Dx5q&pt_A`d=6?!YdBRC^c zg}<(n(`w5zSu<@$8T{M6mbvKQLl&mV2g{VI7!i;mIDP6ZCG%38+&6sTAS$Hp#~fBP z2^ii1b>Y^{-JXBbU=DnFxpe34PbySemPPlo1MqIH8o=gz{K&#e;g;l*>kO5+I`gpKcwj{Sei+-rVZ}RUy!FVxDO80g zybiuRsGPnDm$Gg6$EjGz*~w7(C>+Z>b#zy@-trdb2T3}5X&$h;&!-d!>qRb}{t>L_PmXi)k4yVmZaHA_VDU9kr3VjK8=LBjH_NbXDH!vp%|o>?QM2Yx4e&~%U5+R7U_pPJBdNyK|Mpm6c!jby#xHTOSqRm(C=`s=e_+#5q5>!5atK0lUWZ0r@|)gO#^R)PmP^~Y@AlH{$vs~6&9b-M4u(zb z1n;yqoHrzlVrG^bA_pyZ*NJv94~@$mOS|dcA3Q~JK?%Pvac8^GIUTmnN-MACUxtn= zIXQQpq1@gPNFQOcmL+@k>(H)2EqMgq%C1Bzc?aowH+q|i< znr7F$51CQ&*7bW#wRfcS_U^1yu1Jp+HUG6}o?84Y7v;jqm=N4V#lG6rcV?785P9z+&Gr&ObMp`>QjR zsk6+kNlx1g7-c{L<|1HJ_~&2PQf^_eA`s^1JQ2eGh@xw~ahNRJIWKXO4VKy1=GIh? z6ZBss3M3^Te^7QMQOdSrk9od0^OA^HtfeNObVpR_PXPwJK#N1+C6c87FwC*FWyHdnS1N=F<~!Jro^ReW!D*{?deU`LWenVWCiBqmT)MYSnQPicME_lFWta zcrx2ta5tcLNu;4WHSF71h%%2_!lx8wx5KK5N0UUScXQAN4K$)={Tz20r@=QklW?a= zczpbAbGM2LjET}V#{+{3GOr&{RtyJS`L~<<_sA6=4i|gPDj7{;saH?x{=H6Di*`D zA@zP1)C^RYNCWOMZN$|8j$reR)JB0BaAGi!zV_Ql`}E_bReT)4PSEf5YD{x=Mxl-6 zA6(1-iDWpUU$3RFK-vFWy-k;vw^l7Jyrl-QsRQW8VecZMvl;!?8|6sl&Ns-LHn4@2 zTHBv6!3|1&pY+wLH~hev!l7_K-d&mwrRlYJ$q=tj!ZGh=`;SR|z+-&jTkleQ!a!lD z8#haB&dmIKHLI+S_BBE^E*BiA?DKO*C`J!>x>jPk(qw>5lj#Sg&}QcDE^&&WCK0fi zK+9bAo$3^R2P+XGGbImANZm^JrQyzkrHGf_ndJ2s)@s-n_+%M@_lBhf0gQ!YG!(r@SxhY{d-eFULT{V*P zXgte*LY!#Q8qPvBb5*EqtF4hQP2OeQFF%5M>%1GAA7crvHlJ|L6+4Z<@GwQ{;H{7Q z(_}kv7mBlShSFU8O2s*O*X`0dz+pA=mAO#xX+)bu%y2DuCZ)7AVfI@2jPYG%lCYbO zJXA>YA|v+cHo8T3^ikUz&R^|JQps@FiR`e=0$Z8c)|&kG?ZFsosO%t#ZXUb(h6= zS~8u-do+U%2_USHQs;u=YbCI;{K}jdLdv6V8`Drn*1JKDKAWDvuR`8fWVGo`L%?Fs z1cp>Yg`FJGdnjqM zJ$aQErL~|)6d&&QJomt5A7;9rP)uJ>_NVGB$TOXOd8_Gu@eB<->k;+kwWG1sbkIff zF@O=ZI`~BXwgRq=cMX3bZDY(<>Ioe?UCjLqgr*lXzkzimgs0}~)RpmLxJ9>b+c#-R zfzVDXJz#!}b=_I5odG^n*Qm;K;5Ff}u=PAaQ~;qnp~Z*cJ5Vvd5O^vbaG?gI>Y&|u z2y3s_m+nE$RArsm+-PT?N?~$y3sR_tWE?oW*4tlTOu*mwZY(f6Hz&!YSqHn$^x;WQ z{bbNfJp%Ydmj&W*Kr)8VC~9>3oIhDw-uzj$d2ccj^o)I0x?5DMq?-Ox`O^@`IGj83 zS>gZ!0lcea|BA`4BRM&%Otz%D`sa-(>c0RYMIVNScJ%$dDZ~vQ2vN-3{-<9~9R!Al zSL@NyBpg4I;RqBT6fY`ik@yPW=6VS(K|}|4+9aq_qS0VY9A3=uQ!(6GB@5e z=c=@#r1Cw8qOr-x=}7rD5sN>#zEqYsTs1Qb1)EJIcNd`&IuRkp_MNJ;&vCx-yQd@< zWA)L%BI3cu?Bsh+itpiv5rliUrG1u+caJ1(96+bAb4YfBpbI`b{D5cx2gX&{d7AHjE(V{y*Oz=8#weoE9{ zh1i%KQtSwP#b0pko&5XA1&-sJ_3(|xYB_y@*3-|Mw&wJTmMhV7)V}w5m@s-j3xznl z9k&zuTs4Hi55$8JTfJ+Fiqdjhqa|6ynuE)v|E}&9*&Acp+j_q{GYVh8#4U1kyP&uUW5&&0tp zsLbyck#^IRJ7YAy#odpeE6{aU_&zI!qhjwbmBwWVia+M@=a%S30^ z>f&(m2n<$RxPZdX(wIki=fAZ1Ik^;!QErzjr|j{V+lu3jpS`Yia#}iFnWjFgkZK(t zS3UjT348BeDW#i|@WXO0W@He7#yFzsWeoQm;$t4^5)Ep3Jq%x#)V!9Sv zR90|2EWUDg7#5MD5%+O=-{7Dpfyy?r2(qDQB2%O-Wn~iHwA>wcd4j&egCC~|lPqRy zTY#+_a4{a~j&}Y=2g={O2QcUCI^C@qb%NUG=foN0gyZbDs9L&~Im>o~g!PjK?Xo~PM}P9g)zk5GB&CqX^&R@dTv@r>?ec#c8VN3^wr z;zTJTQM7?M9+!Qc81)jHo7@dcil4M#a7Dn&GP2*aU;%4sL;$du+RKf>YQH<@S1f1+ z@&6qso< zp1;UvrWxt&24CpL741rVbGyK7OPleQZm;L8!;sOpg6y-9w4jO2#TGVF4*@aH8=3&* zg)aCRS>CBiY*6|AD75(UY9?tap(6~6KD~8ghtw5|+c9W|9fa7Yx(0GF#L|-CmMzST zE4I?lFjJ^dk8oyc+hJbh#dMA~*2 zu0f53=CHjUPk%Nc^F;)%(b!d?Xp2L%f-kgOy_?3EwsVqSGLy5++BBkCw5%fVC%%H#>7 zXRNS{|00qSBH(&R<^%~`Dr~oQCw^Ldq*3CRFLM;wV`ZLE8gvyH8|}O&*%?2ITL+92 zgR)rL0C;ubSH}VHmc}iQrrdwjhS;i&SDZ5R984~=wTbcr#Ob~sqsy*V>3P~XT(|Qm z%9f36RsTKQolt(7V6Zlj+kbOEG+^i9gj=G3dSNQ$`GKV+>wTbfmleQXO62jf$y?)! zDn*|x=5LXELS7`U3alGhMHoeZ_&U8>=V*Q-XvIhhdP}g=HaK;BF6Y-Y3SJ%AElasy zDXjjTC*AY!5uwIcwAu2on_Z8)*UgP;Vc7t~flAt1R?*C0?@lm4XB9}#OOGR?Vo zHeVVk>Z}~w8n-{QF2kN>gP4aHCw2}DijxiGxNUQ|d0*JX@d1U~Zj3G3(f7Mf%fx=g zrV?W2WhS4;fHioybtLnSFPFnBIfY@1*Fhi*< zm@l0^f}35;@MwP;oAZKQaEqpVzb+&^eza~th#gzPag*ednAqtwasV1(Sr(_fXlRGA z9^zOS2=-_#yWF}twTU+dlG>q=>@4o1yBUnw`Hsr98}hWJQY>m;IH@GR!rf`@Bc!;Z z$tRem>khruSR}K49`V3scw&nfP4QEw&h6P=Y@7cPR_U6@q-MA|XKyzI3RpMhvSX0F zRU(!*lwK19C(~z_BGTvKJ)7}tF~r?7S)}H-^JPSbMjL>0ua3p`Kn&u+f6;%2ZB&%< zyij0YqZ{>RB2v>1>DjvZVA)$c30jR7?G^bixER`bsX-M$#}1)C^q<8_&gZw6o$-Ku zq!4J4zEvCk60S-r;nUm7KX<1OX6rp@c1V7l2!Ei#s|F&{cp$eu+MLrIk9CTWgUeQGLK9Q?JFm7ICsP)PSO-96vn5i-=(voa)`jD!H z;GyrW$=xQ9QjE8*>oXRo<5oF4^NzUv2^XSj^&x2#MP6cIBG3GQJ%W2d9gt zx(N%7jH{3#-AH@#LNnFIcLjZQOyo9W+f^iF5`XXC9FqlnDS)8TLWsTav-#1;%xwdy zJX_Z=kG*Mp^CFxsl_&aRH_R@96o=lS`4G~p84JTfyl+Uhz z(?r9C_0t@R8u|4auQO6EUx2|`6G;{$+d0+0m<2JiG9zW2*Fgq}sjG;1oN;h`$^zRA zF3(y^38&y6zkxjIhLv|K>kr%x5oa6RXAoB-@f~)_f>d3{*FqE?aQmi}kpW&q-AV+O z;Sd(nx18-y0_SbzP2F>`T95rxB~(%H;<+o2z6|?$8ewNjhd0nr`H66)x?4^n-4$bZ zQ)5O&+E7I-WYkbPR#)`T+Ss}}mW@>0>&H9kca^NitxQ1^>MC64k~V{IG`Fj*ENDBF zRJ@%n8h#a>f_#L=K4M5WHOQhFwb;XF5hRAfo#`vDnINH7W_XpyiZeSCZ%IWT-6v~g z%C2?tu-rPrq5sW<+*&O{wVCwnua|?zylR=RRQ^}!W00jO`HbkP@^Q|2&{MR{2*=#9 zE9731U6AwDS}|V_ch8;KJhMEirP?wPUQfK#N!-_H(t%GIu&SbNhBP*1+%~_?Y_*!$ zT0W|Feww;_>mt*f=?HhgAv#9lfON~!sf?$4j-^XLR}_ zvGY0G3Li!sYmiHu)guP3L)%4b0VEQ>$D*G)%k&;uO?bz3;;|I(M^Z#YOnD#TXqGo! zy@$;tFJ<9gR^iy>mxox`W^HIX@zcUKxV!k*un6PJ6|`UXmbnP7@y0OW@J6^73@aAz zpJ=d;G!2uAHq(~SE9T%^uj+!Sd{3$wvu(#ACpc9q1X+yRGBIX4Y`0&1`Edd<5jn$> zwS3v=IjCh3-Y@uW)Lbkv{OXSJE+MCG^eO;2iKMT@6#tE1{N4#nk{0D0mK4+V=@~iL zUmx1xJKY2>{ZecVb*EaX2v+vIYAyyW-j!P!eSM@*#v}TqX|l-%EhvOSnEEsvTH1F& zgr28`KeSVm46Tw8c}i44x9P9}nJy-{&YsFF!Qb;R&hWN>6z2v`v>Lw4m4QCJxLh-{Kpf)4-5ZBw@p0`i%|;y}T&YrtyRW z_5SsGto=daj`}>~t%%blaCpB1Cp(NxxZDjb`p`ekZq z)0cdbJ~9^65iOP}S;+fd7#+n{MR?~yJc>KStAa+x#w0t zP_^=!3Q$IK@Q*pKFMC=|{PlV-C$rR^m;I?qc!xijbrN@H$JYf!twv?C#^)Rp%NK>O zzvh>>=V+e|*W;zkgq6G$hUx_bCYP!E=Im4_12 z*7h_WdGba$UrUFKOk$WS5;dsiNM*WdPAnNjIOgk7^Kd6p9lBF-U$b@+i`O^FY*Y^! zuTH0RPFt$|VBVd}mcA-6mB4~S9KpeRX&4V=(UU7x3VNT z8&rNr$B*dJ*G_Z&!3^*S1xX!NEF5_KVk$qfwFTPV~EnR!ck0 zms_QAzd~+twj{&>zw}p zVjsdhKg5lT@fm4|`n5j8;@uoeEWU4=7&X#kK!|#MOwfuBT($8%D(g&E2+ys$zP{^* zcg>g_bBUH`_H%h|Qk3fWobPY!)J|^S_R^dBN4eo)xK;l|EFJ&Hu0fKsc5P5qR2P5 zoS5k2wcGTA_Tv3XLwNC z#4{7*T{cmqV#-+N{FOocdOrH(`(RDf*U}hcv|UG>8Jd1Qwh6ethBMthG9^QR{!UV( z0t|4Fc9FCOsZVOTyUy?}bq_AWuB46MpzTF}HIth5+55X86qVDXB?6WkH7$nKtBuc6 z5;P{MqP=FX8Qe24?M8Xqsv<*;B`JAN16ZHzsjwp_C7c&-7(^*|34t}bMD7KYsJ6kzJG(Aw>x7BkA%5-?n*{Zglrmuppc1tY^Umj7=C@Wx zYgqP{ZE9}J5Bww=_upZA-Q@(*5Hv^`>?uRdsc+f!7Lj9(D!Ui8d+Kf-H!K#r)%>YK zxEtr}kzNbA)V}Zn4d*~#G-_8@nFGmN1p9dI;1VoH-F$hCS`4SB0w#LD@8pdG?8|c( z{_jxVsEDhLCrgQPd#v;pJ+i9k`##r3h4x`-bbNuuc(-1JXg{PK*{-63)HRtev{`qv z)At51aqBI|=efnsaUm4Xl8>W<_Vd%PGe>Tzy(C3VC!Z40DCf}YOi-&Zz)Olw@M<@4 zUWke;vYw8b^RqA-?x{-_h3P6D!^EzF4dNR%{MFd_Jf1oN374o zr*Vq4 zI7hRr#M6Ur>)f)bs=u%|4`y@WdE&6_z1ja%v^?#A?uEnLmO0^Z5=>3px3?dX`G{~z zym9<1!H8#)8Hl1qt$EK;$bWaNq}XskQB?betG<4vl086r?z@v*r!!^4mD8K>4+Wy* z#r=;P_ZE-|+bmq=FrEh~j~~O4lrYj{Z%_t#b#odw(UXenO(t8CB0AAb8bRu|T|03v z+dQUqmgY($-j+CY>mF8U@VR6d5Vr=7@8(m9dwpf@NK`b1ajMM#Vsvi~#TI{8DIiYm4B zFb;$8vG@26%B!=>1h-IQAJa)Xb-;-ZpHVVn6V1-%UhT_Q@<)l^-|t}A`u%GEEaR}` zxXMB(i9q-PAvT1NerxQcs0{&!N>Yyu^kk4MEzl{QbML zBS)(T5j9NYQz+&Nv6+UUT(9%(nLmFX02u99lOaE3<;%wVg@n~ zjc%0%ZUIV~WZEuLHQ(GN@?uw)2Egmo%H zwZ*-`g=43?HI)T4&qVnDYDHd!_wB?o{nZ!@XUlv8pk;%=(jlKaO4nb3tMJE3$n~Qc z_4-n>o9{DMltGM$9WCLn_u5gW1>_d3t94$cdW;MGC>NonbU*H5)y1l0RZ3l35%=uO zNbg|MFAZOUO~E8>H@<$^ugFIXsh}b8zQ=MR$XRI(mrkjyi;10n>jx6OhQ4O8#q!hIa( z&upv^rph*i6iM~DR(3wUcT1ZHJn+6_`h+<{q6sOHTs3@WG%=p=0YgV$Qe{v$re& zOsH1g?8T{_F$C>^Y|v${-tsW*NfvkDhPK6=M_pJdWy!Qr#!J}Md%9|;uIAgMVhnuv zLchNxkxcRmLi-WiNx>KhAKPc%I>0{R;i;rL{mh3!c2cENh?A*%k4CAAjhRID>T;R! z+Jd3fHt-7tf+6kp8zcs?);V)Il_Kt`^y>p%5!HkbQgEWbj*71~DkHaCs&1}UMEU@n zdpn|Ln1K-*E%bZ1+O_ z*Sk-)w88k}LxNo{Y6jcesA-A|8n1;P;`La%PH*K3=auyFy~VTZ#Y(@ur7wQq8VQX* zuL^Dv-SLcjp=-Wl)o937L)1`m?&NMutVgkM(Q0DaXz?L#S&E$mlll1P?^v;NtLvGTYEtf1o1;COjtLPdK zct$qQ&7M#&i`xqq!jEN9SBu~ESvSu|%d~QLNIm=cWv?IY_jOy4RvB|mS+Q9r)2FGh zLvwWC#|2oBPBatxCc+a>dEG>TW=`rTY8v-xJwH;FBhA4(!Wk+|I<7{y2j z2H!*ga2Q2eB%DF}(~pPa**2ChPRf<4o49xLEXH)1Ruxk&^`#-!{Cy~gj8 zZaWx)6^Hu9kFYm#24tmj+bI~Z0(=0etQ^$lvi31;kY2Ru~c%5wWCnbXmWMj27Q%W;N$8)|Xjjv3X;JBiN|- zuG;>m+{ygZV9|@$qW&&+I&p>Z5b@62VYYl)><@yrk78K!s(f_tOkac>BZEmP&($Np z8y>Z8N;NNc-YUWfJDtSUERUsN`ma1;XL0`g@uGI9tpj_+MF87NKu|Zl2J=ls*SC27 zbxGkv^yuLpRYpk`iBvvNzN*ihtk8y#%TPmzw)cLUW8Z<#;Q{uWTH!pSh+?jx^YN|< zWpsfZ7?Wn+yh7OH$n`mh@{%M1`|DOlK*DYvsSV)}I{I58RTI*{BZc~fS2cvQ#6M^) zm#R6{*)lFIT^qFt`E5%*t$(n$WFgV->eUX)wP@?LE>n5iXf)_KoIc`X@Pr^6X-R+V zsHvCXwCzieHdIfLS=q&3_h18Q0oji(QInexCW2>JWhSu`GrB9Pn2H?nXPxD6UMUje z+Y$~<>_o`aHH?1ah2F|kyxNM3gs10X{9cCD8SRV+HGSA}p&~PiXKza>IG9+=K-pA5*6Je3QAz?` zf=42F8_%%ScCDMhcrHGX!ucIFtAd+`w$!3p_0p5}frTI@80jl&>l+k}sp6kS>V+m( zqhLIA;9K^{yA`zRMNi0`hEp~R6b{6IS3`j$1(UU&99%ZfB zCgKvcJt2EF@evE?n~52l;(|J;zMj9M&8TBs~Q+3q1d$Dx!cQKtGx z)Ndeh>3giV1=(V7Y0GVK6H-x#lxTZQ@_d#MiSS~I)igBIghP|MT zf<0C9ZTy1(>15x*)@AJ4Gt@95D@$;^LHCm%$2XIYZm@BDqK6~mjpIyanRZ%U`t6PlIX-}0t>U|;_H)Tt`I=-CV(Q$iQ zDVy%nHU3eG;YKu+*vDDTGzR|RskV2cBjJ-b^Uh3_ zkyvpIo31$DMnP0WvP*IrI1dAjkY2-4f2PZcEsVrrcS}mSqrR=RE7b1w9-J(l?P=Gk zm!3D5-9sM2_9&S#Xc2^&^Iw|!fU z)NMC7MG6$HH3%Frk>59l`Kn)20w)%ODI9C#U{;^uej0Nt&E}?d@(aUZc(ts#4qswO zz$PJ6?Q65Y;lz+bkJzVxs>cvLxA3G&n?N5mqRo0yZQvVD_k>rM2gA6ewIk((9x2Q3 zyhP3j&MA9Vb6NLG*bwwg$FE$OiMR2hk37z%Q}8_c2RjF44OY9V0x)gqoaU7(DR=TY z?q1AMoL>d|X5m{4L5TB(h*$-X*NV?yR`6t^w58s4T>Db4a9zx(fv0Emo#4o;!8nt{v|7nEW{dTgc z{fX@`wFqe!hm7FEMJu8HKtmm@$eic1GQAqoiH@6Aokg zoNOGCjvpV>^Fz()weo_yNL4D5YiVpnmtMS`M-SqUAn@*`x-qSG|)$z!%$V5CGYt-$;C$XGZfzCpgc!z z7c5ET+sO|HyPw%DJM`9`}j z39aU11w)8vTK@sfk?59LA%B>_(xkVl_THZjYx~-1JW`lbH9va`NO- zigQkK5eYL(fMQH9{D9F!e4u(0eI@UW{M4}VF%p=L0s zDo99~=A9jUSRdm~4M8Vhh@@VJ6H7F?6RTH5T($Ke+i7PTjj~qmWVpViyb6>x@tl53 zwnWZY>Le{g;2X-_2NVpp?0U!I+~$Nm)}=~n3M<)D$`y*!n@Ll-C98Xh=Wx@@|S<}jmV-s?x@8e)qGym;C+J+*WpMSi>kZn3} z_j&DS)cuc(RX#O6UXsr^IY{SZN21(I4_8%B#whn|&UTFN3#rG2MOx;Cm0Zty2QCBh zmo--`hu>_LzA~0m0CjMihc--md}x$1uVO_nT8*0g6|>Rr4<-xZep_iJ>gq=>{>(%g zalnQP&yN4TJAo4%1z&|G)weN^>s=+>68ivgoIvE~;SF{oTinRaMpiuhR3spum4-Uy z??OD}4##3cH9TK89?BK%IEvXXb37P1(`CC~7|-NS+};G6Ql;Q3&G@O}`_KZmB-%Pv z%mvGI68sh1r4fzSgH|00?Qmce(9WfLz+Bd9TER%j{+{-p(whcmaDbqE+i+hy@!8XC z@=mjWN|dA%BK_IP>-@)VM%y%|gl1sG){F;+g#5J`X>4IxFonyqx33k8kb1!g+9T=H z7u{E0%4h-@U-z%!=M#N@-16YX-Iqy5EN2K>H$?Ad@R^G0&__i|J-6YB!eI;zaH6X_ zS`--3&hNw%+TU_~D=e~mzLPCb;R$E7@t_dV#;|kU6A|H}wx%oepFT=OnX_92&Te#k z-58W$XV3M(U@0r2A9$7al1+J#O&q60D<(s*xk-T~f}%gxY%S2-wo313sg0`DY~8EW zj2HMAAxrT!cwTtI*#diRX#`Bp^`)SW9@YlQlh5p@b%Z9j4z%Zywj~aCdSS29IHIBb zGKczOm?v;g6ToP0=K9dIa>ai;SWz1nM1_Xf;=B`0$=KYycag&9!3 z$~fOlkQkpC+>(7`$|A-Nj_Twr+E-1npnhyyYPR3@2^hPNG@@nCbEegLo!5CZYtn646OL zyjrXOEX`Ho0IFVCmO0?0yFmx2CN;f=E*^4bzUlE)$nd{QIHo{trd~G1`j34rCfjjxPt-ICJuRec?iiBB^>t|B z7E$SHBERDM=#Oz~o8Tc==AbpjMuyN7g#vr@fSg}f4Exs#+Y@A-Wx2&n>8sxG`3g+xq7mxe(6VRQ2dRmxwCll4NBTBwGZZ31vI`62qRbvKEI_ibo`D??Ld3YL;dH6AT!F5x@z;`D-jm$-U@g}YoRI)@LjEU z?V}#m!~t-U@OOVsDjwH^U+@b4rC!KS$gVKv%#2z9#A68gJ|~ebDhKU*0kdiEzJ=r= zWg*apTIL3sXpee`5Laa{?)O8Bwy|0|4}MksR9FidY_d?J^wOdfG7+g$%RYlk!kUnH zPrEbZBN8nO9!#&$KNA#6lk#JFY2A+j=$itgL9Z7CW>KKb(T{*hV9a5st&$wiGx8Dq zBnZw-$d(I0It8R&lp|V=?8MF`+**lq%r@vZuYZYr0A_ z873^w!qy4-!Whwi)nb#Z|5F$mX{S$~Pl$&Rk5hmB%1hIqqLbW+tQA-QgpXkwGG6CU zR=an&t=i?>V72%*^a`}SR%fF=DSwB@Q|a`M-S}rcg&PjV{jN2(+9>a?g=2cimWV-I zj-X##tY%k|8LzW%6pJ-S0~B{mfHW$Z$07nAi|@!nm2P&2dNQXIi3Xl4G0{9#U|UXK z;tPrtKumGc(XWxGsk`1s)e!0r9ya4viWaZ_#_U`IVs;G3=JP1C{jzW+;9%+dPX`}` zJ<`s#m+MU0*WuY?%rH-F%Pk-&mG(8Q0 zUmK7&a@)G?BCKYg3nRD@?O`)|?Gc)3r4V2Vu>#D(=umBH3L@x9>%0gVsK;bbW}u1y zG15h=7lA?n`uk!CICGAY*I7vFCk(9)uW%6Pja(znE+G(Dkm{urrtNkvse)pjhf@%) z(%iTwk}z&a`0aWL4U-5j6UN9zz3v-q{iaR}%=C{)PHjLp?gvC6;N2_RKys*^c#$eP zY-?5Zhl3Obmgvc55bivmk>3(#Ia5+=_!3A5(Ji>@J~T%?vs;a;G+h2TIUm+0+9a7c z&g5>CMy@_aebXRcXR9?%c zmzX^72JjQ;{GVcSLb1opaA$f5)S68StrYC%qr(K6=Lp&&79)yS8_$crc)nId^*Ehe@ix#s~Pn6&@_soz?sX>jS_l|FeOBXpkQ z9WH3OXgg=)bsyfyTB) zGJqf9SVVP+XFMk)vA<@^wTB{EW+EwR`*xUE!i`FCeMAm1p$!=K{dzqhg0J|E3ep?B z$OIk$He5cZhSIOt?MDh_Sv#+&?L6P~sVkm;02uV)hkRqJRXZhD8Y&mU#RSJybDJDW zJaNvmigz5-)0I-_ft~rtzjyI2Bj4HD)e<5dKq+NCW0ZgZT&t(QY9+ZN#qJsU-)Yk$ z#Kw0MMt_9!S%tL>xyA@n-9+*s5u(2l!v>Vn3=e9li?)$ycA@9DfaE!X%zHBAQM{z zwhxv4BXd@dBo$0_PNS$rvH52@KN#WzY%DM^wgDRH~f zv2+9c9!LxJPqqiwA=4zn!h79(;97p`K!!){i-P1PO^?0pd2B9NhD7V6BJ=^i9PKy6ViThLe_;GE^MjSgUco=UWHKIS)a4oKh&VkvM(z$=KD;%s!3-&hK1YscfL<%5yi3NzTfm4W$Y;WQWXMdqwHhKxc%PA ze3RdK3L;4+#YKD#8Lo%>&{^lh(=E(wOI1tscKBQ7u&{h7L4nTh@7FrQMLFuH+xO zYX1+ovRn&C?Zl?pn{jKx!rfKhYV<6NVZAf=tmFp57epoA0+#1WF2fg6bBVs;oJ4ta zgaa?+fzZK@m`5oIPXK2vIfQ({HQ;{$`edAcIoNAFz5+`Wh4vM|iK^V{`?pIkVM++d zrt+#6Z@uh%B=>;ETTwtCs8U4MLsf7lHeJ_vQ7ZqMnH;~$A6R>0@|RM?tR-UXnawS< zQiW?-1G)%!(0LIl{9uf54uL*=g9Z}CwVc!NH1}wCcW-#AK!d({b5h4Zu+QZw1J%&A z*LL#Dz&24-UILpdAmCfTy|Qk!@bwZZB>#i1+19ziNE7PW5SJ=SW8kZ(zYm5;{3tW` zEs8Kw7-7IFbr_Fs3%~94HmpftjDM#z)yy^uJG3-1!>tF3Tp}<(rmm|70A$(#@uiC4 zzrJu?Qbe;yYMfU<{B18YE@OB!v*p1_Pv^HQB#W1BbPs+Y*-XM%^h)w&TO|u@%9>4a zy@&IVKz0hZ&zs57q!wmcHdh&zphB{4+2VpQ(#rrsIMQ#Oqsc%99+JIAV|QlycwU%` z%tBMvz^Mf`4BOK;ka~3r1q<`NacR67{USIWvxTGpI7j5fQ?2^ELTpCioCdajr!}Lx z>aV6vVJvGUE1@Y`BAT_8baAVWLZY2Gv#`_=G@CZ00%mGNFmPi%_fd_5L3acPj|7B`0 z5N>|@$}G6~&7s-Co4EGKk0cGNuJ{^{?Xk~CeK*XBqv|)Od(JMwP<>XSE?1o_DOz)B z+kCv;DqZg~3MpOjBHBL9dASYnOjYB(eXtIhN+ESYN?kcz3HbW+v;j*@t+r93?;AQV z9$*^1Ui08}P;;LuLVv{EU*v?S1!dw>>i58R4ya--UF}f>d5BJk?@kz`V%N@1t7Zv9 zDDde4k`5H$yC6V!{x3kjSSZ0XBJLc%e0%_wX4C+*=4aDh`{f0DM+J=|G;T$(I$(r4U_^ZRFU zerSV29EZSkl=J&wXdg!hyKe&c^E`i?T&?49Q)0ARD2auF@d9JPAD6-Uk#A*1{yE&P zWqSLecK)=r2y~$@y?%v!M0pGa2H{`#vA4uZWGLzJ(F9w*l|h~aP%`*BN#13Z)9b9i2bi2g7-!2R)Orm^)nK+7> z`4LT;)DPZ%E`#OsZ_*R@~FAHQ4J;W@gX9`lH6P3U=A47K}afE?${V9g)M-nr^Sh0fI{;cMb0;Fzw)I27S!j8_V~i= z0+~N?ehW(-e61m?;wI9BBt+yVWp~SeD%yiSY^Uy0CTE$$yn@)@u3qYxj2PNsZW8%g zPjl{Irsg!x%g`Immh>)tF3N46H5qz|;ecSOw`wtt<0r>&?8gE6I)*5qml|CK006{< z!y!~x^Bsi2>LV5k4oBpT_rJ1Cc6RwVu9`Q@XEpNqy*i5`!_Q_c$j(@8Kn%=( zCIA&SFG0wK^+varBw4pA)I+~OH9*)0YN_7Ky8bCiLUiJJL9|HVZ>OCHC3rAUKod8{ zXRpFGkaILq6pv8I@u>gZGzy1a1fz{d-~O&KE+YBq(jc`tw2E2n#=b-R3s{3g{Q0ui zVX@`nEFg59n1i~u07Dt`)a6KAO zr*$_34#P#k(HLqB8VC!W=e)}upvCysk(;^rYYB`Rxfj!B(8bF{M(uv5>>T;nJnS9+ zPg)CLhmCnmoM(xX<+I?-u-$M!6^-O-u1L>HU26>hw0(V3xSy{~qsRlI3&Olo?Q@UM z6tCSY`B;@F3}IuBahS@e57Ii&`r$0a;H(&k*A6fVYlcVSgFOP;R(FtJE6E?i@e28X zEY~h;P(fVup&)tmgwVFqYo4E22lUkEzTGITaW?`0ANZj1oilfZja)LMjej8@I4|s6 zA_4eaQgPi!uK|ab!2%08yartr|FaA6lOTZXn}>HlYc%m5Tzt2H99 zoUuPi2_Ws%w~38|8RoqS?o{A9gQZ6~oq~(yUP!P~b*rcUV+3J-&GWw%+aFWTTzR{= z)Xck)CIl<7yc#hAX`&0-bT)|I?(jqgtQq3>&}CGTyLuIXMW?X(l}Z~9;O$Tc zXK8oNjpwZ69j~Oc zUOSe5cz>_JpW38TX#AhhZgQj58kFT?%6J<^!{;I0Q5z0wZ9uIW00pYvt^Hi;;}jf2 z`qcRB8pWfSq>_M^4JE|Y)zM*|kCkhN`t2J%RU|dz@oMll?&M}nUcywF!)t4)>UKA( zJOTWX%yqJS=73y6ia?8~*O`P9@h=Q4p|+`N6Sd`(Y6f?)$U|!Z7Im&5<7ye^Ra;Bt ztA!bB7N0xGGe9!Wxr)T8jBM|Ze-^7$3~N$r+fceXMo%_x8FS01q?{f%$|vNVWl#eV z6s9X$QA%T?Y@4{h)GQz15Q5`>sTCR&-J0HapB4Ga&go(7`;%&z=|)`@@u%17J>6oz z<;hE!mCSr{NuYn3HWYdZD_WL1!M>B@y|X?SC!+_KwAK%3C<=mVZz4>&GH@>v_c@`X zrnOeVkrqOL#ZfNM`zNwOMxutELZGGRj)wQDZx{AEt^=?v+bxncWi*mOP9uN^M4 z=TZ>=IOfB8`tz;8d7y8(gJo%mH3BvwGZTEg)_Nc36L#YRTEE>G_pT#cLrkhNU0jc# z*qRt#b(RJ&q&c(c5C;7fVQQ`k@zkiQ_I66Kk-K85i)ecoR`S8_f#iSp*LZV*W5=jJ zc`htNT=83PN9}uC_^=xHE`#?y>;s;D>myiUxnmjw0XMZ7JgJQl|8JJE!ra93`ODBIyA1wk*i`P2r~2`DBCyc9Ps(*;xTb z3#+)7P2*JJY#*EvC14EBd?8_^JsnDfvicskkOc*0vda(acZrLX2q~)sdbsu@NB}6n zgRO_@f#6Yp`W@2A_lcw`9OO;6KI}6}{SCUe;Hd#KgHj1sPc(YPm4!ym;QsZpiJif? zRU$N`LMR4{brI{&TYZ8-RTt7U?ow6)xyW~zDlS!Kv#Ziu03fra3qK2{n1p)&g}g;v z>tEJ~K-btgh(7MU7?qIE|>p=H$j;<=jsi}m>6x@epHx+p~$%~N`~L`$&T z@-ilVaxAl^C@+a(;jw%iT2OL>a2TvET`Dg0_QzpPM{EtZw+KxLOm-Rc?9$gUa%%S@ zTZkMG4}tj6?^_w>pk+ty5fiDoLHNCCz-5{2gm-`*-8#8$qg|pnj_^B|bjRS2ja4po z>wZpiGX4S&%JK4@9r>M9LWQrX7B55dNWsFaOX9HETL%Rq{WbPbQh9|8ybg+Xs2GCo zN2Bt1ar$qv6jr=N`eOVf2UZ(WE_wV&Zk7v0H0{$VWPDwn*wA0#w5w&CaISMzh@clS zQzee8u9EqK9HLb#`BpLXK2rGtCECKvnlA+WK7r3DDeqtcLNLtdPnmWAb`1&dJwVsk zrWEx~4Lm3Ce8&S^ezaJe)es7?X4${*KEc3pdnoBe9Ztd->T)*7zkJf~AWd$3;jzOO zwn&Y!`6**nai9^~Kw&Y*W3v+-fKAAfuFT=0Z~4NfSO_w6uTSev%U(eK6&tp;H8DM^ z%&v%fjHRMa+JNX{2^q)4ZdfMdSD0-TyLDN7Vhpra$d5-i2yku>9I2ZjA0J5M6< zqr2><#6s3lb3`4gEMMo@vgQb9dkJ0T{(|>jy5}Id?MJ@ zj&k9aB}nr+A8RWnQ@&|^oSrbMrcNW$#h7OPQl}KrpyQ;&fmx8T(EYkzGwqw#PcO;; zLPy@Z_yj6e{3`p$k&P&@fN)&37zHJQ8IRW9Tw3vXe;TxYRM>e^$Y90_!MOsI^8vyH zhgom#-M7FTC)!kfdPvCwVyAT++J?4ro>lzS##U@l!%2~8O|E^ONfT0Lq;<)j^Lw{$WJN`86LnVPoeIrrl2Dz?T3{(LEaYZ z|3w?V+VV2kq}opSmL|G)B$wU-xj=zy<#M!L-a z!4p5NieQ)_@0pg>H#FPv(DNaaO`h^_-DFZc*V)BeGch@iV1|v6>qy$2|LQ~@hQ2|W z@udb*b7JDIHFW6DYtA#k77<}LBa0?Q2?v^-rwaw|^jQYQ&Hau%vI@ExIEGz4P_&G@ z)hr52NJbZid|GR-th_f$4eUi!L{zAA@pstlu&(gE6HGGh!b?-7b1)<2%%Mj_TqjJMlL0WcEeFY+xHFABI ztkHiSWF>bNT+3tI(&lq@6?W8zaF?XiphIKANV+Ct&xIvq)qc0^1e5h-w>CK7-%Onx ze&(cD$3u`GS)1v!U$_k%?cR3;a<{%GDHx95X^?`$X}R-8cA-NSK=woRX=C~06Em6A z>!UdhDZp^s^YV=&W~qe5Jiee+f0q2hy-4<_IDAZ#spA-Yk!7Eu`2$o+Zfq=(d6CiK zaxjURT6O3R{`#c?&ZI>g%`-0iPXmAV@tIpi3s}l`oS-FnQhI~gLx-2qO;@d#clJ=V`e6&o zLNgR;l%c>Mf)PkAoRJWWDI93$h6-%*Ij8G~~KCpm1vtW!W`(W3+eH(}5i=Y?SA8xN`ZYH)@@jzGTC| zvBCQ651I#iMiDz1Q9v!#tbCw@$KJjnS>sn;owp~z#`Ztm5vy*uH&?{zimQO`mt>%+ zN2`h*0nv1WIrz79XN$h1Az4$UaJT~1fZ1v3vfhq50Gf0eW?DVB?=@|oLtzw z4-rTDt-&pIcmWs*unINwgORYaP(C%?@&w!EJ~5m%l@uHwJz6&T;oLO3D+hwuR)ZM_ zCa(iQf-5%6gr&X6{lpdy_pBmcdgsS_f-uQ3z5Uv|7HWOUP4*07*N!e)^okmveylsS zRz_6e6_!*cD~SWdRMa>rwYZD5BMnlZ;Ts7+(!D{8J?-$k5!NCja)<1|XLNpSUcF6dgCk_v(l9R8P_JUMt~r9W6^tA0O@|D-jeLo5AlM z$alIqaI_cps2Ifo&NW)#a%NBfk^PEV4CdFXi2`;hf`?y0GOo}3F5eCgkU0{XMAVfD)Y^+P5W}e?YGBZJ^mp1~49h5HZ8bJuX3hMW8yN z3y%Hle#|eMIdFuoimz(zc7d`a6c)kG=cQ?X5tv=B84bTxcq{K?RO`D7M^nl{GBzqo zM^c>o+Mn)ojg>!4W%RMU1{Z0bbBTwK{K^tYZ5b}gpEXyvxVmOx75>9wlfUTFQJE9! z`N~ax)0B(*)yH2)si*PdiA)(mg~q9_=F(K+{T3yvpK4BRYMmroiiHJ?Eoe!+I%8tR zH1HtlLzeE30Plg{N*uP|q6~g~M`gF1wbiIb{-P8`(Y^}i-T0PzzzoOr-8XS@YB{{T z!-q18W#1lGMMZI^odm{O>0x0Z10PLKlo9&gh@a_M3y!_g3R=eO^cx$vi_s5e(uamf z?vLjb}jvH>On=r(W`CC8(W?>pA}9_#8Y*ua#P3Y^w9$G zKg#fiA_uikG^S5I10C(5ha6ij`j0m$bbw>&z-yjIQQIG7BSS60%Z zmnI(vHP38(NadClnbdenh#_kU(-%Of_k6RRpG`y zEMvvNRQ@4$<=+$2Q|&&Ra{!*%u_kWF%OHI#RNaS}pEFvb8PdiH!BVvsVn@f?8q1mO z+CVF9u#c;v(H=X1^WRF&W+J2NMQ(?ii9d8DJ;5mZIFeSsU;cP5`yY8id;DjahfK29{HAmCee;}<@Y}W&n zm?j^HE9sGmud{?D@)R`4<*faOM9+7+G{T{44dCEFGDjXbe!5Yk1j(IK<40N*Mu8a} z=UO#hpREdiim8Wq_%oV2^ChW|6!HO5S2T654c(*=`j^wkKqP_IV)RPOm^h&cHNhLP>{pp)^hzt;Vo&aj$QR+AtY-T^{ zyirz*hX4Z~i{Z%BfHW_eiM(zF%;33|SrmHobQs?N{`Bmyy#krsKB)C?#&k^UC{ zyu;F5CrgJ4HVx9z9}&P$2PTRtqf*C~9f&K<6C%AIW?1o3v0oU39f>mR8$>oa|I+zC z_-Hs=VqY@cqQ$Nu6X{ONouBf(+ETWL%8qS96)ud9xg7$tKwzr!>X8-T)j?QU85FCv zj(T(nVC})^PddTLJYU^3vZ^0?5nCJ|x+wsk-GS5k$LXqObuV-m6vBZkn;uZkwcKLff3MLi4EA*>Z2*IF@Hc4~N|f!N-}4V3#H}0IGj_dRqz!W0{|v&HmzH zG7O68U>GVObBy3Na?3Jx{)^kjXk4gJoUh?-S%$BfcIXKV&|Zpgb`d&Nig_I(n^?D~ z4{yd>aTv|?fj`0uq@MmC?Hmlk(v&fT9@*c+?pR)2Vgr?lYi1`4lsDu-tx1Enilpka5(&Tp-HtiYxYEHe*uTv$W_E$4Ac7Ncw=|q!@4rfaGJVkfR z@_V(Y8fIXk)_nwp9%D^JaJWd@wMn7aHcz~T=c=2PSv>kJZ)}c+~iK3%7%K6!a->ifPx~gWCA><3t*)DkllS-@$&T5X}@{KCSXq z#MDB@xe8OjpRBSRSQL4+iS&eZ=9O$@?0c1)Axp3z9EXI4|rSM}HRz8FB7?%j+`+ z@o|IWP~DRVf>dSV^|dQO6f})Jqf{kY)3?!~@^U01K)Liu!WZ?*$y%wfHIb?+N`YH` zyBNu;*|o#!R9BTK-?bT>E?}Y-6zx7WBk&MlE>ER9a+}YlvxvRd$qhFkN95IsD_>lZ z9hXulJT(hV?qz6r>_6sFXZPRpj+H$9H+~x<+9oW}+7u+=!C6EHiN+)0?(_t|k-MWY zHBBD(C~0UW|D#iHa#b*Lm%XN$;Y}$@B+4FwzOw%yh~Yxbw?Dp374vRKNyL-Xa{+ZS&vER;6!+jfz z-SwX*yZMN3t~tj_hwIMb>ffA0UC@bX$RG{fQoI{W&-VycQW!1W6jjC(k3CWZgMO<{ zeZO-wR^KS1(XP5SUA|&LPWYw^X?gH^0W7OPOW^307X@Oy;VAReirAVhFBfglo3*rs z(r6%rBo!GsY*{Vy1%q;!`5MOgnaByaKP<;#na#H|vl=evu!YW7MS6nb9i257lY(07 zZ>4`d3d(t64QQOqXe;mVc|V_=kC-HX@6r}=_lXv zgNFN)DSt#TM>Rv`l^~%C-nfg9+?P6ym@2|zz`7(=J^e)FjCtg)w@D3>nRBy>&H9tJ zo!l!{EpB1)k1V|%v@f(oE7Xq|3%9zg19oOc_1y!-(Ao%eXV`)qs1cpx)}8iukvCY8 zX@NKV)1S);f<}@bBjwIZNw0!pPJ*>UQ;P=LAAm1GiI6IF-#9bMx_EcNGzk?_1gfBX zS;V(ln8^k@pLg(oklLGQSFejKMZ8+N!O}{=;#-&xk?p8AYmH!>ycqyGG>eSVa?9|# zlu~EA6hOQUf(+`=L86Z9`Vz!ok?YYd#d&%3norErT2j1zhpXjH=;OwKu@Hl)hWsUy z8ua=ipzjUxRpgokD5<^1;Pz%6*6vQ3BfGyCb1xci_<<-24+;SuE1l?ZqgN?gD`zOD zz~)qC4am}AMGi}*qaiJ7{aaa+$JF8r2y`Bd7TQmm``fo)}DM}?I!1HItcMeb5cNhCJBJq^dY;9&$I+;@- zZfh1mIOZAwldJhL6_Kz zs2UfdIaJot{T-*lDr;P*N{N7vWa^h?mmS%OMh5dgH#}~yw*AJyT7q#Q$p{DU9Qx57 z0i)N3P*S!@H@Vy^ondSqbtS92UGVIbA}&xcxpzQ;c&uOw;{npTR-&E+Ty~CetAt@j zDI8K34t!_m!BB&Mi4%v> zX57}wCK}-ZY$T{#6Sq}L><{hP-3 zDt7Kwm+o^W_`Dwbp`ksG^OVm`Ac4*Bq{(YSHZr$arQ_M?SaS73*OP9P$Kq7J6)=-i zgs1>0CengqL-FqIpIG}OEaHrrY(`NtIB0Zf!xUeuD_b3Ib8t?D6LE85>A@e@;g z^c7!=nd+<9p7Kn_a$B|dnfV0PviN3+FQ86H2|vZ>b4#HFQ=SGfgMdc;C^Z}(VKeysG0Eok|lhklad^6RkLRNpF@5m z@*xUKkvx>uY2V7SoN*6qjZ@m93Qh{((jP)gSWG9bW9n^_vGu2;{cVSqb)b0#ctAEZ zoX~b^1c>$_sLzRH_189TTvU^jOBXdtvRaeISs?O&(+b_ceqAe#)#1 zVQqQ&OgB`m5QhiCfS4G6bXdMxRQT<{Ytjdn0jtr8a-7~I=j+C1CB2AF0i}e)5+f}h z4Z%(#o9V>6YV>FJ%>-Q9iXO5KgwFg=aTa!YTHZNqq2afYPT-(8@QGLcgIb_(v65T`5tk9hh4y{lI$0T z7%xZ+GnSIcBKCQuVOnPPp4di*5laj_#=vg6TNHcD}p(7z({k%h}Lqtx91~kR>X8iW{g3BNMLkDxaLKHGUM?f0`_E%_fnGZAXQg2ZC)jhq>I9E}@K z9Ft>8t4sR;z=(jDh=w`u#1RyJbKDmSFC)nAgO388+0!#q8tukkVfYT0LTmLyJ-xz# zX-$I5%wxP68ssB-@pPU9n$NjzF{lv%*gcX<14031;a~XdyOuh>59&l&pd1GKpO7O` ztAWGzjFr!6fwZB_Bz4q_R@*jm=1;B))ibCX^K|W=5v94YZt++elg|+IUjWv!k`Oz> z09Ou@6@~_Y&MG33)Q1z z?ix>Soy^g7OP$5*aXWbzG`(F;6ym)vC$^A2YeT8j6qUxEuslCt)*kQkj1ac!)hKSA zH=%7hne??VtxpCqp6Q$!w8d4P>`1S|%jZ7^PikAa5YH#qMCB4>Ei0<`oms+Pa()WF zH+=%v)oV}K$oi@P1>VrncFMZSZ~3Oj5a4Y6XKAZiuB%WyCV~f4FQr*5E7wS7e`%1)8_ILHBj$0$l~9f{mWX#kut`v? z&KVM6v!o97os9ZmL)u-gkJWk-`MViKC$gTJ8e?MgMM6?FN3SIKbUDZ(G;j$AlJF%K z7ll%AgDk(UL5)c{(Y9P&J^QdgKplgwZC@85*GC{pYoer;GWCi+qL<#E0i}^xj;!)t zI=KqS3M5jAhmmM**?1>@56!yo{Q(BsCBIwl-cfNQ0?+PMHq1d=R;btQmPh-dff{M* zfwoVrWtCQk)|+=sMgp0Uah=Q63wlw3Bf)6!y`z{PTn_q287$30bh}*xPgSo|wW2m# zbjNMg%m*FBPCM3o3M8o@PBP~In-0pmD3_>ijyUwpJuBvWB!Wfj@lpr9FwMBhd`eoU;*Vr1HQaLh*h}s`82jI(cX7^CK4;jLxIuOtqTUKSH$|Ms zFq69?MBSLh7b7xzcaZHkymWC{H-I0zJQl!W`5~RyvKp?q)-G}PHFP=4;_u%M?r-9h#-8Q*M2Ne!nwzMBPvbwzIOQKJe zXzpa*Z7&0t@n5O53iUB(sO7f45&zovee6rNHo$c5?DJ;PKZ6P1RQ2&maXsI(dwMzG z4#GzBLzo_gvD2aejOD7~{@XPbO#EayR9`e{-BXj&C^UKnaq~q5R26W~w~?5~0N=LB zwpXJ-Vn^-qBYWdYgk?c=JPnVX_gOI6UzCeqXr>%M^(61wQHaGrZ%hgIFuKhSCR~z? zzL!yVyMUVAp~cqHfBwU4!@C>blRL4yTHEalVIEo&u|t{Zd_cD){i6~Vn|ZN5$Wa0F z!|Z7e1^SgR5P@mB2>>eeDQ%z@Wd*uY#4Iphu{PYjBB3X|b@sEjMxk zCBShdm++FvG@m|pCMxo8;7eAcGK%iHj4#OvC4rKebwo^Jbek>0gmFa1IRM z<$x^!mz7BRDu7D*Da)yXpE|?u9RK@?Gc4pAOPip@Ci!ls$XBV zV9kHS_JZ&VDqk^wIZv7IZ90NNvLdqDnn9r#cf0@^0Coc8=2d;hf56x$m`z8bD7GLmutkTrx0bRk#u=`J!AkCn^!ZB4n z8{|23Y5o4J?_Fd7p47_uJkaCz>f=2th?*S~qxW;S=1*DrnTAAN1Mmj-t>C)bDHb#Vd#9jUbU^j>Fu)@G)E z@$!NqiegGas&%@V?cd2iZFv#x-(@Hr?SR$Q)c~jRiBjwTB01ML zd<)&ezNGWoSIFh*;N)^;{wS@ny}{kR@BY%awkLO|zv=JHYU5-sU)A(=1DOv0Qok>P zzS`!1&VdZT0Q!Ie@JiEU{KJ2WQv2-E`flZse0p$kaR5(8TW1CIsh#)FKxel$)?pzW z9GyTvz5ed{|62An+5ybeO6l^L{q292tL8dLnv4Y44pye;q6Sb|hQ#l74vHs(*8} z0Km}V{$hM97nVoy&aYwik3aw8DIf3i@B1PBq0BZghzdXvPh4fSeXQuXm z2BZcf8(bfoTtkk1Qv#{M!3D5Sm1WHY;Qf_@^bcFy?LTS)Ik>n!fM#%W4E*Ry%E197 zkL$1X(bxebzxUDN0VEIqY3NMn3H;hR0%aWk+4`DM{lt&VKpA{K+DF6o7k}DcHOU?A zp`iyzKKawU%G0Ff#-#~-`Rn|p!=Chk5Aai&|FZM`xeEOnS9Nl5t^=^vO!MWz{ZWe! ztdC4g3a5W47t-YY&aL_XmHzpIDSUgo|I}G2DuTn?gSo+>0RUq|vj;@S;`R?t4_6d_**_=Z!NrAttX|G9f44Z{Qnk6}Ot=$$ zuBq9GW24ZMrfA>wkY3(BsMCkXcvuwsEwXxk785nZ=qD-E>H0=&p+K5eVTtSFLGH^@ zms5%bzoEn)iiRBV4Y+f&Ps(0zmSHDKH4g< zWWSB(%3`@k@d#CCjPj2)1US+6-uBWJu{H7VJl#5s(g;rz(wVvsY!<(gkQaicvnY`M zI*56(&*o=qvin0ZW}d?k{EM~;<#9f%LQJb;ds}`8m+)7`SSC5%*ck1k-CdBJ&Ut!@ z(Q-S&THC~pq-iW}0(!fqrEaU$tX>h9S3mp}rg|>e?)NBqP@Q7lVIcM0(Wi=rM)kv6 zIGMB^WqI3gm3V5|-IAK5HVa#aOIJLmRZh3jrU_IAjb8SeQ_^EhvLqSDf{9aWPexf=37ub)^HxJ~OSCkI|~(fv19gD0Jwnz`kGjz3mQ$z~ezc;pMq7 z3Fs)Y9Y!mcU5-VKAwG;@u8zQe48w0ZF0idJ0}fh<)WtLhxA9(pe{AM?hN$_v)7z0E zAhjLTan$Nksrei=ji*h0bB<4FyT{s97LRIXrTJ3IlqTGo1CO~U-?^1)h<_S{WUG;K z!qsD{kmgq#N-dFnrqYvbFBa zYmsn|S4M1now63S1U~;F=ms=*yt&-zUf3m_6u&>MY2nT6j3MzoLCuD2Fz>8lu~JQE zgI+KE*4zlEN)!JUpKM64903{O*{ia?stD_z(*T2<2e6D4#vO_ZRIi$YOLMA@Y=G_W zTv$2O;R2%dUkgZnYVqBbj(>RpL3x{lC9$9*2fqd-mTn8cD@Dokk!AKEy+3CSbIiC# z-5~kH9n28|1NQuJ^_OPa8{=%8Z#q0o%$WI(&*_k7gtV`o1rtUI0api+pT3(B$~8#$ zM+lT0G7XGpG`0$vdeHT=UWB#W>O}9GXSX2$sf;*kmlnXYey)^mkY- zb8T=)8k?HCF#~jnZTH*e$Ad8R2XTm9Q9K?&ZdeYdTI2zH(t_VCt~L>S+sFcNd7IXV zt$}r+bKc5apItdP{9Uv+G?p2=cv9E*p)Il5zXGe+rodLZijiznvaK$++F(W>h|_`x^XeTv(9%uM9*%C!P?c*7nJ1 zXn3uT`MPJ41a2K|gHdt?S{zCwkFzl}RSP0CgGLYQbn~;+A#K=}0m9SB!nIFUrZ3o^ zkML-POD)Y=(y9d}Vou}i7gRZEWP@q_Etpe`|B}aAy9lRUmV4=S*(MF%N_v;hpM%fFeR6m`Jv3ed0 za@z?|nz-ei`ELm7%XL;l(=-|9e4kklPYXuLpKn3fzEY+y)@r>ZKrB;oaDBNJ;(}EQ zG*k{iK@o8bWE)M5=s`RaVqqQSZu%!f3pEV$;IRSSv9LnD6)ndE^3>erAAx#{3o8t* zE&`roP*MZ3xjE8N;8y8$)kNlJgSiz>jJvp9dU9Qxhte;ge3fu}Lm;-OF@olns#*j2 z+CCoNy}^gxwQ6h<%|0xmLf%U{JnJY)-09ftDV~d9L?72oXc^hQNBgICI{~K^utdNY ziBoH6U8eD(X*9}7>%d?}_TO9MC(&<{y$Mt6vXO4-fX&*b3JI|02#0C-FILzj#MVIh z^6iwb@uJ0>YIs;^@u52;ZhxR0-KjIKjX@j*IIQ0d8!(7d!^nz7u!cDOEzSAGlVHrR zjZ`otO3)|I5ott<3n~4322KlMYW(>zpAB7=6-W=4v~wSlss6j-lT;Ww0?C(B{sTZ#uc?J7 z{Yt*zy5eA)r1CPHL+8w9!u%IZBn6jFd7E0!dD~UskUVohBRR0!Z@2;Sf=vSvDcA?} zT{#m*b<*{*@y>D4q4NW{GIDP{T{pby_Ax$$^>$zfcTmjAFKCSZR!u9^w*fHp-{V-) zUwEBJ6WTeS1lUn|wNTac0bhv^QF~6K>ly6i6{8}Ps=5nbZB&x}c84vhDHiYr2~c<} ztqK(u5l*=VDc1|?xnMbM6{vV^d764p)zld1%`ZXEv*?nqYM!+gzFr9-Qn1M&lDa83=>Adn4RsNW$B196(0fLk%hPg$0P}1c?`}_j!kiA0skY&i5dr(L(Pl`8^x? zT3xFxJ1v#}zwwpoJ(9(Zee}8DdeU21=@n)jtPrX#bq&0^x{86KeANQsg+v^KS%$=h_r*UR-|u|muv z8b_m*HV5jY6t;uHDCViYLx`pq*;0bCLm92MfA6p?RU^z%s*Tl0$iWHm@go7y%j*8u7ElUN+wf1A0xjL>%b9x;w zw*oHnQG1g>*Ma&;<$0zt6rqL!eppa=7c3s3Ida|I)(^E814LS`e!sR~re)D*CSHY_ zlS1iY$0=hVLi?H`U>`LUSlqAU4aMt>l7gOs47v3uaa(@n;Sj}H+RtK}`uVRaxPx-t z6e97GY`WCM;CdGmpcrV(D^lKwM*>nN{`eNohBez&QzZI+z-OA4aME(>YOfj#IPvv7 zGv~T2nXs8V7M~clTXZUwW(NPk&6-FX?TPGXH0Hpp&SQosg(}xiSYJB~Kn~EdPoH%Y z`ID0Oo`3t+#|N=M04G~XIFp6}EfH+rZ|8ny!F1cLU`_o&HH?SCe@}hE+INiItE+b+hk}E; z;h45uW2VOoVR}il+ak!ww>H5@`=2o&iT^mFGaVE9I2CnSf5%g+r)?BAI2nbiSAv5iK|AFC4ad~h&yXb3Wn44I3e_yk5D2BkX%CntRZ)w+XOCDS%mUad(xV~JyaY)14))F&+|W0UMhTSHRnaz@%6+hosD z=Pq`fn>gY z%M@#Eb0|f=mJDV*aW53YU5YUEBr-|Cx;f4RWZi|^m*9xUhJS%d5lJucM(wW5UU9BQ zIO(#LqE=d{w-3WrEQQHPWZ^uI^>4;2znqbRBUbp=w-LhJYY&5O^@=^fEwx~Z$S^igV*suo%+5O>BSu7c>=dI8f&)b zwnyk=2(PF?^6Db(%9JQU>->{TkFk+GW?KcJ9mraDlj(Qx7H{FMpLH?ZV9}tHhkOiA zp+2Jl@JQFEB~uRi6lvhWu{eq24a)Tj=qu45@_FXNb@oA_Ska81|V@*@mSxxrR+1u@9>$En=24qGL;#9-8nEut!uio>l*D92+|fp!}&9o zq})anUXxH`tabiL-V>JV3=B3SkMn&wa@VQM4F?Fj32xR|QLZfJS$K=Sm!Q?S<8dBT zCNfW%SRWH-HQdnw^;&Vw=>E_cW&_lR*eqP?%@+%SOk1y`hb+!VJMFzl#&U9J>pl2+{bL z-0&{fIa~%;o1X6#6UZp;a4Y7)J+7&In)u!=4o;`1L1NoVDicr5iBvjF_{DzwD(P~` z-|RS10%7WCSBWDd-mt-`UHp$3B(pMDFawuFt9f^?)s}5p2x*4Q%h!a3c(coJ=89!S zd;A8t0rOrnmv9@At;@-0riS`y`}f!okWH~FAI7E43qqM{2Ls&!^Maeqi_H3gMReb3 zm>qpv!U8`Ip+vL=Nl8Axv`q9!2gOq%yC{m!EY&>!C+sw4K_z|>*Am!`Q#$uQ93|+>O zy9|MyFDw;a6{ceO*D!&6vr>6s<&S(F|FmC{LS*)%?4I%p= z?GSGJk*q(;N;H|ljAeEUtaNq)3P(6qc&1!54cbv&a zYq-msiEnyh2n?qRR>wn6#nmb$W*0Sm1|qwjaoK%~|0X|w*nUxcYPe%u61cmz+d|*1 zP_ifdew<^MqGv$2?2Rw1k08Q9K-hwp8@8a&t~slntqUzgp?|2rt%8B7S3_irD1@}2 zICZCY-*Bwr1LEl3Ue;;W1H6ePz@5*YxQ_GB%qjBup%i(r8h*N`4AMZ)82L&c579CP= z-{r&!e72zfD;Eiguf0Ygu;^h2gGyCttIlDB7awud?lhN>W-km!u@zL{P!^75di zTW8WXkB-Q!aFyr0jlUMtOkNzAGwV3>&#BAlMr;omcVdg040lV!Jk=HC4E$y1XCsZ3 z*@r1ppoQ8wn7wP4qM@U^BS*hTvqmN`9Z@pSu*Tw-fg|bgl%bHlRde-On(560k|pBU zUMvQ_lEG`0rb)HQdcH6@pKXJr;Jw-U?Bq7SgY~2qfc16|5IoH7l7f1iIl>u@q*l(3 zLygKLGeEVCdNCE6Yn4u6Zl<+C5NtDWcKp}0Vs#~ZcXm6kX(ka8yIXlVC-N$)%1cgI z{v29JL{sOQAL3jHT6B)V)RG0vevTiX;Y4VkW0ggiu=J4Y#!-1(njtr1h+uNLtM{T0 z{t2r>Y|vB9k#+$?-YCE&T#1t8MDtO!&NvwnYTfTOt1ZB-*fp`HHOkipp0lOWj3}=`_@-_E1FJnEpS;_#^n&g|{9N z_JYfSpKJXrs2lti@xtOe7x1ikU6~(g^avT5Ws}!x+=%EN+ktQM`U-f#u}Xg)Lzl{x zMouWZ-cT5@Z+*l0!W7 zW)kNSw<tu*R8sz|wcbMu}#P?s?9Fm_ak>D`R) zZO7{pJeDL2s!eiqWAqzd;clkt#X}()k(XkuUvo6y{F$REBMeFtn%=yX3Q;Iw87i^n zcZN{AKPD;X=}@~xq&o8+$4d)Pt8G>4D;KPqb}gX}OQyk}g(A7~T%9Kgh`< z`Yi%FwtkSPx&yleM=BFBm z53qV#cU{7c*3B$VL`#Josk&+tSc^3(0xx8R?VFQFqe69PCK)9ovE#R(#+3`5n3rPP zwML4?Vvww`VH+DKOTHWlq4Gvb+0eU~dnfQl*T$tJECrHPb6V?(@Wvk2SwUWE~fR|2le@U z6;5PUGT=FJydrDwyKpxJ&M_UMRfz4kf4EcC2vOF|EN2#~+ywZeubKRA!~PZ}-KJuT zn59A%#%FDt8Wc+z!|3g;Mi~2D)ZPP$pg&5odpe72#4WY`7%^GcN&aGU62(ZFLBc8Tf%wf3f3z|;bC_R{=0=eOyKHQt*y^*xlqj^fKW^eokT>l>SE5I6`FG--#dFD6HOkHSf^h zzXNb-Oh%}gxkfdmqxih`&Q*kMs$8g0yM3pb!wGDLVOs22Y_#E=Z^vj#{~B$o9GXAb*y=;~>W5kIENR5}qku<~$q}wR>!~|%ky-(Xf57`+ zWbeH^!u0(G7$I3KAEEezq&XtLExS#HZ>DSaWk9z(FS$Esr&rz3g-8{R`%+dfdXw^$ug?Hpz|(rbig7Z5d;-eJ}r6r0KQfSl7IE#8_e3mb}K z97cQ&_I3gaUEQeB=seS#%+e{!N=VtCd#PucvVL^6(RMA<=`V3S_>zIQtOJh6$A<5) zuVELZ?u=b@7L9A?i|zNO1GlF-NE1ik3l?e?M>I`2u*KcM_^x4=&SAp9*(Y zYZ1)D&pR_UTx2h!aU!!OP{jMnEqn)OI3qk)5tz(ftz6PGaE+f3@^>VZai;4NBqYAT z%SbwOiWHG7eYJOy6+`JT~R}VG{h6#NyUL; z*gLKb-Ik?A1~VB1w9wfTE$|PO^7;Bz@&O6j7jvQ;u; z{ZrgM_oZh2INkO1v84ilD`Ct5fj!?6Sg-!*IXr~Ai{sD-EJ5l{!)6<{OFnWnGhY2< zFV!JZE%9?xrfyN%^}|7!S-9W?XCa3yP)B!Vi|~jX&Lmjj$ucM?e_c5xfBQ;CxORqs z2KN`Uc{|Wj12c0B)f( zl%RI5)f0=>n^&V*=*_~*si0znw2yN=(_ODT6x1j`2~@MuvaHUQTpMBm`iK4uG>gli zKA=~FHWcvv;z^Jyyj1ne<17s7mVKx-?Sfi6m{VcNa9L+Ek{C_pp=`fr?ZMTgwo+soO$BR>5^ZkFw|BUTqGk%P89}^T9o-{`4o#)LT2&l_zgz8BVc~H*im)zD1QcL{mW_=rk zwc!>q5$jLfQpnfNv1mS$7~t3~;<1<-sk!U6L`c2TlqGNqoS4tuQjNs8nWmpL)F(bl z5k2deW8}Ur?okEwRU=`&BgxmWE2^+`zrjp6$@anHM`u?~!y20N)S21XVG-s2s{Np0 zpI$h79WN%N+UWe660XCH;q6YTiNcEied^l6D1CKzb2>%hkHW3`cEGN9*wX9#B3&OVCW+NnAL`F(50s`pMFh){8vrD#pOaJ&7!+_t%?7rTc^ zW<*lZ0zg^r{v57YbuYUFWM3|}B#Hj?rX}_>G%j7~J1d8|RB&u$->mfu9l1RH{f=&e zX?6O}cu*;WG&}>(P%G2fly`J0*WhJ_PV125*K3W-)cTaHo++_}uN}IqMIx`Tm1e7; zsJmAbj6yvM^x(JA>^ZLhy4MFi^nlGPF)A9!jHNVdr$stze+v?)+M65u8-gj1#@b@c zdhcUHjfs@|=GB;l7M}@rpoz?hcRl!JhASHBdHdP`Lgi($CtfkQ`zrVbp}Ew_5>&vZ z>Nq>c!&%YHqT09?$?}654rv=j5wdb|wp{N)*~@VLgrPC<%iYrss_r>GPk%z6 z5~9z_36xLEJ48xd78FMdN^Vm_jZMUba{zlA>=FzdwcH`cRb)Y!LB(I(0j$UY1jxAo ztA!1=wgTSU9sf2VfiaikEvUJ9?QFJG}YTzpif}-F$m48$T?Xlwesbb z!gbV6KQ^PC!4xCx?9x*1+3k6019}~4wEY7@Me>?%Ku`pO}PAn6uJ}LSWM*>TYMA=s7aua7K{p_tn5Sud`N|db*Ocx zeo`)a@TXBDC#qP5QixbsOfImDF|vDK{o`E?dD}%ON!L?MKqRnBQrl6j!)e#&FJE%C zK~d$ZU=Mvhkw+2-XFw-Uc{_hN@-3?LNC}tT(#9g_62COZ)G!=&ixN5J5`~Ae&y^mh z4{I$_niA$Wm$;?IIIn|oR@lLtlFQURZcjiCPbLSjV&?iKU!ypU3ZCEdNv)jDm6{zg zt2>_$($a{Cd`{vUuKn^hb9Y@7XYI|ta;*5gI2z5#K^P)sylz%Cu6s6flya;#+?+R@ z(d83<79qtMJOSvu}pQA3mvtHNKDUf`W#pw@$@OR;V{E$)Ci9K zY~4ml3>_i~ZM8-_Q=-r1pq=*#eLQdYKPN%t716c%Ph? zr$b;~6f=FO-I!jV+*n>^2CEejuaFFG|wg+@RRjstIAY z^TV`LqG#k1N)hroQ`+;n<2HWg5N1xA{FT#yAfeUzzsKV!2TF){#}gt$D85$d+w!iP zDDB_qaWgj(SP_o0U1Xx;Tzr_#!j3{=Ho-dud>9@;ZugTfJ`5+}rdSu4!Vd|{{4tLf z!vPUEajoq^cv{Yy4X1xdJpt?=zCV-vv5L@0fQZcccSjM6N7w&A407naHl^gnA5%u$ zjAT{6wXQebgDc$*=(Ij^d9`N-R1>s(tG=cZk?o|yU07t)l!axNj?V}B?z%PyojZ5q za(MjcsbdSdz@KSRACZ5xY6%_|W67?iH;@y)D&8RQ*hD~U^wv)(KI?-U%6Z?gShMw; zbZwkLitgBq=S{5a;DLDsmpIsWc11Rjavh;RRx(rPxWx78q0e7Liz2zLy1bQ1wZ@xf zwvJfa6*76he%etciR0{4?>SIYu1D-c;I&QRAG_?H#S+SJ3~35yPWC^;dJj*+T-DDv zw;|Xp)`yG!)^p@&fPmv^OqrdQ4?NGMDYUPbj0`Lle~0>d@rHjZy&<-w9z;HAFwg`g>LaJ5FWEFil}@5c{>`(6Kb zhb~s6ydTPw{WLRM2B$y4?Jt3SA5-?@M}FNw}UYo1{!-UA&k2DZ8;aFG;D3#!7kq?h{r>^@-%53DMmvz34IWa z%p&44LWaqp$I2n=_Yb5?@hC3w^}7KETA#~Z*ZvGieVRz{uBTGs&MT_B=%k@PZJW7! zKQ2DSxI))GKU3yjmRi!i4@We9qS* z4BYT#^>IEut&d&08`XT#gfZc_CjEp)*0`XhosX`2XrxUZlrllZyGSCSBM+X_=(}Q$ zn+Gz8>8;}m=Nhk zio!t?%1dt0ggQ&}yfmu2zYW;`VeFoPgkb_LfsSq4wr$(CZQC}#v2EM7ZQJ(D`;*7B-h((6K-4h zfctXz`&1+>kBCKt{5~Ci+m9~tD3lSn0EJUJ7(HU+bnrbpwz%KAKcSHClEiN2t@6p= zRft@YN)mZywTHNhH3C*$arw^X2rdgzCRTu0@eCN09TAQ^Dy1~VI`JB}B4$?~0!MU` zjS7&PY)5^}os-RAsIX(afEz}=Harak0}&?V7y(%0tR`KU3Xuhn4}(N>uXW?aF3A71GYFGke0L4U61? z#96QQb>Da$9I{$R0{+n-H zB179*MnzU;9a%-a>g8UNda>#eg!|{@tWfzU#KI~c6N2a0H4z_M73qMxAB(;gcO2r_ z4-n~<{n;yv9fahOXrvZ+#8o$fiI{Dl+MLLTC4YhcxxkQatC^z~fqPcsLG%g#c?;3u1 zRm8U6CV#*f9%Ys!W5dXRNVAmFy^{!tD3dVDo^o!7=zTg&7VfFj?YbL>QUV)ukaq6Y zz%O!F=OmX&(Z2Qj0}G+hz;@LVXg*>pKM_&9xQzqbdz)PuNu2CUOqH}v9LdM56-pNo zu-PFEwDdKNaa=a+sWc?1DZPqE)KF*TN}0>f*H*GLdD3c^Y3SQ``ZZs?$0$9MGKOGC zP;1$MrF=*!aEe*>1|}-@J3LPU8mqq!>%nGOTvD1cz-wzOOF%a!d0}bO-{lU^Kq3;w zf2k}bF)$Y(xr!bn^#ZZjCWx$4=Pzq%xU-ZubXSnqSp1P%^or7dwge1{f&}k`wl=k& zyQZbQ*=n6p?U@M6hlI~Vm9cniW%Rkr%wOu0UVVGZTO17t!-DgdU6e{PTp)e-o_{te z4<9L0!4Aj0LPjO=fCoFOXRL~tNhAMmM)Ay1^^A|}!6;7`g2_s0yv0k|C9m_;5_vA= zk%;-jNU66W$I-C=)Or2-89xXoO9=Ho62l-k2D~LBFvezElqu^q^0CfgAXvsm zCypH?KjCfk*VwscZJj zZ!0fZ2J+*grZfv}}c@iTKBKTMMs4zR9A*eyEgUWbZF!!vt6%K3_#R zn$(OWvJ(01Qy8K2>KkrMN2^#Y6}uyzR(;|z>!4VmB<2i;gjS)$0NB?skM&h23TX)$sj`cm!Vg?hi~P55wuT##bLik3W*~5(?hd% z(IL1@8Jc*1kvslf4|uSqH|FNMAXiaXviCg8Y|VN>|AzU(jHnm&`pdS6ITFXRJVQwZ z^5_}ZG!+9>GG4s`T7$ci7^Q`vCS30ut-c9;yG6{113ZHCz5bp;8#CVQ0b9B7vNLR7`mPIEmXN!pc!u{pc( zP^YRK+7q|cM(K%1tpCo~5~nQ?Gn-#!o+ zk_IK~Vtwb=Zkke8XlE=|Tl8k;6Q@zWQS`u3rP101*6*CKe@s;?&^fX_z^xuqUv-~;~VkjYN9%SfHCbZ+(DQ~y{} z-|g0yQ}3B-8xmtJy)*lO9e+6Y_24xvTt8?d7rwdOoIKmp>#>|IRNeq%hapujsAV=O zM@(b*QE<9aA6Y$i38Q%iF_o~z1sbS+YqxifvRFu~m{0rYeDz|G@m8sFmY3@hLr;GB znLBdTYct1h1x5yhLR_z+q*J#A%u?xXnE*$10xi|K;_%m#O}G{K3}fr?#HUMQ)Vi}4 ziNGC%c=^ln2N`alt=^lad8C5EfmRPaF>_aNitG0eOze~cKgPEuy!1Ta2 z5?U@8w_I<)!AWA0NQ+mTVGrtWi+01zhB!ew5{NztW5tYCJ;|Jby{PU}HrWuJz21f1 zLU45t9y~kfIqX^+;Ob2_HN0^8?gM(WpOIe zkyR)8n#%t76Ytz|J^9GzcZED@x6iIdW2W{hi*0>Rb@7M9_Uk`Wn{qa*PRBci zyXw57+joeG*$T0NrQ_i!w8|+67_e`oJlOShy=#KLgp?RqDQX$i4O)70&DapN07+QA zga>m5RO+SilRlnV5ku%rfg{mu>0d(jNM727Qf$`HWQp&@C0xmm`8hj zynEXqDobZRavj5jwM4+Gd)(1PNj{>@A`hhQ1t*7pVI#BaMtDDh?T3`RT`7Vh1vl73 zoV+St!FEN|rZZVEg(%-QlaFcagu}<3?6VjZ*B6twG+D@w|E7tuc=XH`!KK@nTd@F; zds)=Q2E#KI6>E?ctZAK7z*|lF(wxM_c6y33vpdwM1RqT06&h9(<6q*+@7DNv!V%PP zFa9jxc)JD^S4@+Z4KWxczPAHDk@wedhqy0Uq)1lm#GpHQ>w6?^$|t?GV!MO9c=4+V z8D@S+cgr=8588@AjbL)%(A38@p*rG3mO5f@pHiuf>XJ8+kCpp}+qiG*NaAD4x-oao z<4=HF4Z2_rccBv6QaiZ6&3u>r+Qy)nV}NM+%ZILTE`&z#_En^2H4kz3tzd-D$lz~F zwxc;MEs3GWoZ65{uzcO*AQ>aJ5M7fh~}tKPy2Wc=g)gQw{MESX6@}tP`yeJ-A#v@JPJS+{alnL$sMf7 ze2GOY+02k?k(ja|g|{W9D6{9y>VtQeO5vnFu*Ih)N*9BRd;1U&M}EWA^&Cci4dITc zqS3+FEf$V=IPRHv3mO37iCc3SC*=p&P-4N2>wx!`6@qMw}u0V1}8(Fv4EYGGHJ zawtreeP$Ew-6`!u2V?uT;ryqW+fZ&(t(-^dq@0BY0$Q-(-6A;BPM5!?4<{5LiWbm~scaW}h8U5iTa$ zXrUb=QKD1A)w7Rw7W%Vm#=kSIo8;VXKRA#kSl+M+IU$;Ty`jtER=TG4Dq?Jn;1z1N zlV7BcP)f}!au1xU_DiXD|97=FGjY_kLJW2xU`#3x&!H_LqJ#b=jDVar=+xTMU^rv> z(6?Vz>InkUd4r0sdll z1A#L9@~Ni`a&?vHLS$Ry=#Pmc8ylJ}<$pQ0WNNU03%7QEwSxRwrjRDRHsJ0nDEfmD zWhRsnm@WnJ-$x4LSBLkLThI`2sie@Ji{HEN3CStHq~s_~Ju4ftlO6Y7>Ed%V3;67! z&W=PM-@!Desy>*ZFLt*#^$GMQr%B>{ndYwU)RDq_i3NeVn2DrVt_;6g&2pYsWc73x zf*42!L1@JO(LG&5WUq8F98*>6y5}#)?f(MBIx()5Lb8*fRDq7rs+$t_q}=)F|YD;{M$PZ6L*;E3lUN_~ESJ3gn05v!XedmWbB`X7SW5Z0-|7D`PYGe_qqh%_ z+w|4K{nd+iwKC?AlXCNwrHeRE=uQVM)H-T@5WaxL=WVb~x@l4Njb6PBn0RH_F8X*U zu$rq;j(HeX;>H+1R|)9lcY_WP?TY!nkNVS=eDf4%ru>s}fFSS5{I6w-fCT})(5txF z?6c?|CMynoD;QdDDgU8?C57NH*YuMs)um(CbO-nZVe%>e3V z7ORX=GskL{1$Z2`f|!YJJ)dtbje6RjnlR(vpXJXz@P@2pg&E|BIjH^4CyP}Ckt1lX zBxoL)F$9{-3y%=A8w{&?A+naz&d!p{lR!fkVvpRS6qG?uLuL%A3cw%j_#(n1)E@h+rS&%lICxgumc>$D8 zysHpuU8kV#LJUCIAf5woOQGmB)HJqWV_s5Ydp`}ZTil9zg`V~ocqZ;%8oNFp?IpEY zu$sUr=H!RNk~MdB;OB|GX6Vch{}>yfT3wJOPDOrH?b=2-Ra>*HmomCickLUVySQg! z6nYm5kv24oW;T$sC`*?X8Oe!U&H%NSDoZvu?zXAwyCy`5GwUQvLWw$^+V0heyEgP; zE)Cpxq!mpTC<1r9hhT?Mc*!A3p?PXyQ-`XflDO;P6=oVcvvSRQKbtt)$Yab}G+j+ZC;w&4!#KW_T=A1q~ilvO`)a?fH zyzM`aN~Ku?{oV!2gJvFUUZ!4Fsi7&6e%DN1cz?SVWa>syj) zFRaNB4D8vs;<^lU>cKb3Ok@3^IkG4cJQs-FpJ$uLE~)u*FIhpo8Um(aW_tScMybu^ zOiZb;$?NG>)TxCcT&Wfqd2E1*m#O_6JiR@%f~+c)XuQ?{=Q1sBi~1IJHzZ-(1$Mux z&R!{8fl#14)srov^xshBB<-iNHkEAYoFuhvUJ~PdD2jYD!B1{UZO$wsNazWnPqE`&WzB}8G`=rZCFOfP>8&K4(wD-Tb)mvP_(M>#zyysrtN*rU zm-TCmf~KJ897KCqcJj?*A~2Msmt9$TLJ&_29#Q8xK0TRiVgyjN_K&gosvnXumkQP_ zg;RmQT!1=CdH020emUV@r<(A-R$FC)gcO=A8{q#1!KOg!2rbIURP7Zkl^ z`huA^8fuq`jqFcj{4c(RXYl_21~qX0Z%_j#1IPc78UBMBn3uQKn*O+?Ck&F zP=l*V)>bQDOmlk|GLDpE+Traj3J^&6KHNw_d)I%18)fZK3u>gNKmOKtj`u73?)NJ; z=6HtrMbmkvBPo$x#YCzSW{}K)I00mRH8L zLPezzjvzl7bX^VR9OMwxfinXbB{pZ52N$4vdYT791wb-^cKkrr5{SVGd^|Wi!0OhG z01eo@5Q)mF${$Zv;Emn~_Adwp1@EQ5i6^u7Fc7J>GrI!_2T*Pez};Fn0_%DGP{&qQPwKK{&ht9}|5p$Kb3>R$SCAja zB!It~W>4yqtfj2&3;)O-)WHjRnXA4Tz&L{c@McDEuHO^tvSJeOdO)ppu0Wf>)=~Q~ zx&QPC@qh#U#y0ZtkW>30f`Ia-;GsO6$3G>`Z~IJtMRdTv8kxDxCG7LhJ#MgOSGVVP zaob<#jZp(_acFV!u|DD;fKs&8eE$D>e6BM>Z}gcw4M8m-9aUMuI@(5?OcTKSRLA}; zOw3%+U-3VLj2!Q3B}QZSPfkJ^_*pACY9lMw$If6|i-+)^AUAnbB_pp7K^ zpMDhoRs*q@=dQ=?N3pnpcx+_=?a@Wx!40G%2uKcQ9^ZP(i~19RpwR(9hBhv1WAn#G z4e2YC-pULD~ptx#V_2u@X`OVg|_mZpqTkLTyX-K6VUqI}icuIqM zR*U{C{AmUBmjF&DSvhGQZoc^Ivj1&FYGVb<(pb*~)ZpX*6aWX$=LUMxX0CT~0N~Nw z?c4-8epPP+NXM`pkh7-);5H|>51?EJJeZ4nbO1~b@E7qX#sf%x_#;9yLjyoQ$4@}* zH~EAghcjUM(;uIG2;07y7Hs{i_kgy0fggu8X#55Dkv4m>A0LD<_zb6?(zd(j-`BS5 z^6zikhWiV!pTPYCtt z`^Q=FH&`hLXF#1$8alC6w#+Yc94H5eX4g4wUo`kg=I{M|mGkRQlK=UZ@;9U{0&;yi z(LXx`WMJT}jmnPwm8W~~{0pys)HgTXSNdEN`y2X)qXB?04r>xq-w45W3f(MY2SxXS zIG0D~Ek82kp%h4*Pm26yM{3&{j37^A9*#qzvA=ehC8rDUFZpogP4c;kcCip@xYcjN zLbm+d&9;!H8TvW#jZg#;9dB;cK;=z7P5+hlim2?1Fgd48cbYG27i~)nNCBT8?d0Oz zFTy0pOSDghXpP$XEB9-+#UZx@b7}x<$QCm;KiR>v6M6CC1(2ExXq~+K(QuZ59>ZJ* zY_zrwTQ;1JQ(pE;gdbNAAbM>Ik-2z~EUw)a3FI3SF|r3I0^3k`e)~db4{>RR8!K0z ze6}BSQE-RY&N`2*>51l-n#1d7d+1FZ z(Y5RR*je+mK-;U>Q{RM#7t*O(xcbJp!&b6O11x02n18eB-BksAKDBi0i_5V8%6s<7 zQS1iI^qGqfOZ9KfWU!fKxMciY11QHNmYkUqsO7Ct-y(0Y7`Aw@4IZt%oAOHwvb^wl za|boh`hX>>Ps^LeOw4GE)}lVVqBl@8o)^1z$~Z+Vbxqe1>y20>yxE|mT*dztnhQ@| z-tN`7_q~*|e@;lQzJrK}axc>Ssg(1m?xv00Pby10S-Lp+4lGUM zJa#snB{@`eVES>)l#yLV@FHT)rt1FcK7IOB1(moX;o+?AKo@>!P9-djg%5=n0|X_?%QlqLr~{mSyo^5N^JbMp!!e;ebNG<$|K z+#)VEeE^Os-hk)W5~6tFt=QGX?)G2~srBKq{(*L#wzy=r_@N&_NAFYgq{8Dc*9(e1 zVoaH9D$xGtY@}$77w5|InCS_#@YYBdFd$Z&R55yLV4xI27pa=VR-n#%6sN+n=a^wS z%gSqMKPhhmdNd(F%iGp4TQmv$ULcO)d0oO$nhnvVBLv54ut`BI|@5aJK8!f7E!n>V}~MP zi#qDkz3s{;!^!%BLwPH!ff%gETWn$v;6A&^e*H&?WPY;QS|Ap2zeVHuPk+ZOtA zzgOb?+U8=}F^09b(O(dI3+Ob2zAc{Yy;L>%&lntW=WS4xNJO(o_x+U-Pad)Sd8ysE zS-Q@#oBt3?Wsmr@@CK++bGv{N7Hn!w1xhi1{YcnLD7sJ{P2ujiS zgTnCKko`8vIWADwo<~oP$LgH)5b8g#_G?ecVNAKF?V>V3=bD-K&L;#pQ8|}pRQp>n z@a0cw8$pH0*;J*}9`R+sCTPWK&B|^yupd3wat#_(NtsGcF&>fAr_Bz5ZI1tf>cs>1 zyh=Z^vY+)UOK>@0WUkK>Q|eLVe;J0Uh8Hj`VC)~^b!se(M;iI(FiKULdFzNHyQzWx zFu(QOu?pnf%!#e|1Wzoffg^$X?R-?srKoBn0nAS*@;#Rwn7U)OCEqh^%3FE}2e9B75oy9I172-7a4>#YeD1WVE2Z>_xzd_Oo@BNx_e zYc994;vn-7H)|91?Unh8+^o>c1{3Z>pMZ~;oK#OI;)Bq;!FvSxtU;|;WQzMlP=28{ zicqs|R=XI#JSO6e=G$YB4hy4;B&s8UMEfn2P}XXXTMB|;P~?*GL9_zj37UIO-nj31 z>9>hOIMESoS)3RybsPRmb5lqtrw(%{cpUAy@=^RcEd=f;#Xr+JaPMIlh;DTae(q3Y zr;$pl!P3WuZ$ozvf}18qyy*z09q3ct@1qSoD5`LI=_sWsC|487-g>lPaY zf;DoAbeO<`$$U#4zk;m6`=eBi<5s#Gy|<@+awPQ{c9I=DLqL2i z$S`L#J?j*jntOIu%JhZkyEzJNW91OlA_ir*_RcZZ(}|I`obskGc~?PsIFV;5k$L{# z8lK1&{a8jWzxp&7WzIY2vBM+gr735zGO{!!KX{yr=4Jm;+QMB` zk5kopm+F~Fk;wGP19}atON4eNKHqKiMld2=wt%j=7lgaD?SOMtISwVb`uI-66Fpw9 zhvjef;CqnhfV1&`9ZuR=1bd3DZC)1dTjzdO7xzsu*}yvK;a^pwJ zh*I0E$pni%;#WiHr65VNa}kSS>gU(O+#BQj`2T%KZbx_UcKzPgZq*U{En=F(!vz6s z0H-MF>;{oqhHJT<6e0oZ@rKfg+{bFgDgCFQHd-;Kkud7%7cxQ%sI9Zb|9XS#-!LBG z!dfE%sG1J_BQV4X4>xA9{28*hq{b$i?{4!A>{XzGLrOW5Y6fmr4h{+5@J1wu;{(Yy4v8poVK%eZ6|i%bduYbA`62okvTrl zaJ(8}B;H0-PI<)?HB1m5Qnfo>gqHNE6;%ISVhG!s-*Xg&$44!A>fS&#%5s|J1l-x& zZ~0^59_RrogK9rS#!~yM171F%9JBb+>B-3Gz<>*6BUPl1 zw4llQ*|b!`>BNvw)x3MJkuuC|9>_NLy1%1;uk`tX~EeG{e!^gkZ6T35pY{wNxsYmbccPcBugMChtHHDUc2r06PCdWN%L1EEC z+4CCj(w?13hUZv+!eQ76Z)o}dvT9(f222lR92#J(qvdV4)YNKRM&!k_u0EkQO!I7+ zy=jSB3^!fAalweNyx`uE4ytT)QqFx9$eiCS41LZSA87fL3VCkJm#>cG#%Sb%XVGI$ z4s$Fu$5I6wN}xgm<@>2#Q0Ane+FtTxCw-PaPYI_3?!?Q&%icX)gv7L9Y?S2zHhL0?#iOT0VB9vo(o|pz&MIb5_Z5F43-Z?lj5-m z!`>TZ+L3+ZDr9jUlSWjyElg;i1C1dNNjTx;H*v!UG|242!!)umt=JqBmO(~B?&#sq zv51-Q`p!&G8mGU?h*&289c0YR`8v3&nDJMf7SGOV^vy6BQ7@}L1{L3@wmp8HsjN%= zqXH#)F`ihA0YZ}L9t9beagxvcL|vB5f5&~%0A1lhuEV!=ai!e0!e8uEvrBOA7_d+( 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\raggedright\arraybackslash}p{#1}} +\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}} +\newcolumntype{Y}{>{\raggedright\arraybackslash}X} + +\pagestyle{fancy} +\fancyhf{} +\fancyhead[L]{\small Map2Check --- Propriedades e CWEs} +\fancyhead[R]{\small\thepage} +\renewcommand{\headrulewidth}{0.4pt} + +\title{\textbf{Map2Check}\\[2mm] +\large Modos de verificação, propriedades, sub-propriedades\\ e cobertura de CWEs} +\author{Levantamento a partir do código-fonte\\ +\small branch \code{wasm-verification-upgrade} --- Map2Check v8.0.0} +\date{6 de setembro de 2026} + +\begin{document} +\maketitle + +\begin{abstract} +\noindent +Este documento inventaria \emph{tudo} que o Map2Check consegue verificar hoje: +os seis modos de verificação implementados, as especificações SV-COMP que cada +um responde, os dez veredictos que o runtime é capaz de escrever, e o +mapeamento CWE${\rightarrow}$modo tal como ele existe nos dois harnesses de +avaliação do repositório (CASTLE e Juliet). Nada aqui é aspiracional: cada +entrada cita o arquivo e a linha que a sustenta, e as limitações conhecidas +estão na Seção~\ref{sec:limitacoes} em vez de omitidas. +\end{abstract} + +\tableofcontents +\bigskip + +%================================================================ +\section{Escopo e fontes} + +O levantamento foi feito sobre quatro camadas do código, porque a resposta +completa não está em nenhuma delas isoladamente: + +\begin{enumerate}[leftmargin=*,itemsep=2pt] + \item \textbf{CLI} --- \src{modules/frontend/map2check.cpp} define as flags e + traduz cada uma em um modo. + \item \textbf{Orquestração} --- \src{modules/frontend/caller.hpp:21} declara + \code{enum class Map2CheckMode}; \src{caller.cpp:389} decide quais + \emph{passes} LLVM cada modo carrega. + \item \textbf{Instrumentação} --- \src{modules/backend/pass/*.cpp} são os + passes que injetam as chamadas de verificação no IR. + \item \textbf{Runtime} --- \src{modules/backend/library/lib/AnalysisMode*.c} + implementam a checagem em tempo de execução e escrevem o veredicto; + \src{header/Map2CheckTypes.h:68} enumera os veredictos possíveis. +\end{enumerate} + +A cobertura de CWEs vem dos dois \emph{runners} de avaliação versionados no +repositório, que são a única declaração executável desse mapeamento: +\src{tests/castle/run\_castle\_evaluation.sh} e +\src{tests/juliet/run\_juliet\_evaluation.sh}. O contrato entre eles é +verificado por \src{tests/integration/test\_cwe\_mode\_mapping.sh}, que impede +que qualquer CWE do benchmark caia num modo não declarado. + +%================================================================ +\section{Modos de verificação} + +São seis modos, dos quais cinco checam uma propriedade e um --- Cover-Branches +--- não checa propriedade alguma, existindo apenas para produzir suítes de +teste. + +\begin{table}[H] +\centering +\small +\begin{tabularx}{\textwidth}{@{}l L{3.4cm} L{3.75cm} Y@{}} +\toprule +\textbf{\#} & \textbf{Modo} & \textbf{Flag} & \textbf{O que checa} \\ +\midrule +1 & \code{MEMTRACK\_MODE} \newline \emph{(padrão)} & \flag{memtrack} & +Segurança de memória: \emph{free} inválido, dereferência inválida e vazamento +de memória alocada. \\ +\addlinespace +2 & \code{MEMCLEANUP\_MODE} & \flag{memcleanup-property} & +Toda memória alocada foi liberada até o fim do \code{main}. \\ +\addlinespace +3 & \code{OVERFLOW\_MODE} & \flag{check-overflow} & +Overflow de inteiro \emph{com sinal} e divisão/resto por zero. \\ +\addlinespace +4 & \code{REACHABILITY\_MODE} & \flag{target-function} \newline +\flag{target-function-name} & Se uma função-alvo nomeada é alcançável. \\ +\addlinespace +5 & \code{ASSERT\_MODE} & \flag{check-asserts} & +Se algum \code{\_\_VERIFIER\_assert} ou \code{\_\_assert\_fail} pode falhar. \\ +\addlinespace +6 & \code{COVER\_BRANCHES\_MODE} & \flag{cover-branches} & +\emph{Nada.} Explora caminhos e registra suas entradas (Test-Comp +Cover-Branches). \\ +\bottomrule +\end{tabularx} +\caption{Os seis modos. Fonte: \src{caller.hpp:21--37} e +\src{map2check.cpp:781--878}.} +\end{table} + +\subsection{Especificação SV-COMP correspondente} + +É preciso separar duas coisas que o código trata em lugares diferentes, e que +não coincidem. + +\paragraph{Na \emph{witness}.} A especificação é escolhida pela +\textbf{propriedade violada}, não pelo modo --- \src{witness/graph.cpp:208--237} +faz um \code{switch} sobre \code{PropertyViolated}. + +\begin{table}[H] +\centering +\small +\begin{tabularx}{\textwidth}{@{}L{3.6cm} Y@{}} +\toprule +\textbf{Veredicto} & \textbf{Especificação emitida} \\ +\midrule +\code{FALSE-FREE} & \code{CHECK( init(main()), LTL(G valid-free) )} \\ +\code{FALSE-DEREF} & \code{CHECK( init(main()), LTL(G valid-deref) )} \\ +\code{FALSE-MEMTRACK} & \code{CHECK( init(main()), LTL(G valid-memtrack) )} \\ +\code{FALSE-OVERFLOW} & \code{CHECK( init(main()), LTL(G ! overflow) )} \\ +\code{TARGET-REACHED} & especificação de alvo (\code{SpecificationType::TARGET}) \\ +\addlinespace +\code{NONE} (\emph{TRUE}) & conforme \code{spectTrue}: alvo, \code{! overflow}, +ou --- por padrão --- as três linhas de \code{valid-free} $+$ +\code{valid-deref} $+$ \code{valid-memtrack} (\code{MEMSAFETY}). \\ +\bottomrule +\end{tabularx} +\caption{Fonte: \src{witness/witness.hpp:64--101} (enum +\code{SpecificationType}) e \src{witness/graph.cpp:198--258}. +\textbf{Não existe especificação de \code{memcleanup}}: o enum +\code{SpecificationType} tem seis valores e nenhum deles é +\code{valid-memcleanup}. Ver a Seção~\ref{sec:limitacoes}, item~3.} +\end{table} + +\paragraph{Nos metadados do \emph{test-suite}.} Aqui a especificação vem do +arquivo passado em \flag{property-file}, copiado \emph{verbatim}. As duas +strings abaixo são apenas o \emph{fallback} para quando esse arquivo não é +passado ou não pode ser lido (\src{map2check.cpp:104--128}): + +\begin{table}[H] +\centering +\small +\begin{tabularx}{\textwidth}{@{}L{3.6cm} Y@{}} +\toprule +\textbf{Modo} & \textbf{\emph{Fallback} de \code{}} \\ +\midrule +\code{REACHABILITY} & +\code{COVER( init(main()), FQL(COVER EDGES(@CALL(reach\_error))) )} \\ +\addlinespace +demais modos & +\code{COVER( init(main()), FQL(COVER EDGES(@DECISIONEDGE)) )} \\ +\bottomrule +\end{tabularx} +\end{table} + +\subsection{Pipeline de passes por modo} + +Cada modo monta uma sequência distinta de \emph{passes} do New Pass Manager. O +\code{nondet-pass} e o \code{map2check-library} são carregados sempre. + +\begin{table}[H] +\centering +\small +\begin{tabularx}{\textwidth}{@{}L{3.4cm} L{4.3cm} Y@{}} +\toprule +\textbf{Modo} & \textbf{Pass adicional} & \textbf{Runtime} \\ +\midrule +\code{MEMTRACK} & \code{MemoryTrackPass} & \code{AnalysisModeMemtrack.c} \\ +\code{MEMCLEANUP} & \code{MemoryTrackPass} & \code{AnalysisModeMemcleanup.c} \\ +\code{OVERFLOW} & \code{OverflowPass} & \code{AnalysisModeOverflow.c} \\ +\code{REACHABILITY} & \code{TargetPass} & \code{AnalysisModeNone.c} \\ +\code{ASSERT} & \code{AssertPass} & \code{AnalysisModeAssert.c} \\ +\code{COVER\_BRANCHES}& \emph{nenhum} & \code{AnalysisModeNone.c} \\ +\bottomrule +\end{tabularx} +\caption{Passes: \src{caller.cpp:389--445}; \emph{runtime} linkado: +\src{caller.cpp:499--531}. \code{REACHABILITY} não precisa de um +\code{AnalysisMode} próprio porque \code{TARGET-REACHED} é escrito pela +biblioteca comum (\src{Map2CheckFunctions.c:62}). Cover-Branches é +deliberadamente o pipeline mais enxuto: menos instrumentação significa mais +caminhos explorados pelo KLEE no mesmo orçamento.} +\end{table} + +%================================================================ +\section{Veredictos e sub-propriedades} + +Um modo não produz um único veredicto. O runtime escreve em +\code{map2check\_property} um dentre nove valores --- o \emph{enum} tem dez, +mas \code{UNKNOWN} nunca chega lá (ver abaixo) --- oito dos quais são violações +concretas. Esta é a granularidade real da ferramenta --- e é o nível certo para +uma comparação contra outra ferramenta, já que \code{FALSE-FREE}, +\code{FALSE-DEREF} e \code{FALSE-MEMTRACK} compartilham a mesma flag mas são +defeitos distintos. + +\begin{table}[H] +\centering +\small +\begin{tabularx}{\textwidth}{@{}c L{3.4cm} L{3.3cm} Y@{}} +\toprule +\textbf{Cód.} & \textbf{Veredicto} & \textbf{Emitido por} & \textbf{Significado} \\ +\midrule +0 & \code{NONE} & todos & Nenhuma violação encontrada (\emph{TRUE}). \\ +1 & \code{UNKNOWN} \newline {\footnotesize(nunca gravado)} & --- & Indeciso. \textbf{As duas chamadas que o escreveriam estão comentadas} (\src{AnalysisModeMemtrack.c:308}, \src{AnalysisModeMemcleanup.c:298}); ver a Seção~\ref{sec:limitacoes}, item~11. \\ +2 & \code{FALSE-FREE} & Memtrack, Memcleanup & \emph{free} de ponteiro inválido, \emph{double free}, \emph{free} de memória não alocada. Também o \code{free} de WASM sobre \emph{offset} não alocado. \\ +3 & \code{FALSE-DEREF} & Memtrack & Dereferência de ponteiro inválido (nulo, liberado, fora da alocação). \\ +4 & \code{FALSE-MEMTRACK} & Memtrack & Memória alocada e não liberada (\emph{leak}). \\ +5 & \code{TARGET-REACHED} & TargetPass & A função-alvo é alcançável. \\ +6 & \code{FALSE-OVERFLOW} \newline {\footnotesize(gravado como \code{OVERFLOW})} & Overflow; \newline Memtrack (WASM) & Overflow em aritmética de inteiro com sinal. \textbf{No modo WASM é também o veredicto de acesso fora dos limites} da \emph{linear memory} (\src{AnalysisModeMemtrack.c:418--424}). \\ +7 & \code{ASSERT} & AssertPass & Assertiva do usuário violada. \\ +8 & \code{FALSE-MEMCLEANUP} & Memcleanup & Memória ainda viva no retorno do \code{main}. \\ +9 & \code{FALSE-DIVBYZERO} & Overflow & Divisão ou resto por zero. \\ +\bottomrule +\end{tabularx} +\caption{Fonte: \src{library/header/Map2CheckTypes.h:68--79} (enum +\code{ViolatedProperty}) e \src{frontend/utils/tools.hpp:105--116} +(\code{PropertyViolated}). Os pontos de emissão estão em +\src{AnalysisModeMemtrack.c:141,174,299,356,413,421}, +\src{AnalysisModeMemcleanup.c:142,170,346}, +\src{AnalysisModeOverflow.c:193} e \src{AnalysisModeAssert.c:20}.} +\end{table} + +\paragraph{Observação importante.} \code{FALSE-DIVBYZERO} \emph{não tem flag +própria}: divisão por zero é detectada como efeito colateral de +\flag{check-overflow}, porque a instrumentação de \code{SDiv}/\code{SRem} é a +mesma que checa o overflow de \code{INT\_MIN / -1}. Qualquer comparação com +outra ferramenta precisa acionar \flag{check-overflow} para cobrir CWE-369. + +%================================================================ +\section{Operações instrumentadas em \texttt{OVERFLOW\_MODE}} + +\begin{table}[H] +\centering +\small +\begin{tabularx}{\textwidth}{@{}L{3.3cm} C{2.9cm} Y@{}} +\toprule +\textbf{Instrução LLVM} & \textbf{Instrumentada} & \textbf{Nota} \\ +\midrule +\code{Add}, \code{Sub}, \code{Mul} & \yes & +Apenas a variante \emph{com sinal}. O critério é a \emph{flag} \code{nsw} da +instrução: \src{isUnitAssignment = !binOp->hasNoSignedWrap()}, então só a +aritmética que o clang marcou como \code{nsw} é instrumentada. As versões +\code{uint} existem no código porém estão comentadas. \\ +\code{SDiv} & \yes & Gera \code{FALSE-OVERFLOW} (\code{INT\_MIN / -1}) ou \code{FALSE-DIVBYZERO}. \\ +\code{SRem} & \yes & Idem. \\ +\addlinespace +\code{UDiv}, \code{URem} & \no & Aritmética sem sinal não faz parte da propriedade \code{no-overflow}. \\ +\code{Shl}, \code{LShr}, \code{AShr} & \no & +O \code{case} de \code{Shl} existe no \code{switch} mas tem \textbf{corpo +vazio} --- deslocamento à esquerda com perda de bits \emph{não} é detectado. \\ +\code{And}, \code{Or}, \code{Xor} & \no & \emph{Case} vazio. \\ +\code{FAdd}, \code{FSub}, \code{FMul}, \code{FDiv}, \code{FRem} & \no & +\emph{No-op} deliberado: o SV-COMP define \code{no-overflow} apenas sobre tipos +inteiros. \\ +\bottomrule +\end{tabularx} +\caption{Fonte: \src{pass/OverflowPass.cpp:325--424}. São \textbf{cinco} as +instruções efetivamente instrumentadas. A propriedade é avaliada +sobre \emph{o tipo resultante da operação}, conforme a definição do SV-COMP --- +ver o comentário em \src{OverflowPass.cpp:418} e +\src{pass/OperationsFunctions.hpp:63}.} +\end{table} + +%================================================================ +\section{Cobertura de CWEs} + +O repositório contém dois mapeamentos CWE${\rightarrow}$modo, ambos executáveis +e ambos versionados. Eles não são idênticos porque os benchmarks não são: o +CASTLE-C250 cobre CWEs de segurança mais amplas, e o Juliet cobre famílias de +memória e aritmética com muitas variantes por família. + +\subsection{Mapeamento consolidado} + +\begin{longtable}{@{\extracolsep{\fill}}l L{4.5cm} L{3.9cm} C{1.7cm} C{1.5cm}@{}} +\caption{União dos dois mapeamentos. \textbf{15 CWEs} distintos são +verificáveis. Fonte: \src{tests/castle/run\_castle\_evaluation.sh} +(\code{CWE\_MODE}) e \src{tests/juliet/run\_juliet\_evaluation.sh:108--126}. +\enquote{---} significa que o CWE não está naquele benchmark, não que seja +insuportado.}\label{tab:cwe}\\ +\toprule +\textbf{CWE} & \textbf{Descrição} & \textbf{Modo} & \textbf{CASTLE} & \textbf{Juliet} \\ +\midrule +\endfirsthead +\multicolumn{5}{@{}l}{\small\emph{(continuação da Tabela \thetable)}}\\ +\toprule +\textbf{CWE} & \textbf{Descrição} & \textbf{Modo} & \textbf{CASTLE} & \textbf{Juliet} \\ +\midrule +\endhead +\midrule +\multicolumn{5}{r@{}}{\small\emph{continua na próxima página}}\\ +\endfoot +\bottomrule +\endlastfoot +\multicolumn{5}{@{}l}{\emph{Segurança de memória --- \flag{memtrack}}}\\ +\midrule +121 & Stack-based buffer overflow & \flag{memtrack} & --- & \yes \\ +122 & Heap-based buffer overflow & \flag{memtrack} & --- & \yes \\ +125 & Out-of-bounds read & \flag{memtrack} & \yes & --- \\ +415 & Double free & \flag{memtrack} & \yes & \yes \\ +416 & Use after free & \flag{memtrack} & \yes & \yes \\ +476 & NULL pointer dereference & \flag{memtrack} & \yes & \yes \\ +761 & Free of pointer not at start of buffer & \flag{memtrack} & \yes & \yes \\ +787 & Out-of-bounds write & \flag{memtrack} & \yes & --- \\ +822 & Untrusted pointer dereference & \flag{memtrack} & \yes & --- \\ +843 & Type confusion (\emph{access of resource with incompatible type}) & \flag{memtrack} & \yes & --- \\ +\midrule +\multicolumn{5}{@{}l}{\emph{Aritmética --- \flag{check-overflow}}}\\ +\midrule +190 & Integer overflow / wraparound & \flag{check-overflow} & \yes & \yes \\ +191 & Integer underflow & \flag{check-overflow} & --- & \yes \\ +369 & Divide by zero & \flag{check-overflow} & \yes & \yes \\ +\midrule +\multicolumn{5}{@{}l}{\emph{Ciclo de vida de memória --- \flag{memcleanup-property}}}\\ +\midrule +401 & Missing release of memory (\emph{memory leak}) & \flag{memcleanup-property} & \yes & \yes \\ +\midrule +\multicolumn{5}{@{}l}{\emph{Assertivas --- \flag{check-asserts}}}\\ +\midrule +617 & Reachable assertion & \flag{check-asserts} & \yes & --- \\ +\end{longtable} + +\subsection{CWEs explicitamente fora de escopo} + +O runner do CASTLE declara treze CWEs como fora de escopo. Isso é uma decisão +deliberada e testada, não uma omissão: \src{test\_cwe\_mode\_mapping.sh} +\emph{exige} que todo CWE do benchmark esteja ou mapeado ou declarado fora de +escopo, justamente para que nada caia num modo degenerado em silêncio. + +\begin{table}[H] +\centering +\small +\begin{tabularx}{\textwidth}{@{}L{4.5cm} Y@{}} +\toprule +\textbf{CWEs} & \textbf{Motivo} \\ +\midrule +628, 674, 770, 835 & +Terminação e consumo de recurso (recursão descontrolada, alocação sem limite, +laço infinito). O Map2Check não implementa a propriedade de terminação. \\ +\addlinespace +22, 78, 89, 134 & +Injeção e uso indevido de dados externos (\emph{path traversal}, injeção de +comando/SQL, \emph{format string}). Exigem modelo de \emph{taint}, ausente. \\ +\addlinespace +253, 327, 362, 522, 798 & +Verificação incorreta de retorno, criptografia fraca, condição de corrida, +credenciais desprotegidas/embutidas. Nenhuma é expressável como uma das cinco +propriedades implementadas. \\ +\bottomrule +\end{tabularx} +\caption{Fonte: \src{run\_castle\_evaluation.sh:49} +(\code{OUT\_OF\_SCOPE\_CWES}).} +\end{table} + +\subsection{Cobertura no modo WebAssembly} + +Com \flag{wasm} a entrada é um binário \code{.wasm} elevado a C via +\code{wasm2c} (WABT $\geq$ 1.0.41) e daí a LLVM-IR. A análise é +\emph{agnóstica à linguagem-fonte}: instrumenta a \emph{linear memory} e as +chamadas \code{wasm\_rt\_*}, comuns a todo módulo elevado. O modo é forçado +para \code{MEMTRACK\_MODE}. + +\begin{table}[H] +\centering +\small +\begin{tabularx}{\textwidth}{@{}Y L{3.6cm} C{2.2cm}@{}} +\toprule +\textbf{Propriedade} & \textbf{CWEs de exemplo} & \textbf{Estado} \\ +\midrule +Acesso fora dos limites da \emph{linear memory}\newline +{\footnotesize (reportado como \code{FALSE-OVERFLOW}, não \code{FALSE-DEREF})} +& 121, 122, 124, 126, 127 & \yes \\ +Overflow aritmético & 190 & \yes \\ +Alcançabilidade de função-alvo/erro & --- & \yes \\ +\emph{Leak} / \emph{use-after-free} / \emph{double free} & 401, 416, 415 & \no \\ +\bottomrule +\end{tabularx} +\caption{Fonte: \src{README.md:92--99}. A última linha é trabalho futuro por uma +razão estrutural: no código elevado, o alocador da linguagem-fonte é compilado +\emph{dentro} da linear memory, então as chamadas \code{malloc}/\code{free} não +existem no IR. Rastrear memória ali exigiria uma convenção de exportação ou +heurística de detecção de alocador.} +\end{table} + +%================================================================ +\section{Eixos ortogonais} + +Não são propriedades, mas multiplicam a matriz de execução e precisam ser +fixados em qualquer comparação para que ela seja justa. + +\begin{table}[H] +\centering +\small +\begin{tabularx}{\textwidth}{@{}L{4.4cm} Y@{}} +\toprule +\textbf{Eixo} & \textbf{Valores} \\ +\midrule +Gerador de \emph{nondet} & \code{fuzzer} (LibFuzzer), \code{symex} (KLEE), nenhum \\ +Solucionador SMT & \code{z3} (padrão) e \code{stp} passam direto ao KLEE; +\code{btor} e \code{yices2} são roteados por \code{metasmt} e \textbf{não +funcionam} na imagem de referência (ver Seção~\ref{sec:limitacoes}, item~9) \\ +Entrada & C / \code{.i} / \code{.bc}; ou \code{.wasm} via \flag{wasm} \\ +Função de entrada & \flag{entry-function} (padrão \code{main}) \\ +Modificadores & \flag{slice}, \flag{seed-exchange}, \flag{add-invariants}, \flag{btree} \\ +Saídas & \flag{generate-witness}, \flag{generate-test-suite}, \flag{generate-testcase}, \flag{print-counter} \\ +\bottomrule +\end{tabularx} +\caption{Fonte: \src{map2check.cpp:719--766}.} +\end{table} + +\paragraph{Funções \emph{nondet} reconhecidas (16).} +\code{\_\_VERIFIER\_nondet\_} seguido de: +\code{int}, \code{uint}, \code{unsigned}, \code{char}, \code{uchar}, +\code{pchar}, \code{short}, \code{ushort}, \code{long}, \code{ulong}, +\code{bool}, \code{pointer}, \code{size\_t}, \code{loff\_t}, +\code{sector\_t}, \code{double} +(\src{pass/NonDetPass.cpp:155--171}). Além disso, +\code{\_\_VERIFIER\_assume} e \code{assume\_abort\_if\_not} são reescritos como +poda de caminho em vez de \code{abort()} +(\src{NonDetPass.cpp:33--99}) --- sem isso, uma suposição falhando deixava um +\code{abort.err} indistinguível de uma violação real. + +\paragraph{Códigos de saída.} +\code{0} sucesso; \code{1} erro de linha de comando; \code{3} a opção é válida +mas esta compilação não tem a capacidade (é o caso de \flag{add-invariants} +sem \code{-DENABLE\_CLAM=ON}); \code{4} o veredicto divergiu de +\flag{expected-result}. O código \code{4} substituiu um \code{abort()}, que +fazia o BenchExec ler \enquote{resposta errada} como \enquote{ferramenta +quebrada} (\src{map2check.cpp:47--60}). + +%================================================================ +\section{Limitações conhecidas} +\label{sec:limitacoes} + +Registradas aqui porque uma comparação que as ignore mede a coisa errada. + +\begin{enumerate}[leftmargin=*,itemsep=3pt] + \item \textbf{Overflow sem sinal não é instrumentado.} As variantes + \code{uint} de \code{Add}/\code{Sub}/\code{Mul} estão no código, porém + comentadas. Isso está alinhado com a definição do SV-COMP, mas diverge + do que uma ferramenta genérica de análise poderia reportar. + \item \textbf{Ponto flutuante é \emph{no-op} deliberado.} + \code{FAdd}/\code{FSub}/\code{FMul}/\code{FDiv}/\code{FRem} não geram + veredicto. + \item \textbf{Deslocamento à esquerda não é checado.} O \code{case} de + \code{Shl} em \src{OverflowPass.cpp:395} tem corpo vazio, como + \code{LShr}, \code{AShr}, \code{And}, \code{Or} e \code{Xor}. Um + \code{x << n} que perde bits significativos passa como \emph{TRUE}. + \item \textbf{Divisão por zero não tem flag própria} --- só é alcançada via + \flag{check-overflow}. + \item \textbf{Três veredictos geram uma \emph{witness} de corretude apesar de + serem violações.} O \code{switch} de + \src{witness/graph.cpp:208--237} tem \code{case} para + \code{FALSE-FREE}, \code{FALSE-DEREF}, \code{FALSE-MEMTRACK}, + \code{TARGET-REACHED} e \code{FALSE-OVERFLOW}. \code{ASSERT}, + \code{FALSE-MEMCLEANUP} e \code{FALSE-DIVBYZERO} caem no + \code{default}, que constrói um \code{CorrectnessWitnessGraph} --- e, + sem \code{spectTrue}, o rotula com a especificação \code{MEMSAFETY}. + Afeta apenas execuções com \flag{generate-witness}; o veredicto + impresso e o código de saída continuam corretos. + \item \textbf{Alcançabilidade com alvo \code{main} é degenerada.} O + \code{TargetPass} instrumenta \emph{sítios de chamada} cuja função + chamada tem o nome dado; um programa nunca chama o próprio \code{main}. + Na baseline v6, 98 de 217 execuções passaram por esse modo e produziram + zero \code{FALSE} em 59 programas sabidamente vulneráveis. O teste + \src{test\_cwe\_mode\_mapping.sh} hoje proíbe esse mapeamento. + \item \textbf{Invariantes (Clam) são \emph{opt-in}.} Um invariante não-sólido + produz um \code{TRUE} errado em vez de um erro, o que é a falha mais + cara possível --- por isso exige \code{-DENABLE\_CLAM=ON} \emph{e} o + driver instalado. + \item \textbf{\emph{Slicing}, \emph{seed-exchange} e WASM rodam nos defaults} + da biblioteca; estão integrados, não ajustados. Qualquer número medido + sobre eles reflete a configuração padrão, não um limite da técnica. + \item \textbf{Dois dos quatro solucionadores não existem no build.} A CLI + aceita \code{z3}, \code{stp}, \code{btor} e \code{yices2} + (\src{map2check.cpp:804}), mas \code{btor} e \code{yices2} são + entregues ao KLEE como \code{-{}-solver-backend=metasmt} + (\src{caller.cpp:748--758}) e o \code{Dockerfile.dev} compila o KLEE + apenas com \code{ENABLE\_SOLVER\_Z3} e \code{ENABLE\_SOLVER\_STP} --- + sem metaSMT, sem Boolector, sem Yices. Passar um deles é aceito na + linha de comando e falha na execução. + \item \textbf{O veredicto de overflow é gravado como \code{OVERFLOW}, não + \code{FALSE-OVERFLOW}.} \src{PropertyGenerator.c:97} escreve a string + \code{OVERFLOW} em \code{map2check\_property}, e é isso que + \src{tools.cpp:228} lê de volta. \code{FALSE-OVERFLOW} é o nome do + valor do \emph{enum}, não o texto no arquivo: um harness que procure + \code{FALSE-OVERFLOW} não casa com nada. + \item \textbf{\code{UNKNOWN} nunca é gravado, e o arquivo alternativo tem o + nome errado.} O \code{switch} de \src{PropertyGenerator.c} tem + \code{case UNKNOWN:}, mas as duas únicas chamadas + \code{write\_property(UNKNOWN, ...)} estão comentadas + (\src{AnalysisModeMemtrack.c:308}, + \src{AnalysisModeMemcleanup.c:298}) --- é código morto, do mesmo tipo + do \code{case} de \code{Shl}. O runtime usa + \code{write\_property\_unknown()}, que escreve num arquivo à parte + chamado \code{map2check\_property\_\_unknown} (dois sublinhados, + \src{PropertyGenerator.c:16}); o frontend abre + \code{map2check\_property\_unknown} (um sublinhado, + \src{tools.cpp:114}). Os dois nomes não coincidem, então esse arquivo + também nunca é lido. O tool ainda \emph{reporta} + \code{VERIFICATION UNKNOWN}, mas por outras rotas --- o inicializador + do campo (\src{tools.hpp:136}), o \code{map2check\_property} ausente ou + ilegível (\src{tools.cpp:102,252}) e o próprio frontend em caso de + estouro de tempo (\src{map2check.cpp:581,585}). O que não existe é o + caminho pelo qual o \emph{runtime} declararia indecisão. + \item \textbf{KLEE: \flag{max-time} exige segundos inteiros.} Um valor + fracionário encerra a execução em silêncio. +\end{enumerate} + +%================================================================ +\section{Resumo quantitativo} + +\begin{table}[H] +\centering +\small +\begin{tabularx}{\textwidth}{@{}Y c@{}} +\toprule +\textbf{Dimensão} & \textbf{Total} \\ +\midrule +Modos de verificação implementados & 6 \\ +\quad dos quais checam uma propriedade & 5 \\ +Valores do \emph{enum} \code{ViolatedProperty} & 10 \\ +\quad realmente gravados em \code{map2check\_property} & 9 \\ +\quad que são violações concretas & 8 \\ +\quad que geram \emph{witness} de violação & 5 \\ +Tipos de especificação de \emph{witness} (\code{SpecificationType}) & 6 \\ +Instruções LLVM instrumentadas para overflow & 5 \\ +Funções \emph{nondet} reconhecidas & 16 \\ +CWEs verificáveis (união CASTLE $\cup$ Juliet) & 15 \\ +CWEs declarados fora de escopo & 13 \\ +Solucionadores SMT aceitos pela CLI & 4 \\ +\quad utilizáveis na imagem de referência (Z3, STP) & 2 \\ +Geradores de entrada selecionáveis (\flag{nondet-generator}) & 2 \\ +\bottomrule +\end{tabularx} +\end{table} + +\end{document} diff --git a/docs/Map2Check-WASM-Transformacao-Formal.pdf b/docs/Map2Check-WASM-Transformacao-Formal.pdf new file mode 100644 index 0000000000000000000000000000000000000000..d43e1181cdefa3fecb0097872aa9a0c5bc866b74 GIT binary patch literal 572196 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

m{hSL34`WS$(2 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

Q)j?Z_8He^cw3 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Ⓢ5R>YlZh4Q=Ym8pn#fufWh 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

DL0y$5GwpJbgE!>>+ptXqUuNFP_bLpcbgo;%>~ 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�ZRT0_2%U)Y}GaAYQb&1PX2s#)4NKAT-=(r5 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

{m%a95l^j_O9e)hbf#6Y45?@>txV3m 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 LLVM-IR no Map2Check +% Compilar no Overleaf com pdfLaTeX. Sem dependencias fora do TeX Live padrao. +% +\documentclass[11pt,a4paper]{article} + +\usepackage[T1]{fontenc} +\usepackage[utf8]{inputenc} +\usepackage[brazil]{babel} +\usepackage{lmodern} +\usepackage{microtype} + +% Caminhos longos em \texttt nao quebram; isto evita que estourem a margem +% sem precisar de \sloppy global. +\setlength{\emergencystretch}{3.5em} + +\usepackage[margin=2.8cm]{geometry} +\usepackage{amsmath,amssymb,amsthm} +\usepackage{mathtools} +\usepackage{booktabs} +\usepackage{tabularx} +\usepackage{listings} +\usepackage{xcolor} +\usepackage{enumitem} +\usepackage[hidelinks]{hyperref} +\urlstyle{tt} % \path{} para caminhos longos +\def\UrlBreaks{\do\/\do\.\do\-\do\_\do\{\do\}} + +%---------------------------------------------------------------- ambientes +\theoremstyle{definition} +\newtheorem{hipotese}{Hipótese} +\newtheorem{proposicao}{Proposição} +\renewcommand{\qedsymbol}{$\blacksquare$} + +%---------------------------------------------------------------- macros +\newcommand{\sem}[1]{[\![#1]\!]} % colchetes semanticos, sem stmaryrd +\newcommand{\Safe}{\mathrm{Safe}} +\newcommand{\Reach}{\mathit{Reach}} +\newcommand{\wasm}{\mathrm{wasm}} +\newcommand{\lin}{\mathrm{lin}} +\newcommand{\code}[1]{\texttt{#1}} + +% Regra de inferencia, sem dependencia externa: premissas sobre a barra, +% conclusao embaixo, nome da regra a direita. +\newcommand{\rulelabel}[1]{\textnormal{\textsc{\footnotesize #1}}} + +%---------------------------------------------------------------- listings +\definecolor{cmtgray}{gray}{0.42} +\lstset{ + basicstyle=\ttfamily\small, + commentstyle=\color{cmtgray}\itshape, + keywordstyle=\bfseries, + showstringspaces=false, + columns=fullflexible, + breaklines=true, + frame=leftline, + framesep=8pt, + xleftmargin=10pt, + captionpos=b +} + +%---------------------------------------------------------------- titulo +\title{\textbf{A transformação WebAssembly $\rightarrow$ LLVM-IR no Map2Check}\\[0.4em] + \large Formalização da cadeia de \emph{lifting}, e o que ela\\ + demonstravelmente preserva e perde} +\author{Projeto Map2Check} +\date{4 de setembro de 2026} + +\begin{document} +\sloppy % prefere espacamento folgado a texto invadindo a margem +\maketitle + +\begin{abstract} +\noindent +Formalizamos a cadeia de transformações que leva um binário \code{.wasm} até o +programa instrumentado que o Map2Check analisa, decompondo-a em cinco funções e +enunciando explicitamente as duas hipóteses de correção sobre as quais ela +repousa. Dois resultados decorrem da formalização. A cadeia é \emph{sound} para +as classes de \emph{trap} cujo teste o código gerado efetivamente contém, um +subconjunto próprio das dez do WebAssembly, e dependente do módulo, pois o teste +de limites da memória linear é elidido na configuração de compilação empregada, +e isso já vale na implementação atual, sem vir sendo reivindicado. E a cadeia +é incompleta para segurança de memória intra-\emph{sandbox}, precisamente a +classe de vulnerabilidade declarada como alvo do projeto, por uma razão +estrutural: a memória linear chega ao verificador como uma única alocação de +\emph{heap}, de modo que a sobrescrita de um objeto vizinho não é observável por +predicado algum em jogo. Damos o contraexemplo por construção, verificado por +execução, e derivamos do enunciado o requisito exato que uma modelagem de memória +linear teria de satisfazer, requisito que, como se verá, está parcialmente +implementado e inoperante. +\end{abstract} + +\tableofcontents +\bigskip + +%================================================================ +\section{Objetivo e escopo} + +Este documento descreve, passo a passo e por meio de uma +formalização explícita, a cadeia de transformações que leva um binário +\code{.wasm} até o programa instrumentado analisado pelo Map2Check. + +O objetivo não é apenas documentar a implementação, mas tornar +\textbf{preciso} o que a cadeia preserva e o que ela perde. Essa distinção é +fundamental para determinar quais resultados experimentais podem ser atribuídos +ao Map2Check e quais não podem. Duas proposições emergem dessa formalização, e +ambas delimitam o que pode ser afirmado sobre a frente WASM. + +A semântica de referência do WebAssembly é a de Haas et al., \emph{Bringing the +Web up to Speed with WebAssembly} (PLDI 2017), e a especificação normativa dela +derivada. O tradutor é o \code{wasm2c} do WABT 1.0.41. Todas as afirmações sobre +o código gerado foram verificadas na saída real do WABT na imagem +\path{ghcr.io/hbgit/map2check-dev}, não inferidas da documentação. + +Referências de implementação: \path{modules/frontend/wasm_lifter.{hpp,cpp}}, +\path{modules/frontend/caller.cpp} (função \code{generateWasmWrapperStatic}) e +\path{modules/frontend/map2check.cpp} (bloco \code{args.wasmMode}). + +%================================================================ +\section{Sumário dos resultados} + +Para o leitor que precisa apenas da conclusão, antes do desenvolvimento. + +\paragraph{Proposição~\ref{prop:sound}, a cadeia é \emph{sound} para os +\emph{traps} cujo teste o código gerado contém.} +O \code{wasm2c} traduz as condições laterais das regras de redução em testes +explícitos, e o \emph{stub} de \code{wasm\_rt\_trap} do Map2Check encaminha o +resultado a \code{map2check\_error()}, o mesmo sinal que o modo de +alcançabilidade já consome. Divisão por zero, \emph{overflow} de divisão, +\code{unreachable} e as demais classes cujo teste é emitido incondicionalmente +\textbf{são detectáveis hoje}, sem trabalho adicional. Este resultado existe e +não estava sendo alegado. + +Duas ressalvas o delimitam, e nenhuma é secundária. Primeira: para memórias +lineares de 32 bits com página padrão, e na configuração de compilação que o +Map2Check emprega, o teste de limites \textbf{não é emitido}, +o WABT o substitui por páginas-guarda (Seção~\ref{sec:guardpages}). Segunda: a +proposição é de \emph{soundness}, isto é, de ausência de falso positivo; +detectabilidade é a recíproca, e depende ainda de o \emph{harness} alcançar o +teste (Seção~\ref{sec:harness}). + +\paragraph{Uma incompatibilidade entre compilação e \emph{runtime}.} +O código gerado omite a verificação de limites porque supõe páginas-guarda, +enquanto o \emph{runtime} que o Map2Check efetivamente liga aloca a memória +linear com \code{calloc}, que não as tem (Seção~\ref{sec:mismatch}). O acesso fora +dos limites não é detido por teste emitido nem por hardware. + +\paragraph{Proposição~\ref{prop:incompleta}, a cadeia é incompleta para +segurança de memória intra-\emph{sandbox}.} +Esta é justamente a classe de vulnerabilidade declarada como alvo principal do +projeto. A memória linear chega ao verificador como \textbf{uma única alocação}, +de modo que a sobrescrita de um objeto vizinho \emph{dentro} dela não é observável +pelo predicado de segurança do Map2Check. A demonstração é por construção, o +contraexemplo tem quatro linhas de C, e foi \textbf{confirmada por execução}. A +causa é estrutural, não um defeito de implementação. + +\paragraph{O mapa de objetos existe, e não dispara.} +O \code{MemoryTrackPass} tem um +caminho WASM dedicado que rastreia alocações \emph{por deslocamento dentro da +memória linear}, em substância, o mapa de objetos que a Seção~\ref{sec:mapaO} +descreve como o que falta. Ele não dispara: o casamento de padrão exige uma forma +de instrução que o IR do \code{wasm2c} não produz +(Seção~\ref{sec:mortocodigo}). Construir esse mapa deixa, portanto, de ser +pesquisa e passa a ser depuração. + +\paragraph{Consequência imediata.} +A validação existente em \path{docs/reports/wasm-juliet-validation.csv} não separa +os mecanismos possíveis de detecção, e a Proposição~\ref{prop:incompleta} mostra +que um deles é impossível no caso intra-memória. Enquanto essa separação não for +feita, os dados são consistentes com a hipótese de que \textbf{a tradução +encontrou os defeitos e o Map2Check apenas reportou o sinal resultante} +(Seção~\ref{sec:atribuicao}). + +%================================================================ +\section{Notação} + +Esta seção fixa apenas a notação de base. \textbf{Todo símbolo empregado no +documento, incluindo os introduzidos adiante, está reunido, com leitura em +palavras e definição, no glossário do Apêndice~\ref{ap:glossario}.} + +Seja $\mathbb{B} = \{0,\dots,255\}$ o conjunto dos bytes. Escrevemos $[a,b)$ para +o intervalo inteiro semiaberto. Para uma função parcial $f$, $\operatorname{dom}(f)$ +é seu domínio. + +O tamanho de página do WebAssembly é a constante +\[ + P = 65\,536 . +\] + +Os tipos de valor são +$\mathit{valtype} = \{\mathtt{i32}, \mathtt{i64}, \mathtt{f32}, \mathtt{f64}\}$, +e $\mathit{Val}$ denota o conjunto dos valores correspondentes. + +%================================================================ +\section{Passo 0, o objeto de entrada} + +Um módulo WebAssembly é a tupla +\[ + M = (\mathit{types},\ \mathit{funcs},\ \mathit{tables},\ \mathit{mems},\ + \mathit{globals},\ \mathit{elem},\ \mathit{data},\ \mathit{start},\ + \mathit{imports},\ \mathit{exports}). +\] + +Três componentes importam para o que segue. + +\begin{itemize}[leftmargin=1.4em] + \item $\mathit{mems}$, que na versão 1.0 do WebAssembly tem + \textbf{cardinalidade no máximo 1}. Esta é a hipótese estrutural que + sustenta todo o resto do documento: existe uma única memória linear por + módulo. + \item $\mathit{exports} : \mathit{Name} \rightharpoonup \mathit{ExternIdx}$, + que dá as funções visíveis de fora do módulo. + \item $\mathit{imports}$, que dá as funções fornecidas pelo \emph{host}. Em + contexto de IoT, é por aqui que passam acesso a sensores, rede e banco de + dados. +\end{itemize} + +O \textbf{estado de execução} é o par $(s,F)$, com \emph{store} +\[ + s = (\mathit{funcs},\ \mathit{tables},\ \mathit{mems},\ \mathit{globals}) +\] +e \emph{frame} $F$ contendo os locais e a instância corrente. Uma configuração é +$s; F; e^{*}$, onde $e^{*}$ é a pilha de instruções, e a semântica é dada por uma +relação de redução em passos pequenos +\[ + s; F; e^{*} \hookrightarrow s'; F'; e'^{*} . +\] +O termo distinguido $\mathtt{trap}$ é absorvente: nenhuma regra o reduz. + +\subsection{A memória linear} + +Uma instância de memória linear é definida como +\[ + \mu = (d,\ \ell), \qquad d : [0,\ell) \to \mathbb{B}, \qquad \ell = n \cdot P +\] +para algum $n \in \mathbb{N}$. + +Isto é: \textbf{um vetor plano de bytes, contíguo, +endereçado por inteiros de 32 bits}, sem qualquer estrutura interna. Não há +noção de objeto, de alocação ou de fronteira entre variáveis. Este fato é +central para tudo o que segue e merece ser explicitado: a memória linear não é +um espaço de endereçamento que contém objetos distintos; \emph{é um único +objeto}. + +\paragraph{Os símbolos da instrução de acesso.} +A regra abaixo emprega seis identificadores que convém fixar antes de lê-la, pois +reaparecem em todo o documento: + +\begin{description}[leftmargin=4.2em,style=nextline,font=\normalfont\itshape] + \item[$t$] o tipo de valor lido ou escrito, elemento de $\mathit{valtype}$; + aparece como prefixo da instrução, em $t.\mathtt{load}$. + \item[$N$] a \textbf{largura do acesso em bits}, $8$, $16$, $32$ ou $64$. + Logo $N/8$ é o número de bytes tocados pela instrução, e é sempre + nessa forma que $N$ comparece. + \item[$i$] o \textbf{índice dinâmico}, valor \code{i32} retirado do topo da + pilha de operandos. É a parte do endereço que depende da execução. + \item[$\mathit{offset}$] o \textbf{deslocamento estático}, constante imediata + codificada na própria instrução. + \item[$ea$] o \textbf{endereço efetivo} (\emph{effective address}), definido + como $ea = i + \mathit{offset}$. É o índice, em bytes, dentro da + memória linear, a partir do qual o acesso ocorre. Não é um ponteiro + do processo: é um inteiro em $[0,\ell)$. + \item[$c$] o valor resultante da leitura, do tipo $t$. +\end{description} + +\noindent +O acesso, portanto, toca os bytes de índice $ea$ até $ea + N/8 - 1$, e a questão +de segurança é apenas se esse intervalo cabe em $[0,\ell)$. + +A regra de leitura, +na forma relevante para a análise, é + +\begin{equation*} + \frac{\;\; ea = i + \mathit{offset} \qquad ea + N/8 \le \ell \;\;} + {\;\; s;\ F;\ (\mathtt{i32.const}\ i)\ (t.\mathtt{load}\ N\ \mathit{offset}) + \ \hookrightarrow\ s;\ F;\ (t.\mathtt{const}\ c) \;\;} + \tag*{\rulelabel{load}} +\end{equation*} + +\noindent +e, quando a condição lateral falha, + +\begin{equation*} + \frac{\;\; ea + N/8 > \ell \;\;} + {\;\; s;\ F;\ (\mathtt{i32.const}\ i)\ (t.\mathtt{load}\ N\ \mathit{offset}) + \ \hookrightarrow\ s;\ F;\ \mathtt{trap} \;\;} + \tag*{\rulelabel{load-trap}} +\end{equation*} + +A regra de escrita é simétrica: a mesma condição lateral governa +$t.\mathtt{store}$, que consome um valor adicional da pilha e não devolve +resultado. O contraexemplo da Seção~\ref{sec:prop2} é uma escrita, e é a essa +regra que ele apela. + +É importante observar a forma da +condição lateral, +\[ + ea + N/8 \le \ell. +\] +Essa mesma condição reaparece, na forma de código C, na seção seguinte. + +%================================================================ +\section{Passo 1, $\tau$: o tradutor \code{wasm2c}} + +Definimos +\[ + \tau : \mathit{Wasm} \longrightarrow \mathit{C} +\] +como a função implementada pelo \code{wasm2c} do WABT 1.0.41, invocada em +\code{WasmLifter::runWasm2c} por + +\begin{lstlisting} +wasm2c .wasm -o .c +\end{lstlisting} + +\noindent +produzindo o par de arquivos \code{.c} e \code{.h}. + +\subsection{Representação do estado} + +$\tau$ realiza o \emph{store} $s$ como uma \textbf{estrutura de instância} $I$. A +memória linear $\mu = (d,\ell)$ torna-se o registro \code{wasm\_rt\_memory\_t}, +cujos campos relevantes são +\[ + \code{data} \mapsto d, \qquad \code{size} \mapsto \ell, +\] +com \code{data} obtido de uma \textbf{única} chamada de alocação, em +\code{wasm\_rt\_allocate\_memory}. Registre-se o quantificador: \emph{uma} +alocação, para \emph{toda} a memória do módulo. É desse fato que a Proposição~2 +decorre. + +Cada função $f$ do módulo torna-se uma função C +\[ + \tau(f) : \code{w2c\_}\langle \mathit{mod} \rangle \code{*} + \times \overline{\mathit{Val}} \longrightarrow \mathit{Val}, +\] +nomeada segundo o esquema \code{w2c\_\_}. O primeiro parâmetro é +o ponteiro de instância: é assim que o estado global do WASM se torna estado +explícito de primeira classe no C. + +\subsection{A condição lateral torna-se código} + +Eis o ponto técnico central. $\tau$ \textbf{compila a condição lateral da regra de +redução em uma verificação dinâmica explícita}. No C gerado, verificado na saída +real do WABT 1.0.41: + +\begin{lstlisting}[language=C] +#define MEM_ADDR(mem, addr, n) &((mem)->data[addr]) + +#define RANGE_CHECK(mem, offset, len) \ + do { \ + uint64_t res; \ + if (UNLIKELY(add_overflow(offset, len, &res))) \ + TRAP(OOB); \ + if (UNLIKELY(res > (mem)->size)) \ + TRAP(OOB); \ + } while (0); + +#define TRAP(x) (wasm_rt_trap(WASM_RT_TRAP_##x), 0) +\end{lstlisting} + +Comparando com a regra \textsc{load}: \code{res > mem->size} é exatamente a +negação de $ea + N/8 \le \ell$, e \code{TRAP(OOB)} é exatamente $\mathtt{trap}$. +A tradução é literal, \emph{onde este macro é usado}, ressalva que a +Seção~\ref{sec:guardpages} torna decisiva. + +Definindo então o predicado +\[ + \Safe_{\wasm}(\mu,\ ea,\ N) \;\equiv\; ea + N/8 \le \ell, +\] +o programa C avalia $\Safe_{\wasm}$ em tempo de execução antes de cada acesso, +desviando para \code{wasm\_rt\_trap} quando ele é falso, \textbf{sob uma das +duas estratégias de verificação de limites que o WABT oferece}. A configuração +efetivamente empregada pelo Map2Check não é essa, e a subseção seguinte trata do +ponto. + +\subsection{Ressalva decisiva: o \emph{bounds check} é condicional} +\label{sec:guardpages} + +O \code{wasm-rt.h} seleciona a estratégia em tempo de compilação: em plataformas +de 64 bits com alocação por \code{mmap}, x86-64, portanto, o padrão é +\code{WASM\_RT\_MEMCHECK\_GUARD\_PAGES}; caso contrário, +\code{WASM\_RT\_MEMCHECK\_BOUNDS\_CHECK}. O acesso a memórias lineares de 32 bits +com página padrão, que é o caso comum, não usa \code{RANGE\_CHECK}, e sim o macro +acelerado \code{MEMCHECK\_DEFAULT32}: + +\begin{lstlisting}[language=C] +#if WASM_RT_MEMCHECK_GUARD_PAGES +#define MEMCHECK_DEFAULT32(mem, a, t) WASM_RT_CHECK_BASE(mem); +#else +#define MEMCHECK_DEFAULT32(mem, a, t) \ + WASM_RT_CHECK_BASE(mem); \ + if (UNLIKELY(a + (uint64_t)sizeof(t) > mem->size)) \ + TRAP(OOB); +#endif +\end{lstlisting} + +Sob \code{GUARD\_PAGES} resta apenas \code{WASM\_RT\_CHECK\_BASE}, que é vazio +exceto na combinação de modo \emph{segue} com verificações de sanidade: +\textbf{nenhuma comparação é emitida}, e a detecção de acesso fora dos limites é +delegada a páginas não mapeadas, isto é, ao hardware. + +\code{WasmLifter::runClang} invoca o compilador sem qualquer \code{-D}, sobre um +\emph{host} x86-64, de modo que o caminho tomado é o primeiro. Isso é verificável +no LLVM-IR emitido: a função de escrita gerada contém apenas +\code{call void @i32\_store\_unchecked}, ao passo que, acrescentando +\code{-DWASM\_RT\_MEMCHECK\_BOUNDS\_CHECK=1} à mesma compilação, ela passa a +conter \code{icmp ugt} contra \code{mem->size} seguido de +\code{call void @wasm\_rt\_trap(i32 1)}. + +Portanto, na configuração de compilação realmente empregada, +\textbf{$\Safe_{\wasm}$ não é avaliado para acessos à memória linear padrão}. A +condição lateral não é traduzida em código: é substituída por uma suposição sobre +o \emph{layout} de endereçamento do processo, suposição que a +Seção~\ref{sec:mismatch} mostra não se sustentar aqui. + +\paragraph{Duas dependências dessa elisão.} +A escolha depende do módulo e da plataforma, e convém não generalizá-la. Se o +módulo tem \textbf{segmentos de dados}, o \code{RANGE\_CHECK} da inicialização de +memória é emitido de todo modo, e chamadas com o código \code{OOB} aparecem no IR +mesmo sem \code{-D}. E a suposição de \emph{host} x86-64 é implícita: o campo +\code{targetTriple} da configuração do \emph{lifter} é declarado e nunca +consumido. + +Nem toda classe de \emph{trap} de $\mathcal{T}$ tem, necessariamente, um teste +correspondente no código gerado a partir de um dado módulo. Duas causas +independentes reduzem o conjunto: o módulo pode não conter a instrução que +originaria o teste, um módulo sem divisão inteira não gera teste de divisão +por zero, e a estratégia de verificação de limites escolhida em tempo de +compilação decide se o teste de acesso é emitido ou delegado a páginas-guarda +(Seção~\ref{sec:guardpages}). Escrevemos por isso +\[ + \mathcal{T}_{\mathrm{emit}}(M) \;\subseteq\; \mathcal{T} +\] +para o subconjunto das classes cujo teste o código gerado a partir de $M$ +efetivamente contém, isto é, para as quais há uma chamada a +\code{wasm\_rt\_trap} no LLVM-IR emitido. Abrevia-se +$\mathcal{T}_{\mathrm{emit}}$ quando $M$ está claro pelo contexto. + +O conjunto de \emph{traps} que o WABT distingue é +\[ + \mathcal{T} = + \left\{ + \begin{array}{l} + \mathtt{OOB},\quad \mathtt{INT\_OVERFLOW},\quad \mathtt{DIV\_BY\_ZERO},\quad + \mathtt{INVALID\_CONVERSION},\\[2pt] + \mathtt{UNREACHABLE},\quad \mathtt{CALL\_INDIRECT},\quad \mathtt{NULL\_REF},\\[2pt] + \mathtt{UNCAUGHT\_EXCEPTION},\quad \mathtt{UNALIGNED},\quad \mathtt{EXHAUSTION} + \end{array} + \right\} . +\] + +\subsection{Correção de \texorpdfstring{$\tau$}{tau}} + +Seja $\approx$ a relação entre configurações WASM e estados C induzida pela +representação acima: igualdade byte a byte da memória, igualdade de valor para +globais e locais. + +\begin{hipotese}[correção do \code{wasm2c}]\label{hip:wasm2c} +Para todo módulo $M$ bem tipado e toda execução, $\tau$ é uma simulação forte +módulo passos administrativos: se $s;F;e^{*} \approx \sigma$ e +$s;F;e^{*} \hookrightarrow s';F';e'^{*}$, então existe $\sigma'$ com +$\sigma \to^{+} \sigma'$ e $s';F';e'^{*} \approx \sigma'$; e +$e^{*} = \mathtt{trap}$ se e somente se $\sigma$ chama \code{wasm\_rt\_trap} +\textbf{ou} o \emph{runtime} sinaliza o \emph{trap} por outro meio. +\end{hipotese} + +A cláusula final não é ornamental, e a Seção~\ref{sec:guardpages} mostra por quê. +Sob a estratégia de páginas-guarda, um \emph{trap} de acesso fora dos limites +corresponde a um programa C que \emph{não} contém chamada a +\code{wasm\_rt\_trap}: quem o sinaliza é o tratador de sinal instalado pelo +\emph{runtime}. Sem a cláusula, a equivalência seria falsa na configuração aqui +analisada. E como o Map2Check não liga esse \emph{runtime} +(Seção~\ref{sec:stubs}), o segundo disjunto não se realiza no \emph{pipeline} +real: é essa a razão de a Proposição~\ref{prop:sound} ser enunciada sobre +$\mathcal{T}_{\mathrm{emit}}$, e não sobre $\mathcal{T}$. + +Esta é uma hipótese, +\textbf{não um teorema demonstrado neste documento}. Assim como se assume a +correção do compilador Clang, assume-se aqui a correção do WABT. Explicitá-la é +importante por duas razões: toda a \emph{soundness} da cadeia depende dela, e +ela é falsificável. Uma divergência do \code{wasm2c}, por exemplo, apareceria +como uma diferença entre a execução do \code{.wasm} em um \emph{runtime} +conforme e a execução do C gerado. + +%================================================================ +\section{Passo 2, $\kappa$: Clang para LLVM-IR} +\label{sec:kappa} + +\[ + \kappa : \mathit{C} \longrightarrow \mathit{LLVM} +\] +implementada em \code{WasmLifter::runClang} e \code{WasmLifter::runClangEmitLLVM}: + +\begin{lstlisting} +clang-16 -c -emit-llvm -I -I .c -o .bc +clang-16 -S -emit-llvm -I -I .c -o .ll +\end{lstlisting} + +A emissão do \code{.ll} textual não é redundante: ele é a entrada de $\epsilon$, +o passo seguinte. + +\begin{hipotese}[correção do Clang]\label{hip:clang} +$\kappa$ preserva a semântica de programas C \textbf{livres de comportamento +indefinido}. +\end{hipotese} + +A ressalva é especialmente relevante neste contexto. O C emitido +pelo \code{wasm2c} é código gerado, não escrito manualmente, e emprega +construções que exigem atenção à fronteira entre o modelo operacional do +\code{wasm2c} e a semântica da linguagem C: aritmética de ponteiros sobre +\code{data}, \code{setjmp}/\code{sigsetjmp} para o mecanismo de \emph{trap} e o +qualificador \code{\_\_seg\_gs} quando o modo \emph{segue} está habilitado. Essa +fronteira não é auditada neste documento. + +%================================================================ +\section{Passo 3, $\epsilon$: extração do ponto de entrada} + +\[ + \epsilon : \mathit{LLVM}_{\text{texto}} \longrightarrow + \mathit{Name} \times \mathcal{P}(\mathit{Name}) +\] +implementada em \code{WasmLifter::extractMetadata}. Ela percorre o \code{.ll} +linha a linha com a expressão regular + +\begin{lstlisting} +define.*@w2c_([A-Za-z0-9_]+)\( +\end{lstlisting} + +\noindent +e devolve o par $(\eta, E)$: o ponto de entrada $\eta$, reconhecido pela presença +da subcadeia \code{\_0x5Fstart} em qualquer posição da linha, não pelo sufixo, +e o conjunto $E$ das demais funções assim casadas. + +Convém ser exato quanto a $E$, porque o texto natural engana: a expressão regular +casa igualmente \code{define internal}, de modo que $E$ contém \textbf{todas} as +funções \code{w2c\_} definidas, exportadas ou não. Num módulo WASI medido, $42$ +das $44$ definições são internas. + +Trata-se de +\textbf{análise sintática sobre texto, e não de análise do módulo LLVM}. Suas +condições de falha merecem ser explicitadas, pois não são meramente +hipotéticas: + +\begin{enumerate}[leftmargin=1.6em] + \item Se nenhuma função casa com \code{\_0x5Fstart}, o caso de um módulo + \emph{reactor}, sem \code{\_start}, que é a forma usual de um + \emph{handler} WASM de IoT, o código adota o valor padrão + \code{w2c\_\_start} e emite um aviso. Esse símbolo pode não existir. + \item Por construção, $E$ e $\eta$ são disjuntos. Logo um módulo cujo único + ponto de interesse são funções exportadas, de novo, o caso IoT, tem + $\eta$ mal definido. +\end{enumerate} + +Portanto, $\epsilon$ é total +como procedimento, mas \textbf{não é correta} para a classe de módulos que a +proposta de pesquisa declara como alvo. + +%================================================================ +\section{Passo 4, $\omega$: o \emph{harness}} + +O programa liftado não possui \code{main}. $\tau$ traduziu funções de módulo, e +nenhuma delas é ponto de entrada de um processo. Define-se então +\[ + \omega : \mathit{Name} \longrightarrow \mathit{LLVM} +\] +implementada em \code{Caller::generateWasmWrapperStatic}, que sintetiza +literalmente: + +\begin{lstlisting}[language=C] +int main() { + w2c_ instance; + wasm2c__instantiate(&instance, NULL); + (&instance); + wasm2c__free(&instance); + return 0; +} +\end{lstlisting} + +O resultado é então ligado ao +módulo liftado por +\[ + \Lambda_0 = \code{llvm-link}\bigl(\kappa(\tau(M)),\ \omega(\eta)\bigr). +\] + +\subsection{Um defeito de aridade no \emph{wrapper}} +\label{sec:aridade} + +O \emph{wrapper} emite a chamada de instanciação com \textbf{dois} argumentos, +\code{(\&instance, NULL)}. A assinatura que o \code{wasm2c} gera tem um parâmetro +para a instância e \textbf{um por módulo importado}: para um módulo sem +importações é \code{void wasm2c\_t\_instantiate(w2c\_t*)}, e a chamada com dois +argumentos é erro de compilação. O \emph{wrapper} está correto apenas para +módulos com exatamente uma importação, o caso dos binários WASI, o que explica +por que a validação existente compila. + +O que agrava o defeito é o seu silêncio: o valor de retorno de \code{system()} +não é verificado em \code{generateWasmWrapperStatic} nem na chamada de +\code{llvm-link} que a sucede, e esta escreve a saída \emph{sobre o próprio +arquivo de entrada}. O resultado é um bitcode sem \code{main}, ou em estado +indeterminado, produzido sem diagnóstico algum. + +\subsection{O que $\omega$ quantifica: nada} +\label{sec:harness} + +Formalmente, o módulo denota uma \textbf{família} de execuções, indexada pelos +argumentos das funções exportadas e pelo comportamento das importações: +\[ + \sem{M} : \overline{\mathit{Val}} \times \mathit{Host} \longrightarrow + \mathit{Outcome}. +\] + +O \emph{harness} atual não instancia essa família; ele simplesmente +a restringe ao caminho de execução do \code{\_start}. A chamada $\eta(\&I)$ é +nulária no que diz respeito aos argumentos do módulo: o único parâmetro +explícito é o ponteiro de instância, porque $\eta$ é o \code{\_start}, cuja +assinatura no WASM é $[\,] \rightarrow [\,]$. Nenhuma valoração $\nu$ para +argumentos de funções exportadas é escolhida, pois não há chamada a essas +funções no \emph{wrapper} atual. + +A consequência é precisa. Escrevendo $\Reach(q)$ para o conjunto de estados +alcançáveis de um programa $q$ (a letra $p$ fica reservada para ponteiros, na +Seção~\ref{sec:pi}): +\[ + \Reach(\Lambda_0) + \;=\; \bigcup_{h \in \mathit{Host}} \Reach\bigl(\sem{M}(\bot,\ h)\bigr) + \;\subseteq\; \bigcup_{\nu,\ h} \Reach\bigl(\sem{M}(\nu,\ h)\bigr), +\] +e a inclusão é \textbf{estrita} sempre que o módulo possui alguma função exportada +com aridade positiva. O símbolo $\bot$ não denota um valor: denota a ausência da +chamada. + +Duas consequências decorrem +disso, e ambas são relevantes. + +\paragraph{Para um módulo com \code{\_start}.} +Um programa compilado para WASI, que é o formato dos casos do Juliet na validação +existente. A entrada chega por \code{argv} ou por \code{stdin} \emph{dentro} do +\code{\_start}, e o \code{NonDetPass} pode amarrá-la ali. A cadeia funciona. Este +é o caso efetivamente medido até hoje. + +\paragraph{Para um módulo \emph{reactor}.} +O +\emph{handler} de IoT que a proposta declara como alvo, sem \code{\_start}, tem +seu comportamento concentrado nas funções exportadas em $E$. O \emph{wrapper} +atual não chama nenhuma delas. Combinado com a falha de $\epsilon$ descrita na +seção anterior, isso significa que \textbf{o alvo declarado da proposta não é +alcançável pela implementação atual}. A causa, porém, é mecânica: é necessário +gerar uma chamada para cada função exportada, utilizando +\code{\_\_VERIFIER\_nondet\_()} para cada parâmetro. + +O +tratamento das importações $h$ permanece como uma lacuna. Sem um modelo de +\emph{host}, as funções importadas permanecem como símbolos externos, e seu +comportamento efetivo não é especificado pela cadeia apresentada. A fase de +análise de \emph{taint} prevista na proposta, rastrear um dado controlado +até uma função importada, depende diretamente desse modelo ainda ausente. + +%================================================================ +\section{Passo 5, $\pi$: a instrumentação do Map2Check} +\label{sec:pi} + +A partir deste ponto, o pipeline é o mesmo utilizado +para as demais entradas LLVM-IR: o bitcode religado é submetido aos passes +convencionais do Map2Check. + +$\pi$ é a transformação de programa realizada pelos passes LLVM. Ela é um par +$(\pi_{\text{code}},\ \Sigma)$: instrumentação e \textbf{estado sombra}. No modo +\code{--memtrack}, $\Sigma$ mantém o conjunto das alocações vivas +\[ + \Sigma \subseteq + \bigl\{ (\mathit{base},\ \mathit{size},\ \mathit{alive}) \bigr\}, +\] +e $\pi_{\text{code}}$ insere, antes de cada acesso ao par $(p,n)$, a verificação +\[ + \Safe_{\mathrm{C}}(\Sigma,\ p,\ n) \;\equiv\; + \exists\, (b,z,\mathit{alive}) \in \Sigma :\; + \mathit{alive} \ \wedge\ b \le p \ \wedge\ p + n \le b + z . +\] + +A comparação com $\Safe_{\wasm}$ é o ponto central da análise: +\textbf{os dois predicados verificam propriedades diferentes}. As seções +seguintes caracterizam essa diferença e suas consequências. + +\subsection{O \emph{runtime} efetivo: os \emph{stubs} do Map2Check} +\label{sec:stubs} + +Um elemento ausente da descrição feita até aqui altera o modelo de execução. O +Map2Check \textbf{não liga o \emph{runtime} do WABT}: o \emph{library-backend} +fornece \path{modules/backend/library/lib/WasmRuntimeStubs.c}, que reimplementa a +interface \code{wasm\_rt\_*}. Três reimplementações são relevantes. + +\paragraph{Alocação.} +\code{wasm\_rt\_allocate\_memory} troca o \code{mmap} do WABT por um +\textbf{único \code{calloc}}, com a justificativa, registrada no arquivo, de +que o KLEE modela mal \code{mmap}. Isso confirma, de forma mais direta do que a +análise do WABT permitiria, a premissa da Proposição~\ref{prop:incompleta}: a +memória linear é uma alocação de \emph{heap} única. + +\paragraph{Sinalização de \emph{trap}.} +A implementação do WABT executa +\code{WASM\_RT\_LONGJMP(g\_wasm\_rt\_jmp\_buf, code)}, isto é, desvio não local +para um \emph{buffer} que só existe se o \emph{embedder} tiver estabelecido um +\code{wasm\_rt\_impl\_try}, o que o \emph{wrapper} não faz. O \emph{stub} +substitui esse mecanismo por chamada direta a \code{map2check\_error()}. +\textbf{É esse o canal pelo qual um \emph{trap} do WASM se torna violação +observável}, e não um \code{abort} genérico. O código do \emph{trap} é +descartado: todas as classes de $\mathcal{T}$ colapsam em um sinal indistinguível. + +\paragraph{Inicialização.} +O \code{wasm2c} emite \code{assert(wasm\_rt\_is\_initialized())} no início de +\code{instantiate}, e o \emph{wrapper} nunca chama \code{wasm\_rt\_init()}. Com o +\emph{runtime} do WABT isso abortaria antes de qualquer execução do módulo. O +\emph{stub} evita o problema declarando a \emph{flag} verdadeira de saída, +propriedade que depende de \code{wasm\_rt\_free()} não ser chamado, e o +\emph{wrapper} chama \code{wasm2c\_\_free}, que é outra função. + +\subsection{A incompatibilidade entre compilação e \emph{runtime}} +\label{sec:mismatch} + +Combinando as Seções~\ref{sec:guardpages} e~\ref{sec:stubs}, obtém-se uma +inconsistência que nenhuma das duas revela isoladamente: + +\begin{quote} +O código gerado \textbf{omite} a verificação de limites porque a compilação supõe +que a memória linear está cercada por páginas-guarda; o \emph{runtime} +efetivamente ligado aloca essa memória com \code{calloc}, que \textbf{não tem +páginas-guarda}. +\end{quote} + +Um acesso fora de $[0,\ell)$ não é, portanto, detido por verificação explícita, +ela não foi emitida, nem por hardware, não há região protegida. É um +transbordamento de \emph{heap} sobre o bloco do \code{calloc}. + +\subsection{O mapa de objetos existe, e não dispara} +\label{sec:mortocodigo} + +Seria natural supor que a instrumentação do Map2Check nada sabe sobre a estrutura +interna da memória linear. \textbf{Não é o caso}, e o fato altera +substancialmente o plano de trabalho que a Seção~\ref{sec:mapaO} deriva. + +O \code{MemoryTrackPass} possui um caminho WASM dedicado, ativado pelo +\emph{flag} \code{-wasm-mode} que \code{Caller::callPass} passa no modo WASM: +funções cujo nome começa em \code{w2c\_} e termina em \code{\_malloc} ou +\code{\_dlmalloc}, o alocador \emph{do módulo}, são reconhecidas e +desviadas para \code{map2check\_wasm\_malloc(offset, size)}, cujos argumentos são +\textbf{deslocamentos dentro da memória linear}, não ponteiros do processo. O +\emph{library-backend} grava-os no \code{AllocationLog}, e +\code{map2check\_wasm\_check\_access} reporta \code{FALSE\_OVERFLOW} quando um +acesso não cai em alocação registrada. + +Isso é, em substância, o mapa de objetos $O$ da Seção~\ref{sec:mapaO}, +implementado para as alocações de \emph{heap} do módulo. + +\paragraph{Por que não dispara.} +Duas razões, ambas verificadas no IR produzido nas condições de +\code{runClang}: + +\begin{enumerate}[leftmargin=1.6em] + \item A instrumentação de acesso exige um \code{GetElementPtrInst} com ao menos + três operandos. O acesso à memória linear no IR emitido é + \code{getelementptr inbounds i8, ptr \%11, i64 \%12}, \textbf{dois} + operandos. A função retorna sem instrumentar. + \item Sem \code{-O}, o acesso sequer é um \code{StoreInst} ou \code{LoadInst}: + \code{i32\_store\_unchecked} termina em + \code{call void @llvm.memcpy.p0.p0.i64}. O laço que percorre acessos + nunca o alcança. +\end{enumerate} + +Há ainda um obstáculo de projeto, e não apenas de casamento de padrão: se a +instrumentação disparasse, ela reportaria \code{FALSE\_OVERFLOW} para todo acesso +a \textbf{dado estático}, que nunca entra no \code{AllocationLog}, por não +provir do alocador do módulo. O mapa cobre o \emph{heap} do módulo, não os +objetos estáticos do contraexemplo da Seção~\ref{sec:prop2}. + +A cadeia completa é +\[ + \boxed{\; + \Lambda \;=\; \pi \;\circ\; + \operatorname{link}\bigl(\omega \circ \mathrm{pr}_1 \circ \epsilon,\ \cdot\bigr) + \;\circ\; \kappa \;\circ\; \tau + \;} +\] +seguida do motor de geração de entradas, KLEE ou LibFuzzer, sobre +$\Lambda(M)$. + +%================================================================ +\section{Proposição 1: o que a cadeia preserva} + +\begin{proposicao}[\emph{soundness} para alcançabilidade de \emph{trap}] +\label{prop:sound} +Sob as Hipóteses 1 e 2, se a execução de $\Lambda(M)$ alcança +\code{wasm\_rt\_trap}, então a execução correspondente de $M$ reduz a +$\mathtt{trap}$. +\end{proposicao} + +\begin{proof}[Demonstração (esboço)] +Pela Hipótese~\ref{hip:clang}, a execução de $\Lambda_0$ corresponde à do C +gerado. Pela Hipótese~\ref{hip:wasm2c}, alcançar \code{wasm\_rt\_trap} no C +corresponde a alcançar $\mathtt{trap}$ no WASM. A transformação $\pi$ acrescenta +código que opera sobre um estado sombra disjunto do estado do programa, logo +preserva alcançabilidade. +\end{proof} + +\paragraph{Uma condicional que a demonstração carrega.} +A Hipótese~\ref{hip:clang} vale para programas C livres de comportamento +indefinido, e a Seção~\ref{sec:kappa} registra que essa fronteira não foi +auditada para o código que o \code{wasm2c} emite. A proposição é, portanto, +condicional a ela: vale \emph{desde que} o C gerado esteja livre de +comportamento indefinido. Auditar essa fronteira, ou compilar com sanitizadores +para exercitá-la, torna a proposição incondicional; enquanto não se faça, a +condicional deve acompanhar qualquer enunciado do resultado. + +\subsection{Leitura correta do resultado} + +O resultado é real e é útil, mas o seu escopo é mais estreito do que a formulação +ingênua sugeriria, e convém enunciá-lo sem folga. + +\paragraph{O que a proposição dá.} Ausência de falso positivo: um +\code{wasm\_rt\_trap} alcançado corresponde a um \emph{trap} genuíno de $M$. + +\paragraph{O que ela não dá.} \textbf{Detectabilidade}, que é a recíproca. Para +concluir que $M$ \emph{trapar} implica $\Lambda(M)$ sinalizar, seriam necessárias +duas condições adicionais: que a classe pertença a +$\mathcal{T}_{\mathrm{emit}}(M)$, e que o \emph{harness} alcance o teste, e a +Seção~\ref{sec:harness} demonstra que $\Reach(\Lambda_0)$ está estritamente +contido nas execuções de $M$. Conter uma chamada a \code{wasm\_rt\_trap} não é o +mesmo que alcançá-la. + +\paragraph{Quais classes, concretamente.} Determinamos +$\mathcal{T}_{\mathrm{emit}}$ por inspeção do IR, contando as chamadas a +\code{wasm\_rt\_trap} por código. Para um módulo com divisão inteira, acesso +indexado e instrução inalcançável, e sem segmentos de dados, o IR contém +exatamente três chamadas, com os códigos correspondentes a +$\mathtt{INT\_OVERFLOW}$, $\mathtt{DIV\_BY\_ZERO}$ e $\mathtt{UNREACHABLE}$, e +\textbf{nenhuma} com o código de $\mathtt{OOB}$. Este é o conjunto estabelecido +por observação. As demais classes cujo teste não depende da estratégia de limites, +$\mathtt{INVALID\_CONVERSION}$, $\mathtt{CALL\_INDIRECT}$, +$\mathtt{NULL\_REF}$, provêm dos mesmos macros incondicionais e devem, por +inferência sobre a estrutura do tradutor, pertencer também a +$\mathcal{T}_{\mathrm{emit}}$; nenhum experimento aqui descrito as exercitou. + +\paragraph{Como o sinal chega.} Não por \code{abort}. A implementação do WABT +executa um \code{longjmp}; o \emph{stub} do Map2Check +(Seção~\ref{sec:stubs}) a substitui por chamada a \code{map2check\_error()}, que +é o sinal consumido pelo modo de alcançabilidade. Como o \emph{stub} descarta o +código do \emph{trap}, as classes chegam ao verificador indistinguíveis entre si: +a cadeia responde ``houve \emph{trap}'', nunca ``houve divisão por zero''. + +\paragraph{O efeito de uma \emph{flag}.} +Compilar com \code{-DWASM\_RT\_MEMCHECK\_BOUNDS\_CHECK=1} acrescenta +$\mathtt{OOB}$ a $\mathcal{T}_{\mathrm{emit}}$ e elimina a incompatibilidade da +Seção~\ref{sec:mismatch}. Acrescenta também $\mathtt{EXHAUSTION}$, e por um +caminho indireto: desligar páginas-guarda desliga o tratador de esgotamento de +pilha, e o cabeçalho então liga a contagem de profundidade, de modo que o código +gerado passa a emitir o teste em cada função. Não produz, contudo, a igualdade +$\mathcal{T}_{\mathrm{emit}} = \mathcal{T}$: $\mathtt{UNCAUGHT\_EXCEPTION}$ e +$\mathtt{UNALIGNED}$ dependem de tratamento de exceções e de atômicos sobre +memória compartilhada, que a \emph{flag} não habilita. + +%================================================================ +\section{Proposição 2: o que a cadeia não preserva} +\label{sec:prop2} + +Antes do enunciado é preciso dizer o que se entende por \emph{objeto}, pois a +noção não pertence ao WebAssembly e é justamente a que falta. Chamamos objeto +cada intervalo de $[0,\ell)$ que o programa-fonte tratava como uma variável ou +alocação distinta, e que a compilação para WASM não representa: a +Seção~\ref{sec:mapaO} formaliza isso como um mapa +$O : [0,\ell) \rightharpoonup \mathit{ObjID}$. Um acesso \emph{fora do objeto +pretendido} é um acesso cujo intervalo não está contido em um único objeto. + +\begin{proposicao}[incompletude para segurança de memória] +\label{prop:incompleta} +Existem um módulo $M$, uma execução e um acesso nela tais que esse acesso +\textbf{sobrescreve um objeto que não é o pretendido} (uma violação genuína de +CWE-787) e, ainda assim, nenhum acesso da execução viola $\Safe_{\mathrm{C}}$, e +a execução não alcança \code{wasm\_rt\_trap}. +\end{proposicao} + +\begin{proof}[Demonstração (por construção)] +Tome o módulo compilado a partir de + +\begin{lstlisting}[language=C] +int buf[4]; +char token[16]; +int f(int i) { buf[i] = 7; return buf[0]; } +\end{lstlisting} + +\noindent +com $i = 4$. Sejam $a_{\mathit{buf}}$ e $a_{\mathit{token}}$ os deslocamentos dos +dois objetos na memória linear. + +A adjacência entre eles não é estipulada: é observada. Compilando esta fonte para +\code{wasm32}, obtêm-se $a_{\mathit{buf}} = 1024$ e $a_{\mathit{token}} = 1040$, +ambos os objetos carecem de inicializador, logo residem na mesma seção, e a +ordem relativa segue a ordem de declaração. \textbf{A ressalva pertinente é sobre +a seção de alocação, não sobre o \emph{linker}}: dar um inicializador não nulo a +apenas um deles separa-os em seções distintas e pode inverter a ordem, caso em +que o índice que atinge o vizinho passa a ser negativo. O argumento não depende +da direção. + +\medskip +\noindent\textbf{No WASM.} +O acesso tem endereço efetivo $ea = a_{\mathit{buf}} + 16 = a_{\mathit{token}}$. +Como $ea + 4 \le \ell$, a memória linear tem ao menos uma página, logo +$\ell \ge 65\,536$, e os objetos estão no início dela, a condição lateral da +regra \textsc{load} \emph{é satisfeita}. A redução não produz $\mathtt{trap}$: +produz uma escrita bem definida. O \emph{token} foi sobrescrito e a execução +prossegue normalmente. + +\medskip +\noindent\textbf{No C gerado.} +Sob \code{BOUNDS\_CHECK}, o teste \code{res > mem->size} equivale a +$ea + 4 > \ell$, que é falso. Sob \code{GUARD\_PAGES}, a configuração real, +Seção~\ref{sec:guardpages}, não há sequer teste a avaliar. Em qualquer das +duas, nenhum \emph{trap}. + +\medskip +\noindent\textbf{Sob a instrumentação.} +Como visto, \code{data} é uma \emph{única} alocação cobrindo $[0,\ell)$. Logo +$\Sigma$ contém o registro $(\code{data},\ \ell,\ \mathrm{true})$ e, para +$p = \code{data} + ea$ e $n = 4$, valem $\code{data} \le p$ e +$p + 4 \le \code{data} + \ell$. Portanto $\Safe_{\mathrm{C}}(\Sigma, p, 4)$ é +verdadeiro e nenhuma violação é reportada. A instrumentação WASM dedicada da +Seção~\ref{sec:mortocodigo} tampouco alcança o caso: além de não disparar sobre +a forma do IR gerado, ela cobre alocações do \emph{heap} do módulo, e +$\mathit{buf}$ e $\mathit{token}$ são objetos estáticos. + +\medskip +\noindent\textbf{Execução.} +O programa correspondente, ligado ao \emph{runtime} do WABT, foi executado. Com +$i = 4$, o primeiro byte de $\mathit{token}$ passa de $0$ a $119 = \mathtt{0x77}$, +$\mathit{token}$ é vetor de \code{char}, logo o vizinho é atingido byte a +byte, e o processo termina com código de saída $0$, sem \emph{trap}. Para +comparação, um índice bem fora de $[0,\ell)$ termina com código $134$, mas por +via do tratador de sinal do \emph{runtime} do WABT, que o Map2Check não liga. +\end{proof} + +O ponto não é uma limitação +específica do modo \code{memtrack}. O problema é que \textbf{$\tau$ não preserva +a informação necessária}: a partição da memória em objetos existe no código C +original, mas é descartada durante a compilação para WASM, porque o modelo de +memória do WebAssembly não representa essas fronteiras como objetos distintos. +O que chega ao Map2Check é um vetor de bytes com uma única fronteira relevante: +a fronteira externa da memória linear. + +Convém não converter isso num efeito de grau. A invisibilidade não depende do +tamanho da memória: ela decorre de a violação ser intra-memória, e vale para +\emph{qualquer} $\ell$. Já numa memória de uma única página, o menor valor +possível, $\ell = 65\,536$, um acesso que ultrapasse o limite de um objeto por +poucos bytes permanece a dezenas de milhares de bytes da única fronteira que o +modelo preserva. O tamanho apenas amplia a região em que isso ocorre; não é a +variável explicativa. + +%================================================================ +\section{Consequência para a validação existente} +\label{sec:atribuicao} + +O resultado acima muda a +forma como deve ser interpretado +\path{docs/reports/wasm-juliet-validation.csv}. Todos os casos ali registrados +retornam \code{FALSE}, isto é, um defeito foi encontrado. Contudo, as +Proposições~\ref{prop:sound} e~\ref{prop:incompleta}, consideradas em conjunto, +mostram que há \textbf{dois mecanismos possíveis} por trás desse veredito: + +\begin{enumerate}[label=(\alph*),leftmargin=1.8em] + \item o \emph{overflow} foi grande o bastante para sair de $[0,\ell)$, o + \code{RANGE\_CHECK} do WABT disparou, e o que foi detectado foi a + verificação do WABT; ou + \item a instrumentação do Map2Check detectou algo por conta própria. +\end{enumerate} + +A planilha \textbf{não distingue esses dois +casos}, e a Proposição~\ref{prop:incompleta} estabelece que (b) é impossível +para violações intra-memória. Portanto, enquanto essa separação não for feita, +a validação WASM não sustenta, por si só, a alegação de que \emph{o Map2Check} +detectou os defeitos. Os mesmos resultados são igualmente compatíveis com a +hipótese de que o WABT detectou os acessos inválidos e o Map2Check apenas +reportou o \emph{abort} resultante. + +A separação é simples: basta +instrumentar \code{wasm\_rt\_trap} para registrar qual caminho produziu cada +\emph{abort}. Essa deve ser a primeira medição realizada na frente WASM, pois +ela precede qualquer nova alegação sobre capacidade de detecção. + +%================================================================ +\section{O que a modelagem de memória linear tem de acrescentar} +\label{sec:mapaO} + +A proposta de pesquisa prevê uma fase de ``modelagem da memória linear''. Nos +termos deste documento, o que falta é exatamente um objeto: um \textbf{mapa de +objetos} +\[ + O : [0,\ell) \rightharpoonup \mathit{ObjID}, +\] +com o predicado refinado +\[ + \Safe_{\lin}(\mu,\ O,\ ea,\ N) \;\equiv\; + \Safe_{\wasm}(\mu,\ ea,\ N) \;\wedge +\] +\[ + \exists\, o \in \mathit{ObjID} \;:\; + \forall k \in [\,ea,\ ea + N/8\,) \;:\; + k \in \operatorname{dom}(O) \;\wedge\; O(k) = o . +\] + +Em +palavras: além de estar dentro dos limites da memória linear, o acesso inteiro +precisa estar \textbf{contido em um único objeto}. Com $\Safe_{\lin}$ no lugar +de $\Safe_{\mathrm{C}}$, o contraexemplo da Proposição~\ref{prop:incompleta} +passa a ser detectável, pois +$O(a_{\mathit{buf}} + 16) = \mathit{token} \ne \mathit{buf}$. + +Isso torna preciso o requisito sobre o \emph{lifter}. O mapa $O$ +\textbf{não pode ser recuperado integralmente a partir do \code{.wasm}} se a +informação de objetos não tiver sido preservada em alguma forma auxiliar. As +três fontes possíveis são: + +\begin{enumerate}[leftmargin=1.6em] + \item \textbf{Seções de nome e informação DWARF} do módulo, quando presentes, + o Clang com \code{-g} para o alvo \code{wasm32} as emite. Recupera objetos + estáticos e o \emph{layout} de quadro de pilha. + \item \textbf{Reconstrução do alocador}: reconhecer as funções \code{malloc} e + \code{free} do módulo, quando ele carrega uma libc, e delas derivar $O$ + dinamicamente. + \item \textbf{Anotação no momento do \emph{lifting}}, que é o que a proposta + chama de ``\emph{lifter} ciente de segurança'': um $\tau'$ que emita, + junto do C, os metadados de fronteira. +\end{enumerate} + +\paragraph{Uma parte disso já existe.} +A Seção~\ref{sec:mortocodigo} mostra que o \code{MemoryTrackPass} já mantém, no +modo WASM, um mapa por deslocamento para as alocações do \emph{heap} do módulo. +O que falta a esse mapa é, de um lado, disparar (hoje não dispara) e, de +outro, cobrir os objetos \textbf{estáticos}, que não provêm do alocador e por +isso nunca são registrados. As três fontes acima permanecem necessárias +exatamente para essa segunda metade. + +As três são trabalho de $\tau$, ou de um passo novo entre $\tau$ e $\kappa$. +\textbf{Nenhuma delas é trabalho do backend de verificação.} Isso confirma a +afirmação de viabilidade da proposta, não é preciso reescrever o motor, e ao +mesmo tempo localiza o custo real onde ele está. + +%================================================================ +\section{Resumo da cadeia} + +\begin{table}[h] +\centering +\footnotesize +\renewcommand{\arraystretch}{1.25} +\begin{tabularx}{\textwidth}{@{}c l X X X@{}} +\toprule +\textbf{Passo} & \textbf{Função} & \textbf{Implementação} & +\textbf{Preserva} & \textbf{Perde} \\ +\midrule +0 & $M$ & entrada \code{.wasm} & & + o \emph{layout} de objetos, já perdido na compilação \emph{para} WASM \\ +1 & $\tau$ & \code{wasm2c}, WABT 1.0.41 & + semântica, bytes da memória, os \emph{traps} de + $\mathcal{T}_{\mathrm{emit}}$ & nada além do que já faltava \\ +2 & $\kappa$ & \code{clang-16 -emit-llvm} & + semântica de programas C livres de comportamento indefinido & + o teste de limites, elidido ao supor páginas-guarda \\ +3 & $\epsilon$ & regex sobre o \code{.ll} & + ponto de entrada, quando há \code{\_start} & módulos \emph{reactor}, o caso IoT \\ +4 & $\omega$ & \emph{wrapper} e \code{llvm-link} & + a execução de \code{\_start} & + toda função exportada de aridade positiva, e o \emph{host} \\ +5 & $\pi$ & passes do Map2Check, mais os \emph{stubs} de \code{wasm\_rt\_*} & + alcançabilidade & a classe do \emph{trap}, descartada pelo \emph{stub} \\ +\bottomrule +\end{tabularx} +\end{table} + +%================================================================ +\section{Recomendações, em ordem} + +\begin{enumerate}[leftmargin=1.6em] + \item \textbf{Fazer a instrumentação WASM disparar.} O mapa de objetos existe + (Seção~\ref{sec:mortocodigo}) e é código morto: o casamento de padrão + exige um \code{GetElementPtr} de três operandos, e o IR do \code{wasm2c} + produz um de dois, dentro de um \code{memcpy}. É a maior distância entre + o que a ferramenta pretende e o que ela faz, e é depuração, não + pesquisa. + \item \textbf{Compilar com \code{-DWASM\_RT\_MEMCHECK\_BOUNDS\_CHECK=1}.} Uma + linha em \code{WasmLifter::runClang}. Restaura o teste de limites, + elimina a incompatibilidade da Seção~\ref{sec:mismatch} e acrescenta + $\mathtt{OOB}$ e $\mathtt{EXHAUSTION}$ a $\mathcal{T}_{\mathrm{emit}}$. É + a correção de maior efeito por unidade de esforço neste documento. + \item \textbf{Separar as vias de detecção.} Fazer o \emph{stub} de + \code{wasm\_rt\_trap} registrar o código recebido, e o classificador + registrar por qual via o veredito chegou. Reprocessar em seguida a + validação Juliet-WASM. Nenhuma alegação sobre a frente WASM se sustenta + antes disso. + \item \textbf{Corrigir a aridade do \emph{wrapper} e verificar os retornos.} O + defeito da Seção~\ref{sec:aridade} restringe a ferramenta a módulos com + exatamente uma importação, e falha em silêncio fora dessa classe. + \item \textbf{Enunciar a Proposição~\ref{prop:sound} como resultado.} A + \emph{soundness} para $\mathcal{T}_{\mathrm{emit}}$ já existe na + implementação atual e não está sendo reivindicada. É publicável por si, e + independente da modelagem de memória. + \item \textbf{Corrigir $\epsilon$ e $\omega$ para módulos \emph{reactor}.} Gerar + uma chamada por função \emph{exportada}, e não por toda função de $E$, + que inclui as internas, com \code{\_\_VERIFIER\_nondet\_()} em cada + parâmetro. Sem isso, o alvo declarado da proposta permanece fora do + alcance da ferramenta, por um motivo puramente mecânico. + \item \textbf{Estender o mapa de objetos aos dados estáticos.} O mapa existente + cobre o \emph{heap} do módulo; o contraexemplo da Seção~\ref{sec:prop2} + usa objetos estáticos, que nunca entram no \code{AllocationLog}. Esta é a + única das sete que constitui pesquisa. +\end{enumerate} + +%================================================================ +%================================================================ +\appendix +\section{Protocolo de verificação} +\label{ap:experimento} + +As afirmações deste documento sobre o código gerado e sobre o comportamento em +execução não foram inferidas da documentação das ferramentas: foram verificadas. +Registram-se aqui os procedimentos, para que possam ser repetidos e contestados. + +Ambiente: imagem \path{ghcr.io/hbgit/map2check-dev}, com WABT 1.0.41 e +\code{clang-16}. Preparação comum a todos os experimentos: + +\begin{lstlisting} +clang-16 --target=wasm32 -nostdlib -Wl,--no-entry -Wl,--export-all \ + -O1 -o t.wasm t.c +wasm2c t.wasm -o gen.c +\end{lstlisting} + +\subsection{A elisão do teste de limites} + +Compilar a saída do \code{wasm2c} exatamente como \code{WasmLifter::runClang} o +faz, e inspecionar a função de escrita no IR: + +\begin{lstlisting} +clang-16 -S -emit-llvm -I$WABT/include -I. gen.c -o gen.ll +awk '/define.*i32_store_default32/,/^}/' gen.ll +\end{lstlisting} + +O corpo contém apenas \code{call void @i32\_store\_unchecked}. Repetindo com +\code{-DWASM\_RT\_MEMCHECK\_BOUNDS\_CHECK=1}, passa a conter \code{icmp ugt} +contra \code{mem->size} e \code{call void @wasm\_rt\_trap(i32 1)}. + +\subsection{Determinação de \texorpdfstring{$\mathcal{T}_{\mathrm{emit}}$}{T-emit}} + +Contagem das chamadas por código de \emph{trap}: + +\begin{lstlisting} +grep -o '@wasm_rt_trap(i32 noundef [0-9]*)' gen.ll | sort | uniq -c +\end{lstlisting} + +Para um módulo com divisão inteira, acesso indexado e instrução inalcançável, e +\textbf{sem segmentos de dados}, observam-se os códigos $2$, $3$ e $5$, e nenhum +código $1$. Pela ordem do \code{enum wasm\_rt\_trap\_t} em \code{wasm-rt.h}, +esses códigos são \code{INT\_OVERFLOW}, \code{DIV\_BY\_ZERO} e +\code{UNREACHABLE}, e o ausente é \code{OOB}. + +Dando \textbf{inicializadores não nulos} aos globais, de modo que o módulo passe +a ter segmento de dados, o mesmo \code{wasm2c} sem \code{-D} emite duas chamadas +com o código $1$, provenientes do \code{RANGE\_CHECK} na inicialização de +memória. Daí a dependência de $\mathcal{T}_{\mathrm{emit}}$ em relação ao módulo, +e não apenas à estratégia de verificação. + +Acrescentando \code{-DWASM\_RT\_MEMCHECK\_BOUNDS\_CHECK=1}, surgem ainda oito +chamadas com o código de \code{EXHAUSTION}, uma por função: desligar +páginas-guarda desliga o tratador de esgotamento de pilha, e o cabeçalho passa a +ligar a contagem de profundidade. + +\subsection{O contraexemplo} + +O módulo exporta funções que devolvem os deslocamentos de \code{buf} e +\code{token} na memória linear, de modo que o \emph{layout} escolhido seja +observado em vez de suposto. Ligando ao \emph{runtime} do WABT: + +\begin{lstlisting} +clang-16 -O0 -I$WABT/include -I. h.c gen.c \ + $WABT/share/wabt/wasm2c/wasm-rt-impl.c \ + $WABT/share/wabt/wasm2c/wasm-rt-mem-impl.c -o prog +\end{lstlisting} + +Com a fonte da Seção~\ref{sec:prop2}, em que ambos os objetos carecem de +inicializador e portanto residem na mesma seção, obtém-se +$a_{\mathit{buf}} = 1024$ e $a_{\mathit{token}} = 1040$; o índice $i = 4$ leva o +primeiro byte de \code{token} de $0$ a $119 = \mathtt{0x77}$, e o processo termina +com código de saída $0$. Um índice bem fora de $[0,\ell)$ termina com código +$134$. + +Dar inicializador não nulo a apenas um dos objetos separa-os em seções distintas +e pode inverter a ordem relativa, caso em que o índice que atinge o vizinho passa +a ser negativo. O argumento da Proposição~\ref{prop:incompleta} não depende da +direção. + +\subsection{A aridade do \emph{wrapper}} + +Compilar um \emph{harness} que reproduza a chamada emitida por +\code{generateWasmWrapperStatic} contra um módulo sem importações: o \code{clang} +responde \code{too many arguments to function call, expected 1, have 2}. A +assinatura gerada confere-se com + +\begin{lstlisting} +grep -nE '^void wasm2c_.*_instantiate' gen.c +\end{lstlisting} + +\subsection{O que não foi verificado} + +Os procedimentos acima exercitam a cadeia até o LLVM-IR e o comportamento do +\emph{runtime} do WABT. \textbf{$\Lambda(M)$ nunca foi executado de ponta a +ponta}: isso exigiria um \emph{build} completo do Map2Check, e todas as +observações de execução aqui registradas foram feitas sobre o \emph{runtime} do +WABT, que o \emph{pipeline} não liga (Seção~\ref{sec:stubs}). + +Em consequência, três afirmações do documento permanecem derivadas de leitura de +código e não de execução observada: a de que $\Sigma$ recebe a memória linear +como alocação única; a de que a instrumentação WASM dedicada não dispara sobre o +IR do \code{wasm2c}; e a de que, sob os \emph{stubs}, um acesso muito além de +$[0,\ell)$ não produz sinal algum. As três são verificáveis assim que houver um +\emph{build} disponível, e são as primeiras que se deveria fechar. + +%================================================================ +\section{Glossário de símbolos e termos} +\label{ap:glossario} + +Reúne todo símbolo empregado no documento. Para cada um: a leitura em palavras, a +definição, e a seção em que é introduzido. Os grupos seguem a ordem da cadeia. + +\subsection{Notação de base} + +\begin{tabularx}{\textwidth}{@{}c l X@{}} +\toprule +\textbf{Símbolo} & \textbf{Leitura} & \textbf{Definição} \\ +\midrule +$\mathbb{B}$ & ``o conjunto dos bytes'' & $\{0,\dots,255\}$. \\ +$\mathbb{N}$ & ``os naturais'' & Usado apenas para o número de páginas. \\ +$[a,b)$ & ``intervalo semiaberto'' & Inteiros $k$ com $a \le k < b$; inclui $a$, exclui $b$. \\ +$\operatorname{dom}(f)$ & ``domínio de $f$'' & Conjunto dos pontos em que a função parcial $f$ está definida. \\ +$\mathcal{P}(X)$ & ``partes de $X$'' & Conjunto de todos os subconjuntos de $X$. \\ +$\rightharpoonup$ & ``função \emph{parcial}'' & $f : A \rightharpoonup B$ pode não estar definida em todo $A$. \\ +$\to$ & ``função total'' & Contrasta com o anterior; definida em todo o domínio. \\ +$P$ & ``tamanho de página'' & A constante $65\,536$, fixada pela especificação do WASM. \\ +\bottomrule +\end{tabularx} + +\subsection{O módulo e seu estado de execução} + +\begin{tabularx}{\textwidth}{@{}c l X@{}} +\toprule +\textbf{Símbolo} & \textbf{Leitura} & \textbf{Definição} \\ +\midrule +$M$ & ``o módulo'' & O binário \code{.wasm} de entrada, visto como tupla de dez componentes. \\ +$\mathit{types}$ etc. & & Os componentes de $M$: assinaturas, funções, tabelas, memórias, globais, segmentos de elementos e de dados, função de início, importações e exportações. \\ +$\mathit{mems}$ & ``as memórias'' & Componente de cardinalidade no máximo $1$ na versão 1.0, a hipótese estrutural de todo o documento. \\ +$\mathit{exports}$ & ``as exportações'' & $\mathit{Name} \rightharpoonup \mathit{ExternIdx}$: nomes visíveis de fora do módulo. \\ +$\mathit{imports}$ & ``as importações'' & Funções que o \emph{host} fornece; em IoT, o acesso a sensores, rede e banco. \\ +$\mathit{Name}$ & ``nomes'' & Cadeias que identificam funções exportadas ou importadas. \\ +$\mathit{ExternIdx}$ & ``índice externo'' & Referência a uma entidade do módulo (função, tabela, memória, global). \\ +$\mathit{valtype}$ & ``tipos de valor'' & $\{\mathtt{i32}, \mathtt{i64}, \mathtt{f32}, \mathtt{f64}\}$. \\ +$\mathit{Val}$ & ``valores'' & Conjunto dos valores desses tipos. \\ +$s$ & ``o \emph{store}'' & Estado global: funções, tabelas, memórias e globais instanciadas. \\ +$F$ & ``o \emph{frame}'' & Estado local do quadro corrente: variáveis locais e a instância ativa. \\ +$e^{*}$ & ``a pilha de instruções'' & Sequência de instruções ainda por executar. \\ +$s;F;e^{*}$ & ``uma configuração'' & O estado completo de execução do WASM. \\ +$\hookrightarrow$ & ``reduz em um passo'' & Relação de redução em passos pequenos entre configurações. \\ +$\mathtt{trap}$ & ``\emph{trap}'' & Termo distinguido e absorvente: nenhuma regra o reduz. É como o WASM sinaliza erro irrecuperável. \\ +$\mathcal{T}$ & ``as classes de \emph{trap}'' & As dez razões que o WABT distingue (OOB, divisão por zero, \dots). \\ +$\mathcal{T}_{\mathrm{emit}}(M)$ & ``as classes emitidas'' & Subconjunto de $\mathcal{T}$ cujo teste o código gerado a partir de $M$ de fato contém. \\ +\bottomrule +\end{tabularx} + +\subsection{A memória linear e o acesso} + +\begin{tabularx}{\textwidth}{@{}c l X@{}} +\toprule +\textbf{Símbolo} & \textbf{Leitura} & \textbf{Definição} \\ +\midrule +$\mu$ & ``a instância de memória'' & O par $(d, \ell)$. \\ +$d$ & ``os bytes'' & $d : [0,\ell) \to \mathbb{B}$: o conteúdo da memória linear. \\ +$\ell$ & ``o tamanho'' & Tamanho da memória linear em bytes; sempre múltiplo de $P$. \\ +$n$ & ``páginas'' & Número de páginas, com $\ell = n \cdot P$. (Não confundir com o $n$ de $\Safe_{\mathrm{C}}$.) \\ +$t$ & ``o tipo do acesso'' & Elemento de $\mathit{valtype}$; prefixo em $t.\mathtt{load}$. \\ +$N$ & ``largura em bits'' & $8$, $16$, $32$ ou $64$. O acesso toca $N/8$ bytes. \\ +$i$ & ``índice dinâmico'' & Valor \code{i32} vindo da pilha de operandos. \\ +$\mathit{offset}$ & ``deslocamento estático'' & Constante imediata da instrução. \\ +$ea$ & ``endereço efetivo'' & $ea = i + \mathit{offset}$. Índice em bytes \emph{dentro} da memória linear, um inteiro, não um ponteiro do processo. \\ +$c$ & ``o valor lido'' & Resultado da leitura, de tipo $t$. \\ +$a_{\mathit{buf}}$, $a_{\mathit{token}}$ & ``deslocamentos'' & Posições dos dois objetos do contraexemplo dentro da memória linear. \\ +\bottomrule +\end{tabularx} + +\subsection{As funções da cadeia} + +\begin{tabularx}{\textwidth}{@{}c l X@{}} +\toprule +\textbf{Símbolo} & \textbf{Leitura} & \textbf{Definição} \\ +\midrule +$\tau$ & ``\emph{tau}, o tradutor'' & $\mathit{Wasm} \to \mathit{C}$. O \code{wasm2c} do WABT. \\ +$\kappa$ & ``\emph{kappa}, o compilador'' & $\mathit{C} \to \mathit{LLVM}$. O \code{clang-16}. \\ +$\epsilon$ & ``\emph{épsilon}, a extração'' & $\mathit{LLVM}_{\text{texto}} \to \mathit{Name} \times \mathcal{P}(\mathit{Name})$. Descobre o ponto de entrada. \\ +$\omega$ & ``\emph{ômega}, o \emph{harness}'' & $\mathit{Name} \to \mathit{LLVM}$. Sintetiza o \code{main} que falta. \\ +$\pi$ & ``\emph{pi}, a instrumentação'' & Os passes do Map2Check; o par $(\pi_{\text{code}}, \Sigma)$. \\ +$\Lambda$ & ``\emph{lambda}, a cadeia'' & A composição completa das cinco funções. \\ +$\Lambda_0$ & ``a cadeia sem instrumentar'' & $\code{llvm-link}(\kappa(\tau(M)), \omega(\eta))$: já ligado, ainda não instrumentado. \\ +$\eta$ & ``\emph{eta}, o ponto de entrada'' & Nome da função de entrada detectada por $\epsilon$. \\ +$E$ & ``as demais funções'' & Segundo componente devolvido por $\epsilon$. \\ +$\mathit{Wasm}$, $\mathit{C}$, $\mathit{LLVM}$ & & Os conjuntos de programas de cada linguagem, domínios e contradomínios das funções acima. \\ +$\mathit{mod}$ & ``o módulo, no nome'' & Prefixo do \emph{mangling} \code{w2c\_\_}. \\ +$f$ & ``uma função do módulo'' & Função de $M$, cuja tradução $\tau(f)$ é uma função C. \\ +$I$ & ``a estrutura de instância'' & O registro C em que $\tau$ realiza o \emph{store} $s$; o \emph{wrapper} declara uma e passa \code{\&I}. \\ +$\approx$ & ``corresponde a'' & Relação entre configuração WASM e estado C: memória igual byte a byte, globais e locais de mesmo valor. \\ +$\sigma$, $\sigma'$ & ``estados C'' & Estados do programa C gerado. \\ +$\to^{+}$ & ``reduz em um ou mais passos'' & Fecho transitivo da redução no lado C. \\ +\bottomrule +\end{tabularx} + +\subsection{Semântica denotacional e alcançabilidade} + +\begin{tabularx}{\textwidth}{@{}c l X@{}} +\toprule +\textbf{Símbolo} & \textbf{Leitura} & \textbf{Definição} \\ +\midrule +$\sem{M}$ & ``o significado de $M$'' & $\overline{\mathit{Val}} \times \mathit{Host} \to \mathit{Outcome}$: a \emph{família} de execuções do módulo. \\ +$\overline{\mathit{Val}}$ & ``uma tupla de valores'' & Os argumentos das funções exportadas. \\ +$\mathit{Host}$ & ``o ambiente'' & O comportamento das funções importadas. \\ +$\mathit{Outcome}$ & ``o desfecho'' & Resultado de uma execução. \\ +$\nu$ & ``\emph{nu}, uma valoração'' & Uma escolha concreta de argumentos em $\overline{\mathit{Val}}$. \\ +$h$ & ``um \emph{host}'' & Uma escolha concreta em $\mathit{Host}$. \\ +$\bot$ & ``\emph{bottom}'' & Não é um valor: denota a \emph{ausência} da chamada, quando o \emph{harness} não invoca a função. \\ +$\Reach(q)$ & ``os alcançáveis de $q$'' & Conjunto de estados alcançáveis do programa $q$. A letra $q$, e não $p$, para não colidir com o ponteiro de $\Safe_{\mathrm{C}}$. \\ +\bottomrule +\end{tabularx} + +\subsection{A instrumentação e os predicados de segurança} + +\begin{tabularx}{\textwidth}{@{}c l X@{}} +\toprule +\textbf{Símbolo} & \textbf{Leitura} & \textbf{Definição} \\ +\midrule +$\pi_{\text{code}}$ & ``a parte que insere código'' & Componente de $\pi$ que acrescenta as verificações. \\ +$\Sigma$ & ``\emph{sigma}, o estado sombra'' & Conjunto das alocações vivas mantido em tempo de execução pelo \code{--memtrack}. \\ +$\mathit{base}$, $b$ & ``o início'' & Endereço inicial de uma alocação registrada. \\ +$\mathit{size}$, $z$ & ``o tamanho'' & Tamanho em bytes dessa alocação. \\ +$\mathit{alive}$ & ``viva'' & Verdadeiro enquanto a alocação não foi liberada. \\ +$p$ & ``o ponteiro'' & Endereço C do acesso sendo verificado. Diferente de $ea$: $p$ é um ponteiro do processo, $ea$ é um índice dentro da memória linear. \\ +$n$ & ``bytes do acesso'' & Largura do acesso em $\Safe_{\mathrm{C}}$. (Não confundir com o $n$ de páginas.) \\ +$\Safe_{\wasm}(\mu, ea, N)$ & ``seguro para o WASM'' & $ea + N/8 \le \ell$: o acesso cabe na memória linear. \\ +$\Safe_{\mathrm{C}}(\Sigma, p, n)$ & ``seguro para o C'' & Existe em $\Sigma$ uma alocação viva que contém $[p, p+n)$. \\ +$\Safe_{\lin}(O, ea, N)$ & ``seguro na memória linear'' & O predicado refinado: além de caber na memória, o acesso cabe \emph{dentro de um único objeto}. \\ +$O$ & ``o mapa de objetos'' & $[0,\ell) \rightharpoonup \mathit{ObjID}$: a que objeto pertence cada byte. É a informação que o \emph{lifting} apaga. \\ +$\mathit{ObjID}$ & ``identificador de objeto'' & Contradomínio de $O$; distingue \code{buf} de \code{token}. \\ +$o$ & ``um objeto'' & Elemento de $\mathit{ObjID}$. \\ +$k$ & ``um byte do acesso'' & Índice que percorre $[ea,\ ea + N/8)$ na definição de $\Safe_{\lin}$. \\ +\bottomrule +\end{tabularx} + +\subsection{Três distinções que o glossário não deve deixar passar} + +\begin{enumerate}[leftmargin=1.6em] + \item \textbf{$ea$ contra $p$.} $ea$ é um inteiro em $[0,\ell)$, uma posição + \emph{dentro} da memória linear, como o WASM a enxerga. $p$ é um ponteiro + do processo hospedeiro, e a relação entre os dois é + $p = \code{mem->data} + ea$. + + Essa mudança de referencial é, porém, \textbf{a parte inócua}: sendo a + memória linear uma alocação única, $\Safe_{\mathrm{C}}(\Sigma, + \code{data}+ea, n)$ e $\Safe_{\wasm}(\mu, ea, N)$ são \emph{equivalentes}: + uma é a translação da outra. O que separaria os dois predicados seria + uma partição em objetos, que nenhum dos dois possui. É esse o conteúdo da + Proposição~\ref{prop:incompleta}, e não a troca de coordenadas. + \item \textbf{Os dois $n$.} Em $\ell = n \cdot P$, $n$ conta \emph{páginas}; + em $\Safe_{\mathrm{C}}(\Sigma, p, n)$, $n$ conta \emph{bytes do acesso}. + A colisão é herdada das convenções das duas comunidades e está registrada + aqui por não ser resolvida no texto. + \item \textbf{$\mathcal{T}$ contra $\mathcal{T}_{\mathrm{emit}}$.} O primeiro é + o que o WebAssembly \emph{define} como \emph{trap}; o segundo é o que o + código gerado, para um dado módulo e uma dada configuração de compilação, + efetivamente \emph{testa}. A distância entre os dois é o assunto da + Seção~\ref{sec:guardpages}. +\end{enumerate} + +\end{document} diff --git a/docs/Map2Check-WASM-Transformacao-Formal.zip b/docs/Map2Check-WASM-Transformacao-Formal.zip new file mode 100644 index 0000000000000000000000000000000000000000..f80b3f026a917c3589ccd08c7e6a1818b2017da3 GIT binary patch literal 919120 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 {vB{8DAP-7O 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%0A>^$u6-8XTVV3Rg0 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 s%?#st~lWB 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

DB~4+z zW`g;oPEa#!TbaiwoDmZqX&H@xgZFpIUaAVpOak2V83gx;={{{1Ef;uq%yfXFsW?Oe zaAxQ+H9T#X)%*wV2fta%OJlKG1eQg)p%cPGt-ut+QSJ@0xAVP_2_j z8_D}`$Z{+&S+z9ydB^))eDS?&{L0#zx@LM05$C43taOemv4|@eX^y^_l`HZc!=q9X zif{mw2jA0%?D1Ivzo-0uW1B+0Ko35dFoP0iD3*ol&CxmcXZtB}0+Sv*a_T841O(+J zsDCXwek0fG-!ZmH@ z4d*w-YECz@>2s>tG`}52#%$U#yD}oy*a4jR=f|1Y%C^_GTXQCm0MWqli)h*dwSjP} zJv@rIe4(S7%TDoL+@+QqZhBWwm@CGhRCE_LTuXj1_MSVm6wH~@GcY@`QV5wV4axPo zxUG=usi>k+4Tc1Wl)DxW@bw)0yd%ZGXpt}lIn=TAgH?^UMos#rk!Ri%M6Nqu8cxZi z8Gl~!(5eXeg28mqQ8Pa5NlxnB2RPKaSS2DWa{^PxE})^UNBuRkEOGx$nXD+yEEoTB ziD$h}vqOb4bOeRU5}}Ad0;LiRp-R#lB^+#mbL!o>#NrCbjkaq>g4zzVu+{##}lKnkF>fd=-W6hMF{qA6E)om|N!XL7=jt ztw|D}k{sL$G41bQlNWJsRC2-nH`Y!lXnQMICBI zAguIe_DQI0r$0$(v8Fly+iLpJylQEz4@;{kXvz(mC*+XQ1_^$y?R7g4pJd&#_0yJ0 zUyBQ@hl}&I>pi#5hRF5d0g?b9!Ds^nzjiOWdM4ZHNg{(dWnRQ$-F`r z5F_f0@;xBZ%_zdWpT8H>Tog}L*N=byi0gFl&-oqQ$v@Pldk}67V&4H3pr9f`mxa)& z;Akw(zni6GQ11@ZK`~n!(OCraB&h^0#ko&)xPX*&(|3McuoG8t>h(Zk(5d^s5=Ett zIM3P$5DQCecN*pCJ0QfNJ=~O}wtC!-h#Is&-M>QKj-f8cXyOgaa;AI;f{KCMB6aze z*t+Jd`fjKROIYIxtqo9p(jV~0BwtwEL(E9T8NYPUDEyKc ziUbBt3si7(A-7>II$|%r%zPfpeJl9~!~H zqEvl$LbWuJPP120FpMR#_Fb~08~Y+eTx;C$!>`j~&UtKKJwzv3d=Trjx*oZgNO->y zu#dKHUJ@+n^aAd??7sz?U^nh|5W^zaC?vO*yv;28P{%l|9u}P_D+Vr2P1Y5HqGVy4 z&P@~j^=l)rozW5iaGr+}fK54htu{j^2J_}^)Ow15k8aoN_8fX3HL+}Ay%mxXa^Smo zujp%hU~B`Cx%yCiWf_uGHloR|WVkWiP`p3P!sq(D1mPQga23ia}}THYoH;146z4Tf?5tJ5JL zIv9B@ushb=D??M`?-^tW^$1xGxt)76kb>{@?&Kv~jYelz2LZ;O$A_7}8LT=rpo z=-xqCWrHoFQd&Cf8Dn-;Gf)1SNoO3;I#f-bn#=jfnWK*(oDslwf{fC`0yF+VRsRX8 z^w@tuJFg%cx-FZtaXWQO|`4Zrps_`};Tr@E>D$ zy-7&4c+{l!iviez?b_cxJ?ziFJ7BbTRLu3OmBq(mVIR@yJ<$#dc4m@_`(9@A2S!8p zHnBW6Fww|m4Gfb6X6al>Yy5He3Hs$9R`%+*_)c=>>a8P;_Chg&UHSx%MktEIystbj z84UjJ@G6n4_y)Ih(^~cGh`{76NTzgkXhHf79-Ay6B2k_`#oWeJlB_49l|SCJ6W;r% zu-7j8foZ5qdO+8Zp?$JzV6E66z;c%9(@9P;Q_j8QiR=1u)Dj4s;R-2z9cNQ85^Uus z2h?Pz7uPgtvi>WFCRVP)^dYJB@Ir~uULOZvp(8FVkh&Wz*1G2wnoy!^t~0ie3;)}f7HK$usjgRYG=k*)r*F8YN5aWjf6I!BFjV(wR%RHcN#N_O?oo7ev0q783z?Q~087T;)$jm*Wm(nHFn{Oe#Q)}4 zGRyY#*sXB|n3~w#_uvgxbG`oxM1F3KVId9d+zYH=k(SjUitJ8Fmem)@ilT4H&F3V= zqA+tl(RdyXtK1$~!@=rfd+t#G#*Ro(wSX)n?a_lpY(s&ACiJ-BzKFnP>AG(9AV$Sh zR1;9h;E$g?9y?<%MN4VC36Rg{;e&2|?YfAODVezTl_D%2lWEwe2!{BAe(*wVAihxQ zY&12l*Ld^!3)i+k*!WZ{CFr1pXgM-ySrQNl%ltcgwO50 zupKpKwxBz$MD?Wf%O82I0IwpRAO}=hTC&HTK~l%@++aFK$_)u!XK?9qy}GD}CTTLG z{MV2*8(^NyZ;{vN34nYr@^z$i=X{=c~|nf^ETB`XW(|Kq-7eQNTB$V`ol0FhhjLFeh`m>qyjjgf4spR3Z*&WZ#+Qp`dC%>Rgq zsew2q*Ar^m-b_~GIKG=XpWC5in5p!v}t7S&uE zK$!r`pZ|cM*j@>^fPK8`vCM4@O<}(wToD@@TpE~}89{$y2L#35xEJm03_SgtdkaEh zl6pcg`S&&<2xRD`;NzPdfS_jpl-X7Rfb%PQOBnk{G4f%Q!OJNkD5(HRP)<}(l6e<{ zfT=mxH#gUR;L#CDO;8~<{mbLC8!-UNC86Wx6%>DeDqxzyp4baO$0>te`kwq@{koeLF_>`H?n?YzvyjI^iBQwmiuc*UD;IqNCD(C0{L6FVPIrsWuM95 zUI{$0xsg4!ruyC~vobe;v#qab0QT*;^GWaPMmf~61GXTUK!0)f-wFYYr(ptCU;FoD z583>vYx-+IxC2h|{}6!Lfu6ZbPxej$ya?|57Sk`c{!XZi@(FW+K|5aZ9CY}0KKyUd|FEu(p&AWZRMP6ueuXp_x zvH$6`7R0plWc(Zdy$k2}Z^$6MXZQNrvobaPNt0F;mzC6(mdKC=<8fbgZe-iPRbL9q z7Vy*fizO$a8iL(7HU?*KXaK?(5TY`*Au%*E0X4OWyYKQTG~MS7u)fyD_?^?%Qs3gx z==#y?Xvk}iYX!9bp#@|9&|CS723XOG!`e{S>I8`PABBK%WFxrem;d=|n)^+W+8$U` zl-+|8f4NKj-ICp#oL)TXqx~}}1pAgrm7E=&mE3#O<6`!5U^dH72*ezpf4-ajrTybh zi*Jb_Mc^MBmYf?Ooc(SSJ$Y+w1ev3Mhhh5i3I17a`jZ03lM#Zp%J2E-pYlMDim)B) zhX`IbV7CbXCSibT;GmNE$IR`Q5ut&-iIJg^1(3e64*2Qn`bh^7y&s@&Y6RTQ7+|&q zasItF41jT7W5chH?q35u4yhJjC}(Bdu=^!NSzk{EeIuk$~8* z{|pbo_9+I3#$d4TcV=P;oCdCAW+2@ z4>^5@zmeXbQ~!|^gF3x>sz==qRcih8cL{>rj@;^J2?*Z00N+l zOAMx_58ce%^f6Y*5a8tZ0}fKw@&yjkHu8&)fU_^h!Deq8pESd_yr0VPO?l9^d!Q#{ z4AeI9fRC_ER^~@Ty?%sW!W1-R{{ar7cKeC`edok~@aFTrrZD$@rvIJ?9@1BjG(I~D zRBmbt;w%0c7E#SRK0EyZP5hp13N$rP_xDrsqX#+ur_K0xkA~Lj;96v4as)EZ=oA2t zf_9$@Ob?ee=J$d1>tpukBIYkw|2NV{FAacj4#Og>uF=eR{J<_}2}ARMGL=OaLU>ll zM>lq=mKGbJE0JSM-j6!-D+`4({$}wiTQuI5kZ`>EDt+HTr%e7f*66)q9Z{Fw$@WRp zUUWx!CE-s)#*$hhS$CL4)^)A3De?Kh&qb|P6z;-S!&;hxk~oT1;q5v*knrVCBE^2T1Q=eJo_ugSHE1G*{8pBIzG z^Hyp(l2b&H3+nhn>V>!VkfX3-Flz4`EG@jRn!N7R0D)I&yIy6XgOu-B1K$oj*Xhzh zGLh>n(=xc|*oC9T{Tza=2H?df<5Der4_1GI1e2D4xOjf2ND3NfNW$La4iFcYvtdV1))}lw$X4x-l@aqCoN5YOF?nfw<3E>V>=jiw*(uSeqOlmrtXv#}z5rRzoO5 zzJPJ2)b868+a6EE)FLc8DJC>DL(=c(qE97*s#c>A5%W%{$Dm`dVVHCH!3tp%HufqZ zeBej)Xv&sA^nbJ{&gm?rzQ55fpeYd7l9^`~`$@$k!WxkQ3xQ4BR6z%?I*x|Xz#hDU zia8P{XSCd5P7XSRgwTZM4Igjq%9F)P0SatKZaC5jno_sn^lt z=Q7uY0M9U1`BJ1X^O2i&kJuA6S}bJW+&mCWbgbxmFGP$TqHyPNpR3W%eJ_zSU2N$A ztfsHBjW=Gt-AXtIA!X8rcjHCGy!3N5OGY`~{MW|AR~_vlAEDyKvq16B?U(sNnxeTe$yxo}$mp-nub?p?3h|2^F?1_o{yWR=Vi zViP;HXue^#;c_$}T;(3{`yJ0qL#xv`3EtbEd#w@$gx`Ip-O?sX%&-V=u&&I*;vt2x z;+FOgxF9xS-5?GmKptovKF^a#be?>6r2lrpBKk>Q77}EEwJzQME5KVR#gHn^}W@!8q%|{4S!>|Nv^__K4@t}u#Y-Roo1YUMQ zB~31zE$HbX>^TD&)-CO)+KJ{->g){lx|#-0b|poAe$PN~!{KM}r?Q7A8FJLHM!Rk& zDr#PMVOe+yEr=PJ4mNfQJl6rjGOCCjF1wEw6xvYt1Gl#)g-iwosOSZk`~-W?+j%cY`3#FuNMJwp{v;qL};3;aYR7)s=3ao z!8Hz)$>crMEWsH-V_U@}LA!&33UavM;FwOCGhepsUP8_xTVo9>B0eVty7vz1S87at9)U4XziK?PC*$Q`+s1QTbmhYl?J^l6VIb5L#MNR!^C&X& zaZ6R&4zlZeN2fCXxGOy2@a>veaMGiH-D}H%FDbd!MY~9Nqi5;elCT)aek5?g_chYn z&tNFdcljq-b;hd<7<=U7i7JWKgYEl2wDuoAZ~eR=cno>cz)Js`kea2Ubd<(3hNP zJr%E!=*c68+?=L@5g(Ei9gh92u^8HDt_X2lYI*cq2U`}q<8}NPe8vgsilFntUH@Xy zc3v3H`VZN|IJ8oi*(FY<<7a=hJT(XPd=6Qdn38rJx-B?ecc?}q65>W5J+=KHPY49j zSLgkU}+GVAMIRai?q>s2f7*_1N`Wnbhqr6cw;-;#wc-y8Q=^ThAmzjkNL-BIF zIH(hR*-$jbHp6webh1f~ZR=$nZILec6#{!z+Wu^Y zOJ%{|tk>L{J!W$ax2Tp)a9Lc_U$mvq(VhWfq+c?o=z$&4wj)&y?G9Ic z%w236&TrICUhZ#sc%@@8bapzMYg5m_n6~lVtLoF`C?L`#INm zNeea1rQ8w7JleQ}Dqez5|7aiFYds!b!G6<)kCK;_cC%wX-wEr;4#P`H%6dIMj$3^} z8a=*&9I3dykF#2_H;%Yq;c%V6f)T6nM5xEgNF98U{8W2cafo2G9@p?s1sx`Mcwikb zT~memGGw;rlDLs8cL|gmqvRBI8aF}F&X^YRZ6tG&8%8%SIq8_jAv%53tlI@oGCK>b z&RO@0vz!uROi88=_Pon>|7(r>+GX{4X^NM9XKO?inTvW%8Eh;>0@7ZlF_ktL>-8dX}sP6Vkz`xVwOa z-)MO}2#-$qi^ed#@2pDDd&Uq2Q3QwNhN6K69Lo8AUU}ksXtPY+y~!Fv0kp-xb)=+n zCr{L1Ug##82o@!Sg;*%}uquK%Mc{AIdF@+OO}(3T z&PEr^LU0AG3V5Fke8TPiri&}V+DSVo-(1Q<)g1K?vjPW(a1#-H_ID#c(a4ZnGmJyH zy{%kR+b&gplUPrOHfGIur3Fi4>g=|n;8GFb+mFmCbv`Q(s)nm>NxWxATu*bOA@m6g3k=W+cDGXDlwR)#{hJKM8Af;*L! zkLikGgJefvrketE(tBkru$u7ImI!1vay`(llQ9xlVfvsBfl& zRVa`o7HHk!QmDHjIlWybMn75)kW?a_zkS3k7a}*y;l*7&I61 zXQuJEFYyG93O`GZZkc}1xhA0V(VN0F%qb{$boawHTQ^(dpW%;WQfxLo&&;{qJG`AI zEl)Xf%=63=1tZ?cI~|v29gS|kx9yS~yFrsn={MizaV23@khuaqFlfZXl1$YD2EdXI zCN7AJ8JZa*IEQ}YAeJYHZ!~U@&w*2CE1y=zp1RbJ8Ww~!_D&vtq`fp&-X#|vg)((K zW&jf|R$M4*e_|@*f5`B*4v6A>>@o;6zk9ohYwfxf)Tud}rgnUg#wKy{!Lm+F5|u# zyI9GoBWNsBhWSwirCU~nYk?-S;w5pBZ&M0x%W+P_tA*y0JQmQak8!$_1x*JcMJwn& z0Jj4i;206*lbZPDf7>uw)b~5Ka@5Nc-87n7YQ~bd_NZV^XgA-+xH7KPPA`%&;_7D+ zyW81c?mP9_`bi&(axA?c)ID0jpTG_}5`B4iRoIxjIn#EhLCKK0$X`n>EB>MJ3sI zPvj1SmN#*hk6k@!WbCstD#%mS%e={oMrIx5M$+*y(>yTu@B8MYIl%dpesc_eIlM-T z=|F~SOAg3HOS#qM%O%*WuF%o&F|5f?HFNUD>L>8`s`VmC6 zR<}0p3|GiMs!2hW#q?V6O-5Vr3yiY{`u!{Z)#^MAsO^{zqiE5K?qgU!G&-n-bfFOr zd3NK`ex_&Ew7`?WpoPrNC7Y;uS|AVJ9u56LI~ljNmrZ}c$dj^3hh1$Gg?CT9 znU*N(ofP!IPeR2?;eWr>@I+i*gDi!(&!=(-vl$xl(Qf6O9zmwizD6z~;5G8oda8ha z2@6=DH@uR>iOGL(^Xl##2qTk#&_;(M>^>Z?!WFQz>r?@S*Z&UNzQ_)`eCF%4ox2u> zNh-Q)T+eTmC5IQ)9WlNEiYtWm1d8s2Dn@de&FcSp z{tXWiO;2!<+^P(wmsOSW`Im);xpSLebl!}yw^j5FPUOSZ^ML4ZAoHB^F2nDu3=#Y> z`lb{65}8;$f=qQ~2dh>~WQ{^rya1C0%!Wo?xsX%ds$7eobwchWT zvXX%n-u&g4^Dn&Xqde4M#Sx^~F;|C6`GtK`VkVxi2p;?*^y|wCVs5D8UH#vZlHNd4 zqE)r)fXlFWo0hS_;>5b^3aZXc$jn&6_mFi+}RYgq>>L@AO8Zv`F6lNmlEwVEN*ds!usl!)57%N)J*Z zaK{`^O2^x0k7_QCx#1+bI8Oq?AR_TQPr{Dmy_T{NYM;fB*ClLJrm=aeQJ;L!92QtY zj}bRKY<~%{A3~Osi@-IrHt})eC(Kg8@vc%PEHW-1{iuhY=Lyi=4SGQaIS$G4-_A}+ z^JeROJIXAnQDVYuLWnZ5s*b>Z6$SY;JjEI|GB4I8a)5csS|&5e?;RbbdgHQ0Gfjbc zE+6Zd&u;c=Sp+0+hu57ejjUO zgNrG^%QlRJPZIyqUk8G`93)ZNZmvPR+3Gh^Z}N)wH#ImaP(jAj?+?XfB2$F8l|m~S z^ULs)?~48&+RDB~I-wHz^G^#5;1DC`&USJ!w$5pdV!hu^h{tH_Co&%>?b%Q;M zNmml8-Q~`4m$!13;1;t@XAm<oxVJ8HgMjr7t@G@~T-=;kwq${F zfv*_FLlG@4&>kYKTx^Q znWPV~VGGJDZf)L#?*y?N%8i3F<_&q5o@~`ip#0@-sYLj1PM6B~E@I;QWpFG7oDnt2^94-FH%f-#mh|x#@~i6cU|Q6pA+wGHRJov8`Eo36S8tiQtuniV?)j zfBT7TcBd5Bqf^9N{fA9!fz6M3Bui^a!w6A`-kuo>C&p{2UQr@GbN(^bKTr_yI7=+g zAD`tjYvAat9YNCym6vlYdq|TL+2Z$br55i@z2(`KjjHn|S(9n6gYkHU1x*-vs$eo2 zlFc?j%C4;+0b?1ZG^{6{%vBm0z)ok12jG&3L>D6Is_uZ@rM8~+Sq-pL=lAY5+NDja zf?ixeDpohzwQ6PNx4{=n4L4cvt?vhk&R5_{wTXLcqGc2#x-@md>?uDC_i`e2)1a?` zsv9MDcc75viw}C)-l?|1y=zd&4`Q82356&kC9{P-+!X!ccfK+?u2BQ?FgYDl*_{1b zIT1cZ&9Yis?37x3=dXhM$^Vd6)0f*|w*rH4u z!8ZTUa28PRzjw>#HFPY4YN_Kp5M9hl#?8+{q;Gw{^^LuVBnhkaHw!Po@YE`ysSFA+D=D9@}sa;?r|+V>I|Og#Du!=&yw*1 z5L8+$%Aco$LW-Do7XVx=0fkY(l|tyzeN!xp_&4R$iZ3{)&N{o&!&0yKe0p#|LSPM_ zd7*~1Mk!pL*9F4j!7oa>3R2-$?~7yv&2J-k5QJV73c(BwK8J+x-$S6oxHppW@Nx-C z;iJs(cQ@i@!MU)XL9vV&vWbRz!k2o5t=6TFF?5~GjjNCE>ag8xSekz0DWh}Fg*wS= z>rwwIkG4&wx3a~aeI4=Lo(8ri-=VSe{88EzTtEGj5uX>xzYmEbxu60Qb2N(^>Mht; z7Iprt9Gc0MFCc#lW074br3Bn#y3g+5@RuC8kr#=Bsf`Bi(#BPyn5!*rrwxq;KHxs3Dh~SyF z=SF#9F$tlCnD!*YetxRS>1-#EZkbTGg2hNO_kitCmZ)Ng_?hQUc_$h0DOYi+CPhxb zz>i1vjH!S9Em-Dvx76pTo1!M=`4t=`A!g2ekLUOeYnbI3*|Ht%GK0!N`HbLQa<-p5 z{OGckIa%U^Mmue|+O6ruPP139`JIU8F6vs5k>1|y*t=if3eCv_ba^q%omU2JV1z@e z@jkCJ6&;iGhvhNzzKd}|qBdScQrtmz-DNeJERcoeg4DG#lJX=lCx^<pt#EIhAVI167+I5#c?A`F32ltqT^Mu{ zA=_-a`Z6KAPENUF4Z*~ZM`zC*|2TF!#-fSgb`q4D9B5z~xvvPJKGajf_4vBP7E6AX z-B7hiEgg`4c%lwzKnP2Wy!a%9aV^b7gu#G+no^*^y=#%dMn{#WF*7A7>T6EvfCqsk zuIuz2Y0#DjAJSN>gXD*9mBVj|F44@X$vKA^B!ka)L#Zf~(iEMu-us!gObImut8(BKbfGz0C*VBzN8{gKIk(bBn%1U-XXbiZ|rK*k59w2?s}Zx zxlvbi^DV)@q!Na<_@-qLX{xS+uyDpxXM7#q*58`JolUXU4V!K&rNf-Q_?dUeZMKrS zCyUE$^{+YT^NDUdAF~RemrME8x{;(($^6S-Mux@;+eCOvsSWjgS=5Gv`Y#|KWm^-l zW+pO~52<_a@i1YPowY&>P!-!3KZ@EX|cNL8{8$V?DH<|`ec6|de)rl4xN z$=+y2ccBr%QY>NSl0}5OXbdm1f02YI;1y9?`b6A4sukmj%Der#Wj<*()sl-DOniPc za^jw55WRubShXh0yws%rUD}n@vPicq8u1)%8#FD%){I$?)w_`&Qe8s8?x6`gGnjH5 zCFILe=dKk-11#u{%fW>1`b*yVyfz-#JuK?zu+QR#2Us*z3u|V8YDtPG6l9u?*yLOm zH3B`s{wS>moo0xy&yv-=Ue%Hw^Lg-XCd%R9hw3O4uv_A*uz3d(r(XPZx@RqX(mH-* zwV;`>Mrzbqm0hQwwrv8~CN>drE~XP`f1tzW>0_zKGo;>F7AO+W2x9bP4kT!s;|VC{ ztgqOsA^(lJZ+-H|5>OhR*^FURxqR_Izz)++44|npi*m(odbpzQ?PTV2h5qCsEW-L^ zD@4A-1mJVWyODd=p3|#K6m^=+x2$fk@ ztbdw!Tmm2=55#STHE-lrF{`aH9KE(SOr{oxE=jfTqNX?YcFl{dX_nO1%&R)>Y7N@z zutt!tdlH-A)-bn8ul6nXk~9siNj-zvvXFv$Sx3>*f|m zzi)Z(DMOM1c)53I9=jRu6BWR5Y(Y@_eKaeA7l{{tQ|L$e$I$pkQpIVL6JHvIq1W)& zc?^$bs-+YJib|K>J?6wFxS4e%WCkhRG4O8myd-rFTM7xlegY;BxaGM%j0i_kod^1} zJqeA4nhGn930O56)$2mY(-fIya8ZUxSSZ)a)MsKx!R@$mji@Hi(7=qqJuVdl!(!J5@C7G2Cba5338EHp{FJx7m)9;ZHI-!|w@owJ#dp~Q`s_l`x z{er>r!@s=DaWkNcv=Www%l7;3hib}ej%M~4Qh~geY}zzKuL0&u-UM@*q$$88c3;-W zOm+q7RdS^awBEw~6!cPCstpj^lP!FA0P^V5V{OUCx%_1!h#7>rDqCgQsL;OI{c_El zUZqef4#@Z24G}Le&yT^z{-*&Ey-N>}{JNACrcl21snDf#jTCkwTgUQ@7X$*@#MoJVPo~xLs>ZTQZfecTwjO*;=CGb$ORC z3!E9B(x0X|(JV>B${id<!{k6yYZI(jsy6AT@1;JEQX+qA>YD)7$P*Qq+dLvdavtBu zPnrwGVGes-4}g|0FT_dr{uWoWdfx+}h%lIdbCFGYTs@9-2rhvz_1GCly+vc^Bs<~X z*;`}H(jf{gmDrC46MWTr_x8_G895Q#f@4A5?yQ`)BQ`l6_7U*x2cLnEwcVIl5n``?5|6LIqp=3+yyL}V9k10QC>Z53sOH% z?JmJjJ&QbLj9%`^2~EPu*G1o})p$@}`6tF6`EQCr8DO?{I(d~+zN$Ko*WZ8>LY!Q3 zJtH$1(H{1@Zx<2!gKO@{wE_Y;^kS{f%H$7Q)c+EG3U?7i#gI+AdoqPg6cGpBMsMiQ zbji-34Q!M|Ib~@cw%qK!vw>pwW?_n$Yr5>ylfrz!Pu`?6C=^Xv@JOl4k-c=C$#ymLM5$#Pogv2g0`=LfgX0Si%d$GPEQINia z?Y}0R1VHm(rI3tEa67NTQ!vOmej!ayOr>l_o;1Y>K(POLH&P3eETo+1vf?-7-^M(7 zc|ANz)Meut>Y?)XUIDF=C?kmml!4Bst#*v@xNg|R4jykNBtE%vJf(^Si;v!~SRpq& z@ljWy8P*}K3X2`SGj;DKaE9ox)E!nuWg>D27K${ht_;(x9ULWJMNsF_!KIHXti?~2 z-f`2I+qA#afTGGTrSI|ATE2iz*iLl3>gv;by=dVdg=AYo8&nkgcBw2D;!v_-GvQdq z2bVAwHrk?B6uQ|ryu7$Gr-;$PMtDJyudm6_@rMYzTf(}33`mf<2itF;+t)^D`O9=0 zoGQ+5)=LwA3*5s^{vwjQ9i>m$*vU~uOcgBZ?QmrHP_~@U#KY7M-(JE3z$YR#YQhH= zB<1pNVeW?}IAm-5E)43RW!7akd#@cPnP&f@}op@9ln)D06ZBi5FtcT6S=VyJs#)X67*YKnpkTTlm>`^l<)Q z5z>bIXzKWn1WR53MnJj02fC=EI$K@f{0}4dupJ73AOSSCZQHhOzSy>H+qP}nwr$&X zGJR$>i(X9qL{)7r*@k*lWG>l54Pr#4se)(5SSWk+6+)%fpxIayw4+Dj=yPzy+j3Rz zba7qb^p?vHdJqNeu#5A=5IN1yMCg)CsTgx+Bt2ByFfkC{Pmil4Od?I=OM=Yiz(pJ! zjt{z3t27HE@aQ8^%NUc5H__7=+U)qpVkWji-7yp36eBXo8U}g&0i2#UTIOqPEj1$E zhKQPKX>wouU{1u-WaGKs z<{Ap$cpnSdxNs=5IQP^z$8E>G9TFU!Oa)VBo83Bz*yAAO5vnkWJ9%%ffl-DaecIT{ zkank&K)W)PC*EJR?7yPKpMN#m;rK_DI*%Dsvejet3e(TOBb9$Y(@w8w8}qY;z)>~~ z40*dXT5L?&q|hk!0pk z6Fonj%Hhjkjh4sS@tZ%2(!D2a1BHGbg=tliO_L+P7fZjO6L7W>On;2OWrHN8&v4_t zX`KTFGzP!>iXTk8tQq(v8P?B8E!K<6cGDt}lcDz|bkGb%)&_l+3*FCNhyJyUJW9jd zAgDp}s*~I>wYm-?D(#GT__H5at|mPp;m{Ym{}NAr)QlS?=bY9qnw_ms+a)*{)a z4_44Vg3125?4OWR#RQgK)APnGD}<>#84A`#2;{c4VNp?2;cI5tQW8Z{2GlzR+t#m4 zdD0FC=o|-lNce^-pSaJcCnIL4o3k%o-T?xWaJ8al&QgdU^*p~J$4Bk?QtH4g&-VC6 z%}`})4;P5Pn>2X|;8vH;|5Lu&ApD}`IJkg8e;(gJh4*HCBq+a3R1T`5H4NGFW7hpb zdbUqLM-=7eHVJhKi52~&v^%0+px|~u*ZaAloif%EfHkZCdsR?Hqt2aZ;2BvlwxHVv zgq*5=S;6Hu@r<%j^T_7TMbF!j4>SBIf4KJVB_3yy#t{bn&mj|Z@#NU_sIxpk{0I`H za!4J3qbFSUe@Jp8I%ye%6{m*+<}r#r)nLOGrUr2`E1>Iuw`U96^;p9FGIxd0EO2nu zd^a^lTE}`7ygRu(bK5f>2aU5#A&|K$?5j{7@zGW!8Cks7r4=4vQ)EA^wS`868=(_s zRTY}Xl!G`=z8?1O{b0!8C}?@ub?Ujl%5}_XNu3Y!wF-shiBmkRZHl$5E{z@wWd*H{ z;>~GZQX49SC;cLUY6N{kQsFOKP3;lJORVV74%MDO%k_cN{KTVN1Wqnw-2;V;`x1;D z9c{AKqY@ae)>DXVD7oGL<8aWj%4cxMl-NvfL{+&s-25S_CDUCbIYz>@uBjTO@Xe4A z^OTNNy2n&`1F`REYP@#t9oUZeXHeXdsab>`qLUz+V}U#2g;3$2^m?cxT&kq?GyDFM zba2pJPb+(z6l?AB&N?u>Ti5uNr!->KMigUA(b6GNf!nXy{Ao9La{5*|Ah&EaW1GNA zNd)Mt^Q9M}>_)VyPj2Kcw!CYgknX5Cv^gJIo)dPTtjPC)WAIjNFzrPIL-c`(7<)97 zKfhmiWJm95_d1fJ{vxWuujuC{p-g_8aa@1t zR8JRUJnei4$m;{onHGK|gdUU`wR%lg$;n&tEL0IPXy^Qx>#8LN4?%xunymztK8%`Y zz5(z2y_xU1#P+MhZCMw23qQua1e@dXhvBE2H&D{DX*i#U!CJo)g=euoqVy+1QK9wS z*Uac0@RGF&wyLNRwRg>BW^@3%2#;e0y8+rQF){4eAy1MFXa7x_MNHEva>V3833P+I zM9}IMvL{Hwhp*iMOb?n@(a&Hswa7kNO=rZjy~?EqNE5oSo_-w}a8NV~xThc8c?sX< zi^!hxi#VBUlk%6Yt43NSYJU__`9MPp}}M4%#_y1i*;D zdD3(X-0gKwC60! z8IOwRRVsQz_E*qRfa_pm-r&RCSo0;w3X^eEBj_CVs)kPLfhZYFgWHlxQhR~huRMh7 zB#@?J<}mGt+`t8 zR8(rBC(FZKYgcpLccd+|Q7TL|I7L6#YPIfwdstaofF&_35S*v)#S7PO_md6AhZmV2 z-UV8ane(}bV|K29ci)s;8)1P!+m$eq)a@dKPM=Qrz7?2P(BMTuR|;4q!hRjbZ{|Kn zo3(rK;bT2tZy`#sU+Od@#o+-jB09MnH6U!IwJm|Ecl)KaRydIzKA=5h$$)fdl!P;K zhX$<*H?J`LpX=!k-W{VXHqmocRS0M)SpXh7K9zB6YqWG)jX!cWjS%kwVYth z8ma%$I)2|E_L!qfav6V5ww|yOG@hM0cutbQYoaNN1zd6BVlpinB6ggXDHX0(+|>e< zWpVr8J`ipwD|1%%u?_YKVV@wT;}H~0xNMjE(a!*mKmRwb6PnBYr9zLKJ{pJo9^;(% zh$E_Y^gMg08rhd;N+&lq@`!)}M=z}bTY_8C6WO%c{VJYsJw1zDZmB7)#cGQ%Kqzgh}dnJaM0dZ$rKW4GS?Q z`0AUJW};Bn&AsEQ*UxYL+Kt7gd`3WTu)io8PN{=Px4i`I9?V%RO4 zfsRg34MtO%OF7Z$BF7Wpr<7o?Pg^c{ZLcv5tLSbxjI^D6Lj-|KWLh=p39@rTWKHJ# zJtN5Ltg0~j#WTY4m9Z=&XyyJ+@;$XO8ffQd7U6sa)J^J{rTtEgTNEXB>j=1^GX;cM z%aP{nQ!ytqgv9NtgI6FR3Oyd(^a4 z?|T3nMpDFlLGkWhgwaX8YtIvdFz;yRvwZfnEgOZF_2j)+$Uc!X%E7_E(9}tHcan`TjI; z9apj1Zh1Ze$x3rsNq5*IE#pr%-XeR+zDolbSArj@brrTKr!?=Uqb(-7p*X-m;yT}J zf*fm=c8Btj@K)q}*3ij&(4i`2%*}Gd0B_P>82A%jhbZEM(h8l~ceB zWWSrK>=n1Y{m-ED=<;9KcN%pQysc(vyO*0^%h3Lex!F|`4Z1Z&4m~Hi?waNZ$y}Do zg~lMZF|E7D+|`#;fqNVuS#l~r?>sCX3XbBh5KJ-idr7dcx9$7P>OHDdHw|O$PtucX zLL5WePS2|N>e}aq32$P}LgkD)#NWK<{QDG@Mm?~jYm5!w>=zz8tYuHd&&YR*EgU&^ zIZ-Gce1M?uN?g7dVyA-BN!KKaKJ3OFHve7HkVC`kxb+y*gywah=+}SODhn!WJEf+| z;gA?;4j}$K)>PUPWqwBdvfGtDKV{KQp+2f4ceE^GoE#H%E>IM$gd3nIf#se&++VoP4jzrHc&>vMCSxyjCQ{D&6tP1-?%Y{ zjot0fL&#A0u$mq0&k)mn8wD3=1PEcp@~cvgn4UMLs0+{vFP|3D|9uL#4jP5BnIGNp z?%8VJn>@Q^2P$y@k-tcP3!Hu%0x_#O?>|I4oN zkx#L5!{yawo($0QpwBBl6sGJq7W}0Zf;IpH)9Zs_U+61*617K+jfZ3J0>zt?RL!DN zVwOv)zYw>PeN2EAk^Je$m?(vH>;$S9Bo?Oo8cIku-jP4-uB0f<%yfa!siwk&4gw6t zx0bfr%Bne3V1+<$4Uq|u7`*ISNQm<%OF3c{*1D#VGMP5{IKn(?MX9x7)rP?!7FuY( znbW>I!V9rxCP_R#KtkmhMjUy!6eUO3snDX397_nL`;xMXRiRk4*d;cVQ)2MiDMwCYIgt zu+e>g@W3MZ;Yc4pQD^nGW2K&`!2#ftW4q!D1&1F4y8MQsGUF2!_?%WS4;;DN0lWLW z+V)@_@-W2?okLEvXkVMg9`7QC)^T&X|Am1WC&9}e*87Kfh+^alCw(`I(Oe1=C;oW6 z79xR24f{7u08AN_lx4(#U9GTt+$Meb;pjG%O)UYuek+= zd*02G+hl|M<@&a7jS9&%m&Bo4bybLa4gEKjUUH=-!`V@!?QU@7eOAqRPz3t}vj)8) zDJ^R}xBAq*K+EU(k8%G6650Museni8L&p0bie z>HYU{K^i}h58b)*-^)W7Qv?cqvgxKs?lwD0nYH67je$G0`!1x^=R7?y{gW1OGze8* z=x!ctOMoA|S9Co6bfj%XbA= z=sPHJ?TehFeS0NGpw?D;J3)ebQg6(TsL;jr~j&cpw98Ulu*s zGh=TlB#@&@nDzKJt&pEJ!)JELg}bdPizO#6#t}q)nq&=jIGS#4`%fb9Gq8ElvlZ}k zc7Qm}npJX~N>P=kr`K5JTrT0g)SBlU=rz7s0p>K{&L|O1a!P7TuHZdh$0y&~Ai; z?8CPjltiIz{^zix%W5PX^?K?AhdIJ$7AOvWBm?!YTvguOoIa8uBX|H{NWoT2nQ$n4 zWbQqOWa1CrG>t4I|00%6k?BJbJ*3$0)7Vjlf5G_j+{VD8Z&?aq|LKIYYsiezi?b~E zGG=MQMW!zZn}BUksA|$yRvK#*SctHWHudfT3uhvwV54s~mO#WQwr1h>dFam>S?N|s zw72;Iej+mjYKQeYjYz6@HG|ptF&ai92$ssfJK)e!-GYq=!w{qS?OCiQR}9Y>B#8i{ zdYdLejRyS2_YbewO{BW{+KPvGh$>1?hX+{5Y3E&T#SHuta4rmK!++h*ZrpK~n6Hoc zXoV{}IThqYv5^9AHL_dB`^jXAaw_=rOr$*zce2Q&`FTDGqI{qq$%C5^isQsET_~PN z1Xu`kRSWl6Gia}ui#)f`xjr)l#ofdT`o|uI7vDHzv)%8z4`p7TZYA06wNQ>>rJA`{ znZj;6{=_#aN4dl~LeEOYnTeJvf}d!+gZphVRRK0}aTxfJ73t@zS-MxvVIXYk*Z)2y ztJQs^%6~3pd)Ci2dw3%f71=Ny3$?V;Yvvk#Q82J3ELfZ=dsmXvBoL)w`}>YYoPHG@ zD6*$GLrUj^)8b>k{y^<9<4&o2mp~e$1NFKpUvZokN##DNqzPF|GDc#v+b=H)!KAF0 z3VZPNQQ|yWU}BMDy_TV#-13Hv?Az|9n#}>R+n)HWa4u}H_ zsFs$?jv|rSB^PPg+umSkVo;gHy>%bNno`m{!cz9tfViaSU=}u9vym6*y2B*6K0%t! zY>8%(KgJ^&nH({=f1WXxhHdv7$g;=XapcPzE*M2$EWz4}sKV^q8f%dz1!iT#WAee~ zl~ajz;fP+!B?HGiu93J!$vQ1lw{Lm+R<>xxa;J7=5eKtUsZ2gaMhC=DJeDKcUuUa& zEDS#uH*?L46^LLH>^_bgj}VrFfsX(!auvG%kqfdz!3pWaDAQ1gXE^dsgUoVa%EE#U z9myF_m_t0edV_v2C3->)zs&($)Odm2=+EmQBphqjPaj{p)yHfQB!UAqW!y1rfcMO} zkA!+QoXz9$vaaNZOoeLPS2n3M0c|>aK@i03&vH*D=UTvyK`HEJXVGWh`-norfNm#W zk_%z(%)-dxO5yb=TWFOPoXmig{!S1W2nmx1Tu3vu+Q@-)!!4BiHAnJ!c=yXvVj&e6Usj~eJ5i_WC z-mRtcMFoy+3Mils6w7mi>3sieY-h+IRwI4@M^R(zfjcl$-y=FF1C&a(!|$`^Y*}qD zCf))QG_=;Ku$9k%$_7}4Z0=I@k9s=4BUv7)MqGv<;3ncOV$miHj)$>jNINpv|L!_= zE6lCO0-O8sR$s1U_PGBD9@b%kXDnh`*}XBtHYN{D=SPL;q6}d#91Ne3pc@5dRj!^Im^dbA6n!%je{YITVgy|F1n)l4xeY68e(KUY0C z%G|MRla{Tkb{*+iTW$}j^3z#}|GHKb`&Tw>HCP}s>=W!G*wxx97Q1{aWC&bF>2M4+i5Uqn(4%9`p`&kBn4Z(#i&b>exU z>_KmG7x{ZrfF#1xL}z`NbC`c=O5`|N+X#tu=9k5*+c*9&^9&d12lsc#&qI;`@j+Q7 zo=V5{7w1=nSO7kv>qqhsuRg7mw0RcL;WAJN7}(3S%o7C`Bi-%2+qgBaZc$MQm@-a> zm@mWD1-9lnO;)7p`%r|#impt}QHm$M*BxwKVZCS?Jc17~p&me) z2#(y~cl!ejkEB9q(igy^41I!(Fa3+nRYa$)(8$JTA?0bloo`am&V`=hvBaNsLX)WS zy`8sGa3AJ(3jO=Ck0bBo**;^pb*28KFnFIo>x9$Eik)e{#~YGy3h-;xu?)diFKnMCPLt`{oR3Wlf+**YNjJ z%NBb$%$e)hZYDCNN~!ZGteW$gFWjP>;Y+#BwA-CdCLq*KPYuPA-DJ&yrkd=r_Ka%Y z*Y$ENDsHb&hbaiJtqJ)ie78!EgPFEAktuaI0Wh)lgl!NN`RdZg!~QC^WwDIPL9v1F zA0mp5@LL+5lz>_bXDrKJQT{~rU7~Thw zNK;j(fmuZPd2wzGUqMJ6uI&&s-3w|WqJp8X)q(iGf)_aPKky}H!|4X)XdN))wvP;3 zr#2)BhicX@M7hl80H;uKnlLp!2z*lPiLNPGa6lnvenOcqB10idQtu{p`fdMXUHh3lZTgjhXo&DiFk1S&>jd z4%lKOvcTTx|BNm_r@d+{io%R@1Oxxgu_$a~ZS7x#%&{UBizLi38UB#09J#D;z7TJ_ z!GWVG>PB08fNEy!;;Iqkh(e#rR`|Lo;SYhN#N!Q2FJY-qoV<1bi<5~}1bSSqb0iCS zBTtKRDN`n>GVFn~9?G9VI7CP}3MIF^k^Ysf98N>x4(#;(s<+GL@0dyVF2XNF_>nvf zE~BHwot=Fpq3{DNHP=@sbs?BKYyw-~X5M8RzS9@-Gh-`AhnUv<`ot_%QI6U z=xp0Jdh3c?hc&c95rCl34I0H3^t;M7;<9nH3iOi zS}7%(it*0M9;?PWkPsCwyC!e7tlCs+q`ouzw`9kmFl^YusNhbYc}hk5@m!7`>vHu5--EDcda}ep9j=m?_9|nvAn>#mN0>=6{QaQR>R&A zeTvyD%X;gI73GoNF}dML3)ORVK2|?>7}L_bc{q?g1J-o3&WwCfYUS`3WA5W5ZVqvo4!j3+% zq>Xr5HRAZ)p6(sFd2XU0oEpzkj-d=EE(cL>;I2%745vpr7u>^ovY}7c`tVGwU$pWF z23S#4Sr#*(w|`|V?R7VTa3P+^g6cSI?}9grPcod2D(iLgtfz4W-XbZkCHtQUgG1z5 zw+H0+U(#xqJVnixEp^!}$ul<=D^=Gy2`KNOW&9QE~NYnv!zeawQS;ke$4SVybbaZRn&4aHs1gA$fwWD##acmgbpJ| zH6`8_xk9EIW|S6KyI)d)G-6Dx2ir#^G5)hhkSSEGfE>+8I*JXo6!3%78T4%VN9Qv& zeVe250v14S&rWq&H}zZCuEt>7Ts^F)du&;E!TcfH>wjwpK=Ok;bGn4Ay*%Me2*ceW znE|}PfXF!2@KI z8w_izSk~1_z(2pXiSky?C$;gzB1ZGi&-Aq~+Ywn3Umx%Bjkn5|7(WqKCTE@?l)C;n#8PV;yOs`eE{uLcRXinqeb)rmXyNX9U+U>?rVRzFMY_8_kT(1{-b?@s#B!fCu_rTpxZf{;D|OFOr*L6|xezG-6IsIKI`l)>dRW1FdT=pmt#mRR|DvTqitCyn5YS?YS0VmP!Yo~~T)|w`_CZkqme`@wkraDNF-;VCVv>W3 zqkTpg?nyALN1e-qp+**qF?N0dJ$a!fEEe2{7op*F%aeD)0~Xv?GeAtdRH+}R>^dbI z6M6GgSsnuW%duG_KH3K4!7ii1HouY67+NWVsz%FNCuGr-DHj6vtrxI@+vmWhYM&a< zfs(;;N78t1U^S}+0stpy9R`llXOF8m1mHYCQ=oD%8ETgKHim+o-Sv7xu(7k(dWDcU zJgJhRAV<&$ZO1yJo%X+n6 zx}qygONlCPET1vsz^&kbOSqTz0_$Tq!L!o7GvF(SB}F48LLhg3BcWaxckOxdwT(pX zZ7ms15i>}4e-1vdh1gLK>MI-d6C$S5L)$|p$5l6`wS?>#P3ZRR#7JuS&sHF?9#4EK z3W94wXFn*eT|5f=#wLrWbZc1|el%CROmCJ(+dc7~<^`kR4<7Tib!rhD;MCmk{BnefsUG@r*xVy+x@N90kk9)$(1Z zCC1sK<1mVm&{Gjxfx`Hp`cF^^`?JL?2^wmwM~;F4bTJu03cdM4=epxek2q)GLbB-h z*p0g0wI~hZ1Igb4T34W^hC;RW_sNva%0DKI@sz^2fT8keS!g4$v_W0;WSR1{vx+Od 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�})4V$Vssn!)~2Pc>=kp6yKNRYy#UR7Gjy8#+bft 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 z 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⩔g)#En?`XqVFW6a>o#;m^ZJ6s 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

Lc-y(y3tPbCca8utiQ|`CVbRk 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 z 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 W0z&)~BmZEJcwhhkA=uY*0Q^6q0-Wjq literal 0 HcmV?d00001 diff --git a/docs/backlog.md b/docs/backlog.md index b398515f9..0ac1fab36 100644 --- a/docs/backlog.md +++ b/docs/backlog.md @@ -89,7 +89,7 @@ Itens decididos como "não agora", cada um com o motivo e onde está a evidênci - **TODO:** montar um manifest com as subcategorias ausentes (Hardware, Intel-TDX, coreutils) e rodar uma amostra delas depois da campanha de Cover-Branches. -## Caminhos podados pelo assume no KLEE não geram teste +## ~~Caminhos podados pelo assume no KLEE não geram teste~~ (resolvido) - **Sintoma:** na campanha da 9.0, 29 tarefas de Cover-Branches (25 XCSP, 4 Floats) terminam com zero testes. O XCSP cai de 76,2% para 58,1% de cobertura média, o que @@ -103,4 +103,4 @@ Itens decididos como "não agora", cada um com o motivo e onde está a evidênci - o §29 (`safe.c`) continua dando TRUE; - o memtrack com `sleep-3` não ganha falso positivo. - Depois disso, repetir só as tarefas que ficaram com zero testes. -- **TODO:** aguarda decisão. +- **Resolvido** em `e4e0b74c7` e `6848d2395` (ver o log de experimentos, 2026-10-05/06). diff --git a/docs/prompts/build_prompts_json.py b/docs/prompts/build_prompts_json.py new file mode 100644 index 000000000..b155a71a9 --- /dev/null +++ b/docs/prompts/build_prompts_json.py @@ -0,0 +1,59 @@ +#!/usr/bin/env python3 +"""Extrai os prompts de deepseek-property-prompts.md para JSON. + +O markdown e a unica fonte de verdade; este script so o transcreve para o +formato que o harness consome, para que os dois nunca divirjam. +""" +import json +import pathlib +import re + +HERE = pathlib.Path(__file__).parent +MD = HERE / "deepseek-property-prompts.md" +OUT = HERE / "prompts.json" + +text = MD.read_text(encoding="utf-8") + +# Blocos de prompt sao fences de 4 crases marcadas como `text`. +blocks = re.findall(r"^````text\n(.*?)^````$", text, re.M | re.S) +if len(blocks) != 9: + raise SystemExit(f"esperava 9 blocos (1 system + 8 prompts), achei {len(blocks)}") + +system, *user_blocks = blocks + +# Cabecalhos "## Pn — VERDICT (descricao)" e seus metadados. +sections = re.findall( + r"^## (P\d) — `([A-Z-]+)`.*?\n" + r".*?\*\*Map2Check:\*\* `([^`]+)`.*?\n" + r"- \*\*CWEs no benchmark:\*\* ([^\n]*)\n" + r".*?\*\*Tokens permitidos:\*\* ([^\n]+)\n", + text, re.M | re.S) +if len(sections) != 8: + raise SystemExit(f"esperava 8 secoes, achei {len(sections)}") + +def cwes(raw): + """CWEs rotulados nos runners do repositorio. Vazio e um resultado valido: + significa que a trilha nao tem caso rotulado e precisa de corpus proprio.""" + if "*nenhum*" in raw: + return [] + return [int(n) for n in re.findall(r"\d+", raw)] + +def tokens(raw): + return re.findall(r"`([A-Z-]+)`", raw) + +prompts = [] +for (pid, verdict, cmd, cwe_raw, tok_raw), body in zip(sections, user_blocks): + prompts.append({ + "id": pid, + "verdict": verdict, + "map2check_command": cmd, + "benchmark_cwes": cwes(cwe_raw), + "allowed_tokens": tokens(tok_raw), + "placeholders": sorted(set(re.findall(r"\{\{(\w+)\}\}", body))), + "user_prompt": body.rstrip("\n"), + }) + +OUT.write_text(json.dumps( + {"system_prompt": system.rstrip("\n"), "prompts": prompts}, + ensure_ascii=False, indent=2) + "\n", encoding="utf-8") +print(f"{OUT.name}: {len(prompts)} prompts") diff --git a/docs/prompts/deepseek-property-prompts.md b/docs/prompts/deepseek-property-prompts.md new file mode 100644 index 000000000..be40d46cb --- /dev/null +++ b/docs/prompts/deepseek-property-prompts.md @@ -0,0 +1,454 @@ +# Prompts de verificação Map2Check ↔ DeepSeek + +Oito prompts, um por **veredicto de violação** que o Map2Check é capaz de +escrever. O recorte é por veredicto, e não por flag, porque `FALSE-FREE`, +`FALSE-DEREF` e `FALSE-MEMTRACK` compartilham `--memtrack` mas são defeitos +distintos — agrupá-los mediria três coisas com uma nota só. + +Referência das propriedades: [`../Map2Check-Propriedades-e-CWEs.pdf`](../Map2Check-Propriedades-e-CWEs.pdf). + +## Regras de simetria + +Para que a comparação meça capacidade de detecção, e não desenho de +experimento: + +1. **Ambos os lados sabem qual propriedade checar.** O Map2Check recebe a + propriedade pela flag; o DeepSeek recebe pelo prompt. Um prompt genérico + ("ache bugs neste código") daria ao Map2Check uma vantagem artificial. +2. **O prompt não revela se há defeito.** Toda formulação diz explicitamente + que o programa pode ou não violar a propriedade. Sem isso o modelo é + empurrado para `FALSE`, e a taxa de falso-positivo deixa de ser medível. +3. **O vocabulário de saída é o do Map2Check.** Mesmos tokens, mesmo + `UNKNOWN` disponível dos dois lados. +4. **A definição da propriedade é a do SV-COMP / CWE, não a do Map2Check.** + A verdade de referência são os rótulos do Juliet e do CASTLE. Onde o + Map2Check é estruturalmente cego (ver "Assimetrias conhecidas"), isso é um + resultado a registrar, não algo a esconder no prompt. +5. **Um prompt por programa.** Sem histórico entre programas, para que um + caso não vaze no seguinte. + +Os prompts estão em inglês: os benchmarks, os identificadores e as definições +do SV-COMP são em inglês, e traduzir a definição da propriedade introduz +ambiguidade que não existe no original. O relatório em volta segue em +português. + +## Assimetrias conhecidas (registrar, não corrigir no prompt) + +| Situação | Efeito na comparação | +|:---|:---| +| `Shl`/`LShr`/`AShr`/`And`/`Or`/`Xor` não são instrumentados | Overflow por deslocamento: o Map2Check responde `TRUE` por construção. Contabilizar à parte. | +| Aritmética sem sinal fora da propriedade `no-overflow` | Vale para os dois lados — o prompt de overflow exclui `unsigned` explicitamente. | +| Ponto flutuante é *no-op* | Idem: excluído no prompt. | +| Sob `--wasm`, acesso fora dos limites vira `FALSE-OVERFLOW` | Só afeta a trilha WASM. Aceitar `FALSE-OVERFLOW` como acerto de *bounds* ali. | +| `--generate-witness` produz *witness* de corretude para `ASSERT`, `FALSE-MEMCLEANUP` e `FALSE-DIVBYZERO` | Pontuar pelo stdout, nunca por validação de *witness*, nessas três trilhas. | +| Orçamento | O Map2Check tem *timeout* explícito; o DeepSeek não. Registrar o *timeout* usado e o custo em tokens. | + +Duas armadilhas do lado do Map2Check que corrompem a coleta em silêncio: + +- **O veredicto de overflow é gravado como `OVERFLOW`, não `FALSE-OVERFLOW`.** + `PropertyGenerator.c:97` escreve essa string, e é ela que `tools.cpp:228` lê. + Um coletor que faça `grep FALSE-OVERFLOW` em `map2check_property` pontua + zero na trilha P5 inteira. O token `FALSE-OVERFLOW` do prompt é o nome do + *enum* e vale para o lado do DeepSeek; **não** use o mesmo padrão para os + dois lados. +- **Use apenas `--smt-solver z3` (padrão) ou `stp`.** `btor` e `yices2` passam + na validação da CLI e depois são entregues ao KLEE como + `--solver-backend=metasmt`, que a imagem de referência não compila. + +--- + +## System prompt (compartilhado pelos oito) + +````text +You are a program-verification engine. You receive one C translation unit and +one safety property. You decide whether some execution of the program can +violate that property, and you answer in a fixed format. + +Assume the SV-COMP execution model: + - `main` is the entry point. + - `__VERIFIER_nondet_()` returns an arbitrary value of that type; every + call is independent. Reason over all possible return values. + - `__VERIFIER_assume(c)` and `assume_abort_if_not(c)` discard executions in + which `c` is false. Executions they discard cannot violate anything. + - The machine model is 64-bit little-endian (LP64), signed integers are + two's complement, `int` is 32 bits, `long` and pointers are 64 bits. + - Library functions behave as the C standard specifies. `malloc` may return + NULL. + +Judge ONLY the property you are given. A program may contain other defects; +they are irrelevant and must not change your verdict. + +The program may or may not violate the property. Both outcomes are equally +likely a priori. Do not assume a defect is present because you were asked to +look for one. + +Answer with exactly three lines and nothing else: + +VERDICT: +LINE: <1-based line number of the violating operation, or - if not applicable> +REASON: + +`UNKNOWN` is a legitimate answer and is scored separately from a wrong one. +Use it when you cannot decide. Never answer with prose outside the three lines, +never hedge inside VERDICT, never emit more than one VERDICT line. +```` + +--- + +## P1 — `FALSE-DEREF` (dereferência inválida) + +- **Map2Check:** `map2check --memtrack --nondet-generator symex ` +- **CWEs no benchmark:** 121, 122, 125, 476, 787, 822, 843 — e 416, que + também aparece em P2 (`use-after-free` é a dereferência de memória liberada) +- **CWEs da propriedade (referência, fora dos benchmarks):** 124, 126, 127, 824 +- **Tokens permitidos:** `FALSE-DEREF`, `TRUE`, `UNKNOWN` + +````text +PROPERTY — valid-deref + +Every memory dereference the program performs must be valid: the address must +point inside a live object, at an offset within that object's bounds, for the +full width of the access. + +A violation is any of: + - reading or writing through a NULL pointer; + - reading or writing outside the bounds of an allocated object (heap, stack + or global), including off-by-one past the end; + - dereferencing a pointer to memory that has already been freed; + - dereferencing a pointer to a local variable whose scope has ended; + - dereferencing an uninitialised or otherwise indeterminate pointer. + +Not a violation for this property: + - failing to free memory (that is a different property); + - passing an invalid pointer to free() without dereferencing it; + - integer overflow, division by zero, or a failing assertion. + +Answer FALSE-DEREF if some execution performs an invalid dereference. +Answer TRUE if no execution can. +Answer UNKNOWN if you cannot decide. + +PROGRAM: +```c +{{PROGRAM}} +``` +```` + +--- + +## P2 — `FALSE-FREE` (liberação inválida) + +- **Map2Check:** `map2check --memtrack --nondet-generator symex ` +- **CWEs no benchmark:** 415, 416, 761 +- **CWEs da propriedade (referência, fora dos benchmarks):** 590 +- **Tokens permitidos:** `FALSE-FREE`, `TRUE`, `UNKNOWN` + +````text +PROPERTY — valid-free + +Every call to free() (and to realloc() with a non-null pointer) must receive +either NULL or a pointer that was returned by a previous allocation and has not +been freed since — and it must point at the START of that allocation. + +A violation is any of: + - freeing the same pointer twice; + - freeing a pointer that no allocation returned (a stack address, a global, a + string literal, an arbitrary integer cast to a pointer); + - freeing a pointer that has been advanced away from the start of its block + (e.g. `p++` then `free(p)`); + - freeing a pointer whose value is indeterminate. + +`free(NULL)` is well defined and is NOT a violation. + +Not a violation for this property: + - dereferencing a freed pointer without freeing it again (that is + valid-deref); + - never freeing an allocation (that is valid-memtrack). + +Answer FALSE-FREE if some execution performs an invalid free. +Answer TRUE if no execution can. +Answer UNKNOWN if you cannot decide. + +PROGRAM: +```c +{{PROGRAM}} +``` +```` + +--- + +## P3 — `FALSE-MEMTRACK` (memória alocada e perdida) + +- **Map2Check:** `map2check --memtrack --nondet-generator symex ` +- **CWEs no benchmark:** *nenhum* — os dois runners roteiam CWE-401 para + `--memcleanup-property` (P4), então esta trilha não tem caso rotulado no + repositório e precisa de um corpus próprio +- **CWEs da propriedade (referência):** 401, 771, 772 +- **Tokens permitidos:** `FALSE-MEMTRACK`, `TRUE`, `UNKNOWN` + +````text +PROPERTY — valid-memtrack + +The program must not lose track of allocated memory. A block is lost when the +last pointer to it is overwritten, goes out of scope, or is otherwise destroyed +while the block is still allocated — after that no execution could free it even +in principle. + +A violation is any of: + - overwriting the only pointer to a block that is still allocated; + - returning from a function while the only pointer to a block is a local + variable of that function; + - losing a block on an early-return or error path while the normal path frees + it. + +Not a violation for this property: + - a block that is still reachable through some live pointer when main + returns — that is valid-memcleanup, a different property; + - freeing a block twice, or dereferencing it after free. + +Note the distinction carefully: this property is about UNREACHABLE memory, not +about unfreed memory. + +Answer FALSE-MEMTRACK if some execution makes an allocated block unreachable. +Answer TRUE if no execution can. +Answer UNKNOWN if you cannot decide. + +PROGRAM: +```c +{{PROGRAM}} +``` +```` + +--- + +## P4 — `FALSE-MEMCLEANUP` (memória viva no fim do `main`) + +- **Map2Check:** `map2check --memcleanup-property --nondet-generator symex ` +- **CWEs no benchmark:** 401 +- **CWEs da propriedade (referência):** 401 +- **Tokens permitidos:** `FALSE-MEMCLEANUP`, `TRUE`, `UNKNOWN` + +````text +PROPERTY — valid-memcleanup + +All memory allocated by the program must have been deallocated by the time main +returns (or exit() is called). Whether a pointer to the block still exists is +irrelevant: the question is only whether the block was freed. + +A violation is any execution that terminates normally with at least one +allocated, unfreed block. + +Not a violation for this property: + - an unfreed block in an execution that does not terminate; + - freeing a block twice, dereferencing it after free, or making it + unreachable while still freeing it later. + +Note the distinction from valid-memtrack: a block kept in a global pointer and +never freed satisfies valid-memtrack (it is still reachable) but violates +valid-memcleanup. + +Answer FALSE-MEMCLEANUP if some terminating execution leaves memory allocated. +Answer TRUE if every terminating execution frees everything. +Answer UNKNOWN if you cannot decide. + +PROGRAM: +```c +{{PROGRAM}} +``` +```` + +--- + +## P5 — `FALSE-OVERFLOW` (overflow de inteiro com sinal) + +- **Map2Check:** `map2check --check-overflow --nondet-generator symex ` +- **CWEs no benchmark:** 190, 191 +- **CWEs da propriedade (referência, fora dos benchmarks):** 194, 197 +- **Tokens permitidos:** `FALSE-OVERFLOW`, `TRUE`, `UNKNOWN` + +````text +PROPERTY — no-overflow + +No arithmetic operation on a SIGNED integer type may produce a result outside +the range of the operation's resulting type. Evaluate the property on the type +that C's usual arithmetic conversions give the operation, not on the type of +the variable the result is stored into. + +A violation is any of: + - a signed addition, subtraction or multiplication whose mathematical result + falls outside the range of its resulting type; + - the division or remainder `INT_MIN / -1` and `INT_MIN % -1`. + +NOT a violation for this property: + - arithmetic on unsigned types — unsigned wraparound is defined behaviour and + is explicitly outside this property; + - floating-point arithmetic of any kind; + - conversions and truncations that merely discard bits (e.g. assigning a + long to an int); + - division or remainder by zero — that is a different property; + - out-of-bounds accesses, invalid frees, or failing assertions. + +Remember that operands narrower than int are promoted to int before the +operation, so arithmetic on two chars is evaluated in int and rarely overflows. + +Answer FALSE-OVERFLOW if some execution overflows a signed integer operation. +Answer TRUE if no execution can. +Answer UNKNOWN if you cannot decide. + +PROGRAM: +```c +{{PROGRAM}} +``` +```` + +--- + +## P6 — `FALSE-DIVBYZERO` (divisão ou resto por zero) + +- **Map2Check:** `map2check --check-overflow --nondet-generator symex ` + — não há flag própria; a instrumentação de `SDiv`/`SRem` é a mesma. +- **CWEs no benchmark:** 369 +- **CWEs da propriedade (referência):** 369 +- **Tokens permitidos:** `FALSE-DIVBYZERO`, `TRUE`, `UNKNOWN` + +````text +PROPERTY — no division by zero + +No execution may evaluate an integer division or remainder whose right operand +is zero. + +A violation is any execution reaching `a / b` or `a % b` on integer types with +b == 0, including the compound forms `a /= b` and `a %= b`. + +Not a violation for this property: + - floating-point division by zero, which is defined and yields an infinity or + a NaN; + - signed overflow such as INT_MIN / -1 — that is the no-overflow property; + - a division by zero that appears only in code no execution reaches, or only + on a path excluded by __VERIFIER_assume / assume_abort_if_not. + +Answer FALSE-DIVBYZERO if some execution divides or takes a remainder by zero. +Answer TRUE if no execution can. +Answer UNKNOWN if you cannot decide. + +PROGRAM: +```c +{{PROGRAM}} +``` +```` + +--- + +## P7 — `ASSERT` (assertiva alcançável e falha) + +- **Map2Check:** `map2check --check-asserts --nondet-generator symex ` +- **CWEs no benchmark:** 617 +- **CWEs da propriedade (referência):** 617 +- **Tokens permitidos:** `ASSERT`, `TRUE`, `UNKNOWN` + +````text +PROPERTY — assertion validity + +Every assertion in the program must hold whenever it is evaluated. Both +`assert(c)` (which expands to a call to __assert_fail when c is false) and +`__VERIFIER_assert(c)` count. + +A violation is any execution that reaches an assertion whose condition +evaluates to false. + +Not a violation for this property: + - an assertion whose condition is false only under inputs excluded by + __VERIFIER_assume or assume_abort_if_not; + - an assertion inside code no execution reaches; + - any memory error, overflow or division by zero that occurs on a path that + never reaches a failing assertion. If such an error would occur BEFORE the + assertion on the same path, the assertion is not reached and this property + is not violated by that path. + +Answer ASSERT if some execution reaches an assertion that evaluates to false. +Answer TRUE if no execution can. +Answer UNKNOWN if you cannot decide. + +PROGRAM: +```c +{{PROGRAM}} +``` +```` + +--- + +## P8 — `TARGET-REACHED` (alcançabilidade da função-alvo) + +- **Map2Check:** `map2check --target-function --target-function-name --nondet-generator symex ` +- **CWEs no benchmark:** *nenhum* — `test_cwe_mode_mapping.sh` proíbe mapear + qualquer CWE para modo de alcançabilidade (o alvo `main` era degenerado) +- **Propriedade:** `unreach-call` do SV-COMP, usada como codificação genérica de + "este ponto é alcançável" +- **Tokens permitidos:** `TARGET-REACHED`, `TRUE`, `UNKNOWN` +- **Placeholder extra:** `{{TARGET}}` — o nome da função-alvo, o mesmo passado + em `--target-function-name`. + +````text +PROPERTY — unreach-call + +The function `{{TARGET}}` must never be called. Determine whether some +execution of the program reaches a call to it. + +A violation is any execution in which `{{TARGET}}` is called, directly or +through any chain of calls, including through a function pointer. + +Not a violation for this property: + - a call to `{{TARGET}}` that appears in the source but that no execution + reaches; + - a call reachable only on a path excluded by __VERIFIER_assume or + assume_abort_if_not; + - any memory error, overflow or division by zero on a path that never reaches + the call. + +Answer TARGET-REACHED if some execution calls `{{TARGET}}`. +Answer TRUE if no execution can. +Answer UNKNOWN if you cannot decide. + +PROGRAM: +```c +{{PROGRAM}} +``` +```` + +--- + +## Pontuação + +Por trilha, contra o rótulo do benchmark: + +| Resposta \ Rótulo | vulnerável | seguro | +|:---|:---|:---| +| veredicto de violação correto | **TP** | **FP** | +| `TRUE` | **FN** | **TN** | +| `UNKNOWN` | *inconclusivo* | *inconclusivo* | +| veredicto de violação de outra trilha | erro de formato | erro de formato | + +`UNKNOWN` fica numa coluna própria e não entra em precisão/recall — é o que +torna a comparação com uma ferramenta que também responde `UNKNOWN` honesta. +Um `FALSE-DEREF` na trilha de overflow é erro de formato, não acerto parcial: +o prompt restringe os tokens permitidos. + +O campo `LINE` é métrica secundária (localização), medida só sobre os TPs. + +**Duas trilhas não têm corpus rotulado no repositório:** P3 +(`FALSE-MEMTRACK`) porque os dois runners roteiam CWE-401 para +`--memcleanup-property`, e P8 (`TARGET-REACHED`) porque +`test_cwe_mode_mapping.sh` proíbe mapear qualquer CWE para alcançabilidade. +Rodar essas duas exige montar um corpus antes — ou declará-las fora da +comparação. As outras seis saem direto de Juliet e CASTLE. + +## Uso + +```sh +python3 build_prompts_json.py # regenera prompts.json a partir deste .md +``` + +O markdown é a fonte de verdade; `prompts.json` é derivado. Cada entrada traz +`system_prompt`, `user_prompt` com os placeholders `{{PROGRAM}}` (e +`{{TARGET}}` em P8), `allowed_tokens` para validar a resposta, e +`map2check_command` — a invocação pareada, para que os dois lados da comparação +fiquem no mesmo arquivo. diff --git a/docs/prompts/prompts.json b/docs/prompts/prompts.json new file mode 100644 index 000000000..7f7f0565a --- /dev/null +++ b/docs/prompts/prompts.json @@ -0,0 +1,148 @@ +{ + "system_prompt": "You are a program-verification engine. You receive one C translation unit and\none safety property. You decide whether some execution of the program can\nviolate that property, and you answer in a fixed format.\n\nAssume the SV-COMP execution model:\n - `main` is the entry point.\n - `__VERIFIER_nondet_()` returns an arbitrary value of that type; every\n call is independent. Reason over all possible return values.\n - `__VERIFIER_assume(c)` and `assume_abort_if_not(c)` discard executions in\n which `c` is false. Executions they discard cannot violate anything.\n - The machine model is 64-bit little-endian (LP64), signed integers are\n two's complement, `int` is 32 bits, `long` and pointers are 64 bits.\n - Library functions behave as the C standard specifies. `malloc` may return\n NULL.\n\nJudge ONLY the property you are given. A program may contain other defects;\nthey are irrelevant and must not change your verdict.\n\nThe program may or may not violate the property. Both outcomes are equally\nlikely a priori. Do not assume a defect is present because you were asked to\nlook for one.\n\nAnswer with exactly three lines and nothing else:\n\nVERDICT: \nLINE: <1-based line number of the violating operation, or - if not applicable>\nREASON: \n\n`UNKNOWN` is a legitimate answer and is scored separately from a wrong one.\nUse it when you cannot decide. Never answer with prose outside the three lines,\nnever hedge inside VERDICT, never emit more than one VERDICT line.", + "prompts": [ + { + "id": "P1", + "verdict": "FALSE-DEREF", + "map2check_command": "map2check --memtrack --nondet-generator symex ", + "benchmark_cwes": [ + 121, + 122, + 125, + 476, + 787, + 822, + 843, + 416 + ], + "allowed_tokens": [ + "FALSE-DEREF", + "TRUE", + "UNKNOWN" + ], + "placeholders": [ + "PROGRAM" + ], + "user_prompt": "PROPERTY — valid-deref\n\nEvery memory dereference the program performs must be valid: the address must\npoint inside a live object, at an offset within that object's bounds, for the\nfull width of the access.\n\nA violation is any of:\n - reading or writing through a NULL pointer;\n - reading or writing outside the bounds of an allocated object (heap, stack\n or global), including off-by-one past the end;\n - dereferencing a pointer to memory that has already been freed;\n - dereferencing a pointer to a local variable whose scope has ended;\n - dereferencing an uninitialised or otherwise indeterminate pointer.\n\nNot a violation for this property:\n - failing to free memory (that is a different property);\n - passing an invalid pointer to free() without dereferencing it;\n - integer overflow, division by zero, or a failing assertion.\n\nAnswer FALSE-DEREF if some execution performs an invalid dereference.\nAnswer TRUE if no execution can.\nAnswer UNKNOWN if you cannot decide.\n\nPROGRAM:\n```c\n{{PROGRAM}}\n```" + }, + { + "id": "P2", + "verdict": "FALSE-FREE", + "map2check_command": "map2check --memtrack --nondet-generator symex ", + "benchmark_cwes": [ + 415, + 416, + 761 + ], + "allowed_tokens": [ + "FALSE-FREE", + "TRUE", + "UNKNOWN" + ], + "placeholders": [ + "PROGRAM" + ], + "user_prompt": "PROPERTY — valid-free\n\nEvery call to free() (and to realloc() with a non-null pointer) must receive\neither NULL or a pointer that was returned by a previous allocation and has not\nbeen freed since — and it must point at the START of that allocation.\n\nA violation is any of:\n - freeing the same pointer twice;\n - freeing a pointer that no allocation returned (a stack address, a global, a\n string literal, an arbitrary integer cast to a pointer);\n - freeing a pointer that has been advanced away from the start of its block\n (e.g. `p++` then `free(p)`);\n - freeing a pointer whose value is indeterminate.\n\n`free(NULL)` is well defined and is NOT a violation.\n\nNot a violation for this property:\n - dereferencing a freed pointer without freeing it again (that is\n valid-deref);\n - never freeing an allocation (that is valid-memtrack).\n\nAnswer FALSE-FREE if some execution performs an invalid free.\nAnswer TRUE if no execution can.\nAnswer UNKNOWN if you cannot decide.\n\nPROGRAM:\n```c\n{{PROGRAM}}\n```" + }, + { + "id": "P3", + "verdict": "FALSE-MEMTRACK", + "map2check_command": "map2check --memtrack --nondet-generator symex ", + "benchmark_cwes": [], + "allowed_tokens": [ + "FALSE-MEMTRACK", + "TRUE", + "UNKNOWN" + ], + "placeholders": [ + "PROGRAM" + ], + "user_prompt": "PROPERTY — valid-memtrack\n\nThe program must not lose track of allocated memory. A block is lost when the\nlast pointer to it is overwritten, goes out of scope, or is otherwise destroyed\nwhile the block is still allocated — after that no execution could free it even\nin principle.\n\nA violation is any of:\n - overwriting the only pointer to a block that is still allocated;\n - returning from a function while the only pointer to a block is a local\n variable of that function;\n - losing a block on an early-return or error path while the normal path frees\n it.\n\nNot a violation for this property:\n - a block that is still reachable through some live pointer when main\n returns — that is valid-memcleanup, a different property;\n - freeing a block twice, or dereferencing it after free.\n\nNote the distinction carefully: this property is about UNREACHABLE memory, not\nabout unfreed memory.\n\nAnswer FALSE-MEMTRACK if some execution makes an allocated block unreachable.\nAnswer TRUE if no execution can.\nAnswer UNKNOWN if you cannot decide.\n\nPROGRAM:\n```c\n{{PROGRAM}}\n```" + }, + { + "id": "P4", + "verdict": "FALSE-MEMCLEANUP", + "map2check_command": "map2check --memcleanup-property --nondet-generator symex ", + "benchmark_cwes": [ + 401 + ], + "allowed_tokens": [ + "FALSE-MEMCLEANUP", + "TRUE", + "UNKNOWN" + ], + "placeholders": [ + "PROGRAM" + ], + "user_prompt": "PROPERTY — valid-memcleanup\n\nAll memory allocated by the program must have been deallocated by the time main\nreturns (or exit() is called). Whether a pointer to the block still exists is\nirrelevant: the question is only whether the block was freed.\n\nA violation is any execution that terminates normally with at least one\nallocated, unfreed block.\n\nNot a violation for this property:\n - an unfreed block in an execution that does not terminate;\n - freeing a block twice, dereferencing it after free, or making it\n unreachable while still freeing it later.\n\nNote the distinction from valid-memtrack: a block kept in a global pointer and\nnever freed satisfies valid-memtrack (it is still reachable) but violates\nvalid-memcleanup.\n\nAnswer FALSE-MEMCLEANUP if some terminating execution leaves memory allocated.\nAnswer TRUE if every terminating execution frees everything.\nAnswer UNKNOWN if you cannot decide.\n\nPROGRAM:\n```c\n{{PROGRAM}}\n```" + }, + { + "id": "P5", + "verdict": "FALSE-OVERFLOW", + "map2check_command": "map2check --check-overflow --nondet-generator symex ", + "benchmark_cwes": [ + 190, + 191 + ], + "allowed_tokens": [ + "FALSE-OVERFLOW", + "TRUE", + "UNKNOWN" + ], + "placeholders": [ + "PROGRAM" + ], + "user_prompt": "PROPERTY — no-overflow\n\nNo arithmetic operation on a SIGNED integer type may produce a result outside\nthe range of the operation's resulting type. Evaluate the property on the type\nthat C's usual arithmetic conversions give the operation, not on the type of\nthe variable the result is stored into.\n\nA violation is any of:\n - a signed addition, subtraction or multiplication whose mathematical result\n falls outside the range of its resulting type;\n - the division or remainder `INT_MIN / -1` and `INT_MIN % -1`.\n\nNOT a violation for this property:\n - arithmetic on unsigned types — unsigned wraparound is defined behaviour and\n is explicitly outside this property;\n - floating-point arithmetic of any kind;\n - conversions and truncations that merely discard bits (e.g. assigning a\n long to an int);\n - division or remainder by zero — that is a different property;\n - out-of-bounds accesses, invalid frees, or failing assertions.\n\nRemember that operands narrower than int are promoted to int before the\noperation, so arithmetic on two chars is evaluated in int and rarely overflows.\n\nAnswer FALSE-OVERFLOW if some execution overflows a signed integer operation.\nAnswer TRUE if no execution can.\nAnswer UNKNOWN if you cannot decide.\n\nPROGRAM:\n```c\n{{PROGRAM}}\n```" + }, + { + "id": "P6", + "verdict": "FALSE-DIVBYZERO", + "map2check_command": "map2check --check-overflow --nondet-generator symex ", + "benchmark_cwes": [ + 369 + ], + "allowed_tokens": [ + "FALSE-DIVBYZERO", + "TRUE", + "UNKNOWN" + ], + "placeholders": [ + "PROGRAM" + ], + "user_prompt": "PROPERTY — no division by zero\n\nNo execution may evaluate an integer division or remainder whose right operand\nis zero.\n\nA violation is any execution reaching `a / b` or `a % b` on integer types with\nb == 0, including the compound forms `a /= b` and `a %= b`.\n\nNot a violation for this property:\n - floating-point division by zero, which is defined and yields an infinity or\n a NaN;\n - signed overflow such as INT_MIN / -1 — that is the no-overflow property;\n - a division by zero that appears only in code no execution reaches, or only\n on a path excluded by __VERIFIER_assume / assume_abort_if_not.\n\nAnswer FALSE-DIVBYZERO if some execution divides or takes a remainder by zero.\nAnswer TRUE if no execution can.\nAnswer UNKNOWN if you cannot decide.\n\nPROGRAM:\n```c\n{{PROGRAM}}\n```" + }, + { + "id": "P7", + "verdict": "ASSERT", + "map2check_command": "map2check --check-asserts --nondet-generator symex ", + "benchmark_cwes": [ + 617 + ], + "allowed_tokens": [ + "ASSERT", + "TRUE", + "UNKNOWN" + ], + "placeholders": [ + "PROGRAM" + ], + "user_prompt": "PROPERTY — assertion validity\n\nEvery assertion in the program must hold whenever it is evaluated. Both\n`assert(c)` (which expands to a call to __assert_fail when c is false) and\n`__VERIFIER_assert(c)` count.\n\nA violation is any execution that reaches an assertion whose condition\nevaluates to false.\n\nNot a violation for this property:\n - an assertion whose condition is false only under inputs excluded by\n __VERIFIER_assume or assume_abort_if_not;\n - an assertion inside code no execution reaches;\n - any memory error, overflow or division by zero that occurs on a path that\n never reaches a failing assertion. If such an error would occur BEFORE the\n assertion on the same path, the assertion is not reached and this property\n is not violated by that path.\n\nAnswer ASSERT if some execution reaches an assertion that evaluates to false.\nAnswer TRUE if no execution can.\nAnswer UNKNOWN if you cannot decide.\n\nPROGRAM:\n```c\n{{PROGRAM}}\n```" + }, + { + "id": "P8", + "verdict": "TARGET-REACHED", + "map2check_command": "map2check --target-function --target-function-name --nondet-generator symex ", + "benchmark_cwes": [], + "allowed_tokens": [ + "TARGET-REACHED", + "TRUE", + "UNKNOWN" + ], + "placeholders": [ + "PROGRAM", + "TARGET" + ], + "user_prompt": "PROPERTY — unreach-call\n\nThe function `{{TARGET}}` must never be called. Determine whether some\nexecution of the program reaches a call to it.\n\nA violation is any execution in which `{{TARGET}}` is called, directly or\nthrough any chain of calls, including through a function pointer.\n\nNot a violation for this property:\n - a call to `{{TARGET}}` that appears in the source but that no execution\n reaches;\n - a call reachable only on a path excluded by __VERIFIER_assume or\n assume_abort_if_not;\n - any memory error, overflow or division by zero on a path that never reaches\n the call.\n\nAnswer TARGET-REACHED if some execution calls `{{TARGET}}`.\nAnswer TRUE if no execution can.\nAnswer UNKNOWN if you cannot decide.\n\nPROGRAM:\n```c\n{{PROGRAM}}\n```" + } + ] +} diff --git a/docs/reports/2026-09-04-estado-e-handoff.md b/docs/reports/2026-09-04-estado-e-handoff.md new file mode 100644 index 000000000..6f3595ad6 --- /dev/null +++ b/docs/reports/2026-09-04-estado-e-handoff.md @@ -0,0 +1,300 @@ +# Estado do Map2Check e handoff — 2026-09-04 + +Documento de partida para uma sessão limpa. Consolida o que está implementado, o +que já foi medido, e as três frentes em aberto: **slicing**, **smart seeds** e +**WASM**. Nada aqui pede implementação; é registro do terreno. + +--- + +## 1. Onde o repositório está + +| | | +|---|---| +| Branch | `fix/slice-target-stub` — **idêntica a `origin/develop`** | +| PR #65 | **merged** — https://github.com/hbgit/Map2Check/pull/65 | +| Binário de referência | `install_v15/` | +| Relatório da campanha | `docs/Map2Check-Relatorio-v15.docx` (6448 palavras) | + +A PR entregou seis correções no motor e a campanha de 13 220 tarefas que as mede. +Os CSVs de campanha **não são versionados** — `.gitignore` cobre +`tests/testcomp/results_*/`, `tests/juliet/results*/` e `tests/castle/results_v*/`. + +### Onde os dados vivem (só no disco desta máquina) + +``` +tests/testcomp/results_v15_ce-control_s{0,1,2} cover-error, braço controle +tests/testcomp/results_v15_ce-slice_s{0,1,2} cover-error, braço slice +tests/testcomp/results_v15_cb-control_s{0..5} cover-branches +tests/juliet/results_v15_{a,b,c,d} Juliet, 4 shards +tests/castle/results_v15 CASTLE +``` + +Baselines anteriores preservados para comparação: `results_v9*` (Juliet/CASTLE), +`results_v12*`. Os resultados do **v14 foram deletados** — aquela campanha rodou o +binário do `--max-time` fracionário e nenhum número dela significa nada. + +--- + +## 2. As seis correções do v15 + +Todas com causa localizada. Nenhuma é explosão de caminhos. + +1. **`--max-time` fracionário matava o KLEE.** O parser de duração rejeita fração, + sai com 256, zero instruções executadas. Colapsou 464 TN do Juliet para 1. + Corrigido com `static_cast`. +2. **O slicer apagava o corpo da função-critério.** `reach_error` é onde a fatia + termina; o sbt-slicer mantém o call-site e descarta a definição. O link nativo do + LibFuzzer falha com `undefined reference`, nenhum `*-fuzzed.out` é produzido e o + estágio do fuzzer não faz nada — silenciosamente. Corrigido com um stub `weak` + religado via `llvm-link`. +3. **O log nunca chegava ao disco.** `stdout` é bufferizado em bloco quando + redirecionado; um run morto pelo timeout externo perdia o log inteiro, inclusive + um veredito já impresso. Corrigido com `std::flush` nos cinco níveis. +4. **A compilação do LibFuzzer não tinha limite.** Dois `clang -O2` sobre o módulo + instrumentado inteiro, sem timeout. +5. **Os motores se dimensionavam pelo orçamento nominal** (0,2× + 0,8× = 100%), sem + sobrar nada para os dois ciclos de compilar-instrumentar-linkar. Agora medem + contra `remainingSeconds()`. +6. **FAILED sem prova.** Um veredito de violação agora exige que o vetor seja + recuperável, checando as mesmas duas fontes que `emitTestSuite` consulta. + +**Não-regressão:** CASTLE 217/217 idênticos ao v9. Juliet com TP, FP e FN exatamente +iguais na interseção de 1054 casos, com um TN a mais. + +--- + +## 3. Números da campanha v15 + +Orçamento de competição, 300 s por tarefa, tudo em `install_v15`. + +| bloco | tarefas | resultado | +|---|---|---| +| Test-Comp cover-error | 1087 × 2 braços | controle **470 cobertas = 43,2%**; confirmação de veredito 91,9%; 9 ERROR; **zero NO_SUITE** (eram 41 no v11) | +| Test-Comp cover-branches | 2765 | **cobertura média 53,0%** (referência 46,9%) | +| Juliet | 8060 | TP 1154, TN 3290, FP 120, FN 1145, ERROR 380 | +| CASTLE | 221 | TP 54, TN 44, FN 14, FP 1 | +| **Total** | **13 220** | | + +O corpus de cover-error é o **pool inteiro aplicável**, não amostra — a cota de 400 +por categoria só limita ECA. Os dois braços rodaram as mesmas 1087 tarefas, então +toda comparação é pareada. + +**Cuidado com a palavra "precisão":** no cover-error, 1086 das 1087 tarefas têm bug +alcançável. Não existe verdadeiro negativo nem falso positivo possível, logo o +percentual é **recall**, não precisão. + +### Defeitos conhecidos e não corrigidos + +- **CWE-369 nunca foi medida.** Declarada no escopo do harness, não pertence a + nenhum shard. 9 das 10 CWEs foram efetivamente cobertas. +- **380 detecções bem-sucedidas classificadas como falha de ferramenta.** Todas em + variantes vulneráveis, nenhuma em corrigidas. O classificador lê segfault de + worker do LibFuzzer como crash da ferramenta; em CWE-121 é o fuzzer achando o bug. + Bug do harness, não do binário. +- **CWE-416 tem zero TN** com 70 FP. +- **Overflow (CWE-190/191)** com razão TP:FN de ~1:2 e 29% de timeouts. +- **85 tarefas pontuam apesar do veredito ser UNKNOWN** — 18% da pontuação vem de + casos em que a ferramenta gerou o vetor certo e se declarou incapaz de decidir. + +--- + +## 4. Slicing — o que está implementado e o que **não** está + +### De onde vem + +**sbt-slicer** + **DG**, do grupo *staticafi* (Masaryk University Brno) — os mesmos +componentes que o **Symbiotic** usa. Instalado pelo `Dockerfile.dev` em +`/opt/sbt-slicer`, resolvido por `Map2Check::slicerBinary()` +(`modules/frontend/utils/tools.hpp:70`), sobrescrevível por `$SBT_SLICER`. + +Não vem do FuSeBMC. **O FuSeBMC contribui só a ideia do motor híbrido** (fuzzer + +execução simbólica alternando), não o slicing. + +Algoritmicamente é **slicing estático backward sobre SDG**, na tradição +Weiser / Horwitz–Reps–Binkley. + +### Onde é chamado + +`Caller::sliceWithRespectToTarget()` — `modules/frontend/caller.cpp:179`. +Disparado por `--slice` em `map2check.cpp:519`, **antes** de `callPass()`: fatiar +depois da instrumentação remove a própria instrumentação, e a entrada ainda é +`main` nesse ponto (depois vira `__map2check_main__` e o slicer não a encontraria). + +Restrito a reachability. Não há critério a dar quando o objetivo é cobertura ou +propriedade de memória — `--slice` com `--cover-branches` é recusado. + +### O comando exato que emitimos + +``` +timeout -k 10 /opt/sbt-slicer/bin/sbt-slicer \ + -c reach_error --entry=main -o -sliced.bc -compiled.bc +``` + +`budget = max(5, min(0.2 × timeout, remainingSeconds() − 5))`. + +Depois: compila `void __attribute__((weak)) reach_error(void) {}`, faz `llvm-link` +com a fatia, e renomeia por cima do `-compiled.bc`. Se a fatia falhar ou estourar +o orçamento, cai de volta no programa inteiro — que é exatamente o que o controle faz. + +### **O buraco: passamos três flags de vinte e sete** + +O sbt-slicer expõe um conjunto grande de opções e **não configuramos nenhuma**. +Rodamos inteiramente nos defaults. O Symbiotic, de onde a ferramenta vem, ajusta +várias delas pelo tipo de propriedade. Lista real, extraída do `--help` na imagem +`ghcr.io/hbgit/map2check-dev:latest`: + +| opção | default | o que faria por nós | +|---|---|---| +| `--cutoff-diverging` | **true** | **chama `abort()` nos caminhos que podem não alcançar o critério** — ver hipótese abaixo | +| `--pta` | `fi` (flow-insensitive) | `fs` = flow-sensitive, `inv` = com nós de invalidação. Fatia menor, custo maior | +| `--cda` | `standard` (Ferrante) | `ntscd`, `ntscd-ranganath`, `scc` — sensíveis a não-terminação | +| `--cda-icfg` / `--cda-per-inst` | false / por bloco | dependências de controle interprocedurais, por instrução | +| `--undefined-funs` | `read-args` | `rw-any` é conservador; `pure` é agressivo. Muda tudo em programa com muita função externa | +| `--preserved-functions` | — | **manteria o corpo de `reach_error` sem o hack do stub weak** | +| `--remove-slicing-criteria` | false | ligá-lo é o algoritmo de Weiser puro | +| `--memsafety` | false | trata critérios como instruções potencialmente inseguras — é o modo que o Symbiotic usa para memsafety | +| `--allocation-funs` | — | ensina alocadores customizados ao PTA | +| `--statistics` / `--annotate` | false | **quanto foi removido e por quê — hoje só medimos bytes de bitcode** | + +### O resultado, e por que ele não conclui nada sobre a técnica + +Controle 470 contra slice 412. McNemar χ² = 36,10 (cresceu monotonicamente ao longo +da campanha: 19,56 → 21,12 → 22,72 → 36,10). + +Mas **57 das 58 tarefas perdidas estão em ECA**, onde a taxa despenca de 14,5% para +0,2%. Fora de ECA o braço empata ou ganha ligeiramente. + +O relatório se recusa deliberadamente a concluir "slicing não funciona". A leitura +honesta é que o número diz mais sobre **a ausência de configuração** do que sobre a +técnica: comparamos os defaults de uma biblioteca contra um controle bem afinado. + +### Hipótese principal para a sessão nova — `--cutoff-diverging` + +O default é **true**: o slicer injeta `abort()` nos caminhos que podem não alcançar +o critério. E o Map2Check invoca o KLEE com **`--exit-on-error-type=Abort`** +(`caller.cpp`, `stopPolicy`). Ou seja, um `abort()` de caminho divergente é +indistinguível, para o nosso stop policy, de um `abort()` de violação real. + +O mesmo vale para o LibFuzzer, que trata `abort()` como crash. + +Se isso for o mecanismo, o braço slice está parando cedo em abortos que o próprio +slicer plantou — e ECA, um autômato grande onde a maioria dos caminhos diverge do +critério, é exatamente onde isso doeria mais. Casa com a geografia do dano. + +**Ressalva importante e não resolvida:** numa checagem anterior, sobre **um** programa, +alternar `--cutoff-diverging` produziu bitcode idêntico. Isso enfraquece a hipótese +mas não a mata — uma amostra de um, e não no corpus ECA. É a primeira coisa a testar, +não um fato estabelecido. + +--- + +## 5. Smart seeds — o que está implementado e o que **não** está + +### O que existe + +Flag `--seed-exchange`, **desligada por default**. Troca bidirecional entre os dois +motores, em `modules/frontend/caller.cpp`: + +- **KLEE → fuzzer**: `exportKleeVectorsAsSeeds()` (linha 130). Varre `klee-out*/`, + converte cada `.ktest` em bytes de corpus via `ktestToFuzzerBytes()`, grava em + `Caller::seedDirectory`. Escrito **depois** do KLEE, porque `cleanGarbage()` + remove o scratch. +- **fuzzer → KLEE**: `exportFuzzerVectorAsKtest()` (linha 163). Lê `klee_log.csv`, + escreve **um** `.ktest`, passado como `--seed-file=`. +- **Persistência do corpus**: com `--seed-exchange`, o LibFuzzer recebe um + *diretório* de corpus. Sem ele, o LibFuzzer mantém o corpus em memória e joga + fora ao terminar — tudo que descobriu era descartado, todo run. + +### Os buracos + +- **Nunca foi medido com o binário corrigido.** O único dado que existe vem da + campanha v14, invalidada. Fechar isso custa dois braços de cover-error, ~10 h. +- **Assimetria: KLEE → fuzzer manda N vetores, fuzzer → KLEE manda um só.** O lado + do fuzzer lê só `klee_log.csv`, que guarda o último vetor, não o corpus. + O LibFuzzer produz um diretório inteiro de entradas interessantes que nunca + chegam ao KLEE. `--seed-file` aceita repetição. +- **Sem priorização.** Todo `.ktest` vira semente, sem ordenar por cobertura nova, + profundidade ou novidade. O FuSeBMC seleciona sementes por valor. +- **Sem alternância.** O ciclo é uma passagem só: fuzzer, depois KLEE, fim. A ideia + do FuSeBMC é iterar — cada motor realimenta o outro por várias rodadas dentro do + orçamento. Os comentários no código já preveem "uma alternância posterior", mas + o laço não existe. +- **`--use_value_profile=1` está ligado**, o que ajuda; mas nenhum dicionário, + nenhum `-max_len` derivado do programa, nenhum `-focus_function`. + +Mesma forma do slicing: **a técnica está plugada, não sintonizada.** + +--- + +## 6. WASM — proposta contra implementação + +### A proposta + +`docs/proposta WASM-final.md` — Map2Check-WASM para segurança de IoT/Edge. Quatro +fases: lifter ciente de segurança, modelagem de memória linear, mapeamento de +vulnerabilidades binárias (taint até funções importadas do host), e refinamento do +motor SMT. + +### O que existe hoje + +`modules/frontend/wasm_lifter.{hpp,cpp}` — 369 linhas. Flag `--wasm`. + +Pipeline implementado: **`.wasm` → `wasm2c` → `.c`/`.h` → `clang-16` → `.bc`**, +mais a geração de um wrapper que fornece `main()` chamando o entry point do módulo. +Runtime do WABT procurado em `/opt/wabt-1.0.41/include`, depois `/opt/wabt/include`, +depois `/usr/include`. + +Validação existente: `docs/reports/wasm-juliet-validation.csv` — casos do Juliet +compilados para WASM, rodados com `--wasm --memtrack --smt-solver z3`, ~135–180 s +cada, veredito FALSE (bug encontrado) nas variantes vulneráveis. + +### A distância entre as duas + +Só a **Fase 1 está parcialmente feita**, e na forma mais simples: lifting por +`wasm2c`, sem as anotações que a proposta pede. + +- **Sem injeção de metadados** preservando limites de objeto e chamadas de + importação/exportação do host — que é justamente o ponto de inovação declarado. +- **Fase 2 (memória linear) não existe.** Não há modelagem de ponteiro como offset + em array contíguo, nem asserção automática `ptr < MEM_SIZE`. O que temos é o + memtrack genérico rodando sobre o C gerado pelo `wasm2c` — que já embute os + próprios checks de bound do WABT, e isso confunde a atribuição do resultado. +- **Fase 3 (taint até funções do host) não existe.** +- **Fase 4** — o slicing que ela cita é o mesmo da seção 4, com os mesmos buracos. +- **Preservação semântica nunca foi medida**: a comparação C-direto contra + WASM-lifted, que é a métrica que provaria que o lifting não degrada a detecção, + não foi feita. O CSV tem só o lado WASM. + +--- + +## 7. Fio condutor + +As três frentes têm a mesma forma, e vale registrar porque muda o que a próxima +sessão deve perguntar: + +> Cada uma delas está **integrada mas não configurada**. O sbt-slicer roda nos +> defaults. A troca de sementes acontece uma vez, sem seleção. O lifter de WASM +> traduz sem anotar. Nos três casos, o número medido compara *a configuração +> padrão de uma biblioteca* contra um controle afinado — e essa é uma comparação +> diferente de "a técnica ajuda ou não". + +Isso não invalida os resultados do v15; invalida uma leitura específica deles. + +--- + +## 8. Fatos de infraestrutura que custaram tempo + +Registrados para não serem redescobertos: + +- **`run_isolated` escreve em ARQUIVO, não em pipe.** Netos órfãos do KLEE e do + LibFuzzer seguram a ponta de escrita para sempre — o harness travou 18 minutos. +- **Amostragem aninhada / prefixo-estável** com manifesto round-robin: quota-40 ⊂ + quota-150 ⊂ quota-400. Run truncado continua estratificado. +- **Sharding por módulo** (`i mod SHARDS == SHARD`), CSV-como-estado para retomar. +- **O veredito do TestCov é a linha `Result:`**, não o código de saída. +- **Nunca use `pkill`/`pgrep`** aqui — mata o próprio shell (saída 144). Mate por PID. +- **Confira containers pelas variáveis `MANIFEST`**, não pelo nome: uma campanha + inteira rodou com o manifesto errado e o nome do container não denunciava. +- **Rode a varredura de regressão ANTES de armar a campanha.** O bug do `--max-time` + era intermitente a 300 s (0,875 × 240 = 210, inteiro por acaso) e determinístico a + 60 s. Hoje isso é um portão nos launchers. diff --git a/docs/reports/2026-09-04-wasm-transformacao-formal.md b/docs/reports/2026-09-04-wasm-transformacao-formal.md new file mode 100644 index 000000000..e7c1cc94b --- /dev/null +++ b/docs/reports/2026-09-04-wasm-transformacao-formal.md @@ -0,0 +1,485 @@ +# A transformação WASM → LLVM-IR no Map2Check: formalização + +Documento técnico. Descreve, passo a passo e com formalismo, a cadeia de +transformações que leva um binário `.wasm` até o programa instrumentado que o +Map2Check analisa. O objetivo não é só documentar: é tornar **enunciável** o que a +cadeia preserva e o que ela perde, porque essa distinção decide quais resultados +experimentais são atribuíveis ao Map2Check. + +Referências de base: a semântica do WebAssembly é a de Haas et al., *Bringing the +Web up to Speed with WebAssembly* (PLDI 2017), e a especificação normativa dela +derivada. O tradutor é o `wasm2c` do WABT 1.0.41, verificado na imagem +`ghcr.io/hbgit/map2check-dev`. + +--- + +## 1. Notação + +Seja $\mathbb{B} = \{0,\dots,255\}$ o conjunto dos bytes e $\mathbb{B}^{*}$ as +sequências finitas de bytes. Escrevemos $[a,b)$ para o intervalo inteiro +semiaberto. Para uma função parcial $f$, $\mathrm{dom}(f)$ é seu domínio. + +O tamanho de página do WASM é a constante + +$$P = 65\,536 .$$ + +Os tipos de valor são $\mathit{valtype} = \{\mathtt{i32}, \mathtt{i64}, +\mathtt{f32}, \mathtt{f64}\}$, e $\mathit{Val}$ é o conjunto dos valores +correspondentes. + +--- + +## 2. Passo 0 — o objeto de entrada + +Um módulo WebAssembly é uma tupla + +$$M = (\mathit{types}, \mathit{funcs}, \mathit{tables}, \mathit{mems}, +\mathit{globals}, \mathit{elem}, \mathit{data}, \mathit{start}, +\mathit{imports}, \mathit{exports}).$$ + +Interessam aqui três componentes: + +- $\mathit{mems}$, que na versão 1.0 do WASM tem **cardinalidade no máximo 1**. + Essa é a hipótese estrutural que sustenta todo o resto: **existe uma única + memória linear**. +- $\mathit{exports} : \mathit{Name} \rightharpoonup \mathit{ExternIdx}$, as + funções visíveis de fora do módulo. +- $\mathit{imports}$, as funções que o *host* fornece — em contexto IoT, o + acesso a sensores, rede e banco. + +O **estado de execução** é o par $(s, F)$, com store + +$$s = (\mathit{funcs}, \mathit{tables}, \mathit{mems}, \mathit{globals})$$ + +e frame $F$ contendo os locais e a instância corrente. Uma configuração é +$s; F; e^{*}$, onde $e^{*}$ é a pilha de instruções, e a semântica é dada por uma +relação de redução em passos pequenos + +$$s; F; e^{*} \hookrightarrow s'; F'; e'^{*}.$$ + +O termo distinguido $\mathtt{trap}$ é absorvente: nenhuma regra o reduz. + +### 2.1 A memória linear + +Uma instância de memória é + +$$\mu = (d, \ell), \qquad d : [0,\ell) \to \mathbb{B}, \qquad \ell = n \cdot P$$ + +para algum $n \in \mathbb{N}$. Ou seja: **um vetor plano de bytes, contíguo, +endereçado por inteiros de 32 bits**, sem qualquer estrutura interna. Não há +noção de objeto, de alocação, nem de fronteira entre variáveis. Esse fato é o +centro de tudo que segue. + +A regra de leitura, na forma que nos importa, é + +$$ +\frac{\quad ea = i + \mathit{offset} \qquad ea + N/8 \le \ell \quad} + {s; F;\ (\mathtt{i32.const}\ i)\ (t.\mathtt{load}\ N\ \mathit{offset}) + \hookrightarrow s; F;\ (t.\mathtt{const}\ c)} +$$ + +e, quando a condição lateral falha, + +$$ +\frac{\quad ea + N/8 > \ell \quad} + {s; F;\ (\mathtt{i32.const}\ i)\ (t.\mathtt{load}\ N\ \mathit{offset}) + \hookrightarrow s; F;\ \mathtt{trap}} . +$$ + +Guarde a forma da condição lateral: $ea + N/8 \le \ell$. Ela vai reaparecer +literalmente, como código C, no passo 1. + +--- + +## 3. Passo 1 — $\tau$: `wasm2c` + +Definimos + +$$\tau : \mathit{Wasm} \longrightarrow \mathit{C}$$ + +como a função implementada por `wasm2c` (WABT 1.0.41), invocada em +`WasmLifter::runWasm2c` (`modules/frontend/wasm_lifter.cpp:86`) por + +``` +wasm2c .wasm -o .c +``` + +produzindo o par $(\texttt{.c}, \texttt{.h})$. + +### 3.1 Representação do estado + +$\tau$ realiza o store $s$ como uma **struct de instância** $I$. A memória linear +$\mu = (d,\ell)$ vira o registro `wasm_rt_memory_t`, cujos campos relevantes são + +$$\texttt{data} \mapsto d, \qquad \texttt{size} \mapsto \ell,$$ + +com `data` obtido de uma **única** chamada de alocação em +`wasm_rt_allocate_memory`. Registre-se o quantificador: *uma* alocação, para +*toda* a memória do módulo. + +Cada função $f$ do módulo vira uma função C + +$$\tau(f) : \texttt{(w2c\_}\langle mod\rangle\texttt{*)} \times +\overline{\mathit{Val}} \to \mathit{Val},$$ + +nomeada por mangling `w2c__`. O primeiro parâmetro é o ponteiro +de instância — é assim que o estado global do WASM vira estado explícito de +primeira classe no C. + +### 3.2 A condição lateral vira código + +O ponto técnico central: $\tau$ **compila a condição lateral da regra de redução +em uma verificação dinâmica explícita**. No C gerado (verificado na saída real do +WABT 1.0.41): + +```c +#define MEM_ADDR(mem, addr, n) &((mem)->data[addr]) + +#define RANGE_CHECK(mem, offset, len) \ + do { \ + uint64_t res; \ + if (UNLIKELY(add_overflow(offset, len, &res))) \ + TRAP(OOB); \ + if (UNLIKELY(res > (mem)->size)) \ + TRAP(OOB); \ + } while (0); + +#define TRAP(x) (wasm_rt_trap(WASM_RT_TRAP_##x), 0) +``` + +Comparando com §2.1: `res > mem->size` é exatamente a negação de +$ea + N/8 \le \ell$, e `TRAP(OOB)` é exatamente $\mathtt{trap}$. A tradução é +literal. + +Logo, definindo o predicado + +$$\mathrm{Safe}_{\mathrm{wasm}}(\mu, ea, N) \;\equiv\; ea + N/8 \le \ell,$$ + +o programa C avalia $\mathrm{Safe}_{\mathrm{wasm}}$ *em tempo de execução* antes +de cada acesso, e desvia para $\texttt{wasm\_rt\_trap}$ quando ele é falso. + +O conjunto de traps que o WABT distingue é + +$$ +\mathcal{T} = \{\mathtt{OOB}, \mathtt{INT\_OVERFLOW}, \mathtt{DIV\_BY\_ZERO}, +\mathtt{INVALID\_CONVERSION}, \mathtt{UNREACHABLE}, +$$ +$$ +\mathtt{CALL\_INDIRECT}, \mathtt{NULL\_REF}, +\mathtt{UNCAUGHT\_EXCEPTION}, \mathtt{UNALIGNED}, \mathtt{EXHAUSTION}\}. +$$ + +### 3.3 Correção de $\tau$ + +Seja $\approx$ a relação entre configurações WASM e estados C induzida pela +representação de §3.1 (memória por igualdade byte a byte, globais e locais por +igualdade de valor). + +> **Hipótese 1 (correção do `wasm2c`).** Para todo módulo $M$ bem tipado e toda +> execução, $\tau$ é uma **simulação forte** módulo passos administrativos: se +> $s;F;e^{*} \approx \sigma$ e $s;F;e^{*} \hookrightarrow s';F';e'^{*}$, então +> existe $\sigma'$ com $\sigma \to^{+} \sigma'$ e $s';F';e'^{*} \approx \sigma'$; +> e $e^{*} = \mathtt{trap}$ se e somente se $\sigma$ chama $\texttt{wasm\_rt\_trap}$. + +Isto é **hipótese, não teorema nosso**. Assumimos a correção do WABT como +assumimos a do Clang. Vale explicitá-la porque toda a soundness da cadeia repousa +sobre ela, e porque ela é falsificável: uma divergência de `wasm2c` apareceria +como discordância entre executar o `.wasm` num runtime e executar o C gerado. + +--- + +## 4. Passo 2 — $\kappa$: Clang para LLVM-IR + +$$\kappa : \mathit{C} \longrightarrow \mathit{LLVM}$$ + +implementada em `WasmLifter::runClang` (linha 102) e `runClangEmitLLVM` (linha 122): + +``` +clang-16 -c -emit-llvm -I -I

.c -o .bc +clang-16 -S -emit-llvm -I -I .c -o .ll +``` + +O `.ll` textual não é redundante: ele é a entrada de $\epsilon$, a extração de +metadados de §5. + +> **Hipótese 2 (correção do Clang).** $\kappa$ preserva a semântica de programas C +> **livres de comportamento indefinido**. + +A ressalva importa mais do que o normal aqui. O C emitido pelo `wasm2c` é gerado, +não escrito, e usa construções deliberadamente próximas do limite — aritmética de +ponteiro sobre `data`, `setjmp`/`sigsetjmp` para o mecanismo de trap, e o +`__seg_gs` do modo *segue* quando habilitado. Não auditamos essa fronteira. + +--- + +## 5. Passo 3 — $\epsilon$: extração do ponto de entrada + +$$\epsilon : \mathit{LLVM}_{\text{texto}} \longrightarrow +\mathit{Name} \times \mathcal{P}(\mathit{Name})$$ + +implementada em `WasmLifter::extractMetadata` (linha 145). Ela varre o `.ll` linha +a linha com a expressão regular + +$$\texttt{define.*@w2c\_([A-Za-z0-9\_]+)\textbackslash(}$$ + +e devolve $(\eta, E)$: o ponto de entrada $\eta$, reconhecido pelo sufixo mangled +`_0x5Fstart`, e $E$ o conjunto das demais funções exportadas. + +**Esta é uma análise sintática sobre texto, não sobre o módulo LLVM.** Vale +enunciar suas condições de falha, porque não são hipotéticas: + +1. Se nenhuma função casa `_0x5Fstart` — o caso de um módulo *reactor*, sem + `_start`, que é a forma usual de um handler WASM de IoT — o código cai no + default `w2c__start` com um aviso. **Esse símbolo pode não existir.** +2. $E$ e $\eta$ são disjuntos por construção, logo um módulo cujo único ponto de + interesse é uma função exportada (de novo: o caso IoT) tem $\eta$ mal definido. + +Isto é: $\epsilon$ é total, mas **não é correta** para a classe de módulos que a +proposta declara como alvo. Registrado aqui como propriedade da implementação +atual, não como defeito a corrigir neste documento. + +--- + +## 6. Passo 4 — $\omega$: o harness + +O programa liftado não tem `main`. $\tau$ traduziu funções de módulo; nenhuma +delas é ponto de entrada de um processo. Definimos então + +$$\omega : \mathit{Name} \longrightarrow \mathit{LLVM}$$ + +(`Caller::generateWasmWrapperStatic`, `caller.cpp:567`, chamada em +`map2check.cpp:465`), que sintetiza literalmente + +```c +int main() { + w2c_ instance; + wasm2c__instantiate(&instance, NULL); + (&instance); + wasm2c__free(&instance); + return 0; +} +``` + +e o resultado é religado por + +$$\Lambda_0 = \texttt{llvm-link}(\kappa(\tau(M)),\ \omega(\eta)).$$ + +### 6.1 O que $\omega$ quantifica: nada + +Formalmente, o módulo denota uma **família** de execuções indexada pelos +argumentos das funções exportadas e pelo comportamento das importações: + +$$\llbracket M \rrbracket : \overline{\mathit{Val}} \times \mathit{Host} +\longrightarrow \mathit{Outcome}.$$ + +O harness atual **não instancia essa família: ele a evita.** A chamada +$\eta(\&I)$ é nulária — a única entrada aceita é o ponteiro de instância, porque +$\eta$ é o `_start`, cuja assinatura no WASM é +$[\;] \rightarrow [\;]$. Nenhum $\nu$ é escolhido porque não há onde colocá-lo. + +A consequência é precisa. Escrevendo $\mathit{Reach}(p)$ para o conjunto de +estados alcançáveis de um programa $p$: + +$$\mathit{Reach}(\Lambda_0) \;=\; +\bigcup_{h \in \mathit{Host}} \mathit{Reach}\big(\llbracket M \rrbracket(\bot, h)\big) +\;\subseteq\; +\bigcup_{\nu, h} \mathit{Reach}\big(\llbracket M \rrbracket(\nu, h)\big),$$ + +e a inclusão é **estrita** sempre que o módulo tem alguma função exportada com +aridade positiva. O símbolo $\bot$ não é um valor: é a ausência da chamada. + +Duas leituras disso, e as duas importam: + +1. **Para um módulo com `_start`** — um programa compilado para WASI, que é o + formato dos casos do Juliet na CSV de validação — a entrada chega por + `argv`/stdin *dentro* do `_start`, e o `NonDetPass` pode amarrá-la ali. A + cadeia funciona. Este é o caso medido até hoje. +2. **Para um módulo *reactor*** — o handler de IoT que a proposta declara como + alvo, sem `_start`, cujo comportamento inteiro está nas funções exportadas em + $E$ — o wrapper não chama nada de interesse. Combinado com §5, onde $\epsilon$ + já devolve $\eta$ mal definido para essa classe, o resultado é que **o alvo + declarado da proposta não é alcançável pela implementação atual**, e não por + um motivo profundo: falta gerar uma chamada por função exportada, com + `__VERIFIER_nondet_()` em cada parâmetro. + +O tratamento das importações $h$ é o buraco restante: sem modelo de host, as +funções importadas são símbolos externos, e o que se assume sobre elas é o default +de quem estiver rodando, não uma escolha nossa. A Fase 3 da proposta — taint do +dado controlado até a função importada — vive inteiramente aí. + +## 7. Passo 5 — $\pi$: instrumentação do Map2Check + +Daqui em diante o pipeline é o comum: `map2check.cpp:497` chama +`caller->compileCFile(is_llvmir_in)` com `is_llvmir_in = true`, e a partir daí +$\Lambda_0$ é tratado como qualquer bitcode. + +$\pi$ é a transformação de programa dos passes LLVM. Ela é um par +$(\pi_{\text{code}}, \Sigma)$: instrumentação e **estado sombra**. Para o modo +`--memtrack`, $\Sigma$ mantém o conjunto de alocações vivas + +$$\Sigma \subseteq \{(\mathit{base}, \mathit{size}, \mathit{alive})\},$$ + +e $\pi_{\text{code}}$ insere, antes de cada acesso a $(p, n)$, a verificação + +$$\mathrm{Safe}_{\mathrm{C}}(\Sigma, p, n) \;\equiv\; +\exists (b,z,\mathit{alive}) \in \Sigma :\; +\mathit{alive} \;\wedge\; b \le p \;\wedge\; p + n \le b + z .$$ + +**Compare com $\mathrm{Safe}_{\mathrm{wasm}}$ de §3.2.** As duas verificações não +falam da mesma coisa, e a §9 é inteiramente sobre a distância entre elas. + +A cadeia completa é + +$$\boxed{\;\Lambda \;=\; \pi \;\circ\; \mathrm{link}\big(\omega \circ \epsilon,\ \cdot\big) +\;\circ\; \kappa \;\circ\; \tau \;}$$ + +seguida do motor de geração de entradas (KLEE ou LibFuzzer) sobre $\Lambda(M)$. + +--- + +## 8. O que a cadeia preserva + +> **Proposição 1 (soundness para alcançabilidade de trap).** +> Sob as Hipóteses 1 e 2, se a execução de $\Lambda(M)$ sob a valoração $\nu$ +> alcança $\texttt{wasm\_rt\_trap}$, então $\llbracket M \rrbracket(\nu, h)$ +> reduz a $\mathtt{trap}$. + +*Esboço.* Por Hipótese 2, a execução de $\Lambda_0$ corresponde à do C gerado. +Por Hipótese 1, alcançar $\texttt{wasm\_rt\_trap}$ no C corresponde a alcançar +$\mathtt{trap}$ no WASM. $\pi$ só acrescenta código sobre um estado sombra +disjunto do estado do programa, logo preserva alcançabilidade. $\square$ + +Isso é real e é útil: **as dez classes de trap de $\mathcal{T}$ — OOB, divisão por +zero, overflow de conversão, `unreachable`, `call_indirect` inválido — são +detectáveis pela cadeia atual, sem nenhum trabalho adicional.** O que +`wasm_rt_trap` faz é abortar, e abort é precisamente o sinal que o modo +reachability do Map2Check já consome. + +--- + +## 9. O que a cadeia **não** preserva + +Aqui está a consequência formal que motiva a Fase 2 da proposta. + +> **Proposição 2 (incompletude para segurança de memória).** +> Existem $M$ e $\nu$ tais que a execução de $M$ sob $\nu$ **sobrescreve um objeto +> que não é o alvo pretendido** — uma violação genuína de CWE-787 — e ainda assim +> $\Lambda(M)$ sob $\nu$ não viola $\mathrm{Safe}_{\mathrm{C}}$ em nenhum acesso, +> nem alcança $\texttt{wasm\_rt\_trap}$. + +*Prova (por construção).* Tome o módulo compilado de + +```c +int buf[4]; +char token[16]; +int f(int i) { buf[i] = 7; return buf[0]; } +``` + +com $\nu = (i = 4)$ e $\mathit{token}$ posicionado logo após $\mathit{buf}$ na +memória linear. Sejam $a_{\mathit{buf}}$ e $a_{\mathit{token}}$ seus offsets. + +1. **No WASM.** O acesso tem endereço efetivo $ea = a_{\mathit{buf}} + 16$, que é + $a_{\mathit{token}}$. Como $ea + 4 \le \ell$ — a memória linear tem pelo menos + uma página, $\ell \ge 65\,536$, e os objetos estão bem no começo — a condição + lateral de §2.1 **é satisfeita**. A redução não produz $\mathtt{trap}$: produz + uma escrita bem-definida. O token foi sobrescrito e a execução segue + normalmente. +2. **No C gerado.** `RANGE_CHECK` testa `res > mem->size`, isto é + $ea + 4 > \ell$, que é falso. Nenhum trap. +3. **Sob $\pi$.** Por §3.1, `data` é **uma única alocação** cobrindo $[0,\ell)$. + Logo $\Sigma$ contém o registro $(\texttt{data}, \ell, \mathrm{true})$, e para + $p = \texttt{data} + ea$, $n = 4$, vale + $\texttt{data} \le p$ e $p + 4 \le \texttt{data} + \ell$. Portanto + $\mathrm{Safe}_{\mathrm{C}}(\Sigma, p, 4)$ **é verdadeiro**. Nenhuma violação + é reportada. $\square$ + +O ponto não é uma limitação do memtrack. É que **$\tau$ apaga a informação +necessária**: a partição da memória linear em objetos existe no fonte C original, +sobrevive até o compilador para WASM, e é descartada na emissão do módulo, porque +o WASM não tem onde guardá-la. O que chega ao Map2Check é um vetor de bytes com +uma única fronteira — a de fora. + +Note ainda o **quantificador invertido**: quanto *maior* a memória linear, *menos* +detectável a violação, porque mais longe fica a única fronteira que sobrou. Um +módulo com uma página tem $\ell = 65\,536$; um overflow de dezesseis bytes está a +sessenta e cinco mil bytes de ser visível. + +### 9.1 Consequência para a atribuição dos resultados + +Isso muda como ler `docs/reports/wasm-juliet-validation.csv`. Todos os casos ali +retornam `FALSE`, isto é, bug encontrado. Mas a Proposição 1 e a Proposição 2 +juntas dizem que há **dois mecanismos possíveis** para esse `FALSE`: + +- **(a)** o overflow foi grande o bastante para sair de $[0,\ell)$, o `RANGE_CHECK` + do WABT disparou, e o que detectamos foi o *check do WABT*; ou +- **(b)** a instrumentação do Map2Check detectou algo por conta própria. + +**A CSV não distingue os dois casos**, e a Proposição 2 diz que (b) é impossível +para violação intra-memória. Enquanto essa separação não for feita, a validação +WASM não sustenta a alegação de que *o Map2Check* encontrou os bugs: ela é +consistente com o WABT tê-los encontrado e o Map2Check ter apenas reportado o +abort resultante. + +Separar é barato: basta instrumentar `wasm_rt_trap` e registrar qual dos dois +caminhos produziu o abort. É a primeira medição que a frente WASM deveria fazer. + +--- + +## 10. O que a Fase 2 tem de adicionar, formalmente + +A proposta pede "modelagem da memória linear". Em termos deste documento, o que +falta é exatamente um objeto: um **mapa de objetos** + +$$O : [0,\ell) \rightharpoonup \mathit{ObjID},$$ + +com o predicado refinado + +$$\mathrm{Safe}_{\mathrm{lin}}(O, ea, N) \;\equiv\; +\mathrm{Safe}_{\mathrm{wasm}}(\mu, ea, N) +\;\wedge\; +\exists o \in \mathit{ObjID} :\; +\forall k \in [ea,\, ea+N/8) :\; O(k) = o .$$ + +Em palavras: além de estar dentro da memória, o acesso inteiro tem de cair +**dentro de um único objeto**. Com $\mathrm{Safe}_{\mathrm{lin}}$ no lugar de +$\mathrm{Safe}_{\mathrm{C}}$, o contraexemplo da Proposição 2 passa a ser +detectado: $O(a_{\mathit{buf}} + 16) = \mathit{token} \ne \mathit{buf}$. + +E isso torna preciso o requisito sobre o lifter. $O$ **não é recuperável do +`.wasm`** — foi apagado antes. As três fontes possíveis são: + +1. **Seções de nome e de DWARF** do módulo, quando presentes ($\mathtt{clang}$ + `-g` para `wasm32` as emite). Recupera objetos estáticos e o layout de frame. +2. **Reconstrução do alocador**: reconhecer as funções de `malloc`/`free` do + módulo, quando ele carrega uma libc, e derivar $O$ dinamicamente delas. É o + análogo, aqui, do `--allocation-funs` do sbt-slicer. +3. **Anotação no momento do lifting**, que é o que a proposta chama de "lifter + ciente de segurança": $\tau'$ que emita, junto do C, os metadados de fronteira. + +As três são trabalho de $\tau$ ou de um passo novo entre $\tau$ e $\kappa$. +**Nenhuma delas é trabalho do backend do Map2Check** — o que confirma a +afirmação de viabilidade da proposta ("não exige reescrever o motor de +verificação"), e ao mesmo tempo localiza o custo real onde ele está. + +--- + +## 11. Resumo da cadeia + +| passo | função | implementação | preserva | perde | +|---|---|---|---|---| +| 0 | $M$ | entrada `.wasm` | — | (o layout de objetos já foi perdido na compilação **para** WASM) | +| 1 | $\tau$ | `wasm2c`, WABT 1.0.41 | semântica, traps, bytes da memória | nada além do que já faltava | +| 2 | $\kappa$ | `clang-16 -emit-llvm` | semântica C (módulo UB) | — | +| 3 | $\epsilon$ | regex sobre o `.ll` | ponto de entrada, quando há `_start` | módulos *reactor*, o caso IoT | +| 4 | $\omega$ | wrapper + `llvm-link` | a execução de `_start` | toda função exportada com aridade > 0, e o host | +| 5 | $\pi$ | passes do Map2Check | alcançabilidade | — | + +E os dois enunciados que a tabela resume: + +- **Proposição 1.** A cadeia é *sound* para as dez classes de trap do WASM. Isso + já funciona hoje e é um resultado publicável por si. +- **Proposição 2.** A cadeia é *incompleta* para segurança de memória + intra-sandbox — a classe de vulnerabilidade que a proposta declara como alvo + principal. A causa é estrutural, não um bug: a memória linear chega como uma + alocação única, e nenhuma análise sobre ela pode distinguir objetos que já não + estão lá. diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index fcf437ffd..ea65865c9 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -835,3 +835,33 @@ com 300 s. estagnação e a suíte continua crescendo. Na v15 o híbrido fixo terminava antes. - O campo de veredito (SUCCEEDED 1 655 → 296) não pesa em Cover-Branches. Só a cobertura validada pelo TestCov conta. + +## Correção dos caminhos podados pelo assume, e rerrodada (2026-10-05/06) + +- **Defeito:** sob o KLEE, o `nondet_assume` podava com `klee_silent_exit`, que não grava + `.ktest`. Na campanha da 9.0, 50 tarefas de Cover-Branches (43 XCSP, 7 Floats) tinham + testes na v15 e nenhum na 9.0. +- **Correção 1** (`e4e0b74c7`): a poda passa a usar `_exit(0)`. O caminho termina + normalmente e o KLEE grava o teste. +- **Correção 2** (`6848d2395`): o caminho podado leva um objeto marcador + (`map2check_pruned`). + - O leitor remove o marcador e põe esses vetores depois dos outros. + - A suíte marca o caso com um comentário XML e o troca por um caminho mais profundo + quando atinge o limite de 50, inclusive em fases seguintes. + - Motivo: só com a correção 1, a primeira fase do KLEE no AllInterval achava apenas + caminhos podados e enchia a suíte. A cobertura caía de 95% para 9%. +- **Rerrodada** (300 s por tarefa, mesmas condições), com a cobertura média em %: + +| lote | tarefas | v15 | 9.0 | só a correção 1 | correções 1 e 2 | +|---|---|---|---|---|---| +| tarefas sem teste na 9.0 | 50 | 88,8 | 0,0 | 88,8 | **88,8** | +| XCSP que já tinham testes | 76 | 64,9 | 85,5 | 78,5 | **94,7** (+20 −6 contra a 9.0) | +| controle sorteado | 100 | 46,9 | 54,4 | 55,9 | **55,0** (+19 −7) | +| Cover-Error sorteado | 100 | — | 63 cobertas | 66 | **63** (+3 −3, ECA), TRUE errado 0 | + +- **Projeção no Cover-Branches completo** (as 226 tarefas trocadas pelas da rerrodada): + - média: v15 41,4% → 9.0 45,1% → **47,0%**; + - XCSP: 77,6% → 54,6% → **96,6%**. +- **Ainda abaixo da 9.0 original:** AllInterval-035 (38,6 → 2,9), -025 e -017. As oscilações + de mais e de menos no controle e no Cover-Error ficam dentro da variação entre + execuções vista nas rodadas anteriores. From 5d57ffff63d5c65448adfc81c7ec1dec1516bc30 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 6 Oct 2026 00:32:56 -0400 Subject: [PATCH 72/88] chore: untrack local documents committed by mistake in 53a43e821 Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/Map2Check-Propriedades-e-CWEs.pdf | Bin 319619 -> 0 bytes docs/Map2Check-Propriedades-e-CWEs.tex | 578 ------- docs/Map2Check-WASM-Transformacao-Formal.pdf | Bin 572196 -> 0 bytes docs/Map2Check-WASM-Transformacao-Formal.tex | 1383 ----------------- docs/Map2Check-WASM-Transformacao-Formal.zip | Bin 919120 -> 0 bytes docs/prompts/build_prompts_json.py | 59 - docs/prompts/deepseek-property-prompts.md | 454 ------ docs/prompts/prompts.json | 148 -- docs/reports/2026-09-04-estado-e-handoff.md | 300 ---- .../2026-09-04-wasm-transformacao-formal.md | 485 ------ 10 files changed, 3407 deletions(-) delete mode 100644 docs/Map2Check-Propriedades-e-CWEs.pdf delete mode 100644 docs/Map2Check-Propriedades-e-CWEs.tex delete mode 100644 docs/Map2Check-WASM-Transformacao-Formal.pdf delete mode 100644 docs/Map2Check-WASM-Transformacao-Formal.tex delete mode 100644 docs/Map2Check-WASM-Transformacao-Formal.zip delete mode 100644 docs/prompts/build_prompts_json.py delete mode 100644 docs/prompts/deepseek-property-prompts.md delete mode 100644 docs/prompts/prompts.json delete mode 100644 docs/reports/2026-09-04-estado-e-handoff.md delete mode 100644 docs/reports/2026-09-04-wasm-transformacao-formal.md diff --git a/docs/Map2Check-Propriedades-e-CWEs.pdf b/docs/Map2Check-Propriedades-e-CWEs.pdf deleted file mode 100644 index 5716e384fee9c1ca9cc0b6bb4d029e5152d5b46f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 319619 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%0A1lhuEV!=ai!e0!e8uEvrBOA7_d+( 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\raggedright\arraybackslash}p{#1}} -\newcolumntype{C}[1]{>{\centering\arraybackslash}p{#1}} -\newcolumntype{Y}{>{\raggedright\arraybackslash}X} - -\pagestyle{fancy} -\fancyhf{} -\fancyhead[L]{\small Map2Check --- Propriedades e CWEs} -\fancyhead[R]{\small\thepage} -\renewcommand{\headrulewidth}{0.4pt} - -\title{\textbf{Map2Check}\\[2mm] -\large Modos de verificação, propriedades, sub-propriedades\\ e cobertura de CWEs} -\author{Levantamento a partir do código-fonte\\ -\small branch \code{wasm-verification-upgrade} --- Map2Check v8.0.0} -\date{6 de setembro de 2026} - -\begin{document} -\maketitle - -\begin{abstract} -\noindent -Este documento inventaria \emph{tudo} que o Map2Check consegue verificar hoje: -os seis modos de verificação implementados, as especificações SV-COMP que cada -um responde, os dez veredictos que o runtime é capaz de escrever, e o -mapeamento CWE${\rightarrow}$modo tal como ele existe nos dois harnesses de -avaliação do repositório (CASTLE e Juliet). Nada aqui é aspiracional: cada -entrada cita o arquivo e a linha que a sustenta, e as limitações conhecidas -estão na Seção~\ref{sec:limitacoes} em vez de omitidas. -\end{abstract} - -\tableofcontents -\bigskip - -%================================================================ -\section{Escopo e fontes} - -O levantamento foi feito sobre quatro camadas do código, porque a resposta -completa não está em nenhuma delas isoladamente: - -\begin{enumerate}[leftmargin=*,itemsep=2pt] - \item \textbf{CLI} --- \src{modules/frontend/map2check.cpp} define as flags e - traduz cada uma em um modo. - \item \textbf{Orquestração} --- \src{modules/frontend/caller.hpp:21} declara - \code{enum class Map2CheckMode}; \src{caller.cpp:389} decide quais - \emph{passes} LLVM cada modo carrega. - \item \textbf{Instrumentação} --- \src{modules/backend/pass/*.cpp} são os - passes que injetam as chamadas de verificação no IR. - \item \textbf{Runtime} --- \src{modules/backend/library/lib/AnalysisMode*.c} - implementam a checagem em tempo de execução e escrevem o veredicto; - \src{header/Map2CheckTypes.h:68} enumera os veredictos possíveis. -\end{enumerate} - -A cobertura de CWEs vem dos dois \emph{runners} de avaliação versionados no -repositório, que são a única declaração executável desse mapeamento: -\src{tests/castle/run\_castle\_evaluation.sh} e -\src{tests/juliet/run\_juliet\_evaluation.sh}. O contrato entre eles é -verificado por \src{tests/integration/test\_cwe\_mode\_mapping.sh}, que impede -que qualquer CWE do benchmark caia num modo não declarado. - -%================================================================ -\section{Modos de verificação} - -São seis modos, dos quais cinco checam uma propriedade e um --- Cover-Branches ---- não checa propriedade alguma, existindo apenas para produzir suítes de -teste. - -\begin{table}[H] -\centering -\small -\begin{tabularx}{\textwidth}{@{}l L{3.4cm} L{3.75cm} Y@{}} -\toprule -\textbf{\#} & \textbf{Modo} & \textbf{Flag} & \textbf{O que checa} \\ -\midrule -1 & \code{MEMTRACK\_MODE} \newline \emph{(padrão)} & \flag{memtrack} & -Segurança de memória: \emph{free} inválido, dereferência inválida e vazamento -de memória alocada. \\ -\addlinespace -2 & \code{MEMCLEANUP\_MODE} & \flag{memcleanup-property} & -Toda memória alocada foi liberada até o fim do \code{main}. \\ -\addlinespace -3 & \code{OVERFLOW\_MODE} & \flag{check-overflow} & -Overflow de inteiro \emph{com sinal} e divisão/resto por zero. \\ -\addlinespace -4 & \code{REACHABILITY\_MODE} & \flag{target-function} \newline -\flag{target-function-name} & Se uma função-alvo nomeada é alcançável. \\ -\addlinespace -5 & \code{ASSERT\_MODE} & \flag{check-asserts} & -Se algum \code{\_\_VERIFIER\_assert} ou \code{\_\_assert\_fail} pode falhar. \\ -\addlinespace -6 & \code{COVER\_BRANCHES\_MODE} & \flag{cover-branches} & -\emph{Nada.} Explora caminhos e registra suas entradas (Test-Comp -Cover-Branches). \\ -\bottomrule -\end{tabularx} -\caption{Os seis modos. Fonte: \src{caller.hpp:21--37} e -\src{map2check.cpp:781--878}.} -\end{table} - -\subsection{Especificação SV-COMP correspondente} - -É preciso separar duas coisas que o código trata em lugares diferentes, e que -não coincidem. - -\paragraph{Na \emph{witness}.} A especificação é escolhida pela -\textbf{propriedade violada}, não pelo modo --- \src{witness/graph.cpp:208--237} -faz um \code{switch} sobre \code{PropertyViolated}. - -\begin{table}[H] -\centering -\small -\begin{tabularx}{\textwidth}{@{}L{3.6cm} Y@{}} -\toprule -\textbf{Veredicto} & \textbf{Especificação emitida} \\ -\midrule -\code{FALSE-FREE} & \code{CHECK( init(main()), LTL(G valid-free) )} \\ -\code{FALSE-DEREF} & \code{CHECK( init(main()), LTL(G valid-deref) )} \\ -\code{FALSE-MEMTRACK} & \code{CHECK( init(main()), LTL(G valid-memtrack) )} \\ -\code{FALSE-OVERFLOW} & \code{CHECK( init(main()), LTL(G ! overflow) )} \\ -\code{TARGET-REACHED} & especificação de alvo (\code{SpecificationType::TARGET}) \\ -\addlinespace -\code{NONE} (\emph{TRUE}) & conforme \code{spectTrue}: alvo, \code{! overflow}, -ou --- por padrão --- as três linhas de \code{valid-free} $+$ -\code{valid-deref} $+$ \code{valid-memtrack} (\code{MEMSAFETY}). \\ -\bottomrule -\end{tabularx} -\caption{Fonte: \src{witness/witness.hpp:64--101} (enum -\code{SpecificationType}) e \src{witness/graph.cpp:198--258}. -\textbf{Não existe especificação de \code{memcleanup}}: o enum -\code{SpecificationType} tem seis valores e nenhum deles é -\code{valid-memcleanup}. Ver a Seção~\ref{sec:limitacoes}, item~3.} -\end{table} - -\paragraph{Nos metadados do \emph{test-suite}.} Aqui a especificação vem do -arquivo passado em \flag{property-file}, copiado \emph{verbatim}. As duas -strings abaixo são apenas o \emph{fallback} para quando esse arquivo não é -passado ou não pode ser lido (\src{map2check.cpp:104--128}): - -\begin{table}[H] -\centering -\small -\begin{tabularx}{\textwidth}{@{}L{3.6cm} Y@{}} -\toprule -\textbf{Modo} & \textbf{\emph{Fallback} de \code{}} \\ -\midrule -\code{REACHABILITY} & -\code{COVER( init(main()), FQL(COVER EDGES(@CALL(reach\_error))) )} \\ -\addlinespace -demais modos & -\code{COVER( init(main()), FQL(COVER EDGES(@DECISIONEDGE)) )} \\ -\bottomrule -\end{tabularx} -\end{table} - -\subsection{Pipeline de passes por modo} - -Cada modo monta uma sequência distinta de \emph{passes} do New Pass Manager. O -\code{nondet-pass} e o \code{map2check-library} são carregados sempre. - -\begin{table}[H] -\centering -\small -\begin{tabularx}{\textwidth}{@{}L{3.4cm} L{4.3cm} Y@{}} -\toprule -\textbf{Modo} & \textbf{Pass adicional} & \textbf{Runtime} \\ -\midrule -\code{MEMTRACK} & \code{MemoryTrackPass} & \code{AnalysisModeMemtrack.c} \\ -\code{MEMCLEANUP} & \code{MemoryTrackPass} & \code{AnalysisModeMemcleanup.c} \\ -\code{OVERFLOW} & \code{OverflowPass} & \code{AnalysisModeOverflow.c} \\ -\code{REACHABILITY} & \code{TargetPass} & \code{AnalysisModeNone.c} \\ -\code{ASSERT} & \code{AssertPass} & \code{AnalysisModeAssert.c} \\ -\code{COVER\_BRANCHES}& \emph{nenhum} & \code{AnalysisModeNone.c} \\ -\bottomrule -\end{tabularx} -\caption{Passes: \src{caller.cpp:389--445}; \emph{runtime} linkado: -\src{caller.cpp:499--531}. \code{REACHABILITY} não precisa de um -\code{AnalysisMode} próprio porque \code{TARGET-REACHED} é escrito pela -biblioteca comum (\src{Map2CheckFunctions.c:62}). Cover-Branches é -deliberadamente o pipeline mais enxuto: menos instrumentação significa mais -caminhos explorados pelo KLEE no mesmo orçamento.} -\end{table} - -%================================================================ -\section{Veredictos e sub-propriedades} - -Um modo não produz um único veredicto. O runtime escreve em -\code{map2check\_property} um dentre nove valores --- o \emph{enum} tem dez, -mas \code{UNKNOWN} nunca chega lá (ver abaixo) --- oito dos quais são violações -concretas. Esta é a granularidade real da ferramenta --- e é o nível certo para -uma comparação contra outra ferramenta, já que \code{FALSE-FREE}, -\code{FALSE-DEREF} e \code{FALSE-MEMTRACK} compartilham a mesma flag mas são -defeitos distintos. - -\begin{table}[H] -\centering -\small -\begin{tabularx}{\textwidth}{@{}c L{3.4cm} L{3.3cm} Y@{}} -\toprule -\textbf{Cód.} & \textbf{Veredicto} & \textbf{Emitido por} & \textbf{Significado} \\ -\midrule -0 & \code{NONE} & todos & Nenhuma violação encontrada (\emph{TRUE}). \\ -1 & \code{UNKNOWN} \newline {\footnotesize(nunca gravado)} & --- & Indeciso. \textbf{As duas chamadas que o escreveriam estão comentadas} (\src{AnalysisModeMemtrack.c:308}, \src{AnalysisModeMemcleanup.c:298}); ver a Seção~\ref{sec:limitacoes}, item~11. \\ -2 & \code{FALSE-FREE} & Memtrack, Memcleanup & \emph{free} de ponteiro inválido, \emph{double free}, \emph{free} de memória não alocada. Também o \code{free} de WASM sobre \emph{offset} não alocado. \\ -3 & \code{FALSE-DEREF} & Memtrack & Dereferência de ponteiro inválido (nulo, liberado, fora da alocação). \\ -4 & \code{FALSE-MEMTRACK} & Memtrack & Memória alocada e não liberada (\emph{leak}). \\ -5 & \code{TARGET-REACHED} & TargetPass & A função-alvo é alcançável. \\ -6 & \code{FALSE-OVERFLOW} \newline {\footnotesize(gravado como \code{OVERFLOW})} & Overflow; \newline Memtrack (WASM) & Overflow em aritmética de inteiro com sinal. \textbf{No modo WASM é também o veredicto de acesso fora dos limites} da \emph{linear memory} (\src{AnalysisModeMemtrack.c:418--424}). \\ -7 & \code{ASSERT} & AssertPass & Assertiva do usuário violada. \\ -8 & \code{FALSE-MEMCLEANUP} & Memcleanup & Memória ainda viva no retorno do \code{main}. \\ -9 & \code{FALSE-DIVBYZERO} & Overflow & Divisão ou resto por zero. \\ -\bottomrule -\end{tabularx} -\caption{Fonte: \src{library/header/Map2CheckTypes.h:68--79} (enum -\code{ViolatedProperty}) e \src{frontend/utils/tools.hpp:105--116} -(\code{PropertyViolated}). Os pontos de emissão estão em -\src{AnalysisModeMemtrack.c:141,174,299,356,413,421}, -\src{AnalysisModeMemcleanup.c:142,170,346}, -\src{AnalysisModeOverflow.c:193} e \src{AnalysisModeAssert.c:20}.} -\end{table} - -\paragraph{Observação importante.} \code{FALSE-DIVBYZERO} \emph{não tem flag -própria}: divisão por zero é detectada como efeito colateral de -\flag{check-overflow}, porque a instrumentação de \code{SDiv}/\code{SRem} é a -mesma que checa o overflow de \code{INT\_MIN / -1}. Qualquer comparação com -outra ferramenta precisa acionar \flag{check-overflow} para cobrir CWE-369. - -%================================================================ -\section{Operações instrumentadas em \texttt{OVERFLOW\_MODE}} - -\begin{table}[H] -\centering -\small -\begin{tabularx}{\textwidth}{@{}L{3.3cm} C{2.9cm} Y@{}} -\toprule -\textbf{Instrução LLVM} & \textbf{Instrumentada} & \textbf{Nota} \\ -\midrule -\code{Add}, \code{Sub}, \code{Mul} & \yes & -Apenas a variante \emph{com sinal}. O critério é a \emph{flag} \code{nsw} da -instrução: \src{isUnitAssignment = !binOp->hasNoSignedWrap()}, então só a -aritmética que o clang marcou como \code{nsw} é instrumentada. As versões -\code{uint} existem no código porém estão comentadas. \\ -\code{SDiv} & \yes & Gera \code{FALSE-OVERFLOW} (\code{INT\_MIN / -1}) ou \code{FALSE-DIVBYZERO}. \\ -\code{SRem} & \yes & Idem. \\ -\addlinespace -\code{UDiv}, \code{URem} & \no & Aritmética sem sinal não faz parte da propriedade \code{no-overflow}. \\ -\code{Shl}, \code{LShr}, \code{AShr} & \no & -O \code{case} de \code{Shl} existe no \code{switch} mas tem \textbf{corpo -vazio} --- deslocamento à esquerda com perda de bits \emph{não} é detectado. \\ -\code{And}, \code{Or}, \code{Xor} & \no & \emph{Case} vazio. \\ -\code{FAdd}, \code{FSub}, \code{FMul}, \code{FDiv}, \code{FRem} & \no & -\emph{No-op} deliberado: o SV-COMP define \code{no-overflow} apenas sobre tipos -inteiros. \\ -\bottomrule -\end{tabularx} -\caption{Fonte: \src{pass/OverflowPass.cpp:325--424}. São \textbf{cinco} as -instruções efetivamente instrumentadas. A propriedade é avaliada -sobre \emph{o tipo resultante da operação}, conforme a definição do SV-COMP --- -ver o comentário em \src{OverflowPass.cpp:418} e -\src{pass/OperationsFunctions.hpp:63}.} -\end{table} - -%================================================================ -\section{Cobertura de CWEs} - -O repositório contém dois mapeamentos CWE${\rightarrow}$modo, ambos executáveis -e ambos versionados. Eles não são idênticos porque os benchmarks não são: o -CASTLE-C250 cobre CWEs de segurança mais amplas, e o Juliet cobre famílias de -memória e aritmética com muitas variantes por família. - -\subsection{Mapeamento consolidado} - -\begin{longtable}{@{\extracolsep{\fill}}l L{4.5cm} L{3.9cm} C{1.7cm} C{1.5cm}@{}} -\caption{União dos dois mapeamentos. \textbf{15 CWEs} distintos são -verificáveis. Fonte: \src{tests/castle/run\_castle\_evaluation.sh} -(\code{CWE\_MODE}) e \src{tests/juliet/run\_juliet\_evaluation.sh:108--126}. -\enquote{---} significa que o CWE não está naquele benchmark, não que seja -insuportado.}\label{tab:cwe}\\ -\toprule -\textbf{CWE} & \textbf{Descrição} & \textbf{Modo} & \textbf{CASTLE} & \textbf{Juliet} \\ -\midrule -\endfirsthead -\multicolumn{5}{@{}l}{\small\emph{(continuação da Tabela \thetable)}}\\ -\toprule -\textbf{CWE} & \textbf{Descrição} & \textbf{Modo} & \textbf{CASTLE} & \textbf{Juliet} \\ -\midrule -\endhead -\midrule -\multicolumn{5}{r@{}}{\small\emph{continua na próxima página}}\\ -\endfoot -\bottomrule -\endlastfoot -\multicolumn{5}{@{}l}{\emph{Segurança de memória --- \flag{memtrack}}}\\ -\midrule -121 & Stack-based buffer overflow & \flag{memtrack} & --- & \yes \\ -122 & Heap-based buffer overflow & \flag{memtrack} & --- & \yes \\ -125 & Out-of-bounds read & \flag{memtrack} & \yes & --- \\ -415 & Double free & \flag{memtrack} & \yes & \yes \\ -416 & Use after free & \flag{memtrack} & \yes & \yes \\ -476 & NULL pointer dereference & \flag{memtrack} & \yes & \yes \\ -761 & Free of pointer not at start of buffer & \flag{memtrack} & \yes & \yes \\ -787 & Out-of-bounds write & \flag{memtrack} & \yes & --- \\ -822 & Untrusted pointer dereference & \flag{memtrack} & \yes & --- \\ -843 & Type confusion (\emph{access of resource with incompatible type}) & \flag{memtrack} & \yes & --- \\ -\midrule -\multicolumn{5}{@{}l}{\emph{Aritmética --- \flag{check-overflow}}}\\ -\midrule -190 & Integer overflow / wraparound & \flag{check-overflow} & \yes & \yes \\ -191 & Integer underflow & \flag{check-overflow} & --- & \yes \\ -369 & Divide by zero & \flag{check-overflow} & \yes & \yes \\ -\midrule -\multicolumn{5}{@{}l}{\emph{Ciclo de vida de memória --- \flag{memcleanup-property}}}\\ -\midrule -401 & Missing release of memory (\emph{memory leak}) & \flag{memcleanup-property} & \yes & \yes \\ -\midrule -\multicolumn{5}{@{}l}{\emph{Assertivas --- \flag{check-asserts}}}\\ -\midrule -617 & Reachable assertion & \flag{check-asserts} & \yes & --- \\ -\end{longtable} - -\subsection{CWEs explicitamente fora de escopo} - -O runner do CASTLE declara treze CWEs como fora de escopo. Isso é uma decisão -deliberada e testada, não uma omissão: \src{test\_cwe\_mode\_mapping.sh} -\emph{exige} que todo CWE do benchmark esteja ou mapeado ou declarado fora de -escopo, justamente para que nada caia num modo degenerado em silêncio. - -\begin{table}[H] -\centering -\small -\begin{tabularx}{\textwidth}{@{}L{4.5cm} Y@{}} -\toprule -\textbf{CWEs} & \textbf{Motivo} \\ -\midrule -628, 674, 770, 835 & -Terminação e consumo de recurso (recursão descontrolada, alocação sem limite, -laço infinito). O Map2Check não implementa a propriedade de terminação. \\ -\addlinespace -22, 78, 89, 134 & -Injeção e uso indevido de dados externos (\emph{path traversal}, injeção de -comando/SQL, \emph{format string}). Exigem modelo de \emph{taint}, ausente. \\ -\addlinespace -253, 327, 362, 522, 798 & -Verificação incorreta de retorno, criptografia fraca, condição de corrida, -credenciais desprotegidas/embutidas. Nenhuma é expressável como uma das cinco -propriedades implementadas. \\ -\bottomrule -\end{tabularx} -\caption{Fonte: \src{run\_castle\_evaluation.sh:49} -(\code{OUT\_OF\_SCOPE\_CWES}).} -\end{table} - -\subsection{Cobertura no modo WebAssembly} - -Com \flag{wasm} a entrada é um binário \code{.wasm} elevado a C via -\code{wasm2c} (WABT $\geq$ 1.0.41) e daí a LLVM-IR. A análise é -\emph{agnóstica à linguagem-fonte}: instrumenta a \emph{linear memory} e as -chamadas \code{wasm\_rt\_*}, comuns a todo módulo elevado. O modo é forçado -para \code{MEMTRACK\_MODE}. - -\begin{table}[H] -\centering -\small -\begin{tabularx}{\textwidth}{@{}Y L{3.6cm} C{2.2cm}@{}} -\toprule -\textbf{Propriedade} & \textbf{CWEs de exemplo} & \textbf{Estado} \\ -\midrule -Acesso fora dos limites da \emph{linear memory}\newline -{\footnotesize (reportado como \code{FALSE-OVERFLOW}, não \code{FALSE-DEREF})} -& 121, 122, 124, 126, 127 & \yes \\ -Overflow aritmético & 190 & \yes \\ -Alcançabilidade de função-alvo/erro & --- & \yes \\ -\emph{Leak} / \emph{use-after-free} / \emph{double free} & 401, 416, 415 & \no \\ -\bottomrule -\end{tabularx} -\caption{Fonte: \src{README.md:92--99}. A última linha é trabalho futuro por uma -razão estrutural: no código elevado, o alocador da linguagem-fonte é compilado -\emph{dentro} da linear memory, então as chamadas \code{malloc}/\code{free} não -existem no IR. Rastrear memória ali exigiria uma convenção de exportação ou -heurística de detecção de alocador.} -\end{table} - -%================================================================ -\section{Eixos ortogonais} - -Não são propriedades, mas multiplicam a matriz de execução e precisam ser -fixados em qualquer comparação para que ela seja justa. - -\begin{table}[H] -\centering -\small -\begin{tabularx}{\textwidth}{@{}L{4.4cm} Y@{}} -\toprule -\textbf{Eixo} & \textbf{Valores} \\ -\midrule -Gerador de \emph{nondet} & \code{fuzzer} (LibFuzzer), \code{symex} (KLEE), nenhum \\ -Solucionador SMT & \code{z3} (padrão) e \code{stp} passam direto ao KLEE; -\code{btor} e \code{yices2} são roteados por \code{metasmt} e \textbf{não -funcionam} na imagem de referência (ver Seção~\ref{sec:limitacoes}, item~9) \\ -Entrada & C / \code{.i} / \code{.bc}; ou \code{.wasm} via \flag{wasm} \\ -Função de entrada & \flag{entry-function} (padrão \code{main}) \\ -Modificadores & \flag{slice}, \flag{seed-exchange}, \flag{add-invariants}, \flag{btree} \\ -Saídas & \flag{generate-witness}, \flag{generate-test-suite}, \flag{generate-testcase}, \flag{print-counter} \\ -\bottomrule -\end{tabularx} -\caption{Fonte: \src{map2check.cpp:719--766}.} -\end{table} - -\paragraph{Funções \emph{nondet} reconhecidas (16).} -\code{\_\_VERIFIER\_nondet\_} seguido de: -\code{int}, \code{uint}, \code{unsigned}, \code{char}, \code{uchar}, -\code{pchar}, \code{short}, \code{ushort}, \code{long}, \code{ulong}, -\code{bool}, \code{pointer}, \code{size\_t}, \code{loff\_t}, -\code{sector\_t}, \code{double} -(\src{pass/NonDetPass.cpp:155--171}). Além disso, -\code{\_\_VERIFIER\_assume} e \code{assume\_abort\_if\_not} são reescritos como -poda de caminho em vez de \code{abort()} -(\src{NonDetPass.cpp:33--99}) --- sem isso, uma suposição falhando deixava um -\code{abort.err} indistinguível de uma violação real. - -\paragraph{Códigos de saída.} -\code{0} sucesso; \code{1} erro de linha de comando; \code{3} a opção é válida -mas esta compilação não tem a capacidade (é o caso de \flag{add-invariants} -sem \code{-DENABLE\_CLAM=ON}); \code{4} o veredicto divergiu de -\flag{expected-result}. O código \code{4} substituiu um \code{abort()}, que -fazia o BenchExec ler \enquote{resposta errada} como \enquote{ferramenta -quebrada} (\src{map2check.cpp:47--60}). - -%================================================================ -\section{Limitações conhecidas} -\label{sec:limitacoes} - -Registradas aqui porque uma comparação que as ignore mede a coisa errada. - -\begin{enumerate}[leftmargin=*,itemsep=3pt] - \item \textbf{Overflow sem sinal não é instrumentado.} As variantes - \code{uint} de \code{Add}/\code{Sub}/\code{Mul} estão no código, porém - comentadas. Isso está alinhado com a definição do SV-COMP, mas diverge - do que uma ferramenta genérica de análise poderia reportar. - \item \textbf{Ponto flutuante é \emph{no-op} deliberado.} - \code{FAdd}/\code{FSub}/\code{FMul}/\code{FDiv}/\code{FRem} não geram - veredicto. - \item \textbf{Deslocamento à esquerda não é checado.} O \code{case} de - \code{Shl} em \src{OverflowPass.cpp:395} tem corpo vazio, como - \code{LShr}, \code{AShr}, \code{And}, \code{Or} e \code{Xor}. Um - \code{x << n} que perde bits significativos passa como \emph{TRUE}. - \item \textbf{Divisão por zero não tem flag própria} --- só é alcançada via - \flag{check-overflow}. - \item \textbf{Três veredictos geram uma \emph{witness} de corretude apesar de - serem violações.} O \code{switch} de - \src{witness/graph.cpp:208--237} tem \code{case} para - \code{FALSE-FREE}, \code{FALSE-DEREF}, \code{FALSE-MEMTRACK}, - \code{TARGET-REACHED} e \code{FALSE-OVERFLOW}. \code{ASSERT}, - \code{FALSE-MEMCLEANUP} e \code{FALSE-DIVBYZERO} caem no - \code{default}, que constrói um \code{CorrectnessWitnessGraph} --- e, - sem \code{spectTrue}, o rotula com a especificação \code{MEMSAFETY}. - Afeta apenas execuções com \flag{generate-witness}; o veredicto - impresso e o código de saída continuam corretos. - \item \textbf{Alcançabilidade com alvo \code{main} é degenerada.} O - \code{TargetPass} instrumenta \emph{sítios de chamada} cuja função - chamada tem o nome dado; um programa nunca chama o próprio \code{main}. - Na baseline v6, 98 de 217 execuções passaram por esse modo e produziram - zero \code{FALSE} em 59 programas sabidamente vulneráveis. O teste - \src{test\_cwe\_mode\_mapping.sh} hoje proíbe esse mapeamento. - \item \textbf{Invariantes (Clam) são \emph{opt-in}.} Um invariante não-sólido - produz um \code{TRUE} errado em vez de um erro, o que é a falha mais - cara possível --- por isso exige \code{-DENABLE\_CLAM=ON} \emph{e} o - driver instalado. - \item \textbf{\emph{Slicing}, \emph{seed-exchange} e WASM rodam nos defaults} - da biblioteca; estão integrados, não ajustados. Qualquer número medido - sobre eles reflete a configuração padrão, não um limite da técnica. - \item \textbf{Dois dos quatro solucionadores não existem no build.} A CLI - aceita \code{z3}, \code{stp}, \code{btor} e \code{yices2} - (\src{map2check.cpp:804}), mas \code{btor} e \code{yices2} são - entregues ao KLEE como \code{-{}-solver-backend=metasmt} - (\src{caller.cpp:748--758}) e o \code{Dockerfile.dev} compila o KLEE - apenas com \code{ENABLE\_SOLVER\_Z3} e \code{ENABLE\_SOLVER\_STP} --- - sem metaSMT, sem Boolector, sem Yices. Passar um deles é aceito na - linha de comando e falha na execução. - \item \textbf{O veredicto de overflow é gravado como \code{OVERFLOW}, não - \code{FALSE-OVERFLOW}.} \src{PropertyGenerator.c:97} escreve a string - \code{OVERFLOW} em \code{map2check\_property}, e é isso que - \src{tools.cpp:228} lê de volta. \code{FALSE-OVERFLOW} é o nome do - valor do \emph{enum}, não o texto no arquivo: um harness que procure - \code{FALSE-OVERFLOW} não casa com nada. - \item \textbf{\code{UNKNOWN} nunca é gravado, e o arquivo alternativo tem o - nome errado.} O \code{switch} de \src{PropertyGenerator.c} tem - \code{case UNKNOWN:}, mas as duas únicas chamadas - \code{write\_property(UNKNOWN, ...)} estão comentadas - (\src{AnalysisModeMemtrack.c:308}, - \src{AnalysisModeMemcleanup.c:298}) --- é código morto, do mesmo tipo - do \code{case} de \code{Shl}. O runtime usa - \code{write\_property\_unknown()}, que escreve num arquivo à parte - chamado \code{map2check\_property\_\_unknown} (dois sublinhados, - \src{PropertyGenerator.c:16}); o frontend abre - \code{map2check\_property\_unknown} (um sublinhado, - \src{tools.cpp:114}). Os dois nomes não coincidem, então esse arquivo - também nunca é lido. O tool ainda \emph{reporta} - \code{VERIFICATION UNKNOWN}, mas por outras rotas --- o inicializador - do campo (\src{tools.hpp:136}), o \code{map2check\_property} ausente ou - ilegível (\src{tools.cpp:102,252}) e o próprio frontend em caso de - estouro de tempo (\src{map2check.cpp:581,585}). O que não existe é o - caminho pelo qual o \emph{runtime} declararia indecisão. - \item \textbf{KLEE: \flag{max-time} exige segundos inteiros.} Um valor - fracionário encerra a execução em silêncio. -\end{enumerate} - -%================================================================ -\section{Resumo quantitativo} - -\begin{table}[H] -\centering -\small -\begin{tabularx}{\textwidth}{@{}Y c@{}} -\toprule -\textbf{Dimensão} & \textbf{Total} \\ -\midrule -Modos de verificação implementados & 6 \\ -\quad dos quais checam uma propriedade & 5 \\ -Valores do \emph{enum} \code{ViolatedProperty} & 10 \\ -\quad realmente gravados em \code{map2check\_property} & 9 \\ -\quad que são violações concretas & 8 \\ -\quad que geram \emph{witness} de violação & 5 \\ -Tipos de especificação de \emph{witness} (\code{SpecificationType}) & 6 \\ -Instruções LLVM instrumentadas para overflow & 5 \\ -Funções \emph{nondet} reconhecidas & 16 \\ -CWEs verificáveis (união CASTLE $\cup$ Juliet) & 15 \\ -CWEs declarados fora de escopo & 13 \\ -Solucionadores SMT aceitos pela CLI & 4 \\ -\quad utilizáveis na imagem de referência (Z3, STP) & 2 \\ -Geradores de entrada selecionáveis (\flag{nondet-generator}) & 2 \\ -\bottomrule -\end{tabularx} -\end{table} - -\end{document} diff --git a/docs/Map2Check-WASM-Transformacao-Formal.pdf b/docs/Map2Check-WASM-Transformacao-Formal.pdf deleted file mode 100644 index d43e1181cdefa3fecb0097872aa9a0c5bc866b74..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 572196 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

m{hSL34`WS$(2 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

Q)j?Z_8He^cw3 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Ⓢ5R>YlZh4Q=Ym8pn#fufWh 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

DL0y$5GwpJbgE!>>+ptXqUuNFP_bLpcbgo;%>~ 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�ZRT0_2%U)Y}GaAYQb&1PX2s#)4NKAT-=(r5 z$i0gGlR_`CT%GRZAl!O8F#I;7>NFsX{f=3UUY?kmIhIp(;+C&zv!B>ok;gJR82%ha zx-huN9?$Ih@jdyqFlA}tDFpy(J$glnPf$l$L8AEf^Dr-kAHa+5)baQEK9ngOg+9q- zLpW!P9i`OD;e`76F3TlD)(P61wW%IYU{jZBxSnuLMzBIvWew* zIxByDaYI;QhSU+uy`FWTXjcIc*py9sy@TbeoGauFl(^QUV*NWjIEBM^a zMuo+K6BpwUqApdU8aoV4r>5;Y0r&~ntnkSacq+?Z3}@9cDOS0#(!;}Zv|=`g@J@2o zV;1xZ-!va{ig$a22q!5yr8!4nIM`SHg{9WNu_uB<&PW&ZLl2?Qf{xtlkA-dXC`222 zsgMR~f+4DPh&HA)2Pc~IIs{9800lNzJ#@3B$qtePgvYqYjW>hjPl>HLky2ck;vrsm z@y6u+H%u#`EWN`1*9cYNiWEOOPu5z}7ee4pxVX&ymnxKaflc1Wkc0C|1RV8R$~cD^ z!bc`34t@j!^^a_2?(D1{k^m#PKVWeFW^}1g2z*4&9fw51H{KMD3?$zImUW@YeIY%h z=+EQmVY*-b*wXBJ|AS9yGGX7zxRXopwBfUp4EGXdN&I<+4+tB-O?QY&;$~(lYb02( zkhT`}&O8fe0;NEMPZkz`_zAW~!PZ&G_bFM)W_y&E**<;(GX!e8)f$a(idPkb>Ddt) zMgj)tVS0Mk7y)uf5STKMgjGD{D!x8&zKFQ+PRwY`#6Y7 zN)P*cSjZ`-9d3nm{9|w~3@L-ZT~4mtu@{&x5BO*W%i7uH-ti*5pzlco8xRU(#4w#G9!LaO2y~V6cUaSCFBc1cZlH6#rwNL> zh~@Q;+zrmZa7Jgk-gfRwJwIHFv)XE)970PpaxOE3T(|v*uaggRh_eNs6pJzvER+R4 z&~^s)TBR%ftz%;`@FC07&Q>yYE}KF@*wn86zE4!Cc}tdkU&wT?ooRIQgeNGlVLB9O zYNl1sHu#`mV2zuzI8pX2C#8xbO2YQ_9u7PHDA-eEO>zd8%mt;!MSuQ++F{0?Q1>i? zG(-jHc2>OLI4+RNeo#pfvKFTg$7Ho#oELyeS}hiI=3xaJWx$x@gflZ_dRac}=k=#L66Vk6R-I6Rgj~CvFfL5WWe1!}B7p zGT!%si2cU(R8uXavz^b3a^~|BpjPC3)^9i~j>leLZHiTz?XTDG;9F{g3HVfTFyxMd zCaT7{z@s&NE0wG4Rho+{*XBLXs8-5G9HT)cy|pQ%qWdzjmEk{-iemXwk(WP)g52ps z=ak4ACNyJb?l*;C-cyxK#{k32WxUsKnbQYT>*%k;m&=x$q30GYBoK7jPEW5HAT8wg zc~|SK5uX~dcc?OWrUs9K-^<$CGCn(TSIKb7&b7XPLSU?tH+^!YvMcX&v>;k5^~$gK zgYlLWao#5$-BEP`-;AaXs#Y#&TSn8n{Xwk7K?|o^Tq-?`KxUU%pk;4;g`tT?WfJq! zxfg9rPIV7W{%2<9lB9!~Uw6quo~P>y73cZ@X*{(dnn8Xai(q7Oz~KIV!dM)#*{dhZ z8gs*uE2}?e6nVA)Yb~S-wQFstL7L#7kqL{=1DjJyA=ZH-dM=X)7B-V^$P&-J`af52&J8Mehy7?fLN~V;`Qf~eCP?DXJ*Hkmq%05YoGPK@!-((ebPc_B#i8W{K z>SKuV^-nJB5H1U%UdX+6C$+%{cax(E+s_~|gL231Y8r23z~~0QJZgWD95&N4KP7{ORX|n*)*t(zh&^o4n^OH zhtnI9#i2_0MKA(x0`3A9ZT!GkC|kOe1B2bqjzgFH>{<-4nJ-V(#d1cs+qb|$Ehc!@ zJg|FGuGnoz#E_q_$Nicbe2J8j{Ny3t-i6_gOhlDY&;rB<#$Tqs%+&8RVDh>?oMBsB zyaB}r+h98Ec$CT(=O~eD>rzyWWW&NnfL!)7mHoqvZHrbZnc6Cs;qKL?w%|%%?fJOR zD+STNHM6uY{pE~&b%b~$U2*NB<9*g~fw5H20hO~(j?j(Ft>_lOvG3Gzw}l3;4zYfp z-S@Lih5f<`Sw+bkxQHV<0i{L}Kg zpyEh<7m5lAG}Pq^NymU;Z@k8s-Dh4R-UM8TqS3E+VgGk#Qir?8AUhoYsN zA(VL=47Xp_k*+>W_MrE?g{>{96G??f@FphI1t=B9ksbJIyNCHBAs>?X3Gg6IA201g z|7?93-eDs+y#7%@d6H-AlNh*tuB&h){%aNAD57*{>!ldfi}{sI|F-1qz%y~W$Jk|6 zp*JA}-s{IY?sz=0oFfI0rzLV)-kFue`6<0CyE-Rg8Qpk^yBrNom}zI2REhiHVuae4 zl(^)Cesj4n1>T#Mb;UcL@!-h5F-=-g9pK(M^tIT$$sPuC>N2{MflR4f;xq!Q>U8P@ zw;*fqT&6wcdaIoQ2({f^O|fV@QN6FBDs!YYt&;nBwG@Mj+vDAC0>WcsOuhl%rQB_A zs-;C_Lfu6GOsq9-6G%nAviN?#w}Nd^B(1z(r0?^Kh@vg@nu;gMuS)&)5_9d;ukCF~ zj61(thpF|q+BR8Wj_WL|P|Si#>Ce@Ut&$oH&%JPjiHc+Y45Hke7&nHG0Hik8Rxp~* zIW-Yc{@~|If81~WGo08j_#(5xRJ~G^HkeWCd%BHdE0VZ<73(LWY{rwnV~7|{s46c6 zJ}LHi=cEicpr8{Up>zT)>b{o+g9JlU#i#``4bxW7G?6{a>8n`H_Xtd%@J?j<3W4s` z0gprZ3mWELRzk*tW!!+duu!J@^xPm72;z&3aEJg0Y!MP!Ku^@aOP8NN<@W#_BBU&Z zqHFGO-|}WQrvY(0cG_O$>qXO7^n_a{;U^;eaIQL+;bFq|_MW0(*glr3%ZsC$AWSVb zfsIcS&yqFZo_xVApkkJx&ePos`7^>>B(h!{%1M{JiHO{QYLoQhm^76zMg~=!pcVLw z9k(1r7P-N6a#K$fkq`n(vxowFtl~pfhqw2|sfi$Tmdz`@Rr!tmDq4XsKw!u^jY2c} zZAB|_=@{D5Dt0)JT8O&D?U0(Wxow4Z2C4M2<-BH;-w9VqI=;;7BtOpb<7fNy`MwzlN^kQ-YL5hkWH+@S9i%00%EagF;%+J;K@jVl-DvVWf_}SPC)K8?{gg(n1BjS4zeS z7ok}@mhKKu{c10_F60eZo?xAem_Swvk_Wvjp>K%ZMeG%&J+(y&a>#F(+;F4?YB}2P zD<9j8scBt*IFLR3SG6@y57qzCYZc02B7EjXHj);fW`Sz=$=$M882GF>^Mis`?plpB zN<@Bz;xhbO4HVnCeSi$6-v4U0x3=*rsRX_?3ivsyxrHbrlM}?*E?$?nf;a4Gvh_9O zK^cr+44_`aT^a)!ObvI;yM=aVL7%Ml;u%{#YvvO4v!bZ5ETltk{m59@>8uChLOhZM z)^ga~25l4_r#l{2)am3}P2uvtMo?Ty^gR*=1!&r`9Zbh?p)}=&)IkXRI$& zsL=Jbb0DvKXlNcz55VWVw@&)vqD#>wCG-8o;SO423mebpoaVt@y~`6fWKh4kROMs5R@5UB@Sz~1va`@V_4^S(W8fSR!&2`5OoNA6{wWgJJ@PY|b4g~CL4`4aB_r7)I9yOjlC4>BR zE>}@7z?r`Wf5ku&)C}`YGzB}m%hk9*Lr0I*G9htTVg*Hgro$V2ivko`D51QFSp|i9 zs?WMA6|r;7_iTFa&c;B3uMf`qcHR<{SjYIL)k>dKd1t7mB315a9%K5xYyLi$P!H`n z*85PrM}=L7|7SK!vU>7A*kNuxzD@{t^=aazl|=S+^MMt7c_ z{l_UUtq0Ben&gX6*jaV<6!iRE{UjDzo&)xsPfZaO7^e>oLnwxVkA-ac@?!&P-+{&K zPv$cuXs9vn+4B0(MPvlY^k(xNYYx-hVw?f~A~cBiB){`$odFu^@>N=2 z$CK8}f0;1Gk_%$}2g{;lpbf!N2XxSrq{~)M%P(~&*9RK|H3kirqe7QbYi&sAHv5wN zlE6cGx zYFx(j|4Jhwf0`CHe?l*B7uAvodFQ(I9d&RDIDZ+RDFOq*(!X-m@0lVqxBz$H5zH6+wMqm=1`?I=gyj`|Di2Kh9ZYu{`G~ zo3!>^zq{37&m{3SW<$N=3+^}BI5b!bnP-cwU$tCI=Vdll_&T5pG#lo7`xCjq;6l+o zR;Oevg1Jl+vHcK`HEJY7@qVA2Dm^MDzMdWz0XRmId${MSbQPy~-VtWO$eOiSq}UvW zO|ngAdZnm~J

{m%a95l^j_O9e)hbf#6Y45?@>txV3m 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 LLVM-IR no Map2Check -% Compilar no Overleaf com pdfLaTeX. Sem dependencias fora do TeX Live padrao. -% -\documentclass[11pt,a4paper]{article} - -\usepackage[T1]{fontenc} -\usepackage[utf8]{inputenc} -\usepackage[brazil]{babel} -\usepackage{lmodern} -\usepackage{microtype} - -% Caminhos longos em \texttt nao quebram; isto evita que estourem a margem -% sem precisar de \sloppy global. -\setlength{\emergencystretch}{3.5em} - -\usepackage[margin=2.8cm]{geometry} -\usepackage{amsmath,amssymb,amsthm} -\usepackage{mathtools} -\usepackage{booktabs} -\usepackage{tabularx} -\usepackage{listings} -\usepackage{xcolor} -\usepackage{enumitem} -\usepackage[hidelinks]{hyperref} -\urlstyle{tt} % \path{} para caminhos longos -\def\UrlBreaks{\do\/\do\.\do\-\do\_\do\{\do\}} - -%---------------------------------------------------------------- ambientes -\theoremstyle{definition} -\newtheorem{hipotese}{Hipótese} -\newtheorem{proposicao}{Proposição} -\renewcommand{\qedsymbol}{$\blacksquare$} - -%---------------------------------------------------------------- macros -\newcommand{\sem}[1]{[\![#1]\!]} % colchetes semanticos, sem stmaryrd -\newcommand{\Safe}{\mathrm{Safe}} -\newcommand{\Reach}{\mathit{Reach}} -\newcommand{\wasm}{\mathrm{wasm}} -\newcommand{\lin}{\mathrm{lin}} -\newcommand{\code}[1]{\texttt{#1}} - -% Regra de inferencia, sem dependencia externa: premissas sobre a barra, -% conclusao embaixo, nome da regra a direita. -\newcommand{\rulelabel}[1]{\textnormal{\textsc{\footnotesize #1}}} - -%---------------------------------------------------------------- listings -\definecolor{cmtgray}{gray}{0.42} -\lstset{ - basicstyle=\ttfamily\small, - commentstyle=\color{cmtgray}\itshape, - keywordstyle=\bfseries, - showstringspaces=false, - columns=fullflexible, - breaklines=true, - frame=leftline, - framesep=8pt, - xleftmargin=10pt, - captionpos=b -} - -%---------------------------------------------------------------- titulo -\title{\textbf{A transformação WebAssembly $\rightarrow$ LLVM-IR no Map2Check}\\[0.4em] - \large Formalização da cadeia de \emph{lifting}, e o que ela\\ - demonstravelmente preserva e perde} -\author{Projeto Map2Check} -\date{4 de setembro de 2026} - -\begin{document} -\sloppy % prefere espacamento folgado a texto invadindo a margem -\maketitle - -\begin{abstract} -\noindent -Formalizamos a cadeia de transformações que leva um binário \code{.wasm} até o -programa instrumentado que o Map2Check analisa, decompondo-a em cinco funções e -enunciando explicitamente as duas hipóteses de correção sobre as quais ela -repousa. Dois resultados decorrem da formalização. A cadeia é \emph{sound} para -as classes de \emph{trap} cujo teste o código gerado efetivamente contém, um -subconjunto próprio das dez do WebAssembly, e dependente do módulo, pois o teste -de limites da memória linear é elidido na configuração de compilação empregada, -e isso já vale na implementação atual, sem vir sendo reivindicado. E a cadeia -é incompleta para segurança de memória intra-\emph{sandbox}, precisamente a -classe de vulnerabilidade declarada como alvo do projeto, por uma razão -estrutural: a memória linear chega ao verificador como uma única alocação de -\emph{heap}, de modo que a sobrescrita de um objeto vizinho não é observável por -predicado algum em jogo. Damos o contraexemplo por construção, verificado por -execução, e derivamos do enunciado o requisito exato que uma modelagem de memória -linear teria de satisfazer, requisito que, como se verá, está parcialmente -implementado e inoperante. -\end{abstract} - -\tableofcontents -\bigskip - -%================================================================ -\section{Objetivo e escopo} - -Este documento descreve, passo a passo e por meio de uma -formalização explícita, a cadeia de transformações que leva um binário -\code{.wasm} até o programa instrumentado analisado pelo Map2Check. - -O objetivo não é apenas documentar a implementação, mas tornar -\textbf{preciso} o que a cadeia preserva e o que ela perde. Essa distinção é -fundamental para determinar quais resultados experimentais podem ser atribuídos -ao Map2Check e quais não podem. Duas proposições emergem dessa formalização, e -ambas delimitam o que pode ser afirmado sobre a frente WASM. - -A semântica de referência do WebAssembly é a de Haas et al., \emph{Bringing the -Web up to Speed with WebAssembly} (PLDI 2017), e a especificação normativa dela -derivada. O tradutor é o \code{wasm2c} do WABT 1.0.41. Todas as afirmações sobre -o código gerado foram verificadas na saída real do WABT na imagem -\path{ghcr.io/hbgit/map2check-dev}, não inferidas da documentação. - -Referências de implementação: \path{modules/frontend/wasm_lifter.{hpp,cpp}}, -\path{modules/frontend/caller.cpp} (função \code{generateWasmWrapperStatic}) e -\path{modules/frontend/map2check.cpp} (bloco \code{args.wasmMode}). - -%================================================================ -\section{Sumário dos resultados} - -Para o leitor que precisa apenas da conclusão, antes do desenvolvimento. - -\paragraph{Proposição~\ref{prop:sound}, a cadeia é \emph{sound} para os -\emph{traps} cujo teste o código gerado contém.} -O \code{wasm2c} traduz as condições laterais das regras de redução em testes -explícitos, e o \emph{stub} de \code{wasm\_rt\_trap} do Map2Check encaminha o -resultado a \code{map2check\_error()}, o mesmo sinal que o modo de -alcançabilidade já consome. Divisão por zero, \emph{overflow} de divisão, -\code{unreachable} e as demais classes cujo teste é emitido incondicionalmente -\textbf{são detectáveis hoje}, sem trabalho adicional. Este resultado existe e -não estava sendo alegado. - -Duas ressalvas o delimitam, e nenhuma é secundária. Primeira: para memórias -lineares de 32 bits com página padrão, e na configuração de compilação que o -Map2Check emprega, o teste de limites \textbf{não é emitido}, -o WABT o substitui por páginas-guarda (Seção~\ref{sec:guardpages}). Segunda: a -proposição é de \emph{soundness}, isto é, de ausência de falso positivo; -detectabilidade é a recíproca, e depende ainda de o \emph{harness} alcançar o -teste (Seção~\ref{sec:harness}). - -\paragraph{Uma incompatibilidade entre compilação e \emph{runtime}.} -O código gerado omite a verificação de limites porque supõe páginas-guarda, -enquanto o \emph{runtime} que o Map2Check efetivamente liga aloca a memória -linear com \code{calloc}, que não as tem (Seção~\ref{sec:mismatch}). O acesso fora -dos limites não é detido por teste emitido nem por hardware. - -\paragraph{Proposição~\ref{prop:incompleta}, a cadeia é incompleta para -segurança de memória intra-\emph{sandbox}.} -Esta é justamente a classe de vulnerabilidade declarada como alvo principal do -projeto. A memória linear chega ao verificador como \textbf{uma única alocação}, -de modo que a sobrescrita de um objeto vizinho \emph{dentro} dela não é observável -pelo predicado de segurança do Map2Check. A demonstração é por construção, o -contraexemplo tem quatro linhas de C, e foi \textbf{confirmada por execução}. A -causa é estrutural, não um defeito de implementação. - -\paragraph{O mapa de objetos existe, e não dispara.} -O \code{MemoryTrackPass} tem um -caminho WASM dedicado que rastreia alocações \emph{por deslocamento dentro da -memória linear}, em substância, o mapa de objetos que a Seção~\ref{sec:mapaO} -descreve como o que falta. Ele não dispara: o casamento de padrão exige uma forma -de instrução que o IR do \code{wasm2c} não produz -(Seção~\ref{sec:mortocodigo}). Construir esse mapa deixa, portanto, de ser -pesquisa e passa a ser depuração. - -\paragraph{Consequência imediata.} -A validação existente em \path{docs/reports/wasm-juliet-validation.csv} não separa -os mecanismos possíveis de detecção, e a Proposição~\ref{prop:incompleta} mostra -que um deles é impossível no caso intra-memória. Enquanto essa separação não for -feita, os dados são consistentes com a hipótese de que \textbf{a tradução -encontrou os defeitos e o Map2Check apenas reportou o sinal resultante} -(Seção~\ref{sec:atribuicao}). - -%================================================================ -\section{Notação} - -Esta seção fixa apenas a notação de base. \textbf{Todo símbolo empregado no -documento, incluindo os introduzidos adiante, está reunido, com leitura em -palavras e definição, no glossário do Apêndice~\ref{ap:glossario}.} - -Seja $\mathbb{B} = \{0,\dots,255\}$ o conjunto dos bytes. Escrevemos $[a,b)$ para -o intervalo inteiro semiaberto. Para uma função parcial $f$, $\operatorname{dom}(f)$ -é seu domínio. - -O tamanho de página do WebAssembly é a constante -\[ - P = 65\,536 . -\] - -Os tipos de valor são -$\mathit{valtype} = \{\mathtt{i32}, \mathtt{i64}, \mathtt{f32}, \mathtt{f64}\}$, -e $\mathit{Val}$ denota o conjunto dos valores correspondentes. - -%================================================================ -\section{Passo 0, o objeto de entrada} - -Um módulo WebAssembly é a tupla -\[ - M = (\mathit{types},\ \mathit{funcs},\ \mathit{tables},\ \mathit{mems},\ - \mathit{globals},\ \mathit{elem},\ \mathit{data},\ \mathit{start},\ - \mathit{imports},\ \mathit{exports}). -\] - -Três componentes importam para o que segue. - -\begin{itemize}[leftmargin=1.4em] - \item $\mathit{mems}$, que na versão 1.0 do WebAssembly tem - \textbf{cardinalidade no máximo 1}. Esta é a hipótese estrutural que - sustenta todo o resto do documento: existe uma única memória linear por - módulo. - \item $\mathit{exports} : \mathit{Name} \rightharpoonup \mathit{ExternIdx}$, - que dá as funções visíveis de fora do módulo. - \item $\mathit{imports}$, que dá as funções fornecidas pelo \emph{host}. Em - contexto de IoT, é por aqui que passam acesso a sensores, rede e banco de - dados. -\end{itemize} - -O \textbf{estado de execução} é o par $(s,F)$, com \emph{store} -\[ - s = (\mathit{funcs},\ \mathit{tables},\ \mathit{mems},\ \mathit{globals}) -\] -e \emph{frame} $F$ contendo os locais e a instância corrente. Uma configuração é -$s; F; e^{*}$, onde $e^{*}$ é a pilha de instruções, e a semântica é dada por uma -relação de redução em passos pequenos -\[ - s; F; e^{*} \hookrightarrow s'; F'; e'^{*} . -\] -O termo distinguido $\mathtt{trap}$ é absorvente: nenhuma regra o reduz. - -\subsection{A memória linear} - -Uma instância de memória linear é definida como -\[ - \mu = (d,\ \ell), \qquad d : [0,\ell) \to \mathbb{B}, \qquad \ell = n \cdot P -\] -para algum $n \in \mathbb{N}$. - -Isto é: \textbf{um vetor plano de bytes, contíguo, -endereçado por inteiros de 32 bits}, sem qualquer estrutura interna. Não há -noção de objeto, de alocação ou de fronteira entre variáveis. Este fato é -central para tudo o que segue e merece ser explicitado: a memória linear não é -um espaço de endereçamento que contém objetos distintos; \emph{é um único -objeto}. - -\paragraph{Os símbolos da instrução de acesso.} -A regra abaixo emprega seis identificadores que convém fixar antes de lê-la, pois -reaparecem em todo o documento: - -\begin{description}[leftmargin=4.2em,style=nextline,font=\normalfont\itshape] - \item[$t$] o tipo de valor lido ou escrito, elemento de $\mathit{valtype}$; - aparece como prefixo da instrução, em $t.\mathtt{load}$. - \item[$N$] a \textbf{largura do acesso em bits}, $8$, $16$, $32$ ou $64$. - Logo $N/8$ é o número de bytes tocados pela instrução, e é sempre - nessa forma que $N$ comparece. - \item[$i$] o \textbf{índice dinâmico}, valor \code{i32} retirado do topo da - pilha de operandos. É a parte do endereço que depende da execução. - \item[$\mathit{offset}$] o \textbf{deslocamento estático}, constante imediata - codificada na própria instrução. - \item[$ea$] o \textbf{endereço efetivo} (\emph{effective address}), definido - como $ea = i + \mathit{offset}$. É o índice, em bytes, dentro da - memória linear, a partir do qual o acesso ocorre. Não é um ponteiro - do processo: é um inteiro em $[0,\ell)$. - \item[$c$] o valor resultante da leitura, do tipo $t$. -\end{description} - -\noindent -O acesso, portanto, toca os bytes de índice $ea$ até $ea + N/8 - 1$, e a questão -de segurança é apenas se esse intervalo cabe em $[0,\ell)$. - -A regra de leitura, -na forma relevante para a análise, é - -\begin{equation*} - \frac{\;\; ea = i + \mathit{offset} \qquad ea + N/8 \le \ell \;\;} - {\;\; s;\ F;\ (\mathtt{i32.const}\ i)\ (t.\mathtt{load}\ N\ \mathit{offset}) - \ \hookrightarrow\ s;\ F;\ (t.\mathtt{const}\ c) \;\;} - \tag*{\rulelabel{load}} -\end{equation*} - -\noindent -e, quando a condição lateral falha, - -\begin{equation*} - \frac{\;\; ea + N/8 > \ell \;\;} - {\;\; s;\ F;\ (\mathtt{i32.const}\ i)\ (t.\mathtt{load}\ N\ \mathit{offset}) - \ \hookrightarrow\ s;\ F;\ \mathtt{trap} \;\;} - \tag*{\rulelabel{load-trap}} -\end{equation*} - -A regra de escrita é simétrica: a mesma condição lateral governa -$t.\mathtt{store}$, que consome um valor adicional da pilha e não devolve -resultado. O contraexemplo da Seção~\ref{sec:prop2} é uma escrita, e é a essa -regra que ele apela. - -É importante observar a forma da -condição lateral, -\[ - ea + N/8 \le \ell. -\] -Essa mesma condição reaparece, na forma de código C, na seção seguinte. - -%================================================================ -\section{Passo 1, $\tau$: o tradutor \code{wasm2c}} - -Definimos -\[ - \tau : \mathit{Wasm} \longrightarrow \mathit{C} -\] -como a função implementada pelo \code{wasm2c} do WABT 1.0.41, invocada em -\code{WasmLifter::runWasm2c} por - -\begin{lstlisting} -wasm2c .wasm -o .c -\end{lstlisting} - -\noindent -produzindo o par de arquivos \code{.c} e \code{.h}. - -\subsection{Representação do estado} - -$\tau$ realiza o \emph{store} $s$ como uma \textbf{estrutura de instância} $I$. A -memória linear $\mu = (d,\ell)$ torna-se o registro \code{wasm\_rt\_memory\_t}, -cujos campos relevantes são -\[ - \code{data} \mapsto d, \qquad \code{size} \mapsto \ell, -\] -com \code{data} obtido de uma \textbf{única} chamada de alocação, em -\code{wasm\_rt\_allocate\_memory}. Registre-se o quantificador: \emph{uma} -alocação, para \emph{toda} a memória do módulo. É desse fato que a Proposição~2 -decorre. - -Cada função $f$ do módulo torna-se uma função C -\[ - \tau(f) : \code{w2c\_}\langle \mathit{mod} \rangle \code{*} - \times \overline{\mathit{Val}} \longrightarrow \mathit{Val}, -\] -nomeada segundo o esquema \code{w2c\_\_}. O primeiro parâmetro é -o ponteiro de instância: é assim que o estado global do WASM se torna estado -explícito de primeira classe no C. - -\subsection{A condição lateral torna-se código} - -Eis o ponto técnico central. $\tau$ \textbf{compila a condição lateral da regra de -redução em uma verificação dinâmica explícita}. No C gerado, verificado na saída -real do WABT 1.0.41: - -\begin{lstlisting}[language=C] -#define MEM_ADDR(mem, addr, n) &((mem)->data[addr]) - -#define RANGE_CHECK(mem, offset, len) \ - do { \ - uint64_t res; \ - if (UNLIKELY(add_overflow(offset, len, &res))) \ - TRAP(OOB); \ - if (UNLIKELY(res > (mem)->size)) \ - TRAP(OOB); \ - } while (0); - -#define TRAP(x) (wasm_rt_trap(WASM_RT_TRAP_##x), 0) -\end{lstlisting} - -Comparando com a regra \textsc{load}: \code{res > mem->size} é exatamente a -negação de $ea + N/8 \le \ell$, e \code{TRAP(OOB)} é exatamente $\mathtt{trap}$. -A tradução é literal, \emph{onde este macro é usado}, ressalva que a -Seção~\ref{sec:guardpages} torna decisiva. - -Definindo então o predicado -\[ - \Safe_{\wasm}(\mu,\ ea,\ N) \;\equiv\; ea + N/8 \le \ell, -\] -o programa C avalia $\Safe_{\wasm}$ em tempo de execução antes de cada acesso, -desviando para \code{wasm\_rt\_trap} quando ele é falso, \textbf{sob uma das -duas estratégias de verificação de limites que o WABT oferece}. A configuração -efetivamente empregada pelo Map2Check não é essa, e a subseção seguinte trata do -ponto. - -\subsection{Ressalva decisiva: o \emph{bounds check} é condicional} -\label{sec:guardpages} - -O \code{wasm-rt.h} seleciona a estratégia em tempo de compilação: em plataformas -de 64 bits com alocação por \code{mmap}, x86-64, portanto, o padrão é -\code{WASM\_RT\_MEMCHECK\_GUARD\_PAGES}; caso contrário, -\code{WASM\_RT\_MEMCHECK\_BOUNDS\_CHECK}. O acesso a memórias lineares de 32 bits -com página padrão, que é o caso comum, não usa \code{RANGE\_CHECK}, e sim o macro -acelerado \code{MEMCHECK\_DEFAULT32}: - -\begin{lstlisting}[language=C] -#if WASM_RT_MEMCHECK_GUARD_PAGES -#define MEMCHECK_DEFAULT32(mem, a, t) WASM_RT_CHECK_BASE(mem); -#else -#define MEMCHECK_DEFAULT32(mem, a, t) \ - WASM_RT_CHECK_BASE(mem); \ - if (UNLIKELY(a + (uint64_t)sizeof(t) > mem->size)) \ - TRAP(OOB); -#endif -\end{lstlisting} - -Sob \code{GUARD\_PAGES} resta apenas \code{WASM\_RT\_CHECK\_BASE}, que é vazio -exceto na combinação de modo \emph{segue} com verificações de sanidade: -\textbf{nenhuma comparação é emitida}, e a detecção de acesso fora dos limites é -delegada a páginas não mapeadas, isto é, ao hardware. - -\code{WasmLifter::runClang} invoca o compilador sem qualquer \code{-D}, sobre um -\emph{host} x86-64, de modo que o caminho tomado é o primeiro. Isso é verificável -no LLVM-IR emitido: a função de escrita gerada contém apenas -\code{call void @i32\_store\_unchecked}, ao passo que, acrescentando -\code{-DWASM\_RT\_MEMCHECK\_BOUNDS\_CHECK=1} à mesma compilação, ela passa a -conter \code{icmp ugt} contra \code{mem->size} seguido de -\code{call void @wasm\_rt\_trap(i32 1)}. - -Portanto, na configuração de compilação realmente empregada, -\textbf{$\Safe_{\wasm}$ não é avaliado para acessos à memória linear padrão}. A -condição lateral não é traduzida em código: é substituída por uma suposição sobre -o \emph{layout} de endereçamento do processo, suposição que a -Seção~\ref{sec:mismatch} mostra não se sustentar aqui. - -\paragraph{Duas dependências dessa elisão.} -A escolha depende do módulo e da plataforma, e convém não generalizá-la. Se o -módulo tem \textbf{segmentos de dados}, o \code{RANGE\_CHECK} da inicialização de -memória é emitido de todo modo, e chamadas com o código \code{OOB} aparecem no IR -mesmo sem \code{-D}. E a suposição de \emph{host} x86-64 é implícita: o campo -\code{targetTriple} da configuração do \emph{lifter} é declarado e nunca -consumido. - -Nem toda classe de \emph{trap} de $\mathcal{T}$ tem, necessariamente, um teste -correspondente no código gerado a partir de um dado módulo. Duas causas -independentes reduzem o conjunto: o módulo pode não conter a instrução que -originaria o teste, um módulo sem divisão inteira não gera teste de divisão -por zero, e a estratégia de verificação de limites escolhida em tempo de -compilação decide se o teste de acesso é emitido ou delegado a páginas-guarda -(Seção~\ref{sec:guardpages}). Escrevemos por isso -\[ - \mathcal{T}_{\mathrm{emit}}(M) \;\subseteq\; \mathcal{T} -\] -para o subconjunto das classes cujo teste o código gerado a partir de $M$ -efetivamente contém, isto é, para as quais há uma chamada a -\code{wasm\_rt\_trap} no LLVM-IR emitido. Abrevia-se -$\mathcal{T}_{\mathrm{emit}}$ quando $M$ está claro pelo contexto. - -O conjunto de \emph{traps} que o WABT distingue é -\[ - \mathcal{T} = - \left\{ - \begin{array}{l} - \mathtt{OOB},\quad \mathtt{INT\_OVERFLOW},\quad \mathtt{DIV\_BY\_ZERO},\quad - \mathtt{INVALID\_CONVERSION},\\[2pt] - \mathtt{UNREACHABLE},\quad \mathtt{CALL\_INDIRECT},\quad \mathtt{NULL\_REF},\\[2pt] - \mathtt{UNCAUGHT\_EXCEPTION},\quad \mathtt{UNALIGNED},\quad \mathtt{EXHAUSTION} - \end{array} - \right\} . -\] - -\subsection{Correção de \texorpdfstring{$\tau$}{tau}} - -Seja $\approx$ a relação entre configurações WASM e estados C induzida pela -representação acima: igualdade byte a byte da memória, igualdade de valor para -globais e locais. - -\begin{hipotese}[correção do \code{wasm2c}]\label{hip:wasm2c} -Para todo módulo $M$ bem tipado e toda execução, $\tau$ é uma simulação forte -módulo passos administrativos: se $s;F;e^{*} \approx \sigma$ e -$s;F;e^{*} \hookrightarrow s';F';e'^{*}$, então existe $\sigma'$ com -$\sigma \to^{+} \sigma'$ e $s';F';e'^{*} \approx \sigma'$; e -$e^{*} = \mathtt{trap}$ se e somente se $\sigma$ chama \code{wasm\_rt\_trap} -\textbf{ou} o \emph{runtime} sinaliza o \emph{trap} por outro meio. -\end{hipotese} - -A cláusula final não é ornamental, e a Seção~\ref{sec:guardpages} mostra por quê. -Sob a estratégia de páginas-guarda, um \emph{trap} de acesso fora dos limites -corresponde a um programa C que \emph{não} contém chamada a -\code{wasm\_rt\_trap}: quem o sinaliza é o tratador de sinal instalado pelo -\emph{runtime}. Sem a cláusula, a equivalência seria falsa na configuração aqui -analisada. E como o Map2Check não liga esse \emph{runtime} -(Seção~\ref{sec:stubs}), o segundo disjunto não se realiza no \emph{pipeline} -real: é essa a razão de a Proposição~\ref{prop:sound} ser enunciada sobre -$\mathcal{T}_{\mathrm{emit}}$, e não sobre $\mathcal{T}$. - -Esta é uma hipótese, -\textbf{não um teorema demonstrado neste documento}. Assim como se assume a -correção do compilador Clang, assume-se aqui a correção do WABT. Explicitá-la é -importante por duas razões: toda a \emph{soundness} da cadeia depende dela, e -ela é falsificável. Uma divergência do \code{wasm2c}, por exemplo, apareceria -como uma diferença entre a execução do \code{.wasm} em um \emph{runtime} -conforme e a execução do C gerado. - -%================================================================ -\section{Passo 2, $\kappa$: Clang para LLVM-IR} -\label{sec:kappa} - -\[ - \kappa : \mathit{C} \longrightarrow \mathit{LLVM} -\] -implementada em \code{WasmLifter::runClang} e \code{WasmLifter::runClangEmitLLVM}: - -\begin{lstlisting} -clang-16 -c -emit-llvm -I -I .c -o .bc -clang-16 -S -emit-llvm -I -I .c -o .ll -\end{lstlisting} - -A emissão do \code{.ll} textual não é redundante: ele é a entrada de $\epsilon$, -o passo seguinte. - -\begin{hipotese}[correção do Clang]\label{hip:clang} -$\kappa$ preserva a semântica de programas C \textbf{livres de comportamento -indefinido}. -\end{hipotese} - -A ressalva é especialmente relevante neste contexto. O C emitido -pelo \code{wasm2c} é código gerado, não escrito manualmente, e emprega -construções que exigem atenção à fronteira entre o modelo operacional do -\code{wasm2c} e a semântica da linguagem C: aritmética de ponteiros sobre -\code{data}, \code{setjmp}/\code{sigsetjmp} para o mecanismo de \emph{trap} e o -qualificador \code{\_\_seg\_gs} quando o modo \emph{segue} está habilitado. Essa -fronteira não é auditada neste documento. - -%================================================================ -\section{Passo 3, $\epsilon$: extração do ponto de entrada} - -\[ - \epsilon : \mathit{LLVM}_{\text{texto}} \longrightarrow - \mathit{Name} \times \mathcal{P}(\mathit{Name}) -\] -implementada em \code{WasmLifter::extractMetadata}. Ela percorre o \code{.ll} -linha a linha com a expressão regular - -\begin{lstlisting} -define.*@w2c_([A-Za-z0-9_]+)\( -\end{lstlisting} - -\noindent -e devolve o par $(\eta, E)$: o ponto de entrada $\eta$, reconhecido pela presença -da subcadeia \code{\_0x5Fstart} em qualquer posição da linha, não pelo sufixo, -e o conjunto $E$ das demais funções assim casadas. - -Convém ser exato quanto a $E$, porque o texto natural engana: a expressão regular -casa igualmente \code{define internal}, de modo que $E$ contém \textbf{todas} as -funções \code{w2c\_} definidas, exportadas ou não. Num módulo WASI medido, $42$ -das $44$ definições são internas. - -Trata-se de -\textbf{análise sintática sobre texto, e não de análise do módulo LLVM}. Suas -condições de falha merecem ser explicitadas, pois não são meramente -hipotéticas: - -\begin{enumerate}[leftmargin=1.6em] - \item Se nenhuma função casa com \code{\_0x5Fstart}, o caso de um módulo - \emph{reactor}, sem \code{\_start}, que é a forma usual de um - \emph{handler} WASM de IoT, o código adota o valor padrão - \code{w2c\_\_start} e emite um aviso. Esse símbolo pode não existir. - \item Por construção, $E$ e $\eta$ são disjuntos. Logo um módulo cujo único - ponto de interesse são funções exportadas, de novo, o caso IoT, tem - $\eta$ mal definido. -\end{enumerate} - -Portanto, $\epsilon$ é total -como procedimento, mas \textbf{não é correta} para a classe de módulos que a -proposta de pesquisa declara como alvo. - -%================================================================ -\section{Passo 4, $\omega$: o \emph{harness}} - -O programa liftado não possui \code{main}. $\tau$ traduziu funções de módulo, e -nenhuma delas é ponto de entrada de um processo. Define-se então -\[ - \omega : \mathit{Name} \longrightarrow \mathit{LLVM} -\] -implementada em \code{Caller::generateWasmWrapperStatic}, que sintetiza -literalmente: - -\begin{lstlisting}[language=C] -int main() { - w2c_ instance; - wasm2c__instantiate(&instance, NULL); - (&instance); - wasm2c__free(&instance); - return 0; -} -\end{lstlisting} - -O resultado é então ligado ao -módulo liftado por -\[ - \Lambda_0 = \code{llvm-link}\bigl(\kappa(\tau(M)),\ \omega(\eta)\bigr). -\] - -\subsection{Um defeito de aridade no \emph{wrapper}} -\label{sec:aridade} - -O \emph{wrapper} emite a chamada de instanciação com \textbf{dois} argumentos, -\code{(\&instance, NULL)}. A assinatura que o \code{wasm2c} gera tem um parâmetro -para a instância e \textbf{um por módulo importado}: para um módulo sem -importações é \code{void wasm2c\_t\_instantiate(w2c\_t*)}, e a chamada com dois -argumentos é erro de compilação. O \emph{wrapper} está correto apenas para -módulos com exatamente uma importação, o caso dos binários WASI, o que explica -por que a validação existente compila. - -O que agrava o defeito é o seu silêncio: o valor de retorno de \code{system()} -não é verificado em \code{generateWasmWrapperStatic} nem na chamada de -\code{llvm-link} que a sucede, e esta escreve a saída \emph{sobre o próprio -arquivo de entrada}. O resultado é um bitcode sem \code{main}, ou em estado -indeterminado, produzido sem diagnóstico algum. - -\subsection{O que $\omega$ quantifica: nada} -\label{sec:harness} - -Formalmente, o módulo denota uma \textbf{família} de execuções, indexada pelos -argumentos das funções exportadas e pelo comportamento das importações: -\[ - \sem{M} : \overline{\mathit{Val}} \times \mathit{Host} \longrightarrow - \mathit{Outcome}. -\] - -O \emph{harness} atual não instancia essa família; ele simplesmente -a restringe ao caminho de execução do \code{\_start}. A chamada $\eta(\&I)$ é -nulária no que diz respeito aos argumentos do módulo: o único parâmetro -explícito é o ponteiro de instância, porque $\eta$ é o \code{\_start}, cuja -assinatura no WASM é $[\,] \rightarrow [\,]$. Nenhuma valoração $\nu$ para -argumentos de funções exportadas é escolhida, pois não há chamada a essas -funções no \emph{wrapper} atual. - -A consequência é precisa. Escrevendo $\Reach(q)$ para o conjunto de estados -alcançáveis de um programa $q$ (a letra $p$ fica reservada para ponteiros, na -Seção~\ref{sec:pi}): -\[ - \Reach(\Lambda_0) - \;=\; \bigcup_{h \in \mathit{Host}} \Reach\bigl(\sem{M}(\bot,\ h)\bigr) - \;\subseteq\; \bigcup_{\nu,\ h} \Reach\bigl(\sem{M}(\nu,\ h)\bigr), -\] -e a inclusão é \textbf{estrita} sempre que o módulo possui alguma função exportada -com aridade positiva. O símbolo $\bot$ não denota um valor: denota a ausência da -chamada. - -Duas consequências decorrem -disso, e ambas são relevantes. - -\paragraph{Para um módulo com \code{\_start}.} -Um programa compilado para WASI, que é o formato dos casos do Juliet na validação -existente. A entrada chega por \code{argv} ou por \code{stdin} \emph{dentro} do -\code{\_start}, e o \code{NonDetPass} pode amarrá-la ali. A cadeia funciona. Este -é o caso efetivamente medido até hoje. - -\paragraph{Para um módulo \emph{reactor}.} -O -\emph{handler} de IoT que a proposta declara como alvo, sem \code{\_start}, tem -seu comportamento concentrado nas funções exportadas em $E$. O \emph{wrapper} -atual não chama nenhuma delas. Combinado com a falha de $\epsilon$ descrita na -seção anterior, isso significa que \textbf{o alvo declarado da proposta não é -alcançável pela implementação atual}. A causa, porém, é mecânica: é necessário -gerar uma chamada para cada função exportada, utilizando -\code{\_\_VERIFIER\_nondet\_()} para cada parâmetro. - -O -tratamento das importações $h$ permanece como uma lacuna. Sem um modelo de -\emph{host}, as funções importadas permanecem como símbolos externos, e seu -comportamento efetivo não é especificado pela cadeia apresentada. A fase de -análise de \emph{taint} prevista na proposta, rastrear um dado controlado -até uma função importada, depende diretamente desse modelo ainda ausente. - -%================================================================ -\section{Passo 5, $\pi$: a instrumentação do Map2Check} -\label{sec:pi} - -A partir deste ponto, o pipeline é o mesmo utilizado -para as demais entradas LLVM-IR: o bitcode religado é submetido aos passes -convencionais do Map2Check. - -$\pi$ é a transformação de programa realizada pelos passes LLVM. Ela é um par -$(\pi_{\text{code}},\ \Sigma)$: instrumentação e \textbf{estado sombra}. No modo -\code{--memtrack}, $\Sigma$ mantém o conjunto das alocações vivas -\[ - \Sigma \subseteq - \bigl\{ (\mathit{base},\ \mathit{size},\ \mathit{alive}) \bigr\}, -\] -e $\pi_{\text{code}}$ insere, antes de cada acesso ao par $(p,n)$, a verificação -\[ - \Safe_{\mathrm{C}}(\Sigma,\ p,\ n) \;\equiv\; - \exists\, (b,z,\mathit{alive}) \in \Sigma :\; - \mathit{alive} \ \wedge\ b \le p \ \wedge\ p + n \le b + z . -\] - -A comparação com $\Safe_{\wasm}$ é o ponto central da análise: -\textbf{os dois predicados verificam propriedades diferentes}. As seções -seguintes caracterizam essa diferença e suas consequências. - -\subsection{O \emph{runtime} efetivo: os \emph{stubs} do Map2Check} -\label{sec:stubs} - -Um elemento ausente da descrição feita até aqui altera o modelo de execução. O -Map2Check \textbf{não liga o \emph{runtime} do WABT}: o \emph{library-backend} -fornece \path{modules/backend/library/lib/WasmRuntimeStubs.c}, que reimplementa a -interface \code{wasm\_rt\_*}. Três reimplementações são relevantes. - -\paragraph{Alocação.} -\code{wasm\_rt\_allocate\_memory} troca o \code{mmap} do WABT por um -\textbf{único \code{calloc}}, com a justificativa, registrada no arquivo, de -que o KLEE modela mal \code{mmap}. Isso confirma, de forma mais direta do que a -análise do WABT permitiria, a premissa da Proposição~\ref{prop:incompleta}: a -memória linear é uma alocação de \emph{heap} única. - -\paragraph{Sinalização de \emph{trap}.} -A implementação do WABT executa -\code{WASM\_RT\_LONGJMP(g\_wasm\_rt\_jmp\_buf, code)}, isto é, desvio não local -para um \emph{buffer} que só existe se o \emph{embedder} tiver estabelecido um -\code{wasm\_rt\_impl\_try}, o que o \emph{wrapper} não faz. O \emph{stub} -substitui esse mecanismo por chamada direta a \code{map2check\_error()}. -\textbf{É esse o canal pelo qual um \emph{trap} do WASM se torna violação -observável}, e não um \code{abort} genérico. O código do \emph{trap} é -descartado: todas as classes de $\mathcal{T}$ colapsam em um sinal indistinguível. - -\paragraph{Inicialização.} -O \code{wasm2c} emite \code{assert(wasm\_rt\_is\_initialized())} no início de -\code{instantiate}, e o \emph{wrapper} nunca chama \code{wasm\_rt\_init()}. Com o -\emph{runtime} do WABT isso abortaria antes de qualquer execução do módulo. O -\emph{stub} evita o problema declarando a \emph{flag} verdadeira de saída, -propriedade que depende de \code{wasm\_rt\_free()} não ser chamado, e o -\emph{wrapper} chama \code{wasm2c\_\_free}, que é outra função. - -\subsection{A incompatibilidade entre compilação e \emph{runtime}} -\label{sec:mismatch} - -Combinando as Seções~\ref{sec:guardpages} e~\ref{sec:stubs}, obtém-se uma -inconsistência que nenhuma das duas revela isoladamente: - -\begin{quote} -O código gerado \textbf{omite} a verificação de limites porque a compilação supõe -que a memória linear está cercada por páginas-guarda; o \emph{runtime} -efetivamente ligado aloca essa memória com \code{calloc}, que \textbf{não tem -páginas-guarda}. -\end{quote} - -Um acesso fora de $[0,\ell)$ não é, portanto, detido por verificação explícita, -ela não foi emitida, nem por hardware, não há região protegida. É um -transbordamento de \emph{heap} sobre o bloco do \code{calloc}. - -\subsection{O mapa de objetos existe, e não dispara} -\label{sec:mortocodigo} - -Seria natural supor que a instrumentação do Map2Check nada sabe sobre a estrutura -interna da memória linear. \textbf{Não é o caso}, e o fato altera -substancialmente o plano de trabalho que a Seção~\ref{sec:mapaO} deriva. - -O \code{MemoryTrackPass} possui um caminho WASM dedicado, ativado pelo -\emph{flag} \code{-wasm-mode} que \code{Caller::callPass} passa no modo WASM: -funções cujo nome começa em \code{w2c\_} e termina em \code{\_malloc} ou -\code{\_dlmalloc}, o alocador \emph{do módulo}, são reconhecidas e -desviadas para \code{map2check\_wasm\_malloc(offset, size)}, cujos argumentos são -\textbf{deslocamentos dentro da memória linear}, não ponteiros do processo. O -\emph{library-backend} grava-os no \code{AllocationLog}, e -\code{map2check\_wasm\_check\_access} reporta \code{FALSE\_OVERFLOW} quando um -acesso não cai em alocação registrada. - -Isso é, em substância, o mapa de objetos $O$ da Seção~\ref{sec:mapaO}, -implementado para as alocações de \emph{heap} do módulo. - -\paragraph{Por que não dispara.} -Duas razões, ambas verificadas no IR produzido nas condições de -\code{runClang}: - -\begin{enumerate}[leftmargin=1.6em] - \item A instrumentação de acesso exige um \code{GetElementPtrInst} com ao menos - três operandos. O acesso à memória linear no IR emitido é - \code{getelementptr inbounds i8, ptr \%11, i64 \%12}, \textbf{dois} - operandos. A função retorna sem instrumentar. - \item Sem \code{-O}, o acesso sequer é um \code{StoreInst} ou \code{LoadInst}: - \code{i32\_store\_unchecked} termina em - \code{call void @llvm.memcpy.p0.p0.i64}. O laço que percorre acessos - nunca o alcança. -\end{enumerate} - -Há ainda um obstáculo de projeto, e não apenas de casamento de padrão: se a -instrumentação disparasse, ela reportaria \code{FALSE\_OVERFLOW} para todo acesso -a \textbf{dado estático}, que nunca entra no \code{AllocationLog}, por não -provir do alocador do módulo. O mapa cobre o \emph{heap} do módulo, não os -objetos estáticos do contraexemplo da Seção~\ref{sec:prop2}. - -A cadeia completa é -\[ - \boxed{\; - \Lambda \;=\; \pi \;\circ\; - \operatorname{link}\bigl(\omega \circ \mathrm{pr}_1 \circ \epsilon,\ \cdot\bigr) - \;\circ\; \kappa \;\circ\; \tau - \;} -\] -seguida do motor de geração de entradas, KLEE ou LibFuzzer, sobre -$\Lambda(M)$. - -%================================================================ -\section{Proposição 1: o que a cadeia preserva} - -\begin{proposicao}[\emph{soundness} para alcançabilidade de \emph{trap}] -\label{prop:sound} -Sob as Hipóteses 1 e 2, se a execução de $\Lambda(M)$ alcança -\code{wasm\_rt\_trap}, então a execução correspondente de $M$ reduz a -$\mathtt{trap}$. -\end{proposicao} - -\begin{proof}[Demonstração (esboço)] -Pela Hipótese~\ref{hip:clang}, a execução de $\Lambda_0$ corresponde à do C -gerado. Pela Hipótese~\ref{hip:wasm2c}, alcançar \code{wasm\_rt\_trap} no C -corresponde a alcançar $\mathtt{trap}$ no WASM. A transformação $\pi$ acrescenta -código que opera sobre um estado sombra disjunto do estado do programa, logo -preserva alcançabilidade. -\end{proof} - -\paragraph{Uma condicional que a demonstração carrega.} -A Hipótese~\ref{hip:clang} vale para programas C livres de comportamento -indefinido, e a Seção~\ref{sec:kappa} registra que essa fronteira não foi -auditada para o código que o \code{wasm2c} emite. A proposição é, portanto, -condicional a ela: vale \emph{desde que} o C gerado esteja livre de -comportamento indefinido. Auditar essa fronteira, ou compilar com sanitizadores -para exercitá-la, torna a proposição incondicional; enquanto não se faça, a -condicional deve acompanhar qualquer enunciado do resultado. - -\subsection{Leitura correta do resultado} - -O resultado é real e é útil, mas o seu escopo é mais estreito do que a formulação -ingênua sugeriria, e convém enunciá-lo sem folga. - -\paragraph{O que a proposição dá.} Ausência de falso positivo: um -\code{wasm\_rt\_trap} alcançado corresponde a um \emph{trap} genuíno de $M$. - -\paragraph{O que ela não dá.} \textbf{Detectabilidade}, que é a recíproca. Para -concluir que $M$ \emph{trapar} implica $\Lambda(M)$ sinalizar, seriam necessárias -duas condições adicionais: que a classe pertença a -$\mathcal{T}_{\mathrm{emit}}(M)$, e que o \emph{harness} alcance o teste, e a -Seção~\ref{sec:harness} demonstra que $\Reach(\Lambda_0)$ está estritamente -contido nas execuções de $M$. Conter uma chamada a \code{wasm\_rt\_trap} não é o -mesmo que alcançá-la. - -\paragraph{Quais classes, concretamente.} Determinamos -$\mathcal{T}_{\mathrm{emit}}$ por inspeção do IR, contando as chamadas a -\code{wasm\_rt\_trap} por código. Para um módulo com divisão inteira, acesso -indexado e instrução inalcançável, e sem segmentos de dados, o IR contém -exatamente três chamadas, com os códigos correspondentes a -$\mathtt{INT\_OVERFLOW}$, $\mathtt{DIV\_BY\_ZERO}$ e $\mathtt{UNREACHABLE}$, e -\textbf{nenhuma} com o código de $\mathtt{OOB}$. Este é o conjunto estabelecido -por observação. As demais classes cujo teste não depende da estratégia de limites, -$\mathtt{INVALID\_CONVERSION}$, $\mathtt{CALL\_INDIRECT}$, -$\mathtt{NULL\_REF}$, provêm dos mesmos macros incondicionais e devem, por -inferência sobre a estrutura do tradutor, pertencer também a -$\mathcal{T}_{\mathrm{emit}}$; nenhum experimento aqui descrito as exercitou. - -\paragraph{Como o sinal chega.} Não por \code{abort}. A implementação do WABT -executa um \code{longjmp}; o \emph{stub} do Map2Check -(Seção~\ref{sec:stubs}) a substitui por chamada a \code{map2check\_error()}, que -é o sinal consumido pelo modo de alcançabilidade. Como o \emph{stub} descarta o -código do \emph{trap}, as classes chegam ao verificador indistinguíveis entre si: -a cadeia responde ``houve \emph{trap}'', nunca ``houve divisão por zero''. - -\paragraph{O efeito de uma \emph{flag}.} -Compilar com \code{-DWASM\_RT\_MEMCHECK\_BOUNDS\_CHECK=1} acrescenta -$\mathtt{OOB}$ a $\mathcal{T}_{\mathrm{emit}}$ e elimina a incompatibilidade da -Seção~\ref{sec:mismatch}. Acrescenta também $\mathtt{EXHAUSTION}$, e por um -caminho indireto: desligar páginas-guarda desliga o tratador de esgotamento de -pilha, e o cabeçalho então liga a contagem de profundidade, de modo que o código -gerado passa a emitir o teste em cada função. Não produz, contudo, a igualdade -$\mathcal{T}_{\mathrm{emit}} = \mathcal{T}$: $\mathtt{UNCAUGHT\_EXCEPTION}$ e -$\mathtt{UNALIGNED}$ dependem de tratamento de exceções e de atômicos sobre -memória compartilhada, que a \emph{flag} não habilita. - -%================================================================ -\section{Proposição 2: o que a cadeia não preserva} -\label{sec:prop2} - -Antes do enunciado é preciso dizer o que se entende por \emph{objeto}, pois a -noção não pertence ao WebAssembly e é justamente a que falta. Chamamos objeto -cada intervalo de $[0,\ell)$ que o programa-fonte tratava como uma variável ou -alocação distinta, e que a compilação para WASM não representa: a -Seção~\ref{sec:mapaO} formaliza isso como um mapa -$O : [0,\ell) \rightharpoonup \mathit{ObjID}$. Um acesso \emph{fora do objeto -pretendido} é um acesso cujo intervalo não está contido em um único objeto. - -\begin{proposicao}[incompletude para segurança de memória] -\label{prop:incompleta} -Existem um módulo $M$, uma execução e um acesso nela tais que esse acesso -\textbf{sobrescreve um objeto que não é o pretendido} (uma violação genuína de -CWE-787) e, ainda assim, nenhum acesso da execução viola $\Safe_{\mathrm{C}}$, e -a execução não alcança \code{wasm\_rt\_trap}. -\end{proposicao} - -\begin{proof}[Demonstração (por construção)] -Tome o módulo compilado a partir de - -\begin{lstlisting}[language=C] -int buf[4]; -char token[16]; -int f(int i) { buf[i] = 7; return buf[0]; } -\end{lstlisting} - -\noindent -com $i = 4$. Sejam $a_{\mathit{buf}}$ e $a_{\mathit{token}}$ os deslocamentos dos -dois objetos na memória linear. - -A adjacência entre eles não é estipulada: é observada. Compilando esta fonte para -\code{wasm32}, obtêm-se $a_{\mathit{buf}} = 1024$ e $a_{\mathit{token}} = 1040$, -ambos os objetos carecem de inicializador, logo residem na mesma seção, e a -ordem relativa segue a ordem de declaração. \textbf{A ressalva pertinente é sobre -a seção de alocação, não sobre o \emph{linker}}: dar um inicializador não nulo a -apenas um deles separa-os em seções distintas e pode inverter a ordem, caso em -que o índice que atinge o vizinho passa a ser negativo. O argumento não depende -da direção. - -\medskip -\noindent\textbf{No WASM.} -O acesso tem endereço efetivo $ea = a_{\mathit{buf}} + 16 = a_{\mathit{token}}$. -Como $ea + 4 \le \ell$, a memória linear tem ao menos uma página, logo -$\ell \ge 65\,536$, e os objetos estão no início dela, a condição lateral da -regra \textsc{load} \emph{é satisfeita}. A redução não produz $\mathtt{trap}$: -produz uma escrita bem definida. O \emph{token} foi sobrescrito e a execução -prossegue normalmente. - -\medskip -\noindent\textbf{No C gerado.} -Sob \code{BOUNDS\_CHECK}, o teste \code{res > mem->size} equivale a -$ea + 4 > \ell$, que é falso. Sob \code{GUARD\_PAGES}, a configuração real, -Seção~\ref{sec:guardpages}, não há sequer teste a avaliar. Em qualquer das -duas, nenhum \emph{trap}. - -\medskip -\noindent\textbf{Sob a instrumentação.} -Como visto, \code{data} é uma \emph{única} alocação cobrindo $[0,\ell)$. Logo -$\Sigma$ contém o registro $(\code{data},\ \ell,\ \mathrm{true})$ e, para -$p = \code{data} + ea$ e $n = 4$, valem $\code{data} \le p$ e -$p + 4 \le \code{data} + \ell$. Portanto $\Safe_{\mathrm{C}}(\Sigma, p, 4)$ é -verdadeiro e nenhuma violação é reportada. A instrumentação WASM dedicada da -Seção~\ref{sec:mortocodigo} tampouco alcança o caso: além de não disparar sobre -a forma do IR gerado, ela cobre alocações do \emph{heap} do módulo, e -$\mathit{buf}$ e $\mathit{token}$ são objetos estáticos. - -\medskip -\noindent\textbf{Execução.} -O programa correspondente, ligado ao \emph{runtime} do WABT, foi executado. Com -$i = 4$, o primeiro byte de $\mathit{token}$ passa de $0$ a $119 = \mathtt{0x77}$, -$\mathit{token}$ é vetor de \code{char}, logo o vizinho é atingido byte a -byte, e o processo termina com código de saída $0$, sem \emph{trap}. Para -comparação, um índice bem fora de $[0,\ell)$ termina com código $134$, mas por -via do tratador de sinal do \emph{runtime} do WABT, que o Map2Check não liga. -\end{proof} - -O ponto não é uma limitação -específica do modo \code{memtrack}. O problema é que \textbf{$\tau$ não preserva -a informação necessária}: a partição da memória em objetos existe no código C -original, mas é descartada durante a compilação para WASM, porque o modelo de -memória do WebAssembly não representa essas fronteiras como objetos distintos. -O que chega ao Map2Check é um vetor de bytes com uma única fronteira relevante: -a fronteira externa da memória linear. - -Convém não converter isso num efeito de grau. A invisibilidade não depende do -tamanho da memória: ela decorre de a violação ser intra-memória, e vale para -\emph{qualquer} $\ell$. Já numa memória de uma única página, o menor valor -possível, $\ell = 65\,536$, um acesso que ultrapasse o limite de um objeto por -poucos bytes permanece a dezenas de milhares de bytes da única fronteira que o -modelo preserva. O tamanho apenas amplia a região em que isso ocorre; não é a -variável explicativa. - -%================================================================ -\section{Consequência para a validação existente} -\label{sec:atribuicao} - -O resultado acima muda a -forma como deve ser interpretado -\path{docs/reports/wasm-juliet-validation.csv}. Todos os casos ali registrados -retornam \code{FALSE}, isto é, um defeito foi encontrado. Contudo, as -Proposições~\ref{prop:sound} e~\ref{prop:incompleta}, consideradas em conjunto, -mostram que há \textbf{dois mecanismos possíveis} por trás desse veredito: - -\begin{enumerate}[label=(\alph*),leftmargin=1.8em] - \item o \emph{overflow} foi grande o bastante para sair de $[0,\ell)$, o - \code{RANGE\_CHECK} do WABT disparou, e o que foi detectado foi a - verificação do WABT; ou - \item a instrumentação do Map2Check detectou algo por conta própria. -\end{enumerate} - -A planilha \textbf{não distingue esses dois -casos}, e a Proposição~\ref{prop:incompleta} estabelece que (b) é impossível -para violações intra-memória. Portanto, enquanto essa separação não for feita, -a validação WASM não sustenta, por si só, a alegação de que \emph{o Map2Check} -detectou os defeitos. Os mesmos resultados são igualmente compatíveis com a -hipótese de que o WABT detectou os acessos inválidos e o Map2Check apenas -reportou o \emph{abort} resultante. - -A separação é simples: basta -instrumentar \code{wasm\_rt\_trap} para registrar qual caminho produziu cada -\emph{abort}. Essa deve ser a primeira medição realizada na frente WASM, pois -ela precede qualquer nova alegação sobre capacidade de detecção. - -%================================================================ -\section{O que a modelagem de memória linear tem de acrescentar} -\label{sec:mapaO} - -A proposta de pesquisa prevê uma fase de ``modelagem da memória linear''. Nos -termos deste documento, o que falta é exatamente um objeto: um \textbf{mapa de -objetos} -\[ - O : [0,\ell) \rightharpoonup \mathit{ObjID}, -\] -com o predicado refinado -\[ - \Safe_{\lin}(\mu,\ O,\ ea,\ N) \;\equiv\; - \Safe_{\wasm}(\mu,\ ea,\ N) \;\wedge -\] -\[ - \exists\, o \in \mathit{ObjID} \;:\; - \forall k \in [\,ea,\ ea + N/8\,) \;:\; - k \in \operatorname{dom}(O) \;\wedge\; O(k) = o . -\] - -Em -palavras: além de estar dentro dos limites da memória linear, o acesso inteiro -precisa estar \textbf{contido em um único objeto}. Com $\Safe_{\lin}$ no lugar -de $\Safe_{\mathrm{C}}$, o contraexemplo da Proposição~\ref{prop:incompleta} -passa a ser detectável, pois -$O(a_{\mathit{buf}} + 16) = \mathit{token} \ne \mathit{buf}$. - -Isso torna preciso o requisito sobre o \emph{lifter}. O mapa $O$ -\textbf{não pode ser recuperado integralmente a partir do \code{.wasm}} se a -informação de objetos não tiver sido preservada em alguma forma auxiliar. As -três fontes possíveis são: - -\begin{enumerate}[leftmargin=1.6em] - \item \textbf{Seções de nome e informação DWARF} do módulo, quando presentes, - o Clang com \code{-g} para o alvo \code{wasm32} as emite. Recupera objetos - estáticos e o \emph{layout} de quadro de pilha. - \item \textbf{Reconstrução do alocador}: reconhecer as funções \code{malloc} e - \code{free} do módulo, quando ele carrega uma libc, e delas derivar $O$ - dinamicamente. - \item \textbf{Anotação no momento do \emph{lifting}}, que é o que a proposta - chama de ``\emph{lifter} ciente de segurança'': um $\tau'$ que emita, - junto do C, os metadados de fronteira. -\end{enumerate} - -\paragraph{Uma parte disso já existe.} -A Seção~\ref{sec:mortocodigo} mostra que o \code{MemoryTrackPass} já mantém, no -modo WASM, um mapa por deslocamento para as alocações do \emph{heap} do módulo. -O que falta a esse mapa é, de um lado, disparar (hoje não dispara) e, de -outro, cobrir os objetos \textbf{estáticos}, que não provêm do alocador e por -isso nunca são registrados. As três fontes acima permanecem necessárias -exatamente para essa segunda metade. - -As três são trabalho de $\tau$, ou de um passo novo entre $\tau$ e $\kappa$. -\textbf{Nenhuma delas é trabalho do backend de verificação.} Isso confirma a -afirmação de viabilidade da proposta, não é preciso reescrever o motor, e ao -mesmo tempo localiza o custo real onde ele está. - -%================================================================ -\section{Resumo da cadeia} - -\begin{table}[h] -\centering -\footnotesize -\renewcommand{\arraystretch}{1.25} -\begin{tabularx}{\textwidth}{@{}c l X X X@{}} -\toprule -\textbf{Passo} & \textbf{Função} & \textbf{Implementação} & -\textbf{Preserva} & \textbf{Perde} \\ -\midrule -0 & $M$ & entrada \code{.wasm} & & - o \emph{layout} de objetos, já perdido na compilação \emph{para} WASM \\ -1 & $\tau$ & \code{wasm2c}, WABT 1.0.41 & - semântica, bytes da memória, os \emph{traps} de - $\mathcal{T}_{\mathrm{emit}}$ & nada além do que já faltava \\ -2 & $\kappa$ & \code{clang-16 -emit-llvm} & - semântica de programas C livres de comportamento indefinido & - o teste de limites, elidido ao supor páginas-guarda \\ -3 & $\epsilon$ & regex sobre o \code{.ll} & - ponto de entrada, quando há \code{\_start} & módulos \emph{reactor}, o caso IoT \\ -4 & $\omega$ & \emph{wrapper} e \code{llvm-link} & - a execução de \code{\_start} & - toda função exportada de aridade positiva, e o \emph{host} \\ -5 & $\pi$ & passes do Map2Check, mais os \emph{stubs} de \code{wasm\_rt\_*} & - alcançabilidade & a classe do \emph{trap}, descartada pelo \emph{stub} \\ -\bottomrule -\end{tabularx} -\end{table} - -%================================================================ -\section{Recomendações, em ordem} - -\begin{enumerate}[leftmargin=1.6em] - \item \textbf{Fazer a instrumentação WASM disparar.} O mapa de objetos existe - (Seção~\ref{sec:mortocodigo}) e é código morto: o casamento de padrão - exige um \code{GetElementPtr} de três operandos, e o IR do \code{wasm2c} - produz um de dois, dentro de um \code{memcpy}. É a maior distância entre - o que a ferramenta pretende e o que ela faz, e é depuração, não - pesquisa. - \item \textbf{Compilar com \code{-DWASM\_RT\_MEMCHECK\_BOUNDS\_CHECK=1}.} Uma - linha em \code{WasmLifter::runClang}. Restaura o teste de limites, - elimina a incompatibilidade da Seção~\ref{sec:mismatch} e acrescenta - $\mathtt{OOB}$ e $\mathtt{EXHAUSTION}$ a $\mathcal{T}_{\mathrm{emit}}$. É - a correção de maior efeito por unidade de esforço neste documento. - \item \textbf{Separar as vias de detecção.} Fazer o \emph{stub} de - \code{wasm\_rt\_trap} registrar o código recebido, e o classificador - registrar por qual via o veredito chegou. Reprocessar em seguida a - validação Juliet-WASM. Nenhuma alegação sobre a frente WASM se sustenta - antes disso. - \item \textbf{Corrigir a aridade do \emph{wrapper} e verificar os retornos.} O - defeito da Seção~\ref{sec:aridade} restringe a ferramenta a módulos com - exatamente uma importação, e falha em silêncio fora dessa classe. - \item \textbf{Enunciar a Proposição~\ref{prop:sound} como resultado.} A - \emph{soundness} para $\mathcal{T}_{\mathrm{emit}}$ já existe na - implementação atual e não está sendo reivindicada. É publicável por si, e - independente da modelagem de memória. - \item \textbf{Corrigir $\epsilon$ e $\omega$ para módulos \emph{reactor}.} Gerar - uma chamada por função \emph{exportada}, e não por toda função de $E$, - que inclui as internas, com \code{\_\_VERIFIER\_nondet\_()} em cada - parâmetro. Sem isso, o alvo declarado da proposta permanece fora do - alcance da ferramenta, por um motivo puramente mecânico. - \item \textbf{Estender o mapa de objetos aos dados estáticos.} O mapa existente - cobre o \emph{heap} do módulo; o contraexemplo da Seção~\ref{sec:prop2} - usa objetos estáticos, que nunca entram no \code{AllocationLog}. Esta é a - única das sete que constitui pesquisa. -\end{enumerate} - -%================================================================ -%================================================================ -\appendix -\section{Protocolo de verificação} -\label{ap:experimento} - -As afirmações deste documento sobre o código gerado e sobre o comportamento em -execução não foram inferidas da documentação das ferramentas: foram verificadas. -Registram-se aqui os procedimentos, para que possam ser repetidos e contestados. - -Ambiente: imagem \path{ghcr.io/hbgit/map2check-dev}, com WABT 1.0.41 e -\code{clang-16}. Preparação comum a todos os experimentos: - -\begin{lstlisting} -clang-16 --target=wasm32 -nostdlib -Wl,--no-entry -Wl,--export-all \ - -O1 -o t.wasm t.c -wasm2c t.wasm -o gen.c -\end{lstlisting} - -\subsection{A elisão do teste de limites} - -Compilar a saída do \code{wasm2c} exatamente como \code{WasmLifter::runClang} o -faz, e inspecionar a função de escrita no IR: - -\begin{lstlisting} -clang-16 -S -emit-llvm -I$WABT/include -I. gen.c -o gen.ll -awk '/define.*i32_store_default32/,/^}/' gen.ll -\end{lstlisting} - -O corpo contém apenas \code{call void @i32\_store\_unchecked}. Repetindo com -\code{-DWASM\_RT\_MEMCHECK\_BOUNDS\_CHECK=1}, passa a conter \code{icmp ugt} -contra \code{mem->size} e \code{call void @wasm\_rt\_trap(i32 1)}. - -\subsection{Determinação de \texorpdfstring{$\mathcal{T}_{\mathrm{emit}}$}{T-emit}} - -Contagem das chamadas por código de \emph{trap}: - -\begin{lstlisting} -grep -o '@wasm_rt_trap(i32 noundef [0-9]*)' gen.ll | sort | uniq -c -\end{lstlisting} - -Para um módulo com divisão inteira, acesso indexado e instrução inalcançável, e -\textbf{sem segmentos de dados}, observam-se os códigos $2$, $3$ e $5$, e nenhum -código $1$. Pela ordem do \code{enum wasm\_rt\_trap\_t} em \code{wasm-rt.h}, -esses códigos são \code{INT\_OVERFLOW}, \code{DIV\_BY\_ZERO} e -\code{UNREACHABLE}, e o ausente é \code{OOB}. - -Dando \textbf{inicializadores não nulos} aos globais, de modo que o módulo passe -a ter segmento de dados, o mesmo \code{wasm2c} sem \code{-D} emite duas chamadas -com o código $1$, provenientes do \code{RANGE\_CHECK} na inicialização de -memória. Daí a dependência de $\mathcal{T}_{\mathrm{emit}}$ em relação ao módulo, -e não apenas à estratégia de verificação. - -Acrescentando \code{-DWASM\_RT\_MEMCHECK\_BOUNDS\_CHECK=1}, surgem ainda oito -chamadas com o código de \code{EXHAUSTION}, uma por função: desligar -páginas-guarda desliga o tratador de esgotamento de pilha, e o cabeçalho passa a -ligar a contagem de profundidade. - -\subsection{O contraexemplo} - -O módulo exporta funções que devolvem os deslocamentos de \code{buf} e -\code{token} na memória linear, de modo que o \emph{layout} escolhido seja -observado em vez de suposto. Ligando ao \emph{runtime} do WABT: - -\begin{lstlisting} -clang-16 -O0 -I$WABT/include -I. h.c gen.c \ - $WABT/share/wabt/wasm2c/wasm-rt-impl.c \ - $WABT/share/wabt/wasm2c/wasm-rt-mem-impl.c -o prog -\end{lstlisting} - -Com a fonte da Seção~\ref{sec:prop2}, em que ambos os objetos carecem de -inicializador e portanto residem na mesma seção, obtém-se -$a_{\mathit{buf}} = 1024$ e $a_{\mathit{token}} = 1040$; o índice $i = 4$ leva o -primeiro byte de \code{token} de $0$ a $119 = \mathtt{0x77}$, e o processo termina -com código de saída $0$. Um índice bem fora de $[0,\ell)$ termina com código -$134$. - -Dar inicializador não nulo a apenas um dos objetos separa-os em seções distintas -e pode inverter a ordem relativa, caso em que o índice que atinge o vizinho passa -a ser negativo. O argumento da Proposição~\ref{prop:incompleta} não depende da -direção. - -\subsection{A aridade do \emph{wrapper}} - -Compilar um \emph{harness} que reproduza a chamada emitida por -\code{generateWasmWrapperStatic} contra um módulo sem importações: o \code{clang} -responde \code{too many arguments to function call, expected 1, have 2}. A -assinatura gerada confere-se com - -\begin{lstlisting} -grep -nE '^void wasm2c_.*_instantiate' gen.c -\end{lstlisting} - -\subsection{O que não foi verificado} - -Os procedimentos acima exercitam a cadeia até o LLVM-IR e o comportamento do -\emph{runtime} do WABT. \textbf{$\Lambda(M)$ nunca foi executado de ponta a -ponta}: isso exigiria um \emph{build} completo do Map2Check, e todas as -observações de execução aqui registradas foram feitas sobre o \emph{runtime} do -WABT, que o \emph{pipeline} não liga (Seção~\ref{sec:stubs}). - -Em consequência, três afirmações do documento permanecem derivadas de leitura de -código e não de execução observada: a de que $\Sigma$ recebe a memória linear -como alocação única; a de que a instrumentação WASM dedicada não dispara sobre o -IR do \code{wasm2c}; e a de que, sob os \emph{stubs}, um acesso muito além de -$[0,\ell)$ não produz sinal algum. As três são verificáveis assim que houver um -\emph{build} disponível, e são as primeiras que se deveria fechar. - -%================================================================ -\section{Glossário de símbolos e termos} -\label{ap:glossario} - -Reúne todo símbolo empregado no documento. Para cada um: a leitura em palavras, a -definição, e a seção em que é introduzido. Os grupos seguem a ordem da cadeia. - -\subsection{Notação de base} - -\begin{tabularx}{\textwidth}{@{}c l X@{}} -\toprule -\textbf{Símbolo} & \textbf{Leitura} & \textbf{Definição} \\ -\midrule -$\mathbb{B}$ & ``o conjunto dos bytes'' & $\{0,\dots,255\}$. \\ -$\mathbb{N}$ & ``os naturais'' & Usado apenas para o número de páginas. \\ -$[a,b)$ & ``intervalo semiaberto'' & Inteiros $k$ com $a \le k < b$; inclui $a$, exclui $b$. \\ -$\operatorname{dom}(f)$ & ``domínio de $f$'' & Conjunto dos pontos em que a função parcial $f$ está definida. \\ -$\mathcal{P}(X)$ & ``partes de $X$'' & Conjunto de todos os subconjuntos de $X$. \\ -$\rightharpoonup$ & ``função \emph{parcial}'' & $f : A \rightharpoonup B$ pode não estar definida em todo $A$. \\ -$\to$ & ``função total'' & Contrasta com o anterior; definida em todo o domínio. \\ -$P$ & ``tamanho de página'' & A constante $65\,536$, fixada pela especificação do WASM. \\ -\bottomrule -\end{tabularx} - -\subsection{O módulo e seu estado de execução} - -\begin{tabularx}{\textwidth}{@{}c l X@{}} -\toprule -\textbf{Símbolo} & \textbf{Leitura} & \textbf{Definição} \\ -\midrule -$M$ & ``o módulo'' & O binário \code{.wasm} de entrada, visto como tupla de dez componentes. \\ -$\mathit{types}$ etc. & & Os componentes de $M$: assinaturas, funções, tabelas, memórias, globais, segmentos de elementos e de dados, função de início, importações e exportações. \\ -$\mathit{mems}$ & ``as memórias'' & Componente de cardinalidade no máximo $1$ na versão 1.0, a hipótese estrutural de todo o documento. \\ -$\mathit{exports}$ & ``as exportações'' & $\mathit{Name} \rightharpoonup \mathit{ExternIdx}$: nomes visíveis de fora do módulo. \\ -$\mathit{imports}$ & ``as importações'' & Funções que o \emph{host} fornece; em IoT, o acesso a sensores, rede e banco. \\ -$\mathit{Name}$ & ``nomes'' & Cadeias que identificam funções exportadas ou importadas. \\ -$\mathit{ExternIdx}$ & ``índice externo'' & Referência a uma entidade do módulo (função, tabela, memória, global). \\ -$\mathit{valtype}$ & ``tipos de valor'' & $\{\mathtt{i32}, \mathtt{i64}, \mathtt{f32}, \mathtt{f64}\}$. \\ -$\mathit{Val}$ & ``valores'' & Conjunto dos valores desses tipos. \\ -$s$ & ``o \emph{store}'' & Estado global: funções, tabelas, memórias e globais instanciadas. \\ -$F$ & ``o \emph{frame}'' & Estado local do quadro corrente: variáveis locais e a instância ativa. \\ -$e^{*}$ & ``a pilha de instruções'' & Sequência de instruções ainda por executar. \\ -$s;F;e^{*}$ & ``uma configuração'' & O estado completo de execução do WASM. \\ -$\hookrightarrow$ & ``reduz em um passo'' & Relação de redução em passos pequenos entre configurações. \\ -$\mathtt{trap}$ & ``\emph{trap}'' & Termo distinguido e absorvente: nenhuma regra o reduz. É como o WASM sinaliza erro irrecuperável. \\ -$\mathcal{T}$ & ``as classes de \emph{trap}'' & As dez razões que o WABT distingue (OOB, divisão por zero, \dots). \\ -$\mathcal{T}_{\mathrm{emit}}(M)$ & ``as classes emitidas'' & Subconjunto de $\mathcal{T}$ cujo teste o código gerado a partir de $M$ de fato contém. \\ -\bottomrule -\end{tabularx} - -\subsection{A memória linear e o acesso} - -\begin{tabularx}{\textwidth}{@{}c l X@{}} -\toprule -\textbf{Símbolo} & \textbf{Leitura} & \textbf{Definição} \\ -\midrule -$\mu$ & ``a instância de memória'' & O par $(d, \ell)$. \\ -$d$ & ``os bytes'' & $d : [0,\ell) \to \mathbb{B}$: o conteúdo da memória linear. \\ -$\ell$ & ``o tamanho'' & Tamanho da memória linear em bytes; sempre múltiplo de $P$. \\ -$n$ & ``páginas'' & Número de páginas, com $\ell = n \cdot P$. (Não confundir com o $n$ de $\Safe_{\mathrm{C}}$.) \\ -$t$ & ``o tipo do acesso'' & Elemento de $\mathit{valtype}$; prefixo em $t.\mathtt{load}$. \\ -$N$ & ``largura em bits'' & $8$, $16$, $32$ ou $64$. O acesso toca $N/8$ bytes. \\ -$i$ & ``índice dinâmico'' & Valor \code{i32} vindo da pilha de operandos. \\ -$\mathit{offset}$ & ``deslocamento estático'' & Constante imediata da instrução. \\ -$ea$ & ``endereço efetivo'' & $ea = i + \mathit{offset}$. Índice em bytes \emph{dentro} da memória linear, um inteiro, não um ponteiro do processo. \\ -$c$ & ``o valor lido'' & Resultado da leitura, de tipo $t$. \\ -$a_{\mathit{buf}}$, $a_{\mathit{token}}$ & ``deslocamentos'' & Posições dos dois objetos do contraexemplo dentro da memória linear. \\ -\bottomrule -\end{tabularx} - -\subsection{As funções da cadeia} - -\begin{tabularx}{\textwidth}{@{}c l X@{}} -\toprule -\textbf{Símbolo} & \textbf{Leitura} & \textbf{Definição} \\ -\midrule -$\tau$ & ``\emph{tau}, o tradutor'' & $\mathit{Wasm} \to \mathit{C}$. O \code{wasm2c} do WABT. \\ -$\kappa$ & ``\emph{kappa}, o compilador'' & $\mathit{C} \to \mathit{LLVM}$. O \code{clang-16}. \\ -$\epsilon$ & ``\emph{épsilon}, a extração'' & $\mathit{LLVM}_{\text{texto}} \to \mathit{Name} \times \mathcal{P}(\mathit{Name})$. Descobre o ponto de entrada. \\ -$\omega$ & ``\emph{ômega}, o \emph{harness}'' & $\mathit{Name} \to \mathit{LLVM}$. Sintetiza o \code{main} que falta. \\ -$\pi$ & ``\emph{pi}, a instrumentação'' & Os passes do Map2Check; o par $(\pi_{\text{code}}, \Sigma)$. \\ -$\Lambda$ & ``\emph{lambda}, a cadeia'' & A composição completa das cinco funções. \\ -$\Lambda_0$ & ``a cadeia sem instrumentar'' & $\code{llvm-link}(\kappa(\tau(M)), \omega(\eta))$: já ligado, ainda não instrumentado. \\ -$\eta$ & ``\emph{eta}, o ponto de entrada'' & Nome da função de entrada detectada por $\epsilon$. \\ -$E$ & ``as demais funções'' & Segundo componente devolvido por $\epsilon$. \\ -$\mathit{Wasm}$, $\mathit{C}$, $\mathit{LLVM}$ & & Os conjuntos de programas de cada linguagem, domínios e contradomínios das funções acima. \\ -$\mathit{mod}$ & ``o módulo, no nome'' & Prefixo do \emph{mangling} \code{w2c\_\_}. \\ -$f$ & ``uma função do módulo'' & Função de $M$, cuja tradução $\tau(f)$ é uma função C. \\ -$I$ & ``a estrutura de instância'' & O registro C em que $\tau$ realiza o \emph{store} $s$; o \emph{wrapper} declara uma e passa \code{\&I}. \\ -$\approx$ & ``corresponde a'' & Relação entre configuração WASM e estado C: memória igual byte a byte, globais e locais de mesmo valor. \\ -$\sigma$, $\sigma'$ & ``estados C'' & Estados do programa C gerado. \\ -$\to^{+}$ & ``reduz em um ou mais passos'' & Fecho transitivo da redução no lado C. \\ -\bottomrule -\end{tabularx} - -\subsection{Semântica denotacional e alcançabilidade} - -\begin{tabularx}{\textwidth}{@{}c l X@{}} -\toprule -\textbf{Símbolo} & \textbf{Leitura} & \textbf{Definição} \\ -\midrule -$\sem{M}$ & ``o significado de $M$'' & $\overline{\mathit{Val}} \times \mathit{Host} \to \mathit{Outcome}$: a \emph{família} de execuções do módulo. \\ -$\overline{\mathit{Val}}$ & ``uma tupla de valores'' & Os argumentos das funções exportadas. \\ -$\mathit{Host}$ & ``o ambiente'' & O comportamento das funções importadas. \\ -$\mathit{Outcome}$ & ``o desfecho'' & Resultado de uma execução. \\ -$\nu$ & ``\emph{nu}, uma valoração'' & Uma escolha concreta de argumentos em $\overline{\mathit{Val}}$. \\ -$h$ & ``um \emph{host}'' & Uma escolha concreta em $\mathit{Host}$. \\ -$\bot$ & ``\emph{bottom}'' & Não é um valor: denota a \emph{ausência} da chamada, quando o \emph{harness} não invoca a função. \\ -$\Reach(q)$ & ``os alcançáveis de $q$'' & Conjunto de estados alcançáveis do programa $q$. A letra $q$, e não $p$, para não colidir com o ponteiro de $\Safe_{\mathrm{C}}$. \\ -\bottomrule -\end{tabularx} - -\subsection{A instrumentação e os predicados de segurança} - -\begin{tabularx}{\textwidth}{@{}c l X@{}} -\toprule -\textbf{Símbolo} & \textbf{Leitura} & \textbf{Definição} \\ -\midrule -$\pi_{\text{code}}$ & ``a parte que insere código'' & Componente de $\pi$ que acrescenta as verificações. \\ -$\Sigma$ & ``\emph{sigma}, o estado sombra'' & Conjunto das alocações vivas mantido em tempo de execução pelo \code{--memtrack}. \\ -$\mathit{base}$, $b$ & ``o início'' & Endereço inicial de uma alocação registrada. \\ -$\mathit{size}$, $z$ & ``o tamanho'' & Tamanho em bytes dessa alocação. \\ -$\mathit{alive}$ & ``viva'' & Verdadeiro enquanto a alocação não foi liberada. \\ -$p$ & ``o ponteiro'' & Endereço C do acesso sendo verificado. Diferente de $ea$: $p$ é um ponteiro do processo, $ea$ é um índice dentro da memória linear. \\ -$n$ & ``bytes do acesso'' & Largura do acesso em $\Safe_{\mathrm{C}}$. (Não confundir com o $n$ de páginas.) \\ -$\Safe_{\wasm}(\mu, ea, N)$ & ``seguro para o WASM'' & $ea + N/8 \le \ell$: o acesso cabe na memória linear. \\ -$\Safe_{\mathrm{C}}(\Sigma, p, n)$ & ``seguro para o C'' & Existe em $\Sigma$ uma alocação viva que contém $[p, p+n)$. \\ -$\Safe_{\lin}(O, ea, N)$ & ``seguro na memória linear'' & O predicado refinado: além de caber na memória, o acesso cabe \emph{dentro de um único objeto}. \\ -$O$ & ``o mapa de objetos'' & $[0,\ell) \rightharpoonup \mathit{ObjID}$: a que objeto pertence cada byte. É a informação que o \emph{lifting} apaga. \\ -$\mathit{ObjID}$ & ``identificador de objeto'' & Contradomínio de $O$; distingue \code{buf} de \code{token}. \\ -$o$ & ``um objeto'' & Elemento de $\mathit{ObjID}$. \\ -$k$ & ``um byte do acesso'' & Índice que percorre $[ea,\ ea + N/8)$ na definição de $\Safe_{\lin}$. \\ -\bottomrule -\end{tabularx} - -\subsection{Três distinções que o glossário não deve deixar passar} - -\begin{enumerate}[leftmargin=1.6em] - \item \textbf{$ea$ contra $p$.} $ea$ é um inteiro em $[0,\ell)$, uma posição - \emph{dentro} da memória linear, como o WASM a enxerga. $p$ é um ponteiro - do processo hospedeiro, e a relação entre os dois é - $p = \code{mem->data} + ea$. - - Essa mudança de referencial é, porém, \textbf{a parte inócua}: sendo a - memória linear uma alocação única, $\Safe_{\mathrm{C}}(\Sigma, - \code{data}+ea, n)$ e $\Safe_{\wasm}(\mu, ea, N)$ são \emph{equivalentes}: - uma é a translação da outra. O que separaria os dois predicados seria - uma partição em objetos, que nenhum dos dois possui. É esse o conteúdo da - Proposição~\ref{prop:incompleta}, e não a troca de coordenadas. - \item \textbf{Os dois $n$.} Em $\ell = n \cdot P$, $n$ conta \emph{páginas}; - em $\Safe_{\mathrm{C}}(\Sigma, p, n)$, $n$ conta \emph{bytes do acesso}. - A colisão é herdada das convenções das duas comunidades e está registrada - aqui por não ser resolvida no texto. - \item \textbf{$\mathcal{T}$ contra $\mathcal{T}_{\mathrm{emit}}$.} O primeiro é - o que o WebAssembly \emph{define} como \emph{trap}; o segundo é o que o - código gerado, para um dado módulo e uma dada configuração de compilação, - efetivamente \emph{testa}. A distância entre os dois é o assunto da - Seção~\ref{sec:guardpages}. -\end{enumerate} - -\end{document} diff --git a/docs/Map2Check-WASM-Transformacao-Formal.zip b/docs/Map2Check-WASM-Transformacao-Formal.zip deleted file mode 100644 index f80b3f026a917c3589ccd08c7e6a1818b2017da3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 919120 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 {vB{8DAP-7O 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%0A>^$u6-8XTVV3Rg0 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 s%?#st~lWB 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

DB~4+z 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%0DKI@sz^2fT8keS!g4$v_W0;WSR1{vx+Od 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�})4V$Vssn!)~2Pc>=kp6yKNRYy#UR7Gjy8#+bft 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 z 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⩔g)#En?`XqVFW6a>o#;m^ZJ6s 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

Lc-y(y3tPbCca8utiQ|`CVbRk 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 z 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 W0z&)~BmZEJcwhhkA=uY*0Q^6q0-Wjq diff --git a/docs/prompts/build_prompts_json.py b/docs/prompts/build_prompts_json.py deleted file mode 100644 index b155a71a9..000000000 --- a/docs/prompts/build_prompts_json.py +++ /dev/null @@ -1,59 +0,0 @@ -#!/usr/bin/env python3 -"""Extrai os prompts de deepseek-property-prompts.md para JSON. - -O markdown e a unica fonte de verdade; este script so o transcreve para o -formato que o harness consome, para que os dois nunca divirjam. -""" -import json -import pathlib -import re - -HERE = pathlib.Path(__file__).parent -MD = HERE / "deepseek-property-prompts.md" -OUT = HERE / "prompts.json" - -text = MD.read_text(encoding="utf-8") - -# Blocos de prompt sao fences de 4 crases marcadas como `text`. -blocks = re.findall(r"^````text\n(.*?)^````$", text, re.M | re.S) -if len(blocks) != 9: - raise SystemExit(f"esperava 9 blocos (1 system + 8 prompts), achei {len(blocks)}") - -system, *user_blocks = blocks - -# Cabecalhos "## Pn — VERDICT (descricao)" e seus metadados. -sections = re.findall( - r"^## (P\d) — `([A-Z-]+)`.*?\n" - r".*?\*\*Map2Check:\*\* `([^`]+)`.*?\n" - r"- \*\*CWEs no benchmark:\*\* ([^\n]*)\n" - r".*?\*\*Tokens permitidos:\*\* ([^\n]+)\n", - text, re.M | re.S) -if len(sections) != 8: - raise SystemExit(f"esperava 8 secoes, achei {len(sections)}") - -def cwes(raw): - """CWEs rotulados nos runners do repositorio. Vazio e um resultado valido: - significa que a trilha nao tem caso rotulado e precisa de corpus proprio.""" - if "*nenhum*" in raw: - return [] - return [int(n) for n in re.findall(r"\d+", raw)] - -def tokens(raw): - return re.findall(r"`([A-Z-]+)`", raw) - -prompts = [] -for (pid, verdict, cmd, cwe_raw, tok_raw), body in zip(sections, user_blocks): - prompts.append({ - "id": pid, - "verdict": verdict, - "map2check_command": cmd, - "benchmark_cwes": cwes(cwe_raw), - "allowed_tokens": tokens(tok_raw), - "placeholders": sorted(set(re.findall(r"\{\{(\w+)\}\}", body))), - "user_prompt": body.rstrip("\n"), - }) - -OUT.write_text(json.dumps( - {"system_prompt": system.rstrip("\n"), "prompts": prompts}, - ensure_ascii=False, indent=2) + "\n", encoding="utf-8") -print(f"{OUT.name}: {len(prompts)} prompts") diff --git a/docs/prompts/deepseek-property-prompts.md b/docs/prompts/deepseek-property-prompts.md deleted file mode 100644 index be40d46cb..000000000 --- a/docs/prompts/deepseek-property-prompts.md +++ /dev/null @@ -1,454 +0,0 @@ -# Prompts de verificação Map2Check ↔ DeepSeek - -Oito prompts, um por **veredicto de violação** que o Map2Check é capaz de -escrever. O recorte é por veredicto, e não por flag, porque `FALSE-FREE`, -`FALSE-DEREF` e `FALSE-MEMTRACK` compartilham `--memtrack` mas são defeitos -distintos — agrupá-los mediria três coisas com uma nota só. - -Referência das propriedades: [`../Map2Check-Propriedades-e-CWEs.pdf`](../Map2Check-Propriedades-e-CWEs.pdf). - -## Regras de simetria - -Para que a comparação meça capacidade de detecção, e não desenho de -experimento: - -1. **Ambos os lados sabem qual propriedade checar.** O Map2Check recebe a - propriedade pela flag; o DeepSeek recebe pelo prompt. Um prompt genérico - ("ache bugs neste código") daria ao Map2Check uma vantagem artificial. -2. **O prompt não revela se há defeito.** Toda formulação diz explicitamente - que o programa pode ou não violar a propriedade. Sem isso o modelo é - empurrado para `FALSE`, e a taxa de falso-positivo deixa de ser medível. -3. **O vocabulário de saída é o do Map2Check.** Mesmos tokens, mesmo - `UNKNOWN` disponível dos dois lados. -4. **A definição da propriedade é a do SV-COMP / CWE, não a do Map2Check.** - A verdade de referência são os rótulos do Juliet e do CASTLE. Onde o - Map2Check é estruturalmente cego (ver "Assimetrias conhecidas"), isso é um - resultado a registrar, não algo a esconder no prompt. -5. **Um prompt por programa.** Sem histórico entre programas, para que um - caso não vaze no seguinte. - -Os prompts estão em inglês: os benchmarks, os identificadores e as definições -do SV-COMP são em inglês, e traduzir a definição da propriedade introduz -ambiguidade que não existe no original. O relatório em volta segue em -português. - -## Assimetrias conhecidas (registrar, não corrigir no prompt) - -| Situação | Efeito na comparação | -|:---|:---| -| `Shl`/`LShr`/`AShr`/`And`/`Or`/`Xor` não são instrumentados | Overflow por deslocamento: o Map2Check responde `TRUE` por construção. Contabilizar à parte. | -| Aritmética sem sinal fora da propriedade `no-overflow` | Vale para os dois lados — o prompt de overflow exclui `unsigned` explicitamente. | -| Ponto flutuante é *no-op* | Idem: excluído no prompt. | -| Sob `--wasm`, acesso fora dos limites vira `FALSE-OVERFLOW` | Só afeta a trilha WASM. Aceitar `FALSE-OVERFLOW` como acerto de *bounds* ali. | -| `--generate-witness` produz *witness* de corretude para `ASSERT`, `FALSE-MEMCLEANUP` e `FALSE-DIVBYZERO` | Pontuar pelo stdout, nunca por validação de *witness*, nessas três trilhas. | -| Orçamento | O Map2Check tem *timeout* explícito; o DeepSeek não. Registrar o *timeout* usado e o custo em tokens. | - -Duas armadilhas do lado do Map2Check que corrompem a coleta em silêncio: - -- **O veredicto de overflow é gravado como `OVERFLOW`, não `FALSE-OVERFLOW`.** - `PropertyGenerator.c:97` escreve essa string, e é ela que `tools.cpp:228` lê. - Um coletor que faça `grep FALSE-OVERFLOW` em `map2check_property` pontua - zero na trilha P5 inteira. O token `FALSE-OVERFLOW` do prompt é o nome do - *enum* e vale para o lado do DeepSeek; **não** use o mesmo padrão para os - dois lados. -- **Use apenas `--smt-solver z3` (padrão) ou `stp`.** `btor` e `yices2` passam - na validação da CLI e depois são entregues ao KLEE como - `--solver-backend=metasmt`, que a imagem de referência não compila. - ---- - -## System prompt (compartilhado pelos oito) - -````text -You are a program-verification engine. You receive one C translation unit and -one safety property. You decide whether some execution of the program can -violate that property, and you answer in a fixed format. - -Assume the SV-COMP execution model: - - `main` is the entry point. - - `__VERIFIER_nondet_()` returns an arbitrary value of that type; every - call is independent. Reason over all possible return values. - - `__VERIFIER_assume(c)` and `assume_abort_if_not(c)` discard executions in - which `c` is false. Executions they discard cannot violate anything. - - The machine model is 64-bit little-endian (LP64), signed integers are - two's complement, `int` is 32 bits, `long` and pointers are 64 bits. - - Library functions behave as the C standard specifies. `malloc` may return - NULL. - -Judge ONLY the property you are given. A program may contain other defects; -they are irrelevant and must not change your verdict. - -The program may or may not violate the property. Both outcomes are equally -likely a priori. Do not assume a defect is present because you were asked to -look for one. - -Answer with exactly three lines and nothing else: - -VERDICT: -LINE: <1-based line number of the violating operation, or - if not applicable> -REASON: - -`UNKNOWN` is a legitimate answer and is scored separately from a wrong one. -Use it when you cannot decide. Never answer with prose outside the three lines, -never hedge inside VERDICT, never emit more than one VERDICT line. -```` - ---- - -## P1 — `FALSE-DEREF` (dereferência inválida) - -- **Map2Check:** `map2check --memtrack --nondet-generator symex ` -- **CWEs no benchmark:** 121, 122, 125, 476, 787, 822, 843 — e 416, que - também aparece em P2 (`use-after-free` é a dereferência de memória liberada) -- **CWEs da propriedade (referência, fora dos benchmarks):** 124, 126, 127, 824 -- **Tokens permitidos:** `FALSE-DEREF`, `TRUE`, `UNKNOWN` - -````text -PROPERTY — valid-deref - -Every memory dereference the program performs must be valid: the address must -point inside a live object, at an offset within that object's bounds, for the -full width of the access. - -A violation is any of: - - reading or writing through a NULL pointer; - - reading or writing outside the bounds of an allocated object (heap, stack - or global), including off-by-one past the end; - - dereferencing a pointer to memory that has already been freed; - - dereferencing a pointer to a local variable whose scope has ended; - - dereferencing an uninitialised or otherwise indeterminate pointer. - -Not a violation for this property: - - failing to free memory (that is a different property); - - passing an invalid pointer to free() without dereferencing it; - - integer overflow, division by zero, or a failing assertion. - -Answer FALSE-DEREF if some execution performs an invalid dereference. -Answer TRUE if no execution can. -Answer UNKNOWN if you cannot decide. - -PROGRAM: -```c -{{PROGRAM}} -``` -```` - ---- - -## P2 — `FALSE-FREE` (liberação inválida) - -- **Map2Check:** `map2check --memtrack --nondet-generator symex ` -- **CWEs no benchmark:** 415, 416, 761 -- **CWEs da propriedade (referência, fora dos benchmarks):** 590 -- **Tokens permitidos:** `FALSE-FREE`, `TRUE`, `UNKNOWN` - -````text -PROPERTY — valid-free - -Every call to free() (and to realloc() with a non-null pointer) must receive -either NULL or a pointer that was returned by a previous allocation and has not -been freed since — and it must point at the START of that allocation. - -A violation is any of: - - freeing the same pointer twice; - - freeing a pointer that no allocation returned (a stack address, a global, a - string literal, an arbitrary integer cast to a pointer); - - freeing a pointer that has been advanced away from the start of its block - (e.g. `p++` then `free(p)`); - - freeing a pointer whose value is indeterminate. - -`free(NULL)` is well defined and is NOT a violation. - -Not a violation for this property: - - dereferencing a freed pointer without freeing it again (that is - valid-deref); - - never freeing an allocation (that is valid-memtrack). - -Answer FALSE-FREE if some execution performs an invalid free. -Answer TRUE if no execution can. -Answer UNKNOWN if you cannot decide. - -PROGRAM: -```c -{{PROGRAM}} -``` -```` - ---- - -## P3 — `FALSE-MEMTRACK` (memória alocada e perdida) - -- **Map2Check:** `map2check --memtrack --nondet-generator symex ` -- **CWEs no benchmark:** *nenhum* — os dois runners roteiam CWE-401 para - `--memcleanup-property` (P4), então esta trilha não tem caso rotulado no - repositório e precisa de um corpus próprio -- **CWEs da propriedade (referência):** 401, 771, 772 -- **Tokens permitidos:** `FALSE-MEMTRACK`, `TRUE`, `UNKNOWN` - -````text -PROPERTY — valid-memtrack - -The program must not lose track of allocated memory. A block is lost when the -last pointer to it is overwritten, goes out of scope, or is otherwise destroyed -while the block is still allocated — after that no execution could free it even -in principle. - -A violation is any of: - - overwriting the only pointer to a block that is still allocated; - - returning from a function while the only pointer to a block is a local - variable of that function; - - losing a block on an early-return or error path while the normal path frees - it. - -Not a violation for this property: - - a block that is still reachable through some live pointer when main - returns — that is valid-memcleanup, a different property; - - freeing a block twice, or dereferencing it after free. - -Note the distinction carefully: this property is about UNREACHABLE memory, not -about unfreed memory. - -Answer FALSE-MEMTRACK if some execution makes an allocated block unreachable. -Answer TRUE if no execution can. -Answer UNKNOWN if you cannot decide. - -PROGRAM: -```c -{{PROGRAM}} -``` -```` - ---- - -## P4 — `FALSE-MEMCLEANUP` (memória viva no fim do `main`) - -- **Map2Check:** `map2check --memcleanup-property --nondet-generator symex ` -- **CWEs no benchmark:** 401 -- **CWEs da propriedade (referência):** 401 -- **Tokens permitidos:** `FALSE-MEMCLEANUP`, `TRUE`, `UNKNOWN` - -````text -PROPERTY — valid-memcleanup - -All memory allocated by the program must have been deallocated by the time main -returns (or exit() is called). Whether a pointer to the block still exists is -irrelevant: the question is only whether the block was freed. - -A violation is any execution that terminates normally with at least one -allocated, unfreed block. - -Not a violation for this property: - - an unfreed block in an execution that does not terminate; - - freeing a block twice, dereferencing it after free, or making it - unreachable while still freeing it later. - -Note the distinction from valid-memtrack: a block kept in a global pointer and -never freed satisfies valid-memtrack (it is still reachable) but violates -valid-memcleanup. - -Answer FALSE-MEMCLEANUP if some terminating execution leaves memory allocated. -Answer TRUE if every terminating execution frees everything. -Answer UNKNOWN if you cannot decide. - -PROGRAM: -```c -{{PROGRAM}} -``` -```` - ---- - -## P5 — `FALSE-OVERFLOW` (overflow de inteiro com sinal) - -- **Map2Check:** `map2check --check-overflow --nondet-generator symex ` -- **CWEs no benchmark:** 190, 191 -- **CWEs da propriedade (referência, fora dos benchmarks):** 194, 197 -- **Tokens permitidos:** `FALSE-OVERFLOW`, `TRUE`, `UNKNOWN` - -````text -PROPERTY — no-overflow - -No arithmetic operation on a SIGNED integer type may produce a result outside -the range of the operation's resulting type. Evaluate the property on the type -that C's usual arithmetic conversions give the operation, not on the type of -the variable the result is stored into. - -A violation is any of: - - a signed addition, subtraction or multiplication whose mathematical result - falls outside the range of its resulting type; - - the division or remainder `INT_MIN / -1` and `INT_MIN % -1`. - -NOT a violation for this property: - - arithmetic on unsigned types — unsigned wraparound is defined behaviour and - is explicitly outside this property; - - floating-point arithmetic of any kind; - - conversions and truncations that merely discard bits (e.g. assigning a - long to an int); - - division or remainder by zero — that is a different property; - - out-of-bounds accesses, invalid frees, or failing assertions. - -Remember that operands narrower than int are promoted to int before the -operation, so arithmetic on two chars is evaluated in int and rarely overflows. - -Answer FALSE-OVERFLOW if some execution overflows a signed integer operation. -Answer TRUE if no execution can. -Answer UNKNOWN if you cannot decide. - -PROGRAM: -```c -{{PROGRAM}} -``` -```` - ---- - -## P6 — `FALSE-DIVBYZERO` (divisão ou resto por zero) - -- **Map2Check:** `map2check --check-overflow --nondet-generator symex ` - — não há flag própria; a instrumentação de `SDiv`/`SRem` é a mesma. -- **CWEs no benchmark:** 369 -- **CWEs da propriedade (referência):** 369 -- **Tokens permitidos:** `FALSE-DIVBYZERO`, `TRUE`, `UNKNOWN` - -````text -PROPERTY — no division by zero - -No execution may evaluate an integer division or remainder whose right operand -is zero. - -A violation is any execution reaching `a / b` or `a % b` on integer types with -b == 0, including the compound forms `a /= b` and `a %= b`. - -Not a violation for this property: - - floating-point division by zero, which is defined and yields an infinity or - a NaN; - - signed overflow such as INT_MIN / -1 — that is the no-overflow property; - - a division by zero that appears only in code no execution reaches, or only - on a path excluded by __VERIFIER_assume / assume_abort_if_not. - -Answer FALSE-DIVBYZERO if some execution divides or takes a remainder by zero. -Answer TRUE if no execution can. -Answer UNKNOWN if you cannot decide. - -PROGRAM: -```c -{{PROGRAM}} -``` -```` - ---- - -## P7 — `ASSERT` (assertiva alcançável e falha) - -- **Map2Check:** `map2check --check-asserts --nondet-generator symex ` -- **CWEs no benchmark:** 617 -- **CWEs da propriedade (referência):** 617 -- **Tokens permitidos:** `ASSERT`, `TRUE`, `UNKNOWN` - -````text -PROPERTY — assertion validity - -Every assertion in the program must hold whenever it is evaluated. Both -`assert(c)` (which expands to a call to __assert_fail when c is false) and -`__VERIFIER_assert(c)` count. - -A violation is any execution that reaches an assertion whose condition -evaluates to false. - -Not a violation for this property: - - an assertion whose condition is false only under inputs excluded by - __VERIFIER_assume or assume_abort_if_not; - - an assertion inside code no execution reaches; - - any memory error, overflow or division by zero that occurs on a path that - never reaches a failing assertion. If such an error would occur BEFORE the - assertion on the same path, the assertion is not reached and this property - is not violated by that path. - -Answer ASSERT if some execution reaches an assertion that evaluates to false. -Answer TRUE if no execution can. -Answer UNKNOWN if you cannot decide. - -PROGRAM: -```c -{{PROGRAM}} -``` -```` - ---- - -## P8 — `TARGET-REACHED` (alcançabilidade da função-alvo) - -- **Map2Check:** `map2check --target-function --target-function-name --nondet-generator symex ` -- **CWEs no benchmark:** *nenhum* — `test_cwe_mode_mapping.sh` proíbe mapear - qualquer CWE para modo de alcançabilidade (o alvo `main` era degenerado) -- **Propriedade:** `unreach-call` do SV-COMP, usada como codificação genérica de - "este ponto é alcançável" -- **Tokens permitidos:** `TARGET-REACHED`, `TRUE`, `UNKNOWN` -- **Placeholder extra:** `{{TARGET}}` — o nome da função-alvo, o mesmo passado - em `--target-function-name`. - -````text -PROPERTY — unreach-call - -The function `{{TARGET}}` must never be called. Determine whether some -execution of the program reaches a call to it. - -A violation is any execution in which `{{TARGET}}` is called, directly or -through any chain of calls, including through a function pointer. - -Not a violation for this property: - - a call to `{{TARGET}}` that appears in the source but that no execution - reaches; - - a call reachable only on a path excluded by __VERIFIER_assume or - assume_abort_if_not; - - any memory error, overflow or division by zero on a path that never reaches - the call. - -Answer TARGET-REACHED if some execution calls `{{TARGET}}`. -Answer TRUE if no execution can. -Answer UNKNOWN if you cannot decide. - -PROGRAM: -```c -{{PROGRAM}} -``` -```` - ---- - -## Pontuação - -Por trilha, contra o rótulo do benchmark: - -| Resposta \ Rótulo | vulnerável | seguro | -|:---|:---|:---| -| veredicto de violação correto | **TP** | **FP** | -| `TRUE` | **FN** | **TN** | -| `UNKNOWN` | *inconclusivo* | *inconclusivo* | -| veredicto de violação de outra trilha | erro de formato | erro de formato | - -`UNKNOWN` fica numa coluna própria e não entra em precisão/recall — é o que -torna a comparação com uma ferramenta que também responde `UNKNOWN` honesta. -Um `FALSE-DEREF` na trilha de overflow é erro de formato, não acerto parcial: -o prompt restringe os tokens permitidos. - -O campo `LINE` é métrica secundária (localização), medida só sobre os TPs. - -**Duas trilhas não têm corpus rotulado no repositório:** P3 -(`FALSE-MEMTRACK`) porque os dois runners roteiam CWE-401 para -`--memcleanup-property`, e P8 (`TARGET-REACHED`) porque -`test_cwe_mode_mapping.sh` proíbe mapear qualquer CWE para alcançabilidade. -Rodar essas duas exige montar um corpus antes — ou declará-las fora da -comparação. As outras seis saem direto de Juliet e CASTLE. - -## Uso - -```sh -python3 build_prompts_json.py # regenera prompts.json a partir deste .md -``` - -O markdown é a fonte de verdade; `prompts.json` é derivado. Cada entrada traz -`system_prompt`, `user_prompt` com os placeholders `{{PROGRAM}}` (e -`{{TARGET}}` em P8), `allowed_tokens` para validar a resposta, e -`map2check_command` — a invocação pareada, para que os dois lados da comparação -fiquem no mesmo arquivo. diff --git a/docs/prompts/prompts.json b/docs/prompts/prompts.json deleted file mode 100644 index 7f7f0565a..000000000 --- a/docs/prompts/prompts.json +++ /dev/null @@ -1,148 +0,0 @@ -{ - "system_prompt": "You are a program-verification engine. You receive one C translation unit and\none safety property. You decide whether some execution of the program can\nviolate that property, and you answer in a fixed format.\n\nAssume the SV-COMP execution model:\n - `main` is the entry point.\n - `__VERIFIER_nondet_()` returns an arbitrary value of that type; every\n call is independent. Reason over all possible return values.\n - `__VERIFIER_assume(c)` and `assume_abort_if_not(c)` discard executions in\n which `c` is false. Executions they discard cannot violate anything.\n - The machine model is 64-bit little-endian (LP64), signed integers are\n two's complement, `int` is 32 bits, `long` and pointers are 64 bits.\n - Library functions behave as the C standard specifies. `malloc` may return\n NULL.\n\nJudge ONLY the property you are given. A program may contain other defects;\nthey are irrelevant and must not change your verdict.\n\nThe program may or may not violate the property. Both outcomes are equally\nlikely a priori. Do not assume a defect is present because you were asked to\nlook for one.\n\nAnswer with exactly three lines and nothing else:\n\nVERDICT: \nLINE: <1-based line number of the violating operation, or - if not applicable>\nREASON: \n\n`UNKNOWN` is a legitimate answer and is scored separately from a wrong one.\nUse it when you cannot decide. Never answer with prose outside the three lines,\nnever hedge inside VERDICT, never emit more than one VERDICT line.", - "prompts": [ - { - "id": "P1", - "verdict": "FALSE-DEREF", - "map2check_command": "map2check --memtrack --nondet-generator symex ", - "benchmark_cwes": [ - 121, - 122, - 125, - 476, - 787, - 822, - 843, - 416 - ], - "allowed_tokens": [ - "FALSE-DEREF", - "TRUE", - "UNKNOWN" - ], - "placeholders": [ - "PROGRAM" - ], - "user_prompt": "PROPERTY — valid-deref\n\nEvery memory dereference the program performs must be valid: the address must\npoint inside a live object, at an offset within that object's bounds, for the\nfull width of the access.\n\nA violation is any of:\n - reading or writing through a NULL pointer;\n - reading or writing outside the bounds of an allocated object (heap, stack\n or global), including off-by-one past the end;\n - dereferencing a pointer to memory that has already been freed;\n - dereferencing a pointer to a local variable whose scope has ended;\n - dereferencing an uninitialised or otherwise indeterminate pointer.\n\nNot a violation for this property:\n - failing to free memory (that is a different property);\n - passing an invalid pointer to free() without dereferencing it;\n - integer overflow, division by zero, or a failing assertion.\n\nAnswer FALSE-DEREF if some execution performs an invalid dereference.\nAnswer TRUE if no execution can.\nAnswer UNKNOWN if you cannot decide.\n\nPROGRAM:\n```c\n{{PROGRAM}}\n```" - }, - { - "id": "P2", - "verdict": "FALSE-FREE", - "map2check_command": "map2check --memtrack --nondet-generator symex ", - "benchmark_cwes": [ - 415, - 416, - 761 - ], - "allowed_tokens": [ - "FALSE-FREE", - "TRUE", - "UNKNOWN" - ], - "placeholders": [ - "PROGRAM" - ], - "user_prompt": "PROPERTY — valid-free\n\nEvery call to free() (and to realloc() with a non-null pointer) must receive\neither NULL or a pointer that was returned by a previous allocation and has not\nbeen freed since — and it must point at the START of that allocation.\n\nA violation is any of:\n - freeing the same pointer twice;\n - freeing a pointer that no allocation returned (a stack address, a global, a\n string literal, an arbitrary integer cast to a pointer);\n - freeing a pointer that has been advanced away from the start of its block\n (e.g. `p++` then `free(p)`);\n - freeing a pointer whose value is indeterminate.\n\n`free(NULL)` is well defined and is NOT a violation.\n\nNot a violation for this property:\n - dereferencing a freed pointer without freeing it again (that is\n valid-deref);\n - never freeing an allocation (that is valid-memtrack).\n\nAnswer FALSE-FREE if some execution performs an invalid free.\nAnswer TRUE if no execution can.\nAnswer UNKNOWN if you cannot decide.\n\nPROGRAM:\n```c\n{{PROGRAM}}\n```" - }, - { - "id": "P3", - "verdict": "FALSE-MEMTRACK", - "map2check_command": "map2check --memtrack --nondet-generator symex ", - "benchmark_cwes": [], - "allowed_tokens": [ - "FALSE-MEMTRACK", - "TRUE", - "UNKNOWN" - ], - "placeholders": [ - "PROGRAM" - ], - "user_prompt": "PROPERTY — valid-memtrack\n\nThe program must not lose track of allocated memory. A block is lost when the\nlast pointer to it is overwritten, goes out of scope, or is otherwise destroyed\nwhile the block is still allocated — after that no execution could free it even\nin principle.\n\nA violation is any of:\n - overwriting the only pointer to a block that is still allocated;\n - returning from a function while the only pointer to a block is a local\n variable of that function;\n - losing a block on an early-return or error path while the normal path frees\n it.\n\nNot a violation for this property:\n - a block that is still reachable through some live pointer when main\n returns — that is valid-memcleanup, a different property;\n - freeing a block twice, or dereferencing it after free.\n\nNote the distinction carefully: this property is about UNREACHABLE memory, not\nabout unfreed memory.\n\nAnswer FALSE-MEMTRACK if some execution makes an allocated block unreachable.\nAnswer TRUE if no execution can.\nAnswer UNKNOWN if you cannot decide.\n\nPROGRAM:\n```c\n{{PROGRAM}}\n```" - }, - { - "id": "P4", - "verdict": "FALSE-MEMCLEANUP", - "map2check_command": "map2check --memcleanup-property --nondet-generator symex ", - "benchmark_cwes": [ - 401 - ], - "allowed_tokens": [ - "FALSE-MEMCLEANUP", - "TRUE", - "UNKNOWN" - ], - "placeholders": [ - "PROGRAM" - ], - "user_prompt": "PROPERTY — valid-memcleanup\n\nAll memory allocated by the program must have been deallocated by the time main\nreturns (or exit() is called). Whether a pointer to the block still exists is\nirrelevant: the question is only whether the block was freed.\n\nA violation is any execution that terminates normally with at least one\nallocated, unfreed block.\n\nNot a violation for this property:\n - an unfreed block in an execution that does not terminate;\n - freeing a block twice, dereferencing it after free, or making it\n unreachable while still freeing it later.\n\nNote the distinction from valid-memtrack: a block kept in a global pointer and\nnever freed satisfies valid-memtrack (it is still reachable) but violates\nvalid-memcleanup.\n\nAnswer FALSE-MEMCLEANUP if some terminating execution leaves memory allocated.\nAnswer TRUE if every terminating execution frees everything.\nAnswer UNKNOWN if you cannot decide.\n\nPROGRAM:\n```c\n{{PROGRAM}}\n```" - }, - { - "id": "P5", - "verdict": "FALSE-OVERFLOW", - "map2check_command": "map2check --check-overflow --nondet-generator symex ", - "benchmark_cwes": [ - 190, - 191 - ], - "allowed_tokens": [ - "FALSE-OVERFLOW", - "TRUE", - "UNKNOWN" - ], - "placeholders": [ - "PROGRAM" - ], - "user_prompt": "PROPERTY — no-overflow\n\nNo arithmetic operation on a SIGNED integer type may produce a result outside\nthe range of the operation's resulting type. Evaluate the property on the type\nthat C's usual arithmetic conversions give the operation, not on the type of\nthe variable the result is stored into.\n\nA violation is any of:\n - a signed addition, subtraction or multiplication whose mathematical result\n falls outside the range of its resulting type;\n - the division or remainder `INT_MIN / -1` and `INT_MIN % -1`.\n\nNOT a violation for this property:\n - arithmetic on unsigned types — unsigned wraparound is defined behaviour and\n is explicitly outside this property;\n - floating-point arithmetic of any kind;\n - conversions and truncations that merely discard bits (e.g. assigning a\n long to an int);\n - division or remainder by zero — that is a different property;\n - out-of-bounds accesses, invalid frees, or failing assertions.\n\nRemember that operands narrower than int are promoted to int before the\noperation, so arithmetic on two chars is evaluated in int and rarely overflows.\n\nAnswer FALSE-OVERFLOW if some execution overflows a signed integer operation.\nAnswer TRUE if no execution can.\nAnswer UNKNOWN if you cannot decide.\n\nPROGRAM:\n```c\n{{PROGRAM}}\n```" - }, - { - "id": "P6", - "verdict": "FALSE-DIVBYZERO", - "map2check_command": "map2check --check-overflow --nondet-generator symex ", - "benchmark_cwes": [ - 369 - ], - "allowed_tokens": [ - "FALSE-DIVBYZERO", - "TRUE", - "UNKNOWN" - ], - "placeholders": [ - "PROGRAM" - ], - "user_prompt": "PROPERTY — no division by zero\n\nNo execution may evaluate an integer division or remainder whose right operand\nis zero.\n\nA violation is any execution reaching `a / b` or `a % b` on integer types with\nb == 0, including the compound forms `a /= b` and `a %= b`.\n\nNot a violation for this property:\n - floating-point division by zero, which is defined and yields an infinity or\n a NaN;\n - signed overflow such as INT_MIN / -1 — that is the no-overflow property;\n - a division by zero that appears only in code no execution reaches, or only\n on a path excluded by __VERIFIER_assume / assume_abort_if_not.\n\nAnswer FALSE-DIVBYZERO if some execution divides or takes a remainder by zero.\nAnswer TRUE if no execution can.\nAnswer UNKNOWN if you cannot decide.\n\nPROGRAM:\n```c\n{{PROGRAM}}\n```" - }, - { - "id": "P7", - "verdict": "ASSERT", - "map2check_command": "map2check --check-asserts --nondet-generator symex ", - "benchmark_cwes": [ - 617 - ], - "allowed_tokens": [ - "ASSERT", - "TRUE", - "UNKNOWN" - ], - "placeholders": [ - "PROGRAM" - ], - "user_prompt": "PROPERTY — assertion validity\n\nEvery assertion in the program must hold whenever it is evaluated. Both\n`assert(c)` (which expands to a call to __assert_fail when c is false) and\n`__VERIFIER_assert(c)` count.\n\nA violation is any execution that reaches an assertion whose condition\nevaluates to false.\n\nNot a violation for this property:\n - an assertion whose condition is false only under inputs excluded by\n __VERIFIER_assume or assume_abort_if_not;\n - an assertion inside code no execution reaches;\n - any memory error, overflow or division by zero that occurs on a path that\n never reaches a failing assertion. If such an error would occur BEFORE the\n assertion on the same path, the assertion is not reached and this property\n is not violated by that path.\n\nAnswer ASSERT if some execution reaches an assertion that evaluates to false.\nAnswer TRUE if no execution can.\nAnswer UNKNOWN if you cannot decide.\n\nPROGRAM:\n```c\n{{PROGRAM}}\n```" - }, - { - "id": "P8", - "verdict": "TARGET-REACHED", - "map2check_command": "map2check --target-function --target-function-name --nondet-generator symex ", - "benchmark_cwes": [], - "allowed_tokens": [ - "TARGET-REACHED", - "TRUE", - "UNKNOWN" - ], - "placeholders": [ - "PROGRAM", - "TARGET" - ], - "user_prompt": "PROPERTY — unreach-call\n\nThe function `{{TARGET}}` must never be called. Determine whether some\nexecution of the program reaches a call to it.\n\nA violation is any execution in which `{{TARGET}}` is called, directly or\nthrough any chain of calls, including through a function pointer.\n\nNot a violation for this property:\n - a call to `{{TARGET}}` that appears in the source but that no execution\n reaches;\n - a call reachable only on a path excluded by __VERIFIER_assume or\n assume_abort_if_not;\n - any memory error, overflow or division by zero on a path that never reaches\n the call.\n\nAnswer TARGET-REACHED if some execution calls `{{TARGET}}`.\nAnswer TRUE if no execution can.\nAnswer UNKNOWN if you cannot decide.\n\nPROGRAM:\n```c\n{{PROGRAM}}\n```" - } - ] -} diff --git a/docs/reports/2026-09-04-estado-e-handoff.md b/docs/reports/2026-09-04-estado-e-handoff.md deleted file mode 100644 index 6f3595ad6..000000000 --- a/docs/reports/2026-09-04-estado-e-handoff.md +++ /dev/null @@ -1,300 +0,0 @@ -# Estado do Map2Check e handoff — 2026-09-04 - -Documento de partida para uma sessão limpa. Consolida o que está implementado, o -que já foi medido, e as três frentes em aberto: **slicing**, **smart seeds** e -**WASM**. Nada aqui pede implementação; é registro do terreno. - ---- - -## 1. Onde o repositório está - -| | | -|---|---| -| Branch | `fix/slice-target-stub` — **idêntica a `origin/develop`** | -| PR #65 | **merged** — https://github.com/hbgit/Map2Check/pull/65 | -| Binário de referência | `install_v15/` | -| Relatório da campanha | `docs/Map2Check-Relatorio-v15.docx` (6448 palavras) | - -A PR entregou seis correções no motor e a campanha de 13 220 tarefas que as mede. -Os CSVs de campanha **não são versionados** — `.gitignore` cobre -`tests/testcomp/results_*/`, `tests/juliet/results*/` e `tests/castle/results_v*/`. - -### Onde os dados vivem (só no disco desta máquina) - -``` -tests/testcomp/results_v15_ce-control_s{0,1,2} cover-error, braço controle -tests/testcomp/results_v15_ce-slice_s{0,1,2} cover-error, braço slice -tests/testcomp/results_v15_cb-control_s{0..5} cover-branches -tests/juliet/results_v15_{a,b,c,d} Juliet, 4 shards -tests/castle/results_v15 CASTLE -``` - -Baselines anteriores preservados para comparação: `results_v9*` (Juliet/CASTLE), -`results_v12*`. Os resultados do **v14 foram deletados** — aquela campanha rodou o -binário do `--max-time` fracionário e nenhum número dela significa nada. - ---- - -## 2. As seis correções do v15 - -Todas com causa localizada. Nenhuma é explosão de caminhos. - -1. **`--max-time` fracionário matava o KLEE.** O parser de duração rejeita fração, - sai com 256, zero instruções executadas. Colapsou 464 TN do Juliet para 1. - Corrigido com `static_cast`. -2. **O slicer apagava o corpo da função-critério.** `reach_error` é onde a fatia - termina; o sbt-slicer mantém o call-site e descarta a definição. O link nativo do - LibFuzzer falha com `undefined reference`, nenhum `*-fuzzed.out` é produzido e o - estágio do fuzzer não faz nada — silenciosamente. Corrigido com um stub `weak` - religado via `llvm-link`. -3. **O log nunca chegava ao disco.** `stdout` é bufferizado em bloco quando - redirecionado; um run morto pelo timeout externo perdia o log inteiro, inclusive - um veredito já impresso. Corrigido com `std::flush` nos cinco níveis. -4. **A compilação do LibFuzzer não tinha limite.** Dois `clang -O2` sobre o módulo - instrumentado inteiro, sem timeout. -5. **Os motores se dimensionavam pelo orçamento nominal** (0,2× + 0,8× = 100%), sem - sobrar nada para os dois ciclos de compilar-instrumentar-linkar. Agora medem - contra `remainingSeconds()`. -6. **FAILED sem prova.** Um veredito de violação agora exige que o vetor seja - recuperável, checando as mesmas duas fontes que `emitTestSuite` consulta. - -**Não-regressão:** CASTLE 217/217 idênticos ao v9. Juliet com TP, FP e FN exatamente -iguais na interseção de 1054 casos, com um TN a mais. - ---- - -## 3. Números da campanha v15 - -Orçamento de competição, 300 s por tarefa, tudo em `install_v15`. - -| bloco | tarefas | resultado | -|---|---|---| -| Test-Comp cover-error | 1087 × 2 braços | controle **470 cobertas = 43,2%**; confirmação de veredito 91,9%; 9 ERROR; **zero NO_SUITE** (eram 41 no v11) | -| Test-Comp cover-branches | 2765 | **cobertura média 53,0%** (referência 46,9%) | -| Juliet | 8060 | TP 1154, TN 3290, FP 120, FN 1145, ERROR 380 | -| CASTLE | 221 | TP 54, TN 44, FN 14, FP 1 | -| **Total** | **13 220** | | - -O corpus de cover-error é o **pool inteiro aplicável**, não amostra — a cota de 400 -por categoria só limita ECA. Os dois braços rodaram as mesmas 1087 tarefas, então -toda comparação é pareada. - -**Cuidado com a palavra "precisão":** no cover-error, 1086 das 1087 tarefas têm bug -alcançável. Não existe verdadeiro negativo nem falso positivo possível, logo o -percentual é **recall**, não precisão. - -### Defeitos conhecidos e não corrigidos - -- **CWE-369 nunca foi medida.** Declarada no escopo do harness, não pertence a - nenhum shard. 9 das 10 CWEs foram efetivamente cobertas. -- **380 detecções bem-sucedidas classificadas como falha de ferramenta.** Todas em - variantes vulneráveis, nenhuma em corrigidas. O classificador lê segfault de - worker do LibFuzzer como crash da ferramenta; em CWE-121 é o fuzzer achando o bug. - Bug do harness, não do binário. -- **CWE-416 tem zero TN** com 70 FP. -- **Overflow (CWE-190/191)** com razão TP:FN de ~1:2 e 29% de timeouts. -- **85 tarefas pontuam apesar do veredito ser UNKNOWN** — 18% da pontuação vem de - casos em que a ferramenta gerou o vetor certo e se declarou incapaz de decidir. - ---- - -## 4. Slicing — o que está implementado e o que **não** está - -### De onde vem - -**sbt-slicer** + **DG**, do grupo *staticafi* (Masaryk University Brno) — os mesmos -componentes que o **Symbiotic** usa. Instalado pelo `Dockerfile.dev` em -`/opt/sbt-slicer`, resolvido por `Map2Check::slicerBinary()` -(`modules/frontend/utils/tools.hpp:70`), sobrescrevível por `$SBT_SLICER`. - -Não vem do FuSeBMC. **O FuSeBMC contribui só a ideia do motor híbrido** (fuzzer + -execução simbólica alternando), não o slicing. - -Algoritmicamente é **slicing estático backward sobre SDG**, na tradição -Weiser / Horwitz–Reps–Binkley. - -### Onde é chamado - -`Caller::sliceWithRespectToTarget()` — `modules/frontend/caller.cpp:179`. -Disparado por `--slice` em `map2check.cpp:519`, **antes** de `callPass()`: fatiar -depois da instrumentação remove a própria instrumentação, e a entrada ainda é -`main` nesse ponto (depois vira `__map2check_main__` e o slicer não a encontraria). - -Restrito a reachability. Não há critério a dar quando o objetivo é cobertura ou -propriedade de memória — `--slice` com `--cover-branches` é recusado. - -### O comando exato que emitimos - -``` -timeout -k 10 /opt/sbt-slicer/bin/sbt-slicer \ - -c reach_error --entry=main -o -sliced.bc -compiled.bc -``` - -`budget = max(5, min(0.2 × timeout, remainingSeconds() − 5))`. - -Depois: compila `void __attribute__((weak)) reach_error(void) {}`, faz `llvm-link` -com a fatia, e renomeia por cima do `-compiled.bc`. Se a fatia falhar ou estourar -o orçamento, cai de volta no programa inteiro — que é exatamente o que o controle faz. - -### **O buraco: passamos três flags de vinte e sete** - -O sbt-slicer expõe um conjunto grande de opções e **não configuramos nenhuma**. -Rodamos inteiramente nos defaults. O Symbiotic, de onde a ferramenta vem, ajusta -várias delas pelo tipo de propriedade. Lista real, extraída do `--help` na imagem -`ghcr.io/hbgit/map2check-dev:latest`: - -| opção | default | o que faria por nós | -|---|---|---| -| `--cutoff-diverging` | **true** | **chama `abort()` nos caminhos que podem não alcançar o critério** — ver hipótese abaixo | -| `--pta` | `fi` (flow-insensitive) | `fs` = flow-sensitive, `inv` = com nós de invalidação. Fatia menor, custo maior | -| `--cda` | `standard` (Ferrante) | `ntscd`, `ntscd-ranganath`, `scc` — sensíveis a não-terminação | -| `--cda-icfg` / `--cda-per-inst` | false / por bloco | dependências de controle interprocedurais, por instrução | -| `--undefined-funs` | `read-args` | `rw-any` é conservador; `pure` é agressivo. Muda tudo em programa com muita função externa | -| `--preserved-functions` | — | **manteria o corpo de `reach_error` sem o hack do stub weak** | -| `--remove-slicing-criteria` | false | ligá-lo é o algoritmo de Weiser puro | -| `--memsafety` | false | trata critérios como instruções potencialmente inseguras — é o modo que o Symbiotic usa para memsafety | -| `--allocation-funs` | — | ensina alocadores customizados ao PTA | -| `--statistics` / `--annotate` | false | **quanto foi removido e por quê — hoje só medimos bytes de bitcode** | - -### O resultado, e por que ele não conclui nada sobre a técnica - -Controle 470 contra slice 412. McNemar χ² = 36,10 (cresceu monotonicamente ao longo -da campanha: 19,56 → 21,12 → 22,72 → 36,10). - -Mas **57 das 58 tarefas perdidas estão em ECA**, onde a taxa despenca de 14,5% para -0,2%. Fora de ECA o braço empata ou ganha ligeiramente. - -O relatório se recusa deliberadamente a concluir "slicing não funciona". A leitura -honesta é que o número diz mais sobre **a ausência de configuração** do que sobre a -técnica: comparamos os defaults de uma biblioteca contra um controle bem afinado. - -### Hipótese principal para a sessão nova — `--cutoff-diverging` - -O default é **true**: o slicer injeta `abort()` nos caminhos que podem não alcançar -o critério. E o Map2Check invoca o KLEE com **`--exit-on-error-type=Abort`** -(`caller.cpp`, `stopPolicy`). Ou seja, um `abort()` de caminho divergente é -indistinguível, para o nosso stop policy, de um `abort()` de violação real. - -O mesmo vale para o LibFuzzer, que trata `abort()` como crash. - -Se isso for o mecanismo, o braço slice está parando cedo em abortos que o próprio -slicer plantou — e ECA, um autômato grande onde a maioria dos caminhos diverge do -critério, é exatamente onde isso doeria mais. Casa com a geografia do dano. - -**Ressalva importante e não resolvida:** numa checagem anterior, sobre **um** programa, -alternar `--cutoff-diverging` produziu bitcode idêntico. Isso enfraquece a hipótese -mas não a mata — uma amostra de um, e não no corpus ECA. É a primeira coisa a testar, -não um fato estabelecido. - ---- - -## 5. Smart seeds — o que está implementado e o que **não** está - -### O que existe - -Flag `--seed-exchange`, **desligada por default**. Troca bidirecional entre os dois -motores, em `modules/frontend/caller.cpp`: - -- **KLEE → fuzzer**: `exportKleeVectorsAsSeeds()` (linha 130). Varre `klee-out*/`, - converte cada `.ktest` em bytes de corpus via `ktestToFuzzerBytes()`, grava em - `Caller::seedDirectory`. Escrito **depois** do KLEE, porque `cleanGarbage()` - remove o scratch. -- **fuzzer → KLEE**: `exportFuzzerVectorAsKtest()` (linha 163). Lê `klee_log.csv`, - escreve **um** `.ktest`, passado como `--seed-file=`. -- **Persistência do corpus**: com `--seed-exchange`, o LibFuzzer recebe um - *diretório* de corpus. Sem ele, o LibFuzzer mantém o corpus em memória e joga - fora ao terminar — tudo que descobriu era descartado, todo run. - -### Os buracos - -- **Nunca foi medido com o binário corrigido.** O único dado que existe vem da - campanha v14, invalidada. Fechar isso custa dois braços de cover-error, ~10 h. -- **Assimetria: KLEE → fuzzer manda N vetores, fuzzer → KLEE manda um só.** O lado - do fuzzer lê só `klee_log.csv`, que guarda o último vetor, não o corpus. - O LibFuzzer produz um diretório inteiro de entradas interessantes que nunca - chegam ao KLEE. `--seed-file` aceita repetição. -- **Sem priorização.** Todo `.ktest` vira semente, sem ordenar por cobertura nova, - profundidade ou novidade. O FuSeBMC seleciona sementes por valor. -- **Sem alternância.** O ciclo é uma passagem só: fuzzer, depois KLEE, fim. A ideia - do FuSeBMC é iterar — cada motor realimenta o outro por várias rodadas dentro do - orçamento. Os comentários no código já preveem "uma alternância posterior", mas - o laço não existe. -- **`--use_value_profile=1` está ligado**, o que ajuda; mas nenhum dicionário, - nenhum `-max_len` derivado do programa, nenhum `-focus_function`. - -Mesma forma do slicing: **a técnica está plugada, não sintonizada.** - ---- - -## 6. WASM — proposta contra implementação - -### A proposta - -`docs/proposta WASM-final.md` — Map2Check-WASM para segurança de IoT/Edge. Quatro -fases: lifter ciente de segurança, modelagem de memória linear, mapeamento de -vulnerabilidades binárias (taint até funções importadas do host), e refinamento do -motor SMT. - -### O que existe hoje - -`modules/frontend/wasm_lifter.{hpp,cpp}` — 369 linhas. Flag `--wasm`. - -Pipeline implementado: **`.wasm` → `wasm2c` → `.c`/`.h` → `clang-16` → `.bc`**, -mais a geração de um wrapper que fornece `main()` chamando o entry point do módulo. -Runtime do WABT procurado em `/opt/wabt-1.0.41/include`, depois `/opt/wabt/include`, -depois `/usr/include`. - -Validação existente: `docs/reports/wasm-juliet-validation.csv` — casos do Juliet -compilados para WASM, rodados com `--wasm --memtrack --smt-solver z3`, ~135–180 s -cada, veredito FALSE (bug encontrado) nas variantes vulneráveis. - -### A distância entre as duas - -Só a **Fase 1 está parcialmente feita**, e na forma mais simples: lifting por -`wasm2c`, sem as anotações que a proposta pede. - -- **Sem injeção de metadados** preservando limites de objeto e chamadas de - importação/exportação do host — que é justamente o ponto de inovação declarado. -- **Fase 2 (memória linear) não existe.** Não há modelagem de ponteiro como offset - em array contíguo, nem asserção automática `ptr < MEM_SIZE`. O que temos é o - memtrack genérico rodando sobre o C gerado pelo `wasm2c` — que já embute os - próprios checks de bound do WABT, e isso confunde a atribuição do resultado. -- **Fase 3 (taint até funções do host) não existe.** -- **Fase 4** — o slicing que ela cita é o mesmo da seção 4, com os mesmos buracos. -- **Preservação semântica nunca foi medida**: a comparação C-direto contra - WASM-lifted, que é a métrica que provaria que o lifting não degrada a detecção, - não foi feita. O CSV tem só o lado WASM. - ---- - -## 7. Fio condutor - -As três frentes têm a mesma forma, e vale registrar porque muda o que a próxima -sessão deve perguntar: - -> Cada uma delas está **integrada mas não configurada**. O sbt-slicer roda nos -> defaults. A troca de sementes acontece uma vez, sem seleção. O lifter de WASM -> traduz sem anotar. Nos três casos, o número medido compara *a configuração -> padrão de uma biblioteca* contra um controle afinado — e essa é uma comparação -> diferente de "a técnica ajuda ou não". - -Isso não invalida os resultados do v15; invalida uma leitura específica deles. - ---- - -## 8. Fatos de infraestrutura que custaram tempo - -Registrados para não serem redescobertos: - -- **`run_isolated` escreve em ARQUIVO, não em pipe.** Netos órfãos do KLEE e do - LibFuzzer seguram a ponta de escrita para sempre — o harness travou 18 minutos. -- **Amostragem aninhada / prefixo-estável** com manifesto round-robin: quota-40 ⊂ - quota-150 ⊂ quota-400. Run truncado continua estratificado. -- **Sharding por módulo** (`i mod SHARDS == SHARD`), CSV-como-estado para retomar. -- **O veredito do TestCov é a linha `Result:`**, não o código de saída. -- **Nunca use `pkill`/`pgrep`** aqui — mata o próprio shell (saída 144). Mate por PID. -- **Confira containers pelas variáveis `MANIFEST`**, não pelo nome: uma campanha - inteira rodou com o manifesto errado e o nome do container não denunciava. -- **Rode a varredura de regressão ANTES de armar a campanha.** O bug do `--max-time` - era intermitente a 300 s (0,875 × 240 = 210, inteiro por acaso) e determinístico a - 60 s. Hoje isso é um portão nos launchers. diff --git a/docs/reports/2026-09-04-wasm-transformacao-formal.md b/docs/reports/2026-09-04-wasm-transformacao-formal.md deleted file mode 100644 index e7c1cc94b..000000000 --- a/docs/reports/2026-09-04-wasm-transformacao-formal.md +++ /dev/null @@ -1,485 +0,0 @@ -# A transformação WASM → LLVM-IR no Map2Check: formalização - -Documento técnico. Descreve, passo a passo e com formalismo, a cadeia de -transformações que leva um binário `.wasm` até o programa instrumentado que o -Map2Check analisa. O objetivo não é só documentar: é tornar **enunciável** o que a -cadeia preserva e o que ela perde, porque essa distinção decide quais resultados -experimentais são atribuíveis ao Map2Check. - -Referências de base: a semântica do WebAssembly é a de Haas et al., *Bringing the -Web up to Speed with WebAssembly* (PLDI 2017), e a especificação normativa dela -derivada. O tradutor é o `wasm2c` do WABT 1.0.41, verificado na imagem -`ghcr.io/hbgit/map2check-dev`. - ---- - -## 1. Notação - -Seja $\mathbb{B} = \{0,\dots,255\}$ o conjunto dos bytes e $\mathbb{B}^{*}$ as -sequências finitas de bytes. Escrevemos $[a,b)$ para o intervalo inteiro -semiaberto. Para uma função parcial $f$, $\mathrm{dom}(f)$ é seu domínio. - -O tamanho de página do WASM é a constante - -$$P = 65\,536 .$$ - -Os tipos de valor são $\mathit{valtype} = \{\mathtt{i32}, \mathtt{i64}, -\mathtt{f32}, \mathtt{f64}\}$, e $\mathit{Val}$ é o conjunto dos valores -correspondentes. - ---- - -## 2. Passo 0 — o objeto de entrada - -Um módulo WebAssembly é uma tupla - -$$M = (\mathit{types}, \mathit{funcs}, \mathit{tables}, \mathit{mems}, -\mathit{globals}, \mathit{elem}, \mathit{data}, \mathit{start}, -\mathit{imports}, \mathit{exports}).$$ - -Interessam aqui três componentes: - -- $\mathit{mems}$, que na versão 1.0 do WASM tem **cardinalidade no máximo 1**. - Essa é a hipótese estrutural que sustenta todo o resto: **existe uma única - memória linear**. -- $\mathit{exports} : \mathit{Name} \rightharpoonup \mathit{ExternIdx}$, as - funções visíveis de fora do módulo. -- $\mathit{imports}$, as funções que o *host* fornece — em contexto IoT, o - acesso a sensores, rede e banco. - -O **estado de execução** é o par $(s, F)$, com store - -$$s = (\mathit{funcs}, \mathit{tables}, \mathit{mems}, \mathit{globals})$$ - -e frame $F$ contendo os locais e a instância corrente. Uma configuração é -$s; F; e^{*}$, onde $e^{*}$ é a pilha de instruções, e a semântica é dada por uma -relação de redução em passos pequenos - -$$s; F; e^{*} \hookrightarrow s'; F'; e'^{*}.$$ - -O termo distinguido $\mathtt{trap}$ é absorvente: nenhuma regra o reduz. - -### 2.1 A memória linear - -Uma instância de memória é - -$$\mu = (d, \ell), \qquad d : [0,\ell) \to \mathbb{B}, \qquad \ell = n \cdot P$$ - -para algum $n \in \mathbb{N}$. Ou seja: **um vetor plano de bytes, contíguo, -endereçado por inteiros de 32 bits**, sem qualquer estrutura interna. Não há -noção de objeto, de alocação, nem de fronteira entre variáveis. Esse fato é o -centro de tudo que segue. - -A regra de leitura, na forma que nos importa, é - -$$ -\frac{\quad ea = i + \mathit{offset} \qquad ea + N/8 \le \ell \quad} - {s; F;\ (\mathtt{i32.const}\ i)\ (t.\mathtt{load}\ N\ \mathit{offset}) - \hookrightarrow s; F;\ (t.\mathtt{const}\ c)} -$$ - -e, quando a condição lateral falha, - -$$ -\frac{\quad ea + N/8 > \ell \quad} - {s; F;\ (\mathtt{i32.const}\ i)\ (t.\mathtt{load}\ N\ \mathit{offset}) - \hookrightarrow s; F;\ \mathtt{trap}} . -$$ - -Guarde a forma da condição lateral: $ea + N/8 \le \ell$. Ela vai reaparecer -literalmente, como código C, no passo 1. - ---- - -## 3. Passo 1 — $\tau$: `wasm2c` - -Definimos - -$$\tau : \mathit{Wasm} \longrightarrow \mathit{C}$$ - -como a função implementada por `wasm2c` (WABT 1.0.41), invocada em -`WasmLifter::runWasm2c` (`modules/frontend/wasm_lifter.cpp:86`) por - -``` -wasm2c .wasm -o .c -``` - -produzindo o par $(\texttt{.c}, \texttt{.h})$. - -### 3.1 Representação do estado - -$\tau$ realiza o store $s$ como uma **struct de instância** $I$. A memória linear -$\mu = (d,\ell)$ vira o registro `wasm_rt_memory_t`, cujos campos relevantes são - -$$\texttt{data} \mapsto d, \qquad \texttt{size} \mapsto \ell,$$ - -com `data` obtido de uma **única** chamada de alocação em -`wasm_rt_allocate_memory`. Registre-se o quantificador: *uma* alocação, para -*toda* a memória do módulo. - -Cada função $f$ do módulo vira uma função C - -$$\tau(f) : \texttt{(w2c\_}\langle mod\rangle\texttt{*)} \times -\overline{\mathit{Val}} \to \mathit{Val},$$ - -nomeada por mangling `w2c__`. O primeiro parâmetro é o ponteiro -de instância — é assim que o estado global do WASM vira estado explícito de -primeira classe no C. - -### 3.2 A condição lateral vira código - -O ponto técnico central: $\tau$ **compila a condição lateral da regra de redução -em uma verificação dinâmica explícita**. No C gerado (verificado na saída real do -WABT 1.0.41): - -```c -#define MEM_ADDR(mem, addr, n) &((mem)->data[addr]) - -#define RANGE_CHECK(mem, offset, len) \ - do { \ - uint64_t res; \ - if (UNLIKELY(add_overflow(offset, len, &res))) \ - TRAP(OOB); \ - if (UNLIKELY(res > (mem)->size)) \ - TRAP(OOB); \ - } while (0); - -#define TRAP(x) (wasm_rt_trap(WASM_RT_TRAP_##x), 0) -``` - -Comparando com §2.1: `res > mem->size` é exatamente a negação de -$ea + N/8 \le \ell$, e `TRAP(OOB)` é exatamente $\mathtt{trap}$. A tradução é -literal. - -Logo, definindo o predicado - -$$\mathrm{Safe}_{\mathrm{wasm}}(\mu, ea, N) \;\equiv\; ea + N/8 \le \ell,$$ - -o programa C avalia $\mathrm{Safe}_{\mathrm{wasm}}$ *em tempo de execução* antes -de cada acesso, e desvia para $\texttt{wasm\_rt\_trap}$ quando ele é falso. - -O conjunto de traps que o WABT distingue é - -$$ -\mathcal{T} = \{\mathtt{OOB}, \mathtt{INT\_OVERFLOW}, \mathtt{DIV\_BY\_ZERO}, -\mathtt{INVALID\_CONVERSION}, \mathtt{UNREACHABLE}, -$$ -$$ -\mathtt{CALL\_INDIRECT}, \mathtt{NULL\_REF}, -\mathtt{UNCAUGHT\_EXCEPTION}, \mathtt{UNALIGNED}, \mathtt{EXHAUSTION}\}. -$$ - -### 3.3 Correção de $\tau$ - -Seja $\approx$ a relação entre configurações WASM e estados C induzida pela -representação de §3.1 (memória por igualdade byte a byte, globais e locais por -igualdade de valor). - -> **Hipótese 1 (correção do `wasm2c`).** Para todo módulo $M$ bem tipado e toda -> execução, $\tau$ é uma **simulação forte** módulo passos administrativos: se -> $s;F;e^{*} \approx \sigma$ e $s;F;e^{*} \hookrightarrow s';F';e'^{*}$, então -> existe $\sigma'$ com $\sigma \to^{+} \sigma'$ e $s';F';e'^{*} \approx \sigma'$; -> e $e^{*} = \mathtt{trap}$ se e somente se $\sigma$ chama $\texttt{wasm\_rt\_trap}$. - -Isto é **hipótese, não teorema nosso**. Assumimos a correção do WABT como -assumimos a do Clang. Vale explicitá-la porque toda a soundness da cadeia repousa -sobre ela, e porque ela é falsificável: uma divergência de `wasm2c` apareceria -como discordância entre executar o `.wasm` num runtime e executar o C gerado. - ---- - -## 4. Passo 2 — $\kappa$: Clang para LLVM-IR - -$$\kappa : \mathit{C} \longrightarrow \mathit{LLVM}$$ - -implementada em `WasmLifter::runClang` (linha 102) e `runClangEmitLLVM` (linha 122): - -``` -clang-16 -c -emit-llvm -I -I

.c -o .bc -clang-16 -S -emit-llvm -I -I .c -o .ll -``` - -O `.ll` textual não é redundante: ele é a entrada de $\epsilon$, a extração de -metadados de §5. - -> **Hipótese 2 (correção do Clang).** $\kappa$ preserva a semântica de programas C -> **livres de comportamento indefinido**. - -A ressalva importa mais do que o normal aqui. O C emitido pelo `wasm2c` é gerado, -não escrito, e usa construções deliberadamente próximas do limite — aritmética de -ponteiro sobre `data`, `setjmp`/`sigsetjmp` para o mecanismo de trap, e o -`__seg_gs` do modo *segue* quando habilitado. Não auditamos essa fronteira. - ---- - -## 5. Passo 3 — $\epsilon$: extração do ponto de entrada - -$$\epsilon : \mathit{LLVM}_{\text{texto}} \longrightarrow -\mathit{Name} \times \mathcal{P}(\mathit{Name})$$ - -implementada em `WasmLifter::extractMetadata` (linha 145). Ela varre o `.ll` linha -a linha com a expressão regular - -$$\texttt{define.*@w2c\_([A-Za-z0-9\_]+)\textbackslash(}$$ - -e devolve $(\eta, E)$: o ponto de entrada $\eta$, reconhecido pelo sufixo mangled -`_0x5Fstart`, e $E$ o conjunto das demais funções exportadas. - -**Esta é uma análise sintática sobre texto, não sobre o módulo LLVM.** Vale -enunciar suas condições de falha, porque não são hipotéticas: - -1. Se nenhuma função casa `_0x5Fstart` — o caso de um módulo *reactor*, sem - `_start`, que é a forma usual de um handler WASM de IoT — o código cai no - default `w2c__start` com um aviso. **Esse símbolo pode não existir.** -2. $E$ e $\eta$ são disjuntos por construção, logo um módulo cujo único ponto de - interesse é uma função exportada (de novo: o caso IoT) tem $\eta$ mal definido. - -Isto é: $\epsilon$ é total, mas **não é correta** para a classe de módulos que a -proposta declara como alvo. Registrado aqui como propriedade da implementação -atual, não como defeito a corrigir neste documento. - ---- - -## 6. Passo 4 — $\omega$: o harness - -O programa liftado não tem `main`. $\tau$ traduziu funções de módulo; nenhuma -delas é ponto de entrada de um processo. Definimos então - -$$\omega : \mathit{Name} \longrightarrow \mathit{LLVM}$$ - -(`Caller::generateWasmWrapperStatic`, `caller.cpp:567`, chamada em -`map2check.cpp:465`), que sintetiza literalmente - -```c -int main() { - w2c_ instance; - wasm2c__instantiate(&instance, NULL); - (&instance); - wasm2c__free(&instance); - return 0; -} -``` - -e o resultado é religado por - -$$\Lambda_0 = \texttt{llvm-link}(\kappa(\tau(M)),\ \omega(\eta)).$$ - -### 6.1 O que $\omega$ quantifica: nada - -Formalmente, o módulo denota uma **família** de execuções indexada pelos -argumentos das funções exportadas e pelo comportamento das importações: - -$$\llbracket M \rrbracket : \overline{\mathit{Val}} \times \mathit{Host} -\longrightarrow \mathit{Outcome}.$$ - -O harness atual **não instancia essa família: ele a evita.** A chamada -$\eta(\&I)$ é nulária — a única entrada aceita é o ponteiro de instância, porque -$\eta$ é o `_start`, cuja assinatura no WASM é -$[\;] \rightarrow [\;]$. Nenhum $\nu$ é escolhido porque não há onde colocá-lo. - -A consequência é precisa. Escrevendo $\mathit{Reach}(p)$ para o conjunto de -estados alcançáveis de um programa $p$: - -$$\mathit{Reach}(\Lambda_0) \;=\; -\bigcup_{h \in \mathit{Host}} \mathit{Reach}\big(\llbracket M \rrbracket(\bot, h)\big) -\;\subseteq\; -\bigcup_{\nu, h} \mathit{Reach}\big(\llbracket M \rrbracket(\nu, h)\big),$$ - -e a inclusão é **estrita** sempre que o módulo tem alguma função exportada com -aridade positiva. O símbolo $\bot$ não é um valor: é a ausência da chamada. - -Duas leituras disso, e as duas importam: - -1. **Para um módulo com `_start`** — um programa compilado para WASI, que é o - formato dos casos do Juliet na CSV de validação — a entrada chega por - `argv`/stdin *dentro* do `_start`, e o `NonDetPass` pode amarrá-la ali. A - cadeia funciona. Este é o caso medido até hoje. -2. **Para um módulo *reactor*** — o handler de IoT que a proposta declara como - alvo, sem `_start`, cujo comportamento inteiro está nas funções exportadas em - $E$ — o wrapper não chama nada de interesse. Combinado com §5, onde $\epsilon$ - já devolve $\eta$ mal definido para essa classe, o resultado é que **o alvo - declarado da proposta não é alcançável pela implementação atual**, e não por - um motivo profundo: falta gerar uma chamada por função exportada, com - `__VERIFIER_nondet_()` em cada parâmetro. - -O tratamento das importações $h$ é o buraco restante: sem modelo de host, as -funções importadas são símbolos externos, e o que se assume sobre elas é o default -de quem estiver rodando, não uma escolha nossa. A Fase 3 da proposta — taint do -dado controlado até a função importada — vive inteiramente aí. - -## 7. Passo 5 — $\pi$: instrumentação do Map2Check - -Daqui em diante o pipeline é o comum: `map2check.cpp:497` chama -`caller->compileCFile(is_llvmir_in)` com `is_llvmir_in = true`, e a partir daí -$\Lambda_0$ é tratado como qualquer bitcode. - -$\pi$ é a transformação de programa dos passes LLVM. Ela é um par -$(\pi_{\text{code}}, \Sigma)$: instrumentação e **estado sombra**. Para o modo -`--memtrack`, $\Sigma$ mantém o conjunto de alocações vivas - -$$\Sigma \subseteq \{(\mathit{base}, \mathit{size}, \mathit{alive})\},$$ - -e $\pi_{\text{code}}$ insere, antes de cada acesso a $(p, n)$, a verificação - -$$\mathrm{Safe}_{\mathrm{C}}(\Sigma, p, n) \;\equiv\; -\exists (b,z,\mathit{alive}) \in \Sigma :\; -\mathit{alive} \;\wedge\; b \le p \;\wedge\; p + n \le b + z .$$ - -**Compare com $\mathrm{Safe}_{\mathrm{wasm}}$ de §3.2.** As duas verificações não -falam da mesma coisa, e a §9 é inteiramente sobre a distância entre elas. - -A cadeia completa é - -$$\boxed{\;\Lambda \;=\; \pi \;\circ\; \mathrm{link}\big(\omega \circ \epsilon,\ \cdot\big) -\;\circ\; \kappa \;\circ\; \tau \;}$$ - -seguida do motor de geração de entradas (KLEE ou LibFuzzer) sobre $\Lambda(M)$. - ---- - -## 8. O que a cadeia preserva - -> **Proposição 1 (soundness para alcançabilidade de trap).** -> Sob as Hipóteses 1 e 2, se a execução de $\Lambda(M)$ sob a valoração $\nu$ -> alcança $\texttt{wasm\_rt\_trap}$, então $\llbracket M \rrbracket(\nu, h)$ -> reduz a $\mathtt{trap}$. - -*Esboço.* Por Hipótese 2, a execução de $\Lambda_0$ corresponde à do C gerado. -Por Hipótese 1, alcançar $\texttt{wasm\_rt\_trap}$ no C corresponde a alcançar -$\mathtt{trap}$ no WASM. $\pi$ só acrescenta código sobre um estado sombra -disjunto do estado do programa, logo preserva alcançabilidade. $\square$ - -Isso é real e é útil: **as dez classes de trap de $\mathcal{T}$ — OOB, divisão por -zero, overflow de conversão, `unreachable`, `call_indirect` inválido — são -detectáveis pela cadeia atual, sem nenhum trabalho adicional.** O que -`wasm_rt_trap` faz é abortar, e abort é precisamente o sinal que o modo -reachability do Map2Check já consome. - ---- - -## 9. O que a cadeia **não** preserva - -Aqui está a consequência formal que motiva a Fase 2 da proposta. - -> **Proposição 2 (incompletude para segurança de memória).** -> Existem $M$ e $\nu$ tais que a execução de $M$ sob $\nu$ **sobrescreve um objeto -> que não é o alvo pretendido** — uma violação genuína de CWE-787 — e ainda assim -> $\Lambda(M)$ sob $\nu$ não viola $\mathrm{Safe}_{\mathrm{C}}$ em nenhum acesso, -> nem alcança $\texttt{wasm\_rt\_trap}$. - -*Prova (por construção).* Tome o módulo compilado de - -```c -int buf[4]; -char token[16]; -int f(int i) { buf[i] = 7; return buf[0]; } -``` - -com $\nu = (i = 4)$ e $\mathit{token}$ posicionado logo após $\mathit{buf}$ na -memória linear. Sejam $a_{\mathit{buf}}$ e $a_{\mathit{token}}$ seus offsets. - -1. **No WASM.** O acesso tem endereço efetivo $ea = a_{\mathit{buf}} + 16$, que é - $a_{\mathit{token}}$. Como $ea + 4 \le \ell$ — a memória linear tem pelo menos - uma página, $\ell \ge 65\,536$, e os objetos estão bem no começo — a condição - lateral de §2.1 **é satisfeita**. A redução não produz $\mathtt{trap}$: produz - uma escrita bem-definida. O token foi sobrescrito e a execução segue - normalmente. -2. **No C gerado.** `RANGE_CHECK` testa `res > mem->size`, isto é - $ea + 4 > \ell$, que é falso. Nenhum trap. -3. **Sob $\pi$.** Por §3.1, `data` é **uma única alocação** cobrindo $[0,\ell)$. - Logo $\Sigma$ contém o registro $(\texttt{data}, \ell, \mathrm{true})$, e para - $p = \texttt{data} + ea$, $n = 4$, vale - $\texttt{data} \le p$ e $p + 4 \le \texttt{data} + \ell$. Portanto - $\mathrm{Safe}_{\mathrm{C}}(\Sigma, p, 4)$ **é verdadeiro**. Nenhuma violação - é reportada. $\square$ - -O ponto não é uma limitação do memtrack. É que **$\tau$ apaga a informação -necessária**: a partição da memória linear em objetos existe no fonte C original, -sobrevive até o compilador para WASM, e é descartada na emissão do módulo, porque -o WASM não tem onde guardá-la. O que chega ao Map2Check é um vetor de bytes com -uma única fronteira — a de fora. - -Note ainda o **quantificador invertido**: quanto *maior* a memória linear, *menos* -detectável a violação, porque mais longe fica a única fronteira que sobrou. Um -módulo com uma página tem $\ell = 65\,536$; um overflow de dezesseis bytes está a -sessenta e cinco mil bytes de ser visível. - -### 9.1 Consequência para a atribuição dos resultados - -Isso muda como ler `docs/reports/wasm-juliet-validation.csv`. Todos os casos ali -retornam `FALSE`, isto é, bug encontrado. Mas a Proposição 1 e a Proposição 2 -juntas dizem que há **dois mecanismos possíveis** para esse `FALSE`: - -- **(a)** o overflow foi grande o bastante para sair de $[0,\ell)$, o `RANGE_CHECK` - do WABT disparou, e o que detectamos foi o *check do WABT*; ou -- **(b)** a instrumentação do Map2Check detectou algo por conta própria. - -**A CSV não distingue os dois casos**, e a Proposição 2 diz que (b) é impossível -para violação intra-memória. Enquanto essa separação não for feita, a validação -WASM não sustenta a alegação de que *o Map2Check* encontrou os bugs: ela é -consistente com o WABT tê-los encontrado e o Map2Check ter apenas reportado o -abort resultante. - -Separar é barato: basta instrumentar `wasm_rt_trap` e registrar qual dos dois -caminhos produziu o abort. É a primeira medição que a frente WASM deveria fazer. - ---- - -## 10. O que a Fase 2 tem de adicionar, formalmente - -A proposta pede "modelagem da memória linear". Em termos deste documento, o que -falta é exatamente um objeto: um **mapa de objetos** - -$$O : [0,\ell) \rightharpoonup \mathit{ObjID},$$ - -com o predicado refinado - -$$\mathrm{Safe}_{\mathrm{lin}}(O, ea, N) \;\equiv\; -\mathrm{Safe}_{\mathrm{wasm}}(\mu, ea, N) -\;\wedge\; -\exists o \in \mathit{ObjID} :\; -\forall k \in [ea,\, ea+N/8) :\; O(k) = o .$$ - -Em palavras: além de estar dentro da memória, o acesso inteiro tem de cair -**dentro de um único objeto**. Com $\mathrm{Safe}_{\mathrm{lin}}$ no lugar de -$\mathrm{Safe}_{\mathrm{C}}$, o contraexemplo da Proposição 2 passa a ser -detectado: $O(a_{\mathit{buf}} + 16) = \mathit{token} \ne \mathit{buf}$. - -E isso torna preciso o requisito sobre o lifter. $O$ **não é recuperável do -`.wasm`** — foi apagado antes. As três fontes possíveis são: - -1. **Seções de nome e de DWARF** do módulo, quando presentes ($\mathtt{clang}$ - `-g` para `wasm32` as emite). Recupera objetos estáticos e o layout de frame. -2. **Reconstrução do alocador**: reconhecer as funções de `malloc`/`free` do - módulo, quando ele carrega uma libc, e derivar $O$ dinamicamente delas. É o - análogo, aqui, do `--allocation-funs` do sbt-slicer. -3. **Anotação no momento do lifting**, que é o que a proposta chama de "lifter - ciente de segurança": $\tau'$ que emita, junto do C, os metadados de fronteira. - -As três são trabalho de $\tau$ ou de um passo novo entre $\tau$ e $\kappa$. -**Nenhuma delas é trabalho do backend do Map2Check** — o que confirma a -afirmação de viabilidade da proposta ("não exige reescrever o motor de -verificação"), e ao mesmo tempo localiza o custo real onde ele está. - ---- - -## 11. Resumo da cadeia - -| passo | função | implementação | preserva | perde | -|---|---|---|---|---| -| 0 | $M$ | entrada `.wasm` | — | (o layout de objetos já foi perdido na compilação **para** WASM) | -| 1 | $\tau$ | `wasm2c`, WABT 1.0.41 | semântica, traps, bytes da memória | nada além do que já faltava | -| 2 | $\kappa$ | `clang-16 -emit-llvm` | semântica C (módulo UB) | — | -| 3 | $\epsilon$ | regex sobre o `.ll` | ponto de entrada, quando há `_start` | módulos *reactor*, o caso IoT | -| 4 | $\omega$ | wrapper + `llvm-link` | a execução de `_start` | toda função exportada com aridade > 0, e o host | -| 5 | $\pi$ | passes do Map2Check | alcançabilidade | — | - -E os dois enunciados que a tabela resume: - -- **Proposição 1.** A cadeia é *sound* para as dez classes de trap do WASM. Isso - já funciona hoje e é um resultado publicável por si. -- **Proposição 2.** A cadeia é *incompleta* para segurança de memória - intra-sandbox — a classe de vulnerabilidade que a proposta declara como alvo - principal. A causa é estrutural, não um bug: a memória linear chega como uma - alocação única, e nenhuma análise sobre ela pode distinguir objetos que já não - estão lá. From e5a86a77938e6bbce468b985263f0a4f2c8f9e46 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 6 Oct 2026 22:40:10 -0400 Subject: [PATCH 73/88] test(testcomp): validate suites with the five Test-Comp 2026 validators under BenchExec Test-Comp scores a task by the best coverage any of its validators measures (competition-scripts, export_adjusted_csvs.py, update_score_tester): TestCov with gcc and clang, formatted and unformatted, plus TestCoCa. Our harness ran one TestCov 3.7 with a 300 s limit and no BenchExec. tests/testcomp/official/ reproduces the testcomp26 setup: - Dockerfile: the competition's user image (Ubuntu 24.04), BenchExec 3.34, TestCov 3.11.post3 and TestCoCa from their Zenodo archives (checksummed); init.sh gives BenchExec its cgroup, as its container doc prescribes. - bench-defs/: the five official validator definitions, unchanged. - validate.py: narrows each definition to our tasks and suites, runs BenchExec from a fresh copy of the tool with the competition's overlay options, stages task inputs into a writable copy (TestCov writes beside the program), and merges the scores as the competition does. - validate.sh: runs it in the image, keeping /home free for BenchExec. run_testcomp_evaluation.sh keeps the suites in the layout the validators read when SUITES_DIR is set. Co-Authored-By: Claude Opus 5.5 (1M context) --- tests/testcomp/official/Dockerfile | 43 ++++ ...a-validate-test-suites-clang-formatted.xml | 171 +++++++++++++ ...v-validate-test-suites-clang-formatted.xml | 182 ++++++++++++++ ...validate-test-suites-clang-unformatted.xml | 181 ++++++++++++++ ...cov-validate-test-suites-gcc-formatted.xml | 178 ++++++++++++++ ...v-validate-test-suites-gcc-unformatted.xml | 177 ++++++++++++++ tests/testcomp/official/init.sh | 12 + tests/testcomp/official/validate.py | 228 ++++++++++++++++++ tests/testcomp/official/validate.sh | 46 ++++ tests/testcomp/run_testcomp_evaluation.sh | 12 + 10 files changed, 1230 insertions(+) create mode 100644 tests/testcomp/official/Dockerfile create mode 100644 tests/testcomp/official/bench-defs/testcoca-validate-test-suites-clang-formatted.xml create mode 100644 tests/testcomp/official/bench-defs/testcov-validate-test-suites-clang-formatted.xml create mode 100644 tests/testcomp/official/bench-defs/testcov-validate-test-suites-clang-unformatted.xml create mode 100644 tests/testcomp/official/bench-defs/testcov-validate-test-suites-gcc-formatted.xml create mode 100644 tests/testcomp/official/bench-defs/testcov-validate-test-suites-gcc-unformatted.xml create mode 100755 tests/testcomp/official/init.sh create mode 100755 tests/testcomp/official/validate.py create mode 100755 tests/testcomp/official/validate.sh diff --git a/tests/testcomp/official/Dockerfile b/tests/testcomp/official/Dockerfile new file mode 100644 index 000000000..84c1e82c9 --- /dev/null +++ b/tests/testcomp/official/Dockerfile @@ -0,0 +1,43 @@ +# Test-Comp 2026 reproduction environment. +# +# The base is the image the competition publishes as "mostly the same packages +# as the competition machines" (Ubuntu 24.04; competition-scripts +# test/Dockerfile.user.2026). On top of it, the two components the +# testcomp26 tag of gitlab.com/sosy-lab/test-comp/bench-defs pins: +# - BenchExec 3.34 (submodule benchexec @ 829bf7a4583e), which runs both the +# test generator and the validator under the official limits; +# - TestCov 3.11.post3 (fm-tools testcov.yml, Zenodo 10.5281/zenodo.17698774) +# and TestCoCa testcomp26 (fm-tools testcoca.yml, Zenodo +# 10.5281/zenodo.17819536): the five validators of the category structure +# (TestCov x {gcc, clang} x {formatted, unformatted}, plus TestCoCa). A +# task's score is the best coverage any of them measures. +# See docs/reports/2026-10-06-ambiente-testcomp-oficial.md. +# +# Run it privileged, as BenchExec needs to manage cgroups: +# docker run --privileged --cap-drop=all ... map2check-testcomp-env +FROM registry.gitlab.com/sosy-lab/benchmarking/competition-scripts/user@sha256:2a38216dfc6ceb6ebbb80f07dae8abd4b87b4c619d7c6db2256dc98e608ebc47 + +RUN apt-get update \ + && apt-get install -y --no-install-recommends python3-pip zip unzip xmlstarlet ca-certificates curl fuse-overlayfs \ + && rm -rf /var/lib/apt/lists/* + +RUN pip install --break-system-packages --no-cache-dir benchexec==3.34 + +ARG TESTCOV_URL=https://zenodo.org/api/records/17698774/files/testcov-3.11.post3.zip/content +ARG TESTCOV_SHA256=604c234cb2ef6f8aa46bc0dd8fa146104d7d368b7285d0d8e9cd8bc99a7813b1 +RUN curl -sSL -o /tmp/testcov.zip "$TESTCOV_URL" \ + && echo "$TESTCOV_SHA256 /tmp/testcov.zip" | sha256sum -c - \ + && unzip -q /tmp/testcov.zip -d /opt \ + && rm /tmp/testcov.zip \ + && /opt/testcov/bin/testcov --version + +ARG TESTCOCA_URL=https://zenodo.org/api/records/17819536/files/testcoca.zip/content +ARG TESTCOCA_SHA256=14e57b70ee8ccb72899daa14ec7132cca217d8c334bf8b29940ca703ff32036f +RUN curl -sSL -o /tmp/testcoca.zip "$TESTCOCA_URL" \ + && echo "$TESTCOCA_SHA256 /tmp/testcoca.zip" | sha256sum -c - \ + && unzip -q /tmp/testcoca.zip -d /opt \ + && rm /tmp/testcoca.zip + +COPY init.sh /init.sh +ENTRYPOINT ["/init.sh"] +CMD ["bash"] diff --git a/tests/testcomp/official/bench-defs/testcoca-validate-test-suites-clang-formatted.xml b/tests/testcomp/official/bench-defs/testcoca-validate-test-suites-clang-formatted.xml new file mode 100644 index 000000000..2f9257102 --- /dev/null +++ b/tests/testcomp/official/bench-defs/testcoca-validate-test-suites-clang-formatted.xml @@ -0,0 +1,171 @@ + + + + + + + **output/** + + \ No newline at end of file diff --git a/tests/testcomp/official/bench-defs/testcov-validate-test-suites-clang-formatted.xml b/tests/testcomp/official/bench-defs/testcov-validate-test-suites-clang-formatted.xml new file mode 100644 index 000000000..73cb97758 --- /dev/null +++ b/tests/testcomp/official/bench-defs/testcov-validate-test-suites-clang-formatted.xml @@ -0,0 +1,182 @@ + + + + + + + **output/** + + \ No newline at end of file diff --git a/tests/testcomp/official/bench-defs/testcov-validate-test-suites-clang-unformatted.xml b/tests/testcomp/official/bench-defs/testcov-validate-test-suites-clang-unformatted.xml new file mode 100644 index 000000000..5591bb122 --- /dev/null +++ b/tests/testcomp/official/bench-defs/testcov-validate-test-suites-clang-unformatted.xml @@ -0,0 +1,181 @@ + + + + + + + **output/** + + \ No newline at end of file diff --git a/tests/testcomp/official/bench-defs/testcov-validate-test-suites-gcc-formatted.xml b/tests/testcomp/official/bench-defs/testcov-validate-test-suites-gcc-formatted.xml new file mode 100644 index 000000000..d6ca78924 --- /dev/null +++ b/tests/testcomp/official/bench-defs/testcov-validate-test-suites-gcc-formatted.xml @@ -0,0 +1,178 @@ + + + + + + + **output/** + + \ No newline at end of file diff --git a/tests/testcomp/official/bench-defs/testcov-validate-test-suites-gcc-unformatted.xml b/tests/testcomp/official/bench-defs/testcov-validate-test-suites-gcc-unformatted.xml new file mode 100644 index 000000000..4d2e17c75 --- /dev/null +++ b/tests/testcomp/official/bench-defs/testcov-validate-test-suites-gcc-unformatted.xml @@ -0,0 +1,177 @@ + + + + + + + **output/** + + \ No newline at end of file diff --git a/tests/testcomp/official/init.sh b/tests/testcomp/official/init.sh new file mode 100755 index 000000000..c0b592e96 --- /dev/null +++ b/tests/testcomp/official/init.sh @@ -0,0 +1,12 @@ +#!/bin/sh +# Entry point of the Test-Comp reproduction image: a separate cgroup for +# BenchExec, as its doc/benchexec-in-container.md prescribes for cgroups v2. +# Without it BenchExec cannot limit or measure the runs it starts. +set -eu +mkdir -p /sys/fs/cgroup/init /sys/fs/cgroup/benchexec +echo $$ > /sys/fs/cgroup/init/cgroup.procs +for controller in $(cat /sys/fs/cgroup/cgroup.controllers); do + echo "+$controller" > /sys/fs/cgroup/cgroup.subtree_control + echo "+$controller" > /sys/fs/cgroup/benchexec/cgroup.subtree_control +done +exec "$@" diff --git a/tests/testcomp/official/validate.py b/tests/testcomp/official/validate.py new file mode 100755 index 000000000..fa9eb3007 --- /dev/null +++ b/tests/testcomp/official/validate.py @@ -0,0 +1,228 @@ +#!/usr/bin/env python3 +"""Validates Map2Check test suites the way Test-Comp 2026 does. + +Runs inside the reproduction image (see Dockerfile and validate.sh). For each +of the five validators the category structure of the testcomp26 tag lists -- +TestCov with gcc and clang, formatted and unformatted, and TestCoCa -- it takes +the official benchmark definition from bench-defs/, keeps its limits, options +and columns as they are, and rewrites only two things: + + - the task set, replaced by the tasks given on the command line; + - the location of the suites, ../results-verified/LOGDIR/ in the original, + replaced by --suites. + +It drops the line, which pins the competition's hardware. +BenchExec then runs each validator, and the results are merged as the +competition merges them (competition-scripts, +prepare_tables/export_adjusted_csvs.py, update_score_tester): + + - coverage-branches: the score is the BEST coverage any validator measured; + - coverage-error-call: 1 point if ANY validator answers TRUE. + +Suites are expected at ///test-suite.zip, +for instance suites/Test-Comp26_coverage-branches/AllInterval-011.yml/test-suite.zip +(BenchExec's ${taskdef_name} keeps the .yml). +""" + +import argparse +import bz2 +import csv +import glob +import os +import shutil +import subprocess +import sys +import xml.etree.ElementTree as ET + +HERE = os.path.dirname(os.path.abspath(__file__)) +DEFS = os.path.join(HERE, "bench-defs") + +VALIDATORS = { + "testcov-validate-test-suites-gcc-unformatted": "/opt/testcov", + "testcov-validate-test-suites-gcc-formatted": "/opt/testcov", + "testcov-validate-test-suites-clang-unformatted": "/opt/testcov", + "testcov-validate-test-suites-clang-formatted": "/opt/testcov", + "testcoca-validate-test-suites-clang-formatted": "/opt/testcoca", +} + +PROPERTIES = { + "cover-branches": "Test-Comp26_coverage-branches", + "cover-error": "Test-Comp26_coverage-error-call", +} + +OFFICIAL_LOGDIRS = ("../../results-verified/LOGDIR/", "../results-verified/LOGDIR/") + + +def task_files(args, staging): + """The .yml task definitions to validate, as absolute paths into `staging`. + + Each task's inputs -- the .yml, the programs it names, and the property + files -- are copied there, keeping their paths relative to sv-benchmarks. + TestCov writes beside the program (.c.i), and on the competition's + VerifierCloud the inputs sit in the run's own writable directory; a copy + reproduces that and leaves the corpus untouched.""" + import yaml + + shutil.rmtree(staging, ignore_errors=True) + shutil.copytree(os.path.join(args.sv_benchmarks, "properties"), + os.path.join(staging, "properties")) + tasks = [] + with open(args.tasks) as listing: + for line in listing: + line = line.strip() + if not line or line.startswith("#"): + continue + # A manifest row (categoryprogram...) or a bare path. + path = line.split("\t")[1] if "\t" in line else line + stem, _ = os.path.splitext(path) + yml = os.path.join(args.sv_benchmarks, stem + ".yml") + if not os.path.isfile(yml): + sys.exit(f"no task definition for {path}: {yml}") + with open(yml) as handle: + inputs = yaml.safe_load(handle)["input_files"] + inputs = [inputs] if isinstance(inputs, str) else inputs + target_dir = os.path.join(staging, os.path.dirname(stem)) + os.makedirs(target_dir, exist_ok=True) + for name in [os.path.basename(yml)] + inputs: + shutil.copy2(os.path.join(os.path.dirname(yml), name), + os.path.join(target_dir, name)) + tasks.append(os.path.join(target_dir, os.path.basename(yml))) + return tasks + + +def rewrite_definition(name, rundefinition, tasks, suites, sv_benchmarks, out_dir): + """The official definition of `name`, narrowed to our tasks and suites.""" + tree = ET.parse(os.path.join(DEFS, name + ".xml")) + root = tree.getroot() + for require in root.findall("require"): + root.remove(require) + kept = False + for run in list(root.findall("rundefinition")): + if run.get("name") != rundefinition: + root.remove(run) + continue + kept = True + for element in run.iter(): + if element.text: + for logdir in OFFICIAL_LOGDIRS: + element.text = element.text.replace(logdir, suites + "/") + element.text = element.text.replace("../sv-benchmarks/c/", sv_benchmarks + "/") + for old in run.findall("tasks"): + run.remove(old) + group = ET.SubElement(run, "tasks", name="map2check") + for task in tasks: + ET.SubElement(group, "include").text = task + if not kept: + sys.exit(f"{name}: no rundefinition {rundefinition}") + path = os.path.join(out_dir, "defs", name + ".xml") + os.makedirs(os.path.dirname(path), exist_ok=True) + tree.write(path, xml_declaration=True, encoding="utf-8") + return path + + +def run_benchexec(definition, tool_dir, out_dir, staging, args): + """Runs one validator as the competition scripts do: from inside a fresh + copy of the tool (execute-runcollection.sh unpacks it into bin/-XXXX + and runs BenchExec there with --tool-directory .), so the tool may write + beside itself -- TestCov's --format does -- through the overlay on ./. + The staged task inputs are writable for the same reason (task_files).""" + work = os.path.join(out_dir, "tool") + shutil.rmtree(work, ignore_errors=True) + shutil.copytree(tool_dir, work, symlinks=True) + command = [ + "benchexec", definition, + "--tool-directory", ".", + "--outputpath", out_dir + "/", + "--numOfThreads", str(args.threads), + "--no-compress-results", + "--read-only-dir", "/", "--overlay-dir", "/home/", "--overlay-dir", "./", + # An overlay, not full access: what one validator writes there (the + # preprocessed program) must not reach the next. + "--overlay-dir", staging, + ] + command += args.benchexec_args + print("+", " ".join(command), flush=True) + code = subprocess.call(command, cwd=work) + shutil.rmtree(work, ignore_errors=True) + return code + + +def read_results(out_dir): + """task name -> (status, coverage %) from the BenchExec result XMLs.""" + found = {} + for path in glob.glob(os.path.join(out_dir, "*.results.*.xml")) + glob.glob( + os.path.join(out_dir, "*.results.*.xml.bz2") + ): + opener = bz2.open if path.endswith(".bz2") else open + with opener(path, "rb") as handle: + root = ET.parse(handle).getroot() + for run in root.findall("run"): + values = {c.get("title"): c.get("value") for c in run.findall("column")} + coverage = values.get("branches_covered") or "" + coverage = coverage.replace("%", "").strip() + found[os.path.basename(run.get("name"))] = (values.get("status", ""), coverage) + return found + + +def main(): + parser = argparse.ArgumentParser(description=__doc__, + formatter_class=argparse.RawDescriptionHelpFormatter) + parser.add_argument("--property", choices=PROPERTIES, required=True) + parser.add_argument("--tasks", required=True, + help="manifest TSV or list of task paths (.c/.i/.yml)") + parser.add_argument("--suites", required=True) + parser.add_argument("--sv-benchmarks", required=True, + help="the c/ directory of sv-benchmarks") + parser.add_argument("--out", required=True) + parser.add_argument("--threads", type=int, default=3) + parser.add_argument("--validators", default=",".join(VALIDATORS)) + parser.add_argument("benchexec_args", nargs="*", + help="after --, extra BenchExec options (e.g. --timelimit 60 for a smoke test)") + args = parser.parse_args() + + rundefinition = PROPERTIES[args.property] + suites = os.path.abspath(args.suites) + out = os.path.abspath(args.out) + staging = os.path.join(out, "sv-benchmarks") + tasks = task_files(args, staging) + print(f"{len(tasks)} tasks, {rundefinition}", flush=True) + + per_validator = {} + for name in args.validators.split(","): + definition = rewrite_definition(name, rundefinition, tasks, suites, staging, out) + result_dir = os.path.join(out, "results", name) + os.makedirs(result_dir, exist_ok=True) + if run_benchexec(definition, VALIDATORS[name], result_dir, staging, args) != 0: + print(f"warning: benchexec exited non-zero for {name}", flush=True) + per_validator[name] = read_results(result_dir) + + names = list(per_validator) + with open(os.path.join(out, "scores.csv"), "w", newline="") as handle: + writer = csv.writer(handle) + writer.writerow(["task"] + [f"{n}:{c}" for n in names for c in ("status", "coverage")] + + ["score", "best_validator"]) + for task in tasks: + key = os.path.basename(task) + row, best, best_by = [key], 0.0, "" + for name in names: + status, coverage = per_validator[name].get(key, ("MISSING", "")) + row += [status, coverage] + if args.property == "cover-error": + value = 1.0 if status == "true" else 0.0 + else: + try: + value = float(coverage) / 100 + except ValueError: + value = 0.0 + if value > best: + best, best_by = value, name + writer.writerow(row + [f"{best:.4f}", best_by]) + # BenchExec runs as root in the container; hand the results back. + owner = os.environ.get("HOST_OWNER") + if owner: + subprocess.call(["chown", "-R", owner, out]) + print(f"scores: {os.path.join(out, 'scores.csv')}") + + +if __name__ == "__main__": + main() diff --git a/tests/testcomp/official/validate.sh b/tests/testcomp/official/validate.sh new file mode 100755 index 000000000..fcb4cbf7f --- /dev/null +++ b/tests/testcomp/official/validate.sh @@ -0,0 +1,46 @@ +#!/bin/bash +# Validates test suites with the five Test-Comp 2026 validators, under +# BenchExec, in the reproduction image. See validate.py for what is official +# and what is rewritten. +# +# tests/testcomp/official/validate.sh --property cover-branches \ +# --tasks tests/testcomp/corpus/cover-branches-q400.tsv \ +# --suites /path/to/suites --out /path/to/out [-- --timelimit 60] +# +# The image is map2check-testcomp-env (docker build -t map2check-testcomp-env +# tests/testcomp/official). BenchExec needs --privileged to manage cgroups, and +# /dev/fuse for the overlay it puts on /home. +# +# The repository is mounted at /m2c and $DATA_DIR (default: the repository's +# parent) at /data, and paths given on the command line are translated: the +# container's /home must stay free, since BenchExec overlays it and an overlay +# over a bind mount under it fails ("Failed to create overlay mount"). +set -euo pipefail +REPO=$(cd "$(dirname "$0")/../../.." && pwd) +DATA_DIR=$(cd "${DATA_DIR:-$REPO/..}" && pwd) +IMAGE=${IMAGE:-map2check-testcomp-env} +SV=${SV_BENCHMARKS:-$REPO/tests/testcomp/bench/sv-benchmarks/c} + +inside() { + local path + path=$(realpath -m "$1") + case "$path" in + "$REPO"|"$REPO"/*) echo "/m2c${path#"$REPO"}" ;; + "$DATA_DIR"/*) echo "/data${path#"$DATA_DIR"}" ;; + *) echo "$1" ;; + esac +} + +args=() +expect_path=0 +for arg in "$@"; do + if [ "$expect_path" = 1 ]; then args+=("$(inside "$arg")"); expect_path=0; continue; fi + case "$arg" in + --tasks|--suites|--out) args+=("$arg"); expect_path=1 ;; + *) args+=("$arg") ;; + esac +done + +exec docker run --rm --privileged --cap-drop=all --device /dev/fuse \ + -v "$REPO:/m2c" -v "$DATA_DIR:/data" -w /m2c -e HOST_OWNER="$(id -u):$(id -g)" "$IMAGE" \ + python3 /m2c/tests/testcomp/official/validate.py --sv-benchmarks "$(inside "$SV")" "${args[@]}" diff --git a/tests/testcomp/run_testcomp_evaluation.sh b/tests/testcomp/run_testcomp_evaluation.sh index 8336f4419..468415797 100755 --- a/tests/testcomp/run_testcomp_evaluation.sh +++ b/tests/testcomp/run_testcomp_evaluation.sh @@ -24,6 +24,10 @@ # BUDGET seconds given to map2check per task (default 60) # TESTCOV_S seconds given to TestCov per task (default 90) # DEADLINE_S stop starting new tasks after this many seconds (default 18000) +# SUITES_DIR if set, keep every suite as +# $SUITES_DIR//.yml/test-suite.zip, the layout +# tests/testcomp/official/validate.sh reads (the official +# validators need the suites, not this harness's verdict) # # The container needs gcc-multilib. Most sv-benchmarks tasks declare ILP32, and # without it TestCov cannot compile the program for -32 and reports no Result @@ -205,6 +209,14 @@ while IFS=$'\t' read -r category program data_model expected <&3; do cp "$work/testcov.log" "$RESULTS_DIR/raw/$(echo "$program" | tr '/' '_').tc.log" 2>/dev/null fi + if [ -n "${SUITES_DIR:-}" ] && [ -f "$work/suite.zip" ]; then + rundef=$([ "$PROPERTY" = "cover-branches" ] && echo Test-Comp26_coverage-branches \ + || echo Test-Comp26_coverage-error-call) + taskdef=$(basename "${program%.*}").yml + mkdir -p "$SUITES_DIR/$rundef/$taskdef" + cp "$work/suite.zip" "$SUITES_DIR/$rundef/$taskdef/test-suite.zip" + fi + rm -rf "$work" processed=$((processed + 1)) done 3< "$MANIFEST" From cb99fe7bd054398c26ef28185442647148063d2a Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 6 Oct 2026 23:27:51 -0400 Subject: [PATCH 74/88] test(testcomp): replace the validator scripts with a generate/validate runner testcomp.py and run.sh supersede validate.py and validate.sh: the same five official validators (TestCov gcc/clang, formatted and unformatted, and TestCoCa) now run under BenchExec from a reproduction image, with a non-official map2check.xml for generation. The BenchExec tool-info module takes the tool budget from cputime when the run set sets no wall-time limit, which is the Test-Comp case. --- .../official/bench-defs/map2check.xml | 28 ++ tests/testcomp/official/run.sh | 54 ++++ tests/testcomp/official/testcomp.py | 299 ++++++++++++++++++ tests/testcomp/official/validate.py | 228 ------------- tests/testcomp/official/validate.sh | 46 --- tests/testcomp/run_testcomp_evaluation.sh | 2 +- utils/moduleBenchExec/__init__.py | 0 utils/moduleBenchExec/map2check_testcomp.py | 13 +- 8 files changed, 390 insertions(+), 280 deletions(-) create mode 100644 tests/testcomp/official/bench-defs/map2check.xml create mode 100755 tests/testcomp/official/run.sh create mode 100755 tests/testcomp/official/testcomp.py delete mode 100755 tests/testcomp/official/validate.py delete mode 100755 tests/testcomp/official/validate.sh create mode 100644 utils/moduleBenchExec/__init__.py diff --git a/tests/testcomp/official/bench-defs/map2check.xml b/tests/testcomp/official/bench-defs/map2check.xml new file mode 100644 index 000000000..14dfc0cc3 --- /dev/null +++ b/tests/testcomp/official/bench-defs/map2check.xml @@ -0,0 +1,28 @@ + + + + + + + + **/test-suite + + + ../sv-benchmarks/c/properties/coverage-error-call.prp + + ../sv-benchmarks/c/ReachSafety-ControlFlow.set + + + + + ../sv-benchmarks/c/properties/coverage-branches.prp + + ../sv-benchmarks/c/ReachSafety-ControlFlow.set + + + + diff --git a/tests/testcomp/official/run.sh b/tests/testcomp/official/run.sh new file mode 100755 index 000000000..e9359d29f --- /dev/null +++ b/tests/testcomp/official/run.sh @@ -0,0 +1,54 @@ +#!/bin/bash +# Runs a Test-Comp 2026 step (testcomp.py generate | validate) in the +# reproduction image. +# +# tests/testcomp/official/run.sh generate --property cover-branches \ +# --tasks tests/testcomp/corpus/cover-branches-q400.tsv \ +# --archive map2check-testcomp.zip --suites OUT/suites --out OUT/gen +# tests/testcomp/official/run.sh validate --property cover-branches \ +# --tasks tests/testcomp/corpus/cover-branches-q400.tsv \ +# --suites OUT/suites --out OUT/val +# +# Anything after -- goes to BenchExec (e.g. -- --timelimit 300s for a run +# deliberately shorter than the competition's). +# +# The image is map2check-testcomp-env (docker build -t map2check-testcomp-env +# tests/testcomp/official). BenchExec needs --privileged to manage cgroups and +# /dev/fuse for the overlays it creates. +# +# The repository is mounted at /m2c and $DATA_DIR (default: the repository's +# parent) at /data, and the paths given on the command line are translated: the +# container's /home must stay free, because BenchExec overlays it, and an +# overlay over a bind mount below it fails ("Failed to create overlay mount"). +set -euo pipefail +REPO=$(cd "$(dirname "$0")/../../.." && pwd) +DATA_DIR=$(cd "${DATA_DIR:-$REPO/..}" && pwd) +IMAGE=${IMAGE:-map2check-testcomp-env} +SV=${SV_BENCHMARKS:-$REPO/tests/testcomp/bench/sv-benchmarks/c} + +inside() { + local path + path=$(realpath -m "$1") + case "$path" in + "$REPO"|"$REPO"/*) echo "/m2c${path#"$REPO"}" ;; + "$DATA_DIR"/*) echo "/data${path#"$DATA_DIR"}" ;; + *) echo "path outside the repository and DATA_DIR: $1" >&2; exit 2 ;; + esac +} + +args=() +expect_path=0 +for arg in "$@"; do + if [ "$expect_path" = 1 ]; then args+=("$(inside "$arg")"); expect_path=0; continue; fi + case "$arg" in + --tasks|--suites|--out|--archive) args+=("$arg"); expect_path=1 ;; + *) args+=("$arg") ;; + esac +done +step=${args[0]:?generate or validate} + +exec docker run --rm --privileged --cap-drop=all --device /dev/fuse \ + -v "$REPO:/m2c" -v "$DATA_DIR:/data" -w /m2c -e HOST_OWNER="$(id -u):$(id -g)" \ + ${DOCKER_ARGS:-} "$IMAGE" \ + python3 /m2c/tests/testcomp/official/testcomp.py "$step" \ + --sv-benchmarks "$(inside "$SV")" "${args[@]:1}" diff --git a/tests/testcomp/official/testcomp.py b/tests/testcomp/official/testcomp.py new file mode 100755 index 000000000..7fd98d222 --- /dev/null +++ b/tests/testcomp/official/testcomp.py @@ -0,0 +1,299 @@ +#!/usr/bin/env python3 +"""Runs Map2Check through Test-Comp 2026 the way the competition does. + +Runs inside the reproduction image (Dockerfile; run.sh starts it). Two steps, +each one a BenchExec run of an official-style benchmark definition: + + generate the Map2Check tool archive (utils/testcomp-archive/make-archive.sh) + under bench-defs/map2check.xml: 15 min of CPU time, 15 GB, 4 cores, + like every Test-Comp 2026 test generator. Each task's test-suite/ + is then zipped into the layout the validators read. + + validate the five validators of the testcomp26 category structure -- TestCov + with gcc and clang, formatted and unformatted, and TestCoCa -- from + their official definitions in bench-defs/, unchanged except for + the task set and the location of the suites. The scores are merged + as the competition merges them (competition-scripts, + prepare_tables/export_adjusted_csvs.py, update_score_tester): + coverage-branches the BEST coverage any validator measured; + coverage-error-call 1 point if ANY validator answers TRUE. + +What is rewritten in a definition, and why: + - the tasks, replaced by --tasks; + - ../sv-benchmarks/c/ and results-verified/LOGDIR/, replaced by our paths; + - , dropped: it pins the competition's hardware. + +As the competition scripts do (execute-runcollection.sh), BenchExec runs from +inside a fresh copy of the tool with --tool-directory . and the overlays +--read-only-dir / --overlay-dir /home/ --overlay-dir ./. Task inputs are +staged into a copy per step, because tools write beside the program (TestCov's +.c.i), and on the competition's VerifierCloud the inputs sit in the +run's own writable directory. + +Suites live at ///test-suite.zip, e.g. +suites/Test-Comp26_coverage-branches/AllInterval-011.yml/test-suite.zip +(BenchExec's ${taskdef_name} keeps the .yml). +""" + +import argparse +import bz2 +import csv +import glob +import os +import shutil +import subprocess +import sys +import xml.etree.ElementTree as ET +import zipfile + +import yaml + +HERE = os.path.dirname(os.path.abspath(__file__)) +DEFS = os.path.join(HERE, "bench-defs") +REPO = os.path.dirname(os.path.dirname(os.path.dirname(HERE))) + +VALIDATORS = { + "testcov-validate-test-suites-gcc-unformatted": "/opt/testcov", + "testcov-validate-test-suites-gcc-formatted": "/opt/testcov", + "testcov-validate-test-suites-clang-unformatted": "/opt/testcov", + "testcov-validate-test-suites-clang-formatted": "/opt/testcov", + "testcoca-validate-test-suites-clang-formatted": "/opt/testcoca", +} + +PROPERTIES = { + "cover-branches": "Test-Comp26_coverage-branches", + "cover-error": "Test-Comp26_coverage-error-call", +} + +OFFICIAL_LOGDIRS = ("../../results-verified/LOGDIR/", "../results-verified/LOGDIR/") + + +# --- shared ------------------------------------------------------------------- + +def stage_tasks(task_list, sv_benchmarks, staging): + """Copies each task's inputs -- the .yml, the files it names, and the + property files -- into `staging`, keeping their paths relative to + sv-benchmarks. Returns the staged .yml paths. + + `task_list` holds manifest rows (categoryprogram...) or bare paths + to a .c, .i or .yml.""" + shutil.rmtree(staging, ignore_errors=True) + shutil.copytree(os.path.join(sv_benchmarks, "properties"), + os.path.join(staging, "properties")) + tasks = [] + with open(task_list) as listing: + for line in listing: + line = line.strip() + if not line or line.startswith("#"): + continue + path = line.split("\t")[1] if "\t" in line else line + stem, _ = os.path.splitext(path) + yml = os.path.join(sv_benchmarks, stem + ".yml") + if not os.path.isfile(yml): + sys.exit(f"no task definition for {path}: {yml}") + with open(yml) as handle: + inputs = yaml.safe_load(handle)["input_files"] + inputs = [inputs] if isinstance(inputs, str) else inputs + target_dir = os.path.join(staging, os.path.dirname(stem)) + os.makedirs(target_dir, exist_ok=True) + for name in [os.path.basename(yml)] + inputs: + shutil.copy2(os.path.join(os.path.dirname(yml), name), + os.path.join(target_dir, name)) + tasks.append(os.path.join(target_dir, os.path.basename(yml))) + return tasks + + +def rewrite_definition(source, rundefinition, tasks, staging, suites, out_path): + """`source`, narrowed to one run definition, our tasks and our paths.""" + tree = ET.parse(source) + root = tree.getroot() + for require in root.findall("require"): + root.remove(require) + kept = False + for run in list(root.findall("rundefinition")): + if run.get("name") != rundefinition: + root.remove(run) + continue + kept = True + for element in run.iter(): + if element.text: + for logdir in OFFICIAL_LOGDIRS: + element.text = element.text.replace(logdir, suites + "/") + element.text = element.text.replace("../sv-benchmarks/c/", staging + "/") + for old in run.findall("tasks"): + run.remove(old) + group = ET.SubElement(run, "tasks", name="map2check") + for task in tasks: + ET.SubElement(group, "include").text = task + if not kept: + sys.exit(f"{source}: no rundefinition {rundefinition}") + os.makedirs(os.path.dirname(out_path), exist_ok=True) + tree.write(out_path, xml_declaration=True, encoding="utf-8") + return out_path + + +def run_benchexec(definition, tool_dir, out_dir, staging, args, env=None): + """BenchExec from inside `tool_dir`, with the competition's overlays.""" + command = [ + "benchexec", definition, + "--tool-directory", ".", + "--outputpath", out_dir + "/", + "--numOfThreads", str(args.threads), + "--no-compress-results", + "--read-only-dir", "/", "--overlay-dir", "/home/", "--overlay-dir", "./", + # An overlay, not full access: what one run writes beside a program + # must not reach the next. + "--overlay-dir", staging, + ] + command += args.benchexec_args + print("+", " ".join(command), flush=True) + return subprocess.call(command, cwd=tool_dir, env=env) + + +def read_results(out_dir): + """task -> (status, coverage %) from the BenchExec result XMLs in out_dir.""" + found = {} + paths = glob.glob(os.path.join(out_dir, "*.results.*.xml")) + paths += glob.glob(os.path.join(out_dir, "*.results.*.xml.bz2")) + for path in paths: + opener = bz2.open if path.endswith(".bz2") else open + with opener(path, "rb") as handle: + root = ET.parse(handle).getroot() + for run in root.findall("run"): + values = {c.get("title"): c.get("value") for c in run.findall("column")} + coverage = (values.get("branches_covered") or "").replace("%", "").strip() + found[os.path.basename(run.get("name"))] = (values.get("status", ""), coverage) + return found + + +def hand_back(path): + """BenchExec runs as root in the container; give the results back.""" + owner = os.environ.get("HOST_OWNER") + if owner: + subprocess.call(["chown", "-R", owner, path]) + + +# --- generate ----------------------------------------------------------------- + +def generate(args): + rundefinition = PROPERTIES[args.property] + out = os.path.abspath(args.out) + os.makedirs(out, exist_ok=True) + staging = os.path.join(out, "sv-benchmarks") + tasks = stage_tasks(args.tasks, os.path.abspath(args.sv_benchmarks), staging) + print(f"{len(tasks)} tasks, {rundefinition}", flush=True) + + definition = rewrite_definition(os.path.join(DEFS, "map2check.xml"), rundefinition, + tasks, staging, "", os.path.join(out, "defs", "map2check.xml")) + + # A fresh copy of the tool, unpacked as the competition unpacks archives. + tool_root = os.path.join(out, "tool") + shutil.rmtree(tool_root, ignore_errors=True) + subprocess.check_call(["unzip", "-q", os.path.abspath(args.archive), "-d", tool_root]) + tool_dir = os.path.join(tool_root, "map2check") + + # The tool-info module lives in the repository, not in BenchExec. + env = dict(os.environ) + env["PYTHONPATH"] = os.path.join(REPO, "utils") + os.pathsep + env.get("PYTHONPATH", "") + result_dir = os.path.join(out, "results") + os.makedirs(result_dir, exist_ok=True) + code = run_benchexec(definition, tool_dir, result_dir, staging, args, env=env) + + # /..files//.yml/test-suite/ + suites = os.path.abspath(args.suites) + count = 0 + for suite_dir in glob.glob(os.path.join(result_dir, "*.files", rundefinition, "*", "test-suite")): + taskdef = os.path.basename(os.path.dirname(suite_dir)) + target = os.path.join(suites, rundefinition, taskdef) + os.makedirs(target, exist_ok=True) + with zipfile.ZipFile(os.path.join(target, "test-suite.zip"), "w", + zipfile.ZIP_DEFLATED) as archive: + for name in sorted(os.listdir(suite_dir)): + archive.write(os.path.join(suite_dir, name), name) + count += 1 + shutil.rmtree(tool_root, ignore_errors=True) + hand_back(out) + hand_back(suites) + print(f"{count} suites in {os.path.join(suites, rundefinition)}") + return code + + +# --- validate ----------------------------------------------------------------- + +def validate(args): + rundefinition = PROPERTIES[args.property] + suites = os.path.abspath(args.suites) + out = os.path.abspath(args.out) + staging = os.path.join(out, "sv-benchmarks") + tasks = stage_tasks(args.tasks, os.path.abspath(args.sv_benchmarks), staging) + print(f"{len(tasks)} tasks, {rundefinition}", flush=True) + + per_validator = {} + for name in args.validators.split(","): + definition = rewrite_definition(os.path.join(DEFS, name + ".xml"), rundefinition, + tasks, staging, suites, + os.path.join(out, "defs", name + ".xml")) + result_dir = os.path.join(out, "results", name) + os.makedirs(result_dir, exist_ok=True) + # A fresh copy of the validator: TestCov's --format writes beside itself. + work = os.path.join(out, "tool") + shutil.rmtree(work, ignore_errors=True) + shutil.copytree(VALIDATORS[name], work, symlinks=True) + if run_benchexec(definition, work, result_dir, staging, args) != 0: + print(f"warning: benchexec exited non-zero for {name}", flush=True) + shutil.rmtree(work, ignore_errors=True) + per_validator[name] = read_results(result_dir) + + names = list(per_validator) + with open(os.path.join(out, "scores.csv"), "w", newline="") as handle: + writer = csv.writer(handle) + writer.writerow(["task"] + [f"{n}:{c}" for n in names for c in ("status", "coverage")] + + ["score", "best_validator"]) + for task in tasks: + key = os.path.basename(task) + row, best, best_by = [key], 0.0, "" + for name in names: + status, coverage = per_validator[name].get(key, ("MISSING", "")) + row += [status, coverage] + if args.property == "cover-error": + value = 1.0 if status == "true" else 0.0 + else: + try: + value = float(coverage) / 100 + except ValueError: + value = 0.0 + if value > best: + best, best_by = value, name + writer.writerow(row + [f"{best:.4f}", best_by]) + hand_back(out) + print(f"scores: {os.path.join(out, 'scores.csv')}") + return 0 + + +def main(): + parser = argparse.ArgumentParser(description=__doc__, + formatter_class=argparse.RawDescriptionHelpFormatter) + sub = parser.add_subparsers(dest="step", required=True) + for step in ("generate", "validate"): + p = sub.add_parser(step) + p.add_argument("--property", choices=PROPERTIES, required=True) + p.add_argument("--tasks", required=True, + help="manifest TSV or list of task paths (.c/.i/.yml)") + p.add_argument("--suites", required=True) + p.add_argument("--sv-benchmarks", required=True, + help="the c/ directory of sv-benchmarks") + p.add_argument("--out", required=True) + p.add_argument("--threads", type=int, default=3) + p.add_argument("benchexec_args", nargs="*", + help="after --, extra BenchExec options " + "(e.g. --timelimit 300s, a deliberate deviation)") + if step == "generate": + p.add_argument("--archive", required=True, help="the Map2Check tool archive") + else: + p.add_argument("--validators", default=",".join(VALIDATORS)) + args = parser.parse_args() + sys.exit(generate(args) if args.step == "generate" else validate(args)) + + +if __name__ == "__main__": + main() diff --git a/tests/testcomp/official/validate.py b/tests/testcomp/official/validate.py deleted file mode 100755 index fa9eb3007..000000000 --- a/tests/testcomp/official/validate.py +++ /dev/null @@ -1,228 +0,0 @@ -#!/usr/bin/env python3 -"""Validates Map2Check test suites the way Test-Comp 2026 does. - -Runs inside the reproduction image (see Dockerfile and validate.sh). For each -of the five validators the category structure of the testcomp26 tag lists -- -TestCov with gcc and clang, formatted and unformatted, and TestCoCa -- it takes -the official benchmark definition from bench-defs/, keeps its limits, options -and columns as they are, and rewrites only two things: - - - the task set, replaced by the tasks given on the command line; - - the location of the suites, ../results-verified/LOGDIR/ in the original, - replaced by --suites. - -It drops the line, which pins the competition's hardware. -BenchExec then runs each validator, and the results are merged as the -competition merges them (competition-scripts, -prepare_tables/export_adjusted_csvs.py, update_score_tester): - - - coverage-branches: the score is the BEST coverage any validator measured; - - coverage-error-call: 1 point if ANY validator answers TRUE. - -Suites are expected at ///test-suite.zip, -for instance suites/Test-Comp26_coverage-branches/AllInterval-011.yml/test-suite.zip -(BenchExec's ${taskdef_name} keeps the .yml). -""" - -import argparse -import bz2 -import csv -import glob -import os -import shutil -import subprocess -import sys -import xml.etree.ElementTree as ET - -HERE = os.path.dirname(os.path.abspath(__file__)) -DEFS = os.path.join(HERE, "bench-defs") - -VALIDATORS = { - "testcov-validate-test-suites-gcc-unformatted": "/opt/testcov", - "testcov-validate-test-suites-gcc-formatted": "/opt/testcov", - "testcov-validate-test-suites-clang-unformatted": "/opt/testcov", - "testcov-validate-test-suites-clang-formatted": "/opt/testcov", - "testcoca-validate-test-suites-clang-formatted": "/opt/testcoca", -} - -PROPERTIES = { - "cover-branches": "Test-Comp26_coverage-branches", - "cover-error": "Test-Comp26_coverage-error-call", -} - -OFFICIAL_LOGDIRS = ("../../results-verified/LOGDIR/", "../results-verified/LOGDIR/") - - -def task_files(args, staging): - """The .yml task definitions to validate, as absolute paths into `staging`. - - Each task's inputs -- the .yml, the programs it names, and the property - files -- are copied there, keeping their paths relative to sv-benchmarks. - TestCov writes beside the program (.c.i), and on the competition's - VerifierCloud the inputs sit in the run's own writable directory; a copy - reproduces that and leaves the corpus untouched.""" - import yaml - - shutil.rmtree(staging, ignore_errors=True) - shutil.copytree(os.path.join(args.sv_benchmarks, "properties"), - os.path.join(staging, "properties")) - tasks = [] - with open(args.tasks) as listing: - for line in listing: - line = line.strip() - if not line or line.startswith("#"): - continue - # A manifest row (categoryprogram...) or a bare path. - path = line.split("\t")[1] if "\t" in line else line - stem, _ = os.path.splitext(path) - yml = os.path.join(args.sv_benchmarks, stem + ".yml") - if not os.path.isfile(yml): - sys.exit(f"no task definition for {path}: {yml}") - with open(yml) as handle: - inputs = yaml.safe_load(handle)["input_files"] - inputs = [inputs] if isinstance(inputs, str) else inputs - target_dir = os.path.join(staging, os.path.dirname(stem)) - os.makedirs(target_dir, exist_ok=True) - for name in [os.path.basename(yml)] + inputs: - shutil.copy2(os.path.join(os.path.dirname(yml), name), - os.path.join(target_dir, name)) - tasks.append(os.path.join(target_dir, os.path.basename(yml))) - return tasks - - -def rewrite_definition(name, rundefinition, tasks, suites, sv_benchmarks, out_dir): - """The official definition of `name`, narrowed to our tasks and suites.""" - tree = ET.parse(os.path.join(DEFS, name + ".xml")) - root = tree.getroot() - for require in root.findall("require"): - root.remove(require) - kept = False - for run in list(root.findall("rundefinition")): - if run.get("name") != rundefinition: - root.remove(run) - continue - kept = True - for element in run.iter(): - if element.text: - for logdir in OFFICIAL_LOGDIRS: - element.text = element.text.replace(logdir, suites + "/") - element.text = element.text.replace("../sv-benchmarks/c/", sv_benchmarks + "/") - for old in run.findall("tasks"): - run.remove(old) - group = ET.SubElement(run, "tasks", name="map2check") - for task in tasks: - ET.SubElement(group, "include").text = task - if not kept: - sys.exit(f"{name}: no rundefinition {rundefinition}") - path = os.path.join(out_dir, "defs", name + ".xml") - os.makedirs(os.path.dirname(path), exist_ok=True) - tree.write(path, xml_declaration=True, encoding="utf-8") - return path - - -def run_benchexec(definition, tool_dir, out_dir, staging, args): - """Runs one validator as the competition scripts do: from inside a fresh - copy of the tool (execute-runcollection.sh unpacks it into bin/-XXXX - and runs BenchExec there with --tool-directory .), so the tool may write - beside itself -- TestCov's --format does -- through the overlay on ./. - The staged task inputs are writable for the same reason (task_files).""" - work = os.path.join(out_dir, "tool") - shutil.rmtree(work, ignore_errors=True) - shutil.copytree(tool_dir, work, symlinks=True) - command = [ - "benchexec", definition, - "--tool-directory", ".", - "--outputpath", out_dir + "/", - "--numOfThreads", str(args.threads), - "--no-compress-results", - "--read-only-dir", "/", "--overlay-dir", "/home/", "--overlay-dir", "./", - # An overlay, not full access: what one validator writes there (the - # preprocessed program) must not reach the next. - "--overlay-dir", staging, - ] - command += args.benchexec_args - print("+", " ".join(command), flush=True) - code = subprocess.call(command, cwd=work) - shutil.rmtree(work, ignore_errors=True) - return code - - -def read_results(out_dir): - """task name -> (status, coverage %) from the BenchExec result XMLs.""" - found = {} - for path in glob.glob(os.path.join(out_dir, "*.results.*.xml")) + glob.glob( - os.path.join(out_dir, "*.results.*.xml.bz2") - ): - opener = bz2.open if path.endswith(".bz2") else open - with opener(path, "rb") as handle: - root = ET.parse(handle).getroot() - for run in root.findall("run"): - values = {c.get("title"): c.get("value") for c in run.findall("column")} - coverage = values.get("branches_covered") or "" - coverage = coverage.replace("%", "").strip() - found[os.path.basename(run.get("name"))] = (values.get("status", ""), coverage) - return found - - -def main(): - parser = argparse.ArgumentParser(description=__doc__, - formatter_class=argparse.RawDescriptionHelpFormatter) - parser.add_argument("--property", choices=PROPERTIES, required=True) - parser.add_argument("--tasks", required=True, - help="manifest TSV or list of task paths (.c/.i/.yml)") - parser.add_argument("--suites", required=True) - parser.add_argument("--sv-benchmarks", required=True, - help="the c/ directory of sv-benchmarks") - parser.add_argument("--out", required=True) - parser.add_argument("--threads", type=int, default=3) - parser.add_argument("--validators", default=",".join(VALIDATORS)) - parser.add_argument("benchexec_args", nargs="*", - help="after --, extra BenchExec options (e.g. --timelimit 60 for a smoke test)") - args = parser.parse_args() - - rundefinition = PROPERTIES[args.property] - suites = os.path.abspath(args.suites) - out = os.path.abspath(args.out) - staging = os.path.join(out, "sv-benchmarks") - tasks = task_files(args, staging) - print(f"{len(tasks)} tasks, {rundefinition}", flush=True) - - per_validator = {} - for name in args.validators.split(","): - definition = rewrite_definition(name, rundefinition, tasks, suites, staging, out) - result_dir = os.path.join(out, "results", name) - os.makedirs(result_dir, exist_ok=True) - if run_benchexec(definition, VALIDATORS[name], result_dir, staging, args) != 0: - print(f"warning: benchexec exited non-zero for {name}", flush=True) - per_validator[name] = read_results(result_dir) - - names = list(per_validator) - with open(os.path.join(out, "scores.csv"), "w", newline="") as handle: - writer = csv.writer(handle) - writer.writerow(["task"] + [f"{n}:{c}" for n in names for c in ("status", "coverage")] - + ["score", "best_validator"]) - for task in tasks: - key = os.path.basename(task) - row, best, best_by = [key], 0.0, "" - for name in names: - status, coverage = per_validator[name].get(key, ("MISSING", "")) - row += [status, coverage] - if args.property == "cover-error": - value = 1.0 if status == "true" else 0.0 - else: - try: - value = float(coverage) / 100 - except ValueError: - value = 0.0 - if value > best: - best, best_by = value, name - writer.writerow(row + [f"{best:.4f}", best_by]) - # BenchExec runs as root in the container; hand the results back. - owner = os.environ.get("HOST_OWNER") - if owner: - subprocess.call(["chown", "-R", owner, out]) - print(f"scores: {os.path.join(out, 'scores.csv')}") - - -if __name__ == "__main__": - main() diff --git a/tests/testcomp/official/validate.sh b/tests/testcomp/official/validate.sh deleted file mode 100755 index fcb4cbf7f..000000000 --- a/tests/testcomp/official/validate.sh +++ /dev/null @@ -1,46 +0,0 @@ -#!/bin/bash -# Validates test suites with the five Test-Comp 2026 validators, under -# BenchExec, in the reproduction image. See validate.py for what is official -# and what is rewritten. -# -# tests/testcomp/official/validate.sh --property cover-branches \ -# --tasks tests/testcomp/corpus/cover-branches-q400.tsv \ -# --suites /path/to/suites --out /path/to/out [-- --timelimit 60] -# -# The image is map2check-testcomp-env (docker build -t map2check-testcomp-env -# tests/testcomp/official). BenchExec needs --privileged to manage cgroups, and -# /dev/fuse for the overlay it puts on /home. -# -# The repository is mounted at /m2c and $DATA_DIR (default: the repository's -# parent) at /data, and paths given on the command line are translated: the -# container's /home must stay free, since BenchExec overlays it and an overlay -# over a bind mount under it fails ("Failed to create overlay mount"). -set -euo pipefail -REPO=$(cd "$(dirname "$0")/../../.." && pwd) -DATA_DIR=$(cd "${DATA_DIR:-$REPO/..}" && pwd) -IMAGE=${IMAGE:-map2check-testcomp-env} -SV=${SV_BENCHMARKS:-$REPO/tests/testcomp/bench/sv-benchmarks/c} - -inside() { - local path - path=$(realpath -m "$1") - case "$path" in - "$REPO"|"$REPO"/*) echo "/m2c${path#"$REPO"}" ;; - "$DATA_DIR"/*) echo "/data${path#"$DATA_DIR"}" ;; - *) echo "$1" ;; - esac -} - -args=() -expect_path=0 -for arg in "$@"; do - if [ "$expect_path" = 1 ]; then args+=("$(inside "$arg")"); expect_path=0; continue; fi - case "$arg" in - --tasks|--suites|--out) args+=("$arg"); expect_path=1 ;; - *) args+=("$arg") ;; - esac -done - -exec docker run --rm --privileged --cap-drop=all --device /dev/fuse \ - -v "$REPO:/m2c" -v "$DATA_DIR:/data" -w /m2c -e HOST_OWNER="$(id -u):$(id -g)" "$IMAGE" \ - python3 /m2c/tests/testcomp/official/validate.py --sv-benchmarks "$(inside "$SV")" "${args[@]}" diff --git a/tests/testcomp/run_testcomp_evaluation.sh b/tests/testcomp/run_testcomp_evaluation.sh index 468415797..50c725516 100755 --- a/tests/testcomp/run_testcomp_evaluation.sh +++ b/tests/testcomp/run_testcomp_evaluation.sh @@ -26,7 +26,7 @@ # DEADLINE_S stop starting new tasks after this many seconds (default 18000) # SUITES_DIR if set, keep every suite as # $SUITES_DIR//.yml/test-suite.zip, the layout -# tests/testcomp/official/validate.sh reads (the official +# tests/testcomp/official/run.sh validate reads (the official # validators need the suites, not this harness's verdict) # # The container needs gcc-multilib. Most sv-benchmarks tasks declare ILP32, and diff --git a/utils/moduleBenchExec/__init__.py b/utils/moduleBenchExec/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/utils/moduleBenchExec/map2check_testcomp.py b/utils/moduleBenchExec/map2check_testcomp.py index c2a5b0e30..b34fe4e0f 100644 --- a/utils/moduleBenchExec/map2check_testcomp.py +++ b/utils/moduleBenchExec/map2check_testcomp.py @@ -70,11 +70,14 @@ def cmdline(self, executable, options, task, rlimits): data_model = (task.options or {}).get("data_model", "LP64") cmd = [executable, "-p", task.property_file, "--data-model", data_model] - if rlimits.walltime: - # Handing the tool its own budget is what lets it stop and finish - # writing the suite. Left to the harness's kill, metadata.xml can be - # truncated mid-write, which is worse than an empty suite. - cmd += ["--budget", str(rlimits.walltime)] + # Handing the tool its own budget is what lets it stop and finish + # writing the suite. Left to the harness's kill, metadata.xml can be + # truncated mid-write, which is worse than an empty suite. Test-Comp + # limits CPU time (15 min) and sets no wall-time limit; the hybrid runs + # one engine at a time, so its CPU time tracks its wall time. + budget = rlimits.walltime or rlimits.cputime + if budget: + cmd += ["--budget", str(budget)] return cmd + list(options) + [task.single_input_file] def determine_result(self, run): From 866d35028a008d49925b7ef9024871f0b19abe1a Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 6 Oct 2026 23:28:08 -0400 Subject: [PATCH 75/88] test(testcomp): bundle the AFL++ toolchain in a self-contained archive The competition machines have no AFL++, so make-archive.sh builds a 99 MB zip with LLVM 16, KLEE and AFL++, argv[0]-relative via a patchelf RUNPATH and free of symlinks. The wrapper points AFL++, AFL_PATH, AFL_CC and the passes at the bundled copies when they exist, and leaves the development-install defaults untouched otherwise. --- utils/map2check-testcomp-wrapper.py | 26 +++++- utils/testcomp-archive/make-archive.sh | 111 +++++++++++++++++++++++++ 2 files changed, 135 insertions(+), 2 deletions(-) create mode 100755 utils/testcomp-archive/make-archive.sh diff --git a/utils/map2check-testcomp-wrapper.py b/utils/map2check-testcomp-wrapper.py index 24be0e998..eeb4913d5 100755 --- a/utils/map2check-testcomp-wrapper.py +++ b/utils/map2check-testcomp-wrapper.py @@ -62,6 +62,28 @@ def parse_args(argv): return parser.parse_args(argv) +def tool_environment(): + """The environment map2check runs with. + + In the Test-Comp archive (utils/testcomp-archive/make-archive.sh) AFL++ + travels inside the tool directory, since the competition machines do not + have it: map2check is pointed at the bundled afl-fuzz and afl-clang-fast, + afl-cc at its passes and runtime objects (AFL_PATH) and at the bundled + LLVM 16 clang (AFL_CC). Outside the archive -- a development install -- + none of these exist and the defaults (/usr/local) stay in force.""" + env = dict(os.environ) + bundled = { + "MAP2CHECK_AFL_FUZZ": os.path.join(HERE, "bin", "afl-fuzz"), + "MAP2CHECK_AFL_CC": os.path.join(HERE, "bin", "afl-clang-fast"), + "AFL_PATH": os.path.join(HERE, "lib", "afl"), + "AFL_CC": os.path.join(HERE, "bin", "clang"), + } + if os.path.exists(bundled["MAP2CHECK_AFL_FUZZ"]): + for key, value in bundled.items(): + env.setdefault(key, value) + return env + + def read_property(path): with open(path, "r") as handle: return handle.read() @@ -97,7 +119,7 @@ def main(argv): architecture = "32bit" if args.data_model == "ILP32" else "64bit" - # The inner budget is what Map2Check divides between LibFuzzer and KLEE; the + # The inner budget is what Map2Check divides between AFL++ and KLEE; the # outer one is the backstop for a shutdown that hangs. inner = max(1, args.budget - SHUTDOWN_MARGIN) @@ -114,7 +136,7 @@ def main(argv): sys.stdout.flush() try: - completed = subprocess.run(command, timeout=args.budget) + completed = subprocess.run(command, timeout=args.budget, env=tool_environment()) rc = completed.returncode except subprocess.TimeoutExpired: print("Timed out") diff --git a/utils/testcomp-archive/make-archive.sh b/utils/testcomp-archive/make-archive.sh new file mode 100755 index 000000000..dec09c854 --- /dev/null +++ b/utils/testcomp-archive/make-archive.sh @@ -0,0 +1,111 @@ +#!/bin/bash +# Builds the Test-Comp tool archive: a self-contained Map2Check directory that +# runs on the competition machines (Ubuntu 24.04, clang 18, no LLVM 16, no KLEE, +# no AFL++), zipped as the competition expects (one top-level directory). +# +# Run inside the development image, where the install and its dependencies +# live (Dockerfile.dev, or map2check-dev:aflpp): +# +# docker run --rm -v "$PWD:/workspace" -w /workspace map2check-dev:aflpp \ +# utils/testcomp-archive/make-archive.sh /workspace/install_v9b /workspace/map2check.zip +# +# What goes in, and why: +# - the install (map2check, its passes and runtime bitcode); +# - LLVM 16's clang, opt and llvm-link with clang's resource directory: the +# frontend compiles and links bitcode with them, and the image has clang 18; +# - KLEE 3.1 with its runtime (klee-uclibc included); +# - AFL++: afl-fuzz, afl-cc and its passes and runtime objects, which the +# wrapper points to with MAP2CHECK_AFL_CC, MAP2CHECK_AFL_FUZZ and AFL_PATH; +# - every shared library those need that is not glibc, with each ELF's +# RUNPATH rewritten to find them. Not LD_LIBRARY_PATH: it would leak into +# the system's bash, gcc and timeout, and a library from Ubuntu 22.04 +# loaded under them could break them. +# Optional engines (Clam for --add-invariants, sbt-slicer for --slice) stay out: +# both are off by default and absent from the competition configuration. +set -euo pipefail + +INSTALL=${1:?install directory} +OUT=${2:?output zip} +AFL_ROOT=${AFL_ROOT:-/usr/local} +LLVM=${LLVM:-/usr/lib/llvm-16} +KLEE=${KLEE:-/opt/klee} +HERE=$(cd "$(dirname "$0")" && pwd) + +command -v patchelf > /dev/null || { apt-get update -qq && apt-get install -y -qq patchelf > /dev/null; } +command -v zip > /dev/null || { apt-get update -qq && apt-get install -y -qq zip > /dev/null; } + +STAGE=$(mktemp -d) +T=$STAGE/map2check +mkdir -p "$T"/{bin,lib,include,lib/afl} + +# --- Map2Check ------------------------------------------------------------- +cp -a "$INSTALL/map2check" "$T/" +cp -aL "$INSTALL/lib/." "$T/lib/" 2>/dev/null || true +rm -rf "$T/lib/clang" "$T/lib/klee" "$T/lib/libz3*" +cp "$HERE/../map2check-testcomp-wrapper.py" "$T/" +chmod +x "$T/map2check-testcomp-wrapper.py" + +# --- LLVM 16 --------------------------------------------------------------- +for tool in clang opt llvm-link; do cp -L "$LLVM/bin/$tool" "$T/bin/"; done +mkdir -p "$T/lib/clang" +cp -aL "$LLVM/lib/clang/16" "$T/lib/clang/" +cp -aL "$LLVM/lib/clang/16/include/." "$T/include/" + +# --- KLEE ------------------------------------------------------------------ +cp -L "$KLEE/bin/klee" "$KLEE/bin/kleaver" "$T/bin/" +cp -L "$KLEE/bin/ktest-tool" "$T/bin/" 2>/dev/null || true +mkdir -p "$T/lib/klee" +cp -aL "$KLEE/lib/klee/runtime" "$T/lib/klee/" + +# --- AFL++ ----------------------------------------------------------------- +cp -L "$AFL_ROOT/bin/afl-fuzz" "$AFL_ROOT/bin/afl-cc" "$T/bin/" +# Copies, not symlinks: an archive without links unpacks the same with any zip +# tool. afl-cc picks its mode from argv[0], so a copy behaves as the link would. +cp "$T/bin/afl-cc" "$T/bin/afl-clang-fast" +cp -aL "$AFL_ROOT/lib/afl/." "$T/lib/afl/" + +# --- shared libraries ------------------------------------------------------ +# Everything ldd resolves outside glibc (and the loader), for every ELF here. +is_glibc() { + case "$(basename "$1")" in + libc.so*|libm.so*|libdl.so*|libpthread.so*|librt.so*|ld-linux*|libresolv.so*|libutil.so*) return 0 ;; + esac + return 1 +} +elves=$(find "$T" -type f \( -perm -u+x -o -name '*.so*' \) -exec sh -c 'head -c4 "$1" | grep -q "ELF"' _ {} \; -print) +for elf in $elves; do + { ldd "$elf" 2>/dev/null || true; } | awk '/=> \//{print $3}' | while read -r lib; do + is_glibc "$lib" && continue + [ -e "$T/lib/$(basename "$lib")" ] || cp -L "$lib" "$T/lib/" + done +done +# Libraries bring their own dependencies: one more round over lib/. +for lib in "$T"/lib/*.so*; do + { ldd "$lib" 2>/dev/null || true; } | awk '/=> \//{print $3}' | while read -r dep; do + is_glibc "$dep" && continue + [ -e "$T/lib/$(basename "$dep")" ] || cp -L "$dep" "$T/lib/" + done +done + +# --- RUNPATH --------------------------------------------------------------- +for elf in $(find "$T" -type f -exec sh -c 'head -c4 "$1" | grep -q "ELF"' _ {} \; -print); do + dir=$(dirname "$elf") + rel=$(realpath --relative-to="$dir" "$T/lib") + # Relocatable objects (afl-compiler-rt.o) and static archives have no RUNPATH. + if patchelf --print-rpath "$elf" > /dev/null 2>&1; then + patchelf --set-rpath "\$ORIGIN/$rel" "$elf" + fi +done + +# --- check and zip --------------------------------------------------------- +missing=$(for elf in "$T"/map2check "$T"/bin/* "$T"/lib/*.so* "$T"/lib/afl/*.so; do + [ -f "$elf" ] || continue + { ldd "$elf" 2>/dev/null || true; } | grep "not found" | sed "s#^#$(basename "$elf"): #" || true +done | sort -u) +if [ -n "$missing" ]; then echo "unresolved libraries:"; echo "$missing"; exit 1; fi + +rm -f "$OUT" +if [ -n "$(find "$T" -type l)" ]; then echo "symlinks left in the archive:"; find "$T" -type l; exit 1; fi +(cd "$STAGE" && zip -qr "$OUT" map2check) +echo "archive: $OUT ($(du -h "$OUT" | cut -f1), $(find "$T" -type f | wc -l) files)" +rm -rf "$STAGE" From 44d2160ab83ef5b5093ea3b0bd5949fa6253211c Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Wed, 7 Oct 2026 13:21:52 -0400 Subject: [PATCH 76/88] fix(testcomp): stage each task's own property files eca-rers2018/Problem14.yml names its properties relative to the task (properties/unreach-call-a.prp), and stage_tasks copied only the .yml and its input files. BenchExec resolves every property a definition lists, so the one missing file made it drop the whole task set: all 140 suites of the TESTCOV_ERROR rerun came back MISSING. Copy a task's properties/ directory when it has one. --- tests/testcomp/official/testcomp.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/tests/testcomp/official/testcomp.py b/tests/testcomp/official/testcomp.py index 7fd98d222..477aa0c4f 100755 --- a/tests/testcomp/official/testcomp.py +++ b/tests/testcomp/official/testcomp.py @@ -99,6 +99,15 @@ def stage_tasks(task_list, sv_benchmarks, staging): for name in [os.path.basename(yml)] + inputs: shutil.copy2(os.path.join(os.path.dirname(yml), name), os.path.join(target_dir, name)) + # Some tasks carry property files of their own (eca-rers2018/), named + # relative to the task definition. BenchExec resolves every property + # a definition lists, so one missing file aborts the whole run -- and + # with it every task's result. + local_properties = os.path.join(os.path.dirname(yml), "properties") + if os.path.isdir(local_properties): + shutil.copytree(local_properties, + os.path.join(target_dir, "properties"), + dirs_exist_ok=True) tasks.append(os.path.join(target_dir, os.path.basename(yml))) return tasks From 4a2dccad13665faa9a8430b015fb670372d38bcd Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Mon, 12 Oct 2026 14:49:09 -0400 Subject: [PATCH 77/88] fix(testcomp): drop each validator's scratch so a full corpus fits on disk BenchExec's per-run .files hold every test-suite, and 140 tasks reached 8 GB. Results are now compressed (BenchExec's default) and the output directory, the staged sv-benchmarks and the tool tree are removed after each validator; MAP2CHECK_KEEP_RESULTS=1 keeps them for debugging. Co-Authored-By: Claude Opus 5.5 (1M context) --- tests/testcomp/official/testcomp.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/tests/testcomp/official/testcomp.py b/tests/testcomp/official/testcomp.py index 477aa0c4f..90725394d 100755 --- a/tests/testcomp/official/testcomp.py +++ b/tests/testcomp/official/testcomp.py @@ -148,7 +148,8 @@ def run_benchexec(definition, tool_dir, out_dir, staging, args, env=None): "--tool-directory", ".", "--outputpath", out_dir + "/", "--numOfThreads", str(args.threads), - "--no-compress-results", + # Results are read once and the whole output directory is removed after + # each validator (see validate); compression is BenchExec's default. "--read-only-dir", "/", "--overlay-dir", "/home/", "--overlay-dir", "./", # An overlay, not full access: what one run writes beside a program # must not reach the next. @@ -221,6 +222,10 @@ def generate(args): archive.write(os.path.join(suite_dir, name), name) count += 1 shutil.rmtree(tool_root, ignore_errors=True) + # The suites are zipped out; the tool tree, the staged sv-benchmarks and the + # BenchExec output (whose .files hold every test-suite) are scratch. + shutil.rmtree(result_dir, ignore_errors=True) + shutil.rmtree(staging, ignore_errors=True) hand_back(out) hand_back(suites) print(f"{count} suites in {os.path.join(suites, rundefinition)}") @@ -252,6 +257,12 @@ def validate(args): print(f"warning: benchexec exited non-zero for {name}", flush=True) shutil.rmtree(work, ignore_errors=True) per_validator[name] = read_results(result_dir) + # Keep the scratch when debugging (MAP2CHECK_KEEP_RESULTS=1); otherwise + # drop it, or a few-thousand-task corpus fills the disk. + if not os.environ.get("MAP2CHECK_KEEP_RESULTS"): + shutil.rmtree(result_dir, ignore_errors=True) + if not os.environ.get("MAP2CHECK_KEEP_RESULTS"): + shutil.rmtree(staging, ignore_errors=True) names = list(per_validator) with open(os.path.join(out, "scores.csv"), "w", newline="") as handle: From 14766fd0022f520a0e9343599727a2bc2a07fed7 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Mon, 12 Oct 2026 14:49:09 -0400 Subject: [PATCH 78/88] test(testcomp): let TESTCOV_S=0 skip the internal TestCov The official validators judge the suites kept in SUITES_DIR, so the harness no longer has to spend up to 90 s per task on TestCov 3.7. Co-Authored-By: Claude Opus 5.5 (1M context) --- tests/testcomp/run_testcomp_evaluation.sh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tests/testcomp/run_testcomp_evaluation.sh b/tests/testcomp/run_testcomp_evaluation.sh index 50c725516..9838ccbb9 100755 --- a/tests/testcomp/run_testcomp_evaluation.sh +++ b/tests/testcomp/run_testcomp_evaluation.sh @@ -163,6 +163,11 @@ while IFS=$'\t' read -r category program data_model expected <&3; do goals="" if [ -d "$work/test-suite" ]; then ( cd "$work/test-suite" && zip -q -r ../suite.zip . ) Date: Mon, 12 Oct 2026 14:49:09 -0400 Subject: [PATCH 79/88] test(testcomp): official corpora with proportional stratification build_corpus_official.py reads the categories and excludes from the official bench-defs and samples each category in proportion to its size (build_corpus.py gives every category the same quota). Adds the whole applicable Cover-Error pool (1902 tasks) and a 3500-task Cover-Branches sample, plus the official ECA excludes set, without which ECA was over-represented. Co-Authored-By: Claude Opus 5.5 (1M context) --- tests/testcomp/build_corpus_official.py | 207 + tests/testcomp/corpus/cover-branches-3500.tsv | 3501 +++++++++++++++++ .../testcomp/corpus/cover-error-official.tsv | 1903 +++++++++ .../bench-defs/excludes/ECA-excludes.set | 1027 +++++ 4 files changed, 6638 insertions(+) create mode 100644 tests/testcomp/build_corpus_official.py create mode 100644 tests/testcomp/corpus/cover-branches-3500.tsv create mode 100644 tests/testcomp/corpus/cover-error-official.tsv create mode 100644 tests/testcomp/official/bench-defs/excludes/ECA-excludes.set diff --git a/tests/testcomp/build_corpus_official.py b/tests/testcomp/build_corpus_official.py new file mode 100644 index 000000000..db25d4da1 --- /dev/null +++ b/tests/testcomp/build_corpus_official.py @@ -0,0 +1,207 @@ +#!/usr/bin/env python3 +"""Builds a PROPORTIONAL stratified Test-Comp corpus from the official +Test-Comp 2026 definitions. + +`build_corpus.py` stratifies by a FIXED quota per category (equal +representation). This script does the other thing the rerun asks for: the quota +of each category is proportional to how many applicable tasks it has, so the +corpus mirrors the benchmark's shape while still guaranteeing every category a +seat. + +The categories are not a hand-kept list here: they are read from the official +benchmark definition (the same file the validators use), including each +category's ``/``, so the corpus tracks the +competition's own task structure. A category that expands to no applicable task +gets no seat. + +Selection inside a category is the deterministic, nested bisection order of +`build_corpus.spread_order`, and the manifest is written round-robin, so a run +cut short by its deadline stays balanced. + +Usage: + build_corpus_official.py --property cover-error --total 0 --out ce.tsv + build_corpus_official.py --property cover-branches --total 3500 --out cb.tsv + +`--total 0` means "all applicable tasks" (no sampling). +""" + +import argparse +import glob +import os +import sys +import xml.etree.ElementTree as ET + +HERE = os.path.dirname(os.path.abspath(__file__)) +sys.path.insert(0, HERE) +import build_corpus as bc # noqa: E402 + +OFFICIAL_DEF = os.path.join(HERE, "official", "bench-defs", + "testcov-validate-test-suites-gcc-unformatted.xml") +DEF_DIR = os.path.dirname(OFFICIAL_DEF) + +RUNDEF = { + "cover-error": "Test-Comp26_coverage-error-call", + "cover-branches": "Test-Comp26_coverage-branches", +} + + +def category_name(rawname): + return rawname.rsplit(".", 1)[-1] + + +def set_file(entry, include): + """Where a definition's includesfile/excludesfile lives. + + Includes are all under sv-benchmarks/c. Excludes are either there + (DeviceDriversLinux64Large.set) or beside the definition (the ECA one), + referenced relative to it. + """ + entry = entry.strip() + if include or entry.startswith("../sv-benchmarks/c/"): + return os.path.join(bc.BENCH, os.path.basename(entry)) + return os.path.join(DEF_DIR, entry) + + +def read_set(path): + """Every .yml a set file names, resolved relative to sv-benchmarks/c.""" + paths = set() + if not os.path.isfile(path): + print(" (missing set file: %s)" % path, file=sys.stderr) + return paths + with open(path) as handle: + for line in handle: + line = line.strip() + if not line or line.startswith("#"): + continue + for hit in glob.glob(os.path.join(bc.BENCH, line)): + paths.add(os.path.realpath(hit)) + return paths + + +def applicable_categories(rundefinition, property_name): + """category -> applicable task tuples, in the definition's own order.""" + root = ET.parse(OFFICIAL_DEF).getroot() + run = next((r for r in root.findall("rundefinition") + if r.get("name") == rundefinition), None) + if run is None: + sys.exit("no rundefinition %s in %s" % (rundefinition, OFFICIAL_DEF)) + pools = {} + for tasks in run.findall("tasks"): + category = category_name(tasks.get("name")) + included = set() + for e in tasks.findall("includesfile"): + included |= read_set(set_file(e.text, True)) + excluded = set() + for e in tasks.findall("excludesfile"): + excluded |= read_set(set_file(e.text, False)) + rows = [] + for yml in sorted(included - excluded): + info = bc.task_info(yml, property_name) + if info is not None: + rows.append((yml,) + info) + if rows: + pools[category] = rows + return pools + + +def proportional_alloc(sizes, total): + """Quota per category: proportional to size, at least 1, at most size. + + Largest-remainder rounding, so the quotas add up to `total` (or to the whole + pool when that is smaller). + """ + pool = sum(sizes.values()) + target = pool if total <= 0 else min(total, pool) + categories = list(sizes) + if target <= 0: + return {c: 0 for c in categories} + if target < len(categories): + # Fewer seats than categories: keep the largest categories. + keep = set(sorted(categories, key=lambda c: (-sizes[c], c))[:target]) + return {c: (1 if c in keep else 0) for c in categories} + + ideal = {c: target * sizes[c] / pool for c in categories} + quotas = {} + for c in categories: + floor = int(ideal[c]) + quotas[c] = min(sizes[c], max(1, floor)) + short = target - sum(quotas.values()) + + # Largest fractional remainder takes the surplus, smallest gives back the + # overshoot, never below one seat and never above the pool. + if short != 0: + if short > 0: + order = sorted(categories, + key=lambda c: (-(ideal[c] - int(ideal[c])), -sizes[c], c)) + move = 1 + else: + order = sorted(categories, + key=lambda c: (ideal[c] - int(ideal[c]), sizes[c], c)) + move = -1 + guard = 0 + limit = len(order) * (max(sizes.values()) + 2) + while short != 0 and guard < limit: + for c in order: + if short == 0: + break + if move > 0 and quotas[c] < sizes[c]: + quotas[c] += 1 + short -= 1 + elif move < 0 and quotas[c] > 1: + quotas[c] -= 1 + short += 1 + guard += 1 + if short != 0: + sys.exit("proportional_alloc: could not reach target %d (off by %d)" + % (target, short)) + return quotas + + +def main(): + parser = argparse.ArgumentParser(description=__doc__, + formatter_class=argparse.RawDescriptionHelpFormatter) + parser.add_argument("--property", choices=sorted(RUNDEF), required=True) + parser.add_argument("--total", type=int, default=0, + help="target corpus size; 0 = all applicable") + parser.add_argument("--out", required=True) + args = parser.parse_args() + + if not os.path.isdir(bc.BENCH): + sys.exit("sv-benchmarks not found at %s" % bc.BENCH) + if not os.path.isfile(OFFICIAL_DEF): + sys.exit("official definition not found at %s" % OFFICIAL_DEF) + + pools = applicable_categories(RUNDEF[args.property], args.property) + sizes = {c: len(v) for c, v in pools.items()} + quotas = proportional_alloc(sizes, args.total) + + per_category = {} + print("%-45s %6s %6s" % ("category", "pool", "chosen")) + total = 0 + for category, rows in pools.items(): + chosen = bc.spread_order(rows)[:quotas[category]] + per_category[category] = [ + (category, os.path.relpath(program, bc.BENCH), data_model, + expected or "unknown") + for yml, program, data_model, expected, subproperty in chosen + ] + print("%-45s %6d %6d" % (category, sizes[category], len(chosen))) + total += len(chosen) + + depth = max((len(v) for v in per_category.values()), default=0) + rows = [] + for i in range(depth): + for category in pools: # round-robin, the definition's order + bucket = per_category[category] + if i < len(bucket): + rows.append(bucket[i]) + + with open(args.out, "w") as handle: + handle.write("# category\tprogram\tdata_model\texpected_unreach\n") + for row in rows: + handle.write("\t".join(row) + "\n") + print("total: %d tasks -> %s" % (len(rows), args.out)) + + +if __name__ == "__main__": + main() diff --git a/tests/testcomp/corpus/cover-branches-3500.tsv b/tests/testcomp/corpus/cover-branches-3500.tsv new file mode 100644 index 000000000..719e8f8e6 --- /dev/null +++ b/tests/testcomp/corpus/cover-branches-3500.tsv @@ -0,0 +1,3501 @@ +# category program data_model expected_unreach +Arrays array-fpi/s52iff_overflow.c ILP32 unknown +BitVectors bitvector/s3_clnt_3.BV.c.cil-1.c ILP32 unknown +ControlFlow openssl-simplified/s3_srvr_1a.cil.c ILP32 unknown +ECA eca-rers2012/Problem16_label00.c ILP32 false +Floats neural-networks/dubinsrejoin_79_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-99.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.gear.1.prop3-back-serstep.c LP64 false +Heap list-ext2-properties/simple_search_value-2.i ILP32 false +Loops nla-digbench-scaling/fermat2-ll_unwindbound1.c ILP32 false +ProductLines product-lines/email_spec1_product20.cil.c ILP32 false +Recursive recursified_nla-digbench/recursified_prod4br.c ILP32 unknown +Sequentialized seq-mthreaded/pals_lcr.6.ufo.BOUNDED-12.pals.c ILP32 true +XCSP xcsp/Haystacks-08.c ILP32 true +Combinations combinations/pals_lcr.3_overflow.ufo.UNBOUNDED.pals+Problem12_label09.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_hash_callback_c_str_eq_harness_negated.i LP64 false +SoftwareSystems-BusyBox busybox-1.22.0/printf-3.i LP64 unknown +SoftwareSystems-coreutils coreutils-v8.31/od_3args_klee-sa_ko_496_csa_nd.c LP64 unknown +SoftwareSystems-OpenBSD openbsd-6.2/if_etherip-fixed.i LP64 true +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--common--tuners--mt2131.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +SoftwareSystems-uthash uthash-2.0.2/uthash_JEN_nondet_test3-1.i ILP32 true +SoftwareSystems-SQLite sqlite/sqlite_merged_comb.i LP64 unknown +Termination-BitVectors termination-bwb/not-03.c LP64 unknown +Termination-MainControlFlow termination-crafted/NestedRecursion_2a.c LP64 unknown +Termination-MainHeap termination-memory-alloca/a.07-alloca.i LP64 unknown +Arrays array-examples/standard_two_index_08.i ILP32 true +BitVectors bitvector/jain_2-2.c ILP32 unknown +ControlFlow ntdrivers/diskperf.i.cil-2.c ILP32 false +ECA eca-rers2012/Problem07_label00.c ILP32 true +Floats floats-esbmc-regression/ceil_nondet.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-188.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal212.c LP64 true +Heap ldv-memsafety/memleaks_test20-1.i ILP32 unknown +Loops loops/bubble_sort-1.c ILP32 unknown +ProductLines product-lines/elevator_spec3_product25.cil.c ILP32 true +Recursive recursified_nla-digbench/recursified_cohendiv.c ILP32 unknown +Sequentialized seq-mthreaded/pals_floodmax.5.2.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/Dubois-017.c ILP32 true +Combinations combinations/Problem05_label48+token_ring.04.cil-1.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_buf_from_empty_array_harness_negated.i LP64 false +SoftwareSystems-BusyBox busybox-1.22.0/fold-1.i LP64 unknown +SoftwareSystems-coreutils coreutils-v8.31/env_3args_klee-sa_ko_812-816-605_csa_nd.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--rc--keymaps--rc-msi-digivox-ii.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_input_tdr_pa__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-uthash uthash-2.0.2/uthash_JEN_nondet_test1-2.i ILP32 true +Termination-BitVectors termination-bwb/and-05.c LP64 unknown +Termination-MainControlFlow termination-crafted-lit/HeizmannHoenickeLeikePodelski-ATVA2013-Fig4.c LP64 unknown +Termination-MainHeap termination-dietlibc/atoll.i LP64 unknown +Arrays array-multidimensional/copy-partial-2-n-u.c ILP32 true +BitVectors bitvector/soft_float_1-2a.c.cil.c ILP32 true +ControlFlow openssl/s3_srvr.blast.07.i.cil-1.c ILP32 unknown +ECA eca-rers2018/Problem14.c ILP32 false +Floats neural-networks/poly_256_thresh_3_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_operatoramount_amount25_file-188.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.6.prop2-func-interl.c LP64 true +Heap memsafety-cve/libredwg.i ILP32 unknown +Loops nla-digbench-scaling/lcm2_unwindbound10.c ILP32 true +ProductLines product-lines/email_spec6_product15.cil.c ILP32 false +Recursive recursive-simple/sum_non_eq-3.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.5.3.ufo.BOUNDED-10.pals.c ILP32 false +XCSP xcsp/aim-100-3-4-sat-3.c ILP32 false +Combinations combinations/pals_lcr.8.ufo.UNBOUNDED.pals+Problem12_label07.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_priority_queue_capacity_harness.i LP64 true +SoftwareSystems-BusyBox busybox-1.22.0/tee-1.i LP64 unknown +SoftwareSystems-coreutils coreutils-v9.5-units/getlimits_decimal_absval_add_one_all_nines_cover_proof.i LP64 false +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--rc--keymaps--rc-nebula.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__unexpected__cover_entry_havoc_memory.i LP64 false +Termination-BitVectors termination-bwb/or-03.c LP64 unknown +Termination-MainControlFlow termination-nla/prod4br-both-t.c ILP32 unknown +Termination-MainHeap termination-memory-alloca/openbsd_cmemchr-alloca-1.i LP64 unknown +Arrays array-examples/sanfoundry_24-1.i ILP32 true +BitVectors bitvector/byte_add_1-2.i ILP32 unknown +ControlFlow ntdrivers-simplified/cdaudio_simpl1.cil-2.c ILP32 unknown +ECA eca-rers2012/Problem03_label00.c ILP32 true +Floats float-newlib/double_req_bl_1231b.c ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-142.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.3.prop3-func-interl.c LP64 true +Heap heap-data/shared_mem1.i ILP32 true +Loops loop-simple/nested_2.c ILP32 true +ProductLines product-lines/elevator_spec2_product01.cil.c ILP32 true +Recursive recursified_loop-crafted/recursified_simple_array_index_value_4.i.v+lhb-reducer.c ILP32 unknown +Sequentialized seq-mthreaded/pals_floodmax.3.3.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/AllInterval-019.c ILP32 false +Combinations combinations/Problem05_label44+token_ring.02.cil-1.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_array_list_pop_back_harness_negated.i LP64 false +SoftwareSystems-BusyBox busybox-1.22.0/cut-3.i LP64 true +SoftwareSystems-coreutils coreutils-v8.31/cut_3args_klee-sa_ko_358_csa_nd.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--rc--keymaps--rc-cinergy.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__invalid_input_gpa__cover_entry_havoc_object.i LP64 false +Termination-BitVectors termination-bwb/and-02-false.c LP64 unknown +Termination-MainControlFlow termination-crafted-lit/ChenFlurMukhopadhyay-SAS2012-Ex1.05.c LP64 unknown +Termination-MainHeap termination-15/cstrcpy_mixed_alloca.i LP64 unknown +Arrays array-fpi/modpf.c ILP32 false +BitVectors bitvector/s3_clnt_1.BV.c.cil-1.c ILP32 unknown +ControlFlow openssl-simplified/s3_clnt_2.cil-2.c ILP32 unknown +ECA eca-rers2012/Problem11_label00.c ILP32 false +Floats neural-networks/cartpole_7_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-53.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w64_d128_e0.c LP64 false +Heap ldv-regression/test19.c ILP32 true +Loops nla-digbench-scaling/dijkstra-u_unwindbound10.c ILP32 false +ProductLines product-lines/email_spec0_product33.cil.c ILP32 false +Recursive recursified_nla-digbench/recursified_geo1-u.c ILP32 unknown +Sequentialized seq-mthreaded/pals_lcr-var-start-time.5.ufo.BOUNDED-10.pals.c ILP32 true +XCSP xcsp/Dubois-040.c ILP32 true +Combinations combinations/gcd_2+newton_3_7.i ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_cursor_eq_c_str_harness.i LP64 true +SoftwareSystems-BusyBox busybox-1.22.0/ls-incomplete-3.i LP64 unknown +SoftwareSystems-coreutils coreutils-v8.31/ln_3args_klee-sa_ko_147_csa_uaf.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--rc--keymaps--rc-videomate-m1f.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_lifecycle__safety_requirement_havoc_memory.i LP64 true +Termination-BitVectors termination-bwb/counting-bits-BK.i LP64 unknown +Termination-MainControlFlow termination-crafted/2Nested-1.c LP64 unknown +Termination-MainHeap termination-memory-alloca/BrockschmidtCookFuhs-2013CAV-Fig1-alloca-2.i LP64 unknown +Arrays array-memsafety/count_down-alloca-1.i ILP32 unknown +BitVectors bitvector/s3_srvr_2.BV.c.cil.c ILP32 unknown +ControlFlow openssl/s3_clnt.blast.02.i.cil-2.c ILP32 unknown +ECA eca-rers2018/Problem10.c ILP32 false +Floats neural-networks/lunarlander_3_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_kloop_50_while_file-142.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.lifts.7.prop1-func-interl.c LP64 true +Heap memsafety-broom/sll-shared-before.i LP64 unknown +Loops nla-digbench-scaling/geo2-ll_valuebound2.c ILP32 true +ProductLines product-lines/email_spec3_product19.cil.c ILP32 false +Recursive recursive-simple/id2_b3_o5.c ILP32 true +Sequentialized seq-mthreaded/pals_opt-floodmax.3.4.ufo.BOUNDED-6.pals.c ILP32 false +XCSP xcsp/aim-100-1-6-sat-4.c ILP32 false +Combinations combinations/pals_lcr.6.ufo.BOUNDED-12.pals+Problem12_label03.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_is_power_of_two_harness.i LP64 true +SoftwareSystems-BusyBox busybox-1.22.0/sleep-2.i LP64 unknown +SoftwareSystems-coreutils coreutils-v8.31/uniq_3args_klee-sa_ko_292_csa_infer_uaf.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--rc--keymaps--rc-digittrade.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__unexpected__cover_exit_havoc_object.i LP64 false +Termination-BitVectors termination-bwb/or-01-false.c LP64 unknown +Termination-MainControlFlow termination-nla/cohencu2-both-nt.c ILP32 unknown +Termination-MainHeap termination-memory-alloca/c.02-alloca.i LP64 unknown +Arrays array-programs/partial_mod_count_limited_5.c ILP32 true +BitVectors bitvector/soft_float_4-2.c.cil.c ILP32 unknown +ControlFlow openssl/s3_srvr.blast.13.i.cil-1.c ILP32 unknown +ECA eca-rers2018/Problem18.c ILP32 false +Floats neural-networks/softsign_w16_r2_case_0_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-53.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.synapse.2.prop1-back-serstep.c LP64 true +Heap memsafety-cve/zchunkFixed.i ILP32 unknown +Loops nla-digbench-scaling/ps5-ll_valuebound1.c ILP32 true +ProductLines product-lines/email_spec8_product14.cil.c ILP32 true +Recursive recursive/Fibonacci04.c ILP32 false +Sequentialized seq-pthread/cs_queue-2.i ILP32 false +XCSP xcsp/aim-200-2-0-sat-2.c ILP32 false +Combinations combinations/pc_sfifo_2.cil-2+token_ring.08.cil-1.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_string_bytes_harness.i LP64 true +SoftwareSystems-BusyBox busybox-1.22.0/uudecode-1.i LP64 unknown +SoftwareSystems-coreutils coreutils-v9.5-units/relpath_relpath_different_paths_output_cover_target.i LP64 false +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--rc--keymaps--rc-winfast.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__expected__cover_exit_havoc_object.i LP64 false +Termination-BitVectors termination-bwb/parity1.i LP64 unknown +Termination-MainControlFlow termination-restricted-15/PastaA4.c LP64 unknown +Termination-MainHeap termination-memory-linkedlists/ll_search-alloca.i LP64 unknown +Arrays array-crafted/xor1.i ILP32 true +BitVectors bitvector-regression/recHanoi03-1.c ILP32 false +ControlFlow infeasible-control-flow/unreach_branch3.c ILP32 true +ECA eca-programs/Problem102_label00.c ILP32 true +Floats float-benchs/sin_interpolated_negation.c ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-12.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n5_w8_d64_e0.c LP64 false +Heap forester-heap/sll-circular-1.i ILP32 true +Loops loop-invgen/heapsort.i ILP32 true +ProductLines product-lines/elevator_spec1_product17.cil.c ILP32 true +Recursive fuzzle-programs/08_fuzzle_50x50_50-cycle.c LP64 false +Sequentialized seq-mthreaded/pals_STARTPALS_Triplicated.1.ufo.BOUNDED-10.pals.c ILP32 false +XCSP xcsp/AllInterval-011.c ILP32 false +Combinations combinations/Problem05_label42+token_ring.08.cil-2.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_array_list_clear_harness_negated.i LP64 false +SoftwareSystems-BusyBox busybox-1.22.0/chgrp-incomplete-2.i LP64 unknown +SoftwareSystems-coreutils coreutils-v8.31/csplit_3args_klee-sa_ko_1366-1317-1319-1334_csa_uaf.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--rc--keymaps--rc-anysee.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_sys_rd__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted-lit/AliasDarteFeautrierGonnord-SAS2010-speedpldi4.c LP64 unknown +Termination-MainHeap termination-15/array20_alloca.i LP64 unknown +Arrays array-examples/standard_copy9_ground-2.i ILP32 true +BitVectors bitvector/gcd_2.c ILP32 true +ControlFlow ntdrivers-simplified/kbfiltr_simpl1.cil.c ILP32 unknown +Floats floats-cbmc-regression/float-flags-simp1.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-165.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal146.c LP64 true +Heap ldv-memsafety/memleaks_test12-2.i ILP32 unknown +Loops loop-zilu/benchmark40_polynomial.i ILP32 unknown +ProductLines product-lines/elevator_spec2_product29.cil.c ILP32 true +Recursive recursified_loop-simple/recursified_nested_3.c ILP32 unknown +Sequentialized seq-mthreaded/pals_floodmax.4.3.ufo.BOUNDED-8.pals.c ILP32 false +XCSP xcsp/CostasArray-12.c ILP32 false +Combinations combinations/Problem05_label46+token_ring.02.cil-1.c ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_buf_append_harness_negated.i LP64 false +SoftwareSystems-BusyBox busybox-1.22.0/du-2.i LP64 unknown +SoftwareSystems-coreutils coreutils-v8.31/cut_3args_klee-sa_ko_584-249-471_csa_uaf.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--rc--keymaps--rc-gadmei-rm008z.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_export_restore__expected__cover_proof_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted-lit/ChenFlurMukhopadhyay-SAS2012-Ex3.03.c LP64 unknown +Termination-MainHeap termination-15/cstrncmp_reverse_alloca.i LP64 unknown +Arrays array-fpi/eqn4.c ILP32 true +BitVectors bitvector/modulus-1.i ILP32 unknown +ControlFlow ntdrivers/kbfiltr.i.cil-2.c ILP32 false +Floats neural-networks/cartpole_31_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-30.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal69.c LP64 true +Heap ldv-memsafety/memleaks_test6_1.i ILP32 unknown +Loops loops/trex04_abstracted.c ILP32 true +ProductLines product-lines/elevator_spec9_product30.cil.c ILP32 false +Recursive recursified_nla-digbench/recursified_egcd2.c ILP32 unknown +Sequentialized seq-mthreaded/pals_lcr-var-start-time.3.2.ufo.BOUNDED-6.pals.c ILP32 false +XCSP xcsp/Dubois-024.c ILP32 true +Combinations combinations/gcd_1+newton_1_5.i ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_buf_write_from_whole_buffer_harness.i LP64 true +SoftwareSystems-BusyBox busybox-1.22.0/hostid.i LP64 unknown +SoftwareSystems-coreutils coreutils-v8.31/join_3args_klee-sa_ko_473-810_csa_nd.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--rc--keymaps--rc-proteus-2309.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_input_rdx__cover_entry_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted-lit/Masse-VMCAI2014-Fig1b.c LP64 unknown +Termination-MainHeap termination-dietlibc/strlcat.i LP64 unknown +Arrays array-fpi/s12iff.c ILP32 false +BitVectors bitvector/s3_clnt_2.BV.c.cil-1.c ILP32 unknown +ControlFlow openssl-simplified/s3_srvr_1.cil-1.c ILP32 unknown +Floats neural-networks/dubinsrejoin_2_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-76.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.exit.2.prop1-back-serstep.c LP64 true +Heap ldv-sets/test_mutex_unbounded-2.i ILP32 false +Loops nla-digbench-scaling/egcd-ll_valuebound1.c ILP32 true +ProductLines product-lines/email_spec11_product23.cil.c ILP32 true +Recursive recursified_nla-digbench/recursified_hard-ll.c ILP32 unknown +Sequentialized seq-mthreaded/pals_lcr.4.1.ufo.BOUNDED-8.pals.c ILP32 false +XCSP xcsp/Dubois-075.c ILP32 true +Combinations combinations/gcd_4+newton_3_1.i ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_cursor_read_be32_harness.i LP64 true +SoftwareSystems-BusyBox busybox-1.22.0/od-1.i LP64 unknown +SoftwareSystems-coreutils coreutils-v8.31/nl_3args_klee-sa_ko_172-232_csa_uaf.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--w1--slaves--w1_ds2760.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_state_td_state__cover_exit_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted/Copenhagen_disj-2.c LP64 unknown +Termination-MainHeap termination-memory-alloca/Masse-alloca.i LP64 unknown +Arrays array-fpi/ss4f.c ILP32 false +BitVectors bitvector/s3_srvr_1.BV.c.cil.c ILP32 unknown +ControlFlow openssl-simplified/s3_srvr_6.cil-2.c ILP32 unknown +Floats neural-networks/gelu_3_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_kloop_25_while_file-12.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.lamport.3.prop1-func-interl.c LP64 false +Heap memsafety-broom/dll-fst-shared.i LP64 unknown +Loops nla-digbench-scaling/geo1-ll_valuebound2.c ILP32 true +ProductLines product-lines/email_spec27_product19.cil.c ILP32 false +Recursive recursified_nla-digbench/recursified_ps4.c ILP32 unknown +Sequentialized seq-mthreaded/pals_lcr.8.ufo.BOUNDED-16.pals.c ILP32 true +XCSP xcsp/Haystacks-15.c ILP32 true +Combinations combinations/pals_lcr.5.1.ufo.UNBOUNDED.pals+Problem12_label02.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_hash_table_create_harness.i LP64 true +SoftwareSystems-BusyBox busybox-1.22.0/realpath-2.i LP64 unknown +SoftwareSystems-coreutils coreutils-v8.31/split_3args_klee-sa_ko_235_csa_nd.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--rc--keymaps--rc-ati-x10.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__expected__cover_entry_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted/Singapore_plus.c LP64 unknown +Termination-MainHeap termination-memory-alloca/b.06-alloca.i LP64 unknown +Arrays array-memsafety/openbsd_cmemset-alloca-1.i ILP32 unknown +BitVectors bitvector/s3_srvr_3a.BV.c.cil.c ILP32 true +ControlFlow openssl/s3_srvr.blast.01.i.cil-2.c ILP32 unknown +Floats neural-networks/lunarlander_88_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_operatoramount_amount10_file-165.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.needham.4.prop3-back-serstep.c LP64 true +Heap memsafety-cve/gpac_16Found.i ILP32 unknown +Loops nla-digbench-scaling/hard-u_unwindbound50.c ILP32 false +ProductLines product-lines/email_spec4_product18.cil.c ILP32 false +Recursive recursive-simple/id_o10.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.4.3.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/aim-100-2-0-sat-3.c ILP32 false +Combinations combinations/pals_lcr.7.ufo.UNBOUNDED.pals+Problem12_label00.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_linked_list_pop_back_harness_negated.i LP64 false +SoftwareSystems-BusyBox busybox-1.22.0/stty-3.i LP64 unknown +SoftwareSystems-coreutils coreutils-v8.31/uniq_3args_ok.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--rc--keymaps--rc-imon-mce.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__unexpected__cover_proof_havoc_object.i LP64 false +Termination-MainControlFlow termination-nla/egcd3-both-nt.c ILP32 unknown +Termination-MainHeap termination-memory-alloca/diff-alloca-1.i LP64 unknown +Arrays array-patterns/array22_pattern.c ILP32 true +BitVectors bitvector/soft_float_2a.c.cil.c ILP32 true +ControlFlow openssl/s3_srvr.blast.10.i.cil-1.c ILP32 unknown +Floats neural-networks/poly_8_8_8_thresh_2_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-30.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.resistance.2.prop2-func-interl.c LP64 true +Heap memsafety-cve/pacparser.i ILP32 unknown +Loops nla-digbench-scaling/ps2-ll_unwindbound1.c ILP32 true +ProductLines product-lines/email_spec7_product17.cil.c ILP32 true +Recursive recursive/Addition03-1.c ILP32 true +Sequentialized seq-pthread/cs_fib-2.i ILP32 false +XCSP xcsp/aim-200-1-6-sat-2.c ILP32 false +Combinations combinations/pc_sfifo_1.cil-2+token_ring.11.cil-2.c ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_priority_queue_s_sift_either_harness_negated.i LP64 false +SoftwareSystems-BusyBox busybox-1.22.0/uname-2.i LP64 unknown +SoftwareSystems-coreutils coreutils-v9.5-units/relpath_path_common_prefix_identical_cover_proof.i LP64 false +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--rc--keymaps--rc-real-audio-220-32-keys.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__invalid_state_sys_state__cover_exit_havoc_memory.i LP64 false +Termination-MainControlFlow termination-numeric/Fibonacci01-2-overflow.c LP64 unknown +Termination-MainHeap termination-memory-alloca/openbsd_cstrpbrk-alloca-1.i LP64 unknown +Arrays array-tiling/tcpy.c ILP32 true +BitVectors bitvector/soft_float_5.c.cil.c ILP32 unknown +ControlFlow openssl/s3_srvr.blast.16.i.cil-1.c ILP32 unknown +Floats neural-networks/tanh_6_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-76.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.vcegar_QF_BV_itc99_b13_p12.c LP64 true +Heap memsafety/global-atexit-5.i ILP32 unknown +Loops nla-digbench/egcd2.c ILP32 unknown +ProductLines product-lines/email_spec9_product12.cil.c ILP32 true +Recursive recursive/recHanoi02-2.c ILP32 true +Sequentialized seq-pthread/cs_sync.i ILP32 true +XCSP xcsp/aim-200-3-4-sat-1.c ILP32 false +Combinations combinations/square_2+soft_float_4-2a.c.cil.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_string_eq_ignore_case_harness.i LP64 true +SoftwareSystems-BusyBox busybox-1.22.0/who-2.i LP64 unknown +SoftwareSystems-coreutils coreutils-v9.5-units/relpath_relpath_potential_buffer_overflow_functional.i LP64 false +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--regulator--userspace-consumer.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_input_vcpu_handle__cover_exit_havoc_object.i LP64 false +Termination-MainControlFlow termination-restricted-15/b.03-no-inv_assume.c LP64 unknown +Termination-MainHeap termination-recursive-malloc/rec_malloc_ex11C.i LP64 unknown +Arrays array-crafted/bor1.i ILP32 true +ControlFlow infeasible-control-flow/conflict_branch3.c ILP32 true +Floats float-benchs/interpolation.c ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-108.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w16_d16_e0.c LP64 false +Heap forester-heap/dll-rb-sentinel-2.i ILP32 true +Loops loop-industry-pattern/aiob_3.c ILP32 true +ProductLines product-lines/elevator_spec14_product28.cil.c ILP32 false +Recursive fuzzle-programs/04_fuzzle_60x60.c LP64 false +Sequentialized seq-mthreaded/pals_STARTPALS_ActiveStandby.4_2.ufo.BOUNDED-10.pals.c ILP32 false +XCSP xcsp/AllInterval-007.c ILP32 false +Combinations combinations/Problem05_label41+token_ring.08.cil-1.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_array_eq_harness.i LP64 true +SoftwareSystems-BusyBox busybox-1.22.0/basename-2.i LP64 true +SoftwareSystems-coreutils coreutils-v8.31/csplit_3args_klee-sa_ko_1318-1332_csa_nd.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--leds--ledtrig-default-on.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_servtd_wr__expected__cover_proof_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted-lit/AliasDarteFeautrierGonnord-SAS2010-easy2-2.c LP64 unknown +Termination-MainHeap termination-15/array09_alloca.i LP64 unknown +Arrays array-crafted/zero_sum_const_m2.c ILP32 true +ControlFlow memory-model/2SB.i ILP32 false +Floats float-newlib/double_req_bl_0670.c ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-130.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.blocks.4.prop1-back-serstep.c LP64 false +Heap forester-heap/sll-simple-white-blue-2.i ILP32 false +Loops loop-lit/gj2007b.i ILP32 true +ProductLines product-lines/elevator_spec1_product25.cil.c ILP32 true +Recursive fuzzle-programs/12_fuzzle_50x50_CVE-2016-4492.c LP64 false +Sequentialized seq-mthreaded/pals_floodmax.3.1.ufo.BOUNDED-6.pals.c ILP32 false +XCSP xcsp/AllInterval-015.c ILP32 false +Combinations combinations/Problem05_label43+token_ring.05.cil-1.c ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_array_list_get_at_harness.i LP64 true +SoftwareSystems-BusyBox busybox-1.22.0/chroot-incomplete-2.i LP64 unknown +SoftwareSystems-coreutils coreutils-v8.31/csplit_3args_klee-sa_ko_486-536-923_csa_nd.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--rc--keymaps--rc-avermedia-m733a-rm-k6.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__invalid_input_rcx__cover_exit_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted-lit/ChawdharyCookGulwaniSagivYang-ESOP2008-aaron12.c LP64 unknown +Termination-MainHeap termination-15/cstrchr_malloc.i LP64 unknown +Arrays array-examples/standard_copy2_ground-1.i ILP32 false +ControlFlow ntdrivers-simplified/floppy_simpl3.cil-2.c ILP32 unknown +Floats float-newlib/float_req_bl_0875.c ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-153.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal112.c LP64 true +Heap heap-manipulation/tree-2.i ILP32 false +Loops loop-zilu/benchmark18_conjunctive.i ILP32 true +ProductLines product-lines/elevator_spec2_product21.cil.c ILP32 true +Recursive recursified_loop-invariants/recursified_linear-inequality-inv-b.c ILP32 unknown +Sequentialized seq-mthreaded/pals_floodmax.3_overflow.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/AllInterval-030.c ILP32 false +Combinations combinations/Problem05_label45+token_ring.05.cil-2.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_array_list_sort_harness.i LP64 true +SoftwareSystems-BusyBox busybox-1.22.0/date-2.i LP64 unknown +SoftwareSystems-coreutils coreutils-v8.31/cut_3args_klee-sa_ko_462-471_csa_infer_nd.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--rc--keymaps--rc-em-terratec.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__unexpected__safety_requirement_havoc_object.i LP64 true +Termination-MainControlFlow termination-crafted-lit/ChenFlurMukhopadhyay-SAS2012-Ex2.12.c LP64 unknown +Termination-MainHeap termination-15/cstrlen_reverse_alloca.i LP64 unknown +Arrays array-examples/standard_running-2.i ILP32 true +ControlFlow ntdrivers/cdaudio.i.cil-1.c ILP32 false +Floats floats-cdfpl/newton_2_6.i ILP32 false +Hardness hardness/hardness_fillercode_filler_pr_ci_file-176.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal18.c LP64 true +Heap ldv-memsafety/memleaks_test16_2.i ILP32 unknown +Loops loops-crafted-1/in-de61.c ILP32 true +ProductLines product-lines/elevator_spec3_product11.cil.c ILP32 false +Recursive recursified_nla-digbench/recursified_bresenham-ll.c ILP32 unknown +Sequentialized seq-mthreaded/pals_floodmax.4.ufo.BOUNDED-8.pals.c ILP32 true +XCSP xcsp/CostasArray-16.c ILP32 false +Combinations combinations/Problem05_label46+token_ring.12.cil-2.c ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_buf_eq_c_str_ignore_case_harness.i LP64 true +SoftwareSystems-BusyBox busybox-1.22.0/echo-2.i LP64 unknown +SoftwareSystems-coreutils coreutils-v8.31/env_3args_klee-sa_ko_617-835_csa_uaf.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--rc--keymaps--rc-kaiomy.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_import_abort__unexpected__cover_entry_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted-lit/CookSeeZuleger-TACAS2013-Fig7b.c LP64 unknown +Termination-MainHeap termination-15/cstrpbrk_reverse_alloca.i LP64 unknown +Arrays array-fpi/brs5f_overflow.c ILP32 unknown +ControlFlow ntdrivers/floppy.i.cil-3.c ILP32 true +Floats loop-floats-scientific-comp/loop3.c ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-199.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal35.c LP64 true +Heap ldv-memsafety/memleaks_test23_1.i ILP32 unknown +Loops loops/string-2.i ILP32 false +ProductLines product-lines/elevator_spec3_productSimulator.cil.c ILP32 false +Recursive recursified_nla-digbench/recursified_divbin2.i ILP32 unknown +Sequentialized seq-mthreaded/pals_floodmax.5.ufo.BOUNDED-10.pals.c ILP32 true +XCSP xcsp/Dubois-020.c ILP32 true +Combinations combinations/Problem05_label49+token_ring.06.cil-2.c ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_buf_reset_harness.i LP64 true +SoftwareSystems-coreutils coreutils-v8.31/env_3args_klee-sa_ko_884-777_infer_nd.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--rc--keymaps--rc-pctv-sedna.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_td_state__cover_entry_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted-lit/LeeJonesBen-Amram-POPL2001-Ex4.c LP64 unknown +Termination-MainHeap termination-dietlibc/strcat.i LP64 unknown +Arrays array-fpi/ifeqn5f.c ILP32 false +ControlFlow openssl-simplified/s3_clnt_1.cil-1.c ILP32 unknown +Floats neural-networks/cartpole_55_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-41.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cambridge.1.prop2-func-interl.c LP64 true +Heap ldv-regression/alias_of_return_2.i ILP32 true +Loops nla-digbench-scaling/cohencu-ll_unwindbound20.c ILP32 false +ProductLines product-lines/email_spec0_product16.cil.c ILP32 false +Recursive recursified_nla-digbench/recursified_fermat1.c ILP32 unknown +Sequentialized seq-mthreaded/pals_lcr-var-start-time.4.2.ufo.BOUNDED-8.pals.c ILP32 false +XCSP xcsp/Dubois-028.c ILP32 true +Combinations combinations/gcd_2+newton_1_2.i ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_cursor_advance_harness_negated.i LP64 false +SoftwareSystems-coreutils coreutils-v8.31/join_3args_klee-sa_ko_696-489_csa_uaf.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--rc--keymaps--rc-terratec-cinergy-xs.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__unexpected__cover_proof_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted-lit/Urban-WST2013-Fig2.c LP64 unknown +Termination-MainHeap termination-dietlibc/strtok_r.i LP64 unknown +Arrays array-fpi/nsqm-if.c ILP32 true +ControlFlow openssl-simplified/s3_clnt_3.cil-3.c ILP32 unknown +Floats neural-networks/cos_3_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_fillercode_normal_file-64.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.driving_phils.1.prop1-back-serstep.c LP64 false +Heap ldv-regression/test27-1.c ILP32 true +Loops nla-digbench-scaling/divbin2_valuebound20.i ILP32 true +ProductLines product-lines/email_spec11_product03.cil.c ILP32 true +Recursive recursified_nla-digbench/recursified_geo2-ll2.c ILP32 unknown +Sequentialized seq-mthreaded/pals_lcr-var-start-time.6.ufo.BOUNDED-12.pals.c ILP32 true +XCSP xcsp/Dubois-055.c ILP32 true +Combinations combinations/gcd_3+newton_3_4.i ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_cursor_from_buf_harness_negated.i LP64 false +SoftwareSystems-coreutils coreutils-v8.31/ln_3args_klee-sa_ko_194-351_csa_uaf.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--platform--x86--topstar-laptop.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_td_state__cover_exit_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted/Bangalore_v4.c LP64 unknown +Termination-MainHeap termination-memory-alloca/CookSeeZuleger-2013TACAS-Fig7b-alloca.i LP64 unknown +Arrays array-fpi/s3lif.c ILP32 true +ControlFlow openssl-simplified/s3_srvr_11.cil.c ILP32 unknown +Floats neural-networks/dubinsrejoin_54_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-87.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.firewire_tree.4.prop2-back-serstep.c LP64 true +Heap list-ext-properties/test-0158_1-1.i ILP32 unknown +Loops nla-digbench-scaling/egcd3-ll_unwindbound2.c ILP32 false +ProductLines product-lines/email_spec11_product36.cil.c ILP32 true +Recursive recursified_nla-digbench/recursified_knuth.i ILP32 unknown +Sequentialized seq-mthreaded/pals_lcr.5.1.ufo.BOUNDED-10.pals.c ILP32 false +XCSP xcsp/Dubois-095.c ILP32 true +Combinations combinations/pals_lcr.3.ufo.BOUNDED-6.pals+Problem12_label03.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_cursor_satisfies_pred_harness_negated.i LP64 false +SoftwareSystems-coreutils coreutils-v8.31/nl_3args_klee-sa_ko_569-365_csa_infer_uaf.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--hwmon--max1111.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__unexpected__safety_requirement_havoc_memory.i LP64 true +Termination-MainControlFlow termination-crafted/Lobnya-Boolean-Reordered-1.c LP64 unknown +Termination-MainHeap termination-memory-alloca/Toulouse-MultiBranchesToLoop-alloca.i LP64 unknown +Arrays array-fpi/sina4.c ILP32 true +ControlFlow openssl-simplified/s3_srvr_3.cil.c ILP32 unknown +Floats neural-networks/erf_1_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-108.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.hanoi.1.prop1-back-serstep.c LP64 false +Heap list-properties/list-1.i ILP32 true +Loops nla-digbench-scaling/freire2_valuebound2.c ILP32 false +ProductLines product-lines/email_spec1_product32.cil.c ILP32 false +Recursive recursified_nla-digbench/recursified_ps2.c ILP32 unknown +Sequentialized seq-mthreaded/pals_lcr.7.ufo.BOUNDED-14.pals.c ILP32 true +XCSP xcsp/Haystacks-11.c ILP32 true +Combinations combinations/pals_lcr.4.ufo.UNBOUNDED.pals+Problem12_label00.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_hash_iter_done_harness_negated.i LP64 false +SoftwareSystems-coreutils coreutils-v8.31/od_3args_klee-sa_ko_917-491_csa_nd.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--dvb--frontends--dib3000mc.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_state_op_state__cover_exit_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted/Nyala-2lex-2.c LP64 unknown +Termination-MainHeap termination-memory-alloca/array03-alloca-1.i LP64 unknown +Arrays array-lopstr16/base_case.i ILP32 true +Floats neural-networks/lunarlander_16_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_kloop_50_1loop_file-130.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.leader_election.2.prop1-back-serstep.c LP64 true +Heap memsafety-broom/sll-fst-data.i LP64 unknown +Loops nla-digbench-scaling/geo1-u_valuebound2.c ILP32 false +ProductLines product-lines/email_spec27_product31.cil.c ILP32 false +Recursive recursified_nla-digbench/recursified_ps6.c ILP32 unknown +Sequentialized seq-mthreaded/pals_opt-floodmax.3.2.ufo.BOUNDED-6.pals.c ILP32 false +XCSP xcsp/Haystacks-19.c ILP32 true +Combinations combinations/pals_lcr.5.ufo.UNBOUNDED.pals+Problem12_label07.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_hash_table_init_bounded_harness_negated.i LP64 false +SoftwareSystems-coreutils coreutils-v8.31/split_3args_klee-sa_ko_664_csa_uaf.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--rc--keymaps--rc-azurewave-ad-tu700.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_op_state__cover_exit_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted/Toulouse-MultiBranchesToLoop-2.c LP64 unknown +Termination-MainHeap termination-memory-alloca/b.14-alloca.i LP64 unknown +Arrays array-memsafety/cstrpbrk-alloca-2.i ILP32 unknown +Floats neural-networks/lunarlander_63_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_operatoramount_amount100_file-153.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.msmie.4.prop1-back-serstep.c LP64 true +Heap memsafety-cve/dlt-daemon.i ILP32 unknown +Loops nla-digbench-scaling/geo3-ll_valuebound2.c ILP32 true +ProductLines product-lines/email_spec3_product31.cil.c ILP32 false +Recursive recursive-simple/id_b3_o2-2.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.4.1.ufo.BOUNDED-8.pals.c ILP32 false +XCSP xcsp/aim-100-1-6-unsat-3.c ILP32 true +Combinations combinations/pals_lcr.6_overflow.ufo.UNBOUNDED.pals+Problem12_label09.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_linked_list_init_harness_negated.i LP64 false +SoftwareSystems-coreutils coreutils-v8.31/uniq_3args_klee-sa_ko_499-513-538-654_csa_uaf.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--rc--keymaps--rc-evga-indtube.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_state_child_count__cover_proof_havoc_object.i LP64 false +Termination-MainControlFlow termination-nla/dijkstra3-both-nt.c ILP32 unknown +Termination-MainHeap termination-memory-alloca/cstrcpy-alloca-2.i LP64 unknown +Arrays array-memsafety/openbsd_cstrstr-alloca-2.i ILP32 unknown +Floats neural-networks/poly_128_thresh_0_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-176.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.1.prop5-func-interl.c LP64 false +Heap memsafety-cve/jhead.i ILP32 unknown +Loops nla-digbench-scaling/knuth_unwindbound100.i ILP32 true +ProductLines product-lines/email_spec4_product30.cil.c ILP32 false +Recursive recursive-simple/id_o200.c ILP32 false +XCSP xcsp/aim-100-2-0-unsat-3.c ILP32 true +Combinations combinations/pals_lcr.8.1.ufo.UNBOUNDED.pals+Problem12_label02.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_linked_list_remove_harness.i LP64 true +SoftwareSystems-coreutils coreutils-v9.5-units/factors_valid_64bit_number_cover_target.i LP64 false +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--rc--keymaps--rc-leadtek-y04g0051.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_input_num_ptr__safety_requirement_havoc_object.i LP64 true +Termination-MainControlFlow termination-nla/geo3-both-t.c ILP32 unknown +Termination-MainHeap termination-memory-alloca/insertionsort-alloca-2.i LP64 unknown +Arrays array-multidimensional/transpose-u.c ILP32 true +Floats neural-networks/poly_4_4_4_4_thresh_5_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_operatoramount_amount500_file-199.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.production_cell.1.prop1-func-interl.c LP64 false +Heap memsafety-cve/mujs.i ILP32 unknown +Loops nla-digbench-scaling/prod4br-ll_unwindbound20.c ILP32 false +ProductLines product-lines/email_spec6_product30.cil.c ILP32 false +Recursive recursive/Ackermann04.c ILP32 true +XCSP xcsp/aim-100-6-0-sat-2.c ILP32 false +Combinations combinations/pc_sfifo_1.cil-2+token_ring.01.cil-1.c ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_priority_queue_push_harness.i LP64 true +SoftwareSystems-coreutils coreutils-v9.5-units/getlimits_decimal_absval_add_one_negative_cover_target.i LP64 false +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--rc--keymaps--rc-pixelview-002t.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__invalid_state_sys_state__cover_exit_havoc_memory.i LP64 false +Termination-MainControlFlow termination-nla/ps6-both-t.c ILP32 unknown +Termination-MainHeap termination-memory-alloca/openbsd_cstrcpy-alloca-1.i LP64 unknown +Arrays array-patterns/array5_pattern.c ILP32 true +Floats neural-networks/softmax_10_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-41.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w16_d64_e0.c LP64 false +Heap memsafety-cve/smartdns.i ILP32 unknown +Loops nla-digbench-scaling/ps3-ll_valuebound2.c ILP32 true +ProductLines product-lines/email_spec7_product29.cil.c ILP32 false +Recursive recursive/EvenOdd03.c ILP32 false +XCSP xcsp/aim-200-1-6-unsat-2.c ILP32 true +Combinations combinations/pc_sfifo_2.cil-1+token_ring.08.cil-1.c ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_ring_buffer_acquire_harness.i LP64 true +SoftwareSystems-coreutils coreutils-v9.5-units/relpath_path_common_prefix_symmetry_functional.i LP64 true +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--rc--keymaps--rc-tivo.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__invalid_input_handoff_no_downgrade__cover_exit_havoc_memory.i LP64 false +Termination-MainControlFlow termination-numeric/twisted.c LP64 unknown +Termination-MainHeap termination-memory-alloca/subseq-alloca-1.i LP64 unknown +Arrays array-tiling/pnr4.c ILP32 true +Floats neural-networks/softsign_w64_r3_case_0_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-64.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.telephony.8.prop1-func-interl.c LP64 false +Heap memsafety-ext2/length_test03-1.i ILP32 unknown +Loops nla-digbench-scaling/sqrt1-ll_unwindbound2.c ILP32 true +ProductLines product-lines/email_spec8_product29.cil.c ILP32 true +Recursive recursive/McCarthy91-2.c ILP32 true +Combinations combinations/pc_sfifo_3.cil+token_ring.08.cil-2.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_string_eq_byte_buf_ignore_case_harness_negated.i LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/relpath_relpath_matching_paths_output_cover_proof.i LP64 false +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--mmc--host--sdricoh_cs.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_lp_state__cover_proof_havoc_object.i LP64 false +Termination-MainControlFlow termination-restricted-15/PastaC7.c LP64 unknown +Termination-MainHeap termination-recursive-malloc/insertionSort_recursive.i LP64 unknown +Arrays reducercommutativity/rangesum10.i ILP32 false +Floats neural-networks/tanh_w64_r1_case_1_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-88.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.vis_arrays_am2910_p2.c LP64 true +Heap memsafety/test-0232-1.i ILP32 unknown +Loops nla-digbench/lcm2.c ILP32 true +ProductLines product-lines/email_spec9_product28.cil.c ILP32 true +Recursive verifythis/prefixsum_rec.c ILP32 true +Combinations combinations/square_6+soft_float_1-2a.c.cil.c ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/sliced_aws_array_eq_harness.i LP64 true +SoftwareSystems-coreutils coreutils-v9.5-units/seq_incr_no_carry_cover_target.i LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--w1--slaves--w1_ds2408.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_op_state__cover_proof_havoc_object.i LP64 false +Termination-MainControlFlow termination-restricted-15/b.15.c LP64 unknown +Termination-MainHeap termination-recursive-malloc/rec_malloc_ex7.i LP64 unknown +Arrays array-cav19/array_min_and_copy_shift_sum_add.c ILP32 true +Floats float-benchs/filter1.c.v+lhb-reducer.c ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-193.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.adding.6.prop1-back-serstep.c LP64 false +Heap forester-heap/dll-optional-2.i ILP32 false +Loops loop-acceleration/simple_2-1.c ILP32 true +ProductLines product-lines/elevator_spec14_product20.cil.c ILP32 false +Recursive fuzzle-programs/02_fuzzle_40x40.c LP64 false +Combinations combinations/Problem05_label40+token_ring.10.cil-2.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_array_eq_c_str_harness-1.i LP64 false +SoftwareSystems-coreutils coreutils-v8.31/comm_3args_klee-sa_ko_243_infer_uaf.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--acpi--container.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_mr_report__unexpected__cover_entry_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted-lit/AliasDarteFeautrierGonnord-SAS2010-complex.c LP64 unknown +Termination-MainHeap termination-15/array05_alloca.i LP64 unknown +Arrays array-crafted/mapavg3.i ILP32 true +Floats float-benchs/mea8000.c ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-24.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n3_w16_d8_e0.c LP64 false +Heap forester-heap/dll-token-1.i ILP32 true +Loops loop-invgen/SpamAssassin-loop.i.v+cfa-reducer.c ILP32 true +ProductLines product-lines/elevator_spec1_product01.cil.c ILP32 true +Recursive fuzzle-programs/06_fuzzle_50x50_0-cycle.c LP64 false +Combinations combinations/Problem05_label42+token_ring.03.cil-1.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_array_list_back_harness_negated.i LP64 false +SoftwareSystems-coreutils coreutils-v8.31/csplit_3args_klee-sa_ko_1332_csa_nd.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--dvb--frontends--dvb_dummy_fe.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_servtd_wr__unexpected__safety_requirement_havoc_memory.i LP64 true +Termination-MainControlFlow termination-crafted-lit/AliasDarteFeautrierGonnord-SAS2010-random1d-1.c LP64 unknown +Termination-MainHeap termination-15/array16_alloca_fixed.i LP64 unknown +Arrays array-crafted/zero_sum3.c ILP32 true +Floats float-benchs/zonotope_loose.c ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-36.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.bakery.2.prop1-back-serstep.c LP64 false +Heap forester-heap/sll-rb-cnstr_1-1.i ILP32 true +Loops loop-invgen/up.i ILP32 true +ProductLines product-lines/elevator_spec1_product21.cil.c ILP32 true +Recursive fuzzle-programs/10_fuzzle_50x50_CVE-2016-4487.c LP64 false +Combinations combinations/Problem05_label42+token_ring.13.cil-2.c ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_array_list_ensure_capacity_harness.i LP64 true +SoftwareSystems-coreutils coreutils-v8.31/csplit_3args_klee-sa_ko_1367-1318-1319-1332_csa_uaf.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--rc--keymaps--rc-ati-x10.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__expected__cover_proof_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted-lit/Ben-Amram-LMCS2010-Ex2.3.c LP64 unknown +Termination-MainHeap termination-15/cstrcat_malloc.i LP64 unknown +Arrays array-examples/data_structures_set_multi_proc_ground-1.i ILP32 false +Floats float-newlib/double_req_bl_0876.c ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-47.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.brp.6.prop1-back-serstep.c LP64 false +Heap heap-data/cart.i ILP32 true +Loops loop-new/count_by_1_variant.i ILP32 true +ProductLines product-lines/elevator_spec1_product29.cil.c ILP32 true +Combinations combinations/Problem05_label43+token_ring.10.cil-1.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_array_list_init_dynamic_harness_negated.i LP64 false +SoftwareSystems-coreutils coreutils-v8.31/csplit_3args_klee-sa_ko_685_csa_nd.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--rc--keymaps--rc-azurewave-ad-tu700.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__unexpected__cover_proof_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted-lit/ChawdharyCookGulwaniSagivYang-ESOP2008-easy2.c LP64 unknown +Termination-MainHeap termination-15/cstrcmp_mixed_alloca.i LP64 unknown +Arrays array-examples/sorting_selectionsort_2_ground.i ILP32 false +Floats float-newlib/float_req_bl_0670.c ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-59.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.6.prop3-func-interl.c LP64 true +Heap heap-manipulation/dll_of_dll-2.i ILP32 false +Loops loop-zilu/benchmark07_linear.i ILP32 unknown +ProductLines product-lines/elevator_spec2_product17.cil.c ILP32 true +Combinations combinations/Problem05_label44+token_ring.12.cil-2.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_array_list_push_back_harness.i LP64 true +SoftwareSystems-coreutils coreutils-v8.31/cut_3args_klee-sa_ko_368_infer_nd.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--rc--keymaps--rc-digittrade.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__invalid_input_vmflag__safety_requirement_havoc_memory.i LP64 true +Termination-MainControlFlow termination-crafted-lit/ChenFlurMukhopadhyay-SAS2012-Ex2.06.c LP64 unknown +Termination-MainHeap termination-15/cstrcspn_mixed_alloca.i LP64 unknown +Arrays array-examples/standard_copy5_ground-2.i ILP32 false +Floats float-newlib/float_req_bl_1130b.c ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-7.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal129.c LP64 true +Heap ldv-memsafety/memleaks_test10-1.i ILP32 unknown +Loops loop-zilu/benchmark28_linear.i ILP32 unknown +ProductLines product-lines/elevator_spec2_product25.cil.c ILP32 true +Combinations combinations/Problem05_label45+token_ring.10.cil-2.c ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_array_list_swap_harness_negated.i LP64 false +SoftwareSystems-coreutils coreutils-v8.31/cut_3args_klee-sa_ko_573-462-256-471_csa_infer_uaf.c LP64 unknown +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--rc--keymaps--rc-evga-indtube.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_vmcall__unexpected__cover_entry_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted-lit/ChenFlurMukhopadhyay-SAS2012-Ex2.18.c LP64 unknown +Termination-MainHeap termination-15/cstrncat_reverse_alloca.i LP64 unknown +Arrays array-examples/standard_palindrome_ground.i ILP32 true +Floats floats-cbmc-regression/float8.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-81.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal162.c LP64 true +Heap ldv-memsafety/memleaks_test14_2.i ILP32 unknown +Loops loop-zilu/benchmark51_polynomial.i ILP32 true +ProductLines product-lines/elevator_spec2_productSimulator.cil.c ILP32 false +Combinations combinations/Problem05_label46+token_ring.07.cil-1.c ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_buf_clean_up_harness.i LP64 true +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--rc--keymaps--rc-imon-mce.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_export_restore__unexpected__safety_requirement_havoc_memory.i LP64 true +Termination-MainControlFlow termination-crafted-lit/ChenFlurMukhopadhyay-SAS2012-Ex3.09.c LP64 unknown +Termination-MainHeap termination-15/cstrncpy_reverse_alloca.i LP64 unknown +Arrays array-examples/standard_strcpy_original-2.i ILP32 true +Floats floats-cdfpl/sine_3.i ILP32 false +Hardness hardness/hardness_fillercode_filler_pr_ci_file-92.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal196.c LP64 true +Heap ldv-memsafety/memleaks_test18.i ILP32 unknown +Loops loops-crafted-1/sumt3.c ILP32 true +ProductLines product-lines/elevator_spec3_product20.cil.c ILP32 false +Combinations combinations/Problem05_label47+token_ring.06.cil-2.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_buf_from_array_harness.i LP64 true +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--rc--keymaps--rc-leadtek-y04g0051.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__expected__safety_requirement_havoc_memory.i LP64 true +Termination-MainControlFlow termination-crafted-lit/GulavaniGulwani-CAV2008-Fig1c.c LP64 unknown +Termination-MainHeap termination-15/cstrspn_reverse_alloca.i LP64 unknown +Arrays array-fpi/brs2f.c ILP32 false +Floats floats-nonlinear/coral-benchmark01.c ILP32 false +Hardness hardness/hardness_fillercode_filler_pr_co_file-102.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal23.c LP64 true +Heap ldv-memsafety/memleaks_test22_2-1.i ILP32 unknown +Loops loops/invert_string-3.c ILP32 true +ProductLines product-lines/elevator_spec3_product29.cil.c ILP32 true +Combinations combinations/Problem05_label49+token_ring.01.cil-1.c ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_buf_init_harness.i LP64 true +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--rc--keymaps--rc-nebula.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_num_tdcx__cover_entry_havoc_object.i LP64 true +Termination-MainControlFlow termination-crafted-lit/KroeningSharyginaTsitovichWintersteiger-CAV2010-Ex.c LP64 unknown +Termination-MainHeap termination-dietlibc/dirname-2.i LP64 unknown +Arrays array-fpi/condn.c ILP32 true +Floats neural-networks/cartpole_19_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-113.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal51.c LP64 true +Heap ldv-memsafety/memleaks_test4-1.i ILP32 unknown +Loops loops/terminator_02-2.c ILP32 true +ProductLines product-lines/elevator_spec9_product26.cil.c ILP32 false +Combinations combinations/Problem05_label49+token_ring.11.cil-2.c ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_buf_write_be16_harness_negated.i LP64 false +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--rc--keymaps--rc-pixelview-002t.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__unexpected__cover_entry_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted-lit/LeikeHeizmann-TACAS2014-Ex9.c LP64 unknown +Termination-MainHeap termination-dietlibc/strcmp_short.i LP64 unknown +Arrays array-fpi/ifeqn1f.c ILP32 false +Floats neural-networks/cartpole_43_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-125.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal85.c LP64 true +Heap ldv-memsafety/memleaks_test8_1.i ILP32 unknown +Loops nla-digbench-scaling/bresenham-ll_unwindbound50.c ILP32 false +ProductLines product-lines/email_spec0_product05.cil.c ILP32 true +Combinations combinations/gcd_1+newton_2_7.i ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_buf_write_from_whole_string_harness_negated.i LP64 false +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--rc--keymaps--rc-real-audio-220-32-keys.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_state_kot_entry__cover_proof_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted-lit/PodelskiRybalchenko-TACAS2011-Fig1.c LP64 unknown +Termination-MainHeap termination-dietlibc/strrchr.i LP64 unknown +Arrays array-fpi/indp3f.c ILP32 false +Floats neural-networks/cartpole_67_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-136.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cambridge.6.prop1-func-interl.c LP64 false +Heap ldv-regression/rule60_list2.i ILP32 true +Loops nla-digbench-scaling/cohendiv-ll_unwindbound100.c ILP32 true +ProductLines product-lines/email_spec0_product24.cil.c ILP32 true +Combinations combinations/gcd_2+newton_2_4.i ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_cursor_compare_lookup_harness.i LP64 true +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--rc--keymaps--rc-tivo.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_input_tdr_pa__cover_entry_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted-lit/cstrncmp.c LP64 unknown +Termination-MainHeap termination-dietlibc/wcsrchr.i LP64 unknown +Arrays array-fpi/ms3.c ILP32 true +Floats neural-networks/cartpole_91_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-148.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.collision.4.prop1-func-interl.c LP64 true +Heap ldv-regression/test23-1.c ILP32 false +Loops nla-digbench-scaling/dijkstra-u_valuebound50.c ILP32 true +ProductLines product-lines/email_spec0_product37.cil.c ILP32 true +Combinations combinations/gcd_3+newton_2_1.i ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_cursor_eq_harness_negated.i LP64 false +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--rc--keymaps--rc-winfast.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_op_state__cover_exit_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted/Arrays01-EquivalentConstantIndices-1.c LP64 unknown +Termination-MainHeap termination-memory-alloca/CookSeeZuleger-2013TACAS-Fig3-alloca.i LP64 unknown +Arrays array-fpi/res1f.c ILP32 false +Floats neural-networks/dubinsrejoin_17_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-159.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.elevator.4.prop1-func-interl.c LP64 true +Heap ldv-sets/test_add-1.i ILP32 false +Loops nla-digbench-scaling/divbin_valuebound100.i ILP32 true +ProductLines product-lines/email_spec11_product15.cil.c ILP32 false +Combinations combinations/gcd_4+newton_1_6.i ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_cursor_left_trim_pred_harness.i LP64 true +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--uwb--i1480--i1480-est.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__unexpected__cover_exit_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted/Cairo_nondet.c LP64 unknown +Termination-MainHeap termination-memory-alloca/HarrisLalNoriRajamani-2010SAS-Fig3-alloca.i LP64 unknown +Arrays array-fpi/s2if.c ILP32 true +Floats neural-networks/dubinsrejoin_41_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-170.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.firewire_tree.1.prop1-func-interl.c LP64 true +Heap list-ext-properties/list-ext_1.i ILP32 unknown +Loops nla-digbench-scaling/egcd2-ll_unwindbound5.c ILP32 false +ProductLines product-lines/email_spec11_product30.cil.c ILP32 false +Combinations combinations/pals_lcr.3.1.ufo.BOUNDED-6.pals+Problem12_label04.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_cursor_read_harness_negated.i LP64 false +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--acpi--container.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_state_tdr_metadata__cover_exit_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted/Hanoi_3vars.c LP64 unknown +Termination-MainHeap termination-memory-alloca/TelAviv-Amir-Minimum-alloca.i LP64 unknown +Arrays array-fpi/s4iff_overflow.c ILP32 unknown +Floats neural-networks/dubinsrejoin_66_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-181.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.fischer.5.prop1-func-interl.c LP64 false +Heap list-ext-properties/test-0232_1-2.i ILP32 unknown +Loops nla-digbench-scaling/fermat1-ll_unwindbound10.c ILP32 false +ProductLines product-lines/email_spec11_productSimulator.cil.c ILP32 false +Combinations combinations/pals_lcr.3.ufo.UNBOUNDED.pals+Problem12_label03.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_hash_byte_cursor_ptr_harness_negated.i LP64 false +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--leds--leds-bd2802.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_state_kot__cover_proof_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted/Mysore-1.c LP64 unknown +Termination-MainHeap termination-memory-alloca/a.01-alloca.i LP64 unknown +Arrays array-fpi/s5liff.c ILP32 false +Floats neural-networks/dubinsrejoin_90_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-193.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.h_FourbyFour.c LP64 true +Heap list-ext3-properties/sll_nondet_insert-1.i ILP32 false +Loops nla-digbench-scaling/fermat2-ll_valuebound5.c ILP32 true +ProductLines product-lines/email_spec1_product28.cil.c ILP32 true +Combinations combinations/pals_lcr.4.1.ufo.UNBOUNDED.pals+Problem12_label09.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_hash_iter_begin_harness-1.i LP64 false +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--common--tuners--tda9887.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__expected__cover_proof_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted/NonTerminationSimple4.c LP64 unknown +Termination-MainHeap termination-memory-alloca/a.10-alloca.i LP64 unknown +Arrays array-fpi/sqmf.c ILP32 false +Floats neural-networks/gcas_10_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-24.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.iprotocol.6.prop1-back-serstep.c LP64 false +Heap list-properties/simple_built_from_end.i ILP32 true +Loops nla-digbench-scaling/geo1-ll2_valuebound20.c ILP32 unknown +ProductLines product-lines/email_spec1_productSimulator.cil.c ILP32 false +Combinations combinations/pals_lcr.4_overflow.ufo.UNBOUNDED.pals+Problem12_label01.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_hash_string_harness.i LP64 true +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--rc--keymaps--rc-alink-dtu-m.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_state_tdr_metadata__cover_proof_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted/Pure3Phase-2.c LP64 unknown +Termination-MainHeap termination-memory-alloca/b.03-no-inv_assume-alloca.i LP64 unknown +Arrays array-industry-pattern/array_of_struct_ptr_monotonic.i ILP32 true +Floats neural-networks/logistic_2_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-36.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.lamport_nonatomic.5.prop1-func-interl.c LP64 true +Heap memsafety-broom/linux-hlist-fst-data.i LP64 unknown +Loops nla-digbench-scaling/geo1-u2_valuebound20.c ILP32 unknown +ProductLines product-lines/email_spec27_product27.cil.c ILP32 false +Combinations combinations/pals_lcr.5.ufo.BOUNDED-10.pals+Problem12_label06.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_hash_table_find_harness_negated.i LP64 false +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--rc--keymaps--rc-avermedia-m135a.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_input_hkid__safety_requirement_havoc_memory.i LP64 true +Termination-MainControlFlow termination-crafted/SyntaxSupportPointer01-2.c LP64 unknown +Termination-MainHeap termination-memory-alloca/b.10-alloca.i LP64 unknown +Arrays array-memsafety-realloc/array-realloc-3.i ILP32 unknown +Floats neural-networks/lunarlander_27_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_kloop_50_1loop_file-47.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.leader_filters.5.prop1-back-serstep.c LP64 true +Heap memsafety-broom/sll-nested-linux-list.i LP64 unknown +Loops nla-digbench-scaling/geo2-ll2_valuebound20.c ILP32 unknown +ProductLines product-lines/email_spec27_product35.cil.c ILP32 false +Combinations combinations/pals_lcr.6.1.ufo.BOUNDED-12.pals+Problem12_label04.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_hash_table_put_harness.i LP64 true +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--rc--keymaps--rc-cinergy-1400.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_tdr_metadata__cover_entry_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted/easy1.c LP64 unknown +Termination-MainHeap termination-memory-alloca/b.18-alloca.i LP64 unknown +Arrays array-memsafety/cstrcspn-alloca-1.i ILP32 unknown +Floats neural-networks/lunarlander_51_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_kloop_50_while_file-59.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.mcs.1.prop1-func-interl.c LP64 true +Heap memsafety-cve/NanoNNG.i ILP32 unknown +Loops nla-digbench-scaling/geo3-ll2_valuebound20.c ILP32 unknown +ProductLines product-lines/email_spec3_product27.cil.c ILP32 false +Combinations combinations/pals_lcr.6.ufo.UNBOUNDED.pals+Problem12_label03.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_linked_list_begin_harness_negated.i LP64 false +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--rc--keymaps--rc-em-terratec.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_input_pa__cover_entry_havoc_memory.i LP64 false +Termination-MainControlFlow termination-nla/cohencu5-both-nt.c ILP32 unknown +Termination-MainHeap termination-memory-alloca/count_down-alloca-2.i LP64 unknown +Arrays array-memsafety/knapsack_alloca_unsafe.i ILP32 unknown +Floats neural-networks/lunarlander_75_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-7.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.needham.2.prop1-func-interl.c LP64 false +Heap memsafety-cve/gpac_1.i ILP32 unknown +Loops nla-digbench-scaling/hard-ll_valuebound10.c ILP32 true +ProductLines product-lines/email_spec3_product35.cil.c ILP32 false +Combinations combinations/pals_lcr.7.1.ufo.UNBOUNDED.pals+Problem12_label09.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_linked_list_next_harness.i LP64 true +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--rc--keymaps--rc-fusionhdtv-mce.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_state_pamt_metadata__cover_exit_havoc_memory.i LP64 false +Termination-MainControlFlow termination-nla/dijkstra6-both-nt.c ILP32 unknown +Termination-MainHeap termination-memory-alloca/cstrncmp-alloca-2.i LP64 unknown +Arrays array-memsafety/openbsd_cstrlcpy-alloca-1.i ILP32 unknown +Floats neural-networks/lunarlander_99_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_operatoramount_amount10_file-81.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.peterson.1.prop1-back-serstep.c LP64 true +Heap memsafety-cve/gpac_5.i ILP32 unknown +Loops nla-digbench-scaling/hard2_unwindbound20.c ILP32 unknown +ProductLines product-lines/email_spec4_product25.cil.c ILP32 false +Combinations combinations/pals_lcr.7_overflow.ufo.UNBOUNDED.pals+Problem12_label01.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_linked_list_push_back_harness.i LP64 true +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--rc--keymaps--rc-it913x-v2.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_input_hkid__cover_exit_havoc_memory.i LP64 false +Termination-MainControlFlow termination-nla/freire1-both-nt.c ILP32 unknown +Termination-MainHeap termination-memory-alloca/ex3a-alloca.i LP64 unknown +Arrays array-memsafety/stroeder2-alloca-1.i ILP32 unknown +Floats neural-networks/poly_16_16_16_thresh_1_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-92.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.4.prop1-back-serstep.c LP64 true +Heap memsafety-cve/krb5.i ILP32 unknown +Loops nla-digbench-scaling/lcm1_unwindbound100.c ILP32 false +ProductLines product-lines/email_spec4_product34.cil.c ILP32 false +Combinations combinations/pals_lcr.8.ufo.BOUNDED-16.pals+Problem12_label06.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_mul_size_checked_harness.i LP64 true +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--rc--keymaps--rc-medion-x10.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_state_sys_state__cover_proof_havoc_memory.i LP64 false +Termination-MainControlFlow termination-nla/knuth-nosqrt-both-t.i ILP32 unknown +Termination-MainHeap termination-memory-alloca/lis-alloca-2.i LP64 unknown +Arrays array-multidimensional/init-non-constant-2-n-u.c ILP32 true +Floats neural-networks/poly_32_32_32_thresh_4_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_operatoramount_amount500_file-102.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.8.prop5-func-interl.c LP64 false +Heap memsafety-cve/minizip-ngFixed.i ILP32 unknown +Loops nla-digbench-scaling/lcm2_valuebound50.c ILP32 true +ProductLines product-lines/email_spec6_product22.cil.c ILP32 false +Combinations combinations/pc_sfifo_1.cil-1+token_ring.03.cil-2.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_priority_queue_init_dynamic_harness.i LP64 true +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--rc--keymaps--rc-pctv-sedna.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__expected__cover_proof_havoc_object.i LP64 false +Termination-MainControlFlow termination-nla/ps3-both-t.c ILP32 unknown +Termination-MainHeap termination-memory-alloca/openbsd_cstpcpy-alloca-2.i LP64 unknown +Arrays array-patterns/array16_pattern.c ILP32 true +Floats neural-networks/poly_64_64_thresh_0_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-113.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.protocols.4.prop1-func-interl.c LP64 false +Heap memsafety-cve/openNDS_1Fixed.i ILP32 unknown +Loops nla-digbench-scaling/prodbin-ll_unwindbound100.c ILP32 true +ProductLines product-lines/email_spec6_product34.cil.c ILP32 false +Combinations combinations/pc_sfifo_1.cil-2+token_ring.06.cil-1.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_priority_queue_remove_harness_negated.i LP64 false +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--rc--keymaps--rc-powercolor-real-angel.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__unexpected__cover_proof_havoc_object.i LP64 false +Termination-MainControlFlow termination-numeric/Avg_true.c LP64 unknown +Termination-MainHeap termination-memory-alloca/openbsd_cstrncat-alloca-1.i LP64 unknown +Arrays array-patterns/array29_pattern.c ILP32 true +Floats neural-networks/robot_5_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-125.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.rushhour.1.prop1-func-interl.c LP64 false +Heap memsafety-cve/radare2Fixed.i ILP32 unknown +Loops nla-digbench-scaling/ps2-ll_valuebound5.c ILP32 true +ProductLines product-lines/email_spec7_product24.cil.c ILP32 true +Combinations combinations/pc_sfifo_2.cil-1+token_ring.02.cil-2.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_priority_queue_size_harness.i LP64 true +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--rc--keymaps--rc-technisat-usb2.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__unexpected__cover_proof_havoc_object.i LP64 false +Termination-MainControlFlow termination-numeric/TerminatorRec02.c LP64 unknown +Termination-MainHeap termination-memory-alloca/selectionsort-alloca-2.i LP64 unknown +Arrays array-programs/copysome1-1.i ILP32 true +Floats neural-networks/softplus_0_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-136.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.sokoban.1.prop1-func-interl.c LP64 false +Heap memsafety-cve/sofia-sip_2.i ILP32 unknown +Loops nla-digbench-scaling/ps4-ll_valuebound10.c ILP32 true +ProductLines product-lines/email_spec7_product33.cil.c ILP32 false +Combinations combinations/pc_sfifo_2.cil-1+token_ring.13.cil-1.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_ring_buffer_init_harness.i LP64 true +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--media--rc--keymaps--rc-twinhan1027.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__invalid_input_handoff_range__safety_requirement_havoc_object.i LP64 true +Termination-MainControlFlow termination-restricted-15/Log.c LP64 unknown +Termination-MainHeap termination-memory-linkedlists/cll_search-alloca-1.i LP64 unknown +Arrays array-tiling/mlceu.c ILP32 false +Floats neural-networks/softsign_w32_r4_case_1_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_wrappers_wrapper_ap_file-148.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.szymanski.4.prop1-back-serstep.c LP64 false +Heap memsafety-ext/skiplist_3lvl.i ILP32 unknown +Loops nla-digbench-scaling/ps6-ll_unwindbound5.c ILP32 false +ProductLines product-lines/email_spec8_product21.cil.c ILP32 false +Combinations combinations/pc_sfifo_3.cil+token_ring.03.cil-1.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_string_destroy_harness_negated.i LP64 true +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--misc--apds9802als.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_handoff_version__cover_entry_havoc_memory.i LP64 false +Termination-MainControlFlow termination-restricted-15/PastaB17.c LP64 unknown +Termination-MainHeap termination-recursive-malloc/chunk1-2.i LP64 unknown +Arrays array-tiling/revcpyswp2.c ILP32 true +Floats neural-networks/sqrt_1_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-159.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.twocount32.c LP64 false +Heap memsafety-ext3/freeAlloca.c ILP32 unknown +Loops nla-digbench/bresenham.c ILP32 unknown +ProductLines product-lines/email_spec8_product33.cil.c ILP32 false +Combinations combinations/pc_sfifo_3.cil+token_ring.13.cil-2.c ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_string_eq_c_str_harness.i LP64 true +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--mtd--tests--mtd_subpagetest.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__unexpected__cover_entry_havoc_memory.i LP64 false +Termination-MainControlFlow termination-restricted-15/a.06.c LP64 unknown +Termination-MainHeap termination-recursive-malloc/rec_malloc_ex1.i LP64 unknown +Arrays reducercommutativity/max.i ILP32 true +Floats neural-networks/tanh_w32_r2_case_1_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_wrappers_wrapper_s_file-170.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.vcegar_arrays_itc99_b12_p2.c LP64 true +Heap memsafety/test-0102-1.i ILP32 unknown +Loops nla-digbench/geo2-ll.c ILP32 true +ProductLines product-lines/email_spec9_product20.cil.c ILP32 false +Combinations combinations/square_4+soft_float_3a.c.cil.c ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_string_new_from_c_str_harness_negated.i LP64 false +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--usb--misc--trancevibrator.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_num_tdcx__cover_entry_havoc_memory.i LP64 true +Termination-MainControlFlow termination-restricted-15/b.09-no-inv_assume.c LP64 unknown +Arrays reducercommutativity/sep40-1.i ILP32 true +Floats neural-networks/tanh_w8_r4_case_0_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-182.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.vis_arrays_vsa16a_p7.c LP64 false +Heap memsafety/test-0235-2.i ILP32 unknown +Loops nla-digbench/ps5-ll.c ILP32 true +ProductLines product-lines/email_spec9_product32.cil.c ILP32 false +Combinations combinations/square_7+soft_float_3a.c.cil.c ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/sliced_aws_byte_cursor_eq_c_str_ignore_case_harness.i LP64 true +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/43_1a_cilled_ok_nondet_linux-43_1a-drivers--w1--slaves--w1_ds2760.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_td_state__cover_proof_havoc_memory.i LP64 false +Termination-MainControlFlow termination-restricted-15/c.02.c LP64 unknown +Arrays array-cav19/array_init_pair_symmetr2.c ILP32 true +Floats float-benchs/cast_union_tight.c ILP32 false +Hardness hardness/hardness_codemodifications_dependencies_file-145.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.adding.1.prop1-func-interl.c LP64 false +Heap forester-heap/dll-circular-1.i ILP32 false +Loops loop-acceleration/array_4.i ILP32 true +ProductLines product-lines/elevator_spec14_product11.cil.c ILP32 true +Combinations combinations/Problem05_label40+token_ring.05.cil-1.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_add_size_checked_harness_negated.i LP64 false +SoftwareSystems-DeviceDriversLinux64 ldv-consumption/32_7a_cilled_linux-3.8-rc1-32_7a-drivers--media--dvb-frontends--stv090x.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_mr_report__expected__cover_proof_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted-lit/AliasDarteFeautrierGonnord-SAS2010-Fig2b.c LP64 unknown +Arrays array-crafted/bAnd2.i ILP32 true +Floats float-benchs/filter2_set.c ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-61.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.anderson.4.prop1-func-interl.c LP64 true +Heap forester-heap/dll-rb-cnstr_1-1.i ILP32 true +Loops loop-crafted/simple_array_index_value_2.i ILP32 true +Combinations combinations/Problem05_label41+token_ring.02.cil-1.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_array_eq_c_str_ignore_case_harness.i LP64 true +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--hwmon--gpio-fan.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_mr_report__unexpected__safety_requirement_havoc_memory.i LP64 true +Termination-MainControlFlow termination-crafted-lit/AliasDarteFeautrierGonnord-SAS2010-cousot9.c LP64 unknown +Arrays array-crafted/bor4.i ILP32 true +Floats float-benchs/inv_Newton-2.c ILP32 false +Hardness hardness/hardness_codemodifications_functionizing_file-156.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w8_d128_e0.c LP64 false +Heap forester-heap/dll-simple-white-blue-2.i ILP32 true +Loops loop-invariants/linear-inequality-inv-a.c ILP32 true +Combinations combinations/Problem05_label41+token_ring.13.cil-2.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_array_eq_ignore_case_harness.i LP64 true +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--macintosh--mac_hid.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_servtd_wr__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted-lit/AliasDarteFeautrierGonnord-SAS2010-ndecr.c LP64 unknown +Arrays array-crafted/mapsum2.i ILP32 true +Floats float-benchs/rlim_invariant.c.v+lhb-reducer.c ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-72.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n4_w16_d64_e0.c LP64 false +Heap forester-heap/sll-01-2.i ILP32 false +Loops loop-invgen/apache-get-tag.i.v+lhb-reducer.c ILP32 true +Combinations combinations/Problem05_label42+token_ring.05.cil-2.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_array_list_clean_up_harness.i LP64 true +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--dvb--frontends--tua6100.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_sys_rd__expected__cover_proof_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted-lit/AliasDarteFeautrierGonnord-SAS2010-rsd.c LP64 unknown +Arrays array-crafted/xor4.i ILP32 true +Floats float-benchs/sqrt_biNewton_pseudoconstant.c ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-168.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.at.4.prop1-func-interl.c LP64 true +Heap forester-heap/sll-optional-2.i ILP32 false +Loops loop-invgen/large_const.i ILP32 true +Combinations combinations/Problem05_label42+token_ring.11.cil-1.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_array_list_comparator_string_harness_negated.i LP64 false +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.4-simple/32_1_cilled_ok_nondet_linux-3.4-32_1-drivers--media--rc--keymaps--rc-asus-pc39.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_sys_rd__unexpected__cover_proof_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted-lit/AliasDarteFeautrierGonnord-SAS2010-while2.c LP64 unknown +Arrays array-crafted/zero_sum_const2.c ILP32 true +Floats float-newlib/double_req_bl_0660b.c ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-84.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.bakery.6.prop1-func-interl.c LP64 false +Heap forester-heap/sll-rb-sentinel-2.i ILP32 false +Loops loop-lit/css2003.i ILP32 true +Combinations combinations/Problem05_label43+token_ring.02.cil-1.c ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_array_list_erase_harness_negated.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__invalid_input_field_id__cover_exit_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted-lit/BrockschmidtCookFuhs-CAV2013-Fig1.c LP64 unknown +Arrays array-crafted/zero_sum_m2.c ILP32 true +Floats float-newlib/double_req_bl_0684b.c ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-179.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.brp.1.prop1-func-interl.c LP64 true +Heap forester-heap/sll-token-1.i ILP32 false +Loops loop-lit/hhk2008.i ILP32 true +Combinations combinations/Problem05_label43+token_ring.07.cil-2.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_array_list_get_at_ptr_harness.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__unconstrained__cover_exit_success_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted-lit/ChawdharyCookGulwaniSagivYang-ESOP2008-aaron4.c LP64 unknown +Arrays array-examples/relax-2-2.i ILP32 true +Floats float-newlib/double_req_bl_1122a.c ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-95.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.2.prop1-func-interl.c LP64 false +Heap heap-data/process_queue.i ILP32 true +Loops loop-new/gauss_sum.i.v+cfa-reducer.c ILP32 true +Combinations combinations/Problem05_label43+token_ring.12.cil-2.c ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_array_list_length_harness.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__expected__cover_exit_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted-lit/ChenFlurMukhopadhyay-SAS2012-Ex1.01.c LP64 unknown +Arrays array-examples/sanfoundry_43_ground.i ILP32 true +Floats float-newlib/float_req_bl_0660b.c ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-190.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.5.prop2-back-serstep.c LP64 true +Heap heap-manipulation/bubble_sort_linux-2.i ILP32 false +Loops loop-zilu/benchmark02_linear.i ILP32 true +Combinations combinations/Problem05_label44+token_ring.07.cil-1.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_array_list_pop_front_harness_negated.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__invalid_input_gpa__safety_requirement_havoc_object.i LP64 true +Termination-MainControlFlow termination-crafted-lit/ChenFlurMukhopadhyay-SAS2012-Ex2.03.c LP64 unknown +Arrays array-examples/standard_compareModified_ground.i ILP32 true +Floats float-newlib/float_req_bl_0684b.c ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-105.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal103.c LP64 true +Heap heap-manipulation/sll_to_dll_rev-1.i ILP32 false +Loops loop-zilu/benchmark12_linear.i ILP32 unknown +Combinations combinations/Problem05_label45+token_ring.02.cil-2.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_array_list_set_at_harness_negated.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__unexpected__cover_entry_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted-lit/ChenFlurMukhopadhyay-SAS2012-Ex2.09.c LP64 unknown +Arrays array-examples/standard_copy3_ground-2.i ILP32 false +Floats float-newlib/float_req_bl_0920a.c ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-21.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal120.c LP64 true +Heap ldv-memsafety/memleaks_test1-1.i ILP32 unknown +Loops loop-zilu/benchmark24_conjunctive.i ILP32 unknown +Combinations combinations/Problem05_label45+token_ring.08.cil-1.c ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_array_list_swap_contents_harness.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_vmcall__invalid_input_bitmap__cover_exit_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted-lit/ChenFlurMukhopadhyay-SAS2012-Ex2.15.c LP64 unknown +Arrays array-examples/standard_copy7_ground-2.i ILP32 true +Floats float-newlib/float_req_bl_1270a.c ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-116.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal137.c LP64 true +Heap ldv-memsafety/memleaks_test11_1.i ILP32 unknown +Loops loop-zilu/benchmark34_conjunctive.i ILP32 true +Combinations combinations/Problem05_label45+token_ring.13.cil-1.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_buf_append_dynamic_harness.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_vmcall__unexpected__safety_requirement_havoc_memory.i LP64 true +Termination-MainControlFlow termination-crafted-lit/ChenFlurMukhopadhyay-SAS2012-Ex2.21.c LP64 unknown +Arrays array-examples/standard_find_ground-2.i ILP32 unknown +Floats floats-cbmc-regression/float19.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-33.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal154.c LP64 true +Heap ldv-memsafety/memleaks_test13_2.i ILP32 unknown +Loops loop-zilu/benchmark45_disjunctive.i ILP32 unknown +Combinations combinations/Problem05_label46+token_ring.04.cil-2.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_buf_append_with_lookup_harness_negated.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_export_restore__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted-lit/ChenFlurMukhopadhyay-SAS2012-Ex3.06.c LP64 unknown +Arrays array-examples/standard_partition_original_ground.i ILP32 true +Floats floats-cdfpl/newton_1_7.i ILP32 false +Hardness hardness/hardness_fillercode_filler_pr_ci_file-128.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal170.c LP64 true +Heap ldv-memsafety/memleaks_test15-2.i ILP32 unknown +Loops loops-crafted-1/in-de31.c ILP32 true +Combinations combinations/Problem05_label46+token_ring.09.cil-2.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_buf_clean_up_secure_harness_negated.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_import_abort__expected__cover_proof_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted-lit/ChenFlurMukhopadhyay-SAS2012-Fig1.c LP64 unknown +Arrays array-examples/standard_strcmp_ground.i ILP32 true +Floats floats-cdfpl/newton_3_4.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-44.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal188.c LP64 true +Heap ldv-memsafety/memleaks_test17_2-1.i ILP32 unknown +Loops loops-crafted-1/nested_delay_nd.c ILP32 true +Combinations combinations/Problem05_label47+token_ring.01.cil-1.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_buf_eq_harness_negated.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_import_abort__unexpected__safety_requirement_havoc_object.i LP64 true +Termination-MainControlFlow termination-crafted-lit/CookSeeZuleger-TACAS2013-Fig8b.c LP64 unknown +Arrays array-examples/standard_two_index_04.i ILP32 true +Floats floats-cdfpl/square_2.i ILP32 false +Hardness hardness/hardness_fillercode_filler_pr_cn_file-139.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal203.c LP64 true +Heap ldv-memsafety/memleaks_test18_3.i ILP32 unknown +Loops loops-crafted-1/sumt9.c ILP32 true +Combinations combinations/Problem05_label47+token_ring.11.cil-2.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_buf_from_c_str_harness.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_input_tdcx_pa__cover_proof_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted-lit/HarrisLalNoriRajamani-SAS2010-Fig2.c LP64 unknown +Arrays array-examples/standard_vector_difference_ground.i ILP32 true +Floats floats-esbmc-regression/trunc_nondet_2.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-56.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal221.c LP64 true +Heap ldv-memsafety/memleaks_test21-2.i ILP32 unknown +Loops loops/insertion_sort-1-2.c ILP32 false +Combinations combinations/Problem05_label48+token_ring.09.cil-1.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_buf_init_copy_from_cursor_harness_negated.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_lifecycle__cover_exit_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted-lit/HeizmannHoenickeLeikePodelski-ATVA2013-Fig7.c LP64 unknown +Arrays array-fpi/brs4f.c ILP32 false +Floats floats-nonlinear/coral-benchmark21.c ILP32 false +Hardness hardness/hardness_fillercode_filler_pr_co_file-150.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal26.c LP64 true +Heap ldv-memsafety/memleaks_test22_3-2.i ILP32 unknown +Loops loops/n.c24.i ILP32 false +Combinations combinations/Problem05_label49+token_ring.03.cil-2.c ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_buf_reserve_harness_negated.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_num_tdcx__safety_requirement_havoc_object.i LP64 true +Termination-MainControlFlow termination-crafted-lit/LeeJonesBen-Amram-POPL2001-Ex1.c LP64 unknown +Arrays array-fpi/condg.c ILP32 true +Floats neural-networks/cartpole_12_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-67.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal43.c LP64 true +Heap ldv-memsafety/memleaks_test23_4.i ILP32 unknown +Loops loops/sum_array-1.c ILP32 unknown +Combinations combinations/Problem05_label49+token_ring.09.cil-1.c ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_buf_secure_zero_harness.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_td_state__safety_requirement_havoc_memory.i LP64 true +Termination-MainControlFlow termination-crafted-lit/LeikeHeizmann-TACAS2014-Ex1.c LP64 unknown +Arrays array-fpi/eqn2.c ILP32 true +Floats neural-networks/cartpole_25_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-161.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal6.c LP64 true +Heap ldv-memsafety/memleaks_test5_1.i ILP32 unknown +Loops loops/trex01-2.i ILP32 true +Combinations combinations/Problem05_label49+token_ring.14.cil.c ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_buf_write_be64_harness.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__unexpected__safety_requirement_havoc_object.i LP64 true +Termination-MainControlFlow termination-crafted-lit/LeikeHeizmann-WST2014-Ex6.c LP64 unknown +Arrays array-fpi/eqn5f.c ILP32 false +Floats neural-networks/cartpole_37_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-79.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal77.c LP64 true +Heap ldv-memsafety/memleaks_test7-1.i ILP32 unknown +Loops nla-digbench-scaling/bresenham-ll_unwindbound1.c ILP32 false +Combinations combinations/gcd_1+newton_2_2.i ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_buf_write_from_whole_cursor_harness.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_input_rdx__safety_requirement_havoc_memory.i LP64 true +Termination-MainControlFlow termination-crafted-lit/PodelskiRybalchenko-LICS2004-Fig1.c LP64 unknown +Arrays array-fpi/ifeqn3f.c ILP32 false +Floats neural-networks/cartpole_49_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-173.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal93.c LP64 true +Heap ldv-memsafety/memleaks_test9_1.i ILP32 unknown +Loops nla-digbench-scaling/bresenham-ll_valuebound5.c ILP32 true +Combinations combinations/gcd_1+newton_3_4.i ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_buf_write_u8_harness.i LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_state_tdr_page__cover_proof_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted-lit/PodelskiRybalchenko-TACAS2011-Fig4.c LP64 unknown +Arrays array-fpi/indp1f.c ILP32 false +Floats neural-networks/cartpole_60_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-9.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cambridge.4.prop1-back-serstep.c LP64 true +Heap ldv-regression/rule57_ebda_blast.i ILP32 true +Loops nla-digbench-scaling/cohencu-ll_valuebound2.c ILP32 true +Combinations combinations/gcd_2+newton_1_7.i ILP32 False +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_cursor_advance_nospec_harness_negated.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__expected__cover_exit_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted-lit/cstrcmp.c LP64 unknown +Arrays array-fpi/indp5f.c ILP32 false +Floats neural-networks/cartpole_73_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-184.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w16_d128_e0.c LP64 false +Heap ldv-regression/test11.c ILP32 true +Loops nla-digbench-scaling/cohendiv-ll_valuebound10.c ILP32 true +Combinations combinations/gcd_2+newton_3_1.i ILP32 True +SoftwareSystems-AWS-C-Common aws-c-common/aws_byte_cursor_eq_byte_buf_harness_negated.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_input_tdr_pa__safety_requirement_havoc_object.i LP64 true +Termination-MainControlFlow termination-crafted-lit/gcd1.c LP64 unknown +Arrays array-fpi/ms1.c ILP32 true +Floats neural-networks/cartpole_85_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-10.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w8_d8_e0.c LP64 false +Heap ldv-regression/test22-1.c ILP32 true +Loops nla-digbench-scaling/dijkstra-u_valuebound1.c ILP32 true +Combinations combinations/gcd_3+newton_1_4.i ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_no_tdcx__cover_proof_havoc_memory.i LP64 true +Termination-MainControlFlow termination-crafted/4NestedWith3Variables-2.c LP64 unknown +Arrays array-fpi/ms5.c ILP32 true +Floats neural-networks/cartpole_97_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-196.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cyclic_scheduler.1.prop1-back-serstep.c LP64 true +Heap ldv-regression/test24-2.c ILP32 false +Loops nla-digbench-scaling/divbin2_unwindbound5.i ILP32 true +Combinations combinations/gcd_3+newton_2_6.i ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_pamt_metadata__cover_entry_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted/Bangalore-1.c LP64 unknown +Arrays array-fpi/nsqmf.c ILP32 false +Floats neural-networks/dubinsrejoin_10_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-110.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.driving_phils.5.prop1-func-interl.c LP64 false +Heap ldv-regression/test28-2.c ILP32 true +Loops nla-digbench-scaling/divbin_unwindbound2.i ILP32 true +Combinations combinations/gcd_4+newton_1_1.i ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__unconstrained__cover_exit_success_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted/Benghazi_nondet-2.c LP64 unknown +Arrays array-fpi/res2f.c ILP32 false +Floats neural-networks/dubinsrejoin_23_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-27.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.eq_sdp_v1.c LP64 true +Heap ldv-sets/test_mutex_double_lock.i ILP32 false +Loops nla-digbench-scaling/egcd-ll_unwindbound10.c ILP32 false +Combinations combinations/gcd_4+newton_2_3.i ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_input_tdr_hkid__cover_entry_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted/Collatz.c LP64 unknown +Arrays array-fpi/s1lif.c ILP32 true +Floats neural-networks/dubinsrejoin_35_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-122.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.extinction.1.prop1-func-interl.c LP64 true +Heap list-ext-properties/960521-1_1-2.i ILP32 unknown +Loops nla-digbench-scaling/egcd-ll_valuebound50.c ILP32 true +Combinations combinations/gcd_4+newton_3_6.i ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_state_tdr_lifecycle__cover_exit_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted/Gothenburg_v2-1.c LP64 unknown +Arrays array-fpi/s32if.c ILP32 true +Floats neural-networks/dubinsrejoin_48_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-39.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.firewire_tree.2.prop3-back-serstep.c LP64 false +Heap list-ext-properties/list-ext_flag_1.i ILP32 unknown +Loops nla-digbench-scaling/egcd2-ll_valuebound20.c ILP32 true +Combinations combinations/pals_lcr.3.1.ufo.UNBOUNDED.pals+Problem12_label04.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted/LexIndexValue-Array-2.c LP64 unknown +Arrays array-fpi/s42iff.c ILP32 false +Floats neural-networks/dubinsrejoin_5_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-133.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.firewire_tree.5.prop3-func-interl.c LP64 true +Loops nla-digbench-scaling/egcd3-ll_valuebound100.c ILP32 true +Combinations combinations/pals_lcr.3.ufo.BOUNDED-6.pals+Problem12_label08.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_input_tdr_hkid__cover_proof_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted/McCarthy91_Recursion.c LP64 unknown +Arrays array-fpi/s4liff_overflow.c ILP32 unknown +Floats neural-networks/dubinsrejoin_72_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-5.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.frogs.3.prop1-back-serstep.c LP64 false +Loops nla-digbench-scaling/fermat1-ll_valuebound1.c ILP32 true +Combinations combinations/pals_lcr.3.ufo.UNBOUNDED.pals+Problem12_label08.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_state_tdr_metadata__cover_entry_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted/NestedRecursion_1a-1.c LP64 unknown +Arrays array-fpi/s5iff.c ILP32 false +Floats neural-networks/dubinsrejoin_84_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_kloop_100_while_file-145.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.gear.2.prop3-func-interl.c LP64 false +Loops nla-digbench-scaling/fermat2-ll_unwindbound50.c ILP32 false +Combinations combinations/pals_lcr.4.1.ufo.BOUNDED-8.pals+Problem12_label09.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__unexpected__cover_proof_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted/NonTermination2.c LP64 unknown +Arrays array-fpi/sina2.c ILP32 true +Floats neural-networks/dubinsrejoin_9_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-61.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.h_Vsa16.c LP64 true +Loops nla-digbench-scaling/freire1_valuebound20.c ILP32 true +Combinations combinations/pals_lcr.4.ufo.BOUNDED-8.pals+Problem12_label04.c ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_input_tdr_hkid__cover_exit_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted/NonTerminationSimple8.c LP64 unknown +Arrays array-fpi/sina5f.c ILP32 false +Floats neural-networks/exp_1_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-156.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.iprotocol.1.prop1-func-interl.c LP64 false +Loops nla-digbench-scaling/geo1-ll2_unwindbound100.c ILP32 unknown +Combinations combinations/pals_lcr.4.ufo.UNBOUNDED.pals+Problem12_label05.c ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_state_tdr_lifecycle__cover_exit_havoc_object.i LP64 false +Termination-MainControlFlow termination-crafted/Pure2Phase-1.c LP64 unknown +Arrays array-fpi/ss2f.c ILP32 false +Floats neural-networks/gcas_6_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_kloop_25_1loop_file-72.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.krebs.2.prop1-func-interl.c LP64 false +Loops nla-digbench-scaling/geo1-ll_unwindbound20.c ILP32 true +Combinations combinations/pals_lcr.5.1.ufo.BOUNDED-10.pals+Problem12_label01.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__unexpected__cover_exit_havoc_memory.i LP64 false +Termination-MainControlFlow termination-crafted/RecursiveNonterminating-2.c LP64 unknown +Arrays array-industry-pattern/array_monotonic.i ILP32 true +Floats neural-networks/log_3_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_kloop_25_while_file-168.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.lamport_nonatomic.1.prop1-back-serstep.c LP64 true +Loops nla-digbench-scaling/geo1-u2_unwindbound100.c ILP32 unknown +Combinations combinations/pals_lcr.5.ufo.BOUNDED-10.pals+Problem12_label01.c ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__expected__safety_requirement_havoc_object.i LP64 true +Arrays array-industry-pattern/array_ptr_single_elem_init-2.i ILP32 false +Floats neural-networks/lunarlander_0_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_kloop_25_while_file-84.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.lann.5.prop1-back-serstep.c LP64 true +Loops nla-digbench-scaling/geo1-u_unwindbound20.c ILP32 false +Combinations combinations/pals_lcr.5.ufo.UNBOUNDED.pals+Problem12_label01.c ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_lifecycle__cover_proof_havoc_memory.i LP64 false +Arrays array-lopstr16/single_elem_safe.i ILP32 true +Floats neural-networks/lunarlander_21_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_kloop_50_1loop_file-179.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.leader_election.6.prop1-func-interl.c LP64 false +Loops nla-digbench-scaling/geo2-ll2_unwindbound100.c ILP32 unknown +Combinations combinations/pals_lcr.5_overflow.ufo.UNBOUNDED.pals+Problem12_label04.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_td_state__cover_entry_havoc_object.i LP64 false +Arrays array-memsafety/array02-alloca-2.i ILP32 unknown +Floats neural-networks/lunarlander_33_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_kloop_50_1loop_file-95.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.lifts.2.prop1-func-interl.c LP64 true +Loops nla-digbench-scaling/geo2-ll_unwindbound20.c ILP32 true +Combinations combinations/pals_lcr.6.1.ufo.UNBOUNDED.pals+Problem12_label04.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__unconstrained__cover_exit_success_havoc_memory.i LP64 false +Arrays array-memsafety/cstrchr-alloca-2.i ILP32 unknown +Floats neural-networks/lunarlander_45_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_kloop_50_while_file-190.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.lup.1.prop1-back-serstep.c LP64 true +Loops nla-digbench-scaling/geo3-ll2_unwindbound100.c ILP32 unknown +Combinations combinations/pals_lcr.6.ufo.BOUNDED-12.pals+Problem12_label08.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__expected__cover_entry_havoc_object.i LP64 false +Arrays array-memsafety/cstrncat_unsafe.c ILP32 unknown +Floats neural-networks/lunarlander_57_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_operatoramount_amount100_file-105.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.mcs.6.prop1-back-serstep.c LP64 true +Loops nla-digbench-scaling/geo3-ll_unwindbound20.c ILP32 true +Combinations combinations/pals_lcr.6.ufo.UNBOUNDED.pals+Problem12_label08.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_input_pa__safety_requirement_havoc_memory.i LP64 true +Arrays array-memsafety/diff-alloca-2.i ILP32 unknown +Floats neural-networks/lunarlander_69_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_operatoramount_amount100_file-21.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.needham.1.prop1-back-serstep.c LP64 false +Loops nla-digbench-scaling/hard-ll_unwindbound100.c ILP32 false +Combinations combinations/pals_lcr.7.1.ufo.BOUNDED-14.pals+Problem12_label09.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_state_lifecycle__cover_exit_havoc_object.i LP64 false +Arrays array-memsafety/mult_array_unsafe.i ILP32 unknown +Floats neural-networks/lunarlander_81_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_operatoramount_amount10_file-116.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.needham.3.prop2-back-serstep.c LP64 true +Loops nla-digbench-scaling/hard-u_unwindbound1.c ILP32 false +Combinations combinations/pals_lcr.7.ufo.BOUNDED-14.pals+Problem12_label04.c ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +Arrays array-memsafety/openbsd_cstrcat-alloca-2.i ILP32 unknown +Floats neural-networks/lunarlander_92_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-33.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.peg_solitaire.2.prop1-func-interl.c LP64 false +Loops nla-digbench-scaling/hard-u_valuebound5.c ILP32 true +Combinations combinations/pals_lcr.7.ufo.UNBOUNDED.pals+Problem12_label05.c ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__expected__cover_exit_havoc_object.i LP64 false +Arrays array-memsafety/openbsd_cstrncpy-alloca-2.i ILP32 unknown +Floats neural-networks/poly_1024_thresh_5_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_operatoramount_amount250_file-128.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.peterson.5.prop1-func-interl.c LP64 false +Loops nla-digbench-scaling/hard2_valuebound2.c ILP32 true +Combinations combinations/pals_lcr.8.1.ufo.BOUNDED-16.pals+Problem12_label01.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_input_num_ptr__cover_entry_havoc_memory.i LP64 false +Arrays array-memsafety/selectionsort-alloca-1.i ILP32 unknown +Floats neural-networks/poly_16_16_16_16_thresh_0_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-44.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.2.prop6-back-serstep.c LP64 true +Loops nla-digbench-scaling/knuth_valuebound100.i ILP32 true +Combinations combinations/pals_lcr.8.ufo.BOUNDED-16.pals+Problem12_label01.c ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_state_lp_state__cover_proof_havoc_object.i LP64 false +Arrays array-multidimensional/add-2-n-u.c ILP32 true +Floats neural-networks/poly_16_16_thresh_2_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-139.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.5.prop1-func-interl.c LP64 true +Loops nla-digbench-scaling/lcm1_valuebound10.c ILP32 true +Combinations combinations/pals_lcr.8.ufo.UNBOUNDED.pals+Problem12_label01.c ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_state_tdmr_info__cover_exit_havoc_object.i LP64 false +Arrays array-multidimensional/diff-3-n-u.c ILP32 true +Floats neural-networks/poly_32_32_32_32_thresh_3_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_operatoramount_amount25_file-56.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.7.prop5-back-serstep.c LP64 true +Loops nla-digbench-scaling/lcm2_valuebound1.c ILP32 true +Combinations combinations/pals_lcr.8_overflow.ufo.UNBOUNDED.pals+Problem12_label04.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__unexpected__safety_requirement_havoc_memory.i LP64 true +Arrays array-multidimensional/min-2-u.c ILP32 true +Floats neural-networks/poly_32_32_thresh_4_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_operatoramount_amount500_file-150.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.plc.2.prop2-func-interl.c LP64 true +Loops nla-digbench-scaling/mannadiv_unwindbound5.c ILP32 false +Combinations combinations/pc_sfifo_1.cil-1+token_ring.08.cil-1.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__invalid_input_rcx__cover_exit_havoc_object.i LP64 false +Arrays array-patterns/array12_pattern.c ILP32 true +Floats neural-networks/poly_512_thresh_5_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_operatoramount_amount500_file-67.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.production_cell.6.prop1-back-serstep.c LP64 false +Loops nla-digbench-scaling/prod4br-ll_valuebound2.c ILP32 true +Combinations combinations/pc_sfifo_1.cil-2+token_ring.03.cil-2.c ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +Arrays array-patterns/array1_pattern.c ILP32 true +Floats neural-networks/poly_8_8_8_8_thresh_1_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-161.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.recount4.c LP64 false +Loops nla-digbench-scaling/prodbin-ll_valuebound10.c ILP32 true +Combinations combinations/pc_sfifo_1.cil-2+token_ring.08.cil-2.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__expected__cover_exit_havoc_object.i LP64 false +Arrays array-patterns/array25_pattern.c ILP32 true +Floats neural-networks/relu_2_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-79.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.rether.4.prop1-back-serstep.c LP64 false +Loops nla-digbench-scaling/ps2-ll_unwindbound50.c ILP32 true +Combinations combinations/pc_sfifo_1.cil-2+token_ring.14.cil.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +Arrays array-patterns/array3_pattern.c ILP32 true +Floats neural-networks/sin_2_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-173.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.schedule_world.1.prop1-back-serstep.c LP64 false +Loops nla-digbench-scaling/ps3-ll_unwindbound20.c ILP32 true +Combinations combinations/pc_sfifo_2.cil-1+token_ring.05.cil-1.c ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__expected__cover_exit_havoc_object.i LP64 false +Arrays array-patterns/array7_pattern.c ILP32 true +Floats neural-networks/softmax_3_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_wrappers_normal_file-9.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w64_d32_e0.c LP64 false +Loops nla-digbench-scaling/ps4-ll_unwindbound100.c ILP32 false +Combinations combinations/pc_sfifo_2.cil-1+token_ring.10.cil-2.c ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__invalid_input_handoff_range__cover_entry_havoc_memory.i LP64 false +Arrays array-programs/partial_mod_count_limited_1.c ILP32 true +Floats neural-networks/softsign_1_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-184.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.sw_loop_v.c LP64 false +Loops nla-digbench-scaling/ps5-ll_unwindbound1.c ILP32 false +Combinations combinations/pc_sfifo_2.cil-2+token_ring.02.cil-1.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__unexpected__cover_proof_havoc_memory.i LP64 false +Floats neural-networks/softsign_w32_r1_case_0_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_wrappers_wrapper_ap_file-10.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.synapse.6.prop1-func-interl.c LP64 true +Loops nla-digbench-scaling/ps5-ll_valuebound50.c ILP32 true +Combinations combinations/pc_sfifo_2.cil-2+token_ring.13.cil-2.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_handoff_data__cover_entry_havoc_object.i LP64 false +Floats neural-networks/softsign_w4_r3_case_1_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_wrappers_wrapper_ap_file-196.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.telephony.3.prop1-func-interl.c LP64 false +Loops nla-digbench-scaling/ps6-ll_valuebound20.c ILP32 true +Combinations combinations/pc_sfifo_3.cil+token_ring.05.cil-2.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_handoff_version__safety_requirement_havoc_memory.i LP64 true +Floats neural-networks/softsign_w8_r2_case_0_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-110.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.train-gate.4.prop1-func-interl.c LP64 true +Loops nla-digbench-scaling/sqrt1-ll_valuebound100.c ILP32 true +Combinations combinations/pc_sfifo_3.cil+token_ring.11.cil-1.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_sys_state__cover_exit_havoc_object.i LP64 false +Floats neural-networks/tanh_0_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-27.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.vcegar_QF_BV_itc99_b13_p02.c LP64 true +Loops nla-digbench/dijkstra.c ILP32 unknown +Combinations combinations/square_1+soft_float_3a.c.cil.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__unexpected__safety_requirement_havoc_memory.i LP64 true +Floats neural-networks/tanh_w16_r3_case_0_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-122.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.vcegar_QF_BV_itc99_b13_p21.c LP64 true +Loops nla-digbench/fermat2.c ILP32 unknown +Combinations combinations/square_3+soft_float_4-2a.c.cil.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_lifecycle__cover_entry_havoc_object.i LP64 false +Floats neural-networks/tanh_w4_r2_case_0_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-39.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.vis_QF_BV_s1269b_p3.c LP64 true +Loops nla-digbench/hard-ll.c ILP32 true +Combinations combinations/square_5+soft_float_1-3a.c.cil.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_num_tdcx__safety_requirement_havoc_memory.i LP64 true +Floats neural-networks/tanh_w64_r4_case_1_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-134.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.vis_arrays_field5.c LP64 true +Loops nla-digbench/ps2-ll.c ILP32 true +Combinations combinations/square_6+soft_float_4-3a.c.cil.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_pamt_metadata__cover_exit_havoc_object.i LP64 false +Floats neural-networks/vdp_3_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_wrappers_wrapper_sp_file-50.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.vis_arrays_vsaR_p08.c LP64 true +Loops verifythis/duplets.c ILP32 true +Combinations combinations/square_8+soft_float_1-3a.c.cil.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__unexpected__cover_entry_havoc_object.i LP64 false +Floats float-benchs/cast_float_ptr.c ILP32 false +Hardness hardness/hardness_codemodifications_dependencies_file-120.i ILP32 true +Hardware hardware-verification-array/btor2c-lazyMod.unsafe_linked_list_fifo_n2d4.c LP64 false +Loops loop-acceleration/array_2-2.i ILP32 true +Combinations combinations/Problem05_label40+token_ring.02.cil-1.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_mr_report__expected__cover_exit_havoc_memory.i LP64 false +Floats float-benchs/divmul_diverge.c ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-169.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.adding.3.prop1-func-interl.c LP64 false +Loops loop-acceleration/diamond_2-2.c ILP32 true +Combinations combinations/Problem05_label40+token_ring.07.cil-1.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_mr_report__unconstrained__cover_exit_success_havoc_memory.i LP64 false +Floats float-benchs/filter2.c ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-37.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.anderson.2.prop1-back-serstep.c LP64 true +Loops loop-acceleration/simple_3-1.c ILP32 false +Combinations combinations/Problem05_label40+token_ring.12.cil-2.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_mr_report__unexpected__cover_exit_havoc_object.i LP64 false +Floats float-benchs/image_filter.c ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-85.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.anderson.7.prop1-back-serstep.c LP64 false +Loops loop-crafted/simple_array_index_value_4.i ILP32 true +Combinations combinations/Problem05_label41+token_ring.05.cil-1.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_servtd_wr__expected__cover_entry_havoc_object.i LP64 false +Floats float-benchs/interpolation2.c.v+nlh-reducer.c ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-131.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w32_d128_e0.c LP64 false +Loops loop-industry-pattern/mod3.c.v+sep-reducer.c ILP32 true +Combinations combinations/Problem05_label41+token_ring.10.cil-2.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_servtd_wr__unconstrained__cover_exit_success_havoc_memory.i LP64 false +Floats float-benchs/inv_sqrt_Quake.c ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-18.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w8_d8_e0.c LP64 false +Loops loop-invariants64/linear-inequality-inv-d.c LP64 true +Combinations combinations/Problem05_label42+token_ring.01.cil-2.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_servtd_wr__unexpected__cover_exit_havoc_memory.i LP64 false +Floats float-benchs/nan_float.c ILP32 false +Hardness hardness/hardness_codemodifications_functionizing_file-48.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n3_w8_d64_e0.c LP64 false +Loops loop-invgen/apache-get-tag.i.p+lhb-reducer.c ILP32 true +Combinations combinations/Problem05_label42+token_ring.04.cil-1.c ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_sys_rd__expected__cover_entry_havoc_object.i LP64 false +Floats float-benchs/sin_interpolated_bigrange_loose.c ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-97.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n4_w8_d64_e0.c LP64 false +Loops loop-invgen/down.i ILP32 true +Combinations combinations/Problem05_label42+token_ring.07.cil-1.c ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_sys_rd__expected__safety_requirement_havoc_object.i LP64 true +Floats float-benchs/sqrt_Householder_interval.c ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-143.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.at.2.prop1-back-serstep.c LP64 false +Loops loop-invgen/id_build.i.v+lhb-reducer.c ILP32 true +Combinations combinations/Problem05_label42+token_ring.09.cil-2.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_sys_rd__unexpected__cover_exit_havoc_memory.i LP64 false +Floats float-benchs/zonotope_3.c.p+cfa-reducer.c ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-191.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.at.6.prop1-func-interl.c LP64 false +Loops loop-invgen/nested9.i ILP32 true +Combinations combinations/Problem05_label42+token_ring.12.cil-1.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__expected__cover_entry_havoc_memory.i LP64 false +Floats float-newlib/double_req_bl_0320.c ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-6.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.bakery.4.prop1-back-serstep.c LP64 false +Loops loop-lit/cggmp2005.i ILP32 true +Combinations combinations/Problem05_label42+token_ring.15.cil.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__expected__safety_requirement_havoc_object.i LP64 true +Floats float-newlib/double_req_bl_0662a.c ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-106.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.bit-vector.c LP64 true +Loops loop-lit/gj2007.c.i.p+lhb-reducer.c ILP32 true +Combinations combinations/Problem05_label43+token_ring.03.cil-2.c ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__invalid_input_field_id__cover_proof_havoc_object.i LP64 false +Floats float-newlib/double_req_bl_0683a.c ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-154.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.bridge.2.prop1-back-serstep.c LP64 false +Loops loop-lit/gsv2008.c.i.v+cfa-reducer.c ILP32 true +Combinations combinations/Problem05_label43+token_ring.06.cil-1.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__invalid_input_rcx__safety_requirement_havoc_memory.i LP64 true +Floats float-newlib/double_req_bl_0870b.c ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-22.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.brp.3.prop1-func-interl.c LP64 false +Loops loop-lit/jm2006_variant.i ILP32 true +Combinations combinations/Problem05_label43+token_ring.08.cil-2.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__unexpected__cover_entry_havoc_memory.i LP64 false +Floats float-newlib/double_req_bl_0920a.c ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-70.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.1.prop2-back-serstep.c LP64 true +Loops loop-new/count_by_nondet.i ILP32 true +Combinations combinations/Problem05_label43+token_ring.11.cil-1.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__unexpected__safety_requirement_havoc_object.i LP64 true +Floats float-newlib/double_req_bl_1131a.c ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-118.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.3.prop1-back-serstep.c LP64 false +Loops loop-new/nested-1.i ILP32 true +Combinations combinations/Problem05_label43+token_ring.14.cil.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__expected__cover_proof_havoc_object.i LP64 false +Floats float-newlib/float_req_bl_0281.c ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-166.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.4.prop2-func-interl.c LP64 true +Loops loop-simple/nested_5.c ILP32 true +Combinations combinations/Problem05_label44+token_ring.04.cil-1.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__invalid_input_gpa__cover_proof_havoc_memory.i LP64 false +Floats float-newlib/float_req_bl_0662a.c ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-34.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.6.prop1-back-serstep.c LP64 false +Loops loop-zilu/benchmark04_conjunctive.i ILP32 true +Combinations combinations/Problem05_label44+token_ring.09.cil-1.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__invalid_input_vmflag__cover_exit_havoc_memory.i LP64 false +Floats float-newlib/float_req_bl_0683a.c ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-82.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal1.c LP64 true +Loops loop-zilu/benchmark10_conjunctive.i ILP32 true +Combinations combinations/Problem05_label45+token_ring.01.cil-1.c ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__unconstrained__cover_exit_success_havoc_object.i LP64 false +Floats float-newlib/float_req_bl_0870b.c ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-129.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal108.c LP64 true +Loops loop-zilu/benchmark15_conjunctive.i ILP32 unknown +Combinations combinations/Problem05_label45+token_ring.04.cil-1.c ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__unexpected__cover_exit_havoc_object.i LP64 false +Floats float-newlib/float_req_bl_0880.c ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-177.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal116.c LP64 true +Loops loop-zilu/benchmark21_disjunctive.i ILP32 unknown +Combinations combinations/Problem05_label45+token_ring.06.cil-2.c ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_vmcall__invalid_input_bitmap__cover_entry_havoc_memory.i LP64 false +Floats float-newlib/float_req_bl_1121b.c ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-45.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal124.c LP64 true +Loops loop-zilu/benchmark26_linear.i ILP32 true +Combinations combinations/Problem05_label45+token_ring.09.cil-1.c ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_vmcall__invalid_input_bitmap__safety_requirement_havoc_memory.i LP64 true +Floats float-newlib/float_req_bl_1211a.c ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-93.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal132.c LP64 true +Loops loop-zilu/benchmark31_disjunctive.i ILP32 unknown +Combinations combinations/Problem05_label45+token_ring.11.cil-2.c ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_vmcall__unexpected__cover_exit_havoc_object.i LP64 false +Floats float-newlib/float_req_bl_1270d.c ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-140.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal141.c LP64 true +Loops loop-zilu/benchmark37_conjunctive.i ILP32 true +Combinations combinations/Problem05_label45+token_ring.15.cil.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_export_restore__expected__cover_entry_havoc_object.i LP64 false +Floats floats-cbmc-regression/float-rounding1.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-189.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal15.c LP64 true +Loops loop-zilu/benchmark43_conjunctive.i ILP32 true +Combinations combinations/Problem05_label46+token_ring.03.cil-1.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_export_restore__unconstrained__cover_exit_success_havoc_memory.i LP64 false +Floats floats-cbmc-regression/float3.c ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-57.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal158.c LP64 true +Loops loop-zilu/benchmark48_linear.i ILP32 unknown +Combinations combinations/Problem05_label46+token_ring.05.cil-2.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_export_restore__unexpected__cover_exit_havoc_memory.i LP64 false +Floats floats-cdfpl/newton_1_3.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-103.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal166.c LP64 true +Loops loops-crafted-1/discover_list.c ILP32 true +Combinations combinations/Problem05_label46+token_ring.08.cil-1.c ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_import_abort__expected__cover_entry_havoc_object.i LP64 false +Floats floats-cdfpl/newton_2_2.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-151.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal175.c LP64 true +Loops loops-crafted-1/in-de42.c ILP32 true +Combinations combinations/Problem05_label46+token_ring.11.cil-1.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_import_abort__expected__safety_requirement_havoc_object.i LP64 true +Floats floats-cdfpl/newton_3_1.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-2.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal183.c LP64 true +Loops loops-crafted-1/loopv2.c ILP32 true +Combinations combinations/Problem05_label46+token_ring.13.cil-2.c ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_import_abort__unexpected__cover_proof_havoc_memory.i LP64 false +Floats floats-cdfpl/newton_3_7.i ILP32 false +Hardness hardness/hardness_fillercode_filler_pr_ci_file-68.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal191.c LP64 true +Loops loops-crafted-1/sum_by_3_abstracted.c ILP32 true +Combinations combinations/Problem05_label47+token_ring.03.cil-2.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__expected__cover_exit_havoc_memory.i LP64 false +Floats floats-cdfpl/sine_6.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-114.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal2.c LP64 true +Loops loops-crafted-1/sumt6.c ILP32 true +Combinations combinations/Problem05_label47+token_ring.08.cil-1.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_input_tdcx_pa__cover_entry_havoc_object.i LP64 false +Floats floats-cdfpl/square_5.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-163.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal208.c LP64 true +Loops loops-crafted-1/vnew2.c ILP32 true +Combinations combinations/Problem05_label48+token_ring.01.cil-1.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_input_tdr_pa__cover_entry_havoc_memory.i LP64 false +Floats floats-esbmc-regression/fmod3.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-31.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal217.c LP64 true +Loops loops/count_up_down-1.c ILP32 true +Combinations combinations/Problem05_label48+token_ring.06.cil-2.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_input_tdr_pa__safety_requirement_havoc_object.i LP64 true +Floats floats-nonlinear/bound-unconstrained.c ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-8.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal225.c LP64 true +Loops loops/insertion_sort-2.c ILP32 unknown +Combinations combinations/Problem05_label48+token_ring.11.cil-2.c ILP32 False +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_lifecycle__cover_proof_havoc_object.i LP64 false +Floats floats-nonlinear/coral-benchmark09.c ILP32 false +Hardness hardness/hardness_fillercode_filler_pr_co_file-126.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal233.c LP64 true +Loops loops/matrix-1.c ILP32 true +Combinations combinations/Problem05_label49+token_ring.02.cil-1.c ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_num_tdcx__cover_proof_havoc_memory.i LP64 true +Floats loop-floats-scientific-comp/loop1-1.c ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-174.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal30.c LP64 true +Loops loops/nec40.c ILP32 true +Combinations combinations/Problem05_label49+token_ring.05.cil-1.c ILP32 True +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_pamt_metadata__cover_exit_havoc_memory.i LP64 false +Floats neural-networks/cartpole_0_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-42.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal39.c LP64 true +Loops loops/sum01_bug02.i ILP32 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_td_state__cover_exit_havoc_object.i LP64 false +Floats neural-networks/cartpole_15_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-90.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal47.c LP64 true +Loops loops/sum_array-2.i ILP32 unknown +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__unconstrained__cover_exit_success_havoc_object.i LP64 false +Floats neural-networks/cartpole_21_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-137.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal55.c LP64 true +Loops loops/terminator_03-2.i ILP32 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__unexpected__cover_proof_havoc_memory.i LP64 false +Floats neural-networks/cartpole_28_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-186.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal64.c LP64 true +Loops loops/trex03-1.c ILP32 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_input_rcx__cover_exit_havoc_memory.i LP64 false +Floats neural-networks/cartpole_34_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-54.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal72.c LP64 true +Loops loops/verisec_OpenSER_cases1_stripFullBoth_arr.i ILP32 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_input_rdx__cover_exit_havoc_object.i LP64 false +Floats neural-networks/cartpole_3_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-100.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal80.c LP64 true +Loops nla-digbench-scaling/bresenham-ll_unwindbound2.c ILP32 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_state_kot_entry__cover_entry_havoc_object.i LP64 false +Floats neural-networks/cartpole_46_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-149.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal89.c LP64 true +Loops nla-digbench-scaling/bresenham-ll_valuebound100.c ILP32 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_state_tdr_page__cover_exit_havoc_memory.i LP64 false +Floats neural-networks/cartpole_51_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-197.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cal98.c LP64 true +Loops nla-digbench-scaling/cohencu-ll_unwindbound10.c ILP32 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__unexpected__cover_entry_havoc_memory.i LP64 false +Floats neural-networks/cartpole_58_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-65.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cambridge.2.prop2-func-interl.c LP64 true +Loops nla-digbench-scaling/cohencu-ll_valuebound1.c ILP32 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__unexpected__safety_requirement_havoc_object.i LP64 true +Floats neural-networks/cartpole_63_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-111.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cambridge.5.prop1-back-serstep.c LP64 true +Loops nla-digbench-scaling/cohencu-ll_valuebound50.c ILP32 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__expected__cover_proof_havoc_object.i LP64 false +Floats neural-networks/cartpole_6_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-16.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cambridge.7.prop1-func-interl.c LP64 false +Loops nla-digbench-scaling/cohendiv-ll_unwindbound5.c ILP32 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_input_tdr_pa__cover_proof_havoc_memory.i LP64 false +Floats neural-networks/cartpole_76_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-29.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w32_d128_e0.c LP64 false +Loops nla-digbench-scaling/cohendiv-ll_valuebound20.c ILP32 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_lifecycle__cover_exit_havoc_memory.i LP64 false +Floats neural-networks/cartpole_82_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-77.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w64_d8_e0.c LP64 false +Loops nla-digbench-scaling/dijkstra-u_unwindbound20.c ILP32 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_no_tdcx__cover_entry_havoc_object.i LP64 true +Floats neural-networks/cartpole_88_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-123.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.collision.2.prop1-back-serstep.c LP64 false +Loops nla-digbench-scaling/dijkstra-u_valuebound2.c ILP32 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_no_tdcx__safety_requirement_havoc_object.i LP64 true +Floats neural-networks/cartpole_94_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-171.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.collision.6.prop1-func-interl.c LP64 true +Loops nla-digbench-scaling/divbin2_unwindbound100.i ILP32 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_op_state__safety_requirement_havoc_memory.i LP64 true +Floats neural-networks/cartpole_9_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-4.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.cyclic_scheduler.3.prop1-func-interl.c LP64 true +Loops nla-digbench-scaling/divbin2_valuebound10.i ILP32 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_pamt_metadata__cover_proof_havoc_memory.i LP64 false +Floats neural-networks/cos_6_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-88.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.driving_phils.3.prop1-back-serstep.c LP64 false +Loops nla-digbench-scaling/divbin_unwindbound1.i ILP32 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_td_state__cover_proof_havoc_object.i LP64 false +Floats neural-networks/dubinsrejoin_13_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-134.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.elevator.2.prop1-back-serstep.c LP64 true +Loops nla-digbench-scaling/divbin_unwindbound50.i ILP32 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +Floats neural-networks/dubinsrejoin_1_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-182.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.elevator_planning.1.prop1-func-interl.c LP64 false +Loops nla-digbench-scaling/divbin_valuebound5.i ILP32 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__unexpected__safety_requirement_havoc_memory.i LP64 true +Floats neural-networks/dubinsrejoin_26_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-51.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.eq_sdp_v6.c LP64 true +Loops nla-digbench-scaling/egcd-ll_unwindbound20.c ILP32 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_input_tdr_hkid__cover_proof_havoc_memory.i LP64 false +Floats neural-networks/dubinsrejoin_32_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-0.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.exit.4.prop1-back-serstep.c LP64 false +Loops nla-digbench-scaling/egcd-ll_valuebound2.c ILP32 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_state_td_state__cover_proof_havoc_object.i LP64 false +Floats neural-networks/dubinsrejoin_38_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-146.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.extinction.3.prop1-func-interl.c LP64 false +Loops nla-digbench-scaling/egcd2-ll_unwindbound100.c ILP32 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_state_tdr_lifecycle__cover_proof_havoc_object.i LP64 false +Floats neural-networks/dubinsrejoin_44_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-194.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.firewire_tree.1.prop3-func-interl.c LP64 true +Loops nla-digbench-scaling/egcd2-ll_valuebound10.c ILP32 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__unconstrained__cover_exit_success_havoc_memory.i LP64 false +Floats neural-networks/dubinsrejoin_50_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-62.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.firewire_tree.3.prop2-func-interl.c LP64 true +Loops nla-digbench-scaling/egcd3-ll_unwindbound1.c ILP32 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__unexpected__cover_exit_havoc_memory.i LP64 false +Floats neural-networks/dubinsrejoin_57_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-109.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.firewire_tree.5.prop1-back-serstep.c LP64 true +Loops nla-digbench-scaling/egcd3-ll_unwindbound50.c ILP32 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_input_tdr_hkid__cover_entry_havoc_object.i LP64 false +Floats neural-networks/dubinsrejoin_62_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-157.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.fischer.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_state_kot__cover_entry_havoc_object.i LP64 false +Floats neural-networks/dubinsrejoin_69_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_kloop_100_1loop_file-25.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.fischer.7.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_state_tdr_lifecycle__cover_exit_havoc_memory.i LP64 false +Floats neural-networks/dubinsrejoin_75_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_kloop_100_1loop_file-74.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.frogs.5.prop1-func-interl.c LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_state_tdr_metadata__cover_exit_havoc_object.i LP64 false +Floats neural-networks/dubinsrejoin_81_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-120.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.gear.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__unexpected__cover_exit_havoc_memory.i LP64 false +Floats neural-networks/dubinsrejoin_87_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_kloop_100_while_file-169.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.h_Barrel.c LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__expected__cover_entry_havoc_memory.i LP64 false +Floats neural-networks/dubinsrejoin_93_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_kloop_100_while_file-37.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.h_Spinner.c LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__expected__safety_requirement_havoc_object.i LP64 true +Floats neural-networks/elu_2_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-85.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.h_b06.c LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_input_tdr_hkid__cover_proof_havoc_object.i LP64 false +Floats neural-networks/erf_4_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-131.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.hanoi.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_state_tdr_lifecycle__cover_entry_havoc_memory.i LP64 false +Floats neural-networks/exp_4_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_kloop_25_1loop_file-18.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.iprotocol.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_state_tdr_metadata__cover_entry_havoc_memory.i LP64 false +Floats neural-networks/gcas_2_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_kloop_25_1loop_file-48.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.itc99_b12.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +Floats neural-networks/gcas_9_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_kloop_25_1loop_file-97.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.lamport.1.prop1-back-serstep.c LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__unexpected__cover_proof_havoc_object.i LP64 false +Floats neural-networks/log_0_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-143.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.lamport.6.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__expected__cover_proof_havoc_memory.i LP64 false +Floats neural-networks/log_6_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-191.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.lamport_nonatomic.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_input_hkid__cover_exit_havoc_memory.i LP64 false +Floats neural-networks/logistic_5_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_kloop_25_while_file-6.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.lann.2.prop1-func-interl.c LP64 true +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_lifecycle__cover_entry_havoc_object.i LP64 false +Floats neural-networks/lunarlander_12_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-106.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.lann.7.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_lifecycle__safety_requirement_havoc_object.i LP64 true +Floats neural-networks/lunarlander_19_safe.c-amalgamation.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-154.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.leader_election.4.prop1-back-serstep.c LP64 false +Floats neural-networks/lunarlander_24_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_kloop_50_1loop_file-22.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.leader_filters.2.prop1-func-interl.c LP64 false +Floats neural-networks/lunarlander_2_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_kloop_50_1loop_file-70.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.leader_filters.7.prop1-back-serstep.c LP64 true +Floats neural-networks/lunarlander_36_unsafe.c-amalgamation.i ILP32 false +Hardness hardness/hardness_kloop_50_while_file-118.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.lifts.5.prop1-back-serstep.c LP64 false +Hardness hardness/hardness_kloop_50_while_file-166.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.loyd.1.prop1-func-interl.c LP64 false +Hardness hardness/hardness_kloop_50_while_file-34.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.lup.3.prop1-back-serstep.c LP64 true +Hardness hardness/hardness_kloop_50_while_file-82.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.mcs.3.prop1-func-interl.c LP64 true +Hardness hardness/hardness_operatoramount_amount100_file-129.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.msmie.1.prop1-func-interl.c LP64 true +Hardness hardness/hardness_operatoramount_amount100_file-177.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.mul11.c LP64 false +Hardness hardness/hardness_operatoramount_amount100_file-45.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.needham.1.prop3-back-serstep.c LP64 false +Hardness hardness/hardness_operatoramount_amount100_file-93.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.needham.2.prop3-func-interl.c LP64 true +Hardness hardness/hardness_operatoramount_amount10_file-140.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.needham.3.prop4-func-interl.c LP64 false +Hardness hardness/hardness_operatoramount_amount10_file-189.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.noninitstate.c LP64 false +Hardness hardness/hardness_operatoramount_amount10_file-57.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.peg_solitaire.4.prop1-func-interl.c LP64 true +Hardness hardness/hardness_operatoramount_amount250_file-103.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.peterson.3.prop1-back-serstep.c LP64 false +Hardness hardness/hardness_operatoramount_amount250_file-151.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.1.prop1-back-serstep.c LP64 true +Hardness hardness/hardness_operatoramount_amount250_file-2.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.2.prop1-func-interl.c LP64 true +Hardness hardness/hardness_operatoramount_amount250_file-68.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.3.prop2-func-interl.c LP64 true +Hardness hardness/hardness_operatoramount_amount25_file-114.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.4.prop5-back-serstep.c LP64 true +Hardness hardness/hardness_operatoramount_amount25_file-163.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.5.prop6-back-serstep.c LP64 true +Hardness hardness/hardness_operatoramount_amount25_file-31.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.6.prop6-func-interl.c LP64 true +Hardness hardness/hardness_operatoramount_amount25_file-8.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.8.prop1-back-serstep.c LP64 true +Hardness hardness/hardness_operatoramount_amount500_file-126.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.pj_icram.c LP64 true +Hardness hardness/hardness_operatoramount_amount500_file-174.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.pouring.1.prop1-back-serstep.c LP64 false +Hardness hardness/hardness_operatoramount_amount500_file-42.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.production_cell.3.prop1-func-interl.c LP64 false +Hardness hardness/hardness_operatoramount_amount500_file-90.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.protocols.2.prop1-back-serstep.c LP64 false +Hardness hardness/hardness_operatoramount_amount50_file-137.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.reader_writer.1.prop1-func-interl.c LP64 false +Hardness hardness/hardness_operatoramount_amount50_file-186.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.resistance.1.prop3-back-serstep.c LP64 true +Hardness hardness/hardness_operatoramount_amount50_file-54.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.rether.1.prop1-func-interl.c LP64 true +Hardness hardness/hardness_wrappers_normal_file-100.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.rether.6.prop1-back-serstep.c LP64 false +Hardness hardness/hardness_wrappers_normal_file-149.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.rushhour.3.prop1-func-interl.c LP64 true +Hardness hardness/hardness_wrappers_normal_file-197.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.schedule_world.3.prop1-func-interl.c LP64 false +Hardness hardness/hardness_wrappers_normal_file-65.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w32_d32_e0.c LP64 false +Hardness hardness/hardness_wrappers_wrapper_a_file-111.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w8_d16_e0.c LP64 false +Hardness hardness/hardness_wrappers_wrapper_a_file-16.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.sokoban.3.prop1-func-interl.c LP64 true +Hardness hardness/hardness_wrappers_wrapper_a_file-29.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.swap_two.c LP64 true +Hardness hardness/hardness_wrappers_wrapper_a_file-77.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.synapse.4.prop1-back-serstep.c LP64 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-123.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.szymanski.1.prop1-func-interl.c LP64 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-171.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.telephony.1.prop1-back-serstep.c LP64 false +Hardness hardness/hardness_wrappers_wrapper_ap_file-4.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.telephony.6.prop1-back-serstep.c LP64 false +Hardness hardness/hardness_wrappers_wrapper_ap_file-88.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.train-gate.2.prop1-back-serstep.c LP64 true +Hardness hardness/hardness_wrappers_wrapper_p_file-134.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.train-gate.6.prop1-func-interl.c LP64 true +Hardness hardness/hardness_wrappers_wrapper_p_file-182.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.v_DAIO.c LP64 false +Hardness hardness/hardness_wrappers_wrapper_p_file-51.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.vcegar_QF_BV_itc99_b13_p07.c LP64 true +Hardness hardness/hardness_wrappers_wrapper_s_file-0.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.vcegar_QF_BV_itc99_b13_p16.c LP64 true +Hardness hardness/hardness_wrappers_wrapper_s_file-146.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.vcegar_QF_BV_pj_icu_icctl_p3.c LP64 true +Hardness hardness/hardness_wrappers_wrapper_s_file-194.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.vis_QF_BV_fru32_p3.c LP64 false +Hardness hardness/hardness_wrappers_wrapper_s_file-63.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.vis_QF_BV_vMiim_p2.c LP64 false +Hardness hardness/hardness_wrappers_wrapper_sp_file-11.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.vis_arrays_bpbs_p2.c LP64 false +Hardness hardness/hardness_wrappers_wrapper_sp_file-158.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.vis_arrays_vsa16a_p2.c LP64 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-26.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.vis_arrays_vsaR_p03.c LP64 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-75.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.vis_arrays_vsaR_p13.c LP64 true +Hardness hardness/hardness_codemodifications_dependencies_file-109.i ILP32 true +Hardware hardware-verification-array/btor2c-lazyMod.safe_linked_list_fifo_n2d4.c LP64 true +Hardness hardness/hardness_codemodifications_dependencies_file-132.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.Huffman_dec.c LP64 true +Hardness hardness/hardness_codemodifications_dependencies_file-157.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.adding.2.prop1-func-interl.c LP64 false +Hardness hardness/hardness_codemodifications_dependencies_file-180.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.adding.4.prop1-func-interl.c LP64 false +Hardness hardness/hardness_codemodifications_dependencies_file-25.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.anderson.1.prop1-back-serstep.c LP64 false +Hardness hardness/hardness_codemodifications_dependencies_file-49.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.anderson.3.prop1-back-serstep.c LP64 false +Hardness hardness/hardness_codemodifications_dependencies_file-73.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.anderson.5.prop1-func-interl.c LP64 false +Hardness hardness/hardness_codemodifications_dependencies_file-97.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.anderson.8.prop1-back-serstep.c LP64 true +Hardness hardness/hardness_codemodifications_functionizing_file-12.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w16_d64_e0.c LP64 false +Hardness hardness/hardness_codemodifications_functionizing_file-143.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w32_d32_e0.c LP64 false +Hardness hardness/hardness_codemodifications_functionizing_file-168.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w8_d32_e0.c LP64 false +Hardness hardness/hardness_codemodifications_functionizing_file-191.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n3_w16_d16_e0.c LP64 false +Hardness hardness/hardness_codemodifications_functionizing_file-36.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n3_w8_d16_e0.c LP64 false +Hardness hardness/hardness_codemodifications_functionizing_file-6.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n4_w16_d128_e0.c LP64 false +Hardness hardness/hardness_codemodifications_functionizing_file-84.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n4_w8_d128_e0.c LP64 false +Hardness hardness/hardness_codemodifications_normal_file-107.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n5_w8_d128_e0.c LP64 false +Hardness hardness/hardness_codemodifications_normal_file-131.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.at.1.prop1-back-serstep.c LP64 true +Hardness hardness/hardness_codemodifications_normal_file-155.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.at.3.prop1-back-serstep.c LP64 false +Hardness hardness/hardness_codemodifications_normal_file-18.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.at.5.prop1-func-interl.c LP64 true +Hardness hardness/hardness_codemodifications_normal_file-23.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.at.7.prop1-func-interl.c LP64 true +Hardness hardness/hardness_codemodifications_normal_file-48.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.bakery.3.prop1-back-serstep.c LP64 true +Hardness hardness/hardness_codemodifications_normal_file-71.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.bakery.5.prop1-back-serstep.c LP64 true +Hardness hardness/hardness_codemodifications_normal_file-96.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.bakery.7.prop1-func-interl.c LP64 true +Hardness hardness/hardness_codemodifications_steplocals_file-118.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.blocks.2.prop1-func-interl.c LP64 true +Hardness hardness/hardness_codemodifications_steplocals_file-142.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.bridge.1.prop1-back-serstep.c LP64 false +Hardness hardness/hardness_codemodifications_steplocals_file-166.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.bridge.3.prop1-back-serstep.c LP64 false +Hardness hardness/hardness_codemodifications_steplocals_file-190.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.brp.2.prop1-func-interl.c LP64 false +Hardness hardness/hardness_codemodifications_steplocals_file-34.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.brp.4.prop1-func-interl.c LP64 false +Hardness hardness/hardness_codemodifications_steplocals_file-59.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.1.prop1-back-serstep.c LP64 false +Hardness hardness/hardness_codemodifications_steplocals_file-82.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.1.prop3-back-serstep.c LP64 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-105.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.2.prop2-func-interl.c LP64 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-13.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.3.prop2-back-serstep.c LP64 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-154.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.4.prop1-func-interl.c LP64 false +Hardness hardness/hardness_fillercode_filler_pe_ci_file-178.i ILP32 true +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.4.prop3-func-interl.c LP64 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-22.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-46.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-70.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-94.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-117.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-140.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-165.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-189.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-33.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-57.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-81.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-103.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-128.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-152.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-177.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-20.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-45.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-69.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-93.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-115.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-14.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-163.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-188.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-31.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-56.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-8.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-102.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-126.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-150.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-175.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-2.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-43.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-68.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-91.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-114.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-138.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-162.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-186.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-30.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-54.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-79.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-100.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-125.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-149.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-173.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-198.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-42.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-66.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-90.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-112.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-137.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-160.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-185.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-29.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-53.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-77.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-10.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-123.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-148.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-171.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-196.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-40.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-65.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-89.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-111.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-135.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-16.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-183.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-28.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-51.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-76.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-0.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-122.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-146.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-170.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-194.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-39.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-63.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-88.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-11.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-134.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-158.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-182.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-26.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-50.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-74.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-99.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-120.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-145.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-169.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-193.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-37.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-61.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-86.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-109.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-132.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-157.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-180.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-25.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-49.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-73.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-97.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-12.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-143.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-168.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-191.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-36.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-6.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-84.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-107.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-131.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-155.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-18.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-23.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-48.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-71.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-96.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-118.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-142.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-166.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-190.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-34.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-59.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-82.i ILP32 true +Hardness hardness/hardness_kloop_50_while_file-105.i ILP32 true +Hardness hardness/hardness_kloop_50_while_file-13.i ILP32 true +Hardness hardness/hardness_kloop_50_while_file-154.i ILP32 true +Hardness hardness/hardness_kloop_50_while_file-178.i ILP32 true +Hardness hardness/hardness_kloop_50_while_file-22.i ILP32 true +Hardness hardness/hardness_kloop_50_while_file-46.i ILP32 true +Hardness hardness/hardness_kloop_50_while_file-70.i ILP32 true +Hardness hardness/hardness_kloop_50_while_file-94.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-117.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-140.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-165.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-189.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-33.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-57.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-81.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-103.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-128.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-152.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-177.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-20.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-45.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-69.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-93.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-115.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-14.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-163.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-188.i ILP32 unknown +Hardness hardness/hardness_operatoramount_amount250_file-31.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-56.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-8.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-102.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-126.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-150.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-175.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-2.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-43.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-68.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-91.i ILP32 true +Hardness hardness/hardness_operatoramount_amount500_file-114.i ILP32 true +Hardness hardness/hardness_operatoramount_amount500_file-138.i ILP32 true +Hardness hardness/hardness_operatoramount_amount500_file-162.i ILP32 true +Hardness hardness/hardness_operatoramount_amount500_file-186.i ILP32 true +Hardness hardness/hardness_operatoramount_amount500_file-30.i ILP32 true +Hardness hardness/hardness_operatoramount_amount500_file-54.i ILP32 true +Hardness hardness/hardness_operatoramount_amount500_file-79.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-100.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-125.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-149.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-173.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-198.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-42.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-66.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-90.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-112.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-137.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-160.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-185.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-29.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-53.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-77.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-10.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-123.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-148.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-171.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-196.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-40.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-65.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-89.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-111.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-135.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-16.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-183.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-28.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-51.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-76.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-0.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-122.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-146.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-170.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-194.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-39.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-63.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-88.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-11.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-134.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-158.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-182.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-26.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-50.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-75.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-0.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-121.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-146.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-17.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-194.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-38.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-62.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-87.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-102.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-114.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-126.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-139.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-150.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-162.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-174.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-187.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-199.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-30.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-42.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-55.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-67.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-79.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-90.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-101.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-113.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-125.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-137.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-15.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-161.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-173.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-185.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-198.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-3.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-41.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-53.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-66.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-78.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-90.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-100.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-113.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-125.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-137.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-149.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-161.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-173.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-185.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-197.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-3.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-41.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-53.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-65.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-78.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-9.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-10.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-111.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-124.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-136.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-148.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-16.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-172.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-184.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-196.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-28.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-40.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-52.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-64.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-76.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-89.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-1.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-111.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-123.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-136.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-148.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-16.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-171.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-184.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-196.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-28.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-4.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-52.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-64.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-76.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-88.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-1.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-110.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-122.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-134.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-147.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-159.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-170.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-182.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-195.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-27.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-39.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-50.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-63.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-75.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-87.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-99.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-11.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-121.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-134.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-146.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-159.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-170.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-182.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-194.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-27.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-39.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-50.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-62.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-75.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-87.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-99.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-109.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-121.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-133.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-145.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-157.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-17.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-181.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-193.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-25.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-38.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-5.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-61.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-73.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-86.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-98.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-108.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-12.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-132.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-144.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-157.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-169.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-181.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-193.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-25.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-37.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-5.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-61.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-73.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-85.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-98.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-108.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-12.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-131.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-144.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-156.i ILP32 unknown +Hardness hardness/hardness_fillercode_filler_pr_co_file-168.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-18.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-192.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-24.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-36.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-48.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-60.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-72.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-84.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-96.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-107.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-119.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-130.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-142.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-155.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-167.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-18.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-191.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-24.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-36.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-48.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-6.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-72.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-84.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-96.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-106.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-119.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-130.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-142.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-154.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-167.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-179.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-190.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-22.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-35.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-47.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-59.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-70.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-83.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-95.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-105.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-117.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-13.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-141.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-153.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-165.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-178.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-19.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-22.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-34.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-47.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-59.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-70.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-82.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-95.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-105.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-117.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-129.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-141.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-153.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-165.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-177.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-19.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-21.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-33.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-45.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-58.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-7.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-81.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-93.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-104.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-116.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-128.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-14.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-152.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-164.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-176.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-188.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-20.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-32.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-45.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-57.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-7.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-81.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-93.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-103.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-116.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-128.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-14.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-151.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-164.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-176.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-188.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-2.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-32.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-44.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-56.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-68.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-80.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-92.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-102.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-114.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-127.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-139.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-150.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-162.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-175.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-187.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-199.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-30.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-43.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-55.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-68.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-8.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-92.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-102.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-114.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-126.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-139.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-150.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-162.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-174.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-187.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-199.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-30.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-42.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-55.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-67.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-79.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-90.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-101.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-113.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-125.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-137.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-15.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-161.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-173.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-185.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-198.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-3.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-41.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-53.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-66.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-78.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-90.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-100.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-113.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-125.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-137.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-149.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-161.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-173.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-185.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-197.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-3.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-41.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-53.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-65.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-78.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-9.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-10.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-111.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-124.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-136.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-148.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-16.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-172.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-184.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-196.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-28.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-40.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-52.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-64.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-76.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-89.i ILP32 true +Hardness hardness/hardness_kloop_50_while_file-1.i ILP32 true +Hardness hardness/hardness_kloop_50_while_file-111.i ILP32 true +Hardness hardness/hardness_kloop_50_while_file-123.i ILP32 true +Hardness hardness/hardness_kloop_50_while_file-136.i ILP32 true +Hardness hardness/hardness_kloop_50_while_file-148.i ILP32 true +Hardness hardness/hardness_kloop_50_while_file-16.i ILP32 true +Hardness hardness/hardness_kloop_50_while_file-171.i ILP32 true +Hardness hardness/hardness_kloop_50_while_file-184.i ILP32 true +Hardness hardness/hardness_kloop_50_while_file-196.i ILP32 true +Hardness hardness/hardness_kloop_50_while_file-28.i ILP32 true +Hardness hardness/hardness_kloop_50_while_file-4.i ILP32 true +Hardness hardness/hardness_kloop_50_while_file-52.i ILP32 true +Hardness hardness/hardness_kloop_50_while_file-64.i ILP32 true +Hardness hardness/hardness_kloop_50_while_file-76.i ILP32 true +Hardness hardness/hardness_kloop_50_while_file-88.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-1.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-110.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-122.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-134.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-147.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-159.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-170.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-182.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-195.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-27.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-39.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-50.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-63.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-75.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-87.i ILP32 true +Hardness hardness/hardness_operatoramount_amount100_file-99.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-11.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-121.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-134.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-146.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-159.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-170.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-182.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-194.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-27.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-39.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-50.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-62.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-75.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-87.i ILP32 true +Hardness hardness/hardness_operatoramount_amount10_file-99.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-109.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-121.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-133.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-145.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-157.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-17.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-181.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-193.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-25.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-38.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-5.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-61.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-73.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-86.i ILP32 true +Hardness hardness/hardness_operatoramount_amount250_file-98.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-108.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-12.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-132.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-144.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-157.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-169.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-181.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-193.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-25.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-37.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-5.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-61.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-73.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-85.i ILP32 true +Hardness hardness/hardness_operatoramount_amount25_file-98.i ILP32 true +Hardness hardness/hardness_operatoramount_amount500_file-108.i ILP32 true +Hardness hardness/hardness_operatoramount_amount500_file-12.i ILP32 true +Hardness hardness/hardness_operatoramount_amount500_file-131.i ILP32 true +Hardness hardness/hardness_operatoramount_amount500_file-144.i ILP32 true +Hardness hardness/hardness_operatoramount_amount500_file-156.i ILP32 unknown +Hardness hardness/hardness_operatoramount_amount500_file-168.i ILP32 true +Hardness hardness/hardness_operatoramount_amount500_file-18.i ILP32 true +Hardness hardness/hardness_operatoramount_amount500_file-192.i ILP32 true +Hardness hardness/hardness_operatoramount_amount500_file-24.i ILP32 true +Hardness hardness/hardness_operatoramount_amount500_file-36.i ILP32 true +Hardness hardness/hardness_operatoramount_amount500_file-48.i ILP32 true +Hardness hardness/hardness_operatoramount_amount500_file-60.i ILP32 true +Hardness hardness/hardness_operatoramount_amount500_file-72.i ILP32 true +Hardness hardness/hardness_operatoramount_amount500_file-84.i ILP32 true +Hardness hardness/hardness_operatoramount_amount500_file-96.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-107.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-119.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-130.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-142.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-155.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-167.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-18.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-191.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-24.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-36.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-48.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-6.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-72.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-84.i ILP32 true +Hardness hardness/hardness_operatoramount_amount50_file-96.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-106.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-119.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-130.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-142.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-154.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-167.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-179.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-190.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-22.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-35.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-47.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-59.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-70.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-83.i ILP32 true +Hardness hardness/hardness_wrappers_normal_file-95.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-105.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-117.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-13.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-141.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-153.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-165.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-178.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-19.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-22.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-34.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-47.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-59.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-70.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-82.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_a_file-95.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-105.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-117.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-129.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-141.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-153.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-165.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-177.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-19.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-21.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-33.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-45.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-58.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-7.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-81.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_ap_file-93.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-104.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-116.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-128.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-14.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-152.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-164.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-176.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-188.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-20.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-32.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-45.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-57.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-7.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-81.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_p_file-93.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-103.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-116.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-128.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-14.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-151.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-164.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-176.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-188.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-2.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-32.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-44.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-57.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-69.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-81.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_s_file-93.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-103.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-115.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-128.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-14.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-151.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-163.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-176.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-188.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-2.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-31.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-44.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-56.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-69.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-80.i ILP32 true +Hardness hardness/hardness_wrappers_wrapper_sp_file-93.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-10.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-105.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-111.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-117.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-123.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-129.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-135.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-141.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-148.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-153.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-16.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-165.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-171.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-177.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-183.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-19.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-196.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-21.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-28.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-33.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-4.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-45.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-51.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-58.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-64.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-7.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-76.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-81.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-88.i ILP32 true +Hardness hardness/hardness_codemodifications_dependencies_file-93.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-0.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-104.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-110.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-116.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-122.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-128.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-134.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-14.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-146.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-152.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-159.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-164.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-170.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-176.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-182.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-188.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-194.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-20.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-27.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-32.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-39.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-44.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-50.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-56.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-62.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-69.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-75.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-80.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-87.i ILP32 true +Hardness hardness/hardness_codemodifications_functionizing_file-93.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-0.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-103.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-11.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-116.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-122.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-128.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-134.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-14.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-146.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-151.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-158.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-164.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-170.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-176.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-182.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-188.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-194.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-2.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-26.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-32.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-39.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-44.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-50.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-56.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-62.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-68.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-74.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-80.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-87.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-92.i ILP32 true +Hardness hardness/hardness_codemodifications_normal_file-99.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-102.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-109.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-114.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-120.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-127.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-133.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-139.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-145.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-150.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-157.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-162.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-169.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-175.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-181.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-187.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-193.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-199.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-25.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-30.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-37.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-43.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-5.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-55.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-61.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-67.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-73.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-79.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-85.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-91.i ILP32 true +Hardness hardness/hardness_codemodifications_steplocals_file-98.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-101.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-108.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-114.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-120.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-126.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-132.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-139.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-145.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-150.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-157.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-162.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-169.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-174.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-180.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-187.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-193.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-199.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-25.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-30.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-37.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-42.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-49.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-55.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-61.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-67.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-73.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-79.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-85.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-90.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_ci_file-97.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-101.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-108.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-113.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-12.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-125.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-131.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-137.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-143.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-15.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-156.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-161.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-168.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-173.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-18.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-185.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-191.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-198.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-24.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-3.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-36.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-41.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-48.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-53.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-6.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-66.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-72.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-78.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-84.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-9.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_cn_file-96.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-10.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-106.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-112.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-119.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-124.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-130.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-137.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-143.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-149.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-155.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-161.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-168.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-173.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-18.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-185.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-191.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-197.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-23.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-3.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-36.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-41.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-48.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-53.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-6.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-65.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-71.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-78.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-84.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-9.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pe_co_file-96.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-10.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-106.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-111.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-118.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-124.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-130.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-136.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-142.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-148.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-154.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-16.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-166.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-172.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-179.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-184.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-190.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-196.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-22.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-28.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-34.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-40.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-47.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-52.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-59.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-64.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-70.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-76.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-82.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-89.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_ci_file-95.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-1.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-105.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-110.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-117.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-122.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-129.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-135.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-141.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-147.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-153.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-16.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-166.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-171.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-178.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-184.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-190.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-196.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-22.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-28.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-34.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-4.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-46.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-52.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-59.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-64.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-70.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-76.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-82.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-88.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_cn_file-94.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-1.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-105.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-110.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-117.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-122.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-129.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-134.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-140.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-147.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-153.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-159.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-165.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-170.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-177.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-182.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-189.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-195.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-21.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-27.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-33.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-39.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-45.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-50.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-57.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-63.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-7.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-75.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-81.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-87.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-93.i ILP32 true +Hardness hardness/hardness_fillercode_filler_pr_co_file-99.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-103.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-11.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-116.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-121.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-128.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-133.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-14.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-145.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-151.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-158.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-164.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-17.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-176.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-182.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-189.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-194.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-20.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-27.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-33.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-39.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-45.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-50.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-57.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-62.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-69.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-75.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-81.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-87.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-93.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_ci_file-99.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-103.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-109.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-115.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-121.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-128.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-133.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-14.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-145.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-151.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-157.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-163.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-17.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-176.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-181.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-188.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-193.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-2.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-25.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-31.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-38.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-44.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-5.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-56.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-61.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-68.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-73.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-8.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-86.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-92.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_cn_file-98.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-102.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-108.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-114.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-12.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-126.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-132.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-139.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-144.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-150.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-156.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-162.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-168.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-174.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-180.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-187.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-192.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-199.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-25.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-31.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-37.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-43.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-5.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-56.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-61.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-68.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-73.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-8.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-85.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-91.i ILP32 true +Hardness hardness/hardness_fillercode_filler_ps_co_file-98.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-102.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-108.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-114.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-12.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-126.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-131.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-138.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-144.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-150.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-156.i ILP32 unknown +Hardness hardness/hardness_fillercode_normal_file-162.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-168.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-174.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-18.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-186.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-192.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-199.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-24.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-30.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-36.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-42.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-48.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-54.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-60.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-67.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-72.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-79.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-84.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-90.i ILP32 true +Hardness hardness/hardness_fillercode_normal_file-96.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-100.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-107.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-113.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-119.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-125.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-130.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-137.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-142.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-149.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-155.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-161.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-167.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-173.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-179.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-185.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-190.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-197.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-23.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-3.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-35.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-41.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-48.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-54.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-6.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-66.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-72.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-79.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-84.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-90.i ILP32 true +Hardness hardness/hardness_floats_has_floats_file-96.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-100.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-106.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-112.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-119.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-125.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-130.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-137.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-142.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-149.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-154.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-160.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-167.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-173.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-179.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-185.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-190.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-197.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-22.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-29.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-35.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-41.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-47.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-53.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-59.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-65.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-70.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-77.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-83.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-9.i ILP32 true +Hardness hardness/hardness_floats_no_floats_file-95.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-10.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-105.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-111.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-117.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-123.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-13.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-136.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-141.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-148.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-153.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-16.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-165.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-171.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-178.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-184.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-19.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-196.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-21.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-28.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-33.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-4.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-46.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-52.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-58.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-64.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-70.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-77.i ILP32 unknown +Hardness hardness/hardness_kloop_100_1loop_file-82.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-89.i ILP32 true +Hardness hardness/hardness_kloop_100_1loop_file-95.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-10.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-105.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-111.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-117.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-123.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-129.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-135.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-141.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-148.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-153.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-16.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-165.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-171.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-177.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-183.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-19.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-196.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-21.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-28.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-33.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-4.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-45.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-51.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-58.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-64.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-7.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-76.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-81.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-88.i ILP32 true +Hardness hardness/hardness_kloop_100_while_file-93.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-0.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-104.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-110.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-116.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-122.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-128.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-134.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-14.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-146.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-152.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-159.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-164.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-170.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-176.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-182.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-188.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-194.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-20.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-27.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-32.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-39.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-44.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-50.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-56.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-62.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-69.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-75.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-80.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-87.i ILP32 true +Hardness hardness/hardness_kloop_25_1loop_file-93.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-0.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-103.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-11.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-116.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-122.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-128.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-134.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-14.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-146.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-151.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-158.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-164.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-170.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-176.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-182.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-188.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-194.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-2.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-26.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-32.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-39.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-44.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-50.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-56.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-62.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-68.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-74.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-80.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-87.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-92.i ILP32 true +Hardness hardness/hardness_kloop_25_while_file-99.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-102.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-109.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-114.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-120.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-127.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-133.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-139.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-145.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-150.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-157.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-162.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-169.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-175.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-181.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-187.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-193.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-199.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-25.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-30.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-37.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-43.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-5.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-55.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-61.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-67.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-73.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-79.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-85.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-91.i ILP32 true +Hardness hardness/hardness_kloop_50_1loop_file-98.i ILP32 true diff --git a/tests/testcomp/corpus/cover-error-official.tsv b/tests/testcomp/corpus/cover-error-official.tsv new file mode 100644 index 000000000..75f1e539c --- /dev/null +++ b/tests/testcomp/corpus/cover-error-official.tsv @@ -0,0 +1,1903 @@ +# category program data_model expected_unreach +Arrays array-fpi/ms3f.c ILP32 false +BitVectors bitvector/s3_clnt_2.BV.c.cil-2a.c ILP32 false +ControlFlow ntdrivers/floppy.i.cil-1.c ILP32 false +ECA eca-rers2012/Problem18_label00.c ILP32 false +Floats floats-cdfpl/newton_1_7.i ILP32 false +Heap ldv-regression/rule57_ebda_blast_2.i ILP32 false +Loops nla-digbench-scaling/fermat1-ll_unwindbound5.c ILP32 false +ProductLines product-lines/email_spec27_product34.cil.c ILP32 false +Recursive recursive-simple/id_b3_o2-2.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr-var-start-time.6.1.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/aim-100-1-6-sat-3.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.iprotocol.3.prop1-back-serstep.c LP64 false +SoftwareSystems-BusyBox busybox-1.22.0/od-3.i LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/relpath_path_common_prefix_symmetry_cover_proof.i LP64 false +SoftwareSystems-OpenBSD openbsd-6.2/if_etherip-unreach-call.i LP64 false +SoftwareSystems-DeviceDriversLinux64 ldv-consumption/32_7a_cilled_linux-3.8-rc1-32_7a-drivers--media--dvb-frontends--stv090x.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_state_tdr_metadata__cover_exit_havoc_memory.i LP64 false +Arrays array-fpi/condgf.c ILP32 false +BitVectors bitvector-loops/verisec_sendmail_tTflag_arr_one_loop.c ILP32 false +ControlFlow ntdrivers/cdaudio.i.cil-1.c ILP32 false +ECA eca-rers2012/Problem06_label00.c ILP32 false +Floats float-benchs/nan_double.c ILP32 false +Heap forester-heap/sll-optional-2.i ILP32 false +Loops nla-digbench-scaling/bresenham-ll_unwindbound100.c ILP32 false +ProductLines product-lines/email_spec0_product22.cil.c ILP32 false +Recursive fuzzle-programs/09_fuzzle_50x50_75-cycle.c LP64 false +Sequentialized seq-mthreaded/pals_floodmax.4.3.ufo.BOUNDED-8.pals.c ILP32 false +XCSP xcsp/AllInterval-019.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.4.prop1-back-serstep.c LP64 false +SoftwareSystems-BusyBox busybox-1.22.0/ls-incomplete-2.i LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/getlimits_decimal_absval_add_one_all_nines_cover_proof.i LP64 false +SoftwareSystems-DeviceDriversLinux64 ldv-linux-3.7.3/main0_drivers--media--dvb-frontends--stv090x-ko---32_7a--linux-3.7.3.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_input_tdr_pa__cover_entry_havoc_object.i LP64 false +Arrays array-fpi/s5liff.c ILP32 false +BitVectors bitvector/soft_float_1-3a.c.cil.c ILP32 false +ControlFlow ntdrivers/kbfiltr.i.cil-2.c ILP32 false +ECA eca-rers2018/Problem14.c ILP32 false +Floats floats-cdfpl/sine_1.i ILP32 false +Heap ldv-sets/test_mutex_unlock_at_exit.i ILP32 false +Loops nla-digbench-scaling/prod4br-ll_unwindbound20.c ILP32 false +ProductLines product-lines/email_spec6_product29.cil.c ILP32 false +Recursive recursive/Addition02.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.3.4.ufo.BOUNDED-6.pals.c ILP32 false +XCSP xcsp/aim-200-1-6-sat-2.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.production_cell.5.prop1-back-serstep.c LP64 false +SoftwareSystems-BusyBox busybox-1.22.0/printf-2.i LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/relpath_relpath_identical_paths_cover_target.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_state_sys_state__cover_proof_havoc_object.i LP64 false +Arrays array-examples/standard_copy6_ground-1.i ILP32 false +BitVectors bitvector-loops/diamond_2-1.c ILP32 false +ControlFlow ntdrivers/diskperf.i.cil-2.c ILP32 false +ECA eca-programs/Problem103_label32.c ILP32 false +Floats float-benchs/float_int_inv_square.c ILP32 false +Heap forester-heap/dll-rb-sentinel-1.i ILP32 false +Loops loops/insertion_sort-1-2.c ILP32 false +ProductLines product-lines/elevator_spec2_product30.cil.c ILP32 false +Recursive fuzzle-programs/04_fuzzle_60x60.c LP64 false +Sequentialized seq-mthreaded/pals_floodmax.3.1.ufo.BOUNDED-6.pals.c ILP32 false +XCSP xcsp/AllInterval-011.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n4_w16_d64_e0.c LP64 false +SoftwareSystems-BusyBox busybox-1.22.0/test-incomplete-1.i LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/factors_valid_64bit_number_cover_proof.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__expected__cover_proof_havoc_object.i LP64 false +Arrays array-fpi/ifeqn4f.c ILP32 false +BitVectors bitvector-regression/recHanoi03-1.c ILP32 false +ControlFlow ntdrivers/parport.i.cil-1.c ILP32 false +ECA eca-rers2012/Problem12_label00.c ILP32 false +Floats float-newlib/double_req_bl_0870a.c ILP32 false +Heap heap-manipulation/bubble_sort_linux-2.i ILP32 false +Loops nla-digbench-scaling/egcd2-ll_unwindbound2.c ILP32 false +ProductLines product-lines/email_spec1_product22.cil.c ILP32 false +Recursive fuzzle-programs/13_fuzzle_50x50_CVE-2016-4493.c LP64 false +Sequentialized seq-mthreaded/pals_floodmax.5_overflow.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/CostasArray-12.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.elevator_planning.1.prop1-func-interl.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/getlimits_decimal_absval_add_one_positive_cover_proof.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_lifecycle__cover_proof_havoc_object.i LP64 false +Arrays array-fpi/s1iff.c ILP32 false +BitVectors bitvector/s3_clnt_3.BV.c.cil-2a.c ILP32 false +ECA eca-rers2018/Problem11.c ILP32 false +Floats floats-cdfpl/newton_2_8.i ILP32 false +Heap ldv-regression/test25-1.c ILP32 false +Loops nla-digbench-scaling/freire2_valuebound50.c ILP32 false +ProductLines product-lines/email_spec4_product19.cil.c ILP32 false +Recursive recursive-simple/id_o20.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr.6.1.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/aim-100-3-4-sat-2.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.mul9.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/relpath_path_common_prefix_valid_cover_target.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_tdr_metadata__cover_exit_havoc_memory.i LP64 false +Arrays array-industry-pattern/array_ptr_single_elem_init-2.i ILP32 false +BitVectors bitvector/soft_float_4-3a.c.cil.c ILP32 false +ECA eca-rers2018/Problem16.c ILP32 false +Floats floats-cdfpl/square_2.i ILP32 false +Heap list-ext3-properties/sll_nondet_insert-1.i ILP32 false +Loops nla-digbench-scaling/ps5-ll_unwindbound1.c ILP32 false +ProductLines product-lines/email_spec8_product22.cil.c ILP32 false +Recursive recursive/McCarthy91-1.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.5.1.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/aim-200-3-4-sat-1.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.sokoban.2.prop1-back-serstep.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/relpath_relpath_potential_buffer_overflow_cover_target.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__unexpected__cover_entry_havoc_object.i LP64 false +Arrays array-examples/standard_allDiff2_ground.i ILP32 false +BitVectors bitvector/byte_add-1.i ILP32 false +ECA eca-programs/Problem101_label00.c ILP32 false +Floats float-benchs/cast_union_loose.c ILP32 false +Heap forester-heap/dll-optional-2.i ILP32 false +Loops loop-invariants/linear-inequality-inv-b.c ILP32 false +ProductLines product-lines/elevator_spec1_product26.cil.c ILP32 false +Recursive fuzzle-programs/02_fuzzle_40x40.c LP64 false +Sequentialized seq-mthreaded/pals_STARTPALS_ActiveStandby.4_2.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/AllInterval-007.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w32_d32_e0.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/factors_trivial_cover_proof.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_sys_rd__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +Arrays array-examples/standard_running-1.i ILP32 false +BitVectors bitvector/sum02-1.c ILP32 false +ECA eca-rers2012/Problem05_label00.c ILP32 false +Floats float-benchs/inv_Newton.c.p+cfa-reducer.c ILP32 false +Heap forester-heap/dll-token-2.i ILP32 false +Loops loops/sum03-1.i ILP32 false +ProductLines product-lines/elevator_spec3_product28.cil.c ILP32 false +Recursive fuzzle-programs/06_fuzzle_50x50_0-cycle.c LP64 false +Sequentialized seq-mthreaded/pals_floodmax.3.4.ufo.BOUNDED-6.pals.c ILP32 false +XCSP xcsp/AllInterval-015.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.bakery.4.prop1-func-interl.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/factors_valid_numbers_cover_proof.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_export_restore__expected__cover_exit_havoc_memory.i LP64 false +Arrays array-fpi/eqn4f.c ILP32 false +ECA eca-rers2012/Problem11_label00.c ILP32 false +Floats float-benchs/sin_interpolated_index-1.c ILP32 false +Heap forester-heap/sll-rb-sentinel-2.i ILP32 false +Loops nla-digbench-scaling/egcd-ll_unwindbound100.c ILP32 false +ProductLines product-lines/email_spec11_product26.cil.c ILP32 false +Recursive fuzzle-programs/11_fuzzle_50x50_CVE-2016-4489.c LP64 false +Sequentialized seq-mthreaded/pals_floodmax.5.1.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/AllInterval-030.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w64_d64_e0.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/getlimits_decimal_absval_add_one_negative_cover_proof.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_input_rdx__cover_exit_havoc_memory.i LP64 false +Arrays array-fpi/indp4f.c ILP32 false +ECA eca-rers2012/Problem15_label00.c ILP32 false +Floats floats-cdfpl/newton_1_4.i ILP32 false +Heap heap-manipulation/sll_to_dll_rev-1.i ILP32 false +Loops nla-digbench-scaling/egcd3-ll_unwindbound20.c ILP32 false +ProductLines product-lines/email_spec27_product18.cil.c ILP32 false +Recursive fuzzle-programs/15_fuzzle_50x50_equality-checks.c LP64 false +Sequentialized seq-mthreaded/pals_lcr-var-start-time.4.2.ufo.BOUNDED-8.pals.c ILP32 false +XCSP xcsp/CostasArray-16.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.frogs.3.prop1-func-interl.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/relpath_path_common_prefix_identical_cover_proof.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_state_tdr_lifecycle__cover_entry_havoc_memory.i LP64 false +Arrays array-fpi/pcompf.c ILP32 false +ECA eca-rers2018/Problem10.c ILP32 false +Floats floats-cdfpl/newton_2_6.i ILP32 false +Heap ldv-regression/test22-3.c ILP32 false +Loops nla-digbench-scaling/fermat2-ll_unwindbound5.c ILP32 false +ProductLines product-lines/email_spec3_product27.cil.c ILP32 false +Recursive recursive-simple/id_o100.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr.4.1.ufo.BOUNDED-8.pals.c ILP32 false +XCSP xcsp/aim-100-2-0-sat-2.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.lann.6.prop1-back-serstep.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/relpath_path_common_prefix_symmetry_cover_target.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_state_tdr_metadata__cover_proof_havoc_object.i LP64 false +Arrays array-fpi/s3iff.c ILP32 false +ECA eca-rers2018/Problem12.c ILP32 false +Floats floats-cdfpl/newton_3_7.i ILP32 false +Heap ldv-sets/test_add-1.i ILP32 false +Loops nla-digbench-scaling/mannadiv_unwindbound2.c ILP32 false +ProductLines product-lines/email_spec4_product35.cil.c ILP32 false +Recursive recursive-simple/id_o3.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr.8_overflow.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/aim-100-6-0-sat-2.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.peg_solitaire.6.prop1-func-interl.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/relpath_relpath_different_paths_output_cover_target.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_state_pamt_metadata__cover_exit_havoc_object.i LP64 false +Arrays array-fpi/sqm-iff.c ILP32 false +ECA eca-rers2018/Problem15.c ILP32 false +Floats floats-cdfpl/sine_3.i ILP32 false +Heap list-ext2-properties/simple_and_skiplist_2lvl-1.i ILP32 false +Loops nla-digbench-scaling/prodbin-ll_unwindbound5.c ILP32 false +ProductLines product-lines/email_spec7_product30.cil.c ILP32 false +Recursive recursive/EvenOdd03.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.4.2.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/aim-200-2-0-sat-1.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.schedule_world.2.prop1-back-serstep.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/relpath_relpath_matching_paths_output_cover_target.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__expected__cover_entry_havoc_memory.i LP64 false +Arrays array-tiling/skippedu.c ILP32 false +ECA eca-rers2018/Problem17.c ILP32 false +Floats loop-floats-scientific-comp/loop1-2.c ILP32 false +Heap list-properties/list-2.i ILP32 false +Loops nla-digbench-scaling/ps6-ll_unwindbound10.c ILP32 false +ProductLines product-lines/email_spec9_product20.cil.c ILP32 false +Recursive verifythis/tree_del_rec_incorrect.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.5_overflow.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/aim-200-6-0-sat-1.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.twocount32.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/seq_cmp_antisymmetry_cover_target.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__unexpected__cover_proof_havoc_memory.i LP64 false +Arrays array-examples/sorting_bubblesort_ground-2.i ILP32 false +ECA eca-rers2012/Problem16_label00.c ILP32 false +Floats float-benchs/cast_float_ptr.c ILP32 false +Heap forester-heap/dll-01-1.i ILP32 false +Loops loop-acceleration/diamond_1-2.c ILP32 false +ProductLines product-lines/elevator_spec14_productSimulator.cil.c ILP32 false +Recursive fuzzle-programs/01_fuzzle_30x30.c LP64 false +Sequentialized seq-mthreaded/pals_STARTPALS_ActiveStandby.4_1.ufo.BOUNDED-10.pals.c ILP32 false +XCSP xcsp/AllInterval-005.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.adding.6.prop1-func-interl.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/factors_trivial_cover_target.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_servtd_wr__expected__cover_exit_havoc_object.i LP64 false +Arrays array-examples/standard_copy3_ground-2.i ILP32 false +ECA eca-rers2018/Problem13.c ILP32 false +Floats float-benchs/cast_union_tight.c ILP32 false +Heap forester-heap/dll-queue-2.i ILP32 false +Loops loops/bubble_sort-2.i ILP32 false +ProductLines product-lines/elevator_spec2_product18.cil.c ILP32 false +Recursive fuzzle-programs/03_fuzzle_50x50.c LP64 false +Sequentialized seq-mthreaded/pals_STARTPALS_Triplicated.1.ufo.BOUNDED-10.pals.c ILP32 false +XCSP xcsp/AllInterval-009.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n3_w16_d32_e0.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/factors_valid_64bit_number_cover_target.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__invalid_input_rcx__cover_entry_havoc_memory.i LP64 false +Arrays array-examples/standard_copy9_ground-1.i ILP32 false +ECA eca-rers2018/Problem18.c ILP32 false +Floats float-benchs/inv_Newton-2.c ILP32 false +Heap forester-heap/dll-simple-white-blue-1.i ILP32 false +Loops loops/n.c24.i ILP32 false +ProductLines product-lines/elevator_spec3_product19.cil.c ILP32 false +Recursive fuzzle-programs/05_fuzzle_70x70.c LP64 false +Sequentialized seq-mthreaded/pals_floodmax.3.2.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/AllInterval-013.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n5_w16_d64_e0.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/factors_valid_numbers_cover_target.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__unexpected__cover_exit_havoc_object.i LP64 false +Arrays array-fpi/brs3f.c ILP32 false +Floats float-benchs/inv_square-1.c ILP32 false +Heap forester-heap/sll-buckets-2.i ILP32 false +Loops loops/trex03-1.c ILP32 false +ProductLines product-lines/elevator_spec9_product28.cil.c ILP32 false +Recursive fuzzle-programs/07_fuzzle_50x50_25-cycle.c LP64 false +Sequentialized seq-mthreaded/pals_floodmax.4.1.ufo.BOUNDED-8.pals.c ILP32 false +XCSP xcsp/AllInterval-017.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp.3.prop1-back-serstep.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/getlimits_decimal_absval_add_one_all_nines_cover_target.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_import_abort__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +Arrays array-fpi/eqn1f.c ILP32 false +Floats float-benchs/nan_float.c ILP32 false +Heap forester-heap/sll-queue-2.i ILP32 false +Loops nla-digbench-scaling/bresenham-ll_unwindbound5.c ILP32 false +ProductLines product-lines/email_spec0_product35.cil.c ILP32 false +Recursive fuzzle-programs/10_fuzzle_50x50_CVE-2016-4487.c LP64 false +Sequentialized seq-mthreaded/pals_floodmax.4.4.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/AllInterval-020.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w128_d32_e0.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/getlimits_decimal_absval_add_one_negative_cover_target.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_td_state__cover_exit_havoc_object.i LP64 false +Arrays array-fpi/ifeqn1f.c ILP32 false +Floats float-benchs/sqrt_poly2.c ILP32 false +Heap forester-heap/sll-sorted-1.i ILP32 false +Loops nla-digbench-scaling/egcd-ll_unwindbound50.c ILP32 false +ProductLines product-lines/email_spec11_productSimulator.cil.c ILP32 false +Recursive fuzzle-programs/12_fuzzle_50x50_CVE-2016-4492.c LP64 false +Sequentialized seq-mthreaded/pals_floodmax.5.3.ufo.BOUNDED-10.pals.c ILP32 false +XCSP xcsp/CostasArray-10.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.cyclic_scheduler.2.prop1-func-interl.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/getlimits_decimal_absval_add_one_positive_cover_target.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__unexpected__cover_exit_havoc_memory.i LP64 false +Arrays array-fpi/indp1f.c ILP32 false +Floats float-newlib/float_req_bl_0870a.c ILP32 false +Heap heap-manipulation/dll_of_dll-2.i ILP32 false +Loops nla-digbench-scaling/egcd3-ll_unwindbound1.c ILP32 false +ProductLines product-lines/email_spec1_product32.cil.c ILP32 false +Recursive fuzzle-programs/14_fuzzle_50x50_CVE-2016-6131.c LP64 false +Sequentialized seq-mthreaded/pals_lcr-var-start-time.3.2.ufo.BOUNDED-6.pals.c ILP32 false +XCSP xcsp/CostasArray-14.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.firewire_tree.2.prop3-func-interl.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/relpath_path_common_prefix_identical_cover_target.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__unconstrained__cover_exit_success_havoc_object.i LP64 false +Arrays array-fpi/modpf.c ILP32 false +Floats floats-cdfpl/newton_1_5.i ILP32 false +Heap heap-manipulation/tree-4.i ILP32 false +Loops nla-digbench-scaling/fermat1-ll_unwindbound10.c ILP32 false +ProductLines product-lines/email_spec27_product27.cil.c ILP32 false +Recursive recursified_loop-invariants/recursified_linear-inequality-inv-b.c ILP32 unknown +Sequentialized seq-mthreaded/pals_lcr-var-start-time.5.1.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/aim-100-1-6-sat-1.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.gear.2.prop3-func-interl.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/relpath_path_common_prefix_valid_cover_proof.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__unexpected__cover_proof_havoc_object.i LP64 false +Arrays array-fpi/ncompf.c ILP32 false +Floats floats-cdfpl/newton_1_8.i ILP32 false +Heap ldv-regression/rule60_list2.c_1.i ILP32 false +Loops nla-digbench-scaling/fermat2-ll_unwindbound10.c ILP32 false +ProductLines product-lines/email_spec3_product18.cil.c ILP32 false +Recursive recursive-simple/id_o10.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr.3.1.ufo.BOUNDED-6.pals.c ILP32 false +XCSP xcsp/aim-100-1-6-sat-4.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.krebs.3.prop1-back-serstep.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/relpath_relpath_different_paths_output_cover_proof.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_input_tdr_hkid__cover_exit_havoc_memory.i LP64 false +Arrays array-fpi/res2f.c ILP32 false +Floats floats-cdfpl/newton_2_7.i ILP32 false +Heap ldv-regression/test23-1.c ILP32 false +Loops nla-digbench-scaling/freire2_valuebound100.c ILP32 false +ProductLines product-lines/email_spec3_product32.cil.c ILP32 false +Recursive recursive-simple/id_o1000.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr.5.1.ufo.BOUNDED-10.pals.c ILP32 false +XCSP xcsp/aim-100-2-0-sat-4.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.leader_filters.6.prop1-func-interl.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/relpath_relpath_identical_paths_cover_proof.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_input_hkid__cover_proof_havoc_object.i LP64 false +Arrays array-fpi/s2iff.c ILP32 false +Floats floats-cdfpl/newton_3_6.i ILP32 false +Heap ldv-regression/test28-1.c ILP32 false +Loops nla-digbench-scaling/hard2_unwindbound5.c ILP32 false +ProductLines product-lines/email_spec4_product30.cil.c ILP32 false +Recursive recursive-simple/id_o200.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr.7.1.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/aim-100-3-4-sat-4.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.needham.3.prop4-back-serstep.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/relpath_relpath_matching_paths_output_cover_proof.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_input_pa__cover_entry_havoc_memory.i LP64 false +Arrays array-fpi/s4iff.c ILP32 false +Floats floats-cdfpl/newton_3_8.i ILP32 false +Heap ldv-sets/test_mutex_double_unlock.i ILP32 false +Loops nla-digbench-scaling/prod4br-ll_unwindbound1.c ILP32 false +ProductLines product-lines/email_spec6_product16.cil.c ILP32 false +Recursive recursive-simple/sum_non_eq-3.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.3.2.ufo.BOUNDED-6.pals.c ILP32 false +XCSP xcsp/aim-100-6-0-sat-4.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.6.prop5-back-serstep.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/relpath_relpath_potential_buffer_overflow_cover_proof.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_input_hkid__cover_exit_havoc_memory.i LP64 false +Arrays array-fpi/sina3f.c ILP32 false +Floats floats-cdfpl/sine_2.i ILP32 false +Heap list-ext-properties/list-ext.i ILP32 false +Loops nla-digbench-scaling/prodbin-ll_unwindbound1.c ILP32 false +ProductLines product-lines/email_spec6_product34.cil.c ILP32 false +Recursive recursive/BallRajamani-SPIN2000-Fig1.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.4.1.ufo.BOUNDED-8.pals.c ILP32 false +XCSP xcsp/aim-200-1-6-sat-3.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.reader_writer.1.prop1-func-interl.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/seq_cmp_antisymmetry_cover_proof.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__expected__cover_proof_havoc_object.i LP64 false +Arrays array-fpi/ss2f.c ILP32 false +Floats floats-cdfpl/square_1.i ILP32 false +Heap list-ext3-properties/dll_nullified-1.i ILP32 false +Loops nla-digbench-scaling/ps4-ll_unwindbound2.c ILP32 false +ProductLines product-lines/email_spec7_product35.cil.c ILP32 false +Recursive recursive/Fibonacci04.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.4.4.ufo.BOUNDED-8.pals.c ILP32 false +XCSP xcsp/aim-200-2-0-sat-3.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w32_d16_e0.c LP64 false +SoftwareSystems-coreutils coreutils-v9.5-units/seq_incr_no_carry_cover_proof.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__expected__cover_entry_havoc_memory.i LP64 false +Arrays array-programs/copysome1-2.i ILP32 false +Floats floats-cdfpl/square_3.i ILP32 false +Heap list-ext3-properties/sll_of_sll_nondet_append-2.i ILP32 false +Loops nla-digbench-scaling/ps5-ll_unwindbound20.c ILP32 false +ProductLines product-lines/email_spec8_product33.cil.c ILP32 false +Recursive verifythis/tree_del_rec.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.5.3.ufo.BOUNDED-10.pals.c ILP32 false +XCSP xcsp/aim-200-3-4-sat-3.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.telephony.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_handoff_version__cover_exit_havoc_object.i LP64 false +Arrays reducercommutativity/rangesum10.i ILP32 false +Floats loop-floats-scientific-comp/loop2-1.c ILP32 false +Heap list-properties/simple-1.i ILP32 false +Loops nla-digbench-scaling/ps6-ll_unwindbound5.c ILP32 false +ProductLines product-lines/email_spec9_product31.cil.c ILP32 false +Recursive verifythis/tree_max.c ILP32 false +Sequentialized seq-pthread/cs_queue-2.i ILP32 false +XCSP xcsp/aim-200-6-0-sat-3.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.vis_QF_BV_s1269b_p4.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_op_state__cover_proof_havoc_object.i LP64 false +Arrays array-examples/data_structures_set_multi_proc_ground-1.i ILP32 false +Floats floats-cdfpl/newton_1_6.i ILP32 false +Heap forester-heap/dll-circular-1.i ILP32 false +Loops loop-acceleration/array_2-1.i ILP32 false +ProductLines product-lines/elevator_spec14_product24.cil.c ILP32 false +Recursive fuzzle-programs/08_fuzzle_50x50_50-cycle.c LP64 false +Sequentialized seq-mthreaded/pals_STARTPALS_ActiveStandby.1.ufo.BOUNDED-10.pals.c ILP32 false +XCSP xcsp/AllInterval-006.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.adding.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_mr_report__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +Arrays array-examples/sorting_selectionsort_2_ground.i ILP32 false +Floats loop-floats-scientific-comp/loop4.i ILP32 false +Heap forester-heap/dll-rb-cnstr_1-2.i ILP32 false +Loops loop-acceleration/simple_2-2.c ILP32 false +ProductLines product-lines/elevator_spec1_product20.cil.c ILP32 false +Recursive recursive-simple/id2_b3_o2.c ILP32 false +Sequentialized seq-mthreaded/pals_STARTPALS_ActiveStandby.4_1.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/AllInterval-008.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.anderson.7.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_servtd_wr__unexpected__cover_exit_havoc_object.i LP64 false +Arrays array-examples/standard_copy1_ground-2.i ILP32 false +Heap forester-heap/dll-sorted-1.i ILP32 false +Loops loops-crafted-1/nested_delay_notd2.c ILP32 false +ProductLines product-lines/elevator_spec1_product30.cil.c ILP32 false +Recursive recursive/Ackermann02.c ILP32 false +Sequentialized seq-mthreaded/pals_STARTPALS_ActiveStandby.5.ufo.BOUNDED-10.pals.c ILP32 false +XCSP xcsp/AllInterval-010.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w64_d8_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__expected__cover_exit_havoc_memory.i LP64 false +Arrays array-examples/standard_copy4_ground-2.i ILP32 false +Heap forester-heap/sll-01-2.i ILP32 false +Loops loops/count_up_down-2.c ILP32 false +ProductLines product-lines/elevator_spec2_product24.cil.c ILP32 false +Recursive recursive/Fibonacci05.c ILP32 false +Sequentialized seq-mthreaded/pals_STARTPALS_Triplicated.2.ufo.BOUNDED-10.pals.c ILP32 false +XCSP xcsp/AllInterval-012.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n3_w8_d128_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__unexpected__cover_entry_havoc_memory.i LP64 false +Arrays array-examples/standard_copy7_ground-1.i ILP32 false +Heap forester-heap/sll-circular-2.i ILP32 false +Loops loops/linear_search.c ILP32 false +ProductLines product-lines/elevator_spec2_productSimulator.cil.c ILP32 false +Recursive verifythis/tree_max_incorrect.c ILP32 false +Sequentialized seq-mthreaded/pals_floodmax.3.1.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/AllInterval-014.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n4_w8_d128_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__invalid_input_vmflag__cover_exit_havoc_object.i LP64 false +Arrays array-examples/standard_minInArray_ground-1.i ILP32 false +Heap forester-heap/sll-rb-cnstr_1-2.i ILP32 false +Loops loops/string-2.i ILP32 false +ProductLines product-lines/elevator_spec3_product23.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_floodmax.3.3.ufo.BOUNDED-6.pals.c ILP32 false +XCSP xcsp/AllInterval-016.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.at.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_vmcall__invalid_input_bitmap__cover_proof_havoc_object.i LP64 false +Arrays array-fpi/brs1f.c ILP32 false +Heap forester-heap/sll-simple-white-blue-2.i ILP32 false +Loops loops/trex01-1.c ILP32 false +ProductLines product-lines/elevator_spec3_product32.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_floodmax.3.4.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/AllInterval-018.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.bridge.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_export_restore__unexpected__cover_exit_havoc_memory.i LP64 false +Arrays array-fpi/brs5f.c ILP32 false +Heap forester-heap/sll-token-1.i ILP32 false +Loops nla-digbench-scaling/bresenham-ll_unwindbound1.c ILP32 false +ProductLines product-lines/elevator_spec9_productSimulator.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_floodmax.4.2.ufo.BOUNDED-8.pals.c ILP32 false +XCSP xcsp/AllInterval-025.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__expected__cover_exit_havoc_memory.i LP64 false +Arrays array-fpi/condmf.c ILP32 false +Heap heap-manipulation/merge_sort-1.i ILP32 false +Loops nla-digbench-scaling/bresenham-ll_unwindbound2.c ILP32 false +ProductLines product-lines/email_spec0_product31.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_floodmax.4.3.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/AllInterval-035.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.cambridge.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_lifecycle__cover_proof_havoc_object.i LP64 false +Arrays array-fpi/eqn2f.c ILP32 false +Heap heap-manipulation/tree-2.i ILP32 false +Loops nla-digbench-scaling/egcd-ll_unwindbound1.c ILP32 false +ProductLines product-lines/email_spec11_product15.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_floodmax.4_overflow.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/CostasArray-11.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w32_d128_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__unexpected__cover_exit_havoc_object.i LP64 false +Arrays array-fpi/eqn5f.c ILP32 false +Heap ldv-regression/fo_test.i ILP32 false +Loops nla-digbench-scaling/egcd-ll_unwindbound20.c ILP32 false +ProductLines product-lines/email_spec11_product32.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_floodmax.5.2.ufo.BOUNDED-10.pals.c ILP32 false +XCSP xcsp/CostasArray-13.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.collision.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_state_tdr_page__cover_entry_havoc_memory.i LP64 false +Arrays array-fpi/ifeqn2f.c ILP32 false +Heap ldv-regression/test21-2.c ILP32 false +Loops nla-digbench-scaling/egcd2-ll_unwindbound10.c ILP32 false +ProductLines product-lines/email_spec1_product16.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_floodmax.5.4.ufo.BOUNDED-10.pals.c ILP32 false +XCSP xcsp/CostasArray-15.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.driving_phils.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_input_tdr_pa__cover_entry_havoc_memory.i LP64 false +Arrays array-fpi/ifeqn5f.c ILP32 false +Heap ldv-regression/test24-2.c ILP32 false +Loops nla-digbench-scaling/egcd2-ll_unwindbound5.c ILP32 false +ProductLines product-lines/email_spec1_product29.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr-var-start-time.3.1.ufo.BOUNDED-6.pals.c ILP32 false +XCSP xcsp/CostasArray-17.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.eq_sdp_v7.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_pamt_metadata__cover_exit_havoc_object.i LP64 false +Arrays array-fpi/indp2f.c ILP32 false +Heap ldv-regression/test29-1.c ILP32 false +Loops nla-digbench-scaling/egcd3-ll_unwindbound100.c ILP32 false +ProductLines product-lines/email_spec1_product35.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr-var-start-time.4.1.ufo.BOUNDED-8.pals.c ILP32 false +XCSP xcsp/aim-100-1-6-sat-2.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.fischer.5.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_input_tdr_hkid__cover_entry_havoc_object.i LP64 false +Arrays array-fpi/indp5f.c ILP32 false +Heap ldv-sets/test_mutex_double_lock.i ILP32 false +Loops nla-digbench-scaling/egcd3-ll_unwindbound50.c ILP32 false +ProductLines product-lines/email_spec27_product23.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr-var-start-time.4.2.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/aim-100-2-0-sat-1.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.gear.1.prop3-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_state_tdr_metadata__cover_proof_havoc_memory.i LP64 false +Arrays array-fpi/ms1f.c ILP32 false +Heap ldv-sets/test_mutex_unbounded-2.i ILP32 false +Loops nla-digbench-scaling/fermat1-ll_unwindbound2.c ILP32 false +ProductLines product-lines/email_spec27_product31.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr-var-start-time.5.2.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/aim-100-2-0-sat-3.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.hanoi.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_state_kot__cover_exit_havoc_object.i LP64 false +Arrays array-fpi/ms4f.c ILP32 false +Heap list-ext-properties/simple-ext.i ILP32 false +Loops nla-digbench-scaling/fermat1-ll_unwindbound50.c ILP32 false +ProductLines product-lines/email_spec27_productSimulator.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr-var-start-time.6.2.ufo.BOUNDED-12.pals.c ILP32 false +XCSP xcsp/aim-100-3-4-sat-1.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.iprotocol.6.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__unexpected__cover_proof_havoc_memory.i LP64 false +Arrays array-fpi/nsqm-iff.c ILP32 false +Heap list-ext2-properties/simple_search_value-2.i ILP32 false +Loops nla-digbench-scaling/fermat2-ll_unwindbound2.c ILP32 false +ProductLines product-lines/email_spec3_product23.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr.3.1.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/aim-100-3-4-sat-3.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.lamport.8.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_state_tdr_lifecycle__cover_entry_havoc_memory.i LP64 false +Arrays array-fpi/res1f.c ILP32 false +Heap list-ext3-properties/sll_length_check-1.i ILP32 false +Loops nla-digbench-scaling/freire2_valuebound1.c ILP32 false +ProductLines product-lines/email_spec3_product29.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr.4.1.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/aim-100-6-0-sat-1.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.leader_election.4.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__expected__cover_entry_havoc_object.i LP64 false +Arrays array-fpi/res2of.c ILP32 false +Heap list-properties/alternating_list-2.i ILP32 false +Loops nla-digbench-scaling/freire2_valuebound20.c ILP32 false +ProductLines product-lines/email_spec3_product35.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr.5_overflow.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/aim-100-6-0-sat-3.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.loyd.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_op_state__cover_exit_havoc_object.i LP64 false +Arrays array-fpi/s1liff.c ILP32 false +Heap list-properties/list_flag-1.i ILP32 false +Loops nla-digbench-scaling/hard2_unwindbound10.c ILP32 false +ProductLines product-lines/email_spec4_product24.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr.6_overflow.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/aim-200-1-6-sat-1.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.needham.1.prop4-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__unexpected__cover_exit_havoc_memory.i LP64 false +Arrays array-fpi/s2liff.c ILP32 false +Heap list-properties/splice-1.i ILP32 false +Loops nla-digbench-scaling/mannadiv_unwindbound10.c ILP32 false +ProductLines product-lines/email_spec4_product32.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr.8.1.ufo.BOUNDED-16.pals.c ILP32 false +XCSP xcsp/aim-200-1-6-sat-4.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.peg_solitaire.1.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_state_child_count__cover_proof_havoc_memory.i LP64 false +Arrays array-fpi/s3liff.c ILP32 false +Loops nla-digbench-scaling/mannadiv_unwindbound5.c ILP32 false +ProductLines product-lines/email_spec6_product12.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.3.1.ufo.BOUNDED-6.pals.c ILP32 false +XCSP xcsp/aim-200-2-0-sat-2.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.peterson.6.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__unexpected__cover_exit_havoc_object.i LP64 false +Arrays array-fpi/s52iff.c ILP32 false +Loops nla-digbench-scaling/prod4br-ll_unwindbound100.c ILP32 false +ProductLines product-lines/email_spec6_product22.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.3.3.ufo.BOUNDED-6.pals.c ILP32 false +XCSP xcsp/aim-200-2-0-sat-4.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.production_cell.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_state_lp_state__cover_entry_havoc_memory.i LP64 false +Arrays array-fpi/sina1f.c ILP32 false +Loops nla-digbench-scaling/prod4br-ll_unwindbound5.c ILP32 false +ProductLines product-lines/email_spec6_product31.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.3.4.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/aim-200-3-4-sat-2.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.protocols.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__unexpected__cover_entry_havoc_object.i LP64 false +Arrays array-fpi/sina4f.c ILP32 false +Loops nla-digbench-scaling/prodbin-ll_unwindbound2.c ILP32 false +ProductLines product-lines/email_spec6_productSimulator.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.4.1.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/aim-200-3-4-sat-4.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.rether.6.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__invalid_state_sys_state__cover_exit_havoc_object.i LP64 false +Arrays array-fpi/sqmf.c ILP32 false +Loops nla-digbench-scaling/ps4-ll_unwindbound10.c ILP32 false +ProductLines product-lines/email_spec7_product32.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.4.3.ufo.BOUNDED-8.pals.c ILP32 false +XCSP xcsp/aim-200-6-0-sat-2.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w128_d64_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__invalid_state_sys_state__cover_proof_havoc_memory.i LP64 false +Arrays array-fpi/ss4f.c ILP32 false +Loops nla-digbench-scaling/ps4-ll_unwindbound5.c ILP32 false +ProductLines product-lines/email_spec8_product16.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.4_overflow.ufo.UNBOUNDED.pals.c ILP32 false +XCSP xcsp/aim-200-6-0-sat-4.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w64_d8_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__invalid_input_handoff_no_downgrade__cover_proof_havoc_memory.i LP64 false +Arrays array-industry-pattern/array_single_elem_init.i ILP32 false +Loops nla-digbench-scaling/ps5-ll_unwindbound100.c ILP32 false +ProductLines product-lines/email_spec8_product30.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.5.2.ufo.BOUNDED-10.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.synapse.5.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__expected__cover_proof_havoc_object.i LP64 false +Arrays array-programs/copysome2-2.i ILP32 false +Loops nla-digbench-scaling/ps5-ll_unwindbound50.c ILP32 false +ProductLines product-lines/email_spec8_productSimulator.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.5.4.ufo.BOUNDED-10.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.train-gate.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_sys_state__cover_entry_havoc_object.i LP64 false +Arrays reducercommutativity/rangesum.i ILP32 false +Loops nla-digbench-scaling/ps6-ll_unwindbound2.c ILP32 false +ProductLines product-lines/email_spec9_product22.cil.c ILP32 false +Sequentialized seq-pthread/cs_fib-2.i ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.v_Unidec.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_lifecycle__cover_entry_havoc_memory.i LP64 false +Arrays reducercommutativity/rangesum40.i ILP32 false +Loops verifythis/tree_del_iter.c ILP32 false +ProductLines product-lines/email_spec9_product34.cil.c ILP32 false +Sequentialized seq-pthread/cs_stack-2.i ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.vis_arrays_bpbs_p4.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_td_state__cover_exit_havoc_object.i LP64 false +Arrays array-examples/sorting_bubblesort_2_ground.i ILP32 false +Loops loop-acceleration/array_3-2.i ILP32 false +ProductLines product-lines/elevator_spec14_product20.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_STARTPALS_ActiveStandby.1.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-array/btor2c-lazyMod.unsafe_ridecore_array.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_mr_report__expected__cover_proof_havoc_memory.i LP64 false +Arrays array-examples/sorting_selectionsort_ground-1.i ILP32 false +Loops loop-acceleration/multivar_1-2.c ILP32 false +ProductLines product-lines/elevator_spec14_product28.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_STARTPALS_ActiveStandby.4_2.ufo.BOUNDED-10.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.adding.4.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_mr_report__unexpected__cover_proof_havoc_memory.i LP64 false +Arrays array-examples/standard_copy2_ground-1.i ILP32 false +Loops loop-acceleration/simple_3-1.c ILP32 false +ProductLines product-lines/elevator_spec1_product18.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_STARTPALS_ActiveStandby.5.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.anderson.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_servtd_wr__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +Arrays array-examples/standard_copy5_ground-2.i ILP32 false +Loops loop-invgen/id_trans.i ILP32 false +ProductLines product-lines/elevator_spec1_product22.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_STARTPALS_Triplicated.1.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w16_d64_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_sys_rd__expected__cover_exit_havoc_memory.i LP64 false +Arrays array-examples/standard_copy8_ground-2.i ILP32 false +Loops loops/array-2.c ILP32 false +ProductLines product-lines/elevator_spec1_product28.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_STARTPALS_Triplicated.2.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w64_d128_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_sys_rd__unexpected__cover_exit_havoc_object.i LP64 false +Arrays array-examples/standard_partition_ground-1.i ILP32 false +Loops loops/compact.c ILP32 false +ProductLines product-lines/elevator_spec1_product32.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_floodmax.3.2.ufo.BOUNDED-6.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w8_d64_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__invalid_input_field_id__cover_entry_havoc_object.i LP64 false +Arrays array-fpi/brs2f.c ILP32 false +Loops loops/for_bounded_loop1.c ILP32 false +ProductLines product-lines/elevator_spec2_product20.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_floodmax.3.3.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n3_w32_d16_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__invalid_input_rcx__cover_proof_havoc_object.i LP64 false +Arrays array-fpi/brs4f.c ILP32 false +Loops loops/invert_string-1.c ILP32 false +ProductLines product-lines/elevator_spec2_product26.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_floodmax.3_overflow.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n3_w8_d8_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__unexpected__cover_proof_havoc_object.i LP64 false +Arrays array-fpi/condaf.c ILP32 false +Loops loops/matrix-2-2.c ILP32 false +ProductLines product-lines/elevator_spec2_product32.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_floodmax.4.1.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n4_w32_d16_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__invalid_input_gpa__cover_proof_havoc_memory.i LP64 false +Arrays array-fpi/condnf.c ILP32 false +Loops loops/nec20.c ILP32 false +ProductLines product-lines/elevator_spec3_product03.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_floodmax.4.2.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n4_w8_d8_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +Arrays array-fpi/eqn3f.c ILP32 false +Loops loops/sum01_bug02.i ILP32 false +ProductLines product-lines/elevator_spec3_product20.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_floodmax.4.4.ufo.BOUNDED-8.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n5_w8_d32_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_vmcall__invalid_input_bitmap__cover_entry_havoc_memory.i LP64 false +Arrays array-fpi/ifcompf.c ILP32 false +Loops loops/terminator_01.c ILP32 false +ProductLines product-lines/elevator_spec3_product24.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_floodmax.5.1.ufo.BOUNDED-10.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.at.6.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_vmcall__unexpected__cover_exit_havoc_memory.i LP64 false +Arrays array-fpi/ifeqn3f.c ILP32 false +Loops loops/trex02-2.c ILP32 false +ProductLines product-lines/elevator_spec3_product31.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_floodmax.5.2.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.blocks.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_export_restore__unconstrained__cover_exit_success_havoc_object.i LP64 false +Arrays array-fpi/ifncompf.c ILP32 false +Loops loops/vogal-2.i ILP32 false +ProductLines product-lines/elevator_spec3_productSimulator.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_floodmax.5.3.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.bridge.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_import_abort__expected__cover_entry_havoc_object.i LP64 false +Arrays array-fpi/indp3f.c ILP32 false +Loops nla-digbench-scaling/bresenham-ll_unwindbound10.c ILP32 false +ProductLines product-lines/elevator_spec9_product30.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_floodmax.5.4.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp.5.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_import_abort__unexpected__cover_exit_havoc_object.i LP64 false +Arrays array-fpi/modnf.c ILP32 false +Loops nla-digbench-scaling/bresenham-ll_unwindbound20.c ILP32 false +ProductLines product-lines/email_spec0_product16.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr-var-start-time.3.1.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.2.prop3-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_input_tdcx_pa__cover_entry_havoc_object.i LP64 false +Arrays array-fpi/modsf.c ILP32 false +Loops nla-digbench-scaling/bresenham-ll_unwindbound50.c ILP32 false +ProductLines product-lines/email_spec0_product26.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr-var-start-time.3.2.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.5.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_lifecycle__cover_entry_havoc_memory.i LP64 false +Arrays array-fpi/ms2f.c ILP32 false +Loops nla-digbench-scaling/egcd-ll_unwindbound10.c ILP32 false +ProductLines product-lines/email_spec0_product33.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr-var-start-time.4.1.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.cambridge.7.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_pamt_metadata__cover_proof_havoc_memory.i LP64 false +Arrays array-fpi/ms5f.c ILP32 false +Loops nla-digbench-scaling/egcd-ll_unwindbound2.c ILP32 false +ProductLines product-lines/email_spec0_productSimulator.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr-var-start-time.5.1.ufo.BOUNDED-10.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w16_d16_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +Arrays array-fpi/nsqmf.c ILP32 false +Loops nla-digbench-scaling/egcd-ll_unwindbound5.c ILP32 false +ProductLines product-lines/email_spec11_product20.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr-var-start-time.5.2.ufo.BOUNDED-10.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w32_d8_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_input_rcx__cover_exit_havoc_memory.i LP64 false +Arrays array-fpi/res1of.c ILP32 false +Loops nla-digbench-scaling/egcd2-ll_unwindbound1.c ILP32 false +ProductLines product-lines/email_spec11_product30.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr-var-start-time.6.1.ufo.BOUNDED-12.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w8_d16_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_state_kot_entry__cover_entry_havoc_object.i LP64 false +Arrays array-fpi/s12iff.c ILP32 false +Loops nla-digbench-scaling/egcd2-ll_unwindbound100.c ILP32 false +ProductLines product-lines/email_spec11_product33.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr-var-start-time.6.2.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.count2.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_state_tdr_page__cover_proof_havoc_object.i LP64 false +Arrays array-fpi/s22iff.c ILP32 false +Loops nla-digbench-scaling/egcd2-ll_unwindbound20.c ILP32 false +ProductLines product-lines/email_spec1_product14.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr.3_overflow.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.driving_phils.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__expected__cover_entry_havoc_object.i LP64 false +Arrays array-fpi/s32iff.c ILP32 false +Loops nla-digbench-scaling/egcd2-ll_unwindbound50.c ILP32 false +ProductLines product-lines/email_spec1_product20.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr.4_overflow.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.driving_phils.5.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_input_tdr_pa__cover_proof_havoc_object.i LP64 false +Arrays array-fpi/s42iff.c ILP32 false +Loops nla-digbench-scaling/egcd3-ll_unwindbound10.c ILP32 false +ProductLines product-lines/email_spec1_product26.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr.5.1.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.elevator_planning.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_op_state__cover_proof_havoc_memory.i LP64 false +Arrays array-fpi/s4liff.c ILP32 false +Loops nla-digbench-scaling/egcd3-ll_unwindbound2.c ILP32 false +ProductLines product-lines/email_spec1_product30.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr.6.1.ufo.BOUNDED-12.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.extinction.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_td_state__cover_exit_havoc_memory.i LP64 false +Arrays array-fpi/s5iff.c ILP32 false +Loops nla-digbench-scaling/egcd3-ll_unwindbound5.c ILP32 false +ProductLines product-lines/email_spec1_product33.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr.7.1.ufo.BOUNDED-14.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.fischer.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__unexpected__cover_exit_havoc_memory.i LP64 false +Arrays array-fpi/sina2f.c ILP32 false +Loops nla-digbench-scaling/fermat1-ll_unwindbound1.c ILP32 false +ProductLines product-lines/email_spec1_productSimulator.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr.7_overflow.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.frogs.1.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_state_td_state__cover_entry_havoc_memory.i LP64 false +Arrays array-fpi/sina5f.c ILP32 false +Loops nla-digbench-scaling/fermat1-ll_unwindbound100.c ILP32 false +ProductLines product-lines/email_spec27_product19.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_lcr.8.1.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.gear.1.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_state_tdr_lifecycle__cover_proof_havoc_object.i LP64 false +Arrays array-fpi/ss1f.c ILP32 false +Loops nla-digbench-scaling/fermat1-ll_unwindbound20.c ILP32 false +ProductLines product-lines/email_spec27_product24.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.3.1.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.gear.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +Arrays array-fpi/ss3f.c ILP32 false +Loops nla-digbench-scaling/fermat2-ll_unwindbound1.c ILP32 false +ProductLines product-lines/email_spec27_product29.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.3.2.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.h_FIFO.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_input_tdr_hkid__cover_proof_havoc_memory.i LP64 false +Arrays array-fpi/ssinaf.c ILP32 false +Loops nla-digbench-scaling/fermat2-ll_unwindbound100.c ILP32 false +ProductLines product-lines/email_spec27_product32.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.3.3.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.iprotocol.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_state_tdr_lifecycle__cover_exit_havoc_memory.i LP64 false +Arrays array-industry-pattern/check_removal_from_set_after_insertion.c ILP32 false +Loops nla-digbench-scaling/fermat2-ll_unwindbound20.c ILP32 false +ProductLines product-lines/email_spec27_product35.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.3_overflow.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.iprotocol.4.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +Arrays array-tiling/mlceu.c ILP32 false +Loops nla-digbench-scaling/fermat2-ll_unwindbound50.c ILP32 false +ProductLines product-lines/email_spec3_product13.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.4.2.ufo.BOUNDED-8.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.krebs.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__expected__cover_exit_havoc_object.i LP64 false +Arrays reducercommutativity/rangesum05.i ILP32 false +Loops nla-digbench-scaling/freire2_valuebound10.c ILP32 false +ProductLines product-lines/email_spec3_product19.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.4.3.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.lamport.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_state_op_state__cover_entry_havoc_object.i LP64 false +Arrays reducercommutativity/rangesum20.i ILP32 false +Loops nla-digbench-scaling/freire2_valuebound2.c ILP32 false +ProductLines product-lines/email_spec3_product24.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.4.4.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.lann.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_state_tdr_lifecycle__cover_proof_havoc_object.i LP64 false +Arrays reducercommutativity/rangesum60.i ILP32 false +Loops nla-digbench-scaling/freire2_valuebound5.c ILP32 false +ProductLines product-lines/email_spec3_product28.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.5.1.ufo.BOUNDED-10.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.lann.7.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__unexpected__cover_exit_havoc_memory.i LP64 false +Loops nla-digbench-scaling/hard2_unwindbound1.c ILP32 false +ProductLines product-lines/email_spec3_product30.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.5.2.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.leader_election.6.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_input_hkid__cover_entry_havoc_memory.i LP64 false +Loops nla-digbench-scaling/hard2_unwindbound2.c ILP32 false +ProductLines product-lines/email_spec3_product33.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.5.3.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.lifts.8.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_lifecycle__cover_proof_havoc_memory.i LP64 false +Loops nla-digbench-scaling/mannadiv_unwindbound1.c ILP32 false +ProductLines product-lines/email_spec3_productSimulator.cil.c ILP32 false +Sequentialized seq-mthreaded/pals_opt-floodmax.5.4.ufo.UNBOUNDED.pals.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.mul11.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_td_state__cover_exit_havoc_memory.i LP64 false +Loops nla-digbench-scaling/mannadiv_unwindbound100.c ILP32 false +ProductLines product-lines/email_spec4_product23.cil.c ILP32 false +Sequentialized seq-pthread/cs_fib_longer-2.i ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.needham.1.prop2-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__unconstrained__cover_exit_success_havoc_object.i LP64 false +Loops nla-digbench-scaling/mannadiv_unwindbound20.c ILP32 false +ProductLines product-lines/email_spec4_product25.cil.c ILP32 false +Sequentialized seq-pthread/cs_read_write_lock-2.i ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.needham.2.prop4-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__expected__cover_entry_havoc_object.i LP64 false +Loops nla-digbench-scaling/mannadiv_unwindbound50.c ILP32 false +ProductLines product-lines/email_spec4_product31.cil.c ILP32 false +Sequentialized seq-pthread/cs_stateful-1.i ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.needham.4.prop4-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_input_pa__cover_proof_havoc_object.i LP64 false +Loops nla-digbench-scaling/prod4br-ll_unwindbound10.c ILP32 false +ProductLines product-lines/email_spec4_product33.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.peg_solitaire.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_state_lifecycle__cover_exit_havoc_object.i LP64 false +Loops nla-digbench-scaling/prod4br-ll_unwindbound2.c ILP32 false +ProductLines product-lines/email_spec4_productSimulator.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.peterson.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +Loops nla-digbench-scaling/prod4br-ll_unwindbound50.c ILP32 false +ProductLines product-lines/email_spec6_product14.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.3.prop5-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__expected__cover_exit_havoc_memory.i LP64 false +Loops nla-digbench-scaling/prodbin-ll_unwindbound10.c ILP32 false +ProductLines product-lines/email_spec6_product20.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.pouring.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_input_num_ptr__cover_entry_havoc_object.i LP64 false +Loops nla-digbench-scaling/prodbin-ll_unwindbound20.c ILP32 false +ProductLines product-lines/email_spec6_product26.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.production_cell.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_state_lp_state__cover_proof_havoc_object.i LP64 false +Loops nla-digbench-scaling/ps4-ll_unwindbound1.c ILP32 false +ProductLines product-lines/email_spec6_product30.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.production_cell.6.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_state_tdmr_info__cover_proof_havoc_memory.i LP64 false +Loops nla-digbench-scaling/ps4-ll_unwindbound100.c ILP32 false +ProductLines product-lines/email_spec6_product32.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.protocols.4.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__expected__cover_entry_havoc_memory.i LP64 false +Loops nla-digbench-scaling/ps4-ll_unwindbound20.c ILP32 false +ProductLines product-lines/email_spec6_product35.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.resistance.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__invalid_input_rcx__cover_proof_havoc_memory.i LP64 false +Loops nla-digbench-scaling/ps4-ll_unwindbound50.c ILP32 false +ProductLines product-lines/email_spec7_product28.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.rushhour.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__unexpected__cover_entry_havoc_memory.i LP64 false +Loops nla-digbench-scaling/ps5-ll_unwindbound10.c ILP32 false +ProductLines product-lines/email_spec7_product31.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.schedule_world.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__expected__cover_proof_havoc_object.i LP64 false +Loops nla-digbench-scaling/ps5-ll_unwindbound2.c ILP32 false +ProductLines product-lines/email_spec7_product33.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w16_d32_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__unexpected__cover_entry_havoc_object.i LP64 false +Loops nla-digbench-scaling/ps5-ll_unwindbound5.c ILP32 false +ProductLines product-lines/email_spec7_productSimulator.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w64_d128_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__expected__cover_proof_havoc_object.i LP64 false +Loops nla-digbench-scaling/ps6-ll_unwindbound1.c ILP32 false +ProductLines product-lines/email_spec8_product20.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w8_d64_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__invalid_input_handoff_range__cover_exit_havoc_object.i LP64 false +Loops nla-digbench-scaling/ps6-ll_unwindbound100.c ILP32 false +ProductLines product-lines/email_spec8_product26.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.sw_sym_ex_v.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__expected__cover_entry_havoc_memory.i LP64 false +Loops nla-digbench-scaling/ps6-ll_unwindbound20.c ILP32 false +ProductLines product-lines/email_spec8_product31.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.szymanski.4.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_handoff_data__cover_proof_havoc_memory.i LP64 false +Loops nla-digbench-scaling/ps6-ll_unwindbound50.c ILP32 false +ProductLines product-lines/email_spec8_product34.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.telephony.7.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_lp_state__cover_exit_havoc_memory.i LP64 false +Loops verifythis/tree_del_iter_incorrect.c ILP32 false +ProductLines product-lines/email_spec9_product15.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.train-gate.5.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +ProductLines product-lines/email_spec9_product21.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.unsafe_intersymbol_analog_estimation_convergence.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_input_vcpu_handle__cover_entry_havoc_object.i LP64 false +ProductLines product-lines/email_spec9_product26.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.vis_QF_BV_fru32_p1.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_lifecycle__cover_proof_havoc_object.i LP64 false +ProductLines product-lines/email_spec9_product32.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.vis_arrays_am2901.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_pamt_metadata__cover_proof_havoc_memory.i LP64 false +ProductLines product-lines/email_spec9_product35.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.vis_arrays_vsa16a_p6.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__unexpected__cover_entry_havoc_memory.i LP64 false +ProductLines product-lines/elevator_spec14_product32.cil.c ILP32 false +Hardware hardware-verification-array/btor2c-lazyMod.unsafe_arbitrated_fifos_n2d8w8.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_mr_report__expected__cover_entry_havoc_object.i LP64 false +ProductLines product-lines/elevator_spec1_product24.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.adding.1.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_mr_report__unconstrained__cover_exit_success_havoc_memory.i LP64 false +ProductLines product-lines/elevator_spec1_productSimulator.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.adding.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_mr_report__unexpected__cover_entry_havoc_object.i LP64 false +ProductLines product-lines/elevator_spec2_product22.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.adding.5.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_servtd_wr__expected__cover_entry_havoc_memory.i LP64 false +ProductLines product-lines/elevator_spec2_product28.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.anderson.1.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_servtd_wr__expected__cover_proof_havoc_object.i LP64 false +ProductLines product-lines/elevator_spec3_product11.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.anderson.5.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_servtd_wr__unexpected__cover_entry_havoc_memory.i LP64 false +ProductLines product-lines/elevator_spec3_product27.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w16_d16_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_servtd_wr__unexpected__cover_proof_havoc_object.i LP64 false +ProductLines product-lines/elevator_spec9_product26.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w32_d128_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_sys_rd__expected__cover_proof_havoc_object.i LP64 false +ProductLines product-lines/elevator_spec9_product32.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w32_d64_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_sys_rd__unexpected__cover_entry_havoc_memory.i LP64 false +ProductLines product-lines/email_spec0_product21.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w64_d32_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_sys_rd__unexpected__cover_proof_havoc_object.i LP64 false +ProductLines product-lines/email_spec0_product34.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w8_d16_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__expected__cover_proof_havoc_memory.i LP64 false +ProductLines product-lines/email_spec11_product22.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n3_w16_d128_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__invalid_input_field_id__cover_exit_havoc_object.i LP64 false +ProductLines product-lines/email_spec11_product35.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n3_w16_d8_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__invalid_input_rcx__cover_exit_havoc_memory.i LP64 false +ProductLines product-lines/email_spec1_product15.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n3_w32_d64_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__unconstrained__cover_exit_success_havoc_object.i LP64 false +ProductLines product-lines/email_spec1_product21.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n3_w8_d32_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__unexpected__cover_exit_havoc_memory.i LP64 false +ProductLines product-lines/email_spec1_product31.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n4_w16_d16_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__expected__cover_exit_havoc_memory.i LP64 false +ProductLines product-lines/email_spec1_product34.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n4_w16_d8_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__invalid_input_gpa__cover_entry_havoc_object.i LP64 false +ProductLines product-lines/email_spec27_product17.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n4_w32_d64_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__invalid_input_vmflag__cover_entry_havoc_memory.i LP64 false +ProductLines product-lines/email_spec27_product25.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n4_w8_d32_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__invalid_input_vmflag__cover_proof_havoc_object.i LP64 false +ProductLines product-lines/email_spec27_product30.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n5_w16_d16_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__unexpected__cover_entry_havoc_memory.i LP64 false +ProductLines product-lines/email_spec27_product33.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n5_w8_d128_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__unexpected__cover_proof_havoc_object.i LP64 false +ProductLines product-lines/email_spec3_product17.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n5_w8_d8_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_vmcall__invalid_input_bitmap__cover_exit_havoc_memory.i LP64 false +ProductLines product-lines/email_spec3_product25.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.at.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_vmcall__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +ProductLines product-lines/email_spec3_product31.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.bakery.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_vmcall__unexpected__cover_proof_havoc_object.i LP64 false +ProductLines product-lines/email_spec3_product34.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.bakery.6.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_export_restore__expected__cover_proof_havoc_memory.i LP64 false +ProductLines product-lines/email_spec4_product18.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.blocks.4.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_export_restore__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +ProductLines product-lines/email_spec4_product27.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.bridge.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_export_restore__unexpected__cover_proof_havoc_memory.i LP64 false +ProductLines product-lines/email_spec4_product34.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_import_abort__expected__cover_exit_havoc_object.i LP64 false +ProductLines product-lines/email_spec6_product15.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp.4.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_import_abort__unexpected__cover_entry_havoc_memory.i LP64 false +ProductLines product-lines/email_spec6_product21.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp.6.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_import_abort__unexpected__cover_proof_havoc_object.i LP64 false +ProductLines product-lines/email_spec6_product28.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__expected__cover_proof_havoc_memory.i LP64 false +ProductLines product-lines/email_spec6_product33.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_input_tdcx_pa__cover_proof_havoc_memory.i LP64 false +ProductLines product-lines/email_spec7_product29.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.4.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_input_tdr_pa__cover_exit_havoc_object.i LP64 false +ProductLines product-lines/email_spec7_product34.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.6.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_lifecycle__cover_exit_havoc_memory.i LP64 false +ProductLines product-lines/email_spec8_product15.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.cambridge.6.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_pamt_metadata__cover_entry_havoc_object.i LP64 false +ProductLines product-lines/email_spec8_product21.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w128_d128_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_td_state__cover_entry_havoc_memory.i LP64 false +ProductLines product-lines/email_spec8_product32.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w128_d8_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_td_state__cover_proof_havoc_object.i LP64 false +ProductLines product-lines/email_spec8_product35.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w16_d64_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__unexpected__cover_entry_havoc_memory.i LP64 false +ProductLines product-lines/email_spec9_product16.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w32_d32_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__unexpected__cover_proof_havoc_object.i LP64 false +ProductLines product-lines/email_spec9_product30.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w64_d16_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_input_rcx__cover_proof_havoc_object.i LP64 false +ProductLines product-lines/email_spec9_product33.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w64_d8_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_input_rdx__cover_proof_havoc_memory.i LP64 false +ProductLines product-lines/email_spec9_productSimulator.cil.c ILP32 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w8_d64_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_state_kot_entry__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.collision.5.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_state_tdr_page__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.counter_v.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.cyclic_scheduler.4.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__unexpected__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.driving_phils.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__expected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.driving_phils.4.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_input_tdr_pa__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.dyn_partition.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_lifecycle__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.elevator_planning.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_op_state__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.eq_sdp_v3.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_pamt_metadata__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.exit.4.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_pamt_metadata__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.factorial4even.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_td_state__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.firewire_tree.4.prop3-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.fischer.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__unexpected__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.fischer.7.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_input_tdr_hkid__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.frogs.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_state_td_state__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.frogs.4.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_state_tdr_lifecycle__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.gear.1.prop2-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_state_tdr_metadata__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.gear.1.prop4-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__unconstrained__cover_exit_success_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.gear.2.prop2-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__unexpected__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.gear.2.prop4-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_input_tdr_hkid__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.hanoi.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_state_kot__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.hanoi.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_state_kot__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.iprotocol.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_state_tdr_lifecycle__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.iprotocol.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_state_tdr_metadata__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.iprotocol.5.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__unexpected__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.iprotocol.7.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__expected__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.krebs.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__expected__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.lamport.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_input_tdr_hkid__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.lamport.6.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_state_op_state__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.lamport_nonatomic.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_state_tdr_lifecycle__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.lann.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_state_tdr_metadata__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.lann.6.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.lann.8.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__unexpected__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.leader_election.5.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__expected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.leader_filters.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_input_hkid__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.lifts.5.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_lifecycle__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.loyd.1.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_op_state__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.msmie.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_op_state__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.mul6.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_td_state__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.needham.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_tdr_metadata__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.needham.1.prop3-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.needham.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__unexpected__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.needham.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__expected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.needham.4.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_input_pa__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.noninitstate.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_state_child_count__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.peg_solitaire.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_state_lifecycle__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.peg_solitaire.5.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_state_pamt_metadata__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.peterson.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_state_pamt_metadata__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.peterson.5.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__unexpected__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.1.prop5-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__unexpected__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.5.prop5-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__expected__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.8.prop5-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_input_hkid__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.pouring.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_input_num_ptr__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.production_cell.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_state_lp_state__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.production_cell.4.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_state_sys_state__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.production_cell.5.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_state_tdmr_info__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.protocols.1.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.protocols.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__unexpected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.protocols.5.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__expected__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.reader_writer.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__invalid_input_rcx__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.rether.4.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__invalid_state_sys_state__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.rushhour.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__invalid_state_sys_state__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.schedule_world.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__unexpected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.schedule_world.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__expected__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w128_d16_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__invalid_state_sys_state__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w16_d128_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w16_d8_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__unexpected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w32_d64_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__expected__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w64_d32_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__invalid_input_handoff_no_downgrade__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w8_d16_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__invalid_input_handoff_range__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.sokoban.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.sokoban.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__unexpected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.synapse.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__expected__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.szymanski.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_handoff_data__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.telephony.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_handoff_version__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.telephony.6.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_handoff_version__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.telephony.8.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_lp_state__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.train-gate.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_sys_state__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.twocount2.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__unexpected__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.unsafe_analog_estimation_convergence.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__expected__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.v_DAIO.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_input_vcpu_handle__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.vcegar_QF_BV_usb_phy_1.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_lifecycle__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.vis_QF_BV_fru32_p3.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_op_state__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.vis_QF_BV_vMiim_p2.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_pamt_metadata__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.vis_arrays_bpbs_p2.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_td_state__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.vis_arrays_palu.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_td_state__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.vis_arrays_vsa16a_p8.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__unexpected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-array/btor2c-lazyMod.unsafe_linked_list_fifo_n2d4.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_mr_report__expected__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.adding.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_mr_report__expected__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.adding.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_mr_report__expected__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.adding.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_mr_report__unconstrained__cover_exit_success_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.adding.4.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_mr_report__unexpected__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.adding.5.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_mr_report__unexpected__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.adding.6.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_mr_report__unexpected__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.anderson.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_servtd_wr__expected__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.anderson.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_servtd_wr__expected__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.anderson.5.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_servtd_wr__unconstrained__cover_exit_success_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.anderson.7.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_servtd_wr__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w16_d128_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_servtd_wr__unexpected__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w16_d32_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_servtd_wr__unexpected__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w16_d8_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_sys_rd__expected__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w32_d16_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_sys_rd__expected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w32_d8_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_sys_rd__unconstrained__cover_exit_success_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w64_d16_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_sys_rd__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w64_d64_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_sys_rd__unexpected__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w8_d128_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_sys_rd__unexpected__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w8_d32_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__expected__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n2_w8_d8_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__expected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n3_w16_d16_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__expected__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n3_w16_d64_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__invalid_input_field_id__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n3_w32_d128_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__invalid_input_field_id__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n3_w32_d32_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__invalid_input_rcx__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n3_w32_d8_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__invalid_input_rcx__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n3_w8_d16_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__unconstrained__cover_exit_success_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n3_w8_d64_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n4_w16_d128_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__unexpected__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n4_w16_d32_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__unexpected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n4_w32_d128_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__expected__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n4_w32_d32_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__expected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n4_w32_d8_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__invalid_input_gpa__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n4_w8_d16_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__invalid_input_gpa__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n4_w8_d64_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__invalid_input_gpa__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n5_w16_d128_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__invalid_input_vmflag__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n5_w16_d32_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__invalid_input_vmflag__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n5_w16_d8_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__unconstrained__cover_exit_success_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n5_w8_d16_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.arbitrated_top_n5_w8_d64_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__unexpected__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.at.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__unexpected__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.at.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_vmcall__expected__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.at.6.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_vmcall__invalid_input_bitmap__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.bakery.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_vmcall__invalid_input_bitmap__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.bakery.4.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_vmcall__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.bakery.6.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_vmcall__unexpected__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.blocks.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_vmcall__unexpected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.blocks.4.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_export_restore__expected__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.bridge.1.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_export_restore__expected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.bridge.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_export_restore__expected__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.bridge.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_export_restore__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_export_restore__unexpected__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_export_restore__unexpected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp.4.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_export_restore__unexpected__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp.5.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_import_abort__expected__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp.6.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_import_abort__expected__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.1.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_import_abort__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_import_abort__unexpected__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.2.prop3-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_import_abort__unexpected__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__expected__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.5.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__expected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.brp2.6.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__expected__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.cambridge.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_input_tdcx_pa__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.cambridge.6.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_input_tdcx_pa__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.cambridge.7.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_input_tdr_pa__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.cav14_example_v.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_input_tdr_pa__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w128_d16_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_lifecycle__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w128_d64_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_lifecycle__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w16_d128_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_pamt_metadata__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w16_d32_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_pamt_metadata__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w16_d8_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_pamt_metadata__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w32_d16_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_td_state__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w32_d64_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_td_state__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w64_d128_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__unconstrained__cover_exit_success_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w64_d32_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w8_d128_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__unexpected__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w8_d32_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__unexpected__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.circular_pointer_top_w8_d8_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_input_rcx__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.collision.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_input_rcx__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.collision.5.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_input_rdx__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.count4.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_input_rdx__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.cyclic_scheduler.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_input_rdx__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.cyclic_scheduler.4.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_state_kot_entry__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.diagonal_v.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_state_kot_entry__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.driving_phils.1.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_state_tdr_page__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.driving_phils.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_state_tdr_page__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.driving_phils.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.driving_phils.4.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__unexpected__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.driving_phils.5.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__unexpected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.elevator_planning.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__unexpected__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.elevator_planning.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__expected__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.elevator_planning.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__expected__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.eq_sdp_v5.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_input_tdr_pa__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.ethernet.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_input_tdr_pa__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.exit.4.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_lifecycle__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.extinction.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_lifecycle__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.firewire_tree.2.prop3-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_op_state__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.firewire_tree.4.prop3-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_op_state__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.fischer.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_op_state__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.fischer.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_pamt_metadata__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.fischer.5.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_pamt_metadata__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.fischer.7.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_td_state__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.frogs.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_td_state__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.frogs.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_td_state__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.frogs.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.frogs.4.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__unexpected__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.gear.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__unexpected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.gear.1.prop2-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__unexpected__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.gear.1.prop3-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_input_tdr_hkid__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.gear.1.prop4-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_input_tdr_hkid__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.gear.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_state_td_state__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.gear.2.prop2-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_state_td_state__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.gear.2.prop3-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_state_tdr_lifecycle__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.gear.2.prop4-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_state_tdr_lifecycle__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.h_CRC.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_state_tdr_metadata__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.h_b05.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_state_tdr_metadata__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.hanoi.1.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_state_tdr_metadata__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.hanoi.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__unconstrained__cover_exit_success_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.hanoi.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__unexpected__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.iprotocol.1.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__unexpected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.iprotocol.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_input_tdr_hkid__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.iprotocol.4.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_input_tdr_hkid__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.iprotocol.5.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_input_tdr_hkid__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.iprotocol.6.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_state_kot__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.iprotocol.7.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_state_kot__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.itc99_b12.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_state_tdr_lifecycle__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.krebs.1.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_state_tdr_lifecycle__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.krebs.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_state_tdr_metadata__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.krebs.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_state_tdr_metadata__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.lamport.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_state_tdr_metadata__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.lamport.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__unexpected__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.lamport.6.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__unexpected__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.lamport.8.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__unexpected__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.lamport_nonatomic.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__expected__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.lann.1.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__expected__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.lann.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_input_tdr_hkid__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.lann.7.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_input_tdr_hkid__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.lann.8.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_input_tdr_hkid__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.leader_election.4.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_state_op_state__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.leader_election.5.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_state_op_state__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.leader_election.6.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_state_tdr_lifecycle__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.leader_filters.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_state_tdr_lifecycle__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.leader_filters.6.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_state_tdr_metadata__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.lifts.5.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_state_tdr_metadata__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.lifts.8.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.loyd.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__unexpected__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.loyd.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__unexpected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.msmie.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__unexpected__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.mul10.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__expected__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.mul5.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__expected__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.mul8.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_input_hkid__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.needham.1.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_input_hkid__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.needham.1.prop2-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_lifecycle__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.needham.1.prop3-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_lifecycle__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.needham.1.prop4-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_lifecycle__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.needham.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_op_state__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.needham.2.prop4-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_op_state__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.needham.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_td_state__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.needham.3.prop4-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_td_state__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.needham.4.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_tdr_metadata__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.needham.4.prop4-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_tdr_metadata__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.peg_solitaire.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_tdr_metadata__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.peg_solitaire.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.peg_solitaire.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__unexpected__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.peg_solitaire.5.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__unexpected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.peg_solitaire.6.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__unexpected__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.peterson.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__expected__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.peterson.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__expected__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.peterson.5.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_input_pa__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.peterson.6.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_input_pa__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.1.prop5-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_state_child_count__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.3.prop5-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_state_child_count__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.5.prop5-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_state_child_count__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.6.prop5-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_state_lifecycle__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.pgm_protocol.8.prop5-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_state_lifecycle__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.pouring.1.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_state_pamt_metadata__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.pouring.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_state_pamt_metadata__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.production_cell.1.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__unconstrained__cover_exit_success_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.production_cell.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.production_cell.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__unexpected__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.production_cell.4.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__unexpected__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.production_cell.6.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__expected__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.protocols.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__expected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.protocols.2.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_input_hkid__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.protocols.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_input_hkid__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.protocols.4.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_input_hkid__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.protocols.5.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_input_num_ptr__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.reader_writer.1.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_input_num_ptr__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.reader_writer.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_state_lp_state__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.recount4.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_state_lp_state__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.resistance.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_state_sys_state__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.rether.4.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_state_sys_state__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.rether.6.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_state_tdmr_info__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.rushhour.1.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_state_tdmr_info__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.rushhour.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_state_tdmr_info__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.schedule_world.1.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.schedule_world.3.prop1-back-serstep.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__unexpected__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w128_d128_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__unexpected__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w128_d32_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__expected__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w128_d8_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__expected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w16_d16_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__invalid_input_rcx__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w16_d64_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__invalid_input_rcx__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w32_d128_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__invalid_input_rcx__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w32_d32_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__invalid_state_sys_state__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w32_d8_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__invalid_state_sys_state__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w64_d16_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w64_d64_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__unexpected__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w8_d128_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__unexpected__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w8_d32_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__expected__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.shift_register_top_w8_d8_e0.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__expected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.sokoban.1.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__invalid_state_sys_state__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.sw_loop_v.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__invalid_state_sys_state__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.synabs2.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__invalid_state_sys_state__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.synapse.1.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.synapse.5.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__unexpected__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.szymanski.2.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__unexpected__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.szymanski.4.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__expected__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.telephony.1.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__expected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.telephony.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__invalid_input_handoff_no_downgrade__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.telephony.6.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__invalid_input_handoff_no_downgrade__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.telephony.7.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__invalid_input_handoff_no_downgrade__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.telephony.8.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__invalid_input_handoff_range__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.train-gate.1.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__invalid_input_handoff_range__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.train-gate.3.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.train-gate.5.prop1-func-interl.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__unexpected__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.twocount2c.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__unexpected__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.unknown_ridecore.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__expected__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.unsafe_buggy_ridecore.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__expected__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.usb_phy.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_handoff_data__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.v_FIFO.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_handoff_data__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.v_non-pipelined-microprocessor.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_handoff_data__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.vcegar_arrays_itc99_b12_p1.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_handoff_version__cover_entry_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.vis_QF_BV_fru32_p2.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_handoff_version__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.vis_QF_BV_rotate32.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_lp_state__cover_entry_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.vis_QF_BV_spinner32.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_lp_state__cover_exit_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.vis_arrays_FIFOs.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_lp_state__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.vis_arrays_bpbs_p1.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_sys_state__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.vis_arrays_bpbs_p3.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_sys_state__cover_proof_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.vis_arrays_buf_bug.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.vis_arrays_two_p1.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__unexpected__cover_exit_havoc_memory.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.vis_arrays_vsa16a_p7.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__unexpected__cover_proof_havoc_object.i LP64 false +Hardware hardware-verification-bv/btor2c-lazyMod.vis_arrays_vsaR_p01.c LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__expected__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_input_vcpu_handle__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_input_vcpu_handle__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_lifecycle__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_lifecycle__cover_exit_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_op_state__cover_entry_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_op_state__cover_exit_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_pamt_metadata__cover_entry_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_pamt_metadata__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_pamt_metadata__cover_proof_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_td_state__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_td_state__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__unexpected__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__unexpected__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_mr_report__expected__cover_exit_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_mr_report__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_mr_report__unexpected__cover_exit_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_servtd_wr__expected__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_servtd_wr__unconstrained__cover_exit_success_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_servtd_wr__unexpected__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_sys_rd__expected__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_sys_rd__expected__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_sys_rd__unconstrained__cover_exit_success_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_sys_rd__unexpected__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__expected__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__invalid_input_field_id__cover_entry_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__invalid_input_field_id__cover_proof_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__invalid_input_rcx__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vm_wr__unexpected__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__expected__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__expected__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__invalid_input_gpa__cover_exit_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__invalid_input_vmflag__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__unconstrained__cover_exit_success_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_enter__unexpected__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_vmcall__expected__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_vmcall__invalid_input_bitmap__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_vmcall__unexpected__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdg_vp_vmcall__unexpected__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_export_restore__expected__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_export_restore__unconstrained__cover_exit_success_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_export_restore__unexpected__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_import_abort__expected__cover_entry_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_import_abort__expected__cover_proof_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_import_abort__unexpected__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__expected__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_input_tdcx_pa__cover_entry_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_input_tdcx_pa__cover_exit_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_input_tdr_pa__cover_entry_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_input_tdr_pa__cover_proof_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_lifecycle__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_pamt_metadata__cover_exit_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__invalid_state_td_state__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__unconstrained__cover_exit_success_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_addcx__unexpected__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_input_rcx__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_input_rcx__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_input_rdx__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_state_kot_entry__cover_entry_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_state_kot_entry__cover_proof_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__invalid_state_tdr_page__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_create__unexpected__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__expected__cover_entry_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__expected__cover_proof_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_input_tdr_pa__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_lifecycle__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_lifecycle__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_op_state__cover_exit_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_pamt_metadata__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__invalid_state_td_state__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__unconstrained__cover_exit_success_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_init__unexpected__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_input_tdr_hkid__cover_entry_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_input_tdr_hkid__cover_proof_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_state_td_state__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_state_td_state__cover_proof_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_state_tdr_lifecycle__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__invalid_state_tdr_metadata__cover_exit_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__unexpected__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_config__unexpected__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_input_tdr_hkid__cover_exit_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_state_kot__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_state_tdr_lifecycle__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_state_tdr_lifecycle__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__invalid_state_tdr_metadata__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__unconstrained__cover_exit_unsuccess_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_key_freeid__unexpected__cover_exit_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__expected__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_input_tdr_hkid__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_state_op_state__cover_entry_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_state_op_state__cover_proof_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_state_tdr_lifecycle__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_state_tdr_metadata__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__invalid_state_tdr_metadata__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mng_vpflushdone__unexpected__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__expected__cover_entry_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__expected__cover_proof_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_input_hkid__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_lifecycle__cover_exit_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_op_state__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_td_state__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_td_state__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__invalid_state_tdr_metadata__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__unconstrained__cover_exit_success_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_mr_finalize__unexpected__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__expected__cover_entry_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__expected__cover_proof_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_input_pa__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_state_child_count__cover_exit_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_state_lifecycle__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_state_lifecycle__cover_proof_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__invalid_state_pamt_metadata__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__unconstrained__cover_exit_success_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_phymem_page_reclaim__unexpected__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__expected__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__expected__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_input_hkid__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_input_num_ptr__cover_entry_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_input_num_ptr__cover_proof_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_state_lp_state__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_state_sys_state__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_state_sys_state__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__invalid_state_tdmr_info__cover_exit_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__unexpected__cover_entry_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_config__unexpected__cover_proof_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__expected__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__invalid_input_rcx__cover_exit_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__invalid_state_sys_state__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__unexpected__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_init__unexpected__cover_proof_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__expected__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__invalid_state_sys_state__cover_exit_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__unexpected__cover_entry_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_key_config__unexpected__cover_proof_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__expected__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__invalid_input_handoff_no_downgrade__cover_exit_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__invalid_input_handoff_range__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__invalid_input_handoff_range__cover_proof_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__unexpected__cover_entry_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_shutdown__unexpected__cover_proof_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__expected__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_handoff_data__cover_exit_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_handoff_version__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_lp_state__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_sys_state__cover_entry_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__invalid_state_sys_state__cover_proof_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__unexpected__cover_entry_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_sys_update__unexpected__cover_exit_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_input_vcpu_handle__cover_entry_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_input_vcpu_handle__cover_proof_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_lifecycle__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_op_state__cover_entry_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_op_state__cover_proof_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_pamt_metadata__cover_exit_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__invalid_state_td_state__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__unconstrained__cover_exit_unsuccess_havoc_object.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__unexpected__cover_exit_havoc_memory.i LP64 false +SoftwareSystems-Intel-TDX-Module intel-tdx-module/tdh_vp_enter__unexpected__cover_proof_havoc_object.i LP64 false diff --git a/tests/testcomp/official/bench-defs/excludes/ECA-excludes.set b/tests/testcomp/official/bench-defs/excludes/ECA-excludes.set new file mode 100644 index 000000000..3252e5878 --- /dev/null +++ b/tests/testcomp/official/bench-defs/excludes/ECA-excludes.set @@ -0,0 +1,1027 @@ +../../sv-benchmarks/c/eca-programs/Problem101_label01.yml +../../sv-benchmarks/c/eca-programs/Problem101_label02.yml +../../sv-benchmarks/c/eca-programs/Problem101_label03.yml +../../sv-benchmarks/c/eca-programs/Problem101_label04.yml +../../sv-benchmarks/c/eca-programs/Problem101_label05.yml +../../sv-benchmarks/c/eca-programs/Problem101_label06.yml +../../sv-benchmarks/c/eca-programs/Problem101_label07.yml +../../sv-benchmarks/c/eca-programs/Problem101_label08.yml +../../sv-benchmarks/c/eca-programs/Problem101_label09.yml +../../sv-benchmarks/c/eca-programs/Problem101_label10.yml +../../sv-benchmarks/c/eca-programs/Problem101_label11.yml +../../sv-benchmarks/c/eca-programs/Problem101_label12.yml +../../sv-benchmarks/c/eca-programs/Problem101_label13.yml +../../sv-benchmarks/c/eca-programs/Problem101_label14.yml +../../sv-benchmarks/c/eca-programs/Problem101_label15.yml +../../sv-benchmarks/c/eca-programs/Problem101_label16.yml +../../sv-benchmarks/c/eca-programs/Problem101_label17.yml +../../sv-benchmarks/c/eca-programs/Problem101_label18.yml +../../sv-benchmarks/c/eca-programs/Problem101_label19.yml +../../sv-benchmarks/c/eca-programs/Problem101_label20.yml +../../sv-benchmarks/c/eca-programs/Problem101_label21.yml +../../sv-benchmarks/c/eca-programs/Problem101_label22.yml +../../sv-benchmarks/c/eca-programs/Problem101_label23.yml +../../sv-benchmarks/c/eca-programs/Problem102_label01.yml +../../sv-benchmarks/c/eca-programs/Problem102_label02.yml +../../sv-benchmarks/c/eca-programs/Problem102_label03.yml +../../sv-benchmarks/c/eca-programs/Problem102_label04.yml +../../sv-benchmarks/c/eca-programs/Problem102_label05.yml +../../sv-benchmarks/c/eca-programs/Problem102_label06.yml +../../sv-benchmarks/c/eca-programs/Problem102_label07.yml +../../sv-benchmarks/c/eca-programs/Problem102_label08.yml +../../sv-benchmarks/c/eca-programs/Problem102_label09.yml +../../sv-benchmarks/c/eca-programs/Problem102_label10.yml +../../sv-benchmarks/c/eca-programs/Problem102_label11.yml +../../sv-benchmarks/c/eca-programs/Problem102_label12.yml +../../sv-benchmarks/c/eca-programs/Problem102_label13.yml +../../sv-benchmarks/c/eca-programs/Problem102_label14.yml +../../sv-benchmarks/c/eca-programs/Problem102_label15.yml +../../sv-benchmarks/c/eca-programs/Problem102_label16.yml +../../sv-benchmarks/c/eca-programs/Problem102_label17.yml +../../sv-benchmarks/c/eca-programs/Problem102_label18.yml +../../sv-benchmarks/c/eca-programs/Problem102_label19.yml +../../sv-benchmarks/c/eca-programs/Problem102_label20.yml +../../sv-benchmarks/c/eca-programs/Problem102_label21.yml +../../sv-benchmarks/c/eca-programs/Problem102_label22.yml +../../sv-benchmarks/c/eca-programs/Problem102_label23.yml +../../sv-benchmarks/c/eca-programs/Problem102_label24.yml +../../sv-benchmarks/c/eca-programs/Problem102_label25.yml +../../sv-benchmarks/c/eca-programs/Problem102_label26.yml +../../sv-benchmarks/c/eca-programs/Problem102_label27.yml +../../sv-benchmarks/c/eca-programs/Problem102_label28.yml +../../sv-benchmarks/c/eca-programs/Problem102_label29.yml +../../sv-benchmarks/c/eca-programs/Problem102_label30.yml +../../sv-benchmarks/c/eca-programs/Problem102_label31.yml +../../sv-benchmarks/c/eca-programs/Problem102_label32.yml +../../sv-benchmarks/c/eca-programs/Problem102_label33.yml +../../sv-benchmarks/c/eca-programs/Problem102_label34.yml +../../sv-benchmarks/c/eca-programs/Problem102_label35.yml +../../sv-benchmarks/c/eca-programs/Problem102_label36.yml +../../sv-benchmarks/c/eca-programs/Problem102_label37.yml +../../sv-benchmarks/c/eca-programs/Problem102_label38.yml +../../sv-benchmarks/c/eca-programs/Problem102_label39.yml +../../sv-benchmarks/c/eca-programs/Problem102_label40.yml +../../sv-benchmarks/c/eca-programs/Problem102_label41.yml +../../sv-benchmarks/c/eca-programs/Problem102_label42.yml +../../sv-benchmarks/c/eca-programs/Problem102_label43.yml +../../sv-benchmarks/c/eca-programs/Problem102_label44.yml +../../sv-benchmarks/c/eca-programs/Problem102_label45.yml +../../sv-benchmarks/c/eca-programs/Problem102_label46.yml +../../sv-benchmarks/c/eca-programs/Problem102_label47.yml +../../sv-benchmarks/c/eca-programs/Problem102_label48.yml +../../sv-benchmarks/c/eca-programs/Problem102_label49.yml +../../sv-benchmarks/c/eca-programs/Problem102_label50.yml +../../sv-benchmarks/c/eca-programs/Problem102_label51.yml +../../sv-benchmarks/c/eca-programs/Problem102_label52.yml +../../sv-benchmarks/c/eca-programs/Problem102_label53.yml +../../sv-benchmarks/c/eca-programs/Problem102_label54.yml +../../sv-benchmarks/c/eca-programs/Problem102_label55.yml +../../sv-benchmarks/c/eca-programs/Problem102_label56.yml +../../sv-benchmarks/c/eca-programs/Problem102_label57.yml +../../sv-benchmarks/c/eca-programs/Problem102_label58.yml +../../sv-benchmarks/c/eca-programs/Problem102_label59.yml +../../sv-benchmarks/c/eca-programs/Problem103_label35.yml +../../sv-benchmarks/c/eca-programs/Problem103_label40.yml +../../sv-benchmarks/c/eca-programs/Problem103_label41.yml +../../sv-benchmarks/c/eca-programs/Problem103_label42.yml +../../sv-benchmarks/c/eca-programs/Problem103_label43.yml +../../sv-benchmarks/c/eca-programs/Problem103_label44.yml +../../sv-benchmarks/c/eca-programs/Problem103_label45.yml +../../sv-benchmarks/c/eca-programs/Problem103_label46.yml +../../sv-benchmarks/c/eca-programs/Problem103_label47.yml +../../sv-benchmarks/c/eca-programs/Problem103_label48.yml +../../sv-benchmarks/c/eca-programs/Problem103_label49.yml +../../sv-benchmarks/c/eca-programs/Problem103_label50.yml +../../sv-benchmarks/c/eca-programs/Problem103_label51.yml +../../sv-benchmarks/c/eca-programs/Problem103_label52.yml +../../sv-benchmarks/c/eca-programs/Problem103_label53.yml +../../sv-benchmarks/c/eca-programs/Problem103_label54.yml +../../sv-benchmarks/c/eca-programs/Problem103_label55.yml +../../sv-benchmarks/c/eca-programs/Problem103_label56.yml +../../sv-benchmarks/c/eca-programs/Problem103_label57.yml +../../sv-benchmarks/c/eca-programs/Problem103_label58.yml +../../sv-benchmarks/c/eca-programs/Problem103_label59.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label01.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label02.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label03.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label04.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label05.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label06.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label07.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label08.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label09.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label10.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label11.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label12.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label13.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label14.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label15.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label16.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label17.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label18.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label19.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label20.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label21.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label22.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label23.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label24.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label25.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label26.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label27.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label28.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label29.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label30.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label31.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label32.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label33.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label34.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label35.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label36.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label37.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label38.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label39.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label40.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label41.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label42.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label43.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label44.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label45.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label46.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label47.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label48.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label49.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label50.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label51.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label52.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label53.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label54.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label55.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label56.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label57.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label58.yml +../../sv-benchmarks/c/eca-rers2012/Problem03_label59.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label01.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label02.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label03.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label04.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label05.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label06.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label07.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label08.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label09.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label10.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label13.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label15.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label16.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label18.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label19.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label21.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label22.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label25.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label26.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label28.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label30.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label31.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label32.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label33.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label34.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label35.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label38.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label39.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label41.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label45.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label47.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label48.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label50.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label51.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label52.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label53.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label54.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label55.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label56.yml +../../sv-benchmarks/c/eca-rers2012/Problem04_label59.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label01.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label02.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label03.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label04.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label05.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label06.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label07.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label08.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label09.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label10.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label11.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label12.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label13.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label14.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label15.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label16.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label17.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label18.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label19.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label20.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label21.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label22.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label23.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label24.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label25.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label26.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label27.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label28.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label29.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label30.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label31.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label32.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label33.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label34.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label35.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label36.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label37.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label38.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label39.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label40.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label41.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label42.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label43.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label44.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label45.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label46.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label47.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label48.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label49.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label50.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label51.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label52.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label53.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label54.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label55.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label56.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label57.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label58.yml +../../sv-benchmarks/c/eca-rers2012/Problem05_label59.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label01.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label02.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label03.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label04.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label05.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label06.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label07.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label08.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label09.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label10.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label11.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label12.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label13.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label14.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label15.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label16.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label17.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label18.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label19.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label20.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label21.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label22.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label23.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label24.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label25.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label26.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label27.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label28.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label29.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label30.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label31.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label32.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label33.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label34.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label35.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label36.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label37.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label38.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label39.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label40.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label41.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label42.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label43.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label44.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label45.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label46.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label47.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label48.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label49.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label50.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label51.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label52.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label53.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label54.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label55.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label56.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label57.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label58.yml +../../sv-benchmarks/c/eca-rers2012/Problem06_label59.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label01.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label02.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label03.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label04.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label05.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label06.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label07.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label08.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label09.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label10.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label11.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label12.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label13.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label14.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label15.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label16.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label17.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label18.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label19.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label20.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label21.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label22.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label23.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label24.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label25.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label26.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label27.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label28.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label29.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label30.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label31.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label32.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label33.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label34.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label35.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label36.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label37.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label38.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label39.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label40.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label41.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label42.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label43.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label44.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label45.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label46.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label47.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label48.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label49.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label50.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label51.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label52.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label53.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label54.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label55.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label56.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label57.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label58.yml +../../sv-benchmarks/c/eca-rers2012/Problem07_label59.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label01.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label02.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label03.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label04.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label05.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label06.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label07.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label08.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label09.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label10.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label11.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label12.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label13.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label14.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label15.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label16.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label17.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label18.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label19.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label20.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label21.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label22.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label23.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label24.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label25.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label26.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label27.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label28.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label29.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label30.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label31.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label32.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label33.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label34.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label35.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label36.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label37.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label38.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label39.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label40.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label41.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label42.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label43.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label44.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label45.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label46.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label47.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label48.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label49.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label50.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label51.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label52.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label53.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label54.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label55.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label56.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label57.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label58.yml +../../sv-benchmarks/c/eca-rers2012/Problem08_label59.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label01.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label02.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label03.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label04.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label05.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label06.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label07.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label08.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label09.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label10.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label11.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label12.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label13.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label14.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label15.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label16.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label17.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label18.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label19.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label20.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label21.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label22.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label23.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label24.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label25.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label26.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label27.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label28.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label29.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label30.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label31.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label32.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label33.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label34.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label35.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label36.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label37.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label38.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label39.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label40.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label41.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label42.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label43.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label44.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label45.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label46.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label47.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label48.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label49.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label50.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label51.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label52.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label53.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label54.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label55.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label56.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label57.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label58.yml +../../sv-benchmarks/c/eca-rers2012/Problem09_label59.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label01.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label02.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label03.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label04.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label05.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label06.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label07.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label08.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label09.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label10.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label11.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label12.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label13.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label14.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label15.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label16.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label17.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label18.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label19.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label20.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label21.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label22.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label23.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label24.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label25.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label26.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label27.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label28.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label29.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label30.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label31.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label32.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label33.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label34.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label35.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label36.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label37.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label38.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label39.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label40.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label41.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label42.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label43.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label44.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label45.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label46.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label47.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label48.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label49.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label50.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label51.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label52.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label53.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label54.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label55.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label56.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label57.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label58.yml +../../sv-benchmarks/c/eca-rers2012/Problem10_label59.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label01.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label02.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label03.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label04.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label05.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label06.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label07.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label08.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label09.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label10.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label11.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label12.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label13.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label14.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label15.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label16.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label17.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label18.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label19.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label20.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label21.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label22.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label23.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label24.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label25.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label26.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label27.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label28.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label29.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label30.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label31.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label32.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label33.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label34.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label35.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label36.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label37.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label38.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label39.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label40.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label41.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label42.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label43.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label44.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label45.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label46.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label47.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label48.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label49.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label50.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label51.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label52.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label53.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label54.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label55.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label56.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label57.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label58.yml +../../sv-benchmarks/c/eca-rers2012/Problem11_label59.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label01.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label02.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label03.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label04.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label05.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label06.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label07.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label08.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label09.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label10.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label11.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label12.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label13.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label14.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label15.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label16.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label17.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label18.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label19.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label20.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label21.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label22.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label23.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label24.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label25.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label26.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label27.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label28.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label29.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label30.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label31.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label32.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label33.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label34.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label35.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label36.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label37.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label38.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label39.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label40.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label41.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label42.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label43.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label44.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label45.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label46.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label47.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label48.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label49.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label50.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label51.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label52.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label53.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label54.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label55.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label56.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label57.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label58.yml +../../sv-benchmarks/c/eca-rers2012/Problem12_label59.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label01.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label02.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label03.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label04.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label05.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label06.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label07.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label08.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label09.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label10.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label11.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label12.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label13.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label14.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label15.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label16.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label17.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label18.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label19.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label20.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label21.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label22.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label23.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label24.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label25.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label26.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label27.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label28.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label29.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label30.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label31.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label32.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label33.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label34.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label35.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label36.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label37.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label38.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label39.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label40.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label41.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label42.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label43.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label44.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label45.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label46.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label47.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label48.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label49.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label50.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label51.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label52.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label53.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label54.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label55.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label56.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label57.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label58.yml +../../sv-benchmarks/c/eca-rers2012/Problem13_label59.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label01.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label02.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label03.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label04.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label05.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label06.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label07.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label08.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label09.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label10.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label11.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label12.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label13.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label14.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label15.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label16.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label17.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label19.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label20.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label21.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label22.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label23.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label24.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label25.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label26.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label27.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label28.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label29.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label30.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label31.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label32.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label33.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label34.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label35.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label36.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label37.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label38.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label39.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label40.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label41.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label42.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label43.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label44.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label45.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label46.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label47.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label48.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label49.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label50.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label51.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label52.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label53.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label54.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label55.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label56.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label57.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label58.yml +../../sv-benchmarks/c/eca-rers2012/Problem15_label59.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label01.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label02.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label03.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label04.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label05.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label06.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label07.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label08.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label09.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label10.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label11.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label12.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label13.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label14.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label15.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label16.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label17.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label18.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label19.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label20.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label21.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label22.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label23.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label24.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label25.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label26.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label27.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label28.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label29.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label30.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label31.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label32.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label33.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label34.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label35.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label36.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label37.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label38.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label39.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label40.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label41.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label42.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label43.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label44.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label45.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label46.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label47.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label48.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label49.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label50.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label51.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label52.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label53.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label54.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label55.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label56.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label57.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label58.yml +../../sv-benchmarks/c/eca-rers2012/Problem16_label59.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label01.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label02.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label03.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label04.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label05.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label06.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label07.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label08.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label09.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label10.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label11.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label12.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label13.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label14.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label15.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label16.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label17.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label18.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label19.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label20.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label21.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label22.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label23.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label24.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label25.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label26.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label27.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label28.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label29.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label30.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label31.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label32.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label33.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label34.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label35.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label36.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label37.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label38.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label39.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label40.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label41.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label42.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label43.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label44.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label45.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label46.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label47.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label48.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label49.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label50.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label51.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label52.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label53.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label54.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label55.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label56.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label57.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label58.yml +../../sv-benchmarks/c/eca-rers2012/Problem17_label59.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label01.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label02.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label03.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label04.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label05.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label06.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label07.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label08.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label09.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label10.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label11.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label12.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label13.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label14.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label15.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label16.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label17.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label18.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label19.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label20.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label21.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label22.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label23.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label24.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label25.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label26.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label27.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label28.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label29.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label30.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label31.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label32.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label33.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label34.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label35.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label36.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label37.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label38.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label39.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label40.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label41.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label42.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label43.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label44.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label45.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label46.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label47.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label48.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label49.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label50.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label51.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label52.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label53.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label54.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label55.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label56.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label57.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label58.yml +../../sv-benchmarks/c/eca-rers2012/Problem18_label59.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label01.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label02.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label03.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label04.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label05.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label06.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label07.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label08.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label09.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label10.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label11.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label12.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label13.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label14.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label15.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label16.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label17.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label18.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label19.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label20.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label21.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label22.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label23.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label24.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label25.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label26.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label27.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label28.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label29.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label30.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label31.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label32.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label33.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label34.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label35.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label36.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label37.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label38.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label39.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label40.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label41.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label42.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label43.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label44.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label45.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label46.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label47.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label48.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label49.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label50.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label51.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label52.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label53.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label54.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label55.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label56.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label57.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label58.yml +../../sv-benchmarks/c/eca-rers2012/Problem19_label59.yml From 3e0dcef11435f3488df7f2ed96961f4c5f99c5e2 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Mon, 12 Oct 2026 14:49:09 -0400 Subject: [PATCH 80/88] docs(tacas): official Test-Comp environment and the V99 campaign handoff Co-Authored-By: Claude Opus 5.5 (1M context) --- .../2026-10-06-ambiente-testcomp-oficial.md | 150 ++++++++++++++++++ .../2026-10-11-handoff-v99-campanha.md | 104 ++++++++++++ docs/reports/tacas-experiment-log.md | 27 ++++ 3 files changed, 281 insertions(+) create mode 100644 docs/reports/2026-10-06-ambiente-testcomp-oficial.md create mode 100644 docs/reports/2026-10-11-handoff-v99-campanha.md diff --git a/docs/reports/2026-10-06-ambiente-testcomp-oficial.md b/docs/reports/2026-10-06-ambiente-testcomp-oficial.md new file mode 100644 index 000000000..19b286f46 --- /dev/null +++ b/docs/reports/2026-10-06-ambiente-testcomp-oficial.md @@ -0,0 +1,150 @@ +# Ambiente oficial da Test-Comp 2026 + +Reprodução local do ambiente da competição, para (a) revalidar as suítes com os +validadores oficiais e (b) medir com as condições que a Test-Comp de fato usa — e +não com o nosso teto calibrado. + +**Branch:** `feat/testcomp-official-env` (a partir de `feat/map2check-9.0`). +**Commits:** `e5a86a779`, `cb99fe7bd`, `866d35028`, `44d2160ab`. + +## 1. Motivo + +A análise da campanha da 9.0 mostrou que o teto de **50 casos por suíte** +(`kMaxBranchTestCases`) foi calibrado no **nosso** ambiente: TestCov 3.7, 300 s por +tarefa, **sem** BenchExec. A competição **não** limita o tamanho da suíte. Para saber se +o teto ajuda ou atrapalha, os testes precisam rodar como a competição roda. + +## 2. O que a competição usa (tag `testcomp26`) + +De `gitlab.com/sosy-lab/test-comp/bench-defs`, tag `testcomp26`: + +- **Imagem:** `registry.gitlab.com/sosy-lab/benchmarking/competition-scripts/user`, + Ubuntu 24.04.3, clang 18 e gcc 13. O `Dockerfile` fixa o digest + `sha256:2a38216d…`. A imagem "full" do TestCov no fm-tools é a mesma. +- **BenchExec 3.34** (submódulo `829bf7a458`). +- **Validadores:** + - TestCov 3.11.post3 (Zenodo `17698774`); + - TestCoCa `testcomp26` (Zenodo `17819536`). +- **Validação:** 10 min, 7 GB, 2 núcleos e `--timelimit-per-run 50`. São **cinco** + definições: TestCov com gcc e com clang, formatado e não formatado, mais o TestCoCa. +- **Pontuação** (`competition-scripts`, `export_adjusted_csvs.py`, `update_score_tester`): + - **Cover-Branches:** o **máximo** da cobertura entre os validadores; + - **Cover-Error:** basta **um** validador responder TRUE. +- **Geradores:** 15 min de CPU, 15 GB, 4 núcleos, `resultfiles **/test-suite`. Não existe + `map2check.xml` na tag (o nosso segue o modelo do `klee.xml`). + +## 3. O que foi construído + +Em `tests/testcomp/official/`: + +- **`Dockerfile`** — imagem `map2check-testcomp-env`: a base oficial fixada por digest, + BenchExec 3.34, TestCov 3.11.post3 e TestCoCa baixados do Zenodo com verificação de + `sha256`. +- **`init.sh`** — entrypoint que cria o cgroup separado do BenchExec (cgroups v2, como o + `doc/benchexec-in-container.md` prescreve). Sem ele o BenchExec não limita nem mede. +- **`bench-defs/`** — as **cinco** definições oficiais, sem alterações, mais o + `map2check.xml` (não oficial, modelado no `klee.xml`) para **gerar** as suítes. +- **`testcomp.py`** — dois passos, cada um uma rodada de BenchExec: + - `generate`: monta o archive (`utils/testcomp-archive/make-archive.sh`) e roda sob o + `map2check.xml`; cada `test-suite/` vira um `.zip` no layout dos validadores; + - `validate`: as cinco definições oficiais, com o task set e os caminhos reescritos, + e as pontuações fundidas como a competição funde. +- **`run.sh`** — sobe o contêiner (`--privileged --cap-drop=all --device /dev/fuse`), + monta o repositório em `/m2c` e os dados em `/data`, e **traduz** os caminhos da linha + de comando para dentro do contêiner. + +Em `utils/`: + +- **`map2check-testcomp-wrapper.py`** — passa a apontar o AFL++, `AFL_PATH`, `AFL_CC` e os + passes para as cópias **empacotadas** no archive, quando existem; fora do archive, os + padrões de instalação de desenvolvimento continuam valendo. +- **`moduleBenchExec/map2check_testcomp.py`** — módulo tool-info do BenchExec (separado do + `map2check.py`, que é o adaptador SV-COMP). Tira o orçamento de `cputime` quando o run + set não tem `walltime` — que é o caso da Test-Comp. +- **`moduleBenchExec/__init__.py`** — para o BenchExec carregar + `moduleBenchExec.map2check_testcomp`. +- **`testcomp-archive/make-archive.sh`** — zip **autocontido** (~99 MB) com LLVM 16, KLEE 3.1 + e AFL++ 4.40c. Reconstrói o `RUNPATH` de cada ELF (via `patchelf`) em vez de usar + `LD_LIBRARY_PATH`, e recusa symlinks não resolvidos. + +## 4. Como rodar + +```sh +# imagem (uma vez) +docker build -t map2check-testcomp-env tests/testcomp/official + +# archive do Map2Check: roda na imagem de desenvolvimento, que tem LLVM16/KLEE/AFL++ +docker run --rm -v "$PWD:/workspace" -w /workspace map2check-dev:aflpp \ + utils/testcomp-archive/make-archive.sh /workspace/install_v9b /workspace/map2check.zip + +# gerar as suítes num corpus pequeno +tests/testcomp/official/run.sh generate --property cover-branches \ + --tasks tests/testcomp/corpus/cover-branches-q40.tsv \ + --archive map2check-testcomp.zip --suites OUT/suites --out OUT/gen + +# validar com os cinco validadores oficiais +tests/testcomp/official/run.sh validate --property cover-branches \ + --tasks tests/testcomp/corpus/cover-branches-q40.tsv \ + --suites OUT/suites --out OUT/val +``` + +## 5. Verificação + +- **Os cinco validadores concordam** em 3 tarefas (smoke2), sob o BenchExec: + +| tarefa | gcc | clang | TestCoCa | +|---|---|---|---| +| `array-fpi/s52iff_overflow` | 81,25% | 81,25% | 81,25% | +| `xcsp/AllInterval-011` | 90,91% | 86,36% | 90,91% | +| `eca-rers2012/Problem10_label28` | 37,81% | 37,81% | 37,81% | + +- Uma suíte ECA de 50 casos foi validada em **~40 s** pelo TestCov 3.11, enquanto o + TestCov 3.7 estourava os 300 s do harness. +- O pacote roda na **imagem oficial**, com KLEE e AFL++ funcionando. +- `run.sh generate` sob o BenchExec gerou as 3 suítes, com `--timelimit 120s` e + `--memorylimit 6GB`. + +## 6. Problemas resolvidos no caminho + +- **Overlay de `/home`:** o repositório é montado em `/m2c` e os dados em `/data`; o + `/home` do contêiner fica livre, porque o BenchExec o sobrepõe (e um overlay sobre um bind + mount abaixo dele falha com "Failed to create overlay mount"). Usa `fuse-overlayfs`. +- **TestCov escrevendo ao lado do programa:** as entradas vão para um diretório de staging. +- **`--format` escrevendo no diretório da ferramenta:** o BenchExec roda a partir de uma + **cópia** da ferramenta. +- **`${taskdef_name}` inclui `.yml`:** o layout das suítes mantém o nome completo. + +## 7. Achado e correção: propriedades locais da tarefa (2026-10-07) + +Ao validar as **140 suítes** de Cover-Branches que deram `TESTCOV_ERROR` na campanha da +9.0 (TestCov 3.7, 300 s), todas saíram **`MISSING`**. + +- **Causa raiz:** `testcomp.py:stage_tasks()` copiava o `.yml`, os `input_files` e o + `properties/` **global** — mas não os arquivos de propriedade **locais da tarefa**. + `eca-rers2018/Problem14.yml` referencia ~100 `properties/unreach-call-*.prp` relativos à + própria tarefa. O BenchExec resolve **todas** as propriedades de uma definição ao + carregar o task set; faltando um arquivo, ele **aborta a rodada inteira** — e com ela o + resultado de todas as 140 tarefas. O smoke2 passou porque `eca-rers2012` não tem + propriedades locais. +- **Correção** (`44d2160ab`): `stage_tasks` copia o `properties/` da tarefa quando existe. +- **Verificação:** com a correção, `eca-rers2018/Problem14` valida (`done`, ~2,4% nos cinco + validadores) e o BenchExec não aborta mais. + +> Ressalva da rodada completa: o host de 25 GB ficou **sob swap** (`7 GB × 3 threads`) e o +> próprio BenchExec avisou `System has swapped during benchmarking. Benchmark results are +> unreliable!`. Os números finais do `gcc-unformatted` do tcerr saíram; os das variantes +> `formatted` saíram quase todos `TIMEOUT` e **não devem ser levados a sério** desta rodada. + +## 8. Questões em aberto + +- O `sv-benchmarks` local (ago/2026, `cd68d4ed`) é mais novo que o fixado na `testcomp26` + (`7efe28dd`). Decidir se a rerrodada **fixa** a versão da competição. +- O `make-archive.sh` lê o `install_v9b` (build de `6848d2395`). + +## 9. Próximos passos + +1. Recalibrar o **teto de 50** com o validador oficial (o teto não existe na competição). +2. Implementar a **seleção da suíte por cobertura**. +3. CI da Test-Comp: reproduzir este ambiente num job — **adiado** por decisão de sessão + (custo ~20–35 min/run, `--privileged`/`/dev/fuse`); a alternativa barata é um teste + unitário do `stage_tasks`. Ver `docs/reports/2026-10-07-handoff-testcomp-oficial.md`. diff --git a/docs/reports/2026-10-11-handoff-v99-campanha.md b/docs/reports/2026-10-11-handoff-v99-campanha.md new file mode 100644 index 000000000..1567d4ccd --- /dev/null +++ b/docs/reports/2026-10-11-handoff-v99-campanha.md @@ -0,0 +1,104 @@ +# Handoff — campanha V99 no ambiente oficial da Test-Comp (2026-10-11) + +Ponto de partida para a próxima sessão (Claude). O objetivo da sessão foi: **rodar a +campanha completa da 9.0 no ambiente oficial da Test-Comp 2026**, com sv-benchmarks +fixado na `testcomp26`, limites oficiais e validação pelos validadores oficiais. + +Regras do usuário que continuam valendo: +- **Nunca mergear**; sempre PR com base `develop`. +- Branches `feat/…`. **Não mexer no gatilho do `ci.yml`**. +- Registrar cada mini-rodada em `docs/reports/tacas-experiment-log.md`. +- Commits/PRs em inglês; docs em pt-BR. +- **Nunca rodar `cmake .` num `build_*` sem `-DCMAKE_INSTALL_PREFIX`** (o prefixo volta + para `release/`). + +## 1. Branch e commits + +`feat/testcomp-official-env`, base `feat/map2check-9.0`. HEAD `44d2160ab`. Commits +próprios: `e5a86a779` (validadores oficiais sob BenchExec), `cb99fe7bd` (runner +generate/validate), `866d35028` (archive do AFL++), `44d2160ab` (staging das +propriedades locais da tarefa). + +**Nada foi pushado.** Há trabalho **não commitado** (ver §5). + +## 2. Decisões do usuário nesta sessão + +- Rerrodada com **limites oficiais** (900 s; memória ajustada a **8 GB** para 2 vagas + nesta máquina de 23 GB; 4 núcleos). +- **Cover-Error inteira** + **Cover-Branches 3 500 estratificado** (proporcional ao + tamanho de cada categoria oficial). +- **sv-benchmarks fixado na `testcomp26`** (`7efe28dd29576b46927b7a34e8f742bd90966a75`). +- Build = ponta atual (`44d2160ab`; o código do tool é o da `feat/map2check-9.0` + o + wrapper/tool-info novos). +- Geração pelo **harness** (retomável), validação pelos validadores oficiais. + +## 3. O que está rodando agora + +- **Campanha `v99`**, launcher `tacas-results/v99-campaign.sh` (PID 33936). Contêineres + `v99-ce-s0/s1` (imagem `map2check-v9-eval:latest`, `--memory=8g --cpus=4`, + `--restart=unless-stopped`, retoma pelo CSV, done-markers `.v99-done-*`). + - **Cover-Error: ~1 579/1 902** processadas; 697 geraram teste; suítes em + `tacas-results/V99-suites/`, CSVs em `tacas-results/V99-ce_s*/results.csv`. + - **Cover-Branches: 0/3 500** — só entra quando o CE fechar (o launcher já os + enfileira). + - Build `install_v99` (script de build no relatório do ambiente oficial), archive + `tacas-results/V99/map2check-testcomp.zip`. +- **Validação oficial preliminar** (`validate-v99-ce.sh`, 3 validadores: gcc-unformatted, + clang-unformatted, testcoca): fechou **673/682 = 98,7%** TRUE por ≥1 validador. + scores.csv em `tacas-results/V99-ce-prelim/scores.csv`. Re-rodar quando o CE avançar. + +## 4. Issue aberta (pendência principal) + +- **#74** — "NonDetPass: tipos `__VERIFIER_nondet_*` não modelados zeram tarefas + (Intel-TDX, Floats) para UNKNOWN" — https://github.com/hbgit/Map2Check/issues/74 + - `NonDetPass.cpp` modela só 16 tipos; faltam `float, longlong, ulonglong, _Bool, + u8/u16/u32, charp`. + - Medido: 147 tarefas `UNKNOWN` afetadas (ulonglong 113, float 22, u32 12) → + **Intel-TDX 125, Floats 22**. + - A correção exige recompilar o tool → foi decidido **não** mexer no build no meio da + campanha (build único). Fica como follow-up. + +## 5. Trabalho não commitado (revisar e commitar) + +- `tests/testcomp/official/testcomp.py` — fixes: (a) staging das propriedades locais do + task (já em `44d2160ab`); (b) **disco**: remove `--no-compress-results`, apaga o + `results/` (o `.files` é o grosso), o `sv-benchmarks/` staged e o `tool/` + após cada validador — validado: 3 tarefas → 20 KB (antes 140 → 8 GB). Knob + `MAP2CHECK_KEEP_RESULTS=1` preserva o scratch para debug. +- `tests/testcomp/run_testcomp_evaluation.sh` — `TESTCOV_S=0` desliga o TestCov interno + (a validação é pelos validadores oficiais). +- `tests/testcomp/build_corpus_official.py` — **novo**: corpus estratificado + PROPORCIONAL ao tamanho, lendo categorias/excludes do def oficial. (Não existia + estratificação proporcional no repo; o `build_corpus.py` usa cota igual por categoria.) +- `tests/testcomp/corpus/cover-error-official.tsv` (1 902) e + `cover-branches-3500.tsv` (3 500). +- `tests/testcomp/official/bench-defs/excludes/ECA-excludes.set` — exclude oficial do + ECA (exclui 1 027 de ~1 059 ECA; sem ele o corpus super-representava ECA). +- Docs: `docs/reports/2026-10-06-ambiente-testcomp-oficial.md` (novo) e entrada no + `tacas-experiment-log.md`. + +## 6. Próximos passos + +1. **Fechar o CE** (as ~323 restantes são Intel-TDX/Hardware, lentas e UNKNOWN) e deixar + o **CB** (3 500) rodar; o launcher já cuida disso. +2. **Validar oficialmente** as suítes conforme a geração avança (rodar `validate-v99-ce.sh` + periodicamente; depois idem para o CB com `--property cover-branches`). +3. **Relatório da campanha** (pt-BR) com a comparação pareada e o placar oficial de CE e + CB; entrada no `tacas-experiment-log.md`. +4. **Commitar** o trabalho do §5 (cada um no seu assunto). +5. **Issue #74**: implementar o fix do `NonDetPass`, recompilar e re-rodar as categorias + afetadas (ou a campanha com build novo) — combinado como follow-up. +6. **tcerr**: a validação best-of (`clang-unformatted` + `testcoca`) morreu no meio; refazer + quando a máquina desafogar (script `tacas-results/official/validate-tcerr-fast.sh`). +7. **Windows/WSL**: o `ext4.vhdx` precisa ser compactado no Windows (o WSL liberou ~15 GB + internos — o lixo era `official/` 8,3 GB + imagens/build cache do Docker; o vhdx não + encolhe sozinho). Após `wsl --shutdown`, **relançar o launcher v99** (não sobrevive a + reboot). + +## 7. Números atuais + +- Cover-Error geração: ~1 579/1 902 (83%); 697 com teste (44,1% das processadas); + consolidado ~36,6% do corpus. +- Cover-Error validação oficial (682): **673 = 98,7%**. +- Categorias fracas: Intel-TDX 0/658, Hardware ~5/65 (orçamento/nondet), Floats ~11/33 + (nondet `float`, issue #74). diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index ea65865c9..8ab6555ea 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -865,3 +865,30 @@ com 300 s. - **Ainda abaixo da 9.0 original:** AllInterval-035 (38,6 → 2,9), -025 e -017. As oscilações de mais e de menos no controle e no Cover-Error ficam dentro da variação entre execuções vista nas rodadas anteriores. + +## Ambiente oficial da Test-Comp e revalidação das suítes ECA (2026-10-06/07) + +- **Motivo:** o teto de 50 casos por suíte (`kMaxBranchTestCases`) foi calibrado no **nosso** + ambiente (TestCov 3.7, 300 s, sem BenchExec). A competição não limita o tamanho da suíte, + então os testes precisam rodar como ela roda. +- **Ambiente construído:** branch `feat/testcomp-official-env`. Imagem oficial (Ubuntu + 24.04, digest fixo) + BenchExec 3.34 + TestCov 3.11.post3 + TestCoCa, as cinco definições + oficiais de validação e um `map2check.xml` (não oficial) para gerar. Pontuação como a + competição funde: Cover-Branches = melhor cobertura entre os validadores; Cover-Error = + um TRUE basta. Detalhes em `docs/reports/2026-10-06-ambiente-testcomp-oficial.md`. +- **Verificação (smoke2, 3 tarefas):** os cinco validadores **concordam**. `s52iff_overflow` + 81,25%; `AllInterval-011` 90,91% (gcc) / 86,36% (clang); `Problem10_label28` 37,81%. Uma + suíte ECA de 50 casos validou em ~40 s no TestCov 3.11, contra o estouro de 300 s do 3.7. +- **Achado e correção (2026-10-07).** Ao revalidar as **140 suítes** de Cover-Branches que + deram `TESTCOV_ERROR` (TestCov 3.7, 300 s) na campanha da 9.0, todas saíram `MISSING`. + Causa: `testcomp.py:stage_tasks()` não copiava os arquivos de propriedade **locais da + tarefa**; o `eca-rers2018/Problem14.yml` referencia ~100 `properties/unreach-call-*.prp` + relativos à tarefa, e o BenchExec **aborta o task set inteiro** quando um não resolve. + Correção `44d2160ab`; com ela, `Problem14` valida (`done`, ~2,4% nos cinco validadores). +- **Ressalva da rodada completa:** o host de 25 GB ficou **sob swap** (`7 GB × 3 threads`) e + o BenchExec avisou `System has swapped during benchmarking. Benchmark results are + unreliable!`; as variantes `formatted` saíram quase todas `TIMEOUT`. Os números do tcerr + desta rodada **não** são conclusivos — repetir com `--numOfThreads 1`–`2`. +- **Leitura:** o ambiente oficial funciona ponta a ponta. Falta (1) recalibrar o teto de 50 + com o validador oficial e (2) implementar a seleção da suíte por cobertura. O CI que + reproduz este ambiente ficou **adiado** (custo ~20–35 min/run; ver o handoff de 07/10). From 05a1573718c12ae099094e26a79d8b8ac94e9a60 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Mon, 12 Oct 2026 15:07:42 -0400 Subject: [PATCH 81/88] fix(nondet): model float, longlong, ulonglong, u8/u16/u32 and nondet_memory NonDetPass instrumented sixteen __VERIFIER_nondet_* names. Any other one stayed an external call KLEE could not resolve ("failed external call: __VERIFIER_nondet_ulonglong"), which killed every path through it: in the V99 Cover-Error campaign all of Intel-TDX (0/658) and most of Floats came back UNKNOWN with zero completed paths. Each new type gets a KLEE and an AFL++ generator of its own width, a log row that keeps its full value (64-bit and float rows no longer go through the int-valued logger), and a name the ktest reader decodes. Floats are printed with %.9g so they round-trip. __VERIFIER_nondet_memory(p, n), used by the havoc_memory half of Intel-TDX, is read by the validators' harness as n uchar inputs. KLEE makes one n-byte object (a fresh one, copied in: klee_make_symbolic only takes the exact start of an allocation), the reader expands it into one input per byte, and the runtime logs it as n MEMORY_BYTE rows, where a seed converted from the log stops. _Bool, charp and uint128 stay unmodeled: the validators' harness has no __VERIFIER_nondet__Bool or charp, and no task in the official corpora uses them. Closes #74. Co-Authored-By: Claude Opus 5.5 (1M context) --- .../backend/library/header/Map2CheckTypes.h | 16 ++- .../backend/library/header/NonDetGenerator.h | 28 ++++ modules/backend/library/header/NonDetLog.h | 24 ++++ .../backend/library/lib/NonDetGeneratorAFL.c | 17 +++ .../backend/library/lib/NonDetGeneratorKlee.c | 28 ++++ .../backend/library/lib/NonDetGeneratorNone.c | 17 +++ modules/backend/library/lib/NonDetLog.c | 47 ++++++- modules/backend/pass/NonDetFunctions.hpp | 19 +++ modules/backend/pass/NonDetPass.cpp | 47 +++++++ modules/backend/pass/NonDetPass.hpp | 15 ++- modules/frontend/test_suite/ktest_reader.cpp | 55 +++++++- modules/frontend/test_suite/ktest_reader.hpp | 9 ++ modules/frontend/utils/slicer.hpp | 10 +- tests/unit/frontend/KtestReaderTest.cpp | 120 ++++++++++++++++++ tests/unit/frontend/SlicerTest.cpp | 4 +- 15 files changed, 441 insertions(+), 15 deletions(-) diff --git a/modules/backend/library/header/Map2CheckTypes.h b/modules/backend/library/header/Map2CheckTypes.h index 1f131cfe4..85a8f9b45 100755 --- a/modules/backend/library/header/Map2CheckTypes.h +++ b/modules/backend/library/header/Map2CheckTypes.h @@ -54,7 +54,19 @@ enum NONDET_TYPE { SECTOR_T = 12, UINT = 13, SHORT = 14, - DOUBLE = 15 + DOUBLE = 15, + /* Issue #74: SV-COMP names NonDetPass did not model. Each was an external + * call KLEE could not resolve, which killed every path through it. */ + FLOAT = 16, + LONGLONG = 17, + ULONGLONG = 18, + U8 = 19, + U16 = 20, + U32 = 21, + /* One byte of a __VERIFIER_nondet_memory(p, n) call, logged by the runtime: + * the validators read that call as n uchar inputs. Its own type, not UCHAR, + * so the seed converter can tell that n rows are one KLEE object. */ + MEMORY_BYTE = 22 }; enum Container_Type { @@ -152,6 +164,8 @@ typedef int as_int; unsigned as_unsigned; double as_double; + long long as_longlong; + unsigned long long as_ulonglong; } value; /** Name of the function where operation took place */ char function_name[FUNCTION_MAX_LENGTH_NAME]; diff --git a/modules/backend/library/header/NonDetGenerator.h b/modules/backend/library/header/NonDetGenerator.h index fb5dec3dd..b9fdfe3bd 100644 --- a/modules/backend/library/header/NonDetGenerator.h +++ b/modules/backend/library/header/NonDetGenerator.h @@ -129,4 +129,32 @@ uint map2check_non_det_uint(); */ double map2check_non_det_double(); +/* Issue #74: the SV-COMP names NonDetPass did not model. The typedefs give the + * generator macros one identifier per type, which also names the KLEE object + * ("non_det_ulonglong"), the only place a .ktest keeps the type. */ +float map2check_non_det_float(); + +typedef long long longlong; +longlong map2check_non_det_longlong(); + +typedef unsigned long long ulonglong; +ulonglong map2check_non_det_ulonglong(); + +typedef unsigned char u8; +u8 map2check_non_det_u8(); + +typedef unsigned short u16; +u16 map2check_non_det_u16(); + +typedef unsigned int u32; +u32 map2check_non_det_u32(); + +/** + * @brief Fills `size` bytes at `destination` with nondeterministic values + * + * The validators' harness reads it as `size` uchar inputs, one per byte, so + * the runtime logs it that way (MEMORY_BYTE rows). + */ +void map2check_non_det_memory(void *destination, size_t size); + #endif diff --git a/modules/backend/library/header/NonDetLog.h b/modules/backend/library/header/NonDetLog.h index 444baa4f9..bc86869a9 100644 --- a/modules/backend/library/header/NonDetLog.h +++ b/modules/backend/library/header/NonDetLog.h @@ -86,5 +86,29 @@ void map2check_nondet_short(unsigned line, unsigned scope, int value, void map2check_nondet_double(unsigned line, unsigned scope, double value, const char *function_name); +void map2check_nondet_float(unsigned line, unsigned scope, double value, + const char *function_name); + +void map2check_nondet_longlong(unsigned line, unsigned scope, long long value, + const char *function_name); + +void map2check_nondet_ulonglong(unsigned line, unsigned scope, + unsigned long long value, + const char *function_name); + +void map2check_nondet_u8(unsigned line, unsigned scope, int value, + const char *function_name); + +void map2check_nondet_u16(unsigned line, unsigned scope, int value, + const char *function_name); + +void map2check_nondet_u32(unsigned line, unsigned scope, int value, + const char *function_name); + +/** Logs one byte of a __VERIFIER_nondet_memory call. Called by the runtime's + * map2check_non_det_memory, not by NonDetPass: the bytes are read inside it. */ +void map2check_nondet_memory_byte(unsigned line, unsigned scope, int value, + const char *function_name); + #endif diff --git a/modules/backend/library/lib/NonDetGeneratorAFL.c b/modules/backend/library/lib/NonDetGeneratorAFL.c index 4eb4bc7cc..541c32aea 100644 --- a/modules/backend/library/lib/NonDetGeneratorAFL.c +++ b/modules/backend/library/lib/NonDetGeneratorAFL.c @@ -101,6 +101,23 @@ MAP2CHECK_NON_DET_GENERATOR(double) MAP2CHECK_NON_DET_GENERATOR(int) MAP2CHECK_NON_DET_GENERATOR(uint) MAP2CHECK_NON_DET_GENERATOR(unsigned) +MAP2CHECK_NON_DET_GENERATOR(float) +MAP2CHECK_NON_DET_GENERATOR(longlong) +MAP2CHECK_NON_DET_GENERATOR(ulonglong) +MAP2CHECK_NON_DET_GENERATOR(u8) +MAP2CHECK_NON_DET_GENERATOR(u16) +MAP2CHECK_NON_DET_GENERATOR(u32) + +/* `size` bytes straight from the test case, as KLEE's one object of `size` + * bytes; logged a byte at a time, as the validators' harness reads it. */ +void map2check_non_det_memory(void *destination, size_t size) { + unsigned char *bytes = (unsigned char *)destination; + get_bytes_from_afl(bytes, size); + size_t i = 0; + for (; i < size; i++) { + map2check_nondet_memory_byte(0, 0, bytes[i], "__VERIFIER_nondet_memory"); + } +} #define MAP2CHECK_MAX_FUZZED_STRING 4096 diff --git a/modules/backend/library/lib/NonDetGeneratorKlee.c b/modules/backend/library/lib/NonDetGeneratorKlee.c index a8b546754..f9920ba66 100644 --- a/modules/backend/library/lib/NonDetGeneratorKlee.c +++ b/modules/backend/library/lib/NonDetGeneratorKlee.c @@ -10,6 +10,7 @@ #include "../header/NonDetGenerator.h" #include "../header/NonDetLog.h" #include +#include #include extern int __map2check_main__(int argc, char **argv); @@ -101,3 +102,30 @@ MAP2CHECK_NON_DET_GENERATOR(loff_t) MAP2CHECK_NON_DET_GENERATOR(sector_t) MAP2CHECK_NON_DET_GENERATOR(uint) MAP2CHECK_NON_DET_GENERATOR(double) +MAP2CHECK_NON_DET_GENERATOR(float) +MAP2CHECK_NON_DET_GENERATOR(longlong) +MAP2CHECK_NON_DET_GENERATOR(ulonglong) +MAP2CHECK_NON_DET_GENERATOR(u8) +MAP2CHECK_NON_DET_GENERATOR(u16) +MAP2CHECK_NON_DET_GENERATOR(u32) + +/* A fresh object, copied in, rather than klee_make_symbolic(destination): + * KLEE accepts only the exact start and size of an allocation, and the + * benchmarks pass a field or a struct inside a larger one + * (`__VERIFIER_nondet_memory(dest, sizeof(tdr_t))`). One object of `size` + * bytes, not `size` objects of one: the reader expands it into one uchar + * input per byte (decodeKtestInputs), as the validators' harness reads it. */ +void map2check_non_det_memory(void *destination, size_t size) { + if (size == 0) + return; + unsigned char *bytes = malloc(size); + if (bytes == NULL) + return; + klee_make_symbolic(bytes, size, "non_det_memory"); + memcpy(destination, bytes, size); + size_t i = 0; + for (; i < size; i++) { + map2check_nondet_memory_byte(0, 0, bytes[i], "__VERIFIER_nondet_memory"); + } + free(bytes); +} diff --git a/modules/backend/library/lib/NonDetGeneratorNone.c b/modules/backend/library/lib/NonDetGeneratorNone.c index 95200b506..7135795c6 100644 --- a/modules/backend/library/lib/NonDetGeneratorNone.c +++ b/modules/backend/library/lib/NonDetGeneratorNone.c @@ -11,6 +11,7 @@ /* This mode returns consts */ #include +#include extern int __map2check_main__(); int main() { @@ -36,6 +37,22 @@ void *map2check_non_det_pointer() { } long map2check_non_det_long() { return 0; } + +float map2check_non_det_float() { return 0; } + +long long map2check_non_det_longlong() { return 0; } + +unsigned long long map2check_non_det_ulonglong() { return 0; } + +unsigned char map2check_non_det_u8() { return 0; } + +unsigned short map2check_non_det_u16() { return 0; } + +unsigned int map2check_non_det_u32() { return 0; } + +void map2check_non_det_memory(void *destination, size_t size) { + memset(destination, 0, size); +} void nondet_assume(int expr) {} void nondet_init() {} void nondet_destroy() {} diff --git a/modules/backend/library/lib/NonDetLog.c b/modules/backend/library/lib/NonDetLog.c index 5c458cfae..2d5c9db1a 100644 --- a/modules/backend/library/lib/NonDetLog.c +++ b/modules/backend/library/lib/NonDetLog.c @@ -42,10 +42,18 @@ Bool nondet_log_to_file(MAP2CHECK_CONTAINER klee_container) { * where the format has seven. The value column still parsed by accident, * being first, but the type column moved to index 7 and anything reading * it got a copy of the value instead. */ - if (((int)call->type) == UNSIGNED) { + if (((int)call->type) == UNSIGNED || ((int)call->type) == U32) { fprintf(output, "%u;", call->value.as_unsigned); } else if (((int)call->type) == DOUBLE) { fprintf(output, "%lf;", call->value.as_double); + } else if (((int)call->type) == FLOAT) { + /* %.9g, not %lf: nine significant digits round-trip any float, while + * six fixed decimals print 1e-30 as 0 -- a different input. */ + fprintf(output, "%.9g;", (float)call->value.as_double); + } else if (((int)call->type) == LONGLONG) { + fprintf(output, "%lld;", call->value.as_longlong); + } else if (((int)call->type) == ULONGLONG) { + fprintf(output, "%llu;", call->value.as_ulonglong); } else { fprintf(output, "%d;", call->value.as_int); } @@ -74,8 +82,10 @@ NONDET_CALL new_nondet_call(enum NONDET_TYPE type, unsigned line, * `value` points at a parameter of the map2check_nondet_* wrapper, and that * frame is gone long before the log is flushed at exit. */ if (value != NULL) { - if (type == DOUBLE) { + if (type == DOUBLE || type == FLOAT) { result.value.as_double = *(double *)value; + } else if (type == LONGLONG || type == ULONGLONG) { + result.value.as_longlong = *(long long *)value; } else { result.value.as_int = *(int *)value; } @@ -126,6 +136,10 @@ MAP2CHECK_NONDET_GENERATOR(size_t, SIZE_T) MAP2CHECK_NONDET_GENERATOR(loff_t, LOFF_T) MAP2CHECK_NONDET_GENERATOR(sector_t, SECTOR_T) MAP2CHECK_NONDET_GENERATOR(uint, UINT) +MAP2CHECK_NONDET_GENERATOR(u8, U8) +MAP2CHECK_NONDET_GENERATOR(u16, U16) +MAP2CHECK_NONDET_GENERATOR(u32, U32) +MAP2CHECK_NONDET_GENERATOR(memory_byte, MEMORY_BYTE) // FIX: MAP2CHECK_NONDET_GENERATOR(unsigned, UNSIGNED) void map2check_nondet_unsigned(unsigned line, unsigned scope, unsigned value, @@ -148,3 +162,32 @@ void map2check_nondet_double(unsigned line, unsigned scope, double value, map2check_get_current_step()); helper_map2check_nondet_append_element(nondetCall); } + +/* A float arrives widened to double (NonDetPass emits an fpext), so the row + * keeps one floating-point member; FLOAT says how to print it. */ +void map2check_nondet_float(unsigned line, unsigned scope, double value, + const char *function_name) { + NONDET_CALL nondetCall = + new_nondet_call(FLOAT, line, scope, &value, function_name, + map2check_get_current_step()); + helper_map2check_nondet_append_element(nondetCall); +} + +/* 64-bit, not through the int-valued macro above: that one truncates to 32 + * bits, and an Intel-TDX register value cut in half is a different input. */ +void map2check_nondet_longlong(unsigned line, unsigned scope, long long value, + const char *function_name) { + NONDET_CALL nondetCall = + new_nondet_call(LONGLONG, line, scope, &value, function_name, + map2check_get_current_step()); + helper_map2check_nondet_append_element(nondetCall); +} + +void map2check_nondet_ulonglong(unsigned line, unsigned scope, + unsigned long long value, + const char *function_name) { + NONDET_CALL nondetCall = + new_nondet_call(ULONGLONG, line, scope, &value, function_name, + map2check_get_current_step()); + helper_map2check_nondet_append_element(nondetCall); +} diff --git a/modules/backend/pass/NonDetFunctions.hpp b/modules/backend/pass/NonDetFunctions.hpp index d22bb6745..7acfef727 100644 --- a/modules/backend/pass/NonDetFunctions.hpp +++ b/modules/backend/pass/NonDetFunctions.hpp @@ -53,6 +53,12 @@ using llvm::Type; Type::getInt32Ty(*Ctx), Type::getInt32Ty(*Ctx), Type::getDoubleTy(*Ctx), \ PointerType::get(*Ctx, 0)); +#define NON_DET_FUNCTIONS_HELPER_I64(type, c_type) \ + this->NonDet##type = F->getParent()->getOrInsertFunction( \ + "map2check_nondet_" #c_type, Type::getVoidTy(*Ctx), \ + Type::getInt32Ty(*Ctx), Type::getInt32Ty(*Ctx), Type::getInt64Ty(*Ctx), \ + PointerType::get(*Ctx, 0)); + class NonDetFunctions { CONSTANT_GENERATOR(Integer) CONSTANT_GENERATOR(Unsigned) @@ -70,6 +76,12 @@ class NonDetFunctions { CONSTANT_GENERATOR(Sector_t) CONSTANT_GENERATOR(Uint) CONSTANT_GENERATOR(Double) + CONSTANT_GENERATOR(Float) + CONSTANT_GENERATOR(Longlong) + CONSTANT_GENERATOR(Ulonglong) + CONSTANT_GENERATOR(U8) + CONSTANT_GENERATOR(U16) + CONSTANT_GENERATOR(U32) // Constant* NonDetAssume = NULL; public: @@ -90,6 +102,13 @@ class NonDetFunctions { NON_DET_FUNCTIONS_HELPER(Sector_t, sector_t) NON_DET_FUNCTIONS_HELPER(Uint, uint) NON_DET_FUNCTIONS_HELPER_DOUBLE(Double, double) + // A float is logged widened to double (instrumentNonDetFloat). + NON_DET_FUNCTIONS_HELPER_DOUBLE(Float, float) + NON_DET_FUNCTIONS_HELPER_I64(Longlong, longlong) + NON_DET_FUNCTIONS_HELPER_I64(Ulonglong, ulonglong) + NON_DET_FUNCTIONS_HELPER(U8, u8) + NON_DET_FUNCTIONS_HELPER(U16, u16) + NON_DET_FUNCTIONS_HELPER(U32, u32) } }; diff --git a/modules/backend/pass/NonDetPass.cpp b/modules/backend/pass/NonDetPass.cpp index 4e8e397ea..d10f5a5a0 100644 --- a/modules/backend/pass/NonDetPass.cpp +++ b/modules/backend/pass/NonDetPass.cpp @@ -223,6 +223,22 @@ void NonDetPass::runOnCallInstruction(CallInst *callInst, LLVMContext *Ctx) { CALL_IF_HELPER(Sector_t, SECTOR_T, sector_t) CALL_IF_HELPER(Uint, UINT, uint) CALL_IF_HELPER(Double, DOUBLE, double) + // Issue #74. Unmodeled, each of these stayed an external call KLEE could + // not resolve ("failed external call: __VERIFIER_nondet_ulonglong"), which + // killed every path through it: all of Intel-TDX and most of Floats came + // back UNKNOWN with zero completed paths. + CALL_IF_HELPER(Float, FLOAT, float) + CALL_IF_HELPER(Longlong, LONGLONG, longlong) + CALL_IF_HELPER(Ulonglong, ULONGLONG, ulonglong) + CALL_IF_HELPER(U8, U8, u8) + CALL_IF_HELPER(U16, U16, u16) + CALL_IF_HELPER(U32, U32, u32) + + // Renamed only: it returns nothing to log at the call site, so the runtime + // logs the bytes it writes (map2check_non_det_memory). + if (calleeFunction->getName() == "__VERIFIER_nondet_memory") { + this->instrumentNonDet(NonDetType::MEMORY, calleeFunction); + } if ((calleeFunction->getName() == "__VERIFIER_assume")) { this->instrumentNonDet(NonDetType::ASSUME, calleeFunction); @@ -261,6 +277,13 @@ void NonDetPass::instrumentNonDet(NonDetType nonDetType, INSTRUMENT_CASE_HELPER(SECTOR_T, sector_t) INSTRUMENT_CASE_HELPER(UINT, uint) INSTRUMENT_CASE_HELPER(DOUBLE, double) + INSTRUMENT_CASE_HELPER(FLOAT, float) + INSTRUMENT_CASE_HELPER(LONGLONG, longlong) + INSTRUMENT_CASE_HELPER(ULONGLONG, ulonglong) + INSTRUMENT_CASE_HELPER(U8, u8) + INSTRUMENT_CASE_HELPER(U16, u16) + INSTRUMENT_CASE_HELPER(U32, u32) + INSTRUMENT_CASE_HELPER(MEMORY, memory) case (NonDetType::ASSUME): { Twine assume("map2check_assume"); calleeFunction->setName(assume); @@ -326,12 +349,36 @@ namespace { this->nonDetFunctions->getNonDet##type##Function(); \ builder.CreateCall(NonDetFunction, args); \ } +/* Widened to double: the log keeps one floating-point member. */ +#define NONDET_IMPL_HELPER_FLOAT(type) \ + void NonDetPass::instrumentNonDet##type(CallInst *callInst, \ + LLVMContext *Ctx) { \ + auto j = this->currentInstruction; \ + j++; \ + IRBuilder<> builder(BBIteratorToInst(j)); \ + Value *function_llvm = this->getFunctionNameValue(); \ + Value *widened = \ + builder.CreateFPExt(callInst, Type::getDoubleTy(*Ctx)); \ + DebugInfo debugInfo(Ctx, callInst); \ + Value *args[] = {debugInfo.getLineNumberValue(), \ + debugInfo.getScopeNumberValue(), widened, \ + function_llvm}; \ + FunctionCallee NonDetFunction = \ + this->nonDetFunctions->getNonDet##type##Function(); \ + builder.CreateCall(NonDetFunction, args); \ + } } // namespace NONDET_IMPL_HELPER(Integer) NONDET_IMPL_HELPER(Unsigned) NONDET_IMPL_HELPER(Uint) NONDET_IMPL_HELPER(Double) +NONDET_IMPL_HELPER_FLOAT(Float) +NONDET_IMPL_HELPER(Longlong) +NONDET_IMPL_HELPER(Ulonglong) +NONDET_IMPL_HELPER(U32) +NONDET_IMPL_HELPER_CAST(U8) +NONDET_IMPL_HELPER_CAST(U16) NONDET_IMPL_HELPER_CAST(Char) NONDET_IMPL_HELPER_CAST(Ushort) NONDET_IMPL_HELPER_CAST(Short) diff --git a/modules/backend/pass/NonDetPass.hpp b/modules/backend/pass/NonDetPass.hpp index bbe5bd86a..88b0113f7 100644 --- a/modules/backend/pass/NonDetPass.hpp +++ b/modules/backend/pass/NonDetPass.hpp @@ -57,7 +57,14 @@ enum class NonDetType { SECTOR_T, UINT, CRAB_ASSUME, - DOUBLE + DOUBLE, + FLOAT, + LONGLONG, + ULONGLONG, + U8, + U16, + U32, + MEMORY }; namespace InstrumentNonDetS { @@ -95,6 +102,12 @@ struct NonDetPass : public llvm::PassInfoMixin { INSTRUMENT_HEADER_HELPER(Sector_t) INSTRUMENT_HEADER_HELPER(Uint) INSTRUMENT_HEADER_HELPER(Double) + INSTRUMENT_HEADER_HELPER(Float) + INSTRUMENT_HEADER_HELPER(Longlong) + INSTRUMENT_HEADER_HELPER(Ulonglong) + INSTRUMENT_HEADER_HELPER(U8) + INSTRUMENT_HEADER_HELPER(U16) + INSTRUMENT_HEADER_HELPER(U32) void instrumentCrabAssume(CallInst *callInst, LLVMContext *Ctx); std::unique_ptr nonDetFunctions; Value *functionName = NULL; diff --git a/modules/frontend/test_suite/ktest_reader.cpp b/modules/frontend/test_suite/ktest_reader.cpp index 3f92c6b73..32ae30b00 100644 --- a/modules/frontend/test_suite/ktest_reader.cpp +++ b/modules/frontend/test_suite/ktest_reader.cpp @@ -9,6 +9,7 @@ #include "ktest_reader.hpp" #include +#include #include #include #include @@ -80,6 +81,16 @@ NonDetTypeInfo nonDetTypeInfo(int type) { case 13: return {"non_det_uint", sizeof(unsigned), false, true}; case 14: return {"non_det_short", sizeof(short), false, false}; case 15: return {"non_det_double", sizeof(double), true, false}; + case 16: return {"non_det_float", sizeof(float), true, false}; + case 17: return {"non_det_longlong", sizeof(int64_t), false, false}; + case 18: return {"non_det_ulonglong", sizeof(uint64_t), false, true}; + case 19: return {"non_det_u8", sizeof(uint8_t), false, true}; + case 20: return {"non_det_u16", sizeof(uint16_t), false, true}; + case 21: return {"non_det_u32", sizeof(uint32_t), false, true}; + // 22 (MEMORY_BYTE) is deliberately absent: the runtime logs a + // __VERIFIER_nondet_memory call as one row per byte, KLEE holds it as ONE + // object, and the log does not say where one call's bytes end. The seed + // stops there, as it does at a pchar. default: return {nullptr, 0, false, false}; } } @@ -87,6 +98,16 @@ NonDetTypeInfo nonDetTypeInfo(int type) { /** Encodes a logged decimal value into the object's little-endian bytes. */ void encodeValue(const std::string& text, const NonDetTypeInfo& info, std::vector* out) { + if (info.isFloating && info.width == sizeof(float)) { + float value = 0.0f; + try { + value = std::stof(text); + } catch (const std::exception&) { + value = 0.0f; + } + std::memcpy(out->data(), &value, std::min(out->size(), sizeof(float))); + return; + } if (info.isFloating) { double value = 0.0; try { @@ -146,10 +167,11 @@ int64_t signExtend(uint64_t value, size_t byteWidth) { } bool isUnsignedName(const std::string& name) { - static const char* kUnsigned[] = {"non_det_unsigned", "non_det_uint", - "non_det_ulong", "non_det_ushort", - "non_det_uchar", "non_det_size_t", - "non_det_bool", "non_det_pointer"}; + static const char* kUnsigned[] = { + "non_det_unsigned", "non_det_uint", "non_det_ulong", + "non_det_ushort", "non_det_uchar", "non_det_size_t", + "non_det_bool", "non_det_pointer", "non_det_ulonglong", + "non_det_u8", "non_det_u16", "non_det_u32"}; for (const char* candidate : kUnsigned) { if (name == candidate) return true; } @@ -236,6 +258,17 @@ std::string decodeKtestObject(const KtestObject& object) { return text; } + if (object.name == "non_det_float") { + float value = 0.0f; + const size_t width = std::min(object.bytes.size(), sizeof(float)); + std::memcpy(&value, object.bytes.data(), width); + // %.9g round-trips any float, as the CSV log prints it; the validators + // parse it with %f. + char text[32]; + std::snprintf(text, sizeof(text), "%.9g", static_cast(value)); + return text; + } + const uint64_t raw = leBytesToUnsigned(object.bytes); if (isUnsignedName(object.name)) { return std::to_string(raw); @@ -246,6 +279,14 @@ std::string decodeKtestObject(const KtestObject& object) { return std::to_string(signExtend(raw, object.bytes.size())); } +std::vector decodeKtestInputs(const KtestObject& object) { + if (object.name != kMemoryObject) return {decodeKtestObject(object)}; + std::vector inputs; + inputs.reserve(object.bytes.size()); + for (uint8_t byte : object.bytes) inputs.push_back(std::to_string(byte)); + return inputs; +} + std::vector readViolatingKtest(const std::string& kleeOutDir) { std::error_code error; if (!std::filesystem::is_directory(kleeOutDir, error)) return {}; @@ -285,7 +326,8 @@ std::vector readViolatingKtest(const std::string& kleeOutDir) { std::vector inputs; inputs.reserve(objects.size()); for (const KtestObject& object : objects) { - inputs.push_back(decodeKtestObject(object)); + const std::vector decoded = decodeKtestInputs(object); + inputs.insert(inputs.end(), decoded.begin(), decoded.end()); } return inputs; } @@ -406,7 +448,8 @@ std::vector> readKtestVectors( std::vector inputs; inputs.reserve(objects.size()); for (const KtestObject& object : objects) { - inputs.push_back(decodeKtestObject(object)); + const std::vector decoded = decodeKtestInputs(object); + inputs.insert(inputs.end(), decoded.begin(), decoded.end()); } (isPruned ? prunedVectors : vectors).push_back(std::move(inputs)); } diff --git a/modules/frontend/test_suite/ktest_reader.hpp b/modules/frontend/test_suite/ktest_reader.hpp index eb7aac78d..86d7d76ec 100644 --- a/modules/frontend/test_suite/ktest_reader.hpp +++ b/modules/frontend/test_suite/ktest_reader.hpp @@ -68,6 +68,15 @@ std::vector readKtestFile(const std::string& path, * to drop a test case. */ std::string decodeKtestObject(const KtestObject& object); +/** The object NonDetGeneratorKlee.c makes for __VERIFIER_nondet_memory(p, n): + * n bytes in one object. */ +constexpr const char* kMemoryObject = "non_det_memory"; + +/** Renders one object as the elements it stands for: one, except for a + * memory object, which is one uchar input per byte -- how the validators' + * harness reads __VERIFIER_nondet_memory. */ +std::vector decodeKtestInputs(const KtestObject& object); + /** The input vector of the path KLEE flagged as an error, if there is one. * * For Cover-Error, where the suite needs the ONE vector that reaches the bug. diff --git a/modules/frontend/utils/slicer.hpp b/modules/frontend/utils/slicer.hpp index 323c5cdbe..4104db9db 100644 --- a/modules/frontend/utils/slicer.hpp +++ b/modules/frontend/utils/slicer.hpp @@ -28,9 +28,10 @@ namespace Map2Check { * the program and 10 in the slice; FAILED, NOT_COVERED). Keeping these calls * as criteria keeps the consumption order. * - * The first sixteen are what NonDetPass instruments; the rest are SV-COMP - * names it does not model yet, kept so their order is not lost either. The - * slicer accepts names the program does not use. */ + * All but _Bool and charp are what NonDetPass instruments (the last seven + * since issue #74); those two are SV-COMP names it does not model yet, kept so + * their order is not lost either. The slicer accepts names the program does + * not use. */ inline const std::vector& nondetFunctionNames() { static const std::vector names = { "__VERIFIER_nondet_bool", "__VERIFIER_nondet_char", @@ -44,7 +45,8 @@ inline const std::vector& nondetFunctionNames() { "__VERIFIER_nondet_float", "__VERIFIER_nondet_longlong", "__VERIFIER_nondet_ulonglong", "__VERIFIER_nondet__Bool", "__VERIFIER_nondet_u8", "__VERIFIER_nondet_u16", - "__VERIFIER_nondet_u32", "__VERIFIER_nondet_charp"}; + "__VERIFIER_nondet_u32", "__VERIFIER_nondet_charp", + "__VERIFIER_nondet_memory"}; return names; } diff --git a/tests/unit/frontend/KtestReaderTest.cpp b/tests/unit/frontend/KtestReaderTest.cpp index 1e2bde616..040267e1f 100644 --- a/tests/unit/frontend/KtestReaderTest.cpp +++ b/tests/unit/frontend/KtestReaderTest.cpp @@ -16,6 +16,7 @@ #include #include +#include #include #include #include @@ -90,6 +91,18 @@ std::vector leDouble(double value) { return bytes; } +std::vector le64(int64_t value) { + std::vector bytes(8); + std::memcpy(bytes.data(), &value, 8); + return bytes; +} + +std::vector leFloat(float value) { + std::vector bytes(4); + std::memcpy(bytes.data(), &value, 4); + return bytes; +} + fs::path freshDir(const std::string& name) { fs::path d = fs::temp_directory_path() / ("m2c_ktest_" + name); fs::remove_all(d); @@ -481,3 +494,110 @@ TEST(ReadKtestVectors, FlagsThePrunedVectors) { EXPECT_EQ(vectors[1], std::vector{"1"}); fs::remove_all(d); } + +// --- the types issue #74 added ------------------------------------------------ + +// Intel-TDX reads __VERIFIER_nondet_ulonglong, and its values span all 64 +// bits: one decoded through the 32-bit path is a different input. +TEST(DecodeKtestObject, DecodesSixtyFourBitTypes) { + EXPECT_EQ(Map2Check::decodeKtestObject(obj("non_det_longlong", le64(-5))), + "-5"); + EXPECT_EQ(Map2Check::decodeKtestObject(obj("non_det_ulonglong", le64(-1))), + "18446744073709551615"); +} + +TEST(DecodeKtestObject, DecodesTheFixedWidthUnsignedTypes) { + EXPECT_EQ(Map2Check::decodeKtestObject(obj("non_det_u8", {0xff})), "255"); + EXPECT_EQ(Map2Check::decodeKtestObject(obj("non_det_u16", {0xff, 0xff})), + "65535"); + EXPECT_EQ(Map2Check::decodeKtestObject(obj("non_det_u32", le32(-1))), + "4294967295"); +} + +// Four bytes read as an integer is the failure mode a float has without its +// own name. The text must also round-trip: the validator parses it with %f, +// and a fixed six decimals turns 1e-30 into 0. +TEST(DecodeKtestObject, DecodesFloatsSoTheyRoundTrip) { + EXPECT_EQ(Map2Check::decodeKtestObject(obj("non_det_float", leFloat(1.5f))), + "1.5"); + const std::string tiny = + Map2Check::decodeKtestObject(obj("non_det_float", leFloat(1e-30f))); + EXPECT_EQ(std::strtof(tiny.c_str(), nullptr), 1e-30f) << "got " << tiny; +} + +// The validators' harness reads __VERIFIER_nondet_memory(p, n) as n uchar +// inputs, one per byte; KLEE holds it as one object of n bytes. +TEST(DecodeKtestInputs, ExpandsMemoryIntoOneUcharPerByte) { + EXPECT_EQ(Map2Check::decodeKtestInputs(obj("non_det_memory", {1, 0, 255})), + (std::vector{"1", "0", "255"})); + EXPECT_EQ(Map2Check::decodeKtestInputs(obj("non_det_int", le32(-2))), + std::vector{"-2"}); +} + +TEST(ReadKtestVectors, ExpandsMemoryObjectsInPlace) { + fs::path d = freshDir("memory"); + KtestBuilder() + .object("non_det_int", le32(7)) + .object("non_det_memory", {9, 8}) + .object("non_det_ulonglong", le64(3)) + .writeTo(d / "test000001.ktest"); + auto vectors = Map2Check::readKtestVectors(d.string(), 100); + ASSERT_EQ(vectors.size(), 1u); + EXPECT_EQ(vectors[0], (std::vector{"7", "9", "8", "3"})); + fs::remove_all(d); +} + +TEST(ReadViolatingKtest, ExpandsMemoryObjectsInPlace) { + fs::path d = freshDir("memoryerr"); + KtestBuilder() + .object("non_det_memory", {4, 5}) + .writeTo(d / "test000001.ktest"); + std::ofstream(d / "test000001.abort.err") << "abort"; + EXPECT_EQ(Map2Check::readViolatingKtest(d.string()), + (std::vector{"4", "5"})); + fs::remove_all(d); +} + +// Enumerators 16-21 of NONDET_TYPE (Map2CheckTypes.h). +TEST(ReadNonDetLogAsObjects, ConvertsTheTypesIssue74Added) { + fs::path d = freshDir("nondetlog74"); + std::ofstream(d / "klee_log.csv") + << "0;1;0;main;0;1.5;16\n" + << "1;1;0;main;1;-3;17\n" + << "2;1;0;main;2;18446744073709551615;18\n" + << "3;1;0;main;3;200;19\n" + << "4;1;0;main;4;60000;20\n" + << "5;1;0;main;5;4000000000;21\n"; + const auto objects = + Map2Check::readNonDetLogAsObjects((d / "klee_log.csv").string()); + ASSERT_EQ(objects.size(), 6u); + EXPECT_EQ(objects[0].name, "non_det_float"); + EXPECT_EQ(objects[0].bytes, leFloat(1.5f)); + EXPECT_EQ(objects[1].name, "non_det_longlong"); + EXPECT_EQ(objects[1].bytes, le64(-3)); + EXPECT_EQ(objects[2].name, "non_det_ulonglong"); + EXPECT_EQ(objects[2].bytes, le64(-1)); + EXPECT_EQ(objects[3].name, "non_det_u8"); + EXPECT_EQ(objects[3].bytes, std::vector{200}); + EXPECT_EQ(objects[4].name, "non_det_u16"); + EXPECT_EQ(objects[4].bytes, (std::vector{0x60, 0xea})); + EXPECT_EQ(objects[5].name, "non_det_u32"); + EXPECT_EQ(objects[5].bytes, le32(static_cast(4000000000u))); + fs::remove_all(d); +} + +// The runtime logs __VERIFIER_nondet_memory(p, n) as n MEMORY_BYTE rows while +// KLEE makes one n-byte object, and the log does not mark where a call ends. +// n one-byte seed objects would not match it, so the seed stops there. +TEST(ReadNonDetLogAsObjects, StopsAtAMemoryByte) { + fs::path d = freshDir("nondetlogmem"); + std::ofstream(d / "klee_log.csv") + << "0;1;0;main;0;7;0\n" + << "1;0;0;__VERIFIER_nondet_memory;1;3;22\n" + << "2;1;0;main;2;9;0\n"; + const auto objects = + Map2Check::readNonDetLogAsObjects((d / "klee_log.csv").string()); + ASSERT_EQ(objects.size(), 1u); + EXPECT_EQ(objects[0].name, "non_det_int"); + fs::remove_all(d); +} diff --git a/tests/unit/frontend/SlicerTest.cpp b/tests/unit/frontend/SlicerTest.cpp index 769b2c64e..707df2e97 100644 --- a/tests/unit/frontend/SlicerTest.cpp +++ b/tests/unit/frontend/SlicerTest.cpp @@ -34,7 +34,9 @@ TEST(NondetFunctionNames, CoversWhatNonDetPassInstruments) { const auto& names = Map2Check::nondetFunctionNames(); for (const char* type : {"bool", "char", "uchar", "short", "ushort", "int", "uint", "unsigned", "long", "ulong", "size_t", - "loff_t", "sector_t", "pointer", "pchar", "double"}) { + "loff_t", "sector_t", "pointer", "pchar", "double", + "float", "longlong", "ulonglong", "u8", "u16", "u32", + "memory"}) { const std::string name = std::string("__VERIFIER_nondet_") + type; EXPECT_NE(std::find(names.begin(), names.end(), name), names.end()) << name; } From 5146272b2b0a0f13fbdbc8ec641e39a5894bd9d4 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Mon, 12 Oct 2026 15:47:10 -0400 Subject: [PATCH 82/88] docs(tacas): issue #74 fix, probe and the V99 re-run of the affected categories Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/tacas-experiment-log.md | 33 ++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index 8ab6555ea..6a6815743 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -892,3 +892,36 @@ com 300 s. - **Leitura:** o ambiente oficial funciona ponta a ponta. Falta (1) recalibrar o teto de 50 com o validador oficial e (2) implementar a seleção da suíte por cobertura. O CI que reproduz este ambiente ficou **adiado** (custo ~20–35 min/run; ver o handoff de 07/10). + +## Issue #74 — tipos nondet não modelados (2026-10-12) + +- **Correção:** `05a157371` (branch `feat/nondet-missing-types`, sobre `feat/testcomp-official-env`). + O `NonDetPass` passa a modelar `float`, `longlong`, `ulonglong`, `u8/u16/u32` e + `__VERIFIER_nondet_memory(p, n)`. Cada tipo tem gerador KLEE e AFL++ da largura certa, + linha de log com o valor inteiro (64 bits e float não passam mais pelo logger de `int`) e + nome decodificado pelo leitor de ktest; float sai em `%.9g` (ida e volta exata). + `nondet_memory` segue o harness dos validadores: **n entradas `uchar`, uma por byte** + (o KLEE cria um objeto de n bytes, o leitor o expande). `_Bool`, `charp` e `uint128` + continuam fora: o harness oficial não tem os dois primeiros e o corpus não usa nenhum. +- **Build:** `install_v99b` (`build_v99b`, prefixo próprio; o `install_v99` da campanha + ficou intocado). 12/12 testes unitários; 8 testes novos (decodificação, expansão de + memória, log → semente). +- **Integração (programas sintéticos, 120 s):** ulonglong, longlong, u8/u16/u32, memory e + float — `install_v99` 5× `UNKNOWN`; `install_v99b` 5× `FAILED` em 0–17 s, e as 5 suítes + dão `Result: TRUE` no TestCov 3.11 oficial. +- **Sonda em tarefas reais (300 s, `install_v99b`):** + - **Floats 5/5 `FAILED` em 1–6 s** (na v99: `UNKNOWN` em ~830 s cada) e **TRUE nos 3 + validadores oficiais** (gcc-unformatted, clang-unformatted, testcoca). Dados em + `tacas-results/V99b-probe74/`. + - **Intel-TDX 0/8.** O `failed external call` sumiu, mas não basta: cada execução lê + **~31 500 valores nondet** (os *havoc* de structs/arrays inteiros), o AFL++ roda a ~97 + exec/s e o KLEE executa 39 M instruções em 150 s sem completar **nenhum** caminho. + Além disso, 44/658 tarefas exigem `rcx == (uint64_t)`, que nenhum + vetor reproduz fora do alocador do KLEE. É um problema de escala, separado do #74. +- **Campanha V99:** as 256 Intel-TDX que faltavam no CE foram marcadas `SKIPPED` (todas + chamam um nondet não modelado → `UNKNOWN` por construção no `install_v99`; já eram 0/399). + Backup dos CSVs em `results.csv.bak-before-tdx-skip`. Libera ~28 h de vaga para o CB. +- **Re-rodada `v99-b74-ce` (em andamento, 900 s/8 GB/4 núcleos, `install_v99b`):** as 33 + Floats, 12 Intel-TDX (amostra, semente 7499) e 15 tarefas `FAILED` de outras categorias como + guarda de regressão. Ocupa uma das 2 vagas do launcher. Resultados em + `tacas-results/V99b-ce-affected/`, suítes em `tacas-results/V99b-suites/`. From a2a164a9d1189a9768f43579f015cf0a335cdd3e Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Mon, 12 Oct 2026 18:42:49 -0400 Subject: [PATCH 83/88] docs(tacas): issue #74 re-run report and the KLEE log explosion (#75) Floats go from 11/33 to 33/33 in Cover-Error, the 15 regression guards stay FAILED, and all 48 suites score 1.0 on the three official validators. Intel-TDX stays at 0/12: the KLEE runtime writes symbolic nondet values with fprintf at exit and vfprintf forks per digit, which issue #75 tracks. Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/2026-10-12-issue74-rerodada.md | 128 ++++++++++++++++++++ docs/reports/tacas-experiment-log.md | 17 ++- 2 files changed, 144 insertions(+), 1 deletion(-) create mode 100644 docs/reports/2026-10-12-issue74-rerodada.md diff --git a/docs/reports/2026-10-12-issue74-rerodada.md b/docs/reports/2026-10-12-issue74-rerodada.md new file mode 100644 index 000000000..0025703fd --- /dev/null +++ b/docs/reports/2026-10-12-issue74-rerodada.md @@ -0,0 +1,128 @@ +# Issue #74 — re-rodada das categorias afetadas (2026-10-12) + +Relatório da correção dos tipos `__VERIFIER_nondet_*` não modelados (issue #74) e da +re-rodada Cover-Error que mede o efeito dela nas condições oficiais da campanha V99. + +## Resumo + +- **Floats: 11/33 → 33/33** no Cover-Error, todas com score 1,0 nos 3 validadores oficiais. + As 22 tarefas recuperadas davam `UNKNOWN` em ~810–865 s; agora dão `FAILED` em 0–92 s. +- **Sem regressão:** as 15 tarefas de outras categorias que já davam `FAILED` na v99 + continuam `FAILED`, com score 1,0 nos 3 validadores. +- **Intel-TDX: 0/12** na amostra, como antes. O #74 era necessário, mas não suficiente: o + gargalo agora é a explosão de estados do KLEE ao gravar o log nondet, registrada na + **issue #75**. Ela afeta qualquer tarefa com mais que poucas leituras nondet, não só a + Intel-TDX. + +## Configuração + +| Item | Valor | +|------|-------| +| Correção | `05a157371` (branch `feat/nondet-missing-types`) | +| Build | `install_v99b` (o `install_v99` da campanha ficou intocado) | +| Imagem | `map2check-v9-eval:latest` | +| Limites | 900 s, 8 GB, 4 núcleos, `TESTCOV_S=0` (iguais aos da V99) | +| Tarefas | 60 de `tacas-results/V99b-affected.tsv` | +| Validação | `run.sh validate --property cover-error`, 3 validadores oficiais: `testcov-…-gcc-unformatted`, `testcov-…-clang-unformatted`, `testcoca-…-clang-formatted` | + +Composição das 60 tarefas: + +- **33 Floats:** a categoria inteira do corpus CE. +- **12 Intel-TDX:** amostra, semente 7499. +- **15 tarefas de guarda de regressão:** tarefas que davam `FAILED` na v99, em ProductLines + (5), Loops (3), Sequentialized (2), Hardware (2), Arrays (2) e Heap (1). + +A re-rodada ocupou uma das 2 vagas do launcher, em paralelo com o CE da v99. A carga da +máquina foi a mesma da campanha. + +## Resultados, par a par com a v99 + +| Categoria | Tarefas | v99 `FAILED` | v99b `FAILED` | Score oficial v99b | Transições | +|-----------|--------:|-------------:|--------------:|-------------------:|------------| +| Floats | 33 | 11 | **33** | **33,0** | 22 `UNKNOWN→FAILED`, 11 `FAILED→FAILED` | +| Intel-TDX | 12 | 0 | 0 | — | 5 `UNKNOWN→UNKNOWN`, 7 não rodadas na v99 (SKIPPED) → `UNKNOWN` | +| ProductLines | 5 | 5 | 5 | 5,0 | `FAILED→FAILED` | +| Loops | 3 | 3 | 3 | 3,0 | `FAILED→FAILED` | +| Sequentialized | 2 | 2 | 2 | 2,0 | `FAILED→FAILED` | +| Hardware | 2 | 2 | 2 | 2,0 | `FAILED→FAILED` | +| Arrays | 2 | 2 | 2 | 2,0 | `FAILED→FAILED` | +| Heap | 1 | 1 | 1 | 1,0 | `FAILED→FAILED` | + +**Validação oficial:** 48/48 suítes `true` em **cada um** dos 3 validadores, soma de score +48,0. As 26 tarefas que já davam `FAILED` na v99 também tinham score 1,0 lá, então não há +perda. + +**Tempo:** + +- Floats recuperadas: 0–92 s, mediana ~2 s. Na v99, as mesmas tarefas davam ~810–865 s. +- Guarda de regressão: a maioria ficou na mesma faixa. Algumas oscilaram, por exemplo + `email_spec27_product17` (8 → 64 s) e `email_spec27_product18` (21 → 51 s). Outras + ficaram mais rápidas, como `pals_lcr-var-start-time` (139 → 70 s) e `twocount32` + (107 → 82 s). +- Essas variações vêm do sorteio do AFL++ e da carga do vizinho. Todas ficaram muito abaixo + do orçamento de 900 s. + +## Intel-TDX: por que continua zerada (issue #75) + +O `failed external call: __VERIFIER_nondet_ulonglong` do #74 sumiu. Mesmo assim, as 12 +tarefas terminam `UNKNOWN` em ~800 s. + +Para isolar a causa, usei um programa sintético sem nenhum desvio antes do fim: +N leituras `__VERIFIER_nondet_int` e `reach_error` se `a[0] == 7 && a[N-1] == 42`. +KLEE puro, `install_v99b`: + +| N | Veredito | Tempo | Caminhos parciais | +|--:|----------|------:|------------------:| +| 2 | `FAILED` | 0 s | 1 | +| 5 | `FAILED` | 28 s | 861 | +| 10 | `UNKNOWN` | 60 s | 1 550 | +| 100 | `UNKNOWN` | 120 s | 3 218 | +| 10 000 | `UNKNOWN` | 120 s | 0 completos | + +**Diagnóstico pelo `run.istats` (N = 10):** 1 549 das 1 551 bifurcações estão sob +`map2check_target_function → map2check_exit → nondet_log_to_file → fprintf → vfprintf`. + +Ou seja, o KLEE **já chegou ao `reach_error`**. O que impede o veredito é a gravação do +`klee_log.csv`, cujos valores ainda são simbólicos: o `vfprintf` do uclibc bifurca a cada +dígito de cada valor. Uma tarefa Intel-TDX lê ~31 500 valores por execução. + +**Consequências:** + +- Nessas tarefas, o híbrido depende só do AFL++. +- O efeito vale para qualquer categoria com muitas leituras nondet, inclusive no + Cover-Branches. + +**Correção proposta na #75:** concretizar os valores antes de gravar, só no runtime KLEE. + +**Medido, mas não corrigido:** + +- O AFL++ roda a ~97 exec/s nessas tarefas. +- O log faz um `malloc` por leitura, e esse `malloc` também vaza, porque `append_element` + já copia a linha. + +**Hipótese descartada:** a B-tree em disco (`ContainerBTree.c`) **não** está no caminho. +O build liga o `ContainerRealloc.bc`. + +**Fora do escopo:** 44 das 658 tarefas exigem um valor igual a um endereço de `malloc`, o +que nenhum vetor reproduz no validador. + +## Situação da campanha V99 + +- **Cover-Error:** as 256 Intel-TDX restantes foram marcadas `SKIPPED` (`UNKNOWN` por + construção no `install_v99`). O `v99-ce-s1` termina as Hardware restantes. +- **Cover-Branches:** começou às 18h37 (`v99-cb-s0`), na vaga liberada pela re-rodada. +- **Placar oficial:** para a correção do #74 contar, as Floats do `install_v99b` + substituem as da v99 (+22 no CE). O CB tem 2 009 tarefas que declaram `float`. Ele roda + com o `install_v99` e herda a limitação; uma re-rodada CB das Floats com o `install_v99b` + fica como próximo passo. + +## Artefatos + +Todos em `tacas-results/`: + +- `V99b-affected.tsv`: lista das 60 tarefas. +- `V99b-ce-affected/results.csv`: vereditos e tempos. +- `V99b-suites/`: suítes. +- `V99b-ce-val/scores.csv`: validação oficial, 48 tarefas. +- `compare-v99b.py`: comparação par a par. +- `V99b-probe74/`: sonda de 300 s da #74. diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index 6a6815743..3d6803502 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -921,7 +921,22 @@ com 300 s. - **Campanha V99:** as 256 Intel-TDX que faltavam no CE foram marcadas `SKIPPED` (todas chamam um nondet não modelado → `UNKNOWN` por construção no `install_v99`; já eram 0/399). Backup dos CSVs em `results.csv.bak-before-tdx-skip`. Libera ~28 h de vaga para o CB. -- **Re-rodada `v99-b74-ce` (em andamento, 900 s/8 GB/4 núcleos, `install_v99b`):** as 33 +- **Re-rodada `v99-b74-ce` (900 s/8 GB/4 núcleos, `install_v99b`):** as 33 Floats, 12 Intel-TDX (amostra, semente 7499) e 15 tarefas `FAILED` de outras categorias como guarda de regressão. Ocupa uma das 2 vagas do launcher. Resultados em `tacas-results/V99b-ce-affected/`, suítes em `tacas-results/V99b-suites/`. +- **Resultado da re-rodada (concluída às 18h37):** + - **Floats: 11/33 → 33/33 `FAILED`.** As 22 recuperadas levavam ~810–865 s na v99 e + agora levam 0–92 s. + - **Guarda de regressão: 15/15 continuam `FAILED`.** + - **Intel-TDX: 0/12.** + - **Validação oficial:** 48/48 suítes `true` em cada um dos 3 validadores (score 48,0). + - Relatório completo em `docs/reports/2026-10-12-issue74-rerodada.md`. +- **Issue #75 — explosão de estados do KLEE ao gravar o log nondet.** + - **Sintético:** N leituras `int` e alvo no fim. N = 5 já dá 861 caminhos parciais e + 28 s; N = 10 dá `UNKNOWN`. + - **Causa:** 1 549 das 1 551 bifurcações estão em `nondet_log_to_file → vfprintf`, + porque o log grava valores ainda simbólicos. + - **Alcance:** é o que segura a Intel-TDX, e vale para qualquer tarefa com muitas + leituras nondet. + - **Hipótese descartada:** a B-tree em disco; o build liga o `ContainerRealloc`. From 4855cbb4531e5897b0b85d701688942038894be1 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Mon, 12 Oct 2026 20:24:43 -0400 Subject: [PATCH 84/88] docs(changelog): unmodeled nondet types (#74) and the official Test-Comp validation Co-Authored-By: Claude Opus 5.5 (1M context) --- CHANGELOG.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 828d25d84..78b1108b6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -56,9 +56,23 @@ search. Measured against the v15 baseline in `docs/reports/tacas-experiment-log. fails. `MAP2CHECK_PREOPT=ssa` (reachability and assert): the module in SSA form before instrumentation. - `MAP2CHECK_CHECK_CSTRINGS=1`: the strings a `%s` or `puts` reads are checked. +- Official Test-Comp 2026 validation (`tests/testcomp/official/run.sh`): + suites are generated and validated under BenchExec with the competition's + validators (TestCov gcc/clang unformatted, TestCoCa clang formatted), each + task with its own property files; the corpora are drawn from the official + task set with proportional stratification (`build_corpus_official.py`). ### Fixed +- Nondet types the instrumentation did not model (#74): `float`, `longlong`, + `ulonglong`, `u8`/`u16`/`u32` and `__VERIFIER_nondet_memory` were external + calls, so KLEE killed every state and the task was UNKNOWN by construction. + Each now has a KLEE and an AFL++ generator of the right width, a full-width + log entry (64-bit and float values no longer go through the `int` logger; + floats print as `%.9g`) and a ktest decoding; `nondet_memory` yields one + `uchar` input per byte, as the validators' harness reads it. Floats in the + official Cover-Error corpus: 11/33 → 33/33, every suite confirmed by all + three validators. - The AFL++ generator replayed its input from the start past its end: a `while (__VERIFIER_nondet_int())` loop never ended and afl-fuzz aborted in its dry run. Reads past the end are now zero. From 8da579488ba88c667634ca9b0c32caf661d517c6 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Mon, 12 Oct 2026 21:24:33 -0400 Subject: [PATCH 85/88] fix(runtime): stop the KLEE nondet log from exploding the error path The runtime wrote klee_log.csv with the nondet values still symbolic, and uClibc's vfprintf forks on every digit it converts: with ten reads KLEE reached the target and never finished the log. Measured on a straight-line program with N reads and the target at the end: N before after 5 FAILED 28 s, 861 states FAILED 1 s 10 UNKNOWN FAILED 1 s 100 UNKNOWN FAILED 1 s 1,000 UNKNOWN FAILED 6 s 10,000 UNKNOWN FAILED 31 s - Pin each logged value to one model (klee_get_value + klee_assume, in order, so the row is one consistent vector) before printing it. - Format the rows by hand: even concrete, vfprintf cost ~7,000 KLEE instructions per call, 93% of a 1,000-read path. The file is byte for byte what fprintf printed (NonDetLogTest). - Past 1,024 rows skip the log: pinning is one solver query per row, and the violating .ktest, which the frontend already falls back to, holds the same vector. - Grow the realloc container geometrically instead of by one row, and drop the heap copy of every nondet row (append_element copies it; it leaked). Refs #75 Co-Authored-By: Claude Opus 5.5 (1M context) --- .../backend/library/lib/ContainerRealloc.c | 42 +++++++-- .../backend/library/lib/NonDetGeneratorKlee.c | 40 ++++++++- modules/backend/library/lib/NonDetLog.c | 85 ++++++++++++++---- .../integration/test_testcomp_regressions.sh | 28 ++++++ tests/unit/backend-library/CMakeLists.txt | 9 +- tests/unit/backend-library/NonDetLogTest.cpp | 86 +++++++++++++++++++ 6 files changed, 263 insertions(+), 27 deletions(-) create mode 100644 tests/unit/backend-library/NonDetLogTest.cpp diff --git a/modules/backend/library/lib/ContainerRealloc.c b/modules/backend/library/lib/ContainerRealloc.c index 6fe712943..72d246106 100644 --- a/modules/backend/library/lib/ContainerRealloc.c +++ b/modules/backend/library/lib/ContainerRealloc.c @@ -42,25 +42,55 @@ Bool free_container(MAP2CHECK_CONTAINER *container) { } Bool append_element(MAP2CHECK_CONTAINER *container, void *row) { + /* Grow geometrically: the capacity is the power of two at or above the + * size, so the buffer is reallocated only when the size reaches one. It + * grew by one row per append, and every append copied the whole log: N + * nondet reads cost O(N^2) row copies, and under KLEE each realloc is a new + * memory object whose (symbolic) bytes are copied too -- with 10,000 reads + * the single path ran out of time before reaching the target (issue #75). */ + unsigned old_size = container->size; container->size += 1; + if (old_size != 0 && (old_size & (old_size - 1)) != 0) { + switch (container->type) { + case LIST_LOG_CONTAINER: + ((LIST_LOG_ROW *)container->values)[old_size] = *((LIST_LOG_ROW *)row); + break; + case ALLOCATION_LOG_CONTAINER: + ((MEMORY_ALLOCATIONS_ROW *)container->values)[old_size] = + *((MEMORY_ALLOCATIONS_ROW *)row); + break; + case NONDET_LOG_CONTAINER: + ((NONDET_CALL *)container->values)[old_size] = *((NONDET_CALL *)row); + break; + case HEAP_LOG_CONTAINER: + ((MEMORY_HEAP_ROW *)container->values)[old_size] = + *((MEMORY_HEAP_ROW *)row); + break; + case TRACKBB_LOG_CONTAINER: + ((TRACK_BB_ROW *)container->values)[old_size] = *((TRACK_BB_ROW *)row); + break; + } + return TRUE; + } + unsigned capacity = old_size == 0 ? 1 : 2 * old_size; - int new_allocation_size; + size_t new_allocation_size; switch (container->type) { case LIST_LOG_CONTAINER: - new_allocation_size = container->size * sizeof(LIST_LOG_ROW); + new_allocation_size = capacity * sizeof(LIST_LOG_ROW); break; case ALLOCATION_LOG_CONTAINER: - new_allocation_size = container->size * sizeof(MEMORY_ALLOCATIONS_ROW); + new_allocation_size = capacity * sizeof(MEMORY_ALLOCATIONS_ROW); break; case NONDET_LOG_CONTAINER: - new_allocation_size = container->size * sizeof(NONDET_CALL); + new_allocation_size = capacity * sizeof(NONDET_CALL); break; case HEAP_LOG_CONTAINER: - new_allocation_size = container->size * sizeof(MEMORY_HEAP_ROW); + new_allocation_size = capacity * sizeof(MEMORY_HEAP_ROW); break; case TRACKBB_LOG_CONTAINER: - new_allocation_size = container->size * sizeof(TRACK_BB_ROW); + new_allocation_size = capacity * sizeof(TRACK_BB_ROW); break; } // printf("new allocation size: %d\n", new_allocation_size); diff --git a/modules/backend/library/lib/NonDetGeneratorKlee.c b/modules/backend/library/lib/NonDetGeneratorKlee.c index f9920ba66..8eb5876ee 100644 --- a/modules/backend/library/lib/NonDetGeneratorKlee.c +++ b/modules/backend/library/lib/NonDetGeneratorKlee.c @@ -19,11 +19,47 @@ int main(int argc, char **argv) { return __map2check_main__(argc, argv); } void nondet_init() { nondet_log_init(); } void nondet_destroy() { nondet_log_destroy(); } +extern long long klee_get_value_i64(long long expr); +extern void klee_assume(int); + +/* Pin every logged value to one concrete model before printing it. The values + * are still symbolic when the path ends, and uClibc's vfprintf branches on + * each digit it converts: every row multiplied the states, so a program with + * ten nondet reads reached its target and never finished writing the log + * (issue #75). The assume makes each value consistent with the path and with + * the values pinned before it, so the row is one input vector, not a set of + * independent guesses. The 64-bit view covers every member of the union; the + * narrower ones were zero-extended by new_nondet_call's memset. */ +static void concretize_nondet_log(MAP2CHECK_CONTAINER log) { + unsigned i; + for (i = 0; i < log.size; i++) { + NONDET_CALL *call = (NONDET_CALL *)get_element_at(i, log); + if (call == NULL) + return; + long long symbolic; + memcpy(&symbolic, &call->value, sizeof(symbolic)); + long long concrete = klee_get_value_i64(symbolic); + klee_assume(symbolic == concrete); + memcpy(&call->value, &concrete, sizeof(concrete)); + } +} + +/* Pinning costs a solver query per row, and the equalities pile up: with + * 1,000 rows the violating path took 6 s, with 10,000 it never reached its + * abort -- the target found, KLEE's timer expiring mid-log. Past this size the + * log is not written: the violating state's .ktest, which KLEE solves in one + * query when the state ends, carries the same vector in the same order, and + * the frontend reads it whenever klee_log.csv is missing. */ +#define MAP2CHECK_KLEE_LOG_MAX_ROWS 1024U + void nondet_generate_aux_witness_files() { - nondet_log_to_file(map2check_nondet_get_log()); + MAP2CHECK_CONTAINER log = map2check_nondet_get_log(); + if (log.size > MAP2CHECK_KLEE_LOG_MAX_ROWS) + return; + concretize_nondet_log(log); + nondet_log_to_file(log); } -extern void klee_assume(int); /* A failed assumption ends the path as a normal exit. klee_assume(0) on a * path where the condition is already false is a KLEE error ("invalid diff --git a/modules/backend/library/lib/NonDetLog.c b/modules/backend/library/lib/NonDetLog.c index 2d5c9db1a..18a0781d2 100644 --- a/modules/backend/library/lib/NonDetLog.c +++ b/modules/backend/library/lib/NonDetLog.c @@ -14,25 +14,71 @@ const char *klee_log_file = "klee_log.csv"; +/* Decimal conversion by hand, not through printf. Under KLEE, uClibc's + * vfprintf is interpreted instruction by instruction -- about 7,000 per call, + * seven calls per row -- and the log of a run with 1,000 nondet reads cost + * 44 M instructions, 93% of the whole path (issue #75). Each helper appends + * to `buffer` and returns the new end. */ +static char *put_ulonglong(char *buffer, unsigned long long value) { + char digits[20]; + int n = 0; + do { + digits[n++] = (char)('0' + value % 10); + value /= 10; + } while (value != 0); + while (n > 0) + *buffer++ = digits[--n]; + return buffer; +} + +static char *put_longlong(char *buffer, long long value) { + if (value < 0) { + *buffer++ = '-'; + /* negate in unsigned: -LLONG_MIN overflows */ + return put_ulonglong(buffer, 0ULL - (unsigned long long)value); + } + return put_ulonglong(buffer, (unsigned long long)value); +} + +static char *put_string(char *buffer, const char *text, size_t max) { + size_t i; + for (i = 0; i < max && text[i] != '\0'; i++) + *buffer++ = text[i]; + return buffer; +} + Bool nondet_log_to_file(MAP2CHECK_CONTAINER klee_container) { if (klee_container.type != NONDET_LOG_CONTAINER) { return FALSE; } FILE *output = fopen(klee_log_file, "w"); + if (output == NULL) { + return FALSE; + } - int i = 0; + /* id;line;scope;function;step;value;type -- five numbers of at most 20 + * characters, the name, a double of at most ~320 (%lf of DBL_MAX) */ + char row[512]; + unsigned i = 0; unsigned size = klee_container.size; for (; i < size; i++) { NONDET_CALL *call = (NONDET_CALL *)get_element_at(i, klee_container); if (call == NULL) { + fclose(output); return FALSE; } - fprintf(output, "%d;", i); - fprintf(output, "%u;", call->line); - fprintf(output, "%u;", call->scope); - fprintf(output, "%s;", call->function_name); - fprintf(output, "%u;", call->step_on_execution); + char *end = row; + end = put_longlong(end, (int)i); + *end++ = ';'; + end = put_ulonglong(end, call->line); + *end++ = ';'; + end = put_ulonglong(end, call->scope); + *end++ = ';'; + end = put_string(end, call->function_name, FUNCTION_MAX_LENGTH_NAME); + *end++ = ';'; + end = put_ulonglong(end, call->step_on_execution); + *end++ = ';'; // The value generated from nondet function. Read inline: it is stored in // the row, not behind a pointer into a stack frame that no longer exists. @@ -43,28 +89,32 @@ Bool nondet_log_to_file(MAP2CHECK_CONTAINER klee_container) { * being first, but the type column moved to index 7 and anything reading * it got a copy of the value instead. */ if (((int)call->type) == UNSIGNED || ((int)call->type) == U32) { - fprintf(output, "%u;", call->value.as_unsigned); + end = put_ulonglong(end, call->value.as_unsigned); } else if (((int)call->type) == DOUBLE) { - fprintf(output, "%lf;", call->value.as_double); + end += snprintf(end, row + sizeof(row) - end - 16, "%lf", + call->value.as_double); } else if (((int)call->type) == FLOAT) { /* %.9g, not %lf: nine significant digits round-trip any float, while * six fixed decimals print 1e-30 as 0 -- a different input. */ - fprintf(output, "%.9g;", (float)call->value.as_double); + end += snprintf(end, row + sizeof(row) - end - 16, "%.9g", + (float)call->value.as_double); } else if (((int)call->type) == LONGLONG) { - fprintf(output, "%lld;", call->value.as_longlong); + end = put_longlong(end, call->value.as_longlong); } else if (((int)call->type) == ULONGLONG) { - fprintf(output, "%llu;", call->value.as_ulonglong); + end = put_ulonglong(end, call->value.as_ulonglong); } else { - fprintf(output, "%d;", call->value.as_int); + end = put_longlong(end, call->value.as_int); } + *end++ = ';'; // Type of the nondet function - fprintf(output, "%d\n", ((int)call->type)); + end = put_longlong(end, (int)call->type); + *end++ = '\n'; + fwrite(row, 1, (size_t)(end - row), output); } fclose(output); return TRUE; - } NONDET_CALL new_nondet_call(enum NONDET_TYPE type, unsigned line, @@ -106,10 +156,9 @@ MAP2CHECK_CONTAINER map2check_nondet_get_log() { return nondet_log; } void helper_map2check_nondet_append_element(NONDET_CALL nondetCall) { map2check_next_current_step(); - NONDET_CALL *row = (NONDET_CALL *)malloc(sizeof(NONDET_CALL)); - *row = nondetCall; - - append_element(&nondet_log, row); + /* append_element copies the row: a heap copy here leaked one row per + * nondet read (and was one more memory object per read under KLEE). */ + append_element(&nondet_log, &nondetCall); } #define MAP2CHECK_NONDET_GENERATOR(type, nondet_type) \ diff --git a/tests/integration/test_testcomp_regressions.sh b/tests/integration/test_testcomp_regressions.sh index 83a353351..5842202d3 100755 --- a/tests/integration/test_testcomp_regressions.sh +++ b/tests/integration/test_testcomp_regressions.sh @@ -1319,6 +1319,34 @@ else fail "fuzzer suite" "fuzzer cases=${fuzzed:-0}, duplicate cases=$dups" fi +# --- 38. KLEE: a dozen nondet reads still reach a verdict (issue #75) +# The runtime printed its nondet log with the values still symbolic, and +# uClibc's vfprintf forks on every digit: with ten reads KLEE reached the +# target and never finished writing the log -- UNKNOWN on a straight line. +mkdir -p "$WORK/manyreads" +cat > "$WORK/manyreads/many.c" <<'EOF2' +extern void abort(void); +void reach_error(void) {} +extern int __VERIFIER_nondet_int(void); +int main(void) { + int a[12]; + for (int i = 0; i < 12; i++) a[i] = __VERIFIER_nondet_int(); + if (a[0] == 7 && a[11] == 42) { reach_error(); abort(); } + return 0; +} +EOF2 +echo 'CHECK( init(main()), LTL(G ! call(reach_error())) )' > "$WORK/manyreads/prop.prp" +( cd "$WORK/manyreads" && MAP2CHECK_PATH="$MAP2CHECK_DIR" timeout -k 10 200 "$MAP2CHECK" \ + --nondet-generator symex --generate-test-suite --target-function --target-function-name reach_error \ + --property-file prop.prp --timeout 60 many.c ) > "$WORK/manyreads/many.log" 2>&1 +vec=$(grep -ho '[^<]*' "$WORK"/manyreads/test-suite/testcase-*.xml 2>/dev/null | sed 's///' | tr '\n' ' ') +set -- $vec +if grep -q "VERIFICATION FAILED" "$WORK/manyreads/many.log" && [ "$#" -eq 12 ] && [ "$1" = 7 ] && [ "${12}" = 42 ]; then + ok "KLEE alone finds the error behind 12 nondet reads, with the full vector" +else + fail "nondet log explosion" "$(grep -aoE 'VERIFICATION [A-Z]+' "$WORK/manyreads/many.log" | tail -1); vector: $vec" +fi + echo " ---" echo " Results: $PASSED passed, $FAILED failed" [ "$FAILED" -eq 0 ] || exit 1 diff --git a/tests/unit/backend-library/CMakeLists.txt b/tests/unit/backend-library/CMakeLists.txt index baca1f5e7..0c7101072 100644 --- a/tests/unit/backend-library/CMakeLists.txt +++ b/tests/unit/backend-library/CMakeLists.txt @@ -44,9 +44,16 @@ add_executable(MemTrackTest $ ) +add_executable(NonDetLogTest + NonDetLogTest.cpp + $ + ${DEFAULT_CONTAINER_LIB} +) + map2check_test(AllocationLogTest) map2check_test(HeapLogTest) map2check_test(ContainerReallocTest) map2check_test(BTreeTest) map2check_test(ContainerBTreeTest) -map2check_test(MemTrackTest) \ No newline at end of file +map2check_test(MemTrackTest) +map2check_test(NonDetLogTest) diff --git a/tests/unit/backend-library/NonDetLogTest.cpp b/tests/unit/backend-library/NonDetLogTest.cpp new file mode 100644 index 000000000..20ee622b8 --- /dev/null +++ b/tests/unit/backend-library/NonDetLogTest.cpp @@ -0,0 +1,86 @@ +#include +extern "C" { +#include +} + +#include +#include +#include +#include +#include +#include + +/* NonDetLog.c takes its step counter from Map2CheckFunctions.c; the test + * links only the log and its container. */ +extern "C" { +static unsigned current_step = 0; +unsigned map2check_get_current_step() { return current_step; } +void map2check_next_current_step() { current_step++; } +} + +namespace { +std::string readFile(const std::string &path) { + std::ifstream in(path); + std::stringstream text; + text << in.rdbuf(); + return text.str(); +} +} // namespace + +class NonDetLogTest : public ::testing::Test { + protected: + void SetUp() override { + previous = std::filesystem::current_path(); + directory = std::filesystem::temp_directory_path() / + ("nondetlog-" + std::to_string(::getpid())); + std::filesystem::create_directories(directory); + std::filesystem::current_path(directory); + current_step = 0; + nondet_log_init(); + } + void TearDown() override { + nondet_log_destroy(); + std::filesystem::current_path(previous); + std::filesystem::remove_all(directory); + } + + std::filesystem::path previous; + std::filesystem::path directory; +}; + +/* The writer formats numbers by hand, not with fprintf (issue #75: under KLEE + * uClibc's vfprintf cost ~7,000 instructions a call). Every expected line + * below is what the fprintf version printed for the same row, so the file the + * frontend parses is byte for byte the same. */ +TEST_F(NonDetLogTest, WritesEveryTypeExactlyAsPrintfDid) { + map2check_nondet_int(10, 3, -1, "__VERIFIER_nondet_int"); + map2check_nondet_int(11, 3, INT_MIN, "__VERIFIER_nondet_int"); + map2check_nondet_unsigned(1, 2, UINT_MAX, "u"); + map2check_nondet_longlong(5, 6, LLONG_MIN, "ll"); + map2check_nondet_ulonglong(7, 8, ULLONG_MAX, "ull"); + map2check_nondet_double(9, 9, 1.5, "d"); + map2check_nondet_double(9, 9, -0.0, "d"); + map2check_nondet_float(9, 9, 1e-30f, "f"); + map2check_nondet_float(9, 9, 0.1f, "f"); + map2check_nondet_memory_byte(0, 0, 200, "__VERIFIER_nondet_memory"); + map2check_nondet_int(1, 1, 7, "a_function_name_that_is_exactly_34c"); + + ASSERT_TRUE(nondet_log_to_file(map2check_nondet_get_log())); + EXPECT_EQ(readFile("klee_log.csv"), + "0;10;3;__VERIFIER_nondet_int;0;-1;0\n" + "1;11;3;__VERIFIER_nondet_int;1;-2147483648;0\n" + "2;1;2;u;2;4294967295;5\n" + "3;5;6;ll;3;-9223372036854775808;17\n" + "4;7;8;ull;4;18446744073709551615;18\n" + "5;9;9;d;5;1.500000;15\n" + "6;9;9;d;6;-0.000000;15\n" + "7;9;9;f;7;1e-30;16\n" + "8;9;9;f;8;0.100000001;16\n" + "9;0;0;__VERIFIER_nondet_memory;9;200;22\n" + "10;1;1;a_function_name_that_is_exactly_34c;10;7;0\n"); +} + +TEST_F(NonDetLogTest, AnEmptyLogIsAnEmptyFile) { + ASSERT_TRUE(nondet_log_to_file(map2check_nondet_get_log())); + EXPECT_EQ(readFile("klee_log.csv"), ""); +} From b4bda9011cb3cc7ad6cdf8781f66d6cf64f72319 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Mon, 12 Oct 2026 22:18:49 -0400 Subject: [PATCH 86/88] feat(klee): MAP2CHECK_KLEE_MAX_MEMORY knob; changelog for #75 KLEE's 2,000 MB default cap killed states on Intel-TDX tasks. The knob passes --max-memory; raising it to 6,000 MB left the 8-task probe at 0/8, so the default stays. Co-Authored-By: Claude Opus 5.5 (1M context) --- CHANGELOG.md | 8 ++++++++ README.md | 1 + modules/frontend/caller.cpp | 11 +++++++++++ 3 files changed, 20 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 78b1108b6..788d9dee6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -56,6 +56,7 @@ search. Measured against the v15 baseline in `docs/reports/tacas-experiment-log. fails. `MAP2CHECK_PREOPT=ssa` (reachability and assert): the module in SSA form before instrumentation. - `MAP2CHECK_CHECK_CSTRINGS=1`: the strings a `%s` or `puts` reads are checked. +- `MAP2CHECK_KLEE_MAX_MEMORY` (MB): KLEE's memory cap, default unchanged. - Official Test-Comp 2026 validation (`tests/testcomp/official/run.sh`): suites are generated and validated under BenchExec with the competition's validators (TestCov gcc/clang unformatted, TestCoCa clang formatted), each @@ -73,6 +74,13 @@ search. Measured against the v15 baseline in `docs/reports/tacas-experiment-log. `uchar` input per byte, as the validators' harness reads it. Floats in the official Cover-Error corpus: 11/33 → 33/33, every suite confirmed by all three validators. +- The KLEE runtime wrote its nondet log with the values still symbolic, and + uClibc's `vfprintf` forked on every digit (#75): a straight-line program + with ten nondet reads reached its target and never finished. The values are + now pinned to one model before printing, the rows are formatted without + `printf` (byte-identical output), a log past 1,024 rows is left to the + violating `.ktest`, and the log container grows geometrically. Ten reads: + UNKNOWN → FAILED in 1 s; 10,000 reads: UNKNOWN → FAILED in 31 s. - The AFL++ generator replayed its input from the start past its end: a `while (__VERIFIER_nondet_int())` loop never ended and afl-fuzz aborted in its dry run. Reads past the end are now zero. diff --git a/README.md b/README.md index 8286728b2..a181015bc 100644 --- a/README.md +++ b/README.md @@ -120,6 +120,7 @@ an assumption. It prunes that path and does not end the search. | `MAP2CHECK_PREOPT` | off | `ssa`: mem2reg + simplifycfg before instrumentation, for reachability and assert only. Measured neutral in the hybrid. | | `MAP2CHECK_CHECK_CSTRINGS` | off | `1`: check the strings a `%s` or `puts` reads. It fixes one wrong TRUE on Juliet, but produces false positives on memory the runtime does not track (CASTLE: FP from 1 to 4). | | `MAP2CHECK_CLAM_PROFILE` | default | `memory` or `none`: see `--add-invariants`. | +| `MAP2CHECK_KLEE_MAX_MEMORY` | KLEE's 2000 | KLEE's `--max-memory`, in MB. Raising it to 6000 changed nothing on Intel-TDX (0/8 either way). |

--add-invariants inserts abstract-interpretation invariants computed by diff --git a/modules/frontend/caller.cpp b/modules/frontend/caller.cpp index f1179d7c6..8485e0682 100644 --- a/modules/frontend/caller.cpp +++ b/modules/frontend/caller.cpp @@ -1303,6 +1303,17 @@ void Caller::executeAnalysis(std::string solvername) { << std::max(1u, static_cast(0.875 * kleeBudget)) << "s"; + // KLEE's own default cap is 2,000 MB, well under what a Test-Comp run + // gets; past it KLEE kills states and stops forking, and the run can no + // longer be TRUE. MAP2CHECK_KLEE_MAX_MEMORY (MB) raises it. + if (const char *maxMemory = std::getenv("MAP2CHECK_KLEE_MAX_MEMORY")) { + const std::string megabytes(maxMemory); + if (!megabytes.empty() && + megabytes.find_first_not_of("0123456789") == std::string::npos) { + kleeCommand << " --max-memory=" << megabytes; + } + } + // Halting on the first error is right when there is a property to // decide -- the answer is known, and more exploration is waste. It is From a2fbc566148b78d0512d494f55b717440248217d Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Tue, 13 Oct 2026 03:33:19 -0400 Subject: [PATCH 87/88] docs(tacas): issue #75 probes and the 40-task CE sample on install_v99c Co-Authored-By: Claude Opus 5.5 (1M context) --- docs/reports/tacas-experiment-log.md | 48 ++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/docs/reports/tacas-experiment-log.md b/docs/reports/tacas-experiment-log.md index 3d6803502..151569d04 100644 --- a/docs/reports/tacas-experiment-log.md +++ b/docs/reports/tacas-experiment-log.md @@ -940,3 +940,51 @@ com 300 s. - **Alcance:** é o que segura a Intel-TDX, e vale para qualquer tarefa com muitas leituras nondet. - **Hipótese descartada:** a B-tree em disco; o build liga o `ContainerRealloc`. + +## Issue #75 — correção do log nondet do KLEE, sondas e amostra (2026-10-12/13) + +- **Correção (`8da579488`, `b4bda9011`, na `feat/map2check-9.0`):** + - o log nondet é **concretizado** (`klee_get_value_i64` + `klee_assume`) antes de ser + gravado; + - o `fprintf` foi trocado por formatação manual (custava ~7 000 instruções KLEE por + chamada); + - o `ContainerRealloc` cresce geometricamente; + - logs com mais de 1 024 linhas não são gravados, e o vetor sai do `.ktest`; + - knob `MAP2CHECK_KLEE_MAX_MEMORY`. + - Build `install_v99c`. Teste unitário `NonDetLogTest` (CSV byte a byte igual ao do + `fprintf`) e regressão de integração §38. +- **Sintético (N leituras `int`, alvo no fim, KLEE puro):** + + | N | v99b | v99c | + |---|---|---| + | 5 | 28 s | 1 s | + | 10 | `UNKNOWN` | 1 s | + | 100 | `UNKNOWN` | 1 s | + | 1 000 | `UNKNOWN` | 6 s | + | 10 000 | `UNKNOWN` | 31 s (vetor do ktest) | + +- **Sonda em tarefas reais (300 s):** + - Floats 5/5 continuam `FAILED`. + - **Intel-TDX 0/8**, com a memória padrão e também com `MAP2CHECK_KLEE_MAX_MEMORY=6000`. + - A `t1` no KLEE puro (240 s) completa 852 caminhos (antes: 0), deixa 557 parciais e + perde estados pelo teto de memória. + - Conclusão: o que resta é a **explosão genuína** do programa (havoc de milhares de + leituras e pré-condição longa), não mais o log. É uma frente separada. +- **Amostra `m2c-sample75` (40 tarefas de CE, semente 7575, 900 s/8 GB/4 núcleos):** + 20 `FAILED` e 20 `UNKNOWN` da v99, comparadas 1 a 1. Dados em + `tacas-results/V99c-sample/`. + - **20/20 `FAILED` mantidas**, e as 20 suítes dão `true` nos 3 validadores oficiais. + Isso é idêntico à v99, inclusive o `ERROR (1)` do TestCov em + `seq_cmp_antisymmetry_cover_target`, que só o TestCoCa valida. + - **Tempo das 20 `FAILED`: 1 584 s → 1 364 s (−14 %).** O ganho vem de duas tarefas: + - `Problem11_label00`: 249 → 89 s; + - `id_o100`: 76 → 1 s. + + Nas demais, a variação ficou dentro do ruído (`aim-100-3-4-sat-1`: 78 → 115 s). + - **0/20 ganhos nas `UNKNOWN`**: 19 Hardware (btor2c) e `Problem101_label00`. Agora usam + quase todo o orçamento (~830–900 s, contra ~710–890 s na v99), sem vetor. + - **Leitura:** a #75 não introduz regressão e acelera alguns casos. Na Hardware o + gargalo não é o log. +- **Campanha:** em 13/10 às 00h43, o `v99c-campaign.sh` iniciou as 256 Intel-TDX `SKIPPED` + no `install_v99c` (`v99c-ce-tdx-s0/1`). O Cover-Branches (4 shards, 3 500 tarefas, + `install_v99c`) começa sozinho quando todo o CE terminar. From 0b149ce3108f7707843e38074071d93582557f79 Mon Sep 17 00:00:00 2001 From: Guilherme Bernardo Date: Thu, 15 Oct 2026 13:41:55 -0400 Subject: [PATCH 88/88] test(testcomp): loop_reads.c is COVERED since #75 The TestCov gate is bidirectional and failed on b4bda9011 and a2fbc5661 with "expected NOT_COVERED, observed COVERED". Concretizing the KLEE nondet log (8da579488) removed the state explosion that kept this four-read program from emitting a vector. Measured at BUDGET=120: install_v99b NOT_COVERED, install_v99c COVERED (2/2). Co-Authored-By: Claude Opus 5.5 (1M context) --- tests/testcomp/expected.txt | 25 +++++++++---------------- 1 file changed, 9 insertions(+), 16 deletions(-) diff --git a/tests/testcomp/expected.txt b/tests/testcomp/expected.txt index 38b0185a6..4249c1712 100644 --- a/tests/testcomp/expected.txt +++ b/tests/testcomp/expected.txt @@ -17,20 +17,13 @@ no_input.c COVERED char_input.c COVERED unreachable.c NOT_COVERED -# loop_reads.c -- NOT_COVERED, and the reason is now known (finding K). +# loop_reads.c -- COVERED since issue #75 (commit 8da579488). # -# Map2Check DOES find the violation here. Running with --debug shows -# "TARGET-REACHED found" -- the property file is written -- and then KLEE is -# killed by the timeout while still exploring other states, at which point -# map2check.cpp forces the verdict to UNKNOWN and throws the violation away: -# -# if (caller->isTimeout()) { propertyViolated = UNKNOWN; } -# -# So no suite is emitted and the suite cannot cover anything. The emitter is -# never reached, and the emitter is not at fault. -# -# This line becomes COVERED once the verdict logic consults the property before -# forcing UNKNOWN on timeout. The gate will insist on the update, which is the -# point of keeping the case here instead of deleting it. -# See docs/reports/2026-08-12-castle-juliet-findings.md, finding K. -loop_reads.c NOT_COVERED +# It was NOT_COVERED from finding K until then: KLEE reached the target but +# forked on every symbolic value written to the nondet log (vfprintf), so the +# run ran out of budget before a test vector came out. Concretizing the log +# before writing it removed the explosion. +# Measured at BUDGET=120: install_v99b NOT_COVERED, install_v99c COVERED (2/2). +# See docs/reports/2026-08-12-castle-juliet-findings.md (finding K) and the +# issue #75 entry in docs/reports/tacas-experiment-log.md. +loop_reads.c COVERED