From 617903497387a98f7ca929ad0b6928dd32abffec Mon Sep 17 00:00:00 2001 From: CubeJerry <80299683+CubeJerry@users.noreply.github.com> Date: Tue, 10 Nov 2026 02:52:39 +0800 Subject: [PATCH] Remove E-free QSELF pair within its three-query budget Verified standalone research package. No upstream PR submitted. Prepared for @CubeJerry with substantial OpenAI assistance. --- .../DEPENDENCIES.json | 95 ++ .../p104-query-only-interval/ENVIRONMENT.json | 7 + research/p104-query-only-interval/PATCH.json | 1516 +++++++++++++++++ .../PR-DESCRIPTION.md | 67 + research/p104-query-only-interval/PROOF.md | 287 ++++ .../QUERY-ONLY-CALLER.json | 1 + research/p104-query-only-interval/README.md | 95 ++ research/p104-query-only-interval/RESULT.json | 241 +++ research/p104-query-only-interval/REVIEW.md | 55 + .../p104-query-only-interval/SOURCES.json | 18 + research/p104-query-only-interval/TASK.json | 93 + research/p104-query-only-interval/VERIFY.json | 119 ++ .../complete_invoice.py | 75 + .../data/caller_efree.json | 1 + .../data/root_A_efree.json | 1 + .../data/word_6936.json.gz | Bin 0 -> 349022 bytes .../interval_certificate.py | 133 ++ .../reference/OWNED-PROOF.md | 403 +++++ .../reference/README_6937.md | 80 + .../reference/jclib_6936.py | 331 ++++ .../p104-query-only-interval/replacement.py | 97 ++ .../source_binding.py | 52 + .../vendor/dual_certificate.py | 129 ++ .../vendor/invoice.py | 211 +++ .../vendor/operator_ring.py | 140 ++ research/p104-query-only-interval/verify.py | 73 + 26 files changed, 4320 insertions(+) create mode 100644 research/p104-query-only-interval/DEPENDENCIES.json create mode 100644 research/p104-query-only-interval/ENVIRONMENT.json create mode 100644 research/p104-query-only-interval/PATCH.json create mode 100644 research/p104-query-only-interval/PR-DESCRIPTION.md create mode 100644 research/p104-query-only-interval/PROOF.md create mode 100644 research/p104-query-only-interval/QUERY-ONLY-CALLER.json create mode 100644 research/p104-query-only-interval/README.md create mode 100644 research/p104-query-only-interval/RESULT.json create mode 100644 research/p104-query-only-interval/REVIEW.md create mode 100644 research/p104-query-only-interval/SOURCES.json create mode 100644 research/p104-query-only-interval/TASK.json create mode 100644 research/p104-query-only-interval/VERIFY.json create mode 100644 research/p104-query-only-interval/complete_invoice.py create mode 100644 research/p104-query-only-interval/data/caller_efree.json create mode 100644 research/p104-query-only-interval/data/root_A_efree.json create mode 100644 research/p104-query-only-interval/data/word_6936.json.gz create mode 100644 research/p104-query-only-interval/interval_certificate.py create mode 100644 research/p104-query-only-interval/reference/OWNED-PROOF.md create mode 100644 research/p104-query-only-interval/reference/README_6937.md create mode 100644 research/p104-query-only-interval/reference/jclib_6936.py create mode 100644 research/p104-query-only-interval/replacement.py create mode 100644 research/p104-query-only-interval/source_binding.py create mode 100644 research/p104-query-only-interval/vendor/dual_certificate.py create mode 100644 research/p104-query-only-interval/vendor/invoice.py create mode 100644 research/p104-query-only-interval/vendor/operator_ring.py create mode 100644 research/p104-query-only-interval/verify.py diff --git a/research/p104-query-only-interval/DEPENDENCIES.json b/research/p104-query-only-interval/DEPENDENCIES.json new file mode 100644 index 0000000000..caa19c9071 --- /dev/null +++ b/research/p104-query-only-interval/DEPENDENCIES.json @@ -0,0 +1,95 @@ +{ + "schema_version": 1, + "files": [ + { + "local_path": "data/caller_efree.json", + "repository": "DreamingOfClouds/integer-mult-bounds", + "commit": "a98df73ddae1d1ea85a62b6bdf2714b28cb7b359", + "original_path": "research/p104-two-chain-findings/data/caller_efree.json", + "git_blob": "5a71ca9f80ced1aeb8a68e97516cab52eb72a52a", + "bytes": 71267, + "sha256": "c5b6c5236462ae84e5431a791a2f8ce795774342f13e11c4af35689092a8af30", + "usage": "runtime" + }, + { + "local_path": "data/root_A_efree.json", + "repository": "DreamingOfClouds/integer-mult-bounds", + "commit": "a98df73ddae1d1ea85a62b6bdf2714b28cb7b359", + "original_path": "research/p104-two-chain-findings/data/root_A_efree.json", + "git_blob": "4a7fbe2fe247090bb1d7d5256f2478856d1c39ad", + "bytes": 16925, + "sha256": "64486cd1c5a879ffc0312195a39ce4a2ef288f81afb47232c244b9b6f46683d0", + "usage": "runtime" + }, + { + "local_path": "data/word_6936.json.gz", + "repository": "DreamingOfClouds/integer-mult-bounds", + "commit": "03626137d0bd57f09b0bf9597376183ce6fa9683", + "original_path": "research/p104-main-wire-native/data/word.json.gz", + "git_blob": "d93e67ca7628bf5531ae6e369da4dd7b7907b88f", + "bytes": 349022, + "sha256": "273e81f176f001684b1fa3eb857992bf58b54748004fcfe806b83adb48d2cc00", + "usage": "runtime" + }, + { + "local_path": "reference/jclib_6936.py", + "repository": "DreamingOfClouds/integer-mult-bounds", + "commit": "03626137d0bd57f09b0bf9597376183ce6fa9683", + "original_path": "research/p104-main-wire-native/jclib.py", + "git_blob": "48a55ab03a731315dd27d1dd7dd52be716de0ce8", + "bytes": 14872, + "sha256": "bdbd89da0125a41514ea10330bccd25de5dd626ac8b2d671c88dc2e4b8fb93c4", + "usage": "reference-only" + }, + { + "local_path": "vendor/operator_ring.py", + "repository": "CubeJerry/integer-mult-bounds", + "commit": "4e2fd1b6abed49c202a057fd5c73ead0a460f976", + "original_path": "research/p104-qself-owned-lowering/operator_ring.py", + "bytes": 6344, + "sha256": "732779a92078e97bcd18e5c7def5df755ddee1875d901a7326b3ecb17962750c", + "git_blob": "20acae64a1033f9add3b6b9abc65daf812baa638", + "usage": "runtime" + }, + { + "local_path": "vendor/dual_certificate.py", + "repository": "CubeJerry/integer-mult-bounds", + "commit": "4e2fd1b6abed49c202a057fd5c73ead0a460f976", + "original_path": "research/p104-qself-owned-lowering/dual_certificate.py", + "bytes": 4751, + "sha256": "aba731b7a799dd792d8c91cc3f5d3c012dd5d0d10c1e01e721a23752d0f58331", + "git_blob": "5be2a459308a56fa0a941aab71300fade3781f76", + "usage": "runtime" + }, + { + "local_path": "vendor/invoice.py", + "repository": "CubeJerry/integer-mult-bounds", + "commit": "4e2fd1b6abed49c202a057fd5c73ead0a460f976", + "original_path": "research/p104-qself-owned-lowering/invoice.py", + "bytes": 11454, + "sha256": "bb61a684d284942157e8b3ca48c40c4c98809298eee0d763d509bbbde8bec208", + "git_blob": "a576bd0e0054dccae91d7cf3ff7e65090a6257e0", + "usage": "runtime" + }, + { + "local_path": "reference/OWNED-PROOF.md", + "repository": "CubeJerry/integer-mult-bounds", + "commit": "4e2fd1b6abed49c202a057fd5c73ead0a460f976", + "original_path": "research/p104-qself-owned-lowering/PROOF.md", + "bytes": 23131, + "sha256": "416711012b7c133dd15c7b478e50b7e11b61d05cfee89c8de1837720826635c3", + "git_blob": "a351238484324512fd4e8147111f122765c71603", + "usage": "reference-only" + }, + { + "local_path": "reference/README_6937.md", + "repository": "DreamingOfClouds/integer-mult-bounds", + "commit": "a98df73ddae1d1ea85a62b6bdf2714b28cb7b359", + "original_path": "research/p104-two-chain-findings/README.md", + "bytes": 10170, + "sha256": "5087644ba649dd9fd3fcc85c5d9cfb4be323aca7b04f88f363d8fd3d439d5296", + "git_blob": "fddaa597038d981e02b2987b665ca34acaf64f92", + "usage": "reference-only" + } + ] +} diff --git a/research/p104-query-only-interval/ENVIRONMENT.json b/research/p104-query-only-interval/ENVIRONMENT.json new file mode 100644 index 0000000000..d84d72b5e2 --- /dev/null +++ b/research/p104-query-only-interval/ENVIRONMENT.json @@ -0,0 +1,7 @@ +{ + "python": "3.12.14 (main, Aug 25 2026, 14:00:49) [Clang 22.1.3 ]", + "implementation": "CPython", + "platform": "Linux-6.18.57-x86_64-with-glibc2.39", + "dependencies": "Python standard library only; no network, subprocess or external solver needed by package replay", + "canonical_base": "7c49fe32c55de02c2c873655c804b16e4c3fef0a" +} diff --git a/research/p104-query-only-interval/PATCH.json b/research/p104-query-only-interval/PATCH.json new file mode 100644 index 0000000000..efb351c03b --- /dev/null +++ b/research/p104-query-only-interval/PATCH.json @@ -0,0 +1,1516 @@ +{ + "source_interval_half_open": [ + 457, + 576 + ], + "replacement_events": [ + [ + "A", + "ADD", + 19, + 20, + "-1" + ], + [ + "A", + "IDLE_ONE", + 28, + [ + 9 + ] + ], + [ + "A", + "SWAP", + 28, + 27 + ], + [ + "A", + "SWAP", + 28, + 26 + ], + [ + "A", + "SWAP", + 28, + 25 + ], + [ + "A", + "SWAP", + 28, + 24 + ], + [ + "A", + "SWAP", + 28, + 23 + ], + [ + "A", + "SWAP", + 28, + 22 + ], + [ + "A", + "SWAP", + 28, + 21 + ], + [ + "A", + "ADD", + 19, + 20, + "1" + ], + [ + "A", + "SCALE", + 20, + "-1" + ], + [ + "A", + "SWAP", + 28, + 20 + ], + [ + "A", + "ADD", + 37, + 19, + "1" + ], + [ + "A", + "ADD", + 36, + 19, + "1" + ], + [ + "A", + "ADD", + 35, + 19, + "1" + ], + [ + "A", + "ADD", + 34, + 19, + "1" + ], + [ + "A", + "ADD", + 33, + 19, + "1" + ], + [ + "A", + "ADD", + 32, + 19, + "1" + ], + [ + "A", + "ADD", + 31, + 19, + "1" + ], + [ + "A", + "ADD", + 30, + 19, + "1" + ], + [ + "A", + "ADD", + 29, + 19, + "1" + ], + [ + "A", + "ADD", + 27, + 19, + "1" + ], + [ + "A", + "ADD", + 26, + 19, + "1" + ], + [ + "A", + "ADD", + 25, + 19, + "1" + ], + [ + "A", + "ADD", + 24, + 19, + "1" + ], + [ + "A", + "ADD", + 23, + 19, + "1" + ], + [ + "A", + "ADD", + 22, + 19, + "1" + ], + [ + "A", + "ADD", + 21, + 19, + "1" + ], + [ + "A", + "ADD", + 20, + 19, + "1" + ], + [ + "A", + "LAMBDA", + 19, + 1 + ], + [ + "A", + "ADD", + 2, + 1, + "-1" + ], + [ + "A", + "ADD", + 3, + 1, + "-1" + ], + [ + "A", + "ADD", + 4, + 1, + "-1" + ], + [ + "A", + "ADD", + 5, + 1, + "-1" + ], + [ + "A", + "ADD", + 6, + 1, + "-1" + ], + [ + "A", + "ADD", + 7, + 1, + "-1" + ], + [ + "A", + "ADD", + 8, + 1, + "-1" + ], + [ + "A", + "ADD", + 9, + 1, + "-1" + ], + [ + "A", + "ADD", + 10, + 1, + "-1" + ], + [ + "A", + "ADD", + 11, + 1, + "-1" + ], + [ + "A", + "ADD", + 12, + 1, + "-1" + ], + [ + "A", + "ADD", + 13, + 1, + "-1" + ], + [ + "A", + "ADD", + 14, + 1, + "-1" + ], + [ + "A", + "ADD", + 15, + 1, + "-1" + ], + [ + "A", + "ADD", + 16, + 1, + "-1" + ], + [ + "A", + "ADD", + 17, + 1, + "-1" + ], + [ + "A", + "ADD", + 18, + 1, + "-1" + ], + [ + "A", + "ADD", + 2, + 3, + "-1" + ], + [ + "A", + "ADD", + 2, + 4, + "1" + ], + [ + "A", + "ADD", + 2, + 5, + "-1" + ], + [ + "A", + "ADD", + 2, + 6, + "1" + ], + [ + "A", + "ADD", + 2, + 7, + "-1" + ], + [ + "A", + "ADD", + 2, + 8, + "1" + ], + [ + "A", + "ADD", + 2, + 9, + "-1" + ], + [ + "A", + "ADD", + 2, + 10, + "1" + ], + [ + "A", + "ADD", + 2, + 11, + "-1" + ], + [ + "A", + "ADD", + 2, + 12, + "1" + ], + [ + "A", + "ADD", + 2, + 13, + "-1" + ], + [ + "A", + "ADD", + 2, + 14, + "1" + ], + [ + "A", + "ADD", + 2, + 15, + "-1" + ], + [ + "A", + "ADD", + 2, + 16, + "1" + ], + [ + "A", + "ADD", + 2, + 17, + "-1" + ], + [ + "A", + "ADD", + 2, + 18, + "1" + ], + [ + "A", + "LAMBDA", + 2, + 1 + ], + [ + "A", + "ADD", + 0, + 2, + "-1" + ], + [ + "A", + "SWAP", + 0, + 1 + ], + [ + "A", + "SWAP", + 19, + 1 + ], + [ + "A", + "ADD", + 19, + 2, + "1" + ], + [ + "A", + "LAMBDA", + 2, + 1 + ], + [ + "A", + "LAMBDA", + 2, + 1 + ], + [ + "A", + "LAMBDA", + 0, + 1 + ], + [ + "A", + "LAMBDA", + 0, + 1 + ], + [ + "A", + "ADD", + 1, + 0, + "1" + ], + [ + "A", + "LAMBDA", + 0, + -1 + ], + [ + "A", + "LAMBDA", + 0, + -1 + ], + [ + "A", + "QUERY", + 0, + 19, + -1 + ], + [ + "A", + "LAMBDA", + 0, + 1 + ], + [ + "A", + "LAMBDA", + 0, + 1 + ], + [ + "A", + "ADD", + 1, + 0, + "-1" + ], + [ + "A", + "LAMBDA", + 0, + -1 + ], + [ + "A", + "LAMBDA", + 0, + -1 + ], + [ + "A", + "QUERY", + 19, + 1, + -1 + ], + [ + "A", + "LAMBDA", + 0, + 1 + ], + [ + "A", + "LAMBDA", + 0, + 1 + ], + [ + "A", + "ADD", + 1, + 0, + "1" + ], + [ + "A", + "LAMBDA", + 0, + -1 + ], + [ + "A", + "LAMBDA", + 0, + -1 + ], + [ + "A", + "LAMBDA", + 19, + 1 + ], + [ + "A", + "LAMBDA", + 19, + 1 + ], + [ + "A", + "ADD", + 2, + 19, + "-1" + ], + [ + "A", + "LAMBDA", + 19, + -1 + ], + [ + "A", + "LAMBDA", + 19, + -1 + ], + [ + "A", + "QUERY", + 1, + 2, + -1 + ], + [ + "A", + "LAMBDA", + 19, + 1 + ], + [ + "A", + "LAMBDA", + 19, + 1 + ], + [ + "A", + "ADD", + 2, + 19, + "1" + ], + [ + "A", + "LAMBDA", + 19, + -1 + ], + [ + "A", + "LAMBDA", + 19, + -1 + ], + [ + "A", + "LAMBDA", + 1, + 1 + ], + [ + "A", + "LAMBDA", + 1, + 1 + ], + [ + "A", + "ADD", + 0, + 1, + "-1" + ], + [ + "A", + "LAMBDA", + 2, + 1 + ], + [ + "A", + "LAMBDA", + 2, + 1 + ], + [ + "A", + "LAMBDA", + 2, + -1 + ], + [ + "A", + "ADD", + 2, + 3, + "1" + ], + [ + "A", + "ADD", + 2, + 4, + "-1" + ], + [ + "A", + "ADD", + 2, + 5, + "1" + ], + [ + "A", + "ADD", + 2, + 6, + "-1" + ], + [ + "A", + "ADD", + 2, + 7, + "1" + ], + [ + "A", + "ADD", + 2, + 8, + "-1" + ], + [ + "A", + "ADD", + 2, + 9, + "1" + ], + [ + "A", + "ADD", + 2, + 10, + "-1" + ], + [ + "A", + "ADD", + 2, + 11, + "1" + ], + [ + "A", + "ADD", + 2, + 12, + "-1" + ], + [ + "A", + "ADD", + 2, + 13, + "1" + ], + [ + "A", + "ADD", + 2, + 14, + "-1" + ], + [ + "A", + "ADD", + 2, + 15, + "1" + ], + [ + "A", + "ADD", + 2, + 16, + "-1" + ], + [ + "A", + "ADD", + 2, + 17, + "1" + ], + [ + "A", + "ADD", + 2, + 18, + "-1" + ], + [ + "A", + "ADD", + 2, + 1, + "1" + ], + [ + "A", + "ADD", + 3, + 1, + "1" + ], + [ + "A", + "ADD", + 4, + 1, + "1" + ], + [ + "A", + "ADD", + 5, + 1, + "1" + ], + [ + "A", + "ADD", + 6, + 1, + "1" + ], + [ + "A", + "ADD", + 7, + 1, + "1" + ], + [ + "A", + "ADD", + 8, + 1, + "1" + ], + [ + "A", + "ADD", + 9, + 1, + "1" + ], + [ + "A", + "ADD", + 10, + 1, + "1" + ], + [ + "A", + "ADD", + 11, + 1, + "1" + ], + [ + "A", + "ADD", + 12, + 1, + "1" + ], + [ + "A", + "ADD", + 13, + 1, + "1" + ], + [ + "A", + "ADD", + 14, + 1, + "1" + ], + [ + "A", + "ADD", + 15, + 1, + "1" + ], + [ + "A", + "ADD", + 16, + 1, + "1" + ], + [ + "A", + "ADD", + 17, + 1, + "1" + ], + [ + "A", + "ADD", + 18, + 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", + "SCALE", + 1, + "-1" + ], + [ + "A", + "SCALE", + 0, + "-1" + ], + [ + "A", + "ADD", + 18, + 0, + "-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", + "LAMBDA", + 0, + -1 + ], + [ + "A", + "LAMBDA", + 0, + 1 + ], + [ + "A", + "ADD", + 1, + 18, + "-1" + ], + [ + "A", + "ADD", + 0, + 18, + "-1" + ], + [ + "A", + "ADD", + 1, + 17, + "1" + ], + [ + "A", + "ADD", + 0, + 17, + "1" + ], + [ + "A", + "ADD", + 1, + 16, + "-1" + ], + [ + "A", + "ADD", + 0, + 16, + "-1" + ], + [ + "A", + "ADD", + 1, + 15, + "1" + ], + [ + "A", + "ADD", + 0, + 15, + "1" + ], + [ + "A", + "ADD", + 1, + 14, + "-1" + ], + [ + "A", + "ADD", + 0, + 14, + "-1" + ], + [ + "A", + "ADD", + 1, + 13, + "1" + ], + [ + "A", + "ADD", + 0, + 13, + "1" + ], + [ + "A", + "ADD", + 1, + 12, + "-1" + ], + [ + "A", + "ADD", + 0, + 12, + "-1" + ], + [ + "A", + "ADD", + 1, + 11, + "1" + ], + [ + "A", + "ADD", + 0, + 11, + "1" + ], + [ + "A", + "ADD", + 1, + 10, + "-1" + ], + [ + "A", + "SCALE", + 10, + "-1" + ], + [ + "A", + "ADD", + 1, + 9, + "1" + ], + [ + "A", + "ADD", + 0, + 9, + "1" + ], + [ + "A", + "SWAP", + 18, + 9 + ], + [ + "A", + "ADD", + 1, + 8, + "-1" + ], + [ + "A", + "ADD", + 0, + 8, + "-1" + ], + [ + "A", + "SWAP", + 17, + 8 + ], + [ + "A", + "ADD", + 1, + 7, + "1" + ], + [ + "A", + "ADD", + 0, + 7, + "1" + ], + [ + "A", + "SWAP", + 16, + 7 + ], + [ + "A", + "ADD", + 1, + 6, + "-1" + ], + [ + "A", + "ADD", + 0, + 6, + "-1" + ], + [ + "A", + "SWAP", + 15, + 6 + ], + [ + "A", + "ADD", + 1, + 5, + "1" + ], + [ + "A", + "ADD", + 0, + 5, + "1" + ], + [ + "A", + "SWAP", + 14, + 5 + ], + [ + "A", + "ADD", + 1, + 4, + "-1" + ], + [ + "A", + "ADD", + 0, + 4, + "-1" + ], + [ + "A", + "SWAP", + 13, + 4 + ], + [ + "A", + "ADD", + 1, + 3, + "1" + ], + [ + "A", + "ADD", + 0, + 3, + "1" + ], + [ + "A", + "SWAP", + 12, + 3 + ], + [ + "A", + "ADD", + 1, + 2, + "-1" + ], + [ + "A", + "ADD", + 0, + 2, + "-1" + ], + [ + "A", + "SWAP", + 11, + 2 + ], + [ + "A", + "ADD", + 0, + 1, + "-1" + ], + [ + "A", + "SCALE", + 1, + "-1" + ], + [ + "A", + "SWAP", + 10, + 1 + ], + [ + "A", + "SWAP", + 1, + 0 + ], + [ + "A", + "ADD", + 0, + 1, + "2" + ], + [ + "A", + "LAMBDA", + 0, + -1 + ] + ], + "old_event_count": 2991, + "new_event_count": 3095, + "scope": "Exact formal caller source, no installed physical provider." +} diff --git a/research/p104-query-only-interval/PR-DESCRIPTION.md b/research/p104-query-only-interval/PR-DESCRIPTION.md new file mode 100644 index 0000000000..3456425f0c --- /dev/null +++ b/research/p104-query-only-interval/PR-DESCRIPTION.md @@ -0,0 +1,67 @@ +## Problem and result + +DreamingOfClouds' E-free caller in CrocSwap/integer-mult-bounds#6937 avoids +empty-mask main productive credits but introduces two QSELF operations. The +earlier public owned lowering gives them relative typed-IR lifetimes while +leaving their new physical token registry uninstalled. + +This package replaces the exact separated interval 457..575, including all +intervening source operations, by a word using three existing QUERY(-1) +operations and existing ADD/SWAP/LAMBDA operations. That equals the interval's +original paid budget of two QSELFs and one QUERY. No new helper, initialized +role, target credit or operation type is introduced. The generated complete +caller has 3,095 events and zero QSELFs. + +## Exact theorem and novelty + +For commuting Q,D1,...,D18 with Q^4=I, the new caller has exactly the original +operator on all 76 independent inputs. All D variables stay formal. The new +four-input three-query identity is joined to the actual separated sites by +an explicit even basis and source conjugation; a same-cut pair identity alone +would miss the intervening query's contribution. The noninvertible D9 operation +is never inverted. The source LAMBDA is a unit in both q^2 sectors. + +Credit for the E-free source and prior QUERY-only feasibility suggestion stays +with DreamingOfClouds and #6937; that source reports a gadget and says its whole +QUERY-only caller was not built. The unchanged local native source comes from +CrocSwap/integer-mult-bounds#6936. The public owned-lowering package at +[4e2fd1b6](https://github.com/CubeJerry/integer-mult-bounds/tree/4e2fd1b6abed49c202a057fd5c73ead0a460f976/research/p104-qself-owned-lowering) +supplies the exact source semantics, formal engines and invoice baseline. + +## Complete costs and kappa status + +Every rankwise target and paid count is unchanged, so the full moment +polynomial is identical at every kappa. Totals remain T=23,050 and P=117,846; +the surplus is 1,520 and paid rank mass 317,324. The conditional inherited +ordinary invoice rises from 811,461,936 to 826,265,904, leaving 173,734,096 below +the stated 10^9 cap. The 104 additional A events and 28 additional A LAMBDAs +are explicitly charged. All 416 outer jobs are now existing QUERY lifetimes. + +**No new kappa; no unconditional theorem; selected certificate unchanged.** +The historical scalar/routing tariff remains conditional. New intermediate +formats, signed headroom, rounded errors, physical bit-tape rates, retained +backing and literal compiler/provider bindings require further proof. Existing +opcode support does not establish a physical full-caller execution. + +## Source pins and verification + +- Canonical base `7c49fe32c55de02c2c873655c804b16e4c3fef0a`. +- #6937 head `a98df73ddae1d1ea85a62b6bdf2714b28cb7b359`. +- #6936 head `03626137d0bd57f09b0bf9597376183ce6fa9683`. +- New exact 38-input interval matrix with unrestricted D multiplicities. +- Reused full76-input forward certificate and separate backward covectors; + all 18 D variables remain formal, with exact q^4 quotient coverage. +- Eight algebra failure controls plus a fourth-query paid-budget control. +- Registered normal and optimized suites, committed-byte/export checks as + recorded in `REVIEW.md`; no selected nine-axis physical caller run claimed. + +```sh +python3 -B scripts/research_package.py --package research/p104-query-only-interval --check-only +python3 -B scripts/research_package.py --package research/p104-query-only-interval +``` + +The package includes the complete generated caller, exact patch, proof, +source capsule, invoice, receipts and structured open next questions. +Prepared for **@CubeJerry** with substantial OpenAI assistance in mathematical +derivation, implementation and verification; separate AI/code-assisted reviews +are not human or proof-kernel acceptance. Predecessor notices remain intact. diff --git a/research/p104-query-only-interval/PROOF.md b/research/p104-query-only-interval/PROOF.md new file mode 100644 index 0000000000..2f8610ae45 --- /dev/null +++ b/research/p104-query-only-interval/PROOF.md @@ -0,0 +1,287 @@ +# Removing both separated QSELF sites within the existing paid budget + +Prepared for **@CubeJerry**, with substantial OpenAI assistance. Apache-2.0. +**No new kappa. Exact formal caller identity; physical and rounded interfaces remain conditional.** + +## 1. Exact claim, sources and novelty + +Canonical base: `7c49fe32c55de02c2c873655c804b16e4c3fef0a`. +The source is DreamingOfClouds' [#6937](https://github.com/CrocSwap/integer-mult-bounds/pull/6937), +head `a98df73ddae1d1ea85a62b6bdf2714b28cb7b359`, +`research/p104-two-chain-findings/data/caller_efree.json` (Git blob +`5a71ca9f80ced1aeb8a68e97516cab52eb72a52a`). The unchanged local native word +is from [#6936](https://github.com/CrocSwap/integer-mult-bounds/pull/6936), +head `03626137d0bd57f09b0bf9597376183ce6fa9683`. + +The E-free root and caller are entirely DreamingOfClouds' work. Its README +reports a QUERY-only gadget with a projected cost loss, while saying the +whole QUERY-only caller was not built. The preceding public package +`CubeJerry/integer-mult-bounds@4e2fd1b6abed49c202a057fd5c73ead0a460f976`, +`research/p104-qself-owned-lowering`, supplies the reproducible formal caller +certificate and an owned QSELF expansion with an explicitly uninstalled new +token registry. Its single-QSELF determinant obstruction expressly leaves +paired source synthesis open. This package supplies a different result: a +whole actual separated interval replacement with the same paid profile and +only existing caller operations. It does not rerun or extend that obstruction. + +**Theorem.** Let Q,D_1,...,D_18 be commuting operators on any complex vector +space V, with Q^4=I. Interpret the exact pinned caller with its stated scalar, +QUERY, LAMBDA, IDLE_ONE and joint-contact semantics. Replace zero-based events +457 through 575 inclusive by the 223 events emitted by `replacement.py`. +The resulting 3,095-event caller has exactly the same operator on all 76 +independent inputs. It has no QSELF event. The replaced interval uses exactly +three QUERY(-1) events, the same number of rank-one jobs as its former two +QSELF(-1) events and one QUERY(-1). It uses the same public roles and no new +owned role, arbitrary helper, productive credit, or operation type. + +This theorem includes all input columns and absolute coefficients in the +commutative operator model. It does not assert success on the same finite +signed or rounded inputs, install a physical compiler/service binding, or +prove the retained scalar and routing rates. Those are separate obligations. + +## 2. A three-query identity on four arbitrary fields + +Work first in R=Q(i)[q]/(q^4-1). Put x=q^-1 and t=x^2=q^2, so t^2=1 and +x^-1=t*x. The source's actual phase units are + + lambda_s = ((1+s*i)+(1-s*i)*q^2)/2, s in {+1,-1}. + +They satisfy lambda_+*lambda_-=1 and lambda_+^2=lambda_-^2=t. They are +**units, not the projection (1+q^2)/2**. No inverse of a projection or of any +D variable is used anywhere below. + +For four arbitrary independent fields (a,b,c,d), perform the invertible +q-even preprocessing + + (w1,w2,w3,w4) = (c, a+d, b+t*c, t*d). + +Then perform exactly three generalized query shears in this order: + + w1 <- w1 + x*w2; + w2 <- w2 + x*(w3-t*w1); + w3 <- w3 + x*(w4-t*w2). + +Each query is one literal QUERY(-1). Its indicated source is made by an even +ADD into the other existing public field, then restored after the query. +The query destination differs from that source, so restoring the source +does not undo the update. Multiplication by t uses two source LAMBDA(+1) +events. A temporary t scaling is undone by two LAMBDA(-1) events. These +scans and field transformations are charged; they are not a free oracle. + +After these three steps direct substitution gives + + w1 = c+x*(a+d), + w2 = x*b, + w3 = t*c+t*x*d, + w4 = t*d. + +The even postprocessing + + (w1-t*w3, w2, t*w3, t*w4) + +therefore returns exactly + + (x*a, x*b, c+x*d, d). + +The gadget is a genuine four-input map. In particular d is arbitrary and +restored, and c is arbitrary and receives the prescribed shear. No field is +assumed zero. The emitted word uses 38 existing events: three QUERYs, +26 LAMBDAs, seven ADDs and two SWAPs. The inverse even basis exists over the +entire quotient ring, including q=+/-i. The exact local matrix certificate +checks every coefficient, and a separate unit-basis round trip detects loss +of either q^2 sector. + +## 3. Why that gadget replaces the actual separated sites + +Use column-vector convention: later operations multiply on the left. Let +S_0 multiply role0 by x, S_19 multiply role19 by x, and let +U=I+x*e0*e1^T be the actual QUERY at event495. Partition the intervening +even source events exactly as follows: + +| Block | Zero-based source events | Roles | Content | +| --- | --- | --- | --- | +| E1 | 458..494 | 0..18 | Invertible ADD/SCALE/LAMBDA prefix | +| E2 | 496..544 | 0..18 | Invertible ADD/SCALE/SWAP/LAMBDA suffix | +| B | 545..574 | 19..37 | Other chain prefix, including IDLE_ONE(28,[9]) | + +The original complete interval is the matrix S_19 B E2 U E1 S_0. +Every operation in B has support disjoint from every first-chain operation. +Thus B may move to the right of all first-chain factors, and S_19 may move +leftward across first-chain factors. We obtain + + E2 E1 (E1^-1 U E1) S_0 S_19 B. + +**B is never inverted.** Its IDLE_ONE multiplies by the unrestricted formal +D9 and may be noninvertible. It moves only across disjoint role supports. +E1 alone is conjugated, and its scalar factors are units. + +Let + + s = e1+...+e18, + w = sum_{k=1}^{18} (-1)^k e_k^T, + lambda = lambda_+. + +Then w*s=0 and w*e0=w*e19=0. Reading the actual E1 events gives + + E1^-1 e0 = lambda*(-e0+s), e1^T E1 = w. + +For example, E1 sends role0 to -lambda_- times its old value, sends each +rolek for 2<=k<=18 to old rolek+old role0, and sends role1 to w applied to +the old roles. Solving E1 v=e0 gives the displayed inverse column; this does +not infer a source relation from a finite input probe. Hence + + E1^-1 U E1 = I + x*lambda*(s-e0)*w. + +Writing S=S_0 S_19, the three paid source operations reduce to + + (E1^-1 U E1) S + = S (I+x*lambda*s*w) (I-lambda*e0*w). + +All cross terms vanish because w kills s,e0,e19. This is the source-specific +correction missed by treating the two QSELF sites as an adjacent pair. +The original QUERY contributes the nontrivial independent shear along s. + +Now change the first-chain coordinates using only existing even events. +Subtract role1 from each role2..18. Into role2 add (-1)^k times rolek for +k=3..18, then apply LAMBDA(+1) to role2. The new coordinates include + + c = old role1, + d = lambda*w(old roles). + +The other residual roles retain all remaining independent input information. +The inverse first applies LAMBDA(-1) to role2, undoes its signed sum, and +adds the new role1 into roles2..18. Increasing c in these coordinates +increases every original role1..18 by the same amount: its direction is s. + +Call this invertible coordinate map P^-1. Its two emitted directions each +cost 34 events. In coordinates (a,b,c,d)=(role0,role19,role1,role2), the +factor I-lambda*e0*w is simply ADD(0,2,-1). The factor +S(I+x*lambda*s*w) is exactly the four-field map in section2. + +The complete replacement is therefore, chronologically: + + B; P^-1; ADD(0,2,-1); THREE_QUERIES; P; E1; E2. + +Its event count is 30+34+1+38+34+37+49=223. All source events before457 and +after575 remain byte-for-byte equal as parsed records. This construction +replaces the whole separated interval, not merely a same-cut subexpression. + +## 4. Formal certificates and failure detection + +`interval_certificate.py` is a separate exact sparse-matrix implementation. +It starts with 38 independent interval input generators. Coefficients are +Gaussian rationals, q exponents are reduced only modulo4, and D monomials +are sorted tuples with repetitions retained. The complete two interval +matrices agree in all 180 nonzero endpoint entries. The interval uses D9, +but never specializes it or assumes its inverse or idempotence. + +The full generated caller is also replayed by the unchanged public forward +certificate over Q(i)[q,D1,...,D18]/(q^4-1). All 18 D variables remain +formal and all 76 input generators remain independent. It returns the same +76 diagonal monomials as the source. A different unchanged backward-covector +checker uses integer dyadics at q=1,i,-1,-i, with D variables still formal. +Evaluation at all four distinct fourth roots is injective coefficientwise +on this quotient, so these checks are faithful operator certificates, not +sampled D or sampled field-value experiments. + +The newly supplied interval arithmetic imports none of those predecessor +arithmetic routines. The reused forward and backward engines are credited; +replaying either alone would be regression evidence, not a new independent +implementation. The proof above derives the identity without their code. + +Controls change a query orientation, delete one query, omit the source +conjugation correction, break a t scaling/restoration, repeat D9, contaminate +another independent input, replace lambda with a projection, and remove the +q^4 relation by working modulo q^8-1. Each changes the exact interval matrix. +These controls do not prove minimality of three queries or a general lower +bound for another word. + +Induction over the exact source semantics proves that each matrix entry is +the indicated formal coefficient. A homomorphism into the commuting operator +algebra generated by Q,D maps the identity to every V and every collection +of input fields. No dimension bound, sampled numerical values, or rounded +input assumptions enter that exact theorem. + +## 5. Complete recursive profile and positive ordinary invoice + +Each A event occurs at 96 actual ports. The replacement deletes 192 QSELF +instances, adds 192 QUERY instances, and leaves the former QUERY instances +in the total paid count. Across the full caller, the source has 224 QUERYs +plus 192 QSELFs; the new caller has 416 QUERYs and zero QSELFs. All queries +here have exponent -1, so both complete frame conversions and the return +translation have the same inherited charge per job. + +The 18 local native words, their 400 actual main fields per call, and their +1,061 fresh arbitrary helper fields per call are unchanged. The caller still +has 3,952 actual A/B main inputs and 19,098 fresh local helpers. The root +targets are unchanged, with no empty-mask E input restored or credited. +For every rank r, T_new(r)=T_source(r) and P_new(r)=P_source(r). Thus every +signed target/paid moment agrees identically as a function of kappa. The +complete totals remain T=23,050, P=117,846; surplus=1,520; paid rank mass=317,324. + +No public role is newly allocated. The temporary linear sources in section2 +use already live roles and are restored by ordinary invertible operations. +The existing QUERY contract still needs its copied owned bank and completed +query lifecycle. Three serial query jobs can reuse its fixed inventory; there +are 416 outer query lifetimes overall, the same total as QUERY plus owned +QSELF lifetimes in the baseline. No uninitialized or arbitrary helper is +treated as zero, and no productive target is claimed for query scratch. +All private native workspace, historical backing and parked ancestors remain +charged by the inherited QUERY/LAMBDA/scalar interfaces. + +Under the **inherited scalar/routing convention**, the extra 104 A events +cost 104*32*38*96=12,140,544 units. The extra 28 A LAMBDAs receive the +separate conservative charge 28*1,000*96=2,688,000. The eliminated owned +QSELF-specific macro surcharge is 192*128=24,576. Every other term remains. + +| Complete conditional invoice | QSELF baseline | QUERY-only caller | +| --- | ---: | ---: | +| Reviewed raw ordinary upper | 796,934,944 | 809,050,912 | +| Separate LAMBDA reading | 11,792,000 | 14,480,000 | +| Per-call 1125 conversion reading | 2,734,992 | 2,734,992 | +| All displayed readings included | 811,461,936 | 826,265,904 | +| Margin below inherited 10^9 cap | 188,538,064 | 173,734,096 | + +`complete_invoice.py` reconstructs the unchanged local word and both caller +profiles and checks each changed term. These are conditional scalar/pass +counts, not a new proof of the complete bit-tape tariff. Increased arithmetic +length, temporary coefficients and cross-chain intermediate values require +fresh rounding, signed-width, common-grid and source-placement bounds. There +is no claimed improvement to the accepted kappa or unconditional theorem. + +## 6. Remaining obligations and credit + +The substitution removes the need for a new abstract QSELF operation in this +exact proposed caller. It does not prove arbitrary-Q synthesis: the gadget +and actual source phase algebra use Q^4=I. It neither changes the selected +certificate nor discharges all native_all_columns, owned_erasure, compiler, +precision_tape or analytic_recovery premises. + +Before physical supplier use, regenerate the actual compiler records and +bind the new source occurrences to the existing QUERY, LAMBDA and scalar +providers; prove matching formats and all intermediate signed admission; +reprice complete bit-tape work and historical backing; and propagate errors +through the changed order and additional even operations. Existing opcode +semantics alone do not install an exact source-specific service registry. + +DreamingOfClouds receives credit for #6936/#6937, the E-free construction and +prior QUERY-only feasibility suggestion. The public owned-lowering package +receives credit for the prior formal engines, exact semantics/source pins and +full invoice baseline. Its underlying native, caller, compiler and physical +predecessors retain their attribution. The three-query four-input identity, +its exact separated-source reduction, emitted whole caller and new interval +certificate were prepared for @CubeJerry with substantial OpenAI assistance. + +## Open next questions + +1. Can the regenerated caller satisfy the actual common-format and rounded + QUERY/LAMBDA contracts at this interval? Start with its 223 new intermediate + coefficient rows and the actual source compiler; exact operator equality + does not establish headroom or an error budget. +2. Can the 28 added LAMBDA occurrences be reduced without increasing the paid + profile or changing arbitrary-input restoration? Preserve this complete + verified source as the baseline; an isolated two-register identity is + insufficient. This optimization is outside the present bounded task. +3. Can the resulting existing-op caller be admitted with all native/owned + dependencies and a complete bit-tape certificate? The inherited tariff, + literal source registry and universal proof assumptions remain blockers. diff --git a/research/p104-query-only-interval/QUERY-ONLY-CALLER.json b/research/p104-query-only-interval/QUERY-ONLY-CALLER.json new file mode 100644 index 0000000000..cf55f42710 --- /dev/null +++ b/research/p104-query-only-interval/QUERY-ONLY-CALLER.json @@ -0,0 +1 @@ +{"schema":"mixed-root-caller/1","stages":18,"ambient_rank":153,"roles":76,"types":{"A":{"form":"two-chain-HOST2","roles":38,"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],[-1,0,1,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,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,1,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,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,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,0,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,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,0,0,0,0,0,0,0,0,0],[-1,0,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,0,1,1,0,0,0,0,0,0,0],[-1,0,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,0,1,1,1,1,0,0,0,0,0],[-1,0,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,0,1,1,1,1,1,1,0,0,0],[-1,0,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,0,1,1,1,1,1,1,1,1,0],[-1,0,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],[-1,0,1,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,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,1,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,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,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,0,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,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,0,0,0,0,0,0,0,0,0],[-1,0,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,0,1,1,0,0,0,0,0,0,0],[-1,0,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,0,1,1,1,1,0,0,0,0,0],[-1,0,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,0,1,1,1,1,1,1,0,0,0],[-1,0,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,0,1,1,1,1,1,1,1,1,0],[-1,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1]]},"B":{"form":"hosted-HOST","roles":38,"offset":38,"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],[-1,0,1,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,0,0,0,0,0,0,0,0,0],[-1,0,1,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,1,0,0,0,0,0,0,0,0,0],[-1,0,0,1,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,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,1,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,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,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,1,0,0,0,0,0,0,0,0,0],[-1,0,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,1,0,0,0,0,0,0,0,0,0],[-1,0,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,1,0,0,0,0,0,0,0,0,0],[-1,0,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,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,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,0,0,1,0,0,0,0,0,0,0,0],[-1,0,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,0,1,1,0,0,0,0,0,0,0],[-1,0,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,0,1,1,1,0,0,0,0,0,0],[-1,0,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,0,1,1,1,1,0,0,0,0,0],[-1,0,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,0,1,1,1,1,1,0,0,0,0],[-1,0,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,0,1,1,1,1,1,1,0,0,0],[-1,0,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,0,1,1,1,1,1,1,1,0,0],[-1,0,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,0,1,1,1,1,1,1,1,1,0],[-1,0,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,0,1,1,1,1,1,1,1,1,1],[-1,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1]],"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":[["A","ADD",0,1,"-1"],["A","SWAP",0,1],["A","LAMBDA",0,-1],["A","ADD",19,20,"-1"],["A","SWAP",19,20],["A","SCALE",20,"-1"],["A","LAMBDA",19,1],["B","ADD",40,41,"-2"],["B","ADD",39,41,"1"],["B","ADD",38,41,"2"],["B","ADD",39,40,"1"],["B","ADD",38,40,"1"],["B","ADD",38,39,"-2"],["B","SCALE",39,"256"],["B","ADD",41,39,"-1/128"],["B","ADD",40,39,"1/128"],["B","SCALE",38,"128"],["B","ADD",41,38,"-1/128"],["B","ADD",40,38,"1/64"],["B","ADD",39,38,"1"],["B","LAMBDA",38,-1],["J",1,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","ADD",1,2,"1"],["A","ADD",0,2,"-1"],["A","SCALE",1,"-1"],["A","SWAP",1,2],["A","ADD",2,0,"-1"],["A","SWAP",0,1],["A","LAMBDA",0,-1],["A","ADD",20,21,"1"],["A","ADD",19,21,"-1"],["A","SCALE",20,"-1"],["A","SWAP",20,21],["A","SCALE",19,"-1"],["A","ADD",21,19,"1"],["A","SWAP",19,20],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",40,[1]],["B","IDLE_ONE",41,[1]],["B","ADD",42,43,"-2"],["B","ADD",40,43,"-2"],["B","ADD",39,43,"-256"],["B","ADD",38,43,"-128"],["B","ADD",41,42,"1"],["B","ADD",40,42,"-2"],["B","ADD",39,42,"-256"],["B","ADD",39,41,"256"],["B","ADD",38,41,"-128"],["B","ADD",38,40,"-128"],["B","ADD",41,40,"1"],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",43,39,"-1/128"],["B","ADD",42,39,"1/128"],["B","ADD",41,39,"1/128"],["B","ADD",40,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",43,38,"1/128"],["B","ADD",41,38,"-1/128"],["B","ADD",40,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",2,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","ADD",0,1,"-1"],["A","IDLE_ONE",2,[2,3,4,5,6,7,8,9]],["A","ADD",1,3,"1"],["A","ADD",0,3,"-2"],["A","ADD",0,1,"2"],["A","SCALE",1,"-1"],["A","SCALE",0,"-1"],["A","ADD",1,0,"-1"],["A","SWAP",0,3],["A","LAMBDA",0,-1],["A","ADD",19,20,"-1"],["A","IDLE_ONE",21,[2,3,4,5,6,7,8,9]],["A","ADD",20,22,"1"],["A","ADD",19,22,"-2"],["A","ADD",19,20,"2"],["A","SCALE",19,"-1"],["A","ADD",20,19,"1"],["A","SWAP",19,22],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",40,[2,3,4,5,6,7,8,9]],["B","IDLE_ONE",41,[2,3,4,5,6,7,8,9]],["B","IDLE_ONE",42,[2]],["B","IDLE_ONE",43,[2]],["B","ADD",44,45,"-2"],["B","ADD",42,45,"-2"],["B","ADD",39,45,"-256"],["B","ADD",38,45,"-128"],["B","ADD",43,44,"1"],["B","ADD",42,44,"-2"],["B","ADD",39,44,"-256"],["B","ADD",39,43,"256"],["B","ADD",38,43,"-128"],["B","ADD",38,42,"-128"],["B","ADD",43,42,"1"],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",45,39,"-1/128"],["B","ADD",44,39,"1/128"],["B","ADD",43,39,"1/128"],["B","ADD",42,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",45,38,"1/128"],["B","ADD",43,38,"-1/128"],["B","ADD",42,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",3,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","ADD",0,1,"-1"],["A","IDLE_ONE",3,[3,4,5,6,7,8,9]],["A","ADD",1,4,"1"],["A","ADD",0,4,"-2"],["A","ADD",0,1,"2"],["A","SCALE",1,"-1"],["A","SCALE",0,"-1"],["A","ADD",1,0,"-1"],["A","SWAP",0,4],["A","LAMBDA",0,-1],["A","ADD",19,20,"-1"],["A","IDLE_ONE",22,[3,4,5,6,7,8,9]],["A","ADD",20,23,"1"],["A","ADD",19,23,"-2"],["A","ADD",19,20,"2"],["A","SCALE",19,"-1"],["A","ADD",20,19,"1"],["A","SWAP",19,23],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",42,[3,4,5,6,7,8,9]],["B","IDLE_ONE",43,[3,4,5,6,7,8,9]],["B","IDLE_ONE",44,[3]],["B","IDLE_ONE",45,[3]],["B","ADD",46,47,"-2"],["B","ADD",44,47,"-2"],["B","ADD",39,47,"-256"],["B","ADD",38,47,"-128"],["B","ADD",45,46,"1"],["B","ADD",44,46,"-2"],["B","ADD",39,46,"-256"],["B","ADD",39,45,"256"],["B","ADD",38,45,"-128"],["B","ADD",38,44,"-128"],["B","ADD",45,44,"1"],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",47,39,"-1/128"],["B","ADD",46,39,"1/128"],["B","ADD",45,39,"1/128"],["B","ADD",44,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",47,38,"1/128"],["B","ADD",45,38,"-1/128"],["B","ADD",44,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",4,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","ADD",0,1,"-1"],["A","IDLE_ONE",4,[4,5,6,7,8,9]],["A","ADD",1,5,"1"],["A","ADD",0,5,"-2"],["A","ADD",0,1,"2"],["A","SCALE",1,"-1"],["A","SCALE",0,"-1"],["A","ADD",1,0,"-1"],["A","SWAP",0,5],["A","LAMBDA",0,-1],["A","ADD",19,20,"-1"],["A","IDLE_ONE",23,[4,5,6,7,8,9]],["A","ADD",20,24,"1"],["A","ADD",19,24,"-2"],["A","ADD",19,20,"2"],["A","SCALE",19,"-1"],["A","ADD",20,19,"1"],["A","SWAP",19,24],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",44,[4,5,6,7,8,9]],["B","IDLE_ONE",45,[4,5,6,7,8,9]],["B","IDLE_ONE",46,[4]],["B","IDLE_ONE",47,[4]],["B","ADD",48,49,"-2"],["B","ADD",46,49,"-2"],["B","ADD",39,49,"-256"],["B","ADD",38,49,"-128"],["B","ADD",47,48,"1"],["B","ADD",46,48,"-2"],["B","ADD",39,48,"-256"],["B","ADD",39,47,"256"],["B","ADD",38,47,"-128"],["B","ADD",38,46,"-128"],["B","ADD",47,46,"1"],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",49,39,"-1/128"],["B","ADD",48,39,"1/128"],["B","ADD",47,39,"1/128"],["B","ADD",46,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",49,38,"1/128"],["B","ADD",47,38,"-1/128"],["B","ADD",46,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",5,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","ADD",0,1,"-1"],["A","IDLE_ONE",5,[5,6,7,8,9]],["A","ADD",1,6,"1"],["A","ADD",0,6,"-2"],["A","ADD",0,1,"2"],["A","SCALE",1,"-1"],["A","SCALE",0,"-1"],["A","ADD",1,0,"-1"],["A","SWAP",0,6],["A","LAMBDA",0,-1],["A","ADD",19,20,"-1"],["A","IDLE_ONE",24,[5,6,7,8,9]],["A","ADD",20,25,"1"],["A","ADD",19,25,"-2"],["A","ADD",19,20,"2"],["A","SCALE",19,"-1"],["A","ADD",20,19,"1"],["A","SWAP",19,25],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",46,[5,6,7,8,9]],["B","IDLE_ONE",47,[5,6,7,8,9]],["B","IDLE_ONE",48,[5]],["B","IDLE_ONE",49,[5]],["B","ADD",50,51,"-2"],["B","ADD",48,51,"-2"],["B","ADD",39,51,"-256"],["B","ADD",38,51,"-128"],["B","ADD",49,50,"1"],["B","ADD",48,50,"-2"],["B","ADD",39,50,"-256"],["B","ADD",39,49,"256"],["B","ADD",38,49,"-128"],["B","ADD",38,48,"-128"],["B","ADD",49,48,"1"],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",51,39,"-1/128"],["B","ADD",50,39,"1/128"],["B","ADD",49,39,"1/128"],["B","ADD",48,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",51,38,"1/128"],["B","ADD",49,38,"-1/128"],["B","ADD",48,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",6,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","ADD",0,1,"-1"],["A","IDLE_ONE",6,[6,7,8,9]],["A","ADD",1,7,"1"],["A","ADD",0,7,"-2"],["A","ADD",0,1,"2"],["A","SCALE",1,"-1"],["A","SCALE",0,"-1"],["A","ADD",1,0,"-1"],["A","SWAP",0,7],["A","LAMBDA",0,-1],["A","ADD",19,20,"-1"],["A","IDLE_ONE",25,[6,7,8,9]],["A","ADD",20,26,"1"],["A","ADD",19,26,"-2"],["A","ADD",19,20,"2"],["A","SCALE",19,"-1"],["A","ADD",20,19,"1"],["A","SWAP",19,26],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",48,[6,7,8,9]],["B","IDLE_ONE",49,[6,7,8,9]],["B","IDLE_ONE",50,[6]],["B","IDLE_ONE",51,[6]],["B","ADD",52,53,"-2"],["B","ADD",50,53,"-2"],["B","ADD",39,53,"-256"],["B","ADD",38,53,"-128"],["B","ADD",51,52,"1"],["B","ADD",50,52,"-2"],["B","ADD",39,52,"-256"],["B","ADD",39,51,"256"],["B","ADD",38,51,"-128"],["B","ADD",38,50,"-128"],["B","ADD",51,50,"1"],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",53,39,"-1/128"],["B","ADD",52,39,"1/128"],["B","ADD",51,39,"1/128"],["B","ADD",50,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",53,38,"1/128"],["B","ADD",51,38,"-1/128"],["B","ADD",50,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",7,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","ADD",0,1,"-1"],["A","IDLE_ONE",7,[7,8,9]],["A","ADD",1,8,"1"],["A","ADD",0,8,"-2"],["A","ADD",0,1,"2"],["A","SCALE",1,"-1"],["A","SCALE",0,"-1"],["A","ADD",1,0,"-1"],["A","SWAP",0,8],["A","LAMBDA",0,-1],["A","ADD",19,20,"-1"],["A","IDLE_ONE",26,[7,8,9]],["A","ADD",20,27,"1"],["A","ADD",19,27,"-2"],["A","ADD",19,20,"2"],["A","SCALE",19,"-1"],["A","ADD",20,19,"1"],["A","SWAP",19,27],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",50,[7,8,9]],["B","IDLE_ONE",51,[7,8,9]],["B","IDLE_ONE",52,[7]],["B","IDLE_ONE",53,[7]],["B","ADD",54,55,"-2"],["B","ADD",52,55,"-2"],["B","ADD",39,55,"-256"],["B","ADD",38,55,"-128"],["B","ADD",53,54,"1"],["B","ADD",52,54,"-2"],["B","ADD",39,54,"-256"],["B","ADD",39,53,"256"],["B","ADD",38,53,"-128"],["B","ADD",38,52,"-128"],["B","ADD",53,52,"1"],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",55,39,"-1/128"],["B","ADD",54,39,"1/128"],["B","ADD",53,39,"1/128"],["B","ADD",52,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",55,38,"1/128"],["B","ADD",53,38,"-1/128"],["B","ADD",52,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",8,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","ADD",0,1,"-1"],["A","IDLE_ONE",8,[8,9]],["A","ADD",1,9,"1"],["A","ADD",0,9,"-2"],["A","ADD",0,1,"2"],["A","SCALE",1,"-1"],["A","SCALE",0,"-1"],["A","ADD",1,0,"-1"],["A","SWAP",0,9],["A","LAMBDA",0,-1],["A","ADD",19,20,"-1"],["A","IDLE_ONE",27,[8,9]],["A","ADD",20,28,"1"],["A","ADD",19,28,"-2"],["A","ADD",19,20,"2"],["A","SCALE",19,"-1"],["A","ADD",20,19,"1"],["A","SWAP",19,28],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",52,[8,9]],["B","IDLE_ONE",53,[8,9]],["B","IDLE_ONE",54,[8]],["B","IDLE_ONE",55,[8]],["B","ADD",56,57,"-2"],["B","ADD",54,57,"-2"],["B","ADD",39,57,"-256"],["B","ADD",38,57,"-128"],["B","ADD",55,56,"1"],["B","ADD",54,56,"-2"],["B","ADD",39,56,"-256"],["B","ADD",39,55,"256"],["B","ADD",38,55,"-128"],["B","ADD",38,54,"-128"],["B","ADD",55,54,"1"],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",57,39,"-1/128"],["B","ADD",56,39,"1/128"],["B","ADD",55,39,"1/128"],["B","ADD",54,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",57,38,"1/128"],["B","ADD",55,38,"-1/128"],["B","ADD",54,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",9,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","ADD",0,1,"-1"],["A","IDLE_ONE",9,[9]],["A","SWAP",9,8],["A","SWAP",9,7],["A","SWAP",9,6],["A","SWAP",9,5],["A","SWAP",9,4],["A","SWAP",9,3],["A","SWAP",9,2],["A","ADD",0,1,"1"],["A","SCALE",1,"-1"],["A","SWAP",9,1],["A","ADD",18,0,"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",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","ADD",1,0,"1"],["A","LAMBDA",0,1],["A","ADD",19,20,"-1"],["A","IDLE_ONE",28,[9]],["A","SWAP",28,27],["A","SWAP",28,26],["A","SWAP",28,25],["A","SWAP",28,24],["A","SWAP",28,23],["A","SWAP",28,22],["A","SWAP",28,21],["A","ADD",19,20,"1"],["A","SCALE",20,"-1"],["A","SWAP",28,20],["A","ADD",37,19,"1"],["A","ADD",36,19,"1"],["A","ADD",35,19,"1"],["A","ADD",34,19,"1"],["A","ADD",33,19,"1"],["A","ADD",32,19,"1"],["A","ADD",31,19,"1"],["A","ADD",30,19,"1"],["A","ADD",29,19,"1"],["A","ADD",27,19,"1"],["A","ADD",26,19,"1"],["A","ADD",25,19,"1"],["A","ADD",24,19,"1"],["A","ADD",23,19,"1"],["A","ADD",22,19,"1"],["A","ADD",21,19,"1"],["A","ADD",20,19,"1"],["A","LAMBDA",19,1],["A","ADD",2,1,"-1"],["A","ADD",3,1,"-1"],["A","ADD",4,1,"-1"],["A","ADD",5,1,"-1"],["A","ADD",6,1,"-1"],["A","ADD",7,1,"-1"],["A","ADD",8,1,"-1"],["A","ADD",9,1,"-1"],["A","ADD",10,1,"-1"],["A","ADD",11,1,"-1"],["A","ADD",12,1,"-1"],["A","ADD",13,1,"-1"],["A","ADD",14,1,"-1"],["A","ADD",15,1,"-1"],["A","ADD",16,1,"-1"],["A","ADD",17,1,"-1"],["A","ADD",18,1,"-1"],["A","ADD",2,3,"-1"],["A","ADD",2,4,"1"],["A","ADD",2,5,"-1"],["A","ADD",2,6,"1"],["A","ADD",2,7,"-1"],["A","ADD",2,8,"1"],["A","ADD",2,9,"-1"],["A","ADD",2,10,"1"],["A","ADD",2,11,"-1"],["A","ADD",2,12,"1"],["A","ADD",2,13,"-1"],["A","ADD",2,14,"1"],["A","ADD",2,15,"-1"],["A","ADD",2,16,"1"],["A","ADD",2,17,"-1"],["A","ADD",2,18,"1"],["A","LAMBDA",2,1],["A","ADD",0,2,"-1"],["A","SWAP",0,1],["A","SWAP",19,1],["A","ADD",19,2,"1"],["A","LAMBDA",2,1],["A","LAMBDA",2,1],["A","LAMBDA",0,1],["A","LAMBDA",0,1],["A","ADD",1,0,"1"],["A","LAMBDA",0,-1],["A","LAMBDA",0,-1],["A","QUERY",0,19,-1],["A","LAMBDA",0,1],["A","LAMBDA",0,1],["A","ADD",1,0,"-1"],["A","LAMBDA",0,-1],["A","LAMBDA",0,-1],["A","QUERY",19,1,-1],["A","LAMBDA",0,1],["A","LAMBDA",0,1],["A","ADD",1,0,"1"],["A","LAMBDA",0,-1],["A","LAMBDA",0,-1],["A","LAMBDA",19,1],["A","LAMBDA",19,1],["A","ADD",2,19,"-1"],["A","LAMBDA",19,-1],["A","LAMBDA",19,-1],["A","QUERY",1,2,-1],["A","LAMBDA",19,1],["A","LAMBDA",19,1],["A","ADD",2,19,"1"],["A","LAMBDA",19,-1],["A","LAMBDA",19,-1],["A","LAMBDA",1,1],["A","LAMBDA",1,1],["A","ADD",0,1,"-1"],["A","LAMBDA",2,1],["A","LAMBDA",2,1],["A","LAMBDA",2,-1],["A","ADD",2,3,"1"],["A","ADD",2,4,"-1"],["A","ADD",2,5,"1"],["A","ADD",2,6,"-1"],["A","ADD",2,7,"1"],["A","ADD",2,8,"-1"],["A","ADD",2,9,"1"],["A","ADD",2,10,"-1"],["A","ADD",2,11,"1"],["A","ADD",2,12,"-1"],["A","ADD",2,13,"1"],["A","ADD",2,14,"-1"],["A","ADD",2,15,"1"],["A","ADD",2,16,"-1"],["A","ADD",2,17,"1"],["A","ADD",2,18,"-1"],["A","ADD",2,1,"1"],["A","ADD",3,1,"1"],["A","ADD",4,1,"1"],["A","ADD",5,1,"1"],["A","ADD",6,1,"1"],["A","ADD",7,1,"1"],["A","ADD",8,1,"1"],["A","ADD",9,1,"1"],["A","ADD",10,1,"1"],["A","ADD",11,1,"1"],["A","ADD",12,1,"1"],["A","ADD",13,1,"1"],["A","ADD",14,1,"1"],["A","ADD",15,1,"1"],["A","ADD",16,1,"1"],["A","ADD",17,1,"1"],["A","ADD",18,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","SCALE",1,"-1"],["A","SCALE",0,"-1"],["A","ADD",18,0,"-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","LAMBDA",0,-1],["A","LAMBDA",0,1],["A","ADD",1,18,"-1"],["A","ADD",0,18,"-1"],["A","ADD",1,17,"1"],["A","ADD",0,17,"1"],["A","ADD",1,16,"-1"],["A","ADD",0,16,"-1"],["A","ADD",1,15,"1"],["A","ADD",0,15,"1"],["A","ADD",1,14,"-1"],["A","ADD",0,14,"-1"],["A","ADD",1,13,"1"],["A","ADD",0,13,"1"],["A","ADD",1,12,"-1"],["A","ADD",0,12,"-1"],["A","ADD",1,11,"1"],["A","ADD",0,11,"1"],["A","ADD",1,10,"-1"],["A","SCALE",10,"-1"],["A","ADD",1,9,"1"],["A","ADD",0,9,"1"],["A","SWAP",18,9],["A","ADD",1,8,"-1"],["A","ADD",0,8,"-1"],["A","SWAP",17,8],["A","ADD",1,7,"1"],["A","ADD",0,7,"1"],["A","SWAP",16,7],["A","ADD",1,6,"-1"],["A","ADD",0,6,"-1"],["A","SWAP",15,6],["A","ADD",1,5,"1"],["A","ADD",0,5,"1"],["A","SWAP",14,5],["A","ADD",1,4,"-1"],["A","ADD",0,4,"-1"],["A","SWAP",13,4],["A","ADD",1,3,"1"],["A","ADD",0,3,"1"],["A","SWAP",12,3],["A","ADD",1,2,"-1"],["A","ADD",0,2,"-1"],["A","SWAP",11,2],["A","ADD",0,1,"-1"],["A","SCALE",1,"-1"],["A","SWAP",10,1],["A","SWAP",1,0],["A","ADD",0,1,"2"],["A","LAMBDA",0,-1],["A","ADD",20,37,"-1"],["A","ADD",20,36,"1"],["A","ADD",20,35,"-1"],["A","ADD",20,34,"1"],["A","ADD",20,33,"-1"],["A","ADD",20,32,"1"],["A","ADD",20,31,"-1"],["A","ADD",20,30,"1"],["A","ADD",20,29,"-1"],["A","ADD",20,28,"1"],["A","ADD",20,27,"-1"],["A","ADD",20,26,"1"],["A","ADD",20,25,"-1"],["A","ADD",20,24,"1"],["A","ADD",20,23,"-1"],["A","ADD",20,22,"1"],["A","ADD",20,21,"-1"],["A","SCALE",20,"-1"],["A","SCALE",19,"-1"],["A","ADD",37,19,"-1"],["A","ADD",36,19,"-1"],["A","ADD",35,19,"-1"],["A","ADD",34,19,"-1"],["A","ADD",33,19,"-1"],["A","ADD",32,19,"-1"],["A","ADD",31,19,"-1"],["A","ADD",30,19,"-1"],["A","ADD",29,19,"-1"],["A","ADD",28,19,"-1"],["A","ADD",27,19,"-1"],["A","ADD",26,19,"-1"],["A","ADD",25,19,"-1"],["A","ADD",24,19,"-1"],["A","ADD",23,19,"-1"],["A","ADD",22,19,"-1"],["A","ADD",21,19,"-1"],["A","LAMBDA",19,-1],["A","QUERY",19,20,-1],["A","LAMBDA",19,1],["A","ADD",20,37,"-1"],["A","ADD",19,37,"-1"],["A","ADD",20,36,"1"],["A","ADD",19,36,"1"],["A","ADD",20,35,"-1"],["A","ADD",19,35,"-1"],["A","ADD",20,34,"1"],["A","ADD",19,34,"1"],["A","ADD",20,33,"-1"],["A","ADD",19,33,"-1"],["A","ADD",20,32,"1"],["A","ADD",19,32,"1"],["A","ADD",20,31,"-1"],["A","ADD",19,31,"-1"],["A","ADD",20,30,"1"],["A","ADD",19,30,"1"],["A","ADD",20,29,"-1"],["A","SCALE",29,"-1"],["A","ADD",20,28,"1"],["A","ADD",19,28,"1"],["A","SWAP",37,28],["A","ADD",20,27,"-1"],["A","ADD",19,27,"-1"],["A","SWAP",36,27],["A","ADD",20,26,"1"],["A","ADD",19,26,"1"],["A","SWAP",35,26],["A","ADD",20,25,"-1"],["A","ADD",19,25,"-1"],["A","SWAP",34,25],["A","ADD",20,24,"1"],["A","ADD",19,24,"1"],["A","SWAP",33,24],["A","ADD",20,23,"-1"],["A","ADD",19,23,"-1"],["A","SWAP",32,23],["A","ADD",20,22,"1"],["A","ADD",19,22,"1"],["A","SWAP",31,22],["A","ADD",20,21,"-1"],["A","ADD",19,21,"-1"],["A","SWAP",30,21],["A","ADD",19,20,"-1"],["A","SCALE",20,"-1"],["A","SWAP",29,20],["A","SCALE",19,"-1"],["A","SWAP",20,19],["A","ADD",19,20,"-2"],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",54,[9]],["B","IDLE_ONE",55,[9]],["B","IDLE_ONE",56,[9]],["B","IDLE_ONE",57,[9]],["B","ADD",56,75,"1"],["B","ADD",55,75,"1"],["B","ADD",53,75,"1"],["B","ADD",51,75,"1"],["B","ADD",49,75,"1"],["B","ADD",47,75,"1"],["B","ADD",45,75,"1"],["B","ADD",43,75,"1"],["B","ADD",41,75,"1"],["B","ADD",39,75,"-128"],["B","ADD",38,75,"64"],["B","ADD",56,73,"-1"],["B","ADD",55,73,"-1"],["B","ADD",53,73,"-1"],["B","ADD",51,73,"-1"],["B","ADD",49,73,"-1"],["B","ADD",47,73,"-1"],["B","ADD",45,73,"-1"],["B","ADD",43,73,"-1"],["B","ADD",41,73,"-1"],["B","ADD",39,73,"128"],["B","ADD",38,73,"-64"],["B","ADD",56,72,"2"],["B","ADD",55,72,"2"],["B","ADD",53,72,"2"],["B","ADD",51,72,"2"],["B","ADD",49,72,"2"],["B","ADD",47,72,"2"],["B","ADD",45,72,"2"],["B","ADD",43,72,"2"],["B","ADD",41,72,"2"],["B","ADD",39,72,"-256"],["B","ADD",38,72,"128"],["B","ADD",56,71,"-1"],["B","ADD",55,71,"-1"],["B","ADD",53,71,"-1"],["B","ADD",51,71,"-1"],["B","ADD",49,71,"-1"],["B","ADD",47,71,"-1"],["B","ADD",45,71,"-1"],["B","ADD",43,71,"-1"],["B","ADD",41,71,"-1"],["B","ADD",39,71,"128"],["B","ADD",38,71,"-64"],["B","ADD",56,69,"1"],["B","ADD",55,69,"1"],["B","ADD",53,69,"1"],["B","ADD",51,69,"1"],["B","ADD",49,69,"1"],["B","ADD",47,69,"1"],["B","ADD",45,69,"1"],["B","ADD",43,69,"1"],["B","ADD",41,69,"1"],["B","ADD",39,69,"-128"],["B","ADD",38,69,"64"],["B","ADD",56,68,"-2"],["B","ADD",55,68,"-2"],["B","ADD",53,68,"-2"],["B","ADD",51,68,"-2"],["B","ADD",49,68,"-2"],["B","ADD",47,68,"-2"],["B","ADD",45,68,"-2"],["B","ADD",43,68,"-2"],["B","ADD",41,68,"-2"],["B","ADD",39,68,"256"],["B","ADD",38,68,"-128"],["B","ADD",56,67,"1"],["B","ADD",55,67,"1"],["B","ADD",53,67,"1"],["B","ADD",51,67,"1"],["B","ADD",49,67,"1"],["B","ADD",47,67,"1"],["B","ADD",45,67,"1"],["B","ADD",43,67,"1"],["B","ADD",41,67,"1"],["B","ADD",39,67,"-128"],["B","ADD",38,67,"64"],["B","ADD",56,65,"-1"],["B","ADD",55,65,"-1"],["B","ADD",53,65,"-1"],["B","ADD",51,65,"-1"],["B","ADD",49,65,"-1"],["B","ADD",47,65,"-1"],["B","ADD",45,65,"-1"],["B","ADD",43,65,"-1"],["B","ADD",41,65,"-1"],["B","ADD",39,65,"128"],["B","ADD",38,65,"-64"],["B","ADD",56,64,"2"],["B","ADD",55,64,"2"],["B","ADD",53,64,"2"],["B","ADD",51,64,"2"],["B","ADD",49,64,"2"],["B","ADD",47,64,"2"],["B","ADD",45,64,"2"],["B","ADD",43,64,"2"],["B","ADD",41,64,"2"],["B","ADD",39,64,"-256"],["B","ADD",38,64,"128"],["B","ADD",56,63,"-1"],["B","ADD",55,63,"-1"],["B","ADD",53,63,"-1"],["B","ADD",51,63,"-1"],["B","ADD",49,63,"-1"],["B","ADD",47,63,"-1"],["B","ADD",45,63,"-1"],["B","ADD",43,63,"-1"],["B","ADD",41,63,"-1"],["B","ADD",39,63,"128"],["B","ADD",38,63,"-64"],["B","ADD",56,61,"1"],["B","ADD",55,61,"1"],["B","ADD",53,61,"1"],["B","ADD",51,61,"1"],["B","ADD",49,61,"1"],["B","ADD",47,61,"1"],["B","ADD",45,61,"1"],["B","ADD",43,61,"1"],["B","ADD",41,61,"1"],["B","ADD",39,61,"-128"],["B","ADD",38,61,"64"],["B","ADD",56,60,"-2"],["B","ADD",55,60,"-2"],["B","ADD",53,60,"-2"],["B","ADD",51,60,"-2"],["B","ADD",49,60,"-2"],["B","ADD",47,60,"-2"],["B","ADD",45,60,"-2"],["B","ADD",43,60,"-2"],["B","ADD",41,60,"-2"],["B","ADD",39,60,"256"],["B","ADD",38,60,"-128"],["B","ADD",56,59,"1"],["B","ADD",55,59,"1"],["B","ADD",53,59,"1"],["B","ADD",51,59,"1"],["B","ADD",49,59,"1"],["B","ADD",47,59,"1"],["B","ADD",45,59,"1"],["B","ADD",43,59,"1"],["B","ADD",41,59,"1"],["B","ADD",39,59,"-128"],["B","ADD",38,59,"64"],["B","ADD",39,57,"256"],["B","ADD",38,57,"-128"],["B","ADD",55,56,"-3/2"],["B","ADD",53,56,"-1"],["B","ADD",51,56,"-1"],["B","ADD",49,56,"-1"],["B","ADD",47,56,"-1"],["B","ADD",45,56,"-1"],["B","ADD",43,56,"-1"],["B","ADD",41,56,"-1"],["B","ADD",39,56,"128"],["B","ADD",38,56,"-64"],["B","SCALE",56,"1/2"],["B","ADD",53,55,"-1"],["B","ADD",51,55,"-1"],["B","ADD",49,55,"-1"],["B","ADD",47,55,"-1"],["B","ADD",45,55,"-1"],["B","ADD",43,55,"-1"],["B","ADD",41,55,"-1"],["B","ADD",39,55,"128"],["B","ADD",38,55,"64"],["B","SCALE",55,"-1"],["B","ADD",57,55,"1"],["B","SWAP",55,56],["B","ADD",53,54,"1/2"],["B","ADD",51,54,"1/2"],["B","ADD",49,54,"1/2"],["B","ADD",47,54,"1/2"],["B","ADD",45,54,"1/2"],["B","ADD",43,54,"1/2"],["B","ADD",41,54,"1/2"],["B","ADD",39,54,"-64"],["B","ADD",38,54,"-32"],["B","ADD",57,54,"1/2"],["B","ADD",56,54,"1/2"],["B","ADD",55,54,"1/2"],["B","ADD",51,52,"-1/2"],["B","ADD",49,52,"-1/2"],["B","ADD",47,52,"-1/2"],["B","ADD",45,52,"-1/2"],["B","ADD",43,52,"-1/2"],["B","ADD",41,52,"-1/2"],["B","ADD",39,52,"64"],["B","ADD",38,52,"32"],["B","ADD",57,52,"-1/2"],["B","ADD",56,52,"-1/2"],["B","ADD",55,52,"-1/2"],["B","ADD",53,52,"-1/2"],["B","ADD",49,51,"-1"],["B","ADD",47,51,"-2"],["B","ADD",45,51,"-1"],["B","ADD",43,51,"-1"],["B","ADD",41,51,"-1"],["B","ADD",39,51,"128"],["B","ADD",38,51,"64"],["B","ADD",57,51,"-1"],["B","ADD",56,51,"-1"],["B","ADD",55,51,"-1"],["B","ADD",53,51,"-1"],["B","ADD",47,50,"1/2"],["B","ADD",51,50,"-1/2"],["B","ADD",47,49,"-1"],["B","ADD",45,49,"-1"],["B","ADD",43,49,"-1"],["B","ADD",41,49,"-1"],["B","ADD",39,49,"128"],["B","ADD",38,49,"64"],["B","SCALE",49,"-1"],["B","ADD",57,49,"1"],["B","ADD",56,49,"1"],["B","ADD",55,49,"1"],["B","ADD",53,49,"1"],["B","SWAP",49,51],["B","ADD",47,48,"-1/2"],["B","ADD",49,48,"1/2"],["B","ADD",45,47,"-1"],["B","ADD",43,47,"-1"],["B","ADD",41,47,"-1"],["B","ADD",39,47,"128"],["B","ADD",38,47,"64"],["B","SCALE",47,"-1"],["B","ADD",57,47,"1"],["B","ADD",56,47,"1"],["B","ADD",55,47,"1"],["B","ADD",53,47,"1"],["B","ADD",51,47,"1"],["B","SWAP",47,49],["B","ADD",45,46,"1/2"],["B","ADD",43,46,"1/2"],["B","ADD",41,46,"1/2"],["B","ADD",39,46,"-64"],["B","ADD",38,46,"-32"],["B","ADD",57,46,"1/2"],["B","ADD",56,46,"1/2"],["B","ADD",55,46,"1/2"],["B","ADD",53,46,"1/2"],["B","ADD",51,46,"1/2"],["B","ADD",49,46,"1/2"],["B","ADD",47,46,"1/2"],["B","ADD",43,44,"-1/2"],["B","ADD",41,44,"-1/2"],["B","ADD",39,44,"64"],["B","ADD",38,44,"32"],["B","ADD",57,44,"-1/2"],["B","ADD",56,44,"-1/2"],["B","ADD",55,44,"-1/2"],["B","ADD",53,44,"-1/2"],["B","ADD",51,44,"-1/2"],["B","ADD",49,44,"-1/2"],["B","ADD",47,44,"-1/2"],["B","ADD",45,44,"-1/2"],["B","ADD",41,43,"-1"],["B","ADD",39,43,"128"],["B","ADD",38,43,"64"],["B","SCALE",43,"2"],["B","ADD",57,43,"-1/2"],["B","ADD",56,43,"-1/2"],["B","ADD",55,43,"-1/2"],["B","ADD",53,43,"-1/2"],["B","ADD",51,43,"-1/2"],["B","ADD",49,43,"-1/2"],["B","ADD",47,43,"-1/2"],["B","ADD",45,43,"-1/2"],["B","ADD",43,42,"-1"],["B","ADD",39,41,"128"],["B","ADD",38,41,"64"],["B","SCALE",41,"-1"],["B","ADD",57,41,"1"],["B","ADD",56,41,"1"],["B","ADD",55,41,"1"],["B","ADD",53,41,"1"],["B","ADD",51,41,"1"],["B","ADD",49,41,"1"],["B","ADD",47,41,"1"],["B","ADD",45,41,"1"],["B","SWAP",41,43],["B","ADD",41,40,"1"],["B","ADD",38,39,"-1/2"],["B","SCALE",39,"1/128"],["B","ADD",57,39,"1"],["B","ADD",56,39,"1"],["B","ADD",55,39,"1"],["B","ADD",53,39,"1"],["B","ADD",51,39,"1"],["B","ADD",49,39,"1"],["B","ADD",47,39,"1"],["B","ADD",45,39,"1"],["B","ADD",43,39,"1"],["B","SWAP",39,41],["B","SCALE",38,"1/128"],["B","ADD",57,38,"2"],["B","ADD",56,38,"2"],["B","ADD",55,38,"1"],["B","ADD",53,38,"1"],["B","ADD",51,38,"1"],["B","ADD",49,38,"1"],["B","ADD",47,38,"1"],["B","ADD",45,38,"1"],["B","ADD",43,38,"1"],["B","ADD",41,38,"1"],["B","ADD",39,38,"1"],["B","LAMBDA",38,-1],["B","QUERY",38,39,-1],["B","LAMBDA",38,1],["B","ADD",38,39,"-1"],["B","ADD",39,75,"-1"],["B","ADD",39,73,"1"],["B","ADD",39,72,"-2"],["B","ADD",39,71,"1"],["B","ADD",39,69,"-1"],["B","ADD",39,68,"2"],["B","ADD",39,67,"-1"],["B","ADD",39,65,"1"],["B","ADD",39,64,"-2"],["B","ADD",39,63,"1"],["B","ADD",39,61,"-1"],["B","ADD",39,60,"2"],["B","ADD",39,59,"-1"],["B","ADD",39,56,"-1"],["B","ADD",39,55,"2"],["B","ADD",39,54,"-1"],["B","ADD",39,52,"1"],["B","ADD",39,51,"-2"],["B","ADD",39,50,"1"],["B","ADD",39,48,"-1"],["B","ADD",39,47,"2"],["B","ADD",39,46,"-1"],["B","ADD",39,44,"1"],["B","ADD",39,43,"-2"],["B","ADD",39,42,"1"],["B","ADD",39,40,"-1"],["B","ADD",38,39,"-1"],["B","ADD",57,39,"-1"],["B","ADD",56,39,"-2"],["B","ADD",55,39,"-1"],["B","ADD",54,39,"-2"],["B","ADD",53,39,"-1"],["B","ADD",52,39,"-2"],["B","ADD",51,39,"-1"],["B","ADD",50,39,"-2"],["B","ADD",49,39,"-1"],["B","ADD",48,39,"-2"],["B","ADD",47,39,"-1"],["B","ADD",46,39,"-2"],["B","ADD",45,39,"-1"],["B","ADD",44,39,"-2"],["B","ADD",43,39,"-1"],["B","ADD",42,39,"-2"],["B","ADD",41,39,"-1"],["B","ADD",40,39,"-2"],["B","SCALE",38,"1/2"],["B","ADD",74,38,"-1"],["B","ADD",72,38,"-1"],["B","ADD",70,38,"-1"],["B","ADD",68,38,"-1"],["B","ADD",66,38,"-1"],["B","ADD",64,38,"-1"],["B","ADD",62,38,"-1"],["B","ADD",60,38,"-1"],["B","ADD",58,38,"-1"],["B","ADD",57,38,"-1"],["B","ADD",56,38,"-2"],["B","ADD",55,38,"-1"],["B","ADD",54,38,"-2"],["B","ADD",53,38,"-1"],["B","ADD",52,38,"-2"],["B","ADD",51,38,"-1"],["B","ADD",50,38,"-2"],["B","ADD",49,38,"-1"],["B","ADD",48,38,"-2"],["B","ADD",47,38,"-1"],["B","ADD",46,38,"-2"],["B","ADD",45,38,"-1"],["B","ADD",44,38,"-2"],["B","ADD",43,38,"-1"],["B","ADD",42,38,"-2"],["B","ADD",41,38,"-1"],["B","ADD",40,38,"-2"],["B","ADD",39,38,"1"],["B","LAMBDA",38,-1],["B","QUERY",38,39,-1],["B","LAMBDA",38,1],["B","ADD",38,39,"-1"],["B","SCALE",38,"2"],["B","ADD",75,38,"-1"],["B","ADD",74,38,"-1/2"],["B","ADD",73,38,"-1"],["B","ADD",72,38,"-1/2"],["B","ADD",71,38,"-1"],["B","ADD",70,38,"-1/2"],["B","ADD",69,38,"-1"],["B","ADD",68,38,"-1/2"],["B","ADD",67,38,"-1"],["B","ADD",66,38,"-1/2"],["B","ADD",65,38,"-1"],["B","ADD",64,38,"-1/2"],["B","ADD",63,38,"-1"],["B","ADD",62,38,"-1/2"],["B","ADD",61,38,"-1"],["B","ADD",60,38,"-1/2"],["B","ADD",59,38,"-1"],["B","ADD",58,38,"-1/2"],["B","ADD",57,38,"-1/2"],["B","ADD",55,38,"-1/2"],["B","ADD",53,38,"-1/2"],["B","ADD",51,38,"-1/2"],["B","ADD",49,38,"-1/2"],["B","ADD",47,38,"-1/2"],["B","ADD",45,38,"-1/2"],["B","ADD",43,38,"-1/2"],["B","ADD",41,38,"-1/2"],["B","ADD",39,38,"1/2"],["B","LAMBDA",38,-1],["B","QUERY",38,39,-1],["B","LAMBDA",38,1],["B","ADD",38,39,"-1"],["B","ADD",74,75,"-1/2"],["B","ADD",73,75,"-1"],["B","ADD",72,75,"-1"],["B","ADD",71,75,"-1"],["B","ADD",70,75,"-1"],["B","ADD",69,75,"-1"],["B","ADD",68,75,"-1"],["B","ADD",67,75,"-1"],["B","ADD",66,75,"-1"],["B","ADD",65,75,"-1"],["B","ADD",64,75,"-1"],["B","ADD",63,75,"-1"],["B","ADD",62,75,"-1"],["B","ADD",61,75,"-1"],["B","ADD",60,75,"-1"],["B","ADD",59,75,"-1"],["B","ADD",58,75,"-1"],["B","ADD",56,75,"1"],["B","ADD",54,75,"1"],["B","ADD",52,75,"1"],["B","ADD",50,75,"1"],["B","ADD",48,75,"1"],["B","ADD",46,75,"1"],["B","ADD",44,75,"1"],["B","ADD",42,75,"1"],["B","ADD",40,75,"1"],["B","ADD",38,75,"1"],["B","SCALE",75,"-1/2"],["B","ADD",73,74,"2"],["B","ADD",72,74,"2"],["B","ADD",71,74,"2"],["B","ADD",70,74,"2"],["B","ADD",69,74,"2"],["B","ADD",68,74,"2"],["B","ADD",67,74,"2"],["B","ADD",66,74,"2"],["B","ADD",65,74,"2"],["B","ADD",64,74,"2"],["B","ADD",63,74,"2"],["B","ADD",62,74,"2"],["B","ADD",61,74,"2"],["B","ADD",60,74,"2"],["B","ADD",59,74,"2"],["B","ADD",58,74,"2"],["B","ADD",56,74,"-2"],["B","ADD",54,74,"-2"],["B","ADD",52,74,"-2"],["B","ADD",50,74,"-2"],["B","ADD",48,74,"-2"],["B","ADD",46,74,"-2"],["B","ADD",44,74,"-2"],["B","ADD",42,74,"-2"],["B","ADD",40,74,"-2"],["B","ADD",38,74,"-2"],["B","SCALE",74,"2"],["B","ADD",75,74,"3/2"],["B","SWAP",74,75],["B","ADD",71,72,"-1/2"],["B","ADD",70,72,"-1"],["B","ADD",69,72,"-1"],["B","ADD",68,72,"-1"],["B","ADD",67,72,"-1"],["B","ADD",66,72,"-1"],["B","ADD",65,72,"-1"],["B","ADD",64,72,"-1"],["B","ADD",63,72,"-1"],["B","ADD",62,72,"-1"],["B","ADD",61,72,"-1"],["B","ADD",60,72,"-1"],["B","ADD",59,72,"-1"],["B","ADD",58,72,"-1"],["B","ADD",56,72,"1"],["B","ADD",54,72,"1"],["B","ADD",52,72,"1"],["B","ADD",50,72,"1"],["B","ADD",48,72,"1"],["B","ADD",46,72,"1"],["B","ADD",44,72,"1"],["B","ADD",42,72,"1"],["B","ADD",40,72,"1"],["B","ADD",38,72,"1"],["B","SCALE",72,"-1/2"],["B","ADD",75,72,"2"],["B","ADD",74,72,"2"],["B","ADD",73,72,"2"],["B","ADD",70,71,"2"],["B","ADD",69,71,"2"],["B","ADD",68,71,"2"],["B","ADD",67,71,"2"],["B","ADD",66,71,"2"],["B","ADD",65,71,"2"],["B","ADD",64,71,"2"],["B","ADD",63,71,"2"],["B","ADD",62,71,"2"],["B","ADD",61,71,"2"],["B","ADD",60,71,"2"],["B","ADD",59,71,"2"],["B","ADD",58,71,"2"],["B","ADD",56,71,"-2"],["B","ADD",54,71,"-2"],["B","ADD",52,71,"-2"],["B","ADD",50,71,"-2"],["B","ADD",48,71,"-2"],["B","ADD",46,71,"-2"],["B","ADD",44,71,"-2"],["B","ADD",42,71,"-2"],["B","ADD",40,71,"-2"],["B","ADD",38,71,"-2"],["B","SCALE",71,"2"],["B","ADD",75,71,"1"],["B","ADD",74,71,"1"],["B","ADD",73,71,"1"],["B","ADD",72,71,"3/2"],["B","SWAP",71,72],["B","ADD",69,70,"-1"],["B","ADD",68,70,"-1/2"],["B","ADD",67,70,"-1"],["B","ADD",66,70,"-1"],["B","ADD",65,70,"-1"],["B","ADD",64,70,"-1"],["B","ADD",63,70,"-1"],["B","ADD",62,70,"-1"],["B","ADD",61,70,"-1"],["B","ADD",60,70,"-1"],["B","ADD",59,70,"-1"],["B","ADD",58,70,"-1"],["B","ADD",56,70,"1"],["B","ADD",54,70,"1"],["B","ADD",52,70,"1"],["B","ADD",50,70,"1"],["B","ADD",48,70,"1"],["B","ADD",46,70,"1"],["B","ADD",44,70,"1"],["B","ADD",42,70,"1"],["B","ADD",40,70,"1"],["B","ADD",38,70,"1"],["B","SCALE",70,"-1/2"],["B","ADD",75,70,"2"],["B","ADD",74,70,"2"],["B","ADD",73,70,"2"],["B","ADD",72,70,"2"],["B","ADD",71,70,"2"],["B","ADD",68,69,"1/2"],["B","ADD",67,69,"-1"],["B","ADD",66,69,"-1"],["B","ADD",65,69,"-1"],["B","ADD",64,69,"-1"],["B","ADD",63,69,"-1"],["B","ADD",62,69,"-1"],["B","ADD",61,69,"-1"],["B","ADD",60,69,"-1"],["B","ADD",59,69,"-1"],["B","ADD",58,69,"-1"],["B","ADD",56,69,"1"],["B","ADD",54,69,"1"],["B","ADD",52,69,"1"],["B","ADD",50,69,"1"],["B","ADD",48,69,"1"],["B","ADD",46,69,"1"],["B","ADD",44,69,"1"],["B","ADD",42,69,"1"],["B","ADD",40,69,"1"],["B","ADD",38,69,"1"],["B","SCALE",69,"-1"],["B","ADD",75,69,"1"],["B","ADD",74,69,"1"],["B","ADD",73,69,"1"],["B","ADD",72,69,"1"],["B","ADD",71,69,"1"],["B","ADD",70,69,"3/2"],["B","SWAP",69,70],["B","ADD",67,68,"2"],["B","ADD",66,68,"2"],["B","ADD",65,68,"2"],["B","ADD",64,68,"2"],["B","ADD",63,68,"2"],["B","ADD",62,68,"2"],["B","ADD",61,68,"2"],["B","ADD",60,68,"2"],["B","ADD",59,68,"2"],["B","ADD",58,68,"2"],["B","ADD",56,68,"-2"],["B","ADD",54,68,"-2"],["B","ADD",52,68,"-2"],["B","ADD",50,68,"-2"],["B","ADD",48,68,"-2"],["B","ADD",46,68,"-2"],["B","ADD",44,68,"-2"],["B","ADD",42,68,"-2"],["B","ADD",40,68,"-2"],["B","ADD",38,68,"-2"],["B","SCALE",68,"2"],["B","ADD",75,68,"1"],["B","ADD",74,68,"1"],["B","ADD",73,68,"1"],["B","ADD",72,68,"1"],["B","ADD",71,68,"1"],["B","ADD",70,68,"1"],["B","ADD",69,68,"3/2"],["B","SWAP",68,69],["B","ADD",66,67,"-1/2"],["B","ADD",65,67,"-1"],["B","ADD",64,67,"-1"],["B","ADD",63,67,"-1"],["B","ADD",62,67,"-1"],["B","ADD",61,67,"-1"],["B","ADD",60,67,"-1"],["B","ADD",59,67,"-1"],["B","ADD",58,67,"-1"],["B","ADD",56,67,"1"],["B","ADD",54,67,"1"],["B","ADD",52,67,"1"],["B","ADD",50,67,"1"],["B","ADD",48,67,"1"],["B","ADD",46,67,"1"],["B","ADD",44,67,"1"],["B","ADD",42,67,"1"],["B","ADD",40,67,"1"],["B","ADD",38,67,"1"],["B","SCALE",67,"-1/2"],["B","ADD",75,67,"2"],["B","ADD",74,67,"2"],["B","ADD",73,67,"2"],["B","ADD",72,67,"2"],["B","ADD",71,67,"2"],["B","ADD",70,67,"2"],["B","ADD",69,67,"2"],["B","ADD",68,67,"2"],["B","ADD",65,66,"2"],["B","ADD",64,66,"2"],["B","ADD",63,66,"2"],["B","ADD",62,66,"2"],["B","ADD",61,66,"2"],["B","ADD",60,66,"2"],["B","ADD",59,66,"2"],["B","ADD",58,66,"2"],["B","ADD",56,66,"-2"],["B","ADD",54,66,"-2"],["B","ADD",52,66,"-2"],["B","ADD",50,66,"-2"],["B","ADD",48,66,"-2"],["B","ADD",46,66,"-2"],["B","ADD",44,66,"-2"],["B","ADD",42,66,"-2"],["B","ADD",40,66,"-2"],["B","ADD",38,66,"-2"],["B","SCALE",66,"2"],["B","ADD",75,66,"1"],["B","ADD",74,66,"1"],["B","ADD",73,66,"1"],["B","ADD",72,66,"1"],["B","ADD",71,66,"1"],["B","ADD",70,66,"1"],["B","ADD",69,66,"1"],["B","ADD",68,66,"1"],["B","ADD",67,66,"3/2"],["B","SWAP",66,67],["B","ADD",63,64,"-1/2"],["B","ADD",62,64,"-1"],["B","ADD",61,64,"-1"],["B","ADD",60,64,"-1"],["B","ADD",59,64,"-1"],["B","ADD",58,64,"-1"],["B","ADD",56,64,"1"],["B","ADD",54,64,"1"],["B","ADD",52,64,"1"],["B","ADD",50,64,"1"],["B","ADD",48,64,"1"],["B","ADD",46,64,"1"],["B","ADD",44,64,"1"],["B","ADD",42,64,"1"],["B","ADD",40,64,"1"],["B","ADD",38,64,"1"],["B","SCALE",64,"-1/2"],["B","ADD",75,64,"2"],["B","ADD",74,64,"2"],["B","ADD",73,64,"2"],["B","ADD",72,64,"2"],["B","ADD",71,64,"2"],["B","ADD",70,64,"2"],["B","ADD",69,64,"2"],["B","ADD",68,64,"2"],["B","ADD",67,64,"2"],["B","ADD",66,64,"2"],["B","ADD",65,64,"2"],["B","ADD",62,63,"2"],["B","ADD",61,63,"2"],["B","ADD",60,63,"2"],["B","ADD",59,63,"2"],["B","ADD",58,63,"2"],["B","ADD",56,63,"-2"],["B","ADD",54,63,"-2"],["B","ADD",52,63,"-2"],["B","ADD",50,63,"-2"],["B","ADD",48,63,"-2"],["B","ADD",46,63,"-2"],["B","ADD",44,63,"-2"],["B","ADD",42,63,"-2"],["B","ADD",40,63,"-2"],["B","ADD",38,63,"-2"],["B","SCALE",63,"2"],["B","ADD",75,63,"1"],["B","ADD",74,63,"1"],["B","ADD",73,63,"1"],["B","ADD",72,63,"1"],["B","ADD",71,63,"1"],["B","ADD",70,63,"1"],["B","ADD",69,63,"1"],["B","ADD",68,63,"1"],["B","ADD",67,63,"1"],["B","ADD",66,63,"1"],["B","ADD",65,63,"1"],["B","ADD",64,63,"3/2"],["B","SWAP",63,64],["B","ADD",61,62,"-1"],["B","ADD",60,62,"-1/2"],["B","ADD",59,62,"-1"],["B","ADD",58,62,"-1"],["B","ADD",56,62,"1"],["B","ADD",54,62,"1"],["B","ADD",52,62,"1"],["B","ADD",50,62,"1"],["B","ADD",48,62,"1"],["B","ADD",46,62,"1"],["B","ADD",44,62,"1"],["B","ADD",42,62,"1"],["B","ADD",40,62,"1"],["B","ADD",38,62,"1"],["B","SCALE",62,"-1/2"],["B","ADD",75,62,"2"],["B","ADD",74,62,"2"],["B","ADD",73,62,"2"],["B","ADD",72,62,"2"],["B","ADD",71,62,"2"],["B","ADD",70,62,"2"],["B","ADD",69,62,"2"],["B","ADD",68,62,"2"],["B","ADD",67,62,"2"],["B","ADD",66,62,"2"],["B","ADD",65,62,"2"],["B","ADD",64,62,"2"],["B","ADD",63,62,"2"],["B","ADD",60,61,"1/2"],["B","ADD",59,61,"-1"],["B","ADD",58,61,"-1"],["B","ADD",56,61,"1"],["B","ADD",54,61,"1"],["B","ADD",52,61,"1"],["B","ADD",50,61,"1"],["B","ADD",48,61,"1"],["B","ADD",46,61,"1"],["B","ADD",44,61,"1"],["B","ADD",42,61,"1"],["B","ADD",40,61,"1"],["B","ADD",38,61,"1"],["B","SCALE",61,"-1"],["B","ADD",75,61,"1"],["B","ADD",74,61,"1"],["B","ADD",73,61,"1"],["B","ADD",72,61,"1"],["B","ADD",71,61,"1"],["B","ADD",70,61,"1"],["B","ADD",69,61,"1"],["B","ADD",68,61,"1"],["B","ADD",67,61,"1"],["B","ADD",66,61,"1"],["B","ADD",65,61,"1"],["B","ADD",64,61,"1"],["B","ADD",63,61,"1"],["B","ADD",62,61,"3/2"],["B","SWAP",61,62],["B","ADD",59,60,"2"],["B","ADD",58,60,"2"],["B","ADD",56,60,"-2"],["B","ADD",54,60,"-2"],["B","ADD",52,60,"-2"],["B","ADD",50,60,"-2"],["B","ADD",48,60,"-2"],["B","ADD",46,60,"-2"],["B","ADD",44,60,"-2"],["B","ADD",42,60,"-2"],["B","ADD",40,60,"-2"],["B","ADD",38,60,"-2"],["B","SCALE",60,"2"],["B","ADD",75,60,"1"],["B","ADD",74,60,"1"],["B","ADD",73,60,"1"],["B","ADD",72,60,"1"],["B","ADD",71,60,"1"],["B","ADD",70,60,"1"],["B","ADD",69,60,"1"],["B","ADD",68,60,"1"],["B","ADD",67,60,"1"],["B","ADD",66,60,"1"],["B","ADD",65,60,"1"],["B","ADD",64,60,"1"],["B","ADD",63,60,"1"],["B","ADD",62,60,"1"],["B","ADD",61,60,"3/2"],["B","SWAP",60,61],["B","ADD",58,59,"-1/2"],["B","ADD",56,59,"1"],["B","ADD",54,59,"1"],["B","ADD",52,59,"1"],["B","ADD",50,59,"1"],["B","ADD",48,59,"1"],["B","ADD",46,59,"1"],["B","ADD",44,59,"1"],["B","ADD",42,59,"1"],["B","ADD",40,59,"1"],["B","ADD",38,59,"1"],["B","SCALE",59,"-1/2"],["B","ADD",75,59,"2"],["B","ADD",74,59,"2"],["B","ADD",73,59,"2"],["B","ADD",72,59,"2"],["B","ADD",71,59,"2"],["B","ADD",70,59,"2"],["B","ADD",69,59,"2"],["B","ADD",68,59,"2"],["B","ADD",67,59,"2"],["B","ADD",66,59,"2"],["B","ADD",65,59,"2"],["B","ADD",64,59,"2"],["B","ADD",63,59,"2"],["B","ADD",62,59,"2"],["B","ADD",61,59,"2"],["B","ADD",60,59,"2"],["B","ADD",56,58,"-2"],["B","ADD",54,58,"-2"],["B","ADD",52,58,"-2"],["B","ADD",50,58,"-2"],["B","ADD",48,58,"-2"],["B","ADD",46,58,"-2"],["B","ADD",44,58,"-2"],["B","ADD",42,58,"-2"],["B","ADD",40,58,"-2"],["B","ADD",38,58,"-2"],["B","SCALE",58,"2"],["B","ADD",75,58,"1"],["B","ADD",74,58,"1"],["B","ADD",73,58,"1"],["B","ADD",72,58,"1"],["B","ADD",71,58,"1"],["B","ADD",70,58,"1"],["B","ADD",69,58,"1"],["B","ADD",68,58,"1"],["B","ADD",67,58,"1"],["B","ADD",66,58,"1"],["B","ADD",65,58,"1"],["B","ADD",64,58,"1"],["B","ADD",63,58,"1"],["B","ADD",62,58,"1"],["B","ADD",61,58,"1"],["B","ADD",60,58,"1"],["B","ADD",59,58,"3/2"],["B","SWAP",58,59],["B","ADD",56,57,"-2"],["B","ADD",54,57,"-2"],["B","ADD",52,57,"-2"],["B","ADD",50,57,"-2"],["B","ADD",48,57,"-2"],["B","ADD",46,57,"-2"],["B","ADD",44,57,"-2"],["B","ADD",42,57,"-2"],["B","ADD",40,57,"-2"],["B","ADD",38,57,"-2"],["B","ADD",75,57,"2"],["B","ADD",74,57,"2"],["B","ADD",73,57,"2"],["B","ADD",72,57,"2"],["B","ADD",71,57,"2"],["B","ADD",70,57,"2"],["B","ADD",69,57,"2"],["B","ADD",68,57,"2"],["B","ADD",67,57,"2"],["B","ADD",66,57,"2"],["B","ADD",65,57,"2"],["B","ADD",64,57,"2"],["B","ADD",63,57,"2"],["B","ADD",62,57,"2"],["B","ADD",61,57,"2"],["B","ADD",60,57,"2"],["B","ADD",59,57,"2"],["B","ADD",58,57,"2"],["B","ADD",54,56,"-2"],["B","ADD",52,56,"-2"],["B","ADD",50,56,"-2"],["B","ADD",48,56,"-2"],["B","ADD",46,56,"-2"],["B","ADD",44,56,"-2"],["B","ADD",42,56,"-2"],["B","ADD",40,56,"-2"],["B","ADD",38,56,"-2"],["B","SCALE",56,"-1"],["B","ADD",75,56,"-2"],["B","ADD",74,56,"-2"],["B","ADD",73,56,"-2"],["B","ADD",72,56,"-2"],["B","ADD",71,56,"-2"],["B","ADD",70,56,"-2"],["B","ADD",69,56,"-2"],["B","ADD",68,56,"-2"],["B","ADD",67,56,"-2"],["B","ADD",66,56,"-2"],["B","ADD",65,56,"-2"],["B","ADD",64,56,"-2"],["B","ADD",63,56,"-2"],["B","ADD",62,56,"-2"],["B","ADD",61,56,"-2"],["B","ADD",60,56,"-2"],["B","ADD",59,56,"-2"],["B","ADD",58,56,"-2"],["B","ADD",54,55,"2"],["B","ADD",52,55,"2"],["B","ADD",50,55,"2"],["B","ADD",48,55,"2"],["B","ADD",46,55,"2"],["B","ADD",44,55,"2"],["B","ADD",42,55,"2"],["B","ADD",40,55,"2"],["B","ADD",38,55,"2"],["B","ADD",75,55,"-2"],["B","ADD",74,55,"-2"],["B","ADD",73,55,"-2"],["B","ADD",72,55,"-2"],["B","ADD",71,55,"-2"],["B","ADD",70,55,"-2"],["B","ADD",69,55,"-2"],["B","ADD",68,55,"-2"],["B","ADD",67,55,"-2"],["B","ADD",66,55,"-2"],["B","ADD",65,55,"-2"],["B","ADD",64,55,"-2"],["B","ADD",63,55,"-2"],["B","ADD",62,55,"-2"],["B","ADD",61,55,"-2"],["B","ADD",60,55,"-2"],["B","ADD",59,55,"-2"],["B","ADD",58,55,"-2"],["B","ADD",56,55,"2"],["B","ADD",52,53,"-2"],["B","ADD",50,53,"-2"],["B","ADD",48,53,"-2"],["B","ADD",46,53,"-2"],["B","ADD",44,53,"-2"],["B","ADD",42,53,"-2"],["B","ADD",40,53,"-2"],["B","ADD",38,53,"-2"],["B","ADD",75,53,"2"],["B","ADD",74,53,"2"],["B","ADD",73,53,"2"],["B","ADD",72,53,"2"],["B","ADD",71,53,"2"],["B","ADD",70,53,"2"],["B","ADD",69,53,"2"],["B","ADD",68,53,"2"],["B","ADD",67,53,"2"],["B","ADD",66,53,"2"],["B","ADD",65,53,"2"],["B","ADD",64,53,"2"],["B","ADD",63,53,"2"],["B","ADD",62,53,"2"],["B","ADD",61,53,"2"],["B","ADD",60,53,"2"],["B","ADD",59,53,"2"],["B","ADD",58,53,"2"],["B","ADD",56,53,"-2"],["B","ADD",54,53,"-2"],["B","ADD",50,52,"-2"],["B","ADD",48,52,"-2"],["B","ADD",46,52,"-2"],["B","ADD",44,52,"-2"],["B","ADD",42,52,"-2"],["B","ADD",40,52,"-2"],["B","ADD",38,52,"-2"],["B","SCALE",52,"-1"],["B","ADD",75,52,"-2"],["B","ADD",74,52,"-2"],["B","ADD",73,52,"-2"],["B","ADD",72,52,"-2"],["B","ADD",71,52,"-2"],["B","ADD",70,52,"-2"],["B","ADD",69,52,"-2"],["B","ADD",68,52,"-2"],["B","ADD",67,52,"-2"],["B","ADD",66,52,"-2"],["B","ADD",65,52,"-2"],["B","ADD",64,52,"-2"],["B","ADD",63,52,"-2"],["B","ADD",62,52,"-2"],["B","ADD",61,52,"-2"],["B","ADD",60,52,"-2"],["B","ADD",59,52,"-2"],["B","ADD",58,52,"-2"],["B","ADD",56,52,"2"],["B","ADD",54,52,"2"],["B","ADD",50,51,"2"],["B","ADD",48,51,"2"],["B","ADD",46,51,"2"],["B","ADD",44,51,"2"],["B","ADD",42,51,"2"],["B","ADD",40,51,"2"],["B","ADD",38,51,"2"],["B","ADD",75,51,"-2"],["B","ADD",74,51,"-2"],["B","ADD",73,51,"-2"],["B","ADD",72,51,"-2"],["B","ADD",71,51,"-2"],["B","ADD",70,51,"-2"],["B","ADD",69,51,"-2"],["B","ADD",68,51,"-2"],["B","ADD",67,51,"-2"],["B","ADD",66,51,"-2"],["B","ADD",65,51,"-2"],["B","ADD",64,51,"-2"],["B","ADD",63,51,"-2"],["B","ADD",62,51,"-2"],["B","ADD",61,51,"-2"],["B","ADD",60,51,"-2"],["B","ADD",59,51,"-2"],["B","ADD",58,51,"-2"],["B","ADD",56,51,"2"],["B","ADD",54,51,"2"],["B","ADD",52,51,"2"],["B","ADD",48,49,"-2"],["B","ADD",46,49,"-2"],["B","ADD",44,49,"-2"],["B","ADD",42,49,"-2"],["B","ADD",40,49,"-2"],["B","ADD",38,49,"-2"],["B","ADD",75,49,"2"],["B","ADD",74,49,"2"],["B","ADD",73,49,"2"],["B","ADD",72,49,"2"],["B","ADD",71,49,"2"],["B","ADD",70,49,"2"],["B","ADD",69,49,"2"],["B","ADD",68,49,"2"],["B","ADD",67,49,"2"],["B","ADD",66,49,"2"],["B","ADD",65,49,"2"],["B","ADD",64,49,"2"],["B","ADD",63,49,"2"],["B","ADD",62,49,"2"],["B","ADD",61,49,"2"],["B","ADD",60,49,"2"],["B","ADD",59,49,"2"],["B","ADD",58,49,"2"],["B","ADD",56,49,"-2"],["B","ADD",54,49,"-2"],["B","ADD",52,49,"-2"],["B","ADD",50,49,"-2"],["B","ADD",46,48,"-2"],["B","ADD",44,48,"-2"],["B","ADD",42,48,"-2"],["B","ADD",40,48,"-2"],["B","ADD",38,48,"-2"],["B","SCALE",48,"-1"],["B","ADD",75,48,"-2"],["B","ADD",74,48,"-2"],["B","ADD",73,48,"-2"],["B","ADD",72,48,"-2"],["B","ADD",71,48,"-2"],["B","ADD",70,48,"-2"],["B","ADD",69,48,"-2"],["B","ADD",68,48,"-2"],["B","ADD",67,48,"-2"],["B","ADD",66,48,"-2"],["B","ADD",65,48,"-2"],["B","ADD",64,48,"-2"],["B","ADD",63,48,"-2"],["B","ADD",62,48,"-2"],["B","ADD",61,48,"-2"],["B","ADD",60,48,"-2"],["B","ADD",59,48,"-2"],["B","ADD",58,48,"-2"],["B","ADD",56,48,"2"],["B","ADD",54,48,"2"],["B","ADD",52,48,"2"],["B","ADD",50,48,"2"],["B","ADD",46,47,"2"],["B","ADD",44,47,"2"],["B","ADD",42,47,"2"],["B","ADD",40,47,"2"],["B","ADD",38,47,"2"],["B","ADD",75,47,"-2"],["B","ADD",74,47,"-2"],["B","ADD",73,47,"-2"],["B","ADD",72,47,"-2"],["B","ADD",71,47,"-2"],["B","ADD",70,47,"-2"],["B","ADD",69,47,"-2"],["B","ADD",68,47,"-2"],["B","ADD",67,47,"-2"],["B","ADD",66,47,"-2"],["B","ADD",65,47,"-2"],["B","ADD",64,47,"-2"],["B","ADD",63,47,"-2"],["B","ADD",62,47,"-2"],["B","ADD",61,47,"-2"],["B","ADD",60,47,"-2"],["B","ADD",59,47,"-2"],["B","ADD",58,47,"-2"],["B","ADD",56,47,"2"],["B","ADD",54,47,"2"],["B","ADD",52,47,"2"],["B","ADD",50,47,"2"],["B","ADD",48,47,"2"],["B","ADD",44,45,"-2"],["B","ADD",42,45,"-2"],["B","ADD",40,45,"-2"],["B","ADD",38,45,"-2"],["B","ADD",75,45,"2"],["B","ADD",74,45,"2"],["B","ADD",73,45,"2"],["B","ADD",72,45,"2"],["B","ADD",71,45,"2"],["B","ADD",70,45,"2"],["B","ADD",69,45,"2"],["B","ADD",68,45,"2"],["B","ADD",67,45,"2"],["B","ADD",66,45,"2"],["B","ADD",65,45,"2"],["B","ADD",64,45,"2"],["B","ADD",63,45,"2"],["B","ADD",62,45,"2"],["B","ADD",61,45,"2"],["B","ADD",60,45,"2"],["B","ADD",59,45,"2"],["B","ADD",58,45,"2"],["B","ADD",56,45,"-2"],["B","ADD",54,45,"-2"],["B","ADD",52,45,"-2"],["B","ADD",50,45,"-2"],["B","ADD",48,45,"-2"],["B","ADD",46,45,"-2"],["B","ADD",42,44,"-2"],["B","ADD",40,44,"-2"],["B","ADD",38,44,"-2"],["B","SCALE",44,"-1"],["B","ADD",75,44,"-2"],["B","ADD",74,44,"-2"],["B","ADD",73,44,"-2"],["B","ADD",72,44,"-2"],["B","ADD",71,44,"-2"],["B","ADD",70,44,"-2"],["B","ADD",69,44,"-2"],["B","ADD",68,44,"-2"],["B","ADD",67,44,"-2"],["B","ADD",66,44,"-2"],["B","ADD",65,44,"-2"],["B","ADD",64,44,"-2"],["B","ADD",63,44,"-2"],["B","ADD",62,44,"-2"],["B","ADD",61,44,"-2"],["B","ADD",60,44,"-2"],["B","ADD",59,44,"-2"],["B","ADD",58,44,"-2"],["B","ADD",56,44,"2"],["B","ADD",54,44,"2"],["B","ADD",52,44,"2"],["B","ADD",50,44,"2"],["B","ADD",48,44,"2"],["B","ADD",46,44,"2"],["B","ADD",42,43,"2"],["B","ADD",40,43,"2"],["B","ADD",38,43,"2"],["B","ADD",75,43,"-2"],["B","ADD",74,43,"-2"],["B","ADD",73,43,"-2"],["B","ADD",72,43,"-2"],["B","ADD",71,43,"-2"],["B","ADD",70,43,"-2"],["B","ADD",69,43,"-2"],["B","ADD",68,43,"-2"],["B","ADD",67,43,"-2"],["B","ADD",66,43,"-2"],["B","ADD",65,43,"-2"],["B","ADD",64,43,"-2"],["B","ADD",63,43,"-2"],["B","ADD",62,43,"-2"],["B","ADD",61,43,"-2"],["B","ADD",60,43,"-2"],["B","ADD",59,43,"-2"],["B","ADD",58,43,"-2"],["B","ADD",56,43,"2"],["B","ADD",54,43,"2"],["B","ADD",52,43,"2"],["B","ADD",50,43,"2"],["B","ADD",48,43,"2"],["B","ADD",46,43,"2"],["B","ADD",44,43,"2"],["B","ADD",40,41,"-2"],["B","ADD",38,41,"-2"],["B","ADD",75,41,"2"],["B","ADD",74,41,"2"],["B","ADD",73,41,"2"],["B","ADD",72,41,"2"],["B","ADD",71,41,"2"],["B","ADD",70,41,"2"],["B","ADD",69,41,"2"],["B","ADD",68,41,"2"],["B","ADD",67,41,"2"],["B","ADD",66,41,"2"],["B","ADD",65,41,"2"],["B","ADD",64,41,"2"],["B","ADD",63,41,"2"],["B","ADD",62,41,"2"],["B","ADD",61,41,"2"],["B","ADD",60,41,"2"],["B","ADD",59,41,"2"],["B","ADD",58,41,"2"],["B","ADD",56,41,"-2"],["B","ADD",54,41,"-2"],["B","ADD",52,41,"-2"],["B","ADD",50,41,"-2"],["B","ADD",48,41,"-2"],["B","ADD",46,41,"-2"],["B","ADD",44,41,"-2"],["B","ADD",42,41,"-2"],["B","ADD",38,40,"-2"],["B","SCALE",40,"-1"],["B","ADD",75,40,"-2"],["B","ADD",74,40,"-2"],["B","ADD",73,40,"-2"],["B","ADD",72,40,"-2"],["B","ADD",71,40,"-2"],["B","ADD",70,40,"-2"],["B","ADD",69,40,"-2"],["B","ADD",68,40,"-2"],["B","ADD",67,40,"-2"],["B","ADD",66,40,"-2"],["B","ADD",65,40,"-2"],["B","ADD",64,40,"-2"],["B","ADD",63,40,"-2"],["B","ADD",62,40,"-2"],["B","ADD",61,40,"-2"],["B","ADD",60,40,"-2"],["B","ADD",59,40,"-2"],["B","ADD",58,40,"-2"],["B","ADD",56,40,"2"],["B","ADD",54,40,"2"],["B","ADD",52,40,"2"],["B","ADD",50,40,"2"],["B","ADD",48,40,"2"],["B","ADD",46,40,"2"],["B","ADD",44,40,"2"],["B","ADD",42,40,"2"],["B","SCALE",39,"-1"],["B","ADD",75,39,"-2"],["B","ADD",74,39,"-2"],["B","ADD",73,39,"-2"],["B","ADD",72,39,"-2"],["B","ADD",71,39,"-2"],["B","ADD",70,39,"-2"],["B","ADD",69,39,"-2"],["B","ADD",68,39,"-2"],["B","ADD",67,39,"-2"],["B","ADD",66,39,"-2"],["B","ADD",65,39,"-2"],["B","ADD",64,39,"-2"],["B","ADD",63,39,"-2"],["B","ADD",62,39,"-2"],["B","ADD",61,39,"-2"],["B","ADD",60,39,"-2"],["B","ADD",59,39,"-2"],["B","ADD",58,39,"-2"],["B","SCALE",38,"1/2"],["B","ADD",75,38,"2"],["B","ADD",74,38,"2"],["B","ADD",73,38,"2"],["B","ADD",72,38,"2"],["B","ADD",71,38,"2"],["B","ADD",70,38,"2"],["B","ADD",69,38,"2"],["B","ADD",68,38,"2"],["B","ADD",67,38,"2"],["B","ADD",66,38,"2"],["B","ADD",65,38,"2"],["B","ADD",64,38,"2"],["B","ADD",63,38,"2"],["B","ADD",62,38,"2"],["B","ADD",61,38,"2"],["B","ADD",60,38,"2"],["B","ADD",59,38,"2"],["B","ADD",58,38,"2"],["B","ADD",56,38,"-2"],["B","ADD",54,38,"-2"],["B","ADD",52,38,"-2"],["B","ADD",50,38,"-2"],["B","ADD",48,38,"-2"],["B","ADD",46,38,"-2"],["B","ADD",44,38,"-2"],["B","ADD",42,38,"-2"],["B","ADD",40,38,"-2"],["B","SWAP",38,39],["B","LAMBDA",38,-1],["B","QUERY",38,39,-1],["B","LAMBDA",38,1],["B","ADD",38,39,"-1"],["B","ADD",39,75,"1"],["B","ADD",72,74,"-1"],["B","ADD",70,74,"-1"],["B","ADD",68,74,"-1"],["B","ADD",66,74,"-1"],["B","ADD",64,74,"-1"],["B","ADD",62,74,"-1"],["B","ADD",58,74,"-1/2"],["B","ADD",39,74,"1"],["B","SWAP",73,75],["B","ADD",39,72,"1"],["B","SWAP",72,74],["B","ADD",39,71,"-1"],["B","ADD",39,70,"1"],["B","ADD",39,68,"-1"],["B","ADD",39,67,"1"],["B","ADD",39,66,"-1"],["B","SWAP",65,69],["B","ADD",39,64,"1"],["B","SWAP",64,68],["B","ADD",39,63,"-1"],["B","SWAP",63,71],["B","ADD",39,62,"1"],["B","SWAP",62,70],["B","SWAP",61,75],["B","ADD",39,60,"-1"],["B","SWAP",60,74],["B","ADD",58,59,"-1"],["B","ADD",38,59,"1"],["B","SCALE",59,"-2"],["B","ADD",75,59,"1"],["B","ADD",74,59,"1"],["B","SWAP",59,73],["B","SCALE",58,"-2"],["B","ADD",72,58,"-1"],["B","ADD",70,58,"1"],["B","ADD",68,58,"1"],["B","ADD",66,58,"1"],["B","ADD",64,58,"1"],["B","ADD",62,58,"1"],["B","ADD",60,58,"1"],["B","ADD",39,57,"-1"],["B","ADD",39,56,"1"],["B","ADD",39,55,"-1"],["B","ADD",39,53,"1"],["B","ADD",39,52,"-1"],["B","ADD",39,51,"1"],["B","ADD",39,49,"-1"],["B","ADD",39,48,"1"],["B","ADD",39,47,"-1"],["B","ADD",39,45,"1"],["B","ADD",39,44,"-1"],["B","ADD",39,43,"1"],["B","ADD",39,41,"-1"],["B","ADD",39,40,"1"],["B","ADD",38,39,"1"],["B","SCALE",39,"-128"],["B","ADD",72,39,"1/64"],["B","ADD",70,39,"-1/64"],["B","ADD",68,39,"-1/64"],["B","ADD",66,39,"-1/64"],["B","ADD",64,39,"-1/64"],["B","ADD",62,39,"-1/64"],["B","ADD",60,39,"-1/64"],["B","ADD",58,39,"-1/64"],["B","SCALE",38,"128"],["B","ADD",75,38,"1/32"],["B","ADD",74,38,"1/64"],["B","ADD",73,38,"1/32"],["B","ADD",72,38,"-1/64"],["B","SWAP",38,39],["B","LAMBDA",38,-1],["J",10,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","ADD",0,1,"-1"],["A","IDLE_ONE",2,[10]],["A","IDLE_ONE",3,[10,11]],["A","IDLE_ONE",4,[10,11,12]],["A","IDLE_ONE",5,[10,11,12,13]],["A","IDLE_ONE",6,[10,11,12,13,14]],["A","IDLE_ONE",7,[10,11,12,13,14,15]],["A","IDLE_ONE",8,[10,11,12,13,14,15,16]],["A","IDLE_ONE",9,[10,11,12,13,14,15,16,17]],["A","SWAP",17,18],["A","SWAP",16,18],["A","SWAP",15,18],["A","SWAP",14,18],["A","SWAP",13,18],["A","SWAP",12,18],["A","SWAP",11,18],["A","SWAP",10,18],["A","SWAP",9,18],["A","SWAP",8,18],["A","SWAP",7,18],["A","SWAP",6,18],["A","SWAP",5,18],["A","SWAP",4,18],["A","SWAP",3,18],["A","ADD",1,2,"-1"],["A","SCALE",2,"-1"],["A","SWAP",2,18],["A","SCALE",1,"-1"],["A","ADD",18,1,"2"],["A","ADD",18,0,"2"],["A","ADD",1,0,"1"],["A","SWAP",0,18],["A","LAMBDA",0,-1],["A","ADD",19,20,"-1"],["A","IDLE_ONE",21,[10]],["A","IDLE_ONE",22,[10,11]],["A","IDLE_ONE",23,[10,11,12]],["A","IDLE_ONE",24,[10,11,12,13]],["A","IDLE_ONE",25,[10,11,12,13,14]],["A","IDLE_ONE",26,[10,11,12,13,14,15]],["A","IDLE_ONE",27,[10,11,12,13,14,15,16]],["A","IDLE_ONE",28,[10,11,12,13,14,15,16,17]],["A","SWAP",36,37],["A","SWAP",35,37],["A","SWAP",34,37],["A","SWAP",33,37],["A","SWAP",32,37],["A","SWAP",31,37],["A","SWAP",30,37],["A","SWAP",29,37],["A","SWAP",28,37],["A","SWAP",27,37],["A","SWAP",26,37],["A","SWAP",25,37],["A","SWAP",24,37],["A","SWAP",23,37],["A","SWAP",22,37],["A","ADD",20,21,"-1"],["A","SCALE",21,"-1"],["A","SWAP",21,37],["A","ADD",37,20,"-2"],["A","ADD",37,19,"2"],["A","ADD",20,19,"-1"],["A","SWAP",19,37],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",58,[10,11,12,13,14,15,16,17]],["B","IDLE_ONE",59,[10,11,12,13,14,15,16,17]],["B","IDLE_ONE",60,[10,11,12,13,14,15,16]],["B","IDLE_ONE",61,[10,11,12,13,14,15,16]],["B","IDLE_ONE",62,[10,11,12,13,14,15]],["B","IDLE_ONE",63,[10,11,12,13,14,15]],["B","IDLE_ONE",64,[10,11,12,13,14]],["B","IDLE_ONE",65,[10,11,12,13,14]],["B","IDLE_ONE",66,[10,11,12,13]],["B","IDLE_ONE",67,[10,11,12,13]],["B","IDLE_ONE",68,[10,11,12]],["B","IDLE_ONE",69,[10,11,12]],["B","IDLE_ONE",70,[10,11]],["B","IDLE_ONE",71,[10,11]],["B","IDLE_ONE",72,[10]],["B","IDLE_ONE",73,[10]],["B","IDLE_ONE",74,[10]],["B","IDLE_ONE",75,[10]],["B","ADD",74,75,"-1/2"],["B","ADD",73,75,"-1"],["B","ADD",72,75,"1/2"],["B","ADD",39,75,"-64"],["B","SCALE",75,"1/4"],["B","ADD",72,74,"-2"],["B","SCALE",74,"2"],["B","ADD",75,74,"1/2"],["B","ADD",72,73,"3/2"],["B","ADD",39,73,"64"],["B","ADD",38,73,"64"],["B","SCALE",73,"2"],["B","ADD",75,73,"-5/8"],["B","ADD",74,73,"-3/2"],["B","SWAP",73,75],["B","ADD",38,72,"-64"],["B","ADD",74,72,"2"],["B","ADD",73,72,"3/2"],["B","SWAP",72,73],["B","SWAP",71,73],["B","SWAP",70,72],["B","SWAP",69,71],["B","SWAP",68,70],["B","SWAP",67,69],["B","SWAP",66,68],["B","SWAP",65,67],["B","SWAP",64,66],["B","SWAP",63,65],["B","SWAP",62,64],["B","SWAP",61,63],["B","SWAP",60,62],["B","SWAP",59,61],["B","SWAP",58,60],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",75,39,"1/32"],["B","ADD",74,39,"-1/64"],["B","ADD",59,39,"1/64"],["B","ADD",58,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",75,38,"-1/32"],["B","ADD",59,38,"-1/64"],["B","ADD",58,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",11,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","SWAP",17,18],["A","SWAP",16,18],["A","SWAP",15,18],["A","SWAP",14,18],["A","SWAP",13,18],["A","SWAP",12,18],["A","SWAP",11,18],["A","SWAP",10,18],["A","SWAP",9,18],["A","SWAP",8,18],["A","SWAP",7,18],["A","SWAP",6,18],["A","SWAP",5,18],["A","SWAP",4,18],["A","SWAP",3,18],["A","ADD",1,2,"-1"],["A","ADD",0,2,"-1"],["A","SCALE",2,"-1"],["A","SWAP",2,18],["A","ADD",0,1,"-1"],["A","SCALE",1,"-1"],["A","ADD",18,1,"2"],["A","ADD",18,0,"2"],["A","ADD",1,0,"1"],["A","SWAP",0,18],["A","LAMBDA",0,-1],["A","SWAP",36,37],["A","SWAP",35,37],["A","SWAP",34,37],["A","SWAP",33,37],["A","SWAP",32,37],["A","SWAP",31,37],["A","SWAP",30,37],["A","SWAP",29,37],["A","SWAP",28,37],["A","SWAP",27,37],["A","SWAP",26,37],["A","SWAP",25,37],["A","SWAP",24,37],["A","SWAP",23,37],["A","SWAP",22,37],["A","ADD",20,21,"-1"],["A","ADD",19,21,"-1"],["A","SCALE",21,"-1"],["A","SWAP",21,37],["A","ADD",19,20,"-1"],["A","ADD",37,20,"-2"],["A","ADD",37,19,"2"],["A","ADD",20,19,"-1"],["A","SWAP",19,37],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",74,[11]],["B","IDLE_ONE",75,[11]],["B","ADD",74,75,"1"],["B","ADD",72,75,"-1/4"],["B","ADD",39,75,"-64"],["B","SCALE",75,"-1/2"],["B","ADD",73,74,"1/2"],["B","ADD",72,74,"1/2"],["B","ADD",39,74,"64"],["B","ADD",38,74,"32"],["B","SWAP",74,75],["B","ADD",72,73,"-1/2"],["B","ADD",39,73,"-128"],["B","SCALE",73,"-1"],["B","ADD",75,73,"2"],["B","ADD",74,73,"-1"],["B","ADD",38,72,"128"],["B","SCALE",72,"-2"],["B","ADD",74,72,"1"],["B","ADD",73,72,"1"],["B","SWAP",71,73],["B","SWAP",70,72],["B","SWAP",69,71],["B","SWAP",68,70],["B","SWAP",67,69],["B","SWAP",66,68],["B","SWAP",65,67],["B","SWAP",64,66],["B","SWAP",63,65],["B","SWAP",62,64],["B","SWAP",61,63],["B","SWAP",60,62],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",75,39,"1/32"],["B","ADD",74,39,"-1/64"],["B","ADD",61,39,"1/64"],["B","ADD",60,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",75,38,"-1/32"],["B","ADD",61,38,"-1/64"],["B","ADD",60,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",12,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","SWAP",17,18],["A","SWAP",16,18],["A","SWAP",15,18],["A","SWAP",14,18],["A","SWAP",13,18],["A","SWAP",12,18],["A","SWAP",11,18],["A","SWAP",10,18],["A","SWAP",9,18],["A","SWAP",8,18],["A","SWAP",7,18],["A","SWAP",6,18],["A","SWAP",5,18],["A","SWAP",4,18],["A","SWAP",3,18],["A","ADD",1,2,"-1"],["A","ADD",0,2,"-1"],["A","SCALE",2,"-1"],["A","SWAP",2,18],["A","ADD",0,1,"-1"],["A","SCALE",1,"-1"],["A","ADD",18,1,"2"],["A","ADD",18,0,"2"],["A","ADD",1,0,"1"],["A","SWAP",0,18],["A","LAMBDA",0,-1],["A","SWAP",36,37],["A","SWAP",35,37],["A","SWAP",34,37],["A","SWAP",33,37],["A","SWAP",32,37],["A","SWAP",31,37],["A","SWAP",30,37],["A","SWAP",29,37],["A","SWAP",28,37],["A","SWAP",27,37],["A","SWAP",26,37],["A","SWAP",25,37],["A","SWAP",24,37],["A","SWAP",23,37],["A","SWAP",22,37],["A","ADD",20,21,"-1"],["A","ADD",19,21,"-1"],["A","SCALE",21,"-1"],["A","SWAP",21,37],["A","ADD",19,20,"-1"],["A","ADD",37,20,"-2"],["A","ADD",37,19,"2"],["A","ADD",20,19,"-1"],["A","SWAP",19,37],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",74,[12]],["B","IDLE_ONE",75,[12]],["B","ADD",74,75,"1"],["B","ADD",72,75,"-1/4"],["B","ADD",39,75,"-64"],["B","SCALE",75,"-1/2"],["B","ADD",73,74,"1/2"],["B","ADD",72,74,"1/2"],["B","ADD",39,74,"64"],["B","ADD",38,74,"32"],["B","SWAP",74,75],["B","ADD",72,73,"-1/2"],["B","ADD",39,73,"-128"],["B","SCALE",73,"-1"],["B","ADD",75,73,"2"],["B","ADD",74,73,"-1"],["B","ADD",38,72,"128"],["B","SCALE",72,"-2"],["B","ADD",74,72,"1"],["B","ADD",73,72,"1"],["B","SWAP",71,73],["B","SWAP",70,72],["B","SWAP",69,71],["B","SWAP",68,70],["B","SWAP",67,69],["B","SWAP",66,68],["B","SWAP",65,67],["B","SWAP",64,66],["B","SWAP",63,65],["B","SWAP",62,64],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",75,39,"1/32"],["B","ADD",74,39,"-1/64"],["B","ADD",63,39,"1/64"],["B","ADD",62,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",75,38,"-1/32"],["B","ADD",63,38,"-1/64"],["B","ADD",62,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",13,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","SWAP",17,18],["A","SWAP",16,18],["A","SWAP",15,18],["A","SWAP",14,18],["A","SWAP",13,18],["A","SWAP",12,18],["A","SWAP",11,18],["A","SWAP",10,18],["A","SWAP",9,18],["A","SWAP",8,18],["A","SWAP",7,18],["A","SWAP",6,18],["A","SWAP",5,18],["A","SWAP",4,18],["A","SWAP",3,18],["A","ADD",1,2,"-1"],["A","ADD",0,2,"-1"],["A","SCALE",2,"-1"],["A","SWAP",2,18],["A","ADD",0,1,"-1"],["A","SCALE",1,"-1"],["A","ADD",18,1,"2"],["A","ADD",18,0,"2"],["A","ADD",1,0,"1"],["A","SWAP",0,18],["A","LAMBDA",0,-1],["A","SWAP",36,37],["A","SWAP",35,37],["A","SWAP",34,37],["A","SWAP",33,37],["A","SWAP",32,37],["A","SWAP",31,37],["A","SWAP",30,37],["A","SWAP",29,37],["A","SWAP",28,37],["A","SWAP",27,37],["A","SWAP",26,37],["A","SWAP",25,37],["A","SWAP",24,37],["A","SWAP",23,37],["A","SWAP",22,37],["A","ADD",20,21,"-1"],["A","ADD",19,21,"-1"],["A","SCALE",21,"-1"],["A","SWAP",21,37],["A","ADD",19,20,"-1"],["A","ADD",37,20,"-2"],["A","ADD",37,19,"2"],["A","ADD",20,19,"-1"],["A","SWAP",19,37],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",74,[13]],["B","IDLE_ONE",75,[13]],["B","ADD",74,75,"1"],["B","ADD",72,75,"-1/4"],["B","ADD",39,75,"-64"],["B","SCALE",75,"-1/2"],["B","ADD",73,74,"1/2"],["B","ADD",72,74,"1/2"],["B","ADD",39,74,"64"],["B","ADD",38,74,"32"],["B","SWAP",74,75],["B","ADD",72,73,"-1/2"],["B","ADD",39,73,"-128"],["B","SCALE",73,"-1"],["B","ADD",75,73,"2"],["B","ADD",74,73,"-1"],["B","ADD",38,72,"128"],["B","SCALE",72,"-2"],["B","ADD",74,72,"1"],["B","ADD",73,72,"1"],["B","SWAP",71,73],["B","SWAP",70,72],["B","SWAP",69,71],["B","SWAP",68,70],["B","SWAP",67,69],["B","SWAP",66,68],["B","SWAP",65,67],["B","SWAP",64,66],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",75,39,"1/32"],["B","ADD",74,39,"-1/64"],["B","ADD",65,39,"1/64"],["B","ADD",64,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",75,38,"-1/32"],["B","ADD",65,38,"-1/64"],["B","ADD",64,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",14,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","SWAP",17,18],["A","SWAP",16,18],["A","SWAP",15,18],["A","SWAP",14,18],["A","SWAP",13,18],["A","SWAP",12,18],["A","SWAP",11,18],["A","SWAP",10,18],["A","SWAP",9,18],["A","SWAP",8,18],["A","SWAP",7,18],["A","SWAP",6,18],["A","SWAP",5,18],["A","SWAP",4,18],["A","SWAP",3,18],["A","ADD",1,2,"-1"],["A","ADD",0,2,"-1"],["A","SCALE",2,"-1"],["A","SWAP",2,18],["A","ADD",0,1,"-1"],["A","SCALE",1,"-1"],["A","ADD",18,1,"2"],["A","ADD",18,0,"2"],["A","ADD",1,0,"1"],["A","SWAP",0,18],["A","LAMBDA",0,-1],["A","SWAP",36,37],["A","SWAP",35,37],["A","SWAP",34,37],["A","SWAP",33,37],["A","SWAP",32,37],["A","SWAP",31,37],["A","SWAP",30,37],["A","SWAP",29,37],["A","SWAP",28,37],["A","SWAP",27,37],["A","SWAP",26,37],["A","SWAP",25,37],["A","SWAP",24,37],["A","SWAP",23,37],["A","SWAP",22,37],["A","ADD",20,21,"-1"],["A","ADD",19,21,"-1"],["A","SCALE",21,"-1"],["A","SWAP",21,37],["A","ADD",19,20,"-1"],["A","ADD",37,20,"-2"],["A","ADD",37,19,"2"],["A","ADD",20,19,"-1"],["A","SWAP",19,37],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",74,[14]],["B","IDLE_ONE",75,[14]],["B","ADD",74,75,"1"],["B","ADD",72,75,"-1/4"],["B","ADD",39,75,"-64"],["B","SCALE",75,"-1/2"],["B","ADD",73,74,"1/2"],["B","ADD",72,74,"1/2"],["B","ADD",39,74,"64"],["B","ADD",38,74,"32"],["B","SWAP",74,75],["B","ADD",72,73,"-1/2"],["B","ADD",39,73,"-128"],["B","SCALE",73,"-1"],["B","ADD",75,73,"2"],["B","ADD",74,73,"-1"],["B","ADD",38,72,"128"],["B","SCALE",72,"-2"],["B","ADD",74,72,"1"],["B","ADD",73,72,"1"],["B","SWAP",71,73],["B","SWAP",70,72],["B","SWAP",69,71],["B","SWAP",68,70],["B","SWAP",67,69],["B","SWAP",66,68],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",75,39,"1/32"],["B","ADD",74,39,"-1/64"],["B","ADD",67,39,"1/64"],["B","ADD",66,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",75,38,"-1/32"],["B","ADD",67,38,"-1/64"],["B","ADD",66,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",15,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","SWAP",17,18],["A","SWAP",16,18],["A","SWAP",15,18],["A","SWAP",14,18],["A","SWAP",13,18],["A","SWAP",12,18],["A","SWAP",11,18],["A","SWAP",10,18],["A","SWAP",9,18],["A","SWAP",8,18],["A","SWAP",7,18],["A","SWAP",6,18],["A","SWAP",5,18],["A","SWAP",4,18],["A","SWAP",3,18],["A","ADD",1,2,"-1"],["A","ADD",0,2,"-1"],["A","SCALE",2,"-1"],["A","SWAP",2,18],["A","ADD",0,1,"-1"],["A","SCALE",1,"-1"],["A","ADD",18,1,"2"],["A","ADD",18,0,"2"],["A","ADD",1,0,"1"],["A","SWAP",0,18],["A","LAMBDA",0,-1],["A","SWAP",36,37],["A","SWAP",35,37],["A","SWAP",34,37],["A","SWAP",33,37],["A","SWAP",32,37],["A","SWAP",31,37],["A","SWAP",30,37],["A","SWAP",29,37],["A","SWAP",28,37],["A","SWAP",27,37],["A","SWAP",26,37],["A","SWAP",25,37],["A","SWAP",24,37],["A","SWAP",23,37],["A","SWAP",22,37],["A","ADD",20,21,"-1"],["A","ADD",19,21,"-1"],["A","SCALE",21,"-1"],["A","SWAP",21,37],["A","ADD",19,20,"-1"],["A","ADD",37,20,"-2"],["A","ADD",37,19,"2"],["A","ADD",20,19,"-1"],["A","SWAP",19,37],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",74,[15]],["B","IDLE_ONE",75,[15]],["B","ADD",74,75,"1"],["B","ADD",72,75,"-1/4"],["B","ADD",39,75,"-64"],["B","SCALE",75,"-1/2"],["B","ADD",73,74,"1/2"],["B","ADD",72,74,"1/2"],["B","ADD",39,74,"64"],["B","ADD",38,74,"32"],["B","SWAP",74,75],["B","ADD",72,73,"-1/2"],["B","ADD",39,73,"-128"],["B","SCALE",73,"-1"],["B","ADD",75,73,"2"],["B","ADD",74,73,"-1"],["B","ADD",38,72,"128"],["B","SCALE",72,"-2"],["B","ADD",74,72,"1"],["B","ADD",73,72,"1"],["B","SWAP",71,73],["B","SWAP",70,72],["B","SWAP",69,71],["B","SWAP",68,70],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",75,39,"1/32"],["B","ADD",74,39,"-1/64"],["B","ADD",69,39,"1/64"],["B","ADD",68,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",75,38,"-1/32"],["B","ADD",69,38,"-1/64"],["B","ADD",68,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",16,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","SWAP",17,18],["A","SWAP",16,18],["A","SWAP",15,18],["A","SWAP",14,18],["A","SWAP",13,18],["A","SWAP",12,18],["A","SWAP",11,18],["A","SWAP",10,18],["A","SWAP",9,18],["A","SWAP",8,18],["A","SWAP",7,18],["A","SWAP",6,18],["A","SWAP",5,18],["A","SWAP",4,18],["A","SWAP",3,18],["A","ADD",1,2,"-1"],["A","ADD",0,2,"-1"],["A","SCALE",2,"-1"],["A","SWAP",2,18],["A","ADD",0,1,"-1"],["A","SCALE",1,"-1"],["A","ADD",18,1,"2"],["A","ADD",18,0,"2"],["A","ADD",1,0,"1"],["A","SWAP",0,18],["A","LAMBDA",0,-1],["A","SWAP",36,37],["A","SWAP",35,37],["A","SWAP",34,37],["A","SWAP",33,37],["A","SWAP",32,37],["A","SWAP",31,37],["A","SWAP",30,37],["A","SWAP",29,37],["A","SWAP",28,37],["A","SWAP",27,37],["A","SWAP",26,37],["A","SWAP",25,37],["A","SWAP",24,37],["A","SWAP",23,37],["A","SWAP",22,37],["A","ADD",20,21,"-1"],["A","ADD",19,21,"-1"],["A","SCALE",21,"-1"],["A","SWAP",21,37],["A","ADD",19,20,"-1"],["A","ADD",37,20,"-2"],["A","ADD",37,19,"2"],["A","ADD",20,19,"-1"],["A","SWAP",19,37],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",74,[16]],["B","IDLE_ONE",75,[16]],["B","ADD",74,75,"1"],["B","ADD",72,75,"-1/4"],["B","ADD",39,75,"-64"],["B","SCALE",75,"-1/2"],["B","ADD",73,74,"1/2"],["B","ADD",72,74,"1/2"],["B","ADD",39,74,"64"],["B","ADD",38,74,"32"],["B","SWAP",74,75],["B","ADD",72,73,"-1/2"],["B","ADD",39,73,"-128"],["B","SCALE",73,"-1"],["B","ADD",75,73,"2"],["B","ADD",74,73,"-1"],["B","ADD",38,72,"128"],["B","SCALE",72,"-2"],["B","ADD",74,72,"1"],["B","ADD",73,72,"1"],["B","SWAP",71,73],["B","SWAP",70,72],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",75,39,"1/32"],["B","ADD",74,39,"-1/64"],["B","ADD",71,39,"1/64"],["B","ADD",70,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",75,38,"-1/32"],["B","ADD",71,38,"-1/64"],["B","ADD",70,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",17,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","SWAP",17,18],["A","SWAP",16,18],["A","SWAP",15,18],["A","SWAP",14,18],["A","SWAP",13,18],["A","SWAP",12,18],["A","SWAP",11,18],["A","SWAP",10,18],["A","SWAP",9,18],["A","SWAP",8,18],["A","SWAP",7,18],["A","SWAP",6,18],["A","SWAP",5,18],["A","SWAP",4,18],["A","SWAP",3,18],["A","ADD",1,2,"-1"],["A","ADD",0,2,"-1"],["A","SCALE",2,"-1"],["A","SWAP",2,18],["A","ADD",0,1,"-1"],["A","SCALE",1,"-1"],["A","ADD",18,1,"2"],["A","ADD",18,0,"2"],["A","ADD",1,0,"1"],["A","SWAP",0,18],["A","LAMBDA",0,-1],["A","SWAP",36,37],["A","SWAP",35,37],["A","SWAP",34,37],["A","SWAP",33,37],["A","SWAP",32,37],["A","SWAP",31,37],["A","SWAP",30,37],["A","SWAP",29,37],["A","SWAP",28,37],["A","SWAP",27,37],["A","SWAP",26,37],["A","SWAP",25,37],["A","SWAP",24,37],["A","SWAP",23,37],["A","SWAP",22,37],["A","ADD",20,21,"-1"],["A","ADD",19,21,"-1"],["A","SCALE",21,"-1"],["A","SWAP",21,37],["A","ADD",19,20,"-1"],["A","ADD",37,20,"-2"],["A","ADD",37,19,"2"],["A","ADD",20,19,"-1"],["A","SWAP",19,37],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",74,[17]],["B","IDLE_ONE",75,[17]],["B","ADD",74,75,"1"],["B","ADD",72,75,"-1/4"],["B","ADD",39,75,"-64"],["B","SCALE",75,"-1/4"],["B","ADD",73,74,"1/2"],["B","ADD",72,74,"1/2"],["B","ADD",39,74,"64"],["B","ADD",38,74,"32"],["B","SCALE",74,"1/2"],["B","SWAP",74,75],["B","ADD",72,73,"-1/2"],["B","ADD",39,73,"-128"],["B","SCALE",73,"-1"],["B","ADD",75,73,"1"],["B","ADD",74,73,"-1/2"],["B","ADD",38,72,"128"],["B","SCALE",72,"-2"],["B","ADD",74,72,"1/2"],["B","ADD",73,72,"1"],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",75,39,"1/64"],["B","ADD",74,39,"-1/128"],["B","ADD",73,39,"1/64"],["B","ADD",72,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",75,38,"-1/64"],["B","ADD",73,38,"-1/64"],["B","ADD",72,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",18,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","SWAP",17,18],["A","SWAP",16,18],["A","SWAP",15,18],["A","SWAP",14,18],["A","SWAP",13,18],["A","SWAP",12,18],["A","SWAP",11,18],["A","SWAP",10,18],["A","SWAP",9,18],["A","SWAP",8,18],["A","SWAP",7,18],["A","SWAP",6,18],["A","SWAP",5,18],["A","SWAP",4,18],["A","SWAP",3,18],["A","SWAP",2,18],["A","ADD",0,1,"-2"],["A","SWAP",1,18],["A","SCALE",0,"-1"],["A","ADD",18,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","SWAP",36,37],["A","SWAP",35,37],["A","SWAP",34,37],["A","SWAP",33,37],["A","SWAP",32,37],["A","SWAP",31,37],["A","SWAP",30,37],["A","SWAP",29,37],["A","SWAP",28,37],["A","SWAP",27,37],["A","SWAP",26,37],["A","SWAP",25,37],["A","SWAP",24,37],["A","SWAP",23,37],["A","SWAP",22,37],["A","SWAP",21,37],["A","ADD",19,20,"-2"],["A","SWAP",20,37],["A","SCALE",19,"-1"],["A","ADD",37,19,"-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],["A","LAMBDA",36,-1],["A","LAMBDA",37,-1],["B","LAMBDA",38,1],["B","IDLE_ONE",74,[18]],["B","IDLE_ONE",75,[18]],["B","ADD",39,75,"-128"],["B","ADD",38,75,"64"],["B","SCALE",75,"-1"],["B","ADD",38,74,"128"],["B","SCALE",74,"-1"],["B","ADD",75,74,"2"],["B","ADD",38,39,"1/2"],["B","SCALE",39,"1/128"],["B","ADD",75,39,"-2"],["B","ADD",74,39,"-1"],["B","SCALE",38,"1/128"],["B","ADD",75,38,"2"],["B","ADD",74,38,"2"],["B","SWAP",38,39],["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],["B","LAMBDA",68,-1],["B","LAMBDA",69,-1],["B","LAMBDA",70,-1],["B","LAMBDA",71,-1],["B","LAMBDA",72,-1],["B","LAMBDA",73,-1],["B","LAMBDA",74,-1],["B","LAMBDA",75,-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"} diff --git a/research/p104-query-only-interval/README.md b/research/p104-query-only-interval/README.md new file mode 100644 index 0000000000..ef29752ee3 --- /dev/null +++ b/research/p104-query-only-interval/README.md @@ -0,0 +1,95 @@ +# An E-free caller using only existing operations + +Prepared for **@CubeJerry**, with substantial OpenAI assistance. Apache-2.0. +**No new kappa. No unconditional multiplication theorem.** + +This package removes both QSELF operations from DreamingOfClouds' +[#6937](https://github.com/CrocSwap/integer-mult-bounds/pull/6937) E-free caller +without increasing its paid-query profile. The exact source interval 457..575 +contains two separated QSELF(-1) events and one QUERY(-1). Its replacement +uses three QUERY(-1) events and existing ADD, SWAP and LAMBDA operations, +with no additional public/helper field, initialized scratch role, productive +credit or operation type. The whole caller has 3,095 events and zero QSELFs. + +The construction applies to all independent inputs, with all 18 D variables +formal, under commuting Q,D and Q^4=I. It includes the full intervening source +operations, not only a same-cut pair gadget. Its basis changes use the source +phase unit lambda_+=((1+i)+(1-i)q^2)/2; no projection is inverted. The D9 +operation is moved only across disjoint supports and is never inverted. + +## Result and complete budget + +The generated [complete caller](QUERY-ONLY-CALLER.json), exact +[interval patch](PATCH.json) and [proof](PROOF.md) are reproducible from the +pinned source. The full target and paid profiles remain identical at every +rank, hence their entire signed moment polynomial is unchanged. Totals remain +23,050 productive targets, 117,846 paid jobs, surplus 1,520 and paid rank +mass 317,324. The accepted selected certificate is untouched. + +The replacement adds 104 A events and 28 A LAMBDA events while replacing 192 +physical QSELF instances with 192 QUERY instances. All 416 outer jobs now use +the existing QUERY contract. The complete inherited ordinary invoice, including +the separate LAMBDA and 1125 conversion readings, is 826,265,904, with margin +173,734,096 below its 10^9 cap. These scalar/routing rates remain conditional; +they are not a new physical bit-tape or rounded precision certificate. + +## Evidence and reproduction + +The new interval checker compares exact 38-input matrices with unrestricted +formal D monomials, retaining repeated powers. The complete 76-input caller +also passes the unchanged public forward certificate and a separate backward +covector certificate with all D variables formal. Four exact q characters +together are faithful for the stated quotient. Eight new algebra controls +and a fourth-query paid-budget control detect incorrect modifications. + +From the repository root: + +```sh +python3 -B scripts/research_package.py --package research/p104-query-only-interval --check-only +python3 -B scripts/research_package.py --package research/p104-query-only-interval +``` + +The registered runner executes four bounded suites in normal and optimized +Python. A Git-free source export can directly run: + +```sh +python3 -I -B research/p104-query-only-interval/verify.py --suite interval +python3 -I -B research/p104-query-only-interval/verify.py --suite formal +python3 -I -B research/p104-query-only-interval/verify.py --suite invoice +python3 -I -B research/p104-query-only-interval/verify.py --suite controls +``` + +`DEPENDENCIES.json` authenticates nine targeted unchanged input files by +SHA256 and Git blob. External fork commit objects need not be present in a +shallow checkout: runtime authentication uses the vendored bytes, while +canonical task and selected-state provenance are separately pinned in +`SOURCES.json`. Regeneration is explicit with `verify.py --regenerate`. + +## Scope, novelty and credit + +DreamingOfClouds owns the E-free root/caller and its earlier QUERY-only +feasibility observation in #6937, as well as the unchanged local native source +in [#6936](https://github.com/CrocSwap/integer-mult-bounds/pull/6936). +Its source README says the whole QUERY-only caller was not built and describes +a projected loss. This package instead supplies a complete actual interval +replacement preserving the paid profile, and emits and checks the whole caller. + +The preceding public [owned QSELF package](https://github.com/CubeJerry/integer-mult-bounds/tree/4e2fd1b6abed49c202a057fd5c73ead0a460f976/research/p104-qself-owned-lowering) +supplies the exact source semantics, formal forward/backward engines and +invoice baseline reused unchanged here. Its paired-synthesis question remains +distinct from its single-QSELF determinant obstruction. Source inspection was +bounded to those exact predecessors and the lead's current #6936/#6937 refresh; +no exhaustive novelty search or universal query lower bound is claimed. + +The three-query four-input identity, actual separated-source reduction, +generator and new interval certificate were prepared for @CubeJerry with +substantial OpenAI assistance. See [review notes](REVIEW.md) for the exact +cross-check scope. AI/code-assisted review is not human or proof-kernel review. + +## Open next questions + +The [proof](PROOF.md#open-next-questions) and `TASK.json` identify the remaining +source/compiler, common-format, signed-headroom, rounded-error, bit-tape and +historical-backing obligations. Existing opcodes do not automatically install +new source-specific provider records. The five selected foundational assumptions +remain; this exact source substitution removes one proposed new-op obligation. diff --git a/research/p104-query-only-interval/RESULT.json b/research/p104-query-only-interval/RESULT.json new file mode 100644 index 0000000000..c35963e24b --- /dev/null +++ b/research/p104-query-only-interval/RESULT.json @@ -0,0 +1,241 @@ +{ + "authenticated_source_files": 9, + "controls": { + "count": 8, + "method": "exact formal coefficients; no sampled field values", + "rejected": [ + "wrong_QUERY_orientation", + "only_two_QUERY_calls", + "omitted_source_conjugation_correction", + "incomplete_t_scaling_or_source_restoration", + "repeated_D9_is_not_idempotent", + "cross_input_contamination", + "lambda_projection_zero_divisor_mutant", + "missing_q_fourth_power_relation" + ] + }, + "formal": { + "backward_covectors": [ + { + "formal_D_variables": 18, + "independent_outputs": 76, + "peak_terms": 347, + "q_character_power_of_i": 0 + }, + { + "formal_D_variables": 18, + "independent_outputs": 76, + "peak_terms": 347, + "q_character_power_of_i": 1 + }, + { + "formal_D_variables": 18, + "independent_outputs": 76, + "peak_terms": 439, + "q_character_power_of_i": 2 + }, + { + "formal_D_variables": 18, + "independent_outputs": 76, + "peak_terms": 439, + "q_character_power_of_i": 3 + } + ], + "claim": "All 76 independent input/output coefficients; all 18 D variables formal; q^4=1.", + "credit": "Unchanged public forward/backward engines from 4e2fd1b6; independent interval engine supplied here.", + "forward": { + "D_variables": 18, + "endpoint_sha256": "a1170bbdfdeab23e8d54af136a1b4a7515e9b0e893eac6656a1af47d0b9605b5", + "endpoint_terms": 76, + "events": 3095, + "independent_inputs": 76, + "peak_row_terms": 90, + "peak_terms": 2713, + "q_relation": "q^4=1" + } + }, + "interval": { + "D_exponents": "unrestricted tuples, multiplicities preserved", + "arbitrary_interval_inputs": 38, + "basis_round_trip": "identity over the full quotient, without division or sector restriction", + "endpoint_sha256": "f76900e35d871c630a5884a0c447115b5e28e089a167c8cab0ea795ccec7ed2b", + "endpoint_terms": 180, + "formal_D_variables_retained": "all; interval uses D9 only", + "four_field_gadget_endpoint_sha256": "70cd529243d516e58f768f672c3862549e9d298bc84350e0fca96ba327c19242", + "four_field_gadget_peak_terms": 12, + "interval": [ + 457, + 576 + ], + "new_events": 223, + "new_peak_terms": 756, + "old_events": 119, + "old_peak_terms": 180, + "q_relation": "q^4=1" + }, + "invoice": { + "additional_owned_bank_inventory": 0, + "additional_public_or_helper_roles": 0, + "all_rankwise_deltas_zero": true, + "controls": [ + "fourth_QUERY_adds_96_paid_rank_one_without_target_credit" + ], + "fresh_local_helpers": 19098, + "full_after": 826265904, + "full_before": 811461936, + "local_source_lifetimes_per_joint": 54, + "local_source_peak_owned": 43, + "main_arbitrary_inputs": 3952, + "margin_below_inherited_cap": 173734096, + "new_caller_cost": { + "caller_envelope": 144567808, + "idle_maps": 205536000, + "lambda_recharge": 14480000, + "main_maps": 248144000, + "main_normalizers": 102752, + "qself_extra_lifecycle": 0, + "query_maps": 1248000, + "raw_rest": 599605216, + "thin_lifecycle": 6656 + }, + "new_opcode_counts": { + "A": { + "physical_instances": { + "ADD": 40896, + "IDLE_ONE": 3072, + "LAMBDA": 13824, + "QUERY": 384, + "SCALE": 7680, + "SWAP": 34944 + }, + "source_events": { + "ADD": 426, + "IDLE_ONE": 32, + "LAMBDA": 144, + "QUERY": 4, + "SCALE": 80, + "SWAP": 364 + } + }, + "B": { + "physical_instances": { + "ADD": 13456, + "IDLE_ONE": 544, + "LAMBDA": 656, + "QUERY": 32, + "SCALE": 800, + "SWAP": 728 + }, + "source_events": { + "ADD": 1682, + "IDLE_ONE": 68, + "LAMBDA": 82, + "QUERY": 4, + "SCALE": 100, + "SWAP": 91 + } + } + }, + "new_reviewed_raw": 809050912, + "old_caller_cost": { + "caller_envelope": 132427264, + "idle_maps": 205536000, + "lambda_recharge": 11792000, + "main_maps": 248144000, + "main_normalizers": 102752, + "qself_extra_lifecycle": 24576, + "query_maps": 1248000, + "raw_rest": 587489248, + "thin_lifecycle": 6656 + }, + "old_opcode_counts": { + "A": { + "physical_instances": { + "ADD": 33792, + "IDLE_ONE": 3072, + "LAMBDA": 11136, + "QSELF": 192, + "QUERY": 192, + "SCALE": 7680, + "SWAP": 34752 + }, + "source_events": { + "ADD": 352, + "IDLE_ONE": 32, + "LAMBDA": 116, + "QSELF": 2, + "QUERY": 2, + "SCALE": 80, + "SWAP": 362 + } + }, + "B": { + "physical_instances": { + "ADD": 13456, + "IDLE_ONE": 544, + "LAMBDA": 656, + "QUERY": 32, + "SCALE": 800, + "SWAP": 728 + }, + "source_events": { + "ADD": 1682, + "IDLE_ONE": 68, + "LAMBDA": 82, + "QUERY": 4, + "SCALE": 100, + "SWAP": 91 + } + } + }, + "old_reviewed_raw": 796934944, + "outer_QUERY_lifetimes_after": 416, + "outer_query_or_QSELF_lifetimes_before": 416, + "outer_query_peak_bank_inventory": 1, + "owned_inventory_scope": "Relative to the existing completed QUERY contract; no physical binding installed.", + "paid": { + "1": 74378, + "16": 416, + "2": 15804, + "24": 416, + "3": 14058, + "32": 416, + "4": 3924, + "40": 416, + "48": 416, + "5": 5472, + "56": 416, + "6": 270, + "64": 416, + "7": 216, + "8": 812 + }, + "paid_count": 117846, + "paid_rank_mass": 317324, + "per_call_conversion_recharge": 2734992, + "rank_mass_surplus": 1520, + "selected_kappa_change": false, + "target_count": 23050, + "targets": { + "1": 216, + "145": 208, + "17": 416, + "2": 306, + "25": 416, + "3": 792, + "33": 416, + "4": 3870, + "41": 416, + "49": 416, + "5": 1224, + "57": 416, + "6": 738, + "65": 416, + "7": 252, + "73": 416, + "8": 1116, + "9": 11000 + }, + "tariff_scope": "Inherited scalar/routing convention only; actual common precision and bit-tape tariff remain open." + } +} diff --git a/research/p104-query-only-interval/REVIEW.md b/research/p104-query-only-interval/REVIEW.md new file mode 100644 index 0000000000..f45e129962 --- /dev/null +++ b/research/p104-query-only-interval/REVIEW.md @@ -0,0 +1,55 @@ +# Review and verification scope + +Prepared for @CubeJerry with substantial OpenAI assistance. Apache-2.0. + +The constructing agent derived the source conjugation and the three-query +four-input identity before implementation. Its new interval engine does not +import the prior forward or backward arithmetic. The existing published +forward and backward engines are reused unchanged and credited; their reruns +alone are not claimed as new independent implementations. + +The lead independently checked the four-input identity by direct substitution, +including t^2=1, and challenged the distinction between the true source +LAMBDA unit and the nonunit projection(1+q^2)/2. The construction uses the +unit and its explicit inverse. The lead also required that IDLE_ONE(D9) +move only through disjoint supports, with no D inverse. + +## Independent lead source and invoice check + +The lead separately read the proof and emitted source, and computed eight +dense 38-by-38 interval matrices: all four exact q characters and D9=0,2. +No submitted arithmetic implementation was imported; only the candidate word +emitter was reused. All 11,552 scalar comparisons passed. Because each actual +interval contains exactly one D9 service, every matrix coefficient has degree +at most one in D9. These two distinct D values, together with the four faithful +q characters, therefore establish the full local polynomial identity. This +coverage argument is specific to the exact source degree bound; it does not +claim that arbitrary finite D probes are sufficient. + +The independent controls detected an omitted operation, the zero-divisor +projection substituted for LAMBDA, and an idempotence treatment of D9. +The reviewed emitter SHA256 was +`19c2cf2924d5359ef2568818947de4b474cc8f842f66ee27a646596165d0ee53`. +The proof SHA256 at that review was +`0cede285a98dd61b78020651202729c6d9cd16fb078ee5fe9a01aa2400df5432`. + +The lead independently counted full physical-instance opcode deltas: +ADD +7,104; LAMBDA +2,688; QSELF -192; QUERY +192; SWAP +192. +It confirmed the 416 outer paid lifetimes, full ordinary increment 14,803,968, +and complete conditional invoice 826,265,904. It also checked the original +#6937 README's prior QUERY-only feasibility disclosure and its attribution. +No blocker was found under the explicit exact/conditional scope. + +## Executed package gates + +The canonical metadata/source-pin check and all eight registered normal and +optimized Python suites passed. The committed package is checked against its +intended added files and authenticated source capsule. The freeze procedure +also checks a source export and runs the four suites from the exported tree +with an empty PATH, without Git or external dependencies. Exact commit/tree, +export digest and logs are recorded in the lead's publication handoff. + +This was separate AI/code-assisted mathematical/source review, with shared +source inputs. It was not a human review, proof-kernel proof, or physical +full-caller replay. All native, precision and compiler limitations in the proof +remain explicit. diff --git a/research/p104-query-only-interval/SOURCES.json b/research/p104-query-only-interval/SOURCES.json new file mode 100644 index 0000000000..75ea7c3d55 --- /dev/null +++ b/research/p104-query-only-interval/SOURCES.json @@ -0,0 +1,18 @@ +{ + "schema_version": 1, + "base_commit": "7c49fe32c55de02c2c873655c804b16e4c3fef0a", + "files": [ + { + "path": "docs/research/agent-task-catalog.json", + "usage": "provenance", + "git_blob": "3404fbdd5e7529a0674eef26114b5071e4586cec", + "sha256": "ead6cdc9d0af6d58e8a49744d8ec8c7c15e13d2ba93c276c434bcf9b51b93a81" + }, + { + "path": "certificates/selected-result.json", + "usage": "provenance", + "git_blob": "d59b5035e7b4cbaa9d688a1d32dd0d6eb79c466a", + "sha256": "9b8d0eea95b3bf0dfcb7938a732a6439b87a2685dec2a5ab9e525b3b34debbfa" + } + ] +} diff --git a/research/p104-query-only-interval/TASK.json b/research/p104-query-only-interval/TASK.json new file mode 100644 index 0000000000..f5bb805126 --- /dev/null +++ b/research/p104-query-only-interval/TASK.json @@ -0,0 +1,93 @@ +{ + "schema_version": 1, + "task_id": "uniform-transfer-audit", + "base_commit": "7c49fe32c55de02c2c873655c804b16e4c3fef0a", + "original_card": { + "id": "uniform-transfer-audit", + "question": "Can one of the selected record's five inherited assumptions be proved at its actual caller?", + "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" + ], + "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." + ], + "acceptance_gate": "Identify the proposition and what would change downstream; do not equate a finite replay with a universal proof.", + "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." + }, + "first_experiment": "Choose one assumption ID (native_all_columns, owned_erasure, compiler, precision_tape, analytic_recovery), one quantified implication and exact dependency closure. Check current handoffs, including #5625 row reentry and #5707 root-prefix lowering, without treating their partial scope as the whole theorem. Prove or falsify that implication with a caller-bound argument; stop at the chosen obligation. Finite tests or root digits do not discharge an all-size statement.", + "bottleneck_link": "Judge the actual current supplier contract and complete signed target/paid bill; frozen-profile ceilings require an applicability proof.", + "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." + ], + "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." + ], + "overlap_terms": [ + "native_all_columns", + "owned_erasure", + "compiler", + "precision_tape", + "analytic_recovery" + ], + "existing_checks": [ + { + "scope": "PR #4100: proposed unconditional construction and finite checks, without independent acceptance.", + "evidence": "research/unconditional-batched-crt/README.md", + "remaining": "Independent proof audit of one caller-bound all-size implication; all other premises remain explicit.", + "status": "author-checked", + "source_commit": "337d04939571a637aeab54a0f58f54fde811663a", + "selected_record_sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" + }, + { + "scope": "Selected PR5599: complete helper-subspace construction and independent caller replay; five framework assumptions remain.", + "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.", + "status": "reviewed", + "source_commit": "09dd0965711ca7eeb169057a420abab1c9052137", + "selected_record_sha256": "2a0220e866417774606e0f991e41b9c1d26b1f43b97857238cf478dbc7d330b5" + } + ] + }, + "scope_status": "refined", + "scope_change_reason": "Lead-assigned wave-5 source interval457..575 pairs the two separated QSELF sites with their intervening QUERY. Prior owned lowering deliberately did not settle paired existing-op synthesis.", + "actual_scope": "Exact three-QUERY replacement of the complete current separated interval, all-D whole-caller identity, complete target/paid and positive ordinary invoice. Existing opcodes only; no physical or rounded execution claim.", + "bottleneck_link": "Removes the proposed new QSELF operation and its new-service registry obligation from this exact E-free caller while preserving its whole paid profile. The selected compiler/native/precision premises remain.", + "stop_rule": "Stop after this exact interval and full source/cost composition. Exclude new roots, generic helper search, native transfer, and unrelated optimizations.", + "evidence": "PROOF.md, QUERY-ONLY-CALLER.json, PATCH.json, RESULT.json; exact 38-input interval matrix, complete 76-input forward/backward certificates, eight algebra controls and a paid-budget control.", + "author": "@CubeJerry", + "ai_assistance": "Substantial OpenAI assistance in source analysis, mathematics, implementation and verification. Separate AI review is not independent human or proof-kernel acceptance.", + "outcome": "completed", + "open_questions": [ + { + "question": "Bind the regenerated caller to actual existing QUERY/LAMBDA/scalar providers and intermediate formats.", + "why_it_matters": "An exact formal operator identity does not imply physical signed success or a literal source registry.", + "first_step": "Export exact new occurrence tokens/headers and prove matching full-field geometry, common grid and signed ranges.", + "blocked_by": "Compiler, native, owned and precision_tape interface contracts." + }, + { + "question": "Propagate complete rounded errors and physical work through the changed interval.", + "why_it_matters": "Extra even operations and cross-chain intermediates have real costs and changed error propagation.", + "first_step": "Use the complete 223-event sequence, with all setup, conversion, copying, head restoration and historical backing charged.", + "blocked_by": "Source-specific numerical and bit-tape tariff bounds." + }, + { + "question": "Reduce additional even-phase work without changing the paid profile.", + "why_it_matters": "The verified replacement adds 28 LAMBDA occurrences per A port; reducing them could improve constants.", + "first_step": "Optimize the committed four-field word while preserving its exact all-input matrix and full separated-source reduction.", + "blocked_by": "Outside this bounded task; any candidate needs independent source/cost verification." + } + ] +} diff --git a/research/p104-query-only-interval/VERIFY.json b/research/p104-query-only-interval/VERIFY.json new file mode 100644 index 0000000000..e52f7b1577 --- /dev/null +++ b/research/p104-query-only-interval/VERIFY.json @@ -0,0 +1,119 @@ +{ + "schema_version": 1, + "status": "ready", + "python": "3.12", + "requirements": [], + "inputs": [ + "research/p104-query-only-interval/data/caller_efree.json", + "research/p104-query-only-interval/data/root_A_efree.json", + "research/p104-query-only-interval/data/word_6936.json.gz", + "research/p104-query-only-interval/reference/jclib_6936.py", + "research/p104-query-only-interval/vendor/operator_ring.py", + "research/p104-query-only-interval/vendor/dual_certificate.py", + "research/p104-query-only-interval/vendor/invoice.py", + "research/p104-query-only-interval/reference/OWNED-PROOF.md", + "research/p104-query-only-interval/reference/README_6937.md" + ], + "commands": [ + { + "argv": [ + "{python}", + "-I", + "-B", + "research/p104-query-only-interval/verify.py", + "--suite", + "interval" + ], + "timeout_seconds": 120, + "checks": "Normal interval exact source identity/cost certificate and meaningful controls." + }, + { + "argv": [ + "{python}", + "-I", + "-B", + "research/p104-query-only-interval/verify.py", + "--suite", + "formal" + ], + "timeout_seconds": 120, + "checks": "Normal formal exact source identity/cost certificate and meaningful controls." + }, + { + "argv": [ + "{python}", + "-I", + "-B", + "research/p104-query-only-interval/verify.py", + "--suite", + "invoice" + ], + "timeout_seconds": 120, + "checks": "Normal invoice exact source identity/cost certificate and meaningful controls." + }, + { + "argv": [ + "{python}", + "-I", + "-B", + "research/p104-query-only-interval/verify.py", + "--suite", + "controls" + ], + "timeout_seconds": 120, + "checks": "Normal controls exact source identity/cost certificate and meaningful controls." + }, + { + "argv": [ + "{python}", + "-I", + "-O", + "-B", + "research/p104-query-only-interval/verify.py", + "--suite", + "interval" + ], + "timeout_seconds": 120, + "checks": "Optimized interval exact source identity/cost certificate and meaningful controls." + }, + { + "argv": [ + "{python}", + "-I", + "-O", + "-B", + "research/p104-query-only-interval/verify.py", + "--suite", + "formal" + ], + "timeout_seconds": 120, + "checks": "Optimized formal exact source identity/cost certificate and meaningful controls." + }, + { + "argv": [ + "{python}", + "-I", + "-O", + "-B", + "research/p104-query-only-interval/verify.py", + "--suite", + "invoice" + ], + "timeout_seconds": 120, + "checks": "Optimized invoice exact source identity/cost certificate and meaningful controls." + }, + { + "argv": [ + "{python}", + "-I", + "-O", + "-B", + "research/p104-query-only-interval/verify.py", + "--suite", + "controls" + ], + "timeout_seconds": 120, + "checks": "Optimized controls exact source identity/cost certificate and meaningful controls." + } + ] +} diff --git a/research/p104-query-only-interval/complete_invoice.py b/research/p104-query-only-interval/complete_invoice.py new file mode 100644 index 0000000000..eec03ab88b --- /dev/null +++ b/research/p104-query-only-interval/complete_invoice.py @@ -0,0 +1,75 @@ +"""Complete rank profile and positive inherited ordinary-cost comparison. + +This is source accounting under the declared historical tariff, not a proof +of its physical bit-tape rate. Prepared for @CubeJerry with substantial OpenAI +assistance. Apache-2.0. +""" +from collections import Counter +from source_binding import module,need +from replacement import counts + + +def verify(old,new,root,word): + iv=module('invoice') + need(old['types'] == new['types'] and old['roles'] == new['roles'] == 76, + 'unchanged complete arbitrary main inventory and targets') + need([e for e in old['events'] if e[0] == 'J'] == + [e for e in new['events'] if e[0] == 'J'], 'same 18 exact local native contacts') + masks=[[-1,0]+[int(r in s['mask']) for s in root['stages']] for r in range(root['n'])] + need(masks == old['types']['A']['diagonal'] == new['types']['A']['diagonal'], + 'unchanged exact E-free root target masks') + need(all(sum(d[2:])>0 for t in new['types'].values() for d in t['diagonal']), + 'no empty-mask main target credit') + local=iv.local_invoice(word) + oldT,oldP=iv.outer_invoice(old,local) + newT,newP=iv.outer_invoice(new,local) + need(oldT == newT and oldP == newP, 'complete rankwise moment polynomial unchanged') + a,b=iv.caller_cost(old),iv.caller_cost(new) + oldc,newc=counts(old),counts(new) + def amount(c,op): + return sum(v['physical_instances'].get(op,0) for v in c.values()) + need((amount(oldc,'QUERY'),amount(oldc,'QSELF'),amount(newc,'QUERY'),amount(newc,'QSELF')) + == (224,192,416,0), 'actual complete outer lifetime counts') + need(len(new['events'])-len(old['events']) == 104 + and amount(newc,'LAMBDA')-amount(oldc,'LAMBDA') == 28*96, + 'all additional ordinary work counted') + need(b['caller_envelope']-a['caller_envelope'] == 104*32*38*96, + 'complete changed caller envelope') + need(b['lambda_recharge']-a['lambda_recharge'] == 28*1000*96, + 'positive extra lambda allowance') + need(a['qself_extra_lifecycle'] == 192*128 and b['qself_extra_lifecycle'] == 0, + 'only obsolete QSELF-specific surcharge removed') + for name in ('thin_lifecycle','main_normalizers','main_maps','idle_maps','query_maps'): + need(a[name] == b[name], 'unchanged complete term '+name) + scale=18*word['public']*104 + oldraw=18*local['reviewed_per_call']+a['raw_rest'] + newraw=18*local['reviewed_per_call']+b['raw_rest'] + before=oldraw+a['lambda_recharge']+scale + after=newraw+b['lambda_recharge']+scale + need((oldraw,newraw,before,after) == (796934944,809050912,811461936,826265904), + 'full exact inherited invoice') + need(after < 10**9, 'full inherited ordinary allowance preserved') + # A fourth query would change the full paid profile, even with free metadata. + mutant={**new,'events':new['events']+[['A','QUERY',0,1,-1]]} + mt,mp=iv.outer_invoice(mutant,local) + need(mt == newT and mp[1]-newP[1] == 96 and mp != newP, + 'fourth-query budget negative control') + main=sum(t['roles']*len(t['ports']) for t in new['types'].values()) + helpers=18*sum(local['helpers'].values()) + return dict(targets=dict(sorted(newT.items())),paid=dict(sorted(newP.items())), + target_count=sum(newT.values()),paid_count=sum(newP.values()), + rank_mass_surplus=sum(r*(newT[r]-newP[r]) for r in set(newT)|set(newP)), + paid_rank_mass=sum(r*n for r,n in newP.items()), + all_rankwise_deltas_zero=True,main_arbitrary_inputs=main,fresh_local_helpers=helpers, + old_opcode_counts=oldc,new_opcode_counts=newc, + local_source_lifetimes_per_joint=local['lifetimes'],local_source_peak_owned=local['peak_owned'], + outer_query_or_QSELF_lifetimes_before=416,outer_QUERY_lifetimes_after=416, + additional_public_or_helper_roles=0,additional_owned_bank_inventory=0, + outer_query_peak_bank_inventory=1, + owned_inventory_scope='Relative to the existing completed QUERY contract; no physical binding installed.', + old_caller_cost=a,new_caller_cost=b,old_reviewed_raw=oldraw,new_reviewed_raw=newraw, + per_call_conversion_recharge=scale,full_before=before,full_after=after, + margin_below_inherited_cap=10**9-after, + controls=['fourth_QUERY_adds_96_paid_rank_one_without_target_credit'], + tariff_scope='Inherited scalar/routing convention only; actual common precision and bit-tape tariff remain open.', + selected_kappa_change=False) diff --git a/research/p104-query-only-interval/data/caller_efree.json b/research/p104-query-only-interval/data/caller_efree.json new file mode 100644 index 0000000000..5a71ca9f80 --- /dev/null +++ b/research/p104-query-only-interval/data/caller_efree.json @@ -0,0 +1 @@ +{"schema":"mixed-root-caller/1","stages":18,"ambient_rank":153,"roles":76,"types":{"A":{"form":"two-chain-HOST2","roles":38,"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],[-1,0,1,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,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,1,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,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,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,0,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,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,0,0,0,0,0,0,0,0,0],[-1,0,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,0,1,1,0,0,0,0,0,0,0],[-1,0,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,0,1,1,1,1,0,0,0,0,0],[-1,0,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,0,1,1,1,1,1,1,0,0,0],[-1,0,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,0,1,1,1,1,1,1,1,1,0],[-1,0,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],[-1,0,1,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,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,1,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,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,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,0,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,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,0,0,0,0,0,0,0,0,0],[-1,0,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,0,1,1,0,0,0,0,0,0,0],[-1,0,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,0,1,1,1,1,0,0,0,0,0],[-1,0,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,0,1,1,1,1,1,1,0,0,0],[-1,0,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,0,1,1,1,1,1,1,1,1,0],[-1,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1]]},"B":{"form":"hosted-HOST","roles":38,"offset":38,"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],[-1,0,1,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,0,0,0,0,0,0,0,0,0],[-1,0,1,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,1,0,0,0,0,0,0,0,0,0],[-1,0,0,1,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,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,1,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,1,0,0,0,0,0,0,0,0,0],[-1,0,0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0],[-1,0,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,1,0,0,0,0,0,0,0,0,0],[-1,0,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,1,0,0,0,0,0,0,0,0,0],[-1,0,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,1,0,0,0,0,0,0,0,0,0],[-1,0,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,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,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,0,0,1,0,0,0,0,0,0,0,0],[-1,0,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,0,1,1,0,0,0,0,0,0,0],[-1,0,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,0,1,1,1,0,0,0,0,0,0],[-1,0,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,0,1,1,1,1,0,0,0,0,0],[-1,0,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,0,1,1,1,1,1,0,0,0,0],[-1,0,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,0,1,1,1,1,1,1,0,0,0],[-1,0,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,0,1,1,1,1,1,1,1,0,0],[-1,0,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,0,1,1,1,1,1,1,1,1,0],[-1,0,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,0,1,1,1,1,1,1,1,1,1],[-1,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1]],"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":[["A","ADD",0,1,"-1"],["A","SWAP",0,1],["A","LAMBDA",0,-1],["A","ADD",19,20,"-1"],["A","SWAP",19,20],["A","SCALE",20,"-1"],["A","LAMBDA",19,1],["B","ADD",40,41,"-2"],["B","ADD",39,41,"1"],["B","ADD",38,41,"2"],["B","ADD",39,40,"1"],["B","ADD",38,40,"1"],["B","ADD",38,39,"-2"],["B","SCALE",39,"256"],["B","ADD",41,39,"-1/128"],["B","ADD",40,39,"1/128"],["B","SCALE",38,"128"],["B","ADD",41,38,"-1/128"],["B","ADD",40,38,"1/64"],["B","ADD",39,38,"1"],["B","LAMBDA",38,-1],["J",1,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","ADD",1,2,"1"],["A","ADD",0,2,"-1"],["A","SCALE",1,"-1"],["A","SWAP",1,2],["A","ADD",2,0,"-1"],["A","SWAP",0,1],["A","LAMBDA",0,-1],["A","ADD",20,21,"1"],["A","ADD",19,21,"-1"],["A","SCALE",20,"-1"],["A","SWAP",20,21],["A","SCALE",19,"-1"],["A","ADD",21,19,"1"],["A","SWAP",19,20],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",40,[1]],["B","IDLE_ONE",41,[1]],["B","ADD",42,43,"-2"],["B","ADD",40,43,"-2"],["B","ADD",39,43,"-256"],["B","ADD",38,43,"-128"],["B","ADD",41,42,"1"],["B","ADD",40,42,"-2"],["B","ADD",39,42,"-256"],["B","ADD",39,41,"256"],["B","ADD",38,41,"-128"],["B","ADD",38,40,"-128"],["B","ADD",41,40,"1"],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",43,39,"-1/128"],["B","ADD",42,39,"1/128"],["B","ADD",41,39,"1/128"],["B","ADD",40,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",43,38,"1/128"],["B","ADD",41,38,"-1/128"],["B","ADD",40,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",2,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","ADD",0,1,"-1"],["A","IDLE_ONE",2,[2,3,4,5,6,7,8,9]],["A","ADD",1,3,"1"],["A","ADD",0,3,"-2"],["A","ADD",0,1,"2"],["A","SCALE",1,"-1"],["A","SCALE",0,"-1"],["A","ADD",1,0,"-1"],["A","SWAP",0,3],["A","LAMBDA",0,-1],["A","ADD",19,20,"-1"],["A","IDLE_ONE",21,[2,3,4,5,6,7,8,9]],["A","ADD",20,22,"1"],["A","ADD",19,22,"-2"],["A","ADD",19,20,"2"],["A","SCALE",19,"-1"],["A","ADD",20,19,"1"],["A","SWAP",19,22],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",40,[2,3,4,5,6,7,8,9]],["B","IDLE_ONE",41,[2,3,4,5,6,7,8,9]],["B","IDLE_ONE",42,[2]],["B","IDLE_ONE",43,[2]],["B","ADD",44,45,"-2"],["B","ADD",42,45,"-2"],["B","ADD",39,45,"-256"],["B","ADD",38,45,"-128"],["B","ADD",43,44,"1"],["B","ADD",42,44,"-2"],["B","ADD",39,44,"-256"],["B","ADD",39,43,"256"],["B","ADD",38,43,"-128"],["B","ADD",38,42,"-128"],["B","ADD",43,42,"1"],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",45,39,"-1/128"],["B","ADD",44,39,"1/128"],["B","ADD",43,39,"1/128"],["B","ADD",42,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",45,38,"1/128"],["B","ADD",43,38,"-1/128"],["B","ADD",42,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",3,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","ADD",0,1,"-1"],["A","IDLE_ONE",3,[3,4,5,6,7,8,9]],["A","ADD",1,4,"1"],["A","ADD",0,4,"-2"],["A","ADD",0,1,"2"],["A","SCALE",1,"-1"],["A","SCALE",0,"-1"],["A","ADD",1,0,"-1"],["A","SWAP",0,4],["A","LAMBDA",0,-1],["A","ADD",19,20,"-1"],["A","IDLE_ONE",22,[3,4,5,6,7,8,9]],["A","ADD",20,23,"1"],["A","ADD",19,23,"-2"],["A","ADD",19,20,"2"],["A","SCALE",19,"-1"],["A","ADD",20,19,"1"],["A","SWAP",19,23],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",42,[3,4,5,6,7,8,9]],["B","IDLE_ONE",43,[3,4,5,6,7,8,9]],["B","IDLE_ONE",44,[3]],["B","IDLE_ONE",45,[3]],["B","ADD",46,47,"-2"],["B","ADD",44,47,"-2"],["B","ADD",39,47,"-256"],["B","ADD",38,47,"-128"],["B","ADD",45,46,"1"],["B","ADD",44,46,"-2"],["B","ADD",39,46,"-256"],["B","ADD",39,45,"256"],["B","ADD",38,45,"-128"],["B","ADD",38,44,"-128"],["B","ADD",45,44,"1"],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",47,39,"-1/128"],["B","ADD",46,39,"1/128"],["B","ADD",45,39,"1/128"],["B","ADD",44,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",47,38,"1/128"],["B","ADD",45,38,"-1/128"],["B","ADD",44,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",4,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","ADD",0,1,"-1"],["A","IDLE_ONE",4,[4,5,6,7,8,9]],["A","ADD",1,5,"1"],["A","ADD",0,5,"-2"],["A","ADD",0,1,"2"],["A","SCALE",1,"-1"],["A","SCALE",0,"-1"],["A","ADD",1,0,"-1"],["A","SWAP",0,5],["A","LAMBDA",0,-1],["A","ADD",19,20,"-1"],["A","IDLE_ONE",23,[4,5,6,7,8,9]],["A","ADD",20,24,"1"],["A","ADD",19,24,"-2"],["A","ADD",19,20,"2"],["A","SCALE",19,"-1"],["A","ADD",20,19,"1"],["A","SWAP",19,24],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",44,[4,5,6,7,8,9]],["B","IDLE_ONE",45,[4,5,6,7,8,9]],["B","IDLE_ONE",46,[4]],["B","IDLE_ONE",47,[4]],["B","ADD",48,49,"-2"],["B","ADD",46,49,"-2"],["B","ADD",39,49,"-256"],["B","ADD",38,49,"-128"],["B","ADD",47,48,"1"],["B","ADD",46,48,"-2"],["B","ADD",39,48,"-256"],["B","ADD",39,47,"256"],["B","ADD",38,47,"-128"],["B","ADD",38,46,"-128"],["B","ADD",47,46,"1"],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",49,39,"-1/128"],["B","ADD",48,39,"1/128"],["B","ADD",47,39,"1/128"],["B","ADD",46,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",49,38,"1/128"],["B","ADD",47,38,"-1/128"],["B","ADD",46,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",5,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","ADD",0,1,"-1"],["A","IDLE_ONE",5,[5,6,7,8,9]],["A","ADD",1,6,"1"],["A","ADD",0,6,"-2"],["A","ADD",0,1,"2"],["A","SCALE",1,"-1"],["A","SCALE",0,"-1"],["A","ADD",1,0,"-1"],["A","SWAP",0,6],["A","LAMBDA",0,-1],["A","ADD",19,20,"-1"],["A","IDLE_ONE",24,[5,6,7,8,9]],["A","ADD",20,25,"1"],["A","ADD",19,25,"-2"],["A","ADD",19,20,"2"],["A","SCALE",19,"-1"],["A","ADD",20,19,"1"],["A","SWAP",19,25],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",46,[5,6,7,8,9]],["B","IDLE_ONE",47,[5,6,7,8,9]],["B","IDLE_ONE",48,[5]],["B","IDLE_ONE",49,[5]],["B","ADD",50,51,"-2"],["B","ADD",48,51,"-2"],["B","ADD",39,51,"-256"],["B","ADD",38,51,"-128"],["B","ADD",49,50,"1"],["B","ADD",48,50,"-2"],["B","ADD",39,50,"-256"],["B","ADD",39,49,"256"],["B","ADD",38,49,"-128"],["B","ADD",38,48,"-128"],["B","ADD",49,48,"1"],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",51,39,"-1/128"],["B","ADD",50,39,"1/128"],["B","ADD",49,39,"1/128"],["B","ADD",48,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",51,38,"1/128"],["B","ADD",49,38,"-1/128"],["B","ADD",48,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",6,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","ADD",0,1,"-1"],["A","IDLE_ONE",6,[6,7,8,9]],["A","ADD",1,7,"1"],["A","ADD",0,7,"-2"],["A","ADD",0,1,"2"],["A","SCALE",1,"-1"],["A","SCALE",0,"-1"],["A","ADD",1,0,"-1"],["A","SWAP",0,7],["A","LAMBDA",0,-1],["A","ADD",19,20,"-1"],["A","IDLE_ONE",25,[6,7,8,9]],["A","ADD",20,26,"1"],["A","ADD",19,26,"-2"],["A","ADD",19,20,"2"],["A","SCALE",19,"-1"],["A","ADD",20,19,"1"],["A","SWAP",19,26],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",48,[6,7,8,9]],["B","IDLE_ONE",49,[6,7,8,9]],["B","IDLE_ONE",50,[6]],["B","IDLE_ONE",51,[6]],["B","ADD",52,53,"-2"],["B","ADD",50,53,"-2"],["B","ADD",39,53,"-256"],["B","ADD",38,53,"-128"],["B","ADD",51,52,"1"],["B","ADD",50,52,"-2"],["B","ADD",39,52,"-256"],["B","ADD",39,51,"256"],["B","ADD",38,51,"-128"],["B","ADD",38,50,"-128"],["B","ADD",51,50,"1"],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",53,39,"-1/128"],["B","ADD",52,39,"1/128"],["B","ADD",51,39,"1/128"],["B","ADD",50,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",53,38,"1/128"],["B","ADD",51,38,"-1/128"],["B","ADD",50,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",7,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","ADD",0,1,"-1"],["A","IDLE_ONE",7,[7,8,9]],["A","ADD",1,8,"1"],["A","ADD",0,8,"-2"],["A","ADD",0,1,"2"],["A","SCALE",1,"-1"],["A","SCALE",0,"-1"],["A","ADD",1,0,"-1"],["A","SWAP",0,8],["A","LAMBDA",0,-1],["A","ADD",19,20,"-1"],["A","IDLE_ONE",26,[7,8,9]],["A","ADD",20,27,"1"],["A","ADD",19,27,"-2"],["A","ADD",19,20,"2"],["A","SCALE",19,"-1"],["A","ADD",20,19,"1"],["A","SWAP",19,27],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",50,[7,8,9]],["B","IDLE_ONE",51,[7,8,9]],["B","IDLE_ONE",52,[7]],["B","IDLE_ONE",53,[7]],["B","ADD",54,55,"-2"],["B","ADD",52,55,"-2"],["B","ADD",39,55,"-256"],["B","ADD",38,55,"-128"],["B","ADD",53,54,"1"],["B","ADD",52,54,"-2"],["B","ADD",39,54,"-256"],["B","ADD",39,53,"256"],["B","ADD",38,53,"-128"],["B","ADD",38,52,"-128"],["B","ADD",53,52,"1"],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",55,39,"-1/128"],["B","ADD",54,39,"1/128"],["B","ADD",53,39,"1/128"],["B","ADD",52,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",55,38,"1/128"],["B","ADD",53,38,"-1/128"],["B","ADD",52,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",8,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","ADD",0,1,"-1"],["A","IDLE_ONE",8,[8,9]],["A","ADD",1,9,"1"],["A","ADD",0,9,"-2"],["A","ADD",0,1,"2"],["A","SCALE",1,"-1"],["A","SCALE",0,"-1"],["A","ADD",1,0,"-1"],["A","SWAP",0,9],["A","LAMBDA",0,-1],["A","ADD",19,20,"-1"],["A","IDLE_ONE",27,[8,9]],["A","ADD",20,28,"1"],["A","ADD",19,28,"-2"],["A","ADD",19,20,"2"],["A","SCALE",19,"-1"],["A","ADD",20,19,"1"],["A","SWAP",19,28],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",52,[8,9]],["B","IDLE_ONE",53,[8,9]],["B","IDLE_ONE",54,[8]],["B","IDLE_ONE",55,[8]],["B","ADD",56,57,"-2"],["B","ADD",54,57,"-2"],["B","ADD",39,57,"-256"],["B","ADD",38,57,"-128"],["B","ADD",55,56,"1"],["B","ADD",54,56,"-2"],["B","ADD",39,56,"-256"],["B","ADD",39,55,"256"],["B","ADD",38,55,"-128"],["B","ADD",38,54,"-128"],["B","ADD",55,54,"1"],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",57,39,"-1/128"],["B","ADD",56,39,"1/128"],["B","ADD",55,39,"1/128"],["B","ADD",54,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",57,38,"1/128"],["B","ADD",55,38,"-1/128"],["B","ADD",54,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",9,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","ADD",0,1,"-1"],["A","IDLE_ONE",9,[9]],["A","SWAP",9,8],["A","SWAP",9,7],["A","SWAP",9,6],["A","SWAP",9,5],["A","SWAP",9,4],["A","SWAP",9,3],["A","SWAP",9,2],["A","ADD",0,1,"1"],["A","SCALE",1,"-1"],["A","SWAP",9,1],["A","ADD",18,0,"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",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","ADD",1,0,"1"],["A","LAMBDA",0,1],["A","QSELF",0,-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","SCALE",1,"-1"],["A","SCALE",0,"-1"],["A","ADD",18,0,"-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","LAMBDA",0,-1],["A","QUERY",0,1,-1],["A","LAMBDA",0,1],["A","ADD",1,18,"-1"],["A","ADD",0,18,"-1"],["A","ADD",1,17,"1"],["A","ADD",0,17,"1"],["A","ADD",1,16,"-1"],["A","ADD",0,16,"-1"],["A","ADD",1,15,"1"],["A","ADD",0,15,"1"],["A","ADD",1,14,"-1"],["A","ADD",0,14,"-1"],["A","ADD",1,13,"1"],["A","ADD",0,13,"1"],["A","ADD",1,12,"-1"],["A","ADD",0,12,"-1"],["A","ADD",1,11,"1"],["A","ADD",0,11,"1"],["A","ADD",1,10,"-1"],["A","SCALE",10,"-1"],["A","ADD",1,9,"1"],["A","ADD",0,9,"1"],["A","SWAP",18,9],["A","ADD",1,8,"-1"],["A","ADD",0,8,"-1"],["A","SWAP",17,8],["A","ADD",1,7,"1"],["A","ADD",0,7,"1"],["A","SWAP",16,7],["A","ADD",1,6,"-1"],["A","ADD",0,6,"-1"],["A","SWAP",15,6],["A","ADD",1,5,"1"],["A","ADD",0,5,"1"],["A","SWAP",14,5],["A","ADD",1,4,"-1"],["A","ADD",0,4,"-1"],["A","SWAP",13,4],["A","ADD",1,3,"1"],["A","ADD",0,3,"1"],["A","SWAP",12,3],["A","ADD",1,2,"-1"],["A","ADD",0,2,"-1"],["A","SWAP",11,2],["A","ADD",0,1,"-1"],["A","SCALE",1,"-1"],["A","SWAP",10,1],["A","SWAP",1,0],["A","ADD",0,1,"2"],["A","LAMBDA",0,-1],["A","ADD",19,20,"-1"],["A","IDLE_ONE",28,[9]],["A","SWAP",28,27],["A","SWAP",28,26],["A","SWAP",28,25],["A","SWAP",28,24],["A","SWAP",28,23],["A","SWAP",28,22],["A","SWAP",28,21],["A","ADD",19,20,"1"],["A","SCALE",20,"-1"],["A","SWAP",28,20],["A","ADD",37,19,"1"],["A","ADD",36,19,"1"],["A","ADD",35,19,"1"],["A","ADD",34,19,"1"],["A","ADD",33,19,"1"],["A","ADD",32,19,"1"],["A","ADD",31,19,"1"],["A","ADD",30,19,"1"],["A","ADD",29,19,"1"],["A","ADD",27,19,"1"],["A","ADD",26,19,"1"],["A","ADD",25,19,"1"],["A","ADD",24,19,"1"],["A","ADD",23,19,"1"],["A","ADD",22,19,"1"],["A","ADD",21,19,"1"],["A","ADD",20,19,"1"],["A","LAMBDA",19,1],["A","QSELF",19,-1],["A","ADD",20,37,"-1"],["A","ADD",20,36,"1"],["A","ADD",20,35,"-1"],["A","ADD",20,34,"1"],["A","ADD",20,33,"-1"],["A","ADD",20,32,"1"],["A","ADD",20,31,"-1"],["A","ADD",20,30,"1"],["A","ADD",20,29,"-1"],["A","ADD",20,28,"1"],["A","ADD",20,27,"-1"],["A","ADD",20,26,"1"],["A","ADD",20,25,"-1"],["A","ADD",20,24,"1"],["A","ADD",20,23,"-1"],["A","ADD",20,22,"1"],["A","ADD",20,21,"-1"],["A","SCALE",20,"-1"],["A","SCALE",19,"-1"],["A","ADD",37,19,"-1"],["A","ADD",36,19,"-1"],["A","ADD",35,19,"-1"],["A","ADD",34,19,"-1"],["A","ADD",33,19,"-1"],["A","ADD",32,19,"-1"],["A","ADD",31,19,"-1"],["A","ADD",30,19,"-1"],["A","ADD",29,19,"-1"],["A","ADD",28,19,"-1"],["A","ADD",27,19,"-1"],["A","ADD",26,19,"-1"],["A","ADD",25,19,"-1"],["A","ADD",24,19,"-1"],["A","ADD",23,19,"-1"],["A","ADD",22,19,"-1"],["A","ADD",21,19,"-1"],["A","LAMBDA",19,-1],["A","QUERY",19,20,-1],["A","LAMBDA",19,1],["A","ADD",20,37,"-1"],["A","ADD",19,37,"-1"],["A","ADD",20,36,"1"],["A","ADD",19,36,"1"],["A","ADD",20,35,"-1"],["A","ADD",19,35,"-1"],["A","ADD",20,34,"1"],["A","ADD",19,34,"1"],["A","ADD",20,33,"-1"],["A","ADD",19,33,"-1"],["A","ADD",20,32,"1"],["A","ADD",19,32,"1"],["A","ADD",20,31,"-1"],["A","ADD",19,31,"-1"],["A","ADD",20,30,"1"],["A","ADD",19,30,"1"],["A","ADD",20,29,"-1"],["A","SCALE",29,"-1"],["A","ADD",20,28,"1"],["A","ADD",19,28,"1"],["A","SWAP",37,28],["A","ADD",20,27,"-1"],["A","ADD",19,27,"-1"],["A","SWAP",36,27],["A","ADD",20,26,"1"],["A","ADD",19,26,"1"],["A","SWAP",35,26],["A","ADD",20,25,"-1"],["A","ADD",19,25,"-1"],["A","SWAP",34,25],["A","ADD",20,24,"1"],["A","ADD",19,24,"1"],["A","SWAP",33,24],["A","ADD",20,23,"-1"],["A","ADD",19,23,"-1"],["A","SWAP",32,23],["A","ADD",20,22,"1"],["A","ADD",19,22,"1"],["A","SWAP",31,22],["A","ADD",20,21,"-1"],["A","ADD",19,21,"-1"],["A","SWAP",30,21],["A","ADD",19,20,"-1"],["A","SCALE",20,"-1"],["A","SWAP",29,20],["A","SCALE",19,"-1"],["A","SWAP",20,19],["A","ADD",19,20,"-2"],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",54,[9]],["B","IDLE_ONE",55,[9]],["B","IDLE_ONE",56,[9]],["B","IDLE_ONE",57,[9]],["B","ADD",56,75,"1"],["B","ADD",55,75,"1"],["B","ADD",53,75,"1"],["B","ADD",51,75,"1"],["B","ADD",49,75,"1"],["B","ADD",47,75,"1"],["B","ADD",45,75,"1"],["B","ADD",43,75,"1"],["B","ADD",41,75,"1"],["B","ADD",39,75,"-128"],["B","ADD",38,75,"64"],["B","ADD",56,73,"-1"],["B","ADD",55,73,"-1"],["B","ADD",53,73,"-1"],["B","ADD",51,73,"-1"],["B","ADD",49,73,"-1"],["B","ADD",47,73,"-1"],["B","ADD",45,73,"-1"],["B","ADD",43,73,"-1"],["B","ADD",41,73,"-1"],["B","ADD",39,73,"128"],["B","ADD",38,73,"-64"],["B","ADD",56,72,"2"],["B","ADD",55,72,"2"],["B","ADD",53,72,"2"],["B","ADD",51,72,"2"],["B","ADD",49,72,"2"],["B","ADD",47,72,"2"],["B","ADD",45,72,"2"],["B","ADD",43,72,"2"],["B","ADD",41,72,"2"],["B","ADD",39,72,"-256"],["B","ADD",38,72,"128"],["B","ADD",56,71,"-1"],["B","ADD",55,71,"-1"],["B","ADD",53,71,"-1"],["B","ADD",51,71,"-1"],["B","ADD",49,71,"-1"],["B","ADD",47,71,"-1"],["B","ADD",45,71,"-1"],["B","ADD",43,71,"-1"],["B","ADD",41,71,"-1"],["B","ADD",39,71,"128"],["B","ADD",38,71,"-64"],["B","ADD",56,69,"1"],["B","ADD",55,69,"1"],["B","ADD",53,69,"1"],["B","ADD",51,69,"1"],["B","ADD",49,69,"1"],["B","ADD",47,69,"1"],["B","ADD",45,69,"1"],["B","ADD",43,69,"1"],["B","ADD",41,69,"1"],["B","ADD",39,69,"-128"],["B","ADD",38,69,"64"],["B","ADD",56,68,"-2"],["B","ADD",55,68,"-2"],["B","ADD",53,68,"-2"],["B","ADD",51,68,"-2"],["B","ADD",49,68,"-2"],["B","ADD",47,68,"-2"],["B","ADD",45,68,"-2"],["B","ADD",43,68,"-2"],["B","ADD",41,68,"-2"],["B","ADD",39,68,"256"],["B","ADD",38,68,"-128"],["B","ADD",56,67,"1"],["B","ADD",55,67,"1"],["B","ADD",53,67,"1"],["B","ADD",51,67,"1"],["B","ADD",49,67,"1"],["B","ADD",47,67,"1"],["B","ADD",45,67,"1"],["B","ADD",43,67,"1"],["B","ADD",41,67,"1"],["B","ADD",39,67,"-128"],["B","ADD",38,67,"64"],["B","ADD",56,65,"-1"],["B","ADD",55,65,"-1"],["B","ADD",53,65,"-1"],["B","ADD",51,65,"-1"],["B","ADD",49,65,"-1"],["B","ADD",47,65,"-1"],["B","ADD",45,65,"-1"],["B","ADD",43,65,"-1"],["B","ADD",41,65,"-1"],["B","ADD",39,65,"128"],["B","ADD",38,65,"-64"],["B","ADD",56,64,"2"],["B","ADD",55,64,"2"],["B","ADD",53,64,"2"],["B","ADD",51,64,"2"],["B","ADD",49,64,"2"],["B","ADD",47,64,"2"],["B","ADD",45,64,"2"],["B","ADD",43,64,"2"],["B","ADD",41,64,"2"],["B","ADD",39,64,"-256"],["B","ADD",38,64,"128"],["B","ADD",56,63,"-1"],["B","ADD",55,63,"-1"],["B","ADD",53,63,"-1"],["B","ADD",51,63,"-1"],["B","ADD",49,63,"-1"],["B","ADD",47,63,"-1"],["B","ADD",45,63,"-1"],["B","ADD",43,63,"-1"],["B","ADD",41,63,"-1"],["B","ADD",39,63,"128"],["B","ADD",38,63,"-64"],["B","ADD",56,61,"1"],["B","ADD",55,61,"1"],["B","ADD",53,61,"1"],["B","ADD",51,61,"1"],["B","ADD",49,61,"1"],["B","ADD",47,61,"1"],["B","ADD",45,61,"1"],["B","ADD",43,61,"1"],["B","ADD",41,61,"1"],["B","ADD",39,61,"-128"],["B","ADD",38,61,"64"],["B","ADD",56,60,"-2"],["B","ADD",55,60,"-2"],["B","ADD",53,60,"-2"],["B","ADD",51,60,"-2"],["B","ADD",49,60,"-2"],["B","ADD",47,60,"-2"],["B","ADD",45,60,"-2"],["B","ADD",43,60,"-2"],["B","ADD",41,60,"-2"],["B","ADD",39,60,"256"],["B","ADD",38,60,"-128"],["B","ADD",56,59,"1"],["B","ADD",55,59,"1"],["B","ADD",53,59,"1"],["B","ADD",51,59,"1"],["B","ADD",49,59,"1"],["B","ADD",47,59,"1"],["B","ADD",45,59,"1"],["B","ADD",43,59,"1"],["B","ADD",41,59,"1"],["B","ADD",39,59,"-128"],["B","ADD",38,59,"64"],["B","ADD",39,57,"256"],["B","ADD",38,57,"-128"],["B","ADD",55,56,"-3/2"],["B","ADD",53,56,"-1"],["B","ADD",51,56,"-1"],["B","ADD",49,56,"-1"],["B","ADD",47,56,"-1"],["B","ADD",45,56,"-1"],["B","ADD",43,56,"-1"],["B","ADD",41,56,"-1"],["B","ADD",39,56,"128"],["B","ADD",38,56,"-64"],["B","SCALE",56,"1/2"],["B","ADD",53,55,"-1"],["B","ADD",51,55,"-1"],["B","ADD",49,55,"-1"],["B","ADD",47,55,"-1"],["B","ADD",45,55,"-1"],["B","ADD",43,55,"-1"],["B","ADD",41,55,"-1"],["B","ADD",39,55,"128"],["B","ADD",38,55,"64"],["B","SCALE",55,"-1"],["B","ADD",57,55,"1"],["B","SWAP",55,56],["B","ADD",53,54,"1/2"],["B","ADD",51,54,"1/2"],["B","ADD",49,54,"1/2"],["B","ADD",47,54,"1/2"],["B","ADD",45,54,"1/2"],["B","ADD",43,54,"1/2"],["B","ADD",41,54,"1/2"],["B","ADD",39,54,"-64"],["B","ADD",38,54,"-32"],["B","ADD",57,54,"1/2"],["B","ADD",56,54,"1/2"],["B","ADD",55,54,"1/2"],["B","ADD",51,52,"-1/2"],["B","ADD",49,52,"-1/2"],["B","ADD",47,52,"-1/2"],["B","ADD",45,52,"-1/2"],["B","ADD",43,52,"-1/2"],["B","ADD",41,52,"-1/2"],["B","ADD",39,52,"64"],["B","ADD",38,52,"32"],["B","ADD",57,52,"-1/2"],["B","ADD",56,52,"-1/2"],["B","ADD",55,52,"-1/2"],["B","ADD",53,52,"-1/2"],["B","ADD",49,51,"-1"],["B","ADD",47,51,"-2"],["B","ADD",45,51,"-1"],["B","ADD",43,51,"-1"],["B","ADD",41,51,"-1"],["B","ADD",39,51,"128"],["B","ADD",38,51,"64"],["B","ADD",57,51,"-1"],["B","ADD",56,51,"-1"],["B","ADD",55,51,"-1"],["B","ADD",53,51,"-1"],["B","ADD",47,50,"1/2"],["B","ADD",51,50,"-1/2"],["B","ADD",47,49,"-1"],["B","ADD",45,49,"-1"],["B","ADD",43,49,"-1"],["B","ADD",41,49,"-1"],["B","ADD",39,49,"128"],["B","ADD",38,49,"64"],["B","SCALE",49,"-1"],["B","ADD",57,49,"1"],["B","ADD",56,49,"1"],["B","ADD",55,49,"1"],["B","ADD",53,49,"1"],["B","SWAP",49,51],["B","ADD",47,48,"-1/2"],["B","ADD",49,48,"1/2"],["B","ADD",45,47,"-1"],["B","ADD",43,47,"-1"],["B","ADD",41,47,"-1"],["B","ADD",39,47,"128"],["B","ADD",38,47,"64"],["B","SCALE",47,"-1"],["B","ADD",57,47,"1"],["B","ADD",56,47,"1"],["B","ADD",55,47,"1"],["B","ADD",53,47,"1"],["B","ADD",51,47,"1"],["B","SWAP",47,49],["B","ADD",45,46,"1/2"],["B","ADD",43,46,"1/2"],["B","ADD",41,46,"1/2"],["B","ADD",39,46,"-64"],["B","ADD",38,46,"-32"],["B","ADD",57,46,"1/2"],["B","ADD",56,46,"1/2"],["B","ADD",55,46,"1/2"],["B","ADD",53,46,"1/2"],["B","ADD",51,46,"1/2"],["B","ADD",49,46,"1/2"],["B","ADD",47,46,"1/2"],["B","ADD",43,44,"-1/2"],["B","ADD",41,44,"-1/2"],["B","ADD",39,44,"64"],["B","ADD",38,44,"32"],["B","ADD",57,44,"-1/2"],["B","ADD",56,44,"-1/2"],["B","ADD",55,44,"-1/2"],["B","ADD",53,44,"-1/2"],["B","ADD",51,44,"-1/2"],["B","ADD",49,44,"-1/2"],["B","ADD",47,44,"-1/2"],["B","ADD",45,44,"-1/2"],["B","ADD",41,43,"-1"],["B","ADD",39,43,"128"],["B","ADD",38,43,"64"],["B","SCALE",43,"2"],["B","ADD",57,43,"-1/2"],["B","ADD",56,43,"-1/2"],["B","ADD",55,43,"-1/2"],["B","ADD",53,43,"-1/2"],["B","ADD",51,43,"-1/2"],["B","ADD",49,43,"-1/2"],["B","ADD",47,43,"-1/2"],["B","ADD",45,43,"-1/2"],["B","ADD",43,42,"-1"],["B","ADD",39,41,"128"],["B","ADD",38,41,"64"],["B","SCALE",41,"-1"],["B","ADD",57,41,"1"],["B","ADD",56,41,"1"],["B","ADD",55,41,"1"],["B","ADD",53,41,"1"],["B","ADD",51,41,"1"],["B","ADD",49,41,"1"],["B","ADD",47,41,"1"],["B","ADD",45,41,"1"],["B","SWAP",41,43],["B","ADD",41,40,"1"],["B","ADD",38,39,"-1/2"],["B","SCALE",39,"1/128"],["B","ADD",57,39,"1"],["B","ADD",56,39,"1"],["B","ADD",55,39,"1"],["B","ADD",53,39,"1"],["B","ADD",51,39,"1"],["B","ADD",49,39,"1"],["B","ADD",47,39,"1"],["B","ADD",45,39,"1"],["B","ADD",43,39,"1"],["B","SWAP",39,41],["B","SCALE",38,"1/128"],["B","ADD",57,38,"2"],["B","ADD",56,38,"2"],["B","ADD",55,38,"1"],["B","ADD",53,38,"1"],["B","ADD",51,38,"1"],["B","ADD",49,38,"1"],["B","ADD",47,38,"1"],["B","ADD",45,38,"1"],["B","ADD",43,38,"1"],["B","ADD",41,38,"1"],["B","ADD",39,38,"1"],["B","LAMBDA",38,-1],["B","QUERY",38,39,-1],["B","LAMBDA",38,1],["B","ADD",38,39,"-1"],["B","ADD",39,75,"-1"],["B","ADD",39,73,"1"],["B","ADD",39,72,"-2"],["B","ADD",39,71,"1"],["B","ADD",39,69,"-1"],["B","ADD",39,68,"2"],["B","ADD",39,67,"-1"],["B","ADD",39,65,"1"],["B","ADD",39,64,"-2"],["B","ADD",39,63,"1"],["B","ADD",39,61,"-1"],["B","ADD",39,60,"2"],["B","ADD",39,59,"-1"],["B","ADD",39,56,"-1"],["B","ADD",39,55,"2"],["B","ADD",39,54,"-1"],["B","ADD",39,52,"1"],["B","ADD",39,51,"-2"],["B","ADD",39,50,"1"],["B","ADD",39,48,"-1"],["B","ADD",39,47,"2"],["B","ADD",39,46,"-1"],["B","ADD",39,44,"1"],["B","ADD",39,43,"-2"],["B","ADD",39,42,"1"],["B","ADD",39,40,"-1"],["B","ADD",38,39,"-1"],["B","ADD",57,39,"-1"],["B","ADD",56,39,"-2"],["B","ADD",55,39,"-1"],["B","ADD",54,39,"-2"],["B","ADD",53,39,"-1"],["B","ADD",52,39,"-2"],["B","ADD",51,39,"-1"],["B","ADD",50,39,"-2"],["B","ADD",49,39,"-1"],["B","ADD",48,39,"-2"],["B","ADD",47,39,"-1"],["B","ADD",46,39,"-2"],["B","ADD",45,39,"-1"],["B","ADD",44,39,"-2"],["B","ADD",43,39,"-1"],["B","ADD",42,39,"-2"],["B","ADD",41,39,"-1"],["B","ADD",40,39,"-2"],["B","SCALE",38,"1/2"],["B","ADD",74,38,"-1"],["B","ADD",72,38,"-1"],["B","ADD",70,38,"-1"],["B","ADD",68,38,"-1"],["B","ADD",66,38,"-1"],["B","ADD",64,38,"-1"],["B","ADD",62,38,"-1"],["B","ADD",60,38,"-1"],["B","ADD",58,38,"-1"],["B","ADD",57,38,"-1"],["B","ADD",56,38,"-2"],["B","ADD",55,38,"-1"],["B","ADD",54,38,"-2"],["B","ADD",53,38,"-1"],["B","ADD",52,38,"-2"],["B","ADD",51,38,"-1"],["B","ADD",50,38,"-2"],["B","ADD",49,38,"-1"],["B","ADD",48,38,"-2"],["B","ADD",47,38,"-1"],["B","ADD",46,38,"-2"],["B","ADD",45,38,"-1"],["B","ADD",44,38,"-2"],["B","ADD",43,38,"-1"],["B","ADD",42,38,"-2"],["B","ADD",41,38,"-1"],["B","ADD",40,38,"-2"],["B","ADD",39,38,"1"],["B","LAMBDA",38,-1],["B","QUERY",38,39,-1],["B","LAMBDA",38,1],["B","ADD",38,39,"-1"],["B","SCALE",38,"2"],["B","ADD",75,38,"-1"],["B","ADD",74,38,"-1/2"],["B","ADD",73,38,"-1"],["B","ADD",72,38,"-1/2"],["B","ADD",71,38,"-1"],["B","ADD",70,38,"-1/2"],["B","ADD",69,38,"-1"],["B","ADD",68,38,"-1/2"],["B","ADD",67,38,"-1"],["B","ADD",66,38,"-1/2"],["B","ADD",65,38,"-1"],["B","ADD",64,38,"-1/2"],["B","ADD",63,38,"-1"],["B","ADD",62,38,"-1/2"],["B","ADD",61,38,"-1"],["B","ADD",60,38,"-1/2"],["B","ADD",59,38,"-1"],["B","ADD",58,38,"-1/2"],["B","ADD",57,38,"-1/2"],["B","ADD",55,38,"-1/2"],["B","ADD",53,38,"-1/2"],["B","ADD",51,38,"-1/2"],["B","ADD",49,38,"-1/2"],["B","ADD",47,38,"-1/2"],["B","ADD",45,38,"-1/2"],["B","ADD",43,38,"-1/2"],["B","ADD",41,38,"-1/2"],["B","ADD",39,38,"1/2"],["B","LAMBDA",38,-1],["B","QUERY",38,39,-1],["B","LAMBDA",38,1],["B","ADD",38,39,"-1"],["B","ADD",74,75,"-1/2"],["B","ADD",73,75,"-1"],["B","ADD",72,75,"-1"],["B","ADD",71,75,"-1"],["B","ADD",70,75,"-1"],["B","ADD",69,75,"-1"],["B","ADD",68,75,"-1"],["B","ADD",67,75,"-1"],["B","ADD",66,75,"-1"],["B","ADD",65,75,"-1"],["B","ADD",64,75,"-1"],["B","ADD",63,75,"-1"],["B","ADD",62,75,"-1"],["B","ADD",61,75,"-1"],["B","ADD",60,75,"-1"],["B","ADD",59,75,"-1"],["B","ADD",58,75,"-1"],["B","ADD",56,75,"1"],["B","ADD",54,75,"1"],["B","ADD",52,75,"1"],["B","ADD",50,75,"1"],["B","ADD",48,75,"1"],["B","ADD",46,75,"1"],["B","ADD",44,75,"1"],["B","ADD",42,75,"1"],["B","ADD",40,75,"1"],["B","ADD",38,75,"1"],["B","SCALE",75,"-1/2"],["B","ADD",73,74,"2"],["B","ADD",72,74,"2"],["B","ADD",71,74,"2"],["B","ADD",70,74,"2"],["B","ADD",69,74,"2"],["B","ADD",68,74,"2"],["B","ADD",67,74,"2"],["B","ADD",66,74,"2"],["B","ADD",65,74,"2"],["B","ADD",64,74,"2"],["B","ADD",63,74,"2"],["B","ADD",62,74,"2"],["B","ADD",61,74,"2"],["B","ADD",60,74,"2"],["B","ADD",59,74,"2"],["B","ADD",58,74,"2"],["B","ADD",56,74,"-2"],["B","ADD",54,74,"-2"],["B","ADD",52,74,"-2"],["B","ADD",50,74,"-2"],["B","ADD",48,74,"-2"],["B","ADD",46,74,"-2"],["B","ADD",44,74,"-2"],["B","ADD",42,74,"-2"],["B","ADD",40,74,"-2"],["B","ADD",38,74,"-2"],["B","SCALE",74,"2"],["B","ADD",75,74,"3/2"],["B","SWAP",74,75],["B","ADD",71,72,"-1/2"],["B","ADD",70,72,"-1"],["B","ADD",69,72,"-1"],["B","ADD",68,72,"-1"],["B","ADD",67,72,"-1"],["B","ADD",66,72,"-1"],["B","ADD",65,72,"-1"],["B","ADD",64,72,"-1"],["B","ADD",63,72,"-1"],["B","ADD",62,72,"-1"],["B","ADD",61,72,"-1"],["B","ADD",60,72,"-1"],["B","ADD",59,72,"-1"],["B","ADD",58,72,"-1"],["B","ADD",56,72,"1"],["B","ADD",54,72,"1"],["B","ADD",52,72,"1"],["B","ADD",50,72,"1"],["B","ADD",48,72,"1"],["B","ADD",46,72,"1"],["B","ADD",44,72,"1"],["B","ADD",42,72,"1"],["B","ADD",40,72,"1"],["B","ADD",38,72,"1"],["B","SCALE",72,"-1/2"],["B","ADD",75,72,"2"],["B","ADD",74,72,"2"],["B","ADD",73,72,"2"],["B","ADD",70,71,"2"],["B","ADD",69,71,"2"],["B","ADD",68,71,"2"],["B","ADD",67,71,"2"],["B","ADD",66,71,"2"],["B","ADD",65,71,"2"],["B","ADD",64,71,"2"],["B","ADD",63,71,"2"],["B","ADD",62,71,"2"],["B","ADD",61,71,"2"],["B","ADD",60,71,"2"],["B","ADD",59,71,"2"],["B","ADD",58,71,"2"],["B","ADD",56,71,"-2"],["B","ADD",54,71,"-2"],["B","ADD",52,71,"-2"],["B","ADD",50,71,"-2"],["B","ADD",48,71,"-2"],["B","ADD",46,71,"-2"],["B","ADD",44,71,"-2"],["B","ADD",42,71,"-2"],["B","ADD",40,71,"-2"],["B","ADD",38,71,"-2"],["B","SCALE",71,"2"],["B","ADD",75,71,"1"],["B","ADD",74,71,"1"],["B","ADD",73,71,"1"],["B","ADD",72,71,"3/2"],["B","SWAP",71,72],["B","ADD",69,70,"-1"],["B","ADD",68,70,"-1/2"],["B","ADD",67,70,"-1"],["B","ADD",66,70,"-1"],["B","ADD",65,70,"-1"],["B","ADD",64,70,"-1"],["B","ADD",63,70,"-1"],["B","ADD",62,70,"-1"],["B","ADD",61,70,"-1"],["B","ADD",60,70,"-1"],["B","ADD",59,70,"-1"],["B","ADD",58,70,"-1"],["B","ADD",56,70,"1"],["B","ADD",54,70,"1"],["B","ADD",52,70,"1"],["B","ADD",50,70,"1"],["B","ADD",48,70,"1"],["B","ADD",46,70,"1"],["B","ADD",44,70,"1"],["B","ADD",42,70,"1"],["B","ADD",40,70,"1"],["B","ADD",38,70,"1"],["B","SCALE",70,"-1/2"],["B","ADD",75,70,"2"],["B","ADD",74,70,"2"],["B","ADD",73,70,"2"],["B","ADD",72,70,"2"],["B","ADD",71,70,"2"],["B","ADD",68,69,"1/2"],["B","ADD",67,69,"-1"],["B","ADD",66,69,"-1"],["B","ADD",65,69,"-1"],["B","ADD",64,69,"-1"],["B","ADD",63,69,"-1"],["B","ADD",62,69,"-1"],["B","ADD",61,69,"-1"],["B","ADD",60,69,"-1"],["B","ADD",59,69,"-1"],["B","ADD",58,69,"-1"],["B","ADD",56,69,"1"],["B","ADD",54,69,"1"],["B","ADD",52,69,"1"],["B","ADD",50,69,"1"],["B","ADD",48,69,"1"],["B","ADD",46,69,"1"],["B","ADD",44,69,"1"],["B","ADD",42,69,"1"],["B","ADD",40,69,"1"],["B","ADD",38,69,"1"],["B","SCALE",69,"-1"],["B","ADD",75,69,"1"],["B","ADD",74,69,"1"],["B","ADD",73,69,"1"],["B","ADD",72,69,"1"],["B","ADD",71,69,"1"],["B","ADD",70,69,"3/2"],["B","SWAP",69,70],["B","ADD",67,68,"2"],["B","ADD",66,68,"2"],["B","ADD",65,68,"2"],["B","ADD",64,68,"2"],["B","ADD",63,68,"2"],["B","ADD",62,68,"2"],["B","ADD",61,68,"2"],["B","ADD",60,68,"2"],["B","ADD",59,68,"2"],["B","ADD",58,68,"2"],["B","ADD",56,68,"-2"],["B","ADD",54,68,"-2"],["B","ADD",52,68,"-2"],["B","ADD",50,68,"-2"],["B","ADD",48,68,"-2"],["B","ADD",46,68,"-2"],["B","ADD",44,68,"-2"],["B","ADD",42,68,"-2"],["B","ADD",40,68,"-2"],["B","ADD",38,68,"-2"],["B","SCALE",68,"2"],["B","ADD",75,68,"1"],["B","ADD",74,68,"1"],["B","ADD",73,68,"1"],["B","ADD",72,68,"1"],["B","ADD",71,68,"1"],["B","ADD",70,68,"1"],["B","ADD",69,68,"3/2"],["B","SWAP",68,69],["B","ADD",66,67,"-1/2"],["B","ADD",65,67,"-1"],["B","ADD",64,67,"-1"],["B","ADD",63,67,"-1"],["B","ADD",62,67,"-1"],["B","ADD",61,67,"-1"],["B","ADD",60,67,"-1"],["B","ADD",59,67,"-1"],["B","ADD",58,67,"-1"],["B","ADD",56,67,"1"],["B","ADD",54,67,"1"],["B","ADD",52,67,"1"],["B","ADD",50,67,"1"],["B","ADD",48,67,"1"],["B","ADD",46,67,"1"],["B","ADD",44,67,"1"],["B","ADD",42,67,"1"],["B","ADD",40,67,"1"],["B","ADD",38,67,"1"],["B","SCALE",67,"-1/2"],["B","ADD",75,67,"2"],["B","ADD",74,67,"2"],["B","ADD",73,67,"2"],["B","ADD",72,67,"2"],["B","ADD",71,67,"2"],["B","ADD",70,67,"2"],["B","ADD",69,67,"2"],["B","ADD",68,67,"2"],["B","ADD",65,66,"2"],["B","ADD",64,66,"2"],["B","ADD",63,66,"2"],["B","ADD",62,66,"2"],["B","ADD",61,66,"2"],["B","ADD",60,66,"2"],["B","ADD",59,66,"2"],["B","ADD",58,66,"2"],["B","ADD",56,66,"-2"],["B","ADD",54,66,"-2"],["B","ADD",52,66,"-2"],["B","ADD",50,66,"-2"],["B","ADD",48,66,"-2"],["B","ADD",46,66,"-2"],["B","ADD",44,66,"-2"],["B","ADD",42,66,"-2"],["B","ADD",40,66,"-2"],["B","ADD",38,66,"-2"],["B","SCALE",66,"2"],["B","ADD",75,66,"1"],["B","ADD",74,66,"1"],["B","ADD",73,66,"1"],["B","ADD",72,66,"1"],["B","ADD",71,66,"1"],["B","ADD",70,66,"1"],["B","ADD",69,66,"1"],["B","ADD",68,66,"1"],["B","ADD",67,66,"3/2"],["B","SWAP",66,67],["B","ADD",63,64,"-1/2"],["B","ADD",62,64,"-1"],["B","ADD",61,64,"-1"],["B","ADD",60,64,"-1"],["B","ADD",59,64,"-1"],["B","ADD",58,64,"-1"],["B","ADD",56,64,"1"],["B","ADD",54,64,"1"],["B","ADD",52,64,"1"],["B","ADD",50,64,"1"],["B","ADD",48,64,"1"],["B","ADD",46,64,"1"],["B","ADD",44,64,"1"],["B","ADD",42,64,"1"],["B","ADD",40,64,"1"],["B","ADD",38,64,"1"],["B","SCALE",64,"-1/2"],["B","ADD",75,64,"2"],["B","ADD",74,64,"2"],["B","ADD",73,64,"2"],["B","ADD",72,64,"2"],["B","ADD",71,64,"2"],["B","ADD",70,64,"2"],["B","ADD",69,64,"2"],["B","ADD",68,64,"2"],["B","ADD",67,64,"2"],["B","ADD",66,64,"2"],["B","ADD",65,64,"2"],["B","ADD",62,63,"2"],["B","ADD",61,63,"2"],["B","ADD",60,63,"2"],["B","ADD",59,63,"2"],["B","ADD",58,63,"2"],["B","ADD",56,63,"-2"],["B","ADD",54,63,"-2"],["B","ADD",52,63,"-2"],["B","ADD",50,63,"-2"],["B","ADD",48,63,"-2"],["B","ADD",46,63,"-2"],["B","ADD",44,63,"-2"],["B","ADD",42,63,"-2"],["B","ADD",40,63,"-2"],["B","ADD",38,63,"-2"],["B","SCALE",63,"2"],["B","ADD",75,63,"1"],["B","ADD",74,63,"1"],["B","ADD",73,63,"1"],["B","ADD",72,63,"1"],["B","ADD",71,63,"1"],["B","ADD",70,63,"1"],["B","ADD",69,63,"1"],["B","ADD",68,63,"1"],["B","ADD",67,63,"1"],["B","ADD",66,63,"1"],["B","ADD",65,63,"1"],["B","ADD",64,63,"3/2"],["B","SWAP",63,64],["B","ADD",61,62,"-1"],["B","ADD",60,62,"-1/2"],["B","ADD",59,62,"-1"],["B","ADD",58,62,"-1"],["B","ADD",56,62,"1"],["B","ADD",54,62,"1"],["B","ADD",52,62,"1"],["B","ADD",50,62,"1"],["B","ADD",48,62,"1"],["B","ADD",46,62,"1"],["B","ADD",44,62,"1"],["B","ADD",42,62,"1"],["B","ADD",40,62,"1"],["B","ADD",38,62,"1"],["B","SCALE",62,"-1/2"],["B","ADD",75,62,"2"],["B","ADD",74,62,"2"],["B","ADD",73,62,"2"],["B","ADD",72,62,"2"],["B","ADD",71,62,"2"],["B","ADD",70,62,"2"],["B","ADD",69,62,"2"],["B","ADD",68,62,"2"],["B","ADD",67,62,"2"],["B","ADD",66,62,"2"],["B","ADD",65,62,"2"],["B","ADD",64,62,"2"],["B","ADD",63,62,"2"],["B","ADD",60,61,"1/2"],["B","ADD",59,61,"-1"],["B","ADD",58,61,"-1"],["B","ADD",56,61,"1"],["B","ADD",54,61,"1"],["B","ADD",52,61,"1"],["B","ADD",50,61,"1"],["B","ADD",48,61,"1"],["B","ADD",46,61,"1"],["B","ADD",44,61,"1"],["B","ADD",42,61,"1"],["B","ADD",40,61,"1"],["B","ADD",38,61,"1"],["B","SCALE",61,"-1"],["B","ADD",75,61,"1"],["B","ADD",74,61,"1"],["B","ADD",73,61,"1"],["B","ADD",72,61,"1"],["B","ADD",71,61,"1"],["B","ADD",70,61,"1"],["B","ADD",69,61,"1"],["B","ADD",68,61,"1"],["B","ADD",67,61,"1"],["B","ADD",66,61,"1"],["B","ADD",65,61,"1"],["B","ADD",64,61,"1"],["B","ADD",63,61,"1"],["B","ADD",62,61,"3/2"],["B","SWAP",61,62],["B","ADD",59,60,"2"],["B","ADD",58,60,"2"],["B","ADD",56,60,"-2"],["B","ADD",54,60,"-2"],["B","ADD",52,60,"-2"],["B","ADD",50,60,"-2"],["B","ADD",48,60,"-2"],["B","ADD",46,60,"-2"],["B","ADD",44,60,"-2"],["B","ADD",42,60,"-2"],["B","ADD",40,60,"-2"],["B","ADD",38,60,"-2"],["B","SCALE",60,"2"],["B","ADD",75,60,"1"],["B","ADD",74,60,"1"],["B","ADD",73,60,"1"],["B","ADD",72,60,"1"],["B","ADD",71,60,"1"],["B","ADD",70,60,"1"],["B","ADD",69,60,"1"],["B","ADD",68,60,"1"],["B","ADD",67,60,"1"],["B","ADD",66,60,"1"],["B","ADD",65,60,"1"],["B","ADD",64,60,"1"],["B","ADD",63,60,"1"],["B","ADD",62,60,"1"],["B","ADD",61,60,"3/2"],["B","SWAP",60,61],["B","ADD",58,59,"-1/2"],["B","ADD",56,59,"1"],["B","ADD",54,59,"1"],["B","ADD",52,59,"1"],["B","ADD",50,59,"1"],["B","ADD",48,59,"1"],["B","ADD",46,59,"1"],["B","ADD",44,59,"1"],["B","ADD",42,59,"1"],["B","ADD",40,59,"1"],["B","ADD",38,59,"1"],["B","SCALE",59,"-1/2"],["B","ADD",75,59,"2"],["B","ADD",74,59,"2"],["B","ADD",73,59,"2"],["B","ADD",72,59,"2"],["B","ADD",71,59,"2"],["B","ADD",70,59,"2"],["B","ADD",69,59,"2"],["B","ADD",68,59,"2"],["B","ADD",67,59,"2"],["B","ADD",66,59,"2"],["B","ADD",65,59,"2"],["B","ADD",64,59,"2"],["B","ADD",63,59,"2"],["B","ADD",62,59,"2"],["B","ADD",61,59,"2"],["B","ADD",60,59,"2"],["B","ADD",56,58,"-2"],["B","ADD",54,58,"-2"],["B","ADD",52,58,"-2"],["B","ADD",50,58,"-2"],["B","ADD",48,58,"-2"],["B","ADD",46,58,"-2"],["B","ADD",44,58,"-2"],["B","ADD",42,58,"-2"],["B","ADD",40,58,"-2"],["B","ADD",38,58,"-2"],["B","SCALE",58,"2"],["B","ADD",75,58,"1"],["B","ADD",74,58,"1"],["B","ADD",73,58,"1"],["B","ADD",72,58,"1"],["B","ADD",71,58,"1"],["B","ADD",70,58,"1"],["B","ADD",69,58,"1"],["B","ADD",68,58,"1"],["B","ADD",67,58,"1"],["B","ADD",66,58,"1"],["B","ADD",65,58,"1"],["B","ADD",64,58,"1"],["B","ADD",63,58,"1"],["B","ADD",62,58,"1"],["B","ADD",61,58,"1"],["B","ADD",60,58,"1"],["B","ADD",59,58,"3/2"],["B","SWAP",58,59],["B","ADD",56,57,"-2"],["B","ADD",54,57,"-2"],["B","ADD",52,57,"-2"],["B","ADD",50,57,"-2"],["B","ADD",48,57,"-2"],["B","ADD",46,57,"-2"],["B","ADD",44,57,"-2"],["B","ADD",42,57,"-2"],["B","ADD",40,57,"-2"],["B","ADD",38,57,"-2"],["B","ADD",75,57,"2"],["B","ADD",74,57,"2"],["B","ADD",73,57,"2"],["B","ADD",72,57,"2"],["B","ADD",71,57,"2"],["B","ADD",70,57,"2"],["B","ADD",69,57,"2"],["B","ADD",68,57,"2"],["B","ADD",67,57,"2"],["B","ADD",66,57,"2"],["B","ADD",65,57,"2"],["B","ADD",64,57,"2"],["B","ADD",63,57,"2"],["B","ADD",62,57,"2"],["B","ADD",61,57,"2"],["B","ADD",60,57,"2"],["B","ADD",59,57,"2"],["B","ADD",58,57,"2"],["B","ADD",54,56,"-2"],["B","ADD",52,56,"-2"],["B","ADD",50,56,"-2"],["B","ADD",48,56,"-2"],["B","ADD",46,56,"-2"],["B","ADD",44,56,"-2"],["B","ADD",42,56,"-2"],["B","ADD",40,56,"-2"],["B","ADD",38,56,"-2"],["B","SCALE",56,"-1"],["B","ADD",75,56,"-2"],["B","ADD",74,56,"-2"],["B","ADD",73,56,"-2"],["B","ADD",72,56,"-2"],["B","ADD",71,56,"-2"],["B","ADD",70,56,"-2"],["B","ADD",69,56,"-2"],["B","ADD",68,56,"-2"],["B","ADD",67,56,"-2"],["B","ADD",66,56,"-2"],["B","ADD",65,56,"-2"],["B","ADD",64,56,"-2"],["B","ADD",63,56,"-2"],["B","ADD",62,56,"-2"],["B","ADD",61,56,"-2"],["B","ADD",60,56,"-2"],["B","ADD",59,56,"-2"],["B","ADD",58,56,"-2"],["B","ADD",54,55,"2"],["B","ADD",52,55,"2"],["B","ADD",50,55,"2"],["B","ADD",48,55,"2"],["B","ADD",46,55,"2"],["B","ADD",44,55,"2"],["B","ADD",42,55,"2"],["B","ADD",40,55,"2"],["B","ADD",38,55,"2"],["B","ADD",75,55,"-2"],["B","ADD",74,55,"-2"],["B","ADD",73,55,"-2"],["B","ADD",72,55,"-2"],["B","ADD",71,55,"-2"],["B","ADD",70,55,"-2"],["B","ADD",69,55,"-2"],["B","ADD",68,55,"-2"],["B","ADD",67,55,"-2"],["B","ADD",66,55,"-2"],["B","ADD",65,55,"-2"],["B","ADD",64,55,"-2"],["B","ADD",63,55,"-2"],["B","ADD",62,55,"-2"],["B","ADD",61,55,"-2"],["B","ADD",60,55,"-2"],["B","ADD",59,55,"-2"],["B","ADD",58,55,"-2"],["B","ADD",56,55,"2"],["B","ADD",52,53,"-2"],["B","ADD",50,53,"-2"],["B","ADD",48,53,"-2"],["B","ADD",46,53,"-2"],["B","ADD",44,53,"-2"],["B","ADD",42,53,"-2"],["B","ADD",40,53,"-2"],["B","ADD",38,53,"-2"],["B","ADD",75,53,"2"],["B","ADD",74,53,"2"],["B","ADD",73,53,"2"],["B","ADD",72,53,"2"],["B","ADD",71,53,"2"],["B","ADD",70,53,"2"],["B","ADD",69,53,"2"],["B","ADD",68,53,"2"],["B","ADD",67,53,"2"],["B","ADD",66,53,"2"],["B","ADD",65,53,"2"],["B","ADD",64,53,"2"],["B","ADD",63,53,"2"],["B","ADD",62,53,"2"],["B","ADD",61,53,"2"],["B","ADD",60,53,"2"],["B","ADD",59,53,"2"],["B","ADD",58,53,"2"],["B","ADD",56,53,"-2"],["B","ADD",54,53,"-2"],["B","ADD",50,52,"-2"],["B","ADD",48,52,"-2"],["B","ADD",46,52,"-2"],["B","ADD",44,52,"-2"],["B","ADD",42,52,"-2"],["B","ADD",40,52,"-2"],["B","ADD",38,52,"-2"],["B","SCALE",52,"-1"],["B","ADD",75,52,"-2"],["B","ADD",74,52,"-2"],["B","ADD",73,52,"-2"],["B","ADD",72,52,"-2"],["B","ADD",71,52,"-2"],["B","ADD",70,52,"-2"],["B","ADD",69,52,"-2"],["B","ADD",68,52,"-2"],["B","ADD",67,52,"-2"],["B","ADD",66,52,"-2"],["B","ADD",65,52,"-2"],["B","ADD",64,52,"-2"],["B","ADD",63,52,"-2"],["B","ADD",62,52,"-2"],["B","ADD",61,52,"-2"],["B","ADD",60,52,"-2"],["B","ADD",59,52,"-2"],["B","ADD",58,52,"-2"],["B","ADD",56,52,"2"],["B","ADD",54,52,"2"],["B","ADD",50,51,"2"],["B","ADD",48,51,"2"],["B","ADD",46,51,"2"],["B","ADD",44,51,"2"],["B","ADD",42,51,"2"],["B","ADD",40,51,"2"],["B","ADD",38,51,"2"],["B","ADD",75,51,"-2"],["B","ADD",74,51,"-2"],["B","ADD",73,51,"-2"],["B","ADD",72,51,"-2"],["B","ADD",71,51,"-2"],["B","ADD",70,51,"-2"],["B","ADD",69,51,"-2"],["B","ADD",68,51,"-2"],["B","ADD",67,51,"-2"],["B","ADD",66,51,"-2"],["B","ADD",65,51,"-2"],["B","ADD",64,51,"-2"],["B","ADD",63,51,"-2"],["B","ADD",62,51,"-2"],["B","ADD",61,51,"-2"],["B","ADD",60,51,"-2"],["B","ADD",59,51,"-2"],["B","ADD",58,51,"-2"],["B","ADD",56,51,"2"],["B","ADD",54,51,"2"],["B","ADD",52,51,"2"],["B","ADD",48,49,"-2"],["B","ADD",46,49,"-2"],["B","ADD",44,49,"-2"],["B","ADD",42,49,"-2"],["B","ADD",40,49,"-2"],["B","ADD",38,49,"-2"],["B","ADD",75,49,"2"],["B","ADD",74,49,"2"],["B","ADD",73,49,"2"],["B","ADD",72,49,"2"],["B","ADD",71,49,"2"],["B","ADD",70,49,"2"],["B","ADD",69,49,"2"],["B","ADD",68,49,"2"],["B","ADD",67,49,"2"],["B","ADD",66,49,"2"],["B","ADD",65,49,"2"],["B","ADD",64,49,"2"],["B","ADD",63,49,"2"],["B","ADD",62,49,"2"],["B","ADD",61,49,"2"],["B","ADD",60,49,"2"],["B","ADD",59,49,"2"],["B","ADD",58,49,"2"],["B","ADD",56,49,"-2"],["B","ADD",54,49,"-2"],["B","ADD",52,49,"-2"],["B","ADD",50,49,"-2"],["B","ADD",46,48,"-2"],["B","ADD",44,48,"-2"],["B","ADD",42,48,"-2"],["B","ADD",40,48,"-2"],["B","ADD",38,48,"-2"],["B","SCALE",48,"-1"],["B","ADD",75,48,"-2"],["B","ADD",74,48,"-2"],["B","ADD",73,48,"-2"],["B","ADD",72,48,"-2"],["B","ADD",71,48,"-2"],["B","ADD",70,48,"-2"],["B","ADD",69,48,"-2"],["B","ADD",68,48,"-2"],["B","ADD",67,48,"-2"],["B","ADD",66,48,"-2"],["B","ADD",65,48,"-2"],["B","ADD",64,48,"-2"],["B","ADD",63,48,"-2"],["B","ADD",62,48,"-2"],["B","ADD",61,48,"-2"],["B","ADD",60,48,"-2"],["B","ADD",59,48,"-2"],["B","ADD",58,48,"-2"],["B","ADD",56,48,"2"],["B","ADD",54,48,"2"],["B","ADD",52,48,"2"],["B","ADD",50,48,"2"],["B","ADD",46,47,"2"],["B","ADD",44,47,"2"],["B","ADD",42,47,"2"],["B","ADD",40,47,"2"],["B","ADD",38,47,"2"],["B","ADD",75,47,"-2"],["B","ADD",74,47,"-2"],["B","ADD",73,47,"-2"],["B","ADD",72,47,"-2"],["B","ADD",71,47,"-2"],["B","ADD",70,47,"-2"],["B","ADD",69,47,"-2"],["B","ADD",68,47,"-2"],["B","ADD",67,47,"-2"],["B","ADD",66,47,"-2"],["B","ADD",65,47,"-2"],["B","ADD",64,47,"-2"],["B","ADD",63,47,"-2"],["B","ADD",62,47,"-2"],["B","ADD",61,47,"-2"],["B","ADD",60,47,"-2"],["B","ADD",59,47,"-2"],["B","ADD",58,47,"-2"],["B","ADD",56,47,"2"],["B","ADD",54,47,"2"],["B","ADD",52,47,"2"],["B","ADD",50,47,"2"],["B","ADD",48,47,"2"],["B","ADD",44,45,"-2"],["B","ADD",42,45,"-2"],["B","ADD",40,45,"-2"],["B","ADD",38,45,"-2"],["B","ADD",75,45,"2"],["B","ADD",74,45,"2"],["B","ADD",73,45,"2"],["B","ADD",72,45,"2"],["B","ADD",71,45,"2"],["B","ADD",70,45,"2"],["B","ADD",69,45,"2"],["B","ADD",68,45,"2"],["B","ADD",67,45,"2"],["B","ADD",66,45,"2"],["B","ADD",65,45,"2"],["B","ADD",64,45,"2"],["B","ADD",63,45,"2"],["B","ADD",62,45,"2"],["B","ADD",61,45,"2"],["B","ADD",60,45,"2"],["B","ADD",59,45,"2"],["B","ADD",58,45,"2"],["B","ADD",56,45,"-2"],["B","ADD",54,45,"-2"],["B","ADD",52,45,"-2"],["B","ADD",50,45,"-2"],["B","ADD",48,45,"-2"],["B","ADD",46,45,"-2"],["B","ADD",42,44,"-2"],["B","ADD",40,44,"-2"],["B","ADD",38,44,"-2"],["B","SCALE",44,"-1"],["B","ADD",75,44,"-2"],["B","ADD",74,44,"-2"],["B","ADD",73,44,"-2"],["B","ADD",72,44,"-2"],["B","ADD",71,44,"-2"],["B","ADD",70,44,"-2"],["B","ADD",69,44,"-2"],["B","ADD",68,44,"-2"],["B","ADD",67,44,"-2"],["B","ADD",66,44,"-2"],["B","ADD",65,44,"-2"],["B","ADD",64,44,"-2"],["B","ADD",63,44,"-2"],["B","ADD",62,44,"-2"],["B","ADD",61,44,"-2"],["B","ADD",60,44,"-2"],["B","ADD",59,44,"-2"],["B","ADD",58,44,"-2"],["B","ADD",56,44,"2"],["B","ADD",54,44,"2"],["B","ADD",52,44,"2"],["B","ADD",50,44,"2"],["B","ADD",48,44,"2"],["B","ADD",46,44,"2"],["B","ADD",42,43,"2"],["B","ADD",40,43,"2"],["B","ADD",38,43,"2"],["B","ADD",75,43,"-2"],["B","ADD",74,43,"-2"],["B","ADD",73,43,"-2"],["B","ADD",72,43,"-2"],["B","ADD",71,43,"-2"],["B","ADD",70,43,"-2"],["B","ADD",69,43,"-2"],["B","ADD",68,43,"-2"],["B","ADD",67,43,"-2"],["B","ADD",66,43,"-2"],["B","ADD",65,43,"-2"],["B","ADD",64,43,"-2"],["B","ADD",63,43,"-2"],["B","ADD",62,43,"-2"],["B","ADD",61,43,"-2"],["B","ADD",60,43,"-2"],["B","ADD",59,43,"-2"],["B","ADD",58,43,"-2"],["B","ADD",56,43,"2"],["B","ADD",54,43,"2"],["B","ADD",52,43,"2"],["B","ADD",50,43,"2"],["B","ADD",48,43,"2"],["B","ADD",46,43,"2"],["B","ADD",44,43,"2"],["B","ADD",40,41,"-2"],["B","ADD",38,41,"-2"],["B","ADD",75,41,"2"],["B","ADD",74,41,"2"],["B","ADD",73,41,"2"],["B","ADD",72,41,"2"],["B","ADD",71,41,"2"],["B","ADD",70,41,"2"],["B","ADD",69,41,"2"],["B","ADD",68,41,"2"],["B","ADD",67,41,"2"],["B","ADD",66,41,"2"],["B","ADD",65,41,"2"],["B","ADD",64,41,"2"],["B","ADD",63,41,"2"],["B","ADD",62,41,"2"],["B","ADD",61,41,"2"],["B","ADD",60,41,"2"],["B","ADD",59,41,"2"],["B","ADD",58,41,"2"],["B","ADD",56,41,"-2"],["B","ADD",54,41,"-2"],["B","ADD",52,41,"-2"],["B","ADD",50,41,"-2"],["B","ADD",48,41,"-2"],["B","ADD",46,41,"-2"],["B","ADD",44,41,"-2"],["B","ADD",42,41,"-2"],["B","ADD",38,40,"-2"],["B","SCALE",40,"-1"],["B","ADD",75,40,"-2"],["B","ADD",74,40,"-2"],["B","ADD",73,40,"-2"],["B","ADD",72,40,"-2"],["B","ADD",71,40,"-2"],["B","ADD",70,40,"-2"],["B","ADD",69,40,"-2"],["B","ADD",68,40,"-2"],["B","ADD",67,40,"-2"],["B","ADD",66,40,"-2"],["B","ADD",65,40,"-2"],["B","ADD",64,40,"-2"],["B","ADD",63,40,"-2"],["B","ADD",62,40,"-2"],["B","ADD",61,40,"-2"],["B","ADD",60,40,"-2"],["B","ADD",59,40,"-2"],["B","ADD",58,40,"-2"],["B","ADD",56,40,"2"],["B","ADD",54,40,"2"],["B","ADD",52,40,"2"],["B","ADD",50,40,"2"],["B","ADD",48,40,"2"],["B","ADD",46,40,"2"],["B","ADD",44,40,"2"],["B","ADD",42,40,"2"],["B","SCALE",39,"-1"],["B","ADD",75,39,"-2"],["B","ADD",74,39,"-2"],["B","ADD",73,39,"-2"],["B","ADD",72,39,"-2"],["B","ADD",71,39,"-2"],["B","ADD",70,39,"-2"],["B","ADD",69,39,"-2"],["B","ADD",68,39,"-2"],["B","ADD",67,39,"-2"],["B","ADD",66,39,"-2"],["B","ADD",65,39,"-2"],["B","ADD",64,39,"-2"],["B","ADD",63,39,"-2"],["B","ADD",62,39,"-2"],["B","ADD",61,39,"-2"],["B","ADD",60,39,"-2"],["B","ADD",59,39,"-2"],["B","ADD",58,39,"-2"],["B","SCALE",38,"1/2"],["B","ADD",75,38,"2"],["B","ADD",74,38,"2"],["B","ADD",73,38,"2"],["B","ADD",72,38,"2"],["B","ADD",71,38,"2"],["B","ADD",70,38,"2"],["B","ADD",69,38,"2"],["B","ADD",68,38,"2"],["B","ADD",67,38,"2"],["B","ADD",66,38,"2"],["B","ADD",65,38,"2"],["B","ADD",64,38,"2"],["B","ADD",63,38,"2"],["B","ADD",62,38,"2"],["B","ADD",61,38,"2"],["B","ADD",60,38,"2"],["B","ADD",59,38,"2"],["B","ADD",58,38,"2"],["B","ADD",56,38,"-2"],["B","ADD",54,38,"-2"],["B","ADD",52,38,"-2"],["B","ADD",50,38,"-2"],["B","ADD",48,38,"-2"],["B","ADD",46,38,"-2"],["B","ADD",44,38,"-2"],["B","ADD",42,38,"-2"],["B","ADD",40,38,"-2"],["B","SWAP",38,39],["B","LAMBDA",38,-1],["B","QUERY",38,39,-1],["B","LAMBDA",38,1],["B","ADD",38,39,"-1"],["B","ADD",39,75,"1"],["B","ADD",72,74,"-1"],["B","ADD",70,74,"-1"],["B","ADD",68,74,"-1"],["B","ADD",66,74,"-1"],["B","ADD",64,74,"-1"],["B","ADD",62,74,"-1"],["B","ADD",58,74,"-1/2"],["B","ADD",39,74,"1"],["B","SWAP",73,75],["B","ADD",39,72,"1"],["B","SWAP",72,74],["B","ADD",39,71,"-1"],["B","ADD",39,70,"1"],["B","ADD",39,68,"-1"],["B","ADD",39,67,"1"],["B","ADD",39,66,"-1"],["B","SWAP",65,69],["B","ADD",39,64,"1"],["B","SWAP",64,68],["B","ADD",39,63,"-1"],["B","SWAP",63,71],["B","ADD",39,62,"1"],["B","SWAP",62,70],["B","SWAP",61,75],["B","ADD",39,60,"-1"],["B","SWAP",60,74],["B","ADD",58,59,"-1"],["B","ADD",38,59,"1"],["B","SCALE",59,"-2"],["B","ADD",75,59,"1"],["B","ADD",74,59,"1"],["B","SWAP",59,73],["B","SCALE",58,"-2"],["B","ADD",72,58,"-1"],["B","ADD",70,58,"1"],["B","ADD",68,58,"1"],["B","ADD",66,58,"1"],["B","ADD",64,58,"1"],["B","ADD",62,58,"1"],["B","ADD",60,58,"1"],["B","ADD",39,57,"-1"],["B","ADD",39,56,"1"],["B","ADD",39,55,"-1"],["B","ADD",39,53,"1"],["B","ADD",39,52,"-1"],["B","ADD",39,51,"1"],["B","ADD",39,49,"-1"],["B","ADD",39,48,"1"],["B","ADD",39,47,"-1"],["B","ADD",39,45,"1"],["B","ADD",39,44,"-1"],["B","ADD",39,43,"1"],["B","ADD",39,41,"-1"],["B","ADD",39,40,"1"],["B","ADD",38,39,"1"],["B","SCALE",39,"-128"],["B","ADD",72,39,"1/64"],["B","ADD",70,39,"-1/64"],["B","ADD",68,39,"-1/64"],["B","ADD",66,39,"-1/64"],["B","ADD",64,39,"-1/64"],["B","ADD",62,39,"-1/64"],["B","ADD",60,39,"-1/64"],["B","ADD",58,39,"-1/64"],["B","SCALE",38,"128"],["B","ADD",75,38,"1/32"],["B","ADD",74,38,"1/64"],["B","ADD",73,38,"1/32"],["B","ADD",72,38,"-1/64"],["B","SWAP",38,39],["B","LAMBDA",38,-1],["J",10,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","ADD",0,1,"-1"],["A","IDLE_ONE",2,[10]],["A","IDLE_ONE",3,[10,11]],["A","IDLE_ONE",4,[10,11,12]],["A","IDLE_ONE",5,[10,11,12,13]],["A","IDLE_ONE",6,[10,11,12,13,14]],["A","IDLE_ONE",7,[10,11,12,13,14,15]],["A","IDLE_ONE",8,[10,11,12,13,14,15,16]],["A","IDLE_ONE",9,[10,11,12,13,14,15,16,17]],["A","SWAP",17,18],["A","SWAP",16,18],["A","SWAP",15,18],["A","SWAP",14,18],["A","SWAP",13,18],["A","SWAP",12,18],["A","SWAP",11,18],["A","SWAP",10,18],["A","SWAP",9,18],["A","SWAP",8,18],["A","SWAP",7,18],["A","SWAP",6,18],["A","SWAP",5,18],["A","SWAP",4,18],["A","SWAP",3,18],["A","ADD",1,2,"-1"],["A","SCALE",2,"-1"],["A","SWAP",2,18],["A","SCALE",1,"-1"],["A","ADD",18,1,"2"],["A","ADD",18,0,"2"],["A","ADD",1,0,"1"],["A","SWAP",0,18],["A","LAMBDA",0,-1],["A","ADD",19,20,"-1"],["A","IDLE_ONE",21,[10]],["A","IDLE_ONE",22,[10,11]],["A","IDLE_ONE",23,[10,11,12]],["A","IDLE_ONE",24,[10,11,12,13]],["A","IDLE_ONE",25,[10,11,12,13,14]],["A","IDLE_ONE",26,[10,11,12,13,14,15]],["A","IDLE_ONE",27,[10,11,12,13,14,15,16]],["A","IDLE_ONE",28,[10,11,12,13,14,15,16,17]],["A","SWAP",36,37],["A","SWAP",35,37],["A","SWAP",34,37],["A","SWAP",33,37],["A","SWAP",32,37],["A","SWAP",31,37],["A","SWAP",30,37],["A","SWAP",29,37],["A","SWAP",28,37],["A","SWAP",27,37],["A","SWAP",26,37],["A","SWAP",25,37],["A","SWAP",24,37],["A","SWAP",23,37],["A","SWAP",22,37],["A","ADD",20,21,"-1"],["A","SCALE",21,"-1"],["A","SWAP",21,37],["A","ADD",37,20,"-2"],["A","ADD",37,19,"2"],["A","ADD",20,19,"-1"],["A","SWAP",19,37],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",58,[10,11,12,13,14,15,16,17]],["B","IDLE_ONE",59,[10,11,12,13,14,15,16,17]],["B","IDLE_ONE",60,[10,11,12,13,14,15,16]],["B","IDLE_ONE",61,[10,11,12,13,14,15,16]],["B","IDLE_ONE",62,[10,11,12,13,14,15]],["B","IDLE_ONE",63,[10,11,12,13,14,15]],["B","IDLE_ONE",64,[10,11,12,13,14]],["B","IDLE_ONE",65,[10,11,12,13,14]],["B","IDLE_ONE",66,[10,11,12,13]],["B","IDLE_ONE",67,[10,11,12,13]],["B","IDLE_ONE",68,[10,11,12]],["B","IDLE_ONE",69,[10,11,12]],["B","IDLE_ONE",70,[10,11]],["B","IDLE_ONE",71,[10,11]],["B","IDLE_ONE",72,[10]],["B","IDLE_ONE",73,[10]],["B","IDLE_ONE",74,[10]],["B","IDLE_ONE",75,[10]],["B","ADD",74,75,"-1/2"],["B","ADD",73,75,"-1"],["B","ADD",72,75,"1/2"],["B","ADD",39,75,"-64"],["B","SCALE",75,"1/4"],["B","ADD",72,74,"-2"],["B","SCALE",74,"2"],["B","ADD",75,74,"1/2"],["B","ADD",72,73,"3/2"],["B","ADD",39,73,"64"],["B","ADD",38,73,"64"],["B","SCALE",73,"2"],["B","ADD",75,73,"-5/8"],["B","ADD",74,73,"-3/2"],["B","SWAP",73,75],["B","ADD",38,72,"-64"],["B","ADD",74,72,"2"],["B","ADD",73,72,"3/2"],["B","SWAP",72,73],["B","SWAP",71,73],["B","SWAP",70,72],["B","SWAP",69,71],["B","SWAP",68,70],["B","SWAP",67,69],["B","SWAP",66,68],["B","SWAP",65,67],["B","SWAP",64,66],["B","SWAP",63,65],["B","SWAP",62,64],["B","SWAP",61,63],["B","SWAP",60,62],["B","SWAP",59,61],["B","SWAP",58,60],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",75,39,"1/32"],["B","ADD",74,39,"-1/64"],["B","ADD",59,39,"1/64"],["B","ADD",58,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",75,38,"-1/32"],["B","ADD",59,38,"-1/64"],["B","ADD",58,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",11,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","SWAP",17,18],["A","SWAP",16,18],["A","SWAP",15,18],["A","SWAP",14,18],["A","SWAP",13,18],["A","SWAP",12,18],["A","SWAP",11,18],["A","SWAP",10,18],["A","SWAP",9,18],["A","SWAP",8,18],["A","SWAP",7,18],["A","SWAP",6,18],["A","SWAP",5,18],["A","SWAP",4,18],["A","SWAP",3,18],["A","ADD",1,2,"-1"],["A","ADD",0,2,"-1"],["A","SCALE",2,"-1"],["A","SWAP",2,18],["A","ADD",0,1,"-1"],["A","SCALE",1,"-1"],["A","ADD",18,1,"2"],["A","ADD",18,0,"2"],["A","ADD",1,0,"1"],["A","SWAP",0,18],["A","LAMBDA",0,-1],["A","SWAP",36,37],["A","SWAP",35,37],["A","SWAP",34,37],["A","SWAP",33,37],["A","SWAP",32,37],["A","SWAP",31,37],["A","SWAP",30,37],["A","SWAP",29,37],["A","SWAP",28,37],["A","SWAP",27,37],["A","SWAP",26,37],["A","SWAP",25,37],["A","SWAP",24,37],["A","SWAP",23,37],["A","SWAP",22,37],["A","ADD",20,21,"-1"],["A","ADD",19,21,"-1"],["A","SCALE",21,"-1"],["A","SWAP",21,37],["A","ADD",19,20,"-1"],["A","ADD",37,20,"-2"],["A","ADD",37,19,"2"],["A","ADD",20,19,"-1"],["A","SWAP",19,37],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",74,[11]],["B","IDLE_ONE",75,[11]],["B","ADD",74,75,"1"],["B","ADD",72,75,"-1/4"],["B","ADD",39,75,"-64"],["B","SCALE",75,"-1/2"],["B","ADD",73,74,"1/2"],["B","ADD",72,74,"1/2"],["B","ADD",39,74,"64"],["B","ADD",38,74,"32"],["B","SWAP",74,75],["B","ADD",72,73,"-1/2"],["B","ADD",39,73,"-128"],["B","SCALE",73,"-1"],["B","ADD",75,73,"2"],["B","ADD",74,73,"-1"],["B","ADD",38,72,"128"],["B","SCALE",72,"-2"],["B","ADD",74,72,"1"],["B","ADD",73,72,"1"],["B","SWAP",71,73],["B","SWAP",70,72],["B","SWAP",69,71],["B","SWAP",68,70],["B","SWAP",67,69],["B","SWAP",66,68],["B","SWAP",65,67],["B","SWAP",64,66],["B","SWAP",63,65],["B","SWAP",62,64],["B","SWAP",61,63],["B","SWAP",60,62],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",75,39,"1/32"],["B","ADD",74,39,"-1/64"],["B","ADD",61,39,"1/64"],["B","ADD",60,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",75,38,"-1/32"],["B","ADD",61,38,"-1/64"],["B","ADD",60,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",12,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","SWAP",17,18],["A","SWAP",16,18],["A","SWAP",15,18],["A","SWAP",14,18],["A","SWAP",13,18],["A","SWAP",12,18],["A","SWAP",11,18],["A","SWAP",10,18],["A","SWAP",9,18],["A","SWAP",8,18],["A","SWAP",7,18],["A","SWAP",6,18],["A","SWAP",5,18],["A","SWAP",4,18],["A","SWAP",3,18],["A","ADD",1,2,"-1"],["A","ADD",0,2,"-1"],["A","SCALE",2,"-1"],["A","SWAP",2,18],["A","ADD",0,1,"-1"],["A","SCALE",1,"-1"],["A","ADD",18,1,"2"],["A","ADD",18,0,"2"],["A","ADD",1,0,"1"],["A","SWAP",0,18],["A","LAMBDA",0,-1],["A","SWAP",36,37],["A","SWAP",35,37],["A","SWAP",34,37],["A","SWAP",33,37],["A","SWAP",32,37],["A","SWAP",31,37],["A","SWAP",30,37],["A","SWAP",29,37],["A","SWAP",28,37],["A","SWAP",27,37],["A","SWAP",26,37],["A","SWAP",25,37],["A","SWAP",24,37],["A","SWAP",23,37],["A","SWAP",22,37],["A","ADD",20,21,"-1"],["A","ADD",19,21,"-1"],["A","SCALE",21,"-1"],["A","SWAP",21,37],["A","ADD",19,20,"-1"],["A","ADD",37,20,"-2"],["A","ADD",37,19,"2"],["A","ADD",20,19,"-1"],["A","SWAP",19,37],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",74,[12]],["B","IDLE_ONE",75,[12]],["B","ADD",74,75,"1"],["B","ADD",72,75,"-1/4"],["B","ADD",39,75,"-64"],["B","SCALE",75,"-1/2"],["B","ADD",73,74,"1/2"],["B","ADD",72,74,"1/2"],["B","ADD",39,74,"64"],["B","ADD",38,74,"32"],["B","SWAP",74,75],["B","ADD",72,73,"-1/2"],["B","ADD",39,73,"-128"],["B","SCALE",73,"-1"],["B","ADD",75,73,"2"],["B","ADD",74,73,"-1"],["B","ADD",38,72,"128"],["B","SCALE",72,"-2"],["B","ADD",74,72,"1"],["B","ADD",73,72,"1"],["B","SWAP",71,73],["B","SWAP",70,72],["B","SWAP",69,71],["B","SWAP",68,70],["B","SWAP",67,69],["B","SWAP",66,68],["B","SWAP",65,67],["B","SWAP",64,66],["B","SWAP",63,65],["B","SWAP",62,64],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",75,39,"1/32"],["B","ADD",74,39,"-1/64"],["B","ADD",63,39,"1/64"],["B","ADD",62,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",75,38,"-1/32"],["B","ADD",63,38,"-1/64"],["B","ADD",62,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",13,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","SWAP",17,18],["A","SWAP",16,18],["A","SWAP",15,18],["A","SWAP",14,18],["A","SWAP",13,18],["A","SWAP",12,18],["A","SWAP",11,18],["A","SWAP",10,18],["A","SWAP",9,18],["A","SWAP",8,18],["A","SWAP",7,18],["A","SWAP",6,18],["A","SWAP",5,18],["A","SWAP",4,18],["A","SWAP",3,18],["A","ADD",1,2,"-1"],["A","ADD",0,2,"-1"],["A","SCALE",2,"-1"],["A","SWAP",2,18],["A","ADD",0,1,"-1"],["A","SCALE",1,"-1"],["A","ADD",18,1,"2"],["A","ADD",18,0,"2"],["A","ADD",1,0,"1"],["A","SWAP",0,18],["A","LAMBDA",0,-1],["A","SWAP",36,37],["A","SWAP",35,37],["A","SWAP",34,37],["A","SWAP",33,37],["A","SWAP",32,37],["A","SWAP",31,37],["A","SWAP",30,37],["A","SWAP",29,37],["A","SWAP",28,37],["A","SWAP",27,37],["A","SWAP",26,37],["A","SWAP",25,37],["A","SWAP",24,37],["A","SWAP",23,37],["A","SWAP",22,37],["A","ADD",20,21,"-1"],["A","ADD",19,21,"-1"],["A","SCALE",21,"-1"],["A","SWAP",21,37],["A","ADD",19,20,"-1"],["A","ADD",37,20,"-2"],["A","ADD",37,19,"2"],["A","ADD",20,19,"-1"],["A","SWAP",19,37],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",74,[13]],["B","IDLE_ONE",75,[13]],["B","ADD",74,75,"1"],["B","ADD",72,75,"-1/4"],["B","ADD",39,75,"-64"],["B","SCALE",75,"-1/2"],["B","ADD",73,74,"1/2"],["B","ADD",72,74,"1/2"],["B","ADD",39,74,"64"],["B","ADD",38,74,"32"],["B","SWAP",74,75],["B","ADD",72,73,"-1/2"],["B","ADD",39,73,"-128"],["B","SCALE",73,"-1"],["B","ADD",75,73,"2"],["B","ADD",74,73,"-1"],["B","ADD",38,72,"128"],["B","SCALE",72,"-2"],["B","ADD",74,72,"1"],["B","ADD",73,72,"1"],["B","SWAP",71,73],["B","SWAP",70,72],["B","SWAP",69,71],["B","SWAP",68,70],["B","SWAP",67,69],["B","SWAP",66,68],["B","SWAP",65,67],["B","SWAP",64,66],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",75,39,"1/32"],["B","ADD",74,39,"-1/64"],["B","ADD",65,39,"1/64"],["B","ADD",64,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",75,38,"-1/32"],["B","ADD",65,38,"-1/64"],["B","ADD",64,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",14,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","SWAP",17,18],["A","SWAP",16,18],["A","SWAP",15,18],["A","SWAP",14,18],["A","SWAP",13,18],["A","SWAP",12,18],["A","SWAP",11,18],["A","SWAP",10,18],["A","SWAP",9,18],["A","SWAP",8,18],["A","SWAP",7,18],["A","SWAP",6,18],["A","SWAP",5,18],["A","SWAP",4,18],["A","SWAP",3,18],["A","ADD",1,2,"-1"],["A","ADD",0,2,"-1"],["A","SCALE",2,"-1"],["A","SWAP",2,18],["A","ADD",0,1,"-1"],["A","SCALE",1,"-1"],["A","ADD",18,1,"2"],["A","ADD",18,0,"2"],["A","ADD",1,0,"1"],["A","SWAP",0,18],["A","LAMBDA",0,-1],["A","SWAP",36,37],["A","SWAP",35,37],["A","SWAP",34,37],["A","SWAP",33,37],["A","SWAP",32,37],["A","SWAP",31,37],["A","SWAP",30,37],["A","SWAP",29,37],["A","SWAP",28,37],["A","SWAP",27,37],["A","SWAP",26,37],["A","SWAP",25,37],["A","SWAP",24,37],["A","SWAP",23,37],["A","SWAP",22,37],["A","ADD",20,21,"-1"],["A","ADD",19,21,"-1"],["A","SCALE",21,"-1"],["A","SWAP",21,37],["A","ADD",19,20,"-1"],["A","ADD",37,20,"-2"],["A","ADD",37,19,"2"],["A","ADD",20,19,"-1"],["A","SWAP",19,37],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",74,[14]],["B","IDLE_ONE",75,[14]],["B","ADD",74,75,"1"],["B","ADD",72,75,"-1/4"],["B","ADD",39,75,"-64"],["B","SCALE",75,"-1/2"],["B","ADD",73,74,"1/2"],["B","ADD",72,74,"1/2"],["B","ADD",39,74,"64"],["B","ADD",38,74,"32"],["B","SWAP",74,75],["B","ADD",72,73,"-1/2"],["B","ADD",39,73,"-128"],["B","SCALE",73,"-1"],["B","ADD",75,73,"2"],["B","ADD",74,73,"-1"],["B","ADD",38,72,"128"],["B","SCALE",72,"-2"],["B","ADD",74,72,"1"],["B","ADD",73,72,"1"],["B","SWAP",71,73],["B","SWAP",70,72],["B","SWAP",69,71],["B","SWAP",68,70],["B","SWAP",67,69],["B","SWAP",66,68],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",75,39,"1/32"],["B","ADD",74,39,"-1/64"],["B","ADD",67,39,"1/64"],["B","ADD",66,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",75,38,"-1/32"],["B","ADD",67,38,"-1/64"],["B","ADD",66,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",15,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","SWAP",17,18],["A","SWAP",16,18],["A","SWAP",15,18],["A","SWAP",14,18],["A","SWAP",13,18],["A","SWAP",12,18],["A","SWAP",11,18],["A","SWAP",10,18],["A","SWAP",9,18],["A","SWAP",8,18],["A","SWAP",7,18],["A","SWAP",6,18],["A","SWAP",5,18],["A","SWAP",4,18],["A","SWAP",3,18],["A","ADD",1,2,"-1"],["A","ADD",0,2,"-1"],["A","SCALE",2,"-1"],["A","SWAP",2,18],["A","ADD",0,1,"-1"],["A","SCALE",1,"-1"],["A","ADD",18,1,"2"],["A","ADD",18,0,"2"],["A","ADD",1,0,"1"],["A","SWAP",0,18],["A","LAMBDA",0,-1],["A","SWAP",36,37],["A","SWAP",35,37],["A","SWAP",34,37],["A","SWAP",33,37],["A","SWAP",32,37],["A","SWAP",31,37],["A","SWAP",30,37],["A","SWAP",29,37],["A","SWAP",28,37],["A","SWAP",27,37],["A","SWAP",26,37],["A","SWAP",25,37],["A","SWAP",24,37],["A","SWAP",23,37],["A","SWAP",22,37],["A","ADD",20,21,"-1"],["A","ADD",19,21,"-1"],["A","SCALE",21,"-1"],["A","SWAP",21,37],["A","ADD",19,20,"-1"],["A","ADD",37,20,"-2"],["A","ADD",37,19,"2"],["A","ADD",20,19,"-1"],["A","SWAP",19,37],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",74,[15]],["B","IDLE_ONE",75,[15]],["B","ADD",74,75,"1"],["B","ADD",72,75,"-1/4"],["B","ADD",39,75,"-64"],["B","SCALE",75,"-1/2"],["B","ADD",73,74,"1/2"],["B","ADD",72,74,"1/2"],["B","ADD",39,74,"64"],["B","ADD",38,74,"32"],["B","SWAP",74,75],["B","ADD",72,73,"-1/2"],["B","ADD",39,73,"-128"],["B","SCALE",73,"-1"],["B","ADD",75,73,"2"],["B","ADD",74,73,"-1"],["B","ADD",38,72,"128"],["B","SCALE",72,"-2"],["B","ADD",74,72,"1"],["B","ADD",73,72,"1"],["B","SWAP",71,73],["B","SWAP",70,72],["B","SWAP",69,71],["B","SWAP",68,70],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",75,39,"1/32"],["B","ADD",74,39,"-1/64"],["B","ADD",69,39,"1/64"],["B","ADD",68,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",75,38,"-1/32"],["B","ADD",69,38,"-1/64"],["B","ADD",68,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",16,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","SWAP",17,18],["A","SWAP",16,18],["A","SWAP",15,18],["A","SWAP",14,18],["A","SWAP",13,18],["A","SWAP",12,18],["A","SWAP",11,18],["A","SWAP",10,18],["A","SWAP",9,18],["A","SWAP",8,18],["A","SWAP",7,18],["A","SWAP",6,18],["A","SWAP",5,18],["A","SWAP",4,18],["A","SWAP",3,18],["A","ADD",1,2,"-1"],["A","ADD",0,2,"-1"],["A","SCALE",2,"-1"],["A","SWAP",2,18],["A","ADD",0,1,"-1"],["A","SCALE",1,"-1"],["A","ADD",18,1,"2"],["A","ADD",18,0,"2"],["A","ADD",1,0,"1"],["A","SWAP",0,18],["A","LAMBDA",0,-1],["A","SWAP",36,37],["A","SWAP",35,37],["A","SWAP",34,37],["A","SWAP",33,37],["A","SWAP",32,37],["A","SWAP",31,37],["A","SWAP",30,37],["A","SWAP",29,37],["A","SWAP",28,37],["A","SWAP",27,37],["A","SWAP",26,37],["A","SWAP",25,37],["A","SWAP",24,37],["A","SWAP",23,37],["A","SWAP",22,37],["A","ADD",20,21,"-1"],["A","ADD",19,21,"-1"],["A","SCALE",21,"-1"],["A","SWAP",21,37],["A","ADD",19,20,"-1"],["A","ADD",37,20,"-2"],["A","ADD",37,19,"2"],["A","ADD",20,19,"-1"],["A","SWAP",19,37],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",74,[16]],["B","IDLE_ONE",75,[16]],["B","ADD",74,75,"1"],["B","ADD",72,75,"-1/4"],["B","ADD",39,75,"-64"],["B","SCALE",75,"-1/2"],["B","ADD",73,74,"1/2"],["B","ADD",72,74,"1/2"],["B","ADD",39,74,"64"],["B","ADD",38,74,"32"],["B","SWAP",74,75],["B","ADD",72,73,"-1/2"],["B","ADD",39,73,"-128"],["B","SCALE",73,"-1"],["B","ADD",75,73,"2"],["B","ADD",74,73,"-1"],["B","ADD",38,72,"128"],["B","SCALE",72,"-2"],["B","ADD",74,72,"1"],["B","ADD",73,72,"1"],["B","SWAP",71,73],["B","SWAP",70,72],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",75,39,"1/32"],["B","ADD",74,39,"-1/64"],["B","ADD",71,39,"1/64"],["B","ADD",70,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",75,38,"-1/32"],["B","ADD",71,38,"-1/64"],["B","ADD",70,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",17,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","SWAP",17,18],["A","SWAP",16,18],["A","SWAP",15,18],["A","SWAP",14,18],["A","SWAP",13,18],["A","SWAP",12,18],["A","SWAP",11,18],["A","SWAP",10,18],["A","SWAP",9,18],["A","SWAP",8,18],["A","SWAP",7,18],["A","SWAP",6,18],["A","SWAP",5,18],["A","SWAP",4,18],["A","SWAP",3,18],["A","ADD",1,2,"-1"],["A","ADD",0,2,"-1"],["A","SCALE",2,"-1"],["A","SWAP",2,18],["A","ADD",0,1,"-1"],["A","SCALE",1,"-1"],["A","ADD",18,1,"2"],["A","ADD",18,0,"2"],["A","ADD",1,0,"1"],["A","SWAP",0,18],["A","LAMBDA",0,-1],["A","SWAP",36,37],["A","SWAP",35,37],["A","SWAP",34,37],["A","SWAP",33,37],["A","SWAP",32,37],["A","SWAP",31,37],["A","SWAP",30,37],["A","SWAP",29,37],["A","SWAP",28,37],["A","SWAP",27,37],["A","SWAP",26,37],["A","SWAP",25,37],["A","SWAP",24,37],["A","SWAP",23,37],["A","SWAP",22,37],["A","ADD",20,21,"-1"],["A","ADD",19,21,"-1"],["A","SCALE",21,"-1"],["A","SWAP",21,37],["A","ADD",19,20,"-1"],["A","ADD",37,20,"-2"],["A","ADD",37,19,"2"],["A","ADD",20,19,"-1"],["A","SWAP",19,37],["A","LAMBDA",19,1],["B","LAMBDA",38,1],["B","IDLE_ONE",74,[17]],["B","IDLE_ONE",75,[17]],["B","ADD",74,75,"1"],["B","ADD",72,75,"-1/4"],["B","ADD",39,75,"-64"],["B","SCALE",75,"-1/4"],["B","ADD",73,74,"1/2"],["B","ADD",72,74,"1/2"],["B","ADD",39,74,"64"],["B","ADD",38,74,"32"],["B","SCALE",74,"1/2"],["B","SWAP",74,75],["B","ADD",72,73,"-1/2"],["B","ADD",39,73,"-128"],["B","SCALE",73,"-1"],["B","ADD",75,73,"1"],["B","ADD",74,73,"-1/2"],["B","ADD",38,72,"128"],["B","SCALE",72,"-2"],["B","ADD",74,72,"1/2"],["B","ADD",73,72,"1"],["B","ADD",38,39,"1/2"],["B","SCALE",39,"-1"],["B","ADD",75,39,"1/64"],["B","ADD",74,39,"-1/128"],["B","ADD",73,39,"1/64"],["B","ADD",72,39,"1/128"],["B","SCALE",38,"-1"],["B","ADD",75,38,"-1/64"],["B","ADD",73,38,"-1/64"],["B","ADD",72,38,"-1/64"],["B","ADD",39,38,"-1"],["B","LAMBDA",38,-1],["J",18,[1,0,19,20],[39,38,"-1","1/2"]],["A","LAMBDA",19,-1],["A","SCALE",20,"-1"],["A","LAMBDA",0,1],["A","SWAP",17,18],["A","SWAP",16,18],["A","SWAP",15,18],["A","SWAP",14,18],["A","SWAP",13,18],["A","SWAP",12,18],["A","SWAP",11,18],["A","SWAP",10,18],["A","SWAP",9,18],["A","SWAP",8,18],["A","SWAP",7,18],["A","SWAP",6,18],["A","SWAP",5,18],["A","SWAP",4,18],["A","SWAP",3,18],["A","SWAP",2,18],["A","ADD",0,1,"-2"],["A","SWAP",1,18],["A","SCALE",0,"-1"],["A","ADD",18,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","SWAP",36,37],["A","SWAP",35,37],["A","SWAP",34,37],["A","SWAP",33,37],["A","SWAP",32,37],["A","SWAP",31,37],["A","SWAP",30,37],["A","SWAP",29,37],["A","SWAP",28,37],["A","SWAP",27,37],["A","SWAP",26,37],["A","SWAP",25,37],["A","SWAP",24,37],["A","SWAP",23,37],["A","SWAP",22,37],["A","SWAP",21,37],["A","ADD",19,20,"-2"],["A","SWAP",20,37],["A","SCALE",19,"-1"],["A","ADD",37,19,"-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],["A","LAMBDA",36,-1],["A","LAMBDA",37,-1],["B","LAMBDA",38,1],["B","IDLE_ONE",74,[18]],["B","IDLE_ONE",75,[18]],["B","ADD",39,75,"-128"],["B","ADD",38,75,"64"],["B","SCALE",75,"-1"],["B","ADD",38,74,"128"],["B","SCALE",74,"-1"],["B","ADD",75,74,"2"],["B","ADD",38,39,"1/2"],["B","SCALE",39,"1/128"],["B","ADD",75,39,"-2"],["B","ADD",74,39,"-1"],["B","SCALE",38,"1/128"],["B","ADD",75,38,"2"],["B","ADD",74,38,"2"],["B","SWAP",38,39],["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],["B","LAMBDA",68,-1],["B","LAMBDA",69,-1],["B","LAMBDA",70,-1],["B","LAMBDA",71,-1],["B","LAMBDA",72,-1],["B","LAMBDA",73,-1],["B","LAMBDA",74,-1],["B","LAMBDA",75,-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)."} \ No newline at end of file diff --git a/research/p104-query-only-interval/data/root_A_efree.json b/research/p104-query-only-interval/data/root_A_efree.json new file mode 100644 index 0000000000..4a7fbe2fe2 --- /dev/null +++ b/research/p104-query-only-interval/data/root_A_efree.json @@ -0,0 +1 @@ +{"n": 38, "N": 40, "X": [["1", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["1", "2", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["1", "2", "2", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2", "2", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["1", "2", "2", "2", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2", "2", "2", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["1", "2", "2", "2", "2", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2", "2", "2", "2", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["1", "2", "2", "2", "2", "2", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2", "2", "2", "2", "2", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["1", "2", "2", "2", "2", "2", "2", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2", "2", "2", "2", "2", "2", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["1", "2", "2", "2", "2", "2", "2", "2", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2", "2", "2", "2", "2", "2", "2", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["1", "2", "2", "2", "2", "2", "2", "2", "2", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2", "2", "2", "2", "2", "2", "2", "2", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "-1", "-1", "-1", "-1", "-1", "-1", "-1", "-1", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "1", "1", "1", "1", "1", "1", "1", "1", "1", "-1", "-1", "-1", "-1", "-1", "-1", "-1", "-1", "-1"], ["-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "2", "2", "2", "2", "2", "2", "2", "2", "2", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "2", "2", "2", "2", "2", "2", "2", "2", "2"], ["-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2", "2", "2", "2", "2", "2", "2", "2", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2", "2", "2", "2", "2", "2", "2", "2"], ["-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2", "2", "2", "2", "2", "2", "2", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2", "2", "2", "2", "2", "2", "2"], ["-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2", "2", "2", "2", "2", "2", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2", "2", "2", "2", "2", "2"], ["-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2", "2", "2", "2", "2", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2", "2", "2", "2", "2"], ["-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2", "2", "2", "2", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2", "2", "2", "2"], ["-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2", "2", "2", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2", "2", "2"], ["-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2", "2", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2", "2"], ["-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "2"], ["-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1"]], "Y": [["1", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["1", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["1", "0", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["1", "0", "0", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["1", "0", "0", "0", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["1", "0", "0", "0", "0", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["1", "0", "0", "0", "0", "0", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["1", "0", "0", "0", "0", "0", "0", "0", "-1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "0", "0", "-1", "0", "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", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "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", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["2", "-1", "1", "-1", "1", "-1", "1", "-1", "1", "-1", "1", "-1", "1", "-1", "1", "-1", "1", "-1", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "2", "-1", "1", "-1", "1", "-1", "1", "-1", "1", "-1", "1", "-1", "1", "-1", "1", "-1", "1", "-1", "1"], ["1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "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", "0", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "0", "0"], ["1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "0"], ["1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0"], ["1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0"], ["1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0"], ["1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0"], ["1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0"], ["1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0"], ["0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "0", "1"]], "stages": [{"units": [0, 1], "mask": [0, 1, 19, 20]}, {"units": [2, 3], "mask": [0, 1, 2, 19, 20, 21]}, {"units": [4, 5], "mask": [0, 1, 2, 3, 19, 20, 21, 22]}, {"units": [6, 7], "mask": [0, 1, 2, 3, 4, 19, 20, 21, 22, 23]}, {"units": [8, 9], "mask": [0, 1, 2, 3, 4, 5, 19, 20, 21, 22, 23, 24]}, {"units": [10, 11], "mask": [0, 1, 2, 3, 4, 5, 6, 19, 20, 21, 22, 23, 24, 25]}, {"units": [12, 13], "mask": [0, 1, 2, 3, 4, 5, 6, 7, 19, 20, 21, 22, 23, 24, 25, 26]}, {"units": [14, 15], "mask": [0, 1, 2, 3, 4, 5, 6, 7, 8, 19, 20, 21, 22, 23, 24, 25, 26, 27]}, {"units": [16, 17], "mask": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28]}, {"units": [22, 23], "mask": [0, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 29, 30, 31, 32, 33, 34, 35, 36, 37]}, {"units": [24, 25], "mask": [0, 11, 12, 13, 14, 15, 16, 17, 18, 19, 30, 31, 32, 33, 34, 35, 36, 37]}, {"units": [26, 27], "mask": [0, 12, 13, 14, 15, 16, 17, 18, 19, 31, 32, 33, 34, 35, 36, 37]}, {"units": [28, 29], "mask": [0, 13, 14, 15, 16, 17, 18, 19, 32, 33, 34, 35, 36, 37]}, {"units": [30, 31], "mask": [0, 14, 15, 16, 17, 18, 19, 33, 34, 35, 36, 37]}, {"units": [32, 33], "mask": [0, 15, 16, 17, 18, 19, 34, 35, 36, 37]}, {"units": [34, 35], "mask": [0, 16, 17, 18, 19, 35, 36, 37]}, {"units": [36, 37], "mask": [0, 17, 18, 19, 36, 37]}, {"units": [38, 39], "mask": [0, 18, 19, 37]}], "note": "E-free: direct sum of two 19-field chain roots; thin units t1 (y.x=1) and t2 per chain"} \ No newline at end of file diff --git a/research/p104-query-only-interval/data/word_6936.json.gz b/research/p104-query-only-interval/data/word_6936.json.gz new file mode 100644 index 0000000000000000000000000000000000000000..d93e67ca7628bf5531ae6e369da4dd7b7907b88f GIT binary patch literal 349022 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%0DTSJ{9)k`>#8eQCpQme)zs(Cb8)J zD?N?s#BB=fwQA-<%)8xjwYgmnuyi(meGkrH*KUdBZzp~0=9hq>SVKS3hdj# zJ1##P4kTeFPNUybxy{1xm)shrps|a3*VgaNC`FEC>FU+*f2blp*{K!#>YZuK!Acd&C}7v`~+R4etq#P6L=opLG{A1hCc zF799#57$|OMfacgv#(tFnGhI{hJ`@aHemWjGyiA)EUnJ*6W5C0>KSAQ5Fb~@qI~ekT z1tJ2>6z`yz@Jyom;;;XX3~^)c+fez&_Kh8(01i!V7RwWED2$3*-X0+(jtTHt_=MA) zZCTDgE%PMjvf5niGO3Bq%c@WUr6o{yu05wd|B#<1#)AyTAX8}dd4-ZUdLLi1l^@Pa zCTJ7B7VaC>_zNlh)t{xPH(F4{CR`(vx zu;p>-W)J+Z)_u-My~{XWy7*lNt!zIi9-d6s?$E%mCOt}Q1>An`&su40M@%HccRO6Q zCsLih4{{>hB8@mYURlXWOb)h&_Ov!eu#}pe43l^>i@Mi-kROKc+;g ztm%3~nQRtfl|i1@*l5dI6R$y?thI|H4ztFql-^{gePsuCv^YbgsLW!5WJno}1AdUd z{osTN-Tv|GR?IQ6W{QWt^!qTE45jgxQ-Tm-NTi5tlf~Lnu5qbgFUl4#0{*S3p(Gd~ z?zKV%(qYJ$_e-6uh~aaS>gKX4tAm_M7B^ctPs3bL;)k-6;hZjkEU-%T@22*U%9GQ zYhF5(q<*j)ywh5;WM3b{iqHWUwX*iqd^EGpr8WlqObwPOWBtl+9iw1TAyb!Zv>G$; zU}IGGtL91$R9@}wxNPw z3(P(-tg;GuQqM!U=Wehgi*NN3y31tC?$td{1pffX5mUtO%F}axnBnl)!roccZ|#nrW$w}=hh&H?Bm z=Eq&Qn3xNBLpnu7ltvL?D|Nn?v|+CgaG*-cRz1Pfi1lfrl~aK3igr zeu{`F$o}ma~w#2sb+gNIimxYnM;V`u2=qRqn-Iv<2%z6 zZvL8C9XAuJBhp-%pHbp9jVgkrmrD+uN~}C4f8w|^@7EK-k(V2J9<+1@(qN#87IS3| z#I^~~J|yT=|{`l4zau>xf_0mSI3NEgyaWZ?924-CvlOLI@{aFe$>lus8KI&N4MSxsV=)ijachE6pmp?i)Up{PVK!QqKC zj2OWJ)4XGt$15zo#{G;(C+q(F-T}+YA&prgt!gt6uT1) z7Op}rZ16a3LxZuk{>y3Wms900%OCn-v}ZMw6Wr2F$qjXjoAR8npWSi?$2wz8@kY;L z!iKQ9y951{-1bWcZJOe@xNIXL9L%_nzXwaEaAYGZPd%8eP@kciMU~@6vMnnYPYIvt zR5P+%0A1fw?^Q8RF)%OwB{p{BrQ5^Z{P~|((@(|q^hl&1A>SPE^2b(sW6DW_sze^3 zvO^G+7B7<5!Xe=SJ)CAaL9F_rWMZyYL*edR0K((P2bNd^qlVdt#FL|oLBJd7MS_IR zlM93b?v=r~xDr{(rD*%z!WPq<%2GyRVNXJ&wkPQ6W5x8-|3%aiq9WXM3do4noTZ?* zhLxt{CLvV2yu#VSME|dgfGhVOd*C=e`S@}^8ZBRJ@BBJk;p{KDDC^sav07z6Zat7tiNb?$auGvf3?y zdiM{Hs9zq3h7nk!$ z23K-y(nD6H2=pmMTp-k^16&I{Au=`-&HOSVRv!A@f&N}{QgTh-Cx%ATq91uI)qhX8 zaLBVA>TxugZT8D%JxRhoWrx0>%=Av< z+48$mr%fB)xEH`giZ6_f2{=vRL^cO{BsxGT9*=iF5z51)9f1X}Xkxe(Zjw}!yts)c ztuWA33tNt1z`k?}Y*mkoxET>w8D?ldw_*QCA^;l73*Ra!`vaFDhT+` zxCHMp(nu(_@7m>yHNGy<1)t*}Fz3=>r|X^0k3TMg02vYUPuA@nvUFD~vWl}^pP(%Ja4V|>bw69T-j zg)|(@qUORygSneg$|z@*vSJPgJ~1~2zt_Y4~iw@|(yk-g&hnY(P; zw1gzSE*W!#GMk;m5G=T)slULmQyT~?Cpnoh7tMJgh&6G=X@hea7YQb9d$wa0mLJ+0 zkdj5@er_1CgM|Rnx!8iY^o4m97qdeB(BUq8xDgaZkbXtJ?u@)@5=f|^$hiBv`<2M{u6}I(^Fl5AvU)zo{!VbiL|su7-;r92ho@#X|4~NJ0yi3LymLQy3j$_ z6IFx0^ z;i!ta)M-h3|L5Vif=(q%quy)#OU>OSLWDKR3c6^l^d)Gl;cGz%HIPt?d;~6599213 zjdn%aBMTl_KDjy*xtPua2W?%;hG2`ABBQ8RDs4#_GpBxKf%AtRks#ovQZnuG=Rf*m z2Qd&BHY+rQYG8#fz^(nV=6+ZxPB7}q2ILace?hlcdg&sV zwo{5Hdcya`=@Qo$+N7Ozz5|Q)Y|HB-Lm;Md8%%xo0M&-E$$H_NXGLW^z)n0Fl_Mfq zjAv`=Y<~29rZjlD(HAZWk_(@~=n{BX3V4RK6HnL6@Lg(UbWB=xM>k4JE)@q|-~s|0 z^+@M36YYi{f$49ybEvcTA6wW)>Zz-@Gc*(1?D@_Q(qAq(SP8)!Vz{&rHi=wp6p0I= zTk0NlctX$gGNo-_Ymj52Z}dkI`?boljXqMT*qo{#^DnGB=fVv&#{T7mi^?9Y^6_%X zgox+ERm^P}Ma&=9U?Qs^5(e9mLsilbLwc$XK~Ys5jHH|3hB^~f#k!95r=5B?*m2-R zRGi=TUoI9e0A4JZp-Cs6MXc(3a#+SVGU-$|-`sIV82yk-n%P9v@Zb+8763 zgz~pRxL4VQ&9A?59V=>WN5IW?kR;l0u6MgM5*pdY@#ct-Zsh|r8ztXM*yXj;2CKWw zE>u2rAPuILDnfp~gr-SxK#j+0lai;du%S8?B@ahk(U;4|8>`&^wr(zM7H$~#80 zS|6`D_4jCBq;2)CTENy~Ny8w2c0((F6wbiE9tTJN*!v*fR0_D^2PfHv4!P>UU@7*u zKto^BWE@p6sK->Bgwlj3Kv6mxZO4dU{?PXYk-K-fR}rx&@mNas$OrW(#p2Gszj`EO z^~_Qw{Vz%-d&kGY7JD>dZRwy4AaYzjo06Q$AAQ7)EcV_3Uf3vxW{9-$^q>I{6`Sm> z8*89nN|(_6%%w>F^>qA{IVvLJxhwS;--mw`FS622{7e6$po>>3?~Oe@CGCS`;)iWW zA2EKQ)(f3}S5*)ax5g_=^s-+LR_YgHrG&z~jnJc`AE*@?qXsgM@5)g3wJ>klsjwH) zHV1orwa5IcQeDq6%#Boq8zk#(7VH-ej=jG!qm5{MmY*eO;we~WJ~#>nw1>F(?*m!I zTyU0=A|p+4ZezYCA^0dKcJwo=TP>#2$(TOd*idx^d6tcKO(;xk>UTC8k$@so9*SCc zx)2V?RDE;d!loXPDy9@IPuQz$=Iqu5V1K{iX-ct?L|$9Xb+|i}`l4YNwAKIC&wDt~RmHn=*82uU7=edO?4O_V}Ish**-%3gHHGtFI2> zzZ`>+=l(KWcn#rhN;JtBbU38n0aDMiEt=`7;;ryokRHY7QFh=uDdB)*1jE(S$JaA3NRRjm0`P4CM?i2cITDFx1ZM46ZQfK>LtadB8HRq9T5XjWzPveUYEKIFE;MKUySgukeI1FGE_M`K=%~D z(bEdx4Mdx&G@P`M8b4~2FOP@#+cngsdO(J|9->jloSg@fpiBurIhQmb#*ZCW_Qrq7 zC;Ntcs!f9Uh|9%&u;X0GwMdux%Y_VLmKws!Q0KZMg`9c<)5Y&-z`Y7L66>PU*__BR z6=A@Ma0{_ED>~g}ddxh;-VwDjze9ap+UZ&dw>m{WY50^Hn(ml-9$DR|dy|=Dfn#Nn zhULJ0P%ZN<#0s|gFABEWtS%DLU9}P$Q^z3+A5x3q3NKG3(ruw}@voX{S(s<6$$lWf z)4rRGAe%Kp;s#Zn%r}t=9@H!!oi9%K{$;{Ua#Bn(!QmP&MV?QfwvyhcnVW-9>r46> zn*0rm23n|)cvjdVRMGV+_g&@^p?aaQPHC6(F~Xy4x>ryjdp<84%9$s-w^vGTUTh@y zN-a~9+~n!R1GF{a)mc>_sov=c{#c-41 zxxK87{dnWJ={ZH^7)N4w?2=2BjaS0k)l$Z9L#3Nq#V;yO z-NqiM%FFb;?4?9fT?gunRI@kba@D=CuQ+yk1T@{^INvy1)Z)Np#KS5;K&d_KJd8kg z#vln^l}50_)~TV8NUMjw=!EN3)q#7pi2muJ4^8fz5$Q1JSdx^$UL!^rxV%+~@s?SH z)R%`R)ZrJJ_c^DD$NlM+b*3PPGkt4Dg^r75rd_HOADHu6`B55d4PYI^%k(5dIPxWJ zDD$N%0H%JIQ$ps=eRPn3f*tITuCU+P*~iR6>=R^U+Roa>9zv-}Q$!mX?zGi%`2#T8 z>`dspZoB(lfzw^$_<=O`6eO$C_Wju4Mh}K5#1kNtf`MFmZ7QXU)Xo&gX-Ojje5PI{ zcH(|B3uHyz^SlFRwig~>Oy#tJym>GDwc2k>um&(;Uk~I{zjyB+zAupQ7xa?2qj`!^ zEh2O(+r@!5b~L!?OauKw`aS+42eYRwrA*oGo))f>>9`%^F1a!?JfFwu^#{?0Vry+7 zK3jRT8AvTFwAD~Y3o9h;QZT0G(%!6NH3*38iYTH2>LkCB6mU{lqFIr;5lq+)vNLp> z;^_pKj9sNHCc034mdLE75P@=n;C2hb{iE+`NPs2Kv30K^jCj>C0VyG*-*FdWGN}dF zwy&%z3XnAfNw2*YAjP8kEE7(p4h*=hDPfvzg-YtJUNI+KRo9toP&slmW&^`zmtvuS ziLkcH?7#cow@Q@Ve7TS+tE-ZFK@&(86Ex5Kw&qu;l?1<9VaIe+E+^er`}+nJrML{B z?X72Qm+nuCzyIa|_$^Ze>Ibb=i;ZNp(vVOiaHxq`J%%)H>W4(G?QiM$EgA=Y#qWsATvkKdxxx|8@U4ctWIA5e zCEjf7`DzF0?OYK}reQe&iX*TrLMHRrJWiU@-Jl4D*-zO3v#`{5(kVp~j8Onq>o@b+S)xN}c| zWf&j#75=l`B4#6GXljTqp6hk{`$qCW_V>9EMyT!d(0PmNM(uq6@_R;#eIrR0j3u-T z#;UwzzsGr4?b#Y4lOo=HfG3A(jsm2_xpZs{%#OJL5SB}Pt38D%IR;u0fh11VUDJ!M zUd5RlAvw_*WG)pdF6cj%pGbtxND+})+0HiG5c$+yz8-+-;6eV!C|e?YytRMiHjTD;2`m^%Q^W=9HG&!H4)3++p4k-0^^inzKPvQvkhT2Iu(U0&M1YlpJ(+(PQFyX~G|rd9mNg}`i5q2gs?+D>pdx*X;!nfYDjNd=a%H# zt@H<`Rc_ad%pLDEAtmo~t%zjGpEJ!NhTV#vTzX1NnFe=QL2sja2=L+k29RvITUrPJ zn~#RO{CT_{Sw%_-$iO-6L?Gv)rr2D>Lh}9{n{fn@E^kiS@HNuF-oxd$B8AT*q#l1C?3}8TlGk>0 zCw&P@IhWGlQWooVO|fwZzY-4ZEkaZK0KR#tr!bb!q^87kMyxpaN^SDgy(75Yk9(UZ z-}TmpdK?!8s#;dKV!zYqIdv^;28a6cEHnrk8E$m+gQNqlFCz2gR2E14XscO7a7;*9 z|InO;4S?IIqXWT^5vQMF#AygZYy3fZHmE#4S@(ta+MZ7(os4wIWVi;49bbSzwd0`m zx7Rccq>$?3rJ`%^U?Ro$Fl$}Ayy|UYm!2e zEx<5f#BDlm2L+nkmY6CqhQg(?WJew!M2n7<`New1L_&&dT1`+j`r$1OkrNi@^L2*tUr*lWntyf&1VE0J_#_#4vjE zP2QUJkEM8?Lz1wuR*FAw-99dQg5xz7I^9VtA_ouG<75z$Rpc!9UE8zo*FnLrcHF)!N0$c z(dySkb$N2I84d#_eaH{PEh=bK4DbLQFKS|XE^$_mu21W#szg9#yRYD@ZO8CLsfu^r z$&%EcvjlOXx;BPy%m+iF0uUsQWN>+|tbBl8tXGaZDiid3V5Q^s zo`OM(`BTGTleZ;g=;EA*ac2q5X{L#B7O*&PGMW{SM5iCuhslP<#H3QF9i%F4zsG$lgxaxwAz6q{;|nl4UKX9kMzYSg zng0AfggQ{Jp@vI@51XgodoN!>W)K}mFh$2dcf0}?=hCOM%DkwmT>XRPo<`^Kv}Iv8 zkV!_friBH^?N}F;7xLFBl@8Yn@0n*LVF!ShGz(ZnGSW)KP&^mCH1^TvL|*LA&KWVX z3DL8bMj`ZmfQx8-Y4-uEuJ@V^w!#|;mQ>Xj1J7!Xpoo)df402ka$)1%rn*Z((tQ04 zG-V^66lCTy+|XE}P?iC{9~CsH#9N@&#+IYG0f1r~yezh!C!C?{beAd|IuU;z5%7%+ zaBS(K37d*mMEAU9BUa!N0{i>}O#^)}1p(1E7MYz}P$j~TH$ieBzf@aB7ZkG`OFUO! zdH0GVW}GXFG8%DVO1p#^B46AT?LZTL^hby64DizqDSufjUWp^*CG9rKb8>@Lk-9S< z*WojO5BxrE(Ft(8{@u0s0*GPFqRv@Iw;#3pZ6fJaz3_WnFCZc=(v zo?|$?x}qy<-DdFux6CiFyG)?}a`;b7WxR$1M7_iyWPBKWCF*>{SwKe>-I7B{HK_=W zbc0`E+g}m3*aD(gO?aJIq+pfh+TFz!ah;61_6Zk`m(G_c0Pu8kUA|LgY=Jcj@Ml%J z82b&4$gb<1UpcQw@o}6)N>k&BM<`opk(K#eBhlMls(2Mj7B5xF`-ZUHJm17D#wLSW z5(O#(G)reW0NxS)DbGAfErS09fj+yiEXScSyv!>%xsbG(#oX#Dp#}Y6`1d9CsfBK5 zxuJDo%yLcB8j#Uc76F z;|Y&ffDVULC10UGwnh-aVS0MWeTYDRFK;~Vg-B&l=L)wah|m*sQOnL3FRk#2 zN~ODAcn7)FF_AK!#kx8WYJB4p4zG5cw#n{I)F}xgmMfvkw;<)0w;)s|Sv*2LErBAB z0Ff>WG8y_T{4Mp#84KIA;^6t4<_DMx@&tNT*UsWcq{-Q!Gz9_A)Iu7YKu-L5p6yHx z&=Mo`X*d}qLcvZ0VDq?|fKQLBu$GdUWQF4x$Sk19(u!&{QoK!Q2r^jP(~XdSiL|7FhH<-$OFm5)Qv;=CojfP!ULB@!CTA>Ww3wQ_3 zhUEikgR!9kJ?Fl+6&))c-^t_l+DA^e-Hm5~hStT{WBfGyGOeC{!NhFvA3Sa^+nl&g zVv9YehWP7NiMNLdujaOVKr<9$@2u zey9{!n^-$np%|Zbi15!lL>lR$jqf{EY!=y#*<>?cMo1(T#KP{?!b(=vr=NV#A}7>fGq|WP~7Z`$(7cECcE%gHLiT>H0KIRci{$4N_P$^rY6CD!8Q)k z!iblCD&nbMR3oG@2kDcVnF}2^>>?a*_UGlCvTgPqLgsWJMcVFFVcFQu0%g`8Zemy9 z$aJ|eIGH)5i<8~AaDcRbkHf&j8k6O;`S?B!Y{!TIX2<5JxFz3C4Cfseo=tv>I0T?#n1kpiZxi~(m6 zPMi<6-jRg)odZLDlzU*ijmmI~3C;naycFW{657bvAYp_0WGk>oi=jlMfYZjsk~ytz zC7CLDt7CbTM;0bxZ|*Yd2%%8o=P;h z-x^42gnAFo)}aDL&my>07Z*qpr8V*pstQX%WcZNX@@Sz(+FS{O~J+*0tIkg z+7kbWzSMp4_pB?`4ZgKb<5VVe4dw8}@5|TXfMW)mATx8f+*qx#+FU0g>nrXF2^98* z8(jVkbMfCd{Cg`7PQ<{LY(Qj?z#K8`-+>Q4@sR`xvn9&^Iq6Bk^ZOSm+9=&BBI9ebHm*ziFWzn zQ$cpbpP#?>-q9hg)ABYVVJuqQ8|jV>=7;Tl4X=u(>FraSbgF1VdZ~XZ61;~z*@r#0 zY`uf~c=rTi<)>s@Y1ovv4-578>x0%`UaLlK{rVK7#$L85JSRsZYXNbwt`8d*xXSHh z0npOKV=ZFDH^E$WXVD(Tn-uYsMBv`QBkR~eJ&6q%K3T~OWcG8qS1?FV@@)k!K>4`i znyDc6TK>SgoA(+;5ZswgXKx2mhtQ(O=%5~e-Q}7W*PBRxe%3htg9RK~_&s$t@XaWTjdXzBTj+QvEb>T?4pu67Kq~*N;nEH-@ z#fmQ#8Lopv+E`Ob65Ed%AfWE0YFavY-MMGzZ^o2@FHR|7iy1m@#|H3^T-2EEx?iAU zfqrrzP6cC$p%XHxwtMOz!^X{tsMw?}1}52ig@7e1JLD$VJULf|ILkZW9w&5mCcDrJ^9)T)3!dIp=XPE#th0!#i^`3otaMZiC7|k6Q5oK|nIAi^Gx$ksa(riL=TN4Hiah5q?{k z0I>oVRp1k{Q)lo*5i`S!Tbnj1Gj7HUbi5}?0t~&I3%3=iJ+U98n`5hZF+n3CIPF(v z$*$00_}8XKTyTd~bX(0SI=J-%? zVRkxfB|2g%x(Ez9=~;3Pizl;ShR5n_kPx!s7XEp~1e|Ls(P2J$>HOD?4tM_RIXN5W zOx?y$s&Vxcf9M*VpxYTPsB_`zRhH4pvVG`?$V*Y4#!ON(-g}nI?XiF+O{4n3WlrBh z;YtCeGIgFzD?B@nj(Wu&EM!Owv^(f&WCiEu6yprWY7Fe)X%?{te_qH!8QEjGyh#v_+X~Y z%tA3C@nHofK5T23Ou&f`>O@UEy!kdTnMR zmSqDV-5WSsavI1I#nanvL6|ATOc>$K<-Z|SG|;Wuz$ke9zT;u6`@M9v%3|B{MD55_ z62#Mp_!~(5-NHUG5ppp}4jEj$G5>K5mNb~e__dL!HT>M18?IvIX$LBs{b@&#L2eY7 zXAA|MUv=YBEJmk{zJnI-qSiiqRt@MQJkK$Sgqu2y4vbpM?VeMS6ax?R<= zwsb5cFhskm`ts}9E0CnzYzs4R$bL9fP|Q%~4zRSGTP{T68{JV_NVg=~NJp&xOBK%@ z{2nKoH$z9KE+XNFoVcL40}Z}{x;3I3Jm(q;i48R5ITJ|9)`0#qa&m_G@Cx7Op! z+Yn3@@)}9Reg?d_6{XJ%W>?t@(kmr=Egug>Xr{k~7Ro5tS6nCFK8K@j z37bLhtKXHG_*Hdi6X_KFO4O4@Z~Ljd%e8aUCNcUBhqM;^bjd{*K!Fi zMaTxA><&`;ZCPBoc5S<66|<~PD2fG)1ZTuFNBF7pG#el+RbXffx zJYJ9NE|mX(pvv7Q^P9bPObq4REIt-)mj2SruZDGZSI1x_cVDRpVd)qaY`rL zaLD-?%9YcHH#C*8clBaF4qJuESdy_=@Tqq8(V%l;h(U13B^fwWWhmB{i@mLU4O5nI zzjQls)Cq3$iJWDm_k6H>dQP_vhwDpSDtozd#~L}YiFWQ4#j)L$CQFU?iGeSl#$(kE zC?{d#{usPh^6GgU-hULnK?o(gAvem#`e&~~MV@lKXQcgLe%-Y3yO*)29enrtl=Ck! z9}7jy?G8ds|C#3`?J^v1IJt2A2SmC)r9FP&SKW4lnH-m!zf za_Munmeo1qwG85ijrh^|CxKuoc2hr~j? zp@=sXxLJh$$Ze4{KjZ*PG$WiD22KtPh76w;RS;%xXikHueby ziwqP%RtDOh;y&EYW4XGX(15ALL+e}8S<#t3q)T?sj46`7_Xg(p?wqxfu!xWi#dkm5 zW80Hce$-)4c;5$vfP`Og&`HR%8EZ-(l4aaL_cII4;PDpV@pEsL5cR$8k;NWpJ>QJ} zY4kb?`(d*pqe7e+o)k3fU|d0|^!G0PAP~`(8^Cj=!U40?s4V>cAqH_}L}B_63pxa} zE2h|tR!a{)eL%^~l8^vG_zb3ywagTu7N3Aju%nb8w@{~g(q1(7FF>Znc8%n;eE$!D z4aDp;ib?gXuaVmJCubMKYmz@CXl+ua|*3C9OZ(bfxu%5&1?;uUM{JhD9=m&O9 z#io0}WB|_}Pw<#xebsa!;y&|Mt~D7T^^vDZNoiQk3#KHjM8&_7c1_Y^=%L*^1i%u@pqQA`>F9-VIhpaDqPB6Ih<*g2ByA zse8t}r7_Jq{wAZIaO77C48;S4J^EYHI8s>kz2&E^V{_i3py}1B2mTTIw zep8soiB|Pd_M=>dp)wHc>}q!GJDF{wd1B}Ee>uwh>+a52sBp4Ln3v9O3$FQJlTjga8sSc5F`K5Gbjg(&}1-L<8`)*K?@`f+qJQ(jv| ze9RtE0FJ~8Z);_t#5Lrs6gE}}-UtOkz|0NTZ#cjI`)s|i>!!%jV(X-{sV?+w_4}B%v z7aNjdB`O`?yCuu-g6NGOy!$}LQ@QL2c!3QSvZEP=;l_}a-1bDyB=`_#b1y42d>yVT zzF-b9YV=dEJcTlz>f+HT%TT$vSZQ-YA>Kza7SWWITMxnVe~5@B+T(O&Og*f7cNQuc=NK)^jT@J(oW9?jq5$D{l5lspb>nFN5=1n7~K9s~Iru+Hi9VvLeq$>Vn=a2xxG?igQ{RKz;Sk=~w2 zIqj(ilfuH(2~St$g^Ua#B27l}+l6*km&FZo{=MjUdb_tsHGmOqSC>!l3H@LuQnfOA zE#C9`*Cv%V(y5Dpv5x9lZm~Zeu%h?m4mF4$$$=^YnXes#7Vk9TLqSm}AJ2gJ26&kBm~g`ax;-qxo$UdZ|SLd5d5NqJCIExQr& zAr~!dj2n9uf!k_t?7(!S6)_k-R=_qHX(x1s+Zbtwu}1g4l26t~<|gjcfe}lm zMqnNKe%QeEm$1Y4dKlBkb@}mglk?#Xn@=cFl06d@O5Nk7^r0hfVy(^lr&orpc8;v} z;c~0Xkw9Y2l(DnGnslJ*^;v*GV_sn86k9vkNOwz!f_xzAtT{!a;S(f`#hP ze!QHO_+G^e9@+=(1X^???aVm-Jt5f))`=SA{tlg}K?awkYdAK!qnDCxb3FpgNmE?L z4m1~jpcLckuC;*6q7K;B>QX0IAsr&roM#6FOj9*M+L2WgI8q#Uz#7V*jtxF)-=DY3 z`)Tu5M8r7<=nNmp84krbnHGurwpd5Nh}5H6Nt4U<;8ae9=@QFvgr@pW#tK;&L8{W( z`Fq9#G&({(NBnH$D)Kb=-4h==*tkJ>zJx<}OVYa=(|6_}MIuFEU`=^FE2(1@u4U1} z5#f0CfQAUa?}pCS20rE=S(`lBt|}eJvwHaDQiaQF!}W+n+z3rs9)s6RJD-MD%HrBx z-1*XZ4{gU83u7+M7h_0?>>l(We1xTmeY#6GBr;^a4(tlX_woKK9P_=S?+nm$;b3~}jXYIAS7+Qa)djPTi}ArH>LmtJ z5;Oo*K&!t2*G;zp-wvRI_cy^p#>oV_=_aL$(yIpB%IV& z-Sz-<+;)qVd~RMu1&D42ls`{`SoaInQ}e?C`3|Iw_{t})z72A8x?FG)X#v->Y(5$l z{@83=NH3PlIg;RRa~vj!TMfk98LYK7aXcxo9UV_A7R$$m_a1dSe3nM&^n?THA7Q4e zIs%qH%bI_I{h%j~;E@0=&`&I3)P#OWjdw7X1tS1N2&-O|d{~!IkTiyFp{j&)=@X)| zKJ-qTr6|l?`2&k91KSQ7AwQ6fya!r<&-8=}kn@rI`Q9k9y0+0t>DJdUX*rZZ!}RR9 zhisCzK4gh&LUG7iqp6|txLrQD?_SsT8LX7kcb)&Ajs-{0p#Af6L5jXazM^9>Al|7{ zh-T){s5v5zhPR>TIG+poVr28Xlhc?Qu_dZI=XA(kl!s0QeY8!?7QOi zm;AE6`+>A@RZa}mF%@#`VFoq;N*5sx`iC$^J24tcQgqHo0tH3sl0diJu{ox|KdIi2 zseA8ofU^nQ)Z>SJ#`M)%j~|VZSKI}R-o+0q`u=)Rb_gZ0p_}!;=+E`PoU%n9g*2gR zW(hSFbLpCkmA@W!qaRcS8%ux%r@WfOOs3RvnWEB$cwd!UIVkzLhqm5?o&O#&Nzw5o9uJb~+^Y!e_8}OjFgAFbEBKcd- zfEegYoxUMxpvx20(Ts{cEPZG>vLX0aCWsjc@PY~|0|JpOYlJ>FPG`faV5oE<5z|7A z1yQOqF*AT}eEyt+;d&LE&Vw7q{dV1-igFHKNE1RI7Mwx~FMGai7OmzaiRoV1Bnqxi z@eIxgSL%2L3*Z9^+Oc{SGm+Wox}Nm{fjv~HJ*saMX-U*yeKj$Kp`uBqG@-3$WXMFQ zY*$xGP-!-DM`b}cXXuxd*lE&VLj~t_?5NUo7B7#-66>jZ`hjtFmcX7vh|h^T>|52L zB)~;vEb)|m@u7Z{<4C6>n+ib<2M(W&kod)2iVsGp6cG|HlOq}X-oXz+T<;CT^tgGsY&Y=VHu!Q9*5@sk6h)D_R#dX$@I^JL7GHgplfoRe3leE=axU63oJ+;VB|{w_l1rJ3(XzMa#XGA2Es-Z?+4-(Z?@0O!2lLLRPdZF34_ zfuMgR4Ish~&N0E{%XBaJ-Hn$J(N=$J1r_AR^I9Ey0bxPst7*o(WE&Y9z?B_fx<847 z5IfyPPB3NB700NetOenFgxHJ_(Ws&+u8~qP-RM{c5Bv}d3ERXs2cLrYn}L{Le#wvwWAXtS||qNS3t%4gpw zzKXFzUo7y^5;@q~Sc!Ieo^K%tfC-1r%z`A7>^tvuC~Fj&4kF$Z$0q_?yoTio;4}>W z4f{TuE92)82QF9gM|VrkhH74Z{YM?_c>R2Lm#QLBKA{El{O$d+PTWRB7Ub82myBBs zNB8GZ8+@*G2&=kVLn9-Hs3avIBgJO6g0N6=<#6Gk;j1B$Nwuw$ih0^cXJCbj_DyTmi=S6kUO?9+c5>D*<$(=qmk3}>hL)FPF@ zUX`5U-RvWSM2wd~4E}P|y2`=l?zBBSQDwIldpSlWsaIn zMuNTO6h*P2y=Q>_TRkbTSwNLrUyv*5zu@Owz_h8aSrJtmUWFlYwi%7e4VHI><+TaO zphR0v_ok?4A>P(Gv))YI4--_nd@}5G=zT|RRi|YpuoO4$ zbtbbt)ZmZrswk<*M>Ftki980u@| zM6yk(suNmvY|(R#La|UlYEm#XYc0_vL%vVGF4RV>4!*^As7(?_HHB6P*bi-Nv}4+% zgBgZqc#GMU`ervE-8Lddq?5e;VDVCHkz!7ntxP3<-wMi5E)^-lkaO!`(k`;E$Ey>x zMf(ncx>@8)$diLhRiUWY5JMY$7Bt;=3KkI^&+xVMa&>` zqMl<{7pI%*LhBy8)*M__Sjbn%^+jhKqs*m3HvQX-bG{;u9i2(lj4F$_hwmN7jD4m~ zd52b4GMA#bQSV1i&h@U0iS>bd>``SVFXObTY$Pz^c_@syY9>X(*J^uBo{RiB0V-Vw z9=BV~$1m6Cpv+NWC)j(@vv~ZUDiWxO3eavB`&&Hc-)lo;Gx|+Q!hp+FCodMx&RePy z-X~s=+2iDh?P6GpG2qaP={OZ>NDecZLueP9ASK6~)`apF_ERAzS9-zYRYN0O+oX_C z$#l`jrsnO;w`XU?M`doQYUF-w>nu)~pGzGo0V_~pM`m=0m3EVh z<0mhRiz||W3N#=_qSjm3@TF0%x?4)RkdIz2Z1~`c;2@S?oHkxBCa1S5ehKA~ZC}@D z!!Y$~#<|eMtM)`J1S|u(isFSrCCgKvtqf*pW0O|Xvnu*t6EzO>_H3)q^*OFn-t_(P z%B6>baxfb6JJo*Q-r}MNCogD=UklVK^O3s}{F!2o3wvIi7qe;;PD(sux)ZRk0RVNn zK!Lj5d+r4)@6!aDF7iB^vkN9aPFMK>1ZMPs6;wJrm*s^9F_vt84O(?MnXJJofs6;~ z<@)+um@@i`x&T|u)vMVzGW2S>?q7a6*Q6OHnzboO5>ubg3&q?Gub3!6(a^CWyJ+ZM znku}wT2Rsa`Yl4BVS0mad)3e(nZB0%E10A?SP?ke3 zDJw!&?as*3_45t#L};O+eV~1YJ6wSM(278Yy7*vO#QPQuQcm(5w5PogLCOBPHUKCb zx|bDmRTgMtB%yCLXseXG-$^V6GyI}ZrWxq9Qy(4dBUxvJ4ni-CZcPZwTBM$}pA3Af zyBC)U0uox*dfGve+Yo(exag(hevvA*1F4Bau?A^AnM8S2DYZc=aSrxi99AH!hx*bY z_Cp{{LI*hrQviMDQ&|5&SRg@OdzHe!CYw5n#HeP>)|&av$n@A+NCLwI<>IAerJGS( zW21pdre~m)z<6bI8+bb+0mMq_O$d9D;#dv&-5)|A4X(A=l0R6yxJIH#I7X1$iRoJq z{LI#}9569LK(aZ|2^$QdT4LVcEE()NjD(hpCL|nUwP!MEu(aVCD3Fj*J|hd=Ag{_Z zFw{(%33ld07V51h$1t+>LzdJ!gfeTZ0(R{L@s)~FzS|4}v;CO17rxR|wib7&aYcNfyixYgu3r>Lteew6t#kULgF=e? z*`Q`kQ(`v0Oiz%wbg(a||AkB|26AGhU7NuiN6$cjMxIv=&cb9(2>R0X9|2qBY@iZT zR*`UsWl?2Y84i?!>X1A%q&rK_`sfVBPS^CM%BhLG_ac(&EJYh21Yw=qUxpPXQdFqw zGx}J_&1Tl2zw|N5KKfi-c#82HICJ+wTI+9f|gOK6D)(o~AULdt5(Vuj!t`-J#GT3(rz zBOG!~>3I)CZEXVbXu#^#j(O_r7<7&Mm(*|^vSU=e9i)p~Q>-T7cGe{i9HS#+2EO zjQ|WG=$2zntzwRL#TpGRWs8?i36<_RKcuKm_PexPyZ5aT8zK+k#JO2Q1)%n8z5w%e zh8l8`+nTRaC9qu^BGybvG;&)9o-YZEtFK@ygO`o`FbYE1-Mx6SvYplPJa)F4Pr;7T zUdT{4eGCV9;|gt}SYOnqIK}8OOugCIJceS)daV-@Q$cL$cq4ooqQ_ApHAuVhqNRgo>0e8Ua!AJ~^EEOUw ze3E6g?$8X46Ox=LbLpd1=DT+vrPA}gzZtQn1FAq)H$2T>Sq~!C#+qk=p*B0(_b3IB z)BS}cnJYlsnQEhp+;N+d8nG!0)jHZz$;x|%LqX2)*8psYtq`%lRp4+VP{cL@f1xAk zFO~ke7Vaa~;Qd8IPP?r>>1SBs8^ycFrCxAbD-M>Uw>2SbRs48EW%)6&>Xo@5Xa@(; z$c=d2s8%)PCv5ueRHL!uv{BlGA{rBIh8>BBAHw&oo0Sw~rH#K&>KMjC?nocESI4(j zKSW$kWPY<(RB(B(#y5iWTHdxMC1y@FjMfBD(zB_P*g7nq-yGL|p}d5rlLr#pW55JH z*^J%eIpbA)>^^(rm{@~q16gj@3ZotBe2J^ydGWGO^>vMVbOq?$-5Zdg@M=qfO2-H4 z)MoGpM_qM?RuGS7@;Rm19;IfMUyUrFAmh&Ti!T60Xu%D2!Yg`N-(#FIgzYAq=ewJH z253LhjW&l=&iLX6C`sm5uizwmJAwz7?akIQm1(-oQz{vaSiMljEcW@Z(GP)4TNwit zyoA3k5PR>l6kL;3FTzH*2gTysKUX=@sW#S}k(7m+nE2VbQCoFnP8 zlCB#}T=o)9NDTd3NXUnNl52&5_)DJ;lNADn3Bp}c*Ic0?mw6x52H8{*!^P^@^PN(frvE*ZO`8kYiL6J*1 zXcj8q++X3`yZnNYEOIcBn8l6!o~($HkSZ&Lbw!~nc`IIY2uvFL?rFKiTYo-OzYR>< zbNhgVsuFhiS+0@gvKJ_RDvB9*;V|EHEM2PR5qNbhuml{EV4q{K=gS6AA|AD^r-ni6 zcgzWG*deW;BDqLwCC?+FVUEw*S#dkGWSeR0+kWZxLk5IIX{l+y-96o+GX9LMr13FO<9dP;PJ7`z`PJgb}u`w{WczZV__y3Xgzwls%N$-?~yYHeB`9# zy?>Am>JZfPeq>SHx7$Y}n9o3BOs%cy>(c%gNFDxSN5$Iv+(4mv=6Go9Ih{&CJ$M16EwmoXvU6L!UXP4|$oVlO z+ioCoyYC1wco^2;6$qM-tPK~!gAW9k3Ap)SMWpg93eNlB%N@ZIa3U(-_3Syqh45>4 zzR2uU;2UG%VK4~xkjhYq2=^h{X$1^ksJ-xjW$9L#j-97p*gT*mf%98YbQCrKyB5g~ z0heG?ipa>i8zcQa#xhD?2U5*?W8R6A=Tsxx{|S?Trj;dv?T#umZbv@lVp!a&5EA7s znmhKCD`*+2D&#B>(dzzWClb9w9<@rAA%o?8x6arlW6p3V%#^M*N-dc-n}2%;er7uC zhE8@5B@DU=N56*5qKCirgISgVBZi}AcyQ|J5*g1HhT4#nYjujgxjAhG%82RI@4e+Z zo4AVo$$3hF-9f=3k+vxciE2pC*H-Vi*)E5J3^V(wl`w`zGOro2^4E?m()uRAqHk-T zio#LANY4aI6ICa>MW3iDQyCq6G7%oJyc1c}JhJMc>n(8}!cBiNl|AiXYlv#FkvU}n zne{dUcFF=3^%w}@ZL*lSgV~D|PliC2sak zcHyh?cWN9X+!k9Fl?;jv*>*W7f1Mbxy?cXks?sc1@;=p>2fT#!XL}9ENDl=ZfYjY`0)ROAk=^dr1M0V1H&yA&+r~=$$*OMHlO$sev?rC8>BcYJi zVn-?`b~duBOa6`(+@RWMh{cd?gRt=KU-<Ed?tA8HJ&_E@^2hWK=-Tm$-w>m?hOx3o1Lb5(kzs?9`MCAR z1E9=V)IP+g7E%Ih9|DpX53C5YpG(YAp%IIywVp#_g0?5NcVcE;xT!>X@z@a-p7@4u zLkf=i4k>qh@H)Mpy^dd{C&tgWU&b$EWqz-z`cB@!c7Nd_ySiE!=UR$yg~ZwLHLoF$ z3KP7qdMdysOU+@%B!qlit_;*n7LnL$?YuoQ-Ebbch67?27D0_nTo_limvJD0@k?9+ z*==VB(U;EjV0&YNfbzW{?J-#pU~UMp%3l%yB~+heCVmLEr8@Bqd4rwKL3#*`<=>kC zw&KN8{f7-qP>poy?ARh?`rjK6hI$L%{rsm5s;Q(7c!a}au+QNJ0YD)(yd8A-#m|4- zq{c`=(svHC7+rxxsga8jG+j{~M82>}J){v_oWA5Pici!e`1N&AzQjJ^hNa}cHzFBB z|LVNO&wtv)_@gs1>9CVZGc@>r|NDRa-~Y2moc}r!?MQrUr(LZ6BUrc=q?lR_@|T{F{y!^Sx~TFJts`*uNLJZvR@t z{@$BLy-$r!UcazI&&l!V{4Qhd*gHi|sqEjZfn_V+FNU>U@7+fYavkQa8_3eB|Ts43G%+mh=x>`Mp!$ZijV> z-q&$Xjemf!Wgo|qLHi!@sm!IHO4Zk@ULQtQsDpCa6r#GF8SzhsBg1tl;QLz;5eO~r zg_3`MdqCl{wr9l#DA)0><`C;$QI5p%I~OBULe?yab?AMq4B6^<`=sBkhfX2>BqHw0 zg~qMfld*XF9zqHD5jvB@BLyI^aXLPkt)K=_+#*s48q1;G1q!)*L#9H`?q0*}($k2L zWp58FIG()?k4SqK+l?UTguV`mY7aHqT61J(6&X)Nye##s<~oA|+wAxCY_n$@=)j&h z&Xet-ywbb>L{9(X)kG+C9q@;?Dem=LDiVM}I^FA}a!y;OurbJoI^3q+-EQ)@>cN84 zZ>p+i*RAn--7$a-2g%?@HI=eM_3ZoG3YkUwg!Gel>_|J#XT#jcI~RLcUB@UVgmXN7 zM;Ga*e+AOz+>2a?`o(^GcQ;Po%BR_)&ofTgzzuKTB}kYR-F;ty;yL~CN9d^3EcF67 zU0OWlEPvM+`g~3OTqNZ z{!}kAamdLu{CWJo=_tQM52?sLl;3x+5q64SyfKTo(2`$`7tQbuGTk@4t0k+x)hq|G zR@74+m;6D!h%VGi-tDemhV_nM6_*3t_1vrYy}nZ2HJZPWaETLx+|A|%4}vF^*lHAM z>cXMeUKKV`sZ>dGQ9q1K-xgBF+V40Lg#X~QgQ@bh!L@*dTq@*bZ7W)lP!p=g3i;L~4$@g2_)wCokqK;S-y2F~62t%nw&oW7YOSB^GF~(}RPv#A7P8cC`om zb#DEu;cGsHQHc<4lAmN)4vpWI^coaLA8$QR>pImciwqa<}>?D&;C!xoot zjmbJxO(r+7CDd}1%|Q+_pauT=D|2lw(CbwjJ|WO2%$A5}Jl&Igkygz;Tom#7ZApjI zFQxe)izu!V{I`0j-`TuThC+-D;bZ9+D@Q@@9q5s4x9$&j&MNFj(aJ4xU|#>9ws*^t zCDoZQ=dzzqtmF;R3Txy{zs zZOQQ;$_y}1UmBwB*OO(cI&rAt1FMHyBnJmEf`R$qESlf@Q38~VrRA`Yxma1ddb$)C zcp2Wi2$AQ_?~J5+=3XsnuR#&6J8y?4d1uRkoJRA*7UWyTlDUE;O*a*+KUm_`7@R8c zIu4QKxU7{W48T4ot7j@KjnoDHX-F_naZM?vB^+9cDs7o63}~TLtg#?OiGwP)G0``U zG;#c9)+hs=LFZ;p77RRdRS9LyFlMXFHB*#j@-PaRv%gUzA`6dEH)iCyBsh95A8hmtM-%_ zBjQBsrU}PKjHIWP<+Kr9MuLk){2Ej+GK!RZXlgWF1OXZz3 z2XvTl)ErPiStSMvK--acFcWMMCX3Ecq`AN9r`l}^GPRufB8C-3!^wRG|IFP1p7Q3*l&r*?*UsdmX zrM@t1tw7{j{);c#hHPfCf#PAYrSMg3;e3QS=hqg?)@jN@)$6Yl!N7mChC#lHZ z0Q{>RxW*+)YO>`w=c-Cs>~MkS)pT>~Bn1RKR%qknLDqz+#FPdnA$)Y6xVEV^Rk&Ks zzJNRY$Kk8^;S3e_k{t&G6@DB^YSNjDe(XB-bO|dLkjr(xX(rUf!(esdn(AF^M(LJN zSfnHS9>ZQsM0X}}#fJjCTWGB^n>ey|mx~Fqr(-cgSSax`NQ7jDda(}7B@C%ctiYAx z3-{B$q5^y}ZGFs4YvaYb1po!zBf%gonQUR?^Fy{p1EZ~e9|_>45Gm=fZM4%74oE)y zpl_7LLxk$!7i> zqcL%|HM5uaLl-oGpG=0q5uu%KgSgKI0#Hmy<>1#6?dkNuHVz~%V-d#rWsDx}CyAmo zApedXKyGGegBsLckO_Vl(49+YxochWDUy_L+d(AWZ&QYnJas**=CoZl0r}o8xhar{ zy^ZlFGyHi3AQFB5yi3e}^YWxBU#?v8VOqT34;*cy_X?c`oQ+h36RZGqrE#C1IO$+x zFnui|WU$!mpQ6@6nwRrnPw=kvKaevtgrQY_bT;JsI=uoBDP0G4^Z&;mcZ(TU@oYp?hHLuB+kz>IZ3U+pYwPJi`jUyem;w1aYVnxpLM^jaae~H+pkxLaHPegNWCP`h-io7r zS+KnvK^euHTSlxBCO0q3B>?3XolD#-+Dd``SuFU)%Q`p>yjO0@n{xDelILWZ26Vwf z^um^nPj?o_tD;Y)u~7|JOsW9z+6+7VoSv%Ses){H=d^4^7TfpL)%a5;YZbL~YEd-y z7OWf@eFCd0&#?Dy`^)nRswfQ-9MxHbJ2^=!wB5Oyr`*Pi zLamVBxSz11i(xO$U0jxQ87|9a;W4n{%Q$}nP(I%mTym|2FB;@vb=xJrjE&?#HEMy- z?S40TRx)~}jLS*6B@%zrOb=tjJxdURK}8RKv|zL|e*mWkpD8nZZ{9P}s@MH@`T`?} zz+n7ek5QT0;KF6I3Bl_bcd#%6%X1qlFY;`LP7%c=>ZoLtOJkC&h5C?ihh?4hTe!X z>Ik#opts7s+_ClR%9h=|h>Pm2}Zu$pR#%2XaLyF}%c=5*21 zmj(KUO=Gfkb%D!yuNV&f=5xHdq82># zU8$)1)zDr7#3@*!Q&6Kx~v z1Ve551*-Zy(H9zFD%upfGTHV-hBU-GKMGRnJjh=y2(mV}#4Id!4q*$Chu-87npr|I zzD!$cVllDEAF9h3@?jnEvGUT-_z8H-#mBUgzs%Z@)3#h8tUu1EM7c@Gcrqmf3hY1_ zG2nLRO_cPwBD{7PPLDgwB|Ak}ZsBXAkoelc9;|B4QZchGHW7rE)U1FfC3BO6@-9X( zlM+9JJ56f+FG^=_{(7HsQOJ$lmu{YHsc!D=n5zIWW~~_|}w^lBW2M zrc23;#_v8FSxJngRAdoVh+?R{=Xys`(M^Dt6!!5z4|O7WTQT@%unWCWRZ5i1Un`Zm z&L0KOmF+21&Naz^DuABnZ%C$P+(#)zHCijFs(Gm`t|Y~gwxSq0R~NKRryMyt&ZXVi zi3D=w_8pFFVUi!n$h=C7s=7vu@N9^^%-F9cS2!c75>hY&a*{AcB`};Z_Ku`JcysEBX>^}stR|BiNc7*T2v$R z?%2YNUFN~78wFHRou=!$gayf2JyO=#V1x0+mLx6WE;Xx1F0qOV=gtHvVJpuZJ6iuA z3aZS(8zKQd*CrFsJ>NM+!68J0d*k?7T!F20sLY6(8dI@NSlfG)N|LKyFpc2^0j|C$VCavoWe*mDa$TgCSkNI@*%-UZDLV@jW3o~NQ*lw zJ`JO)TEps;1GuCug?rG^ljqQ7i5fd=c@30whSS&JLM1cC!H>|S&0;ibQ2r2xIa4Wp zHXH>9^&Ccm5-|_Tj2Hn+r^1i0^8K&)mrV?n=keDFQWFl^d;P~oSf%Pv6RffQmqtjX z=yZfES@yjVX-=n`2X zzInwRixhPu9|Gt~S2xq;M5FK95SBpbCUb?A6hQ3Q72|;+kwBLML^&_rDD*o#csf17 z%~YK(8zpw3+=szuQ%&loQHYQ!sx+i@6GPPNxL(Rtu#|A4{}*Zv^T&~cC_F3|mJD%| zYJyM|%I2z$g=D1e3Ezb?h;cszAulkPyZ`s(-wo!xYand!%m2KK0|HX|w||ya8Qtl^{X>rwG|@@H;6VeJ#sGWay%b#F`KP z;kUYn0#%HjdoPUFzOWjl-32s+A!KD*>dDMQ2(``R^GXO#?}k|V zjWVs}ww=m%4l(Zz_a<(qyJfu2N`%ywc>n}GIpcmu98ZXM)51j1-GG7_DLw9YDO3S} zHy!8axjU%-yuTqt+TEU@5^`!&$2YF?9 zi-qmCw*4p7h6sMYbWRB2?^JZMO6KsHO1mE^BYgjDXy@R`dw3i}XF>aMG%x)Aw6$}% zmS>J2fIZZYsgOk~u`50S9L(_<%)o5$*anw9bS#QUdtA-WIPlE8-lA~T$h>FkFhHL9 zPO~6~XLz0cw`ySegw>zr5j|{U#ufa2Td?kD4qS7frplG}ko|32)P)F?y-N~0AzN2P z0>9gXOO%7a+J2lz(@hUA$Z(o2AX$!*Ei!H)hs5s zrXhx5M6-TrTe>(M>CsSutuTHS1%t4(zijvnAP5AKqOKFJtL}P`G@?ujL!7DaOw!8`{Y^AY0n(;p-xPzmWD3@`sEHIcgz? z6%QU1EaS22V$wn%)~Fwir|Zl@B&DA`fAzYjL{M6`e9S^JDa__aoCR$)Twg{i==H8E zqNOxBbLX*hK{*AtkisAC;11bBmXqyDV%E&VYekZyM|AQu8Qb!Zbo-uM!xTtqUlg9S zEug@%WhY9xgeVgZo(Ezg#IOQiZ^B=4mzKs<{q=v1$5f4Sc+_xdQ!_NafTj@L{JhX) z8Dh9JXiev$htY&rD_gqiSDRyZKu%e_>mus!D)n?-lx{I1qe9errawZwIg>T!i&85A z*R+JId*g8^Bxhml?GsRDe}T%T^UMY+=qxLF*5q3&?zaXQYH_p(4Olb zmXO{O;(&bNH&QnW6GJJ|bpxdi%N(f*+vH^de%oYZtKbdTfso?o=2(c0Dw$J4xx6&- zje_Sp#0A2@k`(N3nKO*Dc!b7PG)kO;O>QdR*g7YQK6b ztiSQH3|X0@naP+3OL-dgKCO_7BwOr+!|I5WB8zgdbLJuQj|tcW#MeA=4FZ=CbJ+<0 z8}wWw1rxUbGPTRdPyYb>TEBqPd1`wjgX+{lfJJP)$Lv6gt2SBvK{caQzR-m5LJDbe z*bWka7_;7z41Hub#FIU1l=$Bi*7@CPX9)G=$)B`ye}E2uu*SmR2D7lUB1k)PgZFQ} z<4e5zn8rihnGSS&^LHAU%jHRY*n zpP8yn4V9w?Lz`Uz1xC^+UXM+`hb%Y}VGK`iR}^V<9^5|m;8ExA4X;#LZEVVOkW`H` z=D?=y;%%^JFFXff7D{uGl2dCc`a$S~lO$7VJN48W^J$v2BS9)XI7`m|JgH_{b?1*u zHH%1I=?(Kf=SMt&ff_}t0`Zz!Jxzyl(6mW2j zP3ymOt`A6o+`8HRkQ`+a)wy<@Pk6{R;o*p9bAv>q$;NYPmmoEc+^6!zaQ`U7z=VDN3cl9B@AlAkoyB6 z7_ypziaKMcLrOM%={u1&N>@?U0@*v3OD8;+I&_kUuj%S2vSA&v;mX@t!%KwI2WkTa zdCgL^B)P$MN-9$7Cqp>FYg;8gmztz{*QryPdZOw--NaTb4js1kmAVHTS?Mp;aXA`8 zrxm!-|5+8mzd%r}(+H_q0s?4{7x`D1vOmyyrM2urgL7&=FVO{j7u>Qh$jAj|;iUHt zpl3m6+nKw$Zj{dn@(JyMVgevcKWTlk$NdM(s~pyte_COH2jSCF{D2Z3praf$R%3xb zkZ5p`$TGUKrhiF;dzYWR6S78yKFL$09ed^-%AgnIkNH5i{1gW72=dInX43%hi(8~%#9O&_lbzuj zHj0^O0hG!q@W3KkPtu+bvGe2V&^corrob$j8Dnf#q&4Kz%w^a+#^JjDV{(mlF z{P3u>L-qO(jkeqL(j6pRl>g>%C@;v~^6&i<^#0~DcqP;sHk6hmgKL{PBMa*!m?PFx zwTkLJe*WjWUp1S{GkBvlf-{pM0F&=qD8bpISH_@E;I zv4?aI@L3n}^Pbj&AX~P0KuL`UQKxmvI;2566G4_X)sHypr%SFbjW`$6&|w}M zGTr_G1ls$ST!7-AG9(t;(mjjQAPuN;%bO;lb}W$du4?(GMwFNJ8rQG^V09B4pcN8k5b7OnAg}S~Eo` z?kqLuuU%O)XFXSka=bmjpjgd{?%bNFs%H20#geS|g`vNC*u&s$ZiS-Jer+Mly1FA) zuFqSYeO}sX`_@wj+8WcIu9c_U9!KX&V5hLv*^~p`J=TDdKJE`y-rwRVtMss_zZc9& z#~|2aUuR^ee$1Nl$}WaFI?<+w{YLK>KPPN?CTuK&`YZ1>ELXO-ZKuWazJ3KKX}@z3 z9@P34IYXUl+TB?q-8nsPma-^C^qU7-5G(=0>_=XyxYnWqonqmwb?*xY;T~ug%pP<8 z?&k31Ej=sYz{HXdL%MW++MWxBl}fJBayB-M&b@6k)M)blBI_Q95ge9r?{ru|{;bRw zd}pheyzhGohlTq~y#45=r6PnkG0`lb!_zj*rkq@sf^dD+#m?hazhF485{_XqFhVixp-zZglM@zFYb9 zdiOLmP0z?UNEx2nW+Z7@Sj@Gc96gdBfCV1)7Ej6AosN@rsB-o0;bVzBUn<@$FTqG+ zLP;eOtH^Uxe&!JM4%eOm0#T{mSFJN0gAKf{O1g2MZhNJ9wG7&#`=0MTluqOAe&CYe z1FzEFIS(&|r=8E7$s4?$jf#Cm@2GQ7wr6XGY*c!-d*U@I9|PlziafjebhFOZd!4jH znuuQb%0l5_t7#UiW!#HW>Kp>_?;t_|YfJ*`Q{7V-26TN!038}@yFMHSEV*CSr!G7ksA!jYa(H{KkQkP@X!;4bSd&IPrf_ zEMCjXM;FiOUV_WZtUy<_iYUc>4UX%^bBOr~W*W~8t!x%y+ONu!N+pld4>7B+(EfBr z?Sd@J^H}fxIOD;7V(~QAxK!9{{R2iv{nTQqu2v)e$K3%X(RSh|7rR2IaQ8KK|3S#3 zZHi_Lhd66wq*sqSM@QBtzgOw37RK{kDz?8z#M>c&ZVhF>6d)`7_~XxZ`pCOON^I2Q zi+Q(j9LOXDb%(b4%z^XPW9LQljGRHReB9$Dkq_Q?uV#w+`2ox9V;@286cLa}+zhEx5#1ZhfRPyXL`99cG7M>G456miZU%Op_irG4GZ+G6)2 z2q&F%e}zhY6!)3|A&i9<@_7*dKUg+1^2m{O;c_uh6=7@Wr0 z`$noTW7D2;;I^c_O1}~=CVt4XZ`r}#_o$u0Y-*mLagS%nJ*(2y;o<9^@tL2mKSQD` zmQPzMInSA%#VjMtd?6uPp~Ike+{{G1msKv!^LMAN%lito)0^e`ZLs%ep>2^CYCrbb znCzUcS~oB3&7{51zk2WdAA1Xp@NwICkR(BNr4ti@7YWVDa z)bp#?%>U7z{yXPoY|rOY=RLIt`+3i-13qobA6qo1tDli`sbu)=9nrHt&QYX|G(PL> z80h*ukC4LTwmkl$g{K1!(~t|P9~pUDiO)LM1?Jrs5=vt}>rfUaN;8%m>3!>7C+K_C zXSm@^4j;oY3();?9Zsl5c~mMnog;QUn*lrkKD1m^MjKRC=rTN zCY+7ju_2;2<3+nN5xvc&GbBOT7P0ozfgs@=e&4fDnp!wv3hu*q7Y@hRq8ALpxm3bXRwtwN9D4Z|(yqtNt)W2+m~WmbS;jy(L;$0C{KLA7hZb+~kWy zRzTyOBRQ~ns9PO#!b{6X!lGbWo=^402hW7OIWi-t9aGri$ja227nMAxS^O%tdGqPM z?(<%@t_-g~$2Ip^;M8s8tr=*&sOSRzZSG7|mcKZ6u29NJSt4tNjpzWK^>o=|0 z?~1ZoQ1djm8nMViI@yz4dH567ld0I z|8dbczN9{P4yL0j%EF`^yTO&^!-O%u*qZE`C%_L}jv;>u_{RP>J`ofu)Gz*0eDadW z&@aA3yEk*d+qI|@D<2t%9}yqLh=xTPW+e8)An2;FE&m~~^7wXGm^&rS&r*|z+vIrf zX6&6<9&89Bqx>q8XW*!zcyu`n@eH8F;=!W!-vUXEV*5{+K7$*cU_W+mb#0ea4qBFV z7K;Lc$pT3^+n3fYtEh+p)6aPmHa;yYwu zF7u64L$@rvq)(VUlqC@yVR`9-areIOt5p6xX`m{HCodDi_i}woHwfJ^p(%uvelL_J z%%My8E0af=4Se)nq@P8eXXdGfWaoHM65O`eNFN~)gO#C0&{BPr84LvL(i1Wx_4|S? zi=uLF=fl&(2oY;C#(vU4`)MMo({<=5oI;Gp95-U*qwA#gdVjE3B_(XXequ z{n*HYQ~qiN1=Sl+Pjx{o{cQ(< z&HVWY*4^%IA|#+s&}NV&tiww}7;_H~s)gHQ8R{nTJ$c|IEq7sklP*zaZEtcy2a*u? zya!exP>+w|A1vHh(+%Rb<%Llk|r za`G2A&@<2y!^0O`Q|e?Bed>lH~J zc(coq(eX~0KArvV+&~l@OhoZq?ujpjRl5*pyoP)Z%>)1F1EM8kn7}XBq)=-@!g-G~ z3c*z)MqtJ-XR5D+AgI?pKF%z3=0?sf#%-$Uc1Fr}-`-b*vaz(o5a+W1ML@d0KmOn` z$)ffY9d?EK1qR4v_`&6XVEA6)l4Ht|nwnomM5e749N>nb@pR^ol%Uk5gSbW{m8X~=`VxeN_|_wW;KKGBsnp0hZFzJs->so9 zc_@CR>J7Up5s3$JQ?ld`?_|N45XE>i_zHX%PdfA=wTGQW7uo*}C_{o;EF*k-n2|_# zY2daI{+A8-AQg$v=W2Rcb3x)jcdDCSQi>QuTHBG-%$xk=-F^rHO&@ow4u4TO;M_V6 z2)CdPbZJ8_p0l2*faHYLF!DmZkH-nBt#G0lNG;MTJVmlyFC|f2?V>k*6n$R8))X=l ziGv>kq2CXup1@AV1$5-RED{&kCl>fhn2L{aaM%;U1*UDEFHE{!O=cE*;q2@JcekWi zBLkv97AjegB%7v7qyslLNx7)!Hp%*gn!}FmO@mT@k<+E|4vIxOYL|c+_bi%h1_KRg ziIk1vT{z#T*T{!nwDi5EODfRF4hcP6lIJQjh1f)+h}_aCC=~T`aC$MGi?P=u>?NPh zTiCD9NsJ(%1tpIcXaf~c!ac)|g!}b&Mbnp49V$}ds%<9xuB*W9B8!5pw$4z1)_Ic5 zofQEPH(-L06a_LjtxWtDh)L$lRj)K#``@BICa^2f`t+!AMJ(^X{vJqB=H?dQlN+qQ zv4Bpx2vS#A4Svh&ogz6&P4IoJINC%pLhf4cCbHK3hLbnQL*C&Ls2f^9>PnApy;gxp z>`t8lU$oa}3-@*r2yh&J(?u&L<}h$h`|$!9ocn$appmeufu%=u1YhO?Oo`JiZ~#Hk z^lXDrR%Cf;<;=A&fxz4@!G}F9tzzbDA;3_$;sYJV*t`2HAfxx4Gu4G4>5K5w4<6c) z*WP+8AimA}i#D|Rqba;3$)Eqivj{o*rOB}9Q@PmS{UUDmALkd*p^$t7Sw; z#Eg#@1uD>@jf)9oeGx8UR>nB~1(BFB=V+#ihf8%UC!!h1U|+(=kYdh}0a^9Dca0+# z?1T&AiYXNx(B7+@Q2vDnS=19koOmk?aQV5wi#+NB$T*10@bq!k=w{_#ZnXhItaG4N zXUpxYY=RTPj4w)6xUT1qLBbRmluvN>3$=-~#Laf-=f!n->M@!On=N`8@C+Bd30a=n zx0fz{`%>Z-|GHdl?@EzaU8uz)3QbygQpalJab%Tu5}0`rTV8T3_<@a~M`@`=OHn3x zwWS{8pC5%I*k|@+n3%NjV|gz~>!1c{2+~+T5Nm~q{HCcP7Xvq{Sqw#2Diu#r+uLv@f zaPq*fHx9!cCjMXQ45-8 z6o^^@)u03$uc$~5!W9JyIea^Pf2o7Ptk+Fth1?Y5+Bo2JGA7Tjf~Q@s*j$`j7;b%U zVOAa$WxPZSC!STN-A3o(acnt5s!J78ds~Gseu-7RPEOirk3sc|H-SJrS263ibEkXX z!Y>w;7%1mOkj-L?uW~^qeT69rQAyE0%~)*4!aZNSl$&0b7eq9K9vMx7`pZ{l76Dx= zaKa*+em_v=odt*Ty^Gb%Pgz|i0+@;}wVy8LH;mS;os31?)~i=yUSCx-RXEc^uW;=n z6^VOp)RU}Qk;b%)DUv51Zp753L>3TFW$>XvipL8r?bX65^DP(lKZ<*rnJYfb9|tWq zA8Qw$zE@$^C8TPvk8m6_A5v0&(GXuE-qPjcEDmD3CUCRff%?v%ck!S%I_P4QeUuFs z0z~yq-?#iyUE;$>2xW91dQmPdm#J0(8K_TMe%-ZsiSHfs7hPP-0Qak(_e&H^6d!xl z?p%o0Uf4*+D~4;^3MTt55f*CSjFD4W>#!@n^x|*6SZb?0GjA|Ar1(r@-?NK+k9v(Q z)%2QVtS4vobrWcTMvK4dG6HY&)=h#4<)c3W4?G^(1E9cuv`H>O$t)i!fAE0?;#A%u zAt>hXDDA|KGwo5^Xq7c@c7naPPCT9;vNvt?81Y}WvP+*U|49>@AJKtE>&ZjLPZbuA zmJRtLkCx3j4IeF=NjQD>PyAFz0`qu;34lzwOLc)q%_bFkAPaiqiREsz12w~?6Z6D z!AFW)Vh;6XJiKr}RV!NfCUe=;UhP_u(l>$;crQYeUY_jVKULh?a!qZA-k2{Qzr0wz zz70U9q46&5-;{M;i3E9cWy3{h9Inze+lU+7_o zeZePkSIcoqnbA6KP3&Mz+mzfH=v!S5(`w8v;&)BR4m)jw4mB6bzmMA#RW9C*nDMsu1>9r>&ZBsM zojNXDrHV<-9%Q@Ls=np|m&mZLYPj$}5qGo|8^Vm?io|@u<#olle#2m@RNCR{?+0?J zqF4e`+P|blhQ`pWm?JPKt%##BC=KeHu!}#>UDE;yW-V}HHv?p!oh%{{pUw^0Ig^WC zDh-W3Ac+L*i#I3{aVXv{^LpX!Xbrzx5`4iD9}&9IGfCIE9naYyTBW;HJtby$E9A>E zQ-@*TZ9sf?a)V~fSNC-}8da63n`Ymdq2gv`CR2NZZgQk34B_`n`OWHu#E)*I*K$kl zIGy}qh{s^u4ROUVTfRh9e1uGdPl|^5#Eo%#6{c$mME$f`M_-%@FjK_`%#}Zzoo3ko zGNvxKHd=flC(0dVJ#8&>FE=V6-xL!h%sj`!w2^xCs>wnhYNgvq(YHzNt@*pzY8FYp zn{$Z+@ovS`+PG^caT~ZF2vy|17}r%ZCmsBbB;wodg4+^BM#9X~%Ve~?H}3eA-Fgai z8=A^&SY2V3${V4#8pM$`c1z5j`jhr5*7j-5IE+n}B~?LVmkY7F4P`Oc+pdU|CrOm{ z8z)c_b1g1gQ^mdUht~?hXW+hiD#TPXhs2B-PEELrah|gdv-9^c+e@AE;t-BZxoh>a zc#&zmuwSMHgZIwi2Wwus`Gi5p**>fp@dW7C6q^o{6nnq8iK|tdU}ju6!_0UJ>)a|K zuM0uO9aH;r9{BZW8MOkJmsnqJIWp@EO^9oc=#^gl8`eBKXJq$4vB%vdRA? zLAWC}u(ZYndvz5&HA;s6xbQyJtmjz#+N4&fRjqNgc>T8~G<)WcwMHtHRZX0uF=wi> z&(fopjq+u?13@;8=;cDPfv=5d0WtoRg0&CdniOCYn7^fp)wJBeL&Q#>L?@kTro!^C zjdEy05((=Q{-sfcFYVFmfHOceS;b+*&G4{J{&f>m4jxE+pWRF&Lp0hv{eN3^{;h%H z@0UUV$lver+t7K#U5C=YZ{+&sgO-v}-Aw(Z8hv1&4@=tc*#FoFStcgLCT0xx%0}61 zv}j2i!Oi5xeQQ+UJ|*5QUVq)hOXJ9gdH-mHIIq8GvI*`l!TB^_6WyCHb8T8u#c?oZ zoj?-AE{S;jtO-uf*@9>1Ja7a5!gP@ej*aQ|#ljFyGvGUxtMj!gEYDj5kDj&#VAg2e zyh~<4XoT*!(+YKbolnK8=_|zqqyALgiHrU+9e<2 zCNRSoM4=_E-yEqCBOYk6I0+Ubc>EjZ|BNC;bkrXPB}@j%y@SN4w&)f14%J^~FWcm| zjN-5wy$n>`g*_@)n?&DD>71;E2HlN^OGgtfMUK3XAeZ?yIjeEyjS%|&q+O!D{ zCVZH*CQ&^xS?0xR8KTyISTu%XG_@DvjxI~J7uM1Ce$md8w~mt$W{z2FfRUTaeGvL+ z=4nt5^wzl~JTY1K^g{Y23b^kaE-M}?;lN#9$Pp(qvD$b*l{;e_2*{u9a>#;qbW?a@ z*c>g!pAcd|Hr1dvsJJ{SMB4_}h8MQ;J3h3QIK#YzG$N{}U>)XNWqX`SDy}0=ZQH{a zmMB#m=#JT!%E2IbFdmNd7l(}fjF>=wf&-W_DrxKGJ<-&j&f8)lM740MJ|_2+GL> zE9j~_xRjP{#s%Qvey7dVsx)A+ah>x1oy7ed*=75b+)qgByr5P?a^=|8AZT=uK7BFf zo%w@ej@4kykU_46t@LFRBJqme&7i{ry$+|Cs$64pm$Jr4h$U+G_Lq`$kVFTSu~A|G5#de7OhnC1xH) z37cauHA2E3T6uQ3@1p({ z>e4V*BYp!z1wcT^gE&--l$Y(~=j|(21WdZC5!MpD&!Kn7=y#P#jN3Hens+=ASWVJO z&i#&|Sg0{GO8Cx>9>_OOsjleIz~t@4Sl*9hY&oCg&iMi$E_=t2=w?{~+ZVwyqa(OZ zszGmOSk)6@Xn;mSxH=jvlmBLM=z0Fmc(wSAvfFD9IgCL#c@LN<#xrwtJIV89O?K@? zClOWKu4Q5rG+Jh|wBaD$saMVi1`v*0I6%#v7EYnf2Rle9FAHtb>rk@T-o~Qn%x`2S z#*mMd$41Po2j(M!iP!B4W*ROb482bs7ci38(a!9pW#%{a*6)=R>dlRB+C3Ji4Rf~c z-~P-;VAX8n{pdd_6k@7ePmZO?;eNA71t{JU3LW=R5xV{w~Z&z0_Q?*&oI&{;nc%Eqxs@SZp z!Lr@%3zvLS4c?a>XZ7?vP?{ClXnjx+i?H`B?PPIxz}t%=-ktIszFV&qzFjS%cb(nZ zEc4>O=Sb@Jlf6(L-G^vt&~nd?&;>=sdgR=oq}j-heKgjBqS}4q^Qo-ce4~t+&gp06 zD&i}ia3wYLbT?JS0Ld!@xop$UZlVI)4}+=#+pOp{nSMo5eDQT<4!PvRY+cmZo3RpK zProyjP{>$wV-mr|J*j9U=|t-}x^xn0Qe4W&uUB9ecHa9;c!Uz;UxbK}dM)gRzsc1+ zI3?N{;GS<7T9I+*8ZT-43|QBb2|qmz2gdM)F&nwqJbX79U=nPvcrN$|axv+US0`fx zOyy&|rV{fwUY$&-c84dMMUWZ0&WxPOWgI(>pp z=;|(@*!cnGe&%^fUPmUI+#jk0GQ+EOs^GNbA-S6fIC8c-8wBKP8T0*MLfmjCQO-qs z$ygLBpmiyk!t@pKzF$1IrloyU+#fkPXk5>ti1X!j8?TeRe7|HyDjzqUUfq*Lidhlo zt>+n#8(!BHKHGiQv(VJY!2G(zs+F^T0 zS0U!HbbnB(_=KIicBL6xA;!J^n&2I!P``|!G{iVr2}o7PUG_XVy{)vzY=qufIytmDI%}vJb>-fY4TZDxSsdCaxjh!4jLu~FO;eNR$T-HhqBda)oS8TopnnI)P#sID& zu#lXJ@x3Jm=01tvNQ^9}+LeQyC6&ThRx&#NqLz$NI z^T&MxI~yFn!IvR!N5lZ3+akka%vMogNHr^W4k*c&8|1rP(lYKVR(|V&%md@T zRlK-akj(j(%E*Gj0Ykb=_#$e|l4qYWlpRHs_`YPpM7JdpFz9@#{x!>s>5*o5bYQ{D zB}g*HE$AT*JHgk?OISNs>RSX{*z9p!h5#;lH$2bH@s#k8wSaz^6*QL zhg`Cwb4OELrgHW;Nor-FiIbGZ@*0S=;TfjUkrkTLBld}svAt9+$FlNRotDZ^ z!^?YrSRt4>W`raioF1E$Qcyf0<9~^CvgVIHMioWsp(sCf30f!S_;jn97A79W?>$w^ z|6rVVX8oAp%uJCSX0s@N*@!#}7OGIZ&|=MX(F;-Xp(fn&W+uKw#RF=jDiE%kKHx3Z zLmB~7Z3y?|T!Zi{g~e)|lJE+qI5_QBQvtn7+M{%_A3e*TM-e_{YDE&BrIr<+?6m~q zhb$obQYIUreCpnaPc&)j8qZroxa-xJ=A}ec7o|-7c>$5*!P~VG)Qh`Z#!zoC_JRDw z!`#_36l@RmLJ&<=jmGVPtGbJrm96!t>oxqN@(0MFE1S=2RRNIYhfAYt3bS5RvzX)+ zL+)G>bp_R?Q*DziW4$Ru6$UPLxR%c@EKyaoOm&+-OrccOfLEi!IrKWy2)j$jt!%+b zl#g-GS!aK!QB_q?Z(AuSb=HK=<1#hHG}Z373p)>jmtq<#CRG;eZj^MCiyi z!Q6kT>S{IXhp2hTW@*S~CGwoT<9|sq8i+c@#ABmfUk3N25?0h~Z(HYqKP#;H>8Dpz zhI+(w>H3w#`C&K7W@6zpJW{AqS&Y{(+e)ye-8DdhC|wR+I{_aF3s7wDVn0uLS2~@h zBJ4}XaB*QmYqIV`xdV7cR&S1XK#S zZv-gTo3ne>^D>EmTM{bkjpY;`0Z0;B5G9>(8uRJy;eirjJUnTKSL z=7@a+VOz$v3RP@h8AC(ZLF5DEV9n@5T_1^mG(j15--zU-)W1*0*C{k|wrF{grXFQl zZ4HHA|3Aq+ptyeip7{&3hez`;#Y>It%_0K&q2fk$4z>ooU=#c0dBEQ-s#@9R`}4P~ z8#Mg_t=g#?{fB<9)S!!#yRmZ=;v6VOybp)R^8P4=gCjExfb>84y79VTsJI#A4c9ps zAcou|EF=cLP*$5}wul{WnR#zUzYWvzD2RhIlci~(V!h&cPDA-q#^A?Qv2huGh-cW* z+9wKS67<)TtR@)(A2-7EfejN%KM6qf$_E*fMi59&-oF(pd!0X)gcMwFU!GX(=8vVo zIy-+XKyEjGdwV3bGS6S@!0=!a#o@_j6NeOo>-|wVZsWOODg>G>SMm6HRIO_|K}Gte z*ec^bA5+|^3i7m$)KC`NPi)9dGJKXI*g`YoY_B^ROr{}N$aaoaT=n;y9->L> zI!JUWd~g}!333mLnsG!{bnjR@Wk`C(Ubi^VI7TAaIp1DtR+bVKqvs_kxVoxstAb~- zc)*e^S-fb?>OHG0t}DnoXqM151*EDpR5YCLi4dEhwG%{&GawR^U}94j6A$gNi%XgO zoDxy!8DI6I^ngMTA=35Idqg24dQ4Rl78-;Xr4v$DbRMofi*S8Ah6ft;#)o2l9$5;X zd+U8TjC5|d2ylc$d%94#V0zOD?~}XWCs~l8EE%J@gK|^j&JM$TLCs~+T{cp(T!_!K zSth`g#MqlJ^d7LZY&?8Ekxq-$v(>ns`$fbZmso`jj7nMzOAYlxhSR*Wk7%OJaHhOO z*I8wZFh!%Htt8e^);SW+z%%ZK!W|*r;TEXmrBBoz2!Y^zCmwh7mReo}?|3Oe6(18_ zsYLb>j8K@U!>6Gj1+imIE1Y_x=Lq7-!m^(M?Y#AxlNML`FJt=G|Ou5v;69lUvp<5>7T{3L^k)(w5B3eB(GUICGwY5{Q?~;tJ7P2o8@3TCe4L%85370(6 z4@Hz~^B^*#O65anE{evzRdobw*MCuCi9?X9J2@&U7p!s)(p8yN+#T88iV!t=K=3al zrC;BH(issB^~QaS(Vgi@luTs6L*!G+vp@+|4UPpFc`1YU+@0a-%P8;x7W*rdEC~4_ zyE?+j)fvfQ$!d$N{FSi44=ZoOW)+5HY$)WU?R?L%@#p)|1T8bNKeHmrDoYOkff3M; zN*Mdv8alMib{O%Sk^V(G&=wV<8Y~B~1xW{dC5c?W0e;TK=gK>6H8*-YX?>k?edgR$n^F$pHkm`pZQ#LglH?iL4%_jrpOL$=LYe z>7km?a6d1wpE$VFX;ZKeb?1LGHr_ljR8;#=^^EtRpsoz}i!~Z(*K_tS#0rzQRe&I=!h=t%5e8sZdCU15EiBD0%EPSA7A6)72&m==^0sx z(q0S(A;K2<6~$H8XRHIshW0bP9fS*dB#rxH*K5$HN@IV_3^nV^5+Y5hw5R$}-u(1r zKBq)#ce|QstxkI~r&3@AvhDO<>`BizJ+nCh^+bB6^F^xbPp7?R0oB>QmuHZku)2Nm z3N#$)S>Jw$z~lZ_w8^Em6WJH@`QNMhZ}i8L=*)@6k$LORR@UC@3EVnAUDgsl+@87D zTomXZ_U!%jbbGaU72>#94<0YtP10_h+Iu@X#zOz($~(Vg+#@NJ+G!~5G#{WV{GJa$IGjztzYGPQo7IIUH>K+$eOdnRwjNf7tSlINSl z?H}~e^d#U4{c+CbCC+ae_W~oLg!k*w(iMCBSP96xb6Qm&Z{h9#!2@gt!dIgY)E)HUD8TeS2G-K2+M9d`-0c#Ps-jbWn+# zjPccA@r)@blE=80QbHliDhA15dr!QpxElNfBT0kP8* z4bS2_3Vyr#xEN_Vs>ch|XBmj&TqWzC;)9fs){DdH8v4g}j0<4+;Lki_rZsQyqo zSlP?hJo&&K_Oqo-w7uoy!<~ts2OxQ#eZ$9b@o-t|bI?Sh;*>X8>e)1^LHGg7JD)Z0 z$GOgvMSWaJ3aW&?qP@LI^yZvAb_R0?bVa&z1@Y`CXKnT{aPEQ+*s1g*S(q){p-w8N9&4k?%W<&^g9oVE1GEl1>L@H zA}qBJParLb`&9~Q9r-7%7-$Smtbj%2tKAQW89DJ>p3xPFd-%GqTZ!cL8O}c#9`sK# znwF+5jkpc>zy`LJvHKj_-CyhdC#pyZmbynSYQSr-@Y9l|Qfg6OwX7Oxna1cFudN286CNf#0#`r7Zta;}lN;Bli2 z&|`VRx>(2=ot+OQ9(N}F#Y!Zub$fP3i7uaeq8&oJsdazQTVnvZIZDffZjQm$n8lw` zs!kLy5bjk=$6fn^iDK%uvQjwR?$r9}n&-XRA4_N1iT+94juG>Kb^UvX=oBjV&5mLX z&mBjDohd&aK@J!O_s1DrUTmvTKVu9Y1NYSvxVYkYp7~g?(%#x%xlr`myN?3V@m^X7 z6|&%_l=sf__UbV7?YC>Ne|$VmJ6ti3-`a%-9M3$k?T-ZX!YiyDh@$PIgCa4mnhDYx z=|eRAuzEP#1{g++pPi}ya46f~rHcCR<*OYIgR79(CQN6B^k9%W2f5v8zyLSRX&1~O zOW#kDMunhUdZ0_cNy$949gIwhquT3hb-HeT+%Omkc|*$4^+}|N=iyo@*N2V%k0c!* z`7M<9%3bMrRi#WvGC$6~O-jFuE8QsR&J$>Cig@>Nh9bERU|3Y=8Fj60GILVP@|f0o z#v@Z(f^4@~#WN9qE=qB-^-v_;a0*>tGTgTVzUW%z{cghSOnl-NrVzH9MnV}s7?qD~ z-iZ2RECTENOD*vuQf$VGYocBn04MIFrak^ z(d-YA*Mj48T8=f}C*VbXV$agFMyYy6W16Q!hlMif5uHX}$OV`1+>1%%r!k+rhT<`1 z?Toyj`84?O<~OTmu@Bi}$- zrI_)tC@VUK77J~fl<>ZSIIPX;cBQ`DZuvVrF9?%+Sc->5bEZ5|jQl0okPGL#SFqvS z@X|i^K+D^)IzeMApY2}PxkdHo1Qy5}jQ34b?Ib7>w{I5SBMa8f_#Bc3rn2p^+c=%6 z_Td_rDz-FlZfQSGRj>9aoRw%2g!n{VDM{_!jQMFlL?+Bm<54y~&+-2Ihcnau>3%pd zZQ~(R(-F7-gx+W9zo%ucgy2XY zQ=!9BJ;)b)w6nS|lG}pQ!ry?q1Vd~${|xTPa@l6mMoLR7U<{&z^$Gl zUh@LHzS49CaZd``n>^!6QQz=P)t>Mq0#vrK_hmWiT!rCFw8aDTR^ONf6y2=(lpyR+ zVWbk?!l?R^-D1I?5}vCfwnEinCO={KFTsG0XXqu+=shrK=&ueKsJkUPAnxvoN?D5{ zT+xr-qFK@px}>u@f>&KTtMjp{ed+KNRG%(RD(vnRBA}Nj9zkhef&f#S@>NdJ`eixc zkk!tUxAFHdb>*x|d4TApL)A-W4w>MP?v}?2Y#xQsMoUe~c&*8%1pQ(uQgiMuL?-F5 zN6rsr3uBZbXCKmfWUF5!*TQ%t$$ocT4@KY7j##%Q-{1=F;#iq;OU<%rm7(VJXg;bC zqR={QS59H#GN7FmL91;M()b%)(@e{V+Sw#U0VM-xW<=v zSqoOd`m7HQ#wg>ZZUr#b^)X8L$hAKBpiSQU_q=fWq6YA=WVM9JZ5C4rlps!rgNi?nVXtTEzS-SOB zy95EUk%b*a!{r!37@ zZloxgZbEc1^EadjQw?l7EYIio{#8w+e`#dMrgNliC+a^oVw8;eWEV2OeQy+q4DC6X zz5ZjPNNku!f6iQXUmE3hlb8@1F=n~8>P8cE2;DHg%HVuyM5X$!?-K_0-PcCACoIqd zLi7Hu5#_Cdq-y(@MowEzR0<_D#aXHw1!M=SV>4R+ZKDYTQl!zyr>z=z9y1aBo>f3P z@b2#$*!CFjE$`1a-h=lfy1$d*3;mH#@k^-?|$-J-A#WVWQ?ZBeLX_52Zy&NsF)~wV>zIN!E@j<&fCaGpO$(- zoc_8uxEED*EF^G%`U^KzPCFYivlBolmHiICacX7ja{Pu4ZOM)!YU$}}l*hf2(D`_O z*m0Xq0m88#qZEPk_Gb*g1Dp3n`|kk$ZuGm}qhx+BSEr{JUf(N%IOl>v#Dn{!#J*n_ z$l-4j9MZ<_-Kag#H|N%M-d4 zHfiJ$a`d1F+OnexihQ}b(>5Gou6h!; z$3d>N5x)Q53>scVAz_`!LOFROU8>UP7(C$n3 z4|S1|j-3p@ zfOqmRapsNHN>lKD{^Hh*cHF+NiR0gG#i&3iR8P0GNc?JuJ(dd)Vfoz(Z;rdpO>L`Q z1lJ^4BZIHQP)oR35`OT-?iy&jbzA1O#Et3dI1grK?cHG=zq=d3_WrnT10w3NE=qff z8FJ@6U_A;HtOXJ(H;9s1@N>JK^q@S7n+g>F-Ll<<=9L+7bzRLs1S;%gNI_V!mBD0D z!r)mJ?0ubL8GTHGoSS$*)cDk z&w?i0eauT_cTh>dvJ`BYS3-;9rBNbg)$UW7Zn7Fvtl*u$)|L?)a@Xhr^Y&Or2}CyK z*fm{B(3wBvxL@_Qsfp~}N<#4!B_Z&27d!Jcg*dvW7`rru@MUla4f?kB2(nDXw|F%V zC1c`s)+i|9`lQI>-N!2`2U)t(4sF|oWt&p@9ee*nlO65JQbT8h5UtN%eEbJ3=^Cn0 zVnyc15lB?x9EGs8;T*8K-h=!k^J7&4iR5Ee1?`YU|tN*6%(bI~=?>SokQcDba=$LTu|AO9vvVOkBk zyD=j8Irr2fEuL(_Rkt~z2!d=K1wRxFfB^?K_D#<=5=4BR=h%HI%B0-aCIvX%l!WQJ zDg)FyVdBl-K>^O`?F?zaOG#jmpNvHJ*f}IiQ%*|M)b+>l8!_N(^zALOBi8wP1m1Em zVB)lH(;45U2Uj-rWzt2wZa;u@ff)EUf3+Q(RS`)lW0h78vP^Fyl0M7ZVJrxH@Kjb; z5{r?h(ey#^p&b{9W6MrONHO6=uAyft_$cB=CfZ&vA*AR&5Q+!deO_4i9!nOwf((-y z7eAc&0H`lEE#hL2G<+m&YKhEY7?OdGQ)kherSbumd-{vgpDbkxX*52t84xfW;v0p~ zgqrOmZK#zEUm6R=a+V}M^#0L89Px~B;4?2mAEB8^BV)`+b$Sb3^A~* zVl$;CqLtf9j0c#t{;!f!;d?``0Gx9G1PKDZ9WfM~dL#r-0r+_j(hxMgAUHx~Tj>gL zN~Bw+4+R7h$OsLd4sIX}@yvi3@s3J;2!-{z-;}FMat+t46)^uR2`)QJ^M4U>JB8EU z>w2ZLOL1x*a{H!BRn==5W}qbH&j?4SHWp%%5OFKw&jq&~6B)w`ZpGNY7s0i4wUXZX zJW$XJS(g&?qrs9$i`ccnX*`;uBFfh`(qnBT@oeKw^#J)s6J_`3184ZO@f}T;7FLBf~+#N;!W+1vA+oTRxBk-RF;Hrmy;~ zkwWi(DFpZm_*Z!U*IzcU;x0Q-k(6|!aVwk56X}G*9edaNw`n`)m}u~SU4b#R-ZB8R zvkP=!YC|+xa%EIx@ct21cE2=n8Ygw8{*s)~jbe%-0%&bs|E&=@TJtv*gZ$Pc;kl~> z_RhXEu{?I8Ba}W4=|;Y1P~hMLzWeu$O!Tl-5Ui}?F0%xe_qBHLm-R%wXQu6pZPH}I+SgB!-*(`?|6UVr(#&7e z`+2KKk)up@DE=7yOo;cse2R%NADaE!W_L!R^c+p4@wSUKeC*XCULc zAje=l4gph3|Ke)+p*x-2*%T6-Cl-~^USuFyrG=MHRf0W0Nqk%e8ijS+@ke-ga8M8i zs!9_UqxllSt#pscP6DY2-{WLK0dXknvwy9X4l=7g=&0oN9#nvo4H<+N zTda9>)hm6xq|yr!L+5FlSa@a_f^)F8#~_yK>r1DOD7(hEI3{N~U>hdhkWNLXvD`L;rW%1>6HpA9O7LNbueyIgz7!BAUO-Ru>sGpH(MyFTEvEm8E~Le z3~b?appESc5l;Y~e?uTyxkH{XNM_hup+l5y=9rqmbl8WFK3^ZpFIs}s+Tzbr%{9@$UE6) zcz065xDoeJUr|`nqp1xYp!pQuD06^+MW_K87gq%R0RK#sc%mr&%yLxji?p$#Qz-D@ zda?~9L3z>Ik{styGWj{vmJY5ai`ggQ$aX=pgq3XW|M=ZbflgOPOHC=(Bq~I(9HHNC z&~7y?8KE}Q(tyUSKj=Ml!OV7D{756;JgS|nsK`oE7p4iaFBP%1yKfvahk3v58 zE~H=aZ}eM*ql?LGX)ynAc$%~x=@^T)8`Vp|=S-ThnUKm?8_7kPl3-DI^aoql+MRJW->i|MI`I-8;A^^~ODIRytdxQ^E)kpaC9?x8zBj~JKja{wA>0@;LkaUyC+r~>Kg7aQ-rrbHwn@!^d z^woL4$cSeo#SgFA`fQCqDE{SN`XY&hyC(Bvn0I!8z1StjZ0#5WCC2QAzqhhfF7+&B z=w7Qs4b;A$^Hpo6QPK8`v_N^Lb3B~>mTv1!Q+=Id@#!{~7K+Fo-hdRxA{g|OlMDnBfv z;@doojmIrbS*WadTS#C$+s;+tP1CdRg$@t4w}>es1qv)tdW3PW^(i1@#`0Y|Dy&$$ z4qSClRH*u1Uwu47rR8{y#$$05X&Rn#OV<+hc>XqB;qhR@y8waAL4b+g*;{&BAo}~I@ zSov*T!sEjf;6!-AUna4B_;Bf!p~{WYMRK_1!45#EAU{KMpguTbS^8s)sMsAo9{B8j zKNDlgV%}hnM8J%tyUAn@4~B-qBC$T>UTI?v!P}emkhqled;kex$3^jLw=&%)p~Y|Dh?s9w6A$7#l<1@(A9&c`eo&a4@izg zZemPwn#R5MW~r4pgofI+7iJ-7I7s)q?g360*=>Il0?;^yUWk?c&!r5wJ~Xz zRPkH${L+2#;38i}4yKzvORSVgzT!#^YzjBNnbCh(YV3oI zpix;r#B;r)Gm^a1C0@72M}$MlD#96Zs~sN;|CdHN$b0n<`Q)=AQ>s(AoY{2=G?80i z2AdR|8IQHGIz{;f?3_+vU?y;c)5kRrZ(}<17ksl>+3ObKcA6zM^ZlKEVY0lMr4h zZdQv3F_im;q;mOO72abnGb3{lY zGxD)N#_OW+1&%mRNxNwP=E1Vk_v2(NM!U(mNwnr31Q}&wSIdqe5Zo{=1j2NE9s==8 zc1{=bcUoMSZo`D|eNpra*D7`qhGkhrUUW_L0;f{TZt{q;gVyTQLLm!Lu(zLPbPhc5 z(23jcf!pnQ5wD*lD+EzT`r21TjcK2z6pYyOd%*GOzTe^Iwk&*=`m8ryh`qbDfoyZV z)KyFU+U{AWIt43yH_EI=tcLhgc$qP6wjLCM7`RAT&P=U{;bW^Mkuw~+mMAYmTjlYWx(w-@W@`rxGn%TMakHktP_WVHC zbq})B3B7J(Wn~w8l;6+qq=o*JSOJIqnD*yPqeISbjiC;1@;#Xw`N``+eu%(8%~`J_ z^r4rrD9}2rQKs)+cE~?owzD&zncm2GUegQfAnkicD&q7PFXWG|2g#vOMWHuDzjAd7 zxs_|aftSTb9Opv?9aMk2LLTVq6LLUTPc{IstucfsHC!6JPS{6R zrP^Kp+T@wugBkp}b-|vn$c-U2G7(FL7pg8@;S3%lkhYX-}Yg0G; z?%L0@R3SQpb;Wb%EFzXRGe(k#GAqUy75BGww-TqBt*s3R+-C<4q9K0&?{trdeOstB zR8<8(p9l@^f2B%w^I6c>yS@=})NjRW&CbRaAeywz!6-LgSjmu(2+*pwknQfteMXt# zQCy@!UT$b1`-tGJ+{rY(R^ww8N)R*SbuwvmSUO zqH-wdZX{BdHt?v5+NF3%XQOTJn2Lhgs|nBf3lYqbnOIz{vT#UGUD1{<8_q~5}dM#|Mk2 ziP6$fq~AU~B|y0Eo!F0@l~~#Ng7{y-Am>oQ09e}vcM1&73%BtCVugEY=Txc#@B_xe z7bcUh8#i|0M9V(71{gD2n4v2GxQ%?JPaeE}oD2A@gKDO1$yQ<-Obx~^m9sPWEDa3b zXb9e1{nIEqzhohr23#-kNiGSQ&?^DL%txTMZf(a@7+#o3nl{~+`~B7n?3^v7o%s7r z<9Q1HkjW76%6vGd3)fEq(q*IMUIUr@ppju}{7CRqG;)Ig5ZS`#e=wwuv|5Wfajq+a z3WL&CR_KZyF)he=V}8U$nEVhQ(A@8aWve*=civJ1L2c@#tCbuSkQ1^hCNI9o%&V9T z!*V=PyDwZpZg%k}CYTDVI>ny00qFk2FUVwlT3_|VEZ^*e31{e9Qmyrb!`4VLx&93h zy%P7Qr_}9Qj}i+YFJDMJS!myk_h(84X&xWgWIHjw_ez+I%LO#s?}twB#TjZ$uCd>l zkub~H+I4p5T~lQLk7e`6<^w9@TM&GK0@~=Qs z=Xt9aQbIga13b7Ze-44hwNweBXRDHGKDA<1v2WC=%<8!*;CXg;ocJ(<(1gZSPg0BAzSNr?Y6ej@zM(k=pMixe^}iS>3Rt@A(!N?Z0uaaPPyd z!0$nfCknXt-Elc=y;rKj`T zUQ|Uoz8rR9uiw1e*uS}Qao?Eceb}cgLt&@EC49DQWVE-(ea*-yu^i*GqjyEw>jDs5 z(GFez zRzBpc$kP2)`^WKq5dDR}4{SU<}(uAUOp)tvA5Mj`25P zLmE@1iOrxsTN51J70(&XsFszAavRKwg;b(6pF>&@?7+|`8zj3dMXq0OhX_^soXmmltuCO} z?Q$~hYr+w8cL_i|eSw=sCdpd2yAZEPAK+86;^aE0yRT1>_r7BPVVE}#%B>0kNfJ|U zpS9gt3dW*nrCDH#CKGAy#Oi1n60$d>vel472 zt5p^i!e-9LQ^qVWnjh22PHJfqeueb($$*o?wQm_kWrRO!qWQFjRsbxNk5v@Q^j1f~ z%kvJelT6t%J!U)$M#6qWu-#wj0^(dt@~jC*_0juTFU)qkEyF^3-47c>C%44Av?ro< zyY@4cPUiFs1BR1!iuk+#au4N9^c8E4o{rDmg_VgTe7cQ5xu(1aLj57_fO}v z?3wA>gYBrEN_*PG-(IfeeOAW=O8fXzcFOsz@e54fLu@y8Xj-F<&Md3P&LC-f+R@SE z?rA_D-EZClom<4By4ZTWS2|_Ho@sF*|NPy!Py~E^Lget{&HZL8>WITJKYy(liYI=V zkEd8y03 zWv{eb9%qVJ)&1sjV-^5G#kl*VkvG1+8~Nh?=Hza#M?9i?@_KoHvloJ)R;vbwDaY6Q z8z4+-ebgvCY4Jege%9Ph>8f_WBSChbL3Sc!M-zk0J!v!5npm9-S_7{vCQN#IQ{;pr}M4X2`=;5>!_vg=0ZFhHB0dIFt6=ZStH3_1EyXh%R zv^$zyR{ugjq&anu!Rur#3ePt<)S=XzNKH+#w8!R=xiD{4Tu!`}d$D3IjZbex(4hQy z@6$KxYW;JU)GrEn_`F{s1%OMX{aGuyjz0X*b6lUGa%g$I#zn5mG=Oy$oJRGP#;vLvaLltpn% z#WEfLsK4XpO}us8E649m%ahK$uzBWUPaLe=;GNLYsBY?{NPT}e2pg3A_ySx*xMmi? z5!ZHri2Azeh_|)^mswE($4+*55fZRMhn;{$_tBXwfAsjknLZLAA2f_ zg^M=}Pke$Pq<+eg;8K`p+hf3!s(8YM8H&;-+a>jkO+NiDbtOeCIR;`)(zM~PR7RJ+ zJbwIQ`|?4f{-6&e_)BqZVkTbH>5lw4uSD)uX!;6 zjiI@fmUm`cA4*+Q-*ZUM9=Sg(xUe9_EQiI|JS*Hu>DK7S$*> zX}PO9BH{13%`P7~D)*~u6Fy=^7>^r8nl4mM2t{5nBt;R~ljw-2TIOIuQG=^i^-6|Y zW{Vu(t1R^V5T%Q0RCXlkcM*>o2f2t*m80mEG{gs8<*yBbc$>B94E$xbSbr^sjw0DR zUSB9sUf)-J{cU=Q2KU`TPh@?>2sJugMm^U_Q?Q8BkjMLHH4^aBror#wJZ zPT(jyz(KnGVaEbrNUzH0RwGx%b8Fb=Yvfj4CqEJ+6nENwTLPUz-ahNIaUkQ(I=KeI z!mdCB!m!ub^t|Sm(}gX9RITSjGL8V@RD)hts;!$DgqZnOv!?>@=0@jbZV-~|SFwdm z%2l}9`*o(Y3~bBS|Jn#Ft@55_CDJf|H<(H(e~3yx6HnAU^CUV;JX90kSddZG`JPPWK`dbXaPaA}l`_D`fte#(DbsBUBa@@luLk zc!)j-CutmZD{15tX_bVNK8rF9`nU!?eT1#gL>blqbbXI3&$&8m7K?OdQ|z72J!j@w zW*XxQlNSh-7F+W$T6HsQyc%T)S2-&Yv~0FWW=d!xXXir)S(K3Bsq7Q`5r}sskAlwp zR!KS+LgP1&EJc;JtP#eDN)+n$xYt{Z9a+sDc2!B^7fIiIO#+JL@XK2KnQ!Dh4omUO z?DOdJq`%iOb2ODM7xn~D6o41ZI&iD>h|J8VlS;WmlQpmdah(5ho z_`a%{+CB}tx@5vN7h!@L%wtLl;Wd)RsDVKl5^K{W0YD-p9K*S(QRmB55WJC$OtNwFoG@31H~ zex&Lks6M{O<2)#X+mnUM@i@k(dR>tkDy|$s1JW%GE~0K_h7<$ET>LFx>qj9WpDW_QkLOnC7OTEQ)RtB?yE2*_=2lVqm^a z(eWsMSO}B{;Cqd_C<;EIN#z=Xbfwtnq-beUt4dg-FM_7%oYv=%cy~dg?bu3(dwg0_*CBR0* zd0>%m5)$GtQrUuNFA!k(ZnR*8<8QOjBIwb8zqdcUZ0pau!FNA$jz0VWixU2X%05`g ze@<@y+y|qhA%;Rnva(QlS{==qC0nGG!`lqm+ASg^O=;#>GpeLF^OG~f%b4MNJj6$mv&zorN%R)J zbjL|f%W=hO-U?t;2|Reh>QyuFt{PyV>Ljj46?Pqof%T2DLs=iIXp~l3_Z(WKX!Y`hkR+NL4c&D2Cy@npLg_Lw5 z5DtlMPVlZN>azKXbuU@EOW*H&`qwlI%z*YX`>4v7dD>ugLq{lT17S!u(Egn zwi1j&oS{@%MZKgn2BCO}I1&PlP5a`~j>D>a+c1L~q_J6zT+k!bx&_l5CFw^LWU*6|JnbYE z@s-mzVjO@HCj|rBu#H>+ZDWki8@gWWUx*_7R*y?qH|Zy^LDgFxkRj*7Md_2mlD3d| zZq%JX3uUa7K*MG^IBVTXpp_M3>L#vz-}Zddd>jaHTYM-x9P8pV!kHcY!xiW|(E8r~{I zlqU?5SQ-nw3kup(V13n*iAE8z^Z-Tuv(!YfU^2@kUEK{7i?yth|2+^v(_IZCuktna z&L~3+Eo=M-DDY(h5xn2#%CX_&1HS^jqYuD;9Y2q6SL<%oqyj+X+p&0GiC2AS` zNII*PM3skQ>-7aeq|D=N?Dw=yEdk30WBNTTSO>6)=s;2`-;|B0;0?}OwcM4A>9lgd;WKZC^cNn zZUnk#{pJn7FLN7|N;bR7-x?>VVnV9yKsM}6V~9c{!NaTl?PffFx(_cW-Sc)>l!7kM z&*6P=%$zb)c?=2<@KJVZG|^aQU*FnSUbg-#8XV;1DV{ zYQ{c+<)&{|$W2Uvjh@~>{6Na=&r_MSp=-v9B`|l&*+m)+5|=)CUc{BAMo_&^Z zKedvFB(N8(F`lBy6*du1$iRvCC$X5I7N3lotN^%CU3tmrrcE2kPybM0lMwD|go7mM z%pb0CAB9PxfEzJtZAdth5^F4l+JGWsKTDc)MhBW&f#{3~1+OfoB&&s>B}Ba5wZQ?) zH?GXUAL>%AN;v15F|bNW1o%8hKg?_$8S|hNv=9x-wSbDYo*Y6wdySZ5%SWB58R*pv zi^xk135kjt9?a8G)oBOSyOlyfA#LU1BD0qyS?1c6F1jF@1WvTn1X}N?ywqxSR{;@l zG!Gjleggdzh-HpjDUdxU=quEKCu{GNi?NWv^spHTEp)=Xd7oo>=jH@xD~6R z*ciGIzUkT_vRk^DeqS%}3=CJV_OpVMsLm=*nHwC}leo)Bw_smZFB`*>FN(!VbO4`W9}qR7~@d;m5}1C zZf1g$AIfV+IRCzEJc(WLB62sj$W&uaYBO@b-(mr-XAq@nyW(p&jZ}PL1c`Q;qKr9Y zipl6{TdA-xgwQ%49-*a*;^81=M#Lec!`0znt$}OIWyMISz$~H?5hEx~5UlvaaS_?# zKw+b2WljJTDwXLF1ge~kq9N^PpTZ!MYyBzkPpfnE?9{0B*aLABJWQ@YWiJ&tv2 z*js50BwMFnT#^V%G(C3~-iHRim2X7P-?OfbdIP)Z&X^VzR+p?(uBHw=T44%|M43+? z_BTSDIRHiFR;0* zB9`i4N=8Pk?K0p6PHy#P1qcKTm71-h*HaQEg5xMIOvL*)5St3)p@^oJnCT1ARXYG_ zBwHFgtxV2D3S#CQyqP5R9YclkSiAAI1bdx^7c5r`_Mmi3lh?dFBZDnBlZ1|LjLv-Wb_h)VwA1H*CwA_@X(z=Xa5>e6wcBwnN?i=+=XWdvocYBExc zxPFSu)=RH}w&p@KBPQTzR30;5tgmf2zz@}Ob_D$*X!8y+j>TC#C1)tJ;4F;Tv;}TY z@X{i|TQ4PMW~w4V7|4p<74PkukeJ3xGt)e&08=gmgi;VI>Y!CooaIPhf{z3qu#_I5 zzQ+4&u=K%OGQEEJZTun;NP%+ivbTs2mYpsAD?muf%tr^9mI<)s4Xib)Y+?x6T56O5 z$YNhU(aTdL4olzgR%#{3mW-gaNI~dvj3(h}-r)yi~YOgzm4bQXzWBvrqPMg(_fh`DAU z6iT>BvM3t$;z>6lEbtR1=uMj~6dr1tQVpoS!MG7x%>fUVU?L?LwsLk%deTU>NSI}6 zoM;y8xGxA58MZeOQpZP%s*M23sS=4Wv96X|x za4A69PJ0?-+;TRRn-zmlC=ig3O#eEOZqot0&fgKi?jSw;*HoOYKl-H7)~?I2d&@X zYuVLBEfCx$(ey$d^@bZ|1WszdV`h8Z)ElxvllJNA_tj~t_e{H%+>ng0)PWp!x9J(v zZrBj<$BO`Je15ddd9u9@xWke;PwOI)!}k4{OPVaSlcY&l1-A^Xg!eU$hD< z=i5G?k;wb_Vr@+!McOdG&rui$0Tyl_ZZwn5CG8mo<=WmbijCe!@R58%z87sq-x@pO z_KgfFk~ zKjZE&@WZ7D4s+k1Po}Wcu&=JWLj%NmxUSE$oAU1_cN`=ChFcUwYfhe!q zYYQ~wavs_C40)jSFi`F|M9D)BxtSx|S3bl}`|!HewA^v+Me-gv$}9q)`!U%6z25uw zJ$$(P3Wv$%mk5#=>er}=vH3y)bY1tg17cGbzTIL<+4r7O zn2rSG?w-rOTOk8ja|)df zo<*^gvk2q2oEt0foDr+F9yNFye6FuE)&PNYJshRdlBE5nmOjLko1;zO&=H|u;QIM3 zPY2(L?5)>BjE8H#J5bwsQenH}>qU)(@VIAAa*PzqR(6@mEjyn~PhSpsvoeS0Y%7Qn zKw1~-`5?E7o3hma$^r;mh5;b&z27C%VL8IWBkj<#IcGBByzf`8w+`8l-1rdg^>#;! zc%I06()qBgg2LTGavcYa&V$>R+k;C}SIiZ9AKbpXpLON-fbnfCX^NgjA*tmfqzln0&NUfVnA#am%6!6@KxYP>PK6Gu8U_- zKU67tX&%=H^UL^w#*w31qb%vRZ1QlqNUE<`iX{jpV|eu{=*(f#LZlbd`$^=WAP$@r zpNG&QN3shIj)las2Lok73@aV%rVIG{obWG@)Duq)$>r$-=7C? z5F#`P|EA0U)5GW9xbSr%FUsIP8Np+oS0*=hQ3k`wG%+!%<&dSkhb$2~&0D}B1Ya>T zeH?~Rn11nM;g~DZ0DFt_jFM(wdW@z|(eQ+NizKHz0yJEdav+8SyiGTN?SzAc2vUTQ zgM>qgW{9&z8?QkqcL>VZS~;g|vQE{mogS-EA+kCmOrTBU>E<$!BV@2-3h^2PD>-xc zEH_dAMYiHo(>&rFf!4f<6^O0W(~T6rF4Ko$r+l$f5)7IIY*WQfWpue4wn;5m%MeFM z`dX0h`LngWC;Ts%v9lkHX^s|x!0?-t2u{3cT%FNEiq2t-actEt3g#NZG)kS|fZ>iU z8k|fEek1#{8x7VHA*|#p-{B^9t!??E5s_mz8Z4gUsbqP4<1&#(BMqY~o*&vTk#~PK z*>&qYR~`60$x~tPm%(BZ@}EKG`{%_Q75w@i+5hv;(fF#YE0@I-bi!m|BxWOH#bbin ztIP`!PqmiFWq+)OzMrQVGUgOMFj3hm0n*786UtBVNQ|Em?!@pQ&m(9-STqBLKqw#1 zA*4n#DWO>zl-Q=N!QIO+N~2Z->{vMJT`r*RSB`S|lnsZ9&hs2$5To32MyPHrN)`lT z0yG;piPzR=2|Es4n#-*|L2vbLfA4k%x6N?@KYxGmj%Mwv(@(#&2npSpqiIwMUMJCS zV%S7Lf-23Lqd1q9bo&RyvpjosR1;pO51Fe&>sG39g@stiD3oG)O$B|&LM02ef&}C8 z>GhxeRu784IFVatF;h?eiCW#fka8PZNq;Yj76;(B52F51-FUa}h2jmKqJO zudWx^sx%~32HbH%Zmnp)1|~jTT0 za4GID4%6%HUiQUYe#yGf<+(ZIKID)vz7O%I8>RGwu`~#s&~kdZ>;+x7tM5ww?$;@_ zir~rB1M9~=3*bmsyg#`bB^s{P`Pp!v(onvPD(tfawH#aeLfZ=kfdT%E_~PHIJqH~&r}k5=W4bkf-@JC%)PnlS`KpxC~*Az zVIB8e@);3%8V$zbkKp6skZ7SzJ)0DKP|PR6Z`KjfFPideU+z^(=_Npb6R?|;jjso{ zk$Z5(qWV2g2IbyasW^o*nR*iX{u9ci>em(4QQUL(JaIOIuo5QMCx00+jeh84kiv|%L; zPv8u0yuQ8$8rpq$Rf`j9x)o00SUOSVMdjCl5YMxgDecf^>kuZPGwn5;#M^wqe?l`Hq+ig^_HJTO?&35Mm!X=Q-cryjdbbC3PIUq}v~#S(wVz>g98alY zLP?zhkk7G=nWAvl;leOnJzU<<6NQb{n=`1IIH)ayKG!XVJN3ZHS6LAp#KKCTo=MUH zbu&9@fVwiQ0V=KCoKaOkS-6NHv4 zIb!``rBFwk;j{blU9zgGcKTVm)Zz8)V)Uvp8@FZ?JAnNslQS)4vT+pukP1iNSWqKS zDRc=_G$^HuNs0aXl+ZOql=1lA00_=&uCo8HSQFz;V=~}KpezYoh@*eZ>K}gjLiHKz zBg9NxWN5-kisH!ABYF^bN-gI5a<*;Q68?V<6;YgDid7kZ

    }j|8taaEMcCZ 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 Cwmpvk literal 0 HcmV?d00001 diff --git a/research/p104-query-only-interval/interval_certificate.py b/research/p104-query-only-interval/interval_certificate.py new file mode 100644 index 0000000000..275fe716fd --- /dev/null +++ b/research/p104-query-only-interval/interval_certificate.py @@ -0,0 +1,133 @@ +"""Independent exact interval matrices with unrestricted formal D monomials. + +No predecessor arithmetic is imported. D powers are tuples of formal labels +with multiplicities retained. Prepared for @CubeJerry with substantial OpenAI +assistance. Apache-2.0. +""" +from fractions import Fraction +import hashlib +import json +from copy import deepcopy +from source_binding import need +from replacement import START, STOP, three_queries, to_basis, from_basis + + +def plus(a,b): + out=dict(a) + for key,(u,v) in b.items(): + x,y=out.get(key,(Fraction(0),Fraction(0))) + value=(x+u,y+v) + if value == (0,0): + out.pop(key,None) + else: + out[key]=value + return out + + +def factor(row,real=1,imag=0,power=0,labels=(),period=4): + out={} + real,imag=Fraction(real),Fraction(imag) + for (source,q,ds),(a,b) in row.items(): + value=(a*real-b*imag,a*imag+b*real) + key=(source,(q+power)%period,tuple(sorted(ds+tuple(labels)))) + if value != (0,0): + out[key]=value + return out + + +def matrix(word,n,period=4,projector_mutant=False): + rows=[{(r,0,()):(Fraction(1),Fraction(0))} for r in range(n)] + peak=n + for event in word: + need(event[0] == 'A', 'interval contains no HOST or B event') + op,r=event[1:3] + if op == 'ADD': + rows[r]=plus(rows[r],factor(rows[event[3]],real=Fraction(event[4]),period=period)) + elif op == 'SCALE': + rows[r]=factor(rows[r],real=Fraction(event[3]),period=period) + elif op == 'SWAP': + rows[r],rows[event[3]]=rows[event[3]],rows[r] + elif op == 'QUERY': + rows[r]=plus(rows[r],factor(rows[event[3]],power=event[4],period=period)) + elif op == 'QSELF': + rows[r]=factor(rows[r],power=event[3],period=period) + elif op == 'IDLE_ONE': + rows[r]=factor(rows[r],labels=tuple(event[3]),period=period) + elif op == 'LAMBDA': + half=Fraction(1,2) + s=0 if projector_mutant else event[3] + rows[r]=plus(factor(rows[r],real=half,imag=s*half,period=period), + factor(rows[r],real=half,imag=-s*half,power=2,period=period)) + else: + raise ValueError('unsupported local interval operation') + peak=max(peak,sum(map(len,rows))) + need(peak < 200000,'bounded local symbolic certificate') + return rows,peak + + +def digest(rows): + serial=[[[source,q,list(ds),str(a),str(b)] for (source,q,ds),(a,b) in sorted(row.items())] + for row in rows] + return hashlib.sha256(json.dumps(serial,separators=(',',':')).encode()).hexdigest() + + +def verify(caller,new): + original=caller['events'][START:STOP] + replacement=new['events'][START:START+223] + need(new['events'][:START] == caller['events'][:START] + and new['events'][START+223:] == caller['events'][STOP:], + 'all actual events outside interval unchanged') + old,op=matrix(original,38) + fresh,np=matrix(replacement,38) + need(old == fresh, 'exact full separated interval on all independent input columns') + core,cp=matrix(three_queries(0,1,2,3),4) + target,_=matrix([['A','QSELF',0,-1],['A','QSELF',1,-1],['A','QUERY',2,3,-1]],4) + need(core == target,'complete four-field gadget, including arbitrary workspace outputs') + unit,_=matrix(to_basis()+from_basis(),38) + identity,_=matrix([],38) + need(unit == identity,'global even basis invertibility, including q=+/-i sectors') + return dict(interval=[START,STOP],old_events=len(original),new_events=len(replacement), + arbitrary_interval_inputs=38,formal_D_variables_retained='all; interval uses D9 only', + D_exponents='unrestricted tuples, multiplicities preserved', + q_relation='q^4=1',old_peak_terms=op,new_peak_terms=np, + endpoint_terms=sum(map(len,old)),endpoint_sha256=digest(old), + four_field_gadget_peak_terms=cp,four_field_gadget_endpoint_sha256=digest(core), + basis_round_trip='identity over the full quotient, without division or sector restriction') + + +def controls(caller,new): + original=caller['events'][START:STOP] + replacement=new['events'][START:START+223] + want,_=matrix(original,38) + checks=[] + def rejects(label,mutant,**kw): + got,_=matrix(mutant,38,**kw) + need(got != want,'negative-control discriminator failed: '+label) + checks.append(label) + z=deepcopy(replacement) + at=next(i for i,e in enumerate(z) if e[1] == 'QUERY') + z[at][-1]=1 + rejects('wrong_QUERY_orientation',z) + z=deepcopy(replacement);z.pop(at) + rejects('only_two_QUERY_calls',z) + z=deepcopy(replacement) + at=next(i for i,e in enumerate(z) if e == ['A','ADD',0,2,'-1']) + z.pop(at) + rejects('omitted_source_conjugation_correction',z) + z=deepcopy(replacement) + at=next(i for i,e in enumerate(z) if e[1] == 'QUERY') + prior=max(i for i in range(at) if z[i][1] == 'LAMBDA') + z.pop(prior) + rejects('incomplete_t_scaling_or_source_restoration',z) + z=deepcopy(replacement) + di=next(i for i,e in enumerate(z) if e[1] == 'IDLE_ONE') + z.insert(di,z[di][:]) + rejects('repeated_D9_is_not_idempotent',z) + z=deepcopy(replacement);z.append(['A','ADD',37,0,'1']) + rejects('cross_input_contamination',z) + rejects('lambda_projection_zero_divisor_mutant',replacement,projector_mutant=True) + wide_old,_=matrix(original,38,period=8) + wide_new,_=matrix(replacement,38,period=8) + need(wide_old != wide_new,'q^4 hypothesis discriminator') + checks.append('missing_q_fourth_power_relation') + return dict(rejected=checks,count=len(checks),method='exact formal coefficients; no sampled field values') diff --git a/research/p104-query-only-interval/reference/OWNED-PROOF.md b/research/p104-query-only-interval/reference/OWNED-PROOF.md new file mode 100644 index 0000000000..a351238484 --- /dev/null +++ b/research/p104-query-only-interval/reference/OWNED-PROOF.md @@ -0,0 +1,403 @@ +# An E-free caller identity and owned-bank lowering of QSELF + +Prepared for **@CubeJerry**, with substantial OpenAI assistance. Apache-2.0. +**No new κ. No unconditional multiplication theorem.** + +## 1. Exact sources, novelty and theorem boundary + +The canonical base is `7c49fe32c55de02c2c873655c804b16e4c3fef0a`. +The proposed source is DreamingOfClouds' [#6937](https://github.com/CrocSwap/integer-mult-bounds/pull/6937), +head `a98df73ddae1d1ea85a62b6bdf2714b28cb7b359`, files +`research/p104-two-chain-findings/data/caller_efree.json` and +`data/root_A_efree.json`. Its unchanged local native word and comparison caller +come from [#6936](https://github.com/CrocSwap/integer-mult-bounds/pull/6936), +head `03626137d0bd57f09b0bf9597376183ce6fa9683`, under +`research/p104-main-wire-native/`. DEPENDENCIES.json authenticates each used +source byte string; the published package does not depend on a mutable branch. + +The E-free construction and the idea of trading an empty-mask role and a +query for one QSELF per chain belong to DreamingOfClouds. That source reports +an exact 76-by-76 caller replay at the four central characters. Its shipped +`check.py` only parses the caller and checks its serialized length; it does +not contain that replay. The README does not say whether the reported replay +kept the 18 D variables formal. This package makes no claim that four q +characters are insufficient, or that the earlier reported identity is false. +Indeed, four exact characters suffice when the D variables remain formal. + +The additions here are a reproducible formal operator certificate and a +separate backward-covector certificate; a source-specific implementation of +both QSELF sites in the existing owned lifecycle alphabet; its complete +target/paid, ordinary-cost and stock comparison; and an explicit all-column +phase/interface proof for the new requests. No root search or replacement +native word is performed. + +**Conditional theorem.** Let V be a complex vector space. Let Q,D_1,...,D_18 +be commuting linear operators on V, with Q^4=I. Interpret the exact 2,991 +source events with the coefficients below, applying each scalar to the whole +field. For all 76 arbitrary, independently variable input fields, the caller +returns exactly its declared diagonal Q^-1 times the selected D products. +Each of its two QSELF source events has a source-bound typed expansion, for +each of its 96 ports, using one completed rank-one request on one disjoint +owned bank, with the query-adapter, COPY, SWAP and physical-clearance contracts. +Given a faithful dispatch registry for its new SERVICE tokens, and under the +retained whole-job, ownership, common-format and cost contracts stated below, +this introduces no additional productive input and no additional paid call +beyond QSELF's declared one. Compared with the exact #6936 caller, both +complete rank-one counts decrease by 192 and all other rank counts agree. + +The full caller theorem is **not** for arbitrary noncommuting Q or D, or for +Q without Q^4=I. Only the local copied-bank substitution lemma in §4 works +for an arbitrary completed operator A. Native all-column correctness, +rounded precision, physical primitive rates, installation of the new token/provider +registry, the recursive compiler join and +analytic recovery remain inherited obligations. This is not physical +execution of the entire caller. + +## 2. Exact source semantics and formal certificate + +Work in the commutative ring + + R = Q(i)[q,D_1,...,D_18] / (q^4-1). + +Every field starts as its own independent input generator. The forward +checker stores each coefficient as two exact Fractions, with a key consisting +of the input generator, q exponent modulo four, and a square-free D mask. +Multiplication by a mask rejects if a factor is already present: it never +silently imposes D_j^2=D_j or drops a repeated factor. Each actual prefix is +checked to remain in this representation. A formal D monomial is not a +numerical probe and no D value is substituted. + +ADD and SCALE are the literal rational row operations. SWAP exchanges the +ordered fields. QUERY(dst,src,k) adds q^k src to dst; QSELF(x,k) multiplies x +by q^k. IDLE_ONE multiplies its field by the product of the listed D stages. +LAMBDA_s multiplies its field by + + ((1+s i) + (1-s i) q^2)/2. + +It acts on the total q operator; this scalar formula is not tensor-powered +one column at a time. At a joint stage j, the type-A four fields (u,v,x,y) +are updated by + + (u,v,x,y) <- D_j (u, v+q^-1 u, x-q y, y). + +The type-B pair (s,t), with the source's alpha=-1 and beta=1/2, is updated +simultaneously by + + (s,t) <- D_j (s+alpha q t, + beta q^-1 s + (1+alpha beta)t). + +These ordered semantics are independently read from the exact predecessor +`jclib.py`; both old rows are used for the dense B update. The source validator +checks all role ranges, disjoint types, exact host coefficients, distinct +operands, positive idle stage sets and the ordered 18 fresh joint contacts. + +Induction over these operations proves that each stored row is exactly its +formal input expansion. Rational arithmetic is exact; the four residue +classes of q form a basis over Q(i)[D_1,...,D_18]. The final row comparison +therefore proves all coefficient identities, rather than checking one +particular vector. The certificate has 76 final monomials and peak 2,713 +stored monomials at source-event boundaries, at most 90 in a field. + +There is a unique homomorphism from this ring to the commutative algebra +generated by any operators satisfying the theorem's hypotheses. Applying it +to every coefficient proves the operator identity on every vector in V. +No dimensional restriction on V is used. D_j need not be involutions or +numeric scalars, and their inverses are not used. + +The two type blocks do not algebraically mix: each tagged scalar event stays +within its own role range, and each J event is the direct sum of the displayed +A and B blocks. Therefore each block identity can be substituted separately +at every actual port, using that port's own Q_q. The 96 A copies and eight B +copies do not require different physical ports to have the same Q operator. +Completing the unchanged native word with its independent helpers before +resuming the caller is the retained contact contract used in this substitution. + +### A different critical check + +`dual_certificate.py` does not import the forward engine. It starts with +independent output covectors and scans the source backwards, multiplying by +the **transposes**, not inverses, of the literal gates. In particular, an +ADD into x contributes to the coefficient of its source, and the dense B +contact is transposed as a simultaneous block. Its exact coefficient type is +an integer pair divided by a power of two; normalization and arithmetic are +separate from the forward Fraction implementation. + +It retains all 18 D variables formally and performs this backward propagation +at q=1,i,-1,-i. Evaluation at these four distinct roots is injective on R: +for each D monomial, a polynomial of q degree at most three vanishing at all +four roots is zero. Thus these are four faithful coefficient checks of the +same universal identity, not finitely sampled operator inputs. This is a +second algorithmic check, not independent human or proof-kernel acceptance. + +## 3. Exact query orientation, absolute phase and ambient format + +The inherited physical audit represents a one-column central Gaussian C_q +by its Walsh-frequency multiplier i^(q dot omega), with binary dot product. +This specifies its absolute phase, not only its projective Clifford action. +It gives C_q^2=X_q, the address translation by q, and C_q^4=I. + +For each actual native port q, the source recipe supplies an orthonormal +nine-axis basis (q,b_1,...,b_8). Define the binary address map + + B(x) = (q dot x, b_1 dot x, ..., b_8 dot x). + +Then B(q)=e_0, B is orthogonal, and B^-1=B^T. Its permutation P_B satisfies + + P_B C_q P_B^-1 = C_e0, + P_B^-1 C_e0 P_B = C_q, + X_q P_B^-1 C_e0 P_B = C_q^-1. + +The last equality is exact because i^h (-1)^h = i^(-h) for h in {0,1}. +It requires the Q^2 translation on return. Omitting it implements Q, rather +than Q^-1. No phase that happens to be harmless at one tensor width is dropped. + +At every positive column count f, tensor these binary maps and C operators +column by column and leave the other 144 coordinate blocks fixed. The rank-one +request acts on the f selected e_0 coordinates; both nine-axis maps preserve +all remaining coordinates. Tensoring the exact displayed equality gives +Q_f^-1 with every absolute phase raised correctly across all f columns. +This is the all-f argument. The executable 49,152 one-column spectral checks +bind its finite bases and signs to the actual 96 new source ports; those +checks alone are not claimed to prove the tensor statement. + +The source's D_j acts only on fresh coordinate blocks +9+8(j-1),...,9+8j-1. These sets are pairwise disjoint and disjoint from the +nine central blocks. Consequently the intended physical Q and D operators +commute and Q^4=I, at every f, under the retained exact native contact contract. +All other local-word maps and helper endpoints remain the #6936 dependency. + +Both query boundaries return to the same complete ambient coordinate order. +The coded implementation additionally requires the same component boundaries, +grids and signed widths on the returned bank and its caller field. In the +unchanged Controller, INIT uses payload 0 as its shape guide. Thus that guide +must have the same complete numerical format too; rank equality alone is not +enough. A whole-job provider must return within this format's representable +range, or the physical execution has no success guarantee. This common-format +and precision obligation is explicit and remains inside precision_tape and +the recursive provider join. The present operator identity does not establish +rounded-state equality or claim that every finite signed input is an exactly +representable Gaussian output. + +## 4. One owned bank, exact history and source-preserving lowering + +The canonical source is +`research/kappa-rebuild/architecture/FINITE-PRECOMPILATION.md`, Git blob +`4badb40f0919c515823cb07e44c6470d4d6469ca` at the stated canonical base. +Section 1 permits: “Constantly many owned fields may be supplied with their +full cost and no productive output credit.” Section 6 expressly permits a +paid child on an owned field containing a copied correlated value; the parent +waits for complete child return before reading or erasing that bank. Each +live unit retains its own distinct banks. These are existing conditional +contracts, not a new restoration waiver or a proof of owned_erasure. + +Let x be the actual caller field and z a disjoint owned bank. The expansion is + + INIT z + COPY z <- x + SERVICE query-in(z) + PAID(z, rank=1) + SERVICE query-out(z) + SERVICE SWAP(x,z) + CLEAR z + +Every opcode is already accepted by the unchanged published lifecycle +`source_ir.Unit.check` and `machine.Controller`. The first five events are the +existing query-bank prefix. The return service uses the exact orientation in +§3; SWAP replaces the old query-add service. There are no Python payload +callbacks or newly assumed free field transfers in this statement. + +This proves **relative typed-IR and lifetime compatibility**, not an installed +physical service dispatcher. The exported tokens contain `qself6937`, and +the SWAP token also differs from the frozen current-caller source grammar. +`Unit.check` checks event structure and lifetimes; it does not validate a +SERVICE registry or numerical provider. This package installs no new registry +and does not claim that an earlier source-specific binder accepts those +tokens. The conditional semantic realization requires an exact mapping of +these tokens to the stated query providers and existing SWAP table, including +their actual headers, ordered fields and common-format predicates. Producing +and validating that dispatch/export is an explicit remaining obligation. + +**Local substitution lemma.** More generally, suppose the three middle +events implement any completed whole-field operator A, with the required +format and spectator preservation. Immediately after COPY, z=x; after complete +return z=Ax and the caller's x is its original value; after SWAP, the ordered +pair is (Ax,x); after CLEAR, it is (Ax,0). Every other public field is unchanged. +This proof does not require Q^4=I, commutation, invertibility or statistical +independence of current values. If the recursive controller parks the parent, +its x is preserved in protected ancestor storage and restored at return; +the same current physical tape need not be untouched while a child runs. + +CLEAR erases the old x **now stored in the owned z bank**. The canonical +contract conditions erasure on bank ownership and completed descendants, +not on the numerical content having originated independently. It does not +require restoring an arbitrary prior value of z. The returned child is +complete before the parent reads, swaps or erases z. Every descendant has a +different owned-bank identity. Borrowed public helpers are never used as z. + +A literal wrapper INIT z; QUERY(z,x,-1); SWAP(x,z); CLEAR z would have two +simultaneously live banks: z and QUERY's internal copied bank. The fused +expansion above uses the internal copied bank as the returned value and +omits the redundant outer zero target and ADD. Its exact semantics follows +from the local lemma; it is not a claim that the two implementations have +identical rounded trajectories. + +The exact source QSELF sites are event 457 on A role 0 and event 575 on A +role 19. Each is applied to the 96 A ports, for 192 expansions and 1,344 IR +events. Their source tokens retain site, port, literal operation and actual +ordered owner. Injective compiler remapping preserves the owned recipient +and the SWAP order. The generated patch is checked through the unchanged IR +class; a separate whole-local-source structural pass accepts 71,144 native +events as 83,790 typed events. Neither pass is a fullcaller tape replay. + +The actual raw source processes each port's complete expansion before the +next one, and every joint native invocation is complete before the next +outer event. One outer query bank is therefore reused across the 416 new +QUERY-or-QSELF instances. It overlaps no local owned lifetime. The local +word still has 51 labels, 54 lifetimes and peak 43; an unreused safe finite +inventory is 18*51+1=919 raw-unit private names, with maximum 43 live locally. +Suspended recursive unit instances retain distinct banks: this is not one +scratch tape per recursion depth. Old erased backing remains counted at its +high-water extent. + +## 5. Positive costs, complete invoices and numerical limitations + +The generic request has two nine-axis conversions, one Q^2 translation and +one rank-one child. It also pays INIT, numerical COPY as addition, both SWAP +outputs, physical raw erasure, all source access, heads, child continuation, +complete child return, and existing descriptor/row services. An initially +dirty bank is disposed of rather than assumed empty. The two work ports of +the published SWAP table are reusable existing primitive work, with current +backing 2V+3; z adds V. Adapter work is retained separately and may be reused +only after successful primitive retirement. + +Here is a physical cost statement independent of a numerical historical cap. +Let V be a complete field's physical coded length, D total initially occupied +bank/work bytes, and q_0 the fixed supplied work/context inventory. Given +actual query-provider costs A_in,A_out and the actual paid-boundary/child +cost B_paid, the new fragment is bounded by + + A_in + A_out + B_paid + 2048(V+1) + 16D + 64q_0. + +This deliberately loose remainder covers the unmodified initialize, +copy_as_add and retire scans and the published SWAP ceiling +1024(V/3+1)+8D+32q_0. Every term is positive. The boundary/child term is not +hidden in a scalar allowance or counted as zero. Provider work, all other +public fields, parked ancestors and descriptors remain in the complete caller +stock. The bound is conditional on their declared physical interfaces; it is +not a construction of those interfaces. + +Here are the scan constants behind that remainder, using the lifecycle's +physical read/write/unit-move metric and charging executed SWAP table rows as +in its published theorem. Set L=V/3. From its current origin, `origin` costs +3 actions; from offset h it costs 2h+3. A raw `retire` of d occupied bytes +therefore costs exactly 5d+7, including both head resets. `read_code` costs +7 actions per present codeword and 1 at the frontier; `write_code` costs 6. +Thus INIT on an initially d-byte dirty bank, guided by a V-byte complete +field, costs 5d+25V/3+17. COPY costs 14L+9b+4V+14, where b<=L is the number +of numerical-bit codewords; it is at most 35V/3+14. CLEAR after the successful +SWAP costs 5V+7. Their sum is at most 25V+5d+38. Adding the SWAP bound gives +at most (1100/3)V+1062+5d+8D_work+32q_0, plus a fixed seven-event dispatch. +It is below the displayed 2048(V+1)+16D+64q_0, for D=d+D_work. Query providers +are separately charged for their own work retirement and head reset; on +successful return through `Controller.primitive` their declared work ports +are blank. These constants count actual coded bytes and both output writes; +they do not equate this tape metric with the historical scalar/pass tariff. + +For comparison with #6936's **inherited scalar/routing accounting convention**, +`invoice.py` reconstructs the local scalar and route terms directly from the +unchanged word, all caller/idle/main/query terms directly from both callers, +and adds a separate 128 ordinary units for each new QSELF instance. This +extra 24,576-unit charge covers four lifecycle/scalar operations at the +retained 32-unit gate envelope, in addition to the thin lifecycle allowance +and the general caller envelope. Both full nine-axis conversions and the +translation are charged at 1,000 each. These retained scalar/pass rates are +not an independent verification of physical precision_tape tariffs. + +The exact results are: + +| Quantity | #6936 comparison caller | E-free caller with owned lowering | +| --- | ---: | ---: | +| Main arbitrary input fields | 4,144 | 3,952 | +| Fresh helper fields over 18 local calls | 19,098 | 19,098 | +| Complete productive count | 23,242 | 23,050 | +| Complete paid calls | 118,038 | 117,846 | +| Outer rank-one QUERY/QSELF calls | 608 | 416 | +| Source local rank-one/other paid calls | unchanged | unchanged | +| Reviewed raw ordinary upper | 832,255,648 | 796,934,944 | +| Extra LAMBDA reading | 12,560,000 | 11,792,000 | +| Per-call 1125 conversion reading | 2,734,992 | 2,734,992 | +| Both extra readings included | 847,550,640 | 811,461,936 | +| Margin below 10^9 in that convention | 152,449,360 | 188,538,064 | + +At each joint call the same 1,461 local public fields map to four A mains per +A port, two B mains per B port, and 1,061 distinct helpers. Those helpers have +fresh stage-specific identities. Neither their arbitrary inputs nor their +productive outputs are erased or replaced by the query bank. The B stream is +byte-for-byte the same sequence of operations after its offset shifts by two. +Every main target in the new caller has a nonempty D mask. + +For every rank r the exact complete profiles satisfy + + T_new(r) = T_old(r) - 192*[r=1], + P_new(r) = P_old(r) - 192*[r=1]. + +Consequently the complete moment polynomial is identical at **every** κ, +not merely at a sampled decimal root. The rank-mass surplus remains 1520; +the new paid rank mass is 317,324. The two removed empty-mask E roles no +longer receive 192 rank-one productive credits, and the corresponding paid +debit falls by the same amount. There is no new κ from this substitution and +no claim that the unreviewed #6936 bound is the accepted frontier. + +These changes must replace the raw-unit counts in any future compiled +precision/stock certificate. It is not enough to observe a smaller scalar +cap. COPY propagates its actual residual as addition; it does not overwrite +an ideal value for free. With adapters E,F and child C satisfying FCE=A, +the output error includes FC times input/copy/entry error, F times child +error, and exit error. SWAP exactly permutes stored words and its errors; +erasure of the other bank does not erase these terms. The full rounded +recursion and source-entry predicates are not established here. + +## 6. A precisely scoped obstruction without owned initialization + +Consider the formal commuting caller algebra above, allowing arbitrary +independent auxiliary fields which must all be restored. QUERY is an +elementary shear of determinant one. Constant scalings and permutations +have q-independent determinants. LAMBDA determinants depend only on q^2; +IDLE determinants depend only on D. The joint HOST/HOST2 determinant is a +power of D and is also unchanged under q -> -q. Thus any finite word in this +alphabet has determinant even in q. + +A single QSELF with every auxiliary field restored would have determinant +q^-1. Evaluating at q=1 and q=-1 (and any fixed nonzero D) contradicts the +evenness of the word's determinant. This excludes that universal single-job +restored-workspace realization in this formal alphabet. + +It does not exclude every concrete Clifford specialization: spectral +restrictions or cancellation in a concrete large determinant require their +own analysis. It also does not exclude the **pair** of QSELF sites; their +combined q determinant is q^-2=q^2, which is even. No bound on a paired +QUERY-only synthesis follows. Owned initialization and erasure invalidate +the restored-arbitrary-workspace hypothesis, exactly as the explicit copied +bank does. This obstruction explains that distinction; it is not a global +impossibility theorem or a substitute for the constructive result. + +## 7. Remaining obligations and credit + +The five selected framework assumptions remain native_all_columns, +owned_erasure, compiler, precision_tape and analytic_recovery. The #6936 +native/A6, odd-scalar exact-return and BIT dependencies also remain. No +selected certificate is changed. Actual all-column native word execution, +all caller field-format predicates, complete rounded-return contracts and +compiled recursive stock/precision substitution still require review. The +new token-to-provider/table registry and concrete header export are also +unfinished; accepting a seven-opcode IR fragment does not discharge them. + +The E-free root, caller, source claim and proposal are DreamingOfClouds' work +with Claude Opus assistance. Retain Romman and the productive native/compiler +lineage; @CubeJerry's [#6912](https://github.com/CrocSwap/integer-mult-bounds/pull/6912) +caller blocks, [#6914](https://github.com/CrocSwap/integer-mult-bounds/pull/6914) +owned-rise work and published lifecycle/scalar/SWAP implementations; +unpaidmoon's [#6930](https://github.com/CrocSwap/integer-mult-bounds/pull/6930) +width-two phase work; and icekylinx's [#104](https://github.com/CrocSwap/integer-mult-bounds/pull/104) +odd-grid contribution. This package was prepared for @CubeJerry with +substantial OpenAI assistance in source analysis, proofs, code and review. diff --git a/research/p104-query-only-interval/reference/README_6937.md b/research/p104-query-only-interval/reference/README_6937.md new file mode 100644 index 0000000000..fddaa59703 --- /dev/null +++ b/research/p104-query-only-interval/reference/README_6937.md @@ -0,0 +1,80 @@ +# Two-chain family: remaining proofs, objects, backup words and open leads (no new kappa) + +No new kappa is claimed and nothing here is pushed as a supplier. **No human has reviewed any item.** Status words: **proved** (by hand, one author unless "twice read"), **replayed** (exact finite computation, or an exact run on the stated word), **model** (formula, floats, frames-only bound), **conditional** (rests on stated quoted statements). `check.py` recomputes the data facts in `data/` (hashes, word kappas from invoices, the E-free root, the two L=3 roots), each with a failing control. 1 R0 is about +.0043% kappa. Credit: Romman (#5599), CubeJerry (#6912, #6914, #6916, caller blocks and the odd-share line), unpaidmoon (#6930), icekylinx (#104, odd scalars at caller level); Bukh-Cox, Blasiak and Haemers for the clique/orthogonality background behind the w bound. Lakatos' method of proofs and refutations is the framing behind keeping each statement with its counterexample. + +## 1. Proofs + +1. **Rounded-division theorem** (conditional, twice read in v1, v2 read by its author only). With no checks and no odd root scale, the output is within an explicit defect of the exact action on any child meeting a norm contract, nonlinear ones included, and through the recursion it fits #6901's guards. Conditions: five quoted statements S1 to S5; raw fails on the old caller and fits only with #6912's rewrite. Test: an exact replay found 0 rows over the bound, adversarial case .9999, controls fail. Not run: caller, true Clifford gates, width 2. It changes the premise, so using it is a second framework change. Settles it: a reader of v2 and the caller run. +2. **Induced-matching share law** (replayed). Two same-arrow lines on one 4-rest register: F+F or R+R with the same chords leaks; **2F+2R** is exact (T[Y,X]=diag(-1,1), inverse block diag(-1,1), helper restored). "N_ij is nonzero iff chord c_i crosses w_j" holds on 2520 of 2520 orders of the 8-event case; 80 of 2520 orders are clean. Exact counterexample to a same-arrow share: F+F same chords gives T[Y,X]=[[1,1],[1,1]]. +3. **Lemma G** (proved, one author; resonance replayed in floats on one word). A t=-1 native means exactly T[Y,K]=0 raw with T[Y,X]=cI; at any other t that block has rank 104 by force. Settles: an exact word at t=-1. +4. **Level-mix theorem** (proved, one author): the exponent of a mixed-level word is the maximum over its words. Source report: no separate check here. +5. **Generalised split lemma with break-even leak** (proved for the stated scope, one author). A split pays while its leak stays under the break-even; the up-set count cannot see a split, so no cut floor limits splitting. Settles: a floor holding 94% of the bill (best count about 960 of 13,119 R0, not proved). +6. **Waist identity** (twice read; replayed on 975 columns): ab - cd = -g k. Lemma W (cd=1 and ab a unit suffice; #5599's ab=cd=1 is sufficient, not necessary) and Lemma S (a zero-mass owned scratch makes ab any unit) are toy-only, one author. On the current words cd = 0 in all 180 pairing jobs. +7. **Pairing as a sum of squares on shared inputs** (pattern, replayed at one prime, 17 of 17 against a 4-of-158 control; not derived). A description only: as a predictor it predicts nothing useful. Gaussian scalars add nothing (proved, one author): the pairing rank over Z[i,1/2] equals that over Z[1/2] for rational pools, and 5 = 1 + 4 stays 5. +8. **Rectangle law, Theorem S, H, H', root cut, Theorem C**: in the companion note (research/p104-root-cut-laws), twice read and replayed. + +## 2. Objects (all exact, in `data/`, rechecked by `check.py`) + +- **L=3, rho=1 roots tHHtHt and tHtHHt** (`root_L3_*.json`, rows a, b of length 8, M=9, n=8): header Gram is the exact path at t=-1, units square-zero; idle pieces are idempotents, the stage idempotents commute, ranks [4,4,4], masks cross (not laminar). The commuting/idempotent identities were replayed by a sympy script, the header lines are in `check.py`. Status: replayed, one reader. Not priced as a gain: toll n/2-2 idle per stage; ceiling +5.36% with free hosts (+4.02% against #6932, the +4.15% figure was against another base), -4.36% with demoted hosts; model. Open: connected L=18 embedding. +- **Two-chain roots, h=4/6/8, S=1416+48h**: quoted from the family's root note, not re-derived here (conditional). The h=18 root is `root_h.json`. +- **E-free root** (`root_A_efree.json`, `caller_efree.json`): 19 fields per chain, 20 units per chain, n=38, N=40. Exact: unit product is -I at S=-1 and I at S=+1; symbolic M(D) = -diag(prod D^eps) with 18 variables, every field in a mask. One declared deviation: isotropy y.x=0 fails at the single thin unit t1 of each chain (units 18, 19; `check.py` asserts exactly that). The caller needs one new op, QSELF (R[x] *= q^k), a one-register in-place Q^-1 job; with it kappa and S are unchanged and the E-credit premise disappears. If QSELF is refused, a QUERY-only form exists in principle at about -6.36% (gadget replayed, whole caller not built). Status: replayed exact, caller 76x76 equals diag(Q^-1 prod D^eps) on four central characters, 12 caller controls and 6 root controls rejected; legality of QSELF is a maintainer question. Backup to the E credit. +- **Toy words** of a Whitehead-dump search and **stage-level conjugators** of an unpadding search: reports exist (model/toy); the first exact legal Whitehead word with k_up < v is not found (a hand sketch stalled at v=3). + +## 3. Backup words (data; none has been reviewed by a human) + +| word | kappa | status | +|---|---|---| +| `data/wh.json.gz` | .0036275819188 | first, a candidate for anyone to chain and ship. The two-extra-splits-free main-wire word plus 16 shared wires on helper contacts; exact replay at every step, S=1520, S certificate 1125, peak 40, endpoint 0 bad. **Chain not run, not independently reviewed.** +.0415% over its base (.0036260774601), +.1027% over #6934 | +| `data/ft.json.gz` | .00362710048 | exact replay (0 violations, endpoint 0 bad, S 1520), flags-only retarget of 38 components on the main-wire word, +.0023% over it. Chain not run | +| `data/sr0.json.gz` | .00360666479 | dyadic, reviewed by an independent replay: endpoint 0 bad, joint pass on both callers, 7 undetected ADD mutants shown equivalent | +| `data/rbf.json.gz` | .00362232643 | chain passed on two callers; peak 30; S=225; +.0350% over #6932; below #6934 | + +kappa of `sr0` and `rbf` is recomputed from their invoices (`data/*.invoice.json`) by `check.py`; `wh` and `ft` need the full replay, only their hashes are checked. + +## 4. Open leads (odds are judgement) + +| lead | size | odds | smallest exact test | +|---|---|---|---| +| Pads below about 8 R0 | small | 5% | price one pad family exactly | +| Unpadding with stage-level conjugators | +.054 to +.095% model | 5% | three-role caller tooling, then one exact word | +| Pairing with c.d=0 as the largest block | ceiling 873 R0 | 3% | one exact word with a c.d=0 pool | +| Comb wires on helper contacts | up to 243.6 R0 frames-only; 1806 chord-clean pairs before dedupe | 10% for 5+ R0 | build the two-line comb, replay | +| Merge of X69 with helpers 444/589 | +1.386 R0 | 40% as a small gain | apply and replay; check it composes with the wires | +| Do the 16 wires compose with the two extra splits; flip 695 (+11.73 R0 model) | unknown | under 10% | build both, exact replay | +| Share maximisation: 466 donor/host pairs | frames-only ceiling 4948 R0; only 3 pairs (18.5 R0) schedulable as is, not leak-tested | 5% | mod-p leak test of the 466 pairs with retiming and in-rest reorder. Census: 1061 helpers, 568 carry F, 569 R, 224 share at one hop | +| TWINRELAY | up to 17.5 R0 | 5% | not re-tested on the current word | +| Flags | dims-only MILP +38.9 R0 is a relaxation; with real pinned subspaces the exact optimum is +0.523 R0 (realised in `ft`) | closed at 0.52 on that word | none | +| t=-1 native below UP about 93 | break-even in the model | 1% | exact word with T[Y,K]=0 | +| w<9 at k=6 (rank 53) | open | under 2% | exact orthogonal-set argument | +| Second-order deformation of c.d=0 pools | derived, test not run | 1% | second-order obstruction at a singular point | +| Multi-carrier and causal-order ties | unpriced | under 2% | exact tie replay | +| Hosted-network F | bounded at 1.42 to 1.48, not built | under 2% | build the network | +| Radix-3 window C in {63,64} | needs ternary frames | under 2% | ternary frame replay | +| Flip with shear on s=3 helpers; typed-job columns | unpriced | under 2% | one exact column | +| From-scratch two-chain word | F was built and scored for one chain only; no from-scratch word has had its two-chain Share measured. Tie needs 2,221 R0, kill under 1,600 | 3 to 8% | exact Share on the g2best generator word. The 104-port count is inherited, S margin 1%, never re-priced with shares | + +## 5. What is finished on this schedule + +Harvest supply reads 0 chronologically (Through Law, supply form; sound in total on the three words tested, fails per frame on causal cuts) and 0 causal witnesses (sampled, with a planted control that finds the two known splits at 30 samples; not a floor). Scope: the dyadic and odd words of this schedule, not other schedules or new object classes. + +## Not claimed + +No kappa, no supplier, no review by a human. Every one-author proof above has had no second reader. + +## Exact checks + +`python3.12 -I -B research/p104-two-chain-findings/check.py` (about 30 seconds, standard library) or `verify.sh`; it ends with `PASS_P104_TWO_CHAIN_FINDINGS` and fails on a failing control. + +## Open next questions + +1. Which open lead in section 4 settles first? Each row names its smallest exact test. +2. Can `wh` be chained (native maps, joint caller, outer, mutants) and shipped? +3. Does the two-chain Share of a from-scratch word reach 2,221 R0? + +The structured form is in `TASK.json`. + +Prepared by DreamingOfClouds with Claude Opus 5.5 (Anthropic), via Claude Code. + +## Full texts and data + +`ROUNDED-DIVISION.md` is the full statement and proof of the rounded-division theorem, with its conditions. `data/roots/` holds the exact root data for the L=3 rho=1 roots and the two-chain h=4/6/8 roots. `data/toys/` holds the exact k_up 0 else -1; step = s * min(2, abs(c)) + M[i] = [a + step * b for a, b in zip(M[i], M[j])]; ops.append(('ADD', i, j, step)); c -= step + for col in range(n): + while True: + nz = [r for r in range(col, n) if M[r][col]] + need(nz, 'singular block') + if len(nz) == 1 and abs(M[nz[0]][col]) == 1: + break + p = min(nz, key=lambda r: (abs(M[r][col]), r)) + for r in nz: + if r != p: + qq = round(Q(M[r][col], M[p][col])) + if qq: + add(r, p, -qq) + p = nz[0] + if p != col: + M[p], M[col] = M[col], M[p]; ops.append(('SWAP', p, col)) + if M[col][col] == -1: + M[col] = [-a for a in M[col]]; ops.append(('SCALE', col)) + for r in range(n): + if r != col and M[r][col]: + add(r, col, -M[r][col]) + need(all(M[i][j] == int(i == j) for i in range(n) for j in range(n)), 'did not reach identity') + out = [] + for o in reversed(ops): + if o[0] == 'ADD': + out.append([ty, 'ADD', o[1] + off, o[2] + off, str(-o[3])]) + elif o[0] == 'SWAP': + out.append([ty, 'SWAP', o[1] + off, o[2] + off]) + else: + out.append([ty, 'SCALE', o[1] + off, '-1']) + return out + + +# ---------------------------------------------------------------- raw bound (formulas of the package's check.py / ordinary.py) +def swaps(sel): + wanted = set(range(len(sel))); return len(list(zip(sorted(set(sel) - wanted), sorted(wanted - set(sel))))) + + +def shim(J, ty): + t = J['types'][ty]; off = t['offset']; ev = [] + for e in J['events']: + if e[0] == 'J': + ev.append(['HOST', e[1]]) + elif e[0] == ty: + e = list(e[1:]) + if e[0] in ('ADD', 'SWAP', 'QUERY'): + e[1] -= off; e[2] -= off + else: + e[1] -= off + ev.append(e) + return dict(events=ev, roles=t['roles'], ambient_rank=J['ambient_rank'], diagonal=t['diagonal']) + + +def rest_of(C, ports): + ev = C['events']; roles = C['roles']; amb = C['ambient_rank']; mx = mn = mp = 0 + for role, (qp, zero, *sel) in enumerate(C['diagonal']): + axes = ([0] if qp else []) + [a for st, y in enumerate(sel, 1) if y for a in range(9 + 8 * (st - 1), 9 + 8 * st)] + k = swaps(axes); mx += 2 * k * ports; mn += 2 * bool(qp) * ports; mp += int(qp == -1) * ports + ie = 0; qn = qph = 0 + for e in ev: + if e[0] == 'IDLE_ONE': + ie += 2 * swaps([a for st in e[2] for a in range(9 + 8 * (st - 1), 9 + 8 * st)]) * ports + elif e[0] == 'QUERY': + qn += 2 * ports; qph += int(e[3] == -1) * ports + return (32 * roles * ports * len(ev) + sum(e[0] == 'QUERY' for e in ev) * 16 * ports + roles * ports * 26 + + (mx + mn + mp) * 1000 + ie * 1000 + (qn + qph) * 1000) + + +def word_terms(W): + """per-call terms of a word: allowance, reviewed upper, routes, public count, nD""" + from collections import Counter + H = W['hosted']; nD = len(H['Dports']); n = len(W['initial']); live = set(W['live']) + main = live | {r + 112 for r in live} | set(H['X2']) | set(H['Y2']) + dim = [len(b) for b in W['frames']] + paid = Counter(abs(dim[e[3]] - dim[e[2]]) for e in W['program'] if e[0] == 'MOVE') + hel = Counter(dim[W['final'][r]] - dim[W['initial'][r]] for r in range(n) if r not in main) + life = sum(e[0] == 'INIT' for e in W['program']); allow = upper = 0 + for e in W['program']: + if e[0] in ('INIT', 'CLEAR'): + allow += 2 + elif e[0] == 'SCALE': + q = Q(e[2]); a, d = abs(q.numerator), q.denominator + allow += 2 * (abs(a.bit_length() - d.bit_length()) + int(q < 0)); upper += 4 * (a.bit_length() + d.bit_length() + 1) + elif e[0] in ('ADD', 'COPY'): + q = Q(e[3]); a, d = abs(q.numerator), q.denominator + allow += 2 * (3 + a.bit_length() - 1 + bin(a).count('1') + d.bit_length() - 1); upper += 4 * (a.bit_length() + bin(a).count('1') + d.bit_length() + 1) + routes = (sum(paid.values()) + 2 * sum(hel.values()) + 208 + 2 * nD + 4 * 104 + 4 * nD + 4 * life) * 1000 + return dict(allow=allow, upper=upper, routes=routes, n=n, nD=nD, paid=paid, hel=hel) + + +scale_cost = lambda S: 4 * (S.bit_length() + 1 + 1) + 4 * (1 + S.bit_length() + 1) # one SCALE by S at entry and one by 1/S at exit at the reviewed upper rate: 80 for S = 225, 104 for S = 1125 + + +def raw_all(J, W, S): + t = word_terms(W); nA, nB = len(J['types']['A']['ports']), len(J['types']['B']['ports']) + need((nA, nB) == (t['nD'], 104 - t['nD']), 'port split of the caller differs from the word') + rest = rest_of(shim(J, 'A'), nA) + rest_of(shim(J, 'B'), nB) + lam = sum(1 for e in J['events'] if e[0] == 'A' and e[1] == 'LAMBDA') * nA + sum(1 for e in J['events'] if e[0] == 'B' and e[1] == 'LAMBDA') * nB + debit = 1000 * lam; per_in = 18 * t['n'] * scale_cost(S) + lit = 18 * 10 ** 7 + rest; act = 18 * (t['allow'] + t['routes']) + rest; up = 18 * (t['upper'] + t['routes']) + rest + return dict(rest=rest, literal=lit, actual=act, upper=up, recharge=up + debit, per_input=up + per_in, per_input_recharge=up + per_in + debit, + lambda_jobs=lam, debit=debit, per_in=per_in, public=t['n']) diff --git a/research/p104-query-only-interval/replacement.py b/research/p104-query-only-interval/replacement.py new file mode 100644 index 0000000000..aa6b5e6580 --- /dev/null +++ b/research/p104-query-only-interval/replacement.py @@ -0,0 +1,97 @@ +"""Construct the whole source-specific interval using three existing QUERYs. + +Only current ADD, SWAP, LAMBDA and QUERY events are newly emitted. Every +temporary linear combination uses an existing public role and is restored; +no new initialized role, helper credit, or service opcode appears. +Prepared for @CubeJerry with substantial OpenAI assistance. Apache-2.0. +""" +from copy import deepcopy +from collections import Counter +from source_binding import need + +START, STOP = 457, 576 # half-open, zero-based exact source event interval + + +def add(dst, src, coefficient): + need(dst != src and coefficient in (-1,1), 'literal distinct unit ADD') + return ['A','ADD',dst,src,str(coefficient)] + + +def lam(role, sign): + return ['A','LAMBDA',role,sign] + + +def tscale(role): + # Source lambda_+^2=q^2=t, and t^2=1. This is not a projection. + return [lam(role,1),lam(role,1)] + + +def tadd(dst, src, sign): + # Form +/-t*src, use it once, then restore the arbitrary source exactly. + return tscale(src)+[add(dst,src,sign)]+[lam(src,-1),lam(src,-1)] + + +def three_queries(a=0,b=19,c=1,d=2): + need(len({a,b,c,d}) == 4, 'four distinct arbitrary public fields') + out = [['A','SWAP',a,c],['A','SWAP',b,c],add(b,d,1)] + out += tscale(d)+tadd(c,a,1) + out += [['A','QUERY',a,b,-1]] + out += tadd(c,a,-1)+[['A','QUERY',b,c,-1]]+tadd(c,a,1) + out += tadd(d,b,-1)+[['A','QUERY',c,d,-1]]+tadd(d,b,1) + out += tscale(c)+[add(a,c,-1)]+tscale(d) + need(len(out) == 38 and Counter(e[1] for e in out)['QUERY'] == 3, + 'fixed complete gadget inventory') + return out + + +def to_basis(): + # c=old role1; d=lambda_+ * sum_{k=1}^{18}(-1)^k old rolek. + out = [add(k,1,-1) for k in range(2,19)] + out += [add(2,k,(-1)**k) for k in range(3,19)] + return out+[lam(2,1)] + + +def from_basis(): + out = [lam(2,-1)] + out += [add(2,k,-(-1)**k) for k in range(3,19)] + out += [add(k,1,1) for k in range(2,19)] + return out + + +def parts(caller): + e = caller['events'] + need(len(e) == 2991 and e[START] == ['A','QSELF',0,-1] + and e[495] == ['A','QUERY',0,1,-1] + and e[STOP-1] == ['A','QSELF',19,-1], 'exact three paid source sites') + first, second, other = deepcopy(e[458:495]),deepcopy(e[496:545]),deepcopy(e[545:575]) + need(len(first) == 37 and len(second) == 49 and len(other) == 30, + 'exact even subinterval boundaries') + for block, lo, hi in ((first,0,19),(second,0,19),(other,19,38)): + for event in block: + need(event[0] == 'A' and event[1] in ('ADD','SCALE','SWAP','LAMBDA','IDLE_ONE'), + 'even intervening operation alphabet') + fields = event[2:4] if event[1] in ('ADD','SWAP') else event[2:3] + need(all(lo <= x < hi for x in fields), 'disjoint actual chain support') + need([x for x in first+second+other if x[1] == 'IDLE_ONE'] == [['A','IDLE_ONE',28,[9]]], + 'sole D operation is preserved in the second-chain block') + return first,second,other + + +def transform(caller): + first,second,other=parts(caller) + replacement = other+to_basis()+[add(0,2,-1)]+three_queries()+from_basis()+first+second + need(len(replacement) == 223, 'complete expanded interval') + out=deepcopy(caller) + out['events'][START:STOP]=replacement + out['ops_note']=str(out.get('ops_note',''))+'; source interval457..575 replaced by a three-QUERY even-basis factorization; no QSELF' + need(not any(e[0] != 'J' and e[1] == 'QSELF' for e in out['events']), 'all QSELF removed') + return out + + +def counts(caller): + out={} + for ty,t in caller['types'].items(): + c=Counter(e[1] for e in caller['events'] if e[0] == ty) + out[ty]={'source_events':dict(sorted(c.items())), + 'physical_instances':{k:v*len(t['ports']) for k,v in sorted(c.items())}} + return out diff --git a/research/p104-query-only-interval/source_binding.py b/research/p104-query-only-interval/source_binding.py new file mode 100644 index 0000000000..f11d67c6c6 --- /dev/null +++ b/research/p104-query-only-interval/source_binding.py @@ -0,0 +1,52 @@ +"""Immutable source capsule for one exact QUERY-only interval transformation. + +Prepared for @CubeJerry with substantial OpenAI assistance. Apache-2.0. +""" +from pathlib import Path +import gzip +import hashlib +import importlib.util +import json +import sys + +ROOT = Path(__file__).resolve().parent + + +def need(ok, why): + if not ok: + raise ValueError(why) + + +def authenticate(): + pins = json.loads((ROOT/'DEPENDENCIES.json').read_bytes())['files'] + seen = set() + for row in pins: + rel = Path(row['local_path']) + need(not rel.is_absolute() and '..' not in rel.parts and str(rel) not in seen, + 'unique internal immutable input') + seen.add(str(rel)) + p = ROOT/rel + need(p.is_file() and not p.is_symlink(), 'regular capsule input') + b = p.read_bytes() + need(len(b) == row['bytes'] and hashlib.sha256(b).hexdigest() == row['sha256'] + and hashlib.sha1(b'blob '+str(len(b)).encode()+b'\0'+b).hexdigest() == row['git_blob'], + 'exact immutable input bytes: '+str(rel)) + return len(pins) + + +def module(name): + p = ROOT/'vendor'/(name+'.py') + spec = importlib.util.spec_from_file_location('query_interval_'+name, p) + mod = importlib.util.module_from_spec(spec) + sys.modules[spec.name] = mod + # Compile authenticated source bytes directly, without a .pyc lookup. + exec(compile(p.read_bytes(), str(p), 'exec'), mod.__dict__) + return mod + + +def inputs(): + authenticate() + caller = json.loads((ROOT/'data/caller_efree.json').read_bytes()) + root = json.loads((ROOT/'data/root_A_efree.json').read_bytes()) + word = json.loads(gzip.decompress((ROOT/'data/word_6936.json.gz').read_bytes())) + return caller, root, word diff --git a/research/p104-query-only-interval/vendor/dual_certificate.py b/research/p104-query-only-interval/vendor/dual_certificate.py new file mode 100644 index 0000000000..5be2a45930 --- /dev/null +++ b/research/p104-query-only-interval/vendor/dual_certificate.py @@ -0,0 +1,129 @@ +"""Independent backward covectors with exact integer dyadic coefficients. + +For each q in {1,i,-1,-i}, D variables remain formal. The four evaluations +are injective on Q(i)[q]/(q^4-1); this is not sampled-D verification. +No forward replay or its arithmetic implementation is imported. +Prepared for @CubeJerry with substantial OpenAI assistance. Apache-2.0. +""" +from fractions import Fraction + + +def require(test, message): + if not test: + raise ValueError(message) + + +def norm(a, b, s): + while s and not (a & 1 or b & 1): + a //= 2 + b //= 2 + s -= 1 + return a, b, s + + +ONE = (1, 0, 0) +ZERO = (0, 0, 0) +IPHASE = ((1, 0, 0), (0, 1, 0), (-1, 0, 0), (0, -1, 0)) + + +def scalar(text): + f = Fraction(text) + d = f.denominator + require(d & (d-1) == 0, 'dyadic dual scalar') + return f.numerator, 0, d.bit_length()-1 + + +def plus(u, v): + a, b, s = u + c, d, t = v + w = max(s, t) + return norm((a << (w-s)) + (c << (w-t)), (b << (w-s)) + (d << (w-t)), w) + + +def times(u, v): + a, b, s = u + c, d, t = v + return norm(a*c-b*d, a*d+b*c, s+t) + + +def stretch(poly, c=ONE, mask=0): + ans = {} + for (output, old), coefficient in poly.items(): + require(not old & mask, 'dual repeated D factor') + value = times(coefficient, c) + if value != ZERO: + ans[(output, old | mask)] = value + return ans + + +def sum_poly(left, right): + ans = dict(left) + for key, value in right.items(): + value = plus(ans.get(key, ZERO), value) + if value == ZERO: + ans.pop(key, None) + else: + ans[key] = value + return ans + + +def certificate(caller): + receipts = [] + for character in range(4): + # At the output boundary, each output covector is independent. + C = [{(r, 0): ONE} for r in range(caller['roles'])] + peak = 0 + q = IPHASE[character] + qi = IPHASE[-character % 4] + for event in reversed(caller['events']): + if event[0] == 'J': + mask = 1 << (event[1]-1) + u, v, x, y = event[2] + for r in (u, v, x, y): + C[r] = stretch(C[r], mask=mask) + # Transposes of the two triangular HOST2 updates. + C[u] = sum_poly(C[u], stretch(C[v], qi)) + C[y] = sum_poly(C[y], stretch(C[x], times(scalar(caller['types']['A']['alpha2']), q))) + a, b, alpha, beta = event[3] + al, be = scalar(alpha), scalar(beta) + # The dense HOST 2x2 block is transposed, not inverted. + ca = sum_poly(C[a], stretch(C[b], times(be, qi))) + cb = sum_poly(stretch(C[a], times(al, q)), stretch(C[b], plus(ONE, times(al, be)))) + C[a], C[b] = stretch(ca, mask=mask), stretch(cb, mask=mask) + peak = max(peak, sum(len(poly) for poly in C)) + require(peak <= 500000, 'bounded independent dual replay') + continue + op, x = event[1:3] + if op == 'ADD': + y = event[3] + C[y] = sum_poly(C[y], stretch(C[x], scalar(event[4]))) + elif op == 'QUERY': + y = event[3] + C[y] = sum_poly(C[y], stretch(C[x], IPHASE[(character*event[4]) % 4])) + elif op == 'SCALE': + C[x] = stretch(C[x], scalar(event[3])) + elif op == 'SWAP': + C[x], C[event[3]] = C[event[3]], C[x] + elif op == 'QSELF': + C[x] = stretch(C[x], IPHASE[(character*event[3]) % 4]) + elif op == 'IDLE_ONE': + mask = sum(1 << (k-1) for k in event[3]) + require(mask.bit_count() == len(event[3]), 'dual unique idle stages') + C[x] = stretch(C[x], mask=mask) + elif op == 'LAMBDA': + # Exact character value of ((1+s i)+(1-s i)q^2)/2. + C[x] = stretch(C[x], ONE if character % 2 == 0 else IPHASE[event[3] % 4]) + else: + raise ValueError('unsupported dual source event') + peak = max(peak, sum(len(poly) for poly in C)) + require(peak <= 500000, 'bounded independent dual replay') + for ty in ('A', 'B'): + t = caller['types'][ty] + for j, diagonal in enumerate(t['diagonal']): + r = t['offset'] + j + mask = sum(bit << k for k, bit in enumerate(diagonal[2:])) + target = {(r, mask): IPHASE[(character*diagonal[0]) % 4]} + require(C[r] == target, 'backward arbitrary-output covector endpoint') + receipts.append({'q_character_power_of_i': character, 'peak_terms': peak, + 'independent_outputs': len(C), 'formal_D_variables': 18}) + return receipts diff --git a/research/p104-query-only-interval/vendor/invoice.py b/research/p104-query-only-interval/vendor/invoice.py new file mode 100644 index 0000000000..a576bd0e00 --- /dev/null +++ b/research/p104-query-only-interval/vendor/invoice.py @@ -0,0 +1,211 @@ +"""Complete source invoice and positive ordinary-cost comparison. + +Local algebra/native correctness is inherited, not inferred from these counts. +Prepared for @CubeJerry with substantial OpenAI assistance. Apache-2.0. +""" +from collections import Counter +from fractions import Fraction + + +def require(test, message): + if not test: + raise ValueError(message) + + +def space(vectors): + span = {0} + for v in vectors: + require(type(v) is int and 0 < v < 512 and v not in span, 'independent nine-axis frame') + span |= {x ^ v for x in span} + return span + + +def local_invoice(word): + n = word['public'] + frames = word['frames'] + spans = [space(f) for f in frames] + ranks = list(map(len, frames)) + hosted = word['hosted'] + require(len(word['live']) == len(set(word['live'])) == 104 and + len(hosted['X2']) == len(hosted['Y2']) == 96, 'exact first/second main list sizes') + main = set(word['live']) | {r+112 for r in word['live']} | set(hosted['X2']) | set(hosted['Y2']) + require(len(main) == 400 and len(hosted['Dports']) == 96, '104 first pairs and 96 second pairs') + require(len(word['ports']) == len(set(word['ports'])) == len(word['live']) == 104, 'literal native port inventory') + require(len(word['initial']) == len(word['final']) == n, 'literal native boundaries') + helpers = Counter() + for r in set(range(n))-main: + a, b = word['initial'][r], word['final'][r] + require(spans[a] < spans[b], 'positive productive helper endpoint') + helpers[ranks[b]-ranks[a]] += 1 + current = word['initial'][:] + [None]*word['owned_fields'] + live = set() + paid = Counter() + lifetimes = peak = rises = rise_mass = 0 + allowance = reviewed_scalar = 0 + for event in word['program']: + op, r = event[:2] + if op == 'INIT': + require(n <= r < len(current) and r not in live and current[r] is None, 'local fresh owned initialization') + live.add(r); current[r] = event[2] + lifetimes += 1; peak = max(peak, len(live)); allowance += 2 + elif op == 'CLEAR': + require(r in live and current[r] == event[2], 'local current owned clearance') + live.remove(r); current[r] = None; allowance += 2 + elif op == 'MOVE': + a, b, owned = event[2:] + require(current[r] == a and ((r in live) == owned), 'actual MOVE ownership and chart') + require(spans[a] < spans[b] or spans[b] < spans[a], 'strict nested MOVE') + rank = abs(ranks[b]-ranks[a]); paid[rank] += 1 + if owned and ranks[b] > ranks[a]: + rises += 1; rise_mass += rank + current[r] = b + elif op in ('ADD', 'COPY', 'SCALE'): + require(current[r] == event[-1] and (r < n or r in live), 'local live scalar destination') + if op != 'SCALE': + src = event[2] + require(src != r and current[src] == current[r] and (src < n or src in live), 'local live scalar source') + f = Fraction(event[-2]); a, d = abs(f.numerator), f.denominator + require(a > 0, 'nonzero local coefficient') + if op == 'SCALE': + allowance += 2*(abs(a.bit_length()-d.bit_length())+int(f < 0)) + reviewed_scalar += 4*(a.bit_length()+d.bit_length()+1) + else: + allowance += 2*(3+a.bit_length()-1+a.bit_count()+d.bit_length()-1) + reviewed_scalar += 4*(a.bit_length()+a.bit_count()+d.bit_length()+1) + else: + raise ValueError('unexpected local opcode') + require(not live and current[:n] == word['final'], 'local complete lifetime/chart return') + routes = 1000*(sum(paid.values())+2*sum(helpers.values())+208+2*96+4*104+4*96+4*lifetimes) + return dict(public=n, helpers=helpers, paid=paid, lifetimes=lifetimes, peak_owned=peak, + owned_labels=word['owned_fields'], owned_rises=rises, owned_rise_mass=rise_mass, + allowance=allowance, reviewed_scalar=reviewed_scalar, routes=routes, + allowance_per_call=allowance+routes, reviewed_per_call=reviewed_scalar+routes) + + +def outer_invoice(caller, local): + targets = Counter({r: 18*n for r, n in local['helpers'].items()}) + paid = Counter({r: 18*n for r, n in local['paid'].items()}) + for ty in ('A', 'B'): + t = caller['types'][ty]; multiplicity = len(t['ports']) + for d in t['diagonal']: + targets[d[0] % 2 + 8*sum(d[2:])] += multiplicity + for e in caller['events']: + if e[0] != ty: + continue + if e[1] in ('QUERY', 'QSELF'): + paid[1] += multiplicity + elif e[1] == 'IDLE_ONE': + paid[8*len(e[3])] += multiplicity + return targets, paid + + +def exchanges(selected): + require(len(set(selected)) == len(selected), 'adapter distinct selected axes') + return len(set(selected)-set(range(len(selected)))) + + +def caller_cost(caller): + out = dict(caller_envelope=0, thin_lifecycle=0, qself_extra_lifecycle=0, + main_normalizers=0, main_maps=0, idle_maps=0, query_maps=0, + lambda_recharge=0) + for ty in ('A', 'B'): + t = caller['types'][ty]; ports = len(t['ports']); roles = t['roles'] + events = [e for e in caller['events'] if e[0] in (ty, 'J')] + out['caller_envelope'] += 32*roles*ports*len(events) + out['main_normalizers'] += 26*roles*ports + for qp, zero, *mask in t['diagonal']: + axes = ([0] if qp else []) + [a for k, yes in enumerate(mask, 1) if yes for a in range(9+8*(k-1), 9+8*k)] + out['main_maps'] += 1000*ports*(2*exchanges(axes)+2*bool(qp)+int(qp == -1)) + for e in events: + if e[0] == 'J': + continue + op = e[1] + if op in ('QUERY', 'QSELF'): + out['thin_lifecycle'] += 16*ports + out['query_maps'] += 1000*ports*(2+int(e[-1] == -1)) + if op == 'QSELF': + # Additional explicit charge: four lifecycle/scalar operations, + # each at the inherited 32-unit ordinary gate envelope. + out['qself_extra_lifecycle'] += 128*ports + elif op == 'IDLE_ONE': + axes = [a for k in e[3] for a in range(9+8*(k-1), 9+8*k)] + out['idle_maps'] += 2000*ports*exchanges(axes) + elif op == 'LAMBDA': + out['lambda_recharge'] += 1000*ports + # The extra LAMBDA reading is deliberately separate and charged twice below. + out['raw_rest'] = sum(v for k, v in out.items() if k != 'lambda_recharge') + return out + + +def verify(old, new, word): + require(old['types']['A']['ports'] == new['types']['A']['ports'] == word['hosted']['Dports'], 'same actual 96 second-plane ports') + require(old['types']['B']['ports'] == new['types']['B']['ports'], 'same remaining eight ports') + require(new['types']['A']['roles'] == new['types']['B']['roles'] == 38, 'E-free main role count') + require(all(sum(d[2:]) > 0 for t in new['types'].values() for d in t['diagonal']), 'no E or other empty-mask main target') + old_j = [e for e in old['events'] if e[0] == 'J'] + new_j = [e for e in new['events'] if e[0] == 'J'] + require([e[1] for e in old_j] == [e[1] for e in new_j] == list(range(1, 19)), 'same 18 complete local calls') + # Bind every concrete local public field at every new source contact. + mains = {(ty, role, port) for ty, t in new['types'].items() + for role in range(t['offset'], t['offset']+t['roles']) for port in t['ports']} + helpers = set() + for e in new_j: + fields = {} + second = dict(zip(word['hosted']['Dports'], zip(word['hosted']['X2'], word['hosted']['Y2']))) + for port in new['types']['A']['ports']: + first = word['live'][port]; x, y = second[port] + for field, role in zip((first, first+112, x, y), e[2]): + fields[field] = ('main', 'A', role, port) + for port in new['types']['B']['ports']: + first = word['live'][port] + for field, role in zip((first, first+112), e[3][:2]): + fields[field] = ('main', 'B', role, port) + require(len(fields) == 400 and len(set(fields.values())) == 400, 'all concrete source mains map injectively') + for field in range(word['public']): + if field not in fields: + target = ('helper', e[1], field) + require(target not in helpers, 'fresh arbitrary helper input for each local invocation') + helpers.add(target); fields[field] = target + require(set(fields) == set(range(word['public'])) and len(set(fields.values())) == word['public'], 'complete concrete local public map') + require(len(mains) == 3952 and len(helpers) == 19098, 'complete distinct main/helper inventory') + # Exact B stream equality after the public-role offset changes by two. + def bstream(c): + off = c['types']['B']['offset']; result = [] + for e in c['events']: + if e[0] != 'B': + continue + z = e[:]; z[2] -= off + if e[1] in ('ADD', 'SWAP', 'QUERY'): + z[3] -= off + result.append(z) + return result + require(bstream(old) == bstream(new), 'whole B stream unchanged after offset relabeling') + require(old['types']['B']['diagonal'] == new['types']['B']['diagonal'], 'B targets unchanged') + local = local_invoice(word) + oldT, oldP = outer_invoice(old, local) + newT, newP = outer_invoice(new, local) + for rank in set(oldT)|set(oldP)|set(newT)|set(newP): + need = 192 if rank == 1 else 0 + require(oldT[rank]-newT[rank] == need and oldP[rank]-newP[rank] == need, 'complete rankwise target/paid delta') + a, b = caller_cost(old), caller_cost(new) + old_upper = 18*local['reviewed_per_call'] + a['raw_rest'] + new_upper = 18*local['reviewed_per_call'] + b['raw_rest'] + scale = 18*word['public']*104 # #6936's explicit per-input 1125 conversion reading + require(old_upper == 832255648, 'exact reconstruction of predecessor reviewed raw count') + require(old_upper+a['lambda_recharge']+scale == 847550640, 'exact predecessor double-charge reading') + require(new_upper+b['lambda_recharge']+scale < 10**9, 'positive complete new conditional ordinary budget') + return {'local_source_counts': local, + 'old_targets': dict(sorted(oldT.items())), 'old_paid': dict(sorted(oldP.items())), + 'new_targets': dict(sorted(newT.items())), 'new_paid': dict(sorted(newP.items())), + 'target_count': sum(newT.values()), 'paid_count': sum(newP.values()), + 'rank_mass_surplus': sum(r*(newT[r]-newP[r]) for r in set(newT)|set(newP)), + 'new_paid_rank_mass': sum(r*n for r,n in newP.items()), + 'old_caller_cost': a, 'new_caller_cost': b, + 'old_reviewed_raw': old_upper, 'new_reviewed_raw': new_upper, + 'per_call_scale_recharge': scale, + 'new_double_recharged_raw': new_upper+b['lambda_recharge']+scale, + 'ordinary_margin': 10**9-new_upper-b['lambda_recharge']-scale, + 'owned_query_bank_count': 1, 'old_outer_query_lifetimes': 608, + 'new_outer_query_lifetimes': 416, 'new_qself_lifetimes': 192, + 'selected_kappa_change': False, + 'status': 'Conditional source invoice; no native, rounded, physical fullcaller or supplier admission follows from counting.'} diff --git a/research/p104-query-only-interval/vendor/operator_ring.py b/research/p104-query-only-interval/vendor/operator_ring.py new file mode 100644 index 0000000000..20acae64a1 --- /dev/null +++ b/research/p104-query-only-interval/vendor/operator_ring.py @@ -0,0 +1,140 @@ +"""Exact forward certificate over Q(i)[q,D_1,...,D_18]/(q^4-1). + +This verifies an operator identity, not values at sampled D substitutions. +Prepared for @CubeJerry with substantial OpenAI assistance. Apache-2.0. +""" +from fractions import Fraction as F +import hashlib +import json + + +def need(ok, why): + if not ok: + raise ValueError(why) + + +def validate(caller): + need(caller['schema'] == 'mixed-root-caller/1', 'mixed caller schema') + need(caller['stages'] == 18 and caller['ambient_rank'] == 153, 'fixed stage/ambient family') + occupied = set() + ports = [] + for ty in ('A', 'B'): + t = caller['types'][ty] + roles = set(range(t['offset'], t['offset'] + t['roles'])) + need(not occupied & roles and len(t['diagonal']) == len(roles), 'complete disjoint roles') + occupied |= roles + ports += t['ports'] + for dg in t['diagonal']: + need(len(dg) == 20 and dg[:2] == [-1, 0] and set(dg[2:]) <= {0, 1}, 'target domain') + need(occupied == set(range(caller['roles'])), 'complete arbitrary input range') + need(sorted(ports) == list(range(104)), 'complete disjoint port partition') + need(F(caller['types']['A']['alpha2']) == -1 and F(caller['types']['A']['beta2']) == 0, + 'exact HOST2 coefficients') + stages = [] + for e in caller['events']: + if e[0] == 'J': + need(len(e) == 4 and len(e[2]) == 4 and len(e[3]) == 4, 'joint contact record') + stages.append(e[1]) + for ty, touched in (('A', e[2]), ('B', e[3][:2])): + t = caller['types'][ty] + need(len(set(touched)) == len(touched) and all(t['offset'] <= r < t['offset']+t['roles'] for r in touched), 'joint distinct fields') + need(F(e[3][2]) == -1 and F(e[3][3]) == F(1, 2), 'exact hosted gauge') + continue + ty, op = e[:2] + need(ty in ('A', 'B'), 'event tag') + t = caller['types'][ty] + arity = {'ADD': 5, 'SWAP': 4, 'SCALE': 4, 'QUERY': 5, 'QSELF': 4, + 'LAMBDA': 4, 'IDLE_ONE': 4} + need(op in arity and len(e) == arity[op], 'exact opcode arity') + touched = e[2:4] if op in ('ADD', 'SWAP', 'QUERY') else e[2:3] + need(all(type(r) is int and t['offset'] <= r < t['offset']+t['roles'] for r in touched), 'source role domain') + if len(touched) == 2: + need(touched[0] != touched[1], 'distinct scalar/query roles') + if op in ('ADD', 'SCALE'): + c = F(e[-1]) + need(c and c.denominator & (c.denominator-1) == 0, 'current dyadic coefficient') + elif op in ('QUERY', 'QSELF', 'LAMBDA'): + need(e[-1] in (-1, 1), 'signed operator orientation') + elif op == 'IDLE_ONE': + need(e[3] and len(e[3]) == len(set(e[3])) and all(type(k) is int and 1 <= k <= 18 for k in e[3]), 'whole idle stage set') + need(stages == list(range(1, 19)), 'fresh ordered joint stages') + + +def multiply(row, a=F(1), b=F(0), q=0, d=0, modulus=4): + """A row key is (independent input, q exponent, square-free D mask).""" + out = {} + for (j, p, mask), (x, y) in row.items(): + need(not mask & d, 'repeated D factor exceeds the declared square-free domain') + c = (a*x-b*y, a*y+b*x) + if c != (0, 0): + out[(j, (p+q) % modulus, mask | d)] = c + return out + + +def add(a, b): + out = a.copy() + for k, (x, y) in b.items(): + u, v = out.get(k, (0, 0)) + c = (x+u, y+v) + if c == (0, 0): + out.pop(k, None) + else: + out[k] = c + return out + + +def expected(caller): + result = [None] * caller['roles'] + for ty in ('A', 'B'): + t = caller['types'][ty] + for j, dg in enumerate(t['diagonal']): + r = t['offset'] + j + result[r] = {(r, dg[0] % 4, sum(bit << k for k, bit in enumerate(dg[2:]))): (F(1), F(0))} + return result + + +def replay(caller, modulus=4): + validate(caller) + R = [{(j, 0, 0): (F(1), F(0))} for j in range(caller['roles'])] + peak = 0 + peak_row = 0 + for e in caller['events']: + if e[0] == 'J': + d = 1 << (e[1]-1) + src, dst, x2, y2 = e[2] + R[dst] = add(R[dst], multiply(R[src], q=-1, modulus=modulus)) + R[x2] = add(R[x2], multiply(R[y2], a=F(caller['types']['A']['alpha2']), q=1, modulus=modulus)) + for r in e[2]: + R[r] = multiply(R[r], d=d, modulus=modulus) + s, t, al, be = e[3] + a, b = F(al), F(be) + # Simultaneous HOST update uses both old rows. + ns = multiply(add(R[s], multiply(R[t], a=a, q=1, modulus=modulus)), d=d, modulus=modulus) + nt = multiply(add(multiply(R[s], a=b, q=-1, modulus=modulus), multiply(R[t], a=1+a*b, modulus=modulus)), d=d, modulus=modulus) + R[s], R[t] = ns, nt + else: + op, x = e[1:3] + if op == 'ADD': + R[x] = add(R[x], multiply(R[e[3]], a=F(e[4]), modulus=modulus)) + elif op == 'SCALE': + R[x] = multiply(R[x], a=F(e[3]), modulus=modulus) + elif op == 'SWAP': + R[x], R[e[3]] = R[e[3]], R[x] + elif op == 'QUERY': + R[x] = add(R[x], multiply(R[e[3]], q=e[4], modulus=modulus)) + elif op == 'QSELF': + R[x] = multiply(R[x], q=e[3], modulus=modulus) + elif op == 'IDLE_ONE': + R[x] = multiply(R[x], d=sum(1 << (k-1) for k in e[3]), modulus=modulus) + elif op == 'LAMBDA': + R[x] = add(multiply(R[x], a=F(1, 2), b=F(e[3], 2), modulus=modulus), + multiply(R[x], a=F(1, 2), b=F(-e[3], 2), q=2, modulus=modulus)) + peak = max(peak, sum(map(len, R))) + peak_row = max(peak_row, max(map(len, R))) + need(peak <= 500000, 'bounded exact replay term ceiling') + need(R == expected(caller), 'exact formal caller endpoint on every input coefficient') + encoded = [[[list(k), str(a), str(b)] for k, (a, b) in sorted(row.items())] for row in R] + return {'events': len(caller['events']), 'independent_inputs': len(R), + 'D_variables': 18, 'q_relation': 'q^4=1', 'peak_terms': peak, + 'peak_row_terms': peak_row, 'endpoint_terms': sum(map(len, R)), + 'endpoint_sha256': hashlib.sha256(json.dumps(encoded, separators=(',', ':')).encode()).hexdigest()} diff --git a/research/p104-query-only-interval/verify.py b/research/p104-query-only-interval/verify.py new file mode 100644 index 0000000000..c76911d4db --- /dev/null +++ b/research/p104-query-only-interval/verify.py @@ -0,0 +1,73 @@ +"""Bounded registered replay and deterministic complete caller generation.""" +from pathlib import Path +import argparse +import json +import sys + +sys.path.insert(0,str(Path(__file__).resolve().parent)) +from source_binding import ROOT,authenticate,inputs,module,need +from replacement import START,STOP,transform +import interval_certificate +import complete_invoice + + +def interval(): + old,root,word=inputs();new=transform(old) + return interval_certificate.verify(old,new) + + +def formal(): + old,root,word=inputs();new=transform(old) + fwd=module('operator_ring');dual=module('dual_certificate') + # The source validator also checks every new literal event's old opcode ABI. + fwd.validate(new) + return dict(forward=fwd.replay(new),backward_covectors=dual.certificate(new), + claim='All 76 independent input/output coefficients; all 18 D variables formal; q^4=1.', + credit='Unchanged public forward/backward engines from 4e2fd1b6; independent interval engine supplied here.') + + +def invoice(): + old,root,word=inputs() + return complete_invoice.verify(old,transform(old),root,word) + + +def controls(): + old,root,word=inputs();new=transform(old) + return interval_certificate.controls(old,new) + + +SUITES={'interval':interval,'formal':formal,'invoice':invoice,'controls':controls} + + +def normalized(value): + return json.loads(json.dumps(value,sort_keys=True)) + + +def main(): + p=argparse.ArgumentParser();p.add_argument('--suite',choices=SUITES) + p.add_argument('--regenerate',action='store_true');a=p.parse_args() + n=authenticate();old,root,word=inputs();new=transform(old) + patch=dict(source_interval_half_open=[START,STOP],replacement_events=new['events'][START:START+223], + old_event_count=2991,new_event_count=3095,scope='Exact formal caller source, no installed physical provider.') + if a.regenerate: + need(a.suite is None,'regenerate all suites together') + results={key:normalized(fn()) for key,fn in SUITES.items()} + results['authenticated_source_files']=n + (ROOT/'RESULT.json').write_text(json.dumps(results,indent=2,sort_keys=True)+'\n') + (ROOT/'QUERY-ONLY-CALLER.json').write_text(json.dumps(new,separators=(',',':'))+'\n') + (ROOT/'PATCH.json').write_text(json.dumps(patch,indent=2)+'\n') + print('WROTE_QUERY_ONLY_INTERVAL_RECEIPTS') + return + need(a.suite is not None,'choose an explicit bounded suite') + result=normalized(SUITES[a.suite]()) + expected=json.loads((ROOT/'RESULT.json').read_bytes()) + need(result == expected[a.suite] and n == expected['authenticated_source_files'], + 'exact stored scoped receipt') + need(new == json.loads((ROOT/'QUERY-ONLY-CALLER.json').read_bytes()),'exact whole generated caller') + need(patch == json.loads((ROOT/'PATCH.json').read_bytes()),'exact complete interval patch') + print(json.dumps(result,sort_keys=True)) + print('PASS_QUERY_ONLY_INTERVAL_'+a.suite.upper()) + + +if __name__ == '__main__': + main()