diff --git a/docs/ci-verification.md b/docs/ci-verification.md index 63ba3e9aa8..52b62d0481 100644 --- a/docs/ci-verification.md +++ b/docs/ci-verification.md @@ -1,8 +1,25 @@ # CI verification -## Current selected-family replay: #6030 +## Current selected-family replay: #7000 with #7001 The [selected record](../certificates/selected-result.json) binds conditional +κ = 0.00363005817 to the [application review](research/pr-intake-evidence/pr7000-application/PROOF-REVIEW.md), +[validation receipts](research/pr-intake-evidence/pr7000-application/VALIDATION.json), +and [explicit source closure](../certificates/frontier7000-source.json). +`make frontier7000-verify` follows that exact-source selected replay. The review +reuses eleven authenticated preceding executions and records seven fresh serial +application, scalar and complete native-catalogue executions. The earlier +monolithic timeout is retained separately and is not completed coverage. +Consult the receipts for exact commands, source heads and limits. + +The five inherited framework assumptions remain. No complete uniform word, +literal multiplier execution, independent human proof or formal-kernel proof +is asserted. Routine research submissions do not need to rerun this +selected-family replay. The sections below preserve historical checkpoints. + +## Historical selected-family replay: #6030 + +The [historical checkpoint](../certificates/checkpoints/frontier6030.json) binds conditional κ = 0.003125804 to the [proof review](research/pr-intake-evidence/pr6030-audit/PROOF-REVIEW.md), [validation receipts](research/pr-intake-evidence/pr6030-audit/VALIDATION.json), and [explicit source closure](../certificates/frontier6030-source.json). diff --git a/research/historical-selected-replay-gap/README.md b/research/historical-selected-replay-gap/README.md index 55d8cc3b49..36d9a873ca 100644 --- a/research/historical-selected-replay-gap/README.md +++ b/research/historical-selected-replay-gap/README.md @@ -69,7 +69,11 @@ python3 -B scripts/research_package.py --package research/historical-selected-re The direct command prints `PASS_HISTORICAL_SELECTED_REPLAY_GAP`. A registered replay prints `PASS_REGISTERED_RESEARCH_PACKAGE`. Both require Git history -containing the two inspected commits. +containing the two inspected commits and the source and manifest objects at +`2485805a6d47f36ea83ddde6327d453ac82d44dc`. The verifier uses a temporary +sparse checkout of that commit, checks the declared source digests there, and +uses its planner and manifest inventory. The recorded rejections and selection +therefore remain reproducible after later changes to the live Makefile or CI guide. ## Open next questions diff --git a/research/historical-selected-replay-gap/SOURCES.json b/research/historical-selected-replay-gap/SOURCES.json index c1010eec95..62bb8b3950 100644 --- a/research/historical-selected-replay-gap/SOURCES.json +++ b/research/historical-selected-replay-gap/SOURCES.json @@ -4,13 +4,13 @@ "files": [ { "path": "Makefile", - "usage": "input", + "usage": "provenance", "git_blob": "0d683a06b9e7ee162496108ce9a7c5d2ee94fccf", "sha256": "4f2d4f2dcd15139ec82658a975f85ed300897385f85799218539f4c8d60567da" }, { "path": "certificates/partial-swap-network.json", - "usage": "input", + "usage": "provenance", "git_blob": "eccafa830c16170c36faf93045ddf1f638f7bcd4", "sha256": "4c0b9d37e1034b2076e30a70f8e514416298c462d9ee98bc87fe6556b14df786" }, @@ -22,7 +22,7 @@ }, { "path": "docs/ci-verification.md", - "usage": "input", + "usage": "provenance", "git_blob": "63ba3e9aa8bdc5e942b56e34244b92b16f854085", "sha256": "c7d3027e9ad8bcbff68f07aa9576b30fb2f3c76c44d876d40c7fdbf4a3e2228a" }, @@ -34,163 +34,163 @@ }, { "path": "research/clifford-state-performance/SOURCE.json", - "usage": "input", + "usage": "provenance", "git_blob": "6f98a0061a5104dfab82c9e806f819b41811f684", "sha256": "396d0f08df24952248140d5c65c51b8c902ef1c580892ff7ea182890530f67ee" }, { "path": "research/community-batch1047-audit/CONTENT-COVERAGE.json", - "usage": "input", + "usage": "provenance", "git_blob": "5e0f92af463ec12c5e1dcc3effd44081a88af647", "sha256": "07a9daeaf2bda308a92e9a4684f13d5fc766c7772d74801fceb7f4599fdab226" }, { "path": "research/community-batch1099-audit/CONTENT-COVERAGE.json", - "usage": "input", + "usage": "provenance", "git_blob": "9e13266bf85e627f1b7dc225e9530ea69fd2c7f0", "sha256": "421e1211fb1897c45621dc6801c276e53f2e6f335583c9c9049e535f87c0a3b1" }, { "path": "research/community-batch932-audit/CONTENT-COVERAGE.json", - "usage": "input", + "usage": "provenance", "git_blob": "cc4d03eb59b9ab3f952735f7e88ff18c2d15d7af", "sha256": "184629cac91a5cfaca50330a88596008b824221433867dcf8117539c913c284a" }, { "path": "research/community-batch970-audit/CONTENT-COVERAGE.json", - "usage": "input", + "usage": "provenance", "git_blob": "8b9f4111badf7de5d97684799560b55110e9da79", "sha256": "23188ed920e38a54006cb883e181585620821c63bf7e8b5e05d32719417cc37e" }, { "path": "research/community-frontier741-audit/CONTENT-COVERAGE.json", - "usage": "input", + "usage": "provenance", "git_blob": "a5300d4e7a5381a3f443fc54c768ca6f0f236d68", "sha256": "3c820fb30e1b4d9bcfc6a7ab524375e5b2abd66b940af2c509146104f0bcd79c" }, { "path": "research/community-frontier890-audit/CONTENT-COVERAGE.json", - "usage": "input", + "usage": "provenance", "git_blob": "d7ff6d777b01d69b6ce84caf25d3b7e4a4d2f211", "sha256": "6b185a9902652f893f3ebd8ada92d2f11b6de6533a9a4d11718a8a4496101128" }, { "path": "research/community-hyperplane599-audit/SOURCE.json", - "usage": "input", + "usage": "provenance", "git_blob": "546f37d326d10a99910ae8f908e71ef768524d98", "sha256": "65099d764bfcc39bda5e4d9966783611b094c3522dbdd1435cd498d657a8ef8e" }, { "path": "research/community-k492-audit/SOURCE.json", - "usage": "input", + "usage": "provenance", "git_blob": "e538481e4cb16ed936d3195f2dfb5b5a9ca0a76b", "sha256": "2c0f4fa5bc150d05658af2e7c54c4d2c337dd52b7efd3d69530ae73bcbdf452a" }, { "path": "research/community-reconciliation92-audit/MANIFEST.json", - "usage": "input", + "usage": "provenance", "git_blob": "2a2e93685173d5f13cbb5abe740f5d90352e0228", "sha256": "5f501f3c118131e7d069f30ad77186eb2ad6961f9680a0ef105f4514ed41808a" }, { "path": "research/partial-swap-digest/baseline.py", - "usage": "input", + "usage": "provenance", "git_blob": "a2f0190704db83bd8ef48e46e723c49b925804fe", "sha256": "81e9af92cdf38243a540cdcff2062778e449467848d444da37a9553c12ca4c34" }, { "path": "research/r420-two-sided-basis/SOURCES.json", - "usage": "input", + "usage": "provenance", "git_blob": "5d718e11e62f4bcadecf1e02d6b61f87dbe190b0", "sha256": "d9810b0d139c5a1211fd2c1f0d142187cc1fca30026e1e7bc4f9ecfacf1596d1" }, { "path": "research/skip-clones/SOURCE.json", - "usage": "input", + "usage": "provenance", "git_blob": "8d1bb3b9c8189e35e5d8bfdfa632d7473e8be0d5", "sha256": "0b68e63e35a97ce6b0cdb6e291b88ebaa8f2dd4afb70b2498f10ee89428258dc" }, { "path": "research/split-skip/SOURCE.json", - "usage": "input", + "usage": "provenance", "git_blob": "2ab610b6ea2edd2865fda793ef2168b0c76afb4f", "sha256": "7c2b4646a3ecfef6f881da5c43e4bd0fa9a4d1b00548b8ab458d897e16735134" }, { "path": "scripts/historical-ci-inputs/Makefile", - "usage": "input", + "usage": "provenance", "git_blob": "aff68409021c9d401a6f8013b9dfd7dbcc30f2a8", "sha256": "ea8830dd79da493e2d75baf753d733ff7efbcf2b4794afe41fae0ac8f3055646" }, { "path": "scripts/historical-ci-inputs/ledger-batch932-run_isolated_tests.py", - "usage": "input", + "usage": "provenance", "git_blob": "65db599ab0b1dea0312c4ca048e0bd0f44c3736f", "sha256": "96ea543e6c707424afe247e77bd86c82152f90fc76a0773c4232145da5cdf8d1" }, { "path": "scripts/historical-ci-inputs/ledger-batch932-test_isolated_test_runner.py", - "usage": "input", + "usage": "provenance", "git_blob": "34820a8f24678f918f4d0e7a35380d8013fc3495", "sha256": "628391b6abfbc8674ceec1751867a4392f2cc0b5b66886243e139af86cf355ac" }, { "path": "scripts/historical-ci-inputs/ledger-batch970-verify_selected_result.py", - "usage": "input", + "usage": "provenance", "git_blob": "c755b76e0d44ba4917aa94440ebe54daefce5b2a", "sha256": "d7fd929726b326aeeaf0a3996475adec88eee9aac09ae0bebeeaa0bc1fc8f199" }, { "path": "scripts/historical-ci-inputs/ledger-frontier741-ci-verification.md", - "usage": "input", + "usage": "provenance", "git_blob": "7f3c012504187917a728b9fe87043f0fc8cd006a", "sha256": "a854022e0e1d5d4db4d60e586be3ea56005013ef14a1fc06d02bc06e8529c4b0" }, { "path": "scripts/historical-ci-inputs/partial-swap-context.json", - "usage": "input", + "usage": "provenance", "git_blob": "ad65114886bf34a4fd27e79f3be502389e689faa", "sha256": "833a9642f33aeab2ffea17ec9c6b82e0a953f90192b2c82e10bef21538dccba9" }, { "path": "scripts/historical-ci-inputs/partial-swap-network.json", - "usage": "input", + "usage": "provenance", "git_blob": "52075f2463f60af5e16571347f24274fce73a1ea", "sha256": "f3c4be597b2f2136da4ae2cc80c7454f63c90aa01f84e5b8131cee4dd55de815" }, { "path": "scripts/partial_swap/shared.py", - "usage": "input", + "usage": "provenance", "git_blob": "44a0e454c70f9c4b98e258b8443612e6a119904b", "sha256": "5a0646a50b9f3e8ea55168620a78e8853b0ab810517cefc8cfb8696aedee278a" }, { "path": "scripts/replay_historical_check.py", - "usage": "input", + "usage": "provenance", "git_blob": "1e92fff2782970ef71378f594f2350d245a4db26", "sha256": "5467619c78183d3adc82b0cb55af28e5c1a01fca2b0588677816244b53e2bafd" }, { "path": "scripts/research_package.py", - "usage": "input", + "usage": "provenance", "git_blob": "091b4c8f58bac9a9580d76025b887dc5c873d05f", "sha256": "e1256016e7f51827d04fa2179255989f639ae1d97afaa9c16265f85a0c6abd70" }, { "path": "scripts/run_isolated_tests.py", - "usage": "input", + "usage": "provenance", "git_blob": "a96ab35b315ce492e7fbbfd6c5ae211aa066b541", "sha256": "49eb56dd0fc0d8d8ffdb209970a7adf2176223580646f575d5c22e59543b381c" }, { "path": "scripts/verify_selected_result.py", - "usage": "input", + "usage": "provenance", "git_blob": "6882a4700e410dec569b51ae2eaf1a19cc019195", "sha256": "d6b305eac5b9bdb8172c469ad30a1655a60fa0aceac8b1bf610e1b73f51babd8" }, { "path": "tests/test_isolated_test_runner.py", - "usage": "input", + "usage": "provenance", "git_blob": "343b24abf6719b81805eba5a84c74e57634c8288", "sha256": "3a5470d0b139828b90e19bf9583ddeafcd69f8e34f2824664eb3a2958a52e34d" } diff --git a/research/historical-selected-replay-gap/VERIFY.json b/research/historical-selected-replay-gap/VERIFY.json index 98553e72ed..ab7efa3471 100644 --- a/research/historical-selected-replay-gap/VERIFY.json +++ b/research/historical-selected-replay-gap/VERIFY.json @@ -4,36 +4,7 @@ "python": "3.12", "requirements": [], "inputs": [ - "Makefile", - "certificates/partial-swap-network.json", - "docs/ci-verification.md", - "research/clifford-state-performance/SOURCE.json", - "research/community-batch1047-audit/CONTENT-COVERAGE.json", - "research/community-batch1099-audit/CONTENT-COVERAGE.json", - "research/community-batch932-audit/CONTENT-COVERAGE.json", - "research/community-batch970-audit/CONTENT-COVERAGE.json", - "research/community-frontier741-audit/CONTENT-COVERAGE.json", - "research/community-frontier890-audit/CONTENT-COVERAGE.json", - "research/community-hyperplane599-audit/SOURCE.json", - "research/community-k492-audit/SOURCE.json", - "research/community-reconciliation92-audit/MANIFEST.json", - "research/partial-swap-digest/baseline.py", - "research/r420-two-sided-basis/SOURCES.json", - "research/skip-clones/SOURCE.json", - "research/split-skip/SOURCE.json", - "scripts/historical-ci-inputs/Makefile", - "scripts/historical-ci-inputs/ledger-batch932-run_isolated_tests.py", - "scripts/historical-ci-inputs/ledger-batch932-test_isolated_test_runner.py", - "scripts/historical-ci-inputs/ledger-batch970-verify_selected_result.py", - "scripts/historical-ci-inputs/ledger-frontier741-ci-verification.md", - "scripts/historical-ci-inputs/partial-swap-context.json", - "scripts/historical-ci-inputs/partial-swap-network.json", - "scripts/partial_swap/shared.py", - "scripts/replay_historical_check.py", - "scripts/research_package.py", - "scripts/run_isolated_tests.py", - "scripts/verify_selected_result.py", - "tests/test_isolated_test_runner.py" + "scripts/research_package.py" ], "commands": [ { diff --git a/research/historical-selected-replay-gap/verify.py b/research/historical-selected-replay-gap/verify.py index 83b995941a..9d266c5a4e 100644 --- a/research/historical-selected-replay-gap/verify.py +++ b/research/historical-selected-replay-gap/verify.py @@ -6,8 +6,10 @@ """ import hashlib import importlib.util +import json import subprocess import sys +import tempfile from pathlib import Path ROOT = Path(__file__).resolve().parents[2] @@ -61,31 +63,47 @@ def require(ok, message): raise SystemExit(message) -def load_checker(): - path = ROOT / "scripts/replay_historical_check.py" - spec = importlib.util.spec_from_file_location("historical_selected_replay_gap_checker", path) +def load_module(path): + spec = importlib.util.spec_from_file_location(path.stem, path) module = importlib.util.module_from_spec(spec) spec.loader.exec_module(module) return module +def checkout_snapshot(snapshot, sources, runner, env): + paths = [runner.canonical_relative_path(row["path"]) for row in sources["files"]] + git = ["git", "-c", "maintenance.auto=false", "-c", "gc.auto=0", + "-c", "core.autocrlf=false"] + subprocess.run([*git, "clone", "--quiet", "--shared", "--no-tags", "--no-checkout", + "--", str(ROOT), str(snapshot)], cwd=ROOT, env=env, check=True) + subprocess.run([*git, "update-ref", "--no-deref", "HEAD", INSPECTED], + cwd=snapshot, env=env, check=True) + # The pinned planner reads omitted manifests from the sparse HEAD/index. + patterns = "".join(f"/{path.as_posix()}\n" for path in paths) + subprocess.run([*git, "sparse-checkout", "set", "--no-cone", "--stdin"], + cwd=snapshot, env=env, input=patterns.encode("utf-8"), check=True) + subprocess.run([*git, "read-tree", "-mu", "HEAD"], cwd=snapshot, env=env, check=True) + for path, row in zip(paths, sources["files"], strict=True): + require(hashlib.sha256((snapshot / path).read_bytes()).hexdigest() == row["sha256"], + "historical checkout source digest changed: " + path.as_posix()) + + def entries(checker): for name, config in checker.CONFIG.items(): for entry in [config, *config.get("additional_inputs", [])]: yield name, entry -def reject(checker, entry): +def reject(root, checker, entry): try: - checker.authenticated_input(ROOT, entry) + checker.authenticated_input(root, entry) except ValueError as exc: return str(exc) raise SystemExit("historical input was admitted: " + entry["path"]) -def main(): - require(not sys.flags.optimize, "assertions must stay enabled") - checker = load_checker() +def check_snapshot(root, env): + checker = load_module(root / "scripts/replay_historical_check.py") selected = [entry for name, entry in entries(checker) if name == "tooling-ledger" and entry["path"] == SELECTED_PATH] require(len(selected) == 1, "selected-result checker overlay is not unique") @@ -94,7 +112,7 @@ def main(): require(entry["accepted_live_sha256"] == [SELECTED_ACCEPTED], "accepted selected-checker successors changed") frozen = (checker.INPUTS / entry["input"]).read_bytes() - live = (ROOT / SELECTED_PATH).read_bytes() + live = (root / SELECTED_PATH).read_bytes() require(hashlib.sha256(frozen).hexdigest() == SELECTED_PIN, "frozen selected checker bytes changed") require(hashlib.sha256(live).hexdigest() == SELECTED_LIVE, "live selected checker digest changed") require(SELECTED_LIVE not in (SELECTED_PIN, SELECTED_ACCEPTED), "live checker was already admitted") @@ -102,7 +120,7 @@ def main(): # live successor, not a broken comparison. require(SELECTED_PIN in (SELECTED_PIN, *entry["accepted_live_sha256"]), "pin membership control failed") - require(reject(checker, entry) == REJECTIONS[SELECTED_PATH][1], + require(reject(root, checker, entry) == REJECTIONS[SELECTED_PATH][1], "selected checker rejection text changed") counts = {path: 0 for path in REJECTIONS} @@ -110,7 +128,7 @@ def main(): for _name, item in entries(checker): if item["path"] not in REJECTIONS: continue - message = reject(checker, item) + message = reject(root, checker, item) counts[item["path"]] += 1 messages.setdefault(item["path"], message) for path, (count, message) in REJECTIONS.items(): @@ -118,20 +136,31 @@ def main(): require(messages[path] == message, "rejection text changed for " + path) require(sum(counts.values()) == 19, "rejection total changed") ci = [item for _name, item in entries(checker) if item["path"] == CI_PATH] - require(len(ci) == 1 and hashlib.sha256((ROOT / CI_PATH).read_bytes()).hexdigest() == CI_LIVE, + require(len(ci) == 1 and hashlib.sha256((root / CI_PATH).read_bytes()).hexdigest() == CI_LIVE, "selected CI note digest changed") diff = subprocess.check_output( - ["git", "diff", "--name-only", PARENT, INSPECTED], cwd=ROOT, text=True) + ["git", "diff", "--name-only", PARENT, INSPECTED], cwd=root, env=env, text=True) changed = sorted(name for name in diff.splitlines() if name) require(changed == CHANGED, "inspected commit diff changed") - sys.path.insert(0, str(ROOT / "scripts")) - from research_package import plan_details - details = plan_details(ROOT, set(changed)) + planner = load_module(root / "scripts/research_package.py") + details = planner.plan_details(root, set(changed)) require([row["package"] for row in details] == PLAN_PACKAGES, "helper plan selection changed") matched = {name for row in details for names in row["causes"].values() for name in names} require(sorted(set(changed) - matched) == UNMATCHED, "unmatched plan paths changed") - require(plan_details(ROOT, set()) == [], "empty change set selected a package") + require(planner.plan_details(root, set()) == [], "empty change set selected a package") + + +def main(): + require(not sys.flags.optimize, "assertions must stay enabled") + sources = json.loads(Path(__file__).with_name("SOURCES.json").read_bytes()) + require(sources["base_commit"] == INSPECTED, "historical checkout base changed") + runner = load_module(ROOT / "scripts/research_package.py") + env = runner.git_source_env() + with tempfile.TemporaryDirectory(prefix="historical-selected-replay-") as temporary: + snapshot = Path(temporary) / "snapshot" + checkout_snapshot(snapshot, sources, runner, env) + check_snapshot(snapshot, env) print("PASS_HISTORICAL_SELECTED_REPLAY_GAP") print("selected_checker_live=" + SELECTED_LIVE) print("rejections=19 distinct_paths=7 plan_packages=9") diff --git a/research/p104-two-blocker-exclusion/DEPENDENCIES.json b/research/p104-two-blocker-exclusion/DEPENDENCIES.json new file mode 100644 index 0000000000..55aa8ba282 --- /dev/null +++ b/research/p104-two-blocker-exclusion/DEPENDENCIES.json @@ -0,0 +1,32 @@ +{ + "inputs/CALLER.json": "255d89f38cd45e38e5770f559bc43dc217e989032359768cdc7e8cdfd64b47bc", + "inputs/RESULT.json": "e4ae0c1cfa809cd780a6e22ce32528e7ca4b4e57f90abf91ad0bde97d30446ab", + "inputs/WORD.json.gz": "2b9b9712addc38f441b434e8b2eca0cfefe5b54fdc1e174beed7f0c3435fa42d", + "kappa-chronology-pivot-20261110T1021Z/evidence/corrected_contacts.py": "2866eef44044869905fa39bca94d8800d6b440c724a5ddc774c12e0db92cad18", + "kappa-contact-release-20261110T0922Z/evidence/constrained.py": "fe058a3597acbf939ca6099ac21ae56fd7ab4cc517d4ba8e02413156b490e60e", + "kappa-contact-release-20261110T0922Z/evidence/release.py": "f77ae6f4df5639424d5b520d4fcc4503995e7b901598a174257866ccb868cf8a", + "kappa-contact-release-20261110T0922Z/evidence/resolve_pair.py": "8b469c7880f79850794bed03d044aa6d84c270f6ab873b7c51c52dd5a909ef92", + "kappa-coupled-boundaries-20261110T0908Z/evidence/eliminate.py": "ae07c6e1f8fa52cf7f50597a9e645b6120a51ef9b4b80eb87b232f32021930f3", + "kappa-coupled-boundaries-20261110T0908Z/evidence/geometry.py": "ad1f17f62e7ec320cebaca174a940aed2a8bb7aa90c3f63086d0252fead65169", + "kappa-coupled-boundaries-20261110T0908Z/replay/research/shared-wire-stop-fusion/audit_price.py": "585295aa55846e594c705941002c36ea0b9b6cbfe3a49e6594e1d2e70751b704", + "kappa-helper-boundary-20261110T0853Z/evidence/screen.py": "c3d3f604e5ad480991ebcf87624eb45b85f74714fec9855a9c1fc0c3ca574cf7", + "kappa-interior-20261110T0823Z/evidence/closure.py": "e6b3cdfcb42f4cd22d46e1783a537d147b092634f4cf089e91344e29f0214cf1", + "kappa-nonbridge-pairs-20261110T0937Z/evidence/nonbridge_screen.py": "f83f5877c7ee1258fb052448c7e69d0ec8a4e91179a994cb8054a1ec1c545976", + "kappa-scalar-two-20261110T2315Z/evidence/overlap/OVERLAP.json": "0b4ca293e890266274af572da7f48feb3628d9da7bab93b5c7f6b5c6f249cd3a", + "kappa-scalar-two-20261110T2315Z/evidence/overlap/overlap.py": "3b6a8ee19b7f44e7b968f778b35e447525da93da153ebdedd5e5bb4c247a3949", + "kappa-scalar-two-20261110T2315Z/evidence/overlap/validate.py": "e1322e0a010ac34809b26ab76b0416a4f13a6b29310930b0480776734ee69a0c", + "kappa-scalar-two-20261110T2315Z/evidence/planner/ALL.json": "5bf1ca7041b7fad855ca273992fb2ff0969515c4642ffccbfd9ddce56a598dcc", + "kappa-scalar-two-20261110T2315Z/evidence/planner/PLANNER.json": "7a2b0a7d73426bad5950e7932b43ba30d51a2c359d14bb10276edd424a08a9bc", + "kappa-scalar-two-20261110T2315Z/evidence/planner/all_terms.py": "026050e72cfa2a10a64541f53488b6d3f284bc2194793da926d772eb02b659a4", + "kappa-scalar-two-20261110T2315Z/evidence/planner/free_term.py": "d623743e2beb0f8578487cc1f458a0e15fc5ed10381c57e7984c615200a54a81", + "kappa-scalar-two-20261110T2315Z/evidence/planner/two_blockers.py": "152b0f6c80e0f7a47b078fb35bd91b35fbfd63fa2d2da17cf66ded05f51846f0", + "kappa-scalar-two-20261110T2315Z/evidence/planner/validate.py": "65b1e11ecfc6fec38c70b19d4f1495988c0920d8c0a7434f502f9a6eeba1aac8", + "kappa-scalar-two-20261110T2315Z/evidence/planner/validate_all.py": "42018a0166d4d4d0b220a1e24572b137fe69f41cdb9d381f3d7a6c6e01c4f3bd", + "kappa-scalar-two-20261110T2315Z/evidence/planner/validate_free.py": "252af2f22ae6e7a4b5a3bba10cf52fa08cf583159bdb56cc4308eae92c56f51c", + "kappa-scalar-two-20261110T2315Z/evidence/price/ALL.json": "2d4073ac56b27a623079566128bf5f6020855a84f9181ed85a89597377c8b1ae", + "kappa-scalar-two-20261110T2315Z/evidence/price/ALL.jsonl": "e453216f8ac0125d204fb252769a307114f052f339c9c40d65e9f98095cb4d47", + "kappa-scalar-two-20261110T2315Z/evidence/price/OVERLAP.json": "85298142b0cb4bb0e11bbe99c10dc78f1de11d7acf5e4f615ff0c9104fcd4ec5", + "kappa-scalar-two-20261110T2315Z/evidence/price/price_two.py": "9a15af7348c3ffd77e1225e8b944fe2cdecc69bb487bd2b70c125b2c75e37754", + "kappa-two-blockers-20261110T1036Z/evidence/two_blockers.py": "a5b5855f3016a77d991fb53536cae388221a7cf9529fe58c376141bc7656e0c3", + "kappa-typea-birth2-20261110T2258Z/evidence/scalar/port.py": "d05dcb28604a9bc6305ec90428f5f7fe875333031ecf1705229b0c4605dc3032" +} diff --git a/research/p104-two-blocker-exclusion/README.md b/research/p104-two-blocker-exclusion/README.md new file mode 100644 index 0000000000..9e8ef436a4 --- /dev/null +++ b/research/p104-two-blocker-exclusion/README.md @@ -0,0 +1,97 @@ +# Exact #7131 two-blocker scalar exclusion + +**NO VERIFIED GAIN.** The complete conditional comparison remains +κ = 0.003642408496869 on [#7131](https://github.com/CrocSwap/integer-mult-bounds/pull/7131) +at head `67a6544cf18b2d372fd1d0deee1863e9f6ca9fc5`. This package +closes a finite scalar-chronology search that can be skipped when +investigating the next P104 paid-profile improvement. + +## Scope and result + +The starting native word is the same-word export at +[dillona/666fd749](https://github.com/dillona/integer-mult-bounds/tree/666fd749ec465de7238633a0c2fd5ee3081477e0/research/p104-output-rechart-composition). +Its canonical decompressed SHA-256 is +`9557c4682056ab7cc7cda89aa73865bef0e3948cc10b3c3061b0a944af05b96a`. +The exact signed caller, word and result are committed under +[vendor/inputs](vendor/inputs). They are authenticated both as +stored bytes and against the scientific pins in the replay. These +are vendored exports of pending sources. No local Git object or +remote download of their commits is required. + +The [caller source](https://github.com/CrocSwap/integer-mult-bounds/blob/07a76c5e2738882c0cb322278e56f6cae3c9885d/research/signed-caller-8x9/expected/ODD-TYPE-AB-CALLER.json) +has SHA-256 `255d89f38cd45e38e5770f559bc43dc217e989032359768cdc7e8cdfd64b47bc`. +The same-word result has SHA-256 +`e4ae0c1cfa809cd780a6e22ce32528e7ca4b4e57f90abf91ad0bde97d30446ab`. + +On this word, remove one public bridge ADD and conjugate across +its next two incompatible public ADD or SCALE blockers in either +direction. Recompute the support after each crossing. Lower +disjoint-support conjugates to at most four commuting ADDs. +Allow each term to visit every distinct chart pair in its own +commuting window with all other original scalar events fixed. +For the seven overlap cases, test the exact five-factor conjugation +packet at one common cut. Owned roles and main endpoints stay fixed. + +The exact local controls verify 4,200 two-blocker conjugations. +The all-term replay checks **73,461** chart-visit products. +There are 66,914 incompatible span bounds, four incompatible rank +equations, 33 nonpositive rank uppers and six nonpositive mixed +rank and exact uppers. The other 6,504 placements restore the +removed equality and cannot release that scalar contact. +The overlap replay checks **eight** placements, with five +incompatible span bounds and three nonpositive rank uppers. +There are zero unresolved price cases in these scopes. + +The full literal #7131 invoice reconstructs 110,400 paid and +22,308 productive calls, surplus 1424. The directed chart price +overgrants zero-rank paid deletion and free added ordinary work. +Its negative result does not establish a global coframe optimum. +No new native or application candidate reached the complete verifier. + +## Reproduce + +Use the CPython 3.12 standard library from a clean checkout. + +```sh +python3.12 -B research/p104-two-blocker-exclusion/verify.py +``` + +The [registered replay](VERIFY.json) runs the same command. +The verifier checks the exact local identities and sampled full +intervals, compares the compressed enumeration with the exhaustive +signature set, and replays both directed price receipts and the +all-term journal. The omission and invalid-cut controls reject. +The [dependency receipt](DEPENDENCIES.json) uses stable paths and +authenticates both distinct two_blockers.py files. Duplicate keys +are rejected. A local prefix of the package location does not enter +either price receipt. + +## Overlap and credit + +The nearest archived [#6290 G20 screen](https://github.com/CrocSwap/integer-mult-bounds/pull/6290) +tests 765 local conjugations on a fixed route table. This package +uses the exact P104 #7131 word and checks separate commuting cuts +and changed chart assignments. The [pending causal-history work](https://github.com/CrocSwap/integer-mult-bounds/discussions/1166#discussioncomment-19520521) +keeps scalar order fixed and changes a helper transfer. The +[canonical Round 2 finding](https://github.com/CrocSwap/integer-mult-bounds/discussions/7111#discussioncomment-19531093) +records the earlier local checkpoint. + +Rohan Arun supplied the [#7113 caller](https://github.com/CrocSwap/integer-mult-bounds/pull/7113), +[#7124 output rechart](https://github.com/CrocSwap/integer-mult-bounds/pull/7124) +and #7131 composition. Dillona supplied the [#7130 pivot split](https://github.com/CrocSwap/integer-mult-bounds/pull/7130) +and the same-word export. This replay retains the exact native, +caller and compiler lineage credited in that export. It rebases +ToikY's earlier local chart solver and adds support-aware conjugation, +independent commuting cuts and the path-keyed replay. Prepared for +ToikY with substantial OpenAI Codex assistance. Apache-2.0. + +## Open next questions + +Can a third incompatible scalar blocker change the constrained +paid profile on this exact word? Start with the planner's sparse +rank-one conjugation and its omitted-term control. Extend the +support-aware contact search by one crossing, cap the first pass +at 500 eligible placements, and require a positive directed paid +profile before lowering any nominee. Ownership contacts and +overlapping-support packets at independently moved cuts need +separate exact operator checks. diff --git a/research/p104-two-blocker-exclusion/SOURCES.json b/research/p104-two-blocker-exclusion/SOURCES.json new file mode 100644 index 0000000000..5335fa97d9 --- /dev/null +++ b/research/p104-two-blocker-exclusion/SOURCES.json @@ -0,0 +1,18 @@ +{ + "schema_version": 1, + "base_commit": "e54523517d0f03e58352e647c403a5af3e525a57", + "files": [ + { + "path": "certificates/selected-result.json", + "usage": "provenance", + "git_blob": "75d77b328ea02ded535e7f23aee5b1e55d0bb1a8", + "sha256": "154c3d30455d778fd3343b6b4851f0fa4665f0f7625b0adb3675e2bafbbf6bf1" + }, + { + "path": "docs/research/agent-task-catalog.json", + "usage": "provenance", + "git_blob": "3404fbdd5e7529a0674eef26114b5071e4586cec", + "sha256": "ead6cdc9d0af6d58e8a49744d8ec8c7c15e13d2ba93c276c434bcf9b51b93a81" + } + ] +} diff --git a/research/p104-two-blocker-exclusion/TASK.json b/research/p104-two-blocker-exclusion/TASK.json new file mode 100644 index 0000000000..08c2ab2e1d --- /dev/null +++ b/research/p104-two-blocker-exclusion/TASK.json @@ -0,0 +1,117 @@ +{ + "actual_scope": "On exact #7131, remove one public bridge ADD and conjugate across its next two incompatible public ADD or SCALE blockers. Exhaust separate commuting visits for disjoint terms and a common-cut spelling of overlapping terms.", + "ai_assistance": "Substantial OpenAI Codex assistance for the planner, proof, pricing, independent controls and package.", + "author": "ToikY", + "base_commit": "e54523517d0f03e58352e647c403a5af3e525a57", + "bottleneck_link": "The relaxed directed signed price upper bounds the complete native rank-histogram delta before full lowering. A nonpositive upper rules out the tested paid-profile gain in the retained complex recurrence.", + "budget_minutes": 20, + "evidence": "4,200 exact conjugations, 73,461 all-term placements and eight overlap placements. No positive released-contact price and no unresolved bounds. The portable replay authenticates exact #7131 inputs and distinct path-keyed dependencies.", + "open_questions": [ + { + "blocked_by": "A positive directed price and exact full-interval operator replay are needed before physical lowering.", + "first_step": "Extend the sparse planner by one crossing, validate the omitted-term control and screen at most 500 eligible placements.", + "question": "Can a third incompatible scalar blocker change the constrained paid profile on the same word?", + "why_it_matters": "After another conjugation, the support and available commuting cuts can change again." + } + ], + "original_card": { + "acceptance_gate": "An exact arbitrary-input identity, source/target frame availability and restoration at the chosen cut, plus the complete channel+correction+idle/hosting bill or an explicit favorable bound. The native channel alone is not a supplier. A scoped local result may be retained without a complete supplier. Expanding it into further construction rounds requires the family-level budget and obligation gate in research-family-status.md; an optimistic passing relaxation alone is not acceptance.", + "allowed_variations": [ + "One exact source head, helper/cut region or quantified proposition and changed hypothesis; check live handoffs first. Different seeds are not different scopes." + ], + "bottleneck_link": "Judge the actual current supplier contract and complete signed target/paid bill; frozen-profile ceilings require an applicability proof.", + "existing_checks": [ + { + "evidence": "research/p104-literal-slot-defect/README.md", + "remaining": "Independently validate the stated scope or change its producer/consumer premise and pay the complete boundary.", + "scope": "PR #4133: literal-slot defect", + "selected_record_sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", + "source_commit": "88666f1dee93fbd85b31fd5d6f91a219e111b5f4", + "status": "author-checked" + }, + { + "evidence": "research/p104-uniform-commutation-gap/README.md", + "remaining": "Independently validate the stated scope or change its producer/consumer premise and pay the complete boundary.", + "scope": "PR #4136: uniform commutation gap", + "selected_record_sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", + "source_commit": "281ce601a8be9db470de630759179c23e1dfaa88", + "status": "author-checked" + }, + { + "evidence": "research/p104-uniform-encoding-gap/README.md", + "remaining": "Independently validate the stated scope or change its producer/consumer premise and pay the complete boundary.", + "scope": "PR #4140: uniform encoding gap", + "selected_record_sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", + "source_commit": "de25c6525aa866962309df5d107b32d55e6e5628", + "status": "author-checked" + }, + { + "evidence": "research/p104-source-chart-shortcut/README.md", + "remaining": "Independently validate the stated scope or change its producer/consumer premise and pay the complete boundary.", + "scope": "PR #4153: source-chart shortcut exhausts its optimistic allowance", + "selected_record_sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", + "source_commit": "9123241fea53df77e51ffe30d9aca1625d4bf3a8", + "status": "author-checked" + }, + { + "evidence": "research/p104-fiber-tag-seam/README.md", + "remaining": "Independently validate the stated scope or change its producer/consumer premise and pay the complete boundary.", + "scope": "PR #4154: fiber-tag seam mismatch", + "selected_record_sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", + "source_commit": "4ffcdaee5d6255a9cea1fe53a5424435068089d0", + "status": "author-checked" + }, + { + "evidence": "docs/research/pr-intake-evidence/pr5599-completion/PROOF-REVIEW.md", + "remaining": "The next experiment must identify uncovered source-specific work. Successor archive intake does not transfer this admission.", + "scope": "Selected PR5599: complete helper-subspace construction and independent caller replay; five framework assumptions remain.", + "selected_record_sha256": "2a0220e866417774606e0f991e41b9c1d26b1f43b97857238cf478dbc7d330b5", + "source_commit": "09dd0965711ca7eeb169057a420abab1c9052137", + "status": "reviewed" + } + ], + "first_experiment": "Start with the selected #5599 emitted word and review pending #5718 distinct input/output bases plus #5717/#5719 coverage before claiming work. Pick one uncovered source word, helper group and cut region. Prove the arbitrary-input relation and legal entry/exit corrections, then compare full target and paid profiles. Reject if completion, owned lifetimes or consumer costs repay the gain. A static pairing rank alone is not a physical split.", + "first_step": { + "command": [ + "python3", + "-B", + "scripts/research_selected_baseline.py" + ], + "expected": "PASS_RESEARCH_BASELINE_BINDINGS_ONLY", + "inspect": "Read revision 8, the selected review and live exact-source handoffs. Then follow this card's bounded first_experiment.", + "scope": "Source-bound orientation only, not a supplier replay or theorem proof." + }, + "id": "p104-side-correction", + "methods": [ + "Construct and independently check one source-bound instance of the stated first experiment.", + "Seek an exact counterexample or target-specific complete-budget obstruction to that same proposed change." + ], + "overlap_terms": [ + "P104", + "helper basis", + "helper split", + "5718", + "dyadic capacity" + ], + "question": "Can joint helper bases and a legal causal split improve the complete P104 productive/paid invoice?", + "scope_change_triggers": [ + "Changing source head, helper/cut domain, operation alphabet or caller boundary without recording the new scope.", + "Treating an archived proposal or local numerical pass as complete supplier admission." + ], + "starting_points": [ + "docs/research/current-priorities.md", + "docs/research/research-family-status.md", + "certificates/selected-result.json", + "docs/research/pr-intake-evidence/pr5599-completion/PROOF-REVIEW.md", + "research/p104-helper-subspace-splits/README.md", + "research/dyadic-helper-channel-capacity/README.md" + ] + }, + "outcome": "negative-result", + "priority_revision": 8, + "schema_version": 1, + "scope_change_reason": "Uses the completed #7131 word and varies scalar chronology instead of inserting a causal helper split on the selected #5599 word. Fixed caller and owned boundaries retain the price comparison.", + "scope_status": "changed", + "stop_rule": "Exhaust the exact bridge/blocker and commuting-cut enumeration, including common-cut overlap spellings. Promote only a strictly positive directed chart-price nominee.", + "task_id": "p104-side-correction" +} diff --git a/research/p104-two-blocker-exclusion/VERIFY.json b/research/p104-two-blocker-exclusion/VERIFY.json new file mode 100644 index 0000000000..2604de4a07 --- /dev/null +++ b/research/p104-two-blocker-exclusion/VERIFY.json @@ -0,0 +1,50 @@ +{ + "commands": [ + { + "argv": [ + "{python}", + "-B", + "{package}/verify.py" + ], + "checks": "Exact source and path-keyed dependency authentication, duplicate-key rejection, rational local and full interval controls, complete signature set agreement and both directed price replays.", + "timeout_seconds": 300 + } + ], + "inputs": [ + "research/p104-two-blocker-exclusion/DEPENDENCIES.json", + "research/p104-two-blocker-exclusion/vendor/inputs/CALLER.json", + "research/p104-two-blocker-exclusion/vendor/inputs/RESULT.json", + "research/p104-two-blocker-exclusion/vendor/inputs/WORD.json.gz", + "research/p104-two-blocker-exclusion/vendor/kappa-chronology-pivot-20261110T1021Z/evidence/corrected_contacts.py", + "research/p104-two-blocker-exclusion/vendor/kappa-contact-release-20261110T0922Z/evidence/constrained.py", + "research/p104-two-blocker-exclusion/vendor/kappa-contact-release-20261110T0922Z/evidence/release.py", + "research/p104-two-blocker-exclusion/vendor/kappa-contact-release-20261110T0922Z/evidence/resolve_pair.py", + "research/p104-two-blocker-exclusion/vendor/kappa-coupled-boundaries-20261110T0908Z/evidence/eliminate.py", + "research/p104-two-blocker-exclusion/vendor/kappa-coupled-boundaries-20261110T0908Z/evidence/geometry.py", + "research/p104-two-blocker-exclusion/vendor/kappa-coupled-boundaries-20261110T0908Z/replay/research/shared-wire-stop-fusion/audit_price.py", + "research/p104-two-blocker-exclusion/vendor/kappa-helper-boundary-20261110T0853Z/evidence/screen.py", + "research/p104-two-blocker-exclusion/vendor/kappa-interior-20261110T0823Z/evidence/closure.py", + "research/p104-two-blocker-exclusion/vendor/kappa-nonbridge-pairs-20261110T0937Z/evidence/nonbridge_screen.py", + "research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/overlap/OVERLAP.json", + "research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/overlap/overlap.py", + "research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/overlap/validate.py", + "research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/ALL.json", + "research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/PLANNER.json", + "research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/all_terms.py", + "research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/free_term.py", + "research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/two_blockers.py", + "research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/validate.py", + "research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/validate_all.py", + "research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/validate_free.py", + "research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/price/ALL.json", + "research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/price/ALL.jsonl", + "research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/price/OVERLAP.json", + "research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/price/price_two.py", + "research/p104-two-blocker-exclusion/vendor/kappa-two-blockers-20261110T1036Z/evidence/two_blockers.py", + "research/p104-two-blocker-exclusion/vendor/kappa-typea-birth2-20261110T2258Z/evidence/scalar/port.py" + ], + "python": "3.12", + "requirements": [], + "schema_version": 1, + "status": "ready" +} diff --git a/research/p104-two-blocker-exclusion/vendor/inputs/CALLER.json b/research/p104-two-blocker-exclusion/vendor/inputs/CALLER.json new file mode 100644 index 0000000000..9451ceaf6e --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/inputs/CALLER.json @@ -0,0 +1 @@ +{"schema":"mixed-root-caller/1","stages":17,"ambient_rank":145,"roles":72,"types":{"A":{"form":"two-chain-HOST2","roles":36,"offset":0,"ports":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,16,18,19,20,21,22,23,24,25,26,28,29,30,31,32,33,36,37,38,39,40,41,43,44,45,46,48,49,50,51,52,53,54,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103],"alpha2":"-1","beta2":"0","diagonal":[[-1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],[-1,0,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1],[-1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],[-1,0,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1]]},"B":{"form":"hosted-HOST","roles":36,"offset":36,"ports":[15,17,27,34,35,42,47,55],"diagonal":[[-1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],[-1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],[-1,0,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0]],"pairs":[[0,1,"-1","1/2","-1/2"],[2,3,"-1","1/2","-1/2"],[4,5,"-1","1/2","-1/2"],[6,7,"-1","1/2","-1/2"],[8,9,"-1","1/2","-1/2"],[10,11,"-1","1/2","-1/2"],[12,13,"-1","1/2","-1/2"],[14,15,"-1","1/2","-1/2"],[16,17,"-1","1/2","-1/2"],[22,23,"-1","1/2","-1/2"],[24,25,"-1","1/2","-1/2"],[26,27,"-1","1/2","-1/2"],[28,29,"-1","1/2","-1/2"],[30,31,"-1","1/2","-1/2"],[32,33,"-1","1/2","-1/2"],[34,35,"-1","1/2","-1/2"],[36,37,"-1","1/2","-1/2"],[38,39,"-1","1/2","-1/2"]]}},"events":[["B","ADD",37,36,"7"],["B","ADD",38,36,"-1/2"],["B","ADD",39,36,"3/2"],["B","SCALE",36,"-2"],["B","ADD",36,37,"1"],["B","ADD",36,38,"2"],["B","ADD",36,39,"-2"],["B","IDLE_ONE",36,[1]],["B","ADD",36,39,"2"],["B","ADD",36,38,"-2"],["B","ADD",36,37,"-1"],["B","SCALE",36,"-1/2"],["B","ADD",39,36,"-3/2"],["B","ADD",38,36,"1/2"],["B","ADD",37,36,"-7"],["B","ADD",39,37,"-1/2"],["B","SCALE",37,"-2"],["B","ADD",37,38,"4"],["B","ADD",37,39,"-8"],["B","IDLE_ONE",37,[1]],["B","ADD",37,39,"8"],["B","ADD",37,38,"-4"],["B","SCALE",37,"-1/2"],["B","ADD",39,37,"1/2"],["B","ADD",37,36,"1"],["B","ADD",38,36,"1/2"],["B","ADD",39,36,"1/2"],["B","ADD",36,38,"-1"],["B","ADD",38,37,"1/2"],["B","SCALE",37,"-1/2"],["B","ADD",37,38,"2"],["B","ADD",37,39,"-1"],["B","SCALE",37,"-1/2"],["B","ADD",37,36,"-1/2"],["B","ADD",36,37,"1"],["B","LAMBDA",36,1],["A","SCALE",1,"-1"],["A","ADD",1,0,"1"],["A","ADD",19,18,"-1"],["A","SCALE",19,"-1"],["A","LAMBDA",1,1],["A","LAMBDA",19,-1],["A","SCALE",19,"-1"],["J",1,[1,0,18,19],[36,37,"-1","1/2"]],["A","LAMBDA",1,-1],["A","LAMBDA",19,1],["A","SCALE",19,"-1"],["A","ADD",0,1,"-1"],["A","ADD",18,19,"-1"],["A","SCALE",19,"-1"],["A","ADD",19,18,"1"],["A","ADD",1,0,"-1"],["A","SCALE",1,"-1"],["B","LAMBDA",36,-1],["B","SCALE",37,"-2"],["B","ADD",37,39,"1"],["B","ADD",37,38,"-2"],["B","SCALE",37,"-2"],["B","ADD",38,37,"-1/2"],["B","ADD",36,38,"1"],["B","ADD",39,36,"-1/2"],["B","ADD",38,36,"-1/2"],["B","ADD",37,36,"-1"],["B","ADD",37,36,"12/5"],["B","ADD",38,36,"1/5"],["B","ADD",39,36,"3/10"],["B","ADD",40,36,"-1/40"],["B","ADD",41,36,"3/40"],["B","SCALE",36,"-1/10"],["B","ADD",36,37,"-1"],["B","ADD",36,38,"-2"],["B","ADD",36,39,"6"],["B","ADD",36,40,"20"],["B","ADD",36,41,"8"],["B","IDLE_ONE",36,[2]],["B","ADD",36,41,"-8"],["B","ADD",36,40,"-20"],["B","ADD",36,39,"-6"],["B","ADD",36,38,"2"],["B","ADD",36,37,"1"],["B","SCALE",36,"-10"],["B","ADD",41,36,"-3/40"],["B","ADD",40,36,"1/40"],["B","ADD",39,36,"-3/10"],["B","ADD",38,36,"-1/5"],["B","ADD",37,36,"-12/5"],["B","ADD",37,36,"7/3"],["B","ADD",38,36,"1/6"],["B","ADD",39,36,"1/6"],["B","ADD",41,36,"1/12"],["B","SCALE",36,"1/3"],["B","ADD",36,37,"-2"],["B","ADD",36,38,"-8"],["B","ADD",36,39,"20"],["B","ADD",36,40,"68"],["B","ADD",36,41,"28"],["B","IDLE_ONE",36,[2]],["B","ADD",36,41,"-28"],["B","ADD",36,40,"-68"],["B","ADD",36,39,"-20"],["B","ADD",36,38,"8"],["B","ADD",36,37,"2"],["B","SCALE",36,"3"],["B","ADD",41,36,"-1/12"],["B","ADD",39,36,"-1/6"],["B","ADD",38,36,"-1/6"],["B","ADD",37,36,"-7/3"],["B","ADD",37,36,"3"],["B","ADD",38,36,"1/2"],["B","ADD",39,36,"3/2"],["B","ADD",40,36,"-1/2"],["B","ADD",41,36,"1/2"],["B","SCALE",36,"-1"],["B","ADD",36,37,"1/2"],["B","ADD",36,39,"-1"],["B","ADD",36,40,"-4"],["B","ADD",38,37,"-1/2"],["B","ADD",39,37,"-2"],["B","ADD",40,37,"1/2"],["B","SCALE",37,"1/2"],["B","ADD",37,38,"1"],["B","ADD",37,39,"-2"],["B","ADD",37,40,"-8"],["B","ADD",37,41,"-4"],["B","SCALE",37,"1/2"],["B","ADD",37,36,"-1/2"],["B","ADD",36,37,"1"],["B","LAMBDA",36,1],["A","SCALE",2,"-1"],["A","ADD",2,0,"1"],["A","ADD",1,0,"-2"],["A","ADD",19,18,"-2"],["A","ADD",20,18,"-1"],["A","SCALE",20,"-1"],["A","LAMBDA",2,1],["A","LAMBDA",20,-1],["A","SCALE",20,"-1"],["J",2,[2,0,18,20],[36,37,"-1","1/2"]],["A","LAMBDA",2,-1],["A","LAMBDA",20,1],["A","SCALE",20,"-1"],["A","ADD",0,2,"-1"],["A","ADD",18,20,"-1"],["A","SCALE",20,"-1"],["A","ADD",20,18,"1"],["A","ADD",19,18,"2"],["A","ADD",1,0,"2"],["A","ADD",2,0,"-1"],["A","SCALE",2,"-1"],["B","LAMBDA",36,-1],["B","SCALE",37,"2"],["B","ADD",37,41,"4"],["B","ADD",37,40,"8"],["B","ADD",37,39,"2"],["B","ADD",37,38,"-1"],["B","SCALE",37,"2"],["B","ADD",40,37,"-1/2"],["B","ADD",39,37,"2"],["B","ADD",38,37,"1/2"],["B","ADD",36,40,"4"],["B","ADD",36,39,"1"],["B","ADD",36,37,"-1/2"],["B","SCALE",36,"-1"],["B","ADD",41,36,"-1/2"],["B","ADD",40,36,"1/2"],["B","ADD",39,36,"-3/2"],["B","ADD",38,36,"-1/2"],["B","ADD",37,36,"-3"],["B","ADD",37,36,"7"],["B","ADD",38,36,"5/2"],["B","ADD",39,36,"19/2"],["B","ADD",40,36,"-5/4"],["B","ADD",41,36,"-9/4"],["B","ADD",42,36,"-1/2"],["B","ADD",43,36,"3/2"],["B","SCALE",36,"-2"],["B","ADD",36,37,"7"],["B","ADD",36,38,"26"],["B","ADD",36,39,"-66"],["B","ADD",36,40,"-212"],["B","ADD",36,41,"-132"],["B","ADD",36,42,"14"],["B","ADD",36,43,"-26"],["B","IDLE_ONE",36,[3]],["B","ADD",36,43,"26"],["B","ADD",36,42,"-14"],["B","ADD",36,41,"132"],["B","ADD",36,40,"212"],["B","ADD",36,39,"66"],["B","ADD",36,38,"-26"],["B","ADD",36,37,"-7"],["B","SCALE",36,"-1/2"],["B","ADD",43,36,"-3/2"],["B","ADD",42,36,"1/2"],["B","ADD",41,36,"9/4"],["B","ADD",40,36,"5/4"],["B","ADD",39,36,"-19/2"],["B","ADD",38,36,"-5/2"],["B","ADD",37,36,"-7"],["B","ADD",37,36,"22/3"],["B","ADD",38,36,"8/3"],["B","ADD",39,36,"61/6"],["B","ADD",40,36,"-4/3"],["B","ADD",41,36,"-29/12"],["B","ADD",42,36,"-1/2"],["B","ADD",43,36,"5/3"],["B","SCALE",36,"2/3"],["B","ADD",36,37,"2"],["B","ADD",36,38,"8"],["B","ADD",36,39,"-20"],["B","ADD",36,40,"-64"],["B","ADD",36,41,"-40"],["B","ADD",36,42,"4"],["B","ADD",36,43,"-8"],["B","IDLE_ONE",36,[3]],["B","ADD",36,43,"8"],["B","ADD",36,42,"-4"],["B","ADD",36,41,"40"],["B","ADD",36,40,"64"],["B","ADD",36,39,"20"],["B","ADD",36,38,"-8"],["B","ADD",36,37,"-2"],["B","SCALE",36,"3/2"],["B","ADD",43,36,"-5/3"],["B","ADD",42,36,"1/2"],["B","ADD",41,36,"29/12"],["B","ADD",40,36,"4/3"],["B","ADD",39,36,"-61/6"],["B","ADD",38,36,"-8/3"],["B","ADD",37,36,"-22/3"],["B","ADD",37,36,"1"],["B","ADD",38,36,"-1/2"],["B","ADD",39,36,"-5/2"],["B","ADD",40,36,"1/4"],["B","ADD",41,36,"3/4"],["B","ADD",42,36,"1/2"],["B","ADD",43,36,"1/2"],["B","ADD",36,38,"-1"],["B","ADD",36,39,"2"],["B","ADD",36,40,"6"],["B","ADD",36,41,"4"],["B","ADD",36,42,"-1"],["B","ADD",38,37,"-1/2"],["B","ADD",39,37,"-2"],["B","ADD",40,37,"1/4"],["B","ADD",41,37,"1/2"],["B","ADD",42,37,"1/2"],["B","SCALE",37,"-1/2"],["B","ADD",37,39,"-1"],["B","ADD",37,40,"-4"],["B","ADD",37,41,"-2"],["B","ADD",37,42,"2"],["B","ADD",37,43,"-1"],["B","SCALE",37,"-1/2"],["B","ADD",37,36,"-1/2"],["B","ADD",36,37,"1"],["B","LAMBDA",36,1],["A","SCALE",3,"-1"],["A","ADD",3,0,"1"],["A","ADD",1,0,"-2"],["A","ADD",2,0,"-2"],["A","ADD",19,18,"-2"],["A","ADD",20,18,"-2"],["A","ADD",21,18,"-1"],["A","SCALE",21,"-1"],["A","LAMBDA",3,1],["A","LAMBDA",21,-1],["A","SCALE",21,"-1"],["J",3,[3,0,18,21],[36,37,"-1","1/2"]],["A","LAMBDA",3,-1],["A","LAMBDA",21,1],["A","SCALE",21,"-1"],["A","ADD",0,3,"-1"],["A","ADD",18,21,"-1"],["A","SCALE",21,"-1"],["A","ADD",21,18,"1"],["A","ADD",20,18,"2"],["A","ADD",19,18,"2"],["A","ADD",2,0,"2"],["A","ADD",1,0,"2"],["A","ADD",3,0,"-1"],["A","SCALE",3,"-1"],["B","LAMBDA",36,-1],["B","SCALE",37,"-2"],["B","ADD",37,43,"1"],["B","ADD",37,42,"-2"],["B","ADD",37,41,"2"],["B","ADD",37,40,"4"],["B","ADD",37,39,"1"],["B","SCALE",37,"-2"],["B","ADD",42,37,"-1/2"],["B","ADD",41,37,"-1/2"],["B","ADD",40,37,"-1/4"],["B","ADD",39,37,"2"],["B","ADD",38,37,"1/2"],["B","ADD",36,42,"1"],["B","ADD",36,41,"-4"],["B","ADD",36,40,"-6"],["B","ADD",36,39,"-2"],["B","ADD",36,38,"1"],["B","ADD",43,36,"-1/2"],["B","ADD",42,36,"-1/2"],["B","ADD",41,36,"-3/4"],["B","ADD",40,36,"-1/4"],["B","ADD",39,36,"5/2"],["B","ADD",38,36,"1/2"],["B","ADD",37,36,"-1"],["B","ADD",37,36,"12/5"],["B","ADD",38,36,"1/5"],["B","ADD",39,36,"3/10"],["B","ADD",40,36,"-1/10"],["B","ADD",41,36,"1/20"],["B","ADD",42,36,"1/5"],["B","ADD",43,36,"3/10"],["B","ADD",44,36,"-1/40"],["B","ADD",45,36,"3/40"],["B","SCALE",36,"-1/10"],["B","ADD",36,37,"-1"],["B","ADD",36,38,"-2"],["B","ADD",36,39,"6"],["B","ADD",36,40,"20"],["B","ADD",36,41,"12"],["B","ADD",36,42,"-2"],["B","ADD",36,43,"6"],["B","ADD",36,44,"20"],["B","ADD",36,45,"8"],["B","IDLE_ONE",36,[4]],["B","ADD",36,45,"-8"],["B","ADD",36,44,"-20"],["B","ADD",36,43,"-6"],["B","ADD",36,42,"2"],["B","ADD",36,41,"-12"],["B","ADD",36,40,"-20"],["B","ADD",36,39,"-6"],["B","ADD",36,38,"2"],["B","ADD",36,37,"1"],["B","SCALE",36,"-10"],["B","ADD",45,36,"-3/40"],["B","ADD",44,36,"1/40"],["B","ADD",43,36,"-3/10"],["B","ADD",42,36,"-1/5"],["B","ADD",41,36,"-1/20"],["B","ADD",40,36,"1/10"],["B","ADD",39,36,"-3/10"],["B","ADD",38,36,"-1/5"],["B","ADD",37,36,"-12/5"],["B","ADD",37,36,"7/3"],["B","ADD",38,36,"1/6"],["B","ADD",39,36,"1/6"],["B","ADD",40,36,"-1/12"],["B","ADD",41,36,"1/12"],["B","ADD",42,36,"1/6"],["B","ADD",43,36,"1/6"],["B","ADD",45,36,"1/12"],["B","SCALE",36,"1/3"],["B","ADD",36,37,"-2"],["B","ADD",36,38,"-8"],["B","ADD",36,39,"20"],["B","ADD",36,40,"64"],["B","ADD",36,41,"40"],["B","ADD",36,42,"-8"],["B","ADD",36,43,"20"],["B","ADD",36,44,"68"],["B","ADD",36,45,"28"],["B","IDLE_ONE",36,[4]],["B","ADD",36,45,"-28"],["B","ADD",36,44,"-68"],["B","ADD",36,43,"-20"],["B","ADD",36,42,"8"],["B","ADD",36,41,"-40"],["B","ADD",36,40,"-64"],["B","ADD",36,39,"-20"],["B","ADD",36,38,"8"],["B","ADD",36,37,"2"],["B","SCALE",36,"3"],["B","ADD",45,36,"-1/12"],["B","ADD",43,36,"-1/6"],["B","ADD",42,36,"-1/6"],["B","ADD",41,36,"-1/12"],["B","ADD",40,36,"1/12"],["B","ADD",39,36,"-1/6"],["B","ADD",38,36,"-1/6"],["B","ADD",37,36,"-7/3"],["B","ADD",37,36,"3"],["B","ADD",38,36,"1/2"],["B","ADD",39,36,"3/2"],["B","ADD",40,36,"-1/4"],["B","ADD",41,36,"-1/4"],["B","ADD",42,36,"1/2"],["B","ADD",43,36,"3/2"],["B","ADD",44,36,"-1/2"],["B","ADD",45,36,"1/2"],["B","SCALE",36,"-1"],["B","ADD",36,37,"1/2"],["B","ADD",36,39,"-1"],["B","ADD",36,40,"-4"],["B","ADD",36,41,"-2"],["B","ADD",36,43,"-1"],["B","ADD",36,44,"-4"],["B","ADD",38,37,"-1/2"],["B","ADD",39,37,"-2"],["B","ADD",40,37,"1/4"],["B","ADD",41,37,"1/2"],["B","ADD",42,37,"-1/2"],["B","ADD",43,37,"-2"],["B","ADD",44,37,"1/2"],["B","SCALE",37,"1/2"],["B","ADD",37,38,"1"],["B","ADD",37,39,"-2"],["B","ADD",37,40,"-6"],["B","ADD",37,41,"-4"],["B","ADD",37,42,"1"],["B","ADD",37,43,"-2"],["B","ADD",37,44,"-8"],["B","ADD",37,45,"-4"],["B","SCALE",37,"1/2"],["B","ADD",37,36,"-1/2"],["B","ADD",36,37,"1"],["B","LAMBDA",36,1],["A","SCALE",4,"-1"],["A","ADD",4,0,"1"],["A","ADD",1,0,"-2"],["A","ADD",2,0,"-2"],["A","ADD",3,0,"-2"],["A","ADD",19,18,"-2"],["A","ADD",20,18,"-2"],["A","ADD",21,18,"-2"],["A","ADD",22,18,"-1"],["A","SCALE",22,"-1"],["A","LAMBDA",4,1],["A","LAMBDA",22,-1],["A","SCALE",22,"-1"],["J",4,[4,0,18,22],[36,37,"-1","1/2"]],["A","LAMBDA",4,-1],["A","LAMBDA",22,1],["A","SCALE",22,"-1"],["A","ADD",0,4,"-1"],["A","ADD",18,22,"-1"],["A","SCALE",22,"-1"],["A","ADD",22,18,"1"],["A","ADD",21,18,"2"],["A","ADD",20,18,"2"],["A","ADD",19,18,"2"],["A","ADD",3,0,"2"],["A","ADD",2,0,"2"],["A","ADD",1,0,"2"],["A","ADD",4,0,"-1"],["A","SCALE",4,"-1"],["B","LAMBDA",36,-1],["B","SCALE",37,"2"],["B","ADD",37,45,"4"],["B","ADD",37,44,"8"],["B","ADD",37,43,"2"],["B","ADD",37,42,"-1"],["B","ADD",37,41,"4"],["B","ADD",37,40,"6"],["B","ADD",37,39,"2"],["B","ADD",37,38,"-1"],["B","SCALE",37,"2"],["B","ADD",44,37,"-1/2"],["B","ADD",43,37,"2"],["B","ADD",42,37,"1/2"],["B","ADD",41,37,"-1/2"],["B","ADD",40,37,"-1/4"],["B","ADD",39,37,"2"],["B","ADD",38,37,"1/2"],["B","ADD",36,44,"4"],["B","ADD",36,43,"1"],["B","ADD",36,41,"2"],["B","ADD",36,40,"4"],["B","ADD",36,39,"1"],["B","ADD",36,37,"-1/2"],["B","SCALE",36,"-1"],["B","ADD",45,36,"-1/2"],["B","ADD",44,36,"1/2"],["B","ADD",43,36,"-3/2"],["B","ADD",42,36,"-1/2"],["B","ADD",41,36,"1/4"],["B","ADD",40,36,"1/4"],["B","ADD",39,36,"-3/2"],["B","ADD",38,36,"-1/2"],["B","ADD",37,36,"-3"],["B","ADD",37,36,"7"],["B","ADD",38,36,"5/2"],["B","ADD",39,36,"19/2"],["B","ADD",40,36,"-5/4"],["B","ADD",41,36,"-9/4"],["B","ADD",42,36,"5/2"],["B","ADD",43,36,"19/2"],["B","ADD",44,36,"-5/4"],["B","ADD",45,36,"-9/4"],["B","ADD",46,36,"-1/2"],["B","ADD",47,36,"3/2"],["B","SCALE",36,"-2"],["B","ADD",36,37,"7"],["B","ADD",36,38,"26"],["B","ADD",36,39,"-66"],["B","ADD",36,40,"-212"],["B","ADD",36,41,"-132"],["B","ADD",36,42,"26"],["B","ADD",36,43,"-66"],["B","ADD",36,44,"-212"],["B","ADD",36,45,"-132"],["B","ADD",36,46,"14"],["B","ADD",36,47,"-26"],["B","IDLE_ONE",36,[5]],["B","ADD",36,47,"26"],["B","ADD",36,46,"-14"],["B","ADD",36,45,"132"],["B","ADD",36,44,"212"],["B","ADD",36,43,"66"],["B","ADD",36,42,"-26"],["B","ADD",36,41,"132"],["B","ADD",36,40,"212"],["B","ADD",36,39,"66"],["B","ADD",36,38,"-26"],["B","ADD",36,37,"-7"],["B","SCALE",36,"-1/2"],["B","ADD",47,36,"-3/2"],["B","ADD",46,36,"1/2"],["B","ADD",45,36,"9/4"],["B","ADD",44,36,"5/4"],["B","ADD",43,36,"-19/2"],["B","ADD",42,36,"-5/2"],["B","ADD",41,36,"9/4"],["B","ADD",40,36,"5/4"],["B","ADD",39,36,"-19/2"],["B","ADD",38,36,"-5/2"],["B","ADD",37,36,"-7"],["B","ADD",37,36,"22/3"],["B","ADD",38,36,"8/3"],["B","ADD",39,36,"61/6"],["B","ADD",40,36,"-4/3"],["B","ADD",41,36,"-29/12"],["B","ADD",42,36,"8/3"],["B","ADD",43,36,"61/6"],["B","ADD",44,36,"-4/3"],["B","ADD",45,36,"-29/12"],["B","ADD",46,36,"-1/2"],["B","ADD",47,36,"5/3"],["B","SCALE",36,"2/3"],["B","ADD",36,37,"2"],["B","ADD",36,38,"8"],["B","ADD",36,39,"-20"],["B","ADD",36,40,"-64"],["B","ADD",36,41,"-40"],["B","ADD",36,42,"8"],["B","ADD",36,43,"-20"],["B","ADD",36,44,"-64"],["B","ADD",36,45,"-40"],["B","ADD",36,46,"4"],["B","ADD",36,47,"-8"],["B","IDLE_ONE",36,[5]],["B","ADD",36,47,"8"],["B","ADD",36,46,"-4"],["B","ADD",36,45,"40"],["B","ADD",36,44,"64"],["B","ADD",36,43,"20"],["B","ADD",36,42,"-8"],["B","ADD",36,41,"40"],["B","ADD",36,40,"64"],["B","ADD",36,39,"20"],["B","ADD",36,38,"-8"],["B","ADD",36,37,"-2"],["B","SCALE",36,"3/2"],["B","ADD",47,36,"-5/3"],["B","ADD",46,36,"1/2"],["B","ADD",45,36,"29/12"],["B","ADD",44,36,"4/3"],["B","ADD",43,36,"-61/6"],["B","ADD",42,36,"-8/3"],["B","ADD",41,36,"29/12"],["B","ADD",40,36,"4/3"],["B","ADD",39,36,"-61/6"],["B","ADD",38,36,"-8/3"],["B","ADD",37,36,"-22/3"],["B","ADD",37,36,"1"],["B","ADD",38,36,"-1/2"],["B","ADD",39,36,"-5/2"],["B","ADD",40,36,"1/4"],["B","ADD",41,36,"3/4"],["B","ADD",42,36,"-1/2"],["B","ADD",43,36,"-5/2"],["B","ADD",44,36,"1/4"],["B","ADD",45,36,"3/4"],["B","ADD",46,36,"1/2"],["B","ADD",47,36,"1/2"],["B","ADD",36,38,"-1"],["B","ADD",36,39,"2"],["B","ADD",36,40,"6"],["B","ADD",36,41,"4"],["B","ADD",36,42,"-1"],["B","ADD",36,43,"2"],["B","ADD",36,44,"6"],["B","ADD",36,45,"4"],["B","ADD",36,46,"-1"],["B","ADD",38,37,"-1/2"],["B","ADD",39,37,"-2"],["B","ADD",40,37,"1/4"],["B","ADD",41,37,"1/2"],["B","ADD",42,37,"-1/2"],["B","ADD",43,37,"-2"],["B","ADD",44,37,"1/4"],["B","ADD",45,37,"1/2"],["B","ADD",46,37,"1/2"],["B","SCALE",37,"-1/2"],["B","ADD",37,39,"-1"],["B","ADD",37,40,"-4"],["B","ADD",37,41,"-2"],["B","ADD",37,43,"-1"],["B","ADD",37,44,"-4"],["B","ADD",37,45,"-2"],["B","ADD",37,46,"2"],["B","ADD",37,47,"-1"],["B","SCALE",37,"-1/2"],["B","ADD",37,36,"-1/2"],["B","ADD",36,37,"1"],["B","LAMBDA",36,1],["A","SCALE",5,"-1"],["A","ADD",5,0,"1"],["A","ADD",1,0,"-2"],["A","ADD",2,0,"-2"],["A","ADD",3,0,"-2"],["A","ADD",4,0,"-2"],["A","ADD",19,18,"-2"],["A","ADD",20,18,"-2"],["A","ADD",21,18,"-2"],["A","ADD",22,18,"-2"],["A","ADD",23,18,"-1"],["A","SCALE",23,"-1"],["A","LAMBDA",5,1],["A","LAMBDA",23,-1],["A","SCALE",23,"-1"],["J",5,[5,0,18,23],[36,37,"-1","1/2"]],["A","LAMBDA",5,-1],["A","LAMBDA",23,1],["A","SCALE",23,"-1"],["A","ADD",0,5,"-1"],["A","ADD",18,23,"-1"],["A","SCALE",23,"-1"],["A","ADD",23,18,"1"],["A","ADD",22,18,"2"],["A","ADD",21,18,"2"],["A","ADD",20,18,"2"],["A","ADD",19,18,"2"],["A","ADD",4,0,"2"],["A","ADD",3,0,"2"],["A","ADD",2,0,"2"],["A","ADD",1,0,"2"],["A","ADD",5,0,"-1"],["A","SCALE",5,"-1"],["B","LAMBDA",36,-1],["B","SCALE",37,"-2"],["B","ADD",37,47,"1"],["B","ADD",37,46,"-2"],["B","ADD",37,45,"2"],["B","ADD",37,44,"4"],["B","ADD",37,43,"1"],["B","ADD",37,41,"2"],["B","ADD",37,40,"4"],["B","ADD",37,39,"1"],["B","SCALE",37,"-2"],["B","ADD",46,37,"-1/2"],["B","ADD",45,37,"-1/2"],["B","ADD",44,37,"-1/4"],["B","ADD",43,37,"2"],["B","ADD",42,37,"1/2"],["B","ADD",41,37,"-1/2"],["B","ADD",40,37,"-1/4"],["B","ADD",39,37,"2"],["B","ADD",38,37,"1/2"],["B","ADD",36,46,"1"],["B","ADD",36,45,"-4"],["B","ADD",36,44,"-6"],["B","ADD",36,43,"-2"],["B","ADD",36,42,"1"],["B","ADD",36,41,"-4"],["B","ADD",36,40,"-6"],["B","ADD",36,39,"-2"],["B","ADD",36,38,"1"],["B","ADD",47,36,"-1/2"],["B","ADD",46,36,"-1/2"],["B","ADD",45,36,"-3/4"],["B","ADD",44,36,"-1/4"],["B","ADD",43,36,"5/2"],["B","ADD",42,36,"1/2"],["B","ADD",41,36,"-3/4"],["B","ADD",40,36,"-1/4"],["B","ADD",39,36,"5/2"],["B","ADD",38,36,"1/2"],["B","ADD",37,36,"-1"],["B","ADD",37,36,"12/5"],["B","ADD",38,36,"1/5"],["B","ADD",39,36,"3/10"],["B","ADD",40,36,"-1/10"],["B","ADD",41,36,"1/20"],["B","ADD",42,36,"1/5"],["B","ADD",43,36,"3/10"],["B","ADD",44,36,"-1/10"],["B","ADD",45,36,"1/20"],["B","ADD",46,36,"1/5"],["B","ADD",47,36,"3/10"],["B","ADD",48,36,"-1/40"],["B","ADD",49,36,"3/40"],["B","SCALE",36,"-1/10"],["B","ADD",36,37,"-1"],["B","ADD",36,38,"-2"],["B","ADD",36,39,"6"],["B","ADD",36,40,"20"],["B","ADD",36,41,"12"],["B","ADD",36,42,"-2"],["B","ADD",36,43,"6"],["B","ADD",36,44,"20"],["B","ADD",36,45,"12"],["B","ADD",36,46,"-2"],["B","ADD",36,47,"6"],["B","ADD",36,48,"20"],["B","ADD",36,49,"8"],["B","IDLE_ONE",36,[6]],["B","ADD",36,49,"-8"],["B","ADD",36,48,"-20"],["B","ADD",36,47,"-6"],["B","ADD",36,46,"2"],["B","ADD",36,45,"-12"],["B","ADD",36,44,"-20"],["B","ADD",36,43,"-6"],["B","ADD",36,42,"2"],["B","ADD",36,41,"-12"],["B","ADD",36,40,"-20"],["B","ADD",36,39,"-6"],["B","ADD",36,38,"2"],["B","ADD",36,37,"1"],["B","SCALE",36,"-10"],["B","ADD",49,36,"-3/40"],["B","ADD",48,36,"1/40"],["B","ADD",47,36,"-3/10"],["B","ADD",46,36,"-1/5"],["B","ADD",45,36,"-1/20"],["B","ADD",44,36,"1/10"],["B","ADD",43,36,"-3/10"],["B","ADD",42,36,"-1/5"],["B","ADD",41,36,"-1/20"],["B","ADD",40,36,"1/10"],["B","ADD",39,36,"-3/10"],["B","ADD",38,36,"-1/5"],["B","ADD",37,36,"-12/5"],["B","ADD",37,36,"7/3"],["B","ADD",38,36,"1/6"],["B","ADD",39,36,"1/6"],["B","ADD",40,36,"-1/12"],["B","ADD",41,36,"1/12"],["B","ADD",42,36,"1/6"],["B","ADD",43,36,"1/6"],["B","ADD",44,36,"-1/12"],["B","ADD",45,36,"1/12"],["B","ADD",46,36,"1/6"],["B","ADD",47,36,"1/6"],["B","ADD",49,36,"1/12"],["B","SCALE",36,"1/3"],["B","ADD",36,37,"-2"],["B","ADD",36,38,"-8"],["B","ADD",36,39,"20"],["B","ADD",36,40,"64"],["B","ADD",36,41,"40"],["B","ADD",36,42,"-8"],["B","ADD",36,43,"20"],["B","ADD",36,44,"64"],["B","ADD",36,45,"40"],["B","ADD",36,46,"-8"],["B","ADD",36,47,"20"],["B","ADD",36,48,"68"],["B","ADD",36,49,"28"],["B","IDLE_ONE",36,[6]],["B","ADD",36,49,"-28"],["B","ADD",36,48,"-68"],["B","ADD",36,47,"-20"],["B","ADD",36,46,"8"],["B","ADD",36,45,"-40"],["B","ADD",36,44,"-64"],["B","ADD",36,43,"-20"],["B","ADD",36,42,"8"],["B","ADD",36,41,"-40"],["B","ADD",36,40,"-64"],["B","ADD",36,39,"-20"],["B","ADD",36,38,"8"],["B","ADD",36,37,"2"],["B","SCALE",36,"3"],["B","ADD",49,36,"-1/12"],["B","ADD",47,36,"-1/6"],["B","ADD",46,36,"-1/6"],["B","ADD",45,36,"-1/12"],["B","ADD",44,36,"1/12"],["B","ADD",43,36,"-1/6"],["B","ADD",42,36,"-1/6"],["B","ADD",41,36,"-1/12"],["B","ADD",40,36,"1/12"],["B","ADD",39,36,"-1/6"],["B","ADD",38,36,"-1/6"],["B","ADD",37,36,"-7/3"],["B","ADD",37,36,"3"],["B","ADD",38,36,"1/2"],["B","ADD",39,36,"3/2"],["B","ADD",40,36,"-1/4"],["B","ADD",41,36,"-1/4"],["B","ADD",42,36,"1/2"],["B","ADD",43,36,"3/2"],["B","ADD",44,36,"-1/4"],["B","ADD",45,36,"-1/4"],["B","ADD",46,36,"1/2"],["B","ADD",47,36,"3/2"],["B","ADD",48,36,"-1/2"],["B","ADD",49,36,"1/2"],["B","SCALE",36,"-1"],["B","ADD",36,37,"1/2"],["B","ADD",36,39,"-1"],["B","ADD",36,40,"-4"],["B","ADD",36,41,"-2"],["B","ADD",36,43,"-1"],["B","ADD",36,44,"-4"],["B","ADD",36,45,"-2"],["B","ADD",36,47,"-1"],["B","ADD",36,48,"-4"],["B","ADD",38,37,"-1/2"],["B","ADD",39,37,"-2"],["B","ADD",40,37,"1/4"],["B","ADD",41,37,"1/2"],["B","ADD",42,37,"-1/2"],["B","ADD",43,37,"-2"],["B","ADD",44,37,"1/4"],["B","ADD",45,37,"1/2"],["B","ADD",46,37,"-1/2"],["B","ADD",47,37,"-2"],["B","ADD",48,37,"1/2"],["B","SCALE",37,"1/2"],["B","ADD",37,38,"1"],["B","ADD",37,39,"-2"],["B","ADD",37,40,"-6"],["B","ADD",37,41,"-4"],["B","ADD",37,42,"1"],["B","ADD",37,43,"-2"],["B","ADD",37,44,"-6"],["B","ADD",37,45,"-4"],["B","ADD",37,46,"1"],["B","ADD",37,47,"-2"],["B","ADD",37,48,"-8"],["B","ADD",37,49,"-4"],["B","SCALE",37,"1/2"],["B","ADD",37,36,"-1/2"],["B","ADD",36,37,"1"],["B","LAMBDA",36,1],["A","SCALE",6,"-1"],["A","ADD",6,0,"1"],["A","ADD",1,0,"-2"],["A","ADD",2,0,"-2"],["A","ADD",3,0,"-2"],["A","ADD",4,0,"-2"],["A","ADD",5,0,"-2"],["A","ADD",19,18,"-2"],["A","ADD",20,18,"-2"],["A","ADD",21,18,"-2"],["A","ADD",22,18,"-2"],["A","ADD",23,18,"-2"],["A","ADD",24,18,"-1"],["A","SCALE",24,"-1"],["A","LAMBDA",6,1],["A","LAMBDA",24,-1],["A","SCALE",24,"-1"],["J",6,[6,0,18,24],[36,37,"-1","1/2"]],["A","LAMBDA",6,-1],["A","LAMBDA",24,1],["A","SCALE",24,"-1"],["A","ADD",0,6,"-1"],["A","ADD",18,24,"-1"],["A","SCALE",24,"-1"],["A","ADD",24,18,"1"],["A","ADD",23,18,"2"],["A","ADD",22,18,"2"],["A","ADD",21,18,"2"],["A","ADD",20,18,"2"],["A","ADD",19,18,"2"],["A","ADD",5,0,"2"],["A","ADD",4,0,"2"],["A","ADD",3,0,"2"],["A","ADD",2,0,"2"],["A","ADD",1,0,"2"],["A","ADD",6,0,"-1"],["A","SCALE",6,"-1"],["B","LAMBDA",36,-1],["B","SCALE",37,"2"],["B","ADD",37,49,"4"],["B","ADD",37,48,"8"],["B","ADD",37,47,"2"],["B","ADD",37,46,"-1"],["B","ADD",37,45,"4"],["B","ADD",37,44,"6"],["B","ADD",37,43,"2"],["B","ADD",37,42,"-1"],["B","ADD",37,41,"4"],["B","ADD",37,40,"6"],["B","ADD",37,39,"2"],["B","ADD",37,38,"-1"],["B","SCALE",37,"2"],["B","ADD",48,37,"-1/2"],["B","ADD",47,37,"2"],["B","ADD",46,37,"1/2"],["B","ADD",45,37,"-1/2"],["B","ADD",44,37,"-1/4"],["B","ADD",43,37,"2"],["B","ADD",42,37,"1/2"],["B","ADD",41,37,"-1/2"],["B","ADD",40,37,"-1/4"],["B","ADD",39,37,"2"],["B","ADD",38,37,"1/2"],["B","ADD",36,48,"4"],["B","ADD",36,47,"1"],["B","ADD",36,45,"2"],["B","ADD",36,44,"4"],["B","ADD",36,43,"1"],["B","ADD",36,41,"2"],["B","ADD",36,40,"4"],["B","ADD",36,39,"1"],["B","ADD",36,37,"-1/2"],["B","SCALE",36,"-1"],["B","ADD",49,36,"-1/2"],["B","ADD",48,36,"1/2"],["B","ADD",47,36,"-3/2"],["B","ADD",46,36,"-1/2"],["B","ADD",45,36,"1/4"],["B","ADD",44,36,"1/4"],["B","ADD",43,36,"-3/2"],["B","ADD",42,36,"-1/2"],["B","ADD",41,36,"1/4"],["B","ADD",40,36,"1/4"],["B","ADD",39,36,"-3/2"],["B","ADD",38,36,"-1/2"],["B","ADD",37,36,"-3"],["B","ADD",37,36,"7"],["B","ADD",38,36,"5/2"],["B","ADD",39,36,"19/2"],["B","ADD",40,36,"-5/4"],["B","ADD",41,36,"-9/4"],["B","ADD",42,36,"5/2"],["B","ADD",43,36,"19/2"],["B","ADD",44,36,"-5/4"],["B","ADD",45,36,"-9/4"],["B","ADD",46,36,"5/2"],["B","ADD",47,36,"19/2"],["B","ADD",48,36,"-5/4"],["B","ADD",49,36,"-9/4"],["B","ADD",50,36,"-1/2"],["B","ADD",51,36,"3/2"],["B","SCALE",36,"-2"],["B","ADD",36,37,"7"],["B","ADD",36,38,"26"],["B","ADD",36,39,"-66"],["B","ADD",36,40,"-212"],["B","ADD",36,41,"-132"],["B","ADD",36,42,"26"],["B","ADD",36,43,"-66"],["B","ADD",36,44,"-212"],["B","ADD",36,45,"-132"],["B","ADD",36,46,"26"],["B","ADD",36,47,"-66"],["B","ADD",36,48,"-212"],["B","ADD",36,49,"-132"],["B","ADD",36,50,"14"],["B","ADD",36,51,"-26"],["B","IDLE_ONE",36,[7]],["B","ADD",36,51,"26"],["B","ADD",36,50,"-14"],["B","ADD",36,49,"132"],["B","ADD",36,48,"212"],["B","ADD",36,47,"66"],["B","ADD",36,46,"-26"],["B","ADD",36,45,"132"],["B","ADD",36,44,"212"],["B","ADD",36,43,"66"],["B","ADD",36,42,"-26"],["B","ADD",36,41,"132"],["B","ADD",36,40,"212"],["B","ADD",36,39,"66"],["B","ADD",36,38,"-26"],["B","ADD",36,37,"-7"],["B","SCALE",36,"-1/2"],["B","ADD",51,36,"-3/2"],["B","ADD",50,36,"1/2"],["B","ADD",49,36,"9/4"],["B","ADD",48,36,"5/4"],["B","ADD",47,36,"-19/2"],["B","ADD",46,36,"-5/2"],["B","ADD",45,36,"9/4"],["B","ADD",44,36,"5/4"],["B","ADD",43,36,"-19/2"],["B","ADD",42,36,"-5/2"],["B","ADD",41,36,"9/4"],["B","ADD",40,36,"5/4"],["B","ADD",39,36,"-19/2"],["B","ADD",38,36,"-5/2"],["B","ADD",37,36,"-7"],["B","ADD",37,36,"22/3"],["B","ADD",38,36,"8/3"],["B","ADD",39,36,"61/6"],["B","ADD",40,36,"-4/3"],["B","ADD",41,36,"-29/12"],["B","ADD",42,36,"8/3"],["B","ADD",43,36,"61/6"],["B","ADD",44,36,"-4/3"],["B","ADD",45,36,"-29/12"],["B","ADD",46,36,"8/3"],["B","ADD",47,36,"61/6"],["B","ADD",48,36,"-4/3"],["B","ADD",49,36,"-29/12"],["B","ADD",50,36,"-1/2"],["B","ADD",51,36,"5/3"],["B","SCALE",36,"2/3"],["B","ADD",36,37,"2"],["B","ADD",36,38,"8"],["B","ADD",36,39,"-20"],["B","ADD",36,40,"-64"],["B","ADD",36,41,"-40"],["B","ADD",36,42,"8"],["B","ADD",36,43,"-20"],["B","ADD",36,44,"-64"],["B","ADD",36,45,"-40"],["B","ADD",36,46,"8"],["B","ADD",36,47,"-20"],["B","ADD",36,48,"-64"],["B","ADD",36,49,"-40"],["B","ADD",36,50,"4"],["B","ADD",36,51,"-8"],["B","IDLE_ONE",36,[7]],["B","ADD",36,51,"8"],["B","ADD",36,50,"-4"],["B","ADD",36,49,"40"],["B","ADD",36,48,"64"],["B","ADD",36,47,"20"],["B","ADD",36,46,"-8"],["B","ADD",36,45,"40"],["B","ADD",36,44,"64"],["B","ADD",36,43,"20"],["B","ADD",36,42,"-8"],["B","ADD",36,41,"40"],["B","ADD",36,40,"64"],["B","ADD",36,39,"20"],["B","ADD",36,38,"-8"],["B","ADD",36,37,"-2"],["B","SCALE",36,"3/2"],["B","ADD",51,36,"-5/3"],["B","ADD",50,36,"1/2"],["B","ADD",49,36,"29/12"],["B","ADD",48,36,"4/3"],["B","ADD",47,36,"-61/6"],["B","ADD",46,36,"-8/3"],["B","ADD",45,36,"29/12"],["B","ADD",44,36,"4/3"],["B","ADD",43,36,"-61/6"],["B","ADD",42,36,"-8/3"],["B","ADD",41,36,"29/12"],["B","ADD",40,36,"4/3"],["B","ADD",39,36,"-61/6"],["B","ADD",38,36,"-8/3"],["B","ADD",37,36,"-22/3"],["B","ADD",37,36,"1"],["B","ADD",38,36,"-1/2"],["B","ADD",39,36,"-5/2"],["B","ADD",40,36,"1/4"],["B","ADD",41,36,"3/4"],["B","ADD",42,36,"-1/2"],["B","ADD",43,36,"-5/2"],["B","ADD",44,36,"1/4"],["B","ADD",45,36,"3/4"],["B","ADD",46,36,"-1/2"],["B","ADD",47,36,"-5/2"],["B","ADD",48,36,"1/4"],["B","ADD",49,36,"3/4"],["B","ADD",50,36,"1/2"],["B","ADD",51,36,"1/2"],["B","ADD",36,38,"-1"],["B","ADD",36,39,"2"],["B","ADD",36,40,"6"],["B","ADD",36,41,"4"],["B","ADD",36,42,"-1"],["B","ADD",36,43,"2"],["B","ADD",36,44,"6"],["B","ADD",36,45,"4"],["B","ADD",36,46,"-1"],["B","ADD",36,47,"2"],["B","ADD",36,48,"6"],["B","ADD",36,49,"4"],["B","ADD",36,50,"-1"],["B","ADD",38,37,"-1/2"],["B","ADD",39,37,"-2"],["B","ADD",40,37,"1/4"],["B","ADD",41,37,"1/2"],["B","ADD",42,37,"-1/2"],["B","ADD",43,37,"-2"],["B","ADD",44,37,"1/4"],["B","ADD",45,37,"1/2"],["B","ADD",46,37,"-1/2"],["B","ADD",47,37,"-2"],["B","ADD",48,37,"1/4"],["B","ADD",49,37,"1/2"],["B","ADD",50,37,"1/2"],["B","SCALE",37,"-1/2"],["B","ADD",37,39,"-1"],["B","ADD",37,40,"-4"],["B","ADD",37,41,"-2"],["B","ADD",37,43,"-1"],["B","ADD",37,44,"-4"],["B","ADD",37,45,"-2"],["B","ADD",37,47,"-1"],["B","ADD",37,48,"-4"],["B","ADD",37,49,"-2"],["B","ADD",37,50,"2"],["B","ADD",37,51,"-1"],["B","SCALE",37,"-1/2"],["B","ADD",37,36,"-1/2"],["B","ADD",36,37,"1"],["B","LAMBDA",36,1],["A","SCALE",7,"-1"],["A","ADD",7,0,"1"],["A","ADD",1,0,"-2"],["A","ADD",2,0,"-2"],["A","ADD",3,0,"-2"],["A","ADD",4,0,"-2"],["A","ADD",5,0,"-2"],["A","ADD",6,0,"-2"],["A","ADD",19,18,"-2"],["A","ADD",20,18,"-2"],["A","ADD",21,18,"-2"],["A","ADD",22,18,"-2"],["A","ADD",23,18,"-2"],["A","ADD",24,18,"-2"],["A","ADD",25,18,"-1"],["A","SCALE",25,"-1"],["A","LAMBDA",7,1],["A","LAMBDA",25,-1],["A","SCALE",25,"-1"],["J",7,[7,0,18,25],[36,37,"-1","1/2"]],["A","LAMBDA",7,-1],["A","LAMBDA",25,1],["A","SCALE",25,"-1"],["A","ADD",0,7,"-1"],["A","ADD",18,25,"-1"],["A","SCALE",25,"-1"],["A","ADD",25,18,"1"],["A","ADD",24,18,"2"],["A","ADD",23,18,"2"],["A","ADD",22,18,"2"],["A","ADD",21,18,"2"],["A","ADD",20,18,"2"],["A","ADD",19,18,"2"],["A","ADD",6,0,"2"],["A","ADD",5,0,"2"],["A","ADD",4,0,"2"],["A","ADD",3,0,"2"],["A","ADD",2,0,"2"],["A","ADD",1,0,"2"],["A","ADD",7,0,"-1"],["A","SCALE",7,"-1"],["B","LAMBDA",36,-1],["B","SCALE",37,"-2"],["B","ADD",37,51,"1"],["B","ADD",37,50,"-2"],["B","ADD",37,49,"2"],["B","ADD",37,48,"4"],["B","ADD",37,47,"1"],["B","ADD",37,45,"2"],["B","ADD",37,44,"4"],["B","ADD",37,43,"1"],["B","ADD",37,41,"2"],["B","ADD",37,40,"4"],["B","ADD",37,39,"1"],["B","SCALE",37,"-2"],["B","ADD",50,37,"-1/2"],["B","ADD",49,37,"-1/2"],["B","ADD",48,37,"-1/4"],["B","ADD",47,37,"2"],["B","ADD",46,37,"1/2"],["B","ADD",45,37,"-1/2"],["B","ADD",44,37,"-1/4"],["B","ADD",43,37,"2"],["B","ADD",42,37,"1/2"],["B","ADD",41,37,"-1/2"],["B","ADD",40,37,"-1/4"],["B","ADD",39,37,"2"],["B","ADD",38,37,"1/2"],["B","ADD",36,50,"1"],["B","ADD",36,49,"-4"],["B","ADD",36,48,"-6"],["B","ADD",36,47,"-2"],["B","ADD",36,46,"1"],["B","ADD",36,45,"-4"],["B","ADD",36,44,"-6"],["B","ADD",36,43,"-2"],["B","ADD",36,42,"1"],["B","ADD",36,41,"-4"],["B","ADD",36,40,"-6"],["B","ADD",36,39,"-2"],["B","ADD",36,38,"1"],["B","ADD",51,36,"-1/2"],["B","ADD",50,36,"-1/2"],["B","ADD",49,36,"-3/4"],["B","ADD",48,36,"-1/4"],["B","ADD",47,36,"5/2"],["B","ADD",46,36,"1/2"],["B","ADD",45,36,"-3/4"],["B","ADD",44,36,"-1/4"],["B","ADD",43,36,"5/2"],["B","ADD",42,36,"1/2"],["B","ADD",41,36,"-3/4"],["B","ADD",40,36,"-1/4"],["B","ADD",39,36,"5/2"],["B","ADD",38,36,"1/2"],["B","ADD",37,36,"-1"],["B","ADD",37,36,"41/15"],["B","ADD",38,36,"11/30"],["B","ADD",39,36,"29/30"],["B","ADD",40,36,"-11/60"],["B","ADD",41,36,"-7/60"],["B","ADD",42,36,"11/30"],["B","ADD",43,36,"29/30"],["B","ADD",44,36,"-11/60"],["B","ADD",45,36,"-7/60"],["B","ADD",46,36,"11/30"],["B","ADD",47,36,"29/30"],["B","ADD",48,36,"-11/60"],["B","ADD",49,36,"-7/60"],["B","ADD",50,36,"7/30"],["B","ADD",51,36,"11/30"],["B","SCALE",36,"-2/15"],["B","ADD",36,37,"55"],["B","ADD",36,38,"218"],["B","ADD",36,39,"-546"],["B","ADD",36,40,"-1748"],["B","ADD",36,41,"-1092"],["B","ADD",36,42,"218"],["B","ADD",36,43,"-546"],["B","ADD",36,44,"-1748"],["B","ADD",36,45,"-1092"],["B","ADD",36,46,"218"],["B","ADD",36,47,"-546"],["B","ADD",36,48,"-1748"],["B","ADD",36,49,"-1092"],["B","ADD",36,50,"-982"],["B","ADD",36,51,"218"],["B","IDLE_ONE",36,[8]],["B","ADD",36,51,"-218"],["B","ADD",36,50,"982"],["B","ADD",36,49,"1092"],["B","ADD",36,48,"1748"],["B","ADD",36,47,"546"],["B","ADD",36,46,"-218"],["B","ADD",36,45,"1092"],["B","ADD",36,44,"1748"],["B","ADD",36,43,"546"],["B","ADD",36,42,"-218"],["B","ADD",36,41,"1092"],["B","ADD",36,40,"1748"],["B","ADD",36,39,"546"],["B","ADD",36,38,"-218"],["B","ADD",36,37,"-55"],["B","SCALE",36,"-15/2"],["B","ADD",51,36,"-11/30"],["B","ADD",50,36,"-7/30"],["B","ADD",49,36,"7/60"],["B","ADD",48,36,"11/60"],["B","ADD",47,36,"-29/30"],["B","ADD",46,36,"-11/30"],["B","ADD",45,36,"7/60"],["B","ADD",44,36,"11/60"],["B","ADD",43,36,"-29/30"],["B","ADD",42,36,"-11/30"],["B","ADD",41,36,"7/60"],["B","ADD",40,36,"11/60"],["B","ADD",39,36,"-29/30"],["B","ADD",38,36,"-11/30"],["B","ADD",37,36,"-41/15"],["B","ADD",36,38,"409/150"],["B","ADD",37,38,"-559/75"],["B","ADD",39,38,"-791/300"],["B","ADD",40,38,"1/2"],["B","ADD",41,38,"191/600"],["B","ADD",42,38,"-1"],["B","ADD",43,38,"-791/300"],["B","ADD",44,38,"1/2"],["B","ADD",45,38,"191/600"],["B","ADD",46,38,"-1"],["B","ADD",47,38,"-791/300"],["B","ADD",48,38,"1/2"],["B","ADD",49,38,"191/600"],["B","ADD",50,38,"-191/300"],["B","ADD",51,38,"-1"],["B","SCALE",38,"1/75"],["B","ADD",38,37,"-2"],["B","ADD",38,39,"20"],["B","ADD",38,40,"64"],["B","ADD",38,41,"40"],["B","ADD",38,42,"-8"],["B","ADD",38,43,"20"],["B","ADD",38,44,"64"],["B","ADD",38,45,"40"],["B","ADD",38,46,"-8"],["B","ADD",38,47,"20"],["B","ADD",38,48,"64"],["B","ADD",38,49,"40"],["B","ADD",38,50,"36"],["B","ADD",38,51,"-8"],["B","IDLE_ONE",38,[8]],["B","ADD",38,51,"8"],["B","ADD",38,50,"-36"],["B","ADD",38,49,"-40"],["B","ADD",38,48,"-64"],["B","ADD",38,47,"-20"],["B","ADD",38,46,"8"],["B","ADD",38,45,"-40"],["B","ADD",38,44,"-64"],["B","ADD",38,43,"-20"],["B","ADD",38,42,"8"],["B","ADD",38,41,"-40"],["B","ADD",38,40,"-64"],["B","ADD",38,39,"-20"],["B","ADD",38,37,"2"],["B","SCALE",38,"75"],["B","ADD",51,38,"1"],["B","ADD",50,38,"191/300"],["B","ADD",49,38,"-191/600"],["B","ADD",48,38,"-1/2"],["B","ADD",47,38,"791/300"],["B","ADD",46,38,"1"],["B","ADD",45,38,"-191/600"],["B","ADD",44,38,"-1/2"],["B","ADD",43,38,"791/300"],["B","ADD",42,38,"1"],["B","ADD",41,38,"-191/600"],["B","ADD",40,38,"-1/2"],["B","ADD",39,38,"791/300"],["B","ADD",37,38,"559/75"],["B","ADD",36,38,"-409/150"],["B","IDLE_ODD",68,[8],-1],["B","IDLE_ODD",69,[8],-1],["B","ADD",37,36,"11/5"],["B","ADD",38,36,"1/10"],["B","ADD",39,36,"-1/10"],["B","ADD",40,36,"-1/20"],["B","ADD",41,36,"3/20"],["B","ADD",42,36,"1/10"],["B","ADD",43,36,"-1/10"],["B","ADD",44,36,"-1/20"],["B","ADD",45,36,"3/20"],["B","ADD",46,36,"1/10"],["B","ADD",47,36,"-1/10"],["B","ADD",48,36,"-1/20"],["B","ADD",49,36,"3/20"],["B","ADD",50,36,"1/10"],["B","ADD",51,36,"-1/10"],["B","SCALE",36,"1/5"],["B","ADD",36,37,"-1/2"],["B","ADD",36,39,"1"],["B","ADD",36,40,"4"],["B","ADD",36,41,"2"],["B","ADD",36,43,"1"],["B","ADD",36,44,"4"],["B","ADD",36,45,"2"],["B","ADD",36,47,"1"],["B","ADD",36,48,"4"],["B","ADD",36,49,"2"],["B","ADD",36,51,"1"],["B","ADD",38,37,"-1/2"],["B","ADD",39,37,"-2"],["B","ADD",40,37,"1/4"],["B","ADD",41,37,"1/2"],["B","ADD",42,37,"-1/2"],["B","ADD",43,37,"-2"],["B","ADD",44,37,"1/4"],["B","ADD",45,37,"1/2"],["B","ADD",46,37,"-1/2"],["B","ADD",47,37,"-2"],["B","ADD",48,37,"1/4"],["B","ADD",49,37,"1/2"],["B","ADD",50,37,"-1/2"],["B","ADD",51,37,"-2"],["B","SCALE",37,"-5/2"],["B","ADD",37,38,"-1"],["B","ADD",37,39,"-2"],["B","ADD",37,40,"-10"],["B","ADD",37,41,"-4"],["B","ADD",37,42,"-1"],["B","ADD",37,43,"-2"],["B","ADD",37,44,"-10"],["B","ADD",37,45,"-4"],["B","ADD",37,46,"-1"],["B","ADD",37,47,"-2"],["B","ADD",37,48,"-10"],["B","ADD",37,49,"-4"],["B","ADD",37,50,"-1"],["B","ADD",37,51,"-2"],["B","SCALE",37,"-1/2"],["B","ADD",37,36,"-1"],["B","ADD",37,36,"-1/2"],["B","ADD",36,37,"1"],["B","LAMBDA",36,1],["A","SCALE",8,"-1"],["A","ADD",8,0,"1"],["A","ADD",1,0,"-2"],["A","ADD",2,0,"-2"],["A","ADD",3,0,"-2"],["A","ADD",4,0,"-2"],["A","ADD",5,0,"-2"],["A","ADD",6,0,"-2"],["A","ADD",7,0,"-2"],["A","ADD",19,18,"-2"],["A","ADD",20,18,"-2"],["A","ADD",21,18,"-2"],["A","ADD",22,18,"-2"],["A","ADD",23,18,"-2"],["A","ADD",24,18,"-2"],["A","ADD",25,18,"-2"],["A","ADD",26,18,"-1"],["A","SCALE",26,"-1"],["A","LAMBDA",8,1],["A","LAMBDA",26,-1],["A","SCALE",26,"-1"],["J",8,[8,0,18,26],[36,37,"-1","1/2"]],["A","LAMBDA",8,-1],["A","LAMBDA",26,1],["A","SCALE",26,"-1"],["A","ADD",0,8,"-1"],["A","ADD",18,26,"-1"],["A","SCALE",26,"-1"],["A","ADD",26,18,"1"],["A","ADD",25,18,"2"],["A","ADD",24,18,"2"],["A","ADD",23,18,"2"],["A","ADD",22,18,"2"],["A","ADD",21,18,"2"],["A","ADD",20,18,"2"],["A","ADD",19,18,"2"],["A","ADD",7,0,"2"],["A","ADD",6,0,"2"],["A","ADD",5,0,"2"],["A","ADD",4,0,"2"],["A","ADD",3,0,"2"],["A","ADD",2,0,"2"],["A","ADD",1,0,"2"],["A","ADD",8,0,"-1"],["A","SCALE",8,"-1"],["A","ADD",1,0,"-2"],["A","IDLE_ONE",1,[2,3,4,5,6,7,8]],["A","ADD",1,0,"2"],["A","ADD",2,0,"-2"],["A","IDLE_ONE",2,[3,4,5,6,7,8]],["A","ADD",2,0,"2"],["A","ADD",3,0,"-2"],["A","IDLE_ONE",3,[4,5,6,7,8]],["A","ADD",3,0,"2"],["A","ADD",4,0,"-2"],["A","IDLE_ONE",4,[5,6,7,8]],["A","ADD",4,0,"2"],["A","ADD",5,0,"-2"],["A","IDLE_ONE",5,[6,7,8]],["A","ADD",5,0,"2"],["A","ADD",6,0,"-2"],["A","IDLE_ONE",6,[7,8]],["A","ADD",6,0,"2"],["A","ADD",7,0,"-2"],["A","IDLE_ONE",7,[8]],["A","ADD",7,0,"2"],["A","ADD",19,18,"-2"],["A","IDLE_ONE",19,[2,3,4,5,6,7,8]],["A","ADD",19,18,"2"],["A","ADD",20,18,"-2"],["A","IDLE_ONE",20,[3,4,5,6,7,8]],["A","ADD",20,18,"2"],["A","ADD",21,18,"-2"],["A","IDLE_ONE",21,[4,5,6,7,8]],["A","ADD",21,18,"2"],["A","ADD",22,18,"-2"],["A","IDLE_ONE",22,[5,6,7,8]],["A","ADD",22,18,"2"],["A","ADD",23,18,"-2"],["A","IDLE_ONE",23,[6,7,8]],["A","ADD",23,18,"2"],["A","ADD",24,18,"-2"],["A","IDLE_ONE",24,[7,8]],["A","ADD",24,18,"2"],["A","ADD",25,18,"-2"],["A","IDLE_ONE",25,[8]],["A","ADD",25,18,"2"],["A","SWAP",0,18],["A","ADD",19,0,"-2"],["A","ADD",20,0,"-2"],["A","ADD",21,0,"-2"],["A","ADD",22,0,"-2"],["A","ADD",23,0,"-2"],["A","ADD",24,0,"-2"],["A","ADD",25,0,"-2"],["A","ADD",26,0,"-2"],["A","SWAP",1,19],["A","ADD",1,20,"-1"],["A","ADD",1,21,"1"],["A","ADD",1,22,"-1"],["A","ADD",1,23,"1"],["A","ADD",1,24,"-1"],["A","ADD",1,25,"1"],["A","ADD",1,26,"-1"],["A","ADD",1,27,"-1"],["A","ADD",1,28,"1"],["A","ADD",1,29,"-1"],["A","ADD",1,30,"1"],["A","ADD",1,31,"-1"],["A","ADD",1,32,"1"],["A","ADD",1,33,"-1"],["A","ADD",1,34,"1"],["A","ADD",1,35,"-1"],["A","LAMBDA",1,1],["A","QUERY",0,1,-1],["A","LAMBDA",1,-1],["A","ADD",0,1,"-1"],["A","ADD",1,35,"1"],["A","ADD",1,34,"-1"],["A","ADD",1,33,"1"],["A","ADD",1,32,"-1"],["A","ADD",1,31,"1"],["A","ADD",1,30,"-1"],["A","ADD",1,29,"1"],["A","ADD",1,28,"-1"],["A","ADD",1,27,"1"],["A","ADD",1,26,"1"],["A","ADD",1,25,"-1"],["A","ADD",1,24,"1"],["A","ADD",1,23,"-1"],["A","ADD",1,22,"1"],["A","ADD",1,21,"-1"],["A","ADD",1,20,"1"],["A","SWAP",1,19],["A","ADD",26,0,"2"],["A","ADD",25,0,"2"],["A","ADD",24,0,"2"],["A","ADD",23,0,"2"],["A","ADD",22,0,"2"],["A","ADD",21,0,"2"],["A","ADD",20,0,"2"],["A","ADD",19,0,"2"],["A","SWAP",0,18],["A","SWAP",0,19],["A","ADD",20,0,"-1"],["A","ADD",21,0,"-1"],["A","ADD",22,0,"-1"],["A","ADD",23,0,"-1"],["A","ADD",24,0,"-1"],["A","ADD",25,0,"-1"],["A","ADD",26,0,"-1"],["A","ADD",27,0,"-1"],["A","ADD",28,0,"-1"],["A","ADD",29,0,"-1"],["A","ADD",30,0,"-1"],["A","ADD",31,0,"-1"],["A","ADD",32,0,"-1"],["A","ADD",33,0,"-1"],["A","ADD",34,0,"-1"],["A","ADD",35,0,"-1"],["A","ADD",1,2,"-1"],["A","ADD",1,3,"1"],["A","ADD",1,4,"-1"],["A","ADD",1,5,"1"],["A","ADD",1,6,"-1"],["A","ADD",1,7,"1"],["A","ADD",1,8,"-1"],["A","ADD",1,9,"-1"],["A","ADD",1,10,"1"],["A","ADD",1,11,"-1"],["A","ADD",1,12,"1"],["A","ADD",1,13,"-1"],["A","ADD",1,14,"1"],["A","ADD",1,15,"-1"],["A","ADD",1,16,"1"],["A","ADD",1,17,"-1"],["A","ADD",1,18,"1"],["A","LAMBDA",1,1],["A","QUERY",0,1,-1],["A","LAMBDA",1,-1],["A","ADD",0,1,"-1"],["A","ADD",1,18,"-1"],["A","ADD",1,17,"1"],["A","ADD",1,16,"-1"],["A","ADD",1,15,"1"],["A","ADD",1,14,"-1"],["A","ADD",1,13,"1"],["A","ADD",1,12,"-1"],["A","ADD",1,11,"1"],["A","ADD",1,10,"-1"],["A","ADD",1,9,"1"],["A","ADD",1,8,"1"],["A","ADD",1,7,"-1"],["A","ADD",1,6,"1"],["A","ADD",1,5,"-1"],["A","ADD",1,4,"1"],["A","ADD",1,3,"-1"],["A","ADD",1,2,"1"],["A","ADD",35,0,"1"],["A","ADD",34,0,"1"],["A","ADD",33,0,"1"],["A","ADD",32,0,"1"],["A","ADD",31,0,"1"],["A","ADD",30,0,"1"],["A","ADD",29,0,"1"],["A","ADD",28,0,"1"],["A","ADD",27,0,"1"],["A","ADD",26,0,"1"],["A","ADD",25,0,"1"],["A","ADD",24,0,"1"],["A","ADD",23,0,"1"],["A","ADD",22,0,"1"],["A","ADD",21,0,"1"],["A","ADD",20,0,"1"],["A","SWAP",0,19],["A","ADD",1,0,"-2"],["A","ADD",2,0,"-2"],["A","ADD",3,0,"-2"],["A","ADD",4,0,"-2"],["A","ADD",5,0,"-2"],["A","ADD",6,0,"-2"],["A","ADD",7,0,"-2"],["A","ADD",8,0,"-2"],["A","ADD",19,0,"1"],["A","ADD",20,0,"1"],["A","ADD",21,0,"1"],["A","ADD",22,0,"1"],["A","ADD",23,0,"1"],["A","ADD",24,0,"1"],["A","ADD",25,0,"1"],["A","ADD",26,0,"1"],["A","ADD",27,0,"1"],["A","ADD",28,0,"1"],["A","ADD",29,0,"1"],["A","ADD",30,0,"1"],["A","ADD",31,0,"1"],["A","ADD",32,0,"1"],["A","ADD",33,0,"1"],["A","ADD",34,0,"1"],["A","ADD",35,0,"1"],["A","ADD",1,2,"-1"],["A","ADD",1,3,"1"],["A","ADD",1,4,"-1"],["A","ADD",1,5,"1"],["A","ADD",1,6,"-1"],["A","ADD",1,7,"1"],["A","ADD",1,8,"-1"],["A","ADD",1,9,"-1"],["A","ADD",1,10,"1"],["A","ADD",1,11,"-1"],["A","ADD",1,12,"1"],["A","ADD",1,13,"-1"],["A","ADD",1,14,"1"],["A","ADD",1,15,"-1"],["A","ADD",1,16,"1"],["A","ADD",1,17,"-1"],["A","LAMBDA",1,1],["A","QUERY",0,1,-1],["A","LAMBDA",1,-1],["A","ADD",0,1,"-1"],["A","ADD",1,17,"1"],["A","ADD",1,16,"-1"],["A","ADD",1,15,"1"],["A","ADD",1,14,"-1"],["A","ADD",1,13,"1"],["A","ADD",1,12,"-1"],["A","ADD",1,11,"1"],["A","ADD",1,10,"-1"],["A","ADD",1,9,"1"],["A","ADD",1,8,"1"],["A","ADD",1,7,"-1"],["A","ADD",1,6,"1"],["A","ADD",1,5,"-1"],["A","ADD",1,4,"1"],["A","ADD",1,3,"-1"],["A","ADD",1,2,"1"],["A","ADD",35,0,"-1"],["A","ADD",34,0,"-1"],["A","ADD",33,0,"-1"],["A","ADD",32,0,"-1"],["A","ADD",31,0,"-1"],["A","ADD",30,0,"-1"],["A","ADD",29,0,"-1"],["A","ADD",28,0,"-1"],["A","ADD",27,0,"-1"],["A","ADD",26,0,"-1"],["A","ADD",25,0,"-1"],["A","ADD",24,0,"-1"],["A","ADD",23,0,"-1"],["A","ADD",22,0,"-1"],["A","ADD",21,0,"-1"],["A","ADD",20,0,"-1"],["A","ADD",19,0,"-1"],["A","ADD",8,0,"2"],["A","ADD",7,0,"2"],["A","ADD",6,0,"2"],["A","ADD",5,0,"2"],["A","ADD",4,0,"2"],["A","ADD",3,0,"2"],["A","ADD",2,0,"2"],["A","ADD",1,0,"2"],["A","SWAP",0,1],["A","ADD",2,0,"-1"],["A","ADD",3,0,"-1"],["A","ADD",4,0,"-1"],["A","ADD",5,0,"-1"],["A","ADD",6,0,"-1"],["A","ADD",7,0,"-1"],["A","ADD",8,0,"-1"],["A","ADD",9,0,"-1"],["A","ADD",10,0,"-1"],["A","ADD",11,0,"-1"],["A","ADD",12,0,"-1"],["A","ADD",13,0,"-1"],["A","ADD",14,0,"-1"],["A","ADD",15,0,"-1"],["A","ADD",16,0,"-1"],["A","ADD",17,0,"-1"],["A","LAMBDA",1,1],["A","QUERY",0,1,-1],["A","LAMBDA",1,-1],["A","ADD",0,1,"-1"],["A","ADD",17,0,"1"],["A","ADD",16,0,"1"],["A","ADD",15,0,"1"],["A","ADD",14,0,"1"],["A","ADD",13,0,"1"],["A","ADD",12,0,"1"],["A","ADD",11,0,"1"],["A","ADD",10,0,"1"],["A","ADD",9,0,"1"],["A","ADD",8,0,"1"],["A","ADD",7,0,"1"],["A","ADD",6,0,"1"],["A","ADD",5,0,"1"],["A","ADD",4,0,"1"],["A","ADD",3,0,"1"],["A","ADD",2,0,"1"],["A","SWAP",0,1],["A","ADD",10,0,"2"],["A","IDLE_ONE",10,[9]],["A","ADD",10,0,"-2"],["A","ADD",11,0,"2"],["A","IDLE_ONE",11,[9,10]],["A","ADD",11,0,"-2"],["A","ADD",12,0,"2"],["A","IDLE_ONE",12,[9,10,11]],["A","ADD",12,0,"-2"],["A","ADD",13,0,"2"],["A","IDLE_ONE",13,[9,10,11,12]],["A","ADD",13,0,"-2"],["A","ADD",14,0,"2"],["A","IDLE_ONE",14,[9,10,11,12,13]],["A","ADD",14,0,"-2"],["A","ADD",15,0,"2"],["A","IDLE_ONE",15,[9,10,11,12,13,14]],["A","ADD",15,0,"-2"],["A","ADD",16,0,"2"],["A","IDLE_ONE",16,[9,10,11,12,13,14,15]],["A","ADD",16,0,"-2"],["A","ADD",17,0,"2"],["A","IDLE_ONE",17,[9,10,11,12,13,14,15,16]],["A","ADD",17,0,"-2"],["A","ADD",28,18,"2"],["A","IDLE_ONE",28,[9]],["A","ADD",28,18,"-2"],["A","ADD",29,18,"2"],["A","IDLE_ONE",29,[9,10]],["A","ADD",29,18,"-2"],["A","ADD",30,18,"2"],["A","IDLE_ONE",30,[9,10,11]],["A","ADD",30,18,"-2"],["A","ADD",31,18,"2"],["A","IDLE_ONE",31,[9,10,11,12]],["A","ADD",31,18,"-2"],["A","ADD",32,18,"2"],["A","IDLE_ONE",32,[9,10,11,12,13]],["A","ADD",32,18,"-2"],["A","ADD",33,18,"2"],["A","IDLE_ONE",33,[9,10,11,12,13,14]],["A","ADD",33,18,"-2"],["A","ADD",34,18,"2"],["A","IDLE_ONE",34,[9,10,11,12,13,14,15]],["A","ADD",34,18,"-2"],["A","ADD",35,18,"2"],["A","IDLE_ONE",35,[9,10,11,12,13,14,15,16]],["A","ADD",35,18,"-2"],["B","LAMBDA",36,-1],["B","ADD",37,36,"1"],["B","SCALE",37,"-2"],["B","ADD",37,51,"2"],["B","ADD",37,50,"1"],["B","ADD",37,49,"4"],["B","ADD",37,48,"10"],["B","ADD",37,47,"2"],["B","ADD",37,46,"1"],["B","ADD",37,45,"4"],["B","ADD",37,44,"10"],["B","ADD",37,43,"2"],["B","ADD",37,42,"1"],["B","ADD",37,41,"4"],["B","ADD",37,40,"10"],["B","ADD",37,39,"2"],["B","ADD",37,38,"1"],["B","SCALE",37,"-2/5"],["B","ADD",51,37,"2"],["B","ADD",50,37,"1/2"],["B","ADD",49,37,"-1/2"],["B","ADD",48,37,"-1/4"],["B","ADD",47,37,"2"],["B","ADD",46,37,"1/2"],["B","ADD",45,37,"-1/2"],["B","ADD",44,37,"-1/4"],["B","ADD",43,37,"2"],["B","ADD",42,37,"1/2"],["B","ADD",41,37,"-1/2"],["B","ADD",40,37,"-1/4"],["B","ADD",39,37,"2"],["B","ADD",38,37,"1/2"],["B","ADD",36,51,"-1"],["B","ADD",36,49,"-2"],["B","ADD",36,48,"-4"],["B","ADD",36,47,"-1"],["B","ADD",36,45,"-2"],["B","ADD",36,44,"-4"],["B","ADD",36,43,"-1"],["B","ADD",36,41,"-2"],["B","ADD",36,40,"-4"],["B","ADD",36,39,"-1"],["B","ADD",36,37,"1/2"],["B","SCALE",36,"5"],["B","ADD",51,36,"1/10"],["B","ADD",50,36,"-1/10"],["B","ADD",49,36,"-3/20"],["B","ADD",48,36,"1/20"],["B","ADD",47,36,"1/10"],["B","ADD",46,36,"-1/10"],["B","ADD",45,36,"-3/20"],["B","ADD",44,36,"1/20"],["B","ADD",43,36,"1/10"],["B","ADD",42,36,"-1/10"],["B","ADD",41,36,"-3/20"],["B","ADD",40,36,"1/20"],["B","ADD",39,36,"1/10"],["B","ADD",38,36,"-1/10"],["B","ADD",37,36,"-11/5"],["B","ADD",37,36,"41/15"],["B","ADD",38,36,"7/30"],["B","ADD",39,36,"11/30"],["B","SCALE",36,"-2/15"],["B","ADD",36,37,"-3"],["B","ADD",36,38,"62"],["B","ADD",36,39,"-14"],["B","IDLE_ONE",36,[2,3,4,5,6,7,8]],["B","ADD",36,39,"14"],["B","ADD",36,38,"-62"],["B","ADD",36,37,"3"],["B","SCALE",36,"-15/2"],["B","ADD",39,36,"-11/30"],["B","ADD",38,36,"-7/30"],["B","ADD",37,36,"-41/15"],["B","ADD",36,38,"13/3"],["B","ADD",37,38,"-71/6"],["B","ADD",39,38,"-19/12"],["B","SCALE",38,"1/3"],["B","ADD",38,37,"2"],["B","ADD",38,39,"8"],["B","IDLE_ONE",38,[2,3,4,5,6,7,8]],["B","ADD",38,39,"-8"],["B","ADD",38,37,"-2"],["B","SCALE",38,"3"],["B","ADD",39,38,"19/12"],["B","ADD",37,38,"71/6"],["B","ADD",36,38,"-13/3"],["B","ADD",37,36,"41/15"],["B","ADD",38,36,"11/30"],["B","ADD",39,36,"29/30"],["B","ADD",40,36,"-1/15"],["B","ADD",41,36,"-1/6"],["B","SCALE",36,"2/15"],["B","ADD",36,37,"6"],["B","ADD",36,38,"22"],["B","ADD",36,39,"-56"],["B","ADD",36,40,"-68"],["B","ADD",36,41,"-156"],["B","IDLE_ONE",36,[3,4,5,6,7,8]],["B","ADD",36,41,"156"],["B","ADD",36,40,"68"],["B","ADD",36,39,"56"],["B","ADD",36,38,"-22"],["B","ADD",36,37,"-6"],["B","SCALE",36,"15/2"],["B","ADD",41,36,"1/6"],["B","ADD",40,36,"1/15"],["B","ADD",39,36,"-29/30"],["B","ADD",38,36,"-11/30"],["B","ADD",37,36,"-41/15"],["B","ADD",36,37,"1"],["B","SWAP",36,37],["B","ADD",36,37,"-1"],["B","SWAP",36,37],["B","ADD",36,37,"-1"],["B","SWAP",36,37],["B","ADD",36,37,"-1"],["B","SWAP",36,37],["B","ADD",36,37,"-2"],["B","SWAP",36,37],["B","ADD",36,37,"-1"],["B","SWAP",36,37],["B","ADD",36,37,"-3"],["B","SWAP",36,37],["B","ADD",36,37,"-2"],["B","SWAP",36,37],["B","ADD",36,37,"-2"],["B","SWAP",36,37],["B","SWAP",36,38],["B","ADD",36,38,"-30"],["B","SWAP",36,38],["B","ADD",36,38,"-2"],["B","SWAP",36,38],["B","SWAP",36,39],["B","ADD",36,39,"-161"],["B","SWAP",36,39],["B","ADD",36,40,"1"],["B","SWAP",36,40],["B","ADD",36,40,"-1"],["B","SWAP",36,40],["B","ADD",36,40,"-10"],["B","SWAP",36,40],["B","SWAP",36,41],["B","ADD",36,41,"-28"],["B","SWAP",36,41],["B","SCALE",36,"4"],["B","ADD",36,37,"-93"],["B","ADD",36,38,"-347"],["B","ADD",36,39,"10"],["B","ADD",36,40,"12"],["B","ADD",36,41,"28"],["B","IDLE_ONE",36,[3,4,5,6,7,8]],["B","ADD",36,41,"-28"],["B","ADD",36,40,"-12"],["B","ADD",36,39,"-10"],["B","ADD",36,38,"347"],["B","ADD",36,37,"93"],["B","SCALE",36,"1/4"],["B","SWAP",36,41],["B","ADD",36,41,"28"],["B","SWAP",36,41],["B","SWAP",36,40],["B","ADD",36,40,"10"],["B","SWAP",36,40],["B","ADD",36,40,"1"],["B","SWAP",36,40],["B","ADD",36,40,"-1"],["B","SWAP",36,39],["B","ADD",36,39,"161"],["B","SWAP",36,39],["B","SWAP",36,38],["B","ADD",36,38,"2"],["B","SWAP",36,38],["B","ADD",36,38,"30"],["B","SWAP",36,38],["B","SWAP",36,37],["B","ADD",36,37,"2"],["B","SWAP",36,37],["B","ADD",36,37,"2"],["B","SWAP",36,37],["B","ADD",36,37,"3"],["B","SWAP",36,37],["B","ADD",36,37,"1"],["B","SWAP",36,37],["B","ADD",36,37,"2"],["B","SWAP",36,37],["B","ADD",36,37,"1"],["B","SWAP",36,37],["B","ADD",36,37,"1"],["B","SWAP",36,37],["B","ADD",36,37,"1"],["B","SWAP",36,37],["B","ADD",36,37,"-1"],["B","ADD",37,36,"41/15"],["B","ADD",38,36,"11/30"],["B","ADD",39,36,"29/30"],["B","ADD",40,36,"-11/60"],["B","ADD",41,36,"-7/60"],["B","ADD",42,36,"7/30"],["B","ADD",43,36,"11/30"],["B","SCALE",36,"-2/15"],["B","ADD",36,37,"55"],["B","ADD",36,38,"218"],["B","ADD",36,39,"-546"],["B","ADD",36,40,"-1748"],["B","ADD",36,41,"-1092"],["B","ADD",36,42,"-982"],["B","ADD",36,43,"218"],["B","IDLE_ONE",36,[4,5,6,7,8]],["B","ADD",36,43,"-218"],["B","ADD",36,42,"982"],["B","ADD",36,41,"1092"],["B","ADD",36,40,"1748"],["B","ADD",36,39,"546"],["B","ADD",36,38,"-218"],["B","ADD",36,37,"-55"],["B","SCALE",36,"-15/2"],["B","ADD",43,36,"-11/30"],["B","ADD",42,36,"-7/30"],["B","ADD",41,36,"7/60"],["B","ADD",40,36,"11/60"],["B","ADD",39,36,"-29/30"],["B","ADD",38,36,"-11/30"],["B","ADD",37,36,"-41/15"],["B","ADD",36,38,"409/150"],["B","ADD",37,38,"-559/75"],["B","ADD",39,38,"-791/300"],["B","ADD",40,38,"1/2"],["B","ADD",41,38,"191/600"],["B","ADD",42,38,"-191/300"],["B","ADD",43,38,"-1"],["B","SCALE",38,"1/75"],["B","ADD",38,37,"-2"],["B","ADD",38,39,"20"],["B","ADD",38,40,"64"],["B","ADD",38,41,"40"],["B","ADD",38,42,"36"],["B","ADD",38,43,"-8"],["B","IDLE_ONE",38,[4,5,6,7,8]],["B","ADD",38,43,"8"],["B","ADD",38,42,"-36"],["B","ADD",38,41,"-40"],["B","ADD",38,40,"-64"],["B","ADD",38,39,"-20"],["B","ADD",38,37,"2"],["B","SCALE",38,"75"],["B","ADD",43,38,"1"],["B","ADD",42,38,"191/300"],["B","ADD",41,38,"-191/600"],["B","ADD",40,38,"-1/2"],["B","ADD",39,38,"791/300"],["B","ADD",37,38,"559/75"],["B","ADD",36,38,"-409/150"],["B","ADD",37,36,"41/15"],["B","ADD",38,36,"11/30"],["B","ADD",39,36,"29/30"],["B","ADD",40,36,"-11/60"],["B","ADD",41,36,"-7/60"],["B","ADD",42,36,"11/30"],["B","ADD",43,36,"29/30"],["B","ADD",44,36,"-1/15"],["B","ADD",45,36,"-1/6"],["B","SCALE",36,"2/15"],["B","ADD",36,37,"55"],["B","ADD",36,38,"218"],["B","ADD",36,39,"-546"],["B","ADD",36,40,"-1748"],["B","ADD",36,41,"-1092"],["B","ADD",36,42,"218"],["B","ADD",36,43,"-546"],["B","ADD",36,44,"-656"],["B","ADD",36,45,"-1528"],["B","IDLE_ONE",36,[5,6,7,8]],["B","ADD",36,45,"1528"],["B","ADD",36,44,"656"],["B","ADD",36,43,"546"],["B","ADD",36,42,"-218"],["B","ADD",36,41,"1092"],["B","ADD",36,40,"1748"],["B","ADD",36,39,"546"],["B","ADD",36,38,"-218"],["B","ADD",36,37,"-55"],["B","SCALE",36,"15/2"],["B","ADD",45,36,"1/6"],["B","ADD",44,36,"1/15"],["B","ADD",43,36,"-29/30"],["B","ADD",42,36,"-11/30"],["B","ADD",41,36,"7/60"],["B","ADD",40,36,"11/60"],["B","ADD",39,36,"-29/30"],["B","ADD",38,36,"-11/30"],["B","ADD",37,36,"-41/15"],["B","ADD",36,38,"409/150"],["B","ADD",37,38,"-559/75"],["B","ADD",39,38,"-791/300"],["B","ADD",40,38,"1/2"],["B","ADD",41,38,"191/600"],["B","ADD",42,38,"-1"],["B","ADD",43,38,"-791/300"],["B","ADD",44,38,"109/600"],["B","ADD",45,38,"91/200"],["B","SCALE",38,"-1/75"],["B","ADD",38,37,"-2"],["B","ADD",38,39,"20"],["B","ADD",38,40,"64"],["B","ADD",38,41,"40"],["B","ADD",38,42,"-8"],["B","ADD",38,43,"20"],["B","ADD",38,44,"24"],["B","ADD",38,45,"56"],["B","IDLE_ONE",38,[5,6,7,8]],["B","ADD",38,45,"-56"],["B","ADD",38,44,"-24"],["B","ADD",38,43,"-20"],["B","ADD",38,42,"8"],["B","ADD",38,41,"-40"],["B","ADD",38,40,"-64"],["B","ADD",38,39,"-20"],["B","ADD",38,37,"2"],["B","SCALE",38,"-75"],["B","ADD",45,38,"-91/200"],["B","ADD",44,38,"-109/600"],["B","ADD",43,38,"791/300"],["B","ADD",42,38,"1"],["B","ADD",41,38,"-191/600"],["B","ADD",40,38,"-1/2"],["B","ADD",39,38,"791/300"],["B","ADD",37,38,"559/75"],["B","ADD",36,38,"-409/150"],["B","ADD",37,36,"41/15"],["B","ADD",38,36,"11/30"],["B","ADD",39,36,"29/30"],["B","ADD",40,36,"-11/60"],["B","ADD",41,36,"-7/60"],["B","ADD",42,36,"11/30"],["B","ADD",43,36,"29/30"],["B","ADD",44,36,"-11/60"],["B","ADD",45,36,"-7/60"],["B","ADD",46,36,"7/30"],["B","ADD",47,36,"11/30"],["B","SCALE",36,"-2/15"],["B","ADD",36,37,"55"],["B","ADD",36,38,"218"],["B","ADD",36,39,"-546"],["B","ADD",36,40,"-1748"],["B","ADD",36,41,"-1092"],["B","ADD",36,42,"218"],["B","ADD",36,43,"-546"],["B","ADD",36,44,"-1748"],["B","ADD",36,45,"-1092"],["B","ADD",36,46,"-982"],["B","ADD",36,47,"218"],["B","IDLE_ONE",36,[6,7,8]],["B","ADD",36,47,"-218"],["B","ADD",36,46,"982"],["B","ADD",36,45,"1092"],["B","ADD",36,44,"1748"],["B","ADD",36,43,"546"],["B","ADD",36,42,"-218"],["B","ADD",36,41,"1092"],["B","ADD",36,40,"1748"],["B","ADD",36,39,"546"],["B","ADD",36,38,"-218"],["B","ADD",36,37,"-55"],["B","SCALE",36,"-15/2"],["B","ADD",47,36,"-11/30"],["B","ADD",46,36,"-7/30"],["B","ADD",45,36,"7/60"],["B","ADD",44,36,"11/60"],["B","ADD",43,36,"-29/30"],["B","ADD",42,36,"-11/30"],["B","ADD",41,36,"7/60"],["B","ADD",40,36,"11/60"],["B","ADD",39,36,"-29/30"],["B","ADD",38,36,"-11/30"],["B","ADD",37,36,"-41/15"],["B","ADD",36,38,"409/150"],["B","ADD",37,38,"-559/75"],["B","ADD",39,38,"-791/300"],["B","ADD",40,38,"1/2"],["B","ADD",41,38,"191/600"],["B","ADD",42,38,"-1"],["B","ADD",43,38,"-791/300"],["B","ADD",44,38,"1/2"],["B","ADD",45,38,"191/600"],["B","ADD",46,38,"-191/300"],["B","ADD",47,38,"-1"],["B","SCALE",38,"1/75"],["B","ADD",38,37,"-2"],["B","ADD",38,39,"20"],["B","ADD",38,40,"64"],["B","ADD",38,41,"40"],["B","ADD",38,42,"-8"],["B","ADD",38,43,"20"],["B","ADD",38,44,"64"],["B","ADD",38,45,"40"],["B","ADD",38,46,"36"],["B","ADD",38,47,"-8"],["B","IDLE_ONE",38,[6,7,8]],["B","ADD",38,47,"8"],["B","ADD",38,46,"-36"],["B","ADD",38,45,"-40"],["B","ADD",38,44,"-64"],["B","ADD",38,43,"-20"],["B","ADD",38,42,"8"],["B","ADD",38,41,"-40"],["B","ADD",38,40,"-64"],["B","ADD",38,39,"-20"],["B","ADD",38,37,"2"],["B","SCALE",38,"75"],["B","ADD",47,38,"1"],["B","ADD",46,38,"191/300"],["B","ADD",45,38,"-191/600"],["B","ADD",44,38,"-1/2"],["B","ADD",43,38,"791/300"],["B","ADD",42,38,"1"],["B","ADD",41,38,"-191/600"],["B","ADD",40,38,"-1/2"],["B","ADD",39,38,"791/300"],["B","ADD",37,38,"559/75"],["B","ADD",36,38,"-409/150"],["B","ADD",37,36,"41/15"],["B","ADD",38,36,"11/30"],["B","ADD",39,36,"29/30"],["B","ADD",40,36,"-11/60"],["B","ADD",41,36,"-7/60"],["B","ADD",42,36,"11/30"],["B","ADD",43,36,"29/30"],["B","ADD",44,36,"-11/60"],["B","ADD",45,36,"-7/60"],["B","ADD",46,36,"11/30"],["B","ADD",47,36,"29/30"],["B","ADD",48,36,"-1/15"],["B","ADD",49,36,"-1/6"],["B","SCALE",36,"2/15"],["B","ADD",36,37,"55"],["B","ADD",36,38,"218"],["B","ADD",36,39,"-546"],["B","ADD",36,40,"-1748"],["B","ADD",36,41,"-1092"],["B","ADD",36,42,"218"],["B","ADD",36,43,"-546"],["B","ADD",36,44,"-1748"],["B","ADD",36,45,"-1092"],["B","ADD",36,46,"218"],["B","ADD",36,47,"-546"],["B","ADD",36,48,"-656"],["B","ADD",36,49,"-1528"],["B","IDLE_ONE",36,[7,8]],["B","ADD",36,49,"1528"],["B","ADD",36,48,"656"],["B","ADD",36,47,"546"],["B","ADD",36,46,"-218"],["B","ADD",36,45,"1092"],["B","ADD",36,44,"1748"],["B","ADD",36,43,"546"],["B","ADD",36,42,"-218"],["B","ADD",36,41,"1092"],["B","ADD",36,40,"1748"],["B","ADD",36,39,"546"],["B","ADD",36,38,"-218"],["B","ADD",36,37,"-55"],["B","SCALE",36,"15/2"],["B","ADD",49,36,"1/6"],["B","ADD",48,36,"1/15"],["B","ADD",47,36,"-29/30"],["B","ADD",46,36,"-11/30"],["B","ADD",45,36,"7/60"],["B","ADD",44,36,"11/60"],["B","ADD",43,36,"-29/30"],["B","ADD",42,36,"-11/30"],["B","ADD",41,36,"7/60"],["B","ADD",40,36,"11/60"],["B","ADD",39,36,"-29/30"],["B","ADD",38,36,"-11/30"],["B","ADD",37,36,"-41/15"],["B","ADD",36,38,"409/150"],["B","ADD",37,38,"-559/75"],["B","ADD",39,38,"-791/300"],["B","ADD",40,38,"1/2"],["B","ADD",41,38,"191/600"],["B","ADD",42,38,"-1"],["B","ADD",43,38,"-791/300"],["B","ADD",44,38,"1/2"],["B","ADD",45,38,"191/600"],["B","ADD",46,38,"-1"],["B","ADD",47,38,"-791/300"],["B","ADD",48,38,"109/600"],["B","ADD",49,38,"91/200"],["B","SCALE",38,"-1/75"],["B","ADD",38,37,"-2"],["B","ADD",38,39,"20"],["B","ADD",38,40,"64"],["B","ADD",38,41,"40"],["B","ADD",38,42,"-8"],["B","ADD",38,43,"20"],["B","ADD",38,44,"64"],["B","ADD",38,45,"40"],["B","ADD",38,46,"-8"],["B","ADD",38,47,"20"],["B","ADD",38,48,"24"],["B","ADD",38,49,"56"],["B","IDLE_ONE",38,[7,8]],["B","ADD",38,49,"-56"],["B","ADD",38,48,"-24"],["B","ADD",38,47,"-20"],["B","ADD",38,46,"8"],["B","ADD",38,45,"-40"],["B","ADD",38,44,"-64"],["B","ADD",38,43,"-20"],["B","ADD",38,42,"8"],["B","ADD",38,41,"-40"],["B","ADD",38,40,"-64"],["B","ADD",38,39,"-20"],["B","ADD",38,37,"2"],["B","SCALE",38,"-75"],["B","ADD",49,38,"-91/200"],["B","ADD",48,38,"-109/600"],["B","ADD",47,38,"791/300"],["B","ADD",46,38,"1"],["B","ADD",45,38,"-191/600"],["B","ADD",44,38,"-1/2"],["B","ADD",43,38,"791/300"],["B","ADD",42,38,"1"],["B","ADD",41,38,"-191/600"],["B","ADD",40,38,"-1/2"],["B","ADD",39,38,"791/300"],["B","ADD",37,38,"559/75"],["B","ADD",36,38,"-409/150"],["B","ADD",37,36,"41/16"],["B","ADD",52,36,"1/16"],["B","ADD",53,36,"9/32"],["B","SCALE",36,"-1/16"],["B","ADD",36,52,"-10"],["B","ADD",36,53,"6"],["B","IDLE_ONE",36,[16,15,14,13,12,11,10,9]],["B","ADD",36,53,"-6"],["B","ADD",36,52,"10"],["B","SCALE",36,"-16"],["B","ADD",53,36,"-9/32"],["B","ADD",52,36,"-1/16"],["B","ADD",37,36,"-41/16"],["B","ADD",36,37,"7/18"],["B","ADD",52,37,"-1/36"],["B","ADD",53,37,"-1/9"],["B","SCALE",37,"-1/18"],["B","ADD",37,52,"-22"],["B","ADD",37,53,"14"],["B","IDLE_ONE",37,[16,15,14,13,12,11,10,9]],["B","ADD",37,53,"-14"],["B","ADD",37,52,"22"],["B","SCALE",37,"-18"],["B","ADD",53,37,"1/9"],["B","ADD",52,37,"1/36"],["B","ADD",36,37,"-7/18"],["B","ADD",37,36,"41/16"],["B","ADD",52,36,"11/64"],["B","ADD",53,36,"29/64"],["B","ADD",54,36,"1/32"],["B","ADD",55,36,"5/64"],["B","SCALE",36,"-1/16"],["B","ADD",36,37,"5"],["B","ADD",36,52,"22"],["B","ADD",36,53,"-54"],["B","ADD",36,54,"32"],["B","ADD",36,55,"76"],["B","IDLE_ONE",36,[15,14,13,12,11,10,9]],["B","ADD",36,55,"-76"],["B","ADD",36,54,"-32"],["B","ADD",36,53,"54"],["B","ADD",36,52,"-22"],["B","ADD",36,37,"-5"],["B","SCALE",36,"-16"],["B","ADD",55,36,"-5/64"],["B","ADD",54,36,"-1/32"],["B","ADD",53,36,"-29/64"],["B","ADD",52,36,"-11/64"],["B","ADD",37,36,"-41/16"],["B","ADD",36,52,"29/5"],["B","ADD",37,52,"-223/15"],["B","ADD",53,52,"-79/30"],["B","ADD",54,52,"-11/60"],["B","ADD",55,52,"-9/20"],["B","SCALE",52,"1/15"],["B","ADD",52,37,"-1"],["B","ADD",52,53,"10"],["B","ADD",52,54,"-6"],["B","ADD",52,55,"-14"],["B","IDLE_ONE",52,[15,14,13,12,11,10,9]],["B","ADD",52,55,"14"],["B","ADD",52,54,"6"],["B","ADD",52,53,"-10"],["B","ADD",52,37,"1"],["B","SCALE",52,"15"],["B","ADD",55,52,"9/20"],["B","ADD",54,52,"11/60"],["B","ADD",53,52,"79/30"],["B","ADD",37,52,"223/15"],["B","ADD",36,52,"-29/5"],["B","ADD",37,36,"41/16"],["B","ADD",52,36,"11/64"],["B","ADD",53,36,"29/64"],["B","ADD",54,36,"9/64"],["B","ADD",55,36,"1/32"],["B","ADD",56,36,"1/16"],["B","ADD",57,36,"9/32"],["B","SCALE",36,"-1/16"],["B","ADD",36,37,"-5"],["B","ADD",36,52,"-22"],["B","ADD",36,53,"54"],["B","ADD",36,54,"-140"],["B","ADD",36,55,"-32"],["B","ADD",36,56,"-120"],["B","ADD",36,57,"76"],["B","IDLE_ONE",36,[14,13,12,11,10,9]],["B","ADD",36,57,"-76"],["B","ADD",36,56,"120"],["B","ADD",36,55,"32"],["B","ADD",36,54,"140"],["B","ADD",36,53,"-54"],["B","ADD",36,52,"22"],["B","ADD",36,37,"5"],["B","SCALE",36,"-16"],["B","ADD",57,36,"-9/32"],["B","ADD",56,36,"-1/16"],["B","ADD",55,36,"-1/32"],["B","ADD",54,36,"-9/64"],["B","ADD",53,36,"-29/64"],["B","ADD",52,36,"-11/64"],["B","ADD",37,36,"-41/16"],["B","ADD",36,52,"29/5"],["B","ADD",37,52,"-223/15"],["B","ADD",53,52,"-79/30"],["B","ADD",54,52,"-49/60"],["B","ADD",55,52,"-11/60"],["B","ADD",56,52,"-11/30"],["B","ADD",57,52,"-49/30"],["B","SCALE",52,"1/15"],["B","ADD",52,37,"1"],["B","ADD",52,53,"-10"],["B","ADD",52,54,"26"],["B","ADD",52,55,"6"],["B","ADD",52,56,"22"],["B","ADD",52,57,"-14"],["B","IDLE_ONE",52,[14,13,12,11,10,9]],["B","ADD",52,57,"14"],["B","ADD",52,56,"-22"],["B","ADD",52,55,"-6"],["B","ADD",52,54,"-26"],["B","ADD",52,53,"10"],["B","ADD",52,37,"-1"],["B","SCALE",52,"15"],["B","ADD",57,52,"49/30"],["B","ADD",56,52,"11/30"],["B","ADD",55,52,"11/60"],["B","ADD",54,52,"49/60"],["B","ADD",53,52,"79/30"],["B","ADD",37,52,"223/15"],["B","ADD",36,52,"-29/5"],["B","ADD",37,36,"41/16"],["B","ADD",52,36,"11/64"],["B","ADD",53,36,"29/64"],["B","ADD",54,36,"9/64"],["B","ADD",55,36,"1/32"],["B","ADD",56,36,"11/64"],["B","ADD",57,36,"29/64"],["B","ADD",58,36,"1/32"],["B","ADD",59,36,"5/64"],["B","SCALE",36,"-1/16"],["B","ADD",36,37,"5"],["B","ADD",36,52,"22"],["B","ADD",36,53,"-54"],["B","ADD",36,54,"140"],["B","ADD",36,55,"32"],["B","ADD",36,56,"22"],["B","ADD",36,57,"-54"],["B","ADD",36,58,"32"],["B","ADD",36,59,"76"],["B","IDLE_ONE",36,[13,12,11,10,9]],["B","ADD",36,59,"-76"],["B","ADD",36,58,"-32"],["B","ADD",36,57,"54"],["B","ADD",36,56,"-22"],["B","ADD",36,55,"-32"],["B","ADD",36,54,"-140"],["B","ADD",36,53,"54"],["B","ADD",36,52,"-22"],["B","ADD",36,37,"-5"],["B","SCALE",36,"-16"],["B","ADD",59,36,"-5/64"],["B","ADD",58,36,"-1/32"],["B","ADD",57,36,"-29/64"],["B","ADD",56,36,"-11/64"],["B","ADD",55,36,"-1/32"],["B","ADD",54,36,"-9/64"],["B","ADD",53,36,"-29/64"],["B","ADD",52,36,"-11/64"],["B","ADD",37,36,"-41/16"],["B","ADD",36,52,"29/5"],["B","ADD",37,52,"-223/15"],["B","ADD",53,52,"-79/30"],["B","ADD",54,52,"-49/60"],["B","ADD",55,52,"-11/60"],["B","ADD",56,52,"-1"],["B","ADD",57,52,"-79/30"],["B","ADD",58,52,"-11/60"],["B","ADD",59,52,"-9/20"],["B","SCALE",52,"1/15"],["B","ADD",52,37,"-1"],["B","ADD",52,53,"10"],["B","ADD",52,54,"-26"],["B","ADD",52,55,"-6"],["B","ADD",52,56,"-4"],["B","ADD",52,57,"10"],["B","ADD",52,58,"-6"],["B","ADD",52,59,"-14"],["B","IDLE_ONE",52,[13,12,11,10,9]],["B","ADD",52,59,"14"],["B","ADD",52,58,"6"],["B","ADD",52,57,"-10"],["B","ADD",52,56,"4"],["B","ADD",52,55,"6"],["B","ADD",52,54,"26"],["B","ADD",52,53,"-10"],["B","ADD",52,37,"1"],["B","SCALE",52,"15"],["B","ADD",59,52,"9/20"],["B","ADD",58,52,"11/60"],["B","ADD",57,52,"79/30"],["B","ADD",56,52,"1"],["B","ADD",55,52,"11/60"],["B","ADD",54,52,"49/60"],["B","ADD",53,52,"79/30"],["B","ADD",37,52,"223/15"],["B","ADD",36,52,"-29/5"],["B","ADD",37,36,"41/16"],["B","ADD",52,36,"11/64"],["B","ADD",53,36,"29/64"],["B","ADD",54,36,"9/64"],["B","ADD",55,36,"1/32"],["B","ADD",56,36,"11/64"],["B","ADD",57,36,"29/64"],["B","ADD",58,36,"9/64"],["B","ADD",59,36,"1/32"],["B","ADD",60,36,"1/16"],["B","ADD",61,36,"9/32"],["B","SCALE",36,"-1/16"],["B","ADD",36,37,"-5"],["B","ADD",36,52,"-22"],["B","ADD",36,53,"54"],["B","ADD",36,54,"-140"],["B","ADD",36,55,"-32"],["B","ADD",36,56,"-22"],["B","ADD",36,57,"54"],["B","ADD",36,58,"-140"],["B","ADD",36,59,"-32"],["B","ADD",36,60,"-120"],["B","ADD",36,61,"76"],["B","IDLE_ONE",36,[12,11,10,9]],["B","ADD",36,61,"-76"],["B","ADD",36,60,"120"],["B","ADD",36,59,"32"],["B","ADD",36,58,"140"],["B","ADD",36,57,"-54"],["B","ADD",36,56,"22"],["B","ADD",36,55,"32"],["B","ADD",36,54,"140"],["B","ADD",36,53,"-54"],["B","ADD",36,52,"22"],["B","ADD",36,37,"5"],["B","SCALE",36,"-16"],["B","ADD",61,36,"-9/32"],["B","ADD",60,36,"-1/16"],["B","ADD",59,36,"-1/32"],["B","ADD",58,36,"-9/64"],["B","ADD",57,36,"-29/64"],["B","ADD",56,36,"-11/64"],["B","ADD",55,36,"-1/32"],["B","ADD",54,36,"-9/64"],["B","ADD",53,36,"-29/64"],["B","ADD",52,36,"-11/64"],["B","ADD",37,36,"-41/16"],["B","ADD",36,52,"29/5"],["B","ADD",37,52,"-223/15"],["B","ADD",53,52,"-79/30"],["B","ADD",54,52,"-49/60"],["B","ADD",55,52,"-11/60"],["B","ADD",56,52,"-1"],["B","ADD",57,52,"-79/30"],["B","ADD",58,52,"-49/60"],["B","ADD",59,52,"-11/60"],["B","ADD",60,52,"-11/30"],["B","ADD",61,52,"-49/30"],["B","SCALE",52,"1/15"],["B","ADD",52,37,"1"],["B","ADD",52,53,"-10"],["B","ADD",52,54,"26"],["B","ADD",52,55,"6"],["B","ADD",52,56,"4"],["B","ADD",52,57,"-10"],["B","ADD",52,58,"26"],["B","ADD",52,59,"6"],["B","ADD",52,60,"22"],["B","ADD",52,61,"-14"],["B","IDLE_ONE",52,[12,11,10,9]],["B","ADD",52,61,"14"],["B","ADD",52,60,"-22"],["B","ADD",52,59,"-6"],["B","ADD",52,58,"-26"],["B","ADD",52,57,"10"],["B","ADD",52,56,"-4"],["B","ADD",52,55,"-6"],["B","ADD",52,54,"-26"],["B","ADD",52,53,"10"],["B","ADD",52,37,"-1"],["B","SCALE",52,"15"],["B","ADD",61,52,"49/30"],["B","ADD",60,52,"11/30"],["B","ADD",59,52,"11/60"],["B","ADD",58,52,"49/60"],["B","ADD",57,52,"79/30"],["B","ADD",56,52,"1"],["B","ADD",55,52,"11/60"],["B","ADD",54,52,"49/60"],["B","ADD",53,52,"79/30"],["B","ADD",37,52,"223/15"],["B","ADD",36,52,"-29/5"],["B","ADD",37,36,"41/16"],["B","ADD",52,36,"11/64"],["B","ADD",53,36,"29/64"],["B","ADD",54,36,"9/64"],["B","ADD",55,36,"1/32"],["B","ADD",56,36,"11/64"],["B","ADD",57,36,"29/64"],["B","ADD",58,36,"9/64"],["B","ADD",59,36,"1/32"],["B","ADD",60,36,"11/64"],["B","ADD",61,36,"29/64"],["B","ADD",62,36,"1/32"],["B","ADD",63,36,"5/64"],["B","SCALE",36,"-1/16"],["B","ADD",36,37,"5"],["B","ADD",36,52,"22"],["B","ADD",36,53,"-54"],["B","ADD",36,54,"140"],["B","ADD",36,55,"32"],["B","ADD",36,56,"22"],["B","ADD",36,57,"-54"],["B","ADD",36,58,"140"],["B","ADD",36,59,"32"],["B","ADD",36,60,"22"],["B","ADD",36,61,"-54"],["B","ADD",36,62,"32"],["B","ADD",36,63,"76"],["B","IDLE_ONE",36,[11,10,9]],["B","ADD",36,63,"-76"],["B","ADD",36,62,"-32"],["B","ADD",36,61,"54"],["B","ADD",36,60,"-22"],["B","ADD",36,59,"-32"],["B","ADD",36,58,"-140"],["B","ADD",36,57,"54"],["B","ADD",36,56,"-22"],["B","ADD",36,55,"-32"],["B","ADD",36,54,"-140"],["B","ADD",36,53,"54"],["B","ADD",36,52,"-22"],["B","ADD",36,37,"-5"],["B","SCALE",36,"-16"],["B","ADD",63,36,"-5/64"],["B","ADD",62,36,"-1/32"],["B","ADD",61,36,"-29/64"],["B","ADD",60,36,"-11/64"],["B","ADD",59,36,"-1/32"],["B","ADD",58,36,"-9/64"],["B","ADD",57,36,"-29/64"],["B","ADD",56,36,"-11/64"],["B","ADD",55,36,"-1/32"],["B","ADD",54,36,"-9/64"],["B","ADD",53,36,"-29/64"],["B","ADD",52,36,"-11/64"],["B","ADD",37,36,"-41/16"],["B","ADD",36,52,"29/5"],["B","ADD",37,52,"-223/15"],["B","ADD",53,52,"-79/30"],["B","ADD",54,52,"-49/60"],["B","ADD",55,52,"-11/60"],["B","ADD",56,52,"-1"],["B","ADD",57,52,"-79/30"],["B","ADD",58,52,"-49/60"],["B","ADD",59,52,"-11/60"],["B","ADD",60,52,"-1"],["B","ADD",61,52,"-79/30"],["B","ADD",62,52,"-11/60"],["B","ADD",63,52,"-9/20"],["B","SCALE",52,"1/15"],["B","ADD",52,37,"-1"],["B","ADD",52,53,"10"],["B","ADD",52,54,"-26"],["B","ADD",52,55,"-6"],["B","ADD",52,56,"-4"],["B","ADD",52,57,"10"],["B","ADD",52,58,"-26"],["B","ADD",52,59,"-6"],["B","ADD",52,60,"-4"],["B","ADD",52,61,"10"],["B","ADD",52,62,"-6"],["B","ADD",52,63,"-14"],["B","IDLE_ONE",52,[11,10,9]],["B","ADD",52,63,"14"],["B","ADD",52,62,"6"],["B","ADD",52,61,"-10"],["B","ADD",52,60,"4"],["B","ADD",52,59,"6"],["B","ADD",52,58,"26"],["B","ADD",52,57,"-10"],["B","ADD",52,56,"4"],["B","ADD",52,55,"6"],["B","ADD",52,54,"26"],["B","ADD",52,53,"-10"],["B","ADD",52,37,"1"],["B","SCALE",52,"15"],["B","ADD",63,52,"9/20"],["B","ADD",62,52,"11/60"],["B","ADD",61,52,"79/30"],["B","ADD",60,52,"1"],["B","ADD",59,52,"11/60"],["B","ADD",58,52,"49/60"],["B","ADD",57,52,"79/30"],["B","ADD",56,52,"1"],["B","ADD",55,52,"11/60"],["B","ADD",54,52,"49/60"],["B","ADD",53,52,"79/30"],["B","ADD",37,52,"223/15"],["B","ADD",36,52,"-29/5"],["B","ADD",37,36,"5/2"],["B","ADD",52,36,"1/8"],["B","ADD",53,36,"3/8"],["B","ADD",54,36,"1/8"],["B","ADD",56,36,"1/8"],["B","ADD",57,36,"3/8"],["B","ADD",58,36,"1/8"],["B","ADD",60,36,"1/8"],["B","ADD",61,36,"3/8"],["B","ADD",62,36,"1/8"],["B","ADD",65,36,"1/4"],["B","SCALE",36,"-5/2"],["B","ADD",36,37,"3"],["B","ADD",36,52,"2"],["B","ADD",36,53,"-10"],["B","ADD",36,54,"28"],["B","ADD",36,55,"8"],["B","ADD",36,56,"2"],["B","ADD",36,57,"-10"],["B","ADD",36,58,"28"],["B","ADD",36,59,"8"],["B","ADD",36,60,"2"],["B","ADD",36,61,"-10"],["B","ADD",36,62,"28"],["B","ADD",36,63,"8"],["B","ADD",36,64,"2"],["B","IDLE_ONE",36,[10,9]],["B","ADD",36,64,"-2"],["B","ADD",36,63,"-8"],["B","ADD",36,62,"-28"],["B","ADD",36,61,"10"],["B","ADD",36,60,"-2"],["B","ADD",36,59,"-8"],["B","ADD",36,58,"-28"],["B","ADD",36,57,"10"],["B","ADD",36,56,"-2"],["B","ADD",36,55,"-8"],["B","ADD",36,54,"-28"],["B","ADD",36,53,"10"],["B","ADD",36,52,"-2"],["B","ADD",36,37,"-3"],["B","SCALE",36,"-2/5"],["B","ADD",65,36,"-1/4"],["B","ADD",62,36,"-1/8"],["B","ADD",61,36,"-3/8"],["B","ADD",60,36,"-1/8"],["B","ADD",58,36,"-1/8"],["B","ADD",57,36,"-3/8"],["B","ADD",56,36,"-1/8"],["B","ADD",54,36,"-1/8"],["B","ADD",53,36,"-3/8"],["B","ADD",52,36,"-1/8"],["B","ADD",37,36,"-5/2"],["B","ADD",37,36,"2"],["B","ADD",52,36,"-1/4"],["B","ADD",53,36,"-1/4"],["B","ADD",55,36,"-1/4"],["B","ADD",56,36,"-1/4"],["B","ADD",57,36,"-1/4"],["B","ADD",59,36,"-1/4"],["B","ADD",60,36,"-1/4"],["B","ADD",61,36,"-1/4"],["B","ADD",63,36,"-1/4"],["B","ADD",64,36,"-1/2"],["B","SCALE",36,"5"],["B","ADD",36,37,"2"],["B","ADD",36,52,"8"],["B","ADD",36,53,"-20"],["B","ADD",36,54,"52"],["B","ADD",36,55,"12"],["B","ADD",36,56,"8"],["B","ADD",36,57,"-20"],["B","ADD",36,58,"52"],["B","ADD",36,59,"12"],["B","ADD",36,60,"8"],["B","ADD",36,61,"-20"],["B","ADD",36,62,"52"],["B","ADD",36,63,"12"],["B","ADD",36,64,"18"],["B","ADD",36,65,"-20"],["B","IDLE_ONE",36,[10,9]],["B","ADD",36,65,"20"],["B","ADD",36,64,"-18"],["B","ADD",36,63,"-12"],["B","ADD",36,62,"-52"],["B","ADD",36,61,"20"],["B","ADD",36,60,"-8"],["B","ADD",36,59,"-12"],["B","ADD",36,58,"-52"],["B","ADD",36,57,"20"],["B","ADD",36,56,"-8"],["B","ADD",36,55,"-12"],["B","ADD",36,54,"-52"],["B","ADD",36,53,"20"],["B","ADD",36,52,"-8"],["B","ADD",36,37,"-2"],["B","SCALE",36,"1/5"],["B","ADD",64,36,"1/2"],["B","ADD",63,36,"1/4"],["B","ADD",61,36,"1/4"],["B","ADD",60,36,"1/4"],["B","ADD",59,36,"1/4"],["B","ADD",57,36,"1/4"],["B","ADD",56,36,"1/4"],["B","ADD",55,36,"1/4"],["B","ADD",53,36,"1/4"],["B","ADD",52,36,"1/4"],["B","ADD",37,36,"-2"],["B","ADD",37,36,"9/5"],["B","ADD",52,36,"-2/5"],["B","ADD",53,36,"-1/2"],["B","ADD",54,36,"-1/20"],["B","ADD",55,36,"-7/20"],["B","ADD",56,36,"-2/5"],["B","ADD",57,36,"-1/2"],["B","ADD",58,36,"-1/20"],["B","ADD",59,36,"-7/20"],["B","ADD",60,36,"-2/5"],["B","ADD",61,36,"-1/2"],["B","ADD",62,36,"-1/20"],["B","ADD",63,36,"-7/20"],["B","ADD",64,36,"-1/5"],["B","ADD",66,36,"-2/5"],["B","ADD",67,36,"7/40"],["B","SCALE",36,"-1/2"],["B","ADD",36,37,"-4"],["B","ADD",36,52,"-6"],["B","ADD",36,53,"20"],["B","ADD",36,54,"-54"],["B","ADD",36,55,"-14"],["B","ADD",36,56,"-6"],["B","ADD",36,57,"20"],["B","ADD",36,58,"-54"],["B","ADD",36,59,"-14"],["B","ADD",36,60,"-6"],["B","ADD",36,61,"20"],["B","ADD",36,62,"-54"],["B","ADD",36,63,"-14"],["B","ADD",36,64,"-6"],["B","ADD",36,65,"20"],["B","ADD",36,66,"40"],["B","ADD",36,67,"100"],["B","IDLE_ONE",36,[9]],["B","ADD",36,67,"-100"],["B","ADD",36,66,"-40"],["B","ADD",36,65,"-20"],["B","ADD",36,64,"6"],["B","ADD",36,63,"14"],["B","ADD",36,62,"54"],["B","ADD",36,61,"-20"],["B","ADD",36,60,"6"],["B","ADD",36,59,"14"],["B","ADD",36,58,"54"],["B","ADD",36,57,"-20"],["B","ADD",36,56,"6"],["B","ADD",36,55,"14"],["B","ADD",36,54,"54"],["B","ADD",36,53,"-20"],["B","ADD",36,52,"6"],["B","ADD",36,37,"4"],["B","SCALE",36,"-2"],["B","ADD",67,36,"-7/40"],["B","ADD",66,36,"2/5"],["B","ADD",64,36,"1/5"],["B","ADD",63,36,"7/20"],["B","ADD",62,36,"1/20"],["B","ADD",61,36,"1/2"],["B","ADD",60,36,"2/5"],["B","ADD",59,36,"7/20"],["B","ADD",58,36,"1/20"],["B","ADD",57,36,"1/2"],["B","ADD",56,36,"2/5"],["B","ADD",55,36,"7/20"],["B","ADD",54,36,"1/20"],["B","ADD",53,36,"1/2"],["B","ADD",52,36,"2/5"],["B","ADD",37,36,"-9/5"],["B","ADD",36,54,"-52/3"],["B","ADD",37,54,"92/3"],["B","ADD",52,54,"-22/3"],["B","ADD",53,54,"-28/3"],["B","ADD",55,54,"-19/3"],["B","ADD",56,54,"-22/3"],["B","ADD",57,54,"-28/3"],["B","ADD",58,54,"-1"],["B","ADD",59,54,"-19/3"],["B","ADD",60,54,"-22/3"],["B","ADD",61,54,"-28/3"],["B","ADD",62,54,"-1"],["B","ADD",63,54,"-19/3"],["B","ADD",64,54,"-8/3"],["B","ADD",65,54,"2/3"],["B","ADD",66,54,"-22/3"],["B","ADD",67,54,"3"],["B","SCALE",54,"-20/3"],["B","ADD",54,37,"2"],["B","ADD",54,52,"8"],["B","ADD",54,53,"-20"],["B","ADD",54,55,"12"],["B","ADD",54,56,"8"],["B","ADD",54,57,"-20"],["B","ADD",54,58,"52"],["B","ADD",54,59,"12"],["B","ADD",54,60,"8"],["B","ADD",54,61,"-20"],["B","ADD",54,62,"52"],["B","ADD",54,63,"12"],["B","ADD",54,64,"8"],["B","ADD",54,65,"-20"],["B","ADD",54,66,"-30"],["B","ADD",54,67,"-80"],["B","IDLE_ONE",54,[9]],["B","ADD",54,67,"80"],["B","ADD",54,66,"30"],["B","ADD",54,65,"20"],["B","ADD",54,64,"-8"],["B","ADD",54,63,"-12"],["B","ADD",54,62,"-52"],["B","ADD",54,61,"20"],["B","ADD",54,60,"-8"],["B","ADD",54,59,"-12"],["B","ADD",54,58,"-52"],["B","ADD",54,57,"20"],["B","ADD",54,56,"-8"],["B","ADD",54,55,"-12"],["B","ADD",54,53,"20"],["B","ADD",54,52,"-8"],["B","ADD",54,37,"-2"],["B","SCALE",54,"-3/20"],["B","ADD",67,54,"-3"],["B","ADD",66,54,"22/3"],["B","ADD",65,54,"-2/3"],["B","ADD",64,54,"8/3"],["B","ADD",63,54,"19/3"],["B","ADD",62,54,"1"],["B","ADD",61,54,"28/3"],["B","ADD",60,54,"22/3"],["B","ADD",59,54,"19/3"],["B","ADD",58,54,"1"],["B","ADD",57,54,"28/3"],["B","ADD",56,54,"22/3"],["B","ADD",55,54,"19/3"],["B","ADD",53,54,"28/3"],["B","ADD",52,54,"22/3"],["B","ADD",37,54,"-92/3"],["B","ADD",36,54,"52/3"],["B","IDLE_ODD",70,[9],-1],["B","IDLE_ODD",71,[9],-1],["B","ADD",37,36,"5/3"],["B","ADD",52,36,"-1/2"],["B","ADD",53,36,"-2/3"],["B","ADD",54,36,"-1/12"],["B","ADD",55,36,"-5/12"],["B","ADD",56,36,"-1/2"],["B","ADD",57,36,"-2/3"],["B","ADD",58,36,"-1/12"],["B","ADD",59,36,"-5/12"],["B","ADD",60,36,"-1/2"],["B","ADD",61,36,"-2/3"],["B","ADD",62,36,"-1/12"],["B","ADD",63,36,"-5/12"],["B","ADD",65,36,"1/6"],["B","ADD",66,36,"-2/3"],["B","ADD",67,36,"1/4"],["B","SCALE",36,"-1/3"],["B","ADD",36,37,"1"],["B","ADD",36,52,"-2"],["B","ADD",36,53,"2"],["B","ADD",36,54,"-4"],["B","ADD",36,56,"-2"],["B","ADD",36,57,"2"],["B","ADD",36,58,"-4"],["B","ADD",36,60,"-2"],["B","ADD",36,61,"2"],["B","ADD",36,62,"-4"],["B","ADD",36,64,"-2"],["B","ADD",36,65,"2"],["B","ADD",36,66,"-2"],["B","ADD",52,37,"-3/4"],["B","ADD",53,37,"-5/4"],["B","ADD",54,37,"-1/4"],["B","ADD",55,37,"-1/2"],["B","ADD",56,37,"-3/4"],["B","ADD",57,37,"-5/4"],["B","ADD",58,37,"-1/4"],["B","ADD",59,37,"-1/2"],["B","ADD",60,37,"-3/4"],["B","ADD",61,37,"-5/4"],["B","ADD",62,37,"-1/4"],["B","ADD",63,37,"-1/2"],["B","ADD",64,37,"3/2"],["B","ADD",65,37,"5/4"],["B","ADD",66,37,"-1/2"],["B","SCALE",37,"-3/4"],["B","ADD",37,53,"1"],["B","ADD",37,54,"-3"],["B","ADD",37,55,"-1"],["B","ADD",37,57,"1"],["B","ADD",37,58,"-3"],["B","ADD",37,59,"-1"],["B","ADD",37,61,"1"],["B","ADD",37,62,"-3"],["B","ADD",37,63,"-1"],["B","ADD",37,65,"1"],["B","ADD",37,66,"2"],["B","ADD",37,67,"4"],["B","SCALE",37,"1"],["B","ADD",37,36,"1/2"],["B","ADD",37,36,"-1/2"],["B","ADD",36,37,"1"],["B","LAMBDA",36,1],["A","ADD",9,0,"1"],["A","ADD",10,0,"2"],["A","ADD",11,0,"2"],["A","ADD",12,0,"2"],["A","ADD",13,0,"2"],["A","ADD",14,0,"2"],["A","ADD",15,0,"2"],["A","ADD",16,0,"2"],["A","ADD",17,0,"2"],["A","SCALE",0,"-1"],["A","ADD",27,18,"1"],["A","ADD",28,18,"2"],["A","ADD",29,18,"2"],["A","ADD",30,18,"2"],["A","ADD",31,18,"2"],["A","ADD",32,18,"2"],["A","ADD",33,18,"2"],["A","ADD",34,18,"2"],["A","ADD",35,18,"2"],["A","SCALE",18,"-1"],["A","LAMBDA",9,1],["A","LAMBDA",27,-1],["A","SCALE",27,"-1"],["J",9,[9,0,18,27],[36,37,"-1","1/2"]],["A","LAMBDA",9,-1],["A","LAMBDA",27,1],["A","SCALE",27,"-1"],["A","ADD",0,9,"-1"],["A","ADD",18,27,"-1"],["A","SCALE",18,"-1"],["A","ADD",35,18,"-2"],["A","ADD",34,18,"-2"],["A","ADD",33,18,"-2"],["A","ADD",32,18,"-2"],["A","ADD",31,18,"-2"],["A","ADD",30,18,"-2"],["A","ADD",29,18,"-2"],["A","ADD",28,18,"-2"],["A","ADD",27,18,"-1"],["A","SCALE",0,"-1"],["A","ADD",17,0,"-2"],["A","ADD",16,0,"-2"],["A","ADD",15,0,"-2"],["A","ADD",14,0,"-2"],["A","ADD",13,0,"-2"],["A","ADD",12,0,"-2"],["A","ADD",11,0,"-2"],["A","ADD",10,0,"-2"],["A","ADD",9,0,"-1"],["B","LAMBDA",36,-1],["B","ADD",37,36,"-1/2"],["B","SCALE",37,"1"],["B","ADD",37,67,"-4"],["B","ADD",37,66,"-2"],["B","ADD",37,65,"-1"],["B","ADD",37,63,"1"],["B","ADD",37,62,"3"],["B","ADD",37,61,"-1"],["B","ADD",37,59,"1"],["B","ADD",37,58,"3"],["B","ADD",37,57,"-1"],["B","ADD",37,55,"1"],["B","ADD",37,54,"3"],["B","ADD",37,53,"-1"],["B","SCALE",37,"-4/3"],["B","ADD",66,37,"1/2"],["B","ADD",65,37,"-5/4"],["B","ADD",64,37,"-3/2"],["B","ADD",63,37,"1/2"],["B","ADD",62,37,"1/4"],["B","ADD",61,37,"5/4"],["B","ADD",60,37,"3/4"],["B","ADD",59,37,"1/2"],["B","ADD",58,37,"1/4"],["B","ADD",57,37,"5/4"],["B","ADD",56,37,"3/4"],["B","ADD",55,37,"1/2"],["B","ADD",54,37,"1/4"],["B","ADD",53,37,"5/4"],["B","ADD",52,37,"3/4"],["B","ADD",36,66,"2"],["B","ADD",36,65,"-2"],["B","ADD",36,64,"2"],["B","ADD",36,62,"4"],["B","ADD",36,61,"-2"],["B","ADD",36,60,"2"],["B","ADD",36,58,"4"],["B","ADD",36,57,"-2"],["B","ADD",36,56,"2"],["B","ADD",36,54,"4"],["B","ADD",36,53,"-2"],["B","ADD",36,52,"2"],["B","ADD",36,37,"-1"],["B","SCALE",36,"-3"],["B","ADD",67,36,"-1/4"],["B","ADD",66,36,"2/3"],["B","ADD",65,36,"-1/6"],["B","ADD",63,36,"5/12"],["B","ADD",62,36,"1/12"],["B","ADD",61,36,"2/3"],["B","ADD",60,36,"1/2"],["B","ADD",59,36,"5/12"],["B","ADD",58,36,"1/12"],["B","ADD",57,36,"2/3"],["B","ADD",56,36,"1/2"],["B","ADD",55,36,"5/12"],["B","ADD",54,36,"1/12"],["B","ADD",53,36,"2/3"],["B","ADD",52,36,"1/2"],["B","ADD",37,36,"-5/3"],["B","ADD",37,36,"7/5"],["B","ADD",52,36,"-7/10"],["B","ADD",53,36,"-1"],["B","ADD",54,36,"-3/20"],["B","ADD",55,36,"-11/20"],["B","ADD",56,36,"-7/10"],["B","ADD",57,36,"-1"],["B","ADD",58,36,"-3/20"],["B","ADD",59,36,"-11/20"],["B","ADD",60,36,"-7/10"],["B","ADD",61,36,"-1"],["B","ADD",62,36,"-3/20"],["B","ADD",63,36,"-11/20"],["B","ADD",64,36,"2/5"],["B","ADD",65,36,"1/2"],["B","ADD",66,36,"-3/5"],["B","ADD",67,36,"1/5"],["B","SCALE",36,"-2"],["B","ADD",36,37,"-69"],["B","ADD",36,52,"-296"],["B","ADD",36,53,"730"],["B","ADD",36,54,"-1894"],["B","ADD",36,55,"-434"],["B","ADD",36,56,"-296"],["B","ADD",36,57,"730"],["B","ADD",36,58,"-1894"],["B","ADD",36,59,"-434"],["B","ADD",36,60,"-296"],["B","ADD",36,61,"730"],["B","ADD",36,62,"-1894"],["B","ADD",36,63,"-434"],["B","ADD",36,64,"-296"],["B","ADD",36,65,"730"],["B","ADD",36,66,"710"],["B","ADD",36,67,"1440"],["B","IDLE_ONE",36,[10]],["B","ADD",36,67,"-1440"],["B","ADD",36,66,"-710"],["B","ADD",36,65,"-730"],["B","ADD",36,64,"296"],["B","ADD",36,63,"434"],["B","ADD",36,62,"1894"],["B","ADD",36,61,"-730"],["B","ADD",36,60,"296"],["B","ADD",36,59,"434"],["B","ADD",36,58,"1894"],["B","ADD",36,57,"-730"],["B","ADD",36,56,"296"],["B","ADD",36,55,"434"],["B","ADD",36,54,"1894"],["B","ADD",36,53,"-730"],["B","ADD",36,52,"296"],["B","ADD",36,37,"69"],["B","SCALE",36,"-1/2"],["B","ADD",67,36,"-1/5"],["B","ADD",66,36,"3/5"],["B","ADD",65,36,"-1/2"],["B","ADD",64,36,"-2/5"],["B","ADD",63,36,"11/20"],["B","ADD",62,36,"3/20"],["B","ADD",61,36,"1"],["B","ADD",60,36,"7/10"],["B","ADD",59,36,"11/20"],["B","ADD",58,36,"3/20"],["B","ADD",57,36,"1"],["B","ADD",56,36,"7/10"],["B","ADD",55,36,"11/20"],["B","ADD",54,36,"3/20"],["B","ADD",53,36,"1"],["B","ADD",52,36,"7/10"],["B","ADD",37,36,"-7/5"],["B","ADD",36,55,"-11/6"],["B","ADD",37,55,"31/12"],["B","ADD",52,55,"-61/48"],["B","ADD",53,55,"-29/16"],["B","ADD",54,55,"-13/48"],["B","ADD",56,55,"-61/48"],["B","ADD",57,55,"-29/16"],["B","ADD",58,55,"-13/48"],["B","ADD",59,55,"-1"],["B","ADD",60,55,"-61/48"],["B","ADD",61,55,"-29/16"],["B","ADD",62,55,"-13/48"],["B","ADD",63,55,"-1"],["B","ADD",64,55,"17/24"],["B","ADD",65,55,"43/48"],["B","ADD",66,55,"-53/48"],["B","ADD",67,55,"143/384"],["B","SCALE",55,"5/48"],["B","ADD",55,37,"-2"],["B","ADD",55,52,"-8"],["B","ADD",55,53,"20"],["B","ADD",55,54,"-52"],["B","ADD",55,56,"-8"],["B","ADD",55,57,"20"],["B","ADD",55,58,"-52"],["B","ADD",55,59,"-12"],["B","ADD",55,60,"-8"],["B","ADD",55,61,"20"],["B","ADD",55,62,"-52"],["B","ADD",55,63,"-12"],["B","ADD",55,64,"-8"],["B","ADD",55,65,"20"],["B","ADD",55,66,"20"],["B","ADD",55,67,"40"],["B","IDLE_ONE",55,[10]],["B","ADD",55,67,"-40"],["B","ADD",55,66,"-20"],["B","ADD",55,65,"-20"],["B","ADD",55,64,"8"],["B","ADD",55,63,"12"],["B","ADD",55,62,"52"],["B","ADD",55,61,"-20"],["B","ADD",55,60,"8"],["B","ADD",55,59,"12"],["B","ADD",55,58,"52"],["B","ADD",55,57,"-20"],["B","ADD",55,56,"8"],["B","ADD",55,54,"52"],["B","ADD",55,53,"-20"],["B","ADD",55,52,"8"],["B","ADD",55,37,"2"],["B","SCALE",55,"48/5"],["B","ADD",67,55,"-143/384"],["B","ADD",66,55,"53/48"],["B","ADD",65,55,"-43/48"],["B","ADD",64,55,"-17/24"],["B","ADD",63,55,"1"],["B","ADD",62,55,"13/48"],["B","ADD",61,55,"29/16"],["B","ADD",60,55,"61/48"],["B","ADD",59,55,"1"],["B","ADD",58,55,"13/48"],["B","ADD",57,55,"29/16"],["B","ADD",56,55,"61/48"],["B","ADD",54,55,"13/48"],["B","ADD",53,55,"29/16"],["B","ADD",52,55,"61/48"],["B","ADD",37,55,"-31/12"],["B","ADD",36,55,"11/6"],["B","ADD",37,36,"3"],["B","ADD",52,36,"1/2"],["B","ADD",53,36,"1"],["B","ADD",54,36,"1/4"],["B","ADD",55,36,"1/4"],["B","ADD",56,36,"1/2"],["B","ADD",57,36,"1"],["B","ADD",58,36,"1/4"],["B","ADD",59,36,"1/4"],["B","ADD",60,36,"1/2"],["B","ADD",61,36,"1"],["B","ADD",62,36,"1/4"],["B","ADD",63,36,"1/4"],["B","ADD",64,36,"-2"],["B","ADD",65,36,"-3/2"],["B","ADD",67,36,"1/2"],["B","SCALE",36,"2"],["B","ADD",36,52,"4"],["B","ADD",36,53,"-8"],["B","ADD",36,54,"20"],["B","ADD",36,55,"4"],["B","ADD",36,56,"4"],["B","ADD",36,57,"-8"],["B","ADD",36,58,"20"],["B","ADD",36,59,"4"],["B","ADD",36,60,"4"],["B","ADD",36,61,"-8"],["B","ADD",36,62,"20"],["B","ADD",36,63,"4"],["B","ADD",36,64,"4"],["B","ADD",36,65,"-8"],["B","ADD",36,66,"-6"],["B","ADD",36,67,"-16"],["B","ADD",52,37,"-3/4"],["B","ADD",53,37,"-5/4"],["B","ADD",54,37,"-1/4"],["B","ADD",55,37,"-1/2"],["B","ADD",56,37,"-3/4"],["B","ADD",57,37,"-5/4"],["B","ADD",58,37,"-1/4"],["B","ADD",59,37,"-1/2"],["B","ADD",60,37,"-3/4"],["B","ADD",61,37,"-5/4"],["B","ADD",62,37,"-1/4"],["B","ADD",63,37,"-1/2"],["B","ADD",64,37,"3/2"],["B","ADD",65,37,"5/4"],["B","ADD",66,37,"-1/4"],["B","ADD",67,37,"-1/4"],["B","SCALE",37,"1/8"],["B","ADD",37,52,"-2"],["B","ADD",37,53,"7/2"],["B","ADD",37,54,"-17/2"],["B","ADD",37,55,"-3/2"],["B","ADD",37,56,"-2"],["B","ADD",37,57,"7/2"],["B","ADD",37,58,"-17/2"],["B","ADD",37,59,"-3/2"],["B","ADD",37,60,"-2"],["B","ADD",37,61,"7/2"],["B","ADD",37,62,"-17/2"],["B","ADD",37,63,"-3/2"],["B","ADD",37,64,"-2"],["B","ADD",37,65,"7/2"],["B","ADD",37,66,"1"],["B","ADD",37,67,"4"],["B","SCALE",37,"-2"],["B","ADD",37,36,"-1/2"],["B","ADD",37,36,"-1/2"],["B","ADD",36,37,"1"],["B","LAMBDA",36,1],["A","ADD",10,0,"1"],["A","ADD",11,0,"2"],["A","ADD",12,0,"2"],["A","ADD",13,0,"2"],["A","ADD",14,0,"2"],["A","ADD",15,0,"2"],["A","ADD",16,0,"2"],["A","ADD",17,0,"2"],["A","SCALE",0,"-1"],["A","ADD",28,18,"1"],["A","ADD",29,18,"2"],["A","ADD",30,18,"2"],["A","ADD",31,18,"2"],["A","ADD",32,18,"2"],["A","ADD",33,18,"2"],["A","ADD",34,18,"2"],["A","ADD",35,18,"2"],["A","SCALE",18,"-1"],["A","LAMBDA",10,1],["A","LAMBDA",28,-1],["A","SCALE",28,"-1"],["J",10,[10,0,18,28],[36,37,"-1","1/2"]],["A","LAMBDA",10,-1],["A","LAMBDA",28,1],["A","SCALE",28,"-1"],["A","ADD",0,10,"-1"],["A","ADD",18,28,"-1"],["A","SCALE",18,"-1"],["A","ADD",35,18,"-2"],["A","ADD",34,18,"-2"],["A","ADD",33,18,"-2"],["A","ADD",32,18,"-2"],["A","ADD",31,18,"-2"],["A","ADD",30,18,"-2"],["A","ADD",29,18,"-2"],["A","ADD",28,18,"-1"],["A","SCALE",0,"-1"],["A","ADD",17,0,"-2"],["A","ADD",16,0,"-2"],["A","ADD",15,0,"-2"],["A","ADD",14,0,"-2"],["A","ADD",13,0,"-2"],["A","ADD",12,0,"-2"],["A","ADD",11,0,"-2"],["A","ADD",10,0,"-1"],["B","LAMBDA",36,-1],["B","ADD",37,36,"1/2"],["B","SCALE",37,"-1/2"],["B","ADD",37,67,"-4"],["B","ADD",37,66,"-1"],["B","ADD",37,65,"-7/2"],["B","ADD",37,64,"2"],["B","ADD",37,63,"3/2"],["B","ADD",37,62,"17/2"],["B","ADD",37,61,"-7/2"],["B","ADD",37,60,"2"],["B","ADD",37,59,"3/2"],["B","ADD",37,58,"17/2"],["B","ADD",37,57,"-7/2"],["B","ADD",37,56,"2"],["B","ADD",37,55,"3/2"],["B","ADD",37,54,"17/2"],["B","ADD",37,53,"-7/2"],["B","ADD",37,52,"2"],["B","SCALE",37,"8"],["B","ADD",67,37,"1/4"],["B","ADD",66,37,"1/4"],["B","ADD",65,37,"-5/4"],["B","ADD",64,37,"-3/2"],["B","ADD",63,37,"1/2"],["B","ADD",62,37,"1/4"],["B","ADD",61,37,"5/4"],["B","ADD",60,37,"3/4"],["B","ADD",59,37,"1/2"],["B","ADD",58,37,"1/4"],["B","ADD",57,37,"5/4"],["B","ADD",56,37,"3/4"],["B","ADD",55,37,"1/2"],["B","ADD",54,37,"1/4"],["B","ADD",53,37,"5/4"],["B","ADD",52,37,"3/4"],["B","ADD",36,67,"16"],["B","ADD",36,66,"6"],["B","ADD",36,65,"8"],["B","ADD",36,64,"-4"],["B","ADD",36,63,"-4"],["B","ADD",36,62,"-20"],["B","ADD",36,61,"8"],["B","ADD",36,60,"-4"],["B","ADD",36,59,"-4"],["B","ADD",36,58,"-20"],["B","ADD",36,57,"8"],["B","ADD",36,56,"-4"],["B","ADD",36,55,"-4"],["B","ADD",36,54,"-20"],["B","ADD",36,53,"8"],["B","ADD",36,52,"-4"],["B","SCALE",36,"1/2"],["B","ADD",67,36,"-1/2"],["B","ADD",65,36,"3/2"],["B","ADD",64,36,"2"],["B","ADD",63,36,"-1/4"],["B","ADD",62,36,"-1/4"],["B","ADD",61,36,"-1"],["B","ADD",60,36,"-1/2"],["B","ADD",59,36,"-1/4"],["B","ADD",58,36,"-1/4"],["B","ADD",57,36,"-1"],["B","ADD",56,36,"-1/2"],["B","ADD",55,36,"-1/4"],["B","ADD",54,36,"-1/4"],["B","ADD",53,36,"-1"],["B","ADD",52,36,"-1/2"],["B","ADD",37,36,"-3"],["B","ADD",37,36,"2/3"],["B","ADD",52,36,"-5/4"],["B","ADD",53,36,"-23/12"],["B","ADD",54,36,"-1/3"],["B","ADD",55,36,"-11/12"],["B","ADD",56,36,"-5/4"],["B","ADD",57,36,"-23/12"],["B","ADD",58,36,"-1/3"],["B","ADD",59,36,"-11/12"],["B","ADD",60,36,"-5/4"],["B","ADD",61,36,"-23/12"],["B","ADD",62,36,"-1/3"],["B","ADD",63,36,"-11/12"],["B","ADD",64,36,"-1/3"],["B","SCALE",36,"2/3"],["B","ADD",36,37,"-12"],["B","ADD",36,52,"-52"],["B","ADD",36,53,"128"],["B","ADD",36,54,"-332"],["B","ADD",36,55,"-76"],["B","ADD",36,56,"-52"],["B","ADD",36,57,"128"],["B","ADD",36,58,"-332"],["B","ADD",36,59,"-76"],["B","ADD",36,60,"-52"],["B","ADD",36,61,"128"],["B","ADD",36,62,"-332"],["B","ADD",36,63,"-76"],["B","ADD",36,64,"-28"],["B","ADD",36,65,"76"],["B","IDLE_ONE",36,[11]],["B","ADD",36,65,"-76"],["B","ADD",36,64,"28"],["B","ADD",36,63,"76"],["B","ADD",36,62,"332"],["B","ADD",36,61,"-128"],["B","ADD",36,60,"52"],["B","ADD",36,59,"76"],["B","ADD",36,58,"332"],["B","ADD",36,57,"-128"],["B","ADD",36,56,"52"],["B","ADD",36,55,"76"],["B","ADD",36,54,"332"],["B","ADD",36,53,"-128"],["B","ADD",36,52,"52"],["B","ADD",36,37,"12"],["B","SCALE",36,"3/2"],["B","ADD",64,36,"1/3"],["B","ADD",63,36,"11/12"],["B","ADD",62,36,"1/3"],["B","ADD",61,36,"23/12"],["B","ADD",60,36,"5/4"],["B","ADD",59,36,"11/12"],["B","ADD",58,36,"1/3"],["B","ADD",57,36,"23/12"],["B","ADD",56,36,"5/4"],["B","ADD",55,36,"11/12"],["B","ADD",54,36,"1/3"],["B","ADD",53,36,"23/12"],["B","ADD",52,36,"5/4"],["B","ADD",37,36,"-2/3"],["B","ADD",36,53,"-14/27"],["B","ADD",37,53,"46/135"],["B","ADD",52,53,"-88/135"],["B","ADD",54,53,"-47/270"],["B","ADD",55,53,"-43/90"],["B","ADD",56,53,"-88/135"],["B","ADD",57,53,"-1"],["B","ADD",58,53,"-47/270"],["B","ADD",59,53,"-43/90"],["B","ADD",60,53,"-88/135"],["B","ADD",61,53,"-1"],["B","ADD",62,53,"-47/270"],["B","ADD",63,53,"-43/90"],["B","ADD",64,53,"-22/135"],["B","ADD",65,53,"1/135"],["B","SCALE",53,"-4/135"],["B","ADD",53,37,"-1"],["B","ADD",53,52,"-4"],["B","ADD",53,54,"-26"],["B","ADD",53,55,"-6"],["B","ADD",53,56,"-4"],["B","ADD",53,57,"10"],["B","ADD",53,58,"-26"],["B","ADD",53,59,"-6"],["B","ADD",53,60,"-4"],["B","ADD",53,61,"10"],["B","ADD",53,62,"-26"],["B","ADD",53,63,"-6"],["B","ADD",53,64,"-2"],["B","ADD",53,65,"6"],["B","IDLE_ONE",53,[11]],["B","ADD",53,65,"-6"],["B","ADD",53,64,"2"],["B","ADD",53,63,"6"],["B","ADD",53,62,"26"],["B","ADD",53,61,"-10"],["B","ADD",53,60,"4"],["B","ADD",53,59,"6"],["B","ADD",53,58,"26"],["B","ADD",53,57,"-10"],["B","ADD",53,56,"4"],["B","ADD",53,55,"6"],["B","ADD",53,54,"26"],["B","ADD",53,52,"4"],["B","ADD",53,37,"1"],["B","SCALE",53,"-135/4"],["B","ADD",65,53,"-1/135"],["B","ADD",64,53,"22/135"],["B","ADD",63,53,"43/90"],["B","ADD",62,53,"47/270"],["B","ADD",61,53,"1"],["B","ADD",60,53,"88/135"],["B","ADD",59,53,"43/90"],["B","ADD",58,53,"47/270"],["B","ADD",57,53,"1"],["B","ADD",56,53,"88/135"],["B","ADD",55,53,"43/90"],["B","ADD",54,53,"47/270"],["B","ADD",52,53,"88/135"],["B","ADD",37,53,"-46/135"],["B","ADD",36,53,"14/27"],["B","ADD",37,36,"3"],["B","ADD",52,36,"1/2"],["B","ADD",53,36,"1"],["B","ADD",54,36,"1/4"],["B","ADD",55,36,"1/4"],["B","ADD",56,36,"1/2"],["B","ADD",57,36,"1"],["B","ADD",58,36,"1/4"],["B","ADD",59,36,"1/4"],["B","ADD",60,36,"1/2"],["B","ADD",61,36,"1"],["B","ADD",62,36,"1/4"],["B","ADD",63,36,"1/4"],["B","ADD",65,36,"1/2"],["B","SCALE",36,"-2"],["B","ADD",36,52,"-4"],["B","ADD",36,53,"8"],["B","ADD",36,54,"-20"],["B","ADD",36,55,"-4"],["B","ADD",36,56,"-4"],["B","ADD",36,57,"8"],["B","ADD",36,58,"-20"],["B","ADD",36,59,"-4"],["B","ADD",36,60,"-4"],["B","ADD",36,61,"8"],["B","ADD",36,62,"-20"],["B","ADD",36,63,"-4"],["B","ADD",36,64,"-6"],["B","ADD",36,65,"8"],["B","ADD",52,37,"-3/4"],["B","ADD",53,37,"-5/4"],["B","ADD",54,37,"-1/4"],["B","ADD",55,37,"-1/2"],["B","ADD",56,37,"-3/4"],["B","ADD",57,37,"-5/4"],["B","ADD",58,37,"-1/4"],["B","ADD",59,37,"-1/2"],["B","ADD",60,37,"-3/4"],["B","ADD",61,37,"-5/4"],["B","ADD",62,37,"-1/4"],["B","ADD",63,37,"-1/2"],["B","ADD",64,37,"-1/4"],["B","ADD",65,37,"-1/4"],["B","SCALE",37,"-1/8"],["B","ADD",37,52,"-2"],["B","ADD",37,53,"9/2"],["B","ADD",37,54,"-23/2"],["B","ADD",37,55,"-5/2"],["B","ADD",37,56,"-2"],["B","ADD",37,57,"9/2"],["B","ADD",37,58,"-23/2"],["B","ADD",37,59,"-5/2"],["B","ADD",37,60,"-2"],["B","ADD",37,61,"9/2"],["B","ADD",37,62,"-23/2"],["B","ADD",37,63,"-5/2"],["B","ADD",37,64,"-2"],["B","ADD",37,65,"5/2"],["B","SCALE",37,"2"],["B","ADD",37,36,"-1/2"],["B","ADD",37,36,"-1/2"],["B","ADD",36,37,"1"],["B","LAMBDA",36,1],["A","ADD",11,0,"1"],["A","ADD",12,0,"2"],["A","ADD",13,0,"2"],["A","ADD",14,0,"2"],["A","ADD",15,0,"2"],["A","ADD",16,0,"2"],["A","ADD",17,0,"2"],["A","SCALE",0,"-1"],["A","ADD",29,18,"1"],["A","ADD",30,18,"2"],["A","ADD",31,18,"2"],["A","ADD",32,18,"2"],["A","ADD",33,18,"2"],["A","ADD",34,18,"2"],["A","ADD",35,18,"2"],["A","SCALE",18,"-1"],["A","LAMBDA",11,1],["A","LAMBDA",29,-1],["A","SCALE",29,"-1"],["J",11,[11,0,18,29],[36,37,"-1","1/2"]],["A","LAMBDA",11,-1],["A","LAMBDA",29,1],["A","SCALE",29,"-1"],["A","ADD",0,11,"-1"],["A","ADD",18,29,"-1"],["A","SCALE",18,"-1"],["A","ADD",35,18,"-2"],["A","ADD",34,18,"-2"],["A","ADD",33,18,"-2"],["A","ADD",32,18,"-2"],["A","ADD",31,18,"-2"],["A","ADD",30,18,"-2"],["A","ADD",29,18,"-1"],["A","SCALE",0,"-1"],["A","ADD",17,0,"-2"],["A","ADD",16,0,"-2"],["A","ADD",15,0,"-2"],["A","ADD",14,0,"-2"],["A","ADD",13,0,"-2"],["A","ADD",12,0,"-2"],["A","ADD",11,0,"-1"],["B","LAMBDA",36,-1],["B","ADD",37,36,"1/2"],["B","SCALE",37,"1/2"],["B","ADD",37,65,"-5/2"],["B","ADD",37,64,"2"],["B","ADD",37,63,"5/2"],["B","ADD",37,62,"23/2"],["B","ADD",37,61,"-9/2"],["B","ADD",37,60,"2"],["B","ADD",37,59,"5/2"],["B","ADD",37,58,"23/2"],["B","ADD",37,57,"-9/2"],["B","ADD",37,56,"2"],["B","ADD",37,55,"5/2"],["B","ADD",37,54,"23/2"],["B","ADD",37,53,"-9/2"],["B","ADD",37,52,"2"],["B","SCALE",37,"-8"],["B","ADD",65,37,"1/4"],["B","ADD",64,37,"1/4"],["B","ADD",63,37,"1/2"],["B","ADD",62,37,"1/4"],["B","ADD",61,37,"5/4"],["B","ADD",60,37,"3/4"],["B","ADD",59,37,"1/2"],["B","ADD",58,37,"1/4"],["B","ADD",57,37,"5/4"],["B","ADD",56,37,"3/4"],["B","ADD",55,37,"1/2"],["B","ADD",54,37,"1/4"],["B","ADD",53,37,"5/4"],["B","ADD",52,37,"3/4"],["B","ADD",36,65,"-8"],["B","ADD",36,64,"6"],["B","ADD",36,63,"4"],["B","ADD",36,62,"20"],["B","ADD",36,61,"-8"],["B","ADD",36,60,"4"],["B","ADD",36,59,"4"],["B","ADD",36,58,"20"],["B","ADD",36,57,"-8"],["B","ADD",36,56,"4"],["B","ADD",36,55,"4"],["B","ADD",36,54,"20"],["B","ADD",36,53,"-8"],["B","ADD",36,52,"4"],["B","SCALE",36,"-1/2"],["B","ADD",65,36,"-1/2"],["B","ADD",63,36,"-1/4"],["B","ADD",62,36,"-1/4"],["B","ADD",61,36,"-1"],["B","ADD",60,36,"-1/2"],["B","ADD",59,36,"-1/4"],["B","ADD",58,36,"-1/4"],["B","ADD",57,36,"-1"],["B","ADD",56,36,"-1/2"],["B","ADD",55,36,"-1/4"],["B","ADD",54,36,"-1/4"],["B","ADD",53,36,"-1"],["B","ADD",52,36,"-1/2"],["B","ADD",37,36,"-3"],["B","ADD",36,52,"14"],["B","ADD",37,52,"-34"],["B","ADD",53,52,"-4"],["B","ADD",54,52,"-3/2"],["B","ADD",55,52,"1/2"],["B","ADD",56,52,"-1"],["B","ADD",57,52,"-4"],["B","ADD",58,52,"-3/2"],["B","ADD",59,52,"1/2"],["B","ADD",60,52,"-1"],["B","ADD",61,52,"-4"],["B","ADD",62,52,"-1/2"],["B","ADD",63,52,"1"],["B","SCALE",52,"-1"],["B","ADD",52,36,"1"],["B","ADD",52,37,"1"],["B","ADD",52,53,"-6"],["B","ADD",52,54,"16"],["B","ADD",52,55,"4"],["B","ADD",52,56,"2"],["B","ADD",52,57,"-6"],["B","ADD",52,58,"16"],["B","ADD",52,59,"4"],["B","ADD",52,60,"2"],["B","ADD",52,61,"-6"],["B","ADD",52,62,"14"],["B","ADD",52,63,"6"],["B","IDLE_ONE",52,[12]],["B","ADD",52,63,"-6"],["B","ADD",52,62,"-14"],["B","ADD",52,61,"6"],["B","ADD",52,60,"-2"],["B","ADD",52,59,"-4"],["B","ADD",52,58,"-16"],["B","ADD",52,57,"6"],["B","ADD",52,56,"-2"],["B","ADD",52,55,"-4"],["B","ADD",52,54,"-16"],["B","ADD",52,53,"6"],["B","ADD",52,37,"-1"],["B","ADD",52,36,"-1"],["B","SCALE",52,"-1"],["B","ADD",63,52,"-1"],["B","ADD",62,52,"1/2"],["B","ADD",61,52,"4"],["B","ADD",60,52,"1"],["B","ADD",59,52,"-1/2"],["B","ADD",58,52,"3/2"],["B","ADD",57,52,"4"],["B","ADD",56,52,"1"],["B","ADD",55,52,"-1/2"],["B","ADD",54,52,"3/2"],["B","ADD",53,52,"4"],["B","ADD",37,52,"34"],["B","ADD",36,52,"-14"],["B","ADD",37,36,"5/2"],["B","ADD",52,36,"1/8"],["B","ADD",53,36,"3/8"],["B","ADD",54,36,"1/8"],["B","ADD",56,36,"1/8"],["B","ADD",57,36,"3/8"],["B","ADD",58,36,"1/8"],["B","ADD",60,36,"1/8"],["B","ADD",61,36,"3/8"],["B","ADD",62,36,"1/16"],["B","ADD",63,36,"-1/16"],["B","SCALE",36,"1/8"],["B","ADD",36,37,"-1"],["B","ADD",36,52,"-4"],["B","ADD",36,53,"10"],["B","ADD",36,54,"-26"],["B","ADD",36,55,"-6"],["B","ADD",36,56,"-4"],["B","ADD",36,57,"10"],["B","ADD",36,58,"-26"],["B","ADD",36,59,"-6"],["B","ADD",36,60,"-4"],["B","ADD",36,61,"10"],["B","ADD",36,62,"-24"],["B","ADD",36,63,"-10"],["B","IDLE_ONE",36,[12]],["B","ADD",36,63,"10"],["B","ADD",36,62,"24"],["B","ADD",36,61,"-10"],["B","ADD",36,60,"4"],["B","ADD",36,59,"6"],["B","ADD",36,58,"26"],["B","ADD",36,57,"-10"],["B","ADD",36,56,"4"],["B","ADD",36,55,"6"],["B","ADD",36,54,"26"],["B","ADD",36,53,"-10"],["B","ADD",36,52,"4"],["B","ADD",36,37,"1"],["B","SCALE",36,"8"],["B","ADD",63,36,"1/16"],["B","ADD",62,36,"-1/16"],["B","ADD",61,36,"-3/8"],["B","ADD",60,36,"-1/8"],["B","ADD",58,36,"-1/8"],["B","ADD",57,36,"-3/8"],["B","ADD",56,36,"-1/8"],["B","ADD",54,36,"-1/8"],["B","ADD",53,36,"-3/8"],["B","ADD",52,36,"-1/8"],["B","ADD",37,36,"-5/2"],["B","SWAP",36,37],["B","ADD",52,36,"-3/4"],["B","ADD",53,36,"-5/4"],["B","ADD",54,36,"-1/4"],["B","ADD",55,36,"-1/2"],["B","ADD",56,36,"-3/4"],["B","ADD",57,36,"-5/4"],["B","ADD",58,36,"-1/4"],["B","ADD",59,36,"-1/2"],["B","ADD",60,36,"-3/4"],["B","ADD",61,36,"-5/4"],["B","ADD",62,36,"-1/4"],["B","ADD",63,36,"-1/4"],["B","SCALE",36,"-1/2"],["B","ADD",36,37,"1/2"],["B","ADD",36,52,"1"],["B","ADD",36,53,"-3"],["B","ADD",36,54,"8"],["B","ADD",36,55,"2"],["B","ADD",36,56,"1"],["B","ADD",36,57,"-3"],["B","ADD",36,58,"8"],["B","ADD",36,59,"2"],["B","ADD",36,60,"1"],["B","ADD",36,61,"-3"],["B","ADD",36,62,"6"],["B","ADD",36,63,"2"],["B","ADD",52,37,"-7/4"],["B","ADD",53,37,"-11/4"],["B","ADD",54,37,"-1/2"],["B","ADD",55,37,"-5/4"],["B","ADD",56,37,"-7/4"],["B","ADD",57,37,"-11/4"],["B","ADD",58,37,"-1/2"],["B","ADD",59,37,"-5/4"],["B","ADD",60,37,"-7/4"],["B","ADD",61,37,"-11/4"],["B","ADD",62,37,"-3/4"],["B","ADD",63,37,"-1/4"],["B","SCALE",37,"1/2"],["B","ADD",37,52,"-1"],["B","ADD",37,53,"1"],["B","ADD",37,54,"-2"],["B","ADD",37,56,"-1"],["B","ADD",37,57,"1"],["B","ADD",37,58,"-2"],["B","ADD",37,60,"-1"],["B","ADD",37,61,"1"],["B","ADD",37,62,"-2"],["B","ADD",37,63,"-2"],["B","SCALE",37,"-1/2"],["B","ADD",37,36,"-1/2"],["B","ADD",36,37,"1"],["B","LAMBDA",36,1],["A","ADD",12,0,"1"],["A","ADD",13,0,"2"],["A","ADD",14,0,"2"],["A","ADD",15,0,"2"],["A","ADD",16,0,"2"],["A","ADD",17,0,"2"],["A","SCALE",0,"-1"],["A","ADD",30,18,"1"],["A","ADD",31,18,"2"],["A","ADD",32,18,"2"],["A","ADD",33,18,"2"],["A","ADD",34,18,"2"],["A","ADD",35,18,"2"],["A","SCALE",18,"-1"],["A","LAMBDA",12,1],["A","LAMBDA",30,-1],["A","SCALE",30,"-1"],["J",12,[12,0,18,30],[36,37,"-1","1/2"]],["A","LAMBDA",12,-1],["A","LAMBDA",30,1],["A","SCALE",30,"-1"],["A","ADD",0,12,"-1"],["A","ADD",18,30,"-1"],["A","SCALE",18,"-1"],["A","ADD",35,18,"-2"],["A","ADD",34,18,"-2"],["A","ADD",33,18,"-2"],["A","ADD",32,18,"-2"],["A","ADD",31,18,"-2"],["A","ADD",30,18,"-1"],["A","SCALE",0,"-1"],["A","ADD",17,0,"-2"],["A","ADD",16,0,"-2"],["A","ADD",15,0,"-2"],["A","ADD",14,0,"-2"],["A","ADD",13,0,"-2"],["A","ADD",12,0,"-1"],["B","LAMBDA",36,-1],["B","SCALE",37,"-2"],["B","ADD",37,63,"2"],["B","ADD",37,62,"2"],["B","ADD",37,61,"-1"],["B","ADD",37,60,"1"],["B","ADD",37,58,"2"],["B","ADD",37,57,"-1"],["B","ADD",37,56,"1"],["B","ADD",37,54,"2"],["B","ADD",37,53,"-1"],["B","ADD",37,52,"1"],["B","SCALE",37,"2"],["B","ADD",63,37,"1/4"],["B","ADD",62,37,"3/4"],["B","ADD",61,37,"11/4"],["B","ADD",60,37,"7/4"],["B","ADD",59,37,"5/4"],["B","ADD",58,37,"1/2"],["B","ADD",57,37,"11/4"],["B","ADD",56,37,"7/4"],["B","ADD",55,37,"5/4"],["B","ADD",54,37,"1/2"],["B","ADD",53,37,"11/4"],["B","ADD",52,37,"7/4"],["B","ADD",36,63,"-2"],["B","ADD",36,62,"-6"],["B","ADD",36,61,"3"],["B","ADD",36,60,"-1"],["B","ADD",36,59,"-2"],["B","ADD",36,58,"-8"],["B","ADD",36,57,"3"],["B","ADD",36,56,"-1"],["B","ADD",36,55,"-2"],["B","ADD",36,54,"-8"],["B","ADD",36,53,"3"],["B","ADD",36,52,"-1"],["B","ADD",36,37,"-1/2"],["B","SCALE",36,"-2"],["B","ADD",63,36,"1/4"],["B","ADD",62,36,"1/4"],["B","ADD",61,36,"5/4"],["B","ADD",60,36,"3/4"],["B","ADD",59,36,"1/2"],["B","ADD",58,36,"1/4"],["B","ADD",57,36,"5/4"],["B","ADD",56,36,"3/4"],["B","ADD",55,36,"1/2"],["B","ADD",54,36,"1/4"],["B","ADD",53,36,"5/4"],["B","ADD",52,36,"3/4"],["B","SWAP",36,37],["B","ADD",37,36,"7/4"],["B","ADD",52,36,"-7/16"],["B","ADD",53,36,"-9/16"],["B","ADD",54,36,"-1/16"],["B","ADD",55,36,"-3/8"],["B","ADD",56,36,"-7/16"],["B","ADD",57,36,"-9/16"],["B","ADD",58,36,"-1/16"],["B","ADD",59,36,"-3/8"],["B","ADD",60,36,"-1/8"],["B","ADD",61,36,"1/4"],["B","SCALE",36,"-1/4"],["B","ADD",36,52,"2"],["B","ADD",36,53,"-4"],["B","ADD",36,54,"10"],["B","ADD",36,55,"2"],["B","ADD",36,56,"2"],["B","ADD",36,57,"-4"],["B","ADD",36,58,"10"],["B","ADD",36,59,"2"],["B","ADD",36,60,"2"],["B","ADD",36,61,"-2"],["B","IDLE_ONE",36,[13]],["B","ADD",36,61,"2"],["B","ADD",36,60,"-2"],["B","ADD",36,59,"-2"],["B","ADD",36,58,"-10"],["B","ADD",36,57,"4"],["B","ADD",36,56,"-2"],["B","ADD",36,55,"-2"],["B","ADD",36,54,"-10"],["B","ADD",36,53,"4"],["B","ADD",36,52,"-2"],["B","SCALE",36,"-4"],["B","ADD",61,36,"-1/4"],["B","ADD",60,36,"1/8"],["B","ADD",59,36,"3/8"],["B","ADD",58,36,"1/16"],["B","ADD",57,36,"9/16"],["B","ADD",56,36,"7/16"],["B","ADD",55,36,"3/8"],["B","ADD",54,36,"1/16"],["B","ADD",53,36,"9/16"],["B","ADD",52,36,"7/16"],["B","ADD",37,36,"-7/4"],["B","ADD",37,36,"2"],["B","ADD",52,36,"-1/4"],["B","ADD",53,36,"-1/4"],["B","ADD",55,36,"-1/4"],["B","ADD",56,36,"-1/4"],["B","ADD",57,36,"-1/4"],["B","ADD",59,36,"-1/4"],["B","ADD",61,36,"1/2"],["B","ADD",36,37,"1"],["B","ADD",36,52,"4"],["B","ADD",36,53,"-10"],["B","ADD",36,54,"26"],["B","ADD",36,55,"6"],["B","ADD",36,56,"4"],["B","ADD",36,57,"-10"],["B","ADD",36,58,"26"],["B","ADD",36,59,"6"],["B","ADD",36,60,"2"],["B","ADD",36,61,"-6"],["B","IDLE_ONE",36,[13]],["B","ADD",36,61,"6"],["B","ADD",36,60,"-2"],["B","ADD",36,59,"-6"],["B","ADD",36,58,"-26"],["B","ADD",36,57,"10"],["B","ADD",36,56,"-4"],["B","ADD",36,55,"-6"],["B","ADD",36,54,"-26"],["B","ADD",36,53,"10"],["B","ADD",36,52,"-4"],["B","ADD",36,37,"-1"],["B","ADD",61,36,"-1/2"],["B","ADD",59,36,"1/4"],["B","ADD",57,36,"1/4"],["B","ADD",56,36,"1/4"],["B","ADD",55,36,"1/4"],["B","ADD",53,36,"1/4"],["B","ADD",52,36,"1/4"],["B","ADD",37,36,"-2"],["B","ADD",37,36,"2"],["B","ADD",52,36,"-1/4"],["B","ADD",53,36,"-1/4"],["B","ADD",55,36,"-1/4"],["B","ADD",56,36,"-1/4"],["B","ADD",57,36,"-1/4"],["B","ADD",59,36,"-1/4"],["B","ADD",60,36,"-1/4"],["B","ADD",61,36,"1/4"],["B","SCALE",36,"-1/2"],["B","ADD",36,37,"1/2"],["B","ADD",36,52,"-1"],["B","ADD",36,53,"1"],["B","ADD",36,54,"-2"],["B","ADD",36,56,"-1"],["B","ADD",36,57,"1"],["B","ADD",36,58,"-2"],["B","ADD",36,60,"-3"],["B","ADD",36,61,"1"],["B","ADD",52,37,"-3/4"],["B","ADD",53,37,"-5/4"],["B","ADD",54,37,"-1/4"],["B","ADD",55,37,"-1/2"],["B","ADD",56,37,"-3/4"],["B","ADD",57,37,"-5/4"],["B","ADD",58,37,"-1/4"],["B","ADD",59,37,"-1/2"],["B","ADD",60,37,"-1/4"],["B","ADD",61,37,"-1/4"],["B","SCALE",37,"-1/2"],["B","ADD",37,52,"-1"],["B","ADD",37,53,"3"],["B","ADD",37,54,"-8"],["B","ADD",37,55,"-2"],["B","ADD",37,56,"-1"],["B","ADD",37,57,"3"],["B","ADD",37,58,"-8"],["B","ADD",37,59,"-2"],["B","ADD",37,60,"-1"],["B","ADD",37,61,"1"],["B","SCALE",37,"1/2"],["B","ADD",37,36,"-1/2"],["B","ADD",36,37,"1"],["B","LAMBDA",36,1],["A","ADD",13,0,"1"],["A","ADD",14,0,"2"],["A","ADD",15,0,"2"],["A","ADD",16,0,"2"],["A","ADD",17,0,"2"],["A","SCALE",0,"-1"],["A","ADD",31,18,"1"],["A","ADD",32,18,"2"],["A","ADD",33,18,"2"],["A","ADD",34,18,"2"],["A","ADD",35,18,"2"],["A","SCALE",18,"-1"],["A","LAMBDA",13,1],["A","LAMBDA",31,-1],["A","SCALE",31,"-1"],["J",13,[13,0,18,31],[36,37,"-1","1/2"]],["A","LAMBDA",13,-1],["A","LAMBDA",31,1],["A","SCALE",31,"-1"],["A","ADD",0,13,"-1"],["A","ADD",18,31,"-1"],["A","SCALE",18,"-1"],["A","ADD",35,18,"-2"],["A","ADD",34,18,"-2"],["A","ADD",33,18,"-2"],["A","ADD",32,18,"-2"],["A","ADD",31,18,"-1"],["A","SCALE",0,"-1"],["A","ADD",17,0,"-2"],["A","ADD",16,0,"-2"],["A","ADD",15,0,"-2"],["A","ADD",14,0,"-2"],["A","ADD",13,0,"-1"],["B","LAMBDA",36,-1],["B","SCALE",37,"2"],["B","ADD",37,61,"-1"],["B","ADD",37,60,"1"],["B","ADD",37,59,"2"],["B","ADD",37,58,"8"],["B","ADD",37,57,"-3"],["B","ADD",37,56,"1"],["B","ADD",37,55,"2"],["B","ADD",37,54,"8"],["B","ADD",37,53,"-3"],["B","ADD",37,52,"1"],["B","SCALE",37,"-2"],["B","ADD",61,37,"1/4"],["B","ADD",60,37,"1/4"],["B","ADD",59,37,"1/2"],["B","ADD",58,37,"1/4"],["B","ADD",57,37,"5/4"],["B","ADD",56,37,"3/4"],["B","ADD",55,37,"1/2"],["B","ADD",54,37,"1/4"],["B","ADD",53,37,"5/4"],["B","ADD",52,37,"3/4"],["B","ADD",36,61,"-1"],["B","ADD",36,60,"3"],["B","ADD",36,58,"2"],["B","ADD",36,57,"-1"],["B","ADD",36,56,"1"],["B","ADD",36,54,"2"],["B","ADD",36,53,"-1"],["B","ADD",36,52,"1"],["B","ADD",36,37,"-1/2"],["B","SCALE",36,"-2"],["B","ADD",61,36,"-1/4"],["B","ADD",60,36,"1/4"],["B","ADD",59,36,"1/4"],["B","ADD",57,36,"1/4"],["B","ADD",56,36,"1/4"],["B","ADD",55,36,"1/4"],["B","ADD",53,36,"1/4"],["B","ADD",52,36,"1/4"],["B","ADD",37,36,"-2"],["B","ADD",36,52,"14"],["B","ADD",37,52,"-34"],["B","ADD",53,52,"-4"],["B","ADD",54,52,"-3/2"],["B","ADD",55,52,"1/2"],["B","ADD",56,52,"-1"],["B","ADD",57,52,"-4"],["B","ADD",58,52,"-1/2"],["B","ADD",59,52,"1"],["B","SCALE",52,"-1"],["B","ADD",52,36,"1"],["B","ADD",52,37,"1"],["B","ADD",52,53,"-6"],["B","ADD",52,54,"16"],["B","ADD",52,55,"4"],["B","ADD",52,56,"2"],["B","ADD",52,57,"-6"],["B","ADD",52,58,"14"],["B","ADD",52,59,"6"],["B","IDLE_ONE",52,[14]],["B","ADD",52,59,"-6"],["B","ADD",52,58,"-14"],["B","ADD",52,57,"6"],["B","ADD",52,56,"-2"],["B","ADD",52,55,"-4"],["B","ADD",52,54,"-16"],["B","ADD",52,53,"6"],["B","ADD",52,37,"-1"],["B","ADD",52,36,"-1"],["B","SCALE",52,"-1"],["B","ADD",59,52,"-1"],["B","ADD",58,52,"1/2"],["B","ADD",57,52,"4"],["B","ADD",56,52,"1"],["B","ADD",55,52,"-1/2"],["B","ADD",54,52,"3/2"],["B","ADD",53,52,"4"],["B","ADD",37,52,"34"],["B","ADD",36,52,"-14"],["B","ADD",37,36,"5/2"],["B","ADD",52,36,"1/8"],["B","ADD",53,36,"3/8"],["B","ADD",54,36,"1/8"],["B","ADD",56,36,"1/8"],["B","ADD",57,36,"3/8"],["B","ADD",58,36,"1/16"],["B","ADD",59,36,"-1/16"],["B","SCALE",36,"1/8"],["B","ADD",36,37,"-1"],["B","ADD",36,52,"-4"],["B","ADD",36,53,"10"],["B","ADD",36,54,"-26"],["B","ADD",36,55,"-6"],["B","ADD",36,56,"-4"],["B","ADD",36,57,"10"],["B","ADD",36,58,"-24"],["B","ADD",36,59,"-10"],["B","IDLE_ONE",36,[14]],["B","ADD",36,59,"10"],["B","ADD",36,58,"24"],["B","ADD",36,57,"-10"],["B","ADD",36,56,"4"],["B","ADD",36,55,"6"],["B","ADD",36,54,"26"],["B","ADD",36,53,"-10"],["B","ADD",36,52,"4"],["B","ADD",36,37,"1"],["B","SCALE",36,"8"],["B","ADD",59,36,"1/16"],["B","ADD",58,36,"-1/16"],["B","ADD",57,36,"-3/8"],["B","ADD",56,36,"-1/8"],["B","ADD",54,36,"-1/8"],["B","ADD",53,36,"-3/8"],["B","ADD",52,36,"-1/8"],["B","ADD",37,36,"-5/2"],["B","SWAP",36,37],["B","ADD",52,36,"-3/4"],["B","ADD",53,36,"-5/4"],["B","ADD",54,36,"-1/4"],["B","ADD",55,36,"-1/2"],["B","ADD",56,36,"-3/4"],["B","ADD",57,36,"-5/4"],["B","ADD",58,36,"-1/4"],["B","ADD",59,36,"-1/4"],["B","SCALE",36,"-1/2"],["B","ADD",36,37,"1/2"],["B","ADD",36,52,"1"],["B","ADD",36,53,"-3"],["B","ADD",36,54,"8"],["B","ADD",36,55,"2"],["B","ADD",36,56,"1"],["B","ADD",36,57,"-3"],["B","ADD",36,58,"6"],["B","ADD",36,59,"2"],["B","ADD",52,37,"-7/4"],["B","ADD",53,37,"-11/4"],["B","ADD",54,37,"-1/2"],["B","ADD",55,37,"-5/4"],["B","ADD",56,37,"-7/4"],["B","ADD",57,37,"-11/4"],["B","ADD",58,37,"-3/4"],["B","ADD",59,37,"-1/4"],["B","SCALE",37,"1/2"],["B","ADD",37,52,"-1"],["B","ADD",37,53,"1"],["B","ADD",37,54,"-2"],["B","ADD",37,56,"-1"],["B","ADD",37,57,"1"],["B","ADD",37,58,"-2"],["B","ADD",37,59,"-2"],["B","SCALE",37,"-1/2"],["B","ADD",37,36,"-1/2"],["B","ADD",36,37,"1"],["B","LAMBDA",36,1],["A","ADD",14,0,"1"],["A","ADD",15,0,"2"],["A","ADD",16,0,"2"],["A","ADD",17,0,"2"],["A","SCALE",0,"-1"],["A","ADD",32,18,"1"],["A","ADD",33,18,"2"],["A","ADD",34,18,"2"],["A","ADD",35,18,"2"],["A","SCALE",18,"-1"],["A","LAMBDA",14,1],["A","LAMBDA",32,-1],["A","SCALE",32,"-1"],["J",14,[14,0,18,32],[36,37,"-1","1/2"]],["A","LAMBDA",14,-1],["A","LAMBDA",32,1],["A","SCALE",32,"-1"],["A","ADD",0,14,"-1"],["A","ADD",18,32,"-1"],["A","SCALE",18,"-1"],["A","ADD",35,18,"-2"],["A","ADD",34,18,"-2"],["A","ADD",33,18,"-2"],["A","ADD",32,18,"-1"],["A","SCALE",0,"-1"],["A","ADD",17,0,"-2"],["A","ADD",16,0,"-2"],["A","ADD",15,0,"-2"],["A","ADD",14,0,"-1"],["B","LAMBDA",36,-1],["B","SCALE",37,"-2"],["B","ADD",37,59,"2"],["B","ADD",37,58,"2"],["B","ADD",37,57,"-1"],["B","ADD",37,56,"1"],["B","ADD",37,54,"2"],["B","ADD",37,53,"-1"],["B","ADD",37,52,"1"],["B","SCALE",37,"2"],["B","ADD",59,37,"1/4"],["B","ADD",58,37,"3/4"],["B","ADD",57,37,"11/4"],["B","ADD",56,37,"7/4"],["B","ADD",55,37,"5/4"],["B","ADD",54,37,"1/2"],["B","ADD",53,37,"11/4"],["B","ADD",52,37,"7/4"],["B","ADD",36,59,"-2"],["B","ADD",36,58,"-6"],["B","ADD",36,57,"3"],["B","ADD",36,56,"-1"],["B","ADD",36,55,"-2"],["B","ADD",36,54,"-8"],["B","ADD",36,53,"3"],["B","ADD",36,52,"-1"],["B","ADD",36,37,"-1/2"],["B","SCALE",36,"-2"],["B","ADD",59,36,"1/4"],["B","ADD",58,36,"1/4"],["B","ADD",57,36,"5/4"],["B","ADD",56,36,"3/4"],["B","ADD",55,36,"1/2"],["B","ADD",54,36,"1/4"],["B","ADD",53,36,"5/4"],["B","ADD",52,36,"3/4"],["B","SWAP",36,37],["B","ADD",37,36,"7/4"],["B","ADD",52,36,"-7/16"],["B","ADD",53,36,"-9/16"],["B","ADD",54,36,"-1/16"],["B","ADD",55,36,"-3/8"],["B","ADD",56,36,"-1/8"],["B","ADD",57,36,"1/4"],["B","SCALE",36,"-1/4"],["B","ADD",36,52,"2"],["B","ADD",36,53,"-4"],["B","ADD",36,54,"10"],["B","ADD",36,55,"2"],["B","ADD",36,56,"2"],["B","ADD",36,57,"-2"],["B","IDLE_ONE",36,[15]],["B","ADD",36,57,"2"],["B","ADD",36,56,"-2"],["B","ADD",36,55,"-2"],["B","ADD",36,54,"-10"],["B","ADD",36,53,"4"],["B","ADD",36,52,"-2"],["B","SCALE",36,"-4"],["B","ADD",57,36,"-1/4"],["B","ADD",56,36,"1/8"],["B","ADD",55,36,"3/8"],["B","ADD",54,36,"1/16"],["B","ADD",53,36,"9/16"],["B","ADD",52,36,"7/16"],["B","ADD",37,36,"-7/4"],["B","ADD",37,36,"2"],["B","ADD",52,36,"-1/4"],["B","ADD",53,36,"-1/4"],["B","ADD",55,36,"-1/4"],["B","ADD",57,36,"1/2"],["B","ADD",36,37,"1"],["B","ADD",36,52,"4"],["B","ADD",36,53,"-10"],["B","ADD",36,54,"26"],["B","ADD",36,55,"6"],["B","ADD",36,56,"2"],["B","ADD",36,57,"-6"],["B","IDLE_ONE",36,[15]],["B","ADD",36,57,"6"],["B","ADD",36,56,"-2"],["B","ADD",36,55,"-6"],["B","ADD",36,54,"-26"],["B","ADD",36,53,"10"],["B","ADD",36,52,"-4"],["B","ADD",36,37,"-1"],["B","ADD",57,36,"-1/2"],["B","ADD",55,36,"1/4"],["B","ADD",53,36,"1/4"],["B","ADD",52,36,"1/4"],["B","ADD",37,36,"-2"],["B","ADD",37,36,"2"],["B","ADD",52,36,"-1/4"],["B","ADD",53,36,"-1/4"],["B","ADD",55,36,"-1/4"],["B","ADD",56,36,"-1/4"],["B","ADD",57,36,"1/4"],["B","SCALE",36,"-1/2"],["B","ADD",36,37,"1/2"],["B","ADD",36,52,"-1"],["B","ADD",36,53,"1"],["B","ADD",36,54,"-2"],["B","ADD",36,56,"-3"],["B","ADD",36,57,"1"],["B","ADD",52,37,"-3/4"],["B","ADD",53,37,"-5/4"],["B","ADD",54,37,"-1/4"],["B","ADD",55,37,"-1/2"],["B","ADD",56,37,"-1/4"],["B","ADD",57,37,"-1/4"],["B","SCALE",37,"-1/2"],["B","ADD",37,52,"-1"],["B","ADD",37,53,"3"],["B","ADD",37,54,"-8"],["B","ADD",37,55,"-2"],["B","ADD",37,56,"-1"],["B","ADD",37,57,"1"],["B","SCALE",37,"1/2"],["B","ADD",37,36,"-1/2"],["B","ADD",36,37,"1"],["B","LAMBDA",36,1],["A","ADD",15,0,"1"],["A","ADD",16,0,"2"],["A","ADD",17,0,"2"],["A","SCALE",0,"-1"],["A","ADD",33,18,"1"],["A","ADD",34,18,"2"],["A","ADD",35,18,"2"],["A","SCALE",18,"-1"],["A","LAMBDA",15,1],["A","LAMBDA",33,-1],["A","SCALE",33,"-1"],["J",15,[15,0,18,33],[36,37,"-1","1/2"]],["A","LAMBDA",15,-1],["A","LAMBDA",33,1],["A","SCALE",33,"-1"],["A","ADD",0,15,"-1"],["A","ADD",18,33,"-1"],["A","SCALE",18,"-1"],["A","ADD",35,18,"-2"],["A","ADD",34,18,"-2"],["A","ADD",33,18,"-1"],["A","SCALE",0,"-1"],["A","ADD",17,0,"-2"],["A","ADD",16,0,"-2"],["A","ADD",15,0,"-1"],["B","LAMBDA",36,-1],["B","SCALE",37,"2"],["B","ADD",37,57,"-1"],["B","ADD",37,56,"1"],["B","ADD",37,55,"2"],["B","ADD",37,54,"8"],["B","ADD",37,53,"-3"],["B","ADD",37,52,"1"],["B","SCALE",37,"-2"],["B","ADD",57,37,"1/4"],["B","ADD",56,37,"1/4"],["B","ADD",55,37,"1/2"],["B","ADD",54,37,"1/4"],["B","ADD",53,37,"5/4"],["B","ADD",52,37,"3/4"],["B","ADD",36,57,"-1"],["B","ADD",36,56,"3"],["B","ADD",36,54,"2"],["B","ADD",36,53,"-1"],["B","ADD",36,52,"1"],["B","ADD",36,37,"-1/2"],["B","SCALE",36,"-2"],["B","ADD",57,36,"-1/4"],["B","ADD",56,36,"1/4"],["B","ADD",55,36,"1/4"],["B","ADD",53,36,"1/4"],["B","ADD",52,36,"1/4"],["B","ADD",37,36,"-2"],["B","ADD",36,52,"14"],["B","ADD",37,52,"-34"],["B","ADD",53,52,"-4"],["B","ADD",54,52,"-1/2"],["B","ADD",55,52,"1"],["B","SCALE",52,"-1"],["B","ADD",52,36,"1"],["B","ADD",52,37,"1"],["B","ADD",52,53,"-6"],["B","ADD",52,54,"14"],["B","ADD",52,55,"6"],["B","IDLE_ONE",52,[16]],["B","ADD",52,55,"-6"],["B","ADD",52,54,"-14"],["B","ADD",52,53,"6"],["B","ADD",52,37,"-1"],["B","ADD",52,36,"-1"],["B","SCALE",52,"-1"],["B","ADD",55,52,"-1"],["B","ADD",54,52,"1/2"],["B","ADD",53,52,"4"],["B","ADD",37,52,"34"],["B","ADD",36,52,"-14"],["B","ADD",37,36,"5/2"],["B","ADD",52,36,"1/8"],["B","ADD",53,36,"3/8"],["B","ADD",54,36,"1/16"],["B","ADD",55,36,"-1/16"],["B","SCALE",36,"1/8"],["B","ADD",36,37,"-1"],["B","ADD",36,52,"-4"],["B","ADD",36,53,"10"],["B","ADD",36,54,"-24"],["B","ADD",36,55,"-10"],["B","IDLE_ONE",36,[16]],["B","ADD",36,55,"10"],["B","ADD",36,54,"24"],["B","ADD",36,53,"-10"],["B","ADD",36,52,"4"],["B","ADD",36,37,"1"],["B","SCALE",36,"8"],["B","ADD",55,36,"1/16"],["B","ADD",54,36,"-1/16"],["B","ADD",53,36,"-3/8"],["B","ADD",52,36,"-1/8"],["B","ADD",37,36,"-5/2"],["B","SWAP",36,37],["B","ADD",52,36,"-3/4"],["B","ADD",53,36,"-5/4"],["B","ADD",54,36,"-1/4"],["B","ADD",55,36,"-1/4"],["B","SCALE",36,"-1/2"],["B","ADD",36,37,"1/2"],["B","ADD",36,52,"1"],["B","ADD",36,53,"-3"],["B","ADD",36,54,"6"],["B","ADD",36,55,"2"],["B","ADD",52,37,"-7/4"],["B","ADD",53,37,"-11/4"],["B","ADD",54,37,"-3/4"],["B","ADD",55,37,"-1/4"],["B","SCALE",37,"1/2"],["B","ADD",37,52,"-1"],["B","ADD",37,53,"1"],["B","ADD",37,54,"-2"],["B","ADD",37,55,"-2"],["B","SCALE",37,"-1/2"],["B","ADD",37,36,"-1/2"],["B","ADD",36,37,"1"],["B","LAMBDA",36,1],["A","ADD",16,0,"1"],["A","ADD",17,0,"2"],["A","SCALE",0,"-1"],["A","ADD",34,18,"1"],["A","ADD",35,18,"2"],["A","SCALE",18,"-1"],["A","LAMBDA",16,1],["A","LAMBDA",34,-1],["A","SCALE",34,"-1"],["J",16,[16,0,18,34],[36,37,"-1","1/2"]],["A","LAMBDA",16,-1],["A","LAMBDA",34,1],["A","SCALE",34,"-1"],["A","ADD",0,16,"-1"],["A","ADD",18,34,"-1"],["A","SCALE",18,"-1"],["A","ADD",35,18,"-2"],["A","ADD",34,18,"-1"],["A","SCALE",0,"-1"],["A","ADD",17,0,"-2"],["A","ADD",16,0,"-1"],["B","LAMBDA",36,-1],["B","SCALE",37,"-2"],["B","ADD",37,55,"2"],["B","ADD",37,54,"2"],["B","ADD",37,53,"-1"],["B","ADD",37,52,"1"],["B","SCALE",37,"2"],["B","ADD",55,37,"1/4"],["B","ADD",54,37,"3/4"],["B","ADD",53,37,"11/4"],["B","ADD",52,37,"7/4"],["B","ADD",36,55,"-2"],["B","ADD",36,54,"-6"],["B","ADD",36,53,"3"],["B","ADD",36,52,"-1"],["B","ADD",36,37,"-1/2"],["B","SCALE",36,"-2"],["B","ADD",55,36,"1/4"],["B","ADD",54,36,"1/4"],["B","ADD",53,36,"5/4"],["B","ADD",52,36,"3/4"],["B","SWAP",36,37],["B","ADD",37,36,"7/4"],["B","ADD",52,36,"-1/8"],["B","ADD",53,36,"1/4"],["B","SCALE",36,"-1/4"],["B","ADD",36,37,"-1"],["B","ADD",36,53,"4"],["B","IDLE_ONE",36,[17]],["B","ADD",36,53,"-4"],["B","ADD",36,37,"1"],["B","SCALE",36,"-4"],["B","ADD",53,36,"-1/4"],["B","ADD",52,36,"1/8"],["B","ADD",37,36,"-7/4"],["B","ADD",37,36,"5/3"],["B","ADD",52,36,"-1/6"],["B","ADD",53,36,"1/6"],["B","SCALE",36,"-1/3"],["B","ADD",36,37,"1"],["B","ADD",36,52,"2"],["B","ADD",36,53,"-6"],["B","IDLE_ONE",36,[17]],["B","ADD",36,53,"6"],["B","ADD",36,52,"-2"],["B","ADD",36,37,"-1"],["B","SCALE",36,"-3"],["B","ADD",53,36,"-1/6"],["B","ADD",52,36,"1/6"],["B","ADD",37,36,"-5/3"],["B","ADD",37,36,"2"],["B","ADD",52,36,"-1/4"],["B","ADD",53,36,"1/4"],["B","SCALE",36,"-1/2"],["B","ADD",36,37,"1/2"],["B","ADD",36,52,"-3"],["B","ADD",36,53,"1"],["B","ADD",52,37,"-1/4"],["B","ADD",53,37,"-1/4"],["B","SCALE",37,"-1/2"],["B","ADD",37,52,"-1"],["B","ADD",37,53,"1"],["B","SCALE",37,"1/2"],["B","ADD",37,36,"-1/2"],["B","ADD",36,37,"1"],["B","LAMBDA",36,1],["A","ADD",17,0,"1"],["A","SCALE",0,"-1"],["A","ADD",35,18,"1"],["A","SCALE",18,"-1"],["A","LAMBDA",17,1],["A","LAMBDA",35,-1],["A","SCALE",35,"-1"],["J",17,[17,0,18,35],[36,37,"-1","1/2"]],["A","LAMBDA",17,-1],["A","LAMBDA",35,1],["A","SCALE",35,"-1"],["A","ADD",0,17,"-1"],["A","ADD",18,35,"-1"],["A","SCALE",18,"-1"],["A","ADD",35,18,"-1"],["A","SCALE",0,"-1"],["A","ADD",17,0,"-1"],["A","LAMBDA",0,-1],["A","LAMBDA",1,-1],["A","LAMBDA",2,-1],["A","LAMBDA",3,-1],["A","LAMBDA",4,-1],["A","LAMBDA",5,-1],["A","LAMBDA",6,-1],["A","LAMBDA",7,-1],["A","LAMBDA",8,-1],["A","LAMBDA",9,-1],["A","LAMBDA",10,-1],["A","LAMBDA",11,-1],["A","LAMBDA",12,-1],["A","LAMBDA",13,-1],["A","LAMBDA",14,-1],["A","LAMBDA",15,-1],["A","LAMBDA",16,-1],["A","LAMBDA",17,-1],["A","LAMBDA",18,-1],["A","LAMBDA",19,-1],["A","LAMBDA",20,-1],["A","LAMBDA",21,-1],["A","LAMBDA",22,-1],["A","LAMBDA",23,-1],["A","LAMBDA",24,-1],["A","LAMBDA",25,-1],["A","LAMBDA",26,-1],["A","LAMBDA",27,-1],["A","LAMBDA",28,-1],["A","LAMBDA",29,-1],["A","LAMBDA",30,-1],["A","LAMBDA",31,-1],["A","LAMBDA",32,-1],["A","LAMBDA",33,-1],["A","LAMBDA",34,-1],["A","LAMBDA",35,-1],["B","LAMBDA",36,-1],["B","SCALE",37,"2"],["B","ADD",37,53,"-1"],["B","ADD",37,52,"1"],["B","SCALE",37,"-2"],["B","ADD",53,37,"1/4"],["B","ADD",52,37,"1/4"],["B","ADD",36,53,"-1"],["B","ADD",36,52,"3"],["B","ADD",36,37,"-1/2"],["B","SCALE",36,"-2"],["B","ADD",53,36,"-1/4"],["B","ADD",52,36,"1/4"],["B","ADD",37,36,"-2"],["B","LAMBDA",36,-1],["B","LAMBDA",37,-1],["B","LAMBDA",38,-1],["B","LAMBDA",39,-1],["B","LAMBDA",40,-1],["B","LAMBDA",41,-1],["B","LAMBDA",42,-1],["B","LAMBDA",43,-1],["B","LAMBDA",44,-1],["B","LAMBDA",45,-1],["B","LAMBDA",46,-1],["B","LAMBDA",47,-1],["B","LAMBDA",48,-1],["B","LAMBDA",49,-1],["B","LAMBDA",50,-1],["B","LAMBDA",51,-1],["B","LAMBDA",52,-1],["B","LAMBDA",53,-1],["B","LAMBDA",54,-1],["B","LAMBDA",55,-1],["B","LAMBDA",56,-1],["B","LAMBDA",57,-1],["B","LAMBDA",58,-1],["B","LAMBDA",59,-1],["B","LAMBDA",60,-1],["B","LAMBDA",61,-1],["B","LAMBDA",62,-1],["B","LAMBDA",63,-1],["B","LAMBDA",64,-1],["B","LAMBDA",65,-1],["B","LAMBDA",66,-1],["B","LAMBDA",67,-1]],"ops_note":"QSELF(x, k): R[x] *= q^k, one paid rank-1 job on one register (new op; not in the retained alphabet).; source interval457..575 replaced by a three-QUERY even-basis factorization; no QSELF"} \ No newline at end of file diff --git a/research/p104-two-blocker-exclusion/vendor/inputs/RESULT.json b/research/p104-two-blocker-exclusion/vendor/inputs/RESULT.json new file mode 100644 index 0000000000..59ab2af00f --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/inputs/RESULT.json @@ -0,0 +1,1561 @@ +{ + "adapter": { + "adapted_sha256": { + "check_odd_partial_admission.py": "fb167cff1e672c33cfe63d4bdcaae07c876f1f711d2533cc35db295b2fe61622", + "check_odd_precision.py": "94be27f8f66981bddb750553f892976c452561df721be766d9ef90fb73e70d9d", + "emit_odd_type_ab.py": "6fd9f61f9ba6c726524d1a585d0201b0eac61829ccae6be598f0f0fc1cb64f1a" + }, + "edits": [ + { + "file": "emit_odd_type_ab.py", + "new": "invoice=json.loads((root/\"COHORT-PRICE.json\").read_text())", + "old": "invoice=next(x for x in json.loads((root/\"SHORT-CALLER-RAW-PRICE.json\").read_text())[\"rows\"] if tuple(x[\"shape\"])==shape)" + }, + { + "file": "check_odd_partial_admission.py", + "new": "actual_native=ind.native(w)\nassert actual_native==N and not N[\"bad_inputs\"], \"Fresh complete native inventory and arbitrary-input adjoint\"", + "old": "previous=json.loads((root/\"SHORT-ADMISSION-PARTIAL.json\").read_text())\nassert previous[\"native_sha256\"]==digest and not N[\"bad_inputs\"]" + }, + { + "file": "check_odd_partial_admission.py", + "new": "claim=Q(\".003642408496869\")", + "old": "claim=Q(\".00363797977\")" + }, + { + "file": "check_odd_partial_admission.py", + "new": "tested=claim+Q(7,10**17)\nwhile tested>=Q(reference[\"raw_bracket\"][0]):\n tested=claim+(tested-claim)/10", + "old": "tested=claim+Q(7,10**17)" + }, + { + "file": "check_odd_partial_admission.py", + "new": "g=gate(invoice,claim,tested,*bracket,r[\"gate\"][\"BIT_pin\"])\ntry:\n gate(invoice,claim,Q(bracket[0]),*bracket,r[\"gate\"][\"BIT_pin\"])\nexcept AssertionError:\n crossing_probe_rejected=True\nelse:\n raise AssertionError(\"Probe at lower crossing unexpectedly accepted\")", + "old": "g=gate(invoice,claim,tested,*bracket,r[\"gate\"][\"BIT_pin\"])" + }, + { + "file": "check_odd_partial_admission.py", + "new": "\"crossing_probe_rejected\":crossing_probe_rejected,\"scope\":\"Reuse exact same native word all-column adjoint;", + "old": "\"scope\":\"Reuse exact same native word all-column adjoint;" + }, + { + "file": "check_odd_precision.py", + "new": "", + "old": "previous=json.loads((root/\"SHORT-PRECISION.json\").read_text())" + }, + { + "file": "check_odd_precision.py", + "new": "assert grid_receipt[\"caller_sha256\"]==sha256(cpath.read_bytes()).hexdigest()", + "old": "assert previous[\"native_sha256\"]==sha and grid_receipt[\"caller_sha256\"]==sha256(cpath.read_bytes()).hexdigest()" + }, + { + "file": "check_odd_precision.py", + "new": "wg=grid.word_run(w, frac=25)\nwp,wr=env.native_envelope(w)\nwg=json.loads(json.dumps(wg,default=str));wr=json.loads(json.dumps(wr,default=str))\nassert wg==r[\"precision\"][\"word\"] and wr==r[\"precision\"][\"rounded_native\"], \"Fresh changed-native grid and envelope\"", + "old": "wg=previous[\"native_grid\"]\nwr=previous[\"rounded_native\"]\nwp={key:(Q(v[\"exact\"]),v[\"witness\"]) for key,v in wr[\"bounds\"].items()}" + } + ] + }, + "caller_sha256": "255d89f38cd45e38e5770f559bc43dc217e989032359768cdc7e8cdfd64b47bc", + "catalogue": [ + { + "catalogue_digest": "028f9f70bb24b83c4540e7e9b9b0e7aa1b37fe20fa05a79fb53c933e2e0edb43", + "catalogue_size": 3038, + "checked_maps": 1000, + "distinct_helper_maps": 186, + "distinct_paid_maps": 2953, + "exact_recipe_digest": "b9cdcbe051edca0b1fb57ede0bc0ba3c8614a4586d18b8946141fc9030ca731e", + "main_boundary_digest": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945", + "main_boundary_pairs": 0, + "phase_control_rejected": true, + "scope": "Complete signed Pauli action plus exact Gaussian global phase; for Clifford maps these determine every matrix column. Generic tensor-product and physical grammar application is written in the review. No random-field substitution.", + "slice_start": 0, + "slice_stop": 1000, + "status": "PASS_CURRENT_NATIVE_CATALOGUE_SLICE", + "word_sha256": "2b9b9712addc38f441b434e8b2eca0cfefe5b54fdc1e174beed7f0c3435fa42d" + }, + { + "catalogue_digest": "028f9f70bb24b83c4540e7e9b9b0e7aa1b37fe20fa05a79fb53c933e2e0edb43", + "catalogue_size": 3038, + "checked_maps": 1000, + "distinct_helper_maps": 186, + "distinct_paid_maps": 2953, + "exact_recipe_digest": "3e70bf7c9c05d1194c607367fe8e874627d3e2a4ac5a995454b53232f6466859", + "main_boundary_digest": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945", + "main_boundary_pairs": 0, + "phase_control_rejected": true, + "scope": "Complete signed Pauli action plus exact Gaussian global phase; for Clifford maps these determine every matrix column. Generic tensor-product and physical grammar application is written in the review. No random-field substitution.", + "slice_start": 1000, + "slice_stop": 2000, + "status": "PASS_CURRENT_NATIVE_CATALOGUE_SLICE", + "word_sha256": "2b9b9712addc38f441b434e8b2eca0cfefe5b54fdc1e174beed7f0c3435fa42d" + }, + { + "catalogue_digest": "028f9f70bb24b83c4540e7e9b9b0e7aa1b37fe20fa05a79fb53c933e2e0edb43", + "catalogue_size": 3038, + "checked_maps": 1038, + "distinct_helper_maps": 186, + "distinct_paid_maps": 2953, + "exact_recipe_digest": "b4a07ce5e456bdc9a98005dc01b779018c10b81426f033d00a7f3a5a881e288f", + "main_boundary_digest": "ad959887c990b8862a0e60db3f53d5195a1c9d667c1593f0101adc8db18f27fa", + "main_boundary_pairs": 104, + "phase_control_rejected": true, + "scope": "Complete signed Pauli action plus exact Gaussian global phase; for Clifford maps these determine every matrix column. Generic tensor-product and physical grammar application is written in the review. No random-field substitution.", + "slice_start": 2000, + "slice_stop": 3038, + "status": "PASS_CURRENT_NATIVE_CATALOGUE_SLICE", + "word_sha256": "2b9b9712addc38f441b434e8b2eca0cfefe5b54fdc1e174beed7f0c3435fa42d" + } + ], + "checks": { + "ODD-8X9-APPLICATION-CHECKS.json": { + "assumptions": [ + "native_all_columns", + "owned_erasure", + "compiler", + "precision_tape", + "analytic_recovery" + ], + "caller_sha256": "255d89f38cd45e38e5770f559bc43dc217e989032359768cdc7e8cdfd64b47bc", + "candidate": "3642408496869/1000000000000000", + "catalogue": [ + { + "catalogue_digest": "028f9f70bb24b83c4540e7e9b9b0e7aa1b37fe20fa05a79fb53c933e2e0edb43", + "catalogue_size": 3038, + "checked_maps": 1000, + "distinct_helper_maps": 186, + "distinct_paid_maps": 2953, + "exact_recipe_digest": "b9cdcbe051edca0b1fb57ede0bc0ba3c8614a4586d18b8946141fc9030ca731e", + "log_sha256": "3daf4f7ba82d68bd4ce6bb6a00bf5ed332ea96ace58b4447e0aab12e30c1f400", + "main_boundary_digest": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945", + "main_boundary_pairs": 0, + "phase_control_rejected": true, + "scope": "Complete signed Pauli action plus exact Gaussian global phase; for Clifford maps these determine every matrix column. Generic tensor-product and physical grammar application is written in the review. No random-field substitution.", + "slice_start": 0, + "slice_stop": 1000, + "status": "PASS_CURRENT_NATIVE_CATALOGUE_SLICE", + "word_sha256": "2b9b9712addc38f441b434e8b2eca0cfefe5b54fdc1e174beed7f0c3435fa42d" + }, + { + "catalogue_digest": "028f9f70bb24b83c4540e7e9b9b0e7aa1b37fe20fa05a79fb53c933e2e0edb43", + "catalogue_size": 3038, + "checked_maps": 1000, + "distinct_helper_maps": 186, + "distinct_paid_maps": 2953, + "exact_recipe_digest": "3e70bf7c9c05d1194c607367fe8e874627d3e2a4ac5a995454b53232f6466859", + "log_sha256": "055e1da50f6cd66cd6f52e7faa0fa2ff64beffa5a6c3b0ad3f8706359392d3be", + "main_boundary_digest": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945", + "main_boundary_pairs": 0, + "phase_control_rejected": true, + "scope": "Complete signed Pauli action plus exact Gaussian global phase; for Clifford maps these determine every matrix column. Generic tensor-product and physical grammar application is written in the review. No random-field substitution.", + "slice_start": 1000, + "slice_stop": 2000, + "status": "PASS_CURRENT_NATIVE_CATALOGUE_SLICE", + "word_sha256": "2b9b9712addc38f441b434e8b2eca0cfefe5b54fdc1e174beed7f0c3435fa42d" + }, + { + "catalogue_digest": "028f9f70bb24b83c4540e7e9b9b0e7aa1b37fe20fa05a79fb53c933e2e0edb43", + "catalogue_size": 3038, + "checked_maps": 1038, + "distinct_helper_maps": 186, + "distinct_paid_maps": 2953, + "exact_recipe_digest": "b4a07ce5e456bdc9a98005dc01b779018c10b81426f033d00a7f3a5a881e288f", + "log_sha256": "70969bc8680034d3041f1c94b8a02f0b2c0db793003c526caf9f68852086cdd7", + "main_boundary_digest": "ad959887c990b8862a0e60db3f53d5195a1c9d667c1593f0101adc8db18f27fa", + "main_boundary_pairs": 104, + "phase_control_rejected": true, + "scope": "Complete signed Pauli action plus exact Gaussian global phase; for Clifford maps these determine every matrix column. Generic tensor-product and physical grammar application is written in the review. No random-field substitution.", + "slice_start": 2000, + "slice_stop": 3038, + "status": "PASS_CURRENT_NATIVE_CATALOGUE_SLICE", + "word_sha256": "2b9b9712addc38f441b434e8b2eca0cfefe5b54fdc1e174beed7f0c3435fa42d" + } + ], + "fixed_tape_counts": { + "H": 16502900000000000000000, + "Kstar_bits": 14093, + "actual_ambient": 145, + "caller_odd_scale": 675, + "caller_sha256": "255d89f38cd45e38e5770f559bc43dc217e989032359768cdc7e8cdfd64b47bc", + "common_grid": { + "fractional": "p+D", + "signed_width": "p+h+2D+3", + "temp_padding": 26 + }, + "compiler_ambient_cap": 153, + "context_bound_bits": 14104, + "context_c": 2362, + "elementary_records_per_map_upper": 85264, + "elementary_records_upper": 25431181696, + "log_power": 2236, + "max_scalar_numerator_bits": 24, + "monomial_map_slots": 298264, + "native_invocations": 17, + "native_sha256": "9557c4682056ab7cc7cda89aa73865bef0e3948cc10b3c3061b0a944af05b96a", + "owned_banks_per_raw_occurrence": 867, + "scalar_macro_inputs": { + "caller": 117856, + "conversions": 58216, + "native": 1161423 + }, + "scalar_services_upper": 42799840, + "scalar_steps_coefficient": 44878885027840, + "scope": "Exact finite-cost and common-format substitutions in the selected #7000 conditional application proof, using the conservative primitive movement and scalar constants there. The premise is the complete signed native/physical binding and retained compiler, BIT, stock, and outer contracts. This script counts the raw occurrence, not an enumerated top-level compiled multiplier.", + "tested_claim": "3642408496869/1000000000000000" + }, + "native_archive_sha256": "2b9b9712addc38f441b434e8b2eca0cfefe5b54fdc1e174beed7f0c3435fa42d", + "native_canonical_sha256": "9557c4682056ab7cc7cda89aa73865bef0e3948cc10b3c3061b0a944af05b96a", + "numeric_gate": { + "BIT_margin": "12428150313093/100000000000000000", + "BIT_pin": "376669/100000000", + "H": "16502900000000000000000", + "alpha": [ + 0.9999999999999997, + 0.9999999999999997 + ], + "claim": "3642408496869/1000000000000000", + "compiler_gap": "1/100000000000000000", + "delta": [ + 0.9019663367095151, + 0.9019663367095151 + ], + "derivative_upper": -381949.8486859147, + "gamma": [ + 0.9408986995419518, + 0.9408986995419518 + ], + "input_lift": { + "derivative_upper_on_required_interval": "-2299831290525933154178526076272396899996972093654613095735772838275432653960006518819/2500000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "interval_kappa_cap": "376669/100000000", + "margins": { + "3642408496869/1000000000000000": [ + "124275106365520551379855848850723162292503069300292278027520160547922417998319/100000000000000000000000000000000000000000000000000000000000000000000000000000000", + "124275106365520551379855848850723162292503069300292278027520160547922418000243/100000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "364240849686907/100000000000000000": [ + "124275106365522837880548224256348648322779138259472078906655111790416942642193/100000000000000000000000000000000000000000000000000000000000000000000000000000000", + "124275106365522837880548224256348648322779138259472078906655111790416942644151/100000000000000000000000000000000000000000000000000000000000000000000000000000000" + ] + }, + "source_BIT_wide_crude_bound_would_be": "-2299831290525933154178526076272396899996972093654613095735772838275432653960006518819/2500000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + }, + "minimum_log_power": 2235, + "moment_margin_float": { + "364240849686907/100000000000000000": [ + 9.584082989012143e-11, + 9.584082989012143e-11 + ], + "36424084968693169933964196366183/10000000000000000000000000000000000": [ + 1.5011073530614094e-29, + 1.5011073530614094e-29 + ], + "4553010621086646241745524545773/1250000000000000000000000000000000": [ + -2.379191929405633e-29, + -2.379191929405633e-29 + ] + }, + "moment_margins": { + "364240849686907/100000000000000000": [ + "2396020747253035581302553685786103857610081739390219623253277840874727/25000000000000000000000000000000000000000000000000000000000000000000000000000000", + "239602074725303558130255368578610385761008173939021962325327785059817/2500000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "36424084968693169933964196366183/10000000000000000000000000000000000": [ + "187638419132676185812036537536839420100383559531923/12500000000000000000000000000000000000000000000000000000000000000000000000000000", + "750553676530704743248146150147357680401534257485899/50000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "4553010621086646241745524545773/1250000000000000000000000000000000": [ + "-475838385881126595975213826899193397895189328050629/20000000000000000000000000000000000000000000000000000000000000000000000000000000", + "-2379191929405632979876069134495966989475946600991499/100000000000000000000000000000000000000000000000000000000000000000000000000000000" + ] + }, + "outer": { + "BIT_just_below_effective_rejected": true, + "functional_count": 4, + "minimum_margin": "1/1000000000000000000", + "strict_count": 54 + }, + "raw_bracket": [ + "36424084968693169933964196366183/10000000000000000000000000000000000", + "4553010621086646241745524545773/1250000000000000000000000000000000" + ], + "tested": "364240849686907/100000000000000000", + "written_log_power": 2236 + }, + "physical_binding": { + "ambient": 145, + "complete_paid_position_digest": "0324229f132f6f1f5a8d8fbb49d090a2db0d3090edf9e4b9ca55919fd8432424", + "fresh_helpers": 18564, + "idle_uses": 3392, + "lambda_uses": 11280, + "native_calls": 17, + "native_contact_boundaries": 13600, + "native_public": 1492, + "nonzero_boundary_translations": 13600, + "paid": { + "1": 68265, + "16": 416, + "2": 14518, + "24": 416, + "3": 14059, + "32": 416, + "4": 3808, + "40": 416, + "48": 416, + "5": 5797, + "56": 416, + "6": 272, + "64": 208, + "7": 187, + "8": 758, + "9": 32 + }, + "paid_positions": 110400, + "phase_record_digest": "586ab7499fb677afdd83c397ea0b6d3b25f73ea6cdfa1ec95dd68adccff935ad", + "productive_fields": 22308, + "query_uses": 384, + "rank_surplus": 1424, + "reserved_native_banks": 867, + "reserved_serial_query_lambda_bank": 1, + "targets": { + "1": 272, + "137": 208, + "17": 416, + "2": 340, + "25": 416, + "3": 799, + "33": 416, + "4": 3706, + "41": 416, + "49": 416, + "5": 1258, + "57": 416, + "6": 731, + "65": 416, + "7": 306, + "73": 208, + "8": 595, + "9": 10973 + } + }, + "scope": "Conditional component application to the exact 8+9 source with the selected completed BIT predecessor and inherited five assumptions. Checks every normalized endpoint, every paid/helper nested chart map up to exact signed Pauli and absolute phase, caller occurrence/phase, precision, finite scalar and route bounds, and numeric gates. Does not run a compiled Turing machine, select an upstream frontier, or claim human/formal review.", + "source_unit_ordinary": { + "all_caller_scalar_surcharge": 2248928, + "caller_items": { + "A": { + "envelope": 102076416, + "field_boundary": 89856, + "fused_routes": 0, + "idle_routes": 170112000, + "output_routes": 213120000, + "query_routes": 1152000, + "thin": 6144 + }, + "B": { + "envelope": 35730432, + "field_boundary": 7488, + "fused_routes": 1168000, + "idle_routes": 18016000, + "output_routes": 17760000, + "query_routes": 0, + "thin": 0 + } + }, + "caller_total": 559238336, + "charged_caller_odd_conversions": 479232, + "conservative_total": 778867208, + "init_clear_allowance": 216, + "lambda_paid_rank1_would_reduce_S_by": 11280, + "lambda_second_charge": 11280000, + "margin_to_billion": 221132792, + "odd_divisions": { + "ADD": 5365, + "SCALE": 71 + }, + "per_input_conversion": 2637856, + "raw_upper": 762221192, + "route_items": { + "first_main_adapter": 416, + "first_main_boundary": 208, + "helper_boundary": 2184, + "moves": 6272, + "owned_lifetime": 216, + "second_main_adapter": 384, + "second_main_boundary": 192 + }, + "routing": 9872000, + "scalar_upper": 2068168 + }, + "status": "PASS_8X9_EXACT_COMPONENT_APPLICATION_CHECKS" + }, + "ODD-ADMISSION-PARTIAL.json": { + "caller_sha256": "255d89f38cd45e38e5770f559bc43dc217e989032359768cdc7e8cdfd64b47bc", + "compiler_outer": { + "BIT_margin": "12428150313093/100000000000000000", + "BIT_pin": "376669/100000000", + "H": "16502900000000000000000", + "alpha": [ + 0.9999999999999997, + 0.9999999999999997 + ], + "claim": "3642408496869/1000000000000000", + "compiler_gap": "1/100000000000000000", + "delta": [ + 0.9019663367095151, + 0.9019663367095151 + ], + "derivative_upper": -381949.8486859147, + "gamma": [ + 0.9408986995419518, + 0.9408986995419518 + ], + "input_lift": { + "derivative_upper_on_required_interval": "-2299831290525933154178526076272396899996972093654613095735772838275432653960006518819/2500000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "interval_kappa_cap": "376669/100000000", + "margins": { + "3642408496869/1000000000000000": [ + "124275106365520551379855848850723162292503069300292278027520160547922417998319/100000000000000000000000000000000000000000000000000000000000000000000000000000000", + "124275106365520551379855848850723162292503069300292278027520160547922418000243/100000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "364240849686907/100000000000000000": [ + "124275106365522837880548224256348648322779138259472078906655111790416942642193/100000000000000000000000000000000000000000000000000000000000000000000000000000000", + "124275106365522837880548224256348648322779138259472078906655111790416942644151/100000000000000000000000000000000000000000000000000000000000000000000000000000000" + ] + }, + "source_BIT_wide_crude_bound_would_be": "-2299831290525933154178526076272396899996972093654613095735772838275432653960006518819/2500000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + }, + "minimum_log_power": 2235, + "moment_margin_float": { + "364240849686907/100000000000000000": [ + 9.584082989012143e-11, + 9.584082989012143e-11 + ], + "36424084968693169933964196366183/10000000000000000000000000000000000": [ + 1.5011073530614094e-29, + 1.5011073530614094e-29 + ], + "4553010621086646241745524545773/1250000000000000000000000000000000": [ + -2.379191929405633e-29, + -2.379191929405633e-29 + ] + }, + "moment_margins": { + "364240849686907/100000000000000000": [ + "2396020747253035581302553685786103857610081739390219623253277840874727/25000000000000000000000000000000000000000000000000000000000000000000000000000000", + "239602074725303558130255368578610385761008173939021962325327785059817/2500000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "36424084968693169933964196366183/10000000000000000000000000000000000": [ + "187638419132676185812036537536839420100383559531923/12500000000000000000000000000000000000000000000000000000000000000000000000000000", + "750553676530704743248146150147357680401534257485899/50000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "4553010621086646241745524545773/1250000000000000000000000000000000": [ + "-475838385881126595975213826899193397895189328050629/20000000000000000000000000000000000000000000000000000000000000000000000000000000", + "-2379191929405632979876069134495966989475946600991499/100000000000000000000000000000000000000000000000000000000000000000000000000000000" + ] + }, + "outer": { + "BIT_just_below_effective_rejected": true, + "functional_count": 4, + "minimum_margin": "1/1000000000000000000", + "strict_count": 54 + }, + "raw_bracket": [ + "36424084968693169933964196366183/10000000000000000000000000000000000", + "4553010621086646241745524545773/1250000000000000000000000000000000" + ], + "tested": "364240849686907/100000000000000000", + "written_log_power": 2236 + }, + "crossing_probe_rejected": true, + "finite_rank9_fields": [ + { + "child_rank": 9, + "denominator": 512, + "exponent": 1, + "mutated_entries": { + "missing global phase": 8, + "missing multiplicity": 0 + }, + "spectators": 136, + "stage": 8, + "swaps": [ + [ + 1, + 65 + ], + [ + 2, + 66 + ], + [ + 3, + 67 + ], + [ + 4, + 68 + ], + [ + 5, + 69 + ], + [ + 6, + 70 + ], + [ + 7, + 71 + ], + [ + 8, + 72 + ] + ], + "tested_entries": 262144, + "width": 1 + }, + { + "child_rank": 9, + "denominator": 262144, + "exponent": 2, + "mutated_entries": { + "missing global phase": 8, + "missing multiplicity": 8 + }, + "spectators": 272, + "stage": 8, + "swaps": [ + [ + 1, + 65 + ], + [ + 2, + 66 + ], + [ + 3, + 67 + ], + [ + 4, + 68 + ], + [ + 5, + 69 + ], + [ + 6, + 70 + ], + [ + 7, + 71 + ], + [ + 8, + 72 + ] + ], + "tested_entries": 1024, + "width": 2 + }, + { + "child_rank": 9, + "denominator": 134217728, + "exponent": 3, + "mutated_entries": { + "missing global phase": 8, + "missing multiplicity": 8 + }, + "spectators": 408, + "stage": 8, + "swaps": [ + [ + 1, + 65 + ], + [ + 2, + 66 + ], + [ + 3, + 67 + ], + [ + 4, + 68 + ], + [ + 5, + 69 + ], + [ + 6, + 70 + ], + [ + 7, + 71 + ], + [ + 8, + 72 + ] + ], + "tested_entries": 1024, + "width": 3 + }, + { + "child_rank": 9, + "denominator": 512, + "exponent": 1, + "mutated_entries": { + "missing global phase": 8, + "missing multiplicity": 0 + }, + "spectators": 136, + "stage": 9, + "swaps": [ + [ + 1, + 73 + ], + [ + 2, + 74 + ], + [ + 3, + 75 + ], + [ + 4, + 76 + ], + [ + 5, + 77 + ], + [ + 6, + 78 + ], + [ + 7, + 79 + ], + [ + 8, + 80 + ] + ], + "tested_entries": 262144, + "width": 1 + }, + { + "child_rank": 9, + "denominator": 262144, + "exponent": 2, + "mutated_entries": { + "missing global phase": 8, + "missing multiplicity": 8 + }, + "spectators": 272, + "stage": 9, + "swaps": [ + [ + 1, + 73 + ], + [ + 2, + 74 + ], + [ + 3, + 75 + ], + [ + 4, + 76 + ], + [ + 5, + 77 + ], + [ + 6, + 78 + ], + [ + 7, + 79 + ], + [ + 8, + 80 + ] + ], + "tested_entries": 1024, + "width": 2 + }, + { + "child_rank": 9, + "denominator": 134217728, + "exponent": 3, + "mutated_entries": { + "missing global phase": 8, + "missing multiplicity": 8 + }, + "spectators": 408, + "stage": 9, + "swaps": [ + [ + 1, + 73 + ], + [ + 2, + 74 + ], + [ + 3, + 75 + ], + [ + 4, + 76 + ], + [ + 5, + 77 + ], + [ + 6, + 78 + ], + [ + 7, + 79 + ], + [ + 8, + 80 + ] + ], + "tested_entries": 1024, + "width": 3 + } + ], + "invoice": { + "P": { + "1": 68265, + "16": 416, + "2": 14518, + "24": 416, + "3": 14059, + "32": 416, + "4": 3808, + "40": 416, + "48": 416, + "5": 5797, + "56": 416, + "6": 272, + "64": 208, + "7": 187, + "8": 758, + "9": 32 + }, + "S": 1424, + "T": { + "1": 272, + "137": 208, + "17": 416, + "2": 340, + "25": 416, + "3": 799, + "33": 416, + "4": 3706, + "41": 416, + "49": 416, + "5": 1258, + "57": 416, + "6": 731, + "65": 416, + "7": 306, + "73": 208, + "8": 595, + "9": 10973 + }, + "empty_root_credits": 0, + "no_E_credit_crossing": "0.0036424084968693169933964196366183386853498606175933205372534926496", + "raw_crossing": "0.0036424084968693169933964196366183386853498606175933205372534926496" + }, + "native_sha256": "9557c4682056ab7cc7cda89aa73865bef0e3948cc10b3c3061b0a944af05b96a", + "ordinary": { + "all_caller_scalar_surcharge": 2248928, + "caller_items": { + "A": { + "envelope": 102076416, + "field_boundary": 89856, + "fused_routes": 0, + "idle_routes": 170112000, + "output_routes": 213120000, + "query_routes": 1152000, + "thin": 6144 + }, + "B": { + "envelope": 35730432, + "field_boundary": 7488, + "fused_routes": 1168000, + "idle_routes": 18016000, + "output_routes": 17760000, + "query_routes": 0, + "thin": 0 + } + }, + "caller_total": 559238336, + "charged_caller_odd_conversions": 479232, + "conservative_total": 778867208, + "init_clear_allowance": 216, + "lambda_paid_rank1_would_reduce_S_by": 11280, + "lambda_second_charge": 11280000, + "margin_to_billion": 221132792, + "odd_divisions": { + "ADD": 5365, + "SCALE": 71 + }, + "per_input_conversion": 2637856, + "raw_upper": 762221192, + "route_items": { + "first_main_adapter": 416, + "first_main_boundary": 208, + "helper_boundary": 2184, + "moves": 6272, + "owned_lifetime": 216, + "second_main_adapter": 384, + "second_main_boundary": 192 + }, + "routing": 9872000, + "scalar_upper": 2068168 + }, + "scope": "Reuse exact same native word all-column adjoint; fresh exact signed caller and invoice, ordinary source-unit upper bill, inherited numerical compiler and outer inequalities, and signed rank9 child finite field routes. Fresh integrated physical native/caller and changed-word precision/occurrence application remain separate." + }, + "ODD-CALLER-EXACT-GRID.json": { + "caller_odd_scale": "675", + "caller_odd_scale_bits": 10, + "caller_sha256": "255d89f38cd45e38e5770f559bc43dc217e989032359768cdc7e8cdfd64b47bc", + "grid_exponents": [ + 381, + 3, + 2 + ], + "peak_terms": 3752, + "preproduct_exact_divisions": 176874, + "prime_order": [ + 2, + 3, + 5 + ], + "safe_valuation_bound": [ + 381, + 69, + 62 + ], + "scope": "Independent integer Laurent caller endpoint and pre-product divisibility. Valuation bound propagates complete field operators whose Gaussian coefficients have only power-of-two denominators, so odd factors are sourced only from the charged scalar operations. Fixed conversion and storage bounds still needed." + }, + "ODD-FIXED-TAPE-COUNTS.json": { + "H": 16502900000000000000000, + "Kstar_bits": 14093, + "actual_ambient": 145, + "caller_odd_scale": 675, + "caller_sha256": "255d89f38cd45e38e5770f559bc43dc217e989032359768cdc7e8cdfd64b47bc", + "common_grid": { + "fractional": "p+D", + "signed_width": "p+h+2D+3", + "temp_padding": 26 + }, + "compiler_ambient_cap": 153, + "context_bound_bits": 14104, + "context_c": 2362, + "elementary_records_per_map_upper": 85264, + "elementary_records_upper": 25431181696, + "log_power": 2236, + "max_scalar_numerator_bits": 24, + "monomial_map_slots": 298264, + "native_invocations": 17, + "native_sha256": "9557c4682056ab7cc7cda89aa73865bef0e3948cc10b3c3061b0a944af05b96a", + "owned_banks_per_raw_occurrence": 867, + "scalar_macro_inputs": { + "caller": 117856, + "conversions": 58216, + "native": 1161423 + }, + "scalar_services_upper": 42799840, + "scalar_steps_coefficient": 44878885027840, + "scope": "Exact finite-cost and common-format substitutions in the selected #7000 conditional application proof, using the conservative primitive movement and scalar constants there. The premise is the complete signed native/physical binding and retained compiler, BIT, stock, and outer contracts. This script counts the raw occurrence, not an enumerated top-level compiled multiplier.", + "tested_claim": "3642408496869/1000000000000000" + }, + "ODD-PHYSICAL-BINDING.json": { + "aliased_main_rejected": true, + "caller_sha256": "255d89f38cd45e38e5770f559bc43dc217e989032359768cdc7e8cdfd64b47bc", + "native_sha256": "9557c4682056ab7cc7cda89aa73865bef0e3948cc10b3c3061b0a944af05b96a", + "occurrence_and_geometry": { + "ambient": 145, + "complete_paid_position_digest": "0324229f132f6f1f5a8d8fbb49d090a2db0d3090edf9e4b9ca55919fd8432424", + "fresh_helpers": 18564, + "idle_uses": 3392, + "lambda_uses": 11280, + "native_calls": 17, + "native_contact_boundaries": 13600, + "native_public": 1492, + "nonzero_boundary_translations": 13600, + "paid": { + "1": 68265, + "16": 416, + "2": 14518, + "24": 416, + "3": 14059, + "32": 416, + "4": 3808, + "40": 416, + "48": 416, + "5": 5797, + "56": 416, + "6": 272, + "64": 208, + "7": 187, + "8": 758, + "9": 32 + }, + "paid_positions": 110400, + "phase_record_digest": "586ab7499fb677afdd83c397ea0b6d3b25f73ea6cdfa1ec95dd68adccff935ad", + "productive_fields": 22308, + "query_uses": 384, + "rank_surplus": 1424, + "reserved_native_banks": 867, + "reserved_serial_query_lambda_bank": 1, + "targets": { + "1": 272, + "137": 208, + "17": 416, + "2": 340, + "25": 416, + "3": 799, + "33": 416, + "4": 3706, + "41": 416, + "49": 416, + "5": 1258, + "57": 416, + "6": 731, + "65": 416, + "7": 306, + "73": 208, + "8": 595, + "9": 10973 + } + }, + "patched_application_sha256": "733b31b1cee4567b466fdf834a34460b530f1f87ca6dca9270c0fabb2cf89849", + "scope": "Current caller port and ownership substitution, full phase-polynomial native contact identities on disjoint stage axes, whole signed idle/output geometry, and ordered paid positions. Retains the standard nested chart and local operator premises and requires separate full native replay and complete fixed-tape tariff application.", + "source_reviewer_sha256": "d98987db98553dc55bfc80e3ca47abfcd51c57af6f8cda61101391d8eae94184" + }, + "ODD-PRECISION.json": { + "caller_grid": { + "caller_odd_scale": "675", + "caller_odd_scale_bits": 10, + "caller_sha256": "255d89f38cd45e38e5770f559bc43dc217e989032359768cdc7e8cdfd64b47bc", + "grid_exponents": [ + 381, + 3, + 2 + ], + "peak_terms": 3752, + "preproduct_exact_divisions": 176874, + "prime_order": [ + 2, + 3, + 5 + ], + "safe_valuation_bound": [ + 381, + 69, + 62 + ], + "scope": "Independent integer Laurent caller endpoint and pre-product divisibility. Valuation bound propagates complete field operators whose Gaussian coefficients have only power-of-two denominators, so odd factors are sourced only from the charged scalar operations. Fixed conversion and storage bounds still needed." + }, + "caller_sha256": "255d89f38cd45e38e5770f559bc43dc217e989032359768cdc7e8cdfd64b47bc", + "context_c": 2362, + "context_height": 406, + "context_mass_bits": 1181, + "native_grid": { + "coefficient_visits": 15457099, + "dyadic_height": 25, + "mass_witness": [ + 65191, + "stored add" + ], + "maximum_scaled_mass": "814448574117075/8192", + "numerator_bits": 24, + "odd_scale_lcm": 1125 + }, + "native_sha256": "9557c4682056ab7cc7cda89aa73865bef0e3948cc10b3c3061b0a944af05b96a", + "precision_program_sha256": "7696f2e4074ccc9c970670494595e2a973742279a6109d1e60fd551a4611d236", + "rounded_caller": { + "bounds": { + "E_joint_entrance": { + "exact": "5950784596457319646781042109049649395947688220153629498674197626336617060316885269596849625832730735374806187127383474426201690043383414226351676401822266248371626396497159176497230618018984985627894631416777770336973316630522918081790538003107095176070939379435247528107255024380677778281357547271196031692703049986251284571544553863387098068291247569297960490977528765446020526806354533978934594926960216887889822913970010347/2529158213879057302658998941096345600000000000000000000000000000000000000000000000", + "strict_power_of_two": 1148, + "witness": { + "cut": 4691, + "event": 4691, + "factor": "1", + "kind": "stored", + "register": 36 + } + }, + "Gamma_context": { + "exact": "153575481248692675084934569000179123719626342753978231524079938152902054419882048804587227211232275580896736598223501763486667888649096778445608178054042397147312248826786182460579657779719744044963604312245157618863512851107721118949006126841942893783398452734706802900119818847095001316628842826649938287013649344554564346635084768032156596800024826976825509397876465008311994516768680421178301587499262864086679523742236937337/1896868660409292976994249205822259200000000000000000000000000000000000000000000000", + "strict_power_of_two": 1153, + "witness": { + "cut": 4783, + "factor": "1", + "kind": "public-return", + "register": 37 + } + }, + "M_caller": { + "exact": "321214676655933560129782836030951119958622429471431692811117505066079252658303325303661828534046786576018850667853596288128047313819788006911616028348392581085050721023636971054851673799947587501432346122953175312809813833001587100311020687804583808767060460431114911369649528995555025426696059541/456139469146728515625000000", + "strict_power_of_two": 897, + "witness": { + "cut": 4751, + "event": 4750, + "factor": "1", + "kind": "stored", + "register": 37 + } + }, + "M_context": { + "exact": "24898013777100702035967807306091511244662602025139468421656390878219636962702451835397705516562583813714751076075014761541426714578979447457838246883663379540658135110522684890152220850081224266847858467942457034492429205494175440008713667333568524239495616651717634471043696134441138275016076327532667795585567014680211930935502669438837484994915626622950665764620750914798532506936890144034321496304058272553336563831712407929237/1686105475919371535105999294064230400000000000000000000000000000000000000000000000", + "strict_power_of_two": 1160, + "witness": { + "cut": 4692, + "event": 4691, + "factor": "1", + "kind": "stored", + "register": null + } + }, + "M_joint_entrance": { + "exact": "12446513821466013746992171114880354528234540647439407368041740746722705684890095694539586093101687855496797040728247169012299728404791642365323413178973703529222728715961384485250463009966565309368602073434714550373752128374887698957802006867751735225949803848812917591840288770078529478244705471/608185958862304687500000000", + "strict_power_of_two": 892, + "witness": { + "cut": 4691, + "event": 4691, + "factor": "1", + "kind": "stored", + "register": 36 + } + }, + "Sigma_caller": { + "exact": "153575481248692675084934569000179123719626342753978231524079938152902054419882048804587227211232275580896736598223501763486667888649096778445608178054042397147312248826786182460579657779719744044963604312245157618863512851107721118949006126841942893783398452734706802900119818847095001316628842826649938287013649344554564346635084768032156596800024826976825509397876465008311994516768680421178301587499262864086679523742236937337/1896868660409292976994249205822259200000000000000000000000000000000000000000000000", + "strict_power_of_two": 1153, + "witness": { + "cut": 4753, + "event": 4752, + "factor": "1", + "kind": "stored", + "register": 37 + } + }, + "Sigma_context": { + "exact": "11903953106260370278140133773965854814178369875789970127069211335833254020029762950958032406501684756362982199558110111067284921959022159894243287507010133300652812750768558318403742506603695928360095507898506243611703878702768058987510383014581912472684921117868452670901193382202669601603960381345347618883346399397808227042676880708376909156691901002370783477676787997302969130852034235975768515349700950164635348693649136004673837442756347671456328233362577706099692860525587412652509896213240486877884935201306349781824500893354708582553976209502408993846009/7011716485308428615133405458301579549733503737764404511774644319027200000000000000000000000000000000000000000000000000000000000000000000", + "strict_power_of_two": 1416, + "witness": { + "cut": 4692, + "event": 4691, + "factor": "1", + "kind": "stored", + "register": null + } + } + }, + "fresh_arbitrary_helpers": 18564, + "helper_allocation_premise": "distinct (stage, helper) public inputs as in frozen caller proof", + "independent_adjoint": { + "E_joint_entrance": { + "entrance_mass": "12446513821466013746992171114880354528234540647439407368041740746722705684890095694539586093101687855496797040728247169012299728404791642365323413178973703529222728715961384485250463009966565309368602073434714550373752128374887698957802006867751735225949803848812917591840288770078529478244705471/608185958862304687500000000", + "joint_coefficient": "144218124282401204617230263054514744346632405857442589144991781917530152132889870002846209306787762894150543865356389849084238452276894627352790762454037345126994351979907477144401257368423063007427271766117739822282248246858569624239109891511459830034432108241771054783468611278140179030295737/14596463012695312500000000000", + "primitive_coefficient": "1237373204913668966810008103424843603237049842106979534739539344726881600855129275554334885562896567825503574055929527662143657491595081161117482238618339640110136792453314323518006796600687371906278112102741547626404362403105174332310591538741639237757093806525664195341657589882317257470101709011/175157556152343750000000000000", + "residual_mass": "5950784596457319646781042109049649395947688220153629498674197626336617060316885269596849625832730735374806187127383474426201690043383414226351676401822266248371626396497159176497230618018984985627894631416777770336973316630522918081790538003107095176070939379435247528107255024380677778281357547271196031692703049986251284571544553863387098068291247569297960490977528765446020526806354533978934594926960216887889822913970010347/2529158213879057302658998941096345600000000000000000000000000000000000000000000000" + }, + "Gamma_context": { + "entrance_mass": "321214676655933560129782836030951119958622429471431692811117505066079252658303325303661828534046786576018850667853596288128047313819788006911616028348392581085050721023636971054851673799947587501432346122953175312809813833001587100311020687804583808767060460431114911369649528995555025426696059541/456139469146728515625000000", + "joint_coefficient": "3721923971948022264020008386608472289590988528157114268392412469599050143495508978788641788787976594161440706214373829555996384554677122174093932095769106055424540710380314024651007332164525664382203471694821380954416641216321248248752759218861172626274920078125266851782731337714997593665899027/10947347259521484375000000000", + "primitive_coefficient": "31933635363307317503891208167952125518099265598871297188945655447689887409437080424471754322893069036961252717295444311531802702290424391181977246033332095685934810861449534911850277930109610390733877602745069385156892357266512877411313922547610591253415658016844390796379192959369382262182067424881/131368167114257812500000000000", + "residual_mass": "153575481248692675084934569000179123719626342753978231524079938152902054419882048804587227211232275580896736598223501763486667888649096778445608178054042397147312248826786182460579657779719744044963604312245157618863512851107721118949006126841942893783398452734706802900119818847095001316628842826649938287013649344554564346635084768032156596800024826976825509397876465008311994516768680421178301587499262864086679523742236937337/1896868660409292976994249205822259200000000000000000000000000000000000000000000000" + }, + "M_caller": { + "entrance_mass": "321214676655933560129782836030951119958622429471431692811117505066079252658303325303661828534046786576018850667853596288128047313819788006911616028348392581085050721023636971054851673799947587501432346122953175312809813833001587100311020687804583808767060460431114911369649528995555025426696059541/456139469146728515625000000", + "joint_coefficient": "3721923971948022264020008386608472289590988528157114268392412469599050143495508978788641788787976594161440706214373829555996384554677122174093932095769106055424540710380314024651007332164525664382203471694821380954416641216321248248752759218861172626274920078125266851782731337714997593665899027/10947347259521484375000000000", + "primitive_coefficient": "31933635363307317503891208167952125518099265598871297188945655447689887409437080424471754322893069036961252717295444311531802702290424391181977246033332095685934810861449534911850277930109610390733877602745069385156892357266512877411313922547610591253415658016844390796247824792255124449682067424881/131368167114257812500000000000", + "residual_mass": "153575481248692675084934569000179123719626342753978231524079938152902054419882048804587227211232275580896736598223501763486667888649096778445608178054042397147312248826786182460579657779719744044963604312245157618863512851107721118949006126841942893783398452734706802900119818847095001316628842826649938287013649344554564346635084768032156596800022930108165100104899470759106172257568680421178301587499262864086679523742236937337/1896868660409292976994249205822259200000000000000000000000000000000000000000000000" + }, + "M_joint_entrance": { + "entrance_mass": "12446513821466013746992171114880354528234540647439407368041740746722705684890095694539586093101687855496797040728247169012299728404791642365323413178973703529222728715961384485250463009966565309368602073434714550373752128374887698957802006867751735225949803848812917591840288770078529478244705471/608185958862304687500000000", + "joint_coefficient": "144218124282401204617230263054514744346632405857442589144991781917530152132889870002846209306787762894150543865356389849084238452276894627352790762454037345126994351979907477144401257368423063007427271766117739822282248246858569624239109891511459830034432108241771054783468611278140179030295737/14596463012695312500000000000", + "primitive_coefficient": "1237373204913668966810008103424843603237049842106979534739539344726881600855129275554334885562896567825503574055929527662143657491595081161117482238618339640110136792453314323518006796600687371906278112102741547626404362403105174332310591538741639237757093806525664195341657589882317257470101709011/175157556152343750000000000000", + "residual_mass": "5950784596457319646781042109049649395947688220153629498674197626336617060316885269596849625832730735374806187127383474426201690043383414226351676401822266248371626396497159176497230618018984985627894631416777770336973316630522918081790538003107095176070939379435247528107255024380677778281357547271196031692703049986251284571544553863387098068291247569297960490977528765446020526806354533978934594926960216887889822913970010347/2529158213879057302658998941096345600000000000000000000000000000000000000000000000" + }, + "Sigma_caller": { + "entrance_mass": "321214676655933560129782836030951119958622429471431692811117505066079252658303325303661828534046786576018850667853596288128047313819788006911616028348392581085050721023636971054851673799947587501432346122953175312809813833001587100311020687804583808767060460431114911369649528995555025426696059541/456139469146728515625000000", + "joint_coefficient": "3721923971948022264020008386608472289590988528157114268392412469599050143495508978788641788787976594161440706214373829555996384554677122174093932095769106055424540710380314024651007332164525664382203471694821380954416641216321248248752759218861172626274920078125266851782731337714997593665899027/10947347259521484375000000000", + "primitive_coefficient": "31933635363307317503891208167952125518099265598871297188945655447689887409437080424471754322893069036961252717295444311531802702290424391181977246033332095685934810861449534911850277930109610390733877602745069385156892357266512877411313922547610591253415658016844390796379192959369382262182067424881/131368167114257812500000000000", + "residual_mass": "153575481248692675084934569000179123719626342753978231524079938152902054419882048804587227211232275580896736598223501763486667888649096778445608178054042397147312248826786182460579657779719744044963604312245157618863512851107721118949006126841942893783398452734706802900119818847095001316628842826649938287013649344554564346635084768032156596800024826976825509397876465008311994516768680421178301587499262864086679523742236937337/1896868660409292976994249205822259200000000000000000000000000000000000000000000000" + } + }, + "joint_entries": [ + { + "entrance_defect": "1435/4", + "entrance_mass": "2067/2", + "event": 43, + "stage": 1 + }, + { + "entrance_defect": "70781793918399586558213313219166874124348981830476075439299148062985117742742708752008405257047902585707819409051289874650376544308398195117/54147497318342533224087693557760000000000000000000000", + "entrance_mass": "56849465528/5", + "event": 137, + "stage": 2 + }, + { + "entrance_defect": "107545293560019130402683285945609675422266176997625062910617679166125768386588553970345823333213374594954600322300561452336065256257218403742259486545197/5198159742560883189512418581544960000000000000000000000", + "entrance_mass": "899756300051784928313/5", + "event": 268, + "stage": 3 + }, + { + "entrance_defect": "100168175419170962309410485582772128097175345943911048485049079247311101970469254674007013858887681100335136050752472619475943032952212522177791895423529822227821/5198159742560883189512418581544960000000000000000000000", + "entrance_mass": "2514111326902273689027625979152/15", + "event": 432, + "stage": 4 + }, + { + "entrance_defect": "20462096123875919764329906341867017106411055486650041560280880698582596677764998287420900982115803592236177889542061555830443373797416870122899846604084645982386599271376891/5198159742560883189512418581544960000000000000000000000", + "entrance_mass": "513576167499541081817002847690160861158177/15", + "event": 633, + "stage": 5 + }, + { + "entrance_defect": "1959245387687414223546514741657040650281549520224206307948249839895341092219719715063816557063354389670302614621188683726361237172974071031030484281595034167852225539740784671725077119/77972396138413247842686278723174400000000000000000000000", + "entrance_mass": "49174910102467876864090432969907258581035345395534834/225", + "event": 867, + "stage": 6 + }, + { + "entrance_defect": "208963522494459959908564749202344616225858863148692101181188439661247018980831837083537077714468820211188535567354301770571191125819484041984326915523848319352625526707573684781584410768887569969/8663599570934805315854030969241600000000000000000000000", + "entrance_mass": "47202796791779792903787260464709452698419616298153732189406926691/225", + "event": 1138, + "stage": 7 + }, + { + "entrance_defect": "60841691544910830928364282138725800374594826721182509450938386596011486931005190227581333928095460915639243081105041980509203768248315837669160769430287556038709353692186271961087270514708595248388801980927073351/9746549517301655980335784840396800000000000000000000000000", + "entrance_mass": "1527059719525243651854937925515623170877847518562264265010551055991429949116792541/28125", + "event": 1423, + "stage": 8 + }, + { + "entrance_defect": "21697531828625713684740058398136455620365440982997449911407078954694215801300793760772068763786761013278336382216875248436301722977944686542614557481598113756091878698300644837953471117486973242734047026121073293808617260044713793025894027441057152180868289078937417087929316106425038123423385085871614265738010662096210730699698607256176914735971/11240703172795810234039995293761536000000000000000000000000000000000000000000000", + "entrance_mass": "45382020709918266925583064268574418985484021788023395083741971786893952543604385214817042722264713249357732585113211736557042182118473445437784492974844696068231496289005681248244219743195326431922663592509646282903/2703048706054687500000000", + "event": 3058, + "stage": 9 + }, + { + "entrance_defect": "8250516616501954952947521879546170262715903208283456671037321906103325170245107464536561241089763967794517013787779996111361122623301225360437931973621208708162624020027146302436292874899135255798147229041001764906193945412958792393279956531239070838462139517330704385511394047257523532677898368537505181666793977321511434252998072420338928064461976457587447409/281017579319895255850999882344038400000000000000000000000000000000000000000000000", + "entrance_mass": "17256576412236653193246225901973714737195067836439327666112948810725372605325768521068989782195051084826433423902219365061463548934152577319772447024097669813834215493691840531234110147024064996639957180865886380686899413865699437/67576217651367187500000000", + "event": 3377, + "stage": 10 + }, + { + "entrance_defect": "3936204358672694714049639857607941543948385792858929624461273360524627965237929916623514737071982877505582267533025376397105816572271840648600265334105893464673235981104732422870668138032538327022758768801414502573399950167040738254752599727269892498483447304673848002432122549886160040554995496940034138939737093960974718497258156119745401439514571613781407496569931774571/9367252643996508528366662744801280000000000000000000000000000000000000000000000", + "entrance_mass": "8232867642949280967953864719378369729636081542640965177026582834276172086852779069019078166383458700724373015543641299678854718814560615654710102550769670203427726502361438450768012893674227975469242856299447027845030556012745339827937032703/2252540588378906250000000", + "event": 3674, + "stage": 11 + }, + { + "entrance_defect": "49463969802973967325116951425714591118109814884781424090538939802520063192967223247080302984831059907051629962646047414781903629088233820238607810524527659646156121580222106742268971125774270092757154023858944069505056435505141858256814511836313156889484204738704606607678593598749722023642008158499742305562424443145091862828666280537749163072662453266946919802757687749650912526923467/1264579106939528651329499470548172800000000000000000000000000000000000000000000000", + "entrance_mass": "103457615351059805192637231353494210876529187337645013912367786609511281374638184501291799844537790265462481580051228205479278831706979374022592427678836083146990308179368316797029946556942233864286312243671687806427572314354434738422294564686254956597631/304092979431152343750000000", + "event": 3934, + "stage": 12 + }, + { + "entrance_defect": "3258160217148365984270609051672662361598559220821822976206750026494041945354721081932301778977314253741393952027434716688523809537980518501811816943843228148931075356555076753619896050843025928144973389026987990414311969605172653665641593556930077950137864280102788280030225362908536698902601093694682438996425781850314815323743736775030295470077208849971627228717596985041345076246496350067723/316144776734882162832374867637043200000000000000000000000000000000000000000000000", + "entrance_mass": "6814687293408352348961376609223100753789665399854180217091951198766673494955017243489117504312576625705862588971333049204842152193259763726092611947454717867967563820647006231530855513792517852570389360287582421241328472893443552787136426885585158158296407747039/76023244857788085937500000", + "event": 4149, + "stage": 13 + }, + { + "entrance_defect": "130852840842335729232766137021705310563412666964173716780336143585511384068764352121550980332664165476972038082876809878125617542351089264780701097756292189831879420094070186235729625282260142075998380772637679347548316896682084414136189062008043206330797950131728920746162306491404670850992249744742333679948143404118971319638294043960156053452358084865881401674952509155427338540213589482680789812165187/2529158213879057302658998941096345600000000000000000000000000000000000000000000000", + "entrance_mass": "273688564209132230699064882255651065961520374651451250325109091529813162250488973700796593555467744131430272845604649750549608356985710665121874068107850799585492748533787927289567936649257940207702597871193107311090132538524151482351564937285621850171994049078063458209591/608185958862304687500000000", + "event": 4337, + "stage": 14 + }, + { + "entrance_defect": "2500880895806015086378784021061611530864648573542505916839281558662504972835419291099192238869361509869219630796335185560995573432039206385566004493026422287396129389234902101230595976246159537627351344971687865719985818774859474450281039648209649102524823896982115928742867175548371096395274731839234494515296722807711803486322564585561171276038585617967385299774092545648940295952972914933856517768193759502977/1264579106939528651329499470548172800000000000000000000000000000000000000000000000", + "entrance_mass": "5230780602279043381317572379439763694807653157987526423412516241866438709931406455512285461654380762978554988724296151241130161368896505647624919395909388513302452136334767445346454946237326490486725295589968816639097338790755366202380875008783642473174121062695038054202858248061/304092979431152343750000000", + "event": 4485, + "stage": 15 + }, + { + "entrance_defect": "2768451233798323087389731795522238120754259027802011042453481877193682957405891392158863987414969508586367796138941713526105556382342810135115538384838550525273567908563665199103976459067052584488522355077357731213146134459046864716843037944205910783290525348323514641167409318848626571913371695775824143045879341262556079597721457339660378250204885289420922885038937689486130380298163082437626911112503708246627922440091/2529158213879057302658998941096345600000000000000000000000000000000000000000000000", + "entrance_mass": "5790424100720951765768300756324298709533962301792798636386692749870979029496708556989270788662796627612885676197810930990877069943243536093513215980405080279750566239442965631097385199413957318608000177913047677092759213914423460784984181631621622445055356552059259436283593839861423838063/608185958862304687500000000", + "event": 4606, + "stage": 16 + }, + { + "entrance_defect": "5950784596457319646781042109049649395947688220153629498674197626336617060316885269596849625832730735374806187127383474426201690043383414226351676401822266248371626396497159176497230618018984985627894631416777770336973316630522918081790538003107095176070939379435247528107255024380677778281357547271196031692703049986251284571544553863387098068291247569297960490977528765446020526806354533978934594926960216887889822913970010347/2529158213879057302658998941096345600000000000000000000000000000000000000000000000", + "entrance_mass": "12446513821466013746992171114880354528234540647439407368041740746722705684890095694539586093101687855496797040728247169012299728404791642365323413178973703529222728715961384485250463009966565309368602073434714550373752128374887698957802006867751735225949803848812917591840288770078529478244705471/608185958862304687500000000", + "event": 4691, + "stage": 17 + } + ], + "physical_main_inputs": 3744, + "sites": { + "ADD": 4126, + "IDLE_ODD": 4, + "IDLE_ONE": 90, + "J": 17, + "LAMBDA": 178, + "QUERY": 4, + "SCALE": 312, + "SWAP": 52, + "noninteger_scalar": 1752 + } + }, + "rounded_native": { + "bounds": { + "Gamma": { + "exact": "41262390743654180353824668559220566387072561689719160198891078363901463467703289210216786053079186041456655602373382010595955679502531/173271991418696106317080619384832000000000000000000000", + "strict_power_of_two": 268, + "witness": { + "cut": 74591, + "factor": "1", + "kind": "public-return", + "register": 1483 + } + }, + "M": { + "exact": "2000400604879422152099704980701647518621850280449683462754007100601087452800342179425603181544902261909432088137599521038480745462975147/2772351862699137701073289910157312000000000000000000000", + "strict_power_of_two": 269, + "witness": { + "cut": 73415, + "factor": "1", + "kind": "stored", + "register": 1483 + } + }, + "Sigma": { + "exact": "41262390743654180353824668559220566387072561689719160198891078363901463467703289210216786053079186041456655602373382010595955679502531/173271991418696106317080619384832000000000000000000000", + "strict_power_of_two": 268, + "witness": { + "cut": 73415, + "factor": "1", + "kind": "stored", + "register": 1483 + } + } + }, + "census": { + "denominator_bits": 20, + "events": 74591, + "lifetimes": 54, + "max_denominator": 655360, + "max_numerator": 14729531, + "numerator_bits": 24, + "opcodes": { + "ADD": 64504, + "CLEAR": 54, + "COPY": 1, + "INIT": 54, + "MOVE": 6272, + "SCALE": 3706 + }, + "owned_labels": 51, + "peak_owned": 43, + "public": 1492, + "scalars": { + "dyadic": 62775, + "integer": 39336, + "noninteger": 28875, + "odd": 5436 + } + }, + "independent_adjoint": { + "Gamma": { + "active_residual_sites": 26499, + "entrance_mass": "2000400604879422152099704980701647518621850280449683462754007100601087452800342179425603181544902261909432088137599521038480745462975147/2772351862699137701073289910157312000000000000000000000", + "residual_mass": "41262390743654180353824668559220566387072561689719160198891078363901463467703289210216786053079186041456655602373382010595955679502531/173271991418696106317080619384832000000000000000000000" + }, + "M": { + "active_residual_sites": 26499, + "entrance_mass": "2000400604879422152099704980701647518621850280449683462754007100601087452800342179425603181544902261909432088137599521038480745462975147/2772351862699137701073289910157312000000000000000000000", + "residual_mass": "41262390743654180353824668559220566387072561689719160198891078363901463467703289210216786053079186041456655602373382010595955679502531/173271991418696106317080619384832000000000000000000000" + }, + "Sigma": { + "active_residual_sites": 26499, + "entrance_mass": "2000400604879422152099704980701647518621850280449683462754007100601087452800342179425603181544902261909432088137599521038480745462975147/2772351862699137701073289910157312000000000000000000000", + "residual_mass": "41262390743654180353824668559220566387072561689719160198891078363901463467703289210216786053079186041456655602373382010595955679502531/173271991418696106317080619384832000000000000000000000" + } + } + }, + "scope": "Fixed integer Laurent grid with charged odd caller scale, and pinned attributed forward/adjoint all-fibre defect engine applied to the emitted 17-stage caller. Each LAMBDA, QUERY and signed/unsigned idle is one unitary with one child defect. The caller allocation assumes independent stage helpers. Full physical application remains separate." + }, + "ODD-TYPE-AB-REPLAY.json": { + "caller_sha256": "255d89f38cd45e38e5770f559bc43dc217e989032359768cdc7e8cdfd64b47bc", + "paid": { + "1": 68265, + "16": 416, + "2": 14518, + "24": 416, + "3": 14059, + "32": 416, + "4": 3808, + "40": 416, + "48": 416, + "5": 5797, + "56": 416, + "6": 272, + "64": 208, + "7": 187, + "8": 758, + "9": 32 + }, + "raw_bracket": [ + "36424084968693169933964196366183/10000000000000000000000000000000000", + "4553010621086646241745524545773/1250000000000000000000000000000000" + ], + "replay": { + "bad_outputs": [], + "caller_denominator_height_bound": 578, + "caller_mass_bound": "854474036861847560509026474008040300059938928517783661039773198072080884690114508581583887358835968277340425788985297793555303569703690223623950838857161290503004459697662544865276977234864184443860251086668962688762176068520364648820282528496698239206689277049335412289161443623602012468587331439851515703/168151253906250000000000000000000", + "caller_mass_ceiling_bits": 910, + "max_terms": 3752 + }, + "scope": "Exact emitted signed Laurent caller endpoint and recomputed native/caller paid and target profiles. Physical address bindings, independent branch-source composition, ordinary units, precision and outer gates are still required.", + "shape": [ + 8, + 9 + ], + "source_word_sha256": "9557c4682056ab7cc7cda89aa73865bef0e3948cc10b3c3061b0a944af05b96a", + "target": { + "1": 272, + "137": 208, + "17": 416, + "2": 340, + "25": 416, + "3": 799, + "33": 416, + "4": 3706, + "41": 416, + "49": 416, + "5": 1258, + "57": 416, + "6": 731, + "65": 416, + "7": 306, + "73": 208, + "8": 595, + "9": 10973 + } + } + }, + "claim": "3642408496869/1000000000000000", + "price": { + "after": { + "P": { + "1": 68265, + "16": 416, + "2": 14518, + "24": 416, + "3": 14059, + "32": 416, + "4": 3808, + "40": 416, + "48": 416, + "5": 5797, + "56": 416, + "6": 272, + "64": 208, + "7": 187, + "8": 758, + "9": 32 + }, + "S": 1424, + "T": { + "1": 272, + "137": 208, + "17": 416, + "2": 340, + "25": 416, + "3": 799, + "33": 416, + "4": 3706, + "41": 416, + "49": 416, + "5": 1258, + "57": 416, + "6": 731, + "65": 416, + "7": 306, + "73": 208, + "8": 595, + "9": 10973 + }, + "empty_root_credits": 0, + "no_E_credit_crossing": "0.0036424084968693169933964196366183386853498606175933205372534926496", + "raw_crossing": "0.0036424084968693169933964196366183386853498606175933205372534926496" + }, + "before": { + "P": { + "1": 68860, + "16": 416, + "2": 14314, + "24": 416, + "3": 13923, + "32": 416, + "4": 3944, + "40": 416, + "48": 416, + "5": 5661, + "56": 416, + "6": 272, + "64": 208, + "7": 187, + "8": 758, + "9": 32 + }, + "S": 1424, + "T": { + "1": 306, + "137": 208, + "17": 416, + "2": 306, + "25": 416, + "3": 799, + "33": 416, + "4": 3706, + "41": 416, + "49": 416, + "5": 1275, + "57": 416, + "6": 714, + "65": 416, + "7": 306, + "73": 208, + "8": 901, + "9": 10667 + }, + "empty_root_credits": 0, + "no_E_credit_crossing": "0.0036422192846378389792779110762715450733811793013921687470157795111", + "raw_crossing": "0.0036422192846378389792779110762715450733811793013921687470157795111" + }, + "gate": { + "BIT_margin": "12428150313093/100000000000000000", + "BIT_pin": "376669/100000000", + "H": "16502900000000000000000", + "alpha": [ + 0.9999999999999997, + 0.9999999999999997 + ], + "claim": "3642408496869/1000000000000000", + "compiler_gap": "1/100000000000000000", + "delta": [ + 0.9019663367095151, + 0.9019663367095151 + ], + "derivative_upper": -381949.8486859147, + "gamma": [ + 0.9408986995419518, + 0.9408986995419518 + ], + "input_lift": { + "derivative_upper_on_required_interval": "-2299831290525933154178526076272396899996972093654613095735772838275432653960006518819/2500000000000000000000000000000000000000000000000000000000000000000000000000000000000000", + "interval_kappa_cap": "376669/100000000", + "margins": { + "3642408496869/1000000000000000": [ + "124275106365520551379855848850723162292503069300292278027520160547922417998319/100000000000000000000000000000000000000000000000000000000000000000000000000000000", + "124275106365520551379855848850723162292503069300292278027520160547922418000243/100000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "364240849686907/100000000000000000": [ + "124275106365522837880548224256348648322779138259472078906655111790416942642193/100000000000000000000000000000000000000000000000000000000000000000000000000000000", + "124275106365522837880548224256348648322779138259472078906655111790416942644151/100000000000000000000000000000000000000000000000000000000000000000000000000000000" + ] + }, + "source_BIT_wide_crude_bound_would_be": "-2299831290525933154178526076272396899996972093654613095735772838275432653960006518819/2500000000000000000000000000000000000000000000000000000000000000000000000000000000000000" + }, + "minimum_log_power": 2235, + "moment_margin_float": { + "364240849686907/100000000000000000": [ + 9.584082989012143e-11, + 9.584082989012143e-11 + ], + "36424084968693169933964196366183/10000000000000000000000000000000000": [ + 1.5011073530614094e-29, + 1.5011073530614094e-29 + ], + "4553010621086646241745524545773/1250000000000000000000000000000000": [ + -2.379191929405633e-29, + -2.379191929405633e-29 + ] + }, + "moment_margins": { + "364240849686907/100000000000000000": [ + "2396020747253035581302553685786103857610081739390219623253277840874727/25000000000000000000000000000000000000000000000000000000000000000000000000000000", + "239602074725303558130255368578610385761008173939021962325327785059817/2500000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "36424084968693169933964196366183/10000000000000000000000000000000000": [ + "187638419132676185812036537536839420100383559531923/12500000000000000000000000000000000000000000000000000000000000000000000000000000", + "750553676530704743248146150147357680401534257485899/50000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "4553010621086646241745524545773/1250000000000000000000000000000000": [ + "-475838385881126595975213826899193397895189328050629/20000000000000000000000000000000000000000000000000000000000000000000000000000000", + "-2379191929405632979876069134495966989475946600991499/100000000000000000000000000000000000000000000000000000000000000000000000000000000" + ] + }, + "outer": { + "BIT_just_below_effective_rejected": true, + "functional_count": 4, + "minimum_margin": "1/1000000000000000000", + "strict_count": 54 + }, + "raw_bracket": [ + "36424084968693169933964196366183/10000000000000000000000000000000000", + "4553010621086646241745524545773/1250000000000000000000000000000000" + ], + "tested": "364240849686907/100000000000000000", + "written_log_power": 2236 + }, + "native_baseline_rejects_new_claim": true, + "new_native": "9557c4682056ab7cc7cda89aa73865bef0e3948cc10b3c3061b0a944af05b96a", + "old_native": "a32696e806c5cde0510cdf2f494e1f14ebb01e73d4ec577413fd7e7c0d9d68b2", + "price": { + "baseline_rejects_new_claim": true, + "candidate_margin_at_old_upper": [ + "7342003716227063123481474642367397001715979664055708969839165248446819348758371/100000000000000000000000000000000000000000000000000000000000000000000000000000000", + "3671001858113531561740737321183698500857989832027854484919582624223409691731707/50000000000000000000000000000000000000000000000000000000000000000000000000000000" + ], + "claim_decimal": "0.003642408496869", + "gain": "1.89212232E-7", + "gain_exact": "23651529/125000000000000", + "independent_raw_bracket": [ + "0.00364240849686931699339641963661833", + "0.00364240849686931699339641963661834" + ], + "previous_claim": "3642219284637/1000000000000000", + "raw_bracket": [ + "0.0036424084968693169933964196366183", + "0.0036424084968693169933964196366184" + ] + } + }, + "status": "PASS_P104_OUTPUT_RECHART_COMPOSITION" +} diff --git a/research/p104-two-blocker-exclusion/vendor/inputs/WORD.json.gz b/research/p104-two-blocker-exclusion/vendor/inputs/WORD.json.gz new file mode 100644 index 0000000000..5e2ae510e5 Binary files /dev/null and b/research/p104-two-blocker-exclusion/vendor/inputs/WORD.json.gz differ diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-chronology-pivot-20261110T1021Z/evidence/corrected_contacts.py b/research/p104-two-blocker-exclusion/vendor/kappa-chronology-pivot-20261110T1021Z/evidence/corrected_contacts.py new file mode 100644 index 0000000000..e9bb88a2ac --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-chronology-pivot-20261110T1021Z/evidence/corrected_contacts.py @@ -0,0 +1,302 @@ +"""Price corrected one-blocker ADD retimings with collateral public rechart.""" + +from bisect import bisect_left, bisect_right +from collections import Counter, defaultdict +from fractions import Fraction as Q +from hashlib import sha256 +from pathlib import Path +import gzip +import json +import sys + +PREVIOUS = Path(__file__).resolve().parents[2] / 'kappa-nonbridge-pairs-20261110T0937Z' / 'evidence' +sys.path.insert(0, str(PREVIOUS)) +from nonbridge_screen import BRACKET, WORD_SHA, bounds, changed_blocks, chart, load, propagate, quotient_domain, subspace_count, volume +from release import inventory +from constrained import solve_equalities + + +def scalar_history(word): + reads, writes = defaultdict(list), defaultdict(list) + for i, e in enumerate(word['program']): + if e[0] in ('ADD', 'COPY', 'SCALE'): + writes[e[1]].append(i) + reads[e[1] if e[0] == 'SCALE' else e[2]].append(i) + return reads, writes + + +def window(indices, position, skip=None): + j = bisect_left(indices, position) + left = j - 1 + right = j + while left >= 0 and indices[left] in (position, skip): + left -= 1 + while right < len(indices) and indices[right] in (position, skip): + right += 1 + return indices[left] if left >= 0 else -1, indices[right] if right < len(indices) else None + + +def smooth(n): + assert n > 0 + for prime in (2, 3, 5): + while n % prime == 0: + n //= prime + return n == 1 + + +def corrected(a, b, later, public, owned_blocker=False, gauss=False): + _, d, s, x, _ = a + x = Q(x) + op, e = b[:2] + if gauss: + if op != 'ADD' or e != s or b[2] != d: + return None + y = Q(b[3]) + z = 1 + x*y + if not z or not (smooth(abs(z.numerator)) and smooth(z.denominator)): + return None + first, second = (1/z, z) if later else (z, 1/z) + if any(abs(q) + 1 >= 2**16 for q in (x/z, y/z, first, second)): + return None + return x/z, ('GAUSS', d, s, str(z), str(y/z), str(first), str(second)) + if op == 'SCALE': + assert e in (d, s) + y = Q(b[-2]) + coeff = x * y if (e == d) == later else x / y + return coeff, None + if op == 'COPY' and owned_blocker and e >= public and b[2] == d: + y = Q(b[-2]) + return x, ('ADD', e, s, str(x*y if later else -x*y)) + if op != 'ADD' or (not owned_blocker and max(e, b[2]) >= public): + return None + t = b[2] + assert s == e or d == t + if s == e and d == t: + return None + y = Q(b[-2]) + if s == e: + correction = ('ADD', d, t, str(-x*y if later else x*y)) + else: + correction = ('ADD', e, s, str(x*y if later else -x*y)) + return x, correction + + +def choices(word, raw, raw_id, scalar, child, free_correction=False, owned_blocker=False, gauss=False): + program = word['program'] + public = word['public'] + reads, writes = scalar_history(word) + histories = defaultdict(list) + for i, (role, event, _) in enumerate(raw): + histories[role].append((event + 1, i)) + for items in histories.values(): + items.sort() + infinity = len(program) + len(raw) + + def at(r, cut): + items = histories[r] + return items[bisect_right(items, (cut, infinity)) - 1][1] + + def joint_cuts(roles, lo, hi): + cuts = {lo} + for r in roles: + h = histories[r] + first = bisect_right(h, (lo, infinity)) + last = bisect_right(h, (hi, infinity)) + cuts.update(k for k, _ in h[first:last]) + return sorted(cuts) + + for i, (u, v) in scalar.items(): + event = program[i] + if i not in child or event[0] != 'ADD' or max(event[1:3]) >= public: + continue + d, s = event[1:3] + barriers = reads[d], writes[s] + nearby = [window(ls, i) for ls in barriers] + left = max(row[0] for row in nearby) + right = min((row[1] for row in nearby if row[1] is not None), default=len(program)) + for blocker, later in ((left, False), (right, True)): + if blocker < 0 or blocker == len(program): + continue + b = program[blocker] + if owned_blocker and (b[0] not in ('ADD', 'COPY') or max(b[1:3]) < public): + continue + plan = corrected(event, b, later, public, owned_blocker, gauss) + if plan is None: + continue + coefficient, correction = plan + if abs(coefficient) + 1 >= 2**16 or (correction and abs(Q(correction[3])) + 1 >= 2**16): + continue + next_bounds = [window(ls, i, blocker) for ls in barriers] + lo = max(row[0] for row in next_bounds) + 1 + hi = min((row[1] for row in next_bounds if row[1] is not None), default=len(program)) + if later: + lo = max(lo, blocker + 1) + else: + hi = min(hi, blocker) + if lo > hi: + continue + # A COPY must see its still-zero destination before any correction. + added_cut = blocker + int(later or b[0] == 'COPY') + added = tuple(at(r, added_cut) for r in correction[1:3]) if correction else None + additions = [(added_cut, added)] + if free_correction: + if correction is None: + continue + p, q = correction[1:3] + prior, after = [], [] + for conflicts in (reads[p], writes[q]): + j = bisect_left(conflicts, added_cut) + prior.append(conflicts[j - 1] + 1 if j else 0) + after.append(conflicts[j] if j < len(conflicts) else len(program)) + assert max(prior) <= added_cut <= min(after) + additions = [] + for k in joint_cuts((p, q), max(prior), min(after)): + pair = at(p, k), at(q, k) + if pair != added: + additions.append((k, pair)) + for cut in joint_cuts((d, s), lo, hi): + a, b = at(d, cut), at(s, cut) + if (a, b) == (u, v): + continue + for k, pair in additions: + yield i, blocker, cut, str(coefficient), k, correction, (a, b), pair + + +def screen(word, graph, price, journal, free_correction=False, cap=None, owned_blocker=False, gauss=False): + raw, raw_id, comp, raw_paid, raw_target, fixed, scalar, original, enter, end, child = inventory(word, graph) + base = {i: chart(s) for i, s in enumerate(original) if s is not None} + paid0 = Counter((comp[a], comp[b]) for _, a, b in raw_paid) + old_lo, old_hi, _ = bounds(original, paid0, {comp[i] for i in fixed}) + left, right = map(Q, BRACKET) + weights = {r: (price.raw_margin({r: 1}, right)[0], price.raw_margin({r: 1}, left)[1]) + for r in range(1, 10)} + counts = Counter() + hits = [] + last = None + cache = {} + pending = None + for i, blocker, cut, coefficient, correction_cut, correction, moved, added in choices( + word, raw, raw_id, scalar, child, free_correction, owned_blocker, gauss): + if cap is not None and counts['candidate placements'] >= cap: + pending = dict(add=i, blocker=blocker, cut=cut, correction_cut=correction_cut) + break + counts['candidate placements'] += 1 + counts['corrected ' + word['program'][blocker][0]] += 1 + if last != i: + old, new = comp[scalar[i][0]], len(original) + branch = child[i] + split = {j for j, c in enumerate(comp) if c == old and enter[branch] <= enter[j] < end[branch]} + belong = lambda j: new if j in split else comp[j] + space = [*original, original[old]] + paid = Counter((belong(a), belong(b)) for _, a, b in raw_paid) + target = Counter((belong(a), belong(b)) for a, b in raw_target) + low, high, adj = bounds(space, paid, {belong(j) for j in fixed}) + changed = {old, new} | {j for j in range(len(original)) + if (low[j], high[j]) != (old_lo[j], old_hi[j])} + old_state = base | {new: base[old]} + paid_order = sorted(paid, key=lambda e: (old_state[e[0]][1], old_state[e[1]][1], e)) + cache = {} + last = i + counts['ADD bridges with placements'] += 1 + pairs = [tuple(sorted(map(belong, moved)))] + if added is not None: + pairs.append(tuple(sorted(map(belong, added)))) + key = tuple(sorted({(a, b) for a, b in pairs if a != b})) + connected = {old} + for _ in key: + for a, b in key: + if a in connected or b in connected: + connected.update((a, b)) + if new in connected: + counts['reinstates predecessor equality'] += 1 + continue + if key in cache: + counts['duplicate priced equality'] += 1 + counts[cache[key]] += 1 + continue + narrowed = propagate(low, high, key, paid_order) + if narrowed is None: + status = 'incompatible span bounds' + else: + lo, hi = narrowed + neighbors = [s.copy() for s in adj] + touched = changed.copy() + for a, b in key: + touched.update((a, b)) + neighbors[a].add(b) + neighbors[b].add(a) + blocks = changed_blocks(space, low, high, neighbors, target, touched) + rank = [] + exact = [] + for block in blocks: + widths = {j: len(hi[j]).bit_length() - len(lo[j]).bit_length() + 1 for j in block} + if volume({j: range(n) for j, n in widths.items()}, neighbors, 600000) is None: + rank.append(dict(deferred=True, vertices=block)) + else: + rank.append(solve_equalities(block, old_state, lo, hi, paid, target, key, weights, True)) + if any(row.get('infeasible') for row in rank): + status = 'incompatible ranks' + elif any(row.get('deferred') for row in rank): + status = 'rank table deferred' + elif sum(Q(row['upper']) for row in rank) <= 0: + status = 'nonpositive rank upper' + else: + for block in blocks: + qs = {j: len(hi[j]).bit_length() - len(lo[j]).bit_length() for j in block} + sizes = {j: sum(subspace_count(d, r) for r in range(d + 1)) for j, d in qs.items()} + if max(qs.values()) > 7 or volume({j: range(n) for j, n in sizes.items()}, + neighbors, 800000) is None: + exact.append(dict(deferred=True, vertices=block)) + else: + domains = {j: quotient_domain(lo[j], hi[j]) for j in block} + exact.append(solve_equalities(block, old_state, lo, hi, paid, target, key, + weights, False, domains)) + if any(row.get('infeasible') for row in exact): + status = 'incompatible exact charts' + elif any(row.get('deferred') for row in exact): + mixed = sum(Q(p['upper'] if e.get('deferred') else e['upper']) for p, e in zip(rank, exact)) + status = ('nonpositive mixed upper' if (free_correction or owned_blocker or gauss) and mixed <= 0 + else 'exact table deferred') + elif sum(Q(row['upper']) for row in exact) <= 0: + status = 'nonpositive exact upper' + elif sum(Q(row['lower']) for row in exact) > 0: + status = 'positive chart assignment' + else: + status = 'interval unresolved' + if status in ('positive chart assignment', 'rank table deferred', 'exact table deferred', 'interval unresolved'): + row = dict(status=status, add=i, blocker=blocker, cut=cut, coefficient=coefficient, + correction_cut=correction_cut, correction=correction, key=key, + old_component=old, new_component=new, split_visits=[raw[j] for j in sorted(split)], + moved_visits=[raw[j] for j in moved], added_visits=[raw[j] for j in added] if added else None, + rank=rank, exact=exact) + hits.append(row) + print(json.dumps(row, sort_keys=True), file=journal, flush=True) + cache[key] = status + counts[status] += 1 + if counts['candidate placements'] % 200 == 0: + print(json.dumps(dict(progress=dict(counts), add=i)), file=journal, flush=True) + result = dict(word=WORD_SHA, counts=counts, unresolved=len(hits), hits=hits) + if free_correction: + result.update(scope='additional commuting correction visit pairs', pending=pending) + if owned_blocker: + result['scope'] = 'only ADD or COPY blockers touching owned roles, adjacent corrections' + if gauss: + result['scope'] = 'opposite public ADD blocker with retuned coefficient and adjacent diagonal correction' + return result + + +def main(word, graph, price, journal, cap=None, owned_blocker=False, gauss=False): + raw = gzip.decompress(word.read_bytes()) + assert sha256(raw).hexdigest() == WORD_SHA + with journal.open('x') as out: + result = screen(json.loads(raw), load('chronology_graph', graph), load('directed_price', price), out, + cap is not None, cap, owned_blocker, gauss) + print(json.dumps(result, sort_keys=True, indent=2)) + + +if __name__ == '__main__': + assert __debug__ + assert len(sys.argv) in (5, 6) + mode = sys.argv[5] if len(sys.argv) == 6 else None + main(*(Path(p) for p in sys.argv[1:5]), int(mode) if mode not in (None, '--owned', '--gauss') else None, + mode == '--owned', mode == '--gauss') diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-contact-release-20261110T0922Z/evidence/constrained.py b/research/p104-two-blocker-exclusion/vendor/kappa-contact-release-20261110T0922Z/evidence/constrained.py new file mode 100644 index 0000000000..76b87a462e --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-contact-release-20261110T0922Z/evidence/constrained.py @@ -0,0 +1,170 @@ +"""Impose each actual replacement equality on the optimistic release graph.""" + +from collections import Counter +from fractions import Fraction as Q +from hashlib import sha256 +from pathlib import Path +import gzip +import json +import sys + +from release import BRACKET, WORD_SHA, admissible_volume, bounds, changed_blocks, inventory, join +from eliminate import basis, bits, chart, domain, elimination, load + +GRID = 10**45 +IMPOSSIBLE = -10**100 + + +def solve_equal(block, base, low, high, paid, target, equal, weights, ranks_only): + return solve_equalities(block, base, low, high, paid, target, (equal,), weights, ranks_only) + + +def solve_equalities(block, base, low, high, paid, target, equalities, weights, ranks_only, overrides=None): + variables = set(block) + edges = sorted({(a, b) for a, b in paid.keys() | target.keys() if a in variables or b in variables}) + mass = sum(abs(target[a,b]-paid[a,b]) for a, b in edges) + stride_base = max(3, 2*mass+1) + stride = stride_base**9 + mid = {r: int(GRID*(lo+hi)/2) for r, (lo, hi) in weights.items()} + score = {r: n*stride + stride_base**(r-1) for r, n in mid.items()} | {0: 0} + uncertainty = max(max(abs(Q(mid[r], GRID)-a), abs(Q(mid[r], GRID)-b)) + for r, (a, b) in weights.items()) + assert 2*mass*max(score.values()) < -IMPOSSIBLE//4 + all_nodes = {i for edge in (*edges,*equalities) for i in edge} + states = {i: (base[i],) for i in all_nodes if i not in variables} + for i in block: + if ranks_only: + lo, hi = len(low[i]).bit_length()-1, len(high[i]).bit_length()-1 + states[i] = tuple((None, rank) for rank in range(lo, hi+1)) + elif overrides is not None: + states[i] = overrides[i] + else: + states[i] = domain(low[i], high[i]) + if any(not states[i] for i in variables): + return {'infeasible': True} + + factors = [] + edge_specs = [(a,b,False) for a,b in edges] + edge_specs.extend((a,b,True) for a,b in equalities if a != b and variables & {a,b}) + for a, b, equality in edge_specs: + scope = tuple(sorted({a, b} & variables)) + table = {} + old_rank = base[b][1]-base[a][1] + for j, (am, ad) in enumerate(states[a]): + for k, (bm, bd) in enumerate(states[b]): + if equality: + valid = ad == bd if ranks_only else am == bm + value = 0 + else: + valid = ad <= bd if ranks_only else not am & ~bm + valid &= not target[a,b] or ad < bd + value = (target[a,b]-paid[a,b])*(score[bd-ad]-score[old_rank]) if valid else 0 + table[tuple(j if i == a else k for i in scope)] = (value if valid else IMPOSSIBLE, None) + assert table and scope + factors.append((scope, table)) + best, second, assignment, stats = elimination(factors, {i:len(states[i]) for i in block}) + if best < IMPOSSIBLE//2: + return {'infeasible': True, 'stats': stats, 'ranks_only': ranks_only} + selected = base | {i: states[i][j] for i,j in assignment.items()} + profile = Counter() + for a,b in edges: + old_rank = base[b][1]-base[a][1] + new_rank = selected[b][1]-selected[a][1] + c = target[a,b]-paid[a,b] + profile[old_rank] -= c + if new_rank: + profile[new_rank] += c + profile = {r:n for r,n in sorted(profile.items()) if n} + assert sum(r*n for r,n in profile.items()) == 0 and sum(score[r]*n for r,n in profile.items()) == best + gain_lo = sum(n*weights[r][n<0] for r,n in profile.items()) + gain_hi = sum(n*weights[r][n>0] for r,n in profile.items()) + if second is not None and second > IMPOSSIBLE//2: + center = Q((second+stride//2)//stride, GRID) + gain_hi = max(gain_hi, center+2*mass*uncertainty) + result = dict(ranks_only=ranks_only, profile=profile, + lower=str(gain_lo), upper=str(gain_hi), stats=stats) + if not ranks_only: + result['changed_bases'] = {i:basis(frozenset(bits(selected[i][0]))) + for i in sorted(block) if selected[i] != base[i]} + elif overrides is not None: + result['selected_ranks'] = {i:selected[i][1] for i in sorted(block)} + return result + + +def screen(word, previous, graph, price): + raw, ids, comp, raw_paid, raw_target, fixed, scalar, original, entry, end, child = inventory(word, graph) + base = {i:chart(s) for i,s in enumerate(original) if s is not None} + old_lo, old_hi, _ = bounds(original, Counter((comp[a],comp[b]) for _,a,b in raw_paid), {comp[i] for i in fixed}) + left, right = map(Q, BRACKET) + weights = {r:(price.raw_margin({r:1},right)[0],price.raw_margin({r:1},left)[1]) + for r in range(1,10)} + counts = Counter() + results = [] + for row in previous['hits']: + e = row['add'] + old_id = comp[scalar[e][0]] + branch = child[e] + new_id = len(original) + + def belong(i): + return new_id if comp[i] == old_id and entry[branch] <= entry[i] < end[branch] else comp[i] + + assert [raw[i] for i in range(len(raw)) if belong(i)==new_id] == [tuple(x) for x in row['split_raw_visits']] + space = [*original, original[old_id]] + paid = Counter((belong(a),belong(b)) for _,a,b in raw_paid) + target = Counter((belong(a),belong(b)) for a,b in raw_target) + low, high, adjacency = bounds(space, paid, {belong(i) for i in fixed}) + changed = {i for i, (a,b) in enumerate(zip(low, high)) + if i == new_id or (a,b) != (old_lo[i],old_hi[i])} | {old_id} + states = base | {new_id:base[old_id]} + for proposal in row['possible_cuts']: + u,v = [belong(ids[r,start-1]) for r,start,_ in proposal['new_visits']] + assert [u,v] == proposal['cut_components'] + lower, upper = low.copy(), high.copy() + lower[u] = lower[v] = join(low[u],low[v]) + upper[u] = upper[v] = high[u]&high[v] + assert lower[u] <= upper[u] + neighbors = [s.copy() for s in adjacency] + if u != v: + neighbors[u].add(v) + neighbors[v].add(u) + # Preserve the released graph's variable list even when the new + # constraint reduces one of its domains to a forced new chart. + blocks = changed_blocks(space, low, high, neighbors, target, changed|{u,v}) + entries = [] + for block in blocks: + ranks_only = not admissible_volume(block, lower, upper, neighbors) + entries.append(solve_equal(block, states, lower, upper, paid, target, (u,v), weights, ranks_only)) + hit = dict(add=e, cut=proposal['cut'], proposal=proposal, split_raw_visits=row['split_raw_visits'], + old_component=old_id, split_component=new_id, blocks=entries) + if any(x.get('infeasible') for x in entries): + status = 'no feasible chart assignment' + else: + lower_gain = sum(Q(x['lower']) for x in entries) + upper_gain = sum(Q(x['upper']) for x in entries) + hit.update(gain=[str(lower_gain),str(upper_gain)]) + if upper_gain <= 0: + status = 'nonpositive' + elif lower_gain > 0 and not any(x['ranks_only'] for x in entries): + status = 'strict literal chart nominee' + else: + status = 'unresolved upper bound' + hit['status'] = status + counts[status] += 1 + results.append(hit) + return dict(word=WORD_SHA, bracket=BRACKET, counts=counts, cases=results) + + +def main(word_path, release_path, graph_path, price_path): + raw = gzip.decompress(word_path.read_bytes()) + previous = json.loads(release_path.read_bytes()) + assert sha256(raw).hexdigest() == WORD_SHA == previous['word'] + assert not previous['remaining_adds'] + print(json.dumps(screen(json.loads(raw), previous, load('chart_graph',graph_path), + load('directed_price',price_path)), indent=2)) + + +if __name__ == '__main__': + if not __debug__: + raise RuntimeError('Assertions are proof checks') + main(*(Path(p) for p in sys.argv[1:])) diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-contact-release-20261110T0922Z/evidence/release.py b/research/p104-two-blocker-exclusion/vendor/kappa-contact-release-20261110T0922Z/evidence/release.py new file mode 100644 index 0000000000..ea21864ea3 --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-contact-release-20261110T0922Z/evidence/release.py @@ -0,0 +1,271 @@ +"""Price each scalar bridge release before imposing its replacement equality.""" + +from collections import Counter, defaultdict +from fractions import Fraction as Q +from functools import lru_cache +from hashlib import sha256 +from math import prod +from pathlib import Path +import gzip +import json +import sys +import time + +PRIOR = Path(__file__).resolve().parents[2] / 'kappa-coupled-boundaries-20261110T0908Z' / 'evidence' +sys.path.append(str(PRIOR)) +from eliminate import chart, load, solve, subspace_count + +WORD_SHA = 'cca66a7ec924bab47ccd1410968d16e071a01dc6110b5c08040bd207f753d066' +BRACKET = ('0.00363432724063755030618121129092973', + '0.00363432724063755030618121129092974') +EMPTY = frozenset((0,)) +FULL = frozenset(range(512)) + + +@lru_cache(None) +def join(a, b): + if a <= b: + return b + if b <= a: + return a + current = set(a) + for v in sorted(b): + if v not in current: + current |= {x ^ v for x in current} + return frozenset(current) + + +def bridge_forest(adj): + index = [-1] * len(adj) + end = [-1] * len(adj) + low = [-1] * len(adj) + children = {} + cursor = 0 + + def dfs(u, parent_edge): + nonlocal cursor + index[u] = low[u] = cursor + cursor += 1 + for v, e in adj[u]: + if e == parent_edge: + continue + if index[v] >= 0: + low[u] = min(low[u], index[v]) + else: + dfs(v, e) + low[u] = min(low[u], low[v]) + if low[v] > index[u]: + children[e] = v + end[u] = cursor + + for u in range(len(adj)): + if index[u] < 0: + dfs(u, -1) + return index, end, children + + +def inventory(word, graph): + groups, frames, _, paid_check, _ = graph.graph(word) + raw = [v for group in groups for v in group] + raw_id = {(r, e): i for i, (r, e, _) in enumerate(raw)} + comp = [i for i, g in enumerate(groups) for _ in g] + adj = [[] for _ in raw] + public = word['public'] + roles = public + word['owned_fields'] + initial = [raw_id[r, -1] for r in range(roles)] + active = initial.copy() + main = set(word['live']) | {r + 112 for r in word['live']} + main |= set(word['hosted']['X2']) | set(word['hosted']['Y2']) + paid, scalar = [], {} + for i, event in enumerate(word['program']): + op, r = event[:2] + if op in ('MOVE', 'INIT', 'CLEAR'): + after = raw_id[r, i] + if op == 'MOVE' and r < public: + paid.append((i, active[r], after)) + active[r] = after + elif op in ('ADD', 'COPY'): + a, b = active[r], active[event[2]] + assert comp[a] == comp[b] and raw[a][2] == raw[b][2] == event[-1] + adj[a].append((b, i)) + adj[b].append((a, i)) + scalar[i] = (a, b) + assert [(i, comp[a], comp[b]) for i, a, b in paid] == paid_check + assert [raw[v][2] for v in active[:public]] == word['final'] + target = [(initial[r], active[r]) for r in range(public) if r not in main] + fixed = {i for i, (r, _, _) in enumerate(raw) if r >= public} + fixed.update(initial[r] for r in main) + fixed.update(active[r] for r in main) + space = [graph.span(word['frames'][f]) if f is not None else None for f in frames] + sys.setrecursionlimit(30000) + entry, finish, child = bridge_forest(adj) + return raw, raw_id, comp, paid, target, fixed, scalar, space, entry, finish, child + + +def bounds(space, paid, frozen): + parents, children = [set() for _ in space], [set() for _ in space] + order = sorted(range(len(space)), key=lambda i: len(space[i]) if space[i] is not None else -1) + for a, b in paid: + assert space[a] < space[b] + parents[b].add(a) + children[a].add(b) + lo, hi = [EMPTY] * len(space), [FULL] * len(space) + for i in order: + if i in frozen and space[i] is not None: + lo[i] = space[i] + for a in parents[i]: + lo[i] = join(lo[i], lo[a]) + for i in reversed(order): + if i in frozen and space[i] is not None: + hi[i] = space[i] + for b in children[i]: + hi[i] &= hi[b] + return lo, hi, [a | b for a, b in zip(parents, children)] + + +def changed_blocks(space, low, high, neighbors, target, affected): + for a, b in target: + neighbors[a].add(b) + neighbors[b].add(a) + variable = {i for i, s in enumerate(space) if s is not None and low[i] != high[i]} + blocks = [] + while variable & affected: + r = min(variable & affected) + variable.remove(r) + stack, block = [r], [r] + while stack: + u = stack.pop() + for v in sorted(neighbors[u] & variable): + variable.remove(v) + stack.append(v) + block.append(v) + blocks.append(sorted(block)) + return blocks + + +def admissible_volume(block, low, high, neighbors, cap=250000): + q = {i: len(high[i]).bit_length()-len(low[i]).bit_length() for i in block} + if max(q.values()) > 5: + return False + sizes = {i: sum(subspace_count(d, r) for r in range(d+1)) for i, d in q.items()} + pending = {i: neighbors[i] & sizes.keys() for i in block} + total = 0 + while pending: + work = {i: sizes[i] * prod(sizes[j] for j in ns) for i, ns in pending.items()} + v = min(pending, key=lambda i: (work[i], i)) + ns = pending.pop(v) + total += work[v] + if total > cap: + return False + for n in ns: + pending[n].remove(v) + pending[n].update(ns - {n}) + return True + + +def screen(word, proposals, graph, price, journal, time_cap): + raw, ids, comp, raw_paid, raw_target, raw_fixed, scalar, original, enter, end, child = inventory(word, graph) + base = {i: chart(s) for i, s in enumerate(original) if s is not None} + p0 = Counter((comp[a], comp[b]) for _, a, b in raw_paid) + old_lo, old_hi, _ = bounds(original, p0, {comp[i] for i in raw_fixed}) + assert all(old_lo[i] <= s <= old_hi[i] for i, s in enumerate(original) if s is not None) + left, right = map(Q, BRACKET) + interval = {r: (price.raw_margin({r:1}, right)[0], price.raw_margin({r:1}, left)[1]) + for r in range(1, 10)} + assert graph.margin({1: 1, 2: -2, 3: 1}, interval)[0] > 0 + by_edge = defaultdict(list) + for row in proposals: + by_edge[row['add']].append(row) + assert len(by_edge) == 2024 and len(proposals) == 4094 + counts = Counter() + all_hits = [] + todo = [] + started = time.monotonic() + deadline = started + time_cap + new_id = len(original) + + for e, rows in sorted(by_edge.items()): + if time.monotonic() >= deadline: + todo.append(e) + continue + a, b = scalar[e] + old_id = comp[a] + branch = child[e] + assert comp[b] == comp[branch] == old_id + enter_branch, end_branch = enter[branch], end[branch] + + def belong(i): + return new_id if comp[i] == old_id and enter_branch <= enter[i] < end_branch else comp[i] + + assert belong(a) != belong(b) + paid = Counter((belong(i), belong(j)) for _, i, j in raw_paid) + target = Counter((belong(i), belong(j)) for i, j in raw_target) + frozen = {belong(i) for i in raw_fixed} + space = [*original, original[old_id]] + low, high, neighbors = bounds(space, paid, frozen) + possible = [] + for row in rows: + u, v = [belong(ids[r, start-1]) for r, start, _ in row['new_visits']] + if join(low[u], low[v]) <= high[u] & high[v]: + possible.append((u, v, row)) + else: + counts['new_equality_interval_impossible'] += 1 + record = {'add': e, 'old_component': old_id, 'split_component': new_id, + 'proposals': len(rows), 'optimistically_feasible_cuts': len(possible)} + if not possible: + record['status'] = 'all new equality cuts impossible' + else: + changed = {i for i, (a, b) in enumerate(zip(low, high)) + if i == new_id or (a,b) != (old_lo[i],old_hi[i])} + changed.add(old_id) + blocks = changed_blocks(space, low, high, neighbors, target, changed) + old_state = base | {new_id: base[old_id]} + records = [] + for block in blocks: + active = any(paid[x] != target[x] for x in paid.keys() | target.keys() + if x[0] in block or x[1] in block) + if active and not admissible_volume(block, low, high, neighbors): + records.append(dict(proof='deferred volume bound', vertices=block)) + else: + records.append(solve(block, old_state, low, high, paid, target, interval, graph)) + hits = [r for r in records if r['proof'] == 'strict positive candidate'] + waits = [r for r in records if r['proof'] in ('deferred volume bound', 'interval inconclusive')] + record['released_components'] = len(blocks) + if hits or waits: + record.update(status='relaxed positive' if hits else 'deferred', + positive=hits, deferred=waits) + replacements = {i: graph.span(basis) for r in hits for i, basis in r['changed_bases'].items()} + matches = [row for u, v, row in possible if replacements.get(u, space[u]) == + replacements.get(v, space[v])] + record['best_assignment_valid_cuts'] = [row['cut'] for row in matches] + record['possible_cuts'] = [dict(row, cut_components=[u, v]) for u, v, row in possible] + record['split_raw_visits'] = [raw[i] for i in range(len(raw)) if belong(i) == new_id] + all_hits.append(record) + else: + record['status'] = 'release upper bound zero' + counts[record['status']] += 1 + counts['tested_cuts'] += len(rows) + journal.write(json.dumps(record, separators=(',', ':')) + '\n') + journal.flush() + if sum(counts[k] for k in ('all new equality cuts impossible','relaxed positive','deferred','release upper bound zero')) % 100 == 0: + print(f"progress at ADD {e}, {counts['tested_cuts']} cuts", file=sys.stderr, flush=True) + return dict(word=WORD_SHA, counts=counts, remaining_adds=todo, hits=all_hits, + seconds=time.monotonic()-started, cap_seconds=time_cap) + + +def main(word_path, proposals_path, graph_path, price_path, journal_path, cap): + raw = gzip.decompress(Path(word_path).read_bytes()) + assert sha256(raw).hexdigest() == WORD_SHA + proposals = json.loads(Path(proposals_path).read_bytes()) + assert proposals['word'] == WORD_SHA + graph = load('chart_graph', Path(graph_path)) + price = load('directed_price', Path(price_path)) + with Path(journal_path).open('x') as journal: + receipt = screen(json.loads(raw), proposals['surviving_pairs'], graph, price, journal, int(cap)) + print(json.dumps(receipt, indent=2)) + + +if __name__ == '__main__': + if not __debug__: + raise RuntimeError('Assertions are proof checks') + main(*sys.argv[1:]) diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-contact-release-20261110T0922Z/evidence/resolve_pair.py b/research/p104-two-blocker-exclusion/vendor/kappa-contact-release-20261110T0922Z/evidence/resolve_pair.py new file mode 100644 index 0000000000..388c6a26ff --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-contact-release-20261110T0922Z/evidence/resolve_pair.py @@ -0,0 +1,200 @@ +"""Recover an actual nested chart witness for the residual positive rank bound.""" + +from collections import Counter, defaultdict, deque +from fractions import Fraction as Q +from hashlib import sha256 +from itertools import combinations, product +from math import prod +from pathlib import Path +import gzip +import json +import sys + +from constrained import solve_equalities +from eliminate import domain +from release import BRACKET, WORD_SHA, bounds, changed_blocks, chart, inventory, join, load, subspace_count + + +def volume(domains, graph, cap): + sizes = {i:len(s) for i,s in domains.items()} + adj = {i:graph[i]&sizes.keys() for i in sizes} + total = 0 + while adj: + work = {i:sizes[i]*prod(sizes[j] for j in ns) for i,ns in adj.items()} + v = min(adj,key=lambda i:(work[i],i)) + ns = adj.pop(v) + total += work[v] + if total > cap: + return None + for n in ns: + adj[n].remove(v) + adj[n].update(ns-{n}) + return total + + +def quotient_domain(lo, hi): + q = len(hi).bit_length()-len(lo).bit_length() + if q <= 5: + return domain(lo,hi) + axes = [] + found = set(lo) + for v in sorted(hi): + if v not in found: + axes.append(v) + found |= {v ^ w for w in found} + assert len(axes)==q and found==hi + states = [] + for rank in range(q+1): + for pivots in combinations(range(q),rank): + slots = [(row,c) for row,p in enumerate(pivots) for c in range(p+1,q) if c not in pivots] + for vals in product((0,1),repeat=len(slots)): + rows = [axes[p] for p in pivots] + for (row,c),value in zip(slots,vals): + if value: + rows[row] ^= axes[c] + space = set(lo) + for v in rows: + space |= {v ^ w for w in space} + states.append(chart(space)) + assert len(states)==len(set(states))==sum(subspace_count(q,r) for r in range(q+1)) + return sorted(states) + + +def rank_conflict(block, base, domains, ranks, paid, target, equalities): + """Find a deterministic geometric arc obstruction at the relaxed ranks.""" + active = set(block) + links = defaultdict(set) + rules = defaultdict(list) + for a,b in paid.keys()|target.keys(): + if a not in active and b not in active: + continue + links[a].add(b) + links[b].add(a) + rules[a,b].append('subset') + rules[b,a].append('superset') + for a,b in equalities: + if a != b and (a in active or b in active): + links[a].add(b) + links[b].add(a) + rules[a,b].append('equal') + rules[b,a].append('equal') + allowed = {i:tuple(m for m,r in domains[i] if r==ranks[i]) if i in active else (base[i][0],) + for i in links} + sizes = {i:len(v) for i,v in allowed.items()} + if not all(sizes.values()): + return dict(status='empty rank domain',vertices=[i for i,n in sizes.items() if not n]) + arcs = deque(sorted(rules)) + changes = [] + while arcs: + a,b = arcs.popleft() + requirements=rules[a,b] + compatible = lambda x,y: all((x==y if rule=='equal' else + not x&~y if rule=='subset' else not y&~x) + for rule in requirements) + revised=tuple(x for x in allowed[a] if any(compatible(x,y) for y in allowed[b])) + if len(revised)==len(allowed[a]): + continue + changes.append(dict(vertex=a,neighbor=b,relations=requirements, + before=len(allowed[a]),after=len(revised))) + if not revised: + return dict(status='empty domain by arc consistency',failed_edge=[a,b], + initial_sizes=sizes,changes=changes) + allowed[a]=revised + arcs.extend((v,a) for v in sorted(links[a]) if v!=b) + return dict(status='arc consistency alone does not exclude',initial_sizes=sizes,changes=changes) + + +def refine(word, row, graph, engine): + raw, ids, comp, raw_paid, raw_target, fixed, scalar, original, entry, end, child = inventory(word, graph) + base = {i:chart(s) for i,s in enumerate(original) if s is not None} + old_lo, old_hi, _ = bounds(original, Counter((comp[a],comp[b]) for _,a,b in raw_paid), {comp[i] for i in fixed}) + left,right = map(Q,BRACKET) + weights = {r:(engine.raw_margin({r:1},right)[0],engine.raw_margin({r:1},left)[1]) for r in range(1,10)} + adds = row['adds'] + roots = {e:comp[scalar[e][0]] for e in adds} + split = {e:len(original)+j for j,e in enumerate(adds)} + ordered = sorted(adds,key=lambda e:entry[child[e]]) + + def belong(i): + c=comp[i] + for e in ordered: + if comp[i]==roots[e] and entry[child[e]]<=entry[i]=len(original) or (l,h)!=(old_lo[i],old_hi[i])} + changed |= set(roots.values()) + for u,v in eq: + changed.update((u,v)) + if u!=v: + neighbors[u].add(v) + neighbors[v].add(u) + blocks = changed_blocks(space,lo,hi,neighbors,target,changed) + frame_spaces = {graph.span(basis) for basis in word['frames']} + results = [] + for block in blocks: + q = {i:len(upper[i]).bit_length()-len(lower[i]).bit_length() for i in block} + sizes = {i:sum(subspace_count(d,r) for r in range(d+1)) for i,d in q.items()} + rank = solve_equalities(block,states,lower,upper,paid,target,eq,weights,True,{}) + packet = dict(vertices=block,quotient_dimensions=q,domain_sizes=sizes,rank_relaxation=rank) + if not rank.get('infeasible') and Q(rank['upper'])>0: + ranks = rank['selected_ranks'] + existing = {i:sorted(chart(s) for s in frame_spaces if lower[i]<=s<=upper[i]) for i in block} + at_rank = {i:[s for s in existing[i] if s[1]==ranks[i]] for i in block} + for key, selected in [('existing_charts_at_best_ranks',at_rank),('all_existing_charts',existing)]: + work=volume(selected,neighbors,1200000) + if work is not None: + packet[key]=solve_equalities(block,states,lower,upper,paid,target,eq,weights,False,selected) + exact_volume = volume({i:range(n) for i,n in sizes.items()},neighbors,2400000) + packet['exact_table_volume']=exact_volume + if max(q.values())<=7 and exact_volume is not None: + whole={i:quotient_domain(lower[i],upper[i]) for i in block} + packet['full_chart_search']=solve_equalities(block,states,lower,upper,paid,target,eq,weights,False,whole) + diagnostic=rank_conflict(block,states,whole,ranks,paid,target,eq) + if 'failed_edge' in diagnostic: + affected=set(diagnostic['failed_edge']) + diagnostic['contact_visits']={i:[raw[j] for j in range(len(raw)) if belong(j)==i] + for i in sorted(affected)} + diagnostic['touching_move_events']=[k for k,a,b in raw_paid + if {belong(a),belong(b)}<=affected] + packet['best_rank_geometric_diagnostic']=diagnostic + results.append(packet) + return dict(status='refined',iterations=iterations,results=results,source_pair=row) + + +def main(word_path,pair_path,graph_path,price_path): + raw=gzip.decompress(word_path.read_bytes()) + source=json.loads(pair_path.read_bytes()) + assert sha256(raw).hexdigest()==WORD_SHA==source['word'] + assert len(source['hits'])==1 + out=refine(json.loads(raw),source['hits'][0],load('chart_graph',graph_path),load('directed_price',price_path)) + print(json.dumps(dict(word=WORD_SHA,**out),indent=2)) + + +if __name__=='__main__': + main(*(Path(p) for p in sys.argv[1:])) diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-coupled-boundaries-20261110T0908Z/evidence/eliminate.py b/research/p104-two-blocker-exclusion/vendor/kappa-coupled-boundaries-20261110T0908Z/evidence/eliminate.py new file mode 100644 index 0000000000..da6d2d84a2 --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-coupled-boundaries-20261110T0908Z/evidence/eliminate.py @@ -0,0 +1,229 @@ +"""Exact finite-domain optimization for the remaining coupled chart components.""" + +from collections import Counter +from fractions import Fraction as Q +from functools import lru_cache +from hashlib import sha256 +from itertools import product +from math import prod +from pathlib import Path +import gzip +import json +import sys + +PREVIOUS = Path(__file__).resolve().parents[2] / 'kappa-helper-boundary-20261110T0853Z' / 'evidence' +sys.path.append(str(PREVIOUS)) +from screen import basis, load +from geometry import geometry, subspace_count + +WORD = 'cfdfa3a83cb3714576517b66b56a174c0b83841aee90a828cdb0ae1dfe882970' +BRACKET = ('0.00363381505866791008145080644149513', + '0.00363381505866791008145080644149514') +GRID = 10**45 + + +def bits(mask): + while mask: + bit = mask & -mask + yield bit.bit_length() - 1 + mask ^= bit + + +def chart(space): + return sum(1 << v for v in space), len(space).bit_length() - 1 + + +@lru_cache(None) +def domain(lo, hi): + found = {lo} + todo = [lo] + for s in todo: + for v in sorted(hi - s): + t = s | {v ^ x for x in s} + if t not in found: + found.add(t) + todo.append(t) + d = len(hi).bit_length() - len(lo).bit_length() + assert len(todo) == sum(subspace_count(d, k) for k in range(d+1)) + return sorted(map(chart, todo)) + + +def top_two(values): + first = second = None + for value in values: + if value is None or value == first or value == second: + continue + if first is None or value > first: + first, second = value, first + elif second is None or value > second: + second = value + return first, second + + +def elimination(factors, sizes): + """Maximize additive factors, retaining the top two distinct totals.""" + pending = set(sizes) + history = [] + work = peak = 0 + while pending: + scopes = {i: set().union(*(set(s) for s, _ in factors if i in s)) for i in pending} + vertex = min(pending, key=lambda i: (prod(sizes[j] for j in scopes[i]), i)) + scope = sorted(scopes[vertex]) + assert vertex in scope + context = tuple(j for j in scope if j != vertex) + grouped = [(s, t) for s, t in factors if vertex in s] + factors = [(s, t) for s, t in factors if vertex not in s] + positions = [tuple((context + (vertex,)).index(j) for j in s) for s, _ in grouped] + result, witness = {}, {} + volume = prod(sizes[j] for j in scope) + work += volume + peak = max(peak, volume) + for co in product(*(range(sizes[i]) for i in context)): + best = second = None + for v in range(sizes[vertex]): + state = (*co, v) + values = [t.get(tuple(state[k] for k in idx)) for (_, t), idx in zip(grouped, positions)] + if any(value is None for value in values): + continue + total = sum(value[0] for value in values) + alternatives = [value[1] - value[0] for value in values if value[1] is not None] + other = total + max(alternatives) if alternatives else None + if best is None or total > best: + witness[co] = v + best, second = top_two((best, second, total, other)) + if best is not None: + result[co] = (best, second) + assert result + factors.append((context, result)) + history.append((vertex, context, witness)) + pending.remove(vertex) + finals = [table[()] for scope, table in factors if not scope] + assert len(finals) == len(factors) + best = sum(first for first, _ in finals) + gaps = [second - first for first, second in finals if second is not None] + runner_up = best + max(gaps) if gaps else None + assignment = {} + for vertex, context, witness in reversed(history): + assignment[vertex] = witness[tuple(assignment[i] for i in context)] + return best, runner_up, assignment, {'max_table_volume': peak, 'searched_cells': work} + + +def solve(block, base, lo, hi, paid, target, intervals, graph, compare_winner=False): + vertices = set(block) + edges = sorted({(a, b) for a, b in paid.keys() | target.keys() if a in vertices or b in vertices}) + signed = {e: target[e]-paid[e] for e in edges} + mass = sum(abs(c) for c in signed.values()) + if not mass: + return dict(vertices=block, proof='pointwise target and paid cancellation', signed_edges=0) + + # Scores order midpoint sums first, and then uniquely encode distinct + # signed rank profiles within each midpoint tie. + radix = 2*mass+1 + stride = radix**9 + mid = {r: int(GRID * (a+b)/2) for r, (a, b) in intervals.items()} + score = {r: v*stride + radix**(r-1) for r, v in mid.items()} + score[0] = 0 + uncertainty = max(max(abs(Q(mid[r], GRID)-a), abs(Q(mid[r], GRID)-b)) + for r, (a, b) in intervals.items()) + domains = {i: domain(lo[i], hi[i]) for i in vertices} + all_states = {i: (base[i],) for a, b in edges for i in (a, b) if i not in vertices} + all_states.update(domains) + factors = [] + for a, b in edges: + scope = tuple(sorted({a, b} & vertices)) + table = {} + old_rank = base[b][1] - base[a][1] + for j, (am, ad) in enumerate(all_states[a]): + for k, (bm, bd) in enumerate(all_states[b]): + if am & ~bm or (target[a, b] and am == bm): + continue + key = tuple(j if i == a else k for i in scope) + table[key] = (signed[a, b]*(score[bd-ad]-score[old_rank]), None) + assert table + factors.append((scope, table)) + best, second, assignment, stats = elimination(factors, {i: len(d) for i, d in domains.items()}) + assert best >= 0 + new = base.copy() + for i, j in assignment.items(): + new[i] = domains[i][j] + gain_profile = Counter() + for a, b in edges: + assert not new[a][0] & ~new[b][0] and (not target[a, b] or new[a] != new[b]) + old_rank = base[b][1]-base[a][1] + new_rank = new[b][1]-new[a][1] + gain_profile[old_rank] -= signed[a, b] + if new_rank: + gain_profile[new_rank] += signed[a, b] + gain_profile = {r: c for r, c in sorted(gain_profile.items()) if c} + assert best == sum(score[r]*c for r, c in gain_profile.items()) + assert sum(r*c for r, c in gain_profile.items()) == 0 + record = dict(vertices=block, signed_edges=sum(bool(c) for c in signed.values()), stats=stats, + best_encoded_score=str(best), best_gain_profile=gain_profile) + if best == 0: + assert not gain_profile + if second is None: + record['proof'] = 'all feasible signed profiles identical' + else: + center = Q((second + stride//2)//stride, GRID) + bound = center + 2*mass*uncertainty + record['nonzero_profile_upper'] = str(bound) + if bound < 0: + record['proof'] = 'every other signed profile strictly loses' + else: + record['proof'] = 'interval inconclusive' + else: + lo_gain, hi_gain = graph.margin({r: -c for r, c in gain_profile.items()}, intervals) + record.update(proof='strict positive candidate' if lo_gain > 0 else 'interval inconclusive', + best_gain=[str(lo_gain), str(hi_gain)], + changed_bases={i: basis(frozenset(bits(new[i][0]))) for i in sorted(vertices) + if new[i] != base[i]}) + if compare_winner and second is not None: + center_gap = Q((second + stride//2)//stride - (best + stride//2)//stride, GRID) + record['other_profile_minus_winner_upper'] = str(center_gap + 2*mass*uncertainty) + return record + + +def main(word_path, graph_path, price_path, verified_path=None): + raw = gzip.decompress(word_path.read_bytes()) + assert sha256(raw).hexdigest() == WORD + graph = load('chart_graph', graph_path) + price = load('directed_price', price_path) + space, lo, hi, moves, helpers, islands = geometry(json.loads(raw), graph) + paid = Counter((a,b) for _, a, b in moves) + target = Counter((a,b) for _, a, b in helpers) + base = {i: chart(s) for i, s in enumerate(space) if s is not None} + checked = None if verified_path is None else json.loads(verified_path.read_bytes()) + if checked: + assert checked['base_canonical_sha256'] == WORD + assert checked['candidate_canonical_sha256'] == 'cca66a7ec924bab47ccd1410968d16e071a01dc6110b5c08040bd207f753d066' + bracket = checked['independent_price']['crossing_intervals']['candidate'] + else: + bracket = BRACKET + left, right = map(Q, bracket) + intervals = {r: (price.raw_margin({r:1}, right)[0], price.raw_margin({r:1}, left)[1]) + for r in range(1, 10)} + assert graph.margin({1: 1, 2: -2, 3: 1}, intervals)[0] > 0 + assert top_two((4, 2, 3, 4)) == (4, 3) + records = [solve(block, base, lo, hi, paid, target, intervals, graph, bool(checked)) + for choices, block in sorted(islands) if checked or choices > 50000] + assert len(records) == (99 if checked else 14) + result = dict(word=WORD, crossing=bracket, formerly_open=14, + outcomes=Counter(r['proof'] for r in records), results=records) + if checked: + winners = [r for r in records if r['proof'] == 'strict positive candidate'] + assert len(winners) == 1 + assert not any(r['proof'] == 'interval inconclusive' for r in records) + literal_gain = Counter({int(r): n for r, n in checked['local_target_delta'].items()}) + literal_gain.subtract({int(r): n for r, n in checked['local_paid_delta'].items()}) + assert winners[0]['best_gain_profile'] == {r:n for r,n in literal_gain.items() if n} + assert winners[0]['changed_bases'] == {107: []} + assert Q(winners[0]['other_profile_minus_winner_upper']) < 0 + result['winner_word'] = checked['candidate_canonical_sha256'] + result['fixed_scalar_chart_margin_optimized'] = True + print(json.dumps(result, indent=2)) + + +if __name__ == '__main__': + if not __debug__: + raise RuntimeError('Assertions are proof checks') + main(*(Path(p) for p in sys.argv[1:])) diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-coupled-boundaries-20261110T0908Z/evidence/geometry.py b/research/p104-two-blocker-exclusion/vendor/kappa-coupled-boundaries-20261110T0908Z/evidence/geometry.py new file mode 100644 index 0000000000..370ad26825 --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-coupled-boundaries-20261110T0908Z/evidence/geometry.py @@ -0,0 +1,75 @@ +"""Chart intervals and independent invoice components, derived from the 0853 screen.""" + +from functools import lru_cache +from math import prod + +from screen import basis, boundaries + + +@lru_cache(None) +def subspace_count(dimension, rank): + if rank == 0 or rank == dimension: + return 1 + return subspace_count(dimension - 1, rank) + (2**(dimension-rank) + * subspace_count(dimension - 1, rank - 1)) + + +def geometry(word, graph): + groups, frames, _, moves, _ = graph.graph(word) + frozen, helpers = boundaries(word, groups) + space = [graph.span(word['frames'][f]) if f is not None else None for f in frames] + dims = [len(s).bit_length() - 1 if s is not None else -1 for s in space] + order = sorted(range(len(groups)), key=dims.__getitem__) + parents = [set() for _ in groups] + children = [set() for _ in groups] + for _, a, b in moves: + assert space[a] < space[b] + parents[b].add(a) + children[a].add(b) + + @lru_cache(None) + def join(a, b): + if a <= b: + return b + if b <= a: + return a + result = set(a) + for v in basis(b): + if v not in result: + result |= {v ^ x for x in result} + return frozenset(result) + + low = [frozenset((0,)) for _ in groups] + high = [frozenset(range(512)) for _ in groups] + for i in order: + if i in frozen and space[i] is not None: + low[i] = space[i] + for a in parents[i]: + low[i] = join(low[i], low[a]) + for i in reversed(order): + if i in frozen and space[i] is not None: + high[i] = space[i] + for b in children[i]: + high[i] = high[i] & high[b] + assert all(low[i] <= s <= high[i] for i, s in enumerate(space) if s is not None) + variable = {i for i, s in enumerate(space) if s is not None and low[i] != high[i]} + neighbor = [a | b for a, b in zip(parents, children)] + for _, a, b in helpers: + assert space[a] < space[b] + neighbor[a].add(b) + neighbor[b].add(a) + islands = [] + while variable: + pivot = min(variable) + variable.remove(pivot) + pending, block = [pivot], [] + while pending: + i = pending.pop() + block.append(i) + for j in sorted(neighbor[i] & variable): + variable.remove(j) + pending.append(j) + quotients = tuple(sorted(len(high[i]).bit_length()-len(low[i]).bit_length() for i in block)) + choices = prod(sum(subspace_count(q, r) for r in range(q+1)) for q in quotients) + islands.append((choices, block)) + return space, low, high, moves, helpers, islands diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-coupled-boundaries-20261110T0908Z/replay/research/shared-wire-stop-fusion/audit_price.py b/research/p104-two-blocker-exclusion/vendor/kappa-coupled-boundaries-20261110T0908Z/replay/research/shared-wire-stop-fusion/audit_price.py new file mode 100644 index 0000000000..f05fb5522d --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-coupled-boundaries-20261110T0908Z/replay/research/shared-wire-stop-fusion/audit_price.py @@ -0,0 +1,119 @@ +"""Independent directed rational price enclosure of the audited STOP invoice. + +Prepared for ToikY with substantial OpenAI Codex assistance. Apache-2.0. +""" +from collections import Counter +from decimal import Decimal, localcontext +from fractions import Fraction as Q +from functools import lru_cache +from hashlib import sha256 +import json +from pathlib import Path + +HERE = Path(__file__).resolve().parent +PKG = HERE.parent / "shared-wire-split-composition" +GRID = 10**65 +if not __debug__: + raise RuntimeError("Run without -O; assertions are proof checks.") + + +def down(x): + return Q((x * GRID).__floor__(), GRID) + + +def up(x): + return Q((x * GRID).__ceil__(), GRID) + + +def log_series(x): + z = (x-1)/(x+1) + series = sum(2*z**(2*i+1)/(2*i+1) for i in range(80)) + tail = 2*z**161/(161*(1-z*z)) + return series, series + tail + + +@lru_cache(None) +def log(r): + a = r.bit_length() - 1 + l1,h1 = log_series(Q(r, 2**a)) + l2,h2 = log_series(Q(2)) + return down(l1 + a*l2), up(h1 + a*h2) + + +def exp_pos(x): + assert 0 <= x < 1 + term = total = Q(1) + for i in range(1, 48): + term *= x/i + total += term + # Terms after index 48 have ratio < 1/2. + return total, total + 2*term*x/48 + + +def raw_margin(hist, kappa): + lower = upper = Q(0) + for r,c in sorted(hist.items()): + lo,hi = log(r) + x = down(Q(kappa)*lo) + y = up(Q(kappa)*hi) + a,b = down(r/exp_pos(y)[1]), up(r/exp_pos(x)[0]) + lower += c*(a if c >= 0 else b) + upper += c*(b if c >= 0 else a) + return lower, upper + + +def crossing(hist): + with localcontext() as ctx: + ctx.prec = 66 + logs = {r: Decimal(r).ln() for r in hist} + lo,hi = Decimal(0), Decimal(".00376669") + for _ in range(145): + mid = (lo + hi)/2 + m = sum(c*r*(-mid*logs[r]).exp() for r,c in hist.items()) + if m > 0: + lo = mid + else: + hi = mid + diagnostic = (lo+hi)/2 + unit = 10**35 + floored = (Q(diagnostic)*unit).__floor__() + lo,hi = Q(floored,unit), Q(floored+1,unit) + lower_margin = raw_margin(hist, lo) + upper_margin = raw_margin(hist, hi) + assert lower_margin[0] > 0 and upper_margin[1] < 0 + return str(diagnostic), (lo,hi), (lower_margin,upper_margin) + + +def main(): + full = PKG / "FULL-RESULT.json" + raw = full.read_bytes() + assert sha256(raw).hexdigest() == FULL_SHA + source = json.loads(raw) + audit = json.loads((HERE/"RESULT.json").read_text()) + assert source["word_canonical_json_sha256"] == "91429a6b96729292a8764836e00c87a6f7cd3b76f05159033f4867f69a98d097" + assert audit["candidate_canonical_sha256"] == "d0de7804e56b2c8fe6db9d323560e53041810fd0377b91680cbed19b5176ebc0" + assert audit["invoice"]["T"] == source["invoice"]["T"] + hist = Counter({int(r): n for r,n in source["invoice"]["T"].items()}) + hist.subtract({int(r): n for r,n in source["invoice"]["P"].items()}) + new = Counter({int(r): n for r,n in audit["invoice"]["T"].items()}) + new.subtract({int(r): n for r,n in audit["invoice"]["P"].items()}) + assert {r: new[r]-hist[r] for r in new.keys() | hist.keys() if new[r] != hist[r]} == {1:126,2:-36,4:54,5:-54} + old_d, old_interval, old_m = crossing(hist) + new_d, new_interval, new_m = crossing(new) + assert old_interval[1] < Q(audit["gate"]["claim"]) < new_interval[0] + assert sum(r*n for r,n in hist.items()) == sum(r*n for r,n in new.items()) == 1520 + out = { + "status": "PASS_INDEPENDENT_STOP_PRICE", "source_full_result_sha256": FULL_SHA, + "baseline_diagnostic": old_d, "candidate_diagnostic": new_d, + "baseline_bracket": list(map(str,old_interval)), "candidate_bracket": list(map(str,new_interval)), + "baseline_bracket_margins": [list(map(str,row)) for row in old_m], + "candidate_bracket_margins": [list(map(str,row)) for row in new_m], + "strict_improvement_in_raw_crossing": str(new_interval[0] - old_interval[1]), + "complete_signed_rank_mass_surplus": 1520, + } + print(json.dumps(out, indent=2, sort_keys=True)) + + +if __name__ == "__main__": + FULL_SHA = "d9ba709fa5dcefffe3f3abdcf34600ce188224703cfd743e6db8b58ba4816cb7" + main() diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-helper-boundary-20261110T0853Z/evidence/screen.py b/research/p104-two-blocker-exclusion/vendor/kappa-helper-boundary-20261110T0853Z/evidence/screen.py new file mode 100644 index 0000000000..6dc85aba35 --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-helper-boundary-20261110T0853Z/evidence/screen.py @@ -0,0 +1,199 @@ +"""One-dimensional closure search with variable productive helper endpoints.""" + +from collections import Counter, defaultdict +from fractions import Fraction as Q +from hashlib import sha256 +from importlib.util import module_from_spec, spec_from_file_location +from pathlib import Path +import gzip +import json +import sys + +WORD_SHA = 'e2db4293ac41720af326d3acddabb580c1781c781b18d50dc81cfc8739f0cc38' +BRACKET = ('0.00363214407269170173702203666413962', + '0.00363214407269170173702203666413963') + + +def load(name, path): + spec = spec_from_file_location(name, path) + module = module_from_spec(spec) + spec.loader.exec_module(module) + return module + + +def boundaries(word, groups): + main = set(word['live']) | {i + 112 for i in word['live']} + main |= set(word['hosted']['X2']) | set(word['hosted']['Y2']) + visits = defaultdict(list) + for a, group in enumerate(groups): + for r, event, _ in group: + visits[r].append((event, a)) + helper_pairs = [] + frozen = set() + for r, history in sorted(visits.items()): + first, last = min(history)[1], max(history)[1] + if r >= word['public']: + frozen.update(a for _, a in history) + elif r in main: + frozen.update((first, last)) + else: + helper_pairs.append((r, first, last)) + return frozen, helper_pairs + + +def edit_span(space, mode, vector): + if mode == 'up': + return space | {v ^ vector for v in space} + return frozenset(v for v in space if not (v & vector).bit_count() % 2) + + +def basis(space): + generated = {0} + result = [] + for v in sorted(space): + if v not in generated: + result.append(v) + generated |= {w ^ v for w in generated} + assert generated == space + return result + + +def screen(word, graph, price): + groups, frames, old_frozen, moves, scalars = graph.graph(word) + fixed, helpers = boundaries(word, groups) + assert fixed < old_frozen + assert len(helpers) == word['public'] - 208 - 192 + spaces = [graph.span(word['frames'][f]) if f is not None else None for f in frames] + dims = [len(word['frames'][f]) if f is not None else -1 for f in frames] + masks = [sum(1 << v for v in s) if s is not None else 0 for s in spaces] + order = sorted(range(len(groups)), key=dims.__getitem__) + frozen_mask = sum(1 << i for i in fixed) + old_frozen_mask = sum(1 << i for i in old_frozen) + parents = [set() for _ in groups] + children = [set() for _ in groups] + paid_at = [[] for _ in groups] + helper_at = [[] for _ in groups] + for j, (_, a, b) in enumerate(moves): + assert spaces[a] < spaces[b] + parents[b].add(a) + children[a].add(b) + paid_at[a].append(j) + paid_at[b].append(j) + for j, (_, a, b) in enumerate(helpers): + assert spaces[a] < spaces[b] + helper_at[a].append(j) + helper_at[b].append(j) + assert old_frozen - fixed <= {a for _, u, v in helpers for a in (u, v)} + + lower, upper = map(Q, BRACKET) + power = {r: (price.raw_margin({r: 1}, upper)[0], price.raw_margin({r: 1}, lower)[1]) + for r in range(1, 10)} + assert graph.margin({1: 1, 2: -2, 3: 1}, power)[0] > 0 + assert graph.margin({1: -1, 2: 2, 3: -1}, power)[1] < 0 + stats = {} + hits = [] + prices = {} + for mode in ('up', 'down'): + counts = Counter() + seen = set() + up = mode == 'up' + inward = children if up else parents + visits = order[::-1] if up else order + step = 1 if up else -1 + for v in range(1, 512): + bad = 1 << v if up else sum(1 << x for x in range(512) if (x & v).bit_count() % 2) + active = [bool(mask & bad) != up and dim >= 0 for mask, dim in zip(masks, dims)] + closures = [0] * len(groups) + for a in visits: + if not active[a]: + continue + closure = 1 << a + for b in inward[a]: + closure |= closures[b] + closures[a] = closure + if not closure & old_frozen_mask: + continue + if closure & frozen_mask: + counts['blocked'] += 1 + continue + if closure in seen: + continue + seen.add(closure) + counts['distinct_eligible_closures'] += 1 + changed = list(graph.bits(closure)) + paid_delta = Counter() + target_delta = Counter() + helper_changes = [] + zero_moves = [] + for j in sorted({j for i in changed for j in helper_at[i]}): + r, u, w = helpers[j] + old = dims[w] - dims[u] + new = old + step * (bool(closure & (1 << w)) - bool(closure & (1 << u))) + if new != old: + helper_changes.append((r, u, w, old, new)) + target_delta[old] -= 1 + target_delta[new] += 1 + if target_delta[0]: + counts['zero_target_rejected'] += 1 + continue + for j in sorted({j for i in changed for j in paid_at[i]}): + event, u, w = moves[j] + old = dims[w] - dims[u] + new = old + step * (bool(closure & (1 << w)) - bool(closure & (1 << u))) + assert new >= 0 + if new != old: + paid_delta[old] -= 1 + if new: + paid_delta[new] += 1 + else: + zero_moves.append(event) + delta = paid_delta.copy() + delta.subtract(target_delta) + assert sum(r*n for r, n in delta.items()) == 0 + signature = tuple((r, n) for r, n in sorted(delta.items()) if n) + if not signature: + counts['exact_ties'] += 1 + continue + if signature not in prices: + prices[signature] = graph.margin(dict(signature), power) + lo, hi = prices[signature] + if hi < 0: + counts['directed_losses'] += 1 + continue + counts['positive_or_unresolved'] += 1 + replacements = {i: edit_span(spaces[i], mode, v) for i in changed} + for _, u, w in moves: + if u in replacements or w in replacements: + assert replacements.get(u, spaces[u]) <= replacements.get(w, spaces[w]) + for _, u, w in helpers: + if u in replacements or w in replacements: + assert replacements.get(u, spaces[u]) < replacements.get(w, spaces[w]) + hits.append({ + 'mode': mode, 'vector': v, 'seed_component': a, + 'changed_bases': {i: basis(s) for i, s in replacements.items()}, + 'visit_count': sum(len(groups[i]) for i in changed), + 'target_delta': {r: n for r, n in sorted(target_delta.items()) if n}, + 'paid_delta': {r: n for r, n in sorted(paid_delta.items()) if n}, + 'zero_moves': zero_moves, + 'helper_rank_changes': helper_changes, + 'gain_bounds': [str(lo), str(hi)], + }) + stats[mode] = dict(counts) + hits.sort(key=lambda h: (Q(h['gain_bounds'][0]), -h['visit_count']), reverse=True) + return dict(scope='single direction single-seed nested chart closure; main boundary and all owned visits fixed; productive helper endpoints relaxed', + original_frozen=len(old_frozen), retained_frozen=len(fixed), helpers=len(helpers), + stats=stats, count=len(hits), best=hits[:20]) + + +def main(word_path, graph_path, price_path): + raw = gzip.decompress(word_path.read_bytes()) + assert sha256(raw).hexdigest() == WORD_SHA + word = json.loads(raw) + result = screen(word, load('chart_graph', graph_path), load('directed_price', price_path)) + print(json.dumps(dict(word=WORD_SHA, crossing_bracket=BRACKET, **result), indent=2)) + + +if __name__ == '__main__': + if not __debug__: + raise RuntimeError('Assertions are proof checks') + main(*(Path(p) for p in sys.argv[1:])) diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-interior-20261110T0823Z/evidence/closure.py b/research/p104-two-blocker-exclusion/vendor/kappa-interior-20261110T0823Z/evidence/closure.py new file mode 100644 index 0000000000..2c3578ce1c --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-interior-20261110T0823Z/evidence/closure.py @@ -0,0 +1,162 @@ +#!/usr/bin/env python3 +"""One-vector upward and one-hyperplane downward closures on the chart graph.""" +from collections import Counter, defaultdict +from fractions import Fraction as Q +from importlib.util import module_from_spec, spec_from_file_location +from hashlib import sha256 +from pathlib import Path +import gzip +import json +import sys + + +def span(basis): + out={0} + for v in basis: + assert v not in out + out|={v^x for x in out} + return frozenset(out) + + +def bits(x): + while x: + b=x&-x + yield b.bit_length()-1 + x^=b + + +def graph(w): + n=w['public'] + charts=w['initial']+[None]*w['owned_fields'] + parent=list(range(len(charts))) + nodes=list(range(len(charts))) + meta=[(i,-1,f) for i,f in enumerate(charts)] + moves=[] + scalars=[] + frozen=set(range(len(charts))) + def find(x): + while parent[x]!=x: + parent[x]=parent[parent[x]]; x=parent[x] + return x + def union(a,b): + a,b=find(a),find(b) + if a!=b: parent[a]=b + for i,e in enumerate(w['program']): + op,r=e[:2] + if op in ('MOVE','INIT','CLEAR'): + f=e[3] if op=='MOVE' else (e[2] if op=='INIT' else None) + j=len(meta) + meta.append((r,i,f)); parent.append(j) + if op=='MOVE' and r=n: frozen.add(j) + nodes[r]=j; charts[r]=f + else: + rr=e[1:3] if op in ('ADD','COPY') else e[1:2] + for v in rr: + assert charts[v]==e[-1] + union(nodes[r],nodes[v]) + scalars.append((i,nodes[r])) + frozen.update(nodes) + comps=defaultdict(list); representatives={} + for i,entry in enumerate(meta): comps[find(i)].append(entry) + groups=list(comps.values()) + for i,x in enumerate(comps): representatives[x]=i + frames=[g[0][2] for g in groups] + assert all(all(f==frames[i] for _,_,f in g) for i,g in enumerate(groups)) + resolve=lambda x:representatives[find(x)] + return groups,frames,{resolve(i) for i in frozen},[(i,resolve(a),resolve(b)) for i,a,b in moves],[(i,resolve(a)) for i,a in scalars] + + +def screen(w, power_bounds): + groups,frames,frozen,moves,scalars=graph(w) + dims=[-1 if f is None else len(w['frames'][f]) for f in frames] + fmask=[0 if f is None else sum(1<=0 for m,d in zip(fmask,dims)] + closures=[0]*len(groups) + for a in visit: + if not active[a]: continue + r=1<=0 + delta[old]-=1 + if new:delta[new]+=1 + delta={k:n for k,n in sorted(delta.items()) if n} + assert sum(k*n for k,n in delta.items())==0 + if not delta: + counts['exact_invoice_tie']+=1 + continue + lo,hi=margin(delta,power_bounds) + if hi<0: + counts['directed_price_losing']+=1 + best_losing_upper=hi if best_losing_upper is None else max(best_losing_upper,hi) + else: + hits.append({'mode':mode,'vector':v,'start':a,'changed':change, + 'gain_bounds':list(map(str,(lo,hi))),'local_delta':delta}) + counts['not_ruled_out']+=1 + stats[mode]=dict(counts) + hits.sort(key=lambda z:Q(z['gain_bounds'][1]),reverse=True) + for hit in hits[:20]: + hit['visits']={i:groups[i] for i in hit['changed']} + hit['scalars']=[(i,a) for i,a in scalars if a in set(hit['changed'])] + return {'components':len(groups),'frozen_components':len(frozen),'public_moves':len(moves),'stats':stats,'n_hits':len(hits),'top':hits[:20], + 'best_losing_upper':str(best_losing_upper)} + + +def margin(delta, bounds): + low=high=Q(0) + for r,paid in delta.items(): + c=-paid + a,b=bounds[r] + low+=c*(a if c>=0 else b) + high+=c*(b if c>=0 else a) + return low,high + + +if __name__=='__main__': + p=Path(sys.argv[1]); raw=gzip.decompress(p.read_bytes()); w=json.loads(raw) + digest=sha256(raw).hexdigest() + assert digest=='e2db4293ac41720af326d3acddabb580c1781c781b18d50dc81cfc8739f0cc38' + lower,upper=map(Q,sys.argv[2:4]); assert 00 + assert margin({r:-n for r,n in control.items()},bounds)[1]<0 + out=screen(w,bounds) + print(json.dumps({'source':digest,'screen_bracket':sys.argv[2:4], + 'directed_price_controls':2,**out},indent=2)) diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-nonbridge-pairs-20261110T0937Z/evidence/nonbridge_screen.py b/research/p104-two-blocker-exclusion/vendor/kappa-nonbridge-pairs-20261110T0937Z/evidence/nonbridge_screen.py new file mode 100644 index 0000000000..e8171acda0 --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-nonbridge-pairs-20261110T0937Z/evidence/nonbridge_screen.py @@ -0,0 +1,214 @@ +"""Exact or directed-upper pricing for initially noncoframed cut-pair retimings.""" + +from bisect import bisect_left, bisect_right +from collections import Counter, defaultdict +from fractions import Fraction as Q +from hashlib import sha256 +from itertools import product +from pathlib import Path +import gzip +import json +import sys +import time + +PREVIOUS = Path(__file__).resolve().parents[2] / 'kappa-contact-release-20261110T0922Z' / 'evidence' +sys.path.insert(0,str(PREVIOUS)) +from release import BRACKET, WORD_SHA, bounds, changed_blocks, chart, join, load, subspace_count +from constrained import solve_equalities +from resolve_pair import quotient_domain, volume + + +def options(event_index, event, model, ignored=None): + _, dest, source, *_ = event + lo, hi = 0, model['events'] + for group in (model['writes'].get(str(source),[]), model['reads'].get(str(dest),[])): + if ignored is not None: + group=[i for i in group if i!=ignored] + at = bisect_left(group,event_index) + assert at==len(group) or group[at]!=event_index + if at: + lo=max(lo,group[at-1]+1) + if at0 + old_lo,old_hi,_=bounds(original,p0,{component[u] for u in fixed}) + old_state=original_chart | {len(original):None} + left,right=map(Q,BRACKET) + weights={r:(engine.raw_margin({r:1},right)[0],engine.raw_margin({r:1},left)[1]) for r in range(1,10)} + deadline=time.monotonic()+cap + counts=Counter() + hits,pending=[],[] + for split in splits['relaxed']: + e,f=split['adds'] + if time.monotonic()>=deadline: + pending.append([e,f]) + continue + before_e=tuple(model['edges'][str(e)]) + before_f=tuple(model['edges'][str(f)]) + assert eh2: + local_counts['relative order incompatible']+=1 + continue + if not broad and visits[v1[0]][2]==visits[v1[1]][2] and visits[v2[0]][2]==visits[v2[1]][2]: + local_counts['both coframed on baseline']+=1 + continue + equalities=tuple(tuple(sorted(map(belong,v))) for v in (v1,v2)) + key=tuple(sorted(set(equalities))) + if key in cache: + local_counts[cache[key]]+=1 + continue + narrowed=propagate(low,high,key,paid_order) + if narrowed is None: + status='weak chart feasibility fails' + else: + lo,hi=narrowed + neighbors=[x.copy() for x in adj] + touched=set(changed) + for u,v in key: + touched.update((u,v)) + if u!=v: + neighbors[u].add(v) + neighbors[v].add(u) + blocks=changed_blocks(space,low,high,neighbors,target,touched) + rank_results=[solve_equalities(block,old_state,lo,hi,paid,target,key,weights,True) + for block in blocks] + if any(x.get('infeasible') for x in rank_results): + status='rank feasibility fails' + elif sum(Q(x['upper']) for x in rank_results)<=0: + status='rank upper nonpositive' + else: + answers=[] + for block in blocks: + qs={i:len(hi[i]).bit_length()-len(lo[i]).bit_length() for i in block} + sizes={i:sum(subspace_count(d,r) for r in range(d+1)) for i,d in qs.items()} + if max(qs.values())>7 or volume({i:range(v) for i,v in sizes.items()},neighbors,750000) is None: + answers.append(dict(deferred=True,vertices=block,quotient_dimensions=qs)) + continue + domains={i:quotient_domain(lo[i],hi[i]) for i in block} + answers.append(solve_equalities(block,old_state,lo,hi,paid,target,key,weights,False,domains)) + if any(x.get('infeasible') for x in answers): + status='exact chart feasibility fails' + elif any(x.get('deferred') for x in answers): + status='deferred geometry' + else: + lower=sum(Q(x['lower']) for x in answers) + upper=sum(Q(x['upper']) for x in answers) + status=('strict chart nominee' if lower>0 else 'exact upper nonpositive' if upper<=0 + else 'interval unresolved') + if status in ('strict chart nominee','deferred geometry','interval unresolved'): + packet=dict(adds=[e,f],cuts=[cut1,cut2],raw_new_contacts=[v1,v2], + constraints=key,split_root=root,split_component=new_id, + split_visits=[visits[i] for i in sorted(part)], + status=status,rank_relaxation=rank_results,exact=answers) + hits.append(packet) + journal.write(json.dumps(dict(hit=packet),separators=(',',':'))+'\n') + journal.flush() + cache[key]=status + local_counts[status]+=1 + counts.update(local_counts) + counts['pairs_checked']+=1 + journal.write(json.dumps(dict(adds=[e,f],counts=local_counts),separators=(',',':'))+'\n') + journal.flush() + if counts['pairs_checked']%100==0: + print(f"checked {counts['pairs_checked']} pairs; latest {e},{f}",file=sys.stderr,flush=True) + result=dict(word=WORD_SHA,bracket=BRACKET,counts=counts,hits=hits,pending=pending) + if broad: + result['scope']='partner removed from both crossing-barrier lists, relative order retained' + return result + + +def main(word_path,model_path,splits_path,graph_path,price_path,journal_path,cap,mode=None): + raw=gzip.decompress(Path(word_path).read_bytes()) + model=json.loads(Path(model_path).read_bytes()) + splits=json.loads(Path(splits_path).read_bytes()) + assert sha256(raw).hexdigest()==WORD_SHA==model['source']==splits['source'] + assert len(splits['relaxed'])==1371 + with Path(journal_path).open('x') as out: + result=screen(json.loads(raw),model,splits,load('chart_graph',Path(graph_path)), + load('directed_price',Path(price_path)),out,int(cap),mode=='--partner-free') + print(json.dumps(result,indent=2)) + + +if __name__=='__main__': + if not __debug__: + raise RuntimeError('Assertions are proof checks') + main(*sys.argv[1:]) diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/overlap/OVERLAP.json b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/overlap/OVERLAP.json new file mode 100644 index 0000000000..e9f7354940 --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/overlap/OVERLAP.json @@ -0,0 +1,513 @@ +{ + "counts": { + "overlapping plans": 7, + "placements": 8 + }, + "plans": [ + { + "add": 27856, + "blockers": [ + 27853, + 27794 + ], + "cut": 26445, + "interval": 1412, + "ops": [ + [ + "ADD", + 242, + 243, + "-1" + ], + [ + "ADD", + 242, + 71, + "1" + ], + [ + "ADD", + 243, + 242, + "1" + ], + [ + "ADD", + 242, + 71, + "-1" + ], + [ + "ADD", + 242, + 243, + "1" + ] + ], + "pairs": [ + [ + 148, + 149 + ], + [ + 148, + 1310 + ], + [ + 149, + 148 + ], + [ + 148, + 1310 + ], + [ + 148, + 149 + ] + ] + }, + { + "add": 30595, + "blockers": [ + 30592, + 30577 + ], + "cut": 30571, + "interval": 25, + "ops": [ + [ + "ADD", + 274, + 275, + "-1" + ], + [ + "ADD", + 274, + 100, + "1" + ], + [ + "ADD", + 275, + 274, + "1" + ], + [ + "ADD", + 274, + 100, + "-1" + ], + [ + "ADD", + 274, + 275, + "1" + ] + ], + "pairs": [ + [ + 180, + 181 + ], + [ + 180, + 1399 + ], + [ + 181, + 180 + ], + [ + 180, + 1399 + ], + [ + 180, + 181 + ] + ] + }, + { + "add": 35190, + "blockers": [ + 35171, + 35166 + ], + "cut": 33348, + "interval": 1843, + "ops": [ + [ + "ADD", + 863, + 1100, + "-2" + ], + [ + "ADD", + 852, + 1100, + "-1" + ], + [ + "ADD", + 1100, + 863, + "1/2" + ], + [ + "ADD", + 852, + 1100, + "1" + ], + [ + "ADD", + 863, + 1100, + "2" + ] + ], + "pairs": [ + [ + 600, + 819 + ], + [ + 2045, + 819 + ], + [ + 819, + 600 + ], + [ + 2045, + 819 + ], + [ + 600, + 819 + ] + ] + }, + { + "add": 35323, + "blockers": [ + 33688, + 33665 + ], + "cut": 32777, + "interval": 2547, + "ops": [ + [ + "ADD", + 340, + 344, + "2" + ], + [ + "ADD", + 340, + 75, + "1" + ], + [ + "ADD", + 344, + 340, + "-1/2" + ], + [ + "ADD", + 340, + 75, + "-1" + ], + [ + "ADD", + 340, + 344, + "-2" + ] + ], + "pairs": [ + [ + 246, + 250 + ], + [ + 246, + 1322 + ], + [ + 250, + 246 + ], + [ + 246, + 1322 + ], + [ + 246, + 250 + ] + ] + }, + { + "add": 38539, + "blockers": [ + 38536, + 38535 + ], + "cut": 31572, + "interval": 6968, + "ops": [ + [ + "ADD", + 450, + 1466, + "1" + ], + [ + "ADD", + 1466, + 1207, + "1" + ], + [ + "ADD", + 1207, + 450, + "1" + ], + [ + "ADD", + 1466, + 1207, + "-1" + ], + [ + "ADD", + 450, + 1466, + "-1" + ] + ], + "pairs": [ + [ + 356, + 1056 + ], + [ + 1056, + 926 + ], + [ + 926, + 356 + ], + [ + 1056, + 926 + ], + [ + 356, + 1056 + ] + ] + }, + { + "add": 40549, + "blockers": [ + 41003, + 41005 + ], + "cut": 41006, + "interval": 457, + "ops": [ + [ + "ADD", + 1164, + 569, + "1" + ], + [ + "ADD", + 569, + 402, + "-1" + ], + [ + "ADD", + 402, + 1164, + "4" + ], + [ + "ADD", + 569, + 402, + "1" + ], + [ + "ADD", + 1164, + 569, + "-1" + ] + ], + "pairs": [ + [ + 6808, + 6806 + ], + [ + 6806, + 6807 + ], + [ + 6807, + 6808 + ], + [ + 6806, + 6807 + ], + [ + 6808, + 6806 + ] + ] + }, + { + "add": 40549, + "blockers": [ + 41003, + 41005 + ], + "cut": 41108, + "interval": 559, + "ops": [ + [ + "ADD", + 1164, + 569, + "1" + ], + [ + "ADD", + 569, + 402, + "-1" + ], + [ + "ADD", + 402, + 1164, + "4" + ], + [ + "ADD", + 569, + 402, + "1" + ], + [ + "ADD", + 1164, + 569, + "-1" + ] + ], + "pairs": [ + [ + 6854, + 6806 + ], + [ + 6806, + 6807 + ], + [ + 6807, + 6854 + ], + [ + 6806, + 6807 + ], + [ + 6854, + 6806 + ] + ] + }, + { + "add": 44134, + "blockers": [ + 44742, + 44780 + ], + "cut": 44781, + "interval": 647, + "ops": [ + [ + "ADD", + 1478, + 1472, + "-1" + ], + [ + "ADD", + 1472, + 758, + "-1" + ], + [ + "ADD", + 758, + 1478, + "-1" + ], + [ + "ADD", + 1472, + 758, + "1" + ], + [ + "ADD", + 1478, + 1472, + "1" + ] + ], + "pairs": [ + [ + 5068, + 5046 + ], + [ + 5046, + 5047 + ], + [ + 5047, + 5068 + ], + [ + 5046, + 5047 + ], + [ + 5068, + 5046 + ] + ] + } + ], + "source_word_sha256": "9557c4682056ab7cc7cda89aa73865bef0e3948cc10b3c3061b0a944af05b96a" +} diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/overlap/overlap.py b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/overlap/overlap.py new file mode 100644 index 0000000000..54525f3569 --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/overlap/overlap.py @@ -0,0 +1,67 @@ +"""Five-factor exact packet for the final overlapping rank-one cases.""" +from bisect import bisect_right +from collections import Counter, defaultdict +from fractions import Fraction as Q +from importlib.util import module_from_spec, spec_from_file_location +from pathlib import Path + +_spec = spec_from_file_location('overlap_two', Path(__file__).parents[1]/'planner/two_blockers.py') +two = module_from_spec(_spec) +_spec.loader.exec_module(two) + + +def normalized(event, inverse=False): + op, *roles = event[:-2] + coefficient = Q(event[-2]) + if inverse: + coefficient = -coefficient if op == 'ADD' else 1/coefficient + return op, *roles, str(coefficient) + + +def choices_overlap(word, raw, scalar, child, stats=None): + stats = Counter() if stats is None else stats + program, public = word['program'], word['public'] + history = two.contacts(program) + visits = defaultdict(list) + for j,(role,event,_) in enumerate(raw): + visits[role].append((event+1,j)) + for h in visits.values(): + h.sort() + end = len(raw) + + def visit(role,cut): + h = visits[role] + return h[bisect_right(h,(cut,end))-1][1] + + for i in scalar: + a = program[i] + if i not in child or a[0]!='ADD' or max(two.axes(a))>=public: + continue + d,s = two.axes(a) + for later in (False,True): + b1,one = two.next_contact(program,history,i,{d:Q(a[3])},{s:Q(1)},later) + if one is None or max(two.axes(program[b1]))>=public: + continue + b2,two_step = two.next_contact(program,history,b1,*one,later) + if two_step is None or max(two.axes(program[b2]))>=public: + continue + if not two_step[0].keys() & two_step[1].keys(): + continue + stats['overlapping plans'] += 1 + p,q = program[b1],program[b2] + ops = (normalized(q,later),normalized(p,later),normalized(a), + normalized(p,not later),normalized(q,not later)) + if not all(two.coefficient_admissible(Q(e[-1])) for e in ops): + stats['inadmissible coefficient plans'] += 1 + continue + stop,_ = two.next_contact(program,history,b2,*two_step,later) + lo,hi = (b2+1,stop) if later else (stop+1,b2) + cuts = {lo} + for role in {r for e in ops for r in two.axes(e)}: + h=visits[role] + x,y=bisect_right(h,(lo,end)),bisect_right(h,(hi,end)) + cuts.update(cut for cut,_ in h[x:y]) + for cut in sorted(cuts): + pairs = tuple((visit(e[1],cut),visit(e[2] if e[0]=='ADD' else e[1],cut)) for e in ops) + stats['placements'] += 1 + yield i,(b1,b2),cut,ops,pairs,(cut,)*len(ops) diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/overlap/validate.py b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/overlap/validate.py new file mode 100644 index 0000000000..c0a17d09d1 --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/overlap/validate.py @@ -0,0 +1,30 @@ +"""Replay all overlap packet placements on their complete normalized intervals.""" +from collections import Counter +import json +from pathlib import Path +import sys + +from overlap import choices_overlap, two + +sys.path.insert(0,str(Path(__file__).parents[1]/'planner')) +from validate_free import exact_rows, inventory, local_sequences, read_word + + +def run(path): + w=read_word(path) + raw,scalar,child=inventory(w) + stats=Counter() + rows=[] + for i,bs,cut,ops,pairs,cuts in choices_overlap(w,raw,scalar,child,stats): + before,after=local_sequences(w['program'],i,ops,cuts) + target=exact_rows(before) + assert target==exact_rows(after) + _,bad=local_sequences(w['program'],i,ops[:-1],cuts[:-1]) + assert target!=exact_rows(bad) + rows.append(dict(add=i,blockers=bs,cut=cut,ops=ops,pairs=pairs,interval=len(before))) + assert stats['overlapping plans']==7 + return dict(source_word_sha256=two.WORD_SHA,counts=stats,plans=rows) + + +if __name__=='__main__': + print(json.dumps(run(Path(sys.argv[1])),indent=2,sort_keys=True)) diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/ALL.json b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/ALL.json new file mode 100644 index 0000000000..74f2171643 --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/ALL.json @@ -0,0 +1,247 @@ +{ + "all_raw_product_sha256": "56b230b50f0f64f7424d1a4ebd1bb2f000772d007211db5d5ba5ea765c3bd7ec", + "counts": { + "algebraic plans": 4200, + "products": 73461 + }, + "exact_spread_controls": [ + { + "add": 44696, + "anchor": 36581, + "blockers": [ + 37557, + 36583 + ], + "cuts": [ + 0, + 45489, + 0 + ], + "direction": "earlier", + "distinct_cuts": 2, + "ops": [ + [ + "ADD", + 843, + 1480, + "1" + ], + [ + "ADD", + 853, + 1480, + "1" + ], + [ + "ADD", + 854, + 1480, + "1" + ] + ], + "original_events": 45489, + "spread": 45489 + }, + { + "add": 44696, + "anchor": 36581, + "blockers": [ + 37557, + 36583 + ], + "cuts": [ + 0, + 45489, + 36582 + ], + "direction": "earlier", + "distinct_cuts": 3, + "ops": [ + [ + "ADD", + 843, + 1480, + "1" + ], + [ + "ADD", + 853, + 1480, + "1" + ], + [ + "ADD", + 854, + 1480, + "1" + ] + ], + "original_events": 45489, + "spread": 45489 + }, + { + "add": 39286, + "anchor": 36566, + "blockers": [ + 39217, + 36566 + ], + "cuts": [ + 23891, + 0, + 39296, + 36566 + ], + "direction": "earlier", + "distinct_cuts": 4, + "ops": [ + [ + "ADD", + 773, + 962, + "-1" + ], + [ + "ADD", + 773, + 1453, + "-1" + ], + [ + "ADD", + 778, + 962, + "1/2" + ], + [ + "ADD", + 778, + 1453, + "1/2" + ] + ], + "original_events": 39296, + "spread": 39296 + }, + { + "add": 39326, + "anchor": 41895, + "blockers": [ + 39987, + 41894 + ], + "cuts": [ + 42022, + 42022, + 10116 + ], + "direction": "later", + "distinct_cuts": 2, + "ops": [ + [ + "ADD", + 197, + 85, + "-1" + ], + [ + "ADD", + 197, + 319, + "1" + ], + [ + "ADD", + 197, + 1467, + "-1" + ] + ], + "original_events": 31906, + "spread": 31906 + }, + { + "add": 39326, + "anchor": 41895, + "blockers": [ + 39987, + 41894 + ], + "cuts": [ + 42371, + 41895, + 10116 + ], + "direction": "later", + "distinct_cuts": 3, + "ops": [ + [ + "ADD", + 197, + 85, + "-1" + ], + [ + "ADD", + 197, + 319, + "1" + ], + [ + "ADD", + 197, + 1467, + "-1" + ] + ], + "original_events": 32255, + "spread": 32255 + }, + { + "add": 39908, + "anchor": 40244, + "blockers": [ + 39911, + 40243 + ], + "cuts": [ + 40244, + 40245, + 22889, + 42565 + ], + "direction": "later", + "distinct_cuts": 4, + "ops": [ + [ + "ADD", + 452, + 969, + "-1" + ], + [ + "ADD", + 452, + 1250, + "2" + ], + [ + "ADD", + 532, + 969, + "2" + ], + [ + "ADD", + 532, + 1250, + "-4" + ] + ], + "original_events": 19676, + "spread": 19676 + } + ], + "source_word_sha256": "9557c4682056ab7cc7cda89aa73865bef0e3948cc10b3c3061b0a944af05b96a", + "status": "PASS_EXACT_ALL_TERM_PLANNER" +} diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/PLANNER.json b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/PLANNER.json new file mode 100644 index 0000000000..96646ad783 --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/PLANNER.json @@ -0,0 +1,298 @@ +{ + "coefficient_controls": [ + "denominator 7", + "denominator 2^26", + "magnitude 2^16" + ], + "controls": { + "earlier missing emitted term": [ + 21988, + 21434, + 20596 + ], + "earlier recomputed second support": [ + 21988, + 21434, + 20596 + ], + "earlier unretuned original": [ + 21988, + 21434, + 20596 + ], + "later missing emitted term": [ + 21988, + 29055, + 29069 + ], + "later recomputed second support": [ + 21988, + 29055, + 29069 + ], + "later unretuned original": [ + 21988, + 29055, + 29069 + ] + }, + "counts": { + "earlier 1-term plans": 29, + "earlier 2-term plans": 479, + "earlier 3-term plans": 1147, + "earlier 4-term plans": 437, + "earlier ADD/ADD plans": 1965, + "earlier ADD/SCALE plans": 73, + "earlier SCALE/ADD plans": 54, + "earlier final overlap": 5, + "earlier stops before first public blocker": 39, + "earlier stops before second public blocker": 34, + "later 1-term plans": 187, + "later 2-term plans": 613, + "later 3-term plans": 1031, + "later 4-term plans": 277, + "later ADD/ADD plans": 1729, + "later ADD/SCALE plans": 264, + "later SCALE/ADD plans": 114, + "later SCALE/SCALE plans": 1, + "later final overlap": 2, + "later stops before first public blocker": 38, + "later stops before second public blocker": 22, + "placements": 7700, + "public ADD bridges": 2170 + }, + "exact_local_matrices": { + "earlier": 2092, + "earlier second commutes with original": 890, + "later": 2108, + "later second commutes with original": 1086 + }, + "maximum_interval_controls": [ + { + "add": 30464, + "blockers": [ + 10707, + 10274 + ], + "cut": 8698, + "direction": "earlier", + "ops": [ + [ + "ADD", + 179, + 115, + "-1/2" + ] + ], + "original_events": 21767, + "terms": 1 + }, + { + "add": 39333, + "blockers": [ + 37758, + 37757 + ], + "cut": 13673, + "direction": "earlier", + "ops": [ + [ + "ADD", + 147, + 85, + "1/2" + ], + [ + "ADD", + 147, + 98, + "-1/2" + ] + ], + "original_events": 25661, + "terms": 2 + }, + { + "add": 42524, + "blockers": [ + 28054, + 27988 + ], + "cut": 27915, + "direction": "earlier", + "ops": [ + [ + "ADD", + 200, + 37, + "-1/2" + ], + [ + "ADD", + 200, + 432, + "-1/2" + ], + [ + "ADD", + 200, + 434, + "-1/2" + ] + ], + "original_events": 14610, + "terms": 3 + }, + { + "add": 37442, + "blockers": [ + 36742, + 16494 + ], + "cut": 8967, + "direction": "earlier", + "ops": [ + [ + "ADD", + 777, + 886, + "-1/4" + ], + [ + "ADD", + 777, + 944, + "1/2" + ], + [ + "ADD", + 839, + 886, + "-1/4" + ], + [ + "ADD", + 839, + 944, + "1/2" + ] + ], + "original_events": 28476, + "terms": 4 + }, + { + "add": 37677, + "blockers": [ + 37684, + 48216 + ], + "cut": 48217, + "direction": "later", + "ops": [ + [ + "ADD", + 805, + 1085, + "1" + ] + ], + "original_events": 10540, + "terms": 1 + }, + { + "add": 37369, + "blockers": [ + 40746, + 40747 + ], + "cut": 57073, + "direction": "later", + "ops": [ + [ + "ADD", + 838, + 887, + "1/2" + ], + [ + "ADD", + 838, + 945, + "1/2" + ] + ], + "original_events": 19704, + "terms": 2 + }, + { + "add": 37671, + "blockers": [ + 59739, + 60605 + ], + "cut": 60606, + "direction": "later", + "ops": [ + [ + "ADD", + 776, + 1147, + "-1" + ], + [ + "ADD", + 835, + 1147, + "1" + ], + [ + "ADD", + 838, + 1147, + "1" + ] + ], + "original_events": 22935, + "terms": 3 + }, + { + "add": 27861, + "blockers": [ + 27865, + 37723 + ], + "cut": 39679, + "direction": "later", + "ops": [ + [ + "ADD", + 247, + 70, + "1/2" + ], + [ + "ADD", + 247, + 91, + "1" + ], + [ + "ADD", + 252, + 70, + "-1/4" + ], + [ + "ADD", + 252, + 91, + "-1/2" + ] + ], + "original_events": 11818, + "terms": 4 + } + ], + "source_word_sha256": "9557c4682056ab7cc7cda89aa73865bef0e3948cc10b3c3061b0a944af05b96a", + "status": "PASS_EXACT_TWO_BLOCKER_PLANNER" +} diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/all_terms.py b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/all_terms.py new file mode 100644 index 0000000000..6f8b79dcaf --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/all_terms.py @@ -0,0 +1,48 @@ +"""Cartesian products of individually safe cuts for the expanded scalar ADD.""" +from bisect import bisect_right +from collections import Counter, defaultdict +from itertools import product +from importlib.util import module_from_spec, spec_from_file_location +from pathlib import Path + +_spec = spec_from_file_location('free_term_core', Path(__file__).with_name('free_term.py')) +free = module_from_spec(_spec) +_spec.loader.exec_module(free) +two = free.two + + +def choices_all(word, raw, scalar, child, stats=None): + """Yield add, blockers, joint anchor, ops, raw pairs, and per-term cuts.""" + stats = Counter() if stats is None else stats + program = word['program'] + history = two.contacts(program) + visits = defaultdict(list) + for j, (role, event, _) in enumerate(raw): + visits[role].append((event+1, j)) + for h in visits.values(): + h.sort() + end = len(raw) + + def visit(role, cut): + h = visits[role] + return h[bisect_right(h,(cut,end))-1][1] + + for add, blockers, anchor, joint_end, ops in two.plans(word,scalar,child): + stats['algebraic plans'] += 1 + options = [] + for op in ops: + _, d, s, _ = op + lo, hi = free.term_window(program, history, add, anchor, op) + # A stationary scalar commuting with the disjoint-support rank-one + # aggregate commutes with each elementary term separately. + assert lo <= anchor <= joint_end <= hi + cuts = {lo} + for role in (d,s): + h = visits[role] + a,b = bisect_right(h,(lo,end)),bisect_right(h,(hi,end)) + cuts.update(cut for cut,_ in h[a:b]) + options.append([(cut,(visit(d,cut),visit(s,cut))) for cut in sorted(cuts)]) + for placements in product(*options): + cuts,pairs = map(tuple,zip(*placements)) + stats['products'] += 1 + yield add, blockers, anchor, ops, pairs, cuts diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/free_term.py b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/free_term.py new file mode 100644 index 0000000000..0acd2bdc43 --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/free_term.py @@ -0,0 +1,65 @@ +"""Allow one expanded ADD term to use a separate commuting cut.""" +from bisect import bisect_right +from collections import Counter, defaultdict +from fractions import Fraction as Q +from importlib.util import module_from_spec, spec_from_file_location +from pathlib import Path + +_spec = spec_from_file_location('exact_two_blocker', Path(__file__).with_name('two_blockers.py')) +two = module_from_spec(_spec) +_spec.loader.exec_module(two) + + +def term_window(program, history, add, cut, operation): + _, d, s, text = operation + u, v = {d: Q(text)}, {s: Q(1)} + + def boundary(index, later): + contact, _ = two.next_contact(program, history, index, u, v, later) + if contact == add: + contact, _ = two.next_contact(program, history, add, u, v, later) + return contact + + return boundary(cut, False) + 1, boundary(cut-1, True) + + +def choices_free(word, raw, scalar, child, stats=None): + """Yield one free term, with its cut appended in an aligned per-term tuple.""" + stats = Counter() if stats is None else stats + program = word['program'] + contacts = two.contacts(program) + histories = defaultdict(list) + for j, (role, event, _) in enumerate(raw): + histories[role].append((event+1, j)) + for history in histories.values(): + history.sort() + end = len(raw) + + def visit(role, cut): + h = histories[role] + return h[bisect_right(h, (cut, end))-1][1] + + for add, blockers, joint_cut, ops, pairs in two.choices(word, raw, scalar, child): + if len(ops) == 1: + continue + stats['eligible joint placements'] += 1 + for term, op in enumerate(ops): + _, d, s, _ = op + lo, hi = term_window(program, contacts, add, joint_cut, op) + assert lo <= joint_cut <= hi + cuts = {lo} + for role in (d, s): + h = histories[role] + a, b = bisect_right(h, (lo, end)), bisect_right(h, (hi, end)) + cuts.update(cut for cut, _ in h[a:b]) + for cut in sorted(cuts): + pair = visit(d, cut), visit(s, cut) + if pair == pairs[term]: + continue + new_pairs = (*pairs[:term], pair, *pairs[term+1:]) + new_cuts = (joint_cut,)*term + (cut,) + (joint_cut,)*(len(ops)-term-1) + stats['one-free placements'] += 1 + stats['term earlier than joint cut' if cut < joint_cut else 'term later than joint cut'] += 1 + if min(cut,joint_cut) <= add < max(cut,joint_cut): + stats['term crosses original removed ADD'] += 1 + yield add, blockers, joint_cut, ops, new_pairs, new_cuts diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/two_blockers.py b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/two_blockers.py new file mode 100644 index 0000000000..76f904f7d6 --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/two_blockers.py @@ -0,0 +1,159 @@ +"""Exact transport of one public ADD across two successive scalar blockers.""" +from bisect import bisect_left, bisect_right +from collections import Counter, defaultdict +from fractions import Fraction as Q +import gzip +from hashlib import sha256 +from importlib.util import module_from_spec, spec_from_file_location +import json +from pathlib import Path +import sys + +WORD_SHA = '9557c4682056ab7cc7cda89aa73865bef0e3948cc10b3c3061b0a944af05b96a' +GRID = 1125 * 2**25 +ROOT = Path(__file__).resolve().parents[3] + + +def axes(event): + return event[1:3] if event[0] in ('ADD', 'COPY') else event[1:2] + + +def update(vector, destination, change): + if change: + value = vector.get(destination, 0) + change + if value: + vector[destination] = value + else: + vector.pop(destination) + + +def conjugate(u, v, event, later): + """Later means B(I+uv)B^-1. Earlier means B^-1(I+uv)B.""" + op, destination = event[:2] + coefficient = Q(event[-2]) + x, y = u.copy(), v.copy() + if op == 'SCALE': + factor = coefficient if later else 1 / coefficient + if destination in x: + x[destination] *= factor + if destination in y: + y[destination] /= factor + else: + assert op == 'ADD' + source = event[2] + factor = coefficient if later else -coefficient + update(x, destination, factor * u.get(source, 0)) + update(y, source, -factor * v.get(destination, 0)) + return x, y + + +def outer(u, v): + return {(d, s): x * y for d, x in u.items() for s, y in v.items()} + + +def contacts(program): + reads, writes, copies = defaultdict(list), defaultdict(list), defaultdict(list) + for i, event in enumerate(program): + op, destination = event[:2] + if op in ('ADD', 'COPY', 'SCALE'): + writes[destination].append(i) + reads[destination if op == 'SCALE' else event[2]].append(i) + if op == 'COPY': + copies[destination].append(i) + return reads, writes, copies + + +def next_contact(program, history, index, u, v, later): + """Search all possible noncommutations with the current rank-one map.""" + reads, writes, copies = history + lists = [reads[r] for r in u] + [writes[r] for r in v] + [copies[r] for r in u] + current = outer(u, v) + while True: + if later: + positions = (bisect_right(row, index) for row in lists) + index = min((row[k] for row, k in zip(lists, positions) if k < len(row)), + default=len(program)) + if index == len(program): + return index, None + else: + positions = (bisect_left(row, index) for row in lists) + index = max((row[k-1] for row, k in zip(lists, positions) if k), default=-1) + if index == -1: + return index, None + event = program[index] + if event[0] == 'COPY': + # An ADD affecting the zero destination also blocks COPY. + return index, None + changed = conjugate(u, v, event, later) + if outer(*changed) != current: + return index, changed + + +def coefficient_admissible(value): + return GRID % value.denominator == 0 and abs(value) + 1 < 2**16 + + +def plans(word, scalar, child, stats=None): + """Yield ADD index, blockers in crossing order, inclusive cut window and ops.""" + stats = Counter() if stats is None else stats + program, public = word['program'], word['public'] + history = contacts(program) + for i in scalar: + event = program[i] + if i not in child or event[0] != 'ADD' or max(axes(event)) >= public: + continue + stats['public ADD bridges'] += 1 + d, s = axes(event) + for later in (False, True): + direction = 'later' if later else 'earlier' + first, changed = next_contact(program, history, i, {d: Q(event[3])}, {s: Q(1)}, later) + if changed is None or max(axes(program[first])) >= public: + stats[f'{direction} stops before first public blocker'] += 1 + continue + if changed[0].keys() & changed[1].keys(): + stats[f'{direction} first conjugate has overlap'] += 1 + second, final = next_contact(program, history, first, *changed, later) + if final is None or max(axes(program[second])) >= public: + stats[f'{direction} stops before second public blocker'] += 1 + continue + if final[0].keys() & final[1].keys(): + stats[f'{direction} final overlap'] += 1 + continue + terms = sorted(outer(*final).items()) + if not all(coefficient_admissible(x) for _, x in terms): + stats[f'{direction} coefficient grid or magnitude excluded'] += 1 + continue + ops = tuple(('ADD', d, s, str(x)) for (d, s), x in terms) + next_stop, _ = next_contact(program, history, second, *final, later) + lo, hi = (second+1, next_stop) if later else (next_stop+1, second) + assert lo <= hi + stats[f'{direction} {program[first][0]}/{program[second][0]} plans'] += 1 + stats[f'{direction} {len(ops)}-term plans'] += 1 + yield i, (first, second), lo, hi, ops + + +def choices(word, raw, scalar, child, stats=None): + """Yield one representative per distinct raw chart tuple in each safe window.""" + histories = defaultdict(list) + for j, (role, event, _) in enumerate(raw): + histories[role].append((event+1, j)) + for history in histories.values(): + history.sort() + end = len(raw) + + def visit(role, cut): + h = histories[role] + return h[bisect_right(h, (cut, end))-1][1] + + for i, blockers, lo, hi, ops in plans(word, scalar, child, stats): + roles = {role for event in ops for role in axes(event)} + cuts = {lo} + for role in roles: + h = histories[role] + a, b = bisect_right(h, (lo, end)), bisect_right(h, (hi, end)) + cuts.update(cut for cut, _ in h[a:b]) + for cut in sorted(cuts): + pairs = tuple((visit(d, cut), visit(s, cut)) for _, d, s, _ in ops) + if stats is not None: + stats['placements'] += 1 + yield i, blockers, cut, ops, pairs diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/validate.py b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/validate.py new file mode 100644 index 0000000000..4b0e19a2bf --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/validate.py @@ -0,0 +1,129 @@ +"""Independent exact scalar matrices and controls for the two-blocker planner.""" +from collections import Counter +from fractions import Fraction as Q +from hashlib import sha256 +import gzip +import json +from importlib.util import module_from_spec, spec_from_file_location +from pathlib import Path +import sys + +from two_blockers import ROOT, WORD_SHA, axes, choices, coefficient_admissible, plans + + +def load(name, path): + spec = spec_from_file_location(name, path) + module = module_from_spec(spec) + spec.loader.exec_module(module) + return module + + +def read_word(path): + payload = gzip.decompress(path.read_bytes()) + assert sha256(payload).hexdigest() == WORD_SHA + return json.loads(payload) + + +def inventory(word): + port = load('pinned_port', ROOT/'kappa-typea-birth2-20261110T2258Z/evidence/scalar/port.py') + graph = port.module('current_graph', port.GRAPH) + retained = port.module('retained_adjacent_blocker', port.BASE) + raw, _, _, _, _, _, scalar, _, _, _, child = retained.inventory(word, graph) + return raw, scalar, child + + +def exact_rows(events): + rows = {} + for event in events: + op, r = event[:2] + if op == 'MOVE': + continue + prior = rows.get(r, {r: Q(1)}) + if op == 'SCALE': + row = {a: x * Q(event[2]) for a, x in prior.items()} + elif op in ('ADD', 'COPY'): + s, factor = event[2], Q(event[3]) + row = prior.copy() + for a, x in rows.get(s, {s: Q(1)}).items(): + value = row.get(a, 0) + factor * x + if value: + row[a] = value + else: + row.pop(a, None) + else: + assert op in ('INIT', 'CLEAR') + row = {} + rows[r] = row + return {r: row for r, row in rows.items() if row != {r: Q(1)}} + + +def rewrite(program, add, cut, ops): + assert cut not in (add, add+1) + if cut <= add: + before = program[cut:add+1] + after = [*ops, *program[cut:add]] + else: + before = program[add:cut] + after = [*program[add+1:cut], *ops] + return before, after + + +def run(word_path): + w = read_word(word_path) + raw, scalar, child = inventory(w) + prog = w['program'] + matrix_counts, stats = Counter(), Counter() + controls, longest = {}, {} + for i, blockers, _, _, ops in plans(w, scalar, child): + b1, b2 = blockers + a, p, q = prog[i], prog[b1], prog[b2] + later = b1 > i + if later: + assert i < b1 < b2 + before, after = (a, p, q), (p, q, *ops) + else: + assert b2 < b1 < i + before, after = (q, p, a), (*ops, q, p) + target = exact_rows(before) + assert target == exact_rows(after), (i, blockers, ops) + assert exact_rows((a, p)) != exact_rows((p, a)), (i, b1) + assert {e[1] for e in ops}.isdisjoint({e[2] for e in ops}) + assert exact_rows(ops) == exact_rows(reversed(ops)) + direction = 'later' if later else 'earlier' + matrix_counts[direction] += 1 + if exact_rows((a, q)) == exact_rows((q, a)): + matrix_counts[f'{direction} second commutes with original'] += 1 + controls.setdefault(f'{direction} recomputed second support', [i, *blockers]) + bad = ((p, q, *ops[:-1]) if later else (*ops[:-1], q, p)) + if target != exact_rows(bad): + controls.setdefault(f'{direction} missing emitted term', [i, *blockers]) + unchanged = ((p, q, a) if later else (a, q, p)) + if target != exact_rows(unchanged): + controls.setdefault(f'{direction} unretuned original', [i, *blockers]) + for candidate in choices(w, raw, scalar, child, stats): + i, blockers, cut, ops, pairs = candidate + for event, pair in zip(ops, pairs): + assert tuple(raw[j][0] for j in pair) == tuple(axes(event)) + assert all(raw[j][1] < cut for j in pair) + key = ('later' if blockers[0] > i else 'earlier', len(ops)) + if key not in longest or abs(cut-i) > abs(longest[key][2]-longest[key][0]): + longest[key] = candidate + windows = [] + for (direction, count), (i, blockers, cut, ops, _) in sorted(longest.items()): + before, after = rewrite(prog, i, cut, ops) + assert exact_rows(before) == exact_rows(after), (i, blockers, cut) + windows.append(dict(direction=direction, terms=count, add=i, blockers=blockers, + cut=cut, original_events=len(before), ops=ops)) + assert len(controls) == 6 and len(windows) == 8 + assert coefficient_admissible(Q(1,1125*2**25)) + assert not coefficient_admissible(Q(1,7)) + assert not coefficient_admissible(Q(1,2**26)) + assert not coefficient_admissible(Q(2**16)) + return dict(status='PASS_EXACT_TWO_BLOCKER_PLANNER', source_word_sha256=WORD_SHA, + counts=stats, exact_local_matrices=matrix_counts, controls=controls, + maximum_interval_controls=windows, coefficient_controls=['denominator 7', + 'denominator 2^26', 'magnitude 2^16']) + + +if __name__ == '__main__': + print(json.dumps(run(Path(sys.argv[1])), indent=2, sort_keys=True)) diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/validate_all.py b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/validate_all.py new file mode 100644 index 0000000000..f187923229 --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/validate_all.py @@ -0,0 +1,50 @@ +"""Compare the compressed Cartesian iterator to every joint-cut representative.""" +from collections import Counter +from hashlib import sha256 +from itertools import product +import json +from pathlib import Path +import sys + +from all_terms import choices_all +from free_term import choices_free, two +from validate import exact_rows, inventory, read_word +from validate_free import local_sequences + + +def run(path): + w = read_word(path) + raw, scalar, child = inventory(w) + joint = {(i,bs,cut): [{pair} for pair in pairs] + for i,bs,cut,_,pairs in two.choices(w,raw,scalar,child)} + for i,bs,cut,_,pairs,cuts in choices_free(w,raw,scalar,child): + term, = [j for j,k in enumerate(cuts) if k != cut] + joint[i,bs,cut][term].add(pairs[term]) + exhaustive = {(i,bs,pairs) for (i,bs,_), options in joint.items() for pairs in product(*options)} + actual, max_spread, counts = set(), {}, Counter() + for i,bs,anchor,ops,pairs,cuts in choices_all(w,raw,scalar,child,counts): + key = i,bs,pairs + assert key not in actual + actual.add(key) + distinct = len(set(cuts)) + category = ('later' if bs[0]>i else 'earlier',distinct) + spread = max(cuts)-min(cuts) + if category not in max_spread or spread>max_spread[category][0]: + max_spread[category] = spread,i,bs,anchor,ops,cuts + assert actual==exhaustive + controls=[] + for (direction,distinct),(spread,i,bs,anchor,ops,cuts) in sorted(max_spread.items()): + if distinct<2: + continue + before,after=local_sequences(w['program'],i,ops,cuts) + assert exact_rows(before)==exact_rows(after), (i,bs,cuts) + controls.append(dict(direction=direction,distinct_cuts=distinct,add=i,blockers=bs, + anchor=anchor,ops=ops,cuts=cuts,spread=spread,original_events=len(before))) + assert len(controls)==6 + digest=sha256(json.dumps(sorted(actual),separators=(',',':')).encode()).hexdigest() + return dict(status='PASS_EXACT_ALL_TERM_PLANNER',source_word_sha256=two.WORD_SHA, + counts=counts,all_raw_product_sha256=digest,exact_spread_controls=controls) + + +if __name__=='__main__': + print(json.dumps(run(Path(sys.argv[1])),indent=2,sort_keys=True)) diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/validate_free.py b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/validate_free.py new file mode 100644 index 0000000000..d35d40d067 --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/planner/validate_free.py @@ -0,0 +1,74 @@ +"""Exact full-interval controls for the separately placed elementary term.""" +from collections import Counter, defaultdict +import json +from pathlib import Path +import sys + +from free_term import choices_free, term_window, two +from validate import exact_rows, inventory, read_word + + +def local_sequences(program, original, operations, cuts): + insert = defaultdict(list) + for cut, op in zip(cuts, operations): + insert[cut].append(op) + lo = min(original, *cuts) + hi = max(original+1, *cuts) + after = [] + for i in range(lo, hi+1): + after.extend(insert[i]) + if i < hi and i != original: + after.append(program[i]) + return program[lo:hi], after + + +def run(path): + w = read_word(path) + raw, scalar, child = inventory(w) + program = w['program'] + history = two.contacts(program) + stats, longest = Counter(), {} + bad = None + for candidate in choices_free(w, raw, scalar, child, stats): + add, blockers, joint, ops, pairs, cuts = candidate + terms = [j for j, cut in enumerate(cuts) if cut != joint] + assert len(terms) == 1 + term, = terms + k = cuts[term] + for op, (a, b), cut in zip(ops, pairs, cuts): + assert (raw[a][0], raw[b][0]) == op[1:3] + assert max(raw[a][1], raw[b][1]) < cut + direction = 'later' if blockers[0] > add else 'earlier' + mode = 'term later' if k > joint else 'term earlier' + before_len = max(add+1, *cuts)-min(add, *cuts) + categories = [(direction, mode)] + if min(k,joint) <= add < max(k,joint): + categories.append((direction, 'crosses removed ADD')) + for key in categories: + if key not in longest or before_len > longest[key][0]: + longest[key] = before_len, candidate + if bad is None: + lo, hi = term_window(program, history, add, joint, ops[term]) + for wrong_cut, blocker in ((lo-1,lo-1),(hi+1,hi)): + if not 0 <= blocker < len(program) or program[blocker][0] not in ('ADD','SCALE'): + continue + wrong = list(cuts) + wrong[term] = wrong_cut + before, after = local_sequences(program, add, ops, wrong) + if exact_rows(before) != exact_rows(after): + bad = dict(add=add, joint=joint, term=term, blocker=blocker, + excluded_cut=wrong_cut, correct_cut=k) + break + controls = [] + for (direction, mode), (n, (add, blockers, joint, ops, _, cuts)) in sorted(longest.items()): + before, after = local_sequences(program, add, ops, cuts) + assert len(before) == n and exact_rows(before) == exact_rows(after) + controls.append(dict(direction=direction, mode=mode, add=add, blockers=blockers, + joint_cut=joint, cuts=cuts, original_events=n, ops=ops)) + assert bad is not None and len(controls) == 6 + return dict(status='PASS_EXACT_ONE_FREE_TERM_PLANNER', source_word_sha256=two.WORD_SHA, + counts=stats, exact_full_intervals=controls, retained_blocker_control=bad) + + +if __name__ == '__main__': + print(json.dumps(run(Path(sys.argv[1])), indent=2, sort_keys=True)) diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/price/ALL.json b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/price/ALL.json new file mode 100644 index 0000000000..1eab6d2447 --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/price/ALL.json @@ -0,0 +1,82 @@ +{ + "baseline_P": { + "1": 68265, + "2": 14518, + "3": 14059, + "4": 3808, + "5": 5797, + "6": 272, + "7": 187, + "8": 758, + "9": 32, + "16": 416, + "24": 416, + "32": 416, + "40": 416, + "48": 416, + "56": 416, + "64": 208 + }, + "baseline_T": { + "1": 272, + "2": 340, + "3": 799, + "4": 3706, + "5": 1258, + "6": 731, + "7": 306, + "8": 595, + "9": 10973, + "17": 416, + "25": 416, + "33": 416, + "41": 416, + "49": 416, + "57": 416, + "65": 416, + "73": 208, + "137": 208 + }, + "blockers": { + "ADD+ADD": 71512, + "ADD+SCALE": 1499, + "SCALE+ADD": 449, + "SCALE+SCALE": 1 + }, + "caller": "255d89f38cd45e38e5770f559bc43dc217e989032359768cdc7e8cdfd64b47bc", + "cap": null, + "counts": { + "ADD bridges": 2157, + "duplicate price constraints": 19360, + "incompatible rank equations": 4, + "incompatible span bounds": 66914, + "nonpositive mixed upper": 6, + "nonpositive rank upper": 33, + "placements": 73461, + "reinstates original scalar equality": 6504 + }, + "dependencies": { + "kappa-coupled-boundaries-20261110T0908Z/replay/research/shared-wire-stop-fusion/audit_price.py": "585295aa55846e594c705941002c36ea0b9b6cbfe3a49e6594e1d2e70751b704", + "kappa-interior-20261110T0823Z/evidence/closure.py": "e6b3cdfcb42f4cd22d46e1783a537d147b092634f4cf089e91344e29f0214cf1", + "kappa-scalar-two-20261110T2315Z/evidence/planner/all_terms.py": "026050e72cfa2a10a64541f53488b6d3f284bc2194793da926d772eb02b659a4", + "kappa-scalar-two-20261110T2315Z/evidence/planner/free_term.py": "d623743e2beb0f8578487cc1f458a0e15fc5ed10381c57e7984c615200a54a81", + "kappa-scalar-two-20261110T2315Z/evidence/planner/two_blockers.py": "152b0f6c80e0f7a47b078fb35bd91b35fbfd63fa2d2da17cf66ded05f51846f0", + "kappa-two-blockers-20261110T1036Z/evidence/two_blockers.py": "a5b5855f3016a77d991fb53536cae388221a7cf9529fe58c376141bc7656e0c3", + "kappa-typea-birth2-20261110T2258Z/evidence/scalar/port.py": "d05dcb28604a9bc6305ec90428f5f7fe875333031ecf1705229b0c4605dc3032" + }, + "hits": [], + "mode": "all-terms", + "pending": null, + "planner_stats": { + "algebraic plans": 4200, + "products": 73461 + }, + "result": "e4ae0c1cfa809cd780a6e22ce32528e7ca4b4e57f90abf91ad0bde97d30446ab", + "source_bracket": [ + "36424084968693169933964196366183/10000000000000000000000000000000000", + "4553010621086646241745524545773/1250000000000000000000000000000000" + ], + "start": 0, + "unresolved": 0, + "word": "9557c4682056ab7cc7cda89aa73865bef0e3948cc10b3c3061b0a944af05b96a" +} diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/price/ALL.jsonl b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/price/ALL.jsonl new file mode 100644 index 0000000000..ce7c15cb6b --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/price/ALL.jsonl @@ -0,0 +1,293 @@ +{"add": 27416, "counts": {"ADD bridges": 25, "duplicate price constraints": 31, "incompatible span bounds": 201, "nonpositive rank upper": 1, "placements": 250, "reinstates original scalar equality": 48}, "index": 249} +{"add": 27535, "counts": {"ADD bridges": 42, "duplicate price constraints": 104, "incompatible span bounds": 415, "nonpositive rank upper": 1, "placements": 500, "reinstates original scalar equality": 84}, "index": 499} +{"add": 27737, "counts": {"ADD bridges": 61, "duplicate price constraints": 145, "incompatible span bounds": 642, "nonpositive rank upper": 1, "placements": 750, "reinstates original scalar equality": 107}, "index": 749} +{"add": 27825, "counts": {"ADD bridges": 79, "duplicate price constraints": 189, "incompatible span bounds": 887, "nonpositive rank upper": 1, "placements": 1000, "reinstates original scalar equality": 112}, "index": 999} +{"add": 27861, "counts": {"ADD bridges": 88, "duplicate price constraints": 273, "incompatible span bounds": 1131, "nonpositive rank upper": 1, "placements": 1250, "reinstates original scalar equality": 118}, "index": 1249} +{"add": 27956, "counts": {"ADD bridges": 103, "duplicate price constraints": 320, "incompatible span bounds": 1375, "nonpositive rank upper": 1, "placements": 1500, "reinstates original scalar equality": 124}, "index": 1499} +{"add": 28297, "counts": {"ADD bridges": 125, "duplicate price constraints": 371, "incompatible span bounds": 1617, "nonpositive rank upper": 1, "placements": 1750, "reinstates original scalar equality": 132}, "index": 1749} +{"add": 29106, "counts": {"ADD bridges": 152, "duplicate price constraints": 400, "incompatible span bounds": 1854, "nonpositive rank upper": 1, "placements": 2000, "reinstates original scalar equality": 145}, "index": 1999} +{"add": 30469, "counts": {"ADD bridges": 181, "duplicate price constraints": 463, "incompatible rank equations": 1, "incompatible span bounds": 2086, "nonpositive mixed upper": 2, "nonpositive rank upper": 4, "placements": 2250, "reinstates original scalar equality": 157}, "index": 2249} +{"add": 30696, "counts": {"ADD bridges": 204, "duplicate price constraints": 478, "incompatible rank equations": 1, "incompatible span bounds": 2241, "nonpositive mixed upper": 2, "nonpositive rank upper": 5, "placements": 2500, "reinstates original scalar equality": 251}, "index": 2499} +{"add": 30739, "counts": {"ADD bridges": 212, "duplicate price constraints": 535, "incompatible rank equations": 1, "incompatible span bounds": 2487, "nonpositive mixed upper": 2, "nonpositive rank upper": 5, "placements": 2750, "reinstates original scalar equality": 255}, "index": 2749} +{"add": 30851, "counts": {"ADD bridges": 228, "duplicate price constraints": 577, "incompatible rank equations": 1, "incompatible span bounds": 2731, "nonpositive mixed upper": 2, "nonpositive rank upper": 5, "placements": 3000, "reinstates original scalar equality": 261}, "index": 2999} +{"add": 31008, "counts": {"ADD bridges": 244, "duplicate price constraints": 631, "incompatible rank equations": 1, "incompatible span bounds": 2959, "nonpositive mixed upper": 2, "nonpositive rank upper": 5, "placements": 3250, "reinstates original scalar equality": 283}, "index": 3249} +{"add": 31244, "counts": {"ADD bridges": 264, "duplicate price constraints": 666, "incompatible rank equations": 1, "incompatible span bounds": 3162, "nonpositive mixed upper": 2, "nonpositive rank upper": 5, "placements": 3500, "reinstates original scalar equality": 330}, "index": 3499} +{"add": 31585, "counts": {"ADD bridges": 285, "duplicate price constraints": 724, "incompatible rank equations": 1, "incompatible span bounds": 3386, "nonpositive mixed upper": 2, "nonpositive rank upper": 5, "placements": 3750, "reinstates original scalar equality": 356}, "index": 3749} +{"add": 31746, "counts": {"ADD bridges": 301, "duplicate price constraints": 771, "incompatible rank equations": 1, "incompatible span bounds": 3617, "nonpositive mixed upper": 2, "nonpositive rank upper": 5, "placements": 4000, "reinstates original scalar equality": 375}, "index": 3999} +{"add": 31800, "counts": {"ADD bridges": 314, "duplicate price constraints": 814, "incompatible rank equations": 1, "incompatible span bounds": 3824, "nonpositive mixed upper": 2, "nonpositive rank upper": 5, "placements": 4250, "reinstates original scalar equality": 418}, "index": 4249} +{"add": 32126, "counts": {"ADD bridges": 331, "duplicate price constraints": 879, "incompatible rank equations": 1, "incompatible span bounds": 4056, "nonpositive mixed upper": 2, "nonpositive rank upper": 5, "placements": 4500, "reinstates original scalar equality": 436}, "index": 4499} +{"add": 32163, "counts": {"ADD bridges": 338, "duplicate price constraints": 896, "incompatible rank equations": 1, "incompatible span bounds": 4276, "nonpositive mixed upper": 2, "nonpositive rank upper": 5, "placements": 4750, "reinstates original scalar equality": 466}, "index": 4749} +{"add": 32195, "counts": {"ADD bridges": 347, "duplicate price constraints": 928, "incompatible rank equations": 1, "incompatible span bounds": 4476, "nonpositive mixed upper": 2, "nonpositive rank upper": 5, "placements": 5000, "reinstates original scalar equality": 516}, "index": 4999} +{"add": 32230, "counts": {"ADD bridges": 356, "duplicate price constraints": 981, "incompatible rank equations": 1, "incompatible span bounds": 4686, "nonpositive mixed upper": 2, "nonpositive rank upper": 5, "placements": 5250, "reinstates original scalar equality": 556}, "index": 5249} +{"add": 32691, "counts": {"ADD bridges": 370, "duplicate price constraints": 1028, "incompatible rank equations": 1, "incompatible span bounds": 4902, "nonpositive mixed upper": 2, "nonpositive rank upper": 6, "placements": 5500, "reinstates original scalar equality": 589}, "index": 5499} +{"add": 32768, "counts": {"ADD bridges": 383, "duplicate price constraints": 1064, "incompatible rank equations": 1, "incompatible span bounds": 5066, "nonpositive mixed upper": 2, "nonpositive rank upper": 6, "placements": 5750, "reinstates original scalar equality": 675}, "index": 5749} +{"add": 32985, "counts": {"ADD bridges": 398, "duplicate price constraints": 1081, "incompatible rank equations": 1, "incompatible span bounds": 5210, "nonpositive mixed upper": 2, "nonpositive rank upper": 6, "placements": 6000, "reinstates original scalar equality": 781}, "index": 5999} +{"add": 33141, "counts": {"ADD bridges": 413, "duplicate price constraints": 1116, "incompatible rank equations": 1, "incompatible span bounds": 5365, "nonpositive mixed upper": 2, "nonpositive rank upper": 6, "placements": 6250, "reinstates original scalar equality": 876}, "index": 6249} +{"add": 33198, "counts": {"ADD bridges": 426, "duplicate price constraints": 1167, "incompatible rank equations": 1, "incompatible span bounds": 5552, "nonpositive mixed upper": 2, "nonpositive rank upper": 6, "placements": 6500, "reinstates original scalar equality": 939}, "index": 6499} +{"add": 33320, "counts": {"ADD bridges": 446, "duplicate price constraints": 1174, "incompatible rank equations": 1, "incompatible span bounds": 5716, "nonpositive mixed upper": 2, "nonpositive rank upper": 6, "placements": 6750, "reinstates original scalar equality": 1025}, "index": 6749} +{"add": 33507, "counts": {"ADD bridges": 471, "duplicate price constraints": 1191, "incompatible rank equations": 1, "incompatible span bounds": 5936, "nonpositive mixed upper": 2, "nonpositive rank upper": 6, "placements": 7000, "reinstates original scalar equality": 1055}, "index": 6999} +{"add": 33744, "counts": {"ADD bridges": 500, "duplicate price constraints": 1211, "incompatible rank equations": 1, "incompatible span bounds": 6145, "nonpositive mixed upper": 2, "nonpositive rank upper": 7, "placements": 7250, "reinstates original scalar equality": 1095}, "index": 7249} +{"add": 33832, "counts": {"ADD bridges": 514, "duplicate price constraints": 1221, "incompatible rank equations": 1, "incompatible span bounds": 6274, "nonpositive mixed upper": 2, "nonpositive rank upper": 7, "placements": 7500, "reinstates original scalar equality": 1216}, "index": 7499} +{"add": 33927, "counts": {"ADD bridges": 530, "duplicate price constraints": 1228, "incompatible rank equations": 1, "incompatible span bounds": 6402, "nonpositive mixed upper": 2, "nonpositive rank upper": 7, "placements": 7750, "reinstates original scalar equality": 1338}, "index": 7749} +{"add": 34021, "counts": {"ADD bridges": 543, "duplicate price constraints": 1263, "incompatible rank equations": 1, "incompatible span bounds": 6539, "nonpositive mixed upper": 2, "nonpositive rank upper": 7, "placements": 8000, "reinstates original scalar equality": 1451}, "index": 7999} +{"add": 34317, "counts": {"ADD bridges": 562, "duplicate price constraints": 1270, "incompatible rank equations": 1, "incompatible span bounds": 6670, "nonpositive mixed upper": 2, "nonpositive rank upper": 11, "placements": 8250, "reinstates original scalar equality": 1566}, "index": 8249} +{"add": 35192, "counts": {"ADD bridges": 583, "duplicate price constraints": 1318, "incompatible rank equations": 1, "incompatible span bounds": 6907, "nonpositive mixed upper": 2, "nonpositive rank upper": 12, "placements": 8500, "reinstates original scalar equality": 1578}, "index": 8499} +{"add": 35516, "counts": {"ADD bridges": 608, "duplicate price constraints": 1364, "incompatible rank equations": 1, "incompatible span bounds": 7140, "nonpositive mixed upper": 2, "nonpositive rank upper": 12, "placements": 8750, "reinstates original scalar equality": 1595}, "index": 8749} +{"add": 35857, "counts": {"ADD bridges": 631, "duplicate price constraints": 1465, "incompatible rank equations": 3, "incompatible span bounds": 7365, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 9000, "reinstates original scalar equality": 1613}, "index": 8999} +{"add": 36010, "counts": {"ADD bridges": 646, "duplicate price constraints": 1542, "incompatible rank equations": 3, "incompatible span bounds": 7613, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 9250, "reinstates original scalar equality": 1615}, "index": 9249} +{"add": 36208, "counts": {"ADD bridges": 658, "duplicate price constraints": 1635, "incompatible rank equations": 3, "incompatible span bounds": 7863, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 9500, "reinstates original scalar equality": 1615}, "index": 9499} +{"add": 36304, "counts": {"ADD bridges": 662, "duplicate price constraints": 1764, "incompatible rank equations": 3, "incompatible span bounds": 8113, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 9750, "reinstates original scalar equality": 1615}, "index": 9749} +{"add": 36608, "counts": {"ADD bridges": 675, "duplicate price constraints": 1872, "incompatible rank equations": 3, "incompatible span bounds": 8363, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 10000, "reinstates original scalar equality": 1615}, "index": 9999} +{"add": 36973, "counts": {"ADD bridges": 696, "duplicate price constraints": 1935, "incompatible rank equations": 3, "incompatible span bounds": 8608, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 10250, "reinstates original scalar equality": 1620}, "index": 10249} +{"add": 37112, "counts": {"ADD bridges": 723, "duplicate price constraints": 1946, "incompatible rank equations": 3, "incompatible span bounds": 8846, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 10500, "reinstates original scalar equality": 1632}, "index": 10499} +{"add": 37126, "counts": {"ADD bridges": 725, "duplicate price constraints": 2030, "incompatible rank equations": 3, "incompatible span bounds": 9087, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 10750, "reinstates original scalar equality": 1641}, "index": 10749} +{"add": 37141, "counts": {"ADD bridges": 731, "duplicate price constraints": 2078, "incompatible rank equations": 3, "incompatible span bounds": 9337, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 11000, "reinstates original scalar equality": 1641}, "index": 10999} +{"add": 37172, "counts": {"ADD bridges": 743, "duplicate price constraints": 2106, "incompatible rank equations": 3, "incompatible span bounds": 9587, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 11250, "reinstates original scalar equality": 1641}, "index": 11249} +{"add": 37188, "counts": {"ADD bridges": 748, "duplicate price constraints": 2135, "incompatible rank equations": 3, "incompatible span bounds": 9818, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 11500, "reinstates original scalar equality": 1660}, "index": 11499} +{"add": 37188, "counts": {"ADD bridges": 748, "duplicate price constraints": 2268, "incompatible rank equations": 3, "incompatible span bounds": 10068, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 11750, "reinstates original scalar equality": 1660}, "index": 11749} +{"add": 37210, "counts": {"ADD bridges": 754, "duplicate price constraints": 2325, "incompatible rank equations": 3, "incompatible span bounds": 10292, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 12000, "reinstates original scalar equality": 1686}, "index": 11999} +{"add": 37355, "counts": {"ADD bridges": 765, "duplicate price constraints": 2382, "incompatible rank equations": 3, "incompatible span bounds": 10527, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 12250, "reinstates original scalar equality": 1701}, "index": 12249} +{"add": 37376, "counts": {"ADD bridges": 774, "duplicate price constraints": 2429, "incompatible rank equations": 3, "incompatible span bounds": 10777, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 12500, "reinstates original scalar equality": 1701}, "index": 12499} +{"add": 37383, "counts": {"ADD bridges": 777, "duplicate price constraints": 2540, "incompatible rank equations": 3, "incompatible span bounds": 11027, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 12750, "reinstates original scalar equality": 1701}, "index": 12749} +{"add": 37386, "counts": {"ADD bridges": 778, "duplicate price constraints": 2649, "incompatible rank equations": 3, "incompatible span bounds": 11277, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 13000, "reinstates original scalar equality": 1701}, "index": 12999} +{"add": 37394, "counts": {"ADD bridges": 781, "duplicate price constraints": 2726, "incompatible rank equations": 3, "incompatible span bounds": 11527, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 13250, "reinstates original scalar equality": 1701}, "index": 13249} +{"add": 37409, "counts": {"ADD bridges": 786, "duplicate price constraints": 2728, "incompatible rank equations": 3, "incompatible span bounds": 11777, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 13500, "reinstates original scalar equality": 1701}, "index": 13499} +{"add": 37418, "counts": {"ADD bridges": 789, "duplicate price constraints": 2759, "incompatible rank equations": 3, "incompatible span bounds": 12022, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 13750, "reinstates original scalar equality": 1706}, "index": 13749} +{"add": 37418, "counts": {"ADD bridges": 789, "duplicate price constraints": 2836, "incompatible rank equations": 3, "incompatible span bounds": 12272, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 14000, "reinstates original scalar equality": 1706}, "index": 13999} +{"add": 37431, "counts": {"ADD bridges": 794, "duplicate price constraints": 2900, "incompatible rank equations": 3, "incompatible span bounds": 12512, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 14250, "reinstates original scalar equality": 1716}, "index": 14249} +{"add": 37448, "counts": {"ADD bridges": 801, "duplicate price constraints": 3002, "incompatible rank equations": 3, "incompatible span bounds": 12758, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 14500, "reinstates original scalar equality": 1720}, "index": 14499} +{"add": 37472, "counts": {"ADD bridges": 811, "duplicate price constraints": 3057, "incompatible rank equations": 3, "incompatible span bounds": 13008, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 14750, "reinstates original scalar equality": 1720}, "index": 14749} +{"add": 37475, "counts": {"ADD bridges": 812, "duplicate price constraints": 3189, "incompatible rank equations": 3, "incompatible span bounds": 13258, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 15000, "reinstates original scalar equality": 1720}, "index": 14999} +{"add": 37493, "counts": {"ADD bridges": 819, "duplicate price constraints": 3191, "incompatible rank equations": 3, "incompatible span bounds": 13487, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 15250, "reinstates original scalar equality": 1741}, "index": 15249} +{"add": 37512, "counts": {"ADD bridges": 830, "duplicate price constraints": 3249, "incompatible rank equations": 3, "incompatible span bounds": 13711, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 15500, "reinstates original scalar equality": 1767}, "index": 15499} +{"add": 37529, "counts": {"ADD bridges": 836, "duplicate price constraints": 3308, "incompatible rank equations": 3, "incompatible span bounds": 13938, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 15750, "reinstates original scalar equality": 1790}, "index": 15749} +{"add": 37547, "counts": {"ADD bridges": 842, "duplicate price constraints": 3348, "incompatible rank equations": 3, "incompatible span bounds": 14170, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 16000, "reinstates original scalar equality": 1808}, "index": 15999} +{"add": 37560, "counts": {"ADD bridges": 850, "duplicate price constraints": 3382, "incompatible rank equations": 3, "incompatible span bounds": 14384, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 16250, "reinstates original scalar equality": 1844}, "index": 16249} +{"add": 37583, "counts": {"ADD bridges": 858, "duplicate price constraints": 3432, "incompatible rank equations": 3, "incompatible span bounds": 14612, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 16500, "reinstates original scalar equality": 1866}, "index": 16499} +{"add": 37599, "counts": {"ADD bridges": 865, "duplicate price constraints": 3499, "incompatible rank equations": 3, "incompatible span bounds": 14857, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 16750, "reinstates original scalar equality": 1871}, "index": 16749} +{"add": 37618, "counts": {"ADD bridges": 868, "duplicate price constraints": 3583, "incompatible rank equations": 3, "incompatible span bounds": 15107, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 17000, "reinstates original scalar equality": 1871}, "index": 16999} +{"add": 37618, "counts": {"ADD bridges": 868, "duplicate price constraints": 3672, "incompatible rank equations": 3, "incompatible span bounds": 15357, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 17250, "reinstates original scalar equality": 1871}, "index": 17249} +{"add": 37618, "counts": {"ADD bridges": 868, "duplicate price constraints": 3754, "incompatible rank equations": 3, "incompatible span bounds": 15605, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 17500, "reinstates original scalar equality": 1873}, "index": 17499} +{"add": 37621, "counts": {"ADD bridges": 869, "duplicate price constraints": 3806, "incompatible rank equations": 3, "incompatible span bounds": 15852, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 17750, "reinstates original scalar equality": 1876}, "index": 17749} +{"add": 37627, "counts": {"ADD bridges": 870, "duplicate price constraints": 3883, "incompatible rank equations": 3, "incompatible span bounds": 16097, "nonpositive mixed upper": 4, "nonpositive rank upper": 15, "placements": 18000, "reinstates original scalar equality": 1881}, "index": 17999} +{"add": 37714, "counts": {"ADD bridges": 883, "duplicate price constraints": 3946, "incompatible rank equations": 3, "incompatible span bounds": 16342, "nonpositive mixed upper": 4, "nonpositive rank upper": 17, "placements": 18250, "reinstates original scalar equality": 1884}, "index": 18249} +{"add": 37844, "counts": {"ADD bridges": 886, "duplicate price constraints": 4018, "incompatible rank equations": 3, "incompatible span bounds": 16592, "nonpositive mixed upper": 4, "nonpositive rank upper": 17, "placements": 18500, "reinstates original scalar equality": 1884}, "index": 18499} +{"add": 37900, "counts": {"ADD bridges": 892, "duplicate price constraints": 4152, "incompatible rank equations": 3, "incompatible span bounds": 16816, "nonpositive mixed upper": 4, "nonpositive rank upper": 17, "placements": 18750, "reinstates original scalar equality": 1910}, "index": 18749} +{"add": 37961, "counts": {"ADD bridges": 900, "duplicate price constraints": 4250, "incompatible rank equations": 3, "incompatible span bounds": 17062, "nonpositive mixed upper": 4, "nonpositive rank upper": 17, "placements": 19000, "reinstates original scalar equality": 1914}, "index": 18999} +{"add": 37988, "counts": {"ADD bridges": 905, "duplicate price constraints": 4318, "incompatible rank equations": 3, "incompatible span bounds": 17311, "nonpositive mixed upper": 4, "nonpositive rank upper": 18, "placements": 19250, "reinstates original scalar equality": 1914}, "index": 19249} +{"add": 38058, "counts": {"ADD bridges": 909, "duplicate price constraints": 4415, "incompatible rank equations": 3, "incompatible span bounds": 17539, "nonpositive mixed upper": 4, "nonpositive rank upper": 18, "placements": 19500, "reinstates original scalar equality": 1936}, "index": 19499} +{"add": 38094, "counts": {"ADD bridges": 917, "duplicate price constraints": 4455, "incompatible rank equations": 3, "incompatible span bounds": 17744, "nonpositive mixed upper": 4, "nonpositive rank upper": 18, "placements": 19750, "reinstates original scalar equality": 1981}, "index": 19749} +{"add": 38115, "counts": {"ADD bridges": 925, "duplicate price constraints": 4508, "incompatible rank equations": 3, "incompatible span bounds": 17929, "nonpositive mixed upper": 4, "nonpositive rank upper": 18, "placements": 20000, "reinstates original scalar equality": 2046}, "index": 19999} +{"add": 38124, "counts": {"ADD bridges": 929, "duplicate price constraints": 4548, "incompatible rank equations": 3, "incompatible span bounds": 18128, "nonpositive mixed upper": 4, "nonpositive rank upper": 18, "placements": 20250, "reinstates original scalar equality": 2097}, "index": 20249} +{"add": 38141, "counts": {"ADD bridges": 934, "duplicate price constraints": 4616, "incompatible rank equations": 3, "incompatible span bounds": 18324, "nonpositive mixed upper": 4, "nonpositive rank upper": 18, "placements": 20500, "reinstates original scalar equality": 2151}, "index": 20499} +{"add": 38237, "counts": {"ADD bridges": 940, "duplicate price constraints": 4717, "incompatible rank equations": 3, "incompatible span bounds": 18564, "nonpositive mixed upper": 4, "nonpositive rank upper": 18, "placements": 20750, "reinstates original scalar equality": 2161}, "index": 20749} +{"add": 38261, "counts": {"ADD bridges": 950, "duplicate price constraints": 4754, "incompatible rank equations": 3, "incompatible span bounds": 18781, "nonpositive mixed upper": 4, "nonpositive rank upper": 18, "placements": 21000, "reinstates original scalar equality": 2194}, "index": 20999} +{"add": 38276, "counts": {"ADD bridges": 953, "duplicate price constraints": 4855, "incompatible rank equations": 3, "incompatible span bounds": 19019, "nonpositive mixed upper": 4, "nonpositive rank upper": 18, "placements": 21250, "reinstates original scalar equality": 2206}, "index": 21249} +{"add": 38304, "counts": {"ADD bridges": 961, "duplicate price constraints": 4952, "incompatible rank equations": 3, "incompatible span bounds": 19258, "nonpositive mixed upper": 4, "nonpositive rank upper": 18, "placements": 21500, "reinstates original scalar equality": 2217}, "index": 21499} +{"add": 38309, "counts": {"ADD bridges": 963, "duplicate price constraints": 5054, "incompatible rank equations": 3, "incompatible span bounds": 19463, "nonpositive mixed upper": 4, "nonpositive rank upper": 18, "placements": 21750, "reinstates original scalar equality": 2262}, "index": 21749} +{"add": 38316, "counts": {"ADD bridges": 966, "duplicate price constraints": 5196, "incompatible rank equations": 3, "incompatible span bounds": 19706, "nonpositive mixed upper": 4, "nonpositive rank upper": 18, "placements": 22000, "reinstates original scalar equality": 2269}, "index": 21999} +{"add": 38357, "counts": {"ADD bridges": 975, "duplicate price constraints": 5223, "incompatible rank equations": 3, "incompatible span bounds": 19910, "nonpositive mixed upper": 4, "nonpositive rank upper": 18, "placements": 22250, "reinstates original scalar equality": 2315}, "index": 22249} +{"add": 38390, "counts": {"ADD bridges": 980, "duplicate price constraints": 5232, "incompatible rank equations": 3, "incompatible span bounds": 20118, "nonpositive mixed upper": 4, "nonpositive rank upper": 18, "placements": 22500, "reinstates original scalar equality": 2357}, "index": 22499} +{"add": 38395, "counts": {"ADD bridges": 982, "duplicate price constraints": 5365, "incompatible rank equations": 3, "incompatible span bounds": 20367, "nonpositive mixed upper": 4, "nonpositive rank upper": 18, "placements": 22750, "reinstates original scalar equality": 2358}, "index": 22749} +{"add": 38418, "counts": {"ADD bridges": 991, "duplicate price constraints": 5400, "incompatible rank equations": 3, "incompatible span bounds": 20611, "nonpositive mixed upper": 4, "nonpositive rank upper": 18, "placements": 23000, "reinstates original scalar equality": 2364}, "index": 22999} +{"add": 38430, "counts": {"ADD bridges": 997, "duplicate price constraints": 5486, "incompatible rank equations": 3, "incompatible span bounds": 20861, "nonpositive mixed upper": 4, "nonpositive rank upper": 18, "placements": 23250, "reinstates original scalar equality": 2364}, "index": 23249} +{"add": 38439, "counts": {"ADD bridges": 1001, "duplicate price constraints": 5617, "incompatible rank equations": 3, "incompatible span bounds": 21111, "nonpositive mixed upper": 4, "nonpositive rank upper": 18, "placements": 23500, "reinstates original scalar equality": 2364}, "index": 23499} +{"add": 38471, "counts": {"ADD bridges": 1010, "duplicate price constraints": 5642, "incompatible rank equations": 3, "incompatible span bounds": 21320, "nonpositive mixed upper": 4, "nonpositive rank upper": 18, "placements": 23750, "reinstates original scalar equality": 2405}, "index": 23749} +{"add": 38477, "counts": {"ADD bridges": 1012, "duplicate price constraints": 5745, "incompatible rank equations": 3, "incompatible span bounds": 21570, "nonpositive mixed upper": 4, "nonpositive rank upper": 18, "placements": 24000, "reinstates original scalar equality": 2405}, "index": 23999} +{"add": 38499, "counts": {"ADD bridges": 1019, "duplicate price constraints": 5772, "incompatible rank equations": 3, "incompatible span bounds": 21799, "nonpositive mixed upper": 4, "nonpositive rank upper": 18, "placements": 24250, "reinstates original scalar equality": 2426}, "index": 24249} +{"add": 38532, "counts": {"ADD bridges": 1024, "duplicate price constraints": 5843, "incompatible rank equations": 3, "incompatible span bounds": 22038, "nonpositive mixed upper": 4, "nonpositive rank upper": 18, "placements": 24500, "reinstates original scalar equality": 2437}, "index": 24499} +{"add": 38555, "counts": {"ADD bridges": 1030, "duplicate price constraints": 5907, "incompatible rank equations": 3, "incompatible span bounds": 22227, "nonpositive mixed upper": 4, "nonpositive rank upper": 19, "placements": 24750, "reinstates original scalar equality": 2497}, "index": 24749} +{"add": 38576, "counts": {"ADD bridges": 1037, "duplicate price constraints": 5956, "incompatible rank equations": 3, "incompatible span bounds": 22460, "nonpositive mixed upper": 4, "nonpositive rank upper": 19, "placements": 25000, "reinstates original scalar equality": 2514}, "index": 24999} +{"add": 38604, "counts": {"ADD bridges": 1041, "duplicate price constraints": 6055, "incompatible rank equations": 3, "incompatible span bounds": 22706, "nonpositive mixed upper": 4, "nonpositive rank upper": 19, "placements": 25250, "reinstates original scalar equality": 2518}, "index": 25249} +{"add": 38609, "counts": {"ADD bridges": 1043, "duplicate price constraints": 6184, "incompatible rank equations": 3, "incompatible span bounds": 22946, "nonpositive mixed upper": 4, "nonpositive rank upper": 19, "placements": 25500, "reinstates original scalar equality": 2528}, "index": 25499} +{"add": 38632, "counts": {"ADD bridges": 1050, "duplicate price constraints": 6239, "incompatible rank equations": 3, "incompatible span bounds": 23179, "nonpositive mixed upper": 4, "nonpositive rank upper": 19, "placements": 25750, "reinstates original scalar equality": 2545}, "index": 25749} +{"add": 38796, "counts": {"ADD bridges": 1060, "duplicate price constraints": 6261, "incompatible rank equations": 3, "incompatible span bounds": 23400, "nonpositive mixed upper": 4, "nonpositive rank upper": 19, "placements": 26000, "reinstates original scalar equality": 2574}, "index": 25999} +{"add": 38838, "counts": {"ADD bridges": 1066, "duplicate price constraints": 6334, "incompatible rank equations": 3, "incompatible span bounds": 23620, "nonpositive mixed upper": 4, "nonpositive rank upper": 19, "placements": 26250, "reinstates original scalar equality": 2604}, "index": 26249} +{"add": 38908, "counts": {"ADD bridges": 1074, "duplicate price constraints": 6381, "incompatible rank equations": 3, "incompatible span bounds": 23853, "nonpositive mixed upper": 4, "nonpositive rank upper": 19, "placements": 26500, "reinstates original scalar equality": 2621}, "index": 26499} +{"add": 38980, "counts": {"ADD bridges": 1077, "duplicate price constraints": 6503, "incompatible rank equations": 3, "incompatible span bounds": 24095, "nonpositive mixed upper": 4, "nonpositive rank upper": 20, "placements": 26750, "reinstates original scalar equality": 2628}, "index": 26749} +{"add": 38991, "counts": {"ADD bridges": 1081, "duplicate price constraints": 6592, "incompatible rank equations": 3, "incompatible span bounds": 24324, "nonpositive mixed upper": 4, "nonpositive rank upper": 20, "placements": 27000, "reinstates original scalar equality": 2649}, "index": 26999} +{"add": 38994, "counts": {"ADD bridges": 1082, "duplicate price constraints": 6727, "incompatible rank equations": 3, "incompatible span bounds": 24568, "nonpositive mixed upper": 4, "nonpositive rank upper": 20, "placements": 27250, "reinstates original scalar equality": 2655}, "index": 27249} +{"add": 39023, "counts": {"ADD bridges": 1088, "duplicate price constraints": 6813, "incompatible rank equations": 3, "incompatible span bounds": 24792, "nonpositive mixed upper": 4, "nonpositive rank upper": 20, "placements": 27500, "reinstates original scalar equality": 2681}, "index": 27499} +{"add": 39026, "counts": {"ADD bridges": 1089, "duplicate price constraints": 6945, "incompatible rank equations": 3, "incompatible span bounds": 25042, "nonpositive mixed upper": 4, "nonpositive rank upper": 20, "placements": 27750, "reinstates original scalar equality": 2681}, "index": 27749} +{"add": 39050, "counts": {"ADD bridges": 1091, "duplicate price constraints": 7093, "incompatible rank equations": 3, "incompatible span bounds": 25290, "nonpositive mixed upper": 4, "nonpositive rank upper": 20, "placements": 28000, "reinstates original scalar equality": 2683}, "index": 27999} +{"add": 39061, "counts": {"ADD bridges": 1094, "duplicate price constraints": 7186, "incompatible rank equations": 3, "incompatible span bounds": 25520, "nonpositive mixed upper": 4, "nonpositive rank upper": 20, "placements": 28250, "reinstates original scalar equality": 2703}, "index": 28249} +{"add": 39194, "counts": {"ADD bridges": 1102, "duplicate price constraints": 7247, "incompatible rank equations": 3, "incompatible span bounds": 25751, "nonpositive mixed upper": 4, "nonpositive rank upper": 20, "placements": 28500, "reinstates original scalar equality": 2722}, "index": 28499} +{"add": 39206, "counts": {"ADD bridges": 1107, "duplicate price constraints": 7307, "incompatible rank equations": 3, "incompatible span bounds": 25937, "nonpositive mixed upper": 4, "nonpositive rank upper": 20, "placements": 28750, "reinstates original scalar equality": 2786}, "index": 28749} +{"add": 39222, "counts": {"ADD bridges": 1108, "duplicate price constraints": 7436, "incompatible rank equations": 3, "incompatible span bounds": 26187, "nonpositive mixed upper": 4, "nonpositive rank upper": 20, "placements": 29000, "reinstates original scalar equality": 2786}, "index": 28999} +{"add": 39239, "counts": {"ADD bridges": 1113, "duplicate price constraints": 7487, "incompatible rank equations": 3, "incompatible span bounds": 26435, "nonpositive mixed upper": 4, "nonpositive rank upper": 20, "placements": 29250, "reinstates original scalar equality": 2788}, "index": 29249} +{"add": 39242, "counts": {"ADD bridges": 1114, "duplicate price constraints": 7594, "incompatible rank equations": 3, "incompatible span bounds": 26685, "nonpositive mixed upper": 4, "nonpositive rank upper": 20, "placements": 29500, "reinstates original scalar equality": 2788}, "index": 29499} +{"add": 39286, "counts": {"ADD bridges": 1118, "duplicate price constraints": 7659, "incompatible rank equations": 3, "incompatible span bounds": 26918, "nonpositive mixed upper": 4, "nonpositive rank upper": 20, "placements": 29750, "reinstates original scalar equality": 2805}, "index": 29749} +{"add": 39326, "counts": {"ADD bridges": 1128, "duplicate price constraints": 7697, "incompatible rank equations": 3, "incompatible span bounds": 27151, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 30000, "reinstates original scalar equality": 2821}, "index": 29999} +{"add": 39346, "counts": {"ADD bridges": 1135, "duplicate price constraints": 7747, "incompatible rank equations": 3, "incompatible span bounds": 27383, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 30250, "reinstates original scalar equality": 2839}, "index": 30249} +{"add": 39367, "counts": {"ADD bridges": 1141, "duplicate price constraints": 7837, "incompatible rank equations": 3, "incompatible span bounds": 27633, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 30500, "reinstates original scalar equality": 2839}, "index": 30499} +{"add": 39376, "counts": {"ADD bridges": 1145, "duplicate price constraints": 7918, "incompatible rank equations": 3, "incompatible span bounds": 27883, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 30750, "reinstates original scalar equality": 2839}, "index": 30749} +{"add": 39381, "counts": {"ADD bridges": 1147, "duplicate price constraints": 8061, "incompatible rank equations": 3, "incompatible span bounds": 28133, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 31000, "reinstates original scalar equality": 2839}, "index": 30999} +{"add": 39388, "counts": {"ADD bridges": 1150, "duplicate price constraints": 8152, "incompatible rank equations": 3, "incompatible span bounds": 28370, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 31250, "reinstates original scalar equality": 2852}, "index": 31249} +{"add": 39399, "counts": {"ADD bridges": 1154, "duplicate price constraints": 8221, "incompatible rank equations": 3, "incompatible span bounds": 28609, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 31500, "reinstates original scalar equality": 2863}, "index": 31499} +{"add": 39399, "counts": {"ADD bridges": 1154, "duplicate price constraints": 8283, "incompatible rank equations": 3, "incompatible span bounds": 28859, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 31750, "reinstates original scalar equality": 2863}, "index": 31749} +{"add": 39413, "counts": {"ADD bridges": 1159, "duplicate price constraints": 8327, "incompatible rank equations": 3, "incompatible span bounds": 29088, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 32000, "reinstates original scalar equality": 2884}, "index": 31999} +{"add": 39421, "counts": {"ADD bridges": 1162, "duplicate price constraints": 8371, "incompatible rank equations": 3, "incompatible span bounds": 29322, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 32250, "reinstates original scalar equality": 2900}, "index": 32249} +{"add": 39421, "counts": {"ADD bridges": 1162, "duplicate price constraints": 8486, "incompatible rank equations": 3, "incompatible span bounds": 29572, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 32500, "reinstates original scalar equality": 2900}, "index": 32499} +{"add": 39435, "counts": {"ADD bridges": 1167, "duplicate price constraints": 8545, "incompatible rank equations": 3, "incompatible span bounds": 29811, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 32750, "reinstates original scalar equality": 2911}, "index": 32749} +{"add": 39447, "counts": {"ADD bridges": 1171, "duplicate price constraints": 8645, "incompatible rank equations": 3, "incompatible span bounds": 30052, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 33000, "reinstates original scalar equality": 2920}, "index": 32999} +{"add": 39452, "counts": {"ADD bridges": 1173, "duplicate price constraints": 8725, "incompatible rank equations": 3, "incompatible span bounds": 30302, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 33250, "reinstates original scalar equality": 2920}, "index": 33249} +{"add": 39454, "counts": {"ADD bridges": 1174, "duplicate price constraints": 8831, "incompatible rank equations": 3, "incompatible span bounds": 30547, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 33500, "reinstates original scalar equality": 2925}, "index": 33499} +{"add": 39466, "counts": {"ADD bridges": 1176, "duplicate price constraints": 8986, "incompatible rank equations": 3, "incompatible span bounds": 30791, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 33750, "reinstates original scalar equality": 2931}, "index": 33749} +{"add": 39485, "counts": {"ADD bridges": 1183, "duplicate price constraints": 9059, "incompatible rank equations": 3, "incompatible span bounds": 31016, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 34000, "reinstates original scalar equality": 2956}, "index": 33999} +{"add": 39495, "counts": {"ADD bridges": 1187, "duplicate price constraints": 9183, "incompatible rank equations": 3, "incompatible span bounds": 31252, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 34250, "reinstates original scalar equality": 2970}, "index": 34249} +{"add": 39501, "counts": {"ADD bridges": 1189, "duplicate price constraints": 9326, "incompatible rank equations": 3, "incompatible span bounds": 31496, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 34500, "reinstates original scalar equality": 2976}, "index": 34499} +{"add": 39517, "counts": {"ADD bridges": 1194, "duplicate price constraints": 9339, "incompatible rank equations": 3, "incompatible span bounds": 31741, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 34750, "reinstates original scalar equality": 2981}, "index": 34749} +{"add": 39523, "counts": {"ADD bridges": 1196, "duplicate price constraints": 9444, "incompatible rank equations": 3, "incompatible span bounds": 31991, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 35000, "reinstates original scalar equality": 2981}, "index": 34999} +{"add": 39535, "counts": {"ADD bridges": 1199, "duplicate price constraints": 9522, "incompatible rank equations": 3, "incompatible span bounds": 32236, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 35250, "reinstates original scalar equality": 2986}, "index": 35249} +{"add": 39552, "counts": {"ADD bridges": 1205, "duplicate price constraints": 9572, "incompatible rank equations": 3, "incompatible span bounds": 32469, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 35500, "reinstates original scalar equality": 3003}, "index": 35499} +{"add": 39552, "counts": {"ADD bridges": 1205, "duplicate price constraints": 9717, "incompatible rank equations": 3, "incompatible span bounds": 32719, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 35750, "reinstates original scalar equality": 3003}, "index": 35749} +{"add": 39562, "counts": {"ADD bridges": 1208, "duplicate price constraints": 9842, "incompatible rank equations": 3, "incompatible span bounds": 32967, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 36000, "reinstates original scalar equality": 3005}, "index": 35999} +{"add": 39569, "counts": {"ADD bridges": 1211, "duplicate price constraints": 9966, "incompatible rank equations": 3, "incompatible span bounds": 33217, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 36250, "reinstates original scalar equality": 3005}, "index": 36249} +{"add": 39644, "counts": {"ADD bridges": 1213, "duplicate price constraints": 10101, "incompatible rank equations": 3, "incompatible span bounds": 33467, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 36500, "reinstates original scalar equality": 3005}, "index": 36499} +{"add": 39649, "counts": {"ADD bridges": 1214, "duplicate price constraints": 10198, "incompatible rank equations": 3, "incompatible span bounds": 33717, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 36750, "reinstates original scalar equality": 3005}, "index": 36749} +{"add": 39652, "counts": {"ADD bridges": 1215, "duplicate price constraints": 10300, "incompatible rank equations": 3, "incompatible span bounds": 33967, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 37000, "reinstates original scalar equality": 3005}, "index": 36999} +{"add": 39664, "counts": {"ADD bridges": 1219, "duplicate price constraints": 10322, "incompatible rank equations": 3, "incompatible span bounds": 34217, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 37250, "reinstates original scalar equality": 3005}, "index": 37249} +{"add": 39682, "counts": {"ADD bridges": 1225, "duplicate price constraints": 10340, "incompatible rank equations": 3, "incompatible span bounds": 34462, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 37500, "reinstates original scalar equality": 3010}, "index": 37499} +{"add": 39682, "counts": {"ADD bridges": 1225, "duplicate price constraints": 10432, "incompatible rank equations": 3, "incompatible span bounds": 34712, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 37750, "reinstates original scalar equality": 3010}, "index": 37749} +{"add": 39682, "counts": {"ADD bridges": 1225, "duplicate price constraints": 10530, "incompatible rank equations": 3, "incompatible span bounds": 34962, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 38000, "reinstates original scalar equality": 3010}, "index": 37999} +{"add": 39695, "counts": {"ADD bridges": 1228, "duplicate price constraints": 10625, "incompatible rank equations": 3, "incompatible span bounds": 35202, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 38250, "reinstates original scalar equality": 3020}, "index": 38249} +{"add": 39716, "counts": {"ADD bridges": 1234, "duplicate price constraints": 10639, "incompatible rank equations": 3, "incompatible span bounds": 35442, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 38500, "reinstates original scalar equality": 3030}, "index": 38499} +{"add": 39716, "counts": {"ADD bridges": 1234, "duplicate price constraints": 10787, "incompatible rank equations": 3, "incompatible span bounds": 35692, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 38750, "reinstates original scalar equality": 3030}, "index": 38749} +{"add": 39733, "counts": {"ADD bridges": 1238, "duplicate price constraints": 10864, "incompatible rank equations": 3, "incompatible span bounds": 35931, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 39000, "reinstates original scalar equality": 3041}, "index": 38999} +{"add": 39752, "counts": {"ADD bridges": 1245, "duplicate price constraints": 10940, "incompatible rank equations": 3, "incompatible span bounds": 36159, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 39250, "reinstates original scalar equality": 3063}, "index": 39249} +{"add": 39762, "counts": {"ADD bridges": 1250, "duplicate price constraints": 11000, "incompatible rank equations": 3, "incompatible span bounds": 36375, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 39500, "reinstates original scalar equality": 3097}, "index": 39499} +{"add": 39765, "counts": {"ADD bridges": 1251, "duplicate price constraints": 11139, "incompatible rank equations": 3, "incompatible span bounds": 36619, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 39750, "reinstates original scalar equality": 3103}, "index": 39749} +{"add": 39789, "counts": {"ADD bridges": 1258, "duplicate price constraints": 11162, "incompatible rank equations": 3, "incompatible span bounds": 36844, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 40000, "reinstates original scalar equality": 3128}, "index": 39999} +{"add": 39800, "counts": {"ADD bridges": 1262, "duplicate price constraints": 11219, "incompatible rank equations": 3, "incompatible span bounds": 37086, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 40250, "reinstates original scalar equality": 3136}, "index": 40249} +{"add": 39804, "counts": {"ADD bridges": 1264, "duplicate price constraints": 11305, "incompatible rank equations": 3, "incompatible span bounds": 37315, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 40500, "reinstates original scalar equality": 3157}, "index": 40499} +{"add": 39818, "counts": {"ADD bridges": 1268, "duplicate price constraints": 11356, "incompatible rank equations": 3, "incompatible span bounds": 37557, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 40750, "reinstates original scalar equality": 3165}, "index": 40749} +{"add": 39818, "counts": {"ADD bridges": 1268, "duplicate price constraints": 11463, "incompatible rank equations": 3, "incompatible span bounds": 37807, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 41000, "reinstates original scalar equality": 3165}, "index": 40999} +{"add": 39825, "counts": {"ADD bridges": 1270, "duplicate price constraints": 11531, "incompatible rank equations": 3, "incompatible span bounds": 38036, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 41250, "reinstates original scalar equality": 3186}, "index": 41249} +{"add": 39840, "counts": {"ADD bridges": 1274, "duplicate price constraints": 11609, "incompatible rank equations": 3, "incompatible span bounds": 38282, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 41500, "reinstates original scalar equality": 3190}, "index": 41499} +{"add": 39840, "counts": {"ADD bridges": 1274, "duplicate price constraints": 11709, "incompatible rank equations": 3, "incompatible span bounds": 38532, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 41750, "reinstates original scalar equality": 3190}, "index": 41749} +{"add": 39857, "counts": {"ADD bridges": 1280, "duplicate price constraints": 11768, "incompatible rank equations": 3, "incompatible span bounds": 38767, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 42000, "reinstates original scalar equality": 3205}, "index": 41999} +{"add": 39894, "counts": {"ADD bridges": 1290, "duplicate price constraints": 11837, "incompatible rank equations": 3, "incompatible span bounds": 38997, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 42250, "reinstates original scalar equality": 3225}, "index": 42249} +{"add": 39905, "counts": {"ADD bridges": 1295, "duplicate price constraints": 11882, "incompatible rank equations": 3, "incompatible span bounds": 39196, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 42500, "reinstates original scalar equality": 3276}, "index": 42499} +{"add": 39918, "counts": {"ADD bridges": 1300, "duplicate price constraints": 11989, "incompatible rank equations": 3, "incompatible span bounds": 39443, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 42750, "reinstates original scalar equality": 3279}, "index": 42749} +{"add": 39918, "counts": {"ADD bridges": 1300, "duplicate price constraints": 12057, "incompatible rank equations": 3, "incompatible span bounds": 39693, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 43000, "reinstates original scalar equality": 3279}, "index": 42999} +{"add": 39918, "counts": {"ADD bridges": 1300, "duplicate price constraints": 12186, "incompatible rank equations": 3, "incompatible span bounds": 39943, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 43250, "reinstates original scalar equality": 3279}, "index": 43249} +{"add": 39946, "counts": {"ADD bridges": 1306, "duplicate price constraints": 12233, "incompatible rank equations": 3, "incompatible span bounds": 40127, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 43500, "reinstates original scalar equality": 3345}, "index": 43499} +{"add": 40002, "counts": {"ADD bridges": 1315, "duplicate price constraints": 12289, "incompatible rank equations": 3, "incompatible span bounds": 40359, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 43750, "reinstates original scalar equality": 3363}, "index": 43749} +{"add": 40010, "counts": {"ADD bridges": 1318, "duplicate price constraints": 12313, "incompatible rank equations": 3, "incompatible span bounds": 40584, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 44000, "reinstates original scalar equality": 3388}, "index": 43999} +{"add": 40020, "counts": {"ADD bridges": 1321, "duplicate price constraints": 12370, "incompatible rank equations": 3, "incompatible span bounds": 40805, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 44250, "reinstates original scalar equality": 3417}, "index": 44249} +{"add": 40042, "counts": {"ADD bridges": 1327, "duplicate price constraints": 12398, "incompatible rank equations": 3, "incompatible span bounds": 40976, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 44500, "reinstates original scalar equality": 3496}, "index": 44499} +{"add": 40042, "counts": {"ADD bridges": 1327, "duplicate price constraints": 12538, "incompatible rank equations": 3, "incompatible span bounds": 41226, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 44750, "reinstates original scalar equality": 3496}, "index": 44749} +{"add": 40054, "counts": {"ADD bridges": 1329, "duplicate price constraints": 12581, "incompatible rank equations": 3, "incompatible span bounds": 41434, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 45000, "reinstates original scalar equality": 3538}, "index": 44999} +{"add": 40073, "counts": {"ADD bridges": 1335, "duplicate price constraints": 12606, "incompatible rank equations": 3, "incompatible span bounds": 41659, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 45250, "reinstates original scalar equality": 3563}, "index": 45249} +{"add": 40084, "counts": {"ADD bridges": 1338, "duplicate price constraints": 12697, "incompatible rank equations": 3, "incompatible span bounds": 41898, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 45500, "reinstates original scalar equality": 3574}, "index": 45499} +{"add": 40084, "counts": {"ADD bridges": 1338, "duplicate price constraints": 12848, "incompatible rank equations": 3, "incompatible span bounds": 42148, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 45750, "reinstates original scalar equality": 3574}, "index": 45749} +{"add": 40084, "counts": {"ADD bridges": 1338, "duplicate price constraints": 12907, "incompatible rank equations": 3, "incompatible span bounds": 42398, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 46000, "reinstates original scalar equality": 3574}, "index": 45999} +{"add": 40121, "counts": {"ADD bridges": 1347, "duplicate price constraints": 12962, "incompatible rank equations": 3, "incompatible span bounds": 42640, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 46250, "reinstates original scalar equality": 3582}, "index": 46249} +{"add": 40124, "counts": {"ADD bridges": 1348, "duplicate price constraints": 13035, "incompatible rank equations": 3, "incompatible span bounds": 42879, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 46500, "reinstates original scalar equality": 3593}, "index": 46499} +{"add": 40130, "counts": {"ADD bridges": 1351, "duplicate price constraints": 13106, "incompatible rank equations": 3, "incompatible span bounds": 43101, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 46750, "reinstates original scalar equality": 3621}, "index": 46749} +{"add": 40150, "counts": {"ADD bridges": 1359, "duplicate price constraints": 13119, "incompatible rank equations": 3, "incompatible span bounds": 43292, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 47000, "reinstates original scalar equality": 3680}, "index": 46999} +{"add": 40172, "counts": {"ADD bridges": 1364, "duplicate price constraints": 13178, "incompatible rank equations": 3, "incompatible span bounds": 43519, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 47250, "reinstates original scalar equality": 3703}, "index": 47249} +{"add": 40179, "counts": {"ADD bridges": 1366, "duplicate price constraints": 13257, "incompatible rank equations": 3, "incompatible span bounds": 43745, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 47500, "reinstates original scalar equality": 3727}, "index": 47499} +{"add": 40243, "counts": {"ADD bridges": 1374, "duplicate price constraints": 13281, "incompatible rank equations": 3, "incompatible span bounds": 43918, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 47750, "reinstates original scalar equality": 3804}, "index": 47749} +{"add": 40280, "counts": {"ADD bridges": 1381, "duplicate price constraints": 13320, "incompatible rank equations": 3, "incompatible span bounds": 44063, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 48000, "reinstates original scalar equality": 3909}, "index": 47999} +{"add": 40298, "counts": {"ADD bridges": 1387, "duplicate price constraints": 13382, "incompatible rank equations": 3, "incompatible span bounds": 44230, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 48250, "reinstates original scalar equality": 3992}, "index": 48249} +{"add": 40316, "counts": {"ADD bridges": 1394, "duplicate price constraints": 13390, "incompatible rank equations": 3, "incompatible span bounds": 44420, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 48500, "reinstates original scalar equality": 4052}, "index": 48499} +{"add": 40332, "counts": {"ADD bridges": 1398, "duplicate price constraints": 13447, "incompatible rank equations": 3, "incompatible span bounds": 44652, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 48750, "reinstates original scalar equality": 4070}, "index": 48749} +{"add": 40344, "counts": {"ADD bridges": 1401, "duplicate price constraints": 13484, "incompatible rank equations": 3, "incompatible span bounds": 44870, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 49000, "reinstates original scalar equality": 4102}, "index": 48999} +{"add": 40365, "counts": {"ADD bridges": 1407, "duplicate price constraints": 13510, "incompatible rank equations": 3, "incompatible span bounds": 45082, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 49250, "reinstates original scalar equality": 4140}, "index": 49249} +{"add": 40397, "counts": {"ADD bridges": 1414, "duplicate price constraints": 13566, "incompatible rank equations": 3, "incompatible span bounds": 45295, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 49500, "reinstates original scalar equality": 4177}, "index": 49499} +{"add": 40406, "counts": {"ADD bridges": 1417, "duplicate price constraints": 13669, "incompatible rank equations": 3, "incompatible span bounds": 45534, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 49750, "reinstates original scalar equality": 4188}, "index": 49749} +{"add": 40471, "counts": {"ADD bridges": 1428, "duplicate price constraints": 13689, "incompatible rank equations": 3, "incompatible span bounds": 45721, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 50000, "reinstates original scalar equality": 4251}, "index": 49999} +{"add": 40490, "counts": {"ADD bridges": 1432, "duplicate price constraints": 13781, "incompatible rank equations": 3, "incompatible span bounds": 45930, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 50250, "reinstates original scalar equality": 4292}, "index": 50249} +{"add": 40524, "counts": {"ADD bridges": 1440, "duplicate price constraints": 13877, "incompatible rank equations": 3, "incompatible span bounds": 46141, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 50500, "reinstates original scalar equality": 4331}, "index": 50499} +{"add": 40572, "counts": {"ADD bridges": 1449, "duplicate price constraints": 13921, "incompatible rank equations": 3, "incompatible span bounds": 46342, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 50750, "reinstates original scalar equality": 4380}, "index": 50749} +{"add": 40605, "counts": {"ADD bridges": 1458, "duplicate price constraints": 13963, "incompatible rank equations": 3, "incompatible span bounds": 46547, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 51000, "reinstates original scalar equality": 4425}, "index": 50999} +{"add": 40615, "counts": {"ADD bridges": 1459, "duplicate price constraints": 14093, "incompatible rank equations": 3, "incompatible span bounds": 46794, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 51250, "reinstates original scalar equality": 4428}, "index": 51249} +{"add": 40626, "counts": {"ADD bridges": 1463, "duplicate price constraints": 14168, "incompatible rank equations": 3, "incompatible span bounds": 47044, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 51500, "reinstates original scalar equality": 4428}, "index": 51499} +{"add": 40681, "counts": {"ADD bridges": 1472, "duplicate price constraints": 14186, "incompatible rank equations": 3, "incompatible span bounds": 47249, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 51750, "reinstates original scalar equality": 4473}, "index": 51749} +{"add": 40728, "counts": {"ADD bridges": 1481, "duplicate price constraints": 14210, "incompatible rank equations": 3, "incompatible span bounds": 47464, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 52000, "reinstates original scalar equality": 4508}, "index": 51999} +{"add": 40745, "counts": {"ADD bridges": 1486, "duplicate price constraints": 14219, "incompatible rank equations": 3, "incompatible span bounds": 47666, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 52250, "reinstates original scalar equality": 4556}, "index": 52249} +{"add": 40792, "counts": {"ADD bridges": 1494, "duplicate price constraints": 14262, "incompatible rank equations": 3, "incompatible span bounds": 47889, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 52500, "reinstates original scalar equality": 4583}, "index": 52499} +{"add": 40808, "counts": {"ADD bridges": 1501, "duplicate price constraints": 14300, "incompatible rank equations": 3, "incompatible span bounds": 48091, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 52750, "reinstates original scalar equality": 4631}, "index": 52749} +{"add": 40863, "counts": {"ADD bridges": 1508, "duplicate price constraints": 14324, "incompatible rank equations": 3, "incompatible span bounds": 48325, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 53000, "reinstates original scalar equality": 4647}, "index": 52999} +{"add": 40882, "counts": {"ADD bridges": 1512, "duplicate price constraints": 14391, "incompatible rank equations": 3, "incompatible span bounds": 48561, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 53250, "reinstates original scalar equality": 4661}, "index": 53249} +{"add": 40921, "counts": {"ADD bridges": 1520, "duplicate price constraints": 14410, "incompatible rank equations": 3, "incompatible span bounds": 48780, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 53500, "reinstates original scalar equality": 4692}, "index": 53499} +{"add": 40930, "counts": {"ADD bridges": 1522, "duplicate price constraints": 14495, "incompatible rank equations": 3, "incompatible span bounds": 49029, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 53750, "reinstates original scalar equality": 4693}, "index": 53749} +{"add": 40950, "counts": {"ADD bridges": 1528, "duplicate price constraints": 14559, "incompatible rank equations": 3, "incompatible span bounds": 49262, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 54000, "reinstates original scalar equality": 4710}, "index": 53999} +{"add": 40979, "counts": {"ADD bridges": 1535, "duplicate price constraints": 14645, "incompatible rank equations": 3, "incompatible span bounds": 49503, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 54250, "reinstates original scalar equality": 4719}, "index": 54249} +{"add": 41011, "counts": {"ADD bridges": 1544, "duplicate price constraints": 14678, "incompatible rank equations": 3, "incompatible span bounds": 49736, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 54500, "reinstates original scalar equality": 4736}, "index": 54499} +{"add": 41046, "counts": {"ADD bridges": 1551, "duplicate price constraints": 14757, "incompatible rank equations": 3, "incompatible span bounds": 49967, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 54750, "reinstates original scalar equality": 4755}, "index": 54749} +{"add": 41052, "counts": {"ADD bridges": 1553, "duplicate price constraints": 14832, "incompatible rank equations": 3, "incompatible span bounds": 50210, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 55000, "reinstates original scalar equality": 4762}, "index": 54999} +{"add": 41089, "counts": {"ADD bridges": 1559, "duplicate price constraints": 14929, "incompatible rank equations": 3, "incompatible span bounds": 50430, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 55250, "reinstates original scalar equality": 4792}, "index": 55249} +{"add": 41095, "counts": {"ADD bridges": 1561, "duplicate price constraints": 15022, "incompatible rank equations": 3, "incompatible span bounds": 50660, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 55500, "reinstates original scalar equality": 4812}, "index": 55499} +{"add": 41109, "counts": {"ADD bridges": 1565, "duplicate price constraints": 15087, "incompatible rank equations": 3, "incompatible span bounds": 50876, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 55750, "reinstates original scalar equality": 4846}, "index": 55749} +{"add": 41153, "counts": {"ADD bridges": 1573, "duplicate price constraints": 15120, "incompatible rank equations": 3, "incompatible span bounds": 51058, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 56000, "reinstates original scalar equality": 4914}, "index": 55999} +{"add": 41189, "counts": {"ADD bridges": 1580, "duplicate price constraints": 15170, "incompatible rank equations": 3, "incompatible span bounds": 51300, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 56250, "reinstates original scalar equality": 4922}, "index": 56249} +{"add": 41192, "counts": {"ADD bridges": 1581, "duplicate price constraints": 15277, "incompatible rank equations": 3, "incompatible span bounds": 51518, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 56500, "reinstates original scalar equality": 4954}, "index": 56499} +{"add": 41220, "counts": {"ADD bridges": 1586, "duplicate price constraints": 15362, "incompatible rank equations": 3, "incompatible span bounds": 51747, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 56750, "reinstates original scalar equality": 4975}, "index": 56749} +{"add": 41255, "counts": {"ADD bridges": 1591, "duplicate price constraints": 15420, "incompatible rank equations": 3, "incompatible span bounds": 51969, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 57000, "reinstates original scalar equality": 5003}, "index": 56999} +{"add": 41255, "counts": {"ADD bridges": 1591, "duplicate price constraints": 15487, "incompatible rank equations": 3, "incompatible span bounds": 52219, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 57250, "reinstates original scalar equality": 5003}, "index": 57249} +{"add": 41262, "counts": {"ADD bridges": 1592, "duplicate price constraints": 15613, "incompatible rank equations": 3, "incompatible span bounds": 52464, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 57500, "reinstates original scalar equality": 5008}, "index": 57499} +{"add": 41308, "counts": {"ADD bridges": 1603, "duplicate price constraints": 15633, "incompatible rank equations": 3, "incompatible span bounds": 52648, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 57750, "reinstates original scalar equality": 5074}, "index": 57749} +{"add": 41349, "counts": {"ADD bridges": 1610, "duplicate price constraints": 15679, "incompatible rank equations": 3, "incompatible span bounds": 52859, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 58000, "reinstates original scalar equality": 5113}, "index": 57999} +{"add": 41349, "counts": {"ADD bridges": 1610, "duplicate price constraints": 15771, "incompatible rank equations": 3, "incompatible span bounds": 53109, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 58250, "reinstates original scalar equality": 5113}, "index": 58249} +{"add": 41357, "counts": {"ADD bridges": 1612, "duplicate price constraints": 15880, "incompatible rank equations": 3, "incompatible span bounds": 53350, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 58500, "reinstates original scalar equality": 5122}, "index": 58499} +{"add": 41378, "counts": {"ADD bridges": 1618, "duplicate price constraints": 15926, "incompatible rank equations": 3, "incompatible span bounds": 53571, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 58750, "reinstates original scalar equality": 5151}, "index": 58749} +{"add": 41416, "counts": {"ADD bridges": 1628, "duplicate price constraints": 15961, "incompatible rank equations": 3, "incompatible span bounds": 53766, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 59000, "reinstates original scalar equality": 5206}, "index": 58999} +{"add": 41485, "counts": {"ADD bridges": 1637, "duplicate price constraints": 16036, "incompatible rank equations": 3, "incompatible span bounds": 53983, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 59250, "reinstates original scalar equality": 5239}, "index": 59249} +{"add": 41500, "counts": {"ADD bridges": 1643, "duplicate price constraints": 16069, "incompatible rank equations": 3, "incompatible span bounds": 54194, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 59500, "reinstates original scalar equality": 5278}, "index": 59499} +{"add": 41601, "counts": {"ADD bridges": 1648, "duplicate price constraints": 16151, "incompatible rank equations": 3, "incompatible span bounds": 54431, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 59750, "reinstates original scalar equality": 5291}, "index": 59749} +{"add": 41639, "counts": {"ADD bridges": 1655, "duplicate price constraints": 16173, "incompatible rank equations": 3, "incompatible span bounds": 54663, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 60000, "reinstates original scalar equality": 5309}, "index": 59999} +{"add": 41653, "counts": {"ADD bridges": 1660, "duplicate price constraints": 16241, "incompatible rank equations": 3, "incompatible span bounds": 54892, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 60250, "reinstates original scalar equality": 5330}, "index": 60249} +{"add": 41666, "counts": {"ADD bridges": 1665, "duplicate price constraints": 16321, "incompatible rank equations": 3, "incompatible span bounds": 55139, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 60500, "reinstates original scalar equality": 5333}, "index": 60499} +{"add": 41674, "counts": {"ADD bridges": 1667, "duplicate price constraints": 16424, "incompatible rank equations": 3, "incompatible span bounds": 55389, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 60750, "reinstates original scalar equality": 5333}, "index": 60749} +{"add": 41679, "counts": {"ADD bridges": 1668, "duplicate price constraints": 16547, "incompatible rank equations": 3, "incompatible span bounds": 55634, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 61000, "reinstates original scalar equality": 5338}, "index": 60999} +{"add": 41691, "counts": {"ADD bridges": 1672, "duplicate price constraints": 16608, "incompatible rank equations": 3, "incompatible span bounds": 55883, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 61250, "reinstates original scalar equality": 5339}, "index": 61249} +{"add": 41719, "counts": {"ADD bridges": 1678, "duplicate price constraints": 16680, "incompatible rank equations": 3, "incompatible span bounds": 56119, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 61500, "reinstates original scalar equality": 5353}, "index": 61499} +{"add": 41733, "counts": {"ADD bridges": 1683, "duplicate price constraints": 16819, "incompatible rank equations": 3, "incompatible span bounds": 56361, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 61750, "reinstates original scalar equality": 5361}, "index": 61749} +{"add": 41785, "counts": {"ADD bridges": 1701, "duplicate price constraints": 16909, "incompatible rank equations": 3, "incompatible span bounds": 56604, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 62000, "reinstates original scalar equality": 5368}, "index": 61999} +{"add": 41785, "counts": {"ADD bridges": 1701, "duplicate price constraints": 17005, "incompatible rank equations": 3, "incompatible span bounds": 56854, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 62250, "reinstates original scalar equality": 5368}, "index": 62249} +{"add": 41790, "counts": {"ADD bridges": 1703, "duplicate price constraints": 17032, "incompatible rank equations": 3, "incompatible span bounds": 57104, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 62500, "reinstates original scalar equality": 5368}, "index": 62499} +{"add": 41801, "counts": {"ADD bridges": 1706, "duplicate price constraints": 17066, "incompatible rank equations": 3, "incompatible span bounds": 57350, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 62750, "reinstates original scalar equality": 5372}, "index": 62749} +{"add": 41830, "counts": {"ADD bridges": 1713, "duplicate price constraints": 17085, "incompatible rank equations": 3, "incompatible span bounds": 57595, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 63000, "reinstates original scalar equality": 5377}, "index": 62999} +{"add": 41854, "counts": {"ADD bridges": 1721, "duplicate price constraints": 17091, "incompatible rank equations": 3, "incompatible span bounds": 57842, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 63250, "reinstates original scalar equality": 5380}, "index": 63249} +{"add": 41890, "counts": {"ADD bridges": 1731, "duplicate price constraints": 17118, "incompatible rank equations": 3, "incompatible span bounds": 58074, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 63500, "reinstates original scalar equality": 5398}, "index": 63499} +{"add": 41922, "counts": {"ADD bridges": 1740, "duplicate price constraints": 17144, "incompatible rank equations": 3, "incompatible span bounds": 58297, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 63750, "reinstates original scalar equality": 5425}, "index": 63749} +{"add": 41937, "counts": {"ADD bridges": 1745, "duplicate price constraints": 17187, "incompatible rank equations": 3, "incompatible span bounds": 58501, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 64000, "reinstates original scalar equality": 5471}, "index": 63999} +{"add": 41960, "counts": {"ADD bridges": 1749, "duplicate price constraints": 17292, "incompatible rank equations": 3, "incompatible span bounds": 58751, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 64250, "reinstates original scalar equality": 5471}, "index": 64249} +{"add": 41963, "counts": {"ADD bridges": 1750, "duplicate price constraints": 17411, "incompatible rank equations": 3, "incompatible span bounds": 58991, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 64500, "reinstates original scalar equality": 5481}, "index": 64499} +{"add": 41989, "counts": {"ADD bridges": 1757, "duplicate price constraints": 17472, "incompatible rank equations": 3, "incompatible span bounds": 59228, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 64750, "reinstates original scalar equality": 5494}, "index": 64749} +{"add": 42016, "counts": {"ADD bridges": 1765, "duplicate price constraints": 17520, "incompatible rank equations": 3, "incompatible span bounds": 59461, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 65000, "reinstates original scalar equality": 5511}, "index": 64999} +{"add": 42049, "counts": {"ADD bridges": 1773, "duplicate price constraints": 17553, "incompatible rank equations": 3, "incompatible span bounds": 59705, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 65250, "reinstates original scalar equality": 5517}, "index": 65249} +{"add": 42100, "counts": {"ADD bridges": 1784, "duplicate price constraints": 17624, "incompatible rank equations": 3, "incompatible span bounds": 59921, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 65500, "reinstates original scalar equality": 5551}, "index": 65499} +{"add": 42185, "counts": {"ADD bridges": 1799, "duplicate price constraints": 17661, "incompatible rank equations": 3, "incompatible span bounds": 60131, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 65750, "reinstates original scalar equality": 5591}, "index": 65749} +{"add": 42214, "counts": {"ADD bridges": 1802, "duplicate price constraints": 17757, "incompatible rank equations": 3, "incompatible span bounds": 60379, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 66000, "reinstates original scalar equality": 5593}, "index": 65999} +{"add": 42214, "counts": {"ADD bridges": 1802, "duplicate price constraints": 17859, "incompatible rank equations": 3, "incompatible span bounds": 60629, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 66250, "reinstates original scalar equality": 5593}, "index": 66249} +{"add": 42214, "counts": {"ADD bridges": 1802, "duplicate price constraints": 17944, "incompatible rank equations": 3, "incompatible span bounds": 60879, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 66500, "reinstates original scalar equality": 5593}, "index": 66499} +{"add": 42263, "counts": {"ADD bridges": 1813, "duplicate price constraints": 18003, "incompatible rank equations": 3, "incompatible span bounds": 61098, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 66750, "reinstates original scalar equality": 5624}, "index": 66749} +{"add": 42303, "counts": {"ADD bridges": 1823, "duplicate price constraints": 18059, "incompatible rank equations": 3, "incompatible span bounds": 61327, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 67000, "reinstates original scalar equality": 5645}, "index": 66999} +{"add": 42303, "counts": {"ADD bridges": 1823, "duplicate price constraints": 18155, "incompatible rank equations": 3, "incompatible span bounds": 61577, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 67250, "reinstates original scalar equality": 5645}, "index": 67249} +{"add": 42303, "counts": {"ADD bridges": 1823, "duplicate price constraints": 18265, "incompatible rank equations": 3, "incompatible span bounds": 61827, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 67500, "reinstates original scalar equality": 5645}, "index": 67499} +{"add": 42322, "counts": {"ADD bridges": 1826, "duplicate price constraints": 18354, "incompatible rank equations": 3, "incompatible span bounds": 62072, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 67750, "reinstates original scalar equality": 5650}, "index": 67749} +{"add": 42322, "counts": {"ADD bridges": 1826, "duplicate price constraints": 18458, "incompatible rank equations": 3, "incompatible span bounds": 62322, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 68000, "reinstates original scalar equality": 5650}, "index": 67999} +{"add": 42322, "counts": {"ADD bridges": 1826, "duplicate price constraints": 18559, "incompatible rank equations": 3, "incompatible span bounds": 62572, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 68250, "reinstates original scalar equality": 5650}, "index": 68249} +{"add": 42328, "counts": {"ADD bridges": 1829, "duplicate price constraints": 18665, "incompatible rank equations": 3, "incompatible span bounds": 62808, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 68500, "reinstates original scalar equality": 5664}, "index": 68499} +{"add": 42374, "counts": {"ADD bridges": 1841, "duplicate price constraints": 18703, "incompatible rank equations": 3, "incompatible span bounds": 63013, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 68750, "reinstates original scalar equality": 5709}, "index": 68749} +{"add": 42400, "counts": {"ADD bridges": 1849, "duplicate price constraints": 18733, "incompatible rank equations": 3, "incompatible span bounds": 63215, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 69000, "reinstates original scalar equality": 5757}, "index": 68999} +{"add": 42456, "counts": {"ADD bridges": 1858, "duplicate price constraints": 18760, "incompatible rank equations": 3, "incompatible span bounds": 63420, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 69250, "reinstates original scalar equality": 5802}, "index": 69249} +{"add": 42487, "counts": {"ADD bridges": 1868, "duplicate price constraints": 18768, "incompatible rank equations": 3, "incompatible span bounds": 63616, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 69500, "reinstates original scalar equality": 5856}, "index": 69499} +{"add": 42519, "counts": {"ADD bridges": 1875, "duplicate price constraints": 18824, "incompatible rank equations": 3, "incompatible span bounds": 63830, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 69750, "reinstates original scalar equality": 5892}, "index": 69749} +{"add": 42547, "counts": {"ADD bridges": 1881, "duplicate price constraints": 18864, "incompatible rank equations": 3, "incompatible span bounds": 64059, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 70000, "reinstates original scalar equality": 5913}, "index": 69999} +{"add": 42646, "counts": {"ADD bridges": 1891, "duplicate price constraints": 18933, "incompatible rank equations": 3, "incompatible span bounds": 64275, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 70250, "reinstates original scalar equality": 5947}, "index": 70249} +{"add": 42748, "counts": {"ADD bridges": 1902, "duplicate price constraints": 19004, "incompatible rank equations": 3, "incompatible span bounds": 64487, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 70500, "reinstates original scalar equality": 5985}, "index": 70499} +{"add": 42923, "counts": {"ADD bridges": 1921, "duplicate price constraints": 19048, "incompatible rank equations": 3, "incompatible span bounds": 64715, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 70750, "reinstates original scalar equality": 6007}, "index": 70749} +{"add": 43100, "counts": {"ADD bridges": 1938, "duplicate price constraints": 19078, "incompatible rank equations": 3, "incompatible span bounds": 64911, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 71000, "reinstates original scalar equality": 6061}, "index": 70999} +{"add": 43283, "counts": {"ADD bridges": 1957, "duplicate price constraints": 19097, "incompatible rank equations": 3, "incompatible span bounds": 65085, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 71250, "reinstates original scalar equality": 6137}, "index": 71249} +{"add": 43390, "counts": {"ADD bridges": 1979, "duplicate price constraints": 19106, "incompatible rank equations": 3, "incompatible span bounds": 65267, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 71500, "reinstates original scalar equality": 6205}, "index": 71499} +{"add": 43591, "counts": {"ADD bridges": 2000, "duplicate price constraints": 19134, "incompatible rank equations": 3, "incompatible span bounds": 65496, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 71750, "reinstates original scalar equality": 6226}, "index": 71749} +{"add": 43656, "counts": {"ADD bridges": 2014, "duplicate price constraints": 19193, "incompatible rank equations": 3, "incompatible span bounds": 65665, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 72000, "reinstates original scalar equality": 6307}, "index": 71999} +{"add": 43812, "counts": {"ADD bridges": 2033, "duplicate price constraints": 19211, "incompatible rank equations": 3, "incompatible span bounds": 65862, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 72250, "reinstates original scalar equality": 6360}, "index": 72249} +{"add": 44133, "counts": {"ADD bridges": 2060, "duplicate price constraints": 19217, "incompatible rank equations": 3, "incompatible span bounds": 66095, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 72500, "reinstates original scalar equality": 6377}, "index": 72499} +{"add": 44256, "counts": {"ADD bridges": 2087, "duplicate price constraints": 19243, "incompatible rank equations": 3, "incompatible span bounds": 66307, "nonpositive mixed upper": 4, "nonpositive rank upper": 21, "placements": 72750, "reinstates original scalar equality": 6415}, "index": 72749} +{"add": 44301, "counts": {"ADD bridges": 2100, "duplicate price constraints": 19294, "incompatible rank equations": 3, "incompatible span bounds": 66518, "nonpositive mixed upper": 4, "nonpositive rank upper": 24, "placements": 73000, "reinstates original scalar equality": 6451}, "index": 72999} +{"add": 44458, "counts": {"ADD bridges": 2134, "duplicate price constraints": 19300, "incompatible rank equations": 3, "incompatible span bounds": 66748, "nonpositive mixed upper": 4, "nonpositive rank upper": 24, "placements": 73250, "reinstates original scalar equality": 6471}, "index": 73249} diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/price/OVERLAP.json b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/price/OVERLAP.json new file mode 100644 index 0000000000..9bc8133be9 --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/price/OVERLAP.json @@ -0,0 +1,74 @@ +{ + "baseline_P": { + "1": 68265, + "2": 14518, + "3": 14059, + "4": 3808, + "5": 5797, + "6": 272, + "7": 187, + "8": 758, + "9": 32, + "16": 416, + "24": 416, + "32": 416, + "40": 416, + "48": 416, + "56": 416, + "64": 208 + }, + "baseline_T": { + "1": 272, + "2": 340, + "3": 799, + "4": 3706, + "5": 1258, + "6": 731, + "7": 306, + "8": 595, + "9": 10973, + "17": 416, + "25": 416, + "33": 416, + "41": 416, + "49": 416, + "57": 416, + "65": 416, + "73": 208, + "137": 208 + }, + "blockers": { + "ADD+ADD": 8 + }, + "caller": "255d89f38cd45e38e5770f559bc43dc217e989032359768cdc7e8cdfd64b47bc", + "cap": null, + "counts": { + "ADD bridges": 7, + "incompatible span bounds": 5, + "nonpositive rank upper": 3, + "placements": 8 + }, + "dependencies": { + "kappa-coupled-boundaries-20261110T0908Z/replay/research/shared-wire-stop-fusion/audit_price.py": "585295aa55846e594c705941002c36ea0b9b6cbfe3a49e6594e1d2e70751b704", + "kappa-interior-20261110T0823Z/evidence/closure.py": "e6b3cdfcb42f4cd22d46e1783a537d147b092634f4cf089e91344e29f0214cf1", + "kappa-scalar-two-20261110T2315Z/evidence/overlap/overlap.py": "3b6a8ee19b7f44e7b968f778b35e447525da93da153ebdedd5e5bb4c247a3949", + "kappa-scalar-two-20261110T2315Z/evidence/planner/two_blockers.py": "152b0f6c80e0f7a47b078fb35bd91b35fbfd63fa2d2da17cf66ded05f51846f0", + "kappa-two-blockers-20261110T1036Z/evidence/two_blockers.py": "a5b5855f3016a77d991fb53536cae388221a7cf9529fe58c376141bc7656e0c3", + "kappa-typea-birth2-20261110T2258Z/evidence/scalar/port.py": "d05dcb28604a9bc6305ec90428f5f7fe875333031ecf1705229b0c4605dc3032" + }, + "hits": [], + "mode": "overlap", + "pending": null, + "planner_stats": { + "overlapping plans": 7, + "placements": 8 + }, + "result": "e4ae0c1cfa809cd780a6e22ce32528e7ca4b4e57f90abf91ad0bde97d30446ab", + "source_bracket": [ + "36424084968693169933964196366183/10000000000000000000000000000000000", + "4553010621086646241745524545773/1250000000000000000000000000000000" + ], + "start": 0, + "unresolved": 0, + "word": "9557c4682056ab7cc7cda89aa73865bef0e3948cc10b3c3061b0a944af05b96a" +} diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/price/price_two.py b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/price/price_two.py new file mode 100644 index 0000000000..6151bd7cde --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-scalar-two-20261110T2315Z/evidence/price/price_two.py @@ -0,0 +1,204 @@ +"""Price #7131 scalar edits across two stationary blockers.""" +from collections import Counter +from fractions import Fraction +from hashlib import sha256 +import argparse +import json +from pathlib import Path + +from importlib.util import module_from_spec, spec_from_file_location + + +ROOT = Path(__file__).resolve().parents[3] +PRIOR = ROOT / "kappa-typea-birth2-20261110T2258Z/evidence/scalar/port.py" +LEGACY = ROOT / "kappa-two-blockers-20261110T1036Z/evidence/two_blockers.py" +PLANNER = Path(__file__).resolve().parents[1] / "planner/two_blockers.py" +FREE_TERM = PLANNER.with_name("free_term.py") +ALL_TERMS = PLANNER.with_name("all_terms.py") +OVERLAP = PLANNER.parents[1] / "overlap/overlap.py" + + +def module(name, path): + spec = spec_from_file_location(name, path) + value = module_from_spec(spec) + spec.loader.exec_module(value) + return value + + +def key_for(belong, visits): + return tuple(sorted({tuple(sorted((belong(a), belong(b)))) + for a, b in visits if belong(a) != belong(b)})) + + +def equality_groups(keys): + groups = [] + for a, b in keys: + group = {a, b} + keep = [] + for existing in groups: + if existing & group: + group.update(existing) + else: + keep.append(existing) + groups = [*keep, group] + return groups + + +def pricing_rows(word, raw, scalar, bridges, legacy, mode, statistics): + if mode == "joint-cut": + planner = module("joint_cut_planner", PLANNER) + for add, blockers, cut, ops, pairs in planner.choices(word, raw, scalar, bridges, statistics): + yield dict(add=add, blockers=blockers, cut=cut, ops=ops, visits=pairs, + direction="later" if blockers[0] > add else "earlier") + return + if mode in ("free-term", "all-terms", "overlap"): + path, entry_point = { + "free-term": (FREE_TERM, "choices_free"), + "all-terms": (ALL_TERMS, "choices_all"), + "overlap": (OVERLAP, "choices_overlap"), + }[mode] + planner = module("separate_cut_planner", path) + choices = getattr(planner, entry_point) + for add, blockers, cut, ops, pairs, cuts in choices(word, raw, scalar, bridges, statistics): + yield dict(add=add, blockers=blockers, cut=cut, ops=ops, visits=pairs, + term_cuts=cuts, direction="later" if blockers[0] > add else "earlier") + return + if mode == "stationary": + yield from legacy.placements(word, raw, scalar, bridges) + elif mode == "reciprocal": + yield from legacy.placements(word, raw, scalar, bridges, allow_recip=True) + elif mode == "slide-correction": + yield from legacy.slide_placements(word, raw, scalar, bridges) + elif mode in ("slide-move", "slide-move-edge"): + yield from legacy.slide_move_placements(word, raw, scalar, bridges, + edge_only=mode == "slide-move-edge") + + +def screen(word, graph, engine, legacy, bracket, journal, mode, start, cap): + raw, _, comp, raw_paid, raw_target, fixed, scalar, original, entry, end, child = legacy.inventory(word, graph) + initial_state = {i: legacy.chart(s) for i, s in enumerate(original) if s is not None} + paid0 = Counter((comp[a], comp[b]) for _, a, b in raw_paid) + old_low, old_high, _ = legacy.bounds(original, paid0, {comp[j] for j in fixed}) + left, right = map(Fraction, bracket) + weights = {r: (engine.raw_margin({r: 1}, right)[0], engine.raw_margin({r: 1}, left)[1]) + for r in range(1, 10)} + tally, blockers, planner_stats = Counter(), Counter(), Counter() + previous, pending, hits = None, None, [] + join = legacy.propagate.__globals__["join"] + + for index, plan in enumerate(pricing_rows(word, raw, scalar, child, legacy, mode, planner_stats)): + if index < start: + continue + if cap is not None and tally["placements"] == cap: + pending = index + break + tally["placements"] += 1 + blockers["+".join(word["program"][j][0] for j in plan["blockers"])] += 1 + add = plan["add"] + if previous != add: + old, new = comp[scalar[add][0]], len(original) + branch = child[add] + split = {j for j, c in enumerate(comp) + if c == old and entry[branch] <= entry[j] < end[branch]} + + def belong(j): + return new if j in split else comp[j] + + assert {belong(j) for j in scalar[add]} == {old, new} + space = [*original, original[old]] + paid = Counter((belong(a), belong(b)) for _, a, b in raw_paid) + target = Counter((belong(a), belong(b)) for a, b in raw_target) + low, high, adjacency = legacy.bounds(space, paid, {belong(j) for j in fixed}) + changed = {old, new} | {j for j in range(len(original)) + if (low[j], high[j]) != (old_low[j], old_high[j])} + state = initial_state | {new: initial_state[old]} + cache = {} + previous = add + tally["ADD bridges"] += 1 + key = key_for(belong, plan["visits"]) + groups = equality_groups(key) + if mode == "all-terms": + key = tuple(sorted((min(g), j) for g in groups for j in g if j != min(g))) + if any({old, new} <= group for group in groups): + status = "reinstates original scalar equality" + elif key in cache: + status = cache[key] + tally["duplicate price constraints"] += 1 + else: + joined = [] + for group in groups: + a = frozenset({0}) + for j in sorted(group): + a = join(a, low[j]) + joined.append((a, set.intersection(*(set(high[j]) for j in group)))) + if any(not lo <= hi for lo, hi in joined): + status, blocks = "incompatible span bounds", [] + else: + status, blocks = legacy.price_box( + space, paid, target, state, low, high, adjacency, changed, key, weights + ) + cache[key] = status + if blocks: + receipt = dict(index=index, status=status, proposal=plan, equalities=key, + old_component=old, new_component=new, + split_visits=[raw[j] for j in sorted(split)], blocks=blocks) + hits.append(receipt) + print(json.dumps(receipt, sort_keys=True), file=journal, flush=True) + tally[status] += 1 + if tally["placements"] % 250 == 0: + print(json.dumps(dict(index=index, add=add, counts=tally), sort_keys=True), + file=journal, flush=True) + return dict(mode=mode, counts=tally, blockers=blockers, planner_stats=planner_stats, + start=start, cap=cap, pending=pending, unresolved=len(hits), hits=hits) + + +def main(word_path, result_path, caller_path, journal_path, mode, start, cap): + assert __debug__ + prior = module("pinned_source", PRIOR) + legacy = module("retained_price", LEGACY) + graph = module("literal_graph", prior.GRAPH) + engine = module("directed_price", prior.PRICE) + word = prior.read(word_path, prior.WORD, True) + source = prior.read(result_path, prior.RESULT) + caller = prior.read(caller_path, prior.CALLER) + paid, target, _ = prior.count_invoice(word, caller, graph) + assert paid == {int(k): v for k, v in source["price"]["after"]["P"].items()} + assert target == {int(k): v for k, v in source["price"]["after"]["T"].items()} + bracket = source["price"]["gate"]["raw_bracket"] + signed = target.copy() + signed.subtract(paid) + assert engine.raw_margin(signed, Fraction(bracket[0]))[0] > 0 + assert engine.raw_margin(signed, Fraction(bracket[1]))[1] < 0 + with journal_path.open("x") as journal: + result = screen(word, graph, engine, legacy, bracket, journal, mode, start, cap) + dependencies = [PRIOR, LEGACY, prior.GRAPH, prior.PRICE] + if mode in ("joint-cut", "free-term", "all-terms"): + dependencies.append(PLANNER) + if mode in ("free-term", "all-terms"): + dependencies.append(FREE_TERM) + if mode == "all-terms": + dependencies.append(ALL_TERMS) + if mode == "overlap": + dependencies.extend((PLANNER, OVERLAP)) + pins = {} + for path in dependencies: + key = path.relative_to(ROOT).as_posix() + if key in pins: + raise ValueError(f"Duplicate dependency key {key}") + pins[key] = sha256(path.read_bytes()).hexdigest() + print(json.dumps(dict(word=prior.WORD, result=prior.RESULT, caller=prior.CALLER, + source_bracket=bracket, baseline_P=paid, baseline_T=target, + dependencies=pins, **result), indent=2, sort_keys=True)) + + +if __name__ == "__main__": + parser = argparse.ArgumentParser(description=__doc__) + for path in ("word_path", "result_path", "caller_path", "journal_path"): + parser.add_argument(path, type=Path) + parser.add_argument("--mode", choices=("joint-cut", "free-term", "all-terms", "overlap", + "stationary", "reciprocal", + "slide-correction", "slide-move", "slide-move-edge"), + default="joint-cut") + parser.add_argument("--start", type=int, default=0) + parser.add_argument("--cap", type=int) + main(**vars(parser.parse_args())) diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-two-blockers-20261110T1036Z/evidence/two_blockers.py b/research/p104-two-blocker-exclusion/vendor/kappa-two-blockers-20261110T1036Z/evidence/two_blockers.py new file mode 100644 index 0000000000..9524c31439 --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-two-blockers-20261110T1036Z/evidence/two_blockers.py @@ -0,0 +1,383 @@ +"""Price stationary two-blocker scalar rewrites with collateral public charts.""" + +from bisect import bisect_left, bisect_right +from collections import Counter, defaultdict +from fractions import Fraction as Q +from hashlib import sha256 +from pathlib import Path +import argparse +import gzip +import json +import sys + +PREVIOUS = Path(__file__).resolve().parents[2] / 'kappa-chronology-pivot-20261110T1021Z' / 'evidence' +sys.path.insert(0, str(PREVIOUS)) +from corrected_contacts import BRACKET, WORD_SHA, bounds, changed_blocks, chart, corrected, inventory, load +from corrected_contacts import propagate, quotient_domain, scalar_history, smooth, solve_equalities, subspace_count, volume + + +def factor(a, blocker, later, public): + result = corrected(a, blocker, later, public, owned_blocker=True) + if result is None: + result = corrected(a, blocker, later, public, gauss=True) + if result is None: + return None + coeff, correction = result + if correction and abs(Q(correction[3])) + 1 >= 2**16: + return None + return coeff, correction + + +def reciprocal(a, blocker): + _, d, s, x, _ = a + if blocker[0] != 'ADD' or blocker[1:3] != [s, d]: + return None + y = Q(blocker[3]) + if not smooth(abs(y.numerator)): + return None + q, r = -1/y, -Q(x)*y*y + if any(abs(v) + 1 >= 2**16 for v in (q, r)): + return None + return -q, ('RECIP', d, s, str(q), str(r)) + + +def plans(event, blockers, seq, later, public, allow_recip): + choices = [(Q(event[3]), [])] + for index in blockers: + b = seq[index] + expanded = [] + for coefficient, corrections in choices: + a = [*event[:3], str(coefficient), event[-1]] + options = [factor(a, b, later, public)] + if allow_recip: + options.append(reciprocal(a, b)) + for option in options: + if option is None: + continue + coeff, correction = option + packet = [] + if correction is not None: + cut = index + int(later or b[0] == 'COPY') + packet.append(dict(blocker=index, cut=cut, spelling=correction)) + expanded.append((coeff, [*corrections, *packet])) + choices = expanded + return [(c, corrections) for c, corrections in choices if abs(c) + 1 < 2**16] + + +def placements(word, raw, scalar, bridges, allow_recip=False, windows=False): + seq = word['program'] + public = word['public'] + reads, writes = scalar_history(word) + history = defaultdict(list) + for i, (role, event, _) in enumerate(raw): + history[role].append((event + 1, i)) + for entries in history.values(): + entries.sort() + far = len(seq) + len(raw) + + def visit(role, cut): + entries = history[role] + return entries[bisect_right(entries, (cut, far)) - 1][1] + + for i, old in scalar.items(): + event = seq[i] + if i not in bridges or event[0] != 'ADD' or max(event[1:3]) >= public: + continue + d, s = event[1:3] + left, right = set(), set() + for indices in (reads[d], writes[s]): + j = bisect_left(indices, i) + assert j == len(indices) or indices[j] != i + left.update(indices[max(0, j - 3):j]) + right.update(indices[j:j + 3]) + for later, nearest in ((False, sorted(left, reverse=True)), (True, sorted(right))): + if len(nearest) < 2: + continue + first, second = nearest[:2] + lo, hi = ((second + 1, nearest[2] if len(nearest) > 2 else len(seq)) if later + else (nearest[2] + 1 if len(nearest) > 2 else 0, second)) + alternatives = plans(event, (first, second), seq, later, public, allow_recip) + if allow_recip: + # The added opposite-pair ADDs are already coframed at their + # blocker, so all spellings here give the same chart problem. + if any(not any(p['spelling'][0] == 'RECIP' for p in c) for _, c in alternatives): + continue + alternatives = alternatives[:1] + for coefficient, corrections in alternatives: + extras = [tuple(visit(r, p['cut']) for r in p['spelling'][1:3]) + for p in corrections if p['spelling'][0] == 'ADD'] + cuts = {lo} + for role in (d, s): + h = history[role] + start = bisect_right(h, (lo, far)) + stop = bisect_right(h, (hi, far)) + cuts.update(k for k, _ in h[start:stop]) + ordered = sorted(cuts) + for j, cut in enumerate(ordered): + pair = visit(d, cut), visit(s, cut) + if pair != old or windows: + row = dict(add=i, blockers=[first, second], cut=cut, coefficient=str(coefficient), + corrections=corrections, visits=(pair, *extras), direction='later' if later else 'earlier') + if windows: + row['last_cut'] = ordered[j + 1] - 1 if j + 1 < len(ordered) else hi + row['stationary_pairs'] = [(visit(d, p), visit(s, p)) for p in ordered] + yield row + + +def slide_placements(word, raw, scalar, bridges): + public = word['public'] + length = len(word['program']) + reads, writes = scalar_history(word) + history = defaultdict(list) + for i, (r, event, _) in enumerate(raw): + history[r].append((event + 1, i)) + for values in history.values(): + values.sort() + far = len(raw) + length + + def at(r, cut): + values = history[r] + return values[bisect_right(values, (cut, far)) - 1][1] + + for use_recip in (False, True): + for row in placements(word, raw, scalar, bridges, use_recip): + packets = row['corrections'] + visits = row['visits'] + index = 0 + for packet in packets: + spell = packet['spelling'] + if spell[0] != 'ADD': + continue + index += 1 + d, s = spell[1:3] + if max(d, s) >= public: + continue + here = packet['cut'] + lo, hi = 0, length + for conflicts in (reads[d], writes[s]): + j = bisect_left(conflicts, here) + if j: + lo = max(lo, conflicts[j - 1] + 1) + if j < len(conflicts): + hi = min(hi, conflicts[j]) + for other in packets: + if other is packet: + continue + cut = other['cut'] + if cut < here: + lo = max(lo, cut + 1) + elif cut > here: + hi = min(hi, cut - 1) + elif other['blocker'] < packet['blocker']: + lo = max(lo, here) + else: + hi = min(hi, here) + assert lo <= here <= hi and visits[index] == (at(d, here), at(s, here)) + cuts = {lo} + for r in (d, s): + values = history[r] + a = bisect_right(values, (lo, far)) + b = bisect_right(values, (hi, far)) + cuts.update(cut for cut, _ in values[a:b]) + for cut in sorted(cuts): + pair = at(d, cut), at(s, cut) + if pair == visits[index]: + continue + yield row | dict(corrections=[p | {'cut': cut} if p is packet else p for p in packets], + visits=(*visits[:index], pair, *visits[index + 1:]), + slid_from=here, slid_blocker=packet['blocker']) + + +def slide_move_placements(word, raw, scalar, bridges, edge_only=False): + sequence = word['program'] + public = word['public'] + history, contacts = defaultdict(list), defaultdict(list) + for k, (r, event, _) in enumerate(raw): + if r < public: + history[r].append((event, k)) + for h in history.values(): + h.sort() + for i, e in enumerate(sequence): + if e[0] in ('ADD', 'COPY', 'SCALE'): + for r in e[1:2] if e[0] == 'SCALE' else e[1:3]: + contacts[r].append(i) + index = {k: j for h in history.values() for j, (_, k) in enumerate(h)} + for use_recip in (False, True): + for row in placements(word, raw, scalar, bridges, use_recip, windows=True): + i = row['add'] + old = row['visits'][0] + seen = set(row.pop('stationary_pairs')) + for side, k in enumerate(old): + role = raw[k][0] + h, j = history[role], index[k] + for move_after in (True, False): + p = j - 1 if move_after else j + 1 + if not 0 <= p < len(h): + continue + move = h[j if move_after else p][0] + cut = row['cut'] if move_after else row['last_cut'] + lo, hi = (move + 1, cut) if move_after else (cut, move) + assert sequence[move][0] == 'MOVE' and lo <= hi + events = contacts[role] + k0 = bisect_left(events, lo) + if k0 < len(events) and events[k0] == i: + k0 += 1 + if k0 < len(events) and events[k0] < hi: + continue + packet_cuts = {packet['cut'] for packet in row['corrections'] + if role in packet['spelling'][1:3]} + if any(lo <= k <= hi for k in packet_cuts) or (hi + 1 in packet_cuts) != edge_only: + continue + pair = (*old[:side], h[p][1], *old[side + 1:]) + if pair in seen or pair == scalar[i]: + continue + yield row | dict(cut=cut, visits=(pair, *row['visits'][1:]), + moved_paid_event=move, move_after=move_after) + + +def price_box(space, paid, target, state, low, high, neighbors, changed, keys, weights): + ordered = sorted(paid, key=lambda e: (state[e[0]][1], state[e[1]][1], e)) + tightened = propagate(low, high, keys, ordered) + if tightened is None: + return 'incompatible span bounds', [] + lo, hi = tightened + adjacency = [s.copy() for s in neighbors] + touched = changed.copy() + for a, b in keys: + adjacency[a].add(b) + adjacency[b].add(a) + touched.update((a, b)) + blocks = changed_blocks(space, low, high, adjacency, target, touched) + answers = [] + for block in blocks: + widths = {i: len(hi[i]).bit_length() - len(lo[i]).bit_length() + 1 for i in block} + if volume({i: range(n) for i, n in widths.items()}, adjacency, 600000) is None: + answers.append(dict(block=block, deferred='rank volume')) + else: + rank = solve_equalities(block, state, lo, hi, paid, target, keys, weights, True) + if rank.get('infeasible'): + return 'incompatible rank equations', [] + answers.append(dict(block=block, rank=rank)) + if any('deferred' in r for r in answers): + return 'unresolved rank volume', answers + if sum(Q(r['rank']['upper']) for r in answers) <= 0: + return 'nonpositive rank upper', [] + for row in answers: + if Q(row['rank']['upper']) <= 0: + continue + block = row['block'] + qs = {i: len(hi[i]).bit_length() - len(lo[i]).bit_length() for i in block} + sizes = {i: sum(subspace_count(d, r) for r in range(d + 1)) for i, d in qs.items()} + if max(qs.values()) > 7 or volume({i: range(n) for i, n in sizes.items()}, adjacency, 900000) is None: + row['deferred'] = 'geometry volume' + else: + domains = {i: quotient_domain(lo[i], hi[i]) for i in block} + exact = solve_equalities(block, state, lo, hi, paid, target, keys, weights, False, domains) + if exact.get('infeasible'): + return 'incompatible exact charts', [] + row['exact'] = exact + upper = sum(Q(r.get('exact', r['rank'])['upper']) for r in answers) + if upper <= 0: + return 'nonpositive mixed upper', [] + return 'positive upper requires exact lift', answers + + +def main(word_path, graph_path, price_path, journal_path, start, cap, + allow_recip=False, slide=False, slide_move=False, slide_edge=False): + raw_word = gzip.decompress(word_path.read_bytes()) + assert sha256(raw_word).hexdigest() == WORD_SHA + word = json.loads(raw_word) + graph = load('literal_graph', graph_path) + engine = load('directed_price', price_path) + raw, _, comp, raw_paid, raw_target, fixed, scalar, original, enter, end, child = inventory(word, graph) + state0 = {i: chart(s) for i, s in enumerate(original) if s is not None} + paid0 = Counter((comp[a], comp[b]) for _, a, b in raw_paid) + lo0, hi0, _ = bounds(original, paid0, {comp[j] for j in fixed}) + left, right = map(Q, BRACKET) + weights = {r: (engine.raw_margin({r: 1}, right)[0], engine.raw_margin({r: 1}, left)[1]) + for r in range(1, 10)} + tally = Counter() + blockers = Counter() + hits = [] + last = None + pending = None + rows = (slide_placements(word, raw, scalar, child) if slide + else placements(word, raw, scalar, child, allow_recip)) + if slide_move or slide_edge: + rows = slide_move_placements(word, raw, scalar, child, slide_edge) + with journal_path.open('x', buffering=1) as journal: + for position, p in enumerate(rows): + if position < start: + continue + if tally['placements'] >= cap: + pending = position + break + tally['placements'] += 1 + blockers['+'.join(word['program'][j][0] for j in p['blockers'])] += 1 + i = p['add'] + if last != i: + old, new = comp[scalar[i][0]], len(original) + branch = child[i] + split = {j for j, c in enumerate(comp) + if c == old and enter[branch] <= enter[j] < end[branch]} + belong = lambda j: new if j in split else comp[j] + space = [*original, original[old]] + paid = Counter((belong(a), belong(b)) for _, a, b in raw_paid) + target = Counter((belong(a), belong(b)) for a, b in raw_target) + low, high, adj = bounds(space, paid, {belong(j) for j in fixed}) + changed = {old, new} | {j for j in range(len(original)) + if (low[j], high[j]) != (lo0[j], hi0[j])} + state = state0 | {new: state0[old]} + cache = {} + last = i + tally['ADD bridges'] += 1 + keys = tuple(sorted({tuple(sorted((belong(a), belong(b)))) for a, b in p['visits'] + if belong(a) != belong(b)})) + connected = {old} + for _ in keys: + for a, b in keys: + if a in connected or b in connected: + connected.update((a, b)) + if new in connected: + status = 'reinstates predecessor equality' + elif keys in cache: + tally['duplicate price constraints'] += 1 + status = cache[keys] + else: + status, answers = price_box(space, paid, target, state, low, high, adj, changed, keys, weights) + cache[keys] = status + if answers: + row = dict(position=position, status=status, proposal=p, keys=keys, + old_component=old, new_component=new, split_visits=[raw[j] for j in sorted(split)], + blocks=answers) + hits.append(row) + print(json.dumps(row, sort_keys=True), file=journal) + tally[status] += 1 + if tally['placements'] % 250 == 0: + print(json.dumps(dict(position=position, add=i, counts=tally), sort_keys=True), file=journal) + result = dict(word=WORD_SHA, start=start, cap=cap, counts=tally, blockers=blockers, + pending=pending, unresolved=len(hits), hits=hits) + if allow_recip: + result['scope'] = 'only added directions with a reciprocal opposite-ADD spelling' + if slide: + result['scope'] = 'one public correction slides without crossing other stationary packet' + if slide_move: + result['scope'] = 'one public paid MOVE slides across new mobile ADD with every other contact fixed' + if slide_edge: + result['scope'] = 'additional paid MOVE slides with packet one cut after both MOVE positions' + print(json.dumps(result, indent=2, sort_keys=True)) + + +if __name__ == '__main__': + assert __debug__ + parser = argparse.ArgumentParser(description=__doc__) + for name in ('word_path', 'graph_path', 'price_path', 'journal_path'): + parser.add_argument(name, type=Path) + parser.add_argument('--start', type=int, default=0) + parser.add_argument('--cap', type=int, default=26000) + modes = parser.add_mutually_exclusive_group() + modes.add_argument('--reciprocal', action='store_true', dest='allow_recip') + modes.add_argument('--slide-correction', action='store_true', dest='slide') + modes.add_argument('--slide-move', action='store_true') + modes.add_argument('--slide-move-edge', action='store_true', dest='slide_edge') + main(**vars(parser.parse_args())) diff --git a/research/p104-two-blocker-exclusion/vendor/kappa-typea-birth2-20261110T2258Z/evidence/scalar/port.py b/research/p104-two-blocker-exclusion/vendor/kappa-typea-birth2-20261110T2258Z/evidence/scalar/port.py new file mode 100644 index 0000000000..406163a66d --- /dev/null +++ b/research/p104-two-blocker-exclusion/vendor/kappa-typea-birth2-20261110T2258Z/evidence/scalar/port.py @@ -0,0 +1,122 @@ +"""Rebase the adjacent one-blocker scalar commutator screen onto exact #7131.""" +from collections import Counter +from fractions import Fraction as Q +import gzip +from hashlib import sha256 +from importlib.util import module_from_spec, spec_from_file_location +import json +from pathlib import Path +import sys + +ROOT = Path(__file__).resolve().parents[3] +WORD = '9557c4682056ab7cc7cda89aa73865bef0e3948cc10b3c3061b0a944af05b96a' +RESULT = 'e4ae0c1cfa809cd780a6e22ce32528e7ca4b4e57f90abf91ad0bde97d30446ab' +CALLER = '255d89f38cd45e38e5770f559bc43dc217e989032359768cdc7e8cdfd64b47bc' +BASE = ROOT/'kappa-chronology-pivot-20261110T1021Z/evidence/corrected_contacts.py' +GRAPH = ROOT/'kappa-interior-20261110T0823Z/evidence/closure.py' +PRICE = ROOT/'kappa-coupled-boundaries-20261110T0908Z/replay/research/shared-wire-stop-fusion/audit_price.py' + + +def read(path, pin, compressed=False): + payload=path.read_bytes() + if compressed: + payload=gzip.decompress(payload) + assert sha256(payload).hexdigest()==pin + return json.loads(payload) + + +def module(name, path): + spec=spec_from_file_location(name,path) + result=module_from_spec(spec) + spec.loader.exec_module(result) + return result + + +def count_invoice(word, caller, graph): + spaces=[graph.span(f) for f in word['frames']] + dim=[len(f) for f in word['frames']] + public=word['public'] + paid,owned_paid,targets=Counter(),Counter(),Counter() + charts=word['initial']+[None]*word['owned_fields'] + for e in word['program']: + op,r=e[:2] + if op=='MOVE': + a,b,private=e[2:] + assert charts[r]==a and private==(r>=public) + assert spaces[a]=public and charts[r] is None + charts[r]=e[2] + elif op=='CLEAR': + assert r>=public and charts[r]==e[2] + charts[r]=None + else: + assert all(charts[s]==e[-1] for s in (e[1:3] if op in ('ADD','COPY') else e[1:2])) + assert charts==word['final']+[None]*word['owned_fields'] + main=set(word['live'])|{r+112 for r in word['live']}|set(word['hosted']['X2'])|set(word['hosted']['Y2']) + for r,(a,b) in enumerate(zip(word['initial'],word['final'])): + if r not in main: + assert spaces[a]0>engine.raw_margin(signed,hi)[1] + old.WORD_SHA=WORD + old.BRACKET=(str(lo),str(hi)) + propagate=old.propagate + join=propagate.__globals__['join'] + + def reject_disjoint(low,high,equalities,ordered_paid): + if any(not join(low[a],low[b])<=high[a]&high[b] for a,b in equalities): + return None + return propagate(low,high,equalities,ordered_paid) + + old.propagate=reject_disjoint + with journal_path.open('x') as journal: + receipt=old.screen(word,graph,engine,journal,free_correction=mode=="free",cap=cap, + owned_blocker=mode=="owned",gauss=mode=="gauss") + return dict(source_word_sha256=WORD,source_result_sha256=RESULT,source_caller_sha256=CALLER, + source_price_bracket=[str(lo),str(hi)],full_paid=p,full_target=t,source_literal=controls, + replay_sources={p.name:sha256(p.read_bytes()).hexdigest() for p in (BASE,GRAPH,PRICE)}, + tested_placement_cap=cap,**receipt) + + +if __name__=='__main__': + options=sys.argv[5:] + mode=next((x[2:] for x in options if x.startswith('--')), 'adjacent') + cap=next((int(x) for x in options if not x.startswith('--')), None) + assert mode in ('adjacent','free','owned','gauss') + print(json.dumps(run(*map(Path,sys.argv[1:5]),cap,mode),indent=2,sort_keys=True)) diff --git a/research/p104-two-blocker-exclusion/verify.py b/research/p104-two-blocker-exclusion/verify.py new file mode 100644 index 0000000000..4f67244302 --- /dev/null +++ b/research/p104-two-blocker-exclusion/verify.py @@ -0,0 +1,92 @@ +#!/usr/bin/env python3 +"""Replay the exact two-blocker exclusion and its directed price controls.""" +from hashlib import sha256 +import json +from pathlib import Path +import subprocess +import sys +from tempfile import TemporaryDirectory + + +PACKAGE = Path(__file__).resolve().parent +VENDOR = PACKAGE / "vendor" +ROUND = "kappa-scalar-two-20261110T2315Z" +PLANNER = f"{ROUND}/evidence/planner/two_blockers.py" +LEGACY = "kappa-two-blockers-20261110T1036Z/evidence/two_blockers.py" +SCRIPT_PINS = { + PLANNER: "152b0f6c80e0f7a47b078fb35bd91b35fbfd63fa2d2da17cf66ded05f51846f0", + LEGACY: "a5b5855f3016a77d991fb53536cae388221a7cf9529fe58c376141bc7656e0c3", +} + + +def unique(pairs): + result = {} + for key, value in pairs: + if key in result: + raise ValueError(f"Duplicate dependency path {key}") + result[key] = value + return result + + +def load(path): + return json.loads(path.read_bytes(), object_pairs_hook=unique) + + +def authenticate(): + try: + json.loads('{"script.py":"first","script.py":"second"}', object_pairs_hook=unique) + except ValueError: + pass + else: + raise RuntimeError("Duplicate dependency path control failed") + pins = load(PACKAGE / "DEPENDENCIES.json") + files = {p.relative_to(VENDOR).as_posix(): p for p in VENDOR.rglob("*") if p.is_file()} + assert pins.keys() == files.keys() + for key, path in files.items(): + assert not path.is_symlink() and sha256(path.read_bytes()).hexdigest() == pins[key], key + for key, digest in SCRIPT_PINS.items(): + assert pins[key] == digest + print(f"PASS_PATH_KEYED_PINS {len(pins)}", flush=True) + + +def checked(script, expected, cache, *args): + process = subprocess.run( + [sys.executable, "-E", "-S", "-B", "-X", f"pycache_prefix={cache}", str(script), + *map(str, args)], + cwd=PACKAGE, check=True, stdout=subprocess.PIPE, + ) + assert process.stdout == expected.read_bytes(), expected.relative_to(PACKAGE) + print(f"PASS {expected.relative_to(VENDOR)}", flush=True) + + +def main(): + assert __debug__ and sys.version_info[:2] == (3, 12) + authenticate() + word, result, caller = (VENDOR / "inputs" / name + for name in ("WORD.json.gz", "RESULT.json", "CALLER.json")) + local = VENDOR / ROUND / "evidence" + planner, overlap, price = (local / d for d in ("planner", "overlap", "price")) + with TemporaryDirectory(prefix="p104-two-blocker-") as directory: + scratch = Path(directory) + cache = scratch / "cache" + checked(planner / "validate.py", planner / "PLANNER.json", cache, word) + checked(planner / "validate_all.py", planner / "ALL.json", cache, word) + checked(overlap / "validate.py", overlap / "OVERLAP.json", cache, word) + for mode, name, count in (("all-terms", "ALL", 73461), ("overlap", "OVERLAP", 8)): + journal = scratch / f"{name}.jsonl" + expected = price / f"{name}.json" + checked(price / "price_two.py", expected, cache, word, result, caller, journal, "--mode", mode) + receipt = load(expected) + assert receipt["counts"]["placements"] == count + assert receipt["unresolved"] == 0 and receipt["pending"] is None + for key, digest in SCRIPT_PINS.items(): + assert receipt["dependencies"][key] == digest + if mode == "all-terms": + assert journal.read_bytes() == (price / "ALL.jsonl").read_bytes() + else: + assert not journal.read_bytes() + print("PASS_P104_TWO_BLOCKER_EXCLUSION all_terms=73461 overlap=8 no_verified_gain") + + +if __name__ == "__main__": + main()